[2026-08-31 00:00:01,627.627 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:00:01,630.630 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-08-31 00:00:08,595.595 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 00:00:08,598.598 INFO    ] Checking for system updates...
[2026-08-31 00:00:08,635.635 INFO    ] 200
[2026-08-31 00:00:08,638.638 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:00:08,691.691 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:00:08,694.694 INFO    ] No update needed
[2026-08-31 00:00:08,696.696 INFO    ] Checking for camera pi updates...
[2026-08-31 00:00:08,730.730 INFO    ] 200
[2026-08-31 00:00:08,732.732 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:00:08,778.778 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:00:08,876.876 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:00:08,880.880 INFO    ] No camera update needed
[2026-08-31 00:00:08,882.882 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:00:08,884.884 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:00:08,890.890 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:00:08,895.895 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:00:10,937.937 INFO    ] ================================================
[2026-08-31 00:00:10,953.953 INFO    ] Launching Daemon at Mon Aug 31 00:00:10 IST 2026
[2026-08-31 00:00:10,965.965 INFO    ] ================================================
[2026-08-31 00:00:11,630.630 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:00:11
[2026-08-31 00:00:12,311.311 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:00:12,617.617 INFO    ] Initializing speech engine...
[2026-08-31 00:00:12,626.626 INFO    ] 2026-08-31 00:00:12
[2026-08-31 00:00:12,916.916 INFO    ] 2026-08-31 00:00:12
[2026-08-31 00:00:12,961.961 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:00:13,246.246 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:00:13,251.251 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:00:13,449.449 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:00:13,467.467 INFO    ] time= 31/08/2026 00:00:13
[2026-08-31 00:00:13,499.499 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:00:13,508.508 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:00:13,650.650 INFO    ] No existing commands found in stream
[2026-08-31 00:00:18,681.681 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:00:18,684.684 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-08-31 00:00:20,261.261 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 00:00:20,264.264 INFO    ] Checking for system updates...
[2026-08-31 00:00:20,305.305 INFO    ] 200
[2026-08-31 00:00:20,308.308 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:00:20,361.361 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:00:20,364.364 INFO    ] No update needed
[2026-08-31 00:00:20,367.367 INFO    ] Checking for camera pi updates...
[2026-08-31 00:00:20,401.401 INFO    ] 200
[2026-08-31 00:00:20,404.404 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:00:20,445.445 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:00:20,523.523 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:00:20,526.526 INFO    ] No camera update needed
[2026-08-31 00:00:20,529.529 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:00:20,532.532 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:00:20,538.538 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:00:20,544.544 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:00:22,589.589 INFO    ] ================================================
[2026-08-31 00:00:22,604.604 INFO    ] Launching Daemon at Mon Aug 31 00:00:22 IST 2026
[2026-08-31 00:00:22,615.615 INFO    ] ================================================
[2026-08-31 00:00:23,274.274 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:00:23
[2026-08-31 00:00:23,956.956 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:00:24,269.269 INFO    ] Initializing speech engine...
[2026-08-31 00:00:24,283.283 INFO    ] 2026-08-31 00:00:24
[2026-08-31 00:00:24,595.595 INFO    ] 2026-08-31 00:00:24
[2026-08-31 00:00:24,685.685 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:00:24,906.906 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:00:24,967.967 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:00:25,148.148 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:00:25,157.157 INFO    ] time= 31/08/2026 00:00:25
[2026-08-31 00:00:25,169.169 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:00:25,226.226 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:00:25,361.361 INFO    ] No existing commands found in stream
[2026-08-31 00:00:30,378.378 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:00:30,381.381 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-08-31 00:00:34,135.135 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 00:00:34,138.138 INFO    ] Checking for system updates...
[2026-08-31 00:00:34,175.175 INFO    ] 200
[2026-08-31 00:00:34,178.178 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:00:34,231.231 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:00:34,234.234 INFO    ] No update needed
[2026-08-31 00:00:34,236.236 INFO    ] Checking for camera pi updates...
[2026-08-31 00:00:34,276.276 INFO    ] 200
[2026-08-31 00:00:34,279.279 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:00:34,322.322 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:00:34,406.406 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:00:34,409.409 INFO    ] No camera update needed
[2026-08-31 00:00:34,411.411 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:00:34,414.414 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:00:34,420.420 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:00:34,426.426 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:00:36,469.469 INFO    ] ================================================
[2026-08-31 00:00:36,484.484 INFO    ] Launching Daemon at Mon Aug 31 00:00:36 IST 2026
[2026-08-31 00:00:36,495.495 INFO    ] ================================================
[2026-08-31 00:00:37,062.062 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:00:37
[2026-08-31 00:00:37,644.644 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:00:37,912.912 INFO    ] Initializing speech engine...
[2026-08-31 00:00:37,921.921 INFO    ] 2026-08-31 00:00:37
[2026-08-31 00:00:38,173.173 INFO    ] 2026-08-31 00:00:38
[2026-08-31 00:00:38,231.231 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:00:38,455.455 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:00:38,461.461 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:00:38,703.703 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:00:38,722.722 INFO    ] time= 31/08/2026 00:00:38
[2026-08-31 00:00:38,738.738 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:00:38,746.746 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:00:38,888.888 INFO    ] No existing commands found in stream
[2026-08-31 00:00:43,920.920 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:00:43,923.923 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-08-31 00:00:44,893.893 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 00:00:44,895.895 INFO    ] Checking for system updates...
[2026-08-31 00:00:44,931.931 INFO    ] 200
[2026-08-31 00:00:44,933.933 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:00:44,985.985 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:00:44,988.988 INFO    ] No update needed
[2026-08-31 00:00:44,990.990 INFO    ] Checking for camera pi updates...
[2026-08-31 00:00:45,023.023 INFO    ] 200
[2026-08-31 00:00:45,026.026 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:00:45,065.065 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:00:45,146.146 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:00:45,148.148 INFO    ] No camera update needed
[2026-08-31 00:00:45,151.151 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:00:45,153.153 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:00:45,158.158 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:00:45,163.163 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:00:47,207.207 INFO    ] ================================================
[2026-08-31 00:00:47,222.222 INFO    ] Launching Daemon at Mon Aug 31 00:00:47 IST 2026
[2026-08-31 00:00:47,234.234 INFO    ] ================================================
[2026-08-31 00:00:47,800.800 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:00:47
[2026-08-31 00:00:48,395.395 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:00:48,646.646 INFO    ] Initializing speech engine...
[2026-08-31 00:00:48,669.669 INFO    ] 2026-08-31 00:00:48
[2026-08-31 00:00:48,921.921 INFO    ] 2026-08-31 00:00:48
[2026-08-31 00:00:48,958.958 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:00:49,166.166 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:00:49,173.173 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:00:49,373.373 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:00:49,422.422 INFO    ] time= 31/08/2026 00:00:49
[2026-08-31 00:00:49,466.466 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:00:49,512.512 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:00:49,625.625 INFO    ] No existing commands found in stream
[2026-08-31 00:00:54,639.639 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:00:54,642.642 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-08-31 00:00:55,478.478 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 00:00:55,481.481 INFO    ] Checking for system updates...
[2026-08-31 00:00:55,516.516 INFO    ] 200
[2026-08-31 00:00:55,520.520 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:00:55,573.573 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:00:55,575.575 INFO    ] No update needed
[2026-08-31 00:00:55,577.577 INFO    ] Checking for camera pi updates...
[2026-08-31 00:00:55,611.611 INFO    ] 200
[2026-08-31 00:00:55,613.613 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:00:55,653.653 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:00:55,753.753 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:00:55,755.755 INFO    ] No camera update needed
[2026-08-31 00:00:55,758.758 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:00:55,760.760 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:00:55,765.765 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:00:55,770.770 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:00:57,812.812 INFO    ] ================================================
[2026-08-31 00:00:57,828.828 INFO    ] Launching Daemon at Mon Aug 31 00:00:57 IST 2026
[2026-08-31 00:00:57,839.839 INFO    ] ================================================
[2026-08-31 00:00:58,473.473 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:00:58
[2026-08-31 00:00:59,079.079 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:00:59,359.359 INFO    ] Initializing speech engine...
[2026-08-31 00:00:59,367.367 INFO    ] 2026-08-31 00:00:59
[2026-08-31 00:00:59,626.626 INFO    ] 2026-08-31 00:00:59
[2026-08-31 00:00:59,680.680 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:00:59,906.906 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:00:59,912.912 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:01:00,163.163 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:01:00,170.170 INFO    ] time= 31/08/2026 00:01:00
[2026-08-31 00:01:00,189.189 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:01:00,218.218 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:01:00,337.337 INFO    ] No existing commands found in stream
[2026-08-31 00:01:05,373.373 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:01:05,376.376 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-08-31 00:01:08,454.454 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 00:01:08,456.456 INFO    ] Checking for system updates...
[2026-08-31 00:01:08,493.493 INFO    ] 200
[2026-08-31 00:01:08,495.495 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:01:08,551.551 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:01:08,554.554 INFO    ] No update needed
[2026-08-31 00:01:08,556.556 INFO    ] Checking for camera pi updates...
[2026-08-31 00:01:08,589.589 INFO    ] 200
[2026-08-31 00:01:08,591.591 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:01:08,635.635 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:01:08,729.729 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:01:08,731.731 INFO    ] No camera update needed
[2026-08-31 00:01:08,734.734 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:01:08,736.736 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:01:08,741.741 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:01:08,746.746 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:01:10,786.786 INFO    ] ================================================
[2026-08-31 00:01:10,802.802 INFO    ] Launching Daemon at Mon Aug 31 00:01:10 IST 2026
[2026-08-31 00:01:10,813.813 INFO    ] ================================================
[2026-08-31 00:01:11,393.393 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:01:11
[2026-08-31 00:01:11,977.977 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:01:12,245.245 INFO    ] Initializing speech engine...
[2026-08-31 00:01:12,254.254 INFO    ] 2026-08-31 00:01:12
[2026-08-31 00:01:12,500.500 INFO    ] 2026-08-31 00:01:12
[2026-08-31 00:01:12,536.536 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:01:12,793.793 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:01:12,799.799 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:01:13,051.051 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:01:13,058.058 INFO    ] time= 31/08/2026 00:01:13
[2026-08-31 00:01:13,075.075 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:01:13,104.104 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:01:13,229.229 INFO    ] No existing commands found in stream
[2026-08-31 00:01:18,254.254 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:01:18,257.257 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-08-31 00:01:22,520.520 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 00:01:22,522.522 INFO    ] Checking for system updates...
[2026-08-31 00:01:22,558.558 INFO    ] 200
[2026-08-31 00:01:22,560.560 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:01:22,614.614 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:01:22,616.616 INFO    ] No update needed
[2026-08-31 00:01:22,619.619 INFO    ] Checking for camera pi updates...
[2026-08-31 00:01:22,653.653 INFO    ] 200
[2026-08-31 00:01:22,655.655 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:01:22,696.696 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:01:22,779.779 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:01:22,781.781 INFO    ] No camera update needed
[2026-08-31 00:01:22,783.783 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:01:22,786.786 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:01:22,791.791 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:01:22,796.796 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:01:24,837.837 INFO    ] ================================================
[2026-08-31 00:01:24,854.854 INFO    ] Launching Daemon at Mon Aug 31 00:01:24 IST 2026
[2026-08-31 00:01:24,865.865 INFO    ] ================================================
[2026-08-31 00:01:25,522.522 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:01:25
[2026-08-31 00:01:26,137.137 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:01:26,395.395 INFO    ] Initializing speech engine...
[2026-08-31 00:01:26,414.414 INFO    ] 2026-08-31 00:01:26
[2026-08-31 00:01:26,675.675 INFO    ] 2026-08-31 00:01:26
[2026-08-31 00:01:26,710.710 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:01:26,967.967 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:01:26,977.977 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:01:27,223.223 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:01:27,243.243 INFO    ] time= 31/08/2026 00:01:27
[2026-08-31 00:01:27,257.257 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:01:27,265.265 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:01:27,391.391 INFO    ] No existing commands found in stream
[2026-08-31 00:01:32,408.408 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:01:32,411.411 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-08-31 00:01:35,992.992 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 00:01:35,995.995 INFO    ] Checking for system updates...
[2026-08-31 00:01:36,031.031 INFO    ] 200
[2026-08-31 00:01:36,034.034 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:01:36,088.088 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:01:36,091.091 INFO    ] No update needed
[2026-08-31 00:01:36,094.094 INFO    ] Checking for camera pi updates...
[2026-08-31 00:01:36,128.128 INFO    ] 200
[2026-08-31 00:01:36,131.131 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:01:36,173.173 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:01:36,256.256 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:01:36,259.259 INFO    ] No camera update needed
[2026-08-31 00:01:36,262.262 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:01:36,265.265 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:01:36,271.271 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:01:36,277.277 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:01:38,323.323 INFO    ] ================================================
[2026-08-31 00:01:38,340.340 INFO    ] Launching Daemon at Mon Aug 31 00:01:38 IST 2026
[2026-08-31 00:01:38,351.351 INFO    ] ================================================
[2026-08-31 00:01:38,940.940 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:01:38
[2026-08-31 00:01:39,524.524 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:01:39,797.797 INFO    ] Initializing speech engine...
[2026-08-31 00:01:39,805.805 INFO    ] 2026-08-31 00:01:39
[2026-08-31 00:01:40,063.063 INFO    ] 2026-08-31 00:01:40
[2026-08-31 00:01:40,094.094 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:01:40,344.344 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:01:40,349.349 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:01:40,570.570 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:01:40,606.606 INFO    ] time= 31/08/2026 00:01:40
[2026-08-31 00:01:40,612.612 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:01:40,627.627 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:01:40,759.759 INFO    ] No existing commands found in stream
[2026-08-31 00:01:45,773.773 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:01:45,776.776 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-08-31 00:01:48,773.773 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 00:01:48,776.776 INFO    ] Checking for system updates...
[2026-08-31 00:01:48,817.817 INFO    ] 200
[2026-08-31 00:01:48,820.820 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:01:48,887.887 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:01:48,889.889 INFO    ] No update needed
[2026-08-31 00:01:48,892.892 INFO    ] Checking for camera pi updates...
[2026-08-31 00:01:48,925.925 INFO    ] 200
[2026-08-31 00:01:48,928.928 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:01:48,969.969 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:01:49,050.050 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:01:49,053.053 INFO    ] No camera update needed
[2026-08-31 00:01:49,055.055 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:01:49,058.058 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:01:49,063.063 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:01:49,068.068 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:01:51,109.109 INFO    ] ================================================
[2026-08-31 00:01:51,124.124 INFO    ] Launching Daemon at Mon Aug 31 00:01:51 IST 2026
[2026-08-31 00:01:51,136.136 INFO    ] ================================================
[2026-08-31 00:01:51,782.782 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:01:51
[2026-08-31 00:01:52,459.459 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:01:52,764.764 INFO    ] Initializing speech engine...
[2026-08-31 00:01:52,777.777 INFO    ] 2026-08-31 00:01:52
[2026-08-31 00:01:53,088.088 INFO    ] 2026-08-31 00:01:53
[2026-08-31 00:01:53,174.174 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:01:53,453.453 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:01:53,480.480 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:01:53,718.718 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:01:53,755.755 INFO    ] time= 31/08/2026 00:01:53
[2026-08-31 00:01:53,825.825 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:01:53,853.853 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:01:54,036.036 INFO    ] No existing commands found in stream
[2026-08-31 00:01:59,055.055 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:01:59,059.059 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-08-31 00:02:00,442.442 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 00:02:00,445.445 INFO    ] Checking for system updates...
[2026-08-31 00:02:00,482.482 INFO    ] 200
[2026-08-31 00:02:00,484.484 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:02:00,550.550 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:02:00,552.552 INFO    ] No update needed
[2026-08-31 00:02:00,555.555 INFO    ] Checking for camera pi updates...
[2026-08-31 00:02:00,593.593 INFO    ] 200
[2026-08-31 00:02:00,596.596 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:02:00,636.636 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:02:00,710.710 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:02:00,713.713 INFO    ] No camera update needed
[2026-08-31 00:02:00,716.716 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:02:00,718.718 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:02:00,724.724 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:02:00,729.729 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:02:02,783.783 INFO    ] ================================================
[2026-08-31 00:02:02,803.803 INFO    ] Launching Daemon at Mon Aug 31 00:02:02 IST 2026
[2026-08-31 00:02:02,818.818 INFO    ] ================================================
[2026-08-31 00:02:03,527.527 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:02:03
[2026-08-31 00:02:04,173.173 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:02:04,442.442 INFO    ] Initializing speech engine...
[2026-08-31 00:02:04,459.459 INFO    ] 2026-08-31 00:02:04
[2026-08-31 00:02:04,733.733 INFO    ] 2026-08-31 00:02:04
[2026-08-31 00:02:04,770.770 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:02:04,996.996 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:02:05,036.036 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:02:05,224.224 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:02:05,284.284 INFO    ] time= 31/08/2026 00:02:05
[2026-08-31 00:02:05,344.344 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:02:05,373.373 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:02:05,509.509 INFO    ] No existing commands found in stream
[2026-08-31 00:02:10,540.540 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:02:10,542.542 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-08-31 00:02:13,052.052 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 00:02:13,055.055 INFO    ] Checking for system updates...
[2026-08-31 00:02:13,092.092 INFO    ] 200
[2026-08-31 00:02:13,094.094 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:02:13,146.146 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:02:13,149.149 INFO    ] No update needed
[2026-08-31 00:02:13,151.151 INFO    ] Checking for camera pi updates...
[2026-08-31 00:02:13,189.189 INFO    ] 200
[2026-08-31 00:02:13,191.191 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:02:13,236.236 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:02:13,322.322 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:02:13,324.324 INFO    ] No camera update needed
[2026-08-31 00:02:13,327.327 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:02:13,329.329 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:02:13,334.334 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:02:13,339.339 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:02:15,379.379 INFO    ] ================================================
[2026-08-31 00:02:15,394.394 INFO    ] Launching Daemon at Mon Aug 31 00:02:15 IST 2026
[2026-08-31 00:02:15,405.405 INFO    ] ================================================
[2026-08-31 00:02:15,972.972 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:02:15
[2026-08-31 00:02:16,557.557 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:02:16,811.811 INFO    ] Initializing speech engine...
[2026-08-31 00:02:16,820.820 INFO    ] 2026-08-31 00:02:16
[2026-08-31 00:02:17,115.115 INFO    ] 2026-08-31 00:02:17
[2026-08-31 00:02:17,151.151 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:02:17,385.385 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:02:17,451.451 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:02:17,614.614 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:02:17,679.679 INFO    ] time= 31/08/2026 00:02:17
[2026-08-31 00:02:17,738.738 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:02:17,765.765 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:02:17,898.898 INFO    ] No existing commands found in stream
[2026-08-31 00:02:22,915.915 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:02:22,918.918 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-08-31 00:02:26,102.102 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 00:02:26,106.106 INFO    ] Checking for system updates...
[2026-08-31 00:02:26,157.157 INFO    ] 200
[2026-08-31 00:02:26,161.161 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:02:26,222.222 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:02:26,225.225 INFO    ] No update needed
[2026-08-31 00:02:26,228.228 INFO    ] Checking for camera pi updates...
[2026-08-31 00:02:26,275.275 INFO    ] 200
[2026-08-31 00:02:26,284.284 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:02:26,342.342 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:02:26,424.424 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:02:26,427.427 INFO    ] No camera update needed
[2026-08-31 00:02:26,430.430 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:02:26,433.433 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:02:26,439.439 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:02:26,445.445 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:02:28,490.490 INFO    ] ================================================
[2026-08-31 00:02:28,506.506 INFO    ] Launching Daemon at Mon Aug 31 00:02:28 IST 2026
[2026-08-31 00:02:28,517.517 INFO    ] ================================================
[2026-08-31 00:02:29,181.181 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:02:29
[2026-08-31 00:02:29,874.874 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:02:30,203.203 INFO    ] Initializing speech engine...
[2026-08-31 00:02:30,211.211 INFO    ] 2026-08-31 00:02:30
[2026-08-31 00:02:30,497.497 INFO    ] 2026-08-31 00:02:30
[2026-08-31 00:02:30,542.542 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:02:30,787.787 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:02:30,795.795 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:02:31,026.026 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:02:31,034.034 INFO    ] time= 31/08/2026 00:02:31
[2026-08-31 00:02:31,052.052 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:02:31,081.081 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:02:31,217.217 INFO    ] No existing commands found in stream
[2026-08-31 00:02:36,248.248 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:02:36,252.252 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-08-31 00:02:39,172.172 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 00:02:39,175.175 INFO    ] Checking for system updates...
[2026-08-31 00:02:39,216.216 INFO    ] 200
[2026-08-31 00:02:39,219.219 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:02:39,272.272 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:02:39,275.275 INFO    ] No update needed
[2026-08-31 00:02:39,277.277 INFO    ] Checking for camera pi updates...
[2026-08-31 00:02:39,312.312 INFO    ] 200
[2026-08-31 00:02:39,314.314 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:02:39,356.356 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:02:39,438.438 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:02:39,441.441 INFO    ] No camera update needed
[2026-08-31 00:02:39,443.443 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:02:39,445.445 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:02:39,451.451 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:02:39,456.456 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:02:41,500.500 INFO    ] ================================================
[2026-08-31 00:02:41,516.516 INFO    ] Launching Daemon at Mon Aug 31 00:02:41 IST 2026
[2026-08-31 00:02:41,528.528 INFO    ] ================================================
[2026-08-31 00:02:42,137.137 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:02:42
[2026-08-31 00:02:42,722.722 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:02:42,980.980 INFO    ] Initializing speech engine...
[2026-08-31 00:02:42,989.989 INFO    ] 2026-08-31 00:02:42
[2026-08-31 00:02:43,288.288 INFO    ] 2026-08-31 00:02:43
[2026-08-31 00:02:43,314.314 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:02:43,534.534 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:02:43,549.549 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:02:43,765.765 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:02:43,812.812 INFO    ] time= 31/08/2026 00:02:43
[2026-08-31 00:02:43,875.875 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:02:43,902.902 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:02:44,118.118 INFO    ] No existing commands found in stream
[2026-08-31 00:02:49,156.156 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:02:49,166.166 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-08-31 00:02:51,693.693 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 00:02:51,696.696 INFO    ] Checking for system updates...
[2026-08-31 00:02:51,732.732 INFO    ] 200
[2026-08-31 00:02:51,735.735 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:02:51,796.796 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:02:51,799.799 INFO    ] No update needed
[2026-08-31 00:02:51,802.802 INFO    ] Checking for camera pi updates...
[2026-08-31 00:02:51,836.836 INFO    ] 200
[2026-08-31 00:02:51,839.839 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:02:51,886.886 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:02:51,968.968 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:02:51,971.971 INFO    ] No camera update needed
[2026-08-31 00:02:51,973.973 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:02:51,975.975 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:02:51,981.981 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:02:51,986.986 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:02:54,026.026 INFO    ] ================================================
[2026-08-31 00:02:54,042.042 INFO    ] Launching Daemon at Mon Aug 31 00:02:54 IST 2026
[2026-08-31 00:02:54,053.053 INFO    ] ================================================
[2026-08-31 00:02:54,619.619 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:02:54
[2026-08-31 00:02:55,203.203 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:02:55,452.452 INFO    ] Initializing speech engine...
[2026-08-31 00:02:55,475.475 INFO    ] 2026-08-31 00:02:55
[2026-08-31 00:02:55,731.731 INFO    ] 2026-08-31 00:02:55
[2026-08-31 00:02:55,766.766 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:02:56,025.025 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:02:56,034.034 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:02:56,259.259 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:02:56,299.299 INFO    ] time= 31/08/2026 00:02:56
[2026-08-31 00:02:56,304.304 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:02:56,322.322 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:02:56,456.456 INFO    ] No existing commands found in stream
[2026-08-31 00:03:01,476.476 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:03:01,479.479 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-08-31 00:03:03,015.015 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 00:03:03,019.019 INFO    ] Checking for system updates...
[2026-08-31 00:03:03,072.072 INFO    ] 200
[2026-08-31 00:03:03,077.077 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:03:03,160.160 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:03:03,164.164 INFO    ] No update needed
[2026-08-31 00:03:03,167.167 INFO    ] Checking for camera pi updates...
[2026-08-31 00:03:03,214.214 INFO    ] 200
[2026-08-31 00:03:03,217.217 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:03:03,263.263 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:03:03,332.332 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:03:03,334.334 INFO    ] No camera update needed
[2026-08-31 00:03:03,337.337 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:03:03,339.339 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:03:03,345.345 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:03:03,350.350 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:03:05,391.391 INFO    ] ================================================
[2026-08-31 00:03:05,407.407 INFO    ] Launching Daemon at Mon Aug 31 00:03:05 IST 2026
[2026-08-31 00:03:05,418.418 INFO    ] ================================================
[2026-08-31 00:03:06,074.074 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:03:06
[2026-08-31 00:03:06,760.760 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:03:07,030.030 INFO    ] Initializing speech engine...
[2026-08-31 00:03:07,039.039 INFO    ] 2026-08-31 00:03:07
[2026-08-31 00:03:07,296.296 INFO    ] 2026-08-31 00:03:07
[2026-08-31 00:03:07,356.356 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:03:07,586.586 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:03:07,605.605 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:03:07,840.840 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:03:07,847.847 INFO    ] time= 31/08/2026 00:03:07
[2026-08-31 00:03:07,872.872 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:03:07,898.898 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:03:08,023.023 INFO    ] No existing commands found in stream
[2026-08-31 00:03:13,053.053 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:03:13,055.055 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-08-31 00:03:15,961.961 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 00:03:15,964.964 INFO    ] Checking for system updates...
[2026-08-31 00:03:16,002.002 INFO    ] 200
[2026-08-31 00:03:16,004.004 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:03:16,058.058 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:03:16,061.061 INFO    ] No update needed
[2026-08-31 00:03:16,063.063 INFO    ] Checking for camera pi updates...
[2026-08-31 00:03:16,097.097 INFO    ] 200
[2026-08-31 00:03:16,100.100 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:03:16,141.141 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:03:16,223.223 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:03:16,225.225 INFO    ] No camera update needed
[2026-08-31 00:03:16,228.228 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:03:16,230.230 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:03:16,235.235 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:03:16,241.241 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:03:18,281.281 INFO    ] ================================================
[2026-08-31 00:03:18,296.296 INFO    ] Launching Daemon at Mon Aug 31 00:03:18 IST 2026
[2026-08-31 00:03:18,306.306 INFO    ] ================================================
[2026-08-31 00:03:18,928.928 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:03:18
[2026-08-31 00:03:19,523.523 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:03:19,807.807 INFO    ] Initializing speech engine...
[2026-08-31 00:03:19,821.821 INFO    ] 2026-08-31 00:03:19
[2026-08-31 00:03:20,091.091 INFO    ] 2026-08-31 00:03:20
[2026-08-31 00:03:20,128.128 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:03:20,353.353 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:03:20,387.387 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:03:20,584.584 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:03:20,623.623 INFO    ] time= 31/08/2026 00:03:20
[2026-08-31 00:03:20,672.672 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:03:20,731.731 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:03:20,867.867 INFO    ] No existing commands found in stream
[2026-08-31 00:03:25,898.898 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:03:25,901.901 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-08-31 00:03:27,091.091 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 00:03:27,094.094 INFO    ] Checking for system updates...
[2026-08-31 00:03:27,134.134 INFO    ] 200
[2026-08-31 00:03:27,137.137 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:03:27,190.190 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:03:27,192.192 INFO    ] No update needed
[2026-08-31 00:03:27,195.195 INFO    ] Checking for camera pi updates...
[2026-08-31 00:03:27,234.234 INFO    ] 200
[2026-08-31 00:03:27,236.236 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:03:27,284.284 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:03:27,366.366 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:03:27,370.370 INFO    ] No camera update needed
[2026-08-31 00:03:27,372.372 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:03:27,375.375 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:03:27,381.381 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:03:27,387.387 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:03:29,430.430 INFO    ] ================================================
[2026-08-31 00:03:29,446.446 INFO    ] Launching Daemon at Mon Aug 31 00:03:29 IST 2026
[2026-08-31 00:03:29,456.456 INFO    ] ================================================
[2026-08-31 00:03:30,110.110 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:03:30
[2026-08-31 00:03:30,784.784 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:03:31,081.081 INFO    ] Initializing speech engine...
[2026-08-31 00:03:31,092.092 INFO    ] 2026-08-31 00:03:31
[2026-08-31 00:03:31,368.368 INFO    ] 2026-08-31 00:03:31
[2026-08-31 00:03:31,424.424 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:03:31,654.654 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:03:31,676.676 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:03:31,905.905 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:03:31,935.935 INFO    ] time= 31/08/2026 00:03:31
[2026-08-31 00:03:31,955.955 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:03:31,966.966 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:03:32,113.113 INFO    ] No existing commands found in stream
[2026-08-31 00:03:37,150.150 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:03:37,153.153 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-08-31 00:03:38,655.655 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 00:03:38,658.658 INFO    ] Checking for system updates...
[2026-08-31 00:03:38,695.695 INFO    ] 200
[2026-08-31 00:03:38,698.698 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:03:38,758.758 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:03:38,761.761 INFO    ] No update needed
[2026-08-31 00:03:38,763.763 INFO    ] Checking for camera pi updates...
[2026-08-31 00:03:38,801.801 INFO    ] 200
[2026-08-31 00:03:38,803.803 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:03:38,849.849 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:03:39,103.103 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:03:39,105.105 INFO    ] No camera update needed
[2026-08-31 00:03:39,108.108 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:03:39,110.110 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:03:39,116.116 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:03:39,121.121 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:03:41,161.161 INFO    ] ================================================
[2026-08-31 00:03:41,176.176 INFO    ] Launching Daemon at Mon Aug 31 00:03:41 IST 2026
[2026-08-31 00:03:41,187.187 INFO    ] ================================================
[2026-08-31 00:03:41,754.754 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:03:41
[2026-08-31 00:03:42,336.336 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:03:42,603.603 INFO    ] Initializing speech engine...
[2026-08-31 00:03:42,612.612 INFO    ] 2026-08-31 00:03:42
[2026-08-31 00:03:42,861.861 INFO    ] 2026-08-31 00:03:42
[2026-08-31 00:03:42,895.895 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:03:43,146.146 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:03:43,156.156 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:03:43,310.310 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:03:43,349.349 INFO    ] time= 31/08/2026 00:03:43
[2026-08-31 00:03:43,408.408 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:03:43,458.458 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:03:43,591.591 INFO    ] No existing commands found in stream
[2026-08-31 00:03:48,619.619 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:03:48,622.622 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-08-31 00:03:51,749.749 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 00:03:51,752.752 INFO    ] Checking for system updates...
[2026-08-31 00:03:51,789.789 INFO    ] 200
[2026-08-31 00:03:51,791.791 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:03:51,846.846 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:03:51,848.848 INFO    ] No update needed
[2026-08-31 00:03:51,851.851 INFO    ] Checking for camera pi updates...
[2026-08-31 00:03:51,888.888 INFO    ] 200
[2026-08-31 00:03:51,891.891 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:03:51,932.932 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:03:52,031.031 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:03:52,034.034 INFO    ] No camera update needed
[2026-08-31 00:03:52,036.036 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:03:52,039.039 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:03:52,045.045 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:03:52,051.051 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:03:54,093.093 INFO    ] ================================================
[2026-08-31 00:03:54,108.108 INFO    ] Launching Daemon at Mon Aug 31 00:03:54 IST 2026
[2026-08-31 00:03:54,120.120 INFO    ] ================================================
[2026-08-31 00:03:54,770.770 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:03:54
[2026-08-31 00:03:55,439.439 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:03:55,742.742 INFO    ] Initializing speech engine...
[2026-08-31 00:03:55,750.750 INFO    ] 2026-08-31 00:03:55
[2026-08-31 00:03:56,021.021 INFO    ] 2026-08-31 00:03:56
[2026-08-31 00:03:56,084.084 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:03:56,368.368 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:03:56,383.383 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:03:56,579.579 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:03:56,598.598 INFO    ] time= 31/08/2026 00:03:56
[2026-08-31 00:03:56,626.626 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:03:56,634.634 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:03:56,738.738 INFO    ] No existing commands found in stream
[2026-08-31 00:04:01,759.759 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:04:01,768.768 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-08-31 00:04:04,251.251 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 00:04:04,254.254 INFO    ] Checking for system updates...
[2026-08-31 00:04:04,290.290 INFO    ] 200
[2026-08-31 00:04:04,292.292 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:04:04,348.348 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:04:04,350.350 INFO    ] No update needed
[2026-08-31 00:04:04,353.353 INFO    ] Checking for camera pi updates...
[2026-08-31 00:04:04,388.388 INFO    ] 200
[2026-08-31 00:04:04,390.390 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:04:04,436.436 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:04:04,491.491 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:04:04,494.494 INFO    ] No camera update needed
[2026-08-31 00:04:04,496.496 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:04:04,498.498 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:04:04,504.504 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:04:04,509.509 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:04:06,549.549 INFO    ] ================================================
[2026-08-31 00:04:06,565.565 INFO    ] Launching Daemon at Mon Aug 31 00:04:06 IST 2026
[2026-08-31 00:04:06,576.576 INFO    ] ================================================
[2026-08-31 00:04:07,162.162 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:04:07
[2026-08-31 00:04:07,746.746 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:04:08,011.011 INFO    ] Initializing speech engine...
[2026-08-31 00:04:08,028.028 INFO    ] 2026-08-31 00:04:08
[2026-08-31 00:04:08,293.293 INFO    ] 2026-08-31 00:04:08
[2026-08-31 00:04:08,330.330 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:04:08,545.545 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:04:08,553.553 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:04:08,758.758 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:04:08,773.773 INFO    ] time= 31/08/2026 00:04:08
[2026-08-31 00:04:08,832.832 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:04:08,896.896 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:04:09,042.042 INFO    ] No existing commands found in stream
[2026-08-31 00:04:14,054.054 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:04:14,056.056 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-08-31 00:04:17,358.358 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 00:04:17,361.361 INFO    ] Checking for system updates...
[2026-08-31 00:04:17,402.402 INFO    ] 200
[2026-08-31 00:04:17,405.405 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:04:17,466.466 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:04:17,469.469 INFO    ] No update needed
[2026-08-31 00:04:17,472.472 INFO    ] Checking for camera pi updates...
[2026-08-31 00:04:17,511.511 INFO    ] 200
[2026-08-31 00:04:17,513.513 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:04:17,561.561 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:04:17,669.669 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:04:17,672.672 INFO    ] No camera update needed
[2026-08-31 00:04:17,674.674 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:04:17,677.677 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:04:17,683.683 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:04:17,689.689 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:04:19,728.728 INFO    ] ================================================
[2026-08-31 00:04:19,743.743 INFO    ] Launching Daemon at Mon Aug 31 00:04:19 IST 2026
[2026-08-31 00:04:19,754.754 INFO    ] ================================================
[2026-08-31 00:04:20,344.344 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:04:20
[2026-08-31 00:04:20,941.941 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:04:21,216.216 INFO    ] Initializing speech engine...
[2026-08-31 00:04:21,222.222 INFO    ] 2026-08-31 00:04:21
[2026-08-31 00:04:21,490.490 INFO    ] 2026-08-31 00:04:21
[2026-08-31 00:04:21,543.543 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:04:21,792.792 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:04:21,800.800 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:04:22,029.029 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:04:22,041.041 INFO    ] time= 31/08/2026 00:04:22
[2026-08-31 00:04:22,059.059 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:04:22,066.066 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:04:22,212.212 INFO    ] No existing commands found in stream
[2026-08-31 00:04:27,238.238 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:04:27,240.240 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-08-31 00:04:31,716.716 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 00:04:31,719.719 INFO    ] Checking for system updates...
[2026-08-31 00:04:31,755.755 INFO    ] 200
[2026-08-31 00:04:31,758.758 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:04:31,813.813 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:04:31,815.815 INFO    ] No update needed
[2026-08-31 00:04:31,818.818 INFO    ] Checking for camera pi updates...
[2026-08-31 00:04:31,858.858 INFO    ] 200
[2026-08-31 00:04:31,861.861 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:04:31,912.912 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:04:31,978.978 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:04:31,981.981 INFO    ] No camera update needed
[2026-08-31 00:04:31,984.984 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:04:31,986.986 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:04:31,993.993 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:04:31,998.998 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:04:34,040.040 INFO    ] ================================================
[2026-08-31 00:04:34,055.055 INFO    ] Launching Daemon at Mon Aug 31 00:04:34 IST 2026
[2026-08-31 00:04:34,065.065 INFO    ] ================================================
[2026-08-31 00:04:34,645.645 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:04:34
[2026-08-31 00:04:35,244.244 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:04:35,517.517 INFO    ] Initializing speech engine...
[2026-08-31 00:04:35,528.528 INFO    ] 2026-08-31 00:04:35
[2026-08-31 00:04:35,775.775 INFO    ] 2026-08-31 00:04:35
[2026-08-31 00:04:35,812.812 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:04:36,069.069 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:04:36,075.075 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:04:36,326.326 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:04:36,333.333 INFO    ] time= 31/08/2026 00:04:36
[2026-08-31 00:04:36,352.352 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:04:36,380.380 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:04:36,497.497 INFO    ] No existing commands found in stream
[2026-08-31 00:04:41,514.514 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:04:41,517.517 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-08-31 00:04:44,091.091 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 00:04:44,094.094 INFO    ] Checking for system updates...
[2026-08-31 00:04:44,133.133 INFO    ] 200
[2026-08-31 00:04:44,135.135 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:04:44,188.188 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:04:44,191.191 INFO    ] No update needed
[2026-08-31 00:04:44,193.193 INFO    ] Checking for camera pi updates...
[2026-08-31 00:04:44,229.229 INFO    ] 200
[2026-08-31 00:04:44,231.231 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:04:44,271.271 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:04:44,352.352 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:04:44,354.354 INFO    ] No camera update needed
[2026-08-31 00:04:44,357.357 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:04:44,359.359 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:04:44,364.364 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:04:44,369.369 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:04:46,409.409 INFO    ] ================================================
[2026-08-31 00:04:46,424.424 INFO    ] Launching Daemon at Mon Aug 31 00:04:46 IST 2026
[2026-08-31 00:04:46,435.435 INFO    ] ================================================
[2026-08-31 00:04:47,000.000 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:04:46
[2026-08-31 00:04:47,584.584 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:04:47,841.841 INFO    ] Initializing speech engine...
[2026-08-31 00:04:47,860.860 INFO    ] 2026-08-31 00:04:47
[2026-08-31 00:04:48,109.109 INFO    ] 2026-08-31 00:04:48
[2026-08-31 00:04:48,144.144 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:04:48,400.400 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:04:48,404.404 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:04:48,645.645 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:04:48,663.663 INFO    ] time= 31/08/2026 00:04:48
[2026-08-31 00:04:48,680.680 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:04:48,698.698 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:04:48,825.825 INFO    ] No existing commands found in stream
[2026-08-31 00:04:53,850.850 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:04:53,852.852 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-08-31 00:04:54,574.574 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 00:04:54,576.576 INFO    ] Checking for system updates...
[2026-08-31 00:04:54,612.612 INFO    ] 200
[2026-08-31 00:04:54,614.614 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:04:54,665.665 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:04:54,668.668 INFO    ] No update needed
[2026-08-31 00:04:54,671.671 INFO    ] Checking for camera pi updates...
[2026-08-31 00:04:54,714.714 INFO    ] 200
[2026-08-31 00:04:54,716.716 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:04:54,756.756 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:04:54,836.836 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:04:54,839.839 INFO    ] No camera update needed
[2026-08-31 00:04:54,841.841 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:04:54,844.844 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:04:54,849.849 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:04:54,854.854 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:04:56,895.895 INFO    ] ================================================
[2026-08-31 00:04:56,910.910 INFO    ] Launching Daemon at Mon Aug 31 00:04:56 IST 2026
[2026-08-31 00:04:56,921.921 INFO    ] ================================================
[2026-08-31 00:04:57,578.578 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:04:57
[2026-08-31 00:04:58,251.251 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:04:58,547.547 INFO    ] Initializing speech engine...
[2026-08-31 00:04:58,557.557 INFO    ] 2026-08-31 00:04:58
[2026-08-31 00:04:58,845.845 INFO    ] 2026-08-31 00:04:58
[2026-08-31 00:04:58,891.891 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:04:59,118.118 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:04:59,124.124 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:04:59,350.350 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:04:59,383.383 INFO    ] time= 31/08/2026 00:04:59
[2026-08-31 00:04:59,400.400 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:04:59,430.430 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:04:59,567.567 INFO    ] No existing commands found in stream
[2026-08-31 00:05:04,598.598 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:05:04,601.601 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-08-31 00:05:06,532.532 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 00:05:06,535.535 INFO    ] Checking for system updates...
[2026-08-31 00:05:06,575.575 INFO    ] 200
[2026-08-31 00:05:06,578.578 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:05:06,637.637 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:05:06,640.640 INFO    ] No update needed
[2026-08-31 00:05:06,643.643 INFO    ] Checking for camera pi updates...
[2026-08-31 00:05:06,681.681 INFO    ] 200
[2026-08-31 00:05:06,684.684 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:05:06,727.727 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:05:06,825.825 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:05:06,828.828 INFO    ] No camera update needed
[2026-08-31 00:05:06,831.831 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:05:06,834.834 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:05:06,840.840 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:05:06,845.845 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:05:08,888.888 INFO    ] ================================================
[2026-08-31 00:05:08,904.904 INFO    ] Launching Daemon at Mon Aug 31 00:05:08 IST 2026
[2026-08-31 00:05:08,914.914 INFO    ] ================================================
[2026-08-31 00:05:09,499.499 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:05:09
[2026-08-31 00:05:10,100.100 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:05:10,369.369 INFO    ] Initializing speech engine...
[2026-08-31 00:05:10,380.380 INFO    ] 2026-08-31 00:05:10
[2026-08-31 00:05:10,630.630 INFO    ] 2026-08-31 00:05:10
[2026-08-31 00:05:10,696.696 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:05:10,929.929 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:05:10,934.934 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:05:11,188.188 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:05:11,202.202 INFO    ] time= 31/08/2026 00:05:11
[2026-08-31 00:05:11,217.217 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:05:11,226.226 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:05:11,357.357 INFO    ] No existing commands found in stream
[2026-08-31 00:05:16,369.369 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:05:16,372.372 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-08-31 00:05:18,372.372 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 00:05:18,374.374 INFO    ] Checking for system updates...
[2026-08-31 00:05:18,410.410 INFO    ] 200
[2026-08-31 00:05:18,412.412 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:05:18,470.470 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:05:18,473.473 INFO    ] No update needed
[2026-08-31 00:05:18,475.475 INFO    ] Checking for camera pi updates...
[2026-08-31 00:05:18,509.509 INFO    ] 200
[2026-08-31 00:05:18,511.511 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:05:18,551.551 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:05:18,640.640 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:05:18,642.642 INFO    ] No camera update needed
[2026-08-31 00:05:18,644.644 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:05:18,647.647 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:05:18,652.652 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:05:18,657.657 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:05:20,698.698 INFO    ] ================================================
[2026-08-31 00:05:20,714.714 INFO    ] Launching Daemon at Mon Aug 31 00:05:20 IST 2026
[2026-08-31 00:05:20,725.725 INFO    ] ================================================
[2026-08-31 00:05:21,307.307 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:05:21
[2026-08-31 00:05:21,906.906 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:05:22,179.179 INFO    ] Initializing speech engine...
[2026-08-31 00:05:22,190.190 INFO    ] 2026-08-31 00:05:22
[2026-08-31 00:05:22,451.451 INFO    ] 2026-08-31 00:05:22
[2026-08-31 00:05:22,505.505 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:05:22,793.793 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:05:22,800.800 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:05:22,995.995 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:05:23,010.010 INFO    ] time= 31/08/2026 00:05:22
[2026-08-31 00:05:23,019.019 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:05:23,045.045 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:05:23,166.166 INFO    ] No existing commands found in stream
[2026-08-31 00:05:28,196.196 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:05:28,199.199 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-08-31 00:05:29,411.411 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 00:05:29,414.414 INFO    ] Checking for system updates...
[2026-08-31 00:05:29,451.451 INFO    ] 200
[2026-08-31 00:05:29,453.453 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:05:29,505.505 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:05:29,508.508 INFO    ] No update needed
[2026-08-31 00:05:29,510.510 INFO    ] Checking for camera pi updates...
[2026-08-31 00:05:29,548.548 INFO    ] 200
[2026-08-31 00:05:29,551.551 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:05:29,595.595 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:05:29,681.681 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:05:29,684.684 INFO    ] No camera update needed
[2026-08-31 00:05:29,686.686 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:05:29,689.689 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:05:29,694.694 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:05:29,699.699 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:05:31,740.740 INFO    ] ================================================
[2026-08-31 00:05:31,756.756 INFO    ] Launching Daemon at Mon Aug 31 00:05:31 IST 2026
[2026-08-31 00:05:31,767.767 INFO    ] ================================================
[2026-08-31 00:05:32,388.388 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:05:32
[2026-08-31 00:05:33,002.002 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:05:33,306.306 INFO    ] Initializing speech engine...
[2026-08-31 00:05:33,313.313 INFO    ] 2026-08-31 00:05:33
[2026-08-31 00:05:33,560.560 INFO    ] 2026-08-31 00:05:33
[2026-08-31 00:05:33,594.594 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:05:33,851.851 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:05:33,856.856 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:05:34,067.067 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:05:34,112.112 INFO    ] time= 31/08/2026 00:05:34
[2026-08-31 00:05:34,119.119 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:05:34,133.133 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:05:34,257.257 INFO    ] No existing commands found in stream
[2026-08-31 00:05:39,278.278 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:05:39,280.280 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-08-31 00:05:40,573.573 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 00:05:40,576.576 INFO    ] Checking for system updates...
[2026-08-31 00:05:40,611.611 INFO    ] 200
[2026-08-31 00:05:40,614.614 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:05:40,674.674 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:05:40,676.676 INFO    ] No update needed
[2026-08-31 00:05:40,679.679 INFO    ] Checking for camera pi updates...
[2026-08-31 00:05:40,716.716 INFO    ] 200
[2026-08-31 00:05:40,719.719 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:05:40,763.763 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:05:40,956.956 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:05:40,959.959 INFO    ] No camera update needed
[2026-08-31 00:05:40,961.961 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:05:40,963.963 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:05:40,969.969 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:05:40,974.974 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:05:43,016.016 INFO    ] ================================================
[2026-08-31 00:05:43,032.032 INFO    ] Launching Daemon at Mon Aug 31 00:05:43 IST 2026
[2026-08-31 00:05:43,044.044 INFO    ] ================================================
[2026-08-31 00:05:43,625.625 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:05:43
[2026-08-31 00:05:44,225.225 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:05:44,503.503 INFO    ] Initializing speech engine...
[2026-08-31 00:05:44,508.508 INFO    ] 2026-08-31 00:05:44
[2026-08-31 00:05:44,759.759 INFO    ] 2026-08-31 00:05:44
[2026-08-31 00:05:44,795.795 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:05:45,052.052 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:05:45,062.062 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:05:45,213.213 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:05:45,261.261 INFO    ] time= 31/08/2026 00:05:45
[2026-08-31 00:05:45,300.300 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:05:45,355.355 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:05:45,462.462 INFO    ] No existing commands found in stream
[2026-08-31 00:05:50,472.472 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:05:50,474.474 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-08-31 00:05:54,753.753 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 00:05:54,756.756 INFO    ] Checking for system updates...
[2026-08-31 00:05:54,796.796 INFO    ] 200
[2026-08-31 00:05:54,799.799 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:05:54,852.852 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:05:54,854.854 INFO    ] No update needed
[2026-08-31 00:05:54,857.857 INFO    ] Checking for camera pi updates...
[2026-08-31 00:05:54,895.895 INFO    ] 200
[2026-08-31 00:05:54,897.897 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:05:54,938.938 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:05:55,025.025 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:05:55,028.028 INFO    ] No camera update needed
[2026-08-31 00:05:55,030.030 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:05:55,033.033 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:05:55,038.038 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:05:55,043.043 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:05:57,085.085 INFO    ] ================================================
[2026-08-31 00:05:57,101.101 INFO    ] Launching Daemon at Mon Aug 31 00:05:57 IST 2026
[2026-08-31 00:05:57,112.112 INFO    ] ================================================
[2026-08-31 00:05:57,692.692 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:05:57
[2026-08-31 00:05:58,289.289 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:05:58,566.566 INFO    ] Initializing speech engine...
[2026-08-31 00:05:58,573.573 INFO    ] 2026-08-31 00:05:58
[2026-08-31 00:05:58,835.835 INFO    ] 2026-08-31 00:05:58
[2026-08-31 00:05:58,889.889 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:05:59,118.118 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:05:59,123.123 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:05:59,343.343 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:05:59,380.380 INFO    ] time= 31/08/2026 00:05:59
[2026-08-31 00:05:59,386.386 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:05:59,404.404 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:05:59,534.534 INFO    ] No existing commands found in stream
[2026-08-31 00:06:04,547.547 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:06:04,550.550 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-08-31 00:06:08,250.250 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 00:06:08,253.253 INFO    ] Checking for system updates...
[2026-08-31 00:06:08,293.293 INFO    ] 200
[2026-08-31 00:06:08,295.295 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:06:08,348.348 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:06:08,351.351 INFO    ] No update needed
[2026-08-31 00:06:08,353.353 INFO    ] Checking for camera pi updates...
[2026-08-31 00:06:08,387.387 INFO    ] 200
[2026-08-31 00:06:08,390.390 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:06:08,433.433 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:06:08,520.520 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:06:08,523.523 INFO    ] No camera update needed
[2026-08-31 00:06:08,525.525 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:06:08,528.528 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:06:08,533.533 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:06:08,538.538 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:06:10,579.579 INFO    ] ================================================
[2026-08-31 00:06:10,595.595 INFO    ] Launching Daemon at Mon Aug 31 00:06:10 IST 2026
[2026-08-31 00:06:10,606.606 INFO    ] ================================================
[2026-08-31 00:06:11,250.250 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:06:11
[2026-08-31 00:06:11,833.833 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:06:12,104.104 INFO    ] Initializing speech engine...
[2026-08-31 00:06:12,113.113 INFO    ] 2026-08-31 00:06:12
[2026-08-31 00:06:12,365.365 INFO    ] 2026-08-31 00:06:12
[2026-08-31 00:06:12,400.400 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:06:12,662.662 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:06:12,668.668 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:06:12,924.924 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:06:12,930.930 INFO    ] time= 31/08/2026 00:06:12
[2026-08-31 00:06:12,946.946 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:06:12,978.978 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:06:13,149.149 INFO    ] No existing commands found in stream
[2026-08-31 00:06:18,186.186 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:06:18,190.190 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-08-31 00:06:19,595.595 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 00:06:19,599.599 INFO    ] Checking for system updates...
[2026-08-31 00:06:19,640.640 INFO    ] 200
[2026-08-31 00:06:19,643.643 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:06:19,709.709 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:06:19,712.712 INFO    ] No update needed
[2026-08-31 00:06:19,715.715 INFO    ] Checking for camera pi updates...
[2026-08-31 00:06:19,754.754 INFO    ] 200
[2026-08-31 00:06:19,757.757 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:06:19,804.804 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:06:19,891.891 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:06:19,894.894 INFO    ] No camera update needed
[2026-08-31 00:06:19,897.897 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:06:19,900.900 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:06:19,906.906 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:06:19,912.912 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:06:21,954.954 INFO    ] ================================================
[2026-08-31 00:06:21,969.969 INFO    ] Launching Daemon at Mon Aug 31 00:06:21 IST 2026
[2026-08-31 00:06:21,980.980 INFO    ] ================================================
[2026-08-31 00:06:22,562.562 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:06:22
[2026-08-31 00:06:23,160.160 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:06:23,432.432 INFO    ] Initializing speech engine...
[2026-08-31 00:06:23,441.441 INFO    ] 2026-08-31 00:06:23
[2026-08-31 00:06:23,703.703 INFO    ] 2026-08-31 00:06:23
[2026-08-31 00:06:23,756.756 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:06:24,038.038 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:06:24,046.046 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:06:24,242.242 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:06:24,257.257 INFO    ] time= 31/08/2026 00:06:24
[2026-08-31 00:06:24,266.266 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:06:24,292.292 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:06:24,408.408 INFO    ] No existing commands found in stream
[2026-08-31 00:06:29,432.432 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:06:29,435.435 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-08-31 00:06:33,450.450 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 00:06:33,453.453 INFO    ] Checking for system updates...
[2026-08-31 00:06:33,492.492 INFO    ] 200
[2026-08-31 00:06:33,495.495 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:06:33,553.553 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:06:33,556.556 INFO    ] No update needed
[2026-08-31 00:06:33,558.558 INFO    ] Checking for camera pi updates...
[2026-08-31 00:06:33,594.594 INFO    ] 200
[2026-08-31 00:06:33,597.597 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:06:33,637.637 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:06:33,720.720 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:06:33,723.723 INFO    ] No camera update needed
[2026-08-31 00:06:33,725.725 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:06:33,727.727 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:06:33,733.733 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:06:33,738.738 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:06:35,779.779 INFO    ] ================================================
[2026-08-31 00:06:35,795.795 INFO    ] Launching Daemon at Mon Aug 31 00:06:35 IST 2026
[2026-08-31 00:06:35,806.806 INFO    ] ================================================
[2026-08-31 00:06:36,455.455 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:06:36
[2026-08-31 00:06:37,057.057 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:06:37,357.357 INFO    ] Initializing speech engine...
[2026-08-31 00:06:37,367.367 INFO    ] 2026-08-31 00:06:37
[2026-08-31 00:06:37,641.641 INFO    ] 2026-08-31 00:06:37
[2026-08-31 00:06:37,699.699 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:06:38,028.028 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:06:38,068.068 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:06:38,248.248 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:06:38,257.257 INFO    ] time= 31/08/2026 00:06:38
[2026-08-31 00:06:38,266.266 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:06:38,297.297 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:06:38,467.467 INFO    ] No existing commands found in stream
[2026-08-31 00:06:43,481.481 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:06:43,484.484 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-08-31 00:06:44,470.470 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 00:06:44,473.473 INFO    ] Checking for system updates...
[2026-08-31 00:06:44,511.511 INFO    ] 200
[2026-08-31 00:06:44,514.514 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:06:44,575.575 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:06:44,578.578 INFO    ] No update needed
[2026-08-31 00:06:44,581.581 INFO    ] Checking for camera pi updates...
[2026-08-31 00:06:44,616.616 INFO    ] 200
[2026-08-31 00:06:44,619.619 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:06:44,666.666 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:06:44,757.757 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:06:44,760.760 INFO    ] No camera update needed
[2026-08-31 00:06:44,762.762 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:06:44,765.765 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:06:44,771.771 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:06:44,777.777 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:06:46,817.817 INFO    ] ================================================
[2026-08-31 00:06:46,833.833 INFO    ] Launching Daemon at Mon Aug 31 00:06:46 IST 2026
[2026-08-31 00:06:46,845.845 INFO    ] ================================================
[2026-08-31 00:06:47,425.425 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:06:47
[2026-08-31 00:06:48,021.021 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:06:48,296.296 INFO    ] Initializing speech engine...
[2026-08-31 00:06:48,305.305 INFO    ] 2026-08-31 00:06:48
[2026-08-31 00:06:48,564.564 INFO    ] 2026-08-31 00:06:48
[2026-08-31 00:06:48,594.594 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:06:48,863.863 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:06:48,871.871 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:06:49,099.099 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:06:49,106.106 INFO    ] time= 31/08/2026 00:06:49
[2026-08-31 00:06:49,124.124 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:06:49,153.153 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:06:49,260.260 INFO    ] No existing commands found in stream
[2026-08-31 00:06:54,284.284 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:06:54,286.286 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-08-31 00:06:56,308.308 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 00:06:56,311.311 INFO    ] Checking for system updates...
[2026-08-31 00:06:56,351.351 INFO    ] 200
[2026-08-31 00:06:56,353.353 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:06:56,413.413 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:06:56,416.416 INFO    ] No update needed
[2026-08-31 00:06:56,419.419 INFO    ] Checking for camera pi updates...
[2026-08-31 00:06:56,453.453 INFO    ] 200
[2026-08-31 00:06:56,455.455 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:06:56,500.500 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:06:56,580.580 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:06:56,582.582 INFO    ] No camera update needed
[2026-08-31 00:06:56,585.585 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:06:56,587.587 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:06:56,593.593 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:06:56,598.598 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:06:58,641.641 INFO    ] ================================================
[2026-08-31 00:06:58,656.656 INFO    ] Launching Daemon at Mon Aug 31 00:06:58 IST 2026
[2026-08-31 00:06:58,667.667 INFO    ] ================================================
[2026-08-31 00:06:59,322.322 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:06:59
[2026-08-31 00:06:59,994.994 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:07:00,299.299 INFO    ] Initializing speech engine...
[2026-08-31 00:07:00,307.307 INFO    ] 2026-08-31 00:07:00
[2026-08-31 00:07:00,626.626 INFO    ] 2026-08-31 00:07:00
[2026-08-31 00:07:00,710.710 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:07:00,925.925 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:07:00,935.935 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:07:01,146.146 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:07:01,174.174 INFO    ] time= 31/08/2026 00:07:01
[2026-08-31 00:07:01,183.183 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:07:01,191.191 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:07:01,308.308 INFO    ] No existing commands found in stream
[2026-08-31 00:07:06,334.334 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:07:06,337.337 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-08-31 00:07:06,892.892 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 00:07:06,895.895 INFO    ] Checking for system updates...
[2026-08-31 00:07:06,935.935 INFO    ] 200
[2026-08-31 00:07:06,938.938 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:07:06,997.997 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:07:06,999.999 INFO    ] No update needed
[2026-08-31 00:07:07,002.002 INFO    ] Checking for camera pi updates...
[2026-08-31 00:07:07,035.035 INFO    ] 200
[2026-08-31 00:07:07,038.038 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:07:07,078.078 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:07:07,159.159 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:07:07,162.162 INFO    ] No camera update needed
[2026-08-31 00:07:07,164.164 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:07:07,166.166 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:07:07,172.172 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:07:07,177.177 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:07:09,218.218 INFO    ] ================================================
[2026-08-31 00:07:09,234.234 INFO    ] Launching Daemon at Mon Aug 31 00:07:09 IST 2026
[2026-08-31 00:07:09,245.245 INFO    ] ================================================
[2026-08-31 00:07:09,825.825 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:07:09
[2026-08-31 00:07:10,424.424 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:07:10,696.696 INFO    ] Initializing speech engine...
[2026-08-31 00:07:10,705.705 INFO    ] 2026-08-31 00:07:10
[2026-08-31 00:07:10,967.967 INFO    ] 2026-08-31 00:07:10
[2026-08-31 00:07:11,021.021 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:07:11,248.248 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:07:11,255.255 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:07:11,470.470 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:07:11,510.510 INFO    ] time= 31/08/2026 00:07:11
[2026-08-31 00:07:11,516.516 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:07:11,534.534 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:07:11,665.665 INFO    ] No existing commands found in stream
[2026-08-31 00:07:16,677.677 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:07:16,680.680 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-08-31 00:07:19,530.530 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 00:07:19,532.532 INFO    ] Checking for system updates...
[2026-08-31 00:07:19,568.568 INFO    ] 200
[2026-08-31 00:07:19,570.570 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:07:19,622.622 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:07:19,625.625 INFO    ] No update needed
[2026-08-31 00:07:19,627.627 INFO    ] Checking for camera pi updates...
[2026-08-31 00:07:19,664.664 INFO    ] 200
[2026-08-31 00:07:19,667.667 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:07:19,714.714 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:07:19,801.801 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:07:19,804.804 INFO    ] No camera update needed
[2026-08-31 00:07:19,806.806 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:07:19,808.808 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:07:19,814.814 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:07:19,819.819 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:07:21,860.860 INFO    ] ================================================
[2026-08-31 00:07:21,876.876 INFO    ] Launching Daemon at Mon Aug 31 00:07:21 IST 2026
[2026-08-31 00:07:21,887.887 INFO    ] ================================================
[2026-08-31 00:07:22,459.459 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:07:22
[2026-08-31 00:07:23,049.049 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:07:23,297.297 INFO    ] Initializing speech engine...
[2026-08-31 00:07:23,312.312 INFO    ] 2026-08-31 00:07:23
[2026-08-31 00:07:23,579.579 INFO    ] 2026-08-31 00:07:23
[2026-08-31 00:07:23,614.614 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:07:23,819.819 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:07:23,878.878 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:07:24,109.109 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:07:24,152.152 INFO    ] time= 31/08/2026 00:07:24
[2026-08-31 00:07:24,158.158 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:07:24,175.175 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:07:24,309.309 INFO    ] No existing commands found in stream
[2026-08-31 00:07:29,322.322 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:07:29,325.325 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-08-31 00:07:30,328.328 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 00:07:30,331.331 INFO    ] Checking for system updates...
[2026-08-31 00:07:30,370.370 INFO    ] 200
[2026-08-31 00:07:30,373.373 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:07:30,438.438 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:07:30,440.440 INFO    ] No update needed
[2026-08-31 00:07:30,443.443 INFO    ] Checking for camera pi updates...
[2026-08-31 00:07:30,484.484 INFO    ] 200
[2026-08-31 00:07:30,486.486 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:07:30,528.528 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:07:30,599.599 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:07:30,602.602 INFO    ] No camera update needed
[2026-08-31 00:07:30,604.604 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:07:30,606.606 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:07:30,612.612 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:07:30,617.617 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:07:32,660.660 INFO    ] ================================================
[2026-08-31 00:07:32,676.676 INFO    ] Launching Daemon at Mon Aug 31 00:07:32 IST 2026
[2026-08-31 00:07:32,687.687 INFO    ] ================================================
[2026-08-31 00:07:33,298.298 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:07:33
[2026-08-31 00:07:33,889.889 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:07:34,155.155 INFO    ] Initializing speech engine...
[2026-08-31 00:07:34,161.161 INFO    ] 2026-08-31 00:07:34
[2026-08-31 00:07:34,460.460 INFO    ] 2026-08-31 00:07:34
[2026-08-31 00:07:34,499.499 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:07:34,735.735 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:07:34,797.797 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:07:35,040.040 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:07:35,084.084 INFO    ] time= 31/08/2026 00:07:35
[2026-08-31 00:07:35,109.109 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:07:35,115.115 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:07:35,253.253 INFO    ] No existing commands found in stream
[2026-08-31 00:07:40,284.284 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:07:40,286.286 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-08-31 00:07:42,088.088 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 00:07:42,091.091 INFO    ] Checking for system updates...
[2026-08-31 00:07:42,132.132 INFO    ] 200
[2026-08-31 00:07:42,135.135 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:07:42,194.194 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:07:42,196.196 INFO    ] No update needed
[2026-08-31 00:07:42,199.199 INFO    ] Checking for camera pi updates...
[2026-08-31 00:07:42,237.237 INFO    ] 200
[2026-08-31 00:07:42,239.239 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:07:42,280.280 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:07:42,461.461 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:07:42,463.463 INFO    ] No camera update needed
[2026-08-31 00:07:42,465.465 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:07:42,468.468 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:07:42,473.473 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:07:42,479.479 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:07:44,520.520 INFO    ] ================================================
[2026-08-31 00:07:44,536.536 INFO    ] Launching Daemon at Mon Aug 31 00:07:44 IST 2026
[2026-08-31 00:07:44,546.546 INFO    ] ================================================
[2026-08-31 00:07:45,111.111 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:07:45
[2026-08-31 00:07:45,694.694 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:07:45,952.952 INFO    ] Initializing speech engine...
[2026-08-31 00:07:45,958.958 INFO    ] 2026-08-31 00:07:45
[2026-08-31 00:07:46,253.253 INFO    ] 2026-08-31 00:07:46
[2026-08-31 00:07:46,288.288 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:07:46,514.514 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:07:46,521.521 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:07:46,742.742 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:07:46,759.759 INFO    ] time= 31/08/2026 00:07:46
[2026-08-31 00:07:46,818.818 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:07:46,882.882 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:07:47,028.028 INFO    ] No existing commands found in stream
[2026-08-31 00:07:52,050.050 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:07:52,053.053 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-08-31 00:07:54,649.649 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 00:07:54,652.652 INFO    ] Checking for system updates...
[2026-08-31 00:07:54,687.687 INFO    ] 200
[2026-08-31 00:07:54,690.690 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:07:54,749.749 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:07:54,752.752 INFO    ] No update needed
[2026-08-31 00:07:54,754.754 INFO    ] Checking for camera pi updates...
[2026-08-31 00:07:54,792.792 INFO    ] 200
[2026-08-31 00:07:54,794.794 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:07:54,840.840 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:07:54,933.933 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:07:54,935.935 INFO    ] No camera update needed
[2026-08-31 00:07:54,938.938 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:07:54,940.940 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:07:54,945.945 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:07:54,951.951 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:07:56,991.991 INFO    ] ================================================
[2026-08-31 00:07:57,006.006 INFO    ] Launching Daemon at Mon Aug 31 00:07:57 IST 2026
[2026-08-31 00:07:57,017.017 INFO    ] ================================================
[2026-08-31 00:07:57,675.675 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:07:57
[2026-08-31 00:07:58,363.363 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:07:58,673.673 INFO    ] Initializing speech engine...
[2026-08-31 00:07:58,685.685 INFO    ] 2026-08-31 00:07:58
[2026-08-31 00:07:58,972.972 INFO    ] 2026-08-31 00:07:58
[2026-08-31 00:07:59,082.082 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:07:59,359.359 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:07:59,395.395 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:07:59,639.639 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:07:59,671.671 INFO    ] time= 31/08/2026 00:07:59
[2026-08-31 00:07:59,726.726 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:07:59,767.767 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:07:59,903.903 INFO    ] No existing commands found in stream
[2026-08-31 00:08:04,916.916 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:08:04,920.920 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-08-31 00:08:07,691.691 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 00:08:07,694.694 INFO    ] Checking for system updates...
[2026-08-31 00:08:07,731.731 INFO    ] 200
[2026-08-31 00:08:07,734.734 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:08:07,792.792 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:08:07,795.795 INFO    ] No update needed
[2026-08-31 00:08:07,798.798 INFO    ] Checking for camera pi updates...
[2026-08-31 00:08:07,836.836 INFO    ] 200
[2026-08-31 00:08:07,840.840 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:08:07,886.886 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:08:07,965.965 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:08:07,968.968 INFO    ] No camera update needed
[2026-08-31 00:08:07,970.970 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:08:07,973.973 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:08:07,979.979 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:08:07,985.985 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:08:10,031.031 INFO    ] ================================================
[2026-08-31 00:08:10,047.047 INFO    ] Launching Daemon at Mon Aug 31 00:08:10 IST 2026
[2026-08-31 00:08:10,058.058 INFO    ] ================================================
[2026-08-31 00:08:10,636.636 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:08:10
[2026-08-31 00:08:11,235.235 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:08:11,515.515 INFO    ] Initializing speech engine...
[2026-08-31 00:08:11,521.521 INFO    ] 2026-08-31 00:08:11
[2026-08-31 00:08:11,769.769 INFO    ] 2026-08-31 00:08:11
[2026-08-31 00:08:11,805.805 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:08:12,064.064 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:08:12,070.070 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:08:12,302.302 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:08:12,330.330 INFO    ] time= 31/08/2026 00:08:12
[2026-08-31 00:08:12,336.336 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:08:12,353.353 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:08:12,485.485 INFO    ] No existing commands found in stream
[2026-08-31 00:08:17,499.499 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:08:17,502.502 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-08-31 00:08:18,889.889 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 00:08:18,892.892 INFO    ] Checking for system updates...
[2026-08-31 00:08:18,927.927 INFO    ] 200
[2026-08-31 00:08:18,930.930 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:08:18,984.984 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:08:18,986.986 INFO    ] No update needed
[2026-08-31 00:08:18,989.989 INFO    ] Checking for camera pi updates...
[2026-08-31 00:08:19,023.023 INFO    ] 200
[2026-08-31 00:08:19,025.025 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:08:19,065.065 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:08:19,145.145 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:08:19,148.148 INFO    ] No camera update needed
[2026-08-31 00:08:19,150.150 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:08:19,153.153 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:08:19,158.158 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:08:19,163.163 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:08:21,204.204 INFO    ] ================================================
[2026-08-31 00:08:21,219.219 INFO    ] Launching Daemon at Mon Aug 31 00:08:21 IST 2026
[2026-08-31 00:08:21,230.230 INFO    ] ================================================
[2026-08-31 00:08:21,795.795 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:08:21
[2026-08-31 00:08:22,375.375 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:08:22,645.645 INFO    ] Initializing speech engine...
[2026-08-31 00:08:22,652.652 INFO    ] 2026-08-31 00:08:22
[2026-08-31 00:08:22,921.921 INFO    ] 2026-08-31 00:08:22
[2026-08-31 00:08:22,964.964 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:08:23,243.243 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:08:23,251.251 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:08:23,447.447 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:08:23,462.462 INFO    ] time= 31/08/2026 00:08:23
[2026-08-31 00:08:23,471.471 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:08:23,497.497 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:08:23,608.608 INFO    ] No existing commands found in stream
[2026-08-31 00:08:28,638.638 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:08:28,640.640 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-08-31 00:08:29,875.875 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 00:08:29,878.878 INFO    ] Checking for system updates...
[2026-08-31 00:08:29,918.918 INFO    ] 200
[2026-08-31 00:08:29,920.920 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:08:29,980.980 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:08:29,982.982 INFO    ] No update needed
[2026-08-31 00:08:29,985.985 INFO    ] Checking for camera pi updates...
[2026-08-31 00:08:30,022.022 INFO    ] 200
[2026-08-31 00:08:30,025.025 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:08:30,070.070 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:08:30,151.151 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:08:30,153.153 INFO    ] No camera update needed
[2026-08-31 00:08:30,155.155 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:08:30,158.158 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:08:30,163.163 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:08:30,168.168 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:08:32,209.209 INFO    ] ================================================
[2026-08-31 00:08:32,226.226 INFO    ] Launching Daemon at Mon Aug 31 00:08:32 IST 2026
[2026-08-31 00:08:32,237.237 INFO    ] ================================================
[2026-08-31 00:08:32,848.848 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:08:32
[2026-08-31 00:08:33,511.511 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:08:33,820.820 INFO    ] Initializing speech engine...
[2026-08-31 00:08:33,831.831 INFO    ] 2026-08-31 00:08:33
[2026-08-31 00:08:34,105.105 INFO    ] 2026-08-31 00:08:34
[2026-08-31 00:08:34,140.140 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:08:34,369.369 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:08:34,388.388 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:08:34,607.607 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:08:34,627.627 INFO    ] time= 31/08/2026 00:08:34
[2026-08-31 00:08:34,633.633 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:08:34,653.653 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:08:34,782.782 INFO    ] No existing commands found in stream
[2026-08-31 00:08:39,801.801 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:08:39,804.804 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-08-31 00:08:43,665.665 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 00:08:43,668.668 INFO    ] Checking for system updates...
[2026-08-31 00:08:43,708.708 INFO    ] 200
[2026-08-31 00:08:43,711.711 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:08:43,763.763 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:08:43,766.766 INFO    ] No update needed
[2026-08-31 00:08:43,768.768 INFO    ] Checking for camera pi updates...
[2026-08-31 00:08:43,802.802 INFO    ] 200
[2026-08-31 00:08:43,804.804 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:08:43,844.844 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:08:43,927.927 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:08:43,929.929 INFO    ] No camera update needed
[2026-08-31 00:08:43,932.932 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:08:43,934.934 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:08:43,939.939 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:08:43,944.944 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:08:45,985.985 INFO    ] ================================================
[2026-08-31 00:08:46,001.001 INFO    ] Launching Daemon at Mon Aug 31 00:08:45 IST 2026
[2026-08-31 00:08:46,012.012 INFO    ] ================================================
[2026-08-31 00:08:46,630.630 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:08:46
[2026-08-31 00:08:47,284.284 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:08:47,557.557 INFO    ] Initializing speech engine...
[2026-08-31 00:08:47,563.563 INFO    ] 2026-08-31 00:08:47
[2026-08-31 00:08:47,810.810 INFO    ] 2026-08-31 00:08:47
[2026-08-31 00:08:47,845.845 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:08:48,102.102 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:08:48,111.111 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:08:48,349.349 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:08:48,375.375 INFO    ] time= 31/08/2026 00:08:48
[2026-08-31 00:08:48,381.381 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:08:48,399.399 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:08:48,534.534 INFO    ] No existing commands found in stream
[2026-08-31 00:08:53,549.549 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:08:53,551.551 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-08-31 00:08:57,328.328 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 00:08:57,330.330 INFO    ] Checking for system updates...
[2026-08-31 00:08:57,371.371 INFO    ] 200
[2026-08-31 00:08:57,373.373 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:08:57,426.426 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:08:57,429.429 INFO    ] No update needed
[2026-08-31 00:08:57,431.431 INFO    ] Checking for camera pi updates...
[2026-08-31 00:08:57,473.473 INFO    ] 200
[2026-08-31 00:08:57,475.475 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:08:57,516.516 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:08:57,599.599 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:08:57,601.601 INFO    ] No camera update needed
[2026-08-31 00:08:57,604.604 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:08:57,606.606 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:08:57,611.611 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:08:57,616.616 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:08:59,659.659 INFO    ] ================================================
[2026-08-31 00:08:59,674.674 INFO    ] Launching Daemon at Mon Aug 31 00:08:59 IST 2026
[2026-08-31 00:08:59,685.685 INFO    ] ================================================
[2026-08-31 00:09:00,353.353 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:09:00
[2026-08-31 00:09:01,043.043 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:09:01,354.354 INFO    ] Initializing speech engine...
[2026-08-31 00:09:01,368.368 INFO    ] 2026-08-31 00:09:01
[2026-08-31 00:09:01,688.688 INFO    ] 2026-08-31 00:09:01
[2026-08-31 00:09:01,775.775 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:09:02,062.062 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:09:02,071.071 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:09:02,273.273 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:09:02,278.278 INFO    ] time= 31/08/2026 00:09:02
[2026-08-31 00:09:02,282.282 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:09:02,298.298 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:09:02,380.380 INFO    ] No existing commands found in stream
[2026-08-31 00:09:07,391.391 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:09:07,394.394 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-08-31 00:09:08,610.610 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 00:09:08,613.613 INFO    ] Checking for system updates...
[2026-08-31 00:09:08,656.656 INFO    ] 200
[2026-08-31 00:09:08,659.659 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:09:08,721.721 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:09:08,724.724 INFO    ] No update needed
[2026-08-31 00:09:08,727.727 INFO    ] Checking for camera pi updates...
[2026-08-31 00:09:08,768.768 INFO    ] 200
[2026-08-31 00:09:08,770.770 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:09:08,817.817 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:09:08,906.906 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:09:08,910.910 INFO    ] No camera update needed
[2026-08-31 00:09:08,912.912 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:09:08,915.915 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:09:08,922.922 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:09:08,928.928 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:09:10,975.975 INFO    ] ================================================
[2026-08-31 00:09:10,990.990 INFO    ] Launching Daemon at Mon Aug 31 00:09:10 IST 2026
[2026-08-31 00:09:11,000.000 INFO    ] ================================================
[2026-08-31 00:09:11,675.675 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:09:11
[2026-08-31 00:09:12,370.370 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:09:12,682.682 INFO    ] Initializing speech engine...
[2026-08-31 00:09:12,694.694 INFO    ] 2026-08-31 00:09:12
[2026-08-31 00:09:13,007.007 INFO    ] 2026-08-31 00:09:12
[2026-08-31 00:09:13,096.096 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:09:13,372.372 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:09:13,430.430 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:09:13,656.656 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:09:13,720.720 INFO    ] time= 31/08/2026 00:09:13
[2026-08-31 00:09:13,764.764 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:09:13,823.823 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:09:13,958.958 INFO    ] No existing commands found in stream
[2026-08-31 00:09:18,976.976 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:09:18,979.979 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-08-31 00:09:22,755.755 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 00:09:22,758.758 INFO    ] Checking for system updates...
[2026-08-31 00:09:22,794.794 INFO    ] 200
[2026-08-31 00:09:22,796.796 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:09:22,850.850 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:09:22,852.852 INFO    ] No update needed
[2026-08-31 00:09:22,854.854 INFO    ] Checking for camera pi updates...
[2026-08-31 00:09:22,893.893 INFO    ] 200
[2026-08-31 00:09:22,895.895 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:09:22,936.936 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:09:23,029.029 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:09:23,032.032 INFO    ] No camera update needed
[2026-08-31 00:09:23,034.034 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:09:23,037.037 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:09:23,044.044 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:09:23,050.050 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:09:25,092.092 INFO    ] ================================================
[2026-08-31 00:09:25,109.109 INFO    ] Launching Daemon at Mon Aug 31 00:09:25 IST 2026
[2026-08-31 00:09:25,120.120 INFO    ] ================================================
[2026-08-31 00:09:25,716.716 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:09:25
[2026-08-31 00:09:26,395.395 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:09:26,730.730 INFO    ] Initializing speech engine...
[2026-08-31 00:09:26,742.742 INFO    ] 2026-08-31 00:09:26
[2026-08-31 00:09:27,015.015 INFO    ] 2026-08-31 00:09:27
[2026-08-31 00:09:27,053.053 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:09:27,359.359 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:09:27,370.370 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:09:27,581.581 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:09:27,641.641 INFO    ] time= 31/08/2026 00:09:27
[2026-08-31 00:09:27,679.679 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:09:27,694.694 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:09:27,818.818 INFO    ] No existing commands found in stream
[2026-08-31 00:09:32,840.840 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:09:32,843.843 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-08-31 00:09:33,608.608 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 00:09:33,611.611 INFO    ] Checking for system updates...
[2026-08-31 00:09:33,647.647 INFO    ] 200
[2026-08-31 00:09:33,650.650 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:09:33,702.702 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:09:33,705.705 INFO    ] No update needed
[2026-08-31 00:09:33,707.707 INFO    ] Checking for camera pi updates...
[2026-08-31 00:09:33,741.741 INFO    ] 200
[2026-08-31 00:09:33,743.743 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:09:33,788.788 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:09:33,869.869 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:09:33,871.871 INFO    ] No camera update needed
[2026-08-31 00:09:33,873.873 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:09:33,876.876 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:09:33,881.881 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:09:33,886.886 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:09:35,928.928 INFO    ] ================================================
[2026-08-31 00:09:35,943.943 INFO    ] Launching Daemon at Mon Aug 31 00:09:35 IST 2026
[2026-08-31 00:09:35,959.959 INFO    ] ================================================
[2026-08-31 00:09:36,604.604 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:09:36
[2026-08-31 00:09:37,268.268 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:09:37,565.565 INFO    ] Initializing speech engine...
[2026-08-31 00:09:37,574.574 INFO    ] 2026-08-31 00:09:37
[2026-08-31 00:09:37,843.843 INFO    ] 2026-08-31 00:09:37
[2026-08-31 00:09:37,898.898 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:09:38,147.147 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:09:38,153.153 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:09:38,404.404 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:09:38,411.411 INFO    ] time= 31/08/2026 00:09:38
[2026-08-31 00:09:38,427.427 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:09:38,436.436 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:09:38,565.565 INFO    ] No existing commands found in stream
[2026-08-31 00:09:43,585.585 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:09:43,589.589 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-08-31 00:09:47,395.395 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 00:09:47,398.398 INFO    ] Checking for system updates...
[2026-08-31 00:09:47,435.435 INFO    ] 200
[2026-08-31 00:09:47,437.437 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:09:47,496.496 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:09:47,499.499 INFO    ] No update needed
[2026-08-31 00:09:47,502.502 INFO    ] Checking for camera pi updates...
[2026-08-31 00:09:47,535.535 INFO    ] 200
[2026-08-31 00:09:47,537.537 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:09:47,582.582 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:09:47,760.760 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:09:47,762.762 INFO    ] No camera update needed
[2026-08-31 00:09:47,765.765 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:09:47,767.767 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:09:47,772.772 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:09:47,777.777 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:09:49,818.818 INFO    ] ================================================
[2026-08-31 00:09:49,833.833 INFO    ] Launching Daemon at Mon Aug 31 00:09:49 IST 2026
[2026-08-31 00:09:49,844.844 INFO    ] ================================================
[2026-08-31 00:09:50,422.422 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:09:50
[2026-08-31 00:09:51,023.023 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:09:51,302.302 INFO    ] Initializing speech engine...
[2026-08-31 00:09:51,312.312 INFO    ] 2026-08-31 00:09:51
[2026-08-31 00:09:51,570.570 INFO    ] 2026-08-31 00:09:51
[2026-08-31 00:09:51,624.624 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:09:51,871.871 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:09:51,878.878 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:09:52,110.110 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:09:52,117.117 INFO    ] time= 31/08/2026 00:09:52
[2026-08-31 00:09:52,135.135 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:09:52,147.147 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:09:52,290.290 INFO    ] No existing commands found in stream
[2026-08-31 00:09:57,320.320 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:09:57,323.323 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-08-31 00:09:59,008.008 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 00:09:59,011.011 INFO    ] Checking for system updates...
[2026-08-31 00:09:59,048.048 INFO    ] 200
[2026-08-31 00:09:59,050.050 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:09:59,108.108 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:09:59,111.111 INFO    ] No update needed
[2026-08-31 00:09:59,113.113 INFO    ] Checking for camera pi updates...
[2026-08-31 00:09:59,146.146 INFO    ] 200
[2026-08-31 00:09:59,149.149 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:09:59,194.194 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:09:59,274.274 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:09:59,276.276 INFO    ] No camera update needed
[2026-08-31 00:09:59,279.279 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:09:59,281.281 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:09:59,287.287 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:09:59,292.292 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:10:01,334.334 INFO    ] ================================================
[2026-08-31 00:10:01,349.349 INFO    ] Launching Daemon at Mon Aug 31 00:10:01 IST 2026
[2026-08-31 00:10:01,359.359 INFO    ] ================================================
[2026-08-31 00:10:02,023.023 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:10:02
[2026-08-31 00:10:03,026.026 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:10:03,451.451 INFO    ] Initializing speech engine...
[2026-08-31 00:10:03,454.454 INFO    ] 2026-08-31 00:10:03
[2026-08-31 00:10:03,825.825 INFO    ] 2026-08-31 00:10:03
[2026-08-31 00:10:03,893.893 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:10:04,116.116 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:10:04,178.178 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:10:04,354.354 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:10:04,381.381 INFO    ] time= 31/08/2026 00:10:04
[2026-08-31 00:10:04,390.390 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:10:04,400.400 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:10:04,555.555 INFO    ] No existing commands found in stream
[2026-08-31 00:10:09,586.586 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:10:09,589.589 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-08-31 00:10:11,317.317 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 00:10:11,320.320 INFO    ] Checking for system updates...
[2026-08-31 00:10:11,361.361 INFO    ] 200
[2026-08-31 00:10:11,364.364 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:10:11,422.422 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:10:11,424.424 INFO    ] No update needed
[2026-08-31 00:10:11,427.427 INFO    ] Checking for camera pi updates...
[2026-08-31 00:10:11,464.464 INFO    ] 200
[2026-08-31 00:10:11,467.467 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:10:11,512.512 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:10:11,596.596 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:10:11,599.599 INFO    ] No camera update needed
[2026-08-31 00:10:11,601.601 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:10:11,604.604 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:10:11,609.609 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:10:11,614.614 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:10:13,653.653 INFO    ] ================================================
[2026-08-31 00:10:13,668.668 INFO    ] Launching Daemon at Mon Aug 31 00:10:13 IST 2026
[2026-08-31 00:10:13,679.679 INFO    ] ================================================
[2026-08-31 00:10:14,246.246 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:10:14
[2026-08-31 00:10:14,830.830 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:10:15,079.079 INFO    ] Initializing speech engine...
[2026-08-31 00:10:15,084.084 INFO    ] 2026-08-31 00:10:15
[2026-08-31 00:10:15,357.357 INFO    ] 2026-08-31 00:10:15
[2026-08-31 00:10:15,394.394 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:10:15,656.656 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:10:15,663.663 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:10:15,907.907 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:10:15,927.927 INFO    ] time= 31/08/2026 00:10:15
[2026-08-31 00:10:15,942.942 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:10:15,951.951 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:10:16,072.072 INFO    ] No existing commands found in stream
[2026-08-31 00:10:21,091.091 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:10:21,094.094 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-08-31 00:10:21,632.632 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 00:10:21,635.635 INFO    ] Checking for system updates...
[2026-08-31 00:10:21,674.674 INFO    ] 200
[2026-08-31 00:10:21,677.677 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:10:21,730.730 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:10:21,732.732 INFO    ] No update needed
[2026-08-31 00:10:21,734.734 INFO    ] Checking for camera pi updates...
[2026-08-31 00:10:21,771.771 INFO    ] 200
[2026-08-31 00:10:21,773.773 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:10:21,818.818 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:10:21,901.901 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:10:21,903.903 INFO    ] No camera update needed
[2026-08-31 00:10:21,906.906 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:10:21,908.908 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:10:21,913.913 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:10:21,918.918 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:10:23,959.959 INFO    ] ================================================
[2026-08-31 00:10:23,974.974 INFO    ] Launching Daemon at Mon Aug 31 00:10:23 IST 2026
[2026-08-31 00:10:23,984.984 INFO    ] ================================================
[2026-08-31 00:10:24,554.554 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:10:24
[2026-08-31 00:10:25,149.149 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:10:25,423.423 INFO    ] Initializing speech engine...
[2026-08-31 00:10:25,430.430 INFO    ] 2026-08-31 00:10:25
[2026-08-31 00:10:25,690.690 INFO    ] 2026-08-31 00:10:25
[2026-08-31 00:10:25,742.742 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:10:25,969.969 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:10:25,974.974 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:10:26,226.226 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:10:26,233.233 INFO    ] time= 31/08/2026 00:10:26
[2026-08-31 00:10:26,251.251 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:10:26,268.268 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:10:26,400.400 INFO    ] No existing commands found in stream
[2026-08-31 00:10:31,425.425 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:10:31,428.428 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-08-31 00:10:33,435.435 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 00:10:33,438.438 INFO    ] Checking for system updates...
[2026-08-31 00:10:33,477.477 INFO    ] 200
[2026-08-31 00:10:33,480.480 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:10:33,532.532 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:10:33,534.534 INFO    ] No update needed
[2026-08-31 00:10:33,537.537 INFO    ] Checking for camera pi updates...
[2026-08-31 00:10:33,573.573 INFO    ] 200
[2026-08-31 00:10:33,576.576 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:10:33,620.620 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:10:33,701.701 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:10:33,704.704 INFO    ] No camera update needed
[2026-08-31 00:10:33,706.706 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:10:33,709.709 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:10:33,714.714 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:10:33,720.720 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:10:35,762.762 INFO    ] ================================================
[2026-08-31 00:10:35,777.777 INFO    ] Launching Daemon at Mon Aug 31 00:10:35 IST 2026
[2026-08-31 00:10:35,787.787 INFO    ] ================================================
[2026-08-31 00:10:36,361.361 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:10:36
[2026-08-31 00:10:36,944.944 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:10:37,189.189 INFO    ] Initializing speech engine...
[2026-08-31 00:10:37,198.198 INFO    ] 2026-08-31 00:10:37
[2026-08-31 00:10:37,471.471 INFO    ] 2026-08-31 00:10:37
[2026-08-31 00:10:37,504.504 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:10:37,769.769 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:10:37,775.775 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:10:37,992.992 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:10:38,039.039 INFO    ] time= 31/08/2026 00:10:37
[2026-08-31 00:10:38,045.045 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:10:38,063.063 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:10:38,191.191 INFO    ] No existing commands found in stream
[2026-08-31 00:10:43,209.209 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:10:43,212.212 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-08-31 00:10:44,947.947 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 00:10:44,950.950 INFO    ] Checking for system updates...
[2026-08-31 00:10:44,987.987 INFO    ] 200
[2026-08-31 00:10:44,989.989 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:10:45,049.049 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:10:45,051.051 INFO    ] No update needed
[2026-08-31 00:10:45,054.054 INFO    ] Checking for camera pi updates...
[2026-08-31 00:10:45,087.087 INFO    ] 200
[2026-08-31 00:10:45,090.090 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:10:45,135.135 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:10:45,217.217 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:10:45,219.219 INFO    ] No camera update needed
[2026-08-31 00:10:45,222.222 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:10:45,224.224 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:10:45,230.230 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:10:45,235.235 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:10:47,274.274 INFO    ] ================================================
[2026-08-31 00:10:47,290.290 INFO    ] Launching Daemon at Mon Aug 31 00:10:47 IST 2026
[2026-08-31 00:10:47,301.301 INFO    ] ================================================
[2026-08-31 00:10:47,878.878 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:10:47
[2026-08-31 00:10:48,459.459 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:10:48,713.713 INFO    ] Initializing speech engine...
[2026-08-31 00:10:48,726.726 INFO    ] 2026-08-31 00:10:48
[2026-08-31 00:10:48,992.992 INFO    ] 2026-08-31 00:10:48
[2026-08-31 00:10:49,027.027 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:10:49,228.228 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:10:49,286.286 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:10:49,430.430 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:10:49,495.495 INFO    ] time= 31/08/2026 00:10:49
[2026-08-31 00:10:49,554.554 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:10:49,566.566 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:10:49,713.713 INFO    ] No existing commands found in stream
[2026-08-31 00:10:54,726.726 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:10:54,729.729 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-08-31 00:10:57,061.061 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 00:10:57,063.063 INFO    ] Checking for system updates...
[2026-08-31 00:10:57,099.099 INFO    ] 200
[2026-08-31 00:10:57,101.101 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:10:57,160.160 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:10:57,162.162 INFO    ] No update needed
[2026-08-31 00:10:57,165.165 INFO    ] Checking for camera pi updates...
[2026-08-31 00:10:57,198.198 INFO    ] 200
[2026-08-31 00:10:57,201.201 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:10:57,246.246 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:10:57,326.326 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:10:57,329.329 INFO    ] No camera update needed
[2026-08-31 00:10:57,331.331 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:10:57,333.333 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:10:57,338.338 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:10:57,344.344 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:10:59,382.382 INFO    ] ================================================
[2026-08-31 00:10:59,398.398 INFO    ] Launching Daemon at Mon Aug 31 00:10:59 IST 2026
[2026-08-31 00:10:59,409.409 INFO    ] ================================================
[2026-08-31 00:11:00,034.034 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:11:00
[2026-08-31 00:11:00,712.712 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:11:01,029.029 INFO    ] Initializing speech engine...
[2026-08-31 00:11:01,035.035 INFO    ] 2026-08-31 00:11:01
[2026-08-31 00:11:01,284.284 INFO    ] 2026-08-31 00:11:01
[2026-08-31 00:11:01,337.337 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:11:01,617.617 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:11:01,621.621 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:11:01,784.784 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:11:01,788.788 INFO    ] time= 31/08/2026 00:11:01
[2026-08-31 00:11:01,791.791 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:11:01,794.794 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:11:01,869.869 INFO    ] No existing commands found in stream
[2026-08-31 00:11:06,879.879 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:11:06,882.882 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-08-31 00:11:08,607.607 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 00:11:08,610.610 INFO    ] Checking for system updates...
[2026-08-31 00:11:08,645.645 INFO    ] 200
[2026-08-31 00:11:08,648.648 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:11:08,706.706 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:11:08,708.708 INFO    ] No update needed
[2026-08-31 00:11:08,711.711 INFO    ] Checking for camera pi updates...
[2026-08-31 00:11:08,748.748 INFO    ] 200
[2026-08-31 00:11:08,750.750 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:11:08,794.794 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:11:08,878.878 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:11:08,881.881 INFO    ] No camera update needed
[2026-08-31 00:11:08,883.883 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:11:08,885.885 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:11:08,891.891 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:11:08,895.895 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:11:10,936.936 INFO    ] ================================================
[2026-08-31 00:11:10,952.952 INFO    ] Launching Daemon at Mon Aug 31 00:11:10 IST 2026
[2026-08-31 00:11:10,963.963 INFO    ] ================================================
[2026-08-31 00:11:11,529.529 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:11:11
[2026-08-31 00:11:12,111.111 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:11:12,381.381 INFO    ] Initializing speech engine...
[2026-08-31 00:11:12,390.390 INFO    ] 2026-08-31 00:11:12
[2026-08-31 00:11:12,639.639 INFO    ] 2026-08-31 00:11:12
[2026-08-31 00:11:12,672.672 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:11:12,931.931 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:11:12,941.941 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:11:13,185.185 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:11:13,203.203 INFO    ] time= 31/08/2026 00:11:13
[2026-08-31 00:11:13,209.209 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:11:13,225.225 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:11:13,357.357 INFO    ] No existing commands found in stream
[2026-08-31 00:11:18,372.372 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:11:18,375.375 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-08-31 00:11:20,175.175 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 00:11:20,177.177 INFO    ] Checking for system updates...
[2026-08-31 00:11:20,216.216 INFO    ] 200
[2026-08-31 00:11:20,219.219 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:11:20,271.271 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:11:20,274.274 INFO    ] No update needed
[2026-08-31 00:11:20,276.276 INFO    ] Checking for camera pi updates...
[2026-08-31 00:11:20,313.313 INFO    ] 200
[2026-08-31 00:11:20,315.315 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:11:20,359.359 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:11:20,444.444 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:11:20,446.446 INFO    ] No camera update needed
[2026-08-31 00:11:20,449.449 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:11:20,451.451 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:11:20,456.456 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:11:20,461.461 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:11:22,505.505 INFO    ] ================================================
[2026-08-31 00:11:22,521.521 INFO    ] Launching Daemon at Mon Aug 31 00:11:22 IST 2026
[2026-08-31 00:11:22,533.533 INFO    ] ================================================
[2026-08-31 00:11:23,105.105 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:11:23
[2026-08-31 00:11:23,687.687 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:11:23,956.956 INFO    ] Initializing speech engine...
[2026-08-31 00:11:23,965.965 INFO    ] 2026-08-31 00:11:23
[2026-08-31 00:11:24,218.218 INFO    ] 2026-08-31 00:11:24
[2026-08-31 00:11:24,278.278 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:11:24,506.506 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:11:24,512.512 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:11:24,757.757 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:11:24,774.774 INFO    ] time= 31/08/2026 00:11:24
[2026-08-31 00:11:24,780.780 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:11:24,797.797 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:11:24,918.918 INFO    ] No existing commands found in stream
[2026-08-31 00:11:29,936.936 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:11:29,940.940 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-08-31 00:11:33,674.674 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 00:11:33,677.677 INFO    ] Checking for system updates...
[2026-08-31 00:11:33,717.717 INFO    ] 200
[2026-08-31 00:11:33,720.720 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:11:33,779.779 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:11:33,782.782 INFO    ] No update needed
[2026-08-31 00:11:33,785.785 INFO    ] Checking for camera pi updates...
[2026-08-31 00:11:33,819.819 INFO    ] 200
[2026-08-31 00:11:33,822.822 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:11:33,863.863 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:11:33,964.964 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:11:33,966.966 INFO    ] No camera update needed
[2026-08-31 00:11:33,969.969 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:11:33,972.972 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:11:33,978.978 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:11:33,984.984 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:11:36,025.025 INFO    ] ================================================
[2026-08-31 00:11:36,041.041 INFO    ] Launching Daemon at Mon Aug 31 00:11:36 IST 2026
[2026-08-31 00:11:36,052.052 INFO    ] ================================================
[2026-08-31 00:11:36,618.618 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:11:36
[2026-08-31 00:11:37,199.199 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:11:37,470.470 INFO    ] Initializing speech engine...
[2026-08-31 00:11:37,478.478 INFO    ] 2026-08-31 00:11:37
[2026-08-31 00:11:37,746.746 INFO    ] 2026-08-31 00:11:37
[2026-08-31 00:11:37,789.789 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:11:38,013.013 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:11:38,018.018 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:11:38,227.227 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:11:38,272.272 INFO    ] time= 31/08/2026 00:11:38
[2026-08-31 00:11:38,278.278 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:11:38,296.296 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:11:38,428.428 INFO    ] No existing commands found in stream
[2026-08-31 00:11:43,450.450 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:11:43,453.453 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-08-31 00:11:46,353.353 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 00:11:46,355.355 INFO    ] Checking for system updates...
[2026-08-31 00:11:46,396.396 INFO    ] 200
[2026-08-31 00:11:46,400.400 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:11:46,461.461 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:11:46,464.464 INFO    ] No update needed
[2026-08-31 00:11:46,466.466 INFO    ] Checking for camera pi updates...
[2026-08-31 00:11:46,505.505 INFO    ] 200
[2026-08-31 00:11:46,508.508 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:11:46,565.565 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:11:46,670.670 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:11:46,673.673 INFO    ] No camera update needed
[2026-08-31 00:11:46,676.676 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:11:46,678.678 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:11:46,685.685 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:11:46,691.691 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:11:48,732.732 INFO    ] ================================================
[2026-08-31 00:11:48,747.747 INFO    ] Launching Daemon at Mon Aug 31 00:11:48 IST 2026
[2026-08-31 00:11:48,759.759 INFO    ] ================================================
[2026-08-31 00:11:49,421.421 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:11:49
[2026-08-31 00:11:50,103.103 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:11:50,416.416 INFO    ] Initializing speech engine...
[2026-08-31 00:11:50,428.428 INFO    ] 2026-08-31 00:11:50
[2026-08-31 00:11:50,714.714 INFO    ] 2026-08-31 00:11:50
[2026-08-31 00:11:50,824.824 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:11:51,100.100 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:11:51,158.158 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:11:51,440.440 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:11:51,483.483 INFO    ] time= 31/08/2026 00:11:51
[2026-08-31 00:11:51,533.533 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:11:51,578.578 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:11:51,654.654 INFO    ] No existing commands found in stream
[2026-08-31 00:11:56,665.665 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:11:56,668.668 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-08-31 00:11:58,214.214 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 00:11:58,217.217 INFO    ] Checking for system updates...
[2026-08-31 00:11:58,257.257 INFO    ] 200
[2026-08-31 00:11:58,259.259 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:11:58,318.318 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:11:58,321.321 INFO    ] No update needed
[2026-08-31 00:11:58,323.323 INFO    ] Checking for camera pi updates...
[2026-08-31 00:11:58,360.360 INFO    ] 200
[2026-08-31 00:11:58,363.363 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:11:58,405.405 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:11:58,585.585 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:11:58,588.588 INFO    ] No camera update needed
[2026-08-31 00:11:58,591.591 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:11:58,594.594 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:11:58,600.600 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:11:58,606.606 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:12:00,650.650 INFO    ] ================================================
[2026-08-31 00:12:00,666.666 INFO    ] Launching Daemon at Mon Aug 31 00:12:00 IST 2026
[2026-08-31 00:12:00,678.678 INFO    ] ================================================
[2026-08-31 00:12:01,249.249 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:12:01
[2026-08-31 00:12:02,055.055 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:12:02,436.436 INFO    ] Initializing speech engine...
[2026-08-31 00:12:02,449.449 INFO    ] 2026-08-31 00:12:02
[2026-08-31 00:12:02,787.787 INFO    ] 2026-08-31 00:12:02
[2026-08-31 00:12:02,875.875 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:12:03,136.136 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:12:03,145.145 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:12:03,346.346 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:12:03,357.357 INFO    ] time= 31/08/2026 00:12:03
[2026-08-31 00:12:03,364.364 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:12:03,381.381 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:12:03,515.515 INFO    ] No existing commands found in stream
[2026-08-31 00:12:08,530.530 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:12:08,533.533 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-08-31 00:12:11,047.047 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 00:12:11,050.050 INFO    ] Checking for system updates...
[2026-08-31 00:12:11,085.085 INFO    ] 200
[2026-08-31 00:12:11,088.088 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:12:11,140.140 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:12:11,142.142 INFO    ] No update needed
[2026-08-31 00:12:11,145.145 INFO    ] Checking for camera pi updates...
[2026-08-31 00:12:11,179.179 INFO    ] 200
[2026-08-31 00:12:11,182.182 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:12:11,229.229 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:12:11,311.311 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:12:11,313.313 INFO    ] No camera update needed
[2026-08-31 00:12:11,315.315 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:12:11,318.318 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:12:11,323.323 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:12:11,328.328 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:12:13,369.369 INFO    ] ================================================
[2026-08-31 00:12:13,385.385 INFO    ] Launching Daemon at Mon Aug 31 00:12:13 IST 2026
[2026-08-31 00:12:13,396.396 INFO    ] ================================================
[2026-08-31 00:12:14,047.047 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:12:14
[2026-08-31 00:12:14,679.679 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:12:14,944.944 INFO    ] Initializing speech engine...
[2026-08-31 00:12:14,956.956 INFO    ] 2026-08-31 00:12:14
[2026-08-31 00:12:15,206.206 INFO    ] 2026-08-31 00:12:15
[2026-08-31 00:12:15,242.242 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:12:15,498.498 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:12:15,507.507 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:12:15,706.706 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:12:15,756.756 INFO    ] time= 31/08/2026 00:12:15
[2026-08-31 00:12:15,776.776 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:12:15,791.791 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:12:15,924.924 INFO    ] No existing commands found in stream
[2026-08-31 00:12:20,938.938 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:12:20,941.941 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-08-31 00:12:22,849.849 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 00:12:22,852.852 INFO    ] Checking for system updates...
[2026-08-31 00:12:22,888.888 INFO    ] 200
[2026-08-31 00:12:22,891.891 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:12:22,944.944 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:12:22,947.947 INFO    ] No update needed
[2026-08-31 00:12:22,950.950 INFO    ] Checking for camera pi updates...
[2026-08-31 00:12:22,984.984 INFO    ] 200
[2026-08-31 00:12:22,987.987 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:12:23,033.033 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:12:23,110.110 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:12:23,112.112 INFO    ] No camera update needed
[2026-08-31 00:12:23,115.115 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:12:23,117.117 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:12:23,122.122 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:12:23,127.127 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:12:25,168.168 INFO    ] ================================================
[2026-08-31 00:12:25,183.183 INFO    ] Launching Daemon at Mon Aug 31 00:12:25 IST 2026
[2026-08-31 00:12:25,194.194 INFO    ] ================================================
[2026-08-31 00:12:25,763.763 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:12:25
[2026-08-31 00:12:26,347.347 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:12:26,620.620 INFO    ] Initializing speech engine...
[2026-08-31 00:12:26,629.629 INFO    ] 2026-08-31 00:12:26
[2026-08-31 00:12:26,893.893 INFO    ] 2026-08-31 00:12:26
[2026-08-31 00:12:26,949.949 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:12:27,194.194 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:12:27,201.201 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:12:27,425.425 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:12:27,440.440 INFO    ] time= 31/08/2026 00:12:27
[2026-08-31 00:12:27,457.457 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:12:27,470.470 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:12:27,603.603 INFO    ] No existing commands found in stream
[2026-08-31 00:12:32,633.633 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:12:32,636.636 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-08-31 00:12:35,975.975 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 00:12:35,978.978 INFO    ] Checking for system updates...
[2026-08-31 00:12:36,017.017 INFO    ] 200
[2026-08-31 00:12:36,020.020 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:12:36,078.078 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:12:36,081.081 INFO    ] No update needed
[2026-08-31 00:12:36,083.083 INFO    ] Checking for camera pi updates...
[2026-08-31 00:12:36,121.121 INFO    ] 200
[2026-08-31 00:12:36,123.123 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:12:36,168.168 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:12:36,258.258 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:12:36,261.261 INFO    ] No camera update needed
[2026-08-31 00:12:36,263.263 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:12:36,265.265 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:12:36,271.271 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:12:36,276.276 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:12:38,318.318 INFO    ] ================================================
[2026-08-31 00:12:38,333.333 INFO    ] Launching Daemon at Mon Aug 31 00:12:38 IST 2026
[2026-08-31 00:12:38,344.344 INFO    ] ================================================
[2026-08-31 00:12:39,005.005 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:12:39
[2026-08-31 00:12:39,688.688 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:12:39,994.994 INFO    ] Initializing speech engine...
[2026-08-31 00:12:40,009.009 INFO    ] 2026-08-31 00:12:39
[2026-08-31 00:12:40,323.323 INFO    ] 2026-08-31 00:12:40
[2026-08-31 00:12:40,405.405 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:12:40,620.620 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:12:40,629.629 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:12:40,822.822 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:12:40,840.840 INFO    ] time= 31/08/2026 00:12:40
[2026-08-31 00:12:40,870.870 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:12:40,881.881 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:12:41,025.025 INFO    ] No existing commands found in stream
[2026-08-31 00:12:46,057.057 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:12:46,060.060 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-08-31 00:12:48,629.629 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 00:12:48,632.632 INFO    ] Checking for system updates...
[2026-08-31 00:12:48,670.670 INFO    ] 200
[2026-08-31 00:12:48,673.673 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:12:48,725.725 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:12:48,728.728 INFO    ] No update needed
[2026-08-31 00:12:48,731.731 INFO    ] Checking for camera pi updates...
[2026-08-31 00:12:48,766.766 INFO    ] 200
[2026-08-31 00:12:48,769.769 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:12:48,817.817 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:12:48,899.899 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:12:48,902.902 INFO    ] No camera update needed
[2026-08-31 00:12:48,904.904 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:12:48,906.906 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:12:48,912.912 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:12:48,917.917 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:12:50,958.958 INFO    ] ================================================
[2026-08-31 00:12:50,974.974 INFO    ] Launching Daemon at Mon Aug 31 00:12:50 IST 2026
[2026-08-31 00:12:50,984.984 INFO    ] ================================================
[2026-08-31 00:12:51,555.555 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:12:51
[2026-08-31 00:12:52,194.194 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:12:52,506.506 INFO    ] Initializing speech engine...
[2026-08-31 00:12:52,513.513 INFO    ] 2026-08-31 00:12:52
[2026-08-31 00:12:52,794.794 INFO    ] 2026-08-31 00:12:52
[2026-08-31 00:12:52,849.849 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:12:53,135.135 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:12:53,141.141 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:12:53,335.335 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:12:53,342.342 INFO    ] time= 31/08/2026 00:12:53
[2026-08-31 00:12:53,363.363 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:12:53,390.390 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:12:53,527.527 INFO    ] No existing commands found in stream
[2026-08-31 00:12:58,553.553 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:12:58,556.556 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-08-31 00:12:59,394.394 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 00:12:59,397.397 INFO    ] Checking for system updates...
[2026-08-31 00:12:59,433.433 INFO    ] 200
[2026-08-31 00:12:59,435.435 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:12:59,487.487 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:12:59,489.489 INFO    ] No update needed
[2026-08-31 00:12:59,492.492 INFO    ] Checking for camera pi updates...
[2026-08-31 00:12:59,525.525 INFO    ] 200
[2026-08-31 00:12:59,528.528 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:12:59,568.568 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:12:59,670.670 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:12:59,672.672 INFO    ] No camera update needed
[2026-08-31 00:12:59,675.675 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:12:59,677.677 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:12:59,682.682 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:12:59,687.687 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:13:01,741.741 INFO    ] ================================================
[2026-08-31 00:13:01,781.781 INFO    ] Launching Daemon at Mon Aug 31 00:13:01 IST 2026
[2026-08-31 00:13:01,808.808 INFO    ] ================================================
[2026-08-31 00:13:02,499.499 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:13:02
[2026-08-31 00:13:03,155.155 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:13:03,441.441 INFO    ] Initializing speech engine...
[2026-08-31 00:13:03,464.464 INFO    ] 2026-08-31 00:13:03
[2026-08-31 00:13:03,719.719 INFO    ] 2026-08-31 00:13:03
[2026-08-31 00:13:03,756.756 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:13:03,955.955 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:13:03,971.971 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:13:04,141.141 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:13:04,147.147 INFO    ] time= 31/08/2026 00:13:04
[2026-08-31 00:13:04,153.153 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:13:04,215.215 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:13:04,349.349 INFO    ] No existing commands found in stream
[2026-08-31 00:13:09,378.378 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:13:09,381.381 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-08-31 00:13:10,767.767 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 00:13:10,770.770 INFO    ] Checking for system updates...
[2026-08-31 00:13:10,806.806 INFO    ] 200
[2026-08-31 00:13:10,808.808 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:13:10,860.860 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:13:10,862.862 INFO    ] No update needed
[2026-08-31 00:13:10,865.865 INFO    ] Checking for camera pi updates...
[2026-08-31 00:13:10,902.902 INFO    ] 200
[2026-08-31 00:13:10,905.905 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:13:10,945.945 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:13:11,026.026 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:13:11,029.029 INFO    ] No camera update needed
[2026-08-31 00:13:11,031.031 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:13:11,033.033 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:13:11,038.038 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:13:11,043.043 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:13:13,087.087 INFO    ] ================================================
[2026-08-31 00:13:13,106.106 INFO    ] Launching Daemon at Mon Aug 31 00:13:13 IST 2026
[2026-08-31 00:13:13,119.119 INFO    ] ================================================
[2026-08-31 00:13:13,713.713 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:13:13
[2026-08-31 00:13:14,335.335 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:13:14,615.615 INFO    ] Initializing speech engine...
[2026-08-31 00:13:14,625.625 INFO    ] 2026-08-31 00:13:14
[2026-08-31 00:13:14,907.907 INFO    ] 2026-08-31 00:13:14
[2026-08-31 00:13:14,943.943 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:13:15,201.201 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:13:15,210.210 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:13:15,433.433 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:13:15,479.479 INFO    ] time= 31/08/2026 00:13:15
[2026-08-31 00:13:15,485.485 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:13:15,502.502 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:13:15,621.621 INFO    ] No existing commands found in stream
[2026-08-31 00:13:20,646.646 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:13:20,649.649 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-08-31 00:13:24,150.150 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 00:13:24,152.152 INFO    ] Checking for system updates...
[2026-08-31 00:13:24,194.194 INFO    ] 200
[2026-08-31 00:13:24,196.196 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:13:24,257.257 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:13:24,259.259 INFO    ] No update needed
[2026-08-31 00:13:24,262.262 INFO    ] Checking for camera pi updates...
[2026-08-31 00:13:24,299.299 INFO    ] 200
[2026-08-31 00:13:24,301.301 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:13:24,346.346 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:13:24,426.426 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:13:24,429.429 INFO    ] No camera update needed
[2026-08-31 00:13:24,431.431 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:13:24,433.433 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:13:24,439.439 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:13:24,444.444 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:13:26,485.485 INFO    ] ================================================
[2026-08-31 00:13:26,500.500 INFO    ] Launching Daemon at Mon Aug 31 00:13:26 IST 2026
[2026-08-31 00:13:26,510.510 INFO    ] ================================================
[2026-08-31 00:13:27,166.166 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:13:27
[2026-08-31 00:13:27,841.841 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:13:28,148.148 INFO    ] Initializing speech engine...
[2026-08-31 00:13:28,160.160 INFO    ] 2026-08-31 00:13:28
[2026-08-31 00:13:28,469.469 INFO    ] 2026-08-31 00:13:28
[2026-08-31 00:13:28,555.555 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:13:28,765.765 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:13:28,773.773 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:13:28,971.971 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:13:28,988.988 INFO    ] time= 31/08/2026 00:13:28
[2026-08-31 00:13:29,014.014 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:13:29,028.028 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:13:29,137.137 INFO    ] No existing commands found in stream
[2026-08-31 00:13:34,167.167 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:13:34,170.170 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-08-31 00:13:38,156.156 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 00:13:38,159.159 INFO    ] Checking for system updates...
[2026-08-31 00:13:38,199.199 INFO    ] 200
[2026-08-31 00:13:38,201.201 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:13:38,261.261 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:13:38,263.263 INFO    ] No update needed
[2026-08-31 00:13:38,265.265 INFO    ] Checking for camera pi updates...
[2026-08-31 00:13:38,302.302 INFO    ] 200
[2026-08-31 00:13:38,304.304 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:13:38,344.344 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:13:38,427.427 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:13:38,430.430 INFO    ] No camera update needed
[2026-08-31 00:13:38,432.432 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:13:38,434.434 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:13:38,440.440 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:13:38,444.444 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:13:40,484.484 INFO    ] ================================================
[2026-08-31 00:13:40,499.499 INFO    ] Launching Daemon at Mon Aug 31 00:13:40 IST 2026
[2026-08-31 00:13:40,509.509 INFO    ] ================================================
[2026-08-31 00:13:41,073.073 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:13:41
[2026-08-31 00:13:41,653.653 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:13:41,920.920 INFO    ] Initializing speech engine...
[2026-08-31 00:13:41,931.931 INFO    ] 2026-08-31 00:13:41
[2026-08-31 00:13:42,173.173 INFO    ] 2026-08-31 00:13:42
[2026-08-31 00:13:42,208.208 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:13:42,463.463 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:13:42,469.469 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:13:42,709.709 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:13:42,723.723 INFO    ] time= 31/08/2026 00:13:42
[2026-08-31 00:13:42,729.729 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:13:42,747.747 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:13:42,877.877 INFO    ] No existing commands found in stream
[2026-08-31 00:13:47,889.889 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:13:47,892.892 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-08-31 00:13:51,794.794 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 00:13:51,797.797 INFO    ] Checking for system updates...
[2026-08-31 00:13:51,833.833 INFO    ] 200
[2026-08-31 00:13:51,835.835 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:13:51,891.891 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:13:51,894.894 INFO    ] No update needed
[2026-08-31 00:13:51,897.897 INFO    ] Checking for camera pi updates...
[2026-08-31 00:13:51,931.931 INFO    ] 200
[2026-08-31 00:13:51,934.934 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:13:51,980.980 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:13:52,063.063 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:13:52,065.065 INFO    ] No camera update needed
[2026-08-31 00:13:52,068.068 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:13:52,070.070 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:13:52,075.075 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:13:52,080.080 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:13:54,122.122 INFO    ] ================================================
[2026-08-31 00:13:54,137.137 INFO    ] Launching Daemon at Mon Aug 31 00:13:54 IST 2026
[2026-08-31 00:13:54,147.147 INFO    ] ================================================
[2026-08-31 00:13:54,733.733 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:13:54
[2026-08-31 00:13:55,318.318 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:13:55,571.571 INFO    ] Initializing speech engine...
[2026-08-31 00:13:55,594.594 INFO    ] 2026-08-31 00:13:55
[2026-08-31 00:13:55,850.850 INFO    ] 2026-08-31 00:13:55
[2026-08-31 00:13:55,884.884 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:13:56,146.146 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:13:56,152.152 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:13:56,393.393 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:13:56,414.414 INFO    ] time= 31/08/2026 00:13:56
[2026-08-31 00:13:56,420.420 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:13:56,442.442 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:13:56,573.573 INFO    ] No existing commands found in stream
[2026-08-31 00:14:01,594.594 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:14:01,598.598 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-08-31 00:14:02,489.489 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 00:14:02,493.493 INFO    ] Checking for system updates...
[2026-08-31 00:14:02,544.544 INFO    ] 200
[2026-08-31 00:14:02,547.547 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:14:02,620.620 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:14:02,624.624 INFO    ] No update needed
[2026-08-31 00:14:02,627.627 INFO    ] Checking for camera pi updates...
[2026-08-31 00:14:02,677.677 INFO    ] 200
[2026-08-31 00:14:02,680.680 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:14:02,743.743 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:14:02,813.813 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:14:02,816.816 INFO    ] No camera update needed
[2026-08-31 00:14:02,820.820 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:14:02,823.823 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:14:02,831.831 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:14:02,838.838 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:14:04,881.881 INFO    ] ================================================
[2026-08-31 00:14:04,896.896 INFO    ] Launching Daemon at Mon Aug 31 00:14:04 IST 2026
[2026-08-31 00:14:04,908.908 INFO    ] ================================================
[2026-08-31 00:14:05,473.473 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:14:05
[2026-08-31 00:14:06,057.057 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:14:06,314.314 INFO    ] Initializing speech engine...
[2026-08-31 00:14:06,333.333 INFO    ] 2026-08-31 00:14:06
[2026-08-31 00:14:06,605.605 INFO    ] 2026-08-31 00:14:06
[2026-08-31 00:14:06,640.640 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:14:06,897.897 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:14:06,905.905 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:14:07,112.112 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:14:07,167.167 INFO    ] time= 31/08/2026 00:14:07
[2026-08-31 00:14:07,178.178 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:14:07,196.196 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:14:07,332.332 INFO    ] No existing commands found in stream
[2026-08-31 00:14:12,346.346 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:14:12,349.349 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-08-31 00:14:15,313.313 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 00:14:15,316.316 INFO    ] Checking for system updates...
[2026-08-31 00:14:15,357.357 INFO    ] 200
[2026-08-31 00:14:15,361.361 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:14:15,422.422 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:14:15,424.424 INFO    ] No update needed
[2026-08-31 00:14:15,427.427 INFO    ] Checking for camera pi updates...
[2026-08-31 00:14:15,466.466 INFO    ] 200
[2026-08-31 00:14:15,469.469 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:14:15,514.514 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:14:15,600.600 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:14:15,603.603 INFO    ] No camera update needed
[2026-08-31 00:14:15,606.606 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:14:15,609.609 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:14:15,615.615 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:14:15,621.621 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:14:17,664.664 INFO    ] ================================================
[2026-08-31 00:14:17,680.680 INFO    ] Launching Daemon at Mon Aug 31 00:14:17 IST 2026
[2026-08-31 00:14:17,691.691 INFO    ] ================================================
[2026-08-31 00:14:18,277.277 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:14:18
[2026-08-31 00:14:18,874.874 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:14:19,151.151 INFO    ] Initializing speech engine...
[2026-08-31 00:14:19,156.156 INFO    ] 2026-08-31 00:14:19
[2026-08-31 00:14:19,417.417 INFO    ] 2026-08-31 00:14:19
[2026-08-31 00:14:19,473.473 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:14:19,758.758 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:14:19,767.767 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:14:19,992.992 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:14:19,999.999 INFO    ] time= 31/08/2026 00:14:19
[2026-08-31 00:14:20,016.016 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:14:20,023.023 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:14:20,150.150 INFO    ] No existing commands found in stream
[2026-08-31 00:14:25,183.183 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:14:25,186.186 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-08-31 00:14:28,008.008 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 00:14:28,010.010 INFO    ] Checking for system updates...
[2026-08-31 00:14:28,046.046 INFO    ] 200
[2026-08-31 00:14:28,048.048 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:14:28,102.102 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:14:28,105.105 INFO    ] No update needed
[2026-08-31 00:14:28,107.107 INFO    ] Checking for camera pi updates...
[2026-08-31 00:14:28,145.145 INFO    ] 200
[2026-08-31 00:14:28,148.148 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:14:28,188.188 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:14:28,288.288 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:14:28,291.291 INFO    ] No camera update needed
[2026-08-31 00:14:28,293.293 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:14:28,296.296 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:14:28,302.302 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:14:28,307.307 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:14:30,351.351 INFO    ] ================================================
[2026-08-31 00:14:30,367.367 INFO    ] Launching Daemon at Mon Aug 31 00:14:30 IST 2026
[2026-08-31 00:14:30,377.377 INFO    ] ================================================
[2026-08-31 00:14:31,031.031 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:14:31
[2026-08-31 00:14:31,722.722 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:14:32,060.060 INFO    ] Initializing speech engine...
[2026-08-31 00:14:32,074.074 INFO    ] 2026-08-31 00:14:32
[2026-08-31 00:14:32,365.365 INFO    ] 2026-08-31 00:14:32
[2026-08-31 00:14:32,427.427 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:14:32,725.725 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:14:32,735.735 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:14:32,944.944 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:14:32,952.952 INFO    ] time= 31/08/2026 00:14:32
[2026-08-31 00:14:32,961.961 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:14:32,985.985 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:14:33,064.064 INFO    ] No existing commands found in stream
[2026-08-31 00:14:38,074.074 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:14:38,076.076 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-08-31 00:14:41,274.274 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 00:14:41,276.276 INFO    ] Checking for system updates...
[2026-08-31 00:14:41,312.312 INFO    ] 200
[2026-08-31 00:14:41,314.314 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:14:41,373.373 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:14:41,376.376 INFO    ] No update needed
[2026-08-31 00:14:41,378.378 INFO    ] Checking for camera pi updates...
[2026-08-31 00:14:41,412.412 INFO    ] 200
[2026-08-31 00:14:41,414.414 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:14:41,459.459 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:14:41,545.545 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:14:41,547.547 INFO    ] No camera update needed
[2026-08-31 00:14:41,550.550 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:14:41,552.552 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:14:41,557.557 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:14:41,562.562 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:14:43,601.601 INFO    ] ================================================
[2026-08-31 00:14:43,617.617 INFO    ] Launching Daemon at Mon Aug 31 00:14:43 IST 2026
[2026-08-31 00:14:43,629.629 INFO    ] ================================================
[2026-08-31 00:14:44,284.284 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:14:44
[2026-08-31 00:14:44,935.935 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:14:45,202.202 INFO    ] Initializing speech engine...
[2026-08-31 00:14:45,211.211 INFO    ] 2026-08-31 00:14:45
[2026-08-31 00:14:45,462.462 INFO    ] 2026-08-31 00:14:45
[2026-08-31 00:14:45,497.497 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:14:45,758.758 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:14:45,762.762 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:14:45,999.999 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:14:46,025.025 INFO    ] time= 31/08/2026 00:14:46
[2026-08-31 00:14:46,031.031 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:14:46,052.052 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:14:46,212.212 INFO    ] No existing commands found in stream
[2026-08-31 00:14:51,242.242 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:14:51,245.245 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-08-31 00:14:55,474.474 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 00:14:55,476.476 INFO    ] Checking for system updates...
[2026-08-31 00:14:55,512.512 INFO    ] 200
[2026-08-31 00:14:55,515.515 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:14:55,566.566 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:14:55,569.569 INFO    ] No update needed
[2026-08-31 00:14:55,572.572 INFO    ] Checking for camera pi updates...
[2026-08-31 00:14:55,605.605 INFO    ] 200
[2026-08-31 00:14:55,608.608 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:14:55,651.651 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:14:55,731.731 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:14:55,733.733 INFO    ] No camera update needed
[2026-08-31 00:14:55,736.736 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:14:55,738.738 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:14:55,743.743 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:14:55,748.748 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:14:57,789.789 INFO    ] ================================================
[2026-08-31 00:14:57,804.804 INFO    ] Launching Daemon at Mon Aug 31 00:14:57 IST 2026
[2026-08-31 00:14:57,816.816 INFO    ] ================================================
[2026-08-31 00:14:58,401.401 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:14:58
[2026-08-31 00:14:59,003.003 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:14:59,276.276 INFO    ] Initializing speech engine...
[2026-08-31 00:14:59,286.286 INFO    ] 2026-08-31 00:14:59
[2026-08-31 00:14:59,534.534 INFO    ] 2026-08-31 00:14:59
[2026-08-31 00:14:59,600.600 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:14:59,880.880 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:14:59,888.888 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:15:00,084.084 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:15:00,090.090 INFO    ] time= 31/08/2026 00:15:00
[2026-08-31 00:15:00,108.108 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:15:00,135.135 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:15:00,247.247 INFO    ] No existing commands found in stream
[2026-08-31 00:15:05,272.272 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:15:05,275.275 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-08-31 00:15:09,433.433 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 00:15:09,436.436 INFO    ] Checking for system updates...
[2026-08-31 00:15:09,471.471 INFO    ] 200
[2026-08-31 00:15:09,474.474 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:15:09,533.533 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:15:09,536.536 INFO    ] No update needed
[2026-08-31 00:15:09,538.538 INFO    ] Checking for camera pi updates...
[2026-08-31 00:15:09,572.572 INFO    ] 200
[2026-08-31 00:15:09,574.574 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:15:09,619.619 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:15:09,699.699 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:15:09,702.702 INFO    ] No camera update needed
[2026-08-31 00:15:09,704.704 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:15:09,707.707 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:15:09,712.712 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:15:09,717.717 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:15:11,759.759 INFO    ] ================================================
[2026-08-31 00:15:11,774.774 INFO    ] Launching Daemon at Mon Aug 31 00:15:11 IST 2026
[2026-08-31 00:15:11,786.786 INFO    ] ================================================
[2026-08-31 00:15:12,371.371 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:15:12
[2026-08-31 00:15:13,009.009 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:15:13,305.305 INFO    ] Initializing speech engine...
[2026-08-31 00:15:13,312.312 INFO    ] 2026-08-31 00:15:13
[2026-08-31 00:15:13,557.557 INFO    ] 2026-08-31 00:15:13
[2026-08-31 00:15:13,592.592 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:15:13,851.851 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:15:13,857.857 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:15:14,078.078 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:15:14,116.116 INFO    ] time= 31/08/2026 00:15:14
[2026-08-31 00:15:14,122.122 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:15:14,140.140 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:15:14,270.270 INFO    ] No existing commands found in stream
[2026-08-31 00:15:19,284.284 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:15:19,286.286 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-08-31 00:15:20,047.047 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 00:15:20,050.050 INFO    ] Checking for system updates...
[2026-08-31 00:15:20,086.086 INFO    ] 200
[2026-08-31 00:15:20,088.088 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:15:20,146.146 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:15:20,149.149 INFO    ] No update needed
[2026-08-31 00:15:20,151.151 INFO    ] Checking for camera pi updates...
[2026-08-31 00:15:20,188.188 INFO    ] 200
[2026-08-31 00:15:20,191.191 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:15:20,232.232 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:15:20,296.296 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:15:20,299.299 INFO    ] No camera update needed
[2026-08-31 00:15:20,301.301 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:15:20,303.303 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:15:20,309.309 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:15:20,314.314 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:15:22,354.354 INFO    ] ================================================
[2026-08-31 00:15:22,370.370 INFO    ] Launching Daemon at Mon Aug 31 00:15:22 IST 2026
[2026-08-31 00:15:22,381.381 INFO    ] ================================================
[2026-08-31 00:15:22,988.988 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:15:22
[2026-08-31 00:15:23,591.591 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:15:23,866.866 INFO    ] Initializing speech engine...
[2026-08-31 00:15:23,877.877 INFO    ] 2026-08-31 00:15:23
[2026-08-31 00:15:24,139.139 INFO    ] 2026-08-31 00:15:24
[2026-08-31 00:15:24,193.193 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:15:24,421.421 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:15:24,425.425 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:15:24,662.662 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:15:24,685.685 INFO    ] time= 31/08/2026 00:15:24
[2026-08-31 00:15:24,700.700 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:15:24,709.709 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:15:24,832.832 INFO    ] No existing commands found in stream
[2026-08-31 00:15:29,849.849 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:15:29,852.852 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-08-31 00:15:32,266.266 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 00:15:32,269.269 INFO    ] Checking for system updates...
[2026-08-31 00:15:32,310.310 INFO    ] 200
[2026-08-31 00:15:32,313.313 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:15:32,368.368 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:15:32,371.371 INFO    ] No update needed
[2026-08-31 00:15:32,374.374 INFO    ] Checking for camera pi updates...
[2026-08-31 00:15:32,410.410 INFO    ] 200
[2026-08-31 00:15:32,413.413 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:15:32,466.466 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:15:32,543.543 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:15:32,546.546 INFO    ] No camera update needed
[2026-08-31 00:15:32,549.549 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:15:32,551.551 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:15:32,558.558 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:15:32,564.564 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:15:34,606.606 INFO    ] ================================================
[2026-08-31 00:15:34,622.622 INFO    ] Launching Daemon at Mon Aug 31 00:15:34 IST 2026
[2026-08-31 00:15:34,633.633 INFO    ] ================================================
[2026-08-31 00:15:35,203.203 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:15:35
[2026-08-31 00:15:35,786.786 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:15:36,043.043 INFO    ] Initializing speech engine...
[2026-08-31 00:15:36,060.060 INFO    ] 2026-08-31 00:15:36
[2026-08-31 00:15:36,346.346 INFO    ] 2026-08-31 00:15:36
[2026-08-31 00:15:36,384.384 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:15:36,609.609 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:15:36,622.622 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:15:36,827.827 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:15:36,892.892 INFO    ] time= 31/08/2026 00:15:36
[2026-08-31 00:15:36,930.930 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:15:36,975.975 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:15:37,110.110 INFO    ] No existing commands found in stream
[2026-08-31 00:15:42,139.139 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:15:42,141.141 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-08-31 00:15:44,630.630 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 00:15:44,633.633 INFO    ] Checking for system updates...
[2026-08-31 00:15:44,669.669 INFO    ] 200
[2026-08-31 00:15:44,671.671 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:15:44,723.723 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:15:44,725.725 INFO    ] No update needed
[2026-08-31 00:15:44,728.728 INFO    ] Checking for camera pi updates...
[2026-08-31 00:15:44,766.766 INFO    ] 200
[2026-08-31 00:15:44,769.769 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:15:44,809.809 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:15:44,891.891 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:15:44,894.894 INFO    ] No camera update needed
[2026-08-31 00:15:44,896.896 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:15:44,898.898 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:15:44,904.904 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:15:44,909.909 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:15:46,951.951 INFO    ] ================================================
[2026-08-31 00:15:46,967.967 INFO    ] Launching Daemon at Mon Aug 31 00:15:46 IST 2026
[2026-08-31 00:15:46,979.979 INFO    ] ================================================
[2026-08-31 00:15:47,551.551 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:15:47
[2026-08-31 00:15:48,145.145 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:15:48,406.406 INFO    ] Initializing speech engine...
[2026-08-31 00:15:48,426.426 INFO    ] 2026-08-31 00:15:48
[2026-08-31 00:15:48,678.678 INFO    ] 2026-08-31 00:15:48
[2026-08-31 00:15:48,714.714 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:15:48,973.973 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:15:48,982.982 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:15:49,203.203 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:15:49,248.248 INFO    ] time= 31/08/2026 00:15:49
[2026-08-31 00:15:49,254.254 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:15:49,272.272 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:15:49,409.409 INFO    ] No existing commands found in stream
[2026-08-31 00:15:54,428.428 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:15:54,431.431 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-08-31 00:15:58,207.207 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 00:15:58,210.210 INFO    ] Checking for system updates...
[2026-08-31 00:15:58,245.245 INFO    ] 200
[2026-08-31 00:15:58,247.247 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:15:58,301.301 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:15:58,303.303 INFO    ] No update needed
[2026-08-31 00:15:58,306.306 INFO    ] Checking for camera pi updates...
[2026-08-31 00:15:58,344.344 INFO    ] 200
[2026-08-31 00:15:58,347.347 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:15:58,393.393 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:15:58,475.475 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:15:58,477.477 INFO    ] No camera update needed
[2026-08-31 00:15:58,480.480 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:15:58,482.482 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:15:58,487.487 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:15:58,492.492 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:16:00,534.534 INFO    ] ================================================
[2026-08-31 00:16:00,551.551 INFO    ] Launching Daemon at Mon Aug 31 00:16:00 IST 2026
[2026-08-31 00:16:00,562.562 INFO    ] ================================================
[2026-08-31 00:16:01,228.228 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:16:01
[2026-08-31 00:16:02,013.013 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:16:02,331.331 INFO    ] Initializing speech engine...
[2026-08-31 00:16:02,334.334 INFO    ] 2026-08-31 00:16:02
[2026-08-31 00:16:02,631.631 INFO    ] 2026-08-31 00:16:02
[2026-08-31 00:16:02,680.680 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:16:02,967.967 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:16:02,971.971 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:16:03,193.193 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:16:03,254.254 INFO    ] time= 31/08/2026 00:16:03
[2026-08-31 00:16:03,266.266 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:16:03,285.285 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:16:03,426.426 INFO    ] No existing commands found in stream
[2026-08-31 00:16:08,440.440 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:16:08,443.443 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-08-31 00:16:11,026.026 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 00:16:11,029.029 INFO    ] Checking for system updates...
[2026-08-31 00:16:11,064.064 INFO    ] 200
[2026-08-31 00:16:11,066.066 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:16:11,119.119 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:16:11,121.121 INFO    ] No update needed
[2026-08-31 00:16:11,124.124 INFO    ] Checking for camera pi updates...
[2026-08-31 00:16:11,162.162 INFO    ] 200
[2026-08-31 00:16:11,165.165 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:16:11,205.205 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:16:11,384.384 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:16:11,386.386 INFO    ] No camera update needed
[2026-08-31 00:16:11,389.389 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:16:11,392.392 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:16:11,398.398 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:16:11,403.403 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:16:13,445.445 INFO    ] ================================================
[2026-08-31 00:16:13,461.461 INFO    ] Launching Daemon at Mon Aug 31 00:16:13 IST 2026
[2026-08-31 00:16:13,473.473 INFO    ] ================================================
[2026-08-31 00:16:14,064.064 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:16:14
[2026-08-31 00:16:14,669.669 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:16:14,946.946 INFO    ] Initializing speech engine...
[2026-08-31 00:16:14,953.953 INFO    ] 2026-08-31 00:16:14
[2026-08-31 00:16:15,220.220 INFO    ] 2026-08-31 00:16:15
[2026-08-31 00:16:15,273.273 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:16:15,621.621 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:16:15,658.658 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:16:15,901.901 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:16:15,941.941 INFO    ] time= 31/08/2026 00:16:15
[2026-08-31 00:16:16,005.005 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:16:16,036.036 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:16:16,174.174 INFO    ] No existing commands found in stream
[2026-08-31 00:16:21,210.210 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:16:21,213.213 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-08-31 00:16:22,328.328 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 00:16:22,331.331 INFO    ] Checking for system updates...
[2026-08-31 00:16:22,392.392 INFO    ] 200
[2026-08-31 00:16:22,395.395 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:16:22,473.473 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:16:22,475.475 INFO    ] No update needed
[2026-08-31 00:16:22,478.478 INFO    ] Checking for camera pi updates...
[2026-08-31 00:16:22,529.529 INFO    ] 200
[2026-08-31 00:16:22,532.532 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:16:22,572.572 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:16:22,652.652 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:16:22,655.655 INFO    ] No camera update needed
[2026-08-31 00:16:22,658.658 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:16:22,661.661 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:16:22,667.667 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:16:22,672.672 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:16:24,717.717 INFO    ] ================================================
[2026-08-31 00:16:24,733.733 INFO    ] Launching Daemon at Mon Aug 31 00:16:24 IST 2026
[2026-08-31 00:16:24,744.744 INFO    ] ================================================
[2026-08-31 00:16:25,407.407 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:16:25
[2026-08-31 00:16:26,091.091 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:16:26,395.395 INFO    ] Initializing speech engine...
[2026-08-31 00:16:26,404.404 INFO    ] 2026-08-31 00:16:26
[2026-08-31 00:16:26,682.682 INFO    ] 2026-08-31 00:16:26
[2026-08-31 00:16:26,735.735 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:16:26,986.986 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:16:27,006.006 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:16:27,223.223 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:16:27,242.242 INFO    ] time= 31/08/2026 00:16:27
[2026-08-31 00:16:27,267.267 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:16:27,281.281 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:16:27,448.448 INFO    ] No existing commands found in stream
[2026-08-31 00:16:32,480.480 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:16:32,483.483 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-08-31 00:16:34,076.076 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 00:16:34,079.079 INFO    ] Checking for system updates...
[2026-08-31 00:16:34,119.119 INFO    ] 200
[2026-08-31 00:16:34,122.122 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:16:34,175.175 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:16:34,177.177 INFO    ] No update needed
[2026-08-31 00:16:34,180.180 INFO    ] Checking for camera pi updates...
[2026-08-31 00:16:34,213.213 INFO    ] 200
[2026-08-31 00:16:34,216.216 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:16:34,263.263 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:16:34,389.389 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:16:34,391.391 INFO    ] No camera update needed
[2026-08-31 00:16:34,393.393 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:16:34,396.396 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:16:34,401.401 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:16:34,406.406 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:16:36,447.447 INFO    ] ================================================
[2026-08-31 00:16:36,463.463 INFO    ] Launching Daemon at Mon Aug 31 00:16:36 IST 2026
[2026-08-31 00:16:36,474.474 INFO    ] ================================================
[2026-08-31 00:16:37,062.062 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:16:37
[2026-08-31 00:16:37,659.659 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:16:37,936.936 INFO    ] Initializing speech engine...
[2026-08-31 00:16:37,945.945 INFO    ] 2026-08-31 00:16:37
[2026-08-31 00:16:38,204.204 INFO    ] 2026-08-31 00:16:38
[2026-08-31 00:16:38,234.234 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:16:38,538.538 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:16:38,546.546 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:16:38,742.742 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:16:38,761.761 INFO    ] time= 31/08/2026 00:16:38
[2026-08-31 00:16:38,790.790 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:16:38,798.798 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:16:38,957.957 INFO    ] No existing commands found in stream
[2026-08-31 00:16:43,982.982 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:16:43,985.985 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-08-31 00:16:46,289.289 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 00:16:46,292.292 INFO    ] Checking for system updates...
[2026-08-31 00:16:46,328.328 INFO    ] 200
[2026-08-31 00:16:46,330.330 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:16:46,383.383 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:16:46,386.386 INFO    ] No update needed
[2026-08-31 00:16:46,388.388 INFO    ] Checking for camera pi updates...
[2026-08-31 00:16:46,423.423 INFO    ] 200
[2026-08-31 00:16:46,425.425 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:16:46,467.467 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:16:46,562.562 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:16:46,564.564 INFO    ] No camera update needed
[2026-08-31 00:16:46,567.567 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:16:46,569.569 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:16:46,575.575 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:16:46,580.580 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:16:48,620.620 INFO    ] ================================================
[2026-08-31 00:16:48,636.636 INFO    ] Launching Daemon at Mon Aug 31 00:16:48 IST 2026
[2026-08-31 00:16:48,646.646 INFO    ] ================================================
[2026-08-31 00:16:49,225.225 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:16:49
[2026-08-31 00:16:49,813.813 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:16:50,061.061 INFO    ] Initializing speech engine...
[2026-08-31 00:16:50,069.069 INFO    ] 2026-08-31 00:16:50
[2026-08-31 00:16:50,343.343 INFO    ] 2026-08-31 00:16:50
[2026-08-31 00:16:50,379.379 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:16:50,635.635 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:16:50,645.645 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:16:50,864.864 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:16:50,911.911 INFO    ] time= 31/08/2026 00:16:50
[2026-08-31 00:16:50,917.917 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:16:50,935.935 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:16:51,070.070 INFO    ] No existing commands found in stream
[2026-08-31 00:16:56,089.089 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:16:56,092.092 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-08-31 00:17:00,447.447 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 00:17:00,449.449 INFO    ] Checking for system updates...
[2026-08-31 00:17:00,485.485 INFO    ] 200
[2026-08-31 00:17:00,488.488 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:17:00,541.541 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:17:00,543.543 INFO    ] No update needed
[2026-08-31 00:17:00,546.546 INFO    ] Checking for camera pi updates...
[2026-08-31 00:17:00,580.580 INFO    ] 200
[2026-08-31 00:17:00,582.582 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:17:00,628.628 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:17:00,708.708 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:17:00,711.711 INFO    ] No camera update needed
[2026-08-31 00:17:00,714.714 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:17:00,717.717 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:17:00,722.722 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:17:00,727.727 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:17:02,787.787 INFO    ] ================================================
[2026-08-31 00:17:02,810.810 INFO    ] Launching Daemon at Mon Aug 31 00:17:02 IST 2026
[2026-08-31 00:17:02,829.829 INFO    ] ================================================
[2026-08-31 00:17:03,494.494 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:17:03
[2026-08-31 00:17:04,099.099 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:17:04,379.379 INFO    ] Initializing speech engine...
[2026-08-31 00:17:04,388.388 INFO    ] 2026-08-31 00:17:04
[2026-08-31 00:17:04,649.649 INFO    ] 2026-08-31 00:17:04
[2026-08-31 00:17:04,703.703 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:17:04,933.933 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:17:04,937.937 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:17:05,178.178 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:17:05,196.196 INFO    ] time= 31/08/2026 00:17:05
[2026-08-31 00:17:05,202.202 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:17:05,223.223 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:17:05,356.356 INFO    ] No existing commands found in stream
[2026-08-31 00:17:10,387.387 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:17:10,390.390 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-08-31 00:17:11,792.792 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 00:17:11,795.795 INFO    ] Checking for system updates...
[2026-08-31 00:17:11,834.834 INFO    ] 200
[2026-08-31 00:17:11,837.837 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:17:11,889.889 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:17:11,892.892 INFO    ] No update needed
[2026-08-31 00:17:11,894.894 INFO    ] Checking for camera pi updates...
[2026-08-31 00:17:11,932.932 INFO    ] 200
[2026-08-31 00:17:11,934.934 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:17:11,980.980 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:17:12,078.078 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:17:12,081.081 INFO    ] No camera update needed
[2026-08-31 00:17:12,083.083 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:17:12,085.085 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:17:12,091.091 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:17:12,097.097 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:17:14,139.139 INFO    ] ================================================
[2026-08-31 00:17:14,155.155 INFO    ] Launching Daemon at Mon Aug 31 00:17:14 IST 2026
[2026-08-31 00:17:14,166.166 INFO    ] ================================================
[2026-08-31 00:17:14,736.736 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:17:14
[2026-08-31 00:17:15,327.327 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:17:15,580.580 INFO    ] Initializing speech engine...
[2026-08-31 00:17:15,589.589 INFO    ] 2026-08-31 00:17:15
[2026-08-31 00:17:15,886.886 INFO    ] 2026-08-31 00:17:15
[2026-08-31 00:17:15,921.921 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:17:16,136.136 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:17:16,153.153 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:17:16,306.306 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:17:16,312.312 INFO    ] time= 31/08/2026 00:17:16
[2026-08-31 00:17:16,320.320 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:17:16,352.352 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:17:16,482.482 INFO    ] No existing commands found in stream
[2026-08-31 00:17:21,512.512 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:17:21,515.515 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-08-31 00:17:24,446.446 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 00:17:24,449.449 INFO    ] Checking for system updates...
[2026-08-31 00:17:24,485.485 INFO    ] 200
[2026-08-31 00:17:24,488.488 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:17:24,550.550 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:17:24,552.552 INFO    ] No update needed
[2026-08-31 00:17:24,555.555 INFO    ] Checking for camera pi updates...
[2026-08-31 00:17:24,592.592 INFO    ] 200
[2026-08-31 00:17:24,595.595 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:17:24,642.642 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:17:24,750.750 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:17:24,753.753 INFO    ] No camera update needed
[2026-08-31 00:17:24,755.755 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:17:24,758.758 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:17:24,764.764 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:17:24,771.771 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:17:26,815.815 INFO    ] ================================================
[2026-08-31 00:17:26,831.831 INFO    ] Launching Daemon at Mon Aug 31 00:17:26 IST 2026
[2026-08-31 00:17:26,842.842 INFO    ] ================================================
[2026-08-31 00:17:27,500.500 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:17:27
[2026-08-31 00:17:28,176.176 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:17:28,463.463 INFO    ] Initializing speech engine...
[2026-08-31 00:17:28,469.469 INFO    ] 2026-08-31 00:17:28
[2026-08-31 00:17:28,738.738 INFO    ] 2026-08-31 00:17:28
[2026-08-31 00:17:28,781.781 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:17:29,062.062 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:17:29,067.067 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:17:29,261.261 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:17:29,267.267 INFO    ] time= 31/08/2026 00:17:29
[2026-08-31 00:17:29,288.288 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:17:29,313.313 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:17:29,421.421 INFO    ] No existing commands found in stream
[2026-08-31 00:17:34,444.444 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:17:34,446.446 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-08-31 00:17:37,072.072 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 00:17:37,074.074 INFO    ] Checking for system updates...
[2026-08-31 00:17:37,111.111 INFO    ] 200
[2026-08-31 00:17:37,114.114 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:17:37,169.169 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:17:37,172.172 INFO    ] No update needed
[2026-08-31 00:17:37,174.174 INFO    ] Checking for camera pi updates...
[2026-08-31 00:17:37,213.213 INFO    ] 200
[2026-08-31 00:17:37,216.216 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:17:37,262.262 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:17:37,339.339 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:17:37,342.342 INFO    ] No camera update needed
[2026-08-31 00:17:37,345.345 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:17:37,347.347 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:17:37,354.354 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:17:37,360.360 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:17:39,399.399 INFO    ] ================================================
[2026-08-31 00:17:39,414.414 INFO    ] Launching Daemon at Mon Aug 31 00:17:39 IST 2026
[2026-08-31 00:17:39,425.425 INFO    ] ================================================
[2026-08-31 00:17:40,080.080 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:17:40
[2026-08-31 00:17:40,757.757 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:17:41,048.048 INFO    ] Initializing speech engine...
[2026-08-31 00:17:41,069.069 INFO    ] 2026-08-31 00:17:41
[2026-08-31 00:17:41,338.338 INFO    ] 2026-08-31 00:17:41
[2026-08-31 00:17:41,408.408 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:17:41,713.713 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:17:41,720.720 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:17:41,922.922 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:17:41,941.941 INFO    ] time= 31/08/2026 00:17:41
[2026-08-31 00:17:41,950.950 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:17:41,978.978 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:17:42,099.099 INFO    ] No existing commands found in stream
[2026-08-31 00:17:47,124.124 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:17:47,127.127 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-08-31 00:17:49,588.588 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 00:17:49,591.591 INFO    ] Checking for system updates...
[2026-08-31 00:17:49,637.637 INFO    ] 200
[2026-08-31 00:17:49,640.640 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:17:49,700.700 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:17:49,703.703 INFO    ] No update needed
[2026-08-31 00:17:49,705.705 INFO    ] Checking for camera pi updates...
[2026-08-31 00:17:49,742.742 INFO    ] 200
[2026-08-31 00:17:49,745.745 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:17:49,792.792 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:17:49,891.891 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:17:49,894.894 INFO    ] No camera update needed
[2026-08-31 00:17:49,896.896 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:17:49,899.899 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:17:49,904.904 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:17:49,909.909 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:17:51,949.949 INFO    ] ================================================
[2026-08-31 00:17:51,964.964 INFO    ] Launching Daemon at Mon Aug 31 00:17:51 IST 2026
[2026-08-31 00:17:51,975.975 INFO    ] ================================================
[2026-08-31 00:17:52,636.636 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:17:52
[2026-08-31 00:17:53,312.312 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:17:53,600.600 INFO    ] Initializing speech engine...
[2026-08-31 00:17:53,607.607 INFO    ] 2026-08-31 00:17:53
[2026-08-31 00:17:53,853.853 INFO    ] 2026-08-31 00:17:53
[2026-08-31 00:17:53,918.918 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:17:54,144.144 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:17:54,148.148 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:17:54,354.354 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:17:54,406.406 INFO    ] time= 31/08/2026 00:17:54
[2026-08-31 00:17:54,412.412 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:17:54,430.430 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:17:54,560.560 INFO    ] No existing commands found in stream
[2026-08-31 00:17:59,576.576 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:17:59,579.579 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-08-31 00:18:02,928.928 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 00:18:02,932.932 INFO    ] Checking for system updates...
[2026-08-31 00:18:02,987.987 INFO    ] 200
[2026-08-31 00:18:02,990.990 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:18:03,045.045 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:18:03,048.048 INFO    ] No update needed
[2026-08-31 00:18:03,051.051 INFO    ] Checking for camera pi updates...
[2026-08-31 00:18:03,088.088 INFO    ] 200
[2026-08-31 00:18:03,091.091 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:18:03,147.147 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:18:03,206.206 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:18:03,209.209 INFO    ] No camera update needed
[2026-08-31 00:18:03,211.211 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:18:03,214.214 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:18:03,219.219 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:18:03,224.224 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:18:05,266.266 INFO    ] ================================================
[2026-08-31 00:18:05,284.284 INFO    ] Launching Daemon at Mon Aug 31 00:18:05 IST 2026
[2026-08-31 00:18:05,294.294 INFO    ] ================================================
[2026-08-31 00:18:05,949.949 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:18:05
[2026-08-31 00:18:06,617.617 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:18:06,881.881 INFO    ] Initializing speech engine...
[2026-08-31 00:18:06,886.886 INFO    ] 2026-08-31 00:18:06
[2026-08-31 00:18:07,185.185 INFO    ] 2026-08-31 00:18:07
[2026-08-31 00:18:07,211.211 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:18:07,425.425 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:18:07,438.438 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:18:07,680.680 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:18:07,687.687 INFO    ] time= 31/08/2026 00:18:07
[2026-08-31 00:18:07,731.731 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:18:07,786.786 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:18:07,885.885 INFO    ] No existing commands found in stream
[2026-08-31 00:18:12,900.900 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:18:12,902.902 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-08-31 00:18:14,327.327 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 00:18:14,330.330 INFO    ] Checking for system updates...
[2026-08-31 00:18:14,372.372 INFO    ] 200
[2026-08-31 00:18:14,375.375 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:18:14,432.432 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:18:14,435.435 INFO    ] No update needed
[2026-08-31 00:18:14,438.438 INFO    ] Checking for camera pi updates...
[2026-08-31 00:18:14,482.482 INFO    ] 200
[2026-08-31 00:18:14,485.485 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:18:14,528.528 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:18:14,709.709 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:18:14,712.712 INFO    ] No camera update needed
[2026-08-31 00:18:14,714.714 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:18:14,717.717 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:18:14,723.723 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:18:14,729.729 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:18:16,770.770 INFO    ] ================================================
[2026-08-31 00:18:16,786.786 INFO    ] Launching Daemon at Mon Aug 31 00:18:16 IST 2026
[2026-08-31 00:18:16,798.798 INFO    ] ================================================
[2026-08-31 00:18:17,383.383 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:18:17
[2026-08-31 00:18:17,981.981 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:18:18,280.280 INFO    ] Initializing speech engine...
[2026-08-31 00:18:18,287.287 INFO    ] 2026-08-31 00:18:18
[2026-08-31 00:18:18,543.543 INFO    ] 2026-08-31 00:18:18
[2026-08-31 00:18:18,578.578 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:18:18,828.828 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:18:18,837.837 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:18:19,069.069 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:18:19,106.106 INFO    ] time= 31/08/2026 00:18:19
[2026-08-31 00:18:19,121.121 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:18:19,128.128 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:18:19,262.262 INFO    ] No existing commands found in stream
[2026-08-31 00:18:24,276.276 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:18:24,279.279 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-08-31 00:18:24,929.929 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 00:18:24,932.932 INFO    ] Checking for system updates...
[2026-08-31 00:18:24,973.973 INFO    ] 200
[2026-08-31 00:18:24,976.976 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:18:25,028.028 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:18:25,030.030 INFO    ] No update needed
[2026-08-31 00:18:25,032.032 INFO    ] Checking for camera pi updates...
[2026-08-31 00:18:25,070.070 INFO    ] 200
[2026-08-31 00:18:25,073.073 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:18:25,113.113 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:18:25,208.208 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:18:25,210.210 INFO    ] No camera update needed
[2026-08-31 00:18:25,212.212 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:18:25,215.215 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:18:25,220.220 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:18:25,225.225 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:18:27,264.264 INFO    ] ================================================
[2026-08-31 00:18:27,279.279 INFO    ] Launching Daemon at Mon Aug 31 00:18:27 IST 2026
[2026-08-31 00:18:27,291.291 INFO    ] ================================================
[2026-08-31 00:18:27,857.857 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:18:27
[2026-08-31 00:18:28,442.442 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:18:28,714.714 INFO    ] Initializing speech engine...
[2026-08-31 00:18:28,723.723 INFO    ] 2026-08-31 00:18:28
[2026-08-31 00:18:28,974.974 INFO    ] 2026-08-31 00:18:28
[2026-08-31 00:18:29,009.009 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:18:29,265.265 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:18:29,274.274 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:18:29,508.508 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:18:29,539.539 INFO    ] time= 31/08/2026 00:18:29
[2026-08-31 00:18:29,545.545 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:18:29,566.566 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:18:29,697.697 INFO    ] No existing commands found in stream
[2026-08-31 00:18:34,712.712 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:18:34,715.715 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-08-31 00:18:38,846.846 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 00:18:38,849.849 INFO    ] Checking for system updates...
[2026-08-31 00:18:38,885.885 INFO    ] 200
[2026-08-31 00:18:38,887.887 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:18:38,941.941 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:18:38,943.943 INFO    ] No update needed
[2026-08-31 00:18:38,946.946 INFO    ] Checking for camera pi updates...
[2026-08-31 00:18:38,980.980 INFO    ] 200
[2026-08-31 00:18:38,983.983 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:18:39,023.023 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:18:39,134.134 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:18:39,136.136 INFO    ] No camera update needed
[2026-08-31 00:18:39,139.139 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:18:39,141.141 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:18:39,146.146 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:18:39,152.152 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:18:41,191.191 INFO    ] ================================================
[2026-08-31 00:18:41,206.206 INFO    ] Launching Daemon at Mon Aug 31 00:18:41 IST 2026
[2026-08-31 00:18:41,217.217 INFO    ] ================================================
[2026-08-31 00:18:41,889.889 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:18:41
[2026-08-31 00:18:42,581.581 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:18:42,893.893 INFO    ] Initializing speech engine...
[2026-08-31 00:18:42,907.907 INFO    ] 2026-08-31 00:18:42
[2026-08-31 00:18:43,231.231 INFO    ] 2026-08-31 00:18:43
[2026-08-31 00:18:43,314.314 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:18:43,533.533 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:18:43,541.541 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:18:43,740.740 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:18:43,758.758 INFO    ] time= 31/08/2026 00:18:43
[2026-08-31 00:18:43,790.790 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:18:43,798.798 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:18:43,948.948 INFO    ] No existing commands found in stream
[2026-08-31 00:18:48,979.979 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:18:48,982.982 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-08-31 00:18:51,947.947 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 00:18:51,950.950 INFO    ] Checking for system updates...
[2026-08-31 00:18:51,986.986 INFO    ] 200
[2026-08-31 00:18:51,989.989 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:18:52,049.049 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:18:52,051.051 INFO    ] No update needed
[2026-08-31 00:18:52,054.054 INFO    ] Checking for camera pi updates...
[2026-08-31 00:18:52,087.087 INFO    ] 200
[2026-08-31 00:18:52,090.090 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:18:52,130.130 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:18:52,214.214 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:18:52,217.217 INFO    ] No camera update needed
[2026-08-31 00:18:52,219.219 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:18:52,221.221 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:18:52,226.226 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:18:52,231.231 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:18:54,272.272 INFO    ] ================================================
[2026-08-31 00:18:54,287.287 INFO    ] Launching Daemon at Mon Aug 31 00:18:54 IST 2026
[2026-08-31 00:18:54,298.298 INFO    ] ================================================
[2026-08-31 00:18:54,880.880 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:18:54
[2026-08-31 00:18:55,475.475 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:18:55,727.727 INFO    ] Initializing speech engine...
[2026-08-31 00:18:55,740.740 INFO    ] 2026-08-31 00:18:55
[2026-08-31 00:18:56,011.011 INFO    ] 2026-08-31 00:18:56
[2026-08-31 00:18:56,047.047 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:18:56,292.292 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:18:56,309.309 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:18:56,511.511 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:18:56,566.566 INFO    ] time= 31/08/2026 00:18:56
[2026-08-31 00:18:56,583.583 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:18:56,589.589 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:18:56,731.731 INFO    ] No existing commands found in stream
[2026-08-31 00:19:01,750.750 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:19:01,755.755 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-08-31 00:19:05,608.608 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 00:19:05,611.611 INFO    ] Checking for system updates...
[2026-08-31 00:19:05,653.653 INFO    ] 200
[2026-08-31 00:19:05,656.656 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:19:05,712.712 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:19:05,715.715 INFO    ] No update needed
[2026-08-31 00:19:05,718.718 INFO    ] Checking for camera pi updates...
[2026-08-31 00:19:05,753.753 INFO    ] 200
[2026-08-31 00:19:05,756.756 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:19:05,798.798 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:19:05,896.896 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:19:05,899.899 INFO    ] No camera update needed
[2026-08-31 00:19:05,902.902 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:19:05,905.905 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:19:05,911.911 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:19:05,917.917 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:19:07,959.959 INFO    ] ================================================
[2026-08-31 00:19:07,974.974 INFO    ] Launching Daemon at Mon Aug 31 00:19:07 IST 2026
[2026-08-31 00:19:07,985.985 INFO    ] ================================================
[2026-08-31 00:19:08,551.551 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:19:08
[2026-08-31 00:19:09,136.136 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:19:09,391.391 INFO    ] Initializing speech engine...
[2026-08-31 00:19:09,397.397 INFO    ] 2026-08-31 00:19:09
[2026-08-31 00:19:09,696.696 INFO    ] 2026-08-31 00:19:09
[2026-08-31 00:19:09,721.721 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:19:09,957.957 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:19:09,966.966 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:19:10,186.186 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:19:10,197.197 INFO    ] time= 31/08/2026 00:19:10
[2026-08-31 00:19:10,252.252 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:19:10,296.296 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:19:10,444.444 INFO    ] No existing commands found in stream
[2026-08-31 00:19:15,472.472 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:19:15,475.475 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-08-31 00:19:19,992.992 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 00:19:19,995.995 INFO    ] Checking for system updates...
[2026-08-31 00:19:20,030.030 INFO    ] 200
[2026-08-31 00:19:20,033.033 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:19:20,092.092 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:19:20,095.095 INFO    ] No update needed
[2026-08-31 00:19:20,097.097 INFO    ] Checking for camera pi updates...
[2026-08-31 00:19:20,134.134 INFO    ] 200
[2026-08-31 00:19:20,137.137 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:19:20,182.182 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:19:20,246.246 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:19:20,249.249 INFO    ] No camera update needed
[2026-08-31 00:19:20,251.251 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:19:20,254.254 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:19:20,259.259 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:19:20,264.264 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:19:22,304.304 INFO    ] ================================================
[2026-08-31 00:19:22,319.319 INFO    ] Launching Daemon at Mon Aug 31 00:19:22 IST 2026
[2026-08-31 00:19:22,331.331 INFO    ] ================================================
[2026-08-31 00:19:22,895.895 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:19:22
[2026-08-31 00:19:23,476.476 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:19:23,744.744 INFO    ] Initializing speech engine...
[2026-08-31 00:19:23,754.754 INFO    ] 2026-08-31 00:19:23
[2026-08-31 00:19:24,001.001 INFO    ] 2026-08-31 00:19:23
[2026-08-31 00:19:24,067.067 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:19:24,288.288 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:19:24,298.298 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:19:24,504.504 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:19:24,555.555 INFO    ] time= 31/08/2026 00:19:24
[2026-08-31 00:19:24,562.562 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:19:24,580.580 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:19:24,708.708 INFO    ] No existing commands found in stream
[2026-08-31 00:19:29,722.722 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:19:29,724.724 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-08-31 00:19:33,991.991 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 00:19:33,994.994 INFO    ] Checking for system updates...
[2026-08-31 00:19:34,029.029 INFO    ] 200
[2026-08-31 00:19:34,031.031 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:19:34,091.091 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:19:34,093.093 INFO    ] No update needed
[2026-08-31 00:19:34,096.096 INFO    ] Checking for camera pi updates...
[2026-08-31 00:19:34,129.129 INFO    ] 200
[2026-08-31 00:19:34,131.131 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:19:34,171.171 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:19:34,251.251 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:19:34,253.253 INFO    ] No camera update needed
[2026-08-31 00:19:34,255.255 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:19:34,258.258 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:19:34,263.263 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:19:34,268.268 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:19:36,308.308 INFO    ] ================================================
[2026-08-31 00:19:36,324.324 INFO    ] Launching Daemon at Mon Aug 31 00:19:36 IST 2026
[2026-08-31 00:19:36,335.335 INFO    ] ================================================
[2026-08-31 00:19:36,951.951 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:19:36
[2026-08-31 00:19:37,534.534 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:19:37,799.799 INFO    ] Initializing speech engine...
[2026-08-31 00:19:37,808.808 INFO    ] 2026-08-31 00:19:37
[2026-08-31 00:19:38,055.055 INFO    ] 2026-08-31 00:19:38
[2026-08-31 00:19:38,089.089 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:19:38,345.345 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:19:38,351.351 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:19:38,581.581 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:19:38,605.605 INFO    ] time= 31/08/2026 00:19:38
[2026-08-31 00:19:38,611.611 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:19:38,629.629 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:19:38,749.749 INFO    ] No existing commands found in stream
[2026-08-31 00:19:43,770.770 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:19:43,772.772 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-08-31 00:19:48,286.286 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 00:19:48,289.289 INFO    ] Checking for system updates...
[2026-08-31 00:19:48,325.325 INFO    ] 200
[2026-08-31 00:19:48,327.327 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:19:48,380.380 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:19:48,383.383 INFO    ] No update needed
[2026-08-31 00:19:48,385.385 INFO    ] Checking for camera pi updates...
[2026-08-31 00:19:48,419.419 INFO    ] 200
[2026-08-31 00:19:48,421.421 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:19:48,462.462 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:19:48,547.547 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:19:48,550.550 INFO    ] No camera update needed
[2026-08-31 00:19:48,552.552 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:19:48,554.554 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:19:48,560.560 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:19:48,565.565 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:19:50,605.605 INFO    ] ================================================
[2026-08-31 00:19:50,621.621 INFO    ] Launching Daemon at Mon Aug 31 00:19:50 IST 2026
[2026-08-31 00:19:50,632.632 INFO    ] ================================================
[2026-08-31 00:19:51,293.293 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:19:51
[2026-08-31 00:19:51,970.970 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:19:52,277.277 INFO    ] Initializing speech engine...
[2026-08-31 00:19:52,289.289 INFO    ] 2026-08-31 00:19:52
[2026-08-31 00:19:52,589.589 INFO    ] 2026-08-31 00:19:52
[2026-08-31 00:19:52,674.674 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:19:52,888.888 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:19:52,894.894 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:19:53,086.086 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:19:53,102.102 INFO    ] time= 31/08/2026 00:19:53
[2026-08-31 00:19:53,111.111 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:19:53,137.137 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:19:53,262.262 INFO    ] No existing commands found in stream
[2026-08-31 00:19:58,297.297 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:19:58,300.300 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-08-31 00:20:00,151.151 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 00:20:00,154.154 INFO    ] Checking for system updates...
[2026-08-31 00:20:00,194.194 INFO    ] 200
[2026-08-31 00:20:00,196.196 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:20:00,256.256 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:20:00,258.258 INFO    ] No update needed
[2026-08-31 00:20:00,261.261 INFO    ] Checking for camera pi updates...
[2026-08-31 00:20:00,299.299 INFO    ] 200
[2026-08-31 00:20:00,301.301 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:20:00,342.342 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:20:00,421.421 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:20:00,424.424 INFO    ] No camera update needed
[2026-08-31 00:20:00,426.426 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:20:00,429.429 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:20:00,434.434 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:20:00,439.439 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:20:02,505.505 INFO    ] ================================================
[2026-08-31 00:20:02,536.536 INFO    ] Launching Daemon at Mon Aug 31 00:20:02 IST 2026
[2026-08-31 00:20:02,551.551 INFO    ] ================================================
[2026-08-31 00:20:03,250.250 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:20:03
[2026-08-31 00:20:03,968.968 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:20:04,249.249 INFO    ] Initializing speech engine...
[2026-08-31 00:20:04,258.258 INFO    ] 2026-08-31 00:20:04
[2026-08-31 00:20:04,510.510 INFO    ] 2026-08-31 00:20:04
[2026-08-31 00:20:04,545.545 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:20:04,805.805 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:20:04,815.815 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:20:05,032.032 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:20:05,076.076 INFO    ] time= 31/08/2026 00:20:05
[2026-08-31 00:20:05,082.082 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:20:05,103.103 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:20:05,226.226 INFO    ] No existing commands found in stream
[2026-08-31 00:20:10,242.242 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:20:10,244.244 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-08-31 00:20:14,526.526 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 00:20:14,529.529 INFO    ] Checking for system updates...
[2026-08-31 00:20:14,565.565 INFO    ] 200
[2026-08-31 00:20:14,568.568 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:20:14,621.621 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:20:14,623.623 INFO    ] No update needed
[2026-08-31 00:20:14,625.625 INFO    ] Checking for camera pi updates...
[2026-08-31 00:20:14,659.659 INFO    ] 200
[2026-08-31 00:20:14,662.662 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:20:14,702.702 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:20:14,787.787 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:20:14,790.790 INFO    ] No camera update needed
[2026-08-31 00:20:14,792.792 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:20:14,794.794 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:20:14,800.800 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:20:14,805.805 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:20:16,846.846 INFO    ] ================================================
[2026-08-31 00:20:16,862.862 INFO    ] Launching Daemon at Mon Aug 31 00:20:16 IST 2026
[2026-08-31 00:20:16,873.873 INFO    ] ================================================
[2026-08-31 00:20:17,439.439 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:20:17
[2026-08-31 00:20:18,023.023 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:20:18,281.281 INFO    ] Initializing speech engine...
[2026-08-31 00:20:18,297.297 INFO    ] 2026-08-31 00:20:18
[2026-08-31 00:20:18,584.584 INFO    ] 2026-08-31 00:20:18
[2026-08-31 00:20:18,620.620 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:20:18,839.839 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:20:18,867.867 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:20:19,082.082 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:20:19,126.126 INFO    ] time= 31/08/2026 00:20:19
[2026-08-31 00:20:19,178.178 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:20:19,184.184 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:20:19,317.317 INFO    ] No existing commands found in stream
[2026-08-31 00:20:24,342.342 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:20:24,345.345 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-08-31 00:20:26,009.009 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 00:20:26,013.013 INFO    ] Checking for system updates...
[2026-08-31 00:20:26,055.055 INFO    ] 200
[2026-08-31 00:20:26,059.059 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:20:26,121.121 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:20:26,124.124 INFO    ] No update needed
[2026-08-31 00:20:26,127.127 INFO    ] Checking for camera pi updates...
[2026-08-31 00:20:26,165.165 INFO    ] 200
[2026-08-31 00:20:26,168.168 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:20:26,208.208 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:20:26,389.389 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:20:26,391.391 INFO    ] No camera update needed
[2026-08-31 00:20:26,394.394 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:20:26,396.396 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:20:26,401.401 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:20:26,413.413 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:20:28,453.453 INFO    ] ================================================
[2026-08-31 00:20:28,469.469 INFO    ] Launching Daemon at Mon Aug 31 00:20:28 IST 2026
[2026-08-31 00:20:28,480.480 INFO    ] ================================================
[2026-08-31 00:20:29,063.063 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:20:29
[2026-08-31 00:20:29,665.665 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:20:29,938.938 INFO    ] Initializing speech engine...
[2026-08-31 00:20:29,947.947 INFO    ] 2026-08-31 00:20:29
[2026-08-31 00:20:30,210.210 INFO    ] 2026-08-31 00:20:30
[2026-08-31 00:20:30,265.265 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:20:30,491.491 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:20:30,497.497 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:20:30,716.716 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:20:30,752.752 INFO    ] time= 31/08/2026 00:20:30
[2026-08-31 00:20:30,769.769 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:20:30,777.777 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:20:30,905.905 INFO    ] No existing commands found in stream
[2026-08-31 00:20:35,925.925 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:20:35,928.928 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-08-31 00:20:39,407.407 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 00:20:39,410.410 INFO    ] Checking for system updates...
[2026-08-31 00:20:39,446.446 INFO    ] 200
[2026-08-31 00:20:39,448.448 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:20:39,501.501 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:20:39,503.503 INFO    ] No update needed
[2026-08-31 00:20:39,506.506 INFO    ] Checking for camera pi updates...
[2026-08-31 00:20:39,543.543 INFO    ] 200
[2026-08-31 00:20:39,546.546 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:20:39,591.591 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:20:39,675.675 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:20:39,677.677 INFO    ] No camera update needed
[2026-08-31 00:20:39,680.680 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:20:39,682.682 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:20:39,687.687 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:20:39,693.693 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:20:41,735.735 INFO    ] ================================================
[2026-08-31 00:20:41,751.751 INFO    ] Launching Daemon at Mon Aug 31 00:20:41 IST 2026
[2026-08-31 00:20:41,762.762 INFO    ] ================================================
[2026-08-31 00:20:42,423.423 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:20:42
[2026-08-31 00:20:43,103.103 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:20:43,412.412 INFO    ] Initializing speech engine...
[2026-08-31 00:20:43,424.424 INFO    ] 2026-08-31 00:20:43
[2026-08-31 00:20:43,732.732 INFO    ] 2026-08-31 00:20:43
[2026-08-31 00:20:43,817.817 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:20:44,095.095 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:20:44,143.143 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:20:44,377.377 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:20:44,412.412 INFO    ] time= 31/08/2026 00:20:44
[2026-08-31 00:20:44,452.452 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:20:44,455.455 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:20:44,642.642 INFO    ] No existing commands found in stream
[2026-08-31 00:20:49,656.656 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:20:49,660.660 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-08-31 00:20:51,626.626 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 00:20:51,629.629 INFO    ] Checking for system updates...
[2026-08-31 00:20:51,667.667 INFO    ] 200
[2026-08-31 00:20:51,671.671 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:20:51,725.725 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:20:51,728.728 INFO    ] No update needed
[2026-08-31 00:20:51,731.731 INFO    ] Checking for camera pi updates...
[2026-08-31 00:20:51,766.766 INFO    ] 200
[2026-08-31 00:20:51,769.769 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:20:51,811.811 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:20:51,891.891 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:20:51,894.894 INFO    ] No camera update needed
[2026-08-31 00:20:51,897.897 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:20:51,900.900 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:20:51,906.906 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:20:51,912.912 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:20:53,953.953 INFO    ] ================================================
[2026-08-31 00:20:53,968.968 INFO    ] Launching Daemon at Mon Aug 31 00:20:53 IST 2026
[2026-08-31 00:20:53,979.979 INFO    ] ================================================
[2026-08-31 00:20:54,600.600 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:20:54
[2026-08-31 00:20:55,184.184 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:20:55,438.438 INFO    ] Initializing speech engine...
[2026-08-31 00:20:55,444.444 INFO    ] 2026-08-31 00:20:55
[2026-08-31 00:20:55,749.749 INFO    ] 2026-08-31 00:20:55
[2026-08-31 00:20:55,775.775 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:20:56,021.021 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:20:56,044.044 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:20:56,262.262 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:20:56,280.280 INFO    ] time= 31/08/2026 00:20:56
[2026-08-31 00:20:56,340.340 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:20:56,404.404 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:20:56,571.571 INFO    ] No existing commands found in stream
[2026-08-31 00:21:01,596.596 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:21:01,599.599 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-08-31 00:21:04,226.226 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 00:21:04,229.229 INFO    ] Checking for system updates...
[2026-08-31 00:21:04,269.269 INFO    ] 200
[2026-08-31 00:21:04,272.272 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:21:04,345.345 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:21:04,348.348 INFO    ] No update needed
[2026-08-31 00:21:04,350.350 INFO    ] Checking for camera pi updates...
[2026-08-31 00:21:04,383.383 INFO    ] 200
[2026-08-31 00:21:04,386.386 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:21:04,426.426 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:21:04,508.508 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:21:04,511.511 INFO    ] No camera update needed
[2026-08-31 00:21:04,513.513 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:21:04,515.515 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:21:04,521.521 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:21:04,525.525 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:21:06,566.566 INFO    ] ================================================
[2026-08-31 00:21:06,581.581 INFO    ] Launching Daemon at Mon Aug 31 00:21:06 IST 2026
[2026-08-31 00:21:06,592.592 INFO    ] ================================================
[2026-08-31 00:21:07,183.183 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:21:07
[2026-08-31 00:21:07,773.773 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:21:08,032.032 INFO    ] Initializing speech engine...
[2026-08-31 00:21:08,038.038 INFO    ] 2026-08-31 00:21:08
[2026-08-31 00:21:08,333.333 INFO    ] 2026-08-31 00:21:08
[2026-08-31 00:21:08,371.371 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:21:08,595.595 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:21:08,619.619 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:21:08,834.834 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:21:08,881.881 INFO    ] time= 31/08/2026 00:21:08
[2026-08-31 00:21:08,921.921 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:21:08,923.923 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:21:09,010.010 INFO    ] No existing commands found in stream
[2026-08-31 00:21:14,020.020 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:21:14,022.022 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-08-31 00:21:15,069.069 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 00:21:15,071.071 INFO    ] Checking for system updates...
[2026-08-31 00:21:15,107.107 INFO    ] 200
[2026-08-31 00:21:15,110.110 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:21:15,163.163 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:21:15,165.165 INFO    ] No update needed
[2026-08-31 00:21:15,167.167 INFO    ] Checking for camera pi updates...
[2026-08-31 00:21:15,201.201 INFO    ] 200
[2026-08-31 00:21:15,204.204 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:21:15,244.244 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:21:15,330.330 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:21:15,332.332 INFO    ] No camera update needed
[2026-08-31 00:21:15,335.335 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:21:15,337.337 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:21:15,342.342 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:21:15,347.347 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:21:17,388.388 INFO    ] ================================================
[2026-08-31 00:21:17,404.404 INFO    ] Launching Daemon at Mon Aug 31 00:21:17 IST 2026
[2026-08-31 00:21:17,415.415 INFO    ] ================================================
[2026-08-31 00:21:17,984.984 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:21:17
[2026-08-31 00:21:18,570.570 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:21:18,818.818 INFO    ] Initializing speech engine...
[2026-08-31 00:21:18,839.839 INFO    ] 2026-08-31 00:21:18
[2026-08-31 00:21:19,099.099 INFO    ] 2026-08-31 00:21:19
[2026-08-31 00:21:19,134.134 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:21:19,399.399 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:21:19,405.405 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:21:19,625.625 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:21:19,667.667 INFO    ] time= 31/08/2026 00:21:19
[2026-08-31 00:21:19,673.673 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:21:19,692.692 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:21:19,825.825 INFO    ] No existing commands found in stream
[2026-08-31 00:21:24,837.837 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:21:24,840.840 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-08-31 00:21:26,145.145 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 00:21:26,148.148 INFO    ] Checking for system updates...
[2026-08-31 00:21:26,185.185 INFO    ] 200
[2026-08-31 00:21:26,187.187 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:21:26,239.239 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:21:26,242.242 INFO    ] No update needed
[2026-08-31 00:21:26,244.244 INFO    ] Checking for camera pi updates...
[2026-08-31 00:21:26,277.277 INFO    ] 200
[2026-08-31 00:21:26,280.280 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:21:26,325.325 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:21:26,385.385 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:21:26,387.387 INFO    ] No camera update needed
[2026-08-31 00:21:26,390.390 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:21:26,392.392 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:21:26,397.397 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:21:26,402.402 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:21:28,443.443 INFO    ] ================================================
[2026-08-31 00:21:28,459.459 INFO    ] Launching Daemon at Mon Aug 31 00:21:28 IST 2026
[2026-08-31 00:21:28,470.470 INFO    ] ================================================
[2026-08-31 00:21:29,035.035 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:21:29
[2026-08-31 00:21:29,619.619 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:21:29,877.877 INFO    ] Initializing speech engine...
[2026-08-31 00:21:29,896.896 INFO    ] 2026-08-31 00:21:29
[2026-08-31 00:21:30,142.142 INFO    ] 2026-08-31 00:21:30
[2026-08-31 00:21:30,178.178 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:21:30,375.375 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:21:30,433.433 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:21:30,693.693 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:21:30,699.699 INFO    ] time= 31/08/2026 00:21:30
[2026-08-31 00:21:30,716.716 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:21:30,734.734 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:21:30,851.851 INFO    ] No existing commands found in stream
[2026-08-31 00:21:35,867.867 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:21:35,870.870 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-08-31 00:21:37,727.727 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 00:21:37,730.730 INFO    ] Checking for system updates...
[2026-08-31 00:21:37,766.766 INFO    ] 200
[2026-08-31 00:21:37,769.769 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:21:37,830.830 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:21:37,833.833 INFO    ] No update needed
[2026-08-31 00:21:37,836.836 INFO    ] Checking for camera pi updates...
[2026-08-31 00:21:37,874.874 INFO    ] 200
[2026-08-31 00:21:37,877.877 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:21:37,925.925 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:21:38,014.014 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:21:38,016.016 INFO    ] No camera update needed
[2026-08-31 00:21:38,019.019 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:21:38,022.022 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:21:38,028.028 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:21:38,034.034 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:21:40,077.077 INFO    ] ================================================
[2026-08-31 00:21:40,093.093 INFO    ] Launching Daemon at Mon Aug 31 00:21:40 IST 2026
[2026-08-31 00:21:40,105.105 INFO    ] ================================================
[2026-08-31 00:21:40,704.704 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:21:40
[2026-08-31 00:21:41,331.331 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:21:41,598.598 INFO    ] Initializing speech engine...
[2026-08-31 00:21:41,607.607 INFO    ] 2026-08-31 00:21:41
[2026-08-31 00:21:41,854.854 INFO    ] 2026-08-31 00:21:41
[2026-08-31 00:21:41,889.889 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:21:42,145.145 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:21:42,151.151 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:21:42,388.388 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:21:42,407.407 INFO    ] time= 31/08/2026 00:21:42
[2026-08-31 00:21:42,413.413 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:21:42,430.430 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:21:42,561.561 INFO    ] No existing commands found in stream
[2026-08-31 00:21:47,576.576 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:21:47,579.579 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-08-31 00:21:50,926.926 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 00:21:50,929.929 INFO    ] Checking for system updates...
[2026-08-31 00:21:50,965.965 INFO    ] 200
[2026-08-31 00:21:50,967.967 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:21:51,020.020 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:21:51,023.023 INFO    ] No update needed
[2026-08-31 00:21:51,025.025 INFO    ] Checking for camera pi updates...
[2026-08-31 00:21:51,059.059 INFO    ] 200
[2026-08-31 00:21:51,061.061 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:21:51,101.101 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:21:51,198.198 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:21:51,201.201 INFO    ] No camera update needed
[2026-08-31 00:21:51,203.203 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:21:51,205.205 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:21:51,210.210 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:21:51,215.215 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:21:53,257.257 INFO    ] ================================================
[2026-08-31 00:21:53,273.273 INFO    ] Launching Daemon at Mon Aug 31 00:21:53 IST 2026
[2026-08-31 00:21:53,284.284 INFO    ] ================================================
[2026-08-31 00:21:53,866.866 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:21:53
[2026-08-31 00:21:54,462.462 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:21:54,717.717 INFO    ] Initializing speech engine...
[2026-08-31 00:21:54,722.722 INFO    ] 2026-08-31 00:21:54
[2026-08-31 00:21:54,999.999 INFO    ] 2026-08-31 00:21:54
[2026-08-31 00:21:55,035.035 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:21:55,292.292 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:21:55,297.297 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:21:55,521.521 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:21:55,552.552 INFO    ] time= 31/08/2026 00:21:55
[2026-08-31 00:21:55,559.559 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:21:55,576.576 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:21:55,701.701 INFO    ] No existing commands found in stream
[2026-08-31 00:22:00,717.717 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:22:00,720.720 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-08-31 00:22:02,549.549 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 00:22:02,552.552 INFO    ] Checking for system updates...
[2026-08-31 00:22:02,597.597 INFO    ] 200
[2026-08-31 00:22:02,601.601 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:22:02,672.672 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:22:02,675.675 INFO    ] No update needed
[2026-08-31 00:22:02,678.678 INFO    ] Checking for camera pi updates...
[2026-08-31 00:22:02,718.718 INFO    ] 200
[2026-08-31 00:22:02,721.721 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:22:02,775.775 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:22:02,860.860 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:22:02,863.863 INFO    ] No camera update needed
[2026-08-31 00:22:02,866.866 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:22:02,870.870 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:22:02,876.876 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:22:02,883.883 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:22:04,925.925 INFO    ] ================================================
[2026-08-31 00:22:04,940.940 INFO    ] Launching Daemon at Mon Aug 31 00:22:04 IST 2026
[2026-08-31 00:22:04,951.951 INFO    ] ================================================
[2026-08-31 00:22:05,540.540 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:22:05
[2026-08-31 00:22:06,134.134 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:22:06,405.405 INFO    ] Initializing speech engine...
[2026-08-31 00:22:06,421.421 INFO    ] 2026-08-31 00:22:06
[2026-08-31 00:22:06,697.697 INFO    ] 2026-08-31 00:22:06
[2026-08-31 00:22:06,748.748 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:22:07,002.002 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:22:07,006.006 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:22:07,261.261 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:22:07,268.268 INFO    ] time= 31/08/2026 00:22:07
[2026-08-31 00:22:07,286.286 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:22:07,314.314 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:22:07,434.434 INFO    ] No existing commands found in stream
[2026-08-31 00:22:12,471.471 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:22:12,474.474 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-08-31 00:22:15,766.766 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 00:22:15,769.769 INFO    ] Checking for system updates...
[2026-08-31 00:22:15,805.805 INFO    ] 200
[2026-08-31 00:22:15,808.808 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:22:15,860.860 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:22:15,863.863 INFO    ] No update needed
[2026-08-31 00:22:15,865.865 INFO    ] Checking for camera pi updates...
[2026-08-31 00:22:15,900.900 INFO    ] 200
[2026-08-31 00:22:15,902.902 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:22:15,943.943 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:22:16,026.026 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:22:16,029.029 INFO    ] No camera update needed
[2026-08-31 00:22:16,031.031 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:22:16,034.034 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:22:16,039.039 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:22:16,044.044 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:22:18,085.085 INFO    ] ================================================
[2026-08-31 00:22:18,100.100 INFO    ] Launching Daemon at Mon Aug 31 00:22:18 IST 2026
[2026-08-31 00:22:18,111.111 INFO    ] ================================================
[2026-08-31 00:22:18,685.685 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:22:18
[2026-08-31 00:22:19,270.270 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:22:19,524.524 INFO    ] Initializing speech engine...
[2026-08-31 00:22:19,533.533 INFO    ] 2026-08-31 00:22:19
[2026-08-31 00:22:19,814.814 INFO    ] 2026-08-31 00:22:19
[2026-08-31 00:22:19,850.850 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:22:20,106.106 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:22:20,110.110 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:22:20,316.316 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:22:20,367.367 INFO    ] time= 31/08/2026 00:22:20
[2026-08-31 00:22:20,373.373 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:22:20,391.391 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:22:20,524.524 INFO    ] No existing commands found in stream
[2026-08-31 00:22:25,551.551 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:22:25,554.554 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-08-31 00:22:29,745.745 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 00:22:29,749.749 INFO    ] Checking for system updates...
[2026-08-31 00:22:29,797.797 INFO    ] 200
[2026-08-31 00:22:29,800.800 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:22:29,853.853 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:22:29,855.855 INFO    ] No update needed
[2026-08-31 00:22:29,858.858 INFO    ] Checking for camera pi updates...
[2026-08-31 00:22:29,893.893 INFO    ] 200
[2026-08-31 00:22:29,895.895 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:22:29,939.939 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:22:30,135.135 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:22:30,137.137 INFO    ] No camera update needed
[2026-08-31 00:22:30,140.140 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:22:30,142.142 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:22:30,148.148 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:22:30,153.153 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:22:32,193.193 INFO    ] ================================================
[2026-08-31 00:22:32,209.209 INFO    ] Launching Daemon at Mon Aug 31 00:22:32 IST 2026
[2026-08-31 00:22:32,220.220 INFO    ] ================================================
[2026-08-31 00:22:32,815.815 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:22:32
[2026-08-31 00:22:33,435.435 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:22:33,687.687 INFO    ] Initializing speech engine...
[2026-08-31 00:22:33,693.693 INFO    ] 2026-08-31 00:22:33
[2026-08-31 00:22:33,986.986 INFO    ] 2026-08-31 00:22:33
[2026-08-31 00:22:34,025.025 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:22:34,287.287 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:22:34,311.311 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:22:34,557.557 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:22:34,607.607 INFO    ] time= 31/08/2026 00:22:34
[2026-08-31 00:22:34,616.616 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:22:34,635.635 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:22:34,779.779 INFO    ] No existing commands found in stream
[2026-08-31 00:22:39,816.816 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:22:39,820.820 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-08-31 00:22:43,344.344 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 00:22:43,347.347 INFO    ] Checking for system updates...
[2026-08-31 00:22:43,382.382 INFO    ] 200
[2026-08-31 00:22:43,385.385 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:22:43,436.436 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:22:43,439.439 INFO    ] No update needed
[2026-08-31 00:22:43,442.442 INFO    ] Checking for camera pi updates...
[2026-08-31 00:22:43,478.478 INFO    ] 200
[2026-08-31 00:22:43,481.481 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:22:43,525.525 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:22:43,610.610 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:22:43,613.613 INFO    ] No camera update needed
[2026-08-31 00:22:43,615.615 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:22:43,617.617 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:22:43,623.623 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:22:43,628.628 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:22:45,668.668 INFO    ] ================================================
[2026-08-31 00:22:45,683.683 INFO    ] Launching Daemon at Mon Aug 31 00:22:45 IST 2026
[2026-08-31 00:22:45,694.694 INFO    ] ================================================
[2026-08-31 00:22:46,282.282 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:22:46
[2026-08-31 00:22:46,876.876 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:22:47,144.144 INFO    ] Initializing speech engine...
[2026-08-31 00:22:47,153.153 INFO    ] 2026-08-31 00:22:47
[2026-08-31 00:22:47,399.399 INFO    ] 2026-08-31 00:22:47
[2026-08-31 00:22:47,433.433 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:22:47,688.688 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:22:47,695.695 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:22:47,913.913 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:22:47,951.951 INFO    ] time= 31/08/2026 00:22:47
[2026-08-31 00:22:47,957.957 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:22:47,977.977 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:22:48,104.104 INFO    ] No existing commands found in stream
[2026-08-31 00:22:53,116.116 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:22:53,119.119 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-08-31 00:22:55,648.648 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 00:22:55,651.651 INFO    ] Checking for system updates...
[2026-08-31 00:22:55,692.692 INFO    ] 200
[2026-08-31 00:22:55,695.695 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:22:55,749.749 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:22:55,752.752 INFO    ] No update needed
[2026-08-31 00:22:55,754.754 INFO    ] Checking for camera pi updates...
[2026-08-31 00:22:55,789.789 INFO    ] 200
[2026-08-31 00:22:55,792.792 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:22:55,833.833 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:22:55,916.916 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:22:55,920.920 INFO    ] No camera update needed
[2026-08-31 00:22:55,922.922 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:22:55,925.925 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:22:55,931.931 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:22:55,936.936 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:22:57,979.979 INFO    ] ================================================
[2026-08-31 00:22:57,994.994 INFO    ] Launching Daemon at Mon Aug 31 00:22:57 IST 2026
[2026-08-31 00:22:58,005.005 INFO    ] ================================================
[2026-08-31 00:22:58,647.647 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:22:58
[2026-08-31 00:22:59,308.308 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:22:59,605.605 INFO    ] Initializing speech engine...
[2026-08-31 00:22:59,611.611 INFO    ] 2026-08-31 00:22:59
[2026-08-31 00:22:59,900.900 INFO    ] 2026-08-31 00:22:59
[2026-08-31 00:22:59,942.942 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:23:00,167.167 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:23:00,172.172 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:23:00,404.404 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:23:00,431.431 INFO    ] time= 31/08/2026 00:23:00
[2026-08-31 00:23:00,446.446 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:23:00,454.454 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:23:00,584.584 INFO    ] No existing commands found in stream
[2026-08-31 00:23:05,607.607 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:23:05,609.609 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-08-31 00:23:09,033.033 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 00:23:09,035.035 INFO    ] Checking for system updates...
[2026-08-31 00:23:09,075.075 INFO    ] 200
[2026-08-31 00:23:09,077.077 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:23:09,135.135 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:23:09,138.138 INFO    ] No update needed
[2026-08-31 00:23:09,140.140 INFO    ] Checking for camera pi updates...
[2026-08-31 00:23:09,178.178 INFO    ] 200
[2026-08-31 00:23:09,181.181 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:23:09,239.239 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:23:09,325.325 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:23:09,328.328 INFO    ] No camera update needed
[2026-08-31 00:23:09,330.330 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:23:09,333.333 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:23:09,339.339 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:23:09,344.344 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:23:11,384.384 INFO    ] ================================================
[2026-08-31 00:23:11,399.399 INFO    ] Launching Daemon at Mon Aug 31 00:23:11 IST 2026
[2026-08-31 00:23:11,410.410 INFO    ] ================================================
[2026-08-31 00:23:11,975.975 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:23:11
[2026-08-31 00:23:12,558.558 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:23:12,825.825 INFO    ] Initializing speech engine...
[2026-08-31 00:23:12,834.834 INFO    ] 2026-08-31 00:23:12
[2026-08-31 00:23:13,079.079 INFO    ] 2026-08-31 00:23:13
[2026-08-31 00:23:13,113.113 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:23:13,370.370 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:23:13,376.376 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:23:13,598.598 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:23:13,633.633 INFO    ] time= 31/08/2026 00:23:13
[2026-08-31 00:23:13,639.639 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:23:13,657.657 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:23:13,782.782 INFO    ] No existing commands found in stream
[2026-08-31 00:23:18,798.798 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:23:18,801.801 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-08-31 00:23:22,299.299 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 00:23:22,302.302 INFO    ] Checking for system updates...
[2026-08-31 00:23:22,341.341 INFO    ] 200
[2026-08-31 00:23:22,344.344 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:23:22,397.397 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:23:22,399.399 INFO    ] No update needed
[2026-08-31 00:23:22,401.401 INFO    ] Checking for camera pi updates...
[2026-08-31 00:23:22,435.435 INFO    ] 200
[2026-08-31 00:23:22,437.437 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:23:22,477.477 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:23:22,554.554 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:23:22,556.556 INFO    ] No camera update needed
[2026-08-31 00:23:22,559.559 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:23:22,561.561 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:23:22,566.566 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:23:22,571.571 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:23:24,612.612 INFO    ] ================================================
[2026-08-31 00:23:24,627.627 INFO    ] Launching Daemon at Mon Aug 31 00:23:24 IST 2026
[2026-08-31 00:23:24,638.638 INFO    ] ================================================
[2026-08-31 00:23:25,203.203 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:23:25
[2026-08-31 00:23:25,784.784 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:23:26,050.050 INFO    ] Initializing speech engine...
[2026-08-31 00:23:26,060.060 INFO    ] 2026-08-31 00:23:26
[2026-08-31 00:23:26,304.304 INFO    ] 2026-08-31 00:23:26
[2026-08-31 00:23:26,339.339 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:23:26,589.589 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:23:26,599.599 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:23:26,809.809 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:23:26,856.856 INFO    ] time= 31/08/2026 00:23:26
[2026-08-31 00:23:26,862.862 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:23:26,880.880 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:23:27,008.008 INFO    ] No existing commands found in stream
[2026-08-31 00:23:32,020.020 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:23:32,023.023 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-08-31 00:23:35,746.746 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 00:23:35,749.749 INFO    ] Checking for system updates...
[2026-08-31 00:23:35,784.784 INFO    ] 200
[2026-08-31 00:23:35,786.786 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:23:35,839.839 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:23:35,842.842 INFO    ] No update needed
[2026-08-31 00:23:35,844.844 INFO    ] Checking for camera pi updates...
[2026-08-31 00:23:35,877.877 INFO    ] 200
[2026-08-31 00:23:35,880.880 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:23:35,924.924 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:23:36,009.009 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:23:36,011.011 INFO    ] No camera update needed
[2026-08-31 00:23:36,013.013 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:23:36,016.016 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:23:36,021.021 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:23:36,026.026 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:23:38,065.065 INFO    ] ================================================
[2026-08-31 00:23:38,080.080 INFO    ] Launching Daemon at Mon Aug 31 00:23:38 IST 2026
[2026-08-31 00:23:38,092.092 INFO    ] ================================================
[2026-08-31 00:23:38,710.710 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:23:38
[2026-08-31 00:23:39,291.291 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:23:39,560.560 INFO    ] Initializing speech engine...
[2026-08-31 00:23:39,569.569 INFO    ] 2026-08-31 00:23:39
[2026-08-31 00:23:39,819.819 INFO    ] 2026-08-31 00:23:39
[2026-08-31 00:23:39,855.855 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:23:40,055.055 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:23:40,118.118 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:23:40,351.351 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:23:40,396.396 INFO    ] time= 31/08/2026 00:23:40
[2026-08-31 00:23:40,428.428 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:23:40,435.435 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:23:40,599.599 INFO    ] No existing commands found in stream
[2026-08-31 00:23:45,615.615 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:23:45,618.618 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-08-31 00:23:46,474.474 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 00:23:46,477.477 INFO    ] Checking for system updates...
[2026-08-31 00:23:46,516.516 INFO    ] 200
[2026-08-31 00:23:46,518.518 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:23:46,570.570 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:23:46,573.573 INFO    ] No update needed
[2026-08-31 00:23:46,575.575 INFO    ] Checking for camera pi updates...
[2026-08-31 00:23:46,612.612 INFO    ] 200
[2026-08-31 00:23:46,615.615 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:23:46,654.654 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:23:46,733.733 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:23:46,735.735 INFO    ] No camera update needed
[2026-08-31 00:23:46,738.738 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:23:46,740.740 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:23:46,745.745 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:23:46,750.750 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:23:48,792.792 INFO    ] ================================================
[2026-08-31 00:23:48,807.807 INFO    ] Launching Daemon at Mon Aug 31 00:23:48 IST 2026
[2026-08-31 00:23:48,819.819 INFO    ] ================================================
[2026-08-31 00:23:49,480.480 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:23:49
[2026-08-31 00:23:50,185.185 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:23:50,498.498 INFO    ] Initializing speech engine...
[2026-08-31 00:23:50,501.501 INFO    ] 2026-08-31 00:23:50
[2026-08-31 00:23:50,750.750 INFO    ] 2026-08-31 00:23:50
[2026-08-31 00:23:50,785.785 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:23:51,096.096 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:23:51,103.103 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:23:51,327.327 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:23:51,373.373 INFO    ] time= 31/08/2026 00:23:51
[2026-08-31 00:23:51,380.380 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:23:51,397.397 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:23:51,521.521 INFO    ] No existing commands found in stream
[2026-08-31 00:23:56,552.552 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:23:56,555.555 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-08-31 00:24:00,167.167 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 00:24:00,170.170 INFO    ] Checking for system updates...
[2026-08-31 00:24:00,213.213 INFO    ] 200
[2026-08-31 00:24:00,216.216 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:24:00,279.279 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:24:00,282.282 INFO    ] No update needed
[2026-08-31 00:24:00,285.285 INFO    ] Checking for camera pi updates...
[2026-08-31 00:24:00,320.320 INFO    ] 200
[2026-08-31 00:24:00,323.323 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:24:00,370.370 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:24:00,441.441 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:24:00,444.444 INFO    ] No camera update needed
[2026-08-31 00:24:00,446.446 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:24:00,448.448 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:24:00,453.453 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:24:00,458.458 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:24:02,504.504 INFO    ] ================================================
[2026-08-31 00:24:02,522.522 INFO    ] Launching Daemon at Mon Aug 31 00:24:02 IST 2026
[2026-08-31 00:24:02,542.542 INFO    ] ================================================
[2026-08-31 00:24:03,219.219 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:24:03
[2026-08-31 00:24:03,849.849 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:24:04,101.101 INFO    ] Initializing speech engine...
[2026-08-31 00:24:04,107.107 INFO    ] 2026-08-31 00:24:04
[2026-08-31 00:24:04,401.401 INFO    ] 2026-08-31 00:24:04
[2026-08-31 00:24:04,438.438 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:24:04,659.659 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:24:04,714.714 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:24:04,883.883 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:24:04,932.932 INFO    ] time= 31/08/2026 00:24:04
[2026-08-31 00:24:04,986.986 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:24:05,029.029 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:24:05,167.167 INFO    ] No existing commands found in stream
[2026-08-31 00:24:10,192.192 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:24:10,195.195 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-08-31 00:24:13,350.350 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 00:24:13,353.353 INFO    ] Checking for system updates...
[2026-08-31 00:24:13,389.389 INFO    ] 200
[2026-08-31 00:24:13,392.392 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:24:13,444.444 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:24:13,447.447 INFO    ] No update needed
[2026-08-31 00:24:13,450.450 INFO    ] Checking for camera pi updates...
[2026-08-31 00:24:13,486.486 INFO    ] 200
[2026-08-31 00:24:13,488.488 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:24:13,532.532 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:24:13,616.616 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:24:13,618.618 INFO    ] No camera update needed
[2026-08-31 00:24:13,621.621 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:24:13,623.623 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:24:13,628.628 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:24:13,633.633 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:24:15,673.673 INFO    ] ================================================
[2026-08-31 00:24:15,688.688 INFO    ] Launching Daemon at Mon Aug 31 00:24:15 IST 2026
[2026-08-31 00:24:15,699.699 INFO    ] ================================================
[2026-08-31 00:24:16,340.340 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:24:16
[2026-08-31 00:24:16,998.998 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:24:17,299.299 INFO    ] Initializing speech engine...
[2026-08-31 00:24:17,308.308 INFO    ] 2026-08-31 00:24:17
[2026-08-31 00:24:17,596.596 INFO    ] 2026-08-31 00:24:17
[2026-08-31 00:24:17,641.641 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:24:17,929.929 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:24:17,938.938 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:24:18,137.137 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:24:18,144.144 INFO    ] time= 31/08/2026 00:24:18
[2026-08-31 00:24:18,167.167 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:24:18,195.195 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:24:18,304.304 INFO    ] No existing commands found in stream
[2026-08-31 00:24:23,329.329 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:24:23,332.332 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-08-31 00:24:24,065.065 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 00:24:24,068.068 INFO    ] Checking for system updates...
[2026-08-31 00:24:24,104.104 INFO    ] 200
[2026-08-31 00:24:24,107.107 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:24:24,166.166 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:24:24,168.168 INFO    ] No update needed
[2026-08-31 00:24:24,171.171 INFO    ] Checking for camera pi updates...
[2026-08-31 00:24:24,207.207 INFO    ] 200
[2026-08-31 00:24:24,210.210 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:24:24,250.250 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:24:24,335.335 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:24:24,337.337 INFO    ] No camera update needed
[2026-08-31 00:24:24,340.340 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:24:24,342.342 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:24:24,347.347 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:24:24,352.352 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:24:26,391.391 INFO    ] ================================================
[2026-08-31 00:24:26,406.406 INFO    ] Launching Daemon at Mon Aug 31 00:24:26 IST 2026
[2026-08-31 00:24:26,417.417 INFO    ] ================================================
[2026-08-31 00:24:27,057.057 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:24:27
[2026-08-31 00:24:27,715.715 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:24:28,019.019 INFO    ] Initializing speech engine...
[2026-08-31 00:24:28,031.031 INFO    ] 2026-08-31 00:24:28
[2026-08-31 00:24:28,310.310 INFO    ] 2026-08-31 00:24:28
[2026-08-31 00:24:28,355.355 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:24:28,646.646 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:24:28,653.653 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:24:28,853.853 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:24:28,861.861 INFO    ] time= 31/08/2026 00:24:28
[2026-08-31 00:24:28,882.882 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:24:28,910.910 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:24:29,044.044 INFO    ] No existing commands found in stream
[2026-08-31 00:24:34,075.075 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:24:34,078.078 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-08-31 00:24:37,473.473 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 00:24:37,476.476 INFO    ] Checking for system updates...
[2026-08-31 00:24:37,513.513 INFO    ] 200
[2026-08-31 00:24:37,516.516 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:24:37,570.570 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:24:37,573.573 INFO    ] No update needed
[2026-08-31 00:24:37,575.575 INFO    ] Checking for camera pi updates...
[2026-08-31 00:24:37,612.612 INFO    ] 200
[2026-08-31 00:24:37,615.615 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:24:37,657.657 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:24:37,749.749 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:24:37,752.752 INFO    ] No camera update needed
[2026-08-31 00:24:37,755.755 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:24:37,757.757 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:24:37,763.763 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:24:37,769.769 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:24:39,812.812 INFO    ] ================================================
[2026-08-31 00:24:39,828.828 INFO    ] Launching Daemon at Mon Aug 31 00:24:39 IST 2026
[2026-08-31 00:24:39,838.838 INFO    ] ================================================
[2026-08-31 00:24:40,477.477 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:24:40
[2026-08-31 00:24:41,131.131 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:24:41,428.428 INFO    ] Initializing speech engine...
[2026-08-31 00:24:41,436.436 INFO    ] 2026-08-31 00:24:41
[2026-08-31 00:24:41,722.722 INFO    ] 2026-08-31 00:24:41
[2026-08-31 00:24:41,767.767 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:24:42,051.051 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:24:42,058.058 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:24:42,250.250 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:24:42,269.269 INFO    ] time= 31/08/2026 00:24:42
[2026-08-31 00:24:42,278.278 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:24:42,304.304 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:24:42,410.410 INFO    ] No existing commands found in stream
[2026-08-31 00:24:47,431.431 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:24:47,434.434 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-08-31 00:24:50,707.707 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 00:24:50,710.710 INFO    ] Checking for system updates...
[2026-08-31 00:24:50,747.747 INFO    ] 200
[2026-08-31 00:24:50,750.750 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:24:50,803.803 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:24:50,806.806 INFO    ] No update needed
[2026-08-31 00:24:50,809.809 INFO    ] Checking for camera pi updates...
[2026-08-31 00:24:50,843.843 INFO    ] 200
[2026-08-31 00:24:50,846.846 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:24:50,891.891 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:24:50,977.977 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:24:50,980.980 INFO    ] No camera update needed
[2026-08-31 00:24:50,983.983 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:24:50,985.985 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:24:50,991.991 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:24:50,997.997 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:24:53,038.038 INFO    ] ================================================
[2026-08-31 00:24:53,054.054 INFO    ] Launching Daemon at Mon Aug 31 00:24:53 IST 2026
[2026-08-31 00:24:53,065.065 INFO    ] ================================================
[2026-08-31 00:24:53,631.631 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:24:53
[2026-08-31 00:24:54,212.212 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:24:54,459.459 INFO    ] Initializing speech engine...
[2026-08-31 00:24:54,481.481 INFO    ] 2026-08-31 00:24:54
[2026-08-31 00:24:54,746.746 INFO    ] 2026-08-31 00:24:54
[2026-08-31 00:24:54,783.783 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:24:54,988.988 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:24:55,005.005 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:24:55,228.228 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:24:55,250.250 INFO    ] time= 31/08/2026 00:24:55
[2026-08-31 00:24:55,304.304 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:24:55,358.358 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:24:55,511.511 INFO    ] No existing commands found in stream
[2026-08-31 00:25:00,528.528 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:25:00,531.531 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-08-31 00:25:04,806.806 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 00:25:04,809.809 INFO    ] Checking for system updates...
[2026-08-31 00:25:04,844.844 INFO    ] 200
[2026-08-31 00:25:04,846.846 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:25:04,904.904 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:25:04,906.906 INFO    ] No update needed
[2026-08-31 00:25:04,908.908 INFO    ] Checking for camera pi updates...
[2026-08-31 00:25:04,942.942 INFO    ] 200
[2026-08-31 00:25:04,945.945 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:25:04,987.987 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:25:05,064.064 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:25:05,067.067 INFO    ] No camera update needed
[2026-08-31 00:25:05,077.077 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:25:05,080.080 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:25:05,086.086 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:25:05,092.092 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:25:07,134.134 INFO    ] ================================================
[2026-08-31 00:25:07,149.149 INFO    ] Launching Daemon at Mon Aug 31 00:25:07 IST 2026
[2026-08-31 00:25:07,160.160 INFO    ] ================================================
[2026-08-31 00:25:07,764.764 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:25:07
[2026-08-31 00:25:08,345.345 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:25:08,611.611 INFO    ] Initializing speech engine...
[2026-08-31 00:25:08,620.620 INFO    ] 2026-08-31 00:25:08
[2026-08-31 00:25:08,865.865 INFO    ] 2026-08-31 00:25:08
[2026-08-31 00:25:08,901.901 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:25:09,151.151 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:25:09,160.160 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:25:09,391.391 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:25:09,415.415 INFO    ] time= 31/08/2026 00:25:09
[2026-08-31 00:25:09,421.421 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:25:09,439.439 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:25:09,583.583 INFO    ] No existing commands found in stream
[2026-08-31 00:25:14,614.614 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:25:14,617.617 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-08-31 00:25:18,794.794 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 00:25:18,796.796 INFO    ] Checking for system updates...
[2026-08-31 00:25:18,832.832 INFO    ] 200
[2026-08-31 00:25:18,834.834 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:25:18,887.887 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:25:18,889.889 INFO    ] No update needed
[2026-08-31 00:25:18,892.892 INFO    ] Checking for camera pi updates...
[2026-08-31 00:25:18,925.925 INFO    ] 200
[2026-08-31 00:25:18,928.928 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:25:18,968.968 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:25:19,069.069 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:25:19,072.072 INFO    ] No camera update needed
[2026-08-31 00:25:19,074.074 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:25:19,076.076 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:25:19,082.082 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:25:19,086.086 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:25:21,128.128 INFO    ] ================================================
[2026-08-31 00:25:21,143.143 INFO    ] Launching Daemon at Mon Aug 31 00:25:21 IST 2026
[2026-08-31 00:25:21,154.154 INFO    ] ================================================
[2026-08-31 00:25:21,733.733 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:25:21
[2026-08-31 00:25:22,339.339 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:25:22,617.617 INFO    ] Initializing speech engine...
[2026-08-31 00:25:22,623.623 INFO    ] 2026-08-31 00:25:22
[2026-08-31 00:25:22,884.884 INFO    ] 2026-08-31 00:25:22
[2026-08-31 00:25:22,938.938 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:25:23,225.225 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:25:23,233.233 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:25:23,425.425 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:25:23,444.444 INFO    ] time= 31/08/2026 00:25:23
[2026-08-31 00:25:23,471.471 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:25:23,480.480 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:25:23,623.623 INFO    ] No existing commands found in stream
[2026-08-31 00:25:28,648.648 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:25:28,651.651 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-08-31 00:25:32,956.956 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 00:25:32,959.959 INFO    ] Checking for system updates...
[2026-08-31 00:25:33,001.001 INFO    ] 200
[2026-08-31 00:25:33,004.004 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:25:33,060.060 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:25:33,062.062 INFO    ] No update needed
[2026-08-31 00:25:33,065.065 INFO    ] Checking for camera pi updates...
[2026-08-31 00:25:33,104.104 INFO    ] 200
[2026-08-31 00:25:33,107.107 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:25:33,157.157 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:25:33,260.260 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:25:33,262.262 INFO    ] No camera update needed
[2026-08-31 00:25:33,265.265 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:25:33,267.267 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:25:33,272.272 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:25:33,277.277 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:25:35,320.320 INFO    ] ================================================
[2026-08-31 00:25:35,335.335 INFO    ] Launching Daemon at Mon Aug 31 00:25:35 IST 2026
[2026-08-31 00:25:35,346.346 INFO    ] ================================================
[2026-08-31 00:25:35,929.929 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:25:35
[2026-08-31 00:25:36,527.527 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:25:36,804.804 INFO    ] Initializing speech engine...
[2026-08-31 00:25:36,810.810 INFO    ] 2026-08-31 00:25:36
[2026-08-31 00:25:37,071.071 INFO    ] 2026-08-31 00:25:37
[2026-08-31 00:25:37,125.125 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:25:37,411.411 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:25:37,418.418 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:25:37,610.610 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:25:37,626.626 INFO    ] time= 31/08/2026 00:25:37
[2026-08-31 00:25:37,635.635 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:25:37,661.661 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:25:37,766.766 INFO    ] No existing commands found in stream
[2026-08-31 00:25:42,778.778 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:25:42,781.781 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-08-31 00:25:46,831.831 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 00:25:46,834.834 INFO    ] Checking for system updates...
[2026-08-31 00:25:46,870.870 INFO    ] 200
[2026-08-31 00:25:46,872.872 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:25:46,924.924 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:25:46,927.927 INFO    ] No update needed
[2026-08-31 00:25:46,929.929 INFO    ] Checking for camera pi updates...
[2026-08-31 00:25:46,966.966 INFO    ] 200
[2026-08-31 00:25:46,969.969 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:25:47,009.009 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:25:47,091.091 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:25:47,094.094 INFO    ] No camera update needed
[2026-08-31 00:25:47,096.096 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:25:47,098.098 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:25:47,104.104 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:25:47,109.109 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:25:49,151.151 INFO    ] ================================================
[2026-08-31 00:25:49,166.166 INFO    ] Launching Daemon at Mon Aug 31 00:25:49 IST 2026
[2026-08-31 00:25:49,177.177 INFO    ] ================================================
[2026-08-31 00:25:49,818.818 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:25:49
[2026-08-31 00:25:50,479.479 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:25:50,783.783 INFO    ] Initializing speech engine...
[2026-08-31 00:25:50,795.795 INFO    ] 2026-08-31 00:25:50
[2026-08-31 00:25:51,072.072 INFO    ] 2026-08-31 00:25:51
[2026-08-31 00:25:51,116.116 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:25:51,396.396 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:25:51,405.405 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:25:51,601.601 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:25:51,618.618 INFO    ] time= 31/08/2026 00:25:51
[2026-08-31 00:25:51,649.649 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:25:51,658.658 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:25:51,783.783 INFO    ] No existing commands found in stream
[2026-08-31 00:25:56,814.814 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:25:56,817.817 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-08-31 00:25:58,714.714 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 00:25:58,717.717 INFO    ] Checking for system updates...
[2026-08-31 00:25:58,753.753 INFO    ] 200
[2026-08-31 00:25:58,756.756 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:25:58,810.810 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:25:58,813.813 INFO    ] No update needed
[2026-08-31 00:25:58,816.816 INFO    ] Checking for camera pi updates...
[2026-08-31 00:25:58,850.850 INFO    ] 200
[2026-08-31 00:25:58,853.853 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:25:58,895.895 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:25:58,983.983 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:25:58,986.986 INFO    ] No camera update needed
[2026-08-31 00:25:58,988.988 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:25:58,991.991 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:25:58,997.997 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:25:59,003.003 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:26:01,055.055 INFO    ] ================================================
[2026-08-31 00:26:01,103.103 INFO    ] Launching Daemon at Mon Aug 31 00:26:01 IST 2026
[2026-08-31 00:26:01,143.143 INFO    ] ================================================
[2026-08-31 00:26:01,892.892 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:26:01
[2026-08-31 00:26:02,636.636 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:26:02,957.957 INFO    ] Initializing speech engine...
[2026-08-31 00:26:02,971.971 INFO    ] 2026-08-31 00:26:02
[2026-08-31 00:26:03,252.252 INFO    ] 2026-08-31 00:26:03
[2026-08-31 00:26:03,295.295 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:26:03,581.581 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:26:03,590.590 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:26:03,781.781 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:26:03,799.799 INFO    ] time= 31/08/2026 00:26:03
[2026-08-31 00:26:03,824.824 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:26:03,837.837 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:26:03,970.970 INFO    ] No existing commands found in stream
[2026-08-31 00:26:09,006.006 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:26:09,009.009 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-08-31 00:26:10,954.954 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 00:26:10,957.957 INFO    ] Checking for system updates...
[2026-08-31 00:26:10,994.994 INFO    ] 200
[2026-08-31 00:26:10,996.996 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:26:11,053.053 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:26:11,056.056 INFO    ] No update needed
[2026-08-31 00:26:11,059.059 INFO    ] Checking for camera pi updates...
[2026-08-31 00:26:11,092.092 INFO    ] 200
[2026-08-31 00:26:11,095.095 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:26:11,136.136 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:26:11,222.222 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:26:11,225.225 INFO    ] No camera update needed
[2026-08-31 00:26:11,227.227 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:26:11,230.230 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:26:11,237.237 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:26:11,243.243 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:26:13,284.284 INFO    ] ================================================
[2026-08-31 00:26:13,299.299 INFO    ] Launching Daemon at Mon Aug 31 00:26:13 IST 2026
[2026-08-31 00:26:13,310.310 INFO    ] ================================================
[2026-08-31 00:26:13,880.880 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:26:13
[2026-08-31 00:26:14,467.467 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:26:14,715.715 INFO    ] Initializing speech engine...
[2026-08-31 00:26:14,729.729 INFO    ] 2026-08-31 00:26:14
[2026-08-31 00:26:14,995.995 INFO    ] 2026-08-31 00:26:14
[2026-08-31 00:26:15,031.031 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:26:15,298.298 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:26:15,318.318 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:26:15,541.541 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:26:15,560.560 INFO    ] time= 31/08/2026 00:26:15
[2026-08-31 00:26:15,578.578 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:26:15,606.606 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:26:15,731.731 INFO    ] No existing commands found in stream
[2026-08-31 00:26:20,756.756 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:26:20,759.759 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-08-31 00:26:23,366.366 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 00:26:23,369.369 INFO    ] Checking for system updates...
[2026-08-31 00:26:23,405.405 INFO    ] 200
[2026-08-31 00:26:23,407.407 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:26:23,460.460 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:26:23,463.463 INFO    ] No update needed
[2026-08-31 00:26:23,465.465 INFO    ] Checking for camera pi updates...
[2026-08-31 00:26:23,498.498 INFO    ] 200
[2026-08-31 00:26:23,500.500 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:26:23,544.544 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:26:23,647.647 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:26:23,650.650 INFO    ] No camera update needed
[2026-08-31 00:26:23,652.652 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:26:23,655.655 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:26:23,660.660 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:26:23,670.670 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:26:25,713.713 INFO    ] ================================================
[2026-08-31 00:26:25,727.727 INFO    ] Launching Daemon at Mon Aug 31 00:26:25 IST 2026
[2026-08-31 00:26:25,738.738 INFO    ] ================================================
[2026-08-31 00:26:26,309.309 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:26:26
[2026-08-31 00:26:26,898.898 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:26:27,149.149 INFO    ] Initializing speech engine...
[2026-08-31 00:26:27,172.172 INFO    ] 2026-08-31 00:26:27
[2026-08-31 00:26:27,432.432 INFO    ] 2026-08-31 00:26:27
[2026-08-31 00:26:27,476.476 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:26:27,732.732 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:26:27,738.738 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:26:27,981.981 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:26:27,998.998 INFO    ] time= 31/08/2026 00:26:27
[2026-08-31 00:26:28,020.020 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:26:28,048.048 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:26:28,163.163 INFO    ] No existing commands found in stream
[2026-08-31 00:26:33,189.189 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:26:33,192.192 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-08-31 00:26:37,494.494 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 00:26:37,496.496 INFO    ] Checking for system updates...
[2026-08-31 00:26:37,532.532 INFO    ] 200
[2026-08-31 00:26:37,534.534 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:26:37,587.587 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:26:37,589.589 INFO    ] No update needed
[2026-08-31 00:26:37,592.592 INFO    ] Checking for camera pi updates...
[2026-08-31 00:26:37,624.624 INFO    ] 200
[2026-08-31 00:26:37,627.627 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:26:37,671.671 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:26:37,869.869 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:26:37,872.872 INFO    ] No camera update needed
[2026-08-31 00:26:37,874.874 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:26:37,876.876 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:26:37,882.882 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:26:37,886.886 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:26:39,928.928 INFO    ] ================================================
[2026-08-31 00:26:39,943.943 INFO    ] Launching Daemon at Mon Aug 31 00:26:39 IST 2026
[2026-08-31 00:26:39,953.953 INFO    ] ================================================
[2026-08-31 00:26:40,526.526 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:26:40
[2026-08-31 00:26:41,112.112 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:26:41,364.364 INFO    ] Initializing speech engine...
[2026-08-31 00:26:41,373.373 INFO    ] 2026-08-31 00:26:41
[2026-08-31 00:26:41,661.661 INFO    ] 2026-08-31 00:26:41
[2026-08-31 00:26:41,698.698 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:26:41,913.913 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:26:41,923.923 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:26:42,137.137 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:26:42,159.159 INFO    ] time= 31/08/2026 00:26:42
[2026-08-31 00:26:42,219.219 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:26:42,278.278 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:26:42,419.419 INFO    ] No existing commands found in stream
[2026-08-31 00:26:47,445.445 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:26:47,447.447 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-08-31 00:26:48,646.646 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 00:26:48,649.649 INFO    ] Checking for system updates...
[2026-08-31 00:26:48,687.687 INFO    ] 200
[2026-08-31 00:26:48,689.689 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:26:48,741.741 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:26:48,743.743 INFO    ] No update needed
[2026-08-31 00:26:48,746.746 INFO    ] Checking for camera pi updates...
[2026-08-31 00:26:48,779.779 INFO    ] 200
[2026-08-31 00:26:48,781.781 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:26:48,822.822 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:26:48,900.900 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:26:48,902.902 INFO    ] No camera update needed
[2026-08-31 00:26:48,904.904 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:26:48,906.906 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:26:48,912.912 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:26:48,917.917 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:26:50,960.960 INFO    ] ================================================
[2026-08-31 00:26:50,976.976 INFO    ] Launching Daemon at Mon Aug 31 00:26:50 IST 2026
[2026-08-31 00:26:50,988.988 INFO    ] ================================================
[2026-08-31 00:26:51,551.551 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:26:51
[2026-08-31 00:26:52,136.136 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:26:52,406.406 INFO    ] Initializing speech engine...
[2026-08-31 00:26:52,415.415 INFO    ] 2026-08-31 00:26:52
[2026-08-31 00:26:52,667.667 INFO    ] 2026-08-31 00:26:52
[2026-08-31 00:26:52,702.702 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:26:52,909.909 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:26:52,964.964 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:26:53,107.107 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:26:53,147.147 INFO    ] time= 31/08/2026 00:26:53
[2026-08-31 00:26:53,196.196 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:26:53,242.242 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:26:53,379.379 INFO    ] No existing commands found in stream
[2026-08-31 00:26:58,402.402 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:26:58,405.405 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-08-31 00:27:01,516.516 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 00:27:01,519.519 INFO    ] Checking for system updates...
[2026-08-31 00:27:01,563.563 INFO    ] 200
[2026-08-31 00:27:01,566.566 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:27:01,625.625 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:27:01,628.628 INFO    ] No update needed
[2026-08-31 00:27:01,631.631 INFO    ] Checking for camera pi updates...
[2026-08-31 00:27:01,673.673 INFO    ] 200
[2026-08-31 00:27:01,676.676 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:27:01,722.722 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:27:01,778.778 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:27:01,782.782 INFO    ] No camera update needed
[2026-08-31 00:27:01,786.786 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:27:01,789.789 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:27:01,797.797 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:27:01,804.804 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:27:03,845.845 INFO    ] ================================================
[2026-08-31 00:27:03,860.860 INFO    ] Launching Daemon at Mon Aug 31 00:27:03 IST 2026
[2026-08-31 00:27:03,870.870 INFO    ] ================================================
[2026-08-31 00:27:04,480.480 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:27:04
[2026-08-31 00:27:05,079.079 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:27:05,364.364 INFO    ] Initializing speech engine...
[2026-08-31 00:27:05,382.382 INFO    ] 2026-08-31 00:27:05
[2026-08-31 00:27:05,690.690 INFO    ] 2026-08-31 00:27:05
[2026-08-31 00:27:05,775.775 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:27:05,987.987 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:27:05,992.992 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:27:06,175.175 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:27:06,179.179 INFO    ] time= 31/08/2026 00:27:06
[2026-08-31 00:27:06,225.225 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:27:06,243.243 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:27:06,376.376 INFO    ] No existing commands found in stream
[2026-08-31 00:27:11,385.385 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:27:11,388.388 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-08-31 00:27:12,408.408 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 00:27:12,411.411 INFO    ] Checking for system updates...
[2026-08-31 00:27:12,447.447 INFO    ] 200
[2026-08-31 00:27:12,450.450 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:27:12,508.508 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:27:12,511.511 INFO    ] No update needed
[2026-08-31 00:27:12,514.514 INFO    ] Checking for camera pi updates...
[2026-08-31 00:27:12,553.553 INFO    ] 200
[2026-08-31 00:27:12,555.555 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:27:12,597.597 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:27:12,678.678 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:27:12,680.680 INFO    ] No camera update needed
[2026-08-31 00:27:12,683.683 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:27:12,685.685 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:27:12,690.690 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:27:12,696.696 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:27:14,734.734 INFO    ] ================================================
[2026-08-31 00:27:14,749.749 INFO    ] Launching Daemon at Mon Aug 31 00:27:14 IST 2026
[2026-08-31 00:27:14,760.760 INFO    ] ================================================
[2026-08-31 00:27:15,325.325 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:27:15
[2026-08-31 00:27:15,906.906 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:27:16,165.165 INFO    ] Initializing speech engine...
[2026-08-31 00:27:16,180.180 INFO    ] 2026-08-31 00:27:16
[2026-08-31 00:27:16,439.439 INFO    ] 2026-08-31 00:27:16
[2026-08-31 00:27:16,473.473 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:27:16,736.736 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:27:16,740.740 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:27:16,873.873 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:27:16,915.915 INFO    ] time= 31/08/2026 00:27:16
[2026-08-31 00:27:16,979.979 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:27:17,011.011 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:27:17,128.128 INFO    ] No existing commands found in stream
[2026-08-31 00:27:22,158.158 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:27:22,161.161 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-08-31 00:27:22,788.788 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 00:27:22,791.791 INFO    ] Checking for system updates...
[2026-08-31 00:27:22,829.829 INFO    ] 200
[2026-08-31 00:27:22,832.832 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:27:22,883.883 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:27:22,886.886 INFO    ] No update needed
[2026-08-31 00:27:22,888.888 INFO    ] Checking for camera pi updates...
[2026-08-31 00:27:22,922.922 INFO    ] 200
[2026-08-31 00:27:22,924.924 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:27:22,964.964 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:27:23,046.046 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:27:23,049.049 INFO    ] No camera update needed
[2026-08-31 00:27:23,051.051 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:27:23,054.054 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:27:23,059.059 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:27:23,064.064 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:27:25,104.104 INFO    ] ================================================
[2026-08-31 00:27:25,119.119 INFO    ] Launching Daemon at Mon Aug 31 00:27:25 IST 2026
[2026-08-31 00:27:25,130.130 INFO    ] ================================================
[2026-08-31 00:27:25,761.761 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:27:25
[2026-08-31 00:27:26,354.354 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:27:26,624.624 INFO    ] Initializing speech engine...
[2026-08-31 00:27:26,633.633 INFO    ] 2026-08-31 00:27:26
[2026-08-31 00:27:26,889.889 INFO    ] 2026-08-31 00:27:26
[2026-08-31 00:27:26,943.943 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:27:27,170.170 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:27:27,175.175 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:27:27,394.394 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:27:27,432.432 INFO    ] time= 31/08/2026 00:27:27
[2026-08-31 00:27:27,447.447 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:27:27,454.454 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:27:27,586.586 INFO    ] No existing commands found in stream
[2026-08-31 00:27:32,608.608 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:27:32,611.611 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-08-31 00:27:33,954.954 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 00:27:33,957.957 INFO    ] Checking for system updates...
[2026-08-31 00:27:33,992.992 INFO    ] 200
[2026-08-31 00:27:33,995.995 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:27:34,046.046 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:27:34,049.049 INFO    ] No update needed
[2026-08-31 00:27:34,051.051 INFO    ] Checking for camera pi updates...
[2026-08-31 00:27:34,084.084 INFO    ] 200
[2026-08-31 00:27:34,086.086 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:27:34,128.128 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:27:34,231.231 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:27:34,233.233 INFO    ] No camera update needed
[2026-08-31 00:27:34,236.236 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:27:34,238.238 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:27:34,243.243 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:27:34,249.249 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:27:36,291.291 INFO    ] ================================================
[2026-08-31 00:27:36,307.307 INFO    ] Launching Daemon at Mon Aug 31 00:27:36 IST 2026
[2026-08-31 00:27:36,318.318 INFO    ] ================================================
[2026-08-31 00:27:36,888.888 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:27:36
[2026-08-31 00:27:37,472.472 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:27:37,741.741 INFO    ] Initializing speech engine...
[2026-08-31 00:27:37,750.750 INFO    ] 2026-08-31 00:27:37
[2026-08-31 00:27:37,997.997 INFO    ] 2026-08-31 00:27:37
[2026-08-31 00:27:38,032.032 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:27:38,283.283 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:27:38,292.292 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:27:38,514.514 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:27:38,551.551 INFO    ] time= 31/08/2026 00:27:38
[2026-08-31 00:27:38,557.557 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:27:38,575.575 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:27:38,706.706 INFO    ] No existing commands found in stream
[2026-08-31 00:27:43,721.721 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:27:43,724.724 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-08-31 00:27:47,167.167 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 00:27:47,170.170 INFO    ] Checking for system updates...
[2026-08-31 00:27:47,208.208 INFO    ] 200
[2026-08-31 00:27:47,210.210 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:27:47,264.264 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:27:47,266.266 INFO    ] No update needed
[2026-08-31 00:27:47,269.269 INFO    ] Checking for camera pi updates...
[2026-08-31 00:27:47,305.305 INFO    ] 200
[2026-08-31 00:27:47,308.308 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:27:47,349.349 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:27:47,437.437 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:27:47,440.440 INFO    ] No camera update needed
[2026-08-31 00:27:47,442.442 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:27:47,444.444 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:27:47,450.450 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:27:47,455.455 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:27:49,494.494 INFO    ] ================================================
[2026-08-31 00:27:49,510.510 INFO    ] Launching Daemon at Mon Aug 31 00:27:49 IST 2026
[2026-08-31 00:27:49,521.521 INFO    ] ================================================
[2026-08-31 00:27:50,088.088 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:27:50
[2026-08-31 00:27:50,672.672 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:27:50,941.941 INFO    ] Initializing speech engine...
[2026-08-31 00:27:50,950.950 INFO    ] 2026-08-31 00:27:50
[2026-08-31 00:27:51,196.196 INFO    ] 2026-08-31 00:27:51
[2026-08-31 00:27:51,262.262 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:27:51,484.484 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:27:51,494.494 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:27:51,742.742 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:27:51,753.753 INFO    ] time= 31/08/2026 00:27:51
[2026-08-31 00:27:51,771.771 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:27:51,798.798 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:27:51,929.929 INFO    ] No existing commands found in stream
[2026-08-31 00:27:56,959.959 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:27:56,962.962 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-08-31 00:28:00,104.104 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 00:28:00,107.107 INFO    ] Checking for system updates...
[2026-08-31 00:28:00,146.146 INFO    ] 200
[2026-08-31 00:28:00,148.148 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:28:00,205.205 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:28:00,208.208 INFO    ] No update needed
[2026-08-31 00:28:00,210.210 INFO    ] Checking for camera pi updates...
[2026-08-31 00:28:00,243.243 INFO    ] 200
[2026-08-31 00:28:00,246.246 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:28:00,286.286 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:28:00,387.387 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:28:00,390.390 INFO    ] No camera update needed
[2026-08-31 00:28:00,392.392 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:28:00,394.394 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:28:00,399.399 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:28:00,404.404 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:28:02,457.457 INFO    ] ================================================
[2026-08-31 00:28:02,482.482 INFO    ] Launching Daemon at Mon Aug 31 00:28:02 IST 2026
[2026-08-31 00:28:02,495.495 INFO    ] ================================================
[2026-08-31 00:28:03,103.103 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:28:03
[2026-08-31 00:28:03,686.686 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:28:03,955.955 INFO    ] Initializing speech engine...
[2026-08-31 00:28:03,960.960 INFO    ] 2026-08-31 00:28:03
[2026-08-31 00:28:04,206.206 INFO    ] 2026-08-31 00:28:04
[2026-08-31 00:28:04,242.242 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:28:04,621.621 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:28:04,663.663 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:28:04,900.900 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:28:04,948.948 INFO    ] time= 31/08/2026 00:28:04
[2026-08-31 00:28:05,005.005 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:28:05,063.063 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:28:05,203.203 INFO    ] No existing commands found in stream
[2026-08-31 00:28:10,212.212 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:28:10,215.215 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-08-31 00:28:13,231.231 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 00:28:13,234.234 INFO    ] Checking for system updates...
[2026-08-31 00:28:13,269.269 INFO    ] 200
[2026-08-31 00:28:13,272.272 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:28:13,323.323 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:28:13,326.326 INFO    ] No update needed
[2026-08-31 00:28:13,328.328 INFO    ] Checking for camera pi updates...
[2026-08-31 00:28:13,362.362 INFO    ] 200
[2026-08-31 00:28:13,364.364 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:28:13,410.410 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:28:13,493.493 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:28:13,495.495 INFO    ] No camera update needed
[2026-08-31 00:28:13,497.497 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:28:13,500.500 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:28:13,505.505 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:28:13,510.510 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:28:15,550.550 INFO    ] ================================================
[2026-08-31 00:28:15,568.568 INFO    ] Launching Daemon at Mon Aug 31 00:28:15 IST 2026
[2026-08-31 00:28:15,579.579 INFO    ] ================================================
[2026-08-31 00:28:16,224.224 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:28:16
[2026-08-31 00:28:16,900.900 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:28:17,198.198 INFO    ] Initializing speech engine...
[2026-08-31 00:28:17,205.205 INFO    ] 2026-08-31 00:28:17
[2026-08-31 00:28:17,477.477 INFO    ] 2026-08-31 00:28:17
[2026-08-31 00:28:17,533.533 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:28:17,822.822 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:28:17,830.830 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:28:18,024.024 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:28:18,043.043 INFO    ] time= 31/08/2026 00:28:18
[2026-08-31 00:28:18,060.060 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:28:18,080.080 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:28:18,221.221 INFO    ] No existing commands found in stream
[2026-08-31 00:28:23,247.247 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:28:23,250.250 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-08-31 00:28:24,350.350 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 00:28:24,353.353 INFO    ] Checking for system updates...
[2026-08-31 00:28:24,389.389 INFO    ] 200
[2026-08-31 00:28:24,392.392 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:28:24,451.451 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:28:24,453.453 INFO    ] No update needed
[2026-08-31 00:28:24,456.456 INFO    ] Checking for camera pi updates...
[2026-08-31 00:28:24,492.492 INFO    ] 200
[2026-08-31 00:28:24,494.494 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:28:24,534.534 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:28:24,611.611 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:28:24,613.613 INFO    ] No camera update needed
[2026-08-31 00:28:24,615.615 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:28:24,618.618 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:28:24,623.623 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:28:24,628.628 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:28:26,668.668 INFO    ] ================================================
[2026-08-31 00:28:26,683.683 INFO    ] Launching Daemon at Mon Aug 31 00:28:26 IST 2026
[2026-08-31 00:28:26,694.694 INFO    ] ================================================
[2026-08-31 00:28:27,261.261 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:28:27
[2026-08-31 00:28:27,843.843 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:28:28,105.105 INFO    ] Initializing speech engine...
[2026-08-31 00:28:28,118.118 INFO    ] 2026-08-31 00:28:28
[2026-08-31 00:28:28,363.363 INFO    ] 2026-08-31 00:28:28
[2026-08-31 00:28:28,408.408 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:28:28,653.653 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:28:28,663.663 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:28:28,870.870 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:28:28,909.909 INFO    ] time= 31/08/2026 00:28:28
[2026-08-31 00:28:28,944.944 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:28:28,961.961 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:28:29,087.087 INFO    ] No existing commands found in stream
[2026-08-31 00:28:34,117.117 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:28:34,120.120 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-08-31 00:28:35,866.866 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 00:28:35,868.868 INFO    ] Checking for system updates...
[2026-08-31 00:28:35,906.906 INFO    ] 200
[2026-08-31 00:28:35,909.909 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:28:35,961.961 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:28:35,963.963 INFO    ] No update needed
[2026-08-31 00:28:35,966.966 INFO    ] Checking for camera pi updates...
[2026-08-31 00:28:35,999.999 INFO    ] 200
[2026-08-31 00:28:36,002.002 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:28:36,048.048 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:28:36,128.128 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:28:36,130.130 INFO    ] No camera update needed
[2026-08-31 00:28:36,132.132 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:28:36,135.135 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:28:36,140.140 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:28:36,145.145 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:28:38,185.185 INFO    ] ================================================
[2026-08-31 00:28:38,200.200 INFO    ] Launching Daemon at Mon Aug 31 00:28:38 IST 2026
[2026-08-31 00:28:38,210.210 INFO    ] ================================================
[2026-08-31 00:28:38,788.788 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:28:38
[2026-08-31 00:28:39,382.382 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:28:39,663.663 INFO    ] Initializing speech engine...
[2026-08-31 00:28:39,672.672 INFO    ] 2026-08-31 00:28:39
[2026-08-31 00:28:39,933.933 INFO    ] 2026-08-31 00:28:39
[2026-08-31 00:28:39,970.970 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:28:40,247.247 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:28:40,256.256 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:28:40,502.502 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:28:40,538.538 INFO    ] time= 31/08/2026 00:28:40
[2026-08-31 00:28:40,544.544 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:28:40,563.563 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:28:40,702.702 INFO    ] No existing commands found in stream
[2026-08-31 00:28:45,717.717 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:28:45,720.720 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-08-31 00:28:48,446.446 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 00:28:48,449.449 INFO    ] Checking for system updates...
[2026-08-31 00:28:48,485.485 INFO    ] 200
[2026-08-31 00:28:48,487.487 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:28:48,539.539 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:28:48,542.542 INFO    ] No update needed
[2026-08-31 00:28:48,544.544 INFO    ] Checking for camera pi updates...
[2026-08-31 00:28:48,577.577 INFO    ] 200
[2026-08-31 00:28:48,580.580 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:28:48,621.621 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:28:48,798.798 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:28:48,801.801 INFO    ] No camera update needed
[2026-08-31 00:28:48,803.803 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:28:48,805.805 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:28:48,811.811 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:28:48,816.816 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:28:50,855.855 INFO    ] ================================================
[2026-08-31 00:28:50,870.870 INFO    ] Launching Daemon at Mon Aug 31 00:28:50 IST 2026
[2026-08-31 00:28:50,881.881 INFO    ] ================================================
[2026-08-31 00:28:51,447.447 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:28:51
[2026-08-31 00:28:52,032.032 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:28:52,298.298 INFO    ] Initializing speech engine...
[2026-08-31 00:28:52,307.307 INFO    ] 2026-08-31 00:28:52
[2026-08-31 00:28:52,558.558 INFO    ] 2026-08-31 00:28:52
[2026-08-31 00:28:52,593.593 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:28:52,850.850 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:28:52,859.859 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:28:53,103.103 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:28:53,123.123 INFO    ] time= 31/08/2026 00:28:53
[2026-08-31 00:28:53,129.129 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:28:53,144.144 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:28:53,258.258 INFO    ] No existing commands found in stream
[2026-08-31 00:28:58,283.283 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:28:58,286.286 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-08-31 00:29:02,227.227 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 00:29:02,230.230 INFO    ] Checking for system updates...
[2026-08-31 00:29:02,271.271 INFO    ] 200
[2026-08-31 00:29:02,274.274 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:29:02,334.334 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:29:02,337.337 INFO    ] No update needed
[2026-08-31 00:29:02,340.340 INFO    ] Checking for camera pi updates...
[2026-08-31 00:29:02,387.387 INFO    ] 200
[2026-08-31 00:29:02,390.390 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:29:02,450.450 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:29:02,507.507 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:29:02,512.512 INFO    ] No camera update needed
[2026-08-31 00:29:02,517.517 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:29:02,521.521 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:29:02,529.529 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:29:02,536.536 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:29:04,578.578 INFO    ] ================================================
[2026-08-31 00:29:04,594.594 INFO    ] Launching Daemon at Mon Aug 31 00:29:04 IST 2026
[2026-08-31 00:29:04,605.605 INFO    ] ================================================
[2026-08-31 00:29:05,186.186 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:29:05
[2026-08-31 00:29:05,781.781 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:29:06,083.083 INFO    ] Initializing speech engine...
[2026-08-31 00:29:06,095.095 INFO    ] 2026-08-31 00:29:06
[2026-08-31 00:29:06,357.357 INFO    ] 2026-08-31 00:29:06
[2026-08-31 00:29:06,387.387 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:29:06,635.635 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:29:06,641.641 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:29:06,881.881 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:29:06,899.899 INFO    ] time= 31/08/2026 00:29:06
[2026-08-31 00:29:06,917.917 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:29:06,945.945 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:29:07,105.105 INFO    ] No existing commands found in stream
[2026-08-31 00:29:12,136.136 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:29:12,139.139 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-08-31 00:29:14,327.327 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 00:29:14,329.329 INFO    ] Checking for system updates...
[2026-08-31 00:29:14,364.364 INFO    ] 200
[2026-08-31 00:29:14,367.367 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:29:14,423.423 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:29:14,426.426 INFO    ] No update needed
[2026-08-31 00:29:14,428.428 INFO    ] Checking for camera pi updates...
[2026-08-31 00:29:14,464.464 INFO    ] 200
[2026-08-31 00:29:14,466.466 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:29:14,510.510 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:29:14,610.610 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:29:14,613.613 INFO    ] No camera update needed
[2026-08-31 00:29:14,615.615 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:29:14,617.617 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:29:14,623.623 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:29:14,627.627 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:29:16,668.668 INFO    ] ================================================
[2026-08-31 00:29:16,684.684 INFO    ] Launching Daemon at Mon Aug 31 00:29:16 IST 2026
[2026-08-31 00:29:16,695.695 INFO    ] ================================================
[2026-08-31 00:29:17,262.262 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:29:17
[2026-08-31 00:29:17,845.845 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:29:18,101.101 INFO    ] Initializing speech engine...
[2026-08-31 00:29:18,125.125 INFO    ] 2026-08-31 00:29:18
[2026-08-31 00:29:18,391.391 INFO    ] 2026-08-31 00:29:18
[2026-08-31 00:29:18,425.425 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:29:18,701.701 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:29:18,710.710 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:29:18,854.854 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:29:18,881.881 INFO    ] time= 31/08/2026 00:29:18
[2026-08-31 00:29:18,930.930 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:29:18,985.985 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:29:19,063.063 INFO    ] No existing commands found in stream
[2026-08-31 00:29:24,079.079 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:29:24,081.081 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-08-31 00:29:25,166.166 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 00:29:25,169.169 INFO    ] Checking for system updates...
[2026-08-31 00:29:25,204.204 INFO    ] 200
[2026-08-31 00:29:25,206.206 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:29:25,258.258 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:29:25,261.261 INFO    ] No update needed
[2026-08-31 00:29:25,263.263 INFO    ] Checking for camera pi updates...
[2026-08-31 00:29:25,297.297 INFO    ] 200
[2026-08-31 00:29:25,299.299 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:29:25,344.344 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:29:25,405.405 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:29:25,408.408 INFO    ] No camera update needed
[2026-08-31 00:29:25,410.410 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:29:25,412.412 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:29:25,418.418 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:29:25,423.423 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:29:27,464.464 INFO    ] ================================================
[2026-08-31 00:29:27,480.480 INFO    ] Launching Daemon at Mon Aug 31 00:29:27 IST 2026
[2026-08-31 00:29:27,490.490 INFO    ] ================================================
[2026-08-31 00:29:28,066.066 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:29:28
[2026-08-31 00:29:28,659.659 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:29:28,915.915 INFO    ] Initializing speech engine...
[2026-08-31 00:29:28,928.928 INFO    ] 2026-08-31 00:29:28
[2026-08-31 00:29:29,208.208 INFO    ] 2026-08-31 00:29:29
[2026-08-31 00:29:29,244.244 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:29:29,460.460 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:29:29,513.513 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:29:29,745.745 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:29:29,810.810 INFO    ] time= 31/08/2026 00:29:29
[2026-08-31 00:29:29,817.817 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:29:29,835.835 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:29:29,979.979 INFO    ] No existing commands found in stream
[2026-08-31 00:29:35,000.000 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:29:35,002.002 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-08-31 00:29:37,947.947 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 00:29:37,949.949 INFO    ] Checking for system updates...
[2026-08-31 00:29:37,985.985 INFO    ] 200
[2026-08-31 00:29:37,988.988 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:29:38,045.045 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:29:38,047.047 INFO    ] No update needed
[2026-08-31 00:29:38,050.050 INFO    ] Checking for camera pi updates...
[2026-08-31 00:29:38,084.084 INFO    ] 200
[2026-08-31 00:29:38,086.086 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:29:38,132.132 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:29:38,215.215 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:29:38,217.217 INFO    ] No camera update needed
[2026-08-31 00:29:38,220.220 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:29:38,222.222 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:29:38,228.228 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:29:38,233.233 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:29:40,274.274 INFO    ] ================================================
[2026-08-31 00:29:40,289.289 INFO    ] Launching Daemon at Mon Aug 31 00:29:40 IST 2026
[2026-08-31 00:29:40,300.300 INFO    ] ================================================
[2026-08-31 00:29:40,878.878 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:29:40
[2026-08-31 00:29:41,475.475 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:29:41,749.749 INFO    ] Initializing speech engine...
[2026-08-31 00:29:41,758.758 INFO    ] 2026-08-31 00:29:41
[2026-08-31 00:29:42,007.007 INFO    ] 2026-08-31 00:29:42
[2026-08-31 00:29:42,042.042 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:29:42,298.298 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:29:42,303.303 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:29:42,533.533 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:29:42,559.559 INFO    ] time= 31/08/2026 00:29:42
[2026-08-31 00:29:42,575.575 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:29:42,584.584 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:29:42,708.708 INFO    ] No existing commands found in stream
[2026-08-31 00:29:47,723.723 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:29:47,725.725 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-08-31 00:29:51,512.512 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 00:29:51,514.514 INFO    ] Checking for system updates...
[2026-08-31 00:29:51,550.550 INFO    ] 200
[2026-08-31 00:29:51,553.553 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:29:51,605.605 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:29:51,608.608 INFO    ] No update needed
[2026-08-31 00:29:51,610.610 INFO    ] Checking for camera pi updates...
[2026-08-31 00:29:51,647.647 INFO    ] 200
[2026-08-31 00:29:51,650.650 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:29:51,694.694 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:29:51,775.775 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:29:51,778.778 INFO    ] No camera update needed
[2026-08-31 00:29:51,780.780 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:29:51,783.783 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:29:51,789.789 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:29:51,795.795 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:29:53,836.836 INFO    ] ================================================
[2026-08-31 00:29:53,852.852 INFO    ] Launching Daemon at Mon Aug 31 00:29:53 IST 2026
[2026-08-31 00:29:53,863.863 INFO    ] ================================================
[2026-08-31 00:29:54,464.464 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:29:54
[2026-08-31 00:29:55,127.127 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:29:55,429.429 INFO    ] Initializing speech engine...
[2026-08-31 00:29:55,436.436 INFO    ] 2026-08-31 00:29:55
[2026-08-31 00:29:55,713.713 INFO    ] 2026-08-31 00:29:55
[2026-08-31 00:29:55,768.768 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:29:56,018.018 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:29:56,026.026 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:29:56,256.256 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:29:56,275.275 INFO    ] time= 31/08/2026 00:29:56
[2026-08-31 00:29:56,285.285 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:29:56,312.312 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:29:56,442.442 INFO    ] No existing commands found in stream
[2026-08-31 00:30:01,472.472 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:30:01,486.486 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-08-31 00:30:06,950.950 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 00:30:06,953.953 INFO    ] Checking for system updates...
[2026-08-31 00:30:06,991.991 INFO    ] 200
[2026-08-31 00:30:06,994.994 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:30:07,053.053 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:30:07,055.055 INFO    ] No update needed
[2026-08-31 00:30:07,058.058 INFO    ] Checking for camera pi updates...
[2026-08-31 00:30:07,092.092 INFO    ] 200
[2026-08-31 00:30:07,095.095 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:30:07,139.139 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:30:07,208.208 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:30:07,210.210 INFO    ] No camera update needed
[2026-08-31 00:30:07,213.213 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:30:07,215.215 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:30:07,221.221 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:30:07,226.226 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:30:09,268.268 INFO    ] ================================================
[2026-08-31 00:30:09,284.284 INFO    ] Launching Daemon at Mon Aug 31 00:30:09 IST 2026
[2026-08-31 00:30:09,295.295 INFO    ] ================================================
[2026-08-31 00:30:09,866.866 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:30:09
[2026-08-31 00:30:10,453.453 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:30:10,723.723 INFO    ] Initializing speech engine...
[2026-08-31 00:30:10,745.745 INFO    ] 2026-08-31 00:30:10
[2026-08-31 00:30:11,010.010 INFO    ] 2026-08-31 00:30:10
[2026-08-31 00:30:11,046.046 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:30:11,269.269 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:30:11,332.332 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:30:11,491.491 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:30:11,535.535 INFO    ] time= 31/08/2026 00:30:11
[2026-08-31 00:30:11,574.574 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:30:11,637.637 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:30:11,770.770 INFO    ] No existing commands found in stream
[2026-08-31 00:30:16,801.801 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:30:16,803.803 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-08-31 00:30:19,906.906 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 00:30:19,909.909 INFO    ] Checking for system updates...
[2026-08-31 00:30:19,948.948 INFO    ] 200
[2026-08-31 00:30:19,951.951 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:30:20,008.008 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:30:20,010.010 INFO    ] No update needed
[2026-08-31 00:30:20,013.013 INFO    ] Checking for camera pi updates...
[2026-08-31 00:30:20,045.045 INFO    ] 200
[2026-08-31 00:30:20,048.048 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:30:20,089.089 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:30:20,167.167 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:30:20,170.170 INFO    ] No camera update needed
[2026-08-31 00:30:20,172.172 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:30:20,174.174 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:30:20,180.180 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:30:20,185.185 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:30:22,224.224 INFO    ] ================================================
[2026-08-31 00:30:22,240.240 INFO    ] Launching Daemon at Mon Aug 31 00:30:22 IST 2026
[2026-08-31 00:30:22,251.251 INFO    ] ================================================
[2026-08-31 00:30:22,825.825 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:30:22
[2026-08-31 00:30:23,421.421 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:30:23,692.692 INFO    ] Initializing speech engine...
[2026-08-31 00:30:23,701.701 INFO    ] 2026-08-31 00:30:23
[2026-08-31 00:30:23,964.964 INFO    ] 2026-08-31 00:30:23
[2026-08-31 00:30:24,000.000 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:30:24,219.219 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:30:24,267.267 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:30:24,503.503 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:30:24,558.558 INFO    ] time= 31/08/2026 00:30:24
[2026-08-31 00:30:24,589.589 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:30:24,606.606 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:30:24,742.742 INFO    ] No existing commands found in stream
[2026-08-31 00:30:29,766.766 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:30:29,769.769 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-08-31 00:30:34,108.108 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 00:30:34,111.111 INFO    ] Checking for system updates...
[2026-08-31 00:30:34,147.147 INFO    ] 200
[2026-08-31 00:30:34,150.150 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:30:34,208.208 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:30:34,210.210 INFO    ] No update needed
[2026-08-31 00:30:34,213.213 INFO    ] Checking for camera pi updates...
[2026-08-31 00:30:34,246.246 INFO    ] 200
[2026-08-31 00:30:34,249.249 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:30:34,293.293 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:30:34,375.375 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:30:34,377.377 INFO    ] No camera update needed
[2026-08-31 00:30:34,380.380 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:30:34,382.382 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:30:34,388.388 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:30:34,393.393 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:30:36,434.434 INFO    ] ================================================
[2026-08-31 00:30:36,450.450 INFO    ] Launching Daemon at Mon Aug 31 00:30:36 IST 2026
[2026-08-31 00:30:36,460.460 INFO    ] ================================================
[2026-08-31 00:30:37,049.049 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:30:37
[2026-08-31 00:30:37,650.650 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:30:37,908.908 INFO    ] Initializing speech engine...
[2026-08-31 00:30:37,917.917 INFO    ] 2026-08-31 00:30:37
[2026-08-31 00:30:38,215.215 INFO    ] 2026-08-31 00:30:38
[2026-08-31 00:30:38,251.251 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:30:38,503.503 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:30:38,544.544 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:30:38,705.705 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:30:38,755.755 INFO    ] time= 31/08/2026 00:30:38
[2026-08-31 00:30:38,809.809 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:30:38,854.854 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:30:39,020.020 INFO    ] No existing commands found in stream
[2026-08-31 00:30:44,036.036 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:30:44,039.039 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-08-31 00:30:46,606.606 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 00:30:46,609.609 INFO    ] Checking for system updates...
[2026-08-31 00:30:46,648.648 INFO    ] 200
[2026-08-31 00:30:46,651.651 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:30:46,703.703 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:30:46,705.705 INFO    ] No update needed
[2026-08-31 00:30:46,707.707 INFO    ] Checking for camera pi updates...
[2026-08-31 00:30:46,746.746 INFO    ] 200
[2026-08-31 00:30:46,748.748 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:30:46,793.793 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:30:46,888.888 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:30:46,890.890 INFO    ] No camera update needed
[2026-08-31 00:30:46,893.893 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:30:46,895.895 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:30:46,900.900 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:30:46,905.905 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:30:48,946.946 INFO    ] ================================================
[2026-08-31 00:30:48,962.962 INFO    ] Launching Daemon at Mon Aug 31 00:30:48 IST 2026
[2026-08-31 00:30:48,973.973 INFO    ] ================================================
[2026-08-31 00:30:49,606.606 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:30:49
[2026-08-31 00:30:50,272.272 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:30:50,578.578 INFO    ] Initializing speech engine...
[2026-08-31 00:30:50,591.591 INFO    ] 2026-08-31 00:30:50
[2026-08-31 00:30:50,877.877 INFO    ] 2026-08-31 00:30:50
[2026-08-31 00:30:50,921.921 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:30:51,211.211 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:30:51,219.219 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:30:51,419.419 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:30:51,427.427 INFO    ] time= 31/08/2026 00:30:51
[2026-08-31 00:30:51,449.449 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:30:51,476.476 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:30:51,646.646 INFO    ] No existing commands found in stream
[2026-08-31 00:30:56,677.677 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:30:56,681.681 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-08-31 00:30:58,466.466 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 00:30:58,469.469 INFO    ] Checking for system updates...
[2026-08-31 00:30:58,505.505 INFO    ] 200
[2026-08-31 00:30:58,507.507 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:30:58,565.565 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:30:58,568.568 INFO    ] No update needed
[2026-08-31 00:30:58,570.570 INFO    ] Checking for camera pi updates...
[2026-08-31 00:30:58,607.607 INFO    ] 200
[2026-08-31 00:30:58,609.609 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:30:58,654.654 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:30:58,856.856 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:30:58,859.859 INFO    ] No camera update needed
[2026-08-31 00:30:58,861.861 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:30:58,864.864 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:30:58,869.869 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:30:58,874.874 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:31:00,913.913 INFO    ] ================================================
[2026-08-31 00:31:00,928.928 INFO    ] Launching Daemon at Mon Aug 31 00:31:00 IST 2026
[2026-08-31 00:31:00,939.939 INFO    ] ================================================
[2026-08-31 00:31:01,586.586 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:31:01
[2026-08-31 00:31:02,435.435 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:31:02,811.811 INFO    ] Initializing speech engine...
[2026-08-31 00:31:02,825.825 INFO    ] 2026-08-31 00:31:02
[2026-08-31 00:31:03,174.174 INFO    ] 2026-08-31 00:31:03
[2026-08-31 00:31:03,216.216 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:31:03,467.467 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:31:03,477.477 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:31:03,706.706 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:31:03,759.759 INFO    ] time= 31/08/2026 00:31:03
[2026-08-31 00:31:03,770.770 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:31:03,796.796 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:31:03,930.930 INFO    ] No existing commands found in stream
[2026-08-31 00:31:08,949.949 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:31:08,952.952 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-08-31 00:31:13,114.114 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 00:31:13,117.117 INFO    ] Checking for system updates...
[2026-08-31 00:31:13,154.154 INFO    ] 200
[2026-08-31 00:31:13,157.157 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:31:13,214.214 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:31:13,217.217 INFO    ] No update needed
[2026-08-31 00:31:13,220.220 INFO    ] Checking for camera pi updates...
[2026-08-31 00:31:13,256.256 INFO    ] 200
[2026-08-31 00:31:13,259.259 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:31:13,303.303 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:31:13,382.382 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:31:13,384.384 INFO    ] No camera update needed
[2026-08-31 00:31:13,387.387 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:31:13,389.389 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:31:13,394.394 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:31:13,399.399 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:31:15,440.440 INFO    ] ================================================
[2026-08-31 00:31:15,457.457 INFO    ] Launching Daemon at Mon Aug 31 00:31:15 IST 2026
[2026-08-31 00:31:15,468.468 INFO    ] ================================================
[2026-08-31 00:31:16,031.031 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:31:16
[2026-08-31 00:31:16,612.612 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:31:16,861.861 INFO    ] Initializing speech engine...
[2026-08-31 00:31:16,869.869 INFO    ] 2026-08-31 00:31:16
[2026-08-31 00:31:17,143.143 INFO    ] 2026-08-31 00:31:17
[2026-08-31 00:31:17,180.180 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:31:17,378.378 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:31:17,422.422 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:31:17,660.660 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:31:17,708.708 INFO    ] time= 31/08/2026 00:31:17
[2026-08-31 00:31:17,714.714 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:31:17,732.732 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:31:17,864.864 INFO    ] No existing commands found in stream
[2026-08-31 00:31:22,877.877 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:31:22,880.880 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-08-31 00:31:25,568.568 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 00:31:25,571.571 INFO    ] Checking for system updates...
[2026-08-31 00:31:25,607.607 INFO    ] 200
[2026-08-31 00:31:25,609.609 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:31:25,667.667 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:31:25,670.670 INFO    ] No update needed
[2026-08-31 00:31:25,672.672 INFO    ] Checking for camera pi updates...
[2026-08-31 00:31:25,708.708 INFO    ] 200
[2026-08-31 00:31:25,711.711 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:31:25,754.754 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:31:25,839.839 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:31:25,841.841 INFO    ] No camera update needed
[2026-08-31 00:31:25,844.844 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:31:25,846.846 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:31:25,851.851 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:31:25,856.856 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:31:27,897.897 INFO    ] ================================================
[2026-08-31 00:31:27,913.913 INFO    ] Launching Daemon at Mon Aug 31 00:31:27 IST 2026
[2026-08-31 00:31:27,924.924 INFO    ] ================================================
[2026-08-31 00:31:28,497.497 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:31:28
[2026-08-31 00:31:29,082.082 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:31:29,331.331 INFO    ] Initializing speech engine...
[2026-08-31 00:31:29,337.337 INFO    ] 2026-08-31 00:31:29
[2026-08-31 00:31:29,612.612 INFO    ] 2026-08-31 00:31:29
[2026-08-31 00:31:29,648.648 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:31:29,849.849 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:31:29,908.908 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:31:30,052.052 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:31:30,122.122 INFO    ] time= 31/08/2026 00:31:30
[2026-08-31 00:31:30,181.181 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:31:30,190.190 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:31:30,332.332 INFO    ] No existing commands found in stream
[2026-08-31 00:31:35,347.347 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:31:35,350.350 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-08-31 00:31:38,155.155 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 00:31:38,158.158 INFO    ] Checking for system updates...
[2026-08-31 00:31:38,200.200 INFO    ] 200
[2026-08-31 00:31:38,203.203 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:31:38,265.265 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:31:38,268.268 INFO    ] No update needed
[2026-08-31 00:31:38,271.271 INFO    ] Checking for camera pi updates...
[2026-08-31 00:31:38,312.312 INFO    ] 200
[2026-08-31 00:31:38,314.314 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:31:38,358.358 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:31:38,443.443 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:31:38,445.445 INFO    ] No camera update needed
[2026-08-31 00:31:38,448.448 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:31:38,451.451 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:31:38,457.457 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:31:38,463.463 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:31:40,507.507 INFO    ] ================================================
[2026-08-31 00:31:40,523.523 INFO    ] Launching Daemon at Mon Aug 31 00:31:40 IST 2026
[2026-08-31 00:31:40,534.534 INFO    ] ================================================
[2026-08-31 00:31:41,099.099 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:31:41
[2026-08-31 00:31:41,680.680 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:31:41,935.935 INFO    ] Initializing speech engine...
[2026-08-31 00:31:41,960.960 INFO    ] 2026-08-31 00:31:41
[2026-08-31 00:31:42,228.228 INFO    ] 2026-08-31 00:31:42
[2026-08-31 00:31:42,262.262 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:31:42,520.520 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:31:42,526.526 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:31:42,741.741 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:31:42,781.781 INFO    ] time= 31/08/2026 00:31:42
[2026-08-31 00:31:42,787.787 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:31:42,804.804 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:31:42,935.935 INFO    ] No existing commands found in stream
[2026-08-31 00:31:47,947.947 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:31:47,950.950 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-08-31 00:31:49,689.689 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 00:31:49,692.692 INFO    ] Checking for system updates...
[2026-08-31 00:31:49,727.727 INFO    ] 200
[2026-08-31 00:31:49,730.730 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:31:49,786.786 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:31:49,789.789 INFO    ] No update needed
[2026-08-31 00:31:49,791.791 INFO    ] Checking for camera pi updates...
[2026-08-31 00:31:49,824.824 INFO    ] 200
[2026-08-31 00:31:49,826.826 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:31:49,869.869 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:31:49,949.949 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:31:49,951.951 INFO    ] No camera update needed
[2026-08-31 00:31:49,954.954 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:31:49,956.956 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:31:49,961.961 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:31:49,966.966 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:31:52,006.006 INFO    ] ================================================
[2026-08-31 00:31:52,021.021 INFO    ] Launching Daemon at Mon Aug 31 00:31:52 IST 2026
[2026-08-31 00:31:52,033.033 INFO    ] ================================================
[2026-08-31 00:31:52,599.599 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:31:52
[2026-08-31 00:31:53,182.182 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:31:53,458.458 INFO    ] Initializing speech engine...
[2026-08-31 00:31:53,467.467 INFO    ] 2026-08-31 00:31:53
[2026-08-31 00:31:53,724.724 INFO    ] 2026-08-31 00:31:53
[2026-08-31 00:31:53,753.753 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:31:53,998.998 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:31:54,007.007 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:31:54,222.222 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:31:54,266.266 INFO    ] time= 31/08/2026 00:31:54
[2026-08-31 00:31:54,272.272 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:31:54,290.290 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:31:54,448.448 INFO    ] No existing commands found in stream
[2026-08-31 00:31:59,479.479 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:31:59,482.482 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-08-31 00:32:01,310.310 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 00:32:01,313.313 INFO    ] Checking for system updates...
[2026-08-31 00:32:01,351.351 INFO    ] 200
[2026-08-31 00:32:01,353.353 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:32:01,405.405 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:32:01,407.407 INFO    ] No update needed
[2026-08-31 00:32:01,410.410 INFO    ] Checking for camera pi updates...
[2026-08-31 00:32:01,445.445 INFO    ] 200
[2026-08-31 00:32:01,448.448 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:32:01,491.491 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:32:01,572.572 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:32:01,574.574 INFO    ] No camera update needed
[2026-08-31 00:32:01,577.577 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:32:01,579.579 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:32:01,584.584 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:32:01,589.589 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:32:03,639.639 INFO    ] ================================================
[2026-08-31 00:32:03,656.656 INFO    ] Launching Daemon at Mon Aug 31 00:32:03 IST 2026
[2026-08-31 00:32:03,674.674 INFO    ] ================================================
[2026-08-31 00:32:04,302.302 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:32:04
[2026-08-31 00:32:04,905.905 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:32:05,180.180 INFO    ] Initializing speech engine...
[2026-08-31 00:32:05,201.201 INFO    ] 2026-08-31 00:32:05
[2026-08-31 00:32:05,473.473 INFO    ] 2026-08-31 00:32:05
[2026-08-31 00:32:05,531.531 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:32:05,764.764 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:32:05,768.768 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:32:06,026.026 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:32:06,035.035 INFO    ] time= 31/08/2026 00:32:06
[2026-08-31 00:32:06,054.054 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:32:06,076.076 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:32:06,238.238 INFO    ] No existing commands found in stream
[2026-08-31 00:32:11,263.263 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:32:11,266.266 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-08-31 00:32:15,926.926 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 00:32:15,929.929 INFO    ] Checking for system updates...
[2026-08-31 00:32:15,964.964 INFO    ] 200
[2026-08-31 00:32:15,966.966 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:32:16,026.026 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:32:16,028.028 INFO    ] No update needed
[2026-08-31 00:32:16,031.031 INFO    ] Checking for camera pi updates...
[2026-08-31 00:32:16,068.068 INFO    ] 200
[2026-08-31 00:32:16,070.070 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:32:16,116.116 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:32:16,192.192 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:32:16,194.194 INFO    ] No camera update needed
[2026-08-31 00:32:16,196.196 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:32:16,199.199 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:32:16,204.204 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:32:16,209.209 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:32:18,251.251 INFO    ] ================================================
[2026-08-31 00:32:18,268.268 INFO    ] Launching Daemon at Mon Aug 31 00:32:18 IST 2026
[2026-08-31 00:32:18,280.280 INFO    ] ================================================
[2026-08-31 00:32:18,850.850 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:32:18
[2026-08-31 00:32:19,439.439 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:32:19,706.706 INFO    ] Initializing speech engine...
[2026-08-31 00:32:19,719.719 INFO    ] 2026-08-31 00:32:19
[2026-08-31 00:32:20,008.008 INFO    ] 2026-08-31 00:32:19
[2026-08-31 00:32:20,049.049 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:32:20,248.248 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:32:20,263.263 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:32:20,429.429 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:32:20,434.434 INFO    ] time= 31/08/2026 00:32:20
[2026-08-31 00:32:20,441.441 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:32:20,464.464 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:32:20,592.592 INFO    ] No existing commands found in stream
[2026-08-31 00:32:25,617.617 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:32:25,620.620 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-08-31 00:32:27,296.296 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 00:32:27,298.298 INFO    ] Checking for system updates...
[2026-08-31 00:32:27,338.338 INFO    ] 200
[2026-08-31 00:32:27,341.341 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:32:27,400.400 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:32:27,403.403 INFO    ] No update needed
[2026-08-31 00:32:27,405.405 INFO    ] Checking for camera pi updates...
[2026-08-31 00:32:27,443.443 INFO    ] 200
[2026-08-31 00:32:27,445.445 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:32:27,485.485 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:32:27,591.591 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:32:27,594.594 INFO    ] No camera update needed
[2026-08-31 00:32:27,596.596 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:32:27,598.598 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:32:27,604.604 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:32:27,610.610 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:32:29,651.651 INFO    ] ================================================
[2026-08-31 00:32:29,666.666 INFO    ] Launching Daemon at Mon Aug 31 00:32:29 IST 2026
[2026-08-31 00:32:29,677.677 INFO    ] ================================================
[2026-08-31 00:32:30,340.340 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:32:30
[2026-08-31 00:32:31,026.026 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:32:31,336.336 INFO    ] Initializing speech engine...
[2026-08-31 00:32:31,351.351 INFO    ] 2026-08-31 00:32:31
[2026-08-31 00:32:31,675.675 INFO    ] 2026-08-31 00:32:31
[2026-08-31 00:32:31,760.760 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:32:31,940.940 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:32:31,947.947 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:32:32,136.136 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:32:32,203.203 INFO    ] time= 31/08/2026 00:32:32
[2026-08-31 00:32:32,223.223 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:32:32,241.241 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:32:32,381.381 INFO    ] No existing commands found in stream
[2026-08-31 00:32:37,412.412 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:32:37,415.415 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-08-31 00:32:40,089.089 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 00:32:40,092.092 INFO    ] Checking for system updates...
[2026-08-31 00:32:40,135.135 INFO    ] 200
[2026-08-31 00:32:40,139.139 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:32:40,193.193 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:32:40,196.196 INFO    ] No update needed
[2026-08-31 00:32:40,199.199 INFO    ] Checking for camera pi updates...
[2026-08-31 00:32:40,233.233 INFO    ] 200
[2026-08-31 00:32:40,235.235 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:32:40,281.281 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:32:40,361.361 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:32:40,364.364 INFO    ] No camera update needed
[2026-08-31 00:32:40,366.366 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:32:40,368.368 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:32:40,374.374 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:32:40,379.379 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:32:42,420.420 INFO    ] ================================================
[2026-08-31 00:32:42,435.435 INFO    ] Launching Daemon at Mon Aug 31 00:32:42 IST 2026
[2026-08-31 00:32:42,446.446 INFO    ] ================================================
[2026-08-31 00:32:43,023.023 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:32:43
[2026-08-31 00:32:43,606.606 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:32:43,877.877 INFO    ] Initializing speech engine...
[2026-08-31 00:32:43,882.882 INFO    ] 2026-08-31 00:32:43
[2026-08-31 00:32:44,128.128 INFO    ] 2026-08-31 00:32:44
[2026-08-31 00:32:44,163.163 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:32:44,360.360 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:32:44,415.415 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:32:44,636.636 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:32:44,681.681 INFO    ] time= 31/08/2026 00:32:44
[2026-08-31 00:32:44,687.687 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:32:44,705.705 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:32:44,849.849 INFO    ] No existing commands found in stream
[2026-08-31 00:32:49,879.879 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:32:49,882.882 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-08-31 00:32:51,350.350 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 00:32:51,353.353 INFO    ] Checking for system updates...
[2026-08-31 00:32:51,393.393 INFO    ] 200
[2026-08-31 00:32:51,395.395 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:32:51,455.455 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:32:51,457.457 INFO    ] No update needed
[2026-08-31 00:32:51,460.460 INFO    ] Checking for camera pi updates...
[2026-08-31 00:32:51,498.498 INFO    ] 200
[2026-08-31 00:32:51,500.500 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:32:51,540.540 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:32:51,638.638 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:32:51,641.641 INFO    ] No camera update needed
[2026-08-31 00:32:51,643.643 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:32:51,645.645 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:32:51,651.651 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:32:51,656.656 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:32:53,697.697 INFO    ] ================================================
[2026-08-31 00:32:53,712.712 INFO    ] Launching Daemon at Mon Aug 31 00:32:53 IST 2026
[2026-08-31 00:32:53,724.724 INFO    ] ================================================
[2026-08-31 00:32:54,390.390 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:32:54
[2026-08-31 00:32:55,075.075 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:32:55,385.385 INFO    ] Initializing speech engine...
[2026-08-31 00:32:55,394.394 INFO    ] 2026-08-31 00:32:55
[2026-08-31 00:32:55,722.722 INFO    ] 2026-08-31 00:32:55
[2026-08-31 00:32:55,804.804 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:32:56,048.048 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:32:56,088.088 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:32:56,263.263 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:32:56,275.275 INFO    ] time= 31/08/2026 00:32:56
[2026-08-31 00:32:56,344.344 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:32:56,390.390 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:32:56,544.544 INFO    ] No existing commands found in stream
[2026-08-31 00:33:01,580.580 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:33:01,583.583 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-08-31 00:33:05,410.410 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 00:33:05,413.413 INFO    ] Checking for system updates...
[2026-08-31 00:33:05,455.455 INFO    ] 200
[2026-08-31 00:33:05,457.457 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:33:05,518.518 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:33:05,521.521 INFO    ] No update needed
[2026-08-31 00:33:05,524.524 INFO    ] Checking for camera pi updates...
[2026-08-31 00:33:05,559.559 INFO    ] 200
[2026-08-31 00:33:05,562.562 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:33:05,604.604 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:33:05,686.686 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:33:05,689.689 INFO    ] No camera update needed
[2026-08-31 00:33:05,691.691 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:33:05,694.694 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:33:05,700.700 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:33:05,706.706 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:33:07,749.749 INFO    ] ================================================
[2026-08-31 00:33:07,764.764 INFO    ] Launching Daemon at Mon Aug 31 00:33:07 IST 2026
[2026-08-31 00:33:07,775.775 INFO    ] ================================================
[2026-08-31 00:33:08,353.353 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:33:08
[2026-08-31 00:33:08,940.940 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:33:09,207.207 INFO    ] Initializing speech engine...
[2026-08-31 00:33:09,220.220 INFO    ] 2026-08-31 00:33:09
[2026-08-31 00:33:09,467.467 INFO    ] 2026-08-31 00:33:09
[2026-08-31 00:33:09,503.503 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:33:09,755.755 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:33:09,764.764 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:33:09,984.984 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:33:10,025.025 INFO    ] time= 31/08/2026 00:33:09
[2026-08-31 00:33:10,031.031 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:33:10,049.049 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:33:10,182.182 INFO    ] No existing commands found in stream
[2026-08-31 00:33:15,201.201 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:33:15,204.204 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-08-31 00:33:19,166.166 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 00:33:19,169.169 INFO    ] Checking for system updates...
[2026-08-31 00:33:19,208.208 INFO    ] 200
[2026-08-31 00:33:19,211.211 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:33:19,270.270 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:33:19,272.272 INFO    ] No update needed
[2026-08-31 00:33:19,274.274 INFO    ] Checking for camera pi updates...
[2026-08-31 00:33:19,308.308 INFO    ] 200
[2026-08-31 00:33:19,310.310 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:33:19,351.351 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:33:19,435.435 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:33:19,438.438 INFO    ] No camera update needed
[2026-08-31 00:33:19,440.440 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:33:19,443.443 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:33:19,448.448 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:33:19,453.453 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:33:21,495.495 INFO    ] ================================================
[2026-08-31 00:33:21,511.511 INFO    ] Launching Daemon at Mon Aug 31 00:33:21 IST 2026
[2026-08-31 00:33:21,522.522 INFO    ] ================================================
[2026-08-31 00:33:22,087.087 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:33:22
[2026-08-31 00:33:22,668.668 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:33:22,979.979 INFO    ] Initializing speech engine...
[2026-08-31 00:33:22,989.989 INFO    ] 2026-08-31 00:33:22
[2026-08-31 00:33:23,297.297 INFO    ] 2026-08-31 00:33:23
[2026-08-31 00:33:23,383.383 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:33:23,659.659 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:33:23,717.717 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:33:24,004.004 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:33:24,044.044 INFO    ] time= 31/08/2026 00:33:24
[2026-08-31 00:33:24,119.119 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:33:24,184.184 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:33:24,345.345 INFO    ] No existing commands found in stream
[2026-08-31 00:33:29,381.381 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:33:29,384.384 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-08-31 00:33:32,653.653 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 00:33:32,657.657 INFO    ] Checking for system updates...
[2026-08-31 00:33:32,702.702 INFO    ] 200
[2026-08-31 00:33:32,706.706 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:33:32,779.779 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:33:32,783.783 INFO    ] No update needed
[2026-08-31 00:33:32,786.786 INFO    ] Checking for camera pi updates...
[2026-08-31 00:33:32,831.831 INFO    ] 200
[2026-08-31 00:33:32,834.834 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:33:32,885.885 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:33:32,997.997 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:33:33,000.000 INFO    ] No camera update needed
[2026-08-31 00:33:33,003.003 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:33:33,006.006 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:33:33,012.012 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:33:33,019.019 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:33:35,060.060 INFO    ] ================================================
[2026-08-31 00:33:35,075.075 INFO    ] Launching Daemon at Mon Aug 31 00:33:35 IST 2026
[2026-08-31 00:33:35,086.086 INFO    ] ================================================
[2026-08-31 00:33:35,744.744 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:33:35
[2026-08-31 00:33:36,416.416 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:33:36,720.720 INFO    ] Initializing speech engine...
[2026-08-31 00:33:36,727.727 INFO    ] 2026-08-31 00:33:36
[2026-08-31 00:33:37,019.019 INFO    ] 2026-08-31 00:33:36
[2026-08-31 00:33:37,058.058 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:33:37,343.343 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:33:37,351.351 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:33:37,544.544 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:33:37,566.566 INFO    ] time= 31/08/2026 00:33:37
[2026-08-31 00:33:37,595.595 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:33:37,603.603 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:33:37,732.732 INFO    ] No existing commands found in stream
[2026-08-31 00:33:42,763.763 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:33:42,766.766 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-08-31 00:33:44,150.150 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 00:33:44,153.153 INFO    ] Checking for system updates...
[2026-08-31 00:33:44,191.191 INFO    ] 200
[2026-08-31 00:33:44,194.194 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:33:44,247.247 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:33:44,250.250 INFO    ] No update needed
[2026-08-31 00:33:44,252.252 INFO    ] Checking for camera pi updates...
[2026-08-31 00:33:44,286.286 INFO    ] 200
[2026-08-31 00:33:44,289.289 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:33:44,331.331 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:33:44,435.435 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:33:44,438.438 INFO    ] No camera update needed
[2026-08-31 00:33:44,440.440 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:33:44,443.443 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:33:44,449.449 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:33:44,455.455 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:33:46,498.498 INFO    ] ================================================
[2026-08-31 00:33:46,514.514 INFO    ] Launching Daemon at Mon Aug 31 00:33:46 IST 2026
[2026-08-31 00:33:46,524.524 INFO    ] ================================================
[2026-08-31 00:33:47,180.180 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:33:47
[2026-08-31 00:33:47,851.851 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:33:48,156.156 INFO    ] Initializing speech engine...
[2026-08-31 00:33:48,163.163 INFO    ] 2026-08-31 00:33:48
[2026-08-31 00:33:48,443.443 INFO    ] 2026-08-31 00:33:48
[2026-08-31 00:33:48,499.499 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:33:48,746.746 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:33:48,754.754 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:33:48,982.982 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:33:48,990.990 INFO    ] time= 31/08/2026 00:33:48
[2026-08-31 00:33:49,012.012 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:33:49,039.039 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:33:49,184.184 INFO    ] No existing commands found in stream
[2026-08-31 00:33:54,214.214 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:33:54,218.218 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-08-31 00:33:55,876.876 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 00:33:55,879.879 INFO    ] Checking for system updates...
[2026-08-31 00:33:55,916.916 INFO    ] 200
[2026-08-31 00:33:55,919.919 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:33:55,979.979 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:33:55,982.982 INFO    ] No update needed
[2026-08-31 00:33:55,985.985 INFO    ] Checking for camera pi updates...
[2026-08-31 00:33:56,024.024 INFO    ] 200
[2026-08-31 00:33:56,027.027 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:33:56,068.068 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:33:56,161.161 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:33:56,163.163 INFO    ] No camera update needed
[2026-08-31 00:33:56,166.166 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:33:56,169.169 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:33:56,175.175 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:33:56,181.181 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:33:58,224.224 INFO    ] ================================================
[2026-08-31 00:33:58,240.240 INFO    ] Launching Daemon at Mon Aug 31 00:33:58 IST 2026
[2026-08-31 00:33:58,251.251 INFO    ] ================================================
[2026-08-31 00:33:58,842.842 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:33:58
[2026-08-31 00:33:59,441.441 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:33:59,688.688 INFO    ] Initializing speech engine...
[2026-08-31 00:33:59,700.700 INFO    ] 2026-08-31 00:33:59
[2026-08-31 00:33:59,962.962 INFO    ] 2026-08-31 00:33:59
[2026-08-31 00:33:59,996.996 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:34:00,246.246 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:34:00,256.256 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:34:00,468.468 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:34:00,512.512 INFO    ] time= 31/08/2026 00:34:00
[2026-08-31 00:34:00,517.517 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:34:00,535.535 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:34:00,663.663 INFO    ] No existing commands found in stream
[2026-08-31 00:34:05,677.677 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:34:05,680.680 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-08-31 00:34:08,994.994 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 00:34:08,997.997 INFO    ] Checking for system updates...
[2026-08-31 00:34:09,032.032 INFO    ] 200
[2026-08-31 00:34:09,034.034 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:34:09,087.087 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:34:09,089.089 INFO    ] No update needed
[2026-08-31 00:34:09,092.092 INFO    ] Checking for camera pi updates...
[2026-08-31 00:34:09,128.128 INFO    ] 200
[2026-08-31 00:34:09,130.130 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:34:09,171.171 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:34:09,251.251 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:34:09,253.253 INFO    ] No camera update needed
[2026-08-31 00:34:09,255.255 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:34:09,258.258 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:34:09,263.263 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:34:09,268.268 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:34:11,309.309 INFO    ] ================================================
[2026-08-31 00:34:11,324.324 INFO    ] Launching Daemon at Mon Aug 31 00:34:11 IST 2026
[2026-08-31 00:34:11,335.335 INFO    ] ================================================
[2026-08-31 00:34:11,901.901 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:34:11
[2026-08-31 00:34:12,483.483 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:34:12,750.750 INFO    ] Initializing speech engine...
[2026-08-31 00:34:12,759.759 INFO    ] 2026-08-31 00:34:12
[2026-08-31 00:34:13,018.018 INFO    ] 2026-08-31 00:34:13
[2026-08-31 00:34:13,069.069 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:34:13,352.352 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:34:13,360.360 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:34:13,556.556 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:34:13,571.571 INFO    ] time= 31/08/2026 00:34:13
[2026-08-31 00:34:13,580.580 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:34:13,605.605 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:34:13,741.741 INFO    ] No existing commands found in stream
[2026-08-31 00:34:18,771.771 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:34:18,774.774 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-08-31 00:34:21,754.754 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 00:34:21,756.756 INFO    ] Checking for system updates...
[2026-08-31 00:34:21,798.798 INFO    ] 200
[2026-08-31 00:34:21,800.800 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:34:21,855.855 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:34:21,858.858 INFO    ] No update needed
[2026-08-31 00:34:21,861.861 INFO    ] Checking for camera pi updates...
[2026-08-31 00:34:21,897.897 INFO    ] 200
[2026-08-31 00:34:21,899.899 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:34:21,944.944 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:34:22,028.028 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:34:22,030.030 INFO    ] No camera update needed
[2026-08-31 00:34:22,033.033 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:34:22,036.036 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:34:22,043.043 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:34:22,049.049 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:34:24,090.090 INFO    ] ================================================
[2026-08-31 00:34:24,106.106 INFO    ] Launching Daemon at Mon Aug 31 00:34:24 IST 2026
[2026-08-31 00:34:24,118.118 INFO    ] ================================================
[2026-08-31 00:34:24,697.697 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:34:24
[2026-08-31 00:34:25,293.293 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:34:25,566.566 INFO    ] Initializing speech engine...
[2026-08-31 00:34:25,577.577 INFO    ] 2026-08-31 00:34:25
[2026-08-31 00:34:25,881.881 INFO    ] 2026-08-31 00:34:25
[2026-08-31 00:34:25,961.961 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:34:26,184.184 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:34:26,245.245 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:34:26,500.500 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:34:26,536.536 INFO    ] time= 31/08/2026 00:34:26
[2026-08-31 00:34:26,590.590 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:34:26,631.631 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:34:26,773.773 INFO    ] No existing commands found in stream
[2026-08-31 00:34:31,788.788 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:34:31,791.791 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-08-31 00:34:33,633.633 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 00:34:33,636.636 INFO    ] Checking for system updates...
[2026-08-31 00:34:33,672.672 INFO    ] 200
[2026-08-31 00:34:33,675.675 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:34:33,730.730 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:34:33,732.732 INFO    ] No update needed
[2026-08-31 00:34:33,735.735 INFO    ] Checking for camera pi updates...
[2026-08-31 00:34:33,770.770 INFO    ] 200
[2026-08-31 00:34:33,773.773 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:34:33,817.817 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:34:33,882.882 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:34:33,885.885 INFO    ] No camera update needed
[2026-08-31 00:34:33,887.887 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:34:33,890.890 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:34:33,896.896 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:34:33,902.902 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:34:35,944.944 INFO    ] ================================================
[2026-08-31 00:34:35,959.959 INFO    ] Launching Daemon at Mon Aug 31 00:34:35 IST 2026
[2026-08-31 00:34:35,970.970 INFO    ] ================================================
[2026-08-31 00:34:36,590.590 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:34:36
[2026-08-31 00:34:37,172.172 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:34:37,439.439 INFO    ] Initializing speech engine...
[2026-08-31 00:34:37,448.448 INFO    ] 2026-08-31 00:34:37
[2026-08-31 00:34:37,693.693 INFO    ] 2026-08-31 00:34:37
[2026-08-31 00:34:37,728.728 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:34:37,982.982 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:34:37,986.986 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:34:38,194.194 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:34:38,245.245 INFO    ] time= 31/08/2026 00:34:38
[2026-08-31 00:34:38,251.251 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:34:38,269.269 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:34:38,379.379 INFO    ] No existing commands found in stream
[2026-08-31 00:34:43,406.406 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:34:43,409.409 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-08-31 00:34:45,994.994 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 00:34:45,997.997 INFO    ] Checking for system updates...
[2026-08-31 00:34:46,032.032 INFO    ] 200
[2026-08-31 00:34:46,035.035 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:34:46,092.092 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:34:46,095.095 INFO    ] No update needed
[2026-08-31 00:34:46,098.098 INFO    ] Checking for camera pi updates...
[2026-08-31 00:34:46,132.132 INFO    ] 200
[2026-08-31 00:34:46,134.134 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:34:46,175.175 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:34:46,259.259 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:34:46,262.262 INFO    ] No camera update needed
[2026-08-31 00:34:46,264.264 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:34:46,266.266 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:34:46,271.271 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:34:46,276.276 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:34:48,324.324 INFO    ] ================================================
[2026-08-31 00:34:48,340.340 INFO    ] Launching Daemon at Mon Aug 31 00:34:48 IST 2026
[2026-08-31 00:34:48,351.351 INFO    ] ================================================
[2026-08-31 00:34:48,922.922 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:34:48
[2026-08-31 00:34:49,503.503 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:34:49,771.771 INFO    ] Initializing speech engine...
[2026-08-31 00:34:49,780.780 INFO    ] 2026-08-31 00:34:49
[2026-08-31 00:34:50,026.026 INFO    ] 2026-08-31 00:34:50
[2026-08-31 00:34:50,068.068 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:34:50,313.313 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:34:50,323.323 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:34:50,540.540 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:34:50,580.580 INFO    ] time= 31/08/2026 00:34:50
[2026-08-31 00:34:50,586.586 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:34:50,603.603 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:34:50,736.736 INFO    ] No existing commands found in stream
[2026-08-31 00:34:55,758.758 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:34:55,761.761 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-08-31 00:34:58,953.953 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 00:34:58,956.956 INFO    ] Checking for system updates...
[2026-08-31 00:34:58,992.992 INFO    ] 200
[2026-08-31 00:34:58,994.994 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:34:59,045.045 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:34:59,048.048 INFO    ] No update needed
[2026-08-31 00:34:59,050.050 INFO    ] Checking for camera pi updates...
[2026-08-31 00:34:59,083.083 INFO    ] 200
[2026-08-31 00:34:59,085.085 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:34:59,128.128 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:34:59,259.259 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:34:59,261.261 INFO    ] No camera update needed
[2026-08-31 00:34:59,264.264 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:34:59,266.266 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:34:59,271.271 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:34:59,276.276 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:35:01,316.316 INFO    ] ================================================
[2026-08-31 00:35:01,332.332 INFO    ] Launching Daemon at Mon Aug 31 00:35:01 IST 2026
[2026-08-31 00:35:01,343.343 INFO    ] ================================================
[2026-08-31 00:35:01,971.971 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:35:01
[2026-08-31 00:35:02,968.968 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:35:03,309.309 INFO    ] Initializing speech engine...
[2026-08-31 00:35:03,317.317 INFO    ] 2026-08-31 00:35:03
[2026-08-31 00:35:03,625.625 INFO    ] 2026-08-31 00:35:03
[2026-08-31 00:35:03,674.674 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:35:03,954.954 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:35:03,959.959 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:35:04,191.191 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:35:04,218.218 INFO    ] time= 31/08/2026 00:35:04
[2026-08-31 00:35:04,239.239 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:35:04,242.242 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:35:04,379.379 INFO    ] No existing commands found in stream
[2026-08-31 00:35:09,392.392 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:35:09,395.395 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-08-31 00:35:10,511.511 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 00:35:10,514.514 INFO    ] Checking for system updates...
[2026-08-31 00:35:10,550.550 INFO    ] 200
[2026-08-31 00:35:10,553.553 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:35:10,605.605 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:35:10,608.608 INFO    ] No update needed
[2026-08-31 00:35:10,610.610 INFO    ] Checking for camera pi updates...
[2026-08-31 00:35:10,646.646 INFO    ] 200
[2026-08-31 00:35:10,649.649 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:35:10,696.696 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:35:10,894.894 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:35:10,896.896 INFO    ] No camera update needed
[2026-08-31 00:35:10,899.899 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:35:10,901.901 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:35:10,906.906 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:35:10,912.912 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:35:12,953.953 INFO    ] ================================================
[2026-08-31 00:35:12,969.969 INFO    ] Launching Daemon at Mon Aug 31 00:35:12 IST 2026
[2026-08-31 00:35:12,979.979 INFO    ] ================================================
[2026-08-31 00:35:13,561.561 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:35:13
[2026-08-31 00:35:14,164.164 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:35:14,424.424 INFO    ] Initializing speech engine...
[2026-08-31 00:35:14,433.433 INFO    ] 2026-08-31 00:35:14
[2026-08-31 00:35:14,728.728 INFO    ] 2026-08-31 00:35:14
[2026-08-31 00:35:14,765.765 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:35:15,002.002 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:35:15,058.058 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:35:15,216.216 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:35:15,262.262 INFO    ] time= 31/08/2026 00:35:15
[2026-08-31 00:35:15,316.316 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:35:15,364.364 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:35:15,490.490 INFO    ] No existing commands found in stream
[2026-08-31 00:35:20,508.508 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:35:20,511.511 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-08-31 00:35:22,985.985 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 00:35:22,988.988 INFO    ] Checking for system updates...
[2026-08-31 00:35:23,023.023 INFO    ] 200
[2026-08-31 00:35:23,026.026 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:35:23,079.079 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:35:23,081.081 INFO    ] No update needed
[2026-08-31 00:35:23,084.084 INFO    ] Checking for camera pi updates...
[2026-08-31 00:35:23,118.118 INFO    ] 200
[2026-08-31 00:35:23,120.120 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:35:23,161.161 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:35:23,243.243 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:35:23,245.245 INFO    ] No camera update needed
[2026-08-31 00:35:23,248.248 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:35:23,250.250 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:35:23,256.256 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:35:23,261.261 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:35:25,301.301 INFO    ] ================================================
[2026-08-31 00:35:25,315.315 INFO    ] Launching Daemon at Mon Aug 31 00:35:25 IST 2026
[2026-08-31 00:35:25,326.326 INFO    ] ================================================
[2026-08-31 00:35:25,892.892 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:35:25
[2026-08-31 00:35:26,476.476 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:35:26,745.745 INFO    ] Initializing speech engine...
[2026-08-31 00:35:26,754.754 INFO    ] 2026-08-31 00:35:26
[2026-08-31 00:35:27,001.001 INFO    ] 2026-08-31 00:35:26
[2026-08-31 00:35:27,036.036 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:35:27,288.288 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:35:27,297.297 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:35:27,505.505 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:35:27,556.556 INFO    ] time= 31/08/2026 00:35:27
[2026-08-31 00:35:27,562.562 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:35:27,576.576 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:35:27,709.709 INFO    ] No existing commands found in stream
[2026-08-31 00:35:32,723.723 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:35:32,726.726 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-08-31 00:35:36,428.428 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 00:35:36,431.431 INFO    ] Checking for system updates...
[2026-08-31 00:35:36,471.471 INFO    ] 200
[2026-08-31 00:35:36,473.473 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:35:36,526.526 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:35:36,528.528 INFO    ] No update needed
[2026-08-31 00:35:36,531.531 INFO    ] Checking for camera pi updates...
[2026-08-31 00:35:36,565.565 INFO    ] 200
[2026-08-31 00:35:36,567.567 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:35:36,608.608 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:35:36,689.689 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:35:36,692.692 INFO    ] No camera update needed
[2026-08-31 00:35:36,694.694 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:35:36,696.696 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:35:36,702.702 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:35:36,707.707 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:35:38,746.746 INFO    ] ================================================
[2026-08-31 00:35:38,769.769 INFO    ] Launching Daemon at Mon Aug 31 00:35:38 IST 2026
[2026-08-31 00:35:38,780.780 INFO    ] ================================================
[2026-08-31 00:35:39,349.349 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:35:39
[2026-08-31 00:35:39,935.935 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:35:40,206.206 INFO    ] Initializing speech engine...
[2026-08-31 00:35:40,212.212 INFO    ] 2026-08-31 00:35:40
[2026-08-31 00:35:40,471.471 INFO    ] 2026-08-31 00:35:40
[2026-08-31 00:35:40,501.501 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:35:40,750.750 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:35:40,757.757 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:35:40,996.996 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:35:41,011.011 INFO    ] time= 31/08/2026 00:35:41
[2026-08-31 00:35:41,017.017 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:35:41,035.035 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:35:41,160.160 INFO    ] No existing commands found in stream
[2026-08-31 00:35:46,176.176 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:35:46,179.179 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-08-31 00:35:47,129.129 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 00:35:47,131.131 INFO    ] Checking for system updates...
[2026-08-31 00:35:47,167.167 INFO    ] 200
[2026-08-31 00:35:47,170.170 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:35:47,222.222 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:35:47,225.225 INFO    ] No update needed
[2026-08-31 00:35:47,227.227 INFO    ] Checking for camera pi updates...
[2026-08-31 00:35:47,260.260 INFO    ] 200
[2026-08-31 00:35:47,263.263 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:35:47,305.305 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:35:47,385.385 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:35:47,388.388 INFO    ] No camera update needed
[2026-08-31 00:35:47,390.390 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:35:47,393.393 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:35:47,398.398 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:35:47,403.403 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:35:49,445.445 INFO    ] ================================================
[2026-08-31 00:35:49,461.461 INFO    ] Launching Daemon at Mon Aug 31 00:35:49 IST 2026
[2026-08-31 00:35:49,472.472 INFO    ] ================================================
[2026-08-31 00:35:50,038.038 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:35:50
[2026-08-31 00:35:50,621.621 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:35:50,870.870 INFO    ] Initializing speech engine...
[2026-08-31 00:35:50,892.892 INFO    ] 2026-08-31 00:35:50
[2026-08-31 00:35:51,145.145 INFO    ] 2026-08-31 00:35:51
[2026-08-31 00:35:51,181.181 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:35:51,436.436 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:35:51,441.441 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:35:51,660.660 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:35:51,699.699 INFO    ] time= 31/08/2026 00:35:51
[2026-08-31 00:35:51,705.705 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:35:51,722.722 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:35:51,851.851 INFO    ] No existing commands found in stream
[2026-08-31 00:35:56,860.860 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:35:56,862.862 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-08-31 00:36:00,007.007 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 00:36:00,010.010 INFO    ] Checking for system updates...
[2026-08-31 00:36:00,047.047 INFO    ] 200
[2026-08-31 00:36:00,049.049 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:36:00,107.107 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:36:00,110.110 INFO    ] No update needed
[2026-08-31 00:36:00,112.112 INFO    ] Checking for camera pi updates...
[2026-08-31 00:36:00,145.145 INFO    ] 200
[2026-08-31 00:36:00,148.148 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:36:00,188.188 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:36:00,286.286 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:36:00,289.289 INFO    ] No camera update needed
[2026-08-31 00:36:00,291.291 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:36:00,293.293 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:36:00,299.299 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:36:00,304.304 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:36:02,349.349 INFO    ] ================================================
[2026-08-31 00:36:02,370.370 INFO    ] Launching Daemon at Mon Aug 31 00:36:02 IST 2026
[2026-08-31 00:36:02,388.388 INFO    ] ================================================
[2026-08-31 00:36:03,023.023 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:36:03
[2026-08-31 00:36:03,624.624 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:36:03,904.904 INFO    ] Initializing speech engine...
[2026-08-31 00:36:03,914.914 INFO    ] 2026-08-31 00:36:03
[2026-08-31 00:36:04,177.177 INFO    ] 2026-08-31 00:36:04
[2026-08-31 00:36:04,212.212 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:36:04,494.494 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:36:04,503.503 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:36:04,653.653 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:36:04,718.718 INFO    ] time= 31/08/2026 00:36:04
[2026-08-31 00:36:04,772.772 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:36:04,790.790 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:36:04,918.918 INFO    ] No existing commands found in stream
[2026-08-31 00:36:09,939.939 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:36:09,942.942 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-08-31 00:36:12,833.833 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 00:36:12,835.835 INFO    ] Checking for system updates...
[2026-08-31 00:36:12,874.874 INFO    ] 200
[2026-08-31 00:36:12,876.876 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:36:12,929.929 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:36:12,931.931 INFO    ] No update needed
[2026-08-31 00:36:12,934.934 INFO    ] Checking for camera pi updates...
[2026-08-31 00:36:12,970.970 INFO    ] 200
[2026-08-31 00:36:12,972.972 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:36:13,012.012 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:36:13,099.099 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:36:13,102.102 INFO    ] No camera update needed
[2026-08-31 00:36:13,104.104 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:36:13,107.107 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:36:13,114.114 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:36:13,120.120 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:36:15,162.162 INFO    ] ================================================
[2026-08-31 00:36:15,177.177 INFO    ] Launching Daemon at Mon Aug 31 00:36:15 IST 2026
[2026-08-31 00:36:15,188.188 INFO    ] ================================================
[2026-08-31 00:36:15,819.819 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:36:15
[2026-08-31 00:36:16,469.469 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:36:16,764.764 INFO    ] Initializing speech engine...
[2026-08-31 00:36:16,770.770 INFO    ] 2026-08-31 00:36:16
[2026-08-31 00:36:17,041.041 INFO    ] 2026-08-31 00:36:17
[2026-08-31 00:36:17,095.095 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:36:17,341.341 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:36:17,349.349 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:36:17,579.579 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:36:17,585.585 INFO    ] time= 31/08/2026 00:36:17
[2026-08-31 00:36:17,603.603 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:36:17,621.621 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:36:17,740.740 INFO    ] No existing commands found in stream
[2026-08-31 00:36:22,764.764 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:36:22,767.767 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-08-31 00:36:27,249.249 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 00:36:27,251.251 INFO    ] Checking for system updates...
[2026-08-31 00:36:27,288.288 INFO    ] 200
[2026-08-31 00:36:27,291.291 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:36:27,349.349 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:36:27,352.352 INFO    ] No update needed
[2026-08-31 00:36:27,354.354 INFO    ] Checking for camera pi updates...
[2026-08-31 00:36:27,389.389 INFO    ] 200
[2026-08-31 00:36:27,392.392 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:36:27,436.436 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:36:27,535.535 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:36:27,537.537 INFO    ] No camera update needed
[2026-08-31 00:36:27,540.540 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:36:27,543.543 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:36:27,550.550 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:36:27,556.556 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:36:29,597.597 INFO    ] ================================================
[2026-08-31 00:36:29,612.612 INFO    ] Launching Daemon at Mon Aug 31 00:36:29 IST 2026
[2026-08-31 00:36:29,623.623 INFO    ] ================================================
[2026-08-31 00:36:30,192.192 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:36:30
[2026-08-31 00:36:30,776.776 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:36:31,031.031 INFO    ] Initializing speech engine...
[2026-08-31 00:36:31,038.038 INFO    ] 2026-08-31 00:36:31
[2026-08-31 00:36:31,329.329 INFO    ] 2026-08-31 00:36:31
[2026-08-31 00:36:31,367.367 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:36:31,704.704 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:36:31,710.710 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:36:31,947.947 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:36:31,990.990 INFO    ] time= 31/08/2026 00:36:31
[2026-08-31 00:36:31,996.996 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:36:32,014.014 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:36:32,182.182 INFO    ] No existing commands found in stream
[2026-08-31 00:36:37,204.204 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:36:37,207.207 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-08-31 00:36:41,743.743 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 00:36:41,745.745 INFO    ] Checking for system updates...
[2026-08-31 00:36:41,780.780 INFO    ] 200
[2026-08-31 00:36:41,783.783 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:36:41,838.838 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:36:41,841.841 INFO    ] No update needed
[2026-08-31 00:36:41,843.843 INFO    ] Checking for camera pi updates...
[2026-08-31 00:36:41,876.876 INFO    ] 200
[2026-08-31 00:36:41,879.879 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:36:41,923.923 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:36:42,028.028 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:36:42,030.030 INFO    ] No camera update needed
[2026-08-31 00:36:42,032.032 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:36:42,035.035 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:36:42,040.040 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:36:42,045.045 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:36:44,085.085 INFO    ] ================================================
[2026-08-31 00:36:44,101.101 INFO    ] Launching Daemon at Mon Aug 31 00:36:44 IST 2026
[2026-08-31 00:36:44,112.112 INFO    ] ================================================
[2026-08-31 00:36:44,761.761 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:36:44
[2026-08-31 00:36:45,375.375 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:36:45,621.621 INFO    ] Initializing speech engine...
[2026-08-31 00:36:45,627.627 INFO    ] 2026-08-31 00:36:45
[2026-08-31 00:36:45,897.897 INFO    ] 2026-08-31 00:36:45
[2026-08-31 00:36:45,932.932 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:36:46,427.427 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:36:46,439.439 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:36:46,662.662 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:36:46,690.690 INFO    ] time= 31/08/2026 00:36:46
[2026-08-31 00:36:46,728.728 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:36:46,777.777 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:36:46,988.988 INFO    ] No existing commands found in stream
[2026-08-31 00:36:52,018.018 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:36:52,021.021 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-08-31 00:36:56,166.166 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 00:36:56,169.169 INFO    ] Checking for system updates...
[2026-08-31 00:36:56,204.204 INFO    ] 200
[2026-08-31 00:36:56,207.207 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:36:56,260.260 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:36:56,262.262 INFO    ] No update needed
[2026-08-31 00:36:56,265.265 INFO    ] Checking for camera pi updates...
[2026-08-31 00:36:56,298.298 INFO    ] 200
[2026-08-31 00:36:56,301.301 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:36:56,341.341 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:36:56,416.416 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:36:56,419.419 INFO    ] No camera update needed
[2026-08-31 00:36:56,421.421 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:36:56,424.424 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:36:56,429.429 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:36:56,434.434 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:36:58,477.477 INFO    ] ================================================
[2026-08-31 00:36:58,493.493 INFO    ] Launching Daemon at Mon Aug 31 00:36:58 IST 2026
[2026-08-31 00:36:58,503.503 INFO    ] ================================================
[2026-08-31 00:36:59,158.158 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:36:59
[2026-08-31 00:36:59,832.832 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:37:00,137.137 INFO    ] Initializing speech engine...
[2026-08-31 00:37:00,150.150 INFO    ] 2026-08-31 00:37:00
[2026-08-31 00:37:00,459.459 INFO    ] 2026-08-31 00:37:00
[2026-08-31 00:37:00,544.544 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:37:00,822.822 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:37:00,870.870 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:37:01,101.101 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:37:01,135.135 INFO    ] time= 31/08/2026 00:37:01
[2026-08-31 00:37:01,190.190 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:37:01,219.219 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:37:01,382.382 INFO    ] No existing commands found in stream
[2026-08-31 00:37:06,417.417 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:37:06,421.421 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-08-31 00:37:10,547.547 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 00:37:10,550.550 INFO    ] Checking for system updates...
[2026-08-31 00:37:10,586.586 INFO    ] 200
[2026-08-31 00:37:10,589.589 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:37:10,644.644 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:37:10,647.647 INFO    ] No update needed
[2026-08-31 00:37:10,650.650 INFO    ] Checking for camera pi updates...
[2026-08-31 00:37:10,685.685 INFO    ] 200
[2026-08-31 00:37:10,688.688 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:37:10,731.731 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:37:10,811.811 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:37:10,814.814 INFO    ] No camera update needed
[2026-08-31 00:37:10,817.817 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:37:10,820.820 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:37:10,826.826 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:37:10,832.832 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:37:12,874.874 INFO    ] ================================================
[2026-08-31 00:37:12,889.889 INFO    ] Launching Daemon at Mon Aug 31 00:37:12 IST 2026
[2026-08-31 00:37:12,900.900 INFO    ] ================================================
[2026-08-31 00:37:13,472.472 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:37:13
[2026-08-31 00:37:14,063.063 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:37:14,320.320 INFO    ] Initializing speech engine...
[2026-08-31 00:37:14,328.328 INFO    ] 2026-08-31 00:37:14
[2026-08-31 00:37:14,628.628 INFO    ] 2026-08-31 00:37:14
[2026-08-31 00:37:14,663.663 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:37:14,934.934 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:37:14,965.965 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:37:15,189.189 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:37:15,243.243 INFO    ] time= 31/08/2026 00:37:15
[2026-08-31 00:37:15,277.277 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:37:15,283.283 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:37:15,417.417 INFO    ] No existing commands found in stream
[2026-08-31 00:37:20,442.442 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:37:20,445.445 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-08-31 00:37:23,622.622 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 00:37:23,625.625 INFO    ] Checking for system updates...
[2026-08-31 00:37:23,666.666 INFO    ] 200
[2026-08-31 00:37:23,669.669 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:37:23,733.733 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:37:23,736.736 INFO    ] No update needed
[2026-08-31 00:37:23,738.738 INFO    ] Checking for camera pi updates...
[2026-08-31 00:37:23,773.773 INFO    ] 200
[2026-08-31 00:37:23,776.776 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:37:23,823.823 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:37:24,006.006 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:37:24,009.009 INFO    ] No camera update needed
[2026-08-31 00:37:24,012.012 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:37:24,015.015 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:37:24,021.021 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:37:24,027.027 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:37:26,070.070 INFO    ] ================================================
[2026-08-31 00:37:26,085.085 INFO    ] Launching Daemon at Mon Aug 31 00:37:26 IST 2026
[2026-08-31 00:37:26,100.100 INFO    ] ================================================
[2026-08-31 00:37:26,765.765 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:37:26
[2026-08-31 00:37:27,458.458 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:37:27,765.765 INFO    ] Initializing speech engine...
[2026-08-31 00:37:27,777.777 INFO    ] 2026-08-31 00:37:27
[2026-08-31 00:37:28,055.055 INFO    ] 2026-08-31 00:37:28
[2026-08-31 00:37:28,121.121 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:37:28,395.395 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:37:28,401.401 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:37:28,596.596 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:37:28,615.615 INFO    ] time= 31/08/2026 00:37:28
[2026-08-31 00:37:28,624.624 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:37:28,653.653 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:37:28,763.763 INFO    ] No existing commands found in stream
[2026-08-31 00:37:33,788.788 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:37:33,791.791 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-08-31 00:37:38,349.349 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 00:37:38,352.352 INFO    ] Checking for system updates...
[2026-08-31 00:37:38,390.390 INFO    ] 200
[2026-08-31 00:37:38,393.393 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:37:38,448.448 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:37:38,450.450 INFO    ] No update needed
[2026-08-31 00:37:38,453.453 INFO    ] Checking for camera pi updates...
[2026-08-31 00:37:38,489.489 INFO    ] 200
[2026-08-31 00:37:38,492.492 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:37:38,540.540 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:37:38,633.633 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:37:38,636.636 INFO    ] No camera update needed
[2026-08-31 00:37:38,639.639 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:37:38,642.642 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:37:38,648.648 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:37:38,654.654 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:37:40,696.696 INFO    ] ================================================
[2026-08-31 00:37:40,711.711 INFO    ] Launching Daemon at Mon Aug 31 00:37:40 IST 2026
[2026-08-31 00:37:40,722.722 INFO    ] ================================================
[2026-08-31 00:37:41,294.294 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:37:41
[2026-08-31 00:37:41,878.878 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:37:42,134.134 INFO    ] Initializing speech engine...
[2026-08-31 00:37:42,142.142 INFO    ] 2026-08-31 00:37:42
[2026-08-31 00:37:42,441.441 INFO    ] 2026-08-31 00:37:42
[2026-08-31 00:37:42,479.479 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:37:42,776.776 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:37:42,786.786 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:37:43,002.002 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:37:43,051.051 INFO    ] time= 31/08/2026 00:37:43
[2026-08-31 00:37:43,093.093 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:37:43,100.100 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:37:43,228.228 INFO    ] No existing commands found in stream
[2026-08-31 00:37:48,246.246 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:37:48,249.249 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-08-31 00:37:51,687.687 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 00:37:51,690.690 INFO    ] Checking for system updates...
[2026-08-31 00:37:51,725.725 INFO    ] 200
[2026-08-31 00:37:51,728.728 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:37:51,781.781 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:37:51,784.784 INFO    ] No update needed
[2026-08-31 00:37:51,786.786 INFO    ] Checking for camera pi updates...
[2026-08-31 00:37:51,820.820 INFO    ] 200
[2026-08-31 00:37:51,822.822 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:37:51,863.863 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:37:51,928.928 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:37:51,930.930 INFO    ] No camera update needed
[2026-08-31 00:37:51,933.933 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:37:51,935.935 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:37:51,940.940 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:37:51,945.945 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:37:53,989.989 INFO    ] ================================================
[2026-08-31 00:37:54,004.004 INFO    ] Launching Daemon at Mon Aug 31 00:37:53 IST 2026
[2026-08-31 00:37:54,016.016 INFO    ] ================================================
[2026-08-31 00:37:54,667.667 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:37:54
[2026-08-31 00:37:55,351.351 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:37:55,660.660 INFO    ] Initializing speech engine...
[2026-08-31 00:37:55,673.673 INFO    ] 2026-08-31 00:37:55
[2026-08-31 00:37:55,992.992 INFO    ] 2026-08-31 00:37:55
[2026-08-31 00:37:56,075.075 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:37:56,293.293 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:37:56,300.300 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:37:56,512.512 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:37:56,542.542 INFO    ] time= 31/08/2026 00:37:56
[2026-08-31 00:37:56,550.550 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:37:56,561.561 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:37:56,692.692 INFO    ] No existing commands found in stream
[2026-08-31 00:38:01,721.721 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:38:01,726.726 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-08-31 00:38:04,007.007 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 00:38:04,010.010 INFO    ] Checking for system updates...
[2026-08-31 00:38:04,050.050 INFO    ] 200
[2026-08-31 00:38:04,052.052 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:38:04,116.116 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:38:04,119.119 INFO    ] No update needed
[2026-08-31 00:38:04,122.122 INFO    ] Checking for camera pi updates...
[2026-08-31 00:38:04,158.158 INFO    ] 200
[2026-08-31 00:38:04,161.161 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:38:04,203.203 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:38:04,286.286 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:38:04,289.289 INFO    ] No camera update needed
[2026-08-31 00:38:04,291.291 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:38:04,293.293 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:38:04,299.299 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:38:04,304.304 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:38:06,344.344 INFO    ] ================================================
[2026-08-31 00:38:06,361.361 INFO    ] Launching Daemon at Mon Aug 31 00:38:06 IST 2026
[2026-08-31 00:38:06,372.372 INFO    ] ================================================
[2026-08-31 00:38:06,981.981 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:38:06
[2026-08-31 00:38:07,565.565 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:38:07,834.834 INFO    ] Initializing speech engine...
[2026-08-31 00:38:07,845.845 INFO    ] 2026-08-31 00:38:07
[2026-08-31 00:38:08,088.088 INFO    ] 2026-08-31 00:38:08
[2026-08-31 00:38:08,123.123 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:38:08,380.380 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:38:08,386.386 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:38:08,617.617 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:38:08,643.643 INFO    ] time= 31/08/2026 00:38:08
[2026-08-31 00:38:08,649.649 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:38:08,669.669 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:38:08,794.794 INFO    ] No existing commands found in stream
[2026-08-31 00:38:13,809.809 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:38:13,812.812 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-08-31 00:38:17,926.926 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 00:38:17,929.929 INFO    ] Checking for system updates...
[2026-08-31 00:38:17,964.964 INFO    ] 200
[2026-08-31 00:38:17,967.967 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:38:18,019.019 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:38:18,021.021 INFO    ] No update needed
[2026-08-31 00:38:18,024.024 INFO    ] Checking for camera pi updates...
[2026-08-31 00:38:18,058.058 INFO    ] 200
[2026-08-31 00:38:18,060.060 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:38:18,105.105 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:38:18,186.186 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:38:18,189.189 INFO    ] No camera update needed
[2026-08-31 00:38:18,191.191 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:38:18,194.194 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:38:18,199.199 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:38:18,204.204 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:38:20,245.245 INFO    ] ================================================
[2026-08-31 00:38:20,260.260 INFO    ] Launching Daemon at Mon Aug 31 00:38:20 IST 2026
[2026-08-31 00:38:20,271.271 INFO    ] ================================================
[2026-08-31 00:38:20,850.850 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:38:20
[2026-08-31 00:38:21,436.436 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:38:21,704.704 INFO    ] Initializing speech engine...
[2026-08-31 00:38:21,713.713 INFO    ] 2026-08-31 00:38:21
[2026-08-31 00:38:21,960.960 INFO    ] 2026-08-31 00:38:21
[2026-08-31 00:38:21,996.996 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:38:22,247.247 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:38:22,256.256 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:38:22,469.469 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:38:22,515.515 INFO    ] time= 31/08/2026 00:38:22
[2026-08-31 00:38:22,521.521 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:38:22,539.539 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:38:22,671.671 INFO    ] No existing commands found in stream
[2026-08-31 00:38:27,686.686 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:38:27,689.689 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-08-31 00:38:30,991.991 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 00:38:30,994.994 INFO    ] Checking for system updates...
[2026-08-31 00:38:31,030.030 INFO    ] 200
[2026-08-31 00:38:31,033.033 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:38:31,089.089 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:38:31,092.092 INFO    ] No update needed
[2026-08-31 00:38:31,094.094 INFO    ] Checking for camera pi updates...
[2026-08-31 00:38:31,128.128 INFO    ] 200
[2026-08-31 00:38:31,131.131 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:38:31,173.173 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:38:31,257.257 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:38:31,260.260 INFO    ] No camera update needed
[2026-08-31 00:38:31,262.262 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:38:31,264.264 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:38:31,270.270 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:38:31,275.275 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:38:33,319.319 INFO    ] ================================================
[2026-08-31 00:38:33,335.335 INFO    ] Launching Daemon at Mon Aug 31 00:38:33 IST 2026
[2026-08-31 00:38:33,346.346 INFO    ] ================================================
[2026-08-31 00:38:33,916.916 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:38:33
[2026-08-31 00:38:34,497.497 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:38:34,765.765 INFO    ] Initializing speech engine...
[2026-08-31 00:38:34,774.774 INFO    ] 2026-08-31 00:38:34
[2026-08-31 00:38:35,019.019 INFO    ] 2026-08-31 00:38:35
[2026-08-31 00:38:35,055.055 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:38:35,310.310 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:38:35,314.314 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:38:35,552.552 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:38:35,570.570 INFO    ] time= 31/08/2026 00:38:35
[2026-08-31 00:38:35,576.576 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:38:35,596.596 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:38:35,724.724 INFO    ] No existing commands found in stream
[2026-08-31 00:38:40,740.740 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:38:40,743.743 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-08-31 00:38:41,644.644 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 00:38:41,646.646 INFO    ] Checking for system updates...
[2026-08-31 00:38:41,683.683 INFO    ] 200
[2026-08-31 00:38:41,685.685 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:38:41,738.738 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:38:41,740.740 INFO    ] No update needed
[2026-08-31 00:38:41,743.743 INFO    ] Checking for camera pi updates...
[2026-08-31 00:38:41,776.776 INFO    ] 200
[2026-08-31 00:38:41,779.779 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:38:41,819.819 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:38:41,899.899 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:38:41,902.902 INFO    ] No camera update needed
[2026-08-31 00:38:41,904.904 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:38:41,906.906 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:38:41,912.912 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:38:41,917.917 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:38:43,959.959 INFO    ] ================================================
[2026-08-31 00:38:43,975.975 INFO    ] Launching Daemon at Mon Aug 31 00:38:43 IST 2026
[2026-08-31 00:38:43,986.986 INFO    ] ================================================
[2026-08-31 00:38:44,666.666 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:38:44
[2026-08-31 00:38:45,254.254 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:38:45,526.526 INFO    ] Initializing speech engine...
[2026-08-31 00:38:45,533.533 INFO    ] 2026-08-31 00:38:45
[2026-08-31 00:38:45,791.791 INFO    ] 2026-08-31 00:38:45
[2026-08-31 00:38:45,821.821 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:38:46,093.093 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:38:46,098.098 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:38:46,327.327 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:38:46,334.334 INFO    ] time= 31/08/2026 00:38:46
[2026-08-31 00:38:46,352.352 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:38:46,364.364 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:38:46,486.486 INFO    ] No existing commands found in stream
[2026-08-31 00:38:51,503.503 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:38:51,505.505 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-08-31 00:38:54,226.226 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 00:38:54,229.229 INFO    ] Checking for system updates...
[2026-08-31 00:38:54,265.265 INFO    ] 200
[2026-08-31 00:38:54,268.268 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:38:54,333.333 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:38:54,335.335 INFO    ] No update needed
[2026-08-31 00:38:54,338.338 INFO    ] Checking for camera pi updates...
[2026-08-31 00:38:54,376.376 INFO    ] 200
[2026-08-31 00:38:54,378.378 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:38:54,419.419 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:38:54,505.505 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:38:54,507.507 INFO    ] No camera update needed
[2026-08-31 00:38:54,510.510 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:38:54,512.512 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:38:54,517.517 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:38:54,522.522 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:38:56,566.566 INFO    ] ================================================
[2026-08-31 00:38:56,582.582 INFO    ] Launching Daemon at Mon Aug 31 00:38:56 IST 2026
[2026-08-31 00:38:56,593.593 INFO    ] ================================================
[2026-08-31 00:38:57,197.197 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:38:57
[2026-08-31 00:38:57,797.797 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:38:58,072.072 INFO    ] Initializing speech engine...
[2026-08-31 00:38:58,081.081 INFO    ] 2026-08-31 00:38:58
[2026-08-31 00:38:58,344.344 INFO    ] 2026-08-31 00:38:58
[2026-08-31 00:38:58,398.398 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:38:58,625.625 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:38:58,630.630 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:38:58,829.829 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:38:58,884.884 INFO    ] time= 31/08/2026 00:38:58
[2026-08-31 00:38:58,894.894 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:38:58,909.909 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:38:59,022.022 INFO    ] No existing commands found in stream
[2026-08-31 00:39:04,049.049 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:39:04,052.052 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-08-31 00:39:05,544.544 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 00:39:05,547.547 INFO    ] Checking for system updates...
[2026-08-31 00:39:05,583.583 INFO    ] 200
[2026-08-31 00:39:05,585.585 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:39:05,653.653 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:39:05,656.656 INFO    ] No update needed
[2026-08-31 00:39:05,658.658 INFO    ] Checking for camera pi updates...
[2026-08-31 00:39:05,695.695 INFO    ] 200
[2026-08-31 00:39:05,698.698 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:39:05,739.739 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:39:05,819.819 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:39:05,821.821 INFO    ] No camera update needed
[2026-08-31 00:39:05,824.824 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:39:05,826.826 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:39:05,831.831 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:39:05,836.836 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:39:07,876.876 INFO    ] ================================================
[2026-08-31 00:39:07,892.892 INFO    ] Launching Daemon at Mon Aug 31 00:39:07 IST 2026
[2026-08-31 00:39:07,903.903 INFO    ] ================================================
[2026-08-31 00:39:08,469.469 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:39:08
[2026-08-31 00:39:09,051.051 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:39:09,317.317 INFO    ] Initializing speech engine...
[2026-08-31 00:39:09,326.326 INFO    ] 2026-08-31 00:39:09
[2026-08-31 00:39:09,587.587 INFO    ] 2026-08-31 00:39:09
[2026-08-31 00:39:09,637.637 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:39:09,865.865 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:39:09,871.871 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:39:10,111.111 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:39:10,126.126 INFO    ] time= 31/08/2026 00:39:10
[2026-08-31 00:39:10,132.132 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:39:10,150.150 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:39:10,278.278 INFO    ] No existing commands found in stream
[2026-08-31 00:39:15,291.291 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:39:15,294.294 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-08-31 00:39:18,271.271 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 00:39:18,274.274 INFO    ] Checking for system updates...
[2026-08-31 00:39:18,311.311 INFO    ] 200
[2026-08-31 00:39:18,313.313 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:39:18,374.374 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:39:18,377.377 INFO    ] No update needed
[2026-08-31 00:39:18,380.380 INFO    ] Checking for camera pi updates...
[2026-08-31 00:39:18,414.414 INFO    ] 200
[2026-08-31 00:39:18,417.417 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:39:18,459.459 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:39:18,563.563 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:39:18,565.565 INFO    ] No camera update needed
[2026-08-31 00:39:18,568.568 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:39:18,571.571 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:39:18,577.577 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:39:18,583.583 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:39:20,625.625 INFO    ] ================================================
[2026-08-31 00:39:20,640.640 INFO    ] Launching Daemon at Mon Aug 31 00:39:20 IST 2026
[2026-08-31 00:39:20,650.650 INFO    ] ================================================
[2026-08-31 00:39:21,217.217 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:39:21
[2026-08-31 00:39:21,801.801 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:39:22,056.056 INFO    ] Initializing speech engine...
[2026-08-31 00:39:22,072.072 INFO    ] 2026-08-31 00:39:22
[2026-08-31 00:39:22,323.323 INFO    ] 2026-08-31 00:39:22
[2026-08-31 00:39:22,356.356 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:39:22,608.608 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:39:22,618.618 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:39:22,820.820 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:39:22,875.875 INFO    ] time= 31/08/2026 00:39:22
[2026-08-31 00:39:22,882.882 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:39:22,900.900 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:39:23,019.019 INFO    ] No existing commands found in stream
[2026-08-31 00:39:28,040.040 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:39:28,043.043 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-08-31 00:39:31,604.604 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 00:39:31,606.606 INFO    ] Checking for system updates...
[2026-08-31 00:39:31,650.650 INFO    ] 200
[2026-08-31 00:39:31,653.653 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:39:31,729.729 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:39:31,732.732 INFO    ] No update needed
[2026-08-31 00:39:31,735.735 INFO    ] Checking for camera pi updates...
[2026-08-31 00:39:31,771.771 INFO    ] 200
[2026-08-31 00:39:31,774.774 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:39:31,824.824 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:39:31,898.898 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:39:31,901.901 INFO    ] No camera update needed
[2026-08-31 00:39:31,903.903 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:39:31,906.906 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:39:31,912.912 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:39:31,918.918 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:39:33,959.959 INFO    ] ================================================
[2026-08-31 00:39:33,974.974 INFO    ] Launching Daemon at Mon Aug 31 00:39:33 IST 2026
[2026-08-31 00:39:33,984.984 INFO    ] ================================================
[2026-08-31 00:39:34,552.552 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:39:34
[2026-08-31 00:39:35,138.138 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:39:35,410.410 INFO    ] Initializing speech engine...
[2026-08-31 00:39:35,416.416 INFO    ] 2026-08-31 00:39:35
[2026-08-31 00:39:35,662.662 INFO    ] 2026-08-31 00:39:35
[2026-08-31 00:39:35,696.696 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:39:35,947.947 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:39:35,957.957 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:39:36,212.212 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:39:36,229.229 INFO    ] time= 31/08/2026 00:39:36
[2026-08-31 00:39:36,237.237 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:39:36,265.265 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:39:36,410.410 INFO    ] No existing commands found in stream
[2026-08-31 00:39:41,440.440 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:39:41,443.443 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-08-31 00:39:45,751.751 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 00:39:45,754.754 INFO    ] Checking for system updates...
[2026-08-31 00:39:45,790.790 INFO    ] 200
[2026-08-31 00:39:45,792.792 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:39:45,845.845 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:39:45,848.848 INFO    ] No update needed
[2026-08-31 00:39:45,850.850 INFO    ] Checking for camera pi updates...
[2026-08-31 00:39:45,884.884 INFO    ] 200
[2026-08-31 00:39:45,886.886 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:39:45,927.927 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:39:46,010.010 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:39:46,012.012 INFO    ] No camera update needed
[2026-08-31 00:39:46,014.014 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:39:46,017.017 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:39:46,023.023 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:39:46,029.029 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:39:48,069.069 INFO    ] ================================================
[2026-08-31 00:39:48,085.085 INFO    ] Launching Daemon at Mon Aug 31 00:39:48 IST 2026
[2026-08-31 00:39:48,096.096 INFO    ] ================================================
[2026-08-31 00:39:48,746.746 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:39:48
[2026-08-31 00:39:49,414.414 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:39:49,721.721 INFO    ] Initializing speech engine...
[2026-08-31 00:39:49,732.732 INFO    ] 2026-08-31 00:39:49
[2026-08-31 00:39:50,046.046 INFO    ] 2026-08-31 00:39:50
[2026-08-31 00:39:50,129.129 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:39:50,408.408 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:39:50,466.466 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:39:50,709.709 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:39:50,779.779 INFO    ] time= 31/08/2026 00:39:50
[2026-08-31 00:39:50,805.805 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:39:50,864.864 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:39:50,992.992 INFO    ] No existing commands found in stream
[2026-08-31 00:39:56,011.011 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:39:56,014.014 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-08-31 00:40:00,274.274 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 00:40:00,276.276 INFO    ] Checking for system updates...
[2026-08-31 00:40:00,316.316 INFO    ] 200
[2026-08-31 00:40:00,319.319 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:40:00,378.378 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:40:00,381.381 INFO    ] No update needed
[2026-08-31 00:40:00,384.384 INFO    ] Checking for camera pi updates...
[2026-08-31 00:40:00,419.419 INFO    ] 200
[2026-08-31 00:40:00,422.422 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:40:00,468.468 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:40:00,548.548 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:40:00,551.551 INFO    ] No camera update needed
[2026-08-31 00:40:00,554.554 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:40:00,556.556 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:40:00,562.562 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:40:00,569.569 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:40:02,631.631 INFO    ] ================================================
[2026-08-31 00:40:02,668.668 INFO    ] Launching Daemon at Mon Aug 31 00:40:02 IST 2026
[2026-08-31 00:40:02,686.686 INFO    ] ================================================
[2026-08-31 00:40:03,394.394 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:40:03
[2026-08-31 00:40:04,103.103 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:40:04,400.400 INFO    ] Initializing speech engine...
[2026-08-31 00:40:04,410.410 INFO    ] 2026-08-31 00:40:04
[2026-08-31 00:40:04,685.685 INFO    ] 2026-08-31 00:40:04
[2026-08-31 00:40:04,739.739 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:40:05,026.026 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:40:05,032.032 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:40:05,229.229 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:40:05,246.246 INFO    ] time= 31/08/2026 00:40:05
[2026-08-31 00:40:05,257.257 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:40:05,283.283 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:40:05,395.395 INFO    ] No existing commands found in stream
[2026-08-31 00:40:10,425.425 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:40:10,428.428 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-08-31 00:40:14,710.710 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 00:40:14,714.714 INFO    ] Checking for system updates...
[2026-08-31 00:40:14,751.751 INFO    ] 200
[2026-08-31 00:40:14,754.754 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:40:14,808.808 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:40:14,811.811 INFO    ] No update needed
[2026-08-31 00:40:14,813.813 INFO    ] Checking for camera pi updates...
[2026-08-31 00:40:14,849.849 INFO    ] 200
[2026-08-31 00:40:14,851.851 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:40:14,898.898 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:40:14,976.976 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:40:14,979.979 INFO    ] No camera update needed
[2026-08-31 00:40:14,982.982 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:40:14,985.985 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:40:14,991.991 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:40:14,997.997 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:40:17,038.038 INFO    ] ================================================
[2026-08-31 00:40:17,054.054 INFO    ] Launching Daemon at Mon Aug 31 00:40:17 IST 2026
[2026-08-31 00:40:17,065.065 INFO    ] ================================================
[2026-08-31 00:40:17,746.746 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:40:17
[2026-08-31 00:40:18,423.423 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:40:18,698.698 INFO    ] Initializing speech engine...
[2026-08-31 00:40:18,709.709 INFO    ] 2026-08-31 00:40:18
[2026-08-31 00:40:18,961.961 INFO    ] 2026-08-31 00:40:18
[2026-08-31 00:40:19,019.019 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:40:19,264.264 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:40:19,271.271 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:40:19,503.503 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:40:19,510.510 INFO    ] time= 31/08/2026 00:40:19
[2026-08-31 00:40:19,528.528 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:40:19,535.535 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:40:19,664.664 INFO    ] No existing commands found in stream
[2026-08-31 00:40:24,687.687 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:40:24,861.861 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-08-31 00:40:28,083.083 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 00:40:28,086.086 INFO    ] Checking for system updates...
[2026-08-31 00:40:28,123.123 INFO    ] 200
[2026-08-31 00:40:28,125.125 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:40:28,183.183 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:40:28,186.186 INFO    ] No update needed
[2026-08-31 00:40:28,193.193 INFO    ] Checking for camera pi updates...
[2026-08-31 00:40:28,227.227 INFO    ] 200
[2026-08-31 00:40:28,230.230 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:40:28,271.271 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:40:28,340.340 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:40:28,342.342 INFO    ] No camera update needed
[2026-08-31 00:40:28,345.345 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:40:28,347.347 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:40:28,353.353 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:40:28,358.358 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:40:30,399.399 INFO    ] ================================================
[2026-08-31 00:40:30,414.414 INFO    ] Launching Daemon at Mon Aug 31 00:40:30 IST 2026
[2026-08-31 00:40:30,424.424 INFO    ] ================================================
[2026-08-31 00:40:30,991.991 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:40:30
[2026-08-31 00:40:31,577.577 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:40:31,853.853 INFO    ] Initializing speech engine...
[2026-08-31 00:40:31,859.859 INFO    ] 2026-08-31 00:40:31
[2026-08-31 00:40:32,147.147 INFO    ] 2026-08-31 00:40:32
[2026-08-31 00:40:32,184.184 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:40:32,453.453 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:40:32,463.463 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:40:32,634.634 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:40:32,700.700 INFO    ] time= 31/08/2026 00:40:32
[2026-08-31 00:40:32,738.738 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:40:32,754.754 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:40:32,895.895 INFO    ] No existing commands found in stream
[2026-08-31 00:40:37,935.935 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:40:37,938.938 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-08-31 00:40:41,764.764 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 00:40:41,767.767 INFO    ] Checking for system updates...
[2026-08-31 00:40:41,803.803 INFO    ] 200
[2026-08-31 00:40:41,805.805 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:40:41,859.859 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:40:41,861.861 INFO    ] No update needed
[2026-08-31 00:40:41,864.864 INFO    ] Checking for camera pi updates...
[2026-08-31 00:40:41,897.897 INFO    ] 200
[2026-08-31 00:40:41,900.900 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:40:41,939.939 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:40:42,028.028 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:40:42,030.030 INFO    ] No camera update needed
[2026-08-31 00:40:42,033.033 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:40:42,035.035 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:40:42,040.040 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:40:42,045.045 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:40:44,086.086 INFO    ] ================================================
[2026-08-31 00:40:44,101.101 INFO    ] Launching Daemon at Mon Aug 31 00:40:44 IST 2026
[2026-08-31 00:40:44,112.112 INFO    ] ================================================
[2026-08-31 00:40:44,680.680 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:40:44
[2026-08-31 00:40:45,267.267 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:40:45,533.533 INFO    ] Initializing speech engine...
[2026-08-31 00:40:45,542.542 INFO    ] 2026-08-31 00:40:45
[2026-08-31 00:40:45,790.790 INFO    ] 2026-08-31 00:40:45
[2026-08-31 00:40:45,824.824 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:40:46,080.080 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:40:46,086.086 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:40:46,321.321 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:40:46,344.344 INFO    ] time= 31/08/2026 00:40:46
[2026-08-31 00:40:46,360.360 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:40:46,368.368 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:40:46,497.497 INFO    ] No existing commands found in stream
[2026-08-31 00:40:51,515.515 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:40:51,518.518 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-08-31 00:40:55,602.602 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 00:40:55,605.605 INFO    ] Checking for system updates...
[2026-08-31 00:40:55,644.644 INFO    ] 200
[2026-08-31 00:40:55,647.647 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:40:55,700.700 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:40:55,703.703 INFO    ] No update needed
[2026-08-31 00:40:55,705.705 INFO    ] Checking for camera pi updates...
[2026-08-31 00:40:55,739.739 INFO    ] 200
[2026-08-31 00:40:55,741.741 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:40:55,782.782 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:40:55,869.869 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:40:55,871.871 INFO    ] No camera update needed
[2026-08-31 00:40:55,873.873 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:40:55,875.875 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:40:55,881.881 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:40:55,886.886 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:40:57,928.928 INFO    ] ================================================
[2026-08-31 00:40:57,944.944 INFO    ] Launching Daemon at Mon Aug 31 00:40:57 IST 2026
[2026-08-31 00:40:57,954.954 INFO    ] ================================================
[2026-08-31 00:40:58,521.521 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:40:58
[2026-08-31 00:40:59,108.108 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:40:59,362.362 INFO    ] Initializing speech engine...
[2026-08-31 00:40:59,379.379 INFO    ] 2026-08-31 00:40:59
[2026-08-31 00:40:59,669.669 INFO    ] 2026-08-31 00:40:59
[2026-08-31 00:40:59,694.694 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:40:59,939.939 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:40:59,989.989 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:41:00,167.167 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:41:00,227.227 INFO    ] time= 31/08/2026 00:41:00
[2026-08-31 00:41:00,276.276 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:41:00,298.298 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:41:00,444.444 INFO    ] No existing commands found in stream
[2026-08-31 00:41:05,457.457 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:41:05,460.460 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-08-31 00:41:09,682.682 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 00:41:09,685.685 INFO    ] Checking for system updates...
[2026-08-31 00:41:09,722.722 INFO    ] 200
[2026-08-31 00:41:09,724.724 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:41:09,777.777 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:41:09,780.780 INFO    ] No update needed
[2026-08-31 00:41:09,782.782 INFO    ] Checking for camera pi updates...
[2026-08-31 00:41:09,817.817 INFO    ] 200
[2026-08-31 00:41:09,819.819 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:41:09,868.868 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:41:09,937.937 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:41:09,940.940 INFO    ] No camera update needed
[2026-08-31 00:41:09,942.942 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:41:09,945.945 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:41:09,951.951 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:41:09,957.957 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:41:12,999.999 INFO    ] ================================================
[2026-08-31 00:41:12,014.014 INFO    ] Launching Daemon at Mon Aug 31 00:41:12 IST 2026
[2026-08-31 00:41:12,025.025 INFO    ] ================================================
[2026-08-31 00:41:12,599.599 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:41:12
[2026-08-31 00:41:13,183.183 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:41:13,442.442 INFO    ] Initializing speech engine...
[2026-08-31 00:41:13,456.456 INFO    ] 2026-08-31 00:41:13
[2026-08-31 00:41:13,737.737 INFO    ] 2026-08-31 00:41:13
[2026-08-31 00:41:13,774.774 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:41:14,061.061 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:41:14,071.071 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:41:14,298.298 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:41:14,348.348 INFO    ] time= 31/08/2026 00:41:14
[2026-08-31 00:41:14,366.366 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:41:14,372.372 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:41:14,507.507 INFO    ] No existing commands found in stream
[2026-08-31 00:41:19,537.537 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:41:19,540.540 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-08-31 00:41:20,163.163 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 00:41:20,165.165 INFO    ] Checking for system updates...
[2026-08-31 00:41:20,201.201 INFO    ] 200
[2026-08-31 00:41:20,226.226 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:41:20,287.287 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:41:20,290.290 INFO    ] No update needed
[2026-08-31 00:41:20,293.293 INFO    ] Checking for camera pi updates...
[2026-08-31 00:41:20,326.326 INFO    ] 200
[2026-08-31 00:41:20,328.328 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:41:20,372.372 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:41:20,450.450 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:41:20,453.453 INFO    ] No camera update needed
[2026-08-31 00:41:20,455.455 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:41:20,457.457 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:41:20,462.462 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:41:20,467.467 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:41:22,509.509 INFO    ] ================================================
[2026-08-31 00:41:22,523.523 INFO    ] Launching Daemon at Mon Aug 31 00:41:22 IST 2026
[2026-08-31 00:41:22,535.535 INFO    ] ================================================
[2026-08-31 00:41:23,114.114 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:41:23
[2026-08-31 00:41:23,712.712 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:41:23,988.988 INFO    ] Initializing speech engine...
[2026-08-31 00:41:23,998.998 INFO    ] 2026-08-31 00:41:23
[2026-08-31 00:41:24,256.256 INFO    ] 2026-08-31 00:41:24
[2026-08-31 00:41:24,310.310 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:41:24,536.536 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:41:24,540.540 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:41:24,779.779 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:41:24,799.799 INFO    ] time= 31/08/2026 00:41:24
[2026-08-31 00:41:24,813.813 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:41:24,822.822 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:41:24,949.949 INFO    ] No existing commands found in stream
[2026-08-31 00:41:29,963.963 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:41:29,965.965 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-08-31 00:41:32,344.344 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 00:41:32,347.347 INFO    ] Checking for system updates...
[2026-08-31 00:41:32,390.390 INFO    ] 200
[2026-08-31 00:41:32,392.392 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:41:32,450.450 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:41:32,453.453 INFO    ] No update needed
[2026-08-31 00:41:32,455.455 INFO    ] Checking for camera pi updates...
[2026-08-31 00:41:32,492.492 INFO    ] 200
[2026-08-31 00:41:32,494.494 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:41:32,542.542 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:41:32,600.600 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:41:32,603.603 INFO    ] No camera update needed
[2026-08-31 00:41:32,606.606 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:41:32,608.608 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:41:32,615.615 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:41:32,621.621 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:41:34,661.661 INFO    ] ================================================
[2026-08-31 00:41:34,677.677 INFO    ] Launching Daemon at Mon Aug 31 00:41:34 IST 2026
[2026-08-31 00:41:34,688.688 INFO    ] ================================================
[2026-08-31 00:41:35,326.326 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:41:35
[2026-08-31 00:41:35,917.917 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:41:36,188.188 INFO    ] Initializing speech engine...
[2026-08-31 00:41:36,197.197 INFO    ] 2026-08-31 00:41:36
[2026-08-31 00:41:36,449.449 INFO    ] 2026-08-31 00:41:36
[2026-08-31 00:41:36,482.482 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:41:36,684.684 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:41:36,743.743 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:41:36,886.886 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:41:36,940.940 INFO    ] time= 31/08/2026 00:41:36
[2026-08-31 00:41:36,994.994 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:41:37,019.019 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:41:37,170.170 INFO    ] No existing commands found in stream
[2026-08-31 00:41:42,185.185 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:41:42,188.188 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-08-31 00:41:44,325.325 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 00:41:44,328.328 INFO    ] Checking for system updates...
[2026-08-31 00:41:44,364.364 INFO    ] 200
[2026-08-31 00:41:44,367.367 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:41:44,422.422 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:41:44,425.425 INFO    ] No update needed
[2026-08-31 00:41:44,428.428 INFO    ] Checking for camera pi updates...
[2026-08-31 00:41:44,462.462 INFO    ] 200
[2026-08-31 00:41:44,465.465 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:41:44,506.506 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:41:44,694.694 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:41:44,697.697 INFO    ] No camera update needed
[2026-08-31 00:41:44,700.700 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:41:44,703.703 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:41:44,709.709 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:41:44,716.716 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:41:46,758.758 INFO    ] ================================================
[2026-08-31 00:41:46,773.773 INFO    ] Launching Daemon at Mon Aug 31 00:41:46 IST 2026
[2026-08-31 00:41:46,784.784 INFO    ] ================================================
[2026-08-31 00:41:47,351.351 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:41:47
[2026-08-31 00:41:47,932.932 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:41:48,205.205 INFO    ] Initializing speech engine...
[2026-08-31 00:41:48,212.212 INFO    ] 2026-08-31 00:41:48
[2026-08-31 00:41:48,470.470 INFO    ] 2026-08-31 00:41:48
[2026-08-31 00:41:48,504.504 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:41:48,753.753 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:41:48,762.762 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:41:48,972.972 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:41:49,025.025 INFO    ] time= 31/08/2026 00:41:48
[2026-08-31 00:41:49,031.031 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:41:49,048.048 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:41:49,178.178 INFO    ] No existing commands found in stream
[2026-08-31 00:41:54,192.192 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:41:54,195.195 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-08-31 00:41:58,145.145 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 00:41:58,148.148 INFO    ] Checking for system updates...
[2026-08-31 00:41:58,183.183 INFO    ] 200
[2026-08-31 00:41:58,185.185 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:41:58,238.238 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:41:58,240.240 INFO    ] No update needed
[2026-08-31 00:41:58,243.243 INFO    ] Checking for camera pi updates...
[2026-08-31 00:41:58,276.276 INFO    ] 200
[2026-08-31 00:41:58,278.278 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:41:58,318.318 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:41:58,395.395 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:41:58,397.397 INFO    ] No camera update needed
[2026-08-31 00:41:58,400.400 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:41:58,402.402 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:41:58,407.407 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:41:58,412.412 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:42:00,455.455 INFO    ] ================================================
[2026-08-31 00:42:00,470.470 INFO    ] Launching Daemon at Mon Aug 31 00:42:00 IST 2026
[2026-08-31 00:42:00,481.481 INFO    ] ================================================
[2026-08-31 00:42:01,059.059 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:42:01
[2026-08-31 00:42:01,645.645 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:42:01,912.912 INFO    ] Initializing speech engine...
[2026-08-31 00:42:01,921.921 INFO    ] 2026-08-31 00:42:01
[2026-08-31 00:42:02,283.283 INFO    ] 2026-08-31 00:42:02
[2026-08-31 00:42:02,338.338 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:42:02,565.565 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:42:02,568.568 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:42:02,752.752 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:42:02,846.846 INFO    ] time= 31/08/2026 00:42:02
[2026-08-31 00:42:02,854.854 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:42:02,893.893 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:42:03,015.015 INFO    ] No existing commands found in stream
[2026-08-31 00:42:08,028.028 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:42:08,031.031 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-08-31 00:42:10,990.990 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 00:42:10,993.993 INFO    ] Checking for system updates...
[2026-08-31 00:42:11,028.028 INFO    ] 200
[2026-08-31 00:42:11,031.031 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:42:11,084.084 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:42:11,087.087 INFO    ] No update needed
[2026-08-31 00:42:11,089.089 INFO    ] Checking for camera pi updates...
[2026-08-31 00:42:11,122.122 INFO    ] 200
[2026-08-31 00:42:11,125.125 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:42:11,169.169 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:42:11,278.278 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:42:11,280.280 INFO    ] No camera update needed
[2026-08-31 00:42:11,283.283 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:42:11,285.285 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:42:11,290.290 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:42:11,295.295 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:42:13,337.337 INFO    ] ================================================
[2026-08-31 00:42:13,352.352 INFO    ] Launching Daemon at Mon Aug 31 00:42:13 IST 2026
[2026-08-31 00:42:13,362.362 INFO    ] ================================================
[2026-08-31 00:42:13,942.942 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:42:13
[2026-08-31 00:42:14,538.538 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:42:14,816.816 INFO    ] Initializing speech engine...
[2026-08-31 00:42:14,821.821 INFO    ] 2026-08-31 00:42:14
[2026-08-31 00:42:15,083.083 INFO    ] 2026-08-31 00:42:15
[2026-08-31 00:42:15,113.113 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:42:15,364.364 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:42:15,369.369 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:42:15,601.601 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:42:15,631.631 INFO    ] time= 31/08/2026 00:42:15
[2026-08-31 00:42:15,647.647 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:42:15,656.656 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:42:15,783.783 INFO    ] No existing commands found in stream
[2026-08-31 00:42:20,800.800 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:42:20,803.803 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-08-31 00:42:22,243.243 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 00:42:22,246.246 INFO    ] Checking for system updates...
[2026-08-31 00:42:22,282.282 INFO    ] 200
[2026-08-31 00:42:22,285.285 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:42:22,338.338 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:42:22,341.341 INFO    ] No update needed
[2026-08-31 00:42:22,343.343 INFO    ] Checking for camera pi updates...
[2026-08-31 00:42:22,377.377 INFO    ] 200
[2026-08-31 00:42:22,379.379 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:42:22,421.421 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:42:22,509.509 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:42:22,512.512 INFO    ] No camera update needed
[2026-08-31 00:42:22,514.514 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:42:22,516.516 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:42:22,522.522 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:42:22,527.527 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:42:24,568.568 INFO    ] ================================================
[2026-08-31 00:42:24,584.584 INFO    ] Launching Daemon at Mon Aug 31 00:42:24 IST 2026
[2026-08-31 00:42:24,595.595 INFO    ] ================================================
[2026-08-31 00:42:25,252.252 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:42:25
[2026-08-31 00:42:25,928.928 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:42:26,230.230 INFO    ] Initializing speech engine...
[2026-08-31 00:42:26,243.243 INFO    ] 2026-08-31 00:42:26
[2026-08-31 00:42:26,554.554 INFO    ] 2026-08-31 00:42:26
[2026-08-31 00:42:26,640.640 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:42:26,917.917 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:42:26,964.964 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:42:27,194.194 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:42:27,218.218 INFO    ] time= 31/08/2026 00:42:27
[2026-08-31 00:42:27,273.273 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:42:27,310.310 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:42:27,458.458 INFO    ] No existing commands found in stream
[2026-08-31 00:42:32,488.488 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:42:32,492.492 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-08-31 00:42:35,246.246 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 00:42:35,249.249 INFO    ] Checking for system updates...
[2026-08-31 00:42:35,285.285 INFO    ] 200
[2026-08-31 00:42:35,289.289 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:42:35,342.342 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:42:35,345.345 INFO    ] No update needed
[2026-08-31 00:42:35,347.347 INFO    ] Checking for camera pi updates...
[2026-08-31 00:42:35,381.381 INFO    ] 200
[2026-08-31 00:42:35,383.383 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:42:35,423.423 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:42:35,506.506 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:42:35,508.508 INFO    ] No camera update needed
[2026-08-31 00:42:35,511.511 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:42:35,513.513 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:42:35,518.518 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:42:35,524.524 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:42:37,564.564 INFO    ] ================================================
[2026-08-31 00:42:37,580.580 INFO    ] Launching Daemon at Mon Aug 31 00:42:37 IST 2026
[2026-08-31 00:42:37,591.591 INFO    ] ================================================
[2026-08-31 00:42:38,243.243 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:42:38
[2026-08-31 00:42:38,918.918 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:42:39,223.223 INFO    ] Initializing speech engine...
[2026-08-31 00:42:39,238.238 INFO    ] 2026-08-31 00:42:39
[2026-08-31 00:42:39,522.522 INFO    ] 2026-08-31 00:42:39
[2026-08-31 00:42:39,579.579 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:42:39,859.859 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:42:39,864.864 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:42:40,065.065 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:42:40,084.084 INFO    ] time= 31/08/2026 00:42:40
[2026-08-31 00:42:40,115.115 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:42:40,124.124 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:42:40,241.241 INFO    ] No existing commands found in stream
[2026-08-31 00:42:45,266.266 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:42:45,269.269 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-08-31 00:42:49,485.485 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 00:42:49,488.488 INFO    ] Checking for system updates...
[2026-08-31 00:42:49,525.525 INFO    ] 200
[2026-08-31 00:42:49,528.528 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:42:49,582.582 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:42:49,584.584 INFO    ] No update needed
[2026-08-31 00:42:49,587.587 INFO    ] Checking for camera pi updates...
[2026-08-31 00:42:49,621.621 INFO    ] 200
[2026-08-31 00:42:49,623.623 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:42:49,665.665 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:42:49,748.748 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:42:49,751.751 INFO    ] No camera update needed
[2026-08-31 00:42:49,753.753 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:42:49,755.755 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:42:49,761.761 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:42:49,766.766 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:42:51,805.805 INFO    ] ================================================
[2026-08-31 00:42:51,820.820 INFO    ] Launching Daemon at Mon Aug 31 00:42:51 IST 2026
[2026-08-31 00:42:51,831.831 INFO    ] ================================================
[2026-08-31 00:42:52,410.410 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:42:52
[2026-08-31 00:42:53,006.006 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:42:53,275.275 INFO    ] Initializing speech engine...
[2026-08-31 00:42:53,284.284 INFO    ] 2026-08-31 00:42:53
[2026-08-31 00:42:53,533.533 INFO    ] 2026-08-31 00:42:53
[2026-08-31 00:42:53,568.568 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:42:53,818.818 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:42:53,827.827 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:42:54,035.035 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:42:54,086.086 INFO    ] time= 31/08/2026 00:42:54
[2026-08-31 00:42:54,092.092 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:42:54,109.109 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:42:54,241.241 INFO    ] No existing commands found in stream
[2026-08-31 00:42:59,263.263 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:42:59,266.266 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-08-31 00:43:02,289.289 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 00:43:02,293.293 INFO    ] Checking for system updates...
[2026-08-31 00:43:02,332.332 INFO    ] 200
[2026-08-31 00:43:02,336.336 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:43:02,405.405 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:43:02,408.408 INFO    ] No update needed
[2026-08-31 00:43:02,411.411 INFO    ] Checking for camera pi updates...
[2026-08-31 00:43:02,453.453 INFO    ] 200
[2026-08-31 00:43:02,455.455 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:43:02,515.515 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:43:02,582.582 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:43:02,585.585 INFO    ] No camera update needed
[2026-08-31 00:43:02,588.588 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:43:02,591.591 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:43:02,598.598 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:43:02,604.604 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:43:04,645.645 INFO    ] ================================================
[2026-08-31 00:43:04,660.660 INFO    ] Launching Daemon at Mon Aug 31 00:43:04 IST 2026
[2026-08-31 00:43:04,671.671 INFO    ] ================================================
[2026-08-31 00:43:05,238.238 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:43:05
[2026-08-31 00:43:05,823.823 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:43:06,073.073 INFO    ] Initializing speech engine...
[2026-08-31 00:43:06,096.096 INFO    ] 2026-08-31 00:43:06
[2026-08-31 00:43:06,373.373 INFO    ] 2026-08-31 00:43:06
[2026-08-31 00:43:06,410.410 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:43:06,667.667 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:43:06,676.676 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:43:06,911.911 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:43:06,941.941 INFO    ] time= 31/08/2026 00:43:06
[2026-08-31 00:43:06,946.946 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:43:06,964.964 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:43:07,099.099 INFO    ] No existing commands found in stream
[2026-08-31 00:43:12,107.107 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:43:12,110.110 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-08-31 00:43:14,661.661 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 00:43:14,663.663 INFO    ] Checking for system updates...
[2026-08-31 00:43:14,702.702 INFO    ] 200
[2026-08-31 00:43:14,704.704 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:43:14,756.756 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:43:14,758.758 INFO    ] No update needed
[2026-08-31 00:43:14,761.761 INFO    ] Checking for camera pi updates...
[2026-08-31 00:43:14,794.794 INFO    ] 200
[2026-08-31 00:43:14,796.796 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:43:14,836.836 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:43:14,916.916 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:43:14,919.919 INFO    ] No camera update needed
[2026-08-31 00:43:14,921.921 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:43:14,926.926 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:43:14,932.932 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:43:14,937.937 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:43:16,977.977 INFO    ] ================================================
[2026-08-31 00:43:16,993.993 INFO    ] Launching Daemon at Mon Aug 31 00:43:16 IST 2026
[2026-08-31 00:43:17,004.004 INFO    ] ================================================
[2026-08-31 00:43:17,582.582 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:43:17
[2026-08-31 00:43:18,179.179 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:43:18,454.454 INFO    ] Initializing speech engine...
[2026-08-31 00:43:18,461.461 INFO    ] 2026-08-31 00:43:18
[2026-08-31 00:43:18,723.723 INFO    ] 2026-08-31 00:43:18
[2026-08-31 00:43:18,777.777 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:43:19,060.060 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:43:19,069.069 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:43:19,258.258 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:43:19,264.264 INFO    ] time= 31/08/2026 00:43:19
[2026-08-31 00:43:19,282.282 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:43:19,312.312 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:43:19,440.440 INFO    ] No existing commands found in stream
[2026-08-31 00:43:24,466.466 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:43:24,469.469 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-08-31 00:43:26,950.950 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 00:43:26,953.953 INFO    ] Checking for system updates...
[2026-08-31 00:43:26,989.989 INFO    ] 200
[2026-08-31 00:43:26,991.991 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:43:27,043.043 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:43:27,045.045 INFO    ] No update needed
[2026-08-31 00:43:27,048.048 INFO    ] Checking for camera pi updates...
[2026-08-31 00:43:27,081.081 INFO    ] 200
[2026-08-31 00:43:27,083.083 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:43:27,128.128 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:43:27,211.211 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:43:27,214.214 INFO    ] No camera update needed
[2026-08-31 00:43:27,216.216 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:43:27,218.218 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:43:27,224.224 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:43:27,228.228 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:43:29,271.271 INFO    ] ================================================
[2026-08-31 00:43:29,286.286 INFO    ] Launching Daemon at Mon Aug 31 00:43:29 IST 2026
[2026-08-31 00:43:29,298.298 INFO    ] ================================================
[2026-08-31 00:43:29,866.866 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:43:29
[2026-08-31 00:43:30,450.450 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:43:30,717.717 INFO    ] Initializing speech engine...
[2026-08-31 00:43:30,726.726 INFO    ] 2026-08-31 00:43:30
[2026-08-31 00:43:30,993.993 INFO    ] 2026-08-31 00:43:30
[2026-08-31 00:43:31,033.033 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:43:31,287.287 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:43:31,299.299 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:43:31,501.501 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:43:31,568.568 INFO    ] time= 31/08/2026 00:43:31
[2026-08-31 00:43:31,585.585 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:43:31,608.608 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:43:31,752.752 INFO    ] No existing commands found in stream
[2026-08-31 00:43:36,772.772 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:43:36,775.775 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-08-31 00:43:39,152.152 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 00:43:39,155.155 INFO    ] Checking for system updates...
[2026-08-31 00:43:39,195.195 INFO    ] 200
[2026-08-31 00:43:39,197.197 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:43:39,249.249 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:43:39,252.252 INFO    ] No update needed
[2026-08-31 00:43:39,255.255 INFO    ] Checking for camera pi updates...
[2026-08-31 00:43:39,288.288 INFO    ] 200
[2026-08-31 00:43:39,290.290 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:43:39,330.330 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:43:39,421.421 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:43:39,423.423 INFO    ] No camera update needed
[2026-08-31 00:43:39,426.426 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:43:39,428.428 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:43:39,433.433 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:43:39,438.438 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:43:41,479.479 INFO    ] ================================================
[2026-08-31 00:43:41,495.495 INFO    ] Launching Daemon at Mon Aug 31 00:43:41 IST 2026
[2026-08-31 00:43:41,506.506 INFO    ] ================================================
[2026-08-31 00:43:42,110.110 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:43:42
[2026-08-31 00:43:42,767.767 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:43:43,069.069 INFO    ] Initializing speech engine...
[2026-08-31 00:43:43,078.078 INFO    ] 2026-08-31 00:43:43
[2026-08-31 00:43:43,348.348 INFO    ] 2026-08-31 00:43:43
[2026-08-31 00:43:43,383.383 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:43:43,642.642 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:43:43,648.648 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:43:43,879.879 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:43:43,913.913 INFO    ] time= 31/08/2026 00:43:43
[2026-08-31 00:43:43,932.932 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:43:43,941.941 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:43:44,056.056 INFO    ] No existing commands found in stream
[2026-08-31 00:43:49,082.082 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:43:49,085.085 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-08-31 00:43:51,231.231 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 00:43:51,234.234 INFO    ] Checking for system updates...
[2026-08-31 00:43:51,270.270 INFO    ] 200
[2026-08-31 00:43:51,272.272 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:43:51,323.323 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:43:51,326.326 INFO    ] No update needed
[2026-08-31 00:43:51,328.328 INFO    ] Checking for camera pi updates...
[2026-08-31 00:43:51,362.362 INFO    ] 200
[2026-08-31 00:43:51,364.364 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:43:51,404.404 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:43:51,566.566 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:43:51,569.569 INFO    ] No camera update needed
[2026-08-31 00:43:51,571.571 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:43:51,573.573 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:43:51,579.579 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:43:51,584.584 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:43:53,625.625 INFO    ] ================================================
[2026-08-31 00:43:53,640.640 INFO    ] Launching Daemon at Mon Aug 31 00:43:53 IST 2026
[2026-08-31 00:43:53,651.651 INFO    ] ================================================
[2026-08-31 00:43:54,216.216 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:43:54
[2026-08-31 00:43:54,798.798 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:43:55,059.059 INFO    ] Initializing speech engine...
[2026-08-31 00:43:55,082.082 INFO    ] 2026-08-31 00:43:55
[2026-08-31 00:43:55,351.351 INFO    ] 2026-08-31 00:43:55
[2026-08-31 00:43:55,388.388 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:43:55,665.665 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:43:55,675.675 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:43:55,923.923 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:43:55,942.942 INFO    ] time= 31/08/2026 00:43:55
[2026-08-31 00:43:55,949.949 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:43:55,967.967 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:43:56,107.107 INFO    ] No existing commands found in stream
[2026-08-31 00:44:01,125.125 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:44:01,128.128 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-08-31 00:44:02,887.887 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 00:44:02,890.890 INFO    ] Checking for system updates...
[2026-08-31 00:44:02,934.934 INFO    ] 200
[2026-08-31 00:44:02,938.938 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:44:02,993.993 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:44:02,996.996 INFO    ] No update needed
[2026-08-31 00:44:02,998.998 INFO    ] Checking for camera pi updates...
[2026-08-31 00:44:03,037.037 INFO    ] 200
[2026-08-31 00:44:03,043.043 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:44:03,091.091 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:44:03,141.141 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:44:03,143.143 INFO    ] No camera update needed
[2026-08-31 00:44:03,146.146 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:44:03,148.148 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:44:03,153.153 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:44:03,158.158 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:44:05,199.199 INFO    ] ================================================
[2026-08-31 00:44:05,215.215 INFO    ] Launching Daemon at Mon Aug 31 00:44:05 IST 2026
[2026-08-31 00:44:05,225.225 INFO    ] ================================================
[2026-08-31 00:44:05,860.860 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:44:05
[2026-08-31 00:44:06,505.505 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:44:06,787.787 INFO    ] Initializing speech engine...
[2026-08-31 00:44:06,800.800 INFO    ] 2026-08-31 00:44:06
[2026-08-31 00:44:07,065.065 INFO    ] 2026-08-31 00:44:07
[2026-08-31 00:44:07,107.107 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:44:07,454.454 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:44:07,460.460 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:44:07,645.645 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:44:07,697.697 INFO    ] time= 31/08/2026 00:44:07
[2026-08-31 00:44:07,739.739 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:44:07,782.782 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:44:07,952.952 INFO    ] No existing commands found in stream
[2026-08-31 00:44:12,982.982 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:44:12,985.985 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-08-31 00:44:17,189.189 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 00:44:17,191.191 INFO    ] Checking for system updates...
[2026-08-31 00:44:17,226.226 INFO    ] 200
[2026-08-31 00:44:17,229.229 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:44:17,291.291 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:44:17,293.293 INFO    ] No update needed
[2026-08-31 00:44:17,295.295 INFO    ] Checking for camera pi updates...
[2026-08-31 00:44:17,329.329 INFO    ] 200
[2026-08-31 00:44:17,331.331 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:44:17,375.375 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:44:17,452.452 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:44:17,455.455 INFO    ] No camera update needed
[2026-08-31 00:44:17,457.457 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:44:17,459.459 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:44:17,465.465 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:44:17,470.470 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:44:19,512.512 INFO    ] ================================================
[2026-08-31 00:44:19,527.527 INFO    ] Launching Daemon at Mon Aug 31 00:44:19 IST 2026
[2026-08-31 00:44:19,539.539 INFO    ] ================================================
[2026-08-31 00:44:20,175.175 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:44:20
[2026-08-31 00:44:20,834.834 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:44:21,138.138 INFO    ] Initializing speech engine...
[2026-08-31 00:44:21,150.150 INFO    ] 2026-08-31 00:44:21
[2026-08-31 00:44:21,459.459 INFO    ] 2026-08-31 00:44:21
[2026-08-31 00:44:21,544.544 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:44:21,821.821 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:44:21,879.879 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:44:22,099.099 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:44:22,138.138 INFO    ] time= 31/08/2026 00:44:22
[2026-08-31 00:44:22,204.204 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:44:22,230.230 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:44:22,367.367 INFO    ] No existing commands found in stream
[2026-08-31 00:44:27,399.399 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:44:27,403.403 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-08-31 00:44:31,085.085 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 00:44:31,088.088 INFO    ] Checking for system updates...
[2026-08-31 00:44:31,126.126 INFO    ] 200
[2026-08-31 00:44:31,129.129 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:44:31,182.182 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:44:31,185.185 INFO    ] No update needed
[2026-08-31 00:44:31,188.188 INFO    ] Checking for camera pi updates...
[2026-08-31 00:44:31,222.222 INFO    ] 200
[2026-08-31 00:44:31,225.225 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:44:31,267.267 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:44:31,371.371 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:44:31,375.375 INFO    ] No camera update needed
[2026-08-31 00:44:31,378.378 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:44:31,381.381 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:44:31,388.388 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:44:31,395.395 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:44:33,440.440 INFO    ] ================================================
[2026-08-31 00:44:33,456.456 INFO    ] Launching Daemon at Mon Aug 31 00:44:33 IST 2026
[2026-08-31 00:44:33,467.467 INFO    ] ================================================
[2026-08-31 00:44:34,033.033 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:44:34
[2026-08-31 00:44:34,615.615 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:44:34,869.869 INFO    ] Initializing speech engine...
[2026-08-31 00:44:34,878.878 INFO    ] 2026-08-31 00:44:34
[2026-08-31 00:44:35,170.170 INFO    ] 2026-08-31 00:44:35
[2026-08-31 00:44:35,208.208 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:44:35,430.430 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:44:35,479.479 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:44:35,653.653 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:44:35,713.713 INFO    ] time= 31/08/2026 00:44:35
[2026-08-31 00:44:35,767.767 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:44:35,798.798 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:44:35,957.957 INFO    ] No existing commands found in stream
[2026-08-31 00:44:40,977.977 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:44:40,980.980 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-08-31 00:44:45,004.004 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 00:44:45,006.006 INFO    ] Checking for system updates...
[2026-08-31 00:44:45,043.043 INFO    ] 200
[2026-08-31 00:44:45,046.046 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:44:45,098.098 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:44:45,101.101 INFO    ] No update needed
[2026-08-31 00:44:45,104.104 INFO    ] Checking for camera pi updates...
[2026-08-31 00:44:45,139.139 INFO    ] 200
[2026-08-31 00:44:45,142.142 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:44:45,188.188 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:44:45,270.270 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:44:45,272.272 INFO    ] No camera update needed
[2026-08-31 00:44:45,275.275 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:44:45,277.277 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:44:45,282.282 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:44:45,287.287 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:44:47,328.328 INFO    ] ================================================
[2026-08-31 00:44:47,343.343 INFO    ] Launching Daemon at Mon Aug 31 00:44:47 IST 2026
[2026-08-31 00:44:47,355.355 INFO    ] ================================================
[2026-08-31 00:44:47,928.928 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:44:47
[2026-08-31 00:44:48,509.509 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:44:48,781.781 INFO    ] Initializing speech engine...
[2026-08-31 00:44:48,790.790 INFO    ] 2026-08-31 00:44:48
[2026-08-31 00:44:49,038.038 INFO    ] 2026-08-31 00:44:49
[2026-08-31 00:44:49,074.074 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:44:49,354.354 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:44:49,364.364 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:44:49,599.599 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:44:49,652.652 INFO    ] time= 31/08/2026 00:44:49
[2026-08-31 00:44:49,659.659 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:44:49,675.675 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:44:49,802.802 INFO    ] No existing commands found in stream
[2026-08-31 00:44:54,830.830 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:44:54,832.832 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-08-31 00:44:58,202.202 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 00:44:58,204.204 INFO    ] Checking for system updates...
[2026-08-31 00:44:58,243.243 INFO    ] 200
[2026-08-31 00:44:58,246.246 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:44:58,303.303 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:44:58,305.305 INFO    ] No update needed
[2026-08-31 00:44:58,307.307 INFO    ] Checking for camera pi updates...
[2026-08-31 00:44:58,344.344 INFO    ] 200
[2026-08-31 00:44:58,346.346 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:44:58,391.391 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:44:58,480.480 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:44:58,482.482 INFO    ] No camera update needed
[2026-08-31 00:44:58,484.484 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:44:58,487.487 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:44:58,492.492 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:44:58,497.497 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:45:00,537.537 INFO    ] ================================================
[2026-08-31 00:45:00,552.552 INFO    ] Launching Daemon at Mon Aug 31 00:45:00 IST 2026
[2026-08-31 00:45:00,563.563 INFO    ] ================================================
[2026-08-31 00:45:01,129.129 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:45:01
[2026-08-31 00:45:02,140.140 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:45:02,486.486 INFO    ] Initializing speech engine...
[2026-08-31 00:45:02,504.504 INFO    ] 2026-08-31 00:45:02
[2026-08-31 00:45:02,836.836 INFO    ] 2026-08-31 00:45:02
[2026-08-31 00:45:02,901.901 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:45:03,123.123 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:45:03,150.150 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:45:03,329.329 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:45:03,334.334 INFO    ] time= 31/08/2026 00:45:03
[2026-08-31 00:45:03,338.338 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:45:03,388.388 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:45:03,482.482 INFO    ] No existing commands found in stream
[2026-08-31 00:45:08,494.494 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:45:08,497.497 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-08-31 00:45:11,403.403 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 00:45:11,405.405 INFO    ] Checking for system updates...
[2026-08-31 00:45:11,444.444 INFO    ] 200
[2026-08-31 00:45:11,446.446 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:45:11,502.502 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:45:11,505.505 INFO    ] No update needed
[2026-08-31 00:45:11,508.508 INFO    ] Checking for camera pi updates...
[2026-08-31 00:45:11,545.545 INFO    ] 200
[2026-08-31 00:45:11,548.548 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:45:11,595.595 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:45:11,682.682 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:45:11,684.684 INFO    ] No camera update needed
[2026-08-31 00:45:11,687.687 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:45:11,690.690 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:45:11,696.696 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:45:11,701.701 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:45:13,748.748 INFO    ] ================================================
[2026-08-31 00:45:13,764.764 INFO    ] Launching Daemon at Mon Aug 31 00:45:13 IST 2026
[2026-08-31 00:45:13,776.776 INFO    ] ================================================
[2026-08-31 00:45:14,371.371 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:45:14
[2026-08-31 00:45:14,973.973 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:45:15,257.257 INFO    ] Initializing speech engine...
[2026-08-31 00:45:15,277.277 INFO    ] 2026-08-31 00:45:15
[2026-08-31 00:45:15,564.564 INFO    ] 2026-08-31 00:45:15
[2026-08-31 00:45:15,608.608 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:45:15,903.903 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:45:15,909.909 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:45:16,108.108 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:45:16,124.124 INFO    ] time= 31/08/2026 00:45:16
[2026-08-31 00:45:16,133.133 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:45:16,160.160 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:45:16,281.281 INFO    ] No existing commands found in stream
[2026-08-31 00:45:21,290.290 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:45:21,298.298 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-08-31 00:45:25,124.124 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 00:45:25,127.127 INFO    ] Checking for system updates...
[2026-08-31 00:45:25,166.166 INFO    ] 200
[2026-08-31 00:45:25,170.170 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:45:25,222.222 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:45:25,225.225 INFO    ] No update needed
[2026-08-31 00:45:25,228.228 INFO    ] Checking for camera pi updates...
[2026-08-31 00:45:25,263.263 INFO    ] 200
[2026-08-31 00:45:25,265.265 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:45:25,308.308 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:45:25,407.407 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:45:25,410.410 INFO    ] No camera update needed
[2026-08-31 00:45:25,412.412 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:45:25,415.415 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:45:25,421.421 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:45:25,427.427 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:45:27,469.469 INFO    ] ================================================
[2026-08-31 00:45:27,484.484 INFO    ] Launching Daemon at Mon Aug 31 00:45:27 IST 2026
[2026-08-31 00:45:27,495.495 INFO    ] ================================================
[2026-08-31 00:45:28,059.059 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:45:28
[2026-08-31 00:45:28,660.660 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:45:28,949.949 INFO    ] Initializing speech engine...
[2026-08-31 00:45:28,963.963 INFO    ] 2026-08-31 00:45:28
[2026-08-31 00:45:29,233.233 INFO    ] 2026-08-31 00:45:29
[2026-08-31 00:45:29,275.275 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:45:29,714.714 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:45:29,746.746 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:45:29,933.933 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:45:29,997.997 INFO    ] time= 31/08/2026 00:45:29
[2026-08-31 00:45:30,027.027 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:45:30,092.092 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:45:30,201.201 INFO    ] No existing commands found in stream
[2026-08-31 00:45:35,211.211 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:45:35,214.214 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-08-31 00:45:39,586.586 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 00:45:39,589.589 INFO    ] Checking for system updates...
[2026-08-31 00:45:39,625.625 INFO    ] 200
[2026-08-31 00:45:39,628.628 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:45:39,685.685 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:45:39,688.688 INFO    ] No update needed
[2026-08-31 00:45:39,690.690 INFO    ] Checking for camera pi updates...
[2026-08-31 00:45:39,726.726 INFO    ] 200
[2026-08-31 00:45:39,729.729 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:45:39,769.769 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:45:39,848.848 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:45:39,851.851 INFO    ] No camera update needed
[2026-08-31 00:45:39,853.853 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:45:39,855.855 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:45:39,861.861 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:45:39,866.866 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:45:41,908.908 INFO    ] ================================================
[2026-08-31 00:45:41,923.923 INFO    ] Launching Daemon at Mon Aug 31 00:45:41 IST 2026
[2026-08-31 00:45:41,934.934 INFO    ] ================================================
[2026-08-31 00:45:42,575.575 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:45:42
[2026-08-31 00:45:43,230.230 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:45:43,533.533 INFO    ] Initializing speech engine...
[2026-08-31 00:45:43,545.545 INFO    ] 2026-08-31 00:45:43
[2026-08-31 00:45:43,821.821 INFO    ] 2026-08-31 00:45:43
[2026-08-31 00:45:43,863.863 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:45:44,148.148 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:45:44,154.154 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:45:44,347.347 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:45:44,365.365 INFO    ] time= 31/08/2026 00:45:44
[2026-08-31 00:45:44,375.375 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:45:44,404.404 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:45:44,518.518 INFO    ] No existing commands found in stream
[2026-08-31 00:45:49,553.553 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:45:49,556.556 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-08-31 00:45:50,283.283 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 00:45:50,286.286 INFO    ] Checking for system updates...
[2026-08-31 00:45:50,323.323 INFO    ] 200
[2026-08-31 00:45:50,326.326 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:45:50,385.385 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:45:50,387.387 INFO    ] No update needed
[2026-08-31 00:45:50,391.391 INFO    ] Checking for camera pi updates...
[2026-08-31 00:45:50,425.425 INFO    ] 200
[2026-08-31 00:45:50,428.428 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:45:50,469.469 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:45:50,548.548 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:45:50,550.550 INFO    ] No camera update needed
[2026-08-31 00:45:50,553.553 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:45:50,555.555 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:45:50,560.560 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:45:50,565.565 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:45:52,605.605 INFO    ] ================================================
[2026-08-31 00:45:52,621.621 INFO    ] Launching Daemon at Mon Aug 31 00:45:52 IST 2026
[2026-08-31 00:45:52,633.633 INFO    ] ================================================
[2026-08-31 00:45:53,271.271 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:45:53
[2026-08-31 00:45:53,929.929 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:45:54,225.225 INFO    ] Initializing speech engine...
[2026-08-31 00:45:54,233.233 INFO    ] 2026-08-31 00:45:54
[2026-08-31 00:45:54,545.545 INFO    ] 2026-08-31 00:45:54
[2026-08-31 00:45:54,630.630 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:45:54,905.905 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:45:54,949.949 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:45:55,184.184 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:45:55,231.231 INFO    ] time= 31/08/2026 00:45:55
[2026-08-31 00:45:55,293.293 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:45:55,333.333 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:45:55,486.486 INFO    ] No existing commands found in stream
[2026-08-31 00:46:00,502.502 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:46:00,505.505 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-08-31 00:46:05,004.004 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 00:46:05,007.007 INFO    ] Checking for system updates...
[2026-08-31 00:46:05,045.045 INFO    ] 200
[2026-08-31 00:46:05,048.048 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:46:05,102.102 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:46:05,105.105 INFO    ] No update needed
[2026-08-31 00:46:05,107.107 INFO    ] Checking for camera pi updates...
[2026-08-31 00:46:05,141.141 INFO    ] 200
[2026-08-31 00:46:05,143.143 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:46:05,183.183 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:46:05,287.287 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:46:05,290.290 INFO    ] No camera update needed
[2026-08-31 00:46:05,292.292 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:46:05,294.294 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:46:05,300.300 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:46:05,305.305 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:46:07,348.348 INFO    ] ================================================
[2026-08-31 00:46:07,364.364 INFO    ] Launching Daemon at Mon Aug 31 00:46:07 IST 2026
[2026-08-31 00:46:07,375.375 INFO    ] ================================================
[2026-08-31 00:46:07,952.952 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:46:07
[2026-08-31 00:46:08,536.536 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:46:08,793.793 INFO    ] Initializing speech engine...
[2026-08-31 00:46:08,812.812 INFO    ] 2026-08-31 00:46:08
[2026-08-31 00:46:09,059.059 INFO    ] 2026-08-31 00:46:09
[2026-08-31 00:46:09,094.094 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:46:09,345.345 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:46:09,354.354 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:46:09,591.591 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:46:09,613.613 INFO    ] time= 31/08/2026 00:46:09
[2026-08-31 00:46:09,619.619 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:46:09,636.636 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:46:09,768.768 INFO    ] No existing commands found in stream
[2026-08-31 00:46:14,787.787 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:46:14,790.790 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-08-31 00:46:16,122.122 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 00:46:16,124.124 INFO    ] Checking for system updates...
[2026-08-31 00:46:16,161.161 INFO    ] 200
[2026-08-31 00:46:16,163.163 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:46:16,224.224 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:46:16,227.227 INFO    ] No update needed
[2026-08-31 00:46:16,229.229 INFO    ] Checking for camera pi updates...
[2026-08-31 00:46:16,264.264 INFO    ] 200
[2026-08-31 00:46:16,267.267 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:46:16,314.314 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:46:16,419.419 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:46:16,422.422 INFO    ] No camera update needed
[2026-08-31 00:46:16,424.424 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:46:16,427.427 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:46:16,434.434 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:46:16,440.440 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:46:18,481.481 INFO    ] ================================================
[2026-08-31 00:46:18,497.497 INFO    ] Launching Daemon at Mon Aug 31 00:46:18 IST 2026
[2026-08-31 00:46:18,508.508 INFO    ] ================================================
[2026-08-31 00:46:19,147.147 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:46:19
[2026-08-31 00:46:19,730.730 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:46:19,997.997 INFO    ] Initializing speech engine...
[2026-08-31 00:46:20,006.006 INFO    ] 2026-08-31 00:46:19
[2026-08-31 00:46:20,253.253 INFO    ] 2026-08-31 00:46:20
[2026-08-31 00:46:20,319.319 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:46:20,601.601 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:46:20,609.609 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:46:20,808.808 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:46:20,815.815 INFO    ] time= 31/08/2026 00:46:20
[2026-08-31 00:46:20,832.832 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:46:20,849.849 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:46:20,966.966 INFO    ] No existing commands found in stream
[2026-08-31 00:46:25,979.979 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:46:25,982.982 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-08-31 00:46:27,220.220 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 00:46:27,223.223 INFO    ] Checking for system updates...
[2026-08-31 00:46:27,263.263 INFO    ] 200
[2026-08-31 00:46:27,266.266 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:46:27,318.318 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:46:27,321.321 INFO    ] No update needed
[2026-08-31 00:46:27,324.324 INFO    ] Checking for camera pi updates...
[2026-08-31 00:46:27,359.359 INFO    ] 200
[2026-08-31 00:46:27,362.362 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:46:27,405.405 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:46:27,487.487 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:46:27,490.490 INFO    ] No camera update needed
[2026-08-31 00:46:27,493.493 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:46:27,495.495 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:46:27,502.502 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:46:27,508.508 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:46:29,551.551 INFO    ] ================================================
[2026-08-31 00:46:29,566.566 INFO    ] Launching Daemon at Mon Aug 31 00:46:29 IST 2026
[2026-08-31 00:46:29,577.577 INFO    ] ================================================
[2026-08-31 00:46:30,184.184 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:46:30
[2026-08-31 00:46:30,765.765 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:46:31,035.035 INFO    ] Initializing speech engine...
[2026-08-31 00:46:31,044.044 INFO    ] 2026-08-31 00:46:31
[2026-08-31 00:46:31,313.313 INFO    ] 2026-08-31 00:46:31
[2026-08-31 00:46:31,349.349 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:46:31,567.567 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:46:31,589.589 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:46:31,746.746 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:46:31,752.752 INFO    ] time= 31/08/2026 00:46:31
[2026-08-31 00:46:31,759.759 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:46:31,782.782 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:46:31,928.928 INFO    ] No existing commands found in stream
[2026-08-31 00:46:36,954.954 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:46:36,956.956 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-08-31 00:46:41,482.482 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 00:46:41,484.484 INFO    ] Checking for system updates...
[2026-08-31 00:46:41,520.520 INFO    ] 200
[2026-08-31 00:46:41,522.522 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:46:41,583.583 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:46:41,585.585 INFO    ] No update needed
[2026-08-31 00:46:41,587.587 INFO    ] Checking for camera pi updates...
[2026-08-31 00:46:41,631.631 INFO    ] 200
[2026-08-31 00:46:41,634.634 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:46:41,684.684 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:46:41,787.787 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:46:41,790.790 INFO    ] No camera update needed
[2026-08-31 00:46:41,792.792 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:46:41,794.794 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:46:41,800.800 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:46:41,805.805 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:46:43,844.844 INFO    ] ================================================
[2026-08-31 00:46:43,860.860 INFO    ] Launching Daemon at Mon Aug 31 00:46:43 IST 2026
[2026-08-31 00:46:43,871.871 INFO    ] ================================================
[2026-08-31 00:46:44,437.437 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:46:44
[2026-08-31 00:46:45,021.021 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:46:45,294.294 INFO    ] Initializing speech engine...
[2026-08-31 00:46:45,300.300 INFO    ] 2026-08-31 00:46:45
[2026-08-31 00:46:45,545.545 INFO    ] 2026-08-31 00:46:45
[2026-08-31 00:46:45,580.580 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:46:45,837.837 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:46:45,842.842 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:46:46,093.093 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:46:46,100.100 INFO    ] time= 31/08/2026 00:46:46
[2026-08-31 00:46:46,118.118 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:46:46,147.147 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:46:46,263.263 INFO    ] No existing commands found in stream
[2026-08-31 00:46:51,293.293 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:46:51,295.295 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-08-31 00:46:53,042.042 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 00:46:53,045.045 INFO    ] Checking for system updates...
[2026-08-31 00:46:53,081.081 INFO    ] 200
[2026-08-31 00:46:53,083.083 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:46:53,136.136 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:46:53,138.138 INFO    ] No update needed
[2026-08-31 00:46:53,141.141 INFO    ] Checking for camera pi updates...
[2026-08-31 00:46:53,174.174 INFO    ] 200
[2026-08-31 00:46:53,177.177 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:46:53,218.218 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:46:53,299.299 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:46:53,301.301 INFO    ] No camera update needed
[2026-08-31 00:46:53,304.304 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:46:53,306.306 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:46:53,312.312 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:46:53,317.317 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:46:55,358.358 INFO    ] ================================================
[2026-08-31 00:46:55,373.373 INFO    ] Launching Daemon at Mon Aug 31 00:46:55 IST 2026
[2026-08-31 00:46:55,385.385 INFO    ] ================================================
[2026-08-31 00:46:55,952.952 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:46:55
[2026-08-31 00:46:56,534.534 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:46:56,804.804 INFO    ] Initializing speech engine...
[2026-08-31 00:46:56,813.813 INFO    ] 2026-08-31 00:46:56
[2026-08-31 00:46:57,059.059 INFO    ] 2026-08-31 00:46:57
[2026-08-31 00:46:57,095.095 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:46:57,351.351 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:46:57,356.356 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:46:57,586.586 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:46:57,613.613 INFO    ] time= 31/08/2026 00:46:57
[2026-08-31 00:46:57,619.619 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:46:57,636.636 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:46:57,763.763 INFO    ] No existing commands found in stream
[2026-08-31 00:47:02,779.779 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:47:02,782.782 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-08-31 00:47:03,522.522 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 00:47:03,525.525 INFO    ] Checking for system updates...
[2026-08-31 00:47:03,561.561 INFO    ] 200
[2026-08-31 00:47:03,564.564 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:47:03,617.617 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:47:03,619.619 INFO    ] No update needed
[2026-08-31 00:47:03,622.622 INFO    ] Checking for camera pi updates...
[2026-08-31 00:47:03,660.660 INFO    ] 200
[2026-08-31 00:47:03,663.663 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:47:03,709.709 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:47:03,802.802 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:47:03,805.805 INFO    ] No camera update needed
[2026-08-31 00:47:03,808.808 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:47:03,811.811 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:47:03,817.817 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:47:03,823.823 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:47:05,864.864 INFO    ] ================================================
[2026-08-31 00:47:05,879.879 INFO    ] Launching Daemon at Mon Aug 31 00:47:05 IST 2026
[2026-08-31 00:47:05,891.891 INFO    ] ================================================
[2026-08-31 00:47:06,460.460 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:47:06
[2026-08-31 00:47:07,064.064 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:47:07,338.338 INFO    ] Initializing speech engine...
[2026-08-31 00:47:07,347.347 INFO    ] 2026-08-31 00:47:07
[2026-08-31 00:47:07,599.599 INFO    ] 2026-08-31 00:47:07
[2026-08-31 00:47:07,633.633 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:47:07,896.896 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:47:07,902.902 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:47:08,135.135 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:47:08,166.166 INFO    ] time= 31/08/2026 00:47:08
[2026-08-31 00:47:08,182.182 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:47:08,191.191 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:47:08,325.325 INFO    ] No existing commands found in stream
[2026-08-31 00:47:13,343.343 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:47:13,346.346 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-08-31 00:47:16,689.689 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 00:47:16,691.691 INFO    ] Checking for system updates...
[2026-08-31 00:47:16,734.734 INFO    ] 200
[2026-08-31 00:47:16,736.736 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:47:16,788.788 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:47:16,790.790 INFO    ] No update needed
[2026-08-31 00:47:16,793.793 INFO    ] Checking for camera pi updates...
[2026-08-31 00:47:16,842.842 INFO    ] 200
[2026-08-31 00:47:16,845.845 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:47:16,885.885 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:47:16,973.973 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:47:16,975.975 INFO    ] No camera update needed
[2026-08-31 00:47:16,978.978 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:47:16,980.980 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:47:16,985.985 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:47:16,990.990 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:47:19,030.030 INFO    ] ================================================
[2026-08-31 00:47:19,044.044 INFO    ] Launching Daemon at Mon Aug 31 00:47:19 IST 2026
[2026-08-31 00:47:19,055.055 INFO    ] ================================================
[2026-08-31 00:47:19,620.620 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:47:19
[2026-08-31 00:47:20,200.200 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:47:20,456.456 INFO    ] Initializing speech engine...
[2026-08-31 00:47:20,470.470 INFO    ] 2026-08-31 00:47:20
[2026-08-31 00:47:20,732.732 INFO    ] 2026-08-31 00:47:20
[2026-08-31 00:47:20,767.767 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:47:21,021.021 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:47:21,026.026 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:47:21,255.255 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:47:21,280.280 INFO    ] time= 31/08/2026 00:47:21
[2026-08-31 00:47:21,297.297 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:47:21,306.306 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:47:21,430.430 INFO    ] No existing commands found in stream
[2026-08-31 00:47:26,444.444 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:47:26,446.446 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-08-31 00:47:28,001.001 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 00:47:28,004.004 INFO    ] Checking for system updates...
[2026-08-31 00:47:28,039.039 INFO    ] 200
[2026-08-31 00:47:28,041.041 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:47:28,099.099 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:47:28,102.102 INFO    ] No update needed
[2026-08-31 00:47:28,104.104 INFO    ] Checking for camera pi updates...
[2026-08-31 00:47:28,138.138 INFO    ] 200
[2026-08-31 00:47:28,141.141 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:47:28,185.185 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:47:28,269.269 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:47:28,271.271 INFO    ] No camera update needed
[2026-08-31 00:47:28,274.274 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:47:28,276.276 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:47:28,282.282 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:47:28,288.288 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:47:30,330.330 INFO    ] ================================================
[2026-08-31 00:47:30,345.345 INFO    ] Launching Daemon at Mon Aug 31 00:47:30 IST 2026
[2026-08-31 00:47:30,358.358 INFO    ] ================================================
[2026-08-31 00:47:30,924.924 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:47:30
[2026-08-31 00:47:31,507.507 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:47:31,772.772 INFO    ] Initializing speech engine...
[2026-08-31 00:47:31,801.801 INFO    ] 2026-08-31 00:47:31
[2026-08-31 00:47:32,093.093 INFO    ] 2026-08-31 00:47:32
[2026-08-31 00:47:32,129.129 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:47:32,355.355 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:47:32,361.361 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:47:32,570.570 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:47:32,613.613 INFO    ] time= 31/08/2026 00:47:32
[2026-08-31 00:47:32,670.670 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:47:32,714.714 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:47:32,801.801 INFO    ] No existing commands found in stream
[2026-08-31 00:47:37,811.811 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:47:37,814.814 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-08-31 00:47:41,089.089 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 00:47:41,091.091 INFO    ] Checking for system updates...
[2026-08-31 00:47:41,126.126 INFO    ] 200
[2026-08-31 00:47:41,129.129 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:47:41,187.187 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:47:41,190.190 INFO    ] No update needed
[2026-08-31 00:47:41,192.192 INFO    ] Checking for camera pi updates...
[2026-08-31 00:47:41,225.225 INFO    ] 200
[2026-08-31 00:47:41,227.227 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:47:41,268.268 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:47:41,361.361 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:47:41,363.363 INFO    ] No camera update needed
[2026-08-31 00:47:41,366.366 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:47:41,368.368 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:47:41,373.373 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:47:41,378.378 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:47:43,418.418 INFO    ] ================================================
[2026-08-31 00:47:43,433.433 INFO    ] Launching Daemon at Mon Aug 31 00:47:43 IST 2026
[2026-08-31 00:47:43,444.444 INFO    ] ================================================
[2026-08-31 00:47:44,026.026 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:47:44
[2026-08-31 00:47:44,625.625 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:47:44,900.900 INFO    ] Initializing speech engine...
[2026-08-31 00:47:44,907.907 INFO    ] 2026-08-31 00:47:44
[2026-08-31 00:47:45,169.169 INFO    ] 2026-08-31 00:47:45
[2026-08-31 00:47:45,223.223 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:47:45,448.448 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:47:45,454.454 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:47:45,705.705 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:47:45,713.713 INFO    ] time= 31/08/2026 00:47:45
[2026-08-31 00:47:45,731.731 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:47:45,759.759 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:47:45,876.876 INFO    ] No existing commands found in stream
[2026-08-31 00:47:50,900.900 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:47:50,903.903 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-08-31 00:47:54,162.162 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 00:47:54,164.164 INFO    ] Checking for system updates...
[2026-08-31 00:47:54,200.200 INFO    ] 200
[2026-08-31 00:47:54,203.203 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:47:54,260.260 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:47:54,262.262 INFO    ] No update needed
[2026-08-31 00:47:54,265.265 INFO    ] Checking for camera pi updates...
[2026-08-31 00:47:54,298.298 INFO    ] 200
[2026-08-31 00:47:54,300.300 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:47:54,344.344 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:47:54,442.442 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:47:54,444.444 INFO    ] No camera update needed
[2026-08-31 00:47:54,446.446 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:47:54,449.449 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:47:54,454.454 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:47:54,460.460 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:47:56,500.500 INFO    ] ================================================
[2026-08-31 00:47:56,515.515 INFO    ] Launching Daemon at Mon Aug 31 00:47:56 IST 2026
[2026-08-31 00:47:56,526.526 INFO    ] ================================================
[2026-08-31 00:47:57,158.158 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:47:57
[2026-08-31 00:47:57,808.808 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:47:58,107.107 INFO    ] Initializing speech engine...
[2026-08-31 00:47:58,115.115 INFO    ] 2026-08-31 00:47:58
[2026-08-31 00:47:58,383.383 INFO    ] 2026-08-31 00:47:58
[2026-08-31 00:47:58,445.445 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:47:58,680.680 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:47:58,701.701 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:47:58,921.921 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:47:58,951.951 INFO    ] time= 31/08/2026 00:47:58
[2026-08-31 00:47:58,970.970 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:47:59,000.000 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:47:59,119.119 INFO    ] No existing commands found in stream
[2026-08-31 00:48:04,150.150 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:48:04,153.153 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-08-31 00:48:07,203.203 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 00:48:07,206.206 INFO    ] Checking for system updates...
[2026-08-31 00:48:07,248.248 INFO    ] 200
[2026-08-31 00:48:07,251.251 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:48:07,308.308 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:48:07,311.311 INFO    ] No update needed
[2026-08-31 00:48:07,313.313 INFO    ] Checking for camera pi updates...
[2026-08-31 00:48:07,352.352 INFO    ] 200
[2026-08-31 00:48:07,354.354 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:48:07,398.398 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:48:07,607.607 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:48:07,610.610 INFO    ] No camera update needed
[2026-08-31 00:48:07,613.613 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:48:07,615.615 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:48:07,621.621 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:48:07,627.627 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:48:09,668.668 INFO    ] ================================================
[2026-08-31 00:48:09,682.682 INFO    ] Launching Daemon at Mon Aug 31 00:48:09 IST 2026
[2026-08-31 00:48:09,693.693 INFO    ] ================================================
[2026-08-31 00:48:10,272.272 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:48:10
[2026-08-31 00:48:10,872.872 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:48:11,131.131 INFO    ] Initializing speech engine...
[2026-08-31 00:48:11,138.138 INFO    ] 2026-08-31 00:48:11
[2026-08-31 00:48:11,426.426 INFO    ] 2026-08-31 00:48:11
[2026-08-31 00:48:11,464.464 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:48:11,736.736 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:48:11,750.750 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:48:11,993.993 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:48:12,034.034 INFO    ] time= 31/08/2026 00:48:12
[2026-08-31 00:48:12,040.040 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:48:12,065.065 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:48:12,204.204 INFO    ] No existing commands found in stream
[2026-08-31 00:48:17,219.219 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:48:17,222.222 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-08-31 00:48:17,784.784 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 00:48:17,787.787 INFO    ] Checking for system updates...
[2026-08-31 00:48:17,823.823 INFO    ] 200
[2026-08-31 00:48:17,825.825 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:48:17,885.885 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:48:17,888.888 INFO    ] No update needed
[2026-08-31 00:48:17,890.890 INFO    ] Checking for camera pi updates...
[2026-08-31 00:48:17,924.924 INFO    ] 200
[2026-08-31 00:48:17,926.926 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:48:17,970.970 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:48:18,051.051 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:48:18,053.053 INFO    ] No camera update needed
[2026-08-31 00:48:18,056.056 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:48:18,058.058 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:48:18,065.065 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:48:18,070.070 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:48:20,114.114 INFO    ] ================================================
[2026-08-31 00:48:20,131.131 INFO    ] Launching Daemon at Mon Aug 31 00:48:20 IST 2026
[2026-08-31 00:48:20,143.143 INFO    ] ================================================
[2026-08-31 00:48:20,779.779 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:48:20
[2026-08-31 00:48:21,420.420 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:48:21,719.719 INFO    ] Initializing speech engine...
[2026-08-31 00:48:21,728.728 INFO    ] 2026-08-31 00:48:21
[2026-08-31 00:48:22,046.046 INFO    ] 2026-08-31 00:48:22
[2026-08-31 00:48:22,125.125 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:48:22,409.409 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:48:22,416.416 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:48:22,650.650 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:48:22,693.693 INFO    ] time= 31/08/2026 00:48:22
[2026-08-31 00:48:22,742.742 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:48:22,798.798 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:48:22,943.943 INFO    ] No existing commands found in stream
[2026-08-31 00:48:27,962.962 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:48:27,965.965 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-08-31 00:48:28,709.709 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 00:48:28,712.712 INFO    ] Checking for system updates...
[2026-08-31 00:48:28,750.750 INFO    ] 200
[2026-08-31 00:48:28,752.752 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:48:28,804.804 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:48:28,806.806 INFO    ] No update needed
[2026-08-31 00:48:28,809.809 INFO    ] Checking for camera pi updates...
[2026-08-31 00:48:28,842.842 INFO    ] 200
[2026-08-31 00:48:28,844.844 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:48:28,884.884 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:48:28,991.991 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:48:28,993.993 INFO    ] No camera update needed
[2026-08-31 00:48:28,996.996 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:48:28,998.998 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:48:29,004.004 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:48:29,009.009 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:48:31,050.050 INFO    ] ================================================
[2026-08-31 00:48:31,064.064 INFO    ] Launching Daemon at Mon Aug 31 00:48:31 IST 2026
[2026-08-31 00:48:31,075.075 INFO    ] ================================================
[2026-08-31 00:48:31,717.717 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:48:31
[2026-08-31 00:48:32,333.333 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:48:32,623.623 INFO    ] Initializing speech engine...
[2026-08-31 00:48:32,632.632 INFO    ] 2026-08-31 00:48:32
[2026-08-31 00:48:32,893.893 INFO    ] 2026-08-31 00:48:32
[2026-08-31 00:48:32,932.932 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:48:33,194.194 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:48:33,204.204 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:48:33,415.415 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:48:33,461.461 INFO    ] time= 31/08/2026 00:48:33
[2026-08-31 00:48:33,467.467 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:48:33,484.484 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:48:33,615.615 INFO    ] No existing commands found in stream
[2026-08-31 00:48:38,630.630 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:48:38,633.633 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-08-31 00:48:41,819.819 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 00:48:41,822.822 INFO    ] Checking for system updates...
[2026-08-31 00:48:41,857.857 INFO    ] 200
[2026-08-31 00:48:41,860.860 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:48:41,911.911 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:48:41,914.914 INFO    ] No update needed
[2026-08-31 00:48:41,916.916 INFO    ] Checking for camera pi updates...
[2026-08-31 00:48:41,952.952 INFO    ] 200
[2026-08-31 00:48:41,954.954 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:48:41,993.993 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:48:42,090.090 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:48:42,093.093 INFO    ] No camera update needed
[2026-08-31 00:48:42,095.095 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:48:42,097.097 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:48:42,103.103 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:48:42,107.107 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:48:44,148.148 INFO    ] ================================================
[2026-08-31 00:48:44,163.163 INFO    ] Launching Daemon at Mon Aug 31 00:48:44 IST 2026
[2026-08-31 00:48:44,173.173 INFO    ] ================================================
[2026-08-31 00:48:44,740.740 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:48:44
[2026-08-31 00:48:45,324.324 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:48:45,570.570 INFO    ] Initializing speech engine...
[2026-08-31 00:48:45,584.584 INFO    ] 2026-08-31 00:48:45
[2026-08-31 00:48:45,853.853 INFO    ] 2026-08-31 00:48:45
[2026-08-31 00:48:45,888.888 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:48:46,145.145 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:48:46,155.155 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:48:46,383.383 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:48:46,433.433 INFO    ] time= 31/08/2026 00:48:46
[2026-08-31 00:48:46,445.445 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:48:46,463.463 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:48:46,604.604 INFO    ] No existing commands found in stream
[2026-08-31 00:48:51,619.619 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:48:51,622.622 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-08-31 00:48:54,042.042 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 00:48:54,044.044 INFO    ] Checking for system updates...
[2026-08-31 00:48:54,082.082 INFO    ] 200
[2026-08-31 00:48:54,084.084 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:48:54,141.141 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:48:54,143.143 INFO    ] No update needed
[2026-08-31 00:48:54,145.145 INFO    ] Checking for camera pi updates...
[2026-08-31 00:48:54,181.181 INFO    ] 200
[2026-08-31 00:48:54,183.183 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:48:54,223.223 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:48:54,304.304 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:48:54,306.306 INFO    ] No camera update needed
[2026-08-31 00:48:54,309.309 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:48:54,311.311 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:48:54,317.317 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:48:54,322.322 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:48:56,361.361 INFO    ] ================================================
[2026-08-31 00:48:56,375.375 INFO    ] Launching Daemon at Mon Aug 31 00:48:56 IST 2026
[2026-08-31 00:48:56,386.386 INFO    ] ================================================
[2026-08-31 00:48:56,964.964 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:48:56
[2026-08-31 00:48:57,560.560 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:48:57,832.832 INFO    ] Initializing speech engine...
[2026-08-31 00:48:57,841.841 INFO    ] 2026-08-31 00:48:57
[2026-08-31 00:48:58,088.088 INFO    ] 2026-08-31 00:48:58
[2026-08-31 00:48:58,129.129 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:48:58,380.380 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:48:58,385.385 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:48:58,616.616 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:48:58,641.641 INFO    ] time= 31/08/2026 00:48:58
[2026-08-31 00:48:58,658.658 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:48:58,665.665 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:48:58,791.791 INFO    ] No existing commands found in stream
[2026-08-31 00:49:03,806.806 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:49:03,809.809 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-08-31 00:49:06,406.406 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 00:49:06,410.410 INFO    ] Checking for system updates...
[2026-08-31 00:49:06,451.451 INFO    ] 200
[2026-08-31 00:49:06,453.453 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:49:06,511.511 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:49:06,514.514 INFO    ] No update needed
[2026-08-31 00:49:06,516.516 INFO    ] Checking for camera pi updates...
[2026-08-31 00:49:06,550.550 INFO    ] 200
[2026-08-31 00:49:06,552.552 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:49:06,597.597 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:49:06,692.692 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:49:06,695.695 INFO    ] No camera update needed
[2026-08-31 00:49:06,697.697 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:49:06,699.699 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:49:06,705.705 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:49:06,710.710 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:49:08,752.752 INFO    ] ================================================
[2026-08-31 00:49:08,767.767 INFO    ] Launching Daemon at Mon Aug 31 00:49:08 IST 2026
[2026-08-31 00:49:08,777.777 INFO    ] ================================================
[2026-08-31 00:49:09,344.344 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:49:09
[2026-08-31 00:49:09,926.926 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:49:10,193.193 INFO    ] Initializing speech engine...
[2026-08-31 00:49:10,200.200 INFO    ] 2026-08-31 00:49:10
[2026-08-31 00:49:10,448.448 INFO    ] 2026-08-31 00:49:10
[2026-08-31 00:49:10,484.484 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:49:10,739.739 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:49:10,746.746 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:49:10,987.987 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:49:11,001.001 INFO    ] time= 31/08/2026 00:49:10
[2026-08-31 00:49:11,007.007 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:49:11,024.024 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:49:11,155.155 INFO    ] No existing commands found in stream
[2026-08-31 00:49:16,180.180 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:49:16,183.183 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-08-31 00:49:18,538.538 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 00:49:18,540.540 INFO    ] Checking for system updates...
[2026-08-31 00:49:18,576.576 INFO    ] 200
[2026-08-31 00:49:18,579.579 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:49:18,639.639 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:49:18,641.641 INFO    ] No update needed
[2026-08-31 00:49:18,644.644 INFO    ] Checking for camera pi updates...
[2026-08-31 00:49:18,677.677 INFO    ] 200
[2026-08-31 00:49:18,679.679 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:49:18,720.720 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:49:18,816.816 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:49:18,819.819 INFO    ] No camera update needed
[2026-08-31 00:49:18,821.821 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:49:18,823.823 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:49:18,828.828 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:49:18,833.833 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:49:20,872.872 INFO    ] ================================================
[2026-08-31 00:49:20,887.887 INFO    ] Launching Daemon at Mon Aug 31 00:49:20 IST 2026
[2026-08-31 00:49:20,897.897 INFO    ] ================================================
[2026-08-31 00:49:21,496.496 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:49:21
[2026-08-31 00:49:22,135.135 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:49:22,443.443 INFO    ] Initializing speech engine...
[2026-08-31 00:49:22,448.448 INFO    ] 2026-08-31 00:49:22
[2026-08-31 00:49:22,711.711 INFO    ] 2026-08-31 00:49:22
[2026-08-31 00:49:22,753.753 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:49:23,049.049 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:49:23,104.104 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:49:23,282.282 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:49:23,288.288 INFO    ] time= 31/08/2026 00:49:23
[2026-08-31 00:49:23,296.296 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:49:23,345.345 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:49:23,485.485 INFO    ] No existing commands found in stream
[2026-08-31 00:49:28,501.501 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:49:28,503.503 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-08-31 00:49:30,310.310 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 00:49:30,313.313 INFO    ] Checking for system updates...
[2026-08-31 00:49:30,349.349 INFO    ] 200
[2026-08-31 00:49:30,352.352 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:49:30,409.409 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:49:30,411.411 INFO    ] No update needed
[2026-08-31 00:49:30,413.413 INFO    ] Checking for camera pi updates...
[2026-08-31 00:49:30,446.446 INFO    ] 200
[2026-08-31 00:49:30,449.449 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:49:30,492.492 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:49:30,556.556 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:49:30,559.559 INFO    ] No camera update needed
[2026-08-31 00:49:30,561.561 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:49:30,563.563 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:49:30,568.568 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:49:30,573.573 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:49:32,615.615 INFO    ] ================================================
[2026-08-31 00:49:32,631.631 INFO    ] Launching Daemon at Mon Aug 31 00:49:32 IST 2026
[2026-08-31 00:49:32,643.643 INFO    ] ================================================
[2026-08-31 00:49:33,246.246 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:49:33
[2026-08-31 00:49:33,826.826 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:49:34,103.103 INFO    ] Initializing speech engine...
[2026-08-31 00:49:34,111.111 INFO    ] 2026-08-31 00:49:34
[2026-08-31 00:49:34,372.372 INFO    ] 2026-08-31 00:49:34
[2026-08-31 00:49:34,407.407 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:49:34,623.623 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:49:34,643.643 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:49:34,842.842 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:49:34,886.886 INFO    ] time= 31/08/2026 00:49:34
[2026-08-31 00:49:34,930.930 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:49:34,979.979 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:49:35,112.112 INFO    ] No existing commands found in stream
[2026-08-31 00:49:40,135.135 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:49:40,138.138 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-08-31 00:49:42,329.329 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 00:49:42,332.332 INFO    ] Checking for system updates...
[2026-08-31 00:49:42,367.367 INFO    ] 200
[2026-08-31 00:49:42,369.369 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:49:42,426.426 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:49:42,428.428 INFO    ] No update needed
[2026-08-31 00:49:42,431.431 INFO    ] Checking for camera pi updates...
[2026-08-31 00:49:42,464.464 INFO    ] 200
[2026-08-31 00:49:42,467.467 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:49:42,522.522 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:49:42,620.620 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:49:42,622.622 INFO    ] No camera update needed
[2026-08-31 00:49:42,624.624 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:49:42,627.627 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:49:42,632.632 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:49:42,637.637 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:49:44,678.678 INFO    ] ================================================
[2026-08-31 00:49:44,694.694 INFO    ] Launching Daemon at Mon Aug 31 00:49:44 IST 2026
[2026-08-31 00:49:44,705.705 INFO    ] ================================================
[2026-08-31 00:49:45,325.325 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:49:45
[2026-08-31 00:49:45,962.962 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:49:46,252.252 INFO    ] Initializing speech engine...
[2026-08-31 00:49:46,261.261 INFO    ] 2026-08-31 00:49:46
[2026-08-31 00:49:46,539.539 INFO    ] 2026-08-31 00:49:46
[2026-08-31 00:49:46,584.584 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:49:46,927.927 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:49:46,935.935 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:49:47,188.188 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:49:47,228.228 INFO    ] time= 31/08/2026 00:49:47
[2026-08-31 00:49:47,278.278 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:49:47,320.320 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:49:47,481.481 INFO    ] No existing commands found in stream
[2026-08-31 00:49:52,513.513 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:49:52,522.522 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-08-31 00:49:54,589.589 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 00:49:54,592.592 INFO    ] Checking for system updates...
[2026-08-31 00:49:54,629.629 INFO    ] 200
[2026-08-31 00:49:54,631.631 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:49:54,689.689 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:49:54,692.692 INFO    ] No update needed
[2026-08-31 00:49:54,694.694 INFO    ] Checking for camera pi updates...
[2026-08-31 00:49:54,732.732 INFO    ] 200
[2026-08-31 00:49:54,735.735 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:49:54,775.775 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:49:54,843.843 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:49:54,846.846 INFO    ] No camera update needed
[2026-08-31 00:49:54,848.848 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:49:54,851.851 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:49:54,856.856 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:49:54,861.861 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:49:56,901.901 INFO    ] ================================================
[2026-08-31 00:49:56,917.917 INFO    ] Launching Daemon at Mon Aug 31 00:49:56 IST 2026
[2026-08-31 00:49:56,928.928 INFO    ] ================================================
[2026-08-31 00:49:57,549.549 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:49:57
[2026-08-31 00:49:58,190.190 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:49:58,482.482 INFO    ] Initializing speech engine...
[2026-08-31 00:49:58,488.488 INFO    ] 2026-08-31 00:49:58
[2026-08-31 00:49:58,755.755 INFO    ] 2026-08-31 00:49:58
[2026-08-31 00:49:58,809.809 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:49:59,058.058 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:49:59,066.066 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:49:59,278.278 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:49:59,302.302 INFO    ] time= 31/08/2026 00:49:59
[2026-08-31 00:49:59,308.308 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:49:59,326.326 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:49:59,456.456 INFO    ] No existing commands found in stream
[2026-08-31 00:50:04,471.471 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:50:04,474.474 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-08-31 00:50:09,122.122 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 00:50:09,125.125 INFO    ] Checking for system updates...
[2026-08-31 00:50:09,165.165 INFO    ] 200
[2026-08-31 00:50:09,167.167 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:50:09,219.219 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:50:09,222.222 INFO    ] No update needed
[2026-08-31 00:50:09,224.224 INFO    ] Checking for camera pi updates...
[2026-08-31 00:50:09,261.261 INFO    ] 200
[2026-08-31 00:50:09,263.263 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:50:09,308.308 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:50:09,492.492 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:50:09,495.495 INFO    ] No camera update needed
[2026-08-31 00:50:09,497.497 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:50:09,500.500 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:50:09,505.505 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:50:09,510.510 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:50:11,552.552 INFO    ] ================================================
[2026-08-31 00:50:11,568.568 INFO    ] Launching Daemon at Mon Aug 31 00:50:11 IST 2026
[2026-08-31 00:50:11,578.578 INFO    ] ================================================
[2026-08-31 00:50:12,161.161 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:50:12
[2026-08-31 00:50:12,759.759 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:50:13,030.030 INFO    ] Initializing speech engine...
[2026-08-31 00:50:13,048.048 INFO    ] 2026-08-31 00:50:13
[2026-08-31 00:50:13,318.318 INFO    ] 2026-08-31 00:50:13
[2026-08-31 00:50:13,353.353 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:50:13,549.549 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:50:13,563.563 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:50:13,723.723 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:50:13,729.729 INFO    ] time= 31/08/2026 00:50:13
[2026-08-31 00:50:13,735.735 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:50:13,767.767 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:50:13,928.928 INFO    ] No existing commands found in stream
[2026-08-31 00:50:18,955.955 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:50:18,958.958 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-08-31 00:50:20,338.338 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 00:50:20,341.341 INFO    ] Checking for system updates...
[2026-08-31 00:50:20,380.380 INFO    ] 200
[2026-08-31 00:50:20,383.383 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:50:20,435.435 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:50:20,438.438 INFO    ] No update needed
[2026-08-31 00:50:20,440.440 INFO    ] Checking for camera pi updates...
[2026-08-31 00:50:20,474.474 INFO    ] 200
[2026-08-31 00:50:20,477.477 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:50:20,518.518 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:50:20,602.602 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:50:20,604.604 INFO    ] No camera update needed
[2026-08-31 00:50:20,608.608 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:50:20,612.612 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:50:20,619.619 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:50:20,624.624 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:50:22,666.666 INFO    ] ================================================
[2026-08-31 00:50:22,683.683 INFO    ] Launching Daemon at Mon Aug 31 00:50:22 IST 2026
[2026-08-31 00:50:22,693.693 INFO    ] ================================================
[2026-08-31 00:50:23,323.323 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:50:23
[2026-08-31 00:50:23,939.939 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:50:24,205.205 INFO    ] Initializing speech engine...
[2026-08-31 00:50:24,214.214 INFO    ] 2026-08-31 00:50:24
[2026-08-31 00:50:24,460.460 INFO    ] 2026-08-31 00:50:24
[2026-08-31 00:50:24,525.525 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:50:24,810.810 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:50:24,814.814 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:50:25,007.007 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:50:25,013.013 INFO    ] time= 31/08/2026 00:50:25
[2026-08-31 00:50:25,032.032 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:50:25,060.060 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:50:25,165.165 INFO    ] No existing commands found in stream
[2026-08-31 00:50:30,185.185 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:50:30,188.188 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-08-31 00:50:32,859.859 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 00:50:32,862.862 INFO    ] Checking for system updates...
[2026-08-31 00:50:32,900.900 INFO    ] 200
[2026-08-31 00:50:32,902.902 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:50:32,954.954 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:50:32,957.957 INFO    ] No update needed
[2026-08-31 00:50:32,959.959 INFO    ] Checking for camera pi updates...
[2026-08-31 00:50:33,000.000 INFO    ] 200
[2026-08-31 00:50:33,003.003 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:50:33,047.047 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:50:33,132.132 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:50:33,135.135 INFO    ] No camera update needed
[2026-08-31 00:50:33,137.137 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:50:33,140.140 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:50:33,145.145 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:50:33,151.151 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:50:35,194.194 INFO    ] ================================================
[2026-08-31 00:50:35,209.209 INFO    ] Launching Daemon at Mon Aug 31 00:50:35 IST 2026
[2026-08-31 00:50:35,219.219 INFO    ] ================================================
[2026-08-31 00:50:35,800.800 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:50:35
[2026-08-31 00:50:36,398.398 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:50:36,648.648 INFO    ] Initializing speech engine...
[2026-08-31 00:50:36,654.654 INFO    ] 2026-08-31 00:50:36
[2026-08-31 00:50:36,949.949 INFO    ] 2026-08-31 00:50:36
[2026-08-31 00:50:36,988.988 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:50:37,210.210 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:50:37,258.258 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:50:37,428.428 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:50:37,475.475 INFO    ] time= 31/08/2026 00:50:37
[2026-08-31 00:50:37,514.514 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:50:37,569.569 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:50:37,699.699 INFO    ] No existing commands found in stream
[2026-08-31 00:50:42,729.729 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:50:42,736.736 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-08-31 00:50:46,042.042 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 00:50:46,044.044 INFO    ] Checking for system updates...
[2026-08-31 00:50:46,083.083 INFO    ] 200
[2026-08-31 00:50:46,085.085 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:50:46,142.142 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:50:46,144.144 INFO    ] No update needed
[2026-08-31 00:50:46,147.147 INFO    ] Checking for camera pi updates...
[2026-08-31 00:50:46,180.180 INFO    ] 200
[2026-08-31 00:50:46,182.182 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:50:46,222.222 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:50:46,317.317 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:50:46,320.320 INFO    ] No camera update needed
[2026-08-31 00:50:46,322.322 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:50:46,324.324 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:50:46,330.330 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:50:46,334.334 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:50:48,374.374 INFO    ] ================================================
[2026-08-31 00:50:48,388.388 INFO    ] Launching Daemon at Mon Aug 31 00:50:48 IST 2026
[2026-08-31 00:50:48,399.399 INFO    ] ================================================
[2026-08-31 00:50:48,980.980 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:50:48
[2026-08-31 00:50:49,576.576 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:50:49,853.853 INFO    ] Initializing speech engine...
[2026-08-31 00:50:49,860.860 INFO    ] 2026-08-31 00:50:49
[2026-08-31 00:50:50,121.121 INFO    ] 2026-08-31 00:50:50
[2026-08-31 00:50:50,151.151 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:50:50,401.401 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:50:50,405.405 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:50:50,612.612 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:50:50,659.659 INFO    ] time= 31/08/2026 00:50:50
[2026-08-31 00:50:50,666.666 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:50:50,684.684 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:50:50,815.815 INFO    ] No existing commands found in stream
[2026-08-31 00:50:55,834.834 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:50:55,836.836 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-08-31 00:50:57,243.243 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 00:50:57,246.246 INFO    ] Checking for system updates...
[2026-08-31 00:50:57,283.283 INFO    ] 200
[2026-08-31 00:50:57,286.286 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:50:57,344.344 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:50:57,347.347 INFO    ] No update needed
[2026-08-31 00:50:57,349.349 INFO    ] Checking for camera pi updates...
[2026-08-31 00:50:57,382.382 INFO    ] 200
[2026-08-31 00:50:57,385.385 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:50:57,429.429 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:50:57,511.511 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:50:57,514.514 INFO    ] No camera update needed
[2026-08-31 00:50:57,516.516 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:50:57,518.518 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:50:57,524.524 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:50:57,529.529 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:50:59,570.570 INFO    ] ================================================
[2026-08-31 00:50:59,585.585 INFO    ] Launching Daemon at Mon Aug 31 00:50:59 IST 2026
[2026-08-31 00:50:59,596.596 INFO    ] ================================================
[2026-08-31 00:51:00,170.170 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:51:00
[2026-08-31 00:51:00,756.756 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:51:01,010.010 INFO    ] Initializing speech engine...
[2026-08-31 00:51:01,019.019 INFO    ] 2026-08-31 00:51:01
[2026-08-31 00:51:01,309.309 INFO    ] 2026-08-31 00:51:01
[2026-08-31 00:51:01,346.346 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:51:01,570.570 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:51:01,634.634 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:51:01,838.838 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:51:01,842.842 INFO    ] time= 31/08/2026 00:51:01
[2026-08-31 00:51:01,851.851 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:51:01,869.869 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:51:01,951.951 INFO    ] No existing commands found in stream
[2026-08-31 00:51:06,960.960 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:51:06,962.962 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-08-31 00:51:10,166.166 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 00:51:10,169.169 INFO    ] Checking for system updates...
[2026-08-31 00:51:10,205.205 INFO    ] 200
[2026-08-31 00:51:10,207.207 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:51:10,259.259 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:51:10,262.262 INFO    ] No update needed
[2026-08-31 00:51:10,264.264 INFO    ] Checking for camera pi updates...
[2026-08-31 00:51:10,298.298 INFO    ] 200
[2026-08-31 00:51:10,300.300 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:51:10,346.346 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:51:10,446.446 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:51:10,449.449 INFO    ] No camera update needed
[2026-08-31 00:51:10,451.451 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:51:10,454.454 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:51:10,459.459 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:51:10,464.464 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:51:12,504.504 INFO    ] ================================================
[2026-08-31 00:51:12,519.519 INFO    ] Launching Daemon at Mon Aug 31 00:51:12 IST 2026
[2026-08-31 00:51:12,530.530 INFO    ] ================================================
[2026-08-31 00:51:13,190.190 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:51:13
[2026-08-31 00:51:13,845.845 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:51:14,118.118 INFO    ] Initializing speech engine...
[2026-08-31 00:51:14,126.126 INFO    ] 2026-08-31 00:51:14
[2026-08-31 00:51:14,377.377 INFO    ] 2026-08-31 00:51:14
[2026-08-31 00:51:14,412.412 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:51:14,665.665 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:51:14,674.674 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:51:14,927.927 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:51:14,934.934 INFO    ] time= 31/08/2026 00:51:14
[2026-08-31 00:51:14,952.952 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:51:14,980.980 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:51:15,097.097 INFO    ] No existing commands found in stream
[2026-08-31 00:51:20,121.121 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:51:20,124.124 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-08-31 00:51:23,404.404 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 00:51:23,406.406 INFO    ] Checking for system updates...
[2026-08-31 00:51:23,446.446 INFO    ] 200
[2026-08-31 00:51:23,449.449 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:51:23,501.501 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:51:23,504.504 INFO    ] No update needed
[2026-08-31 00:51:23,506.506 INFO    ] Checking for camera pi updates...
[2026-08-31 00:51:23,539.539 INFO    ] 200
[2026-08-31 00:51:23,542.542 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:51:23,587.587 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:51:23,686.686 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:51:23,689.689 INFO    ] No camera update needed
[2026-08-31 00:51:23,692.692 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:51:23,694.694 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:51:23,699.699 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:51:23,704.704 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:51:25,745.745 INFO    ] ================================================
[2026-08-31 00:51:25,760.760 INFO    ] Launching Daemon at Mon Aug 31 00:51:25 IST 2026
[2026-08-31 00:51:25,770.770 INFO    ] ================================================
[2026-08-31 00:51:26,429.429 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:51:26
[2026-08-31 00:51:27,018.018 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:51:27,263.263 INFO    ] Initializing speech engine...
[2026-08-31 00:51:27,277.277 INFO    ] 2026-08-31 00:51:27
[2026-08-31 00:51:27,539.539 INFO    ] 2026-08-31 00:51:27
[2026-08-31 00:51:27,574.574 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:51:27,824.824 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:51:27,833.833 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:51:28,062.062 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:51:28,118.118 INFO    ] time= 31/08/2026 00:51:28
[2026-08-31 00:51:28,129.129 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:51:28,144.144 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:51:28,277.277 INFO    ] No existing commands found in stream
[2026-08-31 00:51:33,300.300 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:51:33,302.302 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-08-31 00:51:37,222.222 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 00:51:37,225.225 INFO    ] Checking for system updates...
[2026-08-31 00:51:37,261.261 INFO    ] 200
[2026-08-31 00:51:37,264.264 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:51:37,317.317 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:51:37,319.319 INFO    ] No update needed
[2026-08-31 00:51:37,322.322 INFO    ] Checking for camera pi updates...
[2026-08-31 00:51:37,357.357 INFO    ] 200
[2026-08-31 00:51:37,360.360 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:51:37,405.405 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:51:37,485.485 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:51:37,487.487 INFO    ] No camera update needed
[2026-08-31 00:51:37,490.490 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:51:37,492.492 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:51:37,498.498 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:51:37,503.503 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:51:39,543.543 INFO    ] ================================================
[2026-08-31 00:51:39,558.558 INFO    ] Launching Daemon at Mon Aug 31 00:51:39 IST 2026
[2026-08-31 00:51:39,568.568 INFO    ] ================================================
[2026-08-31 00:51:40,150.150 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:51:40
[2026-08-31 00:51:40,750.750 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:51:41,029.029 INFO    ] Initializing speech engine...
[2026-08-31 00:51:41,034.034 INFO    ] 2026-08-31 00:51:41
[2026-08-31 00:51:41,297.297 INFO    ] 2026-08-31 00:51:41
[2026-08-31 00:51:41,348.348 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:51:41,577.577 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:51:41,583.583 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:51:41,823.823 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:51:41,844.844 INFO    ] time= 31/08/2026 00:51:41
[2026-08-31 00:51:41,858.858 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:51:41,867.867 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:51:41,994.994 INFO    ] No existing commands found in stream
[2026-08-31 00:51:47,011.011 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:51:47,013.013 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-08-31 00:51:50,361.361 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 00:51:50,364.364 INFO    ] Checking for system updates...
[2026-08-31 00:51:50,399.399 INFO    ] 200
[2026-08-31 00:51:50,401.401 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:51:50,453.453 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:51:50,456.456 INFO    ] No update needed
[2026-08-31 00:51:50,458.458 INFO    ] Checking for camera pi updates...
[2026-08-31 00:51:50,495.495 INFO    ] 200
[2026-08-31 00:51:50,498.498 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:51:50,543.543 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:51:50,627.627 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:51:50,630.630 INFO    ] No camera update needed
[2026-08-31 00:51:50,632.632 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:51:50,634.634 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:51:50,640.640 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:51:50,645.645 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:51:52,688.688 INFO    ] ================================================
[2026-08-31 00:51:52,703.703 INFO    ] Launching Daemon at Mon Aug 31 00:51:52 IST 2026
[2026-08-31 00:51:52,713.713 INFO    ] ================================================
[2026-08-31 00:51:53,278.278 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:51:53
[2026-08-31 00:51:53,862.862 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:51:54,128.128 INFO    ] Initializing speech engine...
[2026-08-31 00:51:54,137.137 INFO    ] 2026-08-31 00:51:54
[2026-08-31 00:51:54,382.382 INFO    ] 2026-08-31 00:51:54
[2026-08-31 00:51:54,416.416 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:51:54,671.671 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:51:54,675.675 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:51:54,886.886 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:51:54,934.934 INFO    ] time= 31/08/2026 00:51:54
[2026-08-31 00:51:54,940.940 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:51:54,958.958 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:51:55,090.090 INFO    ] No existing commands found in stream
[2026-08-31 00:52:00,108.108 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:52:00,111.111 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-08-31 00:52:01,601.601 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 00:52:01,604.604 INFO    ] Checking for system updates...
[2026-08-31 00:52:01,639.639 INFO    ] 200
[2026-08-31 00:52:01,641.641 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:52:01,693.693 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:52:01,695.695 INFO    ] No update needed
[2026-08-31 00:52:01,698.698 INFO    ] Checking for camera pi updates...
[2026-08-31 00:52:01,735.735 INFO    ] 200
[2026-08-31 00:52:01,738.738 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:52:01,778.778 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:52:01,917.917 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:52:01,932.932 INFO    ] No camera update needed
[2026-08-31 00:52:01,936.936 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:52:01,942.942 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:52:01,951.951 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:52:01,960.960 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:52:04,003.003 INFO    ] ================================================
[2026-08-31 00:52:04,018.018 INFO    ] Launching Daemon at Mon Aug 31 00:52:04 IST 2026
[2026-08-31 00:52:04,028.028 INFO    ] ================================================
[2026-08-31 00:52:04,607.607 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:52:04
[2026-08-31 00:52:05,204.204 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:52:05,457.457 INFO    ] Initializing speech engine...
[2026-08-31 00:52:05,473.473 INFO    ] 2026-08-31 00:52:05
[2026-08-31 00:52:05,753.753 INFO    ] 2026-08-31 00:52:05
[2026-08-31 00:52:05,789.789 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:52:06,010.010 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:52:06,069.069 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:52:06,306.306 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:52:06,355.355 INFO    ] time= 31/08/2026 00:52:06
[2026-08-31 00:52:06,361.361 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:52:06,378.378 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:52:06,506.506 INFO    ] No existing commands found in stream
[2026-08-31 00:52:11,534.534 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:52:11,537.537 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-08-31 00:52:14,188.188 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 00:52:14,191.191 INFO    ] Checking for system updates...
[2026-08-31 00:52:14,226.226 INFO    ] 200
[2026-08-31 00:52:14,229.229 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:52:14,283.283 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:52:14,285.285 INFO    ] No update needed
[2026-08-31 00:52:14,287.287 INFO    ] Checking for camera pi updates...
[2026-08-31 00:52:14,324.324 INFO    ] 200
[2026-08-31 00:52:14,326.326 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:52:14,366.366 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:52:14,544.544 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:52:14,547.547 INFO    ] No camera update needed
[2026-08-31 00:52:14,549.549 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:52:14,552.552 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:52:14,557.557 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:52:14,562.562 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:52:16,602.602 INFO    ] ================================================
[2026-08-31 00:52:16,617.617 INFO    ] Launching Daemon at Mon Aug 31 00:52:16 IST 2026
[2026-08-31 00:52:16,628.628 INFO    ] ================================================
[2026-08-31 00:52:17,214.214 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:52:17
[2026-08-31 00:52:17,811.811 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:52:18,087.087 INFO    ] Initializing speech engine...
[2026-08-31 00:52:18,094.094 INFO    ] 2026-08-31 00:52:18
[2026-08-31 00:52:18,368.368 INFO    ] 2026-08-31 00:52:18
[2026-08-31 00:52:18,404.404 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:52:18,672.672 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:52:18,682.682 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:52:18,913.913 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:52:18,964.964 INFO    ] time= 31/08/2026 00:52:18
[2026-08-31 00:52:18,971.971 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:52:18,990.990 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:52:19,135.135 INFO    ] No existing commands found in stream
[2026-08-31 00:52:24,148.148 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:52:24,151.151 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-08-31 00:52:26,083.083 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 00:52:26,086.086 INFO    ] Checking for system updates...
[2026-08-31 00:52:26,121.121 INFO    ] 200
[2026-08-31 00:52:26,124.124 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:52:26,180.180 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:52:26,183.183 INFO    ] No update needed
[2026-08-31 00:52:26,185.185 INFO    ] Checking for camera pi updates...
[2026-08-31 00:52:26,221.221 INFO    ] 200
[2026-08-31 00:52:26,224.224 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:52:26,267.267 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:52:26,351.351 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:52:26,353.353 INFO    ] No camera update needed
[2026-08-31 00:52:26,356.356 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:52:26,358.358 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:52:26,363.363 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:52:26,369.369 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:52:28,409.409 INFO    ] ================================================
[2026-08-31 00:52:28,424.424 INFO    ] Launching Daemon at Mon Aug 31 00:52:28 IST 2026
[2026-08-31 00:52:28,435.435 INFO    ] ================================================
[2026-08-31 00:52:28,998.998 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:52:28
[2026-08-31 00:52:29,579.579 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:52:29,823.823 INFO    ] Initializing speech engine...
[2026-08-31 00:52:29,831.831 INFO    ] 2026-08-31 00:52:29
[2026-08-31 00:52:30,105.105 INFO    ] 2026-08-31 00:52:30
[2026-08-31 00:52:30,141.141 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:52:30,396.396 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:52:30,406.406 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:52:30,646.646 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:52:30,671.671 INFO    ] time= 31/08/2026 00:52:30
[2026-08-31 00:52:30,687.687 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:52:30,696.696 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:52:30,805.805 INFO    ] No existing commands found in stream
[2026-08-31 00:52:35,830.830 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:52:35,833.833 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-08-31 00:52:38,388.388 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 00:52:38,390.390 INFO    ] Checking for system updates...
[2026-08-31 00:52:38,425.425 INFO    ] 200
[2026-08-31 00:52:38,428.428 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:52:38,484.484 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:52:38,487.487 INFO    ] No update needed
[2026-08-31 00:52:38,489.489 INFO    ] Checking for camera pi updates...
[2026-08-31 00:52:38,522.522 INFO    ] 200
[2026-08-31 00:52:38,525.525 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:52:38,565.565 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:52:38,645.645 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:52:38,648.648 INFO    ] No camera update needed
[2026-08-31 00:52:38,650.650 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:52:38,652.652 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:52:38,658.658 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:52:38,663.663 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:52:40,702.702 INFO    ] ================================================
[2026-08-31 00:52:40,718.718 INFO    ] Launching Daemon at Mon Aug 31 00:52:40 IST 2026
[2026-08-31 00:52:40,729.729 INFO    ] ================================================
[2026-08-31 00:52:41,306.306 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:52:41
[2026-08-31 00:52:41,896.896 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:52:42,164.164 INFO    ] Initializing speech engine...
[2026-08-31 00:52:42,172.172 INFO    ] 2026-08-31 00:52:42
[2026-08-31 00:52:42,426.426 INFO    ] 2026-08-31 00:52:42
[2026-08-31 00:52:42,483.483 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:52:42,707.707 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:52:42,731.731 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:52:42,953.953 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:52:42,971.971 INFO    ] time= 31/08/2026 00:52:42
[2026-08-31 00:52:42,988.988 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:52:43,010.010 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:52:43,129.129 INFO    ] No existing commands found in stream
[2026-08-31 00:52:48,158.158 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:52:48,161.161 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-08-31 00:52:50,148.148 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 00:52:50,151.151 INFO    ] Checking for system updates...
[2026-08-31 00:52:50,187.187 INFO    ] 200
[2026-08-31 00:52:50,190.190 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:52:50,242.242 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:52:50,245.245 INFO    ] No update needed
[2026-08-31 00:52:50,247.247 INFO    ] Checking for camera pi updates...
[2026-08-31 00:52:50,281.281 INFO    ] 200
[2026-08-31 00:52:50,284.284 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:52:50,328.328 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:52:50,435.435 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:52:50,438.438 INFO    ] No camera update needed
[2026-08-31 00:52:50,441.441 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:52:50,443.443 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:52:50,449.449 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:52:50,455.455 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:52:52,496.496 INFO    ] ================================================
[2026-08-31 00:52:52,510.510 INFO    ] Launching Daemon at Mon Aug 31 00:52:52 IST 2026
[2026-08-31 00:52:52,521.521 INFO    ] ================================================
[2026-08-31 00:52:53,101.101 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:52:53
[2026-08-31 00:52:53,702.702 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:52:53,965.965 INFO    ] Initializing speech engine...
[2026-08-31 00:52:53,990.990 INFO    ] 2026-08-31 00:52:53
[2026-08-31 00:52:54,259.259 INFO    ] 2026-08-31 00:52:54
[2026-08-31 00:52:54,295.295 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:52:54,572.572 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:52:54,583.583 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:52:54,745.745 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:52:54,795.795 INFO    ] time= 31/08/2026 00:52:54
[2026-08-31 00:52:54,855.855 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:52:54,872.872 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:52:55,011.011 INFO    ] No existing commands found in stream
[2026-08-31 00:53:00,042.042 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:53:00,044.044 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-08-31 00:53:04,308.308 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 00:53:04,311.311 INFO    ] Checking for system updates...
[2026-08-31 00:53:04,350.350 INFO    ] 200
[2026-08-31 00:53:04,353.353 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:53:04,417.417 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:53:04,420.420 INFO    ] No update needed
[2026-08-31 00:53:04,423.423 INFO    ] Checking for camera pi updates...
[2026-08-31 00:53:04,461.461 INFO    ] 200
[2026-08-31 00:53:04,463.463 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:53:04,509.509 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:53:04,592.592 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:53:04,595.595 INFO    ] No camera update needed
[2026-08-31 00:53:04,598.598 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:53:04,601.601 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:53:04,607.607 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:53:04,612.612 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:53:06,655.655 INFO    ] ================================================
[2026-08-31 00:53:06,671.671 INFO    ] Launching Daemon at Mon Aug 31 00:53:06 IST 2026
[2026-08-31 00:53:06,682.682 INFO    ] ================================================
[2026-08-31 00:53:08,516.516 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:53:07
[2026-08-31 00:53:10,123.123 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:53:10,418.418 INFO    ] Initializing speech engine...
[2026-08-31 00:53:10,425.425 INFO    ] 2026-08-31 00:53:10
[2026-08-31 00:53:10,710.710 INFO    ] 2026-08-31 00:53:10
[2026-08-31 00:53:10,756.756 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:53:11,049.049 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:53:11,055.055 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:53:11,255.255 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:53:11,274.274 INFO    ] time= 31/08/2026 00:53:11
[2026-08-31 00:53:11,283.283 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:53:11,310.310 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:53:11,433.433 INFO    ] No existing commands found in stream
[2026-08-31 00:53:16,464.464 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:53:16,467.467 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-08-31 00:53:17,068.068 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 00:53:17,071.071 INFO    ] Checking for system updates...
[2026-08-31 00:53:17,107.107 INFO    ] 200
[2026-08-31 00:53:17,110.110 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:53:17,163.163 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:53:17,166.166 INFO    ] No update needed
[2026-08-31 00:53:17,168.168 INFO    ] Checking for camera pi updates...
[2026-08-31 00:53:17,203.203 INFO    ] 200
[2026-08-31 00:53:17,205.205 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:53:17,246.246 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:53:17,354.354 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:53:17,356.356 INFO    ] No camera update needed
[2026-08-31 00:53:17,359.359 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:53:17,362.362 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:53:17,367.367 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:53:17,373.373 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:53:19,413.413 INFO    ] ================================================
[2026-08-31 00:53:19,429.429 INFO    ] Launching Daemon at Mon Aug 31 00:53:19 IST 2026
[2026-08-31 00:53:19,440.440 INFO    ] ================================================
[2026-08-31 00:53:20,059.059 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:53:20
[2026-08-31 00:53:20,640.640 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:53:20,888.888 INFO    ] Initializing speech engine...
[2026-08-31 00:53:20,912.912 INFO    ] 2026-08-31 00:53:20
[2026-08-31 00:53:21,169.169 INFO    ] 2026-08-31 00:53:21
[2026-08-31 00:53:21,204.204 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:53:21,465.465 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:53:21,469.469 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:53:21,705.705 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:53:21,746.746 INFO    ] time= 31/08/2026 00:53:21
[2026-08-31 00:53:21,753.753 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:53:21,770.770 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:53:21,893.893 INFO    ] No existing commands found in stream
[2026-08-31 00:53:26,923.923 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:53:26,926.926 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-08-31 00:53:29,629.629 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 00:53:29,631.631 INFO    ] Checking for system updates...
[2026-08-31 00:53:29,666.666 INFO    ] 200
[2026-08-31 00:53:29,669.669 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:53:29,725.725 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:53:29,727.727 INFO    ] No update needed
[2026-08-31 00:53:29,729.729 INFO    ] Checking for camera pi updates...
[2026-08-31 00:53:29,763.763 INFO    ] 200
[2026-08-31 00:53:29,765.765 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:53:29,804.804 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:53:29,894.894 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:53:29,896.896 INFO    ] No camera update needed
[2026-08-31 00:53:29,899.899 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:53:29,901.901 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:53:29,906.906 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:53:29,911.911 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:53:31,953.953 INFO    ] ================================================
[2026-08-31 00:53:31,969.969 INFO    ] Launching Daemon at Mon Aug 31 00:53:31 IST 2026
[2026-08-31 00:53:31,983.983 INFO    ] ================================================
[2026-08-31 00:53:32,590.590 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:53:32
[2026-08-31 00:53:33,206.206 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:53:33,460.460 INFO    ] Initializing speech engine...
[2026-08-31 00:53:33,480.480 INFO    ] 2026-08-31 00:53:33
[2026-08-31 00:53:33,735.735 INFO    ] 2026-08-31 00:53:33
[2026-08-31 00:53:33,771.771 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:53:34,022.022 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:53:34,031.031 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:53:34,249.249 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:53:34,289.289 INFO    ] time= 31/08/2026 00:53:34
[2026-08-31 00:53:34,295.295 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:53:34,315.315 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:53:34,444.444 INFO    ] No existing commands found in stream
[2026-08-31 00:53:39,463.463 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:53:39,466.466 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-08-31 00:53:40,680.680 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 00:53:40,682.682 INFO    ] Checking for system updates...
[2026-08-31 00:53:40,719.719 INFO    ] 200
[2026-08-31 00:53:40,722.722 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:53:40,780.780 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:53:40,783.783 INFO    ] No update needed
[2026-08-31 00:53:40,785.785 INFO    ] Checking for camera pi updates...
[2026-08-31 00:53:40,820.820 INFO    ] 200
[2026-08-31 00:53:40,822.822 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:53:40,868.868 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:53:40,952.952 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:53:40,954.954 INFO    ] No camera update needed
[2026-08-31 00:53:40,956.956 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:53:40,959.959 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:53:40,964.964 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:53:40,969.969 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:53:43,009.009 INFO    ] ================================================
[2026-08-31 00:53:43,024.024 INFO    ] Launching Daemon at Mon Aug 31 00:53:43 IST 2026
[2026-08-31 00:53:43,035.035 INFO    ] ================================================
[2026-08-31 00:53:43,616.616 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:53:43
[2026-08-31 00:53:44,215.215 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:53:44,495.495 INFO    ] Initializing speech engine...
[2026-08-31 00:53:44,509.509 INFO    ] 2026-08-31 00:53:44
[2026-08-31 00:53:44,777.777 INFO    ] 2026-08-31 00:53:44
[2026-08-31 00:53:44,813.813 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:53:45,030.030 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:53:45,038.038 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:53:45,254.254 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:53:45,277.277 INFO    ] time= 31/08/2026 00:53:45
[2026-08-31 00:53:45,327.327 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:53:45,381.381 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:53:45,532.532 INFO    ] No existing commands found in stream
[2026-08-31 00:53:50,560.560 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:53:50,563.563 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-08-31 00:53:53,242.242 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 00:53:53,245.245 INFO    ] Checking for system updates...
[2026-08-31 00:53:53,284.284 INFO    ] 200
[2026-08-31 00:53:53,287.287 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:53:53,340.340 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:53:53,343.343 INFO    ] No update needed
[2026-08-31 00:53:53,346.346 INFO    ] Checking for camera pi updates...
[2026-08-31 00:53:53,380.380 INFO    ] 200
[2026-08-31 00:53:53,382.382 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:53:53,424.424 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:53:53,507.507 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:53:53,510.510 INFO    ] No camera update needed
[2026-08-31 00:53:53,513.513 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:53:53,515.515 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:53:53,521.521 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:53:53,527.527 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:53:55,568.568 INFO    ] ================================================
[2026-08-31 00:53:55,583.583 INFO    ] Launching Daemon at Mon Aug 31 00:53:55 IST 2026
[2026-08-31 00:53:55,594.594 INFO    ] ================================================
[2026-08-31 00:53:56,172.172 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:53:56
[2026-08-31 00:53:56,767.767 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:53:57,037.037 INFO    ] Initializing speech engine...
[2026-08-31 00:53:57,045.045 INFO    ] 2026-08-31 00:53:57
[2026-08-31 00:53:57,299.299 INFO    ] 2026-08-31 00:53:57
[2026-08-31 00:53:57,333.333 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:53:57,583.583 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:53:57,592.592 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:53:57,806.806 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:53:57,850.850 INFO    ] time= 31/08/2026 00:53:57
[2026-08-31 00:53:57,856.856 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:53:57,874.874 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:53:58,005.005 INFO    ] No existing commands found in stream
[2026-08-31 00:54:03,020.020 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:54:03,024.024 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-08-31 00:54:04,626.626 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 00:54:04,628.628 INFO    ] Checking for system updates...
[2026-08-31 00:54:04,664.664 INFO    ] 200
[2026-08-31 00:54:04,666.666 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:54:04,734.734 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:54:04,737.737 INFO    ] No update needed
[2026-08-31 00:54:04,740.740 INFO    ] Checking for camera pi updates...
[2026-08-31 00:54:04,776.776 INFO    ] 200
[2026-08-31 00:54:04,779.779 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:54:04,822.822 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:54:04,909.909 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:54:04,911.911 INFO    ] No camera update needed
[2026-08-31 00:54:04,913.913 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:54:04,916.916 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:54:04,921.921 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:54:04,926.926 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:54:06,967.967 INFO    ] ================================================
[2026-08-31 00:54:06,983.983 INFO    ] Launching Daemon at Mon Aug 31 00:54:06 IST 2026
[2026-08-31 00:54:07,994.994 INFO    ] ================================================
[2026-08-31 00:54:07,567.567 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:54:07
[2026-08-31 00:54:08,167.167 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:54:08,425.425 INFO    ] Initializing speech engine...
[2026-08-31 00:54:08,434.434 INFO    ] 2026-08-31 00:54:08
[2026-08-31 00:54:08,729.729 INFO    ] 2026-08-31 00:54:08
[2026-08-31 00:54:08,768.768 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:54:08,974.974 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:54:08,990.990 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:54:09,208.208 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:54:09,224.224 INFO    ] time= 31/08/2026 00:54:09
[2026-08-31 00:54:09,273.273 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:54:09,322.322 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:54:09,496.496 INFO    ] No existing commands found in stream
[2026-08-31 00:54:14,524.524 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:54:14,528.528 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-08-31 00:54:17,681.681 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 00:54:17,684.684 INFO    ] Checking for system updates...
[2026-08-31 00:54:17,721.721 INFO    ] 200
[2026-08-31 00:54:17,724.724 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:54:17,778.778 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:54:17,780.780 INFO    ] No update needed
[2026-08-31 00:54:17,783.783 INFO    ] Checking for camera pi updates...
[2026-08-31 00:54:17,821.821 INFO    ] 200
[2026-08-31 00:54:17,824.824 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:54:17,865.865 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:54:18,053.053 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:54:18,055.055 INFO    ] No camera update needed
[2026-08-31 00:54:18,058.058 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:54:18,061.061 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:54:18,067.067 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:54:18,073.073 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:54:20,114.114 INFO    ] ================================================
[2026-08-31 00:54:20,129.129 INFO    ] Launching Daemon at Mon Aug 31 00:54:20 IST 2026
[2026-08-31 00:54:20,140.140 INFO    ] ================================================
[2026-08-31 00:54:20,710.710 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:54:20
[2026-08-31 00:54:21,297.297 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:54:21,545.545 INFO    ] Initializing speech engine...
[2026-08-31 00:54:21,553.553 INFO    ] 2026-08-31 00:54:21
[2026-08-31 00:54:21,830.830 INFO    ] 2026-08-31 00:54:21
[2026-08-31 00:54:21,865.865 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:54:22,123.123 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:54:22,132.132 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:54:22,341.341 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:54:22,395.395 INFO    ] time= 31/08/2026 00:54:22
[2026-08-31 00:54:22,402.402 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:54:22,417.417 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:54:22,522.522 INFO    ] No existing commands found in stream
[2026-08-31 00:54:27,553.553 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:54:27,555.555 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-08-31 00:54:31,040.040 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 00:54:31,043.043 INFO    ] Checking for system updates...
[2026-08-31 00:54:31,079.079 INFO    ] 200
[2026-08-31 00:54:31,081.081 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:54:31,133.133 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:54:31,135.135 INFO    ] No update needed
[2026-08-31 00:54:31,138.138 INFO    ] Checking for camera pi updates...
[2026-08-31 00:54:31,172.172 INFO    ] 200
[2026-08-31 00:54:31,174.174 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:54:31,214.214 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:54:31,307.307 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:54:31,309.309 INFO    ] No camera update needed
[2026-08-31 00:54:31,312.312 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:54:31,314.314 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:54:31,319.319 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:54:31,324.324 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:54:33,365.365 INFO    ] ================================================
[2026-08-31 00:54:33,384.384 INFO    ] Launching Daemon at Mon Aug 31 00:54:33 IST 2026
[2026-08-31 00:54:33,396.396 INFO    ] ================================================
[2026-08-31 00:54:33,966.966 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:54:33
[2026-08-31 00:54:34,551.551 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:54:34,802.802 INFO    ] Initializing speech engine...
[2026-08-31 00:54:34,810.810 INFO    ] 2026-08-31 00:54:34
[2026-08-31 00:54:35,113.113 INFO    ] 2026-08-31 00:54:35
[2026-08-31 00:54:35,151.151 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:54:35,375.375 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:54:35,434.434 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:54:35,598.598 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:54:35,648.648 INFO    ] time= 31/08/2026 00:54:35
[2026-08-31 00:54:35,702.702 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:54:35,746.746 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:54:35,896.896 INFO    ] No existing commands found in stream
[2026-08-31 00:54:40,910.910 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:54:40,913.913 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-08-31 00:54:45,321.321 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 00:54:45,323.323 INFO    ] Checking for system updates...
[2026-08-31 00:54:45,359.359 INFO    ] 200
[2026-08-31 00:54:45,361.361 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:54:45,414.414 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:54:45,416.416 INFO    ] No update needed
[2026-08-31 00:54:45,419.419 INFO    ] Checking for camera pi updates...
[2026-08-31 00:54:45,456.456 INFO    ] 200
[2026-08-31 00:54:45,459.459 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:54:45,503.503 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:54:45,605.605 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:54:45,607.607 INFO    ] No camera update needed
[2026-08-31 00:54:45,610.610 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:54:45,612.612 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:54:45,618.618 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:54:45,623.623 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:54:47,663.663 INFO    ] ================================================
[2026-08-31 00:54:47,678.678 INFO    ] Launching Daemon at Mon Aug 31 00:54:47 IST 2026
[2026-08-31 00:54:47,690.690 INFO    ] ================================================
[2026-08-31 00:54:48,339.339 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:54:48
[2026-08-31 00:54:49,009.009 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:54:49,316.316 INFO    ] Initializing speech engine...
[2026-08-31 00:54:49,330.330 INFO    ] 2026-08-31 00:54:49
[2026-08-31 00:54:49,637.637 INFO    ] 2026-08-31 00:54:49
[2026-08-31 00:54:49,724.724 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:54:49,941.941 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:54:49,948.948 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:54:50,145.145 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:54:50,162.162 INFO    ] time= 31/08/2026 00:54:50
[2026-08-31 00:54:50,192.192 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:54:50,201.201 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:54:50,310.310 INFO    ] No existing commands found in stream
[2026-08-31 00:54:55,339.339 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:54:55,342.342 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-08-31 00:54:58,347.347 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 00:54:58,350.350 INFO    ] Checking for system updates...
[2026-08-31 00:54:58,387.387 INFO    ] 200
[2026-08-31 00:54:58,390.390 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:54:58,444.444 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:54:58,446.446 INFO    ] No update needed
[2026-08-31 00:54:58,449.449 INFO    ] Checking for camera pi updates...
[2026-08-31 00:54:58,483.483 INFO    ] 200
[2026-08-31 00:54:58,486.486 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:54:58,527.527 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:54:58,627.627 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:54:58,630.630 INFO    ] No camera update needed
[2026-08-31 00:54:58,633.633 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:54:58,636.636 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:54:58,643.643 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:54:58,649.649 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:55:00,688.688 INFO    ] ================================================
[2026-08-31 00:55:00,703.703 INFO    ] Launching Daemon at Mon Aug 31 00:55:00 IST 2026
[2026-08-31 00:55:00,714.714 INFO    ] ================================================
[2026-08-31 00:55:01,286.286 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:55:01
[2026-08-31 00:55:02,139.139 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:55:02,634.634 INFO    ] Initializing speech engine...
[2026-08-31 00:55:02,646.646 INFO    ] 2026-08-31 00:55:02
[2026-08-31 00:55:03,001.001 INFO    ] 2026-08-31 00:55:02
[2026-08-31 00:55:03,077.077 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:55:03,305.305 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:55:03,319.319 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:55:03,559.559 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:55:03,579.579 INFO    ] time= 31/08/2026 00:55:03
[2026-08-31 00:55:03,601.601 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:55:03,609.609 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:55:03,760.760 INFO    ] No existing commands found in stream
[2026-08-31 00:55:08,780.780 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:55:08,782.782 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-08-31 00:55:10,587.587 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 00:55:10,590.590 INFO    ] Checking for system updates...
[2026-08-31 00:55:10,625.625 INFO    ] 200
[2026-08-31 00:55:10,628.628 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:55:10,680.680 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:55:10,683.683 INFO    ] No update needed
[2026-08-31 00:55:10,685.685 INFO    ] Checking for camera pi updates...
[2026-08-31 00:55:10,718.718 INFO    ] 200
[2026-08-31 00:55:10,720.720 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:55:10,760.760 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:55:10,834.834 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:55:10,836.836 INFO    ] No camera update needed
[2026-08-31 00:55:10,839.839 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:55:10,841.841 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:55:10,846.846 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:55:10,851.851 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:55:12,892.892 INFO    ] ================================================
[2026-08-31 00:55:12,907.907 INFO    ] Launching Daemon at Mon Aug 31 00:55:12 IST 2026
[2026-08-31 00:55:12,918.918 INFO    ] ================================================
[2026-08-31 00:55:13,505.505 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:55:13
[2026-08-31 00:55:14,108.108 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:55:14,366.366 INFO    ] Initializing speech engine...
[2026-08-31 00:55:14,373.373 INFO    ] 2026-08-31 00:55:14
[2026-08-31 00:55:14,666.666 INFO    ] 2026-08-31 00:55:14
[2026-08-31 00:55:14,711.711 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:55:14,971.971 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:55:14,977.977 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:55:15,238.238 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:55:15,246.246 INFO    ] time= 31/08/2026 00:55:15
[2026-08-31 00:55:15,264.264 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:55:15,272.272 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:55:15,405.405 INFO    ] No existing commands found in stream
[2026-08-31 00:55:20,435.435 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:55:20,439.439 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-08-31 00:55:24,146.146 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 00:55:24,149.149 INFO    ] Checking for system updates...
[2026-08-31 00:55:24,189.189 INFO    ] 200
[2026-08-31 00:55:24,192.192 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:55:24,251.251 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:55:24,254.254 INFO    ] No update needed
[2026-08-31 00:55:24,257.257 INFO    ] Checking for camera pi updates...
[2026-08-31 00:55:24,292.292 INFO    ] 200
[2026-08-31 00:55:24,295.295 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:55:24,338.338 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:55:24,443.443 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:55:24,446.446 INFO    ] No camera update needed
[2026-08-31 00:55:24,448.448 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:55:24,451.451 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:55:24,457.457 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:55:24,463.463 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:55:26,503.503 INFO    ] ================================================
[2026-08-31 00:55:26,518.518 INFO    ] Launching Daemon at Mon Aug 31 00:55:26 IST 2026
[2026-08-31 00:55:26,529.529 INFO    ] ================================================
[2026-08-31 00:55:27,174.174 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:55:27
[2026-08-31 00:55:27,836.836 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:55:28,143.143 INFO    ] Initializing speech engine...
[2026-08-31 00:55:28,154.154 INFO    ] 2026-08-31 00:55:28
[2026-08-31 00:55:28,468.468 INFO    ] 2026-08-31 00:55:28
[2026-08-31 00:55:28,555.555 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:55:28,774.774 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:55:28,781.781 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:55:28,980.980 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:55:28,999.999 INFO    ] time= 31/08/2026 00:55:28
[2026-08-31 00:55:29,027.027 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:55:29,035.035 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:55:29,152.152 INFO    ] No existing commands found in stream
[2026-08-31 00:55:34,177.177 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:55:34,180.180 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-08-31 00:55:35,401.401 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 00:55:35,404.404 INFO    ] Checking for system updates...
[2026-08-31 00:55:35,441.441 INFO    ] 200
[2026-08-31 00:55:35,443.443 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:55:35,498.498 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:55:35,500.500 INFO    ] No update needed
[2026-08-31 00:55:35,503.503 INFO    ] Checking for camera pi updates...
[2026-08-31 00:55:35,538.538 INFO    ] 200
[2026-08-31 00:55:35,540.540 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:55:35,581.581 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:55:35,635.635 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:55:35,638.638 INFO    ] No camera update needed
[2026-08-31 00:55:35,640.640 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:55:35,642.642 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:55:35,648.648 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:55:35,653.653 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:55:37,692.692 INFO    ] ================================================
[2026-08-31 00:55:37,707.707 INFO    ] Launching Daemon at Mon Aug 31 00:55:37 IST 2026
[2026-08-31 00:55:37,718.718 INFO    ] ================================================
[2026-08-31 00:55:38,283.283 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:55:38
[2026-08-31 00:55:38,872.872 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:55:39,126.126 INFO    ] Initializing speech engine...
[2026-08-31 00:55:39,132.132 INFO    ] 2026-08-31 00:55:39
[2026-08-31 00:55:39,425.425 INFO    ] 2026-08-31 00:55:39
[2026-08-31 00:55:39,462.462 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:55:39,722.722 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:55:39,752.752 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:55:40,045.045 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:55:40,052.052 INFO    ] time= 31/08/2026 00:55:40
[2026-08-31 00:55:40,072.072 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:55:40,104.104 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:55:40,225.225 INFO    ] No existing commands found in stream
[2026-08-31 00:55:45,242.242 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:55:45,245.245 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-08-31 00:55:49,121.121 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 00:55:49,123.123 INFO    ] Checking for system updates...
[2026-08-31 00:55:49,162.162 INFO    ] 200
[2026-08-31 00:55:49,165.165 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:55:49,217.217 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:55:49,219.219 INFO    ] No update needed
[2026-08-31 00:55:49,222.222 INFO    ] Checking for camera pi updates...
[2026-08-31 00:55:49,255.255 INFO    ] 200
[2026-08-31 00:55:49,257.257 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:55:49,297.297 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:55:49,346.346 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:55:49,349.349 INFO    ] No camera update needed
[2026-08-31 00:55:49,351.351 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:55:49,353.353 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:55:49,359.359 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:55:49,364.364 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:55:51,404.404 INFO    ] ================================================
[2026-08-31 00:55:51,419.419 INFO    ] Launching Daemon at Mon Aug 31 00:55:51 IST 2026
[2026-08-31 00:55:51,429.429 INFO    ] ================================================
[2026-08-31 00:55:51,995.995 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:55:51
[2026-08-31 00:55:52,576.576 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:55:52,846.846 INFO    ] Initializing speech engine...
[2026-08-31 00:55:52,856.856 INFO    ] 2026-08-31 00:55:52
[2026-08-31 00:55:53,108.108 INFO    ] 2026-08-31 00:55:53
[2026-08-31 00:55:53,170.170 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:55:53,396.396 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:55:53,400.400 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:55:53,636.636 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:55:53,661.661 INFO    ] time= 31/08/2026 00:55:53
[2026-08-31 00:55:53,676.676 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:55:53,683.683 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:55:53,814.814 INFO    ] No existing commands found in stream
[2026-08-31 00:55:58,833.833 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:55:58,835.835 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-08-31 00:56:01,500.500 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 00:56:01,504.504 INFO    ] Checking for system updates...
[2026-08-31 00:56:01,546.546 INFO    ] 200
[2026-08-31 00:56:01,549.549 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:56:01,623.623 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:56:01,626.626 INFO    ] No update needed
[2026-08-31 00:56:01,629.629 INFO    ] Checking for camera pi updates...
[2026-08-31 00:56:01,670.670 INFO    ] 200
[2026-08-31 00:56:01,673.673 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:56:01,719.719 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:56:01,889.889 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:56:01,892.892 INFO    ] No camera update needed
[2026-08-31 00:56:01,895.895 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:56:01,898.898 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:56:01,905.905 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:56:01,912.912 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:56:03,955.955 INFO    ] ================================================
[2026-08-31 00:56:03,970.970 INFO    ] Launching Daemon at Mon Aug 31 00:56:03 IST 2026
[2026-08-31 00:56:03,981.981 INFO    ] ================================================
[2026-08-31 00:56:04,632.632 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:56:04
[2026-08-31 00:56:05,217.217 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:56:05,473.473 INFO    ] Initializing speech engine...
[2026-08-31 00:56:05,479.479 INFO    ] 2026-08-31 00:56:05
[2026-08-31 00:56:05,771.771 INFO    ] 2026-08-31 00:56:05
[2026-08-31 00:56:05,797.797 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:56:06,032.032 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:56:06,055.055 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:56:06,250.250 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:56:06,257.257 INFO    ] time= 31/08/2026 00:56:06
[2026-08-31 00:56:06,291.291 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:56:06,345.345 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:56:06,523.523 INFO    ] No existing commands found in stream
[2026-08-31 00:56:11,548.548 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:56:11,551.551 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-08-31 00:56:16,061.061 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 00:56:16,064.064 INFO    ] Checking for system updates...
[2026-08-31 00:56:16,101.101 INFO    ] 200
[2026-08-31 00:56:16,104.104 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:56:16,165.165 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:56:16,168.168 INFO    ] No update needed
[2026-08-31 00:56:16,171.171 INFO    ] Checking for camera pi updates...
[2026-08-31 00:56:16,205.205 INFO    ] 200
[2026-08-31 00:56:16,208.208 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:56:16,255.255 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:56:16,359.359 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:56:16,362.362 INFO    ] No camera update needed
[2026-08-31 00:56:16,365.365 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:56:16,367.367 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:56:16,373.373 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:56:16,378.378 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:56:18,418.418 INFO    ] ================================================
[2026-08-31 00:56:18,435.435 INFO    ] Launching Daemon at Mon Aug 31 00:56:18 IST 2026
[2026-08-31 00:56:18,446.446 INFO    ] ================================================
[2026-08-31 00:56:19,100.100 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:56:19
[2026-08-31 00:56:19,774.774 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:56:20,081.081 INFO    ] Initializing speech engine...
[2026-08-31 00:56:20,093.093 INFO    ] 2026-08-31 00:56:20
[2026-08-31 00:56:20,410.410 INFO    ] 2026-08-31 00:56:20
[2026-08-31 00:56:20,498.498 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:56:20,782.782 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:56:20,810.810 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:56:21,067.067 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:56:21,102.102 INFO    ] time= 31/08/2026 00:56:21
[2026-08-31 00:56:21,167.167 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:56:21,211.211 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:56:21,379.379 INFO    ] No existing commands found in stream
[2026-08-31 00:56:26,390.390 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:56:26,393.393 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-08-31 00:56:30,384.384 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 00:56:30,387.387 INFO    ] Checking for system updates...
[2026-08-31 00:56:30,423.423 INFO    ] 200
[2026-08-31 00:56:30,426.426 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:56:30,480.480 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:56:30,483.483 INFO    ] No update needed
[2026-08-31 00:56:30,486.486 INFO    ] Checking for camera pi updates...
[2026-08-31 00:56:30,520.520 INFO    ] 200
[2026-08-31 00:56:30,522.522 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:56:30,563.563 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:56:30,743.743 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:56:30,746.746 INFO    ] No camera update needed
[2026-08-31 00:56:30,748.748 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:56:30,750.750 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:56:30,756.756 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:56:30,761.761 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:56:32,802.802 INFO    ] ================================================
[2026-08-31 00:56:32,818.818 INFO    ] Launching Daemon at Mon Aug 31 00:56:32 IST 2026
[2026-08-31 00:56:32,829.829 INFO    ] ================================================
[2026-08-31 00:56:33,504.504 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:56:33
[2026-08-31 00:56:34,123.123 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:56:34,392.392 INFO    ] Initializing speech engine...
[2026-08-31 00:56:34,401.401 INFO    ] 2026-08-31 00:56:34
[2026-08-31 00:56:34,647.647 INFO    ] 2026-08-31 00:56:34
[2026-08-31 00:56:34,683.683 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:56:34,938.938 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:56:34,943.943 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:56:35,181.181 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:56:35,202.202 INFO    ] time= 31/08/2026 00:56:35
[2026-08-31 00:56:35,221.221 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:56:35,250.250 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:56:35,417.417 INFO    ] No existing commands found in stream
[2026-08-31 00:56:40,442.442 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:56:40,445.445 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-08-31 00:56:42,100.100 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 00:56:42,102.102 INFO    ] Checking for system updates...
[2026-08-31 00:56:42,139.139 INFO    ] 200
[2026-08-31 00:56:42,142.142 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:56:42,195.195 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:56:42,198.198 INFO    ] No update needed
[2026-08-31 00:56:42,201.201 INFO    ] Checking for camera pi updates...
[2026-08-31 00:56:42,236.236 INFO    ] 200
[2026-08-31 00:56:42,239.239 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:56:42,281.281 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:56:42,377.377 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:56:42,380.380 INFO    ] No camera update needed
[2026-08-31 00:56:42,383.383 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:56:42,386.386 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:56:42,392.392 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:56:42,398.398 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:56:44,440.440 INFO    ] ================================================
[2026-08-31 00:56:44,456.456 INFO    ] Launching Daemon at Mon Aug 31 00:56:44 IST 2026
[2026-08-31 00:56:44,468.468 INFO    ] ================================================
[2026-08-31 00:56:45,098.098 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:56:45
[2026-08-31 00:56:45,735.735 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:56:46,041.041 INFO    ] Initializing speech engine...
[2026-08-31 00:56:46,055.055 INFO    ] 2026-08-31 00:56:46
[2026-08-31 00:56:46,368.368 INFO    ] 2026-08-31 00:56:46
[2026-08-31 00:56:46,455.455 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:56:46,732.732 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:56:46,764.764 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:56:47,013.013 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:56:47,058.058 INFO    ] time= 31/08/2026 00:56:47
[2026-08-31 00:56:47,113.113 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:56:47,160.160 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:56:47,313.313 INFO    ] No existing commands found in stream
[2026-08-31 00:56:52,332.332 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:56:52,335.335 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-08-31 00:56:53,627.627 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 00:56:53,630.630 INFO    ] Checking for system updates...
[2026-08-31 00:56:53,667.667 INFO    ] 200
[2026-08-31 00:56:53,670.670 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:56:53,723.723 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:56:53,726.726 INFO    ] No update needed
[2026-08-31 00:56:53,729.729 INFO    ] Checking for camera pi updates...
[2026-08-31 00:56:53,765.765 INFO    ] 200
[2026-08-31 00:56:53,768.768 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:56:53,809.809 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:56:53,911.911 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:56:53,914.914 INFO    ] No camera update needed
[2026-08-31 00:56:53,916.916 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:56:53,919.919 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:56:53,926.926 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:56:53,932.932 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:56:55,974.974 INFO    ] ================================================
[2026-08-31 00:56:55,989.989 INFO    ] Launching Daemon at Mon Aug 31 00:56:55 IST 2026
[2026-08-31 00:56:56,000.000 INFO    ] ================================================
[2026-08-31 00:56:56,669.669 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:56:56
[2026-08-31 00:56:57,348.348 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:56:57,652.652 INFO    ] Initializing speech engine...
[2026-08-31 00:56:57,660.660 INFO    ] 2026-08-31 00:56:57
[2026-08-31 00:56:57,977.977 INFO    ] 2026-08-31 00:56:57
[2026-08-31 00:56:58,064.064 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:56:58,331.331 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:56:58,347.347 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:56:58,525.525 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:56:58,535.535 INFO    ] time= 31/08/2026 00:56:58
[2026-08-31 00:56:58,581.581 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:56:58,630.630 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:56:58,778.778 INFO    ] No existing commands found in stream
[2026-08-31 00:57:03,809.809 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:57:03,812.812 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-08-31 00:57:06,190.190 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 00:57:06,193.193 INFO    ] Checking for system updates...
[2026-08-31 00:57:06,230.230 INFO    ] 200
[2026-08-31 00:57:06,233.233 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:57:06,285.285 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:57:06,288.288 INFO    ] No update needed
[2026-08-31 00:57:06,291.291 INFO    ] Checking for camera pi updates...
[2026-08-31 00:57:06,325.325 INFO    ] 200
[2026-08-31 00:57:06,328.328 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:57:06,374.374 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:57:06,463.463 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:57:06,466.466 INFO    ] No camera update needed
[2026-08-31 00:57:06,468.468 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:57:06,471.471 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:57:06,477.477 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:57:06,483.483 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:57:08,524.524 INFO    ] ================================================
[2026-08-31 00:57:08,539.539 INFO    ] Launching Daemon at Mon Aug 31 00:57:08 IST 2026
[2026-08-31 00:57:08,550.550 INFO    ] ================================================
[2026-08-31 00:57:09,126.126 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:57:09
[2026-08-31 00:57:09,709.709 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:57:09,981.981 INFO    ] Initializing speech engine...
[2026-08-31 00:57:09,990.990 INFO    ] 2026-08-31 00:57:09
[2026-08-31 00:57:10,249.249 INFO    ] 2026-08-31 00:57:10
[2026-08-31 00:57:10,304.304 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:57:10,580.580 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:57:10,583.583 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:57:10,819.819 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:57:10,826.826 INFO    ] time= 31/08/2026 00:57:10
[2026-08-31 00:57:10,846.846 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:57:10,854.854 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:57:10,974.974 INFO    ] No existing commands found in stream
[2026-08-31 00:57:15,984.984 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:57:15,987.987 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-08-31 00:57:18,229.229 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 00:57:18,232.232 INFO    ] Checking for system updates...
[2026-08-31 00:57:18,274.274 INFO    ] 200
[2026-08-31 00:57:18,277.277 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:57:18,335.335 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:57:18,338.338 INFO    ] No update needed
[2026-08-31 00:57:18,340.340 INFO    ] Checking for camera pi updates...
[2026-08-31 00:57:18,376.376 INFO    ] 200
[2026-08-31 00:57:18,379.379 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:57:18,423.423 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:57:18,511.511 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:57:18,514.514 INFO    ] No camera update needed
[2026-08-31 00:57:18,517.517 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:57:18,520.520 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:57:18,526.526 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:57:18,532.532 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:57:20,574.574 INFO    ] ================================================
[2026-08-31 00:57:20,593.593 INFO    ] Launching Daemon at Mon Aug 31 00:57:20 IST 2026
[2026-08-31 00:57:20,604.604 INFO    ] ================================================
[2026-08-31 00:57:21,167.167 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:57:21
[2026-08-31 00:57:21,749.749 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:57:22,011.011 INFO    ] Initializing speech engine...
[2026-08-31 00:57:22,027.027 INFO    ] 2026-08-31 00:57:22
[2026-08-31 00:57:22,288.288 INFO    ] 2026-08-31 00:57:22
[2026-08-31 00:57:22,323.323 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:57:22,583.583 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:57:22,589.589 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:57:22,831.831 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:57:22,851.851 INFO    ] time= 31/08/2026 00:57:22
[2026-08-31 00:57:22,857.857 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:57:22,875.875 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:57:22,987.987 INFO    ] No existing commands found in stream
[2026-08-31 00:57:28,019.019 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:57:28,022.022 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-08-31 00:57:32,468.468 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 00:57:32,470.470 INFO    ] Checking for system updates...
[2026-08-31 00:57:32,510.510 INFO    ] 200
[2026-08-31 00:57:32,512.512 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:57:32,565.565 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:57:32,568.568 INFO    ] No update needed
[2026-08-31 00:57:32,570.570 INFO    ] Checking for camera pi updates...
[2026-08-31 00:57:32,603.603 INFO    ] 200
[2026-08-31 00:57:32,606.606 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:57:32,652.652 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:57:32,722.722 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:57:32,725.725 INFO    ] No camera update needed
[2026-08-31 00:57:32,727.727 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:57:32,730.730 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:57:32,735.735 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:57:32,740.740 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:57:34,782.782 INFO    ] ================================================
[2026-08-31 00:57:34,797.797 INFO    ] Launching Daemon at Mon Aug 31 00:57:34 IST 2026
[2026-08-31 00:57:34,808.808 INFO    ] ================================================
[2026-08-31 00:57:35,379.379 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:57:35
[2026-08-31 00:57:35,979.979 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:57:36,251.251 INFO    ] Initializing speech engine...
[2026-08-31 00:57:36,262.262 INFO    ] 2026-08-31 00:57:36
[2026-08-31 00:57:36,523.523 INFO    ] 2026-08-31 00:57:36
[2026-08-31 00:57:36,577.577 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:57:36,863.863 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:57:36,870.870 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:57:37,063.063 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:57:37,082.082 INFO    ] time= 31/08/2026 00:57:37
[2026-08-31 00:57:37,110.110 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:57:37,117.117 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:57:37,234.234 INFO    ] No existing commands found in stream
[2026-08-31 00:57:42,264.264 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:57:42,268.268 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-08-31 00:57:45,985.985 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 00:57:45,988.988 INFO    ] Checking for system updates...
[2026-08-31 00:57:46,028.028 INFO    ] 200
[2026-08-31 00:57:46,030.030 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:57:46,082.082 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:57:46,085.085 INFO    ] No update needed
[2026-08-31 00:57:46,087.087 INFO    ] Checking for camera pi updates...
[2026-08-31 00:57:46,125.125 INFO    ] 200
[2026-08-31 00:57:46,127.127 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:57:46,168.168 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:57:46,269.269 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:57:46,271.271 INFO    ] No camera update needed
[2026-08-31 00:57:46,274.274 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:57:46,276.276 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:57:46,282.282 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:57:46,287.287 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:57:48,329.329 INFO    ] ================================================
[2026-08-31 00:57:48,344.344 INFO    ] Launching Daemon at Mon Aug 31 00:57:48 IST 2026
[2026-08-31 00:57:48,355.355 INFO    ] ================================================
[2026-08-31 00:57:48,936.936 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:57:48
[2026-08-31 00:57:49,534.534 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:57:49,811.811 INFO    ] Initializing speech engine...
[2026-08-31 00:57:49,818.818 INFO    ] 2026-08-31 00:57:49
[2026-08-31 00:57:50,080.080 INFO    ] 2026-08-31 00:57:50
[2026-08-31 00:57:50,134.134 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:57:50,382.382 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:57:50,389.389 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:57:50,617.617 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:57:50,623.623 INFO    ] time= 31/08/2026 00:57:50
[2026-08-31 00:57:50,644.644 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:57:50,670.670 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:57:50,792.792 INFO    ] No existing commands found in stream
[2026-08-31 00:57:55,822.822 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:57:55,825.825 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-08-31 00:57:57,881.881 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 00:57:57,883.883 INFO    ] Checking for system updates...
[2026-08-31 00:57:57,919.919 INFO    ] 200
[2026-08-31 00:57:57,921.921 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:57:57,973.973 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:57:57,975.975 INFO    ] No update needed
[2026-08-31 00:57:57,978.978 INFO    ] Checking for camera pi updates...
[2026-08-31 00:57:58,012.012 INFO    ] 200
[2026-08-31 00:57:58,014.014 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:57:58,055.055 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:57:58,135.135 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:57:58,138.138 INFO    ] No camera update needed
[2026-08-31 00:57:58,141.141 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:57:58,143.143 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:57:58,148.148 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:57:58,153.153 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:58:00,196.196 INFO    ] ================================================
[2026-08-31 00:58:00,212.212 INFO    ] Launching Daemon at Mon Aug 31 00:58:00 IST 2026
[2026-08-31 00:58:00,223.223 INFO    ] ================================================
[2026-08-31 00:58:00,805.805 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:58:00
[2026-08-31 00:58:01,556.556 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:58:01,957.957 INFO    ] Initializing speech engine...
[2026-08-31 00:58:01,965.965 INFO    ] 2026-08-31 00:58:01
[2026-08-31 00:58:02,321.321 INFO    ] 2026-08-31 00:58:02
[2026-08-31 00:58:02,420.420 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:58:02,691.691 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:58:02,698.698 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:58:02,914.914 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:58:02,933.933 INFO    ] time= 31/08/2026 00:58:02
[2026-08-31 00:58:02,965.965 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:58:02,978.978 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:58:03,108.108 INFO    ] No existing commands found in stream
[2026-08-31 00:58:08,139.139 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:58:08,142.142 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-08-31 00:58:09,882.882 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 00:58:09,885.885 INFO    ] Checking for system updates...
[2026-08-31 00:58:09,928.928 INFO    ] 200
[2026-08-31 00:58:09,931.931 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:58:09,983.983 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:58:09,986.986 INFO    ] No update needed
[2026-08-31 00:58:09,989.989 INFO    ] Checking for camera pi updates...
[2026-08-31 00:58:10,028.028 INFO    ] 200
[2026-08-31 00:58:10,031.031 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:58:10,073.073 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:58:10,157.157 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:58:10,160.160 INFO    ] No camera update needed
[2026-08-31 00:58:10,163.163 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:58:10,165.165 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:58:10,172.172 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:58:10,178.178 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:58:12,219.219 INFO    ] ================================================
[2026-08-31 00:58:12,235.235 INFO    ] Launching Daemon at Mon Aug 31 00:58:12 IST 2026
[2026-08-31 00:58:12,245.245 INFO    ] ================================================
[2026-08-31 00:58:12,908.908 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:58:12
[2026-08-31 00:58:13,590.590 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:58:13,900.900 INFO    ] Initializing speech engine...
[2026-08-31 00:58:13,915.915 INFO    ] 2026-08-31 00:58:13
[2026-08-31 00:58:14,233.233 INFO    ] 2026-08-31 00:58:14
[2026-08-31 00:58:14,321.321 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:58:14,505.505 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:58:14,510.510 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:58:14,740.740 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:58:14,753.753 INFO    ] time= 31/08/2026 00:58:14
[2026-08-31 00:58:14,771.771 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:58:14,778.778 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:58:14,897.897 INFO    ] No existing commands found in stream
[2026-08-31 00:58:19,923.923 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:58:19,926.926 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-08-31 00:58:23,270.270 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 00:58:23,273.273 INFO    ] Checking for system updates...
[2026-08-31 00:58:23,310.310 INFO    ] 200
[2026-08-31 00:58:23,312.312 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:58:23,374.374 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:58:23,381.381 INFO    ] No update needed
[2026-08-31 00:58:23,385.385 INFO    ] Checking for camera pi updates...
[2026-08-31 00:58:23,419.419 INFO    ] 200
[2026-08-31 00:58:23,422.422 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:58:23,465.465 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:58:23,551.551 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:58:23,554.554 INFO    ] No camera update needed
[2026-08-31 00:58:23,556.556 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:58:23,559.559 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:58:23,566.566 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:58:23,571.571 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:58:25,612.612 INFO    ] ================================================
[2026-08-31 00:58:25,627.627 INFO    ] Launching Daemon at Mon Aug 31 00:58:25 IST 2026
[2026-08-31 00:58:25,638.638 INFO    ] ================================================
[2026-08-31 00:58:26,252.252 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:58:26
[2026-08-31 00:58:26,851.851 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:58:27,111.111 INFO    ] Initializing speech engine...
[2026-08-31 00:58:27,118.118 INFO    ] 2026-08-31 00:58:27
[2026-08-31 00:58:27,418.418 INFO    ] 2026-08-31 00:58:27
[2026-08-31 00:58:27,453.453 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:58:27,684.684 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:58:27,723.723 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:58:27,978.978 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:58:28,033.033 INFO    ] time= 31/08/2026 00:58:27
[2026-08-31 00:58:28,069.069 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:58:28,075.075 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:58:28,207.207 INFO    ] No existing commands found in stream
[2026-08-31 00:58:33,230.230 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:58:33,233.233 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-08-31 00:58:37,400.400 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 00:58:37,402.402 INFO    ] Checking for system updates...
[2026-08-31 00:58:37,438.438 INFO    ] 200
[2026-08-31 00:58:37,441.441 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:58:37,494.494 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:58:37,497.497 INFO    ] No update needed
[2026-08-31 00:58:37,499.499 INFO    ] Checking for camera pi updates...
[2026-08-31 00:58:37,538.538 INFO    ] 200
[2026-08-31 00:58:37,540.540 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:58:37,581.581 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:58:37,668.668 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:58:37,670.670 INFO    ] No camera update needed
[2026-08-31 00:58:37,673.673 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:58:37,675.675 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:58:37,681.681 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:58:37,686.686 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:58:39,728.728 INFO    ] ================================================
[2026-08-31 00:58:39,743.743 INFO    ] Launching Daemon at Mon Aug 31 00:58:39 IST 2026
[2026-08-31 00:58:39,754.754 INFO    ] ================================================
[2026-08-31 00:58:40,415.415 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:58:40
[2026-08-31 00:58:41,074.074 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:58:41,329.329 INFO    ] Initializing speech engine...
[2026-08-31 00:58:41,351.351 INFO    ] 2026-08-31 00:58:41
[2026-08-31 00:58:41,603.603 INFO    ] 2026-08-31 00:58:41
[2026-08-31 00:58:41,637.637 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:58:41,893.893 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:58:41,898.898 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:58:42,139.139 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:58:42,158.158 INFO    ] time= 31/08/2026 00:58:42
[2026-08-31 00:58:42,172.172 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:58:42,182.182 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:58:42,314.314 INFO    ] No existing commands found in stream
[2026-08-31 00:58:47,339.339 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:58:47,342.342 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-08-31 00:58:48,759.759 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 00:58:48,762.762 INFO    ] Checking for system updates...
[2026-08-31 00:58:48,802.802 INFO    ] 200
[2026-08-31 00:58:48,805.805 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:58:48,857.857 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:58:48,859.859 INFO    ] No update needed
[2026-08-31 00:58:48,861.861 INFO    ] Checking for camera pi updates...
[2026-08-31 00:58:48,894.894 INFO    ] 200
[2026-08-31 00:58:48,897.897 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:58:48,938.938 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:58:49,003.003 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:58:49,005.005 INFO    ] No camera update needed
[2026-08-31 00:58:49,007.007 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:58:49,010.010 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:58:49,015.015 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:58:49,020.020 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:58:51,062.062 INFO    ] ================================================
[2026-08-31 00:58:51,078.078 INFO    ] Launching Daemon at Mon Aug 31 00:58:51 IST 2026
[2026-08-31 00:58:51,089.089 INFO    ] ================================================
[2026-08-31 00:58:51,655.655 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:58:51
[2026-08-31 00:58:52,236.236 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:58:52,504.504 INFO    ] Initializing speech engine...
[2026-08-31 00:58:52,513.513 INFO    ] 2026-08-31 00:58:52
[2026-08-31 00:58:52,759.759 INFO    ] 2026-08-31 00:58:52
[2026-08-31 00:58:52,794.794 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:58:53,045.045 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:58:53,054.054 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:58:53,251.251 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:58:53,306.306 INFO    ] time= 31/08/2026 00:58:53
[2026-08-31 00:58:53,317.317 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:58:53,323.323 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:58:53,531.531 INFO    ] No existing commands found in stream
[2026-08-31 00:58:58,562.562 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:58:58,564.564 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-08-31 00:59:02,641.641 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 00:59:02,644.644 INFO    ] Checking for system updates...
[2026-08-31 00:59:02,691.691 INFO    ] 200
[2026-08-31 00:59:02,694.694 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:59:02,757.757 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:59:02,760.760 INFO    ] No update needed
[2026-08-31 00:59:02,762.762 INFO    ] Checking for camera pi updates...
[2026-08-31 00:59:02,796.796 INFO    ] 200
[2026-08-31 00:59:02,799.799 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:59:02,856.856 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:59:02,907.907 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 00:59:02,912.912 INFO    ] No camera update needed
[2026-08-31 00:59:02,915.915 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:59:02,919.919 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:59:02,926.926 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:59:02,933.933 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:59:04,976.976 INFO    ] ================================================
[2026-08-31 00:59:04,991.991 INFO    ] Launching Daemon at Mon Aug 31 00:59:04 IST 2026
[2026-08-31 00:59:05,002.002 INFO    ] ================================================
[2026-08-31 00:59:05,587.587 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:59:05
[2026-08-31 00:59:06,212.212 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:59:06,485.485 INFO    ] Initializing speech engine...
[2026-08-31 00:59:06,490.490 INFO    ] 2026-08-31 00:59:06
[2026-08-31 00:59:06,735.735 INFO    ] 2026-08-31 00:59:06
[2026-08-31 00:59:06,770.770 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:59:07,025.025 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:59:07,031.031 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:59:07,252.252 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:59:07,286.286 INFO    ] time= 31/08/2026 00:59:07
[2026-08-31 00:59:07,291.291 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:59:07,309.309 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:59:07,441.441 INFO    ] No existing commands found in stream
[2026-08-31 00:59:12,463.463 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:59:12,466.466 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-08-31 00:59:14,720.720 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 00:59:14,722.722 INFO    ] Checking for system updates...
[2026-08-31 00:59:14,757.757 INFO    ] 200
[2026-08-31 00:59:14,760.760 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:59:14,820.820 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:59:14,822.822 INFO    ] No update needed
[2026-08-31 00:59:14,824.824 INFO    ] Checking for camera pi updates...
[2026-08-31 00:59:14,864.864 INFO    ] 200
[2026-08-31 00:59:14,867.867 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:59:14,913.913 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:59:14,996.996 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:59:14,999.999 INFO    ] No camera update needed
[2026-08-31 00:59:15,001.001 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:59:15,003.003 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:59:15,009.009 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:59:15,014.014 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:59:17,057.057 INFO    ] ================================================
[2026-08-31 00:59:17,072.072 INFO    ] Launching Daemon at Mon Aug 31 00:59:17 IST 2026
[2026-08-31 00:59:17,083.083 INFO    ] ================================================
[2026-08-31 00:59:17,652.652 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:59:17
[2026-08-31 00:59:18,234.234 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:59:18,486.486 INFO    ] Initializing speech engine...
[2026-08-31 00:59:18,491.491 INFO    ] 2026-08-31 00:59:18
[2026-08-31 00:59:18,795.795 INFO    ] 2026-08-31 00:59:18
[2026-08-31 00:59:18,831.831 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:59:19,062.062 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:59:19,070.070 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:59:19,292.292 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:59:19,299.299 INFO    ] time= 31/08/2026 00:59:19
[2026-08-31 00:59:19,323.323 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:59:19,377.377 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:59:19,501.501 INFO    ] No existing commands found in stream
[2026-08-31 00:59:24,513.513 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:59:24,516.516 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-08-31 00:59:28,059.059 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 00:59:28,061.061 INFO    ] Checking for system updates...
[2026-08-31 00:59:28,097.097 INFO    ] 200
[2026-08-31 00:59:28,100.100 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:59:28,151.151 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:59:28,154.154 INFO    ] No update needed
[2026-08-31 00:59:28,156.156 INFO    ] Checking for camera pi updates...
[2026-08-31 00:59:28,190.190 INFO    ] 200
[2026-08-31 00:59:28,193.193 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:59:28,233.233 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:59:28,321.321 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:59:28,323.323 INFO    ] No camera update needed
[2026-08-31 00:59:28,325.325 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:59:28,328.328 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:59:28,333.333 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:59:28,338.338 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:59:30,377.377 INFO    ] ================================================
[2026-08-31 00:59:30,392.392 INFO    ] Launching Daemon at Mon Aug 31 00:59:30 IST 2026
[2026-08-31 00:59:30,403.403 INFO    ] ================================================
[2026-08-31 00:59:31,059.059 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:59:31
[2026-08-31 00:59:31,779.779 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:59:32,120.120 INFO    ] Initializing speech engine...
[2026-08-31 00:59:32,129.129 INFO    ] 2026-08-31 00:59:32
[2026-08-31 00:59:32,434.434 INFO    ] 2026-08-31 00:59:32
[2026-08-31 00:59:32,478.478 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:59:32,824.824 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:59:32,856.856 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:59:33,101.101 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:59:33,140.140 INFO    ] time= 31/08/2026 00:59:33
[2026-08-31 00:59:33,205.205 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:59:33,247.247 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:59:33,405.405 INFO    ] No existing commands found in stream
[2026-08-31 00:59:38,424.424 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:59:38,427.427 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-08-31 00:59:42,162.162 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 00:59:42,165.165 INFO    ] Checking for system updates...
[2026-08-31 00:59:42,201.201 INFO    ] 200
[2026-08-31 00:59:42,204.204 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:59:42,257.257 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:59:42,260.260 INFO    ] No update needed
[2026-08-31 00:59:42,262.262 INFO    ] Checking for camera pi updates...
[2026-08-31 00:59:42,298.298 INFO    ] 200
[2026-08-31 00:59:42,301.301 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:59:42,342.342 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:59:42,425.425 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:59:42,428.428 INFO    ] No camera update needed
[2026-08-31 00:59:42,430.430 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:59:42,433.433 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:59:42,438.438 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:59:42,443.443 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:59:44,483.483 INFO    ] ================================================
[2026-08-31 00:59:44,499.499 INFO    ] Launching Daemon at Mon Aug 31 00:59:44 IST 2026
[2026-08-31 00:59:44,509.509 INFO    ] ================================================
[2026-08-31 00:59:45,075.075 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:59:45
[2026-08-31 00:59:45,657.657 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:59:45,924.924 INFO    ] Initializing speech engine...
[2026-08-31 00:59:45,933.933 INFO    ] 2026-08-31 00:59:45
[2026-08-31 00:59:46,178.178 INFO    ] 2026-08-31 00:59:46
[2026-08-31 00:59:46,213.213 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:59:46,469.469 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:59:46,475.475 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:59:46,725.725 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:59:46,733.733 INFO    ] time= 31/08/2026 00:59:46
[2026-08-31 00:59:46,750.750 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:59:46,773.773 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:59:46,887.887 INFO    ] No existing commands found in stream
[2026-08-31 00:59:51,916.916 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 00:59:51,919.919 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-08-31 00:59:53,960.960 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 00:59:53,962.962 INFO    ] Checking for system updates...
[2026-08-31 00:59:53,998.998 INFO    ] 200
[2026-08-31 00:59:54,001.001 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:59:54,054.054 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:59:54,056.056 INFO    ] No update needed
[2026-08-31 00:59:54,058.058 INFO    ] Checking for camera pi updates...
[2026-08-31 00:59:54,095.095 INFO    ] 200
[2026-08-31 00:59:54,098.098 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 00:59:54,142.142 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 00:59:54,240.240 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 00:59:54,242.242 INFO    ] No camera update needed
[2026-08-31 00:59:54,245.245 INFO    ] Script finished. Safe exiting...
[2026-08-31 00:59:54,247.247 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 00:59:54,253.253 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 00:59:54,258.258 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 00:59:56,298.298 INFO    ] ================================================
[2026-08-31 00:59:56,313.313 INFO    ] Launching Daemon at Mon Aug 31 00:59:56 IST 2026
[2026-08-31 00:59:56,324.324 INFO    ] ================================================
[2026-08-31 00:59:56,892.892 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 00:59:56
[2026-08-31 00:59:57,475.475 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 00:59:57,742.742 INFO    ] Initializing speech engine...
[2026-08-31 00:59:57,751.751 INFO    ] 2026-08-31 00:59:57
[2026-08-31 00:59:58,003.003 INFO    ] 2026-08-31 00:59:57
[2026-08-31 00:59:58,061.061 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 00:59:58,344.344 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 00:59:58,350.350 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 00:59:58,543.543 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 00:59:58,549.549 INFO    ] time= 31/08/2026 00:59:58
[2026-08-31 00:59:58,567.567 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 00:59:58,584.584 INFO    ] Checking for existing commands in stream...
[2026-08-31 00:59:58,716.716 INFO    ] No existing commands found in stream
[2026-08-31 01:00:03,747.747 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:00:03,751.751 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-08-31 01:00:10,559.559 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 01:00:10,562.562 INFO    ] Checking for system updates...
[2026-08-31 01:00:10,598.598 INFO    ] 200
[2026-08-31 01:00:10,600.600 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:00:10,659.659 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:00:10,662.662 INFO    ] No update needed
[2026-08-31 01:00:10,665.665 INFO    ] Checking for camera pi updates...
[2026-08-31 01:00:10,707.707 INFO    ] 200
[2026-08-31 01:00:10,710.710 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:00:10,759.759 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:00:10,819.819 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:00:10,822.822 INFO    ] No camera update needed
[2026-08-31 01:00:10,825.825 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:00:10,827.827 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:00:10,833.833 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:00:10,839.839 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:00:12,881.881 INFO    ] ================================================
[2026-08-31 01:00:12,896.896 INFO    ] Launching Daemon at Mon Aug 31 01:00:12 IST 2026
[2026-08-31 01:00:12,910.910 INFO    ] ================================================
[2026-08-31 01:00:13,502.502 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:00:13
[2026-08-31 01:00:14,106.106 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:00:14,391.391 INFO    ] Initializing speech engine...
[2026-08-31 01:00:14,397.397 INFO    ] 2026-08-31 01:00:14
[2026-08-31 01:00:14,669.669 INFO    ] 2026-08-31 01:00:14
[2026-08-31 01:00:14,703.703 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:00:14,949.949 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:00:14,958.958 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:00:15,130.130 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:00:15,145.145 INFO    ] time= 31/08/2026 01:00:15
[2026-08-31 01:00:15,200.200 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:00:15,240.240 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:00:15,369.369 INFO    ] No existing commands found in stream
[2026-08-31 01:00:20,396.396 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:00:20,400.400 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-08-31 01:00:22,322.322 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 01:00:22,325.325 INFO    ] Checking for system updates...
[2026-08-31 01:00:22,365.365 INFO    ] 200
[2026-08-31 01:00:22,368.368 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:00:22,428.428 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:00:22,431.431 INFO    ] No update needed
[2026-08-31 01:00:22,433.433 INFO    ] Checking for camera pi updates...
[2026-08-31 01:00:22,471.471 INFO    ] 200
[2026-08-31 01:00:22,474.474 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:00:22,515.515 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:00:22,594.594 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:00:22,596.596 INFO    ] No camera update needed
[2026-08-31 01:00:22,599.599 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:00:22,602.602 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:00:22,608.608 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:00:22,614.614 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:00:24,655.655 INFO    ] ================================================
[2026-08-31 01:00:24,671.671 INFO    ] Launching Daemon at Mon Aug 31 01:00:24 IST 2026
[2026-08-31 01:00:24,681.681 INFO    ] ================================================
[2026-08-31 01:00:25,319.319 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:00:25
[2026-08-31 01:00:25,979.979 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:00:26,282.282 INFO    ] Initializing speech engine...
[2026-08-31 01:00:26,294.294 INFO    ] 2026-08-31 01:00:26
[2026-08-31 01:00:26,602.602 INFO    ] 2026-08-31 01:00:26
[2026-08-31 01:00:26,687.687 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:00:26,900.900 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:00:26,907.907 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:00:27,101.101 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:00:27,120.120 INFO    ] time= 31/08/2026 01:00:27
[2026-08-31 01:00:27,149.149 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:00:27,156.156 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:00:27,274.274 INFO    ] No existing commands found in stream
[2026-08-31 01:00:32,300.300 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:00:32,304.304 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-08-31 01:00:33,761.761 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 01:00:33,764.764 INFO    ] Checking for system updates...
[2026-08-31 01:00:33,805.805 INFO    ] 200
[2026-08-31 01:00:33,807.807 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:00:33,864.864 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:00:33,867.867 INFO    ] No update needed
[2026-08-31 01:00:33,870.870 INFO    ] Checking for camera pi updates...
[2026-08-31 01:00:33,905.905 INFO    ] 200
[2026-08-31 01:00:33,908.908 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:00:33,953.953 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:00:34,132.132 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:00:34,135.135 INFO    ] No camera update needed
[2026-08-31 01:00:34,138.138 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:00:34,141.141 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:00:34,147.147 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:00:34,152.152 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:00:36,193.193 INFO    ] ================================================
[2026-08-31 01:00:36,208.208 INFO    ] Launching Daemon at Mon Aug 31 01:00:36 IST 2026
[2026-08-31 01:00:36,219.219 INFO    ] ================================================
[2026-08-31 01:00:36,802.802 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:00:36
[2026-08-31 01:00:37,418.418 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:00:37,696.696 INFO    ] Initializing speech engine...
[2026-08-31 01:00:37,703.703 INFO    ] 2026-08-31 01:00:37
[2026-08-31 01:00:37,963.963 INFO    ] 2026-08-31 01:00:37
[2026-08-31 01:00:38,017.017 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:00:38,283.283 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:00:38,305.305 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:00:38,500.500 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:00:38,507.507 INFO    ] time= 31/08/2026 01:00:38
[2026-08-31 01:00:38,525.525 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:00:38,554.554 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:00:38,674.674 INFO    ] No existing commands found in stream
[2026-08-31 01:00:43,704.704 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:00:43,707.707 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-08-31 01:00:47,946.946 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 01:00:47,948.948 INFO    ] Checking for system updates...
[2026-08-31 01:00:47,987.987 INFO    ] 200
[2026-08-31 01:00:47,989.989 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:00:48,041.041 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:00:48,044.044 INFO    ] No update needed
[2026-08-31 01:00:48,046.046 INFO    ] Checking for camera pi updates...
[2026-08-31 01:00:48,080.080 INFO    ] 200
[2026-08-31 01:00:48,082.082 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:00:48,123.123 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:00:48,204.204 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:00:48,207.207 INFO    ] No camera update needed
[2026-08-31 01:00:48,209.209 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:00:48,212.212 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:00:48,217.217 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:00:48,222.222 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:00:50,263.263 INFO    ] ================================================
[2026-08-31 01:00:50,278.278 INFO    ] Launching Daemon at Mon Aug 31 01:00:50 IST 2026
[2026-08-31 01:00:50,289.289 INFO    ] ================================================
[2026-08-31 01:00:50,855.855 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:00:50
[2026-08-31 01:00:51,436.436 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:00:51,679.679 INFO    ] Initializing speech engine...
[2026-08-31 01:00:51,686.686 INFO    ] 2026-08-31 01:00:51
[2026-08-31 01:00:51,960.960 INFO    ] 2026-08-31 01:00:51
[2026-08-31 01:00:51,996.996 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:00:52,256.256 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:00:52,265.265 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:00:52,447.447 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:00:52,501.501 INFO    ] time= 31/08/2026 01:00:52
[2026-08-31 01:00:52,533.533 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:00:52,548.548 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:00:52,685.685 INFO    ] No existing commands found in stream
[2026-08-31 01:00:57,704.704 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:00:57,706.706 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-08-31 01:01:01,080.080 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 01:01:01,082.082 INFO    ] Checking for system updates...
[2026-08-31 01:01:01,117.117 INFO    ] 200
[2026-08-31 01:01:01,120.120 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:01:01,174.174 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:01:01,176.176 INFO    ] No update needed
[2026-08-31 01:01:01,179.179 INFO    ] Checking for camera pi updates...
[2026-08-31 01:01:01,212.212 INFO    ] 200
[2026-08-31 01:01:01,214.214 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:01:01,261.261 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:01:01,355.355 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:01:01,358.358 INFO    ] No camera update needed
[2026-08-31 01:01:01,361.361 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:01:01,363.363 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:01:01,369.369 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:01:01,375.375 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:01:03,420.420 INFO    ] ================================================
[2026-08-31 01:01:03,436.436 INFO    ] Launching Daemon at Mon Aug 31 01:01:03 IST 2026
[2026-08-31 01:01:03,447.447 INFO    ] ================================================
[2026-08-31 01:01:04,037.037 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:01:04
[2026-08-31 01:01:04,621.621 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:01:04,869.869 INFO    ] Initializing speech engine...
[2026-08-31 01:01:04,888.888 INFO    ] 2026-08-31 01:01:04
[2026-08-31 01:01:05,143.143 INFO    ] 2026-08-31 01:01:05
[2026-08-31 01:01:05,179.179 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:01:05,431.431 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:01:05,440.440 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:01:05,657.657 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:01:05,700.700 INFO    ] time= 31/08/2026 01:01:05
[2026-08-31 01:01:05,705.705 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:01:05,722.722 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:01:05,851.851 INFO    ] No existing commands found in stream
[2026-08-31 01:01:10,865.865 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:01:10,868.868 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-08-31 01:01:12,483.483 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 01:01:12,486.486 INFO    ] Checking for system updates...
[2026-08-31 01:01:12,523.523 INFO    ] 200
[2026-08-31 01:01:12,526.526 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:01:12,580.580 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:01:12,582.582 INFO    ] No update needed
[2026-08-31 01:01:12,585.585 INFO    ] Checking for camera pi updates...
[2026-08-31 01:01:12,624.624 INFO    ] 200
[2026-08-31 01:01:12,626.626 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:01:12,667.667 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:01:12,758.758 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:01:12,761.761 INFO    ] No camera update needed
[2026-08-31 01:01:12,763.763 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:01:12,765.765 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:01:12,771.771 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:01:12,776.776 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:01:14,818.818 INFO    ] ================================================
[2026-08-31 01:01:14,833.833 INFO    ] Launching Daemon at Mon Aug 31 01:01:14 IST 2026
[2026-08-31 01:01:14,845.845 INFO    ] ================================================
[2026-08-31 01:01:15,410.410 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:01:15
[2026-08-31 01:01:15,993.993 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:01:16,259.259 INFO    ] Initializing speech engine...
[2026-08-31 01:01:16,268.268 INFO    ] 2026-08-31 01:01:16
[2026-08-31 01:01:16,513.513 INFO    ] 2026-08-31 01:01:16
[2026-08-31 01:01:16,549.549 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:01:16,804.804 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:01:16,810.810 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:01:17,028.028 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:01:17,066.066 INFO    ] time= 31/08/2026 01:01:17
[2026-08-31 01:01:17,073.073 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:01:17,093.093 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:01:17,217.217 INFO    ] No existing commands found in stream
[2026-08-31 01:01:22,231.231 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:01:22,234.234 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-08-31 01:01:26,561.561 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 01:01:26,564.564 INFO    ] Checking for system updates...
[2026-08-31 01:01:26,600.600 INFO    ] 200
[2026-08-31 01:01:26,603.603 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:01:26,659.659 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:01:26,661.661 INFO    ] No update needed
[2026-08-31 01:01:26,664.664 INFO    ] Checking for camera pi updates...
[2026-08-31 01:01:26,697.697 INFO    ] 200
[2026-08-31 01:01:26,700.700 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:01:26,740.740 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:01:26,825.825 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:01:26,827.827 INFO    ] No camera update needed
[2026-08-31 01:01:26,830.830 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:01:26,832.832 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:01:26,837.837 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:01:26,843.843 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:01:28,885.885 INFO    ] ================================================
[2026-08-31 01:01:28,900.900 INFO    ] Launching Daemon at Mon Aug 31 01:01:28 IST 2026
[2026-08-31 01:01:28,911.911 INFO    ] ================================================
[2026-08-31 01:01:29,475.475 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:01:29
[2026-08-31 01:01:30,056.056 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:01:30,322.322 INFO    ] Initializing speech engine...
[2026-08-31 01:01:30,332.332 INFO    ] 2026-08-31 01:01:30
[2026-08-31 01:01:30,575.575 INFO    ] 2026-08-31 01:01:30
[2026-08-31 01:01:30,610.610 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:01:30,864.864 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:01:30,869.869 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:01:31,097.097 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:01:31,127.127 INFO    ] time= 31/08/2026 01:01:31
[2026-08-31 01:01:31,142.142 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:01:31,151.151 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:01:31,277.277 INFO    ] No existing commands found in stream
[2026-08-31 01:01:36,288.288 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:01:36,291.291 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-08-31 01:01:38,604.604 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 01:01:38,607.607 INFO    ] Checking for system updates...
[2026-08-31 01:01:38,642.642 INFO    ] 200
[2026-08-31 01:01:38,645.645 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:01:38,696.696 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:01:38,699.699 INFO    ] No update needed
[2026-08-31 01:01:38,701.701 INFO    ] Checking for camera pi updates...
[2026-08-31 01:01:38,735.735 INFO    ] 200
[2026-08-31 01:01:38,737.737 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:01:38,778.778 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:01:38,853.853 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:01:38,856.856 INFO    ] No camera update needed
[2026-08-31 01:01:38,858.858 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:01:38,860.860 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:01:38,866.866 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:01:38,871.871 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:01:40,912.912 INFO    ] ================================================
[2026-08-31 01:01:40,927.927 INFO    ] Launching Daemon at Mon Aug 31 01:01:40 IST 2026
[2026-08-31 01:01:40,937.937 INFO    ] ================================================
[2026-08-31 01:01:41,520.520 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:01:41
[2026-08-31 01:01:42,113.113 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:01:42,364.364 INFO    ] Initializing speech engine...
[2026-08-31 01:01:42,373.373 INFO    ] 2026-08-31 01:01:42
[2026-08-31 01:01:42,668.668 INFO    ] 2026-08-31 01:01:42
[2026-08-31 01:01:42,704.704 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:01:42,927.927 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:01:42,991.991 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:01:43,213.213 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:01:43,278.278 INFO    ] time= 31/08/2026 01:01:43
[2026-08-31 01:01:43,291.291 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:01:43,297.297 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:01:43,423.423 INFO    ] No existing commands found in stream
[2026-08-31 01:01:48,440.440 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:01:48,443.443 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-08-31 01:01:51,680.680 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 01:01:51,682.682 INFO    ] Checking for system updates...
[2026-08-31 01:01:51,718.718 INFO    ] 200
[2026-08-31 01:01:51,721.721 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:01:51,779.779 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:01:51,781.781 INFO    ] No update needed
[2026-08-31 01:01:51,783.783 INFO    ] Checking for camera pi updates...
[2026-08-31 01:01:51,820.820 INFO    ] 200
[2026-08-31 01:01:51,822.822 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:01:51,866.866 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:01:51,952.952 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:01:51,955.955 INFO    ] No camera update needed
[2026-08-31 01:01:51,957.957 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:01:51,959.959 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:01:51,965.965 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:01:51,970.970 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:01:54,010.010 INFO    ] ================================================
[2026-08-31 01:01:54,026.026 INFO    ] Launching Daemon at Mon Aug 31 01:01:54 IST 2026
[2026-08-31 01:01:54,037.037 INFO    ] ================================================
[2026-08-31 01:01:54,679.679 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:01:54
[2026-08-31 01:01:55,337.337 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:01:55,645.645 INFO    ] Initializing speech engine...
[2026-08-31 01:01:55,653.653 INFO    ] 2026-08-31 01:01:55
[2026-08-31 01:01:55,954.954 INFO    ] 2026-08-31 01:01:55
[2026-08-31 01:01:56,042.042 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:01:56,306.306 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:01:56,325.325 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:01:56,502.502 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:01:56,512.512 INFO    ] time= 31/08/2026 01:01:56
[2026-08-31 01:01:56,564.564 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:01:56,612.612 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:01:56,749.749 INFO    ] No existing commands found in stream
[2026-08-31 01:02:01,774.774 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:02:01,778.778 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-08-31 01:02:05,601.601 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 01:02:05,604.604 INFO    ] Checking for system updates...
[2026-08-31 01:02:05,641.641 INFO    ] 200
[2026-08-31 01:02:05,643.643 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:02:05,697.697 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:02:05,700.700 INFO    ] No update needed
[2026-08-31 01:02:05,703.703 INFO    ] Checking for camera pi updates...
[2026-08-31 01:02:05,737.737 INFO    ] 200
[2026-08-31 01:02:05,739.739 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:02:05,785.785 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:02:05,870.870 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:02:05,873.873 INFO    ] No camera update needed
[2026-08-31 01:02:05,875.875 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:02:05,877.877 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:02:05,882.882 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:02:05,887.887 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:02:07,928.928 INFO    ] ================================================
[2026-08-31 01:02:07,944.944 INFO    ] Launching Daemon at Mon Aug 31 01:02:07 IST 2026
[2026-08-31 01:02:07,955.955 INFO    ] ================================================
[2026-08-31 01:02:08,522.522 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:02:08
[2026-08-31 01:02:09,104.104 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:02:09,372.372 INFO    ] Initializing speech engine...
[2026-08-31 01:02:09,381.381 INFO    ] 2026-08-31 01:02:09
[2026-08-31 01:02:09,642.642 INFO    ] 2026-08-31 01:02:09
[2026-08-31 01:02:09,694.694 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:02:09,916.916 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:02:09,925.925 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:02:10,161.161 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:02:10,181.181 INFO    ] time= 31/08/2026 01:02:10
[2026-08-31 01:02:10,187.187 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:02:10,206.206 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:02:10,337.337 INFO    ] No existing commands found in stream
[2026-08-31 01:02:15,355.355 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:02:15,358.358 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-08-31 01:02:19,341.341 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 01:02:19,344.344 INFO    ] Checking for system updates...
[2026-08-31 01:02:19,380.380 INFO    ] 200
[2026-08-31 01:02:19,382.382 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:02:19,438.438 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:02:19,440.440 INFO    ] No update needed
[2026-08-31 01:02:19,443.443 INFO    ] Checking for camera pi updates...
[2026-08-31 01:02:19,476.476 INFO    ] 200
[2026-08-31 01:02:19,479.479 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:02:19,519.519 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:02:19,614.614 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:02:19,617.617 INFO    ] No camera update needed
[2026-08-31 01:02:19,619.619 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:02:19,621.621 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:02:19,627.627 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:02:19,632.632 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:02:21,674.674 INFO    ] ================================================
[2026-08-31 01:02:21,689.689 INFO    ] Launching Daemon at Mon Aug 31 01:02:21 IST 2026
[2026-08-31 01:02:21,699.699 INFO    ] ================================================
[2026-08-31 01:02:22,330.330 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:02:22
[2026-08-31 01:02:22,984.984 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:02:23,264.264 INFO    ] Initializing speech engine...
[2026-08-31 01:02:23,282.282 INFO    ] 2026-08-31 01:02:23
[2026-08-31 01:02:23,541.541 INFO    ] 2026-08-31 01:02:23
[2026-08-31 01:02:23,585.585 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:02:23,861.861 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:02:23,865.865 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:02:24,096.096 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:02:24,114.114 INFO    ] time= 31/08/2026 01:02:24
[2026-08-31 01:02:24,125.125 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:02:24,152.152 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:02:24,283.283 INFO    ] No existing commands found in stream
[2026-08-31 01:02:29,309.309 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:02:29,312.312 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-08-31 01:02:30,853.853 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 01:02:30,856.856 INFO    ] Checking for system updates...
[2026-08-31 01:02:30,896.896 INFO    ] 200
[2026-08-31 01:02:30,898.898 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:02:30,957.957 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:02:30,959.959 INFO    ] No update needed
[2026-08-31 01:02:30,962.962 INFO    ] Checking for camera pi updates...
[2026-08-31 01:02:30,998.998 INFO    ] 200
[2026-08-31 01:02:31,001.001 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:02:31,041.041 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:02:31,122.122 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:02:31,124.124 INFO    ] No camera update needed
[2026-08-31 01:02:31,126.126 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:02:31,129.129 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:02:31,135.135 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:02:31,140.140 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:02:33,183.183 INFO    ] ================================================
[2026-08-31 01:02:33,200.200 INFO    ] Launching Daemon at Mon Aug 31 01:02:33 IST 2026
[2026-08-31 01:02:33,214.214 INFO    ] ================================================
[2026-08-31 01:02:33,812.812 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:02:33
[2026-08-31 01:02:34,407.407 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:02:34,691.691 INFO    ] Initializing speech engine...
[2026-08-31 01:02:34,702.702 INFO    ] 2026-08-31 01:02:34
[2026-08-31 01:02:34,957.957 INFO    ] 2026-08-31 01:02:34
[2026-08-31 01:02:35,007.007 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:02:35,253.253 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:02:35,261.261 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:02:35,490.490 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:02:35,496.496 INFO    ] time= 31/08/2026 01:02:35
[2026-08-31 01:02:35,517.517 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:02:35,543.543 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:02:35,650.650 INFO    ] No existing commands found in stream
[2026-08-31 01:02:40,679.679 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:02:40,682.682 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-08-31 01:02:43,722.722 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 01:02:43,724.724 INFO    ] Checking for system updates...
[2026-08-31 01:02:43,760.760 INFO    ] 200
[2026-08-31 01:02:43,762.762 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:02:43,814.814 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:02:43,817.817 INFO    ] No update needed
[2026-08-31 01:02:43,819.819 INFO    ] Checking for camera pi updates...
[2026-08-31 01:02:43,853.853 INFO    ] 200
[2026-08-31 01:02:43,855.855 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:02:43,896.896 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:02:44,098.098 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:02:44,100.100 INFO    ] No camera update needed
[2026-08-31 01:02:44,103.103 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:02:44,105.105 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:02:44,110.110 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:02:44,115.115 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:02:46,159.159 INFO    ] ================================================
[2026-08-31 01:02:46,174.174 INFO    ] Launching Daemon at Mon Aug 31 01:02:46 IST 2026
[2026-08-31 01:02:46,184.184 INFO    ] ================================================
[2026-08-31 01:02:46,750.750 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:02:46
[2026-08-31 01:02:47,334.334 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:02:47,590.590 INFO    ] Initializing speech engine...
[2026-08-31 01:02:47,596.596 INFO    ] 2026-08-31 01:02:47
[2026-08-31 01:02:47,905.905 INFO    ] 2026-08-31 01:02:47
[2026-08-31 01:02:47,942.942 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:02:48,143.143 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:02:48,146.146 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:02:48,324.324 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:02:48,327.327 INFO    ] time= 31/08/2026 01:02:48
[2026-08-31 01:02:48,365.365 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:02:48,402.402 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:02:48,505.505 INFO    ] No existing commands found in stream
[2026-08-31 01:02:53,526.526 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:02:53,529.529 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-08-31 01:02:56,399.399 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 01:02:56,401.401 INFO    ] Checking for system updates...
[2026-08-31 01:02:56,437.437 INFO    ] 200
[2026-08-31 01:02:56,440.440 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:02:56,493.493 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:02:56,495.495 INFO    ] No update needed
[2026-08-31 01:02:56,497.497 INFO    ] Checking for camera pi updates...
[2026-08-31 01:02:56,532.532 INFO    ] 200
[2026-08-31 01:02:56,534.534 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:02:56,574.574 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:02:56,677.677 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:02:56,680.680 INFO    ] No camera update needed
[2026-08-31 01:02:56,682.682 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:02:56,684.684 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:02:56,690.690 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:02:56,695.695 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:02:58,734.734 INFO    ] ================================================
[2026-08-31 01:02:58,749.749 INFO    ] Launching Daemon at Mon Aug 31 01:02:58 IST 2026
[2026-08-31 01:02:58,759.759 INFO    ] ================================================
[2026-08-31 01:02:59,345.345 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:02:59
[2026-08-31 01:02:59,928.928 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:03:00,195.195 INFO    ] Initializing speech engine...
[2026-08-31 01:03:00,204.204 INFO    ] 2026-08-31 01:03:00
[2026-08-31 01:03:00,457.457 INFO    ] 2026-08-31 01:03:00
[2026-08-31 01:03:00,515.515 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:03:00,741.741 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:03:00,747.747 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:03:00,973.973 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:03:01,004.004 INFO    ] time= 31/08/2026 01:03:00
[2026-08-31 01:03:01,020.020 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:03:01,039.039 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:03:01,166.166 INFO    ] No existing commands found in stream
[2026-08-31 01:03:06,191.191 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:03:06,194.194 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-08-31 01:03:07,600.600 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 01:03:07,603.603 INFO    ] Checking for system updates...
[2026-08-31 01:03:07,638.638 INFO    ] 200
[2026-08-31 01:03:07,641.641 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:03:07,694.694 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:03:07,696.696 INFO    ] No update needed
[2026-08-31 01:03:07,699.699 INFO    ] Checking for camera pi updates...
[2026-08-31 01:03:07,732.732 INFO    ] 200
[2026-08-31 01:03:07,734.734 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:03:07,779.779 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:03:07,860.860 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:03:07,862.862 INFO    ] No camera update needed
[2026-08-31 01:03:07,865.865 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:03:07,867.867 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:03:07,872.872 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:03:07,877.877 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:03:09,918.918 INFO    ] ================================================
[2026-08-31 01:03:09,933.933 INFO    ] Launching Daemon at Mon Aug 31 01:03:09 IST 2026
[2026-08-31 01:03:09,944.944 INFO    ] ================================================
[2026-08-31 01:03:10,519.519 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:03:10
[2026-08-31 01:03:11,104.104 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:03:11,371.371 INFO    ] Initializing speech engine...
[2026-08-31 01:03:11,380.380 INFO    ] 2026-08-31 01:03:11
[2026-08-31 01:03:11,627.627 INFO    ] 2026-08-31 01:03:11
[2026-08-31 01:03:11,662.662 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:03:11,941.941 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:03:11,945.945 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:03:12,173.173 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:03:12,180.180 INFO    ] time= 31/08/2026 01:03:12
[2026-08-31 01:03:12,198.198 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:03:12,220.220 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:03:12,343.343 INFO    ] No existing commands found in stream
[2026-08-31 01:03:17,373.373 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:03:17,375.375 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-08-31 01:03:20,079.079 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 01:03:20,082.082 INFO    ] Checking for system updates...
[2026-08-31 01:03:20,117.117 INFO    ] 200
[2026-08-31 01:03:20,120.120 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:03:20,178.178 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:03:20,180.180 INFO    ] No update needed
[2026-08-31 01:03:20,182.182 INFO    ] Checking for camera pi updates...
[2026-08-31 01:03:20,217.217 INFO    ] 200
[2026-08-31 01:03:20,219.219 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:03:20,266.266 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:03:20,351.351 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:03:20,353.353 INFO    ] No camera update needed
[2026-08-31 01:03:20,355.355 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:03:20,358.358 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:03:20,363.363 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:03:20,369.369 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:03:22,409.409 INFO    ] ================================================
[2026-08-31 01:03:22,424.424 INFO    ] Launching Daemon at Mon Aug 31 01:03:22 IST 2026
[2026-08-31 01:03:22,434.434 INFO    ] ================================================
[2026-08-31 01:03:23,003.003 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:03:23
[2026-08-31 01:03:23,587.587 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:03:23,863.863 INFO    ] Initializing speech engine...
[2026-08-31 01:03:23,874.874 INFO    ] 2026-08-31 01:03:23
[2026-08-31 01:03:24,144.144 INFO    ] 2026-08-31 01:03:24
[2026-08-31 01:03:24,201.201 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:03:24,484.484 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:03:24,492.492 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:03:24,687.687 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:03:24,705.705 INFO    ] time= 31/08/2026 01:03:24
[2026-08-31 01:03:24,715.715 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:03:24,744.744 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:03:24,863.863 INFO    ] No existing commands found in stream
[2026-08-31 01:03:29,894.894 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:03:29,898.898 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-08-31 01:03:30,561.561 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 01:03:30,564.564 INFO    ] Checking for system updates...
[2026-08-31 01:03:30,602.602 INFO    ] 200
[2026-08-31 01:03:30,604.604 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:03:30,663.663 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:03:30,666.666 INFO    ] No update needed
[2026-08-31 01:03:30,669.669 INFO    ] Checking for camera pi updates...
[2026-08-31 01:03:30,707.707 INFO    ] 200
[2026-08-31 01:03:30,710.710 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:03:30,751.751 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:03:30,847.847 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:03:30,849.849 INFO    ] No camera update needed
[2026-08-31 01:03:30,852.852 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:03:30,854.854 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:03:30,859.859 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:03:30,864.864 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:03:32,906.906 INFO    ] ================================================
[2026-08-31 01:03:32,937.937 INFO    ] Launching Daemon at Mon Aug 31 01:03:32 IST 2026
[2026-08-31 01:03:32,949.949 INFO    ] ================================================
[2026-08-31 01:03:33,536.536 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:03:33
[2026-08-31 01:03:34,119.119 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:03:34,387.387 INFO    ] Initializing speech engine...
[2026-08-31 01:03:34,396.396 INFO    ] 2026-08-31 01:03:34
[2026-08-31 01:03:34,641.641 INFO    ] 2026-08-31 01:03:34
[2026-08-31 01:03:34,677.677 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:03:34,928.928 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:03:34,937.937 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:03:35,182.182 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:03:35,194.194 INFO    ] time= 31/08/2026 01:03:35
[2026-08-31 01:03:35,200.200 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:03:35,217.217 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:03:35,329.329 INFO    ] No existing commands found in stream
[2026-08-31 01:03:40,354.354 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:03:40,357.357 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-08-31 01:03:41,803.803 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 01:03:41,806.806 INFO    ] Checking for system updates...
[2026-08-31 01:03:41,843.843 INFO    ] 200
[2026-08-31 01:03:41,846.846 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:03:41,898.898 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:03:41,900.900 INFO    ] No update needed
[2026-08-31 01:03:41,903.903 INFO    ] Checking for camera pi updates...
[2026-08-31 01:03:41,937.937 INFO    ] 200
[2026-08-31 01:03:41,939.939 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:03:41,980.980 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:03:42,052.052 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:03:42,054.054 INFO    ] No camera update needed
[2026-08-31 01:03:42,057.057 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:03:42,059.059 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:03:42,065.065 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:03:42,070.070 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:03:44,112.112 INFO    ] ================================================
[2026-08-31 01:03:44,127.127 INFO    ] Launching Daemon at Mon Aug 31 01:03:44 IST 2026
[2026-08-31 01:03:44,137.137 INFO    ] ================================================
[2026-08-31 01:03:44,710.710 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:03:44
[2026-08-31 01:03:45,298.298 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:03:45,572.572 INFO    ] Initializing speech engine...
[2026-08-31 01:03:45,578.578 INFO    ] 2026-08-31 01:03:45
[2026-08-31 01:03:45,823.823 INFO    ] 2026-08-31 01:03:45
[2026-08-31 01:03:45,858.858 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:03:46,113.113 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:03:46,117.117 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:03:46,349.349 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:03:46,376.376 INFO    ] time= 31/08/2026 01:03:46
[2026-08-31 01:03:46,391.391 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:03:46,401.401 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:03:46,528.528 INFO    ] No existing commands found in stream
[2026-08-31 01:03:51,540.540 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:03:51,543.543 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-08-31 01:03:54,039.039 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 01:03:54,041.041 INFO    ] Checking for system updates...
[2026-08-31 01:03:54,081.081 INFO    ] 200
[2026-08-31 01:03:54,083.083 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:03:54,135.135 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:03:54,138.138 INFO    ] No update needed
[2026-08-31 01:03:54,141.141 INFO    ] Checking for camera pi updates...
[2026-08-31 01:03:54,178.178 INFO    ] 200
[2026-08-31 01:03:54,181.181 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:03:54,221.221 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:03:54,297.297 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:03:54,299.299 INFO    ] No camera update needed
[2026-08-31 01:03:54,302.302 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:03:54,304.304 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:03:54,309.309 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:03:54,314.314 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:03:56,354.354 INFO    ] ================================================
[2026-08-31 01:03:56,370.370 INFO    ] Launching Daemon at Mon Aug 31 01:03:56 IST 2026
[2026-08-31 01:03:56,380.380 INFO    ] ================================================
[2026-08-31 01:03:57,046.046 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:03:57
[2026-08-31 01:03:57,729.729 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:03:58,027.027 INFO    ] Initializing speech engine...
[2026-08-31 01:03:58,032.032 INFO    ] 2026-08-31 01:03:58
[2026-08-31 01:03:58,278.278 INFO    ] 2026-08-31 01:03:58
[2026-08-31 01:03:58,313.313 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:03:58,568.568 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:03:58,573.573 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:03:58,824.824 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:03:58,832.832 INFO    ] time= 31/08/2026 01:03:58
[2026-08-31 01:03:58,849.849 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:03:58,866.866 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:03:59,008.008 INFO    ] No existing commands found in stream
[2026-08-31 01:04:04,033.033 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:04:04,036.036 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-08-31 01:04:07,240.240 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 01:04:07,243.243 INFO    ] Checking for system updates...
[2026-08-31 01:04:07,279.279 INFO    ] 200
[2026-08-31 01:04:07,282.282 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:04:07,333.333 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:04:07,336.336 INFO    ] No update needed
[2026-08-31 01:04:07,338.338 INFO    ] Checking for camera pi updates...
[2026-08-31 01:04:07,372.372 INFO    ] 200
[2026-08-31 01:04:07,374.374 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:04:07,415.415 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:04:07,494.494 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:04:07,496.496 INFO    ] No camera update needed
[2026-08-31 01:04:07,499.499 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:04:07,501.501 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:04:07,506.506 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:04:07,511.511 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:04:09,555.555 INFO    ] ================================================
[2026-08-31 01:04:09,570.570 INFO    ] Launching Daemon at Mon Aug 31 01:04:09 IST 2026
[2026-08-31 01:04:09,581.581 INFO    ] ================================================
[2026-08-31 01:04:10,148.148 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:04:10
[2026-08-31 01:04:10,729.729 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:04:10,998.998 INFO    ] Initializing speech engine...
[2026-08-31 01:04:11,006.006 INFO    ] 2026-08-31 01:04:10
[2026-08-31 01:04:11,257.257 INFO    ] 2026-08-31 01:04:11
[2026-08-31 01:04:11,293.293 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:04:11,494.494 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:04:11,553.553 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:04:11,780.780 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:04:11,823.823 INFO    ] time= 31/08/2026 01:04:11
[2026-08-31 01:04:11,829.829 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:04:11,847.847 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:04:11,981.981 INFO    ] No existing commands found in stream
[2026-08-31 01:04:17,001.001 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:04:17,004.004 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-08-31 01:04:18,859.859 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 01:04:18,862.862 INFO    ] Checking for system updates...
[2026-08-31 01:04:18,897.897 INFO    ] 200
[2026-08-31 01:04:18,900.900 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:04:18,951.951 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:04:18,954.954 INFO    ] No update needed
[2026-08-31 01:04:18,956.956 INFO    ] Checking for camera pi updates...
[2026-08-31 01:04:18,989.989 INFO    ] 200
[2026-08-31 01:04:18,992.992 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:04:19,032.032 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:04:19,105.105 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:04:19,107.107 INFO    ] No camera update needed
[2026-08-31 01:04:19,110.110 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:04:19,112.112 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:04:19,117.117 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:04:19,122.122 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:04:21,162.162 INFO    ] ================================================
[2026-08-31 01:04:21,178.178 INFO    ] Launching Daemon at Mon Aug 31 01:04:21 IST 2026
[2026-08-31 01:04:21,188.188 INFO    ] ================================================
[2026-08-31 01:04:21,759.759 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:04:21
[2026-08-31 01:04:22,341.341 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:04:22,609.609 INFO    ] Initializing speech engine...
[2026-08-31 01:04:22,618.618 INFO    ] 2026-08-31 01:04:22
[2026-08-31 01:04:22,865.865 INFO    ] 2026-08-31 01:04:22
[2026-08-31 01:04:22,900.900 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:04:23,159.159 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:04:23,179.179 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:04:23,405.405 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:04:23,423.423 INFO    ] time= 31/08/2026 01:04:23
[2026-08-31 01:04:23,441.441 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:04:23,470.470 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:04:23,590.590 INFO    ] No existing commands found in stream
[2026-08-31 01:04:28,615.615 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:04:28,618.618 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-08-31 01:04:32,522.522 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 01:04:32,524.524 INFO    ] Checking for system updates...
[2026-08-31 01:04:32,564.564 INFO    ] 200
[2026-08-31 01:04:32,566.566 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:04:32,625.625 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:04:32,628.628 INFO    ] No update needed
[2026-08-31 01:04:32,630.630 INFO    ] Checking for camera pi updates...
[2026-08-31 01:04:32,664.664 INFO    ] 200
[2026-08-31 01:04:32,667.667 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:04:32,712.712 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:04:32,762.762 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:04:32,765.765 INFO    ] No camera update needed
[2026-08-31 01:04:32,767.767 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:04:32,770.770 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:04:32,775.775 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:04:32,780.780 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:04:34,822.822 INFO    ] ================================================
[2026-08-31 01:04:34,837.837 INFO    ] Launching Daemon at Mon Aug 31 01:04:34 IST 2026
[2026-08-31 01:04:34,852.852 INFO    ] ================================================
[2026-08-31 01:04:35,422.422 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:04:35
[2026-08-31 01:04:36,003.003 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:04:36,271.271 INFO    ] Initializing speech engine...
[2026-08-31 01:04:36,280.280 INFO    ] 2026-08-31 01:04:36
[2026-08-31 01:04:36,533.533 INFO    ] 2026-08-31 01:04:36
[2026-08-31 01:04:36,591.591 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:04:36,816.816 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:04:36,822.822 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:04:37,057.057 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:04:37,078.078 INFO    ] time= 31/08/2026 01:04:37
[2026-08-31 01:04:37,084.084 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:04:37,102.102 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:04:37,234.234 INFO    ] No existing commands found in stream
[2026-08-31 01:04:42,257.257 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:04:42,260.260 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-08-31 01:04:45,340.340 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 01:04:45,343.343 INFO    ] Checking for system updates...
[2026-08-31 01:04:45,379.379 INFO    ] 200
[2026-08-31 01:04:45,382.382 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:04:45,440.440 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:04:45,442.442 INFO    ] No update needed
[2026-08-31 01:04:45,445.445 INFO    ] Checking for camera pi updates...
[2026-08-31 01:04:45,481.481 INFO    ] 200
[2026-08-31 01:04:45,484.484 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:04:45,528.528 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:04:45,710.710 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:04:45,713.713 INFO    ] No camera update needed
[2026-08-31 01:04:45,715.715 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:04:45,717.717 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:04:45,722.722 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:04:45,727.727 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:04:47,768.768 INFO    ] ================================================
[2026-08-31 01:04:47,784.784 INFO    ] Launching Daemon at Mon Aug 31 01:04:47 IST 2026
[2026-08-31 01:04:47,794.794 INFO    ] ================================================
[2026-08-31 01:04:48,360.360 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:04:48
[2026-08-31 01:04:48,944.944 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:04:49,201.201 INFO    ] Initializing speech engine...
[2026-08-31 01:04:49,208.208 INFO    ] 2026-08-31 01:04:49
[2026-08-31 01:04:49,488.488 INFO    ] 2026-08-31 01:04:49
[2026-08-31 01:04:49,523.523 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:04:49,779.779 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:04:49,784.784 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:04:49,985.985 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:04:50,040.040 INFO    ] time= 31/08/2026 01:04:49
[2026-08-31 01:04:50,046.046 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:04:50,061.061 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:04:50,195.195 INFO    ] No existing commands found in stream
[2026-08-31 01:04:55,217.217 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:04:55,220.220 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-08-31 01:04:56,839.839 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 01:04:56,842.842 INFO    ] Checking for system updates...
[2026-08-31 01:04:56,878.878 INFO    ] 200
[2026-08-31 01:04:56,880.880 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:04:56,933.933 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:04:56,935.935 INFO    ] No update needed
[2026-08-31 01:04:56,938.938 INFO    ] Checking for camera pi updates...
[2026-08-31 01:04:56,975.975 INFO    ] 200
[2026-08-31 01:04:56,977.977 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:04:57,023.023 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:04:57,113.113 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:04:57,115.115 INFO    ] No camera update needed
[2026-08-31 01:04:57,117.117 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:04:57,120.120 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:04:57,125.125 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:04:57,130.130 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:04:59,170.170 INFO    ] ================================================
[2026-08-31 01:04:59,185.185 INFO    ] Launching Daemon at Mon Aug 31 01:04:59 IST 2026
[2026-08-31 01:04:59,196.196 INFO    ] ================================================
[2026-08-31 01:04:59,763.763 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:04:59
[2026-08-31 01:05:00,362.362 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:05:00,623.623 INFO    ] Initializing speech engine...
[2026-08-31 01:05:00,629.629 INFO    ] 2026-08-31 01:05:00
[2026-08-31 01:05:00,926.926 INFO    ] 2026-08-31 01:05:00
[2026-08-31 01:05:00,964.964 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:05:01,186.186 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:05:01,193.193 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:05:01,404.404 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:05:01,446.446 INFO    ] time= 31/08/2026 01:05:01
[2026-08-31 01:05:01,500.500 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:05:01,538.538 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:05:01,676.676 INFO    ] No existing commands found in stream
[2026-08-31 01:05:06,697.697 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:05:06,700.700 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-08-31 01:05:09,961.961 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 01:05:09,964.964 INFO    ] Checking for system updates...
[2026-08-31 01:05:10,001.001 INFO    ] 200
[2026-08-31 01:05:10,004.004 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:05:10,060.060 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:05:10,062.062 INFO    ] No update needed
[2026-08-31 01:05:10,065.065 INFO    ] Checking for camera pi updates...
[2026-08-31 01:05:10,099.099 INFO    ] 200
[2026-08-31 01:05:10,101.101 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:05:10,145.145 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:05:10,242.242 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:05:10,245.245 INFO    ] No camera update needed
[2026-08-31 01:05:10,247.247 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:05:10,250.250 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:05:10,255.255 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:05:10,260.260 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:05:12,300.300 INFO    ] ================================================
[2026-08-31 01:05:12,315.315 INFO    ] Launching Daemon at Mon Aug 31 01:05:12 IST 2026
[2026-08-31 01:05:12,325.325 INFO    ] ================================================
[2026-08-31 01:05:12,895.895 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:05:12
[2026-08-31 01:05:13,479.479 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:05:13,728.728 INFO    ] Initializing speech engine...
[2026-08-31 01:05:13,751.751 INFO    ] 2026-08-31 01:05:13
[2026-08-31 01:05:14,003.003 INFO    ] 2026-08-31 01:05:13
[2026-08-31 01:05:14,037.037 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:05:14,293.293 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:05:14,299.299 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:05:14,538.538 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:05:14,555.555 INFO    ] time= 31/08/2026 01:05:14
[2026-08-31 01:05:14,561.561 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:05:14,579.579 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:05:14,707.707 INFO    ] No existing commands found in stream
[2026-08-31 01:05:19,722.722 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:05:19,725.725 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-08-31 01:05:22,882.882 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 01:05:22,884.884 INFO    ] Checking for system updates...
[2026-08-31 01:05:22,920.920 INFO    ] 200
[2026-08-31 01:05:22,922.922 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:05:22,975.975 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:05:22,977.977 INFO    ] No update needed
[2026-08-31 01:05:22,979.979 INFO    ] Checking for camera pi updates...
[2026-08-31 01:05:23,015.015 INFO    ] 200
[2026-08-31 01:05:23,018.018 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:05:23,061.061 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:05:23,140.140 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:05:23,143.143 INFO    ] No camera update needed
[2026-08-31 01:05:23,145.145 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:05:23,147.147 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:05:23,152.152 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:05:23,157.157 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:05:25,199.199 INFO    ] ================================================
[2026-08-31 01:05:25,214.214 INFO    ] Launching Daemon at Mon Aug 31 01:05:25 IST 2026
[2026-08-31 01:05:25,225.225 INFO    ] ================================================
[2026-08-31 01:05:25,789.789 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:05:25
[2026-08-31 01:05:26,368.368 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:05:26,618.618 INFO    ] Initializing speech engine...
[2026-08-31 01:05:26,627.627 INFO    ] 2026-08-31 01:05:26
[2026-08-31 01:05:26,916.916 INFO    ] 2026-08-31 01:05:26
[2026-08-31 01:05:26,952.952 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:05:27,230.230 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:05:27,239.239 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:05:27,455.455 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:05:27,504.504 INFO    ] time= 31/08/2026 01:05:27
[2026-08-31 01:05:27,528.528 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:05:27,535.535 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:05:27,682.682 INFO    ] No existing commands found in stream
[2026-08-31 01:05:32,706.706 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:05:32,709.709 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-08-31 01:05:34,398.398 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 01:05:34,401.401 INFO    ] Checking for system updates...
[2026-08-31 01:05:34,436.436 INFO    ] 200
[2026-08-31 01:05:34,439.439 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:05:34,491.491 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:05:34,494.494 INFO    ] No update needed
[2026-08-31 01:05:34,496.496 INFO    ] Checking for camera pi updates...
[2026-08-31 01:05:34,530.530 INFO    ] 200
[2026-08-31 01:05:34,532.532 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:05:34,576.576 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:05:34,666.666 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:05:34,669.669 INFO    ] No camera update needed
[2026-08-31 01:05:34,671.671 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:05:34,673.673 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:05:34,679.679 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:05:34,684.684 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:05:36,723.723 INFO    ] ================================================
[2026-08-31 01:05:36,738.738 INFO    ] Launching Daemon at Mon Aug 31 01:05:36 IST 2026
[2026-08-31 01:05:36,749.749 INFO    ] ================================================
[2026-08-31 01:05:37,347.347 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:05:37
[2026-08-31 01:05:37,966.966 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:05:38,265.265 INFO    ] Initializing speech engine...
[2026-08-31 01:05:38,279.279 INFO    ] 2026-08-31 01:05:38
[2026-08-31 01:05:38,544.544 INFO    ] 2026-08-31 01:05:38
[2026-08-31 01:05:38,614.614 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:05:38,864.864 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:05:38,871.871 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:05:39,104.104 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:05:39,118.118 INFO    ] time= 31/08/2026 01:05:39
[2026-08-31 01:05:39,143.143 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:05:39,174.174 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:05:39,294.294 INFO    ] No existing commands found in stream
[2026-08-31 01:05:44,324.324 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:05:44,331.331 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-08-31 01:05:48,559.559 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 01:05:48,562.562 INFO    ] Checking for system updates...
[2026-08-31 01:05:48,600.600 INFO    ] 200
[2026-08-31 01:05:48,603.603 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:05:48,672.672 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:05:48,675.675 INFO    ] No update needed
[2026-08-31 01:05:48,677.677 INFO    ] Checking for camera pi updates...
[2026-08-31 01:05:48,714.714 INFO    ] 200
[2026-08-31 01:05:48,716.716 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:05:48,757.757 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:05:48,835.835 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:05:48,838.838 INFO    ] No camera update needed
[2026-08-31 01:05:48,840.840 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:05:48,843.843 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:05:48,848.848 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:05:48,853.853 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:05:50,894.894 INFO    ] ================================================
[2026-08-31 01:05:50,910.910 INFO    ] Launching Daemon at Mon Aug 31 01:05:50 IST 2026
[2026-08-31 01:05:50,921.921 INFO    ] ================================================
[2026-08-31 01:05:51,487.487 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:05:51
[2026-08-31 01:05:52,068.068 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:05:52,337.337 INFO    ] Initializing speech engine...
[2026-08-31 01:05:52,346.346 INFO    ] 2026-08-31 01:05:52
[2026-08-31 01:05:52,605.605 INFO    ] 2026-08-31 01:05:52
[2026-08-31 01:05:52,657.657 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:05:52,885.885 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:05:52,890.890 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:05:53,100.100 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:05:53,146.146 INFO    ] time= 31/08/2026 01:05:53
[2026-08-31 01:05:53,153.153 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:05:53,170.170 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:05:53,297.297 INFO    ] No existing commands found in stream
[2026-08-31 01:05:58,312.312 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:05:58,315.315 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-08-31 01:06:00,667.667 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 01:06:00,670.670 INFO    ] Checking for system updates...
[2026-08-31 01:06:00,705.705 INFO    ] 200
[2026-08-31 01:06:00,707.707 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:06:00,764.764 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:06:00,767.767 INFO    ] No update needed
[2026-08-31 01:06:00,769.769 INFO    ] Checking for camera pi updates...
[2026-08-31 01:06:00,805.805 INFO    ] 200
[2026-08-31 01:06:00,808.808 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:06:00,851.851 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:06:00,934.934 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:06:00,937.937 INFO    ] No camera update needed
[2026-08-31 01:06:00,939.939 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:06:00,941.941 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:06:00,947.947 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:06:00,952.952 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:06:03,999.999 INFO    ] ================================================
[2026-08-31 01:06:03,014.014 INFO    ] Launching Daemon at Mon Aug 31 01:06:03 IST 2026
[2026-08-31 01:06:03,025.025 INFO    ] ================================================
[2026-08-31 01:06:03,607.607 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:06:03
[2026-08-31 01:06:04,190.190 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:06:04,460.460 INFO    ] Initializing speech engine...
[2026-08-31 01:06:04,469.469 INFO    ] 2026-08-31 01:06:04
[2026-08-31 01:06:04,715.715 INFO    ] 2026-08-31 01:06:04
[2026-08-31 01:06:04,750.750 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:06:05,007.007 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:06:05,013.013 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:06:05,246.246 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:06:05,271.271 INFO    ] time= 31/08/2026 01:06:05
[2026-08-31 01:06:05,277.277 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:06:05,294.294 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:06:05,426.426 INFO    ] No existing commands found in stream
[2026-08-31 01:06:10,445.445 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:06:10,448.448 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-08-31 01:06:13,547.547 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 01:06:13,550.550 INFO    ] Checking for system updates...
[2026-08-31 01:06:13,588.588 INFO    ] 200
[2026-08-31 01:06:13,591.591 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:06:13,643.643 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:06:13,645.645 INFO    ] No update needed
[2026-08-31 01:06:13,648.648 INFO    ] Checking for camera pi updates...
[2026-08-31 01:06:13,684.684 INFO    ] 200
[2026-08-31 01:06:13,687.687 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:06:13,737.737 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:06:13,817.817 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:06:13,820.820 INFO    ] No camera update needed
[2026-08-31 01:06:13,822.822 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:06:13,824.824 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:06:13,830.830 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:06:13,835.835 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:06:15,876.876 INFO    ] ================================================
[2026-08-31 01:06:15,892.892 INFO    ] Launching Daemon at Mon Aug 31 01:06:15 IST 2026
[2026-08-31 01:06:15,904.904 INFO    ] ================================================
[2026-08-31 01:06:16,471.471 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:06:16
[2026-08-31 01:06:17,051.051 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:06:17,323.323 INFO    ] Initializing speech engine...
[2026-08-31 01:06:17,329.329 INFO    ] 2026-08-31 01:06:17
[2026-08-31 01:06:17,573.573 INFO    ] 2026-08-31 01:06:17
[2026-08-31 01:06:17,609.609 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:06:17,811.811 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:06:17,863.863 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:06:18,110.110 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:06:18,127.127 INFO    ] time= 31/08/2026 01:06:18
[2026-08-31 01:06:18,132.132 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:06:18,150.150 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:06:18,286.286 INFO    ] No existing commands found in stream
[2026-08-31 01:06:23,311.311 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:06:23,314.314 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-08-31 01:06:27,560.560 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 01:06:27,563.563 INFO    ] Checking for system updates...
[2026-08-31 01:06:27,599.599 INFO    ] 200
[2026-08-31 01:06:27,601.601 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:06:27,660.660 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:06:27,662.662 INFO    ] No update needed
[2026-08-31 01:06:27,665.665 INFO    ] Checking for camera pi updates...
[2026-08-31 01:06:27,698.698 INFO    ] 200
[2026-08-31 01:06:27,701.701 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:06:27,740.740 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:06:27,848.848 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:06:27,850.850 INFO    ] No camera update needed
[2026-08-31 01:06:27,852.852 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:06:27,855.855 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:06:27,860.860 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:06:27,865.865 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:06:29,908.908 INFO    ] ================================================
[2026-08-31 01:06:29,924.924 INFO    ] Launching Daemon at Mon Aug 31 01:06:29 IST 2026
[2026-08-31 01:06:29,935.935 INFO    ] ================================================
[2026-08-31 01:06:30,502.502 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:06:30
[2026-08-31 01:06:31,085.085 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:06:31,354.354 INFO    ] Initializing speech engine...
[2026-08-31 01:06:31,363.363 INFO    ] 2026-08-31 01:06:31
[2026-08-31 01:06:31,637.637 INFO    ] 2026-08-31 01:06:31
[2026-08-31 01:06:31,707.707 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:06:31,945.945 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:06:31,968.968 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:06:32,196.196 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:06:32,222.222 INFO    ] time= 31/08/2026 01:06:32
[2026-08-31 01:06:32,229.229 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:06:32,250.250 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:06:32,384.384 INFO    ] No existing commands found in stream
[2026-08-31 01:06:37,409.409 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:06:37,412.412 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-08-31 01:06:38,521.521 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 01:06:38,523.523 INFO    ] Checking for system updates...
[2026-08-31 01:06:38,567.567 INFO    ] 200
[2026-08-31 01:06:38,570.570 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:06:38,632.632 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:06:38,635.635 INFO    ] No update needed
[2026-08-31 01:06:38,638.638 INFO    ] Checking for camera pi updates...
[2026-08-31 01:06:38,681.681 INFO    ] 200
[2026-08-31 01:06:38,684.684 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:06:38,725.725 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:06:38,810.810 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:06:38,812.812 INFO    ] No camera update needed
[2026-08-31 01:06:38,815.815 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:06:38,817.817 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:06:38,830.830 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:06:38,835.835 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:06:40,890.890 INFO    ] ================================================
[2026-08-31 01:06:40,906.906 INFO    ] Launching Daemon at Mon Aug 31 01:06:40 IST 2026
[2026-08-31 01:06:40,917.917 INFO    ] ================================================
[2026-08-31 01:06:41,484.484 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:06:41
[2026-08-31 01:06:42,069.069 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:06:42,321.321 INFO    ] Initializing speech engine...
[2026-08-31 01:06:42,344.344 INFO    ] 2026-08-31 01:06:42
[2026-08-31 01:06:42,603.603 INFO    ] 2026-08-31 01:06:42
[2026-08-31 01:06:42,638.638 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:06:42,928.928 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:06:42,947.947 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:06:43,193.193 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:06:43,200.200 INFO    ] time= 31/08/2026 01:06:43
[2026-08-31 01:06:43,218.218 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:06:43,233.233 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:06:43,370.370 INFO    ] No existing commands found in stream
[2026-08-31 01:06:48,385.385 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:06:48,388.388 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-08-31 01:06:50,300.300 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 01:06:50,302.302 INFO    ] Checking for system updates...
[2026-08-31 01:06:50,338.338 INFO    ] 200
[2026-08-31 01:06:50,340.340 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:06:50,402.402 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:06:50,405.405 INFO    ] No update needed
[2026-08-31 01:06:50,407.407 INFO    ] Checking for camera pi updates...
[2026-08-31 01:06:50,440.440 INFO    ] 200
[2026-08-31 01:06:50,443.443 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:06:50,488.488 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:06:50,690.690 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:06:50,692.692 INFO    ] No camera update needed
[2026-08-31 01:06:50,695.695 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:06:50,697.697 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:06:50,703.703 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:06:50,707.707 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:06:52,748.748 INFO    ] ================================================
[2026-08-31 01:06:52,764.764 INFO    ] Launching Daemon at Mon Aug 31 01:06:52 IST 2026
[2026-08-31 01:06:52,776.776 INFO    ] ================================================
[2026-08-31 01:06:53,343.343 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:06:53
[2026-08-31 01:06:53,927.927 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:06:54,186.186 INFO    ] Initializing speech engine...
[2026-08-31 01:06:54,199.199 INFO    ] 2026-08-31 01:06:54
[2026-08-31 01:06:54,485.485 INFO    ] 2026-08-31 01:06:54
[2026-08-31 01:06:54,523.523 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:06:54,745.745 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:06:54,754.754 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:06:54,972.972 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:06:54,989.989 INFO    ] time= 31/08/2026 01:06:54
[2026-08-31 01:06:55,059.059 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:06:55,122.122 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:06:55,258.258 INFO    ] No existing commands found in stream
[2026-08-31 01:07:00,283.283 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:07:00,286.286 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-08-31 01:07:04,099.099 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 01:07:04,101.101 INFO    ] Checking for system updates...
[2026-08-31 01:07:04,141.141 INFO    ] 200
[2026-08-31 01:07:04,143.143 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:07:04,196.196 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:07:04,198.198 INFO    ] No update needed
[2026-08-31 01:07:04,201.201 INFO    ] Checking for camera pi updates...
[2026-08-31 01:07:04,234.234 INFO    ] 200
[2026-08-31 01:07:04,236.236 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:07:04,285.285 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:07:04,355.355 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:07:04,357.357 INFO    ] No camera update needed
[2026-08-31 01:07:04,360.360 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:07:04,362.362 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:07:04,367.367 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:07:04,372.372 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:07:06,413.413 INFO    ] ================================================
[2026-08-31 01:07:06,430.430 INFO    ] Launching Daemon at Mon Aug 31 01:07:06 IST 2026
[2026-08-31 01:07:06,440.440 INFO    ] ================================================
[2026-08-31 01:07:07,014.014 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:07:07
[2026-08-31 01:07:07,597.597 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:07:07,863.863 INFO    ] Initializing speech engine...
[2026-08-31 01:07:07,873.873 INFO    ] 2026-08-31 01:07:07
[2026-08-31 01:07:08,120.120 INFO    ] 2026-08-31 01:07:08
[2026-08-31 01:07:08,155.155 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:07:08,406.406 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:07:08,415.415 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:07:08,652.652 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:07:08,672.672 INFO    ] time= 31/08/2026 01:07:08
[2026-08-31 01:07:08,678.678 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:07:08,694.694 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:07:08,824.824 INFO    ] No existing commands found in stream
[2026-08-31 01:07:13,838.838 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:07:13,841.841 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-08-31 01:07:17,561.561 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 01:07:17,563.563 INFO    ] Checking for system updates...
[2026-08-31 01:07:17,602.602 INFO    ] 200
[2026-08-31 01:07:17,605.605 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:07:17,658.658 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:07:17,661.661 INFO    ] No update needed
[2026-08-31 01:07:17,663.663 INFO    ] Checking for camera pi updates...
[2026-08-31 01:07:17,702.702 INFO    ] 200
[2026-08-31 01:07:17,704.704 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:07:17,751.751 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:07:17,832.832 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:07:17,835.835 INFO    ] No camera update needed
[2026-08-31 01:07:17,838.838 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:07:17,841.841 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:07:17,847.847 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:07:17,853.853 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:07:19,895.895 INFO    ] ================================================
[2026-08-31 01:07:19,910.910 INFO    ] Launching Daemon at Mon Aug 31 01:07:19 IST 2026
[2026-08-31 01:07:19,921.921 INFO    ] ================================================
[2026-08-31 01:07:20,488.488 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:07:20
[2026-08-31 01:07:21,070.070 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:07:21,327.327 INFO    ] Initializing speech engine...
[2026-08-31 01:07:21,346.346 INFO    ] 2026-08-31 01:07:21
[2026-08-31 01:07:21,592.592 INFO    ] 2026-08-31 01:07:21
[2026-08-31 01:07:21,627.627 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:07:21,878.878 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:07:21,888.888 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:07:22,103.103 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:07:22,146.146 INFO    ] time= 31/08/2026 01:07:22
[2026-08-31 01:07:22,152.152 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:07:22,171.171 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:07:22,305.305 INFO    ] No existing commands found in stream
[2026-08-31 01:07:27,330.330 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:07:27,333.333 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-08-31 01:07:31,164.164 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 01:07:31,167.167 INFO    ] Checking for system updates...
[2026-08-31 01:07:31,206.206 INFO    ] 200
[2026-08-31 01:07:31,209.209 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:07:31,260.260 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:07:31,262.262 INFO    ] No update needed
[2026-08-31 01:07:31,265.265 INFO    ] Checking for camera pi updates...
[2026-08-31 01:07:31,302.302 INFO    ] 200
[2026-08-31 01:07:31,304.304 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:07:31,349.349 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:07:31,430.430 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:07:31,433.433 INFO    ] No camera update needed
[2026-08-31 01:07:31,436.436 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:07:31,442.442 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:07:31,449.449 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:07:31,457.457 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:07:33,501.501 INFO    ] ================================================
[2026-08-31 01:07:33,516.516 INFO    ] Launching Daemon at Mon Aug 31 01:07:33 IST 2026
[2026-08-31 01:07:33,527.527 INFO    ] ================================================
[2026-08-31 01:07:34,177.177 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:07:34
[2026-08-31 01:07:34,784.784 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:07:35,058.058 INFO    ] Initializing speech engine...
[2026-08-31 01:07:35,068.068 INFO    ] 2026-08-31 01:07:35
[2026-08-31 01:07:35,317.317 INFO    ] 2026-08-31 01:07:35
[2026-08-31 01:07:35,383.383 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:07:35,737.737 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:07:35,784.784 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:07:36,016.016 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:07:36,052.052 INFO    ] time= 31/08/2026 01:07:36
[2026-08-31 01:07:36,107.107 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:07:36,130.130 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:07:36,276.276 INFO    ] No existing commands found in stream
[2026-08-31 01:07:41,289.289 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:07:41,292.292 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-08-31 01:07:42,464.464 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 01:07:42,467.467 INFO    ] Checking for system updates...
[2026-08-31 01:07:42,504.504 INFO    ] 200
[2026-08-31 01:07:42,507.507 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:07:42,562.562 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:07:42,564.564 INFO    ] No update needed
[2026-08-31 01:07:42,567.567 INFO    ] Checking for camera pi updates...
[2026-08-31 01:07:42,602.602 INFO    ] 200
[2026-08-31 01:07:42,605.605 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:07:42,645.645 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:07:42,732.732 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:07:42,735.735 INFO    ] No camera update needed
[2026-08-31 01:07:42,737.737 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:07:42,740.740 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:07:42,746.746 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:07:42,752.752 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:07:44,793.793 INFO    ] ================================================
[2026-08-31 01:07:44,809.809 INFO    ] Launching Daemon at Mon Aug 31 01:07:44 IST 2026
[2026-08-31 01:07:44,820.820 INFO    ] ================================================
[2026-08-31 01:07:45,393.393 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:07:45
[2026-08-31 01:07:45,977.977 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:07:46,245.245 INFO    ] Initializing speech engine...
[2026-08-31 01:07:46,254.254 INFO    ] 2026-08-31 01:07:46
[2026-08-31 01:07:46,500.500 INFO    ] 2026-08-31 01:07:46
[2026-08-31 01:07:46,535.535 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:07:46,789.789 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:07:46,794.794 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:07:47,031.031 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:07:47,052.052 INFO    ] time= 31/08/2026 01:07:47
[2026-08-31 01:07:47,057.057 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:07:47,075.075 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:07:47,204.204 INFO    ] No existing commands found in stream
[2026-08-31 01:07:52,217.217 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:07:52,220.220 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-08-31 01:07:54,187.187 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 01:07:54,190.190 INFO    ] Checking for system updates...
[2026-08-31 01:07:54,239.239 INFO    ] 200
[2026-08-31 01:07:54,242.242 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:07:54,299.299 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:07:54,302.302 INFO    ] No update needed
[2026-08-31 01:07:54,304.304 INFO    ] Checking for camera pi updates...
[2026-08-31 01:07:54,337.337 INFO    ] 200
[2026-08-31 01:07:54,340.340 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:07:54,384.384 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:07:54,481.481 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:07:54,483.483 INFO    ] No camera update needed
[2026-08-31 01:07:54,485.485 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:07:54,488.488 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:07:54,493.493 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:07:54,498.498 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:07:56,539.539 INFO    ] ================================================
[2026-08-31 01:07:56,555.555 INFO    ] Launching Daemon at Mon Aug 31 01:07:56 IST 2026
[2026-08-31 01:07:56,566.566 INFO    ] ================================================
[2026-08-31 01:07:57,205.205 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:07:57
[2026-08-31 01:07:57,866.866 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:07:58,170.170 INFO    ] Initializing speech engine...
[2026-08-31 01:07:58,181.181 INFO    ] 2026-08-31 01:07:58
[2026-08-31 01:07:58,485.485 INFO    ] 2026-08-31 01:07:58
[2026-08-31 01:07:58,574.574 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:07:58,785.785 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:07:58,791.791 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:07:58,988.988 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:07:59,006.006 INFO    ] time= 31/08/2026 01:07:58
[2026-08-31 01:07:59,035.035 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:07:59,045.045 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:07:59,170.170 INFO    ] No existing commands found in stream
[2026-08-31 01:08:04,196.196 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:08:04,199.199 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-08-31 01:08:06,921.921 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 01:08:06,924.924 INFO    ] Checking for system updates...
[2026-08-31 01:08:06,961.961 INFO    ] 200
[2026-08-31 01:08:06,963.963 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:08:07,027.027 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:08:07,029.029 INFO    ] No update needed
[2026-08-31 01:08:07,032.032 INFO    ] Checking for camera pi updates...
[2026-08-31 01:08:07,070.070 INFO    ] 200
[2026-08-31 01:08:07,073.073 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:08:07,118.118 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:08:07,208.208 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:08:07,210.210 INFO    ] No camera update needed
[2026-08-31 01:08:07,212.212 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:08:07,215.215 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:08:07,220.220 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:08:07,225.225 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:08:09,265.265 INFO    ] ================================================
[2026-08-31 01:08:09,287.287 INFO    ] Launching Daemon at Mon Aug 31 01:08:09 IST 2026
[2026-08-31 01:08:09,301.301 INFO    ] ================================================
[2026-08-31 01:08:09,872.872 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:08:09
[2026-08-31 01:08:10,454.454 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:08:10,713.713 INFO    ] Initializing speech engine...
[2026-08-31 01:08:10,733.733 INFO    ] 2026-08-31 01:08:10
[2026-08-31 01:08:10,979.979 INFO    ] 2026-08-31 01:08:10
[2026-08-31 01:08:11,014.014 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:08:11,267.267 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:08:11,275.275 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:08:11,517.517 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:08:11,538.538 INFO    ] time= 31/08/2026 01:08:11
[2026-08-31 01:08:11,552.552 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:08:11,561.561 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:08:11,691.691 INFO    ] No existing commands found in stream
[2026-08-31 01:08:16,710.710 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:08:16,712.712 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-08-31 01:08:17,904.904 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 01:08:17,908.908 INFO    ] Checking for system updates...
[2026-08-31 01:08:17,944.944 INFO    ] 200
[2026-08-31 01:08:17,947.947 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:08:18,001.001 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:08:18,003.003 INFO    ] No update needed
[2026-08-31 01:08:18,005.005 INFO    ] Checking for camera pi updates...
[2026-08-31 01:08:18,039.039 INFO    ] 200
[2026-08-31 01:08:18,042.042 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:08:18,087.087 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:08:18,169.169 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:08:18,171.171 INFO    ] No camera update needed
[2026-08-31 01:08:18,174.174 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:08:18,176.176 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:08:18,182.182 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:08:18,187.187 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:08:20,228.228 INFO    ] ================================================
[2026-08-31 01:08:20,243.243 INFO    ] Launching Daemon at Mon Aug 31 01:08:20 IST 2026
[2026-08-31 01:08:20,255.255 INFO    ] ================================================
[2026-08-31 01:08:20,824.824 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:08:20
[2026-08-31 01:08:21,407.407 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:08:21,663.663 INFO    ] Initializing speech engine...
[2026-08-31 01:08:21,681.681 INFO    ] 2026-08-31 01:08:21
[2026-08-31 01:08:21,928.928 INFO    ] 2026-08-31 01:08:21
[2026-08-31 01:08:21,962.962 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:08:22,219.219 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:08:22,225.225 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:08:22,474.474 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:08:22,481.481 INFO    ] time= 31/08/2026 01:08:22
[2026-08-31 01:08:22,499.499 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:08:22,527.527 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:08:22,648.648 INFO    ] No existing commands found in stream
[2026-08-31 01:08:27,678.678 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:08:27,681.681 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-08-31 01:08:32,000.000 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 01:08:32,003.003 INFO    ] Checking for system updates...
[2026-08-31 01:08:32,047.047 INFO    ] 200
[2026-08-31 01:08:32,050.050 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:08:32,113.113 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:08:32,115.115 INFO    ] No update needed
[2026-08-31 01:08:32,119.119 INFO    ] Checking for camera pi updates...
[2026-08-31 01:08:32,155.155 INFO    ] 200
[2026-08-31 01:08:32,158.158 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:08:32,207.207 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:08:32,265.265 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:08:32,268.268 INFO    ] No camera update needed
[2026-08-31 01:08:32,271.271 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:08:32,274.274 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:08:32,280.280 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:08:32,286.286 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:08:34,330.330 INFO    ] ================================================
[2026-08-31 01:08:34,346.346 INFO    ] Launching Daemon at Mon Aug 31 01:08:34 IST 2026
[2026-08-31 01:08:34,357.357 INFO    ] ================================================
[2026-08-31 01:08:34,925.925 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:08:34
[2026-08-31 01:08:35,509.509 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:08:35,776.776 INFO    ] Initializing speech engine...
[2026-08-31 01:08:35,785.785 INFO    ] 2026-08-31 01:08:35
[2026-08-31 01:08:36,034.034 INFO    ] 2026-08-31 01:08:36
[2026-08-31 01:08:36,070.070 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:08:36,328.328 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:08:36,334.334 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:08:36,586.586 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:08:36,594.594 INFO    ] time= 31/08/2026 01:08:36
[2026-08-31 01:08:36,612.612 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:08:36,640.640 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:08:36,748.748 INFO    ] No existing commands found in stream
[2026-08-31 01:08:41,772.772 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:08:41,774.774 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-08-31 01:08:44,141.141 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 01:08:44,144.144 INFO    ] Checking for system updates...
[2026-08-31 01:08:44,183.183 INFO    ] 200
[2026-08-31 01:08:44,186.186 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:08:44,244.244 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:08:44,247.247 INFO    ] No update needed
[2026-08-31 01:08:44,249.249 INFO    ] Checking for camera pi updates...
[2026-08-31 01:08:44,287.287 INFO    ] 200
[2026-08-31 01:08:44,290.290 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:08:44,330.330 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:08:44,411.411 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:08:44,413.413 INFO    ] No camera update needed
[2026-08-31 01:08:44,418.418 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:08:44,421.421 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:08:44,426.426 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:08:44,431.431 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:08:46,473.473 INFO    ] ================================================
[2026-08-31 01:08:46,489.489 INFO    ] Launching Daemon at Mon Aug 31 01:08:46 IST 2026
[2026-08-31 01:08:46,500.500 INFO    ] ================================================
[2026-08-31 01:08:47,071.071 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:08:47
[2026-08-31 01:08:47,661.661 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:08:47,927.927 INFO    ] Initializing speech engine...
[2026-08-31 01:08:47,941.941 INFO    ] 2026-08-31 01:08:47
[2026-08-31 01:08:48,198.198 INFO    ] 2026-08-31 01:08:48
[2026-08-31 01:08:48,233.233 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:08:48,490.490 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:08:48,495.495 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:08:48,730.730 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:08:48,752.752 INFO    ] time= 31/08/2026 01:08:48
[2026-08-31 01:08:48,769.769 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:08:48,799.799 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:08:48,920.920 INFO    ] No existing commands found in stream
[2026-08-31 01:08:53,946.946 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:08:53,949.949 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-08-31 01:08:58,056.056 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 01:08:58,059.059 INFO    ] Checking for system updates...
[2026-08-31 01:08:58,099.099 INFO    ] 200
[2026-08-31 01:08:58,101.101 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:08:58,160.160 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:08:58,162.162 INFO    ] No update needed
[2026-08-31 01:08:58,165.165 INFO    ] Checking for camera pi updates...
[2026-08-31 01:08:58,202.202 INFO    ] 200
[2026-08-31 01:08:58,204.204 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:08:58,245.245 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:08:58,342.342 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:08:58,345.345 INFO    ] No camera update needed
[2026-08-31 01:08:58,347.347 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:08:58,349.349 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:08:58,355.355 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:08:58,360.360 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:09:00,402.402 INFO    ] ================================================
[2026-08-31 01:09:00,417.417 INFO    ] Launching Daemon at Mon Aug 31 01:09:00 IST 2026
[2026-08-31 01:09:00,428.428 INFO    ] ================================================
[2026-08-31 01:09:00,995.995 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:09:00
[2026-08-31 01:09:01,709.709 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:09:02,006.006 INFO    ] Initializing speech engine...
[2026-08-31 01:09:02,016.016 INFO    ] 2026-08-31 01:09:02
[2026-08-31 01:09:02,333.333 INFO    ] 2026-08-31 01:09:02
[2026-08-31 01:09:02,382.382 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:09:02,666.666 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:09:02,691.691 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:09:02,911.911 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:09:02,958.958 INFO    ] time= 31/08/2026 01:09:02
[2026-08-31 01:09:02,975.975 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:09:02,990.990 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:09:03,127.127 INFO    ] No existing commands found in stream
[2026-08-31 01:09:08,143.143 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:09:08,145.145 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-08-31 01:09:10,186.186 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 01:09:10,189.189 INFO    ] Checking for system updates...
[2026-08-31 01:09:10,228.228 INFO    ] 200
[2026-08-31 01:09:10,231.231 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:09:10,282.282 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:09:10,285.285 INFO    ] No update needed
[2026-08-31 01:09:10,287.287 INFO    ] Checking for camera pi updates...
[2026-08-31 01:09:10,324.324 INFO    ] 200
[2026-08-31 01:09:10,327.327 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:09:10,372.372 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:09:10,453.453 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:09:10,456.456 INFO    ] No camera update needed
[2026-08-31 01:09:10,458.458 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:09:10,460.460 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:09:10,465.465 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:09:10,470.470 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:09:12,514.514 INFO    ] ================================================
[2026-08-31 01:09:12,529.529 INFO    ] Launching Daemon at Mon Aug 31 01:09:12 IST 2026
[2026-08-31 01:09:12,540.540 INFO    ] ================================================
[2026-08-31 01:09:13,196.196 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:09:13
[2026-08-31 01:09:13,868.868 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:09:14,131.131 INFO    ] Initializing speech engine...
[2026-08-31 01:09:14,146.146 INFO    ] 2026-08-31 01:09:14
[2026-08-31 01:09:14,431.431 INFO    ] 2026-08-31 01:09:14
[2026-08-31 01:09:14,465.465 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:09:14,681.681 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:09:14,738.738 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:09:14,941.941 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:09:14,995.995 INFO    ] time= 31/08/2026 01:09:14
[2026-08-31 01:09:15,007.007 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:09:15,027.027 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:09:15,145.145 INFO    ] No existing commands found in stream
[2026-08-31 01:09:20,167.167 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:09:20,170.170 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-08-31 01:09:21,919.919 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 01:09:21,921.921 INFO    ] Checking for system updates...
[2026-08-31 01:09:21,957.957 INFO    ] 200
[2026-08-31 01:09:21,960.960 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:09:22,012.012 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:09:22,014.014 INFO    ] No update needed
[2026-08-31 01:09:22,017.017 INFO    ] Checking for camera pi updates...
[2026-08-31 01:09:22,051.051 INFO    ] 200
[2026-08-31 01:09:22,053.053 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:09:22,094.094 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:09:22,176.176 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:09:22,178.178 INFO    ] No camera update needed
[2026-08-31 01:09:22,181.181 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:09:22,183.183 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:09:22,188.188 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:09:22,193.193 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:09:24,235.235 INFO    ] ================================================
[2026-08-31 01:09:24,250.250 INFO    ] Launching Daemon at Mon Aug 31 01:09:24 IST 2026
[2026-08-31 01:09:24,262.262 INFO    ] ================================================
[2026-08-31 01:09:24,831.831 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:09:24
[2026-08-31 01:09:25,414.414 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:09:25,682.682 INFO    ] Initializing speech engine...
[2026-08-31 01:09:25,691.691 INFO    ] 2026-08-31 01:09:25
[2026-08-31 01:09:25,938.938 INFO    ] 2026-08-31 01:09:25
[2026-08-31 01:09:25,973.973 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:09:26,171.171 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:09:26,228.228 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:09:26,457.457 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:09:26,492.492 INFO    ] time= 31/08/2026 01:09:26
[2026-08-31 01:09:26,498.498 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:09:26,516.516 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:09:26,646.646 INFO    ] No existing commands found in stream
[2026-08-31 01:09:31,669.669 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:09:31,672.672 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-08-31 01:09:35,146.146 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 01:09:35,148.148 INFO    ] Checking for system updates...
[2026-08-31 01:09:35,187.187 INFO    ] 200
[2026-08-31 01:09:35,190.190 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:09:35,248.248 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:09:35,250.250 INFO    ] No update needed
[2026-08-31 01:09:35,252.252 INFO    ] Checking for camera pi updates...
[2026-08-31 01:09:35,289.289 INFO    ] 200
[2026-08-31 01:09:35,291.291 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:09:35,331.331 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:09:35,415.415 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:09:35,418.418 INFO    ] No camera update needed
[2026-08-31 01:09:35,420.420 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:09:35,423.423 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:09:35,428.428 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:09:35,433.433 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:09:37,474.474 INFO    ] ================================================
[2026-08-31 01:09:37,489.489 INFO    ] Launching Daemon at Mon Aug 31 01:09:37 IST 2026
[2026-08-31 01:09:37,501.501 INFO    ] ================================================
[2026-08-31 01:09:38,140.140 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:09:38
[2026-08-31 01:09:38,801.801 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:09:39,103.103 INFO    ] Initializing speech engine...
[2026-08-31 01:09:39,115.115 INFO    ] 2026-08-31 01:09:39
[2026-08-31 01:09:39,399.399 INFO    ] 2026-08-31 01:09:39
[2026-08-31 01:09:39,437.437 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:09:39,726.726 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:09:39,732.732 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:09:39,927.927 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:09:39,946.946 INFO    ] time= 31/08/2026 01:09:39
[2026-08-31 01:09:39,956.956 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:09:39,983.983 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:09:40,090.090 INFO    ] No existing commands found in stream
[2026-08-31 01:09:45,119.119 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:09:45,123.123 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-08-31 01:09:46,041.041 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 01:09:46,044.044 INFO    ] Checking for system updates...
[2026-08-31 01:09:46,084.084 INFO    ] 200
[2026-08-31 01:09:46,087.087 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:09:46,146.146 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:09:46,149.149 INFO    ] No update needed
[2026-08-31 01:09:46,152.152 INFO    ] Checking for camera pi updates...
[2026-08-31 01:09:46,187.187 INFO    ] 200
[2026-08-31 01:09:46,190.190 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:09:46,236.236 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:09:46,315.315 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:09:46,318.318 INFO    ] No camera update needed
[2026-08-31 01:09:46,320.320 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:09:46,322.322 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:09:46,327.327 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:09:46,332.332 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:09:48,373.373 INFO    ] ================================================
[2026-08-31 01:09:48,389.389 INFO    ] Launching Daemon at Mon Aug 31 01:09:48 IST 2026
[2026-08-31 01:09:48,400.400 INFO    ] ================================================
[2026-08-31 01:09:48,966.966 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:09:48
[2026-08-31 01:09:49,549.549 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:09:49,837.837 INFO    ] Initializing speech engine...
[2026-08-31 01:09:49,845.845 INFO    ] 2026-08-31 01:09:49
[2026-08-31 01:09:50,120.120 INFO    ] 2026-08-31 01:09:50
[2026-08-31 01:09:50,173.173 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:09:50,403.403 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:09:50,409.409 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:09:50,632.632 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:09:50,670.670 INFO    ] time= 31/08/2026 01:09:50
[2026-08-31 01:09:50,687.687 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:09:50,711.711 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:09:50,847.847 INFO    ] No existing commands found in stream
[2026-08-31 01:09:55,873.873 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:09:55,876.876 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-08-31 01:09:57,241.241 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 01:09:57,244.244 INFO    ] Checking for system updates...
[2026-08-31 01:09:57,281.281 INFO    ] 200
[2026-08-31 01:09:57,284.284 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:09:57,343.343 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:09:57,346.346 INFO    ] No update needed
[2026-08-31 01:09:57,349.349 INFO    ] Checking for camera pi updates...
[2026-08-31 01:09:57,386.386 INFO    ] 200
[2026-08-31 01:09:57,389.389 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:09:57,434.434 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:09:57,538.538 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:09:57,541.541 INFO    ] No camera update needed
[2026-08-31 01:09:57,544.544 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:09:57,546.546 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:09:57,552.552 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:09:57,558.558 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:09:59,598.598 INFO    ] ================================================
[2026-08-31 01:09:59,613.613 INFO    ] Launching Daemon at Mon Aug 31 01:09:59 IST 2026
[2026-08-31 01:09:59,624.624 INFO    ] ================================================
[2026-08-31 01:10:00,203.203 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:10:00
[2026-08-31 01:10:00,783.783 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:10:01,051.051 INFO    ] Initializing speech engine...
[2026-08-31 01:10:01,060.060 INFO    ] 2026-08-31 01:10:01
[2026-08-31 01:10:01,308.308 INFO    ] 2026-08-31 01:10:01
[2026-08-31 01:10:01,403.403 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:10:01,788.788 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:10:01,792.792 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:10:02,073.073 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:10:02,095.095 INFO    ] time= 31/08/2026 01:10:02
[2026-08-31 01:10:02,099.099 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:10:02,103.103 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:10:02,241.241 INFO    ] No existing commands found in stream
[2026-08-31 01:10:07,251.251 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:10:07,254.254 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-08-31 01:10:08,909.909 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 01:10:08,912.912 INFO    ] Checking for system updates...
[2026-08-31 01:10:08,949.949 INFO    ] 200
[2026-08-31 01:10:08,952.952 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:10:09,014.014 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:10:09,017.017 INFO    ] No update needed
[2026-08-31 01:10:09,020.020 INFO    ] Checking for camera pi updates...
[2026-08-31 01:10:09,054.054 INFO    ] 200
[2026-08-31 01:10:09,058.058 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:10:09,105.105 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:10:09,186.186 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:10:09,188.188 INFO    ] No camera update needed
[2026-08-31 01:10:09,191.191 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:10:09,193.193 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:10:09,198.198 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:10:09,203.203 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:10:11,246.246 INFO    ] ================================================
[2026-08-31 01:10:11,261.261 INFO    ] Launching Daemon at Mon Aug 31 01:10:11 IST 2026
[2026-08-31 01:10:11,271.271 INFO    ] ================================================
[2026-08-31 01:10:11,837.837 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:10:11
[2026-08-31 01:10:12,423.423 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:10:12,671.671 INFO    ] Initializing speech engine...
[2026-08-31 01:10:12,690.690 INFO    ] 2026-08-31 01:10:12
[2026-08-31 01:10:12,960.960 INFO    ] 2026-08-31 01:10:12
[2026-08-31 01:10:12,994.994 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:10:13,227.227 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:10:13,278.278 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:10:13,513.513 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:10:13,551.551 INFO    ] time= 31/08/2026 01:10:13
[2026-08-31 01:10:13,570.570 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:10:13,600.600 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:10:13,754.754 INFO    ] No existing commands found in stream
[2026-08-31 01:10:18,785.785 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:10:18,789.789 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-08-31 01:10:23,100.100 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 01:10:23,103.103 INFO    ] Checking for system updates...
[2026-08-31 01:10:23,140.140 INFO    ] 200
[2026-08-31 01:10:23,143.143 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:10:23,195.195 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:10:23,197.197 INFO    ] No update needed
[2026-08-31 01:10:23,200.200 INFO    ] Checking for camera pi updates...
[2026-08-31 01:10:23,233.233 INFO    ] 200
[2026-08-31 01:10:23,236.236 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:10:23,284.284 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:10:23,373.373 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:10:23,375.375 INFO    ] No camera update needed
[2026-08-31 01:10:23,377.377 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:10:23,380.380 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:10:23,385.385 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:10:23,390.390 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:10:25,430.430 INFO    ] ================================================
[2026-08-31 01:10:25,445.445 INFO    ] Launching Daemon at Mon Aug 31 01:10:25 IST 2026
[2026-08-31 01:10:25,456.456 INFO    ] ================================================
[2026-08-31 01:10:26,128.128 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:10:26
[2026-08-31 01:10:26,815.815 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:10:27,122.122 INFO    ] Initializing speech engine...
[2026-08-31 01:10:27,130.130 INFO    ] 2026-08-31 01:10:27
[2026-08-31 01:10:27,449.449 INFO    ] 2026-08-31 01:10:27
[2026-08-31 01:10:27,534.534 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:10:27,742.742 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:10:27,745.745 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:10:27,963.963 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:10:27,983.983 INFO    ] time= 31/08/2026 01:10:27
[2026-08-31 01:10:28,015.015 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:10:28,024.024 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:10:28,194.194 INFO    ] No existing commands found in stream
[2026-08-31 01:10:33,220.220 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:10:33,224.224 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-08-31 01:10:34,700.700 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 01:10:34,703.703 INFO    ] Checking for system updates...
[2026-08-31 01:10:34,744.744 INFO    ] 200
[2026-08-31 01:10:34,747.747 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:10:34,808.808 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:10:34,810.810 INFO    ] No update needed
[2026-08-31 01:10:34,813.813 INFO    ] Checking for camera pi updates...
[2026-08-31 01:10:34,846.846 INFO    ] 200
[2026-08-31 01:10:34,849.849 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:10:34,889.889 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:10:34,971.971 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:10:34,974.974 INFO    ] No camera update needed
[2026-08-31 01:10:34,976.976 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:10:34,978.978 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:10:34,984.984 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:10:34,989.989 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:10:37,028.028 INFO    ] ================================================
[2026-08-31 01:10:37,043.043 INFO    ] Launching Daemon at Mon Aug 31 01:10:37 IST 2026
[2026-08-31 01:10:37,054.054 INFO    ] ================================================
[2026-08-31 01:10:37,634.634 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:10:37
[2026-08-31 01:10:38,230.230 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:10:38,506.506 INFO    ] Initializing speech engine...
[2026-08-31 01:10:38,514.514 INFO    ] 2026-08-31 01:10:38
[2026-08-31 01:10:38,785.785 INFO    ] 2026-08-31 01:10:38
[2026-08-31 01:10:38,828.828 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:10:39,071.071 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:10:39,076.076 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:10:39,308.308 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:10:39,315.315 INFO    ] time= 31/08/2026 01:10:39
[2026-08-31 01:10:39,333.333 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:10:39,356.356 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:10:39,492.492 INFO    ] No existing commands found in stream
[2026-08-31 01:10:44,527.527 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:10:44,530.530 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-08-31 01:10:45,638.638 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 01:10:45,640.640 INFO    ] Checking for system updates...
[2026-08-31 01:10:45,681.681 INFO    ] 200
[2026-08-31 01:10:45,683.683 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:10:45,736.736 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:10:45,739.739 INFO    ] No update needed
[2026-08-31 01:10:45,742.742 INFO    ] Checking for camera pi updates...
[2026-08-31 01:10:45,787.787 INFO    ] 200
[2026-08-31 01:10:45,789.789 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:10:45,835.835 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:10:45,924.924 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:10:45,927.927 INFO    ] No camera update needed
[2026-08-31 01:10:45,929.929 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:10:45,932.932 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:10:45,937.937 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:10:45,942.942 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:10:47,983.983 INFO    ] ================================================
[2026-08-31 01:10:48,998.998 INFO    ] Launching Daemon at Mon Aug 31 01:10:47 IST 2026
[2026-08-31 01:10:48,008.008 INFO    ] ================================================
[2026-08-31 01:10:48,577.577 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:10:48
[2026-08-31 01:10:49,162.162 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:10:49,430.430 INFO    ] Initializing speech engine...
[2026-08-31 01:10:49,438.438 INFO    ] 2026-08-31 01:10:49
[2026-08-31 01:10:49,684.684 INFO    ] 2026-08-31 01:10:49
[2026-08-31 01:10:49,720.720 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:10:49,975.975 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:10:49,981.981 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:10:50,224.224 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:10:50,240.240 INFO    ] time= 31/08/2026 01:10:50
[2026-08-31 01:10:50,246.246 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:10:50,263.263 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:10:50,384.384 INFO    ] No existing commands found in stream
[2026-08-31 01:10:55,404.404 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:10:55,407.407 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-08-31 01:10:59,642.642 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 01:10:59,645.645 INFO    ] Checking for system updates...
[2026-08-31 01:10:59,682.682 INFO    ] 200
[2026-08-31 01:10:59,685.685 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:10:59,737.737 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:10:59,740.740 INFO    ] No update needed
[2026-08-31 01:10:59,743.743 INFO    ] Checking for camera pi updates...
[2026-08-31 01:10:59,777.777 INFO    ] 200
[2026-08-31 01:10:59,780.780 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:10:59,827.827 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:10:59,912.912 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:10:59,915.915 INFO    ] No camera update needed
[2026-08-31 01:10:59,918.918 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:10:59,920.920 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:10:59,927.927 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:10:59,933.933 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:11:01,987.987 INFO    ] ================================================
[2026-08-31 01:11:02,005.005 INFO    ] Launching Daemon at Mon Aug 31 01:11:01 IST 2026
[2026-08-31 01:11:02,022.022 INFO    ] ================================================
[2026-08-31 01:11:02,673.673 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:11:02
[2026-08-31 01:11:03,369.369 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:11:03,721.721 INFO    ] Initializing speech engine...
[2026-08-31 01:11:03,731.731 INFO    ] 2026-08-31 01:11:03
[2026-08-31 01:11:04,036.036 INFO    ] 2026-08-31 01:11:04
[2026-08-31 01:11:04,126.126 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:11:04,339.339 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:11:04,348.348 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:11:04,540.540 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:11:04,563.563 INFO    ] time= 31/08/2026 01:11:04
[2026-08-31 01:11:04,591.591 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:11:04,600.600 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:11:04,759.759 INFO    ] No existing commands found in stream
[2026-08-31 01:11:09,790.790 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:11:09,793.793 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-08-31 01:11:12,729.729 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 01:11:12,732.732 INFO    ] Checking for system updates...
[2026-08-31 01:11:12,773.773 INFO    ] 200
[2026-08-31 01:11:12,776.776 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:11:12,830.830 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:11:12,833.833 INFO    ] No update needed
[2026-08-31 01:11:12,835.835 INFO    ] Checking for camera pi updates...
[2026-08-31 01:11:12,874.874 INFO    ] 200
[2026-08-31 01:11:12,877.877 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:11:12,918.918 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:11:13,008.008 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:11:13,011.011 INFO    ] No camera update needed
[2026-08-31 01:11:13,014.014 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:11:13,016.016 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:11:13,026.026 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:11:13,031.031 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:11:15,070.070 INFO    ] ================================================
[2026-08-31 01:11:15,085.085 INFO    ] Launching Daemon at Mon Aug 31 01:11:15 IST 2026
[2026-08-31 01:11:15,096.096 INFO    ] ================================================
[2026-08-31 01:11:15,710.710 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:11:15
[2026-08-31 01:11:16,297.297 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:11:16,554.554 INFO    ] Initializing speech engine...
[2026-08-31 01:11:16,569.569 INFO    ] 2026-08-31 01:11:16
[2026-08-31 01:11:16,857.857 INFO    ] 2026-08-31 01:11:16
[2026-08-31 01:11:16,891.891 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:11:17,136.136 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:11:17,173.173 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:11:17,384.384 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:11:17,443.443 INFO    ] time= 31/08/2026 01:11:17
[2026-08-31 01:11:17,450.450 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:11:17,465.465 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:11:17,596.596 INFO    ] No existing commands found in stream
[2026-08-31 01:11:22,613.613 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:11:22,615.615 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-08-31 01:11:25,268.268 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 01:11:25,271.271 INFO    ] Checking for system updates...
[2026-08-31 01:11:25,311.311 INFO    ] 200
[2026-08-31 01:11:25,314.314 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:11:25,374.374 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:11:25,377.377 INFO    ] No update needed
[2026-08-31 01:11:25,380.380 INFO    ] Checking for camera pi updates...
[2026-08-31 01:11:25,419.419 INFO    ] 200
[2026-08-31 01:11:25,422.422 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:11:25,464.464 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:11:25,538.538 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:11:25,540.540 INFO    ] No camera update needed
[2026-08-31 01:11:25,543.543 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:11:25,546.546 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:11:25,552.552 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:11:25,558.558 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:11:27,600.600 INFO    ] ================================================
[2026-08-31 01:11:27,615.615 INFO    ] Launching Daemon at Mon Aug 31 01:11:27 IST 2026
[2026-08-31 01:11:27,626.626 INFO    ] ================================================
[2026-08-31 01:11:28,225.225 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:11:28
[2026-08-31 01:11:28,811.811 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:11:29,059.059 INFO    ] Initializing speech engine...
[2026-08-31 01:11:29,074.074 INFO    ] 2026-08-31 01:11:29
[2026-08-31 01:11:29,341.341 INFO    ] 2026-08-31 01:11:29
[2026-08-31 01:11:29,377.377 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:11:29,634.634 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:11:29,643.643 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:11:29,876.876 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:11:29,910.910 INFO    ] time= 31/08/2026 01:11:29
[2026-08-31 01:11:29,926.926 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:11:29,935.935 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:11:30,068.068 INFO    ] No existing commands found in stream
[2026-08-31 01:11:35,080.080 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:11:35,083.083 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-08-31 01:11:36,665.665 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 01:11:36,667.667 INFO    ] Checking for system updates...
[2026-08-31 01:11:36,702.702 INFO    ] 200
[2026-08-31 01:11:36,705.705 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:11:36,757.757 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:11:36,760.760 INFO    ] No update needed
[2026-08-31 01:11:36,762.762 INFO    ] Checking for camera pi updates...
[2026-08-31 01:11:36,796.796 INFO    ] 200
[2026-08-31 01:11:36,798.798 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:11:36,844.844 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:11:36,925.925 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:11:36,928.928 INFO    ] No camera update needed
[2026-08-31 01:11:36,930.930 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:11:36,933.933 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:11:36,938.938 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:11:36,943.943 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:11:38,986.986 INFO    ] ================================================
[2026-08-31 01:11:39,001.001 INFO    ] Launching Daemon at Mon Aug 31 01:11:38 IST 2026
[2026-08-31 01:11:39,011.011 INFO    ] ================================================
[2026-08-31 01:11:39,593.593 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:11:39
[2026-08-31 01:11:40,192.192 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:11:40,438.438 INFO    ] Initializing speech engine...
[2026-08-31 01:11:40,445.445 INFO    ] 2026-08-31 01:11:40
[2026-08-31 01:11:40,723.723 INFO    ] 2026-08-31 01:11:40
[2026-08-31 01:11:40,759.759 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:11:41,038.038 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:11:41,043.043 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:11:41,274.274 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:11:41,282.282 INFO    ] time= 31/08/2026 01:11:41
[2026-08-31 01:11:41,300.300 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:11:41,329.329 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:11:41,466.466 INFO    ] No existing commands found in stream
[2026-08-31 01:11:46,491.491 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:11:46,493.493 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-08-31 01:11:47,839.839 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 01:11:47,841.841 INFO    ] Checking for system updates...
[2026-08-31 01:11:47,881.881 INFO    ] 200
[2026-08-31 01:11:47,884.884 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:11:47,939.939 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:11:47,941.941 INFO    ] No update needed
[2026-08-31 01:11:47,944.944 INFO    ] Checking for camera pi updates...
[2026-08-31 01:11:47,978.978 INFO    ] 200
[2026-08-31 01:11:47,980.980 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:11:48,022.022 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:11:48,105.105 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:11:48,108.108 INFO    ] No camera update needed
[2026-08-31 01:11:48,110.110 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:11:48,113.113 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:11:48,118.118 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:11:48,123.123 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:11:50,164.164 INFO    ] ================================================
[2026-08-31 01:11:50,179.179 INFO    ] Launching Daemon at Mon Aug 31 01:11:50 IST 2026
[2026-08-31 01:11:50,190.190 INFO    ] ================================================
[2026-08-31 01:11:50,756.756 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:11:50
[2026-08-31 01:11:51,335.335 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:11:51,603.603 INFO    ] Initializing speech engine...
[2026-08-31 01:11:51,612.612 INFO    ] 2026-08-31 01:11:51
[2026-08-31 01:11:51,863.863 INFO    ] 2026-08-31 01:11:51
[2026-08-31 01:11:51,922.922 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:11:52,174.174 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:11:52,182.182 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:11:52,392.392 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:11:52,423.423 INFO    ] time= 31/08/2026 01:11:52
[2026-08-31 01:11:52,439.439 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:11:52,447.447 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:11:52,575.575 INFO    ] No existing commands found in stream
[2026-08-31 01:11:57,589.589 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:11:57,592.592 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-08-31 01:11:59,897.897 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 01:11:59,900.900 INFO    ] Checking for system updates...
[2026-08-31 01:11:59,939.939 INFO    ] 200
[2026-08-31 01:11:59,942.942 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:11:59,994.994 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:11:59,997.997 INFO    ] No update needed
[2026-08-31 01:11:59,999.999 INFO    ] Checking for camera pi updates...
[2026-08-31 01:12:00,034.034 INFO    ] 200
[2026-08-31 01:12:00,037.037 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:12:00,077.077 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:12:00,169.169 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:12:00,172.172 INFO    ] No camera update needed
[2026-08-31 01:12:00,175.175 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:12:00,177.177 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:12:00,183.183 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:12:00,189.189 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:12:02,237.237 INFO    ] ================================================
[2026-08-31 01:12:02,263.263 INFO    ] Launching Daemon at Mon Aug 31 01:12:02 IST 2026
[2026-08-31 01:12:02,278.278 INFO    ] ================================================
[2026-08-31 01:12:02,919.919 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:12:02
[2026-08-31 01:12:03,582.582 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:12:03,877.877 INFO    ] Initializing speech engine...
[2026-08-31 01:12:03,883.883 INFO    ] 2026-08-31 01:12:03
[2026-08-31 01:12:04,144.144 INFO    ] 2026-08-31 01:12:04
[2026-08-31 01:12:04,198.198 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:12:04,487.487 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:12:04,547.547 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:12:04,699.699 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:12:04,728.728 INFO    ] time= 31/08/2026 01:12:04
[2026-08-31 01:12:04,736.736 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:12:04,754.754 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:12:04,929.929 INFO    ] No existing commands found in stream
[2026-08-31 01:12:09,944.944 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:12:09,947.947 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-08-31 01:12:13,019.019 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 01:12:13,021.021 INFO    ] Checking for system updates...
[2026-08-31 01:12:13,061.061 INFO    ] 200
[2026-08-31 01:12:13,063.063 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:12:13,116.116 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:12:13,119.119 INFO    ] No update needed
[2026-08-31 01:12:13,121.121 INFO    ] Checking for camera pi updates...
[2026-08-31 01:12:13,165.165 INFO    ] 200
[2026-08-31 01:12:13,168.168 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:12:13,212.212 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:12:13,264.264 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:12:13,266.266 INFO    ] No camera update needed
[2026-08-31 01:12:13,269.269 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:12:13,271.271 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:12:13,277.277 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:12:13,282.282 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:12:15,325.325 INFO    ] ================================================
[2026-08-31 01:12:15,341.341 INFO    ] Launching Daemon at Mon Aug 31 01:12:15 IST 2026
[2026-08-31 01:12:15,353.353 INFO    ] ================================================
[2026-08-31 01:12:15,934.934 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:12:15
[2026-08-31 01:12:16,535.535 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:12:16,814.814 INFO    ] Initializing speech engine...
[2026-08-31 01:12:16,822.822 INFO    ] 2026-08-31 01:12:16
[2026-08-31 01:12:17,066.066 INFO    ] 2026-08-31 01:12:17
[2026-08-31 01:12:17,134.134 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:12:17,384.384 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:12:17,393.393 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:12:17,658.658 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:12:17,685.685 INFO    ] time= 31/08/2026 01:12:17
[2026-08-31 01:12:17,691.691 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:12:17,710.710 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:12:17,849.849 INFO    ] No existing commands found in stream
[2026-08-31 01:12:22,868.868 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:12:22,871.871 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-08-31 01:12:27,095.095 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 01:12:27,098.098 INFO    ] Checking for system updates...
[2026-08-31 01:12:27,138.138 INFO    ] 200
[2026-08-31 01:12:27,140.140 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:12:27,193.193 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:12:27,195.195 INFO    ] No update needed
[2026-08-31 01:12:27,198.198 INFO    ] Checking for camera pi updates...
[2026-08-31 01:12:27,232.232 INFO    ] 200
[2026-08-31 01:12:27,235.235 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:12:27,276.276 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:12:27,359.359 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:12:27,362.362 INFO    ] No camera update needed
[2026-08-31 01:12:27,364.364 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:12:27,367.367 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:12:27,373.373 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:12:27,379.379 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:12:29,420.420 INFO    ] ================================================
[2026-08-31 01:12:29,435.435 INFO    ] Launching Daemon at Mon Aug 31 01:12:29 IST 2026
[2026-08-31 01:12:29,445.445 INFO    ] ================================================
[2026-08-31 01:12:30,012.012 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:12:30
[2026-08-31 01:12:30,599.599 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:12:30,866.866 INFO    ] Initializing speech engine...
[2026-08-31 01:12:30,875.875 INFO    ] 2026-08-31 01:12:30
[2026-08-31 01:12:31,121.121 INFO    ] 2026-08-31 01:12:31
[2026-08-31 01:12:31,155.155 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:12:31,411.411 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:12:31,417.417 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:12:31,655.655 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:12:31,674.674 INFO    ] time= 31/08/2026 01:12:31
[2026-08-31 01:12:31,680.680 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:12:31,697.697 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:12:31,828.828 INFO    ] No existing commands found in stream
[2026-08-31 01:12:36,848.848 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:12:36,850.850 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-08-31 01:12:37,718.718 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 01:12:37,720.720 INFO    ] Checking for system updates...
[2026-08-31 01:12:37,755.755 INFO    ] 200
[2026-08-31 01:12:37,758.758 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:12:37,811.811 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:12:37,813.813 INFO    ] No update needed
[2026-08-31 01:12:37,816.816 INFO    ] Checking for camera pi updates...
[2026-08-31 01:12:37,849.849 INFO    ] 200
[2026-08-31 01:12:37,851.851 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:12:37,891.891 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:12:37,994.994 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:12:37,996.996 INFO    ] No camera update needed
[2026-08-31 01:12:37,999.999 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:12:38,001.001 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:12:38,006.006 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:12:38,012.012 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:12:40,051.051 INFO    ] ================================================
[2026-08-31 01:12:40,066.066 INFO    ] Launching Daemon at Mon Aug 31 01:12:40 IST 2026
[2026-08-31 01:12:40,077.077 INFO    ] ================================================
[2026-08-31 01:12:40,723.723 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:12:40
[2026-08-31 01:12:41,320.320 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:12:41,595.595 INFO    ] Initializing speech engine...
[2026-08-31 01:12:41,604.604 INFO    ] 2026-08-31 01:12:41
[2026-08-31 01:12:41,864.864 INFO    ] 2026-08-31 01:12:41
[2026-08-31 01:12:41,916.916 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:12:42,263.263 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:12:42,305.305 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:12:42,536.536 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:12:42,557.557 INFO    ] time= 31/08/2026 01:12:42
[2026-08-31 01:12:42,621.621 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:12:42,652.652 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:12:42,797.797 INFO    ] No existing commands found in stream
[2026-08-31 01:12:47,811.811 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:12:47,814.814 INFO    ] Waiting 4.00 seconds before fallback handling...
[2026-08-31 01:12:52,443.443 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 01:12:52,446.446 INFO    ] Checking for system updates...
[2026-08-31 01:12:52,481.481 INFO    ] 200
[2026-08-31 01:12:52,484.484 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:12:52,542.542 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:12:52,544.544 INFO    ] No update needed
[2026-08-31 01:12:52,546.546 INFO    ] Checking for camera pi updates...
[2026-08-31 01:12:52,583.583 INFO    ] 200
[2026-08-31 01:12:52,585.585 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:12:52,629.629 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:12:52,712.712 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:12:52,715.715 INFO    ] No camera update needed
[2026-08-31 01:12:52,717.717 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:12:52,720.720 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:12:52,725.725 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:12:52,730.730 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:12:54,771.771 INFO    ] ================================================
[2026-08-31 01:12:54,786.786 INFO    ] Launching Daemon at Mon Aug 31 01:12:54 IST 2026
[2026-08-31 01:12:54,798.798 INFO    ] ================================================
[2026-08-31 01:12:55,367.367 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:12:55
[2026-08-31 01:12:55,954.954 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:12:56,222.222 INFO    ] Initializing speech engine...
[2026-08-31 01:12:56,232.232 INFO    ] 2026-08-31 01:12:56
[2026-08-31 01:12:56,477.477 INFO    ] 2026-08-31 01:12:56
[2026-08-31 01:12:56,513.513 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:12:56,764.764 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:12:56,774.774 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:12:57,015.015 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:12:57,033.033 INFO    ] time= 31/08/2026 01:12:57
[2026-08-31 01:12:57,048.048 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:12:57,056.056 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:12:57,183.183 INFO    ] No existing commands found in stream
[2026-08-31 01:13:02,197.197 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:13:02,201.201 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-08-31 01:13:05,582.582 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 01:13:05,585.585 INFO    ] Checking for system updates...
[2026-08-31 01:13:05,623.623 INFO    ] 200
[2026-08-31 01:13:05,625.625 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:13:05,681.681 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:13:05,683.683 INFO    ] No update needed
[2026-08-31 01:13:05,686.686 INFO    ] Checking for camera pi updates...
[2026-08-31 01:13:05,719.719 INFO    ] 200
[2026-08-31 01:13:05,721.721 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:13:05,765.765 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:13:05,944.944 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:13:05,946.946 INFO    ] No camera update needed
[2026-08-31 01:13:05,949.949 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:13:05,951.951 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:13:05,956.956 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:13:05,961.961 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:13:08,001.001 INFO    ] ================================================
[2026-08-31 01:13:08,016.016 INFO    ] Launching Daemon at Mon Aug 31 01:13:08 IST 2026
[2026-08-31 01:13:08,026.026 INFO    ] ================================================
[2026-08-31 01:13:08,596.596 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:13:08
[2026-08-31 01:13:09,180.180 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:13:09,449.449 INFO    ] Initializing speech engine...
[2026-08-31 01:13:09,458.458 INFO    ] 2026-08-31 01:13:09
[2026-08-31 01:13:09,708.708 INFO    ] 2026-08-31 01:13:09
[2026-08-31 01:13:09,743.743 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:13:10,005.005 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:13:10,009.009 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:13:10,227.227 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:13:10,272.272 INFO    ] time= 31/08/2026 01:13:10
[2026-08-31 01:13:10,278.278 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:13:10,296.296 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:13:10,427.427 INFO    ] No existing commands found in stream
[2026-08-31 01:13:15,442.442 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:13:15,445.445 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-08-31 01:13:17,836.836 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 01:13:17,839.839 INFO    ] Checking for system updates...
[2026-08-31 01:13:17,878.878 INFO    ] 200
[2026-08-31 01:13:17,880.880 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:13:17,932.932 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:13:17,934.934 INFO    ] No update needed
[2026-08-31 01:13:17,937.937 INFO    ] Checking for camera pi updates...
[2026-08-31 01:13:17,970.970 INFO    ] 200
[2026-08-31 01:13:17,972.972 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:13:18,015.015 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:13:18,097.097 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:13:18,099.099 INFO    ] No camera update needed
[2026-08-31 01:13:18,102.102 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:13:18,104.104 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:13:18,109.109 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:13:18,117.117 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:13:20,160.160 INFO    ] ================================================
[2026-08-31 01:13:20,175.175 INFO    ] Launching Daemon at Mon Aug 31 01:13:20 IST 2026
[2026-08-31 01:13:20,186.186 INFO    ] ================================================
[2026-08-31 01:13:20,771.771 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:13:20
[2026-08-31 01:13:21,430.430 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:13:21,729.729 INFO    ] Initializing speech engine...
[2026-08-31 01:13:21,741.741 INFO    ] 2026-08-31 01:13:21
[2026-08-31 01:13:22,018.018 INFO    ] 2026-08-31 01:13:22
[2026-08-31 01:13:22,064.064 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:13:22,413.413 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:13:22,440.440 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:13:22,681.681 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:13:22,707.707 INFO    ] time= 31/08/2026 01:13:22
[2026-08-31 01:13:22,767.767 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:13:22,804.804 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:13:22,953.953 INFO    ] No existing commands found in stream
[2026-08-31 01:13:27,974.974 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:13:27,978.978 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-08-31 01:13:31,396.396 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 01:13:31,399.399 INFO    ] Checking for system updates...
[2026-08-31 01:13:31,438.438 INFO    ] 200
[2026-08-31 01:13:31,441.441 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:13:31,499.499 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:13:31,501.501 INFO    ] No update needed
[2026-08-31 01:13:31,503.503 INFO    ] Checking for camera pi updates...
[2026-08-31 01:13:31,540.540 INFO    ] 200
[2026-08-31 01:13:31,542.542 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:13:31,587.587 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:13:31,638.638 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:13:31,641.641 INFO    ] No camera update needed
[2026-08-31 01:13:31,643.643 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:13:31,645.645 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:13:31,650.650 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:13:31,655.655 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:13:33,697.697 INFO    ] ================================================
[2026-08-31 01:13:33,712.712 INFO    ] Launching Daemon at Mon Aug 31 01:13:33 IST 2026
[2026-08-31 01:13:33,722.722 INFO    ] ================================================
[2026-08-31 01:13:34,304.304 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:13:34
[2026-08-31 01:13:34,903.903 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:13:35,174.174 INFO    ] Initializing speech engine...
[2026-08-31 01:13:35,194.194 INFO    ] 2026-08-31 01:13:35
[2026-08-31 01:13:35,465.465 INFO    ] 2026-08-31 01:13:35
[2026-08-31 01:13:35,502.502 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:13:35,726.726 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:13:35,767.767 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:13:35,947.947 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:13:35,969.969 INFO    ] time= 31/08/2026 01:13:35
[2026-08-31 01:13:36,028.028 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:13:36,067.067 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:13:36,226.226 INFO    ] No existing commands found in stream
[2026-08-31 01:13:41,256.256 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:13:41,259.259 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-08-31 01:13:43,675.675 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 01:13:43,678.678 INFO    ] Checking for system updates...
[2026-08-31 01:13:43,713.713 INFO    ] 200
[2026-08-31 01:13:43,715.715 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:13:43,770.770 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:13:43,772.772 INFO    ] No update needed
[2026-08-31 01:13:43,775.775 INFO    ] Checking for camera pi updates...
[2026-08-31 01:13:43,808.808 INFO    ] 200
[2026-08-31 01:13:43,810.810 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:13:43,854.854 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:13:43,905.905 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:13:43,908.908 INFO    ] No camera update needed
[2026-08-31 01:13:43,910.910 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:13:43,912.912 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:13:43,917.917 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:13:43,922.922 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:13:45,963.963 INFO    ] ================================================
[2026-08-31 01:13:45,978.978 INFO    ] Launching Daemon at Mon Aug 31 01:13:45 IST 2026
[2026-08-31 01:13:45,989.989 INFO    ] ================================================
[2026-08-31 01:13:46,555.555 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:13:46
[2026-08-31 01:13:47,137.137 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:13:47,384.384 INFO    ] Initializing speech engine...
[2026-08-31 01:13:47,409.409 INFO    ] 2026-08-31 01:13:47
[2026-08-31 01:13:47,664.664 INFO    ] 2026-08-31 01:13:47
[2026-08-31 01:13:47,699.699 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:13:47,980.980 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:13:47,986.986 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:13:48,220.220 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:13:48,227.227 INFO    ] time= 31/08/2026 01:13:48
[2026-08-31 01:13:48,242.242 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:13:48,251.251 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:13:48,383.383 INFO    ] No existing commands found in stream
[2026-08-31 01:13:53,399.399 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:13:53,403.403 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-08-31 01:13:56,477.477 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 01:13:56,479.479 INFO    ] Checking for system updates...
[2026-08-31 01:13:56,514.514 INFO    ] 200
[2026-08-31 01:13:56,517.517 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:13:56,573.573 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:13:56,576.576 INFO    ] No update needed
[2026-08-31 01:13:56,578.578 INFO    ] Checking for camera pi updates...
[2026-08-31 01:13:56,617.617 INFO    ] 200
[2026-08-31 01:13:56,619.619 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:13:56,660.660 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:13:56,740.740 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:13:56,742.742 INFO    ] No camera update needed
[2026-08-31 01:13:56,744.744 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:13:56,746.746 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:13:56,752.752 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:13:56,757.757 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:13:58,798.798 INFO    ] ================================================
[2026-08-31 01:13:58,812.812 INFO    ] Launching Daemon at Mon Aug 31 01:13:58 IST 2026
[2026-08-31 01:13:58,823.823 INFO    ] ================================================
[2026-08-31 01:13:59,456.456 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:13:59
[2026-08-31 01:14:00,106.106 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:14:00,401.401 INFO    ] Initializing speech engine...
[2026-08-31 01:14:00,410.410 INFO    ] 2026-08-31 01:14:00
[2026-08-31 01:14:00,693.693 INFO    ] 2026-08-31 01:14:00
[2026-08-31 01:14:00,737.737 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:14:01,023.023 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:14:01,028.028 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:14:01,222.222 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:14:01,229.229 INFO    ] time= 31/08/2026 01:14:01
[2026-08-31 01:14:01,251.251 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:14:01,278.278 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:14:01,408.408 INFO    ] No existing commands found in stream
[2026-08-31 01:14:06,428.428 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:14:06,432.432 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-08-31 01:14:09,623.623 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 01:14:09,626.626 INFO    ] Checking for system updates...
[2026-08-31 01:14:09,665.665 INFO    ] 200
[2026-08-31 01:14:09,668.668 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:14:09,726.726 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:14:09,729.729 INFO    ] No update needed
[2026-08-31 01:14:09,732.732 INFO    ] Checking for camera pi updates...
[2026-08-31 01:14:09,769.769 INFO    ] 200
[2026-08-31 01:14:09,772.772 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:14:09,813.813 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:14:09,910.910 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:14:09,913.913 INFO    ] No camera update needed
[2026-08-31 01:14:09,915.915 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:14:09,918.918 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:14:09,924.924 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:14:09,930.930 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:14:11,970.970 INFO    ] ================================================
[2026-08-31 01:14:11,985.985 INFO    ] Launching Daemon at Mon Aug 31 01:14:11 IST 2026
[2026-08-31 01:14:12,995.995 INFO    ] ================================================
[2026-08-31 01:14:12,573.573 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:14:12
[2026-08-31 01:14:13,171.171 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:14:13,451.451 INFO    ] Initializing speech engine...
[2026-08-31 01:14:13,460.460 INFO    ] 2026-08-31 01:14:13
[2026-08-31 01:14:13,718.718 INFO    ] 2026-08-31 01:14:13
[2026-08-31 01:14:13,748.748 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:14:13,995.995 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:14:14,004.004 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:14:14,258.258 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:14:14,276.276 INFO    ] time= 31/08/2026 01:14:14
[2026-08-31 01:14:14,284.284 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:14:14,311.311 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:14:14,441.441 INFO    ] No existing commands found in stream
[2026-08-31 01:14:19,472.472 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:14:19,474.474 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-08-31 01:14:22,544.544 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 01:14:22,546.546 INFO    ] Checking for system updates...
[2026-08-31 01:14:22,584.584 INFO    ] 200
[2026-08-31 01:14:22,587.587 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:14:22,639.639 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:14:22,641.641 INFO    ] No update needed
[2026-08-31 01:14:22,644.644 INFO    ] Checking for camera pi updates...
[2026-08-31 01:14:22,680.680 INFO    ] 200
[2026-08-31 01:14:22,682.682 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:14:22,726.726 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:14:22,808.808 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:14:22,811.811 INFO    ] No camera update needed
[2026-08-31 01:14:22,813.813 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:14:22,816.816 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:14:22,821.821 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:14:22,826.826 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:14:24,867.867 INFO    ] ================================================
[2026-08-31 01:14:24,882.882 INFO    ] Launching Daemon at Mon Aug 31 01:14:24 IST 2026
[2026-08-31 01:14:24,892.892 INFO    ] ================================================
[2026-08-31 01:14:25,457.457 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:14:25
[2026-08-31 01:14:26,063.063 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:14:26,342.342 INFO    ] Initializing speech engine...
[2026-08-31 01:14:26,347.347 INFO    ] 2026-08-31 01:14:26
[2026-08-31 01:14:26,608.608 INFO    ] 2026-08-31 01:14:26
[2026-08-31 01:14:26,638.638 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:14:26,889.889 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:14:26,895.895 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:14:27,150.150 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:14:27,157.157 INFO    ] time= 31/08/2026 01:14:27
[2026-08-31 01:14:27,177.177 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:14:27,203.203 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:14:27,328.328 INFO    ] No existing commands found in stream
[2026-08-31 01:14:32,358.358 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:14:32,361.361 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-08-31 01:14:34,595.595 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 01:14:34,598.598 INFO    ] Checking for system updates...
[2026-08-31 01:14:34,636.636 INFO    ] 200
[2026-08-31 01:14:34,639.639 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:14:34,696.696 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:14:34,698.698 INFO    ] No update needed
[2026-08-31 01:14:34,701.701 INFO    ] Checking for camera pi updates...
[2026-08-31 01:14:34,734.734 INFO    ] 200
[2026-08-31 01:14:34,736.736 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:14:34,781.781 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:14:34,863.863 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:14:34,865.865 INFO    ] No camera update needed
[2026-08-31 01:14:34,868.868 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:14:34,870.870 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:14:34,875.875 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:14:34,881.881 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:14:36,921.921 INFO    ] ================================================
[2026-08-31 01:14:36,936.936 INFO    ] Launching Daemon at Mon Aug 31 01:14:36 IST 2026
[2026-08-31 01:14:36,946.946 INFO    ] ================================================
[2026-08-31 01:14:37,574.574 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:14:37
[2026-08-31 01:14:38,224.224 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:14:38,520.520 INFO    ] Initializing speech engine...
[2026-08-31 01:14:38,534.534 INFO    ] 2026-08-31 01:14:38
[2026-08-31 01:14:38,804.804 INFO    ] 2026-08-31 01:14:38
[2026-08-31 01:14:38,867.867 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:14:39,155.155 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:14:39,163.163 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:14:39,357.357 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:14:39,377.377 INFO    ] time= 31/08/2026 01:14:39
[2026-08-31 01:14:39,406.406 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:14:39,415.415 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:14:39,517.517 INFO    ] No existing commands found in stream
[2026-08-31 01:14:44,541.541 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:14:44,544.544 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-08-31 01:14:47,319.319 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 01:14:47,322.322 INFO    ] Checking for system updates...
[2026-08-31 01:14:47,361.361 INFO    ] 200
[2026-08-31 01:14:47,364.364 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:14:47,423.423 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:14:47,426.426 INFO    ] No update needed
[2026-08-31 01:14:47,429.429 INFO    ] Checking for camera pi updates...
[2026-08-31 01:14:47,463.463 INFO    ] 200
[2026-08-31 01:14:47,466.466 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:14:47,506.506 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:14:47,581.581 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:14:47,583.583 INFO    ] No camera update needed
[2026-08-31 01:14:47,586.586 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:14:47,589.589 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:14:47,595.595 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:14:47,601.601 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:14:49,641.641 INFO    ] ================================================
[2026-08-31 01:14:49,656.656 INFO    ] Launching Daemon at Mon Aug 31 01:14:49 IST 2026
[2026-08-31 01:14:49,667.667 INFO    ] ================================================
[2026-08-31 01:14:50,273.273 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:14:50
[2026-08-31 01:14:50,925.925 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:14:51,227.227 INFO    ] Initializing speech engine...
[2026-08-31 01:14:51,235.235 INFO    ] 2026-08-31 01:14:51
[2026-08-31 01:14:51,521.521 INFO    ] 2026-08-31 01:14:51
[2026-08-31 01:14:51,566.566 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:14:51,859.859 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:14:51,868.868 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:14:52,085.085 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:14:52,116.116 INFO    ] time= 31/08/2026 01:14:52
[2026-08-31 01:14:52,123.123 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:14:52,131.131 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:14:52,239.239 INFO    ] No existing commands found in stream
[2026-08-31 01:14:57,269.269 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:14:57,273.273 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-08-31 01:14:59,742.742 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 01:14:59,745.745 INFO    ] Checking for system updates...
[2026-08-31 01:14:59,781.781 INFO    ] 200
[2026-08-31 01:14:59,784.784 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:14:59,846.846 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:14:59,848.848 INFO    ] No update needed
[2026-08-31 01:14:59,851.851 INFO    ] Checking for camera pi updates...
[2026-08-31 01:14:59,885.885 INFO    ] 200
[2026-08-31 01:14:59,888.888 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:14:59,933.933 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:15:00,013.013 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:15:00,016.016 INFO    ] No camera update needed
[2026-08-31 01:15:00,019.019 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:15:00,022.022 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:15:00,028.028 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:15:00,033.033 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:15:02,104.104 INFO    ] ================================================
[2026-08-31 01:15:02,230.230 INFO    ] Launching Daemon at Mon Aug 31 01:15:02 IST 2026
[2026-08-31 01:15:02,331.331 INFO    ] ================================================
[2026-08-31 01:15:03,412.412 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:15:03
[2026-08-31 01:15:04,144.144 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:15:04,419.419 INFO    ] Initializing speech engine...
[2026-08-31 01:15:04,437.437 INFO    ] 2026-08-31 01:15:04
[2026-08-31 01:15:04,694.694 INFO    ] 2026-08-31 01:15:04
[2026-08-31 01:15:04,729.729 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:15:04,985.985 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:15:04,989.989 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:15:05,173.173 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:15:05,176.176 INFO    ] time= 31/08/2026 01:15:05
[2026-08-31 01:15:05,240.240 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:15:05,256.256 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:15:05,386.386 INFO    ] No existing commands found in stream
[2026-08-31 01:15:10,408.408 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:15:10,411.411 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-08-31 01:15:12,422.422 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 01:15:12,425.425 INFO    ] Checking for system updates...
[2026-08-31 01:15:12,463.463 INFO    ] 200
[2026-08-31 01:15:12,466.466 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:15:12,523.523 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:15:12,525.525 INFO    ] No update needed
[2026-08-31 01:15:12,528.528 INFO    ] Checking for camera pi updates...
[2026-08-31 01:15:12,561.561 INFO    ] 200
[2026-08-31 01:15:12,564.564 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:15:12,604.604 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:15:12,781.781 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:15:12,783.783 INFO    ] No camera update needed
[2026-08-31 01:15:12,785.785 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:15:12,788.788 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:15:12,794.794 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:15:12,800.800 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:15:14,841.841 INFO    ] ================================================
[2026-08-31 01:15:14,856.856 INFO    ] Launching Daemon at Mon Aug 31 01:15:14 IST 2026
[2026-08-31 01:15:14,866.866 INFO    ] ================================================
[2026-08-31 01:15:15,432.432 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:15:15
[2026-08-31 01:15:16,016.016 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:15:16,287.287 INFO    ] Initializing speech engine...
[2026-08-31 01:15:16,296.296 INFO    ] 2026-08-31 01:15:16
[2026-08-31 01:15:16,545.545 INFO    ] 2026-08-31 01:15:16
[2026-08-31 01:15:16,581.581 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:15:16,843.843 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:15:16,847.847 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:15:17,066.066 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:15:17,108.108 INFO    ] time= 31/08/2026 01:15:17
[2026-08-31 01:15:17,114.114 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:15:17,131.131 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:15:17,266.266 INFO    ] No existing commands found in stream
[2026-08-31 01:15:22,289.289 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:15:22,292.292 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-08-31 01:15:24,558.558 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 01:15:24,561.561 INFO    ] Checking for system updates...
[2026-08-31 01:15:24,596.596 INFO    ] 200
[2026-08-31 01:15:24,599.599 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:15:24,650.650 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:15:24,653.653 INFO    ] No update needed
[2026-08-31 01:15:24,656.656 INFO    ] Checking for camera pi updates...
[2026-08-31 01:15:24,689.689 INFO    ] 200
[2026-08-31 01:15:24,691.691 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:15:24,738.738 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:15:24,806.806 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:15:24,808.808 INFO    ] No camera update needed
[2026-08-31 01:15:24,811.811 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:15:24,813.813 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:15:24,825.825 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:15:24,830.830 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:15:26,872.872 INFO    ] ================================================
[2026-08-31 01:15:26,887.887 INFO    ] Launching Daemon at Mon Aug 31 01:15:26 IST 2026
[2026-08-31 01:15:26,898.898 INFO    ] ================================================
[2026-08-31 01:15:27,469.469 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:15:27
[2026-08-31 01:15:28,055.055 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:15:28,303.303 INFO    ] Initializing speech engine...
[2026-08-31 01:15:28,324.324 INFO    ] 2026-08-31 01:15:28
[2026-08-31 01:15:28,585.585 INFO    ] 2026-08-31 01:15:28
[2026-08-31 01:15:28,619.619 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:15:28,882.882 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:15:28,887.887 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:15:29,119.119 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:15:29,149.149 INFO    ] time= 31/08/2026 01:15:29
[2026-08-31 01:15:29,155.155 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:15:29,172.172 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:15:29,295.295 INFO    ] No existing commands found in stream
[2026-08-31 01:15:34,316.316 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:15:34,320.320 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-08-31 01:15:35,453.453 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 01:15:35,455.455 INFO    ] Checking for system updates...
[2026-08-31 01:15:35,492.492 INFO    ] 200
[2026-08-31 01:15:35,495.495 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:15:35,554.554 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:15:35,557.557 INFO    ] No update needed
[2026-08-31 01:15:35,560.560 INFO    ] Checking for camera pi updates...
[2026-08-31 01:15:35,594.594 INFO    ] 200
[2026-08-31 01:15:35,597.597 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:15:35,644.644 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:15:35,750.750 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:15:35,753.753 INFO    ] No camera update needed
[2026-08-31 01:15:35,756.756 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:15:35,758.758 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:15:35,764.764 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:15:35,770.770 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:15:37,812.812 INFO    ] ================================================
[2026-08-31 01:15:37,827.827 INFO    ] Launching Daemon at Mon Aug 31 01:15:37 IST 2026
[2026-08-31 01:15:37,838.838 INFO    ] ================================================
[2026-08-31 01:15:38,420.420 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:15:38
[2026-08-31 01:15:39,021.021 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:15:39,283.283 INFO    ] Initializing speech engine...
[2026-08-31 01:15:39,291.291 INFO    ] 2026-08-31 01:15:39
[2026-08-31 01:15:39,587.587 INFO    ] 2026-08-31 01:15:39
[2026-08-31 01:15:39,625.625 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:15:39,914.914 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:15:39,924.924 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:15:40,080.080 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:15:40,150.150 INFO    ] time= 31/08/2026 01:15:40
[2026-08-31 01:15:40,209.209 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:15:40,230.230 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:15:40,385.385 INFO    ] No existing commands found in stream
[2026-08-31 01:15:45,412.412 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:15:45,415.415 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-08-31 01:15:46,301.301 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 01:15:46,304.304 INFO    ] Checking for system updates...
[2026-08-31 01:15:46,341.341 INFO    ] 200
[2026-08-31 01:15:46,344.344 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:15:46,402.402 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:15:46,405.405 INFO    ] No update needed
[2026-08-31 01:15:46,407.407 INFO    ] Checking for camera pi updates...
[2026-08-31 01:15:46,444.444 INFO    ] 200
[2026-08-31 01:15:46,447.447 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:15:46,495.495 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:15:46,580.580 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:15:46,583.583 INFO    ] No camera update needed
[2026-08-31 01:15:46,585.585 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:15:46,588.588 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:15:46,594.594 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:15:46,600.600 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:15:48,641.641 INFO    ] ================================================
[2026-08-31 01:15:48,656.656 INFO    ] Launching Daemon at Mon Aug 31 01:15:48 IST 2026
[2026-08-31 01:15:48,667.667 INFO    ] ================================================
[2026-08-31 01:15:49,239.239 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:15:49
[2026-08-31 01:15:49,822.822 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:15:50,103.103 INFO    ] Initializing speech engine...
[2026-08-31 01:15:50,113.113 INFO    ] 2026-08-31 01:15:50
[2026-08-31 01:15:50,379.379 INFO    ] 2026-08-31 01:15:50
[2026-08-31 01:15:50,414.414 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:15:50,640.640 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:15:50,695.695 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:15:50,944.944 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:15:50,993.993 INFO    ] time= 31/08/2026 01:15:50
[2026-08-31 01:15:51,012.012 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:15:51,030.030 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:15:51,161.161 INFO    ] No existing commands found in stream
[2026-08-31 01:15:56,186.186 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:15:56,189.189 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-08-31 01:15:58,794.794 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 01:15:58,797.797 INFO    ] Checking for system updates...
[2026-08-31 01:15:58,832.832 INFO    ] 200
[2026-08-31 01:15:58,835.835 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:15:58,886.886 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:15:58,889.889 INFO    ] No update needed
[2026-08-31 01:15:58,891.891 INFO    ] Checking for camera pi updates...
[2026-08-31 01:15:58,929.929 INFO    ] 200
[2026-08-31 01:15:58,931.931 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:15:58,971.971 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:15:59,052.052 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:15:59,055.055 INFO    ] No camera update needed
[2026-08-31 01:15:59,057.057 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:15:59,059.059 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:15:59,065.065 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:15:59,070.070 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:16:01,110.110 INFO    ] ================================================
[2026-08-31 01:16:01,125.125 INFO    ] Launching Daemon at Mon Aug 31 01:16:01 IST 2026
[2026-08-31 01:16:01,135.135 INFO    ] ================================================
[2026-08-31 01:16:01,809.809 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:16:01
[2026-08-31 01:16:02,494.494 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:16:02,786.786 INFO    ] Initializing speech engine...
[2026-08-31 01:16:02,793.793 INFO    ] 2026-08-31 01:16:02
[2026-08-31 01:16:03,131.131 INFO    ] 2026-08-31 01:16:03
[2026-08-31 01:16:03,166.166 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:16:03,380.380 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:16:03,387.387 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:16:03,598.598 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:16:03,646.646 INFO    ] time= 31/08/2026 01:16:03
[2026-08-31 01:16:03,700.700 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:16:03,735.735 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:16:03,872.872 INFO    ] No existing commands found in stream
[2026-08-31 01:16:08,895.895 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:16:08,897.897 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-08-31 01:16:12,342.342 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 01:16:12,345.345 INFO    ] Checking for system updates...
[2026-08-31 01:16:12,380.380 INFO    ] 200
[2026-08-31 01:16:12,383.383 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:16:12,435.435 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:16:12,437.437 INFO    ] No update needed
[2026-08-31 01:16:12,440.440 INFO    ] Checking for camera pi updates...
[2026-08-31 01:16:12,474.474 INFO    ] 200
[2026-08-31 01:16:12,476.476 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:16:12,522.522 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:16:12,606.606 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:16:12,608.608 INFO    ] No camera update needed
[2026-08-31 01:16:12,611.611 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:16:12,613.613 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:16:12,618.618 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:16:12,623.623 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:16:14,664.664 INFO    ] ================================================
[2026-08-31 01:16:14,680.680 INFO    ] Launching Daemon at Mon Aug 31 01:16:14 IST 2026
[2026-08-31 01:16:14,691.691 INFO    ] ================================================
[2026-08-31 01:16:15,270.270 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:16:15
[2026-08-31 01:16:15,866.866 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:16:16,134.134 INFO    ] Initializing speech engine...
[2026-08-31 01:16:16,150.150 INFO    ] 2026-08-31 01:16:16
[2026-08-31 01:16:16,407.407 INFO    ] 2026-08-31 01:16:16
[2026-08-31 01:16:16,470.470 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:16:16,720.720 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:16:16,725.725 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:16:16,908.908 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:16:16,962.962 INFO    ] time= 31/08/2026 01:16:16
[2026-08-31 01:16:17,022.022 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:16:17,029.029 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:16:17,173.173 INFO    ] No existing commands found in stream
[2026-08-31 01:16:22,204.204 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:16:22,207.207 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-08-31 01:16:25,894.894 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 01:16:25,897.897 INFO    ] Checking for system updates...
[2026-08-31 01:16:25,934.934 INFO    ] 200
[2026-08-31 01:16:25,936.936 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:16:25,990.990 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:16:25,993.993 INFO    ] No update needed
[2026-08-31 01:16:25,995.995 INFO    ] Checking for camera pi updates...
[2026-08-31 01:16:26,030.030 INFO    ] 200
[2026-08-31 01:16:26,033.033 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:16:26,074.074 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:16:26,156.156 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:16:26,159.159 INFO    ] No camera update needed
[2026-08-31 01:16:26,162.162 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:16:26,172.172 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:16:26,179.179 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:16:26,184.184 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:16:28,226.226 INFO    ] ================================================
[2026-08-31 01:16:28,241.241 INFO    ] Launching Daemon at Mon Aug 31 01:16:28 IST 2026
[2026-08-31 01:16:28,251.251 INFO    ] ================================================
[2026-08-31 01:16:28,832.832 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:16:28
[2026-08-31 01:16:29,428.428 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:16:29,704.704 INFO    ] Initializing speech engine...
[2026-08-31 01:16:29,711.711 INFO    ] 2026-08-31 01:16:29
[2026-08-31 01:16:29,974.974 INFO    ] 2026-08-31 01:16:29
[2026-08-31 01:16:30,028.028 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:16:30,255.255 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:16:30,261.261 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:16:30,508.508 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:16:30,519.519 INFO    ] time= 31/08/2026 01:16:30
[2026-08-31 01:16:30,536.536 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:16:30,559.559 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:16:30,678.678 INFO    ] No existing commands found in stream
[2026-08-31 01:16:35,708.708 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:16:35,710.710 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-08-31 01:16:39,220.220 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 01:16:39,223.223 INFO    ] Checking for system updates...
[2026-08-31 01:16:39,258.258 INFO    ] 200
[2026-08-31 01:16:39,261.261 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:16:39,321.321 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:16:39,323.323 INFO    ] No update needed
[2026-08-31 01:16:39,326.326 INFO    ] Checking for camera pi updates...
[2026-08-31 01:16:39,359.359 INFO    ] 200
[2026-08-31 01:16:39,362.362 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:16:39,411.411 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:16:39,500.500 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:16:39,502.502 INFO    ] No camera update needed
[2026-08-31 01:16:39,505.505 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:16:39,507.507 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:16:39,513.513 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:16:39,518.518 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:16:41,558.558 INFO    ] ================================================
[2026-08-31 01:16:41,576.576 INFO    ] Launching Daemon at Mon Aug 31 01:16:41 IST 2026
[2026-08-31 01:16:41,587.587 INFO    ] ================================================
[2026-08-31 01:16:42,153.153 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:16:42
[2026-08-31 01:16:42,736.736 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:16:42,995.995 INFO    ] Initializing speech engine...
[2026-08-31 01:16:43,010.010 INFO    ] 2026-08-31 01:16:42
[2026-08-31 01:16:43,266.266 INFO    ] 2026-08-31 01:16:43
[2026-08-31 01:16:43,333.333 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:16:43,570.570 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:16:43,576.576 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:16:43,820.820 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:16:43,844.844 INFO    ] time= 31/08/2026 01:16:43
[2026-08-31 01:16:43,862.862 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:16:43,881.881 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:16:44,013.013 INFO    ] No existing commands found in stream
[2026-08-31 01:16:49,044.044 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:16:49,047.047 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-08-31 01:16:52,277.277 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 01:16:52,280.280 INFO    ] Checking for system updates...
[2026-08-31 01:16:52,317.317 INFO    ] 200
[2026-08-31 01:16:52,320.320 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:16:52,375.375 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:16:52,378.378 INFO    ] No update needed
[2026-08-31 01:16:52,381.381 INFO    ] Checking for camera pi updates...
[2026-08-31 01:16:52,420.420 INFO    ] 200
[2026-08-31 01:16:52,423.423 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:16:52,470.470 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:16:52,574.574 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:16:52,577.577 INFO    ] No camera update needed
[2026-08-31 01:16:52,580.580 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:16:52,583.583 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:16:52,590.590 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:16:52,595.595 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:16:54,638.638 INFO    ] ================================================
[2026-08-31 01:16:54,654.654 INFO    ] Launching Daemon at Mon Aug 31 01:16:54 IST 2026
[2026-08-31 01:16:54,664.664 INFO    ] ================================================
[2026-08-31 01:16:55,243.243 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:16:55
[2026-08-31 01:16:55,840.840 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:16:56,116.116 INFO    ] Initializing speech engine...
[2026-08-31 01:16:56,125.125 INFO    ] 2026-08-31 01:16:56
[2026-08-31 01:16:56,384.384 INFO    ] 2026-08-31 01:16:56
[2026-08-31 01:16:56,414.414 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:16:56,664.664 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:16:56,668.668 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:16:56,920.920 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:16:56,928.928 INFO    ] time= 31/08/2026 01:16:56
[2026-08-31 01:16:56,946.946 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:16:56,973.973 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:16:57,078.078 INFO    ] No existing commands found in stream
[2026-08-31 01:17:02,090.090 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:17:02,096.096 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-08-31 01:17:06,373.373 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 01:17:06,376.376 INFO    ] Checking for system updates...
[2026-08-31 01:17:06,411.411 INFO    ] 200
[2026-08-31 01:17:06,414.414 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:17:06,466.466 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:17:06,468.468 INFO    ] No update needed
[2026-08-31 01:17:06,471.471 INFO    ] Checking for camera pi updates...
[2026-08-31 01:17:06,504.504 INFO    ] 200
[2026-08-31 01:17:06,507.507 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:17:06,552.552 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:17:06,642.642 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:17:06,645.645 INFO    ] No camera update needed
[2026-08-31 01:17:06,648.648 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:17:06,651.651 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:17:06,656.656 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:17:06,663.663 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:17:08,713.713 INFO    ] ================================================
[2026-08-31 01:17:08,729.729 INFO    ] Launching Daemon at Mon Aug 31 01:17:08 IST 2026
[2026-08-31 01:17:08,740.740 INFO    ] ================================================
[2026-08-31 01:17:09,400.400 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:17:09
[2026-08-31 01:17:10,081.081 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:17:10,391.391 INFO    ] Initializing speech engine...
[2026-08-31 01:17:10,405.405 INFO    ] 2026-08-31 01:17:10
[2026-08-31 01:17:10,681.681 INFO    ] 2026-08-31 01:17:10
[2026-08-31 01:17:10,734.734 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:17:11,019.019 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:17:11,028.028 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:17:11,224.224 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:17:11,241.241 INFO    ] time= 31/08/2026 01:17:11
[2026-08-31 01:17:11,250.250 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:17:11,278.278 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:17:11,402.402 INFO    ] No existing commands found in stream
[2026-08-31 01:17:16,428.428 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:17:16,431.431 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-08-31 01:17:19,214.214 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 01:17:19,217.217 INFO    ] Checking for system updates...
[2026-08-31 01:17:19,258.258 INFO    ] 200
[2026-08-31 01:17:19,261.261 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:17:19,314.314 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:17:19,317.317 INFO    ] No update needed
[2026-08-31 01:17:19,320.320 INFO    ] Checking for camera pi updates...
[2026-08-31 01:17:19,358.358 INFO    ] 200
[2026-08-31 01:17:19,360.360 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:17:19,402.402 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:17:19,625.625 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:17:19,628.628 INFO    ] No camera update needed
[2026-08-31 01:17:19,631.631 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:17:19,634.634 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:17:19,640.640 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:17:19,646.646 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:17:21,688.688 INFO    ] ================================================
[2026-08-31 01:17:21,703.703 INFO    ] Launching Daemon at Mon Aug 31 01:17:21 IST 2026
[2026-08-31 01:17:21,713.713 INFO    ] ================================================
[2026-08-31 01:17:22,309.309 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:17:22
[2026-08-31 01:17:22,893.893 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:17:23,160.160 INFO    ] Initializing speech engine...
[2026-08-31 01:17:23,169.169 INFO    ] 2026-08-31 01:17:23
[2026-08-31 01:17:23,415.415 INFO    ] 2026-08-31 01:17:23
[2026-08-31 01:17:23,480.480 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:17:23,729.729 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:17:23,734.734 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:17:23,966.966 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:17:23,987.987 INFO    ] time= 31/08/2026 01:17:23
[2026-08-31 01:17:24,013.013 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:17:24,021.021 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:17:24,141.141 INFO    ] No existing commands found in stream
[2026-08-31 01:17:29,166.166 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:17:29,169.169 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-08-31 01:17:32,634.634 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 01:17:32,637.637 INFO    ] Checking for system updates...
[2026-08-31 01:17:32,676.676 INFO    ] 200
[2026-08-31 01:17:32,679.679 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:17:32,742.742 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:17:32,744.744 INFO    ] No update needed
[2026-08-31 01:17:32,747.747 INFO    ] Checking for camera pi updates...
[2026-08-31 01:17:32,783.783 INFO    ] 200
[2026-08-31 01:17:32,786.786 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:17:32,833.833 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:17:32,923.923 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:17:32,925.925 INFO    ] No camera update needed
[2026-08-31 01:17:32,928.928 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:17:32,931.931 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:17:32,937.937 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:17:32,943.943 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:17:34,986.986 INFO    ] ================================================
[2026-08-31 01:17:35,001.001 INFO    ] Launching Daemon at Mon Aug 31 01:17:34 IST 2026
[2026-08-31 01:17:35,011.011 INFO    ] ================================================
[2026-08-31 01:17:35,653.653 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:17:35
[2026-08-31 01:17:36,314.314 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:17:36,615.615 INFO    ] Initializing speech engine...
[2026-08-31 01:17:36,624.624 INFO    ] 2026-08-31 01:17:36
[2026-08-31 01:17:36,896.896 INFO    ] 2026-08-31 01:17:36
[2026-08-31 01:17:36,931.931 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:17:37,323.323 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:17:37,340.340 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:17:37,584.584 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:17:37,621.621 INFO    ] time= 31/08/2026 01:17:37
[2026-08-31 01:17:37,682.682 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:17:37,726.726 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:17:37,879.879 INFO    ] No existing commands found in stream
[2026-08-31 01:17:42,899.899 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:17:42,902.902 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-08-31 01:17:44,234.234 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 01:17:44,237.237 INFO    ] Checking for system updates...
[2026-08-31 01:17:44,273.273 INFO    ] 200
[2026-08-31 01:17:44,275.275 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:17:44,327.327 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:17:44,329.329 INFO    ] No update needed
[2026-08-31 01:17:44,332.332 INFO    ] Checking for camera pi updates...
[2026-08-31 01:17:44,365.365 INFO    ] 200
[2026-08-31 01:17:44,368.368 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:17:44,408.408 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:17:44,488.488 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:17:44,491.491 INFO    ] No camera update needed
[2026-08-31 01:17:44,493.493 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:17:44,495.495 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:17:44,500.500 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:17:44,505.505 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:17:46,546.546 INFO    ] ================================================
[2026-08-31 01:17:46,561.561 INFO    ] Launching Daemon at Mon Aug 31 01:17:46 IST 2026
[2026-08-31 01:17:46,571.571 INFO    ] ================================================
[2026-08-31 01:17:47,150.150 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:17:47
[2026-08-31 01:17:47,734.734 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:17:48,007.007 INFO    ] Initializing speech engine...
[2026-08-31 01:17:48,015.015 INFO    ] 2026-08-31 01:17:48
[2026-08-31 01:17:48,269.269 INFO    ] 2026-08-31 01:17:48
[2026-08-31 01:17:48,304.304 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:17:48,562.562 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:17:48,567.567 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:17:48,798.798 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:17:48,835.835 INFO    ] time= 31/08/2026 01:17:48
[2026-08-31 01:17:48,841.841 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:17:48,862.862 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:17:48,993.993 INFO    ] No existing commands found in stream
[2026-08-31 01:17:54,005.005 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:17:54,008.008 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-08-31 01:17:57,474.474 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 01:17:57,476.476 INFO    ] Checking for system updates...
[2026-08-31 01:17:57,512.512 INFO    ] 200
[2026-08-31 01:17:57,514.514 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:17:57,568.568 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:17:57,570.570 INFO    ] No update needed
[2026-08-31 01:17:57,572.572 INFO    ] Checking for camera pi updates...
[2026-08-31 01:17:57,606.606 INFO    ] 200
[2026-08-31 01:17:57,609.609 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:17:57,650.650 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:17:57,729.729 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:17:57,731.731 INFO    ] No camera update needed
[2026-08-31 01:17:57,734.734 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:17:57,736.736 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:17:57,741.741 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:17:57,746.746 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:17:59,787.787 INFO    ] ================================================
[2026-08-31 01:17:59,802.802 INFO    ] Launching Daemon at Mon Aug 31 01:17:59 IST 2026
[2026-08-31 01:17:59,813.813 INFO    ] ================================================
[2026-08-31 01:18:00,384.384 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:18:00
[2026-08-31 01:18:00,966.966 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:18:01,233.233 INFO    ] Initializing speech engine...
[2026-08-31 01:18:01,242.242 INFO    ] 2026-08-31 01:18:01
[2026-08-31 01:18:01,493.493 INFO    ] 2026-08-31 01:18:01
[2026-08-31 01:18:01,551.551 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:18:01,807.807 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:18:01,865.865 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:18:02,043.043 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:18:02,047.047 INFO    ] time= 31/08/2026 01:18:02
[2026-08-31 01:18:02,050.050 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:18:02,053.053 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:18:02,134.134 INFO    ] No existing commands found in stream
[2026-08-31 01:18:07,143.143 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:18:07,146.146 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-08-31 01:18:11,452.452 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 01:18:11,455.455 INFO    ] Checking for system updates...
[2026-08-31 01:18:11,492.492 INFO    ] 200
[2026-08-31 01:18:11,494.494 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:18:11,546.546 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:18:11,549.549 INFO    ] No update needed
[2026-08-31 01:18:11,551.551 INFO    ] Checking for camera pi updates...
[2026-08-31 01:18:11,585.585 INFO    ] 200
[2026-08-31 01:18:11,587.587 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:18:11,628.628 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:18:11,730.730 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:18:11,732.732 INFO    ] No camera update needed
[2026-08-31 01:18:11,735.735 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:18:11,737.737 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:18:11,742.742 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:18:11,747.747 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:18:13,788.788 INFO    ] ================================================
[2026-08-31 01:18:13,803.803 INFO    ] Launching Daemon at Mon Aug 31 01:18:13 IST 2026
[2026-08-31 01:18:13,814.814 INFO    ] ================================================
[2026-08-31 01:18:14,381.381 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:18:14
[2026-08-31 01:18:14,965.965 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:18:15,223.223 INFO    ] Initializing speech engine...
[2026-08-31 01:18:15,243.243 INFO    ] 2026-08-31 01:18:15
[2026-08-31 01:18:15,489.489 INFO    ] 2026-08-31 01:18:15
[2026-08-31 01:18:15,527.527 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:18:15,793.793 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:18:15,803.803 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:18:16,032.032 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:18:16,072.072 INFO    ] time= 31/08/2026 01:18:16
[2026-08-31 01:18:16,100.100 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:18:16,132.132 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:18:16,237.237 INFO    ] No existing commands found in stream
[2026-08-31 01:18:21,253.253 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:18:21,256.256 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-08-31 01:18:24,655.655 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 01:18:24,658.658 INFO    ] Checking for system updates...
[2026-08-31 01:18:24,693.693 INFO    ] 200
[2026-08-31 01:18:24,696.696 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:18:24,749.749 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:18:24,751.751 INFO    ] No update needed
[2026-08-31 01:18:24,753.753 INFO    ] Checking for camera pi updates...
[2026-08-31 01:18:24,786.786 INFO    ] 200
[2026-08-31 01:18:24,789.789 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:18:24,833.833 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:18:24,914.914 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:18:24,916.916 INFO    ] No camera update needed
[2026-08-31 01:18:24,919.919 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:18:24,921.921 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:18:24,926.926 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:18:24,931.931 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:18:26,972.972 INFO    ] ================================================
[2026-08-31 01:18:26,987.987 INFO    ] Launching Daemon at Mon Aug 31 01:18:26 IST 2026
[2026-08-31 01:18:27,998.998 INFO    ] ================================================
[2026-08-31 01:18:27,565.565 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:18:27
[2026-08-31 01:18:28,149.149 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:18:28,408.408 INFO    ] Initializing speech engine...
[2026-08-31 01:18:28,422.422 INFO    ] 2026-08-31 01:18:28
[2026-08-31 01:18:28,705.705 INFO    ] 2026-08-31 01:18:28
[2026-08-31 01:18:28,740.740 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:18:29,018.018 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:18:29,027.027 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:18:29,247.247 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:18:29,309.309 INFO    ] time= 31/08/2026 01:18:29
[2026-08-31 01:18:29,316.316 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:18:29,332.332 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:18:29,463.463 INFO    ] No existing commands found in stream
[2026-08-31 01:18:34,488.488 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:18:34,491.491 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-08-31 01:18:35,994.994 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 01:18:35,997.997 INFO    ] Checking for system updates...
[2026-08-31 01:18:36,036.036 INFO    ] 200
[2026-08-31 01:18:36,039.039 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:18:36,094.094 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:18:36,097.097 INFO    ] No update needed
[2026-08-31 01:18:36,100.100 INFO    ] Checking for camera pi updates...
[2026-08-31 01:18:36,138.138 INFO    ] 200
[2026-08-31 01:18:36,141.141 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:18:36,182.182 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:18:36,276.276 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:18:36,279.279 INFO    ] No camera update needed
[2026-08-31 01:18:36,282.282 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:18:36,285.285 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:18:36,291.291 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:18:36,296.296 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:18:38,337.337 INFO    ] ================================================
[2026-08-31 01:18:38,352.352 INFO    ] Launching Daemon at Mon Aug 31 01:18:38 IST 2026
[2026-08-31 01:18:38,363.363 INFO    ] ================================================
[2026-08-31 01:18:38,936.936 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:18:38
[2026-08-31 01:18:39,522.522 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:18:39,784.784 INFO    ] Initializing speech engine...
[2026-08-31 01:18:39,809.809 INFO    ] 2026-08-31 01:18:39
[2026-08-31 01:18:40,078.078 INFO    ] 2026-08-31 01:18:40
[2026-08-31 01:18:40,117.117 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:18:40,410.410 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:18:40,421.421 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:18:40,641.641 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:18:40,686.686 INFO    ] time= 31/08/2026 01:18:40
[2026-08-31 01:18:40,720.720 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:18:40,726.726 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:18:40,848.848 INFO    ] No existing commands found in stream
[2026-08-31 01:18:45,880.880 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:18:45,883.883 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-08-31 01:18:48,815.815 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 01:18:48,818.818 INFO    ] Checking for system updates...
[2026-08-31 01:18:48,853.853 INFO    ] 200
[2026-08-31 01:18:48,855.855 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:18:48,913.913 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:18:48,915.915 INFO    ] No update needed
[2026-08-31 01:18:48,919.919 INFO    ] Checking for camera pi updates...
[2026-08-31 01:18:48,952.952 INFO    ] 200
[2026-08-31 01:18:48,955.955 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:18:48,999.999 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:18:49,081.081 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:18:49,083.083 INFO    ] No camera update needed
[2026-08-31 01:18:49,085.085 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:18:49,088.088 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:18:49,093.093 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:18:49,098.098 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:18:51,138.138 INFO    ] ================================================
[2026-08-31 01:18:51,153.153 INFO    ] Launching Daemon at Mon Aug 31 01:18:51 IST 2026
[2026-08-31 01:18:51,164.164 INFO    ] ================================================
[2026-08-31 01:18:51,801.801 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:18:51
[2026-08-31 01:18:52,432.432 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:18:52,681.681 INFO    ] Initializing speech engine...
[2026-08-31 01:18:52,687.687 INFO    ] 2026-08-31 01:18:52
[2026-08-31 01:18:52,983.983 INFO    ] 2026-08-31 01:18:52
[2026-08-31 01:18:53,017.017 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:18:53,254.254 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:18:53,308.308 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:18:53,530.530 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:18:53,580.580 INFO    ] time= 31/08/2026 01:18:53
[2026-08-31 01:18:53,608.608 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:18:53,614.614 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:18:53,759.759 INFO    ] No existing commands found in stream
[2026-08-31 01:18:58,784.784 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:18:58,787.787 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-08-31 01:19:02,384.384 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 01:19:02,387.387 INFO    ] Checking for system updates...
[2026-08-31 01:19:02,431.431 INFO    ] 200
[2026-08-31 01:19:02,434.434 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:19:02,498.498 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:19:02,501.501 INFO    ] No update needed
[2026-08-31 01:19:02,504.504 INFO    ] Checking for camera pi updates...
[2026-08-31 01:19:02,550.550 INFO    ] 200
[2026-08-31 01:19:02,553.553 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:19:02,603.603 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:19:02,684.684 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:19:02,687.687 INFO    ] No camera update needed
[2026-08-31 01:19:02,690.690 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:19:02,693.693 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:19:02,699.699 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:19:02,705.705 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:19:04,747.747 INFO    ] ================================================
[2026-08-31 01:19:04,762.762 INFO    ] Launching Daemon at Mon Aug 31 01:19:04 IST 2026
[2026-08-31 01:19:04,773.773 INFO    ] ================================================
[2026-08-31 01:19:05,345.345 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:19:05
[2026-08-31 01:19:05,928.928 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:19:06,182.182 INFO    ] Initializing speech engine...
[2026-08-31 01:19:06,188.188 INFO    ] 2026-08-31 01:19:06
[2026-08-31 01:19:06,483.483 INFO    ] 2026-08-31 01:19:06
[2026-08-31 01:19:06,519.519 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:19:06,753.753 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:19:06,757.757 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:19:06,955.955 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:19:07,009.009 INFO    ] time= 31/08/2026 01:19:06
[2026-08-31 01:19:07,068.068 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:19:07,092.092 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:19:07,247.247 INFO    ] No existing commands found in stream
[2026-08-31 01:19:12,273.273 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:19:12,276.276 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-08-31 01:19:14,258.258 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 01:19:14,261.261 INFO    ] Checking for system updates...
[2026-08-31 01:19:14,296.296 INFO    ] 200
[2026-08-31 01:19:14,298.298 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:19:14,350.350 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:19:14,353.353 INFO    ] No update needed
[2026-08-31 01:19:14,355.355 INFO    ] Checking for camera pi updates...
[2026-08-31 01:19:14,388.388 INFO    ] 200
[2026-08-31 01:19:14,391.391 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:19:14,436.436 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:19:14,520.520 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:19:14,522.522 INFO    ] No camera update needed
[2026-08-31 01:19:14,525.525 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:19:14,527.527 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:19:14,532.532 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:19:14,537.537 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:19:16,578.578 INFO    ] ================================================
[2026-08-31 01:19:16,595.595 INFO    ] Launching Daemon at Mon Aug 31 01:19:16 IST 2026
[2026-08-31 01:19:16,605.605 INFO    ] ================================================
[2026-08-31 01:19:17,257.257 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:19:17
[2026-08-31 01:19:17,929.929 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:19:18,231.231 INFO    ] Initializing speech engine...
[2026-08-31 01:19:18,241.241 INFO    ] 2026-08-31 01:19:18
[2026-08-31 01:19:18,527.527 INFO    ] 2026-08-31 01:19:18
[2026-08-31 01:19:18,572.572 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:19:18,797.797 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:19:18,803.803 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:19:19,036.036 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:19:19,065.065 INFO    ] time= 31/08/2026 01:19:19
[2026-08-31 01:19:19,084.084 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:19:19,101.101 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:19:19,243.243 INFO    ] No existing commands found in stream
[2026-08-31 01:19:24,274.274 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:19:24,278.278 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-08-31 01:19:24,994.994 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 01:19:24,997.997 INFO    ] Checking for system updates...
[2026-08-31 01:19:25,039.039 INFO    ] 200
[2026-08-31 01:19:25,042.042 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:19:25,095.095 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:19:25,098.098 INFO    ] No update needed
[2026-08-31 01:19:25,101.101 INFO    ] Checking for camera pi updates...
[2026-08-31 01:19:25,136.136 INFO    ] 200
[2026-08-31 01:19:25,139.139 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:19:25,184.184 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:19:25,371.371 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:19:25,373.373 INFO    ] No camera update needed
[2026-08-31 01:19:25,376.376 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:19:25,378.378 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:19:25,384.384 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:19:25,389.389 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:19:27,430.430 INFO    ] ================================================
[2026-08-31 01:19:27,445.445 INFO    ] Launching Daemon at Mon Aug 31 01:19:27 IST 2026
[2026-08-31 01:19:27,456.456 INFO    ] ================================================
[2026-08-31 01:19:28,023.023 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:19:28
[2026-08-31 01:19:28,606.606 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:19:28,856.856 INFO    ] Initializing speech engine...
[2026-08-31 01:19:28,877.877 INFO    ] 2026-08-31 01:19:28
[2026-08-31 01:19:29,139.139 INFO    ] 2026-08-31 01:19:29
[2026-08-31 01:19:29,175.175 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:19:29,437.437 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:19:29,442.442 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:19:29,656.656 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:19:29,708.708 INFO    ] time= 31/08/2026 01:19:29
[2026-08-31 01:19:29,714.714 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:19:29,732.732 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:19:29,896.896 INFO    ] No existing commands found in stream
[2026-08-31 01:19:34,927.927 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:19:34,930.930 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-08-31 01:19:37,741.741 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 01:19:37,743.743 INFO    ] Checking for system updates...
[2026-08-31 01:19:37,779.779 INFO    ] 200
[2026-08-31 01:19:37,781.781 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:19:37,833.833 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:19:37,835.835 INFO    ] No update needed
[2026-08-31 01:19:37,837.837 INFO    ] Checking for camera pi updates...
[2026-08-31 01:19:37,871.871 INFO    ] 200
[2026-08-31 01:19:37,874.874 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:19:37,914.914 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:19:38,005.005 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:19:38,008.008 INFO    ] No camera update needed
[2026-08-31 01:19:38,010.010 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:19:38,013.013 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:19:38,018.018 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:19:38,023.023 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:19:40,062.062 INFO    ] ================================================
[2026-08-31 01:19:40,077.077 INFO    ] Launching Daemon at Mon Aug 31 01:19:40 IST 2026
[2026-08-31 01:19:40,088.088 INFO    ] ================================================
[2026-08-31 01:19:40,722.722 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:19:40
[2026-08-31 01:19:41,319.319 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:19:41,597.597 INFO    ] Initializing speech engine...
[2026-08-31 01:19:41,602.602 INFO    ] 2026-08-31 01:19:41
[2026-08-31 01:19:41,863.863 INFO    ] 2026-08-31 01:19:41
[2026-08-31 01:19:41,915.915 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:19:42,142.142 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:19:42,147.147 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:19:42,379.379 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:19:42,405.405 INFO    ] time= 31/08/2026 01:19:42
[2026-08-31 01:19:42,421.421 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:19:42,457.457 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:19:42,587.587 INFO    ] No existing commands found in stream
[2026-08-31 01:19:47,623.623 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:19:47,626.626 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-08-31 01:19:51,514.514 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 01:19:51,517.517 INFO    ] Checking for system updates...
[2026-08-31 01:19:51,557.557 INFO    ] 200
[2026-08-31 01:19:51,560.560 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:19:51,612.612 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:19:51,614.614 INFO    ] No update needed
[2026-08-31 01:19:51,617.617 INFO    ] Checking for camera pi updates...
[2026-08-31 01:19:51,650.650 INFO    ] 200
[2026-08-31 01:19:51,653.653 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:19:51,692.692 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:19:51,779.779 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:19:51,781.781 INFO    ] No camera update needed
[2026-08-31 01:19:51,784.784 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:19:51,786.786 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:19:51,792.792 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:19:51,797.797 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:19:53,841.841 INFO    ] ================================================
[2026-08-31 01:19:53,855.855 INFO    ] Launching Daemon at Mon Aug 31 01:19:53 IST 2026
[2026-08-31 01:19:53,866.866 INFO    ] ================================================
[2026-08-31 01:19:54,497.497 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:19:54
[2026-08-31 01:19:55,096.096 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:19:55,369.369 INFO    ] Initializing speech engine...
[2026-08-31 01:19:55,379.379 INFO    ] 2026-08-31 01:19:55
[2026-08-31 01:19:55,625.625 INFO    ] 2026-08-31 01:19:55
[2026-08-31 01:19:55,691.691 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:19:55,917.917 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:19:55,923.923 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:19:56,153.153 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:19:56,182.182 INFO    ] time= 31/08/2026 01:19:56
[2026-08-31 01:19:56,200.200 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:19:56,222.222 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:19:56,346.346 INFO    ] No existing commands found in stream
[2026-08-31 01:20:01,370.370 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:20:01,373.373 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-08-31 01:20:08,885.885 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 01:20:08,887.887 INFO    ] Checking for system updates...
[2026-08-31 01:20:08,927.927 INFO    ] 200
[2026-08-31 01:20:08,930.930 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:20:08,982.982 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:20:08,985.985 INFO    ] No update needed
[2026-08-31 01:20:08,987.987 INFO    ] Checking for camera pi updates...
[2026-08-31 01:20:09,021.021 INFO    ] 200
[2026-08-31 01:20:09,024.024 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:20:09,063.063 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:20:09,148.148 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:20:09,151.151 INFO    ] No camera update needed
[2026-08-31 01:20:09,153.153 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:20:09,155.155 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:20:09,161.161 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:20:09,166.166 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:20:11,205.205 INFO    ] ================================================
[2026-08-31 01:20:11,221.221 INFO    ] Launching Daemon at Mon Aug 31 01:20:11 IST 2026
[2026-08-31 01:20:11,232.232 INFO    ] ================================================
[2026-08-31 01:20:11,814.814 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:20:11
[2026-08-31 01:20:12,404.404 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:20:12,702.702 INFO    ] Initializing speech engine...
[2026-08-31 01:20:12,712.712 INFO    ] 2026-08-31 01:20:12
[2026-08-31 01:20:12,985.985 INFO    ] 2026-08-31 01:20:12
[2026-08-31 01:20:13,041.041 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:20:13,295.295 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:20:13,330.330 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:20:13,538.538 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:20:13,560.560 INFO    ] time= 31/08/2026 01:20:13
[2026-08-31 01:20:13,588.588 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:20:13,596.596 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:20:13,736.736 INFO    ] No existing commands found in stream
[2026-08-31 01:20:18,762.762 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:20:18,765.765 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-08-31 01:20:20,302.302 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 01:20:20,305.305 INFO    ] Checking for system updates...
[2026-08-31 01:20:20,351.351 INFO    ] 200
[2026-08-31 01:20:20,354.354 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:20:20,407.407 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:20:20,409.409 INFO    ] No update needed
[2026-08-31 01:20:20,412.412 INFO    ] Checking for camera pi updates...
[2026-08-31 01:20:20,445.445 INFO    ] 200
[2026-08-31 01:20:20,448.448 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:20:20,488.488 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:20:20,589.589 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:20:20,592.592 INFO    ] No camera update needed
[2026-08-31 01:20:20,594.594 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:20:20,596.596 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:20:20,602.602 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:20:20,607.607 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:20:22,647.647 INFO    ] ================================================
[2026-08-31 01:20:22,662.662 INFO    ] Launching Daemon at Mon Aug 31 01:20:22 IST 2026
[2026-08-31 01:20:22,673.673 INFO    ] ================================================
[2026-08-31 01:20:23,239.239 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:20:23
[2026-08-31 01:20:23,823.823 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:20:24,091.091 INFO    ] Initializing speech engine...
[2026-08-31 01:20:24,103.103 INFO    ] 2026-08-31 01:20:24
[2026-08-31 01:20:24,354.354 INFO    ] 2026-08-31 01:20:24
[2026-08-31 01:20:24,389.389 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:20:24,645.645 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:20:24,655.655 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:20:24,896.896 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:20:24,922.922 INFO    ] time= 31/08/2026 01:20:24
[2026-08-31 01:20:24,938.938 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:20:24,957.957 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:20:25,080.080 INFO    ] No existing commands found in stream
[2026-08-31 01:20:30,099.099 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:20:30,101.101 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-08-31 01:20:32,023.023 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 01:20:32,026.026 INFO    ] Checking for system updates...
[2026-08-31 01:20:32,066.066 INFO    ] 200
[2026-08-31 01:20:32,069.069 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:20:32,125.125 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:20:32,128.128 INFO    ] No update needed
[2026-08-31 01:20:32,130.130 INFO    ] Checking for camera pi updates...
[2026-08-31 01:20:32,167.167 INFO    ] 200
[2026-08-31 01:20:32,170.170 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:20:32,213.213 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:20:32,310.310 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:20:32,313.313 INFO    ] No camera update needed
[2026-08-31 01:20:32,316.316 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:20:32,318.318 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:20:32,324.324 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:20:32,330.330 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:20:34,370.370 INFO    ] ================================================
[2026-08-31 01:20:34,386.386 INFO    ] Launching Daemon at Mon Aug 31 01:20:34 IST 2026
[2026-08-31 01:20:34,396.396 INFO    ] ================================================
[2026-08-31 01:20:35,046.046 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:20:35
[2026-08-31 01:20:35,715.715 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:20:36,017.017 INFO    ] Initializing speech engine...
[2026-08-31 01:20:36,026.026 INFO    ] 2026-08-31 01:20:36
[2026-08-31 01:20:36,306.306 INFO    ] 2026-08-31 01:20:36
[2026-08-31 01:20:36,362.362 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:20:36,646.646 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:20:36,651.651 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:20:36,846.846 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:20:36,863.863 INFO    ] time= 31/08/2026 01:20:36
[2026-08-31 01:20:36,871.871 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:20:36,898.898 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:20:37,013.013 INFO    ] No existing commands found in stream
[2026-08-31 01:20:42,037.037 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:20:42,040.040 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-08-31 01:20:43,520.520 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 01:20:43,522.522 INFO    ] Checking for system updates...
[2026-08-31 01:20:43,558.558 INFO    ] 200
[2026-08-31 01:20:43,560.560 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:20:43,614.614 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:20:43,617.617 INFO    ] No update needed
[2026-08-31 01:20:43,620.620 INFO    ] Checking for camera pi updates...
[2026-08-31 01:20:43,653.653 INFO    ] 200
[2026-08-31 01:20:43,655.655 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:20:43,695.695 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:20:43,762.762 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:20:43,765.765 INFO    ] No camera update needed
[2026-08-31 01:20:43,767.767 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:20:43,770.770 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:20:43,775.775 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:20:43,780.780 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:20:45,819.819 INFO    ] ================================================
[2026-08-31 01:20:45,834.834 INFO    ] Launching Daemon at Mon Aug 31 01:20:45 IST 2026
[2026-08-31 01:20:45,845.845 INFO    ] ================================================
[2026-08-31 01:20:46,425.425 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:20:46
[2026-08-31 01:20:47,023.023 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:20:47,301.301 INFO    ] Initializing speech engine...
[2026-08-31 01:20:47,308.308 INFO    ] 2026-08-31 01:20:47
[2026-08-31 01:20:47,568.568 INFO    ] 2026-08-31 01:20:47
[2026-08-31 01:20:47,623.623 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:20:47,909.909 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:20:47,916.916 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:20:48,109.109 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:20:48,124.124 INFO    ] time= 31/08/2026 01:20:48
[2026-08-31 01:20:48,132.132 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:20:48,159.159 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:20:48,324.324 INFO    ] No existing commands found in stream
[2026-08-31 01:20:53,349.349 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:20:53,352.352 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-08-31 01:20:54,654.654 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 01:20:54,656.656 INFO    ] Checking for system updates...
[2026-08-31 01:20:54,692.692 INFO    ] 200
[2026-08-31 01:20:54,695.695 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:20:54,753.753 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:20:54,755.755 INFO    ] No update needed
[2026-08-31 01:20:54,758.758 INFO    ] Checking for camera pi updates...
[2026-08-31 01:20:54,792.792 INFO    ] 200
[2026-08-31 01:20:54,794.794 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:20:54,835.835 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:20:54,915.915 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:20:54,917.917 INFO    ] No camera update needed
[2026-08-31 01:20:54,919.919 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:20:54,922.922 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:20:54,927.927 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:20:54,932.932 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:20:56,971.971 INFO    ] ================================================
[2026-08-31 01:20:56,986.986 INFO    ] Launching Daemon at Mon Aug 31 01:20:56 IST 2026
[2026-08-31 01:20:57,996.996 INFO    ] ================================================
[2026-08-31 01:20:57,561.561 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:20:57
[2026-08-31 01:20:58,146.146 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:20:58,393.393 INFO    ] Initializing speech engine...
[2026-08-31 01:20:58,399.399 INFO    ] 2026-08-31 01:20:58
[2026-08-31 01:20:58,673.673 INFO    ] 2026-08-31 01:20:58
[2026-08-31 01:20:58,708.708 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:20:58,970.970 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:20:58,974.974 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:20:59,226.226 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:20:59,237.237 INFO    ] time= 31/08/2026 01:20:59
[2026-08-31 01:20:59,243.243 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:20:59,261.261 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:20:59,394.394 INFO    ] No existing commands found in stream
[2026-08-31 01:21:04,406.406 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:21:04,409.409 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-08-31 01:21:05,215.215 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 01:21:05,218.218 INFO    ] Checking for system updates...
[2026-08-31 01:21:05,257.257 INFO    ] 200
[2026-08-31 01:21:05,260.260 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:21:05,314.314 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:21:05,317.317 INFO    ] No update needed
[2026-08-31 01:21:05,320.320 INFO    ] Checking for camera pi updates...
[2026-08-31 01:21:05,354.354 INFO    ] 200
[2026-08-31 01:21:05,357.357 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:21:05,403.403 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:21:05,475.475 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:21:05,478.478 INFO    ] No camera update needed
[2026-08-31 01:21:05,481.481 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:21:05,484.484 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:21:05,490.490 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:21:05,495.495 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:21:07,538.538 INFO    ] ================================================
[2026-08-31 01:21:07,553.553 INFO    ] Launching Daemon at Mon Aug 31 01:21:07 IST 2026
[2026-08-31 01:21:07,563.563 INFO    ] ================================================
[2026-08-31 01:21:08,149.149 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:21:08
[2026-08-31 01:21:08,742.742 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:21:08,993.993 INFO    ] Initializing speech engine...
[2026-08-31 01:21:09,016.016 INFO    ] 2026-08-31 01:21:09
[2026-08-31 01:21:09,269.269 INFO    ] 2026-08-31 01:21:09
[2026-08-31 01:21:09,304.304 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:21:09,557.557 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:21:09,566.566 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:21:09,816.816 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:21:09,828.828 INFO    ] time= 31/08/2026 01:21:09
[2026-08-31 01:21:09,845.845 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:21:09,868.868 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:21:09,983.983 INFO    ] No existing commands found in stream
[2026-08-31 01:21:15,006.006 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:21:15,009.009 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-08-31 01:21:16,770.770 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 01:21:16,772.772 INFO    ] Checking for system updates...
[2026-08-31 01:21:16,807.807 INFO    ] 200
[2026-08-31 01:21:16,810.810 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:21:16,861.861 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:21:16,864.864 INFO    ] No update needed
[2026-08-31 01:21:16,866.866 INFO    ] Checking for camera pi updates...
[2026-08-31 01:21:16,904.904 INFO    ] 200
[2026-08-31 01:21:16,906.906 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:21:16,946.946 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:21:17,026.026 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:21:17,028.028 INFO    ] No camera update needed
[2026-08-31 01:21:17,031.031 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:21:17,033.033 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:21:17,038.038 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:21:17,043.043 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:21:19,084.084 INFO    ] ================================================
[2026-08-31 01:21:19,099.099 INFO    ] Launching Daemon at Mon Aug 31 01:21:19 IST 2026
[2026-08-31 01:21:19,110.110 INFO    ] ================================================
[2026-08-31 01:21:19,754.754 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:21:19
[2026-08-31 01:21:20,416.416 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:21:20,713.713 INFO    ] Initializing speech engine...
[2026-08-31 01:21:20,720.720 INFO    ] 2026-08-31 01:21:20
[2026-08-31 01:21:20,993.993 INFO    ] 2026-08-31 01:21:20
[2026-08-31 01:21:21,048.048 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:21:21,335.335 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:21:21,342.342 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:21:21,536.536 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:21:21,554.554 INFO    ] time= 31/08/2026 01:21:21
[2026-08-31 01:21:21,567.567 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:21:21,589.589 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:21:21,740.740 INFO    ] No existing commands found in stream
[2026-08-31 01:21:26,761.761 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:21:26,764.764 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-08-31 01:21:29,731.731 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 01:21:29,734.734 INFO    ] Checking for system updates...
[2026-08-31 01:21:29,776.776 INFO    ] 200
[2026-08-31 01:21:29,779.779 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:21:29,834.834 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:21:29,837.837 INFO    ] No update needed
[2026-08-31 01:21:29,840.840 INFO    ] Checking for camera pi updates...
[2026-08-31 01:21:29,874.874 INFO    ] 200
[2026-08-31 01:21:29,877.877 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:21:29,917.917 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:21:30,103.103 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:21:30,106.106 INFO    ] No camera update needed
[2026-08-31 01:21:30,108.108 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:21:30,111.111 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:21:30,116.116 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:21:30,123.123 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:21:32,167.167 INFO    ] ================================================
[2026-08-31 01:21:32,185.185 INFO    ] Launching Daemon at Mon Aug 31 01:21:32 IST 2026
[2026-08-31 01:21:32,197.197 INFO    ] ================================================
[2026-08-31 01:21:32,869.869 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:21:32
[2026-08-31 01:21:33,480.480 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:21:33,759.759 INFO    ] Initializing speech engine...
[2026-08-31 01:21:33,764.764 INFO    ] 2026-08-31 01:21:33
[2026-08-31 01:21:34,026.026 INFO    ] 2026-08-31 01:21:34
[2026-08-31 01:21:34,077.077 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:21:34,325.325 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:21:34,333.333 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:21:34,539.539 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:21:34,567.567 INFO    ] time= 31/08/2026 01:21:34
[2026-08-31 01:21:34,582.582 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:21:34,591.591 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:21:34,714.714 INFO    ] No existing commands found in stream
[2026-08-31 01:21:39,729.729 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:21:39,732.732 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-08-31 01:21:42,234.234 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 01:21:42,236.236 INFO    ] Checking for system updates...
[2026-08-31 01:21:42,272.272 INFO    ] 200
[2026-08-31 01:21:42,274.274 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:21:42,332.332 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:21:42,334.334 INFO    ] No update needed
[2026-08-31 01:21:42,337.337 INFO    ] Checking for camera pi updates...
[2026-08-31 01:21:42,371.371 INFO    ] 200
[2026-08-31 01:21:42,374.374 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:21:42,415.415 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:21:42,511.511 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:21:42,513.513 INFO    ] No camera update needed
[2026-08-31 01:21:42,516.516 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:21:42,519.519 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:21:42,525.525 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:21:42,530.530 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:21:44,573.573 INFO    ] ================================================
[2026-08-31 01:21:44,589.589 INFO    ] Launching Daemon at Mon Aug 31 01:21:44 IST 2026
[2026-08-31 01:21:44,600.600 INFO    ] ================================================
[2026-08-31 01:21:45,165.165 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:21:45
[2026-08-31 01:21:45,748.748 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:21:46,001.001 INFO    ] Initializing speech engine...
[2026-08-31 01:21:46,015.015 INFO    ] 2026-08-31 01:21:46
[2026-08-31 01:21:46,282.282 INFO    ] 2026-08-31 01:21:46
[2026-08-31 01:21:46,318.318 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:21:46,574.574 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:21:46,579.579 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:21:46,818.818 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:21:46,837.837 INFO    ] time= 31/08/2026 01:21:46
[2026-08-31 01:21:46,852.852 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:21:46,862.862 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:21:47,011.011 INFO    ] No existing commands found in stream
[2026-08-31 01:21:52,038.038 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:21:52,041.041 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-08-31 01:21:54,338.338 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 01:21:54,341.341 INFO    ] Checking for system updates...
[2026-08-31 01:21:54,378.378 INFO    ] 200
[2026-08-31 01:21:54,380.380 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:21:54,439.439 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:21:54,442.442 INFO    ] No update needed
[2026-08-31 01:21:54,444.444 INFO    ] Checking for camera pi updates...
[2026-08-31 01:21:54,485.485 INFO    ] 200
[2026-08-31 01:21:54,488.488 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:21:54,533.533 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:21:54,619.619 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:21:54,622.622 INFO    ] No camera update needed
[2026-08-31 01:21:54,624.624 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:21:54,626.626 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:21:54,632.632 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:21:54,637.637 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:21:56,678.678 INFO    ] ================================================
[2026-08-31 01:21:56,694.694 INFO    ] Launching Daemon at Mon Aug 31 01:21:56 IST 2026
[2026-08-31 01:21:56,706.706 INFO    ] ================================================
[2026-08-31 01:21:57,336.336 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:21:57
[2026-08-31 01:21:57,988.988 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:21:58,271.271 INFO    ] Initializing speech engine...
[2026-08-31 01:21:58,276.276 INFO    ] 2026-08-31 01:21:58
[2026-08-31 01:21:58,537.537 INFO    ] 2026-08-31 01:21:58
[2026-08-31 01:21:58,593.593 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:21:58,841.841 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:21:58,845.845 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:21:59,074.074 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:21:59,080.080 INFO    ] time= 31/08/2026 01:21:59
[2026-08-31 01:21:59,098.098 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:21:59,126.126 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:21:59,247.247 INFO    ] No existing commands found in stream
[2026-08-31 01:22:04,277.277 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:22:04,280.280 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-08-31 01:22:05,572.572 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 01:22:05,575.575 INFO    ] Checking for system updates...
[2026-08-31 01:22:05,612.612 INFO    ] 200
[2026-08-31 01:22:05,615.615 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:22:05,675.675 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:22:05,678.678 INFO    ] No update needed
[2026-08-31 01:22:05,681.681 INFO    ] Checking for camera pi updates...
[2026-08-31 01:22:05,716.716 INFO    ] 200
[2026-08-31 01:22:05,719.719 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:22:05,760.760 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:22:05,841.841 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:22:05,844.844 INFO    ] No camera update needed
[2026-08-31 01:22:05,846.846 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:22:05,849.849 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:22:05,856.856 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:22:05,862.862 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:22:07,904.904 INFO    ] ================================================
[2026-08-31 01:22:07,919.919 INFO    ] Launching Daemon at Mon Aug 31 01:22:07 IST 2026
[2026-08-31 01:22:07,930.930 INFO    ] ================================================
[2026-08-31 01:22:08,511.511 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:22:08
[2026-08-31 01:22:09,108.108 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:22:09,386.386 INFO    ] Initializing speech engine...
[2026-08-31 01:22:09,395.395 INFO    ] 2026-08-31 01:22:09
[2026-08-31 01:22:09,653.653 INFO    ] 2026-08-31 01:22:09
[2026-08-31 01:22:09,708.708 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:22:09,991.991 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:22:09,997.997 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:22:10,193.193 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:22:10,207.207 INFO    ] time= 31/08/2026 01:22:10
[2026-08-31 01:22:10,217.217 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:22:10,243.243 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:22:10,360.360 INFO    ] No existing commands found in stream
[2026-08-31 01:22:15,390.390 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:22:15,392.392 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-08-31 01:22:19,614.614 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 01:22:19,617.617 INFO    ] Checking for system updates...
[2026-08-31 01:22:19,657.657 INFO    ] 200
[2026-08-31 01:22:19,660.660 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:22:19,720.720 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:22:19,722.722 INFO    ] No update needed
[2026-08-31 01:22:19,725.725 INFO    ] Checking for camera pi updates...
[2026-08-31 01:22:19,763.763 INFO    ] 200
[2026-08-31 01:22:19,766.766 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:22:19,807.807 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:22:19,890.890 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:22:19,893.893 INFO    ] No camera update needed
[2026-08-31 01:22:19,896.896 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:22:19,899.899 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:22:19,905.905 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:22:19,911.911 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:22:21,952.952 INFO    ] ================================================
[2026-08-31 01:22:21,969.969 INFO    ] Launching Daemon at Mon Aug 31 01:22:21 IST 2026
[2026-08-31 01:22:21,980.980 INFO    ] ================================================
[2026-08-31 01:22:22,626.626 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:22:22
[2026-08-31 01:22:23,287.287 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:22:24,866.866 INFO    ] Initializing speech engine...
[2026-08-31 01:22:24,871.871 INFO    ] 2026-08-31 01:22:24
[2026-08-31 01:22:25,152.152 INFO    ] 2026-08-31 01:22:25
[2026-08-31 01:22:25,176.176 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:22:25,366.366 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:22:25,373.373 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:22:25,562.562 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:22:25,568.568 INFO    ] time= 31/08/2026 01:22:25
[2026-08-31 01:22:25,592.592 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:22:25,627.627 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:22:25,776.776 INFO    ] No existing commands found in stream
[2026-08-31 01:22:30,806.806 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:22:30,809.809 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-08-31 01:22:33,752.752 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 01:22:33,755.755 INFO    ] Checking for system updates...
[2026-08-31 01:22:33,791.791 INFO    ] 200
[2026-08-31 01:22:33,793.793 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:22:33,846.846 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:22:33,848.848 INFO    ] No update needed
[2026-08-31 01:22:33,851.851 INFO    ] Checking for camera pi updates...
[2026-08-31 01:22:33,888.888 INFO    ] 200
[2026-08-31 01:22:33,891.891 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:22:33,936.936 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:22:33,988.988 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:22:33,991.991 INFO    ] No camera update needed
[2026-08-31 01:22:33,993.993 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:22:33,995.995 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:22:34,000.000 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:22:34,005.005 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:22:36,045.045 INFO    ] ================================================
[2026-08-31 01:22:36,060.060 INFO    ] Launching Daemon at Mon Aug 31 01:22:36 IST 2026
[2026-08-31 01:22:36,070.070 INFO    ] ================================================
[2026-08-31 01:22:36,645.645 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:22:36
[2026-08-31 01:22:37,238.238 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:22:37,526.526 INFO    ] Initializing speech engine...
[2026-08-31 01:22:37,538.538 INFO    ] 2026-08-31 01:22:37
[2026-08-31 01:22:37,835.835 INFO    ] 2026-08-31 01:22:37
[2026-08-31 01:22:37,907.907 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:22:38,164.164 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:22:38,171.171 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:22:38,407.407 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:22:38,426.426 INFO    ] time= 31/08/2026 01:22:38
[2026-08-31 01:22:38,436.436 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:22:38,466.466 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:22:38,617.617 INFO    ] No existing commands found in stream
[2026-08-31 01:22:43,648.648 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:22:43,651.651 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-08-31 01:22:45,111.111 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 01:22:45,114.114 INFO    ] Checking for system updates...
[2026-08-31 01:22:45,149.149 INFO    ] 200
[2026-08-31 01:22:45,152.152 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:22:45,203.203 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:22:45,206.206 INFO    ] No update needed
[2026-08-31 01:22:45,208.208 INFO    ] Checking for camera pi updates...
[2026-08-31 01:22:45,243.243 INFO    ] 200
[2026-08-31 01:22:45,245.245 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:22:45,286.286 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:22:45,370.370 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:22:45,372.372 INFO    ] No camera update needed
[2026-08-31 01:22:45,375.375 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:22:45,378.378 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:22:45,384.384 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:22:45,390.390 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:22:47,433.433 INFO    ] ================================================
[2026-08-31 01:22:47,448.448 INFO    ] Launching Daemon at Mon Aug 31 01:22:47 IST 2026
[2026-08-31 01:22:47,459.459 INFO    ] ================================================
[2026-08-31 01:22:48,035.035 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:22:48
[2026-08-31 01:22:48,617.617 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:22:48,890.890 INFO    ] Initializing speech engine...
[2026-08-31 01:22:48,899.899 INFO    ] 2026-08-31 01:22:48
[2026-08-31 01:22:49,155.155 INFO    ] 2026-08-31 01:22:49
[2026-08-31 01:22:49,184.184 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:22:49,436.436 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:22:49,456.456 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:22:49,692.692 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:22:49,699.699 INFO    ] time= 31/08/2026 01:22:49
[2026-08-31 01:22:49,716.716 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:22:49,739.739 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:22:49,907.907 INFO    ] No existing commands found in stream
[2026-08-31 01:22:54,928.928 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:22:54,931.931 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-08-31 01:22:56,432.432 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 01:22:56,435.435 INFO    ] Checking for system updates...
[2026-08-31 01:22:56,474.474 INFO    ] 200
[2026-08-31 01:22:56,477.477 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:22:56,530.530 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:22:56,533.533 INFO    ] No update needed
[2026-08-31 01:22:56,535.535 INFO    ] Checking for camera pi updates...
[2026-08-31 01:22:56,570.570 INFO    ] 200
[2026-08-31 01:22:56,573.573 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:22:56,620.620 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:22:56,702.702 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:22:56,705.705 INFO    ] No camera update needed
[2026-08-31 01:22:56,707.707 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:22:56,710.710 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:22:56,715.715 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:22:56,721.721 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:22:58,761.761 INFO    ] ================================================
[2026-08-31 01:22:58,776.776 INFO    ] Launching Daemon at Mon Aug 31 01:22:58 IST 2026
[2026-08-31 01:22:58,787.787 INFO    ] ================================================
[2026-08-31 01:22:59,416.416 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:22:59
[2026-08-31 01:23:00,014.014 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:23:00,291.291 INFO    ] Initializing speech engine...
[2026-08-31 01:23:00,300.300 INFO    ] 2026-08-31 01:23:00
[2026-08-31 01:23:00,546.546 INFO    ] 2026-08-31 01:23:00
[2026-08-31 01:23:00,581.581 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:23:00,838.838 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:23:00,843.843 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:23:01,051.051 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:23:01,100.100 INFO    ] time= 31/08/2026 01:23:01
[2026-08-31 01:23:01,106.106 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:23:01,123.123 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:23:01,233.233 INFO    ] No existing commands found in stream
[2026-08-31 01:23:06,263.263 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:23:06,268.268 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-08-31 01:23:09,112.112 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 01:23:09,115.115 INFO    ] Checking for system updates...
[2026-08-31 01:23:09,154.154 INFO    ] 200
[2026-08-31 01:23:09,156.156 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:23:09,209.209 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:23:09,212.212 INFO    ] No update needed
[2026-08-31 01:23:09,214.214 INFO    ] Checking for camera pi updates...
[2026-08-31 01:23:09,251.251 INFO    ] 200
[2026-08-31 01:23:09,254.254 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:23:09,294.294 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:23:09,394.394 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:23:09,397.397 INFO    ] No camera update needed
[2026-08-31 01:23:09,399.399 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:23:09,401.401 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:23:09,407.407 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:23:09,412.412 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:23:11,450.450 INFO    ] ================================================
[2026-08-31 01:23:11,466.466 INFO    ] Launching Daemon at Mon Aug 31 01:23:11 IST 2026
[2026-08-31 01:23:11,476.476 INFO    ] ================================================
[2026-08-31 01:23:12,041.041 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:23:12
[2026-08-31 01:23:12,622.622 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:23:12,892.892 INFO    ] Initializing speech engine...
[2026-08-31 01:23:12,901.901 INFO    ] 2026-08-31 01:23:12
[2026-08-31 01:23:13,148.148 INFO    ] 2026-08-31 01:23:13
[2026-08-31 01:23:13,183.183 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:23:13,440.440 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:23:13,450.450 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:23:13,689.689 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:23:13,717.717 INFO    ] time= 31/08/2026 01:23:13
[2026-08-31 01:23:13,723.723 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:23:13,744.744 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:23:13,874.874 INFO    ] No existing commands found in stream
[2026-08-31 01:23:18,887.887 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:23:18,890.890 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-08-31 01:23:20,873.873 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 01:23:20,875.875 INFO    ] Checking for system updates...
[2026-08-31 01:23:20,910.910 INFO    ] 200
[2026-08-31 01:23:20,913.913 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:23:20,969.969 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:23:20,971.971 INFO    ] No update needed
[2026-08-31 01:23:20,974.974 INFO    ] Checking for camera pi updates...
[2026-08-31 01:23:21,007.007 INFO    ] 200
[2026-08-31 01:23:21,010.010 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:23:21,051.051 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:23:21,131.131 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:23:21,133.133 INFO    ] No camera update needed
[2026-08-31 01:23:21,136.136 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:23:21,138.138 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:23:21,143.143 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:23:21,148.148 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:23:23,189.189 INFO    ] ================================================
[2026-08-31 01:23:23,204.204 INFO    ] Launching Daemon at Mon Aug 31 01:23:23 IST 2026
[2026-08-31 01:23:23,215.215 INFO    ] ================================================
[2026-08-31 01:23:23,847.847 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:23:23
[2026-08-31 01:23:24,430.430 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:23:24,688.688 INFO    ] Initializing speech engine...
[2026-08-31 01:23:24,702.702 INFO    ] 2026-08-31 01:23:24
[2026-08-31 01:23:24,959.959 INFO    ] 2026-08-31 01:23:24
[2026-08-31 01:23:24,993.993 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:23:25,250.250 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:23:25,259.259 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:23:25,521.521 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:23:25,528.528 INFO    ] time= 31/08/2026 01:23:25
[2026-08-31 01:23:25,548.548 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:23:25,575.575 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:23:25,682.682 INFO    ] No existing commands found in stream
[2026-08-31 01:23:30,695.695 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:23:30,698.698 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-08-31 01:23:34,791.791 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 01:23:34,793.793 INFO    ] Checking for system updates...
[2026-08-31 01:23:34,829.829 INFO    ] 200
[2026-08-31 01:23:34,831.831 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:23:34,883.883 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:23:34,885.885 INFO    ] No update needed
[2026-08-31 01:23:34,887.887 INFO    ] Checking for camera pi updates...
[2026-08-31 01:23:34,925.925 INFO    ] 200
[2026-08-31 01:23:34,927.927 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:23:34,970.970 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:23:35,057.057 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:23:35,060.060 INFO    ] No camera update needed
[2026-08-31 01:23:35,062.062 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:23:35,064.064 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:23:35,070.070 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:23:35,075.075 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:23:37,116.116 INFO    ] ================================================
[2026-08-31 01:23:37,131.131 INFO    ] Launching Daemon at Mon Aug 31 01:23:37 IST 2026
[2026-08-31 01:23:37,142.142 INFO    ] ================================================
[2026-08-31 01:23:37,714.714 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:23:37
[2026-08-31 01:23:38,302.302 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:23:38,563.563 INFO    ] Initializing speech engine...
[2026-08-31 01:23:38,587.587 INFO    ] 2026-08-31 01:23:38
[2026-08-31 01:23:38,863.863 INFO    ] 2026-08-31 01:23:38
[2026-08-31 01:23:38,898.898 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:23:39,125.125 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:23:39,170.170 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:23:39,423.423 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:23:39,467.467 INFO    ] time= 31/08/2026 01:23:39
[2026-08-31 01:23:39,500.500 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:23:39,506.506 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:23:39,663.663 INFO    ] No existing commands found in stream
[2026-08-31 01:23:44,683.683 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:23:44,686.686 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-08-31 01:23:47,153.153 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 01:23:47,155.155 INFO    ] Checking for system updates...
[2026-08-31 01:23:47,191.191 INFO    ] 200
[2026-08-31 01:23:47,193.193 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:23:47,252.252 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:23:47,255.255 INFO    ] No update needed
[2026-08-31 01:23:47,258.258 INFO    ] Checking for camera pi updates...
[2026-08-31 01:23:47,295.295 INFO    ] 200
[2026-08-31 01:23:47,297.297 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:23:47,342.342 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:23:47,429.429 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:23:47,431.431 INFO    ] No camera update needed
[2026-08-31 01:23:47,433.433 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:23:47,435.435 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:23:47,441.441 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:23:47,446.446 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:23:49,486.486 INFO    ] ================================================
[2026-08-31 01:23:49,502.502 INFO    ] Launching Daemon at Mon Aug 31 01:23:49 IST 2026
[2026-08-31 01:23:49,513.513 INFO    ] ================================================
[2026-08-31 01:23:50,097.097 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:23:50
[2026-08-31 01:23:50,696.696 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:23:50,969.969 INFO    ] Initializing speech engine...
[2026-08-31 01:23:50,978.978 INFO    ] 2026-08-31 01:23:50
[2026-08-31 01:23:51,241.241 INFO    ] 2026-08-31 01:23:51
[2026-08-31 01:23:51,295.295 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:23:51,644.644 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:23:51,696.696 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:23:51,923.923 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:23:51,953.953 INFO    ] time= 31/08/2026 01:23:51
[2026-08-31 01:23:52,018.018 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:23:52,047.047 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:23:52,196.196 INFO    ] No existing commands found in stream
[2026-08-31 01:23:57,228.228 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:23:57,231.231 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-08-31 01:23:59,819.819 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 01:23:59,822.822 INFO    ] Checking for system updates...
[2026-08-31 01:23:59,858.858 INFO    ] 200
[2026-08-31 01:23:59,860.860 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:23:59,919.919 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:23:59,922.922 INFO    ] No update needed
[2026-08-31 01:23:59,924.924 INFO    ] Checking for camera pi updates...
[2026-08-31 01:23:59,957.957 INFO    ] 200
[2026-08-31 01:23:59,960.960 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:24:00,000.000 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:24:00,094.094 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:24:00,096.096 INFO    ] No camera update needed
[2026-08-31 01:24:00,103.103 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:24:00,106.106 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:24:00,112.112 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:24:00,118.118 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:24:02,162.162 INFO    ] ================================================
[2026-08-31 01:24:02,183.183 INFO    ] Launching Daemon at Mon Aug 31 01:24:02 IST 2026
[2026-08-31 01:24:02,197.197 INFO    ] ================================================
[2026-08-31 01:24:02,923.923 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:24:02
[2026-08-31 01:24:03,540.540 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:24:03,792.792 INFO    ] Initializing speech engine...
[2026-08-31 01:24:03,816.816 INFO    ] 2026-08-31 01:24:03
[2026-08-31 01:24:04,073.073 INFO    ] 2026-08-31 01:24:04
[2026-08-31 01:24:04,117.117 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:24:04,373.373 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:24:04,379.379 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:24:04,638.638 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:24:04,647.647 INFO    ] time= 31/08/2026 01:24:04
[2026-08-31 01:24:04,665.665 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:24:04,683.683 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:24:04,829.829 INFO    ] No existing commands found in stream
[2026-08-31 01:24:09,865.865 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:24:09,868.868 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-08-31 01:24:11,871.871 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 01:24:11,873.873 INFO    ] Checking for system updates...
[2026-08-31 01:24:11,908.908 INFO    ] 200
[2026-08-31 01:24:11,911.911 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:24:11,972.972 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:24:11,974.974 INFO    ] No update needed
[2026-08-31 01:24:11,976.976 INFO    ] Checking for camera pi updates...
[2026-08-31 01:24:12,015.015 INFO    ] 200
[2026-08-31 01:24:12,017.017 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:24:12,063.063 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:24:12,162.162 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:24:12,165.165 INFO    ] No camera update needed
[2026-08-31 01:24:12,167.167 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:24:12,170.170 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:24:12,175.175 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:24:12,180.180 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:24:14,222.222 INFO    ] ================================================
[2026-08-31 01:24:14,238.238 INFO    ] Launching Daemon at Mon Aug 31 01:24:14 IST 2026
[2026-08-31 01:24:14,250.250 INFO    ] ================================================
[2026-08-31 01:24:14,925.925 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:24:14
[2026-08-31 01:24:15,524.524 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:24:15,796.796 INFO    ] Initializing speech engine...
[2026-08-31 01:24:15,804.804 INFO    ] 2026-08-31 01:24:15
[2026-08-31 01:24:16,053.053 INFO    ] 2026-08-31 01:24:16
[2026-08-31 01:24:16,119.119 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:24:16,348.348 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:24:16,354.354 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:24:16,571.571 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:24:16,626.626 INFO    ] time= 31/08/2026 01:24:16
[2026-08-31 01:24:16,636.636 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:24:16,652.652 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:24:16,778.778 INFO    ] No existing commands found in stream
[2026-08-31 01:24:21,799.799 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:24:21,802.802 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-08-31 01:24:23,471.471 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 01:24:23,473.473 INFO    ] Checking for system updates...
[2026-08-31 01:24:23,508.508 INFO    ] 200
[2026-08-31 01:24:23,511.511 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:24:23,562.562 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:24:23,565.565 INFO    ] No update needed
[2026-08-31 01:24:23,567.567 INFO    ] Checking for camera pi updates...
[2026-08-31 01:24:23,601.601 INFO    ] 200
[2026-08-31 01:24:23,603.603 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:24:23,650.650 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:24:23,756.756 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:24:23,758.758 INFO    ] No camera update needed
[2026-08-31 01:24:23,761.761 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:24:23,763.763 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:24:23,768.768 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:24:23,773.773 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:24:25,816.816 INFO    ] ================================================
[2026-08-31 01:24:25,832.832 INFO    ] Launching Daemon at Mon Aug 31 01:24:25 IST 2026
[2026-08-31 01:24:25,844.844 INFO    ] ================================================
[2026-08-31 01:24:26,411.411 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:24:26
[2026-08-31 01:24:26,992.992 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:24:27,242.242 INFO    ] Initializing speech engine...
[2026-08-31 01:24:27,255.255 INFO    ] 2026-08-31 01:24:27
[2026-08-31 01:24:27,521.521 INFO    ] 2026-08-31 01:24:27
[2026-08-31 01:24:27,563.563 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:24:27,812.812 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:24:27,822.822 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:24:28,057.057 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:24:28,085.085 INFO    ] time= 31/08/2026 01:24:28
[2026-08-31 01:24:28,091.091 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:24:28,109.109 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:24:28,237.237 INFO    ] No existing commands found in stream
[2026-08-31 01:24:33,253.253 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:24:33,256.256 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-08-31 01:24:37,054.054 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 01:24:37,056.056 INFO    ] Checking for system updates...
[2026-08-31 01:24:37,092.092 INFO    ] 200
[2026-08-31 01:24:37,094.094 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:24:37,154.154 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:24:37,157.157 INFO    ] No update needed
[2026-08-31 01:24:37,159.159 INFO    ] Checking for camera pi updates...
[2026-08-31 01:24:37,193.193 INFO    ] 200
[2026-08-31 01:24:37,196.196 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:24:37,239.239 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:24:37,321.321 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:24:37,324.324 INFO    ] No camera update needed
[2026-08-31 01:24:37,327.327 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:24:37,330.330 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:24:37,336.336 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:24:37,342.342 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:24:39,386.386 INFO    ] ================================================
[2026-08-31 01:24:39,402.402 INFO    ] Launching Daemon at Mon Aug 31 01:24:39 IST 2026
[2026-08-31 01:24:39,415.415 INFO    ] ================================================
[2026-08-31 01:24:39,997.997 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:24:39
[2026-08-31 01:24:40,613.613 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:24:40,901.901 INFO    ] Initializing speech engine...
[2026-08-31 01:24:40,906.906 INFO    ] 2026-08-31 01:24:40
[2026-08-31 01:24:41,168.168 INFO    ] 2026-08-31 01:24:41
[2026-08-31 01:24:41,197.197 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:24:41,503.503 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:24:41,512.512 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:24:41,706.706 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:24:41,724.724 INFO    ] time= 31/08/2026 01:24:41
[2026-08-31 01:24:41,733.733 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:24:41,759.759 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:24:41,885.885 INFO    ] No existing commands found in stream
[2026-08-31 01:24:46,916.916 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:24:46,919.919 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-08-31 01:24:48,339.339 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 01:24:48,341.341 INFO    ] Checking for system updates...
[2026-08-31 01:24:48,381.381 INFO    ] 200
[2026-08-31 01:24:48,384.384 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:24:48,437.437 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:24:48,439.439 INFO    ] No update needed
[2026-08-31 01:24:48,442.442 INFO    ] Checking for camera pi updates...
[2026-08-31 01:24:48,475.475 INFO    ] 200
[2026-08-31 01:24:48,478.478 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:24:48,518.518 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:24:48,598.598 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:24:48,600.600 INFO    ] No camera update needed
[2026-08-31 01:24:48,603.603 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:24:48,605.605 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:24:48,611.611 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:24:48,617.617 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:24:50,656.656 INFO    ] ================================================
[2026-08-31 01:24:50,672.672 INFO    ] Launching Daemon at Mon Aug 31 01:24:50 IST 2026
[2026-08-31 01:24:50,683.683 INFO    ] ================================================
[2026-08-31 01:24:51,246.246 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:24:51
[2026-08-31 01:24:51,826.826 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:24:52,091.091 INFO    ] Initializing speech engine...
[2026-08-31 01:24:52,104.104 INFO    ] 2026-08-31 01:24:52
[2026-08-31 01:24:52,353.353 INFO    ] 2026-08-31 01:24:52
[2026-08-31 01:24:52,388.388 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:24:52,644.644 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:24:52,653.653 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:24:52,909.909 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:24:52,918.918 INFO    ] time= 31/08/2026 01:24:52
[2026-08-31 01:24:52,934.934 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:24:52,953.953 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:24:53,098.098 INFO    ] No existing commands found in stream
[2026-08-31 01:24:58,129.129 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:24:58,131.131 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-08-31 01:24:59,893.893 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 01:24:59,896.896 INFO    ] Checking for system updates...
[2026-08-31 01:24:59,931.931 INFO    ] 200
[2026-08-31 01:24:59,934.934 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:24:59,986.986 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:24:59,988.988 INFO    ] No update needed
[2026-08-31 01:24:59,991.991 INFO    ] Checking for camera pi updates...
[2026-08-31 01:25:00,028.028 INFO    ] 200
[2026-08-31 01:25:00,030.030 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:25:00,070.070 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:25:00,154.154 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:25:00,156.156 INFO    ] No camera update needed
[2026-08-31 01:25:00,159.159 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:25:00,161.161 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:25:00,166.166 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:25:00,171.171 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:25:02,216.216 INFO    ] ================================================
[2026-08-31 01:25:02,234.234 INFO    ] Launching Daemon at Mon Aug 31 01:25:02 IST 2026
[2026-08-31 01:25:02,260.260 INFO    ] ================================================
[2026-08-31 01:25:02,886.886 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:25:02
[2026-08-31 01:25:03,632.632 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:25:03,983.983 INFO    ] Initializing speech engine...
[2026-08-31 01:25:03,990.990 INFO    ] 2026-08-31 01:25:03
[2026-08-31 01:25:04,291.291 INFO    ] 2026-08-31 01:25:04
[2026-08-31 01:25:04,350.350 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:25:04,597.597 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:25:04,603.603 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:25:04,853.853 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:25:04,863.863 INFO    ] time= 31/08/2026 01:25:04
[2026-08-31 01:25:04,882.882 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:25:04,911.911 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:25:05,067.067 INFO    ] No existing commands found in stream
[2026-08-31 01:25:10,098.098 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:25:10,102.102 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-08-31 01:25:12,139.139 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 01:25:12,142.142 INFO    ] Checking for system updates...
[2026-08-31 01:25:12,178.178 INFO    ] 200
[2026-08-31 01:25:12,181.181 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:25:12,242.242 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:25:12,244.244 INFO    ] No update needed
[2026-08-31 01:25:12,246.246 INFO    ] Checking for camera pi updates...
[2026-08-31 01:25:12,280.280 INFO    ] 200
[2026-08-31 01:25:12,282.282 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:25:12,323.323 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:25:12,406.406 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:25:12,409.409 INFO    ] No camera update needed
[2026-08-31 01:25:12,411.411 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:25:12,413.413 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:25:12,419.419 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:25:12,424.424 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:25:14,463.463 INFO    ] ================================================
[2026-08-31 01:25:14,479.479 INFO    ] Launching Daemon at Mon Aug 31 01:25:14 IST 2026
[2026-08-31 01:25:14,490.490 INFO    ] ================================================
[2026-08-31 01:25:15,057.057 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:25:15
[2026-08-31 01:25:15,643.643 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:25:15,909.909 INFO    ] Initializing speech engine...
[2026-08-31 01:25:15,922.922 INFO    ] 2026-08-31 01:25:15
[2026-08-31 01:25:16,171.171 INFO    ] 2026-08-31 01:25:16
[2026-08-31 01:25:16,204.204 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:25:16,405.405 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:25:16,449.449 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:25:16,692.692 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:25:16,739.739 INFO    ] time= 31/08/2026 01:25:16
[2026-08-31 01:25:16,755.755 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:25:16,765.765 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:25:16,890.890 INFO    ] No existing commands found in stream
[2026-08-31 01:25:21,907.907 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:25:21,910.910 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-08-31 01:25:23,512.512 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 01:25:23,515.515 INFO    ] Checking for system updates...
[2026-08-31 01:25:23,556.556 INFO    ] 200
[2026-08-31 01:25:23,559.559 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:25:23,619.619 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:25:23,622.622 INFO    ] No update needed
[2026-08-31 01:25:23,624.624 INFO    ] Checking for camera pi updates...
[2026-08-31 01:25:23,658.658 INFO    ] 200
[2026-08-31 01:25:23,661.661 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:25:23,709.709 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:25:23,812.812 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:25:23,814.814 INFO    ] No camera update needed
[2026-08-31 01:25:23,817.817 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:25:23,820.820 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:25:23,827.827 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:25:23,832.832 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:25:25,875.875 INFO    ] ================================================
[2026-08-31 01:25:25,890.890 INFO    ] Launching Daemon at Mon Aug 31 01:25:25 IST 2026
[2026-08-31 01:25:25,901.901 INFO    ] ================================================
[2026-08-31 01:25:26,468.468 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:25:26
[2026-08-31 01:25:27,052.052 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:25:27,319.319 INFO    ] Initializing speech engine...
[2026-08-31 01:25:27,327.327 INFO    ] 2026-08-31 01:25:27
[2026-08-31 01:25:27,575.575 INFO    ] 2026-08-31 01:25:27
[2026-08-31 01:25:27,609.609 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:25:27,865.865 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:25:27,870.870 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:25:28,094.094 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:25:28,128.128 INFO    ] time= 31/08/2026 01:25:28
[2026-08-31 01:25:28,134.134 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:25:28,152.152 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:25:28,283.283 INFO    ] No existing commands found in stream
[2026-08-31 01:25:33,298.298 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:25:33,300.300 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-08-31 01:25:37,671.671 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 01:25:37,673.673 INFO    ] Checking for system updates...
[2026-08-31 01:25:37,708.708 INFO    ] 200
[2026-08-31 01:25:37,711.711 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:25:37,771.771 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:25:37,774.774 INFO    ] No update needed
[2026-08-31 01:25:37,776.776 INFO    ] Checking for camera pi updates...
[2026-08-31 01:25:37,814.814 INFO    ] 200
[2026-08-31 01:25:37,816.816 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:25:37,862.862 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:25:38,041.041 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:25:38,043.043 INFO    ] No camera update needed
[2026-08-31 01:25:38,046.046 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:25:38,048.048 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:25:38,053.053 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:25:38,058.058 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:25:40,101.101 INFO    ] ================================================
[2026-08-31 01:25:40,118.118 INFO    ] Launching Daemon at Mon Aug 31 01:25:40 IST 2026
[2026-08-31 01:25:40,128.128 INFO    ] ================================================
[2026-08-31 01:25:40,707.707 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:25:40
[2026-08-31 01:25:41,296.296 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:25:41,550.550 INFO    ] Initializing speech engine...
[2026-08-31 01:25:41,559.559 INFO    ] 2026-08-31 01:25:41
[2026-08-31 01:25:41,858.858 INFO    ] 2026-08-31 01:25:41
[2026-08-31 01:25:41,894.894 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:25:42,123.123 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:25:42,133.133 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:25:42,352.352 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:25:42,364.364 INFO    ] time= 31/08/2026 01:25:42
[2026-08-31 01:25:42,414.414 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:25:42,463.463 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:25:42,571.571 INFO    ] No existing commands found in stream
[2026-08-31 01:25:47,583.583 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:25:47,586.586 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-08-31 01:25:52,151.151 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 01:25:52,153.153 INFO    ] Checking for system updates...
[2026-08-31 01:25:52,189.189 INFO    ] 200
[2026-08-31 01:25:52,192.192 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:25:52,252.252 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:25:52,255.255 INFO    ] No update needed
[2026-08-31 01:25:52,257.257 INFO    ] Checking for camera pi updates...
[2026-08-31 01:25:52,295.295 INFO    ] 200
[2026-08-31 01:25:52,298.298 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:25:52,344.344 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:25:52,426.426 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:25:52,429.429 INFO    ] No camera update needed
[2026-08-31 01:25:52,431.431 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:25:52,433.433 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:25:52,438.438 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:25:52,443.443 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:25:54,485.485 INFO    ] ================================================
[2026-08-31 01:25:54,501.501 INFO    ] Launching Daemon at Mon Aug 31 01:25:54 IST 2026
[2026-08-31 01:25:54,512.512 INFO    ] ================================================
[2026-08-31 01:25:55,079.079 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:25:55
[2026-08-31 01:25:55,673.673 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:25:55,987.987 INFO    ] Initializing speech engine...
[2026-08-31 01:25:55,998.998 INFO    ] 2026-08-31 01:25:55
[2026-08-31 01:25:56,264.264 INFO    ] 2026-08-31 01:25:56
[2026-08-31 01:25:56,309.309 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:25:56,656.656 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:25:56,678.678 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:25:56,909.909 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:25:56,942.942 INFO    ] time= 31/08/2026 01:25:56
[2026-08-31 01:25:56,990.990 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:25:57,047.047 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:25:57,175.175 INFO    ] No existing commands found in stream
[2026-08-31 01:26:02,200.200 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:26:02,203.203 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-08-31 01:26:05,677.677 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 01:26:05,681.681 INFO    ] Checking for system updates...
[2026-08-31 01:26:05,723.723 INFO    ] 200
[2026-08-31 01:26:05,726.726 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:26:05,779.779 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:26:05,782.782 INFO    ] No update needed
[2026-08-31 01:26:05,784.784 INFO    ] Checking for camera pi updates...
[2026-08-31 01:26:05,819.819 INFO    ] 200
[2026-08-31 01:26:05,822.822 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:26:05,864.864 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:26:05,959.959 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:26:05,962.962 INFO    ] No camera update needed
[2026-08-31 01:26:05,965.965 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:26:05,968.968 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:26:05,974.974 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:26:05,980.980 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:26:08,023.023 INFO    ] ================================================
[2026-08-31 01:26:08,038.038 INFO    ] Launching Daemon at Mon Aug 31 01:26:08 IST 2026
[2026-08-31 01:26:08,049.049 INFO    ] ================================================
[2026-08-31 01:26:08,640.640 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:26:08
[2026-08-31 01:26:09,245.245 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:26:09,518.518 INFO    ] Initializing speech engine...
[2026-08-31 01:26:09,528.528 INFO    ] 2026-08-31 01:26:09
[2026-08-31 01:26:09,791.791 INFO    ] 2026-08-31 01:26:09
[2026-08-31 01:26:09,844.844 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:26:10,093.093 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:26:10,098.098 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:26:10,326.326 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:26:10,333.333 INFO    ] time= 31/08/2026 01:26:10
[2026-08-31 01:26:10,351.351 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:26:10,379.379 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:26:10,506.506 INFO    ] No existing commands found in stream
[2026-08-31 01:26:15,536.536 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:26:15,539.539 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-08-31 01:26:19,179.179 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 01:26:19,181.181 INFO    ] Checking for system updates...
[2026-08-31 01:26:19,222.222 INFO    ] 200
[2026-08-31 01:26:19,224.224 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:26:19,288.288 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:26:19,291.291 INFO    ] No update needed
[2026-08-31 01:26:19,293.293 INFO    ] Checking for camera pi updates...
[2026-08-31 01:26:19,331.331 INFO    ] 200
[2026-08-31 01:26:19,334.334 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:26:19,380.380 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:26:19,465.465 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:26:19,467.467 INFO    ] No camera update needed
[2026-08-31 01:26:19,470.470 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:26:19,472.472 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:26:19,477.477 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:26:19,482.482 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:26:21,524.524 INFO    ] ================================================
[2026-08-31 01:26:21,540.540 INFO    ] Launching Daemon at Mon Aug 31 01:26:21 IST 2026
[2026-08-31 01:26:21,551.551 INFO    ] ================================================
[2026-08-31 01:26:22,125.125 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:26:22
[2026-08-31 01:26:22,710.710 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:26:22,967.967 INFO    ] Initializing speech engine...
[2026-08-31 01:26:22,975.975 INFO    ] 2026-08-31 01:26:22
[2026-08-31 01:26:23,276.276 INFO    ] 2026-08-31 01:26:23
[2026-08-31 01:26:23,312.312 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:26:23,519.519 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:26:23,534.534 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:26:23,716.716 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:26:23,778.778 INFO    ] time= 31/08/2026 01:26:23
[2026-08-31 01:26:23,792.792 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:26:23,813.813 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:26:23,954.954 INFO    ] No existing commands found in stream
[2026-08-31 01:26:28,966.966 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:26:28,969.969 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-08-31 01:26:29,671.671 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 01:26:29,674.674 INFO    ] Checking for system updates...
[2026-08-31 01:26:29,713.713 INFO    ] 200
[2026-08-31 01:26:29,716.716 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:26:29,776.776 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:26:29,779.779 INFO    ] No update needed
[2026-08-31 01:26:29,781.781 INFO    ] Checking for camera pi updates...
[2026-08-31 01:26:29,819.819 INFO    ] 200
[2026-08-31 01:26:29,822.822 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:26:29,869.869 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:26:29,953.953 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:26:29,956.956 INFO    ] No camera update needed
[2026-08-31 01:26:29,958.958 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:26:29,960.960 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:26:29,966.966 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:26:29,971.971 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:26:32,013.013 INFO    ] ================================================
[2026-08-31 01:26:32,030.030 INFO    ] Launching Daemon at Mon Aug 31 01:26:32 IST 2026
[2026-08-31 01:26:32,042.042 INFO    ] ================================================
[2026-08-31 01:26:32,640.640 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:26:32
[2026-08-31 01:26:33,271.271 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:26:33,529.529 INFO    ] Initializing speech engine...
[2026-08-31 01:26:33,548.548 INFO    ] 2026-08-31 01:26:33
[2026-08-31 01:26:33,795.795 INFO    ] 2026-08-31 01:26:33
[2026-08-31 01:26:33,831.831 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:26:34,146.146 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:26:34,151.151 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:26:34,347.347 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:26:34,362.362 INFO    ] time= 31/08/2026 01:26:34
[2026-08-31 01:26:34,371.371 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:26:34,398.398 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:26:34,549.549 INFO    ] No existing commands found in stream
[2026-08-31 01:26:39,579.579 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:26:39,582.582 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-08-31 01:26:43,152.152 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 01:26:43,154.154 INFO    ] Checking for system updates...
[2026-08-31 01:26:43,195.195 INFO    ] 200
[2026-08-31 01:26:43,197.197 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:26:43,249.249 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:26:43,251.251 INFO    ] No update needed
[2026-08-31 01:26:43,254.254 INFO    ] Checking for camera pi updates...
[2026-08-31 01:26:43,287.287 INFO    ] 200
[2026-08-31 01:26:43,290.290 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:26:43,330.330 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:26:43,412.412 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:26:43,415.415 INFO    ] No camera update needed
[2026-08-31 01:26:43,417.417 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:26:43,420.420 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:26:43,425.425 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:26:43,430.430 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:26:45,472.472 INFO    ] ================================================
[2026-08-31 01:26:45,488.488 INFO    ] Launching Daemon at Mon Aug 31 01:26:45 IST 2026
[2026-08-31 01:26:45,499.499 INFO    ] ================================================
[2026-08-31 01:26:46,131.131 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:26:46
[2026-08-31 01:26:46,712.712 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:26:46,979.979 INFO    ] Initializing speech engine...
[2026-08-31 01:26:46,988.988 INFO    ] 2026-08-31 01:26:46
[2026-08-31 01:26:47,246.246 INFO    ] 2026-08-31 01:26:47
[2026-08-31 01:26:47,301.301 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:26:47,585.585 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:26:47,593.593 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:26:47,785.785 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:26:47,803.803 INFO    ] time= 31/08/2026 01:26:47
[2026-08-31 01:26:47,815.815 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:26:47,838.838 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:26:47,964.964 INFO    ] No existing commands found in stream
[2026-08-31 01:26:52,999.999 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:26:53,002.002 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-08-31 01:26:56,871.871 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 01:26:56,873.873 INFO    ] Checking for system updates...
[2026-08-31 01:26:56,908.908 INFO    ] 200
[2026-08-31 01:26:56,911.911 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:26:56,971.971 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:26:56,973.973 INFO    ] No update needed
[2026-08-31 01:26:56,976.976 INFO    ] Checking for camera pi updates...
[2026-08-31 01:26:57,013.013 INFO    ] 200
[2026-08-31 01:26:57,016.016 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:26:57,061.061 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:26:57,169.169 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:26:57,171.171 INFO    ] No camera update needed
[2026-08-31 01:26:57,173.173 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:26:57,176.176 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:26:57,181.181 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:26:57,186.186 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:26:59,228.228 INFO    ] ================================================
[2026-08-31 01:26:59,243.243 INFO    ] Launching Daemon at Mon Aug 31 01:26:59 IST 2026
[2026-08-31 01:26:59,254.254 INFO    ] ================================================
[2026-08-31 01:26:59,822.822 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:26:59
[2026-08-31 01:27:00,406.406 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:27:00,672.672 INFO    ] Initializing speech engine...
[2026-08-31 01:27:00,680.680 INFO    ] 2026-08-31 01:27:00
[2026-08-31 01:27:00,928.928 INFO    ] 2026-08-31 01:27:00
[2026-08-31 01:27:00,964.964 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:27:01,219.219 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:27:01,225.225 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:27:01,464.464 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:27:01,482.482 INFO    ] time= 31/08/2026 01:27:01
[2026-08-31 01:27:01,500.500 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:27:01,529.529 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:27:01,649.649 INFO    ] No existing commands found in stream
[2026-08-31 01:27:06,674.674 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:27:06,677.677 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-08-31 01:27:09,769.769 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 01:27:09,772.772 INFO    ] Checking for system updates...
[2026-08-31 01:27:09,812.812 INFO    ] 200
[2026-08-31 01:27:09,814.814 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:27:09,875.875 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:27:09,877.877 INFO    ] No update needed
[2026-08-31 01:27:09,880.880 INFO    ] Checking for camera pi updates...
[2026-08-31 01:27:09,918.918 INFO    ] 200
[2026-08-31 01:27:09,920.920 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:27:09,960.960 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:27:10,050.050 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:27:10,052.052 INFO    ] No camera update needed
[2026-08-31 01:27:10,054.054 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:27:10,056.056 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:27:10,062.062 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:27:10,067.067 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:27:12,109.109 INFO    ] ================================================
[2026-08-31 01:27:12,125.125 INFO    ] Launching Daemon at Mon Aug 31 01:27:12 IST 2026
[2026-08-31 01:27:12,136.136 INFO    ] ================================================
[2026-08-31 01:27:12,812.812 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:27:12
[2026-08-31 01:27:13,505.505 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:27:13,825.825 INFO    ] Initializing speech engine...
[2026-08-31 01:27:13,833.833 INFO    ] 2026-08-31 01:27:13
[2026-08-31 01:27:14,112.112 INFO    ] 2026-08-31 01:27:14
[2026-08-31 01:27:14,223.223 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:27:14,434.434 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:27:14,440.440 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:27:14,631.631 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:27:14,638.638 INFO    ] time= 31/08/2026 01:27:14
[2026-08-31 01:27:14,659.659 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:27:14,685.685 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:27:14,805.805 INFO    ] No existing commands found in stream
[2026-08-31 01:27:19,835.835 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:27:19,838.838 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-08-31 01:27:22,059.059 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 01:27:22,061.061 INFO    ] Checking for system updates...
[2026-08-31 01:27:22,096.096 INFO    ] 200
[2026-08-31 01:27:22,099.099 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:27:22,160.160 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:27:22,162.162 INFO    ] No update needed
[2026-08-31 01:27:22,164.164 INFO    ] Checking for camera pi updates...
[2026-08-31 01:27:22,203.203 INFO    ] 200
[2026-08-31 01:27:22,205.205 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:27:22,245.245 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:27:22,333.333 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:27:22,336.336 INFO    ] No camera update needed
[2026-08-31 01:27:22,338.338 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:27:22,341.341 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:27:22,346.346 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:27:22,351.351 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:27:24,391.391 INFO    ] ================================================
[2026-08-31 01:27:24,407.407 INFO    ] Launching Daemon at Mon Aug 31 01:27:24 IST 2026
[2026-08-31 01:27:24,417.417 INFO    ] ================================================
[2026-08-31 01:27:24,991.991 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:27:24
[2026-08-31 01:27:25,581.581 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:27:25,828.828 INFO    ] Initializing speech engine...
[2026-08-31 01:27:25,836.836 INFO    ] 2026-08-31 01:27:25
[2026-08-31 01:27:26,110.110 INFO    ] 2026-08-31 01:27:26
[2026-08-31 01:27:26,145.145 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:27:26,407.407 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:27:26,413.413 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:27:26,647.647 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:27:26,677.677 INFO    ] time= 31/08/2026 01:27:26
[2026-08-31 01:27:26,694.694 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:27:26,703.703 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:27:26,836.836 INFO    ] No existing commands found in stream
[2026-08-31 01:27:31,860.860 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:27:31,863.863 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-08-31 01:27:35,530.530 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 01:27:35,533.533 INFO    ] Checking for system updates...
[2026-08-31 01:27:35,574.574 INFO    ] 200
[2026-08-31 01:27:35,577.577 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:27:35,641.641 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:27:35,644.644 INFO    ] No update needed
[2026-08-31 01:27:35,647.647 INFO    ] Checking for camera pi updates...
[2026-08-31 01:27:35,687.687 INFO    ] 200
[2026-08-31 01:27:35,690.690 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:27:35,743.743 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:27:35,846.846 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:27:35,848.848 INFO    ] No camera update needed
[2026-08-31 01:27:35,851.851 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:27:35,853.853 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:27:35,858.858 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:27:35,863.863 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:27:37,907.907 INFO    ] ================================================
[2026-08-31 01:27:37,923.923 INFO    ] Launching Daemon at Mon Aug 31 01:27:37 IST 2026
[2026-08-31 01:27:37,935.935 INFO    ] ================================================
[2026-08-31 01:27:38,564.564 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:27:38
[2026-08-31 01:27:39,166.166 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:27:39,443.443 INFO    ] Initializing speech engine...
[2026-08-31 01:27:39,451.451 INFO    ] 2026-08-31 01:27:39
[2026-08-31 01:27:39,714.714 INFO    ] 2026-08-31 01:27:39
[2026-08-31 01:27:39,769.769 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:27:40,051.051 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:27:40,060.060 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:27:40,255.255 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:27:40,272.272 INFO    ] time= 31/08/2026 01:27:40
[2026-08-31 01:27:40,281.281 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:27:40,307.307 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:27:40,423.423 INFO    ] No existing commands found in stream
[2026-08-31 01:27:45,453.453 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:27:45,456.456 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-08-31 01:27:47,539.539 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 01:27:47,541.541 INFO    ] Checking for system updates...
[2026-08-31 01:27:47,582.582 INFO    ] 200
[2026-08-31 01:27:47,584.584 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:27:47,645.645 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:27:47,648.648 INFO    ] No update needed
[2026-08-31 01:27:47,650.650 INFO    ] Checking for camera pi updates...
[2026-08-31 01:27:47,689.689 INFO    ] 200
[2026-08-31 01:27:47,691.691 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:27:47,738.738 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:27:47,929.929 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:27:47,932.932 INFO    ] No camera update needed
[2026-08-31 01:27:47,934.934 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:27:47,936.936 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:27:47,942.942 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:27:47,948.948 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:27:49,988.988 INFO    ] ================================================
[2026-08-31 01:27:50,002.002 INFO    ] Launching Daemon at Mon Aug 31 01:27:49 IST 2026
[2026-08-31 01:27:50,013.013 INFO    ] ================================================
[2026-08-31 01:27:50,578.578 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:27:50
[2026-08-31 01:27:51,162.162 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:27:51,419.419 INFO    ] Initializing speech engine...
[2026-08-31 01:27:51,428.428 INFO    ] 2026-08-31 01:27:51
[2026-08-31 01:27:51,710.710 INFO    ] 2026-08-31 01:27:51
[2026-08-31 01:27:51,744.744 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:27:52,008.008 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:27:52,014.014 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:27:52,254.254 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:27:52,279.279 INFO    ] time= 31/08/2026 01:27:52
[2026-08-31 01:27:52,294.294 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:27:52,303.303 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:27:52,454.454 INFO    ] No existing commands found in stream
[2026-08-31 01:27:57,485.485 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:27:57,488.488 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-08-31 01:28:01,996.996 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 01:28:02,002.002 INFO    ] Checking for system updates...
[2026-08-31 01:28:02,063.063 INFO    ] 200
[2026-08-31 01:28:02,067.067 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:28:02,147.147 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:28:02,153.153 INFO    ] No update needed
[2026-08-31 01:28:02,164.164 INFO    ] Checking for camera pi updates...
[2026-08-31 01:28:02,226.226 INFO    ] 200
[2026-08-31 01:28:02,229.229 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:28:02,343.343 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:28:02,409.409 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:28:02,411.411 INFO    ] No camera update needed
[2026-08-31 01:28:02,414.414 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:28:02,417.417 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:28:02,424.424 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:28:02,430.430 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:28:04,471.471 INFO    ] ================================================
[2026-08-31 01:28:04,487.487 INFO    ] Launching Daemon at Mon Aug 31 01:28:04 IST 2026
[2026-08-31 01:28:04,498.498 INFO    ] ================================================
[2026-08-31 01:28:05,083.083 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:28:05
[2026-08-31 01:28:05,685.685 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:28:05,964.964 INFO    ] Initializing speech engine...
[2026-08-31 01:28:05,971.971 INFO    ] 2026-08-31 01:28:05
[2026-08-31 01:28:06,231.231 INFO    ] 2026-08-31 01:28:06
[2026-08-31 01:28:06,290.290 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:28:06,643.643 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:28:06,695.695 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:28:06,912.912 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:28:06,974.974 INFO    ] time= 31/08/2026 01:28:06
[2026-08-31 01:28:07,039.039 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:28:07,058.058 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:28:07,213.213 INFO    ] No existing commands found in stream
[2026-08-31 01:28:12,234.234 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:28:12,237.237 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-08-31 01:28:15,192.192 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 01:28:15,194.194 INFO    ] Checking for system updates...
[2026-08-31 01:28:15,235.235 INFO    ] 200
[2026-08-31 01:28:15,238.238 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:28:15,297.297 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:28:15,300.300 INFO    ] No update needed
[2026-08-31 01:28:15,303.303 INFO    ] Checking for camera pi updates...
[2026-08-31 01:28:15,341.341 INFO    ] 200
[2026-08-31 01:28:15,344.344 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:28:15,395.395 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:28:15,509.509 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:28:15,512.512 INFO    ] No camera update needed
[2026-08-31 01:28:15,514.514 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:28:15,518.518 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:28:15,525.525 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:28:15,531.531 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:28:17,571.571 INFO    ] ================================================
[2026-08-31 01:28:17,586.586 INFO    ] Launching Daemon at Mon Aug 31 01:28:17 IST 2026
[2026-08-31 01:28:17,597.597 INFO    ] ================================================
[2026-08-31 01:28:18,249.249 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:28:18
[2026-08-31 01:28:18,922.922 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:28:19,205.205 INFO    ] Initializing speech engine...
[2026-08-31 01:28:19,211.211 INFO    ] 2026-08-31 01:28:19
[2026-08-31 01:28:19,471.471 INFO    ] 2026-08-31 01:28:19
[2026-08-31 01:28:19,528.528 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:28:19,773.773 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:28:19,781.781 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:28:20,008.008 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:28:20,016.016 INFO    ] time= 31/08/2026 01:28:20
[2026-08-31 01:28:20,038.038 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:28:20,066.066 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:28:20,198.198 INFO    ] No existing commands found in stream
[2026-08-31 01:28:25,234.234 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:28:25,237.237 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-08-31 01:28:27,554.554 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 01:28:27,557.557 INFO    ] Checking for system updates...
[2026-08-31 01:28:27,598.598 INFO    ] 200
[2026-08-31 01:28:27,601.601 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:28:27,653.653 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:28:27,656.656 INFO    ] No update needed
[2026-08-31 01:28:27,659.659 INFO    ] Checking for camera pi updates...
[2026-08-31 01:28:27,697.697 INFO    ] 200
[2026-08-31 01:28:27,700.700 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:28:27,742.742 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:28:27,822.822 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:28:27,825.825 INFO    ] No camera update needed
[2026-08-31 01:28:27,828.828 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:28:27,830.830 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:28:27,836.836 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:28:27,842.842 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:28:29,882.882 INFO    ] ================================================
[2026-08-31 01:28:29,896.896 INFO    ] Launching Daemon at Mon Aug 31 01:28:29 IST 2026
[2026-08-31 01:28:29,907.907 INFO    ] ================================================
[2026-08-31 01:28:30,499.499 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:28:30
[2026-08-31 01:28:31,101.101 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:28:31,375.375 INFO    ] Initializing speech engine...
[2026-08-31 01:28:31,384.384 INFO    ] 2026-08-31 01:28:31
[2026-08-31 01:28:31,631.631 INFO    ] 2026-08-31 01:28:31
[2026-08-31 01:28:31,666.666 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:28:31,923.923 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:28:31,929.929 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:28:32,115.115 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:28:32,172.172 INFO    ] time= 31/08/2026 01:28:32
[2026-08-31 01:28:32,210.210 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:28:32,216.216 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:28:32,357.357 INFO    ] No existing commands found in stream
[2026-08-31 01:28:37,368.368 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:28:37,370.370 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-08-31 01:28:38,977.977 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 01:28:38,980.980 INFO    ] Checking for system updates...
[2026-08-31 01:28:39,015.015 INFO    ] 200
[2026-08-31 01:28:39,018.018 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:28:39,069.069 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:28:39,072.072 INFO    ] No update needed
[2026-08-31 01:28:39,074.074 INFO    ] Checking for camera pi updates...
[2026-08-31 01:28:39,109.109 INFO    ] 200
[2026-08-31 01:28:39,111.111 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:28:39,156.156 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:28:39,236.236 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:28:39,239.239 INFO    ] No camera update needed
[2026-08-31 01:28:39,241.241 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:28:39,243.243 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:28:39,248.248 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:28:39,253.253 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:28:41,298.298 INFO    ] ================================================
[2026-08-31 01:28:41,313.313 INFO    ] Launching Daemon at Mon Aug 31 01:28:41 IST 2026
[2026-08-31 01:28:41,324.324 INFO    ] ================================================
[2026-08-31 01:28:41,962.962 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:28:41
[2026-08-31 01:28:42,623.623 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:28:42,923.923 INFO    ] Initializing speech engine...
[2026-08-31 01:28:42,936.936 INFO    ] 2026-08-31 01:28:42
[2026-08-31 01:28:43,214.214 INFO    ] 2026-08-31 01:28:43
[2026-08-31 01:28:43,257.257 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:28:43,544.544 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:28:43,551.551 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:28:43,782.782 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:28:43,791.791 INFO    ] time= 31/08/2026 01:28:43
[2026-08-31 01:28:43,799.799 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:28:43,841.841 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:28:43,998.998 INFO    ] No existing commands found in stream
[2026-08-31 01:28:49,010.010 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:28:49,013.013 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-08-31 01:28:52,569.569 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 01:28:52,572.572 INFO    ] Checking for system updates...
[2026-08-31 01:28:52,609.609 INFO    ] 200
[2026-08-31 01:28:52,611.611 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:28:52,672.672 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:28:52,675.675 INFO    ] No update needed
[2026-08-31 01:28:52,677.677 INFO    ] Checking for camera pi updates...
[2026-08-31 01:28:52,712.712 INFO    ] 200
[2026-08-31 01:28:52,714.714 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:28:52,760.760 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:28:52,841.841 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:28:52,843.843 INFO    ] No camera update needed
[2026-08-31 01:28:52,846.846 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:28:52,848.848 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:28:52,854.854 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:28:52,859.859 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:28:54,899.899 INFO    ] ================================================
[2026-08-31 01:28:54,914.914 INFO    ] Launching Daemon at Mon Aug 31 01:28:54 IST 2026
[2026-08-31 01:28:54,925.925 INFO    ] ================================================
[2026-08-31 01:28:55,489.489 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:28:55
[2026-08-31 01:28:56,070.070 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:28:56,335.335 INFO    ] Initializing speech engine...
[2026-08-31 01:28:56,344.344 INFO    ] 2026-08-31 01:28:56
[2026-08-31 01:28:56,608.608 INFO    ] 2026-08-31 01:28:56
[2026-08-31 01:28:56,660.660 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:28:57,006.006 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:28:57,027.027 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:28:57,268.268 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:28:57,303.303 INFO    ] time= 31/08/2026 01:28:57
[2026-08-31 01:28:57,352.352 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:28:57,393.393 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:28:57,543.543 INFO    ] No existing commands found in stream
[2026-08-31 01:29:02,575.575 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:29:02,579.579 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-08-31 01:29:04,694.694 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 01:29:04,697.697 INFO    ] Checking for system updates...
[2026-08-31 01:29:04,732.732 INFO    ] 200
[2026-08-31 01:29:04,734.734 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:29:04,787.787 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:29:04,790.790 INFO    ] No update needed
[2026-08-31 01:29:04,792.792 INFO    ] Checking for camera pi updates...
[2026-08-31 01:29:04,825.825 INFO    ] 200
[2026-08-31 01:29:04,828.828 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:29:04,876.876 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:29:04,974.974 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:29:04,977.977 INFO    ] No camera update needed
[2026-08-31 01:29:04,979.979 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:29:04,982.982 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:29:04,987.987 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:29:04,992.992 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:29:07,031.031 INFO    ] ================================================
[2026-08-31 01:29:07,046.046 INFO    ] Launching Daemon at Mon Aug 31 01:29:07 IST 2026
[2026-08-31 01:29:07,057.057 INFO    ] ================================================
[2026-08-31 01:29:07,624.624 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:29:07
[2026-08-31 01:29:08,209.209 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:29:08,461.461 INFO    ] Initializing speech engine...
[2026-08-31 01:29:08,469.469 INFO    ] 2026-08-31 01:29:08
[2026-08-31 01:29:08,760.760 INFO    ] 2026-08-31 01:29:08
[2026-08-31 01:29:08,798.798 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:29:09,019.019 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:29:09,078.078 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:29:09,279.279 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:29:09,318.318 INFO    ] time= 31/08/2026 01:29:09
[2026-08-31 01:29:09,350.350 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:29:09,368.368 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:29:09,488.488 INFO    ] No existing commands found in stream
[2026-08-31 01:29:14,511.511 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:29:14,513.513 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-08-31 01:29:15,471.471 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 01:29:15,474.474 INFO    ] Checking for system updates...
[2026-08-31 01:29:15,513.513 INFO    ] 200
[2026-08-31 01:29:15,515.515 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:29:15,573.573 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:29:15,575.575 INFO    ] No update needed
[2026-08-31 01:29:15,578.578 INFO    ] Checking for camera pi updates...
[2026-08-31 01:29:15,612.612 INFO    ] 200
[2026-08-31 01:29:15,615.615 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:29:15,660.660 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:29:15,743.743 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:29:15,746.746 INFO    ] No camera update needed
[2026-08-31 01:29:15,749.749 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:29:15,751.751 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:29:15,758.758 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:29:15,763.763 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:29:17,804.804 INFO    ] ================================================
[2026-08-31 01:29:17,819.819 INFO    ] Launching Daemon at Mon Aug 31 01:29:17 IST 2026
[2026-08-31 01:29:17,830.830 INFO    ] ================================================
[2026-08-31 01:29:18,478.478 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:29:18
[2026-08-31 01:29:19,130.130 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:29:19,411.411 INFO    ] Initializing speech engine...
[2026-08-31 01:29:19,418.418 INFO    ] 2026-08-31 01:29:19
[2026-08-31 01:29:19,691.691 INFO    ] 2026-08-31 01:29:19
[2026-08-31 01:29:19,733.733 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:29:19,958.958 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:29:19,963.963 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:29:20,214.214 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:29:20,221.221 INFO    ] time= 31/08/2026 01:29:20
[2026-08-31 01:29:20,239.239 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:29:20,261.261 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:29:20,451.451 INFO    ] No existing commands found in stream
[2026-08-31 01:29:25,480.480 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:29:25,483.483 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-08-31 01:29:28,139.139 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 01:29:28,142.142 INFO    ] Checking for system updates...
[2026-08-31 01:29:28,181.181 INFO    ] 200
[2026-08-31 01:29:28,183.183 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:29:28,235.235 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:29:28,237.237 INFO    ] No update needed
[2026-08-31 01:29:28,240.240 INFO    ] Checking for camera pi updates...
[2026-08-31 01:29:28,277.277 INFO    ] 200
[2026-08-31 01:29:28,280.280 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:29:28,320.320 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:29:28,401.401 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:29:28,404.404 INFO    ] No camera update needed
[2026-08-31 01:29:28,407.407 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:29:28,409.409 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:29:28,414.414 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:29:28,420.420 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:29:30,459.459 INFO    ] ================================================
[2026-08-31 01:29:30,474.474 INFO    ] Launching Daemon at Mon Aug 31 01:29:30 IST 2026
[2026-08-31 01:29:30,485.485 INFO    ] ================================================
[2026-08-31 01:29:31,050.050 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:29:31
[2026-08-31 01:29:31,632.632 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:29:31,900.900 INFO    ] Initializing speech engine...
[2026-08-31 01:29:31,909.909 INFO    ] 2026-08-31 01:29:31
[2026-08-31 01:29:32,172.172 INFO    ] 2026-08-31 01:29:32
[2026-08-31 01:29:32,209.209 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:29:32,479.479 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:29:32,484.484 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:29:32,693.693 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:29:32,750.750 INFO    ] time= 31/08/2026 01:29:32
[2026-08-31 01:29:32,762.762 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:29:32,781.781 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:29:32,895.895 INFO    ] No existing commands found in stream
[2026-08-31 01:29:37,928.928 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:29:37,930.930 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-08-31 01:29:41,137.137 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 01:29:41,140.140 INFO    ] Checking for system updates...
[2026-08-31 01:29:41,176.176 INFO    ] 200
[2026-08-31 01:29:41,178.178 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:29:41,230.230 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:29:41,232.232 INFO    ] No update needed
[2026-08-31 01:29:41,235.235 INFO    ] Checking for camera pi updates...
[2026-08-31 01:29:41,268.268 INFO    ] 200
[2026-08-31 01:29:41,271.271 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:29:41,311.311 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:29:41,394.394 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:29:41,396.396 INFO    ] No camera update needed
[2026-08-31 01:29:41,399.399 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:29:41,401.401 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:29:41,406.406 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:29:41,411.411 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:29:43,454.454 INFO    ] ================================================
[2026-08-31 01:29:43,469.469 INFO    ] Launching Daemon at Mon Aug 31 01:29:43 IST 2026
[2026-08-31 01:29:43,479.479 INFO    ] ================================================
[2026-08-31 01:29:44,045.045 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:29:44
[2026-08-31 01:29:44,628.628 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:29:44,895.895 INFO    ] Initializing speech engine...
[2026-08-31 01:29:44,905.905 INFO    ] 2026-08-31 01:29:44
[2026-08-31 01:29:45,150.150 INFO    ] 2026-08-31 01:29:45
[2026-08-31 01:29:45,184.184 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:29:45,434.434 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:29:45,443.443 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:29:45,663.663 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:29:45,701.701 INFO    ] time= 31/08/2026 01:29:45
[2026-08-31 01:29:45,708.708 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:29:45,726.726 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:29:45,857.857 INFO    ] No existing commands found in stream
[2026-08-31 01:29:50,875.875 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:29:50,878.878 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-08-31 01:29:54,192.192 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 01:29:54,194.194 INFO    ] Checking for system updates...
[2026-08-31 01:29:54,233.233 INFO    ] 200
[2026-08-31 01:29:54,236.236 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:29:54,293.293 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:29:54,295.295 INFO    ] No update needed
[2026-08-31 01:29:54,297.297 INFO    ] Checking for camera pi updates...
[2026-08-31 01:29:54,334.334 INFO    ] 200
[2026-08-31 01:29:54,336.336 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:29:54,380.380 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:29:54,562.562 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:29:54,565.565 INFO    ] No camera update needed
[2026-08-31 01:29:54,567.567 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:29:54,570.570 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:29:54,575.575 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:29:54,580.580 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:29:56,623.623 INFO    ] ================================================
[2026-08-31 01:29:56,638.638 INFO    ] Launching Daemon at Mon Aug 31 01:29:56 IST 2026
[2026-08-31 01:29:56,648.648 INFO    ] ================================================
[2026-08-31 01:29:57,217.217 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:29:57
[2026-08-31 01:29:57,800.800 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:29:58,067.067 INFO    ] Initializing speech engine...
[2026-08-31 01:29:58,075.075 INFO    ] 2026-08-31 01:29:58
[2026-08-31 01:29:58,323.323 INFO    ] 2026-08-31 01:29:58
[2026-08-31 01:29:58,358.358 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:29:58,612.612 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:29:58,617.617 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:29:58,853.853 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:29:58,876.876 INFO    ] time= 31/08/2026 01:29:58
[2026-08-31 01:29:58,882.882 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:29:58,899.899 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:29:59,029.029 INFO    ] No existing commands found in stream
[2026-08-31 01:30:04,040.040 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:30:04,043.043 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-08-31 01:30:08,312.312 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 01:30:08,314.314 INFO    ] Checking for system updates...
[2026-08-31 01:30:08,350.350 INFO    ] 200
[2026-08-31 01:30:08,352.352 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:30:08,410.410 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:30:08,412.412 INFO    ] No update needed
[2026-08-31 01:30:08,415.415 INFO    ] Checking for camera pi updates...
[2026-08-31 01:30:08,448.448 INFO    ] 200
[2026-08-31 01:30:08,451.451 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:30:08,490.490 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:30:08,577.577 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:30:08,580.580 INFO    ] No camera update needed
[2026-08-31 01:30:08,582.582 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:30:08,584.584 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:30:08,590.590 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:30:08,595.595 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:30:10,638.638 INFO    ] ================================================
[2026-08-31 01:30:10,653.653 INFO    ] Launching Daemon at Mon Aug 31 01:30:10 IST 2026
[2026-08-31 01:30:10,664.664 INFO    ] ================================================
[2026-08-31 01:30:11,308.308 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:30:11
[2026-08-31 01:30:11,972.972 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:30:12,272.272 INFO    ] Initializing speech engine...
[2026-08-31 01:30:12,281.281 INFO    ] 2026-08-31 01:30:12
[2026-08-31 01:30:12,568.568 INFO    ] 2026-08-31 01:30:12
[2026-08-31 01:30:12,615.615 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:30:12,905.905 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:30:12,913.913 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:30:13,108.108 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:30:13,126.126 INFO    ] time= 31/08/2026 01:30:13
[2026-08-31 01:30:13,155.155 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:30:13,163.163 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:30:13,291.291 INFO    ] No existing commands found in stream
[2026-08-31 01:30:18,322.322 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:30:18,325.325 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-08-31 01:30:20,379.379 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 01:30:20,382.382 INFO    ] Checking for system updates...
[2026-08-31 01:30:20,419.419 INFO    ] 200
[2026-08-31 01:30:20,421.421 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:30:20,481.481 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:30:20,484.484 INFO    ] No update needed
[2026-08-31 01:30:20,486.486 INFO    ] Checking for camera pi updates...
[2026-08-31 01:30:20,529.529 INFO    ] 200
[2026-08-31 01:30:20,532.532 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:30:20,578.578 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:30:20,653.653 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:30:20,656.656 INFO    ] No camera update needed
[2026-08-31 01:30:20,659.659 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:30:20,662.662 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:30:20,668.668 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:30:20,674.674 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:30:22,715.715 INFO    ] ================================================
[2026-08-31 01:30:22,730.730 INFO    ] Launching Daemon at Mon Aug 31 01:30:22 IST 2026
[2026-08-31 01:30:22,741.741 INFO    ] ================================================
[2026-08-31 01:30:23,313.313 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:30:23
[2026-08-31 01:30:23,903.903 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:30:24,172.172 INFO    ] Initializing speech engine...
[2026-08-31 01:30:24,182.182 INFO    ] 2026-08-31 01:30:24
[2026-08-31 01:30:24,457.457 INFO    ] 2026-08-31 01:30:24
[2026-08-31 01:30:24,512.512 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:30:24,767.767 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:30:24,775.775 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:30:25,008.008 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:30:25,015.015 INFO    ] time= 31/08/2026 01:30:25
[2026-08-31 01:30:25,033.033 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:30:25,045.045 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:30:25,192.192 INFO    ] No existing commands found in stream
[2026-08-31 01:30:30,222.222 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:30:30,224.224 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-08-31 01:30:34,497.497 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 01:30:34,500.500 INFO    ] Checking for system updates...
[2026-08-31 01:30:34,539.539 INFO    ] 200
[2026-08-31 01:30:34,541.541 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:30:34,599.599 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:30:34,601.601 INFO    ] No update needed
[2026-08-31 01:30:34,604.604 INFO    ] Checking for camera pi updates...
[2026-08-31 01:30:34,637.637 INFO    ] 200
[2026-08-31 01:30:34,639.639 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:30:34,680.680 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:30:34,801.801 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:30:34,804.804 INFO    ] No camera update needed
[2026-08-31 01:30:34,806.806 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:30:34,809.809 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:30:34,814.814 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:30:34,819.819 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:30:36,859.859 INFO    ] ================================================
[2026-08-31 01:30:36,875.875 INFO    ] Launching Daemon at Mon Aug 31 01:30:36 IST 2026
[2026-08-31 01:30:36,886.886 INFO    ] ================================================
[2026-08-31 01:30:37,455.455 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:30:37
[2026-08-31 01:30:38,041.041 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:30:38,311.311 INFO    ] Initializing speech engine...
[2026-08-31 01:30:38,322.322 INFO    ] 2026-08-31 01:30:38
[2026-08-31 01:30:38,567.567 INFO    ] 2026-08-31 01:30:38
[2026-08-31 01:30:38,602.602 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:30:38,859.859 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:30:38,869.869 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:30:39,105.105 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:30:39,131.131 INFO    ] time= 31/08/2026 01:30:39
[2026-08-31 01:30:39,137.137 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:30:39,155.155 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:30:39,285.285 INFO    ] No existing commands found in stream
[2026-08-31 01:30:44,299.299 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:30:44,302.302 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-08-31 01:30:48,256.256 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 01:30:48,259.259 INFO    ] Checking for system updates...
[2026-08-31 01:30:48,305.305 INFO    ] 200
[2026-08-31 01:30:48,308.308 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:30:48,368.368 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:30:48,371.371 INFO    ] No update needed
[2026-08-31 01:30:48,374.374 INFO    ] Checking for camera pi updates...
[2026-08-31 01:30:48,411.411 INFO    ] 200
[2026-08-31 01:30:48,414.414 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:30:48,456.456 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:30:48,539.539 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:30:48,542.542 INFO    ] No camera update needed
[2026-08-31 01:30:48,545.545 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:30:48,548.548 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:30:48,554.554 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:30:48,560.560 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:30:50,601.601 INFO    ] ================================================
[2026-08-31 01:30:50,616.616 INFO    ] Launching Daemon at Mon Aug 31 01:30:50 IST 2026
[2026-08-31 01:30:50,627.627 INFO    ] ================================================
[2026-08-31 01:30:51,194.194 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:30:51
[2026-08-31 01:30:51,773.773 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:30:52,022.022 INFO    ] Initializing speech engine...
[2026-08-31 01:30:52,025.025 INFO    ] 2026-08-31 01:30:52
[2026-08-31 01:30:52,301.301 INFO    ] 2026-08-31 01:30:52
[2026-08-31 01:30:52,336.336 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:30:52,537.537 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:30:52,596.596 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:30:52,862.862 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:30:52,869.869 INFO    ] time= 31/08/2026 01:30:52
[2026-08-31 01:30:52,887.887 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:30:52,910.910 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:30:53,041.041 INFO    ] No existing commands found in stream
[2026-08-31 01:30:58,071.071 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:30:58,074.074 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-08-31 01:30:59,270.270 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 01:30:59,272.272 INFO    ] Checking for system updates...
[2026-08-31 01:30:59,308.308 INFO    ] 200
[2026-08-31 01:30:59,311.311 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:30:59,362.362 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:30:59,365.365 INFO    ] No update needed
[2026-08-31 01:30:59,367.367 INFO    ] Checking for camera pi updates...
[2026-08-31 01:30:59,404.404 INFO    ] 200
[2026-08-31 01:30:59,406.406 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:30:59,446.446 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:30:59,525.525 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:30:59,528.528 INFO    ] No camera update needed
[2026-08-31 01:30:59,531.531 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:30:59,533.533 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:30:59,538.538 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:30:59,543.543 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:31:01,612.612 INFO    ] ================================================
[2026-08-31 01:31:01,655.655 INFO    ] Launching Daemon at Mon Aug 31 01:31:01 IST 2026
[2026-08-31 01:31:01,708.708 INFO    ] ================================================
[2026-08-31 01:31:02,866.866 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:31:02
[2026-08-31 01:31:03,589.589 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:31:03,870.870 INFO    ] Initializing speech engine...
[2026-08-31 01:31:03,875.875 INFO    ] 2026-08-31 01:31:03
[2026-08-31 01:31:04,123.123 INFO    ] 2026-08-31 01:31:04
[2026-08-31 01:31:04,159.159 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:31:04,419.419 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:31:04,423.423 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:31:04,654.654 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:31:04,683.683 INFO    ] time= 31/08/2026 01:31:04
[2026-08-31 01:31:04,699.699 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:31:04,706.706 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:31:04,837.837 INFO    ] No existing commands found in stream
[2026-08-31 01:31:09,856.856 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:31:09,859.859 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-08-31 01:31:12,390.390 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 01:31:12,393.393 INFO    ] Checking for system updates...
[2026-08-31 01:31:12,428.428 INFO    ] 200
[2026-08-31 01:31:12,431.431 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:31:12,483.483 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:31:12,486.486 INFO    ] No update needed
[2026-08-31 01:31:12,488.488 INFO    ] Checking for camera pi updates...
[2026-08-31 01:31:12,521.521 INFO    ] 200
[2026-08-31 01:31:12,524.524 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:31:12,564.564 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:31:12,648.648 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:31:12,651.651 INFO    ] No camera update needed
[2026-08-31 01:31:12,653.653 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:31:12,655.655 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:31:12,661.661 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:31:12,666.666 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:31:14,705.705 INFO    ] ================================================
[2026-08-31 01:31:14,721.721 INFO    ] Launching Daemon at Mon Aug 31 01:31:14 IST 2026
[2026-08-31 01:31:14,731.731 INFO    ] ================================================
[2026-08-31 01:31:15,299.299 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:31:15
[2026-08-31 01:31:15,881.881 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:31:16,152.152 INFO    ] Initializing speech engine...
[2026-08-31 01:31:16,162.162 INFO    ] 2026-08-31 01:31:16
[2026-08-31 01:31:16,410.410 INFO    ] 2026-08-31 01:31:16
[2026-08-31 01:31:16,446.446 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:31:16,703.703 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:31:16,712.712 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:31:16,932.932 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:31:16,975.975 INFO    ] time= 31/08/2026 01:31:16
[2026-08-31 01:31:16,982.982 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:31:16,998.998 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:31:17,117.117 INFO    ] No existing commands found in stream
[2026-08-31 01:31:22,143.143 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:31:22,145.145 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-08-31 01:31:24,430.430 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 01:31:24,432.432 INFO    ] Checking for system updates...
[2026-08-31 01:31:24,472.472 INFO    ] 200
[2026-08-31 01:31:24,474.474 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:31:24,526.526 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:31:24,528.528 INFO    ] No update needed
[2026-08-31 01:31:24,531.531 INFO    ] Checking for camera pi updates...
[2026-08-31 01:31:24,564.564 INFO    ] 200
[2026-08-31 01:31:24,566.566 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:31:24,612.612 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:31:24,694.694 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:31:24,697.697 INFO    ] No camera update needed
[2026-08-31 01:31:24,699.699 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:31:24,701.701 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:31:24,707.707 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:31:24,712.712 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:31:26,755.755 INFO    ] ================================================
[2026-08-31 01:31:26,771.771 INFO    ] Launching Daemon at Mon Aug 31 01:31:26 IST 2026
[2026-08-31 01:31:26,782.782 INFO    ] ================================================
[2026-08-31 01:31:27,439.439 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:31:27
[2026-08-31 01:31:28,113.113 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:31:28,420.420 INFO    ] Initializing speech engine...
[2026-08-31 01:31:28,429.429 INFO    ] 2026-08-31 01:31:28
[2026-08-31 01:31:28,707.707 INFO    ] 2026-08-31 01:31:28
[2026-08-31 01:31:28,764.764 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:31:29,056.056 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:31:29,065.065 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:31:29,281.281 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:31:29,309.309 INFO    ] time= 31/08/2026 01:31:29
[2026-08-31 01:31:29,318.318 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:31:29,324.324 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:31:29,436.436 INFO    ] No existing commands found in stream
[2026-08-31 01:31:34,461.461 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:31:34,465.465 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-08-31 01:31:36,681.681 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 01:31:36,684.684 INFO    ] Checking for system updates...
[2026-08-31 01:31:36,725.725 INFO    ] 200
[2026-08-31 01:31:36,728.728 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:31:36,779.779 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:31:36,782.782 INFO    ] No update needed
[2026-08-31 01:31:36,784.784 INFO    ] Checking for camera pi updates...
[2026-08-31 01:31:36,818.818 INFO    ] 200
[2026-08-31 01:31:36,821.821 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:31:36,861.861 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:31:36,941.941 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:31:36,943.943 INFO    ] No camera update needed
[2026-08-31 01:31:36,945.945 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:31:36,948.948 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:31:36,953.953 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:31:36,958.958 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:31:39,999.999 INFO    ] ================================================
[2026-08-31 01:31:39,014.014 INFO    ] Launching Daemon at Mon Aug 31 01:31:39 IST 2026
[2026-08-31 01:31:39,024.024 INFO    ] ================================================
[2026-08-31 01:31:39,598.598 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:31:39
[2026-08-31 01:31:40,182.182 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:31:40,443.443 INFO    ] Initializing speech engine...
[2026-08-31 01:31:40,461.461 INFO    ] 2026-08-31 01:31:40
[2026-08-31 01:31:40,713.713 INFO    ] 2026-08-31 01:31:40
[2026-08-31 01:31:40,749.749 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:31:41,011.011 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:31:41,015.015 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:31:41,262.262 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:31:41,283.283 INFO    ] time= 31/08/2026 01:31:41
[2026-08-31 01:31:41,298.298 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:31:41,307.307 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:31:41,437.437 INFO    ] No existing commands found in stream
[2026-08-31 01:31:46,450.450 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:31:46,453.453 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-08-31 01:31:50,088.088 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 01:31:50,090.090 INFO    ] Checking for system updates...
[2026-08-31 01:31:50,126.126 INFO    ] 200
[2026-08-31 01:31:50,128.128 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:31:50,190.190 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:31:50,193.193 INFO    ] No update needed
[2026-08-31 01:31:50,195.195 INFO    ] Checking for camera pi updates...
[2026-08-31 01:31:50,229.229 INFO    ] 200
[2026-08-31 01:31:50,232.232 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:31:50,272.272 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:31:50,353.353 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:31:50,356.356 INFO    ] No camera update needed
[2026-08-31 01:31:50,358.358 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:31:50,361.361 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:31:50,366.366 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:31:50,371.371 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:31:52,411.411 INFO    ] ================================================
[2026-08-31 01:31:52,425.425 INFO    ] Launching Daemon at Mon Aug 31 01:31:52 IST 2026
[2026-08-31 01:31:52,436.436 INFO    ] ================================================
[2026-08-31 01:31:53,008.008 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:31:53
[2026-08-31 01:31:53,599.599 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:31:53,848.848 INFO    ] Initializing speech engine...
[2026-08-31 01:31:53,863.863 INFO    ] 2026-08-31 01:31:53
[2026-08-31 01:31:54,130.130 INFO    ] 2026-08-31 01:31:54
[2026-08-31 01:31:54,165.165 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:31:54,423.423 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:31:54,432.432 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:31:54,640.640 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:31:54,695.695 INFO    ] time= 31/08/2026 01:31:54
[2026-08-31 01:31:54,703.703 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:31:54,721.721 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:31:54,851.851 INFO    ] No existing commands found in stream
[2026-08-31 01:31:59,866.866 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:31:59,869.869 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-08-31 01:32:02,977.977 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 01:32:02,981.981 INFO    ] Checking for system updates...
[2026-08-31 01:32:03,022.022 INFO    ] 200
[2026-08-31 01:32:03,025.025 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:32:03,113.113 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:32:03,116.116 INFO    ] No update needed
[2026-08-31 01:32:03,120.120 INFO    ] Checking for camera pi updates...
[2026-08-31 01:32:03,167.167 INFO    ] 200
[2026-08-31 01:32:03,170.170 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:32:03,231.231 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:32:03,319.319 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:32:03,321.321 INFO    ] No camera update needed
[2026-08-31 01:32:03,323.323 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:32:03,325.325 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:32:03,331.331 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:32:03,336.336 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:32:05,376.376 INFO    ] ================================================
[2026-08-31 01:32:05,391.391 INFO    ] Launching Daemon at Mon Aug 31 01:32:05 IST 2026
[2026-08-31 01:32:05,402.402 INFO    ] ================================================
[2026-08-31 01:32:06,055.055 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:32:06
[2026-08-31 01:32:06,737.737 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:32:06,998.998 INFO    ] Initializing speech engine...
[2026-08-31 01:32:07,012.012 INFO    ] 2026-08-31 01:32:07
[2026-08-31 01:32:07,264.264 INFO    ] 2026-08-31 01:32:07
[2026-08-31 01:32:07,299.299 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:32:07,556.556 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:32:07,562.562 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:32:07,814.814 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:32:07,821.821 INFO    ] time= 31/08/2026 01:32:07
[2026-08-31 01:32:07,841.841 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:32:07,868.868 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:32:08,037.037 INFO    ] No existing commands found in stream
[2026-08-31 01:32:13,069.069 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:32:13,071.071 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-08-31 01:32:16,294.294 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 01:32:16,297.297 INFO    ] Checking for system updates...
[2026-08-31 01:32:16,336.336 INFO    ] 200
[2026-08-31 01:32:16,339.339 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:32:16,391.391 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:32:16,394.394 INFO    ] No update needed
[2026-08-31 01:32:16,396.396 INFO    ] Checking for camera pi updates...
[2026-08-31 01:32:16,429.429 INFO    ] 200
[2026-08-31 01:32:16,432.432 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:32:16,472.472 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:32:16,546.546 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:32:16,549.549 INFO    ] No camera update needed
[2026-08-31 01:32:16,552.552 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:32:16,554.554 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:32:16,559.559 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:32:16,564.564 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:32:18,603.603 INFO    ] ================================================
[2026-08-31 01:32:18,619.619 INFO    ] Launching Daemon at Mon Aug 31 01:32:18 IST 2026
[2026-08-31 01:32:18,630.630 INFO    ] ================================================
[2026-08-31 01:32:19,210.210 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:32:19
[2026-08-31 01:32:19,809.809 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:32:20,088.088 INFO    ] Initializing speech engine...
[2026-08-31 01:32:20,094.094 INFO    ] 2026-08-31 01:32:20
[2026-08-31 01:32:20,356.356 INFO    ] 2026-08-31 01:32:20
[2026-08-31 01:32:20,410.410 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:32:20,695.695 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:32:20,700.700 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:32:20,915.915 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:32:20,944.944 INFO    ] time= 31/08/2026 01:32:20
[2026-08-31 01:32:20,952.952 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:32:20,960.960 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:32:21,084.084 INFO    ] No existing commands found in stream
[2026-08-31 01:32:26,120.120 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:32:26,123.123 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-08-31 01:32:27,190.190 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 01:32:27,193.193 INFO    ] Checking for system updates...
[2026-08-31 01:32:27,233.233 INFO    ] 200
[2026-08-31 01:32:27,235.235 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:32:27,289.289 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:32:27,292.292 INFO    ] No update needed
[2026-08-31 01:32:27,295.295 INFO    ] Checking for camera pi updates...
[2026-08-31 01:32:27,329.329 INFO    ] 200
[2026-08-31 01:32:27,332.332 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:32:27,386.386 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:32:27,476.476 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:32:27,485.485 INFO    ] No camera update needed
[2026-08-31 01:32:27,488.488 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:32:27,491.491 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:32:27,497.497 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:32:27,504.504 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:32:29,545.545 INFO    ] ================================================
[2026-08-31 01:32:29,560.560 INFO    ] Launching Daemon at Mon Aug 31 01:32:29 IST 2026
[2026-08-31 01:32:29,571.571 INFO    ] ================================================
[2026-08-31 01:32:30,142.142 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:32:30
[2026-08-31 01:32:30,724.724 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:32:30,995.995 INFO    ] Initializing speech engine...
[2026-08-31 01:32:31,003.003 INFO    ] 2026-08-31 01:32:30
[2026-08-31 01:32:31,255.255 INFO    ] 2026-08-31 01:32:31
[2026-08-31 01:32:31,290.290 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:32:31,491.491 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:32:31,551.551 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:32:31,777.777 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:32:31,821.821 INFO    ] time= 31/08/2026 01:32:31
[2026-08-31 01:32:31,827.827 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:32:31,845.845 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:32:31,990.990 INFO    ] No existing commands found in stream
[2026-08-31 01:32:37,012.012 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:32:37,015.015 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-08-31 01:32:37,979.979 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 01:32:37,982.982 INFO    ] Checking for system updates...
[2026-08-31 01:32:38,023.023 INFO    ] 200
[2026-08-31 01:32:38,026.026 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:32:38,083.083 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:32:38,086.086 INFO    ] No update needed
[2026-08-31 01:32:38,089.089 INFO    ] Checking for camera pi updates...
[2026-08-31 01:32:38,127.127 INFO    ] 200
[2026-08-31 01:32:38,130.130 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:32:38,188.188 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:32:38,275.275 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:32:38,278.278 INFO    ] No camera update needed
[2026-08-31 01:32:38,281.281 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:32:38,283.283 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:32:38,289.289 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:32:38,295.295 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:32:40,335.335 INFO    ] ================================================
[2026-08-31 01:32:40,351.351 INFO    ] Launching Daemon at Mon Aug 31 01:32:40 IST 2026
[2026-08-31 01:32:40,361.361 INFO    ] ================================================
[2026-08-31 01:32:41,020.020 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:32:41
[2026-08-31 01:32:41,619.619 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:32:41,891.891 INFO    ] Initializing speech engine...
[2026-08-31 01:32:41,900.900 INFO    ] 2026-08-31 01:32:41
[2026-08-31 01:32:42,162.162 INFO    ] 2026-08-31 01:32:42
[2026-08-31 01:32:42,216.216 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:32:42,445.445 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:32:42,465.465 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:32:42,721.721 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:32:42,727.727 INFO    ] time= 31/08/2026 01:32:42
[2026-08-31 01:32:42,744.744 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:32:42,754.754 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:32:42,872.872 INFO    ] No existing commands found in stream
[2026-08-31 01:32:47,908.908 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:32:47,911.911 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-08-31 01:32:50,216.216 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 01:32:50,219.219 INFO    ] Checking for system updates...
[2026-08-31 01:32:50,258.258 INFO    ] 200
[2026-08-31 01:32:50,261.261 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:32:50,321.321 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:32:50,323.323 INFO    ] No update needed
[2026-08-31 01:32:50,325.325 INFO    ] Checking for camera pi updates...
[2026-08-31 01:32:50,358.358 INFO    ] 200
[2026-08-31 01:32:50,361.361 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:32:50,400.400 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:32:50,480.480 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:32:50,482.482 INFO    ] No camera update needed
[2026-08-31 01:32:50,484.484 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:32:50,487.487 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:32:50,492.492 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:32:50,497.497 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:32:52,537.537 INFO    ] ================================================
[2026-08-31 01:32:52,552.552 INFO    ] Launching Daemon at Mon Aug 31 01:32:52 IST 2026
[2026-08-31 01:32:52,562.562 INFO    ] ================================================
[2026-08-31 01:32:53,129.129 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:32:53
[2026-08-31 01:32:53,713.713 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:32:53,986.986 INFO    ] Initializing speech engine...
[2026-08-31 01:32:53,995.995 INFO    ] 2026-08-31 01:32:53
[2026-08-31 01:32:54,246.246 INFO    ] 2026-08-31 01:32:54
[2026-08-31 01:32:54,280.280 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:32:54,545.545 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:32:54,549.549 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:32:54,774.774 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:32:54,808.808 INFO    ] time= 31/08/2026 01:32:54
[2026-08-31 01:32:54,824.824 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:32:54,834.834 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:32:54,976.976 INFO    ] No existing commands found in stream
[2026-08-31 01:33:00,003.003 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:33:00,006.006 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-08-31 01:33:01,392.392 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 01:33:01,395.395 INFO    ] Checking for system updates...
[2026-08-31 01:33:01,432.432 INFO    ] 200
[2026-08-31 01:33:01,434.434 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:33:01,486.486 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:33:01,488.488 INFO    ] No update needed
[2026-08-31 01:33:01,491.491 INFO    ] Checking for camera pi updates...
[2026-08-31 01:33:01,524.524 INFO    ] 200
[2026-08-31 01:33:01,527.527 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:33:01,571.571 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:33:01,642.642 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:33:01,644.644 INFO    ] No camera update needed
[2026-08-31 01:33:01,647.647 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:33:01,649.649 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:33:01,654.654 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:33:01,659.659 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:33:03,701.701 INFO    ] ================================================
[2026-08-31 01:33:03,715.715 INFO    ] Launching Daemon at Mon Aug 31 01:33:03 IST 2026
[2026-08-31 01:33:03,726.726 INFO    ] ================================================
[2026-08-31 01:33:04,293.293 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:33:04
[2026-08-31 01:33:04,877.877 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:33:05,134.134 INFO    ] Initializing speech engine...
[2026-08-31 01:33:05,153.153 INFO    ] 2026-08-31 01:33:05
[2026-08-31 01:33:05,400.400 INFO    ] 2026-08-31 01:33:05
[2026-08-31 01:33:05,435.435 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:33:05,685.685 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:33:05,695.695 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:33:05,897.897 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:33:05,951.951 INFO    ] time= 31/08/2026 01:33:05
[2026-08-31 01:33:05,958.958 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:33:05,975.975 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:33:06,129.129 INFO    ] No existing commands found in stream
[2026-08-31 01:33:11,160.160 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:33:11,163.163 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-08-31 01:33:15,649.649 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 01:33:15,652.652 INFO    ] Checking for system updates...
[2026-08-31 01:33:15,688.688 INFO    ] 200
[2026-08-31 01:33:15,690.690 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:33:15,749.749 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:33:15,751.751 INFO    ] No update needed
[2026-08-31 01:33:15,754.754 INFO    ] Checking for camera pi updates...
[2026-08-31 01:33:15,790.790 INFO    ] 200
[2026-08-31 01:33:15,793.793 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:33:15,836.836 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:33:15,918.918 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:33:15,920.920 INFO    ] No camera update needed
[2026-08-31 01:33:15,923.923 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:33:15,925.925 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:33:15,930.930 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:33:15,935.935 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:33:17,978.978 INFO    ] ================================================
[2026-08-31 01:33:17,993.993 INFO    ] Launching Daemon at Mon Aug 31 01:33:17 IST 2026
[2026-08-31 01:33:18,004.004 INFO    ] ================================================
[2026-08-31 01:33:18,570.570 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:33:18
[2026-08-31 01:33:19,153.153 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:33:19,402.402 INFO    ] Initializing speech engine...
[2026-08-31 01:33:19,416.416 INFO    ] 2026-08-31 01:33:19
[2026-08-31 01:33:19,680.680 INFO    ] 2026-08-31 01:33:19
[2026-08-31 01:33:19,714.714 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:33:19,972.972 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:33:19,981.981 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:33:20,194.194 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:33:20,245.245 INFO    ] time= 31/08/2026 01:33:20
[2026-08-31 01:33:20,251.251 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:33:20,268.268 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:33:20,405.405 INFO    ] No existing commands found in stream
[2026-08-31 01:33:25,423.423 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:33:25,426.426 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-08-31 01:33:28,309.309 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 01:33:28,312.312 INFO    ] Checking for system updates...
[2026-08-31 01:33:28,348.348 INFO    ] 200
[2026-08-31 01:33:28,351.351 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:33:28,410.410 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:33:28,413.413 INFO    ] No update needed
[2026-08-31 01:33:28,416.416 INFO    ] Checking for camera pi updates...
[2026-08-31 01:33:28,454.454 INFO    ] 200
[2026-08-31 01:33:28,457.457 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:33:28,504.504 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:33:28,583.583 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:33:28,586.586 INFO    ] No camera update needed
[2026-08-31 01:33:28,589.589 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:33:28,592.592 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:33:28,598.598 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:33:28,603.603 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:33:30,647.647 INFO    ] ================================================
[2026-08-31 01:33:30,662.662 INFO    ] Launching Daemon at Mon Aug 31 01:33:30 IST 2026
[2026-08-31 01:33:30,674.674 INFO    ] ================================================
[2026-08-31 01:33:31,240.240 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:33:31
[2026-08-31 01:33:31,821.821 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:33:32,134.134 INFO    ] Initializing speech engine...
[2026-08-31 01:33:32,147.147 INFO    ] 2026-08-31 01:33:32
[2026-08-31 01:33:32,437.437 INFO    ] 2026-08-31 01:33:32
[2026-08-31 01:33:32,476.476 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:33:32,710.710 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:33:32,718.718 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:33:32,915.915 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:33:32,934.934 INFO    ] time= 31/08/2026 01:33:32
[2026-08-31 01:33:32,988.988 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:33:33,011.011 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:33:33,096.096 INFO    ] No existing commands found in stream
[2026-08-31 01:33:38,106.106 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:33:38,109.109 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-08-31 01:33:39,030.030 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 01:33:39,033.033 INFO    ] Checking for system updates...
[2026-08-31 01:33:39,068.068 INFO    ] 200
[2026-08-31 01:33:39,071.071 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:33:39,125.125 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:33:39,128.128 INFO    ] No update needed
[2026-08-31 01:33:39,130.130 INFO    ] Checking for camera pi updates...
[2026-08-31 01:33:39,167.167 INFO    ] 200
[2026-08-31 01:33:39,169.169 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:33:39,209.209 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:33:39,288.288 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:33:39,290.290 INFO    ] No camera update needed
[2026-08-31 01:33:39,293.293 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:33:39,295.295 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:33:39,300.300 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:33:39,305.305 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:33:41,349.349 INFO    ] ================================================
[2026-08-31 01:33:41,365.365 INFO    ] Launching Daemon at Mon Aug 31 01:33:41 IST 2026
[2026-08-31 01:33:41,378.378 INFO    ] ================================================
[2026-08-31 01:33:41,982.982 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:33:41
[2026-08-31 01:33:42,599.599 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:33:42,852.852 INFO    ] Initializing speech engine...
[2026-08-31 01:33:42,875.875 INFO    ] 2026-08-31 01:33:42
[2026-08-31 01:33:43,128.128 INFO    ] 2026-08-31 01:33:43
[2026-08-31 01:33:43,163.163 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:33:43,418.418 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:33:43,423.423 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:33:43,636.636 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:33:43,681.681 INFO    ] time= 31/08/2026 01:33:43
[2026-08-31 01:33:43,688.688 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:33:43,705.705 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:33:43,836.836 INFO    ] No existing commands found in stream
[2026-08-31 01:33:48,848.848 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:33:48,851.851 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-08-31 01:33:50,150.150 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 01:33:50,153.153 INFO    ] Checking for system updates...
[2026-08-31 01:33:50,192.192 INFO    ] 200
[2026-08-31 01:33:50,194.194 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:33:50,253.253 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:33:50,255.255 INFO    ] No update needed
[2026-08-31 01:33:50,257.257 INFO    ] Checking for camera pi updates...
[2026-08-31 01:33:50,295.295 INFO    ] 200
[2026-08-31 01:33:50,297.297 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:33:50,337.337 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:33:50,415.415 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:33:50,418.418 INFO    ] No camera update needed
[2026-08-31 01:33:50,420.420 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:33:50,423.423 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:33:50,428.428 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:33:50,433.433 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:33:52,475.475 INFO    ] ================================================
[2026-08-31 01:33:52,491.491 INFO    ] Launching Daemon at Mon Aug 31 01:33:52 IST 2026
[2026-08-31 01:33:52,502.502 INFO    ] ================================================
[2026-08-31 01:33:53,078.078 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:33:53
[2026-08-31 01:33:53,676.676 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:33:53,947.947 INFO    ] Initializing speech engine...
[2026-08-31 01:33:53,957.957 INFO    ] 2026-08-31 01:33:53
[2026-08-31 01:33:54,207.207 INFO    ] 2026-08-31 01:33:54
[2026-08-31 01:33:54,272.272 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:33:54,553.553 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:33:54,562.562 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:33:54,758.758 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:33:54,776.776 INFO    ] time= 31/08/2026 01:33:54
[2026-08-31 01:33:54,804.804 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:33:54,811.811 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:33:54,943.943 INFO    ] No existing commands found in stream
[2026-08-31 01:33:59,973.973 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:33:59,976.976 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-08-31 01:34:03,469.469 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 01:34:03,472.472 INFO    ] Checking for system updates...
[2026-08-31 01:34:03,507.507 INFO    ] 200
[2026-08-31 01:34:03,510.510 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:34:03,578.578 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:34:03,581.581 INFO    ] No update needed
[2026-08-31 01:34:03,585.585 INFO    ] Checking for camera pi updates...
[2026-08-31 01:34:03,618.618 INFO    ] 200
[2026-08-31 01:34:03,621.621 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:34:03,666.666 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:34:03,847.847 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:34:03,849.849 INFO    ] No camera update needed
[2026-08-31 01:34:03,852.852 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:34:03,854.854 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:34:03,860.860 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:34:03,865.865 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:34:05,906.906 INFO    ] ================================================
[2026-08-31 01:34:05,922.922 INFO    ] Launching Daemon at Mon Aug 31 01:34:05 IST 2026
[2026-08-31 01:34:05,933.933 INFO    ] ================================================
[2026-08-31 01:34:06,497.497 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:34:06
[2026-08-31 01:34:07,099.099 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:34:07,356.356 INFO    ] Initializing speech engine...
[2026-08-31 01:34:07,371.371 INFO    ] 2026-08-31 01:34:07
[2026-08-31 01:34:07,636.636 INFO    ] 2026-08-31 01:34:07
[2026-08-31 01:34:07,672.672 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:34:07,931.931 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:34:07,940.940 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:34:08,163.163 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:34:08,208.208 INFO    ] time= 31/08/2026 01:34:08
[2026-08-31 01:34:08,214.214 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:34:08,233.233 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:34:08,373.373 INFO    ] No existing commands found in stream
[2026-08-31 01:34:13,399.399 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:34:13,401.401 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-08-31 01:34:14,856.856 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 01:34:14,859.859 INFO    ] Checking for system updates...
[2026-08-31 01:34:14,894.894 INFO    ] 200
[2026-08-31 01:34:14,897.897 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:34:14,949.949 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:34:14,951.951 INFO    ] No update needed
[2026-08-31 01:34:14,954.954 INFO    ] Checking for camera pi updates...
[2026-08-31 01:34:14,994.994 INFO    ] 200
[2026-08-31 01:34:14,996.996 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:34:15,038.038 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:34:15,129.129 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:34:15,132.132 INFO    ] No camera update needed
[2026-08-31 01:34:15,134.134 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:34:15,136.136 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:34:15,142.142 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:34:15,147.147 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:34:17,189.189 INFO    ] ================================================
[2026-08-31 01:34:17,204.204 INFO    ] Launching Daemon at Mon Aug 31 01:34:17 IST 2026
[2026-08-31 01:34:17,215.215 INFO    ] ================================================
[2026-08-31 01:34:17,877.877 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:34:17
[2026-08-31 01:34:18,494.494 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:34:18,767.767 INFO    ] Initializing speech engine...
[2026-08-31 01:34:18,777.777 INFO    ] 2026-08-31 01:34:18
[2026-08-31 01:34:19,032.032 INFO    ] 2026-08-31 01:34:19
[2026-08-31 01:34:19,091.091 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:34:19,339.339 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:34:19,346.346 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:34:19,575.575 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:34:19,581.581 INFO    ] time= 31/08/2026 01:34:19
[2026-08-31 01:34:19,599.599 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:34:19,616.616 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:34:19,748.748 INFO    ] No existing commands found in stream
[2026-08-31 01:34:24,773.773 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:34:24,776.776 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-08-31 01:34:26,046.046 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 01:34:26,049.049 INFO    ] Checking for system updates...
[2026-08-31 01:34:26,089.089 INFO    ] 200
[2026-08-31 01:34:26,091.091 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:34:26,150.150 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:34:26,153.153 INFO    ] No update needed
[2026-08-31 01:34:26,155.155 INFO    ] Checking for camera pi updates...
[2026-08-31 01:34:26,189.189 INFO    ] 200
[2026-08-31 01:34:26,191.191 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:34:26,231.231 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:34:26,314.314 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:34:26,317.317 INFO    ] No camera update needed
[2026-08-31 01:34:26,320.320 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:34:26,322.322 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:34:26,328.328 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:34:26,333.333 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:34:28,373.373 INFO    ] ================================================
[2026-08-31 01:34:28,388.388 INFO    ] Launching Daemon at Mon Aug 31 01:34:28 IST 2026
[2026-08-31 01:34:28,398.398 INFO    ] ================================================
[2026-08-31 01:34:28,965.965 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:34:28
[2026-08-31 01:34:29,547.547 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:34:29,817.817 INFO    ] Initializing speech engine...
[2026-08-31 01:34:29,826.826 INFO    ] 2026-08-31 01:34:29
[2026-08-31 01:34:30,076.076 INFO    ] 2026-08-31 01:34:30
[2026-08-31 01:34:30,111.111 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:34:30,367.367 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:34:30,380.380 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:34:30,597.597 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:34:30,642.642 INFO    ] time= 31/08/2026 01:34:30
[2026-08-31 01:34:30,649.649 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:34:30,668.668 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:34:30,799.799 INFO    ] No existing commands found in stream
[2026-08-31 01:34:35,812.812 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:34:35,814.814 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-08-31 01:34:39,888.888 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 01:34:39,891.891 INFO    ] Checking for system updates...
[2026-08-31 01:34:39,935.935 INFO    ] 200
[2026-08-31 01:34:39,938.938 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-08-31 01:34:39,941.941 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-08-31 01:34:39,944.944 INFO    ] Checking for camera pi updates...
[2026-08-31 01:34:39,983.983 INFO    ] 200
[2026-08-31 01:34:39,986.986 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-08-31 01:34:39,989.989 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-08-31 01:34:39,991.991 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:34:39,994.994 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:34:40,000.000 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:34:40,005.005 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:34:42,044.044 INFO    ] ================================================
[2026-08-31 01:34:42,060.060 INFO    ] Launching Daemon at Mon Aug 31 01:34:42 IST 2026
[2026-08-31 01:34:42,070.070 INFO    ] ================================================
[2026-08-31 01:34:42,641.641 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:34:42
[2026-08-31 01:34:43,225.225 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:34:43,494.494 INFO    ] Initializing speech engine...
[2026-08-31 01:34:43,503.503 INFO    ] 2026-08-31 01:34:43
[2026-08-31 01:34:43,749.749 INFO    ] 2026-08-31 01:34:43
[2026-08-31 01:34:43,784.784 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:34:44,041.041 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:34:44,046.046 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:34:44,283.283 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:34:44,304.304 INFO    ] time= 31/08/2026 01:34:44
[2026-08-31 01:34:44,310.310 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:34:44,327.327 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:34:44,456.456 INFO    ] No existing commands found in stream
[2026-08-31 01:34:49,469.469 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:34:49,472.472 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-08-31 01:34:53,670.670 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 01:34:53,672.672 INFO    ] Checking for system updates...
[2026-08-31 01:34:53,719.719 INFO    ] 200
[2026-08-31 01:34:53,722.722 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:34:53,781.781 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:34:53,783.783 INFO    ] No update needed
[2026-08-31 01:34:53,786.786 INFO    ] Checking for camera pi updates...
[2026-08-31 01:34:53,823.823 INFO    ] 200
[2026-08-31 01:34:53,825.825 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:34:53,870.870 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:34:53,951.951 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:34:53,954.954 INFO    ] No camera update needed
[2026-08-31 01:34:53,956.956 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:34:53,958.958 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:34:53,964.964 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:34:53,969.969 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:34:56,010.010 INFO    ] ================================================
[2026-08-31 01:34:56,026.026 INFO    ] Launching Daemon at Mon Aug 31 01:34:56 IST 2026
[2026-08-31 01:34:56,037.037 INFO    ] ================================================
[2026-08-31 01:34:56,620.620 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:34:56
[2026-08-31 01:34:57,216.216 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:34:57,490.490 INFO    ] Initializing speech engine...
[2026-08-31 01:34:57,499.499 INFO    ] 2026-08-31 01:34:57
[2026-08-31 01:34:57,749.749 INFO    ] 2026-08-31 01:34:57
[2026-08-31 01:34:57,811.811 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:34:58,040.040 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:34:58,046.046 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:34:58,303.303 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:34:58,313.313 INFO    ] time= 31/08/2026 01:34:58
[2026-08-31 01:34:58,357.357 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:34:58,368.368 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:34:58,496.496 INFO    ] No existing commands found in stream
[2026-08-31 01:35:03,527.527 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:35:03,531.531 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-08-31 01:35:04,656.656 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 01:35:04,659.659 INFO    ] Checking for system updates...
[2026-08-31 01:35:04,694.694 INFO    ] 200
[2026-08-31 01:35:04,697.697 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:35:04,749.749 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:35:04,751.751 INFO    ] No update needed
[2026-08-31 01:35:04,754.754 INFO    ] Checking for camera pi updates...
[2026-08-31 01:35:04,787.787 INFO    ] 200
[2026-08-31 01:35:04,790.790 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:35:04,830.830 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:35:04,915.915 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:35:04,918.918 INFO    ] No camera update needed
[2026-08-31 01:35:04,920.920 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:35:04,922.922 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:35:04,934.934 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:35:04,940.940 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:35:06,980.980 INFO    ] ================================================
[2026-08-31 01:35:07,995.995 INFO    ] Launching Daemon at Mon Aug 31 01:35:06 IST 2026
[2026-08-31 01:35:07,006.006 INFO    ] ================================================
[2026-08-31 01:35:07,575.575 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:35:07
[2026-08-31 01:35:08,157.157 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:35:08,415.415 INFO    ] Initializing speech engine...
[2026-08-31 01:35:08,436.436 INFO    ] 2026-08-31 01:35:08
[2026-08-31 01:35:08,692.692 INFO    ] 2026-08-31 01:35:08
[2026-08-31 01:35:08,728.728 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:35:08,925.925 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:35:08,983.983 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:35:09,220.220 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:35:09,247.247 INFO    ] time= 31/08/2026 01:35:09
[2026-08-31 01:35:09,254.254 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:35:09,272.272 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:35:09,400.400 INFO    ] No existing commands found in stream
[2026-08-31 01:35:14,414.414 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:35:14,416.416 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-08-31 01:35:18,470.470 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 01:35:18,473.473 INFO    ] Checking for system updates...
[2026-08-31 01:35:18,511.511 INFO    ] 200
[2026-08-31 01:35:18,514.514 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:35:18,572.572 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:35:18,574.574 INFO    ] No update needed
[2026-08-31 01:35:18,576.576 INFO    ] Checking for camera pi updates...
[2026-08-31 01:35:18,610.610 INFO    ] 200
[2026-08-31 01:35:18,612.612 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:35:18,657.657 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:35:18,743.743 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:35:18,745.745 INFO    ] No camera update needed
[2026-08-31 01:35:18,748.748 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:35:18,750.750 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:35:18,755.755 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:35:18,760.760 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:35:20,802.802 INFO    ] ================================================
[2026-08-31 01:35:20,818.818 INFO    ] Launching Daemon at Mon Aug 31 01:35:20 IST 2026
[2026-08-31 01:35:20,829.829 INFO    ] ================================================
[2026-08-31 01:35:21,402.402 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:35:21
[2026-08-31 01:35:21,989.989 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:35:22,243.243 INFO    ] Initializing speech engine...
[2026-08-31 01:35:22,252.252 INFO    ] 2026-08-31 01:35:22
[2026-08-31 01:35:22,547.547 INFO    ] 2026-08-31 01:35:22
[2026-08-31 01:35:22,586.586 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:35:22,876.876 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:35:22,886.886 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:35:23,130.130 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:35:23,184.184 INFO    ] time= 31/08/2026 01:35:23
[2026-08-31 01:35:23,189.189 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:35:23,205.205 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:35:23,330.330 INFO    ] No existing commands found in stream
[2026-08-31 01:35:28,361.361 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:35:28,364.364 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-08-31 01:35:31,268.268 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 01:35:31,270.270 INFO    ] Checking for system updates...
[2026-08-31 01:35:31,310.310 INFO    ] 200
[2026-08-31 01:35:31,312.312 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:35:31,363.363 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:35:31,366.366 INFO    ] No update needed
[2026-08-31 01:35:31,368.368 INFO    ] Checking for camera pi updates...
[2026-08-31 01:35:31,402.402 INFO    ] 200
[2026-08-31 01:35:31,405.405 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:35:31,446.446 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:35:31,522.522 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:35:31,524.524 INFO    ] No camera update needed
[2026-08-31 01:35:31,526.526 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:35:31,529.529 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:35:31,534.534 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:35:31,539.539 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:35:33,582.582 INFO    ] ================================================
[2026-08-31 01:35:33,597.597 INFO    ] Launching Daemon at Mon Aug 31 01:35:33 IST 2026
[2026-08-31 01:35:33,609.609 INFO    ] ================================================
[2026-08-31 01:35:34,255.255 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:35:34
[2026-08-31 01:35:34,856.856 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:35:35,148.148 INFO    ] Initializing speech engine...
[2026-08-31 01:35:35,161.161 INFO    ] 2026-08-31 01:35:35
[2026-08-31 01:35:35,448.448 INFO    ] 2026-08-31 01:35:35
[2026-08-31 01:35:35,557.557 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:35:35,835.835 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:35:35,883.883 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:35:36,125.125 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:35:36,181.181 INFO    ] time= 31/08/2026 01:35:36
[2026-08-31 01:35:36,224.224 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:35:36,263.263 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:35:36,417.417 INFO    ] No existing commands found in stream
[2026-08-31 01:35:41,430.430 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:35:41,433.433 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-08-31 01:35:45,230.230 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 01:35:45,233.233 INFO    ] Checking for system updates...
[2026-08-31 01:35:45,269.269 INFO    ] 200
[2026-08-31 01:35:45,272.272 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:35:45,325.325 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:35:45,327.327 INFO    ] No update needed
[2026-08-31 01:35:45,330.330 INFO    ] Checking for camera pi updates...
[2026-08-31 01:35:45,364.364 INFO    ] 200
[2026-08-31 01:35:45,367.367 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:35:45,414.414 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:35:45,503.503 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:35:45,506.506 INFO    ] No camera update needed
[2026-08-31 01:35:45,511.511 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:35:45,526.526 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:35:45,533.533 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:35:45,540.540 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:35:47,581.581 INFO    ] ================================================
[2026-08-31 01:35:47,596.596 INFO    ] Launching Daemon at Mon Aug 31 01:35:47 IST 2026
[2026-08-31 01:35:47,607.607 INFO    ] ================================================
[2026-08-31 01:35:48,260.260 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:35:48
[2026-08-31 01:35:48,930.930 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:35:49,231.231 INFO    ] Initializing speech engine...
[2026-08-31 01:35:49,236.236 INFO    ] 2026-08-31 01:35:49
[2026-08-31 01:35:49,499.499 INFO    ] 2026-08-31 01:35:49
[2026-08-31 01:35:49,529.529 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:35:49,774.774 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:35:49,783.783 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:35:50,001.001 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:35:50,042.042 INFO    ] time= 31/08/2026 01:35:50
[2026-08-31 01:35:50,048.048 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:35:50,068.068 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:35:50,197.197 INFO    ] No existing commands found in stream
[2026-08-31 01:35:55,212.212 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:35:55,215.215 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-08-31 01:35:59,210.210 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 01:35:59,212.212 INFO    ] Checking for system updates...
[2026-08-31 01:35:59,252.252 INFO    ] 200
[2026-08-31 01:35:59,254.254 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:35:59,307.307 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:35:59,310.310 INFO    ] No update needed
[2026-08-31 01:35:59,313.313 INFO    ] Checking for camera pi updates...
[2026-08-31 01:35:59,350.350 INFO    ] 200
[2026-08-31 01:35:59,352.352 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:35:59,396.396 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:35:59,492.492 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:35:59,495.495 INFO    ] No camera update needed
[2026-08-31 01:35:59,497.497 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:35:59,500.500 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:35:59,505.505 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:35:59,510.510 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:36:01,551.551 INFO    ] ================================================
[2026-08-31 01:36:01,567.567 INFO    ] Launching Daemon at Mon Aug 31 01:36:01 IST 2026
[2026-08-31 01:36:01,578.578 INFO    ] ================================================
[2026-08-31 01:36:02,321.321 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:36:02
[2026-08-31 01:36:02,986.986 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:36:03,292.292 INFO    ] Initializing speech engine...
[2026-08-31 01:36:03,296.296 INFO    ] 2026-08-31 01:36:03
[2026-08-31 01:36:03,630.630 INFO    ] 2026-08-31 01:36:03
[2026-08-31 01:36:03,677.677 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:36:03,943.943 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:36:03,965.965 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:36:04,191.191 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:36:04,208.208 INFO    ] time= 31/08/2026 01:36:04
[2026-08-31 01:36:04,226.226 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:36:04,258.258 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:36:04,380.380 INFO    ] No existing commands found in stream
[2026-08-31 01:36:09,421.421 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:36:09,424.424 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-08-31 01:36:10,229.229 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 01:36:10,231.231 INFO    ] Checking for system updates...
[2026-08-31 01:36:10,267.267 INFO    ] 200
[2026-08-31 01:36:10,270.270 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:36:10,322.322 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:36:10,325.325 INFO    ] No update needed
[2026-08-31 01:36:10,327.327 INFO    ] Checking for camera pi updates...
[2026-08-31 01:36:10,361.361 INFO    ] 200
[2026-08-31 01:36:10,363.363 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:36:10,403.403 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:36:10,582.582 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:36:10,584.584 INFO    ] No camera update needed
[2026-08-31 01:36:10,586.586 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:36:10,589.589 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:36:10,594.594 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:36:10,600.600 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:36:12,641.641 INFO    ] ================================================
[2026-08-31 01:36:12,656.656 INFO    ] Launching Daemon at Mon Aug 31 01:36:12 IST 2026
[2026-08-31 01:36:12,667.667 INFO    ] ================================================
[2026-08-31 01:36:13,330.330 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:36:13
[2026-08-31 01:36:14,012.012 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:36:14,304.304 INFO    ] Initializing speech engine...
[2026-08-31 01:36:14,312.312 INFO    ] 2026-08-31 01:36:14
[2026-08-31 01:36:14,558.558 INFO    ] 2026-08-31 01:36:14
[2026-08-31 01:36:14,594.594 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:36:14,845.845 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:36:14,856.856 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:36:15,104.104 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:36:15,114.114 INFO    ] time= 31/08/2026 01:36:15
[2026-08-31 01:36:15,132.132 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:36:15,159.159 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:36:15,276.276 INFO    ] No existing commands found in stream
[2026-08-31 01:36:20,299.299 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:36:20,302.302 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-08-31 01:36:22,710.710 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 01:36:22,714.714 INFO    ] Checking for system updates...
[2026-08-31 01:36:22,756.756 INFO    ] 200
[2026-08-31 01:36:22,759.759 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:36:22,812.812 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:36:22,815.815 INFO    ] No update needed
[2026-08-31 01:36:22,818.818 INFO    ] Checking for camera pi updates...
[2026-08-31 01:36:22,857.857 INFO    ] 200
[2026-08-31 01:36:22,860.860 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:36:22,911.911 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:36:23,002.002 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:36:23,005.005 INFO    ] No camera update needed
[2026-08-31 01:36:23,008.008 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:36:23,011.011 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:36:23,017.017 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:36:23,023.023 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:36:25,066.066 INFO    ] ================================================
[2026-08-31 01:36:25,081.081 INFO    ] Launching Daemon at Mon Aug 31 01:36:25 IST 2026
[2026-08-31 01:36:25,092.092 INFO    ] ================================================
[2026-08-31 01:36:25,748.748 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:36:25
[2026-08-31 01:36:26,425.425 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:36:26,737.737 INFO    ] Initializing speech engine...
[2026-08-31 01:36:26,748.748 INFO    ] 2026-08-31 01:36:26
[2026-08-31 01:36:27,060.060 INFO    ] 2026-08-31 01:36:27
[2026-08-31 01:36:27,146.146 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:36:27,423.423 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:36:27,471.471 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:36:27,705.705 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:36:27,750.750 INFO    ] time= 31/08/2026 01:36:27
[2026-08-31 01:36:27,809.809 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:36:27,851.851 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:36:28,012.012 INFO    ] No existing commands found in stream
[2026-08-31 01:36:33,022.022 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:36:33,026.026 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-08-31 01:36:36,190.190 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 01:36:36,192.192 INFO    ] Checking for system updates...
[2026-08-31 01:36:36,233.233 INFO    ] 200
[2026-08-31 01:36:36,236.236 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:36:36,303.303 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:36:36,305.305 INFO    ] No update needed
[2026-08-31 01:36:36,308.308 INFO    ] Checking for camera pi updates...
[2026-08-31 01:36:36,352.352 INFO    ] 200
[2026-08-31 01:36:36,355.355 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:36:36,400.400 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:36:36,482.482 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:36:36,485.485 INFO    ] No camera update needed
[2026-08-31 01:36:36,487.487 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:36:36,490.490 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:36:36,495.495 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:36:36,500.500 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:36:38,540.540 INFO    ] ================================================
[2026-08-31 01:36:38,555.555 INFO    ] Launching Daemon at Mon Aug 31 01:36:38 IST 2026
[2026-08-31 01:36:38,565.565 INFO    ] ================================================
[2026-08-31 01:36:39,229.229 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:36:39
[2026-08-31 01:36:39,817.817 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:36:40,115.115 INFO    ] Initializing speech engine...
[2026-08-31 01:36:40,124.124 INFO    ] 2026-08-31 01:36:40
[2026-08-31 01:36:40,405.405 INFO    ] 2026-08-31 01:36:40
[2026-08-31 01:36:40,461.461 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:36:40,751.751 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:36:40,761.761 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:36:40,962.962 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:36:40,981.981 INFO    ] time= 31/08/2026 01:36:40
[2026-08-31 01:36:40,992.992 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:36:41,022.022 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:36:41,168.168 INFO    ] No existing commands found in stream
[2026-08-31 01:36:46,199.199 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:36:46,202.202 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-08-31 01:36:47,572.572 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 01:36:47,574.574 INFO    ] Checking for system updates...
[2026-08-31 01:36:47,610.610 INFO    ] 200
[2026-08-31 01:36:47,613.613 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:36:47,673.673 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:36:47,675.675 INFO    ] No update needed
[2026-08-31 01:36:47,678.678 INFO    ] Checking for camera pi updates...
[2026-08-31 01:36:47,711.711 INFO    ] 200
[2026-08-31 01:36:47,714.714 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:36:47,754.754 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:36:47,835.835 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:36:47,837.837 INFO    ] No camera update needed
[2026-08-31 01:36:47,840.840 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:36:47,842.842 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:36:47,848.848 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:36:47,853.853 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:36:49,893.893 INFO    ] ================================================
[2026-08-31 01:36:49,908.908 INFO    ] Launching Daemon at Mon Aug 31 01:36:49 IST 2026
[2026-08-31 01:36:49,919.919 INFO    ] ================================================
[2026-08-31 01:36:50,585.585 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:36:50
[2026-08-31 01:36:51,267.267 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:36:51,578.578 INFO    ] Initializing speech engine...
[2026-08-31 01:36:51,591.591 INFO    ] 2026-08-31 01:36:51
[2026-08-31 01:36:51,900.900 INFO    ] 2026-08-31 01:36:51
[2026-08-31 01:36:51,989.989 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:36:52,393.393 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:36:52,415.415 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:36:52,654.654 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:36:52,714.714 INFO    ] time= 31/08/2026 01:36:52
[2026-08-31 01:36:52,764.764 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:36:52,808.808 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:36:52,972.972 INFO    ] No existing commands found in stream
[2026-08-31 01:36:57,992.992 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:36:57,995.995 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-08-31 01:37:00,772.772 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 01:37:00,775.775 INFO    ] Checking for system updates...
[2026-08-31 01:37:00,812.812 INFO    ] 200
[2026-08-31 01:37:00,815.815 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:37:00,904.904 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:37:00,907.907 INFO    ] No update needed
[2026-08-31 01:37:00,910.910 INFO    ] Checking for camera pi updates...
[2026-08-31 01:37:00,945.945 INFO    ] 200
[2026-08-31 01:37:00,948.948 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:37:00,990.990 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:37:01,078.078 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:37:01,081.081 INFO    ] No camera update needed
[2026-08-31 01:37:01,084.084 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:37:01,087.087 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:37:01,093.093 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:37:01,099.099 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:37:03,146.146 INFO    ] ================================================
[2026-08-31 01:37:03,166.166 INFO    ] Launching Daemon at Mon Aug 31 01:37:03 IST 2026
[2026-08-31 01:37:03,182.182 INFO    ] ================================================
[2026-08-31 01:37:03,883.883 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:37:03
[2026-08-31 01:37:04,490.490 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:37:04,762.762 INFO    ] Initializing speech engine...
[2026-08-31 01:37:04,771.771 INFO    ] 2026-08-31 01:37:04
[2026-08-31 01:37:05,036.036 INFO    ] 2026-08-31 01:37:05
[2026-08-31 01:37:05,091.091 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:37:05,325.325 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:37:05,331.331 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:37:05,577.577 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:37:05,604.604 INFO    ] time= 31/08/2026 01:37:05
[2026-08-31 01:37:05,619.619 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:37:05,629.629 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:37:05,759.759 INFO    ] No existing commands found in stream
[2026-08-31 01:37:10,772.772 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:37:10,774.774 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-08-31 01:37:12,188.188 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 01:37:12,191.191 INFO    ] Checking for system updates...
[2026-08-31 01:37:12,231.231 INFO    ] 200
[2026-08-31 01:37:12,233.233 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:37:12,285.285 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:37:12,287.287 INFO    ] No update needed
[2026-08-31 01:37:12,290.290 INFO    ] Checking for camera pi updates...
[2026-08-31 01:37:12,327.327 INFO    ] 200
[2026-08-31 01:37:12,329.329 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:37:12,374.374 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:37:12,466.466 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:37:12,469.469 INFO    ] No camera update needed
[2026-08-31 01:37:12,471.471 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:37:12,473.473 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:37:12,479.479 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:37:12,483.483 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:37:14,523.523 INFO    ] ================================================
[2026-08-31 01:37:14,538.538 INFO    ] Launching Daemon at Mon Aug 31 01:37:14 IST 2026
[2026-08-31 01:37:14,549.549 INFO    ] ================================================
[2026-08-31 01:37:15,119.119 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:37:15
[2026-08-31 01:37:15,707.707 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:37:15,977.977 INFO    ] Initializing speech engine...
[2026-08-31 01:37:15,986.986 INFO    ] 2026-08-31 01:37:15
[2026-08-31 01:37:16,237.237 INFO    ] 2026-08-31 01:37:16
[2026-08-31 01:37:16,272.272 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:37:16,493.493 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:37:16,496.496 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:37:16,686.686 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:37:16,734.734 INFO    ] time= 31/08/2026 01:37:16
[2026-08-31 01:37:16,798.798 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:37:16,825.825 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:37:16,969.969 INFO    ] No existing commands found in stream
[2026-08-31 01:37:21,985.985 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:37:21,988.988 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-08-31 01:37:26,229.229 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 01:37:26,231.231 INFO    ] Checking for system updates...
[2026-08-31 01:37:26,266.266 INFO    ] 200
[2026-08-31 01:37:26,269.269 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:37:26,329.329 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:37:26,331.331 INFO    ] No update needed
[2026-08-31 01:37:26,334.334 INFO    ] Checking for camera pi updates...
[2026-08-31 01:37:26,371.371 INFO    ] 200
[2026-08-31 01:37:26,373.373 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:37:26,413.413 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:37:26,483.483 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:37:26,485.485 INFO    ] No camera update needed
[2026-08-31 01:37:26,488.488 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:37:26,490.490 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:37:26,495.495 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:37:26,500.500 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:37:28,542.542 INFO    ] ================================================
[2026-08-31 01:37:28,557.557 INFO    ] Launching Daemon at Mon Aug 31 01:37:28 IST 2026
[2026-08-31 01:37:28,568.568 INFO    ] ================================================
[2026-08-31 01:37:29,230.230 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:37:29
[2026-08-31 01:37:29,825.825 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:37:30,096.096 INFO    ] Initializing speech engine...
[2026-08-31 01:37:30,105.105 INFO    ] 2026-08-31 01:37:30
[2026-08-31 01:37:30,365.365 INFO    ] 2026-08-31 01:37:30
[2026-08-31 01:37:30,420.420 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:37:30,649.649 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:37:30,655.655 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:37:30,893.893 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:37:30,912.912 INFO    ] time= 31/08/2026 01:37:30
[2026-08-31 01:37:30,919.919 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:37:30,940.940 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:37:31,079.079 INFO    ] No existing commands found in stream
[2026-08-31 01:37:36,110.110 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:37:36,113.113 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-08-31 01:37:39,178.178 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 01:37:39,181.181 INFO    ] Checking for system updates...
[2026-08-31 01:37:39,218.218 INFO    ] 200
[2026-08-31 01:37:39,221.221 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:37:39,283.283 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:37:39,286.286 INFO    ] No update needed
[2026-08-31 01:37:39,289.289 INFO    ] Checking for camera pi updates...
[2026-08-31 01:37:39,323.323 INFO    ] 200
[2026-08-31 01:37:39,326.326 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:37:39,368.368 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:37:39,455.455 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:37:39,458.458 INFO    ] No camera update needed
[2026-08-31 01:37:39,461.461 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:37:39,464.464 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:37:39,470.470 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:37:39,476.476 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:37:41,519.519 INFO    ] ================================================
[2026-08-31 01:37:41,534.534 INFO    ] Launching Daemon at Mon Aug 31 01:37:41 IST 2026
[2026-08-31 01:37:41,545.545 INFO    ] ================================================
[2026-08-31 01:37:42,113.113 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:37:42
[2026-08-31 01:37:42,710.710 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:37:42,986.986 INFO    ] Initializing speech engine...
[2026-08-31 01:37:42,995.995 INFO    ] 2026-08-31 01:37:42
[2026-08-31 01:37:43,253.253 INFO    ] 2026-08-31 01:37:43
[2026-08-31 01:37:43,283.283 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:37:43,535.535 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:37:43,540.540 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:37:43,720.720 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:37:43,723.723 INFO    ] time= 31/08/2026 01:37:43
[2026-08-31 01:37:43,725.725 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:37:43,733.733 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:37:43,848.848 INFO    ] No existing commands found in stream
[2026-08-31 01:37:48,864.864 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:37:48,866.866 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-08-31 01:37:53,215.215 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 01:37:53,217.217 INFO    ] Checking for system updates...
[2026-08-31 01:37:53,253.253 INFO    ] 200
[2026-08-31 01:37:53,255.255 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:37:53,316.316 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:37:53,319.319 INFO    ] No update needed
[2026-08-31 01:37:53,321.321 INFO    ] Checking for camera pi updates...
[2026-08-31 01:37:53,360.360 INFO    ] 200
[2026-08-31 01:37:53,363.363 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:37:53,403.403 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:37:53,474.474 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:37:53,476.476 INFO    ] No camera update needed
[2026-08-31 01:37:53,479.479 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:37:53,481.481 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:37:53,487.487 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:37:53,492.492 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:37:55,531.531 INFO    ] ================================================
[2026-08-31 01:37:55,546.546 INFO    ] Launching Daemon at Mon Aug 31 01:37:55 IST 2026
[2026-08-31 01:37:55,557.557 INFO    ] ================================================
[2026-08-31 01:37:56,224.224 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:37:56
[2026-08-31 01:37:56,912.912 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:37:57,223.223 INFO    ] Initializing speech engine...
[2026-08-31 01:37:57,235.235 INFO    ] 2026-08-31 01:37:57
[2026-08-31 01:37:57,547.547 INFO    ] 2026-08-31 01:37:57
[2026-08-31 01:37:57,634.634 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:37:57,871.871 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:37:57,874.874 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:37:58,071.071 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:37:58,089.089 INFO    ] time= 31/08/2026 01:37:58
[2026-08-31 01:37:58,099.099 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:37:58,128.128 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:37:58,261.261 INFO    ] No existing commands found in stream
[2026-08-31 01:38:03,287.287 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:38:03,291.291 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-08-31 01:38:06,469.469 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 01:38:06,472.472 INFO    ] Checking for system updates...
[2026-08-31 01:38:06,511.511 INFO    ] 200
[2026-08-31 01:38:06,514.514 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:38:06,574.574 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:38:06,576.576 INFO    ] No update needed
[2026-08-31 01:38:06,579.579 INFO    ] Checking for camera pi updates...
[2026-08-31 01:38:06,613.613 INFO    ] 200
[2026-08-31 01:38:06,615.615 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:38:06,655.655 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:38:06,756.756 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:38:06,759.759 INFO    ] No camera update needed
[2026-08-31 01:38:06,761.761 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:38:06,763.763 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:38:06,769.769 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:38:06,773.773 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:38:08,815.815 INFO    ] ================================================
[2026-08-31 01:38:08,831.831 INFO    ] Launching Daemon at Mon Aug 31 01:38:08 IST 2026
[2026-08-31 01:38:08,841.841 INFO    ] ================================================
[2026-08-31 01:38:09,468.468 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:38:09
[2026-08-31 01:38:10,055.055 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:38:10,302.302 INFO    ] Initializing speech engine...
[2026-08-31 01:38:10,311.311 INFO    ] 2026-08-31 01:38:10
[2026-08-31 01:38:10,585.585 INFO    ] 2026-08-31 01:38:10
[2026-08-31 01:38:10,621.621 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:38:10,878.878 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:38:10,887.887 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:38:11,100.100 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:38:11,152.152 INFO    ] time= 31/08/2026 01:38:11
[2026-08-31 01:38:11,159.159 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:38:11,178.178 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:38:11,309.309 INFO    ] No existing commands found in stream
[2026-08-31 01:38:16,323.323 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:38:16,326.326 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-08-31 01:38:20,533.533 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 01:38:20,536.536 INFO    ] Checking for system updates...
[2026-08-31 01:38:20,572.572 INFO    ] 200
[2026-08-31 01:38:20,574.574 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:38:20,632.632 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:38:20,634.634 INFO    ] No update needed
[2026-08-31 01:38:20,636.636 INFO    ] Checking for camera pi updates...
[2026-08-31 01:38:20,670.670 INFO    ] 200
[2026-08-31 01:38:20,672.672 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:38:20,713.713 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:38:20,893.893 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:38:20,895.895 INFO    ] No camera update needed
[2026-08-31 01:38:20,897.897 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:38:20,900.900 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:38:20,905.905 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:38:20,910.910 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:38:22,954.954 INFO    ] ================================================
[2026-08-31 01:38:22,969.969 INFO    ] Launching Daemon at Mon Aug 31 01:38:22 IST 2026
[2026-08-31 01:38:22,980.980 INFO    ] ================================================
[2026-08-31 01:38:23,546.546 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:38:23
[2026-08-31 01:38:24,133.133 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:38:24,389.389 INFO    ] Initializing speech engine...
[2026-08-31 01:38:24,397.397 INFO    ] 2026-08-31 01:38:24
[2026-08-31 01:38:24,696.696 INFO    ] 2026-08-31 01:38:24
[2026-08-31 01:38:24,721.721 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:38:24,965.965 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:38:25,015.015 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:38:25,211.211 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:38:25,266.266 INFO    ] time= 31/08/2026 01:38:25
[2026-08-31 01:38:25,315.315 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:38:25,347.347 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:38:25,475.475 INFO    ] No existing commands found in stream
[2026-08-31 01:38:30,494.494 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:38:30,496.496 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-08-31 01:38:34,685.685 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 01:38:34,688.688 INFO    ] Checking for system updates...
[2026-08-31 01:38:34,727.727 INFO    ] 200
[2026-08-31 01:38:34,729.729 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:38:34,789.789 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:38:34,791.791 INFO    ] No update needed
[2026-08-31 01:38:34,794.794 INFO    ] Checking for camera pi updates...
[2026-08-31 01:38:34,827.827 INFO    ] 200
[2026-08-31 01:38:34,829.829 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:38:34,870.870 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:38:34,920.920 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:38:34,922.922 INFO    ] No camera update needed
[2026-08-31 01:38:34,925.925 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:38:34,927.927 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:38:34,932.932 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:38:34,937.937 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:38:36,976.976 INFO    ] ================================================
[2026-08-31 01:38:36,991.991 INFO    ] Launching Daemon at Mon Aug 31 01:38:36 IST 2026
[2026-08-31 01:38:37,002.002 INFO    ] ================================================
[2026-08-31 01:38:37,580.580 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:38:37
[2026-08-31 01:38:38,175.175 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:38:38,451.451 INFO    ] Initializing speech engine...
[2026-08-31 01:38:38,460.460 INFO    ] 2026-08-31 01:38:38
[2026-08-31 01:38:38,718.718 INFO    ] 2026-08-31 01:38:38
[2026-08-31 01:38:38,748.748 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:38:38,997.997 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:38:39,002.002 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:38:39,248.248 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:38:39,265.265 INFO    ] time= 31/08/2026 01:38:39
[2026-08-31 01:38:39,283.283 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:38:39,300.300 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:38:39,435.435 INFO    ] No existing commands found in stream
[2026-08-31 01:38:44,461.461 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:38:44,463.463 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-08-31 01:38:46,749.749 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 01:38:46,752.752 INFO    ] Checking for system updates...
[2026-08-31 01:38:46,791.791 INFO    ] 200
[2026-08-31 01:38:46,794.794 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:38:46,853.853 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:38:46,855.855 INFO    ] No update needed
[2026-08-31 01:38:46,858.858 INFO    ] Checking for camera pi updates...
[2026-08-31 01:38:46,895.895 INFO    ] 200
[2026-08-31 01:38:46,898.898 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:38:46,937.937 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:38:47,022.022 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:38:47,025.025 INFO    ] No camera update needed
[2026-08-31 01:38:47,027.027 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:38:47,030.030 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:38:47,035.035 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:38:47,040.040 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:38:49,080.080 INFO    ] ================================================
[2026-08-31 01:38:49,096.096 INFO    ] Launching Daemon at Mon Aug 31 01:38:49 IST 2026
[2026-08-31 01:38:49,106.106 INFO    ] ================================================
[2026-08-31 01:38:49,677.677 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:38:49
[2026-08-31 01:38:50,262.262 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:38:50,527.527 INFO    ] Initializing speech engine...
[2026-08-31 01:38:50,536.536 INFO    ] 2026-08-31 01:38:50
[2026-08-31 01:38:50,798.798 INFO    ] 2026-08-31 01:38:50
[2026-08-31 01:38:50,828.828 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:38:51,099.099 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:38:51,104.104 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:38:51,331.331 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:38:51,339.339 INFO    ] time= 31/08/2026 01:38:51
[2026-08-31 01:38:51,357.357 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:38:51,364.364 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:38:51,515.515 INFO    ] No existing commands found in stream
[2026-08-31 01:38:56,540.540 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:38:56,543.543 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-08-31 01:38:59,953.953 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 01:38:59,956.956 INFO    ] Checking for system updates...
[2026-08-31 01:38:59,991.991 INFO    ] 200
[2026-08-31 01:38:59,994.994 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:39:00,047.047 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:39:00,050.050 INFO    ] No update needed
[2026-08-31 01:39:00,052.052 INFO    ] Checking for camera pi updates...
[2026-08-31 01:39:00,085.085 INFO    ] 200
[2026-08-31 01:39:00,088.088 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:39:00,129.129 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:39:00,208.208 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:39:00,210.210 INFO    ] No camera update needed
[2026-08-31 01:39:00,212.212 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:39:00,215.215 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:39:00,220.220 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:39:00,225.225 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:39:02,269.269 INFO    ] ================================================
[2026-08-31 01:39:02,295.295 INFO    ] Launching Daemon at Mon Aug 31 01:39:02 IST 2026
[2026-08-31 01:39:02,310.310 INFO    ] ================================================
[2026-08-31 01:39:02,968.968 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:39:02
[2026-08-31 01:39:03,640.640 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:39:03,949.949 INFO    ] Initializing speech engine...
[2026-08-31 01:39:03,966.966 INFO    ] 2026-08-31 01:39:03
[2026-08-31 01:39:04,232.232 INFO    ] 2026-08-31 01:39:04
[2026-08-31 01:39:04,271.271 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:39:04,535.535 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:39:04,539.539 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:39:04,776.776 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:39:04,796.796 INFO    ] time= 31/08/2026 01:39:04
[2026-08-31 01:39:04,802.802 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:39:04,819.819 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:39:04,950.950 INFO    ] No existing commands found in stream
[2026-08-31 01:39:09,970.970 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:39:09,973.973 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-08-31 01:39:10,576.576 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 01:39:10,579.579 INFO    ] Checking for system updates...
[2026-08-31 01:39:10,614.614 INFO    ] 200
[2026-08-31 01:39:10,617.617 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:39:10,675.675 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:39:10,678.678 INFO    ] No update needed
[2026-08-31 01:39:10,680.680 INFO    ] Checking for camera pi updates...
[2026-08-31 01:39:10,717.717 INFO    ] 200
[2026-08-31 01:39:10,720.720 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:39:10,765.765 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:39:10,860.860 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:39:10,863.863 INFO    ] No camera update needed
[2026-08-31 01:39:10,865.865 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:39:10,868.868 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:39:10,873.873 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:39:10,878.878 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:39:12,920.920 INFO    ] ================================================
[2026-08-31 01:39:12,935.935 INFO    ] Launching Daemon at Mon Aug 31 01:39:12 IST 2026
[2026-08-31 01:39:12,946.946 INFO    ] ================================================
[2026-08-31 01:39:13,598.598 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:39:13
[2026-08-31 01:39:14,268.268 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:39:14,542.542 INFO    ] Initializing speech engine...
[2026-08-31 01:39:14,550.550 INFO    ] 2026-08-31 01:39:14
[2026-08-31 01:39:14,803.803 INFO    ] 2026-08-31 01:39:14
[2026-08-31 01:39:14,838.838 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:39:15,093.093 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:39:15,103.103 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:39:15,334.334 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:39:15,365.365 INFO    ] time= 31/08/2026 01:39:15
[2026-08-31 01:39:15,371.371 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:39:15,392.392 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:39:15,532.532 INFO    ] No existing commands found in stream
[2026-08-31 01:39:20,558.558 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:39:20,561.561 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-08-31 01:39:23,989.989 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 01:39:23,992.992 INFO    ] Checking for system updates...
[2026-08-31 01:39:24,027.027 INFO    ] 200
[2026-08-31 01:39:24,029.029 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:39:24,088.088 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:39:24,091.091 INFO    ] No update needed
[2026-08-31 01:39:24,093.093 INFO    ] Checking for camera pi updates...
[2026-08-31 01:39:24,126.126 INFO    ] 200
[2026-08-31 01:39:24,128.128 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:39:24,174.174 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:39:24,259.259 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:39:24,261.261 INFO    ] No camera update needed
[2026-08-31 01:39:24,263.263 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:39:24,265.265 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:39:24,271.271 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:39:24,275.275 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:39:26,321.321 INFO    ] ================================================
[2026-08-31 01:39:26,337.337 INFO    ] Launching Daemon at Mon Aug 31 01:39:26 IST 2026
[2026-08-31 01:39:26,349.349 INFO    ] ================================================
[2026-08-31 01:39:27,006.006 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:39:27
[2026-08-31 01:39:27,682.682 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:39:27,990.990 INFO    ] Initializing speech engine...
[2026-08-31 01:39:28,004.004 INFO    ] 2026-08-31 01:39:27
[2026-08-31 01:39:28,275.275 INFO    ] 2026-08-31 01:39:28
[2026-08-31 01:39:28,329.329 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:39:28,624.624 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:39:28,629.629 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:39:28,829.829 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:39:28,849.849 INFO    ] time= 31/08/2026 01:39:28
[2026-08-31 01:39:28,879.879 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:39:28,889.889 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:39:29,008.008 INFO    ] No existing commands found in stream
[2026-08-31 01:39:34,033.033 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:39:34,037.037 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-08-31 01:39:37,777.777 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 01:39:37,780.780 INFO    ] Checking for system updates...
[2026-08-31 01:39:37,817.817 INFO    ] 200
[2026-08-31 01:39:37,819.819 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:39:37,878.878 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:39:37,881.881 INFO    ] No update needed
[2026-08-31 01:39:37,883.883 INFO    ] Checking for camera pi updates...
[2026-08-31 01:39:37,920.920 INFO    ] 200
[2026-08-31 01:39:37,922.922 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:39:37,962.962 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:39:38,037.037 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:39:38,039.039 INFO    ] No camera update needed
[2026-08-31 01:39:38,042.042 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:39:38,044.044 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:39:38,049.049 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:39:38,054.054 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:39:40,096.096 INFO    ] ================================================
[2026-08-31 01:39:40,112.112 INFO    ] Launching Daemon at Mon Aug 31 01:39:40 IST 2026
[2026-08-31 01:39:40,123.123 INFO    ] ================================================
[2026-08-31 01:39:40,703.703 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:39:40
[2026-08-31 01:39:41,301.301 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:39:41,577.577 INFO    ] Initializing speech engine...
[2026-08-31 01:39:41,586.586 INFO    ] 2026-08-31 01:39:41
[2026-08-31 01:39:41,844.844 INFO    ] 2026-08-31 01:39:41
[2026-08-31 01:39:41,874.874 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:39:42,124.124 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:39:42,130.130 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:39:42,367.367 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:39:42,389.389 INFO    ] time= 31/08/2026 01:39:42
[2026-08-31 01:39:42,404.404 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:39:42,414.414 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:39:42,540.540 INFO    ] No existing commands found in stream
[2026-08-31 01:39:47,552.552 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:39:47,555.555 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-08-31 01:39:49,948.948 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 01:39:49,950.950 INFO    ] Checking for system updates...
[2026-08-31 01:39:49,990.990 INFO    ] 200
[2026-08-31 01:39:49,992.992 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:39:50,053.053 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:39:50,055.055 INFO    ] No update needed
[2026-08-31 01:39:50,057.057 INFO    ] Checking for camera pi updates...
[2026-08-31 01:39:50,095.095 INFO    ] 200
[2026-08-31 01:39:50,097.097 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:39:50,143.143 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:39:50,235.235 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:39:50,237.237 INFO    ] No camera update needed
[2026-08-31 01:39:50,240.240 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:39:50,242.242 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:39:50,248.248 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:39:50,253.253 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:39:52,296.296 INFO    ] ================================================
[2026-08-31 01:39:52,311.311 INFO    ] Launching Daemon at Mon Aug 31 01:39:52 IST 2026
[2026-08-31 01:39:52,322.322 INFO    ] ================================================
[2026-08-31 01:39:52,916.916 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:39:52
[2026-08-31 01:39:53,536.536 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:39:53,838.838 INFO    ] Initializing speech engine...
[2026-08-31 01:39:53,852.852 INFO    ] 2026-08-31 01:39:53
[2026-08-31 01:39:54,137.137 INFO    ] 2026-08-31 01:39:54
[2026-08-31 01:39:54,246.246 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:39:54,524.524 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:39:54,591.591 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:39:54,829.829 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:39:54,884.884 INFO    ] time= 31/08/2026 01:39:54
[2026-08-31 01:39:54,926.926 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:39:54,992.992 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:39:55,178.178 INFO    ] No existing commands found in stream
[2026-08-31 01:40:00,203.203 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:40:00,207.207 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-08-31 01:40:07,589.589 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 01:40:07,591.591 INFO    ] Checking for system updates...
[2026-08-31 01:40:07,632.632 INFO    ] 200
[2026-08-31 01:40:07,634.634 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:40:07,700.700 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:40:07,703.703 INFO    ] No update needed
[2026-08-31 01:40:07,705.705 INFO    ] Checking for camera pi updates...
[2026-08-31 01:40:07,742.742 INFO    ] 200
[2026-08-31 01:40:07,744.744 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:40:07,785.785 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:40:07,868.868 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:40:07,871.871 INFO    ] No camera update needed
[2026-08-31 01:40:07,874.874 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:40:07,876.876 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:40:07,883.883 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:40:07,889.889 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:40:09,930.930 INFO    ] ================================================
[2026-08-31 01:40:09,951.951 INFO    ] Launching Daemon at Mon Aug 31 01:40:09 IST 2026
[2026-08-31 01:40:09,962.962 INFO    ] ================================================
[2026-08-31 01:40:10,555.555 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:40:10
[2026-08-31 01:40:11,153.153 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:40:11,426.426 INFO    ] Initializing speech engine...
[2026-08-31 01:40:11,435.435 INFO    ] 2026-08-31 01:40:11
[2026-08-31 01:40:11,683.683 INFO    ] 2026-08-31 01:40:11
[2026-08-31 01:40:11,719.719 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:40:11,976.976 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:40:11,983.983 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:40:12,209.209 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:40:12,245.245 INFO    ] time= 31/08/2026 01:40:12
[2026-08-31 01:40:12,251.251 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:40:12,272.272 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:40:12,403.403 INFO    ] No existing commands found in stream
[2026-08-31 01:40:17,431.431 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:40:17,434.434 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-08-31 01:40:21,868.868 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 01:40:21,871.871 INFO    ] Checking for system updates...
[2026-08-31 01:40:21,910.910 INFO    ] 200
[2026-08-31 01:40:21,912.912 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:40:21,970.970 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:40:21,973.973 INFO    ] No update needed
[2026-08-31 01:40:21,975.975 INFO    ] Checking for camera pi updates...
[2026-08-31 01:40:22,011.011 INFO    ] 200
[2026-08-31 01:40:22,014.014 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:40:22,058.058 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:40:22,139.139 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:40:22,142.142 INFO    ] No camera update needed
[2026-08-31 01:40:22,144.144 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:40:22,146.146 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:40:22,152.152 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:40:22,157.157 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:40:24,196.196 INFO    ] ================================================
[2026-08-31 01:40:24,211.211 INFO    ] Launching Daemon at Mon Aug 31 01:40:24 IST 2026
[2026-08-31 01:40:24,222.222 INFO    ] ================================================
[2026-08-31 01:40:24,786.786 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:40:24
[2026-08-31 01:40:25,369.369 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:40:25,636.636 INFO    ] Initializing speech engine...
[2026-08-31 01:40:25,646.646 INFO    ] 2026-08-31 01:40:25
[2026-08-31 01:40:25,898.898 INFO    ] 2026-08-31 01:40:25
[2026-08-31 01:40:25,957.957 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:40:26,207.207 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:40:26,239.239 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:40:26,439.439 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:40:26,446.446 INFO    ] time= 31/08/2026 01:40:26
[2026-08-31 01:40:26,464.464 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:40:26,481.481 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:40:26,599.599 INFO    ] No existing commands found in stream
[2026-08-31 01:40:31,618.618 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:40:31,621.621 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-08-31 01:40:34,188.188 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 01:40:34,191.191 INFO    ] Checking for system updates...
[2026-08-31 01:40:34,230.230 INFO    ] 200
[2026-08-31 01:40:34,232.232 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:40:34,283.283 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:40:34,286.286 INFO    ] No update needed
[2026-08-31 01:40:34,289.289 INFO    ] Checking for camera pi updates...
[2026-08-31 01:40:34,322.322 INFO    ] 200
[2026-08-31 01:40:34,324.324 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:40:34,370.370 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:40:34,452.452 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:40:34,455.455 INFO    ] No camera update needed
[2026-08-31 01:40:34,457.457 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:40:34,459.459 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:40:34,464.464 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:40:34,469.469 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:40:36,510.510 INFO    ] ================================================
[2026-08-31 01:40:36,526.526 INFO    ] Launching Daemon at Mon Aug 31 01:40:36 IST 2026
[2026-08-31 01:40:36,537.537 INFO    ] ================================================
[2026-08-31 01:40:37,126.126 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:40:37
[2026-08-31 01:40:37,728.728 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:40:38,039.039 INFO    ] Initializing speech engine...
[2026-08-31 01:40:38,049.049 INFO    ] 2026-08-31 01:40:38
[2026-08-31 01:40:38,363.363 INFO    ] 2026-08-31 01:40:38
[2026-08-31 01:40:38,448.448 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:40:38,725.725 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:40:38,783.783 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:40:39,004.004 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:40:39,035.035 INFO    ] time= 31/08/2026 01:40:39
[2026-08-31 01:40:39,085.085 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:40:39,122.122 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:40:39,272.272 INFO    ] No existing commands found in stream
[2026-08-31 01:40:44,285.285 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:40:44,289.289 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-08-31 01:40:44,969.969 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 01:40:44,972.972 INFO    ] Checking for system updates...
[2026-08-31 01:40:45,010.010 INFO    ] 200
[2026-08-31 01:40:45,012.012 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:40:45,075.075 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:40:45,078.078 INFO    ] No update needed
[2026-08-31 01:40:45,081.081 INFO    ] Checking for camera pi updates...
[2026-08-31 01:40:45,121.121 INFO    ] 200
[2026-08-31 01:40:45,124.124 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:40:45,177.177 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:40:45,264.264 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:40:45,267.267 INFO    ] No camera update needed
[2026-08-31 01:40:45,270.270 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:40:45,273.273 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:40:45,279.279 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:40:45,285.285 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:40:47,326.326 INFO    ] ================================================
[2026-08-31 01:40:47,341.341 INFO    ] Launching Daemon at Mon Aug 31 01:40:47 IST 2026
[2026-08-31 01:40:47,352.352 INFO    ] ================================================
[2026-08-31 01:40:47,919.919 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:40:47
[2026-08-31 01:40:48,500.500 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:40:48,768.768 INFO    ] Initializing speech engine...
[2026-08-31 01:40:48,777.777 INFO    ] 2026-08-31 01:40:48
[2026-08-31 01:40:49,025.025 INFO    ] 2026-08-31 01:40:49
[2026-08-31 01:40:49,061.061 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:40:49,315.315 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:40:49,321.321 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:40:49,535.535 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:40:49,578.578 INFO    ] time= 31/08/2026 01:40:49
[2026-08-31 01:40:49,584.584 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:40:49,601.601 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:40:49,733.733 INFO    ] No existing commands found in stream
[2026-08-31 01:40:54,756.756 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:40:54,759.759 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-08-31 01:40:56,846.846 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 01:40:56,849.849 INFO    ] Checking for system updates...
[2026-08-31 01:40:56,884.884 INFO    ] 200
[2026-08-31 01:40:56,887.887 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:40:56,946.946 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:40:56,949.949 INFO    ] No update needed
[2026-08-31 01:40:56,951.951 INFO    ] Checking for camera pi updates...
[2026-08-31 01:40:56,993.993 INFO    ] 200
[2026-08-31 01:40:56,995.995 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:40:57,040.040 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:40:57,128.128 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:40:57,130.130 INFO    ] No camera update needed
[2026-08-31 01:40:57,132.132 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:40:57,135.135 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:40:57,140.140 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:40:57,145.145 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:40:59,184.184 INFO    ] ================================================
[2026-08-31 01:40:59,200.200 INFO    ] Launching Daemon at Mon Aug 31 01:40:59 IST 2026
[2026-08-31 01:40:59,210.210 INFO    ] ================================================
[2026-08-31 01:40:59,775.775 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:40:59
[2026-08-31 01:41:00,357.357 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:41:00,629.629 INFO    ] Initializing speech engine...
[2026-08-31 01:41:00,638.638 INFO    ] 2026-08-31 01:41:00
[2026-08-31 01:41:00,888.888 INFO    ] 2026-08-31 01:41:00
[2026-08-31 01:41:00,923.923 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:41:01,183.183 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:41:01,192.192 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:41:01,420.420 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:41:01,464.464 INFO    ] time= 31/08/2026 01:41:01
[2026-08-31 01:41:01,469.469 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:41:01,482.482 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:41:01,578.578 INFO    ] No existing commands found in stream
[2026-08-31 01:41:06,589.589 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:41:06,600.600 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-08-31 01:41:07,388.388 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 01:41:07,390.390 INFO    ] Checking for system updates...
[2026-08-31 01:41:07,430.430 INFO    ] 200
[2026-08-31 01:41:07,433.433 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:41:07,484.484 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:41:07,487.487 INFO    ] No update needed
[2026-08-31 01:41:07,489.489 INFO    ] Checking for camera pi updates...
[2026-08-31 01:41:07,526.526 INFO    ] 200
[2026-08-31 01:41:07,529.529 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:41:07,570.570 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:41:07,663.663 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:41:07,666.666 INFO    ] No camera update needed
[2026-08-31 01:41:07,668.668 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:41:07,670.670 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:41:07,676.676 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:41:07,681.681 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:41:09,721.721 INFO    ] ================================================
[2026-08-31 01:41:09,737.737 INFO    ] Launching Daemon at Mon Aug 31 01:41:09 IST 2026
[2026-08-31 01:41:09,748.748 INFO    ] ================================================
[2026-08-31 01:41:10,332.332 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:41:10
[2026-08-31 01:41:10,930.930 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:41:11,206.206 INFO    ] Initializing speech engine...
[2026-08-31 01:41:11,212.212 INFO    ] 2026-08-31 01:41:11
[2026-08-31 01:41:11,474.474 INFO    ] 2026-08-31 01:41:11
[2026-08-31 01:41:11,527.527 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:41:11,753.753 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:41:11,759.759 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:41:11,982.982 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:41:12,014.014 INFO    ] time= 31/08/2026 01:41:11
[2026-08-31 01:41:12,020.020 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:41:12,038.038 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:41:12,167.167 INFO    ] No existing commands found in stream
[2026-08-31 01:41:17,180.180 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:41:17,183.183 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-08-31 01:41:19,708.708 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 01:41:19,711.711 INFO    ] Checking for system updates...
[2026-08-31 01:41:19,746.746 INFO    ] 200
[2026-08-31 01:41:19,749.749 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:41:19,809.809 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:41:19,811.811 INFO    ] No update needed
[2026-08-31 01:41:19,814.814 INFO    ] Checking for camera pi updates...
[2026-08-31 01:41:19,849.849 INFO    ] 200
[2026-08-31 01:41:19,852.852 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:41:19,893.893 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:41:19,978.978 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:41:19,981.981 INFO    ] No camera update needed
[2026-08-31 01:41:19,983.983 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:41:19,986.986 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:41:19,992.992 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:41:19,998.998 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:41:22,039.039 INFO    ] ================================================
[2026-08-31 01:41:22,054.054 INFO    ] Launching Daemon at Mon Aug 31 01:41:22 IST 2026
[2026-08-31 01:41:22,064.064 INFO    ] ================================================
[2026-08-31 01:41:22,735.735 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:41:22
[2026-08-31 01:41:23,408.408 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:41:23,687.687 INFO    ] Initializing speech engine...
[2026-08-31 01:41:23,695.695 INFO    ] 2026-08-31 01:41:23
[2026-08-31 01:41:23,948.948 INFO    ] 2026-08-31 01:41:23
[2026-08-31 01:41:23,983.983 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:41:24,241.241 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:41:24,247.247 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:41:24,481.481 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:41:24,505.505 INFO    ] time= 31/08/2026 01:41:24
[2026-08-31 01:41:24,511.511 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:41:24,528.528 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:41:24,662.662 INFO    ] No existing commands found in stream
[2026-08-31 01:41:29,685.685 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:41:29,688.688 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-08-31 01:41:31,607.607 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 01:41:31,610.610 INFO    ] Checking for system updates...
[2026-08-31 01:41:31,653.653 INFO    ] 200
[2026-08-31 01:41:31,656.656 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:41:31,721.721 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:41:31,723.723 INFO    ] No update needed
[2026-08-31 01:41:31,726.726 INFO    ] Checking for camera pi updates...
[2026-08-31 01:41:31,768.768 INFO    ] 200
[2026-08-31 01:41:31,770.770 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:41:31,819.819 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:41:31,936.936 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:41:31,939.939 INFO    ] No camera update needed
[2026-08-31 01:41:31,942.942 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:41:31,944.944 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:41:31,951.951 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:41:31,956.956 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:41:34,996.996 INFO    ] ================================================
[2026-08-31 01:41:34,011.011 INFO    ] Launching Daemon at Mon Aug 31 01:41:34 IST 2026
[2026-08-31 01:41:34,022.022 INFO    ] ================================================
[2026-08-31 01:41:34,602.602 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:41:34
[2026-08-31 01:41:35,199.199 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:41:35,472.472 INFO    ] Initializing speech engine...
[2026-08-31 01:41:35,482.482 INFO    ] 2026-08-31 01:41:35
[2026-08-31 01:41:35,739.739 INFO    ] 2026-08-31 01:41:35
[2026-08-31 01:41:35,797.797 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:41:36,043.043 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:41:36,050.050 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:41:36,280.280 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:41:36,287.287 INFO    ] time= 31/08/2026 01:41:36
[2026-08-31 01:41:36,305.305 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:41:36,327.327 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:41:36,440.440 INFO    ] No existing commands found in stream
[2026-08-31 01:41:41,463.463 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:41:41,466.466 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-08-31 01:41:42,549.549 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 01:41:42,552.552 INFO    ] Checking for system updates...
[2026-08-31 01:41:42,592.592 INFO    ] 200
[2026-08-31 01:41:42,594.594 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:41:42,658.658 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:41:42,661.661 INFO    ] No update needed
[2026-08-31 01:41:42,664.664 INFO    ] Checking for camera pi updates...
[2026-08-31 01:41:42,700.700 INFO    ] 200
[2026-08-31 01:41:42,703.703 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:41:42,750.750 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:41:42,841.841 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:41:42,844.844 INFO    ] No camera update needed
[2026-08-31 01:41:42,847.847 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:41:42,849.849 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:41:42,856.856 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:41:42,861.861 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:41:44,902.902 INFO    ] ================================================
[2026-08-31 01:41:44,918.918 INFO    ] Launching Daemon at Mon Aug 31 01:41:44 IST 2026
[2026-08-31 01:41:44,928.928 INFO    ] ================================================
[2026-08-31 01:41:45,494.494 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:41:45
[2026-08-31 01:41:46,127.127 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:41:46,440.440 INFO    ] Initializing speech engine...
[2026-08-31 01:41:46,445.445 INFO    ] 2026-08-31 01:41:46
[2026-08-31 01:41:46,758.758 INFO    ] 2026-08-31 01:41:46
[2026-08-31 01:41:46,846.846 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:41:47,129.129 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:41:47,137.137 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:41:47,386.386 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:41:47,438.438 INFO    ] time= 31/08/2026 01:41:47
[2026-08-31 01:41:47,493.493 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:41:47,533.533 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:41:47,705.705 INFO    ] No existing commands found in stream
[2026-08-31 01:41:52,731.731 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:41:52,734.734 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-08-31 01:41:56,613.613 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 01:41:56,616.616 INFO    ] Checking for system updates...
[2026-08-31 01:41:56,654.654 INFO    ] 200
[2026-08-31 01:41:56,657.657 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:41:56,710.710 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:41:56,713.713 INFO    ] No update needed
[2026-08-31 01:41:56,716.716 INFO    ] Checking for camera pi updates...
[2026-08-31 01:41:56,755.755 INFO    ] 200
[2026-08-31 01:41:56,758.758 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:41:56,803.803 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:41:56,887.887 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:41:56,889.889 INFO    ] No camera update needed
[2026-08-31 01:41:56,891.891 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:41:56,894.894 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:41:56,899.899 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:41:56,904.904 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:41:58,943.943 INFO    ] ================================================
[2026-08-31 01:41:58,958.958 INFO    ] Launching Daemon at Mon Aug 31 01:41:58 IST 2026
[2026-08-31 01:41:58,969.969 INFO    ] ================================================
[2026-08-31 01:41:59,536.536 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:41:59
[2026-08-31 01:42:00,119.119 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:42:00,390.390 INFO    ] Initializing speech engine...
[2026-08-31 01:42:00,395.395 INFO    ] 2026-08-31 01:42:00
[2026-08-31 01:42:00,641.641 INFO    ] 2026-08-31 01:42:00
[2026-08-31 01:42:00,675.675 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:42:00,992.992 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:42:01,000.000 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:42:01,211.211 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:42:01,237.237 INFO    ] time= 31/08/2026 01:42:01
[2026-08-31 01:42:01,244.244 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:42:01,253.253 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:42:01,367.367 INFO    ] No existing commands found in stream
[2026-08-31 01:42:06,398.398 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:42:06,400.400 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-08-31 01:42:07,846.846 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 01:42:07,849.849 INFO    ] Checking for system updates...
[2026-08-31 01:42:07,889.889 INFO    ] 200
[2026-08-31 01:42:07,891.891 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:42:07,953.953 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:42:07,955.955 INFO    ] No update needed
[2026-08-31 01:42:07,958.958 INFO    ] Checking for camera pi updates...
[2026-08-31 01:42:07,996.996 INFO    ] 200
[2026-08-31 01:42:07,998.998 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:42:08,044.044 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:42:08,135.135 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:42:08,138.138 INFO    ] No camera update needed
[2026-08-31 01:42:08,140.140 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:42:08,142.142 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:42:08,148.148 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:42:08,153.153 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:42:10,193.193 INFO    ] ================================================
[2026-08-31 01:42:10,208.208 INFO    ] Launching Daemon at Mon Aug 31 01:42:10 IST 2026
[2026-08-31 01:42:10,218.218 INFO    ] ================================================
[2026-08-31 01:42:10,804.804 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:42:10
[2026-08-31 01:42:11,386.386 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:42:11,643.643 INFO    ] Initializing speech engine...
[2026-08-31 01:42:11,662.662 INFO    ] 2026-08-31 01:42:11
[2026-08-31 01:42:11,906.906 INFO    ] 2026-08-31 01:42:11
[2026-08-31 01:42:11,942.942 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:42:12,197.197 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:42:12,203.203 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:42:12,452.452 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:42:12,459.459 INFO    ] time= 31/08/2026 01:42:12
[2026-08-31 01:42:12,476.476 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:42:12,494.494 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:42:12,640.640 INFO    ] No existing commands found in stream
[2026-08-31 01:42:17,670.670 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:42:17,673.673 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-08-31 01:42:22,072.072 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 01:42:22,074.074 INFO    ] Checking for system updates...
[2026-08-31 01:42:22,110.110 INFO    ] 200
[2026-08-31 01:42:22,112.112 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:42:22,165.165 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:42:22,168.168 INFO    ] No update needed
[2026-08-31 01:42:22,170.170 INFO    ] Checking for camera pi updates...
[2026-08-31 01:42:22,204.204 INFO    ] 200
[2026-08-31 01:42:22,207.207 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:42:22,248.248 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:42:22,342.342 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:42:22,344.344 INFO    ] No camera update needed
[2026-08-31 01:42:22,346.346 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:42:22,349.349 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:42:22,354.354 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:42:22,359.359 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:42:24,401.401 INFO    ] ================================================
[2026-08-31 01:42:24,416.416 INFO    ] Launching Daemon at Mon Aug 31 01:42:24 IST 2026
[2026-08-31 01:42:24,427.427 INFO    ] ================================================
[2026-08-31 01:42:25,060.060 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:42:25
[2026-08-31 01:42:25,642.642 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:42:25,910.910 INFO    ] Initializing speech engine...
[2026-08-31 01:42:25,923.923 INFO    ] 2026-08-31 01:42:25
[2026-08-31 01:42:26,192.192 INFO    ] 2026-08-31 01:42:26
[2026-08-31 01:42:26,229.229 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:42:26,506.506 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:42:26,515.515 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:42:26,748.748 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:42:26,772.772 INFO    ] time= 31/08/2026 01:42:26
[2026-08-31 01:42:26,778.778 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:42:26,799.799 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:42:26,925.925 INFO    ] No existing commands found in stream
[2026-08-31 01:42:31,944.944 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:42:31,947.947 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-08-31 01:42:36,055.055 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 01:42:36,058.058 INFO    ] Checking for system updates...
[2026-08-31 01:42:36,093.093 INFO    ] 200
[2026-08-31 01:42:36,096.096 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:42:36,157.157 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:42:36,160.160 INFO    ] No update needed
[2026-08-31 01:42:36,162.162 INFO    ] Checking for camera pi updates...
[2026-08-31 01:42:36,200.200 INFO    ] 200
[2026-08-31 01:42:36,202.202 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:42:36,242.242 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:42:36,428.428 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:42:36,430.430 INFO    ] No camera update needed
[2026-08-31 01:42:36,433.433 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:42:36,435.435 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:42:36,440.440 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:42:36,445.445 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:42:38,488.488 INFO    ] ================================================
[2026-08-31 01:42:38,504.504 INFO    ] Launching Daemon at Mon Aug 31 01:42:38 IST 2026
[2026-08-31 01:42:38,515.515 INFO    ] ================================================
[2026-08-31 01:42:39,095.095 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:42:39
[2026-08-31 01:42:39,696.696 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:42:39,971.971 INFO    ] Initializing speech engine...
[2026-08-31 01:42:39,981.981 INFO    ] 2026-08-31 01:42:39
[2026-08-31 01:42:40,240.240 INFO    ] 2026-08-31 01:42:40
[2026-08-31 01:42:40,293.293 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:42:40,580.580 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:42:40,586.586 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:42:40,777.777 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:42:40,795.795 INFO    ] time= 31/08/2026 01:42:40
[2026-08-31 01:42:40,804.804 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:42:40,830.830 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:42:40,946.946 INFO    ] No existing commands found in stream
[2026-08-31 01:42:45,971.971 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:42:45,974.974 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-08-31 01:42:48,148.148 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 01:42:48,151.151 INFO    ] Checking for system updates...
[2026-08-31 01:42:48,191.191 INFO    ] 200
[2026-08-31 01:42:48,194.194 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:42:48,254.254 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:42:48,256.256 INFO    ] No update needed
[2026-08-31 01:42:48,259.259 INFO    ] Checking for camera pi updates...
[2026-08-31 01:42:48,297.297 INFO    ] 200
[2026-08-31 01:42:48,299.299 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:42:48,345.345 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:42:48,428.428 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:42:48,431.431 INFO    ] No camera update needed
[2026-08-31 01:42:48,433.433 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:42:48,435.435 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:42:48,441.441 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:42:48,446.446 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:42:50,485.485 INFO    ] ================================================
[2026-08-31 01:42:50,501.501 INFO    ] Launching Daemon at Mon Aug 31 01:42:50 IST 2026
[2026-08-31 01:42:50,512.512 INFO    ] ================================================
[2026-08-31 01:42:51,079.079 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:42:51
[2026-08-31 01:42:51,663.663 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:42:51,931.931 INFO    ] Initializing speech engine...
[2026-08-31 01:42:51,939.939 INFO    ] 2026-08-31 01:42:51
[2026-08-31 01:42:52,184.184 INFO    ] 2026-08-31 01:42:52
[2026-08-31 01:42:52,220.220 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:42:52,475.475 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:42:52,480.480 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:42:52,694.694 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:42:52,739.739 INFO    ] time= 31/08/2026 01:42:52
[2026-08-31 01:42:52,745.745 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:42:52,765.765 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:42:52,894.894 INFO    ] No existing commands found in stream
[2026-08-31 01:42:57,914.914 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:42:57,916.916 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-08-31 01:43:01,660.660 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 01:43:01,664.664 INFO    ] Checking for system updates...
[2026-08-31 01:43:01,766.766 INFO    ] 200
[2026-08-31 01:43:01,772.772 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:43:01,872.872 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:43:01,882.882 INFO    ] No update needed
[2026-08-31 01:43:01,885.885 INFO    ] Checking for camera pi updates...
[2026-08-31 01:43:01,937.937 INFO    ] 200
[2026-08-31 01:43:01,940.940 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:43:02,018.018 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:43:02,089.089 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:43:02,092.092 INFO    ] No camera update needed
[2026-08-31 01:43:02,095.095 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:43:02,098.098 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:43:02,105.105 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:43:02,111.111 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:43:04,154.154 INFO    ] ================================================
[2026-08-31 01:43:04,169.169 INFO    ] Launching Daemon at Mon Aug 31 01:43:04 IST 2026
[2026-08-31 01:43:04,179.179 INFO    ] ================================================
[2026-08-31 01:43:04,834.834 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:43:04
[2026-08-31 01:43:05,513.513 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:43:05,817.817 INFO    ] Initializing speech engine...
[2026-08-31 01:43:05,825.825 INFO    ] 2026-08-31 01:43:05
[2026-08-31 01:43:06,101.101 INFO    ] 2026-08-31 01:43:06
[2026-08-31 01:43:06,159.159 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:43:06,508.508 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:43:06,551.551 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:43:06,789.789 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:43:06,858.858 INFO    ] time= 31/08/2026 01:43:06
[2026-08-31 01:43:06,862.862 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:43:06,865.865 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:43:07,003.003 INFO    ] No existing commands found in stream
[2026-08-31 01:43:12,028.028 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:43:12,031.031 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-08-31 01:43:13,228.228 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 01:43:13,230.230 INFO    ] Checking for system updates...
[2026-08-31 01:43:13,271.271 INFO    ] 200
[2026-08-31 01:43:13,273.273 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:43:13,335.335 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:43:13,338.338 INFO    ] No update needed
[2026-08-31 01:43:13,340.340 INFO    ] Checking for camera pi updates...
[2026-08-31 01:43:13,374.374 INFO    ] 200
[2026-08-31 01:43:13,377.377 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:43:13,424.424 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:43:13,512.512 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:43:13,515.515 INFO    ] No camera update needed
[2026-08-31 01:43:13,518.518 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:43:13,521.521 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:43:13,528.528 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:43:13,534.534 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:43:15,575.575 INFO    ] ================================================
[2026-08-31 01:43:15,590.590 INFO    ] Launching Daemon at Mon Aug 31 01:43:15 IST 2026
[2026-08-31 01:43:15,601.601 INFO    ] ================================================
[2026-08-31 01:43:16,166.166 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:43:16
[2026-08-31 01:43:16,748.748 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:43:16,996.996 INFO    ] Initializing speech engine...
[2026-08-31 01:43:17,011.011 INFO    ] 2026-08-31 01:43:16
[2026-08-31 01:43:17,276.276 INFO    ] 2026-08-31 01:43:17
[2026-08-31 01:43:17,311.311 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:43:17,512.512 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:43:17,571.571 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:43:17,811.811 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:43:17,844.844 INFO    ] time= 31/08/2026 01:43:17
[2026-08-31 01:43:17,860.860 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:43:17,869.869 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:43:18,000.000 INFO    ] No existing commands found in stream
[2026-08-31 01:43:23,012.012 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:43:23,015.015 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-08-31 01:43:24,386.386 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 01:43:24,389.389 INFO    ] Checking for system updates...
[2026-08-31 01:43:24,430.430 INFO    ] 200
[2026-08-31 01:43:24,432.432 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:43:24,492.492 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:43:24,495.495 INFO    ] No update needed
[2026-08-31 01:43:24,498.498 INFO    ] Checking for camera pi updates...
[2026-08-31 01:43:24,537.537 INFO    ] 200
[2026-08-31 01:43:24,544.544 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:43:24,593.593 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:43:24,678.678 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:43:24,681.681 INFO    ] No camera update needed
[2026-08-31 01:43:24,683.683 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:43:24,686.686 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:43:24,693.693 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:43:24,699.699 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:43:26,739.739 INFO    ] ================================================
[2026-08-31 01:43:26,754.754 INFO    ] Launching Daemon at Mon Aug 31 01:43:26 IST 2026
[2026-08-31 01:43:26,765.765 INFO    ] ================================================
[2026-08-31 01:43:27,329.329 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:43:27
[2026-08-31 01:43:27,911.911 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:43:28,179.179 INFO    ] Initializing speech engine...
[2026-08-31 01:43:28,187.187 INFO    ] 2026-08-31 01:43:28
[2026-08-31 01:43:28,438.438 INFO    ] 2026-08-31 01:43:28
[2026-08-31 01:43:28,473.473 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:43:28,758.758 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:43:28,763.763 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:43:28,975.975 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:43:29,004.004 INFO    ] time= 31/08/2026 01:43:28
[2026-08-31 01:43:29,019.019 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:43:29,028.028 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:43:29,159.159 INFO    ] No existing commands found in stream
[2026-08-31 01:43:34,170.170 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:43:34,173.173 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-08-31 01:43:37,609.609 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 01:43:37,612.612 INFO    ] Checking for system updates...
[2026-08-31 01:43:37,647.647 INFO    ] 200
[2026-08-31 01:43:37,650.650 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:43:37,706.706 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:43:37,709.709 INFO    ] No update needed
[2026-08-31 01:43:37,712.712 INFO    ] Checking for camera pi updates...
[2026-08-31 01:43:37,749.749 INFO    ] 200
[2026-08-31 01:43:37,752.752 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:43:37,792.792 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:43:37,890.890 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:43:37,893.893 INFO    ] No camera update needed
[2026-08-31 01:43:37,895.895 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:43:37,897.897 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:43:37,903.903 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:43:37,908.908 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:43:39,949.949 INFO    ] ================================================
[2026-08-31 01:43:39,964.964 INFO    ] Launching Daemon at Mon Aug 31 01:43:39 IST 2026
[2026-08-31 01:43:39,975.975 INFO    ] ================================================
[2026-08-31 01:43:40,540.540 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:43:40
[2026-08-31 01:43:41,125.125 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:43:41,364.364 INFO    ] Initializing speech engine...
[2026-08-31 01:43:41,370.370 INFO    ] 2026-08-31 01:43:41
[2026-08-31 01:43:41,652.652 INFO    ] 2026-08-31 01:43:41
[2026-08-31 01:43:41,687.687 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:43:41,951.951 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:43:41,956.956 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:43:42,213.213 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:43:42,220.220 INFO    ] time= 31/08/2026 01:43:42
[2026-08-31 01:43:42,238.238 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:43:42,260.260 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:43:42,381.381 INFO    ] No existing commands found in stream
[2026-08-31 01:43:47,405.405 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:43:47,408.408 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-08-31 01:43:48,134.134 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 01:43:48,137.137 INFO    ] Checking for system updates...
[2026-08-31 01:43:48,177.177 INFO    ] 200
[2026-08-31 01:43:48,180.180 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:43:48,242.242 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:43:48,244.244 INFO    ] No update needed
[2026-08-31 01:43:48,246.246 INFO    ] Checking for camera pi updates...
[2026-08-31 01:43:48,284.284 INFO    ] 200
[2026-08-31 01:43:48,287.287 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:43:48,326.326 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:43:48,425.425 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:43:48,428.428 INFO    ] No camera update needed
[2026-08-31 01:43:48,430.430 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:43:48,432.432 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:43:48,438.438 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:43:48,443.443 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:43:50,486.486 INFO    ] ================================================
[2026-08-31 01:43:50,501.501 INFO    ] Launching Daemon at Mon Aug 31 01:43:50 IST 2026
[2026-08-31 01:43:50,511.511 INFO    ] ================================================
[2026-08-31 01:43:51,170.170 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:43:51
[2026-08-31 01:43:51,858.858 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:43:52,171.171 INFO    ] Initializing speech engine...
[2026-08-31 01:43:52,179.179 INFO    ] 2026-08-31 01:43:52
[2026-08-31 01:43:52,462.462 INFO    ] 2026-08-31 01:43:52
[2026-08-31 01:43:52,520.520 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:43:52,812.812 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:43:52,818.818 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:43:53,022.022 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:43:53,041.041 INFO    ] time= 31/08/2026 01:43:53
[2026-08-31 01:43:53,071.071 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:43:53,079.079 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:43:53,221.221 INFO    ] No existing commands found in stream
[2026-08-31 01:43:58,250.250 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:43:58,253.253 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-08-31 01:44:01,963.963 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 01:44:01,967.967 INFO    ] Checking for system updates...
[2026-08-31 01:44:02,031.031 INFO    ] 200
[2026-08-31 01:44:02,038.038 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:44:02,135.135 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:44:02,138.138 INFO    ] No update needed
[2026-08-31 01:44:02,142.142 INFO    ] Checking for camera pi updates...
[2026-08-31 01:44:02,202.202 INFO    ] 200
[2026-08-31 01:44:02,206.206 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:44:02,269.269 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:44:02,352.352 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:44:02,356.356 INFO    ] No camera update needed
[2026-08-31 01:44:02,362.362 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:44:02,366.366 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:44:02,373.373 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:44:02,382.382 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:44:04,428.428 INFO    ] ================================================
[2026-08-31 01:44:04,443.443 INFO    ] Launching Daemon at Mon Aug 31 01:44:04 IST 2026
[2026-08-31 01:44:04,453.453 INFO    ] ================================================
[2026-08-31 01:44:05,034.034 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:44:05
[2026-08-31 01:44:05,631.631 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:44:05,909.909 INFO    ] Initializing speech engine...
[2026-08-31 01:44:05,916.916 INFO    ] 2026-08-31 01:44:05
[2026-08-31 01:44:06,176.176 INFO    ] 2026-08-31 01:44:06
[2026-08-31 01:44:06,206.206 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:44:06,457.457 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:44:06,461.461 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:44:06,707.707 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:44:06,721.721 INFO    ] time= 31/08/2026 01:44:06
[2026-08-31 01:44:06,739.739 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:44:06,756.756 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:44:06,905.905 INFO    ] No existing commands found in stream
[2026-08-31 01:44:11,926.926 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:44:11,929.929 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-08-31 01:44:16,108.108 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 01:44:16,111.111 INFO    ] Checking for system updates...
[2026-08-31 01:44:16,147.147 INFO    ] 200
[2026-08-31 01:44:16,149.149 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:44:16,209.209 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:44:16,211.211 INFO    ] No update needed
[2026-08-31 01:44:16,213.213 INFO    ] Checking for camera pi updates...
[2026-08-31 01:44:16,247.247 INFO    ] 200
[2026-08-31 01:44:16,250.250 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:44:16,292.292 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:44:16,362.362 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:44:16,367.367 INFO    ] No camera update needed
[2026-08-31 01:44:16,370.370 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:44:16,373.373 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:44:16,378.378 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:44:16,383.383 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:44:18,424.424 INFO    ] ================================================
[2026-08-31 01:44:18,439.439 INFO    ] Launching Daemon at Mon Aug 31 01:44:18 IST 2026
[2026-08-31 01:44:18,450.450 INFO    ] ================================================
[2026-08-31 01:44:19,104.104 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:44:19
[2026-08-31 01:44:19,744.744 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:44:20,022.022 INFO    ] Initializing speech engine...
[2026-08-31 01:44:20,035.035 INFO    ] 2026-08-31 01:44:20
[2026-08-31 01:44:20,303.303 INFO    ] 2026-08-31 01:44:20
[2026-08-31 01:44:20,341.341 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:44:20,568.568 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:44:20,628.628 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:44:20,881.881 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:44:20,921.921 INFO    ] time= 31/08/2026 01:44:20
[2026-08-31 01:44:20,942.942 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:44:20,948.948 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:44:21,079.079 INFO    ] No existing commands found in stream
[2026-08-31 01:44:26,101.101 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:44:26,104.104 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-08-31 01:44:26,871.871 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 01:44:26,874.874 INFO    ] Checking for system updates...
[2026-08-31 01:44:26,915.915 INFO    ] 200
[2026-08-31 01:44:26,917.917 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:44:26,978.978 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:44:26,981.981 INFO    ] No update needed
[2026-08-31 01:44:26,984.984 INFO    ] Checking for camera pi updates...
[2026-08-31 01:44:27,018.018 INFO    ] 200
[2026-08-31 01:44:27,021.021 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:44:27,067.067 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:44:27,157.157 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:44:27,160.160 INFO    ] No camera update needed
[2026-08-31 01:44:27,163.163 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:44:27,165.165 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:44:27,172.172 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:44:27,177.177 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:44:29,219.219 INFO    ] ================================================
[2026-08-31 01:44:29,234.234 INFO    ] Launching Daemon at Mon Aug 31 01:44:29 IST 2026
[2026-08-31 01:44:29,244.244 INFO    ] ================================================
[2026-08-31 01:44:29,826.826 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:44:29
[2026-08-31 01:44:30,421.421 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:44:30,682.682 INFO    ] Initializing speech engine...
[2026-08-31 01:44:30,689.689 INFO    ] 2026-08-31 01:44:30
[2026-08-31 01:44:30,984.984 INFO    ] 2026-08-31 01:44:30
[2026-08-31 01:44:31,009.009 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:44:31,233.233 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:44:31,254.254 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:44:31,475.475 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:44:31,483.483 INFO    ] time= 31/08/2026 01:44:31
[2026-08-31 01:44:31,538.538 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:44:31,587.587 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:44:31,693.693 INFO    ] No existing commands found in stream
[2026-08-31 01:44:36,705.705 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:44:36,708.708 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-08-31 01:44:38,631.631 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 01:44:38,633.633 INFO    ] Checking for system updates...
[2026-08-31 01:44:38,669.669 INFO    ] 200
[2026-08-31 01:44:38,671.671 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:44:38,733.733 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:44:38,736.736 INFO    ] No update needed
[2026-08-31 01:44:38,738.738 INFO    ] Checking for camera pi updates...
[2026-08-31 01:44:38,775.775 INFO    ] 200
[2026-08-31 01:44:38,778.778 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:44:38,818.818 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:44:38,992.992 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:44:38,994.994 INFO    ] No camera update needed
[2026-08-31 01:44:38,997.997 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:44:38,999.999 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:44:39,005.005 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:44:39,010.010 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:44:41,051.051 INFO    ] ================================================
[2026-08-31 01:44:41,066.066 INFO    ] Launching Daemon at Mon Aug 31 01:44:41 IST 2026
[2026-08-31 01:44:41,077.077 INFO    ] ================================================
[2026-08-31 01:44:41,732.732 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:44:41
[2026-08-31 01:44:42,403.403 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:44:42,704.704 INFO    ] Initializing speech engine...
[2026-08-31 01:44:42,711.711 INFO    ] 2026-08-31 01:44:42
[2026-08-31 01:44:42,989.989 INFO    ] 2026-08-31 01:44:42
[2026-08-31 01:44:43,047.047 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:44:43,280.280 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:44:43,286.286 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:44:43,541.541 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:44:43,564.564 INFO    ] time= 31/08/2026 01:44:43
[2026-08-31 01:44:43,575.575 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:44:43,601.601 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:44:43,761.761 INFO    ] No existing commands found in stream
[2026-08-31 01:44:48,787.787 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:44:48,790.790 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-08-31 01:44:52,370.370 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 01:44:52,373.373 INFO    ] Checking for system updates...
[2026-08-31 01:44:52,410.410 INFO    ] 200
[2026-08-31 01:44:52,412.412 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:44:52,473.473 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:44:52,475.475 INFO    ] No update needed
[2026-08-31 01:44:52,478.478 INFO    ] Checking for camera pi updates...
[2026-08-31 01:44:52,517.517 INFO    ] 200
[2026-08-31 01:44:52,520.520 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:44:52,565.565 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:44:52,646.646 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:44:52,649.649 INFO    ] No camera update needed
[2026-08-31 01:44:52,652.652 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:44:52,655.655 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:44:52,661.661 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:44:52,667.667 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:44:54,709.709 INFO    ] ================================================
[2026-08-31 01:44:54,724.724 INFO    ] Launching Daemon at Mon Aug 31 01:44:54 IST 2026
[2026-08-31 01:44:54,735.735 INFO    ] ================================================
[2026-08-31 01:44:55,312.312 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:44:55
[2026-08-31 01:44:55,906.906 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:44:56,180.180 INFO    ] Initializing speech engine...
[2026-08-31 01:44:56,185.185 INFO    ] 2026-08-31 01:44:56
[2026-08-31 01:44:56,446.446 INFO    ] 2026-08-31 01:44:56
[2026-08-31 01:44:56,500.500 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:44:56,755.755 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:44:56,762.762 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:44:56,978.978 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:44:57,038.038 INFO    ] time= 31/08/2026 01:44:56
[2026-08-31 01:44:57,054.054 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:44:57,060.060 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:44:57,210.210 INFO    ] No existing commands found in stream
[2026-08-31 01:45:02,235.235 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:45:02,250.250 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-08-31 01:45:05,551.551 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 01:45:05,554.554 INFO    ] Checking for system updates...
[2026-08-31 01:45:05,590.590 INFO    ] 200
[2026-08-31 01:45:05,592.592 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:45:05,644.644 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:45:05,646.646 INFO    ] No update needed
[2026-08-31 01:45:05,649.649 INFO    ] Checking for camera pi updates...
[2026-08-31 01:45:05,682.682 INFO    ] 200
[2026-08-31 01:45:05,685.685 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:45:05,730.730 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:45:05,811.811 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:45:05,814.814 INFO    ] No camera update needed
[2026-08-31 01:45:05,816.816 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:45:05,818.818 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:45:05,824.824 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:45:05,829.829 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:45:07,871.871 INFO    ] ================================================
[2026-08-31 01:45:07,887.887 INFO    ] Launching Daemon at Mon Aug 31 01:45:07 IST 2026
[2026-08-31 01:45:07,898.898 INFO    ] ================================================
[2026-08-31 01:45:08,485.485 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:45:08
[2026-08-31 01:45:09,087.087 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:45:09,365.365 INFO    ] Initializing speech engine...
[2026-08-31 01:45:09,372.372 INFO    ] 2026-08-31 01:45:09
[2026-08-31 01:45:09,639.639 INFO    ] 2026-08-31 01:45:09
[2026-08-31 01:45:09,689.689 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:45:09,971.971 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:45:09,980.980 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:45:10,177.177 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:45:10,193.193 INFO    ] time= 31/08/2026 01:45:10
[2026-08-31 01:45:10,223.223 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:45:10,231.231 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:45:10,338.338 INFO    ] No existing commands found in stream
[2026-08-31 01:45:15,367.367 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:45:15,370.370 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-08-31 01:45:16,672.672 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 01:45:16,674.674 INFO    ] Checking for system updates...
[2026-08-31 01:45:16,710.710 INFO    ] 200
[2026-08-31 01:45:16,712.712 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:45:16,771.771 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:45:16,773.773 INFO    ] No update needed
[2026-08-31 01:45:16,776.776 INFO    ] Checking for camera pi updates...
[2026-08-31 01:45:16,815.815 INFO    ] 200
[2026-08-31 01:45:16,818.818 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:45:16,860.860 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:45:16,910.910 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:45:16,912.912 INFO    ] No camera update needed
[2026-08-31 01:45:16,914.914 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:45:16,917.917 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:45:16,922.922 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:45:16,927.927 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:45:18,968.968 INFO    ] ================================================
[2026-08-31 01:45:18,983.983 INFO    ] Launching Daemon at Mon Aug 31 01:45:18 IST 2026
[2026-08-31 01:45:18,993.993 INFO    ] ================================================
[2026-08-31 01:45:19,572.572 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:45:19
[2026-08-31 01:45:20,170.170 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:45:20,421.421 INFO    ] Initializing speech engine...
[2026-08-31 01:45:20,435.435 INFO    ] 2026-08-31 01:45:20
[2026-08-31 01:45:20,700.700 INFO    ] 2026-08-31 01:45:20
[2026-08-31 01:45:20,735.735 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:45:20,990.990 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:45:20,999.999 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:45:21,219.219 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:45:21,256.256 INFO    ] time= 31/08/2026 01:45:21
[2026-08-31 01:45:21,262.262 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:45:21,280.280 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:45:21,409.409 INFO    ] No existing commands found in stream
[2026-08-31 01:45:26,422.422 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:45:26,425.425 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-08-31 01:45:29,431.431 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 01:45:29,434.434 INFO    ] Checking for system updates...
[2026-08-31 01:45:29,470.470 INFO    ] 200
[2026-08-31 01:45:29,472.472 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:45:29,531.531 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:45:29,534.534 INFO    ] No update needed
[2026-08-31 01:45:29,536.536 INFO    ] Checking for camera pi updates...
[2026-08-31 01:45:29,571.571 INFO    ] 200
[2026-08-31 01:45:29,573.573 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:45:29,615.615 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:45:29,701.701 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:45:29,703.703 INFO    ] No camera update needed
[2026-08-31 01:45:29,705.705 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:45:29,708.708 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:45:29,713.713 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:45:29,718.718 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:45:31,761.761 INFO    ] ================================================
[2026-08-31 01:45:31,778.778 INFO    ] Launching Daemon at Mon Aug 31 01:45:31 IST 2026
[2026-08-31 01:45:31,790.790 INFO    ] ================================================
[2026-08-31 01:45:32,477.477 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:45:32
[2026-08-31 01:45:33,185.185 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:45:33,526.526 INFO    ] Initializing speech engine...
[2026-08-31 01:45:33,537.537 INFO    ] 2026-08-31 01:45:33
[2026-08-31 01:45:33,826.826 INFO    ] 2026-08-31 01:45:33
[2026-08-31 01:45:33,883.883 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:45:34,281.281 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:45:34,336.336 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:45:34,605.605 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:45:34,633.633 INFO    ] time= 31/08/2026 01:45:34
[2026-08-31 01:45:34,698.698 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:45:34,748.748 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:45:34,930.930 INFO    ] No existing commands found in stream
[2026-08-31 01:45:39,966.966 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:45:39,970.970 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-08-31 01:45:43,813.813 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 01:45:43,816.816 INFO    ] Checking for system updates...
[2026-08-31 01:45:43,856.856 INFO    ] 200
[2026-08-31 01:45:43,859.859 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:45:43,919.919 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:45:43,922.922 INFO    ] No update needed
[2026-08-31 01:45:43,925.925 INFO    ] Checking for camera pi updates...
[2026-08-31 01:45:43,959.959 INFO    ] 200
[2026-08-31 01:45:43,962.962 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:45:44,007.007 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:45:44,090.090 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:45:44,093.093 INFO    ] No camera update needed
[2026-08-31 01:45:44,095.095 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:45:44,098.098 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:45:44,104.104 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:45:44,110.110 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:45:46,150.150 INFO    ] ================================================
[2026-08-31 01:45:46,165.165 INFO    ] Launching Daemon at Mon Aug 31 01:45:46 IST 2026
[2026-08-31 01:45:46,176.176 INFO    ] ================================================
[2026-08-31 01:45:46,745.745 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:45:46
[2026-08-31 01:45:47,396.396 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:45:47,699.699 INFO    ] Initializing speech engine...
[2026-08-31 01:45:47,710.710 INFO    ] 2026-08-31 01:45:47
[2026-08-31 01:45:47,985.985 INFO    ] 2026-08-31 01:45:47
[2026-08-31 01:45:48,042.042 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:45:48,382.382 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:45:48,389.389 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:45:48,662.662 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:45:48,704.704 INFO    ] time= 31/08/2026 01:45:48
[2026-08-31 01:45:48,769.769 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:45:48,810.810 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:45:48,964.964 INFO    ] No existing commands found in stream
[2026-08-31 01:45:53,979.979 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:45:53,983.983 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-08-31 01:45:57,138.138 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 01:45:57,141.141 INFO    ] Checking for system updates...
[2026-08-31 01:45:57,176.176 INFO    ] 200
[2026-08-31 01:45:57,179.179 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:45:57,241.241 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:45:57,244.244 INFO    ] No update needed
[2026-08-31 01:45:57,246.246 INFO    ] Checking for camera pi updates...
[2026-08-31 01:45:57,279.279 INFO    ] 200
[2026-08-31 01:45:57,282.282 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:45:57,327.327 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:45:57,411.411 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:45:57,413.413 INFO    ] No camera update needed
[2026-08-31 01:45:57,416.416 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:45:57,418.418 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:45:57,423.423 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:45:57,428.428 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:45:59,468.468 INFO    ] ================================================
[2026-08-31 01:45:59,484.484 INFO    ] Launching Daemon at Mon Aug 31 01:45:59 IST 2026
[2026-08-31 01:45:59,495.495 INFO    ] ================================================
[2026-08-31 01:46:00,074.074 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:46:00
[2026-08-31 01:46:00,676.676 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:46:00,943.943 INFO    ] Initializing speech engine...
[2026-08-31 01:46:00,958.958 INFO    ] 2026-08-31 01:46:00
[2026-08-31 01:46:01,245.245 INFO    ] 2026-08-31 01:46:01
[2026-08-31 01:46:01,284.284 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:46:01,617.617 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:46:01,626.626 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:46:01,856.856 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:46:01,893.893 INFO    ] time= 31/08/2026 01:46:01
[2026-08-31 01:46:01,897.897 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:46:01,900.900 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:46:02,089.089 INFO    ] No existing commands found in stream
[2026-08-31 01:46:07,112.112 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:46:07,115.115 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-08-31 01:46:10,433.433 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 01:46:10,436.436 INFO    ] Checking for system updates...
[2026-08-31 01:46:10,471.471 INFO    ] 200
[2026-08-31 01:46:10,474.474 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:46:10,528.528 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:46:10,531.531 INFO    ] No update needed
[2026-08-31 01:46:10,533.533 INFO    ] Checking for camera pi updates...
[2026-08-31 01:46:10,566.566 INFO    ] 200
[2026-08-31 01:46:10,569.569 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:46:10,609.609 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:46:10,686.686 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:46:10,688.688 INFO    ] No camera update needed
[2026-08-31 01:46:10,691.691 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:46:10,693.693 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:46:10,698.698 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:46:10,703.703 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:46:12,743.743 INFO    ] ================================================
[2026-08-31 01:46:12,758.758 INFO    ] Launching Daemon at Mon Aug 31 01:46:12 IST 2026
[2026-08-31 01:46:12,769.769 INFO    ] ================================================
[2026-08-31 01:46:13,334.334 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:46:13
[2026-08-31 01:46:13,916.916 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:46:14,186.186 INFO    ] Initializing speech engine...
[2026-08-31 01:46:14,195.195 INFO    ] 2026-08-31 01:46:14
[2026-08-31 01:46:14,444.444 INFO    ] 2026-08-31 01:46:14
[2026-08-31 01:46:14,479.479 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:46:14,735.735 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:46:14,744.744 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:46:14,969.969 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:46:15,009.009 INFO    ] time= 31/08/2026 01:46:14
[2026-08-31 01:46:15,015.015 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:46:15,033.033 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:46:15,155.155 INFO    ] No existing commands found in stream
[2026-08-31 01:46:20,177.177 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:46:20,180.180 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-08-31 01:46:23,741.741 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 01:46:23,744.744 INFO    ] Checking for system updates...
[2026-08-31 01:46:23,780.780 INFO    ] 200
[2026-08-31 01:46:23,782.782 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:46:23,834.834 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:46:23,836.836 INFO    ] No update needed
[2026-08-31 01:46:23,839.839 INFO    ] Checking for camera pi updates...
[2026-08-31 01:46:23,872.872 INFO    ] 200
[2026-08-31 01:46:23,875.875 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:46:23,921.921 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:46:24,001.001 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:46:24,003.003 INFO    ] No camera update needed
[2026-08-31 01:46:24,005.005 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:46:24,008.008 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:46:24,013.013 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:46:24,018.018 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:46:26,059.059 INFO    ] ================================================
[2026-08-31 01:46:26,075.075 INFO    ] Launching Daemon at Mon Aug 31 01:46:26 IST 2026
[2026-08-31 01:46:26,085.085 INFO    ] ================================================
[2026-08-31 01:46:26,658.658 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:46:26
[2026-08-31 01:46:27,251.251 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:46:27,520.520 INFO    ] Initializing speech engine...
[2026-08-31 01:46:27,530.530 INFO    ] 2026-08-31 01:46:27
[2026-08-31 01:46:27,774.774 INFO    ] 2026-08-31 01:46:27
[2026-08-31 01:46:27,816.816 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:46:28,066.066 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:46:28,072.072 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:46:28,284.284 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:46:28,328.328 INFO    ] time= 31/08/2026 01:46:28
[2026-08-31 01:46:28,334.334 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:46:28,352.352 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:46:28,482.482 INFO    ] No existing commands found in stream
[2026-08-31 01:46:33,496.496 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:46:33,499.499 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-08-31 01:46:37,393.393 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 01:46:37,396.396 INFO    ] Checking for system updates...
[2026-08-31 01:46:37,432.432 INFO    ] 200
[2026-08-31 01:46:37,434.434 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:46:37,488.488 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:46:37,491.491 INFO    ] No update needed
[2026-08-31 01:46:37,493.493 INFO    ] Checking for camera pi updates...
[2026-08-31 01:46:37,530.530 INFO    ] 200
[2026-08-31 01:46:37,533.533 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:46:37,574.574 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:46:37,669.669 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:46:37,671.671 INFO    ] No camera update needed
[2026-08-31 01:46:37,674.674 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:46:37,677.677 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:46:37,683.683 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:46:37,689.689 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:46:39,731.731 INFO    ] ================================================
[2026-08-31 01:46:39,746.746 INFO    ] Launching Daemon at Mon Aug 31 01:46:39 IST 2026
[2026-08-31 01:46:39,756.756 INFO    ] ================================================
[2026-08-31 01:46:40,332.332 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:46:40
[2026-08-31 01:46:40,912.912 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:46:41,183.183 INFO    ] Initializing speech engine...
[2026-08-31 01:46:41,192.192 INFO    ] 2026-08-31 01:46:41
[2026-08-31 01:46:41,440.440 INFO    ] 2026-08-31 01:46:41
[2026-08-31 01:46:41,474.474 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:46:41,724.724 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:46:41,741.741 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:46:41,975.975 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:46:42,005.005 INFO    ] time= 31/08/2026 01:46:41
[2026-08-31 01:46:42,011.011 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:46:42,031.031 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:46:42,164.164 INFO    ] No existing commands found in stream
[2026-08-31 01:46:47,178.178 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:46:47,181.181 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-08-31 01:46:48,955.955 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 01:46:48,957.957 INFO    ] Checking for system updates...
[2026-08-31 01:46:48,992.992 INFO    ] 200
[2026-08-31 01:46:48,995.995 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:46:49,055.055 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:46:49,057.057 INFO    ] No update needed
[2026-08-31 01:46:49,060.060 INFO    ] Checking for camera pi updates...
[2026-08-31 01:46:49,098.098 INFO    ] 200
[2026-08-31 01:46:49,100.100 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:46:49,141.141 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:46:49,321.321 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:46:49,323.323 INFO    ] No camera update needed
[2026-08-31 01:46:49,326.326 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:46:49,328.328 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:46:49,333.333 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:46:49,338.338 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:46:51,380.380 INFO    ] ================================================
[2026-08-31 01:46:51,395.395 INFO    ] Launching Daemon at Mon Aug 31 01:46:51 IST 2026
[2026-08-31 01:46:51,405.405 INFO    ] ================================================
[2026-08-31 01:46:51,977.977 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:46:51
[2026-08-31 01:46:52,559.559 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:46:52,805.805 INFO    ] Initializing speech engine...
[2026-08-31 01:46:52,811.811 INFO    ] 2026-08-31 01:46:52
[2026-08-31 01:46:53,084.084 INFO    ] 2026-08-31 01:46:53
[2026-08-31 01:46:53,118.118 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:46:53,381.381 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:46:53,385.385 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:46:53,616.616 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:46:53,648.648 INFO    ] time= 31/08/2026 01:46:53
[2026-08-31 01:46:53,654.654 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:46:53,671.671 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:46:53,804.804 INFO    ] No existing commands found in stream
[2026-08-31 01:46:58,817.817 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:46:58,820.820 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-08-31 01:47:02,005.005 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 01:47:02,008.008 INFO    ] Checking for system updates...
[2026-08-31 01:47:02,053.053 INFO    ] 200
[2026-08-31 01:47:02,057.057 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:47:02,149.149 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:47:02,153.153 INFO    ] No update needed
[2026-08-31 01:47:02,156.156 INFO    ] Checking for camera pi updates...
[2026-08-31 01:47:02,199.199 INFO    ] 200
[2026-08-31 01:47:02,202.202 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:47:02,255.255 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:47:02,315.315 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:47:02,319.319 INFO    ] No camera update needed
[2026-08-31 01:47:02,322.322 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:47:02,325.325 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:47:02,333.333 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:47:02,339.339 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:47:04,380.380 INFO    ] ================================================
[2026-08-31 01:47:04,396.396 INFO    ] Launching Daemon at Mon Aug 31 01:47:04 IST 2026
[2026-08-31 01:47:04,407.407 INFO    ] ================================================
[2026-08-31 01:47:04,992.992 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:47:04
[2026-08-31 01:47:05,617.617 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:47:05,884.884 INFO    ] Initializing speech engine...
[2026-08-31 01:47:05,897.897 INFO    ] 2026-08-31 01:47:05
[2026-08-31 01:47:06,191.191 INFO    ] 2026-08-31 01:47:06
[2026-08-31 01:47:06,227.227 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:47:06,499.499 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:47:06,515.515 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:47:06,753.753 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:47:06,805.805 INFO    ] time= 31/08/2026 01:47:06
[2026-08-31 01:47:06,832.832 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:47:06,850.850 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:47:06,972.972 INFO    ] No existing commands found in stream
[2026-08-31 01:47:11,984.984 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:47:11,986.986 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-08-31 01:47:12,558.558 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 01:47:12,561.561 INFO    ] Checking for system updates...
[2026-08-31 01:47:12,597.597 INFO    ] 200
[2026-08-31 01:47:12,600.600 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:47:12,661.661 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:47:12,663.663 INFO    ] No update needed
[2026-08-31 01:47:12,666.666 INFO    ] Checking for camera pi updates...
[2026-08-31 01:47:12,711.711 INFO    ] 200
[2026-08-31 01:47:12,714.714 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:47:12,760.760 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:47:12,843.843 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:47:12,846.846 INFO    ] No camera update needed
[2026-08-31 01:47:12,849.849 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:47:12,852.852 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:47:12,858.858 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:47:12,864.864 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:47:14,907.907 INFO    ] ================================================
[2026-08-31 01:47:14,923.923 INFO    ] Launching Daemon at Mon Aug 31 01:47:14 IST 2026
[2026-08-31 01:47:14,934.934 INFO    ] ================================================
[2026-08-31 01:47:15,502.502 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:47:15
[2026-08-31 01:47:16,084.084 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:47:16,357.357 INFO    ] Initializing speech engine...
[2026-08-31 01:47:16,362.362 INFO    ] 2026-08-31 01:47:16
[2026-08-31 01:47:16,607.607 INFO    ] 2026-08-31 01:47:16
[2026-08-31 01:47:16,642.642 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:47:16,898.898 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:47:16,902.902 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:47:17,099.099 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:47:17,160.160 INFO    ] time= 31/08/2026 01:47:17
[2026-08-31 01:47:17,167.167 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:47:17,184.184 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:47:17,329.329 INFO    ] No existing commands found in stream
[2026-08-31 01:47:22,361.361 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:47:22,363.363 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-08-31 01:47:25,596.596 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 01:47:25,599.599 INFO    ] Checking for system updates...
[2026-08-31 01:47:25,638.638 INFO    ] 200
[2026-08-31 01:47:25,641.641 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:47:25,699.699 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:47:25,702.702 INFO    ] No update needed
[2026-08-31 01:47:25,704.704 INFO    ] Checking for camera pi updates...
[2026-08-31 01:47:25,741.741 INFO    ] 200
[2026-08-31 01:47:25,744.744 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:47:25,784.784 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:47:25,875.875 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:47:25,877.877 INFO    ] No camera update needed
[2026-08-31 01:47:25,880.880 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:47:25,882.882 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:47:25,887.887 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:47:25,892.892 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:47:27,933.933 INFO    ] ================================================
[2026-08-31 01:47:27,948.948 INFO    ] Launching Daemon at Mon Aug 31 01:47:27 IST 2026
[2026-08-31 01:47:27,959.959 INFO    ] ================================================
[2026-08-31 01:47:28,541.541 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:47:28
[2026-08-31 01:47:29,140.140 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:47:29,414.414 INFO    ] Initializing speech engine...
[2026-08-31 01:47:29,423.423 INFO    ] 2026-08-31 01:47:29
[2026-08-31 01:47:29,684.684 INFO    ] 2026-08-31 01:47:29
[2026-08-31 01:47:29,741.741 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:47:30,091.091 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:47:30,102.102 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:47:30,341.341 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:47:30,379.379 INFO    ] time= 31/08/2026 01:47:30
[2026-08-31 01:47:30,437.437 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:47:30,484.484 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:47:30,630.630 INFO    ] No existing commands found in stream
[2026-08-31 01:47:35,643.643 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:47:35,646.646 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-08-31 01:47:40,005.005 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 01:47:40,008.008 INFO    ] Checking for system updates...
[2026-08-31 01:47:40,044.044 INFO    ] 200
[2026-08-31 01:47:40,046.046 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:47:40,105.105 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:47:40,108.108 INFO    ] No update needed
[2026-08-31 01:47:40,110.110 INFO    ] Checking for camera pi updates...
[2026-08-31 01:47:40,144.144 INFO    ] 200
[2026-08-31 01:47:40,146.146 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:47:40,191.191 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:47:40,278.278 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:47:40,280.280 INFO    ] No camera update needed
[2026-08-31 01:47:40,282.282 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:47:40,285.285 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:47:40,290.290 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:47:40,295.295 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:47:42,338.338 INFO    ] ================================================
[2026-08-31 01:47:42,353.353 INFO    ] Launching Daemon at Mon Aug 31 01:47:42 IST 2026
[2026-08-31 01:47:42,364.364 INFO    ] ================================================
[2026-08-31 01:47:42,947.947 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:47:42
[2026-08-31 01:47:43,548.548 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:47:43,804.804 INFO    ] Initializing speech engine...
[2026-08-31 01:47:43,811.811 INFO    ] 2026-08-31 01:47:43
[2026-08-31 01:47:44,099.099 INFO    ] 2026-08-31 01:47:44
[2026-08-31 01:47:44,135.135 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:47:44,388.388 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:47:44,397.397 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:47:44,620.620 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:47:44,655.655 INFO    ] time= 31/08/2026 01:47:44
[2026-08-31 01:47:44,662.662 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:47:44,680.680 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:47:44,806.806 INFO    ] No existing commands found in stream
[2026-08-31 01:47:49,822.822 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:47:49,825.825 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-08-31 01:47:53,260.260 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 01:47:53,262.262 INFO    ] Checking for system updates...
[2026-08-31 01:47:53,300.300 INFO    ] 200
[2026-08-31 01:47:53,302.302 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:47:53,362.362 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:47:53,366.366 INFO    ] No update needed
[2026-08-31 01:47:53,369.369 INFO    ] Checking for camera pi updates...
[2026-08-31 01:47:53,404.404 INFO    ] 200
[2026-08-31 01:47:53,406.406 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:47:53,448.448 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:47:53,523.523 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:47:53,526.526 INFO    ] No camera update needed
[2026-08-31 01:47:53,529.529 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:47:53,532.532 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:47:53,538.538 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:47:53,544.544 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:47:55,586.586 INFO    ] ================================================
[2026-08-31 01:47:55,601.601 INFO    ] Launching Daemon at Mon Aug 31 01:47:55 IST 2026
[2026-08-31 01:47:55,619.619 INFO    ] ================================================
[2026-08-31 01:47:56,204.204 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:47:56
[2026-08-31 01:47:56,812.812 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:47:57,086.086 INFO    ] Initializing speech engine...
[2026-08-31 01:47:57,095.095 INFO    ] 2026-08-31 01:47:57
[2026-08-31 01:47:57,343.343 INFO    ] 2026-08-31 01:47:57
[2026-08-31 01:47:57,380.380 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:47:57,656.656 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:47:57,664.664 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:47:57,892.892 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:47:57,898.898 INFO    ] time= 31/08/2026 01:47:57
[2026-08-31 01:47:57,920.920 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:47:57,946.946 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:47:58,085.085 INFO    ] No existing commands found in stream
[2026-08-31 01:48:03,116.116 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:48:03,119.119 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-08-31 01:48:04,398.398 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 01:48:04,401.401 INFO    ] Checking for system updates...
[2026-08-31 01:48:04,446.446 INFO    ] 200
[2026-08-31 01:48:04,449.449 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:48:04,508.508 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:48:04,511.511 INFO    ] No update needed
[2026-08-31 01:48:04,514.514 INFO    ] Checking for camera pi updates...
[2026-08-31 01:48:04,552.552 INFO    ] 200
[2026-08-31 01:48:04,554.554 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:48:04,600.600 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:48:04,699.699 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:48:04,702.702 INFO    ] No camera update needed
[2026-08-31 01:48:04,705.705 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:48:04,707.707 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:48:04,713.713 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:48:04,719.719 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:48:06,759.759 INFO    ] ================================================
[2026-08-31 01:48:06,774.774 INFO    ] Launching Daemon at Mon Aug 31 01:48:06 IST 2026
[2026-08-31 01:48:06,785.785 INFO    ] ================================================
[2026-08-31 01:48:07,366.366 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:48:07
[2026-08-31 01:48:07,967.967 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:48:08,245.245 INFO    ] Initializing speech engine...
[2026-08-31 01:48:08,255.255 INFO    ] 2026-08-31 01:48:08
[2026-08-31 01:48:08,501.501 INFO    ] 2026-08-31 01:48:08
[2026-08-31 01:48:08,535.535 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:48:08,786.786 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:48:08,795.795 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:48:09,008.008 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:48:09,054.054 INFO    ] time= 31/08/2026 01:48:09
[2026-08-31 01:48:09,060.060 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:48:09,079.079 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:48:09,210.210 INFO    ] No existing commands found in stream
[2026-08-31 01:48:14,229.229 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:48:14,232.232 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-08-31 01:48:16,679.679 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 01:48:16,681.681 INFO    ] Checking for system updates...
[2026-08-31 01:48:16,722.722 INFO    ] 200
[2026-08-31 01:48:16,725.725 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:48:16,782.782 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:48:16,785.785 INFO    ] No update needed
[2026-08-31 01:48:16,788.788 INFO    ] Checking for camera pi updates...
[2026-08-31 01:48:16,827.827 INFO    ] 200
[2026-08-31 01:48:16,830.830 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:48:16,872.872 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:48:16,958.958 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:48:16,961.961 INFO    ] No camera update needed
[2026-08-31 01:48:16,963.963 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:48:16,966.966 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:48:16,972.972 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:48:16,978.978 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:48:19,019.019 INFO    ] ================================================
[2026-08-31 01:48:19,034.034 INFO    ] Launching Daemon at Mon Aug 31 01:48:19 IST 2026
[2026-08-31 01:48:19,045.045 INFO    ] ================================================
[2026-08-31 01:48:19,611.611 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:48:19
[2026-08-31 01:48:20,195.195 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:48:20,466.466 INFO    ] Initializing speech engine...
[2026-08-31 01:48:20,475.475 INFO    ] 2026-08-31 01:48:20
[2026-08-31 01:48:20,725.725 INFO    ] 2026-08-31 01:48:20
[2026-08-31 01:48:20,758.758 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:48:20,962.962 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:48:21,021.021 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:48:21,222.222 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:48:21,271.271 INFO    ] time= 31/08/2026 01:48:21
[2026-08-31 01:48:21,296.296 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:48:21,302.302 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:48:21,452.452 INFO    ] No existing commands found in stream
[2026-08-31 01:48:26,470.470 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:48:26,473.473 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-08-31 01:48:28,257.257 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 01:48:28,260.260 INFO    ] Checking for system updates...
[2026-08-31 01:48:28,295.295 INFO    ] 200
[2026-08-31 01:48:28,298.298 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:48:28,350.350 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:48:28,352.352 INFO    ] No update needed
[2026-08-31 01:48:28,355.355 INFO    ] Checking for camera pi updates...
[2026-08-31 01:48:28,388.388 INFO    ] 200
[2026-08-31 01:48:28,391.391 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:48:28,435.435 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:48:28,538.538 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:48:28,540.540 INFO    ] No camera update needed
[2026-08-31 01:48:28,543.543 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:48:28,545.545 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:48:28,550.550 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:48:28,555.555 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:48:30,598.598 INFO    ] ================================================
[2026-08-31 01:48:30,613.613 INFO    ] Launching Daemon at Mon Aug 31 01:48:30 IST 2026
[2026-08-31 01:48:30,624.624 INFO    ] ================================================
[2026-08-31 01:48:31,210.210 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:48:31
[2026-08-31 01:48:31,829.829 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:48:32,123.123 INFO    ] Initializing speech engine...
[2026-08-31 01:48:32,131.131 INFO    ] 2026-08-31 01:48:32
[2026-08-31 01:48:32,404.404 INFO    ] 2026-08-31 01:48:32
[2026-08-31 01:48:32,464.464 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:48:32,699.699 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:48:32,706.706 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:48:32,976.976 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:48:32,983.983 INFO    ] time= 31/08/2026 01:48:32
[2026-08-31 01:48:33,001.001 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:48:33,018.018 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:48:33,132.132 INFO    ] No existing commands found in stream
[2026-08-31 01:48:38,148.148 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:48:38,150.150 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-08-31 01:48:40,399.399 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 01:48:40,401.401 INFO    ] Checking for system updates...
[2026-08-31 01:48:40,437.437 INFO    ] 200
[2026-08-31 01:48:40,440.440 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:48:40,492.492 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:48:40,494.494 INFO    ] No update needed
[2026-08-31 01:48:40,497.497 INFO    ] Checking for camera pi updates...
[2026-08-31 01:48:40,531.531 INFO    ] 200
[2026-08-31 01:48:40,534.534 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:48:40,578.578 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:48:40,640.640 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:48:40,642.642 INFO    ] No camera update needed
[2026-08-31 01:48:40,645.645 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:48:40,647.647 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:48:40,652.652 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:48:40,658.658 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:48:42,697.697 INFO    ] ================================================
[2026-08-31 01:48:42,712.712 INFO    ] Launching Daemon at Mon Aug 31 01:48:42 IST 2026
[2026-08-31 01:48:42,722.722 INFO    ] ================================================
[2026-08-31 01:48:43,301.301 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:48:43
[2026-08-31 01:48:43,897.897 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:48:44,173.173 INFO    ] Initializing speech engine...
[2026-08-31 01:48:44,180.180 INFO    ] 2026-08-31 01:48:44
[2026-08-31 01:48:44,439.439 INFO    ] 2026-08-31 01:48:44
[2026-08-31 01:48:44,492.492 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:48:44,739.739 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:48:44,746.746 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:48:44,975.975 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:48:44,982.982 INFO    ] time= 31/08/2026 01:48:44
[2026-08-31 01:48:45,002.002 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:48:45,029.029 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:48:45,159.159 INFO    ] No existing commands found in stream
[2026-08-31 01:48:50,190.190 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:48:50,193.193 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-08-31 01:48:51,178.178 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 01:48:51,181.181 INFO    ] Checking for system updates...
[2026-08-31 01:48:51,216.216 INFO    ] 200
[2026-08-31 01:48:51,219.219 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:48:51,275.275 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:48:51,277.277 INFO    ] No update needed
[2026-08-31 01:48:51,280.280 INFO    ] Checking for camera pi updates...
[2026-08-31 01:48:51,313.313 INFO    ] 200
[2026-08-31 01:48:51,315.315 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:48:51,357.357 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:48:51,525.525 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:48:51,527.527 INFO    ] No camera update needed
[2026-08-31 01:48:51,530.530 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:48:51,532.532 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:48:51,537.537 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:48:51,542.542 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:48:53,582.582 INFO    ] ================================================
[2026-08-31 01:48:53,597.597 INFO    ] Launching Daemon at Mon Aug 31 01:48:53 IST 2026
[2026-08-31 01:48:53,608.608 INFO    ] ================================================
[2026-08-31 01:48:54,172.172 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:48:54
[2026-08-31 01:48:54,752.752 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:48:54,998.998 INFO    ] Initializing speech engine...
[2026-08-31 01:48:55,166.166 INFO    ] 2026-08-31 01:48:55
[2026-08-31 01:48:55,460.460 INFO    ] 2026-08-31 01:48:55
[2026-08-31 01:48:55,491.491 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:48:55,822.822 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:48:55,831.831 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:48:56,065.065 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:48:56,087.087 INFO    ] time= 31/08/2026 01:48:56
[2026-08-31 01:48:56,146.146 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:48:56,205.205 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:48:56,406.406 INFO    ] No existing commands found in stream
[2026-08-31 01:49:01,428.428 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:49:01,431.431 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-08-31 01:49:04,001.001 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 01:49:04,004.004 INFO    ] Checking for system updates...
[2026-08-31 01:49:04,043.043 INFO    ] 200
[2026-08-31 01:49:04,045.045 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:49:04,104.104 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:49:04,106.106 INFO    ] No update needed
[2026-08-31 01:49:04,109.109 INFO    ] Checking for camera pi updates...
[2026-08-31 01:49:04,142.142 INFO    ] 200
[2026-08-31 01:49:04,144.144 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:49:04,193.193 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:49:04,249.249 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:49:04,251.251 INFO    ] No camera update needed
[2026-08-31 01:49:04,253.253 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:49:04,256.256 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:49:04,261.261 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:49:04,266.266 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:49:06,310.310 INFO    ] ================================================
[2026-08-31 01:49:06,326.326 INFO    ] Launching Daemon at Mon Aug 31 01:49:06 IST 2026
[2026-08-31 01:49:06,338.338 INFO    ] ================================================
[2026-08-31 01:49:06,963.963 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:49:06
[2026-08-31 01:49:07,558.558 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:49:07,836.836 INFO    ] Initializing speech engine...
[2026-08-31 01:49:07,841.841 INFO    ] 2026-08-31 01:49:07
[2026-08-31 01:49:08,091.091 INFO    ] 2026-08-31 01:49:08
[2026-08-31 01:49:08,125.125 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:49:08,390.390 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:49:08,394.394 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:49:08,633.633 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:49:08,662.662 INFO    ] time= 31/08/2026 01:49:08
[2026-08-31 01:49:08,677.677 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:49:08,684.684 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:49:08,818.818 INFO    ] No existing commands found in stream
[2026-08-31 01:49:13,829.829 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:49:13,832.832 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-08-31 01:49:16,683.683 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 01:49:16,685.685 INFO    ] Checking for system updates...
[2026-08-31 01:49:16,724.724 INFO    ] 200
[2026-08-31 01:49:16,727.727 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:49:16,779.779 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:49:16,781.781 INFO    ] No update needed
[2026-08-31 01:49:16,783.783 INFO    ] Checking for camera pi updates...
[2026-08-31 01:49:16,816.816 INFO    ] 200
[2026-08-31 01:49:16,819.819 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:49:16,859.859 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:49:16,926.926 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:49:16,928.928 INFO    ] No camera update needed
[2026-08-31 01:49:16,931.931 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:49:16,933.933 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:49:16,938.938 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:49:16,943.943 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:49:18,984.984 INFO    ] ================================================
[2026-08-31 01:49:19,999.999 INFO    ] Launching Daemon at Mon Aug 31 01:49:18 IST 2026
[2026-08-31 01:49:19,010.010 INFO    ] ================================================
[2026-08-31 01:49:19,592.592 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:49:19
[2026-08-31 01:49:20,191.191 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:49:20,473.473 INFO    ] Initializing speech engine...
[2026-08-31 01:49:20,480.480 INFO    ] 2026-08-31 01:49:20
[2026-08-31 01:49:20,740.740 INFO    ] 2026-08-31 01:49:20
[2026-08-31 01:49:20,794.794 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:49:21,071.071 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:49:21,097.097 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:49:21,291.291 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:49:21,326.326 INFO    ] time= 31/08/2026 01:49:21
[2026-08-31 01:49:21,333.333 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:49:21,351.351 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:49:21,499.499 INFO    ] No existing commands found in stream
[2026-08-31 01:49:26,513.513 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:49:26,517.517 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-08-31 01:49:27,588.588 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 01:49:27,590.590 INFO    ] Checking for system updates...
[2026-08-31 01:49:27,627.627 INFO    ] 200
[2026-08-31 01:49:27,630.630 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:49:27,683.683 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:49:27,686.686 INFO    ] No update needed
[2026-08-31 01:49:27,689.689 INFO    ] Checking for camera pi updates...
[2026-08-31 01:49:27,727.727 INFO    ] 200
[2026-08-31 01:49:27,730.730 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:49:27,772.772 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:49:27,856.856 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:49:27,889.889 INFO    ] No camera update needed
[2026-08-31 01:49:27,892.892 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:49:27,895.895 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:49:27,901.901 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:49:27,906.906 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:49:29,946.946 INFO    ] ================================================
[2026-08-31 01:49:29,961.961 INFO    ] Launching Daemon at Mon Aug 31 01:49:29 IST 2026
[2026-08-31 01:49:29,972.972 INFO    ] ================================================
[2026-08-31 01:49:30,627.627 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:49:30
[2026-08-31 01:49:31,304.304 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:49:31,644.644 INFO    ] Initializing speech engine...
[2026-08-31 01:49:31,654.654 INFO    ] 2026-08-31 01:49:31
[2026-08-31 01:49:31,978.978 INFO    ] 2026-08-31 01:49:31
[2026-08-31 01:49:32,066.066 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:49:32,297.297 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:49:32,302.302 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:49:32,501.501 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:49:32,523.523 INFO    ] time= 31/08/2026 01:49:32
[2026-08-31 01:49:32,533.533 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:49:32,560.560 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:49:32,691.691 INFO    ] No existing commands found in stream
[2026-08-31 01:49:37,723.723 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:49:37,726.726 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-08-31 01:49:41,310.310 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 01:49:41,313.313 INFO    ] Checking for system updates...
[2026-08-31 01:49:41,355.355 INFO    ] 200
[2026-08-31 01:49:41,358.358 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:49:41,420.420 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:49:41,424.424 INFO    ] No update needed
[2026-08-31 01:49:41,427.427 INFO    ] Checking for camera pi updates...
[2026-08-31 01:49:41,466.466 INFO    ] 200
[2026-08-31 01:49:41,470.470 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:49:41,520.520 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:49:41,601.601 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:49:41,603.603 INFO    ] No camera update needed
[2026-08-31 01:49:41,606.606 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:49:41,608.608 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:49:41,614.614 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:49:41,619.619 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:49:43,660.660 INFO    ] ================================================
[2026-08-31 01:49:43,675.675 INFO    ] Launching Daemon at Mon Aug 31 01:49:43 IST 2026
[2026-08-31 01:49:43,686.686 INFO    ] ================================================
[2026-08-31 01:49:44,266.266 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:49:44
[2026-08-31 01:49:44,865.865 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:49:45,142.142 INFO    ] Initializing speech engine...
[2026-08-31 01:49:45,148.148 INFO    ] 2026-08-31 01:49:45
[2026-08-31 01:49:45,401.401 INFO    ] 2026-08-31 01:49:45
[2026-08-31 01:49:45,460.460 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:49:45,712.712 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:49:45,717.717 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:49:45,945.945 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:49:45,951.951 INFO    ] time= 31/08/2026 01:49:45
[2026-08-31 01:49:45,969.969 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:49:45,998.998 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:49:46,119.119 INFO    ] No existing commands found in stream
[2026-08-31 01:49:51,149.149 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:49:51,152.152 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-08-31 01:49:55,700.700 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 01:49:55,703.703 INFO    ] Checking for system updates...
[2026-08-31 01:49:55,766.766 INFO    ] 200
[2026-08-31 01:49:55,769.769 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-08-31 01:49:55,772.772 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-08-31 01:49:55,774.774 INFO    ] Checking for camera pi updates...
[2026-08-31 01:49:55,811.811 INFO    ] 200
[2026-08-31 01:49:55,813.813 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-08-31 01:49:55,815.815 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-08-31 01:49:55,824.824 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:49:55,826.826 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:49:55,833.833 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:49:55,838.838 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:49:57,886.886 INFO    ] ================================================
[2026-08-31 01:49:57,904.904 INFO    ] Launching Daemon at Mon Aug 31 01:49:57 IST 2026
[2026-08-31 01:49:57,916.916 INFO    ] ================================================
[2026-08-31 01:49:58,513.513 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:49:58
[2026-08-31 01:49:59,207.207 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:49:59,516.516 INFO    ] Initializing speech engine...
[2026-08-31 01:49:59,526.526 INFO    ] 2026-08-31 01:49:59
[2026-08-31 01:49:59,793.793 INFO    ] 2026-08-31 01:49:59
[2026-08-31 01:49:59,834.834 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:50:00,119.119 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:50:00,126.126 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:50:00,319.319 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:50:00,334.334 INFO    ] time= 31/08/2026 01:50:00
[2026-08-31 01:50:00,343.343 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:50:00,371.371 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:50:00,489.489 INFO    ] No existing commands found in stream
[2026-08-31 01:50:05,520.520 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:50:05,522.522 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-08-31 01:50:08,370.370 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 01:50:08,373.373 INFO    ] Checking for system updates...
[2026-08-31 01:50:08,409.409 INFO    ] 200
[2026-08-31 01:50:08,412.412 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:50:08,464.464 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:50:08,467.467 INFO    ] No update needed
[2026-08-31 01:50:08,469.469 INFO    ] Checking for camera pi updates...
[2026-08-31 01:50:08,504.504 INFO    ] 200
[2026-08-31 01:50:08,507.507 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:50:08,549.549 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:50:08,628.628 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:50:08,631.631 INFO    ] No camera update needed
[2026-08-31 01:50:08,633.633 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:50:08,636.636 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:50:08,641.641 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:50:08,646.646 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:50:10,688.688 INFO    ] ================================================
[2026-08-31 01:50:10,704.704 INFO    ] Launching Daemon at Mon Aug 31 01:50:10 IST 2026
[2026-08-31 01:50:10,715.715 INFO    ] ================================================
[2026-08-31 01:50:11,281.281 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:50:11
[2026-08-31 01:50:11,863.863 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:50:12,130.130 INFO    ] Initializing speech engine...
[2026-08-31 01:50:12,139.139 INFO    ] 2026-08-31 01:50:12
[2026-08-31 01:50:12,385.385 INFO    ] 2026-08-31 01:50:12
[2026-08-31 01:50:12,421.421 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:50:12,677.677 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:50:12,683.683 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:50:12,906.906 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:50:12,941.941 INFO    ] time= 31/08/2026 01:50:12
[2026-08-31 01:50:12,958.958 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:50:12,966.966 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:50:13,099.099 INFO    ] No existing commands found in stream
[2026-08-31 01:50:18,125.125 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:50:18,133.133 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-08-31 01:50:22,268.268 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 01:50:22,271.271 INFO    ] Checking for system updates...
[2026-08-31 01:50:22,310.310 INFO    ] 200
[2026-08-31 01:50:22,313.313 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:50:22,365.365 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:50:22,368.368 INFO    ] No update needed
[2026-08-31 01:50:22,371.371 INFO    ] Checking for camera pi updates...
[2026-08-31 01:50:22,409.409 INFO    ] 200
[2026-08-31 01:50:22,411.411 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:50:22,451.451 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:50:22,547.547 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:50:22,549.549 INFO    ] No camera update needed
[2026-08-31 01:50:22,552.552 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:50:22,554.554 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:50:22,559.559 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:50:22,564.564 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:50:24,604.604 INFO    ] ================================================
[2026-08-31 01:50:24,620.620 INFO    ] Launching Daemon at Mon Aug 31 01:50:24 IST 2026
[2026-08-31 01:50:24,630.630 INFO    ] ================================================
[2026-08-31 01:50:25,237.237 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:50:25
[2026-08-31 01:50:25,832.832 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:50:26,104.104 INFO    ] Initializing speech engine...
[2026-08-31 01:50:26,110.110 INFO    ] 2026-08-31 01:50:26
[2026-08-31 01:50:26,370.370 INFO    ] 2026-08-31 01:50:26
[2026-08-31 01:50:26,423.423 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:50:26,650.650 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:50:26,655.655 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:50:26,865.865 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:50:26,911.911 INFO    ] time= 31/08/2026 01:50:26
[2026-08-31 01:50:26,917.917 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:50:26,935.935 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:50:27,068.068 INFO    ] No existing commands found in stream
[2026-08-31 01:50:32,086.086 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:50:32,089.089 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-08-31 01:50:35,129.129 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 01:50:35,132.132 INFO    ] Checking for system updates...
[2026-08-31 01:50:35,167.167 INFO    ] 200
[2026-08-31 01:50:35,170.170 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:50:35,228.228 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:50:35,231.231 INFO    ] No update needed
[2026-08-31 01:50:35,233.233 INFO    ] Checking for camera pi updates...
[2026-08-31 01:50:35,267.267 INFO    ] 200
[2026-08-31 01:50:35,270.270 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:50:35,310.310 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:50:35,412.412 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:50:35,414.414 INFO    ] No camera update needed
[2026-08-31 01:50:35,417.417 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:50:35,419.419 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:50:35,424.424 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:50:35,429.429 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:50:37,472.472 INFO    ] ================================================
[2026-08-31 01:50:37,488.488 INFO    ] Launching Daemon at Mon Aug 31 01:50:37 IST 2026
[2026-08-31 01:50:37,499.499 INFO    ] ================================================
[2026-08-31 01:50:38,114.114 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:50:38
[2026-08-31 01:50:38,759.759 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:50:39,007.007 INFO    ] Initializing speech engine...
[2026-08-31 01:50:39,028.028 INFO    ] 2026-08-31 01:50:39
[2026-08-31 01:50:39,302.302 INFO    ] 2026-08-31 01:50:39
[2026-08-31 01:50:39,351.351 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:50:39,585.585 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:50:39,638.638 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:50:39,810.810 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:50:39,880.880 INFO    ] time= 31/08/2026 01:50:39
[2026-08-31 01:50:39,940.940 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:50:39,948.948 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:50:40,097.097 INFO    ] No existing commands found in stream
[2026-08-31 01:50:45,109.109 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:50:45,111.111 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-08-31 01:50:48,525.525 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 01:50:48,528.528 INFO    ] Checking for system updates...
[2026-08-31 01:50:48,564.564 INFO    ] 200
[2026-08-31 01:50:48,567.567 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:50:48,619.619 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:50:48,621.621 INFO    ] No update needed
[2026-08-31 01:50:48,624.624 INFO    ] Checking for camera pi updates...
[2026-08-31 01:50:48,658.658 INFO    ] 200
[2026-08-31 01:50:48,660.660 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:50:48,700.700 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:50:48,808.808 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:50:48,811.811 INFO    ] No camera update needed
[2026-08-31 01:50:48,813.813 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:50:48,815.815 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:50:48,821.821 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:50:48,826.826 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:50:50,865.865 INFO    ] ================================================
[2026-08-31 01:50:50,881.881 INFO    ] Launching Daemon at Mon Aug 31 01:50:50 IST 2026
[2026-08-31 01:50:50,892.892 INFO    ] ================================================
[2026-08-31 01:50:51,457.457 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:50:51
[2026-08-31 01:50:52,040.040 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:50:52,284.284 INFO    ] Initializing speech engine...
[2026-08-31 01:50:52,292.292 INFO    ] 2026-08-31 01:50:52
[2026-08-31 01:50:52,563.563 INFO    ] 2026-08-31 01:50:52
[2026-08-31 01:50:52,598.598 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:50:52,854.854 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:50:52,861.861 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:50:53,111.111 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:50:53,120.120 INFO    ] time= 31/08/2026 01:50:53
[2026-08-31 01:50:53,139.139 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:50:53,167.167 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:50:53,283.283 INFO    ] No existing commands found in stream
[2026-08-31 01:50:58,308.308 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:50:58,311.311 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-08-31 01:50:59,889.889 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 01:50:59,891.891 INFO    ] Checking for system updates...
[2026-08-31 01:50:59,933.933 INFO    ] 200
[2026-08-31 01:50:59,935.935 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:50:59,996.996 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:50:59,998.998 INFO    ] No update needed
[2026-08-31 01:51:00,001.001 INFO    ] Checking for camera pi updates...
[2026-08-31 01:51:00,034.034 INFO    ] 200
[2026-08-31 01:51:00,036.036 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:51:00,077.077 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:51:00,265.265 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:51:00,268.268 INFO    ] No camera update needed
[2026-08-31 01:51:00,270.270 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:51:00,273.273 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:51:00,278.278 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:51:00,283.283 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:51:02,329.329 INFO    ] ================================================
[2026-08-31 01:51:02,350.350 INFO    ] Launching Daemon at Mon Aug 31 01:51:02 IST 2026
[2026-08-31 01:51:02,366.366 INFO    ] ================================================
[2026-08-31 01:51:03,089.089 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:51:03
[2026-08-31 01:51:03,772.772 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:51:04,031.031 INFO    ] Initializing speech engine...
[2026-08-31 01:51:04,039.039 INFO    ] 2026-08-31 01:51:04
[2026-08-31 01:51:04,336.336 INFO    ] 2026-08-31 01:51:04
[2026-08-31 01:51:04,374.374 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:51:04,664.664 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:51:04,674.674 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:51:04,854.854 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:51:04,881.881 INFO    ] time= 31/08/2026 01:51:04
[2026-08-31 01:51:04,936.936 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:51:04,952.952 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:51:05,099.099 INFO    ] No existing commands found in stream
[2026-08-31 01:51:10,112.112 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:51:10,115.115 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-08-31 01:51:11,842.842 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 01:51:11,845.845 INFO    ] Checking for system updates...
[2026-08-31 01:51:11,881.881 INFO    ] 200
[2026-08-31 01:51:11,884.884 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:51:11,935.935 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:51:11,938.938 INFO    ] No update needed
[2026-08-31 01:51:11,940.940 INFO    ] Checking for camera pi updates...
[2026-08-31 01:51:11,978.978 INFO    ] 200
[2026-08-31 01:51:11,980.980 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:51:12,024.024 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:51:12,107.107 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:51:12,109.109 INFO    ] No camera update needed
[2026-08-31 01:51:12,112.112 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:51:12,114.114 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:51:12,119.119 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:51:12,124.124 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:51:14,165.165 INFO    ] ================================================
[2026-08-31 01:51:14,180.180 INFO    ] Launching Daemon at Mon Aug 31 01:51:14 IST 2026
[2026-08-31 01:51:14,190.190 INFO    ] ================================================
[2026-08-31 01:51:14,778.778 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:51:14
[2026-08-31 01:51:15,382.382 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:51:15,652.652 INFO    ] Initializing speech engine...
[2026-08-31 01:51:15,661.661 INFO    ] 2026-08-31 01:51:15
[2026-08-31 01:51:15,987.987 INFO    ] 2026-08-31 01:51:15
[2026-08-31 01:51:16,069.069 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:51:16,302.302 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:51:16,348.348 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:51:16,565.565 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:51:16,575.575 INFO    ] time= 31/08/2026 01:51:16
[2026-08-31 01:51:16,611.611 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:51:16,672.672 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:51:16,808.808 INFO    ] No existing commands found in stream
[2026-08-31 01:51:21,829.829 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:51:21,832.832 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-08-31 01:51:26,185.185 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 01:51:26,188.188 INFO    ] Checking for system updates...
[2026-08-31 01:51:26,223.223 INFO    ] 200
[2026-08-31 01:51:26,226.226 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:51:26,284.284 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:51:26,287.287 INFO    ] No update needed
[2026-08-31 01:51:26,289.289 INFO    ] Checking for camera pi updates...
[2026-08-31 01:51:26,327.327 INFO    ] 200
[2026-08-31 01:51:26,329.329 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:51:26,375.375 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:51:26,466.466 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:51:26,468.468 INFO    ] No camera update needed
[2026-08-31 01:51:26,471.471 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:51:26,473.473 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:51:26,479.479 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:51:26,484.484 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:51:28,525.525 INFO    ] ================================================
[2026-08-31 01:51:28,541.541 INFO    ] Launching Daemon at Mon Aug 31 01:51:28 IST 2026
[2026-08-31 01:51:28,552.552 INFO    ] ================================================
[2026-08-31 01:51:29,211.211 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:51:29
[2026-08-31 01:51:29,872.872 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:51:30,152.152 INFO    ] Initializing speech engine...
[2026-08-31 01:51:30,157.157 INFO    ] 2026-08-31 01:51:30
[2026-08-31 01:51:30,420.420 INFO    ] 2026-08-31 01:51:30
[2026-08-31 01:51:30,450.450 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:51:30,701.701 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:51:30,706.706 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:51:30,957.957 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:51:30,964.964 INFO    ] time= 31/08/2026 01:51:30
[2026-08-31 01:51:30,982.982 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:51:31,005.005 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:51:31,136.136 INFO    ] No existing commands found in stream
[2026-08-31 01:51:36,166.166 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:51:36,169.169 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-08-31 01:51:39,269.269 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 01:51:39,271.271 INFO    ] Checking for system updates...
[2026-08-31 01:51:39,312.312 INFO    ] 200
[2026-08-31 01:51:39,315.315 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:51:39,368.368 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:51:39,371.371 INFO    ] No update needed
[2026-08-31 01:51:39,374.374 INFO    ] Checking for camera pi updates...
[2026-08-31 01:51:39,413.413 INFO    ] 200
[2026-08-31 01:51:39,416.416 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:51:39,460.460 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:51:39,535.535 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:51:39,538.538 INFO    ] No camera update needed
[2026-08-31 01:51:39,541.541 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:51:39,543.543 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:51:39,550.550 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:51:39,556.556 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:51:41,596.596 INFO    ] ================================================
[2026-08-31 01:51:41,611.611 INFO    ] Launching Daemon at Mon Aug 31 01:51:41 IST 2026
[2026-08-31 01:51:41,622.622 INFO    ] ================================================
[2026-08-31 01:51:42,195.195 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:51:42
[2026-08-31 01:51:42,778.778 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:51:43,027.027 INFO    ] Initializing speech engine...
[2026-08-31 01:51:43,050.050 INFO    ] 2026-08-31 01:51:43
[2026-08-31 01:51:43,307.307 INFO    ] 2026-08-31 01:51:43
[2026-08-31 01:51:43,341.341 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:51:43,604.604 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:51:43,613.613 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:51:43,850.850 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:51:43,878.878 INFO    ] time= 31/08/2026 01:51:43
[2026-08-31 01:51:43,883.883 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:51:43,904.904 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:51:44,036.036 INFO    ] No existing commands found in stream
[2026-08-31 01:51:49,048.048 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:51:49,051.051 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-08-31 01:51:51,272.272 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 01:51:51,275.275 INFO    ] Checking for system updates...
[2026-08-31 01:51:51,312.312 INFO    ] 200
[2026-08-31 01:51:51,315.315 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:51:51,377.377 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:51:51,380.380 INFO    ] No update needed
[2026-08-31 01:51:51,384.384 INFO    ] Checking for camera pi updates...
[2026-08-31 01:51:51,424.424 INFO    ] 200
[2026-08-31 01:51:51,427.427 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:51:51,469.469 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:51:51,558.558 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:51:51,561.561 INFO    ] No camera update needed
[2026-08-31 01:51:51,564.564 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:51:51,567.567 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:51:51,573.573 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:51:51,579.579 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:51:53,622.622 INFO    ] ================================================
[2026-08-31 01:51:53,638.638 INFO    ] Launching Daemon at Mon Aug 31 01:51:53 IST 2026
[2026-08-31 01:51:53,649.649 INFO    ] ================================================
[2026-08-31 01:51:54,220.220 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:51:54
[2026-08-31 01:51:54,807.807 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:51:55,076.076 INFO    ] Initializing speech engine...
[2026-08-31 01:51:55,085.085 INFO    ] 2026-08-31 01:51:55
[2026-08-31 01:51:55,331.331 INFO    ] 2026-08-31 01:51:55
[2026-08-31 01:51:55,400.400 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:51:55,626.626 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:51:55,630.630 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:51:55,861.861 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:51:55,887.887 INFO    ] time= 31/08/2026 01:51:55
[2026-08-31 01:51:55,893.893 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:51:55,910.910 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:51:56,037.037 INFO    ] No existing commands found in stream
[2026-08-31 01:52:01,051.051 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:52:01,053.053 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-08-31 01:52:04,222.222 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 01:52:04,225.225 INFO    ] Checking for system updates...
[2026-08-31 01:52:04,265.265 INFO    ] 200
[2026-08-31 01:52:04,268.268 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:52:04,328.328 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:52:04,330.330 INFO    ] No update needed
[2026-08-31 01:52:04,332.332 INFO    ] Checking for camera pi updates...
[2026-08-31 01:52:04,370.370 INFO    ] 200
[2026-08-31 01:52:04,373.373 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:52:04,418.418 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:52:04,476.476 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:52:04,479.479 INFO    ] No camera update needed
[2026-08-31 01:52:04,481.481 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:52:04,483.483 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:52:04,489.489 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:52:04,494.494 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:52:06,534.534 INFO    ] ================================================
[2026-08-31 01:52:06,550.550 INFO    ] Launching Daemon at Mon Aug 31 01:52:06 IST 2026
[2026-08-31 01:52:06,560.560 INFO    ] ================================================
[2026-08-31 01:52:07,163.163 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:52:07
[2026-08-31 01:52:07,748.748 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:52:08,020.020 INFO    ] Initializing speech engine...
[2026-08-31 01:52:08,029.029 INFO    ] 2026-08-31 01:52:08
[2026-08-31 01:52:08,291.291 INFO    ] 2026-08-31 01:52:08
[2026-08-31 01:52:08,330.330 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:52:08,531.531 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:52:08,545.545 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:52:08,714.714 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:52:08,723.723 INFO    ] time= 31/08/2026 01:52:08
[2026-08-31 01:52:08,730.730 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:52:08,768.768 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:52:08,902.902 INFO    ] No existing commands found in stream
[2026-08-31 01:52:13,927.927 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:52:13,930.930 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-08-31 01:52:18,443.443 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 01:52:18,445.445 INFO    ] Checking for system updates...
[2026-08-31 01:52:18,481.481 INFO    ] 200
[2026-08-31 01:52:18,484.484 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:52:18,536.536 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:52:18,539.539 INFO    ] No update needed
[2026-08-31 01:52:18,541.541 INFO    ] Checking for camera pi updates...
[2026-08-31 01:52:18,574.574 INFO    ] 200
[2026-08-31 01:52:18,577.577 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:52:18,618.618 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:52:18,701.701 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:52:18,704.704 INFO    ] No camera update needed
[2026-08-31 01:52:18,706.706 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:52:18,709.709 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:52:18,714.714 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:52:18,720.720 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:52:20,759.759 INFO    ] ================================================
[2026-08-31 01:52:20,774.774 INFO    ] Launching Daemon at Mon Aug 31 01:52:20 IST 2026
[2026-08-31 01:52:20,785.785 INFO    ] ================================================
[2026-08-31 01:52:21,365.365 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:52:21
[2026-08-31 01:52:21,965.965 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:52:22,242.242 INFO    ] Initializing speech engine...
[2026-08-31 01:52:22,252.252 INFO    ] 2026-08-31 01:52:22
[2026-08-31 01:52:22,511.511 INFO    ] 2026-08-31 01:52:22
[2026-08-31 01:52:22,565.565 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:52:22,822.822 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:52:22,831.831 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:52:23,069.069 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:52:23,077.077 INFO    ] time= 31/08/2026 01:52:23
[2026-08-31 01:52:23,096.096 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:52:23,125.125 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:52:23,262.262 INFO    ] No existing commands found in stream
[2026-08-31 01:52:28,298.298 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:52:28,302.302 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-08-31 01:52:32,924.924 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 01:52:32,927.927 INFO    ] Checking for system updates...
[2026-08-31 01:52:32,964.964 INFO    ] 200
[2026-08-31 01:52:32,967.967 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:52:33,023.023 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:52:33,026.026 INFO    ] No update needed
[2026-08-31 01:52:33,028.028 INFO    ] Checking for camera pi updates...
[2026-08-31 01:52:33,067.067 INFO    ] 200
[2026-08-31 01:52:33,070.070 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:52:33,122.122 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:52:33,204.204 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:52:33,207.207 INFO    ] No camera update needed
[2026-08-31 01:52:33,209.209 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:52:33,212.212 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:52:33,217.217 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:52:33,222.222 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:52:35,263.263 INFO    ] ================================================
[2026-08-31 01:52:35,279.279 INFO    ] Launching Daemon at Mon Aug 31 01:52:35 IST 2026
[2026-08-31 01:52:35,289.289 INFO    ] ================================================
[2026-08-31 01:52:35,891.891 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:52:35
[2026-08-31 01:52:36,498.498 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:52:36,751.751 INFO    ] Initializing speech engine...
[2026-08-31 01:52:36,758.758 INFO    ] 2026-08-31 01:52:36
[2026-08-31 01:52:37,069.069 INFO    ] 2026-08-31 01:52:37
[2026-08-31 01:52:37,113.113 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:52:37,413.413 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:52:37,421.421 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:52:37,590.590 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:52:37,625.625 INFO    ] time= 31/08/2026 01:52:37
[2026-08-31 01:52:37,659.659 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:52:37,718.718 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:52:37,811.811 INFO    ] No existing commands found in stream
[2026-08-31 01:52:42,823.823 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:52:42,825.825 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-08-31 01:52:46,268.268 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 01:52:46,271.271 INFO    ] Checking for system updates...
[2026-08-31 01:52:46,311.311 INFO    ] 200
[2026-08-31 01:52:46,314.314 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:52:46,375.375 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:52:46,377.377 INFO    ] No update needed
[2026-08-31 01:52:46,380.380 INFO    ] Checking for camera pi updates...
[2026-08-31 01:52:46,418.418 INFO    ] 200
[2026-08-31 01:52:46,420.420 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:52:46,461.461 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:52:46,517.517 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:52:46,519.519 INFO    ] No camera update needed
[2026-08-31 01:52:46,522.522 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:52:46,524.524 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:52:46,530.530 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:52:46,535.535 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:52:48,576.576 INFO    ] ================================================
[2026-08-31 01:52:48,591.591 INFO    ] Launching Daemon at Mon Aug 31 01:52:48 IST 2026
[2026-08-31 01:52:48,602.602 INFO    ] ================================================
[2026-08-31 01:52:49,284.284 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:52:49
[2026-08-31 01:52:49,913.913 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:52:50,183.183 INFO    ] Initializing speech engine...
[2026-08-31 01:52:50,191.191 INFO    ] 2026-08-31 01:52:50
[2026-08-31 01:52:50,444.444 INFO    ] 2026-08-31 01:52:50
[2026-08-31 01:52:50,476.476 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:52:50,680.680 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:52:50,739.739 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:52:50,924.924 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:52:50,973.973 INFO    ] time= 31/08/2026 01:52:50
[2026-08-31 01:52:51,013.013 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:52:51,019.019 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:52:51,169.169 INFO    ] No existing commands found in stream
[2026-08-31 01:52:56,188.188 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:52:56,191.191 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-08-31 01:53:00,690.690 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 01:53:00,692.692 INFO    ] Checking for system updates...
[2026-08-31 01:53:00,734.734 INFO    ] 200
[2026-08-31 01:53:00,737.737 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:53:00,792.792 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:53:00,795.795 INFO    ] No update needed
[2026-08-31 01:53:00,798.798 INFO    ] Checking for camera pi updates...
[2026-08-31 01:53:00,838.838 INFO    ] 200
[2026-08-31 01:53:00,841.841 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:53:00,891.891 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:53:00,976.976 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:53:00,979.979 INFO    ] No camera update needed
[2026-08-31 01:53:00,981.981 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:53:00,984.984 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:53:00,989.989 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:53:00,994.994 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:53:03,043.043 INFO    ] ================================================
[2026-08-31 01:53:03,066.066 INFO    ] Launching Daemon at Mon Aug 31 01:53:03 IST 2026
[2026-08-31 01:53:03,085.085 INFO    ] ================================================
[2026-08-31 01:53:03,785.785 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:53:03
[2026-08-31 01:53:04,369.369 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:53:04,615.615 INFO    ] Initializing speech engine...
[2026-08-31 01:53:04,629.629 INFO    ] 2026-08-31 01:53:04
[2026-08-31 01:53:04,896.896 INFO    ] 2026-08-31 01:53:04
[2026-08-31 01:53:04,931.931 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:53:05,132.132 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:53:05,191.191 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:53:05,417.417 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:53:05,462.462 INFO    ] time= 31/08/2026 01:53:05
[2026-08-31 01:53:05,468.468 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:53:05,486.486 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:53:05,615.615 INFO    ] No existing commands found in stream
[2026-08-31 01:53:10,631.631 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:53:10,633.633 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-08-31 01:53:14,845.845 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 01:53:14,847.847 INFO    ] Checking for system updates...
[2026-08-31 01:53:14,884.884 INFO    ] 200
[2026-08-31 01:53:14,886.886 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:53:14,941.941 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:53:14,943.943 INFO    ] No update needed
[2026-08-31 01:53:14,946.946 INFO    ] Checking for camera pi updates...
[2026-08-31 01:53:14,985.985 INFO    ] 200
[2026-08-31 01:53:14,988.988 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:53:15,039.039 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:53:15,129.129 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:53:15,132.132 INFO    ] No camera update needed
[2026-08-31 01:53:15,135.135 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:53:15,137.137 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:53:15,144.144 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:53:15,149.149 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:53:17,190.190 INFO    ] ================================================
[2026-08-31 01:53:17,213.213 INFO    ] Launching Daemon at Mon Aug 31 01:53:17 IST 2026
[2026-08-31 01:53:17,224.224 INFO    ] ================================================
[2026-08-31 01:53:17,807.807 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:53:17
[2026-08-31 01:53:18,406.406 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:53:18,684.684 INFO    ] Initializing speech engine...
[2026-08-31 01:53:18,691.691 INFO    ] 2026-08-31 01:53:18
[2026-08-31 01:53:18,953.953 INFO    ] 2026-08-31 01:53:18
[2026-08-31 01:53:19,006.006 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:53:19,257.257 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:53:19,262.262 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:53:19,492.492 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:53:19,510.510 INFO    ] time= 31/08/2026 01:53:19
[2026-08-31 01:53:19,519.519 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:53:19,545.545 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:53:19,653.653 INFO    ] No existing commands found in stream
[2026-08-31 01:53:24,676.676 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:53:24,679.679 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-08-31 01:53:27,904.904 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 01:53:27,906.906 INFO    ] Checking for system updates...
[2026-08-31 01:53:27,945.945 INFO    ] 200
[2026-08-31 01:53:27,948.948 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:53:28,006.006 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:53:28,009.009 INFO    ] No update needed
[2026-08-31 01:53:28,011.011 INFO    ] Checking for camera pi updates...
[2026-08-31 01:53:28,051.051 INFO    ] 200
[2026-08-31 01:53:28,054.054 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:53:28,099.099 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:53:28,181.181 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:53:28,183.183 INFO    ] No camera update needed
[2026-08-31 01:53:28,186.186 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:53:28,188.188 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:53:28,193.193 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:53:28,198.198 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:53:30,238.238 INFO    ] ================================================
[2026-08-31 01:53:30,254.254 INFO    ] Launching Daemon at Mon Aug 31 01:53:30 IST 2026
[2026-08-31 01:53:30,265.265 INFO    ] ================================================
[2026-08-31 01:53:30,845.845 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:53:30
[2026-08-31 01:53:31,441.441 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:53:31,695.695 INFO    ] Initializing speech engine...
[2026-08-31 01:53:31,717.717 INFO    ] 2026-08-31 01:53:31
[2026-08-31 01:53:31,988.988 INFO    ] 2026-08-31 01:53:31
[2026-08-31 01:53:32,044.044 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:53:32,267.267 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:53:32,319.319 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:53:32,513.513 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:53:32,549.549 INFO    ] time= 31/08/2026 01:53:32
[2026-08-31 01:53:32,631.631 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:53:32,671.671 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:53:32,803.803 INFO    ] No existing commands found in stream
[2026-08-31 01:53:37,821.821 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:53:37,824.824 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-08-31 01:53:40,474.474 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 01:53:40,477.477 INFO    ] Checking for system updates...
[2026-08-31 01:53:40,514.514 INFO    ] 200
[2026-08-31 01:53:40,517.517 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:53:40,577.577 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:53:40,580.580 INFO    ] No update needed
[2026-08-31 01:53:40,583.583 INFO    ] Checking for camera pi updates...
[2026-08-31 01:53:40,621.621 INFO    ] 200
[2026-08-31 01:53:40,623.623 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:53:40,669.669 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:53:40,764.764 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:53:40,767.767 INFO    ] No camera update needed
[2026-08-31 01:53:40,770.770 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:53:40,772.772 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:53:40,779.779 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:53:40,784.784 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:53:42,825.825 INFO    ] ================================================
[2026-08-31 01:53:42,840.840 INFO    ] Launching Daemon at Mon Aug 31 01:53:42 IST 2026
[2026-08-31 01:53:42,852.852 INFO    ] ================================================
[2026-08-31 01:53:43,419.419 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:53:43
[2026-08-31 01:53:44,002.002 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:53:44,261.261 INFO    ] Initializing speech engine...
[2026-08-31 01:53:44,267.267 INFO    ] 2026-08-31 01:53:44
[2026-08-31 01:53:44,560.560 INFO    ] 2026-08-31 01:53:44
[2026-08-31 01:53:44,597.597 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:53:44,890.890 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:53:44,895.895 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:53:45,133.133 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:53:45,153.153 INFO    ] time= 31/08/2026 01:53:45
[2026-08-31 01:53:45,167.167 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:53:45,174.174 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:53:45,324.324 INFO    ] No existing commands found in stream
[2026-08-31 01:53:50,354.354 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:53:50,357.357 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-08-31 01:53:54,115.115 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 01:53:54,118.118 INFO    ] Checking for system updates...
[2026-08-31 01:53:54,154.154 INFO    ] 200
[2026-08-31 01:53:54,157.157 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:53:54,210.210 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:53:54,212.212 INFO    ] No update needed
[2026-08-31 01:53:54,215.215 INFO    ] Checking for camera pi updates...
[2026-08-31 01:53:54,250.250 INFO    ] 200
[2026-08-31 01:53:54,253.253 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:53:54,298.298 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:53:54,372.372 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:53:54,375.375 INFO    ] No camera update needed
[2026-08-31 01:53:54,377.377 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:53:54,379.379 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:53:54,384.384 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:53:54,389.389 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:53:56,431.431 INFO    ] ================================================
[2026-08-31 01:53:56,446.446 INFO    ] Launching Daemon at Mon Aug 31 01:53:56 IST 2026
[2026-08-31 01:53:56,458.458 INFO    ] ================================================
[2026-08-31 01:53:57,106.106 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:53:57
[2026-08-31 01:53:57,771.771 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:53:58,067.067 INFO    ] Initializing speech engine...
[2026-08-31 01:53:58,076.076 INFO    ] 2026-08-31 01:53:58
[2026-08-31 01:53:58,348.348 INFO    ] 2026-08-31 01:53:58
[2026-08-31 01:53:58,408.408 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:53:58,665.665 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:53:58,670.670 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:53:58,905.905 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:53:58,913.913 INFO    ] time= 31/08/2026 01:53:58
[2026-08-31 01:53:58,932.932 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:53:58,961.961 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:53:59,080.080 INFO    ] No existing commands found in stream
[2026-08-31 01:54:04,110.110 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:54:04,115.115 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-08-31 01:54:05,094.094 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 01:54:05,096.096 INFO    ] Checking for system updates...
[2026-08-31 01:54:05,137.137 INFO    ] 200
[2026-08-31 01:54:05,140.140 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:54:05,199.199 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:54:05,201.201 INFO    ] No update needed
[2026-08-31 01:54:05,204.204 INFO    ] Checking for camera pi updates...
[2026-08-31 01:54:05,242.242 INFO    ] 200
[2026-08-31 01:54:05,245.245 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:54:05,290.290 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:54:05,366.366 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:54:05,369.369 INFO    ] No camera update needed
[2026-08-31 01:54:05,372.372 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:54:05,375.375 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:54:05,381.381 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:54:05,386.386 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:54:07,428.428 INFO    ] ================================================
[2026-08-31 01:54:07,444.444 INFO    ] Launching Daemon at Mon Aug 31 01:54:07 IST 2026
[2026-08-31 01:54:07,455.455 INFO    ] ================================================
[2026-08-31 01:54:08,020.020 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:54:08
[2026-08-31 01:54:08,603.603 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:54:08,884.884 INFO    ] Initializing speech engine...
[2026-08-31 01:54:08,894.894 INFO    ] 2026-08-31 01:54:08
[2026-08-31 01:54:09,158.158 INFO    ] 2026-08-31 01:54:09
[2026-08-31 01:54:09,193.193 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:54:09,459.459 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:54:09,488.488 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:54:09,721.721 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:54:09,782.782 INFO    ] time= 31/08/2026 01:54:09
[2026-08-31 01:54:09,788.788 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:54:09,792.792 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:54:09,946.946 INFO    ] No existing commands found in stream
[2026-08-31 01:54:14,958.958 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:54:14,961.961 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-08-31 01:54:18,465.465 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 01:54:18,468.468 INFO    ] Checking for system updates...
[2026-08-31 01:54:18,503.503 INFO    ] 200
[2026-08-31 01:54:18,505.505 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:54:18,564.564 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:54:18,566.566 INFO    ] No update needed
[2026-08-31 01:54:18,569.569 INFO    ] Checking for camera pi updates...
[2026-08-31 01:54:18,602.602 INFO    ] 200
[2026-08-31 01:54:18,604.604 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:54:18,644.644 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:54:18,748.748 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:54:18,750.750 INFO    ] No camera update needed
[2026-08-31 01:54:18,752.752 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:54:18,755.755 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:54:18,760.760 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:54:18,765.765 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:54:20,805.805 INFO    ] ================================================
[2026-08-31 01:54:20,820.820 INFO    ] Launching Daemon at Mon Aug 31 01:54:20 IST 2026
[2026-08-31 01:54:20,831.831 INFO    ] ================================================
[2026-08-31 01:54:21,400.400 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:54:21
[2026-08-31 01:54:21,983.983 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:54:22,250.250 INFO    ] Initializing speech engine...
[2026-08-31 01:54:22,260.260 INFO    ] 2026-08-31 01:54:22
[2026-08-31 01:54:22,505.505 INFO    ] 2026-08-31 01:54:22
[2026-08-31 01:54:22,540.540 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:54:22,795.795 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:54:22,800.800 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:54:23,019.019 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:54:23,059.059 INFO    ] time= 31/08/2026 01:54:23
[2026-08-31 01:54:23,065.065 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:54:23,083.083 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:54:23,214.214 INFO    ] No existing commands found in stream
[2026-08-31 01:54:28,237.237 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:54:28,240.240 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-08-31 01:54:30,035.035 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 01:54:30,038.038 INFO    ] Checking for system updates...
[2026-08-31 01:54:30,077.077 INFO    ] 200
[2026-08-31 01:54:30,079.079 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:54:30,132.132 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:54:30,135.135 INFO    ] No update needed
[2026-08-31 01:54:30,137.137 INFO    ] Checking for camera pi updates...
[2026-08-31 01:54:30,175.175 INFO    ] 200
[2026-08-31 01:54:30,177.177 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:54:30,219.219 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:54:30,340.340 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:54:30,342.342 INFO    ] No camera update needed
[2026-08-31 01:54:30,344.344 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:54:30,347.347 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:54:30,352.352 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:54:30,357.357 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:54:32,399.399 INFO    ] ================================================
[2026-08-31 01:54:32,416.416 INFO    ] Launching Daemon at Mon Aug 31 01:54:32 IST 2026
[2026-08-31 01:54:32,429.429 INFO    ] ================================================
[2026-08-31 01:54:33,028.028 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:54:33
[2026-08-31 01:54:33,625.625 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:54:33,884.884 INFO    ] Initializing speech engine...
[2026-08-31 01:54:33,899.899 INFO    ] 2026-08-31 01:54:33
[2026-08-31 01:54:34,155.155 INFO    ] 2026-08-31 01:54:34
[2026-08-31 01:54:34,190.190 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:54:34,455.455 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:54:34,460.460 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:54:34,708.708 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:54:34,725.725 INFO    ] time= 31/08/2026 01:54:34
[2026-08-31 01:54:34,743.743 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:54:34,766.766 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:54:34,916.916 INFO    ] No existing commands found in stream
[2026-08-31 01:54:39,941.941 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:54:39,944.944 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-08-31 01:54:44,333.333 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 01:54:44,336.336 INFO    ] Checking for system updates...
[2026-08-31 01:54:44,373.373 INFO    ] 200
[2026-08-31 01:54:44,375.375 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:54:44,435.435 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:54:44,438.438 INFO    ] No update needed
[2026-08-31 01:54:44,441.441 INFO    ] Checking for camera pi updates...
[2026-08-31 01:54:44,475.475 INFO    ] 200
[2026-08-31 01:54:44,478.478 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:54:44,520.520 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:54:44,601.601 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:54:44,604.604 INFO    ] No camera update needed
[2026-08-31 01:54:44,607.607 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:54:44,609.609 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:54:44,615.615 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:54:44,629.629 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:54:46,669.669 INFO    ] ================================================
[2026-08-31 01:54:46,685.685 INFO    ] Launching Daemon at Mon Aug 31 01:54:46 IST 2026
[2026-08-31 01:54:46,696.696 INFO    ] ================================================
[2026-08-31 01:54:47,265.265 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:54:47
[2026-08-31 01:54:47,848.848 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:54:48,100.100 INFO    ] Initializing speech engine...
[2026-08-31 01:54:48,109.109 INFO    ] 2026-08-31 01:54:48
[2026-08-31 01:54:48,405.405 INFO    ] 2026-08-31 01:54:48
[2026-08-31 01:54:48,443.443 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:54:48,672.672 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:54:48,728.728 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:54:48,932.932 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:54:48,982.982 INFO    ] time= 31/08/2026 01:54:48
[2026-08-31 01:54:49,041.041 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:54:49,053.053 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:54:49,183.183 INFO    ] No existing commands found in stream
[2026-08-31 01:54:54,202.202 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:54:54,205.205 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-08-31 01:54:56,274.274 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 01:54:56,276.276 INFO    ] Checking for system updates...
[2026-08-31 01:54:56,311.311 INFO    ] 200
[2026-08-31 01:54:56,314.314 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:54:56,366.366 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:54:56,368.368 INFO    ] No update needed
[2026-08-31 01:54:56,371.371 INFO    ] Checking for camera pi updates...
[2026-08-31 01:54:56,404.404 INFO    ] 200
[2026-08-31 01:54:56,406.406 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:54:56,447.447 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:54:56,530.530 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:54:56,532.532 INFO    ] No camera update needed
[2026-08-31 01:54:56,535.535 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:54:56,537.537 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:54:56,542.542 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:54:56,547.547 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:54:58,587.587 INFO    ] ================================================
[2026-08-31 01:54:58,603.603 INFO    ] Launching Daemon at Mon Aug 31 01:54:58 IST 2026
[2026-08-31 01:54:58,614.614 INFO    ] ================================================
[2026-08-31 01:54:59,188.188 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:54:59
[2026-08-31 01:54:59,783.783 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:55:00,059.059 INFO    ] Initializing speech engine...
[2026-08-31 01:55:00,068.068 INFO    ] 2026-08-31 01:55:00
[2026-08-31 01:55:00,322.322 INFO    ] 2026-08-31 01:55:00
[2026-08-31 01:55:00,357.357 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:55:00,612.612 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:55:00,622.622 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:55:00,773.773 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:55:00,776.776 INFO    ] time= 31/08/2026 01:55:00
[2026-08-31 01:55:00,815.815 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:55:00,869.869 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:55:01,037.037 INFO    ] No existing commands found in stream
[2026-08-31 01:55:06,056.056 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:55:06,059.059 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-08-31 01:55:08,274.274 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 01:55:08,277.277 INFO    ] Checking for system updates...
[2026-08-31 01:55:08,313.313 INFO    ] 200
[2026-08-31 01:55:08,315.315 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:55:08,372.372 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:55:08,374.374 INFO    ] No update needed
[2026-08-31 01:55:08,376.376 INFO    ] Checking for camera pi updates...
[2026-08-31 01:55:08,413.413 INFO    ] 200
[2026-08-31 01:55:08,415.415 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:55:08,455.455 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:55:08,635.635 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:55:08,638.638 INFO    ] No camera update needed
[2026-08-31 01:55:08,640.640 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:55:08,642.642 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:55:08,648.648 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:55:08,653.653 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:55:10,693.693 INFO    ] ================================================
[2026-08-31 01:55:10,708.708 INFO    ] Launching Daemon at Mon Aug 31 01:55:10 IST 2026
[2026-08-31 01:55:10,720.720 INFO    ] ================================================
[2026-08-31 01:55:11,309.309 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:55:11
[2026-08-31 01:55:11,911.911 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:55:12,183.183 INFO    ] Initializing speech engine...
[2026-08-31 01:55:12,201.201 INFO    ] 2026-08-31 01:55:12
[2026-08-31 01:55:12,481.481 INFO    ] 2026-08-31 01:55:12
[2026-08-31 01:55:12,519.519 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:55:12,735.735 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:55:12,791.791 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:55:13,048.048 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:55:13,060.060 INFO    ] time= 31/08/2026 01:55:13
[2026-08-31 01:55:13,078.078 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:55:13,106.106 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:55:13,232.232 INFO    ] No existing commands found in stream
[2026-08-31 01:55:18,257.257 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:55:18,260.260 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-08-31 01:55:19,624.624 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 01:55:19,626.626 INFO    ] Checking for system updates...
[2026-08-31 01:55:19,666.666 INFO    ] 200
[2026-08-31 01:55:19,669.669 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:55:19,728.728 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:55:19,731.731 INFO    ] No update needed
[2026-08-31 01:55:19,733.733 INFO    ] Checking for camera pi updates...
[2026-08-31 01:55:19,770.770 INFO    ] 200
[2026-08-31 01:55:19,772.772 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:55:19,813.813 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:55:19,884.884 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:55:19,886.886 INFO    ] No camera update needed
[2026-08-31 01:55:19,889.889 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:55:19,891.891 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:55:19,897.897 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:55:19,902.902 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:55:21,942.942 INFO    ] ================================================
[2026-08-31 01:55:21,958.958 INFO    ] Launching Daemon at Mon Aug 31 01:55:21 IST 2026
[2026-08-31 01:55:21,969.969 INFO    ] ================================================
[2026-08-31 01:55:22,623.623 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:55:22
[2026-08-31 01:55:23,298.298 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:55:23,599.599 INFO    ] Initializing speech engine...
[2026-08-31 01:55:23,606.606 INFO    ] 2026-08-31 01:55:23
[2026-08-31 01:55:23,924.924 INFO    ] 2026-08-31 01:55:23
[2026-08-31 01:55:24,010.010 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:55:24,224.224 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:55:24,231.231 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:55:24,426.426 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:55:24,448.448 INFO    ] time= 31/08/2026 01:55:24
[2026-08-31 01:55:24,474.474 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:55:24,526.526 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:55:24,684.684 INFO    ] No existing commands found in stream
[2026-08-31 01:55:29,709.709 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:55:29,712.712 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-08-31 01:55:31,291.291 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 01:55:31,294.294 INFO    ] Checking for system updates...
[2026-08-31 01:55:31,332.332 INFO    ] 200
[2026-08-31 01:55:31,335.335 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:55:31,396.396 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:55:31,399.399 INFO    ] No update needed
[2026-08-31 01:55:31,402.402 INFO    ] Checking for camera pi updates...
[2026-08-31 01:55:31,437.437 INFO    ] 200
[2026-08-31 01:55:31,440.440 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:55:31,481.481 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:55:31,554.554 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:55:31,556.556 INFO    ] No camera update needed
[2026-08-31 01:55:31,559.559 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:55:31,562.562 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:55:31,568.568 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:55:31,574.574 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:55:33,615.615 INFO    ] ================================================
[2026-08-31 01:55:33,631.631 INFO    ] Launching Daemon at Mon Aug 31 01:55:33 IST 2026
[2026-08-31 01:55:33,642.642 INFO    ] ================================================
[2026-08-31 01:55:34,215.215 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:55:34
[2026-08-31 01:55:34,796.796 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:55:35,050.050 INFO    ] Initializing speech engine...
[2026-08-31 01:55:35,063.063 INFO    ] 2026-08-31 01:55:35
[2026-08-31 01:55:35,327.327 INFO    ] 2026-08-31 01:55:35
[2026-08-31 01:55:35,363.363 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:55:35,621.621 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:55:35,632.632 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:55:35,843.843 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:55:35,892.892 INFO    ] time= 31/08/2026 01:55:35
[2026-08-31 01:55:35,900.900 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:55:35,918.918 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:55:36,052.052 INFO    ] No existing commands found in stream
[2026-08-31 01:55:41,074.074 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:55:41,077.077 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-08-31 01:55:45,287.287 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 01:55:45,290.290 INFO    ] Checking for system updates...
[2026-08-31 01:55:45,326.326 INFO    ] 200
[2026-08-31 01:55:45,328.328 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:55:45,387.387 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:55:45,390.390 INFO    ] No update needed
[2026-08-31 01:55:45,392.392 INFO    ] Checking for camera pi updates...
[2026-08-31 01:55:45,426.426 INFO    ] 200
[2026-08-31 01:55:45,428.428 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:55:45,472.472 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:55:45,565.565 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:55:45,568.568 INFO    ] No camera update needed
[2026-08-31 01:55:45,570.570 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:55:45,572.572 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:55:45,577.577 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:55:45,582.582 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:55:47,622.622 INFO    ] ================================================
[2026-08-31 01:55:47,638.638 INFO    ] Launching Daemon at Mon Aug 31 01:55:47 IST 2026
[2026-08-31 01:55:47,648.648 INFO    ] ================================================
[2026-08-31 01:55:48,229.229 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:55:48
[2026-08-31 01:55:48,826.826 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:55:49,104.104 INFO    ] Initializing speech engine...
[2026-08-31 01:55:49,112.112 INFO    ] 2026-08-31 01:55:49
[2026-08-31 01:55:49,374.374 INFO    ] 2026-08-31 01:55:49
[2026-08-31 01:55:49,426.426 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:55:49,711.711 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:55:49,715.715 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:55:49,911.911 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:55:49,927.927 INFO    ] time= 31/08/2026 01:55:49
[2026-08-31 01:55:49,936.936 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:55:49,961.961 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:55:50,087.087 INFO    ] No existing commands found in stream
[2026-08-31 01:55:55,117.117 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:55:55,120.120 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-08-31 01:55:58,347.347 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 01:55:58,350.350 INFO    ] Checking for system updates...
[2026-08-31 01:55:58,385.385 INFO    ] 200
[2026-08-31 01:55:58,388.388 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:55:58,447.447 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:55:58,450.450 INFO    ] No update needed
[2026-08-31 01:55:58,452.452 INFO    ] Checking for camera pi updates...
[2026-08-31 01:55:58,488.488 INFO    ] 200
[2026-08-31 01:55:58,491.491 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:55:58,535.535 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:55:58,620.620 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:55:58,622.622 INFO    ] No camera update needed
[2026-08-31 01:55:58,625.625 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:55:58,627.627 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:55:58,633.633 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:55:58,638.638 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:56:00,685.685 INFO    ] ================================================
[2026-08-31 01:56:00,701.701 INFO    ] Launching Daemon at Mon Aug 31 01:56:00 IST 2026
[2026-08-31 01:56:00,712.712 INFO    ] ================================================
[2026-08-31 01:56:01,391.391 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:56:01
[2026-08-31 01:56:02,073.073 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:56:02,387.387 INFO    ] Initializing speech engine...
[2026-08-31 01:56:02,411.411 INFO    ] 2026-08-31 01:56:02
[2026-08-31 01:56:02,733.733 INFO    ] 2026-08-31 01:56:02
[2026-08-31 01:56:02,783.783 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:56:03,054.054 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:56:03,062.062 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:56:03,271.271 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:56:03,325.325 INFO    ] time= 31/08/2026 01:56:03
[2026-08-31 01:56:03,335.335 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:56:03,351.351 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:56:03,484.484 INFO    ] No existing commands found in stream
[2026-08-31 01:56:08,498.498 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:56:08,501.501 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-08-31 01:56:09,675.675 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 01:56:09,678.678 INFO    ] Checking for system updates...
[2026-08-31 01:56:09,724.724 INFO    ] 200
[2026-08-31 01:56:09,727.727 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:56:09,779.779 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:56:09,782.782 INFO    ] No update needed
[2026-08-31 01:56:09,784.784 INFO    ] Checking for camera pi updates...
[2026-08-31 01:56:09,818.818 INFO    ] 200
[2026-08-31 01:56:09,820.820 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:56:09,866.866 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:56:09,964.964 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:56:09,966.966 INFO    ] No camera update needed
[2026-08-31 01:56:09,969.969 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:56:09,971.971 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:56:09,976.976 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:56:09,981.981 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:56:12,022.022 INFO    ] ================================================
[2026-08-31 01:56:12,038.038 INFO    ] Launching Daemon at Mon Aug 31 01:56:12 IST 2026
[2026-08-31 01:56:12,050.050 INFO    ] ================================================
[2026-08-31 01:56:12,711.711 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:56:12
[2026-08-31 01:56:13,393.393 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:56:13,703.703 INFO    ] Initializing speech engine...
[2026-08-31 01:56:13,716.716 INFO    ] 2026-08-31 01:56:13
[2026-08-31 01:56:14,004.004 INFO    ] 2026-08-31 01:56:13
[2026-08-31 01:56:14,051.051 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:56:14,344.344 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:56:14,353.353 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:56:14,550.550 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:56:14,567.567 INFO    ] time= 31/08/2026 01:56:14
[2026-08-31 01:56:14,599.599 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:56:14,607.607 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:56:14,752.752 INFO    ] No existing commands found in stream
[2026-08-31 01:56:19,788.788 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:56:19,791.791 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-08-31 01:56:20,770.770 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 01:56:20,773.773 INFO    ] Checking for system updates...
[2026-08-31 01:56:20,815.815 INFO    ] 200
[2026-08-31 01:56:20,818.818 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:56:20,879.879 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:56:20,882.882 INFO    ] No update needed
[2026-08-31 01:56:20,885.885 INFO    ] Checking for camera pi updates...
[2026-08-31 01:56:20,924.924 INFO    ] 200
[2026-08-31 01:56:20,926.926 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:56:20,973.973 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:56:21,073.073 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:56:21,076.076 INFO    ] No camera update needed
[2026-08-31 01:56:21,079.079 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:56:21,082.082 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:56:21,089.089 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:56:21,095.095 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:56:23,138.138 INFO    ] ================================================
[2026-08-31 01:56:23,154.154 INFO    ] Launching Daemon at Mon Aug 31 01:56:23 IST 2026
[2026-08-31 01:56:23,166.166 INFO    ] ================================================
[2026-08-31 01:56:23,834.834 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:56:23
[2026-08-31 01:56:24,460.460 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:56:24,712.712 INFO    ] Initializing speech engine...
[2026-08-31 01:56:24,735.735 INFO    ] 2026-08-31 01:56:24
[2026-08-31 01:56:25,005.005 INFO    ] 2026-08-31 01:56:24
[2026-08-31 01:56:25,041.041 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:56:25,294.294 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:56:25,302.302 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:56:25,517.517 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:56:25,561.561 INFO    ] time= 31/08/2026 01:56:25
[2026-08-31 01:56:25,567.567 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:56:25,585.585 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:56:25,711.711 INFO    ] No existing commands found in stream
[2026-08-31 01:56:30,733.733 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:56:30,736.736 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-08-31 01:56:33,851.851 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 01:56:33,854.854 INFO    ] Checking for system updates...
[2026-08-31 01:56:33,894.894 INFO    ] 200
[2026-08-31 01:56:33,897.897 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:56:33,956.956 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:56:33,959.959 INFO    ] No update needed
[2026-08-31 01:56:33,961.961 INFO    ] Checking for camera pi updates...
[2026-08-31 01:56:33,999.999 INFO    ] 200
[2026-08-31 01:56:34,001.001 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:56:34,042.042 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:56:34,125.125 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:56:34,128.128 INFO    ] No camera update needed
[2026-08-31 01:56:34,131.131 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:56:34,134.134 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:56:34,140.140 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:56:34,146.146 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:56:36,186.186 INFO    ] ================================================
[2026-08-31 01:56:36,203.203 INFO    ] Launching Daemon at Mon Aug 31 01:56:36 IST 2026
[2026-08-31 01:56:36,214.214 INFO    ] ================================================
[2026-08-31 01:56:36,796.796 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:56:36
[2026-08-31 01:56:37,395.395 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:56:37,668.668 INFO    ] Initializing speech engine...
[2026-08-31 01:56:37,676.676 INFO    ] 2026-08-31 01:56:37
[2026-08-31 01:56:37,927.927 INFO    ] 2026-08-31 01:56:37
[2026-08-31 01:56:37,963.963 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:56:38,217.217 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:56:38,226.226 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:56:38,460.460 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:56:38,486.486 INFO    ] time= 31/08/2026 01:56:38
[2026-08-31 01:56:38,504.504 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:56:38,513.513 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:56:38,646.646 INFO    ] No existing commands found in stream
[2026-08-31 01:56:43,671.671 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:56:43,674.674 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-08-31 01:56:48,249.249 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 01:56:48,252.252 INFO    ] Checking for system updates...
[2026-08-31 01:56:48,288.288 INFO    ] 200
[2026-08-31 01:56:48,291.291 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:56:48,343.343 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:56:48,346.346 INFO    ] No update needed
[2026-08-31 01:56:48,348.348 INFO    ] Checking for camera pi updates...
[2026-08-31 01:56:48,381.381 INFO    ] 200
[2026-08-31 01:56:48,384.384 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:56:48,424.424 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:56:48,503.503 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:56:48,506.506 INFO    ] No camera update needed
[2026-08-31 01:56:48,509.509 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:56:48,511.511 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:56:48,516.516 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:56:48,523.523 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:56:50,565.565 INFO    ] ================================================
[2026-08-31 01:56:50,580.580 INFO    ] Launching Daemon at Mon Aug 31 01:56:50 IST 2026
[2026-08-31 01:56:50,591.591 INFO    ] ================================================
[2026-08-31 01:56:51,172.172 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:56:51
[2026-08-31 01:56:51,770.770 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:56:52,046.046 INFO    ] Initializing speech engine...
[2026-08-31 01:56:52,053.053 INFO    ] 2026-08-31 01:56:52
[2026-08-31 01:56:52,313.313 INFO    ] 2026-08-31 01:56:52
[2026-08-31 01:56:52,343.343 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:56:52,593.593 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:56:52,598.598 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:56:52,831.831 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:56:52,856.856 INFO    ] time= 31/08/2026 01:56:52
[2026-08-31 01:56:52,872.872 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:56:52,881.881 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:56:53,010.010 INFO    ] No existing commands found in stream
[2026-08-31 01:56:58,033.033 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:56:58,035.035 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-08-31 01:57:01,319.319 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 01:57:01,323.323 INFO    ] Checking for system updates...
[2026-08-31 01:57:01,387.387 INFO    ] 200
[2026-08-31 01:57:01,391.391 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:57:01,482.482 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:57:01,485.485 INFO    ] No update needed
[2026-08-31 01:57:01,489.489 INFO    ] Checking for camera pi updates...
[2026-08-31 01:57:01,549.549 INFO    ] 200
[2026-08-31 01:57:01,552.552 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:57:01,641.641 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:57:01,695.695 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:57:01,699.699 INFO    ] No camera update needed
[2026-08-31 01:57:01,702.702 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:57:01,705.705 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:57:01,712.712 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:57:01,720.720 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:57:03,766.766 INFO    ] ================================================
[2026-08-31 01:57:03,782.782 INFO    ] Launching Daemon at Mon Aug 31 01:57:03 IST 2026
[2026-08-31 01:57:03,793.793 INFO    ] ================================================
[2026-08-31 01:57:04,363.363 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:57:04
[2026-08-31 01:57:05,051.051 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:57:05,358.358 INFO    ] Initializing speech engine...
[2026-08-31 01:57:05,373.373 INFO    ] 2026-08-31 01:57:05
[2026-08-31 01:57:05,661.661 INFO    ] 2026-08-31 01:57:05
[2026-08-31 01:57:05,771.771 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:57:05,986.986 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:57:05,995.995 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:57:06,225.225 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:57:06,251.251 INFO    ] time= 31/08/2026 01:57:06
[2026-08-31 01:57:06,261.261 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:57:06,269.269 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:57:06,398.398 INFO    ] No existing commands found in stream
[2026-08-31 01:57:11,428.428 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:57:11,431.431 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-08-31 01:57:12,770.770 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 01:57:12,772.772 INFO    ] Checking for system updates...
[2026-08-31 01:57:12,812.812 INFO    ] 200
[2026-08-31 01:57:12,815.815 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:57:12,875.875 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:57:12,877.877 INFO    ] No update needed
[2026-08-31 01:57:12,880.880 INFO    ] Checking for camera pi updates...
[2026-08-31 01:57:12,913.913 INFO    ] 200
[2026-08-31 01:57:12,915.915 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:57:12,955.955 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:57:13,129.129 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:57:13,132.132 INFO    ] No camera update needed
[2026-08-31 01:57:13,134.134 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:57:13,136.136 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:57:13,141.141 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:57:13,146.146 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:57:15,188.188 INFO    ] ================================================
[2026-08-31 01:57:15,204.204 INFO    ] Launching Daemon at Mon Aug 31 01:57:15 IST 2026
[2026-08-31 01:57:15,215.215 INFO    ] ================================================
[2026-08-31 01:57:15,813.813 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:57:15
[2026-08-31 01:57:16,406.406 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:57:16,655.655 INFO    ] Initializing speech engine...
[2026-08-31 01:57:16,663.663 INFO    ] 2026-08-31 01:57:16
[2026-08-31 01:57:16,939.939 INFO    ] 2026-08-31 01:57:16
[2026-08-31 01:57:16,974.974 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:57:17,235.235 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:57:17,244.244 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:57:17,472.472 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:57:17,509.509 INFO    ] time= 31/08/2026 01:57:17
[2026-08-31 01:57:17,515.515 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:57:17,533.533 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:57:17,661.661 INFO    ] No existing commands found in stream
[2026-08-31 01:57:22,678.678 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:57:22,681.681 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-08-31 01:57:24,746.746 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 01:57:24,748.748 INFO    ] Checking for system updates...
[2026-08-31 01:57:24,784.784 INFO    ] 200
[2026-08-31 01:57:24,786.786 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:57:24,838.838 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:57:24,841.841 INFO    ] No update needed
[2026-08-31 01:57:24,843.843 INFO    ] Checking for camera pi updates...
[2026-08-31 01:57:24,877.877 INFO    ] 200
[2026-08-31 01:57:24,879.879 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:57:24,926.926 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:57:25,015.015 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:57:25,018.018 INFO    ] No camera update needed
[2026-08-31 01:57:25,023.023 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:57:25,026.026 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:57:25,032.032 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:57:25,037.037 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:57:27,078.078 INFO    ] ================================================
[2026-08-31 01:57:27,094.094 INFO    ] Launching Daemon at Mon Aug 31 01:57:27 IST 2026
[2026-08-31 01:57:27,105.105 INFO    ] ================================================
[2026-08-31 01:57:27,687.687 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:57:27
[2026-08-31 01:57:28,286.286 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:57:28,562.562 INFO    ] Initializing speech engine...
[2026-08-31 01:57:28,567.567 INFO    ] 2026-08-31 01:57:28
[2026-08-31 01:57:28,816.816 INFO    ] 2026-08-31 01:57:28
[2026-08-31 01:57:28,852.852 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:57:29,104.104 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:57:29,113.113 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:57:29,364.364 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:57:29,374.374 INFO    ] time= 31/08/2026 01:57:29
[2026-08-31 01:57:29,392.392 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:57:29,419.419 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:57:29,542.542 INFO    ] No existing commands found in stream
[2026-08-31 01:57:34,572.572 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:57:34,575.575 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-08-31 01:57:35,730.730 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 01:57:35,733.733 INFO    ] Checking for system updates...
[2026-08-31 01:57:35,774.774 INFO    ] 200
[2026-08-31 01:57:35,778.778 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:57:35,840.840 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:57:35,843.843 INFO    ] No update needed
[2026-08-31 01:57:35,846.846 INFO    ] Checking for camera pi updates...
[2026-08-31 01:57:35,880.880 INFO    ] 200
[2026-08-31 01:57:35,883.883 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:57:35,931.931 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:57:36,035.035 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:57:36,037.037 INFO    ] No camera update needed
[2026-08-31 01:57:36,040.040 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:57:36,042.042 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:57:36,047.047 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:57:36,052.052 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:57:38,093.093 INFO    ] ================================================
[2026-08-31 01:57:38,109.109 INFO    ] Launching Daemon at Mon Aug 31 01:57:38 IST 2026
[2026-08-31 01:57:38,120.120 INFO    ] ================================================
[2026-08-31 01:57:38,703.703 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:57:38
[2026-08-31 01:57:39,304.304 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:57:39,584.584 INFO    ] Initializing speech engine...
[2026-08-31 01:57:39,592.592 INFO    ] 2026-08-31 01:57:39
[2026-08-31 01:57:39,856.856 INFO    ] 2026-08-31 01:57:39
[2026-08-31 01:57:39,909.909 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:57:40,202.202 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:57:40,207.207 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:57:40,408.408 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:57:40,423.423 INFO    ] time= 31/08/2026 01:57:40
[2026-08-31 01:57:40,433.433 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:57:40,460.460 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:57:40,579.579 INFO    ] No existing commands found in stream
[2026-08-31 01:57:45,600.600 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:57:45,602.602 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-08-31 01:57:48,033.033 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 01:57:48,035.035 INFO    ] Checking for system updates...
[2026-08-31 01:57:48,071.071 INFO    ] 200
[2026-08-31 01:57:48,074.074 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:57:48,128.128 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:57:48,130.130 INFO    ] No update needed
[2026-08-31 01:57:48,132.132 INFO    ] Checking for camera pi updates...
[2026-08-31 01:57:48,165.165 INFO    ] 200
[2026-08-31 01:57:48,168.168 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:57:48,216.216 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:57:48,303.303 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:57:48,306.306 INFO    ] No camera update needed
[2026-08-31 01:57:48,308.308 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:57:48,310.310 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:57:48,316.316 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:57:48,321.321 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:57:50,362.362 INFO    ] ================================================
[2026-08-31 01:57:50,378.378 INFO    ] Launching Daemon at Mon Aug 31 01:57:50 IST 2026
[2026-08-31 01:57:50,390.390 INFO    ] ================================================
[2026-08-31 01:57:50,955.955 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:57:50
[2026-08-31 01:57:51,539.539 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:57:51,808.808 INFO    ] Initializing speech engine...
[2026-08-31 01:57:51,818.818 INFO    ] 2026-08-31 01:57:51
[2026-08-31 01:57:52,065.065 INFO    ] 2026-08-31 01:57:52
[2026-08-31 01:57:52,099.099 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:57:52,359.359 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:57:52,368.368 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:57:52,600.600 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:57:52,632.632 INFO    ] time= 31/08/2026 01:57:52
[2026-08-31 01:57:52,638.638 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:57:52,658.658 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:57:52,786.786 INFO    ] No existing commands found in stream
[2026-08-31 01:57:57,802.802 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:57:57,804.804 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-08-31 01:58:01,419.419 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 01:58:01,422.422 INFO    ] Checking for system updates...
[2026-08-31 01:58:01,501.501 INFO    ] 200
[2026-08-31 01:58:01,505.505 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:58:01,583.583 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:58:01,586.586 INFO    ] No update needed
[2026-08-31 01:58:01,590.590 INFO    ] Checking for camera pi updates...
[2026-08-31 01:58:01,633.633 INFO    ] 200
[2026-08-31 01:58:01,636.636 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:58:01,689.689 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:58:01,819.819 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:58:01,821.821 INFO    ] No camera update needed
[2026-08-31 01:58:01,824.824 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:58:01,827.827 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:58:01,834.834 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:58:01,841.841 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:58:03,889.889 INFO    ] ================================================
[2026-08-31 01:58:03,905.905 INFO    ] Launching Daemon at Mon Aug 31 01:58:03 IST 2026
[2026-08-31 01:58:03,916.916 INFO    ] ================================================
[2026-08-31 01:58:04,492.492 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:58:04
[2026-08-31 01:58:05,089.089 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:58:05,370.370 INFO    ] Initializing speech engine...
[2026-08-31 01:58:05,376.376 INFO    ] 2026-08-31 01:58:05
[2026-08-31 01:58:05,638.638 INFO    ] 2026-08-31 01:58:05
[2026-08-31 01:58:05,668.668 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:58:05,944.944 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:58:05,950.950 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:58:06,195.195 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:58:06,201.201 INFO    ] time= 31/08/2026 01:58:06
[2026-08-31 01:58:06,220.220 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:58:06,249.249 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:58:06,379.379 INFO    ] No existing commands found in stream
[2026-08-31 01:58:11,409.409 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:58:11,412.412 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-08-31 01:58:13,597.597 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 01:58:13,600.600 INFO    ] Checking for system updates...
[2026-08-31 01:58:13,635.635 INFO    ] 200
[2026-08-31 01:58:13,638.638 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:58:13,690.690 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:58:13,692.692 INFO    ] No update needed
[2026-08-31 01:58:13,694.694 INFO    ] Checking for camera pi updates...
[2026-08-31 01:58:13,732.732 INFO    ] 200
[2026-08-31 01:58:13,735.735 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:58:13,780.780 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:58:13,865.865 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:58:13,867.867 INFO    ] No camera update needed
[2026-08-31 01:58:13,870.870 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:58:13,872.872 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:58:13,877.877 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:58:13,882.882 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:58:15,922.922 INFO    ] ================================================
[2026-08-31 01:58:15,938.938 INFO    ] Launching Daemon at Mon Aug 31 01:58:15 IST 2026
[2026-08-31 01:58:15,949.949 INFO    ] ================================================
[2026-08-31 01:58:16,529.529 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:58:16
[2026-08-31 01:58:17,128.128 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:58:17,405.405 INFO    ] Initializing speech engine...
[2026-08-31 01:58:17,411.411 INFO    ] 2026-08-31 01:58:17
[2026-08-31 01:58:17,657.657 INFO    ] 2026-08-31 01:58:17
[2026-08-31 01:58:17,693.693 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:58:18,010.010 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:58:18,016.016 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:58:18,206.206 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:58:18,223.223 INFO    ] time= 31/08/2026 01:58:18
[2026-08-31 01:58:18,232.232 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:58:18,258.258 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:58:18,379.379 INFO    ] No existing commands found in stream
[2026-08-31 01:58:23,404.404 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:58:23,406.406 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-08-31 01:58:27,094.094 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 01:58:27,097.097 INFO    ] Checking for system updates...
[2026-08-31 01:58:27,133.133 INFO    ] 200
[2026-08-31 01:58:27,136.136 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:58:27,191.191 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:58:27,194.194 INFO    ] No update needed
[2026-08-31 01:58:27,196.196 INFO    ] Checking for camera pi updates...
[2026-08-31 01:58:27,235.235 INFO    ] 200
[2026-08-31 01:58:27,238.238 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:58:27,285.285 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:58:27,368.368 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:58:27,371.371 INFO    ] No camera update needed
[2026-08-31 01:58:27,373.373 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:58:27,375.375 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:58:27,381.381 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:58:27,386.386 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:58:29,427.427 INFO    ] ================================================
[2026-08-31 01:58:29,443.443 INFO    ] Launching Daemon at Mon Aug 31 01:58:29 IST 2026
[2026-08-31 01:58:29,454.454 INFO    ] ================================================
[2026-08-31 01:58:30,037.037 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:58:30
[2026-08-31 01:58:30,665.665 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:58:30,942.942 INFO    ] Initializing speech engine...
[2026-08-31 01:58:30,952.952 INFO    ] 2026-08-31 01:58:30
[2026-08-31 01:58:31,202.202 INFO    ] 2026-08-31 01:58:31
[2026-08-31 01:58:31,280.280 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:58:31,543.543 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:58:31,562.562 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:58:31,783.783 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:58:31,791.791 INFO    ] time= 31/08/2026 01:58:31
[2026-08-31 01:58:31,809.809 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:58:31,832.832 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:58:31,982.982 INFO    ] No existing commands found in stream
[2026-08-31 01:58:37,013.013 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:58:37,016.016 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-08-31 01:58:38,131.131 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 01:58:38,134.134 INFO    ] Checking for system updates...
[2026-08-31 01:58:38,174.174 INFO    ] 200
[2026-08-31 01:58:38,176.176 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:58:38,228.228 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:58:38,231.231 INFO    ] No update needed
[2026-08-31 01:58:38,233.233 INFO    ] Checking for camera pi updates...
[2026-08-31 01:58:38,266.266 INFO    ] 200
[2026-08-31 01:58:38,269.269 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:58:38,311.311 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:58:38,398.398 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:58:38,401.401 INFO    ] No camera update needed
[2026-08-31 01:58:38,403.403 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:58:38,405.405 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:58:38,411.411 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:58:38,416.416 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:58:40,456.456 INFO    ] ================================================
[2026-08-31 01:58:40,472.472 INFO    ] Launching Daemon at Mon Aug 31 01:58:40 IST 2026
[2026-08-31 01:58:40,483.483 INFO    ] ================================================
[2026-08-31 01:58:41,052.052 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:58:41
[2026-08-31 01:58:41,637.637 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:58:41,905.905 INFO    ] Initializing speech engine...
[2026-08-31 01:58:41,914.914 INFO    ] 2026-08-31 01:58:41
[2026-08-31 01:58:42,161.161 INFO    ] 2026-08-31 01:58:42
[2026-08-31 01:58:42,196.196 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:58:42,446.446 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:58:42,456.456 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:58:42,689.689 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:58:42,712.712 INFO    ] time= 31/08/2026 01:58:42
[2026-08-31 01:58:42,729.729 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:58:42,739.739 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:58:42,865.865 INFO    ] No existing commands found in stream
[2026-08-31 01:58:47,879.879 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:58:47,882.882 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-08-31 01:58:51,892.892 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 01:58:51,895.895 INFO    ] Checking for system updates...
[2026-08-31 01:58:51,934.934 INFO    ] 200
[2026-08-31 01:58:51,936.936 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:58:51,988.988 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:58:51,990.990 INFO    ] No update needed
[2026-08-31 01:58:51,993.993 INFO    ] Checking for camera pi updates...
[2026-08-31 01:58:52,026.026 INFO    ] 200
[2026-08-31 01:58:52,028.028 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:58:52,073.073 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:58:52,148.148 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:58:52,150.150 INFO    ] No camera update needed
[2026-08-31 01:58:52,152.152 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:58:52,155.155 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:58:52,160.160 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:58:52,165.165 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:58:54,206.206 INFO    ] ================================================
[2026-08-31 01:58:54,221.221 INFO    ] Launching Daemon at Mon Aug 31 01:58:54 IST 2026
[2026-08-31 01:58:54,232.232 INFO    ] ================================================
[2026-08-31 01:58:54,798.798 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:58:54
[2026-08-31 01:58:55,383.383 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:58:55,633.633 INFO    ] Initializing speech engine...
[2026-08-31 01:58:55,647.647 INFO    ] 2026-08-31 01:58:55
[2026-08-31 01:58:55,914.914 INFO    ] 2026-08-31 01:58:55
[2026-08-31 01:58:55,949.949 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:58:56,151.151 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:58:56,207.207 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:58:56,355.355 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:58:56,415.415 INFO    ] time= 31/08/2026 01:58:56
[2026-08-31 01:58:56,480.480 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:58:56,493.493 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:58:56,631.631 INFO    ] No existing commands found in stream
[2026-08-31 01:59:01,650.650 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:59:01,653.653 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-08-31 01:59:04,131.131 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 01:59:04,134.134 INFO    ] Checking for system updates...
[2026-08-31 01:59:04,169.169 INFO    ] 200
[2026-08-31 01:59:04,171.171 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:59:04,224.224 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:59:04,227.227 INFO    ] No update needed
[2026-08-31 01:59:04,230.230 INFO    ] Checking for camera pi updates...
[2026-08-31 01:59:04,270.270 INFO    ] 200
[2026-08-31 01:59:04,272.272 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:59:04,317.317 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:59:04,400.400 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:59:04,402.402 INFO    ] No camera update needed
[2026-08-31 01:59:04,405.405 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:59:04,407.407 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:59:04,412.412 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:59:04,417.417 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:59:06,458.458 INFO    ] ================================================
[2026-08-31 01:59:06,473.473 INFO    ] Launching Daemon at Mon Aug 31 01:59:06 IST 2026
[2026-08-31 01:59:06,484.484 INFO    ] ================================================
[2026-08-31 01:59:07,125.125 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:59:07
[2026-08-31 01:59:07,786.786 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:59:08,089.089 INFO    ] Initializing speech engine...
[2026-08-31 01:59:08,103.103 INFO    ] 2026-08-31 01:59:08
[2026-08-31 01:59:08,381.381 INFO    ] 2026-08-31 01:59:08
[2026-08-31 01:59:08,427.427 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:59:08,776.776 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:59:08,828.828 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:59:09,081.081 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:59:09,126.126 INFO    ] time= 31/08/2026 01:59:09
[2026-08-31 01:59:09,164.164 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:59:09,234.234 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:59:09,366.366 INFO    ] No existing commands found in stream
[2026-08-31 01:59:14,377.377 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:59:14,380.380 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-08-31 01:59:16,512.512 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 01:59:16,515.515 INFO    ] Checking for system updates...
[2026-08-31 01:59:16,555.555 INFO    ] 200
[2026-08-31 01:59:16,558.558 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:59:16,621.621 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:59:16,624.624 INFO    ] No update needed
[2026-08-31 01:59:16,626.626 INFO    ] Checking for camera pi updates...
[2026-08-31 01:59:16,660.660 INFO    ] 200
[2026-08-31 01:59:16,663.663 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:59:16,709.709 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:59:16,891.891 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:59:16,894.894 INFO    ] No camera update needed
[2026-08-31 01:59:16,897.897 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:59:16,900.900 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:59:16,906.906 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:59:16,912.912 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:59:18,954.954 INFO    ] ================================================
[2026-08-31 01:59:18,969.969 INFO    ] Launching Daemon at Mon Aug 31 01:59:18 IST 2026
[2026-08-31 01:59:18,980.980 INFO    ] ================================================
[2026-08-31 01:59:19,621.621 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:59:19
[2026-08-31 01:59:20,260.260 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:59:20,507.507 INFO    ] Initializing speech engine...
[2026-08-31 01:59:20,530.530 INFO    ] 2026-08-31 01:59:20
[2026-08-31 01:59:20,781.781 INFO    ] 2026-08-31 01:59:20
[2026-08-31 01:59:20,817.817 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:59:21,069.069 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:59:21,078.078 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:59:21,324.324 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:59:21,339.339 INFO    ] time= 31/08/2026 01:59:21
[2026-08-31 01:59:21,356.356 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:59:21,378.378 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:59:21,501.501 INFO    ] No existing commands found in stream
[2026-08-31 01:59:26,525.525 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:59:26,528.528 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-08-31 01:59:28,351.351 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 01:59:28,354.354 INFO    ] Checking for system updates...
[2026-08-31 01:59:28,389.389 INFO    ] 200
[2026-08-31 01:59:28,392.392 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:59:28,450.450 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:59:28,452.452 INFO    ] No update needed
[2026-08-31 01:59:28,454.454 INFO    ] Checking for camera pi updates...
[2026-08-31 01:59:28,491.491 INFO    ] 200
[2026-08-31 01:59:28,494.494 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:59:28,540.540 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:59:28,611.611 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 01:59:28,613.613 INFO    ] No camera update needed
[2026-08-31 01:59:28,615.615 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:59:28,618.618 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:59:28,623.623 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:59:28,628.628 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:59:30,669.669 INFO    ] ================================================
[2026-08-31 01:59:30,690.690 INFO    ] Launching Daemon at Mon Aug 31 01:59:30 IST 2026
[2026-08-31 01:59:30,700.700 INFO    ] ================================================
[2026-08-31 01:59:31,312.312 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:59:31
[2026-08-31 01:59:31,925.925 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:59:32,213.213 INFO    ] Initializing speech engine...
[2026-08-31 01:59:32,219.219 INFO    ] 2026-08-31 01:59:32
[2026-08-31 01:59:32,482.482 INFO    ] 2026-08-31 01:59:32
[2026-08-31 01:59:32,521.521 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:59:32,780.780 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:59:32,785.785 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:59:32,986.986 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:59:33,042.042 INFO    ] time= 31/08/2026 01:59:32
[2026-08-31 01:59:33,048.048 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:59:33,066.066 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:59:33,195.195 INFO    ] No existing commands found in stream
[2026-08-31 01:59:38,209.209 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:59:38,211.211 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-08-31 01:59:41,254.254 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 01:59:41,257.257 INFO    ] Checking for system updates...
[2026-08-31 01:59:41,294.294 INFO    ] 200
[2026-08-31 01:59:41,297.297 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:59:41,349.349 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:59:41,352.352 INFO    ] No update needed
[2026-08-31 01:59:41,355.355 INFO    ] Checking for camera pi updates...
[2026-08-31 01:59:41,390.390 INFO    ] 200
[2026-08-31 01:59:41,393.393 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:59:41,437.437 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:59:41,513.513 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:59:41,516.516 INFO    ] No camera update needed
[2026-08-31 01:59:41,519.519 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:59:41,521.521 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:59:41,527.527 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:59:41,533.533 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:59:43,575.575 INFO    ] ================================================
[2026-08-31 01:59:43,590.590 INFO    ] Launching Daemon at Mon Aug 31 01:59:43 IST 2026
[2026-08-31 01:59:43,601.601 INFO    ] ================================================
[2026-08-31 01:59:44,167.167 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:59:44
[2026-08-31 01:59:44,750.750 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:59:45,016.016 INFO    ] Initializing speech engine...
[2026-08-31 01:59:45,025.025 INFO    ] 2026-08-31 01:59:45
[2026-08-31 01:59:45,286.286 INFO    ] 2026-08-31 01:59:45
[2026-08-31 01:59:45,337.337 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:59:45,558.558 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:59:45,567.567 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:59:45,793.793 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:59:45,825.825 INFO    ] time= 31/08/2026 01:59:45
[2026-08-31 01:59:45,831.831 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:59:45,852.852 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:59:45,974.974 INFO    ] No existing commands found in stream
[2026-08-31 01:59:50,991.991 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 01:59:50,994.994 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-08-31 01:59:53,998.998 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 01:59:54,001.001 INFO    ] Checking for system updates...
[2026-08-31 01:59:54,040.040 INFO    ] 200
[2026-08-31 01:59:54,042.042 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:59:54,100.100 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:59:54,102.102 INFO    ] No update needed
[2026-08-31 01:59:54,105.105 INFO    ] Checking for camera pi updates...
[2026-08-31 01:59:54,141.141 INFO    ] 200
[2026-08-31 01:59:54,144.144 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 01:59:54,188.188 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 01:59:54,269.269 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 01:59:54,271.271 INFO    ] No camera update needed
[2026-08-31 01:59:54,274.274 INFO    ] Script finished. Safe exiting...
[2026-08-31 01:59:54,276.276 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 01:59:54,282.282 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 01:59:54,286.286 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 01:59:56,327.327 INFO    ] ================================================
[2026-08-31 01:59:56,343.343 INFO    ] Launching Daemon at Mon Aug 31 01:59:56 IST 2026
[2026-08-31 01:59:56,353.353 INFO    ] ================================================
[2026-08-31 01:59:56,919.919 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 01:59:56
[2026-08-31 01:59:57,503.503 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 01:59:57,757.757 INFO    ] Initializing speech engine...
[2026-08-31 01:59:57,772.772 INFO    ] 2026-08-31 01:59:57
[2026-08-31 01:59:58,054.054 INFO    ] 2026-08-31 01:59:58
[2026-08-31 01:59:58,092.092 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 01:59:58,376.376 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 01:59:58,386.386 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 01:59:58,537.537 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 01:59:58,592.592 INFO    ] time= 31/08/2026 01:59:58
[2026-08-31 01:59:58,652.652 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 01:59:58,683.683 INFO    ] Checking for existing commands in stream...
[2026-08-31 01:59:58,836.836 INFO    ] No existing commands found in stream
[2026-08-31 02:00:03,857.857 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:00:03,862.862 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-08-31 02:00:07,595.595 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 02:00:07,598.598 INFO    ] Checking for system updates...
[2026-08-31 02:00:07,638.638 INFO    ] 200
[2026-08-31 02:00:07,640.640 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:00:07,700.700 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:00:07,702.702 INFO    ] No update needed
[2026-08-31 02:00:07,704.704 INFO    ] Checking for camera pi updates...
[2026-08-31 02:00:07,738.738 INFO    ] 200
[2026-08-31 02:00:07,741.741 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:00:07,780.780 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:00:07,862.862 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:00:07,865.865 INFO    ] No camera update needed
[2026-08-31 02:00:07,867.867 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:00:07,870.870 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:00:07,875.875 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:00:07,880.880 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:00:09,920.920 INFO    ] ================================================
[2026-08-31 02:00:09,936.936 INFO    ] Launching Daemon at Mon Aug 31 02:00:09 IST 2026
[2026-08-31 02:00:09,947.947 INFO    ] ================================================
[2026-08-31 02:00:10,550.550 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:00:10
[2026-08-31 02:00:11,172.172 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:00:11,446.446 INFO    ] Initializing speech engine...
[2026-08-31 02:00:11,455.455 INFO    ] 2026-08-31 02:00:11
[2026-08-31 02:00:11,705.705 INFO    ] 2026-08-31 02:00:11
[2026-08-31 02:00:11,771.771 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:00:12,057.057 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:00:12,062.062 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:00:12,257.257 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:00:12,273.273 INFO    ] time= 31/08/2026 02:00:12
[2026-08-31 02:00:12,282.282 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:00:12,309.309 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:00:12,415.415 INFO    ] No existing commands found in stream
[2026-08-31 02:00:17,439.439 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:00:17,442.442 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-08-31 02:00:18,657.657 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 02:00:18,660.660 INFO    ] Checking for system updates...
[2026-08-31 02:00:18,697.697 INFO    ] 200
[2026-08-31 02:00:18,700.700 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:00:18,753.753 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:00:18,756.756 INFO    ] No update needed
[2026-08-31 02:00:18,759.759 INFO    ] Checking for camera pi updates...
[2026-08-31 02:00:18,798.798 INFO    ] 200
[2026-08-31 02:00:18,801.801 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:00:18,848.848 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:00:18,931.931 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:00:18,934.934 INFO    ] No camera update needed
[2026-08-31 02:00:18,936.936 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:00:18,939.939 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:00:18,945.945 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:00:18,951.951 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:00:20,994.994 INFO    ] ================================================
[2026-08-31 02:00:21,010.010 INFO    ] Launching Daemon at Mon Aug 31 02:00:21 IST 2026
[2026-08-31 02:00:21,021.021 INFO    ] ================================================
[2026-08-31 02:00:21,603.603 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:00:21
[2026-08-31 02:00:22,191.191 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:00:22,460.460 INFO    ] Initializing speech engine...
[2026-08-31 02:00:22,469.469 INFO    ] 2026-08-31 02:00:22
[2026-08-31 02:00:22,723.723 INFO    ] 2026-08-31 02:00:22
[2026-08-31 02:00:22,781.781 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:00:23,007.007 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:00:23,013.013 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:00:23,266.266 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:00:23,273.273 INFO    ] time= 31/08/2026 02:00:23
[2026-08-31 02:00:23,291.291 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:00:23,308.308 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:00:23,445.445 INFO    ] No existing commands found in stream
[2026-08-31 02:00:28,475.475 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:00:28,478.478 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-08-31 02:00:32,494.494 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 02:00:32,497.497 INFO    ] Checking for system updates...
[2026-08-31 02:00:32,539.539 INFO    ] 200
[2026-08-31 02:00:32,542.542 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:00:32,598.598 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:00:32,601.601 INFO    ] No update needed
[2026-08-31 02:00:32,604.604 INFO    ] Checking for camera pi updates...
[2026-08-31 02:00:32,644.644 INFO    ] 200
[2026-08-31 02:00:32,647.647 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:00:32,691.691 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:00:32,828.828 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:00:32,831.831 INFO    ] No camera update needed
[2026-08-31 02:00:32,834.834 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:00:32,836.836 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:00:32,842.842 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:00:32,848.848 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:00:34,890.890 INFO    ] ================================================
[2026-08-31 02:00:34,906.906 INFO    ] Launching Daemon at Mon Aug 31 02:00:34 IST 2026
[2026-08-31 02:00:34,916.916 INFO    ] ================================================
[2026-08-31 02:00:35,516.516 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:00:35
[2026-08-31 02:00:36,115.115 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:00:36,396.396 INFO    ] Initializing speech engine...
[2026-08-31 02:00:36,403.403 INFO    ] 2026-08-31 02:00:36
[2026-08-31 02:00:36,660.660 INFO    ] 2026-08-31 02:00:36
[2026-08-31 02:00:36,714.714 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:00:36,938.938 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:00:36,944.944 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:00:37,192.192 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:00:37,202.202 INFO    ] time= 31/08/2026 02:00:37
[2026-08-31 02:00:37,220.220 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:00:37,231.231 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:00:37,369.369 INFO    ] No existing commands found in stream
[2026-08-31 02:00:42,399.399 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:00:42,402.402 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-08-31 02:00:43,253.253 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 02:00:43,255.255 INFO    ] Checking for system updates...
[2026-08-31 02:00:43,291.291 INFO    ] 200
[2026-08-31 02:00:43,293.293 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:00:43,351.351 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:00:43,354.354 INFO    ] No update needed
[2026-08-31 02:00:43,356.356 INFO    ] Checking for camera pi updates...
[2026-08-31 02:00:43,393.393 INFO    ] 200
[2026-08-31 02:00:43,396.396 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:00:43,437.437 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:00:43,525.525 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:00:43,527.527 INFO    ] No camera update needed
[2026-08-31 02:00:43,530.530 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:00:43,532.532 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:00:43,537.537 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:00:43,542.542 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:00:45,583.583 INFO    ] ================================================
[2026-08-31 02:00:45,598.598 INFO    ] Launching Daemon at Mon Aug 31 02:00:45 IST 2026
[2026-08-31 02:00:45,609.609 INFO    ] ================================================
[2026-08-31 02:00:46,256.256 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:00:46
[2026-08-31 02:00:46,839.839 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:00:47,111.111 INFO    ] Initializing speech engine...
[2026-08-31 02:00:47,117.117 INFO    ] 2026-08-31 02:00:47
[2026-08-31 02:00:47,378.378 INFO    ] 2026-08-31 02:00:47
[2026-08-31 02:00:47,433.433 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:00:47,713.713 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:00:47,721.721 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:00:47,918.918 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:00:47,934.934 INFO    ] time= 31/08/2026 02:00:47
[2026-08-31 02:00:47,942.942 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:00:47,968.968 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:00:48,089.089 INFO    ] No existing commands found in stream
[2026-08-31 02:00:53,119.119 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:00:53,122.122 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-08-31 02:00:54,052.052 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 02:00:54,055.055 INFO    ] Checking for system updates...
[2026-08-31 02:00:54,091.091 INFO    ] 200
[2026-08-31 02:00:54,093.093 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:00:54,146.146 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:00:54,149.149 INFO    ] No update needed
[2026-08-31 02:00:54,151.151 INFO    ] Checking for camera pi updates...
[2026-08-31 02:00:54,184.184 INFO    ] 200
[2026-08-31 02:00:54,187.187 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:00:54,227.227 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:00:54,323.323 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:00:54,326.326 INFO    ] No camera update needed
[2026-08-31 02:00:54,329.329 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:00:54,331.331 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:00:54,337.337 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:00:54,342.342 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:00:56,383.383 INFO    ] ================================================
[2026-08-31 02:00:56,398.398 INFO    ] Launching Daemon at Mon Aug 31 02:00:56 IST 2026
[2026-08-31 02:00:56,409.409 INFO    ] ================================================
[2026-08-31 02:00:57,060.060 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:00:57
[2026-08-31 02:00:57,730.730 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:00:58,032.032 INFO    ] Initializing speech engine...
[2026-08-31 02:00:58,039.039 INFO    ] 2026-08-31 02:00:58
[2026-08-31 02:00:58,326.326 INFO    ] 2026-08-31 02:00:58
[2026-08-31 02:00:58,371.371 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:00:58,718.718 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:00:58,761.761 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:00:58,995.995 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:00:59,043.043 INFO    ] time= 31/08/2026 02:00:58
[2026-08-31 02:00:59,103.103 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:00:59,118.118 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:00:59,292.292 INFO    ] No existing commands found in stream
[2026-08-31 02:01:04,307.307 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:01:04,310.310 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-08-31 02:01:08,815.815 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 02:01:08,818.818 INFO    ] Checking for system updates...
[2026-08-31 02:01:08,855.855 INFO    ] 200
[2026-08-31 02:01:08,858.858 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:01:08,919.919 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:01:08,922.922 INFO    ] No update needed
[2026-08-31 02:01:08,925.925 INFO    ] Checking for camera pi updates...
[2026-08-31 02:01:08,960.960 INFO    ] 200
[2026-08-31 02:01:08,963.963 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:01:09,010.010 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:01:09,093.093 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:01:09,096.096 INFO    ] No camera update needed
[2026-08-31 02:01:09,098.098 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:01:09,101.101 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:01:09,106.106 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:01:09,111.111 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:01:11,151.151 INFO    ] ================================================
[2026-08-31 02:01:11,167.167 INFO    ] Launching Daemon at Mon Aug 31 02:01:11 IST 2026
[2026-08-31 02:01:11,180.180 INFO    ] ================================================
[2026-08-31 02:01:11,755.755 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:01:11
[2026-08-31 02:01:12,345.345 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:01:12,609.609 INFO    ] Initializing speech engine...
[2026-08-31 02:01:12,623.623 INFO    ] 2026-08-31 02:01:12
[2026-08-31 02:01:12,909.909 INFO    ] 2026-08-31 02:01:12
[2026-08-31 02:01:12,944.944 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:01:13,157.157 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:01:13,175.175 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:01:13,403.403 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:01:13,410.410 INFO    ] time= 31/08/2026 02:01:13
[2026-08-31 02:01:13,444.444 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:01:13,493.493 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:01:13,586.586 INFO    ] No existing commands found in stream
[2026-08-31 02:01:18,597.597 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:01:18,600.600 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-08-31 02:01:21,957.957 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 02:01:21,959.959 INFO    ] Checking for system updates...
[2026-08-31 02:01:21,996.996 INFO    ] 200
[2026-08-31 02:01:22,000.000 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:01:22,055.055 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:01:22,058.058 INFO    ] No update needed
[2026-08-31 02:01:22,061.061 INFO    ] Checking for camera pi updates...
[2026-08-31 02:01:22,096.096 INFO    ] 200
[2026-08-31 02:01:22,099.099 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:01:22,141.141 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:01:22,323.323 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:01:22,326.326 INFO    ] No camera update needed
[2026-08-31 02:01:22,329.329 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:01:22,332.332 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:01:22,339.339 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:01:22,344.344 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:01:24,389.389 INFO    ] ================================================
[2026-08-31 02:01:24,404.404 INFO    ] Launching Daemon at Mon Aug 31 02:01:24 IST 2026
[2026-08-31 02:01:24,416.416 INFO    ] ================================================
[2026-08-31 02:01:24,980.980 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:01:24
[2026-08-31 02:01:25,563.563 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:01:25,838.838 INFO    ] Initializing speech engine...
[2026-08-31 02:01:25,846.846 INFO    ] 2026-08-31 02:01:25
[2026-08-31 02:01:26,102.102 INFO    ] 2026-08-31 02:01:26
[2026-08-31 02:01:26,153.153 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:01:26,381.381 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:01:26,387.387 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:01:26,616.616 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:01:26,646.646 INFO    ] time= 31/08/2026 02:01:26
[2026-08-31 02:01:26,652.652 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:01:26,669.669 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:01:26,790.790 INFO    ] No existing commands found in stream
[2026-08-31 02:01:31,810.810 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:01:31,813.813 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-08-31 02:01:34,960.960 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 02:01:34,963.963 INFO    ] Checking for system updates...
[2026-08-31 02:01:35,005.005 INFO    ] 200
[2026-08-31 02:01:35,008.008 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:01:35,070.070 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:01:35,073.073 INFO    ] No update needed
[2026-08-31 02:01:35,076.076 INFO    ] Checking for camera pi updates...
[2026-08-31 02:01:35,120.120 INFO    ] 200
[2026-08-31 02:01:35,123.123 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:01:35,170.170 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:01:35,250.250 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:01:35,252.252 INFO    ] No camera update needed
[2026-08-31 02:01:35,255.255 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:01:35,257.257 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:01:35,262.262 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:01:35,268.268 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:01:37,310.310 INFO    ] ================================================
[2026-08-31 02:01:37,326.326 INFO    ] Launching Daemon at Mon Aug 31 02:01:37 IST 2026
[2026-08-31 02:01:37,336.336 INFO    ] ================================================
[2026-08-31 02:01:37,901.901 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:01:37
[2026-08-31 02:01:38,485.485 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:01:38,740.740 INFO    ] Initializing speech engine...
[2026-08-31 02:01:38,746.746 INFO    ] 2026-08-31 02:01:38
[2026-08-31 02:01:39,047.047 INFO    ] 2026-08-31 02:01:39
[2026-08-31 02:01:39,074.074 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:01:39,316.316 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:01:39,377.377 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:01:39,546.546 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:01:39,596.596 INFO    ] time= 31/08/2026 02:01:39
[2026-08-31 02:01:39,650.650 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:01:39,696.696 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:01:39,834.834 INFO    ] No existing commands found in stream
[2026-08-31 02:01:44,860.860 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:01:44,862.862 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-08-31 02:01:47,452.452 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 02:01:47,454.454 INFO    ] Checking for system updates...
[2026-08-31 02:01:47,496.496 INFO    ] 200
[2026-08-31 02:01:47,499.499 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:01:47,553.553 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:01:47,556.556 INFO    ] No update needed
[2026-08-31 02:01:47,559.559 INFO    ] Checking for camera pi updates...
[2026-08-31 02:01:47,594.594 INFO    ] 200
[2026-08-31 02:01:47,598.598 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:01:47,639.639 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:01:47,720.720 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:01:47,723.723 INFO    ] No camera update needed
[2026-08-31 02:01:47,726.726 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:01:47,728.728 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:01:47,735.735 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:01:47,741.741 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:01:49,785.785 INFO    ] ================================================
[2026-08-31 02:01:49,801.801 INFO    ] Launching Daemon at Mon Aug 31 02:01:49 IST 2026
[2026-08-31 02:01:49,811.811 INFO    ] ================================================
[2026-08-31 02:01:50,392.392 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:01:50
[2026-08-31 02:01:50,995.995 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:01:51,273.273 INFO    ] Initializing speech engine...
[2026-08-31 02:01:51,282.282 INFO    ] 2026-08-31 02:01:51
[2026-08-31 02:01:51,539.539 INFO    ] 2026-08-31 02:01:51
[2026-08-31 02:01:51,594.594 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:01:51,936.936 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:01:51,950.950 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:01:52,150.150 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:01:52,207.207 INFO    ] time= 31/08/2026 02:01:52
[2026-08-31 02:01:52,247.247 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:01:52,306.306 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:01:52,471.471 INFO    ] No existing commands found in stream
[2026-08-31 02:01:57,492.492 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:01:57,494.494 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-08-31 02:02:01,053.053 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 02:02:01,055.055 INFO    ] Checking for system updates...
[2026-08-31 02:02:01,125.125 INFO    ] 200
[2026-08-31 02:02:01,130.130 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:02:01,277.277 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:02:01,280.280 INFO    ] No update needed
[2026-08-31 02:02:01,283.283 INFO    ] Checking for camera pi updates...
[2026-08-31 02:02:01,364.364 INFO    ] 200
[2026-08-31 02:02:01,367.367 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:02:01,439.439 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:02:01,526.526 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:02:01,530.530 INFO    ] No camera update needed
[2026-08-31 02:02:01,534.534 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:02:01,540.540 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:02:01,551.551 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:02:01,560.560 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:02:03,603.603 INFO    ] ================================================
[2026-08-31 02:02:03,617.617 INFO    ] Launching Daemon at Mon Aug 31 02:02:03 IST 2026
[2026-08-31 02:02:03,628.628 INFO    ] ================================================
[2026-08-31 02:02:04,206.206 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:02:04
[2026-08-31 02:02:04,793.793 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:02:05,061.061 INFO    ] Initializing speech engine...
[2026-08-31 02:02:05,071.071 INFO    ] 2026-08-31 02:02:05
[2026-08-31 02:02:05,318.318 INFO    ] 2026-08-31 02:02:05
[2026-08-31 02:02:05,353.353 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:02:05,630.630 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:02:05,638.638 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:02:05,868.868 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:02:05,874.874 INFO    ] time= 31/08/2026 02:02:05
[2026-08-31 02:02:05,892.892 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:02:05,914.914 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:02:06,021.021 INFO    ] No existing commands found in stream
[2026-08-31 02:02:11,031.031 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:02:11,033.033 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-08-31 02:02:12,294.294 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 02:02:12,297.297 INFO    ] Checking for system updates...
[2026-08-31 02:02:12,334.334 INFO    ] 200
[2026-08-31 02:02:12,337.337 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:02:12,394.394 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:02:12,397.397 INFO    ] No update needed
[2026-08-31 02:02:12,399.399 INFO    ] Checking for camera pi updates...
[2026-08-31 02:02:12,432.432 INFO    ] 200
[2026-08-31 02:02:12,435.435 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:02:12,475.475 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:02:12,571.571 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:02:12,573.573 INFO    ] No camera update needed
[2026-08-31 02:02:12,576.576 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:02:12,578.578 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:02:12,583.583 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:02:12,588.588 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:02:14,629.629 INFO    ] ================================================
[2026-08-31 02:02:14,644.644 INFO    ] Launching Daemon at Mon Aug 31 02:02:14 IST 2026
[2026-08-31 02:02:14,655.655 INFO    ] ================================================
[2026-08-31 02:02:15,239.239 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:02:15
[2026-08-31 02:02:15,838.838 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:02:16,114.114 INFO    ] Initializing speech engine...
[2026-08-31 02:02:16,121.121 INFO    ] 2026-08-31 02:02:16
[2026-08-31 02:02:16,376.376 INFO    ] 2026-08-31 02:02:16
[2026-08-31 02:02:16,436.436 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:02:16,663.663 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:02:16,667.667 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:02:16,886.886 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:02:16,925.925 INFO    ] time= 31/08/2026 02:02:16
[2026-08-31 02:02:16,944.944 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:02:16,955.955 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:02:17,112.112 INFO    ] No existing commands found in stream
[2026-08-31 02:02:22,148.148 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:02:22,151.151 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-08-31 02:02:26,560.560 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 02:02:26,562.562 INFO    ] Checking for system updates...
[2026-08-31 02:02:26,599.599 INFO    ] 200
[2026-08-31 02:02:26,602.602 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:02:26,654.654 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:02:26,657.657 INFO    ] No update needed
[2026-08-31 02:02:26,660.660 INFO    ] Checking for camera pi updates...
[2026-08-31 02:02:26,694.694 INFO    ] 200
[2026-08-31 02:02:26,696.696 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:02:26,761.761 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:02:26,841.841 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:02:26,843.843 INFO    ] No camera update needed
[2026-08-31 02:02:26,845.845 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:02:26,848.848 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:02:26,853.853 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:02:26,858.858 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:02:28,898.898 INFO    ] ================================================
[2026-08-31 02:02:28,912.912 INFO    ] Launching Daemon at Mon Aug 31 02:02:28 IST 2026
[2026-08-31 02:02:28,923.923 INFO    ] ================================================
[2026-08-31 02:02:29,489.489 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:02:29
[2026-08-31 02:02:30,073.073 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:02:30,342.342 INFO    ] Initializing speech engine...
[2026-08-31 02:02:30,350.350 INFO    ] 2026-08-31 02:02:30
[2026-08-31 02:02:30,600.600 INFO    ] 2026-08-31 02:02:30
[2026-08-31 02:02:30,634.634 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:02:30,890.890 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:02:30,894.894 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:02:31,110.110 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:02:31,152.152 INFO    ] time= 31/08/2026 02:02:31
[2026-08-31 02:02:31,159.159 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:02:31,181.181 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:02:31,352.352 INFO    ] No existing commands found in stream
[2026-08-31 02:02:36,377.377 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:02:36,380.380 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-08-31 02:02:38,436.436 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 02:02:38,438.438 INFO    ] Checking for system updates...
[2026-08-31 02:02:38,477.477 INFO    ] 200
[2026-08-31 02:02:38,480.480 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:02:38,533.533 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:02:38,535.535 INFO    ] No update needed
[2026-08-31 02:02:38,538.538 INFO    ] Checking for camera pi updates...
[2026-08-31 02:02:38,571.571 INFO    ] 200
[2026-08-31 02:02:38,573.573 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:02:38,615.615 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:02:38,740.740 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:02:38,742.742 INFO    ] No camera update needed
[2026-08-31 02:02:38,744.744 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:02:38,747.747 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:02:38,752.752 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:02:38,757.757 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:02:40,798.798 INFO    ] ================================================
[2026-08-31 02:02:40,812.812 INFO    ] Launching Daemon at Mon Aug 31 02:02:40 IST 2026
[2026-08-31 02:02:40,823.823 INFO    ] ================================================
[2026-08-31 02:02:41,386.386 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:02:41
[2026-08-31 02:02:41,968.968 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:02:42,237.237 INFO    ] Initializing speech engine...
[2026-08-31 02:02:42,246.246 INFO    ] 2026-08-31 02:02:42
[2026-08-31 02:02:42,491.491 INFO    ] 2026-08-31 02:02:42
[2026-08-31 02:02:42,525.525 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:02:42,782.782 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:02:42,787.787 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:02:43,035.035 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:02:43,045.045 INFO    ] time= 31/08/2026 02:02:43
[2026-08-31 02:02:43,063.063 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:02:43,086.086 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:02:43,268.268 INFO    ] No existing commands found in stream
[2026-08-31 02:02:48,299.299 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:02:48,302.302 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-08-31 02:02:51,693.693 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 02:02:51,696.696 INFO    ] Checking for system updates...
[2026-08-31 02:02:51,731.731 INFO    ] 200
[2026-08-31 02:02:51,733.733 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:02:51,791.791 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:02:51,793.793 INFO    ] No update needed
[2026-08-31 02:02:51,796.796 INFO    ] Checking for camera pi updates...
[2026-08-31 02:02:51,832.832 INFO    ] 200
[2026-08-31 02:02:51,835.835 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:02:51,878.878 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:02:51,961.961 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:02:51,964.964 INFO    ] No camera update needed
[2026-08-31 02:02:52,019.019 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:02:52,022.022 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:02:52,028.028 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:02:52,034.034 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:02:54,075.075 INFO    ] ================================================
[2026-08-31 02:02:54,090.090 INFO    ] Launching Daemon at Mon Aug 31 02:02:54 IST 2026
[2026-08-31 02:02:54,101.101 INFO    ] ================================================
[2026-08-31 02:02:54,664.664 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:02:54
[2026-08-31 02:02:55,245.245 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:02:55,511.511 INFO    ] Initializing speech engine...
[2026-08-31 02:02:55,524.524 INFO    ] 2026-08-31 02:02:55
[2026-08-31 02:02:55,773.773 INFO    ] 2026-08-31 02:02:55
[2026-08-31 02:02:55,808.808 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:02:56,066.066 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:02:56,075.075 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:02:56,297.297 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:02:56,339.339 INFO    ] time= 31/08/2026 02:02:56
[2026-08-31 02:02:56,345.345 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:02:56,363.363 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:02:56,496.496 INFO    ] No existing commands found in stream
[2026-08-31 02:03:01,509.509 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:03:01,512.512 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-08-31 02:03:05,017.017 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 02:03:05,020.020 INFO    ] Checking for system updates...
[2026-08-31 02:03:05,063.063 INFO    ] 200
[2026-08-31 02:03:05,065.065 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:03:05,119.119 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:03:05,122.122 INFO    ] No update needed
[2026-08-31 02:03:05,124.124 INFO    ] Checking for camera pi updates...
[2026-08-31 02:03:05,158.158 INFO    ] 200
[2026-08-31 02:03:05,161.161 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:03:05,204.204 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:03:05,290.290 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:03:05,293.293 INFO    ] No camera update needed
[2026-08-31 02:03:05,296.296 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:03:05,298.298 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:03:05,304.304 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:03:05,310.310 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:03:07,351.351 INFO    ] ================================================
[2026-08-31 02:03:07,366.366 INFO    ] Launching Daemon at Mon Aug 31 02:03:07 IST 2026
[2026-08-31 02:03:07,377.377 INFO    ] ================================================
[2026-08-31 02:03:07,959.959 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:03:07
[2026-08-31 02:03:08,556.556 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:03:08,810.810 INFO    ] Initializing speech engine...
[2026-08-31 02:03:08,835.835 INFO    ] 2026-08-31 02:03:08
[2026-08-31 02:03:09,088.088 INFO    ] 2026-08-31 02:03:09
[2026-08-31 02:03:09,123.123 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:03:09,502.502 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:03:09,529.529 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:03:09,695.695 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:03:09,708.708 INFO    ] time= 31/08/2026 02:03:09
[2026-08-31 02:03:09,759.759 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:03:09,796.796 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:03:09,917.917 INFO    ] No existing commands found in stream
[2026-08-31 02:03:14,949.949 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:03:14,951.951 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-08-31 02:03:19,456.456 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 02:03:19,459.459 INFO    ] Checking for system updates...
[2026-08-31 02:03:19,521.521 INFO    ] 200
[2026-08-31 02:03:19,524.524 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:03:19,584.584 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:03:19,587.587 INFO    ] No update needed
[2026-08-31 02:03:19,590.590 INFO    ] Checking for camera pi updates...
[2026-08-31 02:03:19,623.623 INFO    ] 200
[2026-08-31 02:03:19,625.625 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:03:19,665.665 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:03:19,750.750 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:03:19,753.753 INFO    ] No camera update needed
[2026-08-31 02:03:19,755.755 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:03:19,757.757 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:03:19,762.762 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:03:19,767.767 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:03:21,807.807 INFO    ] ================================================
[2026-08-31 02:03:21,822.822 INFO    ] Launching Daemon at Mon Aug 31 02:03:21 IST 2026
[2026-08-31 02:03:21,833.833 INFO    ] ================================================
[2026-08-31 02:03:22,401.401 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:03:22
[2026-08-31 02:03:22,983.983 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:03:23,233.233 INFO    ] Initializing speech engine...
[2026-08-31 02:03:23,238.238 INFO    ] 2026-08-31 02:03:23
[2026-08-31 02:03:23,533.533 INFO    ] 2026-08-31 02:03:23
[2026-08-31 02:03:23,569.569 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:03:23,811.811 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:03:23,838.838 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:03:24,048.048 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:03:24,104.104 INFO    ] time= 31/08/2026 02:03:24
[2026-08-31 02:03:24,111.111 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:03:24,128.128 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:03:24,264.264 INFO    ] No existing commands found in stream
[2026-08-31 02:03:29,283.283 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:03:29,286.286 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-08-31 02:03:33,554.554 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 02:03:33,557.557 INFO    ] Checking for system updates...
[2026-08-31 02:03:33,595.595 INFO    ] 200
[2026-08-31 02:03:33,598.598 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:03:33,650.650 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:03:33,652.652 INFO    ] No update needed
[2026-08-31 02:03:33,654.654 INFO    ] Checking for camera pi updates...
[2026-08-31 02:03:33,694.694 INFO    ] 200
[2026-08-31 02:03:33,696.696 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:03:33,741.741 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:03:33,807.807 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:03:33,810.810 INFO    ] No camera update needed
[2026-08-31 02:03:33,812.812 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:03:33,814.814 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:03:33,820.820 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:03:33,825.825 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:03:35,864.864 INFO    ] ================================================
[2026-08-31 02:03:35,879.879 INFO    ] Launching Daemon at Mon Aug 31 02:03:35 IST 2026
[2026-08-31 02:03:35,889.889 INFO    ] ================================================
[2026-08-31 02:03:36,466.466 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:03:36
[2026-08-31 02:03:37,050.050 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:03:37,305.305 INFO    ] Initializing speech engine...
[2026-08-31 02:03:37,308.308 INFO    ] 2026-08-31 02:03:37
[2026-08-31 02:03:37,600.600 INFO    ] 2026-08-31 02:03:37
[2026-08-31 02:03:37,637.637 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:03:37,919.919 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:03:37,930.930 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:03:38,159.159 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:03:38,220.220 INFO    ] time= 31/08/2026 02:03:38
[2026-08-31 02:03:38,227.227 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:03:38,244.244 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:03:38,389.389 INFO    ] No existing commands found in stream
[2026-08-31 02:03:43,404.404 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:03:43,407.407 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-08-31 02:03:47,581.581 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 02:03:47,584.584 INFO    ] Checking for system updates...
[2026-08-31 02:03:47,620.620 INFO    ] 200
[2026-08-31 02:03:47,622.622 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:03:47,673.673 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:03:47,676.676 INFO    ] No update needed
[2026-08-31 02:03:47,679.679 INFO    ] Checking for camera pi updates...
[2026-08-31 02:03:47,712.712 INFO    ] 200
[2026-08-31 02:03:47,714.714 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:03:47,754.754 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:03:47,839.839 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:03:47,841.841 INFO    ] No camera update needed
[2026-08-31 02:03:47,844.844 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:03:47,846.846 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:03:47,851.851 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:03:47,856.856 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:03:49,897.897 INFO    ] ================================================
[2026-08-31 02:03:49,912.912 INFO    ] Launching Daemon at Mon Aug 31 02:03:49 IST 2026
[2026-08-31 02:03:49,922.922 INFO    ] ================================================
[2026-08-31 02:03:50,530.530 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:03:50
[2026-08-31 02:03:51,130.130 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:03:51,406.406 INFO    ] Initializing speech engine...
[2026-08-31 02:03:51,416.416 INFO    ] 2026-08-31 02:03:51
[2026-08-31 02:03:51,663.663 INFO    ] 2026-08-31 02:03:51
[2026-08-31 02:03:51,699.699 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:03:51,950.950 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:03:51,959.959 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:03:52,190.190 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:03:52,221.221 INFO    ] time= 31/08/2026 02:03:52
[2026-08-31 02:03:52,227.227 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:03:52,244.244 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:03:52,380.380 INFO    ] No existing commands found in stream
[2026-08-31 02:03:57,407.407 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:03:57,410.410 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-08-31 02:04:00,994.994 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 02:04:00,997.997 INFO    ] Checking for system updates...
[2026-08-31 02:04:01,036.036 INFO    ] 200
[2026-08-31 02:04:01,040.040 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:04:01,094.094 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:04:01,096.096 INFO    ] No update needed
[2026-08-31 02:04:01,099.099 INFO    ] Checking for camera pi updates...
[2026-08-31 02:04:01,136.136 INFO    ] 200
[2026-08-31 02:04:01,138.138 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:04:01,179.179 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:04:01,260.260 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:04:01,262.262 INFO    ] No camera update needed
[2026-08-31 02:04:01,264.264 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:04:01,267.267 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:04:01,272.272 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:04:01,278.278 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:04:03,332.332 INFO    ] ================================================
[2026-08-31 02:04:03,356.356 INFO    ] Launching Daemon at Mon Aug 31 02:04:03 IST 2026
[2026-08-31 02:04:03,377.377 INFO    ] ================================================
[2026-08-31 02:04:03,981.981 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:04:03
[2026-08-31 02:04:04,583.583 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:04:04,862.862 INFO    ] Initializing speech engine...
[2026-08-31 02:04:04,867.867 INFO    ] 2026-08-31 02:04:04
[2026-08-31 02:04:05,114.114 INFO    ] 2026-08-31 02:04:05
[2026-08-31 02:04:05,150.150 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:04:05,407.407 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:04:05,411.411 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:04:05,639.639 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:04:05,670.670 INFO    ] time= 31/08/2026 02:04:05
[2026-08-31 02:04:05,676.676 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:04:05,694.694 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:04:05,821.821 INFO    ] No existing commands found in stream
[2026-08-31 02:04:10,836.836 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:04:10,839.839 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-08-31 02:04:11,738.738 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 02:04:11,742.742 INFO    ] Checking for system updates...
[2026-08-31 02:04:11,785.785 INFO    ] 200
[2026-08-31 02:04:11,793.793 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:04:11,870.870 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:04:11,875.875 INFO    ] No update needed
[2026-08-31 02:04:11,880.880 INFO    ] Checking for camera pi updates...
[2026-08-31 02:04:11,930.930 INFO    ] 200
[2026-08-31 02:04:11,934.934 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:04:11,998.998 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:04:12,075.075 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:04:12,078.078 INFO    ] No camera update needed
[2026-08-31 02:04:12,081.081 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:04:12,085.085 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:04:12,092.092 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:04:12,099.099 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:04:14,139.139 INFO    ] ================================================
[2026-08-31 02:04:14,154.154 INFO    ] Launching Daemon at Mon Aug 31 02:04:14 IST 2026
[2026-08-31 02:04:14,165.165 INFO    ] ================================================
[2026-08-31 02:04:14,733.733 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:04:14
[2026-08-31 02:04:15,332.332 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:04:15,596.596 INFO    ] Initializing speech engine...
[2026-08-31 02:04:15,609.609 INFO    ] 2026-08-31 02:04:15
[2026-08-31 02:04:15,857.857 INFO    ] 2026-08-31 02:04:15
[2026-08-31 02:04:15,922.922 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:04:16,148.148 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:04:16,155.155 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:04:16,392.392 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:04:16,409.409 INFO    ] time= 31/08/2026 02:04:16
[2026-08-31 02:04:16,415.415 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:04:16,435.435 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:04:16,563.563 INFO    ] No existing commands found in stream
[2026-08-31 02:04:21,576.576 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:04:21,579.579 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-08-31 02:04:25,919.919 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 02:04:25,921.921 INFO    ] Checking for system updates...
[2026-08-31 02:04:25,956.956 INFO    ] 200
[2026-08-31 02:04:25,959.959 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:04:26,012.012 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:04:26,014.014 INFO    ] No update needed
[2026-08-31 02:04:26,017.017 INFO    ] Checking for camera pi updates...
[2026-08-31 02:04:26,056.056 INFO    ] 200
[2026-08-31 02:04:26,058.058 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:04:26,099.099 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:04:26,181.181 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:04:26,184.184 INFO    ] No camera update needed
[2026-08-31 02:04:26,186.186 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:04:26,188.188 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:04:26,194.194 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:04:26,198.198 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:04:28,239.239 INFO    ] ================================================
[2026-08-31 02:04:28,254.254 INFO    ] Launching Daemon at Mon Aug 31 02:04:28 IST 2026
[2026-08-31 02:04:28,266.266 INFO    ] ================================================
[2026-08-31 02:04:28,835.835 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:04:28
[2026-08-31 02:04:29,423.423 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:04:29,681.681 INFO    ] Initializing speech engine...
[2026-08-31 02:04:29,697.697 INFO    ] 2026-08-31 02:04:29
[2026-08-31 02:04:29,980.980 INFO    ] 2026-08-31 02:04:29
[2026-08-31 02:04:30,019.019 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:04:30,223.223 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:04:30,243.243 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:04:30,443.443 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:04:30,492.492 INFO    ] time= 31/08/2026 02:04:30
[2026-08-31 02:04:30,541.541 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:04:30,580.580 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:04:30,729.729 INFO    ] No existing commands found in stream
[2026-08-31 02:04:35,743.743 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:04:35,746.746 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-08-31 02:04:39,854.854 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 02:04:39,856.856 INFO    ] Checking for system updates...
[2026-08-31 02:04:39,891.891 INFO    ] 200
[2026-08-31 02:04:39,894.894 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:04:39,952.952 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:04:39,954.954 INFO    ] No update needed
[2026-08-31 02:04:39,957.957 INFO    ] Checking for camera pi updates...
[2026-08-31 02:04:39,991.991 INFO    ] 200
[2026-08-31 02:04:39,993.993 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:04:40,037.037 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:04:40,087.087 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:04:40,090.090 INFO    ] No camera update needed
[2026-08-31 02:04:40,092.092 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:04:40,094.094 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:04:40,100.100 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:04:40,105.105 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:04:42,147.147 INFO    ] ================================================
[2026-08-31 02:04:42,162.162 INFO    ] Launching Daemon at Mon Aug 31 02:04:42 IST 2026
[2026-08-31 02:04:42,174.174 INFO    ] ================================================
[2026-08-31 02:04:42,742.742 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:04:42
[2026-08-31 02:04:43,327.327 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:04:43,589.589 INFO    ] Initializing speech engine...
[2026-08-31 02:04:43,608.608 INFO    ] 2026-08-31 02:04:43
[2026-08-31 02:04:43,859.859 INFO    ] 2026-08-31 02:04:43
[2026-08-31 02:04:43,895.895 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:04:44,140.140 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:04:44,158.158 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:04:44,392.392 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:04:44,429.429 INFO    ] time= 31/08/2026 02:04:44
[2026-08-31 02:04:44,435.435 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:04:44,453.453 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:04:44,584.584 INFO    ] No existing commands found in stream
[2026-08-31 02:04:49,600.600 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:04:49,602.602 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-08-31 02:04:51,695.695 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 02:04:51,698.698 INFO    ] Checking for system updates...
[2026-08-31 02:04:51,734.734 INFO    ] 200
[2026-08-31 02:04:51,736.736 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:04:51,790.790 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:04:51,792.792 INFO    ] No update needed
[2026-08-31 02:04:51,795.795 INFO    ] Checking for camera pi updates...
[2026-08-31 02:04:51,829.829 INFO    ] 200
[2026-08-31 02:04:51,832.832 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:04:51,872.872 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:04:51,951.951 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:04:51,954.954 INFO    ] No camera update needed
[2026-08-31 02:04:51,956.956 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:04:51,959.959 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:04:51,964.964 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:04:51,969.969 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:04:54,012.012 INFO    ] ================================================
[2026-08-31 02:04:54,028.028 INFO    ] Launching Daemon at Mon Aug 31 02:04:54 IST 2026
[2026-08-31 02:04:54,038.038 INFO    ] ================================================
[2026-08-31 02:04:54,682.682 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:04:54
[2026-08-31 02:04:55,341.341 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:04:55,599.599 INFO    ] Initializing speech engine...
[2026-08-31 02:04:55,611.611 INFO    ] 2026-08-31 02:04:55
[2026-08-31 02:04:55,881.881 INFO    ] 2026-08-31 02:04:55
[2026-08-31 02:04:55,927.927 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:04:56,178.178 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:04:56,182.182 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:04:56,433.433 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:04:56,440.440 INFO    ] time= 31/08/2026 02:04:56
[2026-08-31 02:04:56,458.458 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:04:56,486.486 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:04:56,622.622 INFO    ] No existing commands found in stream
[2026-08-31 02:05:01,647.647 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:05:01,650.650 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-08-31 02:05:05,734.734 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 02:05:05,738.738 INFO    ] Checking for system updates...
[2026-08-31 02:05:05,778.778 INFO    ] 200
[2026-08-31 02:05:05,781.781 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:05:05,834.834 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:05:05,837.837 INFO    ] No update needed
[2026-08-31 02:05:05,839.839 INFO    ] Checking for camera pi updates...
[2026-08-31 02:05:05,880.880 INFO    ] 200
[2026-08-31 02:05:05,882.882 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:05:05,925.925 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:05:06,008.008 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:05:06,011.011 INFO    ] No camera update needed
[2026-08-31 02:05:06,013.013 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:05:06,015.015 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:05:06,021.021 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:05:06,026.026 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:05:08,072.072 INFO    ] ================================================
[2026-08-31 02:05:08,086.086 INFO    ] Launching Daemon at Mon Aug 31 02:05:08 IST 2026
[2026-08-31 02:05:08,098.098 INFO    ] ================================================
[2026-08-31 02:05:08,718.718 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:05:08
[2026-08-31 02:05:09,360.360 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:05:09,652.652 INFO    ] Initializing speech engine...
[2026-08-31 02:05:09,660.660 INFO    ] 2026-08-31 02:05:09
[2026-08-31 02:05:09,972.972 INFO    ] 2026-08-31 02:05:09
[2026-08-31 02:05:10,057.057 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:05:10,337.337 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:05:10,402.402 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:05:10,618.618 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:05:10,666.666 INFO    ] time= 31/08/2026 02:05:10
[2026-08-31 02:05:10,724.724 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:05:10,749.749 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:05:10,918.918 INFO    ] No existing commands found in stream
[2026-08-31 02:05:15,930.930 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:05:15,933.933 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-08-31 02:05:17,577.577 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 02:05:17,580.580 INFO    ] Checking for system updates...
[2026-08-31 02:05:17,615.615 INFO    ] 200
[2026-08-31 02:05:17,618.618 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:05:17,670.670 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:05:17,672.672 INFO    ] No update needed
[2026-08-31 02:05:17,675.675 INFO    ] Checking for camera pi updates...
[2026-08-31 02:05:17,708.708 INFO    ] 200
[2026-08-31 02:05:17,710.710 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:05:17,754.754 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:05:17,836.836 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:05:17,839.839 INFO    ] No camera update needed
[2026-08-31 02:05:17,841.841 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:05:17,844.844 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:05:17,849.849 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:05:17,854.854 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:05:19,895.895 INFO    ] ================================================
[2026-08-31 02:05:19,910.910 INFO    ] Launching Daemon at Mon Aug 31 02:05:19 IST 2026
[2026-08-31 02:05:19,920.920 INFO    ] ================================================
[2026-08-31 02:05:20,538.538 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:05:20
[2026-08-31 02:05:21,123.123 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:05:21,393.393 INFO    ] Initializing speech engine...
[2026-08-31 02:05:21,402.402 INFO    ] 2026-08-31 02:05:21
[2026-08-31 02:05:21,652.652 INFO    ] 2026-08-31 02:05:21
[2026-08-31 02:05:21,687.687 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:05:21,949.949 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:05:21,954.954 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:05:22,200.200 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:05:22,217.217 INFO    ] time= 31/08/2026 02:05:22
[2026-08-31 02:05:22,223.223 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:05:22,242.242 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:05:22,369.369 INFO    ] No existing commands found in stream
[2026-08-31 02:05:27,385.385 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:05:27,388.388 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-08-31 02:05:30,043.043 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 02:05:30,045.045 INFO    ] Checking for system updates...
[2026-08-31 02:05:30,080.080 INFO    ] 200
[2026-08-31 02:05:30,083.083 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:05:30,142.142 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:05:30,144.144 INFO    ] No update needed
[2026-08-31 02:05:30,147.147 INFO    ] Checking for camera pi updates...
[2026-08-31 02:05:30,180.180 INFO    ] 200
[2026-08-31 02:05:30,183.183 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:05:30,223.223 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:05:30,331.331 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:05:30,334.334 INFO    ] No camera update needed
[2026-08-31 02:05:30,336.336 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:05:30,339.339 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:05:30,344.344 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:05:30,349.349 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:05:32,390.390 INFO    ] ================================================
[2026-08-31 02:05:32,406.406 INFO    ] Launching Daemon at Mon Aug 31 02:05:32 IST 2026
[2026-08-31 02:05:32,417.417 INFO    ] ================================================
[2026-08-31 02:05:33,009.009 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:05:33
[2026-08-31 02:05:33,624.624 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:05:33,895.895 INFO    ] Initializing speech engine...
[2026-08-31 02:05:33,905.905 INFO    ] 2026-08-31 02:05:33
[2026-08-31 02:05:34,151.151 INFO    ] 2026-08-31 02:05:34
[2026-08-31 02:05:34,186.186 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:05:34,440.440 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:05:34,446.446 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:05:34,670.670 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:05:34,705.705 INFO    ] time= 31/08/2026 02:05:34
[2026-08-31 02:05:34,721.721 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:05:34,730.730 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:05:34,858.858 INFO    ] No existing commands found in stream
[2026-08-31 02:05:39,877.877 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:05:39,880.880 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-08-31 02:05:41,723.723 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 02:05:41,726.726 INFO    ] Checking for system updates...
[2026-08-31 02:05:41,761.761 INFO    ] 200
[2026-08-31 02:05:41,764.764 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:05:41,822.822 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:05:41,824.824 INFO    ] No update needed
[2026-08-31 02:05:41,827.827 INFO    ] Checking for camera pi updates...
[2026-08-31 02:05:41,862.862 INFO    ] 200
[2026-08-31 02:05:41,864.864 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:05:41,913.913 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:05:42,086.086 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:05:42,089.089 INFO    ] No camera update needed
[2026-08-31 02:05:42,091.091 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:05:42,094.094 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:05:42,099.099 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:05:42,104.104 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:05:44,145.145 INFO    ] ================================================
[2026-08-31 02:05:44,160.160 INFO    ] Launching Daemon at Mon Aug 31 02:05:44 IST 2026
[2026-08-31 02:05:44,171.171 INFO    ] ================================================
[2026-08-31 02:05:44,757.757 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:05:44
[2026-08-31 02:05:45,394.394 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:05:45,649.649 INFO    ] Initializing speech engine...
[2026-08-31 02:05:45,675.675 INFO    ] 2026-08-31 02:05:45
[2026-08-31 02:05:45,926.926 INFO    ] 2026-08-31 02:05:45
[2026-08-31 02:05:45,963.963 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:05:46,219.219 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:05:46,224.224 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:05:46,458.458 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:05:46,483.483 INFO    ] time= 31/08/2026 02:05:46
[2026-08-31 02:05:46,490.490 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:05:46,510.510 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:05:46,641.641 INFO    ] No existing commands found in stream
[2026-08-31 02:05:51,660.660 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:05:51,663.663 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-08-31 02:05:54,496.496 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 02:05:54,499.499 INFO    ] Checking for system updates...
[2026-08-31 02:05:54,534.534 INFO    ] 200
[2026-08-31 02:05:54,536.536 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:05:54,589.589 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:05:54,591.591 INFO    ] No update needed
[2026-08-31 02:05:54,594.594 INFO    ] Checking for camera pi updates...
[2026-08-31 02:05:54,628.628 INFO    ] 200
[2026-08-31 02:05:54,630.630 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:05:54,681.681 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:05:54,786.786 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:05:54,789.789 INFO    ] No camera update needed
[2026-08-31 02:05:54,792.792 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:05:54,794.794 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:05:54,799.799 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:05:54,805.805 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:05:56,844.844 INFO    ] ================================================
[2026-08-31 02:05:56,859.859 INFO    ] Launching Daemon at Mon Aug 31 02:05:56 IST 2026
[2026-08-31 02:05:56,870.870 INFO    ] ================================================
[2026-08-31 02:05:57,437.437 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:05:57
[2026-08-31 02:05:58,021.021 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:05:58,289.289 INFO    ] Initializing speech engine...
[2026-08-31 02:05:58,298.298 INFO    ] 2026-08-31 02:05:58
[2026-08-31 02:05:58,543.543 INFO    ] 2026-08-31 02:05:58
[2026-08-31 02:05:58,577.577 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:05:58,830.830 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:05:58,839.839 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:05:59,071.071 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:05:59,097.097 INFO    ] time= 31/08/2026 02:05:59
[2026-08-31 02:05:59,103.103 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:05:59,120.120 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:05:59,250.250 INFO    ] No existing commands found in stream
[2026-08-31 02:06:04,263.263 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:06:04,266.266 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-08-31 02:06:05,922.922 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 02:06:05,924.924 INFO    ] Checking for system updates...
[2026-08-31 02:06:05,963.963 INFO    ] 200
[2026-08-31 02:06:05,965.965 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:06:06,024.024 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:06:06,027.027 INFO    ] No update needed
[2026-08-31 02:06:06,029.029 INFO    ] Checking for camera pi updates...
[2026-08-31 02:06:06,067.067 INFO    ] 200
[2026-08-31 02:06:06,070.070 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:06:06,119.119 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:06:06,215.215 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:06:06,218.218 INFO    ] No camera update needed
[2026-08-31 02:06:06,220.220 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:06:06,222.222 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:06:06,228.228 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:06:06,233.233 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:06:08,273.273 INFO    ] ================================================
[2026-08-31 02:06:08,289.289 INFO    ] Launching Daemon at Mon Aug 31 02:06:08 IST 2026
[2026-08-31 02:06:08,306.306 INFO    ] ================================================
[2026-08-31 02:06:08,879.879 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:06:08
[2026-08-31 02:06:09,476.476 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:06:09,726.726 INFO    ] Initializing speech engine...
[2026-08-31 02:06:09,740.740 INFO    ] 2026-08-31 02:06:09
[2026-08-31 02:06:10,008.008 INFO    ] 2026-08-31 02:06:10
[2026-08-31 02:06:10,043.043 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:06:10,325.325 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:06:10,331.331 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:06:10,555.555 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:06:10,571.571 INFO    ] time= 31/08/2026 02:06:10
[2026-08-31 02:06:10,589.589 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:06:10,598.598 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:06:10,725.725 INFO    ] No existing commands found in stream
[2026-08-31 02:06:15,739.739 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:06:15,742.742 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-08-31 02:06:17,002.002 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 02:06:17,005.005 INFO    ] Checking for system updates...
[2026-08-31 02:06:17,044.044 INFO    ] 200
[2026-08-31 02:06:17,046.046 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:06:17,098.098 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:06:17,101.101 INFO    ] No update needed
[2026-08-31 02:06:17,103.103 INFO    ] Checking for camera pi updates...
[2026-08-31 02:06:17,136.136 INFO    ] 200
[2026-08-31 02:06:17,139.139 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:06:17,179.179 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:06:17,259.259 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:06:17,261.261 INFO    ] No camera update needed
[2026-08-31 02:06:17,263.263 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:06:17,266.266 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:06:17,271.271 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:06:17,276.276 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:06:19,316.316 INFO    ] ================================================
[2026-08-31 02:06:19,331.331 INFO    ] Launching Daemon at Mon Aug 31 02:06:19 IST 2026
[2026-08-31 02:06:19,343.343 INFO    ] ================================================
[2026-08-31 02:06:19,987.987 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:06:19
[2026-08-31 02:06:20,622.622 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:06:20,889.889 INFO    ] Initializing speech engine...
[2026-08-31 02:06:20,898.898 INFO    ] 2026-08-31 02:06:20
[2026-08-31 02:06:21,143.143 INFO    ] 2026-08-31 02:06:21
[2026-08-31 02:06:21,179.179 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:06:21,435.435 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:06:21,441.441 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:06:21,680.680 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:06:21,700.700 INFO    ] time= 31/08/2026 02:06:21
[2026-08-31 02:06:21,714.714 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:06:21,723.723 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:06:21,841.841 INFO    ] No existing commands found in stream
[2026-08-31 02:06:26,862.862 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:06:26,865.865 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-08-31 02:06:27,896.896 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 02:06:27,899.899 INFO    ] Checking for system updates...
[2026-08-31 02:06:27,940.940 INFO    ] 200
[2026-08-31 02:06:27,942.942 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:06:28,006.006 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:06:28,009.009 INFO    ] No update needed
[2026-08-31 02:06:28,012.012 INFO    ] Checking for camera pi updates...
[2026-08-31 02:06:28,047.047 INFO    ] 200
[2026-08-31 02:06:28,050.050 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:06:28,091.091 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:06:28,179.179 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:06:28,182.182 INFO    ] No camera update needed
[2026-08-31 02:06:28,184.184 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:06:28,187.187 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:06:28,193.193 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:06:28,198.198 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:06:30,240.240 INFO    ] ================================================
[2026-08-31 02:06:30,256.256 INFO    ] Launching Daemon at Mon Aug 31 02:06:30 IST 2026
[2026-08-31 02:06:30,267.267 INFO    ] ================================================
[2026-08-31 02:06:30,853.853 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:06:30
[2026-08-31 02:06:31,510.510 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:06:31,842.842 INFO    ] Initializing speech engine...
[2026-08-31 02:06:31,853.853 INFO    ] 2026-08-31 02:06:31
[2026-08-31 02:06:32,137.137 INFO    ] 2026-08-31 02:06:32
[2026-08-31 02:06:32,199.199 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:06:32,480.480 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:06:32,486.486 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:06:32,711.711 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:06:32,730.730 INFO    ] time= 31/08/2026 02:06:32
[2026-08-31 02:06:32,751.751 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:06:32,779.779 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:06:32,889.889 INFO    ] No existing commands found in stream
[2026-08-31 02:06:37,924.924 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:06:37,927.927 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-08-31 02:06:39,580.580 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 02:06:39,583.583 INFO    ] Checking for system updates...
[2026-08-31 02:06:39,622.622 INFO    ] 200
[2026-08-31 02:06:39,625.625 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:06:39,677.677 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:06:39,680.680 INFO    ] No update needed
[2026-08-31 02:06:39,682.682 INFO    ] Checking for camera pi updates...
[2026-08-31 02:06:39,715.715 INFO    ] 200
[2026-08-31 02:06:39,718.718 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:06:39,758.758 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:06:39,843.843 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:06:39,845.845 INFO    ] No camera update needed
[2026-08-31 02:06:39,848.848 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:06:39,850.850 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:06:39,855.855 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:06:39,861.861 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:06:41,903.903 INFO    ] ================================================
[2026-08-31 02:06:41,919.919 INFO    ] Launching Daemon at Mon Aug 31 02:06:41 IST 2026
[2026-08-31 02:06:41,930.930 INFO    ] ================================================
[2026-08-31 02:06:42,504.504 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:06:42
[2026-08-31 02:06:43,086.086 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:06:43,359.359 INFO    ] Initializing speech engine...
[2026-08-31 02:06:43,368.368 INFO    ] 2026-08-31 02:06:43
[2026-08-31 02:06:43,617.617 INFO    ] 2026-08-31 02:06:43
[2026-08-31 02:06:43,652.652 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:06:43,909.909 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:06:43,918.918 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:06:44,153.153 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:06:44,184.184 INFO    ] time= 31/08/2026 02:06:44
[2026-08-31 02:06:44,201.201 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:06:44,210.210 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:06:44,342.342 INFO    ] No existing commands found in stream
[2026-08-31 02:06:49,361.361 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:06:49,364.364 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-08-31 02:06:51,855.855 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 02:06:51,857.857 INFO    ] Checking for system updates...
[2026-08-31 02:06:51,894.894 INFO    ] 200
[2026-08-31 02:06:51,897.897 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:06:51,957.957 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:06:51,959.959 INFO    ] No update needed
[2026-08-31 02:06:51,962.962 INFO    ] Checking for camera pi updates...
[2026-08-31 02:06:51,999.999 INFO    ] 200
[2026-08-31 02:06:52,001.001 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:06:52,041.041 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:06:52,154.154 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:06:52,156.156 INFO    ] No camera update needed
[2026-08-31 02:06:52,158.158 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:06:52,161.161 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:06:52,166.166 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:06:52,171.171 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:06:54,214.214 INFO    ] ================================================
[2026-08-31 02:06:54,229.229 INFO    ] Launching Daemon at Mon Aug 31 02:06:54 IST 2026
[2026-08-31 02:06:54,241.241 INFO    ] ================================================
[2026-08-31 02:06:54,822.822 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:06:54
[2026-08-31 02:06:55,421.421 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:06:55,701.701 INFO    ] Initializing speech engine...
[2026-08-31 02:06:55,709.709 INFO    ] 2026-08-31 02:06:55
[2026-08-31 02:06:55,966.966 INFO    ] 2026-08-31 02:06:55
[2026-08-31 02:06:56,024.024 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:06:56,271.271 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:06:56,278.278 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:06:56,508.508 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:06:56,515.515 INFO    ] time= 31/08/2026 02:06:56
[2026-08-31 02:06:56,532.532 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:06:56,555.555 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:06:56,692.692 INFO    ] No existing commands found in stream
[2026-08-31 02:07:01,717.717 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:07:01,721.721 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-08-31 02:07:02,896.896 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 02:07:02,899.899 INFO    ] Checking for system updates...
[2026-08-31 02:07:02,935.935 INFO    ] 200
[2026-08-31 02:07:02,938.938 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:07:03,003.003 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:07:03,007.007 INFO    ] No update needed
[2026-08-31 02:07:03,010.010 INFO    ] Checking for camera pi updates...
[2026-08-31 02:07:03,046.046 INFO    ] 200
[2026-08-31 02:07:03,050.050 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:07:03,093.093 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:07:03,169.169 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:07:03,172.172 INFO    ] No camera update needed
[2026-08-31 02:07:03,175.175 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:07:03,177.177 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:07:03,183.183 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:07:03,188.188 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:07:05,229.229 INFO    ] ================================================
[2026-08-31 02:07:05,245.245 INFO    ] Launching Daemon at Mon Aug 31 02:07:05 IST 2026
[2026-08-31 02:07:05,256.256 INFO    ] ================================================
[2026-08-31 02:07:05,838.838 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:07:05
[2026-08-31 02:07:06,450.450 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:07:06,698.698 INFO    ] Initializing speech engine...
[2026-08-31 02:07:06,712.712 INFO    ] 2026-08-31 02:07:06
[2026-08-31 02:07:06,979.979 INFO    ] 2026-08-31 02:07:06
[2026-08-31 02:07:07,014.014 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:07:07,275.275 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:07:07,280.280 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:07:07,488.488 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:07:07,537.537 INFO    ] time= 31/08/2026 02:07:07
[2026-08-31 02:07:07,548.548 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:07:07,565.565 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:07:07,691.691 INFO    ] No existing commands found in stream
[2026-08-31 02:07:12,712.712 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:07:12,715.715 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-08-31 02:07:16,603.603 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 02:07:16,606.606 INFO    ] Checking for system updates...
[2026-08-31 02:07:16,641.641 INFO    ] 200
[2026-08-31 02:07:16,644.644 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:07:16,700.700 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:07:16,702.702 INFO    ] No update needed
[2026-08-31 02:07:16,705.705 INFO    ] Checking for camera pi updates...
[2026-08-31 02:07:16,741.741 INFO    ] 200
[2026-08-31 02:07:16,743.743 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:07:16,783.783 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:07:16,864.864 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:07:16,867.867 INFO    ] No camera update needed
[2026-08-31 02:07:16,869.869 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:07:16,872.872 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:07:16,877.877 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:07:16,882.882 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:07:18,923.923 INFO    ] ================================================
[2026-08-31 02:07:18,939.939 INFO    ] Launching Daemon at Mon Aug 31 02:07:18 IST 2026
[2026-08-31 02:07:18,950.950 INFO    ] ================================================
[2026-08-31 02:07:19,513.513 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:07:19
[2026-08-31 02:07:20,095.095 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:07:20,363.363 INFO    ] Initializing speech engine...
[2026-08-31 02:07:20,372.372 INFO    ] 2026-08-31 02:07:20
[2026-08-31 02:07:20,622.622 INFO    ] 2026-08-31 02:07:20
[2026-08-31 02:07:20,689.689 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:07:20,976.976 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:07:20,984.984 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:07:21,184.184 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:07:21,200.200 INFO    ] time= 31/08/2026 02:07:21
[2026-08-31 02:07:21,220.220 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:07:21,238.238 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:07:21,345.345 INFO    ] No existing commands found in stream
[2026-08-31 02:07:26,359.359 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:07:26,362.362 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-08-31 02:07:28,374.374 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 02:07:28,382.382 INFO    ] Checking for system updates...
[2026-08-31 02:07:28,431.431 INFO    ] 200
[2026-08-31 02:07:28,433.433 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:07:28,492.492 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:07:28,494.494 INFO    ] No update needed
[2026-08-31 02:07:28,497.497 INFO    ] Checking for camera pi updates...
[2026-08-31 02:07:28,536.536 INFO    ] 200
[2026-08-31 02:07:28,539.539 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:07:28,579.579 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:07:28,688.688 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:07:28,691.691 INFO    ] No camera update needed
[2026-08-31 02:07:28,694.694 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:07:28,696.696 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:07:28,702.702 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:07:28,707.707 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:07:30,750.750 INFO    ] ================================================
[2026-08-31 02:07:30,765.765 INFO    ] Launching Daemon at Mon Aug 31 02:07:30 IST 2026
[2026-08-31 02:07:30,776.776 INFO    ] ================================================
[2026-08-31 02:07:31,408.408 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:07:31
[2026-08-31 02:07:32,024.024 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:07:32,297.297 INFO    ] Initializing speech engine...
[2026-08-31 02:07:32,306.306 INFO    ] 2026-08-31 02:07:32
[2026-08-31 02:07:32,585.585 INFO    ] 2026-08-31 02:07:32
[2026-08-31 02:07:32,630.630 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:07:32,853.853 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:07:32,877.877 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:07:33,103.103 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:07:33,125.125 INFO    ] time= 31/08/2026 02:07:33
[2026-08-31 02:07:33,179.179 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:07:33,213.213 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:07:33,309.309 INFO    ] No existing commands found in stream
[2026-08-31 02:07:38,325.325 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:07:38,328.328 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-08-31 02:07:40,977.977 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 02:07:40,980.980 INFO    ] Checking for system updates...
[2026-08-31 02:07:41,033.033 INFO    ] 200
[2026-08-31 02:07:41,036.036 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-08-31 02:07:41,039.039 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-08-31 02:07:41,041.041 INFO    ] Checking for camera pi updates...
[2026-08-31 02:07:41,082.082 INFO    ] 200
[2026-08-31 02:07:41,085.085 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-08-31 02:07:41,088.088 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-08-31 02:07:41,090.090 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:07:41,093.093 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:07:41,099.099 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:07:41,104.104 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:07:43,145.145 INFO    ] ================================================
[2026-08-31 02:07:43,160.160 INFO    ] Launching Daemon at Mon Aug 31 02:07:43 IST 2026
[2026-08-31 02:07:43,172.172 INFO    ] ================================================
[2026-08-31 02:07:43,765.765 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:07:43
[2026-08-31 02:07:44,363.363 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:07:44,635.635 INFO    ] Initializing speech engine...
[2026-08-31 02:07:44,644.644 INFO    ] 2026-08-31 02:07:44
[2026-08-31 02:07:44,899.899 INFO    ] 2026-08-31 02:07:44
[2026-08-31 02:07:44,958.958 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:07:45,243.243 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:07:45,248.248 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:07:45,458.458 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:07:45,465.465 INFO    ] time= 31/08/2026 02:07:45
[2026-08-31 02:07:45,486.486 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:07:45,517.517 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:07:45,639.639 INFO    ] No existing commands found in stream
[2026-08-31 02:07:50,656.656 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:07:50,659.659 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-08-31 02:07:52,158.158 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 02:07:52,161.161 INFO    ] Checking for system updates...
[2026-08-31 02:07:52,200.200 INFO    ] 200
[2026-08-31 02:07:52,203.203 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:07:52,256.256 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:07:52,259.259 INFO    ] No update needed
[2026-08-31 02:07:52,261.261 INFO    ] Checking for camera pi updates...
[2026-08-31 02:07:52,298.298 INFO    ] 200
[2026-08-31 02:07:52,301.301 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:07:52,345.345 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:07:52,524.524 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:07:52,526.526 INFO    ] No camera update needed
[2026-08-31 02:07:52,529.529 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:07:52,531.531 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:07:52,536.536 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:07:52,542.542 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:07:54,581.581 INFO    ] ================================================
[2026-08-31 02:07:54,596.596 INFO    ] Launching Daemon at Mon Aug 31 02:07:54 IST 2026
[2026-08-31 02:07:54,607.607 INFO    ] ================================================
[2026-08-31 02:07:55,267.267 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:07:55
[2026-08-31 02:07:55,948.948 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:07:56,242.242 INFO    ] Initializing speech engine...
[2026-08-31 02:07:56,255.255 INFO    ] 2026-08-31 02:07:56
[2026-08-31 02:07:56,519.519 INFO    ] 2026-08-31 02:07:56
[2026-08-31 02:07:56,558.558 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:07:56,784.784 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:07:56,790.790 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:07:57,005.005 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:07:57,046.046 INFO    ] time= 31/08/2026 02:07:57
[2026-08-31 02:07:57,052.052 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:07:57,070.070 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:07:57,199.199 INFO    ] No existing commands found in stream
[2026-08-31 02:08:02,209.209 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:08:02,212.212 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-08-31 02:08:05,817.817 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 02:08:05,820.820 INFO    ] Checking for system updates...
[2026-08-31 02:08:05,859.859 INFO    ] 200
[2026-08-31 02:08:05,861.861 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:08:05,925.925 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:08:05,928.928 INFO    ] No update needed
[2026-08-31 02:08:05,933.933 INFO    ] Checking for camera pi updates...
[2026-08-31 02:08:05,982.982 INFO    ] 200
[2026-08-31 02:08:05,988.988 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:08:06,032.032 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:08:06,090.090 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:08:06,092.092 INFO    ] No camera update needed
[2026-08-31 02:08:06,095.095 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:08:06,098.098 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:08:06,104.104 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:08:06,110.110 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:08:08,151.151 INFO    ] ================================================
[2026-08-31 02:08:08,167.167 INFO    ] Launching Daemon at Mon Aug 31 02:08:08 IST 2026
[2026-08-31 02:08:08,178.178 INFO    ] ================================================
[2026-08-31 02:08:08,767.767 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:08:08
[2026-08-31 02:08:09,364.364 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:08:09,636.636 INFO    ] Initializing speech engine...
[2026-08-31 02:08:09,646.646 INFO    ] 2026-08-31 02:08:09
[2026-08-31 02:08:09,908.908 INFO    ] 2026-08-31 02:08:09
[2026-08-31 02:08:09,960.960 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:08:10,187.187 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:08:10,193.193 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:08:10,425.425 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:08:10,449.449 INFO    ] time= 31/08/2026 02:08:10
[2026-08-31 02:08:10,467.467 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:08:10,475.475 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:08:10,599.599 INFO    ] No existing commands found in stream
[2026-08-31 02:08:15,614.614 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:08:15,616.616 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-08-31 02:08:16,518.518 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 02:08:16,521.521 INFO    ] Checking for system updates...
[2026-08-31 02:08:16,557.557 INFO    ] 200
[2026-08-31 02:08:16,559.559 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:08:16,611.611 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:08:16,613.613 INFO    ] No update needed
[2026-08-31 02:08:16,616.616 INFO    ] Checking for camera pi updates...
[2026-08-31 02:08:16,660.660 INFO    ] 200
[2026-08-31 02:08:16,662.662 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:08:16,702.702 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:08:16,805.805 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:08:16,807.807 INFO    ] No camera update needed
[2026-08-31 02:08:16,810.810 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:08:16,812.812 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:08:16,817.817 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:08:16,822.822 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:08:18,862.862 INFO    ] ================================================
[2026-08-31 02:08:18,878.878 INFO    ] Launching Daemon at Mon Aug 31 02:08:18 IST 2026
[2026-08-31 02:08:18,889.889 INFO    ] ================================================
[2026-08-31 02:08:19,454.454 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:08:19
[2026-08-31 02:08:20,035.035 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:08:20,303.303 INFO    ] Initializing speech engine...
[2026-08-31 02:08:20,312.312 INFO    ] 2026-08-31 02:08:20
[2026-08-31 02:08:20,564.564 INFO    ] 2026-08-31 02:08:20
[2026-08-31 02:08:20,622.622 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:08:20,873.873 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:08:20,879.879 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:08:21,107.107 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:08:21,114.114 INFO    ] time= 31/08/2026 02:08:21
[2026-08-31 02:08:21,132.132 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:08:21,159.159 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:08:21,267.267 INFO    ] No existing commands found in stream
[2026-08-31 02:08:26,287.287 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:08:26,290.290 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-08-31 02:08:29,547.547 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 02:08:29,550.550 INFO    ] Checking for system updates...
[2026-08-31 02:08:29,592.592 INFO    ] 200
[2026-08-31 02:08:29,595.595 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:08:29,660.660 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:08:29,663.663 INFO    ] No update needed
[2026-08-31 02:08:29,666.666 INFO    ] Checking for camera pi updates...
[2026-08-31 02:08:29,706.706 INFO    ] 200
[2026-08-31 02:08:29,709.709 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:08:29,755.755 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:08:29,850.850 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:08:29,853.853 INFO    ] No camera update needed
[2026-08-31 02:08:29,858.858 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:08:29,861.861 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:08:29,867.867 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:08:29,872.872 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:08:31,913.913 INFO    ] ================================================
[2026-08-31 02:08:31,929.929 INFO    ] Launching Daemon at Mon Aug 31 02:08:31 IST 2026
[2026-08-31 02:08:31,941.941 INFO    ] ================================================
[2026-08-31 02:08:32,558.558 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:08:32
[2026-08-31 02:08:33,157.157 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:08:33,433.433 INFO    ] Initializing speech engine...
[2026-08-31 02:08:33,440.440 INFO    ] 2026-08-31 02:08:33
[2026-08-31 02:08:33,702.702 INFO    ] 2026-08-31 02:08:33
[2026-08-31 02:08:33,732.732 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:08:33,980.980 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:08:33,983.983 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:08:34,147.147 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:08:34,207.207 INFO    ] time= 31/08/2026 02:08:34
[2026-08-31 02:08:34,262.262 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:08:34,294.294 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:08:34,442.442 INFO    ] No existing commands found in stream
[2026-08-31 02:08:39,469.469 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:08:39,471.471 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-08-31 02:08:42,298.298 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 02:08:42,300.300 INFO    ] Checking for system updates...
[2026-08-31 02:08:42,339.339 INFO    ] 200
[2026-08-31 02:08:42,341.341 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:08:42,395.395 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:08:42,398.398 INFO    ] No update needed
[2026-08-31 02:08:42,400.400 INFO    ] Checking for camera pi updates...
[2026-08-31 02:08:42,433.433 INFO    ] 200
[2026-08-31 02:08:42,435.435 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:08:42,475.475 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:08:42,551.551 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:08:42,553.553 INFO    ] No camera update needed
[2026-08-31 02:08:42,556.556 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:08:42,558.558 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:08:42,564.564 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:08:42,569.569 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:08:44,608.608 INFO    ] ================================================
[2026-08-31 02:08:44,623.623 INFO    ] Launching Daemon at Mon Aug 31 02:08:44 IST 2026
[2026-08-31 02:08:44,633.633 INFO    ] ================================================
[2026-08-31 02:08:45,211.211 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:08:45
[2026-08-31 02:08:45,803.803 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:08:46,079.079 INFO    ] Initializing speech engine...
[2026-08-31 02:08:46,084.084 INFO    ] 2026-08-31 02:08:46
[2026-08-31 02:08:46,332.332 INFO    ] 2026-08-31 02:08:46
[2026-08-31 02:08:46,368.368 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:08:46,623.623 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:08:46,627.627 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:08:46,849.849 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:08:46,885.885 INFO    ] time= 31/08/2026 02:08:46
[2026-08-31 02:08:46,901.901 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:08:46,910.910 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:08:47,037.037 INFO    ] No existing commands found in stream
[2026-08-31 02:08:52,052.052 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:08:52,055.055 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-08-31 02:08:56,324.324 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 02:08:56,327.327 INFO    ] Checking for system updates...
[2026-08-31 02:08:56,363.363 INFO    ] 200
[2026-08-31 02:08:56,366.366 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:08:56,427.427 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:08:56,430.430 INFO    ] No update needed
[2026-08-31 02:08:56,433.433 INFO    ] Checking for camera pi updates...
[2026-08-31 02:08:56,468.468 INFO    ] 200
[2026-08-31 02:08:56,471.471 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:08:56,517.517 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:08:56,601.601 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:08:56,604.604 INFO    ] No camera update needed
[2026-08-31 02:08:56,607.607 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:08:56,610.610 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:08:56,616.616 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:08:56,622.622 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:08:58,663.663 INFO    ] ================================================
[2026-08-31 02:08:58,678.678 INFO    ] Launching Daemon at Mon Aug 31 02:08:58 IST 2026
[2026-08-31 02:08:58,689.689 INFO    ] ================================================
[2026-08-31 02:08:59,263.263 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:08:59
[2026-08-31 02:08:59,843.843 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:09:00,139.139 INFO    ] Initializing speech engine...
[2026-08-31 02:09:00,153.153 INFO    ] 2026-08-31 02:09:00
[2026-08-31 02:09:00,469.469 INFO    ] 2026-08-31 02:09:00
[2026-08-31 02:09:00,551.551 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:09:00,765.765 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:09:00,770.770 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:09:00,968.968 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:09:00,985.985 INFO    ] time= 31/08/2026 02:09:00
[2026-08-31 02:09:01,010.010 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:09:01,025.025 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:09:01,136.136 INFO    ] No existing commands found in stream
[2026-08-31 02:09:06,167.167 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:09:06,171.171 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-08-31 02:09:08,078.078 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 02:09:08,081.081 INFO    ] Checking for system updates...
[2026-08-31 02:09:08,118.118 INFO    ] 200
[2026-08-31 02:09:08,121.121 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:09:08,174.174 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:09:08,177.177 INFO    ] No update needed
[2026-08-31 02:09:08,180.180 INFO    ] Checking for camera pi updates...
[2026-08-31 02:09:08,218.218 INFO    ] 200
[2026-08-31 02:09:08,221.221 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:09:08,268.268 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:09:08,359.359 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:09:08,362.362 INFO    ] No camera update needed
[2026-08-31 02:09:08,364.364 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:09:08,366.366 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:09:08,372.372 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:09:08,377.377 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:09:10,418.418 INFO    ] ================================================
[2026-08-31 02:09:10,433.433 INFO    ] Launching Daemon at Mon Aug 31 02:09:10 IST 2026
[2026-08-31 02:09:10,444.444 INFO    ] ================================================
[2026-08-31 02:09:11,022.022 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:09:11
[2026-08-31 02:09:11,619.619 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:09:11,896.896 INFO    ] Initializing speech engine...
[2026-08-31 02:09:11,908.908 INFO    ] 2026-08-31 02:09:11
[2026-08-31 02:09:12,164.164 INFO    ] 2026-08-31 02:09:12
[2026-08-31 02:09:12,217.217 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:09:12,496.496 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:09:12,503.503 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:09:12,696.696 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:09:12,703.703 INFO    ] time= 31/08/2026 02:09:12
[2026-08-31 02:09:12,718.718 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:09:12,737.737 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:09:12,854.854 INFO    ] No existing commands found in stream
[2026-08-31 02:09:17,871.871 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:09:17,874.874 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-08-31 02:09:18,955.955 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 02:09:18,958.958 INFO    ] Checking for system updates...
[2026-08-31 02:09:18,995.995 INFO    ] 200
[2026-08-31 02:09:18,997.997 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:09:19,051.051 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:09:19,053.053 INFO    ] No update needed
[2026-08-31 02:09:19,056.056 INFO    ] Checking for camera pi updates...
[2026-08-31 02:09:19,089.089 INFO    ] 200
[2026-08-31 02:09:19,091.091 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:09:19,136.136 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:09:19,239.239 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:09:19,242.242 INFO    ] No camera update needed
[2026-08-31 02:09:19,244.244 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:09:19,246.246 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:09:19,252.252 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:09:19,257.257 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:09:21,297.297 INFO    ] ================================================
[2026-08-31 02:09:21,312.312 INFO    ] Launching Daemon at Mon Aug 31 02:09:21 IST 2026
[2026-08-31 02:09:21,323.323 INFO    ] ================================================
[2026-08-31 02:09:21,886.886 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:09:21
[2026-08-31 02:09:22,471.471 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:09:22,725.725 INFO    ] Initializing speech engine...
[2026-08-31 02:09:22,734.734 INFO    ] 2026-08-31 02:09:22
[2026-08-31 02:09:23,029.029 INFO    ] 2026-08-31 02:09:22
[2026-08-31 02:09:23,065.065 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:09:23,270.270 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:09:23,272.272 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:09:23,484.484 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:09:23,526.526 INFO    ] time= 31/08/2026 02:09:23
[2026-08-31 02:09:23,586.586 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:09:23,621.621 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:09:23,752.752 INFO    ] No existing commands found in stream
[2026-08-31 02:09:28,779.779 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:09:28,782.782 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-08-31 02:09:30,158.158 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 02:09:30,161.161 INFO    ] Checking for system updates...
[2026-08-31 02:09:30,196.196 INFO    ] 200
[2026-08-31 02:09:30,199.199 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:09:30,251.251 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:09:30,253.253 INFO    ] No update needed
[2026-08-31 02:09:30,255.255 INFO    ] Checking for camera pi updates...
[2026-08-31 02:09:30,289.289 INFO    ] 200
[2026-08-31 02:09:30,292.292 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:09:30,332.332 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:09:30,389.389 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:09:30,391.391 INFO    ] No camera update needed
[2026-08-31 02:09:30,393.393 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:09:30,396.396 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:09:30,401.401 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:09:30,406.406 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:09:32,449.449 INFO    ] ================================================
[2026-08-31 02:09:32,464.464 INFO    ] Launching Daemon at Mon Aug 31 02:09:32 IST 2026
[2026-08-31 02:09:32,476.476 INFO    ] ================================================
[2026-08-31 02:09:33,080.080 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:09:33
[2026-08-31 02:09:33,707.707 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:09:33,978.978 INFO    ] Initializing speech engine...
[2026-08-31 02:09:33,988.988 INFO    ] 2026-08-31 02:09:33
[2026-08-31 02:09:34,241.241 INFO    ] 2026-08-31 02:09:34
[2026-08-31 02:09:34,276.276 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:09:34,533.533 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:09:34,542.542 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:09:34,783.783 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:09:34,806.806 INFO    ] time= 31/08/2026 02:09:34
[2026-08-31 02:09:34,822.822 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:09:34,831.831 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:09:34,986.986 INFO    ] No existing commands found in stream
[2026-08-31 02:09:40,011.011 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:09:40,013.013 INFO    ] Waiting 4.00 seconds before fallback handling...
[2026-08-31 02:09:44,562.562 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 02:09:44,565.565 INFO    ] Checking for system updates...
[2026-08-31 02:09:44,600.600 INFO    ] 200
[2026-08-31 02:09:44,603.603 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:09:44,654.654 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:09:44,657.657 INFO    ] No update needed
[2026-08-31 02:09:44,659.659 INFO    ] Checking for camera pi updates...
[2026-08-31 02:09:44,696.696 INFO    ] 200
[2026-08-31 02:09:44,699.699 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:09:44,745.745 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:09:44,832.832 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:09:44,834.834 INFO    ] No camera update needed
[2026-08-31 02:09:44,836.836 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:09:44,839.839 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:09:44,845.845 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:09:44,850.850 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:09:46,893.893 INFO    ] ================================================
[2026-08-31 02:09:46,909.909 INFO    ] Launching Daemon at Mon Aug 31 02:09:46 IST 2026
[2026-08-31 02:09:46,919.919 INFO    ] ================================================
[2026-08-31 02:09:47,497.497 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:09:47
[2026-08-31 02:09:48,096.096 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:09:48,357.357 INFO    ] Initializing speech engine...
[2026-08-31 02:09:48,363.363 INFO    ] 2026-08-31 02:09:48
[2026-08-31 02:09:48,664.664 INFO    ] 2026-08-31 02:09:48
[2026-08-31 02:09:48,702.702 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:09:48,927.927 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:09:48,935.935 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:09:49,152.152 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:09:49,194.194 INFO    ] time= 31/08/2026 02:09:49
[2026-08-31 02:09:49,243.243 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:09:49,285.285 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:09:49,438.438 INFO    ] No existing commands found in stream
[2026-08-31 02:09:54,466.466 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:09:54,470.470 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-08-31 02:09:57,219.219 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 02:09:57,222.222 INFO    ] Checking for system updates...
[2026-08-31 02:09:57,263.263 INFO    ] 200
[2026-08-31 02:09:57,266.266 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:09:57,320.320 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:09:57,323.323 INFO    ] No update needed
[2026-08-31 02:09:57,326.326 INFO    ] Checking for camera pi updates...
[2026-08-31 02:09:57,360.360 INFO    ] 200
[2026-08-31 02:09:57,363.363 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:09:57,406.406 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:09:57,597.597 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:09:57,600.600 INFO    ] No camera update needed
[2026-08-31 02:09:57,603.603 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:09:57,606.606 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:09:57,612.612 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:09:57,618.618 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:09:59,658.658 INFO    ] ================================================
[2026-08-31 02:09:59,674.674 INFO    ] Launching Daemon at Mon Aug 31 02:09:59 IST 2026
[2026-08-31 02:09:59,685.685 INFO    ] ================================================
[2026-08-31 02:10:00,253.253 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:10:00
[2026-08-31 02:10:00,846.846 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:10:01,389.389 INFO    ] Initializing speech engine...
[2026-08-31 02:10:01,396.396 INFO    ] 2026-08-31 02:10:01
[2026-08-31 02:10:02,130.130 INFO    ] 2026-08-31 02:10:02
[2026-08-31 02:10:02,182.182 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:10:02,431.431 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:10:02,435.435 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:10:02,601.601 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:10:02,604.604 INFO    ] time= 31/08/2026 02:10:02
[2026-08-31 02:10:02,607.607 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:10:02,610.610 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:10:02,705.705 INFO    ] No existing commands found in stream
[2026-08-31 02:10:07,715.715 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:10:07,718.718 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-08-31 02:10:09,604.604 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 02:10:09,607.607 INFO    ] Checking for system updates...
[2026-08-31 02:10:09,642.642 INFO    ] 200
[2026-08-31 02:10:09,645.645 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:10:09,698.698 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:10:09,700.700 INFO    ] No update needed
[2026-08-31 02:10:09,703.703 INFO    ] Checking for camera pi updates...
[2026-08-31 02:10:09,737.737 INFO    ] 200
[2026-08-31 02:10:09,740.740 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:10:09,786.786 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:10:09,890.890 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:10:09,892.892 INFO    ] No camera update needed
[2026-08-31 02:10:09,895.895 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:10:09,897.897 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:10:09,902.902 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:10:09,907.907 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:10:11,947.947 INFO    ] ================================================
[2026-08-31 02:10:11,962.962 INFO    ] Launching Daemon at Mon Aug 31 02:10:11 IST 2026
[2026-08-31 02:10:11,973.973 INFO    ] ================================================
[2026-08-31 02:10:12,540.540 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:10:12
[2026-08-31 02:10:13,122.122 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:10:13,378.378 INFO    ] Initializing speech engine...
[2026-08-31 02:10:13,387.387 INFO    ] 2026-08-31 02:10:13
[2026-08-31 02:10:13,683.683 INFO    ] 2026-08-31 02:10:13
[2026-08-31 02:10:13,722.722 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:10:14,017.017 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:10:14,026.026 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:10:14,182.182 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:10:14,205.205 INFO    ] time= 31/08/2026 02:10:14
[2026-08-31 02:10:14,249.249 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:10:14,293.293 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:10:14,396.396 INFO    ] No existing commands found in stream
[2026-08-31 02:10:19,409.409 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:10:19,412.412 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-08-31 02:10:20,636.636 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 02:10:20,638.638 INFO    ] Checking for system updates...
[2026-08-31 02:10:20,678.678 INFO    ] 200
[2026-08-31 02:10:20,681.681 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:10:20,732.732 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:10:20,735.735 INFO    ] No update needed
[2026-08-31 02:10:20,737.737 INFO    ] Checking for camera pi updates...
[2026-08-31 02:10:20,771.771 INFO    ] 200
[2026-08-31 02:10:20,773.773 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:10:20,814.814 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:10:20,887.887 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:10:20,890.890 INFO    ] No camera update needed
[2026-08-31 02:10:20,892.892 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:10:20,894.894 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:10:20,899.899 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:10:20,904.904 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:10:22,951.951 INFO    ] ================================================
[2026-08-31 02:10:22,966.966 INFO    ] Launching Daemon at Mon Aug 31 02:10:22 IST 2026
[2026-08-31 02:10:22,977.977 INFO    ] ================================================
[2026-08-31 02:10:23,559.559 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:10:23
[2026-08-31 02:10:24,159.159 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:10:24,425.425 INFO    ] Initializing speech engine...
[2026-08-31 02:10:24,432.432 INFO    ] 2026-08-31 02:10:24
[2026-08-31 02:10:24,732.732 INFO    ] 2026-08-31 02:10:24
[2026-08-31 02:10:24,771.771 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:10:25,067.067 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:10:25,078.078 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:10:25,232.232 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:10:25,249.249 INFO    ] time= 31/08/2026 02:10:25
[2026-08-31 02:10:25,303.303 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:10:25,337.337 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:10:25,445.445 INFO    ] No existing commands found in stream
[2026-08-31 02:10:30,457.457 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:10:30,460.460 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-08-31 02:10:33,038.038 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 02:10:33,040.040 INFO    ] Checking for system updates...
[2026-08-31 02:10:33,076.076 INFO    ] 200
[2026-08-31 02:10:33,079.079 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:10:33,132.132 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:10:33,134.134 INFO    ] No update needed
[2026-08-31 02:10:33,137.137 INFO    ] Checking for camera pi updates...
[2026-08-31 02:10:33,171.171 INFO    ] 200
[2026-08-31 02:10:33,174.174 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:10:33,220.220 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:10:33,302.302 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:10:33,304.304 INFO    ] No camera update needed
[2026-08-31 02:10:33,306.306 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:10:33,309.309 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:10:33,314.314 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:10:33,319.319 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:10:35,359.359 INFO    ] ================================================
[2026-08-31 02:10:35,375.375 INFO    ] Launching Daemon at Mon Aug 31 02:10:35 IST 2026
[2026-08-31 02:10:35,385.385 INFO    ] ================================================
[2026-08-31 02:10:35,960.960 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:10:35
[2026-08-31 02:10:36,548.548 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:10:36,823.823 INFO    ] Initializing speech engine...
[2026-08-31 02:10:36,829.829 INFO    ] 2026-08-31 02:10:36
[2026-08-31 02:10:37,090.090 INFO    ] 2026-08-31 02:10:37
[2026-08-31 02:10:37,143.143 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:10:37,378.378 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:10:37,399.399 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:10:37,638.638 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:10:37,645.645 INFO    ] time= 31/08/2026 02:10:37
[2026-08-31 02:10:37,660.660 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:10:37,669.669 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:10:37,789.789 INFO    ] No existing commands found in stream
[2026-08-31 02:10:42,809.809 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:10:42,812.812 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-08-31 02:10:44,100.100 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 02:10:44,103.103 INFO    ] Checking for system updates...
[2026-08-31 02:10:44,140.140 INFO    ] 200
[2026-08-31 02:10:44,143.143 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:10:44,204.204 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:10:44,207.207 INFO    ] No update needed
[2026-08-31 02:10:44,210.210 INFO    ] Checking for camera pi updates...
[2026-08-31 02:10:44,249.249 INFO    ] 200
[2026-08-31 02:10:44,252.252 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:10:44,294.294 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:10:44,387.387 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:10:44,390.390 INFO    ] No camera update needed
[2026-08-31 02:10:44,393.393 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:10:44,395.395 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:10:44,401.401 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:10:44,407.407 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:10:46,450.450 INFO    ] ================================================
[2026-08-31 02:10:46,465.465 INFO    ] Launching Daemon at Mon Aug 31 02:10:46 IST 2026
[2026-08-31 02:10:46,476.476 INFO    ] ================================================
[2026-08-31 02:10:47,062.062 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:10:47
[2026-08-31 02:10:47,668.668 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:10:47,947.947 INFO    ] Initializing speech engine...
[2026-08-31 02:10:47,954.954 INFO    ] 2026-08-31 02:10:47
[2026-08-31 02:10:48,214.214 INFO    ] 2026-08-31 02:10:48
[2026-08-31 02:10:48,268.268 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:10:48,554.554 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:10:48,562.562 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:10:48,754.754 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:10:48,760.760 INFO    ] time= 31/08/2026 02:10:48
[2026-08-31 02:10:48,778.778 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:10:48,806.806 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:10:48,915.915 INFO    ] No existing commands found in stream
[2026-08-31 02:10:53,939.939 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:10:53,942.942 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-08-31 02:10:57,443.443 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 02:10:57,445.445 INFO    ] Checking for system updates...
[2026-08-31 02:10:57,482.482 INFO    ] 200
[2026-08-31 02:10:57,484.484 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:10:57,545.545 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:10:57,547.547 INFO    ] No update needed
[2026-08-31 02:10:57,550.550 INFO    ] Checking for camera pi updates...
[2026-08-31 02:10:57,583.583 INFO    ] 200
[2026-08-31 02:10:57,585.585 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:10:57,626.626 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:10:57,706.706 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:10:57,709.709 INFO    ] No camera update needed
[2026-08-31 02:10:57,712.712 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:10:57,714.714 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:10:57,719.719 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:10:57,725.725 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:10:59,767.767 INFO    ] ================================================
[2026-08-31 02:10:59,781.781 INFO    ] Launching Daemon at Mon Aug 31 02:10:59 IST 2026
[2026-08-31 02:10:59,792.792 INFO    ] ================================================
[2026-08-31 02:11:00,363.363 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:11:00
[2026-08-31 02:11:00,949.949 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:11:01,214.214 INFO    ] Initializing speech engine...
[2026-08-31 02:11:01,223.223 INFO    ] 2026-08-31 02:11:01
[2026-08-31 02:11:01,470.470 INFO    ] 2026-08-31 02:11:01
[2026-08-31 02:11:01,511.511 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:11:01,839.839 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:11:01,843.843 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:11:02,033.033 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:11:02,037.037 INFO    ] time= 31/08/2026 02:11:02
[2026-08-31 02:11:02,041.041 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:11:02,043.043 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:11:02,116.116 INFO    ] No existing commands found in stream
[2026-08-31 02:11:07,127.127 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:11:07,130.130 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-08-31 02:11:10,685.685 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 02:11:10,688.688 INFO    ] Checking for system updates...
[2026-08-31 02:11:10,728.728 INFO    ] 200
[2026-08-31 02:11:10,731.731 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:11:10,783.783 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:11:10,785.785 INFO    ] No update needed
[2026-08-31 02:11:10,788.788 INFO    ] Checking for camera pi updates...
[2026-08-31 02:11:10,825.825 INFO    ] 200
[2026-08-31 02:11:10,828.828 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:11:10,868.868 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:11:10,939.939 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:11:10,942.942 INFO    ] No camera update needed
[2026-08-31 02:11:10,944.944 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:11:10,947.947 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:11:10,952.952 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:11:10,957.957 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:11:13,999.999 INFO    ] ================================================
[2026-08-31 02:11:13,015.015 INFO    ] Launching Daemon at Mon Aug 31 02:11:13 IST 2026
[2026-08-31 02:11:13,026.026 INFO    ] ================================================
[2026-08-31 02:11:13,688.688 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:11:13
[2026-08-31 02:11:14,370.370 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:11:14,688.688 INFO    ] Initializing speech engine...
[2026-08-31 02:11:14,702.702 INFO    ] 2026-08-31 02:11:14
[2026-08-31 02:11:15,011.011 INFO    ] 2026-08-31 02:11:14
[2026-08-31 02:11:15,097.097 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:11:15,312.312 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:11:15,321.321 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:11:15,513.513 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:11:15,532.532 INFO    ] time= 31/08/2026 02:11:15
[2026-08-31 02:11:15,562.562 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:11:15,574.574 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:11:15,696.696 INFO    ] No existing commands found in stream
[2026-08-31 02:11:20,721.721 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:11:20,724.724 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-08-31 02:11:22,038.038 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 02:11:22,041.041 INFO    ] Checking for system updates...
[2026-08-31 02:11:22,084.084 INFO    ] 200
[2026-08-31 02:11:22,086.086 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:11:22,144.144 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:11:22,147.147 INFO    ] No update needed
[2026-08-31 02:11:22,150.150 INFO    ] Checking for camera pi updates...
[2026-08-31 02:11:22,189.189 INFO    ] 200
[2026-08-31 02:11:22,193.193 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:11:22,234.234 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:11:22,315.315 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:11:22,318.318 INFO    ] No camera update needed
[2026-08-31 02:11:22,321.321 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:11:22,324.324 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:11:22,331.331 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:11:22,336.336 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:11:24,378.378 INFO    ] ================================================
[2026-08-31 02:11:24,394.394 INFO    ] Launching Daemon at Mon Aug 31 02:11:24 IST 2026
[2026-08-31 02:11:24,406.406 INFO    ] ================================================
[2026-08-31 02:11:24,970.970 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:11:24
[2026-08-31 02:11:25,552.552 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:11:25,801.801 INFO    ] Initializing speech engine...
[2026-08-31 02:11:25,823.823 INFO    ] 2026-08-31 02:11:25
[2026-08-31 02:11:26,078.078 INFO    ] 2026-08-31 02:11:26
[2026-08-31 02:11:26,113.113 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:11:26,347.347 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:11:26,374.374 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:11:26,608.608 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:11:26,644.644 INFO    ] time= 31/08/2026 02:11:26
[2026-08-31 02:11:26,650.650 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:11:26,667.667 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:11:26,801.801 INFO    ] No existing commands found in stream
[2026-08-31 02:11:31,812.812 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:11:31,816.816 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-08-31 02:11:33,525.525 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 02:11:33,528.528 INFO    ] Checking for system updates...
[2026-08-31 02:11:33,568.568 INFO    ] 200
[2026-08-31 02:11:33,570.570 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:11:33,622.622 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:11:33,625.625 INFO    ] No update needed
[2026-08-31 02:11:33,628.628 INFO    ] Checking for camera pi updates...
[2026-08-31 02:11:33,665.665 INFO    ] 200
[2026-08-31 02:11:33,668.668 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:11:33,708.708 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:11:33,795.795 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:11:33,798.798 INFO    ] No camera update needed
[2026-08-31 02:11:33,800.800 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:11:33,803.803 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:11:33,808.808 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:11:33,813.813 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:11:35,857.857 INFO    ] ================================================
[2026-08-31 02:11:35,872.872 INFO    ] Launching Daemon at Mon Aug 31 02:11:35 IST 2026
[2026-08-31 02:11:35,883.883 INFO    ] ================================================
[2026-08-31 02:11:36,465.465 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:11:36
[2026-08-31 02:11:37,067.067 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:11:37,332.332 INFO    ] Initializing speech engine...
[2026-08-31 02:11:37,346.346 INFO    ] 2026-08-31 02:11:37
[2026-08-31 02:11:37,640.640 INFO    ] 2026-08-31 02:11:37
[2026-08-31 02:11:37,676.676 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:11:37,905.905 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:11:37,913.913 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:11:38,103.103 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:11:38,156.156 INFO    ] time= 31/08/2026 02:11:38
[2026-08-31 02:11:38,206.206 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:11:38,254.254 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:11:38,389.389 INFO    ] No existing commands found in stream
[2026-08-31 02:11:43,416.416 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:11:43,419.419 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-08-31 02:11:47,046.046 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 02:11:47,049.049 INFO    ] Checking for system updates...
[2026-08-31 02:11:47,087.087 INFO    ] 200
[2026-08-31 02:11:47,090.090 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:11:47,146.146 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:11:47,149.149 INFO    ] No update needed
[2026-08-31 02:11:47,151.151 INFO    ] Checking for camera pi updates...
[2026-08-31 02:11:47,190.190 INFO    ] 200
[2026-08-31 02:11:47,193.193 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:11:47,240.240 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:11:47,356.356 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:11:47,359.359 INFO    ] No camera update needed
[2026-08-31 02:11:47,362.362 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:11:47,364.364 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:11:47,371.371 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:11:47,377.377 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:11:49,419.419 INFO    ] ================================================
[2026-08-31 02:11:49,434.434 INFO    ] Launching Daemon at Mon Aug 31 02:11:49 IST 2026
[2026-08-31 02:11:49,445.445 INFO    ] ================================================
[2026-08-31 02:11:50,013.013 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:11:50
[2026-08-31 02:11:50,594.594 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:11:50,852.852 INFO    ] Initializing speech engine...
[2026-08-31 02:11:50,868.868 INFO    ] 2026-08-31 02:11:50
[2026-08-31 02:11:51,156.156 INFO    ] 2026-08-31 02:11:51
[2026-08-31 02:11:51,191.191 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:11:51,395.395 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:11:51,455.455 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:11:51,674.674 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:11:51,725.725 INFO    ] time= 31/08/2026 02:11:51
[2026-08-31 02:11:51,732.732 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:11:51,750.750 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:11:51,885.885 INFO    ] No existing commands found in stream
[2026-08-31 02:11:56,896.896 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:11:56,899.899 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-08-31 02:12:00,320.320 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 02:12:00,322.322 INFO    ] Checking for system updates...
[2026-08-31 02:12:00,358.358 INFO    ] 200
[2026-08-31 02:12:00,360.360 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:12:00,412.412 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:12:00,415.415 INFO    ] No update needed
[2026-08-31 02:12:00,417.417 INFO    ] Checking for camera pi updates...
[2026-08-31 02:12:00,451.451 INFO    ] 200
[2026-08-31 02:12:00,453.453 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:12:00,493.493 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:12:00,675.675 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:12:00,678.678 INFO    ] No camera update needed
[2026-08-31 02:12:00,680.680 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:12:00,682.682 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:12:00,688.688 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:12:00,693.693 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:12:02,736.736 INFO    ] ================================================
[2026-08-31 02:12:02,753.753 INFO    ] Launching Daemon at Mon Aug 31 02:12:02 IST 2026
[2026-08-31 02:12:02,765.765 INFO    ] ================================================
[2026-08-31 02:12:03,419.419 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:12:03
[2026-08-31 02:12:04,042.042 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:12:04,321.321 INFO    ] Initializing speech engine...
[2026-08-31 02:12:04,334.334 INFO    ] 2026-08-31 02:12:04
[2026-08-31 02:12:04,595.595 INFO    ] 2026-08-31 02:12:04
[2026-08-31 02:12:04,648.648 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:12:04,936.936 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:12:04,943.943 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:12:05,164.164 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:12:05,184.184 INFO    ] time= 31/08/2026 02:12:05
[2026-08-31 02:12:05,187.187 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:12:05,200.200 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:12:05,273.273 INFO    ] No existing commands found in stream
[2026-08-31 02:12:10,283.283 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:12:10,286.286 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-08-31 02:12:14,178.178 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 02:12:14,181.181 INFO    ] Checking for system updates...
[2026-08-31 02:12:14,216.216 INFO    ] 200
[2026-08-31 02:12:14,219.219 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:12:14,280.280 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:12:14,283.283 INFO    ] No update needed
[2026-08-31 02:12:14,285.285 INFO    ] Checking for camera pi updates...
[2026-08-31 02:12:14,318.318 INFO    ] 200
[2026-08-31 02:12:14,321.321 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:12:14,361.361 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:12:14,459.459 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:12:14,461.461 INFO    ] No camera update needed
[2026-08-31 02:12:14,464.464 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:12:14,466.466 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:12:14,471.471 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:12:14,476.476 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:12:16,517.517 INFO    ] ================================================
[2026-08-31 02:12:16,533.533 INFO    ] Launching Daemon at Mon Aug 31 02:12:16 IST 2026
[2026-08-31 02:12:16,544.544 INFO    ] ================================================
[2026-08-31 02:12:17,178.178 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:12:17
[2026-08-31 02:12:17,813.813 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:12:18,080.080 INFO    ] Initializing speech engine...
[2026-08-31 02:12:18,089.089 INFO    ] 2026-08-31 02:12:18
[2026-08-31 02:12:18,334.334 INFO    ] 2026-08-31 02:12:18
[2026-08-31 02:12:18,370.370 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:12:18,631.631 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:12:18,636.636 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:12:18,893.893 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:12:18,919.919 INFO    ] time= 31/08/2026 02:12:18
[2026-08-31 02:12:18,947.947 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:12:18,955.955 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:12:19,057.057 INFO    ] No existing commands found in stream
[2026-08-31 02:12:24,077.077 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:12:24,080.080 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-08-31 02:12:27,857.857 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 02:12:27,860.860 INFO    ] Checking for system updates...
[2026-08-31 02:12:27,896.896 INFO    ] 200
[2026-08-31 02:12:27,899.899 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:12:27,953.953 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:12:27,955.955 INFO    ] No update needed
[2026-08-31 02:12:27,958.958 INFO    ] Checking for camera pi updates...
[2026-08-31 02:12:27,992.992 INFO    ] 200
[2026-08-31 02:12:27,995.995 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:12:28,040.040 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:12:28,117.117 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:12:28,120.120 INFO    ] No camera update needed
[2026-08-31 02:12:28,122.122 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:12:28,124.124 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:12:28,130.130 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:12:28,135.135 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:12:30,176.176 INFO    ] ================================================
[2026-08-31 02:12:30,191.191 INFO    ] Launching Daemon at Mon Aug 31 02:12:30 IST 2026
[2026-08-31 02:12:30,202.202 INFO    ] ================================================
[2026-08-31 02:12:30,806.806 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:12:30
[2026-08-31 02:12:31,418.418 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:12:31,697.697 INFO    ] Initializing speech engine...
[2026-08-31 02:12:31,707.707 INFO    ] 2026-08-31 02:12:31
[2026-08-31 02:12:31,994.994 INFO    ] 2026-08-31 02:12:31
[2026-08-31 02:12:32,043.043 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:12:32,246.246 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:12:32,265.265 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:12:32,492.492 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:12:32,527.527 INFO    ] time= 31/08/2026 02:12:32
[2026-08-31 02:12:32,573.573 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:12:32,618.618 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:12:32,721.721 INFO    ] No existing commands found in stream
[2026-08-31 02:12:37,733.733 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:12:37,736.736 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-08-31 02:12:41,101.101 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 02:12:41,104.104 INFO    ] Checking for system updates...
[2026-08-31 02:12:41,141.141 INFO    ] 200
[2026-08-31 02:12:41,144.144 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:12:41,196.196 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:12:41,199.199 INFO    ] No update needed
[2026-08-31 02:12:41,202.202 INFO    ] Checking for camera pi updates...
[2026-08-31 02:12:41,236.236 INFO    ] 200
[2026-08-31 02:12:41,239.239 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:12:41,281.281 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:12:41,358.358 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:12:41,361.361 INFO    ] No camera update needed
[2026-08-31 02:12:41,363.363 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:12:41,366.366 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:12:41,372.372 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:12:41,377.377 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:12:43,420.420 INFO    ] ================================================
[2026-08-31 02:12:43,436.436 INFO    ] Launching Daemon at Mon Aug 31 02:12:43 IST 2026
[2026-08-31 02:12:43,447.447 INFO    ] ================================================
[2026-08-31 02:12:44,011.011 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:12:44
[2026-08-31 02:12:44,592.592 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:12:44,835.835 INFO    ] Initializing speech engine...
[2026-08-31 02:12:44,843.843 INFO    ] 2026-08-31 02:12:44
[2026-08-31 02:12:45,116.116 INFO    ] 2026-08-31 02:12:45
[2026-08-31 02:12:45,152.152 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:12:45,409.409 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:12:45,419.419 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:12:45,628.628 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:12:45,680.680 INFO    ] time= 31/08/2026 02:12:45
[2026-08-31 02:12:45,686.686 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:12:45,707.707 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:12:45,836.836 INFO    ] No existing commands found in stream
[2026-08-31 02:12:50,849.849 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:12:50,852.852 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-08-31 02:12:52,564.564 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 02:12:52,566.566 INFO    ] Checking for system updates...
[2026-08-31 02:12:52,604.604 INFO    ] 200
[2026-08-31 02:12:52,607.607 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:12:52,659.659 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:12:52,661.661 INFO    ] No update needed
[2026-08-31 02:12:52,663.663 INFO    ] Checking for camera pi updates...
[2026-08-31 02:12:52,700.700 INFO    ] 200
[2026-08-31 02:12:52,702.702 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:12:52,742.742 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:12:52,853.853 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:12:52,855.855 INFO    ] No camera update needed
[2026-08-31 02:12:52,857.857 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:12:52,860.860 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:12:52,865.865 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:12:52,870.870 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:12:54,913.913 INFO    ] ================================================
[2026-08-31 02:12:54,929.929 INFO    ] Launching Daemon at Mon Aug 31 02:12:54 IST 2026
[2026-08-31 02:12:54,940.940 INFO    ] ================================================
[2026-08-31 02:12:55,521.521 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:12:55
[2026-08-31 02:12:56,117.117 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:12:56,392.392 INFO    ] Initializing speech engine...
[2026-08-31 02:12:56,398.398 INFO    ] 2026-08-31 02:12:56
[2026-08-31 02:12:56,658.658 INFO    ] 2026-08-31 02:12:56
[2026-08-31 02:12:56,688.688 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:12:56,996.996 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:12:57,001.001 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:12:57,196.196 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:12:57,212.212 INFO    ] time= 31/08/2026 02:12:57
[2026-08-31 02:12:57,221.221 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:12:57,246.246 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:12:57,358.358 INFO    ] No existing commands found in stream
[2026-08-31 02:13:02,390.390 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:13:02,393.393 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-08-31 02:13:04,403.403 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 02:13:04,406.406 INFO    ] Checking for system updates...
[2026-08-31 02:13:04,442.442 INFO    ] 200
[2026-08-31 02:13:04,444.444 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:13:04,502.502 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:13:04,504.504 INFO    ] No update needed
[2026-08-31 02:13:04,507.507 INFO    ] Checking for camera pi updates...
[2026-08-31 02:13:04,547.547 INFO    ] 200
[2026-08-31 02:13:04,549.549 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:13:04,590.590 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:13:04,639.639 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:13:04,641.641 INFO    ] No camera update needed
[2026-08-31 02:13:04,644.644 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:13:04,646.646 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:13:04,652.652 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:13:04,657.657 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:13:06,700.700 INFO    ] ================================================
[2026-08-31 02:13:06,718.718 INFO    ] Launching Daemon at Mon Aug 31 02:13:06 IST 2026
[2026-08-31 02:13:06,729.729 INFO    ] ================================================
[2026-08-31 02:13:07,352.352 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:13:07
[2026-08-31 02:13:08,001.001 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:13:08,295.295 INFO    ] Initializing speech engine...
[2026-08-31 02:13:08,300.300 INFO    ] 2026-08-31 02:13:08
[2026-08-31 02:13:08,582.582 INFO    ] 2026-08-31 02:13:08
[2026-08-31 02:13:08,627.627 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:13:08,874.874 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:13:08,881.881 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:13:09,041.041 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:13:09,045.045 INFO    ] time= 31/08/2026 02:13:09
[2026-08-31 02:13:09,079.079 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:13:09,130.130 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:13:09,286.286 INFO    ] No existing commands found in stream
[2026-08-31 02:13:14,315.315 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:13:14,318.318 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-08-31 02:13:18,138.138 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 02:13:18,141.141 INFO    ] Checking for system updates...
[2026-08-31 02:13:18,175.175 INFO    ] 200
[2026-08-31 02:13:18,178.178 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:13:18,235.235 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:13:18,237.237 INFO    ] No update needed
[2026-08-31 02:13:18,240.240 INFO    ] Checking for camera pi updates...
[2026-08-31 02:13:18,273.273 INFO    ] 200
[2026-08-31 02:13:18,275.275 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:13:18,317.317 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:13:18,400.400 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:13:18,402.402 INFO    ] No camera update needed
[2026-08-31 02:13:18,404.404 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:13:18,407.407 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:13:18,412.412 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:13:18,417.417 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:13:20,457.457 INFO    ] ================================================
[2026-08-31 02:13:20,472.472 INFO    ] Launching Daemon at Mon Aug 31 02:13:20 IST 2026
[2026-08-31 02:13:20,483.483 INFO    ] ================================================
[2026-08-31 02:13:21,062.062 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:13:21
[2026-08-31 02:13:21,664.664 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:13:21,934.934 INFO    ] Initializing speech engine...
[2026-08-31 02:13:21,944.944 INFO    ] 2026-08-31 02:13:21
[2026-08-31 02:13:22,194.194 INFO    ] 2026-08-31 02:13:22
[2026-08-31 02:13:22,229.229 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:13:22,480.480 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:13:22,491.491 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:13:22,743.743 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:13:22,750.750 INFO    ] time= 31/08/2026 02:13:22
[2026-08-31 02:13:22,765.765 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:13:22,772.772 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:13:22,902.902 INFO    ] No existing commands found in stream
[2026-08-31 02:13:27,918.918 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:13:27,921.921 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-08-31 02:13:28,485.485 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 02:13:28,487.487 INFO    ] Checking for system updates...
[2026-08-31 02:13:28,523.523 INFO    ] 200
[2026-08-31 02:13:28,525.525 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:13:28,582.582 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:13:28,585.585 INFO    ] No update needed
[2026-08-31 02:13:28,588.588 INFO    ] Checking for camera pi updates...
[2026-08-31 02:13:28,621.621 INFO    ] 200
[2026-08-31 02:13:28,624.624 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:13:28,664.664 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:13:28,753.753 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:13:28,755.755 INFO    ] No camera update needed
[2026-08-31 02:13:28,758.758 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:13:28,760.760 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:13:28,765.765 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:13:28,770.770 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:13:30,812.812 INFO    ] ================================================
[2026-08-31 02:13:30,828.828 INFO    ] Launching Daemon at Mon Aug 31 02:13:30 IST 2026
[2026-08-31 02:13:30,838.838 INFO    ] ================================================
[2026-08-31 02:13:31,402.402 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:13:31
[2026-08-31 02:13:31,991.991 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:13:32,265.265 INFO    ] Initializing speech engine...
[2026-08-31 02:13:32,292.292 INFO    ] 2026-08-31 02:13:32
[2026-08-31 02:13:32,555.555 INFO    ] 2026-08-31 02:13:32
[2026-08-31 02:13:32,594.594 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:13:32,805.805 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:13:32,863.863 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:13:33,054.054 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:13:33,115.115 INFO    ] time= 31/08/2026 02:13:33
[2026-08-31 02:13:33,155.155 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:13:33,174.174 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:13:33,274.274 INFO    ] No existing commands found in stream
[2026-08-31 02:13:38,285.285 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:13:38,288.288 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-08-31 02:13:40,568.568 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 02:13:40,571.571 INFO    ] Checking for system updates...
[2026-08-31 02:13:40,607.607 INFO    ] 200
[2026-08-31 02:13:40,610.610 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:13:40,665.665 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:13:40,668.668 INFO    ] No update needed
[2026-08-31 02:13:40,670.670 INFO    ] Checking for camera pi updates...
[2026-08-31 02:13:40,704.704 INFO    ] 200
[2026-08-31 02:13:40,706.706 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:13:40,754.754 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:13:40,856.856 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:13:40,859.859 INFO    ] No camera update needed
[2026-08-31 02:13:40,861.861 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:13:40,863.863 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:13:40,869.869 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:13:40,874.874 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:13:42,914.914 INFO    ] ================================================
[2026-08-31 02:13:42,929.929 INFO    ] Launching Daemon at Mon Aug 31 02:13:42 IST 2026
[2026-08-31 02:13:42,940.940 INFO    ] ================================================
[2026-08-31 02:13:43,505.505 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:13:43
[2026-08-31 02:13:44,085.085 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:13:44,355.355 INFO    ] Initializing speech engine...
[2026-08-31 02:13:44,364.364 INFO    ] 2026-08-31 02:13:44
[2026-08-31 02:13:44,613.613 INFO    ] 2026-08-31 02:13:44
[2026-08-31 02:13:44,680.680 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:13:44,904.904 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:13:44,913.913 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:13:45,116.116 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:13:45,170.170 INFO    ] time= 31/08/2026 02:13:45
[2026-08-31 02:13:45,182.182 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:13:45,198.198 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:13:45,317.317 INFO    ] No existing commands found in stream
[2026-08-31 02:13:50,342.342 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:13:50,344.344 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-08-31 02:13:51,018.018 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 02:13:51,021.021 INFO    ] Checking for system updates...
[2026-08-31 02:13:51,058.058 INFO    ] 200
[2026-08-31 02:13:51,060.060 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:13:51,112.112 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:13:51,114.114 INFO    ] No update needed
[2026-08-31 02:13:51,117.117 INFO    ] Checking for camera pi updates...
[2026-08-31 02:13:51,150.150 INFO    ] 200
[2026-08-31 02:13:51,153.153 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:13:51,193.193 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:13:51,279.279 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:13:51,281.281 INFO    ] No camera update needed
[2026-08-31 02:13:51,283.283 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:13:51,285.285 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:13:51,291.291 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:13:51,296.296 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:13:53,336.336 INFO    ] ================================================
[2026-08-31 02:13:53,351.351 INFO    ] Launching Daemon at Mon Aug 31 02:13:53 IST 2026
[2026-08-31 02:13:53,361.361 INFO    ] ================================================
[2026-08-31 02:13:53,981.981 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:13:53
[2026-08-31 02:13:54,624.624 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:13:54,921.921 INFO    ] Initializing speech engine...
[2026-08-31 02:13:54,929.929 INFO    ] 2026-08-31 02:13:54
[2026-08-31 02:13:55,214.214 INFO    ] 2026-08-31 02:13:55
[2026-08-31 02:13:55,259.259 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:13:55,743.743 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:13:55,762.762 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:13:55,968.968 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:13:56,005.005 INFO    ] time= 31/08/2026 02:13:55
[2026-08-31 02:13:56,060.060 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:13:56,121.121 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:13:56,298.298 INFO    ] No existing commands found in stream
[2026-08-31 02:14:01,323.323 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:14:01,326.326 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-08-31 02:14:05,204.204 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 02:14:05,207.207 INFO    ] Checking for system updates...
[2026-08-31 02:14:05,246.246 INFO    ] 200
[2026-08-31 02:14:05,249.249 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:14:05,301.301 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:14:05,304.304 INFO    ] No update needed
[2026-08-31 02:14:05,306.306 INFO    ] Checking for camera pi updates...
[2026-08-31 02:14:05,340.340 INFO    ] 200
[2026-08-31 02:14:05,343.343 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:14:05,387.387 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:14:05,567.567 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:14:05,569.569 INFO    ] No camera update needed
[2026-08-31 02:14:05,572.572 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:14:05,574.574 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:14:05,580.580 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:14:05,586.586 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:14:07,628.628 INFO    ] ================================================
[2026-08-31 02:14:07,643.643 INFO    ] Launching Daemon at Mon Aug 31 02:14:07 IST 2026
[2026-08-31 02:14:07,653.653 INFO    ] ================================================
[2026-08-31 02:14:08,274.274 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:14:08
[2026-08-31 02:14:08,914.914 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:14:09,206.206 INFO    ] Initializing speech engine...
[2026-08-31 02:14:09,215.215 INFO    ] 2026-08-31 02:14:09
[2026-08-31 02:14:09,492.492 INFO    ] 2026-08-31 02:14:09
[2026-08-31 02:14:09,545.545 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:14:09,791.791 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:14:09,799.799 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:14:10,029.029 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:14:10,036.036 INFO    ] time= 31/08/2026 02:14:10
[2026-08-31 02:14:10,057.057 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:14:10,083.083 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:14:10,190.190 INFO    ] No existing commands found in stream
[2026-08-31 02:14:15,220.220 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:14:15,223.223 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-08-31 02:14:18,861.861 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 02:14:18,864.864 INFO    ] Checking for system updates...
[2026-08-31 02:14:18,901.901 INFO    ] 200
[2026-08-31 02:14:18,903.903 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:14:18,956.956 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:14:18,959.959 INFO    ] No update needed
[2026-08-31 02:14:18,961.961 INFO    ] Checking for camera pi updates...
[2026-08-31 02:14:18,998.998 INFO    ] 200
[2026-08-31 02:14:19,000.000 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:14:19,045.045 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:14:19,133.133 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:14:19,136.136 INFO    ] No camera update needed
[2026-08-31 02:14:19,139.139 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:14:19,141.141 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:14:19,147.147 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:14:19,153.153 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:14:21,195.195 INFO    ] ================================================
[2026-08-31 02:14:21,209.209 INFO    ] Launching Daemon at Mon Aug 31 02:14:21 IST 2026
[2026-08-31 02:14:21,220.220 INFO    ] ================================================
[2026-08-31 02:14:21,839.839 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:14:21
[2026-08-31 02:14:22,479.479 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:14:22,773.773 INFO    ] Initializing speech engine...
[2026-08-31 02:14:22,782.782 INFO    ] 2026-08-31 02:14:22
[2026-08-31 02:14:23,052.052 INFO    ] 2026-08-31 02:14:23
[2026-08-31 02:14:23,106.106 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:14:23,358.358 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:14:23,366.366 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:14:23,599.599 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:14:23,611.611 INFO    ] time= 31/08/2026 02:14:23
[2026-08-31 02:14:23,632.632 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:14:23,659.659 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:14:23,792.792 INFO    ] No existing commands found in stream
[2026-08-31 02:14:28,823.823 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:14:28,826.826 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-08-31 02:14:32,581.581 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 02:14:32,585.585 INFO    ] Checking for system updates...
[2026-08-31 02:14:32,623.623 INFO    ] 200
[2026-08-31 02:14:32,626.626 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:14:32,684.684 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:14:32,687.687 INFO    ] No update needed
[2026-08-31 02:14:32,690.690 INFO    ] Checking for camera pi updates...
[2026-08-31 02:14:32,727.727 INFO    ] 200
[2026-08-31 02:14:32,731.731 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:14:32,775.775 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:14:32,826.826 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:14:32,829.829 INFO    ] No camera update needed
[2026-08-31 02:14:32,832.832 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:14:32,835.835 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:14:32,842.842 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:14:32,847.847 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:14:34,889.889 INFO    ] ================================================
[2026-08-31 02:14:34,904.904 INFO    ] Launching Daemon at Mon Aug 31 02:14:34 IST 2026
[2026-08-31 02:14:34,915.915 INFO    ] ================================================
[2026-08-31 02:14:35,482.482 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:14:35
[2026-08-31 02:14:36,069.069 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:14:36,320.320 INFO    ] Initializing speech engine...
[2026-08-31 02:14:36,328.328 INFO    ] 2026-08-31 02:14:36
[2026-08-31 02:14:36,613.613 INFO    ] 2026-08-31 02:14:36
[2026-08-31 02:14:36,650.650 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:14:36,868.868 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:14:36,931.931 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:14:37,159.159 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:14:37,213.213 INFO    ] time= 31/08/2026 02:14:37
[2026-08-31 02:14:37,225.225 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:14:37,244.244 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:14:37,372.372 INFO    ] No existing commands found in stream
[2026-08-31 02:14:42,400.400 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:14:42,403.403 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-08-31 02:14:49,859.859 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 02:14:49,861.861 INFO    ] Checking for system updates...
[2026-08-31 02:14:49,896.896 INFO    ] 200
[2026-08-31 02:14:49,899.899 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:14:49,951.951 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:14:49,954.954 INFO    ] No update needed
[2026-08-31 02:14:49,956.956 INFO    ] Checking for camera pi updates...
[2026-08-31 02:14:49,995.995 INFO    ] 200
[2026-08-31 02:14:49,998.998 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:14:50,038.038 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:14:50,134.134 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:14:50,137.137 INFO    ] No camera update needed
[2026-08-31 02:14:50,139.139 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:14:50,141.141 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:14:50,147.147 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:14:50,151.151 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:14:52,197.197 INFO    ] ================================================
[2026-08-31 02:14:52,212.212 INFO    ] Launching Daemon at Mon Aug 31 02:14:52 IST 2026
[2026-08-31 02:14:52,222.222 INFO    ] ================================================
[2026-08-31 02:14:52,841.841 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:14:52
[2026-08-31 02:14:53,476.476 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:14:53,767.767 INFO    ] Initializing speech engine...
[2026-08-31 02:14:53,777.777 INFO    ] 2026-08-31 02:14:53
[2026-08-31 02:14:54,045.045 INFO    ] 2026-08-31 02:14:54
[2026-08-31 02:14:54,105.105 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:14:54,357.357 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:14:54,364.364 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:14:54,601.601 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:14:54,608.608 INFO    ] time= 31/08/2026 02:14:54
[2026-08-31 02:14:54,626.626 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:14:54,654.654 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:14:54,819.819 INFO    ] No existing commands found in stream
[2026-08-31 02:14:59,845.845 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:14:59,848.848 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-08-31 02:15:02,625.625 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 02:15:02,629.629 INFO    ] Checking for system updates...
[2026-08-31 02:15:02,674.674 INFO    ] 200
[2026-08-31 02:15:02,677.677 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:15:02,739.739 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:15:02,742.742 INFO    ] No update needed
[2026-08-31 02:15:02,745.745 INFO    ] Checking for camera pi updates...
[2026-08-31 02:15:02,793.793 INFO    ] 200
[2026-08-31 02:15:02,795.795 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:15:02,842.842 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:15:02,937.937 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:15:02,940.940 INFO    ] No camera update needed
[2026-08-31 02:15:02,943.943 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:15:02,946.946 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:15:02,953.953 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:15:02,959.959 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:15:05,002.002 INFO    ] ================================================
[2026-08-31 02:15:05,017.017 INFO    ] Launching Daemon at Mon Aug 31 02:15:05 IST 2026
[2026-08-31 02:15:05,027.027 INFO    ] ================================================
[2026-08-31 02:15:05,595.595 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:15:05
[2026-08-31 02:15:06,183.183 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:15:06,441.441 INFO    ] Initializing speech engine...
[2026-08-31 02:15:06,466.466 INFO    ] 2026-08-31 02:15:06
[2026-08-31 02:15:06,734.734 INFO    ] 2026-08-31 02:15:06
[2026-08-31 02:15:06,770.770 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:15:06,963.963 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:15:06,977.977 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:15:07,154.154 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:15:07,170.170 INFO    ] time= 31/08/2026 02:15:07
[2026-08-31 02:15:07,175.175 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:15:07,183.183 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:15:07,295.295 INFO    ] No existing commands found in stream
[2026-08-31 02:15:12,320.320 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:15:12,323.323 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-08-31 02:15:15,648.648 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 02:15:15,651.651 INFO    ] Checking for system updates...
[2026-08-31 02:15:15,687.687 INFO    ] 200
[2026-08-31 02:15:15,690.690 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:15:15,750.750 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:15:15,753.753 INFO    ] No update needed
[2026-08-31 02:15:15,755.755 INFO    ] Checking for camera pi updates...
[2026-08-31 02:15:15,803.803 INFO    ] 200
[2026-08-31 02:15:15,806.806 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:15:15,846.846 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:15:15,927.927 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:15:15,930.930 INFO    ] No camera update needed
[2026-08-31 02:15:15,932.932 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:15:15,934.934 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:15:15,940.940 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:15:15,945.945 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:15:17,985.985 INFO    ] ================================================
[2026-08-31 02:15:18,000.000 INFO    ] Launching Daemon at Mon Aug 31 02:15:17 IST 2026
[2026-08-31 02:15:18,010.010 INFO    ] ================================================
[2026-08-31 02:15:18,641.641 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:15:18
[2026-08-31 02:15:19,290.290 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:15:19,588.588 INFO    ] Initializing speech engine...
[2026-08-31 02:15:19,595.595 INFO    ] 2026-08-31 02:15:19
[2026-08-31 02:15:19,879.879 INFO    ] 2026-08-31 02:15:19
[2026-08-31 02:15:19,925.925 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:15:20,255.255 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:15:20,287.287 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:15:20,468.468 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:15:20,476.476 INFO    ] time= 31/08/2026 02:15:20
[2026-08-31 02:15:20,487.487 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:15:20,539.539 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:15:20,684.684 INFO    ] No existing commands found in stream
[2026-08-31 02:15:25,715.715 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:15:25,718.718 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-08-31 02:15:27,387.387 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 02:15:27,390.390 INFO    ] Checking for system updates...
[2026-08-31 02:15:27,426.426 INFO    ] 200
[2026-08-31 02:15:27,429.429 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:15:27,481.481 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:15:27,483.483 INFO    ] No update needed
[2026-08-31 02:15:27,485.485 INFO    ] Checking for camera pi updates...
[2026-08-31 02:15:27,519.519 INFO    ] 200
[2026-08-31 02:15:27,521.521 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:15:27,561.561 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:15:27,670.670 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:15:27,672.672 INFO    ] No camera update needed
[2026-08-31 02:15:27,674.674 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:15:27,676.676 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:15:27,682.682 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:15:27,687.687 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:15:29,726.726 INFO    ] ================================================
[2026-08-31 02:15:29,742.742 INFO    ] Launching Daemon at Mon Aug 31 02:15:29 IST 2026
[2026-08-31 02:15:29,752.752 INFO    ] ================================================
[2026-08-31 02:15:30,342.342 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:15:30
[2026-08-31 02:15:30,961.961 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:15:31,234.234 INFO    ] Initializing speech engine...
[2026-08-31 02:15:31,245.245 INFO    ] 2026-08-31 02:15:31
[2026-08-31 02:15:31,491.491 INFO    ] 2026-08-31 02:15:31
[2026-08-31 02:15:31,527.527 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:15:31,784.784 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:15:31,788.788 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:15:32,044.044 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:15:32,052.052 INFO    ] time= 31/08/2026 02:15:32
[2026-08-31 02:15:32,069.069 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:15:32,072.072 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:15:32,161.161 INFO    ] No existing commands found in stream
[2026-08-31 02:15:37,171.171 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:15:37,174.174 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-08-31 02:15:39,405.405 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 02:15:39,408.408 INFO    ] Checking for system updates...
[2026-08-31 02:15:39,443.443 INFO    ] 200
[2026-08-31 02:15:39,445.445 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:15:39,504.504 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:15:39,506.506 INFO    ] No update needed
[2026-08-31 02:15:39,508.508 INFO    ] Checking for camera pi updates...
[2026-08-31 02:15:39,544.544 INFO    ] 200
[2026-08-31 02:15:39,547.547 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:15:39,587.587 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:15:39,671.671 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:15:39,673.673 INFO    ] No camera update needed
[2026-08-31 02:15:39,676.676 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:15:39,678.678 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:15:39,683.683 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:15:39,689.689 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:15:41,732.732 INFO    ] ================================================
[2026-08-31 02:15:41,747.747 INFO    ] Launching Daemon at Mon Aug 31 02:15:41 IST 2026
[2026-08-31 02:15:41,758.758 INFO    ] ================================================
[2026-08-31 02:15:42,337.337 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:15:42
[2026-08-31 02:15:42,934.934 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:15:43,206.206 INFO    ] Initializing speech engine...
[2026-08-31 02:15:43,214.214 INFO    ] 2026-08-31 02:15:43
[2026-08-31 02:15:43,464.464 INFO    ] 2026-08-31 02:15:43
[2026-08-31 02:15:43,499.499 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:15:43,756.756 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:15:43,762.762 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:15:44,010.010 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:15:44,020.020 INFO    ] time= 31/08/2026 02:15:44
[2026-08-31 02:15:44,036.036 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:15:44,055.055 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:15:44,193.193 INFO    ] No existing commands found in stream
[2026-08-31 02:15:49,224.224 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:15:49,226.226 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-08-31 02:15:51,059.059 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 02:15:51,062.062 INFO    ] Checking for system updates...
[2026-08-31 02:15:51,100.100 INFO    ] 200
[2026-08-31 02:15:51,103.103 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:15:51,155.155 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:15:51,158.158 INFO    ] No update needed
[2026-08-31 02:15:51,160.160 INFO    ] Checking for camera pi updates...
[2026-08-31 02:15:51,194.194 INFO    ] 200
[2026-08-31 02:15:51,197.197 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:15:51,238.238 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:15:51,333.333 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:15:51,335.335 INFO    ] No camera update needed
[2026-08-31 02:15:51,338.338 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:15:51,341.341 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:15:51,347.347 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:15:51,352.352 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:15:53,393.393 INFO    ] ================================================
[2026-08-31 02:15:53,408.408 INFO    ] Launching Daemon at Mon Aug 31 02:15:53 IST 2026
[2026-08-31 02:15:53,419.419 INFO    ] ================================================
[2026-08-31 02:15:53,985.985 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:15:53
[2026-08-31 02:15:54,566.566 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:15:54,837.837 INFO    ] Initializing speech engine...
[2026-08-31 02:15:54,846.846 INFO    ] 2026-08-31 02:15:54
[2026-08-31 02:15:55,096.096 INFO    ] 2026-08-31 02:15:55
[2026-08-31 02:15:55,130.130 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:15:55,390.390 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:15:55,399.399 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:15:55,589.589 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:15:55,643.643 INFO    ] time= 31/08/2026 02:15:55
[2026-08-31 02:15:55,671.671 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:15:55,687.687 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:15:55,844.844 INFO    ] No existing commands found in stream
[2026-08-31 02:16:00,869.869 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:16:00,872.872 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-08-31 02:16:03,761.761 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 02:16:03,764.764 INFO    ] Checking for system updates...
[2026-08-31 02:16:03,800.800 INFO    ] 200
[2026-08-31 02:16:03,803.803 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:16:03,861.861 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:16:03,864.864 INFO    ] No update needed
[2026-08-31 02:16:03,867.867 INFO    ] Checking for camera pi updates...
[2026-08-31 02:16:03,902.902 INFO    ] 200
[2026-08-31 02:16:03,905.905 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:16:03,949.949 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:16:04,095.095 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:16:04,097.097 INFO    ] No camera update needed
[2026-08-31 02:16:04,100.100 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:16:04,102.102 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:16:04,107.107 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:16:04,112.112 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:16:06,154.154 INFO    ] ================================================
[2026-08-31 02:16:06,170.170 INFO    ] Launching Daemon at Mon Aug 31 02:16:06 IST 2026
[2026-08-31 02:16:06,181.181 INFO    ] ================================================
[2026-08-31 02:16:06,760.760 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:16:06
[2026-08-31 02:16:07,363.363 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:16:07,640.640 INFO    ] Initializing speech engine...
[2026-08-31 02:16:07,646.646 INFO    ] 2026-08-31 02:16:07
[2026-08-31 02:16:07,907.907 INFO    ] 2026-08-31 02:16:07
[2026-08-31 02:16:07,962.962 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:16:08,230.230 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:16:08,252.252 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:16:08,447.447 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:16:08,465.465 INFO    ] time= 31/08/2026 02:16:08
[2026-08-31 02:16:08,473.473 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:16:08,499.499 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:16:08,583.583 INFO    ] No existing commands found in stream
[2026-08-31 02:16:13,593.593 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:16:13,596.596 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-08-31 02:16:15,540.540 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 02:16:15,543.543 INFO    ] Checking for system updates...
[2026-08-31 02:16:15,581.581 INFO    ] 200
[2026-08-31 02:16:15,583.583 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:16:15,641.641 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:16:15,643.643 INFO    ] No update needed
[2026-08-31 02:16:15,646.646 INFO    ] Checking for camera pi updates...
[2026-08-31 02:16:15,682.682 INFO    ] 200
[2026-08-31 02:16:15,684.684 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:16:15,725.725 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:16:15,900.900 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:16:15,903.903 INFO    ] No camera update needed
[2026-08-31 02:16:15,905.905 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:16:15,908.908 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:16:15,913.913 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:16:15,918.918 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:16:17,959.959 INFO    ] ================================================
[2026-08-31 02:16:17,975.975 INFO    ] Launching Daemon at Mon Aug 31 02:16:17 IST 2026
[2026-08-31 02:16:17,986.986 INFO    ] ================================================
[2026-08-31 02:16:18,555.555 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:16:18
[2026-08-31 02:16:19,142.142 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:16:19,412.412 INFO    ] Initializing speech engine...
[2026-08-31 02:16:19,420.420 INFO    ] 2026-08-31 02:16:19
[2026-08-31 02:16:19,671.671 INFO    ] 2026-08-31 02:16:19
[2026-08-31 02:16:19,706.706 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:16:19,963.963 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:16:19,972.972 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:16:20,200.200 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:16:20,236.236 INFO    ] time= 31/08/2026 02:16:20
[2026-08-31 02:16:20,243.243 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:16:20,263.263 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:16:20,388.388 INFO    ] No existing commands found in stream
[2026-08-31 02:16:25,405.405 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:16:25,408.408 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-08-31 02:16:29,740.740 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 02:16:29,742.742 INFO    ] Checking for system updates...
[2026-08-31 02:16:29,778.778 INFO    ] 200
[2026-08-31 02:16:29,781.781 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:16:29,840.840 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:16:29,843.843 INFO    ] No update needed
[2026-08-31 02:16:29,846.846 INFO    ] Checking for camera pi updates...
[2026-08-31 02:16:29,881.881 INFO    ] 200
[2026-08-31 02:16:29,884.884 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:16:29,929.929 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:16:30,014.014 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:16:30,017.017 INFO    ] No camera update needed
[2026-08-31 02:16:30,019.019 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:16:30,021.021 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:16:30,027.027 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:16:30,032.032 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:16:32,075.075 INFO    ] ================================================
[2026-08-31 02:16:32,091.091 INFO    ] Launching Daemon at Mon Aug 31 02:16:32 IST 2026
[2026-08-31 02:16:32,104.104 INFO    ] ================================================
[2026-08-31 02:16:32,720.720 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:16:32
[2026-08-31 02:16:33,363.363 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:16:33,656.656 INFO    ] Initializing speech engine...
[2026-08-31 02:16:33,662.662 INFO    ] 2026-08-31 02:16:33
[2026-08-31 02:16:33,919.919 INFO    ] 2026-08-31 02:16:33
[2026-08-31 02:16:33,989.989 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:16:34,276.276 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:16:34,282.282 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:16:34,490.490 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:16:34,499.499 INFO    ] time= 31/08/2026 02:16:34
[2026-08-31 02:16:34,525.525 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:16:34,534.534 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:16:34,671.671 INFO    ] No existing commands found in stream
[2026-08-31 02:16:39,701.701 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:16:39,705.705 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-08-31 02:16:41,740.740 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 02:16:41,742.742 INFO    ] Checking for system updates...
[2026-08-31 02:16:41,781.781 INFO    ] 200
[2026-08-31 02:16:41,784.784 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:16:41,841.841 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:16:41,843.843 INFO    ] No update needed
[2026-08-31 02:16:41,846.846 INFO    ] Checking for camera pi updates...
[2026-08-31 02:16:41,880.880 INFO    ] 200
[2026-08-31 02:16:41,883.883 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:16:41,924.924 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:16:42,004.004 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:16:42,006.006 INFO    ] No camera update needed
[2026-08-31 02:16:42,009.009 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:16:42,012.012 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:16:42,017.017 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:16:42,023.023 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:16:44,065.065 INFO    ] ================================================
[2026-08-31 02:16:44,080.080 INFO    ] Launching Daemon at Mon Aug 31 02:16:44 IST 2026
[2026-08-31 02:16:44,090.090 INFO    ] ================================================
[2026-08-31 02:16:44,711.711 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:16:44
[2026-08-31 02:16:45,349.349 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:16:45,638.638 INFO    ] Initializing speech engine...
[2026-08-31 02:16:45,648.648 INFO    ] 2026-08-31 02:16:45
[2026-08-31 02:16:45,918.918 INFO    ] 2026-08-31 02:16:45
[2026-08-31 02:16:45,977.977 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:16:46,210.210 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:16:46,216.216 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:16:46,452.452 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:16:46,481.481 INFO    ] time= 31/08/2026 02:16:46
[2026-08-31 02:16:46,498.498 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:16:46,507.507 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:16:46,644.644 INFO    ] No existing commands found in stream
[2026-08-31 02:16:51,666.666 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:16:51,669.669 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-08-31 02:16:55,008.008 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 02:16:55,011.011 INFO    ] Checking for system updates...
[2026-08-31 02:16:55,050.050 INFO    ] 200
[2026-08-31 02:16:55,053.053 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:16:55,112.112 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:16:55,115.115 INFO    ] No update needed
[2026-08-31 02:16:55,118.118 INFO    ] Checking for camera pi updates...
[2026-08-31 02:16:55,153.153 INFO    ] 200
[2026-08-31 02:16:55,156.156 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:16:55,200.200 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:16:55,294.294 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:16:55,297.297 INFO    ] No camera update needed
[2026-08-31 02:16:55,300.300 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:16:55,303.303 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:16:55,309.309 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:16:55,314.314 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:16:57,356.356 INFO    ] ================================================
[2026-08-31 02:16:57,371.371 INFO    ] Launching Daemon at Mon Aug 31 02:16:57 IST 2026
[2026-08-31 02:16:57,382.382 INFO    ] ================================================
[2026-08-31 02:16:57,961.961 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:16:57
[2026-08-31 02:16:58,554.554 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:16:58,825.825 INFO    ] Initializing speech engine...
[2026-08-31 02:16:58,834.834 INFO    ] 2026-08-31 02:16:58
[2026-08-31 02:16:59,082.082 INFO    ] 2026-08-31 02:16:59
[2026-08-31 02:16:59,118.118 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:16:59,374.374 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:16:59,378.378 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:16:59,595.595 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:16:59,635.635 INFO    ] time= 31/08/2026 02:16:59
[2026-08-31 02:16:59,642.642 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:16:59,658.658 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:16:59,800.800 INFO    ] No existing commands found in stream
[2026-08-31 02:17:04,826.826 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:17:04,829.829 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-08-31 02:17:08,479.479 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 02:17:08,482.482 INFO    ] Checking for system updates...
[2026-08-31 02:17:08,517.517 INFO    ] 200
[2026-08-31 02:17:08,520.520 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:17:08,573.573 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:17:08,576.576 INFO    ] No update needed
[2026-08-31 02:17:08,578.578 INFO    ] Checking for camera pi updates...
[2026-08-31 02:17:08,614.614 INFO    ] 200
[2026-08-31 02:17:08,617.617 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:17:08,657.657 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:17:08,747.747 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:17:08,750.750 INFO    ] No camera update needed
[2026-08-31 02:17:08,752.752 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:17:08,755.755 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:17:08,760.760 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:17:08,765.765 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:17:10,806.806 INFO    ] ================================================
[2026-08-31 02:17:10,821.821 INFO    ] Launching Daemon at Mon Aug 31 02:17:10 IST 2026
[2026-08-31 02:17:10,832.832 INFO    ] ================================================
[2026-08-31 02:17:11,405.405 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:17:11
[2026-08-31 02:17:11,989.989 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:17:12,260.260 INFO    ] Initializing speech engine...
[2026-08-31 02:17:12,269.269 INFO    ] 2026-08-31 02:17:12
[2026-08-31 02:17:12,518.518 INFO    ] 2026-08-31 02:17:12
[2026-08-31 02:17:12,552.552 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:17:12,754.754 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:17:12,813.813 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:17:13,068.068 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:17:13,083.083 INFO    ] time= 31/08/2026 02:17:13
[2026-08-31 02:17:13,089.089 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:17:13,107.107 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:17:13,230.230 INFO    ] No existing commands found in stream
[2026-08-31 02:17:18,252.252 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:17:18,254.254 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-08-31 02:17:21,366.366 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 02:17:21,369.369 INFO    ] Checking for system updates...
[2026-08-31 02:17:21,404.404 INFO    ] 200
[2026-08-31 02:17:21,407.407 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:17:21,460.460 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:17:21,462.462 INFO    ] No update needed
[2026-08-31 02:17:21,464.464 INFO    ] Checking for camera pi updates...
[2026-08-31 02:17:21,498.498 INFO    ] 200
[2026-08-31 02:17:21,500.500 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:17:21,545.545 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:17:21,635.635 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:17:21,637.637 INFO    ] No camera update needed
[2026-08-31 02:17:21,639.639 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:17:21,642.642 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:17:21,647.647 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:17:21,652.652 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:17:23,692.692 INFO    ] ================================================
[2026-08-31 02:17:23,708.708 INFO    ] Launching Daemon at Mon Aug 31 02:17:23 IST 2026
[2026-08-31 02:17:23,720.720 INFO    ] ================================================
[2026-08-31 02:17:24,356.356 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:17:24
[2026-08-31 02:17:25,009.009 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:17:25,307.307 INFO    ] Initializing speech engine...
[2026-08-31 02:17:25,316.316 INFO    ] 2026-08-31 02:17:25
[2026-08-31 02:17:25,605.605 INFO    ] 2026-08-31 02:17:25
[2026-08-31 02:17:25,652.652 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:17:25,905.905 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:17:25,911.911 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:17:26,137.137 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:17:26,152.152 INFO    ] time= 31/08/2026 02:17:26
[2026-08-31 02:17:26,168.168 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:17:26,175.175 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:17:26,307.307 INFO    ] No existing commands found in stream
[2026-08-31 02:17:31,327.327 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:17:31,331.331 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-08-31 02:17:33,326.326 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 02:17:33,329.329 INFO    ] Checking for system updates...
[2026-08-31 02:17:33,369.369 INFO    ] 200
[2026-08-31 02:17:33,372.372 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:17:33,425.425 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:17:33,428.428 INFO    ] No update needed
[2026-08-31 02:17:33,431.431 INFO    ] Checking for camera pi updates...
[2026-08-31 02:17:33,464.464 INFO    ] 200
[2026-08-31 02:17:33,466.466 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:17:33,507.507 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:17:33,597.597 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:17:33,600.600 INFO    ] No camera update needed
[2026-08-31 02:17:33,602.602 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:17:33,604.604 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:17:33,610.610 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:17:33,614.614 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:17:35,658.658 INFO    ] ================================================
[2026-08-31 02:17:35,673.673 INFO    ] Launching Daemon at Mon Aug 31 02:17:35 IST 2026
[2026-08-31 02:17:35,684.684 INFO    ] ================================================
[2026-08-31 02:17:36,326.326 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:17:36
[2026-08-31 02:17:36,985.985 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:17:37,285.285 INFO    ] Initializing speech engine...
[2026-08-31 02:17:37,298.298 INFO    ] 2026-08-31 02:17:37
[2026-08-31 02:17:37,610.610 INFO    ] 2026-08-31 02:17:37
[2026-08-31 02:17:37,697.697 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:17:37,876.876 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:17:37,886.886 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:17:38,121.121 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:17:38,128.128 INFO    ] time= 31/08/2026 02:17:38
[2026-08-31 02:17:38,148.148 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:17:38,177.177 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:17:38,296.296 INFO    ] No existing commands found in stream
[2026-08-31 02:17:43,327.327 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:17:43,330.330 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-08-31 02:17:46,529.529 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 02:17:46,532.532 INFO    ] Checking for system updates...
[2026-08-31 02:17:46,569.569 INFO    ] 200
[2026-08-31 02:17:46,571.571 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:17:46,623.623 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:17:46,626.626 INFO    ] No update needed
[2026-08-31 02:17:46,628.628 INFO    ] Checking for camera pi updates...
[2026-08-31 02:17:46,662.662 INFO    ] 200
[2026-08-31 02:17:46,664.664 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:17:46,710.710 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:17:46,806.806 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:17:46,809.809 INFO    ] No camera update needed
[2026-08-31 02:17:46,811.811 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:17:46,813.813 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:17:46,819.819 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:17:46,824.824 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:17:48,866.866 INFO    ] ================================================
[2026-08-31 02:17:48,881.881 INFO    ] Launching Daemon at Mon Aug 31 02:17:48 IST 2026
[2026-08-31 02:17:48,892.892 INFO    ] ================================================
[2026-08-31 02:17:49,461.461 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:17:49
[2026-08-31 02:17:50,049.049 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:17:50,300.300 INFO    ] Initializing speech engine...
[2026-08-31 02:17:50,323.323 INFO    ] 2026-08-31 02:17:50
[2026-08-31 02:17:50,579.579 INFO    ] 2026-08-31 02:17:50
[2026-08-31 02:17:50,615.615 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:17:50,873.873 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:17:50,882.882 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:17:51,095.095 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:17:51,146.146 INFO    ] time= 31/08/2026 02:17:51
[2026-08-31 02:17:51,152.152 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:17:51,171.171 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:17:51,303.303 INFO    ] No existing commands found in stream
[2026-08-31 02:17:56,316.316 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:17:56,319.319 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-08-31 02:17:58,820.820 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 02:17:58,823.823 INFO    ] Checking for system updates...
[2026-08-31 02:17:58,862.862 INFO    ] 200
[2026-08-31 02:17:58,865.865 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:17:58,917.917 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:17:58,920.920 INFO    ] No update needed
[2026-08-31 02:17:58,922.922 INFO    ] Checking for camera pi updates...
[2026-08-31 02:17:58,959.959 INFO    ] 200
[2026-08-31 02:17:58,962.962 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:17:59,002.002 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:17:59,088.088 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:17:59,090.090 INFO    ] No camera update needed
[2026-08-31 02:17:59,092.092 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:17:59,095.095 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:17:59,100.100 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:17:59,105.105 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:18:01,145.145 INFO    ] ================================================
[2026-08-31 02:18:01,160.160 INFO    ] Launching Daemon at Mon Aug 31 02:18:01 IST 2026
[2026-08-31 02:18:01,171.171 INFO    ] ================================================
[2026-08-31 02:18:01,896.896 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:18:01
[2026-08-31 02:18:02,556.556 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:18:02,900.900 INFO    ] Initializing speech engine...
[2026-08-31 02:18:02,914.914 INFO    ] 2026-08-31 02:18:02
[2026-08-31 02:18:03,192.192 INFO    ] 2026-08-31 02:18:03
[2026-08-31 02:18:03,253.253 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:18:03,511.511 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:18:03,530.530 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:18:03,746.746 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:18:03,762.762 INFO    ] time= 31/08/2026 02:18:03
[2026-08-31 02:18:03,792.792 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:18:03,799.799 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:18:03,904.904 INFO    ] No existing commands found in stream
[2026-08-31 02:18:08,932.932 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:18:08,935.935 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-08-31 02:18:11,166.166 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 02:18:11,169.169 INFO    ] Checking for system updates...
[2026-08-31 02:18:11,204.204 INFO    ] 200
[2026-08-31 02:18:11,206.206 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:18:11,259.259 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:18:11,262.262 INFO    ] No update needed
[2026-08-31 02:18:11,264.264 INFO    ] Checking for camera pi updates...
[2026-08-31 02:18:11,298.298 INFO    ] 200
[2026-08-31 02:18:11,300.300 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:18:11,340.340 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:18:11,421.421 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:18:11,423.423 INFO    ] No camera update needed
[2026-08-31 02:18:11,426.426 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:18:11,428.428 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:18:11,433.433 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:18:11,438.438 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:18:13,486.486 INFO    ] ================================================
[2026-08-31 02:18:13,505.505 INFO    ] Launching Daemon at Mon Aug 31 02:18:13 IST 2026
[2026-08-31 02:18:13,519.519 INFO    ] ================================================
[2026-08-31 02:18:14,096.096 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:18:14
[2026-08-31 02:18:14,708.708 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:18:14,981.981 INFO    ] Initializing speech engine...
[2026-08-31 02:18:14,990.990 INFO    ] 2026-08-31 02:18:14
[2026-08-31 02:18:15,240.240 INFO    ] 2026-08-31 02:18:15
[2026-08-31 02:18:15,275.275 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:18:15,533.533 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:18:15,542.542 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:18:15,777.777 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:18:15,808.808 INFO    ] time= 31/08/2026 02:18:15
[2026-08-31 02:18:15,814.814 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:18:15,835.835 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:18:15,967.967 INFO    ] No existing commands found in stream
[2026-08-31 02:18:20,979.979 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:18:20,982.982 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-08-31 02:18:23,683.683 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 02:18:23,686.686 INFO    ] Checking for system updates...
[2026-08-31 02:18:23,722.722 INFO    ] 200
[2026-08-31 02:18:23,725.725 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:18:23,778.778 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:18:23,781.781 INFO    ] No update needed
[2026-08-31 02:18:23,784.784 INFO    ] Checking for camera pi updates...
[2026-08-31 02:18:23,822.822 INFO    ] 200
[2026-08-31 02:18:23,825.825 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:18:23,865.865 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:18:24,045.045 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:18:24,048.048 INFO    ] No camera update needed
[2026-08-31 02:18:24,051.051 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:18:24,054.054 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:18:24,060.060 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:18:24,065.065 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:18:26,107.107 INFO    ] ================================================
[2026-08-31 02:18:26,122.122 INFO    ] Launching Daemon at Mon Aug 31 02:18:26 IST 2026
[2026-08-31 02:18:26,133.133 INFO    ] ================================================
[2026-08-31 02:18:26,714.714 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:18:26
[2026-08-31 02:18:27,311.311 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:18:27,588.588 INFO    ] Initializing speech engine...
[2026-08-31 02:18:27,592.592 INFO    ] 2026-08-31 02:18:27
[2026-08-31 02:18:27,855.855 INFO    ] 2026-08-31 02:18:27
[2026-08-31 02:18:27,908.908 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:18:28,155.155 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:18:28,162.162 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:18:28,392.392 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:18:28,399.399 INFO    ] time= 31/08/2026 02:18:28
[2026-08-31 02:18:28,417.417 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:18:28,445.445 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:18:28,557.557 INFO    ] No existing commands found in stream
[2026-08-31 02:18:33,581.581 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:18:33,584.584 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-08-31 02:18:37,243.243 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 02:18:37,246.246 INFO    ] Checking for system updates...
[2026-08-31 02:18:37,285.285 INFO    ] 200
[2026-08-31 02:18:37,288.288 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:18:37,343.343 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:18:37,345.345 INFO    ] No update needed
[2026-08-31 02:18:37,348.348 INFO    ] Checking for camera pi updates...
[2026-08-31 02:18:37,382.382 INFO    ] 200
[2026-08-31 02:18:37,385.385 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:18:37,430.430 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:18:37,515.515 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:18:37,517.517 INFO    ] No camera update needed
[2026-08-31 02:18:37,520.520 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:18:37,522.522 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:18:37,527.527 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:18:37,532.532 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:18:39,574.574 INFO    ] ================================================
[2026-08-31 02:18:39,590.590 INFO    ] Launching Daemon at Mon Aug 31 02:18:39 IST 2026
[2026-08-31 02:18:39,601.601 INFO    ] ================================================
[2026-08-31 02:18:40,181.181 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:18:40
[2026-08-31 02:18:40,777.777 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:18:41,055.055 INFO    ] Initializing speech engine...
[2026-08-31 02:18:41,062.062 INFO    ] 2026-08-31 02:18:41
[2026-08-31 02:18:41,324.324 INFO    ] 2026-08-31 02:18:41
[2026-08-31 02:18:41,374.374 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:18:41,597.597 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:18:41,607.607 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:18:41,843.843 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:18:41,870.870 INFO    ] time= 31/08/2026 02:18:41
[2026-08-31 02:18:41,886.886 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:18:41,896.896 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:18:42,024.024 INFO    ] No existing commands found in stream
[2026-08-31 02:18:47,044.044 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:18:47,046.046 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-08-31 02:18:48,484.484 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 02:18:48,487.487 INFO    ] Checking for system updates...
[2026-08-31 02:18:48,522.522 INFO    ] 200
[2026-08-31 02:18:48,524.524 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:18:48,578.578 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:18:48,580.580 INFO    ] No update needed
[2026-08-31 02:18:48,583.583 INFO    ] Checking for camera pi updates...
[2026-08-31 02:18:48,616.616 INFO    ] 200
[2026-08-31 02:18:48,619.619 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:18:48,659.659 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:18:48,742.742 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:18:48,744.744 INFO    ] No camera update needed
[2026-08-31 02:18:48,747.747 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:18:48,749.749 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:18:48,754.754 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:18:48,759.759 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:18:50,801.801 INFO    ] ================================================
[2026-08-31 02:18:50,816.816 INFO    ] Launching Daemon at Mon Aug 31 02:18:50 IST 2026
[2026-08-31 02:18:50,827.827 INFO    ] ================================================
[2026-08-31 02:18:51,468.468 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:18:51
[2026-08-31 02:18:52,129.129 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:18:52,444.444 INFO    ] Initializing speech engine...
[2026-08-31 02:18:52,449.449 INFO    ] 2026-08-31 02:18:52
[2026-08-31 02:18:52,716.716 INFO    ] 2026-08-31 02:18:52
[2026-08-31 02:18:52,770.770 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:18:53,064.064 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:18:53,070.070 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:18:53,263.263 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:18:53,282.282 INFO    ] time= 31/08/2026 02:18:53
[2026-08-31 02:18:53,292.292 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:18:53,321.321 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:18:53,392.392 INFO    ] No existing commands found in stream
[2026-08-31 02:18:58,408.408 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:18:58,411.411 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-08-31 02:19:00,997.997 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 02:19:01,000.000 INFO    ] Checking for system updates...
[2026-08-31 02:19:01,038.038 INFO    ] 200
[2026-08-31 02:19:01,040.040 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:19:01,094.094 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:19:01,097.097 INFO    ] No update needed
[2026-08-31 02:19:01,100.100 INFO    ] Checking for camera pi updates...
[2026-08-31 02:19:01,134.134 INFO    ] 200
[2026-08-31 02:19:01,137.137 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:19:01,179.179 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:19:01,260.260 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:19:01,263.263 INFO    ] No camera update needed
[2026-08-31 02:19:01,265.265 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:19:01,268.268 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:19:01,274.274 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:19:01,280.280 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:19:03,326.326 INFO    ] ================================================
[2026-08-31 02:19:03,341.341 INFO    ] Launching Daemon at Mon Aug 31 02:19:03 IST 2026
[2026-08-31 02:19:03,352.352 INFO    ] ================================================
[2026-08-31 02:19:03,943.943 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:19:03
[2026-08-31 02:19:04,599.599 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:19:04,897.897 INFO    ] Initializing speech engine...
[2026-08-31 02:19:04,904.904 INFO    ] 2026-08-31 02:19:04
[2026-08-31 02:19:05,184.184 INFO    ] 2026-08-31 02:19:05
[2026-08-31 02:19:05,240.240 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:19:05,532.532 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:19:05,537.537 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:19:05,740.740 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:19:05,757.757 INFO    ] time= 31/08/2026 02:19:05
[2026-08-31 02:19:05,764.764 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:19:05,793.793 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:19:05,918.918 INFO    ] No existing commands found in stream
[2026-08-31 02:19:10,954.954 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:19:10,958.958 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-08-31 02:19:14,804.804 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 02:19:14,807.807 INFO    ] Checking for system updates...
[2026-08-31 02:19:14,848.848 INFO    ] 200
[2026-08-31 02:19:14,851.851 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:19:14,909.909 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:19:14,912.912 INFO    ] No update needed
[2026-08-31 02:19:14,915.915 INFO    ] Checking for camera pi updates...
[2026-08-31 02:19:14,949.949 INFO    ] 200
[2026-08-31 02:19:14,952.952 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:19:14,993.993 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:19:15,101.101 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:19:15,103.103 INFO    ] No camera update needed
[2026-08-31 02:19:15,106.106 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:19:15,109.109 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:19:15,115.115 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:19:15,121.121 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:19:17,162.162 INFO    ] ================================================
[2026-08-31 02:19:17,178.178 INFO    ] Launching Daemon at Mon Aug 31 02:19:17 IST 2026
[2026-08-31 02:19:17,189.189 INFO    ] ================================================
[2026-08-31 02:19:17,836.836 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:19:17
[2026-08-31 02:19:18,498.498 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:19:18,797.797 INFO    ] Initializing speech engine...
[2026-08-31 02:19:18,810.810 INFO    ] 2026-08-31 02:19:18
[2026-08-31 02:19:19,089.089 INFO    ] 2026-08-31 02:19:19
[2026-08-31 02:19:19,134.134 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:19:19,380.380 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:19:19,386.386 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:19:19,602.602 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:19:19,628.628 INFO    ] time= 31/08/2026 02:19:19
[2026-08-31 02:19:19,634.634 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:19:19,655.655 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:19:19,785.785 INFO    ] No existing commands found in stream
[2026-08-31 02:19:24,803.803 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:19:24,806.806 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-08-31 02:19:28,116.116 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 02:19:28,119.119 INFO    ] Checking for system updates...
[2026-08-31 02:19:28,155.155 INFO    ] 200
[2026-08-31 02:19:28,157.157 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:19:28,213.213 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:19:28,216.216 INFO    ] No update needed
[2026-08-31 02:19:28,219.219 INFO    ] Checking for camera pi updates...
[2026-08-31 02:19:28,253.253 INFO    ] 200
[2026-08-31 02:19:28,255.255 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:19:28,300.300 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:19:28,394.394 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:19:28,396.396 INFO    ] No camera update needed
[2026-08-31 02:19:28,399.399 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:19:28,401.401 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:19:28,406.406 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:19:28,411.411 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:19:30,451.451 INFO    ] ================================================
[2026-08-31 02:19:30,467.467 INFO    ] Launching Daemon at Mon Aug 31 02:19:30 IST 2026
[2026-08-31 02:19:30,478.478 INFO    ] ================================================
[2026-08-31 02:19:31,050.050 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:19:31
[2026-08-31 02:19:31,653.653 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:19:31,945.945 INFO    ] Initializing speech engine...
[2026-08-31 02:19:31,955.955 INFO    ] 2026-08-31 02:19:31
[2026-08-31 02:19:32,219.219 INFO    ] 2026-08-31 02:19:32
[2026-08-31 02:19:32,258.258 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:19:32,530.530 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:19:32,535.535 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:19:32,715.715 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:19:32,739.739 INFO    ] time= 31/08/2026 02:19:32
[2026-08-31 02:19:32,816.816 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:19:32,824.824 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:19:32,978.978 INFO    ] No existing commands found in stream
[2026-08-31 02:19:37,992.992 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:19:37,995.995 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-08-31 02:19:41,232.232 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 02:19:41,235.235 INFO    ] Checking for system updates...
[2026-08-31 02:19:41,272.272 INFO    ] 200
[2026-08-31 02:19:41,274.274 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:19:41,328.328 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:19:41,331.331 INFO    ] No update needed
[2026-08-31 02:19:41,333.333 INFO    ] Checking for camera pi updates...
[2026-08-31 02:19:41,366.366 INFO    ] 200
[2026-08-31 02:19:41,369.369 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:19:41,414.414 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:19:41,505.505 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:19:41,508.508 INFO    ] No camera update needed
[2026-08-31 02:19:41,510.510 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:19:41,512.512 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:19:41,518.518 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:19:41,523.523 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:19:43,564.564 INFO    ] ================================================
[2026-08-31 02:19:43,579.579 INFO    ] Launching Daemon at Mon Aug 31 02:19:43 IST 2026
[2026-08-31 02:19:43,590.590 INFO    ] ================================================
[2026-08-31 02:19:44,157.157 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:19:44
[2026-08-31 02:19:44,741.741 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:19:44,996.996 INFO    ] Initializing speech engine...
[2026-08-31 02:19:45,005.005 INFO    ] 2026-08-31 02:19:44
[2026-08-31 02:19:45,299.299 INFO    ] 2026-08-31 02:19:45
[2026-08-31 02:19:45,333.333 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:19:45,543.543 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:19:45,562.562 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:19:45,771.771 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:19:45,789.789 INFO    ] time= 31/08/2026 02:19:45
[2026-08-31 02:19:45,826.826 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:19:45,881.881 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:19:45,993.993 INFO    ] No existing commands found in stream
[2026-08-31 02:19:51,005.005 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:19:51,008.008 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-08-31 02:19:54,054.054 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 02:19:54,057.057 INFO    ] Checking for system updates...
[2026-08-31 02:19:54,093.093 INFO    ] 200
[2026-08-31 02:19:54,096.096 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:19:54,156.156 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:19:54,159.159 INFO    ] No update needed
[2026-08-31 02:19:54,162.162 INFO    ] Checking for camera pi updates...
[2026-08-31 02:19:54,196.196 INFO    ] 200
[2026-08-31 02:19:54,199.199 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:19:54,240.240 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:19:54,330.330 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:19:54,333.333 INFO    ] No camera update needed
[2026-08-31 02:19:54,336.336 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:19:54,338.338 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:19:54,345.345 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:19:54,351.351 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:19:56,392.392 INFO    ] ================================================
[2026-08-31 02:19:56,408.408 INFO    ] Launching Daemon at Mon Aug 31 02:19:56 IST 2026
[2026-08-31 02:19:56,419.419 INFO    ] ================================================
[2026-08-31 02:19:57,067.067 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:19:57
[2026-08-31 02:19:57,732.732 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:19:58,035.035 INFO    ] Initializing speech engine...
[2026-08-31 02:19:58,041.041 INFO    ] 2026-08-31 02:19:58
[2026-08-31 02:19:58,314.314 INFO    ] 2026-08-31 02:19:58
[2026-08-31 02:19:58,375.375 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:19:58,670.670 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:19:58,679.679 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:19:58,877.877 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:19:58,897.897 INFO    ] time= 31/08/2026 02:19:58
[2026-08-31 02:19:58,914.914 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:19:58,934.934 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:19:59,041.041 INFO    ] No existing commands found in stream
[2026-08-31 02:20:04,076.076 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:20:04,079.079 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-08-31 02:20:09,216.216 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 02:20:09,219.219 INFO    ] Checking for system updates...
[2026-08-31 02:20:09,254.254 INFO    ] 200
[2026-08-31 02:20:09,257.257 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:20:09,310.310 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:20:09,312.312 INFO    ] No update needed
[2026-08-31 02:20:09,315.315 INFO    ] Checking for camera pi updates...
[2026-08-31 02:20:09,348.348 INFO    ] 200
[2026-08-31 02:20:09,350.350 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:20:09,394.394 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:20:09,478.478 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:20:09,481.481 INFO    ] No camera update needed
[2026-08-31 02:20:09,483.483 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:20:09,485.485 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:20:09,491.491 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:20:09,495.495 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:20:11,536.536 INFO    ] ================================================
[2026-08-31 02:20:11,554.554 INFO    ] Launching Daemon at Mon Aug 31 02:20:11 IST 2026
[2026-08-31 02:20:11,566.566 INFO    ] ================================================
[2026-08-31 02:20:12,140.140 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:20:12
[2026-08-31 02:20:12,778.778 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:20:13,070.070 INFO    ] Initializing speech engine...
[2026-08-31 02:20:13,076.076 INFO    ] 2026-08-31 02:20:13
[2026-08-31 02:20:13,346.346 INFO    ] 2026-08-31 02:20:13
[2026-08-31 02:20:13,402.402 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:20:13,637.637 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:20:13,643.643 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:20:13,871.871 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:20:13,906.906 INFO    ] time= 31/08/2026 02:20:13
[2026-08-31 02:20:13,922.922 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:20:13,932.932 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:20:14,067.067 INFO    ] No existing commands found in stream
[2026-08-31 02:20:19,090.090 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:20:19,093.093 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-08-31 02:20:20,866.866 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 02:20:20,869.869 INFO    ] Checking for system updates...
[2026-08-31 02:20:20,908.908 INFO    ] 200
[2026-08-31 02:20:20,910.910 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:20:20,967.967 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:20:20,970.970 INFO    ] No update needed
[2026-08-31 02:20:20,972.972 INFO    ] Checking for camera pi updates...
[2026-08-31 02:20:21,006.006 INFO    ] 200
[2026-08-31 02:20:21,009.009 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:20:21,051.051 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:20:21,123.123 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:20:21,126.126 INFO    ] No camera update needed
[2026-08-31 02:20:21,129.129 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:20:21,132.132 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:20:21,138.138 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:20:21,143.143 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:20:23,184.184 INFO    ] ================================================
[2026-08-31 02:20:23,200.200 INFO    ] Launching Daemon at Mon Aug 31 02:20:23 IST 2026
[2026-08-31 02:20:23,211.211 INFO    ] ================================================
[2026-08-31 02:20:23,775.775 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:20:23
[2026-08-31 02:20:24,356.356 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:20:24,599.599 INFO    ] Initializing speech engine...
[2026-08-31 02:20:24,605.605 INFO    ] 2026-08-31 02:20:24
[2026-08-31 02:20:24,886.886 INFO    ] 2026-08-31 02:20:24
[2026-08-31 02:20:24,921.921 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:20:25,196.196 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:20:25,203.203 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:20:25,432.432 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:20:25,441.441 INFO    ] time= 31/08/2026 02:20:25
[2026-08-31 02:20:25,458.458 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:20:25,481.481 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:20:25,640.640 INFO    ] No existing commands found in stream
[2026-08-31 02:20:30,670.670 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:20:30,673.673 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-08-31 02:20:32,980.980 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 02:20:32,983.983 INFO    ] Checking for system updates...
[2026-08-31 02:20:33,018.018 INFO    ] 200
[2026-08-31 02:20:33,020.020 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:20:33,073.073 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:20:33,075.075 INFO    ] No update needed
[2026-08-31 02:20:33,078.078 INFO    ] Checking for camera pi updates...
[2026-08-31 02:20:33,114.114 INFO    ] 200
[2026-08-31 02:20:33,117.117 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:20:33,157.157 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:20:33,249.249 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:20:33,252.252 INFO    ] No camera update needed
[2026-08-31 02:20:33,254.254 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:20:33,256.256 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:20:33,262.262 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:20:33,267.267 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:20:35,307.307 INFO    ] ================================================
[2026-08-31 02:20:35,322.322 INFO    ] Launching Daemon at Mon Aug 31 02:20:35 IST 2026
[2026-08-31 02:20:35,333.333 INFO    ] ================================================
[2026-08-31 02:20:35,910.910 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:20:35
[2026-08-31 02:20:36,514.514 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:20:36,798.798 INFO    ] Initializing speech engine...
[2026-08-31 02:20:36,807.807 INFO    ] 2026-08-31 02:20:36
[2026-08-31 02:20:37,073.073 INFO    ] 2026-08-31 02:20:37
[2026-08-31 02:20:37,109.109 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:20:37,396.396 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:20:37,401.401 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:20:37,631.631 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:20:37,689.689 INFO    ] time= 31/08/2026 02:20:37
[2026-08-31 02:20:37,695.695 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:20:37,715.715 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:20:37,857.857 INFO    ] No existing commands found in stream
[2026-08-31 02:20:42,872.872 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:20:42,875.875 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-08-31 02:20:45,679.679 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 02:20:45,682.682 INFO    ] Checking for system updates...
[2026-08-31 02:20:45,717.717 INFO    ] 200
[2026-08-31 02:20:45,720.720 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:20:45,772.772 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:20:45,774.774 INFO    ] No update needed
[2026-08-31 02:20:45,776.776 INFO    ] Checking for camera pi updates...
[2026-08-31 02:20:45,810.810 INFO    ] 200
[2026-08-31 02:20:45,812.812 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:20:45,852.852 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:20:45,963.963 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:20:45,966.966 INFO    ] No camera update needed
[2026-08-31 02:20:45,968.968 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:20:45,971.971 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:20:45,976.976 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:20:45,981.981 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:20:48,021.021 INFO    ] ================================================
[2026-08-31 02:20:48,037.037 INFO    ] Launching Daemon at Mon Aug 31 02:20:48 IST 2026
[2026-08-31 02:20:48,048.048 INFO    ] ================================================
[2026-08-31 02:20:48,614.614 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:20:48
[2026-08-31 02:20:49,197.197 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:20:49,455.455 INFO    ] Initializing speech engine...
[2026-08-31 02:20:49,480.480 INFO    ] 2026-08-31 02:20:49
[2026-08-31 02:20:49,749.749 INFO    ] 2026-08-31 02:20:49
[2026-08-31 02:20:49,785.785 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:20:50,067.067 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:20:50,077.077 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:20:50,227.227 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:20:50,282.282 INFO    ] time= 31/08/2026 02:20:50
[2026-08-31 02:20:50,352.352 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:20:50,372.372 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:20:50,507.507 INFO    ] No existing commands found in stream
[2026-08-31 02:20:55,538.538 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:20:55,541.541 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-08-31 02:20:59,912.912 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 02:20:59,915.915 INFO    ] Checking for system updates...
[2026-08-31 02:20:59,951.951 INFO    ] 200
[2026-08-31 02:20:59,954.954 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:21:00,011.011 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:21:00,013.013 INFO    ] No update needed
[2026-08-31 02:21:00,016.016 INFO    ] Checking for camera pi updates...
[2026-08-31 02:21:00,049.049 INFO    ] 200
[2026-08-31 02:21:00,051.051 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:21:00,091.091 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:21:00,174.174 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:21:00,177.177 INFO    ] No camera update needed
[2026-08-31 02:21:00,179.179 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:21:00,181.181 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:21:00,187.187 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:21:00,192.192 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:21:02,235.235 INFO    ] ================================================
[2026-08-31 02:21:02,257.257 INFO    ] Launching Daemon at Mon Aug 31 02:21:02 IST 2026
[2026-08-31 02:21:02,272.272 INFO    ] ================================================
[2026-08-31 02:21:02,986.986 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:21:02
[2026-08-31 02:21:03,699.699 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:21:03,987.987 INFO    ] Initializing speech engine...
[2026-08-31 02:21:03,996.996 INFO    ] 2026-08-31 02:21:03
[2026-08-31 02:21:04,264.264 INFO    ] 2026-08-31 02:21:04
[2026-08-31 02:21:04,318.318 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:21:04,668.668 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:21:04,710.710 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:21:04,947.947 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:21:05,002.002 INFO    ] time= 31/08/2026 02:21:04
[2026-08-31 02:21:05,053.053 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:21:05,100.100 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:21:05,226.226 INFO    ] No existing commands found in stream
[2026-08-31 02:21:10,251.251 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:21:10,254.254 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-08-31 02:21:14,598.598 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 02:21:14,600.600 INFO    ] Checking for system updates...
[2026-08-31 02:21:14,640.640 INFO    ] 200
[2026-08-31 02:21:14,643.643 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:21:14,700.700 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:21:14,702.702 INFO    ] No update needed
[2026-08-31 02:21:14,704.704 INFO    ] Checking for camera pi updates...
[2026-08-31 02:21:14,738.738 INFO    ] 200
[2026-08-31 02:21:14,740.740 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:21:14,787.787 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:21:14,872.872 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:21:14,874.874 INFO    ] No camera update needed
[2026-08-31 02:21:14,876.876 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:21:14,879.879 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:21:14,885.885 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:21:14,890.890 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:21:16,931.931 INFO    ] ================================================
[2026-08-31 02:21:16,946.946 INFO    ] Launching Daemon at Mon Aug 31 02:21:16 IST 2026
[2026-08-31 02:21:16,957.957 INFO    ] ================================================
[2026-08-31 02:21:17,528.528 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:21:17
[2026-08-31 02:21:18,113.113 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:21:18,380.380 INFO    ] Initializing speech engine...
[2026-08-31 02:21:18,399.399 INFO    ] 2026-08-31 02:21:18
[2026-08-31 02:21:18,661.661 INFO    ] 2026-08-31 02:21:18
[2026-08-31 02:21:18,696.696 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:21:18,910.910 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:21:18,933.933 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:21:19,201.201 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:21:19,256.256 INFO    ] time= 31/08/2026 02:21:19
[2026-08-31 02:21:19,274.274 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:21:19,280.280 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:21:19,438.438 INFO    ] No existing commands found in stream
[2026-08-31 02:21:24,450.450 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:21:24,453.453 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-08-31 02:21:25,636.636 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 02:21:25,639.639 INFO    ] Checking for system updates...
[2026-08-31 02:21:25,674.674 INFO    ] 200
[2026-08-31 02:21:25,676.676 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:21:25,728.728 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:21:25,731.731 INFO    ] No update needed
[2026-08-31 02:21:25,733.733 INFO    ] Checking for camera pi updates...
[2026-08-31 02:21:25,769.769 INFO    ] 200
[2026-08-31 02:21:25,772.772 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:21:25,812.812 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:21:25,888.888 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:21:25,890.890 INFO    ] No camera update needed
[2026-08-31 02:21:25,893.893 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:21:25,895.895 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:21:25,900.900 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:21:25,905.905 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:21:27,946.946 INFO    ] ================================================
[2026-08-31 02:21:27,962.962 INFO    ] Launching Daemon at Mon Aug 31 02:21:27 IST 2026
[2026-08-31 02:21:27,973.973 INFO    ] ================================================
[2026-08-31 02:21:28,597.597 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:21:28
[2026-08-31 02:21:29,239.239 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:21:29,536.536 INFO    ] Initializing speech engine...
[2026-08-31 02:21:29,545.545 INFO    ] 2026-08-31 02:21:29
[2026-08-31 02:21:29,811.811 INFO    ] 2026-08-31 02:21:29
[2026-08-31 02:21:29,871.871 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:21:30,105.105 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:21:30,111.111 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:21:30,360.360 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:21:30,378.378 INFO    ] time= 31/08/2026 02:21:30
[2026-08-31 02:21:30,397.397 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:21:30,426.426 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:21:30,547.547 INFO    ] No existing commands found in stream
[2026-08-31 02:21:35,578.578 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:21:35,581.581 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-08-31 02:21:39,212.212 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 02:21:39,215.215 INFO    ] Checking for system updates...
[2026-08-31 02:21:39,255.255 INFO    ] 200
[2026-08-31 02:21:39,258.258 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:21:39,311.311 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:21:39,313.313 INFO    ] No update needed
[2026-08-31 02:21:39,316.316 INFO    ] Checking for camera pi updates...
[2026-08-31 02:21:39,350.350 INFO    ] 200
[2026-08-31 02:21:39,352.352 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:21:39,393.393 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:21:39,479.479 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:21:39,481.481 INFO    ] No camera update needed
[2026-08-31 02:21:39,484.484 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:21:39,486.486 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:21:39,491.491 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:21:39,496.496 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:21:41,537.537 INFO    ] ================================================
[2026-08-31 02:21:41,553.553 INFO    ] Launching Daemon at Mon Aug 31 02:21:41 IST 2026
[2026-08-31 02:21:41,564.564 INFO    ] ================================================
[2026-08-31 02:21:42,134.134 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:21:42
[2026-08-31 02:21:42,718.718 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:21:42,975.975 INFO    ] Initializing speech engine...
[2026-08-31 02:21:42,999.999 INFO    ] 2026-08-31 02:21:42
[2026-08-31 02:21:43,265.265 INFO    ] 2026-08-31 02:21:43
[2026-08-31 02:21:43,303.303 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:21:43,519.519 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:21:43,577.577 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:21:43,735.735 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:21:43,790.790 INFO    ] time= 31/08/2026 02:21:43
[2026-08-31 02:21:43,850.850 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:21:43,877.877 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:21:43,999.999 INFO    ] No existing commands found in stream
[2026-08-31 02:21:49,021.021 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:21:49,024.024 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-08-31 02:21:53,512.512 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 02:21:53,515.515 INFO    ] Checking for system updates...
[2026-08-31 02:21:53,553.553 INFO    ] 200
[2026-08-31 02:21:53,556.556 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:21:53,608.608 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:21:53,611.611 INFO    ] No update needed
[2026-08-31 02:21:53,613.613 INFO    ] Checking for camera pi updates...
[2026-08-31 02:21:53,649.649 INFO    ] 200
[2026-08-31 02:21:53,651.651 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:21:53,691.691 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:21:53,781.781 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:21:53,783.783 INFO    ] No camera update needed
[2026-08-31 02:21:53,786.786 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:21:53,788.788 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:21:53,793.793 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:21:53,798.798 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:21:55,839.839 INFO    ] ================================================
[2026-08-31 02:21:55,854.854 INFO    ] Launching Daemon at Mon Aug 31 02:21:55 IST 2026
[2026-08-31 02:21:55,865.865 INFO    ] ================================================
[2026-08-31 02:21:56,436.436 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:21:56
[2026-08-31 02:21:57,021.021 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:21:57,273.273 INFO    ] Initializing speech engine...
[2026-08-31 02:21:57,282.282 INFO    ] 2026-08-31 02:21:57
[2026-08-31 02:21:57,577.577 INFO    ] 2026-08-31 02:21:57
[2026-08-31 02:21:57,612.612 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:21:57,889.889 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:21:57,899.899 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:21:58,112.112 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:21:58,161.161 INFO    ] time= 31/08/2026 02:21:58
[2026-08-31 02:21:58,186.186 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:21:58,205.205 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:21:58,338.338 INFO    ] No existing commands found in stream
[2026-08-31 02:22:03,359.359 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:22:03,362.362 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-08-31 02:22:05,315.315 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 02:22:05,318.318 INFO    ] Checking for system updates...
[2026-08-31 02:22:05,355.355 INFO    ] 200
[2026-08-31 02:22:05,358.358 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:22:05,410.410 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:22:05,413.413 INFO    ] No update needed
[2026-08-31 02:22:05,415.415 INFO    ] Checking for camera pi updates...
[2026-08-31 02:22:05,449.449 INFO    ] 200
[2026-08-31 02:22:05,452.452 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:22:05,492.492 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:22:05,578.578 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:22:05,580.580 INFO    ] No camera update needed
[2026-08-31 02:22:05,582.582 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:22:05,585.585 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:22:05,590.590 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:22:05,595.595 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:22:07,640.640 INFO    ] ================================================
[2026-08-31 02:22:07,656.656 INFO    ] Launching Daemon at Mon Aug 31 02:22:07 IST 2026
[2026-08-31 02:22:07,667.667 INFO    ] ================================================
[2026-08-31 02:22:08,235.235 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:22:08
[2026-08-31 02:22:08,819.819 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:22:09,071.071 INFO    ] Initializing speech engine...
[2026-08-31 02:22:09,077.077 INFO    ] 2026-08-31 02:22:09
[2026-08-31 02:22:09,366.366 INFO    ] 2026-08-31 02:22:09
[2026-08-31 02:22:09,403.403 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:22:09,661.661 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:22:09,670.670 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:22:09,843.843 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:22:09,887.887 INFO    ] time= 31/08/2026 02:22:09
[2026-08-31 02:22:09,938.938 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:22:09,945.945 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:22:10,078.078 INFO    ] No existing commands found in stream
[2026-08-31 02:22:15,101.101 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:22:15,103.103 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-08-31 02:22:18,329.329 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 02:22:18,331.331 INFO    ] Checking for system updates...
[2026-08-31 02:22:18,366.366 INFO    ] 200
[2026-08-31 02:22:18,369.369 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:22:18,420.420 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:22:18,422.422 INFO    ] No update needed
[2026-08-31 02:22:18,425.425 INFO    ] Checking for camera pi updates...
[2026-08-31 02:22:18,458.458 INFO    ] 200
[2026-08-31 02:22:18,460.460 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:22:18,500.500 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:22:18,582.582 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:22:18,584.584 INFO    ] No camera update needed
[2026-08-31 02:22:18,587.587 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:22:18,589.589 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:22:18,594.594 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:22:18,600.600 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:22:20,640.640 INFO    ] ================================================
[2026-08-31 02:22:20,655.655 INFO    ] Launching Daemon at Mon Aug 31 02:22:20 IST 2026
[2026-08-31 02:22:20,667.667 INFO    ] ================================================
[2026-08-31 02:22:21,301.301 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:22:21
[2026-08-31 02:22:21,939.939 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:22:22,234.234 INFO    ] Initializing speech engine...
[2026-08-31 02:22:22,241.241 INFO    ] 2026-08-31 02:22:22
[2026-08-31 02:22:22,515.515 INFO    ] 2026-08-31 02:22:22
[2026-08-31 02:22:22,568.568 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:22:22,825.825 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:22:22,831.831 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:22:23,063.063 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:22:23,073.073 INFO    ] time= 31/08/2026 02:22:23
[2026-08-31 02:22:23,094.094 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:22:23,122.122 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:22:23,236.236 INFO    ] No existing commands found in stream
[2026-08-31 02:22:28,279.279 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:22:28,282.282 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-08-31 02:22:32,692.692 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 02:22:32,694.694 INFO    ] Checking for system updates...
[2026-08-31 02:22:32,733.733 INFO    ] 200
[2026-08-31 02:22:32,736.736 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:22:32,804.804 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:22:32,807.807 INFO    ] No update needed
[2026-08-31 02:22:32,810.810 INFO    ] Checking for camera pi updates...
[2026-08-31 02:22:32,846.846 INFO    ] 200
[2026-08-31 02:22:32,849.849 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:22:32,893.893 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:22:33,074.074 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:22:33,076.076 INFO    ] No camera update needed
[2026-08-31 02:22:33,079.079 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:22:33,082.082 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:22:33,088.088 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:22:33,094.094 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:22:35,136.136 INFO    ] ================================================
[2026-08-31 02:22:35,152.152 INFO    ] Launching Daemon at Mon Aug 31 02:22:35 IST 2026
[2026-08-31 02:22:35,163.163 INFO    ] ================================================
[2026-08-31 02:22:35,857.857 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:22:35
[2026-08-31 02:22:36,555.555 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:22:36,860.860 INFO    ] Initializing speech engine...
[2026-08-31 02:22:36,872.872 INFO    ] 2026-08-31 02:22:36
[2026-08-31 02:22:37,167.167 INFO    ] 2026-08-31 02:22:37
[2026-08-31 02:22:37,224.224 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:22:37,470.470 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:22:37,478.478 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:22:37,710.710 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:22:37,718.718 INFO    ] time= 31/08/2026 02:22:37
[2026-08-31 02:22:37,739.739 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:22:37,765.765 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:22:37,883.883 INFO    ] No existing commands found in stream
[2026-08-31 02:22:42,893.893 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:22:42,896.896 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-08-31 02:22:45,730.730 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 02:22:45,733.733 INFO    ] Checking for system updates...
[2026-08-31 02:22:45,770.770 INFO    ] 200
[2026-08-31 02:22:45,773.773 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:22:45,825.825 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:22:45,828.828 INFO    ] No update needed
[2026-08-31 02:22:45,831.831 INFO    ] Checking for camera pi updates...
[2026-08-31 02:22:45,865.865 INFO    ] 200
[2026-08-31 02:22:45,867.867 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:22:45,908.908 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:22:45,989.989 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:22:45,992.992 INFO    ] No camera update needed
[2026-08-31 02:22:45,995.995 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:22:45,997.997 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:22:46,003.003 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:22:46,009.009 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:22:48,049.049 INFO    ] ================================================
[2026-08-31 02:22:48,064.064 INFO    ] Launching Daemon at Mon Aug 31 02:22:48 IST 2026
[2026-08-31 02:22:48,075.075 INFO    ] ================================================
[2026-08-31 02:22:48,641.641 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:22:48
[2026-08-31 02:22:49,225.225 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:22:49,483.483 INFO    ] Initializing speech engine...
[2026-08-31 02:22:49,507.507 INFO    ] 2026-08-31 02:22:49
[2026-08-31 02:22:49,777.777 INFO    ] 2026-08-31 02:22:49
[2026-08-31 02:22:49,812.812 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:22:50,030.030 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:22:50,037.037 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:22:50,251.251 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:22:50,274.274 INFO    ] time= 31/08/2026 02:22:50
[2026-08-31 02:22:50,333.333 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:22:50,399.399 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:22:50,536.536 INFO    ] No existing commands found in stream
[2026-08-31 02:22:55,571.571 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:22:55,574.574 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-08-31 02:22:57,768.768 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 02:22:57,771.771 INFO    ] Checking for system updates...
[2026-08-31 02:22:57,806.806 INFO    ] 200
[2026-08-31 02:22:57,809.809 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:22:57,872.872 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:22:57,875.875 INFO    ] No update needed
[2026-08-31 02:22:57,877.877 INFO    ] Checking for camera pi updates...
[2026-08-31 02:22:57,914.914 INFO    ] 200
[2026-08-31 02:22:57,916.916 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:22:57,962.962 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:22:58,044.044 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:22:58,047.047 INFO    ] No camera update needed
[2026-08-31 02:22:58,049.049 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:22:58,051.051 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:22:58,057.057 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:22:58,062.062 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:23:00,105.105 INFO    ] ================================================
[2026-08-31 02:23:00,121.121 INFO    ] Launching Daemon at Mon Aug 31 02:23:00 IST 2026
[2026-08-31 02:23:00,133.133 INFO    ] ================================================
[2026-08-31 02:23:00,729.729 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:23:00
[2026-08-31 02:23:01,316.316 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:23:01,563.563 INFO    ] Initializing speech engine...
[2026-08-31 02:23:01,571.571 INFO    ] 2026-08-31 02:23:01
[2026-08-31 02:23:01,994.994 INFO    ] 2026-08-31 02:23:01
[2026-08-31 02:23:02,049.049 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:23:02,294.294 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:23:02,297.297 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:23:02,497.497 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:23:02,501.501 INFO    ] time= 31/08/2026 02:23:02
[2026-08-31 02:23:02,506.506 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:23:02,529.529 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:23:02,620.620 INFO    ] No existing commands found in stream
[2026-08-31 02:23:07,630.630 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:23:07,633.633 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-08-31 02:23:09,874.874 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 02:23:09,877.877 INFO    ] Checking for system updates...
[2026-08-31 02:23:09,913.913 INFO    ] 200
[2026-08-31 02:23:09,916.916 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:23:09,970.970 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:23:09,972.972 INFO    ] No update needed
[2026-08-31 02:23:09,975.975 INFO    ] Checking for camera pi updates...
[2026-08-31 02:23:10,009.009 INFO    ] 200
[2026-08-31 02:23:10,012.012 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:23:10,053.053 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:23:10,162.162 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:23:10,165.165 INFO    ] No camera update needed
[2026-08-31 02:23:10,168.168 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:23:10,171.171 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:23:10,177.177 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:23:10,182.182 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:23:12,222.222 INFO    ] ================================================
[2026-08-31 02:23:12,237.237 INFO    ] Launching Daemon at Mon Aug 31 02:23:12 IST 2026
[2026-08-31 02:23:12,248.248 INFO    ] ================================================
[2026-08-31 02:23:12,872.872 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:23:12
[2026-08-31 02:23:13,517.517 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:23:13,808.808 INFO    ] Initializing speech engine...
[2026-08-31 02:23:13,822.822 INFO    ] 2026-08-31 02:23:13
[2026-08-31 02:23:14,128.128 INFO    ] 2026-08-31 02:23:14
[2026-08-31 02:23:14,212.212 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:23:14,427.427 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:23:14,436.436 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:23:14,627.627 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:23:14,646.646 INFO    ] time= 31/08/2026 02:23:14
[2026-08-31 02:23:14,675.675 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:23:14,683.683 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:23:14,824.824 INFO    ] No existing commands found in stream
[2026-08-31 02:23:19,850.850 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:23:19,853.853 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-08-31 02:23:21,449.449 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 02:23:21,452.452 INFO    ] Checking for system updates...
[2026-08-31 02:23:21,491.491 INFO    ] 200
[2026-08-31 02:23:21,493.493 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:23:21,552.552 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:23:21,555.555 INFO    ] No update needed
[2026-08-31 02:23:21,558.558 INFO    ] Checking for camera pi updates...
[2026-08-31 02:23:21,593.593 INFO    ] 200
[2026-08-31 02:23:21,596.596 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:23:21,637.637 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:23:21,718.718 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:23:21,721.721 INFO    ] No camera update needed
[2026-08-31 02:23:21,724.724 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:23:21,726.726 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:23:21,733.733 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:23:21,738.738 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:23:23,780.780 INFO    ] ================================================
[2026-08-31 02:23:23,796.796 INFO    ] Launching Daemon at Mon Aug 31 02:23:23 IST 2026
[2026-08-31 02:23:23,807.807 INFO    ] ================================================
[2026-08-31 02:23:24,381.381 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:23:24
[2026-08-31 02:23:24,973.973 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:23:25,253.253 INFO    ] Initializing speech engine...
[2026-08-31 02:23:25,260.260 INFO    ] 2026-08-31 02:23:25
[2026-08-31 02:23:25,506.506 INFO    ] 2026-08-31 02:23:25
[2026-08-31 02:23:25,541.541 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:23:25,799.799 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:23:25,805.805 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:23:26,054.054 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:23:26,064.064 INFO    ] time= 31/08/2026 02:23:26
[2026-08-31 02:23:26,082.082 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:23:26,094.094 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:23:26,215.215 INFO    ] No existing commands found in stream
[2026-08-31 02:23:31,228.228 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:23:31,231.231 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-08-31 02:23:34,872.872 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 02:23:34,875.875 INFO    ] Checking for system updates...
[2026-08-31 02:23:34,911.911 INFO    ] 200
[2026-08-31 02:23:34,913.913 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:23:34,971.971 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:23:34,973.973 INFO    ] No update needed
[2026-08-31 02:23:34,975.975 INFO    ] Checking for camera pi updates...
[2026-08-31 02:23:35,009.009 INFO    ] 200
[2026-08-31 02:23:35,012.012 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:23:35,056.056 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:23:35,140.140 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:23:35,142.142 INFO    ] No camera update needed
[2026-08-31 02:23:35,144.144 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:23:35,147.147 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:23:35,152.152 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:23:35,157.157 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:23:37,199.199 INFO    ] ================================================
[2026-08-31 02:23:37,214.214 INFO    ] Launching Daemon at Mon Aug 31 02:23:37 IST 2026
[2026-08-31 02:23:37,232.232 INFO    ] ================================================
[2026-08-31 02:23:37,870.870 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:23:37
[2026-08-31 02:23:38,530.530 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:23:38,831.831 INFO    ] Initializing speech engine...
[2026-08-31 02:23:38,842.842 INFO    ] 2026-08-31 02:23:38
[2026-08-31 02:23:39,149.149 INFO    ] 2026-08-31 02:23:39
[2026-08-31 02:23:39,234.234 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:23:39,449.449 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:23:39,487.487 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:23:39,667.667 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:23:39,694.694 INFO    ] time= 31/08/2026 02:23:39
[2026-08-31 02:23:39,702.702 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:23:39,712.712 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:23:39,827.827 INFO    ] No existing commands found in stream
[2026-08-31 02:23:44,858.858 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:23:44,861.861 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-08-31 02:23:49,049.049 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 02:23:49,052.052 INFO    ] Checking for system updates...
[2026-08-31 02:23:49,088.088 INFO    ] 200
[2026-08-31 02:23:49,091.091 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:23:49,143.143 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:23:49,146.146 INFO    ] No update needed
[2026-08-31 02:23:49,149.149 INFO    ] Checking for camera pi updates...
[2026-08-31 02:23:49,183.183 INFO    ] 200
[2026-08-31 02:23:49,186.186 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:23:49,228.228 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:23:49,284.284 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:23:49,287.287 INFO    ] No camera update needed
[2026-08-31 02:23:49,289.289 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:23:49,292.292 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:23:49,298.298 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:23:49,304.304 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:23:51,346.346 INFO    ] ================================================
[2026-08-31 02:23:51,361.361 INFO    ] Launching Daemon at Mon Aug 31 02:23:51 IST 2026
[2026-08-31 02:23:51,373.373 INFO    ] ================================================
[2026-08-31 02:23:52,010.010 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:23:52
[2026-08-31 02:23:52,669.669 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:23:52,969.969 INFO    ] Initializing speech engine...
[2026-08-31 02:23:52,977.977 INFO    ] 2026-08-31 02:23:52
[2026-08-31 02:23:53,249.249 INFO    ] 2026-08-31 02:23:53
[2026-08-31 02:23:53,304.304 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:23:53,534.534 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:23:53,540.540 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:23:53,786.786 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:23:53,801.801 INFO    ] time= 31/08/2026 02:23:53
[2026-08-31 02:23:53,820.820 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:23:53,849.849 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:23:53,966.966 INFO    ] No existing commands found in stream
[2026-08-31 02:23:58,991.991 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:23:58,994.994 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-08-31 02:23:59,747.747 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 02:23:59,750.750 INFO    ] Checking for system updates...
[2026-08-31 02:23:59,786.786 INFO    ] 200
[2026-08-31 02:23:59,789.789 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:23:59,843.843 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:23:59,846.846 INFO    ] No update needed
[2026-08-31 02:23:59,849.849 INFO    ] Checking for camera pi updates...
[2026-08-31 02:23:59,883.883 INFO    ] 200
[2026-08-31 02:23:59,886.886 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:23:59,927.927 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:24:00,012.012 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:24:00,015.015 INFO    ] No camera update needed
[2026-08-31 02:24:00,018.018 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:24:00,020.020 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:24:00,026.026 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:24:00,032.032 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:24:02,082.082 INFO    ] ================================================
[2026-08-31 02:24:02,106.106 INFO    ] Launching Daemon at Mon Aug 31 02:24:02 IST 2026
[2026-08-31 02:24:02,123.123 INFO    ] ================================================
[2026-08-31 02:24:02,793.793 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:24:02
[2026-08-31 02:24:03,507.507 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:24:03,827.827 INFO    ] Initializing speech engine...
[2026-08-31 02:24:03,838.838 INFO    ] 2026-08-31 02:24:03
[2026-08-31 02:24:04,149.149 INFO    ] 2026-08-31 02:24:04
[2026-08-31 02:24:04,232.232 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:24:04,449.449 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:24:04,457.457 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:24:04,670.670 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:24:04,698.698 INFO    ] time= 31/08/2026 02:24:04
[2026-08-31 02:24:04,707.707 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:24:04,719.719 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:24:04,881.881 INFO    ] No existing commands found in stream
[2026-08-31 02:24:09,912.912 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:24:09,915.915 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-08-31 02:24:11,594.594 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 02:24:11,597.597 INFO    ] Checking for system updates...
[2026-08-31 02:24:11,637.637 INFO    ] 200
[2026-08-31 02:24:11,640.640 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:24:11,694.694 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:24:11,698.698 INFO    ] No update needed
[2026-08-31 02:24:11,701.701 INFO    ] Checking for camera pi updates...
[2026-08-31 02:24:11,735.735 INFO    ] 200
[2026-08-31 02:24:11,738.738 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:24:11,781.781 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:24:11,861.861 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:24:11,864.864 INFO    ] No camera update needed
[2026-08-31 02:24:11,866.866 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:24:11,869.869 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:24:11,875.875 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:24:11,881.881 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:24:13,928.928 INFO    ] ================================================
[2026-08-31 02:24:13,944.944 INFO    ] Launching Daemon at Mon Aug 31 02:24:13 IST 2026
[2026-08-31 02:24:13,954.954 INFO    ] ================================================
[2026-08-31 02:24:14,520.520 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:24:14
[2026-08-31 02:24:15,102.102 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:24:15,359.359 INFO    ] Initializing speech engine...
[2026-08-31 02:24:15,364.364 INFO    ] 2026-08-31 02:24:15
[2026-08-31 02:24:15,652.652 INFO    ] 2026-08-31 02:24:15
[2026-08-31 02:24:15,690.690 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:24:15,975.975 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:24:15,985.985 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:24:16,136.136 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:24:16,196.196 INFO    ] time= 31/08/2026 02:24:16
[2026-08-31 02:24:16,250.250 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:24:16,283.283 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:24:16,429.429 INFO    ] No existing commands found in stream
[2026-08-31 02:24:21,460.460 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:24:21,463.463 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-08-31 02:24:24,805.805 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 02:24:24,807.807 INFO    ] Checking for system updates...
[2026-08-31 02:24:24,843.843 INFO    ] 200
[2026-08-31 02:24:24,845.845 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:24:24,899.899 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:24:24,901.901 INFO    ] No update needed
[2026-08-31 02:24:24,903.903 INFO    ] Checking for camera pi updates...
[2026-08-31 02:24:24,937.937 INFO    ] 200
[2026-08-31 02:24:24,940.940 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:24:24,979.979 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:24:25,067.067 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:24:25,070.070 INFO    ] No camera update needed
[2026-08-31 02:24:25,072.072 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:24:25,074.074 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:24:25,080.080 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:24:25,085.085 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:24:27,124.124 INFO    ] ================================================
[2026-08-31 02:24:27,140.140 INFO    ] Launching Daemon at Mon Aug 31 02:24:27 IST 2026
[2026-08-31 02:24:27,152.152 INFO    ] ================================================
[2026-08-31 02:24:27,718.718 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:24:27
[2026-08-31 02:24:28,299.299 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:24:28,542.542 INFO    ] Initializing speech engine...
[2026-08-31 02:24:28,547.547 INFO    ] 2026-08-31 02:24:28
[2026-08-31 02:24:28,824.824 INFO    ] 2026-08-31 02:24:28
[2026-08-31 02:24:28,859.859 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:24:29,118.118 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:24:29,127.127 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:24:29,348.348 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:24:29,391.391 INFO    ] time= 31/08/2026 02:24:29
[2026-08-31 02:24:29,397.397 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:24:29,415.415 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:24:29,558.558 INFO    ] No existing commands found in stream
[2026-08-31 02:24:34,584.584 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:24:34,587.587 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-08-31 02:24:36,114.114 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 02:24:36,116.116 INFO    ] Checking for system updates...
[2026-08-31 02:24:36,152.152 INFO    ] 200
[2026-08-31 02:24:36,154.154 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:24:36,213.213 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:24:36,216.216 INFO    ] No update needed
[2026-08-31 02:24:36,218.218 INFO    ] Checking for camera pi updates...
[2026-08-31 02:24:36,255.255 INFO    ] 200
[2026-08-31 02:24:36,257.257 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:24:36,297.297 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:24:36,493.493 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:24:36,496.496 INFO    ] No camera update needed
[2026-08-31 02:24:36,498.498 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:24:36,501.501 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:24:36,506.506 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:24:36,511.511 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:24:38,554.554 INFO    ] ================================================
[2026-08-31 02:24:38,576.576 INFO    ] Launching Daemon at Mon Aug 31 02:24:38 IST 2026
[2026-08-31 02:24:38,587.587 INFO    ] ================================================
[2026-08-31 02:24:39,152.152 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:24:39
[2026-08-31 02:24:39,735.735 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:24:39,992.992 INFO    ] Initializing speech engine...
[2026-08-31 02:24:39,997.997 INFO    ] 2026-08-31 02:24:39
[2026-08-31 02:24:40,289.289 INFO    ] 2026-08-31 02:24:40
[2026-08-31 02:24:40,325.325 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:24:40,550.550 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:24:40,567.567 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:24:40,779.779 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:24:40,806.806 INFO    ] time= 31/08/2026 02:24:40
[2026-08-31 02:24:40,856.856 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:24:40,910.910 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:24:41,019.019 INFO    ] No existing commands found in stream
[2026-08-31 02:24:46,056.056 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:24:46,059.059 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-08-31 02:24:48,125.125 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 02:24:48,128.128 INFO    ] Checking for system updates...
[2026-08-31 02:24:48,164.164 INFO    ] 200
[2026-08-31 02:24:48,166.166 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:24:48,224.224 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:24:48,227.227 INFO    ] No update needed
[2026-08-31 02:24:48,229.229 INFO    ] Checking for camera pi updates...
[2026-08-31 02:24:48,263.263 INFO    ] 200
[2026-08-31 02:24:48,266.266 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:24:48,305.305 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:24:48,390.390 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:24:48,393.393 INFO    ] No camera update needed
[2026-08-31 02:24:48,398.398 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:24:48,400.400 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:24:48,406.406 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:24:48,412.412 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:24:50,453.453 INFO    ] ================================================
[2026-08-31 02:24:50,468.468 INFO    ] Launching Daemon at Mon Aug 31 02:24:50 IST 2026
[2026-08-31 02:24:50,480.480 INFO    ] ================================================
[2026-08-31 02:24:51,064.064 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:24:51
[2026-08-31 02:24:51,668.668 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:24:51,928.928 INFO    ] Initializing speech engine...
[2026-08-31 02:24:51,937.937 INFO    ] 2026-08-31 02:24:51
[2026-08-31 02:24:52,231.231 INFO    ] 2026-08-31 02:24:52
[2026-08-31 02:24:52,269.269 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:24:52,466.466 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:24:52,480.480 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:24:52,648.648 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:24:52,655.655 INFO    ] time= 31/08/2026 02:24:52
[2026-08-31 02:24:52,682.682 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:24:52,730.730 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:24:52,873.873 INFO    ] No existing commands found in stream
[2026-08-31 02:24:57,884.884 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:24:57,887.887 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-08-31 02:24:58,709.709 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 02:24:58,711.711 INFO    ] Checking for system updates...
[2026-08-31 02:24:58,747.747 INFO    ] 200
[2026-08-31 02:24:58,750.750 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:24:58,801.801 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:24:58,803.803 INFO    ] No update needed
[2026-08-31 02:24:58,806.806 INFO    ] Checking for camera pi updates...
[2026-08-31 02:24:58,839.839 INFO    ] 200
[2026-08-31 02:24:58,842.842 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:24:58,883.883 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:24:58,964.964 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:24:58,966.966 INFO    ] No camera update needed
[2026-08-31 02:24:58,969.969 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:24:58,971.971 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:24:58,976.976 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:24:58,981.981 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:25:01,023.023 INFO    ] ================================================
[2026-08-31 02:25:01,039.039 INFO    ] Launching Daemon at Mon Aug 31 02:25:01 IST 2026
[2026-08-31 02:25:01,049.049 INFO    ] ================================================
[2026-08-31 02:25:01,618.618 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:25:01
[2026-08-31 02:25:02,450.450 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:25:02,789.789 INFO    ] Initializing speech engine...
[2026-08-31 02:25:02,804.804 INFO    ] 2026-08-31 02:25:02
[2026-08-31 02:25:03,116.116 INFO    ] 2026-08-31 02:25:03
[2026-08-31 02:25:03,161.161 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:25:03,470.470 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:25:03,473.473 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:25:03,687.687 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:25:03,717.717 INFO    ] time= 31/08/2026 02:25:03
[2026-08-31 02:25:03,723.723 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:25:03,740.740 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:25:03,869.869 INFO    ] No existing commands found in stream
[2026-08-31 02:25:08,885.885 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:25:08,888.888 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-08-31 02:25:12,642.642 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 02:25:12,644.644 INFO    ] Checking for system updates...
[2026-08-31 02:25:12,679.679 INFO    ] 200
[2026-08-31 02:25:12,682.682 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:25:12,737.737 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:25:12,740.740 INFO    ] No update needed
[2026-08-31 02:25:12,742.742 INFO    ] Checking for camera pi updates...
[2026-08-31 02:25:12,776.776 INFO    ] 200
[2026-08-31 02:25:12,778.778 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:25:12,818.818 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:25:12,900.900 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:25:12,902.902 INFO    ] No camera update needed
[2026-08-31 02:25:12,905.905 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:25:12,907.907 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:25:12,912.912 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:25:12,918.918 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:25:14,959.959 INFO    ] ================================================
[2026-08-31 02:25:14,974.974 INFO    ] Launching Daemon at Mon Aug 31 02:25:14 IST 2026
[2026-08-31 02:25:14,986.986 INFO    ] ================================================
[2026-08-31 02:25:15,565.565 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:25:15
[2026-08-31 02:25:16,164.164 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:25:16,448.448 INFO    ] Initializing speech engine...
[2026-08-31 02:25:16,459.459 INFO    ] 2026-08-31 02:25:16
[2026-08-31 02:25:16,727.727 INFO    ] 2026-08-31 02:25:16
[2026-08-31 02:25:16,763.763 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:25:16,984.984 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:25:16,992.992 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:25:17,211.211 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:25:17,218.218 INFO    ] time= 31/08/2026 02:25:17
[2026-08-31 02:25:17,282.282 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:25:17,337.337 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:25:17,426.426 INFO    ] No existing commands found in stream
[2026-08-31 02:25:22,436.436 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:25:22,439.439 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-08-31 02:25:25,749.749 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 02:25:25,752.752 INFO    ] Checking for system updates...
[2026-08-31 02:25:25,788.788 INFO    ] 200
[2026-08-31 02:25:25,791.791 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:25:25,842.842 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:25:25,845.845 INFO    ] No update needed
[2026-08-31 02:25:25,847.847 INFO    ] Checking for camera pi updates...
[2026-08-31 02:25:25,881.881 INFO    ] 200
[2026-08-31 02:25:25,884.884 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:25:25,923.923 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:25:26,009.009 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:25:26,012.012 INFO    ] No camera update needed
[2026-08-31 02:25:26,014.014 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:25:26,016.016 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:25:26,022.022 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:25:26,027.027 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:25:28,066.066 INFO    ] ================================================
[2026-08-31 02:25:28,081.081 INFO    ] Launching Daemon at Mon Aug 31 02:25:28 IST 2026
[2026-08-31 02:25:28,093.093 INFO    ] ================================================
[2026-08-31 02:25:28,726.726 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:25:28
[2026-08-31 02:25:29,307.307 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:25:29,572.572 INFO    ] Initializing speech engine...
[2026-08-31 02:25:29,584.584 INFO    ] 2026-08-31 02:25:29
[2026-08-31 02:25:29,839.839 INFO    ] 2026-08-31 02:25:29
[2026-08-31 02:25:29,897.897 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:25:30,183.183 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:25:30,190.190 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:25:30,384.384 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:25:30,402.402 INFO    ] time= 31/08/2026 02:25:30
[2026-08-31 02:25:30,425.425 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:25:30,437.437 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:25:30,559.559 INFO    ] No existing commands found in stream
[2026-08-31 02:25:35,584.584 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:25:35,587.587 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-08-31 02:25:38,147.147 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 02:25:38,150.150 INFO    ] Checking for system updates...
[2026-08-31 02:25:38,186.186 INFO    ] 200
[2026-08-31 02:25:38,188.188 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:25:38,241.241 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:25:38,243.243 INFO    ] No update needed
[2026-08-31 02:25:38,246.246 INFO    ] Checking for camera pi updates...
[2026-08-31 02:25:38,279.279 INFO    ] 200
[2026-08-31 02:25:38,281.281 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:25:38,323.323 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:25:38,412.412 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:25:38,415.415 INFO    ] No camera update needed
[2026-08-31 02:25:38,417.417 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:25:38,419.419 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:25:38,424.424 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:25:38,429.429 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:25:40,471.471 INFO    ] ================================================
[2026-08-31 02:25:40,487.487 INFO    ] Launching Daemon at Mon Aug 31 02:25:40 IST 2026
[2026-08-31 02:25:40,499.499 INFO    ] ================================================
[2026-08-31 02:25:41,152.152 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:25:41
[2026-08-31 02:25:41,824.824 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:25:42,130.130 INFO    ] Initializing speech engine...
[2026-08-31 02:25:42,142.142 INFO    ] 2026-08-31 02:25:42
[2026-08-31 02:25:42,458.458 INFO    ] 2026-08-31 02:25:42
[2026-08-31 02:25:42,541.541 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:25:42,817.817 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:25:42,854.854 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:25:43,091.091 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:25:43,122.122 INFO    ] time= 31/08/2026 02:25:43
[2026-08-31 02:25:43,193.193 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:25:43,211.211 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:25:43,358.358 INFO    ] No existing commands found in stream
[2026-08-31 02:25:48,372.372 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:25:48,376.376 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-08-31 02:25:51,654.654 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 02:25:51,657.657 INFO    ] Checking for system updates...
[2026-08-31 02:25:51,694.694 INFO    ] 200
[2026-08-31 02:25:51,697.697 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:25:51,756.756 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:25:51,759.759 INFO    ] No update needed
[2026-08-31 02:25:51,761.761 INFO    ] Checking for camera pi updates...
[2026-08-31 02:25:51,794.794 INFO    ] 200
[2026-08-31 02:25:51,797.797 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:25:51,839.839 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:25:51,943.943 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:25:51,946.946 INFO    ] No camera update needed
[2026-08-31 02:25:51,949.949 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:25:51,951.951 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:25:51,958.958 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:25:51,963.963 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:25:54,008.008 INFO    ] ================================================
[2026-08-31 02:25:54,023.023 INFO    ] Launching Daemon at Mon Aug 31 02:25:54 IST 2026
[2026-08-31 02:25:54,034.034 INFO    ] ================================================
[2026-08-31 02:25:54,600.600 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:25:54
[2026-08-31 02:25:55,183.183 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:25:55,429.429 INFO    ] Initializing speech engine...
[2026-08-31 02:25:55,443.443 INFO    ] 2026-08-31 02:25:55
[2026-08-31 02:25:55,706.706 INFO    ] 2026-08-31 02:25:55
[2026-08-31 02:25:55,741.741 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:25:55,943.943 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:25:55,995.995 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:25:56,220.220 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:25:56,261.261 INFO    ] time= 31/08/2026 02:25:56
[2026-08-31 02:25:56,267.267 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:25:56,284.284 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:25:56,405.405 INFO    ] No existing commands found in stream
[2026-08-31 02:26:01,427.427 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:26:01,430.430 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-08-31 02:26:04,722.722 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 02:26:04,725.725 INFO    ] Checking for system updates...
[2026-08-31 02:26:04,760.760 INFO    ] 200
[2026-08-31 02:26:04,763.763 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:26:04,828.828 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:26:04,830.830 INFO    ] No update needed
[2026-08-31 02:26:04,832.832 INFO    ] Checking for camera pi updates...
[2026-08-31 02:26:04,865.865 INFO    ] 200
[2026-08-31 02:26:04,868.868 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:26:04,910.910 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:26:04,990.990 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:26:04,992.992 INFO    ] No camera update needed
[2026-08-31 02:26:04,994.994 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:26:04,997.997 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:26:05,002.002 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:26:05,007.007 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:26:07,048.048 INFO    ] ================================================
[2026-08-31 02:26:07,064.064 INFO    ] Launching Daemon at Mon Aug 31 02:26:07 IST 2026
[2026-08-31 02:26:07,076.076 INFO    ] ================================================
[2026-08-31 02:26:07,655.655 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:26:07
[2026-08-31 02:26:08,236.236 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:26:08,506.506 INFO    ] Initializing speech engine...
[2026-08-31 02:26:08,515.515 INFO    ] 2026-08-31 02:26:08
[2026-08-31 02:26:08,761.761 INFO    ] 2026-08-31 02:26:08
[2026-08-31 02:26:08,829.829 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:26:09,055.055 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:26:09,060.060 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:26:09,289.289 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:26:09,320.320 INFO    ] time= 31/08/2026 02:26:09
[2026-08-31 02:26:09,335.335 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:26:09,342.342 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:26:09,487.487 INFO    ] No existing commands found in stream
[2026-08-31 02:26:14,519.519 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:26:14,521.521 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-08-31 02:26:16,699.699 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 02:26:16,702.702 INFO    ] Checking for system updates...
[2026-08-31 02:26:16,742.742 INFO    ] 200
[2026-08-31 02:26:16,745.745 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:26:16,808.808 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:26:16,811.811 INFO    ] No update needed
[2026-08-31 02:26:16,814.814 INFO    ] Checking for camera pi updates...
[2026-08-31 02:26:16,849.849 INFO    ] 200
[2026-08-31 02:26:16,852.852 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:26:16,893.893 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:26:16,973.973 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:26:16,976.976 INFO    ] No camera update needed
[2026-08-31 02:26:16,978.978 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:26:16,981.981 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:26:16,987.987 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:26:16,993.993 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:26:19,038.038 INFO    ] ================================================
[2026-08-31 02:26:19,054.054 INFO    ] Launching Daemon at Mon Aug 31 02:26:19 IST 2026
[2026-08-31 02:26:19,065.065 INFO    ] ================================================
[2026-08-31 02:26:19,634.634 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:26:19
[2026-08-31 02:26:20,214.214 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:26:20,474.474 INFO    ] Initializing speech engine...
[2026-08-31 02:26:20,488.488 INFO    ] 2026-08-31 02:26:20
[2026-08-31 02:26:20,743.743 INFO    ] 2026-08-31 02:26:20
[2026-08-31 02:26:20,778.778 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:26:20,980.980 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:26:21,038.038 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:26:21,270.270 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:26:21,309.309 INFO    ] time= 31/08/2026 02:26:21
[2026-08-31 02:26:21,315.315 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:26:21,333.333 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:26:21,463.463 INFO    ] No existing commands found in stream
[2026-08-31 02:26:26,478.478 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:26:26,480.480 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-08-31 02:26:29,644.644 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 02:26:29,647.647 INFO    ] Checking for system updates...
[2026-08-31 02:26:29,688.688 INFO    ] 200
[2026-08-31 02:26:29,691.691 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:26:29,751.751 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:26:29,754.754 INFO    ] No update needed
[2026-08-31 02:26:29,757.757 INFO    ] Checking for camera pi updates...
[2026-08-31 02:26:29,792.792 INFO    ] 200
[2026-08-31 02:26:29,794.794 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:26:29,840.840 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:26:29,921.921 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:26:29,924.924 INFO    ] No camera update needed
[2026-08-31 02:26:29,927.927 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:26:29,929.929 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:26:29,935.935 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:26:29,941.941 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:26:31,987.987 INFO    ] ================================================
[2026-08-31 02:26:32,004.004 INFO    ] Launching Daemon at Mon Aug 31 02:26:31 IST 2026
[2026-08-31 02:26:32,016.016 INFO    ] ================================================
[2026-08-31 02:26:32,610.610 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:26:32
[2026-08-31 02:26:33,195.195 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:26:33,463.463 INFO    ] Initializing speech engine...
[2026-08-31 02:26:33,473.473 INFO    ] 2026-08-31 02:26:33
[2026-08-31 02:26:33,720.720 INFO    ] 2026-08-31 02:26:33
[2026-08-31 02:26:33,786.786 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:26:34,013.013 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:26:34,019.019 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:26:34,258.258 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:26:34,275.275 INFO    ] time= 31/08/2026 02:26:34
[2026-08-31 02:26:34,280.280 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:26:34,299.299 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:26:34,429.429 INFO    ] No existing commands found in stream
[2026-08-31 02:26:39,445.445 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:26:39,448.448 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-08-31 02:26:42,522.522 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 02:26:42,525.525 INFO    ] Checking for system updates...
[2026-08-31 02:26:42,562.562 INFO    ] 200
[2026-08-31 02:26:42,564.564 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:26:42,621.621 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:26:42,624.624 INFO    ] No update needed
[2026-08-31 02:26:42,626.626 INFO    ] Checking for camera pi updates...
[2026-08-31 02:26:42,659.659 INFO    ] 200
[2026-08-31 02:26:42,662.662 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:26:42,703.703 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:26:42,885.885 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:26:42,887.887 INFO    ] No camera update needed
[2026-08-31 02:26:42,890.890 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:26:42,892.892 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:26:42,898.898 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:26:42,903.903 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:26:44,944.944 INFO    ] ================================================
[2026-08-31 02:26:44,959.959 INFO    ] Launching Daemon at Mon Aug 31 02:26:44 IST 2026
[2026-08-31 02:26:44,969.969 INFO    ] ================================================
[2026-08-31 02:26:45,533.533 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:26:45
[2026-08-31 02:26:46,115.115 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:26:46,381.381 INFO    ] Initializing speech engine...
[2026-08-31 02:26:46,390.390 INFO    ] 2026-08-31 02:26:46
[2026-08-31 02:26:46,662.662 INFO    ] 2026-08-31 02:26:46
[2026-08-31 02:26:46,717.717 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:26:47,005.005 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:26:47,010.010 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:26:47,204.204 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:26:47,211.211 INFO    ] time= 31/08/2026 02:26:47
[2026-08-31 02:26:47,230.230 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:26:47,252.252 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:26:47,386.386 INFO    ] No existing commands found in stream
[2026-08-31 02:26:52,410.410 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:26:52,413.413 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-08-31 02:26:54,542.542 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 02:26:54,544.544 INFO    ] Checking for system updates...
[2026-08-31 02:26:54,582.582 INFO    ] 200
[2026-08-31 02:26:54,584.584 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:26:54,643.643 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:26:54,646.646 INFO    ] No update needed
[2026-08-31 02:26:54,649.649 INFO    ] Checking for camera pi updates...
[2026-08-31 02:26:54,683.683 INFO    ] 200
[2026-08-31 02:26:54,686.686 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:26:54,726.726 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:26:54,825.825 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:26:54,828.828 INFO    ] No camera update needed
[2026-08-31 02:26:54,830.830 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:26:54,832.832 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:26:54,837.837 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:26:54,842.842 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:26:56,881.881 INFO    ] ================================================
[2026-08-31 02:26:56,896.896 INFO    ] Launching Daemon at Mon Aug 31 02:26:56 IST 2026
[2026-08-31 02:26:56,911.911 INFO    ] ================================================
[2026-08-31 02:26:57,492.492 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:26:57
[2026-08-31 02:26:58,092.092 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:26:58,366.366 INFO    ] Initializing speech engine...
[2026-08-31 02:26:58,373.373 INFO    ] 2026-08-31 02:26:58
[2026-08-31 02:26:58,625.625 INFO    ] 2026-08-31 02:26:58
[2026-08-31 02:26:58,661.661 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:26:58,918.918 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:26:58,923.923 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:26:59,140.140 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:26:59,181.181 INFO    ] time= 31/08/2026 02:26:59
[2026-08-31 02:26:59,187.187 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:26:59,207.207 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:26:59,335.335 INFO    ] No existing commands found in stream
[2026-08-31 02:27:04,349.349 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:27:04,352.352 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-08-31 02:27:08,148.148 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 02:27:08,151.151 INFO    ] Checking for system updates...
[2026-08-31 02:27:08,191.191 INFO    ] 200
[2026-08-31 02:27:08,194.194 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:27:08,245.245 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:27:08,248.248 INFO    ] No update needed
[2026-08-31 02:27:08,251.251 INFO    ] Checking for camera pi updates...
[2026-08-31 02:27:08,288.288 INFO    ] 200
[2026-08-31 02:27:08,291.291 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:27:08,331.331 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:27:08,404.404 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:27:08,407.407 INFO    ] No camera update needed
[2026-08-31 02:27:08,409.409 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:27:08,412.412 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:27:08,417.417 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:27:08,422.422 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:27:10,464.464 INFO    ] ================================================
[2026-08-31 02:27:10,480.480 INFO    ] Launching Daemon at Mon Aug 31 02:27:10 IST 2026
[2026-08-31 02:27:10,490.490 INFO    ] ================================================
[2026-08-31 02:27:11,062.062 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:27:11
[2026-08-31 02:27:11,681.681 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:27:11,988.988 INFO    ] Initializing speech engine...
[2026-08-31 02:27:11,996.996 INFO    ] 2026-08-31 02:27:11
[2026-08-31 02:27:12,273.273 INFO    ] 2026-08-31 02:27:12
[2026-08-31 02:27:12,335.335 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:27:12,626.626 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:27:12,635.635 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:27:12,835.835 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:27:12,856.856 INFO    ] time= 31/08/2026 02:27:12
[2026-08-31 02:27:12,887.887 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:27:12,895.895 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:27:13,000.000 INFO    ] No existing commands found in stream
[2026-08-31 02:27:18,030.030 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:27:18,033.033 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-08-31 02:27:21,467.467 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 02:27:21,470.470 INFO    ] Checking for system updates...
[2026-08-31 02:27:21,507.507 INFO    ] 200
[2026-08-31 02:27:21,510.510 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:27:21,562.562 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:27:21,565.565 INFO    ] No update needed
[2026-08-31 02:27:21,567.567 INFO    ] Checking for camera pi updates...
[2026-08-31 02:27:21,601.601 INFO    ] 200
[2026-08-31 02:27:21,603.603 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:27:21,644.644 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:27:21,727.727 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:27:21,730.730 INFO    ] No camera update needed
[2026-08-31 02:27:21,732.732 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:27:21,734.734 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:27:21,740.740 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:27:21,745.745 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:27:23,786.786 INFO    ] ================================================
[2026-08-31 02:27:23,802.802 INFO    ] Launching Daemon at Mon Aug 31 02:27:23 IST 2026
[2026-08-31 02:27:23,814.814 INFO    ] ================================================
[2026-08-31 02:27:24,394.394 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:27:24
[2026-08-31 02:27:24,993.993 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:27:25,269.269 INFO    ] Initializing speech engine...
[2026-08-31 02:27:25,276.276 INFO    ] 2026-08-31 02:27:25
[2026-08-31 02:27:25,541.541 INFO    ] 2026-08-31 02:27:25
[2026-08-31 02:27:25,596.596 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:27:25,844.844 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:27:25,850.850 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:27:26,078.078 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:27:26,085.085 INFO    ] time= 31/08/2026 02:27:26
[2026-08-31 02:27:26,103.103 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:27:26,132.132 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:27:26,239.239 INFO    ] No existing commands found in stream
[2026-08-31 02:27:31,267.267 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:27:31,271.271 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-08-31 02:27:32,019.019 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 02:27:32,022.022 INFO    ] Checking for system updates...
[2026-08-31 02:27:32,062.062 INFO    ] 200
[2026-08-31 02:27:32,065.065 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:27:32,125.125 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:27:32,128.128 INFO    ] No update needed
[2026-08-31 02:27:32,130.130 INFO    ] Checking for camera pi updates...
[2026-08-31 02:27:32,173.173 INFO    ] 200
[2026-08-31 02:27:32,176.176 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:27:32,219.219 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:27:32,275.275 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:27:32,278.278 INFO    ] No camera update needed
[2026-08-31 02:27:32,281.281 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:27:32,284.284 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:27:32,290.290 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:27:32,296.296 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:27:34,338.338 INFO    ] ================================================
[2026-08-31 02:27:34,354.354 INFO    ] Launching Daemon at Mon Aug 31 02:27:34 IST 2026
[2026-08-31 02:27:34,365.365 INFO    ] ================================================
[2026-08-31 02:27:34,938.938 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:27:34
[2026-08-31 02:27:35,573.573 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:27:35,854.854 INFO    ] Initializing speech engine...
[2026-08-31 02:27:35,863.863 INFO    ] 2026-08-31 02:27:35
[2026-08-31 02:27:36,109.109 INFO    ] 2026-08-31 02:27:36
[2026-08-31 02:27:36,144.144 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:27:36,406.406 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:27:36,410.410 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:27:36,667.667 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:27:36,674.674 INFO    ] time= 31/08/2026 02:27:36
[2026-08-31 02:27:36,692.692 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:27:36,720.720 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:27:36,846.846 INFO    ] No existing commands found in stream
[2026-08-31 02:27:41,876.876 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:27:41,879.879 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-08-31 02:27:45,659.659 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 02:27:45,661.661 INFO    ] Checking for system updates...
[2026-08-31 02:27:45,697.697 INFO    ] 200
[2026-08-31 02:27:45,699.699 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:27:45,757.757 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:27:45,760.760 INFO    ] No update needed
[2026-08-31 02:27:45,762.762 INFO    ] Checking for camera pi updates...
[2026-08-31 02:27:45,795.795 INFO    ] 200
[2026-08-31 02:27:45,798.798 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:27:45,840.840 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:27:45,924.924 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:27:45,927.927 INFO    ] No camera update needed
[2026-08-31 02:27:45,929.929 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:27:45,932.932 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:27:45,937.937 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:27:45,942.942 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:27:47,982.982 INFO    ] ================================================
[2026-08-31 02:27:48,997.997 INFO    ] Launching Daemon at Mon Aug 31 02:27:47 IST 2026
[2026-08-31 02:27:48,008.008 INFO    ] ================================================
[2026-08-31 02:27:48,662.662 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:27:48
[2026-08-31 02:27:49,326.326 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:27:49,627.627 INFO    ] Initializing speech engine...
[2026-08-31 02:27:49,637.637 INFO    ] 2026-08-31 02:27:49
[2026-08-31 02:27:49,910.910 INFO    ] 2026-08-31 02:27:49
[2026-08-31 02:27:49,969.969 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:27:50,200.200 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:27:50,210.210 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:27:50,429.429 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:27:50,478.478 INFO    ] time= 31/08/2026 02:27:50
[2026-08-31 02:27:50,484.484 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:27:50,503.503 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:27:50,631.631 INFO    ] No existing commands found in stream
[2026-08-31 02:27:55,650.650 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:27:55,653.653 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-08-31 02:27:59,268.268 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 02:27:59,271.271 INFO    ] Checking for system updates...
[2026-08-31 02:27:59,324.324 INFO    ] 200
[2026-08-31 02:27:59,327.327 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:27:59,380.380 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:27:59,383.383 INFO    ] No update needed
[2026-08-31 02:27:59,385.385 INFO    ] Checking for camera pi updates...
[2026-08-31 02:27:59,420.420 INFO    ] 200
[2026-08-31 02:27:59,423.423 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:27:59,465.465 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:27:59,538.538 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:27:59,541.541 INFO    ] No camera update needed
[2026-08-31 02:27:59,543.543 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:27:59,546.546 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:27:59,552.552 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:27:59,558.558 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:28:01,601.601 INFO    ] ================================================
[2026-08-31 02:28:01,622.622 INFO    ] Launching Daemon at Mon Aug 31 02:28:01 IST 2026
[2026-08-31 02:28:01,638.638 INFO    ] ================================================
[2026-08-31 02:28:02,284.284 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:28:02
[2026-08-31 02:28:02,958.958 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:28:03,235.235 INFO    ] Initializing speech engine...
[2026-08-31 02:28:03,244.244 INFO    ] 2026-08-31 02:28:03
[2026-08-31 02:28:03,506.506 INFO    ] 2026-08-31 02:28:03
[2026-08-31 02:28:03,566.566 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:28:03,817.817 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:28:03,822.822 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:28:04,056.056 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:28:04,063.063 INFO    ] time= 31/08/2026 02:28:04
[2026-08-31 02:28:04,081.081 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:28:04,110.110 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:28:04,236.236 INFO    ] No existing commands found in stream
[2026-08-31 02:28:09,267.267 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:28:09,270.270 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-08-31 02:28:11,418.418 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 02:28:11,421.421 INFO    ] Checking for system updates...
[2026-08-31 02:28:11,457.457 INFO    ] 200
[2026-08-31 02:28:11,460.460 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:28:11,520.520 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:28:11,523.523 INFO    ] No update needed
[2026-08-31 02:28:11,525.525 INFO    ] Checking for camera pi updates...
[2026-08-31 02:28:11,558.558 INFO    ] 200
[2026-08-31 02:28:11,560.560 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:28:11,605.605 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:28:11,700.700 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:28:11,703.703 INFO    ] No camera update needed
[2026-08-31 02:28:11,705.705 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:28:11,707.707 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:28:11,713.713 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:28:11,718.718 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:28:13,759.759 INFO    ] ================================================
[2026-08-31 02:28:13,775.775 INFO    ] Launching Daemon at Mon Aug 31 02:28:13 IST 2026
[2026-08-31 02:28:13,786.786 INFO    ] ================================================
[2026-08-31 02:28:14,374.374 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:28:14
[2026-08-31 02:28:14,982.982 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:28:15,261.261 INFO    ] Initializing speech engine...
[2026-08-31 02:28:15,269.269 INFO    ] 2026-08-31 02:28:15
[2026-08-31 02:28:15,529.529 INFO    ] 2026-08-31 02:28:15
[2026-08-31 02:28:15,559.559 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:28:15,810.810 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:28:15,815.815 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:28:16,039.039 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:28:16,073.073 INFO    ] time= 31/08/2026 02:28:16
[2026-08-31 02:28:16,079.079 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:28:16,100.100 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:28:16,217.217 INFO    ] No existing commands found in stream
[2026-08-31 02:28:21,239.239 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:28:21,241.241 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-08-31 02:28:23,360.360 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 02:28:23,363.363 INFO    ] Checking for system updates...
[2026-08-31 02:28:23,402.402 INFO    ] 200
[2026-08-31 02:28:23,405.405 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:28:23,456.456 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:28:23,459.459 INFO    ] No update needed
[2026-08-31 02:28:23,461.461 INFO    ] Checking for camera pi updates...
[2026-08-31 02:28:23,499.499 INFO    ] 200
[2026-08-31 02:28:23,501.501 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:28:23,542.542 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:28:23,634.634 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:28:23,636.636 INFO    ] No camera update needed
[2026-08-31 02:28:23,638.638 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:28:23,641.641 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:28:23,646.646 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:28:23,651.651 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:28:25,691.691 INFO    ] ================================================
[2026-08-31 02:28:25,706.706 INFO    ] Launching Daemon at Mon Aug 31 02:28:25 IST 2026
[2026-08-31 02:28:25,717.717 INFO    ] ================================================
[2026-08-31 02:28:26,377.377 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:28:26
[2026-08-31 02:28:27,054.054 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:28:27,372.372 INFO    ] Initializing speech engine...
[2026-08-31 02:28:27,378.378 INFO    ] 2026-08-31 02:28:27
[2026-08-31 02:28:27,650.650 INFO    ] 2026-08-31 02:28:27
[2026-08-31 02:28:27,704.704 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:28:27,932.932 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:28:27,946.946 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:28:28,180.180 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:28:28,207.207 INFO    ] time= 31/08/2026 02:28:28
[2026-08-31 02:28:28,224.224 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:28:28,233.233 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:28:28,386.386 INFO    ] No existing commands found in stream
[2026-08-31 02:28:33,423.423 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:28:33,426.426 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-08-31 02:28:37,522.522 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 02:28:37,525.525 INFO    ] Checking for system updates...
[2026-08-31 02:28:37,563.563 INFO    ] 200
[2026-08-31 02:28:37,566.566 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:28:37,619.619 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:28:37,622.622 INFO    ] No update needed
[2026-08-31 02:28:37,625.625 INFO    ] Checking for camera pi updates...
[2026-08-31 02:28:37,660.660 INFO    ] 200
[2026-08-31 02:28:37,663.663 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:28:37,705.705 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:28:37,788.788 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:28:37,791.791 INFO    ] No camera update needed
[2026-08-31 02:28:37,794.794 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:28:37,796.796 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:28:37,803.803 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:28:37,809.809 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:28:39,850.850 INFO    ] ================================================
[2026-08-31 02:28:39,866.866 INFO    ] Launching Daemon at Mon Aug 31 02:28:39 IST 2026
[2026-08-31 02:28:39,877.877 INFO    ] ================================================
[2026-08-31 02:28:40,537.537 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:28:40
[2026-08-31 02:28:41,220.220 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:28:41,529.529 INFO    ] Initializing speech engine...
[2026-08-31 02:28:41,537.537 INFO    ] 2026-08-31 02:28:41
[2026-08-31 02:28:41,814.814 INFO    ] 2026-08-31 02:28:41
[2026-08-31 02:28:41,873.873 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:28:42,230.230 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:28:42,242.242 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:28:42,496.496 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:28:42,539.539 INFO    ] time= 31/08/2026 02:28:42
[2026-08-31 02:28:42,599.599 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:28:42,634.634 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:28:42,785.785 INFO    ] No existing commands found in stream
[2026-08-31 02:28:47,800.800 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:28:47,803.803 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-08-31 02:28:51,780.780 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 02:28:51,783.783 INFO    ] Checking for system updates...
[2026-08-31 02:28:51,820.820 INFO    ] 200
[2026-08-31 02:28:51,823.823 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:28:51,875.875 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:28:51,878.878 INFO    ] No update needed
[2026-08-31 02:28:51,880.880 INFO    ] Checking for camera pi updates...
[2026-08-31 02:28:51,918.918 INFO    ] 200
[2026-08-31 02:28:51,920.920 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:28:51,960.960 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:28:52,139.139 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:28:52,142.142 INFO    ] No camera update needed
[2026-08-31 02:28:52,144.144 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:28:52,146.146 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:28:52,152.152 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:28:52,157.157 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:28:54,198.198 INFO    ] ================================================
[2026-08-31 02:28:54,213.213 INFO    ] Launching Daemon at Mon Aug 31 02:28:54 IST 2026
[2026-08-31 02:28:54,224.224 INFO    ] ================================================
[2026-08-31 02:28:54,807.807 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:28:54
[2026-08-31 02:28:55,405.405 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:28:55,683.683 INFO    ] Initializing speech engine...
[2026-08-31 02:28:55,693.693 INFO    ] 2026-08-31 02:28:55
[2026-08-31 02:28:55,964.964 INFO    ] 2026-08-31 02:28:55
[2026-08-31 02:28:56,005.005 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:28:56,300.300 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:28:56,310.310 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:28:56,550.550 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:28:56,599.599 INFO    ] time= 31/08/2026 02:28:56
[2026-08-31 02:28:56,615.615 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:28:56,622.622 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:28:56,771.771 INFO    ] No existing commands found in stream
[2026-08-31 02:29:01,799.799 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:29:01,803.803 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-08-31 02:29:03,148.148 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 02:29:03,151.151 INFO    ] Checking for system updates...
[2026-08-31 02:29:03,186.186 INFO    ] 200
[2026-08-31 02:29:03,189.189 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:29:03,245.245 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:29:03,247.247 INFO    ] No update needed
[2026-08-31 02:29:03,250.250 INFO    ] Checking for camera pi updates...
[2026-08-31 02:29:03,284.284 INFO    ] 200
[2026-08-31 02:29:03,286.286 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:29:03,326.326 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:29:03,416.416 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:29:03,419.419 INFO    ] No camera update needed
[2026-08-31 02:29:03,421.421 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:29:03,424.424 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:29:03,429.429 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:29:03,434.434 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:29:05,474.474 INFO    ] ================================================
[2026-08-31 02:29:05,489.489 INFO    ] Launching Daemon at Mon Aug 31 02:29:05 IST 2026
[2026-08-31 02:29:05,499.499 INFO    ] ================================================
[2026-08-31 02:29:06,102.102 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:29:06
[2026-08-31 02:29:06,708.708 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:29:06,968.968 INFO    ] Initializing speech engine...
[2026-08-31 02:29:06,977.977 INFO    ] 2026-08-31 02:29:06
[2026-08-31 02:29:07,274.274 INFO    ] 2026-08-31 02:29:07
[2026-08-31 02:29:07,312.312 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:29:07,538.538 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:29:07,584.584 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:29:07,765.765 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:29:07,813.813 INFO    ] time= 31/08/2026 02:29:07
[2026-08-31 02:29:07,867.867 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:29:07,918.918 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:29:08,065.065 INFO    ] No existing commands found in stream
[2026-08-31 02:29:13,097.097 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:29:13,100.100 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-08-31 02:29:15,986.986 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 02:29:15,989.989 INFO    ] Checking for system updates...
[2026-08-31 02:29:16,025.025 INFO    ] 200
[2026-08-31 02:29:16,028.028 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:29:16,084.084 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:29:16,087.087 INFO    ] No update needed
[2026-08-31 02:29:16,089.089 INFO    ] Checking for camera pi updates...
[2026-08-31 02:29:16,123.123 INFO    ] 200
[2026-08-31 02:29:16,125.125 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:29:16,165.165 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:29:16,254.254 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:29:16,256.256 INFO    ] No camera update needed
[2026-08-31 02:29:16,259.259 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:29:16,261.261 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:29:16,266.266 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:29:16,271.271 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:29:18,311.311 INFO    ] ================================================
[2026-08-31 02:29:18,326.326 INFO    ] Launching Daemon at Mon Aug 31 02:29:18 IST 2026
[2026-08-31 02:29:18,338.338 INFO    ] ================================================
[2026-08-31 02:29:18,910.910 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:29:18
[2026-08-31 02:29:19,497.497 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:29:19,748.748 INFO    ] Initializing speech engine...
[2026-08-31 02:29:19,762.762 INFO    ] 2026-08-31 02:29:19
[2026-08-31 02:29:20,028.028 INFO    ] 2026-08-31 02:29:20
[2026-08-31 02:29:20,064.064 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:29:20,325.325 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:29:20,330.330 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:29:20,527.527 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:29:20,576.576 INFO    ] time= 31/08/2026 02:29:20
[2026-08-31 02:29:20,594.594 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:29:20,600.600 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:29:20,731.731 INFO    ] No existing commands found in stream
[2026-08-31 02:29:25,754.754 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:29:25,757.757 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-08-31 02:29:27,065.065 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 02:29:27,069.069 INFO    ] Checking for system updates...
[2026-08-31 02:29:27,109.109 INFO    ] 200
[2026-08-31 02:29:27,112.112 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:29:27,178.178 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:29:27,181.181 INFO    ] No update needed
[2026-08-31 02:29:27,184.184 INFO    ] Checking for camera pi updates...
[2026-08-31 02:29:27,222.222 INFO    ] 200
[2026-08-31 02:29:27,225.225 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:29:27,272.272 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:29:27,358.358 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:29:27,361.361 INFO    ] No camera update needed
[2026-08-31 02:29:27,364.364 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:29:27,366.366 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:29:27,373.373 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:29:27,379.379 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:29:29,421.421 INFO    ] ================================================
[2026-08-31 02:29:29,436.436 INFO    ] Launching Daemon at Mon Aug 31 02:29:29 IST 2026
[2026-08-31 02:29:29,446.446 INFO    ] ================================================
[2026-08-31 02:29:30,033.033 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:29:30
[2026-08-31 02:29:30,636.636 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:29:30,917.917 INFO    ] Initializing speech engine...
[2026-08-31 02:29:30,925.925 INFO    ] 2026-08-31 02:29:30
[2026-08-31 02:29:31,191.191 INFO    ] 2026-08-31 02:29:31
[2026-08-31 02:29:31,228.228 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:29:31,496.496 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:29:31,501.501 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:29:31,755.755 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:29:31,773.773 INFO    ] time= 31/08/2026 02:29:31
[2026-08-31 02:29:31,792.792 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:29:31,822.822 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:29:31,955.955 INFO    ] No existing commands found in stream
[2026-08-31 02:29:36,990.990 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:29:36,993.993 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-08-31 02:29:39,599.599 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 02:29:39,601.601 INFO    ] Checking for system updates...
[2026-08-31 02:29:39,637.637 INFO    ] 200
[2026-08-31 02:29:39,640.640 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:29:39,692.692 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:29:39,694.694 INFO    ] No update needed
[2026-08-31 02:29:39,696.696 INFO    ] Checking for camera pi updates...
[2026-08-31 02:29:39,730.730 INFO    ] 200
[2026-08-31 02:29:39,732.732 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:29:39,788.788 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:29:39,879.879 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:29:39,881.881 INFO    ] No camera update needed
[2026-08-31 02:29:39,884.884 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:29:39,886.886 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:29:39,891.891 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:29:39,896.896 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:29:41,938.938 INFO    ] ================================================
[2026-08-31 02:29:41,954.954 INFO    ] Launching Daemon at Mon Aug 31 02:29:41 IST 2026
[2026-08-31 02:29:41,964.964 INFO    ] ================================================
[2026-08-31 02:29:42,530.530 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:29:42
[2026-08-31 02:29:43,114.114 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:29:43,383.383 INFO    ] Initializing speech engine...
[2026-08-31 02:29:43,391.391 INFO    ] 2026-08-31 02:29:43
[2026-08-31 02:29:43,642.642 INFO    ] 2026-08-31 02:29:43
[2026-08-31 02:29:43,677.677 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:29:44,065.065 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:29:44,081.081 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:29:44,338.338 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:29:44,365.365 INFO    ] time= 31/08/2026 02:29:44
[2026-08-31 02:29:44,419.419 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:29:44,461.461 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:29:44,613.613 INFO    ] No existing commands found in stream
[2026-08-31 02:29:49,626.626 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:29:49,629.629 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-08-31 02:29:50,897.897 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 02:29:50,899.899 INFO    ] Checking for system updates...
[2026-08-31 02:29:50,936.936 INFO    ] 200
[2026-08-31 02:29:50,939.939 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:29:50,992.992 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:29:50,994.994 INFO    ] No update needed
[2026-08-31 02:29:50,996.996 INFO    ] Checking for camera pi updates...
[2026-08-31 02:29:51,030.030 INFO    ] 200
[2026-08-31 02:29:51,032.032 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:29:51,072.072 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:29:51,153.153 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:29:51,155.155 INFO    ] No camera update needed
[2026-08-31 02:29:51,158.158 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:29:51,160.160 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:29:51,165.165 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:29:51,170.170 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:29:53,212.212 INFO    ] ================================================
[2026-08-31 02:29:53,228.228 INFO    ] Launching Daemon at Mon Aug 31 02:29:53 IST 2026
[2026-08-31 02:29:53,239.239 INFO    ] ================================================
[2026-08-31 02:29:53,894.894 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:29:53
[2026-08-31 02:29:54,570.570 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:29:54,877.877 INFO    ] Initializing speech engine...
[2026-08-31 02:29:54,884.884 INFO    ] 2026-08-31 02:29:54
[2026-08-31 02:29:55,159.159 INFO    ] 2026-08-31 02:29:55
[2026-08-31 02:29:55,220.220 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:29:55,454.454 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:29:55,461.461 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:29:55,686.686 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:29:55,725.725 INFO    ] time= 31/08/2026 02:29:55
[2026-08-31 02:29:55,744.744 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:29:55,754.754 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:29:55,891.891 INFO    ] No existing commands found in stream
[2026-08-31 02:30:00,918.918 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:30:00,921.921 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-08-31 02:30:01,804.804 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 02:30:01,808.808 INFO    ] Checking for system updates...
[2026-08-31 02:30:01,844.844 INFO    ] 200
[2026-08-31 02:30:01,847.847 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:30:01,905.905 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:30:01,907.907 INFO    ] No update needed
[2026-08-31 02:30:01,910.910 INFO    ] Checking for camera pi updates...
[2026-08-31 02:30:01,945.945 INFO    ] 200
[2026-08-31 02:30:01,948.948 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:30:01,988.988 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:30:02,149.149 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:30:02,167.167 INFO    ] No camera update needed
[2026-08-31 02:30:02,175.175 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:30:02,179.179 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:30:02,200.200 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:30:02,208.208 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:30:04,259.259 INFO    ] ================================================
[2026-08-31 02:30:04,276.276 INFO    ] Launching Daemon at Mon Aug 31 02:30:04 IST 2026
[2026-08-31 02:30:04,287.287 INFO    ] ================================================
[2026-08-31 02:30:04,872.872 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:30:04
[2026-08-31 02:30:05,463.463 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:30:05,719.719 INFO    ] Initializing speech engine...
[2026-08-31 02:30:05,726.726 INFO    ] 2026-08-31 02:30:05
[2026-08-31 02:30:06,019.019 INFO    ] 2026-08-31 02:30:05
[2026-08-31 02:30:06,054.054 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:30:06,279.279 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:30:06,288.288 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:30:06,507.507 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:30:06,549.549 INFO    ] time= 31/08/2026 02:30:06
[2026-08-31 02:30:06,604.604 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:30:06,660.660 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:30:06,826.826 INFO    ] No existing commands found in stream
[2026-08-31 02:30:11,840.840 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:30:11,842.842 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-08-31 02:30:13,781.781 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 02:30:13,784.784 INFO    ] Checking for system updates...
[2026-08-31 02:30:13,820.820 INFO    ] 200
[2026-08-31 02:30:13,823.823 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:30:13,876.876 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:30:13,878.878 INFO    ] No update needed
[2026-08-31 02:30:13,881.881 INFO    ] Checking for camera pi updates...
[2026-08-31 02:30:13,914.914 INFO    ] 200
[2026-08-31 02:30:13,917.917 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:30:13,958.958 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:30:14,045.045 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:30:14,048.048 INFO    ] No camera update needed
[2026-08-31 02:30:14,050.050 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:30:14,053.053 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:30:14,058.058 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:30:14,063.063 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:30:16,102.102 INFO    ] ================================================
[2026-08-31 02:30:16,116.116 INFO    ] Launching Daemon at Mon Aug 31 02:30:16 IST 2026
[2026-08-31 02:30:16,127.127 INFO    ] ================================================
[2026-08-31 02:30:16,768.768 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:30:16
[2026-08-31 02:30:17,430.430 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:30:17,731.731 INFO    ] Initializing speech engine...
[2026-08-31 02:30:17,738.738 INFO    ] 2026-08-31 02:30:17
[2026-08-31 02:30:18,055.055 INFO    ] 2026-08-31 02:30:18
[2026-08-31 02:30:18,138.138 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:30:18,416.416 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:30:18,459.459 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:30:18,697.697 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:30:18,729.729 INFO    ] time= 31/08/2026 02:30:18
[2026-08-31 02:30:18,784.784 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:30:18,816.816 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:30:18,959.959 INFO    ] No existing commands found in stream
[2026-08-31 02:30:23,975.975 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:30:23,979.979 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-08-31 02:30:27,480.480 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 02:30:27,483.483 INFO    ] Checking for system updates...
[2026-08-31 02:30:27,525.525 INFO    ] 200
[2026-08-31 02:30:27,528.528 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:30:27,587.587 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:30:27,590.590 INFO    ] No update needed
[2026-08-31 02:30:27,593.593 INFO    ] Checking for camera pi updates...
[2026-08-31 02:30:27,631.631 INFO    ] 200
[2026-08-31 02:30:27,634.634 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:30:27,684.684 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:30:27,766.766 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:30:27,769.769 INFO    ] No camera update needed
[2026-08-31 02:30:27,772.772 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:30:27,775.775 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:30:27,781.781 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:30:27,787.787 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:30:29,830.830 INFO    ] ================================================
[2026-08-31 02:30:29,844.844 INFO    ] Launching Daemon at Mon Aug 31 02:30:29 IST 2026
[2026-08-31 02:30:29,855.855 INFO    ] ================================================
[2026-08-31 02:30:30,423.423 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:30:30
[2026-08-31 02:30:31,006.006 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:30:31,274.274 INFO    ] Initializing speech engine...
[2026-08-31 02:30:31,283.283 INFO    ] 2026-08-31 02:30:31
[2026-08-31 02:30:31,529.529 INFO    ] 2026-08-31 02:30:31
[2026-08-31 02:30:31,564.564 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:30:31,821.821 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:30:31,826.826 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:30:32,060.060 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:30:32,086.086 INFO    ] time= 31/08/2026 02:30:32
[2026-08-31 02:30:32,100.100 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:30:32,107.107 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:30:32,245.245 INFO    ] No existing commands found in stream
[2026-08-31 02:30:37,260.260 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:30:37,263.263 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-08-31 02:30:40,118.118 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 02:30:40,120.120 INFO    ] Checking for system updates...
[2026-08-31 02:30:40,157.157 INFO    ] 200
[2026-08-31 02:30:40,160.160 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:30:40,213.213 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:30:40,215.215 INFO    ] No update needed
[2026-08-31 02:30:40,218.218 INFO    ] Checking for camera pi updates...
[2026-08-31 02:30:40,257.257 INFO    ] 200
[2026-08-31 02:30:40,259.259 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:30:40,299.299 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:30:40,382.382 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:30:40,385.385 INFO    ] No camera update needed
[2026-08-31 02:30:40,387.387 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:30:40,389.389 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:30:40,395.395 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:30:40,400.400 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:30:42,442.442 INFO    ] ================================================
[2026-08-31 02:30:42,457.457 INFO    ] Launching Daemon at Mon Aug 31 02:30:42 IST 2026
[2026-08-31 02:30:42,468.468 INFO    ] ================================================
[2026-08-31 02:30:43,109.109 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:30:43
[2026-08-31 02:30:43,770.770 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:30:44,071.071 INFO    ] Initializing speech engine...
[2026-08-31 02:30:44,085.085 INFO    ] 2026-08-31 02:30:44
[2026-08-31 02:30:44,394.394 INFO    ] 2026-08-31 02:30:44
[2026-08-31 02:30:44,480.480 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:30:44,692.692 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:30:44,702.702 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:30:44,895.895 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:30:44,914.914 INFO    ] time= 31/08/2026 02:30:44
[2026-08-31 02:30:44,932.932 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:30:44,950.950 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:30:45,084.084 INFO    ] No existing commands found in stream
[2026-08-31 02:30:50,111.111 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:30:50,114.114 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-08-31 02:30:52,583.583 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 02:30:52,586.586 INFO    ] Checking for system updates...
[2026-08-31 02:30:52,622.622 INFO    ] 200
[2026-08-31 02:30:52,625.625 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:30:52,678.678 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:30:52,681.681 INFO    ] No update needed
[2026-08-31 02:30:52,684.684 INFO    ] Checking for camera pi updates...
[2026-08-31 02:30:52,718.718 INFO    ] 200
[2026-08-31 02:30:52,721.721 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:30:52,766.766 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:30:52,850.850 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:30:52,853.853 INFO    ] No camera update needed
[2026-08-31 02:30:52,855.855 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:30:52,857.857 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:30:52,863.863 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:30:52,868.868 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:30:54,909.909 INFO    ] ================================================
[2026-08-31 02:30:54,924.924 INFO    ] Launching Daemon at Mon Aug 31 02:30:54 IST 2026
[2026-08-31 02:30:54,934.934 INFO    ] ================================================
[2026-08-31 02:30:55,501.501 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:30:55
[2026-08-31 02:30:56,086.086 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:30:56,344.344 INFO    ] Initializing speech engine...
[2026-08-31 02:30:56,361.361 INFO    ] 2026-08-31 02:30:56
[2026-08-31 02:30:56,616.616 INFO    ] 2026-08-31 02:30:56
[2026-08-31 02:30:56,651.651 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:30:56,912.912 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:30:56,921.921 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:30:57,143.143 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:30:57,189.189 INFO    ] time= 31/08/2026 02:30:57
[2026-08-31 02:30:57,195.195 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:30:57,212.212 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:30:57,346.346 INFO    ] No existing commands found in stream
[2026-08-31 02:31:02,360.360 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:31:02,363.363 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-08-31 02:31:04,282.282 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 02:31:04,284.284 INFO    ] Checking for system updates...
[2026-08-31 02:31:04,325.325 INFO    ] 200
[2026-08-31 02:31:04,328.328 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:31:04,380.380 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:31:04,383.383 INFO    ] No update needed
[2026-08-31 02:31:04,385.385 INFO    ] Checking for camera pi updates...
[2026-08-31 02:31:04,418.418 INFO    ] 200
[2026-08-31 02:31:04,421.421 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:31:04,461.461 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:31:04,552.552 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:31:04,554.554 INFO    ] No camera update needed
[2026-08-31 02:31:04,557.557 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:31:04,559.559 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:31:04,564.564 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:31:04,569.569 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:31:06,613.613 INFO    ] ================================================
[2026-08-31 02:31:06,628.628 INFO    ] Launching Daemon at Mon Aug 31 02:31:06 IST 2026
[2026-08-31 02:31:06,639.639 INFO    ] ================================================
[2026-08-31 02:31:07,207.207 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:31:07
[2026-08-31 02:31:07,791.791 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:31:08,053.053 INFO    ] Initializing speech engine...
[2026-08-31 02:31:08,070.070 INFO    ] 2026-08-31 02:31:08
[2026-08-31 02:31:08,329.329 INFO    ] 2026-08-31 02:31:08
[2026-08-31 02:31:08,365.365 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:31:08,629.629 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:31:08,634.634 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:31:08,889.889 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:31:08,904.904 INFO    ] time= 31/08/2026 02:31:08
[2026-08-31 02:31:08,922.922 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:31:08,934.934 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:31:09,072.072 INFO    ] No existing commands found in stream
[2026-08-31 02:31:14,094.094 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:31:14,097.097 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-08-31 02:31:14,758.758 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 02:31:14,760.760 INFO    ] Checking for system updates...
[2026-08-31 02:31:14,800.800 INFO    ] 200
[2026-08-31 02:31:14,803.803 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:31:14,855.855 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:31:14,858.858 INFO    ] No update needed
[2026-08-31 02:31:14,861.861 INFO    ] Checking for camera pi updates...
[2026-08-31 02:31:14,895.895 INFO    ] 200
[2026-08-31 02:31:14,898.898 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:31:14,939.939 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:31:15,021.021 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:31:15,023.023 INFO    ] No camera update needed
[2026-08-31 02:31:15,026.026 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:31:15,028.028 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:31:15,034.034 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:31:15,038.038 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:31:17,080.080 INFO    ] ================================================
[2026-08-31 02:31:17,095.095 INFO    ] Launching Daemon at Mon Aug 31 02:31:17 IST 2026
[2026-08-31 02:31:17,106.106 INFO    ] ================================================
[2026-08-31 02:31:17,675.675 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:31:17
[2026-08-31 02:31:18,261.261 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:31:18,534.534 INFO    ] Initializing speech engine...
[2026-08-31 02:31:18,542.542 INFO    ] 2026-08-31 02:31:18
[2026-08-31 02:31:18,793.793 INFO    ] 2026-08-31 02:31:18
[2026-08-31 02:31:18,830.830 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:31:19,092.092 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:31:19,097.097 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:31:19,304.304 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:31:19,361.361 INFO    ] time= 31/08/2026 02:31:19
[2026-08-31 02:31:19,368.368 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:31:19,387.387 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:31:19,522.522 INFO    ] No existing commands found in stream
[2026-08-31 02:31:24,536.536 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:31:24,539.539 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-08-31 02:31:26,558.558 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 02:31:26,560.560 INFO    ] Checking for system updates...
[2026-08-31 02:31:26,599.599 INFO    ] 200
[2026-08-31 02:31:26,602.602 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:31:26,661.661 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:31:26,663.663 INFO    ] No update needed
[2026-08-31 02:31:26,665.665 INFO    ] Checking for camera pi updates...
[2026-08-31 02:31:26,703.703 INFO    ] 200
[2026-08-31 02:31:26,705.705 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:31:26,751.751 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:31:26,848.848 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:31:26,851.851 INFO    ] No camera update needed
[2026-08-31 02:31:26,853.853 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:31:26,855.855 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:31:26,861.861 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:31:26,866.866 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:31:28,908.908 INFO    ] ================================================
[2026-08-31 02:31:28,923.923 INFO    ] Launching Daemon at Mon Aug 31 02:31:28 IST 2026
[2026-08-31 02:31:28,934.934 INFO    ] ================================================
[2026-08-31 02:31:29,588.588 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:31:29
[2026-08-31 02:31:30,263.263 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:31:30,575.575 INFO    ] Initializing speech engine...
[2026-08-31 02:31:30,587.587 INFO    ] 2026-08-31 02:31:30
[2026-08-31 02:31:30,873.873 INFO    ] 2026-08-31 02:31:30
[2026-08-31 02:31:30,919.919 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:31:31,212.212 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:31:31,220.220 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:31:31,415.415 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:31:31,438.438 INFO    ] time= 31/08/2026 02:31:31
[2026-08-31 02:31:31,467.467 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:31:31,478.478 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:31:31,595.595 INFO    ] No existing commands found in stream
[2026-08-31 02:31:36,631.631 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:31:36,635.635 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-08-31 02:31:41,184.184 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 02:31:41,187.187 INFO    ] Checking for system updates...
[2026-08-31 02:31:41,224.224 INFO    ] 200
[2026-08-31 02:31:41,226.226 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:31:41,287.287 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:31:41,291.291 INFO    ] No update needed
[2026-08-31 02:31:41,294.294 INFO    ] Checking for camera pi updates...
[2026-08-31 02:31:41,328.328 INFO    ] 200
[2026-08-31 02:31:41,331.331 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:31:41,378.378 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:31:41,459.459 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:31:41,462.462 INFO    ] No camera update needed
[2026-08-31 02:31:41,465.465 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:31:41,467.467 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:31:41,474.474 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:31:41,480.480 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:31:43,521.521 INFO    ] ================================================
[2026-08-31 02:31:43,537.537 INFO    ] Launching Daemon at Mon Aug 31 02:31:43 IST 2026
[2026-08-31 02:31:43,548.548 INFO    ] ================================================
[2026-08-31 02:31:44,122.122 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:31:44
[2026-08-31 02:31:44,717.717 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:31:44,995.995 INFO    ] Initializing speech engine...
[2026-08-31 02:31:45,001.001 INFO    ] 2026-08-31 02:31:44
[2026-08-31 02:31:45,264.264 INFO    ] 2026-08-31 02:31:45
[2026-08-31 02:31:45,303.303 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:31:45,523.523 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:31:45,579.579 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:31:45,754.754 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:31:45,813.813 INFO    ] time= 31/08/2026 02:31:45
[2026-08-31 02:31:45,868.868 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:31:45,903.903 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:31:46,045.045 INFO    ] No existing commands found in stream
[2026-08-31 02:31:51,070.070 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:31:51,073.073 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-08-31 02:31:54,704.704 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 02:31:54,706.706 INFO    ] Checking for system updates...
[2026-08-31 02:31:54,743.743 INFO    ] 200
[2026-08-31 02:31:54,745.745 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:31:54,798.798 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:31:54,801.801 INFO    ] No update needed
[2026-08-31 02:31:54,803.803 INFO    ] Checking for camera pi updates...
[2026-08-31 02:31:54,838.838 INFO    ] 200
[2026-08-31 02:31:54,840.840 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:31:54,886.886 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:31:54,990.990 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:31:54,992.992 INFO    ] No camera update needed
[2026-08-31 02:31:54,995.995 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:31:54,997.997 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:31:55,002.002 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:31:55,007.007 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:31:57,049.049 INFO    ] ================================================
[2026-08-31 02:31:57,065.065 INFO    ] Launching Daemon at Mon Aug 31 02:31:57 IST 2026
[2026-08-31 02:31:57,075.075 INFO    ] ================================================
[2026-08-31 02:31:57,659.659 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:31:57
[2026-08-31 02:31:58,259.259 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:31:58,517.517 INFO    ] Initializing speech engine...
[2026-08-31 02:31:58,523.523 INFO    ] 2026-08-31 02:31:58
[2026-08-31 02:31:58,826.826 INFO    ] 2026-08-31 02:31:58
[2026-08-31 02:31:58,852.852 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:31:59,090.090 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:31:59,099.099 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:31:59,321.321 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:31:59,328.328 INFO    ] time= 31/08/2026 02:31:59
[2026-08-31 02:31:59,373.373 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:31:59,422.422 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:31:59,532.532 INFO    ] No existing commands found in stream
[2026-08-31 02:32:04,545.545 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:32:04,548.548 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-08-31 02:32:05,318.318 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 02:32:05,321.321 INFO    ] Checking for system updates...
[2026-08-31 02:32:05,360.360 INFO    ] 200
[2026-08-31 02:32:05,363.363 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:32:05,416.416 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:32:05,419.419 INFO    ] No update needed
[2026-08-31 02:32:05,421.421 INFO    ] Checking for camera pi updates...
[2026-08-31 02:32:05,461.461 INFO    ] 200
[2026-08-31 02:32:05,463.463 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:32:05,509.509 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:32:05,592.592 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:32:05,594.594 INFO    ] No camera update needed
[2026-08-31 02:32:05,597.597 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:32:05,599.599 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:32:05,605.605 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:32:05,610.610 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:32:07,651.651 INFO    ] ================================================
[2026-08-31 02:32:07,666.666 INFO    ] Launching Daemon at Mon Aug 31 02:32:07 IST 2026
[2026-08-31 02:32:07,677.677 INFO    ] ================================================
[2026-08-31 02:32:08,333.333 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:32:08
[2026-08-31 02:32:09,009.009 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:32:09,325.325 INFO    ] Initializing speech engine...
[2026-08-31 02:32:09,330.330 INFO    ] 2026-08-31 02:32:09
[2026-08-31 02:32:09,640.640 INFO    ] 2026-08-31 02:32:09
[2026-08-31 02:32:09,729.729 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:32:10,006.006 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:32:10,023.023 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:32:10,272.272 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:32:10,304.304 INFO    ] time= 31/08/2026 02:32:10
[2026-08-31 02:32:10,368.368 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:32:10,414.414 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:32:10,590.590 INFO    ] No existing commands found in stream
[2026-08-31 02:32:15,606.606 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:32:15,610.610 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-08-31 02:32:19,140.140 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 02:32:19,143.143 INFO    ] Checking for system updates...
[2026-08-31 02:32:19,180.180 INFO    ] 200
[2026-08-31 02:32:19,182.182 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:32:19,235.235 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:32:19,238.238 INFO    ] No update needed
[2026-08-31 02:32:19,241.241 INFO    ] Checking for camera pi updates...
[2026-08-31 02:32:19,276.276 INFO    ] 200
[2026-08-31 02:32:19,279.279 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:32:19,326.326 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:32:19,406.406 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:32:19,409.409 INFO    ] No camera update needed
[2026-08-31 02:32:19,411.411 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:32:19,413.413 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:32:19,418.418 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:32:19,423.423 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:32:21,464.464 INFO    ] ================================================
[2026-08-31 02:32:21,480.480 INFO    ] Launching Daemon at Mon Aug 31 02:32:21 IST 2026
[2026-08-31 02:32:21,490.490 INFO    ] ================================================
[2026-08-31 02:32:22,059.059 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:32:22
[2026-08-31 02:32:22,642.642 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:32:22,917.917 INFO    ] Initializing speech engine...
[2026-08-31 02:32:22,924.924 INFO    ] 2026-08-31 02:32:22
[2026-08-31 02:32:23,187.187 INFO    ] 2026-08-31 02:32:23
[2026-08-31 02:32:23,239.239 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:32:23,477.477 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:32:23,481.481 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:32:23,697.697 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:32:23,748.748 INFO    ] time= 31/08/2026 02:32:23
[2026-08-31 02:32:23,754.754 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:32:23,774.774 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:32:23,887.887 INFO    ] No existing commands found in stream
[2026-08-31 02:32:28,905.905 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:32:28,908.908 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-08-31 02:32:32,897.897 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 02:32:32,900.900 INFO    ] Checking for system updates...
[2026-08-31 02:32:32,948.948 INFO    ] 200
[2026-08-31 02:32:32,951.951 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:32:33,007.007 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:32:33,010.010 INFO    ] No update needed
[2026-08-31 02:32:33,012.012 INFO    ] Checking for camera pi updates...
[2026-08-31 02:32:33,050.050 INFO    ] 200
[2026-08-31 02:32:33,052.052 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:32:33,097.097 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:32:33,177.177 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:32:33,179.179 INFO    ] No camera update needed
[2026-08-31 02:32:33,182.182 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:32:33,184.184 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:32:33,189.189 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:32:33,194.194 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:32:35,235.235 INFO    ] ================================================
[2026-08-31 02:32:35,251.251 INFO    ] Launching Daemon at Mon Aug 31 02:32:35 IST 2026
[2026-08-31 02:32:35,263.263 INFO    ] ================================================
[2026-08-31 02:32:35,857.857 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:32:35
[2026-08-31 02:32:36,476.476 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:32:36,738.738 INFO    ] Initializing speech engine...
[2026-08-31 02:32:36,747.747 INFO    ] 2026-08-31 02:32:36
[2026-08-31 02:32:37,046.046 INFO    ] 2026-08-31 02:32:37
[2026-08-31 02:32:37,085.085 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:32:37,310.310 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:32:37,319.319 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:32:37,522.522 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:32:37,546.546 INFO    ] time= 31/08/2026 02:32:37
[2026-08-31 02:32:37,563.563 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:32:37,623.623 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:32:37,753.753 INFO    ] No existing commands found in stream
[2026-08-31 02:32:42,765.765 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:32:42,768.768 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-08-31 02:32:45,182.182 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 02:32:45,184.184 INFO    ] Checking for system updates...
[2026-08-31 02:32:45,223.223 INFO    ] 200
[2026-08-31 02:32:45,226.226 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:32:45,284.284 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:32:45,287.287 INFO    ] No update needed
[2026-08-31 02:32:45,289.289 INFO    ] Checking for camera pi updates...
[2026-08-31 02:32:45,323.323 INFO    ] 200
[2026-08-31 02:32:45,325.325 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:32:45,369.369 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:32:45,472.472 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:32:45,474.474 INFO    ] No camera update needed
[2026-08-31 02:32:45,477.477 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:32:45,479.479 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:32:45,484.484 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:32:45,489.489 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:32:47,530.530 INFO    ] ================================================
[2026-08-31 02:32:47,546.546 INFO    ] Launching Daemon at Mon Aug 31 02:32:47 IST 2026
[2026-08-31 02:32:47,557.557 INFO    ] ================================================
[2026-08-31 02:32:48,210.210 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:32:48
[2026-08-31 02:32:48,882.882 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:32:49,194.194 INFO    ] Initializing speech engine...
[2026-08-31 02:32:49,206.206 INFO    ] 2026-08-31 02:32:49
[2026-08-31 02:32:49,488.488 INFO    ] 2026-08-31 02:32:49
[2026-08-31 02:32:49,533.533 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:32:49,891.891 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:32:49,934.934 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:32:50,172.172 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:32:50,211.211 INFO    ] time= 31/08/2026 02:32:50
[2026-08-31 02:32:50,276.276 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:32:50,295.295 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:32:50,451.451 INFO    ] No existing commands found in stream
[2026-08-31 02:32:55,484.484 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:32:55,487.487 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-08-31 02:32:59,160.160 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 02:32:59,163.163 INFO    ] Checking for system updates...
[2026-08-31 02:32:59,200.200 INFO    ] 200
[2026-08-31 02:32:59,203.203 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:32:59,255.255 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:32:59,257.257 INFO    ] No update needed
[2026-08-31 02:32:59,260.260 INFO    ] Checking for camera pi updates...
[2026-08-31 02:32:59,293.293 INFO    ] 200
[2026-08-31 02:32:59,296.296 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:32:59,338.338 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:32:59,421.421 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:32:59,423.423 INFO    ] No camera update needed
[2026-08-31 02:32:59,425.425 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:32:59,428.428 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:32:59,433.433 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:32:59,438.438 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:33:01,478.478 INFO    ] ================================================
[2026-08-31 02:33:01,503.503 INFO    ] Launching Daemon at Mon Aug 31 02:33:01 IST 2026
[2026-08-31 02:33:01,521.521 INFO    ] ================================================
[2026-08-31 02:33:02,356.356 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:33:02
[2026-08-31 02:33:03,004.004 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:33:03,289.289 INFO    ] Initializing speech engine...
[2026-08-31 02:33:03,295.295 INFO    ] 2026-08-31 02:33:03
[2026-08-31 02:33:03,589.589 INFO    ] 2026-08-31 02:33:03
[2026-08-31 02:33:03,624.624 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:33:03,884.884 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:33:03,893.893 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:33:04,106.106 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:33:04,157.157 INFO    ] time= 31/08/2026 02:33:04
[2026-08-31 02:33:04,164.164 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:33:04,182.182 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:33:04,316.316 INFO    ] No existing commands found in stream
[2026-08-31 02:33:09,336.336 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:33:09,339.339 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-08-31 02:33:09,942.942 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 02:33:09,945.945 INFO    ] Checking for system updates...
[2026-08-31 02:33:09,981.981 INFO    ] 200
[2026-08-31 02:33:09,983.983 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:33:10,042.042 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:33:10,045.045 INFO    ] No update needed
[2026-08-31 02:33:10,047.047 INFO    ] Checking for camera pi updates...
[2026-08-31 02:33:10,084.084 INFO    ] 200
[2026-08-31 02:33:10,087.087 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:33:10,132.132 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:33:10,311.311 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:33:10,313.313 INFO    ] No camera update needed
[2026-08-31 02:33:10,315.315 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:33:10,318.318 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:33:10,323.323 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:33:10,328.328 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:33:12,369.369 INFO    ] ================================================
[2026-08-31 02:33:12,385.385 INFO    ] Launching Daemon at Mon Aug 31 02:33:12 IST 2026
[2026-08-31 02:33:12,395.395 INFO    ] ================================================
[2026-08-31 02:33:13,041.041 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:33:13
[2026-08-31 02:33:13,709.709 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:33:14,016.016 INFO    ] Initializing speech engine...
[2026-08-31 02:33:14,028.028 INFO    ] 2026-08-31 02:33:14
[2026-08-31 02:33:14,339.339 INFO    ] 2026-08-31 02:33:14
[2026-08-31 02:33:14,428.428 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:33:14,611.611 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:33:14,646.646 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:33:14,851.851 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:33:14,858.858 INFO    ] time= 31/08/2026 02:33:14
[2026-08-31 02:33:14,881.881 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:33:14,910.910 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:33:15,041.041 INFO    ] No existing commands found in stream
[2026-08-31 02:33:20,072.072 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:33:20,075.075 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-08-31 02:33:23,222.222 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 02:33:23,225.225 INFO    ] Checking for system updates...
[2026-08-31 02:33:23,265.265 INFO    ] 200
[2026-08-31 02:33:23,268.268 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:33:23,326.326 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:33:23,329.329 INFO    ] No update needed
[2026-08-31 02:33:23,331.331 INFO    ] Checking for camera pi updates...
[2026-08-31 02:33:23,368.368 INFO    ] 200
[2026-08-31 02:33:23,371.371 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:33:23,411.411 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:33:23,510.510 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:33:23,513.513 INFO    ] No camera update needed
[2026-08-31 02:33:23,515.515 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:33:23,517.517 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:33:23,522.522 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:33:23,527.527 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:33:25,568.568 INFO    ] ================================================
[2026-08-31 02:33:25,583.583 INFO    ] Launching Daemon at Mon Aug 31 02:33:25 IST 2026
[2026-08-31 02:33:25,594.594 INFO    ] ================================================
[2026-08-31 02:33:26,174.174 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:33:26
[2026-08-31 02:33:26,840.840 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:33:27,154.154 INFO    ] Initializing speech engine...
[2026-08-31 02:33:27,161.161 INFO    ] 2026-08-31 02:33:27
[2026-08-31 02:33:27,467.467 INFO    ] 2026-08-31 02:33:27
[2026-08-31 02:33:27,551.551 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:33:27,772.772 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:33:27,779.779 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:33:27,975.975 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:33:27,995.995 INFO    ] time= 31/08/2026 02:33:27
[2026-08-31 02:33:28,024.024 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:33:28,036.036 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:33:28,149.149 INFO    ] No existing commands found in stream
[2026-08-31 02:33:33,175.175 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:33:33,179.179 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-08-31 02:33:36,535.535 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 02:33:36,538.538 INFO    ] Checking for system updates...
[2026-08-31 02:33:36,578.578 INFO    ] 200
[2026-08-31 02:33:36,581.581 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:33:36,639.639 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:33:36,642.642 INFO    ] No update needed
[2026-08-31 02:33:36,644.644 INFO    ] Checking for camera pi updates...
[2026-08-31 02:33:36,678.678 INFO    ] 200
[2026-08-31 02:33:36,680.680 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:33:36,721.721 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:33:36,803.803 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:33:36,805.805 INFO    ] No camera update needed
[2026-08-31 02:33:36,808.808 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:33:36,810.810 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:33:36,815.815 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:33:36,820.820 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:33:38,859.859 INFO    ] ================================================
[2026-08-31 02:33:38,874.874 INFO    ] Launching Daemon at Mon Aug 31 02:33:38 IST 2026
[2026-08-31 02:33:38,885.885 INFO    ] ================================================
[2026-08-31 02:33:39,451.451 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:33:39
[2026-08-31 02:33:40,035.035 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:33:40,290.290 INFO    ] Initializing speech engine...
[2026-08-31 02:33:40,296.296 INFO    ] 2026-08-31 02:33:40
[2026-08-31 02:33:40,591.591 INFO    ] 2026-08-31 02:33:40
[2026-08-31 02:33:40,629.629 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:33:40,856.856 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:33:40,913.913 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:33:41,086.086 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:33:41,146.146 INFO    ] time= 31/08/2026 02:33:41
[2026-08-31 02:33:41,200.200 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:33:41,235.235 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:33:41,394.394 INFO    ] No existing commands found in stream
[2026-08-31 02:33:46,410.410 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:33:46,413.413 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-08-31 02:33:50,823.823 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 02:33:50,825.825 INFO    ] Checking for system updates...
[2026-08-31 02:33:50,861.861 INFO    ] 200
[2026-08-31 02:33:50,863.863 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:33:50,920.920 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:33:50,922.922 INFO    ] No update needed
[2026-08-31 02:33:50,925.925 INFO    ] Checking for camera pi updates...
[2026-08-31 02:33:50,965.965 INFO    ] 200
[2026-08-31 02:33:50,967.967 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:33:51,012.012 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:33:51,096.096 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:33:51,099.099 INFO    ] No camera update needed
[2026-08-31 02:33:51,101.101 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:33:51,103.103 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:33:51,109.109 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:33:51,113.113 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:33:53,153.153 INFO    ] ================================================
[2026-08-31 02:33:53,170.170 INFO    ] Launching Daemon at Mon Aug 31 02:33:53 IST 2026
[2026-08-31 02:33:53,180.180 INFO    ] ================================================
[2026-08-31 02:33:53,759.759 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:33:53
[2026-08-31 02:33:54,359.359 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:33:54,636.636 INFO    ] Initializing speech engine...
[2026-08-31 02:33:54,645.645 INFO    ] 2026-08-31 02:33:54
[2026-08-31 02:33:54,905.905 INFO    ] 2026-08-31 02:33:54
[2026-08-31 02:33:54,959.959 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:33:55,209.209 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:33:55,212.212 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:33:55,401.401 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:33:55,445.445 INFO    ] time= 31/08/2026 02:33:55
[2026-08-31 02:33:55,493.493 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:33:55,498.498 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:33:55,643.643 INFO    ] No existing commands found in stream
[2026-08-31 02:34:00,669.669 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:34:00,671.671 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-08-31 02:34:01,991.991 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 02:34:01,995.995 INFO    ] Checking for system updates...
[2026-08-31 02:34:02,040.040 INFO    ] 200
[2026-08-31 02:34:02,043.043 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:34:02,110.110 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:34:02,113.113 INFO    ] No update needed
[2026-08-31 02:34:02,116.116 INFO    ] Checking for camera pi updates...
[2026-08-31 02:34:02,153.153 INFO    ] 200
[2026-08-31 02:34:02,156.156 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:34:02,206.206 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:34:02,335.335 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:34:02,340.340 INFO    ] No camera update needed
[2026-08-31 02:34:02,344.344 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:34:02,348.348 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:34:02,356.356 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:34:02,362.362 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:34:04,410.410 INFO    ] ================================================
[2026-08-31 02:34:04,426.426 INFO    ] Launching Daemon at Mon Aug 31 02:34:04 IST 2026
[2026-08-31 02:34:04,439.439 INFO    ] ================================================
[2026-08-31 02:34:05,021.021 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:34:05
[2026-08-31 02:34:05,619.619 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:34:05,905.905 INFO    ] Initializing speech engine...
[2026-08-31 02:34:05,915.915 INFO    ] 2026-08-31 02:34:05
[2026-08-31 02:34:06,184.184 INFO    ] 2026-08-31 02:34:06
[2026-08-31 02:34:06,220.220 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:34:06,497.497 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:34:06,511.511 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:34:06,760.760 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:34:06,774.774 INFO    ] time= 31/08/2026 02:34:06
[2026-08-31 02:34:06,791.791 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:34:06,800.800 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:34:06,930.930 INFO    ] No existing commands found in stream
[2026-08-31 02:34:11,945.945 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:34:11,949.949 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-08-31 02:34:15,821.821 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 02:34:15,824.824 INFO    ] Checking for system updates...
[2026-08-31 02:34:15,859.859 INFO    ] 200
[2026-08-31 02:34:15,862.862 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:34:15,915.915 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:34:15,918.918 INFO    ] No update needed
[2026-08-31 02:34:15,921.921 INFO    ] Checking for camera pi updates...
[2026-08-31 02:34:15,954.954 INFO    ] 200
[2026-08-31 02:34:15,957.957 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:34:15,999.999 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:34:16,066.066 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:34:16,069.069 INFO    ] No camera update needed
[2026-08-31 02:34:16,071.071 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:34:16,073.073 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:34:16,079.079 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:34:16,084.084 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:34:18,124.124 INFO    ] ================================================
[2026-08-31 02:34:18,139.139 INFO    ] Launching Daemon at Mon Aug 31 02:34:18 IST 2026
[2026-08-31 02:34:18,150.150 INFO    ] ================================================
[2026-08-31 02:34:18,735.735 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:34:18
[2026-08-31 02:34:19,330.330 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:34:19,607.607 INFO    ] Initializing speech engine...
[2026-08-31 02:34:19,614.614 INFO    ] 2026-08-31 02:34:19
[2026-08-31 02:34:19,874.874 INFO    ] 2026-08-31 02:34:19
[2026-08-31 02:34:19,904.904 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:34:20,174.174 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:34:20,182.182 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:34:20,399.399 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:34:20,415.415 INFO    ] time= 31/08/2026 02:34:20
[2026-08-31 02:34:20,422.422 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:34:20,440.440 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:34:20,568.568 INFO    ] No existing commands found in stream
[2026-08-31 02:34:25,581.581 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:34:25,584.584 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-08-31 02:34:29,095.095 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 02:34:29,098.098 INFO    ] Checking for system updates...
[2026-08-31 02:34:29,137.137 INFO    ] 200
[2026-08-31 02:34:29,140.140 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:34:29,198.198 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:34:29,201.201 INFO    ] No update needed
[2026-08-31 02:34:29,203.203 INFO    ] Checking for camera pi updates...
[2026-08-31 02:34:29,240.240 INFO    ] 200
[2026-08-31 02:34:29,243.243 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:34:29,287.287 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:34:29,374.374 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:34:29,377.377 INFO    ] No camera update needed
[2026-08-31 02:34:29,380.380 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:34:29,382.382 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:34:29,387.387 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:34:29,392.392 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:34:31,434.434 INFO    ] ================================================
[2026-08-31 02:34:31,449.449 INFO    ] Launching Daemon at Mon Aug 31 02:34:31 IST 2026
[2026-08-31 02:34:31,459.459 INFO    ] ================================================
[2026-08-31 02:34:32,066.066 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:34:32
[2026-08-31 02:34:32,693.693 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:34:32,992.992 INFO    ] Initializing speech engine...
[2026-08-31 02:34:33,000.000 INFO    ] 2026-08-31 02:34:32
[2026-08-31 02:34:33,272.272 INFO    ] 2026-08-31 02:34:33
[2026-08-31 02:34:33,326.326 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:34:33,575.575 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:34:33,580.580 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:34:33,809.809 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:34:33,815.815 INFO    ] time= 31/08/2026 02:34:33
[2026-08-31 02:34:33,836.836 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:34:33,862.862 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:34:33,978.978 INFO    ] No existing commands found in stream
[2026-08-31 02:34:39,008.008 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:34:39,011.011 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-08-31 02:34:41,423.423 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 02:34:41,425.425 INFO    ] Checking for system updates...
[2026-08-31 02:34:41,465.465 INFO    ] 200
[2026-08-31 02:34:41,467.467 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:34:41,519.519 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:34:41,521.521 INFO    ] No update needed
[2026-08-31 02:34:41,524.524 INFO    ] Checking for camera pi updates...
[2026-08-31 02:34:41,561.561 INFO    ] 200
[2026-08-31 02:34:41,563.563 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:34:41,608.608 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:34:41,707.707 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:34:41,710.710 INFO    ] No camera update needed
[2026-08-31 02:34:41,712.712 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:34:41,715.715 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:34:41,720.720 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:34:41,725.725 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:34:43,767.767 INFO    ] ================================================
[2026-08-31 02:34:43,784.784 INFO    ] Launching Daemon at Mon Aug 31 02:34:43 IST 2026
[2026-08-31 02:34:43,795.795 INFO    ] ================================================
[2026-08-31 02:34:44,471.471 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:34:44
[2026-08-31 02:34:45,134.134 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:34:45,436.436 INFO    ] Initializing speech engine...
[2026-08-31 02:34:45,446.446 INFO    ] 2026-08-31 02:34:45
[2026-08-31 02:34:45,718.718 INFO    ] 2026-08-31 02:34:45
[2026-08-31 02:34:45,760.760 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:34:46,156.156 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:34:46,206.206 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:34:46,474.474 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:34:46,525.525 INFO    ] time= 31/08/2026 02:34:46
[2026-08-31 02:34:46,562.562 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:34:46,613.613 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:34:46,741.741 INFO    ] No existing commands found in stream
[2026-08-31 02:34:51,770.770 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:34:51,773.773 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-08-31 02:34:55,734.734 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 02:34:55,737.737 INFO    ] Checking for system updates...
[2026-08-31 02:34:55,774.774 INFO    ] 200
[2026-08-31 02:34:55,777.777 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:34:55,830.830 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:34:55,832.832 INFO    ] No update needed
[2026-08-31 02:34:55,835.835 INFO    ] Checking for camera pi updates...
[2026-08-31 02:34:55,868.868 INFO    ] 200
[2026-08-31 02:34:55,871.871 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:34:55,915.915 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:34:55,996.996 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:34:55,999.999 INFO    ] No camera update needed
[2026-08-31 02:34:56,001.001 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:34:56,004.004 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:34:56,009.009 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:34:56,014.014 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:34:58,053.053 INFO    ] ================================================
[2026-08-31 02:34:58,076.076 INFO    ] Launching Daemon at Mon Aug 31 02:34:58 IST 2026
[2026-08-31 02:34:58,086.086 INFO    ] ================================================
[2026-08-31 02:34:58,741.741 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:34:58
[2026-08-31 02:34:59,349.349 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:34:59,596.596 INFO    ] Initializing speech engine...
[2026-08-31 02:34:59,610.610 INFO    ] 2026-08-31 02:34:59
[2026-08-31 02:34:59,874.874 INFO    ] 2026-08-31 02:34:59
[2026-08-31 02:34:59,908.908 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:35:00,184.184 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:35:00,191.191 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:35:00,405.405 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:35:00,427.427 INFO    ] time= 31/08/2026 02:35:00
[2026-08-31 02:35:00,433.433 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:35:00,451.451 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:35:00,572.572 INFO    ] No existing commands found in stream
[2026-08-31 02:35:05,591.591 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:35:05,594.594 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-08-31 02:35:08,614.614 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 02:35:08,617.617 INFO    ] Checking for system updates...
[2026-08-31 02:35:08,656.656 INFO    ] 200
[2026-08-31 02:35:08,658.658 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:35:08,711.711 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:35:08,713.713 INFO    ] No update needed
[2026-08-31 02:35:08,716.716 INFO    ] Checking for camera pi updates...
[2026-08-31 02:35:08,753.753 INFO    ] 200
[2026-08-31 02:35:08,755.755 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:35:08,800.800 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:35:08,877.877 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:35:08,879.879 INFO    ] No camera update needed
[2026-08-31 02:35:08,882.882 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:35:08,884.884 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:35:08,893.893 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:35:08,898.898 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:35:10,939.939 INFO    ] ================================================
[2026-08-31 02:35:10,954.954 INFO    ] Launching Daemon at Mon Aug 31 02:35:10 IST 2026
[2026-08-31 02:35:10,965.965 INFO    ] ================================================
[2026-08-31 02:35:11,531.531 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:35:11
[2026-08-31 02:35:12,118.118 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:35:12,393.393 INFO    ] Initializing speech engine...
[2026-08-31 02:35:12,400.400 INFO    ] 2026-08-31 02:35:12
[2026-08-31 02:35:12,652.652 INFO    ] 2026-08-31 02:35:12
[2026-08-31 02:35:12,686.686 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:35:12,944.944 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:35:12,953.953 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:35:13,184.184 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:35:13,218.218 INFO    ] time= 31/08/2026 02:35:13
[2026-08-31 02:35:13,224.224 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:35:13,242.242 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:35:13,378.378 INFO    ] No existing commands found in stream
[2026-08-31 02:35:18,393.393 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:35:18,395.395 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-08-31 02:35:19,916.916 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 02:35:19,920.920 INFO    ] Checking for system updates...
[2026-08-31 02:35:19,956.956 INFO    ] 200
[2026-08-31 02:35:19,959.959 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:35:20,020.020 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:35:20,023.023 INFO    ] No update needed
[2026-08-31 02:35:20,026.026 INFO    ] Checking for camera pi updates...
[2026-08-31 02:35:20,067.067 INFO    ] 200
[2026-08-31 02:35:20,070.070 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:35:20,122.122 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:35:20,304.304 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:35:20,307.307 INFO    ] No camera update needed
[2026-08-31 02:35:20,310.310 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:35:20,312.312 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:35:20,319.319 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:35:20,325.325 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:35:22,367.367 INFO    ] ================================================
[2026-08-31 02:35:22,382.382 INFO    ] Launching Daemon at Mon Aug 31 02:35:22 IST 2026
[2026-08-31 02:35:22,393.393 INFO    ] ================================================
[2026-08-31 02:35:22,962.962 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:35:22
[2026-08-31 02:35:23,571.571 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:35:23,832.832 INFO    ] Initializing speech engine...
[2026-08-31 02:35:23,837.837 INFO    ] 2026-08-31 02:35:23
[2026-08-31 02:35:24,111.111 INFO    ] 2026-08-31 02:35:24
[2026-08-31 02:35:24,147.147 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:35:24,349.349 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:35:24,384.384 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:35:24,590.590 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:35:24,639.639 INFO    ] time= 31/08/2026 02:35:24
[2026-08-31 02:35:24,683.683 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:35:24,690.690 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:35:24,836.836 INFO    ] No existing commands found in stream
[2026-08-31 02:35:29,859.859 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:35:29,862.862 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-08-31 02:35:31,115.115 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 02:35:31,117.117 INFO    ] Checking for system updates...
[2026-08-31 02:35:31,157.157 INFO    ] 200
[2026-08-31 02:35:31,160.160 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:35:31,219.219 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:35:31,222.222 INFO    ] No update needed
[2026-08-31 02:35:31,224.224 INFO    ] Checking for camera pi updates...
[2026-08-31 02:35:31,261.261 INFO    ] 200
[2026-08-31 02:35:31,264.264 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:35:31,310.310 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:35:31,395.395 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:35:31,397.397 INFO    ] No camera update needed
[2026-08-31 02:35:31,400.400 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:35:31,402.402 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:35:31,408.408 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:35:31,413.413 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:35:33,454.454 INFO    ] ================================================
[2026-08-31 02:35:33,469.469 INFO    ] Launching Daemon at Mon Aug 31 02:35:33 IST 2026
[2026-08-31 02:35:33,480.480 INFO    ] ================================================
[2026-08-31 02:35:34,126.126 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:35:34
[2026-08-31 02:35:34,786.786 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:35:35,088.088 INFO    ] Initializing speech engine...
[2026-08-31 02:35:35,096.096 INFO    ] 2026-08-31 02:35:35
[2026-08-31 02:35:35,393.393 INFO    ] 2026-08-31 02:35:35
[2026-08-31 02:35:35,432.432 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:35:35,685.685 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:35:35,693.693 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:35:35,928.928 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:35:35,947.947 INFO    ] time= 31/08/2026 02:35:35
[2026-08-31 02:35:35,957.957 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:35:35,984.984 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:35:36,123.123 INFO    ] No existing commands found in stream
[2026-08-31 02:35:41,149.149 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:35:41,152.152 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-08-31 02:35:42,796.796 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 02:35:42,799.799 INFO    ] Checking for system updates...
[2026-08-31 02:35:42,836.836 INFO    ] 200
[2026-08-31 02:35:42,839.839 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:35:42,892.892 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:35:42,895.895 INFO    ] No update needed
[2026-08-31 02:35:42,898.898 INFO    ] Checking for camera pi updates...
[2026-08-31 02:35:42,931.931 INFO    ] 200
[2026-08-31 02:35:42,933.933 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:35:42,973.973 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:35:43,057.057 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:35:43,059.059 INFO    ] No camera update needed
[2026-08-31 02:35:43,062.062 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:35:43,064.064 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:35:43,069.069 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:35:43,074.074 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:35:45,113.113 INFO    ] ================================================
[2026-08-31 02:35:45,129.129 INFO    ] Launching Daemon at Mon Aug 31 02:35:45 IST 2026
[2026-08-31 02:35:45,140.140 INFO    ] ================================================
[2026-08-31 02:35:45,776.776 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:35:45
[2026-08-31 02:35:46,424.424 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:35:46,720.720 INFO    ] Initializing speech engine...
[2026-08-31 02:35:46,734.734 INFO    ] 2026-08-31 02:35:46
[2026-08-31 02:35:47,000.000 INFO    ] 2026-08-31 02:35:46
[2026-08-31 02:35:47,057.057 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:35:47,288.288 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:35:47,295.295 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:35:47,535.535 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:35:47,557.557 INFO    ] time= 31/08/2026 02:35:47
[2026-08-31 02:35:47,563.563 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:35:47,582.582 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:35:47,711.711 INFO    ] No existing commands found in stream
[2026-08-31 02:35:52,727.727 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:35:52,730.730 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-08-31 02:35:57,156.156 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 02:35:57,159.159 INFO    ] Checking for system updates...
[2026-08-31 02:35:57,195.195 INFO    ] 200
[2026-08-31 02:35:57,197.197 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:35:57,255.255 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:35:57,258.258 INFO    ] No update needed
[2026-08-31 02:35:57,260.260 INFO    ] Checking for camera pi updates...
[2026-08-31 02:35:57,296.296 INFO    ] 200
[2026-08-31 02:35:57,299.299 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:35:57,342.342 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:35:57,442.442 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:35:57,444.444 INFO    ] No camera update needed
[2026-08-31 02:35:57,446.446 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:35:57,449.449 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:35:57,454.454 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:35:57,459.459 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:35:59,500.500 INFO    ] ================================================
[2026-08-31 02:35:59,515.515 INFO    ] Launching Daemon at Mon Aug 31 02:35:59 IST 2026
[2026-08-31 02:35:59,525.525 INFO    ] ================================================
[2026-08-31 02:36:00,104.104 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:36:00
[2026-08-31 02:36:00,704.704 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:36:00,961.961 INFO    ] Initializing speech engine...
[2026-08-31 02:36:00,969.969 INFO    ] 2026-08-31 02:36:00
[2026-08-31 02:36:01,260.260 INFO    ] 2026-08-31 02:36:01
[2026-08-31 02:36:01,297.297 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:36:01,576.576 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:36:01,588.588 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:36:01,801.801 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:36:01,896.896 INFO    ] time= 31/08/2026 02:36:01
[2026-08-31 02:36:01,931.931 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:36:01,935.935 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:36:02,010.010 INFO    ] No existing commands found in stream
[2026-08-31 02:36:07,026.026 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:36:07,029.029 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-08-31 02:36:08,942.942 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 02:36:08,945.945 INFO    ] Checking for system updates...
[2026-08-31 02:36:08,984.984 INFO    ] 200
[2026-08-31 02:36:08,987.987 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:36:09,046.046 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:36:09,049.049 INFO    ] No update needed
[2026-08-31 02:36:09,051.051 INFO    ] Checking for camera pi updates...
[2026-08-31 02:36:09,088.088 INFO    ] 200
[2026-08-31 02:36:09,091.091 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:36:09,131.131 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:36:09,216.216 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:36:09,219.219 INFO    ] No camera update needed
[2026-08-31 02:36:09,221.221 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:36:09,223.223 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:36:09,229.229 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:36:09,234.234 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:36:11,275.275 INFO    ] ================================================
[2026-08-31 02:36:11,291.291 INFO    ] Launching Daemon at Mon Aug 31 02:36:11 IST 2026
[2026-08-31 02:36:11,301.301 INFO    ] ================================================
[2026-08-31 02:36:11,882.882 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:36:11
[2026-08-31 02:36:12,479.479 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:36:12,737.737 INFO    ] Initializing speech engine...
[2026-08-31 02:36:12,746.746 INFO    ] 2026-08-31 02:36:12
[2026-08-31 02:36:13,040.040 INFO    ] 2026-08-31 02:36:13
[2026-08-31 02:36:13,078.078 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:36:13,287.287 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:36:13,304.304 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:36:13,528.528 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:36:13,550.550 INFO    ] time= 31/08/2026 02:36:13
[2026-08-31 02:36:13,610.610 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:36:13,678.678 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:36:13,810.810 INFO    ] No existing commands found in stream
[2026-08-31 02:36:18,823.823 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:36:18,826.826 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-08-31 02:36:20,259.259 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 02:36:20,262.262 INFO    ] Checking for system updates...
[2026-08-31 02:36:20,299.299 INFO    ] 200
[2026-08-31 02:36:20,301.301 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:36:20,353.353 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:36:20,356.356 INFO    ] No update needed
[2026-08-31 02:36:20,358.358 INFO    ] Checking for camera pi updates...
[2026-08-31 02:36:20,391.391 INFO    ] 200
[2026-08-31 02:36:20,394.394 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:36:20,439.439 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:36:20,523.523 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:36:20,526.526 INFO    ] No camera update needed
[2026-08-31 02:36:20,528.528 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:36:20,530.530 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:36:20,536.536 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:36:20,541.541 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:36:22,581.581 INFO    ] ================================================
[2026-08-31 02:36:22,597.597 INFO    ] Launching Daemon at Mon Aug 31 02:36:22 IST 2026
[2026-08-31 02:36:22,607.607 INFO    ] ================================================
[2026-08-31 02:36:23,254.254 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:36:23
[2026-08-31 02:36:23,922.922 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:36:24,228.228 INFO    ] Initializing speech engine...
[2026-08-31 02:36:24,241.241 INFO    ] 2026-08-31 02:36:24
[2026-08-31 02:36:24,513.513 INFO    ] 2026-08-31 02:36:24
[2026-08-31 02:36:24,581.581 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:36:24,861.861 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:36:24,870.870 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:36:25,067.067 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:36:25,086.086 INFO    ] time= 31/08/2026 02:36:25
[2026-08-31 02:36:25,109.109 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:36:25,123.123 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:36:25,253.253 INFO    ] No existing commands found in stream
[2026-08-31 02:36:30,284.284 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:36:30,288.288 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-08-31 02:36:32,524.524 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 02:36:32,528.528 INFO    ] Checking for system updates...
[2026-08-31 02:36:32,575.575 INFO    ] 200
[2026-08-31 02:36:32,578.578 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:36:32,636.636 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:36:32,639.639 INFO    ] No update needed
[2026-08-31 02:36:32,642.642 INFO    ] Checking for camera pi updates...
[2026-08-31 02:36:32,684.684 INFO    ] 200
[2026-08-31 02:36:32,688.688 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:36:32,740.740 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:36:32,826.826 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:36:32,829.829 INFO    ] No camera update needed
[2026-08-31 02:36:32,831.831 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:36:32,834.834 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:36:32,840.840 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:36:32,846.846 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:36:34,887.887 INFO    ] ================================================
[2026-08-31 02:36:34,902.902 INFO    ] Launching Daemon at Mon Aug 31 02:36:34 IST 2026
[2026-08-31 02:36:34,912.912 INFO    ] ================================================
[2026-08-31 02:36:35,494.494 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:36:35
[2026-08-31 02:36:36,092.092 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:36:36,355.355 INFO    ] Initializing speech engine...
[2026-08-31 02:36:36,378.378 INFO    ] 2026-08-31 02:36:36
[2026-08-31 02:36:36,655.655 INFO    ] 2026-08-31 02:36:36
[2026-08-31 02:36:36,693.693 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:36:36,897.897 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:36:36,955.955 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:36:37,212.212 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:36:37,224.224 INFO    ] time= 31/08/2026 02:36:37
[2026-08-31 02:36:37,243.243 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:36:37,271.271 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:36:37,400.400 INFO    ] No existing commands found in stream
[2026-08-31 02:36:42,430.430 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:36:42,433.433 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-08-31 02:36:46,514.514 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 02:36:46,517.517 INFO    ] Checking for system updates...
[2026-08-31 02:36:46,556.556 INFO    ] 200
[2026-08-31 02:36:46,559.559 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:36:46,618.618 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:36:46,620.620 INFO    ] No update needed
[2026-08-31 02:36:46,623.623 INFO    ] Checking for camera pi updates...
[2026-08-31 02:36:46,657.657 INFO    ] 200
[2026-08-31 02:36:46,659.659 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:36:46,703.703 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:36:46,792.792 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:36:46,794.794 INFO    ] No camera update needed
[2026-08-31 02:36:46,797.797 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:36:46,799.799 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:36:46,805.805 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:36:46,810.810 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:36:48,851.851 INFO    ] ================================================
[2026-08-31 02:36:48,866.866 INFO    ] Launching Daemon at Mon Aug 31 02:36:48 IST 2026
[2026-08-31 02:36:48,877.877 INFO    ] ================================================
[2026-08-31 02:36:49,527.527 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:36:49
[2026-08-31 02:36:50,191.191 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:36:50,491.491 INFO    ] Initializing speech engine...
[2026-08-31 02:36:50,504.504 INFO    ] 2026-08-31 02:36:50
[2026-08-31 02:36:50,774.774 INFO    ] 2026-08-31 02:36:50
[2026-08-31 02:36:50,828.828 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:36:51,111.111 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:36:51,120.120 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:36:51,313.313 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:36:51,330.330 INFO    ] time= 31/08/2026 02:36:51
[2026-08-31 02:36:51,349.349 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:36:51,369.369 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:36:51,490.490 INFO    ] No existing commands found in stream
[2026-08-31 02:36:56,521.521 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:36:56,524.524 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-08-31 02:36:59,302.302 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 02:36:59,305.305 INFO    ] Checking for system updates...
[2026-08-31 02:36:59,350.350 INFO    ] 200
[2026-08-31 02:36:59,354.354 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:36:59,420.420 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:36:59,425.425 INFO    ] No update needed
[2026-08-31 02:36:59,428.428 INFO    ] Checking for camera pi updates...
[2026-08-31 02:36:59,470.470 INFO    ] 200
[2026-08-31 02:36:59,472.472 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:36:59,516.516 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:36:59,593.593 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:36:59,596.596 INFO    ] No camera update needed
[2026-08-31 02:36:59,598.598 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:36:59,601.601 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:36:59,607.607 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:36:59,613.613 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:37:01,653.653 INFO    ] ================================================
[2026-08-31 02:37:01,669.669 INFO    ] Launching Daemon at Mon Aug 31 02:37:01 IST 2026
[2026-08-31 02:37:01,680.680 INFO    ] ================================================
[2026-08-31 02:37:02,429.429 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:37:02
[2026-08-31 02:37:03,198.198 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:37:03,558.558 INFO    ] Initializing speech engine...
[2026-08-31 02:37:03,571.571 INFO    ] 2026-08-31 02:37:03
[2026-08-31 02:37:03,853.853 INFO    ] 2026-08-31 02:37:03
[2026-08-31 02:37:03,913.913 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:37:04,278.278 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:37:04,326.326 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:37:04,553.553 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:37:04,601.601 INFO    ] time= 31/08/2026 02:37:04
[2026-08-31 02:37:04,651.651 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:37:04,685.685 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:37:04,843.843 INFO    ] No existing commands found in stream
[2026-08-31 02:37:09,880.880 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:37:09,884.884 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-08-31 02:37:11,101.101 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 02:37:11,103.103 INFO    ] Checking for system updates...
[2026-08-31 02:37:11,143.143 INFO    ] 200
[2026-08-31 02:37:11,145.145 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:37:11,205.205 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:37:11,208.208 INFO    ] No update needed
[2026-08-31 02:37:11,210.210 INFO    ] Checking for camera pi updates...
[2026-08-31 02:37:11,243.243 INFO    ] 200
[2026-08-31 02:37:11,246.246 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:37:11,291.291 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:37:11,359.359 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:37:11,361.361 INFO    ] No camera update needed
[2026-08-31 02:37:11,363.363 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:37:11,366.366 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:37:11,371.371 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:37:11,376.376 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:37:13,418.418 INFO    ] ================================================
[2026-08-31 02:37:13,433.433 INFO    ] Launching Daemon at Mon Aug 31 02:37:13 IST 2026
[2026-08-31 02:37:13,444.444 INFO    ] ================================================
[2026-08-31 02:37:14,023.023 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:37:14
[2026-08-31 02:37:14,612.612 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:37:14,888.888 INFO    ] Initializing speech engine...
[2026-08-31 02:37:14,894.894 INFO    ] 2026-08-31 02:37:14
[2026-08-31 02:37:15,144.144 INFO    ] 2026-08-31 02:37:15
[2026-08-31 02:37:15,181.181 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:37:15,444.444 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:37:15,450.450 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:37:15,692.692 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:37:15,713.713 INFO    ] time= 31/08/2026 02:37:15
[2026-08-31 02:37:15,719.719 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:37:15,737.737 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:37:15,868.868 INFO    ] No existing commands found in stream
[2026-08-31 02:37:20,883.883 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:37:20,886.886 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-08-31 02:37:21,675.675 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 02:37:21,678.678 INFO    ] Checking for system updates...
[2026-08-31 02:37:21,714.714 INFO    ] 200
[2026-08-31 02:37:21,717.717 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:37:21,769.769 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:37:21,771.771 INFO    ] No update needed
[2026-08-31 02:37:21,774.774 INFO    ] Checking for camera pi updates...
[2026-08-31 02:37:21,807.807 INFO    ] 200
[2026-08-31 02:37:21,810.810 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:37:21,854.854 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:37:21,930.930 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:37:21,934.934 INFO    ] No camera update needed
[2026-08-31 02:37:21,937.937 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:37:21,939.939 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:37:21,945.945 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:37:21,950.950 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:37:23,991.991 INFO    ] ================================================
[2026-08-31 02:37:24,008.008 INFO    ] Launching Daemon at Mon Aug 31 02:37:24 IST 2026
[2026-08-31 02:37:24,019.019 INFO    ] ================================================
[2026-08-31 02:37:24,677.677 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:37:24
[2026-08-31 02:37:25,349.349 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:37:25,655.655 INFO    ] Initializing speech engine...
[2026-08-31 02:37:25,661.661 INFO    ] 2026-08-31 02:37:25
[2026-08-31 02:37:25,935.935 INFO    ] 2026-08-31 02:37:25
[2026-08-31 02:37:25,996.996 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:37:26,290.290 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:37:26,299.299 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:37:26,496.496 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:37:26,516.516 INFO    ] time= 31/08/2026 02:37:26
[2026-08-31 02:37:26,539.539 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:37:26,554.554 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:37:26,664.664 INFO    ] No existing commands found in stream
[2026-08-31 02:37:31,694.694 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:37:31,698.698 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-08-31 02:37:35,822.822 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 02:37:35,825.825 INFO    ] Checking for system updates...
[2026-08-31 02:37:35,866.866 INFO    ] 200
[2026-08-31 02:37:35,869.869 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:37:35,930.930 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:37:35,933.933 INFO    ] No update needed
[2026-08-31 02:37:35,939.939 INFO    ] Checking for camera pi updates...
[2026-08-31 02:37:35,977.977 INFO    ] 200
[2026-08-31 02:37:35,979.979 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:37:36,025.025 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:37:36,104.104 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:37:36,106.106 INFO    ] No camera update needed
[2026-08-31 02:37:36,109.109 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:37:36,111.111 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:37:36,117.117 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:37:36,122.122 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:37:38,164.164 INFO    ] ================================================
[2026-08-31 02:37:38,180.180 INFO    ] Launching Daemon at Mon Aug 31 02:37:38 IST 2026
[2026-08-31 02:37:38,191.191 INFO    ] ================================================
[2026-08-31 02:37:38,756.756 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:37:38
[2026-08-31 02:37:39,352.352 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:37:39,628.628 INFO    ] Initializing speech engine...
[2026-08-31 02:37:39,636.636 INFO    ] 2026-08-31 02:37:39
[2026-08-31 02:37:39,893.893 INFO    ] 2026-08-31 02:37:39
[2026-08-31 02:37:39,923.923 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:37:40,175.175 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:37:40,180.180 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:37:40,409.409 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:37:40,437.437 INFO    ] time= 31/08/2026 02:37:40
[2026-08-31 02:37:40,455.455 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:37:40,465.465 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:37:40,591.591 INFO    ] No existing commands found in stream
[2026-08-31 02:37:45,608.608 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:37:45,611.611 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-08-31 02:37:50,184.184 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 02:37:50,187.187 INFO    ] Checking for system updates...
[2026-08-31 02:37:50,229.229 INFO    ] 200
[2026-08-31 02:37:50,232.232 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:37:50,285.285 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:37:50,289.289 INFO    ] No update needed
[2026-08-31 02:37:50,291.291 INFO    ] Checking for camera pi updates...
[2026-08-31 02:37:50,326.326 INFO    ] 200
[2026-08-31 02:37:50,329.329 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:37:50,370.370 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:37:50,454.454 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:37:50,457.457 INFO    ] No camera update needed
[2026-08-31 02:37:50,460.460 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:37:50,462.462 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:37:50,467.467 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:37:50,472.472 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:37:52,514.514 INFO    ] ================================================
[2026-08-31 02:37:52,530.530 INFO    ] Launching Daemon at Mon Aug 31 02:37:52 IST 2026
[2026-08-31 02:37:52,541.541 INFO    ] ================================================
[2026-08-31 02:37:53,199.199 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:37:53
[2026-08-31 02:37:53,873.873 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:37:54,183.183 INFO    ] Initializing speech engine...
[2026-08-31 02:37:54,195.195 INFO    ] 2026-08-31 02:37:54
[2026-08-31 02:37:54,485.485 INFO    ] 2026-08-31 02:37:54
[2026-08-31 02:37:54,596.596 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:37:54,815.815 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:37:54,824.824 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:37:55,019.019 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:37:55,038.038 INFO    ] time= 31/08/2026 02:37:55
[2026-08-31 02:37:55,047.047 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:37:55,074.074 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:37:55,219.219 INFO    ] No existing commands found in stream
[2026-08-31 02:38:00,250.250 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:38:00,253.253 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-08-31 02:38:02,785.785 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 02:38:02,789.789 INFO    ] Checking for system updates...
[2026-08-31 02:38:02,838.838 INFO    ] 200
[2026-08-31 02:38:02,842.842 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:38:02,918.918 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:38:02,922.922 INFO    ] No update needed
[2026-08-31 02:38:02,925.925 INFO    ] Checking for camera pi updates...
[2026-08-31 02:38:02,967.967 INFO    ] 200
[2026-08-31 02:38:02,970.970 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:38:03,022.022 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:38:03,073.073 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:38:03,076.076 INFO    ] No camera update needed
[2026-08-31 02:38:03,079.079 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:38:03,081.081 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:38:03,087.087 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:38:03,093.093 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:38:05,137.137 INFO    ] ================================================
[2026-08-31 02:38:05,153.153 INFO    ] Launching Daemon at Mon Aug 31 02:38:05 IST 2026
[2026-08-31 02:38:05,165.165 INFO    ] ================================================
[2026-08-31 02:38:05,753.753 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:38:05
[2026-08-31 02:38:06,358.358 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:38:06,620.620 INFO    ] Initializing speech engine...
[2026-08-31 02:38:06,629.629 INFO    ] 2026-08-31 02:38:06
[2026-08-31 02:38:06,941.941 INFO    ] 2026-08-31 02:38:06
[2026-08-31 02:38:06,978.978 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:38:07,238.238 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:38:07,242.242 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:38:07,467.467 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:38:07,497.497 INFO    ] time= 31/08/2026 02:38:07
[2026-08-31 02:38:07,503.503 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:38:07,524.524 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:38:07,652.652 INFO    ] No existing commands found in stream
[2026-08-31 02:38:12,671.671 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:38:12,674.674 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-08-31 02:38:14,699.699 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 02:38:14,702.702 INFO    ] Checking for system updates...
[2026-08-31 02:38:14,741.741 INFO    ] 200
[2026-08-31 02:38:14,744.744 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:38:14,802.802 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:38:14,805.805 INFO    ] No update needed
[2026-08-31 02:38:14,807.807 INFO    ] Checking for camera pi updates...
[2026-08-31 02:38:14,840.840 INFO    ] 200
[2026-08-31 02:38:14,843.843 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:38:14,883.883 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:38:14,979.979 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:38:14,981.981 INFO    ] No camera update needed
[2026-08-31 02:38:14,984.984 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:38:14,986.986 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:38:14,991.991 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:38:14,996.996 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:38:17,037.037 INFO    ] ================================================
[2026-08-31 02:38:17,052.052 INFO    ] Launching Daemon at Mon Aug 31 02:38:17 IST 2026
[2026-08-31 02:38:17,063.063 INFO    ] ================================================
[2026-08-31 02:38:17,721.721 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:38:17
[2026-08-31 02:38:18,394.394 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:38:18,711.711 INFO    ] Initializing speech engine...
[2026-08-31 02:38:18,720.720 INFO    ] 2026-08-31 02:38:18
[2026-08-31 02:38:19,003.003 INFO    ] 2026-08-31 02:38:18
[2026-08-31 02:38:19,115.115 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:38:19,333.333 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:38:19,341.341 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:38:19,538.538 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:38:19,558.558 INFO    ] time= 31/08/2026 02:38:19
[2026-08-31 02:38:19,589.589 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:38:19,597.597 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:38:19,716.716 INFO    ] No existing commands found in stream
[2026-08-31 02:38:24,746.746 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:38:24,749.749 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-08-31 02:38:28,117.117 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 02:38:28,120.120 INFO    ] Checking for system updates...
[2026-08-31 02:38:28,159.159 INFO    ] 200
[2026-08-31 02:38:28,162.162 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:38:28,215.215 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:38:28,217.217 INFO    ] No update needed
[2026-08-31 02:38:28,220.220 INFO    ] Checking for camera pi updates...
[2026-08-31 02:38:28,253.253 INFO    ] 200
[2026-08-31 02:38:28,255.255 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:38:28,297.297 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:38:28,402.402 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:38:28,405.405 INFO    ] No camera update needed
[2026-08-31 02:38:28,407.407 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:38:28,410.410 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:38:28,415.415 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:38:28,420.420 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:38:30,460.460 INFO    ] ================================================
[2026-08-31 02:38:30,475.475 INFO    ] Launching Daemon at Mon Aug 31 02:38:30 IST 2026
[2026-08-31 02:38:30,485.485 INFO    ] ================================================
[2026-08-31 02:38:31,146.146 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:38:31
[2026-08-31 02:38:31,814.814 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:38:32,122.122 INFO    ] Initializing speech engine...
[2026-08-31 02:38:32,137.137 INFO    ] 2026-08-31 02:38:32
[2026-08-31 02:38:32,403.403 INFO    ] 2026-08-31 02:38:32
[2026-08-31 02:38:32,462.462 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:38:32,763.763 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:38:32,772.772 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:38:32,970.970 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:38:32,978.978 INFO    ] time= 31/08/2026 02:38:32
[2026-08-31 02:38:32,995.995 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:38:33,019.019 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:38:33,148.148 INFO    ] No existing commands found in stream
[2026-08-31 02:38:38,173.173 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:38:38,176.176 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-08-31 02:38:39,473.473 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 02:38:39,475.475 INFO    ] Checking for system updates...
[2026-08-31 02:38:39,512.512 INFO    ] 200
[2026-08-31 02:38:39,515.515 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:38:39,569.569 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:38:39,572.572 INFO    ] No update needed
[2026-08-31 02:38:39,575.575 INFO    ] Checking for camera pi updates...
[2026-08-31 02:38:39,610.610 INFO    ] 200
[2026-08-31 02:38:39,612.612 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:38:39,654.654 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:38:39,716.716 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:38:39,719.719 INFO    ] No camera update needed
[2026-08-31 02:38:39,721.721 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:38:39,724.724 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:38:39,730.730 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:38:39,736.736 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:38:41,777.777 INFO    ] ================================================
[2026-08-31 02:38:41,792.792 INFO    ] Launching Daemon at Mon Aug 31 02:38:41 IST 2026
[2026-08-31 02:38:41,804.804 INFO    ] ================================================
[2026-08-31 02:38:42,371.371 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:38:42
[2026-08-31 02:38:42,954.954 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:38:43,223.223 INFO    ] Initializing speech engine...
[2026-08-31 02:38:43,231.231 INFO    ] 2026-08-31 02:38:43
[2026-08-31 02:38:43,482.482 INFO    ] 2026-08-31 02:38:43
[2026-08-31 02:38:43,549.549 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:38:43,804.804 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:38:43,809.809 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:38:44,008.008 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:38:44,048.048 INFO    ] time= 31/08/2026 02:38:44
[2026-08-31 02:38:44,054.054 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:38:44,075.075 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:38:44,205.205 INFO    ] No existing commands found in stream
[2026-08-31 02:38:49,219.219 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:38:49,222.222 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-08-31 02:38:50,180.180 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 02:38:50,183.183 INFO    ] Checking for system updates...
[2026-08-31 02:38:50,226.226 INFO    ] 200
[2026-08-31 02:38:50,229.229 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:38:50,289.289 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:38:50,292.292 INFO    ] No update needed
[2026-08-31 02:38:50,295.295 INFO    ] Checking for camera pi updates...
[2026-08-31 02:38:50,334.334 INFO    ] 200
[2026-08-31 02:38:50,336.336 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:38:50,387.387 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:38:50,475.475 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:38:50,477.477 INFO    ] No camera update needed
[2026-08-31 02:38:50,480.480 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:38:50,483.483 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:38:50,489.489 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:38:50,495.495 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:38:52,535.535 INFO    ] ================================================
[2026-08-31 02:38:52,551.551 INFO    ] Launching Daemon at Mon Aug 31 02:38:52 IST 2026
[2026-08-31 02:38:52,562.562 INFO    ] ================================================
[2026-08-31 02:38:53,144.144 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:38:53
[2026-08-31 02:38:53,740.740 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:38:54,013.013 INFO    ] Initializing speech engine...
[2026-08-31 02:38:54,022.022 INFO    ] 2026-08-31 02:38:54
[2026-08-31 02:38:54,270.270 INFO    ] 2026-08-31 02:38:54
[2026-08-31 02:38:54,304.304 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:38:54,557.557 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:38:54,566.566 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:38:54,801.801 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:38:54,827.827 INFO    ] time= 31/08/2026 02:38:54
[2026-08-31 02:38:54,842.842 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:38:54,851.851 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:38:54,973.973 INFO    ] No existing commands found in stream
[2026-08-31 02:38:59,989.989 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:38:59,992.992 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-08-31 02:39:03,813.813 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 02:39:03,815.815 INFO    ] Checking for system updates...
[2026-08-31 02:39:03,851.851 INFO    ] 200
[2026-08-31 02:39:03,853.853 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:39:03,905.905 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:39:03,907.907 INFO    ] No update needed
[2026-08-31 02:39:03,910.910 INFO    ] Checking for camera pi updates...
[2026-08-31 02:39:03,943.943 INFO    ] 200
[2026-08-31 02:39:03,946.946 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:39:03,987.987 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:39:04,079.079 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:39:04,081.081 INFO    ] No camera update needed
[2026-08-31 02:39:04,084.084 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:39:04,086.086 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:39:04,091.091 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:39:04,096.096 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:39:06,138.138 INFO    ] ================================================
[2026-08-31 02:39:06,152.152 INFO    ] Launching Daemon at Mon Aug 31 02:39:06 IST 2026
[2026-08-31 02:39:06,163.163 INFO    ] ================================================
[2026-08-31 02:39:06,761.761 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:39:06
[2026-08-31 02:39:07,451.451 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:39:07,762.762 INFO    ] Initializing speech engine...
[2026-08-31 02:39:07,776.776 INFO    ] 2026-08-31 02:39:07
[2026-08-31 02:39:08,099.099 INFO    ] 2026-08-31 02:39:08
[2026-08-31 02:39:08,183.183 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:39:08,401.401 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:39:08,407.407 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:39:08,627.627 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:39:08,646.646 INFO    ] time= 31/08/2026 02:39:08
[2026-08-31 02:39:08,680.680 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:39:08,691.691 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:39:08,822.822 INFO    ] No existing commands found in stream
[2026-08-31 02:39:13,850.850 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:39:13,853.853 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-08-31 02:39:14,996.996 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 02:39:14,999.999 INFO    ] Checking for system updates...
[2026-08-31 02:39:15,036.036 INFO    ] 200
[2026-08-31 02:39:15,039.039 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:39:15,096.096 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:39:15,099.099 INFO    ] No update needed
[2026-08-31 02:39:15,103.103 INFO    ] Checking for camera pi updates...
[2026-08-31 02:39:15,138.138 INFO    ] 200
[2026-08-31 02:39:15,140.140 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:39:15,188.188 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:39:15,280.280 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:39:15,283.283 INFO    ] No camera update needed
[2026-08-31 02:39:15,285.285 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:39:15,288.288 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:39:15,294.294 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:39:15,301.301 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:39:17,343.343 INFO    ] ================================================
[2026-08-31 02:39:17,358.358 INFO    ] Launching Daemon at Mon Aug 31 02:39:17 IST 2026
[2026-08-31 02:39:17,369.369 INFO    ] ================================================
[2026-08-31 02:39:17,934.934 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:39:17
[2026-08-31 02:39:18,516.516 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:39:18,771.771 INFO    ] Initializing speech engine...
[2026-08-31 02:39:18,780.780 INFO    ] 2026-08-31 02:39:18
[2026-08-31 02:39:19,072.072 INFO    ] 2026-08-31 02:39:19
[2026-08-31 02:39:19,108.108 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:39:19,370.370 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:39:19,375.375 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:39:19,623.623 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:39:19,636.636 INFO    ] time= 31/08/2026 02:39:19
[2026-08-31 02:39:19,654.654 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:39:19,671.671 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:39:19,794.794 INFO    ] No existing commands found in stream
[2026-08-31 02:39:24,819.819 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:39:24,822.822 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-08-31 02:39:29,093.093 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 02:39:29,096.096 INFO    ] Checking for system updates...
[2026-08-31 02:39:29,131.131 INFO    ] 200
[2026-08-31 02:39:29,133.133 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:39:29,192.192 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:39:29,194.194 INFO    ] No update needed
[2026-08-31 02:39:29,197.197 INFO    ] Checking for camera pi updates...
[2026-08-31 02:39:29,230.230 INFO    ] 200
[2026-08-31 02:39:29,232.232 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:39:29,271.271 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:39:29,368.368 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:39:29,371.371 INFO    ] No camera update needed
[2026-08-31 02:39:29,373.373 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:39:29,375.375 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:39:29,381.381 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:39:29,386.386 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:39:31,426.426 INFO    ] ================================================
[2026-08-31 02:39:31,441.441 INFO    ] Launching Daemon at Mon Aug 31 02:39:31 IST 2026
[2026-08-31 02:39:31,452.452 INFO    ] ================================================
[2026-08-31 02:39:32,027.027 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:39:32
[2026-08-31 02:39:32,648.648 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:39:32,915.915 INFO    ] Initializing speech engine...
[2026-08-31 02:39:32,922.922 INFO    ] 2026-08-31 02:39:32
[2026-08-31 02:39:33,240.240 INFO    ] 2026-08-31 02:39:33
[2026-08-31 02:39:33,278.278 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:39:33,497.497 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:39:33,513.513 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:39:33,682.682 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:39:33,687.687 INFO    ] time= 31/08/2026 02:39:33
[2026-08-31 02:39:33,694.694 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:39:33,707.707 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:39:33,859.859 INFO    ] No existing commands found in stream
[2026-08-31 02:39:38,884.884 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:39:38,886.886 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-08-31 02:39:43,297.297 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 02:39:43,300.300 INFO    ] Checking for system updates...
[2026-08-31 02:39:43,335.335 INFO    ] 200
[2026-08-31 02:39:43,338.338 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:39:43,391.391 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:39:43,394.394 INFO    ] No update needed
[2026-08-31 02:39:43,396.396 INFO    ] Checking for camera pi updates...
[2026-08-31 02:39:43,434.434 INFO    ] 200
[2026-08-31 02:39:43,436.436 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:39:43,482.482 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:39:43,664.664 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:39:43,666.666 INFO    ] No camera update needed
[2026-08-31 02:39:43,669.669 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:39:43,671.671 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:39:43,677.677 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:39:43,682.682 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:39:45,722.722 INFO    ] ================================================
[2026-08-31 02:39:45,737.737 INFO    ] Launching Daemon at Mon Aug 31 02:39:45 IST 2026
[2026-08-31 02:39:45,748.748 INFO    ] ================================================
[2026-08-31 02:39:46,409.409 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:39:46
[2026-08-31 02:39:47,091.091 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:39:47,400.400 INFO    ] Initializing speech engine...
[2026-08-31 02:39:47,410.410 INFO    ] 2026-08-31 02:39:47
[2026-08-31 02:39:47,686.686 INFO    ] 2026-08-31 02:39:47
[2026-08-31 02:39:47,727.727 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:39:47,927.927 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:39:47,970.970 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:39:48,222.222 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:39:48,259.259 INFO    ] time= 31/08/2026 02:39:48
[2026-08-31 02:39:48,265.265 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:39:48,284.284 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:39:48,416.416 INFO    ] No existing commands found in stream
[2026-08-31 02:39:53,440.440 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:39:53,443.443 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-08-31 02:39:57,755.755 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 02:39:57,759.759 INFO    ] Checking for system updates...
[2026-08-31 02:39:57,795.795 INFO    ] 200
[2026-08-31 02:39:57,798.798 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:39:57,852.852 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:39:57,855.855 INFO    ] No update needed
[2026-08-31 02:39:57,858.858 INFO    ] Checking for camera pi updates...
[2026-08-31 02:39:57,893.893 INFO    ] 200
[2026-08-31 02:39:57,895.895 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:39:57,937.937 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:39:58,019.019 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:39:58,021.021 INFO    ] No camera update needed
[2026-08-31 02:39:58,024.024 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:39:58,027.027 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:39:58,033.033 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:39:58,039.039 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:40:00,079.079 INFO    ] ================================================
[2026-08-31 02:40:00,095.095 INFO    ] Launching Daemon at Mon Aug 31 02:40:00 IST 2026
[2026-08-31 02:40:00,105.105 INFO    ] ================================================
[2026-08-31 02:40:00,765.765 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:40:00
[2026-08-31 02:40:01,445.445 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:40:01,755.755 INFO    ] Initializing speech engine...
[2026-08-31 02:40:01,767.767 INFO    ] 2026-08-31 02:40:01
[2026-08-31 02:40:02,355.355 INFO    ] 2026-08-31 02:40:02
[2026-08-31 02:40:02,491.491 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:40:02,770.770 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:40:02,777.777 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:40:02,958.958 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:40:02,962.962 INFO    ] time= 31/08/2026 02:40:02
[2026-08-31 02:40:02,965.965 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:40:02,968.968 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:40:03,049.049 INFO    ] No existing commands found in stream
[2026-08-31 02:40:08,060.060 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:40:08,062.062 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-08-31 02:40:09,815.815 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 02:40:09,818.818 INFO    ] Checking for system updates...
[2026-08-31 02:40:09,859.859 INFO    ] 200
[2026-08-31 02:40:09,861.861 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:40:09,914.914 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:40:09,916.916 INFO    ] No update needed
[2026-08-31 02:40:09,919.919 INFO    ] Checking for camera pi updates...
[2026-08-31 02:40:09,952.952 INFO    ] 200
[2026-08-31 02:40:09,954.954 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:40:10,001.001 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:40:10,081.081 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:40:10,084.084 INFO    ] No camera update needed
[2026-08-31 02:40:10,086.086 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:40:10,088.088 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:40:10,094.094 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:40:10,099.099 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:40:12,143.143 INFO    ] ================================================
[2026-08-31 02:40:12,159.159 INFO    ] Launching Daemon at Mon Aug 31 02:40:12 IST 2026
[2026-08-31 02:40:12,170.170 INFO    ] ================================================
[2026-08-31 02:40:12,736.736 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:40:12
[2026-08-31 02:40:13,429.429 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:40:13,742.742 INFO    ] Initializing speech engine...
[2026-08-31 02:40:13,756.756 INFO    ] 2026-08-31 02:40:13
[2026-08-31 02:40:14,047.047 INFO    ] 2026-08-31 02:40:14
[2026-08-31 02:40:14,087.087 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:40:14,437.437 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:40:14,490.490 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:40:14,754.754 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:40:14,820.820 INFO    ] time= 31/08/2026 02:40:14
[2026-08-31 02:40:14,853.853 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:40:14,908.908 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:40:15,122.122 INFO    ] No existing commands found in stream
[2026-08-31 02:40:20,158.158 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:40:20,162.162 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-08-31 02:40:23,263.263 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 02:40:23,266.266 INFO    ] Checking for system updates...
[2026-08-31 02:40:23,310.310 INFO    ] 200
[2026-08-31 02:40:23,313.313 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:40:23,373.373 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:40:23,376.376 INFO    ] No update needed
[2026-08-31 02:40:23,379.379 INFO    ] Checking for camera pi updates...
[2026-08-31 02:40:23,413.413 INFO    ] 200
[2026-08-31 02:40:23,416.416 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:40:23,458.458 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:40:23,520.520 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:40:23,522.522 INFO    ] No camera update needed
[2026-08-31 02:40:23,524.524 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:40:23,527.527 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:40:23,533.533 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:40:23,538.538 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:40:25,577.577 INFO    ] ================================================
[2026-08-31 02:40:25,593.593 INFO    ] Launching Daemon at Mon Aug 31 02:40:25 IST 2026
[2026-08-31 02:40:25,604.604 INFO    ] ================================================
[2026-08-31 02:40:26,176.176 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:40:26
[2026-08-31 02:40:26,763.763 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:40:27,012.012 INFO    ] Initializing speech engine...
[2026-08-31 02:40:27,026.026 INFO    ] 2026-08-31 02:40:27
[2026-08-31 02:40:27,295.295 INFO    ] 2026-08-31 02:40:27
[2026-08-31 02:40:27,330.330 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:40:27,581.581 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:40:27,590.590 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:40:27,803.803 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:40:27,848.848 INFO    ] time= 31/08/2026 02:40:27
[2026-08-31 02:40:27,896.896 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:40:27,903.903 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:40:28,038.038 INFO    ] No existing commands found in stream
[2026-08-31 02:40:33,069.069 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:40:33,072.072 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-08-31 02:40:33,819.819 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 02:40:33,821.821 INFO    ] Checking for system updates...
[2026-08-31 02:40:33,857.857 INFO    ] 200
[2026-08-31 02:40:33,860.860 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:40:33,912.912 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:40:33,915.915 INFO    ] No update needed
[2026-08-31 02:40:33,917.917 INFO    ] Checking for camera pi updates...
[2026-08-31 02:40:33,955.955 INFO    ] 200
[2026-08-31 02:40:33,958.958 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:40:33,999.999 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:40:34,080.080 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:40:34,083.083 INFO    ] No camera update needed
[2026-08-31 02:40:34,085.085 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:40:34,087.087 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:40:34,093.093 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:40:34,098.098 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:40:36,139.139 INFO    ] ================================================
[2026-08-31 02:40:36,155.155 INFO    ] Launching Daemon at Mon Aug 31 02:40:36 IST 2026
[2026-08-31 02:40:36,166.166 INFO    ] ================================================
[2026-08-31 02:40:36,746.746 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:40:36
[2026-08-31 02:40:37,357.357 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:40:37,626.626 INFO    ] Initializing speech engine...
[2026-08-31 02:40:37,634.634 INFO    ] 2026-08-31 02:40:37
[2026-08-31 02:40:37,887.887 INFO    ] 2026-08-31 02:40:37
[2026-08-31 02:40:37,930.930 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:40:38,183.183 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:40:38,221.221 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:40:38,437.437 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:40:38,502.502 INFO    ] time= 31/08/2026 02:40:38
[2026-08-31 02:40:38,535.535 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:40:38,541.541 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:40:38,706.706 INFO    ] No existing commands found in stream
[2026-08-31 02:40:43,723.723 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:40:43,725.725 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-08-31 02:40:47,418.418 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 02:40:47,421.421 INFO    ] Checking for system updates...
[2026-08-31 02:40:47,456.456 INFO    ] 200
[2026-08-31 02:40:47,459.459 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:40:47,519.519 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:40:47,521.521 INFO    ] No update needed
[2026-08-31 02:40:47,524.524 INFO    ] Checking for camera pi updates...
[2026-08-31 02:40:47,557.557 INFO    ] 200
[2026-08-31 02:40:47,560.560 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:40:47,600.600 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:40:47,680.680 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:40:47,683.683 INFO    ] No camera update needed
[2026-08-31 02:40:47,685.685 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:40:47,688.688 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:40:47,694.694 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:40:47,700.700 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:40:49,743.743 INFO    ] ================================================
[2026-08-31 02:40:49,758.758 INFO    ] Launching Daemon at Mon Aug 31 02:40:49 IST 2026
[2026-08-31 02:40:49,769.769 INFO    ] ================================================
[2026-08-31 02:40:50,339.339 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:40:50
[2026-08-31 02:40:50,928.928 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:40:51,197.197 INFO    ] Initializing speech engine...
[2026-08-31 02:40:51,206.206 INFO    ] 2026-08-31 02:40:51
[2026-08-31 02:40:51,453.453 INFO    ] 2026-08-31 02:40:51
[2026-08-31 02:40:51,519.519 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:40:51,805.805 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:40:51,810.810 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:40:52,006.006 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:40:52,022.022 INFO    ] time= 31/08/2026 02:40:52
[2026-08-31 02:40:52,030.030 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:40:52,057.057 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:40:52,202.202 INFO    ] No existing commands found in stream
[2026-08-31 02:40:57,238.238 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:40:57,240.240 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-08-31 02:40:59,300.300 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 02:40:59,303.303 INFO    ] Checking for system updates...
[2026-08-31 02:40:59,341.341 INFO    ] 200
[2026-08-31 02:40:59,344.344 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:40:59,406.406 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:40:59,410.410 INFO    ] No update needed
[2026-08-31 02:40:59,413.413 INFO    ] Checking for camera pi updates...
[2026-08-31 02:40:59,448.448 INFO    ] 200
[2026-08-31 02:40:59,451.451 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:40:59,499.499 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:40:59,574.574 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:40:59,576.576 INFO    ] No camera update needed
[2026-08-31 02:40:59,579.579 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:40:59,581.581 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:40:59,586.586 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:40:59,591.591 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:41:01,647.647 INFO    ] ================================================
[2026-08-31 02:41:01,683.683 INFO    ] Launching Daemon at Mon Aug 31 02:41:01 IST 2026
[2026-08-31 02:41:01,707.707 INFO    ] ================================================
[2026-08-31 02:41:02,469.469 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:41:02
[2026-08-31 02:41:03,238.238 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:41:03,543.543 INFO    ] Initializing speech engine...
[2026-08-31 02:41:03,551.551 INFO    ] 2026-08-31 02:41:03
[2026-08-31 02:41:03,830.830 INFO    ] 2026-08-31 02:41:03
[2026-08-31 02:41:03,884.884 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:41:04,135.135 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:41:04,140.140 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:41:04,371.371 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:41:04,389.389 INFO    ] time= 31/08/2026 02:41:04
[2026-08-31 02:41:04,400.400 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:41:04,428.428 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:41:04,562.562 INFO    ] No existing commands found in stream
[2026-08-31 02:41:09,588.588 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:41:09,591.591 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-08-31 02:41:12,955.955 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 02:41:12,958.958 INFO    ] Checking for system updates...
[2026-08-31 02:41:13,003.003 INFO    ] 200
[2026-08-31 02:41:13,005.005 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:41:13,076.076 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:41:13,079.079 INFO    ] No update needed
[2026-08-31 02:41:13,081.081 INFO    ] Checking for camera pi updates...
[2026-08-31 02:41:13,119.119 INFO    ] 200
[2026-08-31 02:41:13,121.121 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:41:13,166.166 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:41:13,249.249 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:41:13,251.251 INFO    ] No camera update needed
[2026-08-31 02:41:13,253.253 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:41:13,256.256 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:41:13,261.261 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:41:13,266.266 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:41:15,306.306 INFO    ] ================================================
[2026-08-31 02:41:15,321.321 INFO    ] Launching Daemon at Mon Aug 31 02:41:15 IST 2026
[2026-08-31 02:41:15,332.332 INFO    ] ================================================
[2026-08-31 02:41:15,897.897 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:41:15
[2026-08-31 02:41:16,478.478 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:41:16,748.748 INFO    ] Initializing speech engine...
[2026-08-31 02:41:16,757.757 INFO    ] 2026-08-31 02:41:16
[2026-08-31 02:41:17,007.007 INFO    ] 2026-08-31 02:41:16
[2026-08-31 02:41:17,041.041 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:41:17,306.306 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:41:17,326.326 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:41:17,547.547 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:41:17,568.568 INFO    ] time= 31/08/2026 02:41:17
[2026-08-31 02:41:17,582.582 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:41:17,592.592 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:41:17,722.722 INFO    ] No existing commands found in stream
[2026-08-31 02:41:22,739.739 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:41:22,742.742 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-08-31 02:41:27,100.100 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 02:41:27,102.102 INFO    ] Checking for system updates...
[2026-08-31 02:41:27,138.138 INFO    ] 200
[2026-08-31 02:41:27,140.140 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:41:27,192.192 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:41:27,195.195 INFO    ] No update needed
[2026-08-31 02:41:27,197.197 INFO    ] Checking for camera pi updates...
[2026-08-31 02:41:27,230.230 INFO    ] 200
[2026-08-31 02:41:27,233.233 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:41:27,278.278 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:41:27,358.358 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:41:27,360.360 INFO    ] No camera update needed
[2026-08-31 02:41:27,362.362 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:41:27,365.365 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:41:27,370.370 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:41:27,375.375 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:41:29,416.416 INFO    ] ================================================
[2026-08-31 02:41:29,431.431 INFO    ] Launching Daemon at Mon Aug 31 02:41:29 IST 2026
[2026-08-31 02:41:29,442.442 INFO    ] ================================================
[2026-08-31 02:41:30,007.007 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:41:30
[2026-08-31 02:41:30,590.590 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:41:30,839.839 INFO    ] Initializing speech engine...
[2026-08-31 02:41:30,862.862 INFO    ] 2026-08-31 02:41:30
[2026-08-31 02:41:31,118.118 INFO    ] 2026-08-31 02:41:31
[2026-08-31 02:41:31,153.153 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:41:31,415.415 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:41:31,428.428 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:41:31,677.677 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:41:31,708.708 INFO    ] time= 31/08/2026 02:41:31
[2026-08-31 02:41:31,726.726 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:41:31,734.734 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:41:31,875.875 INFO    ] No existing commands found in stream
[2026-08-31 02:41:36,893.893 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:41:36,896.896 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-08-31 02:41:40,980.980 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 02:41:40,982.982 INFO    ] Checking for system updates...
[2026-08-31 02:41:41,018.018 INFO    ] 200
[2026-08-31 02:41:41,020.020 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:41:41,074.074 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:41:41,076.076 INFO    ] No update needed
[2026-08-31 02:41:41,079.079 INFO    ] Checking for camera pi updates...
[2026-08-31 02:41:41,118.118 INFO    ] 200
[2026-08-31 02:41:41,121.121 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:41:41,163.163 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:41:41,243.243 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:41:41,246.246 INFO    ] No camera update needed
[2026-08-31 02:41:41,249.249 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:41:41,251.251 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:41:41,258.258 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:41:41,264.264 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:41:43,303.303 INFO    ] ================================================
[2026-08-31 02:41:43,318.318 INFO    ] Launching Daemon at Mon Aug 31 02:41:43 IST 2026
[2026-08-31 02:41:43,329.329 INFO    ] ================================================
[2026-08-31 02:41:44,269.269 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:41:43
[2026-08-31 02:41:44,852.852 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:41:45,122.122 INFO    ] Initializing speech engine...
[2026-08-31 02:41:45,132.132 INFO    ] 2026-08-31 02:41:45
[2026-08-31 02:41:45,387.387 INFO    ] 2026-08-31 02:41:45
[2026-08-31 02:41:45,440.440 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:41:45,667.667 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:41:45,670.670 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:41:45,891.891 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:41:45,929.929 INFO    ] time= 31/08/2026 02:41:45
[2026-08-31 02:41:45,934.934 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:41:45,953.953 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:41:46,072.072 INFO    ] No existing commands found in stream
[2026-08-31 02:41:51,093.093 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:41:51,096.096 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-08-31 02:41:55,475.475 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 02:41:55,479.479 INFO    ] Checking for system updates...
[2026-08-31 02:41:55,520.520 INFO    ] 200
[2026-08-31 02:41:55,522.522 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:41:55,575.575 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:41:55,577.577 INFO    ] No update needed
[2026-08-31 02:41:55,580.580 INFO    ] Checking for camera pi updates...
[2026-08-31 02:41:55,617.617 INFO    ] 200
[2026-08-31 02:41:55,620.620 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:41:55,665.665 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:41:55,848.848 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:41:55,851.851 INFO    ] No camera update needed
[2026-08-31 02:41:55,853.853 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:41:55,855.855 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:41:55,861.861 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:41:55,865.865 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:41:57,910.910 INFO    ] ================================================
[2026-08-31 02:41:57,925.925 INFO    ] Launching Daemon at Mon Aug 31 02:41:57 IST 2026
[2026-08-31 02:41:57,935.935 INFO    ] ================================================
[2026-08-31 02:41:58,595.595 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:41:58
[2026-08-31 02:41:59,271.271 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:41:59,576.576 INFO    ] Initializing speech engine...
[2026-08-31 02:41:59,584.584 INFO    ] 2026-08-31 02:41:59
[2026-08-31 02:41:59,907.907 INFO    ] 2026-08-31 02:41:59
[2026-08-31 02:41:59,995.995 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:42:00,216.216 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:42:00,225.225 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:42:00,439.439 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:42:00,467.467 INFO    ] time= 31/08/2026 02:42:00
[2026-08-31 02:42:00,476.476 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:42:00,483.483 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:42:00,616.616 INFO    ] No existing commands found in stream
[2026-08-31 02:42:05,648.648 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:42:05,651.651 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-08-31 02:42:07,462.462 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 02:42:07,465.465 INFO    ] Checking for system updates...
[2026-08-31 02:42:07,502.502 INFO    ] 200
[2026-08-31 02:42:07,505.505 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:42:07,564.564 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:42:07,566.566 INFO    ] No update needed
[2026-08-31 02:42:07,569.569 INFO    ] Checking for camera pi updates...
[2026-08-31 02:42:07,607.607 INFO    ] 200
[2026-08-31 02:42:07,609.609 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:42:07,650.650 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:42:07,740.740 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:42:07,742.742 INFO    ] No camera update needed
[2026-08-31 02:42:07,744.744 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:42:07,747.747 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:42:07,752.752 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:42:07,757.757 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:42:09,798.798 INFO    ] ================================================
[2026-08-31 02:42:09,812.812 INFO    ] Launching Daemon at Mon Aug 31 02:42:09 IST 2026
[2026-08-31 02:42:09,823.823 INFO    ] ================================================
[2026-08-31 02:42:10,393.393 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:42:10
[2026-08-31 02:42:10,980.980 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:42:11,239.239 INFO    ] Initializing speech engine...
[2026-08-31 02:42:11,246.246 INFO    ] 2026-08-31 02:42:11
[2026-08-31 02:42:11,543.543 INFO    ] 2026-08-31 02:42:11
[2026-08-31 02:42:11,577.577 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:42:11,810.810 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:42:11,839.839 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:42:12,046.046 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:42:12,101.101 INFO    ] time= 31/08/2026 02:42:12
[2026-08-31 02:42:12,150.150 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:42:12,190.190 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:42:12,321.321 INFO    ] No existing commands found in stream
[2026-08-31 02:42:17,339.339 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:42:17,341.341 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-08-31 02:42:21,474.474 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 02:42:21,477.477 INFO    ] Checking for system updates...
[2026-08-31 02:42:21,513.513 INFO    ] 200
[2026-08-31 02:42:21,515.515 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:42:21,570.570 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:42:21,572.572 INFO    ] No update needed
[2026-08-31 02:42:21,575.575 INFO    ] Checking for camera pi updates...
[2026-08-31 02:42:21,609.609 INFO    ] 200
[2026-08-31 02:42:21,611.611 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:42:21,657.657 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:42:21,758.758 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:42:21,760.760 INFO    ] No camera update needed
[2026-08-31 02:42:21,762.762 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:42:21,765.765 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:42:21,770.770 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:42:21,775.775 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:42:23,816.816 INFO    ] ================================================
[2026-08-31 02:42:24,092.092 INFO    ] Launching Daemon at Mon Aug 31 02:42:24 IST 2026
[2026-08-31 02:42:24,104.104 INFO    ] ================================================
[2026-08-31 02:42:24,674.674 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:42:24
[2026-08-31 02:42:25,268.268 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:42:25,534.534 INFO    ] Initializing speech engine...
[2026-08-31 02:42:25,540.540 INFO    ] 2026-08-31 02:42:25
[2026-08-31 02:42:25,845.845 INFO    ] 2026-08-31 02:42:25
[2026-08-31 02:42:25,883.883 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:42:26,110.110 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:42:26,119.119 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:42:26,343.343 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:42:26,357.357 INFO    ] time= 31/08/2026 02:42:26
[2026-08-31 02:42:26,416.416 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:42:26,466.466 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:42:26,564.564 INFO    ] No existing commands found in stream
[2026-08-31 02:42:31,575.575 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:42:31,578.578 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-08-31 02:42:33,211.211 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 02:42:33,214.214 INFO    ] Checking for system updates...
[2026-08-31 02:42:33,254.254 INFO    ] 200
[2026-08-31 02:42:33,257.257 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:42:33,317.317 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:42:33,320.320 INFO    ] No update needed
[2026-08-31 02:42:33,322.322 INFO    ] Checking for camera pi updates...
[2026-08-31 02:42:33,360.360 INFO    ] 200
[2026-08-31 02:42:33,362.362 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:42:33,408.408 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:42:33,490.490 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:42:33,492.492 INFO    ] No camera update needed
[2026-08-31 02:42:33,495.495 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:42:33,497.497 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:42:33,503.503 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:42:33,508.508 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:42:35,548.548 INFO    ] ================================================
[2026-08-31 02:42:35,564.564 INFO    ] Launching Daemon at Mon Aug 31 02:42:35 IST 2026
[2026-08-31 02:42:35,576.576 INFO    ] ================================================
[2026-08-31 02:42:36,255.255 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:42:36
[2026-08-31 02:42:36,854.854 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:42:37,132.132 INFO    ] Initializing speech engine...
[2026-08-31 02:42:37,140.140 INFO    ] 2026-08-31 02:42:37
[2026-08-31 02:42:37,399.399 INFO    ] 2026-08-31 02:42:37
[2026-08-31 02:42:37,460.460 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:42:37,690.690 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:42:37,696.696 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:42:37,946.946 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:42:37,958.958 INFO    ] time= 31/08/2026 02:42:37
[2026-08-31 02:42:37,976.976 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:42:37,998.998 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:42:38,120.120 INFO    ] No existing commands found in stream
[2026-08-31 02:42:43,140.140 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:42:43,143.143 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-08-31 02:42:44,515.515 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 02:42:44,518.518 INFO    ] Checking for system updates...
[2026-08-31 02:42:44,559.559 INFO    ] 200
[2026-08-31 02:42:44,563.563 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:42:44,618.618 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:42:44,621.621 INFO    ] No update needed
[2026-08-31 02:42:44,623.623 INFO    ] Checking for camera pi updates...
[2026-08-31 02:42:44,663.663 INFO    ] 200
[2026-08-31 02:42:44,665.665 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:42:44,713.713 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:42:44,795.795 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:42:44,798.798 INFO    ] No camera update needed
[2026-08-31 02:42:44,801.801 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:42:44,804.804 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:42:44,810.810 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:42:44,816.816 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:42:46,858.858 INFO    ] ================================================
[2026-08-31 02:42:46,874.874 INFO    ] Launching Daemon at Mon Aug 31 02:42:46 IST 2026
[2026-08-31 02:42:46,885.885 INFO    ] ================================================
[2026-08-31 02:42:47,563.563 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:42:47
[2026-08-31 02:42:48,255.255 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:42:48,565.565 INFO    ] Initializing speech engine...
[2026-08-31 02:42:48,577.577 INFO    ] 2026-08-31 02:42:48
[2026-08-31 02:42:48,892.892 INFO    ] 2026-08-31 02:42:48
[2026-08-31 02:42:48,978.978 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:42:49,257.257 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:42:49,299.299 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:42:49,521.521 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:42:49,557.557 INFO    ] time= 31/08/2026 02:42:49
[2026-08-31 02:42:49,618.618 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:42:49,651.651 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:42:49,801.801 INFO    ] No existing commands found in stream
[2026-08-31 02:42:54,824.824 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:42:54,827.827 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-08-31 02:42:58,582.582 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 02:42:58,585.585 INFO    ] Checking for system updates...
[2026-08-31 02:42:58,623.623 INFO    ] 200
[2026-08-31 02:42:58,626.626 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:42:58,681.681 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:42:58,684.684 INFO    ] No update needed
[2026-08-31 02:42:58,686.686 INFO    ] Checking for camera pi updates...
[2026-08-31 02:42:58,722.722 INFO    ] 200
[2026-08-31 02:42:58,725.725 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:42:58,767.767 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:42:58,858.858 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:42:58,861.861 INFO    ] No camera update needed
[2026-08-31 02:42:58,864.864 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:42:58,866.866 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:42:58,873.873 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:42:58,879.879 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:43:00,920.920 INFO    ] ================================================
[2026-08-31 02:43:00,935.935 INFO    ] Launching Daemon at Mon Aug 31 02:43:00 IST 2026
[2026-08-31 02:43:00,947.947 INFO    ] ================================================
[2026-08-31 02:43:01,674.674 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:43:01
[2026-08-31 02:43:02,372.372 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:43:02,676.676 INFO    ] Initializing speech engine...
[2026-08-31 02:43:02,691.691 INFO    ] 2026-08-31 02:43:02
[2026-08-31 02:43:03,025.025 INFO    ] 2026-08-31 02:43:02
[2026-08-31 02:43:03,072.072 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:43:03,333.333 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:43:03,382.382 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:43:03,581.581 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:43:03,598.598 INFO    ] time= 31/08/2026 02:43:03
[2026-08-31 02:43:03,658.658 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:43:03,702.702 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:43:03,804.804 INFO    ] No existing commands found in stream
[2026-08-31 02:43:08,816.816 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:43:08,819.819 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-08-31 02:43:12,378.378 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 02:43:12,381.381 INFO    ] Checking for system updates...
[2026-08-31 02:43:12,420.420 INFO    ] 200
[2026-08-31 02:43:12,422.422 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:43:12,483.483 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:43:12,486.486 INFO    ] No update needed
[2026-08-31 02:43:12,488.488 INFO    ] Checking for camera pi updates...
[2026-08-31 02:43:12,526.526 INFO    ] 200
[2026-08-31 02:43:12,528.528 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:43:12,569.569 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:43:12,649.649 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:43:12,652.652 INFO    ] No camera update needed
[2026-08-31 02:43:12,654.654 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:43:12,656.656 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:43:12,662.662 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:43:12,667.667 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:43:14,708.708 INFO    ] ================================================
[2026-08-31 02:43:14,724.724 INFO    ] Launching Daemon at Mon Aug 31 02:43:14 IST 2026
[2026-08-31 02:43:14,735.735 INFO    ] ================================================
[2026-08-31 02:43:15,316.316 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:43:15
[2026-08-31 02:43:15,914.914 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:43:16,191.191 INFO    ] Initializing speech engine...
[2026-08-31 02:43:16,198.198 INFO    ] 2026-08-31 02:43:16
[2026-08-31 02:43:16,459.459 INFO    ] 2026-08-31 02:43:16
[2026-08-31 02:43:16,488.488 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:43:16,736.736 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:43:16,743.743 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:43:16,968.968 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:43:17,000.000 INFO    ] time= 31/08/2026 02:43:16
[2026-08-31 02:43:17,005.005 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:43:17,023.023 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:43:17,155.155 INFO    ] No existing commands found in stream
[2026-08-31 02:43:22,178.178 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:43:22,181.181 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-08-31 02:43:25,313.313 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 02:43:25,316.316 INFO    ] Checking for system updates...
[2026-08-31 02:43:25,352.352 INFO    ] 200
[2026-08-31 02:43:25,355.355 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:43:25,408.408 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:43:25,411.411 INFO    ] No update needed
[2026-08-31 02:43:25,413.413 INFO    ] Checking for camera pi updates...
[2026-08-31 02:43:25,448.448 INFO    ] 200
[2026-08-31 02:43:25,450.450 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:43:25,492.492 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:43:25,583.583 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:43:25,585.585 INFO    ] No camera update needed
[2026-08-31 02:43:25,588.588 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:43:25,590.590 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:43:25,596.596 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:43:25,601.601 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:43:27,642.642 INFO    ] ================================================
[2026-08-31 02:43:27,658.658 INFO    ] Launching Daemon at Mon Aug 31 02:43:27 IST 2026
[2026-08-31 02:43:27,669.669 INFO    ] ================================================
[2026-08-31 02:43:28,236.236 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:43:28
[2026-08-31 02:43:28,817.817 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:43:29,088.088 INFO    ] Initializing speech engine...
[2026-08-31 02:43:29,097.097 INFO    ] 2026-08-31 02:43:29
[2026-08-31 02:43:29,347.347 INFO    ] 2026-08-31 02:43:29
[2026-08-31 02:43:29,384.384 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:43:29,641.641 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:43:29,650.650 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:43:29,847.847 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:43:29,902.902 INFO    ] time= 31/08/2026 02:43:29
[2026-08-31 02:43:29,917.917 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:43:29,923.923 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:43:30,050.050 INFO    ] No existing commands found in stream
[2026-08-31 02:43:35,075.075 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:43:35,078.078 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-08-31 02:43:37,753.753 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 02:43:37,756.756 INFO    ] Checking for system updates...
[2026-08-31 02:43:37,791.791 INFO    ] 200
[2026-08-31 02:43:37,794.794 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:43:37,846.846 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:43:37,849.849 INFO    ] No update needed
[2026-08-31 02:43:37,852.852 INFO    ] Checking for camera pi updates...
[2026-08-31 02:43:37,885.885 INFO    ] 200
[2026-08-31 02:43:37,888.888 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:43:37,933.933 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:43:38,014.014 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:43:38,016.016 INFO    ] No camera update needed
[2026-08-31 02:43:38,019.019 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:43:38,021.021 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:43:38,026.026 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:43:38,031.031 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:43:40,073.073 INFO    ] ================================================
[2026-08-31 02:43:40,089.089 INFO    ] Launching Daemon at Mon Aug 31 02:43:40 IST 2026
[2026-08-31 02:43:40,100.100 INFO    ] ================================================
[2026-08-31 02:43:40,768.768 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:43:40
[2026-08-31 02:43:41,463.463 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:43:41,781.781 INFO    ] Initializing speech engine...
[2026-08-31 02:43:41,789.789 INFO    ] 2026-08-31 02:43:41
[2026-08-31 02:43:42,075.075 INFO    ] 2026-08-31 02:43:42
[2026-08-31 02:43:42,114.114 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:43:42,371.371 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:43:42,376.376 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:43:42,580.580 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:43:42,620.620 INFO    ] time= 31/08/2026 02:43:42
[2026-08-31 02:43:42,638.638 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:43:42,645.645 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:43:42,766.766 INFO    ] No existing commands found in stream
[2026-08-31 02:43:47,786.786 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:43:47,789.789 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-08-31 02:43:48,376.376 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 02:43:48,379.379 INFO    ] Checking for system updates...
[2026-08-31 02:43:48,418.418 INFO    ] 200
[2026-08-31 02:43:48,421.421 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:43:48,480.480 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:43:48,483.483 INFO    ] No update needed
[2026-08-31 02:43:48,485.485 INFO    ] Checking for camera pi updates...
[2026-08-31 02:43:48,522.522 INFO    ] 200
[2026-08-31 02:43:48,525.525 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:43:48,574.574 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:43:48,671.671 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:43:48,673.673 INFO    ] No camera update needed
[2026-08-31 02:43:48,676.676 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:43:48,678.678 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:43:48,683.683 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:43:48,688.688 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:43:50,729.729 INFO    ] ================================================
[2026-08-31 02:43:50,745.745 INFO    ] Launching Daemon at Mon Aug 31 02:43:50 IST 2026
[2026-08-31 02:43:50,756.756 INFO    ] ================================================
[2026-08-31 02:43:51,321.321 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:43:51
[2026-08-31 02:43:51,903.903 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:43:52,174.174 INFO    ] Initializing speech engine...
[2026-08-31 02:43:52,183.183 INFO    ] 2026-08-31 02:43:52
[2026-08-31 02:43:52,438.438 INFO    ] 2026-08-31 02:43:52
[2026-08-31 02:43:52,467.467 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:43:52,716.716 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:43:52,721.721 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:43:52,931.931 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:43:52,977.977 INFO    ] time= 31/08/2026 02:43:52
[2026-08-31 02:43:52,983.983 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:43:53,003.003 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:43:53,131.131 INFO    ] No existing commands found in stream
[2026-08-31 02:43:58,143.143 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:43:58,146.146 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-08-31 02:44:00,780.780 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 02:44:00,783.783 INFO    ] Checking for system updates...
[2026-08-31 02:44:00,821.821 INFO    ] 200
[2026-08-31 02:44:00,824.824 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:44:00,891.891 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:44:00,894.894 INFO    ] No update needed
[2026-08-31 02:44:00,897.897 INFO    ] Checking for camera pi updates...
[2026-08-31 02:44:00,938.938 INFO    ] 200
[2026-08-31 02:44:00,941.941 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:44:00,990.990 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:44:01,169.169 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:44:01,172.172 INFO    ] No camera update needed
[2026-08-31 02:44:01,175.175 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:44:01,178.178 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:44:01,184.184 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:44:01,191.191 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:44:03,235.235 INFO    ] ================================================
[2026-08-31 02:44:03,252.252 INFO    ] Launching Daemon at Mon Aug 31 02:44:03 IST 2026
[2026-08-31 02:44:03,268.268 INFO    ] ================================================
[2026-08-31 02:44:03,963.963 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:44:03
[2026-08-31 02:44:04,595.595 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:44:04,872.872 INFO    ] Initializing speech engine...
[2026-08-31 02:44:04,878.878 INFO    ] 2026-08-31 02:44:04
[2026-08-31 02:44:05,140.140 INFO    ] 2026-08-31 02:44:05
[2026-08-31 02:44:05,193.193 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:44:05,421.421 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:44:05,427.427 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:44:05,664.664 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:44:05,682.682 INFO    ] time= 31/08/2026 02:44:05
[2026-08-31 02:44:05,689.689 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:44:05,709.709 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:44:05,837.837 INFO    ] No existing commands found in stream
[2026-08-31 02:44:10,857.857 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:44:10,860.860 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-08-31 02:44:12,100.100 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 02:44:12,103.103 INFO    ] Checking for system updates...
[2026-08-31 02:44:12,143.143 INFO    ] 200
[2026-08-31 02:44:12,145.145 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:44:12,206.206 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:44:12,209.209 INFO    ] No update needed
[2026-08-31 02:44:12,212.212 INFO    ] Checking for camera pi updates...
[2026-08-31 02:44:12,250.250 INFO    ] 200
[2026-08-31 02:44:12,253.253 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:44:12,299.299 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:44:12,389.389 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:44:12,392.392 INFO    ] No camera update needed
[2026-08-31 02:44:12,394.394 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:44:12,397.397 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:44:12,402.402 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:44:12,407.407 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:44:14,448.448 INFO    ] ================================================
[2026-08-31 02:44:14,463.463 INFO    ] Launching Daemon at Mon Aug 31 02:44:14 IST 2026
[2026-08-31 02:44:14,474.474 INFO    ] ================================================
[2026-08-31 02:44:15,136.136 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:44:15
[2026-08-31 02:44:15,720.720 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:44:15,993.993 INFO    ] Initializing speech engine...
[2026-08-31 02:44:16,000.000 INFO    ] 2026-08-31 02:44:15
[2026-08-31 02:44:16,259.259 INFO    ] 2026-08-31 02:44:16
[2026-08-31 02:44:16,312.312 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:44:16,539.539 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:44:16,545.545 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:44:16,761.761 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:44:16,802.802 INFO    ] time= 31/08/2026 02:44:16
[2026-08-31 02:44:16,808.808 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:44:16,825.825 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:44:16,956.956 INFO    ] No existing commands found in stream
[2026-08-31 02:44:21,971.971 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:44:21,974.974 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-08-31 02:44:22,577.577 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 02:44:22,580.580 INFO    ] Checking for system updates...
[2026-08-31 02:44:22,616.616 INFO    ] 200
[2026-08-31 02:44:22,619.619 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:44:22,681.681 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:44:22,684.684 INFO    ] No update needed
[2026-08-31 02:44:22,687.687 INFO    ] Checking for camera pi updates...
[2026-08-31 02:44:22,727.727 INFO    ] 200
[2026-08-31 02:44:22,730.730 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:44:22,778.778 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:44:22,859.859 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:44:22,862.862 INFO    ] No camera update needed
[2026-08-31 02:44:22,865.865 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:44:22,868.868 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:44:22,874.874 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:44:22,880.880 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:44:24,923.923 INFO    ] ================================================
[2026-08-31 02:44:24,939.939 INFO    ] Launching Daemon at Mon Aug 31 02:44:24 IST 2026
[2026-08-31 02:44:24,950.950 INFO    ] ================================================
[2026-08-31 02:44:25,633.633 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:44:25
[2026-08-31 02:44:26,260.260 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:44:26,530.530 INFO    ] Initializing speech engine...
[2026-08-31 02:44:26,539.539 INFO    ] 2026-08-31 02:44:26
[2026-08-31 02:44:26,781.781 INFO    ] 2026-08-31 02:44:26
[2026-08-31 02:44:26,815.815 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:44:27,066.066 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:44:27,075.075 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:44:27,299.299 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:44:27,330.330 INFO    ] time= 31/08/2026 02:44:27
[2026-08-31 02:44:27,336.336 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:44:27,354.354 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:44:27,483.483 INFO    ] No existing commands found in stream
[2026-08-31 02:44:32,495.495 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:44:32,499.499 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-08-31 02:44:36,531.531 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 02:44:36,533.533 INFO    ] Checking for system updates...
[2026-08-31 02:44:36,569.569 INFO    ] 200
[2026-08-31 02:44:36,571.571 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:44:36,624.624 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:44:36,626.626 INFO    ] No update needed
[2026-08-31 02:44:36,629.629 INFO    ] Checking for camera pi updates...
[2026-08-31 02:44:36,663.663 INFO    ] 200
[2026-08-31 02:44:36,665.665 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:44:36,710.710 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:44:36,789.789 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:44:36,791.791 INFO    ] No camera update needed
[2026-08-31 02:44:36,793.793 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:44:36,796.796 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:44:36,801.801 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:44:36,806.806 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:44:38,845.845 INFO    ] ================================================
[2026-08-31 02:44:38,861.861 INFO    ] Launching Daemon at Mon Aug 31 02:44:38 IST 2026
[2026-08-31 02:44:38,872.872 INFO    ] ================================================
[2026-08-31 02:44:39,436.436 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:44:39
[2026-08-31 02:44:40,018.018 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:44:40,289.289 INFO    ] Initializing speech engine...
[2026-08-31 02:44:40,295.295 INFO    ] 2026-08-31 02:44:40
[2026-08-31 02:44:40,540.540 INFO    ] 2026-08-31 02:44:40
[2026-08-31 02:44:40,575.575 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:44:40,854.854 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:44:40,858.858 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:44:41,089.089 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:44:41,095.095 INFO    ] time= 31/08/2026 02:44:41
[2026-08-31 02:44:41,113.113 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:44:41,120.120 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:44:41,267.267 INFO    ] No existing commands found in stream
[2026-08-31 02:44:46,293.293 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:44:46,296.296 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-08-31 02:44:47,752.752 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 02:44:47,755.755 INFO    ] Checking for system updates...
[2026-08-31 02:44:47,790.790 INFO    ] 200
[2026-08-31 02:44:47,792.792 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:44:47,853.853 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:44:47,855.855 INFO    ] No update needed
[2026-08-31 02:44:47,858.858 INFO    ] Checking for camera pi updates...
[2026-08-31 02:44:47,896.896 INFO    ] 200
[2026-08-31 02:44:47,899.899 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:44:47,945.945 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:44:48,048.048 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:44:48,051.051 INFO    ] No camera update needed
[2026-08-31 02:44:48,053.053 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:44:48,055.055 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:44:48,061.061 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:44:48,066.066 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:44:50,108.108 INFO    ] ================================================
[2026-08-31 02:44:50,123.123 INFO    ] Launching Daemon at Mon Aug 31 02:44:50 IST 2026
[2026-08-31 02:44:50,134.134 INFO    ] ================================================
[2026-08-31 02:44:50,700.700 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:44:50
[2026-08-31 02:44:51,284.284 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:44:51,543.543 INFO    ] Initializing speech engine...
[2026-08-31 02:44:51,562.562 INFO    ] 2026-08-31 02:44:51
[2026-08-31 02:44:51,811.811 INFO    ] 2026-08-31 02:44:51
[2026-08-31 02:44:51,847.847 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:44:52,108.108 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:44:52,112.112 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:44:52,335.335 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:44:52,375.375 INFO    ] time= 31/08/2026 02:44:52
[2026-08-31 02:44:52,381.381 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:44:52,399.399 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:44:52,531.531 INFO    ] No existing commands found in stream
[2026-08-31 02:44:57,544.544 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:44:57,547.547 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-08-31 02:44:59,512.512 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 02:44:59,515.515 INFO    ] Checking for system updates...
[2026-08-31 02:44:59,551.551 INFO    ] 200
[2026-08-31 02:44:59,553.553 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:44:59,606.606 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:44:59,608.608 INFO    ] No update needed
[2026-08-31 02:44:59,611.611 INFO    ] Checking for camera pi updates...
[2026-08-31 02:44:59,644.644 INFO    ] 200
[2026-08-31 02:44:59,646.646 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:44:59,686.686 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:44:59,767.767 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:44:59,770.770 INFO    ] No camera update needed
[2026-08-31 02:44:59,775.775 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:44:59,783.783 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:44:59,790.790 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:44:59,796.796 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:45:02,862.862 INFO    ] ================================================
[2026-08-31 02:45:02,074.074 INFO    ] Launching Daemon at Mon Aug 31 02:45:02 IST 2026
[2026-08-31 02:45:02,171.171 INFO    ] ================================================
[2026-08-31 02:45:03,067.067 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:45:03
[2026-08-31 02:45:03,850.850 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:45:04,169.169 INFO    ] Initializing speech engine...
[2026-08-31 02:45:04,177.177 INFO    ] 2026-08-31 02:45:04
[2026-08-31 02:45:04,498.498 INFO    ] 2026-08-31 02:45:04
[2026-08-31 02:45:04,579.579 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:45:04,854.854 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:45:04,870.870 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:45:05,075.075 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:45:05,134.134 INFO    ] time= 31/08/2026 02:45:05
[2026-08-31 02:45:05,174.174 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:45:05,245.245 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:45:05,386.386 INFO    ] No existing commands found in stream
[2026-08-31 02:45:10,404.404 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:45:10,406.406 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-08-31 02:45:12,899.899 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 02:45:12,901.901 INFO    ] Checking for system updates...
[2026-08-31 02:45:12,938.938 INFO    ] 200
[2026-08-31 02:45:12,941.941 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:45:12,994.994 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:45:12,997.997 INFO    ] No update needed
[2026-08-31 02:45:13,000.000 INFO    ] Checking for camera pi updates...
[2026-08-31 02:45:13,035.035 INFO    ] 200
[2026-08-31 02:45:13,038.038 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:45:13,083.083 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:45:13,177.177 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:45:13,180.180 INFO    ] No camera update needed
[2026-08-31 02:45:13,182.182 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:45:13,184.184 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:45:13,190.190 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:45:13,195.195 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:45:15,238.238 INFO    ] ================================================
[2026-08-31 02:45:15,254.254 INFO    ] Launching Daemon at Mon Aug 31 02:45:15 IST 2026
[2026-08-31 02:45:15,265.265 INFO    ] ================================================
[2026-08-31 02:45:15,829.829 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:45:15
[2026-08-31 02:45:16,412.412 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:45:16,663.663 INFO    ] Initializing speech engine...
[2026-08-31 02:45:16,669.669 INFO    ] 2026-08-31 02:45:16
[2026-08-31 02:45:16,970.970 INFO    ] 2026-08-31 02:45:16
[2026-08-31 02:45:16,995.995 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:45:17,231.231 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:45:17,242.242 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:45:17,454.454 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:45:17,468.468 INFO    ] time= 31/08/2026 02:45:17
[2026-08-31 02:45:17,510.510 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:45:17,559.559 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:45:17,673.673 INFO    ] No existing commands found in stream
[2026-08-31 02:45:22,685.685 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:45:22,688.688 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-08-31 02:45:23,500.500 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 02:45:23,502.502 INFO    ] Checking for system updates...
[2026-08-31 02:45:23,541.541 INFO    ] 200
[2026-08-31 02:45:23,544.544 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:45:23,603.603 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:45:23,606.606 INFO    ] No update needed
[2026-08-31 02:45:23,608.608 INFO    ] Checking for camera pi updates...
[2026-08-31 02:45:23,641.641 INFO    ] 200
[2026-08-31 02:45:23,644.644 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:45:23,684.684 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:45:23,765.765 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:45:23,768.768 INFO    ] No camera update needed
[2026-08-31 02:45:23,770.770 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:45:23,772.772 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:45:23,777.777 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:45:23,782.782 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:45:25,822.822 INFO    ] ================================================
[2026-08-31 02:45:25,838.838 INFO    ] Launching Daemon at Mon Aug 31 02:45:25 IST 2026
[2026-08-31 02:45:25,850.850 INFO    ] ================================================
[2026-08-31 02:45:26,421.421 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:45:26
[2026-08-31 02:45:27,007.007 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:45:27,279.279 INFO    ] Initializing speech engine...
[2026-08-31 02:45:27,286.286 INFO    ] 2026-08-31 02:45:27
[2026-08-31 02:45:27,544.544 INFO    ] 2026-08-31 02:45:27
[2026-08-31 02:45:27,597.597 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:45:27,846.846 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:45:27,850.850 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:45:28,064.064 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:45:28,084.084 INFO    ] time= 31/08/2026 02:45:28
[2026-08-31 02:45:28,101.101 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:45:28,110.110 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:45:28,239.239 INFO    ] No existing commands found in stream
[2026-08-31 02:45:33,268.268 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:45:33,270.270 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-08-31 02:45:34,833.833 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 02:45:34,836.836 INFO    ] Checking for system updates...
[2026-08-31 02:45:34,871.871 INFO    ] 200
[2026-08-31 02:45:34,873.873 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:45:34,931.931 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:45:34,933.933 INFO    ] No update needed
[2026-08-31 02:45:34,936.936 INFO    ] Checking for camera pi updates...
[2026-08-31 02:45:34,971.971 INFO    ] 200
[2026-08-31 02:45:34,973.973 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:45:35,013.013 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:45:35,094.094 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:45:35,096.096 INFO    ] No camera update needed
[2026-08-31 02:45:35,099.099 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:45:35,101.101 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:45:35,107.107 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:45:35,112.112 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:45:37,155.155 INFO    ] ================================================
[2026-08-31 02:45:37,171.171 INFO    ] Launching Daemon at Mon Aug 31 02:45:37 IST 2026
[2026-08-31 02:45:37,182.182 INFO    ] ================================================
[2026-08-31 02:45:37,832.832 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:45:37
[2026-08-31 02:45:38,504.504 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:45:38,803.803 INFO    ] Initializing speech engine...
[2026-08-31 02:45:38,810.810 INFO    ] 2026-08-31 02:45:38
[2026-08-31 02:45:39,102.102 INFO    ] 2026-08-31 02:45:39
[2026-08-31 02:45:39,146.146 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:45:39,612.612 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:45:39,623.623 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:45:39,831.831 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:45:39,874.874 INFO    ] time= 31/08/2026 02:45:39
[2026-08-31 02:45:39,943.943 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:45:39,999.999 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:45:40,191.191 INFO    ] No existing commands found in stream
[2026-08-31 02:45:45,212.212 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:45:45,215.215 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-08-31 02:45:46,289.289 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 02:45:46,292.292 INFO    ] Checking for system updates...
[2026-08-31 02:45:46,328.328 INFO    ] 200
[2026-08-31 02:45:46,331.331 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:45:46,383.383 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:45:46,386.386 INFO    ] No update needed
[2026-08-31 02:45:46,388.388 INFO    ] Checking for camera pi updates...
[2026-08-31 02:45:46,421.421 INFO    ] 200
[2026-08-31 02:45:46,424.424 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:45:46,465.465 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:45:46,539.539 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:45:46,541.541 INFO    ] No camera update needed
[2026-08-31 02:45:46,544.544 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:45:46,546.546 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:45:46,551.551 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:45:46,556.556 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:45:48,598.598 INFO    ] ================================================
[2026-08-31 02:45:48,614.614 INFO    ] Launching Daemon at Mon Aug 31 02:45:48 IST 2026
[2026-08-31 02:45:48,625.625 INFO    ] ================================================
[2026-08-31 02:45:49,201.201 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:45:49
[2026-08-31 02:45:49,793.793 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:45:50,071.071 INFO    ] Initializing speech engine...
[2026-08-31 02:45:50,076.076 INFO    ] 2026-08-31 02:45:50
[2026-08-31 02:45:50,336.336 INFO    ] 2026-08-31 02:45:50
[2026-08-31 02:45:50,366.366 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:45:50,617.617 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:45:50,622.622 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:45:50,845.845 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:45:50,881.881 INFO    ] time= 31/08/2026 02:45:50
[2026-08-31 02:45:50,886.886 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:45:50,904.904 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:45:51,035.035 INFO    ] No existing commands found in stream
[2026-08-31 02:45:56,048.048 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:45:56,051.051 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-08-31 02:46:00,060.060 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 02:46:00,064.064 INFO    ] Checking for system updates...
[2026-08-31 02:46:00,105.105 INFO    ] 200
[2026-08-31 02:46:00,107.107 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:46:00,162.162 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:46:00,164.164 INFO    ] No update needed
[2026-08-31 02:46:00,167.167 INFO    ] Checking for camera pi updates...
[2026-08-31 02:46:00,202.202 INFO    ] 200
[2026-08-31 02:46:00,205.205 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:46:00,246.246 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:46:00,296.296 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:46:00,299.299 INFO    ] No camera update needed
[2026-08-31 02:46:00,302.302 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:46:00,305.305 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:46:00,311.311 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:46:00,317.317 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:46:02,369.369 INFO    ] ================================================
[2026-08-31 02:46:02,393.393 INFO    ] Launching Daemon at Mon Aug 31 02:46:02 IST 2026
[2026-08-31 02:46:02,410.410 INFO    ] ================================================
[2026-08-31 02:46:03,043.043 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:46:03
[2026-08-31 02:46:03,623.623 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:46:03,889.889 INFO    ] Initializing speech engine...
[2026-08-31 02:46:03,898.898 INFO    ] 2026-08-31 02:46:03
[2026-08-31 02:46:04,146.146 INFO    ] 2026-08-31 02:46:04
[2026-08-31 02:46:04,181.181 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:46:04,439.439 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:46:04,447.447 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:46:04,649.649 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:46:04,709.709 INFO    ] time= 31/08/2026 02:46:04
[2026-08-31 02:46:04,717.717 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:46:04,735.735 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:46:04,846.846 INFO    ] No existing commands found in stream
[2026-08-31 02:46:09,874.874 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:46:09,877.877 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-08-31 02:46:11,335.335 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 02:46:11,338.338 INFO    ] Checking for system updates...
[2026-08-31 02:46:11,374.374 INFO    ] 200
[2026-08-31 02:46:11,376.376 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:46:11,429.429 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:46:11,432.432 INFO    ] No update needed
[2026-08-31 02:46:11,435.435 INFO    ] Checking for camera pi updates...
[2026-08-31 02:46:11,469.469 INFO    ] 200
[2026-08-31 02:46:11,472.472 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:46:11,513.513 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:46:11,692.692 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:46:11,694.694 INFO    ] No camera update needed
[2026-08-31 02:46:11,697.697 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:46:11,703.703 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:46:11,710.710 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:46:11,715.715 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:46:13,756.756 INFO    ] ================================================
[2026-08-31 02:46:13,772.772 INFO    ] Launching Daemon at Mon Aug 31 02:46:13 IST 2026
[2026-08-31 02:46:13,783.783 INFO    ] ================================================
[2026-08-31 02:46:14,363.363 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:46:14
[2026-08-31 02:46:14,960.960 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:46:15,224.224 INFO    ] Initializing speech engine...
[2026-08-31 02:46:15,247.247 INFO    ] 2026-08-31 02:46:15
[2026-08-31 02:46:15,505.505 INFO    ] 2026-08-31 02:46:15
[2026-08-31 02:46:15,540.540 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:46:15,796.796 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:46:15,802.802 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:46:16,019.019 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:46:16,059.059 INFO    ] time= 31/08/2026 02:46:16
[2026-08-31 02:46:16,065.065 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:46:16,082.082 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:46:16,213.213 INFO    ] No existing commands found in stream
[2026-08-31 02:46:21,228.228 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:46:21,231.231 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-08-31 02:46:23,632.632 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 02:46:23,634.634 INFO    ] Checking for system updates...
[2026-08-31 02:46:23,671.671 INFO    ] 200
[2026-08-31 02:46:23,673.673 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:46:23,739.739 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:46:23,742.742 INFO    ] No update needed
[2026-08-31 02:46:23,745.745 INFO    ] Checking for camera pi updates...
[2026-08-31 02:46:23,782.782 INFO    ] 200
[2026-08-31 02:46:23,784.784 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:46:23,829.829 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:46:23,904.904 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:46:23,907.907 INFO    ] No camera update needed
[2026-08-31 02:46:23,910.910 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:46:23,912.912 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:46:23,918.918 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:46:23,924.924 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:46:25,964.964 INFO    ] ================================================
[2026-08-31 02:46:25,979.979 INFO    ] Launching Daemon at Mon Aug 31 02:46:25 IST 2026
[2026-08-31 02:46:25,989.989 INFO    ] ================================================
[2026-08-31 02:46:26,570.570 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:46:26
[2026-08-31 02:46:27,165.165 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:46:27,445.445 INFO    ] Initializing speech engine...
[2026-08-31 02:46:27,452.452 INFO    ] 2026-08-31 02:46:27
[2026-08-31 02:46:27,710.710 INFO    ] 2026-08-31 02:46:27
[2026-08-31 02:46:27,763.763 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:46:28,010.010 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:46:28,018.018 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:46:28,246.246 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:46:28,253.253 INFO    ] time= 31/08/2026 02:46:28
[2026-08-31 02:46:28,272.272 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:46:28,300.300 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:46:28,420.420 INFO    ] No existing commands found in stream
[2026-08-31 02:46:33,450.450 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:46:33,453.453 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-08-31 02:46:35,331.331 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 02:46:35,334.334 INFO    ] Checking for system updates...
[2026-08-31 02:46:35,372.372 INFO    ] 200
[2026-08-31 02:46:35,374.374 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:46:35,426.426 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:46:35,429.429 INFO    ] No update needed
[2026-08-31 02:46:35,431.431 INFO    ] Checking for camera pi updates...
[2026-08-31 02:46:35,464.464 INFO    ] 200
[2026-08-31 02:46:35,467.467 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:46:35,507.507 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:46:35,597.597 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:46:35,600.600 INFO    ] No camera update needed
[2026-08-31 02:46:35,602.602 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:46:35,604.604 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:46:35,610.610 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:46:35,615.615 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:46:37,656.656 INFO    ] ================================================
[2026-08-31 02:46:37,671.671 INFO    ] Launching Daemon at Mon Aug 31 02:46:37 IST 2026
[2026-08-31 02:46:37,681.681 INFO    ] ================================================
[2026-08-31 02:46:38,311.311 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:46:38
[2026-08-31 02:46:38,962.962 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:46:39,261.261 INFO    ] Initializing speech engine...
[2026-08-31 02:46:39,268.268 INFO    ] 2026-08-31 02:46:39
[2026-08-31 02:46:39,532.532 INFO    ] 2026-08-31 02:46:39
[2026-08-31 02:46:39,594.594 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:46:39,843.843 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:46:39,849.849 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:46:40,079.079 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:46:40,086.086 INFO    ] time= 31/08/2026 02:46:40
[2026-08-31 02:46:40,106.106 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:46:40,134.134 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:46:40,253.253 INFO    ] No existing commands found in stream
[2026-08-31 02:46:45,278.278 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:46:45,281.281 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-08-31 02:46:48,130.130 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 02:46:48,133.133 INFO    ] Checking for system updates...
[2026-08-31 02:46:48,170.170 INFO    ] 200
[2026-08-31 02:46:48,172.172 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:46:48,225.225 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:46:48,228.228 INFO    ] No update needed
[2026-08-31 02:46:48,230.230 INFO    ] Checking for camera pi updates...
[2026-08-31 02:46:48,265.265 INFO    ] 200
[2026-08-31 02:46:48,267.267 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:46:48,309.309 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:46:48,407.407 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:46:48,410.410 INFO    ] No camera update needed
[2026-08-31 02:46:48,412.412 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:46:48,415.415 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:46:48,421.421 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:46:48,426.426 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:46:50,468.468 INFO    ] ================================================
[2026-08-31 02:46:50,482.482 INFO    ] Launching Daemon at Mon Aug 31 02:46:50 IST 2026
[2026-08-31 02:46:50,493.493 INFO    ] ================================================
[2026-08-31 02:46:51,122.122 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:46:51
[2026-08-31 02:46:51,771.771 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:46:52,062.062 INFO    ] Initializing speech engine...
[2026-08-31 02:46:52,071.071 INFO    ] 2026-08-31 02:46:52
[2026-08-31 02:46:52,385.385 INFO    ] 2026-08-31 02:46:52
[2026-08-31 02:46:52,470.470 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:46:52,679.679 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:46:52,687.687 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:46:52,882.882 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:46:52,901.901 INFO    ] time= 31/08/2026 02:46:52
[2026-08-31 02:46:52,909.909 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:46:52,935.935 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:46:53,043.043 INFO    ] No existing commands found in stream
[2026-08-31 02:46:58,075.075 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:46:58,078.078 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-08-31 02:46:59,898.898 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 02:46:59,901.901 INFO    ] Checking for system updates...
[2026-08-31 02:46:59,937.937 INFO    ] 200
[2026-08-31 02:46:59,940.940 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:46:59,992.992 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:46:59,995.995 INFO    ] No update needed
[2026-08-31 02:46:59,998.998 INFO    ] Checking for camera pi updates...
[2026-08-31 02:47:00,032.032 INFO    ] 200
[2026-08-31 02:47:00,035.035 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:47:00,075.075 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:47:00,156.156 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:47:00,158.158 INFO    ] No camera update needed
[2026-08-31 02:47:00,161.161 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:47:00,163.163 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:47:00,168.168 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:47:00,173.173 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:47:02,242.242 INFO    ] ================================================
[2026-08-31 02:47:02,259.259 INFO    ] Launching Daemon at Mon Aug 31 02:47:02 IST 2026
[2026-08-31 02:47:02,271.271 INFO    ] ================================================
[2026-08-31 02:47:02,960.960 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:47:02
[2026-08-31 02:47:03,609.609 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:47:03,901.901 INFO    ] Initializing speech engine...
[2026-08-31 02:47:03,909.909 INFO    ] 2026-08-31 02:47:03
[2026-08-31 02:47:04,190.190 INFO    ] 2026-08-31 02:47:04
[2026-08-31 02:47:04,235.235 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:47:04,483.483 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:47:04,490.490 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:47:04,720.720 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:47:04,738.738 INFO    ] time= 31/08/2026 02:47:04
[2026-08-31 02:47:04,769.769 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:47:04,776.776 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:47:04,879.879 INFO    ] No existing commands found in stream
[2026-08-31 02:47:09,901.901 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:47:09,904.904 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-08-31 02:47:13,032.032 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 02:47:13,035.035 INFO    ] Checking for system updates...
[2026-08-31 02:47:13,073.073 INFO    ] 200
[2026-08-31 02:47:13,075.075 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:47:13,129.129 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:47:13,132.132 INFO    ] No update needed
[2026-08-31 02:47:13,134.134 INFO    ] Checking for camera pi updates...
[2026-08-31 02:47:13,168.168 INFO    ] 200
[2026-08-31 02:47:13,171.171 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:47:13,213.213 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:47:13,295.295 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:47:13,297.297 INFO    ] No camera update needed
[2026-08-31 02:47:13,300.300 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:47:13,303.303 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:47:13,309.309 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:47:13,314.314 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:47:15,355.355 INFO    ] ================================================
[2026-08-31 02:47:15,371.371 INFO    ] Launching Daemon at Mon Aug 31 02:47:15 IST 2026
[2026-08-31 02:47:15,383.383 INFO    ] ================================================
[2026-08-31 02:47:15,955.955 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:47:15
[2026-08-31 02:47:16,540.540 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:47:16,797.797 INFO    ] Initializing speech engine...
[2026-08-31 02:47:16,816.816 INFO    ] 2026-08-31 02:47:16
[2026-08-31 02:47:17,085.085 INFO    ] 2026-08-31 02:47:17
[2026-08-31 02:47:17,121.121 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:47:17,333.333 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:47:17,356.356 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:47:17,554.554 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:47:17,609.609 INFO    ] time= 31/08/2026 02:47:17
[2026-08-31 02:47:17,663.663 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:47:17,696.696 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:47:17,825.825 INFO    ] No existing commands found in stream
[2026-08-31 02:47:22,851.851 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:47:22,853.853 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-08-31 02:47:26,699.699 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 02:47:26,701.701 INFO    ] Checking for system updates...
[2026-08-31 02:47:26,736.736 INFO    ] 200
[2026-08-31 02:47:26,739.739 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:47:26,790.790 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:47:26,793.793 INFO    ] No update needed
[2026-08-31 02:47:26,795.795 INFO    ] Checking for camera pi updates...
[2026-08-31 02:47:26,829.829 INFO    ] 200
[2026-08-31 02:47:26,832.832 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:47:26,872.872 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:47:26,984.984 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:47:26,986.986 INFO    ] No camera update needed
[2026-08-31 02:47:26,989.989 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:47:26,991.991 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:47:26,996.996 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:47:27,001.001 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:47:29,042.042 INFO    ] ================================================
[2026-08-31 02:47:29,057.057 INFO    ] Launching Daemon at Mon Aug 31 02:47:29 IST 2026
[2026-08-31 02:47:29,068.068 INFO    ] ================================================
[2026-08-31 02:47:29,691.691 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:47:29
[2026-08-31 02:47:30,332.332 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:47:30,626.626 INFO    ] Initializing speech engine...
[2026-08-31 02:47:30,633.633 INFO    ] 2026-08-31 02:47:30
[2026-08-31 02:47:30,905.905 INFO    ] 2026-08-31 02:47:30
[2026-08-31 02:47:30,961.961 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:47:31,255.255 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:47:31,294.294 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:47:31,494.494 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:47:31,524.524 INFO    ] time= 31/08/2026 02:47:31
[2026-08-31 02:47:31,533.533 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:47:31,546.546 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:47:31,692.692 INFO    ] No existing commands found in stream
[2026-08-31 02:47:36,718.718 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:47:36,721.721 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-08-31 02:47:38,134.134 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 02:47:38,137.137 INFO    ] Checking for system updates...
[2026-08-31 02:47:38,174.174 INFO    ] 200
[2026-08-31 02:47:38,177.177 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:47:38,230.230 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:47:38,233.233 INFO    ] No update needed
[2026-08-31 02:47:38,235.235 INFO    ] Checking for camera pi updates...
[2026-08-31 02:47:38,273.273 INFO    ] 200
[2026-08-31 02:47:38,276.276 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:47:38,321.321 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:47:38,420.420 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:47:38,422.422 INFO    ] No camera update needed
[2026-08-31 02:47:38,425.425 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:47:38,427.427 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:47:38,432.432 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:47:38,437.437 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:47:40,478.478 INFO    ] ================================================
[2026-08-31 02:47:40,494.494 INFO    ] Launching Daemon at Mon Aug 31 02:47:40 IST 2026
[2026-08-31 02:47:40,506.506 INFO    ] ================================================
[2026-08-31 02:47:41,138.138 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:47:41
[2026-08-31 02:47:41,791.791 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:47:42,087.087 INFO    ] Initializing speech engine...
[2026-08-31 02:47:42,096.096 INFO    ] 2026-08-31 02:47:42
[2026-08-31 02:47:42,367.367 INFO    ] 2026-08-31 02:47:42
[2026-08-31 02:47:42,419.419 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:47:42,646.646 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:47:42,652.652 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:47:42,904.904 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:47:42,911.911 INFO    ] time= 31/08/2026 02:47:42
[2026-08-31 02:47:42,930.930 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:47:42,958.958 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:47:43,070.070 INFO    ] No existing commands found in stream
[2026-08-31 02:47:48,100.100 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:47:48,103.103 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-08-31 02:47:48,860.860 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 02:47:48,863.863 INFO    ] Checking for system updates...
[2026-08-31 02:47:48,900.900 INFO    ] 200
[2026-08-31 02:47:48,903.903 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:47:48,955.955 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:47:48,958.958 INFO    ] No update needed
[2026-08-31 02:47:48,960.960 INFO    ] Checking for camera pi updates...
[2026-08-31 02:47:48,997.997 INFO    ] 200
[2026-08-31 02:47:49,000.000 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:47:49,039.039 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:47:49,119.119 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:47:49,121.121 INFO    ] No camera update needed
[2026-08-31 02:47:49,123.123 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:47:49,126.126 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:47:49,131.131 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:47:49,136.136 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:47:51,175.175 INFO    ] ================================================
[2026-08-31 02:47:51,190.190 INFO    ] Launching Daemon at Mon Aug 31 02:47:51 IST 2026
[2026-08-31 02:47:51,201.201 INFO    ] ================================================
[2026-08-31 02:47:51,768.768 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:47:51
[2026-08-31 02:47:52,350.350 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:47:52,618.618 INFO    ] Initializing speech engine...
[2026-08-31 02:47:52,626.626 INFO    ] 2026-08-31 02:47:52
[2026-08-31 02:47:52,873.873 INFO    ] 2026-08-31 02:47:52
[2026-08-31 02:47:52,907.907 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:47:53,157.157 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:47:53,166.166 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:47:53,382.382 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:47:53,422.422 INFO    ] time= 31/08/2026 02:47:53
[2026-08-31 02:47:53,429.429 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:47:53,446.446 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:47:53,575.575 INFO    ] No existing commands found in stream
[2026-08-31 02:47:58,588.588 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:47:58,591.591 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-08-31 02:48:00,353.353 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 02:48:00,357.357 INFO    ] Checking for system updates...
[2026-08-31 02:48:00,393.393 INFO    ] 200
[2026-08-31 02:48:00,395.395 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:48:00,447.447 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:48:00,450.450 INFO    ] No update needed
[2026-08-31 02:48:00,452.452 INFO    ] Checking for camera pi updates...
[2026-08-31 02:48:00,489.489 INFO    ] 200
[2026-08-31 02:48:00,491.491 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:48:00,532.532 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:48:00,605.605 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:48:00,608.608 INFO    ] No camera update needed
[2026-08-31 02:48:00,610.610 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:48:00,612.612 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:48:00,618.618 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:48:00,622.622 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:48:02,664.664 INFO    ] ================================================
[2026-08-31 02:48:02,681.681 INFO    ] Launching Daemon at Mon Aug 31 02:48:02 IST 2026
[2026-08-31 02:48:02,694.694 INFO    ] ================================================
[2026-08-31 02:48:03,289.289 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:48:03
[2026-08-31 02:48:03,915.915 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:48:04,216.216 INFO    ] Initializing speech engine...
[2026-08-31 02:48:04,230.230 INFO    ] 2026-08-31 02:48:04
[2026-08-31 02:48:04,541.541 INFO    ] 2026-08-31 02:48:04
[2026-08-31 02:48:04,624.624 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:48:04,902.902 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:48:04,914.914 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:48:05,128.128 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:48:05,183.183 INFO    ] time= 31/08/2026 02:48:05
[2026-08-31 02:48:05,208.208 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:48:05,268.268 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:48:05,416.416 INFO    ] No existing commands found in stream
[2026-08-31 02:48:10,441.441 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:48:10,443.443 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-08-31 02:48:14,092.092 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 02:48:14,095.095 INFO    ] Checking for system updates...
[2026-08-31 02:48:14,130.130 INFO    ] 200
[2026-08-31 02:48:14,132.132 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:48:14,192.192 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:48:14,194.194 INFO    ] No update needed
[2026-08-31 02:48:14,196.196 INFO    ] Checking for camera pi updates...
[2026-08-31 02:48:14,233.233 INFO    ] 200
[2026-08-31 02:48:14,236.236 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:48:14,276.276 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:48:14,427.427 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:48:14,429.429 INFO    ] No camera update needed
[2026-08-31 02:48:14,432.432 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:48:14,434.434 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:48:14,439.439 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:48:14,444.444 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:48:16,484.484 INFO    ] ================================================
[2026-08-31 02:48:16,500.500 INFO    ] Launching Daemon at Mon Aug 31 02:48:16 IST 2026
[2026-08-31 02:48:16,511.511 INFO    ] ================================================
[2026-08-31 02:48:17,109.109 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:48:17
[2026-08-31 02:48:17,718.718 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:48:17,974.974 INFO    ] Initializing speech engine...
[2026-08-31 02:48:17,983.983 INFO    ] 2026-08-31 02:48:17
[2026-08-31 02:48:18,283.283 INFO    ] 2026-08-31 02:48:18
[2026-08-31 02:48:18,321.321 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:48:18,617.617 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:48:18,622.622 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:48:18,857.857 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:48:18,912.912 INFO    ] time= 31/08/2026 02:48:18
[2026-08-31 02:48:18,926.926 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:48:18,943.943 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:48:19,072.072 INFO    ] No existing commands found in stream
[2026-08-31 02:48:24,102.102 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:48:24,105.105 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-08-31 02:48:27,617.617 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 02:48:27,620.620 INFO    ] Checking for system updates...
[2026-08-31 02:48:27,659.659 INFO    ] 200
[2026-08-31 02:48:27,662.662 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:48:27,720.720 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:48:27,722.722 INFO    ] No update needed
[2026-08-31 02:48:27,725.725 INFO    ] Checking for camera pi updates...
[2026-08-31 02:48:27,769.769 INFO    ] 200
[2026-08-31 02:48:27,771.771 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:48:27,821.821 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:48:27,902.902 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:48:27,904.904 INFO    ] No camera update needed
[2026-08-31 02:48:27,907.907 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:48:27,910.910 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:48:27,916.916 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:48:27,922.922 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:48:29,963.963 INFO    ] ================================================
[2026-08-31 02:48:29,978.978 INFO    ] Launching Daemon at Mon Aug 31 02:48:29 IST 2026
[2026-08-31 02:48:29,989.989 INFO    ] ================================================
[2026-08-31 02:48:30,562.562 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:48:30
[2026-08-31 02:48:31,170.170 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:48:31,448.448 INFO    ] Initializing speech engine...
[2026-08-31 02:48:31,472.472 INFO    ] 2026-08-31 02:48:31
[2026-08-31 02:48:31,741.741 INFO    ] 2026-08-31 02:48:31
[2026-08-31 02:48:31,778.778 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:48:32,057.057 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:48:32,064.064 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:48:32,288.288 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:48:32,332.332 INFO    ] time= 31/08/2026 02:48:32
[2026-08-31 02:48:32,352.352 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:48:32,372.372 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:48:32,486.486 INFO    ] No existing commands found in stream
[2026-08-31 02:48:37,510.510 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:48:37,513.513 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-08-31 02:48:40,852.852 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 02:48:40,855.855 INFO    ] Checking for system updates...
[2026-08-31 02:48:40,894.894 INFO    ] 200
[2026-08-31 02:48:40,896.896 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:48:40,957.957 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:48:40,960.960 INFO    ] No update needed
[2026-08-31 02:48:40,963.963 INFO    ] Checking for camera pi updates...
[2026-08-31 02:48:40,998.998 INFO    ] 200
[2026-08-31 02:48:41,001.001 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:48:41,047.047 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:48:41,109.109 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:48:41,112.112 INFO    ] No camera update needed
[2026-08-31 02:48:41,114.114 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:48:41,117.117 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:48:41,123.123 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:48:41,129.129 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:48:43,172.172 INFO    ] ================================================
[2026-08-31 02:48:43,189.189 INFO    ] Launching Daemon at Mon Aug 31 02:48:43 IST 2026
[2026-08-31 02:48:43,201.201 INFO    ] ================================================
[2026-08-31 02:48:43,767.767 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:48:43
[2026-08-31 02:48:44,349.349 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:48:44,599.599 INFO    ] Initializing speech engine...
[2026-08-31 02:48:44,604.604 INFO    ] 2026-08-31 02:48:44
[2026-08-31 02:48:44,878.878 INFO    ] 2026-08-31 02:48:44
[2026-08-31 02:48:44,913.913 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:48:45,172.172 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:48:45,181.181 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:48:45,422.422 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:48:45,447.447 INFO    ] time= 31/08/2026 02:48:45
[2026-08-31 02:48:45,453.453 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:48:45,474.474 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:48:45,594.594 INFO    ] No existing commands found in stream
[2026-08-31 02:48:50,616.616 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:48:50,619.619 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-08-31 02:48:54,938.938 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 02:48:54,941.941 INFO    ] Checking for system updates...
[2026-08-31 02:48:54,981.981 INFO    ] 200
[2026-08-31 02:48:54,983.983 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:48:55,043.043 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:48:55,045.045 INFO    ] No update needed
[2026-08-31 02:48:55,048.048 INFO    ] Checking for camera pi updates...
[2026-08-31 02:48:55,085.085 INFO    ] 200
[2026-08-31 02:48:55,088.088 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:48:55,129.129 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:48:55,231.231 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:48:55,234.234 INFO    ] No camera update needed
[2026-08-31 02:48:55,236.236 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:48:55,238.238 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:48:55,243.243 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:48:55,248.248 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:48:57,290.290 INFO    ] ================================================
[2026-08-31 02:48:57,305.305 INFO    ] Launching Daemon at Mon Aug 31 02:48:57 IST 2026
[2026-08-31 02:48:57,322.322 INFO    ] ================================================
[2026-08-31 02:48:58,008.008 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:48:58
[2026-08-31 02:48:58,598.598 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:48:58,844.844 INFO    ] Initializing speech engine...
[2026-08-31 02:48:58,869.869 INFO    ] 2026-08-31 02:48:58
[2026-08-31 02:48:59,124.124 INFO    ] 2026-08-31 02:48:59
[2026-08-31 02:48:59,161.161 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:48:59,418.418 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:48:59,427.427 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:48:59,644.644 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:48:59,690.690 INFO    ] time= 31/08/2026 02:48:59
[2026-08-31 02:48:59,696.696 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:48:59,715.715 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:48:59,858.858 INFO    ] No existing commands found in stream
[2026-08-31 02:49:04,889.889 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:49:04,892.892 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-08-31 02:49:07,431.431 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 02:49:07,434.434 INFO    ] Checking for system updates...
[2026-08-31 02:49:07,470.470 INFO    ] 200
[2026-08-31 02:49:07,472.472 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:49:07,533.533 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:49:07,535.535 INFO    ] No update needed
[2026-08-31 02:49:07,537.537 INFO    ] Checking for camera pi updates...
[2026-08-31 02:49:07,575.575 INFO    ] 200
[2026-08-31 02:49:07,578.578 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:49:07,623.623 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:49:07,731.731 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:49:07,734.734 INFO    ] No camera update needed
[2026-08-31 02:49:07,736.736 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:49:07,738.738 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:49:07,744.744 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:49:07,749.749 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:49:09,791.791 INFO    ] ================================================
[2026-08-31 02:49:09,807.807 INFO    ] Launching Daemon at Mon Aug 31 02:49:09 IST 2026
[2026-08-31 02:49:09,818.818 INFO    ] ================================================
[2026-08-31 02:49:10,383.383 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:49:10
[2026-08-31 02:49:10,971.971 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:49:11,220.220 INFO    ] Initializing speech engine...
[2026-08-31 02:49:11,235.235 INFO    ] 2026-08-31 02:49:11
[2026-08-31 02:49:11,503.503 INFO    ] 2026-08-31 02:49:11
[2026-08-31 02:49:11,538.538 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:49:11,798.798 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:49:11,807.807 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:49:12,027.027 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:49:12,071.071 INFO    ] time= 31/08/2026 02:49:12
[2026-08-31 02:49:12,078.078 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:49:12,096.096 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:49:12,224.224 INFO    ] No existing commands found in stream
[2026-08-31 02:49:17,241.241 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:49:17,244.244 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-08-31 02:49:21,019.019 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 02:49:21,021.021 INFO    ] Checking for system updates...
[2026-08-31 02:49:21,058.058 INFO    ] 200
[2026-08-31 02:49:21,060.060 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:49:21,112.112 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:49:21,115.115 INFO    ] No update needed
[2026-08-31 02:49:21,118.118 INFO    ] Checking for camera pi updates...
[2026-08-31 02:49:21,156.156 INFO    ] 200
[2026-08-31 02:49:21,158.158 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:49:21,204.204 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:49:21,286.286 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:49:21,289.289 INFO    ] No camera update needed
[2026-08-31 02:49:21,291.291 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:49:21,293.293 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:49:21,298.298 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:49:21,303.303 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:49:23,345.345 INFO    ] ================================================
[2026-08-31 02:49:23,361.361 INFO    ] Launching Daemon at Mon Aug 31 02:49:23 IST 2026
[2026-08-31 02:49:23,372.372 INFO    ] ================================================
[2026-08-31 02:49:23,937.937 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:49:23
[2026-08-31 02:49:24,522.522 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:49:24,768.768 INFO    ] Initializing speech engine...
[2026-08-31 02:49:24,776.776 INFO    ] 2026-08-31 02:49:24
[2026-08-31 02:49:25,052.052 INFO    ] 2026-08-31 02:49:25
[2026-08-31 02:49:25,087.087 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:49:25,288.288 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:49:25,347.347 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:49:25,587.587 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:49:25,619.619 INFO    ] time= 31/08/2026 02:49:25
[2026-08-31 02:49:25,625.625 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:49:25,646.646 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:49:25,771.771 INFO    ] No existing commands found in stream
[2026-08-31 02:49:30,788.788 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:49:30,791.791 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-08-31 02:49:31,992.992 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 02:49:31,995.995 INFO    ] Checking for system updates...
[2026-08-31 02:49:32,034.034 INFO    ] 200
[2026-08-31 02:49:32,038.038 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:49:32,097.097 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:49:32,101.101 INFO    ] No update needed
[2026-08-31 02:49:32,104.104 INFO    ] Checking for camera pi updates...
[2026-08-31 02:49:32,141.141 INFO    ] 200
[2026-08-31 02:49:32,144.144 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:49:32,189.189 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:49:32,250.250 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:49:32,253.253 INFO    ] No camera update needed
[2026-08-31 02:49:32,256.256 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:49:32,259.259 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:49:32,266.266 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:49:32,273.273 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:49:34,316.316 INFO    ] ================================================
[2026-08-31 02:49:34,331.331 INFO    ] Launching Daemon at Mon Aug 31 02:49:34 IST 2026
[2026-08-31 02:49:34,341.341 INFO    ] ================================================
[2026-08-31 02:49:34,907.907 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:49:34
[2026-08-31 02:49:35,490.490 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:49:35,747.747 INFO    ] Initializing speech engine...
[2026-08-31 02:49:35,763.763 INFO    ] 2026-08-31 02:49:35
[2026-08-31 02:49:36,059.059 INFO    ] 2026-08-31 02:49:36
[2026-08-31 02:49:36,097.097 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:49:36,332.332 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:49:36,387.387 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:49:36,559.559 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:49:36,591.591 INFO    ] time= 31/08/2026 02:49:36
[2026-08-31 02:49:36,635.635 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:49:36,684.684 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:49:36,847.847 INFO    ] No existing commands found in stream
[2026-08-31 02:49:41,865.865 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:49:41,868.868 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-08-31 02:49:43,057.057 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 02:49:43,060.060 INFO    ] Checking for system updates...
[2026-08-31 02:49:43,099.099 INFO    ] 200
[2026-08-31 02:49:43,101.101 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:49:43,160.160 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:49:43,163.163 INFO    ] No update needed
[2026-08-31 02:49:43,165.165 INFO    ] Checking for camera pi updates...
[2026-08-31 02:49:43,202.202 INFO    ] 200
[2026-08-31 02:49:43,204.204 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:49:43,245.245 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:49:43,338.338 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:49:43,340.340 INFO    ] No camera update needed
[2026-08-31 02:49:43,343.343 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:49:43,345.345 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:49:43,350.350 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:49:43,355.355 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:49:45,397.397 INFO    ] ================================================
[2026-08-31 02:49:45,412.412 INFO    ] Launching Daemon at Mon Aug 31 02:49:45 IST 2026
[2026-08-31 02:49:45,423.423 INFO    ] ================================================
[2026-08-31 02:49:45,992.992 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:49:45
[2026-08-31 02:49:46,578.578 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:49:46,824.824 INFO    ] Initializing speech engine...
[2026-08-31 02:49:46,845.845 INFO    ] 2026-08-31 02:49:46
[2026-08-31 02:49:47,128.128 INFO    ] 2026-08-31 02:49:47
[2026-08-31 02:49:47,168.168 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:49:47,444.444 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:49:47,450.450 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:49:47,715.715 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:49:47,736.736 INFO    ] time= 31/08/2026 02:49:47
[2026-08-31 02:49:47,752.752 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:49:47,762.762 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:49:47,901.901 INFO    ] No existing commands found in stream
[2026-08-31 02:49:52,918.918 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:49:52,921.921 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-08-31 02:49:56,991.991 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 02:49:56,994.994 INFO    ] Checking for system updates...
[2026-08-31 02:49:57,034.034 INFO    ] 200
[2026-08-31 02:49:57,036.036 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:49:57,097.097 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:49:57,100.100 INFO    ] No update needed
[2026-08-31 02:49:57,103.103 INFO    ] Checking for camera pi updates...
[2026-08-31 02:49:57,138.138 INFO    ] 200
[2026-08-31 02:49:57,141.141 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:49:57,187.187 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:49:57,275.275 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:49:57,278.278 INFO    ] No camera update needed
[2026-08-31 02:49:57,281.281 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:49:57,283.283 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:49:57,289.289 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:49:57,295.295 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:49:59,339.339 INFO    ] ================================================
[2026-08-31 02:49:59,354.354 INFO    ] Launching Daemon at Mon Aug 31 02:49:59 IST 2026
[2026-08-31 02:49:59,364.364 INFO    ] ================================================
[2026-08-31 02:49:59,935.935 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:49:59
[2026-08-31 02:50:00,522.522 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:50:00,776.776 INFO    ] Initializing speech engine...
[2026-08-31 02:50:00,792.792 INFO    ] 2026-08-31 02:50:00
[2026-08-31 02:50:01,042.042 INFO    ] 2026-08-31 02:50:01
[2026-08-31 02:50:01,084.084 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:50:01,430.430 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:50:01,434.434 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:50:01,770.770 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:50:01,773.773 INFO    ] time= 31/08/2026 02:50:01
[2026-08-31 02:50:01,776.776 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:50:01,826.826 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:50:01,929.929 INFO    ] No existing commands found in stream
[2026-08-31 02:50:06,940.940 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:50:06,943.943 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-08-31 02:50:08,871.871 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 02:50:08,874.874 INFO    ] Checking for system updates...
[2026-08-31 02:50:08,911.911 INFO    ] 200
[2026-08-31 02:50:08,913.913 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:50:08,967.967 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:50:08,970.970 INFO    ] No update needed
[2026-08-31 02:50:08,973.973 INFO    ] Checking for camera pi updates...
[2026-08-31 02:50:09,008.008 INFO    ] 200
[2026-08-31 02:50:09,011.011 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:50:09,053.053 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:50:09,146.146 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:50:09,149.149 INFO    ] No camera update needed
[2026-08-31 02:50:09,152.152 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:50:09,154.154 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:50:09,161.161 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:50:09,167.167 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:50:11,210.210 INFO    ] ================================================
[2026-08-31 02:50:11,226.226 INFO    ] Launching Daemon at Mon Aug 31 02:50:11 IST 2026
[2026-08-31 02:50:11,236.236 INFO    ] ================================================
[2026-08-31 02:50:11,919.919 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:50:11
[2026-08-31 02:50:12,561.561 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:50:12,807.807 INFO    ] Initializing speech engine...
[2026-08-31 02:50:12,828.828 INFO    ] 2026-08-31 02:50:12
[2026-08-31 02:50:13,085.085 INFO    ] 2026-08-31 02:50:13
[2026-08-31 02:50:13,120.120 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:50:13,378.378 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:50:13,384.384 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:50:13,619.619 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:50:13,640.640 INFO    ] time= 31/08/2026 02:50:13
[2026-08-31 02:50:13,646.646 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:50:13,663.663 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:50:13,796.796 INFO    ] No existing commands found in stream
[2026-08-31 02:50:18,823.823 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:50:18,826.826 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-08-31 02:50:20,376.376 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 02:50:20,379.379 INFO    ] Checking for system updates...
[2026-08-31 02:50:20,414.414 INFO    ] 200
[2026-08-31 02:50:20,417.417 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:50:20,469.469 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:50:20,472.472 INFO    ] No update needed
[2026-08-31 02:50:20,474.474 INFO    ] Checking for camera pi updates...
[2026-08-31 02:50:20,508.508 INFO    ] 200
[2026-08-31 02:50:20,511.511 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:50:20,551.551 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:50:20,731.731 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:50:20,734.734 INFO    ] No camera update needed
[2026-08-31 02:50:20,736.736 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:50:20,738.738 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:50:20,744.744 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:50:20,749.749 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:50:22,792.792 INFO    ] ================================================
[2026-08-31 02:50:22,808.808 INFO    ] Launching Daemon at Mon Aug 31 02:50:22 IST 2026
[2026-08-31 02:50:22,818.818 INFO    ] ================================================
[2026-08-31 02:50:23,388.388 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:50:23
[2026-08-31 02:50:23,972.972 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:50:24,220.220 INFO    ] Initializing speech engine...
[2026-08-31 02:50:24,232.232 INFO    ] 2026-08-31 02:50:24
[2026-08-31 02:50:24,494.494 INFO    ] 2026-08-31 02:50:24
[2026-08-31 02:50:24,529.529 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:50:24,781.781 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:50:24,790.790 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:50:25,029.029 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:50:25,051.051 INFO    ] time= 31/08/2026 02:50:25
[2026-08-31 02:50:25,066.066 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:50:25,074.074 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:50:25,204.204 INFO    ] No existing commands found in stream
[2026-08-31 02:50:30,219.219 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:50:30,222.222 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-08-31 02:50:30,770.770 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 02:50:30,772.772 INFO    ] Checking for system updates...
[2026-08-31 02:50:30,808.808 INFO    ] 200
[2026-08-31 02:50:30,810.810 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:50:30,863.863 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:50:30,866.866 INFO    ] No update needed
[2026-08-31 02:50:30,868.868 INFO    ] Checking for camera pi updates...
[2026-08-31 02:50:30,901.901 INFO    ] 200
[2026-08-31 02:50:30,904.904 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:50:30,952.952 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:50:31,053.053 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:50:31,056.056 INFO    ] No camera update needed
[2026-08-31 02:50:31,058.058 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:50:31,060.060 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:50:31,066.066 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:50:31,071.071 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:50:33,115.115 INFO    ] ================================================
[2026-08-31 02:50:33,130.130 INFO    ] Launching Daemon at Mon Aug 31 02:50:33 IST 2026
[2026-08-31 02:50:33,141.141 INFO    ] ================================================
[2026-08-31 02:50:33,707.707 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:50:33
[2026-08-31 02:50:34,290.290 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:50:34,538.538 INFO    ] Initializing speech engine...
[2026-08-31 02:50:34,561.561 INFO    ] 2026-08-31 02:50:34
[2026-08-31 02:50:34,814.814 INFO    ] 2026-08-31 02:50:34
[2026-08-31 02:50:34,849.849 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:50:35,104.104 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:50:35,108.108 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:50:35,346.346 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:50:35,368.368 INFO    ] time= 31/08/2026 02:50:35
[2026-08-31 02:50:35,383.383 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:50:35,392.392 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:50:35,520.520 INFO    ] No existing commands found in stream
[2026-08-31 02:50:40,545.545 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:50:40,548.548 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-08-31 02:50:41,859.859 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 02:50:41,861.861 INFO    ] Checking for system updates...
[2026-08-31 02:50:41,896.896 INFO    ] 200
[2026-08-31 02:50:41,899.899 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:50:41,952.952 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:50:41,955.955 INFO    ] No update needed
[2026-08-31 02:50:41,957.957 INFO    ] Checking for camera pi updates...
[2026-08-31 02:50:41,998.998 INFO    ] 200
[2026-08-31 02:50:42,001.001 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:50:42,049.049 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:50:42,130.130 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:50:42,133.133 INFO    ] No camera update needed
[2026-08-31 02:50:42,136.136 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:50:42,139.139 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:50:42,145.145 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:50:42,151.151 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:50:44,199.199 INFO    ] ================================================
[2026-08-31 02:50:44,214.214 INFO    ] Launching Daemon at Mon Aug 31 02:50:44 IST 2026
[2026-08-31 02:50:44,226.226 INFO    ] ================================================
[2026-08-31 02:50:44,796.796 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:50:44
[2026-08-31 02:50:45,383.383 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:50:45,654.654 INFO    ] Initializing speech engine...
[2026-08-31 02:50:45,663.663 INFO    ] 2026-08-31 02:50:45
[2026-08-31 02:50:45,909.909 INFO    ] 2026-08-31 02:50:45
[2026-08-31 02:50:45,973.973 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:50:46,196.196 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:50:46,205.205 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:50:46,420.420 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:50:46,464.464 INFO    ] time= 31/08/2026 02:50:46
[2026-08-31 02:50:46,470.470 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:50:46,487.487 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:50:46,617.617 INFO    ] No existing commands found in stream
[2026-08-31 02:50:51,631.631 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:50:51,633.633 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-08-31 02:50:52,871.871 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 02:50:52,874.874 INFO    ] Checking for system updates...
[2026-08-31 02:50:52,913.913 INFO    ] 200
[2026-08-31 02:50:52,916.916 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:50:52,969.969 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:50:52,972.972 INFO    ] No update needed
[2026-08-31 02:50:52,974.974 INFO    ] Checking for camera pi updates...
[2026-08-31 02:50:53,007.007 INFO    ] 200
[2026-08-31 02:50:53,010.010 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:50:53,056.056 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:50:53,137.137 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:50:53,140.140 INFO    ] No camera update needed
[2026-08-31 02:50:53,142.142 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:50:53,144.144 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:50:53,149.149 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:50:53,154.154 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:50:55,197.197 INFO    ] ================================================
[2026-08-31 02:50:55,213.213 INFO    ] Launching Daemon at Mon Aug 31 02:50:55 IST 2026
[2026-08-31 02:50:55,225.225 INFO    ] ================================================
[2026-08-31 02:50:55,812.812 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:50:55
[2026-08-31 02:50:56,424.424 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:50:56,693.693 INFO    ] Initializing speech engine...
[2026-08-31 02:50:56,702.702 INFO    ] 2026-08-31 02:50:56
[2026-08-31 02:50:56,947.947 INFO    ] 2026-08-31 02:50:56
[2026-08-31 02:50:56,982.982 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:50:57,232.232 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:50:57,242.242 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:50:57,464.464 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:50:57,498.498 INFO    ] time= 31/08/2026 02:50:57
[2026-08-31 02:50:57,504.504 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:50:57,521.521 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:50:57,653.653 INFO    ] No existing commands found in stream
[2026-08-31 02:51:02,671.671 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:51:02,674.674 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-08-31 02:51:04,072.072 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 02:51:04,074.074 INFO    ] Checking for system updates...
[2026-08-31 02:51:04,114.114 INFO    ] 200
[2026-08-31 02:51:04,117.117 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:51:04,171.171 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:51:04,173.173 INFO    ] No update needed
[2026-08-31 02:51:04,176.176 INFO    ] Checking for camera pi updates...
[2026-08-31 02:51:04,209.209 INFO    ] 200
[2026-08-31 02:51:04,212.212 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:51:04,253.253 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:51:04,355.355 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:51:04,358.358 INFO    ] No camera update needed
[2026-08-31 02:51:04,360.360 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:51:04,363.363 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:51:04,368.368 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:51:04,373.373 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:51:06,414.414 INFO    ] ================================================
[2026-08-31 02:51:06,439.439 INFO    ] Launching Daemon at Mon Aug 31 02:51:06 IST 2026
[2026-08-31 02:51:06,449.449 INFO    ] ================================================
[2026-08-31 02:51:07,071.071 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:51:07
[2026-08-31 02:51:07,745.745 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:51:07,997.997 INFO    ] Initializing speech engine...
[2026-08-31 02:51:08,019.019 INFO    ] 2026-08-31 02:51:07
[2026-08-31 02:51:08,274.274 INFO    ] 2026-08-31 02:51:08
[2026-08-31 02:51:08,309.309 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:51:08,567.567 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:51:08,572.572 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:51:08,802.802 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:51:08,831.831 INFO    ] time= 31/08/2026 02:51:08
[2026-08-31 02:51:08,846.846 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:51:08,855.855 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:51:08,981.981 INFO    ] No existing commands found in stream
[2026-08-31 02:51:13,994.994 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:51:13,997.997 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-08-31 02:51:16,052.052 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 02:51:16,055.055 INFO    ] Checking for system updates...
[2026-08-31 02:51:16,092.092 INFO    ] 200
[2026-08-31 02:51:16,094.094 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:51:16,147.147 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:51:16,150.150 INFO    ] No update needed
[2026-08-31 02:51:16,152.152 INFO    ] Checking for camera pi updates...
[2026-08-31 02:51:16,190.190 INFO    ] 200
[2026-08-31 02:51:16,192.192 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:51:16,239.239 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:51:16,323.323 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:51:16,326.326 INFO    ] No camera update needed
[2026-08-31 02:51:16,329.329 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:51:16,331.331 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:51:16,338.338 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:51:16,344.344 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:51:18,385.385 INFO    ] ================================================
[2026-08-31 02:51:18,400.400 INFO    ] Launching Daemon at Mon Aug 31 02:51:18 IST 2026
[2026-08-31 02:51:18,411.411 INFO    ] ================================================
[2026-08-31 02:51:19,003.003 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:51:18
[2026-08-31 02:51:19,612.612 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:51:19,885.885 INFO    ] Initializing speech engine...
[2026-08-31 02:51:19,894.894 INFO    ] 2026-08-31 02:51:19
[2026-08-31 02:51:20,147.147 INFO    ] 2026-08-31 02:51:20
[2026-08-31 02:51:20,214.214 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:51:20,448.448 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:51:20,455.455 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:51:20,698.698 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:51:20,753.753 INFO    ] time= 31/08/2026 02:51:20
[2026-08-31 02:51:20,762.762 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:51:20,782.782 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:51:20,919.919 INFO    ] No existing commands found in stream
[2026-08-31 02:51:25,946.946 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:51:25,949.949 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-08-31 02:51:26,496.496 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 02:51:26,499.499 INFO    ] Checking for system updates...
[2026-08-31 02:51:26,553.553 INFO    ] 200
[2026-08-31 02:51:26,555.555 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:51:26,615.615 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:51:26,617.617 INFO    ] No update needed
[2026-08-31 02:51:26,620.620 INFO    ] Checking for camera pi updates...
[2026-08-31 02:51:26,653.653 INFO    ] 200
[2026-08-31 02:51:26,656.656 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:51:26,701.701 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:51:26,780.780 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:51:26,783.783 INFO    ] No camera update needed
[2026-08-31 02:51:26,785.785 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:51:26,787.787 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:51:26,793.793 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:51:26,798.798 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:51:28,841.841 INFO    ] ================================================
[2026-08-31 02:51:28,856.856 INFO    ] Launching Daemon at Mon Aug 31 02:51:28 IST 2026
[2026-08-31 02:51:28,866.866 INFO    ] ================================================
[2026-08-31 02:51:29,438.438 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:51:29
[2026-08-31 02:51:30,024.024 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:51:30,280.280 INFO    ] Initializing speech engine...
[2026-08-31 02:51:30,285.285 INFO    ] 2026-08-31 02:51:30
[2026-08-31 02:51:30,587.587 INFO    ] 2026-08-31 02:51:30
[2026-08-31 02:51:30,612.612 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:51:30,852.852 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:51:30,890.890 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:51:31,092.092 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:51:31,100.100 INFO    ] time= 31/08/2026 02:51:31
[2026-08-31 02:51:31,175.175 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:51:31,226.226 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:51:31,360.360 INFO    ] No existing commands found in stream
[2026-08-31 02:51:36,382.382 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:51:36,384.384 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-08-31 02:51:37,553.553 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 02:51:37,556.556 INFO    ] Checking for system updates...
[2026-08-31 02:51:37,593.593 INFO    ] 200
[2026-08-31 02:51:37,596.596 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:51:37,650.650 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:51:37,653.653 INFO    ] No update needed
[2026-08-31 02:51:37,655.655 INFO    ] Checking for camera pi updates...
[2026-08-31 02:51:37,690.690 INFO    ] 200
[2026-08-31 02:51:37,694.694 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:51:37,736.736 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:51:37,825.825 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:51:37,828.828 INFO    ] No camera update needed
[2026-08-31 02:51:37,831.831 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:51:37,834.834 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:51:37,840.840 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:51:37,846.846 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:51:39,891.891 INFO    ] ================================================
[2026-08-31 02:51:39,906.906 INFO    ] Launching Daemon at Mon Aug 31 02:51:39 IST 2026
[2026-08-31 02:51:39,917.917 INFO    ] ================================================
[2026-08-31 02:51:40,497.497 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:51:40
[2026-08-31 02:51:41,104.104 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:51:41,378.378 INFO    ] Initializing speech engine...
[2026-08-31 02:51:41,388.388 INFO    ] 2026-08-31 02:51:41
[2026-08-31 02:51:41,643.643 INFO    ] 2026-08-31 02:51:41
[2026-08-31 02:51:41,679.679 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:51:41,937.937 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:51:41,942.942 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:51:42,180.180 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:51:42,201.201 INFO    ] time= 31/08/2026 02:51:42
[2026-08-31 02:51:42,207.207 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:51:42,226.226 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:51:42,358.358 INFO    ] No existing commands found in stream
[2026-08-31 02:51:47,380.380 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:51:47,383.383 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-08-31 02:51:50,689.689 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 02:51:50,691.691 INFO    ] Checking for system updates...
[2026-08-31 02:51:50,727.727 INFO    ] 200
[2026-08-31 02:51:50,729.729 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:51:50,789.789 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:51:50,792.792 INFO    ] No update needed
[2026-08-31 02:51:50,794.794 INFO    ] Checking for camera pi updates...
[2026-08-31 02:51:50,828.828 INFO    ] 200
[2026-08-31 02:51:50,830.830 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:51:50,871.871 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:51:50,950.950 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:51:50,952.952 INFO    ] No camera update needed
[2026-08-31 02:51:50,955.955 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:51:50,957.957 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:51:50,963.963 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:51:50,968.968 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:51:53,009.009 INFO    ] ================================================
[2026-08-31 02:51:53,025.025 INFO    ] Launching Daemon at Mon Aug 31 02:51:53 IST 2026
[2026-08-31 02:51:53,036.036 INFO    ] ================================================
[2026-08-31 02:51:53,603.603 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:51:53
[2026-08-31 02:51:54,187.187 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:51:54,448.448 INFO    ] Initializing speech engine...
[2026-08-31 02:51:54,467.467 INFO    ] 2026-08-31 02:51:54
[2026-08-31 02:51:54,718.718 INFO    ] 2026-08-31 02:51:54
[2026-08-31 02:51:54,753.753 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:51:55,015.015 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:51:55,021.021 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:51:55,251.251 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:51:55,285.285 INFO    ] time= 31/08/2026 02:51:55
[2026-08-31 02:51:55,300.300 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:51:55,308.308 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:51:55,439.439 INFO    ] No existing commands found in stream
[2026-08-31 02:52:00,451.451 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:52:00,454.454 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-08-31 02:52:01,538.538 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 02:52:01,541.541 INFO    ] Checking for system updates...
[2026-08-31 02:52:01,580.580 INFO    ] 200
[2026-08-31 02:52:01,583.583 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:52:01,644.644 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:52:01,646.646 INFO    ] No update needed
[2026-08-31 02:52:01,649.649 INFO    ] Checking for camera pi updates...
[2026-08-31 02:52:01,692.692 INFO    ] 200
[2026-08-31 02:52:01,695.695 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:52:01,743.743 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:52:01,794.794 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:52:01,797.797 INFO    ] No camera update needed
[2026-08-31 02:52:01,799.799 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:52:01,801.801 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:52:01,807.807 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:52:01,812.812 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:52:03,854.854 INFO    ] ================================================
[2026-08-31 02:52:03,869.869 INFO    ] Launching Daemon at Mon Aug 31 02:52:03 IST 2026
[2026-08-31 02:52:03,880.880 INFO    ] ================================================
[2026-08-31 02:52:04,453.453 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:52:04
[2026-08-31 02:52:05,043.043 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:52:05,288.288 INFO    ] Initializing speech engine...
[2026-08-31 02:52:05,303.303 INFO    ] 2026-08-31 02:52:05
[2026-08-31 02:52:05,567.567 INFO    ] 2026-08-31 02:52:05
[2026-08-31 02:52:05,603.603 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:52:05,860.860 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:52:05,864.864 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:52:06,081.081 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:52:06,122.122 INFO    ] time= 31/08/2026 02:52:06
[2026-08-31 02:52:06,128.128 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:52:06,146.146 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:52:06,289.289 INFO    ] No existing commands found in stream
[2026-08-31 02:52:11,316.316 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:52:11,319.319 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-08-31 02:52:12,538.538 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 02:52:12,541.541 INFO    ] Checking for system updates...
[2026-08-31 02:52:12,577.577 INFO    ] 200
[2026-08-31 02:52:12,580.580 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:52:12,632.632 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:52:12,634.634 INFO    ] No update needed
[2026-08-31 02:52:12,636.636 INFO    ] Checking for camera pi updates...
[2026-08-31 02:52:12,670.670 INFO    ] 200
[2026-08-31 02:52:12,673.673 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:52:12,717.717 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:52:12,796.796 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:52:12,799.799 INFO    ] No camera update needed
[2026-08-31 02:52:12,801.801 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:52:12,804.804 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:52:12,809.809 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:52:12,814.814 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:52:14,855.855 INFO    ] ================================================
[2026-08-31 02:52:14,871.871 INFO    ] Launching Daemon at Mon Aug 31 02:52:14 IST 2026
[2026-08-31 02:52:14,881.881 INFO    ] ================================================
[2026-08-31 02:52:15,527.527 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:52:15
[2026-08-31 02:52:16,148.148 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:52:16,397.397 INFO    ] Initializing speech engine...
[2026-08-31 02:52:16,403.403 INFO    ] 2026-08-31 02:52:16
[2026-08-31 02:52:16,702.702 INFO    ] 2026-08-31 02:52:16
[2026-08-31 02:52:16,741.741 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:52:16,987.987 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:52:16,990.990 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:52:17,165.165 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:52:17,226.226 INFO    ] time= 31/08/2026 02:52:17
[2026-08-31 02:52:17,290.290 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:52:17,297.297 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:52:17,439.439 INFO    ] No existing commands found in stream
[2026-08-31 02:52:22,454.454 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:52:22,456.456 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-08-31 02:52:26,058.058 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 02:52:26,061.061 INFO    ] Checking for system updates...
[2026-08-31 02:52:26,100.100 INFO    ] 200
[2026-08-31 02:52:26,102.102 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:52:26,154.154 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:52:26,156.156 INFO    ] No update needed
[2026-08-31 02:52:26,159.159 INFO    ] Checking for camera pi updates...
[2026-08-31 02:52:26,193.193 INFO    ] 200
[2026-08-31 02:52:26,195.195 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:52:26,240.240 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:52:26,417.417 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:52:26,419.419 INFO    ] No camera update needed
[2026-08-31 02:52:26,422.422 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:52:26,424.424 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:52:26,429.429 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:52:26,434.434 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:52:28,473.473 INFO    ] ================================================
[2026-08-31 02:52:28,489.489 INFO    ] Launching Daemon at Mon Aug 31 02:52:28 IST 2026
[2026-08-31 02:52:28,500.500 INFO    ] ================================================
[2026-08-31 02:52:29,066.066 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:52:29
[2026-08-31 02:52:29,650.650 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:52:29,919.919 INFO    ] Initializing speech engine...
[2026-08-31 02:52:29,929.929 INFO    ] 2026-08-31 02:52:29
[2026-08-31 02:52:30,188.188 INFO    ] 2026-08-31 02:52:30
[2026-08-31 02:52:30,242.242 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:52:30,472.472 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:52:30,492.492 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:52:30,729.729 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:52:30,735.735 INFO    ] time= 31/08/2026 02:52:30
[2026-08-31 02:52:30,756.756 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:52:30,782.782 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:52:30,902.902 INFO    ] No existing commands found in stream
[2026-08-31 02:52:35,933.933 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:52:35,935.935 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-08-31 02:52:36,833.833 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 02:52:36,835.835 INFO    ] Checking for system updates...
[2026-08-31 02:52:36,875.875 INFO    ] 200
[2026-08-31 02:52:36,878.878 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:52:36,946.946 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:52:36,949.949 INFO    ] No update needed
[2026-08-31 02:52:36,951.951 INFO    ] Checking for camera pi updates...
[2026-08-31 02:52:36,988.988 INFO    ] 200
[2026-08-31 02:52:36,991.991 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:52:37,040.040 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:52:37,120.120 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:52:37,123.123 INFO    ] No camera update needed
[2026-08-31 02:52:37,125.125 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:52:37,128.128 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:52:37,134.134 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:52:37,140.140 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:52:39,183.183 INFO    ] ================================================
[2026-08-31 02:52:39,198.198 INFO    ] Launching Daemon at Mon Aug 31 02:52:39 IST 2026
[2026-08-31 02:52:39,208.208 INFO    ] ================================================
[2026-08-31 02:52:39,774.774 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:52:39
[2026-08-31 02:52:40,359.359 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:52:40,610.610 INFO    ] Initializing speech engine...
[2026-08-31 02:52:40,619.619 INFO    ] 2026-08-31 02:52:40
[2026-08-31 02:52:40,910.910 INFO    ] 2026-08-31 02:52:40
[2026-08-31 02:52:40,945.945 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:52:41,234.234 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:52:41,243.243 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:52:41,396.396 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:52:41,446.446 INFO    ] time= 31/08/2026 02:52:41
[2026-08-31 02:52:41,500.500 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:52:41,550.550 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:52:41,683.683 INFO    ] No existing commands found in stream
[2026-08-31 02:52:46,701.701 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:52:46,703.703 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-08-31 02:52:48,930.930 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 02:52:48,933.933 INFO    ] Checking for system updates...
[2026-08-31 02:52:48,969.969 INFO    ] 200
[2026-08-31 02:52:48,971.971 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:52:49,027.027 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:52:49,030.030 INFO    ] No update needed
[2026-08-31 02:52:49,032.032 INFO    ] Checking for camera pi updates...
[2026-08-31 02:52:49,065.065 INFO    ] 200
[2026-08-31 02:52:49,068.068 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:52:49,109.109 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:52:49,162.162 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:52:49,165.165 INFO    ] No camera update needed
[2026-08-31 02:52:49,167.167 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:52:49,170.170 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:52:49,175.175 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:52:49,180.180 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:52:51,221.221 INFO    ] ================================================
[2026-08-31 02:52:51,236.236 INFO    ] Launching Daemon at Mon Aug 31 02:52:51 IST 2026
[2026-08-31 02:52:51,246.246 INFO    ] ================================================
[2026-08-31 02:52:51,885.885 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:52:51
[2026-08-31 02:52:52,534.534 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:52:52,833.833 INFO    ] Initializing speech engine...
[2026-08-31 02:52:52,840.840 INFO    ] 2026-08-31 02:52:52
[2026-08-31 02:52:53,113.113 INFO    ] 2026-08-31 02:52:53
[2026-08-31 02:52:53,169.169 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:52:53,454.454 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:52:53,459.459 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:52:53,658.658 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:52:53,681.681 INFO    ] time= 31/08/2026 02:52:53
[2026-08-31 02:52:53,709.709 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:52:53,719.719 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:52:53,862.862 INFO    ] No existing commands found in stream
[2026-08-31 02:52:58,893.893 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:52:58,896.896 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-08-31 02:53:02,779.779 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 02:53:02,782.782 INFO    ] Checking for system updates...
[2026-08-31 02:53:02,823.823 INFO    ] 200
[2026-08-31 02:53:02,826.826 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:53:02,888.888 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:53:02,891.891 INFO    ] No update needed
[2026-08-31 02:53:02,894.894 INFO    ] Checking for camera pi updates...
[2026-08-31 02:53:02,936.936 INFO    ] 200
[2026-08-31 02:53:02,939.939 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:53:02,985.985 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:53:03,041.041 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:53:03,043.043 INFO    ] No camera update needed
[2026-08-31 02:53:03,046.046 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:53:03,049.049 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:53:03,057.057 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:53:03,064.064 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:53:05,106.106 INFO    ] ================================================
[2026-08-31 02:53:05,125.125 INFO    ] Launching Daemon at Mon Aug 31 02:53:05 IST 2026
[2026-08-31 02:53:05,136.136 INFO    ] ================================================
[2026-08-31 02:53:05,784.784 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:53:05
[2026-08-31 02:53:06,442.442 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:53:06,752.752 INFO    ] Initializing speech engine...
[2026-08-31 02:53:06,764.764 INFO    ] 2026-08-31 02:53:06
[2026-08-31 02:53:07,066.066 INFO    ] 2026-08-31 02:53:07
[2026-08-31 02:53:07,111.111 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:53:07,404.404 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:53:07,411.411 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:53:07,610.610 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:53:07,632.632 INFO    ] time= 31/08/2026 02:53:07
[2026-08-31 02:53:07,658.658 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:53:07,668.668 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:53:07,795.795 INFO    ] No existing commands found in stream
[2026-08-31 02:53:12,821.821 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:53:12,824.824 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-08-31 02:53:14,193.193 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 02:53:14,196.196 INFO    ] Checking for system updates...
[2026-08-31 02:53:14,232.232 INFO    ] 200
[2026-08-31 02:53:14,235.235 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:53:14,294.294 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:53:14,297.297 INFO    ] No update needed
[2026-08-31 02:53:14,300.300 INFO    ] Checking for camera pi updates...
[2026-08-31 02:53:14,338.338 INFO    ] 200
[2026-08-31 02:53:14,341.341 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:53:14,382.382 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:53:14,482.482 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:53:14,485.485 INFO    ] No camera update needed
[2026-08-31 02:53:14,488.488 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:53:14,491.491 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:53:14,497.497 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:53:14,503.503 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:53:16,543.543 INFO    ] ================================================
[2026-08-31 02:53:16,559.559 INFO    ] Launching Daemon at Mon Aug 31 02:53:16 IST 2026
[2026-08-31 02:53:16,570.570 INFO    ] ================================================
[2026-08-31 02:53:17,220.220 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:53:17
[2026-08-31 02:53:17,810.810 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:53:18,088.088 INFO    ] Initializing speech engine...
[2026-08-31 02:53:18,097.097 INFO    ] 2026-08-31 02:53:18
[2026-08-31 02:53:18,371.371 INFO    ] 2026-08-31 02:53:18
[2026-08-31 02:53:18,413.413 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:53:18,753.753 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:53:18,764.764 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:53:18,943.943 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:53:18,951.951 INFO    ] time= 31/08/2026 02:53:18
[2026-08-31 02:53:18,958.958 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:53:18,987.987 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:53:19,131.131 INFO    ] No existing commands found in stream
[2026-08-31 02:53:24,162.162 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:53:24,165.165 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-08-31 02:53:26,591.591 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 02:53:26,593.593 INFO    ] Checking for system updates...
[2026-08-31 02:53:26,630.630 INFO    ] 200
[2026-08-31 02:53:26,632.632 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:53:26,691.691 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:53:26,694.694 INFO    ] No update needed
[2026-08-31 02:53:26,697.697 INFO    ] Checking for camera pi updates...
[2026-08-31 02:53:26,736.736 INFO    ] 200
[2026-08-31 02:53:26,739.739 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:53:26,796.796 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:53:26,881.881 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:53:26,884.884 INFO    ] No camera update needed
[2026-08-31 02:53:26,886.886 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:53:26,890.890 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:53:26,895.895 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:53:26,901.901 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:53:28,943.943 INFO    ] ================================================
[2026-08-31 02:53:28,959.959 INFO    ] Launching Daemon at Mon Aug 31 02:53:28 IST 2026
[2026-08-31 02:53:28,970.970 INFO    ] ================================================
[2026-08-31 02:53:29,541.541 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:53:29
[2026-08-31 02:53:30,130.130 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:53:30,384.384 INFO    ] Initializing speech engine...
[2026-08-31 02:53:30,393.393 INFO    ] 2026-08-31 02:53:30
[2026-08-31 02:53:30,684.684 INFO    ] 2026-08-31 02:53:30
[2026-08-31 02:53:30,722.722 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:53:30,982.982 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:53:30,992.992 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:53:31,207.207 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:53:31,251.251 INFO    ] time= 31/08/2026 02:53:31
[2026-08-31 02:53:31,257.257 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:53:31,276.276 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:53:31,415.415 INFO    ] No existing commands found in stream
[2026-08-31 02:53:36,442.442 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:53:36,444.444 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-08-31 02:53:39,232.232 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 02:53:39,234.234 INFO    ] Checking for system updates...
[2026-08-31 02:53:39,270.270 INFO    ] 200
[2026-08-31 02:53:39,272.272 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:53:39,325.325 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:53:39,327.327 INFO    ] No update needed
[2026-08-31 02:53:39,330.330 INFO    ] Checking for camera pi updates...
[2026-08-31 02:53:39,363.363 INFO    ] 200
[2026-08-31 02:53:39,366.366 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:53:39,406.406 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:53:39,526.526 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:53:39,529.529 INFO    ] No camera update needed
[2026-08-31 02:53:39,531.531 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:53:39,533.533 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:53:39,539.539 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:53:39,544.544 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:53:41,584.584 INFO    ] ================================================
[2026-08-31 02:53:41,600.600 INFO    ] Launching Daemon at Mon Aug 31 02:53:41 IST 2026
[2026-08-31 02:53:41,615.615 INFO    ] ================================================
[2026-08-31 02:53:42,233.233 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:53:42
[2026-08-31 02:53:42,871.871 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:53:43,116.116 INFO    ] Initializing speech engine...
[2026-08-31 02:53:43,131.131 INFO    ] 2026-08-31 02:53:43
[2026-08-31 02:53:43,402.402 INFO    ] 2026-08-31 02:53:43
[2026-08-31 02:53:43,445.445 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:53:43,695.695 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:53:43,705.705 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:53:43,934.934 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:53:43,968.968 INFO    ] time= 31/08/2026 02:53:43
[2026-08-31 02:53:43,986.986 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:53:43,995.995 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:53:44,126.126 INFO    ] No existing commands found in stream
[2026-08-31 02:53:49,142.142 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:53:49,145.145 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-08-31 02:53:49,741.741 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 02:53:49,744.744 INFO    ] Checking for system updates...
[2026-08-31 02:53:49,780.780 INFO    ] 200
[2026-08-31 02:53:49,782.782 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:53:49,836.836 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:53:49,839.839 INFO    ] No update needed
[2026-08-31 02:53:49,842.842 INFO    ] Checking for camera pi updates...
[2026-08-31 02:53:49,876.876 INFO    ] 200
[2026-08-31 02:53:49,879.879 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:53:49,923.923 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:53:49,991.991 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:53:49,994.994 INFO    ] No camera update needed
[2026-08-31 02:53:49,996.996 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:53:49,999.999 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:53:50,004.004 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:53:50,009.009 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:53:52,049.049 INFO    ] ================================================
[2026-08-31 02:53:52,064.064 INFO    ] Launching Daemon at Mon Aug 31 02:53:52 IST 2026
[2026-08-31 02:53:52,075.075 INFO    ] ================================================
[2026-08-31 02:53:52,646.646 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:53:52
[2026-08-31 02:53:53,235.235 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:53:53,491.491 INFO    ] Initializing speech engine...
[2026-08-31 02:53:53,515.515 INFO    ] 2026-08-31 02:53:53
[2026-08-31 02:53:53,780.780 INFO    ] 2026-08-31 02:53:53
[2026-08-31 02:53:53,817.817 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:53:54,030.030 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:53:54,038.038 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:53:54,248.248 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:53:54,260.260 INFO    ] time= 31/08/2026 02:53:54
[2026-08-31 02:53:54,310.310 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:53:54,349.349 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:53:54,453.453 INFO    ] No existing commands found in stream
[2026-08-31 02:53:59,465.465 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:53:59,468.468 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-08-31 02:54:03,738.738 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 02:54:03,741.741 INFO    ] Checking for system updates...
[2026-08-31 02:54:03,776.776 INFO    ] 200
[2026-08-31 02:54:03,779.779 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:54:03,831.831 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:54:03,833.833 INFO    ] No update needed
[2026-08-31 02:54:03,836.836 INFO    ] Checking for camera pi updates...
[2026-08-31 02:54:03,869.869 INFO    ] 200
[2026-08-31 02:54:03,872.872 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:54:03,917.917 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:54:03,997.997 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:54:03,999.999 INFO    ] No camera update needed
[2026-08-31 02:54:04,002.002 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:54:04,004.004 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:54:04,009.009 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:54:04,015.015 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:54:06,055.055 INFO    ] ================================================
[2026-08-31 02:54:06,070.070 INFO    ] Launching Daemon at Mon Aug 31 02:54:06 IST 2026
[2026-08-31 02:54:06,080.080 INFO    ] ================================================
[2026-08-31 02:54:06,668.668 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:54:06
[2026-08-31 02:54:07,261.261 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:54:07,530.530 INFO    ] Initializing speech engine...
[2026-08-31 02:54:07,540.540 INFO    ] 2026-08-31 02:54:07
[2026-08-31 02:54:07,812.812 INFO    ] 2026-08-31 02:54:07
[2026-08-31 02:54:07,855.855 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:54:08,077.077 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:54:08,083.083 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:54:08,322.322 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:54:08,341.341 INFO    ] time= 31/08/2026 02:54:08
[2026-08-31 02:54:08,356.356 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:54:08,362.362 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:54:08,491.491 INFO    ] No existing commands found in stream
[2026-08-31 02:54:13,503.503 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:54:13,506.506 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-08-31 02:54:14,936.936 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 02:54:14,939.939 INFO    ] Checking for system updates...
[2026-08-31 02:54:14,974.974 INFO    ] 200
[2026-08-31 02:54:14,977.977 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:54:15,036.036 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:54:15,039.039 INFO    ] No update needed
[2026-08-31 02:54:15,042.042 INFO    ] Checking for camera pi updates...
[2026-08-31 02:54:15,078.078 INFO    ] 200
[2026-08-31 02:54:15,081.081 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:54:15,123.123 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:54:15,228.228 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:54:15,230.230 INFO    ] No camera update needed
[2026-08-31 02:54:15,233.233 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:54:15,236.236 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:54:15,242.242 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:54:15,248.248 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:54:17,296.296 INFO    ] ================================================
[2026-08-31 02:54:17,312.312 INFO    ] Launching Daemon at Mon Aug 31 02:54:17 IST 2026
[2026-08-31 02:54:17,324.324 INFO    ] ================================================
[2026-08-31 02:54:17,891.891 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:54:17
[2026-08-31 02:54:18,472.472 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:54:18,739.739 INFO    ] Initializing speech engine...
[2026-08-31 02:54:18,747.747 INFO    ] 2026-08-31 02:54:18
[2026-08-31 02:54:18,994.994 INFO    ] 2026-08-31 02:54:18
[2026-08-31 02:54:19,029.029 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:54:19,284.284 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:54:19,289.289 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:54:19,538.538 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:54:19,545.545 INFO    ] time= 31/08/2026 02:54:19
[2026-08-31 02:54:19,561.561 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:54:19,570.570 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:54:19,698.698 INFO    ] No existing commands found in stream
[2026-08-31 02:54:24,718.718 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:54:24,721.721 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-08-31 02:54:26,493.493 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 02:54:26,496.496 INFO    ] Checking for system updates...
[2026-08-31 02:54:26,532.532 INFO    ] 200
[2026-08-31 02:54:26,535.535 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:54:26,588.588 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:54:26,591.591 INFO    ] No update needed
[2026-08-31 02:54:26,593.593 INFO    ] Checking for camera pi updates...
[2026-08-31 02:54:26,631.631 INFO    ] 200
[2026-08-31 02:54:26,634.634 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:54:26,680.680 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:54:26,770.770 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:54:26,773.773 INFO    ] No camera update needed
[2026-08-31 02:54:26,776.776 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:54:26,778.778 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:54:26,784.784 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:54:26,791.791 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:54:28,832.832 INFO    ] ================================================
[2026-08-31 02:54:28,849.849 INFO    ] Launching Daemon at Mon Aug 31 02:54:28 IST 2026
[2026-08-31 02:54:28,859.859 INFO    ] ================================================
[2026-08-31 02:54:29,426.426 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:54:29
[2026-08-31 02:54:30,011.011 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:54:30,279.279 INFO    ] Initializing speech engine...
[2026-08-31 02:54:30,288.288 INFO    ] 2026-08-31 02:54:30
[2026-08-31 02:54:30,535.535 INFO    ] 2026-08-31 02:54:30
[2026-08-31 02:54:30,571.571 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:54:30,823.823 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:54:30,833.833 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:54:31,055.055 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:54:31,092.092 INFO    ] time= 31/08/2026 02:54:31
[2026-08-31 02:54:31,098.098 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:54:31,118.118 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:54:31,245.245 INFO    ] No existing commands found in stream
[2026-08-31 02:54:36,259.259 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:54:36,262.262 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-08-31 02:54:36,874.874 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 02:54:36,877.877 INFO    ] Checking for system updates...
[2026-08-31 02:54:36,929.929 INFO    ] 200
[2026-08-31 02:54:36,932.932 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-08-31 02:54:36,935.935 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-08-31 02:54:36,938.938 INFO    ] Checking for camera pi updates...
[2026-08-31 02:54:36,974.974 INFO    ] 200
[2026-08-31 02:54:36,977.977 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-08-31 02:54:36,980.980 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-08-31 02:54:36,983.983 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:54:36,985.985 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:54:36,992.992 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:54:36,997.997 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:54:39,039.039 INFO    ] ================================================
[2026-08-31 02:54:39,055.055 INFO    ] Launching Daemon at Mon Aug 31 02:54:39 IST 2026
[2026-08-31 02:54:39,066.066 INFO    ] ================================================
[2026-08-31 02:54:39,632.632 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:54:39
[2026-08-31 02:54:40,216.216 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:54:40,484.484 INFO    ] Initializing speech engine...
[2026-08-31 02:54:40,494.494 INFO    ] 2026-08-31 02:54:40
[2026-08-31 02:54:40,754.754 INFO    ] 2026-08-31 02:54:40
[2026-08-31 02:54:40,808.808 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:54:41,035.035 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:54:41,040.040 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:54:41,270.270 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:54:41,296.296 INFO    ] time= 31/08/2026 02:54:41
[2026-08-31 02:54:41,302.302 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:54:41,320.320 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:54:41,449.449 INFO    ] No existing commands found in stream
[2026-08-31 02:54:46,460.460 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:54:46,462.462 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-08-31 02:54:48,592.592 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 02:54:48,595.595 INFO    ] Checking for system updates...
[2026-08-31 02:54:48,634.634 INFO    ] 200
[2026-08-31 02:54:48,636.636 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:54:48,689.689 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:54:48,691.691 INFO    ] No update needed
[2026-08-31 02:54:48,694.694 INFO    ] Checking for camera pi updates...
[2026-08-31 02:54:48,728.728 INFO    ] 200
[2026-08-31 02:54:48,730.730 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:54:48,770.770 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:54:48,875.875 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:54:48,877.877 INFO    ] No camera update needed
[2026-08-31 02:54:48,880.880 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:54:48,882.882 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:54:48,888.888 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:54:48,893.893 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:54:50,934.934 INFO    ] ================================================
[2026-08-31 02:54:50,950.950 INFO    ] Launching Daemon at Mon Aug 31 02:54:50 IST 2026
[2026-08-31 02:54:50,961.961 INFO    ] ================================================
[2026-08-31 02:54:51,528.528 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:54:51
[2026-08-31 02:54:52,109.109 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:54:52,372.372 INFO    ] Initializing speech engine...
[2026-08-31 02:54:52,387.387 INFO    ] 2026-08-31 02:54:52
[2026-08-31 02:54:52,683.683 INFO    ] 2026-08-31 02:54:52
[2026-08-31 02:54:52,718.718 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:54:52,967.967 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:54:53,018.018 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:54:53,240.240 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:54:53,284.284 INFO    ] time= 31/08/2026 02:54:53
[2026-08-31 02:54:53,327.327 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:54:53,334.334 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:54:53,481.481 INFO    ] No existing commands found in stream
[2026-08-31 02:54:58,514.514 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:54:58,516.516 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-08-31 02:55:00,179.179 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 02:55:00,182.182 INFO    ] Checking for system updates...
[2026-08-31 02:55:00,218.218 INFO    ] 200
[2026-08-31 02:55:00,220.220 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:55:00,272.272 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:55:00,274.274 INFO    ] No update needed
[2026-08-31 02:55:00,276.276 INFO    ] Checking for camera pi updates...
[2026-08-31 02:55:00,310.310 INFO    ] 200
[2026-08-31 02:55:00,312.312 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:55:00,352.352 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:55:00,451.451 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:55:00,453.453 INFO    ] No camera update needed
[2026-08-31 02:55:00,455.455 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:55:00,458.458 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:55:00,463.463 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:55:00,468.468 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:55:02,509.509 INFO    ] ================================================
[2026-08-31 02:55:02,530.530 INFO    ] Launching Daemon at Mon Aug 31 02:55:02 IST 2026
[2026-08-31 02:55:02,545.545 INFO    ] ================================================
[2026-08-31 02:55:03,275.275 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:55:03
[2026-08-31 02:55:04,002.002 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:55:04,295.295 INFO    ] Initializing speech engine...
[2026-08-31 02:55:04,300.300 INFO    ] 2026-08-31 02:55:04
[2026-08-31 02:55:04,560.560 INFO    ] 2026-08-31 02:55:04
[2026-08-31 02:55:04,614.614 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:55:04,859.859 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:55:04,866.866 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:55:05,096.096 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:55:05,103.103 INFO    ] time= 31/08/2026 02:55:05
[2026-08-31 02:55:05,121.121 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:55:05,148.148 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:55:05,280.280 INFO    ] No existing commands found in stream
[2026-08-31 02:55:10,310.310 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:55:10,313.313 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-08-31 02:55:11,258.258 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 02:55:11,261.261 INFO    ] Checking for system updates...
[2026-08-31 02:55:11,296.296 INFO    ] 200
[2026-08-31 02:55:11,299.299 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:55:11,352.352 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:55:11,354.354 INFO    ] No update needed
[2026-08-31 02:55:11,357.357 INFO    ] Checking for camera pi updates...
[2026-08-31 02:55:11,394.394 INFO    ] 200
[2026-08-31 02:55:11,396.396 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:55:11,438.438 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:55:11,521.521 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:55:11,523.523 INFO    ] No camera update needed
[2026-08-31 02:55:11,525.525 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:55:11,528.528 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:55:11,533.533 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:55:11,538.538 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:55:13,579.579 INFO    ] ================================================
[2026-08-31 02:55:13,595.595 INFO    ] Launching Daemon at Mon Aug 31 02:55:13 IST 2026
[2026-08-31 02:55:13,606.606 INFO    ] ================================================
[2026-08-31 02:55:14,248.248 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:55:14
[2026-08-31 02:55:14,827.827 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:55:15,087.087 INFO    ] Initializing speech engine...
[2026-08-31 02:55:15,105.105 INFO    ] 2026-08-31 02:55:15
[2026-08-31 02:55:15,356.356 INFO    ] 2026-08-31 02:55:15
[2026-08-31 02:55:15,391.391 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:55:15,632.632 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:55:15,654.654 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:55:15,905.905 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:55:15,927.927 INFO    ] time= 31/08/2026 02:55:15
[2026-08-31 02:55:15,942.942 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:55:15,951.951 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:55:16,082.082 INFO    ] No existing commands found in stream
[2026-08-31 02:55:21,102.102 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:55:21,105.105 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-08-31 02:55:24,896.896 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 02:55:24,899.899 INFO    ] Checking for system updates...
[2026-08-31 02:55:24,934.934 INFO    ] 200
[2026-08-31 02:55:24,937.937 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:55:24,995.995 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:55:24,997.997 INFO    ] No update needed
[2026-08-31 02:55:25,000.000 INFO    ] Checking for camera pi updates...
[2026-08-31 02:55:25,034.034 INFO    ] 200
[2026-08-31 02:55:25,037.037 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:55:25,087.087 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:55:25,188.188 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:55:25,191.191 INFO    ] No camera update needed
[2026-08-31 02:55:25,194.194 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:55:25,196.196 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:55:25,203.203 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:55:25,208.208 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:55:27,249.249 INFO    ] ================================================
[2026-08-31 02:55:27,264.264 INFO    ] Launching Daemon at Mon Aug 31 02:55:27 IST 2026
[2026-08-31 02:55:27,276.276 INFO    ] ================================================
[2026-08-31 02:55:27,921.921 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:55:27
[2026-08-31 02:55:28,640.640 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:55:28,948.948 INFO    ] Initializing speech engine...
[2026-08-31 02:55:28,954.954 INFO    ] 2026-08-31 02:55:28
[2026-08-31 02:55:29,238.238 INFO    ] 2026-08-31 02:55:29
[2026-08-31 02:55:29,348.348 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:55:29,561.561 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:55:29,570.570 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:55:29,761.761 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:55:29,783.783 INFO    ] time= 31/08/2026 02:55:29
[2026-08-31 02:55:29,811.811 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:55:29,819.819 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:55:29,938.938 INFO    ] No existing commands found in stream
[2026-08-31 02:55:34,969.969 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:55:34,972.972 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-08-31 02:55:35,978.978 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 02:55:35,981.981 INFO    ] Checking for system updates...
[2026-08-31 02:55:36,022.022 INFO    ] 200
[2026-08-31 02:55:36,024.024 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:55:36,087.087 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:55:36,089.089 INFO    ] No update needed
[2026-08-31 02:55:36,092.092 INFO    ] Checking for camera pi updates...
[2026-08-31 02:55:36,132.132 INFO    ] 200
[2026-08-31 02:55:36,134.134 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:55:36,179.179 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:55:36,268.268 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:55:36,270.270 INFO    ] No camera update needed
[2026-08-31 02:55:36,273.273 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:55:36,275.275 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:55:36,280.280 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:55:36,285.285 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:55:38,325.325 INFO    ] ================================================
[2026-08-31 02:55:38,340.340 INFO    ] Launching Daemon at Mon Aug 31 02:55:38 IST 2026
[2026-08-31 02:55:38,351.351 INFO    ] ================================================
[2026-08-31 02:55:38,917.917 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:55:38
[2026-08-31 02:55:39,499.499 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:55:39,758.758 INFO    ] Initializing speech engine...
[2026-08-31 02:55:39,777.777 INFO    ] 2026-08-31 02:55:39
[2026-08-31 02:55:40,043.043 INFO    ] 2026-08-31 02:55:40
[2026-08-31 02:55:40,079.079 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:55:40,313.313 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:55:40,340.340 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:55:40,568.568 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:55:40,612.612 INFO    ] time= 31/08/2026 02:55:40
[2026-08-31 02:55:40,618.618 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:55:40,634.634 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:55:40,766.766 INFO    ] No existing commands found in stream
[2026-08-31 02:55:45,781.781 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:55:45,783.783 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-08-31 02:55:49,736.736 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 02:55:49,739.739 INFO    ] Checking for system updates...
[2026-08-31 02:55:49,775.775 INFO    ] 200
[2026-08-31 02:55:49,778.778 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:55:49,837.837 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:55:49,840.840 INFO    ] No update needed
[2026-08-31 02:55:49,843.843 INFO    ] Checking for camera pi updates...
[2026-08-31 02:55:49,880.880 INFO    ] 200
[2026-08-31 02:55:49,883.883 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:55:49,929.929 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:55:49,995.995 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:55:49,998.998 INFO    ] No camera update needed
[2026-08-31 02:55:50,001.001 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:55:50,004.004 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:55:50,010.010 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:55:50,016.016 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:55:52,057.057 INFO    ] ================================================
[2026-08-31 02:55:52,072.072 INFO    ] Launching Daemon at Mon Aug 31 02:55:52 IST 2026
[2026-08-31 02:55:52,083.083 INFO    ] ================================================
[2026-08-31 02:55:52,743.743 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:55:52
[2026-08-31 02:55:53,328.328 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:55:53,582.582 INFO    ] Initializing speech engine...
[2026-08-31 02:55:53,590.590 INFO    ] 2026-08-31 02:55:53
[2026-08-31 02:55:53,882.882 INFO    ] 2026-08-31 02:55:53
[2026-08-31 02:55:53,916.916 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:55:54,164.164 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:55:54,185.185 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:55:54,407.407 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:55:54,443.443 INFO    ] time= 31/08/2026 02:55:54
[2026-08-31 02:55:54,449.449 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:55:54,467.467 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:55:54,598.598 INFO    ] No existing commands found in stream
[2026-08-31 02:55:59,621.621 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:55:59,623.623 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-08-31 02:56:03,410.410 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 02:56:03,413.413 INFO    ] Checking for system updates...
[2026-08-31 02:56:03,464.464 INFO    ] 200
[2026-08-31 02:56:03,467.467 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:56:03,521.521 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:56:03,523.523 INFO    ] No update needed
[2026-08-31 02:56:03,526.526 INFO    ] Checking for camera pi updates...
[2026-08-31 02:56:03,573.573 INFO    ] 200
[2026-08-31 02:56:03,577.577 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:56:03,623.623 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:56:03,702.702 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:56:03,705.705 INFO    ] No camera update needed
[2026-08-31 02:56:03,707.707 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:56:03,709.709 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:56:03,715.715 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:56:03,720.720 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:56:05,761.761 INFO    ] ================================================
[2026-08-31 02:56:05,777.777 INFO    ] Launching Daemon at Mon Aug 31 02:56:05 IST 2026
[2026-08-31 02:56:05,788.788 INFO    ] ================================================
[2026-08-31 02:56:06,354.354 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:56:06
[2026-08-31 02:56:06,954.954 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:56:07,221.221 INFO    ] Initializing speech engine...
[2026-08-31 02:56:07,230.230 INFO    ] 2026-08-31 02:56:07
[2026-08-31 02:56:07,477.477 INFO    ] 2026-08-31 02:56:07
[2026-08-31 02:56:07,511.511 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:56:07,786.786 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:56:07,792.792 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:56:08,024.024 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:56:08,032.032 INFO    ] time= 31/08/2026 02:56:08
[2026-08-31 02:56:08,050.050 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:56:08,077.077 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:56:08,220.220 INFO    ] No existing commands found in stream
[2026-08-31 02:56:13,250.250 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:56:13,253.253 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-08-31 02:56:16,272.272 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 02:56:16,274.274 INFO    ] Checking for system updates...
[2026-08-31 02:56:16,313.313 INFO    ] 200
[2026-08-31 02:56:16,315.315 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:56:16,373.373 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:56:16,376.376 INFO    ] No update needed
[2026-08-31 02:56:16,378.378 INFO    ] Checking for camera pi updates...
[2026-08-31 02:56:16,413.413 INFO    ] 200
[2026-08-31 02:56:16,415.415 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:56:16,456.456 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:56:16,507.507 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:56:16,509.509 INFO    ] No camera update needed
[2026-08-31 02:56:16,512.512 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:56:16,514.514 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:56:16,519.519 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:56:16,524.524 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:56:18,565.565 INFO    ] ================================================
[2026-08-31 02:56:18,580.580 INFO    ] Launching Daemon at Mon Aug 31 02:56:18 IST 2026
[2026-08-31 02:56:18,591.591 INFO    ] ================================================
[2026-08-31 02:56:19,157.157 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:56:19
[2026-08-31 02:56:19,738.738 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:56:20,005.005 INFO    ] Initializing speech engine...
[2026-08-31 02:56:20,014.014 INFO    ] 2026-08-31 02:56:20
[2026-08-31 02:56:20,267.267 INFO    ] 2026-08-31 02:56:20
[2026-08-31 02:56:20,326.326 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:56:20,553.553 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:56:20,557.557 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:56:20,796.796 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:56:20,813.813 INFO    ] time= 31/08/2026 02:56:20
[2026-08-31 02:56:20,828.828 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:56:20,835.835 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:56:20,959.959 INFO    ] No existing commands found in stream
[2026-08-31 02:56:25,974.974 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:56:25,977.977 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-08-31 02:56:27,617.617 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 02:56:27,620.620 INFO    ] Checking for system updates...
[2026-08-31 02:56:27,655.655 INFO    ] 200
[2026-08-31 02:56:27,658.658 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:56:27,710.710 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:56:27,712.712 INFO    ] No update needed
[2026-08-31 02:56:27,715.715 INFO    ] Checking for camera pi updates...
[2026-08-31 02:56:27,749.749 INFO    ] 200
[2026-08-31 02:56:27,751.751 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:56:27,791.791 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:56:27,870.870 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:56:27,872.872 INFO    ] No camera update needed
[2026-08-31 02:56:27,875.875 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:56:27,877.877 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:56:27,882.882 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:56:27,887.887 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:56:29,929.929 INFO    ] ================================================
[2026-08-31 02:56:29,944.944 INFO    ] Launching Daemon at Mon Aug 31 02:56:29 IST 2026
[2026-08-31 02:56:29,955.955 INFO    ] ================================================
[2026-08-31 02:56:30,522.522 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:56:30
[2026-08-31 02:56:31,103.103 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:56:31,371.371 INFO    ] Initializing speech engine...
[2026-08-31 02:56:31,380.380 INFO    ] 2026-08-31 02:56:31
[2026-08-31 02:56:31,626.626 INFO    ] 2026-08-31 02:56:31
[2026-08-31 02:56:31,660.660 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:56:31,916.916 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:56:31,921.921 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:56:32,186.186 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:56:32,194.194 INFO    ] time= 31/08/2026 02:56:32
[2026-08-31 02:56:32,213.213 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:56:32,242.242 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:56:32,355.355 INFO    ] No existing commands found in stream
[2026-08-31 02:56:37,385.385 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:56:37,388.388 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-08-31 02:56:39,739.739 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 02:56:39,742.742 INFO    ] Checking for system updates...
[2026-08-31 02:56:39,778.778 INFO    ] 200
[2026-08-31 02:56:39,781.781 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:56:39,839.839 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:56:39,842.842 INFO    ] No update needed
[2026-08-31 02:56:39,844.844 INFO    ] Checking for camera pi updates...
[2026-08-31 02:56:39,878.878 INFO    ] 200
[2026-08-31 02:56:39,881.881 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:56:39,927.927 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:56:40,107.107 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:56:40,110.110 INFO    ] No camera update needed
[2026-08-31 02:56:40,113.113 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:56:40,115.115 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:56:40,121.121 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:56:40,127.127 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:56:42,170.170 INFO    ] ================================================
[2026-08-31 02:56:42,185.185 INFO    ] Launching Daemon at Mon Aug 31 02:56:42 IST 2026
[2026-08-31 02:56:42,196.196 INFO    ] ================================================
[2026-08-31 02:56:42,764.764 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:56:42
[2026-08-31 02:56:43,422.422 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:56:43,721.721 INFO    ] Initializing speech engine...
[2026-08-31 02:56:43,730.730 INFO    ] 2026-08-31 02:56:43
[2026-08-31 02:56:44,015.015 INFO    ] 2026-08-31 02:56:43
[2026-08-31 02:56:44,061.061 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:56:44,344.344 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:56:44,349.349 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:56:44,546.546 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:56:44,567.567 INFO    ] time= 31/08/2026 02:56:44
[2026-08-31 02:56:44,593.593 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:56:44,601.601 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:56:44,738.738 INFO    ] No existing commands found in stream
[2026-08-31 02:56:49,774.774 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:56:49,777.777 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-08-31 02:56:51,991.991 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 02:56:51,994.994 INFO    ] Checking for system updates...
[2026-08-31 02:56:52,030.030 INFO    ] 200
[2026-08-31 02:56:52,032.032 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:56:52,090.090 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:56:52,092.092 INFO    ] No update needed
[2026-08-31 02:56:52,095.095 INFO    ] Checking for camera pi updates...
[2026-08-31 02:56:52,131.131 INFO    ] 200
[2026-08-31 02:56:52,133.133 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:56:52,178.178 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:56:52,283.283 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:56:52,285.285 INFO    ] No camera update needed
[2026-08-31 02:56:52,288.288 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:56:52,290.290 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:56:52,295.295 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:56:52,300.300 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:56:54,340.340 INFO    ] ================================================
[2026-08-31 02:56:54,356.356 INFO    ] Launching Daemon at Mon Aug 31 02:56:54 IST 2026
[2026-08-31 02:56:54,367.367 INFO    ] ================================================
[2026-08-31 02:56:55,010.010 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:56:55
[2026-08-31 02:56:55,670.670 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:56:55,969.969 INFO    ] Initializing speech engine...
[2026-08-31 02:56:55,981.981 INFO    ] 2026-08-31 02:56:55
[2026-08-31 02:56:56,291.291 INFO    ] 2026-08-31 02:56:56
[2026-08-31 02:56:56,375.375 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:56:56,651.651 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:56:56,688.688 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:56:56,927.927 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:56:56,951.951 INFO    ] time= 31/08/2026 02:56:56
[2026-08-31 02:56:57,010.010 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:56:57,042.042 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:56:57,187.187 INFO    ] No existing commands found in stream
[2026-08-31 02:57:02,200.200 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:57:02,203.203 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-08-31 02:57:03,776.776 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 02:57:03,779.779 INFO    ] Checking for system updates...
[2026-08-31 02:57:03,821.821 INFO    ] 200
[2026-08-31 02:57:03,824.824 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:57:03,878.878 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:57:03,880.880 INFO    ] No update needed
[2026-08-31 02:57:03,883.883 INFO    ] Checking for camera pi updates...
[2026-08-31 02:57:03,916.916 INFO    ] 200
[2026-08-31 02:57:03,919.919 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:57:03,958.958 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:57:04,043.043 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:57:04,046.046 INFO    ] No camera update needed
[2026-08-31 02:57:04,049.049 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:57:04,052.052 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:57:04,058.058 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:57:04,064.064 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:57:06,106.106 INFO    ] ================================================
[2026-08-31 02:57:06,122.122 INFO    ] Launching Daemon at Mon Aug 31 02:57:06 IST 2026
[2026-08-31 02:57:06,132.132 INFO    ] ================================================
[2026-08-31 02:57:06,699.699 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:57:06
[2026-08-31 02:57:07,359.359 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:57:07,660.660 INFO    ] Initializing speech engine...
[2026-08-31 02:57:07,669.669 INFO    ] 2026-08-31 02:57:07
[2026-08-31 02:57:07,985.985 INFO    ] 2026-08-31 02:57:07
[2026-08-31 02:57:08,070.070 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:57:08,350.350 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:57:08,381.381 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:57:08,633.633 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:57:08,689.689 INFO    ] time= 31/08/2026 02:57:08
[2026-08-31 02:57:08,740.740 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:57:08,764.764 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:57:08,935.935 INFO    ] No existing commands found in stream
[2026-08-31 02:57:13,945.945 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:57:13,949.949 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-08-31 02:57:15,603.603 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 02:57:15,606.606 INFO    ] Checking for system updates...
[2026-08-31 02:57:15,647.647 INFO    ] 200
[2026-08-31 02:57:15,650.650 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:57:15,703.703 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:57:15,705.705 INFO    ] No update needed
[2026-08-31 02:57:15,708.708 INFO    ] Checking for camera pi updates...
[2026-08-31 02:57:15,751.751 INFO    ] 200
[2026-08-31 02:57:15,753.753 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:57:15,799.799 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:57:15,887.887 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:57:15,890.890 INFO    ] No camera update needed
[2026-08-31 02:57:15,893.893 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:57:15,895.895 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:57:15,902.902 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:57:15,908.908 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:57:17,951.951 INFO    ] ================================================
[2026-08-31 02:57:17,966.966 INFO    ] Launching Daemon at Mon Aug 31 02:57:17 IST 2026
[2026-08-31 02:57:17,977.977 INFO    ] ================================================
[2026-08-31 02:57:18,623.623 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:57:18
[2026-08-31 02:57:19,288.288 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:57:19,589.589 INFO    ] Initializing speech engine...
[2026-08-31 02:57:19,603.603 INFO    ] 2026-08-31 02:57:19
[2026-08-31 02:57:19,881.881 INFO    ] 2026-08-31 02:57:19
[2026-08-31 02:57:19,925.925 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:57:20,211.211 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:57:20,218.218 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:57:20,413.413 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:57:20,434.434 INFO    ] time= 31/08/2026 02:57:20
[2026-08-31 02:57:20,460.460 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:57:20,469.469 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:57:20,596.596 INFO    ] No existing commands found in stream
[2026-08-31 02:57:25,622.622 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:57:25,625.625 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-08-31 02:57:29,532.532 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 02:57:29,535.535 INFO    ] Checking for system updates...
[2026-08-31 02:57:29,575.575 INFO    ] 200
[2026-08-31 02:57:29,578.578 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:57:29,638.638 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:57:29,641.641 INFO    ] No update needed
[2026-08-31 02:57:29,644.644 INFO    ] Checking for camera pi updates...
[2026-08-31 02:57:29,681.681 INFO    ] 200
[2026-08-31 02:57:29,684.684 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:57:29,725.725 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:57:29,810.810 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:57:29,812.812 INFO    ] No camera update needed
[2026-08-31 02:57:29,815.815 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:57:29,818.818 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:57:29,824.824 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:57:29,830.830 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:57:31,870.870 INFO    ] ================================================
[2026-08-31 02:57:31,885.885 INFO    ] Launching Daemon at Mon Aug 31 02:57:31 IST 2026
[2026-08-31 02:57:31,895.895 INFO    ] ================================================
[2026-08-31 02:57:32,590.590 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:57:32
[2026-08-31 02:57:33,297.297 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:57:33,584.584 INFO    ] Initializing speech engine...
[2026-08-31 02:57:33,602.602 INFO    ] 2026-08-31 02:57:33
[2026-08-31 02:57:33,893.893 INFO    ] 2026-08-31 02:57:33
[2026-08-31 02:57:33,939.939 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:57:34,217.217 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:57:34,228.228 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:57:34,425.425 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:57:34,441.441 INFO    ] time= 31/08/2026 02:57:34
[2026-08-31 02:57:34,451.451 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:57:34,478.478 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:57:34,623.623 INFO    ] No existing commands found in stream
[2026-08-31 02:57:39,654.654 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:57:39,657.657 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-08-31 02:57:43,353.353 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 02:57:43,356.356 INFO    ] Checking for system updates...
[2026-08-31 02:57:43,397.397 INFO    ] 200
[2026-08-31 02:57:43,399.399 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:57:43,452.452 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:57:43,455.455 INFO    ] No update needed
[2026-08-31 02:57:43,458.458 INFO    ] Checking for camera pi updates...
[2026-08-31 02:57:43,492.492 INFO    ] 200
[2026-08-31 02:57:43,495.495 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:57:43,536.536 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:57:43,620.620 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:57:43,646.646 INFO    ] No camera update needed
[2026-08-31 02:57:43,649.649 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:57:43,652.652 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:57:43,659.659 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:57:43,664.664 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:57:45,705.705 INFO    ] ================================================
[2026-08-31 02:57:45,720.720 INFO    ] Launching Daemon at Mon Aug 31 02:57:45 IST 2026
[2026-08-31 02:57:45,731.731 INFO    ] ================================================
[2026-08-31 02:57:46,300.300 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:57:46
[2026-08-31 02:57:46,883.883 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:57:47,135.135 INFO    ] Initializing speech engine...
[2026-08-31 02:57:47,150.150 INFO    ] 2026-08-31 02:57:47
[2026-08-31 02:57:47,412.412 INFO    ] 2026-08-31 02:57:47
[2026-08-31 02:57:47,447.447 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:57:47,697.697 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:57:47,706.706 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:57:47,922.922 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:57:47,964.964 INFO    ] time= 31/08/2026 02:57:47
[2026-08-31 02:57:47,970.970 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:57:47,987.987 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:57:48,118.118 INFO    ] No existing commands found in stream
[2026-08-31 02:57:53,137.137 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:57:53,140.140 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-08-31 02:57:56,792.792 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 02:57:56,795.795 INFO    ] Checking for system updates...
[2026-08-31 02:57:56,830.830 INFO    ] 200
[2026-08-31 02:57:56,833.833 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:57:56,885.885 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:57:56,888.888 INFO    ] No update needed
[2026-08-31 02:57:56,890.890 INFO    ] Checking for camera pi updates...
[2026-08-31 02:57:56,923.923 INFO    ] 200
[2026-08-31 02:57:56,926.926 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:57:56,966.966 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:57:57,048.048 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:57:57,050.050 INFO    ] No camera update needed
[2026-08-31 02:57:57,053.053 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:57:57,055.055 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:57:57,060.060 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:57:57,065.065 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:57:59,106.106 INFO    ] ================================================
[2026-08-31 02:57:59,122.122 INFO    ] Launching Daemon at Mon Aug 31 02:57:59 IST 2026
[2026-08-31 02:57:59,133.133 INFO    ] ================================================
[2026-08-31 02:57:59,711.711 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:57:59
[2026-08-31 02:58:00,305.305 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:58:00,576.576 INFO    ] Initializing speech engine...
[2026-08-31 02:58:00,585.585 INFO    ] 2026-08-31 02:58:00
[2026-08-31 02:58:00,832.832 INFO    ] 2026-08-31 02:58:00
[2026-08-31 02:58:00,900.900 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:58:01,247.247 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:58:01,299.299 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:58:01,554.554 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:58:01,598.598 INFO    ] time= 31/08/2026 02:58:01
[2026-08-31 02:58:01,631.631 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:58:01,674.674 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:58:01,802.802 INFO    ] No existing commands found in stream
[2026-08-31 02:58:06,831.831 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:58:06,834.834 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-08-31 02:58:10,730.730 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 02:58:10,732.732 INFO    ] Checking for system updates...
[2026-08-31 02:58:10,769.769 INFO    ] 200
[2026-08-31 02:58:10,771.771 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:58:10,824.824 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:58:10,826.826 INFO    ] No update needed
[2026-08-31 02:58:10,829.829 INFO    ] Checking for camera pi updates...
[2026-08-31 02:58:10,862.862 INFO    ] 200
[2026-08-31 02:58:10,864.864 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:58:10,904.904 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:58:11,005.005 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:58:11,007.007 INFO    ] No camera update needed
[2026-08-31 02:58:11,010.010 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:58:11,012.012 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:58:11,017.017 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:58:11,022.022 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:58:13,063.063 INFO    ] ================================================
[2026-08-31 02:58:13,081.081 INFO    ] Launching Daemon at Mon Aug 31 02:58:13 IST 2026
[2026-08-31 02:58:13,092.092 INFO    ] ================================================
[2026-08-31 02:58:13,657.657 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:58:13
[2026-08-31 02:58:14,240.240 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:58:14,487.487 INFO    ] Initializing speech engine...
[2026-08-31 02:58:14,500.500 INFO    ] 2026-08-31 02:58:14
[2026-08-31 02:58:14,761.761 INFO    ] 2026-08-31 02:58:14
[2026-08-31 02:58:14,795.795 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:58:15,049.049 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:58:15,055.055 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:58:15,301.301 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:58:15,313.313 INFO    ] time= 31/08/2026 02:58:15
[2026-08-31 02:58:15,331.331 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:58:15,348.348 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:58:15,476.476 INFO    ] No existing commands found in stream
[2026-08-31 02:58:20,501.501 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:58:20,503.503 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-08-31 02:58:24,090.090 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 02:58:24,093.093 INFO    ] Checking for system updates...
[2026-08-31 02:58:24,128.128 INFO    ] 200
[2026-08-31 02:58:24,131.131 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:58:24,185.185 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:58:24,187.187 INFO    ] No update needed
[2026-08-31 02:58:24,190.190 INFO    ] Checking for camera pi updates...
[2026-08-31 02:58:24,223.223 INFO    ] 200
[2026-08-31 02:58:24,226.226 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:58:24,266.266 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:58:24,341.341 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:58:24,343.343 INFO    ] No camera update needed
[2026-08-31 02:58:24,346.346 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:58:24,348.348 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:58:24,353.353 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:58:24,358.358 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:58:26,399.399 INFO    ] ================================================
[2026-08-31 02:58:26,415.415 INFO    ] Launching Daemon at Mon Aug 31 02:58:26 IST 2026
[2026-08-31 02:58:26,425.425 INFO    ] ================================================
[2026-08-31 02:58:26,995.995 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:58:26
[2026-08-31 02:58:27,585.585 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:58:27,840.840 INFO    ] Initializing speech engine...
[2026-08-31 02:58:27,849.849 INFO    ] 2026-08-31 02:58:27
[2026-08-31 02:58:28,143.143 INFO    ] 2026-08-31 02:58:28
[2026-08-31 02:58:28,181.181 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:58:28,405.405 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:58:28,470.470 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:58:28,700.700 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:58:28,765.765 INFO    ] time= 31/08/2026 02:58:28
[2026-08-31 02:58:28,775.775 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:58:28,792.792 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:58:28,936.936 INFO    ] No existing commands found in stream
[2026-08-31 02:58:33,954.954 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:58:33,957.957 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-08-31 02:58:36,713.713 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 02:58:36,715.715 INFO    ] Checking for system updates...
[2026-08-31 02:58:36,751.751 INFO    ] 200
[2026-08-31 02:58:36,753.753 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:58:36,811.811 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:58:36,814.814 INFO    ] No update needed
[2026-08-31 02:58:36,816.816 INFO    ] Checking for camera pi updates...
[2026-08-31 02:58:36,849.849 INFO    ] 200
[2026-08-31 02:58:36,852.852 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:58:36,892.892 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:58:36,972.972 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:58:36,974.974 INFO    ] No camera update needed
[2026-08-31 02:58:36,977.977 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:58:36,979.979 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:58:36,984.984 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:58:36,989.989 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:58:39,029.029 INFO    ] ================================================
[2026-08-31 02:58:39,044.044 INFO    ] Launching Daemon at Mon Aug 31 02:58:39 IST 2026
[2026-08-31 02:58:39,055.055 INFO    ] ================================================
[2026-08-31 02:58:39,639.639 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:58:39
[2026-08-31 02:58:40,273.273 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:58:40,572.572 INFO    ] Initializing speech engine...
[2026-08-31 02:58:40,583.583 INFO    ] 2026-08-31 02:58:40
[2026-08-31 02:58:40,891.891 INFO    ] 2026-08-31 02:58:40
[2026-08-31 02:58:40,976.976 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:58:41,188.188 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:58:41,193.193 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:58:41,389.389 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:58:41,405.405 INFO    ] time= 31/08/2026 02:58:41
[2026-08-31 02:58:41,414.414 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:58:41,440.440 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:58:41,548.548 INFO    ] No existing commands found in stream
[2026-08-31 02:58:46,582.582 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:58:46,585.585 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-08-31 02:58:50,378.378 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 02:58:50,381.381 INFO    ] Checking for system updates...
[2026-08-31 02:58:50,418.418 INFO    ] 200
[2026-08-31 02:58:50,420.420 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:58:50,474.474 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:58:50,477.477 INFO    ] No update needed
[2026-08-31 02:58:50,480.480 INFO    ] Checking for camera pi updates...
[2026-08-31 02:58:50,515.515 INFO    ] 200
[2026-08-31 02:58:50,517.517 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:58:50,560.560 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:58:50,735.735 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:58:50,738.738 INFO    ] No camera update needed
[2026-08-31 02:58:50,740.740 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:58:50,742.742 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:58:50,748.748 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:58:50,754.754 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:58:52,795.795 INFO    ] ================================================
[2026-08-31 02:58:52,810.810 INFO    ] Launching Daemon at Mon Aug 31 02:58:52 IST 2026
[2026-08-31 02:58:52,821.821 INFO    ] ================================================
[2026-08-31 02:58:53,388.388 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:58:53
[2026-08-31 02:58:53,972.972 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:58:54,233.233 INFO    ] Initializing speech engine...
[2026-08-31 02:58:54,253.253 INFO    ] 2026-08-31 02:58:54
[2026-08-31 02:58:54,528.528 INFO    ] 2026-08-31 02:58:54
[2026-08-31 02:58:54,552.552 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:58:54,783.783 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:58:54,791.791 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:58:55,005.005 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:58:55,014.014 INFO    ] time= 31/08/2026 02:58:55
[2026-08-31 02:58:55,079.079 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:58:55,122.122 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:58:55,216.216 INFO    ] No existing commands found in stream
[2026-08-31 02:59:00,228.228 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:59:00,231.231 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-08-31 02:59:01,835.835 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 02:59:01,839.839 INFO    ] Checking for system updates...
[2026-08-31 02:59:01,882.882 INFO    ] 200
[2026-08-31 02:59:01,885.885 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:59:01,946.946 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:59:01,949.949 INFO    ] No update needed
[2026-08-31 02:59:01,952.952 INFO    ] Checking for camera pi updates...
[2026-08-31 02:59:01,991.991 INFO    ] 200
[2026-08-31 02:59:01,994.994 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:59:02,041.041 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:59:02,146.146 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:59:02,149.149 INFO    ] No camera update needed
[2026-08-31 02:59:02,152.152 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:59:02,155.155 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:59:02,161.161 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:59:02,167.167 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:59:04,209.209 INFO    ] ================================================
[2026-08-31 02:59:04,224.224 INFO    ] Launching Daemon at Mon Aug 31 02:59:04 IST 2026
[2026-08-31 02:59:04,235.235 INFO    ] ================================================
[2026-08-31 02:59:04,816.816 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:59:04
[2026-08-31 02:59:05,412.412 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:59:05,688.688 INFO    ] Initializing speech engine...
[2026-08-31 02:59:05,695.695 INFO    ] 2026-08-31 02:59:05
[2026-08-31 02:59:05,963.963 INFO    ] 2026-08-31 02:59:05
[2026-08-31 02:59:06,001.001 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:59:06,317.317 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:59:06,365.365 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:59:06,558.558 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:59:06,566.566 INFO    ] time= 31/08/2026 02:59:06
[2026-08-31 02:59:06,572.572 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:59:06,627.627 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:59:06,767.767 INFO    ] No existing commands found in stream
[2026-08-31 02:59:11,782.782 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:59:11,785.785 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-08-31 02:59:14,051.051 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 02:59:14,054.054 INFO    ] Checking for system updates...
[2026-08-31 02:59:14,107.107 INFO    ] 200
[2026-08-31 02:59:14,110.110 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:59:14,163.163 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:59:14,165.165 INFO    ] No update needed
[2026-08-31 02:59:14,168.168 INFO    ] Checking for camera pi updates...
[2026-08-31 02:59:14,202.202 INFO    ] 200
[2026-08-31 02:59:14,204.204 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:59:14,250.250 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:59:14,333.333 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:59:14,336.336 INFO    ] No camera update needed
[2026-08-31 02:59:14,338.338 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:59:14,340.340 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:59:14,346.346 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:59:14,351.351 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:59:16,393.393 INFO    ] ================================================
[2026-08-31 02:59:16,409.409 INFO    ] Launching Daemon at Mon Aug 31 02:59:16 IST 2026
[2026-08-31 02:59:16,419.419 INFO    ] ================================================
[2026-08-31 02:59:16,990.990 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:59:16
[2026-08-31 02:59:17,579.579 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:59:17,828.828 INFO    ] Initializing speech engine...
[2026-08-31 02:59:17,834.834 INFO    ] 2026-08-31 02:59:17
[2026-08-31 02:59:18,109.109 INFO    ] 2026-08-31 02:59:18
[2026-08-31 02:59:18,145.145 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:59:18,402.402 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:59:18,411.411 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:59:18,612.612 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:59:18,666.666 INFO    ] time= 31/08/2026 02:59:18
[2026-08-31 02:59:18,683.683 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:59:18,698.698 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:59:18,836.836 INFO    ] No existing commands found in stream
[2026-08-31 02:59:23,859.859 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:59:23,862.862 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-08-31 02:59:25,272.272 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 02:59:25,275.275 INFO    ] Checking for system updates...
[2026-08-31 02:59:25,311.311 INFO    ] 200
[2026-08-31 02:59:25,313.313 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:59:25,366.366 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:59:25,368.368 INFO    ] No update needed
[2026-08-31 02:59:25,371.371 INFO    ] Checking for camera pi updates...
[2026-08-31 02:59:25,404.404 INFO    ] 200
[2026-08-31 02:59:25,406.406 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:59:25,446.446 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:59:25,526.526 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 02:59:25,528.528 INFO    ] No camera update needed
[2026-08-31 02:59:25,531.531 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:59:25,533.533 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:59:25,538.538 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:59:25,543.543 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:59:27,583.583 INFO    ] ================================================
[2026-08-31 02:59:27,599.599 INFO    ] Launching Daemon at Mon Aug 31 02:59:27 IST 2026
[2026-08-31 02:59:27,609.609 INFO    ] ================================================
[2026-08-31 02:59:28,254.254 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:59:28
[2026-08-31 02:59:28,916.916 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:59:29,220.220 INFO    ] Initializing speech engine...
[2026-08-31 02:59:29,233.233 INFO    ] 2026-08-31 02:59:29
[2026-08-31 02:59:29,545.545 INFO    ] 2026-08-31 02:59:29
[2026-08-31 02:59:29,629.629 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:59:29,842.842 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:59:29,850.850 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:59:30,043.043 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:59:30,065.065 INFO    ] time= 31/08/2026 02:59:30
[2026-08-31 02:59:30,093.093 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:59:30,101.101 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:59:30,260.260 INFO    ] No existing commands found in stream
[2026-08-31 02:59:35,291.291 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:59:35,295.295 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-08-31 02:59:38,621.621 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 02:59:38,623.623 INFO    ] Checking for system updates...
[2026-08-31 02:59:38,660.660 INFO    ] 200
[2026-08-31 02:59:38,663.663 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:59:38,716.716 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:59:38,719.719 INFO    ] No update needed
[2026-08-31 02:59:38,722.722 INFO    ] Checking for camera pi updates...
[2026-08-31 02:59:38,755.755 INFO    ] 200
[2026-08-31 02:59:38,758.758 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:59:38,798.798 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:59:38,902.902 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:59:38,904.904 INFO    ] No camera update needed
[2026-08-31 02:59:38,906.906 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:59:38,909.909 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:59:38,914.914 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:59:38,919.919 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:59:40,959.959 INFO    ] ================================================
[2026-08-31 02:59:40,974.974 INFO    ] Launching Daemon at Mon Aug 31 02:59:40 IST 2026
[2026-08-31 02:59:40,985.985 INFO    ] ================================================
[2026-08-31 02:59:41,558.558 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:59:41
[2026-08-31 02:59:42,149.149 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:59:42,449.449 INFO    ] Initializing speech engine...
[2026-08-31 02:59:42,461.461 INFO    ] 2026-08-31 02:59:42
[2026-08-31 02:59:42,769.769 INFO    ] 2026-08-31 02:59:42
[2026-08-31 02:59:42,852.852 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:59:43,128.128 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:59:43,145.145 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:59:43,393.393 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:59:43,429.429 INFO    ] time= 31/08/2026 02:59:43
[2026-08-31 02:59:43,488.488 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:59:43,519.519 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:59:43,664.664 INFO    ] No existing commands found in stream
[2026-08-31 02:59:48,678.678 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:59:48,682.682 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-08-31 02:59:49,289.289 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 02:59:49,292.292 INFO    ] Checking for system updates...
[2026-08-31 02:59:49,331.331 INFO    ] 200
[2026-08-31 02:59:49,333.333 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:59:49,391.391 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:59:49,393.393 INFO    ] No update needed
[2026-08-31 02:59:49,396.396 INFO    ] Checking for camera pi updates...
[2026-08-31 02:59:49,432.432 INFO    ] 200
[2026-08-31 02:59:49,434.434 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 02:59:49,474.474 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 02:59:49,558.558 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 02:59:49,560.560 INFO    ] No camera update needed
[2026-08-31 02:59:49,563.563 INFO    ] Script finished. Safe exiting...
[2026-08-31 02:59:49,565.565 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 02:59:49,570.570 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 02:59:49,575.575 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 02:59:51,616.616 INFO    ] ================================================
[2026-08-31 02:59:51,632.632 INFO    ] Launching Daemon at Mon Aug 31 02:59:51 IST 2026
[2026-08-31 02:59:51,643.643 INFO    ] ================================================
[2026-08-31 02:59:52,284.284 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 02:59:52
[2026-08-31 02:59:52,942.942 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 02:59:53,242.242 INFO    ] Initializing speech engine...
[2026-08-31 02:59:53,250.250 INFO    ] 2026-08-31 02:59:53
[2026-08-31 02:59:53,538.538 INFO    ] 2026-08-31 02:59:53
[2026-08-31 02:59:53,583.583 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 02:59:53,837.837 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 02:59:53,842.842 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 02:59:54,075.075 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 02:59:54,082.082 INFO    ] time= 31/08/2026 02:59:54
[2026-08-31 02:59:54,105.105 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 02:59:54,135.135 INFO    ] Checking for existing commands in stream...
[2026-08-31 02:59:54,272.272 INFO    ] No existing commands found in stream
[2026-08-31 02:59:59,303.303 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 02:59:59,306.306 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-08-31 03:00:02,273.273 INFO    ] <class 'urllib3.exceptions.MaxRetryError'>
[2026-08-31 03:00:02,452.452 INFO    ] ("HTTPSConnectionPool(host='neuustore.com', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM08202202 (Caused by NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x73d50610>: Failed to establish a new connection: [Errno 111] Connection refused',))",)
[2026-08-31 03:00:02,493.493 INFO    ] HTTPSConnectionPool(host='neuustore.com', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM08202202 (Caused by NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x73d50610>: Failed to establish a new connection: [Errno 111] Connection refused',))
[2026-08-31 03:00:02,574.574 INFO    ] None
[2026-08-31 03:00:02,617.617 INFO    ] Checking for system updates...
[2026-08-31 03:00:02,846.846 INFO    ] 200
[2026-08-31 03:00:02,870.870 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:00:03,329.329 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:00:03,332.332 INFO    ] No update needed
[2026-08-31 03:00:03,361.361 INFO    ] Checking for camera pi updates...
[2026-08-31 03:00:03,580.580 INFO    ] 200
[2026-08-31 03:00:03,583.583 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:00:03,794.794 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:00:04,513.513 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:00:04,516.516 INFO    ] No camera update needed
[2026-08-31 03:00:04,579.579 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:00:04,582.582 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:00:04,660.660 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:00:04,666.666 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:00:06,779.779 INFO    ] ================================================
[2026-08-31 03:00:06,795.795 INFO    ] Launching Daemon at Mon Aug 31 03:00:06 IST 2026
[2026-08-31 03:00:06,806.806 INFO    ] ================================================
[2026-08-31 03:00:07,449.449 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:00:07
[2026-08-31 03:00:08,038.038 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:00:08,324.324 INFO    ] Initializing speech engine...
[2026-08-31 03:00:08,332.332 INFO    ] 2026-08-31 03:00:08
[2026-08-31 03:00:08,593.593 INFO    ] 2026-08-31 03:00:08
[2026-08-31 03:00:08,646.646 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:00:08,889.889 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:00:08,899.899 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:00:09,140.140 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:00:09,165.165 INFO    ] time= 31/08/2026 03:00:09
[2026-08-31 03:00:09,181.181 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:00:09,190.190 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:00:09,322.322 INFO    ] No existing commands found in stream
[2026-08-31 03:00:14,341.341 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:00:14,343.343 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-08-31 03:00:18,632.632 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 03:00:18,634.634 INFO    ] Checking for system updates...
[2026-08-31 03:00:18,674.674 INFO    ] 200
[2026-08-31 03:00:18,677.677 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:00:18,736.736 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:00:18,739.739 INFO    ] No update needed
[2026-08-31 03:00:18,741.741 INFO    ] Checking for camera pi updates...
[2026-08-31 03:00:18,779.779 INFO    ] 200
[2026-08-31 03:00:18,782.782 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:00:18,822.822 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:00:18,928.928 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:00:18,930.930 INFO    ] No camera update needed
[2026-08-31 03:00:18,933.933 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:00:18,935.935 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:00:18,940.940 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:00:18,945.945 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:00:20,987.987 INFO    ] ================================================
[2026-08-31 03:00:21,002.002 INFO    ] Launching Daemon at Mon Aug 31 03:00:20 IST 2026
[2026-08-31 03:00:21,013.013 INFO    ] ================================================
[2026-08-31 03:00:21,593.593 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:00:21
[2026-08-31 03:00:22,192.192 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:00:22,470.470 INFO    ] Initializing speech engine...
[2026-08-31 03:00:22,478.478 INFO    ] 2026-08-31 03:00:22
[2026-08-31 03:00:22,751.751 INFO    ] 2026-08-31 03:00:22
[2026-08-31 03:00:22,793.793 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:00:23,077.077 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:00:23,086.086 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:00:23,275.275 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:00:23,281.281 INFO    ] time= 31/08/2026 03:00:23
[2026-08-31 03:00:23,299.299 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:00:23,316.316 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:00:23,436.436 INFO    ] No existing commands found in stream
[2026-08-31 03:00:28,464.464 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:00:28,467.467 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-08-31 03:00:30,514.514 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 03:00:30,517.517 INFO    ] Checking for system updates...
[2026-08-31 03:00:30,554.554 INFO    ] 200
[2026-08-31 03:00:30,557.557 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:00:30,615.615 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:00:30,618.618 INFO    ] No update needed
[2026-08-31 03:00:30,620.620 INFO    ] Checking for camera pi updates...
[2026-08-31 03:00:30,655.655 INFO    ] 200
[2026-08-31 03:00:30,658.658 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:00:30,699.699 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:00:30,780.780 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:00:30,782.782 INFO    ] No camera update needed
[2026-08-31 03:00:30,785.785 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:00:30,788.788 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:00:30,794.794 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:00:30,800.800 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:00:32,848.848 INFO    ] ================================================
[2026-08-31 03:00:32,864.864 INFO    ] Launching Daemon at Mon Aug 31 03:00:32 IST 2026
[2026-08-31 03:00:32,876.876 INFO    ] ================================================
[2026-08-31 03:00:33,456.456 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:00:33
[2026-08-31 03:00:34,052.052 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:00:34,330.330 INFO    ] Initializing speech engine...
[2026-08-31 03:00:34,338.338 INFO    ] 2026-08-31 03:00:34
[2026-08-31 03:00:34,643.643 INFO    ] 2026-08-31 03:00:34
[2026-08-31 03:00:34,727.727 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:00:34,937.937 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:00:34,942.942 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:00:35,137.137 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:00:35,156.156 INFO    ] time= 31/08/2026 03:00:35
[2026-08-31 03:00:35,168.168 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:00:35,191.191 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:00:35,343.343 INFO    ] No existing commands found in stream
[2026-08-31 03:00:40,369.369 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:00:40,371.371 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-08-31 03:00:43,018.018 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 03:00:43,020.020 INFO    ] Checking for system updates...
[2026-08-31 03:00:43,060.060 INFO    ] 200
[2026-08-31 03:00:43,062.062 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:00:43,114.114 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:00:43,117.117 INFO    ] No update needed
[2026-08-31 03:00:43,119.119 INFO    ] Checking for camera pi updates...
[2026-08-31 03:00:43,153.153 INFO    ] 200
[2026-08-31 03:00:43,155.155 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:00:43,197.197 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:00:43,277.277 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:00:43,280.280 INFO    ] No camera update needed
[2026-08-31 03:00:43,283.283 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:00:43,285.285 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:00:43,292.292 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:00:43,298.298 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:00:45,340.340 INFO    ] ================================================
[2026-08-31 03:00:45,355.355 INFO    ] Launching Daemon at Mon Aug 31 03:00:45 IST 2026
[2026-08-31 03:00:45,366.366 INFO    ] ================================================
[2026-08-31 03:00:45,933.933 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:00:45
[2026-08-31 03:00:46,517.517 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:00:46,789.789 INFO    ] Initializing speech engine...
[2026-08-31 03:00:46,798.798 INFO    ] 2026-08-31 03:00:46
[2026-08-31 03:00:47,047.047 INFO    ] 2026-08-31 03:00:47
[2026-08-31 03:00:47,083.083 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:00:47,284.284 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:00:47,340.340 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:00:47,573.573 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:00:47,615.615 INFO    ] time= 31/08/2026 03:00:47
[2026-08-31 03:00:47,621.621 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:00:47,641.641 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:00:47,769.769 INFO    ] No existing commands found in stream
[2026-08-31 03:00:52,783.783 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:00:52,786.786 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-08-31 03:00:54,633.633 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 03:00:54,635.635 INFO    ] Checking for system updates...
[2026-08-31 03:00:54,678.678 INFO    ] 200
[2026-08-31 03:00:54,681.681 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:00:54,740.740 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:00:54,742.742 INFO    ] No update needed
[2026-08-31 03:00:54,744.744 INFO    ] Checking for camera pi updates...
[2026-08-31 03:00:54,781.781 INFO    ] 200
[2026-08-31 03:00:54,784.784 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:00:54,829.829 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:00:55,007.007 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:00:55,009.009 INFO    ] No camera update needed
[2026-08-31 03:00:55,011.011 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:00:55,014.014 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:00:55,019.019 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:00:55,024.024 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:00:57,064.064 INFO    ] ================================================
[2026-08-31 03:00:57,084.084 INFO    ] Launching Daemon at Mon Aug 31 03:00:57 IST 2026
[2026-08-31 03:00:57,096.096 INFO    ] ================================================
[2026-08-31 03:00:57,663.663 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:00:57
[2026-08-31 03:00:58,251.251 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:00:58,505.505 INFO    ] Initializing speech engine...
[2026-08-31 03:00:58,513.513 INFO    ] 2026-08-31 03:00:58
[2026-08-31 03:00:58,808.808 INFO    ] 2026-08-31 03:00:58
[2026-08-31 03:00:58,843.843 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:00:59,065.065 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:00:59,073.073 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:00:59,268.268 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:00:59,310.310 INFO    ] time= 31/08/2026 03:00:59
[2026-08-31 03:00:59,369.369 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:00:59,403.403 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:00:59,556.556 INFO    ] No existing commands found in stream
[2026-08-31 03:01:04,576.576 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:01:04,579.579 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-08-31 03:01:08,128.128 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 03:01:08,131.131 INFO    ] Checking for system updates...
[2026-08-31 03:01:08,166.166 INFO    ] 200
[2026-08-31 03:01:08,169.169 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:01:08,221.221 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:01:08,224.224 INFO    ] No update needed
[2026-08-31 03:01:08,226.226 INFO    ] Checking for camera pi updates...
[2026-08-31 03:01:08,260.260 INFO    ] 200
[2026-08-31 03:01:08,262.262 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:01:08,303.303 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:01:08,390.390 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:01:08,392.392 INFO    ] No camera update needed
[2026-08-31 03:01:08,395.395 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:01:08,397.397 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:01:08,403.403 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:01:08,408.408 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:01:10,448.448 INFO    ] ================================================
[2026-08-31 03:01:10,464.464 INFO    ] Launching Daemon at Mon Aug 31 03:01:10 IST 2026
[2026-08-31 03:01:10,475.475 INFO    ] ================================================
[2026-08-31 03:01:11,039.039 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:01:11
[2026-08-31 03:01:11,639.639 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:01:11,899.899 INFO    ] Initializing speech engine...
[2026-08-31 03:01:11,908.908 INFO    ] 2026-08-31 03:01:11
[2026-08-31 03:01:12,209.209 INFO    ] 2026-08-31 03:01:12
[2026-08-31 03:01:12,235.235 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:01:12,518.518 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:01:12,549.549 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:01:12,775.775 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:01:12,819.819 INFO    ] time= 31/08/2026 03:01:12
[2026-08-31 03:01:12,858.858 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:01:12,865.865 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:01:13,023.023 INFO    ] No existing commands found in stream
[2026-08-31 03:01:18,042.042 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:01:18,045.045 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-08-31 03:01:21,512.512 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 03:01:21,515.515 INFO    ] Checking for system updates...
[2026-08-31 03:01:21,551.551 INFO    ] 200
[2026-08-31 03:01:21,554.554 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:01:21,607.607 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:01:21,610.610 INFO    ] No update needed
[2026-08-31 03:01:21,613.613 INFO    ] Checking for camera pi updates...
[2026-08-31 03:01:21,646.646 INFO    ] 200
[2026-08-31 03:01:21,649.649 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:01:21,695.695 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:01:21,775.775 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:01:21,778.778 INFO    ] No camera update needed
[2026-08-31 03:01:21,780.780 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:01:21,783.783 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:01:21,788.788 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:01:21,793.793 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:01:23,833.833 INFO    ] ================================================
[2026-08-31 03:01:23,849.849 INFO    ] Launching Daemon at Mon Aug 31 03:01:23 IST 2026
[2026-08-31 03:01:23,860.860 INFO    ] ================================================
[2026-08-31 03:01:24,438.438 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:01:24
[2026-08-31 03:01:25,025.025 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:01:25,296.296 INFO    ] Initializing speech engine...
[2026-08-31 03:01:25,305.305 INFO    ] 2026-08-31 03:01:25
[2026-08-31 03:01:25,556.556 INFO    ] 2026-08-31 03:01:25
[2026-08-31 03:01:25,593.593 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:01:25,855.855 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:01:25,860.860 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:01:26,088.088 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:01:26,126.126 INFO    ] time= 31/08/2026 03:01:26
[2026-08-31 03:01:26,144.144 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:01:26,153.153 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:01:26,285.285 INFO    ] No existing commands found in stream
[2026-08-31 03:01:31,297.297 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:01:31,300.300 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-08-31 03:01:34,131.131 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 03:01:34,134.134 INFO    ] Checking for system updates...
[2026-08-31 03:01:34,176.176 INFO    ] 200
[2026-08-31 03:01:34,179.179 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:01:34,232.232 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:01:34,235.235 INFO    ] No update needed
[2026-08-31 03:01:34,238.238 INFO    ] Checking for camera pi updates...
[2026-08-31 03:01:34,273.273 INFO    ] 200
[2026-08-31 03:01:34,276.276 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:01:34,324.324 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:01:34,410.410 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:01:34,413.413 INFO    ] No camera update needed
[2026-08-31 03:01:34,416.416 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:01:34,419.419 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:01:34,425.425 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:01:34,431.431 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:01:36,474.474 INFO    ] ================================================
[2026-08-31 03:01:36,490.490 INFO    ] Launching Daemon at Mon Aug 31 03:01:36 IST 2026
[2026-08-31 03:01:36,501.501 INFO    ] ================================================
[2026-08-31 03:01:37,080.080 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:01:37
[2026-08-31 03:01:37,679.679 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:01:37,953.953 INFO    ] Initializing speech engine...
[2026-08-31 03:01:37,962.962 INFO    ] 2026-08-31 03:01:37
[2026-08-31 03:01:38,214.214 INFO    ] 2026-08-31 03:01:38
[2026-08-31 03:01:38,274.274 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:01:38,502.502 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:01:38,507.507 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:01:38,753.753 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:01:38,766.766 INFO    ] time= 31/08/2026 03:01:38
[2026-08-31 03:01:38,783.783 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:01:38,796.796 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:01:38,921.921 INFO    ] No existing commands found in stream
[2026-08-31 03:01:43,949.949 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:01:43,952.952 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-08-31 03:01:48,071.071 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 03:01:48,074.074 INFO    ] Checking for system updates...
[2026-08-31 03:01:48,110.110 INFO    ] 200
[2026-08-31 03:01:48,112.112 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:01:48,166.166 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:01:48,169.169 INFO    ] No update needed
[2026-08-31 03:01:48,171.171 INFO    ] Checking for camera pi updates...
[2026-08-31 03:01:48,205.205 INFO    ] 200
[2026-08-31 03:01:48,207.207 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:01:48,254.254 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:01:48,341.341 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:01:48,344.344 INFO    ] No camera update needed
[2026-08-31 03:01:48,346.346 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:01:48,349.349 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:01:48,354.354 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:01:48,359.359 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:01:50,402.402 INFO    ] ================================================
[2026-08-31 03:01:50,417.417 INFO    ] Launching Daemon at Mon Aug 31 03:01:50 IST 2026
[2026-08-31 03:01:50,428.428 INFO    ] ================================================
[2026-08-31 03:01:50,994.994 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:01:50
[2026-08-31 03:01:51,577.577 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:01:51,848.848 INFO    ] Initializing speech engine...
[2026-08-31 03:01:51,855.855 INFO    ] 2026-08-31 03:01:51
[2026-08-31 03:01:52,105.105 INFO    ] 2026-08-31 03:01:52
[2026-08-31 03:01:52,138.138 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:01:52,267.267 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-08-31 03:01:52,371.371 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-31 03:01:52,422.422 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:01:52,448.448 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:01:52,474.474 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-31 03:01:52,486.486 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:01:54,551.551 INFO    ] ================================================
[2026-08-31 03:01:54,566.566 INFO    ] Launching Daemon at Mon Aug 31 03:01:54 IST 2026
[2026-08-31 03:01:54,577.577 INFO    ] ================================================
[2026-08-31 03:01:55,142.142 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:01:55
[2026-08-31 03:01:55,724.724 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:01:55,969.969 INFO    ] Initializing speech engine...
[2026-08-31 03:01:55,977.977 INFO    ] 2026-08-31 03:01:55
[2026-08-31 03:01:56,251.251 INFO    ] 2026-08-31 03:01:56
[2026-08-31 03:01:56,285.285 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:01:56,341.341 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-08-31 03:01:56,504.504 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-31 03:01:56,520.520 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:01:56,587.587 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:01:56,602.602 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-31 03:01:56,630.630 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:01:58,676.676 INFO    ] ================================================
[2026-08-31 03:01:58,692.692 INFO    ] Launching Daemon at Mon Aug 31 03:01:58 IST 2026
[2026-08-31 03:01:58,703.703 INFO    ] ================================================
[2026-08-31 03:01:59,279.279 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:01:59
[2026-08-31 03:01:59,902.902 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:02:00,147.147 INFO    ] Initializing speech engine...
[2026-08-31 03:02:00,155.155 INFO    ] 2026-08-31 03:02:00
[2026-08-31 03:02:00,430.430 INFO    ] 2026-08-31 03:02:00
[2026-08-31 03:02:00,465.465 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:02:00,522.522 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-08-31 03:02:00,685.685 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-31 03:02:00,702.702 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:02:00,768.768 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:02:00,784.784 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-31 03:02:00,812.812 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:02:02,866.866 INFO    ] ================================================
[2026-08-31 03:02:02,889.889 INFO    ] Launching Daemon at Mon Aug 31 03:02:02 IST 2026
[2026-08-31 03:02:02,906.906 INFO    ] ================================================
[2026-08-31 03:02:03,650.650 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:02:03
[2026-08-31 03:02:04,333.333 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:02:04,644.644 INFO    ] Initializing speech engine...
[2026-08-31 03:02:04,653.653 INFO    ] 2026-08-31 03:02:04
[2026-08-31 03:02:04,981.981 INFO    ] 2026-08-31 03:02:04
[2026-08-31 03:02:05,064.064 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:02:05,133.133 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-08-31 03:02:05,306.306 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-31 03:02:05,313.313 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:02:05,338.338 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:02:05,367.367 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-31 03:02:05,380.380 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:02:07,423.423 INFO    ] ================================================
[2026-08-31 03:02:07,438.438 INFO    ] Launching Daemon at Mon Aug 31 03:02:07 IST 2026
[2026-08-31 03:02:07,449.449 INFO    ] ================================================
[2026-08-31 03:02:08,032.032 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:02:08
[2026-08-31 03:02:08,633.633 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:02:08,912.912 INFO    ] Initializing speech engine...
[2026-08-31 03:02:08,917.917 INFO    ] 2026-08-31 03:02:08
[2026-08-31 03:02:09,180.180 INFO    ] 2026-08-31 03:02:09
[2026-08-31 03:02:09,241.241 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:02:09,558.558 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 113 connecting to live.vendingbuddy.in:23294. No route to host.
[2026-08-31 03:02:09,802.802 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-31 03:02:09,813.813 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:02:09,850.850 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:02:09,925.925 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-31 03:02:10,056.056 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:02:12,155.155 INFO    ] ================================================
[2026-08-31 03:02:12,170.170 INFO    ] Launching Daemon at Mon Aug 31 03:02:12 IST 2026
[2026-08-31 03:02:12,181.181 INFO    ] ================================================
[2026-08-31 03:02:12,761.761 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:02:12
[2026-08-31 03:02:13,343.343 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:02:13,600.600 INFO    ] Initializing speech engine...
[2026-08-31 03:02:13,615.615 INFO    ] 2026-08-31 03:02:13
[2026-08-31 03:02:13,872.872 INFO    ] 2026-08-31 03:02:13
[2026-08-31 03:02:13,941.941 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:02:14,040.040 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-08-31 03:02:14,209.209 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-31 03:02:14,220.220 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:02:14,252.252 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:02:14,296.296 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-31 03:02:14,309.309 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:02:16,411.411 INFO    ] ================================================
[2026-08-31 03:02:16,426.426 INFO    ] Launching Daemon at Mon Aug 31 03:02:16 IST 2026
[2026-08-31 03:02:16,436.436 INFO    ] ================================================
[2026-08-31 03:02:17,100.100 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:02:17
[2026-08-31 03:02:17,781.781 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:02:18,100.100 INFO    ] Initializing speech engine...
[2026-08-31 03:02:18,108.108 INFO    ] 2026-08-31 03:02:18
[2026-08-31 03:02:18,394.394 INFO    ] 2026-08-31 03:02:18
[2026-08-31 03:02:18,508.508 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:02:18,577.577 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-08-31 03:02:18,722.722 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-31 03:02:18,730.730 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:02:18,770.770 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:02:18,786.786 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-31 03:02:18,861.861 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:02:20,931.931 INFO    ] ================================================
[2026-08-31 03:02:20,946.946 INFO    ] Launching Daemon at Mon Aug 31 03:02:20 IST 2026
[2026-08-31 03:02:20,956.956 INFO    ] ================================================
[2026-08-31 03:02:21,537.537 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:02:21
[2026-08-31 03:02:22,137.137 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:02:22,418.418 INFO    ] Initializing speech engine...
[2026-08-31 03:02:22,432.432 INFO    ] 2026-08-31 03:02:22
[2026-08-31 03:02:22,707.707 INFO    ] 2026-08-31 03:02:22
[2026-08-31 03:02:22,743.743 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:02:22,870.870 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-08-31 03:02:22,975.975 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-31 03:02:23,032.032 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:02:23,048.048 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:02:23,076.076 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-31 03:02:23,099.099 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:02:25,164.164 INFO    ] ================================================
[2026-08-31 03:02:25,179.179 INFO    ] Launching Daemon at Mon Aug 31 03:02:25 IST 2026
[2026-08-31 03:02:25,189.189 INFO    ] ================================================
[2026-08-31 03:02:25,774.774 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:02:25
[2026-08-31 03:02:26,374.374 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:02:26,646.646 INFO    ] Initializing speech engine...
[2026-08-31 03:02:26,655.655 INFO    ] 2026-08-31 03:02:26
[2026-08-31 03:02:26,916.916 INFO    ] 2026-08-31 03:02:26
[2026-08-31 03:02:26,974.974 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:02:27,070.070 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-08-31 03:02:27,227.227 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-31 03:02:27,238.238 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:02:27,264.264 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:02:27,277.277 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-31 03:02:27,315.315 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:02:29,361.361 INFO    ] ================================================
[2026-08-31 03:02:29,376.376 INFO    ] Launching Daemon at Mon Aug 31 03:02:29 IST 2026
[2026-08-31 03:02:29,387.387 INFO    ] ================================================
[2026-08-31 03:02:29,968.968 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:02:29
[2026-08-31 03:02:30,569.569 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:02:30,847.847 INFO    ] Initializing speech engine...
[2026-08-31 03:02:30,855.855 INFO    ] 2026-08-31 03:02:30
[2026-08-31 03:02:31,115.115 INFO    ] 2026-08-31 03:02:31
[2026-08-31 03:02:31,169.169 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:02:31,263.263 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-08-31 03:02:31,406.406 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-31 03:02:31,428.428 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:02:31,444.444 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:02:31,471.471 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-31 03:02:31,494.494 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:02:33,561.561 INFO    ] ================================================
[2026-08-31 03:02:33,576.576 INFO    ] Launching Daemon at Mon Aug 31 03:02:33 IST 2026
[2026-08-31 03:02:33,587.587 INFO    ] ================================================
[2026-08-31 03:02:34,225.225 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:02:34
[2026-08-31 03:02:34,856.856 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:02:35,113.113 INFO    ] Initializing speech engine...
[2026-08-31 03:02:35,119.119 INFO    ] 2026-08-31 03:02:35
[2026-08-31 03:02:35,414.414 INFO    ] 2026-08-31 03:02:35
[2026-08-31 03:02:35,453.453 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:02:35,510.510 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-08-31 03:02:35,699.699 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-31 03:02:35,702.702 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:02:35,725.725 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:02:35,793.793 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-31 03:02:35,820.820 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:02:37,869.869 INFO    ] ================================================
[2026-08-31 03:02:37,883.883 INFO    ] Launching Daemon at Mon Aug 31 03:02:37 IST 2026
[2026-08-31 03:02:37,894.894 INFO    ] ================================================
[2026-08-31 03:02:38,534.534 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:02:38
[2026-08-31 03:02:39,191.191 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:02:39,490.490 INFO    ] Initializing speech engine...
[2026-08-31 03:02:39,498.498 INFO    ] 2026-08-31 03:02:39
[2026-08-31 03:02:39,776.776 INFO    ] 2026-08-31 03:02:39
[2026-08-31 03:02:39,833.833 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:02:44,920.920 INFO    ] VendingMachinePublisher.__init__: Redis error: Timeout connecting to server
[2026-08-31 03:02:44,955.955 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-31 03:02:44,959.959 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:02:44,967.967 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:02:44,975.975 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:02:47,016.016 INFO    ] ================================================
[2026-08-31 03:02:47,032.032 INFO    ] Launching Daemon at Mon Aug 31 03:02:47 IST 2026
[2026-08-31 03:02:47,043.043 INFO    ] ================================================
[2026-08-31 03:02:47,631.631 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:02:47
[2026-08-31 03:02:48,233.233 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:02:48,490.490 INFO    ] Initializing speech engine...
[2026-08-31 03:02:48,507.507 INFO    ] 2026-08-31 03:02:48
[2026-08-31 03:02:48,791.791 INFO    ] 2026-08-31 03:02:48
[2026-08-31 03:02:48,827.827 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:02:49,027.027 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:02:49,034.034 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:02:49,208.208 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:02:49,217.217 INFO    ] time= 31/08/2026 03:02:49
[2026-08-31 03:02:49,224.224 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:02:49,230.230 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:02:49,366.366 INFO    ] No existing commands found in stream
[2026-08-31 03:02:54,386.386 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:02:54,389.389 INFO    ] Waiting 4.00 seconds before fallback handling...
[2026-08-31 03:02:58,855.855 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 03:02:58,857.857 INFO    ] Checking for system updates...
[2026-08-31 03:02:58,893.893 INFO    ] 200
[2026-08-31 03:02:58,895.895 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:02:58,951.951 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:02:58,953.953 INFO    ] No update needed
[2026-08-31 03:02:58,956.956 INFO    ] Checking for camera pi updates...
[2026-08-31 03:02:58,990.990 INFO    ] 200
[2026-08-31 03:02:58,992.992 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:02:59,032.032 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:02:59,100.100 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:02:59,103.103 INFO    ] No camera update needed
[2026-08-31 03:02:59,105.105 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:02:59,107.107 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:02:59,112.112 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:02:59,117.117 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:03:01,157.157 INFO    ] ================================================
[2026-08-31 03:03:01,171.171 INFO    ] Launching Daemon at Mon Aug 31 03:03:01 IST 2026
[2026-08-31 03:03:01,182.182 INFO    ] ================================================
[2026-08-31 03:03:01,900.900 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:03:01
[2026-08-31 03:03:02,541.541 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:03:02,821.821 INFO    ] Initializing speech engine...
[2026-08-31 03:03:02,828.828 INFO    ] 2026-08-31 03:03:02
[2026-08-31 03:03:03,134.134 INFO    ] 2026-08-31 03:03:03
[2026-08-31 03:03:03,174.174 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:03:03,381.381 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:03:03,396.396 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:03:03,526.526 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:03:03,532.532 INFO    ] time= 31/08/2026 03:03:03
[2026-08-31 03:03:03,541.541 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:03:03,556.556 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:03:03,663.663 INFO    ] No existing commands found in stream
[2026-08-31 03:03:08,675.675 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:03:08,678.678 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-08-31 03:03:12,850.850 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 03:03:12,852.852 INFO    ] Checking for system updates...
[2026-08-31 03:03:12,888.888 INFO    ] 200
[2026-08-31 03:03:12,891.891 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:03:12,955.955 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:03:12,959.959 INFO    ] No update needed
[2026-08-31 03:03:12,962.962 INFO    ] Checking for camera pi updates...
[2026-08-31 03:03:13,008.008 INFO    ] 200
[2026-08-31 03:03:13,010.010 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:03:13,055.055 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:03:13,138.138 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:03:13,142.142 INFO    ] No camera update needed
[2026-08-31 03:03:13,146.146 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:03:13,149.149 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:03:13,158.158 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:03:13,164.164 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:03:15,214.214 INFO    ] ================================================
[2026-08-31 03:03:15,229.229 INFO    ] Launching Daemon at Mon Aug 31 03:03:15 IST 2026
[2026-08-31 03:03:15,240.240 INFO    ] ================================================
[2026-08-31 03:03:15,823.823 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:03:15
[2026-08-31 03:03:16,432.432 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:03:16,701.701 INFO    ] Initializing speech engine...
[2026-08-31 03:03:16,715.715 INFO    ] 2026-08-31 03:03:16
[2026-08-31 03:03:16,980.980 INFO    ] 2026-08-31 03:03:16
[2026-08-31 03:03:17,015.015 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:03:17,266.266 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:03:17,276.276 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:03:17,415.415 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:03:17,466.466 INFO    ] time= 31/08/2026 03:03:17
[2026-08-31 03:03:17,520.520 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:03:17,548.548 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:03:17,685.685 INFO    ] No existing commands found in stream
[2026-08-31 03:03:22,704.704 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:03:22,707.707 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-08-31 03:03:25,500.500 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 03:03:25,503.503 INFO    ] Checking for system updates...
[2026-08-31 03:03:25,538.538 INFO    ] 200
[2026-08-31 03:03:25,541.541 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:03:25,594.594 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:03:25,596.596 INFO    ] No update needed
[2026-08-31 03:03:25,599.599 INFO    ] Checking for camera pi updates...
[2026-08-31 03:03:25,637.637 INFO    ] 200
[2026-08-31 03:03:25,640.640 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:03:25,685.685 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:03:25,767.767 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:03:25,770.770 INFO    ] No camera update needed
[2026-08-31 03:03:25,772.772 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:03:25,774.774 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:03:25,780.780 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:03:25,785.785 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:03:27,827.827 INFO    ] ================================================
[2026-08-31 03:03:27,842.842 INFO    ] Launching Daemon at Mon Aug 31 03:03:27 IST 2026
[2026-08-31 03:03:27,853.853 INFO    ] ================================================
[2026-08-31 03:03:28,432.432 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:03:28
[2026-08-31 03:03:29,032.032 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:03:29,305.305 INFO    ] Initializing speech engine...
[2026-08-31 03:03:29,313.313 INFO    ] 2026-08-31 03:03:29
[2026-08-31 03:03:29,562.562 INFO    ] 2026-08-31 03:03:29
[2026-08-31 03:03:29,597.597 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:03:29,794.794 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:03:29,828.828 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:03:29,950.950 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:03:29,957.957 INFO    ] time= 31/08/2026 03:03:29
[2026-08-31 03:03:29,963.963 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:03:30,033.033 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:03:30,144.144 INFO    ] No existing commands found in stream
[2026-08-31 03:03:35,179.179 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:03:35,182.182 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-08-31 03:03:36,959.959 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 03:03:36,962.962 INFO    ] Checking for system updates...
[2026-08-31 03:03:36,998.998 INFO    ] 200
[2026-08-31 03:03:37,000.000 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:03:37,053.053 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:03:37,055.055 INFO    ] No update needed
[2026-08-31 03:03:37,058.058 INFO    ] Checking for camera pi updates...
[2026-08-31 03:03:37,092.092 INFO    ] 200
[2026-08-31 03:03:37,095.095 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:03:37,136.136 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:03:37,215.215 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:03:37,218.218 INFO    ] No camera update needed
[2026-08-31 03:03:37,220.220 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:03:37,222.222 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:03:37,228.228 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:03:37,233.233 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:03:39,274.274 INFO    ] ================================================
[2026-08-31 03:03:39,289.289 INFO    ] Launching Daemon at Mon Aug 31 03:03:39 IST 2026
[2026-08-31 03:03:39,299.299 INFO    ] ================================================
[2026-08-31 03:03:39,878.878 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:03:39
[2026-08-31 03:03:40,502.502 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:03:40,776.776 INFO    ] Initializing speech engine...
[2026-08-31 03:03:40,784.784 INFO    ] 2026-08-31 03:03:40
[2026-08-31 03:03:41,035.035 INFO    ] 2026-08-31 03:03:41
[2026-08-31 03:03:41,100.100 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:03:41,274.274 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:03:41,332.332 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:03:41,470.470 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:03:41,484.484 INFO    ] time= 31/08/2026 03:03:41
[2026-08-31 03:03:41,536.536 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:03:41,589.589 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:03:41,674.674 INFO    ] No existing commands found in stream
[2026-08-31 03:03:46,686.686 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:03:46,689.689 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-08-31 03:03:47,812.812 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 03:03:47,814.814 INFO    ] Checking for system updates...
[2026-08-31 03:03:47,857.857 INFO    ] 200
[2026-08-31 03:03:47,860.860 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:03:47,915.915 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:03:47,918.918 INFO    ] No update needed
[2026-08-31 03:03:47,921.921 INFO    ] Checking for camera pi updates...
[2026-08-31 03:03:47,955.955 INFO    ] 200
[2026-08-31 03:03:47,958.958 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:03:48,000.000 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:03:48,100.100 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:03:48,103.103 INFO    ] No camera update needed
[2026-08-31 03:03:48,106.106 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:03:48,109.109 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:03:48,115.115 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:03:48,122.122 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:03:50,164.164 INFO    ] ================================================
[2026-08-31 03:03:50,179.179 INFO    ] Launching Daemon at Mon Aug 31 03:03:50 IST 2026
[2026-08-31 03:03:50,190.190 INFO    ] ================================================
[2026-08-31 03:03:50,803.803 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:03:50
[2026-08-31 03:03:51,390.390 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:03:51,662.662 INFO    ] Initializing speech engine...
[2026-08-31 03:03:51,672.672 INFO    ] 2026-08-31 03:03:51
[2026-08-31 03:03:51,922.922 INFO    ] 2026-08-31 03:03:51
[2026-08-31 03:03:51,958.958 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:03:52,217.217 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:03:52,226.226 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:03:52,429.429 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:03:52,491.491 INFO    ] time= 31/08/2026 03:03:52
[2026-08-31 03:03:52,498.498 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:03:52,512.512 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:03:52,639.639 INFO    ] No existing commands found in stream
[2026-08-31 03:03:57,661.661 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:03:57,663.663 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-08-31 03:03:59,486.486 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 03:03:59,488.488 INFO    ] Checking for system updates...
[2026-08-31 03:03:59,524.524 INFO    ] 200
[2026-08-31 03:03:59,527.527 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:03:59,587.587 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:03:59,589.589 INFO    ] No update needed
[2026-08-31 03:03:59,592.592 INFO    ] Checking for camera pi updates...
[2026-08-31 03:03:59,630.630 INFO    ] 200
[2026-08-31 03:03:59,632.632 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:03:59,673.673 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:03:59,750.750 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:03:59,752.752 INFO    ] No camera update needed
[2026-08-31 03:03:59,755.755 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:03:59,757.757 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:03:59,762.762 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:03:59,768.768 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:04:01,824.824 INFO    ] ================================================
[2026-08-31 03:04:01,864.864 INFO    ] Launching Daemon at Mon Aug 31 03:04:01 IST 2026
[2026-08-31 03:04:01,892.892 INFO    ] ================================================
[2026-08-31 03:04:02,646.646 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:04:02
[2026-08-31 03:04:03,337.337 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:04:03,583.583 INFO    ] Initializing speech engine...
[2026-08-31 03:04:03,597.597 INFO    ] 2026-08-31 03:04:03
[2026-08-31 03:04:03,859.859 INFO    ] 2026-08-31 03:04:03
[2026-08-31 03:04:03,894.894 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:04:04,146.146 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:04:04,155.155 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:04:04,288.288 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:04:04,322.322 INFO    ] time= 31/08/2026 03:04:04
[2026-08-31 03:04:04,386.386 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:04:04,418.418 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:04:04,478.478 INFO    ] No existing commands found in stream
[2026-08-31 03:04:09,497.497 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:04:09,500.500 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-08-31 03:04:11,124.124 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 03:04:11,127.127 INFO    ] Checking for system updates...
[2026-08-31 03:04:11,163.163 INFO    ] 200
[2026-08-31 03:04:11,166.166 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:04:11,220.220 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:04:11,222.222 INFO    ] No update needed
[2026-08-31 03:04:11,225.225 INFO    ] Checking for camera pi updates...
[2026-08-31 03:04:11,260.260 INFO    ] 200
[2026-08-31 03:04:11,263.263 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:04:11,304.304 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:04:11,386.386 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:04:11,388.388 INFO    ] No camera update needed
[2026-08-31 03:04:11,391.391 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:04:11,394.394 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:04:11,400.400 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:04:11,405.405 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:04:13,447.447 INFO    ] ================================================
[2026-08-31 03:04:13,462.462 INFO    ] Launching Daemon at Mon Aug 31 03:04:13 IST 2026
[2026-08-31 03:04:13,473.473 INFO    ] ================================================
[2026-08-31 03:04:14,046.046 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:04:14
[2026-08-31 03:04:14,629.629 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:04:14,876.876 INFO    ] Initializing speech engine...
[2026-08-31 03:04:14,889.889 INFO    ] 2026-08-31 03:04:14
[2026-08-31 03:04:15,151.151 INFO    ] 2026-08-31 03:04:15
[2026-08-31 03:04:15,186.186 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:04:15,440.440 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:04:15,445.445 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:04:15,576.576 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:04:15,614.614 INFO    ] time= 31/08/2026 03:04:15
[2026-08-31 03:04:15,673.673 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:04:15,710.710 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:04:15,859.859 INFO    ] No existing commands found in stream
[2026-08-31 03:04:20,873.873 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:04:20,876.876 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-08-31 03:04:24,975.975 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 03:04:24,978.978 INFO    ] Checking for system updates...
[2026-08-31 03:04:25,013.013 INFO    ] 200
[2026-08-31 03:04:25,016.016 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:04:25,067.067 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:04:25,070.070 INFO    ] No update needed
[2026-08-31 03:04:25,072.072 INFO    ] Checking for camera pi updates...
[2026-08-31 03:04:25,105.105 INFO    ] 200
[2026-08-31 03:04:25,107.107 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:04:25,147.147 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:04:25,223.223 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:04:25,226.226 INFO    ] No camera update needed
[2026-08-31 03:04:25,228.228 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:04:25,231.231 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:04:25,236.236 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:04:25,241.241 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:04:27,281.281 INFO    ] ================================================
[2026-08-31 03:04:27,297.297 INFO    ] Launching Daemon at Mon Aug 31 03:04:27 IST 2026
[2026-08-31 03:04:27,307.307 INFO    ] ================================================
[2026-08-31 03:04:27,949.949 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:04:27
[2026-08-31 03:04:28,610.610 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:04:28,913.913 INFO    ] Initializing speech engine...
[2026-08-31 03:04:28,925.925 INFO    ] 2026-08-31 03:04:28
[2026-08-31 03:04:29,192.192 INFO    ] 2026-08-31 03:04:29
[2026-08-31 03:04:29,245.245 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:04:29,466.466 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:04:29,475.475 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:04:29,611.611 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:04:29,681.681 INFO    ] time= 31/08/2026 03:04:29
[2026-08-31 03:04:29,731.731 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:04:29,746.746 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:04:29,882.882 INFO    ] No existing commands found in stream
[2026-08-31 03:04:34,902.902 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:04:34,905.905 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-08-31 03:04:39,045.045 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 03:04:39,048.048 INFO    ] Checking for system updates...
[2026-08-31 03:04:39,089.089 INFO    ] 200
[2026-08-31 03:04:39,091.091 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:04:39,155.155 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:04:39,158.158 INFO    ] No update needed
[2026-08-31 03:04:39,162.162 INFO    ] Checking for camera pi updates...
[2026-08-31 03:04:39,196.196 INFO    ] 200
[2026-08-31 03:04:39,200.200 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:04:39,241.241 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:04:39,310.310 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:04:39,312.312 INFO    ] No camera update needed
[2026-08-31 03:04:39,315.315 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:04:39,318.318 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:04:39,324.324 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:04:39,330.330 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:04:41,371.371 INFO    ] ================================================
[2026-08-31 03:04:41,388.388 INFO    ] Launching Daemon at Mon Aug 31 03:04:41 IST 2026
[2026-08-31 03:04:41,399.399 INFO    ] ================================================
[2026-08-31 03:04:41,964.964 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:04:41
[2026-08-31 03:04:42,544.544 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:04:42,814.814 INFO    ] Initializing speech engine...
[2026-08-31 03:04:42,820.820 INFO    ] 2026-08-31 03:04:42
[2026-08-31 03:04:43,065.065 INFO    ] 2026-08-31 03:04:43
[2026-08-31 03:04:43,100.100 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:04:43,350.350 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:04:43,361.361 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:04:43,493.493 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:04:43,537.537 INFO    ] time= 31/08/2026 03:04:43
[2026-08-31 03:04:43,591.591 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:04:43,623.623 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:04:43,678.678 INFO    ] No existing commands found in stream
[2026-08-31 03:04:48,690.690 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:04:48,692.692 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-08-31 03:04:52,557.557 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 03:04:52,560.560 INFO    ] Checking for system updates...
[2026-08-31 03:04:52,595.595 INFO    ] 200
[2026-08-31 03:04:52,598.598 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:04:52,651.651 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:04:52,653.653 INFO    ] No update needed
[2026-08-31 03:04:52,655.655 INFO    ] Checking for camera pi updates...
[2026-08-31 03:04:52,689.689 INFO    ] 200
[2026-08-31 03:04:52,691.691 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:04:52,733.733 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:04:52,814.814 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:04:52,816.816 INFO    ] No camera update needed
[2026-08-31 03:04:52,819.819 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:04:52,821.821 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:04:52,827.827 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:04:52,832.832 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:04:54,876.876 INFO    ] ================================================
[2026-08-31 03:04:54,892.892 INFO    ] Launching Daemon at Mon Aug 31 03:04:54 IST 2026
[2026-08-31 03:04:54,902.902 INFO    ] ================================================
[2026-08-31 03:04:55,475.475 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:04:55
[2026-08-31 03:04:56,060.060 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:04:56,329.329 INFO    ] Initializing speech engine...
[2026-08-31 03:04:56,337.337 INFO    ] 2026-08-31 03:04:56
[2026-08-31 03:04:56,585.585 INFO    ] 2026-08-31 03:04:56
[2026-08-31 03:04:56,621.621 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:04:56,818.818 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:04:56,874.874 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:04:57,014.014 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:04:57,062.062 INFO    ] time= 31/08/2026 03:04:57
[2026-08-31 03:04:57,121.121 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:04:57,148.148 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:04:57,277.277 INFO    ] No existing commands found in stream
[2026-08-31 03:05:02,305.305 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:05:02,309.309 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-08-31 03:05:02,943.943 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 03:05:02,947.947 INFO    ] Checking for system updates...
[2026-08-31 03:05:02,995.995 INFO    ] 200
[2026-08-31 03:05:03,000.000 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:05:03,072.072 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:05:03,075.075 INFO    ] No update needed
[2026-08-31 03:05:03,077.077 INFO    ] Checking for camera pi updates...
[2026-08-31 03:05:03,111.111 INFO    ] 200
[2026-08-31 03:05:03,114.114 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:05:03,181.181 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:05:03,485.485 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:05:03,488.488 INFO    ] No camera update needed
[2026-08-31 03:05:03,491.491 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:05:03,494.494 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:05:03,500.500 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:05:03,505.505 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:05:05,548.548 INFO    ] ================================================
[2026-08-31 03:05:05,563.563 INFO    ] Launching Daemon at Mon Aug 31 03:05:05 IST 2026
[2026-08-31 03:05:05,575.575 INFO    ] ================================================
[2026-08-31 03:05:06,198.198 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:05:06
[2026-08-31 03:05:06,875.875 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:05:07,172.172 INFO    ] Initializing speech engine...
[2026-08-31 03:05:07,182.182 INFO    ] 2026-08-31 03:05:07
[2026-08-31 03:05:07,463.463 INFO    ] 2026-08-31 03:05:07
[2026-08-31 03:05:07,518.518 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:05:07,806.806 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:05:07,816.816 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:05:08,012.012 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:05:08,023.023 INFO    ] time= 31/08/2026 03:05:08
[2026-08-31 03:05:08,042.042 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:05:08,071.071 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:05:08,205.205 INFO    ] No existing commands found in stream
[2026-08-31 03:05:13,236.236 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:05:13,240.240 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-08-31 03:05:15,086.086 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 03:05:15,089.089 INFO    ] Checking for system updates...
[2026-08-31 03:05:15,126.126 INFO    ] 200
[2026-08-31 03:05:15,129.129 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:05:15,183.183 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:05:15,186.186 INFO    ] No update needed
[2026-08-31 03:05:15,189.189 INFO    ] Checking for camera pi updates...
[2026-08-31 03:05:15,223.223 INFO    ] 200
[2026-08-31 03:05:15,226.226 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:05:15,267.267 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:05:15,361.361 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:05:15,364.364 INFO    ] No camera update needed
[2026-08-31 03:05:15,366.366 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:05:15,369.369 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:05:15,375.375 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:05:15,381.381 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:05:17,422.422 INFO    ] ================================================
[2026-08-31 03:05:17,437.437 INFO    ] Launching Daemon at Mon Aug 31 03:05:17 IST 2026
[2026-08-31 03:05:17,448.448 INFO    ] ================================================
[2026-08-31 03:05:18,093.093 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:05:18
[2026-08-31 03:05:18,747.747 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:05:19,046.046 INFO    ] Initializing speech engine...
[2026-08-31 03:05:19,053.053 INFO    ] 2026-08-31 03:05:19
[2026-08-31 03:05:19,323.323 INFO    ] 2026-08-31 03:05:19
[2026-08-31 03:05:19,385.385 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:05:19,612.612 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:05:19,622.622 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:05:19,841.841 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:05:19,889.889 INFO    ] time= 31/08/2026 03:05:19
[2026-08-31 03:05:19,895.895 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:05:19,913.913 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:05:20,050.050 INFO    ] No existing commands found in stream
[2026-08-31 03:05:25,079.079 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:05:25,082.082 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-08-31 03:05:27,338.338 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 03:05:27,341.341 INFO    ] Checking for system updates...
[2026-08-31 03:05:27,381.381 INFO    ] 200
[2026-08-31 03:05:27,384.384 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:05:27,442.442 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:05:27,445.445 INFO    ] No update needed
[2026-08-31 03:05:27,449.449 INFO    ] Checking for camera pi updates...
[2026-08-31 03:05:27,483.483 INFO    ] 200
[2026-08-31 03:05:27,486.486 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:05:27,531.531 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:05:27,612.612 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:05:27,614.614 INFO    ] No camera update needed
[2026-08-31 03:05:27,616.616 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:05:27,619.619 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:05:27,624.624 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:05:27,629.629 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:05:29,669.669 INFO    ] ================================================
[2026-08-31 03:05:29,685.685 INFO    ] Launching Daemon at Mon Aug 31 03:05:29 IST 2026
[2026-08-31 03:05:29,697.697 INFO    ] ================================================
[2026-08-31 03:05:30,267.267 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:05:30
[2026-08-31 03:05:30,851.851 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:05:31,108.108 INFO    ] Initializing speech engine...
[2026-08-31 03:05:31,121.121 INFO    ] 2026-08-31 03:05:31
[2026-08-31 03:05:31,405.405 INFO    ] 2026-08-31 03:05:31
[2026-08-31 03:05:31,439.439 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:05:31,649.649 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:05:31,663.663 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:05:31,829.829 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:05:31,836.836 INFO    ] time= 31/08/2026 03:05:31
[2026-08-31 03:05:31,841.841 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:05:31,851.851 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:05:31,931.931 INFO    ] No existing commands found in stream
[2026-08-31 03:05:36,967.967 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:05:36,970.970 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-08-31 03:05:40,485.485 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 03:05:40,488.488 INFO    ] Checking for system updates...
[2026-08-31 03:05:40,523.523 INFO    ] 200
[2026-08-31 03:05:40,525.525 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:05:40,579.579 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:05:40,582.582 INFO    ] No update needed
[2026-08-31 03:05:40,584.584 INFO    ] Checking for camera pi updates...
[2026-08-31 03:05:40,617.617 INFO    ] 200
[2026-08-31 03:05:40,620.620 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:05:40,659.659 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:05:40,749.749 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:05:40,752.752 INFO    ] No camera update needed
[2026-08-31 03:05:40,754.754 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:05:40,756.756 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:05:40,762.762 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:05:40,767.767 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:05:42,807.807 INFO    ] ================================================
[2026-08-31 03:05:42,822.822 INFO    ] Launching Daemon at Mon Aug 31 03:05:42 IST 2026
[2026-08-31 03:05:42,833.833 INFO    ] ================================================
[2026-08-31 03:05:43,466.466 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:05:43
[2026-08-31 03:05:44,114.114 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:05:44,411.411 INFO    ] Initializing speech engine...
[2026-08-31 03:05:44,424.424 INFO    ] 2026-08-31 03:05:44
[2026-08-31 03:05:44,691.691 INFO    ] 2026-08-31 03:05:44
[2026-08-31 03:05:44,747.747 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:05:44,971.971 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:05:44,978.978 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:05:45,194.194 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:05:45,237.237 INFO    ] time= 31/08/2026 03:05:45
[2026-08-31 03:05:45,256.256 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:05:45,285.285 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:05:45,392.392 INFO    ] No existing commands found in stream
[2026-08-31 03:05:50,412.412 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:05:50,415.415 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-08-31 03:05:52,447.447 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 03:05:52,450.450 INFO    ] Checking for system updates...
[2026-08-31 03:05:52,487.487 INFO    ] 200
[2026-08-31 03:05:52,490.490 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:05:52,543.543 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:05:52,546.546 INFO    ] No update needed
[2026-08-31 03:05:52,549.549 INFO    ] Checking for camera pi updates...
[2026-08-31 03:05:52,584.584 INFO    ] 200
[2026-08-31 03:05:52,587.587 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:05:52,632.632 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:05:52,714.714 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:05:52,717.717 INFO    ] No camera update needed
[2026-08-31 03:05:52,720.720 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:05:52,722.722 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:05:52,728.728 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:05:52,734.734 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:05:54,777.777 INFO    ] ================================================
[2026-08-31 03:05:54,792.792 INFO    ] Launching Daemon at Mon Aug 31 03:05:54 IST 2026
[2026-08-31 03:05:54,804.804 INFO    ] ================================================
[2026-08-31 03:05:55,386.386 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:05:55
[2026-08-31 03:05:55,984.984 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:05:56,259.259 INFO    ] Initializing speech engine...
[2026-08-31 03:05:56,280.280 INFO    ] 2026-08-31 03:05:56
[2026-08-31 03:05:56,547.547 INFO    ] 2026-08-31 03:05:56
[2026-08-31 03:05:56,584.584 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:05:56,777.777 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:05:56,784.784 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:05:56,956.956 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:05:56,962.962 INFO    ] time= 31/08/2026 03:05:56
[2026-08-31 03:05:56,970.970 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:05:57,011.011 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:05:57,114.114 INFO    ] No existing commands found in stream
[2026-08-31 03:06:02,149.149 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:06:02,152.152 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-08-31 03:06:05,576.576 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 03:06:05,579.579 INFO    ] Checking for system updates...
[2026-08-31 03:06:05,614.614 INFO    ] 200
[2026-08-31 03:06:05,617.617 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:06:05,672.672 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:06:05,675.675 INFO    ] No update needed
[2026-08-31 03:06:05,677.677 INFO    ] Checking for camera pi updates...
[2026-08-31 03:06:05,710.710 INFO    ] 200
[2026-08-31 03:06:05,712.712 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:06:05,753.753 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:06:05,847.847 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:06:05,849.849 INFO    ] No camera update needed
[2026-08-31 03:06:05,852.852 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:06:05,854.854 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:06:05,859.859 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:06:05,864.864 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:06:07,904.904 INFO    ] ================================================
[2026-08-31 03:06:07,919.919 INFO    ] Launching Daemon at Mon Aug 31 03:06:07 IST 2026
[2026-08-31 03:06:07,930.930 INFO    ] ================================================
[2026-08-31 03:06:08,496.496 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:06:08
[2026-08-31 03:06:09,084.084 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:06:09,352.352 INFO    ] Initializing speech engine...
[2026-08-31 03:06:09,362.362 INFO    ] 2026-08-31 03:06:09
[2026-08-31 03:06:09,624.624 INFO    ] 2026-08-31 03:06:09
[2026-08-31 03:06:09,678.678 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:06:09,905.905 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:06:09,910.910 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:06:10,121.121 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:06:10,169.169 INFO    ] time= 31/08/2026 03:06:10
[2026-08-31 03:06:10,175.175 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:06:10,193.193 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:06:10,308.308 INFO    ] No existing commands found in stream
[2026-08-31 03:06:15,332.332 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:06:15,334.334 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-08-31 03:06:17,136.136 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 03:06:17,139.139 INFO    ] Checking for system updates...
[2026-08-31 03:06:17,174.174 INFO    ] 200
[2026-08-31 03:06:17,177.177 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:06:17,230.230 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:06:17,232.232 INFO    ] No update needed
[2026-08-31 03:06:17,235.235 INFO    ] Checking for camera pi updates...
[2026-08-31 03:06:17,268.268 INFO    ] 200
[2026-08-31 03:06:17,271.271 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:06:17,311.311 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:06:17,392.392 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:06:17,394.394 INFO    ] No camera update needed
[2026-08-31 03:06:17,396.396 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:06:17,399.399 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:06:17,404.404 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:06:17,409.409 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:06:19,449.449 INFO    ] ================================================
[2026-08-31 03:06:19,464.464 INFO    ] Launching Daemon at Mon Aug 31 03:06:19 IST 2026
[2026-08-31 03:06:19,476.476 INFO    ] ================================================
[2026-08-31 03:06:20,114.114 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:06:20
[2026-08-31 03:06:20,775.775 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:06:21,078.078 INFO    ] Initializing speech engine...
[2026-08-31 03:06:21,091.091 INFO    ] 2026-08-31 03:06:21
[2026-08-31 03:06:21,364.364 INFO    ] 2026-08-31 03:06:21
[2026-08-31 03:06:21,459.459 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:06:21,655.655 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:06:21,660.660 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:06:21,801.801 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:06:21,846.846 INFO    ] time= 31/08/2026 03:06:21
[2026-08-31 03:06:21,923.923 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:06:21,941.941 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:06:22,069.069 INFO    ] No existing commands found in stream
[2026-08-31 03:06:27,096.096 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:06:27,099.099 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-08-31 03:06:28,971.971 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 03:06:28,973.973 INFO    ] Checking for system updates...
[2026-08-31 03:06:29,010.010 INFO    ] 200
[2026-08-31 03:06:29,012.012 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:06:29,068.068 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:06:29,070.070 INFO    ] No update needed
[2026-08-31 03:06:29,072.072 INFO    ] Checking for camera pi updates...
[2026-08-31 03:06:29,109.109 INFO    ] 200
[2026-08-31 03:06:29,111.111 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:06:29,152.152 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:06:29,233.233 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:06:29,235.235 INFO    ] No camera update needed
[2026-08-31 03:06:29,238.238 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:06:29,240.240 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:06:29,245.245 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:06:29,250.250 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:06:31,291.291 INFO    ] ================================================
[2026-08-31 03:06:31,308.308 INFO    ] Launching Daemon at Mon Aug 31 03:06:31 IST 2026
[2026-08-31 03:06:31,319.319 INFO    ] ================================================
[2026-08-31 03:06:31,912.912 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:06:31
[2026-08-31 03:06:32,558.558 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:06:32,895.895 INFO    ] Initializing speech engine...
[2026-08-31 03:06:32,905.905 INFO    ] 2026-08-31 03:06:32
[2026-08-31 03:06:33,184.184 INFO    ] 2026-08-31 03:06:33
[2026-08-31 03:06:33,232.232 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:06:33,461.461 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:06:33,466.466 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:06:33,603.603 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:06:33,657.657 INFO    ] time= 31/08/2026 03:06:33
[2026-08-31 03:06:33,717.717 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:06:33,739.739 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:06:33,877.877 INFO    ] No existing commands found in stream
[2026-08-31 03:06:38,898.898 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:06:38,901.901 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-08-31 03:06:40,645.645 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 03:06:40,648.648 INFO    ] Checking for system updates...
[2026-08-31 03:06:40,685.685 INFO    ] 200
[2026-08-31 03:06:40,687.687 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:06:40,746.746 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:06:40,749.749 INFO    ] No update needed
[2026-08-31 03:06:40,751.751 INFO    ] Checking for camera pi updates...
[2026-08-31 03:06:40,785.785 INFO    ] 200
[2026-08-31 03:06:40,788.788 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:06:40,830.830 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:06:40,930.930 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:06:40,933.933 INFO    ] No camera update needed
[2026-08-31 03:06:40,935.935 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:06:40,938.938 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:06:40,943.943 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:06:40,948.948 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:06:42,988.988 INFO    ] ================================================
[2026-08-31 03:06:43,003.003 INFO    ] Launching Daemon at Mon Aug 31 03:06:42 IST 2026
[2026-08-31 03:06:43,014.014 INFO    ] ================================================
[2026-08-31 03:06:43,579.579 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:06:43
[2026-08-31 03:06:44,162.162 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:06:44,439.439 INFO    ] Initializing speech engine...
[2026-08-31 03:06:44,451.451 INFO    ] 2026-08-31 03:06:44
[2026-08-31 03:06:44,718.718 INFO    ] 2026-08-31 03:06:44
[2026-08-31 03:06:44,752.752 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:06:44,957.957 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:06:44,974.974 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:06:45,122.122 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:06:45,127.127 INFO    ] time= 31/08/2026 03:06:45
[2026-08-31 03:06:45,133.133 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:06:45,186.186 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:06:45,301.301 INFO    ] No existing commands found in stream
[2026-08-31 03:06:50,326.326 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:06:50,329.329 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-08-31 03:06:51,342.342 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 03:06:51,345.345 INFO    ] Checking for system updates...
[2026-08-31 03:06:51,385.385 INFO    ] 200
[2026-08-31 03:06:51,388.388 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:06:51,449.449 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:06:51,451.451 INFO    ] No update needed
[2026-08-31 03:06:51,454.454 INFO    ] Checking for camera pi updates...
[2026-08-31 03:06:51,488.488 INFO    ] 200
[2026-08-31 03:06:51,490.490 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:06:51,532.532 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:06:51,614.614 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:06:51,617.617 INFO    ] No camera update needed
[2026-08-31 03:06:51,619.619 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:06:51,622.622 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:06:51,627.627 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:06:51,632.632 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:06:53,671.671 INFO    ] ================================================
[2026-08-31 03:06:53,686.686 INFO    ] Launching Daemon at Mon Aug 31 03:06:53 IST 2026
[2026-08-31 03:06:53,697.697 INFO    ] ================================================
[2026-08-31 03:06:54,333.333 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:06:54
[2026-08-31 03:06:54,987.987 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:06:55,291.291 INFO    ] Initializing speech engine...
[2026-08-31 03:06:55,300.300 INFO    ] 2026-08-31 03:06:55
[2026-08-31 03:06:55,589.589 INFO    ] 2026-08-31 03:06:55
[2026-08-31 03:06:55,635.635 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:06:55,860.860 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:06:55,870.870 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:06:56,008.008 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:06:56,058.058 INFO    ] time= 31/08/2026 03:06:56
[2026-08-31 03:06:56,113.113 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:06:56,146.146 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:06:56,292.292 INFO    ] No existing commands found in stream
[2026-08-31 03:07:01,308.308 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:07:01,311.311 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-08-31 03:07:03,177.177 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 03:07:03,181.181 INFO    ] Checking for system updates...
[2026-08-31 03:07:03,223.223 INFO    ] 200
[2026-08-31 03:07:03,226.226 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:07:03,289.289 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:07:03,292.292 INFO    ] No update needed
[2026-08-31 03:07:03,296.296 INFO    ] Checking for camera pi updates...
[2026-08-31 03:07:03,334.334 INFO    ] 200
[2026-08-31 03:07:03,337.337 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:07:03,379.379 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:07:03,478.478 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:07:03,481.481 INFO    ] No camera update needed
[2026-08-31 03:07:03,483.483 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:07:03,486.486 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:07:03,492.492 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:07:03,497.497 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:07:05,539.539 INFO    ] ================================================
[2026-08-31 03:07:05,553.553 INFO    ] Launching Daemon at Mon Aug 31 03:07:05 IST 2026
[2026-08-31 03:07:05,564.564 INFO    ] ================================================
[2026-08-31 03:07:06,144.144 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:07:06
[2026-08-31 03:07:06,784.784 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:07:07,079.079 INFO    ] Initializing speech engine...
[2026-08-31 03:07:07,087.087 INFO    ] 2026-08-31 03:07:07
[2026-08-31 03:07:07,361.361 INFO    ] 2026-08-31 03:07:07
[2026-08-31 03:07:07,415.415 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:07:07,641.641 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:07:07,646.646 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:07:07,777.777 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:07:07,820.820 INFO    ] time= 31/08/2026 03:07:07
[2026-08-31 03:07:07,875.875 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:07:07,913.913 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:07:08,051.051 INFO    ] No existing commands found in stream
[2026-08-31 03:07:13,071.071 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:07:13,074.074 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-08-31 03:07:17,254.254 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 03:07:17,257.257 INFO    ] Checking for system updates...
[2026-08-31 03:07:17,294.294 INFO    ] 200
[2026-08-31 03:07:17,297.297 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:07:17,359.359 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:07:17,362.362 INFO    ] No update needed
[2026-08-31 03:07:17,365.365 INFO    ] Checking for camera pi updates...
[2026-08-31 03:07:17,399.399 INFO    ] 200
[2026-08-31 03:07:17,402.402 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:07:17,447.447 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:07:17,624.624 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:07:17,626.626 INFO    ] No camera update needed
[2026-08-31 03:07:17,629.629 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:07:17,631.631 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:07:17,637.637 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:07:17,642.642 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:07:19,682.682 INFO    ] ================================================
[2026-08-31 03:07:19,697.697 INFO    ] Launching Daemon at Mon Aug 31 03:07:19 IST 2026
[2026-08-31 03:07:19,708.708 INFO    ] ================================================
[2026-08-31 03:07:20,274.274 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:07:20
[2026-08-31 03:07:20,858.858 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:07:21,116.116 INFO    ] Initializing speech engine...
[2026-08-31 03:07:21,123.123 INFO    ] 2026-08-31 03:07:21
[2026-08-31 03:07:21,420.420 INFO    ] 2026-08-31 03:07:21
[2026-08-31 03:07:21,455.455 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:07:21,652.652 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:07:21,664.664 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:07:21,810.810 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:07:21,819.819 INFO    ] time= 31/08/2026 03:07:21
[2026-08-31 03:07:21,825.825 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:07:21,880.880 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:07:21,996.996 INFO    ] No existing commands found in stream
[2026-08-31 03:07:27,026.026 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:07:27,029.029 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-08-31 03:07:29,130.130 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 03:07:29,133.133 INFO    ] Checking for system updates...
[2026-08-31 03:07:29,169.169 INFO    ] 200
[2026-08-31 03:07:29,171.171 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:07:29,233.233 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:07:29,236.236 INFO    ] No update needed
[2026-08-31 03:07:29,239.239 INFO    ] Checking for camera pi updates...
[2026-08-31 03:07:29,282.282 INFO    ] 200
[2026-08-31 03:07:29,285.285 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:07:29,333.333 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:07:29,391.391 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:07:29,394.394 INFO    ] No camera update needed
[2026-08-31 03:07:29,396.396 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:07:29,399.399 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:07:29,405.405 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:07:29,410.410 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:07:31,451.451 INFO    ] ================================================
[2026-08-31 03:07:31,467.467 INFO    ] Launching Daemon at Mon Aug 31 03:07:31 IST 2026
[2026-08-31 03:07:31,478.478 INFO    ] ================================================
[2026-08-31 03:07:32,077.077 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:07:32
[2026-08-31 03:07:32,692.692 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:07:32,964.964 INFO    ] Initializing speech engine...
[2026-08-31 03:07:32,987.987 INFO    ] 2026-08-31 03:07:32
[2026-08-31 03:07:33,260.260 INFO    ] 2026-08-31 03:07:33
[2026-08-31 03:07:33,329.329 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:07:33,568.568 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:07:33,575.575 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:07:33,789.789 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:07:33,844.844 INFO    ] time= 31/08/2026 03:07:33
[2026-08-31 03:07:33,851.851 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:07:33,872.872 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:07:33,995.995 INFO    ] No existing commands found in stream
[2026-08-31 03:07:39,020.020 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:07:39,023.023 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-08-31 03:07:42,482.482 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 03:07:42,485.485 INFO    ] Checking for system updates...
[2026-08-31 03:07:42,524.524 INFO    ] 200
[2026-08-31 03:07:42,526.526 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:07:42,582.582 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:07:42,584.584 INFO    ] No update needed
[2026-08-31 03:07:42,587.587 INFO    ] Checking for camera pi updates...
[2026-08-31 03:07:42,620.620 INFO    ] 200
[2026-08-31 03:07:42,623.623 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:07:42,663.663 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:07:42,743.743 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:07:42,745.745 INFO    ] No camera update needed
[2026-08-31 03:07:42,748.748 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:07:42,750.750 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:07:42,756.756 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:07:42,761.761 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:07:44,802.802 INFO    ] ================================================
[2026-08-31 03:07:44,818.818 INFO    ] Launching Daemon at Mon Aug 31 03:07:44 IST 2026
[2026-08-31 03:07:44,828.828 INFO    ] ================================================
[2026-08-31 03:07:45,417.417 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:07:45
[2026-08-31 03:07:46,024.024 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:07:46,295.295 INFO    ] Initializing speech engine...
[2026-08-31 03:07:46,320.320 INFO    ] 2026-08-31 03:07:46
[2026-08-31 03:07:46,601.601 INFO    ] 2026-08-31 03:07:46
[2026-08-31 03:07:46,641.641 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:07:46,900.900 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:07:46,909.909 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:07:47,130.130 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:07:47,170.170 INFO    ] time= 31/08/2026 03:07:47
[2026-08-31 03:07:47,186.186 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:07:47,195.195 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:07:47,322.322 INFO    ] No existing commands found in stream
[2026-08-31 03:07:52,336.336 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:07:52,339.339 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-08-31 03:07:53,694.694 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 03:07:53,697.697 INFO    ] Checking for system updates...
[2026-08-31 03:07:53,738.738 INFO    ] 200
[2026-08-31 03:07:53,741.741 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:07:53,796.796 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:07:53,799.799 INFO    ] No update needed
[2026-08-31 03:07:53,802.802 INFO    ] Checking for camera pi updates...
[2026-08-31 03:07:53,841.841 INFO    ] 200
[2026-08-31 03:07:53,844.844 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:07:53,891.891 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:07:53,972.972 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:07:53,975.975 INFO    ] No camera update needed
[2026-08-31 03:07:53,978.978 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:07:53,981.981 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:07:53,988.988 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:07:53,994.994 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:07:56,034.034 INFO    ] ================================================
[2026-08-31 03:07:56,049.049 INFO    ] Launching Daemon at Mon Aug 31 03:07:56 IST 2026
[2026-08-31 03:07:56,060.060 INFO    ] ================================================
[2026-08-31 03:07:56,629.629 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:07:56
[2026-08-31 03:07:57,218.218 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:07:57,466.466 INFO    ] Initializing speech engine...
[2026-08-31 03:07:57,490.490 INFO    ] 2026-08-31 03:07:57
[2026-08-31 03:07:57,747.747 INFO    ] 2026-08-31 03:07:57
[2026-08-31 03:07:57,781.781 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:07:57,957.957 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:07:57,969.969 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:07:58,116.116 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:07:58,123.123 INFO    ] time= 31/08/2026 03:07:58
[2026-08-31 03:07:58,128.128 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:07:58,136.136 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:07:58,272.272 INFO    ] No existing commands found in stream
[2026-08-31 03:08:03,298.298 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:08:03,300.300 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-08-31 03:08:06,598.598 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 03:08:06,601.601 INFO    ] Checking for system updates...
[2026-08-31 03:08:06,638.638 INFO    ] 200
[2026-08-31 03:08:06,640.640 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:08:06,692.692 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:08:06,694.694 INFO    ] No update needed
[2026-08-31 03:08:06,697.697 INFO    ] Checking for camera pi updates...
[2026-08-31 03:08:06,730.730 INFO    ] 200
[2026-08-31 03:08:06,732.732 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:08:06,775.775 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:08:06,878.878 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:08:06,881.881 INFO    ] No camera update needed
[2026-08-31 03:08:06,883.883 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:08:06,885.885 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:08:06,891.891 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:08:06,896.896 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:08:08,938.938 INFO    ] ================================================
[2026-08-31 03:08:08,954.954 INFO    ] Launching Daemon at Mon Aug 31 03:08:08 IST 2026
[2026-08-31 03:08:08,964.964 INFO    ] ================================================
[2026-08-31 03:08:09,543.543 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:08:09
[2026-08-31 03:08:10,144.144 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:08:10,404.404 INFO    ] Initializing speech engine...
[2026-08-31 03:08:10,411.411 INFO    ] 2026-08-31 03:08:10
[2026-08-31 03:08:10,714.714 INFO    ] 2026-08-31 03:08:10
[2026-08-31 03:08:10,750.750 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:08:10,908.908 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:08:10,954.954 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:08:11,139.139 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:08:11,148.148 INFO    ] time= 31/08/2026 03:08:11
[2026-08-31 03:08:11,156.156 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:08:11,162.162 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:08:11,298.298 INFO    ] No existing commands found in stream
[2026-08-31 03:08:16,324.324 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:08:16,326.326 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-08-31 03:08:18,959.959 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 03:08:18,961.961 INFO    ] Checking for system updates...
[2026-08-31 03:08:19,001.001 INFO    ] 200
[2026-08-31 03:08:19,004.004 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:08:19,056.056 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:08:19,059.059 INFO    ] No update needed
[2026-08-31 03:08:19,063.063 INFO    ] Checking for camera pi updates...
[2026-08-31 03:08:19,100.100 INFO    ] 200
[2026-08-31 03:08:19,103.103 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:08:19,149.149 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:08:19,225.225 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:08:19,228.228 INFO    ] No camera update needed
[2026-08-31 03:08:19,230.230 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:08:19,233.233 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:08:19,238.238 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:08:19,243.243 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:08:21,283.283 INFO    ] ================================================
[2026-08-31 03:08:21,299.299 INFO    ] Launching Daemon at Mon Aug 31 03:08:21 IST 2026
[2026-08-31 03:08:21,309.309 INFO    ] ================================================
[2026-08-31 03:08:21,985.985 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:08:21
[2026-08-31 03:08:22,678.678 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:08:22,986.986 INFO    ] Initializing speech engine...
[2026-08-31 03:08:23,000.000 INFO    ] 2026-08-31 03:08:22
[2026-08-31 03:08:23,316.316 INFO    ] 2026-08-31 03:08:23
[2026-08-31 03:08:23,402.402 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:08:23,613.613 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:08:23,622.622 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:08:23,820.820 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:08:23,842.842 INFO    ] time= 31/08/2026 03:08:23
[2026-08-31 03:08:23,871.871 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:08:23,882.882 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:08:23,999.999 INFO    ] No existing commands found in stream
[2026-08-31 03:08:29,035.035 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:08:29,039.039 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-08-31 03:08:29,778.778 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 03:08:29,781.781 INFO    ] Checking for system updates...
[2026-08-31 03:08:29,819.819 INFO    ] 200
[2026-08-31 03:08:29,822.822 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:08:29,876.876 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:08:29,879.879 INFO    ] No update needed
[2026-08-31 03:08:29,882.882 INFO    ] Checking for camera pi updates...
[2026-08-31 03:08:29,921.921 INFO    ] 200
[2026-08-31 03:08:29,924.924 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:08:29,974.974 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:08:30,081.081 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:08:30,084.084 INFO    ] No camera update needed
[2026-08-31 03:08:30,087.087 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:08:30,089.089 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:08:30,096.096 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:08:30,102.102 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:08:32,146.146 INFO    ] ================================================
[2026-08-31 03:08:32,163.163 INFO    ] Launching Daemon at Mon Aug 31 03:08:32 IST 2026
[2026-08-31 03:08:32,174.174 INFO    ] ================================================
[2026-08-31 03:08:32,894.894 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:08:32
[2026-08-31 03:08:33,492.492 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:08:33,764.764 INFO    ] Initializing speech engine...
[2026-08-31 03:08:33,773.773 INFO    ] 2026-08-31 03:08:33
[2026-08-31 03:08:34,028.028 INFO    ] 2026-08-31 03:08:34
[2026-08-31 03:08:34,088.088 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:08:34,314.314 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:08:34,321.321 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:08:34,542.542 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:08:34,576.576 INFO    ] time= 31/08/2026 03:08:34
[2026-08-31 03:08:34,594.594 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:08:34,604.604 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:08:34,752.752 INFO    ] No existing commands found in stream
[2026-08-31 03:08:39,782.782 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:08:39,785.785 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-08-31 03:08:40,942.942 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 03:08:40,944.944 INFO    ] Checking for system updates...
[2026-08-31 03:08:40,980.980 INFO    ] 200
[2026-08-31 03:08:40,983.983 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:08:41,037.037 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:08:41,040.040 INFO    ] No update needed
[2026-08-31 03:08:41,042.042 INFO    ] Checking for camera pi updates...
[2026-08-31 03:08:41,075.075 INFO    ] 200
[2026-08-31 03:08:41,078.078 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:08:41,118.118 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:08:41,192.192 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:08:41,195.195 INFO    ] No camera update needed
[2026-08-31 03:08:41,197.197 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:08:41,199.199 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:08:41,205.205 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:08:41,210.210 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:08:43,253.253 INFO    ] ================================================
[2026-08-31 03:08:43,269.269 INFO    ] Launching Daemon at Mon Aug 31 03:08:43 IST 2026
[2026-08-31 03:08:43,280.280 INFO    ] ================================================
[2026-08-31 03:08:43,931.931 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:08:43
[2026-08-31 03:08:44,616.616 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:08:44,925.925 INFO    ] Initializing speech engine...
[2026-08-31 03:08:44,933.933 INFO    ] 2026-08-31 03:08:44
[2026-08-31 03:08:45,212.212 INFO    ] 2026-08-31 03:08:45
[2026-08-31 03:08:45,268.268 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:08:45,523.523 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:08:45,532.532 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:08:45,765.765 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:08:45,775.775 INFO    ] time= 31/08/2026 03:08:45
[2026-08-31 03:08:45,794.794 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:08:45,813.813 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:08:45,946.946 INFO    ] No existing commands found in stream
[2026-08-31 03:08:50,976.976 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:08:50,980.980 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-08-31 03:08:55,288.288 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 03:08:55,291.291 INFO    ] Checking for system updates...
[2026-08-31 03:08:55,329.329 INFO    ] 200
[2026-08-31 03:08:55,332.332 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:08:55,394.394 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:08:55,397.397 INFO    ] No update needed
[2026-08-31 03:08:55,400.400 INFO    ] Checking for camera pi updates...
[2026-08-31 03:08:55,440.440 INFO    ] 200
[2026-08-31 03:08:55,444.444 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:08:55,486.486 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:08:55,568.568 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:08:55,571.571 INFO    ] No camera update needed
[2026-08-31 03:08:55,574.574 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:08:55,576.576 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:08:55,583.583 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:08:55,589.589 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:08:57,629.629 INFO    ] ================================================
[2026-08-31 03:08:57,644.644 INFO    ] Launching Daemon at Mon Aug 31 03:08:57 IST 2026
[2026-08-31 03:08:57,655.655 INFO    ] ================================================
[2026-08-31 03:08:58,223.223 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:08:58
[2026-08-31 03:08:58,805.805 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:08:59,075.075 INFO    ] Initializing speech engine...
[2026-08-31 03:08:59,085.085 INFO    ] 2026-08-31 03:08:59
[2026-08-31 03:08:59,334.334 INFO    ] 2026-08-31 03:08:59
[2026-08-31 03:08:59,368.368 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:08:59,554.554 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:08:59,571.571 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:08:59,706.706 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:08:59,711.711 INFO    ] time= 31/08/2026 03:08:59
[2026-08-31 03:08:59,717.717 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:08:59,768.768 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:08:59,899.899 INFO    ] No existing commands found in stream
[2026-08-31 03:09:04,922.922 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:09:04,924.924 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-08-31 03:09:09,075.075 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 03:09:09,078.078 INFO    ] Checking for system updates...
[2026-08-31 03:09:09,115.115 INFO    ] 200
[2026-08-31 03:09:09,117.117 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:09:09,169.169 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:09:09,172.172 INFO    ] No update needed
[2026-08-31 03:09:09,174.174 INFO    ] Checking for camera pi updates...
[2026-08-31 03:09:09,212.212 INFO    ] 200
[2026-08-31 03:09:09,214.214 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:09:09,259.259 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:09:09,336.336 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:09:09,339.339 INFO    ] No camera update needed
[2026-08-31 03:09:09,341.341 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:09:09,343.343 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:09:09,349.349 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:09:09,354.354 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:09:11,395.395 INFO    ] ================================================
[2026-08-31 03:09:11,410.410 INFO    ] Launching Daemon at Mon Aug 31 03:09:11 IST 2026
[2026-08-31 03:09:11,421.421 INFO    ] ================================================
[2026-08-31 03:09:11,987.987 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:09:11
[2026-08-31 03:09:12,585.585 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:09:12,835.835 INFO    ] Initializing speech engine...
[2026-08-31 03:09:12,843.843 INFO    ] 2026-08-31 03:09:12
[2026-08-31 03:09:13,137.137 INFO    ] 2026-08-31 03:09:13
[2026-08-31 03:09:13,173.173 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:09:13,356.356 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:09:13,374.374 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:09:13,505.505 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:09:13,511.511 INFO    ] time= 31/08/2026 03:09:13
[2026-08-31 03:09:13,557.557 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:09:13,580.580 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:09:13,683.683 INFO    ] No existing commands found in stream
[2026-08-31 03:09:18,713.713 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:09:18,716.716 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-08-31 03:09:21,532.532 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 03:09:21,535.535 INFO    ] Checking for system updates...
[2026-08-31 03:09:21,571.571 INFO    ] 200
[2026-08-31 03:09:21,574.574 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:09:21,626.626 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:09:21,629.629 INFO    ] No update needed
[2026-08-31 03:09:21,631.631 INFO    ] Checking for camera pi updates...
[2026-08-31 03:09:21,668.668 INFO    ] 200
[2026-08-31 03:09:21,671.671 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:09:21,712.712 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:09:21,895.895 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:09:21,898.898 INFO    ] No camera update needed
[2026-08-31 03:09:21,900.900 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:09:21,902.902 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:09:21,908.908 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:09:21,913.913 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:09:23,954.954 INFO    ] ================================================
[2026-08-31 03:09:23,970.970 INFO    ] Launching Daemon at Mon Aug 31 03:09:23 IST 2026
[2026-08-31 03:09:23,981.981 INFO    ] ================================================
[2026-08-31 03:09:24,640.640 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:09:24
[2026-08-31 03:09:25,317.317 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:09:25,626.626 INFO    ] Initializing speech engine...
[2026-08-31 03:09:25,637.637 INFO    ] 2026-08-31 03:09:25
[2026-08-31 03:09:25,947.947 INFO    ] 2026-08-31 03:09:25
[2026-08-31 03:09:26,032.032 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:09:26,243.243 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:09:26,252.252 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:09:26,427.427 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:09:26,455.455 INFO    ] time= 31/08/2026 03:09:26
[2026-08-31 03:09:26,471.471 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:09:26,480.480 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:09:26,594.594 INFO    ] No existing commands found in stream
[2026-08-31 03:09:31,618.618 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:09:31,621.621 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-08-31 03:09:34,012.012 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 03:09:34,015.015 INFO    ] Checking for system updates...
[2026-08-31 03:09:34,052.052 INFO    ] 200
[2026-08-31 03:09:34,055.055 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:09:34,110.110 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:09:34,113.113 INFO    ] No update needed
[2026-08-31 03:09:34,116.116 INFO    ] Checking for camera pi updates...
[2026-08-31 03:09:34,150.150 INFO    ] 200
[2026-08-31 03:09:34,152.152 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:09:34,192.192 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:09:34,289.289 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:09:34,291.291 INFO    ] No camera update needed
[2026-08-31 03:09:34,294.294 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:09:34,296.296 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:09:34,301.301 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:09:34,306.306 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:09:36,347.347 INFO    ] ================================================
[2026-08-31 03:09:36,362.362 INFO    ] Launching Daemon at Mon Aug 31 03:09:36 IST 2026
[2026-08-31 03:09:36,373.373 INFO    ] ================================================
[2026-08-31 03:09:36,940.940 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:09:36
[2026-08-31 03:09:37,525.525 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:09:37,792.792 INFO    ] Initializing speech engine...
[2026-08-31 03:09:37,801.801 INFO    ] 2026-08-31 03:09:37
[2026-08-31 03:09:38,048.048 INFO    ] 2026-08-31 03:09:38
[2026-08-31 03:09:38,084.084 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:09:38,334.334 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:09:38,343.343 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:09:38,514.514 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:09:38,584.584 INFO    ] time= 31/08/2026 03:09:38
[2026-08-31 03:09:38,606.606 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:09:38,622.622 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:09:38,758.758 INFO    ] No existing commands found in stream
[2026-08-31 03:09:43,780.780 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:09:43,783.783 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-08-31 03:09:47,095.095 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 03:09:47,097.097 INFO    ] Checking for system updates...
[2026-08-31 03:09:47,138.138 INFO    ] 200
[2026-08-31 03:09:47,141.141 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:09:47,201.201 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:09:47,203.203 INFO    ] No update needed
[2026-08-31 03:09:47,205.205 INFO    ] Checking for camera pi updates...
[2026-08-31 03:09:47,243.243 INFO    ] 200
[2026-08-31 03:09:47,246.246 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:09:47,287.287 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:09:47,388.388 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:09:47,391.391 INFO    ] No camera update needed
[2026-08-31 03:09:47,393.393 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:09:47,395.395 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:09:47,401.401 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:09:47,405.405 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:09:49,448.448 INFO    ] ================================================
[2026-08-31 03:09:49,463.463 INFO    ] Launching Daemon at Mon Aug 31 03:09:49 IST 2026
[2026-08-31 03:09:49,473.473 INFO    ] ================================================
[2026-08-31 03:09:50,043.043 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:09:50
[2026-08-31 03:09:50,626.626 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:09:50,876.876 INFO    ] Initializing speech engine...
[2026-08-31 03:09:50,898.898 INFO    ] 2026-08-31 03:09:50
[2026-08-31 03:09:51,151.151 INFO    ] 2026-08-31 03:09:51
[2026-08-31 03:09:51,186.186 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:09:51,358.358 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:09:51,370.370 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:09:51,513.513 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:09:51,518.518 INFO    ] time= 31/08/2026 03:09:51
[2026-08-31 03:09:51,524.524 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:09:51,570.570 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:09:51,701.701 INFO    ] No existing commands found in stream
[2026-08-31 03:09:56,723.723 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:09:56,726.726 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-08-31 03:09:58,053.053 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 03:09:58,056.056 INFO    ] Checking for system updates...
[2026-08-31 03:09:58,094.094 INFO    ] 200
[2026-08-31 03:09:58,097.097 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:09:58,151.151 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:09:58,153.153 INFO    ] No update needed
[2026-08-31 03:09:58,156.156 INFO    ] Checking for camera pi updates...
[2026-08-31 03:09:58,189.189 INFO    ] 200
[2026-08-31 03:09:58,192.192 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:09:58,233.233 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:09:58,329.329 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:09:58,331.331 INFO    ] No camera update needed
[2026-08-31 03:09:58,334.334 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:09:58,336.336 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:09:58,341.341 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:09:58,346.346 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:10:00,387.387 INFO    ] ================================================
[2026-08-31 03:10:00,403.403 INFO    ] Launching Daemon at Mon Aug 31 03:10:00 IST 2026
[2026-08-31 03:10:00,413.413 INFO    ] ================================================
[2026-08-31 03:10:00,977.977 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:10:00
[2026-08-31 03:10:01,569.569 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:10:02,291.291 INFO    ] Initializing speech engine...
[2026-08-31 03:10:02,294.294 INFO    ] 2026-08-31 03:10:02
[2026-08-31 03:10:02,769.769 INFO    ] 2026-08-31 03:10:02
[2026-08-31 03:10:02,877.877 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:10:03,038.038 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:10:03,042.042 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:10:03,201.201 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:10:03,205.205 INFO    ] time= 31/08/2026 03:10:03
[2026-08-31 03:10:03,209.209 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:10:03,213.213 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:10:03,275.275 INFO    ] No existing commands found in stream
[2026-08-31 03:10:08,286.286 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:10:08,289.289 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-08-31 03:10:10,499.499 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 03:10:10,502.502 INFO    ] Checking for system updates...
[2026-08-31 03:10:10,539.539 INFO    ] 200
[2026-08-31 03:10:10,542.542 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:10:10,596.596 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:10:10,599.599 INFO    ] No update needed
[2026-08-31 03:10:10,602.602 INFO    ] Checking for camera pi updates...
[2026-08-31 03:10:10,641.641 INFO    ] 200
[2026-08-31 03:10:10,644.644 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:10:10,689.689 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:10:10,756.756 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:10:10,759.759 INFO    ] No camera update needed
[2026-08-31 03:10:10,761.761 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:10:10,764.764 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:10:10,769.769 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:10:10,774.774 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:10:12,814.814 INFO    ] ================================================
[2026-08-31 03:10:12,829.829 INFO    ] Launching Daemon at Mon Aug 31 03:10:12 IST 2026
[2026-08-31 03:10:12,839.839 INFO    ] ================================================
[2026-08-31 03:10:13,480.480 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:10:13
[2026-08-31 03:10:14,141.141 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:10:14,441.441 INFO    ] Initializing speech engine...
[2026-08-31 03:10:14,454.454 INFO    ] 2026-08-31 03:10:14
[2026-08-31 03:10:14,732.732 INFO    ] 2026-08-31 03:10:14
[2026-08-31 03:10:14,777.777 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:10:15,024.024 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:10:15,030.030 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:10:15,245.245 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:10:15,266.266 INFO    ] time= 31/08/2026 03:10:15
[2026-08-31 03:10:15,285.285 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:10:15,314.314 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:10:15,421.421 INFO    ] No existing commands found in stream
[2026-08-31 03:10:20,450.450 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:10:20,453.453 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-08-31 03:10:24,897.897 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 03:10:24,900.900 INFO    ] Checking for system updates...
[2026-08-31 03:10:24,936.936 INFO    ] 200
[2026-08-31 03:10:24,939.939 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:10:24,993.993 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:10:24,995.995 INFO    ] No update needed
[2026-08-31 03:10:24,997.997 INFO    ] Checking for camera pi updates...
[2026-08-31 03:10:25,031.031 INFO    ] 200
[2026-08-31 03:10:25,033.033 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:10:25,073.073 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:10:25,152.152 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:10:25,154.154 INFO    ] No camera update needed
[2026-08-31 03:10:25,157.157 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:10:25,159.159 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:10:25,164.164 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:10:25,169.169 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:10:27,210.210 INFO    ] ================================================
[2026-08-31 03:10:27,225.225 INFO    ] Launching Daemon at Mon Aug 31 03:10:27 IST 2026
[2026-08-31 03:10:27,236.236 INFO    ] ================================================
[2026-08-31 03:10:27,847.847 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:10:27
[2026-08-31 03:10:28,431.431 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:10:28,685.685 INFO    ] Initializing speech engine...
[2026-08-31 03:10:28,700.700 INFO    ] 2026-08-31 03:10:28
[2026-08-31 03:10:28,964.964 INFO    ] 2026-08-31 03:10:28
[2026-08-31 03:10:29,000.000 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:10:29,197.197 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:10:29,204.204 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:10:29,399.399 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:10:29,409.409 INFO    ] time= 31/08/2026 03:10:29
[2026-08-31 03:10:29,453.453 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:10:29,497.497 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:10:29,598.598 INFO    ] No existing commands found in stream
[2026-08-31 03:10:34,613.613 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:10:34,615.615 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-08-31 03:10:38,926.926 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 03:10:38,928.928 INFO    ] Checking for system updates...
[2026-08-31 03:10:38,967.967 INFO    ] 200
[2026-08-31 03:10:38,969.969 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:10:39,022.022 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:10:39,025.025 INFO    ] No update needed
[2026-08-31 03:10:39,027.027 INFO    ] Checking for camera pi updates...
[2026-08-31 03:10:39,063.063 INFO    ] 200
[2026-08-31 03:10:39,066.066 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:10:39,106.106 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:10:39,180.180 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:10:39,182.182 INFO    ] No camera update needed
[2026-08-31 03:10:39,184.184 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:10:39,186.186 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:10:39,192.192 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:10:39,197.197 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:10:41,239.239 INFO    ] ================================================
[2026-08-31 03:10:41,253.253 INFO    ] Launching Daemon at Mon Aug 31 03:10:41 IST 2026
[2026-08-31 03:10:41,264.264 INFO    ] ================================================
[2026-08-31 03:10:41,833.833 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:10:41
[2026-08-31 03:10:42,418.418 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:10:42,676.676 INFO    ] Initializing speech engine...
[2026-08-31 03:10:42,692.692 INFO    ] 2026-08-31 03:10:42
[2026-08-31 03:10:42,945.945 INFO    ] 2026-08-31 03:10:42
[2026-08-31 03:10:42,980.980 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:10:43,232.232 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:10:43,241.241 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:10:43,373.373 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:10:43,420.420 INFO    ] time= 31/08/2026 03:10:43
[2026-08-31 03:10:43,469.469 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:10:43,506.506 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:10:43,559.559 INFO    ] No existing commands found in stream
[2026-08-31 03:10:48,571.571 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:10:48,574.574 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-08-31 03:10:50,520.520 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 03:10:50,523.523 INFO    ] Checking for system updates...
[2026-08-31 03:10:50,560.560 INFO    ] 200
[2026-08-31 03:10:50,563.563 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:10:50,616.616 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:10:50,619.619 INFO    ] No update needed
[2026-08-31 03:10:50,621.621 INFO    ] Checking for camera pi updates...
[2026-08-31 03:10:50,656.656 INFO    ] 200
[2026-08-31 03:10:50,659.659 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:10:50,700.700 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:10:50,765.765 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:10:50,768.768 INFO    ] No camera update needed
[2026-08-31 03:10:50,771.771 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:10:50,773.773 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:10:50,779.779 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:10:50,785.785 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:10:52,826.826 INFO    ] ================================================
[2026-08-31 03:10:52,841.841 INFO    ] Launching Daemon at Mon Aug 31 03:10:52 IST 2026
[2026-08-31 03:10:52,851.851 INFO    ] ================================================
[2026-08-31 03:10:53,420.420 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:10:53
[2026-08-31 03:10:54,006.006 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:10:54,274.274 INFO    ] Initializing speech engine...
[2026-08-31 03:10:54,283.283 INFO    ] 2026-08-31 03:10:54
[2026-08-31 03:10:54,536.536 INFO    ] 2026-08-31 03:10:54
[2026-08-31 03:10:54,571.571 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:10:54,773.773 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:10:54,832.832 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:10:54,973.973 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:10:55,027.027 INFO    ] time= 31/08/2026 03:10:54
[2026-08-31 03:10:55,081.081 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:10:55,110.110 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:10:55,257.257 INFO    ] No existing commands found in stream
[2026-08-31 03:11:00,269.269 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:11:00,272.272 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-08-31 03:11:04,650.650 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 03:11:04,653.653 INFO    ] Checking for system updates...
[2026-08-31 03:11:04,689.689 INFO    ] 200
[2026-08-31 03:11:04,691.691 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:11:04,748.748 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:11:04,751.751 INFO    ] No update needed
[2026-08-31 03:11:04,753.753 INFO    ] Checking for camera pi updates...
[2026-08-31 03:11:04,786.786 INFO    ] 200
[2026-08-31 03:11:04,788.788 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:11:04,828.828 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:11:04,899.899 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:11:04,902.902 INFO    ] No camera update needed
[2026-08-31 03:11:04,904.904 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:11:04,906.906 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:11:04,912.912 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:11:04,917.917 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:11:06,958.958 INFO    ] ================================================
[2026-08-31 03:11:06,974.974 INFO    ] Launching Daemon at Mon Aug 31 03:11:06 IST 2026
[2026-08-31 03:11:06,984.984 INFO    ] ================================================
[2026-08-31 03:11:07,569.569 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:11:07
[2026-08-31 03:11:08,167.167 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:11:08,425.425 INFO    ] Initializing speech engine...
[2026-08-31 03:11:08,431.431 INFO    ] 2026-08-31 03:11:08
[2026-08-31 03:11:08,721.721 INFO    ] 2026-08-31 03:11:08
[2026-08-31 03:11:08,758.758 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:11:08,962.962 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:11:08,983.983 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:11:09,198.198 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:11:09,205.205 INFO    ] time= 31/08/2026 03:11:09
[2026-08-31 03:11:09,260.260 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:11:09,314.314 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:11:09,406.406 INFO    ] No existing commands found in stream
[2026-08-31 03:11:14,417.417 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:11:14,420.420 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-08-31 03:11:15,445.445 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 03:11:15,448.448 INFO    ] Checking for system updates...
[2026-08-31 03:11:15,484.484 INFO    ] 200
[2026-08-31 03:11:15,487.487 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:11:15,544.544 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:11:15,546.546 INFO    ] No update needed
[2026-08-31 03:11:15,549.549 INFO    ] Checking for camera pi updates...
[2026-08-31 03:11:15,582.582 INFO    ] 200
[2026-08-31 03:11:15,584.584 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:11:15,625.625 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:11:15,707.707 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:11:15,709.709 INFO    ] No camera update needed
[2026-08-31 03:11:15,712.712 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:11:15,714.714 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:11:15,719.719 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:11:15,724.724 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:11:17,766.766 INFO    ] ================================================
[2026-08-31 03:11:17,780.780 INFO    ] Launching Daemon at Mon Aug 31 03:11:17 IST 2026
[2026-08-31 03:11:17,791.791 INFO    ] ================================================
[2026-08-31 03:11:18,366.366 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:11:18
[2026-08-31 03:11:18,956.956 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:11:19,212.212 INFO    ] Initializing speech engine...
[2026-08-31 03:11:19,219.219 INFO    ] 2026-08-31 03:11:19
[2026-08-31 03:11:19,509.509 INFO    ] 2026-08-31 03:11:19
[2026-08-31 03:11:19,546.546 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:11:19,738.738 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:11:19,751.751 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:11:19,898.898 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:11:19,917.917 INFO    ] time= 31/08/2026 03:11:19
[2026-08-31 03:11:19,923.923 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:11:19,929.929 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:11:20,000.000 INFO    ] No existing commands found in stream
[2026-08-31 03:11:25,013.013 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:11:25,015.015 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-08-31 03:11:28,685.685 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 03:11:28,688.688 INFO    ] Checking for system updates...
[2026-08-31 03:11:28,724.724 INFO    ] 200
[2026-08-31 03:11:28,726.726 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:11:28,779.779 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:11:28,782.782 INFO    ] No update needed
[2026-08-31 03:11:28,784.784 INFO    ] Checking for camera pi updates...
[2026-08-31 03:11:28,817.817 INFO    ] 200
[2026-08-31 03:11:28,820.820 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:11:28,863.863 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:11:29,066.066 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:11:29,069.069 INFO    ] No camera update needed
[2026-08-31 03:11:29,072.072 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:11:29,074.074 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:11:29,080.080 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:11:29,085.085 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:11:31,125.125 INFO    ] ================================================
[2026-08-31 03:11:31,140.140 INFO    ] Launching Daemon at Mon Aug 31 03:11:31 IST 2026
[2026-08-31 03:11:31,151.151 INFO    ] ================================================
[2026-08-31 03:11:31,847.847 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:11:31
[2026-08-31 03:11:32,553.553 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:11:32,850.850 INFO    ] Initializing speech engine...
[2026-08-31 03:11:32,859.859 INFO    ] 2026-08-31 03:11:32
[2026-08-31 03:11:33,176.176 INFO    ] 2026-08-31 03:11:33
[2026-08-31 03:11:33,260.260 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:11:33,423.423 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:11:33,428.428 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:11:33,647.647 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:11:33,686.686 INFO    ] time= 31/08/2026 03:11:33
[2026-08-31 03:11:33,704.704 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:11:33,713.713 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:11:33,843.843 INFO    ] No existing commands found in stream
[2026-08-31 03:11:38,866.866 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:11:38,869.869 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-08-31 03:11:43,090.090 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 03:11:43,093.093 INFO    ] Checking for system updates...
[2026-08-31 03:11:43,128.128 INFO    ] 200
[2026-08-31 03:11:43,131.131 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:11:43,183.183 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:11:43,186.186 INFO    ] No update needed
[2026-08-31 03:11:43,188.188 INFO    ] Checking for camera pi updates...
[2026-08-31 03:11:43,222.222 INFO    ] 200
[2026-08-31 03:11:43,224.224 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:11:43,264.264 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:11:43,360.360 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:11:43,362.362 INFO    ] No camera update needed
[2026-08-31 03:11:43,364.364 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:11:43,366.366 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:11:43,372.372 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:11:43,377.377 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:11:45,416.416 INFO    ] ================================================
[2026-08-31 03:11:45,432.432 INFO    ] Launching Daemon at Mon Aug 31 03:11:45 IST 2026
[2026-08-31 03:11:45,443.443 INFO    ] ================================================
[2026-08-31 03:11:46,086.086 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:11:46
[2026-08-31 03:11:46,752.752 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:11:47,054.054 INFO    ] Initializing speech engine...
[2026-08-31 03:11:47,066.066 INFO    ] 2026-08-31 03:11:47
[2026-08-31 03:11:47,338.338 INFO    ] 2026-08-31 03:11:47
[2026-08-31 03:11:47,392.392 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:11:47,621.621 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:11:47,631.631 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:11:47,768.768 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:11:47,833.833 INFO    ] time= 31/08/2026 03:11:47
[2026-08-31 03:11:47,888.888 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:11:47,906.906 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:11:48,035.035 INFO    ] No existing commands found in stream
[2026-08-31 03:11:53,061.061 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:11:53,064.064 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-08-31 03:11:55,138.138 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 03:11:55,142.142 INFO    ] Checking for system updates...
[2026-08-31 03:11:55,182.182 INFO    ] 200
[2026-08-31 03:11:55,185.185 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:11:55,249.249 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:11:55,252.252 INFO    ] No update needed
[2026-08-31 03:11:55,255.255 INFO    ] Checking for camera pi updates...
[2026-08-31 03:11:55,293.293 INFO    ] 200
[2026-08-31 03:11:55,296.296 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:11:55,336.336 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:11:55,417.417 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:11:55,420.420 INFO    ] No camera update needed
[2026-08-31 03:11:55,423.423 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:11:55,425.425 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:11:55,432.432 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:11:55,437.437 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:11:57,478.478 INFO    ] ================================================
[2026-08-31 03:11:57,493.493 INFO    ] Launching Daemon at Mon Aug 31 03:11:57 IST 2026
[2026-08-31 03:11:57,504.504 INFO    ] ================================================
[2026-08-31 03:11:58,070.070 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:11:58
[2026-08-31 03:11:58,653.653 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:11:58,900.900 INFO    ] Initializing speech engine...
[2026-08-31 03:11:58,915.915 INFO    ] 2026-08-31 03:11:58
[2026-08-31 03:11:59,180.180 INFO    ] 2026-08-31 03:11:59
[2026-08-31 03:11:59,215.215 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:11:59,389.389 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:11:59,401.401 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:11:59,549.549 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:11:59,557.557 INFO    ] time= 31/08/2026 03:11:59
[2026-08-31 03:11:59,583.583 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:11:59,625.625 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:11:59,733.733 INFO    ] No existing commands found in stream
[2026-08-31 03:12:04,759.759 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:12:04,761.761 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-08-31 03:12:07,956.956 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 03:12:07,959.959 INFO    ] Checking for system updates...
[2026-08-31 03:12:07,994.994 INFO    ] 200
[2026-08-31 03:12:07,996.996 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:12:08,051.051 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:12:08,053.053 INFO    ] No update needed
[2026-08-31 03:12:08,056.056 INFO    ] Checking for camera pi updates...
[2026-08-31 03:12:08,100.100 INFO    ] 200
[2026-08-31 03:12:08,102.102 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:12:08,142.142 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:12:08,241.241 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:12:08,243.243 INFO    ] No camera update needed
[2026-08-31 03:12:08,246.246 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:12:08,248.248 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:12:08,253.253 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:12:08,258.258 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:12:10,301.301 INFO    ] ================================================
[2026-08-31 03:12:10,317.317 INFO    ] Launching Daemon at Mon Aug 31 03:12:10 IST 2026
[2026-08-31 03:12:10,328.328 INFO    ] ================================================
[2026-08-31 03:12:10,966.966 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:12:10
[2026-08-31 03:12:11,623.623 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:12:11,923.923 INFO    ] Initializing speech engine...
[2026-08-31 03:12:11,929.929 INFO    ] 2026-08-31 03:12:11
[2026-08-31 03:12:12,201.201 INFO    ] 2026-08-31 03:12:12
[2026-08-31 03:12:12,236.236 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:12:12,489.489 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:12:12,498.498 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:12:12,636.636 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:12:12,697.697 INFO    ] time= 31/08/2026 03:12:12
[2026-08-31 03:12:12,757.757 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:12:12,774.774 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:12:12,890.890 INFO    ] No existing commands found in stream
[2026-08-31 03:12:17,913.913 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:12:17,916.916 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-08-31 03:12:20,576.576 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 03:12:20,579.579 INFO    ] Checking for system updates...
[2026-08-31 03:12:20,617.617 INFO    ] 200
[2026-08-31 03:12:20,620.620 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:12:20,673.673 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:12:20,676.676 INFO    ] No update needed
[2026-08-31 03:12:20,679.679 INFO    ] Checking for camera pi updates...
[2026-08-31 03:12:20,713.713 INFO    ] 200
[2026-08-31 03:12:20,716.716 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:12:20,757.757 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:12:20,818.818 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:12:20,821.821 INFO    ] No camera update needed
[2026-08-31 03:12:20,823.823 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:12:20,826.826 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:12:20,832.832 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:12:20,838.838 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:12:22,878.878 INFO    ] ================================================
[2026-08-31 03:12:22,892.892 INFO    ] Launching Daemon at Mon Aug 31 03:12:22 IST 2026
[2026-08-31 03:12:22,903.903 INFO    ] ================================================
[2026-08-31 03:12:23,518.518 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:12:23
[2026-08-31 03:12:24,104.104 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:12:24,372.372 INFO    ] Initializing speech engine...
[2026-08-31 03:12:24,381.381 INFO    ] 2026-08-31 03:12:24
[2026-08-31 03:12:24,650.650 INFO    ] 2026-08-31 03:12:24
[2026-08-31 03:12:24,704.704 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:12:24,928.928 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:12:24,937.937 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:12:25,076.076 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:12:25,144.144 INFO    ] time= 31/08/2026 03:12:25
[2026-08-31 03:12:25,204.204 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:12:25,219.219 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:12:25,353.353 INFO    ] No existing commands found in stream
[2026-08-31 03:12:30,372.372 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:12:30,375.375 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-08-31 03:12:32,611.611 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 03:12:32,614.614 INFO    ] Checking for system updates...
[2026-08-31 03:12:32,655.655 INFO    ] 200
[2026-08-31 03:12:32,659.659 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:12:32,724.724 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:12:32,727.727 INFO    ] No update needed
[2026-08-31 03:12:32,730.730 INFO    ] Checking for camera pi updates...
[2026-08-31 03:12:32,766.766 INFO    ] 200
[2026-08-31 03:12:32,769.769 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:12:32,818.818 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:12:32,877.877 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:12:32,880.880 INFO    ] No camera update needed
[2026-08-31 03:12:32,883.883 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:12:32,886.886 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:12:32,892.892 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:12:32,898.898 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:12:34,940.940 INFO    ] ================================================
[2026-08-31 03:12:34,955.955 INFO    ] Launching Daemon at Mon Aug 31 03:12:34 IST 2026
[2026-08-31 03:12:34,965.965 INFO    ] ================================================
[2026-08-31 03:12:35,555.555 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:12:35
[2026-08-31 03:12:36,174.174 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:12:36,445.445 INFO    ] Initializing speech engine...
[2026-08-31 03:12:36,454.454 INFO    ] 2026-08-31 03:12:36
[2026-08-31 03:12:36,703.703 INFO    ] 2026-08-31 03:12:36
[2026-08-31 03:12:36,770.770 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:12:36,992.992 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:12:37,001.001 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:12:37,135.135 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:12:37,178.178 INFO    ] time= 31/08/2026 03:12:37
[2026-08-31 03:12:37,242.242 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:12:37,271.271 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:12:37,402.402 INFO    ] No existing commands found in stream
[2026-08-31 03:12:42,424.424 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:12:42,426.426 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-08-31 03:12:45,159.159 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 03:12:45,162.162 INFO    ] Checking for system updates...
[2026-08-31 03:12:45,199.199 INFO    ] 200
[2026-08-31 03:12:45,202.202 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:12:45,255.255 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:12:45,258.258 INFO    ] No update needed
[2026-08-31 03:12:45,261.261 INFO    ] Checking for camera pi updates...
[2026-08-31 03:12:45,297.297 INFO    ] 200
[2026-08-31 03:12:45,300.300 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:12:45,344.344 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:12:45,440.440 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:12:45,443.443 INFO    ] No camera update needed
[2026-08-31 03:12:45,445.445 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:12:45,448.448 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:12:45,453.453 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:12:45,458.458 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:12:47,500.500 INFO    ] ================================================
[2026-08-31 03:12:47,515.515 INFO    ] Launching Daemon at Mon Aug 31 03:12:47 IST 2026
[2026-08-31 03:12:47,525.525 INFO    ] ================================================
[2026-08-31 03:12:48,126.126 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:12:48
[2026-08-31 03:12:48,728.728 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:12:49,003.003 INFO    ] Initializing speech engine...
[2026-08-31 03:12:49,009.009 INFO    ] 2026-08-31 03:12:49
[2026-08-31 03:12:49,257.257 INFO    ] 2026-08-31 03:12:49
[2026-08-31 03:12:49,293.293 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:12:49,490.490 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:12:49,546.546 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:12:49,684.684 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:12:49,721.721 INFO    ] time= 31/08/2026 03:12:49
[2026-08-31 03:12:49,770.770 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:12:49,816.816 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:12:49,959.959 INFO    ] No existing commands found in stream
[2026-08-31 03:12:54,974.974 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:12:54,977.977 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-08-31 03:12:59,315.315 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 03:12:59,318.318 INFO    ] Checking for system updates...
[2026-08-31 03:12:59,353.353 INFO    ] 200
[2026-08-31 03:12:59,355.355 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:12:59,411.411 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:12:59,413.413 INFO    ] No update needed
[2026-08-31 03:12:59,415.415 INFO    ] Checking for camera pi updates...
[2026-08-31 03:12:59,449.449 INFO    ] 200
[2026-08-31 03:12:59,451.451 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:12:59,493.493 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:12:59,590.590 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:12:59,592.592 INFO    ] No camera update needed
[2026-08-31 03:12:59,594.594 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:12:59,597.597 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:12:59,603.603 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:12:59,608.608 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:13:01,648.648 INFO    ] ================================================
[2026-08-31 03:13:01,663.663 INFO    ] Launching Daemon at Mon Aug 31 03:13:01 IST 2026
[2026-08-31 03:13:01,674.674 INFO    ] ================================================
[2026-08-31 03:13:02,344.344 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:13:02
[2026-08-31 03:13:02,999.999 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:13:03,275.275 INFO    ] Initializing speech engine...
[2026-08-31 03:13:03,290.290 INFO    ] 2026-08-31 03:13:03
[2026-08-31 03:13:03,610.610 INFO    ] 2026-08-31 03:13:03
[2026-08-31 03:13:03,652.652 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:13:03,862.862 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:13:03,868.868 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:13:04,030.030 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:13:04,036.036 INFO    ] time= 31/08/2026 03:13:04
[2026-08-31 03:13:04,081.081 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:13:04,102.102 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:13:04,228.228 INFO    ] No existing commands found in stream
[2026-08-31 03:13:09,241.241 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:13:09,244.244 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-08-31 03:13:12,366.366 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 03:13:12,369.369 INFO    ] Checking for system updates...
[2026-08-31 03:13:12,408.408 INFO    ] 200
[2026-08-31 03:13:12,411.411 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:13:12,462.462 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:13:12,465.465 INFO    ] No update needed
[2026-08-31 03:13:12,467.467 INFO    ] Checking for camera pi updates...
[2026-08-31 03:13:12,504.504 INFO    ] 200
[2026-08-31 03:13:12,506.506 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:13:12,546.546 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:13:12,602.602 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:13:12,605.605 INFO    ] No camera update needed
[2026-08-31 03:13:12,607.607 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:13:12,609.609 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:13:12,615.615 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:13:12,620.620 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:13:14,661.661 INFO    ] ================================================
[2026-08-31 03:13:14,676.676 INFO    ] Launching Daemon at Mon Aug 31 03:13:14 IST 2026
[2026-08-31 03:13:14,686.686 INFO    ] ================================================
[2026-08-31 03:13:15,276.276 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:13:15
[2026-08-31 03:13:15,876.876 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:13:16,148.148 INFO    ] Initializing speech engine...
[2026-08-31 03:13:16,158.158 INFO    ] 2026-08-31 03:13:16
[2026-08-31 03:13:16,420.420 INFO    ] 2026-08-31 03:13:16
[2026-08-31 03:13:16,476.476 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:13:16,700.700 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:13:16,706.706 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:13:16,920.920 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:13:16,962.962 INFO    ] time= 31/08/2026 03:13:16
[2026-08-31 03:13:16,968.968 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:13:16,986.986 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:13:17,118.118 INFO    ] No existing commands found in stream
[2026-08-31 03:13:22,136.136 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:13:22,139.139 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-08-31 03:13:25,321.321 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 03:13:25,324.324 INFO    ] Checking for system updates...
[2026-08-31 03:13:25,363.363 INFO    ] 200
[2026-08-31 03:13:25,366.366 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:13:25,425.425 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:13:25,427.427 INFO    ] No update needed
[2026-08-31 03:13:25,430.430 INFO    ] Checking for camera pi updates...
[2026-08-31 03:13:25,466.466 INFO    ] 200
[2026-08-31 03:13:25,469.469 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:13:25,509.509 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:13:25,587.587 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:13:25,590.590 INFO    ] No camera update needed
[2026-08-31 03:13:25,592.592 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:13:25,594.594 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:13:25,600.600 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:13:25,604.604 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:13:27,646.646 INFO    ] ================================================
[2026-08-31 03:13:27,661.661 INFO    ] Launching Daemon at Mon Aug 31 03:13:27 IST 2026
[2026-08-31 03:13:27,672.672 INFO    ] ================================================
[2026-08-31 03:13:28,252.252 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:13:28
[2026-08-31 03:13:28,850.850 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:13:29,114.114 INFO    ] Initializing speech engine...
[2026-08-31 03:13:29,121.121 INFO    ] 2026-08-31 03:13:29
[2026-08-31 03:13:29,417.417 INFO    ] 2026-08-31 03:13:29
[2026-08-31 03:13:29,452.452 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:13:29,652.652 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:13:29,658.658 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:13:29,792.792 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:13:29,797.797 INFO    ] time= 31/08/2026 03:13:29
[2026-08-31 03:13:29,804.804 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:13:29,818.818 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:13:29,926.926 INFO    ] No existing commands found in stream
[2026-08-31 03:13:34,939.939 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:13:34,942.942 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-08-31 03:13:36,171.171 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 03:13:36,174.174 INFO    ] Checking for system updates...
[2026-08-31 03:13:36,215.215 INFO    ] 200
[2026-08-31 03:13:36,218.218 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:13:36,278.278 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:13:36,281.281 INFO    ] No update needed
[2026-08-31 03:13:36,284.284 INFO    ] Checking for camera pi updates...
[2026-08-31 03:13:36,326.326 INFO    ] 200
[2026-08-31 03:13:36,329.329 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:13:36,401.401 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:13:36,487.487 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:13:36,489.489 INFO    ] No camera update needed
[2026-08-31 03:13:36,492.492 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:13:36,494.494 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:13:36,500.500 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:13:36,505.505 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:13:38,545.545 INFO    ] ================================================
[2026-08-31 03:13:38,561.561 INFO    ] Launching Daemon at Mon Aug 31 03:13:38 IST 2026
[2026-08-31 03:13:38,571.571 INFO    ] ================================================
[2026-08-31 03:13:39,223.223 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:13:39
[2026-08-31 03:13:39,897.897 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:13:40,200.200 INFO    ] Initializing speech engine...
[2026-08-31 03:13:40,214.214 INFO    ] 2026-08-31 03:13:40
[2026-08-31 03:13:40,525.525 INFO    ] 2026-08-31 03:13:40
[2026-08-31 03:13:40,611.611 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:13:40,831.831 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:13:40,891.891 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:13:41,028.028 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:13:41,044.044 INFO    ] time= 31/08/2026 03:13:41
[2026-08-31 03:13:41,069.069 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:13:41,084.084 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:13:41,197.197 INFO    ] No existing commands found in stream
[2026-08-31 03:13:46,227.227 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:13:46,230.230 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-08-31 03:13:47,773.773 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 03:13:47,776.776 INFO    ] Checking for system updates...
[2026-08-31 03:13:47,813.813 INFO    ] 200
[2026-08-31 03:13:47,816.816 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:13:47,876.876 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:13:47,879.879 INFO    ] No update needed
[2026-08-31 03:13:47,882.882 INFO    ] Checking for camera pi updates...
[2026-08-31 03:13:47,916.916 INFO    ] 200
[2026-08-31 03:13:47,919.919 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:13:47,965.965 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:13:48,044.044 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:13:48,047.047 INFO    ] No camera update needed
[2026-08-31 03:13:48,050.050 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:13:48,053.053 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:13:48,059.059 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:13:48,064.064 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:13:50,105.105 INFO    ] ================================================
[2026-08-31 03:13:50,123.123 INFO    ] Launching Daemon at Mon Aug 31 03:13:50 IST 2026
[2026-08-31 03:13:50,134.134 INFO    ] ================================================
[2026-08-31 03:13:50,781.781 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:13:50
[2026-08-31 03:13:51,448.448 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:13:51,752.752 INFO    ] Initializing speech engine...
[2026-08-31 03:13:51,765.765 INFO    ] 2026-08-31 03:13:51
[2026-08-31 03:13:52,078.078 INFO    ] 2026-08-31 03:13:52
[2026-08-31 03:13:52,163.163 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:13:52,376.376 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:13:52,385.385 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:13:52,582.582 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:13:52,603.603 INFO    ] time= 31/08/2026 03:13:52
[2026-08-31 03:13:52,635.635 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:13:52,644.644 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:13:52,743.743 INFO    ] No existing commands found in stream
[2026-08-31 03:13:57,760.760 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:13:57,763.763 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-08-31 03:13:59,888.888 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 03:13:59,891.891 INFO    ] Checking for system updates...
[2026-08-31 03:13:59,928.928 INFO    ] 200
[2026-08-31 03:13:59,931.931 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:13:59,983.983 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:13:59,986.986 INFO    ] No update needed
[2026-08-31 03:13:59,989.989 INFO    ] Checking for camera pi updates...
[2026-08-31 03:14:00,023.023 INFO    ] 200
[2026-08-31 03:14:00,026.026 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:14:00,068.068 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:14:00,135.135 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:14:00,138.138 INFO    ] No camera update needed
[2026-08-31 03:14:00,141.141 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:14:00,144.144 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:14:00,151.151 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:14:00,157.157 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:14:02,215.215 INFO    ] ================================================
[2026-08-31 03:14:02,235.235 INFO    ] Launching Daemon at Mon Aug 31 03:14:02 IST 2026
[2026-08-31 03:14:02,251.251 INFO    ] ================================================
[2026-08-31 03:14:02,900.900 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:14:02
[2026-08-31 03:14:03,484.484 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:14:03,755.755 INFO    ] Initializing speech engine...
[2026-08-31 03:14:03,775.775 INFO    ] 2026-08-31 03:14:03
[2026-08-31 03:14:04,043.043 INFO    ] 2026-08-31 03:14:04
[2026-08-31 03:14:04,078.078 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:14:04,246.246 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:14:04,282.282 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:14:04,451.451 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:14:04,467.467 INFO    ] time= 31/08/2026 03:14:04
[2026-08-31 03:14:04,473.473 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:14:04,478.478 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:14:04,556.556 INFO    ] No existing commands found in stream
[2026-08-31 03:14:09,591.591 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:14:09,594.594 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-08-31 03:14:10,693.693 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 03:14:10,696.696 INFO    ] Checking for system updates...
[2026-08-31 03:14:10,735.735 INFO    ] 200
[2026-08-31 03:14:10,738.738 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:14:10,793.793 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:14:10,796.796 INFO    ] No update needed
[2026-08-31 03:14:10,799.799 INFO    ] Checking for camera pi updates...
[2026-08-31 03:14:10,832.832 INFO    ] 200
[2026-08-31 03:14:10,834.834 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:14:10,879.879 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:14:10,976.976 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:14:10,979.979 INFO    ] No camera update needed
[2026-08-31 03:14:10,981.981 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:14:10,984.984 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:14:10,989.989 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:14:10,994.994 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:14:13,036.036 INFO    ] ================================================
[2026-08-31 03:14:13,051.051 INFO    ] Launching Daemon at Mon Aug 31 03:14:13 IST 2026
[2026-08-31 03:14:13,062.062 INFO    ] ================================================
[2026-08-31 03:14:13,634.634 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:14:13
[2026-08-31 03:14:14,225.225 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:14:14,483.483 INFO    ] Initializing speech engine...
[2026-08-31 03:14:14,493.493 INFO    ] 2026-08-31 03:14:14
[2026-08-31 03:14:14,792.792 INFO    ] 2026-08-31 03:14:14
[2026-08-31 03:14:14,833.833 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:14:15,031.031 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:14:15,044.044 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:14:15,174.174 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:14:15,184.184 INFO    ] time= 31/08/2026 03:14:15
[2026-08-31 03:14:15,217.217 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:14:15,226.226 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:14:15,370.370 INFO    ] No existing commands found in stream
[2026-08-31 03:14:20,401.401 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:14:20,404.404 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-08-31 03:14:23,165.165 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 03:14:23,168.168 INFO    ] Checking for system updates...
[2026-08-31 03:14:23,204.204 INFO    ] 200
[2026-08-31 03:14:23,206.206 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:14:23,258.258 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:14:23,260.260 INFO    ] No update needed
[2026-08-31 03:14:23,263.263 INFO    ] Checking for camera pi updates...
[2026-08-31 03:14:23,297.297 INFO    ] 200
[2026-08-31 03:14:23,300.300 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:14:23,347.347 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:14:23,422.422 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:14:23,424.424 INFO    ] No camera update needed
[2026-08-31 03:14:23,426.426 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:14:23,429.429 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:14:23,434.434 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:14:23,439.439 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:14:25,479.479 INFO    ] ================================================
[2026-08-31 03:14:25,495.495 INFO    ] Launching Daemon at Mon Aug 31 03:14:25 IST 2026
[2026-08-31 03:14:25,505.505 INFO    ] ================================================
[2026-08-31 03:14:26,071.071 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:14:26
[2026-08-31 03:14:26,655.655 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:14:26,909.909 INFO    ] Initializing speech engine...
[2026-08-31 03:14:26,918.918 INFO    ] 2026-08-31 03:14:26
[2026-08-31 03:14:27,213.213 INFO    ] 2026-08-31 03:14:27
[2026-08-31 03:14:27,251.251 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:14:27,450.450 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:14:27,466.466 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:14:27,633.633 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:14:27,642.642 INFO    ] time= 31/08/2026 03:14:27
[2026-08-31 03:14:27,685.685 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:14:27,718.718 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:14:27,830.830 INFO    ] No existing commands found in stream
[2026-08-31 03:14:32,866.866 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:14:32,869.869 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-08-31 03:14:33,779.779 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 03:14:33,782.782 INFO    ] Checking for system updates...
[2026-08-31 03:14:33,817.817 INFO    ] 200
[2026-08-31 03:14:33,820.820 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:14:33,872.872 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:14:33,875.875 INFO    ] No update needed
[2026-08-31 03:14:33,877.877 INFO    ] Checking for camera pi updates...
[2026-08-31 03:14:33,917.917 INFO    ] 200
[2026-08-31 03:14:33,920.920 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:14:33,962.962 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:14:34,042.042 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:14:34,045.045 INFO    ] No camera update needed
[2026-08-31 03:14:34,047.047 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:14:34,050.050 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:14:34,055.055 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:14:34,060.060 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:14:36,100.100 INFO    ] ================================================
[2026-08-31 03:14:36,115.115 INFO    ] Launching Daemon at Mon Aug 31 03:14:36 IST 2026
[2026-08-31 03:14:36,126.126 INFO    ] ================================================
[2026-08-31 03:14:36,717.717 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:14:36
[2026-08-31 03:14:37,318.318 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:14:37,591.591 INFO    ] Initializing speech engine...
[2026-08-31 03:14:37,600.600 INFO    ] 2026-08-31 03:14:37
[2026-08-31 03:14:37,850.850 INFO    ] 2026-08-31 03:14:37
[2026-08-31 03:14:37,885.885 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:14:38,140.140 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:14:38,145.145 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:14:38,366.366 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:14:38,401.401 INFO    ] time= 31/08/2026 03:14:38
[2026-08-31 03:14:38,408.408 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:14:38,425.425 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:14:38,545.545 INFO    ] No existing commands found in stream
[2026-08-31 03:14:43,566.566 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:14:43,569.569 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-08-31 03:14:45,677.677 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 03:14:45,680.680 INFO    ] Checking for system updates...
[2026-08-31 03:14:45,717.717 INFO    ] 200
[2026-08-31 03:14:45,720.720 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:14:45,779.779 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:14:45,782.782 INFO    ] No update needed
[2026-08-31 03:14:45,784.784 INFO    ] Checking for camera pi updates...
[2026-08-31 03:14:45,819.819 INFO    ] 200
[2026-08-31 03:14:45,821.821 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:14:45,868.868 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:14:45,944.944 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:14:45,946.946 INFO    ] No camera update needed
[2026-08-31 03:14:45,949.949 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:14:45,951.951 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:14:45,957.957 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:14:45,962.962 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:14:48,003.003 INFO    ] ================================================
[2026-08-31 03:14:48,018.018 INFO    ] Launching Daemon at Mon Aug 31 03:14:48 IST 2026
[2026-08-31 03:14:48,028.028 INFO    ] ================================================
[2026-08-31 03:14:48,620.620 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:14:48
[2026-08-31 03:14:49,224.224 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:14:49,485.485 INFO    ] Initializing speech engine...
[2026-08-31 03:14:49,491.491 INFO    ] 2026-08-31 03:14:49
[2026-08-31 03:14:49,792.792 INFO    ] 2026-08-31 03:14:49
[2026-08-31 03:14:49,818.818 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:14:50,029.029 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:14:50,036.036 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:14:50,149.149 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:14:50,172.172 INFO    ] time= 31/08/2026 03:14:50
[2026-08-31 03:14:50,179.179 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:14:50,185.185 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:14:50,238.238 INFO    ] No existing commands found in stream
[2026-08-31 03:14:55,270.270 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:14:55,273.273 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-08-31 03:14:56,726.726 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 03:14:56,728.728 INFO    ] Checking for system updates...
[2026-08-31 03:14:56,764.764 INFO    ] 200
[2026-08-31 03:14:56,767.767 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:14:56,820.820 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:14:56,823.823 INFO    ] No update needed
[2026-08-31 03:14:56,825.825 INFO    ] Checking for camera pi updates...
[2026-08-31 03:14:56,859.859 INFO    ] 200
[2026-08-31 03:14:56,861.861 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:14:56,908.908 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:14:56,986.986 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:14:56,988.988 INFO    ] No camera update needed
[2026-08-31 03:14:56,991.991 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:14:56,993.993 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:14:56,999.999 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:14:57,004.004 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:14:59,046.046 INFO    ] ================================================
[2026-08-31 03:14:59,061.061 INFO    ] Launching Daemon at Mon Aug 31 03:14:59 IST 2026
[2026-08-31 03:14:59,072.072 INFO    ] ================================================
[2026-08-31 03:14:59,642.642 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:14:59
[2026-08-31 03:15:00,233.233 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:15:00,481.481 INFO    ] Initializing speech engine...
[2026-08-31 03:15:00,488.488 INFO    ] 2026-08-31 03:15:00
[2026-08-31 03:15:00,761.761 INFO    ] 2026-08-31 03:15:00
[2026-08-31 03:15:00,799.799 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:15:00,974.974 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:15:00,986.986 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:15:01,131.131 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:15:01,140.140 INFO    ] time= 31/08/2026 03:15:01
[2026-08-31 03:15:01,146.146 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:15:01,187.187 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:15:01,319.319 INFO    ] No existing commands found in stream
[2026-08-31 03:15:06,350.350 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:15:06,353.353 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-08-31 03:15:09,731.731 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 03:15:09,734.734 INFO    ] Checking for system updates...
[2026-08-31 03:15:09,769.769 INFO    ] 200
[2026-08-31 03:15:09,772.772 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:15:09,830.830 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:15:09,832.832 INFO    ] No update needed
[2026-08-31 03:15:09,835.835 INFO    ] Checking for camera pi updates...
[2026-08-31 03:15:09,868.868 INFO    ] 200
[2026-08-31 03:15:09,871.871 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:15:09,916.916 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:15:10,032.032 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:15:10,034.034 INFO    ] No camera update needed
[2026-08-31 03:15:10,037.037 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:15:10,039.039 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:15:10,045.045 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:15:10,050.050 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:15:12,091.091 INFO    ] ================================================
[2026-08-31 03:15:12,106.106 INFO    ] Launching Daemon at Mon Aug 31 03:15:12 IST 2026
[2026-08-31 03:15:12,116.116 INFO    ] ================================================
[2026-08-31 03:15:12,688.688 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:15:12
[2026-08-31 03:15:13,281.281 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:15:13,557.557 INFO    ] Initializing speech engine...
[2026-08-31 03:15:13,566.566 INFO    ] 2026-08-31 03:15:13
[2026-08-31 03:15:13,826.826 INFO    ] 2026-08-31 03:15:13
[2026-08-31 03:15:13,880.880 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:15:14,119.119 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:15:14,125.125 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:15:14,259.259 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:15:14,311.311 INFO    ] time= 31/08/2026 03:15:14
[2026-08-31 03:15:14,377.377 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:15:14,400.400 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:15:14,519.519 INFO    ] No existing commands found in stream
[2026-08-31 03:15:19,550.550 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:15:19,554.554 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-08-31 03:15:22,692.692 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 03:15:22,695.695 INFO    ] Checking for system updates...
[2026-08-31 03:15:22,736.736 INFO    ] 200
[2026-08-31 03:15:22,740.740 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:15:22,821.821 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:15:22,824.824 INFO    ] No update needed
[2026-08-31 03:15:22,833.833 INFO    ] Checking for camera pi updates...
[2026-08-31 03:15:22,870.870 INFO    ] 200
[2026-08-31 03:15:22,873.873 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:15:22,923.923 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:15:23,033.033 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:15:23,036.036 INFO    ] No camera update needed
[2026-08-31 03:15:23,038.038 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:15:23,041.041 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:15:23,046.046 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:15:23,051.051 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:15:25,094.094 INFO    ] ================================================
[2026-08-31 03:15:25,111.111 INFO    ] Launching Daemon at Mon Aug 31 03:15:25 IST 2026
[2026-08-31 03:15:25,122.122 INFO    ] ================================================
[2026-08-31 03:15:25,774.774 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:15:25
[2026-08-31 03:15:26,445.445 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:15:26,751.751 INFO    ] Initializing speech engine...
[2026-08-31 03:15:26,765.765 INFO    ] 2026-08-31 03:15:26
[2026-08-31 03:15:27,040.040 INFO    ] 2026-08-31 03:15:27
[2026-08-31 03:15:27,095.095 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:15:27,350.350 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:15:27,355.355 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:15:27,551.551 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:15:27,554.554 INFO    ] time= 31/08/2026 03:15:27
[2026-08-31 03:15:27,557.557 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:15:27,605.605 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:15:27,734.734 INFO    ] No existing commands found in stream
[2026-08-31 03:15:32,750.750 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:15:32,753.753 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-08-31 03:15:35,371.371 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 03:15:35,373.373 INFO    ] Checking for system updates...
[2026-08-31 03:15:35,409.409 INFO    ] 200
[2026-08-31 03:15:35,411.411 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:15:35,468.468 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:15:35,470.470 INFO    ] No update needed
[2026-08-31 03:15:35,473.473 INFO    ] Checking for camera pi updates...
[2026-08-31 03:15:35,506.506 INFO    ] 200
[2026-08-31 03:15:35,509.509 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:15:35,555.555 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:15:35,745.745 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:15:35,748.748 INFO    ] No camera update needed
[2026-08-31 03:15:35,750.750 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:15:35,752.752 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:15:35,758.758 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:15:35,763.763 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:15:37,804.804 INFO    ] ================================================
[2026-08-31 03:15:37,820.820 INFO    ] Launching Daemon at Mon Aug 31 03:15:37 IST 2026
[2026-08-31 03:15:37,831.831 INFO    ] ================================================
[2026-08-31 03:15:38,413.413 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:15:38
[2026-08-31 03:15:39,014.014 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:15:39,287.287 INFO    ] Initializing speech engine...
[2026-08-31 03:15:39,298.298 INFO    ] 2026-08-31 03:15:39
[2026-08-31 03:15:39,559.559 INFO    ] 2026-08-31 03:15:39
[2026-08-31 03:15:39,615.615 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:15:39,898.898 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:15:39,906.906 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:15:40,037.037 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:15:40,087.087 INFO    ] time= 31/08/2026 03:15:40
[2026-08-31 03:15:40,125.125 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:15:40,132.132 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:15:40,272.272 INFO    ] No existing commands found in stream
[2026-08-31 03:15:45,292.292 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:15:45,295.295 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-08-31 03:15:48,446.446 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 03:15:48,449.449 INFO    ] Checking for system updates...
[2026-08-31 03:15:48,486.486 INFO    ] 200
[2026-08-31 03:15:48,489.489 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:15:48,554.554 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:15:48,557.557 INFO    ] No update needed
[2026-08-31 03:15:48,560.560 INFO    ] Checking for camera pi updates...
[2026-08-31 03:15:48,599.599 INFO    ] 200
[2026-08-31 03:15:48,601.601 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:15:48,642.642 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:15:48,722.722 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:15:48,724.724 INFO    ] No camera update needed
[2026-08-31 03:15:48,727.727 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:15:48,729.729 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:15:48,735.735 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:15:48,740.740 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:15:50,783.783 INFO    ] ================================================
[2026-08-31 03:15:50,800.800 INFO    ] Launching Daemon at Mon Aug 31 03:15:50 IST 2026
[2026-08-31 03:15:50,811.811 INFO    ] ================================================
[2026-08-31 03:15:51,393.393 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:15:51
[2026-08-31 03:15:51,994.994 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:15:52,254.254 INFO    ] Initializing speech engine...
[2026-08-31 03:15:52,261.261 INFO    ] 2026-08-31 03:15:52
[2026-08-31 03:15:52,563.563 INFO    ] 2026-08-31 03:15:52
[2026-08-31 03:15:52,602.602 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:15:52,799.799 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:15:52,806.806 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:15:52,953.953 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:15:52,960.960 INFO    ] time= 31/08/2026 03:15:52
[2026-08-31 03:15:52,979.979 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:15:53,004.004 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:15:53,093.093 INFO    ] No existing commands found in stream
[2026-08-31 03:15:58,108.108 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:15:58,111.111 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-08-31 03:16:00,211.211 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 03:16:00,213.213 INFO    ] Checking for system updates...
[2026-08-31 03:16:00,249.249 INFO    ] 200
[2026-08-31 03:16:00,252.252 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:16:00,309.309 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:16:00,312.312 INFO    ] No update needed
[2026-08-31 03:16:00,314.314 INFO    ] Checking for camera pi updates...
[2026-08-31 03:16:00,347.347 INFO    ] 200
[2026-08-31 03:16:00,350.350 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:16:00,395.395 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:16:00,488.488 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:16:00,491.491 INFO    ] No camera update needed
[2026-08-31 03:16:00,493.493 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:16:00,495.495 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:16:00,501.501 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:16:00,506.506 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:16:02,558.558 INFO    ] ================================================
[2026-08-31 03:16:02,583.583 INFO    ] Launching Daemon at Mon Aug 31 03:16:02 IST 2026
[2026-08-31 03:16:02,600.600 INFO    ] ================================================
[2026-08-31 03:16:03,288.288 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:16:03
[2026-08-31 03:16:03,900.900 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:16:04,176.176 INFO    ] Initializing speech engine...
[2026-08-31 03:16:04,192.192 INFO    ] 2026-08-31 03:16:04
[2026-08-31 03:16:04,476.476 INFO    ] 2026-08-31 03:16:04
[2026-08-31 03:16:04,512.512 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:16:04,713.713 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:16:04,727.727 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:16:04,860.860 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:16:04,867.867 INFO    ] time= 31/08/2026 03:16:04
[2026-08-31 03:16:04,890.890 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:16:04,912.912 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:16:05,013.013 INFO    ] No existing commands found in stream
[2026-08-31 03:16:10,048.048 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:16:10,051.051 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-08-31 03:16:11,601.601 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 03:16:11,604.604 INFO    ] Checking for system updates...
[2026-08-31 03:16:11,639.639 INFO    ] 200
[2026-08-31 03:16:11,641.641 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:16:11,693.693 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:16:11,696.696 INFO    ] No update needed
[2026-08-31 03:16:11,698.698 INFO    ] Checking for camera pi updates...
[2026-08-31 03:16:11,732.732 INFO    ] 200
[2026-08-31 03:16:11,734.734 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:16:11,774.774 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:16:11,857.857 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:16:11,860.860 INFO    ] No camera update needed
[2026-08-31 03:16:11,862.862 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:16:11,864.864 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:16:11,870.870 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:16:11,875.875 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:16:13,915.915 INFO    ] ================================================
[2026-08-31 03:16:13,932.932 INFO    ] Launching Daemon at Mon Aug 31 03:16:13 IST 2026
[2026-08-31 03:16:13,943.943 INFO    ] ================================================
[2026-08-31 03:16:14,517.517 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:16:14
[2026-08-31 03:16:15,106.106 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:16:15,351.351 INFO    ] Initializing speech engine...
[2026-08-31 03:16:15,365.365 INFO    ] 2026-08-31 03:16:15
[2026-08-31 03:16:15,632.632 INFO    ] 2026-08-31 03:16:15
[2026-08-31 03:16:15,669.669 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:16:15,932.932 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:16:15,943.943 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:16:16,156.156 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:16:16,210.210 INFO    ] time= 31/08/2026 03:16:16
[2026-08-31 03:16:16,228.228 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:16:16,238.238 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:16:16,370.370 INFO    ] No existing commands found in stream
[2026-08-31 03:16:21,390.390 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:16:21,393.393 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-08-31 03:16:25,568.568 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 03:16:25,571.571 INFO    ] Checking for system updates...
[2026-08-31 03:16:25,611.611 INFO    ] 200
[2026-08-31 03:16:25,614.614 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:16:25,667.667 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:16:25,670.670 INFO    ] No update needed
[2026-08-31 03:16:25,672.672 INFO    ] Checking for camera pi updates...
[2026-08-31 03:16:25,708.708 INFO    ] 200
[2026-08-31 03:16:25,710.710 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:16:25,752.752 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:16:25,829.829 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:16:25,832.832 INFO    ] No camera update needed
[2026-08-31 03:16:25,835.835 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:16:25,838.838 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:16:25,844.844 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:16:25,850.850 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:16:27,892.892 INFO    ] ================================================
[2026-08-31 03:16:27,908.908 INFO    ] Launching Daemon at Mon Aug 31 03:16:27 IST 2026
[2026-08-31 03:16:27,919.919 INFO    ] ================================================
[2026-08-31 03:16:28,594.594 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:16:28
[2026-08-31 03:16:29,269.269 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:16:29,575.575 INFO    ] Initializing speech engine...
[2026-08-31 03:16:29,581.581 INFO    ] 2026-08-31 03:16:29
[2026-08-31 03:16:29,859.859 INFO    ] 2026-08-31 03:16:29
[2026-08-31 03:16:29,915.915 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:16:30,151.151 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:16:30,158.158 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:16:30,291.291 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:16:30,335.335 INFO    ] time= 31/08/2026 03:16:30
[2026-08-31 03:16:30,384.384 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:16:30,429.429 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:16:30,566.566 INFO    ] No existing commands found in stream
[2026-08-31 03:16:35,591.591 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:16:35,594.594 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-08-31 03:16:36,371.371 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 03:16:36,374.374 INFO    ] Checking for system updates...
[2026-08-31 03:16:36,414.414 INFO    ] 200
[2026-08-31 03:16:36,417.417 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:16:36,474.474 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:16:36,477.477 INFO    ] No update needed
[2026-08-31 03:16:36,480.480 INFO    ] Checking for camera pi updates...
[2026-08-31 03:16:36,515.515 INFO    ] 200
[2026-08-31 03:16:36,518.518 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:16:36,564.564 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:16:36,644.644 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:16:36,646.646 INFO    ] No camera update needed
[2026-08-31 03:16:36,649.649 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:16:36,651.651 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:16:36,656.656 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:16:36,661.661 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:16:38,704.704 INFO    ] ================================================
[2026-08-31 03:16:38,719.719 INFO    ] Launching Daemon at Mon Aug 31 03:16:38 IST 2026
[2026-08-31 03:16:38,731.731 INFO    ] ================================================
[2026-08-31 03:16:39,300.300 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:16:39
[2026-08-31 03:16:39,908.908 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:16:40,201.201 INFO    ] Initializing speech engine...
[2026-08-31 03:16:40,216.216 INFO    ] 2026-08-31 03:16:40
[2026-08-31 03:16:40,473.473 INFO    ] 2026-08-31 03:16:40
[2026-08-31 03:16:40,510.510 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:16:40,730.730 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:16:40,768.768 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:16:40,920.920 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:16:40,980.980 INFO    ] time= 31/08/2026 03:16:40
[2026-08-31 03:16:41,040.040 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:16:41,061.061 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:16:41,118.118 INFO    ] No existing commands found in stream
[2026-08-31 03:16:46,129.129 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:16:46,132.132 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-08-31 03:16:48,572.572 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 03:16:48,575.575 INFO    ] Checking for system updates...
[2026-08-31 03:16:48,611.611 INFO    ] 200
[2026-08-31 03:16:48,614.614 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:16:48,666.666 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:16:48,668.668 INFO    ] No update needed
[2026-08-31 03:16:48,672.672 INFO    ] Checking for camera pi updates...
[2026-08-31 03:16:48,705.705 INFO    ] 200
[2026-08-31 03:16:48,707.707 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:16:48,747.747 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:16:48,822.822 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:16:48,825.825 INFO    ] No camera update needed
[2026-08-31 03:16:48,827.827 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:16:48,830.830 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:16:48,835.835 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:16:48,840.840 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:16:50,881.881 INFO    ] ================================================
[2026-08-31 03:16:50,898.898 INFO    ] Launching Daemon at Mon Aug 31 03:16:50 IST 2026
[2026-08-31 03:16:50,909.909 INFO    ] ================================================
[2026-08-31 03:16:51,490.490 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:16:51
[2026-08-31 03:16:52,091.091 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:16:52,349.349 INFO    ] Initializing speech engine...
[2026-08-31 03:16:52,355.355 INFO    ] 2026-08-31 03:16:52
[2026-08-31 03:16:52,652.652 INFO    ] 2026-08-31 03:16:52
[2026-08-31 03:16:52,691.691 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:16:52,882.882 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:16:52,896.896 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:16:53,018.018 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:16:53,025.025 INFO    ] time= 31/08/2026 03:16:53
[2026-08-31 03:16:53,045.045 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:16:53,067.067 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:16:53,151.151 INFO    ] No existing commands found in stream
[2026-08-31 03:16:58,186.186 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:16:58,189.189 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-08-31 03:17:02,400.400 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 03:17:02,404.404 INFO    ] Checking for system updates...
[2026-08-31 03:17:02,448.448 INFO    ] 200
[2026-08-31 03:17:02,451.451 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:17:02,513.513 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:17:02,517.517 INFO    ] No update needed
[2026-08-31 03:17:02,520.520 INFO    ] Checking for camera pi updates...
[2026-08-31 03:17:02,568.568 INFO    ] 200
[2026-08-31 03:17:02,576.576 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:17:02,636.636 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:17:02,693.693 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:17:02,696.696 INFO    ] No camera update needed
[2026-08-31 03:17:02,699.699 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:17:02,702.702 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:17:02,709.709 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:17:02,715.715 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:17:04,759.759 INFO    ] ================================================
[2026-08-31 03:17:04,775.775 INFO    ] Launching Daemon at Mon Aug 31 03:17:04 IST 2026
[2026-08-31 03:17:04,786.786 INFO    ] ================================================
[2026-08-31 03:17:05,444.444 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:17:05
[2026-08-31 03:17:06,118.118 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:17:06,445.445 INFO    ] Initializing speech engine...
[2026-08-31 03:17:06,451.451 INFO    ] 2026-08-31 03:17:06
[2026-08-31 03:17:06,726.726 INFO    ] 2026-08-31 03:17:06
[2026-08-31 03:17:06,781.781 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:17:07,005.005 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:17:07,016.016 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:17:07,149.149 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:17:07,200.200 INFO    ] time= 31/08/2026 03:17:07
[2026-08-31 03:17:07,249.249 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:17:07,281.281 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:17:07,427.427 INFO    ] No existing commands found in stream
[2026-08-31 03:17:12,443.443 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:17:12,446.446 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-08-31 03:17:13,047.047 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 03:17:13,050.050 INFO    ] Checking for system updates...
[2026-08-31 03:17:13,091.091 INFO    ] 200
[2026-08-31 03:17:13,094.094 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:17:13,154.154 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:17:13,158.158 INFO    ] No update needed
[2026-08-31 03:17:13,160.160 INFO    ] Checking for camera pi updates...
[2026-08-31 03:17:13,195.195 INFO    ] 200
[2026-08-31 03:17:13,198.198 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:17:13,240.240 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:17:13,320.320 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:17:13,323.323 INFO    ] No camera update needed
[2026-08-31 03:17:13,325.325 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:17:13,328.328 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:17:13,334.334 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:17:13,340.340 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:17:15,382.382 INFO    ] ================================================
[2026-08-31 03:17:15,398.398 INFO    ] Launching Daemon at Mon Aug 31 03:17:15 IST 2026
[2026-08-31 03:17:15,410.410 INFO    ] ================================================
[2026-08-31 03:17:16,008.008 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:17:16
[2026-08-31 03:17:16,611.611 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:17:16,884.884 INFO    ] Initializing speech engine...
[2026-08-31 03:17:16,892.892 INFO    ] 2026-08-31 03:17:16
[2026-08-31 03:17:17,176.176 INFO    ] 2026-08-31 03:17:17
[2026-08-31 03:17:17,222.222 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:17:17,450.450 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:17:17,455.455 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:17:17,686.686 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:17:17,713.713 INFO    ] time= 31/08/2026 03:17:17
[2026-08-31 03:17:17,733.733 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:17:17,761.761 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:17:17,868.868 INFO    ] No existing commands found in stream
[2026-08-31 03:17:22,889.889 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:17:22,893.893 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-08-31 03:17:26,876.876 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 03:17:26,879.879 INFO    ] Checking for system updates...
[2026-08-31 03:17:26,918.918 INFO    ] 200
[2026-08-31 03:17:26,920.920 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:17:26,975.975 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:17:26,979.979 INFO    ] No update needed
[2026-08-31 03:17:26,983.983 INFO    ] Checking for camera pi updates...
[2026-08-31 03:17:27,018.018 INFO    ] 200
[2026-08-31 03:17:27,021.021 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:17:27,065.065 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:17:27,144.144 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:17:27,146.146 INFO    ] No camera update needed
[2026-08-31 03:17:27,149.149 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:17:27,152.152 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:17:27,158.158 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:17:27,164.164 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:17:29,204.204 INFO    ] ================================================
[2026-08-31 03:17:29,220.220 INFO    ] Launching Daemon at Mon Aug 31 03:17:29 IST 2026
[2026-08-31 03:17:29,231.231 INFO    ] ================================================
[2026-08-31 03:17:29,849.849 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:17:29
[2026-08-31 03:17:30,449.449 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:17:30,726.726 INFO    ] Initializing speech engine...
[2026-08-31 03:17:30,733.733 INFO    ] 2026-08-31 03:17:30
[2026-08-31 03:17:30,995.995 INFO    ] 2026-08-31 03:17:30
[2026-08-31 03:17:31,024.024 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:17:31,215.215 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:17:31,272.272 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:17:31,413.413 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:17:31,489.489 INFO    ] time= 31/08/2026 03:17:31
[2026-08-31 03:17:31,540.540 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:17:31,546.546 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:17:31,675.675 INFO    ] No existing commands found in stream
[2026-08-31 03:17:36,711.711 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:17:36,714.714 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-08-31 03:17:37,891.891 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 03:17:37,894.894 INFO    ] Checking for system updates...
[2026-08-31 03:17:37,941.941 INFO    ] 200
[2026-08-31 03:17:37,944.944 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:17:37,998.998 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:17:38,000.000 INFO    ] No update needed
[2026-08-31 03:17:38,003.003 INFO    ] Checking for camera pi updates...
[2026-08-31 03:17:38,036.036 INFO    ] 200
[2026-08-31 03:17:38,039.039 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:17:38,080.080 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:17:38,273.273 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:17:38,275.275 INFO    ] No camera update needed
[2026-08-31 03:17:38,278.278 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:17:38,280.280 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:17:38,286.286 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:17:38,291.291 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:17:40,334.334 INFO    ] ================================================
[2026-08-31 03:17:40,349.349 INFO    ] Launching Daemon at Mon Aug 31 03:17:40 IST 2026
[2026-08-31 03:17:40,360.360 INFO    ] ================================================
[2026-08-31 03:17:40,926.926 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:17:40
[2026-08-31 03:17:41,510.510 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:17:41,776.776 INFO    ] Initializing speech engine...
[2026-08-31 03:17:41,785.785 INFO    ] 2026-08-31 03:17:41
[2026-08-31 03:17:42,031.031 INFO    ] 2026-08-31 03:17:42
[2026-08-31 03:17:42,066.066 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:17:42,317.317 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:17:42,326.326 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:17:42,457.457 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:17:42,499.499 INFO    ] time= 31/08/2026 03:17:42
[2026-08-31 03:17:42,553.553 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:17:42,590.590 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:17:42,734.734 INFO    ] No existing commands found in stream
[2026-08-31 03:17:47,750.750 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:17:47,752.752 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-08-31 03:17:51,131.131 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 03:17:51,133.133 INFO    ] Checking for system updates...
[2026-08-31 03:17:51,170.170 INFO    ] 200
[2026-08-31 03:17:51,172.172 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:17:51,224.224 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:17:51,226.226 INFO    ] No update needed
[2026-08-31 03:17:51,228.228 INFO    ] Checking for camera pi updates...
[2026-08-31 03:17:51,262.262 INFO    ] 200
[2026-08-31 03:17:51,264.264 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:17:51,304.304 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:17:51,378.378 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:17:51,381.381 INFO    ] No camera update needed
[2026-08-31 03:17:51,383.383 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:17:51,385.385 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:17:51,391.391 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:17:51,395.395 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:17:53,436.436 INFO    ] ================================================
[2026-08-31 03:17:53,452.452 INFO    ] Launching Daemon at Mon Aug 31 03:17:53 IST 2026
[2026-08-31 03:17:53,464.464 INFO    ] ================================================
[2026-08-31 03:17:54,035.035 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:17:54
[2026-08-31 03:17:54,655.655 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:17:54,962.962 INFO    ] Initializing speech engine...
[2026-08-31 03:17:54,970.970 INFO    ] 2026-08-31 03:17:54
[2026-08-31 03:17:55,245.245 INFO    ] 2026-08-31 03:17:55
[2026-08-31 03:17:55,300.300 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:17:55,544.544 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:17:55,552.552 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:17:55,757.757 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:17:55,790.790 INFO    ] time= 31/08/2026 03:17:55
[2026-08-31 03:17:55,808.808 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:17:55,826.826 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:17:55,955.955 INFO    ] No existing commands found in stream
[2026-08-31 03:18:00,980.980 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:18:00,984.984 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-08-31 03:18:04,406.406 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 03:18:04,410.410 INFO    ] Checking for system updates...
[2026-08-31 03:18:04,451.451 INFO    ] 200
[2026-08-31 03:18:04,454.454 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:18:04,507.507 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:18:04,510.510 INFO    ] No update needed
[2026-08-31 03:18:04,512.512 INFO    ] Checking for camera pi updates...
[2026-08-31 03:18:04,547.547 INFO    ] 200
[2026-08-31 03:18:04,550.550 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:18:04,591.591 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:18:04,658.658 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:18:04,667.667 INFO    ] No camera update needed
[2026-08-31 03:18:04,670.670 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:18:04,673.673 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:18:04,679.679 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:18:04,685.685 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:18:06,727.727 INFO    ] ================================================
[2026-08-31 03:18:06,745.745 INFO    ] Launching Daemon at Mon Aug 31 03:18:06 IST 2026
[2026-08-31 03:18:06,757.757 INFO    ] ================================================
[2026-08-31 03:18:07,343.343 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:18:07
[2026-08-31 03:18:07,951.951 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:18:08,213.213 INFO    ] Initializing speech engine...
[2026-08-31 03:18:08,222.222 INFO    ] 2026-08-31 03:18:08
[2026-08-31 03:18:08,522.522 INFO    ] 2026-08-31 03:18:08
[2026-08-31 03:18:08,560.560 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:18:08,762.762 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:18:08,776.776 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:18:08,903.903 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:18:08,909.909 INFO    ] time= 31/08/2026 03:18:08
[2026-08-31 03:18:08,923.923 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:18:08,939.939 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:18:09,035.035 INFO    ] No existing commands found in stream
[2026-08-31 03:18:14,047.047 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:18:14,050.050 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-08-31 03:18:15,861.861 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 03:18:15,863.863 INFO    ] Checking for system updates...
[2026-08-31 03:18:15,901.901 INFO    ] 200
[2026-08-31 03:18:15,904.904 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:18:15,960.960 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:18:15,963.963 INFO    ] No update needed
[2026-08-31 03:18:15,966.966 INFO    ] Checking for camera pi updates...
[2026-08-31 03:18:15,999.999 INFO    ] 200
[2026-08-31 03:18:16,002.002 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:18:16,042.042 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:18:16,124.124 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:18:16,127.127 INFO    ] No camera update needed
[2026-08-31 03:18:16,129.129 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:18:16,131.131 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:18:16,137.137 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:18:16,142.142 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:18:18,183.183 INFO    ] ================================================
[2026-08-31 03:18:18,199.199 INFO    ] Launching Daemon at Mon Aug 31 03:18:18 IST 2026
[2026-08-31 03:18:18,211.211 INFO    ] ================================================
[2026-08-31 03:18:18,776.776 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:18:18
[2026-08-31 03:18:19,356.356 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:18:19,628.628 INFO    ] Initializing speech engine...
[2026-08-31 03:18:19,638.638 INFO    ] 2026-08-31 03:18:19
[2026-08-31 03:18:19,900.900 INFO    ] 2026-08-31 03:18:19
[2026-08-31 03:18:19,958.958 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:18:20,188.188 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:18:20,196.196 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:18:20,333.333 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:18:20,360.360 INFO    ] time= 31/08/2026 03:18:20
[2026-08-31 03:18:20,414.414 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:18:20,469.469 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:18:20,612.612 INFO    ] No existing commands found in stream
[2026-08-31 03:18:25,632.632 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:18:25,635.635 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-08-31 03:18:28,554.554 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 03:18:28,557.557 INFO    ] Checking for system updates...
[2026-08-31 03:18:28,592.592 INFO    ] 200
[2026-08-31 03:18:28,595.595 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:18:28,647.647 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:18:28,650.650 INFO    ] No update needed
[2026-08-31 03:18:28,652.652 INFO    ] Checking for camera pi updates...
[2026-08-31 03:18:28,686.686 INFO    ] 200
[2026-08-31 03:18:28,689.689 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:18:28,729.729 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:18:28,804.804 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:18:28,806.806 INFO    ] No camera update needed
[2026-08-31 03:18:28,809.809 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:18:28,811.811 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:18:28,816.816 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:18:28,821.821 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:18:30,866.866 INFO    ] ================================================
[2026-08-31 03:18:30,882.882 INFO    ] Launching Daemon at Mon Aug 31 03:18:30 IST 2026
[2026-08-31 03:18:30,893.893 INFO    ] ================================================
[2026-08-31 03:18:31,462.462 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:18:31
[2026-08-31 03:18:32,086.086 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:18:32,364.364 INFO    ] Initializing speech engine...
[2026-08-31 03:18:32,374.374 INFO    ] 2026-08-31 03:18:32
[2026-08-31 03:18:32,681.681 INFO    ] 2026-08-31 03:18:32
[2026-08-31 03:18:32,715.715 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:18:32,921.921 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:18:32,933.933 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:18:33,081.081 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:18:33,087.087 INFO    ] time= 31/08/2026 03:18:33
[2026-08-31 03:18:33,093.093 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:18:33,139.139 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:18:33,280.280 INFO    ] No existing commands found in stream
[2026-08-31 03:18:38,299.299 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:18:38,302.302 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-08-31 03:18:42,008.008 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 03:18:42,010.010 INFO    ] Checking for system updates...
[2026-08-31 03:18:42,046.046 INFO    ] 200
[2026-08-31 03:18:42,049.049 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:18:42,101.101 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:18:42,104.104 INFO    ] No update needed
[2026-08-31 03:18:42,107.107 INFO    ] Checking for camera pi updates...
[2026-08-31 03:18:42,140.140 INFO    ] 200
[2026-08-31 03:18:42,142.142 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:18:42,182.182 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:18:42,261.261 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:18:42,263.263 INFO    ] No camera update needed
[2026-08-31 03:18:42,265.265 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:18:42,268.268 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:18:42,273.273 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:18:42,278.278 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:18:44,319.319 INFO    ] ================================================
[2026-08-31 03:18:44,334.334 INFO    ] Launching Daemon at Mon Aug 31 03:18:44 IST 2026
[2026-08-31 03:18:44,345.345 INFO    ] ================================================
[2026-08-31 03:18:44,918.918 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:18:44
[2026-08-31 03:18:45,508.508 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:18:45,774.774 INFO    ] Initializing speech engine...
[2026-08-31 03:18:45,783.783 INFO    ] 2026-08-31 03:18:45
[2026-08-31 03:18:46,043.043 INFO    ] 2026-08-31 03:18:46
[2026-08-31 03:18:46,115.115 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:18:46,345.345 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:18:46,355.355 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:18:46,505.505 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:18:46,530.530 INFO    ] time= 31/08/2026 03:18:46
[2026-08-31 03:18:46,602.602 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:18:46,652.652 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:18:46,788.788 INFO    ] No existing commands found in stream
[2026-08-31 03:18:51,812.812 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:18:51,815.815 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-08-31 03:18:52,996.996 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 03:18:52,999.999 INFO    ] Checking for system updates...
[2026-08-31 03:18:53,035.035 INFO    ] 200
[2026-08-31 03:18:53,038.038 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:18:53,093.093 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:18:53,095.095 INFO    ] No update needed
[2026-08-31 03:18:53,098.098 INFO    ] Checking for camera pi updates...
[2026-08-31 03:18:53,133.133 INFO    ] 200
[2026-08-31 03:18:53,135.135 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:18:53,176.176 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:18:53,257.257 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:18:53,260.260 INFO    ] No camera update needed
[2026-08-31 03:18:53,263.263 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:18:53,265.265 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:18:53,272.272 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:18:53,278.278 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:18:55,320.320 INFO    ] ================================================
[2026-08-31 03:18:55,336.336 INFO    ] Launching Daemon at Mon Aug 31 03:18:55 IST 2026
[2026-08-31 03:18:55,347.347 INFO    ] ================================================
[2026-08-31 03:18:56,003.003 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:18:56
[2026-08-31 03:18:56,679.679 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:18:56,982.982 INFO    ] Initializing speech engine...
[2026-08-31 03:18:56,992.992 INFO    ] 2026-08-31 03:18:56
[2026-08-31 03:18:57,279.279 INFO    ] 2026-08-31 03:18:57
[2026-08-31 03:18:57,326.326 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:18:57,593.593 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:18:57,599.599 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:18:57,796.796 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:18:57,843.843 INFO    ] time= 31/08/2026 03:18:57
[2026-08-31 03:18:57,850.850 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:18:57,871.871 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:18:58,011.011 INFO    ] No existing commands found in stream
[2026-08-31 03:19:03,030.030 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:19:03,033.033 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-08-31 03:19:05,076.076 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 03:19:05,079.079 INFO    ] Checking for system updates...
[2026-08-31 03:19:05,116.116 INFO    ] 200
[2026-08-31 03:19:05,119.119 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:19:05,173.173 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:19:05,176.176 INFO    ] No update needed
[2026-08-31 03:19:05,178.178 INFO    ] Checking for camera pi updates...
[2026-08-31 03:19:05,213.213 INFO    ] 200
[2026-08-31 03:19:05,216.216 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:19:05,261.261 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:19:05,338.338 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:19:05,340.340 INFO    ] No camera update needed
[2026-08-31 03:19:05,343.343 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:19:05,346.346 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:19:05,352.352 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:19:05,357.357 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:19:07,398.398 INFO    ] ================================================
[2026-08-31 03:19:07,414.414 INFO    ] Launching Daemon at Mon Aug 31 03:19:07 IST 2026
[2026-08-31 03:19:07,425.425 INFO    ] ================================================
[2026-08-31 03:19:07,990.990 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:19:07
[2026-08-31 03:19:08,572.572 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:19:08,844.844 INFO    ] Initializing speech engine...
[2026-08-31 03:19:08,849.849 INFO    ] 2026-08-31 03:19:08
[2026-08-31 03:19:09,122.122 INFO    ] 2026-08-31 03:19:09
[2026-08-31 03:19:09,159.159 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:19:09,310.310 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:19:09,348.348 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:19:09,517.517 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:19:09,549.549 INFO    ] time= 31/08/2026 03:19:09
[2026-08-31 03:19:09,559.559 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:19:09,567.567 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:19:09,642.642 INFO    ] No existing commands found in stream
[2026-08-31 03:19:14,655.655 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:19:14,658.658 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-08-31 03:19:15,479.479 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 03:19:15,481.481 INFO    ] Checking for system updates...
[2026-08-31 03:19:15,517.517 INFO    ] 200
[2026-08-31 03:19:15,520.520 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:19:15,573.573 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:19:15,575.575 INFO    ] No update needed
[2026-08-31 03:19:15,577.577 INFO    ] Checking for camera pi updates...
[2026-08-31 03:19:15,611.611 INFO    ] 200
[2026-08-31 03:19:15,614.614 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:19:15,653.653 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:19:15,737.737 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:19:15,739.739 INFO    ] No camera update needed
[2026-08-31 03:19:15,742.742 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:19:15,744.744 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:19:15,750.750 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:19:15,755.755 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:19:17,796.796 INFO    ] ================================================
[2026-08-31 03:19:17,812.812 INFO    ] Launching Daemon at Mon Aug 31 03:19:17 IST 2026
[2026-08-31 03:19:17,823.823 INFO    ] ================================================
[2026-08-31 03:19:18,400.400 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:19:18
[2026-08-31 03:19:18,990.990 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:19:19,258.258 INFO    ] Initializing speech engine...
[2026-08-31 03:19:19,275.275 INFO    ] 2026-08-31 03:19:19
[2026-08-31 03:19:19,546.546 INFO    ] 2026-08-31 03:19:19
[2026-08-31 03:19:19,584.584 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:19:19,777.777 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:19:19,782.782 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:19:19,913.913 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:19:19,920.920 INFO    ] time= 31/08/2026 03:19:19
[2026-08-31 03:19:19,936.936 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:19:19,963.963 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:19:20,048.048 INFO    ] No existing commands found in stream
[2026-08-31 03:19:25,063.063 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:19:25,065.065 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-08-31 03:19:27,015.015 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 03:19:27,018.018 INFO    ] Checking for system updates...
[2026-08-31 03:19:27,054.054 INFO    ] 200
[2026-08-31 03:19:27,057.057 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:19:27,108.108 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:19:27,111.111 INFO    ] No update needed
[2026-08-31 03:19:27,113.113 INFO    ] Checking for camera pi updates...
[2026-08-31 03:19:27,146.146 INFO    ] 200
[2026-08-31 03:19:27,149.149 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:19:27,190.190 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:19:27,275.275 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:19:27,277.277 INFO    ] No camera update needed
[2026-08-31 03:19:27,280.280 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:19:27,282.282 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:19:27,287.287 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:19:27,292.292 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:19:29,332.332 INFO    ] ================================================
[2026-08-31 03:19:29,347.347 INFO    ] Launching Daemon at Mon Aug 31 03:19:29 IST 2026
[2026-08-31 03:19:29,358.358 INFO    ] ================================================
[2026-08-31 03:19:30,000.000 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:19:29
[2026-08-31 03:19:30,659.659 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:19:30,957.957 INFO    ] Initializing speech engine...
[2026-08-31 03:19:30,966.966 INFO    ] 2026-08-31 03:19:30
[2026-08-31 03:19:31,240.240 INFO    ] 2026-08-31 03:19:31
[2026-08-31 03:19:31,295.295 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:19:31,547.547 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:19:31,555.555 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:19:31,698.698 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:19:31,749.749 INFO    ] time= 31/08/2026 03:19:31
[2026-08-31 03:19:31,820.820 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:19:31,840.840 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:19:31,979.979 INFO    ] No existing commands found in stream
[2026-08-31 03:19:37,006.006 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:19:37,010.010 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-08-31 03:19:37,583.583 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 03:19:37,586.586 INFO    ] Checking for system updates...
[2026-08-31 03:19:37,623.623 INFO    ] 200
[2026-08-31 03:19:37,626.626 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:19:37,680.680 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:19:37,682.682 INFO    ] No update needed
[2026-08-31 03:19:37,685.685 INFO    ] Checking for camera pi updates...
[2026-08-31 03:19:37,719.719 INFO    ] 200
[2026-08-31 03:19:37,722.722 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:19:37,768.768 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:19:37,845.845 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:19:37,848.848 INFO    ] No camera update needed
[2026-08-31 03:19:37,851.851 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:19:37,853.853 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:19:37,859.859 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:19:37,865.865 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:19:39,906.906 INFO    ] ================================================
[2026-08-31 03:19:39,921.921 INFO    ] Launching Daemon at Mon Aug 31 03:19:39 IST 2026
[2026-08-31 03:19:39,932.932 INFO    ] ================================================
[2026-08-31 03:19:40,519.519 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:19:40
[2026-08-31 03:19:41,114.114 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:19:41,390.390 INFO    ] Initializing speech engine...
[2026-08-31 03:19:41,401.401 INFO    ] 2026-08-31 03:19:41
[2026-08-31 03:19:41,647.647 INFO    ] 2026-08-31 03:19:41
[2026-08-31 03:19:41,682.682 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:19:41,936.936 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:19:41,945.945 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:19:42,079.079 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:19:42,139.139 INFO    ] time= 31/08/2026 03:19:42
[2026-08-31 03:19:42,198.198 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:19:42,213.213 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:19:42,327.327 INFO    ] No existing commands found in stream
[2026-08-31 03:19:47,363.363 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:19:47,366.366 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-08-31 03:19:48,957.957 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 03:19:48,960.960 INFO    ] Checking for system updates...
[2026-08-31 03:19:48,996.996 INFO    ] 200
[2026-08-31 03:19:48,999.999 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:19:49,053.053 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:19:49,055.055 INFO    ] No update needed
[2026-08-31 03:19:49,058.058 INFO    ] Checking for camera pi updates...
[2026-08-31 03:19:49,092.092 INFO    ] 200
[2026-08-31 03:19:49,095.095 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:19:49,135.135 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:19:49,283.283 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:19:49,285.285 INFO    ] No camera update needed
[2026-08-31 03:19:49,288.288 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:19:49,290.290 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:19:49,296.296 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:19:49,301.301 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:19:51,343.343 INFO    ] ================================================
[2026-08-31 03:19:51,358.358 INFO    ] Launching Daemon at Mon Aug 31 03:19:51 IST 2026
[2026-08-31 03:19:51,369.369 INFO    ] ================================================
[2026-08-31 03:19:51,958.958 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:19:51
[2026-08-31 03:19:52,560.560 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:19:52,822.822 INFO    ] Initializing speech engine...
[2026-08-31 03:19:52,829.829 INFO    ] 2026-08-31 03:19:52
[2026-08-31 03:19:53,127.127 INFO    ] 2026-08-31 03:19:53
[2026-08-31 03:19:53,165.165 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:19:53,361.361 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:19:53,374.374 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:19:53,498.498 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:19:53,505.505 INFO    ] time= 31/08/2026 03:19:53
[2026-08-31 03:19:53,525.525 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:19:53,548.548 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:19:53,629.629 INFO    ] No existing commands found in stream
[2026-08-31 03:19:58,647.647 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:19:58,650.650 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-08-31 03:20:01,430.430 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 03:20:01,434.434 INFO    ] Checking for system updates...
[2026-08-31 03:20:01,601.601 INFO    ] 200
[2026-08-31 03:20:01,604.604 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:20:01,850.850 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:20:01,853.853 INFO    ] No update needed
[2026-08-31 03:20:01,876.876 INFO    ] Checking for camera pi updates...
[2026-08-31 03:20:01,940.940 INFO    ] 200
[2026-08-31 03:20:01,946.946 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:20:02,005.005 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:20:02,325.325 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:20:02,329.329 INFO    ] No camera update needed
[2026-08-31 03:20:02,332.332 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:20:02,336.336 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:20:02,344.344 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:20:02,352.352 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:20:04,394.394 INFO    ] ================================================
[2026-08-31 03:20:04,410.410 INFO    ] Launching Daemon at Mon Aug 31 03:20:04 IST 2026
[2026-08-31 03:20:04,420.420 INFO    ] ================================================
[2026-08-31 03:20:04,999.999 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:20:04
[2026-08-31 03:20:05,602.602 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:20:05,881.881 INFO    ] Initializing speech engine...
[2026-08-31 03:20:05,888.888 INFO    ] 2026-08-31 03:20:05
[2026-08-31 03:20:06,145.145 INFO    ] 2026-08-31 03:20:06
[2026-08-31 03:20:06,175.175 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:20:06,424.424 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:20:06,431.431 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:20:06,655.655 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:20:06,710.710 INFO    ] time= 31/08/2026 03:20:06
[2026-08-31 03:20:06,720.720 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:20:06,737.737 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:20:06,828.828 INFO    ] No existing commands found in stream
[2026-08-31 03:20:11,849.849 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:20:11,852.852 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-08-31 03:20:13,767.767 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 03:20:13,770.770 INFO    ] Checking for system updates...
[2026-08-31 03:20:13,805.805 INFO    ] 200
[2026-08-31 03:20:13,807.807 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:20:13,866.866 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:20:13,868.868 INFO    ] No update needed
[2026-08-31 03:20:13,871.871 INFO    ] Checking for camera pi updates...
[2026-08-31 03:20:13,904.904 INFO    ] 200
[2026-08-31 03:20:13,906.906 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:20:13,946.946 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:20:14,032.032 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:20:14,034.034 INFO    ] No camera update needed
[2026-08-31 03:20:14,037.037 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:20:14,039.039 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:20:14,044.044 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:20:14,049.049 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:20:16,090.090 INFO    ] ================================================
[2026-08-31 03:20:16,105.105 INFO    ] Launching Daemon at Mon Aug 31 03:20:16 IST 2026
[2026-08-31 03:20:16,116.116 INFO    ] ================================================
[2026-08-31 03:20:16,680.680 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:20:16
[2026-08-31 03:20:17,261.261 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:20:17,517.517 INFO    ] Initializing speech engine...
[2026-08-31 03:20:17,531.531 INFO    ] 2026-08-31 03:20:17
[2026-08-31 03:20:17,805.805 INFO    ] 2026-08-31 03:20:17
[2026-08-31 03:20:17,839.839 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:20:18,013.013 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:20:18,033.033 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:20:18,199.199 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:20:18,207.207 INFO    ] time= 31/08/2026 03:20:18
[2026-08-31 03:20:18,214.214 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:20:18,235.235 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:20:18,370.370 INFO    ] No existing commands found in stream
[2026-08-31 03:20:23,400.400 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:20:23,403.403 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-08-31 03:20:27,526.526 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 03:20:27,529.529 INFO    ] Checking for system updates...
[2026-08-31 03:20:27,564.564 INFO    ] 200
[2026-08-31 03:20:27,567.567 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:20:27,619.619 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:20:27,621.621 INFO    ] No update needed
[2026-08-31 03:20:27,623.623 INFO    ] Checking for camera pi updates...
[2026-08-31 03:20:27,657.657 INFO    ] 200
[2026-08-31 03:20:27,660.660 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:20:27,703.703 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:20:27,778.778 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:20:27,781.781 INFO    ] No camera update needed
[2026-08-31 03:20:27,783.783 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:20:27,785.785 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:20:27,791.791 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:20:27,796.796 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:20:29,835.835 INFO    ] ================================================
[2026-08-31 03:20:29,850.850 INFO    ] Launching Daemon at Mon Aug 31 03:20:29 IST 2026
[2026-08-31 03:20:29,861.861 INFO    ] ================================================
[2026-08-31 03:20:30,446.446 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:20:30
[2026-08-31 03:20:31,055.055 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:20:31,357.357 INFO    ] Initializing speech engine...
[2026-08-31 03:20:31,367.367 INFO    ] 2026-08-31 03:20:31
[2026-08-31 03:20:31,643.643 INFO    ] 2026-08-31 03:20:31
[2026-08-31 03:20:31,699.699 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:20:31,933.933 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:20:31,943.943 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:20:32,171.171 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:20:32,219.219 INFO    ] time= 31/08/2026 03:20:32
[2026-08-31 03:20:32,241.241 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:20:32,273.273 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:20:32,355.355 INFO    ] No existing commands found in stream
[2026-08-31 03:20:37,378.378 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:20:37,381.381 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-08-31 03:20:39,440.440 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 03:20:39,443.443 INFO    ] Checking for system updates...
[2026-08-31 03:20:39,479.479 INFO    ] 200
[2026-08-31 03:20:39,482.482 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:20:39,536.536 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:20:39,539.539 INFO    ] No update needed
[2026-08-31 03:20:39,541.541 INFO    ] Checking for camera pi updates...
[2026-08-31 03:20:39,575.575 INFO    ] 200
[2026-08-31 03:20:39,578.578 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:20:39,619.619 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:20:39,710.710 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:20:39,712.712 INFO    ] No camera update needed
[2026-08-31 03:20:39,715.715 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:20:39,717.717 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:20:39,723.723 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:20:39,729.729 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:20:41,771.771 INFO    ] ================================================
[2026-08-31 03:20:41,786.786 INFO    ] Launching Daemon at Mon Aug 31 03:20:41 IST 2026
[2026-08-31 03:20:41,797.797 INFO    ] ================================================
[2026-08-31 03:20:42,441.441 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:20:42
[2026-08-31 03:20:43,115.115 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:20:43,408.408 INFO    ] Initializing speech engine...
[2026-08-31 03:20:43,416.416 INFO    ] 2026-08-31 03:20:43
[2026-08-31 03:20:43,698.698 INFO    ] 2026-08-31 03:20:43
[2026-08-31 03:20:43,741.741 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:20:43,989.989 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:20:43,995.995 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:20:44,206.206 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:20:44,229.229 INFO    ] time= 31/08/2026 03:20:44
[2026-08-31 03:20:44,247.247 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:20:44,256.256 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:20:44,369.369 INFO    ] No existing commands found in stream
[2026-08-31 03:20:49,394.394 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:20:49,397.397 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-08-31 03:20:53,184.184 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 03:20:53,187.187 INFO    ] Checking for system updates...
[2026-08-31 03:20:53,223.223 INFO    ] 200
[2026-08-31 03:20:53,226.226 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:20:53,279.279 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:20:53,282.282 INFO    ] No update needed
[2026-08-31 03:20:53,284.284 INFO    ] Checking for camera pi updates...
[2026-08-31 03:20:53,319.319 INFO    ] 200
[2026-08-31 03:20:53,321.321 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:20:53,362.362 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:20:53,441.441 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:20:53,443.443 INFO    ] No camera update needed
[2026-08-31 03:20:53,446.446 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:20:53,448.448 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:20:53,454.454 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:20:53,460.460 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:20:55,499.499 INFO    ] ================================================
[2026-08-31 03:20:55,515.515 INFO    ] Launching Daemon at Mon Aug 31 03:20:55 IST 2026
[2026-08-31 03:20:55,525.525 INFO    ] ================================================
[2026-08-31 03:20:56,089.089 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:20:56
[2026-08-31 03:20:56,673.673 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:20:56,953.953 INFO    ] Initializing speech engine...
[2026-08-31 03:20:56,963.963 INFO    ] 2026-08-31 03:20:56
[2026-08-31 03:20:57,224.224 INFO    ] 2026-08-31 03:20:57
[2026-08-31 03:20:57,261.261 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:20:57,463.463 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:20:57,481.481 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:20:57,623.623 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:20:57,633.633 INFO    ] time= 31/08/2026 03:20:57
[2026-08-31 03:20:57,637.637 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:20:57,644.644 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:20:57,718.718 INFO    ] No existing commands found in stream
[2026-08-31 03:21:02,748.748 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:21:02,751.751 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-08-31 03:21:05,121.121 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 03:21:05,124.124 INFO    ] Checking for system updates...
[2026-08-31 03:21:05,160.160 INFO    ] 200
[2026-08-31 03:21:05,162.162 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:21:05,226.226 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:21:05,229.229 INFO    ] No update needed
[2026-08-31 03:21:05,231.231 INFO    ] Checking for camera pi updates...
[2026-08-31 03:21:05,270.270 INFO    ] 200
[2026-08-31 03:21:05,272.272 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:21:05,312.312 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:21:05,377.377 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:21:05,380.380 INFO    ] No camera update needed
[2026-08-31 03:21:05,383.383 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:21:05,385.385 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:21:05,391.391 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:21:05,396.396 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:21:07,440.440 INFO    ] ================================================
[2026-08-31 03:21:07,455.455 INFO    ] Launching Daemon at Mon Aug 31 03:21:07 IST 2026
[2026-08-31 03:21:07,466.466 INFO    ] ================================================
[2026-08-31 03:21:08,045.045 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:21:08
[2026-08-31 03:21:08,642.642 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:21:08,915.915 INFO    ] Initializing speech engine...
[2026-08-31 03:21:08,925.925 INFO    ] 2026-08-31 03:21:08
[2026-08-31 03:21:09,174.174 INFO    ] 2026-08-31 03:21:09
[2026-08-31 03:21:09,209.209 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:21:09,401.401 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:21:09,462.462 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:21:09,603.603 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:21:09,640.640 INFO    ] time= 31/08/2026 03:21:09
[2026-08-31 03:21:09,699.699 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:21:09,736.736 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:21:09,883.883 INFO    ] No existing commands found in stream
[2026-08-31 03:21:14,897.897 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:21:14,900.900 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-08-31 03:21:16,762.762 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 03:21:16,764.764 INFO    ] Checking for system updates...
[2026-08-31 03:21:16,811.811 INFO    ] 200
[2026-08-31 03:21:16,814.814 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:21:16,870.870 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:21:16,872.872 INFO    ] No update needed
[2026-08-31 03:21:16,875.875 INFO    ] Checking for camera pi updates...
[2026-08-31 03:21:16,912.912 INFO    ] 200
[2026-08-31 03:21:16,915.915 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:21:16,966.966 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:21:17,063.063 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:21:17,065.065 INFO    ] No camera update needed
[2026-08-31 03:21:17,068.068 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:21:17,070.070 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:21:17,075.075 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:21:17,081.081 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:21:19,122.122 INFO    ] ================================================
[2026-08-31 03:21:19,137.137 INFO    ] Launching Daemon at Mon Aug 31 03:21:19 IST 2026
[2026-08-31 03:21:19,148.148 INFO    ] ================================================
[2026-08-31 03:21:19,770.770 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:21:19
[2026-08-31 03:21:20,412.412 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:21:20,700.700 INFO    ] Initializing speech engine...
[2026-08-31 03:21:20,713.713 INFO    ] 2026-08-31 03:21:20
[2026-08-31 03:21:20,981.981 INFO    ] 2026-08-31 03:21:20
[2026-08-31 03:21:21,044.044 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:21:21,328.328 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:21:21,342.342 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:21:21,543.543 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:21:21,561.561 INFO    ] time= 31/08/2026 03:21:21
[2026-08-31 03:21:21,571.571 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:21:21,600.600 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:21:21,748.748 INFO    ] No existing commands found in stream
[2026-08-31 03:21:26,778.778 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:21:26,781.781 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-08-31 03:21:31,208.208 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 03:21:31,211.211 INFO    ] Checking for system updates...
[2026-08-31 03:21:31,247.247 INFO    ] 200
[2026-08-31 03:21:31,250.250 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:21:31,302.302 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:21:31,305.305 INFO    ] No update needed
[2026-08-31 03:21:31,307.307 INFO    ] Checking for camera pi updates...
[2026-08-31 03:21:31,341.341 INFO    ] 200
[2026-08-31 03:21:31,343.343 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:21:31,383.383 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:21:31,461.461 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:21:31,463.463 INFO    ] No camera update needed
[2026-08-31 03:21:31,465.465 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:21:31,468.468 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:21:31,473.473 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:21:31,477.477 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:21:33,518.518 INFO    ] ================================================
[2026-08-31 03:21:33,533.533 INFO    ] Launching Daemon at Mon Aug 31 03:21:33 IST 2026
[2026-08-31 03:21:33,543.543 INFO    ] ================================================
[2026-08-31 03:21:34,115.115 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:21:34
[2026-08-31 03:21:34,699.699 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:21:34,966.966 INFO    ] Initializing speech engine...
[2026-08-31 03:21:34,986.986 INFO    ] 2026-08-31 03:21:34
[2026-08-31 03:21:35,245.245 INFO    ] 2026-08-31 03:21:35
[2026-08-31 03:21:35,282.282 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:21:35,472.472 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:21:35,485.485 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:21:35,622.622 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:21:35,636.636 INFO    ] time= 31/08/2026 03:21:35
[2026-08-31 03:21:35,657.657 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:21:35,661.661 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:21:35,789.789 INFO    ] No existing commands found in stream
[2026-08-31 03:21:40,819.819 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:21:40,822.822 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-08-31 03:21:42,214.214 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 03:21:42,217.217 INFO    ] Checking for system updates...
[2026-08-31 03:21:42,253.253 INFO    ] 200
[2026-08-31 03:21:42,255.255 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:21:42,308.308 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:21:42,311.311 INFO    ] No update needed
[2026-08-31 03:21:42,313.313 INFO    ] Checking for camera pi updates...
[2026-08-31 03:21:42,347.347 INFO    ] 200
[2026-08-31 03:21:42,349.349 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:21:42,390.390 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:21:42,486.486 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:21:42,489.489 INFO    ] No camera update needed
[2026-08-31 03:21:42,491.491 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:21:42,493.493 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:21:42,499.499 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:21:42,504.504 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:21:44,545.545 INFO    ] ================================================
[2026-08-31 03:21:44,560.560 INFO    ] Launching Daemon at Mon Aug 31 03:21:44 IST 2026
[2026-08-31 03:21:44,570.570 INFO    ] ================================================
[2026-08-31 03:21:45,202.202 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:21:45
[2026-08-31 03:21:45,841.841 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:21:46,110.110 INFO    ] Initializing speech engine...
[2026-08-31 03:21:46,120.120 INFO    ] 2026-08-31 03:21:46
[2026-08-31 03:21:46,369.369 INFO    ] 2026-08-31 03:21:46
[2026-08-31 03:21:46,404.404 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:21:46,661.661 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:21:46,670.670 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:21:46,886.886 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:21:46,934.934 INFO    ] time= 31/08/2026 03:21:46
[2026-08-31 03:21:46,941.941 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:21:46,958.958 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:21:47,076.076 INFO    ] No existing commands found in stream
[2026-08-31 03:21:52,101.101 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:21:52,104.104 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-08-31 03:21:55,805.805 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 03:21:55,807.807 INFO    ] Checking for system updates...
[2026-08-31 03:21:55,843.843 INFO    ] 200
[2026-08-31 03:21:55,845.845 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:21:55,908.908 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:21:55,910.910 INFO    ] No update needed
[2026-08-31 03:21:55,913.913 INFO    ] Checking for camera pi updates...
[2026-08-31 03:21:55,946.946 INFO    ] 200
[2026-08-31 03:21:55,948.948 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:21:55,989.989 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:21:56,167.167 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:21:56,169.169 INFO    ] No camera update needed
[2026-08-31 03:21:56,172.172 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:21:56,174.174 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:21:56,179.179 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:21:56,184.184 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:21:58,226.226 INFO    ] ================================================
[2026-08-31 03:21:58,240.240 INFO    ] Launching Daemon at Mon Aug 31 03:21:58 IST 2026
[2026-08-31 03:21:58,251.251 INFO    ] ================================================
[2026-08-31 03:21:58,869.869 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:21:58
[2026-08-31 03:21:59,506.506 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:21:59,797.797 INFO    ] Initializing speech engine...
[2026-08-31 03:21:59,805.805 INFO    ] 2026-08-31 03:21:59
[2026-08-31 03:22:00,072.072 INFO    ] 2026-08-31 03:22:00
[2026-08-31 03:22:00,126.126 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:22:00,356.356 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:22:00,361.361 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:22:00,589.589 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:22:00,618.618 INFO    ] time= 31/08/2026 03:22:00
[2026-08-31 03:22:00,624.624 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:22:00,642.642 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:22:00,793.793 INFO    ] No existing commands found in stream
[2026-08-31 03:22:05,820.820 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:22:05,823.823 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-08-31 03:22:06,811.811 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 03:22:06,814.814 INFO    ] Checking for system updates...
[2026-08-31 03:22:06,854.854 INFO    ] 200
[2026-08-31 03:22:06,857.857 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:22:06,916.916 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:22:06,919.919 INFO    ] No update needed
[2026-08-31 03:22:06,921.921 INFO    ] Checking for camera pi updates...
[2026-08-31 03:22:06,955.955 INFO    ] 200
[2026-08-31 03:22:06,958.958 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:22:06,999.999 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:22:07,087.087 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:22:07,090.090 INFO    ] No camera update needed
[2026-08-31 03:22:07,092.092 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:22:07,094.094 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:22:07,100.100 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:22:07,104.104 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:22:09,150.150 INFO    ] ================================================
[2026-08-31 03:22:09,165.165 INFO    ] Launching Daemon at Mon Aug 31 03:22:09 IST 2026
[2026-08-31 03:22:09,177.177 INFO    ] ================================================
[2026-08-31 03:22:09,757.757 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:22:09
[2026-08-31 03:22:10,354.354 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:22:10,630.630 INFO    ] Initializing speech engine...
[2026-08-31 03:22:10,639.639 INFO    ] 2026-08-31 03:22:10
[2026-08-31 03:22:10,898.898 INFO    ] 2026-08-31 03:22:10
[2026-08-31 03:22:10,952.952 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:22:11,176.176 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:22:11,181.181 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:22:11,315.315 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:22:11,354.354 INFO    ] time= 31/08/2026 03:22:11
[2026-08-31 03:22:11,423.423 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:22:11,445.445 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:22:11,568.568 INFO    ] No existing commands found in stream
[2026-08-31 03:22:16,598.598 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:22:16,601.601 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-08-31 03:22:17,571.571 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 03:22:17,573.573 INFO    ] Checking for system updates...
[2026-08-31 03:22:17,609.609 INFO    ] 200
[2026-08-31 03:22:17,611.611 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:22:17,670.670 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:22:17,672.672 INFO    ] No update needed
[2026-08-31 03:22:17,675.675 INFO    ] Checking for camera pi updates...
[2026-08-31 03:22:17,708.708 INFO    ] 200
[2026-08-31 03:22:17,711.711 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:22:17,756.756 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:22:17,840.840 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:22:17,843.843 INFO    ] No camera update needed
[2026-08-31 03:22:17,845.845 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:22:17,848.848 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:22:17,853.853 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:22:17,858.858 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:22:19,901.901 INFO    ] ================================================
[2026-08-31 03:22:19,916.916 INFO    ] Launching Daemon at Mon Aug 31 03:22:19 IST 2026
[2026-08-31 03:22:19,927.927 INFO    ] ================================================
[2026-08-31 03:22:20,567.567 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:22:20
[2026-08-31 03:22:21,194.194 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:22:21,465.465 INFO    ] Initializing speech engine...
[2026-08-31 03:22:21,472.472 INFO    ] 2026-08-31 03:22:21
[2026-08-31 03:22:21,785.785 INFO    ] 2026-08-31 03:22:21
[2026-08-31 03:22:21,829.829 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:22:22,083.083 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:22:22,089.089 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:22:22,220.220 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:22:22,262.262 INFO    ] time= 31/08/2026 03:22:22
[2026-08-31 03:22:22,317.317 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:22:22,356.356 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:22:22,504.504 INFO    ] No existing commands found in stream
[2026-08-31 03:22:27,523.523 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:22:27,527.527 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-08-31 03:22:31,286.286 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 03:22:31,289.289 INFO    ] Checking for system updates...
[2026-08-31 03:22:31,328.328 INFO    ] 200
[2026-08-31 03:22:31,330.330 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:22:31,389.389 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:22:31,392.392 INFO    ] No update needed
[2026-08-31 03:22:31,394.394 INFO    ] Checking for camera pi updates...
[2026-08-31 03:22:31,430.430 INFO    ] 200
[2026-08-31 03:22:31,433.433 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:22:31,474.474 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:22:31,550.550 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:22:31,553.553 INFO    ] No camera update needed
[2026-08-31 03:22:31,556.556 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:22:31,559.559 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:22:31,565.565 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:22:31,572.572 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:22:33,614.614 INFO    ] ================================================
[2026-08-31 03:22:33,629.629 INFO    ] Launching Daemon at Mon Aug 31 03:22:33 IST 2026
[2026-08-31 03:22:33,640.640 INFO    ] ================================================
[2026-08-31 03:22:34,221.221 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:22:34
[2026-08-31 03:22:34,818.818 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:22:35,094.094 INFO    ] Initializing speech engine...
[2026-08-31 03:22:35,101.101 INFO    ] 2026-08-31 03:22:35
[2026-08-31 03:22:35,362.362 INFO    ] 2026-08-31 03:22:35
[2026-08-31 03:22:35,392.392 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:22:35,641.641 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:22:35,647.647 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:22:35,780.780 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:22:35,849.849 INFO    ] time= 31/08/2026 03:22:35
[2026-08-31 03:22:35,906.906 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:22:35,913.913 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:22:36,053.053 INFO    ] No existing commands found in stream
[2026-08-31 03:22:41,069.069 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:22:41,072.072 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-08-31 03:22:44,515.515 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 03:22:44,517.517 INFO    ] Checking for system updates...
[2026-08-31 03:22:44,553.553 INFO    ] 200
[2026-08-31 03:22:44,556.556 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:22:44,609.609 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:22:44,611.611 INFO    ] No update needed
[2026-08-31 03:22:44,614.614 INFO    ] Checking for camera pi updates...
[2026-08-31 03:22:44,648.648 INFO    ] 200
[2026-08-31 03:22:44,650.650 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:22:44,695.695 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:22:44,784.784 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:22:44,787.787 INFO    ] No camera update needed
[2026-08-31 03:22:44,789.789 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:22:44,792.792 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:22:44,797.797 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:22:44,802.802 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:22:46,844.844 INFO    ] ================================================
[2026-08-31 03:22:46,859.859 INFO    ] Launching Daemon at Mon Aug 31 03:22:46 IST 2026
[2026-08-31 03:22:46,870.870 INFO    ] ================================================
[2026-08-31 03:22:47,454.454 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:22:47
[2026-08-31 03:22:48,055.055 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:22:48,330.330 INFO    ] Initializing speech engine...
[2026-08-31 03:22:48,339.339 INFO    ] 2026-08-31 03:22:48
[2026-08-31 03:22:48,599.599 INFO    ] 2026-08-31 03:22:48
[2026-08-31 03:22:48,636.636 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:22:48,891.891 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:22:48,900.900 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:22:49,032.032 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:22:49,041.041 INFO    ] time= 31/08/2026 03:22:49
[2026-08-31 03:22:49,057.057 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:22:49,081.081 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:22:49,203.203 INFO    ] No existing commands found in stream
[2026-08-31 03:22:54,224.224 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:22:54,228.228 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-08-31 03:22:55,734.734 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 03:22:55,737.737 INFO    ] Checking for system updates...
[2026-08-31 03:22:55,776.776 INFO    ] 200
[2026-08-31 03:22:55,779.779 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:22:55,831.831 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:22:55,834.834 INFO    ] No update needed
[2026-08-31 03:22:55,836.836 INFO    ] Checking for camera pi updates...
[2026-08-31 03:22:55,873.873 INFO    ] 200
[2026-08-31 03:22:55,876.876 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:22:55,916.916 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:22:56,020.020 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:22:56,022.022 INFO    ] No camera update needed
[2026-08-31 03:22:56,024.024 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:22:56,027.027 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:22:56,056.056 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:22:56,061.061 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:22:58,102.102 INFO    ] ================================================
[2026-08-31 03:22:58,117.117 INFO    ] Launching Daemon at Mon Aug 31 03:22:58 IST 2026
[2026-08-31 03:22:58,129.129 INFO    ] ================================================
[2026-08-31 03:22:58,699.699 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:22:58
[2026-08-31 03:22:59,286.286 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:22:59,538.538 INFO    ] Initializing speech engine...
[2026-08-31 03:22:59,561.561 INFO    ] 2026-08-31 03:22:59
[2026-08-31 03:22:59,816.816 INFO    ] 2026-08-31 03:22:59
[2026-08-31 03:22:59,851.851 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:23:00,059.059 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:23:00,105.105 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:23:00,271.271 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:23:00,316.316 INFO    ] time= 31/08/2026 03:23:00
[2026-08-31 03:23:00,370.370 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:23:00,406.406 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:23:00,512.512 INFO    ] No existing commands found in stream
[2026-08-31 03:23:05,541.541 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:23:05,543.543 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-08-31 03:23:08,814.814 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 03:23:08,817.817 INFO    ] Checking for system updates...
[2026-08-31 03:23:08,856.856 INFO    ] 200
[2026-08-31 03:23:08,859.859 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:23:08,919.919 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:23:08,921.921 INFO    ] No update needed
[2026-08-31 03:23:08,924.924 INFO    ] Checking for camera pi updates...
[2026-08-31 03:23:08,958.958 INFO    ] 200
[2026-08-31 03:23:08,960.960 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:23:09,000.000 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:23:09,080.080 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:23:09,082.082 INFO    ] No camera update needed
[2026-08-31 03:23:09,084.084 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:23:09,087.087 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:23:09,092.092 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:23:09,097.097 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:23:11,139.139 INFO    ] ================================================
[2026-08-31 03:23:11,157.157 INFO    ] Launching Daemon at Mon Aug 31 03:23:11 IST 2026
[2026-08-31 03:23:11,169.169 INFO    ] ================================================
[2026-08-31 03:23:11,793.793 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:23:11
[2026-08-31 03:23:12,394.394 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:23:12,645.645 INFO    ] Initializing speech engine...
[2026-08-31 03:23:12,668.668 INFO    ] 2026-08-31 03:23:12
[2026-08-31 03:23:12,925.925 INFO    ] 2026-08-31 03:23:12
[2026-08-31 03:23:12,961.961 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:23:13,161.161 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:23:13,189.189 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:23:13,366.366 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:23:13,377.377 INFO    ] time= 31/08/2026 03:23:13
[2026-08-31 03:23:13,432.432 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:23:13,486.486 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:23:13,555.555 INFO    ] No existing commands found in stream
[2026-08-31 03:23:18,566.566 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:23:18,569.569 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-08-31 03:23:20,536.536 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 03:23:20,539.539 INFO    ] Checking for system updates...
[2026-08-31 03:23:20,575.575 INFO    ] 200
[2026-08-31 03:23:20,578.578 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:23:20,630.630 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:23:20,632.632 INFO    ] No update needed
[2026-08-31 03:23:20,634.634 INFO    ] Checking for camera pi updates...
[2026-08-31 03:23:20,672.672 INFO    ] 200
[2026-08-31 03:23:20,675.675 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:23:20,715.715 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:23:20,795.795 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:23:20,797.797 INFO    ] No camera update needed
[2026-08-31 03:23:20,800.800 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:23:20,802.802 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:23:20,807.807 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:23:20,812.812 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:23:22,855.855 INFO    ] ================================================
[2026-08-31 03:23:22,871.871 INFO    ] Launching Daemon at Mon Aug 31 03:23:22 IST 2026
[2026-08-31 03:23:22,881.881 INFO    ] ================================================
[2026-08-31 03:23:23,562.562 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:23:23
[2026-08-31 03:23:24,206.206 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:23:24,481.481 INFO    ] Initializing speech engine...
[2026-08-31 03:23:24,490.490 INFO    ] 2026-08-31 03:23:24
[2026-08-31 03:23:24,759.759 INFO    ] 2026-08-31 03:23:24
[2026-08-31 03:23:24,814.814 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:23:25,068.068 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:23:25,087.087 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:23:25,293.293 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:23:25,312.312 INFO    ] time= 31/08/2026 03:23:25
[2026-08-31 03:23:25,330.330 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:23:25,361.361 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:23:25,494.494 INFO    ] No existing commands found in stream
[2026-08-31 03:23:30,530.530 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:23:30,534.534 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-08-31 03:23:31,774.774 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 03:23:31,776.776 INFO    ] Checking for system updates...
[2026-08-31 03:23:31,814.814 INFO    ] 200
[2026-08-31 03:23:31,817.817 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:23:31,882.882 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:23:31,885.885 INFO    ] No update needed
[2026-08-31 03:23:31,888.888 INFO    ] Checking for camera pi updates...
[2026-08-31 03:23:31,923.923 INFO    ] 200
[2026-08-31 03:23:31,926.926 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:23:31,981.981 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:23:32,084.084 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:23:32,087.087 INFO    ] No camera update needed
[2026-08-31 03:23:32,090.090 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:23:32,092.092 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:23:32,099.099 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:23:32,104.104 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:23:34,146.146 INFO    ] ================================================
[2026-08-31 03:23:34,162.162 INFO    ] Launching Daemon at Mon Aug 31 03:23:34 IST 2026
[2026-08-31 03:23:34,173.173 INFO    ] ================================================
[2026-08-31 03:23:34,751.751 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:23:34
[2026-08-31 03:23:35,354.354 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:23:35,609.609 INFO    ] Initializing speech engine...
[2026-08-31 03:23:35,615.615 INFO    ] 2026-08-31 03:23:35
[2026-08-31 03:23:35,920.920 INFO    ] 2026-08-31 03:23:35
[2026-08-31 03:23:35,945.945 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:23:36,118.118 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:23:36,125.125 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:23:36,274.274 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:23:36,286.286 INFO    ] time= 31/08/2026 03:23:36
[2026-08-31 03:23:36,296.296 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:23:36,301.301 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:23:36,376.376 INFO    ] No existing commands found in stream
[2026-08-31 03:23:41,387.387 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:23:41,390.390 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-08-31 03:23:45,045.045 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 03:23:45,048.048 INFO    ] Checking for system updates...
[2026-08-31 03:23:45,088.088 INFO    ] 200
[2026-08-31 03:23:45,091.091 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:23:45,151.151 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:23:45,153.153 INFO    ] No update needed
[2026-08-31 03:23:45,155.155 INFO    ] Checking for camera pi updates...
[2026-08-31 03:23:45,193.193 INFO    ] 200
[2026-08-31 03:23:45,195.195 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:23:45,236.236 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:23:45,336.336 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:23:45,339.339 INFO    ] No camera update needed
[2026-08-31 03:23:45,341.341 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:23:45,344.344 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:23:45,349.349 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:23:45,354.354 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:23:47,393.393 INFO    ] ================================================
[2026-08-31 03:23:47,409.409 INFO    ] Launching Daemon at Mon Aug 31 03:23:47 IST 2026
[2026-08-31 03:23:47,421.421 INFO    ] ================================================
[2026-08-31 03:23:48,006.006 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:23:48
[2026-08-31 03:23:48,607.607 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:23:48,880.880 INFO    ] Initializing speech engine...
[2026-08-31 03:23:48,890.890 INFO    ] 2026-08-31 03:23:48
[2026-08-31 03:23:49,144.144 INFO    ] 2026-08-31 03:23:49
[2026-08-31 03:23:49,204.204 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:23:49,430.430 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:23:49,435.435 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:23:49,567.567 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:23:49,615.615 INFO    ] time= 31/08/2026 03:23:49
[2026-08-31 03:23:49,679.679 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:23:49,703.703 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:23:49,844.844 INFO    ] No existing commands found in stream
[2026-08-31 03:23:54,859.859 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:23:54,862.862 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-08-31 03:23:55,616.616 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 03:23:55,619.619 INFO    ] Checking for system updates...
[2026-08-31 03:23:55,657.657 INFO    ] 200
[2026-08-31 03:23:55,660.660 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:23:55,721.721 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:23:55,724.724 INFO    ] No update needed
[2026-08-31 03:23:55,726.726 INFO    ] Checking for camera pi updates...
[2026-08-31 03:23:55,759.759 INFO    ] 200
[2026-08-31 03:23:55,762.762 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:23:55,808.808 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:23:55,877.877 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:23:55,879.879 INFO    ] No camera update needed
[2026-08-31 03:23:55,882.882 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:23:55,884.884 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:23:55,890.890 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:23:55,895.895 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:23:57,935.935 INFO    ] ================================================
[2026-08-31 03:23:57,951.951 INFO    ] Launching Daemon at Mon Aug 31 03:23:57 IST 2026
[2026-08-31 03:23:57,962.962 INFO    ] ================================================
[2026-08-31 03:23:58,646.646 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:23:58
[2026-08-31 03:23:59,338.338 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:23:59,644.644 INFO    ] Initializing speech engine...
[2026-08-31 03:23:59,652.652 INFO    ] 2026-08-31 03:23:59
[2026-08-31 03:23:59,970.970 INFO    ] 2026-08-31 03:23:59
[2026-08-31 03:24:00,056.056 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:24:00,270.270 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:24:00,275.275 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:24:00,457.457 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:24:00,476.476 INFO    ] time= 31/08/2026 03:24:00
[2026-08-31 03:24:00,495.495 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:24:00,504.504 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:24:00,678.678 INFO    ] No existing commands found in stream
[2026-08-31 03:24:05,709.709 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:24:05,712.712 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-08-31 03:24:09,851.851 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 03:24:09,854.854 INFO    ] Checking for system updates...
[2026-08-31 03:24:09,895.895 INFO    ] 200
[2026-08-31 03:24:09,898.898 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:24:09,951.951 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:24:09,953.953 INFO    ] No update needed
[2026-08-31 03:24:09,956.956 INFO    ] Checking for camera pi updates...
[2026-08-31 03:24:09,994.994 INFO    ] 200
[2026-08-31 03:24:09,996.996 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:24:10,038.038 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:24:10,131.131 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:24:10,133.133 INFO    ] No camera update needed
[2026-08-31 03:24:10,135.135 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:24:10,138.138 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:24:10,143.143 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:24:10,148.148 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:24:12,189.189 INFO    ] ================================================
[2026-08-31 03:24:12,205.205 INFO    ] Launching Daemon at Mon Aug 31 03:24:12 IST 2026
[2026-08-31 03:24:12,216.216 INFO    ] ================================================
[2026-08-31 03:24:12,825.825 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:24:12
[2026-08-31 03:24:13,424.424 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:24:13,701.701 INFO    ] Initializing speech engine...
[2026-08-31 03:24:13,706.706 INFO    ] 2026-08-31 03:24:13
[2026-08-31 03:24:13,967.967 INFO    ] 2026-08-31 03:24:13
[2026-08-31 03:24:14,020.020 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:24:14,246.246 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:24:14,251.251 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:24:14,430.430 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:24:14,495.495 INFO    ] time= 31/08/2026 03:24:14
[2026-08-31 03:24:14,515.515 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:24:14,530.530 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:24:14,664.664 INFO    ] No existing commands found in stream
[2026-08-31 03:24:19,678.678 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:24:19,681.681 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-08-31 03:24:21,161.161 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 03:24:21,165.165 INFO    ] Checking for system updates...
[2026-08-31 03:24:21,212.212 INFO    ] 200
[2026-08-31 03:24:21,215.215 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:24:21,276.276 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:24:21,278.278 INFO    ] No update needed
[2026-08-31 03:24:21,281.281 INFO    ] Checking for camera pi updates...
[2026-08-31 03:24:21,315.315 INFO    ] 200
[2026-08-31 03:24:21,318.318 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:24:21,359.359 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:24:21,434.434 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:24:21,437.437 INFO    ] No camera update needed
[2026-08-31 03:24:21,439.439 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:24:21,442.442 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:24:21,447.447 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:24:21,452.452 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:24:23,494.494 INFO    ] ================================================
[2026-08-31 03:24:23,510.510 INFO    ] Launching Daemon at Mon Aug 31 03:24:23 IST 2026
[2026-08-31 03:24:23,521.521 INFO    ] ================================================
[2026-08-31 03:24:24,101.101 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:24:24
[2026-08-31 03:24:24,698.698 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:24:24,970.970 INFO    ] Initializing speech engine...
[2026-08-31 03:24:24,980.980 INFO    ] 2026-08-31 03:24:24
[2026-08-31 03:24:25,240.240 INFO    ] 2026-08-31 03:24:25
[2026-08-31 03:24:25,293.293 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:24:25,515.515 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:24:25,524.524 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:24:25,656.656 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:24:25,704.704 INFO    ] time= 31/08/2026 03:24:25
[2026-08-31 03:24:25,763.763 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:24:25,790.790 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:24:25,916.916 INFO    ] No existing commands found in stream
[2026-08-31 03:24:30,944.944 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:24:30,946.946 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-08-31 03:24:32,999.999 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 03:24:33,002.002 INFO    ] Checking for system updates...
[2026-08-31 03:24:33,041.041 INFO    ] 200
[2026-08-31 03:24:33,043.043 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:24:33,096.096 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:24:33,098.098 INFO    ] No update needed
[2026-08-31 03:24:33,100.100 INFO    ] Checking for camera pi updates...
[2026-08-31 03:24:33,139.139 INFO    ] 200
[2026-08-31 03:24:33,142.142 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:24:33,182.182 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:24:33,261.261 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:24:33,263.263 INFO    ] No camera update needed
[2026-08-31 03:24:33,266.266 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:24:33,268.268 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:24:33,274.274 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:24:33,279.279 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:24:35,319.319 INFO    ] ================================================
[2026-08-31 03:24:35,335.335 INFO    ] Launching Daemon at Mon Aug 31 03:24:35 IST 2026
[2026-08-31 03:24:35,346.346 INFO    ] ================================================
[2026-08-31 03:24:36,009.009 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:24:36
[2026-08-31 03:24:36,680.680 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:24:36,956.956 INFO    ] Initializing speech engine...
[2026-08-31 03:24:36,963.963 INFO    ] 2026-08-31 03:24:36
[2026-08-31 03:24:37,224.224 INFO    ] 2026-08-31 03:24:37
[2026-08-31 03:24:37,278.278 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:24:37,500.500 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:24:37,509.509 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:24:37,721.721 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:24:37,766.766 INFO    ] time= 31/08/2026 03:24:37
[2026-08-31 03:24:37,773.773 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:24:37,791.791 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:24:37,920.920 INFO    ] No existing commands found in stream
[2026-08-31 03:24:42,934.934 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:24:42,937.937 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-08-31 03:24:44,205.205 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 03:24:44,207.207 INFO    ] Checking for system updates...
[2026-08-31 03:24:44,243.243 INFO    ] 200
[2026-08-31 03:24:44,245.245 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:24:44,297.297 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:24:44,300.300 INFO    ] No update needed
[2026-08-31 03:24:44,302.302 INFO    ] Checking for camera pi updates...
[2026-08-31 03:24:44,345.345 INFO    ] 200
[2026-08-31 03:24:44,348.348 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:24:44,400.400 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:24:44,486.486 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:24:44,489.489 INFO    ] No camera update needed
[2026-08-31 03:24:44,491.491 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:24:44,494.494 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:24:44,500.500 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:24:44,505.505 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:24:46,549.549 INFO    ] ================================================
[2026-08-31 03:24:46,571.571 INFO    ] Launching Daemon at Mon Aug 31 03:24:46 IST 2026
[2026-08-31 03:24:46,585.585 INFO    ] ================================================
[2026-08-31 03:24:47,149.149 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:24:47
[2026-08-31 03:24:47,756.756 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:24:48,043.043 INFO    ] Initializing speech engine...
[2026-08-31 03:24:48,050.050 INFO    ] 2026-08-31 03:24:48
[2026-08-31 03:24:48,327.327 INFO    ] 2026-08-31 03:24:48
[2026-08-31 03:24:48,383.383 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:24:48,883.883 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:24:48,890.890 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:24:49,042.042 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:24:49,100.100 INFO    ] time= 31/08/2026 03:24:49
[2026-08-31 03:24:49,159.159 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:24:49,187.187 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:24:49,311.311 INFO    ] No existing commands found in stream
[2026-08-31 03:24:54,336.336 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:24:54,339.339 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-08-31 03:24:57,248.248 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 03:24:57,251.251 INFO    ] Checking for system updates...
[2026-08-31 03:24:57,287.287 INFO    ] 200
[2026-08-31 03:24:57,289.289 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:24:57,343.343 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:24:57,345.345 INFO    ] No update needed
[2026-08-31 03:24:57,348.348 INFO    ] Checking for camera pi updates...
[2026-08-31 03:24:57,381.381 INFO    ] 200
[2026-08-31 03:24:57,383.383 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:24:57,428.428 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:24:57,504.504 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:24:57,506.506 INFO    ] No camera update needed
[2026-08-31 03:24:57,509.509 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:24:57,511.511 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:24:57,516.516 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:24:57,521.521 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:24:59,565.565 INFO    ] ================================================
[2026-08-31 03:24:59,582.582 INFO    ] Launching Daemon at Mon Aug 31 03:24:59 IST 2026
[2026-08-31 03:24:59,594.594 INFO    ] ================================================
[2026-08-31 03:25:00,180.180 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:25:00
[2026-08-31 03:25:00,784.784 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:25:01,049.049 INFO    ] Initializing speech engine...
[2026-08-31 03:25:01,058.058 INFO    ] 2026-08-31 03:25:01
[2026-08-31 03:25:01,354.354 INFO    ] 2026-08-31 03:25:01
[2026-08-31 03:25:01,380.380 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:25:01,564.564 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:25:01,575.575 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:25:01,748.748 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:25:01,751.751 INFO    ] time= 31/08/2026 03:25:01
[2026-08-31 03:25:01,755.755 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:25:01,764.764 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:25:01,868.868 INFO    ] No existing commands found in stream
[2026-08-31 03:25:06,880.880 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:25:06,883.883 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-08-31 03:25:10,418.418 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 03:25:10,421.421 INFO    ] Checking for system updates...
[2026-08-31 03:25:10,458.458 INFO    ] 200
[2026-08-31 03:25:10,461.461 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:25:10,521.521 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:25:10,524.524 INFO    ] No update needed
[2026-08-31 03:25:10,526.526 INFO    ] Checking for camera pi updates...
[2026-08-31 03:25:10,564.564 INFO    ] 200
[2026-08-31 03:25:10,568.568 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:25:10,609.609 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:25:10,689.689 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:25:10,692.692 INFO    ] No camera update needed
[2026-08-31 03:25:10,695.695 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:25:10,697.697 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:25:10,704.704 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:25:10,709.709 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:25:12,752.752 INFO    ] ================================================
[2026-08-31 03:25:12,768.768 INFO    ] Launching Daemon at Mon Aug 31 03:25:12 IST 2026
[2026-08-31 03:25:12,779.779 INFO    ] ================================================
[2026-08-31 03:25:13,434.434 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:25:13
[2026-08-31 03:25:14,109.109 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:25:14,414.414 INFO    ] Initializing speech engine...
[2026-08-31 03:25:14,422.422 INFO    ] 2026-08-31 03:25:14
[2026-08-31 03:25:14,719.719 INFO    ] 2026-08-31 03:25:14
[2026-08-31 03:25:14,825.825 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:25:15,046.046 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:25:15,055.055 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:25:15,249.249 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:25:15,263.263 INFO    ] time= 31/08/2026 03:25:15
[2026-08-31 03:25:15,284.284 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:25:15,311.311 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:25:15,420.420 INFO    ] No existing commands found in stream
[2026-08-31 03:25:20,437.437 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:25:20,441.441 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-08-31 03:25:22,089.089 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 03:25:22,092.092 INFO    ] Checking for system updates...
[2026-08-31 03:25:22,129.129 INFO    ] 200
[2026-08-31 03:25:22,132.132 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:25:22,184.184 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:25:22,187.187 INFO    ] No update needed
[2026-08-31 03:25:22,190.190 INFO    ] Checking for camera pi updates...
[2026-08-31 03:25:22,224.224 INFO    ] 200
[2026-08-31 03:25:22,226.226 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:25:22,272.272 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:25:22,359.359 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:25:22,361.361 INFO    ] No camera update needed
[2026-08-31 03:25:22,364.364 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:25:22,366.366 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:25:22,371.371 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:25:22,376.376 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:25:24,417.417 INFO    ] ================================================
[2026-08-31 03:25:24,433.433 INFO    ] Launching Daemon at Mon Aug 31 03:25:24 IST 2026
[2026-08-31 03:25:24,444.444 INFO    ] ================================================
[2026-08-31 03:25:25,024.024 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:25:25
[2026-08-31 03:25:25,621.621 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:25:25,881.881 INFO    ] Initializing speech engine...
[2026-08-31 03:25:25,890.890 INFO    ] 2026-08-31 03:25:25
[2026-08-31 03:25:26,190.190 INFO    ] 2026-08-31 03:25:26
[2026-08-31 03:25:26,225.225 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:25:26,373.373 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:25:26,380.380 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:25:26,538.538 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:25:26,544.544 INFO    ] time= 31/08/2026 03:25:26
[2026-08-31 03:25:26,549.549 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:25:26,572.572 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:25:26,626.626 INFO    ] No existing commands found in stream
[2026-08-31 03:25:31,637.637 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:25:31,640.640 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-08-31 03:25:33,499.499 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 03:25:33,501.501 INFO    ] Checking for system updates...
[2026-08-31 03:25:33,537.537 INFO    ] 200
[2026-08-31 03:25:33,540.540 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:25:33,599.599 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:25:33,602.602 INFO    ] No update needed
[2026-08-31 03:25:33,604.604 INFO    ] Checking for camera pi updates...
[2026-08-31 03:25:33,638.638 INFO    ] 200
[2026-08-31 03:25:33,640.640 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:25:33,686.686 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:25:33,783.783 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:25:33,786.786 INFO    ] No camera update needed
[2026-08-31 03:25:33,788.788 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:25:33,791.791 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:25:33,796.796 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:25:33,801.801 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:25:35,841.841 INFO    ] ================================================
[2026-08-31 03:25:35,856.856 INFO    ] Launching Daemon at Mon Aug 31 03:25:35 IST 2026
[2026-08-31 03:25:35,867.867 INFO    ] ================================================
[2026-08-31 03:25:36,490.490 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:25:36
[2026-08-31 03:25:37,077.077 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:25:37,346.346 INFO    ] Initializing speech engine...
[2026-08-31 03:25:37,355.355 INFO    ] 2026-08-31 03:25:37
[2026-08-31 03:25:37,606.606 INFO    ] 2026-08-31 03:25:37
[2026-08-31 03:25:37,640.640 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:25:37,817.817 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:25:37,830.830 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:25:38,029.029 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:25:38,047.047 INFO    ] time= 31/08/2026 03:25:38
[2026-08-31 03:25:38,089.089 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:25:38,143.143 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:25:38,231.231 INFO    ] No existing commands found in stream
[2026-08-31 03:25:43,243.243 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:25:43,246.246 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-08-31 03:25:46,081.081 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 03:25:46,084.084 INFO    ] Checking for system updates...
[2026-08-31 03:25:46,127.127 INFO    ] 200
[2026-08-31 03:25:46,130.130 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:25:46,196.196 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:25:46,199.199 INFO    ] No update needed
[2026-08-31 03:25:46,201.201 INFO    ] Checking for camera pi updates...
[2026-08-31 03:25:46,236.236 INFO    ] 200
[2026-08-31 03:25:46,239.239 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:25:46,299.299 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:25:46,373.373 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:25:46,375.375 INFO    ] No camera update needed
[2026-08-31 03:25:46,378.378 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:25:46,380.380 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:25:46,385.385 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:25:46,390.390 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:25:48,430.430 INFO    ] ================================================
[2026-08-31 03:25:48,445.445 INFO    ] Launching Daemon at Mon Aug 31 03:25:48 IST 2026
[2026-08-31 03:25:48,456.456 INFO    ] ================================================
[2026-08-31 03:25:49,055.055 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:25:49
[2026-08-31 03:25:49,640.640 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:25:49,913.913 INFO    ] Initializing speech engine...
[2026-08-31 03:25:49,922.922 INFO    ] 2026-08-31 03:25:49
[2026-08-31 03:25:50,163.163 INFO    ] 2026-08-31 03:25:50
[2026-08-31 03:25:50,197.197 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:25:50,394.394 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:25:50,449.449 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:25:50,596.596 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:25:50,651.651 INFO    ] time= 31/08/2026 03:25:50
[2026-08-31 03:25:50,716.716 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:25:50,723.723 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:25:50,843.843 INFO    ] No existing commands found in stream
[2026-08-31 03:25:55,868.868 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:25:55,871.871 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-08-31 03:25:56,526.526 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 03:25:56,529.529 INFO    ] Checking for system updates...
[2026-08-31 03:25:56,569.569 INFO    ] 200
[2026-08-31 03:25:56,572.572 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:25:56,630.630 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:25:56,633.633 INFO    ] No update needed
[2026-08-31 03:25:56,635.635 INFO    ] Checking for camera pi updates...
[2026-08-31 03:25:56,672.672 INFO    ] 200
[2026-08-31 03:25:56,675.675 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:25:56,720.720 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:25:56,795.795 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:25:56,797.797 INFO    ] No camera update needed
[2026-08-31 03:25:56,800.800 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:25:56,802.802 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:25:56,807.807 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:25:56,812.812 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:25:58,853.853 INFO    ] ================================================
[2026-08-31 03:25:58,868.868 INFO    ] Launching Daemon at Mon Aug 31 03:25:58 IST 2026
[2026-08-31 03:25:58,878.878 INFO    ] ================================================
[2026-08-31 03:25:59,533.533 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:25:59
[2026-08-31 03:26:00,209.209 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:26:00,512.512 INFO    ] Initializing speech engine...
[2026-08-31 03:26:00,520.520 INFO    ] 2026-08-31 03:26:00
[2026-08-31 03:26:00,809.809 INFO    ] 2026-08-31 03:26:00
[2026-08-31 03:26:00,855.855 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:26:01,133.133 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:26:01,142.142 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:26:01,338.338 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:26:01,355.355 INFO    ] time= 31/08/2026 03:26:01
[2026-08-31 03:26:01,365.365 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:26:01,392.392 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:26:01,500.500 INFO    ] No existing commands found in stream
[2026-08-31 03:26:06,521.521 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:26:06,525.525 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-08-31 03:26:07,615.615 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 03:26:07,619.619 INFO    ] Checking for system updates...
[2026-08-31 03:26:07,659.659 INFO    ] 200
[2026-08-31 03:26:07,662.662 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:26:07,714.714 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:26:07,717.717 INFO    ] No update needed
[2026-08-31 03:26:07,720.720 INFO    ] Checking for camera pi updates...
[2026-08-31 03:26:07,757.757 INFO    ] 200
[2026-08-31 03:26:07,760.760 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:26:07,801.801 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:26:07,990.990 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:26:07,993.993 INFO    ] No camera update needed
[2026-08-31 03:26:07,995.995 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:26:07,998.998 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:26:08,004.004 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:26:08,010.010 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:26:10,052.052 INFO    ] ================================================
[2026-08-31 03:26:10,067.067 INFO    ] Launching Daemon at Mon Aug 31 03:26:10 IST 2026
[2026-08-31 03:26:10,077.077 INFO    ] ================================================
[2026-08-31 03:26:10,642.642 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:26:10
[2026-08-31 03:26:11,223.223 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:26:11,482.482 INFO    ] Initializing speech engine...
[2026-08-31 03:26:11,502.502 INFO    ] 2026-08-31 03:26:11
[2026-08-31 03:26:11,751.751 INFO    ] 2026-08-31 03:26:11
[2026-08-31 03:26:11,786.786 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:26:11,960.960 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:26:11,972.972 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:26:12,121.121 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:26:12,125.125 INFO    ] time= 31/08/2026 03:26:12
[2026-08-31 03:26:12,131.131 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:26:12,158.158 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:26:12,288.288 INFO    ] No existing commands found in stream
[2026-08-31 03:26:17,313.313 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:26:17,316.316 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-08-31 03:26:21,370.370 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 03:26:21,372.372 INFO    ] Checking for system updates...
[2026-08-31 03:26:21,407.407 INFO    ] 200
[2026-08-31 03:26:21,410.410 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:26:21,462.462 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:26:21,465.465 INFO    ] No update needed
[2026-08-31 03:26:21,467.467 INFO    ] Checking for camera pi updates...
[2026-08-31 03:26:21,500.500 INFO    ] 200
[2026-08-31 03:26:21,502.502 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:26:21,542.542 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:26:21,618.618 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:26:21,620.620 INFO    ] No camera update needed
[2026-08-31 03:26:21,622.622 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:26:21,625.625 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:26:21,630.630 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:26:21,635.635 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:26:23,676.676 INFO    ] ================================================
[2026-08-31 03:26:23,691.691 INFO    ] Launching Daemon at Mon Aug 31 03:26:23 IST 2026
[2026-08-31 03:26:23,701.701 INFO    ] ================================================
[2026-08-31 03:26:24,282.282 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:26:24
[2026-08-31 03:26:24,883.883 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:26:25,161.161 INFO    ] Initializing speech engine...
[2026-08-31 03:26:25,181.181 INFO    ] 2026-08-31 03:26:25
[2026-08-31 03:26:25,455.455 INFO    ] 2026-08-31 03:26:25
[2026-08-31 03:26:25,491.491 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:26:25,692.692 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:26:25,707.707 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:26:25,850.850 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:26:25,874.874 INFO    ] time= 31/08/2026 03:26:25
[2026-08-31 03:26:25,883.883 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:26:25,890.890 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:26:25,967.967 INFO    ] No existing commands found in stream
[2026-08-31 03:26:30,977.977 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:26:30,980.980 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-08-31 03:26:34,314.314 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 03:26:34,317.317 INFO    ] Checking for system updates...
[2026-08-31 03:26:34,356.356 INFO    ] 200
[2026-08-31 03:26:34,359.359 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:26:34,419.419 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:26:34,422.422 INFO    ] No update needed
[2026-08-31 03:26:34,424.424 INFO    ] Checking for camera pi updates...
[2026-08-31 03:26:34,462.462 INFO    ] 200
[2026-08-31 03:26:34,464.464 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:26:34,505.505 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:26:34,595.595 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:26:34,598.598 INFO    ] No camera update needed
[2026-08-31 03:26:34,600.600 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:26:34,603.603 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:26:34,610.610 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:26:34,615.615 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:26:36,656.656 INFO    ] ================================================
[2026-08-31 03:26:36,672.672 INFO    ] Launching Daemon at Mon Aug 31 03:26:36 IST 2026
[2026-08-31 03:26:36,683.683 INFO    ] ================================================
[2026-08-31 03:26:37,265.265 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:26:37
[2026-08-31 03:26:37,863.863 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:26:38,142.142 INFO    ] Initializing speech engine...
[2026-08-31 03:26:38,153.153 INFO    ] 2026-08-31 03:26:38
[2026-08-31 03:26:38,401.401 INFO    ] 2026-08-31 03:26:38
[2026-08-31 03:26:38,436.436 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:26:38,695.695 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:26:38,706.706 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:26:38,860.860 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:26:38,925.925 INFO    ] time= 31/08/2026 03:26:38
[2026-08-31 03:26:38,979.979 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:26:38,985.985 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:26:39,111.111 INFO    ] No existing commands found in stream
[2026-08-31 03:26:44,161.161 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:26:44,164.164 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-08-31 03:26:47,246.246 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 03:26:47,249.249 INFO    ] Checking for system updates...
[2026-08-31 03:26:47,289.289 INFO    ] 200
[2026-08-31 03:26:47,292.292 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:26:47,351.351 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:26:47,353.353 INFO    ] No update needed
[2026-08-31 03:26:47,356.356 INFO    ] Checking for camera pi updates...
[2026-08-31 03:26:47,391.391 INFO    ] 200
[2026-08-31 03:26:47,394.394 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:26:47,435.435 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:26:47,517.517 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:26:47,520.520 INFO    ] No camera update needed
[2026-08-31 03:26:47,523.523 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:26:47,525.525 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:26:47,532.532 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:26:47,537.537 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:26:49,579.579 INFO    ] ================================================
[2026-08-31 03:26:49,594.594 INFO    ] Launching Daemon at Mon Aug 31 03:26:49 IST 2026
[2026-08-31 03:26:49,605.605 INFO    ] ================================================
[2026-08-31 03:26:50,277.277 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:26:50
[2026-08-31 03:26:50,980.980 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:26:51,286.286 INFO    ] Initializing speech engine...
[2026-08-31 03:26:51,295.295 INFO    ] 2026-08-31 03:26:51
[2026-08-31 03:26:51,575.575 INFO    ] 2026-08-31 03:26:51
[2026-08-31 03:26:51,628.628 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:26:51,855.855 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:26:51,860.860 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:26:51,995.995 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:26:52,047.047 INFO    ] time= 31/08/2026 03:26:51
[2026-08-31 03:26:52,107.107 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:26:52,131.131 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:26:52,277.277 INFO    ] No existing commands found in stream
[2026-08-31 03:26:57,307.307 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:26:57,317.317 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-08-31 03:26:58,207.207 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 03:26:58,210.210 INFO    ] Checking for system updates...
[2026-08-31 03:26:58,247.247 INFO    ] 200
[2026-08-31 03:26:58,250.250 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:26:58,310.310 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:26:58,313.313 INFO    ] No update needed
[2026-08-31 03:26:58,316.316 INFO    ] Checking for camera pi updates...
[2026-08-31 03:26:58,355.355 INFO    ] 200
[2026-08-31 03:26:58,358.358 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:26:58,404.404 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:26:58,503.503 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:26:58,506.506 INFO    ] No camera update needed
[2026-08-31 03:26:58,509.509 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:26:58,512.512 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:26:58,518.518 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:26:58,524.524 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:27:00,564.564 INFO    ] ================================================
[2026-08-31 03:27:00,579.579 INFO    ] Launching Daemon at Mon Aug 31 03:27:00 IST 2026
[2026-08-31 03:27:00,590.590 INFO    ] ================================================
[2026-08-31 03:27:01,176.176 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:27:01
[2026-08-31 03:27:01,868.868 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:27:02,423.423 INFO    ] Initializing speech engine...
[2026-08-31 03:27:02,426.426 INFO    ] 2026-08-31 03:27:02
[2026-08-31 03:27:02,842.842 INFO    ] 2026-08-31 03:27:02
[2026-08-31 03:27:02,899.899 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:27:03,072.072 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:27:03,076.076 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:27:03,234.234 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:27:03,293.293 INFO    ] time= 31/08/2026 03:27:03
[2026-08-31 03:27:03,322.322 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:27:03,359.359 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:27:03,414.414 INFO    ] No existing commands found in stream
[2026-08-31 03:27:08,423.423 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:27:08,426.426 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-08-31 03:27:12,171.171 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 03:27:12,173.173 INFO    ] Checking for system updates...
[2026-08-31 03:27:12,214.214 INFO    ] 200
[2026-08-31 03:27:12,217.217 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:27:12,276.276 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:27:12,279.279 INFO    ] No update needed
[2026-08-31 03:27:12,281.281 INFO    ] Checking for camera pi updates...
[2026-08-31 03:27:12,314.314 INFO    ] 200
[2026-08-31 03:27:12,317.317 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:27:12,363.363 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:27:12,440.440 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:27:12,443.443 INFO    ] No camera update needed
[2026-08-31 03:27:12,445.445 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:27:12,447.447 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:27:12,459.459 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:27:12,464.464 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:27:14,503.503 INFO    ] ================================================
[2026-08-31 03:27:14,518.518 INFO    ] Launching Daemon at Mon Aug 31 03:27:14 IST 2026
[2026-08-31 03:27:14,529.529 INFO    ] ================================================
[2026-08-31 03:27:15,167.167 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:27:15
[2026-08-31 03:27:15,799.799 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:27:16,045.045 INFO    ] Initializing speech engine...
[2026-08-31 03:27:16,052.052 INFO    ] 2026-08-31 03:27:16
[2026-08-31 03:27:16,359.359 INFO    ] 2026-08-31 03:27:16
[2026-08-31 03:27:16,397.397 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:27:16,595.595 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:27:16,602.602 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:27:16,737.737 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:27:16,744.744 INFO    ] time= 31/08/2026 03:27:16
[2026-08-31 03:27:16,763.763 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:27:16,784.784 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:27:16,870.870 INFO    ] No existing commands found in stream
[2026-08-31 03:27:21,881.881 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:27:21,884.884 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-08-31 03:27:23,056.056 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 03:27:23,059.059 INFO    ] Checking for system updates...
[2026-08-31 03:27:23,094.094 INFO    ] 200
[2026-08-31 03:27:23,097.097 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:27:23,149.149 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:27:23,151.151 INFO    ] No update needed
[2026-08-31 03:27:23,154.154 INFO    ] Checking for camera pi updates...
[2026-08-31 03:27:23,187.187 INFO    ] 200
[2026-08-31 03:27:23,190.190 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:27:23,231.231 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:27:23,310.310 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:27:23,313.313 INFO    ] No camera update needed
[2026-08-31 03:27:23,315.315 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:27:23,317.317 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:27:23,323.323 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:27:23,327.327 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:27:25,369.369 INFO    ] ================================================
[2026-08-31 03:27:25,384.384 INFO    ] Launching Daemon at Mon Aug 31 03:27:25 IST 2026
[2026-08-31 03:27:25,395.395 INFO    ] ================================================
[2026-08-31 03:27:25,964.964 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:27:25
[2026-08-31 03:27:26,550.550 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:27:26,803.803 INFO    ] Initializing speech engine...
[2026-08-31 03:27:26,810.810 INFO    ] 2026-08-31 03:27:26
[2026-08-31 03:27:27,109.109 INFO    ] 2026-08-31 03:27:27
[2026-08-31 03:27:27,136.136 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:27:27,341.341 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:27:27,352.352 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:27:27,527.527 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:27:27,535.535 INFO    ] time= 31/08/2026 03:27:27
[2026-08-31 03:27:27,543.543 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:27:27,587.587 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:27:27,711.711 INFO    ] No existing commands found in stream
[2026-08-31 03:27:32,736.736 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:27:32,740.740 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-08-31 03:27:35,250.250 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 03:27:35,253.253 INFO    ] Checking for system updates...
[2026-08-31 03:27:35,288.288 INFO    ] 200
[2026-08-31 03:27:35,291.291 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:27:35,344.344 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:27:35,346.346 INFO    ] No update needed
[2026-08-31 03:27:35,349.349 INFO    ] Checking for camera pi updates...
[2026-08-31 03:27:35,382.382 INFO    ] 200
[2026-08-31 03:27:35,384.384 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:27:35,424.424 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:27:35,495.495 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:27:35,498.498 INFO    ] No camera update needed
[2026-08-31 03:27:35,500.500 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:27:35,502.502 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:27:35,508.508 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:27:35,513.513 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:27:37,557.557 INFO    ] ================================================
[2026-08-31 03:27:37,573.573 INFO    ] Launching Daemon at Mon Aug 31 03:27:37 IST 2026
[2026-08-31 03:27:37,583.583 INFO    ] ================================================
[2026-08-31 03:27:38,164.164 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:27:38
[2026-08-31 03:27:38,758.758 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:27:39,032.032 INFO    ] Initializing speech engine...
[2026-08-31 03:27:39,038.038 INFO    ] 2026-08-31 03:27:39
[2026-08-31 03:27:39,292.292 INFO    ] 2026-08-31 03:27:39
[2026-08-31 03:27:39,358.358 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:27:39,590.590 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:27:39,595.595 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:27:39,734.734 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:27:39,809.809 INFO    ] time= 31/08/2026 03:27:39
[2026-08-31 03:27:39,865.865 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:27:39,872.872 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:27:40,023.023 INFO    ] No existing commands found in stream
[2026-08-31 03:27:45,062.062 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:27:45,065.065 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-08-31 03:27:48,372.372 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 03:27:48,375.375 INFO    ] Checking for system updates...
[2026-08-31 03:27:48,420.420 INFO    ] 200
[2026-08-31 03:27:48,423.423 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:27:48,481.481 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:27:48,484.484 INFO    ] No update needed
[2026-08-31 03:27:48,487.487 INFO    ] Checking for camera pi updates...
[2026-08-31 03:27:48,529.529 INFO    ] 200
[2026-08-31 03:27:48,531.531 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:27:48,575.575 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:27:48,652.652 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:27:48,654.654 INFO    ] No camera update needed
[2026-08-31 03:27:48,656.656 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:27:48,659.659 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:27:48,664.664 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:27:48,669.669 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:27:50,713.713 INFO    ] ================================================
[2026-08-31 03:27:50,728.728 INFO    ] Launching Daemon at Mon Aug 31 03:27:50 IST 2026
[2026-08-31 03:27:50,739.739 INFO    ] ================================================
[2026-08-31 03:27:51,312.312 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:27:51
[2026-08-31 03:27:51,996.996 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:27:52,301.301 INFO    ] Initializing speech engine...
[2026-08-31 03:27:52,308.308 INFO    ] 2026-08-31 03:27:52
[2026-08-31 03:27:52,583.583 INFO    ] 2026-08-31 03:27:52
[2026-08-31 03:27:52,640.640 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:27:52,870.870 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:27:52,876.876 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:27:53,083.083 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:27:53,133.133 INFO    ] time= 31/08/2026 03:27:53
[2026-08-31 03:27:53,152.152 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:27:53,171.171 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:27:53,313.313 INFO    ] No existing commands found in stream
[2026-08-31 03:27:58,339.339 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:27:58,342.342 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-08-31 03:28:01,459.459 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 03:28:01,462.462 INFO    ] Checking for system updates...
[2026-08-31 03:28:01,499.499 INFO    ] 200
[2026-08-31 03:28:01,502.502 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:28:01,555.555 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:28:01,558.558 INFO    ] No update needed
[2026-08-31 03:28:01,560.560 INFO    ] Checking for camera pi updates...
[2026-08-31 03:28:01,595.595 INFO    ] 200
[2026-08-31 03:28:01,598.598 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:28:01,644.644 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:28:01,712.712 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:28:01,715.715 INFO    ] No camera update needed
[2026-08-31 03:28:01,723.723 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:28:01,726.726 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:28:01,736.736 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:28:01,744.744 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:28:03,793.793 INFO    ] ================================================
[2026-08-31 03:28:03,808.808 INFO    ] Launching Daemon at Mon Aug 31 03:28:03 IST 2026
[2026-08-31 03:28:03,818.818 INFO    ] ================================================
[2026-08-31 03:28:04,397.397 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:28:04
[2026-08-31 03:28:05,017.017 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:28:05,321.321 INFO    ] Initializing speech engine...
[2026-08-31 03:28:05,330.330 INFO    ] 2026-08-31 03:28:05
[2026-08-31 03:28:05,614.614 INFO    ] 2026-08-31 03:28:05
[2026-08-31 03:28:05,723.723 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:28:05,935.935 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:28:05,944.944 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:28:06,138.138 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:28:06,150.150 INFO    ] time= 31/08/2026 03:28:06
[2026-08-31 03:28:06,168.168 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:28:06,175.175 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:28:06,306.306 INFO    ] No existing commands found in stream
[2026-08-31 03:28:11,322.322 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:28:11,325.325 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-08-31 03:28:15,156.156 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 03:28:15,159.159 INFO    ] Checking for system updates...
[2026-08-31 03:28:15,195.195 INFO    ] 200
[2026-08-31 03:28:15,197.197 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:28:15,254.254 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:28:15,257.257 INFO    ] No update needed
[2026-08-31 03:28:15,259.259 INFO    ] Checking for camera pi updates...
[2026-08-31 03:28:15,293.293 INFO    ] 200
[2026-08-31 03:28:15,296.296 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:28:15,345.345 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:28:15,517.517 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:28:15,519.519 INFO    ] No camera update needed
[2026-08-31 03:28:15,522.522 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:28:15,524.524 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:28:15,529.529 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:28:15,534.534 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:28:17,574.574 INFO    ] ================================================
[2026-08-31 03:28:17,589.589 INFO    ] Launching Daemon at Mon Aug 31 03:28:17 IST 2026
[2026-08-31 03:28:17,600.600 INFO    ] ================================================
[2026-08-31 03:28:18,256.256 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:28:18
[2026-08-31 03:28:18,891.891 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:28:19,139.139 INFO    ] Initializing speech engine...
[2026-08-31 03:28:19,163.163 INFO    ] 2026-08-31 03:28:19
[2026-08-31 03:28:19,417.417 INFO    ] 2026-08-31 03:28:19
[2026-08-31 03:28:19,452.452 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:28:19,710.710 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:28:19,718.718 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:28:19,854.854 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:28:19,891.891 INFO    ] time= 31/08/2026 03:28:19
[2026-08-31 03:28:19,950.950 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:28:19,990.990 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:28:20,115.115 INFO    ] No existing commands found in stream
[2026-08-31 03:28:25,140.140 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:28:25,143.143 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-08-31 03:28:25,918.918 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 03:28:25,920.920 INFO    ] Checking for system updates...
[2026-08-31 03:28:25,956.956 INFO    ] 200
[2026-08-31 03:28:25,960.960 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:28:26,022.022 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:28:26,025.025 INFO    ] No update needed
[2026-08-31 03:28:26,027.027 INFO    ] Checking for camera pi updates...
[2026-08-31 03:28:26,063.063 INFO    ] 200
[2026-08-31 03:28:26,065.065 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:28:26,113.113 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:28:26,193.193 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:28:26,196.196 INFO    ] No camera update needed
[2026-08-31 03:28:26,199.199 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:28:26,202.202 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:28:26,208.208 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:28:26,214.214 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:28:28,255.255 INFO    ] ================================================
[2026-08-31 03:28:28,270.270 INFO    ] Launching Daemon at Mon Aug 31 03:28:28 IST 2026
[2026-08-31 03:28:28,281.281 INFO    ] ================================================
[2026-08-31 03:28:28,906.906 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:28:28
[2026-08-31 03:28:29,496.496 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:28:29,766.766 INFO    ] Initializing speech engine...
[2026-08-31 03:28:29,776.776 INFO    ] 2026-08-31 03:28:29
[2026-08-31 03:28:30,029.029 INFO    ] 2026-08-31 03:28:30
[2026-08-31 03:28:30,064.064 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:28:30,235.235 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:28:30,247.247 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:28:30,392.392 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:28:30,397.397 INFO    ] time= 31/08/2026 03:28:30
[2026-08-31 03:28:30,403.403 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:28:30,455.455 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:28:30,582.582 INFO    ] No existing commands found in stream
[2026-08-31 03:28:35,605.605 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:28:35,608.608 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-08-31 03:28:39,733.733 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 03:28:39,735.735 INFO    ] Checking for system updates...
[2026-08-31 03:28:39,772.772 INFO    ] 200
[2026-08-31 03:28:39,774.774 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:28:39,828.828 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:28:39,831.831 INFO    ] No update needed
[2026-08-31 03:28:39,833.833 INFO    ] Checking for camera pi updates...
[2026-08-31 03:28:39,875.875 INFO    ] 200
[2026-08-31 03:28:39,877.877 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:28:39,919.919 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:28:39,993.993 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:28:39,995.995 INFO    ] No camera update needed
[2026-08-31 03:28:39,998.998 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:28:40,000.000 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:28:40,006.006 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:28:40,011.011 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:28:42,052.052 INFO    ] ================================================
[2026-08-31 03:28:42,067.067 INFO    ] Launching Daemon at Mon Aug 31 03:28:42 IST 2026
[2026-08-31 03:28:42,078.078 INFO    ] ================================================
[2026-08-31 03:28:42,648.648 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:28:42
[2026-08-31 03:28:43,238.238 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:28:43,506.506 INFO    ] Initializing speech engine...
[2026-08-31 03:28:43,515.515 INFO    ] 2026-08-31 03:28:43
[2026-08-31 03:28:43,760.760 INFO    ] 2026-08-31 03:28:43
[2026-08-31 03:28:43,796.796 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:28:44,051.051 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:28:44,056.056 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:28:44,204.204 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:28:44,268.268 INFO    ] time= 31/08/2026 03:28:44
[2026-08-31 03:28:44,315.315 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:28:44,321.321 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:28:44,445.445 INFO    ] No existing commands found in stream
[2026-08-31 03:28:49,470.470 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:28:49,473.473 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-08-31 03:28:52,493.493 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 03:28:52,496.496 INFO    ] Checking for system updates...
[2026-08-31 03:28:52,531.531 INFO    ] 200
[2026-08-31 03:28:52,534.534 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:28:52,586.586 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:28:52,588.588 INFO    ] No update needed
[2026-08-31 03:28:52,591.591 INFO    ] Checking for camera pi updates...
[2026-08-31 03:28:52,625.625 INFO    ] 200
[2026-08-31 03:28:52,627.627 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:28:52,667.667 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:28:52,750.750 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:28:52,753.753 INFO    ] No camera update needed
[2026-08-31 03:28:52,755.755 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:28:52,757.757 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:28:52,763.763 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:28:52,768.768 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:28:54,810.810 INFO    ] ================================================
[2026-08-31 03:28:54,825.825 INFO    ] Launching Daemon at Mon Aug 31 03:28:54 IST 2026
[2026-08-31 03:28:54,836.836 INFO    ] ================================================
[2026-08-31 03:28:55,424.424 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:28:55
[2026-08-31 03:28:56,028.028 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:28:56,300.300 INFO    ] Initializing speech engine...
[2026-08-31 03:28:56,315.315 INFO    ] 2026-08-31 03:28:56
[2026-08-31 03:28:56,576.576 INFO    ] 2026-08-31 03:28:56
[2026-08-31 03:28:56,627.627 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:28:56,885.885 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:28:56,893.893 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:28:57,079.079 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:28:57,132.132 INFO    ] time= 31/08/2026 03:28:57
[2026-08-31 03:28:57,139.139 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:28:57,157.157 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:28:57,283.283 INFO    ] No existing commands found in stream
[2026-08-31 03:29:02,300.300 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:29:02,303.303 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-08-31 03:29:03,775.775 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 03:29:03,778.778 INFO    ] Checking for system updates...
[2026-08-31 03:29:03,815.815 INFO    ] 200
[2026-08-31 03:29:03,818.818 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:29:03,875.875 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:29:03,877.877 INFO    ] No update needed
[2026-08-31 03:29:03,880.880 INFO    ] Checking for camera pi updates...
[2026-08-31 03:29:03,913.913 INFO    ] 200
[2026-08-31 03:29:03,916.916 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:29:03,956.956 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:29:04,040.040 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:29:04,042.042 INFO    ] No camera update needed
[2026-08-31 03:29:04,044.044 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:29:04,047.047 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:29:04,052.052 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:29:04,057.057 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:29:06,098.098 INFO    ] ================================================
[2026-08-31 03:29:06,114.114 INFO    ] Launching Daemon at Mon Aug 31 03:29:06 IST 2026
[2026-08-31 03:29:06,124.124 INFO    ] ================================================
[2026-08-31 03:29:06,712.712 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:29:06
[2026-08-31 03:29:07,310.310 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:29:07,594.594 INFO    ] Initializing speech engine...
[2026-08-31 03:29:07,603.603 INFO    ] 2026-08-31 03:29:07
[2026-08-31 03:29:07,869.869 INFO    ] 2026-08-31 03:29:07
[2026-08-31 03:29:07,907.907 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:29:08,128.128 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:29:08,151.151 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:29:08,364.364 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:29:08,382.382 INFO    ] time= 31/08/2026 03:29:08
[2026-08-31 03:29:08,442.442 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:29:08,491.491 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:29:08,571.571 INFO    ] No existing commands found in stream
[2026-08-31 03:29:13,583.583 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:29:13,586.586 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-08-31 03:29:16,014.014 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 03:29:16,016.016 INFO    ] Checking for system updates...
[2026-08-31 03:29:16,053.053 INFO    ] 200
[2026-08-31 03:29:16,055.055 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:29:16,112.112 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:29:16,115.115 INFO    ] No update needed
[2026-08-31 03:29:16,117.117 INFO    ] Checking for camera pi updates...
[2026-08-31 03:29:16,150.150 INFO    ] 200
[2026-08-31 03:29:16,152.152 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:29:16,192.192 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:29:16,268.268 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:29:16,270.270 INFO    ] No camera update needed
[2026-08-31 03:29:16,273.273 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:29:16,275.275 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:29:16,280.280 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:29:16,285.285 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:29:18,325.325 INFO    ] ================================================
[2026-08-31 03:29:18,339.339 INFO    ] Launching Daemon at Mon Aug 31 03:29:18 IST 2026
[2026-08-31 03:29:18,350.350 INFO    ] ================================================
[2026-08-31 03:29:18,922.922 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:29:18
[2026-08-31 03:29:19,518.518 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:29:19,789.789 INFO    ] Initializing speech engine...
[2026-08-31 03:29:19,806.806 INFO    ] 2026-08-31 03:29:19
[2026-08-31 03:29:20,094.094 INFO    ] 2026-08-31 03:29:20
[2026-08-31 03:29:20,133.133 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:29:20,312.312 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:29:20,344.344 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:29:20,480.480 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:29:20,487.487 INFO    ] time= 31/08/2026 03:29:20
[2026-08-31 03:29:20,507.507 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:29:20,529.529 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:29:20,623.623 INFO    ] No existing commands found in stream
[2026-08-31 03:29:25,658.658 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:29:25,661.661 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-08-31 03:29:28,438.438 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 03:29:28,441.441 INFO    ] Checking for system updates...
[2026-08-31 03:29:28,477.477 INFO    ] 200
[2026-08-31 03:29:28,480.480 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:29:28,533.533 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:29:28,535.535 INFO    ] No update needed
[2026-08-31 03:29:28,538.538 INFO    ] Checking for camera pi updates...
[2026-08-31 03:29:28,572.572 INFO    ] 200
[2026-08-31 03:29:28,575.575 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:29:28,620.620 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:29:28,670.670 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:29:28,673.673 INFO    ] No camera update needed
[2026-08-31 03:29:28,676.676 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:29:28,678.678 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:29:28,685.685 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:29:28,690.690 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:29:30,731.731 INFO    ] ================================================
[2026-08-31 03:29:30,746.746 INFO    ] Launching Daemon at Mon Aug 31 03:29:30 IST 2026
[2026-08-31 03:29:30,756.756 INFO    ] ================================================
[2026-08-31 03:29:31,346.346 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:29:31
[2026-08-31 03:29:32,016.016 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:29:32,339.339 INFO    ] Initializing speech engine...
[2026-08-31 03:29:32,348.348 INFO    ] 2026-08-31 03:29:32
[2026-08-31 03:29:32,652.652 INFO    ] 2026-08-31 03:29:32
[2026-08-31 03:29:32,695.695 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:29:32,927.927 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:29:32,933.933 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:29:33,091.091 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:29:33,140.140 INFO    ] time= 31/08/2026 03:29:33
[2026-08-31 03:29:33,194.194 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:29:33,240.240 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:29:33,373.373 INFO    ] No existing commands found in stream
[2026-08-31 03:29:38,409.409 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:29:38,411.411 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-08-31 03:29:42,405.405 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 03:29:42,408.408 INFO    ] Checking for system updates...
[2026-08-31 03:29:42,444.444 INFO    ] 200
[2026-08-31 03:29:42,446.446 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:29:42,501.501 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:29:42,504.504 INFO    ] No update needed
[2026-08-31 03:29:42,506.506 INFO    ] Checking for camera pi updates...
[2026-08-31 03:29:42,539.539 INFO    ] 200
[2026-08-31 03:29:42,541.541 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:29:42,581.581 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:29:42,679.679 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:29:42,682.682 INFO    ] No camera update needed
[2026-08-31 03:29:42,684.684 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:29:42,687.687 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:29:42,693.693 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:29:42,699.699 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:29:44,740.740 INFO    ] ================================================
[2026-08-31 03:29:44,755.755 INFO    ] Launching Daemon at Mon Aug 31 03:29:44 IST 2026
[2026-08-31 03:29:44,765.765 INFO    ] ================================================
[2026-08-31 03:29:45,331.331 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:29:45
[2026-08-31 03:29:45,914.914 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:29:46,180.180 INFO    ] Initializing speech engine...
[2026-08-31 03:29:46,189.189 INFO    ] 2026-08-31 03:29:46
[2026-08-31 03:29:46,439.439 INFO    ] 2026-08-31 03:29:46
[2026-08-31 03:29:46,503.503 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:29:46,752.752 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:29:46,756.756 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:29:46,965.965 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:29:47,012.012 INFO    ] time= 31/08/2026 03:29:46
[2026-08-31 03:29:47,019.019 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:29:47,041.041 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:29:47,168.168 INFO    ] No existing commands found in stream
[2026-08-31 03:29:52,196.196 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:29:52,199.199 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-08-31 03:29:55,263.263 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 03:29:55,265.265 INFO    ] Checking for system updates...
[2026-08-31 03:29:55,300.300 INFO    ] 200
[2026-08-31 03:29:55,303.303 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:29:55,356.356 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:29:55,359.359 INFO    ] No update needed
[2026-08-31 03:29:55,361.361 INFO    ] Checking for camera pi updates...
[2026-08-31 03:29:55,398.398 INFO    ] 200
[2026-08-31 03:29:55,400.400 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:29:55,440.440 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:29:55,521.521 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:29:55,523.523 INFO    ] No camera update needed
[2026-08-31 03:29:55,525.525 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:29:55,528.528 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:29:55,533.533 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:29:55,538.538 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:29:57,579.579 INFO    ] ================================================
[2026-08-31 03:29:57,593.593 INFO    ] Launching Daemon at Mon Aug 31 03:29:57 IST 2026
[2026-08-31 03:29:57,604.604 INFO    ] ================================================
[2026-08-31 03:29:58,183.183 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:29:58
[2026-08-31 03:29:58,779.779 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:29:59,053.053 INFO    ] Initializing speech engine...
[2026-08-31 03:29:59,060.060 INFO    ] 2026-08-31 03:29:59
[2026-08-31 03:29:59,318.318 INFO    ] 2026-08-31 03:29:59
[2026-08-31 03:29:59,372.372 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:29:59,598.598 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:29:59,604.604 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:29:59,736.736 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:29:59,790.790 INFO    ] time= 31/08/2026 03:29:59
[2026-08-31 03:29:59,850.850 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:29:59,866.866 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:29:59,998.998 INFO    ] No existing commands found in stream
[2026-08-31 03:30:05,020.020 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:30:05,023.023 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-08-31 03:30:09,849.849 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 03:30:09,852.852 INFO    ] Checking for system updates...
[2026-08-31 03:30:09,887.887 INFO    ] 200
[2026-08-31 03:30:09,890.890 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:30:09,942.942 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:30:09,944.944 INFO    ] No update needed
[2026-08-31 03:30:09,947.947 INFO    ] Checking for camera pi updates...
[2026-08-31 03:30:09,982.982 INFO    ] 200
[2026-08-31 03:30:09,985.985 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:30:10,025.025 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:30:10,109.109 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:30:10,112.112 INFO    ] No camera update needed
[2026-08-31 03:30:10,114.114 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:30:10,116.116 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:30:10,122.122 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:30:10,126.126 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:30:12,168.168 INFO    ] ================================================
[2026-08-31 03:30:12,183.183 INFO    ] Launching Daemon at Mon Aug 31 03:30:12 IST 2026
[2026-08-31 03:30:12,194.194 INFO    ] ================================================
[2026-08-31 03:30:12,756.756 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:30:12
[2026-08-31 03:30:13,354.354 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:30:13,652.652 INFO    ] Initializing speech engine...
[2026-08-31 03:30:13,661.661 INFO    ] 2026-08-31 03:30:13
[2026-08-31 03:30:13,936.936 INFO    ] 2026-08-31 03:30:13
[2026-08-31 03:30:13,988.988 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:30:14,218.218 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:30:14,227.227 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:30:14,454.454 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:30:14,493.493 INFO    ] time= 31/08/2026 03:30:14
[2026-08-31 03:30:14,511.511 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:30:14,521.521 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:30:14,652.652 INFO    ] No existing commands found in stream
[2026-08-31 03:30:19,672.672 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:30:19,675.675 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-08-31 03:30:23,841.841 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 03:30:23,843.843 INFO    ] Checking for system updates...
[2026-08-31 03:30:23,881.881 INFO    ] 200
[2026-08-31 03:30:23,883.883 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:30:23,938.938 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:30:23,941.941 INFO    ] No update needed
[2026-08-31 03:30:23,944.944 INFO    ] Checking for camera pi updates...
[2026-08-31 03:30:23,982.982 INFO    ] 200
[2026-08-31 03:30:23,984.984 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:30:24,026.026 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:30:24,203.203 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:30:24,206.206 INFO    ] No camera update needed
[2026-08-31 03:30:24,209.209 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:30:24,211.211 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:30:24,217.217 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:30:24,223.223 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:30:26,267.267 INFO    ] ================================================
[2026-08-31 03:30:26,282.282 INFO    ] Launching Daemon at Mon Aug 31 03:30:26 IST 2026
[2026-08-31 03:30:26,293.293 INFO    ] ================================================
[2026-08-31 03:30:26,861.861 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:30:26
[2026-08-31 03:30:27,445.445 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:30:27,717.717 INFO    ] Initializing speech engine...
[2026-08-31 03:30:27,726.726 INFO    ] 2026-08-31 03:30:27
[2026-08-31 03:30:27,976.976 INFO    ] 2026-08-31 03:30:27
[2026-08-31 03:30:28,011.011 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:30:28,270.270 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:30:28,279.279 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:30:28,415.415 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:30:28,437.437 INFO    ] time= 31/08/2026 03:30:28
[2026-08-31 03:30:28,496.496 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:30:28,551.551 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:30:28,684.684 INFO    ] No existing commands found in stream
[2026-08-31 03:30:33,709.709 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:30:33,712.712 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-08-31 03:30:34,921.921 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 03:30:34,924.924 INFO    ] Checking for system updates...
[2026-08-31 03:30:34,961.961 INFO    ] 200
[2026-08-31 03:30:34,963.963 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:30:35,019.019 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:30:35,021.021 INFO    ] No update needed
[2026-08-31 03:30:35,024.024 INFO    ] Checking for camera pi updates...
[2026-08-31 03:30:35,057.057 INFO    ] 200
[2026-08-31 03:30:35,060.060 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:30:35,104.104 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:30:35,178.178 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:30:35,180.180 INFO    ] No camera update needed
[2026-08-31 03:30:35,182.182 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:30:35,185.185 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:30:35,190.190 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:30:35,195.195 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:30:37,238.238 INFO    ] ================================================
[2026-08-31 03:30:37,254.254 INFO    ] Launching Daemon at Mon Aug 31 03:30:37 IST 2026
[2026-08-31 03:30:37,265.265 INFO    ] ================================================
[2026-08-31 03:30:37,835.835 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:30:37
[2026-08-31 03:30:38,429.429 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:30:38,730.730 INFO    ] Initializing speech engine...
[2026-08-31 03:30:38,744.744 INFO    ] 2026-08-31 03:30:38
[2026-08-31 03:30:39,028.028 INFO    ] 2026-08-31 03:30:39
[2026-08-31 03:30:39,073.073 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:30:39,324.324 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:30:39,331.331 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:30:39,526.526 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:30:39,574.574 INFO    ] time= 31/08/2026 03:30:39
[2026-08-31 03:30:39,580.580 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:30:39,602.602 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:30:39,738.738 INFO    ] No existing commands found in stream
[2026-08-31 03:30:44,765.765 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:30:44,768.768 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-08-31 03:30:46,819.819 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 03:30:47,795.795 INFO    ] Checking for system updates...
[2026-08-31 03:30:47,832.832 INFO    ] 200
[2026-08-31 03:30:47,835.835 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:30:47,893.893 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:30:47,896.896 INFO    ] No update needed
[2026-08-31 03:30:47,899.899 INFO    ] Checking for camera pi updates...
[2026-08-31 03:30:47,934.934 INFO    ] 200
[2026-08-31 03:30:47,936.936 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:30:47,978.978 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:30:48,055.055 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:30:48,058.058 INFO    ] No camera update needed
[2026-08-31 03:30:48,061.061 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:30:48,063.063 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:30:48,069.069 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:30:48,075.075 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:30:50,116.116 INFO    ] ================================================
[2026-08-31 03:30:50,132.132 INFO    ] Launching Daemon at Mon Aug 31 03:30:50 IST 2026
[2026-08-31 03:30:50,143.143 INFO    ] ================================================
[2026-08-31 03:30:50,712.712 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:30:50
[2026-08-31 03:30:51,299.299 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:30:51,553.553 INFO    ] Initializing speech engine...
[2026-08-31 03:30:51,569.569 INFO    ] 2026-08-31 03:30:51
[2026-08-31 03:30:51,855.855 INFO    ] 2026-08-31 03:30:51
[2026-08-31 03:30:51,893.893 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:30:52,089.089 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:30:52,103.103 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:30:52,263.263 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:30:52,272.272 INFO    ] time= 31/08/2026 03:30:52
[2026-08-31 03:30:52,279.279 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:30:52,322.322 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:30:52,437.437 INFO    ] No existing commands found in stream
[2026-08-31 03:30:57,462.462 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:30:57,465.465 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-08-31 03:30:59,335.335 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 03:30:59,338.338 INFO    ] Checking for system updates...
[2026-08-31 03:30:59,395.395 INFO    ] 200
[2026-08-31 03:30:59,398.398 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:30:59,457.457 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:30:59,460.460 INFO    ] No update needed
[2026-08-31 03:30:59,463.463 INFO    ] Checking for camera pi updates...
[2026-08-31 03:30:59,498.498 INFO    ] 200
[2026-08-31 03:30:59,500.500 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:30:59,546.546 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:30:59,647.647 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:30:59,650.650 INFO    ] No camera update needed
[2026-08-31 03:30:59,653.653 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:30:59,656.656 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:30:59,662.662 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:30:59,667.667 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:31:01,712.712 INFO    ] ================================================
[2026-08-31 03:31:01,733.733 INFO    ] Launching Daemon at Mon Aug 31 03:31:01 IST 2026
[2026-08-31 03:31:01,749.749 INFO    ] ================================================
[2026-08-31 03:31:02,522.522 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:31:02
[2026-08-31 03:31:03,156.156 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:31:03,435.435 INFO    ] Initializing speech engine...
[2026-08-31 03:31:03,442.442 INFO    ] 2026-08-31 03:31:03
[2026-08-31 03:31:03,704.704 INFO    ] 2026-08-31 03:31:03
[2026-08-31 03:31:03,734.734 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:31:03,980.980 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:31:03,989.989 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:31:04,194.194 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:31:04,248.248 INFO    ] time= 31/08/2026 03:31:04
[2026-08-31 03:31:04,254.254 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:31:04,274.274 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:31:04,425.425 INFO    ] No existing commands found in stream
[2026-08-31 03:31:09,459.459 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:31:09,462.462 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-08-31 03:31:11,840.840 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 03:31:11,843.843 INFO    ] Checking for system updates...
[2026-08-31 03:31:11,878.878 INFO    ] 200
[2026-08-31 03:31:11,881.881 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:31:11,933.933 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:31:11,935.935 INFO    ] No update needed
[2026-08-31 03:31:11,938.938 INFO    ] Checking for camera pi updates...
[2026-08-31 03:31:11,971.971 INFO    ] 200
[2026-08-31 03:31:11,974.974 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:31:12,020.020 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:31:12,097.097 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:31:12,100.100 INFO    ] No camera update needed
[2026-08-31 03:31:12,102.102 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:31:12,104.104 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:31:12,110.110 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:31:12,115.115 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:31:14,156.156 INFO    ] ================================================
[2026-08-31 03:31:14,172.172 INFO    ] Launching Daemon at Mon Aug 31 03:31:14 IST 2026
[2026-08-31 03:31:14,182.182 INFO    ] ================================================
[2026-08-31 03:31:14,765.765 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:31:14
[2026-08-31 03:31:15,363.363 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:31:15,632.632 INFO    ] Initializing speech engine...
[2026-08-31 03:31:15,644.644 INFO    ] 2026-08-31 03:31:15
[2026-08-31 03:31:15,910.910 INFO    ] 2026-08-31 03:31:15
[2026-08-31 03:31:15,947.947 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:31:16,145.145 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:31:16,151.151 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:31:16,325.325 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:31:16,333.333 INFO    ] time= 31/08/2026 03:31:16
[2026-08-31 03:31:16,342.342 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:31:16,395.395 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:31:16,522.522 INFO    ] No existing commands found in stream
[2026-08-31 03:31:21,548.548 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:31:21,551.551 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-08-31 03:31:25,817.817 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 03:31:25,820.820 INFO    ] Checking for system updates...
[2026-08-31 03:31:25,855.855 INFO    ] 200
[2026-08-31 03:31:25,858.858 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:31:25,910.910 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:31:25,913.913 INFO    ] No update needed
[2026-08-31 03:31:25,915.915 INFO    ] Checking for camera pi updates...
[2026-08-31 03:31:25,949.949 INFO    ] 200
[2026-08-31 03:31:25,952.952 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:31:25,993.993 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:31:26,072.072 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:31:26,074.074 INFO    ] No camera update needed
[2026-08-31 03:31:26,077.077 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:31:26,079.079 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:31:26,085.085 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:31:26,090.090 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:31:28,129.129 INFO    ] ================================================
[2026-08-31 03:31:28,145.145 INFO    ] Launching Daemon at Mon Aug 31 03:31:28 IST 2026
[2026-08-31 03:31:28,156.156 INFO    ] ================================================
[2026-08-31 03:31:28,819.819 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:31:28
[2026-08-31 03:31:29,495.495 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:31:29,804.804 INFO    ] Initializing speech engine...
[2026-08-31 03:31:29,813.813 INFO    ] 2026-08-31 03:31:29
[2026-08-31 03:31:30,103.103 INFO    ] 2026-08-31 03:31:30
[2026-08-31 03:31:30,158.158 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:31:30,389.389 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:31:30,395.395 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:31:30,607.607 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:31:30,667.667 INFO    ] time= 31/08/2026 03:31:30
[2026-08-31 03:31:30,674.674 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:31:30,696.696 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:31:30,825.825 INFO    ] No existing commands found in stream
[2026-08-31 03:31:35,866.866 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:31:35,870.870 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-08-31 03:31:37,843.843 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 03:31:37,846.846 INFO    ] Checking for system updates...
[2026-08-31 03:31:37,882.882 INFO    ] 200
[2026-08-31 03:31:37,885.885 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:31:37,939.939 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:31:37,942.942 INFO    ] No update needed
[2026-08-31 03:31:37,944.944 INFO    ] Checking for camera pi updates...
[2026-08-31 03:31:37,978.978 INFO    ] 200
[2026-08-31 03:31:37,980.980 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:31:38,025.025 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:31:38,105.105 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:31:38,108.108 INFO    ] No camera update needed
[2026-08-31 03:31:38,110.110 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:31:38,113.113 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:31:38,118.118 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:31:38,123.123 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:31:40,165.165 INFO    ] ================================================
[2026-08-31 03:31:40,180.180 INFO    ] Launching Daemon at Mon Aug 31 03:31:40 IST 2026
[2026-08-31 03:31:40,190.190 INFO    ] ================================================
[2026-08-31 03:31:40,771.771 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:31:40
[2026-08-31 03:31:41,368.368 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:31:41,636.636 INFO    ] Initializing speech engine...
[2026-08-31 03:31:41,642.642 INFO    ] 2026-08-31 03:31:41
[2026-08-31 03:31:41,925.925 INFO    ] 2026-08-31 03:31:41
[2026-08-31 03:31:41,964.964 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:31:42,168.168 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:31:42,218.218 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:31:42,373.373 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:31:42,433.433 INFO    ] time= 31/08/2026 03:31:42
[2026-08-31 03:31:42,497.497 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:31:42,507.507 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:31:42,642.642 INFO    ] No existing commands found in stream
[2026-08-31 03:31:47,661.661 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:31:47,664.664 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-08-31 03:31:51,206.206 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 03:31:51,209.209 INFO    ] Checking for system updates...
[2026-08-31 03:31:51,244.244 INFO    ] 200
[2026-08-31 03:31:51,246.246 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:31:51,298.298 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:31:51,301.301 INFO    ] No update needed
[2026-08-31 03:31:51,303.303 INFO    ] Checking for camera pi updates...
[2026-08-31 03:31:51,341.341 INFO    ] 200
[2026-08-31 03:31:51,344.344 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:31:51,384.384 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:31:51,456.456 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:31:51,459.459 INFO    ] No camera update needed
[2026-08-31 03:31:51,461.461 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:31:51,464.464 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:31:51,469.469 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:31:51,474.474 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:31:53,516.516 INFO    ] ================================================
[2026-08-31 03:31:53,536.536 INFO    ] Launching Daemon at Mon Aug 31 03:31:53 IST 2026
[2026-08-31 03:31:53,548.548 INFO    ] ================================================
[2026-08-31 03:31:54,210.210 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:31:54
[2026-08-31 03:31:54,890.890 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:31:55,195.195 INFO    ] Initializing speech engine...
[2026-08-31 03:31:55,208.208 INFO    ] 2026-08-31 03:31:55
[2026-08-31 03:31:55,477.477 INFO    ] 2026-08-31 03:31:55
[2026-08-31 03:31:55,531.531 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:31:55,752.752 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:31:55,761.761 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:31:55,896.896 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:31:55,946.946 INFO    ] time= 31/08/2026 03:31:55
[2026-08-31 03:31:56,006.006 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:31:56,030.030 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:31:56,084.084 INFO    ] No existing commands found in stream
[2026-08-31 03:32:01,099.099 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:32:01,105.105 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-08-31 03:32:02,484.484 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 03:32:02,487.487 INFO    ] Checking for system updates...
[2026-08-31 03:32:02,524.524 INFO    ] 200
[2026-08-31 03:32:02,527.527 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:32:02,594.594 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:32:02,597.597 INFO    ] No update needed
[2026-08-31 03:32:02,600.600 INFO    ] Checking for camera pi updates...
[2026-08-31 03:32:02,646.646 INFO    ] 200
[2026-08-31 03:32:02,649.649 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:32:02,693.693 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:32:02,749.749 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:32:02,752.752 INFO    ] No camera update needed
[2026-08-31 03:32:02,754.754 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:32:02,757.757 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:32:02,762.762 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:32:02,767.767 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:32:04,807.807 INFO    ] ================================================
[2026-08-31 03:32:04,824.824 INFO    ] Launching Daemon at Mon Aug 31 03:32:04 IST 2026
[2026-08-31 03:32:04,835.835 INFO    ] ================================================
[2026-08-31 03:32:05,454.454 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:32:05
[2026-08-31 03:32:06,111.111 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:32:06,374.374 INFO    ] Initializing speech engine...
[2026-08-31 03:32:06,381.381 INFO    ] 2026-08-31 03:32:06
[2026-08-31 03:32:06,678.678 INFO    ] 2026-08-31 03:32:06
[2026-08-31 03:32:06,716.716 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:32:06,914.914 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:32:06,927.927 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:32:07,090.090 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:32:07,099.099 INFO    ] time= 31/08/2026 03:32:07
[2026-08-31 03:32:07,106.106 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:32:07,128.128 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:32:07,251.251 INFO    ] No existing commands found in stream
[2026-08-31 03:32:12,276.276 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:32:12,279.279 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-08-31 03:32:14,893.893 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 03:32:14,895.895 INFO    ] Checking for system updates...
[2026-08-31 03:32:14,930.930 INFO    ] 200
[2026-08-31 03:32:14,933.933 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:32:14,984.984 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:32:14,987.987 INFO    ] No update needed
[2026-08-31 03:32:14,989.989 INFO    ] Checking for camera pi updates...
[2026-08-31 03:32:15,026.026 INFO    ] 200
[2026-08-31 03:32:15,029.029 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:32:15,069.069 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:32:15,153.153 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:32:15,155.155 INFO    ] No camera update needed
[2026-08-31 03:32:15,157.157 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:32:15,160.160 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:32:15,165.165 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:32:15,170.170 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:32:17,209.209 INFO    ] ================================================
[2026-08-31 03:32:17,224.224 INFO    ] Launching Daemon at Mon Aug 31 03:32:17 IST 2026
[2026-08-31 03:32:17,235.235 INFO    ] ================================================
[2026-08-31 03:32:17,818.818 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:32:17
[2026-08-31 03:32:18,414.414 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:32:18,681.681 INFO    ] Initializing speech engine...
[2026-08-31 03:32:18,690.690 INFO    ] 2026-08-31 03:32:18
[2026-08-31 03:32:18,936.936 INFO    ] 2026-08-31 03:32:18
[2026-08-31 03:32:18,971.971 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:32:19,229.229 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:32:19,239.239 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:32:19,392.392 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:32:19,409.409 INFO    ] time= 31/08/2026 03:32:19
[2026-08-31 03:32:19,458.458 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:32:19,502.502 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:32:19,572.572 INFO    ] No existing commands found in stream
[2026-08-31 03:32:24,585.585 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:32:24,588.588 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-08-31 03:32:27,618.618 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 03:32:27,621.621 INFO    ] Checking for system updates...
[2026-08-31 03:32:27,657.657 INFO    ] 200
[2026-08-31 03:32:27,660.660 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:32:27,740.740 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:32:27,742.742 INFO    ] No update needed
[2026-08-31 03:32:27,745.745 INFO    ] Checking for camera pi updates...
[2026-08-31 03:32:27,779.779 INFO    ] 200
[2026-08-31 03:32:27,781.781 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:32:27,822.822 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:32:28,017.017 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:32:28,021.021 INFO    ] No camera update needed
[2026-08-31 03:32:28,024.024 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:32:28,027.027 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:32:28,033.033 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:32:28,038.038 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:32:30,080.080 INFO    ] ================================================
[2026-08-31 03:32:30,096.096 INFO    ] Launching Daemon at Mon Aug 31 03:32:30 IST 2026
[2026-08-31 03:32:30,106.106 INFO    ] ================================================
[2026-08-31 03:32:30,671.671 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:32:30
[2026-08-31 03:32:31,275.275 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:32:31,543.543 INFO    ] Initializing speech engine...
[2026-08-31 03:32:31,567.567 INFO    ] 2026-08-31 03:32:31
[2026-08-31 03:32:31,845.845 INFO    ] 2026-08-31 03:32:31
[2026-08-31 03:32:31,883.883 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:32:32,093.093 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:32:32,151.151 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:32:32,301.301 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:32:32,344.344 INFO    ] time= 31/08/2026 03:32:32
[2026-08-31 03:32:32,394.394 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:32:32,444.444 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:32:32,567.567 INFO    ] No existing commands found in stream
[2026-08-31 03:32:37,590.590 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:32:37,593.593 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-08-31 03:32:39,651.651 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 03:32:39,654.654 INFO    ] Checking for system updates...
[2026-08-31 03:32:39,690.690 INFO    ] 200
[2026-08-31 03:32:39,693.693 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:32:39,748.748 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:32:39,751.751 INFO    ] No update needed
[2026-08-31 03:32:39,754.754 INFO    ] Checking for camera pi updates...
[2026-08-31 03:32:39,795.795 INFO    ] 200
[2026-08-31 03:32:39,803.803 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:32:39,861.861 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:32:39,940.940 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:32:39,943.943 INFO    ] No camera update needed
[2026-08-31 03:32:39,945.945 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:32:39,956.956 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:32:39,962.962 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:32:39,967.967 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:32:42,009.009 INFO    ] ================================================
[2026-08-31 03:32:42,025.025 INFO    ] Launching Daemon at Mon Aug 31 03:32:42 IST 2026
[2026-08-31 03:32:42,036.036 INFO    ] ================================================
[2026-08-31 03:32:42,604.604 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:32:42
[2026-08-31 03:32:43,187.187 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:32:43,454.454 INFO    ] Initializing speech engine...
[2026-08-31 03:32:43,464.464 INFO    ] 2026-08-31 03:32:43
[2026-08-31 03:32:43,709.709 INFO    ] 2026-08-31 03:32:43
[2026-08-31 03:32:43,744.744 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:32:43,939.939 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:32:43,990.990 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:32:44,218.218 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:32:44,263.263 INFO    ] time= 31/08/2026 03:32:44
[2026-08-31 03:32:44,269.269 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:32:44,287.287 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:32:44,415.415 INFO    ] No existing commands found in stream
[2026-08-31 03:32:49,429.429 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:32:49,432.432 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-08-31 03:32:51,141.141 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 03:32:51,144.144 INFO    ] Checking for system updates...
[2026-08-31 03:32:51,179.179 INFO    ] 200
[2026-08-31 03:32:51,182.182 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:32:51,233.233 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:32:51,236.236 INFO    ] No update needed
[2026-08-31 03:32:51,238.238 INFO    ] Checking for camera pi updates...
[2026-08-31 03:32:51,272.272 INFO    ] 200
[2026-08-31 03:32:51,274.274 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:32:51,319.319 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:32:51,389.389 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:32:51,391.391 INFO    ] No camera update needed
[2026-08-31 03:32:51,394.394 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:32:51,396.396 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:32:51,401.401 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:32:51,406.406 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:32:53,449.449 INFO    ] ================================================
[2026-08-31 03:32:53,464.464 INFO    ] Launching Daemon at Mon Aug 31 03:32:53 IST 2026
[2026-08-31 03:32:53,476.476 INFO    ] ================================================
[2026-08-31 03:32:54,039.039 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:32:54
[2026-08-31 03:32:54,622.622 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:32:54,889.889 INFO    ] Initializing speech engine...
[2026-08-31 03:32:54,899.899 INFO    ] 2026-08-31 03:32:54
[2026-08-31 03:32:55,146.146 INFO    ] 2026-08-31 03:32:55
[2026-08-31 03:32:55,181.181 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:32:55,432.432 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:32:55,441.441 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:32:55,575.575 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:32:55,634.634 INFO    ] time= 31/08/2026 03:32:55
[2026-08-31 03:32:55,689.689 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:32:55,708.708 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:32:55,760.760 INFO    ] No existing commands found in stream
[2026-08-31 03:33:00,772.772 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:33:00,775.775 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-08-31 03:33:04,781.781 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 03:33:04,784.784 INFO    ] Checking for system updates...
[2026-08-31 03:33:04,824.824 INFO    ] 200
[2026-08-31 03:33:04,826.826 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:33:04,879.879 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:33:04,882.882 INFO    ] No update needed
[2026-08-31 03:33:04,884.884 INFO    ] Checking for camera pi updates...
[2026-08-31 03:33:04,919.919 INFO    ] 200
[2026-08-31 03:33:04,921.921 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:33:04,974.974 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:33:05,059.059 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:33:05,061.061 INFO    ] No camera update needed
[2026-08-31 03:33:05,064.064 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:33:05,066.066 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:33:05,071.071 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:33:05,076.076 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:33:07,122.122 INFO    ] ================================================
[2026-08-31 03:33:07,137.137 INFO    ] Launching Daemon at Mon Aug 31 03:33:07 IST 2026
[2026-08-31 03:33:07,148.148 INFO    ] ================================================
[2026-08-31 03:33:07,721.721 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:33:07
[2026-08-31 03:33:08,303.303 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:33:08,566.566 INFO    ] Initializing speech engine...
[2026-08-31 03:33:08,579.579 INFO    ] 2026-08-31 03:33:08
[2026-08-31 03:33:08,869.869 INFO    ] 2026-08-31 03:33:08
[2026-08-31 03:33:08,913.913 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:33:09,111.111 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:33:09,168.168 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:33:09,305.305 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:33:09,353.353 INFO    ] time= 31/08/2026 03:33:09
[2026-08-31 03:33:09,412.412 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:33:09,440.440 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:33:09,576.576 INFO    ] No existing commands found in stream
[2026-08-31 03:33:14,596.596 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:33:14,599.599 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-08-31 03:33:15,300.300 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 03:33:15,303.303 INFO    ] Checking for system updates...
[2026-08-31 03:33:15,339.339 INFO    ] 200
[2026-08-31 03:33:15,341.341 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:33:15,402.402 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:33:15,404.404 INFO    ] No update needed
[2026-08-31 03:33:15,407.407 INFO    ] Checking for camera pi updates...
[2026-08-31 03:33:15,440.440 INFO    ] 200
[2026-08-31 03:33:15,442.442 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:33:15,486.486 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:33:15,534.534 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:33:15,536.536 INFO    ] No camera update needed
[2026-08-31 03:33:15,539.539 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:33:15,541.541 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:33:15,546.546 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:33:15,552.552 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:33:17,592.592 INFO    ] ================================================
[2026-08-31 03:33:17,607.607 INFO    ] Launching Daemon at Mon Aug 31 03:33:17 IST 2026
[2026-08-31 03:33:17,618.618 INFO    ] ================================================
[2026-08-31 03:33:18,279.279 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:33:18
[2026-08-31 03:33:18,954.954 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:33:19,260.260 INFO    ] Initializing speech engine...
[2026-08-31 03:33:19,272.272 INFO    ] 2026-08-31 03:33:19
[2026-08-31 03:33:19,561.561 INFO    ] 2026-08-31 03:33:19
[2026-08-31 03:33:19,599.599 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:33:19,826.826 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:33:19,832.832 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:33:20,043.043 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:33:20,088.088 INFO    ] time= 31/08/2026 03:33:20
[2026-08-31 03:33:20,108.108 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:33:20,138.138 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:33:20,246.246 INFO    ] No existing commands found in stream
[2026-08-31 03:33:25,267.267 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:33:25,271.271 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-08-31 03:33:29,098.098 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 03:33:29,102.102 INFO    ] Checking for system updates...
[2026-08-31 03:33:29,138.138 INFO    ] 200
[2026-08-31 03:33:29,141.141 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:33:29,195.195 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:33:29,198.198 INFO    ] No update needed
[2026-08-31 03:33:29,201.201 INFO    ] Checking for camera pi updates...
[2026-08-31 03:33:29,236.236 INFO    ] 200
[2026-08-31 03:33:29,239.239 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:33:29,281.281 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:33:29,374.374 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:33:29,377.377 INFO    ] No camera update needed
[2026-08-31 03:33:29,380.380 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:33:29,383.383 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:33:29,389.389 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:33:29,395.395 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:33:31,439.439 INFO    ] ================================================
[2026-08-31 03:33:31,455.455 INFO    ] Launching Daemon at Mon Aug 31 03:33:31 IST 2026
[2026-08-31 03:33:31,465.465 INFO    ] ================================================
[2026-08-31 03:33:32,144.144 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:33:32
[2026-08-31 03:33:32,875.875 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:33:33,213.213 INFO    ] Initializing speech engine...
[2026-08-31 03:33:33,225.225 INFO    ] 2026-08-31 03:33:33
[2026-08-31 03:33:33,510.510 INFO    ] 2026-08-31 03:33:33
[2026-08-31 03:33:33,547.547 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:33:33,734.734 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:33:33,748.748 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:33:33,876.876 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:33:33,897.897 INFO    ] time= 31/08/2026 03:33:33
[2026-08-31 03:33:33,919.919 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:33:33,928.928 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:33:34,004.004 INFO    ] No existing commands found in stream
[2026-08-31 03:33:39,018.018 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:33:39,020.020 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-08-31 03:33:43,254.254 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 03:33:43,257.257 INFO    ] Checking for system updates...
[2026-08-31 03:33:43,292.292 INFO    ] 200
[2026-08-31 03:33:43,295.295 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:33:43,354.354 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:33:43,357.357 INFO    ] No update needed
[2026-08-31 03:33:43,359.359 INFO    ] Checking for camera pi updates...
[2026-08-31 03:33:43,395.395 INFO    ] 200
[2026-08-31 03:33:43,399.399 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:33:43,439.439 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:33:43,514.514 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:33:43,516.516 INFO    ] No camera update needed
[2026-08-31 03:33:43,518.518 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:33:43,521.521 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:33:43,526.526 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:33:43,531.531 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:33:45,571.571 INFO    ] ================================================
[2026-08-31 03:33:45,586.586 INFO    ] Launching Daemon at Mon Aug 31 03:33:45 IST 2026
[2026-08-31 03:33:45,597.597 INFO    ] ================================================
[2026-08-31 03:33:46,224.224 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:33:46
[2026-08-31 03:33:46,892.892 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:33:47,197.197 INFO    ] Initializing speech engine...
[2026-08-31 03:33:47,209.209 INFO    ] 2026-08-31 03:33:47
[2026-08-31 03:33:47,494.494 INFO    ] 2026-08-31 03:33:47
[2026-08-31 03:33:47,534.534 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:33:47,759.759 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:33:47,765.765 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:33:47,898.898 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:33:47,973.973 INFO    ] time= 31/08/2026 03:33:47
[2026-08-31 03:33:48,026.026 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:33:48,044.044 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:33:48,181.181 INFO    ] No existing commands found in stream
[2026-08-31 03:33:53,203.203 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:33:53,206.206 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-08-31 03:33:55,454.454 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 03:33:55,457.457 INFO    ] Checking for system updates...
[2026-08-31 03:33:55,494.494 INFO    ] 200
[2026-08-31 03:33:55,497.497 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:33:55,550.550 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:33:55,553.553 INFO    ] No update needed
[2026-08-31 03:33:55,555.555 INFO    ] Checking for camera pi updates...
[2026-08-31 03:33:55,596.596 INFO    ] 200
[2026-08-31 03:33:55,598.598 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:33:55,639.639 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:33:55,718.718 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:33:55,720.720 INFO    ] No camera update needed
[2026-08-31 03:33:55,723.723 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:33:55,725.725 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:33:55,730.730 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:33:55,735.735 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:33:57,774.774 INFO    ] ================================================
[2026-08-31 03:33:57,789.789 INFO    ] Launching Daemon at Mon Aug 31 03:33:57 IST 2026
[2026-08-31 03:33:57,800.800 INFO    ] ================================================
[2026-08-31 03:33:58,379.379 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:33:58
[2026-08-31 03:33:58,976.976 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:33:59,251.251 INFO    ] Initializing speech engine...
[2026-08-31 03:33:59,261.261 INFO    ] 2026-08-31 03:33:59
[2026-08-31 03:33:59,509.509 INFO    ] 2026-08-31 03:33:59
[2026-08-31 03:33:59,545.545 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:33:59,737.737 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:33:59,756.756 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:33:59,951.951 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:33:59,958.958 INFO    ] time= 31/08/2026 03:33:59
[2026-08-31 03:34:00,023.023 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:34:00,083.083 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:34:00,220.220 INFO    ] No existing commands found in stream
[2026-08-31 03:34:05,251.251 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:34:05,254.254 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-08-31 03:34:07,844.844 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 03:34:07,848.848 INFO    ] Checking for system updates...
[2026-08-31 03:34:07,884.884 INFO    ] 200
[2026-08-31 03:34:07,887.887 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:34:07,940.940 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:34:07,943.943 INFO    ] No update needed
[2026-08-31 03:34:07,945.945 INFO    ] Checking for camera pi updates...
[2026-08-31 03:34:07,979.979 INFO    ] 200
[2026-08-31 03:34:07,981.981 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:34:08,026.026 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:34:08,112.112 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:34:08,114.114 INFO    ] No camera update needed
[2026-08-31 03:34:08,117.117 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:34:08,119.119 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:34:08,124.124 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:34:08,129.129 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:34:10,171.171 INFO    ] ================================================
[2026-08-31 03:34:10,186.186 INFO    ] Launching Daemon at Mon Aug 31 03:34:10 IST 2026
[2026-08-31 03:34:10,197.197 INFO    ] ================================================
[2026-08-31 03:34:10,841.841 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:34:10
[2026-08-31 03:34:11,520.520 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:34:11,842.842 INFO    ] Initializing speech engine...
[2026-08-31 03:34:11,856.856 INFO    ] 2026-08-31 03:34:11
[2026-08-31 03:34:12,148.148 INFO    ] 2026-08-31 03:34:12
[2026-08-31 03:34:12,260.260 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:34:12,475.475 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:34:12,484.484 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:34:12,662.662 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:34:12,691.691 INFO    ] time= 31/08/2026 03:34:12
[2026-08-31 03:34:12,710.710 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:34:12,720.720 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:34:12,852.852 INFO    ] No existing commands found in stream
[2026-08-31 03:34:17,875.875 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:34:17,879.879 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-08-31 03:34:19,779.779 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 03:34:19,782.782 INFO    ] Checking for system updates...
[2026-08-31 03:34:19,817.817 INFO    ] 200
[2026-08-31 03:34:19,820.820 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:34:19,876.876 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:34:19,879.879 INFO    ] No update needed
[2026-08-31 03:34:19,881.881 INFO    ] Checking for camera pi updates...
[2026-08-31 03:34:19,914.914 INFO    ] 200
[2026-08-31 03:34:19,917.917 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:34:19,958.958 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:34:20,050.050 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:34:20,052.052 INFO    ] No camera update needed
[2026-08-31 03:34:20,054.054 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:34:20,057.057 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:34:20,062.062 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:34:20,067.067 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:34:22,106.106 INFO    ] ================================================
[2026-08-31 03:34:22,121.121 INFO    ] Launching Daemon at Mon Aug 31 03:34:22 IST 2026
[2026-08-31 03:34:22,132.132 INFO    ] ================================================
[2026-08-31 03:34:22,711.711 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:34:22
[2026-08-31 03:34:23,316.316 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:34:23,586.586 INFO    ] Initializing speech engine...
[2026-08-31 03:34:23,596.596 INFO    ] 2026-08-31 03:34:23
[2026-08-31 03:34:23,843.843 INFO    ] 2026-08-31 03:34:23
[2026-08-31 03:34:23,878.878 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:34:24,129.129 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:34:24,138.138 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:34:24,336.336 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:34:24,391.391 INFO    ] time= 31/08/2026 03:34:24
[2026-08-31 03:34:24,402.402 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:34:24,408.408 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:34:24,527.527 INFO    ] No existing commands found in stream
[2026-08-31 03:34:29,558.558 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:34:29,560.560 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-08-31 03:34:30,654.654 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 03:34:30,656.656 INFO    ] Checking for system updates...
[2026-08-31 03:34:30,692.692 INFO    ] 200
[2026-08-31 03:34:30,694.694 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:34:30,750.750 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:34:30,753.753 INFO    ] No update needed
[2026-08-31 03:34:30,756.756 INFO    ] Checking for camera pi updates...
[2026-08-31 03:34:30,789.789 INFO    ] 200
[2026-08-31 03:34:30,792.792 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:34:30,833.833 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:34:31,033.033 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:34:31,035.035 INFO    ] No camera update needed
[2026-08-31 03:34:31,038.038 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:34:31,041.041 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:34:31,048.048 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:34:31,053.053 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:34:33,098.098 INFO    ] ================================================
[2026-08-31 03:34:33,124.124 INFO    ] Launching Daemon at Mon Aug 31 03:34:33 IST 2026
[2026-08-31 03:34:33,135.135 INFO    ] ================================================
[2026-08-31 03:34:33,785.785 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:34:33
[2026-08-31 03:34:34,395.395 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:34:34,667.667 INFO    ] Initializing speech engine...
[2026-08-31 03:34:34,676.676 INFO    ] 2026-08-31 03:34:34
[2026-08-31 03:34:34,956.956 INFO    ] 2026-08-31 03:34:34
[2026-08-31 03:34:34,994.994 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:34:35,210.210 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:34:35,232.232 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:34:35,411.411 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:34:35,458.458 INFO    ] time= 31/08/2026 03:34:35
[2026-08-31 03:34:35,513.513 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:34:35,545.545 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:34:35,689.689 INFO    ] No existing commands found in stream
[2026-08-31 03:34:40,704.704 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:34:40,709.709 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-08-31 03:34:44,499.499 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 03:34:44,502.502 INFO    ] Checking for system updates...
[2026-08-31 03:34:44,567.567 INFO    ] 200
[2026-08-31 03:34:44,570.570 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-08-31 03:34:44,572.572 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-08-31 03:34:44,575.575 INFO    ] Checking for camera pi updates...
[2026-08-31 03:34:44,614.614 INFO    ] 200
[2026-08-31 03:34:44,616.616 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-08-31 03:34:44,619.619 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-08-31 03:34:44,622.622 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:34:44,624.624 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:34:44,629.629 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:34:44,634.634 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:34:46,676.676 INFO    ] ================================================
[2026-08-31 03:34:46,691.691 INFO    ] Launching Daemon at Mon Aug 31 03:34:46 IST 2026
[2026-08-31 03:34:46,701.701 INFO    ] ================================================
[2026-08-31 03:34:47,367.367 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:34:47
[2026-08-31 03:34:48,041.041 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:34:48,353.353 INFO    ] Initializing speech engine...
[2026-08-31 03:34:48,358.358 INFO    ] 2026-08-31 03:34:48
[2026-08-31 03:34:48,611.611 INFO    ] 2026-08-31 03:34:48
[2026-08-31 03:34:48,661.661 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:34:48,883.883 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:34:48,893.893 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:34:49,024.024 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:34:49,072.072 INFO    ] time= 31/08/2026 03:34:49
[2026-08-31 03:34:49,126.126 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:34:49,157.157 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:34:49,302.302 INFO    ] No existing commands found in stream
[2026-08-31 03:34:54,317.317 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:34:54,320.320 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-08-31 03:34:56,641.641 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 03:34:56,644.644 INFO    ] Checking for system updates...
[2026-08-31 03:34:56,680.680 INFO    ] 200
[2026-08-31 03:34:56,682.682 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:34:56,734.734 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:34:56,736.736 INFO    ] No update needed
[2026-08-31 03:34:56,739.739 INFO    ] Checking for camera pi updates...
[2026-08-31 03:34:56,780.780 INFO    ] 200
[2026-08-31 03:34:56,782.782 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:34:56,827.827 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:34:56,909.909 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:34:56,911.911 INFO    ] No camera update needed
[2026-08-31 03:34:56,913.913 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:34:56,916.916 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:34:56,921.921 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:34:56,926.926 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:34:58,968.968 INFO    ] ================================================
[2026-08-31 03:34:58,984.984 INFO    ] Launching Daemon at Mon Aug 31 03:34:58 IST 2026
[2026-08-31 03:34:59,995.995 INFO    ] ================================================
[2026-08-31 03:34:59,596.596 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:34:59
[2026-08-31 03:35:00,186.186 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:35:00,463.463 INFO    ] Initializing speech engine...
[2026-08-31 03:35:00,473.473 INFO    ] 2026-08-31 03:35:00
[2026-08-31 03:35:00,741.741 INFO    ] 2026-08-31 03:35:00
[2026-08-31 03:35:00,779.779 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:35:00,963.963 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:35:00,982.982 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:35:01,117.117 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:35:01,179.179 INFO    ] time= 31/08/2026 03:35:01
[2026-08-31 03:35:01,184.184 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:35:01,244.244 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:35:01,328.328 INFO    ] No existing commands found in stream
[2026-08-31 03:35:06,339.339 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:35:06,342.342 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-08-31 03:35:09,105.105 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 03:35:09,108.108 INFO    ] Checking for system updates...
[2026-08-31 03:35:09,151.151 INFO    ] 200
[2026-08-31 03:35:09,154.154 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:35:09,212.212 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:35:09,214.214 INFO    ] No update needed
[2026-08-31 03:35:09,217.217 INFO    ] Checking for camera pi updates...
[2026-08-31 03:35:09,253.253 INFO    ] 200
[2026-08-31 03:35:09,255.255 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:35:09,304.304 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:35:09,386.386 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:35:09,390.390 INFO    ] No camera update needed
[2026-08-31 03:35:09,393.393 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:35:09,396.396 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:35:09,404.404 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:35:09,410.410 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:35:11,453.453 INFO    ] ================================================
[2026-08-31 03:35:11,468.468 INFO    ] Launching Daemon at Mon Aug 31 03:35:11 IST 2026
[2026-08-31 03:35:11,479.479 INFO    ] ================================================
[2026-08-31 03:35:12,046.046 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:35:12
[2026-08-31 03:35:12,654.654 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:35:12,910.910 INFO    ] Initializing speech engine...
[2026-08-31 03:35:12,929.929 INFO    ] 2026-08-31 03:35:12
[2026-08-31 03:35:13,175.175 INFO    ] 2026-08-31 03:35:13
[2026-08-31 03:35:13,210.210 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:35:13,461.461 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:35:13,470.470 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:35:13,620.620 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:35:13,675.675 INFO    ] time= 31/08/2026 03:35:13
[2026-08-31 03:35:13,737.737 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:35:13,743.743 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:35:13,891.891 INFO    ] No existing commands found in stream
[2026-08-31 03:35:18,904.904 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:35:18,906.906 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-08-31 03:35:21,138.138 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 03:35:21,140.140 INFO    ] Checking for system updates...
[2026-08-31 03:35:21,177.177 INFO    ] 200
[2026-08-31 03:35:21,180.180 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:35:21,242.242 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:35:21,244.244 INFO    ] No update needed
[2026-08-31 03:35:21,247.247 INFO    ] Checking for camera pi updates...
[2026-08-31 03:35:21,286.286 INFO    ] 200
[2026-08-31 03:35:21,289.289 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:35:21,336.336 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:35:21,437.437 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:35:21,440.440 INFO    ] No camera update needed
[2026-08-31 03:35:21,443.443 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:35:21,446.446 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:35:21,452.452 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:35:21,458.458 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:35:23,499.499 INFO    ] ================================================
[2026-08-31 03:35:23,514.514 INFO    ] Launching Daemon at Mon Aug 31 03:35:23 IST 2026
[2026-08-31 03:35:23,525.525 INFO    ] ================================================
[2026-08-31 03:35:24,183.183 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:35:24
[2026-08-31 03:35:24,801.801 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:35:25,053.053 INFO    ] Initializing speech engine...
[2026-08-31 03:35:25,060.060 INFO    ] 2026-08-31 03:35:25
[2026-08-31 03:35:25,359.359 INFO    ] 2026-08-31 03:35:25
[2026-08-31 03:35:25,397.397 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:35:25,607.607 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:35:25,629.629 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:35:25,823.823 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:35:25,876.876 INFO    ] time= 31/08/2026 03:35:25
[2026-08-31 03:35:25,930.930 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:35:25,961.961 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:35:26,508.508 INFO    ] No existing commands found in stream
[2026-08-31 03:35:31,529.529 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:35:31,532.532 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-08-31 03:35:34,384.384 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 03:35:34,387.387 INFO    ] Checking for system updates...
[2026-08-31 03:35:34,428.428 INFO    ] 200
[2026-08-31 03:35:34,431.431 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:35:34,492.492 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:35:34,495.495 INFO    ] No update needed
[2026-08-31 03:35:34,498.498 INFO    ] Checking for camera pi updates...
[2026-08-31 03:35:34,538.538 INFO    ] 200
[2026-08-31 03:35:34,541.541 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:35:34,589.589 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:35:34,635.635 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:35:34,638.638 INFO    ] No camera update needed
[2026-08-31 03:35:34,641.641 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:35:34,644.644 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:35:34,650.650 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:35:34,655.655 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:35:36,697.697 INFO    ] ================================================
[2026-08-31 03:35:36,713.713 INFO    ] Launching Daemon at Mon Aug 31 03:35:36 IST 2026
[2026-08-31 03:35:36,723.723 INFO    ] ================================================
[2026-08-31 03:35:37,379.379 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:35:37
[2026-08-31 03:35:38,052.052 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:35:38,358.358 INFO    ] Initializing speech engine...
[2026-08-31 03:35:38,367.367 INFO    ] 2026-08-31 03:35:38
[2026-08-31 03:35:38,658.658 INFO    ] 2026-08-31 03:35:38
[2026-08-31 03:35:38,704.704 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:35:38,993.993 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:35:39,002.002 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:35:39,180.180 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:35:39,210.210 INFO    ] time= 31/08/2026 03:35:39
[2026-08-31 03:35:39,228.228 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:35:39,256.256 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:35:39,365.365 INFO    ] No existing commands found in stream
[2026-08-31 03:35:44,380.380 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:35:44,383.383 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-08-31 03:35:48,857.857 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 03:35:48,861.861 INFO    ] Checking for system updates...
[2026-08-31 03:35:48,898.898 INFO    ] 200
[2026-08-31 03:35:48,901.901 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:35:48,954.954 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:35:48,957.957 INFO    ] No update needed
[2026-08-31 03:35:48,960.960 INFO    ] Checking for camera pi updates...
[2026-08-31 03:35:48,998.998 INFO    ] 200
[2026-08-31 03:35:49,001.001 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:35:49,042.042 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:35:49,128.128 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:35:49,130.130 INFO    ] No camera update needed
[2026-08-31 03:35:49,132.132 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:35:49,135.135 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:35:49,140.140 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:35:49,145.145 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:35:51,186.186 INFO    ] ================================================
[2026-08-31 03:35:51,202.202 INFO    ] Launching Daemon at Mon Aug 31 03:35:51 IST 2026
[2026-08-31 03:35:51,212.212 INFO    ] ================================================
[2026-08-31 03:35:51,794.794 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:35:51
[2026-08-31 03:35:52,393.393 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:35:52,675.675 INFO    ] Initializing speech engine...
[2026-08-31 03:35:52,685.685 INFO    ] 2026-08-31 03:35:52
[2026-08-31 03:35:52,954.954 INFO    ] 2026-08-31 03:35:52
[2026-08-31 03:35:52,993.993 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:35:53,218.218 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:35:53,263.263 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:35:54,557.557 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:35:54,563.563 INFO    ] time= 31/08/2026 03:35:54
[2026-08-31 03:35:54,569.569 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:35:54,575.575 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:35:54,637.637 INFO    ] No existing commands found in stream
[2026-08-31 03:35:59,648.648 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:35:59,651.651 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-08-31 03:36:00,230.230 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 03:36:00,233.233 INFO    ] Checking for system updates...
[2026-08-31 03:36:00,272.272 INFO    ] 200
[2026-08-31 03:36:00,275.275 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:36:00,328.328 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:36:00,330.330 INFO    ] No update needed
[2026-08-31 03:36:00,333.333 INFO    ] Checking for camera pi updates...
[2026-08-31 03:36:00,366.366 INFO    ] 200
[2026-08-31 03:36:00,369.369 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:36:00,413.413 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:36:00,497.497 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:36:00,499.499 INFO    ] No camera update needed
[2026-08-31 03:36:00,502.502 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:36:00,504.504 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:36:00,509.509 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:36:00,514.514 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:36:02,568.568 INFO    ] ================================================
[2026-08-31 03:36:02,588.588 INFO    ] Launching Daemon at Mon Aug 31 03:36:02 IST 2026
[2026-08-31 03:36:02,599.599 INFO    ] ================================================
[2026-08-31 03:36:03,309.309 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:36:03
[2026-08-31 03:36:03,985.985 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:36:04,293.293 INFO    ] Initializing speech engine...
[2026-08-31 03:36:04,305.305 INFO    ] 2026-08-31 03:36:04
[2026-08-31 03:36:04,584.584 INFO    ] 2026-08-31 03:36:04
[2026-08-31 03:36:04,642.642 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:36:04,882.882 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:36:04,905.905 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:36:05,111.111 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:36:05,152.152 INFO    ] time= 31/08/2026 03:36:05
[2026-08-31 03:36:05,170.170 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:36:05,178.178 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:36:05,296.296 INFO    ] No existing commands found in stream
[2026-08-31 03:36:10,325.325 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:36:10,328.328 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-08-31 03:36:12,746.746 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 03:36:12,749.749 INFO    ] Checking for system updates...
[2026-08-31 03:36:12,786.786 INFO    ] 200
[2026-08-31 03:36:12,789.789 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:36:12,843.843 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:36:12,846.846 INFO    ] No update needed
[2026-08-31 03:36:12,849.849 INFO    ] Checking for camera pi updates...
[2026-08-31 03:36:12,885.885 INFO    ] 200
[2026-08-31 03:36:12,888.888 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:36:12,930.930 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:36:13,009.009 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:36:13,012.012 INFO    ] No camera update needed
[2026-08-31 03:36:13,015.015 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:36:13,017.017 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:36:13,024.024 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:36:13,030.030 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:36:15,071.071 INFO    ] ================================================
[2026-08-31 03:36:15,086.086 INFO    ] Launching Daemon at Mon Aug 31 03:36:15 IST 2026
[2026-08-31 03:36:15,097.097 INFO    ] ================================================
[2026-08-31 03:36:15,665.665 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:36:15
[2026-08-31 03:36:16,253.253 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:36:16,510.510 INFO    ] Initializing speech engine...
[2026-08-31 03:36:16,519.519 INFO    ] 2026-08-31 03:36:16
[2026-08-31 03:36:16,817.817 INFO    ] 2026-08-31 03:36:16
[2026-08-31 03:36:16,853.853 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:36:17,055.055 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:36:17,071.071 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:36:17,199.199 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:36:17,219.219 INFO    ] time= 31/08/2026 03:36:17
[2026-08-31 03:36:17,239.239 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:36:17,251.251 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:36:17,328.328 INFO    ] No existing commands found in stream
[2026-08-31 03:36:22,341.341 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:36:22,345.345 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-08-31 03:36:26,016.016 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 03:36:26,019.019 INFO    ] Checking for system updates...
[2026-08-31 03:36:26,054.054 INFO    ] 200
[2026-08-31 03:36:26,057.057 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:36:26,108.108 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:36:26,111.111 INFO    ] No update needed
[2026-08-31 03:36:26,113.113 INFO    ] Checking for camera pi updates...
[2026-08-31 03:36:26,146.146 INFO    ] 200
[2026-08-31 03:36:26,149.149 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:36:26,189.189 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:36:26,272.272 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:36:26,274.274 INFO    ] No camera update needed
[2026-08-31 03:36:26,276.276 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:36:26,279.279 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:36:26,284.284 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:36:26,289.289 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:36:28,330.330 INFO    ] ================================================
[2026-08-31 03:36:28,346.346 INFO    ] Launching Daemon at Mon Aug 31 03:36:28 IST 2026
[2026-08-31 03:36:28,357.357 INFO    ] ================================================
[2026-08-31 03:36:29,024.024 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:36:29
[2026-08-31 03:36:29,710.710 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:36:30,019.019 INFO    ] Initializing speech engine...
[2026-08-31 03:36:30,032.032 INFO    ] 2026-08-31 03:36:30
[2026-08-31 03:36:30,321.321 INFO    ] 2026-08-31 03:36:30
[2026-08-31 03:36:30,366.366 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:36:30,566.566 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:36:30,579.579 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:36:30,774.774 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:36:30,850.850 INFO    ] time= 31/08/2026 03:36:30
[2026-08-31 03:36:30,904.904 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:36:30,911.911 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:36:31,054.054 INFO    ] No existing commands found in stream
[2026-08-31 03:36:36,085.085 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:36:36,090.090 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-08-31 03:36:39,325.325 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 03:36:39,328.328 INFO    ] Checking for system updates...
[2026-08-31 03:36:39,365.365 INFO    ] 200
[2026-08-31 03:36:39,369.369 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:36:39,424.424 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:36:39,427.427 INFO    ] No update needed
[2026-08-31 03:36:39,430.430 INFO    ] Checking for camera pi updates...
[2026-08-31 03:36:39,468.468 INFO    ] 200
[2026-08-31 03:36:39,472.472 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:36:39,513.513 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:36:39,709.709 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:36:39,711.711 INFO    ] No camera update needed
[2026-08-31 03:36:39,713.713 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:36:39,716.716 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:36:39,721.721 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:36:39,726.726 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:36:41,767.767 INFO    ] ================================================
[2026-08-31 03:36:41,782.782 INFO    ] Launching Daemon at Mon Aug 31 03:36:41 IST 2026
[2026-08-31 03:36:41,792.792 INFO    ] ================================================
[2026-08-31 03:36:42,466.466 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:36:42
[2026-08-31 03:36:43,157.157 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:36:43,461.461 INFO    ] Initializing speech engine...
[2026-08-31 03:36:43,473.473 INFO    ] 2026-08-31 03:36:43
[2026-08-31 03:36:43,773.773 INFO    ] 2026-08-31 03:36:43
[2026-08-31 03:36:43,865.865 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:36:44,040.040 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:36:44,064.064 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:36:44,233.233 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:36:44,287.287 INFO    ] time= 31/08/2026 03:36:44
[2026-08-31 03:36:44,342.342 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:36:44,349.349 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:36:44,402.402 INFO    ] No existing commands found in stream
[2026-08-31 03:36:49,414.414 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:36:49,416.416 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-08-31 03:36:51,667.667 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 03:36:51,670.670 INFO    ] Checking for system updates...
[2026-08-31 03:36:51,705.705 INFO    ] 200
[2026-08-31 03:36:51,707.707 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:36:51,759.759 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:36:51,761.761 INFO    ] No update needed
[2026-08-31 03:36:51,764.764 INFO    ] Checking for camera pi updates...
[2026-08-31 03:36:51,796.796 INFO    ] 200
[2026-08-31 03:36:51,799.799 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:36:51,839.839 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:36:51,922.922 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:36:51,924.924 INFO    ] No camera update needed
[2026-08-31 03:36:51,927.927 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:36:51,929.929 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:36:51,934.934 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:36:51,939.939 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:36:53,982.982 INFO    ] ================================================
[2026-08-31 03:36:54,001.001 INFO    ] Launching Daemon at Mon Aug 31 03:36:53 IST 2026
[2026-08-31 03:36:54,012.012 INFO    ] ================================================
[2026-08-31 03:36:54,591.591 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:36:54
[2026-08-31 03:36:55,180.180 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:36:55,454.454 INFO    ] Initializing speech engine...
[2026-08-31 03:36:55,461.461 INFO    ] 2026-08-31 03:36:55
[2026-08-31 03:36:55,709.709 INFO    ] 2026-08-31 03:36:55
[2026-08-31 03:36:55,744.744 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:36:55,960.960 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:36:55,963.963 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:36:56,151.151 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:36:56,193.193 INFO    ] time= 31/08/2026 03:36:56
[2026-08-31 03:36:56,257.257 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:36:56,289.289 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:36:56,415.415 INFO    ] No existing commands found in stream
[2026-08-31 03:37:01,449.449 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:37:01,452.452 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-08-31 03:37:03,854.854 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 03:37:03,856.856 INFO    ] Checking for system updates...
[2026-08-31 03:37:03,892.892 INFO    ] 200
[2026-08-31 03:37:03,895.895 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:37:03,947.947 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:37:03,949.949 INFO    ] No update needed
[2026-08-31 03:37:03,952.952 INFO    ] Checking for camera pi updates...
[2026-08-31 03:37:03,985.985 INFO    ] 200
[2026-08-31 03:37:03,987.987 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:37:04,028.028 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:37:04,125.125 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:37:04,128.128 INFO    ] No camera update needed
[2026-08-31 03:37:04,130.130 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:37:04,132.132 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:37:04,138.138 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:37:04,142.142 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:37:06,184.184 INFO    ] ================================================
[2026-08-31 03:37:06,199.199 INFO    ] Launching Daemon at Mon Aug 31 03:37:06 IST 2026
[2026-08-31 03:37:06,209.209 INFO    ] ================================================
[2026-08-31 03:37:06,793.793 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:37:06
[2026-08-31 03:37:07,439.439 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:37:07,733.733 INFO    ] Initializing speech engine...
[2026-08-31 03:37:07,741.741 INFO    ] 2026-08-31 03:37:07
[2026-08-31 03:37:08,014.014 INFO    ] 2026-08-31 03:37:08
[2026-08-31 03:37:08,072.072 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:37:08,603.603 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:37:08,613.613 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:37:08,781.781 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:37:08,820.820 INFO    ] time= 31/08/2026 03:37:08
[2026-08-31 03:37:08,859.859 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:37:08,915.915 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:37:09,023.023 INFO    ] No existing commands found in stream
[2026-08-31 03:37:14,040.040 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:37:14,043.043 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-08-31 03:37:16,264.264 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 03:37:16,267.267 INFO    ] Checking for system updates...
[2026-08-31 03:37:16,310.310 INFO    ] 200
[2026-08-31 03:37:16,313.313 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:37:16,364.364 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:37:16,367.367 INFO    ] No update needed
[2026-08-31 03:37:16,370.370 INFO    ] Checking for camera pi updates...
[2026-08-31 03:37:16,402.402 INFO    ] 200
[2026-08-31 03:37:16,405.405 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:37:16,450.450 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:37:16,527.527 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:37:16,530.530 INFO    ] No camera update needed
[2026-08-31 03:37:16,533.533 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:37:16,535.535 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:37:16,541.541 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:37:16,547.547 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:37:18,588.588 INFO    ] ================================================
[2026-08-31 03:37:18,603.603 INFO    ] Launching Daemon at Mon Aug 31 03:37:18 IST 2026
[2026-08-31 03:37:18,614.614 INFO    ] ================================================
[2026-08-31 03:37:19,246.246 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:37:19
[2026-08-31 03:37:19,896.896 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:37:20,194.194 INFO    ] Initializing speech engine...
[2026-08-31 03:37:20,205.205 INFO    ] 2026-08-31 03:37:20
[2026-08-31 03:37:20,482.482 INFO    ] 2026-08-31 03:37:20
[2026-08-31 03:37:20,525.525 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:37:20,771.771 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:37:20,778.778 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:37:20,973.973 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:37:21,011.011 INFO    ] time= 31/08/2026 03:37:20
[2026-08-31 03:37:21,028.028 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:37:21,062.062 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:37:21,168.168 INFO    ] No existing commands found in stream
[2026-08-31 03:37:26,191.191 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:37:26,194.194 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-08-31 03:37:30,168.168 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 03:37:30,171.171 INFO    ] Checking for system updates...
[2026-08-31 03:37:30,206.206 INFO    ] 200
[2026-08-31 03:37:30,209.209 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:37:30,261.261 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:37:30,263.263 INFO    ] No update needed
[2026-08-31 03:37:30,265.265 INFO    ] Checking for camera pi updates...
[2026-08-31 03:37:30,298.298 INFO    ] 200
[2026-08-31 03:37:30,301.301 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:37:30,341.341 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:37:30,422.422 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:37:30,425.425 INFO    ] No camera update needed
[2026-08-31 03:37:30,427.427 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:37:30,430.430 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:37:30,435.435 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:37:30,440.440 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:37:32,482.482 INFO    ] ================================================
[2026-08-31 03:37:32,499.499 INFO    ] Launching Daemon at Mon Aug 31 03:37:32 IST 2026
[2026-08-31 03:37:32,509.509 INFO    ] ================================================
[2026-08-31 03:37:33,095.095 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:37:33
[2026-08-31 03:37:33,692.692 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:37:33,968.968 INFO    ] Initializing speech engine...
[2026-08-31 03:37:33,975.975 INFO    ] 2026-08-31 03:37:33
[2026-08-31 03:37:34,232.232 INFO    ] 2026-08-31 03:37:34
[2026-08-31 03:37:34,263.263 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:37:34,507.507 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:37:34,516.516 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:37:34,724.724 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:37:34,773.773 INFO    ] time= 31/08/2026 03:37:34
[2026-08-31 03:37:34,779.779 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:37:34,796.796 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:37:34,924.924 INFO    ] No existing commands found in stream
[2026-08-31 03:37:39,938.938 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:37:39,941.941 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-08-31 03:37:40,499.499 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 03:37:40,501.501 INFO    ] Checking for system updates...
[2026-08-31 03:37:40,540.540 INFO    ] 200
[2026-08-31 03:37:40,543.543 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:37:40,600.600 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:37:40,603.603 INFO    ] No update needed
[2026-08-31 03:37:40,605.605 INFO    ] Checking for camera pi updates...
[2026-08-31 03:37:40,643.643 INFO    ] 200
[2026-08-31 03:37:40,645.645 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:37:40,690.690 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:37:40,783.783 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:37:40,786.786 INFO    ] No camera update needed
[2026-08-31 03:37:40,789.789 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:37:40,791.791 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:37:40,797.797 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:37:40,802.802 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:37:42,844.844 INFO    ] ================================================
[2026-08-31 03:37:42,859.859 INFO    ] Launching Daemon at Mon Aug 31 03:37:42 IST 2026
[2026-08-31 03:37:42,869.869 INFO    ] ================================================
[2026-08-31 03:37:43,438.438 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:37:43
[2026-08-31 03:37:44,027.027 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:37:44,279.279 INFO    ] Initializing speech engine...
[2026-08-31 03:37:44,287.287 INFO    ] 2026-08-31 03:37:44
[2026-08-31 03:37:44,572.572 INFO    ] 2026-08-31 03:37:44
[2026-08-31 03:37:44,609.609 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:37:44,826.826 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:37:44,847.847 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:37:45,042.042 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:37:45,056.056 INFO    ] time= 31/08/2026 03:37:45
[2026-08-31 03:37:45,110.110 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:37:45,170.170 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:37:45,250.250 INFO    ] No existing commands found in stream
[2026-08-31 03:37:50,262.262 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:37:50,265.265 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-08-31 03:37:52,334.334 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 03:37:52,337.337 INFO    ] Checking for system updates...
[2026-08-31 03:37:52,372.372 INFO    ] 200
[2026-08-31 03:37:52,375.375 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:37:52,433.433 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:37:52,435.435 INFO    ] No update needed
[2026-08-31 03:37:52,438.438 INFO    ] Checking for camera pi updates...
[2026-08-31 03:37:52,474.474 INFO    ] 200
[2026-08-31 03:37:52,477.477 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:37:52,518.518 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:37:52,608.608 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:37:52,610.610 INFO    ] No camera update needed
[2026-08-31 03:37:52,613.613 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:37:52,615.615 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:37:52,620.620 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:37:52,625.625 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:37:54,666.666 INFO    ] ================================================
[2026-08-31 03:37:54,681.681 INFO    ] Launching Daemon at Mon Aug 31 03:37:54 IST 2026
[2026-08-31 03:37:54,692.692 INFO    ] ================================================
[2026-08-31 03:37:55,326.326 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:37:55
[2026-08-31 03:37:55,978.978 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:37:56,283.283 INFO    ] Initializing speech engine...
[2026-08-31 03:37:56,291.291 INFO    ] 2026-08-31 03:37:56
[2026-08-31 03:37:56,565.565 INFO    ] 2026-08-31 03:37:56
[2026-08-31 03:37:56,622.622 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:37:56,880.880 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:37:56,900.900 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:37:57,111.111 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:37:57,128.128 INFO    ] time= 31/08/2026 03:37:57
[2026-08-31 03:37:57,147.147 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:37:57,176.176 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:37:57,282.282 INFO    ] No existing commands found in stream
[2026-08-31 03:38:02,298.298 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:38:02,302.302 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-08-31 03:38:03,225.225 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 03:38:03,228.228 INFO    ] Checking for system updates...
[2026-08-31 03:38:03,263.263 INFO    ] 200
[2026-08-31 03:38:03,266.266 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:38:03,324.324 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:38:03,326.326 INFO    ] No update needed
[2026-08-31 03:38:03,329.329 INFO    ] Checking for camera pi updates...
[2026-08-31 03:38:03,370.370 INFO    ] 200
[2026-08-31 03:38:03,373.373 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:38:03,419.419 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:38:03,498.498 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:38:03,500.500 INFO    ] No camera update needed
[2026-08-31 03:38:03,503.503 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:38:03,505.505 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:38:03,510.510 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:38:03,515.515 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:38:05,556.556 INFO    ] ================================================
[2026-08-31 03:38:05,571.571 INFO    ] Launching Daemon at Mon Aug 31 03:38:05 IST 2026
[2026-08-31 03:38:05,581.581 INFO    ] ================================================
[2026-08-31 03:38:06,230.230 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:38:06
[2026-08-31 03:38:06,880.880 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:38:07,174.174 INFO    ] Initializing speech engine...
[2026-08-31 03:38:07,187.187 INFO    ] 2026-08-31 03:38:07
[2026-08-31 03:38:07,465.465 INFO    ] 2026-08-31 03:38:07
[2026-08-31 03:38:07,508.508 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:38:07,854.854 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:38:07,868.868 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:38:08,041.041 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:38:08,051.051 INFO    ] time= 31/08/2026 03:38:08
[2026-08-31 03:38:08,101.101 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:38:08,147.147 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:38:08,253.253 INFO    ] No existing commands found in stream
[2026-08-31 03:38:13,269.269 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:38:13,272.272 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-08-31 03:38:14,804.804 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 03:38:14,807.807 INFO    ] Checking for system updates...
[2026-08-31 03:38:14,846.846 INFO    ] 200
[2026-08-31 03:38:14,849.849 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:38:14,908.908 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:38:14,911.911 INFO    ] No update needed
[2026-08-31 03:38:14,914.914 INFO    ] Checking for camera pi updates...
[2026-08-31 03:38:14,950.950 INFO    ] 200
[2026-08-31 03:38:14,954.954 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:38:15,001.001 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:38:15,082.082 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:38:15,085.085 INFO    ] No camera update needed
[2026-08-31 03:38:15,087.087 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:38:15,090.090 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:38:15,096.096 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:38:15,102.102 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:38:17,143.143 INFO    ] ================================================
[2026-08-31 03:38:17,157.157 INFO    ] Launching Daemon at Mon Aug 31 03:38:17 IST 2026
[2026-08-31 03:38:17,168.168 INFO    ] ================================================
[2026-08-31 03:38:17,800.800 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:38:17
[2026-08-31 03:38:18,455.455 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:38:18,755.755 INFO    ] Initializing speech engine...
[2026-08-31 03:38:18,766.766 INFO    ] 2026-08-31 03:38:18
[2026-08-31 03:38:19,030.030 INFO    ] 2026-08-31 03:38:19
[2026-08-31 03:38:19,085.085 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:38:19,306.306 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:38:19,316.316 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:38:19,540.540 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:38:19,575.575 INFO    ] time= 31/08/2026 03:38:19
[2026-08-31 03:38:19,592.592 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:38:19,601.601 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:38:19,731.731 INFO    ] No existing commands found in stream
[2026-08-31 03:38:24,754.754 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:38:24,758.758 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-08-31 03:38:28,126.126 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 03:38:28,129.129 INFO    ] Checking for system updates...
[2026-08-31 03:38:28,169.169 INFO    ] 200
[2026-08-31 03:38:28,173.173 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:38:28,235.235 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:38:28,238.238 INFO    ] No update needed
[2026-08-31 03:38:28,241.241 INFO    ] Checking for camera pi updates...
[2026-08-31 03:38:28,276.276 INFO    ] 200
[2026-08-31 03:38:28,279.279 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:38:28,320.320 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:38:28,381.381 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:38:28,384.384 INFO    ] No camera update needed
[2026-08-31 03:38:28,386.386 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:38:28,388.388 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:38:28,394.394 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:38:28,399.399 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:38:30,438.438 INFO    ] ================================================
[2026-08-31 03:38:30,453.453 INFO    ] Launching Daemon at Mon Aug 31 03:38:30 IST 2026
[2026-08-31 03:38:30,464.464 INFO    ] ================================================
[2026-08-31 03:38:31,027.027 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:38:31
[2026-08-31 03:38:31,638.638 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:38:31,904.904 INFO    ] Initializing speech engine...
[2026-08-31 03:38:31,920.920 INFO    ] 2026-08-31 03:38:31
[2026-08-31 03:38:32,211.211 INFO    ] 2026-08-31 03:38:32
[2026-08-31 03:38:32,247.247 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:38:32,507.507 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:38:32,517.517 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:38:32,664.664 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:38:32,706.706 INFO    ] time= 31/08/2026 03:38:32
[2026-08-31 03:38:32,760.760 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:38:32,800.800 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:38:32,940.940 INFO    ] No existing commands found in stream
[2026-08-31 03:38:37,960.960 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:38:37,962.962 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-08-31 03:38:39,328.328 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 03:38:39,330.330 INFO    ] Checking for system updates...
[2026-08-31 03:38:39,366.366 INFO    ] 200
[2026-08-31 03:38:39,368.368 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:38:39,420.420 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:38:39,422.422 INFO    ] No update needed
[2026-08-31 03:38:39,425.425 INFO    ] Checking for camera pi updates...
[2026-08-31 03:38:39,458.458 INFO    ] 200
[2026-08-31 03:38:39,460.460 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:38:39,505.505 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:38:39,583.583 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:38:39,585.585 INFO    ] No camera update needed
[2026-08-31 03:38:39,587.587 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:38:39,590.590 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:38:39,595.595 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:38:39,600.600 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:38:41,639.639 INFO    ] ================================================
[2026-08-31 03:38:41,654.654 INFO    ] Launching Daemon at Mon Aug 31 03:38:41 IST 2026
[2026-08-31 03:38:41,665.665 INFO    ] ================================================
[2026-08-31 03:38:42,243.243 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:38:42
[2026-08-31 03:38:42,839.839 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:38:43,114.114 INFO    ] Initializing speech engine...
[2026-08-31 03:38:43,121.121 INFO    ] 2026-08-31 03:38:43
[2026-08-31 03:38:43,381.381 INFO    ] 2026-08-31 03:38:43
[2026-08-31 03:38:43,433.433 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:38:43,660.660 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:38:43,667.667 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:38:43,881.881 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:38:43,921.921 INFO    ] time= 31/08/2026 03:38:43
[2026-08-31 03:38:43,927.927 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:38:43,945.945 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:38:44,060.060 INFO    ] No existing commands found in stream
[2026-08-31 03:38:49,080.080 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:38:49,082.082 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-08-31 03:38:52,584.584 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 03:38:52,586.586 INFO    ] Checking for system updates...
[2026-08-31 03:38:52,626.626 INFO    ] 200
[2026-08-31 03:38:52,629.629 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:38:52,686.686 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:38:52,689.689 INFO    ] No update needed
[2026-08-31 03:38:52,692.692 INFO    ] Checking for camera pi updates...
[2026-08-31 03:38:52,728.728 INFO    ] 200
[2026-08-31 03:38:52,731.731 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:38:52,771.771 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:38:52,952.952 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:38:52,954.954 INFO    ] No camera update needed
[2026-08-31 03:38:52,956.956 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:38:52,959.959 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:38:52,964.964 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:38:52,969.969 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:38:55,009.009 INFO    ] ================================================
[2026-08-31 03:38:55,024.024 INFO    ] Launching Daemon at Mon Aug 31 03:38:55 IST 2026
[2026-08-31 03:38:55,034.034 INFO    ] ================================================
[2026-08-31 03:38:55,598.598 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:38:55
[2026-08-31 03:38:56,180.180 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:38:56,431.431 INFO    ] Initializing speech engine...
[2026-08-31 03:38:56,439.439 INFO    ] 2026-08-31 03:38:56
[2026-08-31 03:38:56,733.733 INFO    ] 2026-08-31 03:38:56
[2026-08-31 03:38:56,758.758 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:38:56,966.966 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:38:56,979.979 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:38:57,138.138 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:38:57,147.147 INFO    ] time= 31/08/2026 03:38:57
[2026-08-31 03:38:57,155.155 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:38:57,181.181 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:38:57,319.319 INFO    ] No existing commands found in stream
[2026-08-31 03:39:02,345.345 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:39:02,348.348 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-08-31 03:39:05,178.178 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 03:39:05,181.181 INFO    ] Checking for system updates...
[2026-08-31 03:39:05,216.216 INFO    ] 200
[2026-08-31 03:39:05,219.219 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:39:05,272.272 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:39:05,274.274 INFO    ] No update needed
[2026-08-31 03:39:05,276.276 INFO    ] Checking for camera pi updates...
[2026-08-31 03:39:05,310.310 INFO    ] 200
[2026-08-31 03:39:05,312.312 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:39:05,358.358 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:39:05,460.460 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:39:05,462.462 INFO    ] No camera update needed
[2026-08-31 03:39:05,465.465 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:39:05,467.467 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:39:05,472.472 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:39:05,477.477 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:39:07,521.521 INFO    ] ================================================
[2026-08-31 03:39:07,536.536 INFO    ] Launching Daemon at Mon Aug 31 03:39:07 IST 2026
[2026-08-31 03:39:07,546.546 INFO    ] ================================================
[2026-08-31 03:39:08,114.114 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:39:08
[2026-08-31 03:39:08,703.703 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:39:08,951.951 INFO    ] Initializing speech engine...
[2026-08-31 03:39:08,965.965 INFO    ] 2026-08-31 03:39:08
[2026-08-31 03:39:09,230.230 INFO    ] 2026-08-31 03:39:09
[2026-08-31 03:39:09,265.265 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:39:09,523.523 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:39:09,532.532 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:39:09,666.666 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:39:09,714.714 INFO    ] time= 31/08/2026 03:39:09
[2026-08-31 03:39:09,763.763 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:39:09,802.802 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:39:09,938.938 INFO    ] No existing commands found in stream
[2026-08-31 03:39:14,960.960 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:39:14,963.963 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-08-31 03:39:15,538.538 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 03:39:15,541.541 INFO    ] Checking for system updates...
[2026-08-31 03:39:15,581.581 INFO    ] 200
[2026-08-31 03:39:15,584.584 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:39:15,644.644 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:39:15,647.647 INFO    ] No update needed
[2026-08-31 03:39:15,650.650 INFO    ] Checking for camera pi updates...
[2026-08-31 03:39:15,689.689 INFO    ] 200
[2026-08-31 03:39:15,692.692 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:39:15,734.734 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:39:15,817.817 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:39:15,820.820 INFO    ] No camera update needed
[2026-08-31 03:39:15,823.823 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:39:15,825.825 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:39:15,832.832 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:39:15,838.838 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:39:17,880.880 INFO    ] ================================================
[2026-08-31 03:39:17,895.895 INFO    ] Launching Daemon at Mon Aug 31 03:39:17 IST 2026
[2026-08-31 03:39:17,906.906 INFO    ] ================================================
[2026-08-31 03:39:18,489.489 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:39:18
[2026-08-31 03:39:19,091.091 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:39:19,351.351 INFO    ] Initializing speech engine...
[2026-08-31 03:39:19,357.357 INFO    ] 2026-08-31 03:39:19
[2026-08-31 03:39:19,659.659 INFO    ] 2026-08-31 03:39:19
[2026-08-31 03:39:19,695.695 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:39:19,896.896 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:39:19,912.912 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:39:20,079.079 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:39:20,086.086 INFO    ] time= 31/08/2026 03:39:20
[2026-08-31 03:39:20,116.116 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:39:20,162.162 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:39:20,301.301 INFO    ] No existing commands found in stream
[2026-08-31 03:39:25,317.317 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:39:25,320.320 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-08-31 03:39:27,068.068 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 03:39:27,071.071 INFO    ] Checking for system updates...
[2026-08-31 03:39:27,106.106 INFO    ] 200
[2026-08-31 03:39:27,108.108 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:39:27,161.161 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:39:27,164.164 INFO    ] No update needed
[2026-08-31 03:39:27,166.166 INFO    ] Checking for camera pi updates...
[2026-08-31 03:39:27,200.200 INFO    ] 200
[2026-08-31 03:39:27,203.203 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:39:27,248.248 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:39:27,329.329 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:39:27,332.332 INFO    ] No camera update needed
[2026-08-31 03:39:27,334.334 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:39:27,337.337 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:39:27,342.342 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:39:27,347.347 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:39:29,388.388 INFO    ] ================================================
[2026-08-31 03:39:29,403.403 INFO    ] Launching Daemon at Mon Aug 31 03:39:29 IST 2026
[2026-08-31 03:39:29,413.413 INFO    ] ================================================
[2026-08-31 03:39:29,978.978 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:39:29
[2026-08-31 03:39:30,560.560 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:39:30,819.819 INFO    ] Initializing speech engine...
[2026-08-31 03:39:30,838.838 INFO    ] 2026-08-31 03:39:30
[2026-08-31 03:39:31,089.089 INFO    ] 2026-08-31 03:39:31
[2026-08-31 03:39:31,124.124 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:39:31,338.338 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:39:31,385.385 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:39:31,556.556 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:39:31,597.597 INFO    ] time= 31/08/2026 03:39:31
[2026-08-31 03:39:31,657.657 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:39:31,694.694 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:39:31,820.820 INFO    ] No existing commands found in stream
[2026-08-31 03:39:36,838.838 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:39:36,841.841 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-08-31 03:39:40,469.469 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 03:39:40,471.471 INFO    ] Checking for system updates...
[2026-08-31 03:39:40,507.507 INFO    ] 200
[2026-08-31 03:39:40,509.509 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:39:40,561.561 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:39:40,563.563 INFO    ] No update needed
[2026-08-31 03:39:40,566.566 INFO    ] Checking for camera pi updates...
[2026-08-31 03:39:40,599.599 INFO    ] 200
[2026-08-31 03:39:40,601.601 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:39:40,646.646 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:39:40,743.743 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:39:40,745.745 INFO    ] No camera update needed
[2026-08-31 03:39:40,747.747 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:39:40,750.750 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:39:40,755.755 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:39:40,760.760 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:39:42,799.799 INFO    ] ================================================
[2026-08-31 03:39:42,814.814 INFO    ] Launching Daemon at Mon Aug 31 03:39:42 IST 2026
[2026-08-31 03:39:42,825.825 INFO    ] ================================================
[2026-08-31 03:39:43,488.488 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:39:43
[2026-08-31 03:39:44,167.167 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:39:44,475.475 INFO    ] Initializing speech engine...
[2026-08-31 03:39:44,489.489 INFO    ] 2026-08-31 03:39:44
[2026-08-31 03:39:44,801.801 INFO    ] 2026-08-31 03:39:44
[2026-08-31 03:39:44,886.886 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:39:45,096.096 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:39:45,105.105 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:39:45,288.288 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:39:45,306.306 INFO    ] time= 31/08/2026 03:39:45
[2026-08-31 03:39:45,325.325 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:39:45,353.353 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:39:45,461.461 INFO    ] No existing commands found in stream
[2026-08-31 03:39:50,478.478 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:39:50,481.481 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-08-31 03:39:53,934.934 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 03:39:53,937.937 INFO    ] Checking for system updates...
[2026-08-31 03:39:53,974.974 INFO    ] 200
[2026-08-31 03:39:53,977.977 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:39:54,032.032 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:39:54,035.035 INFO    ] No update needed
[2026-08-31 03:39:54,038.038 INFO    ] Checking for camera pi updates...
[2026-08-31 03:39:54,072.072 INFO    ] 200
[2026-08-31 03:39:54,075.075 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:39:54,117.117 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:39:54,200.200 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:39:54,203.203 INFO    ] No camera update needed
[2026-08-31 03:39:54,206.206 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:39:54,209.209 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:39:54,215.215 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:39:54,221.221 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:39:56,262.262 INFO    ] ================================================
[2026-08-31 03:39:56,283.283 INFO    ] Launching Daemon at Mon Aug 31 03:39:56 IST 2026
[2026-08-31 03:39:56,294.294 INFO    ] ================================================
[2026-08-31 03:39:56,960.960 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:39:56
[2026-08-31 03:39:57,646.646 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:39:57,959.959 INFO    ] Initializing speech engine...
[2026-08-31 03:39:57,971.971 INFO    ] 2026-08-31 03:39:57
[2026-08-31 03:39:58,243.243 INFO    ] 2026-08-31 03:39:58
[2026-08-31 03:39:58,298.298 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:39:58,587.587 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:39:58,596.596 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:39:58,796.796 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:39:58,819.819 INFO    ] time= 31/08/2026 03:39:58
[2026-08-31 03:39:58,846.846 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:39:58,865.865 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:39:58,988.988 INFO    ] No existing commands found in stream
[2026-08-31 03:40:04,021.021 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:40:04,024.024 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-08-31 03:40:07,575.575 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 03:40:07,578.578 INFO    ] Checking for system updates...
[2026-08-31 03:40:07,613.613 INFO    ] 200
[2026-08-31 03:40:07,616.616 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:40:07,671.671 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:40:07,674.674 INFO    ] No update needed
[2026-08-31 03:40:07,676.676 INFO    ] Checking for camera pi updates...
[2026-08-31 03:40:07,712.712 INFO    ] 200
[2026-08-31 03:40:07,715.715 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:40:07,756.756 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:40:07,852.852 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:40:07,855.855 INFO    ] No camera update needed
[2026-08-31 03:40:07,857.857 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:40:07,860.860 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:40:07,865.865 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:40:07,870.870 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:40:09,911.911 INFO    ] ================================================
[2026-08-31 03:40:09,926.926 INFO    ] Launching Daemon at Mon Aug 31 03:40:09 IST 2026
[2026-08-31 03:40:09,937.937 INFO    ] ================================================
[2026-08-31 03:40:10,506.506 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:40:10
[2026-08-31 03:40:11,111.111 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:40:11,372.372 INFO    ] Initializing speech engine...
[2026-08-31 03:40:11,379.379 INFO    ] 2026-08-31 03:40:11
[2026-08-31 03:40:11,655.655 INFO    ] 2026-08-31 03:40:11
[2026-08-31 03:40:11,690.690 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:40:11,895.895 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:40:11,952.952 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:40:12,099.099 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:40:12,139.139 INFO    ] time= 31/08/2026 03:40:12
[2026-08-31 03:40:12,189.189 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:40:12,235.235 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:40:12,368.368 INFO    ] No existing commands found in stream
[2026-08-31 03:40:17,396.396 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:40:17,490.490 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-08-31 03:40:19,612.612 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 03:40:19,614.614 INFO    ] Checking for system updates...
[2026-08-31 03:40:19,650.650 INFO    ] 200
[2026-08-31 03:40:19,652.652 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:40:19,709.709 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:40:19,712.712 INFO    ] No update needed
[2026-08-31 03:40:19,714.714 INFO    ] Checking for camera pi updates...
[2026-08-31 03:40:19,748.748 INFO    ] 200
[2026-08-31 03:40:19,750.750 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:40:19,798.798 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:40:19,871.871 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:40:19,874.874 INFO    ] No camera update needed
[2026-08-31 03:40:19,876.876 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:40:19,878.878 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:40:19,884.884 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:40:19,889.889 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:40:21,930.930 INFO    ] ================================================
[2026-08-31 03:40:21,945.945 INFO    ] Launching Daemon at Mon Aug 31 03:40:21 IST 2026
[2026-08-31 03:40:21,956.956 INFO    ] ================================================
[2026-08-31 03:40:22,540.540 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:40:22
[2026-08-31 03:40:23,146.146 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:40:23,407.407 INFO    ] Initializing speech engine...
[2026-08-31 03:40:23,432.432 INFO    ] 2026-08-31 03:40:23
[2026-08-31 03:40:23,705.705 INFO    ] 2026-08-31 03:40:23
[2026-08-31 03:40:23,745.745 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:40:23,974.974 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:40:24,023.023 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:40:24,198.198 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:40:24,245.245 INFO    ] time= 31/08/2026 03:40:24
[2026-08-31 03:40:24,294.294 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:40:24,348.348 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:40:24,411.411 INFO    ] No existing commands found in stream
[2026-08-31 03:40:29,423.423 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:40:29,425.425 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-08-31 03:40:31,621.621 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 03:40:31,624.624 INFO    ] Checking for system updates...
[2026-08-31 03:40:31,662.662 INFO    ] 200
[2026-08-31 03:40:31,665.665 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:40:31,730.730 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:40:31,733.733 INFO    ] No update needed
[2026-08-31 03:40:31,736.736 INFO    ] Checking for camera pi updates...
[2026-08-31 03:40:31,773.773 INFO    ] 200
[2026-08-31 03:40:31,775.775 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:40:31,819.819 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:40:31,929.929 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:40:31,932.932 INFO    ] No camera update needed
[2026-08-31 03:40:31,935.935 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:40:31,937.937 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:40:31,943.943 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:40:31,948.948 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:40:33,990.990 INFO    ] ================================================
[2026-08-31 03:40:34,005.005 INFO    ] Launching Daemon at Mon Aug 31 03:40:33 IST 2026
[2026-08-31 03:40:34,016.016 INFO    ] ================================================
[2026-08-31 03:40:34,594.594 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:40:34
[2026-08-31 03:40:35,243.243 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:40:35,551.551 INFO    ] Initializing speech engine...
[2026-08-31 03:40:35,565.565 INFO    ] 2026-08-31 03:40:35
[2026-08-31 03:40:35,878.878 INFO    ] 2026-08-31 03:40:35
[2026-08-31 03:40:35,960.960 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:40:36,174.174 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:40:36,179.179 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:40:36,374.374 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:40:36,394.394 INFO    ] time= 31/08/2026 03:40:36
[2026-08-31 03:40:36,404.404 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:40:36,433.433 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:40:36,566.566 INFO    ] No existing commands found in stream
[2026-08-31 03:40:41,592.592 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:40:41,595.595 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-08-31 03:40:45,447.447 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 03:40:45,451.451 INFO    ] Checking for system updates...
[2026-08-31 03:40:45,493.493 INFO    ] 200
[2026-08-31 03:40:45,495.495 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:40:45,558.558 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:40:45,561.561 INFO    ] No update needed
[2026-08-31 03:40:45,563.563 INFO    ] Checking for camera pi updates...
[2026-08-31 03:40:45,598.598 INFO    ] 200
[2026-08-31 03:40:45,601.601 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:40:45,643.643 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:40:45,728.728 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:40:45,731.731 INFO    ] No camera update needed
[2026-08-31 03:40:45,733.733 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:40:45,735.735 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:40:45,740.740 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:40:45,745.745 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:40:47,786.786 INFO    ] ================================================
[2026-08-31 03:40:47,801.801 INFO    ] Launching Daemon at Mon Aug 31 03:40:47 IST 2026
[2026-08-31 03:40:47,812.812 INFO    ] ================================================
[2026-08-31 03:40:48,381.381 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:40:48
[2026-08-31 03:40:48,967.967 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:40:49,215.215 INFO    ] Initializing speech engine...
[2026-08-31 03:40:49,230.230 INFO    ] 2026-08-31 03:40:49
[2026-08-31 03:40:49,497.497 INFO    ] 2026-08-31 03:40:49
[2026-08-31 03:40:49,532.532 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:40:49,794.794 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:40:49,798.798 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:40:50,015.015 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:40:50,062.062 INFO    ] time= 31/08/2026 03:40:50
[2026-08-31 03:40:50,069.069 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:40:50,084.084 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:40:50,209.209 INFO    ] No existing commands found in stream
[2026-08-31 03:40:55,229.229 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:40:55,232.232 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-08-31 03:40:58,933.933 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 03:40:58,936.936 INFO    ] Checking for system updates...
[2026-08-31 03:40:58,977.977 INFO    ] 200
[2026-08-31 03:40:58,980.980 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:40:59,044.044 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:40:59,047.047 INFO    ] No update needed
[2026-08-31 03:40:59,050.050 INFO    ] Checking for camera pi updates...
[2026-08-31 03:40:59,088.088 INFO    ] 200
[2026-08-31 03:40:59,091.091 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:40:59,138.138 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:40:59,223.223 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:40:59,226.226 INFO    ] No camera update needed
[2026-08-31 03:40:59,229.229 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:40:59,232.232 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:40:59,238.238 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:40:59,244.244 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:41:01,286.286 INFO    ] ================================================
[2026-08-31 03:41:01,302.302 INFO    ] Launching Daemon at Mon Aug 31 03:41:01 IST 2026
[2026-08-31 03:41:01,313.313 INFO    ] ================================================
[2026-08-31 03:41:02,071.071 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:41:02
[2026-08-31 03:41:02,716.716 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:41:03,041.041 INFO    ] Initializing speech engine...
[2026-08-31 03:41:03,055.055 INFO    ] 2026-08-31 03:41:03
[2026-08-31 03:41:03,359.359 INFO    ] 2026-08-31 03:41:03
[2026-08-31 03:41:03,399.399 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:41:03,562.562 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:41:03,568.568 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:41:03,722.722 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:41:03,733.733 INFO    ] time= 31/08/2026 03:41:03
[2026-08-31 03:41:03,737.737 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:41:03,761.761 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:41:03,887.887 INFO    ] No existing commands found in stream
[2026-08-31 03:41:08,898.898 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:41:08,901.901 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-08-31 03:41:10,667.667 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 03:41:10,670.670 INFO    ] Checking for system updates...
[2026-08-31 03:41:10,709.709 INFO    ] 200
[2026-08-31 03:41:10,712.712 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:41:10,764.764 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:41:10,767.767 INFO    ] No update needed
[2026-08-31 03:41:10,769.769 INFO    ] Checking for camera pi updates...
[2026-08-31 03:41:10,803.803 INFO    ] 200
[2026-08-31 03:41:10,805.805 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:41:10,851.851 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:41:11,031.031 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:41:11,034.034 INFO    ] No camera update needed
[2026-08-31 03:41:11,036.036 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:41:11,038.038 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:41:11,044.044 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:41:11,049.049 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:41:13,090.090 INFO    ] ================================================
[2026-08-31 03:41:13,107.107 INFO    ] Launching Daemon at Mon Aug 31 03:41:13 IST 2026
[2026-08-31 03:41:13,119.119 INFO    ] ================================================
[2026-08-31 03:41:13,692.692 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:41:13
[2026-08-31 03:41:14,283.283 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:41:14,554.554 INFO    ] Initializing speech engine...
[2026-08-31 03:41:14,564.564 INFO    ] 2026-08-31 03:41:14
[2026-08-31 03:41:14,814.814 INFO    ] 2026-08-31 03:41:14
[2026-08-31 03:41:14,850.850 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:41:15,109.109 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:41:15,118.118 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:41:15,327.327 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:41:15,377.377 INFO    ] time= 31/08/2026 03:41:15
[2026-08-31 03:41:15,389.389 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:41:15,406.406 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:41:15,537.537 INFO    ] No existing commands found in stream
[2026-08-31 03:41:20,552.552 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:41:20,555.555 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-08-31 03:41:24,544.544 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 03:41:24,547.547 INFO    ] Checking for system updates...
[2026-08-31 03:41:24,590.590 INFO    ] 200
[2026-08-31 03:41:24,595.595 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:41:24,648.648 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:41:24,650.650 INFO    ] No update needed
[2026-08-31 03:41:24,653.653 INFO    ] Checking for camera pi updates...
[2026-08-31 03:41:24,687.687 INFO    ] 200
[2026-08-31 03:41:24,690.690 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:41:24,731.731 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:41:24,814.814 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:41:24,817.817 INFO    ] No camera update needed
[2026-08-31 03:41:24,820.820 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:41:24,823.823 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:41:24,829.829 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:41:24,834.834 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:41:26,876.876 INFO    ] ================================================
[2026-08-31 03:41:26,893.893 INFO    ] Launching Daemon at Mon Aug 31 03:41:26 IST 2026
[2026-08-31 03:41:26,904.904 INFO    ] ================================================
[2026-08-31 03:41:27,469.469 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:41:27
[2026-08-31 03:41:28,055.055 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:41:28,315.315 INFO    ] Initializing speech engine...
[2026-08-31 03:41:28,330.330 INFO    ] 2026-08-31 03:41:28
[2026-08-31 03:41:28,586.586 INFO    ] 2026-08-31 03:41:28
[2026-08-31 03:41:28,621.621 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:41:28,879.879 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:41:28,888.888 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:41:29,096.096 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:41:29,150.150 INFO    ] time= 31/08/2026 03:41:29
[2026-08-31 03:41:29,160.160 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:41:29,178.178 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:41:29,314.314 INFO    ] No existing commands found in stream
[2026-08-31 03:41:34,333.333 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:41:34,335.335 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-08-31 03:41:34,914.914 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 03:41:34,917.917 INFO    ] Checking for system updates...
[2026-08-31 03:41:34,953.953 INFO    ] 200
[2026-08-31 03:41:34,955.955 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:41:35,014.014 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:41:35,016.016 INFO    ] No update needed
[2026-08-31 03:41:35,019.019 INFO    ] Checking for camera pi updates...
[2026-08-31 03:41:35,053.053 INFO    ] 200
[2026-08-31 03:41:35,055.055 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:41:35,099.099 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:41:35,194.194 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:41:35,197.197 INFO    ] No camera update needed
[2026-08-31 03:41:35,199.199 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:41:35,202.202 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:41:35,207.207 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:41:35,212.212 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:41:37,253.253 INFO    ] ================================================
[2026-08-31 03:41:37,269.269 INFO    ] Launching Daemon at Mon Aug 31 03:41:37 IST 2026
[2026-08-31 03:41:37,281.281 INFO    ] ================================================
[2026-08-31 03:41:37,846.846 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:41:37
[2026-08-31 03:41:38,432.432 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:41:38,680.680 INFO    ] Initializing speech engine...
[2026-08-31 03:41:38,695.695 INFO    ] 2026-08-31 03:41:38
[2026-08-31 03:41:38,960.960 INFO    ] 2026-08-31 03:41:38
[2026-08-31 03:41:38,995.995 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:41:39,178.178 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:41:39,194.194 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:41:39,394.394 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:41:39,442.442 INFO    ] time= 31/08/2026 03:41:39
[2026-08-31 03:41:39,496.496 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:41:39,530.530 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:41:39,650.650 INFO    ] No existing commands found in stream
[2026-08-31 03:41:44,681.681 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:41:44,683.683 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-08-31 03:41:49,146.146 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 03:41:49,149.149 INFO    ] Checking for system updates...
[2026-08-31 03:41:49,185.185 INFO    ] 200
[2026-08-31 03:41:49,188.188 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:41:49,246.246 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:41:49,249.249 INFO    ] No update needed
[2026-08-31 03:41:49,252.252 INFO    ] Checking for camera pi updates...
[2026-08-31 03:41:49,286.286 INFO    ] 200
[2026-08-31 03:41:49,289.289 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:41:49,330.330 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:41:49,436.436 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:41:49,439.439 INFO    ] No camera update needed
[2026-08-31 03:41:49,442.442 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:41:49,444.444 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:41:49,450.450 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:41:49,456.456 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:41:51,497.497 INFO    ] ================================================
[2026-08-31 03:41:51,513.513 INFO    ] Launching Daemon at Mon Aug 31 03:41:51 IST 2026
[2026-08-31 03:41:51,525.525 INFO    ] ================================================
[2026-08-31 03:41:52,104.104 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:41:52
[2026-08-31 03:41:52,701.701 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:41:52,976.976 INFO    ] Initializing speech engine...
[2026-08-31 03:41:52,986.986 INFO    ] 2026-08-31 03:41:52
[2026-08-31 03:41:53,242.242 INFO    ] 2026-08-31 03:41:53
[2026-08-31 03:41:53,302.302 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:41:53,534.534 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:41:53,540.540 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:41:53,747.747 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:41:53,796.796 INFO    ] time= 31/08/2026 03:41:53
[2026-08-31 03:41:53,802.802 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:41:53,816.816 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:41:53,936.936 INFO    ] No existing commands found in stream
[2026-08-31 03:41:58,958.958 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:41:58,962.962 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-08-31 03:42:02,192.192 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 03:42:02,195.195 INFO    ] Checking for system updates...
[2026-08-31 03:42:02,233.233 INFO    ] 200
[2026-08-31 03:42:02,235.235 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:42:02,296.296 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:42:02,299.299 INFO    ] No update needed
[2026-08-31 03:42:02,302.302 INFO    ] Checking for camera pi updates...
[2026-08-31 03:42:02,339.339 INFO    ] 200
[2026-08-31 03:42:02,343.343 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:42:02,405.405 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:42:02,456.456 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:42:02,459.459 INFO    ] No camera update needed
[2026-08-31 03:42:02,463.463 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:42:02,467.467 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:42:02,474.474 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:42:02,480.480 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:42:04,523.523 INFO    ] ================================================
[2026-08-31 03:42:04,538.538 INFO    ] Launching Daemon at Mon Aug 31 03:42:04 IST 2026
[2026-08-31 03:42:04,549.549 INFO    ] ================================================
[2026-08-31 03:42:05,137.137 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:42:05
[2026-08-31 03:42:05,742.742 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:42:06,021.021 INFO    ] Initializing speech engine...
[2026-08-31 03:42:06,026.026 INFO    ] 2026-08-31 03:42:06
[2026-08-31 03:42:06,287.287 INFO    ] 2026-08-31 03:42:06
[2026-08-31 03:42:06,318.318 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:42:06,522.522 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:42:06,555.555 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:42:06,753.753 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:42:06,820.820 INFO    ] time= 31/08/2026 03:42:06
[2026-08-31 03:42:06,886.886 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:42:06,907.907 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:42:07,046.046 INFO    ] No existing commands found in stream
[2026-08-31 03:42:12,059.059 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:42:12,062.062 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-08-31 03:42:16,471.471 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 03:42:16,474.474 INFO    ] Checking for system updates...
[2026-08-31 03:42:16,513.513 INFO    ] 200
[2026-08-31 03:42:16,516.516 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:42:16,569.569 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:42:16,572.572 INFO    ] No update needed
[2026-08-31 03:42:16,574.574 INFO    ] Checking for camera pi updates...
[2026-08-31 03:42:16,612.612 INFO    ] 200
[2026-08-31 03:42:16,614.614 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:42:16,655.655 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:42:16,737.737 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:42:16,740.740 INFO    ] No camera update needed
[2026-08-31 03:42:16,742.742 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:42:16,744.744 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:42:16,750.750 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:42:16,754.754 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:42:18,797.797 INFO    ] ================================================
[2026-08-31 03:42:18,814.814 INFO    ] Launching Daemon at Mon Aug 31 03:42:18 IST 2026
[2026-08-31 03:42:18,825.825 INFO    ] ================================================
[2026-08-31 03:42:19,504.504 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:42:19
[2026-08-31 03:42:20,193.193 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:42:20,507.507 INFO    ] Initializing speech engine...
[2026-08-31 03:42:20,521.521 INFO    ] 2026-08-31 03:42:20
[2026-08-31 03:42:20,811.811 INFO    ] 2026-08-31 03:42:20
[2026-08-31 03:42:20,906.906 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:42:21,142.142 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:42:21,147.147 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:42:21,335.335 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:42:21,353.353 INFO    ] time= 31/08/2026 03:42:21
[2026-08-31 03:42:21,359.359 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:42:21,374.374 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:42:21,445.445 INFO    ] No existing commands found in stream
[2026-08-31 03:42:26,481.481 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:42:26,484.484 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-08-31 03:42:28,738.738 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 03:42:28,740.740 INFO    ] Checking for system updates...
[2026-08-31 03:42:28,776.776 INFO    ] 200
[2026-08-31 03:42:28,779.779 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:42:28,832.832 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:42:28,834.834 INFO    ] No update needed
[2026-08-31 03:42:28,836.836 INFO    ] Checking for camera pi updates...
[2026-08-31 03:42:28,870.870 INFO    ] 200
[2026-08-31 03:42:28,873.873 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:42:28,919.919 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:42:28,976.976 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:42:28,978.978 INFO    ] No camera update needed
[2026-08-31 03:42:28,981.981 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:42:28,983.983 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:42:28,989.989 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:42:28,994.994 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:42:31,039.039 INFO    ] ================================================
[2026-08-31 03:42:31,054.054 INFO    ] Launching Daemon at Mon Aug 31 03:42:31 IST 2026
[2026-08-31 03:42:31,065.065 INFO    ] ================================================
[2026-08-31 03:42:31,640.640 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:42:31
[2026-08-31 03:42:32,269.269 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:42:32,553.553 INFO    ] Initializing speech engine...
[2026-08-31 03:42:32,570.570 INFO    ] 2026-08-31 03:42:32
[2026-08-31 03:42:32,840.840 INFO    ] 2026-08-31 03:42:32
[2026-08-31 03:42:32,880.880 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:42:33,096.096 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:42:33,156.156 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:42:33,300.300 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:42:33,355.355 INFO    ] time= 31/08/2026 03:42:33
[2026-08-31 03:42:33,409.409 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:42:33,436.436 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:42:33,575.575 INFO    ] No existing commands found in stream
[2026-08-31 03:42:38,595.595 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:42:38,598.598 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-08-31 03:42:42,379.379 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 03:42:42,381.381 INFO    ] Checking for system updates...
[2026-08-31 03:42:42,417.417 INFO    ] 200
[2026-08-31 03:42:42,419.419 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:42:42,476.476 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:42:42,479.479 INFO    ] No update needed
[2026-08-31 03:42:42,481.481 INFO    ] Checking for camera pi updates...
[2026-08-31 03:42:42,515.515 INFO    ] 200
[2026-08-31 03:42:42,518.518 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:42:42,564.564 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:42:42,644.644 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:42:42,646.646 INFO    ] No camera update needed
[2026-08-31 03:42:42,648.648 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:42:42,651.651 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:42:42,656.656 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:42:42,661.661 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:42:44,703.703 INFO    ] ================================================
[2026-08-31 03:42:44,718.718 INFO    ] Launching Daemon at Mon Aug 31 03:42:44 IST 2026
[2026-08-31 03:42:44,729.729 INFO    ] ================================================
[2026-08-31 03:42:45,310.310 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:42:45
[2026-08-31 03:42:45,908.908 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:42:46,160.160 INFO    ] Initializing speech engine...
[2026-08-31 03:42:46,183.183 INFO    ] 2026-08-31 03:42:46
[2026-08-31 03:42:46,438.438 INFO    ] 2026-08-31 03:42:46
[2026-08-31 03:42:46,472.472 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:42:46,643.643 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:42:46,655.655 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:42:46,800.800 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:42:46,807.807 INFO    ] time= 31/08/2026 03:42:46
[2026-08-31 03:42:46,847.847 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:42:46,873.873 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:42:46,982.982 INFO    ] No existing commands found in stream
[2026-08-31 03:42:52,009.009 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:42:52,011.011 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-08-31 03:42:56,314.314 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 03:42:56,317.317 INFO    ] Checking for system updates...
[2026-08-31 03:42:56,356.356 INFO    ] 200
[2026-08-31 03:42:56,359.359 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:42:56,419.419 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:42:56,421.421 INFO    ] No update needed
[2026-08-31 03:42:56,423.423 INFO    ] Checking for camera pi updates...
[2026-08-31 03:42:56,458.458 INFO    ] 200
[2026-08-31 03:42:56,460.460 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:42:56,506.506 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:42:56,589.589 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:42:56,592.592 INFO    ] No camera update needed
[2026-08-31 03:42:56,594.594 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:42:56,596.596 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:42:56,602.602 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:42:56,607.607 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:42:58,647.647 INFO    ] ================================================
[2026-08-31 03:42:58,662.662 INFO    ] Launching Daemon at Mon Aug 31 03:42:58 IST 2026
[2026-08-31 03:42:58,673.673 INFO    ] ================================================
[2026-08-31 03:42:59,239.239 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:42:59
[2026-08-31 03:42:59,823.823 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:43:00,076.076 INFO    ] Initializing speech engine...
[2026-08-31 03:43:00,081.081 INFO    ] 2026-08-31 03:43:00
[2026-08-31 03:43:00,382.382 INFO    ] 2026-08-31 03:43:00
[2026-08-31 03:43:00,420.420 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:43:00,616.616 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:43:00,623.623 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:43:00,760.760 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:43:00,764.764 INFO    ] time= 31/08/2026 03:43:00
[2026-08-31 03:43:00,794.794 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:43:00,810.810 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:43:00,893.893 INFO    ] No existing commands found in stream
[2026-08-31 03:43:05,908.908 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:43:05,911.911 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-08-31 03:43:06,896.896 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 03:43:06,899.899 INFO    ] Checking for system updates...
[2026-08-31 03:43:06,934.934 INFO    ] 200
[2026-08-31 03:43:06,937.937 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:43:06,991.991 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:43:06,993.993 INFO    ] No update needed
[2026-08-31 03:43:06,995.995 INFO    ] Checking for camera pi updates...
[2026-08-31 03:43:07,033.033 INFO    ] 200
[2026-08-31 03:43:07,035.035 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:43:07,076.076 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:43:07,142.142 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:43:07,145.145 INFO    ] No camera update needed
[2026-08-31 03:43:07,147.147 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:43:07,150.150 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:43:07,155.155 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:43:07,160.160 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:43:09,201.201 INFO    ] ================================================
[2026-08-31 03:43:09,216.216 INFO    ] Launching Daemon at Mon Aug 31 03:43:09 IST 2026
[2026-08-31 03:43:09,228.228 INFO    ] ================================================
[2026-08-31 03:43:09,881.881 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:43:09
[2026-08-31 03:43:10,558.558 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:43:10,863.863 INFO    ] Initializing speech engine...
[2026-08-31 03:43:10,877.877 INFO    ] 2026-08-31 03:43:10
[2026-08-31 03:43:11,193.193 INFO    ] 2026-08-31 03:43:11
[2026-08-31 03:43:11,276.276 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:43:11,493.493 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:43:11,498.498 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:43:11,694.694 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:43:11,701.701 INFO    ] time= 31/08/2026 03:43:11
[2026-08-31 03:43:11,724.724 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:43:11,752.752 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:43:11,859.859 INFO    ] No existing commands found in stream
[2026-08-31 03:43:16,888.888 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:43:16,891.891 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-08-31 03:43:19,454.454 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 03:43:19,457.457 INFO    ] Checking for system updates...
[2026-08-31 03:43:19,494.494 INFO    ] 200
[2026-08-31 03:43:19,497.497 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:43:19,551.551 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:43:19,554.554 INFO    ] No update needed
[2026-08-31 03:43:19,557.557 INFO    ] Checking for camera pi updates...
[2026-08-31 03:43:19,593.593 INFO    ] 200
[2026-08-31 03:43:19,595.595 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:43:19,637.637 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:43:19,839.839 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:43:19,842.842 INFO    ] No camera update needed
[2026-08-31 03:43:19,845.845 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:43:19,847.847 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:43:19,854.854 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:43:19,859.859 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:43:21,900.900 INFO    ] ================================================
[2026-08-31 03:43:21,915.915 INFO    ] Launching Daemon at Mon Aug 31 03:43:21 IST 2026
[2026-08-31 03:43:21,926.926 INFO    ] ================================================
[2026-08-31 03:43:22,580.580 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:43:22
[2026-08-31 03:43:23,254.254 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:43:23,556.556 INFO    ] Initializing speech engine...
[2026-08-31 03:43:23,564.564 INFO    ] 2026-08-31 03:43:23
[2026-08-31 03:43:23,887.887 INFO    ] 2026-08-31 03:43:23
[2026-08-31 03:43:23,969.969 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:43:24,184.184 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:43:24,194.194 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:43:24,386.386 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:43:24,393.393 INFO    ] time= 31/08/2026 03:43:24
[2026-08-31 03:43:24,414.414 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:43:24,442.442 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:43:24,567.567 INFO    ] No existing commands found in stream
[2026-08-31 03:43:29,594.594 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:43:29,597.597 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-08-31 03:43:32,012.012 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 03:43:32,016.016 INFO    ] Checking for system updates...
[2026-08-31 03:43:32,059.059 INFO    ] 200
[2026-08-31 03:43:32,062.062 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:43:32,133.133 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:43:32,136.136 INFO    ] No update needed
[2026-08-31 03:43:32,139.139 INFO    ] Checking for camera pi updates...
[2026-08-31 03:43:32,178.178 INFO    ] 200
[2026-08-31 03:43:32,181.181 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:43:32,224.224 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:43:32,278.278 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:43:32,281.281 INFO    ] No camera update needed
[2026-08-31 03:43:32,284.284 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:43:32,287.287 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:43:32,293.293 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:43:32,299.299 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:43:34,340.340 INFO    ] ================================================
[2026-08-31 03:43:34,355.355 INFO    ] Launching Daemon at Mon Aug 31 03:43:34 IST 2026
[2026-08-31 03:43:34,365.365 INFO    ] ================================================
[2026-08-31 03:43:34,931.931 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:43:34
[2026-08-31 03:43:35,516.516 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:43:35,779.779 INFO    ] Initializing speech engine...
[2026-08-31 03:43:35,800.800 INFO    ] 2026-08-31 03:43:35
[2026-08-31 03:43:36,080.080 INFO    ] 2026-08-31 03:43:36
[2026-08-31 03:43:36,115.115 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:43:36,318.318 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:43:36,323.323 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:43:36,460.460 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:43:36,468.468 INFO    ] time= 31/08/2026 03:43:36
[2026-08-31 03:43:36,491.491 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:43:36,513.513 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:43:36,651.651 INFO    ] No existing commands found in stream
[2026-08-31 03:43:41,676.676 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:43:41,679.679 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-08-31 03:43:42,687.687 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 03:43:42,689.689 INFO    ] Checking for system updates...
[2026-08-31 03:43:42,725.725 INFO    ] 200
[2026-08-31 03:43:42,727.727 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:43:42,781.781 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:43:42,783.783 INFO    ] No update needed
[2026-08-31 03:43:42,786.786 INFO    ] Checking for camera pi updates...
[2026-08-31 03:43:42,829.829 INFO    ] 200
[2026-08-31 03:43:42,831.831 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:43:42,877.877 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:43:42,962.962 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:43:42,965.965 INFO    ] No camera update needed
[2026-08-31 03:43:42,967.967 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:43:42,970.970 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:43:42,975.975 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:43:42,980.980 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:43:45,021.021 INFO    ] ================================================
[2026-08-31 03:43:45,037.037 INFO    ] Launching Daemon at Mon Aug 31 03:43:45 IST 2026
[2026-08-31 03:43:45,049.049 INFO    ] ================================================
[2026-08-31 03:43:45,632.632 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:43:45
[2026-08-31 03:43:46,232.232 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:43:46,496.496 INFO    ] Initializing speech engine...
[2026-08-31 03:43:46,503.503 INFO    ] 2026-08-31 03:43:46
[2026-08-31 03:43:46,804.804 INFO    ] 2026-08-31 03:43:46
[2026-08-31 03:43:46,843.843 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:43:47,045.045 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:43:47,060.060 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:43:47,205.205 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:43:47,216.216 INFO    ] time= 31/08/2026 03:43:47
[2026-08-31 03:43:47,225.225 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:43:47,289.289 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:43:47,418.418 INFO    ] No existing commands found in stream
[2026-08-31 03:43:52,438.438 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:43:52,441.441 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-08-31 03:43:53,496.496 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 03:43:53,499.499 INFO    ] Checking for system updates...
[2026-08-31 03:43:53,535.535 INFO    ] 200
[2026-08-31 03:43:53,537.537 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:43:53,591.591 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:43:53,593.593 INFO    ] No update needed
[2026-08-31 03:43:53,596.596 INFO    ] Checking for camera pi updates...
[2026-08-31 03:43:53,630.630 INFO    ] 200
[2026-08-31 03:43:53,632.632 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:43:53,677.677 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:43:53,781.781 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:43:53,784.784 INFO    ] No camera update needed
[2026-08-31 03:43:53,786.786 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:43:53,788.788 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:43:53,793.793 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:43:53,799.799 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:43:55,839.839 INFO    ] ================================================
[2026-08-31 03:43:55,854.854 INFO    ] Launching Daemon at Mon Aug 31 03:43:55 IST 2026
[2026-08-31 03:43:55,865.865 INFO    ] ================================================
[2026-08-31 03:43:56,430.430 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:43:56
[2026-08-31 03:43:57,014.014 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:43:57,271.271 INFO    ] Initializing speech engine...
[2026-08-31 03:43:57,279.279 INFO    ] 2026-08-31 03:43:57
[2026-08-31 03:43:57,576.576 INFO    ] 2026-08-31 03:43:57
[2026-08-31 03:43:57,601.601 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:43:57,816.816 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:43:57,828.828 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:43:57,970.970 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:43:57,998.998 INFO    ] time= 31/08/2026 03:43:57
[2026-08-31 03:43:58,007.007 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:43:58,011.011 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:43:58,089.089 INFO    ] No existing commands found in stream
[2026-08-31 03:44:03,100.100 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:44:03,102.102 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-08-31 03:44:04,709.709 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 03:44:04,712.712 INFO    ] Checking for system updates...
[2026-08-31 03:44:04,748.748 INFO    ] 200
[2026-08-31 03:44:04,750.750 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:44:04,806.806 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:44:04,808.808 INFO    ] No update needed
[2026-08-31 03:44:04,811.811 INFO    ] Checking for camera pi updates...
[2026-08-31 03:44:04,844.844 INFO    ] 200
[2026-08-31 03:44:04,846.846 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:44:04,891.891 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:44:04,970.970 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:44:04,973.973 INFO    ] No camera update needed
[2026-08-31 03:44:04,975.975 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:44:04,977.977 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:44:04,982.982 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:44:04,988.988 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:44:07,028.028 INFO    ] ================================================
[2026-08-31 03:44:07,043.043 INFO    ] Launching Daemon at Mon Aug 31 03:44:07 IST 2026
[2026-08-31 03:44:07,055.055 INFO    ] ================================================
[2026-08-31 03:44:07,633.633 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:44:07
[2026-08-31 03:44:08,221.221 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:44:08,473.473 INFO    ] Initializing speech engine...
[2026-08-31 03:44:08,480.480 INFO    ] 2026-08-31 03:44:08
[2026-08-31 03:44:08,781.781 INFO    ] 2026-08-31 03:44:08
[2026-08-31 03:44:08,808.808 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:44:09,023.023 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:44:09,036.036 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:44:09,206.206 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:44:09,211.211 INFO    ] time= 31/08/2026 03:44:09
[2026-08-31 03:44:09,218.218 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:44:09,223.223 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:44:09,368.368 INFO    ] No existing commands found in stream
[2026-08-31 03:44:14,393.393 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:44:14,396.396 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-08-31 03:44:17,942.942 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 03:44:17,945.945 INFO    ] Checking for system updates...
[2026-08-31 03:44:17,980.980 INFO    ] 200
[2026-08-31 03:44:17,983.983 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:44:18,036.036 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:44:18,039.039 INFO    ] No update needed
[2026-08-31 03:44:18,041.041 INFO    ] Checking for camera pi updates...
[2026-08-31 03:44:18,079.079 INFO    ] 200
[2026-08-31 03:44:18,082.082 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:44:18,123.123 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:44:18,217.217 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:44:18,220.220 INFO    ] No camera update needed
[2026-08-31 03:44:18,222.222 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:44:18,224.224 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:44:18,230.230 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:44:18,234.234 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:44:20,275.275 INFO    ] ================================================
[2026-08-31 03:44:20,291.291 INFO    ] Launching Daemon at Mon Aug 31 03:44:20 IST 2026
[2026-08-31 03:44:20,302.302 INFO    ] ================================================
[2026-08-31 03:44:20,969.969 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:44:20
[2026-08-31 03:44:21,656.656 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:44:21,974.974 INFO    ] Initializing speech engine...
[2026-08-31 03:44:21,984.984 INFO    ] 2026-08-31 03:44:21
[2026-08-31 03:44:22,268.268 INFO    ] 2026-08-31 03:44:22
[2026-08-31 03:44:22,379.379 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:44:22,590.590 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:44:22,600.600 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:44:22,794.794 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:44:22,801.801 INFO    ] time= 31/08/2026 03:44:22
[2026-08-31 03:44:22,823.823 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:44:22,852.852 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:44:22,982.982 INFO    ] No existing commands found in stream
[2026-08-31 03:44:28,008.008 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:44:28,011.011 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-08-31 03:44:29,779.779 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 03:44:29,782.782 INFO    ] Checking for system updates...
[2026-08-31 03:44:29,820.820 INFO    ] 200
[2026-08-31 03:44:29,823.823 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:44:29,878.878 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:44:29,881.881 INFO    ] No update needed
[2026-08-31 03:44:29,884.884 INFO    ] Checking for camera pi updates...
[2026-08-31 03:44:29,919.919 INFO    ] 200
[2026-08-31 03:44:29,922.922 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:44:29,965.965 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:44:30,064.064 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:44:30,066.066 INFO    ] No camera update needed
[2026-08-31 03:44:30,069.069 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:44:30,072.072 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:44:30,079.079 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:44:30,085.085 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:44:32,129.129 INFO    ] ================================================
[2026-08-31 03:44:32,146.146 INFO    ] Launching Daemon at Mon Aug 31 03:44:32 IST 2026
[2026-08-31 03:44:32,163.163 INFO    ] ================================================
[2026-08-31 03:44:32,778.778 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:44:32
[2026-08-31 03:44:33,385.385 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:44:33,654.654 INFO    ] Initializing speech engine...
[2026-08-31 03:44:33,663.663 INFO    ] 2026-08-31 03:44:33
[2026-08-31 03:44:33,911.911 INFO    ] 2026-08-31 03:44:33
[2026-08-31 03:44:33,945.945 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:44:34,199.199 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:44:34,208.208 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:44:34,343.343 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:44:34,412.412 INFO    ] time= 31/08/2026 03:44:34
[2026-08-31 03:44:34,467.467 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:44:34,477.477 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:44:34,602.602 INFO    ] No existing commands found in stream
[2026-08-31 03:44:39,629.629 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:44:39,632.632 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-08-31 03:44:43,270.270 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 03:44:43,273.273 INFO    ] Checking for system updates...
[2026-08-31 03:44:43,313.313 INFO    ] 200
[2026-08-31 03:44:43,315.315 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:44:43,367.367 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:44:43,370.370 INFO    ] No update needed
[2026-08-31 03:44:43,372.372 INFO    ] Checking for camera pi updates...
[2026-08-31 03:44:43,406.406 INFO    ] 200
[2026-08-31 03:44:43,408.408 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:44:43,448.448 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:44:43,549.549 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:44:43,551.551 INFO    ] No camera update needed
[2026-08-31 03:44:43,554.554 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:44:43,556.556 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:44:43,561.561 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:44:43,567.567 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:44:45,609.609 INFO    ] ================================================
[2026-08-31 03:44:45,624.624 INFO    ] Launching Daemon at Mon Aug 31 03:44:45 IST 2026
[2026-08-31 03:44:45,635.635 INFO    ] ================================================
[2026-08-31 03:44:46,202.202 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:44:46
[2026-08-31 03:44:46,785.785 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:44:47,056.056 INFO    ] Initializing speech engine...
[2026-08-31 03:44:47,062.062 INFO    ] 2026-08-31 03:44:47
[2026-08-31 03:44:47,308.308 INFO    ] 2026-08-31 03:44:47
[2026-08-31 03:44:47,342.342 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:44:47,595.595 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:44:47,604.604 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:44:47,820.820 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:44:47,864.864 INFO    ] time= 31/08/2026 03:44:47
[2026-08-31 03:44:47,870.870 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:44:47,888.888 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:44:48,047.047 INFO    ] No existing commands found in stream
[2026-08-31 03:44:53,084.084 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:44:53,087.087 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-08-31 03:44:55,547.547 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 03:44:55,550.550 INFO    ] Checking for system updates...
[2026-08-31 03:44:55,586.586 INFO    ] 200
[2026-08-31 03:44:55,588.588 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:44:55,647.647 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:44:55,650.650 INFO    ] No update needed
[2026-08-31 03:44:55,653.653 INFO    ] Checking for camera pi updates...
[2026-08-31 03:44:55,689.689 INFO    ] 200
[2026-08-31 03:44:55,692.692 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:44:55,739.739 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:44:55,822.822 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:44:55,824.824 INFO    ] No camera update needed
[2026-08-31 03:44:55,827.827 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:44:55,829.829 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:44:55,835.835 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:44:55,840.840 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:44:57,881.881 INFO    ] ================================================
[2026-08-31 03:44:57,896.896 INFO    ] Launching Daemon at Mon Aug 31 03:44:57 IST 2026
[2026-08-31 03:44:57,906.906 INFO    ] ================================================
[2026-08-31 03:44:58,530.530 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:44:58
[2026-08-31 03:44:59,126.126 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:44:59,369.369 INFO    ] Initializing speech engine...
[2026-08-31 03:44:59,377.377 INFO    ] 2026-08-31 03:44:59
[2026-08-31 03:44:59,660.660 INFO    ] 2026-08-31 03:44:59
[2026-08-31 03:44:59,696.696 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:44:59,952.952 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:44:59,961.961 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:45:00,189.189 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:45:00,232.232 INFO    ] time= 31/08/2026 03:45:00
[2026-08-31 03:45:00,239.239 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:45:00,256.256 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:45:00,373.373 INFO    ] No existing commands found in stream
[2026-08-31 03:45:05,397.397 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:45:05,401.401 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-08-31 03:45:09,870.870 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 03:45:09,872.872 INFO    ] Checking for system updates...
[2026-08-31 03:45:09,911.911 INFO    ] 200
[2026-08-31 03:45:09,914.914 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:45:09,972.972 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:45:09,974.974 INFO    ] No update needed
[2026-08-31 03:45:09,976.976 INFO    ] Checking for camera pi updates...
[2026-08-31 03:45:10,009.009 INFO    ] 200
[2026-08-31 03:45:10,012.012 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:45:10,056.056 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:45:10,155.155 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:45:10,158.158 INFO    ] No camera update needed
[2026-08-31 03:45:10,160.160 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:45:10,162.162 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:45:10,168.168 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:45:10,173.173 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:45:12,212.212 INFO    ] ================================================
[2026-08-31 03:45:12,228.228 INFO    ] Launching Daemon at Mon Aug 31 03:45:12 IST 2026
[2026-08-31 03:45:12,239.239 INFO    ] ================================================
[2026-08-31 03:45:12,834.834 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:45:12
[2026-08-31 03:45:13,497.497 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:45:13,793.793 INFO    ] Initializing speech engine...
[2026-08-31 03:45:13,806.806 INFO    ] 2026-08-31 03:45:13
[2026-08-31 03:45:14,118.118 INFO    ] 2026-08-31 03:45:14
[2026-08-31 03:45:14,203.203 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:45:14,418.418 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:45:14,427.427 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:45:14,619.619 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:45:14,640.640 INFO    ] time= 31/08/2026 03:45:14
[2026-08-31 03:45:14,667.667 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:45:14,676.676 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:45:14,778.778 INFO    ] No existing commands found in stream
[2026-08-31 03:45:19,802.802 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:45:19,805.805 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-08-31 03:45:22,613.613 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 03:45:22,615.615 INFO    ] Checking for system updates...
[2026-08-31 03:45:22,652.652 INFO    ] 200
[2026-08-31 03:45:22,655.655 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:45:22,709.709 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:45:22,712.712 INFO    ] No update needed
[2026-08-31 03:45:22,714.714 INFO    ] Checking for camera pi updates...
[2026-08-31 03:45:22,753.753 INFO    ] 200
[2026-08-31 03:45:22,755.755 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:45:22,802.802 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:45:22,972.972 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:45:22,974.974 INFO    ] No camera update needed
[2026-08-31 03:45:22,977.977 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:45:22,979.979 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:45:22,984.984 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:45:22,990.990 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:45:25,029.029 INFO    ] ================================================
[2026-08-31 03:45:25,044.044 INFO    ] Launching Daemon at Mon Aug 31 03:45:25 IST 2026
[2026-08-31 03:45:25,056.056 INFO    ] ================================================
[2026-08-31 03:45:25,654.654 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:45:25
[2026-08-31 03:45:26,320.320 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:45:26,618.618 INFO    ] Initializing speech engine...
[2026-08-31 03:45:26,632.632 INFO    ] 2026-08-31 03:45:26
[2026-08-31 03:45:26,910.910 INFO    ] 2026-08-31 03:45:26
[2026-08-31 03:45:26,956.956 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:45:27,184.184 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:45:27,206.206 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:45:27,420.420 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:45:27,450.450 INFO    ] time= 31/08/2026 03:45:27
[2026-08-31 03:45:27,465.465 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:45:27,493.493 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:45:27,606.606 INFO    ] No existing commands found in stream
[2026-08-31 03:45:32,620.620 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:45:32,623.623 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-08-31 03:45:36,733.733 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 03:45:36,735.735 INFO    ] Checking for system updates...
[2026-08-31 03:45:36,771.771 INFO    ] 200
[2026-08-31 03:45:36,773.773 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:45:36,824.824 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:45:36,827.827 INFO    ] No update needed
[2026-08-31 03:45:36,829.829 INFO    ] Checking for camera pi updates...
[2026-08-31 03:45:36,867.867 INFO    ] 200
[2026-08-31 03:45:36,869.869 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:45:36,915.915 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:45:37,001.001 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:45:37,004.004 INFO    ] No camera update needed
[2026-08-31 03:45:37,006.006 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:45:37,008.008 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:45:37,014.014 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:45:37,019.019 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:45:39,058.058 INFO    ] ================================================
[2026-08-31 03:45:39,073.073 INFO    ] Launching Daemon at Mon Aug 31 03:45:39 IST 2026
[2026-08-31 03:45:39,083.083 INFO    ] ================================================
[2026-08-31 03:45:39,652.652 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:45:39
[2026-08-31 03:45:40,235.235 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:45:40,510.510 INFO    ] Initializing speech engine...
[2026-08-31 03:45:40,517.517 INFO    ] 2026-08-31 03:45:40
[2026-08-31 03:45:40,839.839 INFO    ] 2026-08-31 03:45:40
[2026-08-31 03:45:40,925.925 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:45:41,879.879 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:45:41,931.931 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:45:42,095.095 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:45:42,134.134 INFO    ] time= 31/08/2026 03:45:42
[2026-08-31 03:45:42,141.141 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:45:42,146.146 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:45:42,209.209 INFO    ] No existing commands found in stream
[2026-08-31 03:45:47,220.220 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:45:47,223.223 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-08-31 03:45:49,210.210 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 03:45:49,220.220 INFO    ] Checking for system updates...
[2026-08-31 03:45:49,265.265 INFO    ] 200
[2026-08-31 03:45:49,268.268 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:45:49,322.322 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:45:49,324.324 INFO    ] No update needed
[2026-08-31 03:45:49,327.327 INFO    ] Checking for camera pi updates...
[2026-08-31 03:45:49,362.362 INFO    ] 200
[2026-08-31 03:45:49,364.364 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:45:49,407.407 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:45:49,495.495 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:45:49,498.498 INFO    ] No camera update needed
[2026-08-31 03:45:49,501.501 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:45:49,503.503 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:45:49,510.510 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:45:49,515.515 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:45:51,558.558 INFO    ] ================================================
[2026-08-31 03:45:51,573.573 INFO    ] Launching Daemon at Mon Aug 31 03:45:51 IST 2026
[2026-08-31 03:45:51,583.583 INFO    ] ================================================
[2026-08-31 03:45:52,148.148 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:45:52
[2026-08-31 03:45:52,731.731 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:45:53,008.008 INFO    ] Initializing speech engine...
[2026-08-31 03:45:53,022.022 INFO    ] 2026-08-31 03:45:53
[2026-08-31 03:45:53,269.269 INFO    ] 2026-08-31 03:45:53
[2026-08-31 03:45:53,304.304 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:45:53,504.504 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:45:53,562.562 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:45:53,713.713 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:45:53,759.759 INFO    ] time= 31/08/2026 03:45:53
[2026-08-31 03:45:53,829.829 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:45:53,848.848 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:45:53,980.980 INFO    ] No existing commands found in stream
[2026-08-31 03:45:59,005.005 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:45:59,009.009 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-08-31 03:46:00,189.189 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 03:46:00,191.191 INFO    ] Checking for system updates...
[2026-08-31 03:46:00,228.228 INFO    ] 200
[2026-08-31 03:46:00,231.231 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:46:00,284.284 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:46:00,286.286 INFO    ] No update needed
[2026-08-31 03:46:00,289.289 INFO    ] Checking for camera pi updates...
[2026-08-31 03:46:00,323.323 INFO    ] 200
[2026-08-31 03:46:00,325.325 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:46:00,371.371 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:46:00,427.427 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:46:00,430.430 INFO    ] No camera update needed
[2026-08-31 03:46:00,432.432 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:46:00,434.434 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:46:00,440.440 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:46:00,445.445 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:46:02,490.490 INFO    ] ================================================
[2026-08-31 03:46:02,506.506 INFO    ] Launching Daemon at Mon Aug 31 03:46:02 IST 2026
[2026-08-31 03:46:02,517.517 INFO    ] ================================================
[2026-08-31 03:46:03,130.130 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:46:03
[2026-08-31 03:46:03,732.732 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:46:04,006.006 INFO    ] Initializing speech engine...
[2026-08-31 03:46:04,016.016 INFO    ] 2026-08-31 03:46:04
[2026-08-31 03:46:04,271.271 INFO    ] 2026-08-31 03:46:04
[2026-08-31 03:46:04,336.336 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:46:04,561.561 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:46:04,566.566 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:46:04,779.779 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:46:04,821.821 INFO    ] time= 31/08/2026 03:46:04
[2026-08-31 03:46:04,827.827 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:46:04,848.848 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:46:04,960.960 INFO    ] No existing commands found in stream
[2026-08-31 03:46:09,982.982 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:46:09,985.985 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-08-31 03:46:11,110.110 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 03:46:11,112.112 INFO    ] Checking for system updates...
[2026-08-31 03:46:11,152.152 INFO    ] 200
[2026-08-31 03:46:11,154.154 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:46:11,213.213 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:46:11,215.215 INFO    ] No update needed
[2026-08-31 03:46:11,218.218 INFO    ] Checking for camera pi updates...
[2026-08-31 03:46:11,255.255 INFO    ] 200
[2026-08-31 03:46:11,258.258 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:46:11,298.298 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:46:11,380.380 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:46:11,383.383 INFO    ] No camera update needed
[2026-08-31 03:46:11,385.385 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:46:11,387.387 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:46:11,393.393 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:46:11,398.398 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:46:13,440.440 INFO    ] ================================================
[2026-08-31 03:46:13,455.455 INFO    ] Launching Daemon at Mon Aug 31 03:46:13 IST 2026
[2026-08-31 03:46:13,465.465 INFO    ] ================================================
[2026-08-31 03:46:14,042.042 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:46:14
[2026-08-31 03:46:14,628.628 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:46:14,897.897 INFO    ] Initializing speech engine...
[2026-08-31 03:46:14,906.906 INFO    ] 2026-08-31 03:46:14
[2026-08-31 03:46:15,154.154 INFO    ] 2026-08-31 03:46:15
[2026-08-31 03:46:15,190.190 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:46:15,443.443 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:46:15,451.451 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:46:15,597.597 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:46:15,601.601 INFO    ] time= 31/08/2026 03:46:15
[2026-08-31 03:46:15,604.604 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:46:15,651.651 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:46:15,736.736 INFO    ] No existing commands found in stream
[2026-08-31 03:46:20,748.748 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:46:20,751.751 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-08-31 03:46:23,988.988 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 03:46:23,990.990 INFO    ] Checking for system updates...
[2026-08-31 03:46:24,029.029 INFO    ] 200
[2026-08-31 03:46:24,032.032 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:46:24,092.092 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:46:24,095.095 INFO    ] No update needed
[2026-08-31 03:46:24,097.097 INFO    ] Checking for camera pi updates...
[2026-08-31 03:46:24,132.132 INFO    ] 200
[2026-08-31 03:46:24,135.135 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:46:24,177.177 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:46:24,273.273 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:46:24,275.275 INFO    ] No camera update needed
[2026-08-31 03:46:24,278.278 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:46:24,281.281 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:46:24,287.287 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:46:24,293.293 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:46:26,337.337 INFO    ] ================================================
[2026-08-31 03:46:26,353.353 INFO    ] Launching Daemon at Mon Aug 31 03:46:26 IST 2026
[2026-08-31 03:46:26,364.364 INFO    ] ================================================
[2026-08-31 03:46:26,931.931 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:46:26
[2026-08-31 03:46:27,519.519 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:46:27,793.793 INFO    ] Initializing speech engine...
[2026-08-31 03:46:27,802.802 INFO    ] 2026-08-31 03:46:27
[2026-08-31 03:46:28,046.046 INFO    ] 2026-08-31 03:46:28
[2026-08-31 03:46:28,082.082 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:46:28,316.316 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:46:28,338.338 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:46:28,524.524 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:46:28,584.584 INFO    ] time= 31/08/2026 03:46:28
[2026-08-31 03:46:28,608.608 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:46:28,623.623 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:46:28,757.757 INFO    ] No existing commands found in stream
[2026-08-31 03:46:33,776.776 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:46:33,779.779 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-08-31 03:46:34,808.808 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 03:46:34,810.810 INFO    ] Checking for system updates...
[2026-08-31 03:46:34,852.852 INFO    ] 200
[2026-08-31 03:46:34,854.854 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:46:34,907.907 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:46:34,910.910 INFO    ] No update needed
[2026-08-31 03:46:34,913.913 INFO    ] Checking for camera pi updates...
[2026-08-31 03:46:34,948.948 INFO    ] 200
[2026-08-31 03:46:34,951.951 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:46:34,997.997 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:46:35,083.083 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:46:35,085.085 INFO    ] No camera update needed
[2026-08-31 03:46:35,088.088 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:46:35,091.091 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:46:35,097.097 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:46:35,103.103 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:46:37,147.147 INFO    ] ================================================
[2026-08-31 03:46:37,162.162 INFO    ] Launching Daemon at Mon Aug 31 03:46:37 IST 2026
[2026-08-31 03:46:37,173.173 INFO    ] ================================================
[2026-08-31 03:46:37,748.748 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:46:37
[2026-08-31 03:46:38,342.342 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:46:38,612.612 INFO    ] Initializing speech engine...
[2026-08-31 03:46:38,621.621 INFO    ] 2026-08-31 03:46:38
[2026-08-31 03:46:38,869.869 INFO    ] 2026-08-31 03:46:38
[2026-08-31 03:46:38,903.903 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:46:39,154.154 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:46:39,163.163 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:46:39,380.380 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:46:39,422.422 INFO    ] time= 31/08/2026 03:46:39
[2026-08-31 03:46:39,428.428 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:46:39,446.446 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:46:39,572.572 INFO    ] No existing commands found in stream
[2026-08-31 03:46:44,588.588 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:46:44,591.591 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-08-31 03:46:47,986.986 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 03:46:47,989.989 INFO    ] Checking for system updates...
[2026-08-31 03:46:48,030.030 INFO    ] 200
[2026-08-31 03:46:48,033.033 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:46:48,099.099 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:46:48,103.103 INFO    ] No update needed
[2026-08-31 03:46:48,105.105 INFO    ] Checking for camera pi updates...
[2026-08-31 03:46:48,140.140 INFO    ] 200
[2026-08-31 03:46:48,143.143 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:46:48,184.184 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:46:48,278.278 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:46:48,281.281 INFO    ] No camera update needed
[2026-08-31 03:46:48,284.284 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:46:48,287.287 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:46:48,293.293 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:46:48,299.299 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:46:50,341.341 INFO    ] ================================================
[2026-08-31 03:46:50,357.357 INFO    ] Launching Daemon at Mon Aug 31 03:46:50 IST 2026
[2026-08-31 03:46:50,368.368 INFO    ] ================================================
[2026-08-31 03:46:51,032.032 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:46:51
[2026-08-31 03:46:51,716.716 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:46:52,024.024 INFO    ] Initializing speech engine...
[2026-08-31 03:46:52,037.037 INFO    ] 2026-08-31 03:46:52
[2026-08-31 03:46:52,350.350 INFO    ] 2026-08-31 03:46:52
[2026-08-31 03:46:52,435.435 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:46:52,585.585 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:46:52,595.595 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:46:52,730.730 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:46:52,805.805 INFO    ] time= 31/08/2026 03:46:52
[2026-08-31 03:46:52,858.858 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:46:52,865.865 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:46:53,012.012 INFO    ] No existing commands found in stream
[2026-08-31 03:46:58,025.025 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:46:58,028.028 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-08-31 03:47:01,276.276 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 03:47:01,279.279 INFO    ] Checking for system updates...
[2026-08-31 03:47:01,317.317 INFO    ] 200
[2026-08-31 03:47:01,320.320 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:47:01,372.372 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:47:01,374.374 INFO    ] No update needed
[2026-08-31 03:47:01,377.377 INFO    ] Checking for camera pi updates...
[2026-08-31 03:47:01,411.411 INFO    ] 200
[2026-08-31 03:47:01,413.413 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:47:01,455.455 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:47:01,531.531 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:47:01,533.533 INFO    ] No camera update needed
[2026-08-31 03:47:01,536.536 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:47:01,538.538 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:47:01,544.544 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:47:01,549.549 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:47:03,592.592 INFO    ] ================================================
[2026-08-31 03:47:03,609.609 INFO    ] Launching Daemon at Mon Aug 31 03:47:03 IST 2026
[2026-08-31 03:47:03,621.621 INFO    ] ================================================
[2026-08-31 03:47:04,287.287 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:47:04
[2026-08-31 03:47:04,962.962 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:47:05,265.265 INFO    ] Initializing speech engine...
[2026-08-31 03:47:05,278.278 INFO    ] 2026-08-31 03:47:05
[2026-08-31 03:47:05,549.549 INFO    ] 2026-08-31 03:47:05
[2026-08-31 03:47:05,604.604 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:47:05,897.897 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:47:05,920.920 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:47:06,118.118 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:47:06,138.138 INFO    ] time= 31/08/2026 03:47:06
[2026-08-31 03:47:06,148.148 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:47:06,178.178 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:47:06,286.286 INFO    ] No existing commands found in stream
[2026-08-31 03:47:11,319.319 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:47:11,323.323 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-08-31 03:47:13,026.026 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 03:47:13,029.029 INFO    ] Checking for system updates...
[2026-08-31 03:47:13,065.065 INFO    ] 200
[2026-08-31 03:47:13,067.067 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:47:13,126.126 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:47:13,129.129 INFO    ] No update needed
[2026-08-31 03:47:13,131.131 INFO    ] Checking for camera pi updates...
[2026-08-31 03:47:13,169.169 INFO    ] 200
[2026-08-31 03:47:13,171.171 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:47:13,211.211 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:47:13,295.295 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:47:13,298.298 INFO    ] No camera update needed
[2026-08-31 03:47:13,300.300 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:47:13,303.303 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:47:13,308.308 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:47:13,313.313 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:47:15,354.354 INFO    ] ================================================
[2026-08-31 03:47:15,369.369 INFO    ] Launching Daemon at Mon Aug 31 03:47:15 IST 2026
[2026-08-31 03:47:15,380.380 INFO    ] ================================================
[2026-08-31 03:47:16,031.031 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:47:16
[2026-08-31 03:47:16,700.700 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:47:17,002.002 INFO    ] Initializing speech engine...
[2026-08-31 03:47:17,017.017 INFO    ] 2026-08-31 03:47:17
[2026-08-31 03:47:17,286.286 INFO    ] 2026-08-31 03:47:17
[2026-08-31 03:47:17,340.340 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:47:17,624.624 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:47:17,633.633 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:47:17,815.815 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:47:17,843.843 INFO    ] time= 31/08/2026 03:47:17
[2026-08-31 03:47:17,863.863 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:47:17,895.895 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:47:18,030.030 INFO    ] No existing commands found in stream
[2026-08-31 03:47:23,060.060 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:47:23,063.063 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-08-31 03:47:23,894.894 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 03:47:23,897.897 INFO    ] Checking for system updates...
[2026-08-31 03:47:23,932.932 INFO    ] 200
[2026-08-31 03:47:23,934.934 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:47:23,988.988 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:47:23,990.990 INFO    ] No update needed
[2026-08-31 03:47:23,993.993 INFO    ] Checking for camera pi updates...
[2026-08-31 03:47:24,030.030 INFO    ] 200
[2026-08-31 03:47:24,032.032 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:47:24,072.072 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:47:24,255.255 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:47:24,258.258 INFO    ] No camera update needed
[2026-08-31 03:47:24,260.260 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:47:24,262.262 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:47:24,268.268 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:47:24,273.273 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:47:26,313.313 INFO    ] ================================================
[2026-08-31 03:47:26,329.329 INFO    ] Launching Daemon at Mon Aug 31 03:47:26 IST 2026
[2026-08-31 03:47:26,340.340 INFO    ] ================================================
[2026-08-31 03:47:26,920.920 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:47:26
[2026-08-31 03:47:27,517.517 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:47:27,793.793 INFO    ] Initializing speech engine...
[2026-08-31 03:47:27,802.802 INFO    ] 2026-08-31 03:47:27
[2026-08-31 03:47:28,061.061 INFO    ] 2026-08-31 03:47:28
[2026-08-31 03:47:28,114.114 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:47:28,343.343 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:47:28,348.348 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:47:28,585.585 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:47:28,604.604 INFO    ] time= 31/08/2026 03:47:28
[2026-08-31 03:47:28,610.610 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:47:28,628.628 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:47:28,738.738 INFO    ] No existing commands found in stream
[2026-08-31 03:47:33,767.767 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:47:33,770.770 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-08-31 03:47:35,458.458 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 03:47:35,461.461 INFO    ] Checking for system updates...
[2026-08-31 03:47:35,501.501 INFO    ] 200
[2026-08-31 03:47:35,504.504 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:47:35,555.555 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:47:35,558.558 INFO    ] No update needed
[2026-08-31 03:47:35,560.560 INFO    ] Checking for camera pi updates...
[2026-08-31 03:47:35,596.596 INFO    ] 200
[2026-08-31 03:47:35,598.598 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:47:35,643.643 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:47:35,728.728 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:47:35,731.731 INFO    ] No camera update needed
[2026-08-31 03:47:35,733.733 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:47:35,735.735 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:47:35,740.740 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:47:35,745.745 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:47:37,786.786 INFO    ] ================================================
[2026-08-31 03:47:37,801.801 INFO    ] Launching Daemon at Mon Aug 31 03:47:37 IST 2026
[2026-08-31 03:47:37,812.812 INFO    ] ================================================
[2026-08-31 03:47:38,376.376 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:47:38
[2026-08-31 03:47:38,961.961 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:47:39,216.216 INFO    ] Initializing speech engine...
[2026-08-31 03:47:39,224.224 INFO    ] 2026-08-31 03:47:39
[2026-08-31 03:47:39,520.520 INFO    ] 2026-08-31 03:47:39
[2026-08-31 03:47:39,558.558 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:47:39,771.771 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:47:39,791.791 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:47:39,938.938 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:47:39,946.946 INFO    ] time= 31/08/2026 03:47:39
[2026-08-31 03:47:39,950.950 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:47:39,957.957 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:47:40,031.031 INFO    ] No existing commands found in stream
[2026-08-31 03:47:45,043.043 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:47:45,046.046 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-08-31 03:47:46,107.107 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 03:47:46,110.110 INFO    ] Checking for system updates...
[2026-08-31 03:47:46,145.145 INFO    ] 200
[2026-08-31 03:47:46,147.147 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:47:46,199.199 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:47:46,202.202 INFO    ] No update needed
[2026-08-31 03:47:46,204.204 INFO    ] Checking for camera pi updates...
[2026-08-31 03:47:46,238.238 INFO    ] 200
[2026-08-31 03:47:46,241.241 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:47:46,285.285 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:47:46,365.365 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:47:46,367.367 INFO    ] No camera update needed
[2026-08-31 03:47:46,370.370 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:47:46,372.372 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:47:46,378.378 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:47:46,382.382 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:47:48,424.424 INFO    ] ================================================
[2026-08-31 03:47:48,440.440 INFO    ] Launching Daemon at Mon Aug 31 03:47:48 IST 2026
[2026-08-31 03:47:48,450.450 INFO    ] ================================================
[2026-08-31 03:47:49,016.016 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:47:49
[2026-08-31 03:47:49,605.605 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:47:49,859.859 INFO    ] Initializing speech engine...
[2026-08-31 03:47:49,864.864 INFO    ] 2026-08-31 03:47:49
[2026-08-31 03:47:50,167.167 INFO    ] 2026-08-31 03:47:50
[2026-08-31 03:47:50,207.207 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:47:50,407.407 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:47:50,421.421 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:47:50,587.587 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:47:50,595.595 INFO    ] time= 31/08/2026 03:47:50
[2026-08-31 03:47:50,603.603 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:47:50,626.626 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:47:50,684.684 INFO    ] No existing commands found in stream
[2026-08-31 03:47:55,719.719 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:47:55,722.722 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-08-31 03:47:59,094.094 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 03:47:59,096.096 INFO    ] Checking for system updates...
[2026-08-31 03:47:59,133.133 INFO    ] 200
[2026-08-31 03:47:59,136.136 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:47:59,197.197 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:47:59,200.200 INFO    ] No update needed
[2026-08-31 03:47:59,203.203 INFO    ] Checking for camera pi updates...
[2026-08-31 03:47:59,242.242 INFO    ] 200
[2026-08-31 03:47:59,245.245 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:47:59,292.292 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:47:59,360.360 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:47:59,362.362 INFO    ] No camera update needed
[2026-08-31 03:47:59,365.365 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:47:59,368.368 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:47:59,374.374 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:47:59,380.380 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:48:01,421.421 INFO    ] ================================================
[2026-08-31 03:48:01,436.436 INFO    ] Launching Daemon at Mon Aug 31 03:48:01 IST 2026
[2026-08-31 03:48:01,446.446 INFO    ] ================================================
[2026-08-31 03:48:02,086.086 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:48:02
[2026-08-31 03:48:02,782.782 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:48:03,071.071 INFO    ] Initializing speech engine...
[2026-08-31 03:48:03,077.077 INFO    ] 2026-08-31 03:48:03
[2026-08-31 03:48:03,380.380 INFO    ] 2026-08-31 03:48:03
[2026-08-31 03:48:03,452.452 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:48:03,661.661 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:48:03,706.706 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:48:03,858.858 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:48:03,867.867 INFO    ] time= 31/08/2026 03:48:03
[2026-08-31 03:48:03,888.888 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:48:03,913.913 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:48:04,069.069 INFO    ] No existing commands found in stream
[2026-08-31 03:48:09,099.099 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:48:09,102.102 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-08-31 03:48:12,614.614 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 03:48:12,617.617 INFO    ] Checking for system updates...
[2026-08-31 03:48:12,653.653 INFO    ] 200
[2026-08-31 03:48:12,655.655 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:48:12,707.707 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:48:12,709.709 INFO    ] No update needed
[2026-08-31 03:48:12,712.712 INFO    ] Checking for camera pi updates...
[2026-08-31 03:48:12,745.745 INFO    ] 200
[2026-08-31 03:48:12,747.747 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:48:12,793.793 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:48:12,878.878 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:48:12,881.881 INFO    ] No camera update needed
[2026-08-31 03:48:12,883.883 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:48:12,886.886 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:48:12,891.891 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:48:12,896.896 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:48:14,937.937 INFO    ] ================================================
[2026-08-31 03:48:14,952.952 INFO    ] Launching Daemon at Mon Aug 31 03:48:14 IST 2026
[2026-08-31 03:48:14,963.963 INFO    ] ================================================
[2026-08-31 03:48:15,542.542 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:48:15
[2026-08-31 03:48:16,147.147 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:48:16,425.425 INFO    ] Initializing speech engine...
[2026-08-31 03:48:16,434.434 INFO    ] 2026-08-31 03:48:16
[2026-08-31 03:48:16,690.690 INFO    ] 2026-08-31 03:48:16
[2026-08-31 03:48:16,724.724 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:48:16,890.890 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:48:16,902.902 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:48:17,049.049 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:48:17,056.056 INFO    ] time= 31/08/2026 03:48:17
[2026-08-31 03:48:17,098.098 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:48:17,100.100 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:48:17,163.163 INFO    ] No existing commands found in stream
[2026-08-31 03:48:22,193.193 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:48:22,196.196 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-08-31 03:48:23,740.740 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 03:48:23,743.743 INFO    ] Checking for system updates...
[2026-08-31 03:48:23,779.779 INFO    ] 200
[2026-08-31 03:48:23,782.782 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:48:23,843.843 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:48:23,846.846 INFO    ] No update needed
[2026-08-31 03:48:23,849.849 INFO    ] Checking for camera pi updates...
[2026-08-31 03:48:23,884.884 INFO    ] 200
[2026-08-31 03:48:23,886.886 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:48:23,936.936 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:48:24,039.039 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:48:24,042.042 INFO    ] No camera update needed
[2026-08-31 03:48:24,045.045 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:48:24,047.047 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:48:24,054.054 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:48:24,060.060 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:48:26,102.102 INFO    ] ================================================
[2026-08-31 03:48:26,117.117 INFO    ] Launching Daemon at Mon Aug 31 03:48:26 IST 2026
[2026-08-31 03:48:26,128.128 INFO    ] ================================================
[2026-08-31 03:48:26,692.692 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:48:26
[2026-08-31 03:48:27,286.286 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:48:27,562.562 INFO    ] Initializing speech engine...
[2026-08-31 03:48:27,568.568 INFO    ] 2026-08-31 03:48:27
[2026-08-31 03:48:27,832.832 INFO    ] 2026-08-31 03:48:27
[2026-08-31 03:48:27,866.866 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:48:28,069.069 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:48:28,128.128 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:48:28,277.277 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:48:28,342.342 INFO    ] time= 31/08/2026 03:48:28
[2026-08-31 03:48:28,402.402 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:48:28,408.408 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:48:28,525.525 INFO    ] No existing commands found in stream
[2026-08-31 03:48:33,547.547 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:48:33,550.550 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-08-31 03:48:37,732.732 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 03:48:37,735.735 INFO    ] Checking for system updates...
[2026-08-31 03:48:37,770.770 INFO    ] 200
[2026-08-31 03:48:37,773.773 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:48:37,825.825 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:48:37,828.828 INFO    ] No update needed
[2026-08-31 03:48:37,830.830 INFO    ] Checking for camera pi updates...
[2026-08-31 03:48:37,864.864 INFO    ] 200
[2026-08-31 03:48:37,867.867 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:48:37,912.912 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:48:37,994.994 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:48:37,996.996 INFO    ] No camera update needed
[2026-08-31 03:48:37,998.998 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:48:38,001.001 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:48:38,006.006 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:48:38,011.011 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:48:40,051.051 INFO    ] ================================================
[2026-08-31 03:48:40,066.066 INFO    ] Launching Daemon at Mon Aug 31 03:48:40 IST 2026
[2026-08-31 03:48:40,076.076 INFO    ] ================================================
[2026-08-31 03:48:40,653.653 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:48:40
[2026-08-31 03:48:41,319.319 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:48:41,623.623 INFO    ] Initializing speech engine...
[2026-08-31 03:48:41,636.636 INFO    ] 2026-08-31 03:48:41
[2026-08-31 03:48:41,952.952 INFO    ] 2026-08-31 03:48:41
[2026-08-31 03:48:42,034.034 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:48:42,249.249 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:48:42,257.257 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:48:42,431.431 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:48:42,458.458 INFO    ] time= 31/08/2026 03:48:42
[2026-08-31 03:48:42,477.477 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:48:42,508.508 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:48:42,610.610 INFO    ] No existing commands found in stream
[2026-08-31 03:48:47,628.628 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:48:47,631.631 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-08-31 03:48:49,351.351 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 03:48:49,354.354 INFO    ] Checking for system updates...
[2026-08-31 03:48:49,393.393 INFO    ] 200
[2026-08-31 03:48:49,395.395 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:48:49,450.450 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:48:49,453.453 INFO    ] No update needed
[2026-08-31 03:48:49,456.456 INFO    ] Checking for camera pi updates...
[2026-08-31 03:48:49,490.490 INFO    ] 200
[2026-08-31 03:48:49,493.493 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:48:49,534.534 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:48:49,617.617 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:48:49,620.620 INFO    ] No camera update needed
[2026-08-31 03:48:49,623.623 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:48:49,626.626 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:48:49,632.632 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:48:49,638.638 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:48:51,680.680 INFO    ] ================================================
[2026-08-31 03:48:51,696.696 INFO    ] Launching Daemon at Mon Aug 31 03:48:51 IST 2026
[2026-08-31 03:48:51,706.706 INFO    ] ================================================
[2026-08-31 03:48:52,298.298 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:48:52
[2026-08-31 03:48:52,902.902 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:48:53,165.165 INFO    ] Initializing speech engine...
[2026-08-31 03:48:53,184.184 INFO    ] 2026-08-31 03:48:53
[2026-08-31 03:48:53,435.435 INFO    ] 2026-08-31 03:48:53
[2026-08-31 03:48:53,470.470 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:48:53,721.721 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:48:53,731.731 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:48:53,945.945 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:48:53,989.989 INFO    ] time= 31/08/2026 03:48:53
[2026-08-31 03:48:53,995.995 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:48:54,012.012 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:48:54,139.139 INFO    ] No existing commands found in stream
[2026-08-31 03:48:59,154.154 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:48:59,157.157 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-08-31 03:49:00,575.575 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 03:49:00,578.578 INFO    ] Checking for system updates...
[2026-08-31 03:49:00,613.613 INFO    ] 200
[2026-08-31 03:49:00,616.616 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:49:00,670.670 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:49:00,672.672 INFO    ] No update needed
[2026-08-31 03:49:00,674.674 INFO    ] Checking for camera pi updates...
[2026-08-31 03:49:00,712.712 INFO    ] 200
[2026-08-31 03:49:00,714.714 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:49:00,759.759 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:49:00,843.843 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:49:00,845.845 INFO    ] No camera update needed
[2026-08-31 03:49:00,848.848 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:49:00,851.851 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:49:00,857.857 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:49:00,863.863 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:49:02,916.916 INFO    ] ================================================
[2026-08-31 03:49:02,954.954 INFO    ] Launching Daemon at Mon Aug 31 03:49:02 IST 2026
[2026-08-31 03:49:02,975.975 INFO    ] ================================================
[2026-08-31 03:49:03,688.688 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:49:03
[2026-08-31 03:49:04,281.281 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:49:04,536.536 INFO    ] Initializing speech engine...
[2026-08-31 03:49:04,542.542 INFO    ] 2026-08-31 03:49:04
[2026-08-31 03:49:04,840.840 INFO    ] 2026-08-31 03:49:04
[2026-08-31 03:49:04,877.877 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:49:05,099.099 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:49:05,110.110 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:49:05,258.258 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:49:05,264.264 INFO    ] time= 31/08/2026 03:49:05
[2026-08-31 03:49:05,271.271 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:49:05,319.319 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:49:05,469.469 INFO    ] No existing commands found in stream
[2026-08-31 03:49:10,494.494 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:49:10,497.497 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-08-31 03:49:11,100.100 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 03:49:11,103.103 INFO    ] Checking for system updates...
[2026-08-31 03:49:11,155.155 INFO    ] 200
[2026-08-31 03:49:11,159.159 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:49:11,213.213 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:49:11,216.216 INFO    ] No update needed
[2026-08-31 03:49:11,219.219 INFO    ] Checking for camera pi updates...
[2026-08-31 03:49:11,258.258 INFO    ] 200
[2026-08-31 03:49:11,261.261 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:49:11,302.302 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:49:11,367.367 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:49:11,370.370 INFO    ] No camera update needed
[2026-08-31 03:49:11,373.373 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:49:11,376.376 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:49:11,382.382 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:49:11,388.388 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:49:13,430.430 INFO    ] ================================================
[2026-08-31 03:49:13,445.445 INFO    ] Launching Daemon at Mon Aug 31 03:49:13 IST 2026
[2026-08-31 03:49:13,456.456 INFO    ] ================================================
[2026-08-31 03:49:14,042.042 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:49:14
[2026-08-31 03:49:14,646.646 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:49:14,899.899 INFO    ] Initializing speech engine...
[2026-08-31 03:49:14,922.922 INFO    ] 2026-08-31 03:49:14
[2026-08-31 03:49:15,187.187 INFO    ] 2026-08-31 03:49:15
[2026-08-31 03:49:15,212.212 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:49:15,425.425 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:49:15,441.441 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:49:15,608.608 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:49:15,614.614 INFO    ] time= 31/08/2026 03:49:15
[2026-08-31 03:49:15,619.619 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:49:15,626.626 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:49:15,700.700 INFO    ] No existing commands found in stream
[2026-08-31 03:49:20,716.716 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:49:20,719.719 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-08-31 03:49:22,232.232 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 03:49:22,234.234 INFO    ] Checking for system updates...
[2026-08-31 03:49:22,271.271 INFO    ] 200
[2026-08-31 03:49:22,274.274 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:49:22,334.334 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:49:22,337.337 INFO    ] No update needed
[2026-08-31 03:49:22,340.340 INFO    ] Checking for camera pi updates...
[2026-08-31 03:49:22,375.375 INFO    ] 200
[2026-08-31 03:49:22,378.378 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:49:22,424.424 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:49:22,505.505 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:49:22,508.508 INFO    ] No camera update needed
[2026-08-31 03:49:22,511.511 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:49:22,513.513 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:49:22,520.520 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:49:22,525.525 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:49:24,569.569 INFO    ] ================================================
[2026-08-31 03:49:24,584.584 INFO    ] Launching Daemon at Mon Aug 31 03:49:24 IST 2026
[2026-08-31 03:49:24,595.595 INFO    ] ================================================
[2026-08-31 03:49:25,192.192 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:49:25
[2026-08-31 03:49:25,796.796 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:49:26,071.071 INFO    ] Initializing speech engine...
[2026-08-31 03:49:26,080.080 INFO    ] 2026-08-31 03:49:26
[2026-08-31 03:49:26,340.340 INFO    ] 2026-08-31 03:49:26
[2026-08-31 03:49:26,392.392 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:49:26,540.540 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:49:26,552.552 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:49:26,695.695 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:49:26,701.701 INFO    ] time= 31/08/2026 03:49:26
[2026-08-31 03:49:26,707.707 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:49:26,752.752 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:49:26,864.864 INFO    ] No existing commands found in stream
[2026-08-31 03:49:31,884.884 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:49:31,887.887 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-08-31 03:49:33,350.350 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 03:49:33,352.352 INFO    ] Checking for system updates...
[2026-08-31 03:49:33,389.389 INFO    ] 200
[2026-08-31 03:49:33,392.392 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:49:33,443.443 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:49:33,445.445 INFO    ] No update needed
[2026-08-31 03:49:33,448.448 INFO    ] Checking for camera pi updates...
[2026-08-31 03:49:33,482.482 INFO    ] 200
[2026-08-31 03:49:33,484.484 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:49:33,530.530 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:49:33,619.619 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:49:33,621.621 INFO    ] No camera update needed
[2026-08-31 03:49:33,623.623 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:49:33,626.626 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:49:33,631.631 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:49:33,636.636 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:49:35,680.680 INFO    ] ================================================
[2026-08-31 03:49:35,695.695 INFO    ] Launching Daemon at Mon Aug 31 03:49:35 IST 2026
[2026-08-31 03:49:35,706.706 INFO    ] ================================================
[2026-08-31 03:49:36,354.354 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:49:36
[2026-08-31 03:49:37,000.000 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:49:37,252.252 INFO    ] Initializing speech engine...
[2026-08-31 03:49:37,259.259 INFO    ] 2026-08-31 03:49:37
[2026-08-31 03:49:37,549.549 INFO    ] 2026-08-31 03:49:37
[2026-08-31 03:49:37,584.584 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:49:37,835.835 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:49:37,844.844 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:49:38,061.061 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:49:38,101.101 INFO    ] time= 31/08/2026 03:49:38
[2026-08-31 03:49:38,107.107 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:49:38,125.125 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:49:38,259.259 INFO    ] No existing commands found in stream
[2026-08-31 03:49:43,278.278 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:49:43,281.281 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-08-31 03:49:46,625.625 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 03:49:46,627.627 INFO    ] Checking for system updates...
[2026-08-31 03:49:46,664.664 INFO    ] 200
[2026-08-31 03:49:46,666.666 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:49:46,721.721 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:49:46,724.724 INFO    ] No update needed
[2026-08-31 03:49:46,727.727 INFO    ] Checking for camera pi updates...
[2026-08-31 03:49:46,762.762 INFO    ] 200
[2026-08-31 03:49:46,765.765 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:49:46,806.806 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:49:46,895.895 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:49:46,898.898 INFO    ] No camera update needed
[2026-08-31 03:49:46,901.901 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:49:46,904.904 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:49:46,911.911 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:49:46,917.917 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:49:48,958.958 INFO    ] ================================================
[2026-08-31 03:49:48,974.974 INFO    ] Launching Daemon at Mon Aug 31 03:49:48 IST 2026
[2026-08-31 03:49:48,986.986 INFO    ] ================================================
[2026-08-31 03:49:49,644.644 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:49:49
[2026-08-31 03:49:50,324.324 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:49:50,629.629 INFO    ] Initializing speech engine...
[2026-08-31 03:49:50,643.643 INFO    ] 2026-08-31 03:49:50
[2026-08-31 03:49:50,914.914 INFO    ] 2026-08-31 03:49:50
[2026-08-31 03:49:50,976.976 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:49:51,265.265 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:49:51,273.273 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:49:51,456.456 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:49:51,477.477 INFO    ] time= 31/08/2026 03:49:51
[2026-08-31 03:49:51,495.495 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:49:51,505.505 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:49:51,616.616 INFO    ] No existing commands found in stream
[2026-08-31 03:49:56,645.645 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:49:56,649.649 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-08-31 03:49:58,991.991 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 03:49:58,994.994 INFO    ] Checking for system updates...
[2026-08-31 03:49:59,031.031 INFO    ] 200
[2026-08-31 03:49:59,034.034 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:49:59,087.087 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:49:59,090.090 INFO    ] No update needed
[2026-08-31 03:49:59,093.093 INFO    ] Checking for camera pi updates...
[2026-08-31 03:49:59,127.127 INFO    ] 200
[2026-08-31 03:49:59,130.130 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:49:59,170.170 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:49:59,256.256 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:49:59,259.259 INFO    ] No camera update needed
[2026-08-31 03:49:59,261.261 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:49:59,263.263 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:49:59,269.269 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:49:59,274.274 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:50:01,315.315 INFO    ] ================================================
[2026-08-31 03:50:01,334.334 INFO    ] Launching Daemon at Mon Aug 31 03:50:01 IST 2026
[2026-08-31 03:50:01,346.346 INFO    ] ================================================
[2026-08-31 03:50:02,016.016 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:50:02
[2026-08-31 03:50:03,040.040 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:50:03,543.543 INFO    ] Initializing speech engine...
[2026-08-31 03:50:03,547.547 INFO    ] 2026-08-31 03:50:03
[2026-08-31 03:50:03,940.940 INFO    ] 2026-08-31 03:50:03
[2026-08-31 03:50:03,988.988 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:50:04,201.201 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:50:04,213.213 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:50:04,379.379 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:50:04,412.412 INFO    ] time= 31/08/2026 03:50:04
[2026-08-31 03:50:04,458.458 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:50:04,507.507 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:50:04,605.605 INFO    ] No existing commands found in stream
[2026-08-31 03:50:09,617.617 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:50:09,620.620 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-08-31 03:50:10,181.181 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 03:50:10,183.183 INFO    ] Checking for system updates...
[2026-08-31 03:50:10,224.224 INFO    ] 200
[2026-08-31 03:50:10,226.226 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:50:10,280.280 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:50:10,282.282 INFO    ] No update needed
[2026-08-31 03:50:10,284.284 INFO    ] Checking for camera pi updates...
[2026-08-31 03:50:10,317.317 INFO    ] 200
[2026-08-31 03:50:10,320.320 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:50:10,366.366 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:50:10,459.459 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:50:10,461.461 INFO    ] No camera update needed
[2026-08-31 03:50:10,463.463 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:50:10,466.466 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:50:10,471.471 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:50:10,476.476 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:50:12,517.517 INFO    ] ================================================
[2026-08-31 03:50:12,533.533 INFO    ] Launching Daemon at Mon Aug 31 03:50:12 IST 2026
[2026-08-31 03:50:12,548.548 INFO    ] ================================================
[2026-08-31 03:50:13,212.212 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:50:13
[2026-08-31 03:50:13,894.894 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:50:14,202.202 INFO    ] Initializing speech engine...
[2026-08-31 03:50:14,217.217 INFO    ] 2026-08-31 03:50:14
[2026-08-31 03:50:14,537.537 INFO    ] 2026-08-31 03:50:14
[2026-08-31 03:50:14,626.626 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:50:14,826.826 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:50:14,846.846 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:50:15,025.025 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:50:15,057.057 INFO    ] time= 31/08/2026 03:50:15
[2026-08-31 03:50:15,064.064 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:50:15,086.086 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:50:15,220.220 INFO    ] No existing commands found in stream
[2026-08-31 03:50:20,250.250 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:50:20,253.253 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-08-31 03:50:23,625.625 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 03:50:23,628.628 INFO    ] Checking for system updates...
[2026-08-31 03:50:23,665.665 INFO    ] 200
[2026-08-31 03:50:23,668.668 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:50:23,721.721 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:50:23,724.724 INFO    ] No update needed
[2026-08-31 03:50:23,727.727 INFO    ] Checking for camera pi updates...
[2026-08-31 03:50:23,763.763 INFO    ] 200
[2026-08-31 03:50:23,766.766 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:50:23,806.806 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:50:23,889.889 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:50:23,892.892 INFO    ] No camera update needed
[2026-08-31 03:50:23,894.894 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:50:23,896.896 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:50:23,902.902 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:50:23,907.907 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:50:25,946.946 INFO    ] ================================================
[2026-08-31 03:50:25,961.961 INFO    ] Launching Daemon at Mon Aug 31 03:50:25 IST 2026
[2026-08-31 03:50:25,972.972 INFO    ] ================================================
[2026-08-31 03:50:26,559.559 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:50:26
[2026-08-31 03:50:27,158.158 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:50:27,431.431 INFO    ] Initializing speech engine...
[2026-08-31 03:50:27,441.441 INFO    ] 2026-08-31 03:50:27
[2026-08-31 03:50:27,703.703 INFO    ] 2026-08-31 03:50:27
[2026-08-31 03:50:27,756.756 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:50:27,978.978 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:50:27,988.988 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:50:28,120.120 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:50:28,162.162 INFO    ] time= 31/08/2026 03:50:28
[2026-08-31 03:50:28,231.231 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:50:28,256.256 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:50:28,382.382 INFO    ] No existing commands found in stream
[2026-08-31 03:50:33,410.410 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:50:33,412.412 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-08-31 03:50:34,095.095 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 03:50:34,098.098 INFO    ] Checking for system updates...
[2026-08-31 03:50:34,133.133 INFO    ] 200
[2026-08-31 03:50:34,135.135 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:50:34,189.189 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:50:34,191.191 INFO    ] No update needed
[2026-08-31 03:50:34,194.194 INFO    ] Checking for camera pi updates...
[2026-08-31 03:50:34,228.228 INFO    ] 200
[2026-08-31 03:50:34,231.231 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:50:34,280.280 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:50:34,361.361 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:50:34,363.363 INFO    ] No camera update needed
[2026-08-31 03:50:34,366.366 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:50:34,368.368 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:50:34,374.374 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:50:34,379.379 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:50:36,420.420 INFO    ] ================================================
[2026-08-31 03:50:36,434.434 INFO    ] Launching Daemon at Mon Aug 31 03:50:36 IST 2026
[2026-08-31 03:50:36,445.445 INFO    ] ================================================
[2026-08-31 03:50:37,025.025 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:50:37
[2026-08-31 03:50:37,622.622 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:50:37,898.898 INFO    ] Initializing speech engine...
[2026-08-31 03:50:37,903.903 INFO    ] 2026-08-31 03:50:37
[2026-08-31 03:50:38,151.151 INFO    ] 2026-08-31 03:50:38
[2026-08-31 03:50:38,186.186 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:50:38,437.437 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:50:38,446.446 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:50:38,580.580 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:50:38,630.630 INFO    ] time= 31/08/2026 03:50:38
[2026-08-31 03:50:38,684.684 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:50:38,712.712 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:50:38,816.816 INFO    ] No existing commands found in stream
[2026-08-31 03:50:43,843.843 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:50:43,847.847 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-08-31 03:50:46,997.997 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 03:50:47,000.000 INFO    ] Checking for system updates...
[2026-08-31 03:50:47,035.035 INFO    ] 200
[2026-08-31 03:50:47,038.038 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:50:47,099.099 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:50:47,101.101 INFO    ] No update needed
[2026-08-31 03:50:47,104.104 INFO    ] Checking for camera pi updates...
[2026-08-31 03:50:47,138.138 INFO    ] 200
[2026-08-31 03:50:47,141.141 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:50:47,182.182 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:50:47,261.261 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:50:47,264.264 INFO    ] No camera update needed
[2026-08-31 03:50:47,266.266 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:50:47,268.268 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:50:47,274.274 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:50:47,279.279 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:50:49,320.320 INFO    ] ================================================
[2026-08-31 03:50:49,335.335 INFO    ] Launching Daemon at Mon Aug 31 03:50:49 IST 2026
[2026-08-31 03:50:49,346.346 INFO    ] ================================================
[2026-08-31 03:50:50,006.006 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:50:49
[2026-08-31 03:50:50,589.589 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:50:50,866.866 INFO    ] Initializing speech engine...
[2026-08-31 03:50:50,873.873 INFO    ] 2026-08-31 03:50:50
[2026-08-31 03:50:51,150.150 INFO    ] 2026-08-31 03:50:51
[2026-08-31 03:50:51,211.211 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:50:51,438.438 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:50:51,447.447 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:50:51,600.600 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:50:51,659.659 INFO    ] time= 31/08/2026 03:50:51
[2026-08-31 03:50:51,708.708 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:50:51,723.723 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:50:51,864.864 INFO    ] No existing commands found in stream
[2026-08-31 03:50:56,886.886 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:50:56,889.889 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-08-31 03:50:59,099.099 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 03:50:59,102.102 INFO    ] Checking for system updates...
[2026-08-31 03:50:59,137.137 INFO    ] 200
[2026-08-31 03:50:59,140.140 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:50:59,193.193 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:50:59,195.195 INFO    ] No update needed
[2026-08-31 03:50:59,198.198 INFO    ] Checking for camera pi updates...
[2026-08-31 03:50:59,235.235 INFO    ] 200
[2026-08-31 03:50:59,238.238 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:50:59,283.283 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:50:59,345.345 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:50:59,348.348 INFO    ] No camera update needed
[2026-08-31 03:50:59,350.350 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:50:59,353.353 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:50:59,358.358 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:50:59,363.363 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:51:01,404.404 INFO    ] ================================================
[2026-08-31 03:51:01,418.418 INFO    ] Launching Daemon at Mon Aug 31 03:51:01 IST 2026
[2026-08-31 03:51:01,429.429 INFO    ] ================================================
[2026-08-31 03:51:02,162.162 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:51:02
[2026-08-31 03:51:02,822.822 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:51:03,200.200 INFO    ] Initializing speech engine...
[2026-08-31 03:51:03,207.207 INFO    ] 2026-08-31 03:51:03
[2026-08-31 03:51:03,486.486 INFO    ] 2026-08-31 03:51:03
[2026-08-31 03:51:03,529.529 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:51:03,773.773 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:51:03,781.781 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:51:03,976.976 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:51:04,017.017 INFO    ] time= 31/08/2026 03:51:03
[2026-08-31 03:51:04,034.034 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:51:04,042.042 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:51:04,172.172 INFO    ] No existing commands found in stream
[2026-08-31 03:51:09,194.194 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:51:09,197.197 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-08-31 03:51:10,851.851 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 03:51:10,854.854 INFO    ] Checking for system updates...
[2026-08-31 03:51:10,889.889 INFO    ] 200
[2026-08-31 03:51:10,891.891 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:51:10,943.943 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:51:10,946.946 INFO    ] No update needed
[2026-08-31 03:51:10,948.948 INFO    ] Checking for camera pi updates...
[2026-08-31 03:51:10,982.982 INFO    ] 200
[2026-08-31 03:51:10,984.984 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:51:11,028.028 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:51:11,112.112 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:51:11,114.114 INFO    ] No camera update needed
[2026-08-31 03:51:11,116.116 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:51:11,119.119 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:51:11,124.124 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:51:11,130.130 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:51:13,170.170 INFO    ] ================================================
[2026-08-31 03:51:13,185.185 INFO    ] Launching Daemon at Mon Aug 31 03:51:13 IST 2026
[2026-08-31 03:51:13,196.196 INFO    ] ================================================
[2026-08-31 03:51:13,815.815 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:51:13
[2026-08-31 03:51:14,454.454 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:51:14,747.747 INFO    ] Initializing speech engine...
[2026-08-31 03:51:14,760.760 INFO    ] 2026-08-31 03:51:14
[2026-08-31 03:51:15,035.035 INFO    ] 2026-08-31 03:51:15
[2026-08-31 03:51:15,078.078 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:51:15,329.329 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:51:15,344.344 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:51:15,554.554 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:51:15,566.566 INFO    ] time= 31/08/2026 03:51:15
[2026-08-31 03:51:15,572.572 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:51:15,593.593 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:51:15,712.712 INFO    ] No existing commands found in stream
[2026-08-31 03:51:20,734.734 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:51:20,737.737 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-08-31 03:51:23,705.705 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 03:51:23,708.708 INFO    ] Checking for system updates...
[2026-08-31 03:51:23,744.744 INFO    ] 200
[2026-08-31 03:51:23,746.746 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:51:23,800.800 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:51:23,803.803 INFO    ] No update needed
[2026-08-31 03:51:23,805.805 INFO    ] Checking for camera pi updates...
[2026-08-31 03:51:23,842.842 INFO    ] 200
[2026-08-31 03:51:23,844.844 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:51:23,885.885 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:51:23,982.982 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:51:23,985.985 INFO    ] No camera update needed
[2026-08-31 03:51:23,987.987 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:51:23,989.989 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:51:23,994.994 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:51:23,999.999 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:51:26,039.039 INFO    ] ================================================
[2026-08-31 03:51:26,054.054 INFO    ] Launching Daemon at Mon Aug 31 03:51:26 IST 2026
[2026-08-31 03:51:26,064.064 INFO    ] ================================================
[2026-08-31 03:51:26,644.644 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:51:26
[2026-08-31 03:51:27,244.244 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:51:27,515.515 INFO    ] Initializing speech engine...
[2026-08-31 03:51:27,530.530 INFO    ] 2026-08-31 03:51:27
[2026-08-31 03:51:27,799.799 INFO    ] 2026-08-31 03:51:27
[2026-08-31 03:51:27,834.834 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:51:28,021.021 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:51:28,037.037 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:51:28,192.192 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:51:28,201.201 INFO    ] time= 31/08/2026 03:51:28
[2026-08-31 03:51:28,208.208 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:51:28,213.213 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:51:28,381.381 INFO    ] No existing commands found in stream
[2026-08-31 03:51:33,406.406 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:51:33,409.409 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-08-31 03:51:35,383.383 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 03:51:35,386.386 INFO    ] Checking for system updates...
[2026-08-31 03:51:35,425.425 INFO    ] 200
[2026-08-31 03:51:35,428.428 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:51:35,480.480 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:51:35,482.482 INFO    ] No update needed
[2026-08-31 03:51:35,484.484 INFO    ] Checking for camera pi updates...
[2026-08-31 03:51:35,521.521 INFO    ] 200
[2026-08-31 03:51:35,523.523 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:51:35,563.563 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:51:35,664.664 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:51:35,667.667 INFO    ] No camera update needed
[2026-08-31 03:51:35,669.669 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:51:35,671.671 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:51:35,677.677 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:51:35,681.681 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:51:37,721.721 INFO    ] ================================================
[2026-08-31 03:51:37,736.736 INFO    ] Launching Daemon at Mon Aug 31 03:51:37 IST 2026
[2026-08-31 03:51:37,746.746 INFO    ] ================================================
[2026-08-31 03:51:38,379.379 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:51:38
[2026-08-31 03:51:39,031.031 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:51:39,328.328 INFO    ] Initializing speech engine...
[2026-08-31 03:51:39,336.336 INFO    ] 2026-08-31 03:51:39
[2026-08-31 03:51:39,605.605 INFO    ] 2026-08-31 03:51:39
[2026-08-31 03:51:39,660.660 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:51:39,886.886 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:51:39,895.895 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:51:40,096.096 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:51:40,156.156 INFO    ] time= 31/08/2026 03:51:40
[2026-08-31 03:51:40,163.163 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:51:40,181.181 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:51:40,302.302 INFO    ] No existing commands found in stream
[2026-08-31 03:51:45,321.321 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:51:45,324.324 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-08-31 03:51:51,275.275 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 03:51:51,278.278 INFO    ] Checking for system updates...
[2026-08-31 03:51:51,318.318 INFO    ] 200
[2026-08-31 03:51:51,322.322 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:51:51,374.374 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:51:51,377.377 INFO    ] No update needed
[2026-08-31 03:51:51,380.380 INFO    ] Checking for camera pi updates...
[2026-08-31 03:51:51,414.414 INFO    ] 200
[2026-08-31 03:51:51,416.416 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:51:51,459.459 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:51:51,642.642 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:51:51,645.645 INFO    ] No camera update needed
[2026-08-31 03:51:51,647.647 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:51:51,650.650 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:51:51,656.656 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:51:51,661.661 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:51:53,701.701 INFO    ] ================================================
[2026-08-31 03:51:53,716.716 INFO    ] Launching Daemon at Mon Aug 31 03:51:53 IST 2026
[2026-08-31 03:51:53,726.726 INFO    ] ================================================
[2026-08-31 03:51:54,359.359 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:51:54
[2026-08-31 03:51:55,002.002 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:51:55,314.314 INFO    ] Initializing speech engine...
[2026-08-31 03:51:55,328.328 INFO    ] 2026-08-31 03:51:55
[2026-08-31 03:51:55,605.605 INFO    ] 2026-08-31 03:51:55
[2026-08-31 03:51:55,671.671 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:51:55,904.904 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:51:55,911.911 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:51:56,053.053 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:51:56,113.113 INFO    ] time= 31/08/2026 03:51:56
[2026-08-31 03:51:56,173.173 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:51:56,185.185 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:51:56,329.329 INFO    ] No existing commands found in stream
[2026-08-31 03:52:01,347.347 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:52:01,350.350 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-08-31 03:52:04,223.223 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 03:52:04,226.226 INFO    ] Checking for system updates...
[2026-08-31 03:52:04,264.264 INFO    ] 200
[2026-08-31 03:52:04,266.266 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:52:04,325.325 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:52:04,328.328 INFO    ] No update needed
[2026-08-31 03:52:04,331.331 INFO    ] Checking for camera pi updates...
[2026-08-31 03:52:04,369.369 INFO    ] 200
[2026-08-31 03:52:04,372.372 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:52:04,413.413 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:52:04,494.494 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:52:04,496.496 INFO    ] No camera update needed
[2026-08-31 03:52:04,499.499 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:52:04,502.502 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:52:04,508.508 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:52:04,514.514 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:52:06,554.554 INFO    ] ================================================
[2026-08-31 03:52:06,570.570 INFO    ] Launching Daemon at Mon Aug 31 03:52:06 IST 2026
[2026-08-31 03:52:06,581.581 INFO    ] ================================================
[2026-08-31 03:52:07,181.181 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:52:07
[2026-08-31 03:52:07,785.785 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:52:08,066.066 INFO    ] Initializing speech engine...
[2026-08-31 03:52:08,073.073 INFO    ] 2026-08-31 03:52:08
[2026-08-31 03:52:08,333.333 INFO    ] 2026-08-31 03:52:08
[2026-08-31 03:52:08,387.387 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:52:08,608.608 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:52:08,616.616 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:52:08,751.751 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:52:08,796.796 INFO    ] time= 31/08/2026 03:52:08
[2026-08-31 03:52:08,860.860 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:52:08,884.884 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:52:09,020.020 INFO    ] No existing commands found in stream
[2026-08-31 03:52:14,040.040 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:52:14,043.043 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-08-31 03:52:15,910.910 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 03:52:15,913.913 INFO    ] Checking for system updates...
[2026-08-31 03:52:15,948.948 INFO    ] 200
[2026-08-31 03:52:15,951.951 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:52:16,003.003 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:52:16,005.005 INFO    ] No update needed
[2026-08-31 03:52:16,008.008 INFO    ] Checking for camera pi updates...
[2026-08-31 03:52:16,041.041 INFO    ] 200
[2026-08-31 03:52:16,044.044 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:52:16,085.085 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:52:16,175.175 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:52:16,177.177 INFO    ] No camera update needed
[2026-08-31 03:52:16,180.180 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:52:16,182.182 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:52:16,187.187 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:52:16,193.193 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:52:18,233.233 INFO    ] ================================================
[2026-08-31 03:52:18,248.248 INFO    ] Launching Daemon at Mon Aug 31 03:52:18 IST 2026
[2026-08-31 03:52:18,259.259 INFO    ] ================================================
[2026-08-31 03:52:18,855.855 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:52:18
[2026-08-31 03:52:19,453.453 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:52:19,710.710 INFO    ] Initializing speech engine...
[2026-08-31 03:52:19,722.722 INFO    ] 2026-08-31 03:52:19
[2026-08-31 03:52:19,987.987 INFO    ] 2026-08-31 03:52:19
[2026-08-31 03:52:20,022.022 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:52:20,273.273 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:52:20,283.283 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:52:20,497.497 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:52:20,540.540 INFO    ] time= 31/08/2026 03:52:20
[2026-08-31 03:52:20,546.546 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:52:20,563.563 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:52:20,691.691 INFO    ] No existing commands found in stream
[2026-08-31 03:52:25,706.706 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:52:25,709.709 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-08-31 03:52:29,611.611 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 03:52:29,614.614 INFO    ] Checking for system updates...
[2026-08-31 03:52:29,652.652 INFO    ] 200
[2026-08-31 03:52:29,655.655 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:52:29,708.708 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:52:29,710.710 INFO    ] No update needed
[2026-08-31 03:52:29,713.713 INFO    ] Checking for camera pi updates...
[2026-08-31 03:52:29,752.752 INFO    ] 200
[2026-08-31 03:52:29,755.755 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:52:29,799.799 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:52:29,888.888 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:52:29,890.890 INFO    ] No camera update needed
[2026-08-31 03:52:29,893.893 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:52:29,896.896 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:52:29,902.902 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:52:29,907.907 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:52:31,949.949 INFO    ] ================================================
[2026-08-31 03:52:31,965.965 INFO    ] Launching Daemon at Mon Aug 31 03:52:31 IST 2026
[2026-08-31 03:52:31,977.977 INFO    ] ================================================
[2026-08-31 03:52:32,591.591 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:52:32
[2026-08-31 03:52:33,215.215 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:52:33,459.459 INFO    ] Initializing speech engine...
[2026-08-31 03:52:33,468.468 INFO    ] 2026-08-31 03:52:33
[2026-08-31 03:52:33,741.741 INFO    ] 2026-08-31 03:52:33
[2026-08-31 03:52:33,775.775 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:52:33,976.976 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:52:34,035.035 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:52:34,167.167 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:52:34,180.180 INFO    ] time= 31/08/2026 03:52:34
[2026-08-31 03:52:34,222.222 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:52:34,276.276 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:52:34,366.366 INFO    ] No existing commands found in stream
[2026-08-31 03:52:39,378.378 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:52:39,381.381 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-08-31 03:52:42,414.414 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 03:52:42,416.416 INFO    ] Checking for system updates...
[2026-08-31 03:52:42,452.452 INFO    ] 200
[2026-08-31 03:52:42,455.455 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:52:42,508.508 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:52:42,510.510 INFO    ] No update needed
[2026-08-31 03:52:42,512.512 INFO    ] Checking for camera pi updates...
[2026-08-31 03:52:42,549.549 INFO    ] 200
[2026-08-31 03:52:42,552.552 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:52:42,592.592 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:52:42,677.677 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:52:42,680.680 INFO    ] No camera update needed
[2026-08-31 03:52:42,683.683 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:52:42,685.685 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:52:42,692.692 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:52:42,698.698 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:52:44,740.740 INFO    ] ================================================
[2026-08-31 03:52:44,755.755 INFO    ] Launching Daemon at Mon Aug 31 03:52:44 IST 2026
[2026-08-31 03:52:44,766.766 INFO    ] ================================================
[2026-08-31 03:52:45,403.403 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:52:45
[2026-08-31 03:52:46,057.057 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:52:46,356.356 INFO    ] Initializing speech engine...
[2026-08-31 03:52:46,364.364 INFO    ] 2026-08-31 03:52:46
[2026-08-31 03:52:46,656.656 INFO    ] 2026-08-31 03:52:46
[2026-08-31 03:52:46,695.695 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:52:46,919.919 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:52:46,930.930 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:52:47,066.066 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:52:47,132.132 INFO    ] time= 31/08/2026 03:52:47
[2026-08-31 03:52:47,196.196 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:52:47,204.204 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:52:47,331.331 INFO    ] No existing commands found in stream
[2026-08-31 03:52:52,360.360 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:52:52,363.363 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-08-31 03:52:55,972.972 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 03:52:55,975.975 INFO    ] Checking for system updates...
[2026-08-31 03:52:56,018.018 INFO    ] 200
[2026-08-31 03:52:56,021.021 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:52:56,082.082 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:52:56,085.085 INFO    ] No update needed
[2026-08-31 03:52:56,088.088 INFO    ] Checking for camera pi updates...
[2026-08-31 03:52:56,123.123 INFO    ] 200
[2026-08-31 03:52:56,126.126 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:52:56,171.171 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:52:56,273.273 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:52:56,276.276 INFO    ] No camera update needed
[2026-08-31 03:52:56,279.279 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:52:56,282.282 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:52:56,289.289 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:52:56,295.295 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:52:58,337.337 INFO    ] ================================================
[2026-08-31 03:52:58,352.352 INFO    ] Launching Daemon at Mon Aug 31 03:52:58 IST 2026
[2026-08-31 03:52:58,363.363 INFO    ] ================================================
[2026-08-31 03:52:58,957.957 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:52:58
[2026-08-31 03:52:59,544.544 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:52:59,825.825 INFO    ] Initializing speech engine...
[2026-08-31 03:52:59,838.838 INFO    ] 2026-08-31 03:52:59
[2026-08-31 03:53:00,109.109 INFO    ] 2026-08-31 03:53:00
[2026-08-31 03:53:00,147.147 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:53:00,337.337 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:53:00,349.349 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:53:00,557.557 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:53:00,583.583 INFO    ] time= 31/08/2026 03:53:00
[2026-08-31 03:53:00,648.648 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:53:00,693.693 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:53:00,827.827 INFO    ] No existing commands found in stream
[2026-08-31 03:53:05,849.849 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:53:05,852.852 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-08-31 03:53:07,664.664 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 03:53:07,667.667 INFO    ] Checking for system updates...
[2026-08-31 03:53:07,702.702 INFO    ] 200
[2026-08-31 03:53:07,704.704 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:53:07,763.763 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:53:07,765.765 INFO    ] No update needed
[2026-08-31 03:53:07,768.768 INFO    ] Checking for camera pi updates...
[2026-08-31 03:53:07,802.802 INFO    ] 200
[2026-08-31 03:53:07,805.805 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:53:07,850.850 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:53:07,923.923 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:53:07,925.925 INFO    ] No camera update needed
[2026-08-31 03:53:07,928.928 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:53:07,930.930 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:53:07,936.936 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:53:07,941.941 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:53:09,981.981 INFO    ] ================================================
[2026-08-31 03:53:10,996.996 INFO    ] Launching Daemon at Mon Aug 31 03:53:09 IST 2026
[2026-08-31 03:53:10,006.006 INFO    ] ================================================
[2026-08-31 03:53:10,660.660 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:53:10
[2026-08-31 03:53:11,336.336 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:53:11,642.642 INFO    ] Initializing speech engine...
[2026-08-31 03:53:11,650.650 INFO    ] 2026-08-31 03:53:11
[2026-08-31 03:53:11,931.931 INFO    ] 2026-08-31 03:53:11
[2026-08-31 03:53:11,983.983 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:53:12,243.243 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:53:12,262.262 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:53:12,470.470 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:53:12,492.492 INFO    ] time= 31/08/2026 03:53:12
[2026-08-31 03:53:12,511.511 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:53:12,539.539 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:53:12,652.652 INFO    ] No existing commands found in stream
[2026-08-31 03:53:17,673.673 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:53:17,676.676 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-08-31 03:53:21,266.266 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 03:53:21,269.269 INFO    ] Checking for system updates...
[2026-08-31 03:53:21,306.306 INFO    ] 200
[2026-08-31 03:53:21,309.309 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:53:21,367.367 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:53:21,370.370 INFO    ] No update needed
[2026-08-31 03:53:21,373.373 INFO    ] Checking for camera pi updates...
[2026-08-31 03:53:21,407.407 INFO    ] 200
[2026-08-31 03:53:21,410.410 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:53:21,455.455 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:53:21,537.537 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:53:21,540.540 INFO    ] No camera update needed
[2026-08-31 03:53:21,542.542 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:53:21,545.545 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:53:21,551.551 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:53:21,556.556 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:53:23,598.598 INFO    ] ================================================
[2026-08-31 03:53:23,613.613 INFO    ] Launching Daemon at Mon Aug 31 03:53:23 IST 2026
[2026-08-31 03:53:23,623.623 INFO    ] ================================================
[2026-08-31 03:53:24,188.188 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:53:24
[2026-08-31 03:53:24,771.771 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:53:25,016.016 INFO    ] Initializing speech engine...
[2026-08-31 03:53:25,024.024 INFO    ] 2026-08-31 03:53:25
[2026-08-31 03:53:25,299.299 INFO    ] 2026-08-31 03:53:25
[2026-08-31 03:53:25,333.333 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:53:25,535.535 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:53:25,594.594 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:53:25,826.826 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:53:25,865.865 INFO    ] time= 31/08/2026 03:53:25
[2026-08-31 03:53:25,871.871 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:53:25,887.887 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:53:26,027.027 INFO    ] No existing commands found in stream
[2026-08-31 03:53:31,053.053 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:53:31,056.056 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-08-31 03:53:34,905.905 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 03:53:34,908.908 INFO    ] Checking for system updates...
[2026-08-31 03:53:34,944.944 INFO    ] 200
[2026-08-31 03:53:34,947.947 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:53:34,999.999 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:53:35,002.002 INFO    ] No update needed
[2026-08-31 03:53:35,005.005 INFO    ] Checking for camera pi updates...
[2026-08-31 03:53:35,039.039 INFO    ] 200
[2026-08-31 03:53:35,041.041 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:53:35,082.082 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:53:35,168.168 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:53:35,171.171 INFO    ] No camera update needed
[2026-08-31 03:53:35,173.173 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:53:35,176.176 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:53:35,182.182 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:53:35,187.187 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:53:37,229.229 INFO    ] ================================================
[2026-08-31 03:53:37,244.244 INFO    ] Launching Daemon at Mon Aug 31 03:53:37 IST 2026
[2026-08-31 03:53:37,255.255 INFO    ] ================================================
[2026-08-31 03:53:37,819.819 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:53:37
[2026-08-31 03:53:38,420.420 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:53:38,679.679 INFO    ] Initializing speech engine...
[2026-08-31 03:53:38,693.693 INFO    ] 2026-08-31 03:53:38
[2026-08-31 03:53:38,993.993 INFO    ] 2026-08-31 03:53:38
[2026-08-31 03:53:39,029.029 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:53:39,236.236 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:53:39,252.252 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:53:39,419.419 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:53:39,427.427 INFO    ] time= 31/08/2026 03:53:39
[2026-08-31 03:53:39,435.435 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:53:39,463.463 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:53:39,621.621 INFO    ] No existing commands found in stream
[2026-08-31 03:53:44,641.641 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:53:44,644.644 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-08-31 03:53:46,664.664 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 03:53:46,667.667 INFO    ] Checking for system updates...
[2026-08-31 03:53:46,704.704 INFO    ] 200
[2026-08-31 03:53:46,706.706 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:53:46,758.758 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:53:46,761.761 INFO    ] No update needed
[2026-08-31 03:53:46,763.763 INFO    ] Checking for camera pi updates...
[2026-08-31 03:53:46,800.800 INFO    ] 200
[2026-08-31 03:53:46,802.802 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:53:46,843.843 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:53:46,923.923 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:53:46,925.925 INFO    ] No camera update needed
[2026-08-31 03:53:46,928.928 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:53:46,930.930 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:53:46,935.935 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:53:46,940.940 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:53:48,981.981 INFO    ] ================================================
[2026-08-31 03:53:49,996.996 INFO    ] Launching Daemon at Mon Aug 31 03:53:48 IST 2026
[2026-08-31 03:53:49,007.007 INFO    ] ================================================
[2026-08-31 03:53:49,593.593 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:53:49
[2026-08-31 03:53:50,193.193 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:53:50,481.481 INFO    ] Initializing speech engine...
[2026-08-31 03:53:50,492.492 INFO    ] 2026-08-31 03:53:50
[2026-08-31 03:53:50,742.742 INFO    ] 2026-08-31 03:53:50
[2026-08-31 03:53:50,782.782 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:53:50,971.971 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:53:50,984.984 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:53:51,134.134 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:53:51,142.142 INFO    ] time= 31/08/2026 03:53:51
[2026-08-31 03:53:51,163.163 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:53:51,212.212 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:53:51,342.342 INFO    ] No existing commands found in stream
[2026-08-31 03:53:56,350.350 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:53:56,353.353 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-08-31 03:54:00,742.742 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 03:54:00,745.745 INFO    ] Checking for system updates...
[2026-08-31 03:54:00,782.782 INFO    ] 200
[2026-08-31 03:54:00,785.785 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:54:00,839.839 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:54:00,842.842 INFO    ] No update needed
[2026-08-31 03:54:00,844.844 INFO    ] Checking for camera pi updates...
[2026-08-31 03:54:00,880.880 INFO    ] 200
[2026-08-31 03:54:00,883.883 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:54:00,924.924 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:54:01,115.115 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:54:01,118.118 INFO    ] No camera update needed
[2026-08-31 03:54:01,122.122 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:54:01,125.125 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:54:01,132.132 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:54:01,138.138 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:54:03,185.185 INFO    ] ================================================
[2026-08-31 03:54:03,201.201 INFO    ] Launching Daemon at Mon Aug 31 03:54:03 IST 2026
[2026-08-31 03:54:03,211.211 INFO    ] ================================================
[2026-08-31 03:54:03,797.797 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:54:03
[2026-08-31 03:54:04,391.391 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:54:04,645.645 INFO    ] Initializing speech engine...
[2026-08-31 03:54:04,654.654 INFO    ] 2026-08-31 03:54:04
[2026-08-31 03:54:04,947.947 INFO    ] 2026-08-31 03:54:04
[2026-08-31 03:54:04,984.984 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:54:05,181.181 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:54:05,194.194 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:54:05,345.345 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:54:05,361.361 INFO    ] time= 31/08/2026 03:54:05
[2026-08-31 03:54:05,366.366 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:54:05,372.372 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:54:05,446.446 INFO    ] No existing commands found in stream
[2026-08-31 03:54:10,462.462 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:54:10,464.464 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-08-31 03:54:11,738.738 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 03:54:11,741.741 INFO    ] Checking for system updates...
[2026-08-31 03:54:11,777.777 INFO    ] 200
[2026-08-31 03:54:11,779.779 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:54:11,832.832 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:54:11,834.834 INFO    ] No update needed
[2026-08-31 03:54:11,836.836 INFO    ] Checking for camera pi updates...
[2026-08-31 03:54:11,870.870 INFO    ] 200
[2026-08-31 03:54:11,872.872 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:54:11,913.913 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:54:12,009.009 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:54:12,011.011 INFO    ] No camera update needed
[2026-08-31 03:54:12,014.014 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:54:12,016.016 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:54:12,022.022 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:54:12,027.027 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:54:14,069.069 INFO    ] ================================================
[2026-08-31 03:54:14,091.091 INFO    ] Launching Daemon at Mon Aug 31 03:54:14 IST 2026
[2026-08-31 03:54:14,103.103 INFO    ] ================================================
[2026-08-31 03:54:14,701.701 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:54:14
[2026-08-31 03:54:15,305.305 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:54:15,558.558 INFO    ] Initializing speech engine...
[2026-08-31 03:54:15,572.572 INFO    ] 2026-08-31 03:54:15
[2026-08-31 03:54:15,836.836 INFO    ] 2026-08-31 03:54:15
[2026-08-31 03:54:15,872.872 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:54:16,065.065 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:54:16,113.113 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:54:16,263.263 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:54:16,305.305 INFO    ] time= 31/08/2026 03:54:16
[2026-08-31 03:54:16,372.372 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:54:16,401.401 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:54:16,537.537 INFO    ] No existing commands found in stream
[2026-08-31 03:54:21,559.559 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:54:21,562.562 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-08-31 03:54:24,471.471 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 03:54:24,474.474 INFO    ] Checking for system updates...
[2026-08-31 03:54:24,510.510 INFO    ] 200
[2026-08-31 03:54:24,513.513 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:54:24,567.567 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:54:24,570.570 INFO    ] No update needed
[2026-08-31 03:54:24,572.572 INFO    ] Checking for camera pi updates...
[2026-08-31 03:54:24,607.607 INFO    ] 200
[2026-08-31 03:54:24,610.610 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:54:24,655.655 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:54:24,744.744 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:54:24,747.747 INFO    ] No camera update needed
[2026-08-31 03:54:24,749.749 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:54:24,752.752 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:54:24,757.757 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:54:24,762.762 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:54:26,802.802 INFO    ] ================================================
[2026-08-31 03:54:26,823.823 INFO    ] Launching Daemon at Mon Aug 31 03:54:26 IST 2026
[2026-08-31 03:54:26,834.834 INFO    ] ================================================
[2026-08-31 03:54:27,401.401 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:54:27
[2026-08-31 03:54:27,982.982 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:54:28,251.251 INFO    ] Initializing speech engine...
[2026-08-31 03:54:28,260.260 INFO    ] 2026-08-31 03:54:28
[2026-08-31 03:54:28,508.508 INFO    ] 2026-08-31 03:54:28
[2026-08-31 03:54:28,543.543 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:54:28,810.810 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:54:28,820.820 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:54:29,021.021 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:54:29,080.080 INFO    ] time= 31/08/2026 03:54:29
[2026-08-31 03:54:29,088.088 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:54:29,112.112 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:54:29,231.231 INFO    ] No existing commands found in stream
[2026-08-31 03:54:34,252.252 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:54:34,255.255 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-08-31 03:54:36,354.354 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 03:54:36,357.357 INFO    ] Checking for system updates...
[2026-08-31 03:54:36,393.393 INFO    ] 200
[2026-08-31 03:54:36,396.396 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:54:36,448.448 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:54:36,450.450 INFO    ] No update needed
[2026-08-31 03:54:36,452.452 INFO    ] Checking for camera pi updates...
[2026-08-31 03:54:36,486.486 INFO    ] 200
[2026-08-31 03:54:36,489.489 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:54:36,529.529 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:54:36,612.612 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:54:36,615.615 INFO    ] No camera update needed
[2026-08-31 03:54:36,617.617 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:54:36,620.620 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:54:36,625.625 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:54:36,630.630 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:54:38,670.670 INFO    ] ================================================
[2026-08-31 03:54:38,685.685 INFO    ] Launching Daemon at Mon Aug 31 03:54:38 IST 2026
[2026-08-31 03:54:38,697.697 INFO    ] ================================================
[2026-08-31 03:54:39,279.279 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:54:39
[2026-08-31 03:54:39,878.878 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:54:40,164.164 INFO    ] Initializing speech engine...
[2026-08-31 03:54:40,174.174 INFO    ] 2026-08-31 03:54:40
[2026-08-31 03:54:40,438.438 INFO    ] 2026-08-31 03:54:40
[2026-08-31 03:54:40,475.475 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:54:40,646.646 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:54:40,658.658 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:54:40,801.801 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:54:40,807.807 INFO    ] time= 31/08/2026 03:54:40
[2026-08-31 03:54:40,814.814 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:54:40,859.859 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:54:40,978.978 INFO    ] No existing commands found in stream
[2026-08-31 03:54:46,009.009 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:54:46,012.012 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-08-31 03:54:47,908.908 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 03:54:47,911.911 INFO    ] Checking for system updates...
[2026-08-31 03:54:47,947.947 INFO    ] 200
[2026-08-31 03:54:47,949.949 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:54:48,001.001 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:54:48,004.004 INFO    ] No update needed
[2026-08-31 03:54:48,006.006 INFO    ] Checking for camera pi updates...
[2026-08-31 03:54:48,040.040 INFO    ] 200
[2026-08-31 03:54:48,043.043 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:54:48,083.083 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:54:48,151.151 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:54:48,154.154 INFO    ] No camera update needed
[2026-08-31 03:54:48,156.156 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:54:48,159.159 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:54:48,164.164 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:54:48,169.169 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:54:50,212.212 INFO    ] ================================================
[2026-08-31 03:54:50,228.228 INFO    ] Launching Daemon at Mon Aug 31 03:54:50 IST 2026
[2026-08-31 03:54:50,239.239 INFO    ] ================================================
[2026-08-31 03:54:50,806.806 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:54:50
[2026-08-31 03:54:51,460.460 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:54:51,751.751 INFO    ] Initializing speech engine...
[2026-08-31 03:54:51,756.756 INFO    ] 2026-08-31 03:54:51
[2026-08-31 03:54:52,014.014 INFO    ] 2026-08-31 03:54:52
[2026-08-31 03:54:52,044.044 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:54:52,287.287 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:54:52,296.296 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:54:52,428.428 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:54:52,459.459 INFO    ] time= 31/08/2026 03:54:52
[2026-08-31 03:54:52,519.519 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:54:52,561.561 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:54:52,708.708 INFO    ] No existing commands found in stream
[2026-08-31 03:54:57,721.721 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:54:57,724.724 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-08-31 03:54:59,936.936 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 03:54:59,939.939 INFO    ] Checking for system updates...
[2026-08-31 03:54:59,974.974 INFO    ] 200
[2026-08-31 03:54:59,977.977 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:55:00,032.032 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:55:00,034.034 INFO    ] No update needed
[2026-08-31 03:55:00,036.036 INFO    ] Checking for camera pi updates...
[2026-08-31 03:55:00,081.081 INFO    ] 200
[2026-08-31 03:55:00,084.084 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:55:00,123.123 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:55:00,207.207 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:55:00,210.210 INFO    ] No camera update needed
[2026-08-31 03:55:00,213.213 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:55:00,215.215 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:55:00,221.221 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:55:00,227.227 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:55:02,269.269 INFO    ] ================================================
[2026-08-31 03:55:02,290.290 INFO    ] Launching Daemon at Mon Aug 31 03:55:02 IST 2026
[2026-08-31 03:55:02,305.305 INFO    ] ================================================
[2026-08-31 03:55:02,933.933 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:55:02
[2026-08-31 03:55:03,586.586 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:55:03,845.845 INFO    ] Initializing speech engine...
[2026-08-31 03:55:03,851.851 INFO    ] 2026-08-31 03:55:03
[2026-08-31 03:55:04,125.125 INFO    ] 2026-08-31 03:55:04
[2026-08-31 03:55:04,161.161 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:55:04,418.418 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:55:04,428.428 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:55:04,568.568 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:55:04,632.632 INFO    ] time= 31/08/2026 03:55:04
[2026-08-31 03:55:04,686.686 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:55:04,702.702 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:55:04,854.854 INFO    ] No existing commands found in stream
[2026-08-31 03:55:09,873.873 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:55:09,876.876 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-08-31 03:55:10,907.907 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 03:55:10,910.910 INFO    ] Checking for system updates...
[2026-08-31 03:55:10,945.945 INFO    ] 200
[2026-08-31 03:55:10,948.948 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:55:11,001.001 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:55:11,003.003 INFO    ] No update needed
[2026-08-31 03:55:11,006.006 INFO    ] Checking for camera pi updates...
[2026-08-31 03:55:11,039.039 INFO    ] 200
[2026-08-31 03:55:11,041.041 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:55:11,080.080 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:55:11,172.172 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:55:11,174.174 INFO    ] No camera update needed
[2026-08-31 03:55:11,176.176 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:55:11,179.179 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:55:11,184.184 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:55:11,189.189 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:55:13,230.230 INFO    ] ================================================
[2026-08-31 03:55:13,245.245 INFO    ] Launching Daemon at Mon Aug 31 03:55:13 IST 2026
[2026-08-31 03:55:13,257.257 INFO    ] ================================================
[2026-08-31 03:55:13,917.917 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:55:13
[2026-08-31 03:55:14,597.597 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:55:14,902.902 INFO    ] Initializing speech engine...
[2026-08-31 03:55:14,910.910 INFO    ] 2026-08-31 03:55:14
[2026-08-31 03:55:15,229.229 INFO    ] 2026-08-31 03:55:15
[2026-08-31 03:55:15,313.313 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:55:15,527.527 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:55:15,533.533 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:55:15,697.697 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:55:15,732.732 INFO    ] time= 31/08/2026 03:55:15
[2026-08-31 03:55:15,749.749 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:55:15,758.758 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:55:15,886.886 INFO    ] No existing commands found in stream
[2026-08-31 03:55:20,904.904 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:55:20,908.908 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-08-31 03:55:24,058.058 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 03:55:24,061.061 INFO    ] Checking for system updates...
[2026-08-31 03:55:24,099.099 INFO    ] 200
[2026-08-31 03:55:24,102.102 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:55:24,157.157 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:55:24,160.160 INFO    ] No update needed
[2026-08-31 03:55:24,163.163 INFO    ] Checking for camera pi updates...
[2026-08-31 03:55:24,202.202 INFO    ] 200
[2026-08-31 03:55:24,205.205 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:55:24,248.248 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:55:24,317.317 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:55:24,320.320 INFO    ] No camera update needed
[2026-08-31 03:55:24,323.323 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:55:24,326.326 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:55:24,332.332 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:55:24,338.338 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:55:26,381.381 INFO    ] ================================================
[2026-08-31 03:55:26,397.397 INFO    ] Launching Daemon at Mon Aug 31 03:55:26 IST 2026
[2026-08-31 03:55:26,408.408 INFO    ] ================================================
[2026-08-31 03:55:26,980.980 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:55:26
[2026-08-31 03:55:27,564.564 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:55:27,821.821 INFO    ] Initializing speech engine...
[2026-08-31 03:55:27,830.830 INFO    ] 2026-08-31 03:55:27
[2026-08-31 03:55:28,126.126 INFO    ] 2026-08-31 03:55:28
[2026-08-31 03:55:28,164.164 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:55:28,362.362 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:55:28,377.377 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:55:28,540.540 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:55:28,550.550 INFO    ] time= 31/08/2026 03:55:28
[2026-08-31 03:55:28,554.554 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:55:28,561.561 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:55:28,634.634 INFO    ] No existing commands found in stream
[2026-08-31 03:55:33,646.646 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:55:33,649.649 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-08-31 03:55:36,736.736 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 03:55:36,739.739 INFO    ] Checking for system updates...
[2026-08-31 03:55:36,779.779 INFO    ] 200
[2026-08-31 03:55:36,782.782 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:55:36,834.834 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:55:36,839.839 INFO    ] No update needed
[2026-08-31 03:55:36,842.842 INFO    ] Checking for camera pi updates...
[2026-08-31 03:55:36,888.888 INFO    ] 200
[2026-08-31 03:55:36,891.891 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:55:36,936.936 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:55:37,035.035 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:55:37,038.038 INFO    ] No camera update needed
[2026-08-31 03:55:37,040.040 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:55:37,043.043 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:55:37,048.048 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:55:37,053.053 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:55:39,093.093 INFO    ] ================================================
[2026-08-31 03:55:39,109.109 INFO    ] Launching Daemon at Mon Aug 31 03:55:39 IST 2026
[2026-08-31 03:55:39,120.120 INFO    ] ================================================
[2026-08-31 03:55:39,694.694 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:55:39
[2026-08-31 03:55:40,285.285 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:55:40,542.542 INFO    ] Initializing speech engine...
[2026-08-31 03:55:40,548.548 INFO    ] 2026-08-31 03:55:40
[2026-08-31 03:55:40,846.846 INFO    ] 2026-08-31 03:55:40
[2026-08-31 03:55:40,884.884 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:55:41,082.082 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:55:41,098.098 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:55:41,262.262 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:55:41,270.270 INFO    ] time= 31/08/2026 03:55:41
[2026-08-31 03:55:41,274.274 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:55:41,281.281 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:55:41,355.355 INFO    ] No existing commands found in stream
[2026-08-31 03:55:46,367.367 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:55:46,370.370 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-08-31 03:55:48,218.218 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 03:55:48,221.221 INFO    ] Checking for system updates...
[2026-08-31 03:55:48,256.256 INFO    ] 200
[2026-08-31 03:55:48,259.259 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:55:48,312.312 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:55:48,314.314 INFO    ] No update needed
[2026-08-31 03:55:48,316.316 INFO    ] Checking for camera pi updates...
[2026-08-31 03:55:48,350.350 INFO    ] 200
[2026-08-31 03:55:48,352.352 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:55:48,392.392 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:55:48,478.478 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:55:48,480.480 INFO    ] No camera update needed
[2026-08-31 03:55:48,483.483 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:55:48,485.485 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:55:48,490.490 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:55:48,495.495 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:55:50,537.537 INFO    ] ================================================
[2026-08-31 03:55:50,552.552 INFO    ] Launching Daemon at Mon Aug 31 03:55:50 IST 2026
[2026-08-31 03:55:50,563.563 INFO    ] ================================================
[2026-08-31 03:55:51,131.131 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:55:51
[2026-08-31 03:55:51,747.747 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:55:52,059.059 INFO    ] Initializing speech engine...
[2026-08-31 03:55:52,069.069 INFO    ] 2026-08-31 03:55:52
[2026-08-31 03:55:52,350.350 INFO    ] 2026-08-31 03:55:52
[2026-08-31 03:55:52,404.404 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:55:52,648.648 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:55:52,664.664 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:55:52,857.857 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:55:52,912.912 INFO    ] time= 31/08/2026 03:55:52
[2026-08-31 03:55:52,931.931 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:55:52,940.940 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:55:53,057.057 INFO    ] No existing commands found in stream
[2026-08-31 03:55:58,083.083 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:55:58,086.086 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-08-31 03:56:02,264.264 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 03:56:02,267.267 INFO    ] Checking for system updates...
[2026-08-31 03:56:02,313.313 INFO    ] 200
[2026-08-31 03:56:02,316.316 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:56:02,377.377 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:56:02,380.380 INFO    ] No update needed
[2026-08-31 03:56:02,383.383 INFO    ] Checking for camera pi updates...
[2026-08-31 03:56:02,424.424 INFO    ] 200
[2026-08-31 03:56:02,427.427 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:56:02,490.490 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:56:02,544.544 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:56:02,549.549 INFO    ] No camera update needed
[2026-08-31 03:56:02,553.553 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:56:02,557.557 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:56:02,565.565 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:56:02,573.573 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:56:04,615.615 INFO    ] ================================================
[2026-08-31 03:56:04,631.631 INFO    ] Launching Daemon at Mon Aug 31 03:56:04 IST 2026
[2026-08-31 03:56:04,644.644 INFO    ] ================================================
[2026-08-31 03:56:05,223.223 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:56:05
[2026-08-31 03:56:05,820.820 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:56:06,098.098 INFO    ] Initializing speech engine...
[2026-08-31 03:56:06,106.106 INFO    ] 2026-08-31 03:56:06
[2026-08-31 03:56:06,363.363 INFO    ] 2026-08-31 03:56:06
[2026-08-31 03:56:06,393.393 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:56:06,645.645 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:56:06,666.666 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:56:06,803.803 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:56:06,806.806 INFO    ] time= 31/08/2026 03:56:06
[2026-08-31 03:56:06,811.811 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:56:06,872.872 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:56:06,943.943 INFO    ] No existing commands found in stream
[2026-08-31 03:56:11,965.965 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:56:11,968.968 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-08-31 03:56:15,710.710 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 03:56:15,713.713 INFO    ] Checking for system updates...
[2026-08-31 03:56:15,749.749 INFO    ] 200
[2026-08-31 03:56:15,752.752 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:56:15,805.805 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:56:15,807.807 INFO    ] No update needed
[2026-08-31 03:56:15,810.810 INFO    ] Checking for camera pi updates...
[2026-08-31 03:56:15,844.844 INFO    ] 200
[2026-08-31 03:56:15,846.846 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:56:15,891.891 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:56:16,071.071 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:56:16,074.074 INFO    ] No camera update needed
[2026-08-31 03:56:16,076.076 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:56:16,079.079 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:56:16,084.084 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:56:16,089.089 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:56:18,132.132 INFO    ] ================================================
[2026-08-31 03:56:18,147.147 INFO    ] Launching Daemon at Mon Aug 31 03:56:18 IST 2026
[2026-08-31 03:56:18,158.158 INFO    ] ================================================
[2026-08-31 03:56:18,731.731 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:56:18
[2026-08-31 03:56:19,319.319 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:56:19,588.588 INFO    ] Initializing speech engine...
[2026-08-31 03:56:19,598.598 INFO    ] 2026-08-31 03:56:19
[2026-08-31 03:56:19,844.844 INFO    ] 2026-08-31 03:56:19
[2026-08-31 03:56:19,879.879 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:56:20,131.131 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:56:20,140.140 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:56:20,272.272 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:56:20,294.294 INFO    ] time= 31/08/2026 03:56:20
[2026-08-31 03:56:20,343.343 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:56:20,392.392 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:56:20,543.543 INFO    ] No existing commands found in stream
[2026-08-31 03:56:25,563.563 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:56:25,566.566 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-08-31 03:56:28,789.789 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 03:56:28,792.792 INFO    ] Checking for system updates...
[2026-08-31 03:56:28,828.828 INFO    ] 200
[2026-08-31 03:56:28,831.831 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:56:28,882.882 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:56:28,885.885 INFO    ] No update needed
[2026-08-31 03:56:28,887.887 INFO    ] Checking for camera pi updates...
[2026-08-31 03:56:28,920.920 INFO    ] 200
[2026-08-31 03:56:28,923.923 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:56:28,962.962 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:56:29,042.042 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:56:29,045.045 INFO    ] No camera update needed
[2026-08-31 03:56:29,047.047 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:56:29,049.049 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:56:29,054.054 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:56:29,059.059 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:56:31,102.102 INFO    ] ================================================
[2026-08-31 03:56:31,117.117 INFO    ] Launching Daemon at Mon Aug 31 03:56:31 IST 2026
[2026-08-31 03:56:31,127.127 INFO    ] ================================================
[2026-08-31 03:56:31,692.692 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:56:31
[2026-08-31 03:56:32,305.305 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:56:32,599.599 INFO    ] Initializing speech engine...
[2026-08-31 03:56:32,607.607 INFO    ] 2026-08-31 03:56:32
[2026-08-31 03:56:32,896.896 INFO    ] 2026-08-31 03:56:32
[2026-08-31 03:56:32,958.958 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:56:33,205.205 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:56:33,214.214 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:56:33,352.352 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:56:33,403.403 INFO    ] time= 31/08/2026 03:56:33
[2026-08-31 03:56:33,466.466 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:56:33,509.509 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:56:33,618.618 INFO    ] No existing commands found in stream
[2026-08-31 03:56:38,650.650 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:56:38,653.653 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-08-31 03:56:41,372.372 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 03:56:41,374.374 INFO    ] Checking for system updates...
[2026-08-31 03:56:41,414.414 INFO    ] 200
[2026-08-31 03:56:41,416.416 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:56:41,474.474 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:56:41,477.477 INFO    ] No update needed
[2026-08-31 03:56:41,479.479 INFO    ] Checking for camera pi updates...
[2026-08-31 03:56:41,516.516 INFO    ] 200
[2026-08-31 03:56:41,519.519 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:56:41,558.558 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:56:41,641.641 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:56:41,644.644 INFO    ] No camera update needed
[2026-08-31 03:56:41,646.646 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:56:41,649.649 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:56:41,654.654 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:56:41,659.659 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:56:43,700.700 INFO    ] ================================================
[2026-08-31 03:56:43,715.715 INFO    ] Launching Daemon at Mon Aug 31 03:56:43 IST 2026
[2026-08-31 03:56:43,726.726 INFO    ] ================================================
[2026-08-31 03:56:44,372.372 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:56:44
[2026-08-31 03:56:45,018.018 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:56:45,272.272 INFO    ] Initializing speech engine...
[2026-08-31 03:56:45,281.281 INFO    ] 2026-08-31 03:56:45
[2026-08-31 03:56:45,576.576 INFO    ] 2026-08-31 03:56:45
[2026-08-31 03:56:45,601.601 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:56:45,765.765 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:56:45,770.770 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:56:45,930.930 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:56:45,937.937 INFO    ] time= 31/08/2026 03:56:45
[2026-08-31 03:56:45,960.960 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:56:45,965.965 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:56:46,087.087 INFO    ] No existing commands found in stream
[2026-08-31 03:56:51,100.100 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:56:51,102.102 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-08-31 03:56:53,614.614 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 03:56:53,617.617 INFO    ] Checking for system updates...
[2026-08-31 03:56:53,656.656 INFO    ] 200
[2026-08-31 03:56:53,659.659 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:56:53,711.711 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:56:53,713.713 INFO    ] No update needed
[2026-08-31 03:56:53,715.715 INFO    ] Checking for camera pi updates...
[2026-08-31 03:56:53,752.752 INFO    ] 200
[2026-08-31 03:56:53,754.754 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:56:53,794.794 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:56:53,881.881 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:56:53,883.883 INFO    ] No camera update needed
[2026-08-31 03:56:53,885.885 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:56:53,888.888 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:56:53,893.893 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:56:53,898.898 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:56:55,939.939 INFO    ] ================================================
[2026-08-31 03:56:55,955.955 INFO    ] Launching Daemon at Mon Aug 31 03:56:55 IST 2026
[2026-08-31 03:56:55,967.967 INFO    ] ================================================
[2026-08-31 03:56:56,598.598 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:56:56
[2026-08-31 03:56:57,190.190 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:56:57,440.440 INFO    ] Initializing speech engine...
[2026-08-31 03:56:57,465.465 INFO    ] 2026-08-31 03:56:57
[2026-08-31 03:56:57,734.734 INFO    ] 2026-08-31 03:56:57
[2026-08-31 03:56:57,788.788 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:56:58,010.010 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:56:58,019.019 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:56:58,151.151 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:56:58,193.193 INFO    ] time= 31/08/2026 03:56:58
[2026-08-31 03:56:58,238.238 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:56:58,284.284 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:56:58,423.423 INFO    ] No existing commands found in stream
[2026-08-31 03:57:03,440.440 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:57:03,443.443 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-08-31 03:57:05,183.183 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 03:57:05,185.185 INFO    ] Checking for system updates...
[2026-08-31 03:57:05,222.222 INFO    ] 200
[2026-08-31 03:57:05,224.224 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:57:05,276.276 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:57:05,279.279 INFO    ] No update needed
[2026-08-31 03:57:05,281.281 INFO    ] Checking for camera pi updates...
[2026-08-31 03:57:05,318.318 INFO    ] 200
[2026-08-31 03:57:05,321.321 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:57:05,362.362 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:57:05,437.437 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:57:05,440.440 INFO    ] No camera update needed
[2026-08-31 03:57:05,442.442 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:57:05,444.444 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:57:05,449.449 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:57:05,454.454 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:57:07,497.497 INFO    ] ================================================
[2026-08-31 03:57:07,513.513 INFO    ] Launching Daemon at Mon Aug 31 03:57:07 IST 2026
[2026-08-31 03:57:07,524.524 INFO    ] ================================================
[2026-08-31 03:57:08,126.126 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:57:08
[2026-08-31 03:57:08,731.731 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:57:09,003.003 INFO    ] Initializing speech engine...
[2026-08-31 03:57:09,012.012 INFO    ] 2026-08-31 03:57:09
[2026-08-31 03:57:09,278.278 INFO    ] 2026-08-31 03:57:09
[2026-08-31 03:57:09,330.330 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:57:09,551.551 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:57:09,560.560 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:57:09,771.771 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:57:09,817.817 INFO    ] time= 31/08/2026 03:57:09
[2026-08-31 03:57:09,824.824 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:57:09,841.841 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:57:09,957.957 INFO    ] No existing commands found in stream
[2026-08-31 03:57:14,979.979 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:57:14,982.982 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-08-31 03:57:18,265.265 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 03:57:18,268.268 INFO    ] Checking for system updates...
[2026-08-31 03:57:18,307.307 INFO    ] 200
[2026-08-31 03:57:18,309.309 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:57:18,368.368 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:57:18,370.370 INFO    ] No update needed
[2026-08-31 03:57:18,372.372 INFO    ] Checking for camera pi updates...
[2026-08-31 03:57:18,412.412 INFO    ] 200
[2026-08-31 03:57:18,414.414 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:57:18,454.454 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:57:18,529.529 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:57:18,531.531 INFO    ] No camera update needed
[2026-08-31 03:57:18,533.533 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:57:18,536.536 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:57:18,541.541 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:57:18,546.546 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:57:20,589.589 INFO    ] ================================================
[2026-08-31 03:57:20,605.605 INFO    ] Launching Daemon at Mon Aug 31 03:57:20 IST 2026
[2026-08-31 03:57:20,615.615 INFO    ] ================================================
[2026-08-31 03:57:21,196.196 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:57:21
[2026-08-31 03:57:21,792.792 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:57:22,075.075 INFO    ] Initializing speech engine...
[2026-08-31 03:57:22,088.088 INFO    ] 2026-08-31 03:57:22
[2026-08-31 03:57:22,358.358 INFO    ] 2026-08-31 03:57:22
[2026-08-31 03:57:22,436.436 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:57:22,688.688 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:57:22,698.698 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:57:22,855.855 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:57:22,915.915 INFO    ] time= 31/08/2026 03:57:22
[2026-08-31 03:57:22,959.959 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:57:23,003.003 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:57:23,143.143 INFO    ] No existing commands found in stream
[2026-08-31 03:57:28,168.168 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:57:28,171.171 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-08-31 03:57:31,071.071 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 03:57:31,074.074 INFO    ] Checking for system updates...
[2026-08-31 03:57:31,115.115 INFO    ] 200
[2026-08-31 03:57:31,117.117 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:57:31,183.183 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:57:31,186.186 INFO    ] No update needed
[2026-08-31 03:57:31,189.189 INFO    ] Checking for camera pi updates...
[2026-08-31 03:57:31,225.225 INFO    ] 200
[2026-08-31 03:57:31,228.228 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:57:31,273.273 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:57:31,369.369 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:57:31,372.372 INFO    ] No camera update needed
[2026-08-31 03:57:31,374.374 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:57:31,376.376 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:57:31,382.382 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:57:31,387.387 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:57:33,429.429 INFO    ] ================================================
[2026-08-31 03:57:33,444.444 INFO    ] Launching Daemon at Mon Aug 31 03:57:33 IST 2026
[2026-08-31 03:57:33,455.455 INFO    ] ================================================
[2026-08-31 03:57:34,092.092 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:57:34
[2026-08-31 03:57:34,748.748 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:57:35,046.046 INFO    ] Initializing speech engine...
[2026-08-31 03:57:35,054.054 INFO    ] 2026-08-31 03:57:35
[2026-08-31 03:57:35,338.338 INFO    ] 2026-08-31 03:57:35
[2026-08-31 03:57:35,381.381 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:57:35,661.661 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:57:35,670.670 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:57:35,862.862 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:57:35,871.871 INFO    ] time= 31/08/2026 03:57:35
[2026-08-31 03:57:35,892.892 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:57:35,921.921 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:57:36,049.049 INFO    ] No existing commands found in stream
[2026-08-31 03:57:41,085.085 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:57:41,088.088 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-08-31 03:57:45,099.099 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 03:57:45,101.101 INFO    ] Checking for system updates...
[2026-08-31 03:57:45,139.139 INFO    ] 200
[2026-08-31 03:57:45,142.142 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:57:45,196.196 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:57:45,199.199 INFO    ] No update needed
[2026-08-31 03:57:45,201.201 INFO    ] Checking for camera pi updates...
[2026-08-31 03:57:45,235.235 INFO    ] 200
[2026-08-31 03:57:45,238.238 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:57:45,280.280 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:57:45,362.362 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:57:45,364.364 INFO    ] No camera update needed
[2026-08-31 03:57:45,367.367 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:57:45,370.370 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:57:45,376.376 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:57:45,381.381 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:57:47,421.421 INFO    ] ================================================
[2026-08-31 03:57:47,436.436 INFO    ] Launching Daemon at Mon Aug 31 03:57:47 IST 2026
[2026-08-31 03:57:47,447.447 INFO    ] ================================================
[2026-08-31 03:57:48,020.020 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:57:48
[2026-08-31 03:57:48,603.603 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:57:48,862.862 INFO    ] Initializing speech engine...
[2026-08-31 03:57:48,880.880 INFO    ] 2026-08-31 03:57:48
[2026-08-31 03:57:49,131.131 INFO    ] 2026-08-31 03:57:49
[2026-08-31 03:57:49,165.165 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:57:49,370.370 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:57:49,428.428 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:57:49,578.578 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:57:49,638.638 INFO    ] time= 31/08/2026 03:57:49
[2026-08-31 03:57:49,682.682 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:57:49,710.710 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:57:49,820.820 INFO    ] No existing commands found in stream
[2026-08-31 03:57:54,839.839 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:57:54,841.841 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-08-31 03:57:59,150.150 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 03:57:59,152.152 INFO    ] Checking for system updates...
[2026-08-31 03:57:59,191.191 INFO    ] 200
[2026-08-31 03:57:59,194.194 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:57:59,251.251 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:57:59,253.253 INFO    ] No update needed
[2026-08-31 03:57:59,255.255 INFO    ] Checking for camera pi updates...
[2026-08-31 03:57:59,292.292 INFO    ] 200
[2026-08-31 03:57:59,294.294 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:57:59,335.335 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:57:59,433.433 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:57:59,435.435 INFO    ] No camera update needed
[2026-08-31 03:57:59,438.438 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:57:59,440.440 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:57:59,445.445 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:57:59,451.451 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:58:01,491.491 INFO    ] ================================================
[2026-08-31 03:58:01,506.506 INFO    ] Launching Daemon at Mon Aug 31 03:58:01 IST 2026
[2026-08-31 03:58:01,517.517 INFO    ] ================================================
[2026-08-31 03:58:02,211.211 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:58:02
[2026-08-31 03:58:02,866.866 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:58:03,196.196 INFO    ] Initializing speech engine...
[2026-08-31 03:58:03,213.213 INFO    ] 2026-08-31 03:58:03
[2026-08-31 03:58:03,503.503 INFO    ] 2026-08-31 03:58:03
[2026-08-31 03:58:03,565.565 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:58:03,800.800 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:58:03,804.804 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:58:04,017.017 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:58:04,062.062 INFO    ] time= 31/08/2026 03:58:04
[2026-08-31 03:58:04,068.068 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:58:04,089.089 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:58:04,217.217 INFO    ] No existing commands found in stream
[2026-08-31 03:58:09,231.231 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:58:09,234.234 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-08-31 03:58:10,413.413 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 03:58:10,416.416 INFO    ] Checking for system updates...
[2026-08-31 03:58:10,453.453 INFO    ] 200
[2026-08-31 03:58:10,456.456 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:58:10,508.508 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:58:10,511.511 INFO    ] No update needed
[2026-08-31 03:58:10,513.513 INFO    ] Checking for camera pi updates...
[2026-08-31 03:58:10,550.550 INFO    ] 200
[2026-08-31 03:58:10,552.552 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:58:10,595.595 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:58:10,692.692 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:58:10,695.695 INFO    ] No camera update needed
[2026-08-31 03:58:10,697.697 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:58:10,700.700 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:58:10,705.705 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:58:10,710.710 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:58:12,752.752 INFO    ] ================================================
[2026-08-31 03:58:12,767.767 INFO    ] Launching Daemon at Mon Aug 31 03:58:12 IST 2026
[2026-08-31 03:58:12,778.778 INFO    ] ================================================
[2026-08-31 03:58:13,410.410 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:58:13
[2026-08-31 03:58:14,061.061 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:58:14,359.359 INFO    ] Initializing speech engine...
[2026-08-31 03:58:14,368.368 INFO    ] 2026-08-31 03:58:14
[2026-08-31 03:58:14,639.639 INFO    ] 2026-08-31 03:58:14
[2026-08-31 03:58:14,698.698 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:58:14,930.930 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:58:14,937.937 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:58:15,071.071 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:58:15,118.118 INFO    ] time= 31/08/2026 03:58:15
[2026-08-31 03:58:15,178.178 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:58:15,211.211 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:58:15,342.342 INFO    ] No existing commands found in stream
[2026-08-31 03:58:20,368.368 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:58:20,371.371 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-08-31 03:58:22,390.390 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 03:58:22,393.393 INFO    ] Checking for system updates...
[2026-08-31 03:58:22,430.430 INFO    ] 200
[2026-08-31 03:58:22,432.432 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:58:22,485.485 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:58:22,488.488 INFO    ] No update needed
[2026-08-31 03:58:22,491.491 INFO    ] Checking for camera pi updates...
[2026-08-31 03:58:22,526.526 INFO    ] 200
[2026-08-31 03:58:22,528.528 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:58:22,570.570 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:58:22,755.755 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:58:22,758.758 INFO    ] No camera update needed
[2026-08-31 03:58:22,761.761 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:58:22,763.763 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:58:22,770.770 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:58:22,775.775 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:58:24,818.818 INFO    ] ================================================
[2026-08-31 03:58:24,833.833 INFO    ] Launching Daemon at Mon Aug 31 03:58:24 IST 2026
[2026-08-31 03:58:24,844.844 INFO    ] ================================================
[2026-08-31 03:58:25,471.471 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:58:25
[2026-08-31 03:58:26,119.119 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:58:26,416.416 INFO    ] Initializing speech engine...
[2026-08-31 03:58:26,424.424 INFO    ] 2026-08-31 03:58:26
[2026-08-31 03:58:26,700.700 INFO    ] 2026-08-31 03:58:26
[2026-08-31 03:58:26,753.753 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:58:26,987.987 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:58:26,992.992 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:58:27,146.146 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:58:27,206.206 INFO    ] time= 31/08/2026 03:58:27
[2026-08-31 03:58:27,262.262 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:58:27,269.269 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:58:27,415.415 INFO    ] No existing commands found in stream
[2026-08-31 03:58:32,430.430 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:58:32,433.433 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-08-31 03:58:36,113.113 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 03:58:36,116.116 INFO    ] Checking for system updates...
[2026-08-31 03:58:36,159.159 INFO    ] 200
[2026-08-31 03:58:36,162.162 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:58:36,223.223 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:58:36,225.225 INFO    ] No update needed
[2026-08-31 03:58:36,228.228 INFO    ] Checking for camera pi updates...
[2026-08-31 03:58:36,263.263 INFO    ] 200
[2026-08-31 03:58:36,266.266 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:58:36,308.308 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:58:36,364.364 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:58:36,366.366 INFO    ] No camera update needed
[2026-08-31 03:58:36,369.369 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:58:36,372.372 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:58:36,378.378 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:58:36,384.384 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:58:38,426.426 INFO    ] ================================================
[2026-08-31 03:58:38,441.441 INFO    ] Launching Daemon at Mon Aug 31 03:58:38 IST 2026
[2026-08-31 03:58:38,452.452 INFO    ] ================================================
[2026-08-31 03:58:39,034.034 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:58:39
[2026-08-31 03:58:39,637.637 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:58:39,909.909 INFO    ] Initializing speech engine...
[2026-08-31 03:58:39,916.916 INFO    ] 2026-08-31 03:58:39
[2026-08-31 03:58:40,226.226 INFO    ] 2026-08-31 03:58:40
[2026-08-31 03:58:40,268.268 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:58:40,472.472 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:58:40,486.486 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:58:40,649.649 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:58:40,659.659 INFO    ] time= 31/08/2026 03:58:40
[2026-08-31 03:58:40,666.666 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:58:40,719.719 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:58:40,862.862 INFO    ] No existing commands found in stream
[2026-08-31 03:58:45,888.888 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:58:45,891.891 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-08-31 03:58:49,061.061 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 03:58:49,064.064 INFO    ] Checking for system updates...
[2026-08-31 03:58:49,099.099 INFO    ] 200
[2026-08-31 03:58:49,102.102 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:58:49,161.161 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:58:49,163.163 INFO    ] No update needed
[2026-08-31 03:58:49,165.165 INFO    ] Checking for camera pi updates...
[2026-08-31 03:58:49,203.203 INFO    ] 200
[2026-08-31 03:58:49,205.205 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:58:49,246.246 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:58:49,333.333 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:58:49,335.335 INFO    ] No camera update needed
[2026-08-31 03:58:49,338.338 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:58:49,340.340 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:58:49,346.346 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:58:49,351.351 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:58:51,392.392 INFO    ] ================================================
[2026-08-31 03:58:51,408.408 INFO    ] Launching Daemon at Mon Aug 31 03:58:51 IST 2026
[2026-08-31 03:58:51,419.419 INFO    ] ================================================
[2026-08-31 03:58:52,001.001 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:58:51
[2026-08-31 03:58:52,586.586 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:58:52,877.877 INFO    ] Initializing speech engine...
[2026-08-31 03:58:52,886.886 INFO    ] 2026-08-31 03:58:52
[2026-08-31 03:58:53,156.156 INFO    ] 2026-08-31 03:58:53
[2026-08-31 03:58:53,193.193 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:58:53,417.417 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:58:53,435.435 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:58:53,575.575 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:58:53,582.582 INFO    ] time= 31/08/2026 03:58:53
[2026-08-31 03:58:53,621.621 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:58:53,658.658 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:58:53,767.767 INFO    ] No existing commands found in stream
[2026-08-31 03:58:58,792.792 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:58:58,795.795 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-08-31 03:58:59,870.870 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 03:58:59,873.873 INFO    ] Checking for system updates...
[2026-08-31 03:58:59,909.909 INFO    ] 200
[2026-08-31 03:58:59,912.912 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:58:59,966.966 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:58:59,969.969 INFO    ] No update needed
[2026-08-31 03:58:59,972.972 INFO    ] Checking for camera pi updates...
[2026-08-31 03:59:00,007.007 INFO    ] 200
[2026-08-31 03:59:00,010.010 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:59:00,056.056 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:59:00,133.133 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:59:00,136.136 INFO    ] No camera update needed
[2026-08-31 03:59:00,139.139 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:59:00,141.141 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:59:00,148.148 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:59:00,153.153 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:59:02,199.199 INFO    ] ================================================
[2026-08-31 03:59:02,221.221 INFO    ] Launching Daemon at Mon Aug 31 03:59:02 IST 2026
[2026-08-31 03:59:02,239.239 INFO    ] ================================================
[2026-08-31 03:59:03,004.004 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:59:03
[2026-08-31 03:59:03,714.714 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:59:03,986.986 INFO    ] Initializing speech engine...
[2026-08-31 03:59:03,996.996 INFO    ] 2026-08-31 03:59:03
[2026-08-31 03:59:04,246.246 INFO    ] 2026-08-31 03:59:04
[2026-08-31 03:59:04,316.316 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:59:04,541.541 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:59:04,547.547 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:59:04,679.679 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:59:04,739.739 INFO    ] time= 31/08/2026 03:59:04
[2026-08-31 03:59:04,794.794 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:59:04,812.812 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:59:04,931.931 INFO    ] No existing commands found in stream
[2026-08-31 03:59:09,962.962 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:59:09,964.964 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-08-31 03:59:12,550.550 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 03:59:12,553.553 INFO    ] Checking for system updates...
[2026-08-31 03:59:12,589.589 INFO    ] 200
[2026-08-31 03:59:12,592.592 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:59:12,643.643 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:59:12,645.645 INFO    ] No update needed
[2026-08-31 03:59:12,648.648 INFO    ] Checking for camera pi updates...
[2026-08-31 03:59:12,682.682 INFO    ] 200
[2026-08-31 03:59:12,684.684 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:59:12,730.730 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:59:12,810.810 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:59:12,813.813 INFO    ] No camera update needed
[2026-08-31 03:59:12,815.815 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:59:12,818.818 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:59:12,823.823 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:59:12,828.828 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:59:14,871.871 INFO    ] ================================================
[2026-08-31 03:59:14,887.887 INFO    ] Launching Daemon at Mon Aug 31 03:59:14 IST 2026
[2026-08-31 03:59:14,898.898 INFO    ] ================================================
[2026-08-31 03:59:15,473.473 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:59:15
[2026-08-31 03:59:16,061.061 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:59:16,331.331 INFO    ] Initializing speech engine...
[2026-08-31 03:59:16,344.344 INFO    ] 2026-08-31 03:59:16
[2026-08-31 03:59:16,618.618 INFO    ] 2026-08-31 03:59:16
[2026-08-31 03:59:16,681.681 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:59:16,911.911 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:59:16,921.921 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:59:17,144.144 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:59:17,191.191 INFO    ] time= 31/08/2026 03:59:17
[2026-08-31 03:59:17,208.208 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:59:17,218.218 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:59:17,344.344 INFO    ] No existing commands found in stream
[2026-08-31 03:59:22,363.363 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:59:22,366.366 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-08-31 03:59:24,983.983 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 03:59:24,986.986 INFO    ] Checking for system updates...
[2026-08-31 03:59:25,027.027 INFO    ] 200
[2026-08-31 03:59:25,030.030 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:59:25,095.095 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:59:25,098.098 INFO    ] No update needed
[2026-08-31 03:59:25,101.101 INFO    ] Checking for camera pi updates...
[2026-08-31 03:59:25,136.136 INFO    ] 200
[2026-08-31 03:59:25,139.139 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:59:25,181.181 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:59:25,257.257 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:59:25,260.260 INFO    ] No camera update needed
[2026-08-31 03:59:25,263.263 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:59:25,265.265 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:59:25,272.272 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:59:25,278.278 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:59:27,320.320 INFO    ] ================================================
[2026-08-31 03:59:27,337.337 INFO    ] Launching Daemon at Mon Aug 31 03:59:27 IST 2026
[2026-08-31 03:59:27,349.349 INFO    ] ================================================
[2026-08-31 03:59:27,919.919 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:59:27
[2026-08-31 03:59:28,513.513 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:59:28,785.785 INFO    ] Initializing speech engine...
[2026-08-31 03:59:28,794.794 INFO    ] 2026-08-31 03:59:28
[2026-08-31 03:59:29,043.043 INFO    ] 2026-08-31 03:59:29
[2026-08-31 03:59:29,077.077 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:59:29,264.264 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:59:29,279.279 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:59:29,481.481 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:59:29,492.492 INFO    ] time= 31/08/2026 03:59:29
[2026-08-31 03:59:29,542.542 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:59:29,602.602 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:59:29,730.730 INFO    ] No existing commands found in stream
[2026-08-31 03:59:34,749.749 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:59:34,752.752 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-08-31 03:59:36,235.235 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 03:59:36,238.238 INFO    ] Checking for system updates...
[2026-08-31 03:59:36,275.275 INFO    ] 200
[2026-08-31 03:59:36,278.278 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:59:36,334.334 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:59:36,337.337 INFO    ] No update needed
[2026-08-31 03:59:36,340.340 INFO    ] Checking for camera pi updates...
[2026-08-31 03:59:36,379.379 INFO    ] 200
[2026-08-31 03:59:36,382.382 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:59:36,423.423 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:59:36,504.504 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 03:59:36,507.507 INFO    ] No camera update needed
[2026-08-31 03:59:36,510.510 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:59:36,513.513 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:59:36,519.519 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:59:36,525.525 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:59:38,569.569 INFO    ] ================================================
[2026-08-31 03:59:38,584.584 INFO    ] Launching Daemon at Mon Aug 31 03:59:38 IST 2026
[2026-08-31 03:59:38,595.595 INFO    ] ================================================
[2026-08-31 03:59:39,179.179 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:59:39
[2026-08-31 03:59:39,775.775 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:59:40,047.047 INFO    ] Initializing speech engine...
[2026-08-31 03:59:40,057.057 INFO    ] 2026-08-31 03:59:40
[2026-08-31 03:59:40,317.317 INFO    ] 2026-08-31 03:59:40
[2026-08-31 03:59:40,372.372 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:59:40,618.618 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:59:40,624.624 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:59:40,805.805 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:59:40,858.858 INFO    ] time= 31/08/2026 03:59:40
[2026-08-31 03:59:40,865.865 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:59:40,883.883 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:59:41,011.011 INFO    ] No existing commands found in stream
[2026-08-31 03:59:46,024.024 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:59:46,027.027 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-08-31 03:59:46,776.776 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 03:59:46,779.779 INFO    ] Checking for system updates...
[2026-08-31 03:59:46,815.815 INFO    ] 200
[2026-08-31 03:59:46,818.818 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:59:46,876.876 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:59:46,878.878 INFO    ] No update needed
[2026-08-31 03:59:46,881.881 INFO    ] Checking for camera pi updates...
[2026-08-31 03:59:46,914.914 INFO    ] 200
[2026-08-31 03:59:46,916.916 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 03:59:46,957.957 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 03:59:47,039.039 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 03:59:47,042.042 INFO    ] No camera update needed
[2026-08-31 03:59:47,044.044 INFO    ] Script finished. Safe exiting...
[2026-08-31 03:59:47,046.046 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 03:59:47,052.052 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 03:59:47,057.057 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 03:59:49,101.101 INFO    ] ================================================
[2026-08-31 03:59:49,116.116 INFO    ] Launching Daemon at Mon Aug 31 03:59:49 IST 2026
[2026-08-31 03:59:49,127.127 INFO    ] ================================================
[2026-08-31 03:59:49,796.796 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 03:59:49
[2026-08-31 03:59:50,469.469 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 03:59:50,770.770 INFO    ] Initializing speech engine...
[2026-08-31 03:59:50,784.784 INFO    ] 2026-08-31 03:59:50
[2026-08-31 03:59:51,055.055 INFO    ] 2026-08-31 03:59:51
[2026-08-31 03:59:51,110.110 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 03:59:51,361.361 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 03:59:51,368.368 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 03:59:51,578.578 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 03:59:51,612.612 INFO    ] time= 31/08/2026 03:59:51
[2026-08-31 03:59:51,628.628 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 03:59:51,637.637 INFO    ] Checking for existing commands in stream...
[2026-08-31 03:59:51,749.749 INFO    ] No existing commands found in stream
[2026-08-31 03:59:56,778.778 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 03:59:56,781.781 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-08-31 04:00:01,227.227 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 04:00:01,230.230 INFO    ] Checking for system updates...
[2026-08-31 04:00:01,265.265 INFO    ] 200
[2026-08-31 04:00:01,268.268 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:00:01,328.328 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:00:01,330.330 INFO    ] No update needed
[2026-08-31 04:00:01,332.332 INFO    ] Checking for camera pi updates...
[2026-08-31 04:00:01,367.367 INFO    ] 200
[2026-08-31 04:00:01,369.369 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:00:01,409.409 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:00:01,497.497 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:00:01,499.499 INFO    ] No camera update needed
[2026-08-31 04:00:01,502.502 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:00:01,504.504 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:00:01,509.509 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:00:01,515.515 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:00:03,694.694 INFO    ] ================================================
[2026-08-31 04:00:03,761.761 INFO    ] Launching Daemon at Mon Aug 31 04:00:03 IST 2026
[2026-08-31 04:00:03,840.840 INFO    ] ================================================
[2026-08-31 04:00:05,401.401 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:00:05
[2026-08-31 04:00:06,557.557 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:00:06,850.850 INFO    ] Initializing speech engine...
[2026-08-31 04:00:06,861.861 INFO    ] 2026-08-31 04:00:06
[2026-08-31 04:00:07,116.116 INFO    ] 2026-08-31 04:00:07
[2026-08-31 04:00:07,176.176 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:00:07,398.398 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:00:07,407.407 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:00:07,631.631 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:00:07,666.666 INFO    ] time= 31/08/2026 04:00:07
[2026-08-31 04:00:07,684.684 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:00:07,690.690 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:00:07,821.821 INFO    ] No existing commands found in stream
[2026-08-31 04:00:12,830.830 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:00:12,832.832 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-08-31 04:00:13,849.849 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 04:00:13,852.852 INFO    ] Checking for system updates...
[2026-08-31 04:00:13,888.888 INFO    ] 200
[2026-08-31 04:00:13,890.890 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:00:13,942.942 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:00:13,945.945 INFO    ] No update needed
[2026-08-31 04:00:13,947.947 INFO    ] Checking for camera pi updates...
[2026-08-31 04:00:13,981.981 INFO    ] 200
[2026-08-31 04:00:13,983.983 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:00:14,028.028 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:00:14,115.115 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:00:14,117.117 INFO    ] No camera update needed
[2026-08-31 04:00:14,120.120 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:00:14,122.122 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:00:14,128.128 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:00:14,133.133 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:00:16,173.173 INFO    ] ================================================
[2026-08-31 04:00:16,189.189 INFO    ] Launching Daemon at Mon Aug 31 04:00:16 IST 2026
[2026-08-31 04:00:16,199.199 INFO    ] ================================================
[2026-08-31 04:00:16,775.775 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:00:16
[2026-08-31 04:00:17,377.377 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:00:17,639.639 INFO    ] Initializing speech engine...
[2026-08-31 04:00:17,651.651 INFO    ] 2026-08-31 04:00:17
[2026-08-31 04:00:17,931.931 INFO    ] 2026-08-31 04:00:17
[2026-08-31 04:00:17,968.968 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:00:18,246.246 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:00:18,255.255 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:00:18,402.402 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:00:18,424.424 INFO    ] time= 31/08/2026 04:00:18
[2026-08-31 04:00:18,489.489 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:00:18,547.547 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:00:18,605.605 INFO    ] No existing commands found in stream
[2026-08-31 04:00:23,618.618 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:00:23,621.621 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-08-31 04:00:25,713.713 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 04:00:25,715.715 INFO    ] Checking for system updates...
[2026-08-31 04:00:25,751.751 INFO    ] 200
[2026-08-31 04:00:25,753.753 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:00:25,810.810 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:00:25,812.812 INFO    ] No update needed
[2026-08-31 04:00:25,814.814 INFO    ] Checking for camera pi updates...
[2026-08-31 04:00:25,847.847 INFO    ] 200
[2026-08-31 04:00:25,850.850 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:00:25,893.893 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:00:26,068.068 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:00:26,071.071 INFO    ] No camera update needed
[2026-08-31 04:00:26,073.073 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:00:26,075.075 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:00:26,081.081 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:00:26,086.086 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:00:28,126.126 INFO    ] ================================================
[2026-08-31 04:00:28,141.141 INFO    ] Launching Daemon at Mon Aug 31 04:00:28 IST 2026
[2026-08-31 04:00:28,151.151 INFO    ] ================================================
[2026-08-31 04:00:28,772.772 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:00:28
[2026-08-31 04:00:29,411.411 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:00:29,704.704 INFO    ] Initializing speech engine...
[2026-08-31 04:00:29,714.714 INFO    ] 2026-08-31 04:00:29
[2026-08-31 04:00:29,979.979 INFO    ] 2026-08-31 04:00:29
[2026-08-31 04:00:30,035.035 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:00:30,266.266 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:00:30,276.276 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:00:30,414.414 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:00:30,474.474 INFO    ] time= 31/08/2026 04:00:30
[2026-08-31 04:00:30,539.539 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:00:30,552.552 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:00:30,610.610 INFO    ] No existing commands found in stream
[2026-08-31 04:00:35,620.620 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:00:35,623.623 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-08-31 04:00:38,151.151 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 04:00:38,154.154 INFO    ] Checking for system updates...
[2026-08-31 04:00:38,190.190 INFO    ] 200
[2026-08-31 04:00:38,193.193 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:00:38,245.245 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:00:38,248.248 INFO    ] No update needed
[2026-08-31 04:00:38,251.251 INFO    ] Checking for camera pi updates...
[2026-08-31 04:00:38,286.286 INFO    ] 200
[2026-08-31 04:00:38,288.288 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:00:38,332.332 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:00:38,429.429 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:00:38,432.432 INFO    ] No camera update needed
[2026-08-31 04:00:38,434.434 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:00:38,437.437 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:00:38,443.443 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:00:38,448.448 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:00:40,489.489 INFO    ] ================================================
[2026-08-31 04:00:40,504.504 INFO    ] Launching Daemon at Mon Aug 31 04:00:40 IST 2026
[2026-08-31 04:00:40,514.514 INFO    ] ================================================
[2026-08-31 04:00:41,092.092 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:00:41
[2026-08-31 04:00:41,691.691 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:00:41,968.968 INFO    ] Initializing speech engine...
[2026-08-31 04:00:41,975.975 INFO    ] 2026-08-31 04:00:41
[2026-08-31 04:00:42,249.249 INFO    ] 2026-08-31 04:00:42
[2026-08-31 04:00:42,292.292 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:00:42,575.575 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:00:42,579.579 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:00:42,771.771 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:00:42,778.778 INFO    ] time= 31/08/2026 04:00:42
[2026-08-31 04:00:42,794.794 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:00:42,803.803 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:00:42,931.931 INFO    ] No existing commands found in stream
[2026-08-31 04:00:47,947.947 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:00:47,950.950 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-08-31 04:00:52,339.339 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 04:00:52,342.342 INFO    ] Checking for system updates...
[2026-08-31 04:00:52,379.379 INFO    ] 200
[2026-08-31 04:00:52,382.382 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:00:52,436.436 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:00:52,439.439 INFO    ] No update needed
[2026-08-31 04:00:52,442.442 INFO    ] Checking for camera pi updates...
[2026-08-31 04:00:52,481.481 INFO    ] 200
[2026-08-31 04:00:52,484.484 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:00:52,533.533 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:00:52,605.605 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:00:52,608.608 INFO    ] No camera update needed
[2026-08-31 04:00:52,610.610 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:00:52,613.613 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:00:52,618.618 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:00:52,623.623 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:00:54,665.665 INFO    ] ================================================
[2026-08-31 04:00:54,679.679 INFO    ] Launching Daemon at Mon Aug 31 04:00:54 IST 2026
[2026-08-31 04:00:54,690.690 INFO    ] ================================================
[2026-08-31 04:00:55,258.258 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:00:55
[2026-08-31 04:00:55,844.844 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:00:56,116.116 INFO    ] Initializing speech engine...
[2026-08-31 04:00:56,125.125 INFO    ] 2026-08-31 04:00:56
[2026-08-31 04:00:56,377.377 INFO    ] 2026-08-31 04:00:56
[2026-08-31 04:00:56,412.412 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:00:56,614.614 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:00:56,666.666 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:00:56,815.815 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:00:56,852.852 INFO    ] time= 31/08/2026 04:00:56
[2026-08-31 04:00:56,906.906 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:00:56,952.952 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:00:57,084.084 INFO    ] No existing commands found in stream
[2026-08-31 04:01:02,110.110 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:01:02,113.113 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-08-31 04:01:03,580.580 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 04:01:03,582.582 INFO    ] Checking for system updates...
[2026-08-31 04:01:03,622.622 INFO    ] 200
[2026-08-31 04:01:03,625.625 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:01:03,677.677 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:01:03,680.680 INFO    ] No update needed
[2026-08-31 04:01:03,682.682 INFO    ] Checking for camera pi updates...
[2026-08-31 04:01:03,716.716 INFO    ] 200
[2026-08-31 04:01:03,718.718 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:01:03,758.758 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:01:03,842.842 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:01:03,845.845 INFO    ] No camera update needed
[2026-08-31 04:01:03,847.847 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:01:03,850.850 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:01:03,855.855 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:01:03,860.860 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:01:05,903.903 INFO    ] ================================================
[2026-08-31 04:01:05,918.918 INFO    ] Launching Daemon at Mon Aug 31 04:01:05 IST 2026
[2026-08-31 04:01:05,930.930 INFO    ] ================================================
[2026-08-31 04:01:06,505.505 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:01:06
[2026-08-31 04:01:07,128.128 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:01:07,393.393 INFO    ] Initializing speech engine...
[2026-08-31 04:01:07,402.402 INFO    ] 2026-08-31 04:01:07
[2026-08-31 04:01:07,704.704 INFO    ] 2026-08-31 04:01:07
[2026-08-31 04:01:07,744.744 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:01:07,946.946 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:01:07,961.961 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:01:08,129.129 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:01:08,137.137 INFO    ] time= 31/08/2026 04:01:08
[2026-08-31 04:01:08,141.141 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:01:08,149.149 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:01:08,224.224 INFO    ] No existing commands found in stream
[2026-08-31 04:01:13,237.237 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:01:13,240.240 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-08-31 04:01:15,629.629 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 04:01:15,632.632 INFO    ] Checking for system updates...
[2026-08-31 04:01:15,668.668 INFO    ] 200
[2026-08-31 04:01:15,671.671 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:01:15,724.724 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:01:15,726.726 INFO    ] No update needed
[2026-08-31 04:01:15,729.729 INFO    ] Checking for camera pi updates...
[2026-08-31 04:01:15,763.763 INFO    ] 200
[2026-08-31 04:01:15,765.765 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:01:15,805.805 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:01:15,895.895 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:01:15,897.897 INFO    ] No camera update needed
[2026-08-31 04:01:15,900.900 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:01:15,902.902 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:01:15,908.908 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:01:15,913.913 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:01:17,953.953 INFO    ] ================================================
[2026-08-31 04:01:17,968.968 INFO    ] Launching Daemon at Mon Aug 31 04:01:17 IST 2026
[2026-08-31 04:01:17,979.979 INFO    ] ================================================
[2026-08-31 04:01:18,634.634 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:01:18
[2026-08-31 04:01:19,307.307 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:01:19,609.609 INFO    ] Initializing speech engine...
[2026-08-31 04:01:19,618.618 INFO    ] 2026-08-31 04:01:19
[2026-08-31 04:01:19,911.911 INFO    ] 2026-08-31 04:01:19
[2026-08-31 04:01:20,020.020 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:01:20,215.215 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:01:20,239.239 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:01:20,436.436 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:01:20,455.455 INFO    ] time= 31/08/2026 04:01:20
[2026-08-31 04:01:20,464.464 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:01:20,491.491 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:01:20,597.597 INFO    ] No existing commands found in stream
[2026-08-31 04:01:25,614.614 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:01:25,617.617 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-08-31 04:01:28,660.660 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 04:01:28,663.663 INFO    ] Checking for system updates...
[2026-08-31 04:01:28,704.704 INFO    ] 200
[2026-08-31 04:01:28,707.707 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:01:28,760.760 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:01:28,763.763 INFO    ] No update needed
[2026-08-31 04:01:28,766.766 INFO    ] Checking for camera pi updates...
[2026-08-31 04:01:28,804.804 INFO    ] 200
[2026-08-31 04:01:28,807.807 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:01:28,849.849 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:01:28,949.949 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:01:28,952.952 INFO    ] No camera update needed
[2026-08-31 04:01:28,955.955 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:01:28,957.957 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:01:28,964.964 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:01:28,969.969 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:01:31,011.011 INFO    ] ================================================
[2026-08-31 04:01:31,026.026 INFO    ] Launching Daemon at Mon Aug 31 04:01:31 IST 2026
[2026-08-31 04:01:31,037.037 INFO    ] ================================================
[2026-08-31 04:01:31,609.609 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:01:31
[2026-08-31 04:01:32,241.241 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:01:32,540.540 INFO    ] Initializing speech engine...
[2026-08-31 04:01:32,550.550 INFO    ] 2026-08-31 04:01:32
[2026-08-31 04:01:32,809.809 INFO    ] 2026-08-31 04:01:32
[2026-08-31 04:01:32,845.845 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:01:33,049.049 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:01:33,052.052 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:01:33,213.213 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:01:33,223.223 INFO    ] time= 31/08/2026 04:01:33
[2026-08-31 04:01:33,268.268 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:01:33,289.289 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:01:33,406.406 INFO    ] No existing commands found in stream
[2026-08-31 04:01:38,433.433 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:01:38,436.436 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-08-31 04:01:39,626.626 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 04:01:39,628.628 INFO    ] Checking for system updates...
[2026-08-31 04:01:39,664.664 INFO    ] 200
[2026-08-31 04:01:39,666.666 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:01:39,722.722 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:01:39,725.725 INFO    ] No update needed
[2026-08-31 04:01:39,727.727 INFO    ] Checking for camera pi updates...
[2026-08-31 04:01:39,760.760 INFO    ] 200
[2026-08-31 04:01:39,762.762 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:01:39,803.803 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:01:39,888.888 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:01:39,891.891 INFO    ] No camera update needed
[2026-08-31 04:01:39,893.893 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:01:39,895.895 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:01:39,901.901 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:01:39,906.906 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:01:41,945.945 INFO    ] ================================================
[2026-08-31 04:01:41,961.961 INFO    ] Launching Daemon at Mon Aug 31 04:01:41 IST 2026
[2026-08-31 04:01:41,971.971 INFO    ] ================================================
[2026-08-31 04:01:42,554.554 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:01:42
[2026-08-31 04:01:43,155.155 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:01:43,433.433 INFO    ] Initializing speech engine...
[2026-08-31 04:01:43,439.439 INFO    ] 2026-08-31 04:01:43
[2026-08-31 04:01:43,703.703 INFO    ] 2026-08-31 04:01:43
[2026-08-31 04:01:43,734.734 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:01:43,980.980 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:01:43,990.990 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:01:44,129.129 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:01:44,189.189 INFO    ] time= 31/08/2026 04:01:44
[2026-08-31 04:01:44,238.238 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:01:44,259.259 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:01:44,374.374 INFO    ] No existing commands found in stream
[2026-08-31 04:01:49,404.404 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:01:49,407.407 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-08-31 04:01:52,857.857 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 04:01:52,860.860 INFO    ] Checking for system updates...
[2026-08-31 04:01:52,896.896 INFO    ] 200
[2026-08-31 04:01:52,899.899 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:01:52,957.957 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:01:52,959.959 INFO    ] No update needed
[2026-08-31 04:01:52,962.962 INFO    ] Checking for camera pi updates...
[2026-08-31 04:01:52,998.998 INFO    ] 200
[2026-08-31 04:01:53,000.000 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:01:53,040.040 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:01:53,131.131 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:01:53,133.133 INFO    ] No camera update needed
[2026-08-31 04:01:53,135.135 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:01:53,138.138 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:01:53,143.143 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:01:53,149.149 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:01:55,190.190 INFO    ] ================================================
[2026-08-31 04:01:55,205.205 INFO    ] Launching Daemon at Mon Aug 31 04:01:55 IST 2026
[2026-08-31 04:01:55,215.215 INFO    ] ================================================
[2026-08-31 04:01:55,856.856 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:01:55
[2026-08-31 04:01:56,535.535 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:01:56,837.837 INFO    ] Initializing speech engine...
[2026-08-31 04:01:56,848.848 INFO    ] 2026-08-31 04:01:56
[2026-08-31 04:01:57,106.106 INFO    ] 2026-08-31 04:01:57
[2026-08-31 04:01:57,151.151 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:01:57,399.399 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:01:57,408.408 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:01:57,550.550 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:01:57,595.595 INFO    ] time= 31/08/2026 04:01:57
[2026-08-31 04:01:57,649.649 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:01:57,682.682 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:01:57,810.810 INFO    ] No existing commands found in stream
[2026-08-31 04:02:02,838.838 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:02:02,843.843 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-08-31 04:02:05,234.234 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 04:02:05,237.237 INFO    ] Checking for system updates...
[2026-08-31 04:02:05,273.273 INFO    ] 200
[2026-08-31 04:02:05,276.276 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:02:05,334.334 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:02:05,336.336 INFO    ] No update needed
[2026-08-31 04:02:05,339.339 INFO    ] Checking for camera pi updates...
[2026-08-31 04:02:05,377.377 INFO    ] 200
[2026-08-31 04:02:05,380.380 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:02:05,421.421 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:02:05,498.498 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:02:05,501.501 INFO    ] No camera update needed
[2026-08-31 04:02:05,504.504 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:02:05,506.506 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:02:05,512.512 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:02:05,518.518 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:02:07,559.559 INFO    ] ================================================
[2026-08-31 04:02:07,575.575 INFO    ] Launching Daemon at Mon Aug 31 04:02:07 IST 2026
[2026-08-31 04:02:07,586.586 INFO    ] ================================================
[2026-08-31 04:02:08,185.185 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:02:08
[2026-08-31 04:02:08,783.783 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:02:09,045.045 INFO    ] Initializing speech engine...
[2026-08-31 04:02:09,060.060 INFO    ] 2026-08-31 04:02:09
[2026-08-31 04:02:09,342.342 INFO    ] 2026-08-31 04:02:09
[2026-08-31 04:02:09,381.381 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:02:09,641.641 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:02:09,666.666 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:02:09,819.819 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:02:09,846.846 INFO    ] time= 31/08/2026 04:02:09
[2026-08-31 04:02:09,900.900 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:02:09,955.955 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:02:10,080.080 INFO    ] No existing commands found in stream
[2026-08-31 04:02:15,105.105 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:02:15,109.109 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-08-31 04:02:18,505.505 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 04:02:18,508.508 INFO    ] Checking for system updates...
[2026-08-31 04:02:18,544.544 INFO    ] 200
[2026-08-31 04:02:18,547.547 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:02:18,603.603 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:02:18,606.606 INFO    ] No update needed
[2026-08-31 04:02:18,612.612 INFO    ] Checking for camera pi updates...
[2026-08-31 04:02:18,649.649 INFO    ] 200
[2026-08-31 04:02:18,652.652 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:02:18,700.700 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:02:18,752.752 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:02:18,755.755 INFO    ] No camera update needed
[2026-08-31 04:02:18,757.757 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:02:18,760.760 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:02:18,766.766 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:02:18,772.772 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:02:20,816.816 INFO    ] ================================================
[2026-08-31 04:02:20,832.832 INFO    ] Launching Daemon at Mon Aug 31 04:02:20 IST 2026
[2026-08-31 04:02:20,843.843 INFO    ] ================================================
[2026-08-31 04:02:21,423.423 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:02:21
[2026-08-31 04:02:22,022.022 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:02:22,282.282 INFO    ] Initializing speech engine...
[2026-08-31 04:02:22,291.291 INFO    ] 2026-08-31 04:02:22
[2026-08-31 04:02:22,584.584 INFO    ] 2026-08-31 04:02:22
[2026-08-31 04:02:22,621.621 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:02:22,817.817 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:02:22,831.831 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:02:22,989.989 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:02:22,997.997 INFO    ] time= 31/08/2026 04:02:22
[2026-08-31 04:02:23,005.005 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:02:23,032.032 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:02:23,168.168 INFO    ] No existing commands found in stream
[2026-08-31 04:02:28,193.193 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:02:28,196.196 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-08-31 04:02:29,331.331 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 04:02:29,334.334 INFO    ] Checking for system updates...
[2026-08-31 04:02:29,369.369 INFO    ] 200
[2026-08-31 04:02:29,372.372 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:02:29,424.424 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:02:29,426.426 INFO    ] No update needed
[2026-08-31 04:02:29,429.429 INFO    ] Checking for camera pi updates...
[2026-08-31 04:02:29,464.464 INFO    ] 200
[2026-08-31 04:02:29,466.466 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:02:29,508.508 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:02:29,710.710 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:02:29,712.712 INFO    ] No camera update needed
[2026-08-31 04:02:29,715.715 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:02:29,718.718 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:02:29,724.724 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:02:29,730.730 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:02:31,774.774 INFO    ] ================================================
[2026-08-31 04:02:31,789.789 INFO    ] Launching Daemon at Mon Aug 31 04:02:31 IST 2026
[2026-08-31 04:02:31,800.800 INFO    ] ================================================
[2026-08-31 04:02:32,414.414 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:02:32
[2026-08-31 04:02:33,048.048 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:02:33,331.331 INFO    ] Initializing speech engine...
[2026-08-31 04:02:33,341.341 INFO    ] 2026-08-31 04:02:33
[2026-08-31 04:02:33,590.590 INFO    ] 2026-08-31 04:02:33
[2026-08-31 04:02:33,627.627 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:02:33,882.882 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:02:33,891.891 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:02:34,026.026 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:02:34,091.091 INFO    ] time= 31/08/2026 04:02:34
[2026-08-31 04:02:34,153.153 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:02:34,160.160 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:02:34,290.290 INFO    ] No existing commands found in stream
[2026-08-31 04:02:39,314.314 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:02:39,317.317 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-08-31 04:02:42,024.024 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 04:02:42,026.026 INFO    ] Checking for system updates...
[2026-08-31 04:02:42,064.064 INFO    ] 200
[2026-08-31 04:02:42,066.066 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:02:42,119.119 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:02:42,122.122 INFO    ] No update needed
[2026-08-31 04:02:42,124.124 INFO    ] Checking for camera pi updates...
[2026-08-31 04:02:42,159.159 INFO    ] 200
[2026-08-31 04:02:42,162.162 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:02:42,207.207 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:02:42,295.295 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:02:42,298.298 INFO    ] No camera update needed
[2026-08-31 04:02:42,300.300 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:02:42,303.303 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:02:42,308.308 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:02:42,313.313 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:02:44,354.354 INFO    ] ================================================
[2026-08-31 04:02:44,369.369 INFO    ] Launching Daemon at Mon Aug 31 04:02:44 IST 2026
[2026-08-31 04:02:44,384.384 INFO    ] ================================================
[2026-08-31 04:02:44,965.965 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:02:44
[2026-08-31 04:02:45,561.561 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:02:45,837.837 INFO    ] Initializing speech engine...
[2026-08-31 04:02:45,844.844 INFO    ] 2026-08-31 04:02:45
[2026-08-31 04:02:46,104.104 INFO    ] 2026-08-31 04:02:46
[2026-08-31 04:02:46,134.134 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:02:46,324.324 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:02:46,383.383 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:02:46,523.523 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:02:46,593.593 INFO    ] time= 31/08/2026 04:02:46
[2026-08-31 04:02:46,643.643 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:02:46,656.656 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:02:46,786.786 INFO    ] No existing commands found in stream
[2026-08-31 04:02:51,812.812 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:02:51,814.814 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-08-31 04:02:53,491.491 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 04:02:53,493.493 INFO    ] Checking for system updates...
[2026-08-31 04:02:53,529.529 INFO    ] 200
[2026-08-31 04:02:53,532.532 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:02:53,609.609 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:02:53,612.612 INFO    ] No update needed
[2026-08-31 04:02:53,615.615 INFO    ] Checking for camera pi updates...
[2026-08-31 04:02:53,648.648 INFO    ] 200
[2026-08-31 04:02:53,651.651 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:02:53,697.697 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:02:53,802.802 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:02:53,805.805 INFO    ] No camera update needed
[2026-08-31 04:02:53,807.807 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:02:53,809.809 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:02:53,814.814 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:02:53,820.820 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:02:55,861.861 INFO    ] ================================================
[2026-08-31 04:02:55,876.876 INFO    ] Launching Daemon at Mon Aug 31 04:02:55 IST 2026
[2026-08-31 04:02:55,886.886 INFO    ] ================================================
[2026-08-31 04:02:56,470.470 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:02:56
[2026-08-31 04:02:57,068.068 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:02:57,345.345 INFO    ] Initializing speech engine...
[2026-08-31 04:02:57,350.350 INFO    ] 2026-08-31 04:02:57
[2026-08-31 04:02:57,599.599 INFO    ] 2026-08-31 04:02:57
[2026-08-31 04:02:57,635.635 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:02:57,807.807 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:02:57,819.819 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:02:57,963.963 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:02:57,970.970 INFO    ] time= 31/08/2026 04:02:57
[2026-08-31 04:02:58,016.016 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:02:58,036.036 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:02:58,142.142 INFO    ] No existing commands found in stream
[2026-08-31 04:03:03,170.170 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:03:03,172.172 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-08-31 04:03:06,491.491 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 04:03:06,494.494 INFO    ] Checking for system updates...
[2026-08-31 04:03:06,529.529 INFO    ] 200
[2026-08-31 04:03:06,532.532 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:03:06,588.588 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:03:06,590.590 INFO    ] No update needed
[2026-08-31 04:03:06,593.593 INFO    ] Checking for camera pi updates...
[2026-08-31 04:03:06,626.626 INFO    ] 200
[2026-08-31 04:03:06,629.629 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:03:06,669.669 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:03:06,764.764 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:03:06,767.767 INFO    ] No camera update needed
[2026-08-31 04:03:06,769.769 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:03:06,772.772 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:03:06,777.777 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:03:06,782.782 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:03:08,823.823 INFO    ] ================================================
[2026-08-31 04:03:08,838.838 INFO    ] Launching Daemon at Mon Aug 31 04:03:08 IST 2026
[2026-08-31 04:03:08,849.849 INFO    ] ================================================
[2026-08-31 04:03:09,497.497 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:03:09
[2026-08-31 04:03:10,154.154 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:03:10,450.450 INFO    ] Initializing speech engine...
[2026-08-31 04:03:10,456.456 INFO    ] 2026-08-31 04:03:10
[2026-08-31 04:03:10,715.715 INFO    ] 2026-08-31 04:03:10
[2026-08-31 04:03:10,769.769 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:03:11,015.015 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:03:11,021.021 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:03:11,224.224 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:03:11,253.253 INFO    ] time= 31/08/2026 04:03:11
[2026-08-31 04:03:11,259.259 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:03:11,276.276 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:03:11,406.406 INFO    ] No existing commands found in stream
[2026-08-31 04:03:16,418.418 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:03:16,421.421 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-08-31 04:03:19,986.986 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 04:03:19,989.989 INFO    ] Checking for system updates...
[2026-08-31 04:03:20,024.024 INFO    ] 200
[2026-08-31 04:03:20,026.026 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:03:20,086.086 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:03:20,089.089 INFO    ] No update needed
[2026-08-31 04:03:20,091.091 INFO    ] Checking for camera pi updates...
[2026-08-31 04:03:20,125.125 INFO    ] 200
[2026-08-31 04:03:20,128.128 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:03:20,172.172 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:03:20,252.252 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:03:20,254.254 INFO    ] No camera update needed
[2026-08-31 04:03:20,256.256 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:03:20,259.259 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:03:20,264.264 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:03:20,269.269 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:03:22,310.310 INFO    ] ================================================
[2026-08-31 04:03:22,325.325 INFO    ] Launching Daemon at Mon Aug 31 04:03:22 IST 2026
[2026-08-31 04:03:22,336.336 INFO    ] ================================================
[2026-08-31 04:03:22,919.919 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:03:22
[2026-08-31 04:03:23,518.518 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:03:23,770.770 INFO    ] Initializing speech engine...
[2026-08-31 04:03:23,778.778 INFO    ] 2026-08-31 04:03:23
[2026-08-31 04:03:24,067.067 INFO    ] 2026-08-31 04:03:24
[2026-08-31 04:03:24,105.105 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:03:24,298.298 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:03:24,314.314 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:03:24,470.470 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:03:24,478.478 INFO    ] time= 31/08/2026 04:03:24
[2026-08-31 04:03:24,483.483 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:03:24,491.491 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:03:24,563.563 INFO    ] No existing commands found in stream
[2026-08-31 04:03:29,593.593 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:03:29,596.596 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-08-31 04:03:31,738.738 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 04:03:31,741.741 INFO    ] Checking for system updates...
[2026-08-31 04:03:31,785.785 INFO    ] 200
[2026-08-31 04:03:31,788.788 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:03:31,845.845 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:03:31,848.848 INFO    ] No update needed
[2026-08-31 04:03:31,851.851 INFO    ] Checking for camera pi updates...
[2026-08-31 04:03:31,889.889 INFO    ] 200
[2026-08-31 04:03:31,892.892 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:03:31,941.941 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:03:32,004.004 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:03:32,007.007 INFO    ] No camera update needed
[2026-08-31 04:03:32,010.010 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:03:32,012.012 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:03:32,018.018 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:03:32,024.024 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:03:34,065.065 INFO    ] ================================================
[2026-08-31 04:03:34,080.080 INFO    ] Launching Daemon at Mon Aug 31 04:03:34 IST 2026
[2026-08-31 04:03:34,091.091 INFO    ] ================================================
[2026-08-31 04:03:34,665.665 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:03:34
[2026-08-31 04:03:35,249.249 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:03:35,498.498 INFO    ] Initializing speech engine...
[2026-08-31 04:03:35,506.506 INFO    ] 2026-08-31 04:03:35
[2026-08-31 04:03:35,795.795 INFO    ] 2026-08-31 04:03:35
[2026-08-31 04:03:35,831.831 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:03:36,035.035 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:03:36,094.094 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:03:36,236.236 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:03:36,297.297 INFO    ] time= 31/08/2026 04:03:36
[2026-08-31 04:03:36,346.346 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:03:36,370.370 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:03:36,502.502 INFO    ] No existing commands found in stream
[2026-08-31 04:03:41,526.526 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:03:41,529.529 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-08-31 04:03:42,270.270 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 04:03:42,273.273 INFO    ] Checking for system updates...
[2026-08-31 04:03:42,308.308 INFO    ] 200
[2026-08-31 04:03:42,311.311 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:03:42,362.362 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:03:42,365.365 INFO    ] No update needed
[2026-08-31 04:03:42,367.367 INFO    ] Checking for camera pi updates...
[2026-08-31 04:03:42,400.400 INFO    ] 200
[2026-08-31 04:03:42,403.403 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:03:42,443.443 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:03:42,545.545 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:03:42,548.548 INFO    ] No camera update needed
[2026-08-31 04:03:42,551.551 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:03:42,553.553 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:03:42,558.558 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:03:42,563.563 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:03:44,605.605 INFO    ] ================================================
[2026-08-31 04:03:44,620.620 INFO    ] Launching Daemon at Mon Aug 31 04:03:44 IST 2026
[2026-08-31 04:03:44,630.630 INFO    ] ================================================
[2026-08-31 04:03:45,212.212 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:03:45
[2026-08-31 04:03:45,825.825 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:03:46,102.102 INFO    ] Initializing speech engine...
[2026-08-31 04:03:46,109.109 INFO    ] 2026-08-31 04:03:46
[2026-08-31 04:03:46,372.372 INFO    ] 2026-08-31 04:03:46
[2026-08-31 04:03:46,426.426 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:03:46,644.644 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:03:46,654.654 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:03:46,787.787 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:03:46,828.828 INFO    ] time= 31/08/2026 04:03:46
[2026-08-31 04:03:46,887.887 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:03:46,919.919 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:03:47,063.063 INFO    ] No existing commands found in stream
[2026-08-31 04:03:52,079.079 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:03:52,082.082 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-08-31 04:03:53,387.387 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 04:03:53,390.390 INFO    ] Checking for system updates...
[2026-08-31 04:03:53,426.426 INFO    ] 200
[2026-08-31 04:03:53,428.428 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:03:53,480.480 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:03:53,482.482 INFO    ] No update needed
[2026-08-31 04:03:53,485.485 INFO    ] Checking for camera pi updates...
[2026-08-31 04:03:53,521.521 INFO    ] 200
[2026-08-31 04:03:53,524.524 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:03:53,564.564 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:03:53,660.660 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:03:53,662.662 INFO    ] No camera update needed
[2026-08-31 04:03:53,665.665 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:03:53,667.667 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:03:53,673.673 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:03:53,678.678 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:03:55,718.718 INFO    ] ================================================
[2026-08-31 04:03:55,733.733 INFO    ] Launching Daemon at Mon Aug 31 04:03:55 IST 2026
[2026-08-31 04:03:55,744.744 INFO    ] ================================================
[2026-08-31 04:03:56,329.329 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:03:56
[2026-08-31 04:03:56,943.943 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:03:57,208.208 INFO    ] Initializing speech engine...
[2026-08-31 04:03:57,232.232 INFO    ] 2026-08-31 04:03:57
[2026-08-31 04:03:57,512.512 INFO    ] 2026-08-31 04:03:57
[2026-08-31 04:03:57,557.557 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:03:57,779.779 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:03:57,785.785 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:03:57,918.918 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:03:57,925.925 INFO    ] time= 31/08/2026 04:03:57
[2026-08-31 04:03:57,965.965 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:03:57,992.992 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:03:58,088.088 INFO    ] No existing commands found in stream
[2026-08-31 04:04:03,110.110 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:04:03,113.113 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-08-31 04:04:03,776.776 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 04:04:03,778.778 INFO    ] Checking for system updates...
[2026-08-31 04:04:03,814.814 INFO    ] 200
[2026-08-31 04:04:03,816.816 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:04:03,872.872 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:04:03,874.874 INFO    ] No update needed
[2026-08-31 04:04:03,877.877 INFO    ] Checking for camera pi updates...
[2026-08-31 04:04:03,910.910 INFO    ] 200
[2026-08-31 04:04:03,912.912 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:04:03,952.952 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:04:04,050.050 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:04:04,053.053 INFO    ] No camera update needed
[2026-08-31 04:04:04,055.055 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:04:04,058.058 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:04:04,063.063 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:04:04,068.068 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:04:06,108.108 INFO    ] ================================================
[2026-08-31 04:04:06,123.123 INFO    ] Launching Daemon at Mon Aug 31 04:04:06 IST 2026
[2026-08-31 04:04:06,133.133 INFO    ] ================================================
[2026-08-31 04:04:06,754.754 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:04:06
[2026-08-31 04:04:07,353.353 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:04:07,608.608 INFO    ] Initializing speech engine...
[2026-08-31 04:04:07,616.616 INFO    ] 2026-08-31 04:04:07
[2026-08-31 04:04:07,901.901 INFO    ] 2026-08-31 04:04:07
[2026-08-31 04:04:07,939.939 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:04:08,199.199 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:04:08,209.209 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:04:08,347.347 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:04:08,412.412 INFO    ] time= 31/08/2026 04:04:08
[2026-08-31 04:04:08,462.462 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:04:08,482.482 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:04:08,596.596 INFO    ] No existing commands found in stream
[2026-08-31 04:04:13,619.619 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:04:13,622.622 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-08-31 04:04:15,885.885 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 04:04:15,888.888 INFO    ] Checking for system updates...
[2026-08-31 04:04:15,924.924 INFO    ] 200
[2026-08-31 04:04:15,928.928 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:04:15,980.980 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:04:15,983.983 INFO    ] No update needed
[2026-08-31 04:04:15,986.986 INFO    ] Checking for camera pi updates...
[2026-08-31 04:04:16,023.023 INFO    ] 200
[2026-08-31 04:04:16,025.025 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:04:16,070.070 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:04:16,154.154 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:04:16,156.156 INFO    ] No camera update needed
[2026-08-31 04:04:16,159.159 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:04:16,161.161 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:04:16,167.167 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:04:16,174.174 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:04:18,216.216 INFO    ] ================================================
[2026-08-31 04:04:18,230.230 INFO    ] Launching Daemon at Mon Aug 31 04:04:18 IST 2026
[2026-08-31 04:04:18,241.241 INFO    ] ================================================
[2026-08-31 04:04:18,807.807 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:04:18
[2026-08-31 04:04:19,392.392 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:04:19,674.674 INFO    ] Initializing speech engine...
[2026-08-31 04:04:19,683.683 INFO    ] 2026-08-31 04:04:19
[2026-08-31 04:04:19,949.949 INFO    ] 2026-08-31 04:04:19
[2026-08-31 04:04:19,984.984 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:04:20,182.182 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:04:20,198.198 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:04:20,364.364 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:04:20,372.372 INFO    ] time= 31/08/2026 04:04:20
[2026-08-31 04:04:20,399.399 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:04:20,447.447 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:04:20,591.591 INFO    ] No existing commands found in stream
[2026-08-31 04:04:25,603.603 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:04:25,606.606 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-08-31 04:04:29,019.019 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 04:04:29,022.022 INFO    ] Checking for system updates...
[2026-08-31 04:04:29,057.057 INFO    ] 200
[2026-08-31 04:04:29,060.060 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:04:29,111.111 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:04:29,114.114 INFO    ] No update needed
[2026-08-31 04:04:29,116.116 INFO    ] Checking for camera pi updates...
[2026-08-31 04:04:29,149.149 INFO    ] 200
[2026-08-31 04:04:29,151.151 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:04:29,191.191 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:04:29,292.292 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:04:29,294.294 INFO    ] No camera update needed
[2026-08-31 04:04:29,297.297 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:04:29,299.299 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:04:29,304.304 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:04:29,309.309 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:04:31,351.351 INFO    ] ================================================
[2026-08-31 04:04:31,366.366 INFO    ] Launching Daemon at Mon Aug 31 04:04:31 IST 2026
[2026-08-31 04:04:31,377.377 INFO    ] ================================================
[2026-08-31 04:04:31,992.992 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:04:31
[2026-08-31 04:04:32,622.622 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:04:32,927.927 INFO    ] Initializing speech engine...
[2026-08-31 04:04:32,935.935 INFO    ] 2026-08-31 04:04:32
[2026-08-31 04:04:33,196.196 INFO    ] 2026-08-31 04:04:33
[2026-08-31 04:04:33,249.249 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:04:33,475.475 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:04:33,484.484 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:04:33,616.616 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:04:33,664.664 INFO    ] time= 31/08/2026 04:04:33
[2026-08-31 04:04:33,713.713 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:04:33,751.751 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:04:33,878.878 INFO    ] No existing commands found in stream
[2026-08-31 04:04:38,909.909 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:04:38,912.912 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-08-31 04:04:41,656.656 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 04:04:41,658.658 INFO    ] Checking for system updates...
[2026-08-31 04:04:41,694.694 INFO    ] 200
[2026-08-31 04:04:41,696.696 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:04:41,753.753 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:04:41,755.755 INFO    ] No update needed
[2026-08-31 04:04:41,758.758 INFO    ] Checking for camera pi updates...
[2026-08-31 04:04:41,791.791 INFO    ] 200
[2026-08-31 04:04:41,793.793 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:04:41,837.837 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:04:41,936.936 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:04:41,938.938 INFO    ] No camera update needed
[2026-08-31 04:04:41,941.941 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:04:41,943.943 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:04:41,948.948 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:04:41,953.953 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:04:43,993.993 INFO    ] ================================================
[2026-08-31 04:04:44,008.008 INFO    ] Launching Daemon at Mon Aug 31 04:04:44 IST 2026
[2026-08-31 04:04:44,018.018 INFO    ] ================================================
[2026-08-31 04:04:44,596.596 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:04:44
[2026-08-31 04:04:45,194.194 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:04:45,466.466 INFO    ] Initializing speech engine...
[2026-08-31 04:04:45,477.477 INFO    ] 2026-08-31 04:04:45
[2026-08-31 04:04:45,729.729 INFO    ] 2026-08-31 04:04:45
[2026-08-31 04:04:45,764.764 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:04:46,016.016 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:04:46,026.026 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:04:46,159.159 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:04:46,224.224 INFO    ] time= 31/08/2026 04:04:46
[2026-08-31 04:04:46,283.283 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:04:46,292.292 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:04:46,435.435 INFO    ] No existing commands found in stream
[2026-08-31 04:04:51,449.449 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:04:51,451.451 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-08-31 04:04:53,107.107 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 04:04:53,110.110 INFO    ] Checking for system updates...
[2026-08-31 04:04:53,149.149 INFO    ] 200
[2026-08-31 04:04:53,152.152 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:04:53,215.215 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:04:53,218.218 INFO    ] No update needed
[2026-08-31 04:04:53,221.221 INFO    ] Checking for camera pi updates...
[2026-08-31 04:04:53,254.254 INFO    ] 200
[2026-08-31 04:04:53,257.257 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:04:53,302.302 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:04:53,386.386 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:04:53,389.389 INFO    ] No camera update needed
[2026-08-31 04:04:53,392.392 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:04:53,394.394 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:04:53,400.400 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:04:53,406.406 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:04:55,448.448 INFO    ] ================================================
[2026-08-31 04:04:55,463.463 INFO    ] Launching Daemon at Mon Aug 31 04:04:55 IST 2026
[2026-08-31 04:04:55,474.474 INFO    ] ================================================
[2026-08-31 04:04:56,053.053 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:04:56
[2026-08-31 04:04:56,651.651 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:04:56,924.924 INFO    ] Initializing speech engine...
[2026-08-31 04:04:56,934.934 INFO    ] 2026-08-31 04:04:56
[2026-08-31 04:04:57,183.183 INFO    ] 2026-08-31 04:04:57
[2026-08-31 04:04:57,249.249 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:04:57,476.476 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:04:57,482.482 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:04:57,612.612 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:04:57,670.670 INFO    ] time= 31/08/2026 04:04:57
[2026-08-31 04:04:57,734.734 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:04:57,749.749 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:04:57,884.884 INFO    ] No existing commands found in stream
[2026-08-31 04:05:02,900.900 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:05:02,902.902 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-08-31 04:05:05,949.949 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 04:05:05,952.952 INFO    ] Checking for system updates...
[2026-08-31 04:05:05,988.988 INFO    ] 200
[2026-08-31 04:05:05,991.991 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:05:06,047.047 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:05:06,049.049 INFO    ] No update needed
[2026-08-31 04:05:06,052.052 INFO    ] Checking for camera pi updates...
[2026-08-31 04:05:06,085.085 INFO    ] 200
[2026-08-31 04:05:06,088.088 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:05:06,128.128 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:05:06,218.218 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:05:06,221.221 INFO    ] No camera update needed
[2026-08-31 04:05:06,223.223 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:05:06,225.225 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:05:06,231.231 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:05:06,236.236 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:05:08,278.278 INFO    ] ================================================
[2026-08-31 04:05:08,293.293 INFO    ] Launching Daemon at Mon Aug 31 04:05:08 IST 2026
[2026-08-31 04:05:08,304.304 INFO    ] ================================================
[2026-08-31 04:05:08,884.884 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:05:08
[2026-08-31 04:05:09,482.482 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:05:09,787.787 INFO    ] Initializing speech engine...
[2026-08-31 04:05:09,801.801 INFO    ] 2026-08-31 04:05:09
[2026-08-31 04:05:10,114.114 INFO    ] 2026-08-31 04:05:10
[2026-08-31 04:05:10,198.198 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:05:10,415.415 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:05:10,422.422 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:05:10,614.614 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:05:10,622.622 INFO    ] time= 31/08/2026 04:05:10
[2026-08-31 04:05:10,643.643 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:05:10,671.671 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:05:10,759.759 INFO    ] No existing commands found in stream
[2026-08-31 04:05:15,788.788 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:05:15,791.791 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-08-31 04:05:19,629.629 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 04:05:19,686.686 INFO    ] Checking for system updates...
[2026-08-31 04:05:19,728.728 INFO    ] 200
[2026-08-31 04:05:19,730.730 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:05:19,783.783 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:05:19,785.785 INFO    ] No update needed
[2026-08-31 04:05:19,787.787 INFO    ] Checking for camera pi updates...
[2026-08-31 04:05:19,825.825 INFO    ] 200
[2026-08-31 04:05:19,828.828 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:05:19,869.869 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:05:19,956.956 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:05:19,959.959 INFO    ] No camera update needed
[2026-08-31 04:05:19,962.962 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:05:19,965.965 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:05:19,971.971 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:05:19,977.977 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:05:22,018.018 INFO    ] ================================================
[2026-08-31 04:05:22,033.033 INFO    ] Launching Daemon at Mon Aug 31 04:05:22 IST 2026
[2026-08-31 04:05:22,044.044 INFO    ] ================================================
[2026-08-31 04:05:22,732.732 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:05:22
[2026-08-31 04:05:23,418.418 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:05:23,746.746 INFO    ] Initializing speech engine...
[2026-08-31 04:05:23,755.755 INFO    ] 2026-08-31 04:05:23
[2026-08-31 04:05:24,050.050 INFO    ] 2026-08-31 04:05:24
[2026-08-31 04:05:24,129.129 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:05:24,286.286 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:05:24,298.298 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:05:24,506.506 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:05:24,550.550 INFO    ] time= 31/08/2026 04:05:24
[2026-08-31 04:05:24,566.566 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:05:24,576.576 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:05:24,681.681 INFO    ] No existing commands found in stream
[2026-08-31 04:05:29,714.714 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:05:29,717.717 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-08-31 04:05:32,663.663 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 04:05:32,666.666 INFO    ] Checking for system updates...
[2026-08-31 04:05:32,703.703 INFO    ] 200
[2026-08-31 04:05:32,706.706 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:05:32,759.759 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:05:32,762.762 INFO    ] No update needed
[2026-08-31 04:05:32,765.765 INFO    ] Checking for camera pi updates...
[2026-08-31 04:05:32,800.800 INFO    ] 200
[2026-08-31 04:05:32,803.803 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:05:32,844.844 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:05:32,934.934 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:05:32,936.936 INFO    ] No camera update needed
[2026-08-31 04:05:32,939.939 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:05:32,942.942 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:05:32,948.948 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:05:32,954.954 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:05:35,000.000 INFO    ] ================================================
[2026-08-31 04:05:35,016.016 INFO    ] Launching Daemon at Mon Aug 31 04:05:35 IST 2026
[2026-08-31 04:05:35,027.027 INFO    ] ================================================
[2026-08-31 04:05:35,624.624 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:05:35
[2026-08-31 04:05:36,226.226 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:05:36,486.486 INFO    ] Initializing speech engine...
[2026-08-31 04:05:36,492.492 INFO    ] 2026-08-31 04:05:36
[2026-08-31 04:05:36,792.792 INFO    ] 2026-08-31 04:05:36
[2026-08-31 04:05:36,818.818 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:05:37,025.025 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:05:37,042.042 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:05:37,207.207 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:05:37,213.213 INFO    ] time= 31/08/2026 04:05:37
[2026-08-31 04:05:37,219.219 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:05:37,272.272 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:05:37,397.397 INFO    ] No existing commands found in stream
[2026-08-31 04:05:42,422.422 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:05:42,425.425 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-08-31 04:05:45,761.761 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 04:05:45,764.764 INFO    ] Checking for system updates...
[2026-08-31 04:05:45,799.799 INFO    ] 200
[2026-08-31 04:05:45,802.802 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:05:45,864.864 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:05:45,866.866 INFO    ] No update needed
[2026-08-31 04:05:45,869.869 INFO    ] Checking for camera pi updates...
[2026-08-31 04:05:45,902.902 INFO    ] 200
[2026-08-31 04:05:45,905.905 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:05:45,945.945 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:05:46,026.026 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:05:46,029.029 INFO    ] No camera update needed
[2026-08-31 04:05:46,031.031 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:05:46,034.034 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:05:46,040.040 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:05:46,046.046 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:05:48,087.087 INFO    ] ================================================
[2026-08-31 04:05:48,103.103 INFO    ] Launching Daemon at Mon Aug 31 04:05:48 IST 2026
[2026-08-31 04:05:48,114.114 INFO    ] ================================================
[2026-08-31 04:05:48,682.682 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:05:48
[2026-08-31 04:05:49,267.267 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:05:49,537.537 INFO    ] Initializing speech engine...
[2026-08-31 04:05:49,545.545 INFO    ] 2026-08-31 04:05:49
[2026-08-31 04:05:49,796.796 INFO    ] 2026-08-31 04:05:49
[2026-08-31 04:05:49,839.839 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:05:50,095.095 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:05:50,101.101 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:05:50,230.230 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:05:50,272.272 INFO    ] time= 31/08/2026 04:05:50
[2026-08-31 04:05:50,331.331 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:05:50,364.364 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:05:50,502.502 INFO    ] No existing commands found in stream
[2026-08-31 04:05:55,527.527 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:05:55,530.530 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-08-31 04:05:56,781.781 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 04:05:56,783.783 INFO    ] Checking for system updates...
[2026-08-31 04:05:56,819.819 INFO    ] 200
[2026-08-31 04:05:56,821.821 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:05:56,874.874 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:05:56,876.876 INFO    ] No update needed
[2026-08-31 04:05:56,879.879 INFO    ] Checking for camera pi updates...
[2026-08-31 04:05:56,916.916 INFO    ] 200
[2026-08-31 04:05:56,919.919 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:05:56,963.963 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:05:57,061.061 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:05:57,064.064 INFO    ] No camera update needed
[2026-08-31 04:05:57,066.066 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:05:57,069.069 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:05:57,074.074 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:05:57,079.079 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:05:59,121.121 INFO    ] ================================================
[2026-08-31 04:05:59,137.137 INFO    ] Launching Daemon at Mon Aug 31 04:05:59 IST 2026
[2026-08-31 04:05:59,148.148 INFO    ] ================================================
[2026-08-31 04:05:59,721.721 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:05:59
[2026-08-31 04:06:00,307.307 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:06:00,578.578 INFO    ] Initializing speech engine...
[2026-08-31 04:06:00,588.588 INFO    ] 2026-08-31 04:06:00
[2026-08-31 04:06:00,837.837 INFO    ] 2026-08-31 04:06:00
[2026-08-31 04:06:00,872.872 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:06:01,129.129 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:06:01,138.138 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:06:01,275.275 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:06:01,340.340 INFO    ] time= 31/08/2026 04:06:01
[2026-08-31 04:06:01,394.394 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:06:01,418.418 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:06:01,535.535 INFO    ] No existing commands found in stream
[2026-08-31 04:06:06,559.559 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:06:06,562.562 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-08-31 04:06:08,297.297 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 04:06:08,300.300 INFO    ] Checking for system updates...
[2026-08-31 04:06:08,335.335 INFO    ] 200
[2026-08-31 04:06:08,337.337 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:06:08,391.391 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:06:08,394.394 INFO    ] No update needed
[2026-08-31 04:06:08,396.396 INFO    ] Checking for camera pi updates...
[2026-08-31 04:06:08,429.429 INFO    ] 200
[2026-08-31 04:06:08,431.431 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:06:08,473.473 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:06:08,603.603 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:06:08,605.605 INFO    ] No camera update needed
[2026-08-31 04:06:08,607.607 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:06:08,610.610 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:06:08,615.615 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:06:08,620.620 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:06:10,661.661 INFO    ] ================================================
[2026-08-31 04:06:10,677.677 INFO    ] Launching Daemon at Mon Aug 31 04:06:10 IST 2026
[2026-08-31 04:06:10,688.688 INFO    ] ================================================
[2026-08-31 04:06:11,260.260 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:06:11
[2026-08-31 04:06:11,843.843 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:06:12,091.091 INFO    ] Initializing speech engine...
[2026-08-31 04:06:12,114.114 INFO    ] 2026-08-31 04:06:12
[2026-08-31 04:06:12,366.366 INFO    ] 2026-08-31 04:06:12
[2026-08-31 04:06:12,401.401 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:06:12,604.604 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:06:12,606.606 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:06:12,797.797 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:06:12,818.818 INFO    ] time= 31/08/2026 04:06:12
[2026-08-31 04:06:12,878.878 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:06:12,927.927 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:06:13,079.079 INFO    ] No existing commands found in stream
[2026-08-31 04:06:18,097.097 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:06:18,100.100 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-08-31 04:06:19,927.927 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 04:06:19,930.930 INFO    ] Checking for system updates...
[2026-08-31 04:06:19,982.982 INFO    ] 200
[2026-08-31 04:06:19,984.984 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:06:20,036.036 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:06:20,038.038 INFO    ] No update needed
[2026-08-31 04:06:20,041.041 INFO    ] Checking for camera pi updates...
[2026-08-31 04:06:20,074.074 INFO    ] 200
[2026-08-31 04:06:20,076.076 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:06:20,115.115 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:06:20,199.199 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:06:20,201.201 INFO    ] No camera update needed
[2026-08-31 04:06:20,204.204 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:06:20,206.206 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:06:20,211.211 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:06:20,216.216 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:06:22,258.258 INFO    ] ================================================
[2026-08-31 04:06:22,273.273 INFO    ] Launching Daemon at Mon Aug 31 04:06:22 IST 2026
[2026-08-31 04:06:22,285.285 INFO    ] ================================================
[2026-08-31 04:06:22,855.855 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:06:22
[2026-08-31 04:06:23,446.446 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:06:23,718.718 INFO    ] Initializing speech engine...
[2026-08-31 04:06:23,729.729 INFO    ] 2026-08-31 04:06:23
[2026-08-31 04:06:23,990.990 INFO    ] 2026-08-31 04:06:23
[2026-08-31 04:06:24,020.020 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:06:24,264.264 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:06:24,273.273 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:06:24,406.406 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:06:24,446.446 INFO    ] time= 31/08/2026 04:06:24
[2026-08-31 04:06:24,506.506 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:06:24,537.537 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:06:24,684.684 INFO    ] No existing commands found in stream
[2026-08-31 04:06:29,697.697 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:06:29,700.700 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-08-31 04:06:32,261.261 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 04:06:32,264.264 INFO    ] Checking for system updates...
[2026-08-31 04:06:32,302.302 INFO    ] 200
[2026-08-31 04:06:32,305.305 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:06:32,362.362 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:06:32,365.365 INFO    ] No update needed
[2026-08-31 04:06:32,368.368 INFO    ] Checking for camera pi updates...
[2026-08-31 04:06:32,409.409 INFO    ] 200
[2026-08-31 04:06:32,411.411 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:06:32,458.458 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:06:32,510.510 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:06:32,513.513 INFO    ] No camera update needed
[2026-08-31 04:06:32,516.516 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:06:32,519.519 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:06:32,525.525 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:06:32,531.531 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:06:34,574.574 INFO    ] ================================================
[2026-08-31 04:06:34,590.590 INFO    ] Launching Daemon at Mon Aug 31 04:06:34 IST 2026
[2026-08-31 04:06:34,601.601 INFO    ] ================================================
[2026-08-31 04:06:35,166.166 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:06:35
[2026-08-31 04:06:35,748.748 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:06:36,022.022 INFO    ] Initializing speech engine...
[2026-08-31 04:06:36,028.028 INFO    ] 2026-08-31 04:06:36
[2026-08-31 04:06:36,280.280 INFO    ] 2026-08-31 04:06:36
[2026-08-31 04:06:36,321.321 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:06:36,569.569 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:06:36,589.589 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:06:36,730.730 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:06:36,801.801 INFO    ] time= 31/08/2026 04:06:36
[2026-08-31 04:06:36,851.851 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:06:36,865.865 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:06:36,923.923 INFO    ] No existing commands found in stream
[2026-08-31 04:06:41,936.936 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:06:41,939.939 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-08-31 04:06:46,283.283 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 04:06:46,286.286 INFO    ] Checking for system updates...
[2026-08-31 04:06:46,323.323 INFO    ] 200
[2026-08-31 04:06:46,326.326 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:06:46,378.378 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:06:46,381.381 INFO    ] No update needed
[2026-08-31 04:06:46,384.384 INFO    ] Checking for camera pi updates...
[2026-08-31 04:06:46,418.418 INFO    ] 200
[2026-08-31 04:06:46,421.421 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:06:46,461.461 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:06:46,642.642 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:06:46,644.644 INFO    ] No camera update needed
[2026-08-31 04:06:46,647.647 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:06:46,649.649 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:06:46,655.655 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:06:46,660.660 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:06:48,701.701 INFO    ] ================================================
[2026-08-31 04:06:48,716.716 INFO    ] Launching Daemon at Mon Aug 31 04:06:48 IST 2026
[2026-08-31 04:06:48,728.728 INFO    ] ================================================
[2026-08-31 04:06:49,347.347 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:06:49
[2026-08-31 04:06:49,986.986 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:06:50,276.276 INFO    ] Initializing speech engine...
[2026-08-31 04:06:50,287.287 INFO    ] 2026-08-31 04:06:50
[2026-08-31 04:06:50,560.560 INFO    ] 2026-08-31 04:06:50
[2026-08-31 04:06:50,592.592 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:06:50,842.842 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:06:50,852.852 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:06:51,056.056 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:06:51,112.112 INFO    ] time= 31/08/2026 04:06:51
[2026-08-31 04:06:51,124.124 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:06:51,142.142 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:06:51,261.261 INFO    ] No existing commands found in stream
[2026-08-31 04:06:56,286.286 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:06:56,289.289 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-08-31 04:06:57,619.619 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 04:06:57,621.621 INFO    ] Checking for system updates...
[2026-08-31 04:06:57,661.661 INFO    ] 200
[2026-08-31 04:06:57,664.664 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:06:57,720.720 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:06:57,722.722 INFO    ] No update needed
[2026-08-31 04:06:57,725.725 INFO    ] Checking for camera pi updates...
[2026-08-31 04:06:57,762.762 INFO    ] 200
[2026-08-31 04:06:57,764.764 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:06:57,810.810 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:06:57,899.899 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:06:57,902.902 INFO    ] No camera update needed
[2026-08-31 04:06:57,904.904 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:06:57,907.907 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:06:57,913.913 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:06:57,919.919 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:06:59,959.959 INFO    ] ================================================
[2026-08-31 04:06:59,975.975 INFO    ] Launching Daemon at Mon Aug 31 04:06:59 IST 2026
[2026-08-31 04:06:59,985.985 INFO    ] ================================================
[2026-08-31 04:07:00,609.609 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:07:00
[2026-08-31 04:07:01,261.261 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:07:01,773.773 INFO    ] Initializing speech engine...
[2026-08-31 04:07:01,777.777 INFO    ] 2026-08-31 04:07:01
[2026-08-31 04:07:02,190.190 INFO    ] 2026-08-31 04:07:02
[2026-08-31 04:07:02,254.254 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:07:02,518.518 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:07:02,571.571 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:07:02,826.826 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:07:02,904.904 INFO    ] time= 31/08/2026 04:07:02
[2026-08-31 04:07:02,924.924 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:07:02,949.949 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:07:03,040.040 INFO    ] No existing commands found in stream
[2026-08-31 04:07:08,073.073 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:07:08,076.076 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-08-31 04:07:09,700.700 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 04:07:09,703.703 INFO    ] Checking for system updates...
[2026-08-31 04:07:09,738.738 INFO    ] 200
[2026-08-31 04:07:09,741.741 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:07:09,792.792 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:07:09,795.795 INFO    ] No update needed
[2026-08-31 04:07:09,798.798 INFO    ] Checking for camera pi updates...
[2026-08-31 04:07:09,832.832 INFO    ] 200
[2026-08-31 04:07:09,835.835 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:07:09,878.878 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:07:09,983.983 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:07:09,985.985 INFO    ] No camera update needed
[2026-08-31 04:07:09,988.988 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:07:09,990.990 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:07:09,995.995 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:07:10,000.000 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:07:12,041.041 INFO    ] ================================================
[2026-08-31 04:07:12,056.056 INFO    ] Launching Daemon at Mon Aug 31 04:07:12 IST 2026
[2026-08-31 04:07:12,067.067 INFO    ] ================================================
[2026-08-31 04:07:12,687.687 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:07:12
[2026-08-31 04:07:13,325.325 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:07:13,611.611 INFO    ] Initializing speech engine...
[2026-08-31 04:07:13,622.622 INFO    ] 2026-08-31 04:07:13
[2026-08-31 04:07:13,890.890 INFO    ] 2026-08-31 04:07:13
[2026-08-31 04:07:13,946.946 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:07:14,173.173 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:07:14,179.179 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:07:14,411.411 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:07:14,436.436 INFO    ] time= 31/08/2026 04:07:14
[2026-08-31 04:07:14,453.453 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:07:14,462.462 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:07:14,580.580 INFO    ] No existing commands found in stream
[2026-08-31 04:07:19,600.600 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:07:19,603.603 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-08-31 04:07:20,415.415 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 04:07:20,417.417 INFO    ] Checking for system updates...
[2026-08-31 04:07:20,453.453 INFO    ] 200
[2026-08-31 04:07:20,455.455 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:07:20,508.508 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:07:20,510.510 INFO    ] No update needed
[2026-08-31 04:07:20,513.513 INFO    ] Checking for camera pi updates...
[2026-08-31 04:07:20,546.546 INFO    ] 200
[2026-08-31 04:07:20,548.548 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:07:20,593.593 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:07:20,695.695 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:07:20,698.698 INFO    ] No camera update needed
[2026-08-31 04:07:20,700.700 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:07:20,702.702 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:07:20,708.708 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:07:20,713.713 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:07:22,753.753 INFO    ] ================================================
[2026-08-31 04:07:22,769.769 INFO    ] Launching Daemon at Mon Aug 31 04:07:22 IST 2026
[2026-08-31 04:07:22,780.780 INFO    ] ================================================
[2026-08-31 04:07:23,366.366 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:07:23
[2026-08-31 04:07:23,991.991 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:07:24,292.292 INFO    ] Initializing speech engine...
[2026-08-31 04:07:24,299.299 INFO    ] 2026-08-31 04:07:24
[2026-08-31 04:07:24,572.572 INFO    ] 2026-08-31 04:07:24
[2026-08-31 04:07:24,625.625 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:07:24,854.854 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:07:24,859.859 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:07:24,990.990 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:07:25,012.012 INFO    ] time= 31/08/2026 04:07:24
[2026-08-31 04:07:25,076.076 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:07:25,126.126 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:07:25,260.260 INFO    ] No existing commands found in stream
[2026-08-31 04:07:30,306.306 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:07:30,309.309 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-08-31 04:07:30,842.842 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 04:07:30,845.845 INFO    ] Checking for system updates...
[2026-08-31 04:07:30,882.882 INFO    ] 200
[2026-08-31 04:07:30,884.884 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:07:30,954.954 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:07:30,956.956 INFO    ] No update needed
[2026-08-31 04:07:30,959.959 INFO    ] Checking for camera pi updates...
[2026-08-31 04:07:30,993.993 INFO    ] 200
[2026-08-31 04:07:30,995.995 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:07:31,038.038 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:07:31,141.141 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:07:31,143.143 INFO    ] No camera update needed
[2026-08-31 04:07:31,145.145 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:07:31,148.148 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:07:31,153.153 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:07:31,158.158 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:07:33,201.201 INFO    ] ================================================
[2026-08-31 04:07:33,217.217 INFO    ] Launching Daemon at Mon Aug 31 04:07:33 IST 2026
[2026-08-31 04:07:33,228.228 INFO    ] ================================================
[2026-08-31 04:07:33,808.808 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:07:33
[2026-08-31 04:07:34,408.408 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:07:34,696.696 INFO    ] Initializing speech engine...
[2026-08-31 04:07:34,703.703 INFO    ] 2026-08-31 04:07:34
[2026-08-31 04:07:34,975.975 INFO    ] 2026-08-31 04:07:34
[2026-08-31 04:07:35,012.012 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:07:35,282.282 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:07:35,291.291 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:07:35,525.525 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:07:35,578.578 INFO    ] time= 31/08/2026 04:07:35
[2026-08-31 04:07:35,584.584 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:07:35,603.603 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:07:35,712.712 INFO    ] No existing commands found in stream
[2026-08-31 04:07:40,739.739 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:07:40,742.742 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-08-31 04:07:41,855.855 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 04:07:41,858.858 INFO    ] Checking for system updates...
[2026-08-31 04:07:41,896.896 INFO    ] 200
[2026-08-31 04:07:41,899.899 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:07:41,956.956 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:07:41,959.959 INFO    ] No update needed
[2026-08-31 04:07:41,962.962 INFO    ] Checking for camera pi updates...
[2026-08-31 04:07:41,996.996 INFO    ] 200
[2026-08-31 04:07:41,999.999 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:07:42,039.039 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:07:42,126.126 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:07:42,129.129 INFO    ] No camera update needed
[2026-08-31 04:07:42,131.131 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:07:42,134.134 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:07:42,140.140 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:07:42,146.146 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:07:44,187.187 INFO    ] ================================================
[2026-08-31 04:07:44,202.202 INFO    ] Launching Daemon at Mon Aug 31 04:07:44 IST 2026
[2026-08-31 04:07:44,213.213 INFO    ] ================================================
[2026-08-31 04:07:44,787.787 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:07:44
[2026-08-31 04:07:45,380.380 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:07:45,653.653 INFO    ] Initializing speech engine...
[2026-08-31 04:07:45,662.662 INFO    ] 2026-08-31 04:07:45
[2026-08-31 04:07:45,917.917 INFO    ] 2026-08-31 04:07:45
[2026-08-31 04:07:45,947.947 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:07:46,191.191 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:07:46,200.200 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:07:46,332.332 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:07:46,379.379 INFO    ] time= 31/08/2026 04:07:46
[2026-08-31 04:07:46,439.439 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:07:46,465.465 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:07:46,535.535 INFO    ] No existing commands found in stream
[2026-08-31 04:07:51,571.571 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:07:51,574.574 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-08-31 04:07:55,465.465 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 04:07:55,468.468 INFO    ] Checking for system updates...
[2026-08-31 04:07:55,510.510 INFO    ] 200
[2026-08-31 04:07:55,512.512 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:07:55,564.564 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:07:55,566.566 INFO    ] No update needed
[2026-08-31 04:07:55,569.569 INFO    ] Checking for camera pi updates...
[2026-08-31 04:07:55,605.605 INFO    ] 200
[2026-08-31 04:07:55,607.607 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:07:55,650.650 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:07:55,739.739 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:07:55,742.742 INFO    ] No camera update needed
[2026-08-31 04:07:55,744.744 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:07:55,746.746 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:07:55,751.751 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:07:55,756.756 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:07:57,798.798 INFO    ] ================================================
[2026-08-31 04:07:57,813.813 INFO    ] Launching Daemon at Mon Aug 31 04:07:57 IST 2026
[2026-08-31 04:07:57,825.825 INFO    ] ================================================
[2026-08-31 04:07:58,458.458 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:07:58
[2026-08-31 04:07:59,111.111 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:07:59,409.409 INFO    ] Initializing speech engine...
[2026-08-31 04:07:59,423.423 INFO    ] 2026-08-31 04:07:59
[2026-08-31 04:07:59,693.693 INFO    ] 2026-08-31 04:07:59
[2026-08-31 04:07:59,747.747 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:08:00,003.003 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:08:00,051.051 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:08:00,249.249 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:08:00,260.260 INFO    ] time= 31/08/2026 04:08:00
[2026-08-31 04:08:00,278.278 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:08:00,301.301 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:08:00,411.411 INFO    ] No existing commands found in stream
[2026-08-31 04:08:05,447.447 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:08:05,450.450 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-08-31 04:08:08,266.266 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 04:08:08,269.269 INFO    ] Checking for system updates...
[2026-08-31 04:08:08,308.308 INFO    ] 200
[2026-08-31 04:08:08,311.311 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:08:08,367.367 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:08:08,370.370 INFO    ] No update needed
[2026-08-31 04:08:08,372.372 INFO    ] Checking for camera pi updates...
[2026-08-31 04:08:08,406.406 INFO    ] 200
[2026-08-31 04:08:08,409.409 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:08:08,450.450 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:08:08,532.532 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:08:08,535.535 INFO    ] No camera update needed
[2026-08-31 04:08:08,538.538 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:08:08,540.540 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:08:08,546.546 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:08:08,552.552 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:08:10,593.593 INFO    ] ================================================
[2026-08-31 04:08:10,609.609 INFO    ] Launching Daemon at Mon Aug 31 04:08:10 IST 2026
[2026-08-31 04:08:10,620.620 INFO    ] ================================================
[2026-08-31 04:08:11,245.245 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:08:11
[2026-08-31 04:08:11,869.869 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:08:12,140.140 INFO    ] Initializing speech engine...
[2026-08-31 04:08:12,146.146 INFO    ] 2026-08-31 04:08:12
[2026-08-31 04:08:12,390.390 INFO    ] 2026-08-31 04:08:12
[2026-08-31 04:08:12,424.424 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:08:12,604.604 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:08:12,620.620 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:08:12,758.758 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:08:12,802.802 INFO    ] time= 31/08/2026 04:08:12
[2026-08-31 04:08:12,825.825 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:08:12,869.869 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:08:12,956.956 INFO    ] No existing commands found in stream
[2026-08-31 04:08:17,977.977 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:08:17,980.980 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-08-31 04:08:20,200.200 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 04:08:20,203.203 INFO    ] Checking for system updates...
[2026-08-31 04:08:20,240.240 INFO    ] 200
[2026-08-31 04:08:20,242.242 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:08:20,295.295 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:08:20,297.297 INFO    ] No update needed
[2026-08-31 04:08:20,300.300 INFO    ] Checking for camera pi updates...
[2026-08-31 04:08:20,334.334 INFO    ] 200
[2026-08-31 04:08:20,336.336 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:08:20,376.376 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:08:20,480.480 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:08:20,482.482 INFO    ] No camera update needed
[2026-08-31 04:08:20,487.487 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:08:20,489.489 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:08:20,495.495 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:08:20,500.500 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:08:22,543.543 INFO    ] ================================================
[2026-08-31 04:08:22,559.559 INFO    ] Launching Daemon at Mon Aug 31 04:08:22 IST 2026
[2026-08-31 04:08:22,570.570 INFO    ] ================================================
[2026-08-31 04:08:23,135.135 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:08:23
[2026-08-31 04:08:23,717.717 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:08:23,973.973 INFO    ] Initializing speech engine...
[2026-08-31 04:08:23,986.986 INFO    ] 2026-08-31 04:08:23
[2026-08-31 04:08:24,261.261 INFO    ] 2026-08-31 04:08:24
[2026-08-31 04:08:24,296.296 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:08:24,525.525 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:08:24,578.578 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:08:24,732.732 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:08:24,781.781 INFO    ] time= 31/08/2026 04:08:24
[2026-08-31 04:08:24,825.825 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:08:24,874.874 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:08:24,996.996 INFO    ] No existing commands found in stream
[2026-08-31 04:08:30,018.018 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:08:30,021.021 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-08-31 04:08:32,812.812 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 04:08:32,814.814 INFO    ] Checking for system updates...
[2026-08-31 04:08:32,853.853 INFO    ] 200
[2026-08-31 04:08:32,856.856 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:08:32,908.908 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:08:32,911.911 INFO    ] No update needed
[2026-08-31 04:08:32,913.913 INFO    ] Checking for camera pi updates...
[2026-08-31 04:08:32,947.947 INFO    ] 200
[2026-08-31 04:08:32,949.949 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:08:32,990.990 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:08:33,069.069 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:08:33,072.072 INFO    ] No camera update needed
[2026-08-31 04:08:33,074.074 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:08:33,076.076 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:08:33,081.081 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:08:33,087.087 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:08:35,126.126 INFO    ] ================================================
[2026-08-31 04:08:35,142.142 INFO    ] Launching Daemon at Mon Aug 31 04:08:35 IST 2026
[2026-08-31 04:08:35,153.153 INFO    ] ================================================
[2026-08-31 04:08:35,798.798 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:08:35
[2026-08-31 04:08:36,462.462 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:08:36,763.763 INFO    ] Initializing speech engine...
[2026-08-31 04:08:36,777.777 INFO    ] 2026-08-31 04:08:36
[2026-08-31 04:08:37,047.047 INFO    ] 2026-08-31 04:08:37
[2026-08-31 04:08:37,103.103 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:08:37,355.355 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:08:37,361.361 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:08:37,580.580 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:08:37,634.634 INFO    ] time= 31/08/2026 04:08:37
[2026-08-31 04:08:37,656.656 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:08:37,673.673 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:08:38,150.150 INFO    ] No existing commands found in stream
[2026-08-31 04:08:43,159.159 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:08:43,162.162 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-08-31 04:08:47,258.258 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 04:08:47,260.260 INFO    ] Checking for system updates...
[2026-08-31 04:08:47,295.295 INFO    ] 200
[2026-08-31 04:08:47,298.298 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:08:47,356.356 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:08:47,359.359 INFO    ] No update needed
[2026-08-31 04:08:47,361.361 INFO    ] Checking for camera pi updates...
[2026-08-31 04:08:47,394.394 INFO    ] 200
[2026-08-31 04:08:47,396.396 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:08:47,439.439 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:08:47,548.548 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:08:47,550.550 INFO    ] No camera update needed
[2026-08-31 04:08:47,553.553 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:08:47,555.555 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:08:47,560.560 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:08:47,565.565 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:08:49,605.605 INFO    ] ================================================
[2026-08-31 04:08:49,620.620 INFO    ] Launching Daemon at Mon Aug 31 04:08:49 IST 2026
[2026-08-31 04:08:49,632.632 INFO    ] ================================================
[2026-08-31 04:08:50,212.212 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:08:50
[2026-08-31 04:08:50,811.811 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:08:51,054.054 INFO    ] Initializing speech engine...
[2026-08-31 04:08:51,062.062 INFO    ] 2026-08-31 04:08:51
[2026-08-31 04:08:51,345.345 INFO    ] 2026-08-31 04:08:51
[2026-08-31 04:08:51,382.382 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:08:51,589.589 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:08:51,604.604 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:08:51,760.760 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:08:51,772.772 INFO    ] time= 31/08/2026 04:08:51
[2026-08-31 04:08:51,779.779 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:08:51,783.783 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:08:51,863.863 INFO    ] No existing commands found in stream
[2026-08-31 04:08:56,894.894 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:08:56,896.896 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-08-31 04:09:01,173.173 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 04:09:01,175.175 INFO    ] Checking for system updates...
[2026-08-31 04:09:01,210.210 INFO    ] 200
[2026-08-31 04:09:01,213.213 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:09:01,265.265 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:09:01,268.268 INFO    ] No update needed
[2026-08-31 04:09:01,270.270 INFO    ] Checking for camera pi updates...
[2026-08-31 04:09:01,304.304 INFO    ] 200
[2026-08-31 04:09:01,306.306 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:09:01,346.346 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:09:01,532.532 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:09:01,536.536 INFO    ] No camera update needed
[2026-08-31 04:09:01,550.550 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:09:01,554.554 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:09:01,562.562 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:09:01,570.570 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:09:03,619.619 INFO    ] ================================================
[2026-08-31 04:09:03,635.635 INFO    ] Launching Daemon at Mon Aug 31 04:09:03 IST 2026
[2026-08-31 04:09:03,646.646 INFO    ] ================================================
[2026-08-31 04:09:04,292.292 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:09:04
[2026-08-31 04:09:04,954.954 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:09:05,253.253 INFO    ] Initializing speech engine...
[2026-08-31 04:09:05,262.262 INFO    ] 2026-08-31 04:09:05
[2026-08-31 04:09:05,533.533 INFO    ] 2026-08-31 04:09:05
[2026-08-31 04:09:05,586.586 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:09:05,803.803 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:09:05,805.805 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:09:05,971.971 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:09:06,026.026 INFO    ] time= 31/08/2026 04:09:05
[2026-08-31 04:09:06,080.080 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:09:06,106.106 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:09:06,240.240 INFO    ] No existing commands found in stream
[2026-08-31 04:09:11,265.265 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:09:11,268.268 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-08-31 04:09:12,640.640 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 04:09:12,643.643 INFO    ] Checking for system updates...
[2026-08-31 04:09:12,679.679 INFO    ] 200
[2026-08-31 04:09:12,681.681 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:09:12,739.739 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:09:12,742.742 INFO    ] No update needed
[2026-08-31 04:09:12,744.744 INFO    ] Checking for camera pi updates...
[2026-08-31 04:09:12,781.781 INFO    ] 200
[2026-08-31 04:09:12,783.783 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:09:12,823.823 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:09:12,906.906 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:09:12,908.908 INFO    ] No camera update needed
[2026-08-31 04:09:12,911.911 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:09:12,913.913 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:09:12,918.918 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:09:12,923.923 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:09:14,963.963 INFO    ] ================================================
[2026-08-31 04:09:14,979.979 INFO    ] Launching Daemon at Mon Aug 31 04:09:14 IST 2026
[2026-08-31 04:09:14,990.990 INFO    ] ================================================
[2026-08-31 04:09:15,575.575 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:09:15
[2026-08-31 04:09:16,168.168 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:09:16,437.437 INFO    ] Initializing speech engine...
[2026-08-31 04:09:16,446.446 INFO    ] 2026-08-31 04:09:16
[2026-08-31 04:09:16,698.698 INFO    ] 2026-08-31 04:09:16
[2026-08-31 04:09:16,731.731 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:09:16,935.935 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:09:16,994.994 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:09:17,138.138 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:09:17,168.168 INFO    ] time= 31/08/2026 04:09:17
[2026-08-31 04:09:17,222.222 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:09:17,273.273 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:09:17,414.414 INFO    ] No existing commands found in stream
[2026-08-31 04:09:22,433.433 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:09:22,436.436 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-08-31 04:09:22,978.978 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 04:09:22,986.986 INFO    ] Checking for system updates...
[2026-08-31 04:09:23,030.030 INFO    ] 200
[2026-08-31 04:09:23,033.033 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:09:23,104.104 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:09:23,106.106 INFO    ] No update needed
[2026-08-31 04:09:23,109.109 INFO    ] Checking for camera pi updates...
[2026-08-31 04:09:23,146.146 INFO    ] 200
[2026-08-31 04:09:23,149.149 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:09:23,193.193 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:09:23,288.288 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:09:23,291.291 INFO    ] No camera update needed
[2026-08-31 04:09:23,294.294 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:09:23,296.296 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:09:23,302.302 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:09:23,308.308 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:09:25,352.352 INFO    ] ================================================
[2026-08-31 04:09:25,367.367 INFO    ] Launching Daemon at Mon Aug 31 04:09:25 IST 2026
[2026-08-31 04:09:25,378.378 INFO    ] ================================================
[2026-08-31 04:09:26,025.025 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:09:26
[2026-08-31 04:09:26,689.689 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:09:26,964.964 INFO    ] Initializing speech engine...
[2026-08-31 04:09:26,973.973 INFO    ] 2026-08-31 04:09:26
[2026-08-31 04:09:27,224.224 INFO    ] 2026-08-31 04:09:27
[2026-08-31 04:09:27,260.260 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:09:27,445.445 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:09:27,462.462 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:09:27,592.592 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:09:27,595.595 INFO    ] time= 31/08/2026 04:09:27
[2026-08-31 04:09:27,597.597 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:09:27,606.606 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:09:27,684.684 INFO    ] No existing commands found in stream
[2026-08-31 04:09:32,719.719 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:09:32,723.723 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-08-31 04:09:34,636.636 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 04:09:34,639.639 INFO    ] Checking for system updates...
[2026-08-31 04:09:34,674.674 INFO    ] 200
[2026-08-31 04:09:34,677.677 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:09:34,731.731 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:09:34,733.733 INFO    ] No update needed
[2026-08-31 04:09:34,736.736 INFO    ] Checking for camera pi updates...
[2026-08-31 04:09:34,769.769 INFO    ] 200
[2026-08-31 04:09:34,772.772 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:09:34,811.811 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:09:34,866.866 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:09:34,869.869 INFO    ] No camera update needed
[2026-08-31 04:09:34,871.871 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:09:34,873.873 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:09:34,879.879 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:09:34,884.884 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:09:36,924.924 INFO    ] ================================================
[2026-08-31 04:09:36,940.940 INFO    ] Launching Daemon at Mon Aug 31 04:09:36 IST 2026
[2026-08-31 04:09:36,953.953 INFO    ] ================================================
[2026-08-31 04:09:37,522.522 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:09:37
[2026-08-31 04:09:38,140.140 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:09:38,421.421 INFO    ] Initializing speech engine...
[2026-08-31 04:09:38,436.436 INFO    ] 2026-08-31 04:09:38
[2026-08-31 04:09:38,706.706 INFO    ] 2026-08-31 04:09:38
[2026-08-31 04:09:38,742.742 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:09:38,964.964 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:09:38,989.989 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:09:39,119.119 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:09:39,126.126 INFO    ] time= 31/08/2026 04:09:39
[2026-08-31 04:09:39,139.139 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:09:39,197.197 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:09:39,305.305 INFO    ] No existing commands found in stream
[2026-08-31 04:09:44,330.330 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:09:44,332.332 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-08-31 04:09:48,119.119 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 04:09:48,122.122 INFO    ] Checking for system updates...
[2026-08-31 04:09:48,161.161 INFO    ] 200
[2026-08-31 04:09:48,163.163 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:09:48,221.221 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:09:48,223.223 INFO    ] No update needed
[2026-08-31 04:09:48,225.225 INFO    ] Checking for camera pi updates...
[2026-08-31 04:09:48,259.259 INFO    ] 200
[2026-08-31 04:09:48,262.262 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:09:48,301.301 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:09:48,370.370 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:09:48,372.372 INFO    ] No camera update needed
[2026-08-31 04:09:48,375.375 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:09:48,378.378 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:09:48,384.384 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:09:48,389.389 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:09:50,430.430 INFO    ] ================================================
[2026-08-31 04:09:50,445.445 INFO    ] Launching Daemon at Mon Aug 31 04:09:50 IST 2026
[2026-08-31 04:09:50,456.456 INFO    ] ================================================
[2026-08-31 04:09:51,038.038 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:09:51
[2026-08-31 04:09:51,636.636 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:09:51,917.917 INFO    ] Initializing speech engine...
[2026-08-31 04:09:51,930.930 INFO    ] 2026-08-31 04:09:51
[2026-08-31 04:09:52,200.200 INFO    ] 2026-08-31 04:09:52
[2026-08-31 04:09:52,225.225 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:09:52,430.430 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:09:52,437.437 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:09:52,608.608 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:09:52,617.617 INFO    ] time= 31/08/2026 04:09:52
[2026-08-31 04:09:52,625.625 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:09:52,646.646 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:09:52,803.803 INFO    ] No existing commands found in stream
[2026-08-31 04:09:57,828.828 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:09:57,831.831 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-08-31 04:10:01,276.276 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 04:10:01,279.279 INFO    ] Checking for system updates...
[2026-08-31 04:10:01,315.315 INFO    ] 200
[2026-08-31 04:10:01,318.318 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:10:01,371.371 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:10:01,374.374 INFO    ] No update needed
[2026-08-31 04:10:01,376.376 INFO    ] Checking for camera pi updates...
[2026-08-31 04:10:01,410.410 INFO    ] 200
[2026-08-31 04:10:01,412.412 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:10:01,462.462 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:10:01,547.547 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:10:01,552.552 INFO    ] No camera update needed
[2026-08-31 04:10:01,556.556 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:10:01,560.560 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:10:01,569.569 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:10:01,577.577 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:10:03,622.622 INFO    ] ================================================
[2026-08-31 04:10:03,638.638 INFO    ] Launching Daemon at Mon Aug 31 04:10:03 IST 2026
[2026-08-31 04:10:03,648.648 INFO    ] ================================================
[2026-08-31 04:10:04,297.297 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:10:04
[2026-08-31 04:10:04,972.972 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:10:05,276.276 INFO    ] Initializing speech engine...
[2026-08-31 04:10:05,290.290 INFO    ] 2026-08-31 04:10:05
[2026-08-31 04:10:05,604.604 INFO    ] 2026-08-31 04:10:05
[2026-08-31 04:10:05,689.689 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:10:05,871.871 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:10:05,904.904 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:10:06,047.047 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:10:06,107.107 INFO    ] time= 31/08/2026 04:10:06
[2026-08-31 04:10:06,136.136 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:10:06,155.155 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:10:06,291.291 INFO    ] No existing commands found in stream
[2026-08-31 04:10:11,311.311 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:10:11,315.315 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-08-31 04:10:15,008.008 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 04:10:15,011.011 INFO    ] Checking for system updates...
[2026-08-31 04:10:15,049.049 INFO    ] 200
[2026-08-31 04:10:15,052.052 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:10:15,105.105 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:10:15,108.108 INFO    ] No update needed
[2026-08-31 04:10:15,110.110 INFO    ] Checking for camera pi updates...
[2026-08-31 04:10:15,147.147 INFO    ] 200
[2026-08-31 04:10:15,150.150 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:10:15,194.194 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:10:15,275.275 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:10:15,277.277 INFO    ] No camera update needed
[2026-08-31 04:10:15,280.280 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:10:15,282.282 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:10:15,287.287 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:10:15,292.292 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:10:17,335.335 INFO    ] ================================================
[2026-08-31 04:10:17,350.350 INFO    ] Launching Daemon at Mon Aug 31 04:10:17 IST 2026
[2026-08-31 04:10:17,361.361 INFO    ] ================================================
[2026-08-31 04:10:17,928.928 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:10:17
[2026-08-31 04:10:18,510.510 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:10:18,768.768 INFO    ] Initializing speech engine...
[2026-08-31 04:10:18,786.786 INFO    ] 2026-08-31 04:10:18
[2026-08-31 04:10:19,034.034 INFO    ] 2026-08-31 04:10:19
[2026-08-31 04:10:19,069.069 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:10:19,240.240 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:10:19,252.252 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:10:19,396.396 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:10:19,405.405 INFO    ] time= 31/08/2026 04:10:19
[2026-08-31 04:10:19,450.450 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:10:19,470.470 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:10:19,589.589 INFO    ] No existing commands found in stream
[2026-08-31 04:10:24,606.606 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:10:24,609.609 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-08-31 04:10:27,399.399 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 04:10:27,402.402 INFO    ] Checking for system updates...
[2026-08-31 04:10:27,437.437 INFO    ] 200
[2026-08-31 04:10:27,439.439 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:10:27,493.493 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:10:27,495.495 INFO    ] No update needed
[2026-08-31 04:10:27,498.498 INFO    ] Checking for camera pi updates...
[2026-08-31 04:10:27,531.531 INFO    ] 200
[2026-08-31 04:10:27,533.533 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:10:27,576.576 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:10:27,652.652 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:10:27,654.654 INFO    ] No camera update needed
[2026-08-31 04:10:27,656.656 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:10:27,659.659 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:10:27,664.664 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:10:27,669.669 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:10:29,709.709 INFO    ] ================================================
[2026-08-31 04:10:29,725.725 INFO    ] Launching Daemon at Mon Aug 31 04:10:29 IST 2026
[2026-08-31 04:10:29,735.735 INFO    ] ================================================
[2026-08-31 04:10:30,304.304 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:10:30
[2026-08-31 04:10:30,889.889 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:10:31,142.142 INFO    ] Initializing speech engine...
[2026-08-31 04:10:31,155.155 INFO    ] 2026-08-31 04:10:31
[2026-08-31 04:10:31,423.423 INFO    ] 2026-08-31 04:10:31
[2026-08-31 04:10:31,458.458 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:10:31,703.703 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:10:31,706.706 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:10:31,881.881 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:10:31,914.914 INFO    ] time= 31/08/2026 04:10:31
[2026-08-31 04:10:31,975.975 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:10:32,024.024 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:10:32,085.085 INFO    ] No existing commands found in stream
[2026-08-31 04:10:37,097.097 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:10:37,100.100 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-08-31 04:10:38,095.095 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 04:10:38,098.098 INFO    ] Checking for system updates...
[2026-08-31 04:10:38,138.138 INFO    ] 200
[2026-08-31 04:10:38,140.140 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:10:38,199.199 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:10:38,202.202 INFO    ] No update needed
[2026-08-31 04:10:38,204.204 INFO    ] Checking for camera pi updates...
[2026-08-31 04:10:38,238.238 INFO    ] 200
[2026-08-31 04:10:38,241.241 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:10:38,281.281 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:10:38,380.380 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:10:38,382.382 INFO    ] No camera update needed
[2026-08-31 04:10:38,385.385 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:10:38,387.387 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:10:38,392.392 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:10:38,397.397 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:10:40,439.439 INFO    ] ================================================
[2026-08-31 04:10:40,453.453 INFO    ] Launching Daemon at Mon Aug 31 04:10:40 IST 2026
[2026-08-31 04:10:40,464.464 INFO    ] ================================================
[2026-08-31 04:10:41,030.030 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:10:41
[2026-08-31 04:10:41,680.680 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:10:41,951.951 INFO    ] Initializing speech engine...
[2026-08-31 04:10:41,960.960 INFO    ] 2026-08-31 04:10:41
[2026-08-31 04:10:42,210.210 INFO    ] 2026-08-31 04:10:42
[2026-08-31 04:10:42,245.245 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:10:42,503.503 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:10:42,512.512 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:10:42,649.649 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:10:42,709.709 INFO    ] time= 31/08/2026 04:10:42
[2026-08-31 04:10:42,768.768 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:10:42,783.783 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:10:42,849.849 INFO    ] No existing commands found in stream
[2026-08-31 04:10:47,885.885 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:10:47,887.887 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-08-31 04:10:49,606.606 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 04:10:49,608.608 INFO    ] Checking for system updates...
[2026-08-31 04:10:49,644.644 INFO    ] 200
[2026-08-31 04:10:49,647.647 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:10:49,700.700 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:10:49,702.702 INFO    ] No update needed
[2026-08-31 04:10:49,704.704 INFO    ] Checking for camera pi updates...
[2026-08-31 04:10:49,738.738 INFO    ] 200
[2026-08-31 04:10:49,740.740 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:10:49,786.786 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:10:49,869.869 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:10:49,872.872 INFO    ] No camera update needed
[2026-08-31 04:10:49,874.874 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:10:49,876.876 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:10:49,882.882 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:10:49,886.886 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:10:51,927.927 INFO    ] ================================================
[2026-08-31 04:10:51,942.942 INFO    ] Launching Daemon at Mon Aug 31 04:10:51 IST 2026
[2026-08-31 04:10:51,953.953 INFO    ] ================================================
[2026-08-31 04:10:52,576.576 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:10:52
[2026-08-31 04:10:53,158.158 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:10:53,431.431 INFO    ] Initializing speech engine...
[2026-08-31 04:10:53,437.437 INFO    ] 2026-08-31 04:10:53
[2026-08-31 04:10:53,700.700 INFO    ] 2026-08-31 04:10:53
[2026-08-31 04:10:53,755.755 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:10:53,980.980 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:10:53,990.990 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:10:54,205.205 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:10:54,252.252 INFO    ] time= 31/08/2026 04:10:54
[2026-08-31 04:10:54,269.269 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:10:54,276.276 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:10:54,398.398 INFO    ] No existing commands found in stream
[2026-08-31 04:10:59,418.418 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:10:59,420.420 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-08-31 04:11:01,576.576 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 04:11:01,579.579 INFO    ] Checking for system updates...
[2026-08-31 04:11:01,614.614 INFO    ] 200
[2026-08-31 04:11:01,617.617 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:11:01,669.669 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:11:01,671.671 INFO    ] No update needed
[2026-08-31 04:11:01,674.674 INFO    ] Checking for camera pi updates...
[2026-08-31 04:11:01,728.728 INFO    ] 200
[2026-08-31 04:11:01,732.732 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:11:01,835.835 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:11:01,937.937 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:11:01,943.943 INFO    ] No camera update needed
[2026-08-31 04:11:01,949.949 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:11:01,953.953 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:11:01,963.963 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:11:01,982.982 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:11:04,027.027 INFO    ] ================================================
[2026-08-31 04:11:04,043.043 INFO    ] Launching Daemon at Mon Aug 31 04:11:04 IST 2026
[2026-08-31 04:11:04,053.053 INFO    ] ================================================
[2026-08-31 04:11:04,620.620 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:11:04
[2026-08-31 04:11:05,204.204 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:11:05,463.463 INFO    ] Initializing speech engine...
[2026-08-31 04:11:05,478.478 INFO    ] 2026-08-31 04:11:05
[2026-08-31 04:11:05,734.734 INFO    ] 2026-08-31 04:11:05
[2026-08-31 04:11:05,768.768 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:11:05,972.972 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:11:06,030.030 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:11:06,172.172 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:11:06,221.221 INFO    ] time= 31/08/2026 04:11:06
[2026-08-31 04:11:06,290.290 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:11:06,309.309 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:11:06,435.435 INFO    ] No existing commands found in stream
[2026-08-31 04:11:11,460.460 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:11:11,463.463 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-08-31 04:11:14,941.941 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 04:11:14,943.943 INFO    ] Checking for system updates...
[2026-08-31 04:11:14,984.984 INFO    ] 200
[2026-08-31 04:11:14,986.986 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:11:15,042.042 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:11:15,045.045 INFO    ] No update needed
[2026-08-31 04:11:15,048.048 INFO    ] Checking for camera pi updates...
[2026-08-31 04:11:15,083.083 INFO    ] 200
[2026-08-31 04:11:15,086.086 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:11:15,128.128 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:11:15,315.315 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:11:15,318.318 INFO    ] No camera update needed
[2026-08-31 04:11:15,321.321 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:11:15,324.324 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:11:15,330.330 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:11:15,336.336 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:11:17,380.380 INFO    ] ================================================
[2026-08-31 04:11:17,395.395 INFO    ] Launching Daemon at Mon Aug 31 04:11:17 IST 2026
[2026-08-31 04:11:17,406.406 INFO    ] ================================================
[2026-08-31 04:11:17,972.972 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:11:17
[2026-08-31 04:11:18,554.554 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:11:18,811.811 INFO    ] Initializing speech engine...
[2026-08-31 04:11:18,829.829 INFO    ] 2026-08-31 04:11:18
[2026-08-31 04:11:19,079.079 INFO    ] 2026-08-31 04:11:19
[2026-08-31 04:11:19,115.115 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:11:19,375.375 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:11:19,380.380 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:11:19,517.517 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:11:19,572.572 INFO    ] time= 31/08/2026 04:11:19
[2026-08-31 04:11:19,636.636 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:11:19,651.651 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:11:19,798.798 INFO    ] No existing commands found in stream
[2026-08-31 04:11:24,812.812 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:11:24,815.815 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-08-31 04:11:26,457.457 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 04:11:26,460.460 INFO    ] Checking for system updates...
[2026-08-31 04:11:26,497.497 INFO    ] 200
[2026-08-31 04:11:26,500.500 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:11:26,554.554 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:11:26,557.557 INFO    ] No update needed
[2026-08-31 04:11:26,560.560 INFO    ] Checking for camera pi updates...
[2026-08-31 04:11:26,598.598 INFO    ] 200
[2026-08-31 04:11:26,601.601 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:11:26,648.648 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:11:26,733.733 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:11:26,736.736 INFO    ] No camera update needed
[2026-08-31 04:11:26,739.739 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:11:26,742.742 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:11:26,748.748 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:11:26,754.754 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:11:28,796.796 INFO    ] ================================================
[2026-08-31 04:11:28,812.812 INFO    ] Launching Daemon at Mon Aug 31 04:11:28 IST 2026
[2026-08-31 04:11:28,822.822 INFO    ] ================================================
[2026-08-31 04:11:29,391.391 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:11:29
[2026-08-31 04:11:29,975.975 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:11:30,244.244 INFO    ] Initializing speech engine...
[2026-08-31 04:11:30,255.255 INFO    ] 2026-08-31 04:11:30
[2026-08-31 04:11:30,499.499 INFO    ] 2026-08-31 04:11:30
[2026-08-31 04:11:30,535.535 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:11:30,788.788 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:11:30,796.796 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:11:30,932.932 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:11:30,980.980 INFO    ] time= 31/08/2026 04:11:30
[2026-08-31 04:11:31,034.034 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:11:31,067.067 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:11:31,198.198 INFO    ] No existing commands found in stream
[2026-08-31 04:11:36,222.222 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:11:36,225.225 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-08-31 04:11:38,325.325 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 04:11:38,327.327 INFO    ] Checking for system updates...
[2026-08-31 04:11:38,367.367 INFO    ] 200
[2026-08-31 04:11:38,369.369 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:11:38,422.422 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:11:38,424.424 INFO    ] No update needed
[2026-08-31 04:11:38,427.427 INFO    ] Checking for camera pi updates...
[2026-08-31 04:11:38,468.468 INFO    ] 200
[2026-08-31 04:11:38,470.470 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:11:38,510.510 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:11:38,593.593 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:11:38,595.595 INFO    ] No camera update needed
[2026-08-31 04:11:38,598.598 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:11:38,600.600 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:11:38,605.605 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:11:38,610.610 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:11:40,650.650 INFO    ] ================================================
[2026-08-31 04:11:40,665.665 INFO    ] Launching Daemon at Mon Aug 31 04:11:40 IST 2026
[2026-08-31 04:11:40,676.676 INFO    ] ================================================
[2026-08-31 04:11:41,259.259 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:11:41
[2026-08-31 04:11:41,859.859 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:11:42,136.136 INFO    ] Initializing speech engine...
[2026-08-31 04:11:42,145.145 INFO    ] 2026-08-31 04:11:42
[2026-08-31 04:11:42,405.405 INFO    ] 2026-08-31 04:11:42
[2026-08-31 04:11:42,434.434 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:11:42,620.620 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:11:42,664.664 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:11:42,820.820 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:11:42,868.868 INFO    ] time= 31/08/2026 04:11:42
[2026-08-31 04:11:42,932.932 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:11:42,956.956 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:11:43,073.073 INFO    ] No existing commands found in stream
[2026-08-31 04:11:48,103.103 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:11:48,106.106 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-08-31 04:11:48,690.690 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 04:11:48,693.693 INFO    ] Checking for system updates...
[2026-08-31 04:11:48,732.732 INFO    ] 200
[2026-08-31 04:11:48,734.734 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:11:48,786.786 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:11:48,789.789 INFO    ] No update needed
[2026-08-31 04:11:48,791.791 INFO    ] Checking for camera pi updates...
[2026-08-31 04:11:48,825.825 INFO    ] 200
[2026-08-31 04:11:48,828.828 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:11:48,873.873 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:11:48,964.964 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:11:48,966.966 INFO    ] No camera update needed
[2026-08-31 04:11:48,969.969 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:11:48,971.971 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:11:48,977.977 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:11:48,982.982 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:11:51,023.023 INFO    ] ================================================
[2026-08-31 04:11:51,038.038 INFO    ] Launching Daemon at Mon Aug 31 04:11:51 IST 2026
[2026-08-31 04:11:51,048.048 INFO    ] ================================================
[2026-08-31 04:11:51,630.630 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:11:51
[2026-08-31 04:11:52,227.227 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:11:52,480.480 INFO    ] Initializing speech engine...
[2026-08-31 04:11:52,503.503 INFO    ] 2026-08-31 04:11:52
[2026-08-31 04:11:52,756.756 INFO    ] 2026-08-31 04:11:52
[2026-08-31 04:11:52,792.792 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:11:53,043.043 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:11:53,052.052 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:11:53,262.262 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:11:53,308.308 INFO    ] time= 31/08/2026 04:11:53
[2026-08-31 04:11:53,315.315 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:11:53,334.334 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:11:53,465.465 INFO    ] No existing commands found in stream
[2026-08-31 04:11:58,478.478 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:11:58,481.481 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-08-31 04:12:02,208.208 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 04:12:02,211.211 INFO    ] Checking for system updates...
[2026-08-31 04:12:02,253.253 INFO    ] 200
[2026-08-31 04:12:02,256.256 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:12:02,327.327 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:12:02,330.330 INFO    ] No update needed
[2026-08-31 04:12:02,333.333 INFO    ] Checking for camera pi updates...
[2026-08-31 04:12:02,376.376 INFO    ] 200
[2026-08-31 04:12:02,380.380 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:12:02,438.438 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:12:02,588.588 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:12:02,591.591 INFO    ] No camera update needed
[2026-08-31 04:12:02,594.594 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:12:02,597.597 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:12:02,604.604 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:12:02,610.610 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:12:04,652.652 INFO    ] ================================================
[2026-08-31 04:12:04,667.667 INFO    ] Launching Daemon at Mon Aug 31 04:12:04 IST 2026
[2026-08-31 04:12:04,677.677 INFO    ] ================================================
[2026-08-31 04:12:05,257.257 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:12:05
[2026-08-31 04:12:05,853.853 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:12:06,124.124 INFO    ] Initializing speech engine...
[2026-08-31 04:12:06,134.134 INFO    ] 2026-08-31 04:12:06
[2026-08-31 04:12:06,396.396 INFO    ] 2026-08-31 04:12:06
[2026-08-31 04:12:06,450.450 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:12:06,688.688 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:12:06,697.697 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:12:06,832.832 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:12:06,891.891 INFO    ] time= 31/08/2026 04:12:06
[2026-08-31 04:12:06,951.951 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:12:06,964.964 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:12:07,105.105 INFO    ] No existing commands found in stream
[2026-08-31 04:12:12,121.121 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:12:12,124.124 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-08-31 04:12:13,478.478 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 04:12:13,481.481 INFO    ] Checking for system updates...
[2026-08-31 04:12:13,517.517 INFO    ] 200
[2026-08-31 04:12:13,520.520 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:12:13,578.578 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:12:13,581.581 INFO    ] No update needed
[2026-08-31 04:12:13,583.583 INFO    ] Checking for camera pi updates...
[2026-08-31 04:12:13,617.617 INFO    ] 200
[2026-08-31 04:12:13,619.619 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:12:13,660.660 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:12:13,726.726 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:12:13,729.729 INFO    ] No camera update needed
[2026-08-31 04:12:13,731.731 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:12:13,734.734 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:12:13,740.740 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:12:13,746.746 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:12:15,786.786 INFO    ] ================================================
[2026-08-31 04:12:15,801.801 INFO    ] Launching Daemon at Mon Aug 31 04:12:15 IST 2026
[2026-08-31 04:12:15,812.812 INFO    ] ================================================
[2026-08-31 04:12:16,376.376 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:12:16
[2026-08-31 04:12:16,975.975 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:12:17,247.247 INFO    ] Initializing speech engine...
[2026-08-31 04:12:17,256.256 INFO    ] 2026-08-31 04:12:17
[2026-08-31 04:12:17,520.520 INFO    ] 2026-08-31 04:12:17
[2026-08-31 04:12:17,573.573 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:12:17,826.826 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:12:17,844.844 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:12:18,051.051 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:12:18,066.066 INFO    ] time= 31/08/2026 04:12:18
[2026-08-31 04:12:18,084.084 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:12:18,112.112 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:12:18,220.220 INFO    ] No existing commands found in stream
[2026-08-31 04:12:23,250.250 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:12:23,252.252 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-08-31 04:12:26,688.688 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 04:12:26,691.691 INFO    ] Checking for system updates...
[2026-08-31 04:12:26,726.726 INFO    ] 200
[2026-08-31 04:12:26,729.729 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:12:26,782.782 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:12:26,785.785 INFO    ] No update needed
[2026-08-31 04:12:26,787.787 INFO    ] Checking for camera pi updates...
[2026-08-31 04:12:26,821.821 INFO    ] 200
[2026-08-31 04:12:26,823.823 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:12:26,865.865 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:12:26,944.944 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:12:26,946.946 INFO    ] No camera update needed
[2026-08-31 04:12:26,949.949 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:12:26,951.951 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:12:26,956.956 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:12:26,961.961 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:12:29,003.003 INFO    ] ================================================
[2026-08-31 04:12:29,018.018 INFO    ] Launching Daemon at Mon Aug 31 04:12:29 IST 2026
[2026-08-31 04:12:29,029.029 INFO    ] ================================================
[2026-08-31 04:12:29,608.608 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:12:29
[2026-08-31 04:12:30,207.207 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:12:30,499.499 INFO    ] Initializing speech engine...
[2026-08-31 04:12:30,506.506 INFO    ] 2026-08-31 04:12:30
[2026-08-31 04:12:30,769.769 INFO    ] 2026-08-31 04:12:30
[2026-08-31 04:12:30,800.800 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:12:31,064.064 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:12:31,074.074 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:12:31,211.211 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:12:31,261.261 INFO    ] time= 31/08/2026 04:12:31
[2026-08-31 04:12:31,320.320 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:12:31,346.346 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:12:31,405.405 INFO    ] No existing commands found in stream
[2026-08-31 04:12:36,417.417 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:12:36,420.420 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-08-31 04:12:38,714.714 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 04:12:38,717.717 INFO    ] Checking for system updates...
[2026-08-31 04:12:38,752.752 INFO    ] 200
[2026-08-31 04:12:38,755.755 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:12:38,808.808 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:12:38,810.810 INFO    ] No update needed
[2026-08-31 04:12:38,812.812 INFO    ] Checking for camera pi updates...
[2026-08-31 04:12:38,850.850 INFO    ] 200
[2026-08-31 04:12:38,852.852 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:12:38,892.892 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:12:38,973.973 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:12:38,976.976 INFO    ] No camera update needed
[2026-08-31 04:12:38,979.979 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:12:38,982.982 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:12:38,988.988 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:12:38,994.994 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:12:41,034.034 INFO    ] ================================================
[2026-08-31 04:12:41,049.049 INFO    ] Launching Daemon at Mon Aug 31 04:12:41 IST 2026
[2026-08-31 04:12:41,060.060 INFO    ] ================================================
[2026-08-31 04:12:41,640.640 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:12:41
[2026-08-31 04:12:42,257.257 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:12:42,553.553 INFO    ] Initializing speech engine...
[2026-08-31 04:12:42,561.561 INFO    ] 2026-08-31 04:12:42
[2026-08-31 04:12:42,821.821 INFO    ] 2026-08-31 04:12:42
[2026-08-31 04:12:42,873.873 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:12:43,098.098 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:12:43,107.107 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:12:43,325.325 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:12:43,365.365 INFO    ] time= 31/08/2026 04:12:43
[2026-08-31 04:12:43,371.371 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:12:43,390.390 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:12:43,504.504 INFO    ] No existing commands found in stream
[2026-08-31 04:12:48,531.531 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:12:48,533.533 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-08-31 04:12:50,292.292 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 04:12:50,294.294 INFO    ] Checking for system updates...
[2026-08-31 04:12:50,334.334 INFO    ] 200
[2026-08-31 04:12:50,336.336 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:12:50,394.394 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:12:50,397.397 INFO    ] No update needed
[2026-08-31 04:12:50,399.399 INFO    ] Checking for camera pi updates...
[2026-08-31 04:12:50,436.436 INFO    ] 200
[2026-08-31 04:12:50,439.439 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:12:50,479.479 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:12:50,581.581 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:12:50,584.584 INFO    ] No camera update needed
[2026-08-31 04:12:50,586.586 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:12:50,588.588 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:12:50,594.594 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:12:50,599.599 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:12:52,639.639 INFO    ] ================================================
[2026-08-31 04:12:52,655.655 INFO    ] Launching Daemon at Mon Aug 31 04:12:52 IST 2026
[2026-08-31 04:12:52,666.666 INFO    ] ================================================
[2026-08-31 04:12:53,255.255 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:12:53
[2026-08-31 04:12:53,871.871 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:12:54,155.155 INFO    ] Initializing speech engine...
[2026-08-31 04:12:54,165.165 INFO    ] 2026-08-31 04:12:54
[2026-08-31 04:12:54,446.446 INFO    ] 2026-08-31 04:12:54
[2026-08-31 04:12:54,492.492 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:12:54,737.737 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:12:54,744.744 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:12:54,968.968 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:12:54,985.985 INFO    ] time= 31/08/2026 04:12:54
[2026-08-31 04:12:55,004.004 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:12:55,033.033 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:12:55,165.165 INFO    ] No existing commands found in stream
[2026-08-31 04:13:00,196.196 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:13:00,199.199 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-08-31 04:13:02,888.888 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 04:13:02,892.892 INFO    ] Checking for system updates...
[2026-08-31 04:13:02,938.938 INFO    ] 200
[2026-08-31 04:13:02,941.941 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:13:03,014.014 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:13:03,018.018 INFO    ] No update needed
[2026-08-31 04:13:03,022.022 INFO    ] Checking for camera pi updates...
[2026-08-31 04:13:03,073.073 INFO    ] 200
[2026-08-31 04:13:03,076.076 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:13:03,142.142 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:13:03,196.196 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:13:03,199.199 INFO    ] No camera update needed
[2026-08-31 04:13:03,202.202 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:13:03,205.205 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:13:03,212.212 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:13:03,218.218 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:13:05,259.259 INFO    ] ================================================
[2026-08-31 04:13:05,274.274 INFO    ] Launching Daemon at Mon Aug 31 04:13:05 IST 2026
[2026-08-31 04:13:05,285.285 INFO    ] ================================================
[2026-08-31 04:13:05,866.866 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:13:05
[2026-08-31 04:13:06,452.452 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:13:06,768.768 INFO    ] Initializing speech engine...
[2026-08-31 04:13:06,775.775 INFO    ] 2026-08-31 04:13:06
[2026-08-31 04:13:07,047.047 INFO    ] 2026-08-31 04:13:07
[2026-08-31 04:13:07,104.104 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:13:07,340.340 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:13:07,345.345 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:13:07,557.557 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:13:07,610.610 INFO    ] time= 31/08/2026 04:13:07
[2026-08-31 04:13:07,617.617 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:13:07,635.635 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:13:07,770.770 INFO    ] No existing commands found in stream
[2026-08-31 04:13:12,790.790 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:13:12,793.793 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-08-31 04:13:14,930.930 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 04:13:14,932.932 INFO    ] Checking for system updates...
[2026-08-31 04:13:14,970.970 INFO    ] 200
[2026-08-31 04:13:14,972.972 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:13:15,032.032 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:13:15,034.034 INFO    ] No update needed
[2026-08-31 04:13:15,037.037 INFO    ] Checking for camera pi updates...
[2026-08-31 04:13:15,072.072 INFO    ] 200
[2026-08-31 04:13:15,075.075 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:13:15,116.116 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:13:15,195.195 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:13:15,197.197 INFO    ] No camera update needed
[2026-08-31 04:13:15,200.200 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:13:15,202.202 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:13:15,207.207 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:13:15,212.212 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:13:17,252.252 INFO    ] ================================================
[2026-08-31 04:13:17,267.267 INFO    ] Launching Daemon at Mon Aug 31 04:13:17 IST 2026
[2026-08-31 04:13:17,278.278 INFO    ] ================================================
[2026-08-31 04:13:17,855.855 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:13:17
[2026-08-31 04:13:18,444.444 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:13:18,702.702 INFO    ] Initializing speech engine...
[2026-08-31 04:13:18,727.727 INFO    ] 2026-08-31 04:13:18
[2026-08-31 04:13:18,998.998 INFO    ] 2026-08-31 04:13:18
[2026-08-31 04:13:19,033.033 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:13:19,228.228 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:13:19,243.243 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:13:19,402.402 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:13:19,411.411 INFO    ] time= 31/08/2026 04:13:19
[2026-08-31 04:13:19,417.417 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:13:19,430.430 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:13:19,555.555 INFO    ] No existing commands found in stream
[2026-08-31 04:13:24,575.575 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:13:24,578.578 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-08-31 04:13:25,732.732 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 04:13:25,735.735 INFO    ] Checking for system updates...
[2026-08-31 04:13:25,774.774 INFO    ] 200
[2026-08-31 04:13:25,776.776 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:13:25,834.834 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:13:25,836.836 INFO    ] No update needed
[2026-08-31 04:13:25,839.839 INFO    ] Checking for camera pi updates...
[2026-08-31 04:13:25,872.872 INFO    ] 200
[2026-08-31 04:13:25,874.874 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:13:25,914.914 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:13:26,093.093 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:13:26,095.095 INFO    ] No camera update needed
[2026-08-31 04:13:26,097.097 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:13:26,100.100 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:13:26,105.105 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:13:26,110.110 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:13:28,149.149 INFO    ] ================================================
[2026-08-31 04:13:28,164.164 INFO    ] Launching Daemon at Mon Aug 31 04:13:28 IST 2026
[2026-08-31 04:13:28,175.175 INFO    ] ================================================
[2026-08-31 04:13:28,771.771 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:13:28
[2026-08-31 04:13:29,355.355 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:13:29,628.628 INFO    ] Initializing speech engine...
[2026-08-31 04:13:29,637.637 INFO    ] 2026-08-31 04:13:29
[2026-08-31 04:13:29,886.886 INFO    ] 2026-08-31 04:13:29
[2026-08-31 04:13:29,920.920 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:13:30,178.178 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:13:30,188.188 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:13:30,395.395 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:13:30,449.449 INFO    ] time= 31/08/2026 04:13:30
[2026-08-31 04:13:30,456.456 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:13:30,474.474 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:13:30,586.586 INFO    ] No existing commands found in stream
[2026-08-31 04:13:35,613.613 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:13:35,616.616 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-08-31 04:13:38,699.699 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 04:13:38,701.701 INFO    ] Checking for system updates...
[2026-08-31 04:13:38,736.736 INFO    ] 200
[2026-08-31 04:13:38,739.739 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:13:38,799.799 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:13:38,802.802 INFO    ] No update needed
[2026-08-31 04:13:38,804.804 INFO    ] Checking for camera pi updates...
[2026-08-31 04:13:38,837.837 INFO    ] 200
[2026-08-31 04:13:38,840.840 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:13:38,883.883 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:13:38,968.968 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:13:38,971.971 INFO    ] No camera update needed
[2026-08-31 04:13:38,973.973 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:13:38,976.976 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:13:38,982.982 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:13:38,988.988 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:13:41,029.029 INFO    ] ================================================
[2026-08-31 04:13:41,045.045 INFO    ] Launching Daemon at Mon Aug 31 04:13:41 IST 2026
[2026-08-31 04:13:41,057.057 INFO    ] ================================================
[2026-08-31 04:13:41,636.636 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:13:41
[2026-08-31 04:13:42,233.233 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:13:42,517.517 INFO    ] Initializing speech engine...
[2026-08-31 04:13:42,524.524 INFO    ] 2026-08-31 04:13:42
[2026-08-31 04:13:42,785.785 INFO    ] 2026-08-31 04:13:42
[2026-08-31 04:13:42,839.839 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:13:43,066.066 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:13:43,086.086 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:13:43,264.264 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:13:43,313.313 INFO    ] time= 31/08/2026 04:13:43
[2026-08-31 04:13:43,348.348 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:13:43,365.365 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:13:43,474.474 INFO    ] No existing commands found in stream
[2026-08-31 04:13:48,491.491 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:13:48,494.494 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-08-31 04:13:49,324.324 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 04:13:49,327.327 INFO    ] Checking for system updates...
[2026-08-31 04:13:49,363.363 INFO    ] 200
[2026-08-31 04:13:49,366.366 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:13:49,419.419 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:13:49,422.422 INFO    ] No update needed
[2026-08-31 04:13:49,424.424 INFO    ] Checking for camera pi updates...
[2026-08-31 04:13:49,462.462 INFO    ] 200
[2026-08-31 04:13:49,465.465 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:13:49,505.505 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:13:49,585.585 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:13:49,588.588 INFO    ] No camera update needed
[2026-08-31 04:13:49,591.591 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:13:49,593.593 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:13:49,599.599 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:13:49,604.604 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:13:51,645.645 INFO    ] ================================================
[2026-08-31 04:13:51,662.662 INFO    ] Launching Daemon at Mon Aug 31 04:13:51 IST 2026
[2026-08-31 04:13:51,673.673 INFO    ] ================================================
[2026-08-31 04:13:52,284.284 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:13:52
[2026-08-31 04:13:52,958.958 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:13:53,265.265 INFO    ] Initializing speech engine...
[2026-08-31 04:13:53,278.278 INFO    ] 2026-08-31 04:13:53
[2026-08-31 04:13:53,551.551 INFO    ] 2026-08-31 04:13:53
[2026-08-31 04:13:53,606.606 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:13:53,834.834 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:13:53,844.844 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:13:53,983.983 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:13:54,033.033 INFO    ] time= 31/08/2026 04:13:53
[2026-08-31 04:13:54,098.098 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:13:54,101.101 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:13:54,162.162 INFO    ] No existing commands found in stream
[2026-08-31 04:13:59,173.173 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:13:59,176.176 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-08-31 04:14:03,243.243 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 04:14:03,247.247 INFO    ] Checking for system updates...
[2026-08-31 04:14:03,285.285 INFO    ] 200
[2026-08-31 04:14:03,288.288 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:14:03,352.352 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:14:03,355.355 INFO    ] No update needed
[2026-08-31 04:14:03,359.359 INFO    ] Checking for camera pi updates...
[2026-08-31 04:14:03,402.402 INFO    ] 200
[2026-08-31 04:14:03,405.405 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:14:03,453.453 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:14:03,560.560 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:14:03,562.562 INFO    ] No camera update needed
[2026-08-31 04:14:03,565.565 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:14:03,568.568 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:14:03,574.574 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:14:03,580.580 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:14:05,622.622 INFO    ] ================================================
[2026-08-31 04:14:05,637.637 INFO    ] Launching Daemon at Mon Aug 31 04:14:05 IST 2026
[2026-08-31 04:14:05,647.647 INFO    ] ================================================
[2026-08-31 04:14:06,312.312 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:14:06
[2026-08-31 04:14:06,934.934 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:14:07,232.232 INFO    ] Initializing speech engine...
[2026-08-31 04:14:07,246.246 INFO    ] 2026-08-31 04:14:07
[2026-08-31 04:14:07,558.558 INFO    ] 2026-08-31 04:14:07
[2026-08-31 04:14:07,644.644 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:14:07,844.844 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:14:07,862.862 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:14:08,061.061 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:14:08,077.077 INFO    ] time= 31/08/2026 04:14:08
[2026-08-31 04:14:08,086.086 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:14:08,116.116 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:14:08,222.222 INFO    ] No existing commands found in stream
[2026-08-31 04:14:13,256.256 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:14:13,260.260 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-08-31 04:14:17,210.210 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 04:14:17,213.213 INFO    ] Checking for system updates...
[2026-08-31 04:14:17,250.250 INFO    ] 200
[2026-08-31 04:14:17,254.254 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:14:17,309.309 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:14:17,311.311 INFO    ] No update needed
[2026-08-31 04:14:17,314.314 INFO    ] Checking for camera pi updates...
[2026-08-31 04:14:17,353.353 INFO    ] 200
[2026-08-31 04:14:17,356.356 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:14:17,405.405 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:14:17,494.494 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:14:17,497.497 INFO    ] No camera update needed
[2026-08-31 04:14:17,500.500 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:14:17,503.503 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:14:17,509.509 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:14:17,515.515 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:14:19,556.556 INFO    ] ================================================
[2026-08-31 04:14:19,571.571 INFO    ] Launching Daemon at Mon Aug 31 04:14:19 IST 2026
[2026-08-31 04:14:19,582.582 INFO    ] ================================================
[2026-08-31 04:14:20,246.246 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:14:20
[2026-08-31 04:14:20,930.930 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:14:21,238.238 INFO    ] Initializing speech engine...
[2026-08-31 04:14:21,246.246 INFO    ] 2026-08-31 04:14:21
[2026-08-31 04:14:21,565.565 INFO    ] 2026-08-31 04:14:21
[2026-08-31 04:14:21,650.650 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:14:21,862.862 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:14:21,871.871 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:14:22,035.035 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:14:22,065.065 INFO    ] time= 31/08/2026 04:14:22
[2026-08-31 04:14:22,082.082 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:14:22,098.098 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:14:22,218.218 INFO    ] No existing commands found in stream
[2026-08-31 04:14:27,243.243 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:14:27,246.246 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-08-31 04:14:28,291.291 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 04:14:28,294.294 INFO    ] Checking for system updates...
[2026-08-31 04:14:28,331.331 INFO    ] 200
[2026-08-31 04:14:28,334.334 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:14:28,388.388 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:14:28,391.391 INFO    ] No update needed
[2026-08-31 04:14:28,394.394 INFO    ] Checking for camera pi updates...
[2026-08-31 04:14:28,432.432 INFO    ] 200
[2026-08-31 04:14:28,435.435 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:14:28,481.481 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:14:28,559.559 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:14:28,561.561 INFO    ] No camera update needed
[2026-08-31 04:14:28,564.564 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:14:28,566.566 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:14:28,571.571 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:14:28,576.576 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:14:30,618.618 INFO    ] ================================================
[2026-08-31 04:14:30,633.633 INFO    ] Launching Daemon at Mon Aug 31 04:14:30 IST 2026
[2026-08-31 04:14:30,644.644 INFO    ] ================================================
[2026-08-31 04:14:31,213.213 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:14:31
[2026-08-31 04:14:31,844.844 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:14:32,176.176 INFO    ] Initializing speech engine...
[2026-08-31 04:14:32,187.187 INFO    ] 2026-08-31 04:14:32
[2026-08-31 04:14:32,497.497 INFO    ] 2026-08-31 04:14:32
[2026-08-31 04:14:32,539.539 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:14:32,802.802 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:14:32,813.813 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:14:32,963.963 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:14:32,979.979 INFO    ] time= 31/08/2026 04:14:32
[2026-08-31 04:14:33,021.021 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:14:33,070.070 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:14:33,165.165 INFO    ] No existing commands found in stream
[2026-08-31 04:14:38,176.176 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:14:38,179.179 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-08-31 04:14:41,683.683 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 04:14:41,685.685 INFO    ] Checking for system updates...
[2026-08-31 04:14:41,720.720 INFO    ] 200
[2026-08-31 04:14:41,723.723 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:14:41,775.775 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:14:41,777.777 INFO    ] No update needed
[2026-08-31 04:14:41,780.780 INFO    ] Checking for camera pi updates...
[2026-08-31 04:14:41,813.813 INFO    ] 200
[2026-08-31 04:14:41,815.815 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:14:41,855.855 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:14:41,965.965 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:14:41,968.968 INFO    ] No camera update needed
[2026-08-31 04:14:41,970.970 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:14:41,972.972 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:14:41,978.978 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:14:41,983.983 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:14:44,023.023 INFO    ] ================================================
[2026-08-31 04:14:44,038.038 INFO    ] Launching Daemon at Mon Aug 31 04:14:44 IST 2026
[2026-08-31 04:14:44,049.049 INFO    ] ================================================
[2026-08-31 04:14:44,620.620 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:14:44
[2026-08-31 04:14:45,210.210 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:14:45,468.468 INFO    ] Initializing speech engine...
[2026-08-31 04:14:45,483.483 INFO    ] 2026-08-31 04:14:45
[2026-08-31 04:14:45,769.769 INFO    ] 2026-08-31 04:14:45
[2026-08-31 04:14:45,805.805 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:14:46,006.006 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:14:46,013.013 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:14:46,152.152 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:14:46,158.158 INFO    ] time= 31/08/2026 04:14:46
[2026-08-31 04:14:46,176.176 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:14:46,199.199 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:14:46,278.278 INFO    ] No existing commands found in stream
[2026-08-31 04:14:51,313.313 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:14:51,316.316 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-08-31 04:14:55,730.730 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 04:14:55,733.733 INFO    ] Checking for system updates...
[2026-08-31 04:14:55,769.769 INFO    ] 200
[2026-08-31 04:14:55,772.772 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:14:55,824.824 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:14:55,826.826 INFO    ] No update needed
[2026-08-31 04:14:55,828.828 INFO    ] Checking for camera pi updates...
[2026-08-31 04:14:55,862.862 INFO    ] 200
[2026-08-31 04:14:55,865.865 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:14:55,905.905 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:14:55,986.986 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:14:55,988.988 INFO    ] No camera update needed
[2026-08-31 04:14:55,991.991 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:14:55,993.993 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:14:55,999.999 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:14:56,004.004 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:14:58,044.044 INFO    ] ================================================
[2026-08-31 04:14:58,059.059 INFO    ] Launching Daemon at Mon Aug 31 04:14:58 IST 2026
[2026-08-31 04:14:58,069.069 INFO    ] ================================================
[2026-08-31 04:14:58,639.639 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:14:58
[2026-08-31 04:14:59,225.225 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:14:59,485.485 INFO    ] Initializing speech engine...
[2026-08-31 04:14:59,504.504 INFO    ] 2026-08-31 04:14:59
[2026-08-31 04:14:59,753.753 INFO    ] 2026-08-31 04:14:59
[2026-08-31 04:14:59,789.789 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:15:00,050.050 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:15:00,059.059 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:15:00,245.245 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:15:00,290.290 INFO    ] time= 31/08/2026 04:15:00
[2026-08-31 04:15:00,338.338 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:15:00,345.345 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:15:00,476.476 INFO    ] No existing commands found in stream
[2026-08-31 04:15:05,505.505 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:15:05,508.508 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-08-31 04:15:09,853.853 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 04:15:09,856.856 INFO    ] Checking for system updates...
[2026-08-31 04:15:09,895.895 INFO    ] 200
[2026-08-31 04:15:09,897.897 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:15:09,956.956 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:15:09,958.958 INFO    ] No update needed
[2026-08-31 04:15:09,961.961 INFO    ] Checking for camera pi updates...
[2026-08-31 04:15:09,994.994 INFO    ] 200
[2026-08-31 04:15:09,996.996 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:15:10,036.036 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:15:10,116.116 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:15:10,119.119 INFO    ] No camera update needed
[2026-08-31 04:15:10,121.121 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:15:10,124.124 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:15:10,129.129 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:15:10,134.134 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:15:12,174.174 INFO    ] ================================================
[2026-08-31 04:15:12,196.196 INFO    ] Launching Daemon at Mon Aug 31 04:15:12 IST 2026
[2026-08-31 04:15:12,208.208 INFO    ] ================================================
[2026-08-31 04:15:12,791.791 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:15:12
[2026-08-31 04:15:13,379.379 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:15:13,640.640 INFO    ] Initializing speech engine...
[2026-08-31 04:15:13,655.655 INFO    ] 2026-08-31 04:15:13
[2026-08-31 04:15:13,940.940 INFO    ] 2026-08-31 04:15:13
[2026-08-31 04:15:13,978.978 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:15:14,175.175 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:15:14,189.189 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:15:14,355.355 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:15:14,360.360 INFO    ] time= 31/08/2026 04:15:14
[2026-08-31 04:15:14,367.367 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:15:14,394.394 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:15:14,509.509 INFO    ] No existing commands found in stream
[2026-08-31 04:15:19,534.534 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:15:19,536.536 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-08-31 04:15:20,003.003 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 04:15:20,006.006 INFO    ] Checking for system updates...
[2026-08-31 04:15:20,041.041 INFO    ] 200
[2026-08-31 04:15:20,044.044 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:15:20,097.097 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:15:20,100.100 INFO    ] No update needed
[2026-08-31 04:15:20,102.102 INFO    ] Checking for camera pi updates...
[2026-08-31 04:15:20,135.135 INFO    ] 200
[2026-08-31 04:15:20,138.138 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:15:20,178.178 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:15:20,275.275 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:15:20,278.278 INFO    ] No camera update needed
[2026-08-31 04:15:20,280.280 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:15:20,282.282 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:15:20,288.288 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:15:20,293.293 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:15:22,333.333 INFO    ] ================================================
[2026-08-31 04:15:22,348.348 INFO    ] Launching Daemon at Mon Aug 31 04:15:22 IST 2026
[2026-08-31 04:15:22,359.359 INFO    ] ================================================
[2026-08-31 04:15:22,933.933 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:15:22
[2026-08-31 04:15:23,534.534 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:15:23,802.802 INFO    ] Initializing speech engine...
[2026-08-31 04:15:23,820.820 INFO    ] 2026-08-31 04:15:23
[2026-08-31 04:15:24,067.067 INFO    ] 2026-08-31 04:15:24
[2026-08-31 04:15:24,105.105 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:15:24,268.268 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:15:24,274.274 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:15:24,407.407 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:15:24,417.417 INFO    ] time= 31/08/2026 04:15:24
[2026-08-31 04:15:24,421.421 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:15:24,442.442 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:15:24,551.551 INFO    ] No existing commands found in stream
[2026-08-31 04:15:29,560.560 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:15:29,563.563 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-08-31 04:15:33,794.794 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 04:15:33,797.797 INFO    ] Checking for system updates...
[2026-08-31 04:15:33,833.833 INFO    ] 200
[2026-08-31 04:15:33,835.835 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:15:33,894.894 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:15:33,897.897 INFO    ] No update needed
[2026-08-31 04:15:33,899.899 INFO    ] Checking for camera pi updates...
[2026-08-31 04:15:33,936.936 INFO    ] 200
[2026-08-31 04:15:33,939.939 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:15:33,979.979 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:15:34,082.082 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:15:34,084.084 INFO    ] No camera update needed
[2026-08-31 04:15:34,087.087 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:15:34,089.089 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:15:34,094.094 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:15:34,100.100 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:15:36,139.139 INFO    ] ================================================
[2026-08-31 04:15:36,153.153 INFO    ] Launching Daemon at Mon Aug 31 04:15:36 IST 2026
[2026-08-31 04:15:36,164.164 INFO    ] ================================================
[2026-08-31 04:15:36,738.738 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:15:36
[2026-08-31 04:15:37,324.324 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:15:37,584.584 INFO    ] Initializing speech engine...
[2026-08-31 04:15:37,603.603 INFO    ] 2026-08-31 04:15:37
[2026-08-31 04:15:37,856.856 INFO    ] 2026-08-31 04:15:37
[2026-08-31 04:15:37,891.891 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:15:38,072.072 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:15:38,090.090 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:15:38,226.226 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:15:38,288.288 INFO    ] time= 31/08/2026 04:15:38
[2026-08-31 04:15:38,293.293 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:15:38,368.368 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:15:38,469.469 INFO    ] No existing commands found in stream
[2026-08-31 04:15:43,480.480 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:15:43,483.483 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-08-31 04:15:44,654.654 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 04:15:44,658.658 INFO    ] Checking for system updates...
[2026-08-31 04:15:44,694.694 INFO    ] 200
[2026-08-31 04:15:44,696.696 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:15:44,754.754 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:15:44,757.757 INFO    ] No update needed
[2026-08-31 04:15:44,759.759 INFO    ] Checking for camera pi updates...
[2026-08-31 04:15:44,796.796 INFO    ] 200
[2026-08-31 04:15:44,798.798 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:15:44,838.838 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:15:44,921.921 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:15:44,924.924 INFO    ] No camera update needed
[2026-08-31 04:15:44,926.926 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:15:44,928.928 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:15:44,933.933 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:15:44,938.938 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:15:46,981.981 INFO    ] ================================================
[2026-08-31 04:15:47,997.997 INFO    ] Launching Daemon at Mon Aug 31 04:15:46 IST 2026
[2026-08-31 04:15:47,007.007 INFO    ] ================================================
[2026-08-31 04:15:47,598.598 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:15:47
[2026-08-31 04:15:48,212.212 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:15:48,502.502 INFO    ] Initializing speech engine...
[2026-08-31 04:15:48,511.511 INFO    ] 2026-08-31 04:15:48
[2026-08-31 04:15:48,786.786 INFO    ] 2026-08-31 04:15:48
[2026-08-31 04:15:48,823.823 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:15:49,046.046 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:15:49,059.059 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:15:49,274.274 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:15:49,282.282 INFO    ] time= 31/08/2026 04:15:49
[2026-08-31 04:15:49,347.347 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:15:49,391.391 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:15:49,484.484 INFO    ] No existing commands found in stream
[2026-08-31 04:15:54,496.496 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:15:54,500.500 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-08-31 04:15:56,893.893 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 04:15:56,896.896 INFO    ] Checking for system updates...
[2026-08-31 04:15:56,931.931 INFO    ] 200
[2026-08-31 04:15:56,934.934 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:15:56,986.986 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:15:56,988.988 INFO    ] No update needed
[2026-08-31 04:15:56,991.991 INFO    ] Checking for camera pi updates...
[2026-08-31 04:15:57,025.025 INFO    ] 200
[2026-08-31 04:15:57,027.027 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:15:57,072.072 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:15:57,169.169 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:15:57,172.172 INFO    ] No camera update needed
[2026-08-31 04:15:57,174.174 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:15:57,176.176 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:15:57,182.182 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:15:57,187.187 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:15:59,229.229 INFO    ] ================================================
[2026-08-31 04:15:59,245.245 INFO    ] Launching Daemon at Mon Aug 31 04:15:59 IST 2026
[2026-08-31 04:15:59,255.255 INFO    ] ================================================
[2026-08-31 04:15:59,828.828 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:15:59
[2026-08-31 04:16:00,413.413 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:16:00,669.669 INFO    ] Initializing speech engine...
[2026-08-31 04:16:00,678.678 INFO    ] 2026-08-31 04:16:00
[2026-08-31 04:16:00,974.974 INFO    ] 2026-08-31 04:16:00
[2026-08-31 04:16:01,008.008 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:16:01,208.208 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:16:01,215.215 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:16:01,390.390 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:16:01,395.395 INFO    ] time= 31/08/2026 04:16:01
[2026-08-31 04:16:01,401.401 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:16:01,444.444 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:16:01,564.564 INFO    ] No existing commands found in stream
[2026-08-31 04:16:06,589.589 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:16:06,592.592 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-08-31 04:16:09,286.286 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 04:16:09,288.288 INFO    ] Checking for system updates...
[2026-08-31 04:16:09,328.328 INFO    ] 200
[2026-08-31 04:16:09,330.330 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:16:09,390.390 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:16:09,393.393 INFO    ] No update needed
[2026-08-31 04:16:09,395.395 INFO    ] Checking for camera pi updates...
[2026-08-31 04:16:09,445.445 INFO    ] 200
[2026-08-31 04:16:09,449.449 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:16:09,492.492 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:16:09,575.575 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:16:09,578.578 INFO    ] No camera update needed
[2026-08-31 04:16:09,581.581 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:16:09,583.583 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:16:09,589.589 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:16:09,595.595 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:16:11,638.638 INFO    ] ================================================
[2026-08-31 04:16:11,654.654 INFO    ] Launching Daemon at Mon Aug 31 04:16:11 IST 2026
[2026-08-31 04:16:11,665.665 INFO    ] ================================================
[2026-08-31 04:16:12,232.232 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:16:12
[2026-08-31 04:16:12,830.830 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:16:13,100.100 INFO    ] Initializing speech engine...
[2026-08-31 04:16:13,111.111 INFO    ] 2026-08-31 04:16:13
[2026-08-31 04:16:13,363.363 INFO    ] 2026-08-31 04:16:13
[2026-08-31 04:16:13,422.422 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:16:13,649.649 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:16:13,654.654 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:16:13,889.889 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:16:13,911.911 INFO    ] time= 31/08/2026 04:16:13
[2026-08-31 04:16:13,927.927 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:16:13,936.936 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:16:14,058.058 INFO    ] No existing commands found in stream
[2026-08-31 04:16:19,074.074 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:16:19,076.076 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-08-31 04:16:21,318.318 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 04:16:21,320.320 INFO    ] Checking for system updates...
[2026-08-31 04:16:21,360.360 INFO    ] 200
[2026-08-31 04:16:21,362.362 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:16:21,422.422 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:16:21,424.424 INFO    ] No update needed
[2026-08-31 04:16:21,426.426 INFO    ] Checking for camera pi updates...
[2026-08-31 04:16:21,460.460 INFO    ] 200
[2026-08-31 04:16:21,463.463 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:16:21,510.510 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:16:21,567.567 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:16:21,571.571 INFO    ] No camera update needed
[2026-08-31 04:16:21,574.574 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:16:21,576.576 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:16:21,582.582 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:16:21,588.588 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:16:23,630.630 INFO    ] ================================================
[2026-08-31 04:16:23,645.645 INFO    ] Launching Daemon at Mon Aug 31 04:16:23 IST 2026
[2026-08-31 04:16:23,657.657 INFO    ] ================================================
[2026-08-31 04:16:24,230.230 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:16:24
[2026-08-31 04:16:24,832.832 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:16:25,096.096 INFO    ] Initializing speech engine...
[2026-08-31 04:16:25,121.121 INFO    ] 2026-08-31 04:16:25
[2026-08-31 04:16:25,397.397 INFO    ] 2026-08-31 04:16:25
[2026-08-31 04:16:25,435.435 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:16:25,635.635 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:16:25,650.650 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:16:25,813.813 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:16:25,817.817 INFO    ] time= 31/08/2026 04:16:25
[2026-08-31 04:16:25,825.825 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:16:25,829.829 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:16:25,910.910 INFO    ] No existing commands found in stream
[2026-08-31 04:16:30,940.940 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:16:30,943.943 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-08-31 04:16:35,076.076 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 04:16:35,079.079 INFO    ] Checking for system updates...
[2026-08-31 04:16:35,115.115 INFO    ] 200
[2026-08-31 04:16:35,119.119 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:16:35,173.173 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:16:35,177.177 INFO    ] No update needed
[2026-08-31 04:16:35,180.180 INFO    ] Checking for camera pi updates...
[2026-08-31 04:16:35,215.215 INFO    ] 200
[2026-08-31 04:16:35,218.218 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:16:35,260.260 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:16:35,359.359 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:16:35,361.361 INFO    ] No camera update needed
[2026-08-31 04:16:35,365.365 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:16:35,367.367 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:16:35,374.374 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:16:35,380.380 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:16:37,423.423 INFO    ] ================================================
[2026-08-31 04:16:37,439.439 INFO    ] Launching Daemon at Mon Aug 31 04:16:37 IST 2026
[2026-08-31 04:16:37,451.451 INFO    ] ================================================
[2026-08-31 04:16:38,080.080 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:16:38
[2026-08-31 04:16:38,768.768 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:16:39,081.081 INFO    ] Initializing speech engine...
[2026-08-31 04:16:39,095.095 INFO    ] 2026-08-31 04:16:39
[2026-08-31 04:16:39,412.412 INFO    ] 2026-08-31 04:16:39
[2026-08-31 04:16:39,495.495 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:16:39,674.674 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:16:39,693.693 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:16:39,880.880 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:16:39,914.914 INFO    ] time= 31/08/2026 04:16:39
[2026-08-31 04:16:39,931.931 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:16:39,943.943 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:16:40,073.073 INFO    ] No existing commands found in stream
[2026-08-31 04:16:45,088.088 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:16:45,092.092 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-08-31 04:16:48,206.206 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 04:16:48,209.209 INFO    ] Checking for system updates...
[2026-08-31 04:16:48,250.250 INFO    ] 200
[2026-08-31 04:16:48,253.253 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:16:48,314.314 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:16:48,316.316 INFO    ] No update needed
[2026-08-31 04:16:48,319.319 INFO    ] Checking for camera pi updates...
[2026-08-31 04:16:48,353.353 INFO    ] 200
[2026-08-31 04:16:48,355.355 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:16:48,395.395 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:16:48,496.496 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:16:48,498.498 INFO    ] No camera update needed
[2026-08-31 04:16:48,501.501 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:16:48,503.503 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:16:48,509.509 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:16:48,514.514 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:16:50,556.556 INFO    ] ================================================
[2026-08-31 04:16:50,572.572 INFO    ] Launching Daemon at Mon Aug 31 04:16:50 IST 2026
[2026-08-31 04:16:50,583.583 INFO    ] ================================================
[2026-08-31 04:16:51,160.160 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:16:51
[2026-08-31 04:16:51,751.751 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:16:52,007.007 INFO    ] Initializing speech engine...
[2026-08-31 04:16:52,019.019 INFO    ] 2026-08-31 04:16:52
[2026-08-31 04:16:52,321.321 INFO    ] 2026-08-31 04:16:52
[2026-08-31 04:16:52,347.347 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:16:52,561.561 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:16:52,578.578 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:16:52,748.748 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:16:52,753.753 INFO    ] time= 31/08/2026 04:16:52
[2026-08-31 04:16:52,760.760 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:16:52,804.804 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:16:52,908.908 INFO    ] No existing commands found in stream
[2026-08-31 04:16:57,939.939 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:16:57,942.942 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-08-31 04:17:01,724.724 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 04:17:01,728.728 INFO    ] Checking for system updates...
[2026-08-31 04:17:01,773.773 INFO    ] 200
[2026-08-31 04:17:01,776.776 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:17:01,843.843 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:17:01,846.846 INFO    ] No update needed
[2026-08-31 04:17:01,859.859 INFO    ] Checking for camera pi updates...
[2026-08-31 04:17:01,901.901 INFO    ] 200
[2026-08-31 04:17:01,904.904 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:17:01,952.952 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:17:02,066.066 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:17:02,069.069 INFO    ] No camera update needed
[2026-08-31 04:17:02,073.073 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:17:02,075.075 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:17:02,082.082 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:17:02,088.088 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:17:04,130.130 INFO    ] ================================================
[2026-08-31 04:17:04,145.145 INFO    ] Launching Daemon at Mon Aug 31 04:17:04 IST 2026
[2026-08-31 04:17:04,156.156 INFO    ] ================================================
[2026-08-31 04:17:04,743.743 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:17:04
[2026-08-31 04:17:05,349.349 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:17:05,612.612 INFO    ] Initializing speech engine...
[2026-08-31 04:17:05,618.618 INFO    ] 2026-08-31 04:17:05
[2026-08-31 04:17:05,921.921 INFO    ] 2026-08-31 04:17:05
[2026-08-31 04:17:05,974.974 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:17:06,160.160 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:17:06,174.174 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:17:06,385.385 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:17:06,430.430 INFO    ] time= 31/08/2026 04:17:06
[2026-08-31 04:17:06,490.490 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:17:06,520.520 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:17:06,663.663 INFO    ] No existing commands found in stream
[2026-08-31 04:17:11,677.677 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:17:11,680.680 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-08-31 04:17:12,332.332 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 04:17:12,334.334 INFO    ] Checking for system updates...
[2026-08-31 04:17:12,370.370 INFO    ] 200
[2026-08-31 04:17:12,372.372 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:17:12,426.426 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:17:12,428.428 INFO    ] No update needed
[2026-08-31 04:17:12,431.431 INFO    ] Checking for camera pi updates...
[2026-08-31 04:17:12,470.470 INFO    ] 200
[2026-08-31 04:17:12,472.472 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:17:12,518.518 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:17:12,599.599 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:17:12,601.601 INFO    ] No camera update needed
[2026-08-31 04:17:12,604.604 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:17:12,606.606 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:17:12,611.611 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:17:12,617.617 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:17:14,657.657 INFO    ] ================================================
[2026-08-31 04:17:14,672.672 INFO    ] Launching Daemon at Mon Aug 31 04:17:14 IST 2026
[2026-08-31 04:17:14,683.683 INFO    ] ================================================
[2026-08-31 04:17:15,248.248 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:17:15
[2026-08-31 04:17:15,831.831 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:17:16,108.108 INFO    ] Initializing speech engine...
[2026-08-31 04:17:16,116.116 INFO    ] 2026-08-31 04:17:16
[2026-08-31 04:17:16,379.379 INFO    ] 2026-08-31 04:17:16
[2026-08-31 04:17:16,432.432 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:17:16,676.676 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:17:16,684.684 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:17:16,878.878 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:17:16,919.919 INFO    ] time= 31/08/2026 04:17:16
[2026-08-31 04:17:16,925.925 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:17:16,942.942 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:17:17,073.073 INFO    ] No existing commands found in stream
[2026-08-31 04:17:22,088.088 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:17:22,091.091 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-08-31 04:17:22,917.917 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 04:17:22,919.919 INFO    ] Checking for system updates...
[2026-08-31 04:17:22,959.959 INFO    ] 200
[2026-08-31 04:17:22,962.962 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:17:23,015.015 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:17:23,017.017 INFO    ] No update needed
[2026-08-31 04:17:23,020.020 INFO    ] Checking for camera pi updates...
[2026-08-31 04:17:23,056.056 INFO    ] 200
[2026-08-31 04:17:23,059.059 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:17:23,114.114 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:17:23,256.256 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:17:23,258.258 INFO    ] No camera update needed
[2026-08-31 04:17:23,261.261 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:17:23,263.263 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:17:23,269.269 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:17:23,274.274 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:17:25,316.316 INFO    ] ================================================
[2026-08-31 04:17:25,332.332 INFO    ] Launching Daemon at Mon Aug 31 04:17:25 IST 2026
[2026-08-31 04:17:25,343.343 INFO    ] ================================================
[2026-08-31 04:17:25,994.994 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:17:25
[2026-08-31 04:17:26,671.671 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:17:27,002.002 INFO    ] Initializing speech engine...
[2026-08-31 04:17:27,012.012 INFO    ] 2026-08-31 04:17:27
[2026-08-31 04:17:27,334.334 INFO    ] 2026-08-31 04:17:27
[2026-08-31 04:17:27,414.414 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:17:27,640.640 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:17:27,645.645 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:17:27,844.844 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:17:27,855.855 INFO    ] time= 31/08/2026 04:17:27
[2026-08-31 04:17:27,873.873 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:17:27,903.903 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:17:28,044.044 INFO    ] No existing commands found in stream
[2026-08-31 04:17:33,080.080 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:17:33,083.083 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-08-31 04:17:35,038.038 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 04:17:35,041.041 INFO    ] Checking for system updates...
[2026-08-31 04:17:35,078.078 INFO    ] 200
[2026-08-31 04:17:35,081.081 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:17:35,135.135 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:17:35,137.137 INFO    ] No update needed
[2026-08-31 04:17:35,140.140 INFO    ] Checking for camera pi updates...
[2026-08-31 04:17:35,175.175 INFO    ] 200
[2026-08-31 04:17:35,178.178 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:17:35,224.224 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:17:35,386.386 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:17:35,389.389 INFO    ] No camera update needed
[2026-08-31 04:17:35,392.392 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:17:35,394.394 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:17:35,401.401 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:17:35,407.407 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:17:37,448.448 INFO    ] ================================================
[2026-08-31 04:17:37,463.463 INFO    ] Launching Daemon at Mon Aug 31 04:17:37 IST 2026
[2026-08-31 04:17:37,474.474 INFO    ] ================================================
[2026-08-31 04:17:38,133.133 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:17:38
[2026-08-31 04:17:38,725.725 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:17:38,997.997 INFO    ] Initializing speech engine...
[2026-08-31 04:17:39,006.006 INFO    ] 2026-08-31 04:17:38
[2026-08-31 04:17:39,257.257 INFO    ] 2026-08-31 04:17:39
[2026-08-31 04:17:39,292.292 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:17:39,550.550 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:17:39,559.559 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:17:39,694.694 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:17:39,731.731 INFO    ] time= 31/08/2026 04:17:39
[2026-08-31 04:17:39,790.790 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:17:39,831.831 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:17:39,962.962 INFO    ] No existing commands found in stream
[2026-08-31 04:17:44,990.990 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:17:44,993.993 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-08-31 04:17:46,719.719 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 04:17:46,721.721 INFO    ] Checking for system updates...
[2026-08-31 04:17:46,757.757 INFO    ] 200
[2026-08-31 04:17:46,759.759 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:17:46,812.812 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:17:46,815.815 INFO    ] No update needed
[2026-08-31 04:17:46,817.817 INFO    ] Checking for camera pi updates...
[2026-08-31 04:17:46,851.851 INFO    ] 200
[2026-08-31 04:17:46,853.853 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:17:46,898.898 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:17:47,000.000 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:17:47,002.002 INFO    ] No camera update needed
[2026-08-31 04:17:47,005.005 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:17:47,007.007 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:17:47,012.012 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:17:47,017.017 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:17:49,060.060 INFO    ] ================================================
[2026-08-31 04:17:49,076.076 INFO    ] Launching Daemon at Mon Aug 31 04:17:49 IST 2026
[2026-08-31 04:17:49,087.087 INFO    ] ================================================
[2026-08-31 04:17:49,668.668 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:17:49
[2026-08-31 04:17:50,271.271 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:17:50,530.530 INFO    ] Initializing speech engine...
[2026-08-31 04:17:50,539.539 INFO    ] 2026-08-31 04:17:50
[2026-08-31 04:17:50,837.837 INFO    ] 2026-08-31 04:17:50
[2026-08-31 04:17:50,876.876 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:17:51,023.023 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:17:51,030.030 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:17:51,189.189 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:17:51,194.194 INFO    ] time= 31/08/2026 04:17:51
[2026-08-31 04:17:51,199.199 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:17:51,222.222 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:17:51,281.281 INFO    ] No existing commands found in stream
[2026-08-31 04:17:56,292.292 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:17:56,294.294 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-08-31 04:17:58,929.929 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 04:17:58,932.932 INFO    ] Checking for system updates...
[2026-08-31 04:17:58,967.967 INFO    ] 200
[2026-08-31 04:17:58,969.969 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:17:59,021.021 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:17:59,023.023 INFO    ] No update needed
[2026-08-31 04:17:59,026.026 INFO    ] Checking for camera pi updates...
[2026-08-31 04:17:59,059.059 INFO    ] 200
[2026-08-31 04:17:59,061.061 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:17:59,101.101 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:17:59,182.182 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:17:59,184.184 INFO    ] No camera update needed
[2026-08-31 04:17:59,186.186 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:17:59,189.189 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:17:59,194.194 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:17:59,199.199 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:18:01,250.250 INFO    ] ================================================
[2026-08-31 04:18:01,289.289 INFO    ] Launching Daemon at Mon Aug 31 04:18:01 IST 2026
[2026-08-31 04:18:01,303.303 INFO    ] ================================================
[2026-08-31 04:18:01,971.971 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:18:01
[2026-08-31 04:18:02,641.641 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:18:02,938.938 INFO    ] Initializing speech engine...
[2026-08-31 04:18:02,955.955 INFO    ] 2026-08-31 04:18:02
[2026-08-31 04:18:03,211.211 INFO    ] 2026-08-31 04:18:03
[2026-08-31 04:18:03,246.246 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:18:03,508.508 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:18:03,513.513 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:18:03,723.723 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:18:03,772.772 INFO    ] time= 31/08/2026 04:18:03
[2026-08-31 04:18:03,778.778 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:18:03,795.795 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:18:03,911.911 INFO    ] No existing commands found in stream
[2026-08-31 04:18:08,936.936 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:18:08,939.939 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-08-31 04:18:12,539.539 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 04:18:12,542.542 INFO    ] Checking for system updates...
[2026-08-31 04:18:12,577.577 INFO    ] 200
[2026-08-31 04:18:12,580.580 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:18:12,636.636 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:18:12,638.638 INFO    ] No update needed
[2026-08-31 04:18:12,641.641 INFO    ] Checking for camera pi updates...
[2026-08-31 04:18:12,674.674 INFO    ] 200
[2026-08-31 04:18:12,676.676 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:18:12,716.716 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:18:12,768.768 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:18:12,771.771 INFO    ] No camera update needed
[2026-08-31 04:18:12,773.773 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:18:12,775.775 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:18:12,781.781 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:18:12,785.785 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:18:14,825.825 INFO    ] ================================================
[2026-08-31 04:18:14,841.841 INFO    ] Launching Daemon at Mon Aug 31 04:18:14 IST 2026
[2026-08-31 04:18:14,852.852 INFO    ] ================================================
[2026-08-31 04:18:15,425.425 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:18:15
[2026-08-31 04:18:16,009.009 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:18:16,261.261 INFO    ] Initializing speech engine...
[2026-08-31 04:18:16,270.270 INFO    ] 2026-08-31 04:18:16
[2026-08-31 04:18:16,569.569 INFO    ] 2026-08-31 04:18:16
[2026-08-31 04:18:16,604.604 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:18:16,806.806 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:18:16,818.818 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:18:16,959.959 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:18:16,981.981 INFO    ] time= 31/08/2026 04:18:16
[2026-08-31 04:18:16,991.991 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:18:16,998.998 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:18:17,083.083 INFO    ] No existing commands found in stream
[2026-08-31 04:18:22,098.098 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:18:22,101.101 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-08-31 04:18:25,089.089 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 04:18:25,092.092 INFO    ] Checking for system updates...
[2026-08-31 04:18:25,127.127 INFO    ] 200
[2026-08-31 04:18:25,129.129 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:18:25,180.180 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:18:25,183.183 INFO    ] No update needed
[2026-08-31 04:18:25,185.185 INFO    ] Checking for camera pi updates...
[2026-08-31 04:18:25,221.221 INFO    ] 200
[2026-08-31 04:18:25,224.224 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:18:25,267.267 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:18:25,352.352 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:18:25,355.355 INFO    ] No camera update needed
[2026-08-31 04:18:25,357.357 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:18:25,360.360 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:18:25,365.365 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:18:25,370.370 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:18:27,410.410 INFO    ] ================================================
[2026-08-31 04:18:27,426.426 INFO    ] Launching Daemon at Mon Aug 31 04:18:27 IST 2026
[2026-08-31 04:18:27,438.438 INFO    ] ================================================
[2026-08-31 04:18:28,048.048 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:18:28
[2026-08-31 04:18:28,674.674 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:18:28,986.986 INFO    ] Initializing speech engine...
[2026-08-31 04:18:28,991.991 INFO    ] 2026-08-31 04:18:28
[2026-08-31 04:18:29,261.261 INFO    ] 2026-08-31 04:18:29
[2026-08-31 04:18:29,296.296 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:18:29,487.487 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:18:29,501.501 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:18:29,633.633 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:18:29,681.681 INFO    ] time= 31/08/2026 04:18:29
[2026-08-31 04:18:29,702.702 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:18:29,744.744 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:18:29,834.834 INFO    ] No existing commands found in stream
[2026-08-31 04:18:34,847.847 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:18:34,850.850 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-08-31 04:18:35,641.641 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 04:18:35,644.644 INFO    ] Checking for system updates...
[2026-08-31 04:18:35,679.679 INFO    ] 200
[2026-08-31 04:18:35,682.682 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:18:35,735.735 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:18:35,738.738 INFO    ] No update needed
[2026-08-31 04:18:35,740.740 INFO    ] Checking for camera pi updates...
[2026-08-31 04:18:35,774.774 INFO    ] 200
[2026-08-31 04:18:35,776.776 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:18:35,816.816 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:18:35,898.898 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:18:35,901.901 INFO    ] No camera update needed
[2026-08-31 04:18:35,903.903 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:18:35,905.905 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:18:35,911.911 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:18:35,916.916 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:18:37,956.956 INFO    ] ================================================
[2026-08-31 04:18:37,971.971 INFO    ] Launching Daemon at Mon Aug 31 04:18:37 IST 2026
[2026-08-31 04:18:37,981.981 INFO    ] ================================================
[2026-08-31 04:18:38,563.563 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:18:38
[2026-08-31 04:18:39,161.161 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:18:39,433.433 INFO    ] Initializing speech engine...
[2026-08-31 04:18:39,442.442 INFO    ] 2026-08-31 04:18:39
[2026-08-31 04:18:39,695.695 INFO    ] 2026-08-31 04:18:39
[2026-08-31 04:18:39,766.766 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:18:39,989.989 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:18:39,998.998 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:18:40,132.132 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:18:40,174.174 INFO    ] time= 31/08/2026 04:18:40
[2026-08-31 04:18:40,228.228 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:18:40,269.269 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:18:40,402.402 INFO    ] No existing commands found in stream
[2026-08-31 04:18:45,432.432 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:18:45,435.435 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-08-31 04:18:48,524.524 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 04:18:48,527.527 INFO    ] Checking for system updates...
[2026-08-31 04:18:48,566.566 INFO    ] 200
[2026-08-31 04:18:48,568.568 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:18:48,620.620 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:18:48,622.622 INFO    ] No update needed
[2026-08-31 04:18:48,625.625 INFO    ] Checking for camera pi updates...
[2026-08-31 04:18:48,661.661 INFO    ] 200
[2026-08-31 04:18:48,664.664 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:18:48,704.704 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:18:48,802.802 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:18:48,805.805 INFO    ] No camera update needed
[2026-08-31 04:18:48,807.807 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:18:48,810.810 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:18:48,815.815 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:18:48,820.820 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:18:50,860.860 INFO    ] ================================================
[2026-08-31 04:18:50,876.876 INFO    ] Launching Daemon at Mon Aug 31 04:18:50 IST 2026
[2026-08-31 04:18:50,887.887 INFO    ] ================================================
[2026-08-31 04:18:51,489.489 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:18:51
[2026-08-31 04:18:52,096.096 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:18:52,368.368 INFO    ] Initializing speech engine...
[2026-08-31 04:18:52,387.387 INFO    ] 2026-08-31 04:18:52
[2026-08-31 04:18:52,654.654 INFO    ] 2026-08-31 04:18:52
[2026-08-31 04:18:52,688.688 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:18:52,886.886 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:18:52,899.899 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:18:53,051.051 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:18:53,095.095 INFO    ] time= 31/08/2026 04:18:53
[2026-08-31 04:18:53,119.119 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:18:53,174.174 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:18:53,270.270 INFO    ] No existing commands found in stream
[2026-08-31 04:18:58,286.286 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:18:58,289.289 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-08-31 04:19:01,106.106 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 04:19:01,111.111 INFO    ] Checking for system updates...
[2026-08-31 04:19:01,217.217 INFO    ] 200
[2026-08-31 04:19:01,223.223 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:19:01,318.318 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:19:01,322.322 INFO    ] No update needed
[2026-08-31 04:19:01,325.325 INFO    ] Checking for camera pi updates...
[2026-08-31 04:19:01,381.381 INFO    ] 200
[2026-08-31 04:19:01,384.384 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:19:01,442.442 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:19:01,528.528 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:19:01,534.534 INFO    ] No camera update needed
[2026-08-31 04:19:01,538.538 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:19:01,543.543 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:19:01,551.551 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:19:01,558.558 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:19:03,602.602 INFO    ] ================================================
[2026-08-31 04:19:03,618.618 INFO    ] Launching Daemon at Mon Aug 31 04:19:03 IST 2026
[2026-08-31 04:19:03,632.632 INFO    ] ================================================
[2026-08-31 04:19:04,289.289 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:19:04
[2026-08-31 04:19:04,962.962 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:19:05,264.264 INFO    ] Initializing speech engine...
[2026-08-31 04:19:05,278.278 INFO    ] 2026-08-31 04:19:05
[2026-08-31 04:19:05,561.561 INFO    ] 2026-08-31 04:19:05
[2026-08-31 04:19:05,605.605 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:19:05,837.837 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:19:05,843.843 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:19:05,983.983 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:19:06,035.035 INFO    ] time= 31/08/2026 04:19:05
[2026-08-31 04:19:06,101.101 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:19:06,130.130 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:19:06,229.229 INFO    ] No existing commands found in stream
[2026-08-31 04:19:11,255.255 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:19:11,259.259 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-08-31 04:19:14,968.968 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 04:19:14,971.971 INFO    ] Checking for system updates...
[2026-08-31 04:19:15,011.011 INFO    ] 200
[2026-08-31 04:19:15,014.014 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:19:15,068.068 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:19:15,070.070 INFO    ] No update needed
[2026-08-31 04:19:15,073.073 INFO    ] Checking for camera pi updates...
[2026-08-31 04:19:15,119.119 INFO    ] 200
[2026-08-31 04:19:15,122.122 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:19:15,163.163 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:19:15,236.236 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:19:15,239.239 INFO    ] No camera update needed
[2026-08-31 04:19:15,241.241 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:19:15,244.244 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:19:15,249.249 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:19:15,255.255 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:19:17,296.296 INFO    ] ================================================
[2026-08-31 04:19:17,311.311 INFO    ] Launching Daemon at Mon Aug 31 04:19:17 IST 2026
[2026-08-31 04:19:17,322.322 INFO    ] ================================================
[2026-08-31 04:19:17,960.960 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:19:17
[2026-08-31 04:19:18,628.628 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:19:18,943.943 INFO    ] Initializing speech engine...
[2026-08-31 04:19:18,952.952 INFO    ] 2026-08-31 04:19:18
[2026-08-31 04:19:19,243.243 INFO    ] 2026-08-31 04:19:19
[2026-08-31 04:19:19,296.296 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:19:19,516.516 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:19:19,526.526 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:19:19,733.733 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:19:19,790.790 INFO    ] time= 31/08/2026 04:19:19
[2026-08-31 04:19:19,797.797 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:19:19,819.819 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:19:19,944.944 INFO    ] No existing commands found in stream
[2026-08-31 04:19:24,963.963 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:19:24,966.966 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-08-31 04:19:28,038.038 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 04:19:28,042.042 INFO    ] Checking for system updates...
[2026-08-31 04:19:28,078.078 INFO    ] 200
[2026-08-31 04:19:28,080.080 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:19:28,138.138 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:19:28,141.141 INFO    ] No update needed
[2026-08-31 04:19:28,143.143 INFO    ] Checking for camera pi updates...
[2026-08-31 04:19:28,176.176 INFO    ] 200
[2026-08-31 04:19:28,179.179 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:19:28,219.219 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:19:28,320.320 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:19:28,322.322 INFO    ] No camera update needed
[2026-08-31 04:19:28,324.324 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:19:28,326.326 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:19:28,332.332 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:19:28,337.337 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:19:30,376.376 INFO    ] ================================================
[2026-08-31 04:19:30,391.391 INFO    ] Launching Daemon at Mon Aug 31 04:19:30 IST 2026
[2026-08-31 04:19:30,402.402 INFO    ] ================================================
[2026-08-31 04:19:30,984.984 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:19:30
[2026-08-31 04:19:31,615.615 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:19:31,918.918 INFO    ] Initializing speech engine...
[2026-08-31 04:19:31,926.926 INFO    ] 2026-08-31 04:19:31
[2026-08-31 04:19:32,203.203 INFO    ] 2026-08-31 04:19:32
[2026-08-31 04:19:32,257.257 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:19:32,501.501 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:19:32,506.506 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:19:32,722.722 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:19:32,765.765 INFO    ] time= 31/08/2026 04:19:32
[2026-08-31 04:19:32,771.771 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:19:32,792.792 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:19:32,916.916 INFO    ] No existing commands found in stream
[2026-08-31 04:19:37,930.930 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:19:37,932.932 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-08-31 04:19:40,294.294 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 04:19:40,297.297 INFO    ] Checking for system updates...
[2026-08-31 04:19:40,333.333 INFO    ] 200
[2026-08-31 04:19:40,335.335 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:19:40,387.387 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:19:40,390.390 INFO    ] No update needed
[2026-08-31 04:19:40,392.392 INFO    ] Checking for camera pi updates...
[2026-08-31 04:19:40,426.426 INFO    ] 200
[2026-08-31 04:19:40,429.429 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:19:40,471.471 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:19:40,651.651 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:19:40,653.653 INFO    ] No camera update needed
[2026-08-31 04:19:40,655.655 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:19:40,658.658 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:19:40,663.663 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:19:40,668.668 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:19:42,709.709 INFO    ] ================================================
[2026-08-31 04:19:42,724.724 INFO    ] Launching Daemon at Mon Aug 31 04:19:42 IST 2026
[2026-08-31 04:19:42,735.735 INFO    ] ================================================
[2026-08-31 04:19:43,322.322 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:19:43
[2026-08-31 04:19:43,929.929 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:19:44,203.203 INFO    ] Initializing speech engine...
[2026-08-31 04:19:44,212.212 INFO    ] 2026-08-31 04:19:44
[2026-08-31 04:19:44,466.466 INFO    ] 2026-08-31 04:19:44
[2026-08-31 04:19:44,501.501 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:19:44,678.678 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:19:44,691.691 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:19:44,907.907 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:19:44,933.933 INFO    ] time= 31/08/2026 04:19:44
[2026-08-31 04:19:45,003.003 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:19:45,045.045 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:19:45,106.106 INFO    ] No existing commands found in stream
[2026-08-31 04:19:50,120.120 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:19:50,123.123 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-08-31 04:19:52,807.807 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 04:19:52,810.810 INFO    ] Checking for system updates...
[2026-08-31 04:19:52,845.845 INFO    ] 200
[2026-08-31 04:19:52,848.848 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:19:52,902.902 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:19:52,904.904 INFO    ] No update needed
[2026-08-31 04:19:52,906.906 INFO    ] Checking for camera pi updates...
[2026-08-31 04:19:52,940.940 INFO    ] 200
[2026-08-31 04:19:52,942.942 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:19:52,984.984 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:19:53,068.068 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:19:53,070.070 INFO    ] No camera update needed
[2026-08-31 04:19:53,072.072 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:19:53,075.075 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:19:53,080.080 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:19:53,085.085 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:19:55,128.128 INFO    ] ================================================
[2026-08-31 04:19:55,143.143 INFO    ] Launching Daemon at Mon Aug 31 04:19:55 IST 2026
[2026-08-31 04:19:55,154.154 INFO    ] ================================================
[2026-08-31 04:19:55,825.825 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:19:55
[2026-08-31 04:19:56,515.515 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:19:56,765.765 INFO    ] Initializing speech engine...
[2026-08-31 04:19:56,789.789 INFO    ] 2026-08-31 04:19:56
[2026-08-31 04:19:57,044.044 INFO    ] 2026-08-31 04:19:57
[2026-08-31 04:19:57,077.077 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:19:57,340.340 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:19:57,349.349 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:19:57,487.487 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:19:57,527.527 INFO    ] time= 31/08/2026 04:19:57
[2026-08-31 04:19:57,566.566 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:19:57,624.624 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:19:57,757.757 INFO    ] No existing commands found in stream
[2026-08-31 04:20:02,780.780 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:20:02,784.784 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-08-31 04:20:07,849.849 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 04:20:07,851.851 INFO    ] Checking for system updates...
[2026-08-31 04:20:07,887.887 INFO    ] 200
[2026-08-31 04:20:07,889.889 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:20:07,941.941 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:20:07,944.944 INFO    ] No update needed
[2026-08-31 04:20:07,946.946 INFO    ] Checking for camera pi updates...
[2026-08-31 04:20:07,979.979 INFO    ] 200
[2026-08-31 04:20:07,982.982 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:20:08,028.028 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:20:08,117.117 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:20:08,119.119 INFO    ] No camera update needed
[2026-08-31 04:20:08,122.122 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:20:08,124.124 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:20:08,129.129 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:20:08,134.134 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:20:10,178.178 INFO    ] ================================================
[2026-08-31 04:20:10,193.193 INFO    ] Launching Daemon at Mon Aug 31 04:20:10 IST 2026
[2026-08-31 04:20:10,204.204 INFO    ] ================================================
[2026-08-31 04:20:10,771.771 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:20:10
[2026-08-31 04:20:11,354.354 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:20:11,623.623 INFO    ] Initializing speech engine...
[2026-08-31 04:20:11,630.630 INFO    ] 2026-08-31 04:20:11
[2026-08-31 04:20:11,875.875 INFO    ] 2026-08-31 04:20:11
[2026-08-31 04:20:11,909.909 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:20:12,126.126 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:20:12,175.175 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:20:12,313.313 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:20:12,362.362 INFO    ] time= 31/08/2026 04:20:12
[2026-08-31 04:20:12,422.422 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:20:12,451.451 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:20:12,572.572 INFO    ] No existing commands found in stream
[2026-08-31 04:20:17,598.598 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:20:17,601.601 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-08-31 04:20:19,810.810 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 04:20:19,812.812 INFO    ] Checking for system updates...
[2026-08-31 04:20:19,848.848 INFO    ] 200
[2026-08-31 04:20:19,851.851 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:20:19,905.905 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:20:19,907.907 INFO    ] No update needed
[2026-08-31 04:20:19,914.914 INFO    ] Checking for camera pi updates...
[2026-08-31 04:20:19,952.952 INFO    ] 200
[2026-08-31 04:20:19,955.955 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:20:20,003.003 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:20:20,101.101 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:20:20,103.103 INFO    ] No camera update needed
[2026-08-31 04:20:20,106.106 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:20:20,109.109 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:20:20,115.115 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:20:20,121.121 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:20:22,163.163 INFO    ] ================================================
[2026-08-31 04:20:22,178.178 INFO    ] Launching Daemon at Mon Aug 31 04:20:22 IST 2026
[2026-08-31 04:20:22,188.188 INFO    ] ================================================
[2026-08-31 04:20:22,753.753 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:20:22
[2026-08-31 04:20:23,333.333 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:20:23,587.587 INFO    ] Initializing speech engine...
[2026-08-31 04:20:23,594.594 INFO    ] 2026-08-31 04:20:23
[2026-08-31 04:20:23,863.863 INFO    ] 2026-08-31 04:20:23
[2026-08-31 04:20:23,899.899 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:20:24,097.097 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:20:24,105.105 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:20:24,265.265 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:20:24,308.308 INFO    ] time= 31/08/2026 04:20:24
[2026-08-31 04:20:24,338.338 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:20:24,391.391 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:20:24,478.478 INFO    ] No existing commands found in stream
[2026-08-31 04:20:29,500.500 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:20:29,503.503 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-08-31 04:20:31,936.936 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 04:20:31,940.940 INFO    ] Checking for system updates...
[2026-08-31 04:20:31,982.982 INFO    ] 200
[2026-08-31 04:20:31,985.985 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:20:32,042.042 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:20:32,045.045 INFO    ] No update needed
[2026-08-31 04:20:32,048.048 INFO    ] Checking for camera pi updates...
[2026-08-31 04:20:32,084.084 INFO    ] 200
[2026-08-31 04:20:32,086.086 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:20:32,134.134 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:20:32,199.199 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:20:32,201.201 INFO    ] No camera update needed
[2026-08-31 04:20:32,204.204 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:20:32,206.206 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:20:32,212.212 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:20:32,218.218 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:20:34,260.260 INFO    ] ================================================
[2026-08-31 04:20:34,274.274 INFO    ] Launching Daemon at Mon Aug 31 04:20:34 IST 2026
[2026-08-31 04:20:34,285.285 INFO    ] ================================================
[2026-08-31 04:20:34,849.849 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:20:34
[2026-08-31 04:20:35,444.444 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:20:35,723.723 INFO    ] Initializing speech engine...
[2026-08-31 04:20:35,745.745 INFO    ] 2026-08-31 04:20:35
[2026-08-31 04:20:36,012.012 INFO    ] 2026-08-31 04:20:35
[2026-08-31 04:20:36,048.048 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:20:36,301.301 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:20:36,310.310 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:20:36,444.444 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:20:36,509.509 INFO    ] time= 31/08/2026 04:20:36
[2026-08-31 04:20:36,568.568 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:20:36,579.579 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:20:36,722.722 INFO    ] No existing commands found in stream
[2026-08-31 04:20:41,735.735 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:20:41,739.739 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-08-31 04:20:43,134.134 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 04:20:43,137.137 INFO    ] Checking for system updates...
[2026-08-31 04:20:43,176.176 INFO    ] 200
[2026-08-31 04:20:43,179.179 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:20:43,239.239 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:20:43,241.241 INFO    ] No update needed
[2026-08-31 04:20:43,243.243 INFO    ] Checking for camera pi updates...
[2026-08-31 04:20:43,277.277 INFO    ] 200
[2026-08-31 04:20:43,279.279 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:20:43,320.320 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:20:43,388.388 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:20:43,390.390 INFO    ] No camera update needed
[2026-08-31 04:20:43,392.392 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:20:43,395.395 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:20:43,400.400 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:20:43,405.405 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:20:45,446.446 INFO    ] ================================================
[2026-08-31 04:20:45,461.461 INFO    ] Launching Daemon at Mon Aug 31 04:20:45 IST 2026
[2026-08-31 04:20:45,472.472 INFO    ] ================================================
[2026-08-31 04:20:46,054.054 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:20:46
[2026-08-31 04:20:46,654.654 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:20:46,925.925 INFO    ] Initializing speech engine...
[2026-08-31 04:20:46,931.931 INFO    ] 2026-08-31 04:20:46
[2026-08-31 04:20:47,242.242 INFO    ] 2026-08-31 04:20:47
[2026-08-31 04:20:47,281.281 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:20:47,473.473 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:20:47,487.487 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:20:47,635.635 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:20:47,643.643 INFO    ] time= 31/08/2026 04:20:47
[2026-08-31 04:20:47,679.679 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:20:47,712.712 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:20:47,843.843 INFO    ] No existing commands found in stream
[2026-08-31 04:20:52,853.853 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:20:52,856.856 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-08-31 04:20:56,683.683 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 04:20:56,685.685 INFO    ] Checking for system updates...
[2026-08-31 04:20:56,726.726 INFO    ] 200
[2026-08-31 04:20:56,728.728 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:20:56,782.782 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:20:56,784.784 INFO    ] No update needed
[2026-08-31 04:20:56,786.786 INFO    ] Checking for camera pi updates...
[2026-08-31 04:20:56,824.824 INFO    ] 200
[2026-08-31 04:20:56,827.827 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:20:56,867.867 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:20:56,961.961 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:20:56,964.964 INFO    ] No camera update needed
[2026-08-31 04:20:56,966.966 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:20:56,968.968 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:20:56,974.974 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:20:56,979.979 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:20:59,022.022 INFO    ] ================================================
[2026-08-31 04:20:59,038.038 INFO    ] Launching Daemon at Mon Aug 31 04:20:59 IST 2026
[2026-08-31 04:20:59,049.049 INFO    ] ================================================
[2026-08-31 04:20:59,717.717 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:20:59
[2026-08-31 04:21:00,402.402 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:21:00,708.708 INFO    ] Initializing speech engine...
[2026-08-31 04:21:00,721.721 INFO    ] 2026-08-31 04:21:00
[2026-08-31 04:21:01,001.001 INFO    ] 2026-08-31 04:21:00
[2026-08-31 04:21:01,047.047 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:21:01,311.311 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:21:01,317.317 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:21:01,465.465 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:21:01,499.499 INFO    ] time= 31/08/2026 04:21:01
[2026-08-31 04:21:01,503.503 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:21:01,507.507 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:21:01,590.590 INFO    ] No existing commands found in stream
[2026-08-31 04:21:06,600.600 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:21:06,603.603 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-08-31 04:21:08,530.530 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 04:21:08,533.533 INFO    ] Checking for system updates...
[2026-08-31 04:21:08,568.568 INFO    ] 200
[2026-08-31 04:21:08,571.571 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:21:08,623.623 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:21:08,625.625 INFO    ] No update needed
[2026-08-31 04:21:08,628.628 INFO    ] Checking for camera pi updates...
[2026-08-31 04:21:08,668.668 INFO    ] 200
[2026-08-31 04:21:08,670.670 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:21:08,711.711 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:21:08,791.791 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:21:08,793.793 INFO    ] No camera update needed
[2026-08-31 04:21:08,795.795 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:21:08,798.798 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:21:08,803.803 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:21:08,809.809 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:21:10,851.851 INFO    ] ================================================
[2026-08-31 04:21:10,866.866 INFO    ] Launching Daemon at Mon Aug 31 04:21:10 IST 2026
[2026-08-31 04:21:10,877.877 INFO    ] ================================================
[2026-08-31 04:21:11,461.461 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:21:11
[2026-08-31 04:21:12,083.083 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:21:12,402.402 INFO    ] Initializing speech engine...
[2026-08-31 04:21:12,408.408 INFO    ] 2026-08-31 04:21:12
[2026-08-31 04:21:12,719.719 INFO    ] 2026-08-31 04:21:12
[2026-08-31 04:21:12,807.807 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:21:12,986.986 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:21:13,005.005 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:21:13,202.202 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:21:13,228.228 INFO    ] time= 31/08/2026 04:21:13
[2026-08-31 04:21:13,247.247 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:21:13,276.276 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:21:13,382.382 INFO    ] No existing commands found in stream
[2026-08-31 04:21:18,394.394 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:21:18,398.398 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-08-31 04:21:21,928.928 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 04:21:21,931.931 INFO    ] Checking for system updates...
[2026-08-31 04:21:21,973.973 INFO    ] 200
[2026-08-31 04:21:21,978.978 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:21:22,044.044 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:21:22,047.047 INFO    ] No update needed
[2026-08-31 04:21:22,050.050 INFO    ] Checking for camera pi updates...
[2026-08-31 04:21:22,091.091 INFO    ] 200
[2026-08-31 04:21:22,094.094 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:21:22,141.141 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:21:22,226.226 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:21:22,230.230 INFO    ] No camera update needed
[2026-08-31 04:21:22,232.232 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:21:22,235.235 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:21:22,242.242 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:21:22,248.248 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:21:24,290.290 INFO    ] ================================================
[2026-08-31 04:21:24,305.305 INFO    ] Launching Daemon at Mon Aug 31 04:21:24 IST 2026
[2026-08-31 04:21:24,316.316 INFO    ] ================================================
[2026-08-31 04:21:24,884.884 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:21:24
[2026-08-31 04:21:25,469.469 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:21:25,725.725 INFO    ] Initializing speech engine...
[2026-08-31 04:21:25,732.732 INFO    ] 2026-08-31 04:21:25
[2026-08-31 04:21:26,033.033 INFO    ] 2026-08-31 04:21:25
[2026-08-31 04:21:26,065.065 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:21:26,228.228 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:21:26,235.235 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:21:26,392.392 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:21:26,402.402 INFO    ] time= 31/08/2026 04:21:26
[2026-08-31 04:21:26,409.409 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:21:26,432.432 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:21:26,561.561 INFO    ] No existing commands found in stream
[2026-08-31 04:21:31,572.572 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:21:31,575.575 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-08-31 04:21:33,205.205 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 04:21:33,207.207 INFO    ] Checking for system updates...
[2026-08-31 04:21:33,244.244 INFO    ] 200
[2026-08-31 04:21:33,246.246 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:21:33,302.302 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:21:33,304.304 INFO    ] No update needed
[2026-08-31 04:21:33,307.307 INFO    ] Checking for camera pi updates...
[2026-08-31 04:21:33,348.348 INFO    ] 200
[2026-08-31 04:21:33,351.351 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:21:33,401.401 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:21:33,455.455 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:21:33,457.457 INFO    ] No camera update needed
[2026-08-31 04:21:33,460.460 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:21:33,462.462 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:21:33,468.468 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:21:33,474.474 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:21:35,515.515 INFO    ] ================================================
[2026-08-31 04:21:35,530.530 INFO    ] Launching Daemon at Mon Aug 31 04:21:35 IST 2026
[2026-08-31 04:21:35,541.541 INFO    ] ================================================
[2026-08-31 04:21:36,118.118 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:21:36
[2026-08-31 04:21:36,701.701 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:21:36,969.969 INFO    ] Initializing speech engine...
[2026-08-31 04:21:36,977.977 INFO    ] 2026-08-31 04:21:36
[2026-08-31 04:21:37,225.225 INFO    ] 2026-08-31 04:21:37
[2026-08-31 04:21:37,260.260 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:21:37,515.515 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:21:37,521.521 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:21:37,653.653 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:21:37,713.713 INFO    ] time= 31/08/2026 04:21:37
[2026-08-31 04:21:37,767.767 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:21:37,784.784 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:21:37,921.921 INFO    ] No existing commands found in stream
[2026-08-31 04:21:42,942.942 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:21:42,944.944 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-08-31 04:21:47,042.042 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 04:21:47,045.045 INFO    ] Checking for system updates...
[2026-08-31 04:21:47,080.080 INFO    ] 200
[2026-08-31 04:21:47,082.082 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:21:47,149.149 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:21:47,151.151 INFO    ] No update needed
[2026-08-31 04:21:47,154.154 INFO    ] Checking for camera pi updates...
[2026-08-31 04:21:47,187.187 INFO    ] 200
[2026-08-31 04:21:47,190.190 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:21:47,240.240 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:21:47,423.423 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:21:47,426.426 INFO    ] No camera update needed
[2026-08-31 04:21:47,428.428 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:21:47,430.430 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:21:47,436.436 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:21:47,441.441 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:21:49,485.485 INFO    ] ================================================
[2026-08-31 04:21:49,500.500 INFO    ] Launching Daemon at Mon Aug 31 04:21:49 IST 2026
[2026-08-31 04:21:49,511.511 INFO    ] ================================================
[2026-08-31 04:21:50,086.086 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:21:50
[2026-08-31 04:21:50,671.671 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:21:50,949.949 INFO    ] Initializing speech engine...
[2026-08-31 04:21:50,957.957 INFO    ] 2026-08-31 04:21:50
[2026-08-31 04:21:51,218.218 INFO    ] 2026-08-31 04:21:51
[2026-08-31 04:21:51,274.274 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:21:51,521.521 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:21:51,526.526 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:21:51,733.733 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:21:51,759.759 INFO    ] time= 31/08/2026 04:21:51
[2026-08-31 04:21:51,776.776 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:21:51,783.783 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:21:51,909.909 INFO    ] No existing commands found in stream
[2026-08-31 04:21:56,923.923 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:21:56,926.926 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-08-31 04:21:57,526.526 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 04:21:57,529.529 INFO    ] Checking for system updates...
[2026-08-31 04:21:57,566.566 INFO    ] 200
[2026-08-31 04:21:57,569.569 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:21:57,624.624 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:21:57,626.626 INFO    ] No update needed
[2026-08-31 04:21:57,629.629 INFO    ] Checking for camera pi updates...
[2026-08-31 04:21:57,663.663 INFO    ] 200
[2026-08-31 04:21:57,665.665 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:21:57,705.705 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:21:57,788.788 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:21:57,791.791 INFO    ] No camera update needed
[2026-08-31 04:21:57,794.794 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:21:57,796.796 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:21:57,801.801 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:21:57,806.806 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:21:59,848.848 INFO    ] ================================================
[2026-08-31 04:21:59,864.864 INFO    ] Launching Daemon at Mon Aug 31 04:21:59 IST 2026
[2026-08-31 04:21:59,875.875 INFO    ] ================================================
[2026-08-31 04:22:00,460.460 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:22:00
[2026-08-31 04:22:01,064.064 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:22:01,711.711 INFO    ] Initializing speech engine...
[2026-08-31 04:22:01,769.769 INFO    ] 2026-08-31 04:22:01
[2026-08-31 04:22:02,106.106 INFO    ] 2026-08-31 04:22:02
[2026-08-31 04:22:02,168.168 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:22:02,494.494 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:22:02,524.524 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:22:02,679.679 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:22:02,705.705 INFO    ] time= 31/08/2026 04:22:02
[2026-08-31 04:22:02,768.768 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:22:02,834.834 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:22:02,936.936 INFO    ] No existing commands found in stream
[2026-08-31 04:22:07,966.966 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:22:07,969.969 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-08-31 04:22:09,993.993 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 04:22:09,996.996 INFO    ] Checking for system updates...
[2026-08-31 04:22:10,031.031 INFO    ] 200
[2026-08-31 04:22:10,034.034 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:22:10,087.087 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:22:10,090.090 INFO    ] No update needed
[2026-08-31 04:22:10,092.092 INFO    ] Checking for camera pi updates...
[2026-08-31 04:22:10,125.125 INFO    ] 200
[2026-08-31 04:22:10,128.128 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:22:10,168.168 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:22:10,262.262 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:22:10,264.264 INFO    ] No camera update needed
[2026-08-31 04:22:10,267.267 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:22:10,269.269 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:22:10,274.274 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:22:10,280.280 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:22:12,321.321 INFO    ] ================================================
[2026-08-31 04:22:12,337.337 INFO    ] Launching Daemon at Mon Aug 31 04:22:12 IST 2026
[2026-08-31 04:22:12,348.348 INFO    ] ================================================
[2026-08-31 04:22:12,931.931 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:22:12
[2026-08-31 04:22:13,529.529 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:22:13,809.809 INFO    ] Initializing speech engine...
[2026-08-31 04:22:13,823.823 INFO    ] 2026-08-31 04:22:13
[2026-08-31 04:22:14,094.094 INFO    ] 2026-08-31 04:22:14
[2026-08-31 04:22:14,134.134 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:22:14,360.360 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:22:14,379.379 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:22:14,587.587 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:22:14,602.602 INFO    ] time= 31/08/2026 04:22:14
[2026-08-31 04:22:14,641.641 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:22:14,685.685 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:22:14,756.756 INFO    ] No existing commands found in stream
[2026-08-31 04:22:19,778.778 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:22:19,781.781 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-08-31 04:22:24,192.192 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 04:22:24,195.195 INFO    ] Checking for system updates...
[2026-08-31 04:22:24,234.234 INFO    ] 200
[2026-08-31 04:22:24,237.237 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:22:24,289.289 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:22:24,292.292 INFO    ] No update needed
[2026-08-31 04:22:24,294.294 INFO    ] Checking for camera pi updates...
[2026-08-31 04:22:24,332.332 INFO    ] 200
[2026-08-31 04:22:24,335.335 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:22:24,380.380 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:22:24,456.456 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:22:24,459.459 INFO    ] No camera update needed
[2026-08-31 04:22:24,461.461 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:22:24,464.464 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:22:24,469.469 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:22:24,474.474 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:22:26,513.513 INFO    ] ================================================
[2026-08-31 04:22:26,529.529 INFO    ] Launching Daemon at Mon Aug 31 04:22:26 IST 2026
[2026-08-31 04:22:26,539.539 INFO    ] ================================================
[2026-08-31 04:22:27,128.128 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:22:27
[2026-08-31 04:22:27,726.726 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:22:28,023.023 INFO    ] Initializing speech engine...
[2026-08-31 04:22:28,030.030 INFO    ] 2026-08-31 04:22:28
[2026-08-31 04:22:28,277.277 INFO    ] 2026-08-31 04:22:28
[2026-08-31 04:22:28,312.312 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:22:28,568.568 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:22:28,577.577 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:22:28,711.711 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:22:28,753.753 INFO    ] time= 31/08/2026 04:22:28
[2026-08-31 04:22:28,797.797 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:22:28,848.848 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:22:28,984.984 INFO    ] No existing commands found in stream
[2026-08-31 04:22:34,007.007 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:22:34,010.010 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-08-31 04:22:35,796.796 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 04:22:35,799.799 INFO    ] Checking for system updates...
[2026-08-31 04:22:35,835.835 INFO    ] 200
[2026-08-31 04:22:35,838.838 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:22:35,891.891 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:22:35,893.893 INFO    ] No update needed
[2026-08-31 04:22:35,895.895 INFO    ] Checking for camera pi updates...
[2026-08-31 04:22:35,929.929 INFO    ] 200
[2026-08-31 04:22:35,931.931 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:22:35,971.971 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:22:36,055.055 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:22:36,058.058 INFO    ] No camera update needed
[2026-08-31 04:22:36,060.060 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:22:36,063.063 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:22:36,068.068 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:22:36,073.073 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:22:38,114.114 INFO    ] ================================================
[2026-08-31 04:22:38,130.130 INFO    ] Launching Daemon at Mon Aug 31 04:22:38 IST 2026
[2026-08-31 04:22:38,141.141 INFO    ] ================================================
[2026-08-31 04:22:38,795.795 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:22:38
[2026-08-31 04:22:39,470.470 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:22:39,765.765 INFO    ] Initializing speech engine...
[2026-08-31 04:22:39,777.777 INFO    ] 2026-08-31 04:22:39
[2026-08-31 04:22:40,043.043 INFO    ] 2026-08-31 04:22:40
[2026-08-31 04:22:40,085.085 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:22:40,364.364 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:22:40,372.372 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:22:40,551.551 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:22:40,571.571 INFO    ] time= 31/08/2026 04:22:40
[2026-08-31 04:22:40,586.586 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:22:40,595.595 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:22:40,723.723 INFO    ] No existing commands found in stream
[2026-08-31 04:22:45,744.744 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:22:45,747.747 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-08-31 04:22:49,291.291 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 04:22:49,294.294 INFO    ] Checking for system updates...
[2026-08-31 04:22:49,335.335 INFO    ] 200
[2026-08-31 04:22:49,337.337 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:22:49,389.389 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:22:49,392.392 INFO    ] No update needed
[2026-08-31 04:22:49,394.394 INFO    ] Checking for camera pi updates...
[2026-08-31 04:22:49,428.428 INFO    ] 200
[2026-08-31 04:22:49,430.430 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:22:49,470.470 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:22:49,558.558 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:22:49,561.561 INFO    ] No camera update needed
[2026-08-31 04:22:49,563.563 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:22:49,565.565 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:22:49,571.571 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:22:49,576.576 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:22:51,619.619 INFO    ] ================================================
[2026-08-31 04:22:51,636.636 INFO    ] Launching Daemon at Mon Aug 31 04:22:51 IST 2026
[2026-08-31 04:22:51,647.647 INFO    ] ================================================
[2026-08-31 04:22:52,231.231 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:22:52
[2026-08-31 04:22:52,827.827 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:22:53,104.104 INFO    ] Initializing speech engine...
[2026-08-31 04:22:53,111.111 INFO    ] 2026-08-31 04:22:53
[2026-08-31 04:22:53,372.372 INFO    ] 2026-08-31 04:22:53
[2026-08-31 04:22:53,424.424 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:22:53,665.665 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:22:53,678.678 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:22:53,824.824 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:22:53,866.866 INFO    ] time= 31/08/2026 04:22:53
[2026-08-31 04:22:53,922.922 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:22:53,958.958 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:22:54,024.024 INFO    ] No existing commands found in stream
[2026-08-31 04:22:59,039.039 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:22:59,042.042 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-08-31 04:23:00,682.682 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 04:23:00,685.685 INFO    ] Checking for system updates...
[2026-08-31 04:23:00,721.721 INFO    ] 200
[2026-08-31 04:23:00,724.724 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:23:00,785.785 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:23:00,788.788 INFO    ] No update needed
[2026-08-31 04:23:00,790.790 INFO    ] Checking for camera pi updates...
[2026-08-31 04:23:00,824.824 INFO    ] 200
[2026-08-31 04:23:00,826.826 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:23:00,866.866 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:23:00,933.933 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:23:00,936.936 INFO    ] No camera update needed
[2026-08-31 04:23:00,938.938 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:23:00,941.941 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:23:00,946.946 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:23:00,951.951 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:23:03,995.995 INFO    ] ================================================
[2026-08-31 04:23:03,013.013 INFO    ] Launching Daemon at Mon Aug 31 04:23:03 IST 2026
[2026-08-31 04:23:03,024.024 INFO    ] ================================================
[2026-08-31 04:23:03,615.615 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:23:03
[2026-08-31 04:23:04,211.211 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:23:04,484.484 INFO    ] Initializing speech engine...
[2026-08-31 04:23:04,493.493 INFO    ] 2026-08-31 04:23:04
[2026-08-31 04:23:04,755.755 INFO    ] 2026-08-31 04:23:04
[2026-08-31 04:23:04,809.809 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:23:05,044.044 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:23:05,051.051 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:23:05,183.183 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:23:05,205.205 INFO    ] time= 31/08/2026 04:23:05
[2026-08-31 04:23:05,276.276 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:23:05,316.316 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:23:05,372.372 INFO    ] No existing commands found in stream
[2026-08-31 04:23:10,384.384 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:23:10,386.386 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-08-31 04:23:11,395.395 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 04:23:11,398.398 INFO    ] Checking for system updates...
[2026-08-31 04:23:11,434.434 INFO    ] 200
[2026-08-31 04:23:11,436.436 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:23:11,489.489 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:23:11,491.491 INFO    ] No update needed
[2026-08-31 04:23:11,494.494 INFO    ] Checking for camera pi updates...
[2026-08-31 04:23:11,531.531 INFO    ] 200
[2026-08-31 04:23:11,534.534 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:23:11,574.574 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:23:11,656.656 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:23:11,659.659 INFO    ] No camera update needed
[2026-08-31 04:23:11,661.661 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:23:11,664.664 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:23:11,669.669 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:23:11,674.674 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:23:13,714.714 INFO    ] ================================================
[2026-08-31 04:23:13,729.729 INFO    ] Launching Daemon at Mon Aug 31 04:23:13 IST 2026
[2026-08-31 04:23:13,741.741 INFO    ] ================================================
[2026-08-31 04:23:14,366.366 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:23:14
[2026-08-31 04:23:15,008.008 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:23:15,297.297 INFO    ] Initializing speech engine...
[2026-08-31 04:23:15,305.305 INFO    ] 2026-08-31 04:23:15
[2026-08-31 04:23:15,572.572 INFO    ] 2026-08-31 04:23:15
[2026-08-31 04:23:15,628.628 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:23:15,876.876 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:23:15,884.884 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:23:16,111.111 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:23:16,121.121 INFO    ] time= 31/08/2026 04:23:16
[2026-08-31 04:23:16,139.139 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:23:16,169.169 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:23:16,276.276 INFO    ] No existing commands found in stream
[2026-08-31 04:23:21,296.296 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:23:21,299.299 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-08-31 04:23:23,559.559 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 04:23:23,562.562 INFO    ] Checking for system updates...
[2026-08-31 04:23:23,597.597 INFO    ] 200
[2026-08-31 04:23:23,600.600 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:23:23,662.662 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:23:23,665.665 INFO    ] No update needed
[2026-08-31 04:23:23,667.667 INFO    ] Checking for camera pi updates...
[2026-08-31 04:23:23,701.701 INFO    ] 200
[2026-08-31 04:23:23,703.703 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:23:23,748.748 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:23:23,827.827 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:23:23,830.830 INFO    ] No camera update needed
[2026-08-31 04:23:23,832.832 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:23:23,834.834 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:23:23,839.839 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:23:23,844.844 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:23:25,884.884 INFO    ] ================================================
[2026-08-31 04:23:25,899.899 INFO    ] Launching Daemon at Mon Aug 31 04:23:25 IST 2026
[2026-08-31 04:23:25,910.910 INFO    ] ================================================
[2026-08-31 04:23:26,475.475 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:23:26
[2026-08-31 04:23:27,127.127 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:23:27,437.437 INFO    ] Initializing speech engine...
[2026-08-31 04:23:27,443.443 INFO    ] 2026-08-31 04:23:27
[2026-08-31 04:23:27,747.747 INFO    ] 2026-08-31 04:23:27
[2026-08-31 04:23:27,835.835 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:23:28,045.045 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:23:28,054.054 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:23:28,235.235 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:23:28,263.263 INFO    ] time= 31/08/2026 04:23:28
[2026-08-31 04:23:28,282.282 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:23:28,292.292 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:23:28,407.407 INFO    ] No existing commands found in stream
[2026-08-31 04:23:33,428.428 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:23:33,431.431 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-08-31 04:23:37,356.356 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 04:23:37,359.359 INFO    ] Checking for system updates...
[2026-08-31 04:23:37,402.402 INFO    ] 200
[2026-08-31 04:23:37,404.404 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:23:37,457.457 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:23:37,459.459 INFO    ] No update needed
[2026-08-31 04:23:37,462.462 INFO    ] Checking for camera pi updates...
[2026-08-31 04:23:37,495.495 INFO    ] 200
[2026-08-31 04:23:37,498.498 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:23:37,543.543 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:23:37,628.628 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:23:37,631.631 INFO    ] No camera update needed
[2026-08-31 04:23:37,633.633 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:23:37,635.635 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:23:37,641.641 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:23:37,645.645 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:23:39,685.685 INFO    ] ================================================
[2026-08-31 04:23:39,700.700 INFO    ] Launching Daemon at Mon Aug 31 04:23:39 IST 2026
[2026-08-31 04:23:39,711.711 INFO    ] ================================================
[2026-08-31 04:23:40,299.299 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:23:40
[2026-08-31 04:23:40,882.882 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:23:41,132.132 INFO    ] Initializing speech engine...
[2026-08-31 04:23:41,156.156 INFO    ] 2026-08-31 04:23:41
[2026-08-31 04:23:41,411.411 INFO    ] 2026-08-31 04:23:41
[2026-08-31 04:23:41,448.448 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:23:41,705.705 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:23:41,715.715 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:23:41,852.852 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:23:41,891.891 INFO    ] time= 31/08/2026 04:23:41
[2026-08-31 04:23:41,945.945 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:23:41,985.985 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:23:42,131.131 INFO    ] No existing commands found in stream
[2026-08-31 04:23:47,144.144 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:23:47,147.147 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-08-31 04:23:47,884.884 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 04:23:47,887.887 INFO    ] Checking for system updates...
[2026-08-31 04:23:47,923.923 INFO    ] 200
[2026-08-31 04:23:47,925.925 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:23:47,977.977 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:23:47,979.979 INFO    ] No update needed
[2026-08-31 04:23:47,982.982 INFO    ] Checking for camera pi updates...
[2026-08-31 04:23:48,015.015 INFO    ] 200
[2026-08-31 04:23:48,017.017 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:23:48,062.062 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:23:48,156.156 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:23:48,158.158 INFO    ] No camera update needed
[2026-08-31 04:23:48,161.161 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:23:48,163.163 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:23:48,168.168 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:23:48,173.173 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:23:50,214.214 INFO    ] ================================================
[2026-08-31 04:23:50,229.229 INFO    ] Launching Daemon at Mon Aug 31 04:23:50 IST 2026
[2026-08-31 04:23:50,240.240 INFO    ] ================================================
[2026-08-31 04:23:50,812.812 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:23:50
[2026-08-31 04:23:51,411.411 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:23:51,660.660 INFO    ] Initializing speech engine...
[2026-08-31 04:23:51,673.673 INFO    ] 2026-08-31 04:23:51
[2026-08-31 04:23:51,951.951 INFO    ] 2026-08-31 04:23:51
[2026-08-31 04:23:51,986.986 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:23:52,190.190 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:23:52,249.249 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:23:52,391.391 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:23:52,434.434 INFO    ] time= 31/08/2026 04:23:52
[2026-08-31 04:23:52,488.488 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:23:52,528.528 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:23:52,653.653 INFO    ] No existing commands found in stream
[2026-08-31 04:23:57,679.679 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:23:57,681.681 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-08-31 04:23:59,729.729 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 04:23:59,731.731 INFO    ] Checking for system updates...
[2026-08-31 04:23:59,766.766 INFO    ] 200
[2026-08-31 04:23:59,769.769 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:23:59,827.827 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:23:59,830.830 INFO    ] No update needed
[2026-08-31 04:23:59,832.832 INFO    ] Checking for camera pi updates...
[2026-08-31 04:23:59,869.869 INFO    ] 200
[2026-08-31 04:23:59,871.871 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:23:59,913.913 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:24:00,105.105 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:24:00,108.108 INFO    ] No camera update needed
[2026-08-31 04:24:00,110.110 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:24:00,113.113 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:24:00,118.118 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:24:00,123.123 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:24:02,201.201 INFO    ] ================================================
[2026-08-31 04:24:02,222.222 INFO    ] Launching Daemon at Mon Aug 31 04:24:02 IST 2026
[2026-08-31 04:24:02,238.238 INFO    ] ================================================
[2026-08-31 04:24:02,926.926 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:24:02
[2026-08-31 04:24:03,524.524 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:24:03,795.795 INFO    ] Initializing speech engine...
[2026-08-31 04:24:03,804.804 INFO    ] 2026-08-31 04:24:03
[2026-08-31 04:24:04,054.054 INFO    ] 2026-08-31 04:24:04
[2026-08-31 04:24:04,089.089 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:24:04,291.291 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:24:04,299.299 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:24:04,427.427 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:24:04,433.433 INFO    ] time= 31/08/2026 04:24:04
[2026-08-31 04:24:04,469.469 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:24:04,500.500 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:24:04,604.604 INFO    ] No existing commands found in stream
[2026-08-31 04:24:09,634.634 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:24:09,637.637 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-08-31 04:24:12,318.318 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 04:24:12,320.320 INFO    ] Checking for system updates...
[2026-08-31 04:24:12,358.358 INFO    ] 200
[2026-08-31 04:24:12,360.360 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:24:12,413.413 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:24:12,415.415 INFO    ] No update needed
[2026-08-31 04:24:12,418.418 INFO    ] Checking for camera pi updates...
[2026-08-31 04:24:12,453.453 INFO    ] 200
[2026-08-31 04:24:12,456.456 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:24:12,499.499 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:24:12,587.587 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:24:12,590.590 INFO    ] No camera update needed
[2026-08-31 04:24:12,592.592 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:24:12,594.594 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:24:12,600.600 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:24:12,605.605 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:24:14,645.645 INFO    ] ================================================
[2026-08-31 04:24:14,661.661 INFO    ] Launching Daemon at Mon Aug 31 04:24:14 IST 2026
[2026-08-31 04:24:14,672.672 INFO    ] ================================================
[2026-08-31 04:24:15,299.299 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:24:15
[2026-08-31 04:24:15,883.883 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:24:16,161.161 INFO    ] Initializing speech engine...
[2026-08-31 04:24:16,169.169 INFO    ] 2026-08-31 04:24:16
[2026-08-31 04:24:16,427.427 INFO    ] 2026-08-31 04:24:16
[2026-08-31 04:24:16,477.477 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:24:16,706.706 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:24:16,727.727 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:24:16,915.915 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:24:16,965.965 INFO    ] time= 31/08/2026 04:24:16
[2026-08-31 04:24:16,982.982 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:24:16,993.993 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:24:17,168.168 INFO    ] No existing commands found in stream
[2026-08-31 04:24:22,199.199 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:24:22,202.202 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-08-31 04:24:26,550.550 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 04:24:26,553.553 INFO    ] Checking for system updates...
[2026-08-31 04:24:26,588.588 INFO    ] 200
[2026-08-31 04:24:26,591.591 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:24:26,643.643 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:24:26,645.645 INFO    ] No update needed
[2026-08-31 04:24:26,648.648 INFO    ] Checking for camera pi updates...
[2026-08-31 04:24:26,685.685 INFO    ] 200
[2026-08-31 04:24:26,687.687 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:24:26,734.734 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:24:26,821.821 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:24:26,823.823 INFO    ] No camera update needed
[2026-08-31 04:24:26,825.825 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:24:26,828.828 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:24:26,833.833 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:24:26,838.838 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:24:28,879.879 INFO    ] ================================================
[2026-08-31 04:24:28,894.894 INFO    ] Launching Daemon at Mon Aug 31 04:24:28 IST 2026
[2026-08-31 04:24:28,904.904 INFO    ] ================================================
[2026-08-31 04:24:29,483.483 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:24:29
[2026-08-31 04:24:30,082.082 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:24:30,359.359 INFO    ] Initializing speech engine...
[2026-08-31 04:24:30,374.374 INFO    ] 2026-08-31 04:24:30
[2026-08-31 04:24:30,643.643 INFO    ] 2026-08-31 04:24:30
[2026-08-31 04:24:30,679.679 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:24:30,882.882 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:24:30,901.901 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:24:31,043.043 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:24:31,048.048 INFO    ] time= 31/08/2026 04:24:31
[2026-08-31 04:24:31,056.056 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:24:31,107.107 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:24:31,220.220 INFO    ] No existing commands found in stream
[2026-08-31 04:24:36,241.241 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:24:36,244.244 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-08-31 04:24:37,189.189 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 04:24:37,192.192 INFO    ] Checking for system updates...
[2026-08-31 04:24:37,230.230 INFO    ] 200
[2026-08-31 04:24:37,233.233 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:24:37,289.289 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:24:37,292.292 INFO    ] No update needed
[2026-08-31 04:24:37,294.294 INFO    ] Checking for camera pi updates...
[2026-08-31 04:24:37,328.328 INFO    ] 200
[2026-08-31 04:24:37,330.330 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:24:37,378.378 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:24:37,474.474 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:24:37,477.477 INFO    ] No camera update needed
[2026-08-31 04:24:37,479.479 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:24:37,482.482 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:24:37,487.487 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:24:37,492.492 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:24:39,531.531 INFO    ] ================================================
[2026-08-31 04:24:39,546.546 INFO    ] Launching Daemon at Mon Aug 31 04:24:39 IST 2026
[2026-08-31 04:24:39,556.556 INFO    ] ================================================
[2026-08-31 04:24:40,122.122 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:24:40
[2026-08-31 04:24:40,704.704 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:24:40,970.970 INFO    ] Initializing speech engine...
[2026-08-31 04:24:40,980.980 INFO    ] 2026-08-31 04:24:40
[2026-08-31 04:24:41,234.234 INFO    ] 2026-08-31 04:24:41
[2026-08-31 04:24:41,268.268 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:24:41,549.549 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:24:41,559.559 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:24:41,708.708 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:24:41,773.773 INFO    ] time= 31/08/2026 04:24:41
[2026-08-31 04:24:41,827.827 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:24:41,853.853 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:24:41,909.909 INFO    ] No existing commands found in stream
[2026-08-31 04:24:46,921.921 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:24:46,924.924 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-08-31 04:24:50,565.565 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 04:24:50,567.567 INFO    ] Checking for system updates...
[2026-08-31 04:24:50,606.606 INFO    ] 200
[2026-08-31 04:24:50,609.609 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:24:50,667.667 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:24:50,669.669 INFO    ] No update needed
[2026-08-31 04:24:50,672.672 INFO    ] Checking for camera pi updates...
[2026-08-31 04:24:50,706.706 INFO    ] 200
[2026-08-31 04:24:50,708.708 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:24:50,752.752 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:24:50,824.824 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:24:50,827.827 INFO    ] No camera update needed
[2026-08-31 04:24:50,829.829 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:24:50,831.831 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:24:50,837.837 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:24:50,842.842 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:24:52,881.881 INFO    ] ================================================
[2026-08-31 04:24:52,896.896 INFO    ] Launching Daemon at Mon Aug 31 04:24:52 IST 2026
[2026-08-31 04:24:52,907.907 INFO    ] ================================================
[2026-08-31 04:24:53,538.538 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:24:53
[2026-08-31 04:24:54,225.225 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:24:54,551.551 INFO    ] Initializing speech engine...
[2026-08-31 04:24:54,564.564 INFO    ] 2026-08-31 04:24:54
[2026-08-31 04:24:54,852.852 INFO    ] 2026-08-31 04:24:54
[2026-08-31 04:24:54,910.910 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:24:55,104.104 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:24:55,163.163 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:24:55,310.310 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:24:55,376.376 INFO    ] time= 31/08/2026 04:24:55
[2026-08-31 04:24:55,430.430 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:24:55,458.458 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:24:55,591.591 INFO    ] No existing commands found in stream
[2026-08-31 04:25:00,621.621 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:25:00,624.624 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-08-31 04:25:03,167.167 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 04:25:03,170.170 INFO    ] Checking for system updates...
[2026-08-31 04:25:03,214.214 INFO    ] 200
[2026-08-31 04:25:03,217.217 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:25:03,278.278 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:25:03,281.281 INFO    ] No update needed
[2026-08-31 04:25:03,283.283 INFO    ] Checking for camera pi updates...
[2026-08-31 04:25:03,326.326 INFO    ] 200
[2026-08-31 04:25:03,329.329 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:25:03,386.386 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:25:03,470.470 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:25:03,473.473 INFO    ] No camera update needed
[2026-08-31 04:25:03,478.478 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:25:03,481.481 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:25:03,488.488 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:25:03,495.495 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:25:05,537.537 INFO    ] ================================================
[2026-08-31 04:25:05,553.553 INFO    ] Launching Daemon at Mon Aug 31 04:25:05 IST 2026
[2026-08-31 04:25:05,564.564 INFO    ] ================================================
[2026-08-31 04:25:06,199.199 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:25:06
[2026-08-31 04:25:06,849.849 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:25:07,153.153 INFO    ] Initializing speech engine...
[2026-08-31 04:25:07,162.162 INFO    ] 2026-08-31 04:25:07
[2026-08-31 04:25:07,420.420 INFO    ] 2026-08-31 04:25:07
[2026-08-31 04:25:07,455.455 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:25:07,712.712 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:25:07,721.721 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:25:07,906.906 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:25:07,950.950 INFO    ] time= 31/08/2026 04:25:07
[2026-08-31 04:25:07,991.991 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:25:07,997.997 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:25:08,137.137 INFO    ] No existing commands found in stream
[2026-08-31 04:25:13,158.158 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:25:13,194.194 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-08-31 04:25:14,191.191 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 04:25:14,194.194 INFO    ] Checking for system updates...
[2026-08-31 04:25:14,233.233 INFO    ] 200
[2026-08-31 04:25:14,236.236 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:25:14,292.292 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:25:14,295.295 INFO    ] No update needed
[2026-08-31 04:25:14,298.298 INFO    ] Checking for camera pi updates...
[2026-08-31 04:25:14,335.335 INFO    ] 200
[2026-08-31 04:25:14,338.338 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:25:14,387.387 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:25:14,468.468 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:25:14,471.471 INFO    ] No camera update needed
[2026-08-31 04:25:14,474.474 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:25:14,476.476 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:25:14,482.482 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:25:14,488.488 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:25:16,530.530 INFO    ] ================================================
[2026-08-31 04:25:16,545.545 INFO    ] Launching Daemon at Mon Aug 31 04:25:16 IST 2026
[2026-08-31 04:25:16,556.556 INFO    ] ================================================
[2026-08-31 04:25:17,121.121 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:25:17
[2026-08-31 04:25:17,720.720 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:25:17,995.995 INFO    ] Initializing speech engine...
[2026-08-31 04:25:18,004.004 INFO    ] 2026-08-31 04:25:17
[2026-08-31 04:25:18,263.263 INFO    ] 2026-08-31 04:25:18
[2026-08-31 04:25:18,293.293 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:25:18,544.544 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:25:18,549.549 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:25:18,760.760 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:25:18,804.804 INFO    ] time= 31/08/2026 04:25:18
[2026-08-31 04:25:18,810.810 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:25:18,829.829 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:25:18,988.988 INFO    ] No existing commands found in stream
[2026-08-31 04:25:24,013.013 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:25:24,020.020 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-08-31 04:25:26,149.149 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 04:25:26,151.151 INFO    ] Checking for system updates...
[2026-08-31 04:25:26,189.189 INFO    ] 200
[2026-08-31 04:25:26,191.191 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:25:26,247.247 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:25:26,250.250 INFO    ] No update needed
[2026-08-31 04:25:26,252.252 INFO    ] Checking for camera pi updates...
[2026-08-31 04:25:26,285.285 INFO    ] 200
[2026-08-31 04:25:26,288.288 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:25:26,328.328 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:25:26,416.416 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:25:26,418.418 INFO    ] No camera update needed
[2026-08-31 04:25:26,421.421 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:25:26,423.423 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:25:26,428.428 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:25:26,433.433 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:25:28,475.475 INFO    ] ================================================
[2026-08-31 04:25:28,490.490 INFO    ] Launching Daemon at Mon Aug 31 04:25:28 IST 2026
[2026-08-31 04:25:28,501.501 INFO    ] ================================================
[2026-08-31 04:25:29,078.078 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:25:29
[2026-08-31 04:25:29,678.678 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:25:29,952.952 INFO    ] Initializing speech engine...
[2026-08-31 04:25:29,961.961 INFO    ] 2026-08-31 04:25:29
[2026-08-31 04:25:30,218.218 INFO    ] 2026-08-31 04:25:30
[2026-08-31 04:25:30,247.247 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:25:30,494.494 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:25:30,503.503 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:25:30,709.709 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:25:30,759.759 INFO    ] time= 31/08/2026 04:25:30
[2026-08-31 04:25:30,766.766 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:25:30,784.784 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:25:30,916.916 INFO    ] No existing commands found in stream
[2026-08-31 04:25:35,934.934 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:25:35,937.937 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-08-31 04:25:39,364.364 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 04:25:39,367.367 INFO    ] Checking for system updates...
[2026-08-31 04:25:39,405.405 INFO    ] 200
[2026-08-31 04:25:39,408.408 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:25:39,461.461 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:25:39,463.463 INFO    ] No update needed
[2026-08-31 04:25:39,465.465 INFO    ] Checking for camera pi updates...
[2026-08-31 04:25:39,499.499 INFO    ] 200
[2026-08-31 04:25:39,501.501 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:25:39,546.546 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:25:39,633.633 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:25:39,635.635 INFO    ] No camera update needed
[2026-08-31 04:25:39,638.638 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:25:39,640.640 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:25:39,646.646 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:25:39,651.651 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:25:41,693.693 INFO    ] ================================================
[2026-08-31 04:25:41,709.709 INFO    ] Launching Daemon at Mon Aug 31 04:25:41 IST 2026
[2026-08-31 04:25:41,720.720 INFO    ] ================================================
[2026-08-31 04:25:42,349.349 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:25:42
[2026-08-31 04:25:43,000.000 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:25:43,294.294 INFO    ] Initializing speech engine...
[2026-08-31 04:25:43,303.303 INFO    ] 2026-08-31 04:25:43
[2026-08-31 04:25:43,571.571 INFO    ] 2026-08-31 04:25:43
[2026-08-31 04:25:43,625.625 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:25:43,874.874 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:25:43,881.881 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:25:44,075.075 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:25:44,118.118 INFO    ] time= 31/08/2026 04:25:44
[2026-08-31 04:25:44,125.125 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:25:44,145.145 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:25:44,269.269 INFO    ] No existing commands found in stream
[2026-08-31 04:25:49,286.286 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:25:49,289.289 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-08-31 04:25:52,554.554 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 04:25:52,558.558 INFO    ] Checking for system updates...
[2026-08-31 04:25:52,595.595 INFO    ] 200
[2026-08-31 04:25:52,598.598 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:25:52,651.651 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:25:52,654.654 INFO    ] No update needed
[2026-08-31 04:25:52,657.657 INFO    ] Checking for camera pi updates...
[2026-08-31 04:25:52,691.691 INFO    ] 200
[2026-08-31 04:25:52,694.694 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:25:52,739.739 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:25:52,823.823 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:25:52,826.826 INFO    ] No camera update needed
[2026-08-31 04:25:52,829.829 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:25:52,832.832 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:25:52,838.838 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:25:52,844.844 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:25:54,885.885 INFO    ] ================================================
[2026-08-31 04:25:54,900.900 INFO    ] Launching Daemon at Mon Aug 31 04:25:54 IST 2026
[2026-08-31 04:25:54,911.911 INFO    ] ================================================
[2026-08-31 04:25:55,478.478 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:25:55
[2026-08-31 04:25:56,062.062 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:25:56,312.312 INFO    ] Initializing speech engine...
[2026-08-31 04:25:56,335.335 INFO    ] 2026-08-31 04:25:56
[2026-08-31 04:25:56,591.591 INFO    ] 2026-08-31 04:25:56
[2026-08-31 04:25:56,625.625 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:25:56,827.827 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:25:56,886.886 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:25:57,031.031 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:25:57,091.091 INFO    ] time= 31/08/2026 04:25:57
[2026-08-31 04:25:57,135.135 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:25:57,165.165 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:25:57,284.284 INFO    ] No existing commands found in stream
[2026-08-31 04:26:02,306.306 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:26:02,309.309 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-08-31 04:26:04,987.987 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 04:26:04,990.990 INFO    ] Checking for system updates...
[2026-08-31 04:26:05,029.029 INFO    ] 200
[2026-08-31 04:26:05,031.031 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:26:05,085.085 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:26:05,088.088 INFO    ] No update needed
[2026-08-31 04:26:05,090.090 INFO    ] Checking for camera pi updates...
[2026-08-31 04:26:05,129.129 INFO    ] 200
[2026-08-31 04:26:05,132.132 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:26:05,173.173 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:26:05,259.259 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:26:05,262.262 INFO    ] No camera update needed
[2026-08-31 04:26:05,264.264 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:26:05,267.267 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:26:05,273.273 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:26:05,279.279 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:26:07,322.322 INFO    ] ================================================
[2026-08-31 04:26:07,339.339 INFO    ] Launching Daemon at Mon Aug 31 04:26:07 IST 2026
[2026-08-31 04:26:07,350.350 INFO    ] ================================================
[2026-08-31 04:26:07,918.918 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:26:07
[2026-08-31 04:26:08,500.500 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:26:08,752.752 INFO    ] Initializing speech engine...
[2026-08-31 04:26:08,768.768 INFO    ] 2026-08-31 04:26:08
[2026-08-31 04:26:09,055.055 INFO    ] 2026-08-31 04:26:09
[2026-08-31 04:26:09,089.089 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:26:09,288.288 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:26:09,294.294 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:26:09,467.467 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:26:09,477.477 INFO    ] time= 31/08/2026 04:26:09
[2026-08-31 04:26:09,485.485 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:26:09,511.511 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:26:09,648.648 INFO    ] No existing commands found in stream
[2026-08-31 04:26:14,668.668 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:26:14,671.671 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-08-31 04:26:18,311.311 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 04:26:18,313.313 INFO    ] Checking for system updates...
[2026-08-31 04:26:18,349.349 INFO    ] 200
[2026-08-31 04:26:18,352.352 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:26:18,412.412 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:26:18,416.416 INFO    ] No update needed
[2026-08-31 04:26:18,419.419 INFO    ] Checking for camera pi updates...
[2026-08-31 04:26:18,457.457 INFO    ] 200
[2026-08-31 04:26:18,460.460 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:26:18,502.502 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:26:18,584.584 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:26:18,587.587 INFO    ] No camera update needed
[2026-08-31 04:26:18,590.590 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:26:18,592.592 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:26:18,599.599 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:26:18,604.604 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:26:20,646.646 INFO    ] ================================================
[2026-08-31 04:26:20,661.661 INFO    ] Launching Daemon at Mon Aug 31 04:26:20 IST 2026
[2026-08-31 04:26:20,676.676 INFO    ] ================================================
[2026-08-31 04:26:21,257.257 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:26:21
[2026-08-31 04:26:21,863.863 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:26:22,150.150 INFO    ] Initializing speech engine...
[2026-08-31 04:26:22,159.159 INFO    ] 2026-08-31 04:26:22
[2026-08-31 04:26:22,421.421 INFO    ] 2026-08-31 04:26:22
[2026-08-31 04:26:22,483.483 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:26:22,722.722 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:26:22,727.727 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:26:22,964.964 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:26:22,987.987 INFO    ] time= 31/08/2026 04:26:22
[2026-08-31 04:26:23,002.002 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:26:23,011.011 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:26:23,125.125 INFO    ] No existing commands found in stream
[2026-08-31 04:26:28,149.149 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:26:28,152.152 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-08-31 04:26:29,747.747 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 04:26:29,750.750 INFO    ] Checking for system updates...
[2026-08-31 04:26:29,786.786 INFO    ] 200
[2026-08-31 04:26:29,789.789 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:26:29,842.842 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:26:29,845.845 INFO    ] No update needed
[2026-08-31 04:26:29,847.847 INFO    ] Checking for camera pi updates...
[2026-08-31 04:26:29,881.881 INFO    ] 200
[2026-08-31 04:26:29,884.884 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:26:29,924.924 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:26:30,006.006 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:26:30,009.009 INFO    ] No camera update needed
[2026-08-31 04:26:30,011.011 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:26:30,013.013 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:26:30,019.019 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:26:30,024.024 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:26:32,066.066 INFO    ] ================================================
[2026-08-31 04:26:32,083.083 INFO    ] Launching Daemon at Mon Aug 31 04:26:32 IST 2026
[2026-08-31 04:26:32,095.095 INFO    ] ================================================
[2026-08-31 04:26:32,766.766 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:26:32
[2026-08-31 04:26:33,436.436 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:26:33,749.749 INFO    ] Initializing speech engine...
[2026-08-31 04:26:33,762.762 INFO    ] 2026-08-31 04:26:33
[2026-08-31 04:26:34,054.054 INFO    ] 2026-08-31 04:26:34
[2026-08-31 04:26:34,084.084 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:26:34,338.338 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:26:34,347.347 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:26:34,482.482 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:26:34,529.529 INFO    ] time= 31/08/2026 04:26:34
[2026-08-31 04:26:34,583.583 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:26:34,619.619 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:26:34,674.674 INFO    ] No existing commands found in stream
[2026-08-31 04:26:39,686.686 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:26:39,689.689 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-08-31 04:26:43,923.923 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 04:26:43,926.926 INFO    ] Checking for system updates...
[2026-08-31 04:26:43,965.965 INFO    ] 200
[2026-08-31 04:26:43,967.967 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:26:44,025.025 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:26:44,028.028 INFO    ] No update needed
[2026-08-31 04:26:44,030.030 INFO    ] Checking for camera pi updates...
[2026-08-31 04:26:44,064.064 INFO    ] 200
[2026-08-31 04:26:44,066.066 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:26:44,107.107 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:26:44,157.157 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:26:44,159.159 INFO    ] No camera update needed
[2026-08-31 04:26:44,162.162 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:26:44,164.164 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:26:44,169.169 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:26:44,174.174 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:26:46,214.214 INFO    ] ================================================
[2026-08-31 04:26:46,230.230 INFO    ] Launching Daemon at Mon Aug 31 04:26:46 IST 2026
[2026-08-31 04:26:46,245.245 INFO    ] ================================================
[2026-08-31 04:26:46,836.836 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:26:46
[2026-08-31 04:26:47,422.422 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:26:47,678.678 INFO    ] Initializing speech engine...
[2026-08-31 04:26:47,686.686 INFO    ] 2026-08-31 04:26:47
[2026-08-31 04:26:47,979.979 INFO    ] 2026-08-31 04:26:47
[2026-08-31 04:26:48,015.015 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:26:48,235.235 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:26:48,243.243 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:26:48,459.459 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:26:48,466.466 INFO    ] time= 31/08/2026 04:26:48
[2026-08-31 04:26:48,509.509 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:26:48,574.574 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:26:48,753.753 INFO    ] No existing commands found in stream
[2026-08-31 04:26:53,778.778 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:26:53,781.781 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-08-31 04:26:56,833.833 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 04:26:56,835.835 INFO    ] Checking for system updates...
[2026-08-31 04:26:56,877.877 INFO    ] 200
[2026-08-31 04:26:56,881.881 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:26:56,944.944 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:26:56,947.947 INFO    ] No update needed
[2026-08-31 04:26:56,950.950 INFO    ] Checking for camera pi updates...
[2026-08-31 04:26:56,986.986 INFO    ] 200
[2026-08-31 04:26:56,990.990 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:26:57,033.033 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:26:57,156.156 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:26:57,159.159 INFO    ] No camera update needed
[2026-08-31 04:26:57,161.161 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:26:57,164.164 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:26:57,169.169 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:26:57,174.174 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:26:59,214.214 INFO    ] ================================================
[2026-08-31 04:26:59,230.230 INFO    ] Launching Daemon at Mon Aug 31 04:26:59 IST 2026
[2026-08-31 04:26:59,241.241 INFO    ] ================================================
[2026-08-31 04:26:59,892.892 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:26:59
[2026-08-31 04:27:00,562.562 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:27:00,864.864 INFO    ] Initializing speech engine...
[2026-08-31 04:27:00,872.872 INFO    ] 2026-08-31 04:27:00
[2026-08-31 04:27:01,165.165 INFO    ] 2026-08-31 04:27:01
[2026-08-31 04:27:01,284.284 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:27:01,579.579 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:27:01,582.582 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:27:01,702.702 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:27:01,705.705 INFO    ] time= 31/08/2026 04:27:01
[2026-08-31 04:27:01,708.708 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:27:01,711.711 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:27:01,782.782 INFO    ] No existing commands found in stream
[2026-08-31 04:27:06,792.792 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:27:06,795.795 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-08-31 04:27:10,085.085 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 04:27:10,088.088 INFO    ] Checking for system updates...
[2026-08-31 04:27:10,124.124 INFO    ] 200
[2026-08-31 04:27:10,127.127 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:27:10,181.181 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:27:10,183.183 INFO    ] No update needed
[2026-08-31 04:27:10,186.186 INFO    ] Checking for camera pi updates...
[2026-08-31 04:27:10,220.220 INFO    ] 200
[2026-08-31 04:27:10,223.223 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:27:10,265.265 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:27:10,351.351 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:27:10,353.353 INFO    ] No camera update needed
[2026-08-31 04:27:10,356.356 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:27:10,359.359 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:27:10,365.365 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:27:10,371.371 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:27:12,413.413 INFO    ] ================================================
[2026-08-31 04:27:12,428.428 INFO    ] Launching Daemon at Mon Aug 31 04:27:12 IST 2026
[2026-08-31 04:27:12,439.439 INFO    ] ================================================
[2026-08-31 04:27:13,009.009 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:27:13
[2026-08-31 04:27:13,609.609 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:27:13,867.867 INFO    ] Initializing speech engine...
[2026-08-31 04:27:13,876.876 INFO    ] 2026-08-31 04:27:13
[2026-08-31 04:27:14,168.168 INFO    ] 2026-08-31 04:27:14
[2026-08-31 04:27:14,205.205 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:27:14,430.430 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:27:14,494.494 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:27:14,650.650 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:27:14,692.692 INFO    ] time= 31/08/2026 04:27:14
[2026-08-31 04:27:14,731.731 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:27:14,781.781 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:27:14,863.863 INFO    ] No existing commands found in stream
[2026-08-31 04:27:19,875.875 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:27:19,878.878 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-08-31 04:27:22,557.557 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 04:27:22,560.560 INFO    ] Checking for system updates...
[2026-08-31 04:27:22,600.600 INFO    ] 200
[2026-08-31 04:27:22,602.602 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:27:22,655.655 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:27:22,658.658 INFO    ] No update needed
[2026-08-31 04:27:22,661.661 INFO    ] Checking for camera pi updates...
[2026-08-31 04:27:22,698.698 INFO    ] 200
[2026-08-31 04:27:22,700.700 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:27:22,742.742 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:27:22,820.820 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:27:22,822.822 INFO    ] No camera update needed
[2026-08-31 04:27:22,824.824 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:27:22,827.827 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:27:22,832.832 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:27:22,837.837 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:27:24,878.878 INFO    ] ================================================
[2026-08-31 04:27:24,893.893 INFO    ] Launching Daemon at Mon Aug 31 04:27:24 IST 2026
[2026-08-31 04:27:24,904.904 INFO    ] ================================================
[2026-08-31 04:27:25,554.554 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:27:25
[2026-08-31 04:27:26,225.225 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:27:26,529.529 INFO    ] Initializing speech engine...
[2026-08-31 04:27:26,542.542 INFO    ] 2026-08-31 04:27:26
[2026-08-31 04:27:26,854.854 INFO    ] 2026-08-31 04:27:26
[2026-08-31 04:27:26,920.920 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:27:27,091.091 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:27:27,097.097 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:27:27,314.314 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:27:27,356.356 INFO    ] time= 31/08/2026 04:27:27
[2026-08-31 04:27:27,362.362 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:27:27,384.384 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:27:27,509.509 INFO    ] No existing commands found in stream
[2026-08-31 04:27:32,520.520 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:27:32,523.523 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-08-31 04:27:36,571.571 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 04:27:36,575.575 INFO    ] Checking for system updates...
[2026-08-31 04:27:36,616.616 INFO    ] 200
[2026-08-31 04:27:36,619.619 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:27:36,679.679 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:27:36,682.682 INFO    ] No update needed
[2026-08-31 04:27:36,685.685 INFO    ] Checking for camera pi updates...
[2026-08-31 04:27:36,723.723 INFO    ] 200
[2026-08-31 04:27:36,726.726 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:27:36,773.773 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:27:36,843.843 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:27:36,846.846 INFO    ] No camera update needed
[2026-08-31 04:27:36,849.849 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:27:36,851.851 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:27:36,858.858 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:27:36,863.863 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:27:38,905.905 INFO    ] ================================================
[2026-08-31 04:27:38,920.920 INFO    ] Launching Daemon at Mon Aug 31 04:27:38 IST 2026
[2026-08-31 04:27:38,931.931 INFO    ] ================================================
[2026-08-31 04:27:39,581.581 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:27:39
[2026-08-31 04:27:40,250.250 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:27:40,555.555 INFO    ] Initializing speech engine...
[2026-08-31 04:27:40,563.563 INFO    ] 2026-08-31 04:27:40
[2026-08-31 04:27:40,841.841 INFO    ] 2026-08-31 04:27:40
[2026-08-31 04:27:40,894.894 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:27:41,130.130 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:27:41,135.135 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:27:41,354.354 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:27:41,400.400 INFO    ] time= 31/08/2026 04:27:41
[2026-08-31 04:27:41,418.418 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:27:41,429.429 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:27:41,557.557 INFO    ] No existing commands found in stream
[2026-08-31 04:27:46,572.572 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:27:46,575.575 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-08-31 04:27:50,687.687 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 04:27:50,691.691 INFO    ] Checking for system updates...
[2026-08-31 04:27:50,727.727 INFO    ] 200
[2026-08-31 04:27:50,730.730 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:27:50,789.789 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:27:50,792.792 INFO    ] No update needed
[2026-08-31 04:27:50,794.794 INFO    ] Checking for camera pi updates...
[2026-08-31 04:27:50,831.831 INFO    ] 200
[2026-08-31 04:27:50,833.833 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:27:50,874.874 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:27:50,967.967 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:27:50,969.969 INFO    ] No camera update needed
[2026-08-31 04:27:50,972.972 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:27:50,974.974 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:27:50,979.979 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:27:50,984.984 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:27:53,024.024 INFO    ] ================================================
[2026-08-31 04:27:53,040.040 INFO    ] Launching Daemon at Mon Aug 31 04:27:53 IST 2026
[2026-08-31 04:27:53,051.051 INFO    ] ================================================
[2026-08-31 04:27:53,626.626 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:27:53
[2026-08-31 04:27:54,223.223 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:27:54,475.475 INFO    ] Initializing speech engine...
[2026-08-31 04:27:54,482.482 INFO    ] 2026-08-31 04:27:54
[2026-08-31 04:27:54,767.767 INFO    ] 2026-08-31 04:27:54
[2026-08-31 04:27:54,815.815 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:27:54,983.983 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:27:54,995.995 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:27:55,140.140 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:27:55,147.147 INFO    ] time= 31/08/2026 04:27:55
[2026-08-31 04:27:55,207.207 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:27:55,210.210 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:27:55,262.262 INFO    ] No existing commands found in stream
[2026-08-31 04:28:00,287.287 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:28:00,290.290 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-08-31 04:28:02,010.010 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 04:28:02,014.014 INFO    ] Checking for system updates...
[2026-08-31 04:28:02,054.054 INFO    ] 200
[2026-08-31 04:28:02,058.058 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:28:02,128.128 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:28:02,131.131 INFO    ] No update needed
[2026-08-31 04:28:02,134.134 INFO    ] Checking for camera pi updates...
[2026-08-31 04:28:02,171.171 INFO    ] 200
[2026-08-31 04:28:02,174.174 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:28:02,229.229 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:28:02,313.313 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:28:02,316.316 INFO    ] No camera update needed
[2026-08-31 04:28:02,319.319 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:28:02,322.322 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:28:02,330.330 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:28:02,337.337 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:28:04,381.381 INFO    ] ================================================
[2026-08-31 04:28:04,397.397 INFO    ] Launching Daemon at Mon Aug 31 04:28:04 IST 2026
[2026-08-31 04:28:04,408.408 INFO    ] ================================================
[2026-08-31 04:28:04,996.996 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:28:04
[2026-08-31 04:28:05,611.611 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:28:05,889.889 INFO    ] Initializing speech engine...
[2026-08-31 04:28:05,907.907 INFO    ] 2026-08-31 04:28:05
[2026-08-31 04:28:06,198.198 INFO    ] 2026-08-31 04:28:06
[2026-08-31 04:28:06,266.266 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:28:06,497.497 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:28:06,507.507 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:28:06,724.724 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:28:06,773.773 INFO    ] time= 31/08/2026 04:28:06
[2026-08-31 04:28:06,795.795 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:28:06,826.826 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:28:06,938.938 INFO    ] No existing commands found in stream
[2026-08-31 04:28:11,964.964 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:28:11,967.967 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-08-31 04:28:16,155.155 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 04:28:16,158.158 INFO    ] Checking for system updates...
[2026-08-31 04:28:16,209.209 INFO    ] 200
[2026-08-31 04:28:16,211.211 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:28:16,263.263 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:28:16,266.266 INFO    ] No update needed
[2026-08-31 04:28:16,268.268 INFO    ] Checking for camera pi updates...
[2026-08-31 04:28:16,302.302 INFO    ] 200
[2026-08-31 04:28:16,305.305 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:28:16,345.345 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:28:16,525.525 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:28:16,527.527 INFO    ] No camera update needed
[2026-08-31 04:28:16,530.530 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:28:16,532.532 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:28:16,537.537 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:28:16,542.542 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:28:18,583.583 INFO    ] ================================================
[2026-08-31 04:28:18,599.599 INFO    ] Launching Daemon at Mon Aug 31 04:28:18 IST 2026
[2026-08-31 04:28:18,611.611 INFO    ] ================================================
[2026-08-31 04:28:19,192.192 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:28:19
[2026-08-31 04:28:19,790.790 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:28:20,071.071 INFO    ] Initializing speech engine...
[2026-08-31 04:28:20,076.076 INFO    ] 2026-08-31 04:28:20
[2026-08-31 04:28:20,339.339 INFO    ] 2026-08-31 04:28:20
[2026-08-31 04:28:20,393.393 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:28:20,618.618 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:28:20,628.628 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:28:20,762.762 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:28:20,822.822 INFO    ] time= 31/08/2026 04:28:20
[2026-08-31 04:28:20,876.876 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:28:20,895.895 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:28:20,952.952 INFO    ] No existing commands found in stream
[2026-08-31 04:28:25,977.977 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:28:25,980.980 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-08-31 04:28:26,604.604 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 04:28:26,607.607 INFO    ] Checking for system updates...
[2026-08-31 04:28:26,646.646 INFO    ] 200
[2026-08-31 04:28:26,649.649 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:28:26,707.707 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:28:26,710.710 INFO    ] No update needed
[2026-08-31 04:28:26,712.712 INFO    ] Checking for camera pi updates...
[2026-08-31 04:28:26,745.745 INFO    ] 200
[2026-08-31 04:28:26,748.748 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:28:26,788.788 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:28:26,886.886 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:28:26,889.889 INFO    ] No camera update needed
[2026-08-31 04:28:26,891.891 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:28:26,893.893 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:28:26,899.899 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:28:26,904.904 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:28:28,944.944 INFO    ] ================================================
[2026-08-31 04:28:28,960.960 INFO    ] Launching Daemon at Mon Aug 31 04:28:28 IST 2026
[2026-08-31 04:28:28,972.972 INFO    ] ================================================
[2026-08-31 04:28:29,550.550 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:28:29
[2026-08-31 04:28:30,135.135 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:28:30,404.404 INFO    ] Initializing speech engine...
[2026-08-31 04:28:30,414.414 INFO    ] 2026-08-31 04:28:30
[2026-08-31 04:28:30,671.671 INFO    ] 2026-08-31 04:28:30
[2026-08-31 04:28:30,727.727 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:28:30,957.957 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:28:30,962.962 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:28:31,095.095 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:28:31,117.117 INFO    ] time= 31/08/2026 04:28:31
[2026-08-31 04:28:31,172.172 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:28:31,180.180 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:28:31,269.269 INFO    ] No existing commands found in stream
[2026-08-31 04:28:36,285.285 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:28:36,288.288 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-08-31 04:28:37,106.106 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 04:28:37,109.109 INFO    ] Checking for system updates...
[2026-08-31 04:28:37,148.148 INFO    ] 200
[2026-08-31 04:28:37,151.151 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:28:37,203.203 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:28:37,205.205 INFO    ] No update needed
[2026-08-31 04:28:37,207.207 INFO    ] Checking for camera pi updates...
[2026-08-31 04:28:37,244.244 INFO    ] 200
[2026-08-31 04:28:37,246.246 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:28:37,286.286 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:28:37,369.369 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:28:37,371.371 INFO    ] No camera update needed
[2026-08-31 04:28:37,374.374 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:28:37,376.376 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:28:37,381.381 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:28:37,386.386 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:28:39,426.426 INFO    ] ================================================
[2026-08-31 04:28:39,441.441 INFO    ] Launching Daemon at Mon Aug 31 04:28:39 IST 2026
[2026-08-31 04:28:39,453.453 INFO    ] ================================================
[2026-08-31 04:28:40,024.024 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:28:40
[2026-08-31 04:28:40,734.734 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:28:41,029.029 INFO    ] Initializing speech engine...
[2026-08-31 04:28:41,036.036 INFO    ] 2026-08-31 04:28:41
[2026-08-31 04:28:41,296.296 INFO    ] 2026-08-31 04:28:41
[2026-08-31 04:28:41,350.350 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:28:41,571.571 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:28:41,582.582 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:28:41,794.794 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:28:41,843.843 INFO    ] time= 31/08/2026 04:28:41
[2026-08-31 04:28:41,849.849 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:28:41,866.866 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:28:41,996.996 INFO    ] No existing commands found in stream
[2026-08-31 04:28:47,009.009 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:28:47,012.012 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-08-31 04:28:50,118.118 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 04:28:50,120.120 INFO    ] Checking for system updates...
[2026-08-31 04:28:50,158.158 INFO    ] 200
[2026-08-31 04:28:50,160.160 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:28:50,219.219 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:28:50,222.222 INFO    ] No update needed
[2026-08-31 04:28:50,224.224 INFO    ] Checking for camera pi updates...
[2026-08-31 04:28:50,261.261 INFO    ] 200
[2026-08-31 04:28:50,263.263 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:28:50,304.304 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:28:50,385.385 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:28:50,388.388 INFO    ] No camera update needed
[2026-08-31 04:28:50,390.390 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:28:50,392.392 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:28:50,397.397 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:28:50,402.402 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:28:52,444.444 INFO    ] ================================================
[2026-08-31 04:28:52,460.460 INFO    ] Launching Daemon at Mon Aug 31 04:28:52 IST 2026
[2026-08-31 04:28:52,471.471 INFO    ] ================================================
[2026-08-31 04:28:53,115.115 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:28:53
[2026-08-31 04:28:53,709.709 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:28:53,984.984 INFO    ] Initializing speech engine...
[2026-08-31 04:28:53,993.993 INFO    ] 2026-08-31 04:28:53
[2026-08-31 04:28:54,253.253 INFO    ] 2026-08-31 04:28:54
[2026-08-31 04:28:54,308.308 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:28:54,528.528 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:28:54,537.537 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:28:54,746.746 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:28:54,795.795 INFO    ] time= 31/08/2026 04:28:54
[2026-08-31 04:28:54,801.801 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:28:54,819.819 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:28:54,945.945 INFO    ] No existing commands found in stream
[2026-08-31 04:28:59,970.970 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:28:59,973.973 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-08-31 04:29:00,848.848 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 04:29:00,851.851 INFO    ] Checking for system updates...
[2026-08-31 04:29:00,886.886 INFO    ] 200
[2026-08-31 04:29:00,889.889 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:29:00,947.947 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:29:00,949.949 INFO    ] No update needed
[2026-08-31 04:29:00,952.952 INFO    ] Checking for camera pi updates...
[2026-08-31 04:29:00,996.996 INFO    ] 200
[2026-08-31 04:29:00,998.998 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:29:01,038.038 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:29:01,121.121 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:29:01,124.124 INFO    ] No camera update needed
[2026-08-31 04:29:01,126.126 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:29:01,129.129 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:29:01,134.134 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:29:01,139.139 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:29:03,213.213 INFO    ] ================================================
[2026-08-31 04:29:03,235.235 INFO    ] Launching Daemon at Mon Aug 31 04:29:03 IST 2026
[2026-08-31 04:29:03,248.248 INFO    ] ================================================
[2026-08-31 04:29:03,919.919 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:29:03
[2026-08-31 04:29:04,515.515 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:29:04,778.778 INFO    ] Initializing speech engine...
[2026-08-31 04:29:04,801.801 INFO    ] 2026-08-31 04:29:04
[2026-08-31 04:29:05,084.084 INFO    ] 2026-08-31 04:29:05
[2026-08-31 04:29:05,120.120 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:29:05,343.343 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:29:05,408.408 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:29:05,564.564 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:29:05,570.570 INFO    ] time= 31/08/2026 04:29:05
[2026-08-31 04:29:05,635.635 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:29:05,689.689 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:29:05,821.821 INFO    ] No existing commands found in stream
[2026-08-31 04:29:10,850.850 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:29:10,853.853 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-08-31 04:29:14,775.775 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 04:29:14,778.778 INFO    ] Checking for system updates...
[2026-08-31 04:29:14,815.815 INFO    ] 200
[2026-08-31 04:29:14,818.818 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:29:14,878.878 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:29:14,881.881 INFO    ] No update needed
[2026-08-31 04:29:14,883.883 INFO    ] Checking for camera pi updates...
[2026-08-31 04:29:14,917.917 INFO    ] 200
[2026-08-31 04:29:14,920.920 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:29:14,964.964 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:29:15,063.063 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:29:15,065.065 INFO    ] No camera update needed
[2026-08-31 04:29:15,068.068 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:29:15,071.071 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:29:15,079.079 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:29:15,086.086 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:29:17,128.128 INFO    ] ================================================
[2026-08-31 04:29:17,143.143 INFO    ] Launching Daemon at Mon Aug 31 04:29:17 IST 2026
[2026-08-31 04:29:17,154.154 INFO    ] ================================================
[2026-08-31 04:29:17,794.794 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:29:17
[2026-08-31 04:29:18,453.453 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:29:18,753.753 INFO    ] Initializing speech engine...
[2026-08-31 04:29:18,761.761 INFO    ] 2026-08-31 04:29:18
[2026-08-31 04:29:19,036.036 INFO    ] 2026-08-31 04:29:19
[2026-08-31 04:29:19,094.094 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:29:19,328.328 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:29:19,340.340 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:29:19,575.575 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:29:19,605.605 INFO    ] time= 31/08/2026 04:29:19
[2026-08-31 04:29:19,624.624 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:29:19,642.642 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:29:19,773.773 INFO    ] No existing commands found in stream
[2026-08-31 04:29:24,799.799 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:29:24,803.803 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-08-31 04:29:28,256.256 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 04:29:28,259.259 INFO    ] Checking for system updates...
[2026-08-31 04:29:28,298.298 INFO    ] 200
[2026-08-31 04:29:28,301.301 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:29:28,359.359 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:29:28,361.361 INFO    ] No update needed
[2026-08-31 04:29:28,364.364 INFO    ] Checking for camera pi updates...
[2026-08-31 04:29:28,398.398 INFO    ] 200
[2026-08-31 04:29:28,400.400 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:29:28,449.449 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:29:28,529.529 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:29:28,531.531 INFO    ] No camera update needed
[2026-08-31 04:29:28,534.534 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:29:28,536.536 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:29:28,542.542 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:29:28,547.547 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:29:30,588.588 INFO    ] ================================================
[2026-08-31 04:29:30,603.603 INFO    ] Launching Daemon at Mon Aug 31 04:29:30 IST 2026
[2026-08-31 04:29:30,615.615 INFO    ] ================================================
[2026-08-31 04:29:31,204.204 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:29:31
[2026-08-31 04:29:31,800.800 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:29:32,074.074 INFO    ] Initializing speech engine...
[2026-08-31 04:29:32,086.086 INFO    ] 2026-08-31 04:29:32
[2026-08-31 04:29:32,369.369 INFO    ] 2026-08-31 04:29:32
[2026-08-31 04:29:32,403.403 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:29:32,658.658 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:29:32,669.669 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:29:32,814.814 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:29:32,875.875 INFO    ] time= 31/08/2026 04:29:32
[2026-08-31 04:29:32,935.935 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:29:32,953.953 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:29:33,088.088 INFO    ] No existing commands found in stream
[2026-08-31 04:29:38,118.118 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:29:38,121.121 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-08-31 04:29:38,642.642 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 04:29:38,645.645 INFO    ] Checking for system updates...
[2026-08-31 04:29:38,686.686 INFO    ] 200
[2026-08-31 04:29:38,689.689 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:29:38,746.746 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:29:38,749.749 INFO    ] No update needed
[2026-08-31 04:29:38,752.752 INFO    ] Checking for camera pi updates...
[2026-08-31 04:29:38,786.786 INFO    ] 200
[2026-08-31 04:29:38,789.789 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:29:38,830.830 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:29:38,935.935 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:29:38,937.937 INFO    ] No camera update needed
[2026-08-31 04:29:38,940.940 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:29:38,943.943 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:29:38,948.948 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:29:38,954.954 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:29:41,995.995 INFO    ] ================================================
[2026-08-31 04:29:41,010.010 INFO    ] Launching Daemon at Mon Aug 31 04:29:41 IST 2026
[2026-08-31 04:29:41,021.021 INFO    ] ================================================
[2026-08-31 04:29:41,588.588 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:29:41
[2026-08-31 04:29:42,171.171 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:29:42,438.438 INFO    ] Initializing speech engine...
[2026-08-31 04:29:42,447.447 INFO    ] 2026-08-31 04:29:42
[2026-08-31 04:29:42,693.693 INFO    ] 2026-08-31 04:29:42
[2026-08-31 04:29:42,727.727 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:29:42,984.984 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:29:42,990.990 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:29:43,192.192 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:29:43,245.245 INFO    ] time= 31/08/2026 04:29:43
[2026-08-31 04:29:43,251.251 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:29:43,269.269 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:29:43,395.395 INFO    ] No existing commands found in stream
[2026-08-31 04:29:48,410.410 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:29:48,413.413 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-08-31 04:29:49,995.995 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 04:29:49,998.998 INFO    ] Checking for system updates...
[2026-08-31 04:29:50,036.036 INFO    ] 200
[2026-08-31 04:29:50,038.038 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:29:50,091.091 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:29:50,094.094 INFO    ] No update needed
[2026-08-31 04:29:50,096.096 INFO    ] Checking for camera pi updates...
[2026-08-31 04:29:50,132.132 INFO    ] 200
[2026-08-31 04:29:50,134.134 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:29:50,178.178 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:29:50,262.262 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:29:50,265.265 INFO    ] No camera update needed
[2026-08-31 04:29:50,267.267 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:29:50,270.270 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:29:50,275.275 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:29:50,281.281 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:29:52,322.322 INFO    ] ================================================
[2026-08-31 04:29:52,338.338 INFO    ] Launching Daemon at Mon Aug 31 04:29:52 IST 2026
[2026-08-31 04:29:52,349.349 INFO    ] ================================================
[2026-08-31 04:29:52,927.927 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:29:52
[2026-08-31 04:29:53,519.519 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:29:53,790.790 INFO    ] Initializing speech engine...
[2026-08-31 04:29:53,799.799 INFO    ] 2026-08-31 04:29:53
[2026-08-31 04:29:54,055.055 INFO    ] 2026-08-31 04:29:54
[2026-08-31 04:29:54,113.113 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:29:54,338.338 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:29:54,343.343 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:29:54,563.563 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:29:54,599.599 INFO    ] time= 31/08/2026 04:29:54
[2026-08-31 04:29:54,605.605 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:29:54,623.623 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:29:54,754.754 INFO    ] No existing commands found in stream
[2026-08-31 04:29:59,772.772 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:29:59,775.775 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-08-31 04:30:07,198.198 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 04:30:07,201.201 INFO    ] Checking for system updates...
[2026-08-31 04:30:07,241.241 INFO    ] 200
[2026-08-31 04:30:07,245.245 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:30:07,308.308 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:30:07,311.311 INFO    ] No update needed
[2026-08-31 04:30:07,314.314 INFO    ] Checking for camera pi updates...
[2026-08-31 04:30:07,356.356 INFO    ] 200
[2026-08-31 04:30:07,358.358 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:30:07,399.399 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:30:07,498.498 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:30:07,500.500 INFO    ] No camera update needed
[2026-08-31 04:30:07,502.502 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:30:07,505.505 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:30:07,510.510 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:30:07,515.515 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:30:09,558.558 INFO    ] ================================================
[2026-08-31 04:30:09,574.574 INFO    ] Launching Daemon at Mon Aug 31 04:30:09 IST 2026
[2026-08-31 04:30:09,585.585 INFO    ] ================================================
[2026-08-31 04:30:10,227.227 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:30:10
[2026-08-31 04:30:10,891.891 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:30:11,190.190 INFO    ] Initializing speech engine...
[2026-08-31 04:30:11,204.204 INFO    ] 2026-08-31 04:30:11
[2026-08-31 04:30:11,515.515 INFO    ] 2026-08-31 04:30:11
[2026-08-31 04:30:11,597.597 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:30:11,858.858 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:30:11,883.883 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:30:12,040.040 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:30:12,063.063 INFO    ] time= 31/08/2026 04:30:12
[2026-08-31 04:30:12,070.070 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:30:12,078.078 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:30:12,175.175 INFO    ] No existing commands found in stream
[2026-08-31 04:30:17,205.205 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:30:17,208.208 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-08-31 04:30:20,846.846 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 04:30:20,849.849 INFO    ] Checking for system updates...
[2026-08-31 04:30:20,889.889 INFO    ] 200
[2026-08-31 04:30:20,892.892 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:30:20,950.950 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:30:20,953.953 INFO    ] No update needed
[2026-08-31 04:30:20,955.955 INFO    ] Checking for camera pi updates...
[2026-08-31 04:30:20,992.992 INFO    ] 200
[2026-08-31 04:30:20,994.994 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:30:21,039.039 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:30:21,204.204 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:30:21,207.207 INFO    ] No camera update needed
[2026-08-31 04:30:21,209.209 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:30:21,212.212 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:30:21,217.217 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:30:21,222.222 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:30:23,262.262 INFO    ] ================================================
[2026-08-31 04:30:23,278.278 INFO    ] Launching Daemon at Mon Aug 31 04:30:23 IST 2026
[2026-08-31 04:30:23,289.289 INFO    ] ================================================
[2026-08-31 04:30:23,874.874 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:30:23
[2026-08-31 04:30:24,551.551 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:30:24,825.825 INFO    ] Initializing speech engine...
[2026-08-31 04:30:24,836.836 INFO    ] 2026-08-31 04:30:24
[2026-08-31 04:30:25,081.081 INFO    ] 2026-08-31 04:30:25
[2026-08-31 04:30:25,115.115 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:30:25,380.380 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:30:25,401.401 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:30:25,632.632 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:30:25,645.645 INFO    ] time= 31/08/2026 04:30:25
[2026-08-31 04:30:25,666.666 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:30:25,694.694 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:30:25,791.791 INFO    ] No existing commands found in stream
[2026-08-31 04:30:30,813.813 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:30:30,816.816 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-08-31 04:30:33,479.479 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 04:30:33,482.482 INFO    ] Checking for system updates...
[2026-08-31 04:30:33,523.523 INFO    ] 200
[2026-08-31 04:30:33,526.526 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:30:33,580.580 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:30:33,583.583 INFO    ] No update needed
[2026-08-31 04:30:33,586.586 INFO    ] Checking for camera pi updates...
[2026-08-31 04:30:33,623.623 INFO    ] 200
[2026-08-31 04:30:33,626.626 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:30:33,665.665 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:30:33,772.772 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:30:33,775.775 INFO    ] No camera update needed
[2026-08-31 04:30:33,777.777 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:30:33,780.780 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:30:33,785.785 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:30:33,790.790 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:30:35,830.830 INFO    ] ================================================
[2026-08-31 04:30:35,846.846 INFO    ] Launching Daemon at Mon Aug 31 04:30:35 IST 2026
[2026-08-31 04:30:35,857.857 INFO    ] ================================================
[2026-08-31 04:30:36,439.439 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:30:36
[2026-08-31 04:30:37,025.025 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:30:37,292.292 INFO    ] Initializing speech engine...
[2026-08-31 04:30:37,301.301 INFO    ] 2026-08-31 04:30:37
[2026-08-31 04:30:37,555.555 INFO    ] 2026-08-31 04:30:37
[2026-08-31 04:30:37,619.619 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:30:37,804.804 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:30:37,812.812 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:30:38,033.033 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:30:38,040.040 INFO    ] time= 31/08/2026 04:30:38
[2026-08-31 04:30:38,099.099 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:30:38,159.159 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:30:38,235.235 INFO    ] No existing commands found in stream
[2026-08-31 04:30:43,247.247 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:30:43,250.250 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-08-31 04:30:43,868.868 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 04:30:43,870.870 INFO    ] Checking for system updates...
[2026-08-31 04:30:43,906.906 INFO    ] 200
[2026-08-31 04:30:43,909.909 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:30:43,960.960 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:30:43,963.963 INFO    ] No update needed
[2026-08-31 04:30:43,965.965 INFO    ] Checking for camera pi updates...
[2026-08-31 04:30:43,999.999 INFO    ] 200
[2026-08-31 04:30:44,001.001 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:30:44,046.046 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:30:44,121.121 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:30:44,124.124 INFO    ] No camera update needed
[2026-08-31 04:30:44,126.126 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:30:44,129.129 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:30:44,134.134 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:30:44,139.139 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:30:46,181.181 INFO    ] ================================================
[2026-08-31 04:30:46,197.197 INFO    ] Launching Daemon at Mon Aug 31 04:30:46 IST 2026
[2026-08-31 04:30:46,208.208 INFO    ] ================================================
[2026-08-31 04:30:46,868.868 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:30:46
[2026-08-31 04:30:47,527.527 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:30:47,817.817 INFO    ] Initializing speech engine...
[2026-08-31 04:30:47,827.827 INFO    ] 2026-08-31 04:30:47
[2026-08-31 04:30:48,085.085 INFO    ] 2026-08-31 04:30:48
[2026-08-31 04:30:48,120.120 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:30:48,320.320 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:30:48,334.334 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:30:48,502.502 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:30:48,506.506 INFO    ] time= 31/08/2026 04:30:48
[2026-08-31 04:30:48,520.520 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:30:48,558.558 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:30:48,708.708 INFO    ] No existing commands found in stream
[2026-08-31 04:30:53,718.718 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:30:53,721.721 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-08-31 04:30:55,888.888 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 04:30:55,891.891 INFO    ] Checking for system updates...
[2026-08-31 04:30:55,930.930 INFO    ] 200
[2026-08-31 04:30:55,932.932 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:30:55,991.991 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:30:55,993.993 INFO    ] No update needed
[2026-08-31 04:30:55,995.995 INFO    ] Checking for camera pi updates...
[2026-08-31 04:30:56,032.032 INFO    ] 200
[2026-08-31 04:30:56,034.034 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:30:56,079.079 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:30:56,182.182 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:30:56,185.185 INFO    ] No camera update needed
[2026-08-31 04:30:56,187.187 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:30:56,190.190 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:30:56,195.195 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:30:56,200.200 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:30:58,242.242 INFO    ] ================================================
[2026-08-31 04:30:58,256.256 INFO    ] Launching Daemon at Mon Aug 31 04:30:58 IST 2026
[2026-08-31 04:30:58,267.267 INFO    ] ================================================
[2026-08-31 04:30:58,841.841 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:30:58
[2026-08-31 04:30:59,443.443 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:30:59,715.715 INFO    ] Initializing speech engine...
[2026-08-31 04:30:59,724.724 INFO    ] 2026-08-31 04:30:59
[2026-08-31 04:30:59,974.974 INFO    ] 2026-08-31 04:30:59
[2026-08-31 04:31:00,009.009 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:31:00,187.187 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:31:00,199.199 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:31:00,348.348 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:31:00,355.355 INFO    ] time= 31/08/2026 04:31:00
[2026-08-31 04:31:00,401.401 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:31:00,423.423 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:31:00,548.548 INFO    ] No existing commands found in stream
[2026-08-31 04:31:05,563.563 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:31:05,566.566 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-08-31 04:31:08,348.348 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 04:31:08,351.351 INFO    ] Checking for system updates...
[2026-08-31 04:31:08,386.386 INFO    ] 200
[2026-08-31 04:31:08,389.389 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:31:08,447.447 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:31:08,449.449 INFO    ] No update needed
[2026-08-31 04:31:08,452.452 INFO    ] Checking for camera pi updates...
[2026-08-31 04:31:08,486.486 INFO    ] 200
[2026-08-31 04:31:08,489.489 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:31:08,529.529 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:31:08,624.624 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:31:08,626.626 INFO    ] No camera update needed
[2026-08-31 04:31:08,629.629 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:31:08,631.631 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:31:08,637.637 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:31:08,642.642 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:31:10,685.685 INFO    ] ================================================
[2026-08-31 04:31:10,700.700 INFO    ] Launching Daemon at Mon Aug 31 04:31:10 IST 2026
[2026-08-31 04:31:10,711.711 INFO    ] ================================================
[2026-08-31 04:31:11,305.305 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:31:11
[2026-08-31 04:31:11,908.908 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:31:12,193.193 INFO    ] Initializing speech engine...
[2026-08-31 04:31:12,199.199 INFO    ] 2026-08-31 04:31:12
[2026-08-31 04:31:12,460.460 INFO    ] 2026-08-31 04:31:12
[2026-08-31 04:31:12,510.510 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:31:12,735.735 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:31:12,744.744 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:31:12,878.878 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:31:12,943.943 INFO    ] time= 31/08/2026 04:31:12
[2026-08-31 04:31:13,006.006 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:31:13,013.013 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:31:13,147.147 INFO    ] No existing commands found in stream
[2026-08-31 04:31:18,168.168 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:31:18,171.171 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-08-31 04:31:20,388.388 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 04:31:20,391.391 INFO    ] Checking for system updates...
[2026-08-31 04:31:20,427.427 INFO    ] 200
[2026-08-31 04:31:20,429.429 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:31:20,482.482 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:31:20,484.484 INFO    ] No update needed
[2026-08-31 04:31:20,487.487 INFO    ] Checking for camera pi updates...
[2026-08-31 04:31:20,524.524 INFO    ] 200
[2026-08-31 04:31:20,527.527 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:31:20,566.566 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:31:20,636.636 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:31:20,638.638 INFO    ] No camera update needed
[2026-08-31 04:31:20,641.641 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:31:20,643.643 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:31:20,648.648 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:31:20,653.653 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:31:22,696.696 INFO    ] ================================================
[2026-08-31 04:31:22,711.711 INFO    ] Launching Daemon at Mon Aug 31 04:31:22 IST 2026
[2026-08-31 04:31:22,722.722 INFO    ] ================================================
[2026-08-31 04:31:23,383.383 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:31:23
[2026-08-31 04:31:24,056.056 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:31:24,361.361 INFO    ] Initializing speech engine...
[2026-08-31 04:31:24,374.374 INFO    ] 2026-08-31 04:31:24
[2026-08-31 04:31:24,662.662 INFO    ] 2026-08-31 04:31:24
[2026-08-31 04:31:24,700.700 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:31:24,952.952 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:31:24,972.972 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:31:25,189.189 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:31:25,196.196 INFO    ] time= 31/08/2026 04:31:25
[2026-08-31 04:31:25,217.217 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:31:25,245.245 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:31:25,352.352 INFO    ] No existing commands found in stream
[2026-08-31 04:31:30,369.369 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:31:30,372.372 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-08-31 04:31:33,118.118 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 04:31:33,121.121 INFO    ] Checking for system updates...
[2026-08-31 04:31:33,161.161 INFO    ] 200
[2026-08-31 04:31:33,164.164 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:31:33,231.231 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:31:33,235.235 INFO    ] No update needed
[2026-08-31 04:31:33,239.239 INFO    ] Checking for camera pi updates...
[2026-08-31 04:31:33,280.280 INFO    ] 200
[2026-08-31 04:31:33,282.282 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:31:33,325.325 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:31:33,408.408 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:31:33,411.411 INFO    ] No camera update needed
[2026-08-31 04:31:33,413.413 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:31:33,416.416 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:31:33,422.422 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:31:33,427.427 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:31:35,468.468 INFO    ] ================================================
[2026-08-31 04:31:35,484.484 INFO    ] Launching Daemon at Mon Aug 31 04:31:35 IST 2026
[2026-08-31 04:31:35,496.496 INFO    ] ================================================
[2026-08-31 04:31:36,158.158 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:31:36
[2026-08-31 04:31:36,839.839 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:31:37,143.143 INFO    ] Initializing speech engine...
[2026-08-31 04:31:37,153.153 INFO    ] 2026-08-31 04:31:37
[2026-08-31 04:31:37,442.442 INFO    ] 2026-08-31 04:31:37
[2026-08-31 04:31:37,489.489 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:31:37,770.770 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:31:37,779.779 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:31:37,975.975 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:31:37,982.982 INFO    ] time= 31/08/2026 04:31:37
[2026-08-31 04:31:38,003.003 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:31:38,031.031 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:31:38,137.137 INFO    ] No existing commands found in stream
[2026-08-31 04:31:43,154.154 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:31:43,157.157 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-08-31 04:31:45,345.345 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 04:31:45,348.348 INFO    ] Checking for system updates...
[2026-08-31 04:31:45,389.389 INFO    ] 200
[2026-08-31 04:31:45,391.391 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:31:45,493.493 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:31:45,495.495 INFO    ] No update needed
[2026-08-31 04:31:45,497.497 INFO    ] Checking for camera pi updates...
[2026-08-31 04:31:45,535.535 INFO    ] 200
[2026-08-31 04:31:45,539.539 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:31:45,579.579 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:31:45,684.684 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:31:45,686.686 INFO    ] No camera update needed
[2026-08-31 04:31:45,689.689 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:31:45,691.691 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:31:45,696.696 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:31:45,701.701 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:31:47,743.743 INFO    ] ================================================
[2026-08-31 04:31:47,758.758 INFO    ] Launching Daemon at Mon Aug 31 04:31:47 IST 2026
[2026-08-31 04:31:47,769.769 INFO    ] ================================================
[2026-08-31 04:31:48,432.432 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:31:48
[2026-08-31 04:31:49,092.092 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:31:49,362.362 INFO    ] Initializing speech engine...
[2026-08-31 04:31:49,372.372 INFO    ] 2026-08-31 04:31:49
[2026-08-31 04:31:49,617.617 INFO    ] 2026-08-31 04:31:49
[2026-08-31 04:31:49,652.652 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:31:49,835.835 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:31:49,850.850 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:31:49,983.983 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:31:49,988.988 INFO    ] time= 31/08/2026 04:31:49
[2026-08-31 04:31:49,995.995 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:31:50,055.055 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:31:50,165.165 INFO    ] No existing commands found in stream
[2026-08-31 04:31:55,190.190 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:31:55,193.193 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-08-31 04:31:55,760.760 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 04:31:55,762.762 INFO    ] Checking for system updates...
[2026-08-31 04:31:55,806.806 INFO    ] 200
[2026-08-31 04:31:55,809.809 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:31:55,862.862 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:31:55,865.865 INFO    ] No update needed
[2026-08-31 04:31:55,868.868 INFO    ] Checking for camera pi updates...
[2026-08-31 04:31:55,903.903 INFO    ] 200
[2026-08-31 04:31:55,906.906 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:31:55,952.952 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:31:56,058.058 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:31:56,060.060 INFO    ] No camera update needed
[2026-08-31 04:31:56,063.063 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:31:56,065.065 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:31:56,070.070 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:31:56,076.076 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:31:58,117.117 INFO    ] ================================================
[2026-08-31 04:31:58,133.133 INFO    ] Launching Daemon at Mon Aug 31 04:31:58 IST 2026
[2026-08-31 04:31:58,144.144 INFO    ] ================================================
[2026-08-31 04:31:58,795.795 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:31:58
[2026-08-31 04:31:59,407.407 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:31:59,667.667 INFO    ] Initializing speech engine...
[2026-08-31 04:31:59,686.686 INFO    ] 2026-08-31 04:31:59
[2026-08-31 04:31:59,936.936 INFO    ] 2026-08-31 04:31:59
[2026-08-31 04:31:59,970.970 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:32:00,230.230 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:32:00,240.240 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:32:00,375.375 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:32:00,423.423 INFO    ] time= 31/08/2026 04:32:00
[2026-08-31 04:32:00,477.477 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:32:00,512.512 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:32:00,664.664 INFO    ] No existing commands found in stream
[2026-08-31 04:32:05,678.678 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:32:05,680.680 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-08-31 04:32:09,679.679 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 04:32:09,681.681 INFO    ] Checking for system updates...
[2026-08-31 04:32:09,717.717 INFO    ] 200
[2026-08-31 04:32:09,719.719 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:32:09,770.770 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:32:09,773.773 INFO    ] No update needed
[2026-08-31 04:32:09,775.775 INFO    ] Checking for camera pi updates...
[2026-08-31 04:32:09,811.811 INFO    ] 200
[2026-08-31 04:32:09,813.813 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:32:09,854.854 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:32:09,958.958 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:32:09,960.960 INFO    ] No camera update needed
[2026-08-31 04:32:09,963.963 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:32:09,965.965 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:32:09,971.971 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:32:09,976.976 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:32:12,015.015 INFO    ] ================================================
[2026-08-31 04:32:12,030.030 INFO    ] Launching Daemon at Mon Aug 31 04:32:12 IST 2026
[2026-08-31 04:32:12,041.041 INFO    ] ================================================
[2026-08-31 04:32:12,622.622 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:32:12
[2026-08-31 04:32:13,220.220 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:32:13,499.499 INFO    ] Initializing speech engine...
[2026-08-31 04:32:13,508.508 INFO    ] 2026-08-31 04:32:13
[2026-08-31 04:32:13,767.767 INFO    ] 2026-08-31 04:32:13
[2026-08-31 04:32:13,818.818 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:32:14,043.043 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:32:14,053.053 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:32:14,186.186 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:32:14,251.251 INFO    ] time= 31/08/2026 04:32:14
[2026-08-31 04:32:14,311.311 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:32:14,320.320 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:32:14,460.460 INFO    ] No existing commands found in stream
[2026-08-31 04:32:19,476.476 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:32:19,479.479 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-08-31 04:32:22,490.490 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 04:32:22,493.493 INFO    ] Checking for system updates...
[2026-08-31 04:32:22,531.531 INFO    ] 200
[2026-08-31 04:32:22,534.534 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:32:22,590.590 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:32:22,592.592 INFO    ] No update needed
[2026-08-31 04:32:22,595.595 INFO    ] Checking for camera pi updates...
[2026-08-31 04:32:22,630.630 INFO    ] 200
[2026-08-31 04:32:22,633.633 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:32:22,674.674 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:32:22,875.875 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:32:22,878.878 INFO    ] No camera update needed
[2026-08-31 04:32:22,880.880 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:32:22,883.883 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:32:22,888.888 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:32:22,893.893 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:32:24,933.933 INFO    ] ================================================
[2026-08-31 04:32:24,948.948 INFO    ] Launching Daemon at Mon Aug 31 04:32:24 IST 2026
[2026-08-31 04:32:24,959.959 INFO    ] ================================================
[2026-08-31 04:32:25,588.588 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:32:25
[2026-08-31 04:32:26,208.208 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:32:26,469.469 INFO    ] Initializing speech engine...
[2026-08-31 04:32:26,488.488 INFO    ] 2026-08-31 04:32:26
[2026-08-31 04:32:26,740.740 INFO    ] 2026-08-31 04:32:26
[2026-08-31 04:32:26,776.776 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:32:26,951.951 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:32:26,962.962 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:32:27,108.108 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:32:27,116.116 INFO    ] time= 31/08/2026 04:32:27
[2026-08-31 04:32:27,124.124 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:32:27,169.169 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:32:27,305.305 INFO    ] No existing commands found in stream
[2026-08-31 04:32:32,328.328 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:32:32,331.331 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-08-31 04:32:35,364.364 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 04:32:35,366.366 INFO    ] Checking for system updates...
[2026-08-31 04:32:35,401.401 INFO    ] 200
[2026-08-31 04:32:35,404.404 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:32:35,456.456 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:32:35,459.459 INFO    ] No update needed
[2026-08-31 04:32:35,461.461 INFO    ] Checking for camera pi updates...
[2026-08-31 04:32:35,501.501 INFO    ] 200
[2026-08-31 04:32:35,503.503 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:32:35,546.546 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:32:35,645.645 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:32:35,648.648 INFO    ] No camera update needed
[2026-08-31 04:32:35,650.650 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:32:35,652.652 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:32:35,658.658 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:32:35,663.663 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:32:37,710.710 INFO    ] ================================================
[2026-08-31 04:32:37,725.725 INFO    ] Launching Daemon at Mon Aug 31 04:32:37 IST 2026
[2026-08-31 04:32:37,736.736 INFO    ] ================================================
[2026-08-31 04:32:38,319.319 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:32:38
[2026-08-31 04:32:38,902.902 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:32:39,173.173 INFO    ] Initializing speech engine...
[2026-08-31 04:32:39,182.182 INFO    ] 2026-08-31 04:32:39
[2026-08-31 04:32:39,430.430 INFO    ] 2026-08-31 04:32:39
[2026-08-31 04:32:39,465.465 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:32:39,721.721 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:32:39,730.730 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:32:39,867.867 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:32:39,942.942 INFO    ] time= 31/08/2026 04:32:39
[2026-08-31 04:32:39,996.996 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:32:40,004.004 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:32:40,122.122 INFO    ] No existing commands found in stream
[2026-08-31 04:32:45,152.152 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:32:45,155.155 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-08-31 04:32:47,604.604 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 04:32:47,607.607 INFO    ] Checking for system updates...
[2026-08-31 04:32:47,642.642 INFO    ] 200
[2026-08-31 04:32:47,644.644 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:32:47,696.696 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:32:47,699.699 INFO    ] No update needed
[2026-08-31 04:32:47,701.701 INFO    ] Checking for camera pi updates...
[2026-08-31 04:32:47,738.738 INFO    ] 200
[2026-08-31 04:32:47,740.740 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:32:47,781.781 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:32:47,878.878 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:32:47,880.880 INFO    ] No camera update needed
[2026-08-31 04:32:47,883.883 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:32:47,885.885 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:32:47,890.890 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:32:47,895.895 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:32:49,939.939 INFO    ] ================================================
[2026-08-31 04:32:49,954.954 INFO    ] Launching Daemon at Mon Aug 31 04:32:49 IST 2026
[2026-08-31 04:32:49,965.965 INFO    ] ================================================
[2026-08-31 04:32:50,583.583 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:32:50
[2026-08-31 04:32:51,221.221 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:32:51,512.512 INFO    ] Initializing speech engine...
[2026-08-31 04:32:51,525.525 INFO    ] 2026-08-31 04:32:51
[2026-08-31 04:32:51,799.799 INFO    ] 2026-08-31 04:32:51
[2026-08-31 04:32:51,842.842 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:32:52,124.124 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:32:52,132.132 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:32:52,311.311 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:32:52,334.334 INFO    ] time= 31/08/2026 04:32:52
[2026-08-31 04:32:52,349.349 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:32:52,359.359 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:32:52,471.471 INFO    ] No existing commands found in stream
[2026-08-31 04:32:57,520.520 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:32:57,523.523 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-08-31 04:33:01,755.755 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 04:33:01,760.760 INFO    ] Checking for system updates...
[2026-08-31 04:33:01,818.818 INFO    ] 200
[2026-08-31 04:33:01,821.821 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:33:01,889.889 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:33:01,891.891 INFO    ] No update needed
[2026-08-31 04:33:01,894.894 INFO    ] Checking for camera pi updates...
[2026-08-31 04:33:01,935.935 INFO    ] 200
[2026-08-31 04:33:01,938.938 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:33:01,994.994 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:33:02,056.056 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:33:02,059.059 INFO    ] No camera update needed
[2026-08-31 04:33:02,062.062 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:33:02,065.065 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:33:02,071.071 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:33:02,077.077 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:33:04,120.120 INFO    ] ================================================
[2026-08-31 04:33:04,136.136 INFO    ] Launching Daemon at Mon Aug 31 04:33:04 IST 2026
[2026-08-31 04:33:04,147.147 INFO    ] ================================================
[2026-08-31 04:33:04,729.729 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:33:04
[2026-08-31 04:33:05,335.335 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:33:05,614.614 INFO    ] Initializing speech engine...
[2026-08-31 04:33:05,624.624 INFO    ] 2026-08-31 04:33:05
[2026-08-31 04:33:05,902.902 INFO    ] 2026-08-31 04:33:05
[2026-08-31 04:33:05,940.940 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:33:06,146.146 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:33:06,164.164 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:33:06,312.312 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:33:06,327.327 INFO    ] time= 31/08/2026 04:33:06
[2026-08-31 04:33:06,349.349 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:33:06,400.400 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:33:06,461.461 INFO    ] No existing commands found in stream
[2026-08-31 04:33:11,471.471 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:33:11,474.474 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-08-31 04:33:12,960.960 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 04:33:12,963.963 INFO    ] Checking for system updates...
[2026-08-31 04:33:13,000.000 INFO    ] 200
[2026-08-31 04:33:13,002.002 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:33:13,061.061 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:33:13,063.063 INFO    ] No update needed
[2026-08-31 04:33:13,066.066 INFO    ] Checking for camera pi updates...
[2026-08-31 04:33:13,102.102 INFO    ] 200
[2026-08-31 04:33:13,104.104 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:33:13,144.144 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:33:13,238.238 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:33:13,240.240 INFO    ] No camera update needed
[2026-08-31 04:33:13,243.243 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:33:13,245.245 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:33:13,250.250 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:33:13,255.255 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:33:15,296.296 INFO    ] ================================================
[2026-08-31 04:33:15,312.312 INFO    ] Launching Daemon at Mon Aug 31 04:33:15 IST 2026
[2026-08-31 04:33:15,323.323 INFO    ] ================================================
[2026-08-31 04:33:15,890.890 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:33:15
[2026-08-31 04:33:16,473.473 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:33:16,741.741 INFO    ] Initializing speech engine...
[2026-08-31 04:33:16,751.751 INFO    ] 2026-08-31 04:33:16
[2026-08-31 04:33:17,024.024 INFO    ] 2026-08-31 04:33:17
[2026-08-31 04:33:17,078.078 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:33:17,261.261 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:33:17,263.263 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:33:17,477.477 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:33:17,494.494 INFO    ] time= 31/08/2026 04:33:17
[2026-08-31 04:33:17,544.544 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:33:17,603.603 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:33:17,681.681 INFO    ] No existing commands found in stream
[2026-08-31 04:33:22,693.693 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:33:22,695.695 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-08-31 04:33:23,561.561 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 04:33:23,563.563 INFO    ] Checking for system updates...
[2026-08-31 04:33:23,607.607 INFO    ] 200
[2026-08-31 04:33:23,609.609 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:33:23,666.666 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:33:23,668.668 INFO    ] No update needed
[2026-08-31 04:33:23,671.671 INFO    ] Checking for camera pi updates...
[2026-08-31 04:33:23,705.705 INFO    ] 200
[2026-08-31 04:33:23,707.707 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:33:23,751.751 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:33:23,857.857 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:33:23,859.859 INFO    ] No camera update needed
[2026-08-31 04:33:23,862.862 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:33:23,864.864 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:33:23,869.869 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:33:23,874.874 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:33:25,916.916 INFO    ] ================================================
[2026-08-31 04:33:25,931.931 INFO    ] Launching Daemon at Mon Aug 31 04:33:25 IST 2026
[2026-08-31 04:33:25,943.943 INFO    ] ================================================
[2026-08-31 04:33:26,522.522 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:33:26
[2026-08-31 04:33:27,116.116 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:33:27,396.396 INFO    ] Initializing speech engine...
[2026-08-31 04:33:27,404.404 INFO    ] 2026-08-31 04:33:27
[2026-08-31 04:33:27,664.664 INFO    ] 2026-08-31 04:33:27
[2026-08-31 04:33:27,700.700 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:33:27,967.967 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:33:27,977.977 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:33:28,122.122 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:33:28,159.159 INFO    ] time= 31/08/2026 04:33:28
[2026-08-31 04:33:28,214.214 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:33:28,266.266 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:33:28,396.396 INFO    ] No existing commands found in stream
[2026-08-31 04:33:33,419.419 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:33:33,422.422 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-08-31 04:33:37,085.085 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 04:33:37,088.088 INFO    ] Checking for system updates...
[2026-08-31 04:33:37,126.126 INFO    ] 200
[2026-08-31 04:33:37,129.129 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:33:37,186.186 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:33:37,188.188 INFO    ] No update needed
[2026-08-31 04:33:37,191.191 INFO    ] Checking for camera pi updates...
[2026-08-31 04:33:37,227.227 INFO    ] 200
[2026-08-31 04:33:37,229.229 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:33:37,273.273 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:33:37,373.373 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:33:37,375.375 INFO    ] No camera update needed
[2026-08-31 04:33:37,377.377 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:33:37,380.380 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:33:37,385.385 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:33:37,390.390 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:33:39,430.430 INFO    ] ================================================
[2026-08-31 04:33:39,446.446 INFO    ] Launching Daemon at Mon Aug 31 04:33:39 IST 2026
[2026-08-31 04:33:39,457.457 INFO    ] ================================================
[2026-08-31 04:33:40,101.101 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:33:40
[2026-08-31 04:33:40,783.783 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:33:41,083.083 INFO    ] Initializing speech engine...
[2026-08-31 04:33:41,092.092 INFO    ] 2026-08-31 04:33:41
[2026-08-31 04:33:41,394.394 INFO    ] 2026-08-31 04:33:41
[2026-08-31 04:33:41,482.482 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:33:41,704.704 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:33:41,709.709 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:33:41,918.918 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:33:41,958.958 INFO    ] time= 31/08/2026 04:33:41
[2026-08-31 04:33:41,965.965 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:33:41,984.984 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:33:42,118.118 INFO    ] No existing commands found in stream
[2026-08-31 04:33:47,168.168 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:33:47,171.171 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-08-31 04:33:51,361.361 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 04:33:51,364.364 INFO    ] Checking for system updates...
[2026-08-31 04:33:51,402.402 INFO    ] 200
[2026-08-31 04:33:51,404.404 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:33:51,462.462 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:33:51,464.464 INFO    ] No update needed
[2026-08-31 04:33:51,466.466 INFO    ] Checking for camera pi updates...
[2026-08-31 04:33:51,499.499 INFO    ] 200
[2026-08-31 04:33:51,501.501 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:33:51,544.544 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:33:51,638.638 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:33:51,641.641 INFO    ] No camera update needed
[2026-08-31 04:33:51,643.643 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:33:51,645.645 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:33:51,651.651 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:33:51,656.656 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:33:53,698.698 INFO    ] ================================================
[2026-08-31 04:33:53,713.713 INFO    ] Launching Daemon at Mon Aug 31 04:33:53 IST 2026
[2026-08-31 04:33:53,724.724 INFO    ] ================================================
[2026-08-31 04:33:54,290.290 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:33:54
[2026-08-31 04:33:54,874.874 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:33:55,122.122 INFO    ] Initializing speech engine...
[2026-08-31 04:33:55,128.128 INFO    ] 2026-08-31 04:33:55
[2026-08-31 04:33:55,400.400 INFO    ] 2026-08-31 04:33:55
[2026-08-31 04:33:55,435.435 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:33:55,694.694 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:33:55,704.704 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:33:55,846.846 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:33:55,905.905 INFO    ] time= 31/08/2026 04:33:55
[2026-08-31 04:33:55,954.954 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:33:55,976.976 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:33:56,123.123 INFO    ] No existing commands found in stream
[2026-08-31 04:34:01,138.138 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:34:01,141.141 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-08-31 04:34:03,274.274 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 04:34:03,276.276 INFO    ] Checking for system updates...
[2026-08-31 04:34:03,316.316 INFO    ] 200
[2026-08-31 04:34:03,319.319 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:34:03,385.385 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:34:03,388.388 INFO    ] No update needed
[2026-08-31 04:34:03,390.390 INFO    ] Checking for camera pi updates...
[2026-08-31 04:34:03,430.430 INFO    ] 200
[2026-08-31 04:34:03,433.433 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:34:03,479.479 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:34:03,562.562 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:34:03,565.565 INFO    ] No camera update needed
[2026-08-31 04:34:03,567.567 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:34:03,570.570 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:34:03,576.576 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:34:03,581.581 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:34:05,624.624 INFO    ] ================================================
[2026-08-31 04:34:05,640.640 INFO    ] Launching Daemon at Mon Aug 31 04:34:05 IST 2026
[2026-08-31 04:34:05,651.651 INFO    ] ================================================
[2026-08-31 04:34:06,234.234 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:34:06
[2026-08-31 04:34:06,878.878 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:34:07,182.182 INFO    ] Initializing speech engine...
[2026-08-31 04:34:07,194.194 INFO    ] 2026-08-31 04:34:07
[2026-08-31 04:34:07,516.516 INFO    ] 2026-08-31 04:34:07
[2026-08-31 04:34:07,598.598 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:34:07,776.776 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:34:07,782.782 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:34:07,987.987 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:34:08,022.022 INFO    ] time= 31/08/2026 04:34:07
[2026-08-31 04:34:08,028.028 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:34:08,049.049 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:34:08,153.153 INFO    ] No existing commands found in stream
[2026-08-31 04:34:13,186.186 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:34:13,190.190 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-08-31 04:34:14,120.120 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 04:34:14,123.123 INFO    ] Checking for system updates...
[2026-08-31 04:34:14,160.160 INFO    ] 200
[2026-08-31 04:34:14,163.163 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:34:14,223.223 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:34:14,226.226 INFO    ] No update needed
[2026-08-31 04:34:14,229.229 INFO    ] Checking for camera pi updates...
[2026-08-31 04:34:14,267.267 INFO    ] 200
[2026-08-31 04:34:14,270.270 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:34:14,316.316 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:34:14,404.404 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:34:14,407.407 INFO    ] No camera update needed
[2026-08-31 04:34:14,410.410 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:34:14,412.412 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:34:14,419.419 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:34:14,424.424 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:34:16,466.466 INFO    ] ================================================
[2026-08-31 04:34:16,482.482 INFO    ] Launching Daemon at Mon Aug 31 04:34:16 IST 2026
[2026-08-31 04:34:16,493.493 INFO    ] ================================================
[2026-08-31 04:34:17,057.057 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:34:17
[2026-08-31 04:34:17,640.640 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:34:17,892.892 INFO    ] Initializing speech engine...
[2026-08-31 04:34:17,897.897 INFO    ] 2026-08-31 04:34:17
[2026-08-31 04:34:18,193.193 INFO    ] 2026-08-31 04:34:18
[2026-08-31 04:34:18,228.228 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:34:18,425.425 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:34:18,439.439 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:34:18,597.597 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:34:18,606.606 INFO    ] time= 31/08/2026 04:34:18
[2026-08-31 04:34:18,611.611 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:34:18,620.620 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:34:18,759.759 INFO    ] No existing commands found in stream
[2026-08-31 04:34:23,779.779 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:34:23,782.782 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-08-31 04:34:24,644.644 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 04:34:24,647.647 INFO    ] Checking for system updates...
[2026-08-31 04:34:24,685.685 INFO    ] 200
[2026-08-31 04:34:24,688.688 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:34:24,739.739 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:34:24,742.742 INFO    ] No update needed
[2026-08-31 04:34:24,744.744 INFO    ] Checking for camera pi updates...
[2026-08-31 04:34:24,781.781 INFO    ] 200
[2026-08-31 04:34:24,783.783 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:34:24,824.824 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:34:25,032.032 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:34:25,034.034 INFO    ] No camera update needed
[2026-08-31 04:34:25,036.036 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:34:25,039.039 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:34:25,044.044 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:34:25,049.049 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:34:27,090.090 INFO    ] ================================================
[2026-08-31 04:34:27,106.106 INFO    ] Launching Daemon at Mon Aug 31 04:34:27 IST 2026
[2026-08-31 04:34:27,116.116 INFO    ] ================================================
[2026-08-31 04:34:27,698.698 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:34:27
[2026-08-31 04:34:28,281.281 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:34:28,528.528 INFO    ] Initializing speech engine...
[2026-08-31 04:34:28,551.551 INFO    ] 2026-08-31 04:34:28
[2026-08-31 04:34:28,802.802 INFO    ] 2026-08-31 04:34:28
[2026-08-31 04:34:28,866.866 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:34:29,087.087 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:34:29,096.096 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:34:29,312.312 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:34:29,353.353 INFO    ] time= 31/08/2026 04:34:29
[2026-08-31 04:34:29,356.356 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:34:29,362.362 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:34:29,470.470 INFO    ] No existing commands found in stream
[2026-08-31 04:34:34,491.491 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:34:34,494.494 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-08-31 04:34:38,639.639 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 04:34:38,641.641 INFO    ] Checking for system updates...
[2026-08-31 04:34:38,682.682 INFO    ] 200
[2026-08-31 04:34:38,685.685 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:34:38,746.746 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:34:38,749.749 INFO    ] No update needed
[2026-08-31 04:34:38,751.751 INFO    ] Checking for camera pi updates...
[2026-08-31 04:34:38,788.788 INFO    ] 200
[2026-08-31 04:34:38,791.791 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:34:38,841.841 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:34:38,950.950 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:34:38,953.953 INFO    ] No camera update needed
[2026-08-31 04:34:38,955.955 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:34:38,958.958 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:34:38,964.964 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:34:38,970.970 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:34:41,011.011 INFO    ] ================================================
[2026-08-31 04:34:41,026.026 INFO    ] Launching Daemon at Mon Aug 31 04:34:41 IST 2026
[2026-08-31 04:34:41,037.037 INFO    ] ================================================
[2026-08-31 04:34:41,605.605 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:34:41
[2026-08-31 04:34:42,188.188 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:34:42,456.456 INFO    ] Initializing speech engine...
[2026-08-31 04:34:42,465.465 INFO    ] 2026-08-31 04:34:42
[2026-08-31 04:34:42,712.712 INFO    ] 2026-08-31 04:34:42
[2026-08-31 04:34:42,746.746 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:34:42,917.917 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:34:42,929.929 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:34:43,072.072 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:34:43,080.080 INFO    ] time= 31/08/2026 04:34:43
[2026-08-31 04:34:43,086.086 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:34:43,133.133 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:34:43,276.276 INFO    ] No existing commands found in stream
[2026-08-31 04:34:48,286.286 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:34:48,289.289 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-08-31 04:34:50,270.270 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 04:34:50,276.276 INFO    ] Checking for system updates...
[2026-08-31 04:34:50,322.322 INFO    ] 200
[2026-08-31 04:34:50,325.325 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:34:50,402.402 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:34:50,405.405 INFO    ] No update needed
[2026-08-31 04:34:50,408.408 INFO    ] Checking for camera pi updates...
[2026-08-31 04:34:50,443.443 INFO    ] 200
[2026-08-31 04:34:50,446.446 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:34:50,491.491 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:34:50,589.589 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:34:50,591.591 INFO    ] No camera update needed
[2026-08-31 04:34:50,594.594 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:34:50,597.597 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:34:50,603.603 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:34:50,609.609 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:34:52,650.650 INFO    ] ================================================
[2026-08-31 04:34:52,665.665 INFO    ] Launching Daemon at Mon Aug 31 04:34:52 IST 2026
[2026-08-31 04:34:52,677.677 INFO    ] ================================================
[2026-08-31 04:34:53,262.262 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:34:53
[2026-08-31 04:34:53,866.866 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:34:54,159.159 INFO    ] Initializing speech engine...
[2026-08-31 04:34:54,167.167 INFO    ] 2026-08-31 04:34:54
[2026-08-31 04:34:54,434.434 INFO    ] 2026-08-31 04:34:54
[2026-08-31 04:34:54,469.469 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:34:54,692.692 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:34:54,700.700 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:34:54,843.843 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:34:54,852.852 INFO    ] time= 31/08/2026 04:34:54
[2026-08-31 04:34:54,859.859 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:34:54,866.866 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:34:54,993.993 INFO    ] No existing commands found in stream
[2026-08-31 04:35:00,018.018 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:35:00,021.021 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-08-31 04:35:02,634.634 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 04:35:02,637.637 INFO    ] Checking for system updates...
[2026-08-31 04:35:02,682.682 INFO    ] 200
[2026-08-31 04:35:02,685.685 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:35:02,758.758 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:35:02,761.761 INFO    ] No update needed
[2026-08-31 04:35:02,764.764 INFO    ] Checking for camera pi updates...
[2026-08-31 04:35:02,803.803 INFO    ] 200
[2026-08-31 04:35:02,806.806 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:35:02,873.873 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:35:02,934.934 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:35:02,938.938 INFO    ] No camera update needed
[2026-08-31 04:35:02,942.942 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:35:02,946.946 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:35:02,954.954 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:35:02,962.962 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:35:05,005.005 INFO    ] ================================================
[2026-08-31 04:35:05,020.020 INFO    ] Launching Daemon at Mon Aug 31 04:35:05 IST 2026
[2026-08-31 04:35:05,031.031 INFO    ] ================================================
[2026-08-31 04:35:05,597.597 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:35:05
[2026-08-31 04:35:06,186.186 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:35:06,459.459 INFO    ] Initializing speech engine...
[2026-08-31 04:35:06,474.474 INFO    ] 2026-08-31 04:35:06
[2026-08-31 04:35:06,752.752 INFO    ] 2026-08-31 04:35:06
[2026-08-31 04:35:06,789.789 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:35:07,048.048 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:35:07,058.058 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:35:07,273.273 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:35:07,324.324 INFO    ] time= 31/08/2026 04:35:07
[2026-08-31 04:35:07,330.330 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:35:07,350.350 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:35:07,467.467 INFO    ] No existing commands found in stream
[2026-08-31 04:35:12,490.490 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:35:12,493.493 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-08-31 04:35:14,787.787 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 04:35:14,790.790 INFO    ] Checking for system updates...
[2026-08-31 04:35:14,830.830 INFO    ] 200
[2026-08-31 04:35:14,833.833 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:35:14,885.885 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:35:14,888.888 INFO    ] No update needed
[2026-08-31 04:35:14,890.890 INFO    ] Checking for camera pi updates...
[2026-08-31 04:35:14,928.928 INFO    ] 200
[2026-08-31 04:35:14,931.931 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:35:14,971.971 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:35:15,043.043 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:35:15,045.045 INFO    ] No camera update needed
[2026-08-31 04:35:15,048.048 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:35:15,050.050 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:35:15,055.055 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:35:15,061.061 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:35:17,102.102 INFO    ] ================================================
[2026-08-31 04:35:17,118.118 INFO    ] Launching Daemon at Mon Aug 31 04:35:17 IST 2026
[2026-08-31 04:35:17,129.129 INFO    ] ================================================
[2026-08-31 04:35:17,709.709 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:35:17
[2026-08-31 04:35:18,297.297 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:35:18,571.571 INFO    ] Initializing speech engine...
[2026-08-31 04:35:18,578.578 INFO    ] 2026-08-31 04:35:18
[2026-08-31 04:35:18,861.861 INFO    ] 2026-08-31 04:35:18
[2026-08-31 04:35:18,900.900 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:35:19,125.125 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:35:19,130.130 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:35:19,279.279 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:35:19,339.339 INFO    ] time= 31/08/2026 04:35:19
[2026-08-31 04:35:19,392.392 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:35:19,399.399 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:35:19,544.544 INFO    ] No existing commands found in stream
[2026-08-31 04:35:24,560.560 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:35:24,564.564 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-08-31 04:35:26,963.963 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 04:35:26,966.966 INFO    ] Checking for system updates...
[2026-08-31 04:35:27,011.011 INFO    ] 200
[2026-08-31 04:35:27,014.014 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-08-31 04:35:27,017.017 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-08-31 04:35:27,019.019 INFO    ] Checking for camera pi updates...
[2026-08-31 04:35:27,070.070 INFO    ] 200
[2026-08-31 04:35:27,073.073 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-08-31 04:35:27,077.077 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-08-31 04:35:27,080.080 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:35:27,083.083 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:35:27,090.090 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:35:27,097.097 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:35:29,138.138 INFO    ] ================================================
[2026-08-31 04:35:29,154.154 INFO    ] Launching Daemon at Mon Aug 31 04:35:29 IST 2026
[2026-08-31 04:35:29,165.165 INFO    ] ================================================
[2026-08-31 04:35:29,773.773 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:35:29
[2026-08-31 04:35:30,456.456 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:35:30,768.768 INFO    ] Initializing speech engine...
[2026-08-31 04:35:30,781.781 INFO    ] 2026-08-31 04:35:30
[2026-08-31 04:35:31,091.091 INFO    ] 2026-08-31 04:35:31
[2026-08-31 04:35:31,178.178 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:35:31,391.391 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:35:31,401.401 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:35:31,607.607 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:35:31,614.614 INFO    ] time= 31/08/2026 04:35:31
[2026-08-31 04:35:31,636.636 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:35:31,665.665 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:35:31,809.809 INFO    ] No existing commands found in stream
[2026-08-31 04:35:36,840.840 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:35:36,843.843 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-08-31 04:35:39,430.430 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 04:35:39,432.432 INFO    ] Checking for system updates...
[2026-08-31 04:35:39,472.472 INFO    ] 200
[2026-08-31 04:35:39,475.475 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:35:39,533.533 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:35:39,536.536 INFO    ] No update needed
[2026-08-31 04:35:39,538.538 INFO    ] Checking for camera pi updates...
[2026-08-31 04:35:39,575.575 INFO    ] 200
[2026-08-31 04:35:39,578.578 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:35:39,619.619 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:35:39,706.706 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:35:39,708.708 INFO    ] No camera update needed
[2026-08-31 04:35:39,711.711 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:35:39,713.713 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:35:39,718.718 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:35:39,723.723 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:35:41,765.765 INFO    ] ================================================
[2026-08-31 04:35:41,781.781 INFO    ] Launching Daemon at Mon Aug 31 04:35:41 IST 2026
[2026-08-31 04:35:41,792.792 INFO    ] ================================================
[2026-08-31 04:35:42,359.359 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:35:42
[2026-08-31 04:35:42,942.942 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:35:43,224.224 INFO    ] Initializing speech engine...
[2026-08-31 04:35:43,233.233 INFO    ] 2026-08-31 04:35:43
[2026-08-31 04:35:43,499.499 INFO    ] 2026-08-31 04:35:43
[2026-08-31 04:35:43,537.537 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:35:43,759.759 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:35:43,782.782 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:35:43,917.917 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:35:43,966.966 INFO    ] time= 31/08/2026 04:35:43
[2026-08-31 04:35:43,993.993 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:35:44,009.009 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:35:44,139.139 INFO    ] No existing commands found in stream
[2026-08-31 04:35:49,150.150 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:35:49,153.153 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-08-31 04:35:52,033.033 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 04:35:52,036.036 INFO    ] Checking for system updates...
[2026-08-31 04:35:52,072.072 INFO    ] 200
[2026-08-31 04:35:52,074.074 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:35:52,127.127 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:35:52,129.129 INFO    ] No update needed
[2026-08-31 04:35:52,132.132 INFO    ] Checking for camera pi updates...
[2026-08-31 04:35:52,165.165 INFO    ] 200
[2026-08-31 04:35:52,167.167 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:35:52,208.208 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:35:52,295.295 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:35:52,297.297 INFO    ] No camera update needed
[2026-08-31 04:35:52,299.299 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:35:52,302.302 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:35:52,307.307 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:35:52,312.312 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:35:54,358.358 INFO    ] ================================================
[2026-08-31 04:35:54,374.374 INFO    ] Launching Daemon at Mon Aug 31 04:35:54 IST 2026
[2026-08-31 04:35:54,385.385 INFO    ] ================================================
[2026-08-31 04:35:54,963.963 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:35:54
[2026-08-31 04:35:55,560.560 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:35:55,832.832 INFO    ] Initializing speech engine...
[2026-08-31 04:35:55,842.842 INFO    ] 2026-08-31 04:35:55
[2026-08-31 04:35:56,092.092 INFO    ] 2026-08-31 04:35:56
[2026-08-31 04:35:56,127.127 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:35:56,384.384 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:35:56,389.389 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:35:56,521.521 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:35:56,560.560 INFO    ] time= 31/08/2026 04:35:56
[2026-08-31 04:35:56,619.619 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:35:56,652.652 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:35:56,711.711 INFO    ] No existing commands found in stream
[2026-08-31 04:36:01,737.737 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:36:01,741.741 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-08-31 04:36:03,188.188 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 04:36:03,191.191 INFO    ] Checking for system updates...
[2026-08-31 04:36:03,231.231 INFO    ] 200
[2026-08-31 04:36:03,234.234 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:36:03,294.294 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:36:03,297.297 INFO    ] No update needed
[2026-08-31 04:36:03,300.300 INFO    ] Checking for camera pi updates...
[2026-08-31 04:36:03,338.338 INFO    ] 200
[2026-08-31 04:36:03,342.342 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:36:03,418.418 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:36:03,488.488 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:36:03,491.491 INFO    ] No camera update needed
[2026-08-31 04:36:03,494.494 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:36:03,496.496 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:36:03,502.502 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:36:03,508.508 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:36:05,550.550 INFO    ] ================================================
[2026-08-31 04:36:05,566.566 INFO    ] Launching Daemon at Mon Aug 31 04:36:05 IST 2026
[2026-08-31 04:36:05,577.577 INFO    ] ================================================
[2026-08-31 04:36:06,156.156 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:36:06
[2026-08-31 04:36:06,764.764 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:36:07,009.009 INFO    ] Initializing speech engine...
[2026-08-31 04:36:07,023.023 INFO    ] 2026-08-31 04:36:07
[2026-08-31 04:36:07,300.300 INFO    ] 2026-08-31 04:36:07
[2026-08-31 04:36:07,335.335 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:36:07,535.535 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:36:07,550.550 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:36:07,713.713 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:36:07,721.721 INFO    ] time= 31/08/2026 04:36:07
[2026-08-31 04:36:07,728.728 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:36:07,749.749 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:36:07,883.883 INFO    ] No existing commands found in stream
[2026-08-31 04:36:12,908.908 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:36:12,911.911 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-08-31 04:36:16,364.364 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 04:36:16,367.367 INFO    ] Checking for system updates...
[2026-08-31 04:36:16,408.408 INFO    ] 200
[2026-08-31 04:36:16,411.411 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:36:16,472.472 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:36:16,475.475 INFO    ] No update needed
[2026-08-31 04:36:16,478.478 INFO    ] Checking for camera pi updates...
[2026-08-31 04:36:16,513.513 INFO    ] 200
[2026-08-31 04:36:16,516.516 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:36:16,557.557 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:36:16,643.643 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:36:16,646.646 INFO    ] No camera update needed
[2026-08-31 04:36:16,649.649 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:36:16,652.652 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:36:16,658.658 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:36:16,664.664 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:36:18,705.705 INFO    ] ================================================
[2026-08-31 04:36:18,720.720 INFO    ] Launching Daemon at Mon Aug 31 04:36:18 IST 2026
[2026-08-31 04:36:18,732.732 INFO    ] ================================================
[2026-08-31 04:36:19,335.335 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:36:19
[2026-08-31 04:36:19,919.919 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:36:20,218.218 INFO    ] Initializing speech engine...
[2026-08-31 04:36:20,225.225 INFO    ] 2026-08-31 04:36:20
[2026-08-31 04:36:20,502.502 INFO    ] 2026-08-31 04:36:20
[2026-08-31 04:36:20,561.561 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:36:20,850.850 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:36:20,859.859 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:36:21,058.058 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:36:21,065.065 INFO    ] time= 31/08/2026 04:36:21
[2026-08-31 04:36:21,087.087 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:36:21,117.117 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:36:21,223.223 INFO    ] No existing commands found in stream
[2026-08-31 04:36:26,240.240 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:36:26,244.244 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-08-31 04:36:27,644.644 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 04:36:27,647.647 INFO    ] Checking for system updates...
[2026-08-31 04:36:27,688.688 INFO    ] 200
[2026-08-31 04:36:27,691.691 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:36:27,744.744 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:36:27,747.747 INFO    ] No update needed
[2026-08-31 04:36:27,750.750 INFO    ] Checking for camera pi updates...
[2026-08-31 04:36:27,784.784 INFO    ] 200
[2026-08-31 04:36:27,786.786 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:36:27,827.827 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:36:28,022.022 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:36:28,024.024 INFO    ] No camera update needed
[2026-08-31 04:36:28,026.026 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:36:28,029.029 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:36:28,034.034 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:36:28,039.039 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:36:30,079.079 INFO    ] ================================================
[2026-08-31 04:36:30,095.095 INFO    ] Launching Daemon at Mon Aug 31 04:36:30 IST 2026
[2026-08-31 04:36:30,106.106 INFO    ] ================================================
[2026-08-31 04:36:30,669.669 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:36:30
[2026-08-31 04:36:31,247.247 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:36:31,494.494 INFO    ] Initializing speech engine...
[2026-08-31 04:36:31,509.509 INFO    ] 2026-08-31 04:36:31
[2026-08-31 04:36:31,813.813 INFO    ] 2026-08-31 04:36:31
[2026-08-31 04:36:31,854.854 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:36:32,059.059 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:36:32,078.078 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:36:32,238.238 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:36:32,262.262 INFO    ] time= 31/08/2026 04:36:32
[2026-08-31 04:36:32,272.272 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:36:32,279.279 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:36:32,361.361 INFO    ] No existing commands found in stream
[2026-08-31 04:36:37,381.381 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:36:37,384.384 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-08-31 04:36:39,969.969 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 04:36:39,972.972 INFO    ] Checking for system updates...
[2026-08-31 04:36:40,007.007 INFO    ] 200
[2026-08-31 04:36:40,010.010 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:36:40,069.069 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:36:40,072.072 INFO    ] No update needed
[2026-08-31 04:36:40,074.074 INFO    ] Checking for camera pi updates...
[2026-08-31 04:36:40,108.108 INFO    ] 200
[2026-08-31 04:36:40,110.110 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:36:40,150.150 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:36:40,248.248 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:36:40,250.250 INFO    ] No camera update needed
[2026-08-31 04:36:40,252.252 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:36:40,255.255 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:36:40,260.260 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:36:40,265.265 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:36:42,306.306 INFO    ] ================================================
[2026-08-31 04:36:42,322.322 INFO    ] Launching Daemon at Mon Aug 31 04:36:42 IST 2026
[2026-08-31 04:36:42,333.333 INFO    ] ================================================
[2026-08-31 04:36:42,983.983 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:36:42
[2026-08-31 04:36:43,655.655 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:36:43,958.958 INFO    ] Initializing speech engine...
[2026-08-31 04:36:43,972.972 INFO    ] 2026-08-31 04:36:43
[2026-08-31 04:36:44,248.248 INFO    ] 2026-08-31 04:36:44
[2026-08-31 04:36:44,311.311 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:36:44,484.484 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:36:44,499.499 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:36:44,665.665 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:36:44,674.674 INFO    ] time= 31/08/2026 04:36:44
[2026-08-31 04:36:44,710.710 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:36:44,748.748 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:36:44,886.886 INFO    ] No existing commands found in stream
[2026-08-31 04:36:49,902.902 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:36:49,905.905 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-08-31 04:36:51,878.878 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 04:36:51,881.881 INFO    ] Checking for system updates...
[2026-08-31 04:36:51,916.916 INFO    ] 200
[2026-08-31 04:36:51,919.919 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:36:51,971.971 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:36:51,974.974 INFO    ] No update needed
[2026-08-31 04:36:51,976.976 INFO    ] Checking for camera pi updates...
[2026-08-31 04:36:52,013.013 INFO    ] 200
[2026-08-31 04:36:52,016.016 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:36:52,056.056 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:36:52,134.134 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:36:52,136.136 INFO    ] No camera update needed
[2026-08-31 04:36:52,139.139 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:36:52,141.141 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:36:52,146.146 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:36:52,151.151 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:36:54,192.192 INFO    ] ================================================
[2026-08-31 04:36:54,208.208 INFO    ] Launching Daemon at Mon Aug 31 04:36:54 IST 2026
[2026-08-31 04:36:54,220.220 INFO    ] ================================================
[2026-08-31 04:36:54,800.800 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:36:54
[2026-08-31 04:36:55,400.400 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:36:55,659.659 INFO    ] Initializing speech engine...
[2026-08-31 04:36:55,675.675 INFO    ] 2026-08-31 04:36:55
[2026-08-31 04:36:55,936.936 INFO    ] 2026-08-31 04:36:55
[2026-08-31 04:36:55,998.998 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:36:56,224.224 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:36:56,229.229 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:36:56,361.361 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:36:56,417.417 INFO    ] time= 31/08/2026 04:36:56
[2026-08-31 04:36:56,472.472 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:36:56,501.501 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:36:56,650.650 INFO    ] No existing commands found in stream
[2026-08-31 04:37:01,661.661 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:37:01,664.664 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-08-31 04:37:05,049.049 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 04:37:05,052.052 INFO    ] Checking for system updates...
[2026-08-31 04:37:05,088.088 INFO    ] 200
[2026-08-31 04:37:05,090.090 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:37:05,144.144 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:37:05,146.146 INFO    ] No update needed
[2026-08-31 04:37:05,149.149 INFO    ] Checking for camera pi updates...
[2026-08-31 04:37:05,183.183 INFO    ] 200
[2026-08-31 04:37:05,185.185 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:37:05,230.230 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:37:05,327.327 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:37:05,329.329 INFO    ] No camera update needed
[2026-08-31 04:37:05,332.332 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:37:05,334.334 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:37:05,340.340 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:37:05,345.345 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:37:07,387.387 INFO    ] ================================================
[2026-08-31 04:37:07,403.403 INFO    ] Launching Daemon at Mon Aug 31 04:37:07 IST 2026
[2026-08-31 04:37:07,413.413 INFO    ] ================================================
[2026-08-31 04:37:08,078.078 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:37:08
[2026-08-31 04:37:08,782.782 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:37:09,090.090 INFO    ] Initializing speech engine...
[2026-08-31 04:37:09,097.097 INFO    ] 2026-08-31 04:37:09
[2026-08-31 04:37:09,390.390 INFO    ] 2026-08-31 04:37:09
[2026-08-31 04:37:09,436.436 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:37:09,687.687 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:37:09,696.696 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:37:09,932.932 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:37:09,942.942 INFO    ] time= 31/08/2026 04:37:09
[2026-08-31 04:37:09,965.965 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:37:09,992.992 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:37:10,102.102 INFO    ] No existing commands found in stream
[2026-08-31 04:37:15,137.137 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:37:15,141.141 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-08-31 04:37:18,931.931 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 04:37:18,934.934 INFO    ] Checking for system updates...
[2026-08-31 04:37:18,976.976 INFO    ] 200
[2026-08-31 04:37:18,980.980 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:37:19,034.034 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:37:19,037.037 INFO    ] No update needed
[2026-08-31 04:37:19,040.040 INFO    ] Checking for camera pi updates...
[2026-08-31 04:37:19,074.074 INFO    ] 200
[2026-08-31 04:37:19,077.077 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:37:19,123.123 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:37:19,204.204 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:37:19,207.207 INFO    ] No camera update needed
[2026-08-31 04:37:19,210.210 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:37:19,213.213 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:37:19,219.219 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:37:19,225.225 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:37:21,266.266 INFO    ] ================================================
[2026-08-31 04:37:21,282.282 INFO    ] Launching Daemon at Mon Aug 31 04:37:21 IST 2026
[2026-08-31 04:37:21,293.293 INFO    ] ================================================
[2026-08-31 04:37:21,951.951 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:37:21
[2026-08-31 04:37:22,629.629 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:37:22,937.937 INFO    ] Initializing speech engine...
[2026-08-31 04:37:22,951.951 INFO    ] 2026-08-31 04:37:22
[2026-08-31 04:37:23,234.234 INFO    ] 2026-08-31 04:37:23
[2026-08-31 04:37:23,279.279 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:37:23,570.570 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:37:23,579.579 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:37:23,780.780 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:37:23,787.787 INFO    ] time= 31/08/2026 04:37:23
[2026-08-31 04:37:23,810.810 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:37:23,839.839 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:37:23,946.946 INFO    ] No existing commands found in stream
[2026-08-31 04:37:28,972.972 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:37:28,975.975 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-08-31 04:37:30,034.034 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 04:37:30,037.037 INFO    ] Checking for system updates...
[2026-08-31 04:37:30,074.074 INFO    ] 200
[2026-08-31 04:37:30,077.077 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:37:30,138.138 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:37:30,141.141 INFO    ] No update needed
[2026-08-31 04:37:30,144.144 INFO    ] Checking for camera pi updates...
[2026-08-31 04:37:30,183.183 INFO    ] 200
[2026-08-31 04:37:30,187.187 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:37:30,232.232 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:37:30,327.327 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:37:30,330.330 INFO    ] No camera update needed
[2026-08-31 04:37:30,332.332 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:37:30,334.334 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:37:30,339.339 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:37:30,344.344 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:37:32,388.388 INFO    ] ================================================
[2026-08-31 04:37:32,405.405 INFO    ] Launching Daemon at Mon Aug 31 04:37:32 IST 2026
[2026-08-31 04:37:32,417.417 INFO    ] ================================================
[2026-08-31 04:37:33,031.031 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:37:33
[2026-08-31 04:37:33,620.620 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:37:33,901.901 INFO    ] Initializing speech engine...
[2026-08-31 04:37:33,924.924 INFO    ] 2026-08-31 04:37:33
[2026-08-31 04:37:34,195.195 INFO    ] 2026-08-31 04:37:34
[2026-08-31 04:37:34,263.263 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:37:34,516.516 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:37:34,521.521 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:37:34,725.725 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:37:34,775.775 INFO    ] time= 31/08/2026 04:37:34
[2026-08-31 04:37:34,792.792 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:37:34,810.810 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:37:34,920.920 INFO    ] No existing commands found in stream
[2026-08-31 04:37:39,937.937 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:37:39,940.940 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-08-31 04:37:40,871.871 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 04:37:40,874.874 INFO    ] Checking for system updates...
[2026-08-31 04:37:40,913.913 INFO    ] 200
[2026-08-31 04:37:40,916.916 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:37:40,967.967 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:37:40,970.970 INFO    ] No update needed
[2026-08-31 04:37:40,973.973 INFO    ] Checking for camera pi updates...
[2026-08-31 04:37:41,006.006 INFO    ] 200
[2026-08-31 04:37:41,008.008 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:37:41,055.055 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:37:41,143.143 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:37:41,145.145 INFO    ] No camera update needed
[2026-08-31 04:37:41,148.148 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:37:41,150.150 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:37:41,155.155 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:37:41,160.160 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:37:43,203.203 INFO    ] ================================================
[2026-08-31 04:37:43,218.218 INFO    ] Launching Daemon at Mon Aug 31 04:37:43 IST 2026
[2026-08-31 04:37:43,229.229 INFO    ] ================================================
[2026-08-31 04:37:43,868.868 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:37:43
[2026-08-31 04:37:44,551.551 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:37:44,867.867 INFO    ] Initializing speech engine...
[2026-08-31 04:37:44,873.873 INFO    ] 2026-08-31 04:37:44
[2026-08-31 04:37:45,182.182 INFO    ] 2026-08-31 04:37:45
[2026-08-31 04:37:45,270.270 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:37:45,483.483 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:37:45,488.488 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:37:45,683.683 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:37:45,691.691 INFO    ] time= 31/08/2026 04:37:45
[2026-08-31 04:37:45,713.713 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:37:45,743.743 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:37:45,871.871 INFO    ] No existing commands found in stream
[2026-08-31 04:37:50,897.897 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:37:50,900.900 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-08-31 04:37:52,438.438 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 04:37:52,441.441 INFO    ] Checking for system updates...
[2026-08-31 04:37:52,478.478 INFO    ] 200
[2026-08-31 04:37:52,481.481 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:37:52,534.534 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:37:52,536.536 INFO    ] No update needed
[2026-08-31 04:37:52,539.539 INFO    ] Checking for camera pi updates...
[2026-08-31 04:37:52,575.575 INFO    ] 200
[2026-08-31 04:37:52,578.578 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:37:52,619.619 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:37:52,727.727 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:37:52,730.730 INFO    ] No camera update needed
[2026-08-31 04:37:52,733.733 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:37:52,735.735 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:37:52,742.742 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:37:52,748.748 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:37:54,791.791 INFO    ] ================================================
[2026-08-31 04:37:54,806.806 INFO    ] Launching Daemon at Mon Aug 31 04:37:54 IST 2026
[2026-08-31 04:37:54,817.817 INFO    ] ================================================
[2026-08-31 04:37:55,442.442 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:37:55
[2026-08-31 04:37:56,134.134 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:37:56,449.449 INFO    ] Initializing speech engine...
[2026-08-31 04:37:56,460.460 INFO    ] 2026-08-31 04:37:56
[2026-08-31 04:37:56,774.774 INFO    ] 2026-08-31 04:37:56
[2026-08-31 04:37:56,862.862 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:37:57,075.075 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:37:57,085.085 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:37:57,258.258 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:37:57,280.280 INFO    ] time= 31/08/2026 04:37:57
[2026-08-31 04:37:57,296.296 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:37:57,326.326 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:37:57,435.435 INFO    ] No existing commands found in stream
[2026-08-31 04:38:02,465.465 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:38:02,468.468 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-08-31 04:38:05,339.339 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 04:38:05,343.343 INFO    ] Checking for system updates...
[2026-08-31 04:38:05,379.379 INFO    ] 200
[2026-08-31 04:38:05,382.382 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:38:05,442.442 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:38:05,445.445 INFO    ] No update needed
[2026-08-31 04:38:05,447.447 INFO    ] Checking for camera pi updates...
[2026-08-31 04:38:05,482.482 INFO    ] 200
[2026-08-31 04:38:05,485.485 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:38:05,531.531 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:38:05,617.617 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:38:05,620.620 INFO    ] No camera update needed
[2026-08-31 04:38:05,623.623 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:38:05,625.625 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:38:05,631.631 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:38:05,639.639 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:38:07,681.681 INFO    ] ================================================
[2026-08-31 04:38:07,696.696 INFO    ] Launching Daemon at Mon Aug 31 04:38:07 IST 2026
[2026-08-31 04:38:07,706.706 INFO    ] ================================================
[2026-08-31 04:38:08,288.288 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:38:08
[2026-08-31 04:38:08,886.886 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:38:09,147.147 INFO    ] Initializing speech engine...
[2026-08-31 04:38:09,154.154 INFO    ] 2026-08-31 04:38:09
[2026-08-31 04:38:09,450.450 INFO    ] 2026-08-31 04:38:09
[2026-08-31 04:38:09,495.495 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:38:09,670.670 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:38:09,682.682 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:38:09,827.827 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:38:09,835.835 INFO    ] time= 31/08/2026 04:38:09
[2026-08-31 04:38:09,894.894 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:38:09,918.918 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:38:10,027.027 INFO    ] No existing commands found in stream
[2026-08-31 04:38:15,040.040 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:38:15,043.043 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-08-31 04:38:17,756.756 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 04:38:17,759.759 INFO    ] Checking for system updates...
[2026-08-31 04:38:17,803.803 INFO    ] 200
[2026-08-31 04:38:17,806.806 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:38:17,872.872 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:38:17,875.875 INFO    ] No update needed
[2026-08-31 04:38:17,878.878 INFO    ] Checking for camera pi updates...
[2026-08-31 04:38:17,954.954 INFO    ] 200
[2026-08-31 04:38:17,957.957 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:38:18,002.002 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:38:18,081.081 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:38:18,084.084 INFO    ] No camera update needed
[2026-08-31 04:38:18,086.086 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:38:18,088.088 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:38:18,094.094 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:38:18,099.099 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:38:20,139.139 INFO    ] ================================================
[2026-08-31 04:38:20,154.154 INFO    ] Launching Daemon at Mon Aug 31 04:38:20 IST 2026
[2026-08-31 04:38:20,165.165 INFO    ] ================================================
[2026-08-31 04:38:20,743.743 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:38:20
[2026-08-31 04:38:21,325.325 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:38:21,586.586 INFO    ] Initializing speech engine...
[2026-08-31 04:38:21,611.611 INFO    ] 2026-08-31 04:38:21
[2026-08-31 04:38:21,881.881 INFO    ] 2026-08-31 04:38:21
[2026-08-31 04:38:21,921.921 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:38:22,115.115 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:38:22,128.128 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:38:22,291.291 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:38:22,299.299 INFO    ] time= 31/08/2026 04:38:22
[2026-08-31 04:38:22,306.306 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:38:22,312.312 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:38:22,416.416 INFO    ] No existing commands found in stream
[2026-08-31 04:38:27,441.441 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:38:27,444.444 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-08-31 04:38:29,239.239 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 04:38:29,242.242 INFO    ] Checking for system updates...
[2026-08-31 04:38:29,277.277 INFO    ] 200
[2026-08-31 04:38:29,280.280 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:38:29,337.337 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:38:29,340.340 INFO    ] No update needed
[2026-08-31 04:38:29,343.343 INFO    ] Checking for camera pi updates...
[2026-08-31 04:38:29,381.381 INFO    ] 200
[2026-08-31 04:38:29,384.384 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:38:29,428.428 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:38:29,514.514 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:38:29,516.516 INFO    ] No camera update needed
[2026-08-31 04:38:29,519.519 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:38:29,521.521 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:38:29,526.526 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:38:29,531.531 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:38:31,574.574 INFO    ] ================================================
[2026-08-31 04:38:31,592.592 INFO    ] Launching Daemon at Mon Aug 31 04:38:31 IST 2026
[2026-08-31 04:38:31,603.603 INFO    ] ================================================
[2026-08-31 04:38:32,308.308 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:38:32
[2026-08-31 04:38:32,928.928 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:38:33,198.198 INFO    ] Initializing speech engine...
[2026-08-31 04:38:33,207.207 INFO    ] 2026-08-31 04:38:33
[2026-08-31 04:38:33,457.457 INFO    ] 2026-08-31 04:38:33
[2026-08-31 04:38:33,492.492 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:38:33,692.692 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:38:33,731.731 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:38:33,896.896 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:38:33,939.939 INFO    ] time= 31/08/2026 04:38:33
[2026-08-31 04:38:34,008.008 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:38:34,035.035 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:38:34,188.188 INFO    ] No existing commands found in stream
[2026-08-31 04:38:39,202.202 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:38:39,205.205 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-08-31 04:38:42,611.611 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 04:38:42,614.614 INFO    ] Checking for system updates...
[2026-08-31 04:38:42,649.649 INFO    ] 200
[2026-08-31 04:38:42,652.652 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:38:42,703.703 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:38:42,706.706 INFO    ] No update needed
[2026-08-31 04:38:42,708.708 INFO    ] Checking for camera pi updates...
[2026-08-31 04:38:42,741.741 INFO    ] 200
[2026-08-31 04:38:42,744.744 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:38:42,789.789 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:38:42,868.868 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:38:42,871.871 INFO    ] No camera update needed
[2026-08-31 04:38:42,873.873 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:38:42,875.875 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:38:42,881.881 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:38:42,885.885 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:38:44,927.927 INFO    ] ================================================
[2026-08-31 04:38:44,942.942 INFO    ] Launching Daemon at Mon Aug 31 04:38:44 IST 2026
[2026-08-31 04:38:44,953.953 INFO    ] ================================================
[2026-08-31 04:38:45,542.542 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:38:45
[2026-08-31 04:38:46,139.139 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:38:46,414.414 INFO    ] Initializing speech engine...
[2026-08-31 04:38:46,423.423 INFO    ] 2026-08-31 04:38:46
[2026-08-31 04:38:46,683.683 INFO    ] 2026-08-31 04:38:46
[2026-08-31 04:38:46,733.733 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:38:46,961.961 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:38:46,966.966 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:38:47,096.096 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:38:47,143.143 INFO    ] time= 31/08/2026 04:38:47
[2026-08-31 04:38:47,214.214 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:38:47,232.232 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:38:47,357.357 INFO    ] No existing commands found in stream
[2026-08-31 04:38:52,386.386 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:38:52,389.389 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-08-31 04:38:55,474.474 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 04:38:55,477.477 INFO    ] Checking for system updates...
[2026-08-31 04:38:55,513.513 INFO    ] 200
[2026-08-31 04:38:55,515.515 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:38:55,568.568 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:38:55,570.570 INFO    ] No update needed
[2026-08-31 04:38:55,573.573 INFO    ] Checking for camera pi updates...
[2026-08-31 04:38:55,607.607 INFO    ] 200
[2026-08-31 04:38:55,609.609 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:38:55,651.651 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:38:55,756.756 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:38:55,758.758 INFO    ] No camera update needed
[2026-08-31 04:38:55,761.761 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:38:55,763.763 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:38:55,769.769 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:38:55,774.774 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:38:57,815.815 INFO    ] ================================================
[2026-08-31 04:38:57,830.830 INFO    ] Launching Daemon at Mon Aug 31 04:38:57 IST 2026
[2026-08-31 04:38:57,840.840 INFO    ] ================================================
[2026-08-31 04:38:58,513.513 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:38:58
[2026-08-31 04:38:59,143.143 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:38:59,383.383 INFO    ] Initializing speech engine...
[2026-08-31 04:38:59,390.390 INFO    ] 2026-08-31 04:38:59
[2026-08-31 04:38:59,668.668 INFO    ] 2026-08-31 04:38:59
[2026-08-31 04:38:59,704.704 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:38:59,881.881 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:38:59,894.894 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:39:00,106.106 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:39:00,118.118 INFO    ] time= 31/08/2026 04:39:00
[2026-08-31 04:39:00,177.177 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:39:00,231.231 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:39:00,343.343 INFO    ] No existing commands found in stream
[2026-08-31 04:39:05,370.370 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:39:05,373.373 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-08-31 04:39:08,852.852 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 04:39:08,855.855 INFO    ] Checking for system updates...
[2026-08-31 04:39:08,893.893 INFO    ] 200
[2026-08-31 04:39:08,895.895 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:39:08,946.946 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:39:08,949.949 INFO    ] No update needed
[2026-08-31 04:39:08,951.951 INFO    ] Checking for camera pi updates...
[2026-08-31 04:39:08,984.984 INFO    ] 200
[2026-08-31 04:39:08,986.986 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:39:09,026.026 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:39:09,105.105 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:39:09,108.108 INFO    ] No camera update needed
[2026-08-31 04:39:09,110.110 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:39:09,113.113 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:39:09,118.118 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:39:09,124.124 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:39:11,163.163 INFO    ] ================================================
[2026-08-31 04:39:11,178.178 INFO    ] Launching Daemon at Mon Aug 31 04:39:11 IST 2026
[2026-08-31 04:39:11,189.189 INFO    ] ================================================
[2026-08-31 04:39:11,755.755 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:39:11
[2026-08-31 04:39:12,336.336 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:39:12,584.584 INFO    ] Initializing speech engine...
[2026-08-31 04:39:12,598.598 INFO    ] 2026-08-31 04:39:12
[2026-08-31 04:39:12,862.862 INFO    ] 2026-08-31 04:39:12
[2026-08-31 04:39:12,897.897 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:39:13,081.081 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:39:13,097.097 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:39:13,228.228 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:39:13,236.236 INFO    ] time= 31/08/2026 04:39:13
[2026-08-31 04:39:13,244.244 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:39:13,289.289 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:39:13,403.403 INFO    ] No existing commands found in stream
[2026-08-31 04:39:18,428.428 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:39:18,430.430 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-08-31 04:39:19,325.325 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 04:39:19,328.328 INFO    ] Checking for system updates...
[2026-08-31 04:39:19,363.363 INFO    ] 200
[2026-08-31 04:39:19,365.365 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:39:19,417.417 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:39:19,419.419 INFO    ] No update needed
[2026-08-31 04:39:19,421.421 INFO    ] Checking for camera pi updates...
[2026-08-31 04:39:19,458.458 INFO    ] 200
[2026-08-31 04:39:19,460.460 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:39:19,500.500 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:39:19,590.590 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:39:19,593.593 INFO    ] No camera update needed
[2026-08-31 04:39:19,595.595 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:39:19,597.597 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:39:19,603.603 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:39:19,608.608 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:39:21,648.648 INFO    ] ================================================
[2026-08-31 04:39:21,662.662 INFO    ] Launching Daemon at Mon Aug 31 04:39:21 IST 2026
[2026-08-31 04:39:21,678.678 INFO    ] ================================================
[2026-08-31 04:39:22,322.322 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:39:22
[2026-08-31 04:39:22,984.984 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:39:23,285.285 INFO    ] Initializing speech engine...
[2026-08-31 04:39:23,294.294 INFO    ] 2026-08-31 04:39:23
[2026-08-31 04:39:23,570.570 INFO    ] 2026-08-31 04:39:23
[2026-08-31 04:39:23,626.626 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:39:23,879.879 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:39:23,886.886 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:39:24,070.070 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:39:24,073.073 INFO    ] time= 31/08/2026 04:39:24
[2026-08-31 04:39:24,123.123 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:39:24,131.131 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:39:24,286.286 INFO    ] No existing commands found in stream
[2026-08-31 04:39:29,310.310 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:39:29,313.313 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-08-31 04:39:30,714.714 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 04:39:30,717.717 INFO    ] Checking for system updates...
[2026-08-31 04:39:30,754.754 INFO    ] 200
[2026-08-31 04:39:30,757.757 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:39:30,811.811 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:39:30,813.813 INFO    ] No update needed
[2026-08-31 04:39:30,816.816 INFO    ] Checking for camera pi updates...
[2026-08-31 04:39:30,852.852 INFO    ] 200
[2026-08-31 04:39:30,855.855 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:39:30,894.894 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:39:30,978.978 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:39:30,981.981 INFO    ] No camera update needed
[2026-08-31 04:39:30,983.983 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:39:30,986.986 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:39:30,991.991 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:39:30,996.996 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:39:33,036.036 INFO    ] ================================================
[2026-08-31 04:39:33,050.050 INFO    ] Launching Daemon at Mon Aug 31 04:39:33 IST 2026
[2026-08-31 04:39:33,061.061 INFO    ] ================================================
[2026-08-31 04:39:33,641.641 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:39:33
[2026-08-31 04:39:34,240.240 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:39:34,518.518 INFO    ] Initializing speech engine...
[2026-08-31 04:39:34,527.527 INFO    ] 2026-08-31 04:39:34
[2026-08-31 04:39:34,787.787 INFO    ] 2026-08-31 04:39:34
[2026-08-31 04:39:34,842.842 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:39:35,067.067 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:39:35,072.072 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:39:35,205.205 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:39:35,219.219 INFO    ] time= 31/08/2026 04:39:35
[2026-08-31 04:39:35,269.269 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:39:35,318.318 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:39:35,407.407 INFO    ] No existing commands found in stream
[2026-08-31 04:39:40,420.420 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:39:40,422.422 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-08-31 04:39:43,716.716 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 04:39:43,719.719 INFO    ] Checking for system updates...
[2026-08-31 04:39:43,755.755 INFO    ] 200
[2026-08-31 04:39:43,757.757 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:39:43,815.815 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:39:43,818.818 INFO    ] No update needed
[2026-08-31 04:39:43,820.820 INFO    ] Checking for camera pi updates...
[2026-08-31 04:39:43,853.853 INFO    ] 200
[2026-08-31 04:39:43,856.856 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:39:43,897.897 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:39:43,988.988 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:39:43,991.991 INFO    ] No camera update needed
[2026-08-31 04:39:43,993.993 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:39:43,995.995 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:39:44,001.001 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:39:44,006.006 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:39:46,049.049 INFO    ] ================================================
[2026-08-31 04:39:46,063.063 INFO    ] Launching Daemon at Mon Aug 31 04:39:46 IST 2026
[2026-08-31 04:39:46,074.074 INFO    ] ================================================
[2026-08-31 04:39:46,644.644 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:39:46
[2026-08-31 04:39:47,231.231 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:39:47,502.502 INFO    ] Initializing speech engine...
[2026-08-31 04:39:47,511.511 INFO    ] 2026-08-31 04:39:47
[2026-08-31 04:39:47,766.766 INFO    ] 2026-08-31 04:39:47
[2026-08-31 04:39:47,796.796 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:39:48,038.038 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:39:48,048.048 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:39:48,182.182 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:39:48,221.221 INFO    ] time= 31/08/2026 04:39:48
[2026-08-31 04:39:48,270.270 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:39:48,311.311 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:39:48,453.453 INFO    ] No existing commands found in stream
[2026-08-31 04:39:53,469.469 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:39:53,471.471 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-08-31 04:39:56,926.926 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 04:39:56,929.929 INFO    ] Checking for system updates...
[2026-08-31 04:39:56,968.968 INFO    ] 200
[2026-08-31 04:39:56,970.970 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:39:57,022.022 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:39:57,024.024 INFO    ] No update needed
[2026-08-31 04:39:57,027.027 INFO    ] Checking for camera pi updates...
[2026-08-31 04:39:57,059.059 INFO    ] 200
[2026-08-31 04:39:57,062.062 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:39:57,101.101 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:39:57,183.183 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:39:57,186.186 INFO    ] No camera update needed
[2026-08-31 04:39:57,188.188 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:39:57,190.190 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:39:57,196.196 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:39:57,201.201 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:39:59,241.241 INFO    ] ================================================
[2026-08-31 04:39:59,256.256 INFO    ] Launching Daemon at Mon Aug 31 04:39:59 IST 2026
[2026-08-31 04:39:59,266.266 INFO    ] ================================================
[2026-08-31 04:39:59,847.847 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:39:59
[2026-08-31 04:40:00,443.443 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:40:00,706.706 INFO    ] Initializing speech engine...
[2026-08-31 04:40:00,725.725 INFO    ] 2026-08-31 04:40:00
[2026-08-31 04:40:00,988.988 INFO    ] 2026-08-31 04:40:00
[2026-08-31 04:40:01,024.024 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:40:01,222.222 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:40:01,279.279 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:40:01,430.430 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:40:01,434.434 INFO    ] time= 31/08/2026 04:40:01
[2026-08-31 04:40:01,438.438 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:40:01,449.449 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:40:01,528.528 INFO    ] No existing commands found in stream
[2026-08-31 04:40:06,539.539 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:40:06,542.542 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-08-31 04:40:09,130.130 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 04:40:09,132.132 INFO    ] Checking for system updates...
[2026-08-31 04:40:09,168.168 INFO    ] 200
[2026-08-31 04:40:09,170.170 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:40:09,231.231 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:40:09,234.234 INFO    ] No update needed
[2026-08-31 04:40:09,236.236 INFO    ] Checking for camera pi updates...
[2026-08-31 04:40:09,270.270 INFO    ] 200
[2026-08-31 04:40:09,272.272 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:40:09,318.318 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:40:09,414.414 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:40:09,417.417 INFO    ] No camera update needed
[2026-08-31 04:40:09,419.419 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:40:09,422.422 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:40:09,427.427 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:40:09,432.432 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:40:11,475.475 INFO    ] ================================================
[2026-08-31 04:40:11,490.490 INFO    ] Launching Daemon at Mon Aug 31 04:40:11 IST 2026
[2026-08-31 04:40:11,501.501 INFO    ] ================================================
[2026-08-31 04:40:12,177.177 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:40:12
[2026-08-31 04:40:12,875.875 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:40:13,195.195 INFO    ] Initializing speech engine...
[2026-08-31 04:40:13,207.207 INFO    ] 2026-08-31 04:40:13
[2026-08-31 04:40:13,505.505 INFO    ] 2026-08-31 04:40:13
[2026-08-31 04:40:13,559.559 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:40:13,793.793 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:40:13,806.806 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:40:13,934.934 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:40:13,972.972 INFO    ] time= 31/08/2026 04:40:13
[2026-08-31 04:40:14,037.037 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:40:14,074.074 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:40:14,211.211 INFO    ] No existing commands found in stream
[2026-08-31 04:40:19,237.237 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:40:19,241.241 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-08-31 04:40:20,999.999 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 04:40:21,002.002 INFO    ] Checking for system updates...
[2026-08-31 04:40:21,040.040 INFO    ] 200
[2026-08-31 04:40:21,042.042 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:40:21,104.104 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:40:21,107.107 INFO    ] No update needed
[2026-08-31 04:40:21,110.110 INFO    ] Checking for camera pi updates...
[2026-08-31 04:40:21,150.150 INFO    ] 200
[2026-08-31 04:40:21,153.153 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:40:21,194.194 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:40:21,273.273 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:40:21,275.275 INFO    ] No camera update needed
[2026-08-31 04:40:21,278.278 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:40:21,280.280 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:40:21,286.286 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:40:21,291.291 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:40:23,330.330 INFO    ] ================================================
[2026-08-31 04:40:23,345.345 INFO    ] Launching Daemon at Mon Aug 31 04:40:23 IST 2026
[2026-08-31 04:40:23,356.356 INFO    ] ================================================
[2026-08-31 04:40:23,943.943 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:40:23
[2026-08-31 04:40:24,554.554 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:40:24,851.851 INFO    ] Initializing speech engine...
[2026-08-31 04:40:24,859.859 INFO    ] 2026-08-31 04:40:24
[2026-08-31 04:40:25,140.140 INFO    ] 2026-08-31 04:40:25
[2026-08-31 04:40:25,176.176 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:40:25,377.377 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:40:25,383.383 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:40:25,522.522 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:40:25,528.528 INFO    ] time= 31/08/2026 04:40:25
[2026-08-31 04:40:25,548.548 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:40:25,569.569 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:40:25,655.655 INFO    ] No existing commands found in stream
[2026-08-31 04:40:30,668.668 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:40:30,671.671 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-08-31 04:40:35,165.165 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 04:40:35,168.168 INFO    ] Checking for system updates...
[2026-08-31 04:40:35,203.203 INFO    ] 200
[2026-08-31 04:40:35,206.206 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:40:35,258.258 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:40:35,261.261 INFO    ] No update needed
[2026-08-31 04:40:35,263.263 INFO    ] Checking for camera pi updates...
[2026-08-31 04:40:35,297.297 INFO    ] 200
[2026-08-31 04:40:35,299.299 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:40:35,340.340 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:40:35,440.440 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:40:35,443.443 INFO    ] No camera update needed
[2026-08-31 04:40:35,446.446 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:40:35,449.449 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:40:35,454.454 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:40:35,460.460 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:40:37,501.501 INFO    ] ================================================
[2026-08-31 04:40:37,516.516 INFO    ] Launching Daemon at Mon Aug 31 04:40:37 IST 2026
[2026-08-31 04:40:37,526.526 INFO    ] ================================================
[2026-08-31 04:40:38,099.099 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:40:38
[2026-08-31 04:40:38,687.687 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:40:38,962.962 INFO    ] Initializing speech engine...
[2026-08-31 04:40:38,967.967 INFO    ] 2026-08-31 04:40:38
[2026-08-31 04:40:39,227.227 INFO    ] 2026-08-31 04:40:39
[2026-08-31 04:40:39,283.283 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:40:39,511.511 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:40:39,520.520 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:40:39,655.655 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:40:39,698.698 INFO    ] time= 31/08/2026 04:40:39
[2026-08-31 04:40:39,752.752 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:40:39,791.791 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:40:39,929.929 INFO    ] No existing commands found in stream
[2026-08-31 04:40:44,952.952 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:40:44,955.955 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-08-31 04:40:47,057.057 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 04:40:47,060.060 INFO    ] Checking for system updates...
[2026-08-31 04:40:47,100.100 INFO    ] 200
[2026-08-31 04:40:47,103.103 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:40:47,154.154 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:40:47,157.157 INFO    ] No update needed
[2026-08-31 04:40:47,159.159 INFO    ] Checking for camera pi updates...
[2026-08-31 04:40:47,197.197 INFO    ] 200
[2026-08-31 04:40:47,199.199 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:40:47,239.239 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:40:47,320.320 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:40:47,323.323 INFO    ] No camera update needed
[2026-08-31 04:40:47,325.325 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:40:47,327.327 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:40:47,333.333 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:40:47,338.338 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:40:49,382.382 INFO    ] ================================================
[2026-08-31 04:40:49,397.397 INFO    ] Launching Daemon at Mon Aug 31 04:40:49 IST 2026
[2026-08-31 04:40:49,408.408 INFO    ] ================================================
[2026-08-31 04:40:50,048.048 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:40:50
[2026-08-31 04:40:50,734.734 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:40:51,049.049 INFO    ] Initializing speech engine...
[2026-08-31 04:40:51,060.060 INFO    ] 2026-08-31 04:40:51
[2026-08-31 04:40:51,346.346 INFO    ] 2026-08-31 04:40:51
[2026-08-31 04:40:51,392.392 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:40:51,682.682 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:40:51,692.692 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:40:51,892.892 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:40:51,898.898 INFO    ] time= 31/08/2026 04:40:51
[2026-08-31 04:40:51,915.915 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:40:51,946.946 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:40:52,084.084 INFO    ] No existing commands found in stream
[2026-08-31 04:40:57,115.115 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:40:57,118.118 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-08-31 04:40:58,077.077 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 04:40:58,080.080 INFO    ] Checking for system updates...
[2026-08-31 04:40:58,116.116 INFO    ] 200
[2026-08-31 04:40:58,119.119 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:40:58,171.171 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:40:58,174.174 INFO    ] No update needed
[2026-08-31 04:40:58,176.176 INFO    ] Checking for camera pi updates...
[2026-08-31 04:40:58,209.209 INFO    ] 200
[2026-08-31 04:40:58,212.212 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:40:58,252.252 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:40:58,335.335 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:40:58,337.337 INFO    ] No camera update needed
[2026-08-31 04:40:58,340.340 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:40:58,342.342 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:40:58,347.347 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:40:58,352.352 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:41:00,393.393 INFO    ] ================================================
[2026-08-31 04:41:00,408.408 INFO    ] Launching Daemon at Mon Aug 31 04:41:00 IST 2026
[2026-08-31 04:41:00,419.419 INFO    ] ================================================
[2026-08-31 04:41:00,998.998 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:41:00
[2026-08-31 04:41:01,583.583 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:41:02,044.044 INFO    ] Initializing speech engine...
[2026-08-31 04:41:02,047.047 INFO    ] 2026-08-31 04:41:02
[2026-08-31 04:41:02,480.480 INFO    ] 2026-08-31 04:41:02
[2026-08-31 04:41:02,519.519 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:41:02,746.746 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:41:02,771.771 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:41:02,951.951 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:41:03,007.007 INFO    ] time= 31/08/2026 04:41:02
[2026-08-31 04:41:03,053.053 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:41:03,075.075 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:41:03,218.218 INFO    ] No existing commands found in stream
[2026-08-31 04:41:08,249.249 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:41:08,251.251 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-08-31 04:41:09,856.856 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 04:41:09,858.858 INFO    ] Checking for system updates...
[2026-08-31 04:41:09,894.894 INFO    ] 200
[2026-08-31 04:41:09,896.896 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:41:09,954.954 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:41:09,957.957 INFO    ] No update needed
[2026-08-31 04:41:09,959.959 INFO    ] Checking for camera pi updates...
[2026-08-31 04:41:09,993.993 INFO    ] 200
[2026-08-31 04:41:09,995.995 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:41:10,035.035 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:41:10,117.117 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:41:10,120.120 INFO    ] No camera update needed
[2026-08-31 04:41:10,122.122 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:41:10,125.125 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:41:10,130.130 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:41:10,135.135 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:41:12,176.176 INFO    ] ================================================
[2026-08-31 04:41:12,191.191 INFO    ] Launching Daemon at Mon Aug 31 04:41:12 IST 2026
[2026-08-31 04:41:12,202.202 INFO    ] ================================================
[2026-08-31 04:41:12,858.858 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:41:12
[2026-08-31 04:41:13,527.527 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:41:13,831.831 INFO    ] Initializing speech engine...
[2026-08-31 04:41:13,839.839 INFO    ] 2026-08-31 04:41:13
[2026-08-31 04:41:14,114.114 INFO    ] 2026-08-31 04:41:14
[2026-08-31 04:41:14,168.168 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:41:14,453.453 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:41:14,462.462 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:41:14,658.658 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:41:14,675.675 INFO    ] time= 31/08/2026 04:41:14
[2026-08-31 04:41:14,707.707 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:41:14,716.716 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:41:14,848.848 INFO    ] No existing commands found in stream
[2026-08-31 04:41:19,870.870 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:41:19,873.873 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-08-31 04:41:20,856.856 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 04:41:20,859.859 INFO    ] Checking for system updates...
[2026-08-31 04:41:20,896.896 INFO    ] 200
[2026-08-31 04:41:20,899.899 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:41:20,958.958 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:41:20,960.960 INFO    ] No update needed
[2026-08-31 04:41:20,963.963 INFO    ] Checking for camera pi updates...
[2026-08-31 04:41:21,000.000 INFO    ] 200
[2026-08-31 04:41:21,002.002 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:41:21,047.047 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:41:21,128.128 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:41:21,130.130 INFO    ] No camera update needed
[2026-08-31 04:41:21,132.132 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:41:21,135.135 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:41:21,140.140 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:41:21,145.145 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:41:23,185.185 INFO    ] ================================================
[2026-08-31 04:41:23,200.200 INFO    ] Launching Daemon at Mon Aug 31 04:41:23 IST 2026
[2026-08-31 04:41:23,210.210 INFO    ] ================================================
[2026-08-31 04:41:23,778.778 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:41:23
[2026-08-31 04:41:24,365.365 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:41:24,631.631 INFO    ] Initializing speech engine...
[2026-08-31 04:41:24,643.643 INFO    ] 2026-08-31 04:41:24
[2026-08-31 04:41:24,896.896 INFO    ] 2026-08-31 04:41:24
[2026-08-31 04:41:24,931.931 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:41:25,188.188 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:41:25,197.197 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:41:25,332.332 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:41:25,349.349 INFO    ] time= 31/08/2026 04:41:25
[2026-08-31 04:41:25,408.408 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:41:25,468.468 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:41:25,595.595 INFO    ] No existing commands found in stream
[2026-08-31 04:41:30,620.620 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:41:30,623.623 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-08-31 04:41:33,595.595 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 04:41:33,598.598 INFO    ] Checking for system updates...
[2026-08-31 04:41:33,634.634 INFO    ] 200
[2026-08-31 04:41:33,636.636 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:41:33,699.699 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:41:33,702.702 INFO    ] No update needed
[2026-08-31 04:41:33,704.704 INFO    ] Checking for camera pi updates...
[2026-08-31 04:41:33,738.738 INFO    ] 200
[2026-08-31 04:41:33,740.740 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:41:33,789.789 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:41:33,869.869 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:41:33,872.872 INFO    ] No camera update needed
[2026-08-31 04:41:33,875.875 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:41:33,878.878 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:41:33,884.884 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:41:33,889.889 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:41:35,929.929 INFO    ] ================================================
[2026-08-31 04:41:35,943.943 INFO    ] Launching Daemon at Mon Aug 31 04:41:35 IST 2026
[2026-08-31 04:41:35,954.954 INFO    ] ================================================
[2026-08-31 04:41:36,534.534 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:41:36
[2026-08-31 04:41:37,132.132 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:41:37,396.396 INFO    ] Initializing speech engine...
[2026-08-31 04:41:37,420.420 INFO    ] 2026-08-31 04:41:37
[2026-08-31 04:41:37,693.693 INFO    ] 2026-08-31 04:41:37
[2026-08-31 04:41:37,731.731 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:41:37,925.925 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:41:37,938.938 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:41:38,099.099 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:41:38,108.108 INFO    ] time= 31/08/2026 04:41:38
[2026-08-31 04:41:38,115.115 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:41:38,157.157 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:41:38,291.291 INFO    ] No existing commands found in stream
[2026-08-31 04:41:43,317.317 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:41:43,320.320 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-08-31 04:41:44,973.973 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 04:41:44,975.975 INFO    ] Checking for system updates...
[2026-08-31 04:41:45,017.017 INFO    ] 200
[2026-08-31 04:41:45,019.019 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:41:45,087.087 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:41:45,090.090 INFO    ] No update needed
[2026-08-31 04:41:45,092.092 INFO    ] Checking for camera pi updates...
[2026-08-31 04:41:45,126.126 INFO    ] 200
[2026-08-31 04:41:45,128.128 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:41:45,168.168 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:41:45,254.254 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:41:45,256.256 INFO    ] No camera update needed
[2026-08-31 04:41:45,259.259 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:41:45,261.261 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:41:45,266.266 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:41:45,272.272 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:41:47,312.312 INFO    ] ================================================
[2026-08-31 04:41:47,327.327 INFO    ] Launching Daemon at Mon Aug 31 04:41:47 IST 2026
[2026-08-31 04:41:47,338.338 INFO    ] ================================================
[2026-08-31 04:41:47,914.914 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:41:47
[2026-08-31 04:41:48,510.510 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:41:48,781.781 INFO    ] Initializing speech engine...
[2026-08-31 04:41:48,790.790 INFO    ] 2026-08-31 04:41:48
[2026-08-31 04:41:49,039.039 INFO    ] 2026-08-31 04:41:49
[2026-08-31 04:41:49,075.075 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:41:49,271.271 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:41:49,329.329 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:41:49,514.514 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:41:49,563.563 INFO    ] time= 31/08/2026 04:41:49
[2026-08-31 04:41:49,597.597 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:41:49,612.612 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:41:49,735.735 INFO    ] No existing commands found in stream
[2026-08-31 04:41:54,756.756 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:41:54,760.760 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-08-31 04:41:56,883.883 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 04:41:56,885.885 INFO    ] Checking for system updates...
[2026-08-31 04:41:56,925.925 INFO    ] 200
[2026-08-31 04:41:56,928.928 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:41:56,983.983 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:41:56,985.985 INFO    ] No update needed
[2026-08-31 04:41:56,988.988 INFO    ] Checking for camera pi updates...
[2026-08-31 04:41:57,024.024 INFO    ] 200
[2026-08-31 04:41:57,027.027 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:41:57,073.073 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:41:57,175.175 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:41:57,178.178 INFO    ] No camera update needed
[2026-08-31 04:41:57,181.181 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:41:57,183.183 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:41:57,189.189 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:41:57,193.193 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:41:59,235.235 INFO    ] ================================================
[2026-08-31 04:41:59,252.252 INFO    ] Launching Daemon at Mon Aug 31 04:41:59 IST 2026
[2026-08-31 04:41:59,263.263 INFO    ] ================================================
[2026-08-31 04:41:59,843.843 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:41:59
[2026-08-31 04:42:00,439.439 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:42:00,714.714 INFO    ] Initializing speech engine...
[2026-08-31 04:42:00,731.731 INFO    ] 2026-08-31 04:42:00
[2026-08-31 04:42:01,005.005 INFO    ] 2026-08-31 04:42:00
[2026-08-31 04:42:01,043.043 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:42:01,237.237 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:42:01,251.251 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:42:01,410.410 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:42:01,418.418 INFO    ] time= 31/08/2026 04:42:01
[2026-08-31 04:42:01,426.426 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:42:01,453.453 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:42:01,607.607 INFO    ] No existing commands found in stream
[2026-08-31 04:42:06,638.638 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:42:06,641.641 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-08-31 04:42:08,616.616 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 04:42:08,619.619 INFO    ] Checking for system updates...
[2026-08-31 04:42:08,660.660 INFO    ] 200
[2026-08-31 04:42:08,662.662 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:42:08,715.715 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:42:08,718.718 INFO    ] No update needed
[2026-08-31 04:42:08,721.721 INFO    ] Checking for camera pi updates...
[2026-08-31 04:42:08,766.766 INFO    ] 200
[2026-08-31 04:42:08,770.770 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:42:08,817.817 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:42:08,898.898 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:42:08,901.901 INFO    ] No camera update needed
[2026-08-31 04:42:08,903.903 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:42:08,905.905 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:42:08,911.911 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:42:08,916.916 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:42:10,957.957 INFO    ] ================================================
[2026-08-31 04:42:10,972.972 INFO    ] Launching Daemon at Mon Aug 31 04:42:10 IST 2026
[2026-08-31 04:42:10,984.984 INFO    ] ================================================
[2026-08-31 04:42:11,636.636 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:42:11
[2026-08-31 04:42:12,308.308 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:42:12,611.611 INFO    ] Initializing speech engine...
[2026-08-31 04:42:12,622.622 INFO    ] 2026-08-31 04:42:12
[2026-08-31 04:42:12,893.893 INFO    ] 2026-08-31 04:42:12
[2026-08-31 04:42:12,954.954 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:42:13,209.209 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:42:13,216.216 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:42:13,418.418 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:42:13,461.461 INFO    ] time= 31/08/2026 04:42:13
[2026-08-31 04:42:13,480.480 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:42:13,490.490 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:42:13,627.627 INFO    ] No existing commands found in stream
[2026-08-31 04:42:18,654.654 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:42:18,657.657 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-08-31 04:42:19,839.839 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 04:42:19,842.842 INFO    ] Checking for system updates...
[2026-08-31 04:42:19,881.881 INFO    ] 200
[2026-08-31 04:42:19,884.884 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:42:19,940.940 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:42:19,942.942 INFO    ] No update needed
[2026-08-31 04:42:19,945.945 INFO    ] Checking for camera pi updates...
[2026-08-31 04:42:19,980.980 INFO    ] 200
[2026-08-31 04:42:19,983.983 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:42:20,032.032 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:42:20,110.110 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:42:20,113.113 INFO    ] No camera update needed
[2026-08-31 04:42:20,116.116 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:42:20,119.119 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:42:20,125.125 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:42:20,131.131 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:42:22,176.176 INFO    ] ================================================
[2026-08-31 04:42:22,191.191 INFO    ] Launching Daemon at Mon Aug 31 04:42:22 IST 2026
[2026-08-31 04:42:22,203.203 INFO    ] ================================================
[2026-08-31 04:42:22,780.780 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:42:22
[2026-08-31 04:42:23,365.365 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:42:23,632.632 INFO    ] Initializing speech engine...
[2026-08-31 04:42:23,641.641 INFO    ] 2026-08-31 04:42:23
[2026-08-31 04:42:23,891.891 INFO    ] 2026-08-31 04:42:23
[2026-08-31 04:42:23,927.927 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:42:24,182.182 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:42:24,198.198 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:42:24,336.336 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:42:24,401.401 INFO    ] time= 31/08/2026 04:42:24
[2026-08-31 04:42:24,457.457 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:42:24,464.464 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:42:24,608.608 INFO    ] No existing commands found in stream
[2026-08-31 04:42:29,621.621 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:42:29,624.624 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-08-31 04:42:30,801.801 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 04:42:30,803.803 INFO    ] Checking for system updates...
[2026-08-31 04:42:30,840.840 INFO    ] 200
[2026-08-31 04:42:30,842.842 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:42:30,894.894 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:42:30,896.896 INFO    ] No update needed
[2026-08-31 04:42:30,899.899 INFO    ] Checking for camera pi updates...
[2026-08-31 04:42:30,938.938 INFO    ] 200
[2026-08-31 04:42:30,940.940 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:42:30,986.986 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:42:31,085.085 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:42:31,088.088 INFO    ] No camera update needed
[2026-08-31 04:42:31,090.090 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:42:31,092.092 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:42:31,098.098 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:42:31,103.103 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:42:33,148.148 INFO    ] ================================================
[2026-08-31 04:42:33,164.164 INFO    ] Launching Daemon at Mon Aug 31 04:42:33 IST 2026
[2026-08-31 04:42:33,176.176 INFO    ] ================================================
[2026-08-31 04:42:33,767.767 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:42:33
[2026-08-31 04:42:34,367.367 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:42:34,644.644 INFO    ] Initializing speech engine...
[2026-08-31 04:42:34,651.651 INFO    ] 2026-08-31 04:42:34
[2026-08-31 04:42:34,912.912 INFO    ] 2026-08-31 04:42:34
[2026-08-31 04:42:34,966.966 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:42:35,186.186 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:42:35,196.196 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:42:35,327.327 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:42:35,355.355 INFO    ] time= 31/08/2026 04:42:35
[2026-08-31 04:42:35,415.415 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:42:35,461.461 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:42:35,608.608 INFO    ] No existing commands found in stream
[2026-08-31 04:42:40,622.622 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:42:40,625.625 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-08-31 04:42:43,956.956 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 04:42:43,960.960 INFO    ] Checking for system updates...
[2026-08-31 04:42:43,997.997 INFO    ] 200
[2026-08-31 04:42:44,000.000 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:42:44,061.061 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:42:44,063.063 INFO    ] No update needed
[2026-08-31 04:42:44,066.066 INFO    ] Checking for camera pi updates...
[2026-08-31 04:42:44,100.100 INFO    ] 200
[2026-08-31 04:42:44,102.102 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:42:44,148.148 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:42:44,329.329 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:42:44,331.331 INFO    ] No camera update needed
[2026-08-31 04:42:44,333.333 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:42:44,336.336 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:42:44,341.341 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:42:44,346.346 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:42:46,390.390 INFO    ] ================================================
[2026-08-31 04:42:46,405.405 INFO    ] Launching Daemon at Mon Aug 31 04:42:46 IST 2026
[2026-08-31 04:42:46,416.416 INFO    ] ================================================
[2026-08-31 04:42:46,997.997 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:42:46
[2026-08-31 04:42:47,597.597 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:42:47,863.863 INFO    ] Initializing speech engine...
[2026-08-31 04:42:47,875.875 INFO    ] 2026-08-31 04:42:47
[2026-08-31 04:42:48,167.167 INFO    ] 2026-08-31 04:42:48
[2026-08-31 04:42:48,206.206 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:42:48,409.409 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:42:48,422.422 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:42:48,553.553 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:42:48,575.575 INFO    ] time= 31/08/2026 04:42:48
[2026-08-31 04:42:48,598.598 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:42:48,604.604 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:42:48,685.685 INFO    ] No existing commands found in stream
[2026-08-31 04:42:53,698.698 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:42:53,701.701 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-08-31 04:42:56,613.613 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 04:42:56,616.616 INFO    ] Checking for system updates...
[2026-08-31 04:42:56,652.652 INFO    ] 200
[2026-08-31 04:42:56,654.654 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:42:56,706.706 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:42:56,709.709 INFO    ] No update needed
[2026-08-31 04:42:56,711.711 INFO    ] Checking for camera pi updates...
[2026-08-31 04:42:56,745.745 INFO    ] 200
[2026-08-31 04:42:56,747.747 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:42:56,787.787 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:42:56,873.873 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:42:56,875.875 INFO    ] No camera update needed
[2026-08-31 04:42:56,878.878 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:42:56,880.880 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:42:56,886.886 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:42:56,891.891 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:42:58,931.931 INFO    ] ================================================
[2026-08-31 04:42:58,946.946 INFO    ] Launching Daemon at Mon Aug 31 04:42:58 IST 2026
[2026-08-31 04:42:58,957.957 INFO    ] ================================================
[2026-08-31 04:42:59,531.531 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:42:59
[2026-08-31 04:43:00,120.120 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:43:00,379.379 INFO    ] Initializing speech engine...
[2026-08-31 04:43:00,393.393 INFO    ] 2026-08-31 04:43:00
[2026-08-31 04:43:00,690.690 INFO    ] 2026-08-31 04:43:00
[2026-08-31 04:43:00,726.726 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:43:00,929.929 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:43:00,944.944 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:43:01,117.117 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:43:01,125.125 INFO    ] time= 31/08/2026 04:43:01
[2026-08-31 04:43:01,131.131 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:43:01,198.198 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:43:01,306.306 INFO    ] No existing commands found in stream
[2026-08-31 04:43:06,330.330 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:43:06,333.333 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-08-31 04:43:08,533.533 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 04:43:08,536.536 INFO    ] Checking for system updates...
[2026-08-31 04:43:08,571.571 INFO    ] 200
[2026-08-31 04:43:08,574.574 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:43:08,635.635 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:43:08,637.637 INFO    ] No update needed
[2026-08-31 04:43:08,640.640 INFO    ] Checking for camera pi updates...
[2026-08-31 04:43:08,678.678 INFO    ] 200
[2026-08-31 04:43:08,681.681 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:43:08,727.727 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:43:08,792.792 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:43:08,794.794 INFO    ] No camera update needed
[2026-08-31 04:43:08,797.797 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:43:08,799.799 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:43:08,804.804 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:43:08,809.809 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:43:10,849.849 INFO    ] ================================================
[2026-08-31 04:43:10,864.864 INFO    ] Launching Daemon at Mon Aug 31 04:43:10 IST 2026
[2026-08-31 04:43:10,875.875 INFO    ] ================================================
[2026-08-31 04:43:11,465.465 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:43:11
[2026-08-31 04:43:12,063.063 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:43:12,334.334 INFO    ] Initializing speech engine...
[2026-08-31 04:43:12,343.343 INFO    ] 2026-08-31 04:43:12
[2026-08-31 04:43:12,593.593 INFO    ] 2026-08-31 04:43:12
[2026-08-31 04:43:12,660.660 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:43:12,941.941 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:43:12,950.950 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:43:13,145.145 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:43:13,163.163 INFO    ] time= 31/08/2026 04:43:13
[2026-08-31 04:43:13,192.192 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:43:13,200.200 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:43:13,314.314 INFO    ] No existing commands found in stream
[2026-08-31 04:43:18,339.339 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:43:18,342.342 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-08-31 04:43:22,696.696 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 04:43:22,699.699 INFO    ] Checking for system updates...
[2026-08-31 04:43:22,741.741 INFO    ] 200
[2026-08-31 04:43:22,744.744 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:43:22,796.796 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:43:22,798.798 INFO    ] No update needed
[2026-08-31 04:43:22,801.801 INFO    ] Checking for camera pi updates...
[2026-08-31 04:43:22,839.839 INFO    ] 200
[2026-08-31 04:43:22,841.841 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:43:22,882.882 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:43:22,964.964 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:43:22,967.967 INFO    ] No camera update needed
[2026-08-31 04:43:22,970.970 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:43:22,972.972 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:43:22,977.977 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:43:22,982.982 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:43:25,022.022 INFO    ] ================================================
[2026-08-31 04:43:25,037.037 INFO    ] Launching Daemon at Mon Aug 31 04:43:25 IST 2026
[2026-08-31 04:43:25,048.048 INFO    ] ================================================
[2026-08-31 04:43:25,618.618 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:43:25
[2026-08-31 04:43:26,216.216 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:43:26,489.489 INFO    ] Initializing speech engine...
[2026-08-31 04:43:26,499.499 INFO    ] 2026-08-31 04:43:26
[2026-08-31 04:43:26,760.760 INFO    ] 2026-08-31 04:43:26
[2026-08-31 04:43:26,790.790 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:43:26,955.955 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:43:26,967.967 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:43:27,111.111 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:43:27,119.119 INFO    ] time= 31/08/2026 04:43:27
[2026-08-31 04:43:27,175.175 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:43:27,188.188 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:43:27,313.313 INFO    ] No existing commands found in stream
[2026-08-31 04:43:32,326.326 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:43:32,329.329 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-08-31 04:43:36,395.395 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 04:43:36,398.398 INFO    ] Checking for system updates...
[2026-08-31 04:43:36,434.434 INFO    ] 200
[2026-08-31 04:43:36,436.436 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:43:36,488.488 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:43:36,491.491 INFO    ] No update needed
[2026-08-31 04:43:36,493.493 INFO    ] Checking for camera pi updates...
[2026-08-31 04:43:36,527.527 INFO    ] 200
[2026-08-31 04:43:36,529.529 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:43:36,569.569 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:43:36,638.638 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:43:36,641.641 INFO    ] No camera update needed
[2026-08-31 04:43:36,643.643 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:43:36,645.645 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:43:36,651.651 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:43:36,656.656 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:43:38,700.700 INFO    ] ================================================
[2026-08-31 04:43:38,715.715 INFO    ] Launching Daemon at Mon Aug 31 04:43:38 IST 2026
[2026-08-31 04:43:38,725.725 INFO    ] ================================================
[2026-08-31 04:43:39,405.405 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:43:39
[2026-08-31 04:43:40,005.005 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:43:40,262.262 INFO    ] Initializing speech engine...
[2026-08-31 04:43:40,281.281 INFO    ] 2026-08-31 04:43:40
[2026-08-31 04:43:40,539.539 INFO    ] 2026-08-31 04:43:40
[2026-08-31 04:43:40,574.574 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:43:40,754.754 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:43:40,784.784 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:43:40,969.969 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:43:40,977.977 INFO    ] time= 31/08/2026 04:43:40
[2026-08-31 04:43:40,982.982 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:43:40,993.993 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:43:41,073.073 INFO    ] No existing commands found in stream
[2026-08-31 04:43:46,086.086 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:43:46,089.089 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-08-31 04:43:50,321.321 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 04:43:50,324.324 INFO    ] Checking for system updates...
[2026-08-31 04:43:50,359.359 INFO    ] 200
[2026-08-31 04:43:50,361.361 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:43:50,414.414 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:43:50,416.416 INFO    ] No update needed
[2026-08-31 04:43:50,419.419 INFO    ] Checking for camera pi updates...
[2026-08-31 04:43:50,457.457 INFO    ] 200
[2026-08-31 04:43:50,460.460 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:43:50,506.506 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:43:50,585.585 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:43:50,587.587 INFO    ] No camera update needed
[2026-08-31 04:43:50,590.590 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:43:50,592.592 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:43:50,597.597 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:43:50,602.602 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:43:52,645.645 INFO    ] ================================================
[2026-08-31 04:43:52,662.662 INFO    ] Launching Daemon at Mon Aug 31 04:43:52 IST 2026
[2026-08-31 04:43:52,673.673 INFO    ] ================================================
[2026-08-31 04:43:53,240.240 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:43:53
[2026-08-31 04:43:53,825.825 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:43:54,094.094 INFO    ] Initializing speech engine...
[2026-08-31 04:43:54,103.103 INFO    ] 2026-08-31 04:43:54
[2026-08-31 04:43:54,348.348 INFO    ] 2026-08-31 04:43:54
[2026-08-31 04:43:54,383.383 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:43:54,633.633 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:43:54,642.642 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:43:54,773.773 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:43:54,820.820 INFO    ] time= 31/08/2026 04:43:54
[2026-08-31 04:43:54,880.880 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:43:54,906.906 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:43:55,054.054 INFO    ] No existing commands found in stream
[2026-08-31 04:44:00,069.069 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:44:00,072.072 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-08-31 04:44:04,051.051 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 04:44:04,055.055 INFO    ] Checking for system updates...
[2026-08-31 04:44:04,094.094 INFO    ] 200
[2026-08-31 04:44:04,098.098 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:44:04,164.164 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:44:04,167.167 INFO    ] No update needed
[2026-08-31 04:44:04,169.169 INFO    ] Checking for camera pi updates...
[2026-08-31 04:44:04,204.204 INFO    ] 200
[2026-08-31 04:44:04,206.206 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:44:04,248.248 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:44:04,340.340 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:44:04,343.343 INFO    ] No camera update needed
[2026-08-31 04:44:04,350.350 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:44:04,353.353 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:44:04,358.358 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:44:04,363.363 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:44:06,403.403 INFO    ] ================================================
[2026-08-31 04:44:06,418.418 INFO    ] Launching Daemon at Mon Aug 31 04:44:06 IST 2026
[2026-08-31 04:44:06,428.428 INFO    ] ================================================
[2026-08-31 04:44:07,049.049 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:44:07
[2026-08-31 04:44:07,647.647 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:44:07,922.922 INFO    ] Initializing speech engine...
[2026-08-31 04:44:07,929.929 INFO    ] 2026-08-31 04:44:07
[2026-08-31 04:44:08,191.191 INFO    ] 2026-08-31 04:44:08
[2026-08-31 04:44:08,245.245 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:44:08,527.527 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:44:08,532.532 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:44:08,723.723 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:44:08,734.734 INFO    ] time= 31/08/2026 04:44:08
[2026-08-31 04:44:08,751.751 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:44:08,769.769 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:44:08,886.886 INFO    ] No existing commands found in stream
[2026-08-31 04:44:13,903.903 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:44:13,905.905 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-08-31 04:44:14,524.524 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 04:44:14,526.526 INFO    ] Checking for system updates...
[2026-08-31 04:44:14,562.562 INFO    ] 200
[2026-08-31 04:44:14,565.565 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:44:14,616.616 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:44:14,619.619 INFO    ] No update needed
[2026-08-31 04:44:14,621.621 INFO    ] Checking for camera pi updates...
[2026-08-31 04:44:14,655.655 INFO    ] 200
[2026-08-31 04:44:14,657.657 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:44:14,702.702 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:44:14,790.790 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:44:14,792.792 INFO    ] No camera update needed
[2026-08-31 04:44:14,794.794 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:44:14,797.797 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:44:14,802.802 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:44:14,807.807 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:44:16,849.849 INFO    ] ================================================
[2026-08-31 04:44:16,864.864 INFO    ] Launching Daemon at Mon Aug 31 04:44:16 IST 2026
[2026-08-31 04:44:16,874.874 INFO    ] ================================================
[2026-08-31 04:44:17,530.530 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:44:17
[2026-08-31 04:44:18,208.208 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:44:18,513.513 INFO    ] Initializing speech engine...
[2026-08-31 04:44:18,527.527 INFO    ] 2026-08-31 04:44:18
[2026-08-31 04:44:18,813.813 INFO    ] 2026-08-31 04:44:18
[2026-08-31 04:44:18,923.923 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:44:19,135.135 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:44:19,143.143 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:44:19,345.345 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:44:19,363.363 INFO    ] time= 31/08/2026 04:44:19
[2026-08-31 04:44:19,374.374 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:44:19,403.403 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:44:19,511.511 INFO    ] No existing commands found in stream
[2026-08-31 04:44:24,531.531 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:44:24,535.535 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-08-31 04:44:28,439.439 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 04:44:28,442.442 INFO    ] Checking for system updates...
[2026-08-31 04:44:28,483.483 INFO    ] 200
[2026-08-31 04:44:28,486.486 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:44:28,546.546 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:44:28,550.550 INFO    ] No update needed
[2026-08-31 04:44:28,553.553 INFO    ] Checking for camera pi updates...
[2026-08-31 04:44:28,592.592 INFO    ] 200
[2026-08-31 04:44:28,594.594 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:44:28,641.641 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:44:28,726.726 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:44:28,730.730 INFO    ] No camera update needed
[2026-08-31 04:44:28,733.733 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:44:28,735.735 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:44:28,742.742 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:44:28,747.747 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:44:30,789.789 INFO    ] ================================================
[2026-08-31 04:44:30,804.804 INFO    ] Launching Daemon at Mon Aug 31 04:44:30 IST 2026
[2026-08-31 04:44:30,815.815 INFO    ] ================================================
[2026-08-31 04:44:31,388.388 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:44:31
[2026-08-31 04:44:31,990.990 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:44:32,260.260 INFO    ] Initializing speech engine...
[2026-08-31 04:44:32,284.284 INFO    ] 2026-08-31 04:44:32
[2026-08-31 04:44:32,555.555 INFO    ] 2026-08-31 04:44:32
[2026-08-31 04:44:32,592.592 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:44:32,805.805 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:44:32,841.841 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:44:33,012.012 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:44:33,055.055 INFO    ] time= 31/08/2026 04:44:33
[2026-08-31 04:44:33,121.121 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:44:33,166.166 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:44:33,317.317 INFO    ] No existing commands found in stream
[2026-08-31 04:44:38,339.339 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:44:38,342.342 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-08-31 04:44:42,744.744 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 04:44:42,747.747 INFO    ] Checking for system updates...
[2026-08-31 04:44:42,786.786 INFO    ] 200
[2026-08-31 04:44:42,789.789 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:44:42,847.847 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:44:42,849.849 INFO    ] No update needed
[2026-08-31 04:44:42,852.852 INFO    ] Checking for camera pi updates...
[2026-08-31 04:44:42,889.889 INFO    ] 200
[2026-08-31 04:44:42,892.892 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:44:42,932.932 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:44:43,014.014 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:44:43,016.016 INFO    ] No camera update needed
[2026-08-31 04:44:43,019.019 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:44:43,021.021 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:44:43,026.026 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:44:43,032.032 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:44:45,072.072 INFO    ] ================================================
[2026-08-31 04:44:45,087.087 INFO    ] Launching Daemon at Mon Aug 31 04:44:45 IST 2026
[2026-08-31 04:44:45,098.098 INFO    ] ================================================
[2026-08-31 04:44:45,750.750 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:44:45
[2026-08-31 04:44:46,422.422 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:44:46,727.727 INFO    ] Initializing speech engine...
[2026-08-31 04:44:46,734.734 INFO    ] 2026-08-31 04:44:46
[2026-08-31 04:44:47,012.012 INFO    ] 2026-08-31 04:44:47
[2026-08-31 04:44:47,067.067 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:44:47,298.298 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:44:47,302.302 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:44:47,457.457 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:44:47,522.522 INFO    ] time= 31/08/2026 04:44:47
[2026-08-31 04:44:47,573.573 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:44:47,579.579 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:44:47,724.724 INFO    ] No existing commands found in stream
[2026-08-31 04:44:52,742.742 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:44:52,745.745 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-08-31 04:44:55,181.181 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 04:44:55,184.184 INFO    ] Checking for system updates...
[2026-08-31 04:44:55,221.221 INFO    ] 200
[2026-08-31 04:44:55,224.224 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:44:55,284.284 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:44:55,287.287 INFO    ] No update needed
[2026-08-31 04:44:55,290.290 INFO    ] Checking for camera pi updates...
[2026-08-31 04:44:55,324.324 INFO    ] 200
[2026-08-31 04:44:55,327.327 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:44:55,369.369 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:44:55,556.556 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:44:55,559.559 INFO    ] No camera update needed
[2026-08-31 04:44:55,562.562 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:44:55,565.565 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:44:55,571.571 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:44:55,577.577 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:44:57,619.619 INFO    ] ================================================
[2026-08-31 04:44:57,634.634 INFO    ] Launching Daemon at Mon Aug 31 04:44:57 IST 2026
[2026-08-31 04:44:57,644.644 INFO    ] ================================================
[2026-08-31 04:44:58,219.219 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:44:58
[2026-08-31 04:44:58,805.805 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:44:59,076.076 INFO    ] Initializing speech engine...
[2026-08-31 04:44:59,085.085 INFO    ] 2026-08-31 04:44:59
[2026-08-31 04:44:59,336.336 INFO    ] 2026-08-31 04:44:59
[2026-08-31 04:44:59,371.371 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:44:59,628.628 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:44:59,637.637 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:44:59,772.772 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:44:59,820.820 INFO    ] time= 31/08/2026 04:44:59
[2026-08-31 04:44:59,874.874 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:44:59,909.909 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:45:00,060.060 INFO    ] No existing commands found in stream
[2026-08-31 04:45:05,073.073 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:45:05,076.076 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-08-31 04:45:08,096.096 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 04:45:08,099.099 INFO    ] Checking for system updates...
[2026-08-31 04:45:08,135.135 INFO    ] 200
[2026-08-31 04:45:08,138.138 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:45:08,190.190 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:45:08,193.193 INFO    ] No update needed
[2026-08-31 04:45:08,195.195 INFO    ] Checking for camera pi updates...
[2026-08-31 04:45:08,231.231 INFO    ] 200
[2026-08-31 04:45:08,234.234 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:45:08,274.274 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:45:08,356.356 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:45:08,358.358 INFO    ] No camera update needed
[2026-08-31 04:45:08,360.360 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:45:08,363.363 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:45:08,368.368 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:45:08,373.373 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:45:10,414.414 INFO    ] ================================================
[2026-08-31 04:45:10,429.429 INFO    ] Launching Daemon at Mon Aug 31 04:45:10 IST 2026
[2026-08-31 04:45:10,439.439 INFO    ] ================================================
[2026-08-31 04:45:11,020.020 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:45:11
[2026-08-31 04:45:11,615.615 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:45:11,886.886 INFO    ] Initializing speech engine...
[2026-08-31 04:45:11,896.896 INFO    ] 2026-08-31 04:45:11
[2026-08-31 04:45:12,143.143 INFO    ] 2026-08-31 04:45:12
[2026-08-31 04:45:12,180.180 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:45:12,372.372 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:45:12,412.412 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:45:12,575.575 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:45:12,640.640 INFO    ] time= 31/08/2026 04:45:12
[2026-08-31 04:45:12,702.702 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:45:12,709.709 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:45:12,838.838 INFO    ] No existing commands found in stream
[2026-08-31 04:45:17,860.860 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:45:17,863.863 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-08-31 04:45:21,080.080 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 04:45:21,083.083 INFO    ] Checking for system updates...
[2026-08-31 04:45:21,119.119 INFO    ] 200
[2026-08-31 04:45:21,122.122 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:45:21,174.174 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:45:21,177.177 INFO    ] No update needed
[2026-08-31 04:45:21,180.180 INFO    ] Checking for camera pi updates...
[2026-08-31 04:45:21,214.214 INFO    ] 200
[2026-08-31 04:45:21,217.217 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:45:21,258.258 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:45:21,344.344 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:45:21,347.347 INFO    ] No camera update needed
[2026-08-31 04:45:21,350.350 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:45:21,352.352 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:45:21,358.358 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:45:21,364.364 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:45:23,407.407 INFO    ] ================================================
[2026-08-31 04:45:23,422.422 INFO    ] Launching Daemon at Mon Aug 31 04:45:23 IST 2026
[2026-08-31 04:45:23,432.432 INFO    ] ================================================
[2026-08-31 04:45:24,003.003 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:45:23
[2026-08-31 04:45:24,600.600 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:45:24,860.860 INFO    ] Initializing speech engine...
[2026-08-31 04:45:24,879.879 INFO    ] 2026-08-31 04:45:24
[2026-08-31 04:45:25,157.157 INFO    ] 2026-08-31 04:45:25
[2026-08-31 04:45:25,223.223 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:45:25,451.451 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:45:25,458.458 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:45:25,597.597 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:45:25,668.668 INFO    ] time= 31/08/2026 04:45:25
[2026-08-31 04:45:25,721.721 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:45:25,738.738 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:45:25,859.859 INFO    ] No existing commands found in stream
[2026-08-31 04:45:30,881.881 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:45:30,885.885 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-08-31 04:45:32,843.843 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 04:45:32,846.846 INFO    ] Checking for system updates...
[2026-08-31 04:45:32,885.885 INFO    ] 200
[2026-08-31 04:45:32,888.888 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:45:32,950.950 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:45:32,953.953 INFO    ] No update needed
[2026-08-31 04:45:32,956.956 INFO    ] Checking for camera pi updates...
[2026-08-31 04:45:32,998.998 INFO    ] 200
[2026-08-31 04:45:33,001.001 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:45:33,049.049 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:45:33,147.147 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:45:33,151.151 INFO    ] No camera update needed
[2026-08-31 04:45:33,154.154 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:45:33,160.160 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:45:33,167.167 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:45:33,179.179 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:45:35,222.222 INFO    ] ================================================
[2026-08-31 04:45:35,237.237 INFO    ] Launching Daemon at Mon Aug 31 04:45:35 IST 2026
[2026-08-31 04:45:35,248.248 INFO    ] ================================================
[2026-08-31 04:45:35,828.828 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:45:35
[2026-08-31 04:45:36,440.440 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:45:36,717.717 INFO    ] Initializing speech engine...
[2026-08-31 04:45:36,730.730 INFO    ] 2026-08-31 04:45:36
[2026-08-31 04:45:37,001.001 INFO    ] 2026-08-31 04:45:36
[2026-08-31 04:45:37,036.036 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:45:37,234.234 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:45:37,292.292 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:45:37,434.434 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:45:37,489.489 INFO    ] time= 31/08/2026 04:45:37
[2026-08-31 04:45:37,534.534 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:45:37,567.567 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:45:37,685.685 INFO    ] No existing commands found in stream
[2026-08-31 04:45:42,716.716 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:45:42,719.719 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-08-31 04:45:43,779.779 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 04:45:43,782.782 INFO    ] Checking for system updates...
[2026-08-31 04:45:43,819.819 INFO    ] 200
[2026-08-31 04:45:43,821.821 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:45:43,876.876 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:45:43,879.879 INFO    ] No update needed
[2026-08-31 04:45:43,881.881 INFO    ] Checking for camera pi updates...
[2026-08-31 04:45:43,916.916 INFO    ] 200
[2026-08-31 04:45:43,918.918 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:45:43,964.964 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:45:44,045.045 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:45:44,049.049 INFO    ] No camera update needed
[2026-08-31 04:45:44,051.051 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:45:44,054.054 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:45:44,060.060 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:45:44,066.066 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:45:46,110.110 INFO    ] ================================================
[2026-08-31 04:45:46,126.126 INFO    ] Launching Daemon at Mon Aug 31 04:45:46 IST 2026
[2026-08-31 04:45:46,138.138 INFO    ] ================================================
[2026-08-31 04:45:46,756.756 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:45:46
[2026-08-31 04:45:47,387.387 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:45:47,668.668 INFO    ] Initializing speech engine...
[2026-08-31 04:45:47,677.677 INFO    ] 2026-08-31 04:45:47
[2026-08-31 04:45:47,941.941 INFO    ] 2026-08-31 04:45:47
[2026-08-31 04:45:47,995.995 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:45:48,479.479 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:45:48,485.485 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:45:48,672.672 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:45:48,738.738 INFO    ] time= 31/08/2026 04:45:48
[2026-08-31 04:45:48,762.762 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:45:48,847.847 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:45:49,030.030 INFO    ] No existing commands found in stream
[2026-08-31 04:45:54,055.055 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:45:54,058.058 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-08-31 04:45:58,505.505 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 04:45:58,508.508 INFO    ] Checking for system updates...
[2026-08-31 04:45:58,544.544 INFO    ] 200
[2026-08-31 04:45:58,546.546 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:45:58,599.599 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:45:58,602.602 INFO    ] No update needed
[2026-08-31 04:45:58,605.605 INFO    ] Checking for camera pi updates...
[2026-08-31 04:45:58,645.645 INFO    ] 200
[2026-08-31 04:45:58,648.648 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:45:58,691.691 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:45:58,776.776 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:45:58,779.779 INFO    ] No camera update needed
[2026-08-31 04:45:58,782.782 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:45:58,784.784 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:45:58,790.790 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:45:58,796.796 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:46:00,840.840 INFO    ] ================================================
[2026-08-31 04:46:00,855.855 INFO    ] Launching Daemon at Mon Aug 31 04:46:00 IST 2026
[2026-08-31 04:46:00,865.865 INFO    ] ================================================
[2026-08-31 04:46:01,495.495 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:46:01
[2026-08-31 04:46:02,187.187 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:46:02,515.515 INFO    ] Initializing speech engine...
[2026-08-31 04:46:02,527.527 INFO    ] 2026-08-31 04:46:02
[2026-08-31 04:46:02,805.805 INFO    ] 2026-08-31 04:46:02
[2026-08-31 04:46:02,884.884 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:46:03,133.133 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:46:03,137.137 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:46:03,305.305 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:46:03,351.351 INFO    ] time= 31/08/2026 04:46:03
[2026-08-31 04:46:03,424.424 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:46:03,443.443 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:46:03,574.574 INFO    ] No existing commands found in stream
[2026-08-31 04:46:08,603.603 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:46:08,606.606 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-08-31 04:46:11,459.459 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 04:46:11,462.462 INFO    ] Checking for system updates...
[2026-08-31 04:46:11,497.497 INFO    ] 200
[2026-08-31 04:46:11,500.500 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:46:11,552.552 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:46:11,554.554 INFO    ] No update needed
[2026-08-31 04:46:11,557.557 INFO    ] Checking for camera pi updates...
[2026-08-31 04:46:11,591.591 INFO    ] 200
[2026-08-31 04:46:11,593.593 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:46:11,638.638 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:46:11,722.722 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:46:11,724.724 INFO    ] No camera update needed
[2026-08-31 04:46:11,726.726 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:46:11,729.729 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:46:11,734.734 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:46:11,739.739 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:46:13,778.778 INFO    ] ================================================
[2026-08-31 04:46:13,793.793 INFO    ] Launching Daemon at Mon Aug 31 04:46:13 IST 2026
[2026-08-31 04:46:13,804.804 INFO    ] ================================================
[2026-08-31 04:46:14,371.371 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:46:14
[2026-08-31 04:46:14,953.953 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:46:15,223.223 INFO    ] Initializing speech engine...
[2026-08-31 04:46:15,233.233 INFO    ] 2026-08-31 04:46:15
[2026-08-31 04:46:15,481.481 INFO    ] 2026-08-31 04:46:15
[2026-08-31 04:46:15,516.516 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:46:15,691.691 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:46:15,704.704 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:46:15,851.851 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:46:15,856.856 INFO    ] time= 31/08/2026 04:46:15
[2026-08-31 04:46:15,863.863 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:46:15,909.909 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:46:16,048.048 INFO    ] No existing commands found in stream
[2026-08-31 04:46:21,067.067 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:46:21,070.070 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-08-31 04:46:23,123.123 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 04:46:23,126.126 INFO    ] Checking for system updates...
[2026-08-31 04:46:23,165.165 INFO    ] 200
[2026-08-31 04:46:23,168.168 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:46:23,220.220 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:46:23,222.222 INFO    ] No update needed
[2026-08-31 04:46:23,225.225 INFO    ] Checking for camera pi updates...
[2026-08-31 04:46:23,261.261 INFO    ] 200
[2026-08-31 04:46:23,264.264 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:46:23,307.307 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:46:23,388.388 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:46:23,391.391 INFO    ] No camera update needed
[2026-08-31 04:46:23,394.394 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:46:23,396.396 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:46:23,401.401 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:46:23,406.406 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:46:25,446.446 INFO    ] ================================================
[2026-08-31 04:46:25,461.461 INFO    ] Launching Daemon at Mon Aug 31 04:46:25 IST 2026
[2026-08-31 04:46:25,472.472 INFO    ] ================================================
[2026-08-31 04:46:26,052.052 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:46:26
[2026-08-31 04:46:26,651.651 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:46:26,929.929 INFO    ] Initializing speech engine...
[2026-08-31 04:46:26,936.936 INFO    ] 2026-08-31 04:46:26
[2026-08-31 04:46:27,185.185 INFO    ] 2026-08-31 04:46:27
[2026-08-31 04:46:27,226.226 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:46:27,419.419 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:46:27,477.477 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:46:27,625.625 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:46:27,690.690 INFO    ] time= 31/08/2026 04:46:27
[2026-08-31 04:46:27,740.740 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:46:27,755.755 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:46:27,898.898 INFO    ] No existing commands found in stream
[2026-08-31 04:46:32,912.912 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:46:32,915.915 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-08-31 04:46:34,403.403 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 04:46:34,406.406 INFO    ] Checking for system updates...
[2026-08-31 04:46:34,443.443 INFO    ] 200
[2026-08-31 04:46:34,445.445 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:46:34,506.506 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:46:34,509.509 INFO    ] No update needed
[2026-08-31 04:46:34,512.512 INFO    ] Checking for camera pi updates...
[2026-08-31 04:46:34,545.545 INFO    ] 200
[2026-08-31 04:46:34,548.548 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:46:34,589.589 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:46:34,665.665 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:46:34,668.668 INFO    ] No camera update needed
[2026-08-31 04:46:34,670.670 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:46:34,672.672 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:46:34,678.678 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:46:34,683.683 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:46:36,722.722 INFO    ] ================================================
[2026-08-31 04:46:36,737.737 INFO    ] Launching Daemon at Mon Aug 31 04:46:36 IST 2026
[2026-08-31 04:46:36,748.748 INFO    ] ================================================
[2026-08-31 04:46:37,315.315 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:46:37
[2026-08-31 04:46:37,900.900 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:46:38,154.154 INFO    ] Initializing speech engine...
[2026-08-31 04:46:38,160.160 INFO    ] 2026-08-31 04:46:38
[2026-08-31 04:46:38,440.440 INFO    ] 2026-08-31 04:46:38
[2026-08-31 04:46:38,476.476 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:46:38,673.673 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:46:38,731.731 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:46:38,872.872 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:46:38,942.942 INFO    ] time= 31/08/2026 04:46:38
[2026-08-31 04:46:38,999.999 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:46:39,005.005 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:46:39,141.141 INFO    ] No existing commands found in stream
[2026-08-31 04:46:44,161.161 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:46:44,164.164 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-08-31 04:46:47,264.264 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 04:46:47,266.266 INFO    ] Checking for system updates...
[2026-08-31 04:46:47,303.303 INFO    ] 200
[2026-08-31 04:46:47,305.305 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:46:47,359.359 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:46:47,361.361 INFO    ] No update needed
[2026-08-31 04:46:47,364.364 INFO    ] Checking for camera pi updates...
[2026-08-31 04:46:47,399.399 INFO    ] 200
[2026-08-31 04:46:47,401.401 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:46:47,442.442 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:46:47,546.546 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:46:47,549.549 INFO    ] No camera update needed
[2026-08-31 04:46:47,551.551 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:46:47,554.554 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:46:47,559.559 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:46:47,565.565 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:46:49,605.605 INFO    ] ================================================
[2026-08-31 04:46:49,620.620 INFO    ] Launching Daemon at Mon Aug 31 04:46:49 IST 2026
[2026-08-31 04:46:49,630.630 INFO    ] ================================================
[2026-08-31 04:46:50,211.211 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:46:50
[2026-08-31 04:46:50,810.810 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:46:51,086.086 INFO    ] Initializing speech engine...
[2026-08-31 04:46:51,095.095 INFO    ] 2026-08-31 04:46:51
[2026-08-31 04:46:51,355.355 INFO    ] 2026-08-31 04:46:51
[2026-08-31 04:46:51,410.410 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:46:51,690.690 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:46:51,698.698 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:46:51,890.890 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:46:51,897.897 INFO    ] time= 31/08/2026 04:46:51
[2026-08-31 04:46:51,912.912 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:46:51,942.942 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:46:52,063.063 INFO    ] No existing commands found in stream
[2026-08-31 04:46:57,094.094 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:46:57,097.097 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-08-31 04:46:59,563.563 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 04:46:59,566.566 INFO    ] Checking for system updates...
[2026-08-31 04:46:59,602.602 INFO    ] 200
[2026-08-31 04:46:59,604.604 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:46:59,663.663 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:46:59,666.666 INFO    ] No update needed
[2026-08-31 04:46:59,668.668 INFO    ] Checking for camera pi updates...
[2026-08-31 04:46:59,705.705 INFO    ] 200
[2026-08-31 04:46:59,707.707 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:46:59,752.752 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:46:59,929.929 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:46:59,932.932 INFO    ] No camera update needed
[2026-08-31 04:46:59,934.934 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:46:59,936.936 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:46:59,942.942 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:46:59,947.947 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:47:02,990.990 INFO    ] ================================================
[2026-08-31 04:47:02,013.013 INFO    ] Launching Daemon at Mon Aug 31 04:47:02 IST 2026
[2026-08-31 04:47:02,026.026 INFO    ] ================================================
[2026-08-31 04:47:02,683.683 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:47:02
[2026-08-31 04:47:03,342.342 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:47:03,594.594 INFO    ] Initializing speech engine...
[2026-08-31 04:47:03,601.601 INFO    ] 2026-08-31 04:47:03
[2026-08-31 04:47:03,908.908 INFO    ] 2026-08-31 04:47:03
[2026-08-31 04:47:03,934.934 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:47:04,132.132 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:47:04,145.145 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:47:04,290.290 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:47:04,299.299 INFO    ] time= 31/08/2026 04:47:04
[2026-08-31 04:47:04,305.305 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:47:04,367.367 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:47:04,469.469 INFO    ] No existing commands found in stream
[2026-08-31 04:47:09,495.495 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:47:09,497.497 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-08-31 04:47:13,654.654 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 04:47:13,656.656 INFO    ] Checking for system updates...
[2026-08-31 04:47:13,697.697 INFO    ] 200
[2026-08-31 04:47:13,700.700 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:47:13,752.752 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:47:13,754.754 INFO    ] No update needed
[2026-08-31 04:47:13,757.757 INFO    ] Checking for camera pi updates...
[2026-08-31 04:47:13,791.791 INFO    ] 200
[2026-08-31 04:47:13,794.794 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:47:13,835.835 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:47:13,920.920 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:47:13,923.923 INFO    ] No camera update needed
[2026-08-31 04:47:13,925.925 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:47:13,927.927 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:47:13,933.933 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:47:13,938.938 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:47:15,978.978 INFO    ] ================================================
[2026-08-31 04:47:16,994.994 INFO    ] Launching Daemon at Mon Aug 31 04:47:15 IST 2026
[2026-08-31 04:47:16,005.005 INFO    ] ================================================
[2026-08-31 04:47:16,573.573 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:47:16
[2026-08-31 04:47:17,157.157 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:47:17,425.425 INFO    ] Initializing speech engine...
[2026-08-31 04:47:17,434.434 INFO    ] 2026-08-31 04:47:17
[2026-08-31 04:47:17,685.685 INFO    ] 2026-08-31 04:47:17
[2026-08-31 04:47:17,743.743 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:47:17,965.965 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:47:17,974.974 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:47:18,160.160 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:47:18,215.215 INFO    ] time= 31/08/2026 04:47:18
[2026-08-31 04:47:18,236.236 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:47:18,242.242 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:47:18,371.371 INFO    ] No existing commands found in stream
[2026-08-31 04:47:23,396.396 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:47:23,399.399 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-08-31 04:47:24,455.455 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 04:47:24,458.458 INFO    ] Checking for system updates...
[2026-08-31 04:47:24,498.498 INFO    ] 200
[2026-08-31 04:47:24,500.500 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:47:24,553.553 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:47:24,555.555 INFO    ] No update needed
[2026-08-31 04:47:24,562.562 INFO    ] Checking for camera pi updates...
[2026-08-31 04:47:24,595.595 INFO    ] 200
[2026-08-31 04:47:24,598.598 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:47:24,644.644 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:47:24,745.745 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:47:24,748.748 INFO    ] No camera update needed
[2026-08-31 04:47:24,750.750 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:47:24,753.753 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:47:24,758.758 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:47:24,763.763 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:47:26,805.805 INFO    ] ================================================
[2026-08-31 04:47:26,821.821 INFO    ] Launching Daemon at Mon Aug 31 04:47:26 IST 2026
[2026-08-31 04:47:26,833.833 INFO    ] ================================================
[2026-08-31 04:47:27,420.420 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:47:27
[2026-08-31 04:47:28,019.019 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:47:28,282.282 INFO    ] Initializing speech engine...
[2026-08-31 04:47:28,297.297 INFO    ] 2026-08-31 04:47:28
[2026-08-31 04:47:28,552.552 INFO    ] 2026-08-31 04:47:28
[2026-08-31 04:47:28,588.588 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:47:28,845.845 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:47:28,852.852 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:47:28,982.982 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:47:29,035.035 INFO    ] time= 31/08/2026 04:47:28
[2026-08-31 04:47:29,104.104 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:47:29,119.119 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:47:29,244.244 INFO    ] No existing commands found in stream
[2026-08-31 04:47:34,269.269 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:47:34,272.272 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-08-31 04:47:38,017.017 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 04:47:38,020.020 INFO    ] Checking for system updates...
[2026-08-31 04:47:38,060.060 INFO    ] 200
[2026-08-31 04:47:38,063.063 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:47:38,124.124 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:47:38,127.127 INFO    ] No update needed
[2026-08-31 04:47:38,129.129 INFO    ] Checking for camera pi updates...
[2026-08-31 04:47:38,168.168 INFO    ] 200
[2026-08-31 04:47:38,170.170 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:47:38,210.210 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:47:38,287.287 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:47:38,290.290 INFO    ] No camera update needed
[2026-08-31 04:47:38,292.292 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:47:38,295.295 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:47:38,300.300 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:47:38,305.305 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:47:40,347.347 INFO    ] ================================================
[2026-08-31 04:47:40,363.363 INFO    ] Launching Daemon at Mon Aug 31 04:47:40 IST 2026
[2026-08-31 04:47:40,375.375 INFO    ] ================================================
[2026-08-31 04:47:40,955.955 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:47:40
[2026-08-31 04:47:41,553.553 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:47:41,826.826 INFO    ] Initializing speech engine...
[2026-08-31 04:47:41,835.835 INFO    ] 2026-08-31 04:47:41
[2026-08-31 04:47:42,097.097 INFO    ] 2026-08-31 04:47:42
[2026-08-31 04:47:42,150.150 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:47:42,376.376 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:47:42,381.381 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:47:42,515.515 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:47:42,570.570 INFO    ] time= 31/08/2026 04:47:42
[2026-08-31 04:47:42,625.625 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:47:42,648.648 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:47:42,763.763 INFO    ] No existing commands found in stream
[2026-08-31 04:47:47,793.793 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:47:47,796.796 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-08-31 04:47:50,322.322 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 04:47:50,324.324 INFO    ] Checking for system updates...
[2026-08-31 04:47:50,364.364 INFO    ] 200
[2026-08-31 04:47:50,367.367 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:47:50,426.426 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:47:50,429.429 INFO    ] No update needed
[2026-08-31 04:47:50,431.431 INFO    ] Checking for camera pi updates...
[2026-08-31 04:47:50,465.465 INFO    ] 200
[2026-08-31 04:47:50,468.468 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:47:50,510.510 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:47:50,566.566 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:47:50,569.569 INFO    ] No camera update needed
[2026-08-31 04:47:50,571.571 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:47:50,573.573 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:47:50,579.579 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:47:50,584.584 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:47:52,625.625 INFO    ] ================================================
[2026-08-31 04:47:52,640.640 INFO    ] Launching Daemon at Mon Aug 31 04:47:52 IST 2026
[2026-08-31 04:47:52,651.651 INFO    ] ================================================
[2026-08-31 04:47:53,261.261 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:47:53
[2026-08-31 04:47:53,860.860 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:47:54,121.121 INFO    ] Initializing speech engine...
[2026-08-31 04:47:54,127.127 INFO    ] 2026-08-31 04:47:54
[2026-08-31 04:47:54,397.397 INFO    ] 2026-08-31 04:47:54
[2026-08-31 04:47:54,435.435 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:47:54,643.643 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:47:54,660.660 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:47:54,791.791 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:47:54,810.810 INFO    ] time= 31/08/2026 04:47:54
[2026-08-31 04:47:54,834.834 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:47:54,841.841 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:47:54,921.921 INFO    ] No existing commands found in stream
[2026-08-31 04:47:59,941.941 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:47:59,944.944 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-08-31 04:48:03,979.979 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 04:48:03,982.982 INFO    ] Checking for system updates...
[2026-08-31 04:48:04,017.017 INFO    ] 200
[2026-08-31 04:48:04,019.019 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:48:04,072.072 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:48:04,074.074 INFO    ] No update needed
[2026-08-31 04:48:04,076.076 INFO    ] Checking for camera pi updates...
[2026-08-31 04:48:04,113.113 INFO    ] 200
[2026-08-31 04:48:04,116.116 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:48:04,158.158 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:48:04,268.268 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:48:04,271.271 INFO    ] No camera update needed
[2026-08-31 04:48:04,273.273 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:48:04,276.276 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:48:04,281.281 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:48:04,286.286 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:48:06,327.327 INFO    ] ================================================
[2026-08-31 04:48:06,342.342 INFO    ] Launching Daemon at Mon Aug 31 04:48:06 IST 2026
[2026-08-31 04:48:06,353.353 INFO    ] ================================================
[2026-08-31 04:48:06,949.949 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:48:06
[2026-08-31 04:48:07,554.554 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:48:07,813.813 INFO    ] Initializing speech engine...
[2026-08-31 04:48:07,822.822 INFO    ] 2026-08-31 04:48:07
[2026-08-31 04:48:08,118.118 INFO    ] 2026-08-31 04:48:08
[2026-08-31 04:48:08,154.154 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:48:08,360.360 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:48:08,380.380 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:48:08,522.522 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:48:08,532.532 INFO    ] time= 31/08/2026 04:48:08
[2026-08-31 04:48:08,540.540 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:48:08,561.561 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:48:08,685.685 INFO    ] No existing commands found in stream
[2026-08-31 04:48:13,710.710 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:48:13,713.713 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-08-31 04:48:14,218.218 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 04:48:14,221.221 INFO    ] Checking for system updates...
[2026-08-31 04:48:14,256.256 INFO    ] 200
[2026-08-31 04:48:14,259.259 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:48:14,317.317 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:48:14,320.320 INFO    ] No update needed
[2026-08-31 04:48:14,322.322 INFO    ] Checking for camera pi updates...
[2026-08-31 04:48:14,358.358 INFO    ] 200
[2026-08-31 04:48:14,361.361 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:48:14,405.405 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:48:14,490.490 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:48:14,492.492 INFO    ] No camera update needed
[2026-08-31 04:48:14,495.495 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:48:14,497.497 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:48:14,502.502 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:48:14,507.507 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:48:16,548.548 INFO    ] ================================================
[2026-08-31 04:48:16,563.563 INFO    ] Launching Daemon at Mon Aug 31 04:48:16 IST 2026
[2026-08-31 04:48:16,575.575 INFO    ] ================================================
[2026-08-31 04:48:17,143.143 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:48:17
[2026-08-31 04:48:17,741.741 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:48:18,006.006 INFO    ] Initializing speech engine...
[2026-08-31 04:48:18,022.022 INFO    ] 2026-08-31 04:48:18
[2026-08-31 04:48:18,310.310 INFO    ] 2026-08-31 04:48:18
[2026-08-31 04:48:18,349.349 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:48:18,575.575 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:48:18,583.583 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:48:18,803.803 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:48:18,846.846 INFO    ] time= 31/08/2026 04:48:18
[2026-08-31 04:48:18,906.906 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:48:18,945.945 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:48:19,093.093 INFO    ] No existing commands found in stream
[2026-08-31 04:48:24,120.120 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:48:24,123.123 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-08-31 04:48:27,984.984 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 04:48:27,986.986 INFO    ] Checking for system updates...
[2026-08-31 04:48:28,025.025 INFO    ] 200
[2026-08-31 04:48:28,028.028 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:48:28,080.080 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:48:28,082.082 INFO    ] No update needed
[2026-08-31 04:48:28,085.085 INFO    ] Checking for camera pi updates...
[2026-08-31 04:48:28,122.122 INFO    ] 200
[2026-08-31 04:48:28,124.124 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:48:28,168.168 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:48:28,248.248 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:48:28,251.251 INFO    ] No camera update needed
[2026-08-31 04:48:28,253.253 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:48:28,255.255 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:48:28,260.260 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:48:28,265.265 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:48:30,304.304 INFO    ] ================================================
[2026-08-31 04:48:30,320.320 INFO    ] Launching Daemon at Mon Aug 31 04:48:30 IST 2026
[2026-08-31 04:48:30,331.331 INFO    ] ================================================
[2026-08-31 04:48:30,915.915 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:48:30
[2026-08-31 04:48:31,519.519 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:48:31,819.819 INFO    ] Initializing speech engine...
[2026-08-31 04:48:31,829.829 INFO    ] 2026-08-31 04:48:31
[2026-08-31 04:48:32,111.111 INFO    ] 2026-08-31 04:48:32
[2026-08-31 04:48:32,162.162 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:48:32,370.370 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:48:32,390.390 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:48:32,542.542 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:48:32,552.552 INFO    ] time= 31/08/2026 04:48:32
[2026-08-31 04:48:32,560.560 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:48:32,598.598 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:48:32,675.675 INFO    ] No existing commands found in stream
[2026-08-31 04:48:37,690.690 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:48:37,693.693 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-08-31 04:48:38,459.459 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 04:48:38,462.462 INFO    ] Checking for system updates...
[2026-08-31 04:48:38,498.498 INFO    ] 200
[2026-08-31 04:48:38,500.500 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:48:38,559.559 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:48:38,561.561 INFO    ] No update needed
[2026-08-31 04:48:38,563.563 INFO    ] Checking for camera pi updates...
[2026-08-31 04:48:38,600.600 INFO    ] 200
[2026-08-31 04:48:38,603.603 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:48:38,654.654 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:48:38,735.735 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:48:38,737.737 INFO    ] No camera update needed
[2026-08-31 04:48:38,740.740 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:48:38,742.742 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:48:38,748.748 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:48:38,753.753 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:48:40,793.793 INFO    ] ================================================
[2026-08-31 04:48:40,809.809 INFO    ] Launching Daemon at Mon Aug 31 04:48:40 IST 2026
[2026-08-31 04:48:40,820.820 INFO    ] ================================================
[2026-08-31 04:48:41,417.417 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:48:41
[2026-08-31 04:48:42,016.016 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:48:42,267.267 INFO    ] Initializing speech engine...
[2026-08-31 04:48:42,273.273 INFO    ] 2026-08-31 04:48:42
[2026-08-31 04:48:42,550.550 INFO    ] 2026-08-31 04:48:42
[2026-08-31 04:48:42,585.585 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:48:42,837.837 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:48:42,847.847 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:48:42,986.986 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:48:43,061.061 INFO    ] time= 31/08/2026 04:48:42
[2026-08-31 04:48:43,108.108 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:48:43,114.114 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:48:43,244.244 INFO    ] No existing commands found in stream
[2026-08-31 04:48:48,268.268 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:48:48,271.271 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-08-31 04:48:49,020.020 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 04:48:49,023.023 INFO    ] Checking for system updates...
[2026-08-31 04:48:49,062.062 INFO    ] 200
[2026-08-31 04:48:49,064.064 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:48:49,124.124 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:48:49,126.126 INFO    ] No update needed
[2026-08-31 04:48:49,129.129 INFO    ] Checking for camera pi updates...
[2026-08-31 04:48:49,166.166 INFO    ] 200
[2026-08-31 04:48:49,168.168 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:48:49,213.213 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:48:49,315.315 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:48:49,317.317 INFO    ] No camera update needed
[2026-08-31 04:48:49,320.320 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:48:49,322.322 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:48:49,327.327 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:48:49,332.332 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:48:51,373.373 INFO    ] ================================================
[2026-08-31 04:48:51,389.389 INFO    ] Launching Daemon at Mon Aug 31 04:48:51 IST 2026
[2026-08-31 04:48:51,399.399 INFO    ] ================================================
[2026-08-31 04:48:52,021.021 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:48:52
[2026-08-31 04:48:52,626.626 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:48:52,886.886 INFO    ] Initializing speech engine...
[2026-08-31 04:48:52,892.892 INFO    ] 2026-08-31 04:48:52
[2026-08-31 04:48:53,174.174 INFO    ] 2026-08-31 04:48:53
[2026-08-31 04:48:53,209.209 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:48:53,381.381 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:48:53,386.386 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:48:53,514.514 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:48:53,517.517 INFO    ] time= 31/08/2026 04:48:53
[2026-08-31 04:48:53,521.521 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:48:53,527.527 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:48:53,634.634 INFO    ] No existing commands found in stream
[2026-08-31 04:48:58,645.645 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:48:58,647.647 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-08-31 04:49:01,968.968 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 04:49:01,972.972 INFO    ] Checking for system updates...
[2026-08-31 04:49:02,019.019 INFO    ] 200
[2026-08-31 04:49:02,023.023 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:49:02,108.108 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:49:02,112.112 INFO    ] No update needed
[2026-08-31 04:49:02,116.116 INFO    ] Checking for camera pi updates...
[2026-08-31 04:49:02,158.158 INFO    ] 200
[2026-08-31 04:49:02,161.161 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:49:02,233.233 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:49:02,398.398 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:49:02,401.401 INFO    ] No camera update needed
[2026-08-31 04:49:02,404.404 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:49:02,407.407 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:49:02,413.413 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:49:02,419.419 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:49:04,460.460 INFO    ] ================================================
[2026-08-31 04:49:04,476.476 INFO    ] Launching Daemon at Mon Aug 31 04:49:04 IST 2026
[2026-08-31 04:49:04,487.487 INFO    ] ================================================
[2026-08-31 04:49:05,056.056 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:49:05
[2026-08-31 04:49:05,642.642 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:49:05,909.909 INFO    ] Initializing speech engine...
[2026-08-31 04:49:05,918.918 INFO    ] 2026-08-31 04:49:05
[2026-08-31 04:49:06,183.183 INFO    ] 2026-08-31 04:49:06
[2026-08-31 04:49:06,256.256 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:49:06,513.513 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:49:06,547.547 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:49:06,750.750 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:49:06,771.771 INFO    ] time= 31/08/2026 04:49:06
[2026-08-31 04:49:06,799.799 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:49:06,807.807 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:49:06,927.927 INFO    ] No existing commands found in stream
[2026-08-31 04:49:11,958.958 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:49:11,962.962 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-08-31 04:49:13,968.968 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 04:49:13,971.971 INFO    ] Checking for system updates...
[2026-08-31 04:49:14,011.011 INFO    ] 200
[2026-08-31 04:49:14,014.014 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:49:14,078.078 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:49:14,081.081 INFO    ] No update needed
[2026-08-31 04:49:14,084.084 INFO    ] Checking for camera pi updates...
[2026-08-31 04:49:14,122.122 INFO    ] 200
[2026-08-31 04:49:14,124.124 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:49:14,170.170 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:49:14,273.273 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:49:14,275.275 INFO    ] No camera update needed
[2026-08-31 04:49:14,278.278 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:49:14,280.280 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:49:14,286.286 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:49:14,290.290 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:49:16,331.331 INFO    ] ================================================
[2026-08-31 04:49:16,346.346 INFO    ] Launching Daemon at Mon Aug 31 04:49:16 IST 2026
[2026-08-31 04:49:16,358.358 INFO    ] ================================================
[2026-08-31 04:49:16,925.925 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:49:16
[2026-08-31 04:49:17,510.510 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:49:17,781.781 INFO    ] Initializing speech engine...
[2026-08-31 04:49:17,789.789 INFO    ] 2026-08-31 04:49:17
[2026-08-31 04:49:18,040.040 INFO    ] 2026-08-31 04:49:18
[2026-08-31 04:49:18,075.075 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:49:18,336.336 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:49:18,342.342 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:49:18,525.525 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:49:18,579.579 INFO    ] time= 31/08/2026 04:49:18
[2026-08-31 04:49:18,611.611 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:49:18,626.626 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:49:18,765.765 INFO    ] No existing commands found in stream
[2026-08-31 04:49:23,784.784 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:49:23,786.786 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-08-31 04:49:26,815.815 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 04:49:26,818.818 INFO    ] Checking for system updates...
[2026-08-31 04:49:26,857.857 INFO    ] 200
[2026-08-31 04:49:26,860.860 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:49:26,920.920 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:49:26,922.922 INFO    ] No update needed
[2026-08-31 04:49:26,924.924 INFO    ] Checking for camera pi updates...
[2026-08-31 04:49:26,958.958 INFO    ] 200
[2026-08-31 04:49:26,961.961 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:49:27,014.014 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:49:27,099.099 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:49:27,101.101 INFO    ] No camera update needed
[2026-08-31 04:49:27,104.104 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:49:27,106.106 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:49:27,112.112 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:49:27,118.118 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:49:29,160.160 INFO    ] ================================================
[2026-08-31 04:49:29,176.176 INFO    ] Launching Daemon at Mon Aug 31 04:49:29 IST 2026
[2026-08-31 04:49:29,187.187 INFO    ] ================================================
[2026-08-31 04:49:29,752.752 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:49:29
[2026-08-31 04:49:30,333.333 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:49:30,603.603 INFO    ] Initializing speech engine...
[2026-08-31 04:49:30,613.613 INFO    ] 2026-08-31 04:49:30
[2026-08-31 04:49:30,862.862 INFO    ] 2026-08-31 04:49:30
[2026-08-31 04:49:30,898.898 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:49:31,154.154 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:49:31,163.163 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:49:31,298.298 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:49:31,340.340 INFO    ] time= 31/08/2026 04:49:31
[2026-08-31 04:49:31,399.399 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:49:31,444.444 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:49:31,578.578 INFO    ] No existing commands found in stream
[2026-08-31 04:49:36,609.609 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:49:36,612.612 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-08-31 04:49:40,817.817 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 04:49:40,820.820 INFO    ] Checking for system updates...
[2026-08-31 04:49:40,856.856 INFO    ] 200
[2026-08-31 04:49:40,859.859 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:49:40,910.910 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:49:40,913.913 INFO    ] No update needed
[2026-08-31 04:49:40,915.915 INFO    ] Checking for camera pi updates...
[2026-08-31 04:49:40,952.952 INFO    ] 200
[2026-08-31 04:49:40,954.954 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:49:40,998.998 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:49:41,093.093 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:49:41,096.096 INFO    ] No camera update needed
[2026-08-31 04:49:41,098.098 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:49:41,101.101 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:49:41,106.106 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:49:41,111.111 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:49:43,152.152 INFO    ] ================================================
[2026-08-31 04:49:43,168.168 INFO    ] Launching Daemon at Mon Aug 31 04:49:43 IST 2026
[2026-08-31 04:49:43,179.179 INFO    ] ================================================
[2026-08-31 04:49:43,798.798 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:49:43
[2026-08-31 04:49:44,383.383 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:49:44,637.637 INFO    ] Initializing speech engine...
[2026-08-31 04:49:44,646.646 INFO    ] 2026-08-31 04:49:44
[2026-08-31 04:49:44,923.923 INFO    ] 2026-08-31 04:49:44
[2026-08-31 04:49:44,959.959 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:49:45,213.213 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:49:45,222.222 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:49:45,363.363 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:49:45,412.412 INFO    ] time= 31/08/2026 04:49:45
[2026-08-31 04:49:45,472.472 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:49:45,489.489 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:49:45,639.639 INFO    ] No existing commands found in stream
[2026-08-31 04:49:50,662.662 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:49:50,665.665 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-08-31 04:49:52,686.686 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 04:49:52,689.689 INFO    ] Checking for system updates...
[2026-08-31 04:49:52,728.728 INFO    ] 200
[2026-08-31 04:49:52,731.731 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:49:52,785.785 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:49:52,788.788 INFO    ] No update needed
[2026-08-31 04:49:52,790.790 INFO    ] Checking for camera pi updates...
[2026-08-31 04:49:52,830.830 INFO    ] 200
[2026-08-31 04:49:52,833.833 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:49:52,874.874 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:49:52,970.970 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:49:52,972.972 INFO    ] No camera update needed
[2026-08-31 04:49:52,975.975 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:49:52,977.977 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:49:52,982.982 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:49:52,987.987 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:49:55,029.029 INFO    ] ================================================
[2026-08-31 04:49:55,044.044 INFO    ] Launching Daemon at Mon Aug 31 04:49:55 IST 2026
[2026-08-31 04:49:55,055.055 INFO    ] ================================================
[2026-08-31 04:49:55,710.710 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:49:55
[2026-08-31 04:49:56,385.385 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:49:56,698.698 INFO    ] Initializing speech engine...
[2026-08-31 04:49:56,704.704 INFO    ] 2026-08-31 04:49:56
[2026-08-31 04:49:57,016.016 INFO    ] 2026-08-31 04:49:56
[2026-08-31 04:49:57,103.103 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:49:57,266.266 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:49:57,272.272 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:49:57,492.492 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:49:57,538.538 INFO    ] time= 31/08/2026 04:49:57
[2026-08-31 04:49:57,557.557 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:49:57,567.567 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:49:57,695.695 INFO    ] No existing commands found in stream
[2026-08-31 04:50:02,716.716 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:50:02,721.721 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-08-31 04:50:07,226.226 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 04:50:07,229.229 INFO    ] Checking for system updates...
[2026-08-31 04:50:07,271.271 INFO    ] 200
[2026-08-31 04:50:07,274.274 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:50:07,328.328 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:50:07,331.331 INFO    ] No update needed
[2026-08-31 04:50:07,334.334 INFO    ] Checking for camera pi updates...
[2026-08-31 04:50:07,369.369 INFO    ] 200
[2026-08-31 04:50:07,371.371 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:50:07,419.419 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:50:07,522.522 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:50:07,525.525 INFO    ] No camera update needed
[2026-08-31 04:50:07,528.528 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:50:07,531.531 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:50:07,537.537 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:50:07,543.543 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:50:09,585.585 INFO    ] ================================================
[2026-08-31 04:50:09,601.601 INFO    ] Launching Daemon at Mon Aug 31 04:50:09 IST 2026
[2026-08-31 04:50:09,612.612 INFO    ] ================================================
[2026-08-31 04:50:10,277.277 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:50:10
[2026-08-31 04:50:10,967.967 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:50:11,280.280 INFO    ] Initializing speech engine...
[2026-08-31 04:50:11,294.294 INFO    ] 2026-08-31 04:50:11
[2026-08-31 04:50:11,571.571 INFO    ] 2026-08-31 04:50:11
[2026-08-31 04:50:11,628.628 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:50:11,860.860 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:50:11,866.866 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:50:12,077.077 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:50:12,130.130 INFO    ] time= 31/08/2026 04:50:12
[2026-08-31 04:50:12,137.137 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:50:12,158.158 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:50:12,280.280 INFO    ] No existing commands found in stream
[2026-08-31 04:50:17,301.301 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:50:17,304.304 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-08-31 04:50:19,819.819 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 04:50:19,822.822 INFO    ] Checking for system updates...
[2026-08-31 04:50:19,864.864 INFO    ] 200
[2026-08-31 04:50:19,867.867 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:50:19,925.925 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:50:19,927.927 INFO    ] No update needed
[2026-08-31 04:50:19,930.930 INFO    ] Checking for camera pi updates...
[2026-08-31 04:50:19,969.969 INFO    ] 200
[2026-08-31 04:50:19,972.972 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:50:20,023.023 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:50:20,108.108 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:50:20,111.111 INFO    ] No camera update needed
[2026-08-31 04:50:20,113.113 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:50:20,116.116 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:50:20,123.123 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:50:20,129.129 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:50:22,172.172 INFO    ] ================================================
[2026-08-31 04:50:22,187.187 INFO    ] Launching Daemon at Mon Aug 31 04:50:22 IST 2026
[2026-08-31 04:50:22,198.198 INFO    ] ================================================
[2026-08-31 04:50:22,784.784 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:50:22
[2026-08-31 04:50:23,389.389 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:50:23,669.669 INFO    ] Initializing speech engine...
[2026-08-31 04:50:23,679.679 INFO    ] 2026-08-31 04:50:23
[2026-08-31 04:50:23,938.938 INFO    ] 2026-08-31 04:50:23
[2026-08-31 04:50:23,968.968 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:50:24,219.219 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:50:24,223.223 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:50:24,372.372 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:50:24,438.438 INFO    ] time= 31/08/2026 04:50:24
[2026-08-31 04:50:24,495.495 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:50:24,502.502 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:50:24,645.645 INFO    ] No existing commands found in stream
[2026-08-31 04:50:29,661.661 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:50:29,664.664 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-08-31 04:50:32,057.057 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 04:50:32,060.060 INFO    ] Checking for system updates...
[2026-08-31 04:50:32,103.103 INFO    ] 200
[2026-08-31 04:50:32,106.106 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:50:32,163.163 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:50:32,165.165 INFO    ] No update needed
[2026-08-31 04:50:32,168.168 INFO    ] Checking for camera pi updates...
[2026-08-31 04:50:32,208.208 INFO    ] 200
[2026-08-31 04:50:32,210.210 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:50:32,261.261 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:50:32,395.395 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:50:32,398.398 INFO    ] No camera update needed
[2026-08-31 04:50:32,401.401 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:50:32,403.403 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:50:32,409.409 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:50:32,414.414 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:50:34,455.455 INFO    ] ================================================
[2026-08-31 04:50:34,471.471 INFO    ] Launching Daemon at Mon Aug 31 04:50:34 IST 2026
[2026-08-31 04:50:34,481.481 INFO    ] ================================================
[2026-08-31 04:50:35,046.046 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:50:35
[2026-08-31 04:50:35,630.630 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:50:35,887.887 INFO    ] Initializing speech engine...
[2026-08-31 04:50:35,911.911 INFO    ] 2026-08-31 04:50:35
[2026-08-31 04:50:36,168.168 INFO    ] 2026-08-31 04:50:36
[2026-08-31 04:50:36,203.203 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:50:36,401.401 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:50:36,461.461 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:50:36,614.614 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:50:36,667.667 INFO    ] time= 31/08/2026 04:50:36
[2026-08-31 04:50:36,716.716 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:50:36,747.747 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:50:36,806.806 INFO    ] No existing commands found in stream
[2026-08-31 04:50:41,818.818 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:50:41,820.820 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-08-31 04:50:43,486.486 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 04:50:43,489.489 INFO    ] Checking for system updates...
[2026-08-31 04:50:43,524.524 INFO    ] 200
[2026-08-31 04:50:43,527.527 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:50:43,580.580 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:50:43,582.582 INFO    ] No update needed
[2026-08-31 04:50:43,584.584 INFO    ] Checking for camera pi updates...
[2026-08-31 04:50:43,621.621 INFO    ] 200
[2026-08-31 04:50:43,624.624 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:50:43,669.669 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:50:43,776.776 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:50:43,779.779 INFO    ] No camera update needed
[2026-08-31 04:50:43,781.781 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:50:43,784.784 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:50:43,789.789 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:50:43,794.794 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:50:45,834.834 INFO    ] ================================================
[2026-08-31 04:50:45,849.849 INFO    ] Launching Daemon at Mon Aug 31 04:50:45 IST 2026
[2026-08-31 04:50:45,859.859 INFO    ] ================================================
[2026-08-31 04:50:46,439.439 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:50:46
[2026-08-31 04:50:47,035.035 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:50:47,305.305 INFO    ] Initializing speech engine...
[2026-08-31 04:50:47,315.315 INFO    ] 2026-08-31 04:50:47
[2026-08-31 04:50:47,595.595 INFO    ] 2026-08-31 04:50:47
[2026-08-31 04:50:47,636.636 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:50:47,909.909 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:50:47,919.919 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:50:48,063.063 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:50:48,096.096 INFO    ] time= 31/08/2026 04:50:48
[2026-08-31 04:50:48,140.140 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:50:48,200.200 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:50:48,335.335 INFO    ] No existing commands found in stream
[2026-08-31 04:50:53,360.360 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:50:53,362.362 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-08-31 04:50:54,376.376 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 04:50:54,379.379 INFO    ] Checking for system updates...
[2026-08-31 04:50:54,415.415 INFO    ] 200
[2026-08-31 04:50:54,418.418 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:50:54,475.475 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:50:54,478.478 INFO    ] No update needed
[2026-08-31 04:50:54,480.480 INFO    ] Checking for camera pi updates...
[2026-08-31 04:50:54,513.513 INFO    ] 200
[2026-08-31 04:50:54,516.516 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:50:54,566.566 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:50:54,634.634 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:50:54,636.636 INFO    ] No camera update needed
[2026-08-31 04:50:54,639.639 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:50:54,641.641 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:50:54,646.646 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:50:54,652.652 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:50:56,691.691 INFO    ] ================================================
[2026-08-31 04:50:56,706.706 INFO    ] Launching Daemon at Mon Aug 31 04:50:56 IST 2026
[2026-08-31 04:50:56,716.716 INFO    ] ================================================
[2026-08-31 04:50:57,321.321 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:50:57
[2026-08-31 04:50:57,920.920 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:50:58,192.192 INFO    ] Initializing speech engine...
[2026-08-31 04:50:58,201.201 INFO    ] 2026-08-31 04:50:58
[2026-08-31 04:50:58,450.450 INFO    ] 2026-08-31 04:50:58
[2026-08-31 04:50:58,484.484 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:50:58,735.735 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:50:58,744.744 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:50:58,930.930 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:50:58,984.984 INFO    ] time= 31/08/2026 04:50:58
[2026-08-31 04:50:59,007.007 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:50:59,023.023 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:50:59,145.145 INFO    ] No existing commands found in stream
[2026-08-31 04:51:04,175.175 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:51:04,179.179 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-08-31 04:51:07,604.604 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 04:51:07,607.607 INFO    ] Checking for system updates...
[2026-08-31 04:51:07,643.643 INFO    ] 200
[2026-08-31 04:51:07,646.646 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:51:07,704.704 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:51:07,707.707 INFO    ] No update needed
[2026-08-31 04:51:07,710.710 INFO    ] Checking for camera pi updates...
[2026-08-31 04:51:07,747.747 INFO    ] 200
[2026-08-31 04:51:07,750.750 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:51:07,805.805 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:51:07,986.986 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:51:07,989.989 INFO    ] No camera update needed
[2026-08-31 04:51:07,991.991 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:51:07,994.994 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:51:08,000.000 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:51:08,006.006 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:51:10,047.047 INFO    ] ================================================
[2026-08-31 04:51:10,062.062 INFO    ] Launching Daemon at Mon Aug 31 04:51:10 IST 2026
[2026-08-31 04:51:10,072.072 INFO    ] ================================================
[2026-08-31 04:51:10,648.648 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:51:10
[2026-08-31 04:51:11,250.250 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:51:11,520.520 INFO    ] Initializing speech engine...
[2026-08-31 04:51:11,530.530 INFO    ] 2026-08-31 04:51:11
[2026-08-31 04:51:11,781.781 INFO    ] 2026-08-31 04:51:11
[2026-08-31 04:51:11,840.840 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:51:12,061.061 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:51:12,071.071 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:51:12,297.297 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:51:12,330.330 INFO    ] time= 31/08/2026 04:51:12
[2026-08-31 04:51:12,336.336 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:51:12,353.353 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:51:12,480.480 INFO    ] No existing commands found in stream
[2026-08-31 04:51:17,494.494 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:51:17,497.497 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-08-31 04:51:21,040.040 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 04:51:21,042.042 INFO    ] Checking for system updates...
[2026-08-31 04:51:21,081.081 INFO    ] 200
[2026-08-31 04:51:21,083.083 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:51:21,140.140 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:51:21,142.142 INFO    ] No update needed
[2026-08-31 04:51:21,144.144 INFO    ] Checking for camera pi updates...
[2026-08-31 04:51:21,180.180 INFO    ] 200
[2026-08-31 04:51:21,182.182 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:51:21,222.222 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:51:21,314.314 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:51:21,317.317 INFO    ] No camera update needed
[2026-08-31 04:51:21,319.319 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:51:21,322.322 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:51:21,327.327 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:51:21,332.332 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:51:23,372.372 INFO    ] ================================================
[2026-08-31 04:51:23,391.391 INFO    ] Launching Daemon at Mon Aug 31 04:51:23 IST 2026
[2026-08-31 04:51:23,401.401 INFO    ] ================================================
[2026-08-31 04:51:23,977.977 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:51:23
[2026-08-31 04:51:24,560.560 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:51:24,809.809 INFO    ] Initializing speech engine...
[2026-08-31 04:51:24,817.817 INFO    ] 2026-08-31 04:51:24
[2026-08-31 04:51:25,112.112 INFO    ] 2026-08-31 04:51:25
[2026-08-31 04:51:25,138.138 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:51:25,349.349 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:51:25,369.369 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:51:25,505.505 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:51:25,515.515 INFO    ] time= 31/08/2026 04:51:25
[2026-08-31 04:51:25,523.523 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:51:25,571.571 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:51:25,691.691 INFO    ] No existing commands found in stream
[2026-08-31 04:51:30,716.716 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:51:30,719.719 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-08-31 04:51:33,368.368 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 04:51:33,371.371 INFO    ] Checking for system updates...
[2026-08-31 04:51:33,406.406 INFO    ] 200
[2026-08-31 04:51:33,408.408 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:51:33,463.463 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:51:33,466.466 INFO    ] No update needed
[2026-08-31 04:51:33,472.472 INFO    ] Checking for camera pi updates...
[2026-08-31 04:51:33,505.505 INFO    ] 200
[2026-08-31 04:51:33,508.508 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:51:33,549.549 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:51:33,629.629 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:51:33,632.632 INFO    ] No camera update needed
[2026-08-31 04:51:33,634.634 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:51:33,636.636 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:51:33,641.641 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:51:33,647.647 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:51:35,688.688 INFO    ] ================================================
[2026-08-31 04:51:35,703.703 INFO    ] Launching Daemon at Mon Aug 31 04:51:35 IST 2026
[2026-08-31 04:51:35,714.714 INFO    ] ================================================
[2026-08-31 04:51:36,280.280 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:51:36
[2026-08-31 04:51:36,862.862 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:51:37,133.133 INFO    ] Initializing speech engine...
[2026-08-31 04:51:37,143.143 INFO    ] 2026-08-31 04:51:37
[2026-08-31 04:51:37,393.393 INFO    ] 2026-08-31 04:51:37
[2026-08-31 04:51:37,428.428 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:51:37,603.603 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:51:37,615.615 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:51:37,761.761 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:51:37,767.767 INFO    ] time= 31/08/2026 04:51:37
[2026-08-31 04:51:37,773.773 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:51:37,797.797 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:51:37,919.919 INFO    ] No existing commands found in stream
[2026-08-31 04:51:42,949.949 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:51:42,952.952 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-08-31 04:51:45,178.178 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 04:51:45,181.181 INFO    ] Checking for system updates...
[2026-08-31 04:51:45,220.220 INFO    ] 200
[2026-08-31 04:51:45,223.223 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:51:45,281.281 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:51:45,284.284 INFO    ] No update needed
[2026-08-31 04:51:45,286.286 INFO    ] Checking for camera pi updates...
[2026-08-31 04:51:45,321.321 INFO    ] 200
[2026-08-31 04:51:45,323.323 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:51:45,369.369 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:51:45,453.453 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:51:45,456.456 INFO    ] No camera update needed
[2026-08-31 04:51:45,458.458 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:51:45,461.461 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:51:45,466.466 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:51:45,471.471 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:51:47,510.510 INFO    ] ================================================
[2026-08-31 04:51:47,525.525 INFO    ] Launching Daemon at Mon Aug 31 04:51:47 IST 2026
[2026-08-31 04:51:47,535.535 INFO    ] ================================================
[2026-08-31 04:51:48,127.127 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:51:48
[2026-08-31 04:51:48,796.796 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:51:49,104.104 INFO    ] Initializing speech engine...
[2026-08-31 04:51:49,114.114 INFO    ] 2026-08-31 04:51:49
[2026-08-31 04:51:49,415.415 INFO    ] 2026-08-31 04:51:49
[2026-08-31 04:51:49,499.499 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:51:49,713.713 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:51:49,721.721 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:51:49,911.911 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:51:49,917.917 INFO    ] time= 31/08/2026 04:51:49
[2026-08-31 04:51:49,939.939 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:51:49,968.968 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:51:50,072.072 INFO    ] No existing commands found in stream
[2026-08-31 04:51:55,093.093 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:51:55,096.096 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-08-31 04:51:55,924.924 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 04:51:55,926.926 INFO    ] Checking for system updates...
[2026-08-31 04:51:55,966.966 INFO    ] 200
[2026-08-31 04:51:55,968.968 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:51:56,025.025 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:51:56,028.028 INFO    ] No update needed
[2026-08-31 04:51:56,030.030 INFO    ] Checking for camera pi updates...
[2026-08-31 04:51:56,063.063 INFO    ] 200
[2026-08-31 04:51:56,066.066 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:51:56,110.110 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:51:56,212.212 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:51:56,214.214 INFO    ] No camera update needed
[2026-08-31 04:51:56,216.216 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:51:56,219.219 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:51:56,224.224 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:51:56,229.229 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:51:58,268.268 INFO    ] ================================================
[2026-08-31 04:51:58,283.283 INFO    ] Launching Daemon at Mon Aug 31 04:51:58 IST 2026
[2026-08-31 04:51:58,294.294 INFO    ] ================================================
[2026-08-31 04:51:58,859.859 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:51:58
[2026-08-31 04:51:59,442.442 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:51:59,711.711 INFO    ] Initializing speech engine...
[2026-08-31 04:51:59,720.720 INFO    ] 2026-08-31 04:51:59
[2026-08-31 04:51:59,965.965 INFO    ] 2026-08-31 04:51:59
[2026-08-31 04:52:00,000.000 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:52:00,252.252 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:52:00,261.261 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:52:00,395.395 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:52:00,460.460 INFO    ] time= 31/08/2026 04:52:00
[2026-08-31 04:52:00,509.509 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:52:00,529.529 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:52:00,649.649 INFO    ] No existing commands found in stream
[2026-08-31 04:52:05,679.679 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:52:05,682.682 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-08-31 04:52:09,025.025 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 04:52:09,028.028 INFO    ] Checking for system updates...
[2026-08-31 04:52:09,064.064 INFO    ] 200
[2026-08-31 04:52:09,066.066 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:52:09,122.122 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:52:09,124.124 INFO    ] No update needed
[2026-08-31 04:52:09,127.127 INFO    ] Checking for camera pi updates...
[2026-08-31 04:52:09,165.165 INFO    ] 200
[2026-08-31 04:52:09,168.168 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:52:09,208.208 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:52:09,288.288 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:52:09,291.291 INFO    ] No camera update needed
[2026-08-31 04:52:09,293.293 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:52:09,295.295 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:52:09,300.300 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:52:09,305.305 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:52:11,347.347 INFO    ] ================================================
[2026-08-31 04:52:11,362.362 INFO    ] Launching Daemon at Mon Aug 31 04:52:11 IST 2026
[2026-08-31 04:52:11,373.373 INFO    ] ================================================
[2026-08-31 04:52:11,943.943 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:52:11
[2026-08-31 04:52:12,530.530 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:52:12,789.789 INFO    ] Initializing speech engine...
[2026-08-31 04:52:12,795.795 INFO    ] 2026-08-31 04:52:12
[2026-08-31 04:52:13,087.087 INFO    ] 2026-08-31 04:52:13
[2026-08-31 04:52:13,121.121 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:52:13,300.300 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:52:13,313.313 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:52:13,457.457 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:52:13,465.465 INFO    ] time= 31/08/2026 04:52:13
[2026-08-31 04:52:13,510.510 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:52:13,531.531 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:52:13,657.657 INFO    ] No existing commands found in stream
[2026-08-31 04:52:18,668.668 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:52:18,671.671 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-08-31 04:52:21,249.249 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 04:52:21,252.252 INFO    ] Checking for system updates...
[2026-08-31 04:52:21,292.292 INFO    ] 200
[2026-08-31 04:52:21,295.295 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:52:21,352.352 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:52:21,355.355 INFO    ] No update needed
[2026-08-31 04:52:21,357.357 INFO    ] Checking for camera pi updates...
[2026-08-31 04:52:21,394.394 INFO    ] 200
[2026-08-31 04:52:21,396.396 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:52:21,440.440 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:52:21,527.527 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:52:21,529.529 INFO    ] No camera update needed
[2026-08-31 04:52:21,532.532 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:52:21,534.534 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:52:21,539.539 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:52:21,544.544 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:52:23,587.587 INFO    ] ================================================
[2026-08-31 04:52:23,602.602 INFO    ] Launching Daemon at Mon Aug 31 04:52:23 IST 2026
[2026-08-31 04:52:23,613.613 INFO    ] ================================================
[2026-08-31 04:52:24,177.177 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:52:24
[2026-08-31 04:52:24,759.759 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:52:25,011.011 INFO    ] Initializing speech engine...
[2026-08-31 04:52:25,020.020 INFO    ] 2026-08-31 04:52:25
[2026-08-31 04:52:25,316.316 INFO    ] 2026-08-31 04:52:25
[2026-08-31 04:52:25,352.352 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:52:25,573.573 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:52:25,582.582 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:52:25,799.799 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:52:25,805.805 INFO    ] time= 31/08/2026 04:52:25
[2026-08-31 04:52:25,865.865 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:52:25,914.914 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:52:26,007.007 INFO    ] No existing commands found in stream
[2026-08-31 04:52:31,019.019 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:52:31,022.022 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-08-31 04:52:34,010.010 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 04:52:34,012.012 INFO    ] Checking for system updates...
[2026-08-31 04:52:34,051.051 INFO    ] 200
[2026-08-31 04:52:34,053.053 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:52:34,105.105 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:52:34,108.108 INFO    ] No update needed
[2026-08-31 04:52:34,110.110 INFO    ] Checking for camera pi updates...
[2026-08-31 04:52:34,147.147 INFO    ] 200
[2026-08-31 04:52:34,150.150 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:52:34,193.193 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:52:34,284.284 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:52:34,287.287 INFO    ] No camera update needed
[2026-08-31 04:52:34,289.289 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:52:34,291.291 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:52:34,297.297 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:52:34,302.302 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:52:36,341.341 INFO    ] ================================================
[2026-08-31 04:52:36,357.357 INFO    ] Launching Daemon at Mon Aug 31 04:52:36 IST 2026
[2026-08-31 04:52:36,367.367 INFO    ] ================================================
[2026-08-31 04:52:36,951.951 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:52:36
[2026-08-31 04:52:37,533.533 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:52:37,800.800 INFO    ] Initializing speech engine...
[2026-08-31 04:52:37,810.810 INFO    ] 2026-08-31 04:52:37
[2026-08-31 04:52:38,056.056 INFO    ] 2026-08-31 04:52:38
[2026-08-31 04:52:38,120.120 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:52:38,343.343 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:52:38,353.353 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:52:38,576.576 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:52:38,610.610 INFO    ] time= 31/08/2026 04:52:38
[2026-08-31 04:52:38,616.616 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:52:38,634.634 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:52:38,764.764 INFO    ] No existing commands found in stream
[2026-08-31 04:52:43,776.776 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:52:43,779.779 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-08-31 04:52:45,700.700 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 04:52:45,703.703 INFO    ] Checking for system updates...
[2026-08-31 04:52:45,738.738 INFO    ] 200
[2026-08-31 04:52:45,740.740 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:52:45,793.793 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:52:45,795.795 INFO    ] No update needed
[2026-08-31 04:52:45,798.798 INFO    ] Checking for camera pi updates...
[2026-08-31 04:52:45,831.831 INFO    ] 200
[2026-08-31 04:52:45,833.833 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:52:45,873.873 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:52:45,954.954 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:52:45,956.956 INFO    ] No camera update needed
[2026-08-31 04:52:45,959.959 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:52:45,961.961 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:52:45,966.966 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:52:45,971.971 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:52:48,014.014 INFO    ] ================================================
[2026-08-31 04:52:48,029.029 INFO    ] Launching Daemon at Mon Aug 31 04:52:48 IST 2026
[2026-08-31 04:52:48,039.039 INFO    ] ================================================
[2026-08-31 04:52:48,619.619 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:52:48
[2026-08-31 04:52:49,214.214 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:52:49,510.510 INFO    ] Initializing speech engine...
[2026-08-31 04:52:49,523.523 INFO    ] 2026-08-31 04:52:49
[2026-08-31 04:52:49,801.801 INFO    ] 2026-08-31 04:52:49
[2026-08-31 04:52:49,845.845 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:52:50,066.066 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:52:50,077.077 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:52:50,282.282 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:52:50,335.335 INFO    ] time= 31/08/2026 04:52:50
[2026-08-31 04:52:50,341.341 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:52:50,359.359 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:52:50,480.480 INFO    ] No existing commands found in stream
[2026-08-31 04:52:55,500.500 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:52:55,503.503 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-08-31 04:52:58,163.163 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 04:52:58,166.166 INFO    ] Checking for system updates...
[2026-08-31 04:52:58,202.202 INFO    ] 200
[2026-08-31 04:52:58,204.204 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:52:58,268.268 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:52:58,270.270 INFO    ] No update needed
[2026-08-31 04:52:58,273.273 INFO    ] Checking for camera pi updates...
[2026-08-31 04:52:58,313.313 INFO    ] 200
[2026-08-31 04:52:58,315.315 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:52:58,359.359 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:52:58,459.459 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:52:58,462.462 INFO    ] No camera update needed
[2026-08-31 04:52:58,464.464 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:52:58,466.466 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:52:58,473.473 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:52:58,478.478 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:53:00,517.517 INFO    ] ================================================
[2026-08-31 04:53:00,532.532 INFO    ] Launching Daemon at Mon Aug 31 04:53:00 IST 2026
[2026-08-31 04:53:00,543.543 INFO    ] ================================================
[2026-08-31 04:53:01,112.112 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:53:01
[2026-08-31 04:53:01,762.762 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:53:02,184.184 INFO    ] Initializing speech engine...
[2026-08-31 04:53:02,188.188 INFO    ] 2026-08-31 04:53:02
[2026-08-31 04:53:02,498.498 INFO    ] 2026-08-31 04:53:02
[2026-08-31 04:53:02,537.537 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:53:02,802.802 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:53:02,812.812 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:53:02,974.974 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:53:03,054.054 INFO    ] time= 31/08/2026 04:53:02
[2026-08-31 04:53:03,095.095 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:53:03,119.119 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:53:03,236.236 INFO    ] No existing commands found in stream
[2026-08-31 04:53:08,251.251 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:53:08,254.254 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-08-31 04:53:12,538.538 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 04:53:12,541.541 INFO    ] Checking for system updates...
[2026-08-31 04:53:12,577.577 INFO    ] 200
[2026-08-31 04:53:12,580.580 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:53:12,642.642 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:53:12,645.645 INFO    ] No update needed
[2026-08-31 04:53:12,648.648 INFO    ] Checking for camera pi updates...
[2026-08-31 04:53:12,687.687 INFO    ] 200
[2026-08-31 04:53:12,690.690 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:53:12,737.737 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:53:12,922.922 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:53:12,925.925 INFO    ] No camera update needed
[2026-08-31 04:53:12,927.927 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:53:12,930.930 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:53:12,936.936 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:53:12,943.943 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:53:14,985.985 INFO    ] ================================================
[2026-08-31 04:53:15,000.000 INFO    ] Launching Daemon at Mon Aug 31 04:53:14 IST 2026
[2026-08-31 04:53:15,011.011 INFO    ] ================================================
[2026-08-31 04:53:15,576.576 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:53:15
[2026-08-31 04:53:16,162.162 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:53:16,428.428 INFO    ] Initializing speech engine...
[2026-08-31 04:53:16,437.437 INFO    ] 2026-08-31 04:53:16
[2026-08-31 04:53:16,683.683 INFO    ] 2026-08-31 04:53:16
[2026-08-31 04:53:16,718.718 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:53:16,973.973 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:53:16,978.978 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:53:17,113.113 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:53:17,188.188 INFO    ] time= 31/08/2026 04:53:17
[2026-08-31 04:53:17,240.240 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:53:17,247.247 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:53:17,406.406 INFO    ] No existing commands found in stream
[2026-08-31 04:53:22,437.437 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:53:22,440.440 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-08-31 04:53:25,042.042 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 04:53:25,045.045 INFO    ] Checking for system updates...
[2026-08-31 04:53:25,081.081 INFO    ] 200
[2026-08-31 04:53:25,083.083 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:53:25,135.135 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:53:25,138.138 INFO    ] No update needed
[2026-08-31 04:53:25,140.140 INFO    ] Checking for camera pi updates...
[2026-08-31 04:53:25,178.178 INFO    ] 200
[2026-08-31 04:53:25,181.181 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:53:25,226.226 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:53:25,306.306 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:53:25,309.309 INFO    ] No camera update needed
[2026-08-31 04:53:25,312.312 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:53:25,314.314 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:53:25,319.319 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:53:25,325.325 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:53:27,365.365 INFO    ] ================================================
[2026-08-31 04:53:27,381.381 INFO    ] Launching Daemon at Mon Aug 31 04:53:27 IST 2026
[2026-08-31 04:53:27,393.393 INFO    ] ================================================
[2026-08-31 04:53:27,960.960 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:53:27
[2026-08-31 04:53:28,552.552 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:53:28,809.809 INFO    ] Initializing speech engine...
[2026-08-31 04:53:28,817.817 INFO    ] 2026-08-31 04:53:28
[2026-08-31 04:53:29,130.130 INFO    ] 2026-08-31 04:53:29
[2026-08-31 04:53:29,156.156 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:53:29,320.320 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:53:29,328.328 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:53:29,484.484 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:53:29,497.497 INFO    ] time= 31/08/2026 04:53:29
[2026-08-31 04:53:29,526.526 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:53:29,533.533 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:53:29,593.593 INFO    ] No existing commands found in stream
[2026-08-31 04:53:34,605.605 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:53:34,608.608 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-08-31 04:53:35,127.127 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 04:53:35,130.130 INFO    ] Checking for system updates...
[2026-08-31 04:53:35,169.169 INFO    ] 200
[2026-08-31 04:53:35,172.172 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:53:35,232.232 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:53:35,234.234 INFO    ] No update needed
[2026-08-31 04:53:35,236.236 INFO    ] Checking for camera pi updates...
[2026-08-31 04:53:35,274.274 INFO    ] 200
[2026-08-31 04:53:35,276.276 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:53:35,322.322 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:53:35,403.403 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:53:35,405.405 INFO    ] No camera update needed
[2026-08-31 04:53:35,408.408 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:53:35,410.410 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:53:35,415.415 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:53:35,420.420 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:53:37,461.461 INFO    ] ================================================
[2026-08-31 04:53:37,477.477 INFO    ] Launching Daemon at Mon Aug 31 04:53:37 IST 2026
[2026-08-31 04:53:37,488.488 INFO    ] ================================================
[2026-08-31 04:53:38,152.152 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:53:38
[2026-08-31 04:53:38,740.740 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:53:39,008.008 INFO    ] Initializing speech engine...
[2026-08-31 04:53:39,017.017 INFO    ] 2026-08-31 04:53:39
[2026-08-31 04:53:39,263.263 INFO    ] 2026-08-31 04:53:39
[2026-08-31 04:53:39,299.299 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:53:39,492.492 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:53:39,525.525 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:53:39,693.693 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:53:39,732.732 INFO    ] time= 31/08/2026 04:53:39
[2026-08-31 04:53:39,797.797 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:53:39,824.824 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:53:39,951.951 INFO    ] No existing commands found in stream
[2026-08-31 04:53:44,976.976 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:53:44,979.979 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-08-31 04:53:49,279.279 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 04:53:49,282.282 INFO    ] Checking for system updates...
[2026-08-31 04:53:49,321.321 INFO    ] 200
[2026-08-31 04:53:49,324.324 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:53:49,376.376 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:53:49,378.378 INFO    ] No update needed
[2026-08-31 04:53:49,381.381 INFO    ] Checking for camera pi updates...
[2026-08-31 04:53:49,415.415 INFO    ] 200
[2026-08-31 04:53:49,417.417 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:53:49,463.463 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:53:49,545.545 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:53:49,548.548 INFO    ] No camera update needed
[2026-08-31 04:53:49,550.550 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:53:49,552.552 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:53:49,558.558 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:53:49,563.563 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:53:51,605.605 INFO    ] ================================================
[2026-08-31 04:53:51,620.620 INFO    ] Launching Daemon at Mon Aug 31 04:53:51 IST 2026
[2026-08-31 04:53:51,631.631 INFO    ] ================================================
[2026-08-31 04:53:52,210.210 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:53:52
[2026-08-31 04:53:52,813.813 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:53:53,087.087 INFO    ] Initializing speech engine...
[2026-08-31 04:53:53,095.095 INFO    ] 2026-08-31 04:53:53
[2026-08-31 04:53:53,354.354 INFO    ] 2026-08-31 04:53:53
[2026-08-31 04:53:53,408.408 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:53:53,580.580 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:53:53,635.635 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:53:53,857.857 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:53:53,901.901 INFO    ] time= 31/08/2026 04:53:53
[2026-08-31 04:53:53,906.906 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:53:53,924.924 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:53:54,034.034 INFO    ] No existing commands found in stream
[2026-08-31 04:53:59,059.059 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:53:59,062.062 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-08-31 04:54:03,447.447 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 04:54:03,449.449 INFO    ] Checking for system updates...
[2026-08-31 04:54:03,485.485 INFO    ] 200
[2026-08-31 04:54:03,487.487 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:54:03,575.575 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:54:03,578.578 INFO    ] No update needed
[2026-08-31 04:54:03,581.581 INFO    ] Checking for camera pi updates...
[2026-08-31 04:54:03,619.619 INFO    ] 200
[2026-08-31 04:54:03,621.621 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:54:03,669.669 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:54:03,749.749 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:54:03,752.752 INFO    ] No camera update needed
[2026-08-31 04:54:03,754.754 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:54:03,756.756 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:54:03,762.762 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:54:03,766.766 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:54:05,808.808 INFO    ] ================================================
[2026-08-31 04:54:05,823.823 INFO    ] Launching Daemon at Mon Aug 31 04:54:05 IST 2026
[2026-08-31 04:54:05,834.834 INFO    ] ================================================
[2026-08-31 04:54:06,414.414 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:54:06
[2026-08-31 04:54:07,001.001 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:54:07,248.248 INFO    ] Initializing speech engine...
[2026-08-31 04:54:07,270.270 INFO    ] 2026-08-31 04:54:07
[2026-08-31 04:54:07,524.524 INFO    ] 2026-08-31 04:54:07
[2026-08-31 04:54:07,559.559 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:54:07,730.730 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:54:07,742.742 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:54:07,949.949 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:54:07,997.997 INFO    ] time= 31/08/2026 04:54:07
[2026-08-31 04:54:08,056.056 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:54:08,082.082 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:54:08,215.215 INFO    ] No existing commands found in stream
[2026-08-31 04:54:13,240.240 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:54:13,242.242 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-08-31 04:54:15,491.491 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 04:54:15,493.493 INFO    ] Checking for system updates...
[2026-08-31 04:54:15,540.540 INFO    ] 200
[2026-08-31 04:54:15,543.543 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:54:15,615.615 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:54:15,618.618 INFO    ] No update needed
[2026-08-31 04:54:15,620.620 INFO    ] Checking for camera pi updates...
[2026-08-31 04:54:15,663.663 INFO    ] 200
[2026-08-31 04:54:15,666.666 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:54:15,736.736 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:54:15,814.814 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:54:15,817.817 INFO    ] No camera update needed
[2026-08-31 04:54:15,819.819 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:54:15,822.822 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:54:15,827.827 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:54:15,832.832 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:54:17,875.875 INFO    ] ================================================
[2026-08-31 04:54:17,900.900 INFO    ] Launching Daemon at Mon Aug 31 04:54:17 IST 2026
[2026-08-31 04:54:17,912.912 INFO    ] ================================================
[2026-08-31 04:54:18,500.500 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:54:18
[2026-08-31 04:54:19,104.104 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:54:19,358.358 INFO    ] Initializing speech engine...
[2026-08-31 04:54:19,370.370 INFO    ] 2026-08-31 04:54:19
[2026-08-31 04:54:19,657.657 INFO    ] 2026-08-31 04:54:19
[2026-08-31 04:54:19,703.703 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:54:19,888.888 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:54:19,904.904 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:54:20,037.037 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:54:20,045.045 INFO    ] time= 31/08/2026 04:54:20
[2026-08-31 04:54:20,091.091 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:54:20,112.112 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:54:20,231.231 INFO    ] No existing commands found in stream
[2026-08-31 04:54:25,249.249 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:54:25,252.252 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-08-31 04:54:29,261.261 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 04:54:29,263.263 INFO    ] Checking for system updates...
[2026-08-31 04:54:29,302.302 INFO    ] 200
[2026-08-31 04:54:29,304.304 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:54:29,356.356 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:54:29,359.359 INFO    ] No update needed
[2026-08-31 04:54:29,361.361 INFO    ] Checking for camera pi updates...
[2026-08-31 04:54:29,395.395 INFO    ] 200
[2026-08-31 04:54:29,398.398 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:54:29,438.438 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:54:29,517.517 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:54:29,520.520 INFO    ] No camera update needed
[2026-08-31 04:54:29,522.522 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:54:29,524.524 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:54:29,530.530 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:54:29,535.535 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:54:31,576.576 INFO    ] ================================================
[2026-08-31 04:54:31,592.592 INFO    ] Launching Daemon at Mon Aug 31 04:54:31 IST 2026
[2026-08-31 04:54:31,603.603 INFO    ] ================================================
[2026-08-31 04:54:32,278.278 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:54:32
[2026-08-31 04:54:32,911.911 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:54:33,165.165 INFO    ] Initializing speech engine...
[2026-08-31 04:54:33,188.188 INFO    ] 2026-08-31 04:54:33
[2026-08-31 04:54:33,439.439 INFO    ] 2026-08-31 04:54:33
[2026-08-31 04:54:33,474.474 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:54:33,646.646 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:54:33,659.659 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:54:33,803.803 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:54:33,808.808 INFO    ] time= 31/08/2026 04:54:33
[2026-08-31 04:54:33,814.814 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:54:33,865.865 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:54:34,006.006 INFO    ] No existing commands found in stream
[2026-08-31 04:54:39,018.018 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:54:39,021.021 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-08-31 04:54:40,726.726 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 04:54:40,729.729 INFO    ] Checking for system updates...
[2026-08-31 04:54:40,769.769 INFO    ] 200
[2026-08-31 04:54:40,771.771 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:54:40,828.828 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:54:40,830.830 INFO    ] No update needed
[2026-08-31 04:54:40,833.833 INFO    ] Checking for camera pi updates...
[2026-08-31 04:54:40,869.869 INFO    ] 200
[2026-08-31 04:54:40,871.871 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:54:40,915.915 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:54:40,997.997 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:54:40,999.999 INFO    ] No camera update needed
[2026-08-31 04:54:41,001.001 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:54:41,004.004 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:54:41,009.009 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:54:41,014.014 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:54:43,056.056 INFO    ] ================================================
[2026-08-31 04:54:43,072.072 INFO    ] Launching Daemon at Mon Aug 31 04:54:43 IST 2026
[2026-08-31 04:54:43,082.082 INFO    ] ================================================
[2026-08-31 04:54:43,658.658 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:54:43
[2026-08-31 04:54:44,243.243 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:54:44,494.494 INFO    ] Initializing speech engine...
[2026-08-31 04:54:44,503.503 INFO    ] 2026-08-31 04:54:44
[2026-08-31 04:54:44,791.791 INFO    ] 2026-08-31 04:54:44
[2026-08-31 04:54:44,828.828 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:54:45,253.253 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:54:45,302.302 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:54:45,450.450 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:54:45,459.459 INFO    ] time= 31/08/2026 04:54:45
[2026-08-31 04:54:45,467.467 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:54:45,526.526 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:54:45,648.648 INFO    ] No existing commands found in stream
[2026-08-31 04:54:50,670.670 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:54:50,673.673 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-08-31 04:54:53,937.937 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 04:54:53,940.940 INFO    ] Checking for system updates...
[2026-08-31 04:54:53,979.979 INFO    ] 200
[2026-08-31 04:54:53,981.981 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:54:54,038.038 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:54:54,040.040 INFO    ] No update needed
[2026-08-31 04:54:54,043.043 INFO    ] Checking for camera pi updates...
[2026-08-31 04:54:54,076.076 INFO    ] 200
[2026-08-31 04:54:54,079.079 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:54:54,122.122 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:54:54,209.209 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:54:54,211.211 INFO    ] No camera update needed
[2026-08-31 04:54:54,214.214 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:54:54,216.216 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:54:54,221.221 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:54:54,226.226 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:54:56,266.266 INFO    ] ================================================
[2026-08-31 04:54:56,282.282 INFO    ] Launching Daemon at Mon Aug 31 04:54:56 IST 2026
[2026-08-31 04:54:56,292.292 INFO    ] ================================================
[2026-08-31 04:54:56,861.861 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:54:56
[2026-08-31 04:54:57,444.444 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:54:57,698.698 INFO    ] Initializing speech engine...
[2026-08-31 04:54:57,720.720 INFO    ] 2026-08-31 04:54:57
[2026-08-31 04:54:57,994.994 INFO    ] 2026-08-31 04:54:57
[2026-08-31 04:54:58,030.030 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:54:58,248.248 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:54:58,291.291 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:54:58,464.464 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:54:58,486.486 INFO    ] time= 31/08/2026 04:54:58
[2026-08-31 04:54:58,540.540 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:54:58,579.579 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:54:58,664.664 INFO    ] No existing commands found in stream
[2026-08-31 04:55:03,676.676 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:55:03,679.679 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-08-31 04:55:08,058.058 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 04:55:08,061.061 INFO    ] Checking for system updates...
[2026-08-31 04:55:08,097.097 INFO    ] 200
[2026-08-31 04:55:08,099.099 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:55:08,158.158 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:55:08,160.160 INFO    ] No update needed
[2026-08-31 04:55:08,162.162 INFO    ] Checking for camera pi updates...
[2026-08-31 04:55:08,199.199 INFO    ] 200
[2026-08-31 04:55:08,202.202 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:55:08,246.246 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:55:08,326.326 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:55:08,328.328 INFO    ] No camera update needed
[2026-08-31 04:55:08,331.331 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:55:08,333.333 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:55:08,338.338 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:55:08,343.343 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:55:10,383.383 INFO    ] ================================================
[2026-08-31 04:55:10,399.399 INFO    ] Launching Daemon at Mon Aug 31 04:55:10 IST 2026
[2026-08-31 04:55:10,409.409 INFO    ] ================================================
[2026-08-31 04:55:11,055.055 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:55:11
[2026-08-31 04:55:11,721.721 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:55:12,024.024 INFO    ] Initializing speech engine...
[2026-08-31 04:55:12,038.038 INFO    ] 2026-08-31 04:55:12
[2026-08-31 04:55:12,347.347 INFO    ] 2026-08-31 04:55:12
[2026-08-31 04:55:12,433.433 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:55:12,646.646 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:55:12,651.651 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:55:12,844.844 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:55:12,852.852 INFO    ] time= 31/08/2026 04:55:12
[2026-08-31 04:55:12,873.873 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:55:12,900.900 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:55:13,012.012 INFO    ] No existing commands found in stream
[2026-08-31 04:55:18,037.037 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:55:18,040.040 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-08-31 04:55:18,664.664 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 04:55:18,667.667 INFO    ] Checking for system updates...
[2026-08-31 04:55:18,707.707 INFO    ] 200
[2026-08-31 04:55:18,710.710 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:55:18,769.769 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:55:18,772.772 INFO    ] No update needed
[2026-08-31 04:55:18,774.774 INFO    ] Checking for camera pi updates...
[2026-08-31 04:55:18,812.812 INFO    ] 200
[2026-08-31 04:55:18,815.815 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:55:18,860.860 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:55:19,042.042 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:55:19,045.045 INFO    ] No camera update needed
[2026-08-31 04:55:19,047.047 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:55:19,050.050 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:55:19,056.056 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:55:19,062.062 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:55:21,102.102 INFO    ] ================================================
[2026-08-31 04:55:21,117.117 INFO    ] Launching Daemon at Mon Aug 31 04:55:21 IST 2026
[2026-08-31 04:55:21,129.129 INFO    ] ================================================
[2026-08-31 04:55:21,721.721 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:55:21
[2026-08-31 04:55:22,378.378 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:55:22,674.674 INFO    ] Initializing speech engine...
[2026-08-31 04:55:22,681.681 INFO    ] 2026-08-31 04:55:22
[2026-08-31 04:55:22,964.964 INFO    ] 2026-08-31 04:55:22
[2026-08-31 04:55:23,009.009 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:55:23,293.293 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:55:23,298.298 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:55:23,493.493 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:55:23,510.510 INFO    ] time= 31/08/2026 04:55:23
[2026-08-31 04:55:23,522.522 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:55:23,549.549 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:55:23,653.653 INFO    ] No existing commands found in stream
[2026-08-31 04:55:28,670.670 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:55:28,673.673 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-08-31 04:55:30,139.139 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 04:55:30,142.142 INFO    ] Checking for system updates...
[2026-08-31 04:55:30,182.182 INFO    ] 200
[2026-08-31 04:55:30,185.185 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:55:30,239.239 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:55:30,242.242 INFO    ] No update needed
[2026-08-31 04:55:30,244.244 INFO    ] Checking for camera pi updates...
[2026-08-31 04:55:30,279.279 INFO    ] 200
[2026-08-31 04:55:30,282.282 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:55:30,323.323 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:55:30,406.406 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:55:30,409.409 INFO    ] No camera update needed
[2026-08-31 04:55:30,412.412 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:55:30,414.414 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:55:30,420.420 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:55:30,426.426 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:55:32,473.473 INFO    ] ================================================
[2026-08-31 04:55:32,489.489 INFO    ] Launching Daemon at Mon Aug 31 04:55:32 IST 2026
[2026-08-31 04:55:32,500.500 INFO    ] ================================================
[2026-08-31 04:55:33,135.135 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:55:33
[2026-08-31 04:55:33,790.790 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:55:34,095.095 INFO    ] Initializing speech engine...
[2026-08-31 04:55:34,106.106 INFO    ] 2026-08-31 04:55:34
[2026-08-31 04:55:34,382.382 INFO    ] 2026-08-31 04:55:34
[2026-08-31 04:55:34,425.425 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:55:34,676.676 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:55:34,694.694 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:55:34,909.909 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:55:34,916.916 INFO    ] time= 31/08/2026 04:55:34
[2026-08-31 04:55:34,935.935 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:55:34,953.953 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:55:35,071.071 INFO    ] No existing commands found in stream
[2026-08-31 04:55:40,100.100 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:55:40,103.103 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-08-31 04:55:44,464.464 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 04:55:44,467.467 INFO    ] Checking for system updates...
[2026-08-31 04:55:44,511.511 INFO    ] 200
[2026-08-31 04:55:44,513.513 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:55:44,567.567 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:55:44,570.570 INFO    ] No update needed
[2026-08-31 04:55:44,572.572 INFO    ] Checking for camera pi updates...
[2026-08-31 04:55:44,609.609 INFO    ] 200
[2026-08-31 04:55:44,612.612 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:55:44,659.659 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:55:44,758.758 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:55:44,761.761 INFO    ] No camera update needed
[2026-08-31 04:55:44,763.763 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:55:44,766.766 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:55:44,772.772 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:55:44,778.778 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:55:46,819.819 INFO    ] ================================================
[2026-08-31 04:55:46,834.834 INFO    ] Launching Daemon at Mon Aug 31 04:55:46 IST 2026
[2026-08-31 04:55:46,845.845 INFO    ] ================================================
[2026-08-31 04:55:47,411.411 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:55:47
[2026-08-31 04:55:48,003.003 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:55:48,265.265 INFO    ] Initializing speech engine...
[2026-08-31 04:55:48,281.281 INFO    ] 2026-08-31 04:55:48
[2026-08-31 04:55:48,577.577 INFO    ] 2026-08-31 04:55:48
[2026-08-31 04:55:48,607.607 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:55:48,814.814 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:55:48,830.830 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:55:48,990.990 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:55:48,999.999 INFO    ] time= 31/08/2026 04:55:48
[2026-08-31 04:55:49,007.007 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:55:49,040.040 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:55:49,169.169 INFO    ] No existing commands found in stream
[2026-08-31 04:55:54,199.199 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:55:54,202.202 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-08-31 04:55:57,506.506 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 04:55:57,508.508 INFO    ] Checking for system updates...
[2026-08-31 04:55:57,549.549 INFO    ] 200
[2026-08-31 04:55:57,552.552 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:55:57,606.606 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:55:57,608.608 INFO    ] No update needed
[2026-08-31 04:55:57,611.611 INFO    ] Checking for camera pi updates...
[2026-08-31 04:55:57,645.645 INFO    ] 200
[2026-08-31 04:55:57,648.648 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:55:57,690.690 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:55:57,763.763 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:55:57,765.765 INFO    ] No camera update needed
[2026-08-31 04:55:57,768.768 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:55:57,771.771 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:55:57,777.777 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:55:57,782.782 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:55:59,822.822 INFO    ] ================================================
[2026-08-31 04:55:59,837.837 INFO    ] Launching Daemon at Mon Aug 31 04:55:59 IST 2026
[2026-08-31 04:55:59,848.848 INFO    ] ================================================
[2026-08-31 04:56:00,448.448 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:56:00
[2026-08-31 04:56:01,041.041 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:56:01,291.291 INFO    ] Initializing speech engine...
[2026-08-31 04:56:01,303.303 INFO    ] 2026-08-31 04:56:01
[2026-08-31 04:56:01,586.586 INFO    ] 2026-08-31 04:56:01
[2026-08-31 04:56:01,680.680 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:56:01,880.880 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:56:01,884.884 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:56:02,036.036 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:56:02,040.040 INFO    ] time= 31/08/2026 04:56:02
[2026-08-31 04:56:02,044.044 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:56:02,047.047 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:56:02,116.116 INFO    ] No existing commands found in stream
[2026-08-31 04:56:07,126.126 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:56:07,130.130 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-08-31 04:56:09,025.025 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 04:56:09,027.027 INFO    ] Checking for system updates...
[2026-08-31 04:56:09,064.064 INFO    ] 200
[2026-08-31 04:56:09,067.067 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:56:09,119.119 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:56:09,121.121 INFO    ] No update needed
[2026-08-31 04:56:09,124.124 INFO    ] Checking for camera pi updates...
[2026-08-31 04:56:09,174.174 INFO    ] 200
[2026-08-31 04:56:09,177.177 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:56:09,217.217 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:56:09,269.269 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:56:09,271.271 INFO    ] No camera update needed
[2026-08-31 04:56:09,274.274 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:56:09,276.276 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:56:09,281.281 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:56:09,286.286 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:56:11,328.328 INFO    ] ================================================
[2026-08-31 04:56:11,343.343 INFO    ] Launching Daemon at Mon Aug 31 04:56:11 IST 2026
[2026-08-31 04:56:11,354.354 INFO    ] ================================================
[2026-08-31 04:56:11,941.941 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:56:11
[2026-08-31 04:56:12,532.532 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:56:12,784.784 INFO    ] Initializing speech engine...
[2026-08-31 04:56:12,796.796 INFO    ] 2026-08-31 04:56:12
[2026-08-31 04:56:13,063.063 INFO    ] 2026-08-31 04:56:13
[2026-08-31 04:56:13,099.099 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:56:13,277.277 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:56:13,289.289 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:56:13,435.435 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:56:13,443.443 INFO    ] time= 31/08/2026 04:56:13
[2026-08-31 04:56:13,449.449 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:56:13,501.501 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:56:13,623.623 INFO    ] No existing commands found in stream
[2026-08-31 04:56:18,653.653 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:56:18,656.656 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-08-31 04:56:19,417.417 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 04:56:19,420.420 INFO    ] Checking for system updates...
[2026-08-31 04:56:19,456.456 INFO    ] 200
[2026-08-31 04:56:19,459.459 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:56:19,511.511 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:56:19,514.514 INFO    ] No update needed
[2026-08-31 04:56:19,516.516 INFO    ] Checking for camera pi updates...
[2026-08-31 04:56:19,554.554 INFO    ] 200
[2026-08-31 04:56:19,556.556 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:56:19,601.601 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:56:19,683.683 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:56:19,686.686 INFO    ] No camera update needed
[2026-08-31 04:56:19,688.688 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:56:19,690.690 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:56:19,696.696 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:56:19,701.701 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:56:21,743.743 INFO    ] ================================================
[2026-08-31 04:56:21,758.758 INFO    ] Launching Daemon at Mon Aug 31 04:56:21 IST 2026
[2026-08-31 04:56:21,768.768 INFO    ] ================================================
[2026-08-31 04:56:22,355.355 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:56:22
[2026-08-31 04:56:22,970.970 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:56:23,244.244 INFO    ] Initializing speech engine...
[2026-08-31 04:56:23,259.259 INFO    ] 2026-08-31 04:56:23
[2026-08-31 04:56:23,525.525 INFO    ] 2026-08-31 04:56:23
[2026-08-31 04:56:23,568.568 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:56:23,765.765 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:56:23,818.818 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:56:23,958.958 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:56:24,018.018 INFO    ] time= 31/08/2026 04:56:23
[2026-08-31 04:56:24,083.083 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:56:24,093.093 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:56:24,186.186 INFO    ] No existing commands found in stream
[2026-08-31 04:56:29,220.220 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:56:29,222.222 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-08-31 04:56:31,580.580 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 04:56:31,582.582 INFO    ] Checking for system updates...
[2026-08-31 04:56:31,619.619 INFO    ] 200
[2026-08-31 04:56:31,621.621 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:56:31,674.674 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:56:31,677.677 INFO    ] No update needed
[2026-08-31 04:56:31,680.680 INFO    ] Checking for camera pi updates...
[2026-08-31 04:56:31,721.721 INFO    ] 200
[2026-08-31 04:56:31,725.725 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:56:31,776.776 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:56:31,887.887 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:56:31,890.890 INFO    ] No camera update needed
[2026-08-31 04:56:31,893.893 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:56:31,895.895 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:56:31,902.902 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:56:31,908.908 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:56:33,952.952 INFO    ] ================================================
[2026-08-31 04:56:33,967.967 INFO    ] Launching Daemon at Mon Aug 31 04:56:33 IST 2026
[2026-08-31 04:56:33,979.979 INFO    ] ================================================
[2026-08-31 04:56:34,563.563 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:56:34
[2026-08-31 04:56:35,158.158 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:56:35,410.410 INFO    ] Initializing speech engine...
[2026-08-31 04:56:35,419.419 INFO    ] 2026-08-31 04:56:35
[2026-08-31 04:56:35,703.703 INFO    ] 2026-08-31 04:56:35
[2026-08-31 04:56:35,738.738 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:56:35,990.990 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:56:35,999.999 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:56:36,214.214 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:56:36,217.217 INFO    ] time= 31/08/2026 04:56:36
[2026-08-31 04:56:36,264.264 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:56:36,271.271 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:56:36,413.413 INFO    ] No existing commands found in stream
[2026-08-31 04:56:41,430.430 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:56:41,432.432 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-08-31 04:56:44,526.526 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 04:56:44,529.529 INFO    ] Checking for system updates...
[2026-08-31 04:56:44,564.564 INFO    ] 200
[2026-08-31 04:56:44,567.567 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:56:44,619.619 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:56:44,621.621 INFO    ] No update needed
[2026-08-31 04:56:44,623.623 INFO    ] Checking for camera pi updates...
[2026-08-31 04:56:44,658.658 INFO    ] 200
[2026-08-31 04:56:44,660.660 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:56:44,700.700 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:56:44,798.798 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:56:44,801.801 INFO    ] No camera update needed
[2026-08-31 04:56:44,803.803 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:56:44,805.805 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:56:44,811.811 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:56:44,815.815 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:56:46,856.856 INFO    ] ================================================
[2026-08-31 04:56:46,871.871 INFO    ] Launching Daemon at Mon Aug 31 04:56:46 IST 2026
[2026-08-31 04:56:46,883.883 INFO    ] ================================================
[2026-08-31 04:56:47,467.467 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:56:47
[2026-08-31 04:56:48,064.064 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:56:48,326.326 INFO    ] Initializing speech engine...
[2026-08-31 04:56:48,342.342 INFO    ] 2026-08-31 04:56:48
[2026-08-31 04:56:48,628.628 INFO    ] 2026-08-31 04:56:48
[2026-08-31 04:56:48,665.665 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:56:48,889.889 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:56:48,954.954 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:56:49,111.111 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:56:49,138.138 INFO    ] time= 31/08/2026 04:56:49
[2026-08-31 04:56:49,188.188 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:56:49,242.242 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:56:49,320.320 INFO    ] No existing commands found in stream
[2026-08-31 04:56:54,336.336 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:56:54,343.343 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-08-31 04:56:54,842.842 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 04:56:54,845.845 INFO    ] Checking for system updates...
[2026-08-31 04:56:54,881.881 INFO    ] 200
[2026-08-31 04:56:54,884.884 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:56:54,936.936 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:56:54,939.939 INFO    ] No update needed
[2026-08-31 04:56:54,941.941 INFO    ] Checking for camera pi updates...
[2026-08-31 04:56:54,974.974 INFO    ] 200
[2026-08-31 04:56:54,977.977 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:56:55,018.018 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:56:55,098.098 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:56:55,101.101 INFO    ] No camera update needed
[2026-08-31 04:56:55,103.103 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:56:55,105.105 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:56:55,111.111 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:56:55,116.116 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:56:57,160.160 INFO    ] ================================================
[2026-08-31 04:56:57,177.177 INFO    ] Launching Daemon at Mon Aug 31 04:56:57 IST 2026
[2026-08-31 04:56:57,189.189 INFO    ] ================================================
[2026-08-31 04:56:57,785.785 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:56:57
[2026-08-31 04:56:58,388.388 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:56:58,670.670 INFO    ] Initializing speech engine...
[2026-08-31 04:56:58,676.676 INFO    ] 2026-08-31 04:56:58
[2026-08-31 04:56:58,923.923 INFO    ] 2026-08-31 04:56:58
[2026-08-31 04:56:58,959.959 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:56:59,216.216 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:56:59,221.221 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:56:59,354.354 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:56:59,410.410 INFO    ] time= 31/08/2026 04:56:59
[2026-08-31 04:56:59,475.475 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:56:59,489.489 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:56:59,635.635 INFO    ] No existing commands found in stream
[2026-08-31 04:57:04,653.653 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:57:04,656.656 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-08-31 04:57:07,901.901 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 04:57:07,904.904 INFO    ] Checking for system updates...
[2026-08-31 04:57:07,940.940 INFO    ] 200
[2026-08-31 04:57:07,942.942 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:57:07,994.994 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:57:07,997.997 INFO    ] No update needed
[2026-08-31 04:57:07,999.999 INFO    ] Checking for camera pi updates...
[2026-08-31 04:57:08,033.033 INFO    ] 200
[2026-08-31 04:57:08,036.036 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:57:08,077.077 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:57:08,159.159 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:57:08,161.161 INFO    ] No camera update needed
[2026-08-31 04:57:08,164.164 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:57:08,166.166 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:57:08,171.171 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:57:08,176.176 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:57:10,220.220 INFO    ] ================================================
[2026-08-31 04:57:10,236.236 INFO    ] Launching Daemon at Mon Aug 31 04:57:10 IST 2026
[2026-08-31 04:57:10,247.247 INFO    ] ================================================
[2026-08-31 04:57:10,816.816 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:57:10
[2026-08-31 04:57:11,403.403 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:57:11,674.674 INFO    ] Initializing speech engine...
[2026-08-31 04:57:11,683.683 INFO    ] 2026-08-31 04:57:11
[2026-08-31 04:57:11,935.935 INFO    ] 2026-08-31 04:57:11
[2026-08-31 04:57:11,970.970 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:57:12,228.228 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:57:12,237.237 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:57:12,376.376 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:57:12,430.430 INFO    ] time= 31/08/2026 04:57:12
[2026-08-31 04:57:12,479.479 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:57:12,510.510 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:57:12,640.640 INFO    ] No existing commands found in stream
[2026-08-31 04:57:17,666.666 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:57:17,669.669 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-08-31 04:57:19,781.781 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 04:57:19,783.783 INFO    ] Checking for system updates...
[2026-08-31 04:57:19,819.819 INFO    ] 200
[2026-08-31 04:57:19,821.821 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:57:19,872.872 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:57:19,875.875 INFO    ] No update needed
[2026-08-31 04:57:19,877.877 INFO    ] Checking for camera pi updates...
[2026-08-31 04:57:19,910.910 INFO    ] 200
[2026-08-31 04:57:19,913.913 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:57:19,954.954 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:57:20,057.057 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:57:20,059.059 INFO    ] No camera update needed
[2026-08-31 04:57:20,062.062 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:57:20,064.064 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:57:20,069.069 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:57:20,074.074 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:57:22,117.117 INFO    ] ================================================
[2026-08-31 04:57:22,132.132 INFO    ] Launching Daemon at Mon Aug 31 04:57:22 IST 2026
[2026-08-31 04:57:22,144.144 INFO    ] ================================================
[2026-08-31 04:57:22,723.723 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:57:22
[2026-08-31 04:57:23,322.322 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:57:23,596.596 INFO    ] Initializing speech engine...
[2026-08-31 04:57:23,605.605 INFO    ] 2026-08-31 04:57:23
[2026-08-31 04:57:23,868.868 INFO    ] 2026-08-31 04:57:23
[2026-08-31 04:57:23,922.922 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:57:24,144.144 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:57:24,153.153 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:57:24,368.368 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:57:24,413.413 INFO    ] time= 31/08/2026 04:57:24
[2026-08-31 04:57:24,420.420 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:57:24,435.435 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:57:24,566.566 INFO    ] No existing commands found in stream
[2026-08-31 04:57:29,581.581 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:57:29,584.584 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-08-31 04:57:32,419.419 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 04:57:32,422.422 INFO    ] Checking for system updates...
[2026-08-31 04:57:32,462.462 INFO    ] 200
[2026-08-31 04:57:32,465.465 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:57:32,526.526 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:57:32,529.529 INFO    ] No update needed
[2026-08-31 04:57:32,532.532 INFO    ] Checking for camera pi updates...
[2026-08-31 04:57:32,569.569 INFO    ] 200
[2026-08-31 04:57:32,572.572 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:57:32,640.640 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:57:32,720.720 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:57:32,723.723 INFO    ] No camera update needed
[2026-08-31 04:57:32,726.726 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:57:32,729.729 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:57:32,735.735 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:57:32,742.742 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:57:34,785.785 INFO    ] ================================================
[2026-08-31 04:57:34,800.800 INFO    ] Launching Daemon at Mon Aug 31 04:57:34 IST 2026
[2026-08-31 04:57:34,810.810 INFO    ] ================================================
[2026-08-31 04:57:35,449.449 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:57:35
[2026-08-31 04:57:36,109.109 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:57:36,411.411 INFO    ] Initializing speech engine...
[2026-08-31 04:57:36,425.425 INFO    ] 2026-08-31 04:57:36
[2026-08-31 04:57:36,702.702 INFO    ] 2026-08-31 04:57:36
[2026-08-31 04:57:36,747.747 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:57:36,996.996 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:57:37,002.002 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:57:37,216.216 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:57:37,240.240 INFO    ] time= 31/08/2026 04:57:37
[2026-08-31 04:57:37,256.256 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:57:37,281.281 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:57:37,395.395 INFO    ] No existing commands found in stream
[2026-08-31 04:57:42,430.430 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:57:42,433.433 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-08-31 04:57:42,932.932 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 04:57:42,934.934 INFO    ] Checking for system updates...
[2026-08-31 04:57:42,974.974 INFO    ] 200
[2026-08-31 04:57:42,977.977 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:57:43,029.029 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:57:43,032.032 INFO    ] No update needed
[2026-08-31 04:57:43,034.034 INFO    ] Checking for camera pi updates...
[2026-08-31 04:57:43,068.068 INFO    ] 200
[2026-08-31 04:57:43,070.070 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:57:43,111.111 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:57:43,197.197 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:57:43,200.200 INFO    ] No camera update needed
[2026-08-31 04:57:43,202.202 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:57:43,205.205 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:57:43,210.210 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:57:43,215.215 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:57:45,255.255 INFO    ] ================================================
[2026-08-31 04:57:45,270.270 INFO    ] Launching Daemon at Mon Aug 31 04:57:45 IST 2026
[2026-08-31 04:57:45,280.280 INFO    ] ================================================
[2026-08-31 04:57:45,922.922 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:57:45
[2026-08-31 04:57:46,587.587 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:57:46,890.890 INFO    ] Initializing speech engine...
[2026-08-31 04:57:46,898.898 INFO    ] 2026-08-31 04:57:46
[2026-08-31 04:57:47,170.170 INFO    ] 2026-08-31 04:57:47
[2026-08-31 04:57:47,231.231 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:57:47,466.466 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:57:47,471.471 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:57:47,693.693 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:57:47,738.738 INFO    ] time= 31/08/2026 04:57:47
[2026-08-31 04:57:47,745.745 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:57:47,763.763 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:57:47,889.889 INFO    ] No existing commands found in stream
[2026-08-31 04:57:52,905.905 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:57:52,909.909 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-08-31 04:57:56,702.702 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 04:57:56,705.705 INFO    ] Checking for system updates...
[2026-08-31 04:57:56,742.742 INFO    ] 200
[2026-08-31 04:57:56,745.745 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:57:56,797.797 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:57:56,800.800 INFO    ] No update needed
[2026-08-31 04:57:56,802.802 INFO    ] Checking for camera pi updates...
[2026-08-31 04:57:56,836.836 INFO    ] 200
[2026-08-31 04:57:56,839.839 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:57:56,879.879 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:57:56,958.958 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:57:56,961.961 INFO    ] No camera update needed
[2026-08-31 04:57:56,963.963 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:57:56,965.965 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:57:56,971.971 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:57:56,976.976 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:57:59,017.017 INFO    ] ================================================
[2026-08-31 04:57:59,032.032 INFO    ] Launching Daemon at Mon Aug 31 04:57:59 IST 2026
[2026-08-31 04:57:59,043.043 INFO    ] ================================================
[2026-08-31 04:57:59,625.625 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:57:59
[2026-08-31 04:58:00,288.288 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:58:00,590.590 INFO    ] Initializing speech engine...
[2026-08-31 04:58:00,598.598 INFO    ] 2026-08-31 04:58:00
[2026-08-31 04:58:00,893.893 INFO    ] 2026-08-31 04:58:00
[2026-08-31 04:58:01,004.004 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:58:01,219.219 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:58:01,229.229 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:58:01,427.427 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:58:01,445.445 INFO    ] time= 31/08/2026 04:58:01
[2026-08-31 04:58:01,456.456 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:58:01,483.483 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:58:01,585.585 INFO    ] No existing commands found in stream
[2026-08-31 04:58:06,596.596 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:58:06,599.599 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-08-31 04:58:07,777.777 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 04:58:07,780.780 INFO    ] Checking for system updates...
[2026-08-31 04:58:07,818.818 INFO    ] 200
[2026-08-31 04:58:07,821.821 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:58:07,883.883 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:58:07,885.885 INFO    ] No update needed
[2026-08-31 04:58:07,888.888 INFO    ] Checking for camera pi updates...
[2026-08-31 04:58:07,924.924 INFO    ] 200
[2026-08-31 04:58:07,926.926 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:58:07,965.965 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:58:08,054.054 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:58:08,056.056 INFO    ] No camera update needed
[2026-08-31 04:58:08,059.059 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:58:08,061.061 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:58:08,067.067 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:58:08,071.071 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:58:10,111.111 INFO    ] ================================================
[2026-08-31 04:58:10,126.126 INFO    ] Launching Daemon at Mon Aug 31 04:58:10 IST 2026
[2026-08-31 04:58:10,136.136 INFO    ] ================================================
[2026-08-31 04:58:10,703.703 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:58:10
[2026-08-31 04:58:11,283.283 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:58:11,532.532 INFO    ] Initializing speech engine...
[2026-08-31 04:58:11,541.541 INFO    ] 2026-08-31 04:58:11
[2026-08-31 04:58:11,830.830 INFO    ] 2026-08-31 04:58:11
[2026-08-31 04:58:11,866.866 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:58:12,082.082 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:58:12,116.116 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:58:12,235.235 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:58:12,242.242 INFO    ] time= 31/08/2026 04:58:12
[2026-08-31 04:58:12,264.264 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:58:12,314.314 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:58:12,441.441 INFO    ] No existing commands found in stream
[2026-08-31 04:58:17,467.467 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:58:17,470.470 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-08-31 04:58:18,778.778 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 04:58:18,780.780 INFO    ] Checking for system updates...
[2026-08-31 04:58:18,816.816 INFO    ] 200
[2026-08-31 04:58:18,818.818 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:58:18,877.877 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:58:18,880.880 INFO    ] No update needed
[2026-08-31 04:58:18,882.882 INFO    ] Checking for camera pi updates...
[2026-08-31 04:58:18,919.919 INFO    ] 200
[2026-08-31 04:58:18,921.921 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:58:18,965.965 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:58:19,049.049 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:58:19,051.051 INFO    ] No camera update needed
[2026-08-31 04:58:19,053.053 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:58:19,055.055 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:58:19,061.061 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:58:19,065.065 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:58:21,105.105 INFO    ] ================================================
[2026-08-31 04:58:21,120.120 INFO    ] Launching Daemon at Mon Aug 31 04:58:21 IST 2026
[2026-08-31 04:58:21,131.131 INFO    ] ================================================
[2026-08-31 04:58:21,764.764 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:58:21
[2026-08-31 04:58:22,416.416 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:58:22,706.706 INFO    ] Initializing speech engine...
[2026-08-31 04:58:22,720.720 INFO    ] 2026-08-31 04:58:22
[2026-08-31 04:58:22,985.985 INFO    ] 2026-08-31 04:58:22
[2026-08-31 04:58:23,045.045 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:58:23,273.273 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:58:23,278.278 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:58:23,484.484 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:58:23,534.534 INFO    ] time= 31/08/2026 04:58:23
[2026-08-31 04:58:23,543.543 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:58:23,562.562 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:58:23,693.693 INFO    ] No existing commands found in stream
[2026-08-31 04:58:28,701.701 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:58:28,704.704 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-08-31 04:58:32,772.772 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 04:58:32,775.775 INFO    ] Checking for system updates...
[2026-08-31 04:58:32,824.824 INFO    ] 200
[2026-08-31 04:58:32,827.827 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:58:32,882.882 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:58:32,885.885 INFO    ] No update needed
[2026-08-31 04:58:32,888.888 INFO    ] Checking for camera pi updates...
[2026-08-31 04:58:32,925.925 INFO    ] 200
[2026-08-31 04:58:32,927.927 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:58:32,967.967 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:58:33,050.050 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:58:33,052.052 INFO    ] No camera update needed
[2026-08-31 04:58:33,054.054 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:58:33,057.057 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:58:33,062.062 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:58:33,067.067 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:58:35,107.107 INFO    ] ================================================
[2026-08-31 04:58:35,123.123 INFO    ] Launching Daemon at Mon Aug 31 04:58:35 IST 2026
[2026-08-31 04:58:35,133.133 INFO    ] ================================================
[2026-08-31 04:58:35,710.710 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:58:35
[2026-08-31 04:58:36,295.295 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:58:36,566.566 INFO    ] Initializing speech engine...
[2026-08-31 04:58:36,575.575 INFO    ] 2026-08-31 04:58:36
[2026-08-31 04:58:36,825.825 INFO    ] 2026-08-31 04:58:36
[2026-08-31 04:58:36,861.861 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:58:37,036.036 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:58:37,049.049 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:58:37,195.195 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:58:37,201.201 INFO    ] time= 31/08/2026 04:58:37
[2026-08-31 04:58:37,243.243 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:58:37,268.268 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:58:37,383.383 INFO    ] No existing commands found in stream
[2026-08-31 04:58:42,405.405 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:58:42,408.408 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-08-31 04:58:45,843.843 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 04:58:45,845.845 INFO    ] Checking for system updates...
[2026-08-31 04:58:45,881.881 INFO    ] 200
[2026-08-31 04:58:45,883.883 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:58:45,935.935 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:58:45,938.938 INFO    ] No update needed
[2026-08-31 04:58:45,941.941 INFO    ] Checking for camera pi updates...
[2026-08-31 04:58:45,975.975 INFO    ] 200
[2026-08-31 04:58:45,977.977 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:58:46,023.023 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:58:46,117.117 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:58:46,120.120 INFO    ] No camera update needed
[2026-08-31 04:58:46,122.122 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:58:46,125.125 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:58:46,130.130 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:58:46,135.135 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:58:48,176.176 INFO    ] ================================================
[2026-08-31 04:58:48,192.192 INFO    ] Launching Daemon at Mon Aug 31 04:58:48 IST 2026
[2026-08-31 04:58:48,203.203 INFO    ] ================================================
[2026-08-31 04:58:48,770.770 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:58:48
[2026-08-31 04:58:49,353.353 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:58:49,623.623 INFO    ] Initializing speech engine...
[2026-08-31 04:58:49,632.632 INFO    ] 2026-08-31 04:58:49
[2026-08-31 04:58:49,882.882 INFO    ] 2026-08-31 04:58:49
[2026-08-31 04:58:49,917.917 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:58:50,141.141 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:58:50,180.180 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:58:50,345.345 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:58:50,404.404 INFO    ] time= 31/08/2026 04:58:50
[2026-08-31 04:58:50,469.469 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:58:50,479.479 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:58:50,609.609 INFO    ] No existing commands found in stream
[2026-08-31 04:58:55,634.634 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:58:55,636.636 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-08-31 04:58:59,961.961 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 04:58:59,963.963 INFO    ] Checking for system updates...
[2026-08-31 04:59:00,001.001 INFO    ] 200
[2026-08-31 04:59:00,003.003 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:59:00,066.066 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:59:00,069.069 INFO    ] No update needed
[2026-08-31 04:59:00,071.071 INFO    ] Checking for camera pi updates...
[2026-08-31 04:59:00,108.108 INFO    ] 200
[2026-08-31 04:59:00,110.110 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:59:00,155.155 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:59:00,240.240 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:59:00,242.242 INFO    ] No camera update needed
[2026-08-31 04:59:00,245.245 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:59:00,247.247 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:59:00,252.252 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:59:00,257.257 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:59:02,303.303 INFO    ] ================================================
[2026-08-31 04:59:02,320.320 INFO    ] Launching Daemon at Mon Aug 31 04:59:02 IST 2026
[2026-08-31 04:59:02,332.332 INFO    ] ================================================
[2026-08-31 04:59:02,974.974 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:59:02
[2026-08-31 04:59:03,604.604 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:59:03,877.877 INFO    ] Initializing speech engine...
[2026-08-31 04:59:03,885.885 INFO    ] 2026-08-31 04:59:03
[2026-08-31 04:59:04,154.154 INFO    ] 2026-08-31 04:59:04
[2026-08-31 04:59:04,215.215 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:59:04,361.361 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:59:04,372.372 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:59:04,524.524 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:59:04,533.533 INFO    ] time= 31/08/2026 04:59:04
[2026-08-31 04:59:04,540.540 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:59:04,611.611 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:59:04,737.737 INFO    ] No existing commands found in stream
[2026-08-31 04:59:09,752.752 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:59:09,755.755 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-08-31 04:59:10,281.281 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 04:59:10,283.283 INFO    ] Checking for system updates...
[2026-08-31 04:59:10,318.318 INFO    ] 200
[2026-08-31 04:59:10,321.321 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:59:10,379.379 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:59:10,381.381 INFO    ] No update needed
[2026-08-31 04:59:10,383.383 INFO    ] Checking for camera pi updates...
[2026-08-31 04:59:10,416.416 INFO    ] 200
[2026-08-31 04:59:10,419.419 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:59:10,459.459 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:59:10,538.538 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:59:10,540.540 INFO    ] No camera update needed
[2026-08-31 04:59:10,542.542 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:59:10,544.544 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:59:10,550.550 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:59:10,555.555 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:59:12,597.597 INFO    ] ================================================
[2026-08-31 04:59:12,612.612 INFO    ] Launching Daemon at Mon Aug 31 04:59:12 IST 2026
[2026-08-31 04:59:12,622.622 INFO    ] ================================================
[2026-08-31 04:59:13,203.203 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:59:13
[2026-08-31 04:59:13,801.801 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:59:14,077.077 INFO    ] Initializing speech engine...
[2026-08-31 04:59:14,083.083 INFO    ] 2026-08-31 04:59:14
[2026-08-31 04:59:14,344.344 INFO    ] 2026-08-31 04:59:14
[2026-08-31 04:59:14,398.398 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:59:14,624.624 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:59:14,629.629 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:59:14,843.843 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:59:14,888.888 INFO    ] time= 31/08/2026 04:59:14
[2026-08-31 04:59:14,894.894 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:59:14,915.915 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:59:15,042.042 INFO    ] No existing commands found in stream
[2026-08-31 04:59:20,055.055 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:59:20,058.058 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-08-31 04:59:24,098.098 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 04:59:24,100.100 INFO    ] Checking for system updates...
[2026-08-31 04:59:24,139.139 INFO    ] 200
[2026-08-31 04:59:24,142.142 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:59:24,199.199 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:59:24,202.202 INFO    ] No update needed
[2026-08-31 04:59:24,204.204 INFO    ] Checking for camera pi updates...
[2026-08-31 04:59:24,241.241 INFO    ] 200
[2026-08-31 04:59:24,244.244 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:59:24,290.290 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:59:24,389.389 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:59:24,391.391 INFO    ] No camera update needed
[2026-08-31 04:59:24,394.394 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:59:24,396.396 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:59:24,401.401 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:59:24,406.406 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:59:26,447.447 INFO    ] ================================================
[2026-08-31 04:59:26,462.462 INFO    ] Launching Daemon at Mon Aug 31 04:59:26 IST 2026
[2026-08-31 04:59:26,473.473 INFO    ] ================================================
[2026-08-31 04:59:27,058.058 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:59:27
[2026-08-31 04:59:27,672.672 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:59:27,957.957 INFO    ] Initializing speech engine...
[2026-08-31 04:59:27,966.966 INFO    ] 2026-08-31 04:59:27
[2026-08-31 04:59:28,216.216 INFO    ] 2026-08-31 04:59:28
[2026-08-31 04:59:28,251.251 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:59:28,449.449 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:59:28,504.504 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:59:28,647.647 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:59:28,713.713 INFO    ] time= 31/08/2026 04:59:28
[2026-08-31 04:59:28,768.768 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:59:28,780.780 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:59:28,837.837 INFO    ] No existing commands found in stream
[2026-08-31 04:59:33,848.848 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:59:33,850.850 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-08-31 04:59:37,284.284 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 04:59:37,287.287 INFO    ] Checking for system updates...
[2026-08-31 04:59:37,325.325 INFO    ] 200
[2026-08-31 04:59:37,328.328 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:59:37,385.385 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:59:37,388.388 INFO    ] No update needed
[2026-08-31 04:59:37,390.390 INFO    ] Checking for camera pi updates...
[2026-08-31 04:59:37,424.424 INFO    ] 200
[2026-08-31 04:59:37,426.426 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:59:37,471.471 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:59:37,649.649 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 04:59:37,651.651 INFO    ] No camera update needed
[2026-08-31 04:59:37,653.653 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:59:37,655.655 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:59:37,661.661 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:59:37,666.666 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:59:39,707.707 INFO    ] ================================================
[2026-08-31 04:59:39,722.722 INFO    ] Launching Daemon at Mon Aug 31 04:59:39 IST 2026
[2026-08-31 04:59:39,733.733 INFO    ] ================================================
[2026-08-31 04:59:40,305.305 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:59:40
[2026-08-31 04:59:40,888.888 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:59:41,144.144 INFO    ] Initializing speech engine...
[2026-08-31 04:59:41,163.163 INFO    ] 2026-08-31 04:59:41
[2026-08-31 04:59:41,409.409 INFO    ] 2026-08-31 04:59:41
[2026-08-31 04:59:41,443.443 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:59:41,695.695 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:59:41,704.704 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:59:41,837.837 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:59:41,907.907 INFO    ] time= 31/08/2026 04:59:41
[2026-08-31 04:59:41,965.965 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:59:41,970.970 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:59:42,110.110 INFO    ] No existing commands found in stream
[2026-08-31 04:59:47,125.125 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:59:47,129.129 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-08-31 04:59:48,881.881 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 04:59:48,883.883 INFO    ] Checking for system updates...
[2026-08-31 04:59:48,922.922 INFO    ] 200
[2026-08-31 04:59:48,925.925 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:59:48,976.976 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:59:48,979.979 INFO    ] No update needed
[2026-08-31 04:59:48,981.981 INFO    ] Checking for camera pi updates...
[2026-08-31 04:59:49,017.017 INFO    ] 200
[2026-08-31 04:59:49,020.020 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 04:59:49,060.060 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 04:59:49,141.141 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 04:59:49,143.143 INFO    ] No camera update needed
[2026-08-31 04:59:49,145.145 INFO    ] Script finished. Safe exiting...
[2026-08-31 04:59:49,148.148 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 04:59:49,153.153 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 04:59:49,158.158 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 04:59:51,200.200 INFO    ] ================================================
[2026-08-31 04:59:51,215.215 INFO    ] Launching Daemon at Mon Aug 31 04:59:51 IST 2026
[2026-08-31 04:59:51,226.226 INFO    ] ================================================
[2026-08-31 04:59:51,840.840 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 04:59:51
[2026-08-31 04:59:52,423.423 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 04:59:52,691.691 INFO    ] Initializing speech engine...
[2026-08-31 04:59:52,700.700 INFO    ] 2026-08-31 04:59:52
[2026-08-31 04:59:52,945.945 INFO    ] 2026-08-31 04:59:52
[2026-08-31 04:59:52,979.979 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 04:59:53,170.170 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 04:59:53,210.210 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 04:59:53,370.370 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 04:59:53,412.412 INFO    ] time= 31/08/2026 04:59:53
[2026-08-31 04:59:53,466.466 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 04:59:53,506.506 INFO    ] Checking for existing commands in stream...
[2026-08-31 04:59:53,590.590 INFO    ] No existing commands found in stream
[2026-08-31 04:59:58,625.625 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 04:59:58,628.628 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-08-31 05:00:03,275.275 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 05:00:03,331.331 INFO    ] Checking for system updates...
[2026-08-31 05:00:03,605.605 INFO    ] 200
[2026-08-31 05:00:03,629.629 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:00:03,872.872 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:00:03,876.876 INFO    ] No update needed
[2026-08-31 05:00:03,920.920 INFO    ] Checking for camera pi updates...
[2026-08-31 05:00:04,035.035 INFO    ] 200
[2026-08-31 05:00:04,050.050 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:00:04,300.300 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:00:04,863.863 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:00:04,887.887 INFO    ] No camera update needed
[2026-08-31 05:00:04,890.890 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:00:04,893.893 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:00:04,931.931 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:00:04,958.958 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:00:07,012.012 INFO    ] ================================================
[2026-08-31 05:00:07,028.028 INFO    ] Launching Daemon at Mon Aug 31 05:00:07 IST 2026
[2026-08-31 05:00:07,039.039 INFO    ] ================================================
[2026-08-31 05:00:07,620.620 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:00:07
[2026-08-31 05:00:08,215.215 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:00:08,493.493 INFO    ] Initializing speech engine...
[2026-08-31 05:00:08,503.503 INFO    ] 2026-08-31 05:00:08
[2026-08-31 05:00:08,760.760 INFO    ] 2026-08-31 05:00:08
[2026-08-31 05:00:08,791.791 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:00:09,035.035 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:00:09,044.044 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:00:09,178.178 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:00:09,243.243 INFO    ] time= 31/08/2026 05:00:09
[2026-08-31 05:00:09,305.305 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:00:09,312.312 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:00:09,442.442 INFO    ] No existing commands found in stream
[2026-08-31 05:00:14,469.469 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:00:14,472.472 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-08-31 05:00:16,091.091 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 05:00:16,093.093 INFO    ] Checking for system updates...
[2026-08-31 05:00:16,132.132 INFO    ] 200
[2026-08-31 05:00:16,135.135 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:00:16,186.186 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:00:16,189.189 INFO    ] No update needed
[2026-08-31 05:00:16,191.191 INFO    ] Checking for camera pi updates...
[2026-08-31 05:00:16,228.228 INFO    ] 200
[2026-08-31 05:00:16,231.231 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:00:16,271.271 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:00:16,363.363 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:00:16,365.365 INFO    ] No camera update needed
[2026-08-31 05:00:16,368.368 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:00:16,370.370 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:00:16,375.375 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:00:16,380.380 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:00:18,420.420 INFO    ] ================================================
[2026-08-31 05:00:18,435.435 INFO    ] Launching Daemon at Mon Aug 31 05:00:18 IST 2026
[2026-08-31 05:00:18,445.445 INFO    ] ================================================
[2026-08-31 05:00:19,021.021 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:00:19
[2026-08-31 05:00:19,620.620 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:00:19,890.890 INFO    ] Initializing speech engine...
[2026-08-31 05:00:19,898.898 INFO    ] 2026-08-31 05:00:19
[2026-08-31 05:00:20,154.154 INFO    ] 2026-08-31 05:00:20
[2026-08-31 05:00:20,189.189 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:00:20,365.365 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:00:20,379.379 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:00:20,527.527 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:00:20,532.532 INFO    ] time= 31/08/2026 05:00:20
[2026-08-31 05:00:20,538.538 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:00:20,558.558 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:00:20,688.688 INFO    ] No existing commands found in stream
[2026-08-31 05:00:25,708.708 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:00:25,711.711 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-08-31 05:00:29,897.897 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 05:00:29,900.900 INFO    ] Checking for system updates...
[2026-08-31 05:00:29,935.935 INFO    ] 200
[2026-08-31 05:00:29,937.937 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:00:29,996.996 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:00:29,998.998 INFO    ] No update needed
[2026-08-31 05:00:30,001.001 INFO    ] Checking for camera pi updates...
[2026-08-31 05:00:30,034.034 INFO    ] 200
[2026-08-31 05:00:30,036.036 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:00:30,077.077 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:00:30,153.153 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:00:30,155.155 INFO    ] No camera update needed
[2026-08-31 05:00:30,157.157 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:00:30,160.160 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:00:30,165.165 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:00:30,170.170 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:00:32,214.214 INFO    ] ================================================
[2026-08-31 05:00:32,231.231 INFO    ] Launching Daemon at Mon Aug 31 05:00:32 IST 2026
[2026-08-31 05:00:32,242.242 INFO    ] ================================================
[2026-08-31 05:00:32,857.857 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:00:32
[2026-08-31 05:00:33,517.517 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:00:33,823.823 INFO    ] Initializing speech engine...
[2026-08-31 05:00:33,832.832 INFO    ] 2026-08-31 05:00:33
[2026-08-31 05:00:34,111.111 INFO    ] 2026-08-31 05:00:34
[2026-08-31 05:00:34,169.169 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:00:34,458.458 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:00:34,467.467 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:00:34,659.659 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:00:34,674.674 INFO    ] time= 31/08/2026 05:00:34
[2026-08-31 05:00:34,692.692 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:00:34,722.722 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:00:34,832.832 INFO    ] No existing commands found in stream
[2026-08-31 05:00:39,868.868 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:00:39,871.871 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-08-31 05:00:40,407.407 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 05:00:40,410.410 INFO    ] Checking for system updates...
[2026-08-31 05:00:40,447.447 INFO    ] 200
[2026-08-31 05:00:40,450.450 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:00:40,507.507 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:00:40,509.509 INFO    ] No update needed
[2026-08-31 05:00:40,512.512 INFO    ] Checking for camera pi updates...
[2026-08-31 05:00:40,560.560 INFO    ] 200
[2026-08-31 05:00:40,562.562 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:00:40,603.603 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:00:40,696.696 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:00:40,699.699 INFO    ] No camera update needed
[2026-08-31 05:00:40,701.701 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:00:40,704.704 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:00:40,709.709 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:00:40,714.714 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:00:42,756.756 INFO    ] ================================================
[2026-08-31 05:00:42,771.771 INFO    ] Launching Daemon at Mon Aug 31 05:00:42 IST 2026
[2026-08-31 05:00:42,782.782 INFO    ] ================================================
[2026-08-31 05:00:43,351.351 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:00:43
[2026-08-31 05:00:43,935.935 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:00:44,194.194 INFO    ] Initializing speech engine...
[2026-08-31 05:00:44,210.210 INFO    ] 2026-08-31 05:00:44
[2026-08-31 05:00:44,499.499 INFO    ] 2026-08-31 05:00:44
[2026-08-31 05:00:44,537.537 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:00:44,737.737 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:00:44,752.752 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:00:44,918.918 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:00:44,923.923 INFO    ] time= 31/08/2026 05:00:44
[2026-08-31 05:00:44,930.930 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:00:44,935.935 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:00:45,080.080 INFO    ] No existing commands found in stream
[2026-08-31 05:00:50,099.099 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:00:50,102.102 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-08-31 05:00:50,698.698 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 05:00:50,701.701 INFO    ] Checking for system updates...
[2026-08-31 05:00:50,741.741 INFO    ] 200
[2026-08-31 05:00:50,743.743 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:00:50,802.802 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:00:50,804.804 INFO    ] No update needed
[2026-08-31 05:00:50,807.807 INFO    ] Checking for camera pi updates...
[2026-08-31 05:00:50,840.840 INFO    ] 200
[2026-08-31 05:00:50,842.842 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:00:50,888.888 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:00:50,972.972 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:00:50,975.975 INFO    ] No camera update needed
[2026-08-31 05:00:50,977.977 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:00:50,980.980 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:00:50,985.985 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:00:50,990.990 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:00:53,031.031 INFO    ] ================================================
[2026-08-31 05:00:53,046.046 INFO    ] Launching Daemon at Mon Aug 31 05:00:53 IST 2026
[2026-08-31 05:00:53,057.057 INFO    ] ================================================
[2026-08-31 05:00:53,631.631 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:00:53
[2026-08-31 05:00:54,229.229 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:00:54,486.486 INFO    ] Initializing speech engine...
[2026-08-31 05:00:54,502.502 INFO    ] 2026-08-31 05:00:54
[2026-08-31 05:00:54,787.787 INFO    ] 2026-08-31 05:00:54
[2026-08-31 05:00:54,825.825 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:00:55,047.047 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:00:55,055.055 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:00:55,204.204 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:00:55,209.209 INFO    ] time= 31/08/2026 05:00:55
[2026-08-31 05:00:55,216.216 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:00:55,244.244 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:00:55,375.375 INFO    ] No existing commands found in stream
[2026-08-31 05:01:00,410.410 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:01:00,413.413 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-08-31 05:01:04,584.584 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 05:01:04,587.587 INFO    ] Checking for system updates...
[2026-08-31 05:01:04,624.624 INFO    ] 200
[2026-08-31 05:01:04,626.626 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:01:04,686.686 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:01:04,689.689 INFO    ] No update needed
[2026-08-31 05:01:04,691.691 INFO    ] Checking for camera pi updates...
[2026-08-31 05:01:04,724.724 INFO    ] 200
[2026-08-31 05:01:04,726.726 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:01:04,769.769 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:01:04,855.855 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:01:04,858.858 INFO    ] No camera update needed
[2026-08-31 05:01:04,861.861 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:01:04,863.863 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:01:04,868.868 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:01:04,873.873 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:01:06,914.914 INFO    ] ================================================
[2026-08-31 05:01:06,930.930 INFO    ] Launching Daemon at Mon Aug 31 05:01:06 IST 2026
[2026-08-31 05:01:06,941.941 INFO    ] ================================================
[2026-08-31 05:01:07,507.507 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:01:07
[2026-08-31 05:01:08,090.090 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:01:08,349.349 INFO    ] Initializing speech engine...
[2026-08-31 05:01:08,372.372 INFO    ] 2026-08-31 05:01:08
[2026-08-31 05:01:08,654.654 INFO    ] 2026-08-31 05:01:08
[2026-08-31 05:01:08,690.690 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:01:08,890.890 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:01:08,904.904 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:01:09,048.048 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:01:09,071.071 INFO    ] time= 31/08/2026 05:01:09
[2026-08-31 05:01:09,078.078 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:01:09,084.084 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:01:09,162.162 INFO    ] No existing commands found in stream
[2026-08-31 05:01:14,178.178 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:01:14,181.181 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-08-31 05:01:17,302.302 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 05:01:17,304.304 INFO    ] Checking for system updates...
[2026-08-31 05:01:17,344.344 INFO    ] 200
[2026-08-31 05:01:17,347.347 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:01:17,406.406 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:01:17,409.409 INFO    ] No update needed
[2026-08-31 05:01:17,411.411 INFO    ] Checking for camera pi updates...
[2026-08-31 05:01:17,445.445 INFO    ] 200
[2026-08-31 05:01:17,448.448 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:01:17,493.493 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:01:17,571.571 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:01:17,574.574 INFO    ] No camera update needed
[2026-08-31 05:01:17,576.576 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:01:17,578.578 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:01:17,584.584 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:01:17,588.588 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:01:19,629.629 INFO    ] ================================================
[2026-08-31 05:01:19,644.644 INFO    ] Launching Daemon at Mon Aug 31 05:01:19 IST 2026
[2026-08-31 05:01:19,655.655 INFO    ] ================================================
[2026-08-31 05:01:20,223.223 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:01:20
[2026-08-31 05:01:20,808.808 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:01:21,083.083 INFO    ] Initializing speech engine...
[2026-08-31 05:01:21,090.090 INFO    ] 2026-08-31 05:01:21
[2026-08-31 05:01:21,342.342 INFO    ] 2026-08-31 05:01:21
[2026-08-31 05:01:21,383.383 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:01:21,629.629 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:01:21,638.638 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:01:21,776.776 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:01:21,831.831 INFO    ] time= 31/08/2026 05:01:21
[2026-08-31 05:01:21,901.901 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:01:21,911.911 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:01:22,052.052 INFO    ] No existing commands found in stream
[2026-08-31 05:01:27,068.068 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:01:27,071.071 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-08-31 05:01:30,607.607 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 05:01:30,610.610 INFO    ] Checking for system updates...
[2026-08-31 05:01:30,650.650 INFO    ] 200
[2026-08-31 05:01:30,653.653 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:01:30,705.705 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:01:30,708.708 INFO    ] No update needed
[2026-08-31 05:01:30,710.710 INFO    ] Checking for camera pi updates...
[2026-08-31 05:01:30,744.744 INFO    ] 200
[2026-08-31 05:01:30,747.747 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:01:30,805.805 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:01:30,907.907 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:01:30,909.909 INFO    ] No camera update needed
[2026-08-31 05:01:30,912.912 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:01:30,915.915 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:01:30,921.921 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:01:30,926.926 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:01:32,966.966 INFO    ] ================================================
[2026-08-31 05:01:32,981.981 INFO    ] Launching Daemon at Mon Aug 31 05:01:32 IST 2026
[2026-08-31 05:01:32,993.993 INFO    ] ================================================
[2026-08-31 05:01:33,561.561 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:01:33
[2026-08-31 05:01:34,145.145 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:01:34,416.416 INFO    ] Initializing speech engine...
[2026-08-31 05:01:34,423.423 INFO    ] 2026-08-31 05:01:34
[2026-08-31 05:01:34,668.668 INFO    ] 2026-08-31 05:01:34
[2026-08-31 05:01:34,703.703 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:01:34,923.923 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:01:34,958.958 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:01:35,180.180 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:01:35,223.223 INFO    ] time= 31/08/2026 05:01:35
[2026-08-31 05:01:35,229.229 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:01:35,248.248 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:01:35,374.374 INFO    ] No existing commands found in stream
[2026-08-31 05:01:40,388.388 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:01:40,391.391 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-08-31 05:01:41,655.655 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 05:01:41,658.658 INFO    ] Checking for system updates...
[2026-08-31 05:01:41,694.694 INFO    ] 200
[2026-08-31 05:01:41,697.697 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:01:41,751.751 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:01:41,753.753 INFO    ] No update needed
[2026-08-31 05:01:41,755.755 INFO    ] Checking for camera pi updates...
[2026-08-31 05:01:41,792.792 INFO    ] 200
[2026-08-31 05:01:41,795.795 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:01:41,839.839 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:01:42,022.022 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:01:42,024.024 INFO    ] No camera update needed
[2026-08-31 05:01:42,027.027 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:01:42,029.029 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:01:42,034.034 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:01:42,039.039 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:01:44,081.081 INFO    ] ================================================
[2026-08-31 05:01:44,096.096 INFO    ] Launching Daemon at Mon Aug 31 05:01:44 IST 2026
[2026-08-31 05:01:44,107.107 INFO    ] ================================================
[2026-08-31 05:01:44,764.764 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:01:44
[2026-08-31 05:01:45,437.437 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:01:45,743.743 INFO    ] Initializing speech engine...
[2026-08-31 05:01:45,758.758 INFO    ] 2026-08-31 05:01:45
[2026-08-31 05:01:46,034.034 INFO    ] 2026-08-31 05:01:46
[2026-08-31 05:01:46,085.085 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:01:46,320.320 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:01:46,327.327 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:01:46,539.539 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:01:46,592.592 INFO    ] time= 31/08/2026 05:01:46
[2026-08-31 05:01:46,598.598 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:01:46,621.621 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:01:46,770.770 INFO    ] No existing commands found in stream
[2026-08-31 05:01:51,803.803 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:01:51,806.806 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-08-31 05:01:53,588.588 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 05:01:53,591.591 INFO    ] Checking for system updates...
[2026-08-31 05:01:53,632.632 INFO    ] 200
[2026-08-31 05:01:53,635.635 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:01:53,693.693 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:01:53,695.695 INFO    ] No update needed
[2026-08-31 05:01:53,698.698 INFO    ] Checking for camera pi updates...
[2026-08-31 05:01:53,731.731 INFO    ] 200
[2026-08-31 05:01:53,734.734 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:01:53,780.780 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:01:53,849.849 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:01:53,851.851 INFO    ] No camera update needed
[2026-08-31 05:01:53,854.854 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:01:53,856.856 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:01:53,861.861 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:01:53,866.866 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:01:55,906.906 INFO    ] ================================================
[2026-08-31 05:01:55,925.925 INFO    ] Launching Daemon at Mon Aug 31 05:01:55 IST 2026
[2026-08-31 05:01:55,938.938 INFO    ] ================================================
[2026-08-31 05:01:56,519.519 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:01:56
[2026-08-31 05:01:57,115.115 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:01:57,391.391 INFO    ] Initializing speech engine...
[2026-08-31 05:01:57,398.398 INFO    ] 2026-08-31 05:01:57
[2026-08-31 05:01:57,646.646 INFO    ] 2026-08-31 05:01:57
[2026-08-31 05:01:57,681.681 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:01:57,932.932 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:01:57,941.941 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:01:58,121.121 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:01:58,191.191 INFO    ] time= 31/08/2026 05:01:58
[2026-08-31 05:01:58,205.205 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:01:58,223.223 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:01:58,354.354 INFO    ] No existing commands found in stream
[2026-08-31 05:02:03,381.381 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:02:03,384.384 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-08-31 05:02:04,722.722 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 05:02:04,725.725 INFO    ] Checking for system updates...
[2026-08-31 05:02:04,764.764 INFO    ] 200
[2026-08-31 05:02:04,767.767 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:02:04,820.820 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:02:04,822.822 INFO    ] No update needed
[2026-08-31 05:02:04,825.825 INFO    ] Checking for camera pi updates...
[2026-08-31 05:02:04,859.859 INFO    ] 200
[2026-08-31 05:02:04,862.862 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:02:04,902.902 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:02:04,982.982 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:02:04,985.985 INFO    ] No camera update needed
[2026-08-31 05:02:04,987.987 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:02:04,990.990 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:02:04,996.996 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:02:05,002.002 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:02:07,044.044 INFO    ] ================================================
[2026-08-31 05:02:07,059.059 INFO    ] Launching Daemon at Mon Aug 31 05:02:07 IST 2026
[2026-08-31 05:02:07,070.070 INFO    ] ================================================
[2026-08-31 05:02:07,651.651 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:02:07
[2026-08-31 05:02:08,246.246 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:02:08,522.522 INFO    ] Initializing speech engine...
[2026-08-31 05:02:08,530.530 INFO    ] 2026-08-31 05:02:08
[2026-08-31 05:02:08,789.789 INFO    ] 2026-08-31 05:02:08
[2026-08-31 05:02:08,819.819 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:02:09,066.066 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:02:09,072.072 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:02:09,288.288 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:02:09,329.329 INFO    ] time= 31/08/2026 05:02:09
[2026-08-31 05:02:09,335.335 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:02:09,353.353 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:02:09,486.486 INFO    ] No existing commands found in stream
[2026-08-31 05:02:14,513.513 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:02:14,516.516 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-08-31 05:02:18,014.014 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 05:02:18,017.017 INFO    ] Checking for system updates...
[2026-08-31 05:02:18,056.056 INFO    ] 200
[2026-08-31 05:02:18,059.059 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:02:18,111.111 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:02:18,113.113 INFO    ] No update needed
[2026-08-31 05:02:18,116.116 INFO    ] Checking for camera pi updates...
[2026-08-31 05:02:18,149.149 INFO    ] 200
[2026-08-31 05:02:18,152.152 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:02:18,197.197 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:02:18,281.281 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:02:18,283.283 INFO    ] No camera update needed
[2026-08-31 05:02:18,286.286 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:02:18,288.288 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:02:18,294.294 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:02:18,299.299 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:02:20,340.340 INFO    ] ================================================
[2026-08-31 05:02:20,355.355 INFO    ] Launching Daemon at Mon Aug 31 05:02:20 IST 2026
[2026-08-31 05:02:20,365.365 INFO    ] ================================================
[2026-08-31 05:02:20,974.974 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:02:20
[2026-08-31 05:02:21,557.557 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:02:21,826.826 INFO    ] Initializing speech engine...
[2026-08-31 05:02:21,835.835 INFO    ] 2026-08-31 05:02:21
[2026-08-31 05:02:22,084.084 INFO    ] 2026-08-31 05:02:22
[2026-08-31 05:02:22,125.125 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:02:22,276.276 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:02:22,293.293 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:02:22,490.490 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:02:22,506.506 INFO    ] time= 31/08/2026 05:02:22
[2026-08-31 05:02:22,511.511 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:02:22,517.517 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:02:22,657.657 INFO    ] No existing commands found in stream
[2026-08-31 05:02:27,677.677 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:02:27,680.680 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-08-31 05:02:28,333.333 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 05:02:28,335.335 INFO    ] Checking for system updates...
[2026-08-31 05:02:28,371.371 INFO    ] 200
[2026-08-31 05:02:28,373.373 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:02:28,436.436 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:02:28,439.439 INFO    ] No update needed
[2026-08-31 05:02:28,442.442 INFO    ] Checking for camera pi updates...
[2026-08-31 05:02:28,479.479 INFO    ] 200
[2026-08-31 05:02:28,481.481 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:02:28,526.526 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:02:28,609.609 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:02:28,611.611 INFO    ] No camera update needed
[2026-08-31 05:02:28,613.613 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:02:28,616.616 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:02:28,621.621 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:02:28,626.626 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:02:30,669.669 INFO    ] ================================================
[2026-08-31 05:02:30,684.684 INFO    ] Launching Daemon at Mon Aug 31 05:02:30 IST 2026
[2026-08-31 05:02:30,694.694 INFO    ] ================================================
[2026-08-31 05:02:31,261.261 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:02:31
[2026-08-31 05:02:31,892.892 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:02:32,175.175 INFO    ] Initializing speech engine...
[2026-08-31 05:02:32,183.183 INFO    ] 2026-08-31 05:02:32
[2026-08-31 05:02:32,475.475 INFO    ] 2026-08-31 05:02:32
[2026-08-31 05:02:32,513.513 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:02:32,782.782 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:02:32,791.791 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:02:32,944.944 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:02:33,004.004 INFO    ] time= 31/08/2026 05:02:32
[2026-08-31 05:02:33,063.063 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:02:33,070.070 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:02:33,213.213 INFO    ] No existing commands found in stream
[2026-08-31 05:02:38,227.227 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:02:38,230.230 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-08-31 05:02:39,963.963 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 05:02:39,966.966 INFO    ] Checking for system updates...
[2026-08-31 05:02:40,002.002 INFO    ] 200
[2026-08-31 05:02:40,005.005 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:02:40,057.057 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:02:40,060.060 INFO    ] No update needed
[2026-08-31 05:02:40,062.062 INFO    ] Checking for camera pi updates...
[2026-08-31 05:02:40,096.096 INFO    ] 200
[2026-08-31 05:02:40,098.098 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:02:40,140.140 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:02:40,239.239 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:02:40,241.241 INFO    ] No camera update needed
[2026-08-31 05:02:40,244.244 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:02:40,246.246 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:02:40,252.252 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:02:40,257.257 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:02:42,297.297 INFO    ] ================================================
[2026-08-31 05:02:42,312.312 INFO    ] Launching Daemon at Mon Aug 31 05:02:42 IST 2026
[2026-08-31 05:02:42,323.323 INFO    ] ================================================
[2026-08-31 05:02:42,970.970 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:02:42
[2026-08-31 05:02:43,638.638 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:02:43,938.938 INFO    ] Initializing speech engine...
[2026-08-31 05:02:43,953.953 INFO    ] 2026-08-31 05:02:43
[2026-08-31 05:02:44,265.265 INFO    ] 2026-08-31 05:02:44
[2026-08-31 05:02:44,346.346 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:02:44,560.560 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:02:44,568.568 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:02:44,758.758 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:02:44,766.766 INFO    ] time= 31/08/2026 05:02:44
[2026-08-31 05:02:44,784.784 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:02:44,791.791 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:02:44,920.920 INFO    ] No existing commands found in stream
[2026-08-31 05:02:49,950.950 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:02:49,953.953 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-08-31 05:02:53,245.245 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 05:02:53,248.248 INFO    ] Checking for system updates...
[2026-08-31 05:02:53,285.285 INFO    ] 200
[2026-08-31 05:02:53,287.287 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:02:53,346.346 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:02:53,348.348 INFO    ] No update needed
[2026-08-31 05:02:53,351.351 INFO    ] Checking for camera pi updates...
[2026-08-31 05:02:53,384.384 INFO    ] 200
[2026-08-31 05:02:53,386.386 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:02:53,430.430 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:02:53,531.531 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:02:53,534.534 INFO    ] No camera update needed
[2026-08-31 05:02:53,536.536 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:02:53,538.538 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:02:53,544.544 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:02:53,549.549 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:02:55,589.589 INFO    ] ================================================
[2026-08-31 05:02:55,603.603 INFO    ] Launching Daemon at Mon Aug 31 05:02:55 IST 2026
[2026-08-31 05:02:55,614.614 INFO    ] ================================================
[2026-08-31 05:02:56,181.181 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:02:56
[2026-08-31 05:02:56,766.766 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:02:57,034.034 INFO    ] Initializing speech engine...
[2026-08-31 05:02:57,043.043 INFO    ] 2026-08-31 05:02:57
[2026-08-31 05:02:57,290.290 INFO    ] 2026-08-31 05:02:57
[2026-08-31 05:02:57,330.330 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:02:57,522.522 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:02:57,580.580 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:02:57,723.723 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:02:57,783.783 INFO    ] time= 31/08/2026 05:02:57
[2026-08-31 05:02:57,837.837 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:02:57,859.859 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:02:57,971.971 INFO    ] No existing commands found in stream
[2026-08-31 05:03:02,988.988 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:03:02,991.991 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-08-31 05:03:07,416.416 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 05:03:07,419.419 INFO    ] Checking for system updates...
[2026-08-31 05:03:07,458.458 INFO    ] 200
[2026-08-31 05:03:07,460.460 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:03:07,519.519 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:03:07,521.521 INFO    ] No update needed
[2026-08-31 05:03:07,524.524 INFO    ] Checking for camera pi updates...
[2026-08-31 05:03:07,561.561 INFO    ] 200
[2026-08-31 05:03:07,564.564 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:03:07,609.609 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:03:07,690.690 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:03:07,693.693 INFO    ] No camera update needed
[2026-08-31 05:03:07,695.695 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:03:07,697.697 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:03:07,703.703 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:03:07,707.707 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:03:09,750.750 INFO    ] ================================================
[2026-08-31 05:03:09,766.766 INFO    ] Launching Daemon at Mon Aug 31 05:03:09 IST 2026
[2026-08-31 05:03:09,777.777 INFO    ] ================================================
[2026-08-31 05:03:10,349.349 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:03:10
[2026-08-31 05:03:10,954.954 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:03:11,220.220 INFO    ] Initializing speech engine...
[2026-08-31 05:03:11,252.252 INFO    ] 2026-08-31 05:03:11
[2026-08-31 05:03:11,545.545 INFO    ] 2026-08-31 05:03:11
[2026-08-31 05:03:11,589.589 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:03:11,844.844 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:03:11,853.853 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:03:11,965.965 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:03:11,995.995 INFO    ] time= 31/08/2026 05:03:11
[2026-08-31 05:03:12,032.032 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:03:12,035.035 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:03:12,135.135 INFO    ] No existing commands found in stream
[2026-08-31 05:03:17,157.157 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:03:17,160.160 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-08-31 05:03:21,136.136 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 05:03:21,139.139 INFO    ] Checking for system updates...
[2026-08-31 05:03:21,174.174 INFO    ] 200
[2026-08-31 05:03:21,177.177 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:03:21,229.229 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:03:21,231.231 INFO    ] No update needed
[2026-08-31 05:03:21,233.233 INFO    ] Checking for camera pi updates...
[2026-08-31 05:03:21,269.269 INFO    ] 200
[2026-08-31 05:03:21,272.272 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:03:21,319.319 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:03:21,399.399 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:03:21,402.402 INFO    ] No camera update needed
[2026-08-31 05:03:21,404.404 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:03:21,406.406 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:03:21,412.412 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:03:21,416.416 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:03:23,458.458 INFO    ] ================================================
[2026-08-31 05:03:23,473.473 INFO    ] Launching Daemon at Mon Aug 31 05:03:23 IST 2026
[2026-08-31 05:03:23,485.485 INFO    ] ================================================
[2026-08-31 05:03:24,060.060 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:03:24
[2026-08-31 05:03:24,648.648 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:03:24,915.915 INFO    ] Initializing speech engine...
[2026-08-31 05:03:24,924.924 INFO    ] 2026-08-31 05:03:24
[2026-08-31 05:03:25,169.169 INFO    ] 2026-08-31 05:03:25
[2026-08-31 05:03:25,207.207 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:03:25,457.457 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:03:25,466.466 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:03:25,647.647 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:03:25,712.712 INFO    ] time= 31/08/2026 05:03:25
[2026-08-31 05:03:25,729.729 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:03:25,734.734 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:03:25,879.879 INFO    ] No existing commands found in stream
[2026-08-31 05:03:30,894.894 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:03:30,896.896 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-08-31 05:03:32,087.087 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 05:03:32,090.090 INFO    ] Checking for system updates...
[2026-08-31 05:03:32,132.132 INFO    ] 200
[2026-08-31 05:03:32,134.134 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:03:32,190.190 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:03:32,193.193 INFO    ] No update needed
[2026-08-31 05:03:32,195.195 INFO    ] Checking for camera pi updates...
[2026-08-31 05:03:32,231.231 INFO    ] 200
[2026-08-31 05:03:32,234.234 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:03:32,287.287 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:03:32,346.346 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:03:32,349.349 INFO    ] No camera update needed
[2026-08-31 05:03:32,351.351 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:03:32,354.354 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:03:32,360.360 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:03:32,365.365 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:03:34,409.409 INFO    ] ================================================
[2026-08-31 05:03:34,428.428 INFO    ] Launching Daemon at Mon Aug 31 05:03:34 IST 2026
[2026-08-31 05:03:34,439.439 INFO    ] ================================================
[2026-08-31 05:03:35,033.033 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:03:35
[2026-08-31 05:03:35,632.632 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:03:35,908.908 INFO    ] Initializing speech engine...
[2026-08-31 05:03:35,917.917 INFO    ] 2026-08-31 05:03:35
[2026-08-31 05:03:36,173.173 INFO    ] 2026-08-31 05:03:36
[2026-08-31 05:03:36,227.227 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:03:36,459.459 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:03:36,469.469 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:03:36,621.621 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:03:36,628.628 INFO    ] time= 31/08/2026 05:03:36
[2026-08-31 05:03:36,688.688 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:03:36,742.742 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:03:36,837.837 INFO    ] No existing commands found in stream
[2026-08-31 05:03:41,849.849 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:03:41,852.852 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-08-31 05:03:45,146.146 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 05:03:45,149.149 INFO    ] Checking for system updates...
[2026-08-31 05:03:45,184.184 INFO    ] 200
[2026-08-31 05:03:45,186.186 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:03:45,246.246 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:03:45,249.249 INFO    ] No update needed
[2026-08-31 05:03:45,251.251 INFO    ] Checking for camera pi updates...
[2026-08-31 05:03:45,289.289 INFO    ] 200
[2026-08-31 05:03:45,291.291 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:03:45,336.336 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:03:45,517.517 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:03:45,519.519 INFO    ] No camera update needed
[2026-08-31 05:03:45,522.522 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:03:45,524.524 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:03:45,529.529 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:03:45,534.534 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:03:47,576.576 INFO    ] ================================================
[2026-08-31 05:03:47,591.591 INFO    ] Launching Daemon at Mon Aug 31 05:03:47 IST 2026
[2026-08-31 05:03:47,602.602 INFO    ] ================================================
[2026-08-31 05:03:48,181.181 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:03:48
[2026-08-31 05:03:48,777.777 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:03:49,052.052 INFO    ] Initializing speech engine...
[2026-08-31 05:03:49,059.059 INFO    ] 2026-08-31 05:03:49
[2026-08-31 05:03:49,319.319 INFO    ] 2026-08-31 05:03:49
[2026-08-31 05:03:49,372.372 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:03:49,539.539 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:03:49,596.596 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:03:49,748.748 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:03:49,804.804 INFO    ] time= 31/08/2026 05:03:49
[2026-08-31 05:03:49,848.848 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:03:49,869.869 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:03:49,925.925 INFO    ] No existing commands found in stream
[2026-08-31 05:03:54,936.936 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:03:54,939.939 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-08-31 05:03:57,340.340 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 05:03:57,343.343 INFO    ] Checking for system updates...
[2026-08-31 05:03:57,378.378 INFO    ] 200
[2026-08-31 05:03:57,381.381 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:03:57,433.433 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:03:57,436.436 INFO    ] No update needed
[2026-08-31 05:03:57,438.438 INFO    ] Checking for camera pi updates...
[2026-08-31 05:03:57,473.473 INFO    ] 200
[2026-08-31 05:03:57,475.475 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:03:57,523.523 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:03:57,628.628 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:03:57,631.631 INFO    ] No camera update needed
[2026-08-31 05:03:57,634.634 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:03:57,636.636 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:03:57,641.641 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:03:57,646.646 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:03:59,689.689 INFO    ] ================================================
[2026-08-31 05:03:59,705.705 INFO    ] Launching Daemon at Mon Aug 31 05:03:59 IST 2026
[2026-08-31 05:03:59,715.715 INFO    ] ================================================
[2026-08-31 05:04:00,358.358 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:04:00
[2026-08-31 05:04:01,020.020 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:04:01,449.449 INFO    ] Initializing speech engine...
[2026-08-31 05:04:01,465.465 INFO    ] 2026-08-31 05:04:01
[2026-08-31 05:04:01,869.869 INFO    ] 2026-08-31 05:04:01
[2026-08-31 05:04:01,973.973 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:04:02,197.197 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:04:02,231.231 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:04:02,414.414 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:04:02,447.447 INFO    ] time= 31/08/2026 05:04:02
[2026-08-31 05:04:02,466.466 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:04:02,478.478 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:04:02,608.608 INFO    ] No existing commands found in stream
[2026-08-31 05:04:07,643.643 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:04:07,646.646 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-08-31 05:04:10,902.902 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 05:04:10,904.904 INFO    ] Checking for system updates...
[2026-08-31 05:04:10,941.941 INFO    ] 200
[2026-08-31 05:04:10,943.943 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:04:10,995.995 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:04:10,997.997 INFO    ] No update needed
[2026-08-31 05:04:11,000.000 INFO    ] Checking for camera pi updates...
[2026-08-31 05:04:11,036.036 INFO    ] 200
[2026-08-31 05:04:11,039.039 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:04:11,083.083 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:04:11,170.170 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:04:11,173.173 INFO    ] No camera update needed
[2026-08-31 05:04:11,175.175 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:04:11,177.177 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:04:11,182.182 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:04:11,187.187 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:04:13,228.228 INFO    ] ================================================
[2026-08-31 05:04:13,243.243 INFO    ] Launching Daemon at Mon Aug 31 05:04:13 IST 2026
[2026-08-31 05:04:13,255.255 INFO    ] ================================================
[2026-08-31 05:04:13,834.834 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:04:13
[2026-08-31 05:04:14,430.430 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:04:14,702.702 INFO    ] Initializing speech engine...
[2026-08-31 05:04:14,712.712 INFO    ] 2026-08-31 05:04:14
[2026-08-31 05:04:14,975.975 INFO    ] 2026-08-31 05:04:14
[2026-08-31 05:04:15,030.030 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:04:15,254.254 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:04:15,259.259 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:04:15,454.454 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:04:15,515.515 INFO    ] time= 31/08/2026 05:04:15
[2026-08-31 05:04:15,522.522 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:04:15,542.542 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:04:15,661.661 INFO    ] No existing commands found in stream
[2026-08-31 05:04:20,680.680 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:04:20,682.682 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-08-31 05:04:25,006.006 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 05:04:25,009.009 INFO    ] Checking for system updates...
[2026-08-31 05:04:25,045.045 INFO    ] 200
[2026-08-31 05:04:25,047.047 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:04:25,099.099 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:04:25,102.102 INFO    ] No update needed
[2026-08-31 05:04:25,104.104 INFO    ] Checking for camera pi updates...
[2026-08-31 05:04:25,138.138 INFO    ] 200
[2026-08-31 05:04:25,140.140 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:04:25,180.180 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:04:25,280.280 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:04:25,282.282 INFO    ] No camera update needed
[2026-08-31 05:04:25,284.284 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:04:25,287.287 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:04:25,292.292 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:04:25,297.297 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:04:27,338.338 INFO    ] ================================================
[2026-08-31 05:04:27,354.354 INFO    ] Launching Daemon at Mon Aug 31 05:04:27 IST 2026
[2026-08-31 05:04:27,365.365 INFO    ] ================================================
[2026-08-31 05:04:27,930.930 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:04:27
[2026-08-31 05:04:28,513.513 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:04:28,781.781 INFO    ] Initializing speech engine...
[2026-08-31 05:04:28,790.790 INFO    ] 2026-08-31 05:04:28
[2026-08-31 05:04:29,038.038 INFO    ] 2026-08-31 05:04:29
[2026-08-31 05:04:29,103.103 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:04:29,328.328 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:04:29,334.334 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:04:29,466.466 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:04:29,511.511 INFO    ] time= 31/08/2026 05:04:29
[2026-08-31 05:04:29,566.566 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:04:29,597.597 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:04:29,730.730 INFO    ] No existing commands found in stream
[2026-08-31 05:04:34,752.752 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:04:34,755.755 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-08-31 05:04:38,249.249 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 05:04:38,252.252 INFO    ] Checking for system updates...
[2026-08-31 05:04:38,288.288 INFO    ] 200
[2026-08-31 05:04:38,291.291 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:04:38,348.348 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:04:38,351.351 INFO    ] No update needed
[2026-08-31 05:04:38,353.353 INFO    ] Checking for camera pi updates...
[2026-08-31 05:04:38,389.389 INFO    ] 200
[2026-08-31 05:04:38,392.392 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:04:38,431.431 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:04:38,532.532 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:04:38,534.534 INFO    ] No camera update needed
[2026-08-31 05:04:38,537.537 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:04:38,539.539 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:04:38,544.544 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:04:38,549.549 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:04:40,589.589 INFO    ] ================================================
[2026-08-31 05:04:40,605.605 INFO    ] Launching Daemon at Mon Aug 31 05:04:40 IST 2026
[2026-08-31 05:04:40,616.616 INFO    ] ================================================
[2026-08-31 05:04:41,195.195 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:04:41
[2026-08-31 05:04:41,794.794 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:04:42,065.065 INFO    ] Initializing speech engine...
[2026-08-31 05:04:42,076.076 INFO    ] 2026-08-31 05:04:42
[2026-08-31 05:04:42,337.337 INFO    ] 2026-08-31 05:04:42
[2026-08-31 05:04:42,388.388 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:04:42,611.611 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:04:42,620.620 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:04:42,751.751 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:04:42,794.794 INFO    ] time= 31/08/2026 05:04:42
[2026-08-31 05:04:42,843.843 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:04:42,884.884 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:04:43,017.017 INFO    ] No existing commands found in stream
[2026-08-31 05:04:48,041.041 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:04:48,044.044 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-08-31 05:04:50,903.903 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 05:04:50,906.906 INFO    ] Checking for system updates...
[2026-08-31 05:04:50,946.946 INFO    ] 200
[2026-08-31 05:04:50,949.949 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:04:51,006.006 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:04:51,013.013 INFO    ] No update needed
[2026-08-31 05:04:51,016.016 INFO    ] Checking for camera pi updates...
[2026-08-31 05:04:51,054.054 INFO    ] 200
[2026-08-31 05:04:51,056.056 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:04:51,106.106 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:04:51,163.163 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:04:51,166.166 INFO    ] No camera update needed
[2026-08-31 05:04:51,168.168 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:04:51,171.171 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:04:51,177.177 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:04:51,183.183 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:04:53,224.224 INFO    ] ================================================
[2026-08-31 05:04:53,239.239 INFO    ] Launching Daemon at Mon Aug 31 05:04:53 IST 2026
[2026-08-31 05:04:53,250.250 INFO    ] ================================================
[2026-08-31 05:04:53,838.838 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:04:53
[2026-08-31 05:04:54,422.422 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:04:54,690.690 INFO    ] Initializing speech engine...
[2026-08-31 05:04:54,701.701 INFO    ] 2026-08-31 05:04:54
[2026-08-31 05:04:54,995.995 INFO    ] 2026-08-31 05:04:54
[2026-08-31 05:04:55,052.052 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:04:55,290.290 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:04:55,302.302 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:04:55,448.448 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:04:55,509.509 INFO    ] time= 31/08/2026 05:04:55
[2026-08-31 05:04:55,569.569 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:04:55,588.588 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:04:55,727.727 INFO    ] No existing commands found in stream
[2026-08-31 05:05:00,749.749 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:05:00,753.753 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-08-31 05:05:02,943.943 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 05:05:02,947.947 INFO    ] Checking for system updates...
[2026-08-31 05:05:02,990.990 INFO    ] 200
[2026-08-31 05:05:02,992.992 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:05:03,049.049 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:05:03,051.051 INFO    ] No update needed
[2026-08-31 05:05:03,053.053 INFO    ] Checking for camera pi updates...
[2026-08-31 05:05:03,098.098 INFO    ] 200
[2026-08-31 05:05:03,100.100 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:05:03,149.149 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:05:03,251.251 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:05:03,253.253 INFO    ] No camera update needed
[2026-08-31 05:05:03,255.255 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:05:03,258.258 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:05:03,263.263 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:05:03,268.268 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:05:05,310.310 INFO    ] ================================================
[2026-08-31 05:05:05,325.325 INFO    ] Launching Daemon at Mon Aug 31 05:05:05 IST 2026
[2026-08-31 05:05:05,336.336 INFO    ] ================================================
[2026-08-31 05:05:05,919.919 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:05:05
[2026-08-31 05:05:06,545.545 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:05:06,814.814 INFO    ] Initializing speech engine...
[2026-08-31 05:05:06,822.822 INFO    ] 2026-08-31 05:05:06
[2026-08-31 05:05:07,120.120 INFO    ] 2026-08-31 05:05:07
[2026-08-31 05:05:07,186.186 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:05:07,417.417 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:05:07,423.423 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:05:07,643.643 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:05:07,683.683 INFO    ] time= 31/08/2026 05:05:07
[2026-08-31 05:05:07,701.701 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:05:07,712.712 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:05:07,842.842 INFO    ] No existing commands found in stream
[2026-08-31 05:05:12,881.881 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:05:12,884.884 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-08-31 05:05:14,590.590 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 05:05:14,593.593 INFO    ] Checking for system updates...
[2026-08-31 05:05:14,630.630 INFO    ] 200
[2026-08-31 05:05:14,633.633 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:05:14,696.696 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:05:14,700.700 INFO    ] No update needed
[2026-08-31 05:05:14,702.702 INFO    ] Checking for camera pi updates...
[2026-08-31 05:05:14,740.740 INFO    ] 200
[2026-08-31 05:05:14,743.743 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:05:14,785.785 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:05:14,866.866 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:05:14,869.869 INFO    ] No camera update needed
[2026-08-31 05:05:14,872.872 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:05:14,874.874 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:05:14,880.880 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:05:14,886.886 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:05:16,929.929 INFO    ] ================================================
[2026-08-31 05:05:16,944.944 INFO    ] Launching Daemon at Mon Aug 31 05:05:16 IST 2026
[2026-08-31 05:05:16,955.955 INFO    ] ================================================
[2026-08-31 05:05:17,525.525 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:05:17
[2026-08-31 05:05:18,118.118 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:05:18,415.415 INFO    ] Initializing speech engine...
[2026-08-31 05:05:18,423.423 INFO    ] 2026-08-31 05:05:18
[2026-08-31 05:05:18,686.686 INFO    ] 2026-08-31 05:05:18
[2026-08-31 05:05:18,741.741 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:05:18,959.959 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:05:18,969.969 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:05:19,100.100 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:05:19,143.143 INFO    ] time= 31/08/2026 05:05:19
[2026-08-31 05:05:19,202.202 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:05:19,235.235 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:05:19,374.374 INFO    ] No existing commands found in stream
[2026-08-31 05:05:24,395.395 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:05:24,398.398 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-08-31 05:05:28,009.009 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 05:05:28,012.012 INFO    ] Checking for system updates...
[2026-08-31 05:05:28,048.048 INFO    ] 200
[2026-08-31 05:05:28,051.051 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:05:28,113.113 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:05:28,115.115 INFO    ] No update needed
[2026-08-31 05:05:28,118.118 INFO    ] Checking for camera pi updates...
[2026-08-31 05:05:28,152.152 INFO    ] 200
[2026-08-31 05:05:28,154.154 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:05:28,199.199 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:05:28,301.301 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:05:28,309.309 INFO    ] No camera update needed
[2026-08-31 05:05:28,312.312 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:05:28,314.314 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:05:28,320.320 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:05:28,325.325 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:05:30,366.366 INFO    ] ================================================
[2026-08-31 05:05:30,381.381 INFO    ] Launching Daemon at Mon Aug 31 05:05:30 IST 2026
[2026-08-31 05:05:30,391.391 INFO    ] ================================================
[2026-08-31 05:05:30,978.978 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:05:30
[2026-08-31 05:05:31,604.604 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:05:31,866.866 INFO    ] Initializing speech engine...
[2026-08-31 05:05:31,889.889 INFO    ] 2026-08-31 05:05:31
[2026-08-31 05:05:32,250.250 INFO    ] 2026-08-31 05:05:32
[2026-08-31 05:05:32,334.334 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:05:32,573.573 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:05:32,646.646 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:05:32,798.798 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:05:32,828.828 INFO    ] time= 31/08/2026 05:05:32
[2026-08-31 05:05:32,836.836 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:05:32,847.847 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:05:32,962.962 INFO    ] No existing commands found in stream
[2026-08-31 05:05:37,993.993 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:05:37,996.996 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-08-31 05:05:42,180.180 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 05:05:42,183.183 INFO    ] Checking for system updates...
[2026-08-31 05:05:42,220.220 INFO    ] 200
[2026-08-31 05:05:42,223.223 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:05:42,280.280 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:05:42,283.283 INFO    ] No update needed
[2026-08-31 05:05:42,285.285 INFO    ] Checking for camera pi updates...
[2026-08-31 05:05:42,320.320 INFO    ] 200
[2026-08-31 05:05:42,323.323 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:05:42,368.368 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:05:42,470.470 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:05:42,473.473 INFO    ] No camera update needed
[2026-08-31 05:05:42,476.476 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:05:42,478.478 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:05:42,485.485 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:05:42,490.490 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:05:44,530.530 INFO    ] ================================================
[2026-08-31 05:05:44,545.545 INFO    ] Launching Daemon at Mon Aug 31 05:05:44 IST 2026
[2026-08-31 05:05:44,556.556 INFO    ] ================================================
[2026-08-31 05:05:45,121.121 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:05:45
[2026-08-31 05:05:45,704.704 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:05:45,959.959 INFO    ] Initializing speech engine...
[2026-08-31 05:05:45,965.965 INFO    ] 2026-08-31 05:05:45
[2026-08-31 05:05:46,262.262 INFO    ] 2026-08-31 05:05:46
[2026-08-31 05:05:46,298.298 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:05:46,529.529 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:05:46,564.564 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:05:46,681.681 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:05:46,686.686 INFO    ] time= 31/08/2026 05:05:46
[2026-08-31 05:05:46,693.693 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:05:46,720.720 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:05:46,843.843 INFO    ] No existing commands found in stream
[2026-08-31 05:05:51,868.868 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:05:51,871.871 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-08-31 05:05:53,521.521 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 05:05:53,524.524 INFO    ] Checking for system updates...
[2026-08-31 05:05:53,564.564 INFO    ] 200
[2026-08-31 05:05:53,567.567 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:05:53,621.621 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:05:53,624.624 INFO    ] No update needed
[2026-08-31 05:05:53,626.626 INFO    ] Checking for camera pi updates...
[2026-08-31 05:05:53,659.659 INFO    ] 200
[2026-08-31 05:05:53,661.661 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:05:53,703.703 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:05:53,903.903 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:05:53,906.906 INFO    ] No camera update needed
[2026-08-31 05:05:53,909.909 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:05:53,911.911 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:05:53,916.916 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:05:53,922.922 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:05:55,963.963 INFO    ] ================================================
[2026-08-31 05:05:55,982.982 INFO    ] Launching Daemon at Mon Aug 31 05:05:55 IST 2026
[2026-08-31 05:05:55,993.993 INFO    ] ================================================
[2026-08-31 05:05:56,557.557 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:05:56
[2026-08-31 05:05:57,143.143 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:05:57,390.390 INFO    ] Initializing speech engine...
[2026-08-31 05:05:57,405.405 INFO    ] 2026-08-31 05:05:57
[2026-08-31 05:05:57,671.671 INFO    ] 2026-08-31 05:05:57
[2026-08-31 05:05:57,707.707 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:05:57,959.959 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:05:57,970.970 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:05:58,081.081 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:05:58,083.083 INFO    ] time= 31/08/2026 05:05:58
[2026-08-31 05:05:58,086.086 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:05:58,114.114 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:05:58,241.241 INFO    ] No existing commands found in stream
[2026-08-31 05:06:03,253.253 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:06:03,256.256 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-08-31 05:06:04,860.860 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 05:06:04,863.863 INFO    ] Checking for system updates...
[2026-08-31 05:06:04,904.904 INFO    ] 200
[2026-08-31 05:06:04,907.907 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:06:04,970.970 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:06:04,972.972 INFO    ] No update needed
[2026-08-31 05:06:04,975.975 INFO    ] Checking for camera pi updates...
[2026-08-31 05:06:05,009.009 INFO    ] 200
[2026-08-31 05:06:05,012.012 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:06:05,053.053 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:06:05,139.139 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:06:05,142.142 INFO    ] No camera update needed
[2026-08-31 05:06:05,145.145 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:06:05,147.147 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:06:05,165.165 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:06:05,181.181 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:06:07,224.224 INFO    ] ================================================
[2026-08-31 05:06:07,239.239 INFO    ] Launching Daemon at Mon Aug 31 05:06:07 IST 2026
[2026-08-31 05:06:07,250.250 INFO    ] ================================================
[2026-08-31 05:06:07,815.815 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:06:07
[2026-08-31 05:06:08,399.399 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:06:08,670.670 INFO    ] Initializing speech engine...
[2026-08-31 05:06:08,680.680 INFO    ] 2026-08-31 05:06:08
[2026-08-31 05:06:08,938.938 INFO    ] 2026-08-31 05:06:08
[2026-08-31 05:06:08,993.993 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:06:09,221.221 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:06:09,226.226 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:06:09,379.379 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:06:09,401.401 INFO    ] time= 31/08/2026 05:06:09
[2026-08-31 05:06:09,460.460 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:06:09,495.495 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:06:09,601.601 INFO    ] No existing commands found in stream
[2026-08-31 05:06:14,621.621 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:06:14,624.624 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-08-31 05:06:18,646.646 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 05:06:18,649.649 INFO    ] Checking for system updates...
[2026-08-31 05:06:18,684.684 INFO    ] 200
[2026-08-31 05:06:18,687.687 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:06:18,738.738 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:06:18,741.741 INFO    ] No update needed
[2026-08-31 05:06:18,744.744 INFO    ] Checking for camera pi updates...
[2026-08-31 05:06:18,777.777 INFO    ] 200
[2026-08-31 05:06:18,780.780 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:06:18,825.825 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:06:18,907.907 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:06:18,910.910 INFO    ] No camera update needed
[2026-08-31 05:06:18,912.912 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:06:18,914.914 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:06:18,920.920 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:06:18,925.925 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:06:20,966.966 INFO    ] ================================================
[2026-08-31 05:06:20,981.981 INFO    ] Launching Daemon at Mon Aug 31 05:06:20 IST 2026
[2026-08-31 05:06:20,992.992 INFO    ] ================================================
[2026-08-31 05:06:21,558.558 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:06:21
[2026-08-31 05:06:22,144.144 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:06:22,399.399 INFO    ] Initializing speech engine...
[2026-08-31 05:06:22,408.408 INFO    ] 2026-08-31 05:06:22
[2026-08-31 05:06:22,704.704 INFO    ] 2026-08-31 05:06:22
[2026-08-31 05:06:22,729.729 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:06:22,939.939 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:06:22,944.944 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:06:23,081.081 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:06:23,086.086 INFO    ] time= 31/08/2026 05:06:23
[2026-08-31 05:06:23,107.107 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:06:23,129.129 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:06:23,212.212 INFO    ] No existing commands found in stream
[2026-08-31 05:06:28,225.225 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:06:28,228.228 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-08-31 05:06:29,532.532 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 05:06:29,534.534 INFO    ] Checking for system updates...
[2026-08-31 05:06:29,571.571 INFO    ] 200
[2026-08-31 05:06:29,573.573 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:06:29,625.625 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:06:29,627.627 INFO    ] No update needed
[2026-08-31 05:06:29,630.630 INFO    ] Checking for camera pi updates...
[2026-08-31 05:06:29,663.663 INFO    ] 200
[2026-08-31 05:06:29,666.666 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:06:29,707.707 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:06:29,798.798 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:06:29,800.800 INFO    ] No camera update needed
[2026-08-31 05:06:29,802.802 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:06:29,805.805 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:06:29,810.810 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:06:29,815.815 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:06:31,860.860 INFO    ] ================================================
[2026-08-31 05:06:31,877.877 INFO    ] Launching Daemon at Mon Aug 31 05:06:31 IST 2026
[2026-08-31 05:06:31,889.889 INFO    ] ================================================
[2026-08-31 05:06:32,520.520 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:06:32
[2026-08-31 05:06:33,140.140 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:06:33,459.459 INFO    ] Initializing speech engine...
[2026-08-31 05:06:33,468.468 INFO    ] 2026-08-31 05:06:33
[2026-08-31 05:06:33,746.746 INFO    ] 2026-08-31 05:06:33
[2026-08-31 05:06:33,794.794 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:06:34,026.026 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:06:34,049.049 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:06:34,250.250 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:06:34,296.296 INFO    ] time= 31/08/2026 05:06:34
[2026-08-31 05:06:34,303.303 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:06:34,320.320 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:06:34,459.459 INFO    ] No existing commands found in stream
[2026-08-31 05:06:39,486.486 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:06:39,489.489 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-08-31 05:06:41,804.804 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 05:06:41,807.807 INFO    ] Checking for system updates...
[2026-08-31 05:06:41,848.848 INFO    ] 200
[2026-08-31 05:06:41,850.850 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:06:41,902.902 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:06:41,905.905 INFO    ] No update needed
[2026-08-31 05:06:41,907.907 INFO    ] Checking for camera pi updates...
[2026-08-31 05:06:41,941.941 INFO    ] 200
[2026-08-31 05:06:41,944.944 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:06:41,984.984 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:06:42,064.064 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:06:42,067.067 INFO    ] No camera update needed
[2026-08-31 05:06:42,069.069 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:06:42,072.072 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:06:42,077.077 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:06:42,082.082 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:06:44,124.124 INFO    ] ================================================
[2026-08-31 05:06:44,139.139 INFO    ] Launching Daemon at Mon Aug 31 05:06:44 IST 2026
[2026-08-31 05:06:44,150.150 INFO    ] ================================================
[2026-08-31 05:06:44,715.715 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:06:44
[2026-08-31 05:06:45,297.297 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:06:45,564.564 INFO    ] Initializing speech engine...
[2026-08-31 05:06:45,573.573 INFO    ] 2026-08-31 05:06:45
[2026-08-31 05:06:45,817.817 INFO    ] 2026-08-31 05:06:45
[2026-08-31 05:06:45,853.853 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:06:46,104.104 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:06:46,114.114 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:06:46,333.333 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:06:46,371.371 INFO    ] time= 31/08/2026 05:06:46
[2026-08-31 05:06:46,377.377 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:06:46,395.395 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:06:46,522.522 INFO    ] No existing commands found in stream
[2026-08-31 05:06:51,538.538 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:06:51,540.540 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-08-31 05:06:55,621.621 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 05:06:55,624.624 INFO    ] Checking for system updates...
[2026-08-31 05:06:55,660.660 INFO    ] 200
[2026-08-31 05:06:55,663.663 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:06:55,714.714 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:06:55,717.717 INFO    ] No update needed
[2026-08-31 05:06:55,719.719 INFO    ] Checking for camera pi updates...
[2026-08-31 05:06:55,758.758 INFO    ] 200
[2026-08-31 05:06:55,761.761 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:06:55,807.807 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:06:55,898.898 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:06:55,900.900 INFO    ] No camera update needed
[2026-08-31 05:06:55,903.903 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:06:55,905.905 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:06:55,910.910 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:06:55,915.915 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:06:57,957.957 INFO    ] ================================================
[2026-08-31 05:06:57,972.972 INFO    ] Launching Daemon at Mon Aug 31 05:06:57 IST 2026
[2026-08-31 05:06:57,983.983 INFO    ] ================================================
[2026-08-31 05:06:58,547.547 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:06:58
[2026-08-31 05:06:59,128.128 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:06:59,400.400 INFO    ] Initializing speech engine...
[2026-08-31 05:06:59,409.409 INFO    ] 2026-08-31 05:06:59
[2026-08-31 05:06:59,657.657 INFO    ] 2026-08-31 05:06:59
[2026-08-31 05:06:59,716.716 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:06:59,937.937 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:06:59,946.946 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:07:00,084.084 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:07:00,154.154 INFO    ] time= 31/08/2026 05:07:00
[2026-08-31 05:07:00,205.205 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:07:00,211.211 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:07:00,357.357 INFO    ] No existing commands found in stream
[2026-08-31 05:07:05,375.375 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:07:05,378.378 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-08-31 05:07:09,061.061 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 05:07:09,064.064 INFO    ] Checking for system updates...
[2026-08-31 05:07:09,100.100 INFO    ] 200
[2026-08-31 05:07:09,102.102 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:07:09,154.154 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:07:09,156.156 INFO    ] No update needed
[2026-08-31 05:07:09,159.159 INFO    ] Checking for camera pi updates...
[2026-08-31 05:07:09,196.196 INFO    ] 200
[2026-08-31 05:07:09,198.198 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:07:09,239.239 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:07:09,346.346 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:07:09,349.349 INFO    ] No camera update needed
[2026-08-31 05:07:09,352.352 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:07:09,355.355 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:07:09,362.362 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:07:09,368.368 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:07:11,410.410 INFO    ] ================================================
[2026-08-31 05:07:11,425.425 INFO    ] Launching Daemon at Mon Aug 31 05:07:11 IST 2026
[2026-08-31 05:07:11,436.436 INFO    ] ================================================
[2026-08-31 05:07:12,079.079 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:07:12
[2026-08-31 05:07:12,740.740 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:07:13,041.041 INFO    ] Initializing speech engine...
[2026-08-31 05:07:13,049.049 INFO    ] 2026-08-31 05:07:13
[2026-08-31 05:07:13,365.365 INFO    ] 2026-08-31 05:07:13
[2026-08-31 05:07:13,458.458 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:07:13,642.642 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:07:13,648.648 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:07:13,849.849 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:07:13,886.886 INFO    ] time= 31/08/2026 05:07:13
[2026-08-31 05:07:13,902.902 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:07:13,912.912 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:07:14,044.044 INFO    ] No existing commands found in stream
[2026-08-31 05:07:19,072.072 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:07:19,075.075 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-08-31 05:07:22,971.971 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 05:07:22,974.974 INFO    ] Checking for system updates...
[2026-08-31 05:07:23,011.011 INFO    ] 200
[2026-08-31 05:07:23,014.014 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:07:23,067.067 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:07:23,070.070 INFO    ] No update needed
[2026-08-31 05:07:23,072.072 INFO    ] Checking for camera pi updates...
[2026-08-31 05:07:23,110.110 INFO    ] 200
[2026-08-31 05:07:23,113.113 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:07:23,159.159 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:07:23,240.240 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:07:23,242.242 INFO    ] No camera update needed
[2026-08-31 05:07:23,245.245 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:07:23,248.248 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:07:23,254.254 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:07:23,259.259 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:07:25,300.300 INFO    ] ================================================
[2026-08-31 05:07:25,315.315 INFO    ] Launching Daemon at Mon Aug 31 05:07:25 IST 2026
[2026-08-31 05:07:25,326.326 INFO    ] ================================================
[2026-08-31 05:07:25,892.892 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:07:25
[2026-08-31 05:07:26,473.473 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:07:26,721.721 INFO    ] Initializing speech engine...
[2026-08-31 05:07:26,743.743 INFO    ] 2026-08-31 05:07:26
[2026-08-31 05:07:27,006.006 INFO    ] 2026-08-31 05:07:26
[2026-08-31 05:07:27,042.042 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:07:27,241.241 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:07:27,295.295 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:07:27,453.453 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:07:27,487.487 INFO    ] time= 31/08/2026 05:07:27
[2026-08-31 05:07:27,537.537 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:07:27,585.585 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:07:27,645.645 INFO    ] No existing commands found in stream
[2026-08-31 05:07:32,665.665 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:07:32,668.668 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-08-31 05:07:33,828.828 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 05:07:33,831.831 INFO    ] Checking for system updates...
[2026-08-31 05:07:33,866.866 INFO    ] 200
[2026-08-31 05:07:33,869.869 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:07:33,922.922 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:07:33,924.924 INFO    ] No update needed
[2026-08-31 05:07:33,926.926 INFO    ] Checking for camera pi updates...
[2026-08-31 05:07:33,960.960 INFO    ] 200
[2026-08-31 05:07:33,962.962 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:07:34,007.007 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:07:34,088.088 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:07:34,091.091 INFO    ] No camera update needed
[2026-08-31 05:07:34,093.093 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:07:34,095.095 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:07:34,101.101 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:07:34,105.105 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:07:36,148.148 INFO    ] ================================================
[2026-08-31 05:07:36,163.163 INFO    ] Launching Daemon at Mon Aug 31 05:07:36 IST 2026
[2026-08-31 05:07:36,174.174 INFO    ] ================================================
[2026-08-31 05:07:36,740.740 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:07:36
[2026-08-31 05:07:37,321.321 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:07:37,583.583 INFO    ] Initializing speech engine...
[2026-08-31 05:07:37,604.604 INFO    ] 2026-08-31 05:07:37
[2026-08-31 05:07:37,873.873 INFO    ] 2026-08-31 05:07:37
[2026-08-31 05:07:37,908.908 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:07:38,105.105 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:07:38,110.110 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:07:38,289.289 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:07:38,295.295 INFO    ] time= 31/08/2026 05:07:38
[2026-08-31 05:07:38,301.301 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:07:38,329.329 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:07:38,419.419 INFO    ] No existing commands found in stream
[2026-08-31 05:07:43,454.454 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:07:43,456.456 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-08-31 05:07:44,727.727 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 05:07:44,729.729 INFO    ] Checking for system updates...
[2026-08-31 05:07:44,764.764 INFO    ] 200
[2026-08-31 05:07:44,767.767 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:07:44,825.825 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:07:44,827.827 INFO    ] No update needed
[2026-08-31 05:07:44,830.830 INFO    ] Checking for camera pi updates...
[2026-08-31 05:07:44,863.863 INFO    ] 200
[2026-08-31 05:07:44,865.865 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:07:44,905.905 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:07:44,993.993 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:07:44,995.995 INFO    ] No camera update needed
[2026-08-31 05:07:44,998.998 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:07:45,000.000 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:07:45,006.006 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:07:45,011.011 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:07:47,053.053 INFO    ] ================================================
[2026-08-31 05:07:47,068.068 INFO    ] Launching Daemon at Mon Aug 31 05:07:47 IST 2026
[2026-08-31 05:07:47,079.079 INFO    ] ================================================
[2026-08-31 05:07:47,648.648 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:07:47
[2026-08-31 05:07:48,237.237 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:07:48,504.504 INFO    ] Initializing speech engine...
[2026-08-31 05:07:48,522.522 INFO    ] 2026-08-31 05:07:48
[2026-08-31 05:07:48,793.793 INFO    ] 2026-08-31 05:07:48
[2026-08-31 05:07:48,831.831 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:07:49,050.050 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:07:49,094.094 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:07:49,276.276 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:07:49,319.319 INFO    ] time= 31/08/2026 05:07:49
[2026-08-31 05:07:49,363.363 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:07:49,412.412 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:07:49,487.487 INFO    ] No existing commands found in stream
[2026-08-31 05:07:54,499.499 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:07:54,502.502 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-08-31 05:07:55,135.135 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 05:07:55,138.138 INFO    ] Checking for system updates...
[2026-08-31 05:07:55,174.174 INFO    ] 200
[2026-08-31 05:07:55,176.176 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:07:55,231.231 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:07:55,233.233 INFO    ] No update needed
[2026-08-31 05:07:55,236.236 INFO    ] Checking for camera pi updates...
[2026-08-31 05:07:55,270.270 INFO    ] 200
[2026-08-31 05:07:55,273.273 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:07:55,314.314 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:07:55,399.399 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:07:55,402.402 INFO    ] No camera update needed
[2026-08-31 05:07:55,404.404 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:07:55,407.407 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:07:55,413.413 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:07:55,419.419 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:07:57,461.461 INFO    ] ================================================
[2026-08-31 05:07:57,482.482 INFO    ] Launching Daemon at Mon Aug 31 05:07:57 IST 2026
[2026-08-31 05:07:57,493.493 INFO    ] ================================================
[2026-08-31 05:07:58,136.136 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:07:58
[2026-08-31 05:07:58,798.798 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:07:59,102.102 INFO    ] Initializing speech engine...
[2026-08-31 05:07:59,113.113 INFO    ] 2026-08-31 05:07:59
[2026-08-31 05:07:59,396.396 INFO    ] 2026-08-31 05:07:59
[2026-08-31 05:07:59,433.433 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:07:59,685.685 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:07:59,705.705 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:07:59,920.920 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:07:59,928.928 INFO    ] time= 31/08/2026 05:07:59
[2026-08-31 05:07:59,949.949 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:07:59,976.976 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:08:00,080.080 INFO    ] No existing commands found in stream
[2026-08-31 05:08:05,094.094 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:08:05,097.097 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-08-31 05:08:08,722.722 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 05:08:08,725.725 INFO    ] Checking for system updates...
[2026-08-31 05:08:08,763.763 INFO    ] 200
[2026-08-31 05:08:08,765.765 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:08:08,824.824 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:08:08,827.827 INFO    ] No update needed
[2026-08-31 05:08:08,830.830 INFO    ] Checking for camera pi updates...
[2026-08-31 05:08:08,868.868 INFO    ] 200
[2026-08-31 05:08:08,871.871 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:08:08,913.913 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:08:08,972.972 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:08:08,974.974 INFO    ] No camera update needed
[2026-08-31 05:08:08,977.977 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:08:08,980.980 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:08:08,986.986 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:08:08,992.992 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:08:11,032.032 INFO    ] ================================================
[2026-08-31 05:08:11,047.047 INFO    ] Launching Daemon at Mon Aug 31 05:08:11 IST 2026
[2026-08-31 05:08:11,058.058 INFO    ] ================================================
[2026-08-31 05:08:11,645.645 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:08:11
[2026-08-31 05:08:12,230.230 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:08:12,483.483 INFO    ] Initializing speech engine...
[2026-08-31 05:08:12,491.491 INFO    ] 2026-08-31 05:08:12
[2026-08-31 05:08:12,784.784 INFO    ] 2026-08-31 05:08:12
[2026-08-31 05:08:12,819.819 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:08:13,014.014 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:08:13,030.030 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:08:13,206.206 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:08:13,212.212 INFO    ] time= 31/08/2026 05:08:13
[2026-08-31 05:08:13,219.219 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:08:13,259.259 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:08:13,370.370 INFO    ] No existing commands found in stream
[2026-08-31 05:08:18,390.390 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:08:18,393.393 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-08-31 05:08:19,732.732 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 05:08:19,735.735 INFO    ] Checking for system updates...
[2026-08-31 05:08:19,771.771 INFO    ] 200
[2026-08-31 05:08:19,774.774 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:08:19,825.825 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:08:19,828.828 INFO    ] No update needed
[2026-08-31 05:08:19,831.831 INFO    ] Checking for camera pi updates...
[2026-08-31 05:08:19,865.865 INFO    ] 200
[2026-08-31 05:08:19,867.867 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:08:19,908.908 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:08:19,994.994 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:08:19,996.996 INFO    ] No camera update needed
[2026-08-31 05:08:19,999.999 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:08:20,001.001 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:08:20,007.007 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:08:20,012.012 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:08:22,053.053 INFO    ] ================================================
[2026-08-31 05:08:22,069.069 INFO    ] Launching Daemon at Mon Aug 31 05:08:22 IST 2026
[2026-08-31 05:08:22,079.079 INFO    ] ================================================
[2026-08-31 05:08:22,660.660 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:08:22
[2026-08-31 05:08:23,284.284 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:08:23,538.538 INFO    ] Initializing speech engine...
[2026-08-31 05:08:23,555.555 INFO    ] 2026-08-31 05:08:23
[2026-08-31 05:08:23,841.841 INFO    ] 2026-08-31 05:08:23
[2026-08-31 05:08:23,876.876 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:08:24,082.082 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:08:24,100.100 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:08:24,250.250 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:08:24,255.255 INFO    ] time= 31/08/2026 05:08:24
[2026-08-31 05:08:24,261.261 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:08:24,289.289 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:08:24,427.427 INFO    ] No existing commands found in stream
[2026-08-31 05:08:29,447.447 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:08:29,450.450 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-08-31 05:08:30,457.457 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 05:08:30,460.460 INFO    ] Checking for system updates...
[2026-08-31 05:08:30,496.496 INFO    ] 200
[2026-08-31 05:08:30,498.498 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:08:30,551.551 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:08:30,554.554 INFO    ] No update needed
[2026-08-31 05:08:30,557.557 INFO    ] Checking for camera pi updates...
[2026-08-31 05:08:30,590.590 INFO    ] 200
[2026-08-31 05:08:30,593.593 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:08:30,637.637 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:08:30,711.711 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:08:30,714.714 INFO    ] No camera update needed
[2026-08-31 05:08:30,716.716 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:08:30,719.719 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:08:30,724.724 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:08:30,729.729 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:08:32,769.769 INFO    ] ================================================
[2026-08-31 05:08:32,920.920 INFO    ] Launching Daemon at Mon Aug 31 05:08:32 IST 2026
[2026-08-31 05:08:32,931.931 INFO    ] ================================================
[2026-08-31 05:08:33,576.576 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:08:33
[2026-08-31 05:08:34,236.236 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:08:34,534.534 INFO    ] Initializing speech engine...
[2026-08-31 05:08:34,547.547 INFO    ] 2026-08-31 05:08:34
[2026-08-31 05:08:34,812.812 INFO    ] 2026-08-31 05:08:34
[2026-08-31 05:08:34,863.863 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:08:35,085.085 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:08:35,094.094 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:08:35,226.226 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:08:35,253.253 INFO    ] time= 31/08/2026 05:08:35
[2026-08-31 05:08:35,312.312 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:08:35,360.360 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:08:35,494.494 INFO    ] No existing commands found in stream
[2026-08-31 05:08:40,518.518 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:08:40,521.521 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-08-31 05:08:41,667.667 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 05:08:41,670.670 INFO    ] Checking for system updates...
[2026-08-31 05:08:41,706.706 INFO    ] 200
[2026-08-31 05:08:41,710.710 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:08:41,762.762 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:08:41,765.765 INFO    ] No update needed
[2026-08-31 05:08:41,768.768 INFO    ] Checking for camera pi updates...
[2026-08-31 05:08:41,806.806 INFO    ] 200
[2026-08-31 05:08:41,808.808 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:08:41,854.854 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:08:41,934.934 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:08:41,937.937 INFO    ] No camera update needed
[2026-08-31 05:08:41,940.940 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:08:41,942.942 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:08:41,949.949 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:08:41,954.954 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:08:44,996.996 INFO    ] ================================================
[2026-08-31 05:08:44,012.012 INFO    ] Launching Daemon at Mon Aug 31 05:08:44 IST 2026
[2026-08-31 05:08:44,023.023 INFO    ] ================================================
[2026-08-31 05:08:44,588.588 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:08:44
[2026-08-31 05:08:45,173.173 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:08:45,441.441 INFO    ] Initializing speech engine...
[2026-08-31 05:08:45,450.450 INFO    ] 2026-08-31 05:08:45
[2026-08-31 05:08:45,696.696 INFO    ] 2026-08-31 05:08:45
[2026-08-31 05:08:45,732.732 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:08:45,983.983 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:08:45,992.992 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:08:46,203.203 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:08:46,250.250 INFO    ] time= 31/08/2026 05:08:46
[2026-08-31 05:08:46,256.256 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:08:46,274.274 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:08:46,407.407 INFO    ] No existing commands found in stream
[2026-08-31 05:08:51,429.429 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:08:51,432.432 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-08-31 05:08:54,842.842 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 05:08:54,845.845 INFO    ] Checking for system updates...
[2026-08-31 05:08:54,880.880 INFO    ] 200
[2026-08-31 05:08:54,883.883 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:08:54,935.935 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:08:54,937.937 INFO    ] No update needed
[2026-08-31 05:08:54,940.940 INFO    ] Checking for camera pi updates...
[2026-08-31 05:08:54,973.973 INFO    ] 200
[2026-08-31 05:08:54,975.975 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:08:55,018.018 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:08:55,100.100 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:08:55,103.103 INFO    ] No camera update needed
[2026-08-31 05:08:55,105.105 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:08:55,107.107 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:08:55,113.113 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:08:55,118.118 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:08:57,160.160 INFO    ] ================================================
[2026-08-31 05:08:57,175.175 INFO    ] Launching Daemon at Mon Aug 31 05:08:57 IST 2026
[2026-08-31 05:08:57,185.185 INFO    ] ================================================
[2026-08-31 05:08:57,810.810 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:08:57
[2026-08-31 05:08:58,390.390 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:08:58,641.641 INFO    ] Initializing speech engine...
[2026-08-31 05:08:58,664.664 INFO    ] 2026-08-31 05:08:58
[2026-08-31 05:08:58,917.917 INFO    ] 2026-08-31 05:08:58
[2026-08-31 05:08:58,953.953 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:08:59,149.149 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:08:59,157.157 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:08:59,398.398 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:08:59,453.453 INFO    ] time= 31/08/2026 05:08:59
[2026-08-31 05:08:59,499.499 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:08:59,505.505 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:08:59,643.643 INFO    ] No existing commands found in stream
[2026-08-31 05:09:04,663.663 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:09:04,666.666 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-08-31 05:09:07,892.892 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 05:09:07,895.895 INFO    ] Checking for system updates...
[2026-08-31 05:09:07,930.930 INFO    ] 200
[2026-08-31 05:09:07,932.932 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:09:07,989.989 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:09:07,992.992 INFO    ] No update needed
[2026-08-31 05:09:07,994.994 INFO    ] Checking for camera pi updates...
[2026-08-31 05:09:08,027.027 INFO    ] 200
[2026-08-31 05:09:08,030.030 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:09:08,075.075 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:09:08,165.165 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:09:08,167.167 INFO    ] No camera update needed
[2026-08-31 05:09:08,170.170 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:09:08,172.172 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:09:08,179.179 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:09:08,184.184 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:09:10,227.227 INFO    ] ================================================
[2026-08-31 05:09:10,242.242 INFO    ] Launching Daemon at Mon Aug 31 05:09:10 IST 2026
[2026-08-31 05:09:10,252.252 INFO    ] ================================================
[2026-08-31 05:09:10,829.829 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:09:10
[2026-08-31 05:09:11,432.432 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:09:11,692.692 INFO    ] Initializing speech engine...
[2026-08-31 05:09:11,716.716 INFO    ] 2026-08-31 05:09:11
[2026-08-31 05:09:11,989.989 INFO    ] 2026-08-31 05:09:11
[2026-08-31 05:09:12,024.024 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:09:12,206.206 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:09:12,219.219 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:09:12,369.369 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:09:12,374.374 INFO    ] time= 31/08/2026 05:09:12
[2026-08-31 05:09:12,381.381 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:09:12,426.426 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:09:12,564.564 INFO    ] No existing commands found in stream
[2026-08-31 05:09:17,585.585 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:09:17,588.588 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-08-31 05:09:20,699.699 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 05:09:20,701.701 INFO    ] Checking for system updates...
[2026-08-31 05:09:20,736.736 INFO    ] 200
[2026-08-31 05:09:20,739.739 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:09:20,796.796 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:09:20,798.798 INFO    ] No update needed
[2026-08-31 05:09:20,801.801 INFO    ] Checking for camera pi updates...
[2026-08-31 05:09:20,833.833 INFO    ] 200
[2026-08-31 05:09:20,836.836 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:09:20,876.876 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:09:20,974.974 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:09:20,976.976 INFO    ] No camera update needed
[2026-08-31 05:09:20,979.979 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:09:20,981.981 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:09:20,986.986 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:09:20,991.991 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:09:23,031.031 INFO    ] ================================================
[2026-08-31 05:09:23,047.047 INFO    ] Launching Daemon at Mon Aug 31 05:09:23 IST 2026
[2026-08-31 05:09:23,058.058 INFO    ] ================================================
[2026-08-31 05:09:23,699.699 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:09:23
[2026-08-31 05:09:24,333.333 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:09:24,606.606 INFO    ] Initializing speech engine...
[2026-08-31 05:09:24,616.616 INFO    ] 2026-08-31 05:09:24
[2026-08-31 05:09:24,864.864 INFO    ] 2026-08-31 05:09:24
[2026-08-31 05:09:24,934.934 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:09:25,158.158 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:09:25,163.163 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:09:25,295.295 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:09:25,344.344 INFO    ] time= 31/08/2026 05:09:25
[2026-08-31 05:09:25,418.418 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:09:25,433.433 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:09:25,562.562 INFO    ] No existing commands found in stream
[2026-08-31 05:09:30,586.586 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:09:30,589.589 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-08-31 05:09:34,616.616 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 05:09:34,619.619 INFO    ] Checking for system updates...
[2026-08-31 05:09:34,660.660 INFO    ] 200
[2026-08-31 05:09:34,663.663 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:09:34,722.722 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:09:34,725.725 INFO    ] No update needed
[2026-08-31 05:09:34,727.727 INFO    ] Checking for camera pi updates...
[2026-08-31 05:09:34,763.763 INFO    ] 200
[2026-08-31 05:09:34,765.765 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:09:34,807.807 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:09:34,891.891 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:09:34,894.894 INFO    ] No camera update needed
[2026-08-31 05:09:34,897.897 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:09:34,899.899 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:09:34,905.905 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:09:34,911.911 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:09:36,954.954 INFO    ] ================================================
[2026-08-31 05:09:36,969.969 INFO    ] Launching Daemon at Mon Aug 31 05:09:36 IST 2026
[2026-08-31 05:09:36,980.980 INFO    ] ================================================
[2026-08-31 05:09:37,583.583 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:09:37
[2026-08-31 05:09:38,164.164 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:09:38,435.435 INFO    ] Initializing speech engine...
[2026-08-31 05:09:38,443.443 INFO    ] 2026-08-31 05:09:38
[2026-08-31 05:09:38,703.703 INFO    ] 2026-08-31 05:09:38
[2026-08-31 05:09:38,732.732 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:09:38,975.975 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:09:38,984.984 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:09:39,122.122 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:09:39,191.191 INFO    ] time= 31/08/2026 05:09:39
[2026-08-31 05:09:39,243.243 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:09:39,249.249 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:09:39,379.379 INFO    ] No existing commands found in stream
[2026-08-31 05:09:44,400.400 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:09:44,403.403 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-08-31 05:09:47,802.802 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 05:09:47,805.805 INFO    ] Checking for system updates...
[2026-08-31 05:09:47,841.841 INFO    ] 200
[2026-08-31 05:09:47,843.843 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:09:47,895.895 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:09:47,897.897 INFO    ] No update needed
[2026-08-31 05:09:47,899.899 INFO    ] Checking for camera pi updates...
[2026-08-31 05:09:47,933.933 INFO    ] 200
[2026-08-31 05:09:47,935.935 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:09:47,980.980 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:09:48,062.062 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:09:48,064.064 INFO    ] No camera update needed
[2026-08-31 05:09:48,067.067 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:09:48,069.069 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:09:48,074.074 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:09:48,079.079 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:09:50,119.119 INFO    ] ================================================
[2026-08-31 05:09:50,135.135 INFO    ] Launching Daemon at Mon Aug 31 05:09:50 IST 2026
[2026-08-31 05:09:50,146.146 INFO    ] ================================================
[2026-08-31 05:09:50,712.712 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:09:50
[2026-08-31 05:09:51,294.294 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:09:51,561.561 INFO    ] Initializing speech engine...
[2026-08-31 05:09:51,570.570 INFO    ] 2026-08-31 05:09:51
[2026-08-31 05:09:51,829.829 INFO    ] 2026-08-31 05:09:51
[2026-08-31 05:09:51,882.882 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:09:52,106.106 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:09:52,112.112 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:09:52,325.325 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:09:52,369.369 INFO    ] time= 31/08/2026 05:09:52
[2026-08-31 05:09:52,375.375 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:09:52,393.393 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:09:52,519.519 INFO    ] No existing commands found in stream
[2026-08-31 05:09:57,529.529 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:09:57,532.532 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-08-31 05:10:00,782.782 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 05:10:00,785.785 INFO    ] Checking for system updates...
[2026-08-31 05:10:00,824.824 INFO    ] 200
[2026-08-31 05:10:00,826.826 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:10:00,884.884 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:10:00,886.886 INFO    ] No update needed
[2026-08-31 05:10:00,889.889 INFO    ] Checking for camera pi updates...
[2026-08-31 05:10:00,922.922 INFO    ] 200
[2026-08-31 05:10:00,925.925 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:10:00,964.964 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:10:01,048.048 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:10:01,050.050 INFO    ] No camera update needed
[2026-08-31 05:10:01,053.053 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:10:01,055.055 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:10:01,060.060 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:10:01,065.065 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:10:03,131.131 INFO    ] ================================================
[2026-08-31 05:10:03,163.163 INFO    ] Launching Daemon at Mon Aug 31 05:10:03 IST 2026
[2026-08-31 05:10:03,185.185 INFO    ] ================================================
[2026-08-31 05:10:03,781.781 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:10:03
[2026-08-31 05:10:04,361.361 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:10:04,620.620 INFO    ] Initializing speech engine...
[2026-08-31 05:10:04,638.638 INFO    ] 2026-08-31 05:10:04
[2026-08-31 05:10:04,884.884 INFO    ] 2026-08-31 05:10:04
[2026-08-31 05:10:04,920.920 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:10:05,171.171 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:10:05,180.180 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:10:05,360.360 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:10:05,419.419 INFO    ] time= 31/08/2026 05:10:05
[2026-08-31 05:10:05,443.443 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:10:05,458.458 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:10:05,571.571 INFO    ] No existing commands found in stream
[2026-08-31 05:10:10,598.598 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:10:10,601.601 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-08-31 05:10:15,091.091 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 05:10:15,094.094 INFO    ] Checking for system updates...
[2026-08-31 05:10:15,133.133 INFO    ] 200
[2026-08-31 05:10:15,135.135 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:10:15,192.192 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:10:15,195.195 INFO    ] No update needed
[2026-08-31 05:10:15,197.197 INFO    ] Checking for camera pi updates...
[2026-08-31 05:10:15,231.231 INFO    ] 200
[2026-08-31 05:10:15,234.234 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:10:15,278.278 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:10:15,476.476 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:10:15,479.479 INFO    ] No camera update needed
[2026-08-31 05:10:15,482.482 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:10:15,484.484 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:10:15,491.491 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:10:15,496.496 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:10:17,537.537 INFO    ] ================================================
[2026-08-31 05:10:17,552.552 INFO    ] Launching Daemon at Mon Aug 31 05:10:17 IST 2026
[2026-08-31 05:10:17,562.562 INFO    ] ================================================
[2026-08-31 05:10:18,125.125 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:10:18
[2026-08-31 05:10:18,707.707 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:10:18,962.962 INFO    ] Initializing speech engine...
[2026-08-31 05:10:18,968.968 INFO    ] 2026-08-31 05:10:18
[2026-08-31 05:10:19,263.263 INFO    ] 2026-08-31 05:10:19
[2026-08-31 05:10:19,299.299 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:10:19,568.568 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:10:19,579.579 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:10:19,710.710 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:10:19,758.758 INFO    ] time= 31/08/2026 05:10:19
[2026-08-31 05:10:19,807.807 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:10:19,844.844 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:10:19,976.976 INFO    ] No existing commands found in stream
[2026-08-31 05:10:25,000.000 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:10:25,003.003 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-08-31 05:10:28,462.462 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 05:10:28,465.465 INFO    ] Checking for system updates...
[2026-08-31 05:10:28,500.500 INFO    ] 200
[2026-08-31 05:10:28,502.502 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:10:28,554.554 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:10:28,557.557 INFO    ] No update needed
[2026-08-31 05:10:28,559.559 INFO    ] Checking for camera pi updates...
[2026-08-31 05:10:28,595.595 INFO    ] 200
[2026-08-31 05:10:28,597.597 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:10:28,637.637 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:10:28,720.720 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:10:28,722.722 INFO    ] No camera update needed
[2026-08-31 05:10:28,725.725 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:10:28,727.727 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:10:28,732.732 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:10:28,737.737 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:10:30,778.778 INFO    ] ================================================
[2026-08-31 05:10:30,793.793 INFO    ] Launching Daemon at Mon Aug 31 05:10:30 IST 2026
[2026-08-31 05:10:30,804.804 INFO    ] ================================================
[2026-08-31 05:10:31,368.368 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:10:31
[2026-08-31 05:10:31,979.979 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:10:32,267.267 INFO    ] Initializing speech engine...
[2026-08-31 05:10:32,272.272 INFO    ] 2026-08-31 05:10:32
[2026-08-31 05:10:32,546.546 INFO    ] 2026-08-31 05:10:32
[2026-08-31 05:10:32,586.586 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:10:32,783.783 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:10:32,790.790 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:10:32,960.960 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:10:32,983.983 INFO    ] time= 31/08/2026 05:10:32
[2026-08-31 05:10:32,988.988 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:10:32,994.994 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:10:33,131.131 INFO    ] No existing commands found in stream
[2026-08-31 05:10:38,175.175 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:10:38,178.178 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-08-31 05:10:41,605.605 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 05:10:41,607.607 INFO    ] Checking for system updates...
[2026-08-31 05:10:41,643.643 INFO    ] 200
[2026-08-31 05:10:41,646.646 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:10:41,703.703 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:10:41,706.706 INFO    ] No update needed
[2026-08-31 05:10:41,708.708 INFO    ] Checking for camera pi updates...
[2026-08-31 05:10:41,741.741 INFO    ] 200
[2026-08-31 05:10:41,744.744 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:10:41,784.784 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:10:41,878.878 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:10:41,880.880 INFO    ] No camera update needed
[2026-08-31 05:10:41,883.883 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:10:41,885.885 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:10:41,891.891 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:10:41,897.897 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:10:43,941.941 INFO    ] ================================================
[2026-08-31 05:10:43,955.955 INFO    ] Launching Daemon at Mon Aug 31 05:10:43 IST 2026
[2026-08-31 05:10:43,966.966 INFO    ] ================================================
[2026-08-31 05:10:44,551.551 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:10:44
[2026-08-31 05:10:45,145.145 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:10:45,412.412 INFO    ] Initializing speech engine...
[2026-08-31 05:10:45,432.432 INFO    ] 2026-08-31 05:10:45
[2026-08-31 05:10:45,695.695 INFO    ] 2026-08-31 05:10:45
[2026-08-31 05:10:45,733.733 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:10:45,918.918 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:10:45,934.934 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:10:46,092.092 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:10:46,098.098 INFO    ] time= 31/08/2026 05:10:46
[2026-08-31 05:10:46,105.105 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:10:46,146.146 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:10:46,283.283 INFO    ] No existing commands found in stream
[2026-08-31 05:10:51,314.314 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:10:51,316.316 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-08-31 05:10:53,380.380 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 05:10:53,383.383 INFO    ] Checking for system updates...
[2026-08-31 05:10:53,418.418 INFO    ] 200
[2026-08-31 05:10:53,420.420 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:10:53,480.480 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:10:53,483.483 INFO    ] No update needed
[2026-08-31 05:10:53,485.485 INFO    ] Checking for camera pi updates...
[2026-08-31 05:10:53,521.521 INFO    ] 200
[2026-08-31 05:10:53,523.523 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:10:53,563.563 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:10:53,661.661 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:10:53,664.664 INFO    ] No camera update needed
[2026-08-31 05:10:53,666.666 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:10:53,668.668 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:10:53,674.674 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:10:53,679.679 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:10:55,720.720 INFO    ] ================================================
[2026-08-31 05:10:55,736.736 INFO    ] Launching Daemon at Mon Aug 31 05:10:55 IST 2026
[2026-08-31 05:10:55,748.748 INFO    ] ================================================
[2026-08-31 05:10:56,352.352 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:10:56
[2026-08-31 05:10:56,949.949 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:10:57,231.231 INFO    ] Initializing speech engine...
[2026-08-31 05:10:57,236.236 INFO    ] 2026-08-31 05:10:57
[2026-08-31 05:10:57,483.483 INFO    ] 2026-08-31 05:10:57
[2026-08-31 05:10:57,549.549 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:10:57,775.775 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:10:57,780.780 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:10:57,913.913 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:10:57,952.952 INFO    ] time= 31/08/2026 05:10:57
[2026-08-31 05:10:58,001.001 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:10:58,044.044 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:10:58,177.177 INFO    ] No existing commands found in stream
[2026-08-31 05:11:03,200.200 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:11:03,202.202 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-08-31 05:11:07,655.655 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 05:11:07,659.659 INFO    ] Checking for system updates...
[2026-08-31 05:11:07,698.698 INFO    ] 200
[2026-08-31 05:11:07,701.701 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:11:07,764.764 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:11:07,766.766 INFO    ] No update needed
[2026-08-31 05:11:07,769.769 INFO    ] Checking for camera pi updates...
[2026-08-31 05:11:07,805.805 INFO    ] 200
[2026-08-31 05:11:07,807.807 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:11:07,849.849 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:11:07,939.939 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:11:07,941.941 INFO    ] No camera update needed
[2026-08-31 05:11:07,944.944 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:11:07,946.946 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:11:07,951.951 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:11:07,956.956 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:11:10,997.997 INFO    ] ================================================
[2026-08-31 05:11:10,012.012 INFO    ] Launching Daemon at Mon Aug 31 05:11:10 IST 2026
[2026-08-31 05:11:10,023.023 INFO    ] ================================================
[2026-08-31 05:11:10,588.588 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:11:10
[2026-08-31 05:11:11,171.171 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:11:11,426.426 INFO    ] Initializing speech engine...
[2026-08-31 05:11:11,440.440 INFO    ] 2026-08-31 05:11:11
[2026-08-31 05:11:11,717.717 INFO    ] 2026-08-31 05:11:11
[2026-08-31 05:11:11,742.742 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:11:11,973.973 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:11:12,001.001 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:11:12,125.125 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:11:12,132.132 INFO    ] time= 31/08/2026 05:11:12
[2026-08-31 05:11:12,154.154 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:11:12,205.205 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:11:12,331.331 INFO    ] No existing commands found in stream
[2026-08-31 05:11:17,357.357 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:11:17,360.360 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-08-31 05:11:20,866.866 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 05:11:20,869.869 INFO    ] Checking for system updates...
[2026-08-31 05:11:20,904.904 INFO    ] 200
[2026-08-31 05:11:20,906.906 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:11:20,957.957 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:11:20,960.960 INFO    ] No update needed
[2026-08-31 05:11:20,962.962 INFO    ] Checking for camera pi updates...
[2026-08-31 05:11:20,995.995 INFO    ] 200
[2026-08-31 05:11:20,998.998 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:11:21,037.037 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:11:21,117.117 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:11:21,120.120 INFO    ] No camera update needed
[2026-08-31 05:11:21,122.122 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:11:21,124.124 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:11:21,129.129 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:11:21,134.134 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:11:23,175.175 INFO    ] ================================================
[2026-08-31 05:11:23,190.190 INFO    ] Launching Daemon at Mon Aug 31 05:11:23 IST 2026
[2026-08-31 05:11:23,204.204 INFO    ] ================================================
[2026-08-31 05:11:23,769.769 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:11:23
[2026-08-31 05:11:24,368.368 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:11:24,630.630 INFO    ] Initializing speech engine...
[2026-08-31 05:11:24,644.644 INFO    ] 2026-08-31 05:11:24
[2026-08-31 05:11:24,925.925 INFO    ] 2026-08-31 05:11:24
[2026-08-31 05:11:24,964.964 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:11:25,166.166 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:11:25,183.183 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:11:25,327.327 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:11:25,335.335 INFO    ] time= 31/08/2026 05:11:25
[2026-08-31 05:11:25,339.339 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:11:25,345.345 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:11:25,416.416 INFO    ] No existing commands found in stream
[2026-08-31 05:11:30,434.434 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:11:30,437.437 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-08-31 05:11:32,471.471 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 05:11:32,474.474 INFO    ] Checking for system updates...
[2026-08-31 05:11:32,517.517 INFO    ] 200
[2026-08-31 05:11:32,519.519 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:11:32,584.584 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:11:32,586.586 INFO    ] No update needed
[2026-08-31 05:11:32,589.589 INFO    ] Checking for camera pi updates...
[2026-08-31 05:11:32,628.628 INFO    ] 200
[2026-08-31 05:11:32,631.631 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:11:32,673.673 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:11:32,792.792 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:11:32,795.795 INFO    ] No camera update needed
[2026-08-31 05:11:32,798.798 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:11:32,801.801 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:11:32,807.807 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:11:32,813.813 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:11:34,856.856 INFO    ] ================================================
[2026-08-31 05:11:34,871.871 INFO    ] Launching Daemon at Mon Aug 31 05:11:34 IST 2026
[2026-08-31 05:11:34,882.882 INFO    ] ================================================
[2026-08-31 05:11:35,455.455 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:11:35
[2026-08-31 05:11:36,043.043 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:11:36,354.354 INFO    ] Initializing speech engine...
[2026-08-31 05:11:36,366.366 INFO    ] 2026-08-31 05:11:36
[2026-08-31 05:11:36,682.682 INFO    ] 2026-08-31 05:11:36
[2026-08-31 05:11:36,765.765 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:11:36,980.980 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:11:36,986.986 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:11:37,175.175 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:11:37,191.191 INFO    ] time= 31/08/2026 05:11:37
[2026-08-31 05:11:37,210.210 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:11:37,240.240 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:11:37,353.353 INFO    ] No existing commands found in stream
[2026-08-31 05:11:42,389.389 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:11:42,393.393 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-08-31 05:11:43,625.625 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 05:11:43,628.628 INFO    ] Checking for system updates...
[2026-08-31 05:11:43,665.665 INFO    ] 200
[2026-08-31 05:11:43,668.668 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:11:43,720.720 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:11:43,723.723 INFO    ] No update needed
[2026-08-31 05:11:43,725.725 INFO    ] Checking for camera pi updates...
[2026-08-31 05:11:43,763.763 INFO    ] 200
[2026-08-31 05:11:43,765.765 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:11:43,811.811 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:11:43,912.912 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:11:43,915.915 INFO    ] No camera update needed
[2026-08-31 05:11:43,918.918 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:11:43,920.920 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:11:43,925.925 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:11:43,931.931 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:11:45,970.970 INFO    ] ================================================
[2026-08-31 05:11:45,986.986 INFO    ] Launching Daemon at Mon Aug 31 05:11:45 IST 2026
[2026-08-31 05:11:46,997.997 INFO    ] ================================================
[2026-08-31 05:11:46,661.661 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:11:46
[2026-08-31 05:11:47,345.345 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:11:47,656.656 INFO    ] Initializing speech engine...
[2026-08-31 05:11:47,668.668 INFO    ] 2026-08-31 05:11:47
[2026-08-31 05:11:47,980.980 INFO    ] 2026-08-31 05:11:47
[2026-08-31 05:11:48,066.066 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:11:48,281.281 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:11:48,289.289 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:11:48,480.480 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:11:48,499.499 INFO    ] time= 31/08/2026 05:11:48
[2026-08-31 05:11:48,509.509 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:11:48,535.535 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:11:48,642.642 INFO    ] No existing commands found in stream
[2026-08-31 05:11:53,673.673 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:11:53,676.676 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-08-31 05:11:56,964.964 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 05:11:56,968.968 INFO    ] Checking for system updates...
[2026-08-31 05:11:57,005.005 INFO    ] 200
[2026-08-31 05:11:57,008.008 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:11:57,061.061 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:11:57,063.063 INFO    ] No update needed
[2026-08-31 05:11:57,065.065 INFO    ] Checking for camera pi updates...
[2026-08-31 05:11:57,099.099 INFO    ] 200
[2026-08-31 05:11:57,101.101 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:11:57,141.141 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:11:57,225.225 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:11:57,228.228 INFO    ] No camera update needed
[2026-08-31 05:11:57,230.230 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:11:57,232.232 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:11:57,238.238 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:11:57,243.243 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:11:59,285.285 INFO    ] ================================================
[2026-08-31 05:11:59,300.300 INFO    ] Launching Daemon at Mon Aug 31 05:11:59 IST 2026
[2026-08-31 05:11:59,312.312 INFO    ] ================================================
[2026-08-31 05:11:59,897.897 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:11:59
[2026-08-31 05:12:00,498.498 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:12:00,770.770 INFO    ] Initializing speech engine...
[2026-08-31 05:12:00,780.780 INFO    ] 2026-08-31 05:12:00
[2026-08-31 05:12:01,028.028 INFO    ] 2026-08-31 05:12:01
[2026-08-31 05:12:01,062.062 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:12:01,315.315 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:12:01,324.324 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:12:01,455.455 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:12:01,497.497 INFO    ] time= 31/08/2026 05:12:01
[2026-08-31 05:12:01,574.574 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:12:01,668.668 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:12:01,850.850 INFO    ] No existing commands found in stream
[2026-08-31 05:12:06,859.859 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:12:06,862.862 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-08-31 05:12:09,746.746 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 05:12:09,748.748 INFO    ] Checking for system updates...
[2026-08-31 05:12:09,786.786 INFO    ] 200
[2026-08-31 05:12:09,788.788 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:12:09,841.841 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:12:09,843.843 INFO    ] No update needed
[2026-08-31 05:12:09,845.845 INFO    ] Checking for camera pi updates...
[2026-08-31 05:12:09,881.881 INFO    ] 200
[2026-08-31 05:12:09,883.883 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:12:09,923.923 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:12:10,024.024 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:12:10,027.027 INFO    ] No camera update needed
[2026-08-31 05:12:10,029.029 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:12:10,032.032 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:12:10,037.037 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:12:10,042.042 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:12:12,083.083 INFO    ] ================================================
[2026-08-31 05:12:12,099.099 INFO    ] Launching Daemon at Mon Aug 31 05:12:12 IST 2026
[2026-08-31 05:12:12,115.115 INFO    ] ================================================
[2026-08-31 05:12:12,679.679 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:12:12
[2026-08-31 05:12:13,260.260 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:12:13,520.520 INFO    ] Initializing speech engine...
[2026-08-31 05:12:13,539.539 INFO    ] 2026-08-31 05:12:13
[2026-08-31 05:12:13,796.796 INFO    ] 2026-08-31 05:12:13
[2026-08-31 05:12:13,833.833 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:12:14,049.049 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:12:14,074.074 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:12:14,263.263 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:12:14,285.285 INFO    ] time= 31/08/2026 05:12:14
[2026-08-31 05:12:14,350.350 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:12:14,409.409 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:12:14,515.515 INFO    ] No existing commands found in stream
[2026-08-31 05:12:19,541.541 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:12:19,543.543 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-08-31 05:12:20,723.723 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 05:12:20,725.725 INFO    ] Checking for system updates...
[2026-08-31 05:12:20,761.761 INFO    ] 200
[2026-08-31 05:12:20,763.763 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:12:20,823.823 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:12:20,825.825 INFO    ] No update needed
[2026-08-31 05:12:20,828.828 INFO    ] Checking for camera pi updates...
[2026-08-31 05:12:20,863.863 INFO    ] 200
[2026-08-31 05:12:20,865.865 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:12:20,906.906 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:12:21,089.089 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:12:21,091.091 INFO    ] No camera update needed
[2026-08-31 05:12:21,093.093 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:12:21,096.096 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:12:21,101.101 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:12:21,106.106 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:12:23,147.147 INFO    ] ================================================
[2026-08-31 05:12:23,162.162 INFO    ] Launching Daemon at Mon Aug 31 05:12:23 IST 2026
[2026-08-31 05:12:23,173.173 INFO    ] ================================================
[2026-08-31 05:12:23,740.740 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:12:23
[2026-08-31 05:12:24,333.333 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:12:24,576.576 INFO    ] Initializing speech engine...
[2026-08-31 05:12:24,582.582 INFO    ] 2026-08-31 05:12:24
[2026-08-31 05:12:24,878.878 INFO    ] 2026-08-31 05:12:24
[2026-08-31 05:12:24,915.915 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:12:25,134.134 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:12:25,196.196 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:12:25,349.349 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:12:25,391.391 INFO    ] time= 31/08/2026 05:12:25
[2026-08-31 05:12:25,451.451 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:12:25,496.496 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:12:25,558.558 INFO    ] No existing commands found in stream
[2026-08-31 05:12:30,570.570 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:12:30,573.573 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-08-31 05:12:31,288.288 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 05:12:31,291.291 INFO    ] Checking for system updates...
[2026-08-31 05:12:31,326.326 INFO    ] 200
[2026-08-31 05:12:31,328.328 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:12:31,387.387 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:12:31,389.389 INFO    ] No update needed
[2026-08-31 05:12:31,392.392 INFO    ] Checking for camera pi updates...
[2026-08-31 05:12:31,425.425 INFO    ] 200
[2026-08-31 05:12:31,428.428 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:12:31,468.468 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:12:31,549.549 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:12:31,551.551 INFO    ] No camera update needed
[2026-08-31 05:12:31,554.554 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:12:31,556.556 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:12:31,562.562 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:12:31,567.567 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:12:33,608.608 INFO    ] ================================================
[2026-08-31 05:12:33,624.624 INFO    ] Launching Daemon at Mon Aug 31 05:12:33 IST 2026
[2026-08-31 05:12:33,635.635 INFO    ] ================================================
[2026-08-31 05:12:34,200.200 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:12:34
[2026-08-31 05:12:34,785.785 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:12:35,060.060 INFO    ] Initializing speech engine...
[2026-08-31 05:12:35,067.067 INFO    ] 2026-08-31 05:12:35
[2026-08-31 05:12:35,334.334 INFO    ] 2026-08-31 05:12:35
[2026-08-31 05:12:35,372.372 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:12:35,566.566 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:12:35,580.580 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:12:35,737.737 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:12:35,746.746 INFO    ] time= 31/08/2026 05:12:35
[2026-08-31 05:12:35,753.753 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:12:35,774.774 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:12:35,903.903 INFO    ] No existing commands found in stream
[2026-08-31 05:12:40,928.928 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:12:40,931.931 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-08-31 05:12:42,615.615 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 05:12:42,617.617 INFO    ] Checking for system updates...
[2026-08-31 05:12:42,656.656 INFO    ] 200
[2026-08-31 05:12:42,659.659 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:12:42,716.716 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:12:42,718.718 INFO    ] No update needed
[2026-08-31 05:12:42,721.721 INFO    ] Checking for camera pi updates...
[2026-08-31 05:12:42,754.754 INFO    ] 200
[2026-08-31 05:12:42,756.756 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:12:42,802.802 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:12:42,886.886 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:12:42,888.888 INFO    ] No camera update needed
[2026-08-31 05:12:42,891.891 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:12:42,893.893 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:12:42,898.898 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:12:42,903.903 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:12:44,943.943 INFO    ] ================================================
[2026-08-31 05:12:44,959.959 INFO    ] Launching Daemon at Mon Aug 31 05:12:44 IST 2026
[2026-08-31 05:12:44,970.970 INFO    ] ================================================
[2026-08-31 05:12:45,602.602 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:12:45
[2026-08-31 05:12:46,253.253 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:12:46,550.550 INFO    ] Initializing speech engine...
[2026-08-31 05:12:46,558.558 INFO    ] 2026-08-31 05:12:46
[2026-08-31 05:12:46,824.824 INFO    ] 2026-08-31 05:12:46
[2026-08-31 05:12:46,885.885 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:12:47,117.117 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:12:47,124.124 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:12:47,259.259 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:12:47,309.309 INFO    ] time= 31/08/2026 05:12:47
[2026-08-31 05:12:47,369.369 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:12:47,393.393 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:12:47,530.530 INFO    ] No existing commands found in stream
[2026-08-31 05:12:52,556.556 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:12:52,559.559 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-08-31 05:12:54,924.924 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 05:12:54,928.928 INFO    ] Checking for system updates...
[2026-08-31 05:12:54,968.968 INFO    ] 200
[2026-08-31 05:12:54,971.971 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:12:55,024.024 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:12:55,027.027 INFO    ] No update needed
[2026-08-31 05:12:55,030.030 INFO    ] Checking for camera pi updates...
[2026-08-31 05:12:55,067.067 INFO    ] 200
[2026-08-31 05:12:55,070.070 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:12:55,119.119 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:12:55,203.203 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:12:55,205.205 INFO    ] No camera update needed
[2026-08-31 05:12:55,207.207 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:12:55,210.210 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:12:55,215.215 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:12:55,220.220 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:12:57,260.260 INFO    ] ================================================
[2026-08-31 05:12:57,276.276 INFO    ] Launching Daemon at Mon Aug 31 05:12:57 IST 2026
[2026-08-31 05:12:57,287.287 INFO    ] ================================================
[2026-08-31 05:12:57,855.855 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:12:57
[2026-08-31 05:12:58,440.440 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:12:58,689.689 INFO    ] Initializing speech engine...
[2026-08-31 05:12:58,712.712 INFO    ] 2026-08-31 05:12:58
[2026-08-31 05:12:58,966.966 INFO    ] 2026-08-31 05:12:58
[2026-08-31 05:12:59,002.002 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:12:59,263.263 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:12:59,266.266 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:12:59,403.403 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:12:59,473.473 INFO    ] time= 31/08/2026 05:12:59
[2026-08-31 05:12:59,533.533 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:12:59,541.541 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:12:59,655.655 INFO    ] No existing commands found in stream
[2026-08-31 05:13:04,685.685 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:13:04,688.688 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-08-31 05:13:08,902.902 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 05:13:08,905.905 INFO    ] Checking for system updates...
[2026-08-31 05:13:08,941.941 INFO    ] 200
[2026-08-31 05:13:08,943.943 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:13:08,994.994 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:13:08,997.997 INFO    ] No update needed
[2026-08-31 05:13:08,999.999 INFO    ] Checking for camera pi updates...
[2026-08-31 05:13:09,033.033 INFO    ] 200
[2026-08-31 05:13:09,035.035 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:13:09,078.078 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:13:09,159.159 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:13:09,162.162 INFO    ] No camera update needed
[2026-08-31 05:13:09,164.164 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:13:09,166.166 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:13:09,172.172 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:13:09,177.177 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:13:11,219.219 INFO    ] ================================================
[2026-08-31 05:13:11,235.235 INFO    ] Launching Daemon at Mon Aug 31 05:13:11 IST 2026
[2026-08-31 05:13:11,246.246 INFO    ] ================================================
[2026-08-31 05:13:11,830.830 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:13:11
[2026-08-31 05:13:12,434.434 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:13:12,693.693 INFO    ] Initializing speech engine...
[2026-08-31 05:13:12,702.702 INFO    ] 2026-08-31 05:13:12
[2026-08-31 05:13:12,995.995 INFO    ] 2026-08-31 05:13:12
[2026-08-31 05:13:13,034.034 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:13:13,259.259 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:13:13,319.319 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:13:13,500.500 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:13:13,546.546 INFO    ] time= 31/08/2026 05:13:13
[2026-08-31 05:13:13,610.610 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:13:13,635.635 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:13:13,765.765 INFO    ] No existing commands found in stream
[2026-08-31 05:13:18,796.796 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:13:18,799.799 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-08-31 05:13:20,402.402 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 05:13:20,405.405 INFO    ] Checking for system updates...
[2026-08-31 05:13:20,443.443 INFO    ] 200
[2026-08-31 05:13:20,446.446 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:13:20,498.498 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:13:20,500.500 INFO    ] No update needed
[2026-08-31 05:13:20,503.503 INFO    ] Checking for camera pi updates...
[2026-08-31 05:13:20,539.539 INFO    ] 200
[2026-08-31 05:13:20,542.542 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:13:20,582.582 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:13:20,669.669 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:13:20,672.672 INFO    ] No camera update needed
[2026-08-31 05:13:20,674.674 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:13:20,677.677 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:13:20,682.682 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:13:20,687.687 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:13:22,728.728 INFO    ] ================================================
[2026-08-31 05:13:22,743.743 INFO    ] Launching Daemon at Mon Aug 31 05:13:22 IST 2026
[2026-08-31 05:13:22,755.755 INFO    ] ================================================
[2026-08-31 05:13:23,401.401 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:13:23
[2026-08-31 05:13:24,068.068 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:13:24,376.376 INFO    ] Initializing speech engine...
[2026-08-31 05:13:24,387.387 INFO    ] 2026-08-31 05:13:24
[2026-08-31 05:13:24,662.662 INFO    ] 2026-08-31 05:13:24
[2026-08-31 05:13:24,730.730 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:13:24,980.980 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:13:24,987.987 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:13:25,203.203 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:13:25,223.223 INFO    ] time= 31/08/2026 05:13:25
[2026-08-31 05:13:25,241.241 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:13:25,249.249 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:13:25,372.372 INFO    ] No existing commands found in stream
[2026-08-31 05:13:30,389.389 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:13:30,392.392 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-08-31 05:13:34,290.290 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 05:13:34,293.293 INFO    ] Checking for system updates...
[2026-08-31 05:13:34,334.334 INFO    ] 200
[2026-08-31 05:13:34,337.337 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:13:34,397.397 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:13:34,400.400 INFO    ] No update needed
[2026-08-31 05:13:34,403.403 INFO    ] Checking for camera pi updates...
[2026-08-31 05:13:34,441.441 INFO    ] 200
[2026-08-31 05:13:34,444.444 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:13:34,487.487 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:13:34,591.591 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:13:34,594.594 INFO    ] No camera update needed
[2026-08-31 05:13:34,597.597 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:13:34,600.600 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:13:34,606.606 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:13:34,612.612 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:13:36,657.657 INFO    ] ================================================
[2026-08-31 05:13:36,672.672 INFO    ] Launching Daemon at Mon Aug 31 05:13:36 IST 2026
[2026-08-31 05:13:36,682.682 INFO    ] ================================================
[2026-08-31 05:13:37,340.340 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:13:37
[2026-08-31 05:13:38,040.040 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:13:38,343.343 INFO    ] Initializing speech engine...
[2026-08-31 05:13:38,357.357 INFO    ] 2026-08-31 05:13:38
[2026-08-31 05:13:38,642.642 INFO    ] 2026-08-31 05:13:38
[2026-08-31 05:13:38,683.683 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:13:38,931.931 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:13:38,937.937 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:13:39,113.113 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:13:39,133.133 INFO    ] time= 31/08/2026 05:13:39
[2026-08-31 05:13:39,180.180 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:13:39,187.187 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:13:39,333.333 INFO    ] No existing commands found in stream
[2026-08-31 05:13:44,348.348 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:13:44,352.352 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-08-31 05:13:48,407.407 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 05:13:48,410.410 INFO    ] Checking for system updates...
[2026-08-31 05:13:48,447.447 INFO    ] 200
[2026-08-31 05:13:48,450.450 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:13:48,503.503 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:13:48,506.506 INFO    ] No update needed
[2026-08-31 05:13:48,509.509 INFO    ] Checking for camera pi updates...
[2026-08-31 05:13:48,543.543 INFO    ] 200
[2026-08-31 05:13:48,546.546 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:13:48,587.587 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:13:48,670.670 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:13:48,673.673 INFO    ] No camera update needed
[2026-08-31 05:13:48,675.675 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:13:48,678.678 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:13:48,684.684 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:13:48,690.690 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:13:50,734.734 INFO    ] ================================================
[2026-08-31 05:13:50,750.750 INFO    ] Launching Daemon at Mon Aug 31 05:13:50 IST 2026
[2026-08-31 05:13:50,761.761 INFO    ] ================================================
[2026-08-31 05:13:51,340.340 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:13:51
[2026-08-31 05:13:51,936.936 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:13:52,213.213 INFO    ] Initializing speech engine...
[2026-08-31 05:13:52,223.223 INFO    ] 2026-08-31 05:13:52
[2026-08-31 05:13:52,494.494 INFO    ] 2026-08-31 05:13:52
[2026-08-31 05:13:52,537.537 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:13:52,757.757 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:13:52,766.766 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:13:52,897.897 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:13:52,934.934 INFO    ] time= 31/08/2026 05:13:52
[2026-08-31 05:13:52,993.993 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:13:53,031.031 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:13:53,176.176 INFO    ] No existing commands found in stream
[2026-08-31 05:13:58,191.191 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:13:58,194.194 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-08-31 05:14:00,366.366 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 05:14:00,369.369 INFO    ] Checking for system updates...
[2026-08-31 05:14:00,409.409 INFO    ] 200
[2026-08-31 05:14:00,411.411 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:14:00,470.470 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:14:00,472.472 INFO    ] No update needed
[2026-08-31 05:14:00,475.475 INFO    ] Checking for camera pi updates...
[2026-08-31 05:14:00,508.508 INFO    ] 200
[2026-08-31 05:14:00,511.511 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:14:00,556.556 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:14:00,638.638 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:14:00,641.641 INFO    ] No camera update needed
[2026-08-31 05:14:00,643.643 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:14:00,645.645 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:14:00,651.651 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:14:00,656.656 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:14:02,702.702 INFO    ] ================================================
[2026-08-31 05:14:02,724.724 INFO    ] Launching Daemon at Mon Aug 31 05:14:02 IST 2026
[2026-08-31 05:14:02,741.741 INFO    ] ================================================
[2026-08-31 05:14:03,434.434 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:14:03
[2026-08-31 05:14:04,033.033 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:14:04,283.283 INFO    ] Initializing speech engine...
[2026-08-31 05:14:04,306.306 INFO    ] 2026-08-31 05:14:04
[2026-08-31 05:14:04,562.562 INFO    ] 2026-08-31 05:14:04
[2026-08-31 05:14:04,597.597 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:14:04,777.777 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:14:04,801.801 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:14:04,933.933 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:14:04,938.938 INFO    ] time= 31/08/2026 05:14:04
[2026-08-31 05:14:04,944.944 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:14:04,990.990 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:14:05,135.135 INFO    ] No existing commands found in stream
[2026-08-31 05:14:10,146.146 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:14:10,149.149 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-08-31 05:14:12,611.611 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 05:14:12,613.613 INFO    ] Checking for system updates...
[2026-08-31 05:14:12,648.648 INFO    ] 200
[2026-08-31 05:14:12,651.651 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:14:12,704.704 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:14:12,706.706 INFO    ] No update needed
[2026-08-31 05:14:12,709.709 INFO    ] Checking for camera pi updates...
[2026-08-31 05:14:12,743.743 INFO    ] 200
[2026-08-31 05:14:12,746.746 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:14:12,793.793 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:14:12,876.876 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:14:12,879.879 INFO    ] No camera update needed
[2026-08-31 05:14:12,882.882 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:14:12,884.884 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:14:12,891.891 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:14:12,896.896 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:14:14,939.939 INFO    ] ================================================
[2026-08-31 05:14:14,954.954 INFO    ] Launching Daemon at Mon Aug 31 05:14:14 IST 2026
[2026-08-31 05:14:14,965.965 INFO    ] ================================================
[2026-08-31 05:14:15,630.630 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:14:15
[2026-08-31 05:14:16,312.312 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:14:16,628.628 INFO    ] Initializing speech engine...
[2026-08-31 05:14:16,640.640 INFO    ] 2026-08-31 05:14:16
[2026-08-31 05:14:16,920.920 INFO    ] 2026-08-31 05:14:16
[2026-08-31 05:14:16,967.967 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:14:17,200.200 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:14:17,206.206 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:14:17,416.416 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:14:17,466.466 INFO    ] time= 31/08/2026 05:14:17
[2026-08-31 05:14:17,477.477 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:14:17,499.499 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:14:17,637.637 INFO    ] No existing commands found in stream
[2026-08-31 05:14:22,669.669 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:14:22,672.672 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-08-31 05:14:25,898.898 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 05:14:25,901.901 INFO    ] Checking for system updates...
[2026-08-31 05:14:25,936.936 INFO    ] 200
[2026-08-31 05:14:25,939.939 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:14:25,990.990 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:14:25,993.993 INFO    ] No update needed
[2026-08-31 05:14:25,995.995 INFO    ] Checking for camera pi updates...
[2026-08-31 05:14:26,029.029 INFO    ] 200
[2026-08-31 05:14:26,031.031 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:14:26,071.071 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:14:26,269.269 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:14:26,271.271 INFO    ] No camera update needed
[2026-08-31 05:14:26,273.273 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:14:26,276.276 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:14:26,282.282 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:14:26,287.287 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:14:28,327.327 INFO    ] ================================================
[2026-08-31 05:14:28,342.342 INFO    ] Launching Daemon at Mon Aug 31 05:14:28 IST 2026
[2026-08-31 05:14:28,352.352 INFO    ] ================================================
[2026-08-31 05:14:29,006.006 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:14:29
[2026-08-31 05:14:29,679.679 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:14:29,983.983 INFO    ] Initializing speech engine...
[2026-08-31 05:14:29,992.992 INFO    ] 2026-08-31 05:14:29
[2026-08-31 05:14:30,266.266 INFO    ] 2026-08-31 05:14:30
[2026-08-31 05:14:30,323.323 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:14:30,551.551 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:14:30,558.558 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:14:30,786.786 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:14:30,818.818 INFO    ] time= 31/08/2026 05:14:30
[2026-08-31 05:14:30,835.835 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:14:30,844.844 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:14:31,001.001 INFO    ] No existing commands found in stream
[2026-08-31 05:14:36,037.037 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:14:36,041.041 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-08-31 05:14:40,534.534 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 05:14:40,537.537 INFO    ] Checking for system updates...
[2026-08-31 05:14:40,578.578 INFO    ] 200
[2026-08-31 05:14:40,581.581 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:14:40,634.634 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:14:40,637.637 INFO    ] No update needed
[2026-08-31 05:14:40,640.640 INFO    ] Checking for camera pi updates...
[2026-08-31 05:14:40,678.678 INFO    ] 200
[2026-08-31 05:14:40,681.681 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:14:40,723.723 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:14:40,807.807 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:14:40,810.810 INFO    ] No camera update needed
[2026-08-31 05:14:40,813.813 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:14:40,815.815 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:14:40,822.822 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:14:40,827.827 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:14:42,874.874 INFO    ] ================================================
[2026-08-31 05:14:42,890.890 INFO    ] Launching Daemon at Mon Aug 31 05:14:42 IST 2026
[2026-08-31 05:14:42,901.901 INFO    ] ================================================
[2026-08-31 05:14:43,555.555 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:14:43
[2026-08-31 05:14:44,228.228 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:14:44,536.536 INFO    ] Initializing speech engine...
[2026-08-31 05:14:44,548.548 INFO    ] 2026-08-31 05:14:44
[2026-08-31 05:14:44,827.827 INFO    ] 2026-08-31 05:14:44
[2026-08-31 05:14:44,872.872 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:14:45,155.155 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:14:45,164.164 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:14:45,359.359 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:14:45,366.366 INFO    ] time= 31/08/2026 05:14:45
[2026-08-31 05:14:45,384.384 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:14:45,416.416 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:14:45,522.522 INFO    ] No existing commands found in stream
[2026-08-31 05:14:50,557.557 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:14:50,560.560 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-08-31 05:14:54,615.615 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 05:14:54,618.618 INFO    ] Checking for system updates...
[2026-08-31 05:14:54,655.655 INFO    ] 200
[2026-08-31 05:14:54,658.658 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:14:54,711.711 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:14:54,713.713 INFO    ] No update needed
[2026-08-31 05:14:54,716.716 INFO    ] Checking for camera pi updates...
[2026-08-31 05:14:54,750.750 INFO    ] 200
[2026-08-31 05:14:54,752.752 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:14:54,793.793 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:14:54,880.880 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:14:54,882.882 INFO    ] No camera update needed
[2026-08-31 05:14:54,884.884 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:14:54,886.886 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:14:54,899.899 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:14:54,904.904 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:14:56,944.944 INFO    ] ================================================
[2026-08-31 05:14:56,960.960 INFO    ] Launching Daemon at Mon Aug 31 05:14:56 IST 2026
[2026-08-31 05:14:56,970.970 INFO    ] ================================================
[2026-08-31 05:14:57,552.552 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:14:57
[2026-08-31 05:14:58,152.152 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:14:58,428.428 INFO    ] Initializing speech engine...
[2026-08-31 05:14:58,435.435 INFO    ] 2026-08-31 05:14:58
[2026-08-31 05:14:58,697.697 INFO    ] 2026-08-31 05:14:58
[2026-08-31 05:14:58,751.751 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:14:58,978.978 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:14:58,983.983 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:14:59,163.163 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:14:59,208.208 INFO    ] time= 31/08/2026 05:14:59
[2026-08-31 05:14:59,244.244 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:14:59,251.251 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:14:59,372.372 INFO    ] No existing commands found in stream
[2026-08-31 05:15:04,402.402 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:15:04,405.405 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-08-31 05:15:08,547.547 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 05:15:08,550.550 INFO    ] Checking for system updates...
[2026-08-31 05:15:08,585.585 INFO    ] 200
[2026-08-31 05:15:08,588.588 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:15:08,645.645 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:15:08,648.648 INFO    ] No update needed
[2026-08-31 05:15:08,650.650 INFO    ] Checking for camera pi updates...
[2026-08-31 05:15:08,684.684 INFO    ] 200
[2026-08-31 05:15:08,686.686 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:15:08,727.727 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:15:08,807.807 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:15:08,809.809 INFO    ] No camera update needed
[2026-08-31 05:15:08,812.812 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:15:08,814.814 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:15:08,820.820 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:15:08,824.824 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:15:10,866.866 INFO    ] ================================================
[2026-08-31 05:15:10,881.881 INFO    ] Launching Daemon at Mon Aug 31 05:15:10 IST 2026
[2026-08-31 05:15:10,892.892 INFO    ] ================================================
[2026-08-31 05:15:11,524.524 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:15:11
[2026-08-31 05:15:12,175.175 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:15:12,476.476 INFO    ] Initializing speech engine...
[2026-08-31 05:15:12,485.485 INFO    ] 2026-08-31 05:15:12
[2026-08-31 05:15:12,754.754 INFO    ] 2026-08-31 05:15:12
[2026-08-31 05:15:12,807.807 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:15:13,038.038 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:15:13,043.043 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:15:13,173.173 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:15:13,221.221 INFO    ] time= 31/08/2026 05:15:13
[2026-08-31 05:15:13,286.286 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:15:13,309.309 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:15:13,388.388 INFO    ] No existing commands found in stream
[2026-08-31 05:15:18,419.419 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:15:18,422.422 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-08-31 05:15:21,810.810 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 05:15:21,813.813 INFO    ] Checking for system updates...
[2026-08-31 05:15:21,849.849 INFO    ] 200
[2026-08-31 05:15:21,852.852 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:15:21,906.906 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:15:21,909.909 INFO    ] No update needed
[2026-08-31 05:15:21,911.911 INFO    ] Checking for camera pi updates...
[2026-08-31 05:15:21,946.946 INFO    ] 200
[2026-08-31 05:15:21,949.949 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:15:21,993.993 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:15:22,079.079 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:15:22,082.082 INFO    ] No camera update needed
[2026-08-31 05:15:22,084.084 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:15:22,086.086 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:15:22,092.092 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:15:22,097.097 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:15:24,137.137 INFO    ] ================================================
[2026-08-31 05:15:24,152.152 INFO    ] Launching Daemon at Mon Aug 31 05:15:24 IST 2026
[2026-08-31 05:15:24,163.163 INFO    ] ================================================
[2026-08-31 05:15:24,726.726 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:15:24
[2026-08-31 05:15:25,309.309 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:15:25,579.579 INFO    ] Initializing speech engine...
[2026-08-31 05:15:25,588.588 INFO    ] 2026-08-31 05:15:25
[2026-08-31 05:15:25,838.838 INFO    ] 2026-08-31 05:15:25
[2026-08-31 05:15:25,873.873 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:15:26,047.047 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:15:26,059.059 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:15:26,207.207 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:15:26,212.212 INFO    ] time= 31/08/2026 05:15:26
[2026-08-31 05:15:26,218.218 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:15:26,266.266 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:15:26,413.413 INFO    ] No existing commands found in stream
[2026-08-31 05:15:31,423.423 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:15:31,426.426 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-08-31 05:15:32,341.341 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 05:15:32,343.343 INFO    ] Checking for system updates...
[2026-08-31 05:15:32,384.384 INFO    ] 200
[2026-08-31 05:15:32,387.387 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:15:32,445.445 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:15:32,449.449 INFO    ] No update needed
[2026-08-31 05:15:32,452.452 INFO    ] Checking for camera pi updates...
[2026-08-31 05:15:32,488.488 INFO    ] 200
[2026-08-31 05:15:32,491.491 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:15:32,538.538 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:15:32,640.640 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:15:32,643.643 INFO    ] No camera update needed
[2026-08-31 05:15:32,646.646 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:15:32,648.648 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:15:32,654.654 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:15:32,660.660 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:15:34,702.702 INFO    ] ================================================
[2026-08-31 05:15:34,717.717 INFO    ] Launching Daemon at Mon Aug 31 05:15:34 IST 2026
[2026-08-31 05:15:34,728.728 INFO    ] ================================================
[2026-08-31 05:15:35,315.315 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:15:35
[2026-08-31 05:15:35,981.981 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:15:36,282.282 INFO    ] Initializing speech engine...
[2026-08-31 05:15:36,296.296 INFO    ] 2026-08-31 05:15:36
[2026-08-31 05:15:36,563.563 INFO    ] 2026-08-31 05:15:36
[2026-08-31 05:15:36,619.619 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:15:36,899.899 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:15:36,909.909 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:15:37,107.107 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:15:37,122.122 INFO    ] time= 31/08/2026 05:15:37
[2026-08-31 05:15:37,132.132 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:15:37,161.161 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:15:37,266.266 INFO    ] No existing commands found in stream
[2026-08-31 05:15:42,295.295 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:15:42,299.299 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-08-31 05:15:45,817.817 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 05:15:45,820.820 INFO    ] Checking for system updates...
[2026-08-31 05:15:45,856.856 INFO    ] 200
[2026-08-31 05:15:45,859.859 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:15:45,912.912 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:15:45,915.915 INFO    ] No update needed
[2026-08-31 05:15:45,918.918 INFO    ] Checking for camera pi updates...
[2026-08-31 05:15:45,956.956 INFO    ] 200
[2026-08-31 05:15:45,959.959 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:15:46,005.005 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:15:46,088.088 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:15:46,091.091 INFO    ] No camera update needed
[2026-08-31 05:15:46,093.093 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:15:46,095.095 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:15:46,101.101 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:15:46,106.106 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:15:48,148.148 INFO    ] ================================================
[2026-08-31 05:15:48,163.163 INFO    ] Launching Daemon at Mon Aug 31 05:15:48 IST 2026
[2026-08-31 05:15:48,173.173 INFO    ] ================================================
[2026-08-31 05:15:48,759.759 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:15:48
[2026-08-31 05:15:49,355.355 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:15:49,631.631 INFO    ] Initializing speech engine...
[2026-08-31 05:15:49,638.638 INFO    ] 2026-08-31 05:15:49
[2026-08-31 05:15:49,902.902 INFO    ] 2026-08-31 05:15:49
[2026-08-31 05:15:49,935.935 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:15:50,180.180 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:15:50,189.189 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:15:50,319.319 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:15:50,322.322 INFO    ] time= 31/08/2026 05:15:50
[2026-08-31 05:15:50,331.331 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:15:50,358.358 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:15:50,478.478 INFO    ] No existing commands found in stream
[2026-08-31 05:15:55,488.488 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:15:55,491.491 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-08-31 05:15:58,381.381 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 05:15:58,384.384 INFO    ] Checking for system updates...
[2026-08-31 05:15:58,420.420 INFO    ] 200
[2026-08-31 05:15:58,422.422 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:15:58,478.478 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:15:58,481.481 INFO    ] No update needed
[2026-08-31 05:15:58,483.483 INFO    ] Checking for camera pi updates...
[2026-08-31 05:15:58,517.517 INFO    ] 200
[2026-08-31 05:15:58,520.520 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:15:58,561.561 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:15:58,666.666 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:15:58,668.668 INFO    ] No camera update needed
[2026-08-31 05:15:58,671.671 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:15:58,674.674 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:15:58,679.679 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:15:58,684.684 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:16:00,726.726 INFO    ] ================================================
[2026-08-31 05:16:00,742.742 INFO    ] Launching Daemon at Mon Aug 31 05:16:00 IST 2026
[2026-08-31 05:16:00,753.753 INFO    ] ================================================
[2026-08-31 05:16:01,509.509 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:16:01
[2026-08-31 05:16:02,163.163 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:16:02,465.465 INFO    ] Initializing speech engine...
[2026-08-31 05:16:02,488.488 INFO    ] 2026-08-31 05:16:02
[2026-08-31 05:16:02,772.772 INFO    ] 2026-08-31 05:16:02
[2026-08-31 05:16:02,824.824 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:16:03,030.030 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:16:03,049.049 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:16:03,182.182 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:16:03,192.192 INFO    ] time= 31/08/2026 05:16:03
[2026-08-31 05:16:03,198.198 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:16:03,225.225 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:16:03,369.369 INFO    ] No existing commands found in stream
[2026-08-31 05:16:08,394.394 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:16:08,397.397 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-08-31 05:16:12,562.562 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 05:16:12,565.565 INFO    ] Checking for system updates...
[2026-08-31 05:16:12,600.600 INFO    ] 200
[2026-08-31 05:16:12,602.602 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:16:12,654.654 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:16:12,656.656 INFO    ] No update needed
[2026-08-31 05:16:12,659.659 INFO    ] Checking for camera pi updates...
[2026-08-31 05:16:12,693.693 INFO    ] 200
[2026-08-31 05:16:12,695.695 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:16:12,736.736 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:16:12,815.815 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:16:12,817.817 INFO    ] No camera update needed
[2026-08-31 05:16:12,820.820 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:16:12,822.822 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:16:12,827.827 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:16:12,832.832 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:16:14,874.874 INFO    ] ================================================
[2026-08-31 05:16:14,889.889 INFO    ] Launching Daemon at Mon Aug 31 05:16:14 IST 2026
[2026-08-31 05:16:14,900.900 INFO    ] ================================================
[2026-08-31 05:16:15,481.481 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:16:15
[2026-08-31 05:16:16,069.069 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:16:16,339.339 INFO    ] Initializing speech engine...
[2026-08-31 05:16:16,357.357 INFO    ] 2026-08-31 05:16:16
[2026-08-31 05:16:16,627.627 INFO    ] 2026-08-31 05:16:16
[2026-08-31 05:16:16,665.665 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:16:16,888.888 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:16:16,952.952 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:16:17,107.107 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:16:17,144.144 INFO    ] time= 31/08/2026 05:16:17
[2026-08-31 05:16:17,203.203 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:16:17,256.256 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:16:17,318.318 INFO    ] No existing commands found in stream
[2026-08-31 05:16:22,330.330 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:16:22,333.333 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-08-31 05:16:25,944.944 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 05:16:25,946.946 INFO    ] Checking for system updates...
[2026-08-31 05:16:25,982.982 INFO    ] 200
[2026-08-31 05:16:25,984.984 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:16:26,038.038 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:16:26,041.041 INFO    ] No update needed
[2026-08-31 05:16:26,043.043 INFO    ] Checking for camera pi updates...
[2026-08-31 05:16:26,083.083 INFO    ] 200
[2026-08-31 05:16:26,086.086 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:16:26,126.126 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:16:26,221.221 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:16:26,224.224 INFO    ] No camera update needed
[2026-08-31 05:16:26,226.226 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:16:26,228.228 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:16:26,234.234 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:16:26,239.239 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:16:28,279.279 INFO    ] ================================================
[2026-08-31 05:16:28,294.294 INFO    ] Launching Daemon at Mon Aug 31 05:16:28 IST 2026
[2026-08-31 05:16:28,306.306 INFO    ] ================================================
[2026-08-31 05:16:28,878.878 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:16:28
[2026-08-31 05:16:29,460.460 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:16:29,712.712 INFO    ] Initializing speech engine...
[2026-08-31 05:16:29,721.721 INFO    ] 2026-08-31 05:16:29
[2026-08-31 05:16:30,011.011 INFO    ] 2026-08-31 05:16:29
[2026-08-31 05:16:30,048.048 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:16:30,242.242 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:16:30,255.255 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:16:30,411.411 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:16:30,419.419 INFO    ] time= 31/08/2026 05:16:30
[2026-08-31 05:16:30,429.429 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:16:30,449.449 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:16:30,521.521 INFO    ] No existing commands found in stream
[2026-08-31 05:16:35,540.540 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:16:35,543.543 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-08-31 05:16:37,656.656 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 05:16:37,659.659 INFO    ] Checking for system updates...
[2026-08-31 05:16:37,694.694 INFO    ] 200
[2026-08-31 05:16:37,696.696 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:16:37,754.754 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:16:37,756.756 INFO    ] No update needed
[2026-08-31 05:16:37,759.759 INFO    ] Checking for camera pi updates...
[2026-08-31 05:16:37,795.795 INFO    ] 200
[2026-08-31 05:16:37,798.798 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:16:37,841.841 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:16:37,941.941 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:16:37,943.943 INFO    ] No camera update needed
[2026-08-31 05:16:37,945.945 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:16:37,948.948 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:16:37,953.953 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:16:37,958.958 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:16:40,998.998 INFO    ] ================================================
[2026-08-31 05:16:40,013.013 INFO    ] Launching Daemon at Mon Aug 31 05:16:40 IST 2026
[2026-08-31 05:16:40,023.023 INFO    ] ================================================
[2026-08-31 05:16:40,595.595 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:16:40
[2026-08-31 05:16:41,178.178 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:16:41,445.445 INFO    ] Initializing speech engine...
[2026-08-31 05:16:41,454.454 INFO    ] 2026-08-31 05:16:41
[2026-08-31 05:16:41,700.700 INFO    ] 2026-08-31 05:16:41
[2026-08-31 05:16:41,735.735 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:16:41,986.986 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:16:41,996.996 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:16:42,205.205 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:16:42,251.251 INFO    ] time= 31/08/2026 05:16:42
[2026-08-31 05:16:42,257.257 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:16:42,275.275 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:16:42,403.403 INFO    ] No existing commands found in stream
[2026-08-31 05:16:47,416.416 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:16:47,419.419 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-08-31 05:16:49,425.425 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 05:16:49,428.428 INFO    ] Checking for system updates...
[2026-08-31 05:16:49,466.466 INFO    ] 200
[2026-08-31 05:16:49,469.469 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:16:49,521.521 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:16:49,523.523 INFO    ] No update needed
[2026-08-31 05:16:49,525.525 INFO    ] Checking for camera pi updates...
[2026-08-31 05:16:49,561.561 INFO    ] 200
[2026-08-31 05:16:49,564.564 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:16:49,607.607 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:16:49,692.692 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:16:49,695.695 INFO    ] No camera update needed
[2026-08-31 05:16:49,697.697 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:16:49,699.699 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:16:49,705.705 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:16:49,710.710 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:16:51,752.752 INFO    ] ================================================
[2026-08-31 05:16:51,766.766 INFO    ] Launching Daemon at Mon Aug 31 05:16:51 IST 2026
[2026-08-31 05:16:51,777.777 INFO    ] ================================================
[2026-08-31 05:16:52,352.352 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:16:52
[2026-08-31 05:16:52,939.939 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:16:53,190.190 INFO    ] Initializing speech engine...
[2026-08-31 05:16:53,199.199 INFO    ] 2026-08-31 05:16:53
[2026-08-31 05:16:53,490.490 INFO    ] 2026-08-31 05:16:53
[2026-08-31 05:16:53,523.523 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:16:53,744.744 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:16:53,789.789 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:16:53,966.966 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:16:54,037.037 INFO    ] time= 31/08/2026 05:16:53
[2026-08-31 05:16:54,103.103 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:16:54,115.115 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:16:54,244.244 INFO    ] No existing commands found in stream
[2026-08-31 05:16:59,269.269 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:16:59,272.272 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-08-31 05:17:02,860.860 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 05:17:02,863.863 INFO    ] Checking for system updates...
[2026-08-31 05:17:02,898.898 INFO    ] 200
[2026-08-31 05:17:02,903.903 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:17:02,965.965 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:17:02,968.968 INFO    ] No update needed
[2026-08-31 05:17:02,970.970 INFO    ] Checking for camera pi updates...
[2026-08-31 05:17:03,003.003 INFO    ] 200
[2026-08-31 05:17:03,006.006 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:17:03,055.055 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:17:03,135.135 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:17:03,137.137 INFO    ] No camera update needed
[2026-08-31 05:17:03,140.140 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:17:03,142.142 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:17:03,147.147 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:17:03,152.152 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:17:05,193.193 INFO    ] ================================================
[2026-08-31 05:17:05,208.208 INFO    ] Launching Daemon at Mon Aug 31 05:17:05 IST 2026
[2026-08-31 05:17:05,219.219 INFO    ] ================================================
[2026-08-31 05:17:05,787.787 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:17:05
[2026-08-31 05:17:06,395.395 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:17:06,650.650 INFO    ] Initializing speech engine...
[2026-08-31 05:17:06,659.659 INFO    ] 2026-08-31 05:17:06
[2026-08-31 05:17:06,953.953 INFO    ] 2026-08-31 05:17:06
[2026-08-31 05:17:06,991.991 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:17:07,212.212 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:17:07,221.221 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:17:07,363.363 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:17:07,372.372 INFO    ] time= 31/08/2026 05:17:07
[2026-08-31 05:17:07,378.378 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:17:07,383.383 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:17:07,518.518 INFO    ] No existing commands found in stream
[2026-08-31 05:17:12,543.543 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:17:12,545.545 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-08-31 05:17:15,294.294 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 05:17:15,296.296 INFO    ] Checking for system updates...
[2026-08-31 05:17:15,335.335 INFO    ] 200
[2026-08-31 05:17:15,338.338 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:17:15,392.392 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:17:15,394.394 INFO    ] No update needed
[2026-08-31 05:17:15,397.397 INFO    ] Checking for camera pi updates...
[2026-08-31 05:17:15,432.432 INFO    ] 200
[2026-08-31 05:17:15,435.435 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:17:15,480.480 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:17:15,571.571 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:17:15,573.573 INFO    ] No camera update needed
[2026-08-31 05:17:15,575.575 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:17:15,578.578 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:17:15,583.583 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:17:15,588.588 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:17:17,632.632 INFO    ] ================================================
[2026-08-31 05:17:17,648.648 INFO    ] Launching Daemon at Mon Aug 31 05:17:17 IST 2026
[2026-08-31 05:17:17,659.659 INFO    ] ================================================
[2026-08-31 05:17:18,229.229 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:17:18
[2026-08-31 05:17:18,815.815 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:17:19,076.076 INFO    ] Initializing speech engine...
[2026-08-31 05:17:19,090.090 INFO    ] 2026-08-31 05:17:19
[2026-08-31 05:17:19,376.376 INFO    ] 2026-08-31 05:17:19
[2026-08-31 05:17:19,414.414 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:17:19,612.612 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:17:19,625.625 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:17:19,788.788 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:17:19,796.796 INFO    ] time= 31/08/2026 05:17:19
[2026-08-31 05:17:19,800.800 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:17:19,807.807 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:17:19,880.880 INFO    ] No existing commands found in stream
[2026-08-31 05:17:24,892.892 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:17:24,895.895 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-08-31 05:17:27,444.444 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 05:17:27,447.447 INFO    ] Checking for system updates...
[2026-08-31 05:17:27,483.483 INFO    ] 200
[2026-08-31 05:17:27,486.486 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:17:27,540.540 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:17:27,543.543 INFO    ] No update needed
[2026-08-31 05:17:27,545.545 INFO    ] Checking for camera pi updates...
[2026-08-31 05:17:27,580.580 INFO    ] 200
[2026-08-31 05:17:27,583.583 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:17:27,629.629 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:17:27,711.711 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:17:27,713.713 INFO    ] No camera update needed
[2026-08-31 05:17:27,716.716 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:17:27,719.719 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:17:27,725.725 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:17:27,731.731 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:17:29,771.771 INFO    ] ================================================
[2026-08-31 05:17:29,786.786 INFO    ] Launching Daemon at Mon Aug 31 05:17:29 IST 2026
[2026-08-31 05:17:29,798.798 INFO    ] ================================================
[2026-08-31 05:17:30,395.395 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:17:30
[2026-08-31 05:17:31,067.067 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:17:31,395.395 INFO    ] Initializing speech engine...
[2026-08-31 05:17:31,406.406 INFO    ] 2026-08-31 05:17:31
[2026-08-31 05:17:31,662.662 INFO    ] 2026-08-31 05:17:31
[2026-08-31 05:17:31,698.698 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:17:31,956.956 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:17:31,966.966 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:17:32,080.080 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:17:32,083.083 INFO    ] time= 31/08/2026 05:17:32
[2026-08-31 05:17:32,086.086 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:17:32,104.104 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:17:32,163.163 INFO    ] No existing commands found in stream
[2026-08-31 05:17:37,172.172 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:17:37,175.175 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-08-31 05:17:37,859.859 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 05:17:37,861.861 INFO    ] Checking for system updates...
[2026-08-31 05:17:37,901.901 INFO    ] 200
[2026-08-31 05:17:37,904.904 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:17:37,963.963 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:17:37,966.966 INFO    ] No update needed
[2026-08-31 05:17:37,968.968 INFO    ] Checking for camera pi updates...
[2026-08-31 05:17:38,005.005 INFO    ] 200
[2026-08-31 05:17:38,008.008 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:17:38,048.048 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:17:38,137.137 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:17:38,140.140 INFO    ] No camera update needed
[2026-08-31 05:17:38,143.143 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:17:38,145.145 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:17:38,151.151 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:17:38,157.157 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:17:40,199.199 INFO    ] ================================================
[2026-08-31 05:17:40,215.215 INFO    ] Launching Daemon at Mon Aug 31 05:17:40 IST 2026
[2026-08-31 05:17:40,226.226 INFO    ] ================================================
[2026-08-31 05:17:40,795.795 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:17:40
[2026-08-31 05:17:41,380.380 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:17:41,628.628 INFO    ] Initializing speech engine...
[2026-08-31 05:17:41,643.643 INFO    ] 2026-08-31 05:17:41
[2026-08-31 05:17:41,912.912 INFO    ] 2026-08-31 05:17:41
[2026-08-31 05:17:41,946.946 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:17:42,122.122 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:17:42,135.135 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:17:42,282.282 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:17:42,287.287 INFO    ] time= 31/08/2026 05:17:42
[2026-08-31 05:17:42,293.293 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:17:42,339.339 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:17:42,464.464 INFO    ] No existing commands found in stream
[2026-08-31 05:17:47,489.489 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:17:47,492.492 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-08-31 05:17:49,408.408 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 05:17:49,411.411 INFO    ] Checking for system updates...
[2026-08-31 05:17:49,447.447 INFO    ] 200
[2026-08-31 05:17:49,450.450 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:17:49,502.502 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:17:49,505.505 INFO    ] No update needed
[2026-08-31 05:17:49,507.507 INFO    ] Checking for camera pi updates...
[2026-08-31 05:17:49,540.540 INFO    ] 200
[2026-08-31 05:17:49,542.542 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:17:49,583.583 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:17:49,668.668 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:17:49,671.671 INFO    ] No camera update needed
[2026-08-31 05:17:49,674.674 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:17:49,677.677 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:17:49,683.683 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:17:49,689.689 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:17:51,733.733 INFO    ] ================================================
[2026-08-31 05:17:51,748.748 INFO    ] Launching Daemon at Mon Aug 31 05:17:51 IST 2026
[2026-08-31 05:17:51,759.759 INFO    ] ================================================
[2026-08-31 05:17:52,395.395 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:17:52
[2026-08-31 05:17:53,050.050 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:17:53,347.347 INFO    ] Initializing speech engine...
[2026-08-31 05:17:53,356.356 INFO    ] 2026-08-31 05:17:53
[2026-08-31 05:17:53,637.637 INFO    ] 2026-08-31 05:17:53
[2026-08-31 05:17:53,681.681 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:17:53,931.931 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:17:53,936.936 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:17:54,130.130 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:17:54,171.171 INFO    ] time= 31/08/2026 05:17:54
[2026-08-31 05:17:54,177.177 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:17:54,198.198 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:17:54,329.329 INFO    ] No existing commands found in stream
[2026-08-31 05:17:59,348.348 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:17:59,351.351 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-08-31 05:18:02,697.697 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 05:18:02,700.700 INFO    ] Checking for system updates...
[2026-08-31 05:18:02,744.744 INFO    ] 200
[2026-08-31 05:18:02,746.746 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:18:02,799.799 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:18:02,801.801 INFO    ] No update needed
[2026-08-31 05:18:02,803.803 INFO    ] Checking for camera pi updates...
[2026-08-31 05:18:02,840.840 INFO    ] 200
[2026-08-31 05:18:02,844.844 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:18:02,890.890 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:18:02,974.974 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:18:02,976.976 INFO    ] No camera update needed
[2026-08-31 05:18:02,979.979 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:18:02,981.981 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:18:02,987.987 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:18:02,992.992 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:18:05,033.033 INFO    ] ================================================
[2026-08-31 05:18:05,049.049 INFO    ] Launching Daemon at Mon Aug 31 05:18:05 IST 2026
[2026-08-31 05:18:05,059.059 INFO    ] ================================================
[2026-08-31 05:18:05,701.701 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:18:05
[2026-08-31 05:18:06,347.347 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:18:06,619.619 INFO    ] Initializing speech engine...
[2026-08-31 05:18:06,628.628 INFO    ] 2026-08-31 05:18:06
[2026-08-31 05:18:06,877.877 INFO    ] 2026-08-31 05:18:06
[2026-08-31 05:18:06,913.913 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:18:07,086.086 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:18:07,098.098 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:18:07,242.242 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:18:07,250.250 INFO    ] time= 31/08/2026 05:18:07
[2026-08-31 05:18:07,291.291 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:18:07,319.319 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:18:07,445.445 INFO    ] No existing commands found in stream
[2026-08-31 05:18:12,457.457 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:18:12,460.460 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-08-31 05:18:13,709.709 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 05:18:13,711.711 INFO    ] Checking for system updates...
[2026-08-31 05:18:13,750.750 INFO    ] 200
[2026-08-31 05:18:13,753.753 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:18:13,811.811 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:18:13,814.814 INFO    ] No update needed
[2026-08-31 05:18:13,816.816 INFO    ] Checking for camera pi updates...
[2026-08-31 05:18:13,853.853 INFO    ] 200
[2026-08-31 05:18:13,856.856 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:18:13,896.896 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:18:13,982.982 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:18:13,984.984 INFO    ] No camera update needed
[2026-08-31 05:18:13,986.986 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:18:13,989.989 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:18:13,994.994 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:18:13,999.999 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:18:16,041.041 INFO    ] ================================================
[2026-08-31 05:18:16,056.056 INFO    ] Launching Daemon at Mon Aug 31 05:18:16 IST 2026
[2026-08-31 05:18:16,067.067 INFO    ] ================================================
[2026-08-31 05:18:16,649.649 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:18:16
[2026-08-31 05:18:17,249.249 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:18:17,503.503 INFO    ] Initializing speech engine...
[2026-08-31 05:18:17,512.512 INFO    ] 2026-08-31 05:18:17
[2026-08-31 05:18:17,803.803 INFO    ] 2026-08-31 05:18:17
[2026-08-31 05:18:17,838.838 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:18:18,029.029 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:18:18,041.041 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:18:18,211.211 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:18:18,220.220 INFO    ] time= 31/08/2026 05:18:18
[2026-08-31 05:18:18,225.225 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:18:18,232.232 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:18:18,365.365 INFO    ] No existing commands found in stream
[2026-08-31 05:18:23,395.395 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:18:23,398.398 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-08-31 05:18:26,124.124 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 05:18:26,127.127 INFO    ] Checking for system updates...
[2026-08-31 05:18:26,163.163 INFO    ] 200
[2026-08-31 05:18:26,166.166 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:18:26,219.219 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:18:26,222.222 INFO    ] No update needed
[2026-08-31 05:18:26,224.224 INFO    ] Checking for camera pi updates...
[2026-08-31 05:18:26,258.258 INFO    ] 200
[2026-08-31 05:18:26,260.260 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:18:26,301.301 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:18:26,381.381 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:18:26,383.383 INFO    ] No camera update needed
[2026-08-31 05:18:26,385.385 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:18:26,388.388 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:18:26,393.393 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:18:26,398.398 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:18:28,438.438 INFO    ] ================================================
[2026-08-31 05:18:28,454.454 INFO    ] Launching Daemon at Mon Aug 31 05:18:28 IST 2026
[2026-08-31 05:18:28,465.465 INFO    ] ================================================
[2026-08-31 05:18:29,034.034 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:18:29
[2026-08-31 05:18:29,615.615 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:18:29,886.886 INFO    ] Initializing speech engine...
[2026-08-31 05:18:29,896.896 INFO    ] 2026-08-31 05:18:29
[2026-08-31 05:18:30,158.158 INFO    ] 2026-08-31 05:18:30
[2026-08-31 05:18:30,212.212 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:18:30,436.436 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:18:30,445.445 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:18:30,579.579 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:18:30,623.623 INFO    ] time= 31/08/2026 05:18:30
[2026-08-31 05:18:30,693.693 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:18:30,712.712 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:18:30,841.841 INFO    ] No existing commands found in stream
[2026-08-31 05:18:35,863.863 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:18:35,866.866 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-08-31 05:18:37,370.370 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 05:18:37,372.372 INFO    ] Checking for system updates...
[2026-08-31 05:18:37,408.408 INFO    ] 200
[2026-08-31 05:18:37,411.411 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:18:37,472.472 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:18:37,475.475 INFO    ] No update needed
[2026-08-31 05:18:37,477.477 INFO    ] Checking for camera pi updates...
[2026-08-31 05:18:37,511.511 INFO    ] 200
[2026-08-31 05:18:37,513.513 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:18:37,553.553 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:18:37,733.733 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:18:37,735.735 INFO    ] No camera update needed
[2026-08-31 05:18:37,738.738 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:18:37,740.740 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:18:37,745.745 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:18:37,750.750 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:18:39,792.792 INFO    ] ================================================
[2026-08-31 05:18:39,808.808 INFO    ] Launching Daemon at Mon Aug 31 05:18:39 IST 2026
[2026-08-31 05:18:39,819.819 INFO    ] ================================================
[2026-08-31 05:18:40,473.473 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:18:40
[2026-08-31 05:18:41,147.147 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:18:41,452.452 INFO    ] Initializing speech engine...
[2026-08-31 05:18:41,461.461 INFO    ] 2026-08-31 05:18:41
[2026-08-31 05:18:41,732.732 INFO    ] 2026-08-31 05:18:41
[2026-08-31 05:18:41,795.795 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:18:42,026.026 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:18:42,036.036 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:18:42,269.269 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:18:42,306.306 INFO    ] time= 31/08/2026 05:18:42
[2026-08-31 05:18:42,324.324 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:18:42,333.333 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:18:42,455.455 INFO    ] No existing commands found in stream
[2026-08-31 05:18:47,478.478 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:18:47,481.481 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-08-31 05:18:48,567.567 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 05:18:48,570.570 INFO    ] Checking for system updates...
[2026-08-31 05:18:48,610.610 INFO    ] 200
[2026-08-31 05:18:48,614.614 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:18:48,666.666 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:18:48,669.669 INFO    ] No update needed
[2026-08-31 05:18:48,672.672 INFO    ] Checking for camera pi updates...
[2026-08-31 05:18:48,707.707 INFO    ] 200
[2026-08-31 05:18:48,710.710 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:18:48,752.752 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:18:48,853.853 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:18:48,856.856 INFO    ] No camera update needed
[2026-08-31 05:18:48,859.859 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:18:48,861.861 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:18:48,868.868 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:18:48,873.873 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:18:50,916.916 INFO    ] ================================================
[2026-08-31 05:18:50,931.931 INFO    ] Launching Daemon at Mon Aug 31 05:18:50 IST 2026
[2026-08-31 05:18:50,942.942 INFO    ] ================================================
[2026-08-31 05:18:51,524.524 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:18:51
[2026-08-31 05:18:52,123.123 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:18:52,394.394 INFO    ] Initializing speech engine...
[2026-08-31 05:18:52,404.404 INFO    ] 2026-08-31 05:18:52
[2026-08-31 05:18:52,651.651 INFO    ] 2026-08-31 05:18:52
[2026-08-31 05:18:52,717.717 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:18:52,937.937 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:18:52,947.947 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:18:53,080.080 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:18:53,119.119 INFO    ] time= 31/08/2026 05:18:53
[2026-08-31 05:18:53,163.163 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:18:53,209.209 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:18:53,356.356 INFO    ] No existing commands found in stream
[2026-08-31 05:18:58,370.370 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:18:58,373.373 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-08-31 05:19:00,044.044 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 05:19:00,047.047 INFO    ] Checking for system updates...
[2026-08-31 05:19:00,082.082 INFO    ] 200
[2026-08-31 05:19:00,085.085 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:19:00,137.137 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:19:00,140.140 INFO    ] No update needed
[2026-08-31 05:19:00,142.142 INFO    ] Checking for camera pi updates...
[2026-08-31 05:19:00,175.175 INFO    ] 200
[2026-08-31 05:19:00,177.177 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:19:00,217.217 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:19:00,304.304 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:19:00,306.306 INFO    ] No camera update needed
[2026-08-31 05:19:00,309.309 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:19:00,311.311 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:19:00,316.316 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:19:00,321.321 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:19:02,373.373 INFO    ] ================================================
[2026-08-31 05:19:02,400.400 INFO    ] Launching Daemon at Mon Aug 31 05:19:02 IST 2026
[2026-08-31 05:19:02,420.420 INFO    ] ================================================
[2026-08-31 05:19:03,047.047 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:19:03
[2026-08-31 05:19:03,699.699 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:19:04,013.013 INFO    ] Initializing speech engine...
[2026-08-31 05:19:04,026.026 INFO    ] 2026-08-31 05:19:04
[2026-08-31 05:19:04,291.291 INFO    ] 2026-08-31 05:19:04
[2026-08-31 05:19:04,333.333 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:19:04,611.611 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:19:04,619.619 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:19:04,812.812 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:19:04,820.820 INFO    ] time= 31/08/2026 05:19:04
[2026-08-31 05:19:04,837.837 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:19:04,866.866 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:19:04,991.991 INFO    ] No existing commands found in stream
[2026-08-31 05:19:10,022.022 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:19:10,024.024 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-08-31 05:19:12,423.423 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 05:19:12,426.426 INFO    ] Checking for system updates...
[2026-08-31 05:19:12,465.465 INFO    ] 200
[2026-08-31 05:19:12,468.468 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:19:12,521.521 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:19:12,523.523 INFO    ] No update needed
[2026-08-31 05:19:12,526.526 INFO    ] Checking for camera pi updates...
[2026-08-31 05:19:12,563.563 INFO    ] 200
[2026-08-31 05:19:12,565.565 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:19:12,609.609 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:19:12,700.700 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:19:12,703.703 INFO    ] No camera update needed
[2026-08-31 05:19:12,705.705 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:19:12,708.708 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:19:12,714.714 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:19:12,719.719 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:19:14,761.761 INFO    ] ================================================
[2026-08-31 05:19:14,776.776 INFO    ] Launching Daemon at Mon Aug 31 05:19:14 IST 2026
[2026-08-31 05:19:14,786.786 INFO    ] ================================================
[2026-08-31 05:19:15,405.405 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:19:15
[2026-08-31 05:19:16,043.043 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:19:16,338.338 INFO    ] Initializing speech engine...
[2026-08-31 05:19:16,345.345 INFO    ] 2026-08-31 05:19:16
[2026-08-31 05:19:16,630.630 INFO    ] 2026-08-31 05:19:16
[2026-08-31 05:19:16,669.669 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:19:16,892.892 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:19:16,899.899 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:19:17,104.104 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:19:17,155.155 INFO    ] time= 31/08/2026 05:19:17
[2026-08-31 05:19:17,162.162 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:19:17,181.181 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:19:17,312.312 INFO    ] No existing commands found in stream
[2026-08-31 05:19:22,335.335 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:19:22,338.338 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-08-31 05:19:26,331.331 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 05:19:26,334.334 INFO    ] Checking for system updates...
[2026-08-31 05:19:26,371.371 INFO    ] 200
[2026-08-31 05:19:26,373.373 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:19:26,426.426 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:19:26,429.429 INFO    ] No update needed
[2026-08-31 05:19:26,432.432 INFO    ] Checking for camera pi updates...
[2026-08-31 05:19:26,467.467 INFO    ] 200
[2026-08-31 05:19:26,470.470 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:19:26,514.514 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:19:26,619.619 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:19:26,622.622 INFO    ] No camera update needed
[2026-08-31 05:19:26,624.624 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:19:26,626.626 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:19:26,632.632 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:19:26,637.637 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:19:28,678.678 INFO    ] ================================================
[2026-08-31 05:19:28,693.693 INFO    ] Launching Daemon at Mon Aug 31 05:19:28 IST 2026
[2026-08-31 05:19:28,703.703 INFO    ] ================================================
[2026-08-31 05:19:29,269.269 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:19:29
[2026-08-31 05:19:29,850.850 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:19:30,102.102 INFO    ] Initializing speech engine...
[2026-08-31 05:19:30,110.110 INFO    ] 2026-08-31 05:19:30
[2026-08-31 05:19:30,402.402 INFO    ] 2026-08-31 05:19:30
[2026-08-31 05:19:30,437.437 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:19:30,629.629 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:19:30,643.643 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:19:30,803.803 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:19:30,808.808 INFO    ] time= 31/08/2026 05:19:30
[2026-08-31 05:19:30,815.815 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:19:30,836.836 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:19:30,960.960 INFO    ] No existing commands found in stream
[2026-08-31 05:19:35,980.980 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:19:35,982.982 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-08-31 05:19:37,773.773 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 05:19:37,776.776 INFO    ] Checking for system updates...
[2026-08-31 05:19:37,812.812 INFO    ] 200
[2026-08-31 05:19:37,814.814 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:19:37,866.866 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:19:37,869.869 INFO    ] No update needed
[2026-08-31 05:19:37,872.872 INFO    ] Checking for camera pi updates...
[2026-08-31 05:19:37,905.905 INFO    ] 200
[2026-08-31 05:19:37,907.907 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:19:37,948.948 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:19:38,015.015 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:19:38,018.018 INFO    ] No camera update needed
[2026-08-31 05:19:38,021.021 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:19:38,024.024 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:19:38,031.031 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:19:38,038.038 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:19:40,078.078 INFO    ] ================================================
[2026-08-31 05:19:40,093.093 INFO    ] Launching Daemon at Mon Aug 31 05:19:40 IST 2026
[2026-08-31 05:19:40,104.104 INFO    ] ================================================
[2026-08-31 05:19:40,674.674 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:19:40
[2026-08-31 05:19:41,272.272 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:19:41,534.534 INFO    ] Initializing speech engine...
[2026-08-31 05:19:41,547.547 INFO    ] 2026-08-31 05:19:41
[2026-08-31 05:19:41,830.830 INFO    ] 2026-08-31 05:19:41
[2026-08-31 05:19:41,868.868 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:19:42,092.092 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:19:42,151.151 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:19:42,309.309 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:19:42,317.317 INFO    ] time= 31/08/2026 05:19:42
[2026-08-31 05:19:42,377.377 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:19:42,436.436 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:19:42,524.524 INFO    ] No existing commands found in stream
[2026-08-31 05:19:47,536.536 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:19:47,539.539 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-08-31 05:19:51,168.168 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 05:19:51,171.171 INFO    ] Checking for system updates...
[2026-08-31 05:19:51,206.206 INFO    ] 200
[2026-08-31 05:19:51,209.209 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:19:51,263.263 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:19:51,265.265 INFO    ] No update needed
[2026-08-31 05:19:51,268.268 INFO    ] Checking for camera pi updates...
[2026-08-31 05:19:51,302.302 INFO    ] 200
[2026-08-31 05:19:51,304.304 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:19:51,352.352 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:19:51,436.436 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:19:51,439.439 INFO    ] No camera update needed
[2026-08-31 05:19:51,441.441 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:19:51,443.443 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:19:51,449.449 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:19:51,454.454 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:19:53,493.493 INFO    ] ================================================
[2026-08-31 05:19:53,508.508 INFO    ] Launching Daemon at Mon Aug 31 05:19:53 IST 2026
[2026-08-31 05:19:53,519.519 INFO    ] ================================================
[2026-08-31 05:19:54,153.153 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:19:54
[2026-08-31 05:19:54,774.774 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:19:55,031.031 INFO    ] Initializing speech engine...
[2026-08-31 05:19:55,048.048 INFO    ] 2026-08-31 05:19:55
[2026-08-31 05:19:55,315.315 INFO    ] 2026-08-31 05:19:55
[2026-08-31 05:19:55,358.358 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:19:55,532.532 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:19:55,545.545 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:19:55,692.692 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:19:55,699.699 INFO    ] time= 31/08/2026 05:19:55
[2026-08-31 05:19:55,706.706 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:19:55,759.759 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:19:55,885.885 INFO    ] No existing commands found in stream
[2026-08-31 05:20:00,910.910 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:20:00,913.913 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-08-31 05:20:06,986.986 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 05:20:06,989.989 INFO    ] Checking for system updates...
[2026-08-31 05:20:07,024.024 INFO    ] 200
[2026-08-31 05:20:07,027.027 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:20:07,084.084 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:20:07,087.087 INFO    ] No update needed
[2026-08-31 05:20:07,089.089 INFO    ] Checking for camera pi updates...
[2026-08-31 05:20:07,123.123 INFO    ] 200
[2026-08-31 05:20:07,125.125 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:20:07,165.165 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:20:07,218.218 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:20:07,220.220 INFO    ] No camera update needed
[2026-08-31 05:20:07,223.223 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:20:07,225.225 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:20:07,230.230 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:20:07,236.236 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:20:09,280.280 INFO    ] ================================================
[2026-08-31 05:20:09,294.294 INFO    ] Launching Daemon at Mon Aug 31 05:20:09 IST 2026
[2026-08-31 05:20:09,304.304 INFO    ] ================================================
[2026-08-31 05:20:09,879.879 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:20:09
[2026-08-31 05:20:10,476.476 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:20:10,744.744 INFO    ] Initializing speech engine...
[2026-08-31 05:20:10,763.763 INFO    ] 2026-08-31 05:20:10
[2026-08-31 05:20:11,034.034 INFO    ] 2026-08-31 05:20:11
[2026-08-31 05:20:11,070.070 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:20:11,284.284 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:20:11,299.299 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:20:11,447.447 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:20:11,457.457 INFO    ] time= 31/08/2026 05:20:11
[2026-08-31 05:20:11,466.466 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:20:11,486.486 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:20:11,611.611 INFO    ] No existing commands found in stream
[2026-08-31 05:20:16,636.636 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:20:16,639.639 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-08-31 05:20:21,054.054 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 05:20:21,057.057 INFO    ] Checking for system updates...
[2026-08-31 05:20:21,095.095 INFO    ] 200
[2026-08-31 05:20:21,098.098 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:20:21,149.149 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:20:21,151.151 INFO    ] No update needed
[2026-08-31 05:20:21,154.154 INFO    ] Checking for camera pi updates...
[2026-08-31 05:20:21,187.187 INFO    ] 200
[2026-08-31 05:20:21,190.190 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:20:21,233.233 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:20:21,312.312 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:20:21,314.314 INFO    ] No camera update needed
[2026-08-31 05:20:21,316.316 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:20:21,319.319 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:20:21,324.324 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:20:21,329.329 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:20:23,370.370 INFO    ] ================================================
[2026-08-31 05:20:23,385.385 INFO    ] Launching Daemon at Mon Aug 31 05:20:23 IST 2026
[2026-08-31 05:20:23,396.396 INFO    ] ================================================
[2026-08-31 05:20:23,962.962 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:20:23
[2026-08-31 05:20:24,547.547 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:20:24,802.802 INFO    ] Initializing speech engine...
[2026-08-31 05:20:24,818.818 INFO    ] 2026-08-31 05:20:24
[2026-08-31 05:20:25,097.097 INFO    ] 2026-08-31 05:20:25
[2026-08-31 05:20:25,131.131 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:20:25,328.328 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:20:25,342.342 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:20:25,500.500 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:20:25,509.509 INFO    ] time= 31/08/2026 05:20:25
[2026-08-31 05:20:25,518.518 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:20:25,562.562 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:20:25,690.690 INFO    ] No existing commands found in stream
[2026-08-31 05:20:30,715.715 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:20:30,718.718 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-08-31 05:20:33,586.586 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 05:20:33,589.589 INFO    ] Checking for system updates...
[2026-08-31 05:20:33,624.624 INFO    ] 200
[2026-08-31 05:20:33,626.626 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:20:33,679.679 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:20:33,682.682 INFO    ] No update needed
[2026-08-31 05:20:33,684.684 INFO    ] Checking for camera pi updates...
[2026-08-31 05:20:33,719.719 INFO    ] 200
[2026-08-31 05:20:33,721.721 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:20:33,761.761 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:20:33,838.838 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:20:33,840.840 INFO    ] No camera update needed
[2026-08-31 05:20:33,843.843 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:20:33,845.845 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:20:33,850.850 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:20:33,855.855 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:20:35,895.895 INFO    ] ================================================
[2026-08-31 05:20:35,909.909 INFO    ] Launching Daemon at Mon Aug 31 05:20:35 IST 2026
[2026-08-31 05:20:35,920.920 INFO    ] ================================================
[2026-08-31 05:20:36,553.553 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:20:36
[2026-08-31 05:20:37,204.204 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:20:37,483.483 INFO    ] Initializing speech engine...
[2026-08-31 05:20:37,500.500 INFO    ] 2026-08-31 05:20:37
[2026-08-31 05:20:37,766.766 INFO    ] 2026-08-31 05:20:37
[2026-08-31 05:20:37,808.808 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:20:38,012.012 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:20:38,065.065 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:20:38,206.206 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:20:38,266.266 INFO    ] time= 31/08/2026 05:20:38
[2026-08-31 05:20:38,331.331 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:20:38,339.339 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:20:38,469.469 INFO    ] No existing commands found in stream
[2026-08-31 05:20:43,489.489 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:20:43,492.492 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-08-31 05:20:47,947.947 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 05:20:47,950.950 INFO    ] Checking for system updates...
[2026-08-31 05:20:47,993.993 INFO    ] 200
[2026-08-31 05:20:47,996.996 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-08-31 05:20:48,000.000 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-08-31 05:20:48,002.002 INFO    ] Checking for camera pi updates...
[2026-08-31 05:20:48,052.052 INFO    ] 200
[2026-08-31 05:20:48,055.055 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-08-31 05:20:48,058.058 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-08-31 05:20:48,061.061 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:20:48,065.065 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:20:48,071.071 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:20:48,077.077 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:20:50,123.123 INFO    ] ================================================
[2026-08-31 05:20:50,140.140 INFO    ] Launching Daemon at Mon Aug 31 05:20:50 IST 2026
[2026-08-31 05:20:50,157.157 INFO    ] ================================================
[2026-08-31 05:20:50,738.738 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:20:50
[2026-08-31 05:20:51,322.322 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:20:51,581.581 INFO    ] Initializing speech engine...
[2026-08-31 05:20:51,601.601 INFO    ] 2026-08-31 05:20:51
[2026-08-31 05:20:51,892.892 INFO    ] 2026-08-31 05:20:51
[2026-08-31 05:20:51,954.954 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:20:52,212.212 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:20:52,223.223 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:20:52,380.380 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:20:52,440.440 INFO    ] time= 31/08/2026 05:20:52
[2026-08-31 05:20:52,494.494 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:20:52,529.529 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:20:52,598.598 INFO    ] No existing commands found in stream
[2026-08-31 05:20:57,623.623 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:20:57,626.626 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-08-31 05:20:58,618.618 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 05:20:58,621.621 INFO    ] Checking for system updates...
[2026-08-31 05:20:58,661.661 INFO    ] 200
[2026-08-31 05:20:58,664.664 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:20:58,717.717 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:20:58,720.720 INFO    ] No update needed
[2026-08-31 05:20:58,723.723 INFO    ] Checking for camera pi updates...
[2026-08-31 05:20:58,757.757 INFO    ] 200
[2026-08-31 05:20:58,760.760 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:20:58,803.803 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:20:58,985.985 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:20:58,988.988 INFO    ] No camera update needed
[2026-08-31 05:20:58,991.991 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:20:58,993.993 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:20:59,000.000 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:20:59,005.005 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:21:01,046.046 INFO    ] ================================================
[2026-08-31 05:21:01,061.061 INFO    ] Launching Daemon at Mon Aug 31 05:21:01 IST 2026
[2026-08-31 05:21:01,073.073 INFO    ] ================================================
[2026-08-31 05:21:01,816.816 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:21:01
[2026-08-31 05:21:02,455.455 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:21:02,744.744 INFO    ] Initializing speech engine...
[2026-08-31 05:21:02,748.748 INFO    ] 2026-08-31 05:21:02
[2026-08-31 05:21:03,071.071 INFO    ] 2026-08-31 05:21:03
[2026-08-31 05:21:03,114.114 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:21:03,299.299 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:21:03,305.305 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:21:03,459.459 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:21:03,470.470 INFO    ] time= 31/08/2026 05:21:03
[2026-08-31 05:21:03,475.475 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:21:03,498.498 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:21:03,599.599 INFO    ] No existing commands found in stream
[2026-08-31 05:21:08,624.624 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:21:08,627.627 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-08-31 05:21:12,584.584 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 05:21:12,590.590 INFO    ] Checking for system updates...
[2026-08-31 05:21:12,627.627 INFO    ] 200
[2026-08-31 05:21:12,630.630 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:21:12,682.682 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:21:12,684.684 INFO    ] No update needed
[2026-08-31 05:21:12,687.687 INFO    ] Checking for camera pi updates...
[2026-08-31 05:21:12,724.724 INFO    ] 200
[2026-08-31 05:21:12,727.727 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:21:12,767.767 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:21:12,848.848 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:21:12,850.850 INFO    ] No camera update needed
[2026-08-31 05:21:12,852.852 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:21:12,855.855 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:21:12,860.860 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:21:12,865.865 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:21:14,906.906 INFO    ] ================================================
[2026-08-31 05:21:14,922.922 INFO    ] Launching Daemon at Mon Aug 31 05:21:14 IST 2026
[2026-08-31 05:21:14,932.932 INFO    ] ================================================
[2026-08-31 05:21:15,588.588 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:21:15
[2026-08-31 05:21:16,269.269 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:21:16,577.577 INFO    ] Initializing speech engine...
[2026-08-31 05:21:16,588.588 INFO    ] 2026-08-31 05:21:16
[2026-08-31 05:21:16,870.870 INFO    ] 2026-08-31 05:21:16
[2026-08-31 05:21:16,916.916 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:21:17,167.167 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:21:17,190.190 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:21:17,385.385 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:21:17,411.411 INFO    ] time= 31/08/2026 05:21:17
[2026-08-31 05:21:17,430.430 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:21:17,459.459 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:21:17,567.567 INFO    ] No existing commands found in stream
[2026-08-31 05:21:22,586.586 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:21:22,590.590 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-08-31 05:21:23,285.285 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 05:21:23,289.289 INFO    ] Checking for system updates...
[2026-08-31 05:21:23,326.326 INFO    ] 200
[2026-08-31 05:21:23,329.329 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:21:23,390.390 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:21:23,393.393 INFO    ] No update needed
[2026-08-31 05:21:23,395.395 INFO    ] Checking for camera pi updates...
[2026-08-31 05:21:23,432.432 INFO    ] 200
[2026-08-31 05:21:23,434.434 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:21:23,476.476 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:21:23,584.584 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:21:23,587.587 INFO    ] No camera update needed
[2026-08-31 05:21:23,590.590 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:21:23,592.592 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:21:23,599.599 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:21:23,604.604 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:21:25,647.647 INFO    ] ================================================
[2026-08-31 05:21:25,662.662 INFO    ] Launching Daemon at Mon Aug 31 05:21:25 IST 2026
[2026-08-31 05:21:25,673.673 INFO    ] ================================================
[2026-08-31 05:21:26,327.327 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:21:26
[2026-08-31 05:21:27,004.004 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:21:27,314.314 INFO    ] Initializing speech engine...
[2026-08-31 05:21:27,326.326 INFO    ] 2026-08-31 05:21:27
[2026-08-31 05:21:27,636.636 INFO    ] 2026-08-31 05:21:27
[2026-08-31 05:21:27,721.721 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:21:27,933.933 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:21:27,939.939 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:21:28,134.134 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:21:28,142.142 INFO    ] time= 31/08/2026 05:21:28
[2026-08-31 05:21:28,163.163 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:21:28,192.192 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:21:28,341.341 INFO    ] No existing commands found in stream
[2026-08-31 05:21:33,372.372 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:21:33,375.375 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-08-31 05:21:36,852.852 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 05:21:36,855.855 INFO    ] Checking for system updates...
[2026-08-31 05:21:36,892.892 INFO    ] 200
[2026-08-31 05:21:36,894.894 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:21:36,954.954 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:21:36,957.957 INFO    ] No update needed
[2026-08-31 05:21:36,960.960 INFO    ] Checking for camera pi updates...
[2026-08-31 05:21:36,995.995 INFO    ] 200
[2026-08-31 05:21:36,998.998 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:21:37,040.040 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:21:37,129.129 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:21:37,132.132 INFO    ] No camera update needed
[2026-08-31 05:21:37,135.135 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:21:37,138.138 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:21:37,144.144 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:21:37,150.150 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:21:39,191.191 INFO    ] ================================================
[2026-08-31 05:21:39,206.206 INFO    ] Launching Daemon at Mon Aug 31 05:21:39 IST 2026
[2026-08-31 05:21:39,217.217 INFO    ] ================================================
[2026-08-31 05:21:39,784.784 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:21:39
[2026-08-31 05:21:40,370.370 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:21:40,639.639 INFO    ] Initializing speech engine...
[2026-08-31 05:21:40,647.647 INFO    ] 2026-08-31 05:21:40
[2026-08-31 05:21:40,895.895 INFO    ] 2026-08-31 05:21:40
[2026-08-31 05:21:40,930.930 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:21:41,183.183 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:21:41,193.193 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:21:41,420.420 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:21:41,453.453 INFO    ] time= 31/08/2026 05:21:41
[2026-08-31 05:21:41,470.470 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:21:41,479.479 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:21:41,609.609 INFO    ] No existing commands found in stream
[2026-08-31 05:21:46,628.628 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:21:46,630.630 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-08-31 05:21:49,892.892 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 05:21:49,895.895 INFO    ] Checking for system updates...
[2026-08-31 05:21:49,934.934 INFO    ] 200
[2026-08-31 05:21:49,936.936 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:21:49,988.988 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:21:49,990.990 INFO    ] No update needed
[2026-08-31 05:21:49,993.993 INFO    ] Checking for camera pi updates...
[2026-08-31 05:21:50,026.026 INFO    ] 200
[2026-08-31 05:21:50,028.028 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:21:50,076.076 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:21:50,160.160 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:21:50,162.162 INFO    ] No camera update needed
[2026-08-31 05:21:50,164.164 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:21:50,167.167 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:21:50,172.172 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:21:50,177.177 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:21:52,218.218 INFO    ] ================================================
[2026-08-31 05:21:52,233.233 INFO    ] Launching Daemon at Mon Aug 31 05:21:52 IST 2026
[2026-08-31 05:21:52,244.244 INFO    ] ================================================
[2026-08-31 05:21:52,896.896 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:21:52
[2026-08-31 05:21:53,571.571 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:21:53,877.877 INFO    ] Initializing speech engine...
[2026-08-31 05:21:53,888.888 INFO    ] 2026-08-31 05:21:53
[2026-08-31 05:21:54,156.156 INFO    ] 2026-08-31 05:21:54
[2026-08-31 05:21:54,212.212 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:21:54,493.493 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:21:54,502.502 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:21:54,698.698 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:21:54,716.716 INFO    ] time= 31/08/2026 05:21:54
[2026-08-31 05:21:54,726.726 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:21:54,752.752 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:21:54,853.853 INFO    ] No existing commands found in stream
[2026-08-31 05:21:59,871.871 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:21:59,874.874 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-08-31 05:22:01,598.598 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 05:22:01,601.601 INFO    ] Checking for system updates...
[2026-08-31 05:22:01,675.675 INFO    ] 200
[2026-08-31 05:22:01,680.680 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:22:01,797.797 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:22:01,804.804 INFO    ] No update needed
[2026-08-31 05:22:01,811.811 INFO    ] Checking for camera pi updates...
[2026-08-31 05:22:01,863.863 INFO    ] 200
[2026-08-31 05:22:01,867.867 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:22:01,929.929 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:22:02,005.005 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:22:02,009.009 INFO    ] No camera update needed
[2026-08-31 05:22:02,012.012 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:22:02,016.016 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:22:02,023.023 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:22:02,032.032 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:22:04,075.075 INFO    ] ================================================
[2026-08-31 05:22:04,090.090 INFO    ] Launching Daemon at Mon Aug 31 05:22:04 IST 2026
[2026-08-31 05:22:04,101.101 INFO    ] ================================================
[2026-08-31 05:22:04,681.681 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:22:04
[2026-08-31 05:22:05,278.278 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:22:05,557.557 INFO    ] Initializing speech engine...
[2026-08-31 05:22:05,563.563 INFO    ] 2026-08-31 05:22:05
[2026-08-31 05:22:05,834.834 INFO    ] 2026-08-31 05:22:05
[2026-08-31 05:22:05,877.877 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:22:06,100.100 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:22:06,104.104 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:22:06,256.256 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:22:06,295.295 INFO    ] time= 31/08/2026 05:22:06
[2026-08-31 05:22:06,355.355 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:22:06,389.389 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:22:06,533.533 INFO    ] No existing commands found in stream
[2026-08-31 05:22:11,546.546 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:22:11,549.549 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-08-31 05:22:13,659.659 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 05:22:13,662.662 INFO    ] Checking for system updates...
[2026-08-31 05:22:13,697.697 INFO    ] 200
[2026-08-31 05:22:13,700.700 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:22:13,753.753 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:22:13,755.755 INFO    ] No update needed
[2026-08-31 05:22:13,758.758 INFO    ] Checking for camera pi updates...
[2026-08-31 05:22:13,792.792 INFO    ] 200
[2026-08-31 05:22:13,794.794 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:22:13,834.834 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:22:13,950.950 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:22:13,952.952 INFO    ] No camera update needed
[2026-08-31 05:22:13,955.955 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:22:13,957.957 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:22:13,962.962 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:22:13,967.967 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:22:16,010.010 INFO    ] ================================================
[2026-08-31 05:22:16,029.029 INFO    ] Launching Daemon at Mon Aug 31 05:22:16 IST 2026
[2026-08-31 05:22:16,041.041 INFO    ] ================================================
[2026-08-31 05:22:16,634.634 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:22:16
[2026-08-31 05:22:17,241.241 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:22:17,517.517 INFO    ] Initializing speech engine...
[2026-08-31 05:22:17,524.524 INFO    ] 2026-08-31 05:22:17
[2026-08-31 05:22:17,784.784 INFO    ] 2026-08-31 05:22:17
[2026-08-31 05:22:17,814.814 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:22:18,058.058 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:22:18,068.068 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:22:18,212.212 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:22:18,271.271 INFO    ] time= 31/08/2026 05:22:18
[2026-08-31 05:22:18,321.321 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:22:18,334.334 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:22:18,444.444 INFO    ] No existing commands found in stream
[2026-08-31 05:22:23,471.471 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:22:23,473.473 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-08-31 05:22:24,019.019 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 05:22:24,022.022 INFO    ] Checking for system updates...
[2026-08-31 05:22:24,065.065 INFO    ] 200
[2026-08-31 05:22:24,068.068 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:22:24,121.121 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:22:24,124.124 INFO    ] No update needed
[2026-08-31 05:22:24,126.126 INFO    ] Checking for camera pi updates...
[2026-08-31 05:22:24,162.162 INFO    ] 200
[2026-08-31 05:22:24,164.164 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:22:24,214.214 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:22:24,312.312 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:22:24,314.314 INFO    ] No camera update needed
[2026-08-31 05:22:24,316.316 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:22:24,319.319 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:22:24,324.324 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:22:24,329.329 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:22:26,370.370 INFO    ] ================================================
[2026-08-31 05:22:26,386.386 INFO    ] Launching Daemon at Mon Aug 31 05:22:26 IST 2026
[2026-08-31 05:22:26,396.396 INFO    ] ================================================
[2026-08-31 05:22:27,048.048 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:22:27
[2026-08-31 05:22:27,648.648 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:22:27,915.915 INFO    ] Initializing speech engine...
[2026-08-31 05:22:27,924.924 INFO    ] 2026-08-31 05:22:27
[2026-08-31 05:22:28,170.170 INFO    ] 2026-08-31 05:22:28
[2026-08-31 05:22:28,206.206 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:22:28,463.463 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:22:28,467.467 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:22:28,601.601 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:22:28,666.666 INFO    ] time= 31/08/2026 05:22:28
[2026-08-31 05:22:28,728.728 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:22:28,734.734 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:22:28,859.859 INFO    ] No existing commands found in stream
[2026-08-31 05:22:33,884.884 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:22:33,887.887 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-08-31 05:22:37,663.663 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 05:22:37,666.666 INFO    ] Checking for system updates...
[2026-08-31 05:22:37,702.702 INFO    ] 200
[2026-08-31 05:22:37,704.704 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:22:37,757.757 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:22:37,760.760 INFO    ] No update needed
[2026-08-31 05:22:37,762.762 INFO    ] Checking for camera pi updates...
[2026-08-31 05:22:37,796.796 INFO    ] 200
[2026-08-31 05:22:37,798.798 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:22:37,838.838 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:22:37,895.895 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:22:37,897.897 INFO    ] No camera update needed
[2026-08-31 05:22:37,900.900 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:22:37,902.902 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:22:37,907.907 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:22:37,912.912 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:22:39,954.954 INFO    ] ================================================
[2026-08-31 05:22:39,968.968 INFO    ] Launching Daemon at Mon Aug 31 05:22:39 IST 2026
[2026-08-31 05:22:39,979.979 INFO    ] ================================================
[2026-08-31 05:22:40,555.555 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:22:40
[2026-08-31 05:22:41,141.141 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:22:41,400.400 INFO    ] Initializing speech engine...
[2026-08-31 05:22:41,408.408 INFO    ] 2026-08-31 05:22:41
[2026-08-31 05:22:41,702.702 INFO    ] 2026-08-31 05:22:41
[2026-08-31 05:22:41,742.742 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:22:41,937.937 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:22:41,952.952 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:22:42,119.119 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:22:42,126.126 INFO    ] time= 31/08/2026 05:22:42
[2026-08-31 05:22:42,133.133 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:22:42,163.163 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:22:42,302.302 INFO    ] No existing commands found in stream
[2026-08-31 05:22:47,332.332 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:22:47,335.335 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-08-31 05:22:50,804.804 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 05:22:50,807.807 INFO    ] Checking for system updates...
[2026-08-31 05:22:50,846.846 INFO    ] 200
[2026-08-31 05:22:50,849.849 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:22:50,902.902 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:22:50,904.904 INFO    ] No update needed
[2026-08-31 05:22:50,906.906 INFO    ] Checking for camera pi updates...
[2026-08-31 05:22:50,940.940 INFO    ] 200
[2026-08-31 05:22:50,942.942 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:22:50,987.987 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:22:51,074.074 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:22:51,077.077 INFO    ] No camera update needed
[2026-08-31 05:22:51,079.079 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:22:51,081.081 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:22:51,086.086 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:22:51,091.091 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:22:53,131.131 INFO    ] ================================================
[2026-08-31 05:22:53,146.146 INFO    ] Launching Daemon at Mon Aug 31 05:22:53 IST 2026
[2026-08-31 05:22:53,156.156 INFO    ] ================================================
[2026-08-31 05:22:53,722.722 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:22:53
[2026-08-31 05:22:54,306.306 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:22:54,578.578 INFO    ] Initializing speech engine...
[2026-08-31 05:22:54,597.597 INFO    ] 2026-08-31 05:22:54
[2026-08-31 05:22:54,865.865 INFO    ] 2026-08-31 05:22:54
[2026-08-31 05:22:54,900.900 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:22:55,097.097 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:22:55,112.112 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:22:55,275.275 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:22:55,283.283 INFO    ] time= 31/08/2026 05:22:55
[2026-08-31 05:22:55,288.288 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:22:55,294.294 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:22:55,422.422 INFO    ] No existing commands found in stream
[2026-08-31 05:23:00,452.452 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:23:00,455.455 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-08-31 05:23:03,063.063 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 05:23:03,066.066 INFO    ] Checking for system updates...
[2026-08-31 05:23:03,101.101 INFO    ] 200
[2026-08-31 05:23:03,104.104 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:23:03,157.157 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:23:03,160.160 INFO    ] No update needed
[2026-08-31 05:23:03,162.162 INFO    ] Checking for camera pi updates...
[2026-08-31 05:23:03,199.199 INFO    ] 200
[2026-08-31 05:23:03,202.202 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:23:03,242.242 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:23:03,325.325 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:23:03,328.328 INFO    ] No camera update needed
[2026-08-31 05:23:03,330.330 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:23:03,333.333 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:23:03,338.338 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:23:03,343.343 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:23:05,384.384 INFO    ] ================================================
[2026-08-31 05:23:05,399.399 INFO    ] Launching Daemon at Mon Aug 31 05:23:05 IST 2026
[2026-08-31 05:23:05,410.410 INFO    ] ================================================
[2026-08-31 05:23:05,979.979 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:23:05
[2026-08-31 05:23:06,583.583 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:23:06,850.850 INFO    ] Initializing speech engine...
[2026-08-31 05:23:06,871.871 INFO    ] 2026-08-31 05:23:06
[2026-08-31 05:23:07,121.121 INFO    ] 2026-08-31 05:23:07
[2026-08-31 05:23:07,175.175 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:23:07,420.420 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:23:07,426.426 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:23:07,624.624 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:23:07,665.665 INFO    ] time= 31/08/2026 05:23:07
[2026-08-31 05:23:07,683.683 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:23:07,695.695 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:23:07,817.817 INFO    ] No existing commands found in stream
[2026-08-31 05:23:12,832.832 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:23:12,835.835 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-08-31 05:23:14,531.531 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 05:23:14,534.534 INFO    ] Checking for system updates...
[2026-08-31 05:23:14,572.572 INFO    ] 200
[2026-08-31 05:23:14,575.575 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:23:14,629.629 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:23:14,631.631 INFO    ] No update needed
[2026-08-31 05:23:14,634.634 INFO    ] Checking for camera pi updates...
[2026-08-31 05:23:14,668.668 INFO    ] 200
[2026-08-31 05:23:14,671.671 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:23:14,713.713 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:23:14,901.901 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:23:14,904.904 INFO    ] No camera update needed
[2026-08-31 05:23:14,906.906 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:23:14,909.909 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:23:14,915.915 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:23:14,921.921 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:23:16,964.964 INFO    ] ================================================
[2026-08-31 05:23:16,979.979 INFO    ] Launching Daemon at Mon Aug 31 05:23:16 IST 2026
[2026-08-31 05:23:16,990.990 INFO    ] ================================================
[2026-08-31 05:23:17,553.553 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:23:17
[2026-08-31 05:23:18,135.135 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:23:18,388.388 INFO    ] Initializing speech engine...
[2026-08-31 05:23:18,396.396 INFO    ] 2026-08-31 05:23:18
[2026-08-31 05:23:18,691.691 INFO    ] 2026-08-31 05:23:18
[2026-08-31 05:23:18,729.729 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:23:18,886.886 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:23:18,927.927 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:23:19,101.101 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:23:19,111.111 INFO    ] time= 31/08/2026 05:23:19
[2026-08-31 05:23:19,115.115 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:23:19,122.122 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:23:19,194.194 INFO    ] No existing commands found in stream
[2026-08-31 05:23:24,207.207 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:23:24,210.210 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-08-31 05:23:28,362.362 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 05:23:28,365.365 INFO    ] Checking for system updates...
[2026-08-31 05:23:28,400.400 INFO    ] 200
[2026-08-31 05:23:28,403.403 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:23:28,454.454 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:23:28,457.457 INFO    ] No update needed
[2026-08-31 05:23:28,459.459 INFO    ] Checking for camera pi updates...
[2026-08-31 05:23:28,496.496 INFO    ] 200
[2026-08-31 05:23:28,499.499 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:23:28,545.545 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:23:28,620.620 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:23:28,622.622 INFO    ] No camera update needed
[2026-08-31 05:23:28,624.624 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:23:28,627.627 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:23:28,632.632 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:23:28,637.637 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:23:30,678.678 INFO    ] ================================================
[2026-08-31 05:23:30,693.693 INFO    ] Launching Daemon at Mon Aug 31 05:23:30 IST 2026
[2026-08-31 05:23:30,703.703 INFO    ] ================================================
[2026-08-31 05:23:31,331.331 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:23:31
[2026-08-31 05:23:32,049.049 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:23:32,344.344 INFO    ] Initializing speech engine...
[2026-08-31 05:23:32,349.349 INFO    ] 2026-08-31 05:23:32
[2026-08-31 05:23:32,621.621 INFO    ] 2026-08-31 05:23:32
[2026-08-31 05:23:32,689.689 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:23:32,978.978 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:23:32,986.986 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:23:33,160.160 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:23:33,189.189 INFO    ] time= 31/08/2026 05:23:33
[2026-08-31 05:23:33,195.195 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:23:33,210.210 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:23:33,343.343 INFO    ] No existing commands found in stream
[2026-08-31 05:23:38,358.358 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:23:38,361.361 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-08-31 05:23:39,351.351 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 05:23:39,354.354 INFO    ] Checking for system updates...
[2026-08-31 05:23:39,389.389 INFO    ] 200
[2026-08-31 05:23:39,391.391 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:23:39,449.449 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:23:39,452.452 INFO    ] No update needed
[2026-08-31 05:23:39,454.454 INFO    ] Checking for camera pi updates...
[2026-08-31 05:23:39,488.488 INFO    ] 200
[2026-08-31 05:23:39,490.490 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:23:39,534.534 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:23:39,615.615 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:23:39,617.617 INFO    ] No camera update needed
[2026-08-31 05:23:39,620.620 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:23:39,622.622 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:23:39,627.627 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:23:39,632.632 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:23:41,672.672 INFO    ] ================================================
[2026-08-31 05:23:41,687.687 INFO    ] Launching Daemon at Mon Aug 31 05:23:41 IST 2026
[2026-08-31 05:23:41,698.698 INFO    ] ================================================
[2026-08-31 05:23:42,273.273 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:23:42
[2026-08-31 05:23:42,906.906 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:23:43,209.209 INFO    ] Initializing speech engine...
[2026-08-31 05:23:43,220.220 INFO    ] 2026-08-31 05:23:43
[2026-08-31 05:23:43,532.532 INFO    ] 2026-08-31 05:23:43
[2026-08-31 05:23:43,616.616 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:23:43,800.800 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:23:43,802.802 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:23:44,003.003 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:23:44,043.043 INFO    ] time= 31/08/2026 05:23:44
[2026-08-31 05:23:44,060.060 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:23:44,070.070 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:23:44,191.191 INFO    ] No existing commands found in stream
[2026-08-31 05:23:49,213.213 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:23:49,216.216 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-08-31 05:23:49,732.732 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 05:23:49,735.735 INFO    ] Checking for system updates...
[2026-08-31 05:23:49,773.773 INFO    ] 200
[2026-08-31 05:23:49,775.775 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:23:49,829.829 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:23:49,832.832 INFO    ] No update needed
[2026-08-31 05:23:49,835.835 INFO    ] Checking for camera pi updates...
[2026-08-31 05:23:49,869.869 INFO    ] 200
[2026-08-31 05:23:49,872.872 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:23:49,913.913 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:23:50,013.013 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:23:50,015.015 INFO    ] No camera update needed
[2026-08-31 05:23:50,018.018 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:23:50,021.021 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:23:50,027.027 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:23:50,033.033 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:23:52,074.074 INFO    ] ================================================
[2026-08-31 05:23:52,089.089 INFO    ] Launching Daemon at Mon Aug 31 05:23:52 IST 2026
[2026-08-31 05:23:52,100.100 INFO    ] ================================================
[2026-08-31 05:23:52,679.679 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:23:52
[2026-08-31 05:23:53,260.260 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:23:53,516.516 INFO    ] Initializing speech engine...
[2026-08-31 05:23:53,522.522 INFO    ] 2026-08-31 05:23:53
[2026-08-31 05:23:53,813.813 INFO    ] 2026-08-31 05:23:53
[2026-08-31 05:23:53,838.838 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:23:54,043.043 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:23:54,049.049 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:23:54,184.184 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:23:54,205.205 INFO    ] time= 31/08/2026 05:23:54
[2026-08-31 05:23:54,229.229 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:23:54,235.235 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:23:54,370.370 INFO    ] No existing commands found in stream
[2026-08-31 05:23:59,400.400 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:23:59,403.403 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-08-31 05:24:02,862.862 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 05:24:02,865.865 INFO    ] Checking for system updates...
[2026-08-31 05:24:02,901.901 INFO    ] 200
[2026-08-31 05:24:02,904.904 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:24:02,961.961 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:24:02,963.963 INFO    ] No update needed
[2026-08-31 05:24:02,966.966 INFO    ] Checking for camera pi updates...
[2026-08-31 05:24:03,008.008 INFO    ] 200
[2026-08-31 05:24:03,011.011 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:24:03,052.052 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:24:03,140.140 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:24:03,142.142 INFO    ] No camera update needed
[2026-08-31 05:24:03,145.145 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:24:03,147.147 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:24:03,153.153 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:24:03,159.159 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:24:05,199.199 INFO    ] ================================================
[2026-08-31 05:24:05,215.215 INFO    ] Launching Daemon at Mon Aug 31 05:24:05 IST 2026
[2026-08-31 05:24:05,226.226 INFO    ] ================================================
[2026-08-31 05:24:05,809.809 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:24:05
[2026-08-31 05:24:06,460.460 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:24:06,745.745 INFO    ] Initializing speech engine...
[2026-08-31 05:24:06,751.751 INFO    ] 2026-08-31 05:24:06
[2026-08-31 05:24:07,007.007 INFO    ] 2026-08-31 05:24:07
[2026-08-31 05:24:07,061.061 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:24:07,329.329 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:24:07,349.349 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:24:07,529.529 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:24:07,553.553 INFO    ] time= 31/08/2026 05:24:07
[2026-08-31 05:24:07,569.569 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:24:07,576.576 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:24:07,695.695 INFO    ] No existing commands found in stream
[2026-08-31 05:24:12,714.714 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:24:12,717.717 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-08-31 05:24:14,693.693 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 05:24:14,696.696 INFO    ] Checking for system updates...
[2026-08-31 05:24:14,733.733 INFO    ] 200
[2026-08-31 05:24:14,736.736 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:24:14,788.788 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:24:14,791.791 INFO    ] No update needed
[2026-08-31 05:24:14,793.793 INFO    ] Checking for camera pi updates...
[2026-08-31 05:24:14,830.830 INFO    ] 200
[2026-08-31 05:24:14,832.832 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:24:14,873.873 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:24:14,963.963 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:24:14,966.966 INFO    ] No camera update needed
[2026-08-31 05:24:14,968.968 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:24:14,970.970 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:24:14,976.976 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:24:14,981.981 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:24:17,022.022 INFO    ] ================================================
[2026-08-31 05:24:17,037.037 INFO    ] Launching Daemon at Mon Aug 31 05:24:17 IST 2026
[2026-08-31 05:24:17,049.049 INFO    ] ================================================
[2026-08-31 05:24:17,658.658 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:24:17
[2026-08-31 05:24:18,243.243 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:24:18,490.490 INFO    ] Initializing speech engine...
[2026-08-31 05:24:18,512.512 INFO    ] 2026-08-31 05:24:18
[2026-08-31 05:24:18,763.763 INFO    ] 2026-08-31 05:24:18
[2026-08-31 05:24:18,798.798 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:24:19,048.048 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:24:19,059.059 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:24:19,192.192 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:24:19,231.231 INFO    ] time= 31/08/2026 05:24:19
[2026-08-31 05:24:19,290.290 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:24:19,322.322 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:24:19,449.449 INFO    ] No existing commands found in stream
[2026-08-31 05:24:24,474.474 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:24:24,477.477 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-08-31 05:24:25,783.783 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 05:24:25,786.786 INFO    ] Checking for system updates...
[2026-08-31 05:24:25,822.822 INFO    ] 200
[2026-08-31 05:24:25,824.824 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:24:25,879.879 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:24:25,881.881 INFO    ] No update needed
[2026-08-31 05:24:25,884.884 INFO    ] Checking for camera pi updates...
[2026-08-31 05:24:25,917.917 INFO    ] 200
[2026-08-31 05:24:25,920.920 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:24:25,959.959 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:24:26,041.041 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:24:26,043.043 INFO    ] No camera update needed
[2026-08-31 05:24:26,045.045 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:24:26,048.048 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:24:26,053.053 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:24:26,059.059 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:24:28,098.098 INFO    ] ================================================
[2026-08-31 05:24:28,113.113 INFO    ] Launching Daemon at Mon Aug 31 05:24:28 IST 2026
[2026-08-31 05:24:28,124.124 INFO    ] ================================================
[2026-08-31 05:24:28,692.692 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:24:28
[2026-08-31 05:24:29,275.275 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:24:29,532.532 INFO    ] Initializing speech engine...
[2026-08-31 05:24:29,560.560 INFO    ] 2026-08-31 05:24:29
[2026-08-31 05:24:29,821.821 INFO    ] 2026-08-31 05:24:29
[2026-08-31 05:24:29,856.856 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:24:30,110.110 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:24:30,119.119 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:24:30,342.342 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:24:30,377.377 INFO    ] time= 31/08/2026 05:24:30
[2026-08-31 05:24:30,383.383 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:24:30,401.401 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:24:30,532.532 INFO    ] No existing commands found in stream
[2026-08-31 05:24:35,551.551 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:24:35,554.554 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-08-31 05:24:39,010.010 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 05:24:39,013.013 INFO    ] Checking for system updates...
[2026-08-31 05:24:39,049.049 INFO    ] 200
[2026-08-31 05:24:39,052.052 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:24:39,106.106 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:24:39,109.109 INFO    ] No update needed
[2026-08-31 05:24:39,111.111 INFO    ] Checking for camera pi updates...
[2026-08-31 05:24:39,147.147 INFO    ] 200
[2026-08-31 05:24:39,150.150 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:24:39,191.191 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:24:39,271.271 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:24:39,274.274 INFO    ] No camera update needed
[2026-08-31 05:24:39,276.276 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:24:39,279.279 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:24:39,285.285 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:24:39,290.290 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:24:41,330.330 INFO    ] ================================================
[2026-08-31 05:24:41,346.346 INFO    ] Launching Daemon at Mon Aug 31 05:24:41 IST 2026
[2026-08-31 05:24:41,357.357 INFO    ] ================================================
[2026-08-31 05:24:41,924.924 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:24:41
[2026-08-31 05:24:42,505.505 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:24:42,755.755 INFO    ] Initializing speech engine...
[2026-08-31 05:24:42,778.778 INFO    ] 2026-08-31 05:24:42
[2026-08-31 05:24:43,029.029 INFO    ] 2026-08-31 05:24:43
[2026-08-31 05:24:43,064.064 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:24:43,261.261 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:24:43,319.319 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:24:43,455.455 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:24:43,497.497 INFO    ] time= 31/08/2026 05:24:43
[2026-08-31 05:24:43,562.562 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:24:43,589.589 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:24:43,648.648 INFO    ] No existing commands found in stream
[2026-08-31 05:24:48,668.668 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:24:48,671.671 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-08-31 05:24:49,145.145 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 05:24:49,147.147 INFO    ] Checking for system updates...
[2026-08-31 05:24:49,183.183 INFO    ] 200
[2026-08-31 05:24:49,185.185 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:24:49,241.241 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:24:49,243.243 INFO    ] No update needed
[2026-08-31 05:24:49,245.245 INFO    ] Checking for camera pi updates...
[2026-08-31 05:24:49,279.279 INFO    ] 200
[2026-08-31 05:24:49,281.281 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:24:49,324.324 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:24:49,414.414 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:24:49,416.416 INFO    ] No camera update needed
[2026-08-31 05:24:49,419.419 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:24:49,421.421 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:24:49,426.426 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:24:49,431.431 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:24:51,472.472 INFO    ] ================================================
[2026-08-31 05:24:51,487.487 INFO    ] Launching Daemon at Mon Aug 31 05:24:51 IST 2026
[2026-08-31 05:24:51,497.497 INFO    ] ================================================
[2026-08-31 05:24:52,135.135 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:24:52
[2026-08-31 05:24:52,787.787 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:24:53,081.081 INFO    ] Initializing speech engine...
[2026-08-31 05:24:53,094.094 INFO    ] 2026-08-31 05:24:53
[2026-08-31 05:24:53,355.355 INFO    ] 2026-08-31 05:24:53
[2026-08-31 05:24:53,406.406 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:24:53,629.629 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:24:53,638.638 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:24:53,838.838 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:24:53,893.893 INFO    ] time= 31/08/2026 05:24:53
[2026-08-31 05:24:53,903.903 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:24:53,921.921 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:24:54,053.053 INFO    ] No existing commands found in stream
[2026-08-31 05:24:59,069.069 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:24:59,072.072 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-08-31 05:25:00,663.663 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 05:25:00,666.666 INFO    ] Checking for system updates...
[2026-08-31 05:25:00,701.701 INFO    ] 200
[2026-08-31 05:25:00,703.703 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:25:00,760.760 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:25:00,763.763 INFO    ] No update needed
[2026-08-31 05:25:00,765.765 INFO    ] Checking for camera pi updates...
[2026-08-31 05:25:00,798.798 INFO    ] 200
[2026-08-31 05:25:00,801.801 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:25:00,844.844 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:25:00,931.931 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:25:00,934.934 INFO    ] No camera update needed
[2026-08-31 05:25:00,936.936 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:25:00,939.939 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:25:00,944.944 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:25:00,949.949 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:25:03,006.006 INFO    ] ================================================
[2026-08-31 05:25:03,022.022 INFO    ] Launching Daemon at Mon Aug 31 05:25:03 IST 2026
[2026-08-31 05:25:03,034.034 INFO    ] ================================================
[2026-08-31 05:25:03,659.659 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:25:03
[2026-08-31 05:25:04,276.276 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:25:04,552.552 INFO    ] Initializing speech engine...
[2026-08-31 05:25:04,558.558 INFO    ] 2026-08-31 05:25:04
[2026-08-31 05:25:04,808.808 INFO    ] 2026-08-31 05:25:04
[2026-08-31 05:25:04,843.843 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:25:05,093.093 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:25:05,104.104 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:25:05,239.239 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:25:05,299.299 INFO    ] time= 31/08/2026 05:25:05
[2026-08-31 05:25:05,359.359 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:25:05,372.372 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:25:05,497.497 INFO    ] No existing commands found in stream
[2026-08-31 05:25:10,524.524 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:25:10,527.527 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-08-31 05:25:12,087.087 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 05:25:12,090.090 INFO    ] Checking for system updates...
[2026-08-31 05:25:12,125.125 INFO    ] 200
[2026-08-31 05:25:12,127.127 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:25:12,186.186 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:25:12,189.189 INFO    ] No update needed
[2026-08-31 05:25:12,191.191 INFO    ] Checking for camera pi updates...
[2026-08-31 05:25:12,225.225 INFO    ] 200
[2026-08-31 05:25:12,227.227 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:25:12,272.272 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:25:12,351.351 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:25:12,353.353 INFO    ] No camera update needed
[2026-08-31 05:25:12,355.355 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:25:12,358.358 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:25:12,363.363 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:25:12,369.369 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:25:14,410.410 INFO    ] ================================================
[2026-08-31 05:25:14,426.426 INFO    ] Launching Daemon at Mon Aug 31 05:25:14 IST 2026
[2026-08-31 05:25:14,438.438 INFO    ] ================================================
[2026-08-31 05:25:15,092.092 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:25:15
[2026-08-31 05:25:15,683.683 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:25:15,939.939 INFO    ] Initializing speech engine...
[2026-08-31 05:25:15,954.954 INFO    ] 2026-08-31 05:25:15
[2026-08-31 05:25:16,234.234 INFO    ] 2026-08-31 05:25:16
[2026-08-31 05:25:16,272.272 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:25:16,496.496 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:25:16,516.516 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:25:16,647.647 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:25:16,654.654 INFO    ] time= 31/08/2026 05:25:16
[2026-08-31 05:25:16,676.676 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:25:16,725.725 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:25:16,863.863 INFO    ] No existing commands found in stream
[2026-08-31 05:25:21,880.880 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:25:21,883.883 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-08-31 05:25:25,850.850 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 05:25:25,853.853 INFO    ] Checking for system updates...
[2026-08-31 05:25:25,890.890 INFO    ] 200
[2026-08-31 05:25:25,893.893 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:25:25,946.946 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:25:25,949.949 INFO    ] No update needed
[2026-08-31 05:25:25,952.952 INFO    ] Checking for camera pi updates...
[2026-08-31 05:25:25,986.986 INFO    ] 200
[2026-08-31 05:25:25,989.989 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:25:26,031.031 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:25:26,111.111 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:25:26,113.113 INFO    ] No camera update needed
[2026-08-31 05:25:26,116.116 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:25:26,119.119 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:25:26,125.125 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:25:26,130.130 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:25:28,171.171 INFO    ] ================================================
[2026-08-31 05:25:28,198.198 INFO    ] Launching Daemon at Mon Aug 31 05:25:28 IST 2026
[2026-08-31 05:25:28,214.214 INFO    ] ================================================
[2026-08-31 05:25:28,786.786 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:25:28
[2026-08-31 05:25:29,376.376 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:25:29,645.645 INFO    ] Initializing speech engine...
[2026-08-31 05:25:29,655.655 INFO    ] 2026-08-31 05:25:29
[2026-08-31 05:25:29,903.903 INFO    ] 2026-08-31 05:25:29
[2026-08-31 05:25:29,938.938 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:25:30,189.189 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:25:30,198.198 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:25:30,415.415 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:25:30,458.458 INFO    ] time= 31/08/2026 05:25:30
[2026-08-31 05:25:30,464.464 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:25:30,482.482 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:25:30,607.607 INFO    ] No existing commands found in stream
[2026-08-31 05:25:35,623.623 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:25:35,626.626 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-08-31 05:25:37,863.863 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 05:25:37,866.866 INFO    ] Checking for system updates...
[2026-08-31 05:25:37,902.902 INFO    ] 200
[2026-08-31 05:25:37,905.905 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:25:37,959.959 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:25:37,962.962 INFO    ] No update needed
[2026-08-31 05:25:37,964.964 INFO    ] Checking for camera pi updates...
[2026-08-31 05:25:37,999.999 INFO    ] 200
[2026-08-31 05:25:38,002.002 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:25:38,044.044 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:25:38,127.127 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:25:38,130.130 INFO    ] No camera update needed
[2026-08-31 05:25:38,133.133 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:25:38,135.135 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:25:38,141.141 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:25:38,147.147 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:25:40,191.191 INFO    ] ================================================
[2026-08-31 05:25:40,206.206 INFO    ] Launching Daemon at Mon Aug 31 05:25:40 IST 2026
[2026-08-31 05:25:40,217.217 INFO    ] ================================================
[2026-08-31 05:25:40,806.806 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:25:40
[2026-08-31 05:25:41,398.398 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:25:41,668.668 INFO    ] Initializing speech engine...
[2026-08-31 05:25:41,677.677 INFO    ] 2026-08-31 05:25:41
[2026-08-31 05:25:41,928.928 INFO    ] 2026-08-31 05:25:41
[2026-08-31 05:25:41,963.963 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:25:42,165.165 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:25:42,223.223 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:25:42,365.365 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:25:42,416.416 INFO    ] time= 31/08/2026 05:25:42
[2026-08-31 05:25:42,459.459 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:25:42,502.502 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:25:42,600.600 INFO    ] No existing commands found in stream
[2026-08-31 05:25:47,629.629 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:25:47,632.632 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-08-31 05:25:51,221.221 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 05:25:51,224.224 INFO    ] Checking for system updates...
[2026-08-31 05:25:51,260.260 INFO    ] 200
[2026-08-31 05:25:51,262.262 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:25:51,314.314 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:25:51,316.316 INFO    ] No update needed
[2026-08-31 05:25:51,319.319 INFO    ] Checking for camera pi updates...
[2026-08-31 05:25:51,356.356 INFO    ] 200
[2026-08-31 05:25:51,359.359 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:25:51,400.400 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:25:51,487.487 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:25:51,489.489 INFO    ] No camera update needed
[2026-08-31 05:25:51,492.492 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:25:51,494.494 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:25:51,499.499 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:25:51,504.504 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:25:53,548.548 INFO    ] ================================================
[2026-08-31 05:25:53,563.563 INFO    ] Launching Daemon at Mon Aug 31 05:25:53 IST 2026
[2026-08-31 05:25:53,574.574 INFO    ] ================================================
[2026-08-31 05:25:54,221.221 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:25:54
[2026-08-31 05:25:54,886.886 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:25:55,195.195 INFO    ] Initializing speech engine...
[2026-08-31 05:25:55,200.200 INFO    ] 2026-08-31 05:25:55
[2026-08-31 05:25:55,486.486 INFO    ] 2026-08-31 05:25:55
[2026-08-31 05:25:55,596.596 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:25:55,770.770 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:25:55,776.776 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:25:55,989.989 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:25:56,015.015 INFO    ] time= 31/08/2026 05:25:55
[2026-08-31 05:25:56,036.036 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:25:56,062.062 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:25:56,193.193 INFO    ] No existing commands found in stream
[2026-08-31 05:26:01,221.221 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:26:01,226.226 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-08-31 05:26:03,345.345 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 05:26:03,348.348 INFO    ] Checking for system updates...
[2026-08-31 05:26:03,385.385 INFO    ] 200
[2026-08-31 05:26:03,388.388 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:26:03,441.441 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:26:03,443.443 INFO    ] No update needed
[2026-08-31 05:26:03,446.446 INFO    ] Checking for camera pi updates...
[2026-08-31 05:26:03,479.479 INFO    ] 200
[2026-08-31 05:26:03,482.482 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:26:03,522.522 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:26:03,605.605 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:26:03,608.608 INFO    ] No camera update needed
[2026-08-31 05:26:03,610.610 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:26:03,612.612 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:26:03,618.618 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:26:03,622.622 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:26:05,662.662 INFO    ] ================================================
[2026-08-31 05:26:05,676.676 INFO    ] Launching Daemon at Mon Aug 31 05:26:05 IST 2026
[2026-08-31 05:26:05,687.687 INFO    ] ================================================
[2026-08-31 05:26:06,285.285 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:26:06
[2026-08-31 05:26:06,880.880 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:26:07,160.160 INFO    ] Initializing speech engine...
[2026-08-31 05:26:07,169.169 INFO    ] 2026-08-31 05:26:07
[2026-08-31 05:26:07,428.428 INFO    ] 2026-08-31 05:26:07
[2026-08-31 05:26:07,482.482 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:26:07,728.728 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:26:07,734.734 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:26:07,934.934 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:26:07,970.970 INFO    ] time= 31/08/2026 05:26:07
[2026-08-31 05:26:07,976.976 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:26:07,994.994 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:26:08,109.109 INFO    ] No existing commands found in stream
[2026-08-31 05:26:13,130.130 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:26:13,132.132 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-08-31 05:26:16,381.381 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 05:26:16,384.384 INFO    ] Checking for system updates...
[2026-08-31 05:26:16,419.419 INFO    ] 200
[2026-08-31 05:26:16,422.422 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:26:16,475.475 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:26:16,477.477 INFO    ] No update needed
[2026-08-31 05:26:16,480.480 INFO    ] Checking for camera pi updates...
[2026-08-31 05:26:16,519.519 INFO    ] 200
[2026-08-31 05:26:16,522.522 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:26:16,562.562 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:26:16,657.657 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:26:16,659.659 INFO    ] No camera update needed
[2026-08-31 05:26:16,662.662 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:26:16,664.664 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:26:16,669.669 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:26:16,674.674 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:26:18,717.717 INFO    ] ================================================
[2026-08-31 05:26:18,733.733 INFO    ] Launching Daemon at Mon Aug 31 05:26:18 IST 2026
[2026-08-31 05:26:18,743.743 INFO    ] ================================================
[2026-08-31 05:26:19,314.314 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:26:19
[2026-08-31 05:26:19,958.958 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:26:20,249.249 INFO    ] Initializing speech engine...
[2026-08-31 05:26:20,257.257 INFO    ] 2026-08-31 05:26:20
[2026-08-31 05:26:20,539.539 INFO    ] 2026-08-31 05:26:20
[2026-08-31 05:26:20,583.583 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:26:20,864.864 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:26:20,870.870 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:26:21,064.064 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:26:21,072.072 INFO    ] time= 31/08/2026 05:26:21
[2026-08-31 05:26:21,093.093 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:26:21,120.120 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:26:21,235.235 INFO    ] No existing commands found in stream
[2026-08-31 05:26:26,265.265 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:26:26,269.269 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-08-31 05:26:28,524.524 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 05:26:28,526.526 INFO    ] Checking for system updates...
[2026-08-31 05:26:28,564.564 INFO    ] 200
[2026-08-31 05:26:28,567.567 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:26:28,622.622 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:26:28,625.625 INFO    ] No update needed
[2026-08-31 05:26:28,627.627 INFO    ] Checking for camera pi updates...
[2026-08-31 05:26:28,660.660 INFO    ] 200
[2026-08-31 05:26:28,663.663 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:26:28,703.703 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:26:28,802.802 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:26:28,804.804 INFO    ] No camera update needed
[2026-08-31 05:26:28,807.807 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:26:28,809.809 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:26:28,814.814 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:26:28,819.819 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:26:30,859.859 INFO    ] ================================================
[2026-08-31 05:26:30,874.874 INFO    ] Launching Daemon at Mon Aug 31 05:26:30 IST 2026
[2026-08-31 05:26:30,885.885 INFO    ] ================================================
[2026-08-31 05:26:31,507.507 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:26:31
[2026-08-31 05:26:32,191.191 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:26:32,515.515 INFO    ] Initializing speech engine...
[2026-08-31 05:26:32,529.529 INFO    ] 2026-08-31 05:26:32
[2026-08-31 05:26:32,798.798 INFO    ] 2026-08-31 05:26:32
[2026-08-31 05:26:32,853.853 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:26:33,084.084 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:26:33,090.090 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:26:33,296.296 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:26:33,352.352 INFO    ] time= 31/08/2026 05:26:33
[2026-08-31 05:26:33,359.359 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:26:33,378.378 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:26:33,513.513 INFO    ] No existing commands found in stream
[2026-08-31 05:26:38,530.530 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:26:38,533.533 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-08-31 05:26:39,206.206 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 05:26:39,209.209 INFO    ] Checking for system updates...
[2026-08-31 05:26:39,245.245 INFO    ] 200
[2026-08-31 05:26:39,248.248 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:26:39,301.301 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:26:39,304.304 INFO    ] No update needed
[2026-08-31 05:26:39,306.306 INFO    ] Checking for camera pi updates...
[2026-08-31 05:26:39,339.339 INFO    ] 200
[2026-08-31 05:26:39,341.341 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:26:39,389.389 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:26:39,465.465 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:26:39,468.468 INFO    ] No camera update needed
[2026-08-31 05:26:39,470.470 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:26:39,473.473 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:26:39,478.478 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:26:39,483.483 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:26:41,523.523 INFO    ] ================================================
[2026-08-31 05:26:41,539.539 INFO    ] Launching Daemon at Mon Aug 31 05:26:41 IST 2026
[2026-08-31 05:26:41,550.550 INFO    ] ================================================
[2026-08-31 05:26:42,170.170 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:26:42
[2026-08-31 05:26:42,809.809 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:26:43,099.099 INFO    ] Initializing speech engine...
[2026-08-31 05:26:43,111.111 INFO    ] 2026-08-31 05:26:43
[2026-08-31 05:26:43,383.383 INFO    ] 2026-08-31 05:26:43
[2026-08-31 05:26:43,439.439 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:26:43,668.668 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:26:43,678.678 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:26:43,896.896 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:26:43,939.939 INFO    ] time= 31/08/2026 05:26:43
[2026-08-31 05:26:43,945.945 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:26:43,963.963 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:26:44,090.090 INFO    ] No existing commands found in stream
[2026-08-31 05:26:49,107.107 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:26:49,110.110 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-08-31 05:26:49,603.603 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 05:26:49,606.606 INFO    ] Checking for system updates...
[2026-08-31 05:26:49,641.641 INFO    ] 200
[2026-08-31 05:26:49,644.644 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:26:49,695.695 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:26:49,698.698 INFO    ] No update needed
[2026-08-31 05:26:49,700.700 INFO    ] Checking for camera pi updates...
[2026-08-31 05:26:49,734.734 INFO    ] 200
[2026-08-31 05:26:49,736.736 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:26:49,782.782 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:26:49,866.866 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:26:49,868.868 INFO    ] No camera update needed
[2026-08-31 05:26:49,871.871 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:26:49,873.873 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:26:49,878.878 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:26:49,883.883 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:26:51,924.924 INFO    ] ================================================
[2026-08-31 05:26:51,939.939 INFO    ] Launching Daemon at Mon Aug 31 05:26:51 IST 2026
[2026-08-31 05:26:51,950.950 INFO    ] ================================================
[2026-08-31 05:26:52,583.583 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:26:52
[2026-08-31 05:26:53,188.188 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:26:53,464.464 INFO    ] Initializing speech engine...
[2026-08-31 05:26:53,471.471 INFO    ] 2026-08-31 05:26:53
[2026-08-31 05:26:53,733.733 INFO    ] 2026-08-31 05:26:53
[2026-08-31 05:26:53,787.787 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:26:54,039.039 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:26:54,044.044 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:26:54,250.250 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:26:54,281.281 INFO    ] time= 31/08/2026 05:26:54
[2026-08-31 05:26:54,299.299 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:26:54,322.322 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:26:54,436.436 INFO    ] No existing commands found in stream
[2026-08-31 05:26:59,463.463 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:26:59,466.466 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-08-31 05:27:02,271.271 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 05:27:02,275.275 INFO    ] Checking for system updates...
[2026-08-31 05:27:02,330.330 INFO    ] 200
[2026-08-31 05:27:02,334.334 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:27:02,414.414 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:27:02,417.417 INFO    ] No update needed
[2026-08-31 05:27:02,421.421 INFO    ] Checking for camera pi updates...
[2026-08-31 05:27:02,458.458 INFO    ] 200
[2026-08-31 05:27:02,461.461 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:27:02,519.519 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:27:02,598.598 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:27:02,600.600 INFO    ] No camera update needed
[2026-08-31 05:27:02,602.602 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:27:02,605.605 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:27:02,611.611 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:27:02,617.617 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:27:04,658.658 INFO    ] ================================================
[2026-08-31 05:27:04,673.673 INFO    ] Launching Daemon at Mon Aug 31 05:27:04 IST 2026
[2026-08-31 05:27:04,684.684 INFO    ] ================================================
[2026-08-31 05:27:05,252.252 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:27:05
[2026-08-31 05:27:05,841.841 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:27:06,130.130 INFO    ] Initializing speech engine...
[2026-08-31 05:27:06,139.139 INFO    ] 2026-08-31 05:27:06
[2026-08-31 05:27:06,386.386 INFO    ] 2026-08-31 05:27:06
[2026-08-31 05:27:06,421.421 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:27:06,673.673 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:27:06,682.682 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:27:06,816.816 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:27:06,871.871 INFO    ] time= 31/08/2026 05:27:06
[2026-08-31 05:27:06,925.925 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:27:06,948.948 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:27:07,094.094 INFO    ] No existing commands found in stream
[2026-08-31 05:27:12,108.108 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:27:12,110.110 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-08-31 05:27:12,903.903 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 05:27:12,906.906 INFO    ] Checking for system updates...
[2026-08-31 05:27:12,942.942 INFO    ] 200
[2026-08-31 05:27:12,944.944 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:27:12,995.995 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:27:12,998.998 INFO    ] No update needed
[2026-08-31 05:27:13,000.000 INFO    ] Checking for camera pi updates...
[2026-08-31 05:27:13,033.033 INFO    ] 200
[2026-08-31 05:27:13,036.036 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:27:13,078.078 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:27:13,148.148 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:27:13,150.150 INFO    ] No camera update needed
[2026-08-31 05:27:13,152.152 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:27:13,155.155 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:27:13,160.160 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:27:13,165.165 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:27:15,206.206 INFO    ] ================================================
[2026-08-31 05:27:15,221.221 INFO    ] Launching Daemon at Mon Aug 31 05:27:15 IST 2026
[2026-08-31 05:27:15,233.233 INFO    ] ================================================
[2026-08-31 05:27:15,835.835 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:27:15
[2026-08-31 05:27:16,507.507 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:27:16,801.801 INFO    ] Initializing speech engine...
[2026-08-31 05:27:16,808.808 INFO    ] 2026-08-31 05:27:16
[2026-08-31 05:27:17,068.068 INFO    ] 2026-08-31 05:27:17
[2026-08-31 05:27:17,103.103 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:27:17,348.348 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:27:17,357.357 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:27:17,565.565 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:27:17,614.614 INFO    ] time= 31/08/2026 05:27:17
[2026-08-31 05:27:17,621.621 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:27:17,636.636 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:27:17,767.767 INFO    ] No existing commands found in stream
[2026-08-31 05:27:22,779.779 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:27:22,782.782 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-08-31 05:27:24,884.884 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 05:27:24,887.887 INFO    ] Checking for system updates...
[2026-08-31 05:27:24,923.923 INFO    ] 200
[2026-08-31 05:27:24,925.925 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:27:24,977.977 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:27:24,980.980 INFO    ] No update needed
[2026-08-31 05:27:24,982.982 INFO    ] Checking for camera pi updates...
[2026-08-31 05:27:25,019.019 INFO    ] 200
[2026-08-31 05:27:25,022.022 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:27:25,062.062 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:27:25,148.148 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:27:25,150.150 INFO    ] No camera update needed
[2026-08-31 05:27:25,153.153 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:27:25,155.155 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:27:25,160.160 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:27:25,165.165 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:27:27,209.209 INFO    ] ================================================
[2026-08-31 05:27:27,224.224 INFO    ] Launching Daemon at Mon Aug 31 05:27:27 IST 2026
[2026-08-31 05:27:27,235.235 INFO    ] ================================================
[2026-08-31 05:27:27,800.800 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:27:27
[2026-08-31 05:27:28,381.381 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:27:28,650.650 INFO    ] Initializing speech engine...
[2026-08-31 05:27:28,660.660 INFO    ] 2026-08-31 05:27:28
[2026-08-31 05:27:28,920.920 INFO    ] 2026-08-31 05:27:28
[2026-08-31 05:27:28,974.974 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:27:29,194.194 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:27:29,203.203 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:27:29,337.337 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:27:29,412.412 INFO    ] time= 31/08/2026 05:27:29
[2026-08-31 05:27:29,463.463 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:27:29,469.469 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:27:29,614.614 INFO    ] No existing commands found in stream
[2026-08-31 05:27:34,629.629 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:27:34,632.632 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-08-31 05:27:38,857.857 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 05:27:38,860.860 INFO    ] Checking for system updates...
[2026-08-31 05:27:38,896.896 INFO    ] 200
[2026-08-31 05:27:38,898.898 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:27:38,957.957 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:27:38,959.959 INFO    ] No update needed
[2026-08-31 05:27:38,962.962 INFO    ] Checking for camera pi updates...
[2026-08-31 05:27:38,995.995 INFO    ] 200
[2026-08-31 05:27:38,997.997 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:27:39,042.042 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:27:39,141.141 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:27:39,143.143 INFO    ] No camera update needed
[2026-08-31 05:27:39,145.145 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:27:39,148.148 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:27:39,153.153 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:27:39,158.158 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:27:41,197.197 INFO    ] ================================================
[2026-08-31 05:27:41,212.212 INFO    ] Launching Daemon at Mon Aug 31 05:27:41 IST 2026
[2026-08-31 05:27:41,223.223 INFO    ] ================================================
[2026-08-31 05:27:41,792.792 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:27:41
[2026-08-31 05:27:42,374.374 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:27:42,644.644 INFO    ] Initializing speech engine...
[2026-08-31 05:27:42,651.651 INFO    ] 2026-08-31 05:27:42
[2026-08-31 05:27:42,895.895 INFO    ] 2026-08-31 05:27:42
[2026-08-31 05:27:42,930.930 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:27:43,127.127 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:27:43,184.184 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:27:43,397.397 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:27:43,446.446 INFO    ] time= 31/08/2026 05:27:43
[2026-08-31 05:27:43,452.452 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:27:43,470.470 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:27:43,575.575 INFO    ] No existing commands found in stream
[2026-08-31 05:27:48,600.600 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:27:48,603.603 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-08-31 05:27:51,503.503 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 05:27:51,506.506 INFO    ] Checking for system updates...
[2026-08-31 05:27:51,545.545 INFO    ] 200
[2026-08-31 05:27:51,547.547 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:27:51,603.603 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:27:51,605.605 INFO    ] No update needed
[2026-08-31 05:27:51,608.608 INFO    ] Checking for camera pi updates...
[2026-08-31 05:27:51,641.641 INFO    ] 200
[2026-08-31 05:27:51,644.644 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:27:51,688.688 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:27:51,781.781 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:27:51,783.783 INFO    ] No camera update needed
[2026-08-31 05:27:51,785.785 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:27:51,788.788 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:27:51,793.793 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:27:51,798.798 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:27:53,839.839 INFO    ] ================================================
[2026-08-31 05:27:53,855.855 INFO    ] Launching Daemon at Mon Aug 31 05:27:53 IST 2026
[2026-08-31 05:27:53,866.866 INFO    ] ================================================
[2026-08-31 05:27:54,442.442 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:27:54
[2026-08-31 05:27:55,024.024 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:27:55,291.291 INFO    ] Initializing speech engine...
[2026-08-31 05:27:55,300.300 INFO    ] 2026-08-31 05:27:55
[2026-08-31 05:27:55,552.552 INFO    ] 2026-08-31 05:27:55
[2026-08-31 05:27:55,611.611 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:27:55,838.838 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:27:55,844.844 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:27:56,053.053 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:27:56,099.099 INFO    ] time= 31/08/2026 05:27:56
[2026-08-31 05:27:56,105.105 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:27:56,124.124 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:27:56,233.233 INFO    ] No existing commands found in stream
[2026-08-31 05:28:01,260.260 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:28:01,263.263 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-08-31 05:28:02,690.690 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 05:28:02,694.694 INFO    ] Checking for system updates...
[2026-08-31 05:28:02,739.739 INFO    ] 200
[2026-08-31 05:28:02,742.742 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:28:02,814.814 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:28:02,817.817 INFO    ] No update needed
[2026-08-31 05:28:02,820.820 INFO    ] Checking for camera pi updates...
[2026-08-31 05:28:02,859.859 INFO    ] 200
[2026-08-31 05:28:02,862.862 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:28:02,920.920 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:28:03,041.041 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:28:03,044.044 INFO    ] No camera update needed
[2026-08-31 05:28:03,047.047 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:28:03,050.050 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:28:03,056.056 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:28:03,062.062 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:28:05,104.104 INFO    ] ================================================
[2026-08-31 05:28:05,119.119 INFO    ] Launching Daemon at Mon Aug 31 05:28:05 IST 2026
[2026-08-31 05:28:05,130.130 INFO    ] ================================================
[2026-08-31 05:28:05,803.803 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:28:05
[2026-08-31 05:28:06,489.489 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:28:06,804.804 INFO    ] Initializing speech engine...
[2026-08-31 05:28:06,812.812 INFO    ] 2026-08-31 05:28:06
[2026-08-31 05:28:07,092.092 INFO    ] 2026-08-31 05:28:07
[2026-08-31 05:28:07,128.128 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:28:07,331.331 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:28:07,345.345 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:28:07,487.487 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:28:07,516.516 INFO    ] time= 31/08/2026 05:28:07
[2026-08-31 05:28:07,524.524 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:28:07,528.528 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:28:07,607.607 INFO    ] No existing commands found in stream
[2026-08-31 05:28:12,619.619 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:28:12,622.622 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-08-31 05:28:16,973.973 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 05:28:16,976.976 INFO    ] Checking for system updates...
[2026-08-31 05:28:17,016.016 INFO    ] 200
[2026-08-31 05:28:17,019.019 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:28:17,079.079 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:28:17,081.081 INFO    ] No update needed
[2026-08-31 05:28:17,084.084 INFO    ] Checking for camera pi updates...
[2026-08-31 05:28:17,118.118 INFO    ] 200
[2026-08-31 05:28:17,120.120 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:28:17,161.161 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:28:17,254.254 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:28:17,256.256 INFO    ] No camera update needed
[2026-08-31 05:28:17,259.259 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:28:17,261.261 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:28:17,266.266 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:28:17,271.271 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:28:19,311.311 INFO    ] ================================================
[2026-08-31 05:28:19,327.327 INFO    ] Launching Daemon at Mon Aug 31 05:28:19 IST 2026
[2026-08-31 05:28:19,338.338 INFO    ] ================================================
[2026-08-31 05:28:19,914.914 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:28:19
[2026-08-31 05:28:20,496.496 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:28:20,765.765 INFO    ] Initializing speech engine...
[2026-08-31 05:28:20,774.774 INFO    ] 2026-08-31 05:28:20
[2026-08-31 05:28:21,021.021 INFO    ] 2026-08-31 05:28:21
[2026-08-31 05:28:21,056.056 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:28:21,306.306 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:28:21,315.315 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:28:21,530.530 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:28:21,574.574 INFO    ] time= 31/08/2026 05:28:21
[2026-08-31 05:28:21,580.580 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:28:21,599.599 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:28:21,729.729 INFO    ] No existing commands found in stream
[2026-08-31 05:28:26,741.741 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:28:26,743.743 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-08-31 05:28:30,622.622 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 05:28:30,625.625 INFO    ] Checking for system updates...
[2026-08-31 05:28:30,661.661 INFO    ] 200
[2026-08-31 05:28:30,663.663 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:28:30,716.716 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:28:30,718.718 INFO    ] No update needed
[2026-08-31 05:28:30,721.721 INFO    ] Checking for camera pi updates...
[2026-08-31 05:28:30,759.759 INFO    ] 200
[2026-08-31 05:28:30,762.762 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:28:30,803.803 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:28:30,879.879 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:28:30,882.882 INFO    ] No camera update needed
[2026-08-31 05:28:30,884.884 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:28:30,886.886 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:28:30,892.892 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:28:30,896.896 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:28:32,940.940 INFO    ] ================================================
[2026-08-31 05:28:32,957.957 INFO    ] Launching Daemon at Mon Aug 31 05:28:32 IST 2026
[2026-08-31 05:28:32,970.970 INFO    ] ================================================
[2026-08-31 05:28:33,568.568 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:28:33
[2026-08-31 05:28:34,155.155 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:28:34,422.422 INFO    ] Initializing speech engine...
[2026-08-31 05:28:34,431.431 INFO    ] 2026-08-31 05:28:34
[2026-08-31 05:28:34,677.677 INFO    ] 2026-08-31 05:28:34
[2026-08-31 05:28:34,712.712 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:28:34,884.884 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:28:34,896.896 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:28:35,040.040 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:28:35,044.044 INFO    ] time= 31/08/2026 05:28:35
[2026-08-31 05:28:35,052.052 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:28:35,087.087 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:28:35,216.216 INFO    ] No existing commands found in stream
[2026-08-31 05:28:40,246.246 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:28:40,250.250 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-08-31 05:28:43,624.624 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 05:28:43,626.626 INFO    ] Checking for system updates...
[2026-08-31 05:28:43,662.662 INFO    ] 200
[2026-08-31 05:28:43,664.664 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:28:43,718.718 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:28:43,721.721 INFO    ] No update needed
[2026-08-31 05:28:43,723.723 INFO    ] Checking for camera pi updates...
[2026-08-31 05:28:43,761.761 INFO    ] 200
[2026-08-31 05:28:43,763.763 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:28:43,803.803 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:28:43,885.885 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:28:43,887.887 INFO    ] No camera update needed
[2026-08-31 05:28:43,890.890 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:28:43,892.892 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:28:43,897.897 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:28:43,902.902 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:28:45,944.944 INFO    ] ================================================
[2026-08-31 05:28:45,959.959 INFO    ] Launching Daemon at Mon Aug 31 05:28:45 IST 2026
[2026-08-31 05:28:45,970.970 INFO    ] ================================================
[2026-08-31 05:28:46,642.642 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:28:46
[2026-08-31 05:28:47,334.334 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:28:47,645.645 INFO    ] Initializing speech engine...
[2026-08-31 05:28:47,656.656 INFO    ] 2026-08-31 05:28:47
[2026-08-31 05:28:47,967.967 INFO    ] 2026-08-31 05:28:47
[2026-08-31 05:28:48,053.053 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:28:48,263.263 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:28:48,272.272 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:28:48,469.469 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:28:48,489.489 INFO    ] time= 31/08/2026 05:28:48
[2026-08-31 05:28:48,518.518 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:28:48,526.526 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:28:48,627.627 INFO    ] No existing commands found in stream
[2026-08-31 05:28:53,641.641 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:28:53,644.644 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-08-31 05:28:56,729.729 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 05:28:56,732.732 INFO    ] Checking for system updates...
[2026-08-31 05:28:56,770.770 INFO    ] 200
[2026-08-31 05:28:56,773.773 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:28:56,835.835 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:28:56,838.838 INFO    ] No update needed
[2026-08-31 05:28:56,841.841 INFO    ] Checking for camera pi updates...
[2026-08-31 05:28:56,881.881 INFO    ] 200
[2026-08-31 05:28:56,884.884 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:28:56,934.934 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:28:57,033.033 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:28:57,036.036 INFO    ] No camera update needed
[2026-08-31 05:28:57,039.039 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:28:57,042.042 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:28:57,048.048 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:28:57,054.054 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:28:59,097.097 INFO    ] ================================================
[2026-08-31 05:28:59,113.113 INFO    ] Launching Daemon at Mon Aug 31 05:28:59 IST 2026
[2026-08-31 05:28:59,125.125 INFO    ] ================================================
[2026-08-31 05:28:59,811.811 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:28:59
[2026-08-31 05:29:00,501.501 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:29:00,807.807 INFO    ] Initializing speech engine...
[2026-08-31 05:29:00,822.822 INFO    ] 2026-08-31 05:29:00
[2026-08-31 05:29:01,110.110 INFO    ] 2026-08-31 05:29:01
[2026-08-31 05:29:01,220.220 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:29:01,420.420 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:29:01,438.438 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:29:01,636.636 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:29:01,655.655 INFO    ] time= 31/08/2026 05:29:01
[2026-08-31 05:29:01,684.684 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:29:01,693.693 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:29:01,797.797 INFO    ] No existing commands found in stream
[2026-08-31 05:29:06,827.827 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:29:06,830.830 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-08-31 05:29:10,966.966 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 05:29:10,969.969 INFO    ] Checking for system updates...
[2026-08-31 05:29:11,005.005 INFO    ] 200
[2026-08-31 05:29:11,008.008 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:29:11,067.067 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:29:11,069.069 INFO    ] No update needed
[2026-08-31 05:29:11,072.072 INFO    ] Checking for camera pi updates...
[2026-08-31 05:29:11,105.105 INFO    ] 200
[2026-08-31 05:29:11,108.108 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:29:11,153.153 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:29:11,251.251 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:29:11,253.253 INFO    ] No camera update needed
[2026-08-31 05:29:11,256.256 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:29:11,258.258 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:29:11,263.263 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:29:11,268.268 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:29:13,309.309 INFO    ] ================================================
[2026-08-31 05:29:13,325.325 INFO    ] Launching Daemon at Mon Aug 31 05:29:13 IST 2026
[2026-08-31 05:29:13,336.336 INFO    ] ================================================
[2026-08-31 05:29:13,949.949 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:29:13
[2026-08-31 05:29:14,592.592 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:29:14,894.894 INFO    ] Initializing speech engine...
[2026-08-31 05:29:14,904.904 INFO    ] 2026-08-31 05:29:14
[2026-08-31 05:29:15,181.181 INFO    ] 2026-08-31 05:29:15
[2026-08-31 05:29:15,236.236 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:29:15,462.462 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:29:15,479.479 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:29:15,671.671 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:29:15,725.725 INFO    ] time= 31/08/2026 05:29:15
[2026-08-31 05:29:15,743.743 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:29:15,754.754 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:29:15,884.884 INFO    ] No existing commands found in stream
[2026-08-31 05:29:20,907.907 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:29:20,910.910 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-08-31 05:29:23,367.367 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 05:29:23,370.370 INFO    ] Checking for system updates...
[2026-08-31 05:29:23,408.408 INFO    ] 200
[2026-08-31 05:29:23,410.410 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:29:23,469.469 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:29:23,471.471 INFO    ] No update needed
[2026-08-31 05:29:23,474.474 INFO    ] Checking for camera pi updates...
[2026-08-31 05:29:23,507.507 INFO    ] 200
[2026-08-31 05:29:23,510.510 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:29:23,555.555 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:29:23,636.636 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:29:23,639.639 INFO    ] No camera update needed
[2026-08-31 05:29:23,641.641 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:29:23,643.643 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:29:23,649.649 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:29:23,654.654 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:29:25,694.694 INFO    ] ================================================
[2026-08-31 05:29:25,710.710 INFO    ] Launching Daemon at Mon Aug 31 05:29:25 IST 2026
[2026-08-31 05:29:25,721.721 INFO    ] ================================================
[2026-08-31 05:29:26,378.378 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:29:26
[2026-08-31 05:29:27,062.062 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:29:27,338.338 INFO    ] Initializing speech engine...
[2026-08-31 05:29:27,348.348 INFO    ] 2026-08-31 05:29:27
[2026-08-31 05:29:27,596.596 INFO    ] 2026-08-31 05:29:27
[2026-08-31 05:29:27,632.632 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:29:27,883.883 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:29:27,892.892 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:29:28,091.091 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:29:28,146.146 INFO    ] time= 31/08/2026 05:29:28
[2026-08-31 05:29:28,156.156 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:29:28,174.174 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:29:28,299.299 INFO    ] No existing commands found in stream
[2026-08-31 05:29:33,315.315 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:29:33,319.319 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-08-31 05:29:33,988.988 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 05:29:33,991.991 INFO    ] Checking for system updates...
[2026-08-31 05:29:34,028.028 INFO    ] 200
[2026-08-31 05:29:34,031.031 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:29:34,091.091 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:29:34,093.093 INFO    ] No update needed
[2026-08-31 05:29:34,096.096 INFO    ] Checking for camera pi updates...
[2026-08-31 05:29:34,129.129 INFO    ] 200
[2026-08-31 05:29:34,132.132 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:29:34,173.173 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:29:34,360.360 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:29:34,363.363 INFO    ] No camera update needed
[2026-08-31 05:29:34,365.365 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:29:34,367.367 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:29:34,372.372 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:29:34,377.377 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:29:36,419.419 INFO    ] ================================================
[2026-08-31 05:29:36,434.434 INFO    ] Launching Daemon at Mon Aug 31 05:29:36 IST 2026
[2026-08-31 05:29:36,445.445 INFO    ] ================================================
[2026-08-31 05:29:37,010.010 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:29:37
[2026-08-31 05:29:37,592.592 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:29:37,859.859 INFO    ] Initializing speech engine...
[2026-08-31 05:29:37,868.868 INFO    ] 2026-08-31 05:29:37
[2026-08-31 05:29:38,113.113 INFO    ] 2026-08-31 05:29:38
[2026-08-31 05:29:38,149.149 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:29:38,344.344 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:29:38,402.402 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:29:38,542.542 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:29:38,607.607 INFO    ] time= 31/08/2026 05:29:38
[2026-08-31 05:29:38,661.661 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:29:38,676.676 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:29:38,815.815 INFO    ] No existing commands found in stream
[2026-08-31 05:29:43,831.831 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:29:43,834.834 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-08-31 05:29:44,646.646 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 05:29:44,649.649 INFO    ] Checking for system updates...
[2026-08-31 05:29:44,684.684 INFO    ] 200
[2026-08-31 05:29:44,687.687 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:29:44,747.747 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:29:44,749.749 INFO    ] No update needed
[2026-08-31 05:29:44,752.752 INFO    ] Checking for camera pi updates...
[2026-08-31 05:29:44,790.790 INFO    ] 200
[2026-08-31 05:29:44,792.792 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:29:44,833.833 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:29:44,914.914 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:29:44,916.916 INFO    ] No camera update needed
[2026-08-31 05:29:44,919.919 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:29:44,921.921 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:29:44,926.926 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:29:44,932.932 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:29:46,977.977 INFO    ] ================================================
[2026-08-31 05:29:46,992.992 INFO    ] Launching Daemon at Mon Aug 31 05:29:46 IST 2026
[2026-08-31 05:29:47,002.002 INFO    ] ================================================
[2026-08-31 05:29:47,567.567 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:29:47
[2026-08-31 05:29:48,147.147 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:29:48,411.411 INFO    ] Initializing speech engine...
[2026-08-31 05:29:48,426.426 INFO    ] 2026-08-31 05:29:48
[2026-08-31 05:29:48,701.701 INFO    ] 2026-08-31 05:29:48
[2026-08-31 05:29:48,739.739 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:29:48,969.969 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:29:49,030.030 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:29:49,195.195 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:29:49,238.238 INFO    ] time= 31/08/2026 05:29:49
[2026-08-31 05:29:49,277.277 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:29:49,316.316 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:29:49,410.410 INFO    ] No existing commands found in stream
[2026-08-31 05:29:54,422.422 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:29:54,424.424 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-08-31 05:29:56,984.984 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 05:29:56,987.987 INFO    ] Checking for system updates...
[2026-08-31 05:29:57,027.027 INFO    ] 200
[2026-08-31 05:29:57,029.029 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:29:57,085.085 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:29:57,087.087 INFO    ] No update needed
[2026-08-31 05:29:57,090.090 INFO    ] Checking for camera pi updates...
[2026-08-31 05:29:57,123.123 INFO    ] 200
[2026-08-31 05:29:57,125.125 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:29:57,171.171 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:29:57,251.251 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:29:57,254.254 INFO    ] No camera update needed
[2026-08-31 05:29:57,256.256 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:29:57,258.258 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:29:57,264.264 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:29:57,269.269 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:29:59,308.308 INFO    ] ================================================
[2026-08-31 05:29:59,323.323 INFO    ] Launching Daemon at Mon Aug 31 05:29:59 IST 2026
[2026-08-31 05:29:59,334.334 INFO    ] ================================================
[2026-08-31 05:29:59,902.902 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:29:59
[2026-08-31 05:30:00,485.485 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:30:00,748.748 INFO    ] Initializing speech engine...
[2026-08-31 05:30:00,768.768 INFO    ] 2026-08-31 05:30:00
[2026-08-31 05:30:01,046.046 INFO    ] 2026-08-31 05:30:01
[2026-08-31 05:30:01,132.132 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:30:01,370.370 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:30:01,374.374 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:30:01,618.618 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:30:01,622.622 INFO    ] time= 31/08/2026 05:30:01
[2026-08-31 05:30:01,626.626 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:30:01,692.692 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:30:01,757.757 INFO    ] No existing commands found in stream
[2026-08-31 05:30:06,767.767 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:30:06,770.770 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-08-31 05:30:09,656.656 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 05:30:09,659.659 INFO    ] Checking for system updates...
[2026-08-31 05:30:09,701.701 INFO    ] 200
[2026-08-31 05:30:09,703.703 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:30:09,758.758 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:30:09,760.760 INFO    ] No update needed
[2026-08-31 05:30:09,763.763 INFO    ] Checking for camera pi updates...
[2026-08-31 05:30:09,803.803 INFO    ] 200
[2026-08-31 05:30:09,806.806 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:30:09,849.849 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:30:09,938.938 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:30:09,941.941 INFO    ] No camera update needed
[2026-08-31 05:30:09,944.944 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:30:09,947.947 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:30:09,953.953 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:30:09,959.959 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:30:12,001.001 INFO    ] ================================================
[2026-08-31 05:30:12,016.016 INFO    ] Launching Daemon at Mon Aug 31 05:30:12 IST 2026
[2026-08-31 05:30:12,026.026 INFO    ] ================================================
[2026-08-31 05:30:12,604.604 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:30:12
[2026-08-31 05:30:13,189.189 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:30:13,443.443 INFO    ] Initializing speech engine...
[2026-08-31 05:30:13,451.451 INFO    ] 2026-08-31 05:30:13
[2026-08-31 05:30:13,759.759 INFO    ] 2026-08-31 05:30:13
[2026-08-31 05:30:13,796.796 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:30:14,005.005 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:30:14,020.020 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:30:14,185.185 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:30:14,195.195 INFO    ] time= 31/08/2026 05:30:14
[2026-08-31 05:30:14,200.200 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:30:14,208.208 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:30:14,285.285 INFO    ] No existing commands found in stream
[2026-08-31 05:30:19,305.305 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:30:19,308.308 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-08-31 05:30:21,780.780 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 05:30:21,782.782 INFO    ] Checking for system updates...
[2026-08-31 05:30:21,822.822 INFO    ] 200
[2026-08-31 05:30:21,825.825 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:30:21,877.877 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:30:21,880.880 INFO    ] No update needed
[2026-08-31 05:30:21,882.882 INFO    ] Checking for camera pi updates...
[2026-08-31 05:30:21,916.916 INFO    ] 200
[2026-08-31 05:30:21,918.918 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:30:21,965.965 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:30:22,047.047 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:30:22,050.050 INFO    ] No camera update needed
[2026-08-31 05:30:22,052.052 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:30:22,054.054 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:30:22,060.060 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:30:22,064.064 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:30:24,105.105 INFO    ] ================================================
[2026-08-31 05:30:24,120.120 INFO    ] Launching Daemon at Mon Aug 31 05:30:24 IST 2026
[2026-08-31 05:30:24,131.131 INFO    ] ================================================
[2026-08-31 05:30:24,696.696 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:30:24
[2026-08-31 05:30:25,279.279 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:30:25,543.543 INFO    ] Initializing speech engine...
[2026-08-31 05:30:25,556.556 INFO    ] 2026-08-31 05:30:25
[2026-08-31 05:30:25,808.808 INFO    ] 2026-08-31 05:30:25
[2026-08-31 05:30:25,868.868 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:30:26,119.119 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:30:26,124.124 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:30:26,325.325 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:30:26,359.359 INFO    ] time= 31/08/2026 05:30:26
[2026-08-31 05:30:26,374.374 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:30:26,381.381 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:30:26,486.486 INFO    ] No existing commands found in stream
[2026-08-31 05:30:31,510.510 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:30:31,513.513 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-08-31 05:30:33,937.937 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 05:30:33,939.939 INFO    ] Checking for system updates...
[2026-08-31 05:30:33,984.984 INFO    ] 200
[2026-08-31 05:30:33,986.986 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:30:34,039.039 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:30:34,042.042 INFO    ] No update needed
[2026-08-31 05:30:34,044.044 INFO    ] Checking for camera pi updates...
[2026-08-31 05:30:34,078.078 INFO    ] 200
[2026-08-31 05:30:34,081.081 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:30:34,127.127 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:30:34,212.212 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:30:34,214.214 INFO    ] No camera update needed
[2026-08-31 05:30:34,217.217 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:30:34,219.219 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:30:34,224.224 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:30:34,229.229 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:30:36,271.271 INFO    ] ================================================
[2026-08-31 05:30:36,285.285 INFO    ] Launching Daemon at Mon Aug 31 05:30:36 IST 2026
[2026-08-31 05:30:36,296.296 INFO    ] ================================================
[2026-08-31 05:30:36,869.869 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:30:36
[2026-08-31 05:30:37,451.451 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:30:37,724.724 INFO    ] Initializing speech engine...
[2026-08-31 05:30:37,730.730 INFO    ] 2026-08-31 05:30:37
[2026-08-31 05:30:37,975.975 INFO    ] 2026-08-31 05:30:37
[2026-08-31 05:30:38,011.011 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:30:38,262.262 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:30:38,271.271 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:30:38,405.405 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:30:38,464.464 INFO    ] time= 31/08/2026 05:30:38
[2026-08-31 05:30:38,513.513 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:30:38,535.535 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:30:38,679.679 INFO    ] No existing commands found in stream
[2026-08-31 05:30:43,694.694 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:30:43,697.697 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-08-31 05:30:44,695.695 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 05:30:44,697.697 INFO    ] Checking for system updates...
[2026-08-31 05:30:44,733.733 INFO    ] 200
[2026-08-31 05:30:44,736.736 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:30:44,788.788 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:30:44,791.791 INFO    ] No update needed
[2026-08-31 05:30:44,793.793 INFO    ] Checking for camera pi updates...
[2026-08-31 05:30:44,827.827 INFO    ] 200
[2026-08-31 05:30:44,830.830 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:30:44,876.876 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:30:44,960.960 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:30:44,963.963 INFO    ] No camera update needed
[2026-08-31 05:30:44,965.965 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:30:44,967.967 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:30:44,973.973 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:30:44,978.978 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:30:47,022.022 INFO    ] ================================================
[2026-08-31 05:30:47,037.037 INFO    ] Launching Daemon at Mon Aug 31 05:30:47 IST 2026
[2026-08-31 05:30:47,048.048 INFO    ] ================================================
[2026-08-31 05:30:47,714.714 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:30:47
[2026-08-31 05:30:48,437.437 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:30:48,774.774 INFO    ] Initializing speech engine...
[2026-08-31 05:30:48,786.786 INFO    ] 2026-08-31 05:30:48
[2026-08-31 05:30:49,085.085 INFO    ] 2026-08-31 05:30:49
[2026-08-31 05:30:49,142.142 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:30:49,362.362 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:30:49,383.383 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:30:49,574.574 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:30:49,624.624 INFO    ] time= 31/08/2026 05:30:49
[2026-08-31 05:30:49,642.642 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:30:49,647.647 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:30:49,785.785 INFO    ] No existing commands found in stream
[2026-08-31 05:30:54,824.824 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:30:54,827.827 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-08-31 05:30:56,346.346 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 05:30:56,349.349 INFO    ] Checking for system updates...
[2026-08-31 05:30:56,389.389 INFO    ] 200
[2026-08-31 05:30:56,391.391 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:30:56,452.452 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:30:56,455.455 INFO    ] No update needed
[2026-08-31 05:30:56,458.458 INFO    ] Checking for camera pi updates...
[2026-08-31 05:30:56,493.493 INFO    ] 200
[2026-08-31 05:30:56,496.496 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:30:56,537.537 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:30:56,637.637 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:30:56,640.640 INFO    ] No camera update needed
[2026-08-31 05:30:56,643.643 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:30:56,645.645 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:30:56,652.652 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:30:56,658.658 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:30:58,699.699 INFO    ] ================================================
[2026-08-31 05:30:58,714.714 INFO    ] Launching Daemon at Mon Aug 31 05:30:58 IST 2026
[2026-08-31 05:30:58,725.725 INFO    ] ================================================
[2026-08-31 05:30:59,291.291 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:30:59
[2026-08-31 05:30:59,884.884 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:31:00,159.159 INFO    ] Initializing speech engine...
[2026-08-31 05:31:00,168.168 INFO    ] 2026-08-31 05:31:00
[2026-08-31 05:31:00,416.416 INFO    ] 2026-08-31 05:31:00
[2026-08-31 05:31:00,483.483 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:31:00,730.730 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:31:00,738.738 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:31:00,941.941 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:31:00,972.972 INFO    ] time= 31/08/2026 05:31:00
[2026-08-31 05:31:00,988.988 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:31:00,997.997 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:31:01,123.123 INFO    ] No existing commands found in stream
[2026-08-31 05:31:06,136.136 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:31:06,139.139 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-08-31 05:31:09,944.944 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 05:31:09,947.947 INFO    ] Checking for system updates...
[2026-08-31 05:31:09,983.983 INFO    ] 200
[2026-08-31 05:31:09,986.986 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:31:10,040.040 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:31:10,043.043 INFO    ] No update needed
[2026-08-31 05:31:10,048.048 INFO    ] Checking for camera pi updates...
[2026-08-31 05:31:10,086.086 INFO    ] 200
[2026-08-31 05:31:10,089.089 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:31:10,136.136 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:31:10,218.218 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:31:10,221.221 INFO    ] No camera update needed
[2026-08-31 05:31:10,223.223 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:31:10,225.225 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:31:10,231.231 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:31:10,236.236 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:31:12,278.278 INFO    ] ================================================
[2026-08-31 05:31:12,293.293 INFO    ] Launching Daemon at Mon Aug 31 05:31:12 IST 2026
[2026-08-31 05:31:12,304.304 INFO    ] ================================================
[2026-08-31 05:31:12,871.871 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:31:12
[2026-08-31 05:31:13,454.454 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:31:13,724.724 INFO    ] Initializing speech engine...
[2026-08-31 05:31:13,730.730 INFO    ] 2026-08-31 05:31:13
[2026-08-31 05:31:14,053.053 INFO    ] 2026-08-31 05:31:13
[2026-08-31 05:31:14,076.076 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:31:14,260.260 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:31:14,274.274 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:31:14,439.439 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:31:14,449.449 INFO    ] time= 31/08/2026 05:31:14
[2026-08-31 05:31:14,454.454 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:31:14,462.462 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:31:14,538.538 INFO    ] No existing commands found in stream
[2026-08-31 05:31:19,548.548 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:31:19,550.550 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-08-31 05:31:21,889.889 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 05:31:21,892.892 INFO    ] Checking for system updates...
[2026-08-31 05:31:21,932.932 INFO    ] 200
[2026-08-31 05:31:21,935.935 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:31:21,986.986 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:31:21,989.989 INFO    ] No update needed
[2026-08-31 05:31:21,992.992 INFO    ] Checking for camera pi updates...
[2026-08-31 05:31:22,026.026 INFO    ] 200
[2026-08-31 05:31:22,028.028 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:31:22,069.069 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:31:22,162.162 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:31:22,165.165 INFO    ] No camera update needed
[2026-08-31 05:31:22,167.167 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:31:22,170.170 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:31:22,175.175 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:31:22,180.180 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:31:24,219.219 INFO    ] ================================================
[2026-08-31 05:31:24,234.234 INFO    ] Launching Daemon at Mon Aug 31 05:31:24 IST 2026
[2026-08-31 05:31:24,245.245 INFO    ] ================================================
[2026-08-31 05:31:24,915.915 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:31:24
[2026-08-31 05:31:25,604.604 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:31:25,915.915 INFO    ] Initializing speech engine...
[2026-08-31 05:31:25,929.929 INFO    ] 2026-08-31 05:31:25
[2026-08-31 05:31:26,242.242 INFO    ] 2026-08-31 05:31:26
[2026-08-31 05:31:26,331.331 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:31:26,543.543 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:31:26,553.553 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:31:26,745.745 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:31:26,764.764 INFO    ] time= 31/08/2026 05:31:26
[2026-08-31 05:31:26,773.773 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:31:26,802.802 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:31:26,908.908 INFO    ] No existing commands found in stream
[2026-08-31 05:31:31,942.942 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:31:31,946.946 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-08-31 05:31:34,540.540 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 05:31:34,543.543 INFO    ] Checking for system updates...
[2026-08-31 05:31:34,580.580 INFO    ] 200
[2026-08-31 05:31:34,582.582 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:31:34,642.642 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:31:34,645.645 INFO    ] No update needed
[2026-08-31 05:31:34,647.647 INFO    ] Checking for camera pi updates...
[2026-08-31 05:31:34,682.682 INFO    ] 200
[2026-08-31 05:31:34,684.684 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:31:34,730.730 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:31:34,816.816 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:31:34,819.819 INFO    ] No camera update needed
[2026-08-31 05:31:34,821.821 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:31:34,823.823 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:31:34,830.830 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:31:34,838.838 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:31:36,878.878 INFO    ] ================================================
[2026-08-31 05:31:36,893.893 INFO    ] Launching Daemon at Mon Aug 31 05:31:36 IST 2026
[2026-08-31 05:31:36,904.904 INFO    ] ================================================
[2026-08-31 05:31:37,571.571 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:31:37
[2026-08-31 05:31:38,257.257 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:31:38,564.564 INFO    ] Initializing speech engine...
[2026-08-31 05:31:38,572.572 INFO    ] 2026-08-31 05:31:38
[2026-08-31 05:31:38,894.894 INFO    ] 2026-08-31 05:31:38
[2026-08-31 05:31:38,978.978 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:31:39,187.187 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:31:39,196.196 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:31:39,391.391 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:31:39,398.398 INFO    ] time= 31/08/2026 05:31:39
[2026-08-31 05:31:39,417.417 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:31:39,446.446 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:31:39,577.577 INFO    ] No existing commands found in stream
[2026-08-31 05:31:44,600.600 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:31:44,603.603 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-08-31 05:31:47,620.620 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 05:31:47,623.623 INFO    ] Checking for system updates...
[2026-08-31 05:31:47,664.664 INFO    ] 200
[2026-08-31 05:31:47,666.666 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:31:47,727.727 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:31:47,729.729 INFO    ] No update needed
[2026-08-31 05:31:47,732.732 INFO    ] Checking for camera pi updates...
[2026-08-31 05:31:47,770.770 INFO    ] 200
[2026-08-31 05:31:47,773.773 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:31:47,814.814 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:31:48,007.007 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:31:48,010.010 INFO    ] No camera update needed
[2026-08-31 05:31:48,012.012 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:31:48,014.014 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:31:48,020.020 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:31:48,025.025 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:31:50,064.064 INFO    ] ================================================
[2026-08-31 05:31:50,079.079 INFO    ] Launching Daemon at Mon Aug 31 05:31:50 IST 2026
[2026-08-31 05:31:50,090.090 INFO    ] ================================================
[2026-08-31 05:31:50,677.677 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:31:50
[2026-08-31 05:31:51,361.361 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:31:51,668.668 INFO    ] Initializing speech engine...
[2026-08-31 05:31:51,682.682 INFO    ] 2026-08-31 05:31:51
[2026-08-31 05:31:51,994.994 INFO    ] 2026-08-31 05:31:51
[2026-08-31 05:31:52,081.081 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:31:52,233.233 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:31:52,244.244 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:31:52,379.379 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:31:52,439.439 INFO    ] time= 31/08/2026 05:31:52
[2026-08-31 05:31:52,489.489 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:31:52,515.515 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:31:52,662.662 INFO    ] No existing commands found in stream
[2026-08-31 05:31:57,676.676 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:31:57,679.679 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-08-31 05:32:00,351.351 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 05:32:00,353.353 INFO    ] Checking for system updates...
[2026-08-31 05:32:00,400.400 INFO    ] 200
[2026-08-31 05:32:00,403.403 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:32:00,459.459 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:32:00,462.462 INFO    ] No update needed
[2026-08-31 05:32:00,464.464 INFO    ] Checking for camera pi updates...
[2026-08-31 05:32:00,501.501 INFO    ] 200
[2026-08-31 05:32:00,503.503 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:32:00,548.548 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:32:00,638.638 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:32:00,640.640 INFO    ] No camera update needed
[2026-08-31 05:32:00,643.643 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:32:00,646.646 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:32:00,652.652 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:32:00,658.658 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:32:02,705.705 INFO    ] ================================================
[2026-08-31 05:32:02,727.727 INFO    ] Launching Daemon at Mon Aug 31 05:32:02 IST 2026
[2026-08-31 05:32:02,740.740 INFO    ] ================================================
[2026-08-31 05:32:03,493.493 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:32:03
[2026-08-31 05:32:04,099.099 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:32:04,352.352 INFO    ] Initializing speech engine...
[2026-08-31 05:32:04,358.358 INFO    ] 2026-08-31 05:32:04
[2026-08-31 05:32:04,660.660 INFO    ] 2026-08-31 05:32:04
[2026-08-31 05:32:04,698.698 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:32:04,896.896 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:32:04,911.911 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:32:05,077.077 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:32:05,086.086 INFO    ] time= 31/08/2026 05:32:05
[2026-08-31 05:32:05,093.093 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:32:05,120.120 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:32:05,250.250 INFO    ] No existing commands found in stream
[2026-08-31 05:32:10,285.285 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:32:10,288.288 INFO    ] Waiting 0.00 seconds before fallback handling...
[2026-08-31 05:32:10,775.775 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 05:32:10,777.777 INFO    ] Checking for system updates...
[2026-08-31 05:32:10,817.817 INFO    ] 200
[2026-08-31 05:32:10,820.820 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:32:10,879.879 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:32:10,881.881 INFO    ] No update needed
[2026-08-31 05:32:10,883.883 INFO    ] Checking for camera pi updates...
[2026-08-31 05:32:10,921.921 INFO    ] 200
[2026-08-31 05:32:10,923.923 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:32:10,968.968 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:32:11,068.068 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:32:11,071.071 INFO    ] No camera update needed
[2026-08-31 05:32:11,073.073 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:32:11,075.075 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:32:11,081.081 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:32:11,086.086 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:32:13,129.129 INFO    ] ================================================
[2026-08-31 05:32:13,144.144 INFO    ] Launching Daemon at Mon Aug 31 05:32:13 IST 2026
[2026-08-31 05:32:13,155.155 INFO    ] ================================================
[2026-08-31 05:32:13,725.725 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:32:13
[2026-08-31 05:32:14,317.317 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:32:14,572.572 INFO    ] Initializing speech engine...
[2026-08-31 05:32:14,580.580 INFO    ] 2026-08-31 05:32:14
[2026-08-31 05:32:14,876.876 INFO    ] 2026-08-31 05:32:14
[2026-08-31 05:32:14,910.910 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:32:15,116.116 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:32:15,132.132 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:32:15,294.294 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:32:15,303.303 INFO    ] time= 31/08/2026 05:32:15
[2026-08-31 05:32:15,307.307 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:32:15,315.315 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:32:15,390.390 INFO    ] No existing commands found in stream
[2026-08-31 05:32:20,405.405 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:32:20,408.408 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-08-31 05:32:23,110.110 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 05:32:23,113.113 INFO    ] Checking for system updates...
[2026-08-31 05:32:23,149.149 INFO    ] 200
[2026-08-31 05:32:23,151.151 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:32:23,203.203 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:32:23,206.206 INFO    ] No update needed
[2026-08-31 05:32:23,208.208 INFO    ] Checking for camera pi updates...
[2026-08-31 05:32:23,246.246 INFO    ] 200
[2026-08-31 05:32:23,248.248 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:32:23,290.290 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:32:23,373.373 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:32:23,376.376 INFO    ] No camera update needed
[2026-08-31 05:32:23,378.378 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:32:23,381.381 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:32:23,386.386 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:32:23,391.391 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:32:25,431.431 INFO    ] ================================================
[2026-08-31 05:32:25,446.446 INFO    ] Launching Daemon at Mon Aug 31 05:32:25 IST 2026
[2026-08-31 05:32:25,457.457 INFO    ] ================================================
[2026-08-31 05:32:26,038.038 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:32:26
[2026-08-31 05:32:26,625.625 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:32:26,887.887 INFO    ] Initializing speech engine...
[2026-08-31 05:32:26,913.913 INFO    ] 2026-08-31 05:32:26
[2026-08-31 05:32:27,193.193 INFO    ] 2026-08-31 05:32:27
[2026-08-31 05:32:27,229.229 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:32:27,456.456 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:32:27,479.479 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:32:27,688.688 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:32:27,694.694 INFO    ] time= 31/08/2026 05:32:27
[2026-08-31 05:32:27,739.739 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:32:27,783.783 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:32:27,861.861 INFO    ] No existing commands found in stream
[2026-08-31 05:32:32,880.880 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:32:32,883.883 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-08-31 05:32:34,412.412 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 05:32:34,415.415 INFO    ] Checking for system updates...
[2026-08-31 05:32:34,450.450 INFO    ] 200
[2026-08-31 05:32:34,452.452 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:32:34,505.505 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:32:34,507.507 INFO    ] No update needed
[2026-08-31 05:32:34,510.510 INFO    ] Checking for camera pi updates...
[2026-08-31 05:32:34,543.543 INFO    ] 200
[2026-08-31 05:32:34,546.546 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:32:34,591.591 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:32:34,676.676 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:32:34,679.679 INFO    ] No camera update needed
[2026-08-31 05:32:34,681.681 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:32:34,684.684 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:32:34,689.689 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:32:34,694.694 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:32:36,734.734 INFO    ] ================================================
[2026-08-31 05:32:36,750.750 INFO    ] Launching Daemon at Mon Aug 31 05:32:36 IST 2026
[2026-08-31 05:32:36,761.761 INFO    ] ================================================
[2026-08-31 05:32:37,326.326 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:32:37
[2026-08-31 05:32:37,910.910 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:32:38,162.162 INFO    ] Initializing speech engine...
[2026-08-31 05:32:38,185.185 INFO    ] 2026-08-31 05:32:38
[2026-08-31 05:32:38,441.441 INFO    ] 2026-08-31 05:32:38
[2026-08-31 05:32:38,476.476 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:32:38,734.734 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:32:38,743.743 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:32:38,881.881 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:32:38,946.946 INFO    ] time= 31/08/2026 05:32:38
[2026-08-31 05:32:39,000.000 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:32:39,015.015 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:32:39,170.170 INFO    ] No existing commands found in stream
[2026-08-31 05:32:44,189.189 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:32:44,191.191 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-08-31 05:32:47,187.187 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 05:32:47,189.189 INFO    ] Checking for system updates...
[2026-08-31 05:32:47,225.225 INFO    ] 200
[2026-08-31 05:32:47,228.228 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:32:47,280.280 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:32:47,282.282 INFO    ] No update needed
[2026-08-31 05:32:47,285.285 INFO    ] Checking for camera pi updates...
[2026-08-31 05:32:47,322.322 INFO    ] 200
[2026-08-31 05:32:47,325.325 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:32:47,370.370 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:32:47,449.449 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:32:47,452.452 INFO    ] No camera update needed
[2026-08-31 05:32:47,454.454 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:32:47,457.457 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:32:47,462.462 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:32:47,467.467 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:32:49,509.509 INFO    ] ================================================
[2026-08-31 05:32:49,524.524 INFO    ] Launching Daemon at Mon Aug 31 05:32:49 IST 2026
[2026-08-31 05:32:49,535.535 INFO    ] ================================================
[2026-08-31 05:32:50,137.137 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:32:50
[2026-08-31 05:32:50,818.818 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:32:51,130.130 INFO    ] Initializing speech engine...
[2026-08-31 05:32:51,141.141 INFO    ] 2026-08-31 05:32:51
[2026-08-31 05:32:51,454.454 INFO    ] 2026-08-31 05:32:51
[2026-08-31 05:32:51,530.530 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:32:51,719.719 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:32:51,744.744 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:32:51,955.955 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:32:51,974.974 INFO    ] time= 31/08/2026 05:32:51
[2026-08-31 05:32:51,984.984 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:32:52,010.010 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:32:52,115.115 INFO    ] No existing commands found in stream
[2026-08-31 05:32:57,130.130 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:32:57,133.133 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-08-31 05:33:00,128.128 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 05:33:00,131.131 INFO    ] Checking for system updates...
[2026-08-31 05:33:00,168.168 INFO    ] 200
[2026-08-31 05:33:00,171.171 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:33:00,227.227 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:33:00,231.231 INFO    ] No update needed
[2026-08-31 05:33:00,234.234 INFO    ] Checking for camera pi updates...
[2026-08-31 05:33:00,270.270 INFO    ] 200
[2026-08-31 05:33:00,273.273 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:33:00,321.321 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:33:00,420.420 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:33:00,422.422 INFO    ] No camera update needed
[2026-08-31 05:33:00,425.425 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:33:00,427.427 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:33:00,432.432 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:33:00,437.437 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:33:02,483.483 INFO    ] ================================================
[2026-08-31 05:33:02,505.505 INFO    ] Launching Daemon at Mon Aug 31 05:33:02 IST 2026
[2026-08-31 05:33:02,523.523 INFO    ] ================================================
[2026-08-31 05:33:03,195.195 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:33:03
[2026-08-31 05:33:03,832.832 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:33:04,099.099 INFO    ] Initializing speech engine...
[2026-08-31 05:33:04,108.108 INFO    ] 2026-08-31 05:33:04
[2026-08-31 05:33:04,354.354 INFO    ] 2026-08-31 05:33:04
[2026-08-31 05:33:04,389.389 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:33:04,640.640 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:33:04,649.649 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:33:04,849.849 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:33:04,906.906 INFO    ] time= 31/08/2026 05:33:04
[2026-08-31 05:33:04,913.913 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:33:04,928.928 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:33:05,040.040 INFO    ] No existing commands found in stream
[2026-08-31 05:33:10,067.067 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:33:10,070.070 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-08-31 05:33:12,654.654 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 05:33:12,657.657 INFO    ] Checking for system updates...
[2026-08-31 05:33:12,692.692 INFO    ] 200
[2026-08-31 05:33:12,694.694 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:33:12,754.754 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:33:12,756.756 INFO    ] No update needed
[2026-08-31 05:33:12,759.759 INFO    ] Checking for camera pi updates...
[2026-08-31 05:33:12,792.792 INFO    ] 200
[2026-08-31 05:33:12,794.794 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:33:12,835.835 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:33:12,918.918 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:33:12,920.920 INFO    ] No camera update needed
[2026-08-31 05:33:12,923.923 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:33:12,925.925 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:33:12,930.930 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:33:12,935.935 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:33:14,982.982 INFO    ] ================================================
[2026-08-31 05:33:15,997.997 INFO    ] Launching Daemon at Mon Aug 31 05:33:14 IST 2026
[2026-08-31 05:33:15,008.008 INFO    ] ================================================
[2026-08-31 05:33:15,659.659 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:33:15
[2026-08-31 05:33:16,332.332 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:33:16,632.632 INFO    ] Initializing speech engine...
[2026-08-31 05:33:16,641.641 INFO    ] 2026-08-31 05:33:16
[2026-08-31 05:33:16,932.932 INFO    ] 2026-08-31 05:33:16
[2026-08-31 05:33:17,040.040 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:33:17,190.190 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:33:17,199.199 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:33:17,422.422 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:33:17,459.459 INFO    ] time= 31/08/2026 05:33:17
[2026-08-31 05:33:17,465.465 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:33:17,487.487 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:33:17,610.610 INFO    ] No existing commands found in stream
[2026-08-31 05:33:22,626.626 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:33:22,629.629 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-08-31 05:33:26,247.247 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 05:33:26,250.250 INFO    ] Checking for system updates...
[2026-08-31 05:33:26,289.289 INFO    ] 200
[2026-08-31 05:33:26,291.291 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:33:26,350.350 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:33:26,353.353 INFO    ] No update needed
[2026-08-31 05:33:26,355.355 INFO    ] Checking for camera pi updates...
[2026-08-31 05:33:26,393.393 INFO    ] 200
[2026-08-31 05:33:26,395.395 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:33:26,435.435 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:33:26,518.518 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:33:26,521.521 INFO    ] No camera update needed
[2026-08-31 05:33:26,523.523 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:33:26,525.525 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:33:26,531.531 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:33:26,535.535 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:33:28,576.576 INFO    ] ================================================
[2026-08-31 05:33:28,592.592 INFO    ] Launching Daemon at Mon Aug 31 05:33:28 IST 2026
[2026-08-31 05:33:28,603.603 INFO    ] ================================================
[2026-08-31 05:33:29,172.172 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:33:29
[2026-08-31 05:33:29,753.753 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:33:30,025.025 INFO    ] Initializing speech engine...
[2026-08-31 05:33:30,030.030 INFO    ] 2026-08-31 05:33:30
[2026-08-31 05:33:30,290.290 INFO    ] 2026-08-31 05:33:30
[2026-08-31 05:33:30,344.344 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:33:30,572.572 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:33:30,576.576 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:33:30,776.776 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:33:30,830.830 INFO    ] time= 31/08/2026 05:33:30
[2026-08-31 05:33:30,837.837 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:33:30,855.855 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:33:30,969.969 INFO    ] No existing commands found in stream
[2026-08-31 05:33:35,993.993 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:33:35,996.996 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-08-31 05:33:38,846.846 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 05:33:38,849.849 INFO    ] Checking for system updates...
[2026-08-31 05:33:38,884.884 INFO    ] 200
[2026-08-31 05:33:38,887.887 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:33:38,938.938 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:33:38,941.941 INFO    ] No update needed
[2026-08-31 05:33:38,943.943 INFO    ] Checking for camera pi updates...
[2026-08-31 05:33:38,981.981 INFO    ] 200
[2026-08-31 05:33:38,983.983 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:33:39,028.028 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:33:39,105.105 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:33:39,107.107 INFO    ] No camera update needed
[2026-08-31 05:33:39,110.110 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:33:39,112.112 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:33:39,117.117 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:33:39,122.122 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:33:41,164.164 INFO    ] ================================================
[2026-08-31 05:33:41,181.181 INFO    ] Launching Daemon at Mon Aug 31 05:33:41 IST 2026
[2026-08-31 05:33:41,192.192 INFO    ] ================================================
[2026-08-31 05:33:41,842.842 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:33:41
[2026-08-31 05:33:42,514.514 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:33:42,822.822 INFO    ] Initializing speech engine...
[2026-08-31 05:33:42,834.834 INFO    ] 2026-08-31 05:33:42
[2026-08-31 05:33:43,106.106 INFO    ] 2026-08-31 05:33:43
[2026-08-31 05:33:43,158.158 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:33:43,413.413 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:33:43,418.418 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:33:43,620.620 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:33:43,656.656 INFO    ] time= 31/08/2026 05:33:43
[2026-08-31 05:33:43,675.675 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:33:43,695.695 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:33:43,812.812 INFO    ] No existing commands found in stream
[2026-08-31 05:33:48,826.826 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:33:48,830.830 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-08-31 05:33:51,446.446 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 05:33:51,449.449 INFO    ] Checking for system updates...
[2026-08-31 05:33:51,490.490 INFO    ] 200
[2026-08-31 05:33:51,493.493 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:33:51,546.546 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:33:51,548.548 INFO    ] No update needed
[2026-08-31 05:33:51,551.551 INFO    ] Checking for camera pi updates...
[2026-08-31 05:33:51,589.589 INFO    ] 200
[2026-08-31 05:33:51,593.593 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:33:51,639.639 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:33:51,822.822 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:33:51,825.825 INFO    ] No camera update needed
[2026-08-31 05:33:51,828.828 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:33:51,830.830 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:33:51,837.837 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:33:51,842.842 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:33:53,884.884 INFO    ] ================================================
[2026-08-31 05:33:53,900.900 INFO    ] Launching Daemon at Mon Aug 31 05:33:53 IST 2026
[2026-08-31 05:33:53,910.910 INFO    ] ================================================
[2026-08-31 05:33:54,564.564 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:33:54
[2026-08-31 05:33:55,240.240 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:33:55,547.547 INFO    ] Initializing speech engine...
[2026-08-31 05:33:55,560.560 INFO    ] 2026-08-31 05:33:55
[2026-08-31 05:33:55,870.870 INFO    ] 2026-08-31 05:33:55
[2026-08-31 05:33:55,958.958 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:33:56,174.174 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:33:56,185.185 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:33:56,376.376 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:33:56,395.395 INFO    ] time= 31/08/2026 05:33:56
[2026-08-31 05:33:56,420.420 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:33:56,433.433 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:33:56,541.541 INFO    ] No existing commands found in stream
[2026-08-31 05:34:01,576.576 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:34:01,579.579 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-08-31 05:34:05,084.084 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 05:34:05,088.088 INFO    ] Checking for system updates...
[2026-08-31 05:34:05,128.128 INFO    ] 200
[2026-08-31 05:34:05,131.131 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:34:05,191.191 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:34:05,194.194 INFO    ] No update needed
[2026-08-31 05:34:05,197.197 INFO    ] Checking for camera pi updates...
[2026-08-31 05:34:05,233.233 INFO    ] 200
[2026-08-31 05:34:05,236.236 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:34:05,282.282 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:34:05,370.370 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:34:05,372.372 INFO    ] No camera update needed
[2026-08-31 05:34:05,374.374 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:34:05,376.376 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:34:05,382.382 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:34:05,387.387 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:34:07,427.427 INFO    ] ================================================
[2026-08-31 05:34:07,443.443 INFO    ] Launching Daemon at Mon Aug 31 05:34:07 IST 2026
[2026-08-31 05:34:07,454.454 INFO    ] ================================================
[2026-08-31 05:34:08,021.021 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:34:08
[2026-08-31 05:34:08,606.606 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:34:08,873.873 INFO    ] Initializing speech engine...
[2026-08-31 05:34:08,883.883 INFO    ] 2026-08-31 05:34:08
[2026-08-31 05:34:09,134.134 INFO    ] 2026-08-31 05:34:09
[2026-08-31 05:34:09,192.192 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:34:09,420.420 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:34:09,425.425 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:34:09,672.672 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:34:09,683.683 INFO    ] time= 31/08/2026 05:34:09
[2026-08-31 05:34:09,702.702 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:34:09,730.730 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:34:09,830.830 INFO    ] No existing commands found in stream
[2026-08-31 05:34:14,844.844 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:34:14,847.847 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-08-31 05:34:16,977.977 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 05:34:16,980.980 INFO    ] Checking for system updates...
[2026-08-31 05:34:17,016.016 INFO    ] 200
[2026-08-31 05:34:17,019.019 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:34:17,080.080 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:34:17,083.083 INFO    ] No update needed
[2026-08-31 05:34:17,085.085 INFO    ] Checking for camera pi updates...
[2026-08-31 05:34:17,124.124 INFO    ] 200
[2026-08-31 05:34:17,126.126 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:34:17,172.172 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:34:17,259.259 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:34:17,262.262 INFO    ] No camera update needed
[2026-08-31 05:34:17,265.265 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:34:17,268.268 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:34:17,274.274 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:34:17,280.280 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:34:19,321.321 INFO    ] ================================================
[2026-08-31 05:34:19,337.337 INFO    ] Launching Daemon at Mon Aug 31 05:34:19 IST 2026
[2026-08-31 05:34:19,348.348 INFO    ] ================================================
[2026-08-31 05:34:20,003.003 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:34:20
[2026-08-31 05:34:20,679.679 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:34:20,983.983 INFO    ] Initializing speech engine...
[2026-08-31 05:34:20,992.992 INFO    ] 2026-08-31 05:34:20
[2026-08-31 05:34:21,271.271 INFO    ] 2026-08-31 05:34:21
[2026-08-31 05:34:21,328.328 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:34:21,613.613 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:34:21,617.617 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:34:21,812.812 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:34:21,819.819 INFO    ] time= 31/08/2026 05:34:21
[2026-08-31 05:34:21,840.840 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:34:21,866.866 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:34:21,969.969 INFO    ] No existing commands found in stream
[2026-08-31 05:34:26,984.984 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:34:26,988.988 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-08-31 05:34:29,584.584 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 05:34:29,586.586 INFO    ] Checking for system updates...
[2026-08-31 05:34:29,622.622 INFO    ] 200
[2026-08-31 05:34:29,624.624 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:34:29,676.676 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:34:29,679.679 INFO    ] No update needed
[2026-08-31 05:34:29,681.681 INFO    ] Checking for camera pi updates...
[2026-08-31 05:34:29,714.714 INFO    ] 200
[2026-08-31 05:34:29,717.717 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:34:29,764.764 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:34:29,845.845 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:34:29,848.848 INFO    ] No camera update needed
[2026-08-31 05:34:29,850.850 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:34:29,852.852 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:34:29,858.858 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:34:29,862.862 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:34:31,910.910 INFO    ] ================================================
[2026-08-31 05:34:31,928.928 INFO    ] Launching Daemon at Mon Aug 31 05:34:31 IST 2026
[2026-08-31 05:34:31,939.939 INFO    ] ================================================
[2026-08-31 05:34:32,543.543 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:34:32
[2026-08-31 05:34:33,155.155 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:34:33,471.471 INFO    ] Initializing speech engine...
[2026-08-31 05:34:33,479.479 INFO    ] 2026-08-31 05:34:33
[2026-08-31 05:34:33,755.755 INFO    ] 2026-08-31 05:34:33
[2026-08-31 05:34:33,810.810 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:34:34,095.095 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:34:34,104.104 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:34:34,299.299 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:34:34,306.306 INFO    ] time= 31/08/2026 05:34:34
[2026-08-31 05:34:34,326.326 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:34:34,355.355 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:34:34,482.482 INFO    ] No existing commands found in stream
[2026-08-31 05:34:39,513.513 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:34:39,516.516 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-08-31 05:34:43,546.546 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 05:34:43,549.549 INFO    ] Checking for system updates...
[2026-08-31 05:34:43,589.589 INFO    ] 200
[2026-08-31 05:34:43,592.592 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:34:43,644.644 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:34:43,646.646 INFO    ] No update needed
[2026-08-31 05:34:43,649.649 INFO    ] Checking for camera pi updates...
[2026-08-31 05:34:43,686.686 INFO    ] 200
[2026-08-31 05:34:43,688.688 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:34:43,729.729 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:34:43,855.855 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:34:43,858.858 INFO    ] No camera update needed
[2026-08-31 05:34:43,860.860 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:34:43,863.863 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:34:43,868.868 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:34:43,873.873 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:34:45,912.912 INFO    ] ================================================
[2026-08-31 05:34:45,927.927 INFO    ] Launching Daemon at Mon Aug 31 05:34:45 IST 2026
[2026-08-31 05:34:45,938.938 INFO    ] ================================================
[2026-08-31 05:34:46,524.524 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:34:46
[2026-08-31 05:34:47,114.114 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:34:47,384.384 INFO    ] Initializing speech engine...
[2026-08-31 05:34:47,395.395 INFO    ] 2026-08-31 05:34:47
[2026-08-31 05:34:47,641.641 INFO    ] 2026-08-31 05:34:47
[2026-08-31 05:34:47,675.675 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:34:47,932.932 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:34:47,937.937 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:34:48,071.071 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:34:48,115.115 INFO    ] time= 31/08/2026 05:34:48
[2026-08-31 05:34:48,169.169 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:34:48,203.203 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:34:48,348.348 INFO    ] No existing commands found in stream
[2026-08-31 05:34:53,363.363 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:34:53,366.366 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-08-31 05:34:57,654.654 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 05:34:57,657.657 INFO    ] Checking for system updates...
[2026-08-31 05:34:57,693.693 INFO    ] 200
[2026-08-31 05:34:57,696.696 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:34:57,752.752 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:34:57,754.754 INFO    ] No update needed
[2026-08-31 05:34:57,756.756 INFO    ] Checking for camera pi updates...
[2026-08-31 05:34:57,794.794 INFO    ] 200
[2026-08-31 05:34:57,796.796 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:34:57,837.837 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:34:57,906.906 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:34:57,908.908 INFO    ] No camera update needed
[2026-08-31 05:34:57,910.910 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:34:57,917.917 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:34:57,924.924 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:34:57,930.930 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:34:59,970.970 INFO    ] ================================================
[2026-08-31 05:34:59,986.986 INFO    ] Launching Daemon at Mon Aug 31 05:34:59 IST 2026
[2026-08-31 05:35:00,996.996 INFO    ] ================================================
[2026-08-31 05:35:00,626.626 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:35:00
[2026-08-31 05:35:01,297.297 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:35:01,597.597 INFO    ] Initializing speech engine...
[2026-08-31 05:35:01,606.606 INFO    ] 2026-08-31 05:35:01
[2026-08-31 05:35:02,086.086 INFO    ] 2026-08-31 05:35:02
[2026-08-31 05:35:02,114.114 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:35:02,327.327 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:35:02,332.332 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:35:02,512.512 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:35:02,555.555 INFO    ] time= 31/08/2026 05:35:02
[2026-08-31 05:35:02,564.564 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:35:02,579.579 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:35:02,640.640 INFO    ] No existing commands found in stream
[2026-08-31 05:35:07,658.658 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:35:07,661.661 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-08-31 05:35:10,221.221 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 05:35:10,223.223 INFO    ] Checking for system updates...
[2026-08-31 05:35:10,262.262 INFO    ] 200
[2026-08-31 05:35:10,265.265 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:35:10,316.316 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:35:10,319.319 INFO    ] No update needed
[2026-08-31 05:35:10,321.321 INFO    ] Checking for camera pi updates...
[2026-08-31 05:35:10,354.354 INFO    ] 200
[2026-08-31 05:35:10,357.357 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:35:10,397.397 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:35:10,495.495 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:35:10,498.498 INFO    ] No camera update needed
[2026-08-31 05:35:10,500.500 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:35:10,503.503 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:35:10,508.508 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:35:10,513.513 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:35:12,551.551 INFO    ] ================================================
[2026-08-31 05:35:12,566.566 INFO    ] Launching Daemon at Mon Aug 31 05:35:12 IST 2026
[2026-08-31 05:35:12,576.576 INFO    ] ================================================
[2026-08-31 05:35:13,155.155 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:35:13
[2026-08-31 05:35:13,749.749 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:35:14,019.019 INFO    ] Initializing speech engine...
[2026-08-31 05:35:14,034.034 INFO    ] 2026-08-31 05:35:14
[2026-08-31 05:35:14,300.300 INFO    ] 2026-08-31 05:35:14
[2026-08-31 05:35:14,335.335 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:35:14,585.585 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:35:14,594.594 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:35:14,821.821 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:35:14,853.853 INFO    ] time= 31/08/2026 05:35:14
[2026-08-31 05:35:14,869.869 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:35:14,875.875 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:35:15,001.001 INFO    ] No existing commands found in stream
[2026-08-31 05:35:20,015.015 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:35:20,018.018 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-08-31 05:35:22,771.771 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 05:35:22,774.774 INFO    ] Checking for system updates...
[2026-08-31 05:35:22,810.810 INFO    ] 200
[2026-08-31 05:35:22,813.813 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:35:22,865.865 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:35:22,867.867 INFO    ] No update needed
[2026-08-31 05:35:22,870.870 INFO    ] Checking for camera pi updates...
[2026-08-31 05:35:22,907.907 INFO    ] 200
[2026-08-31 05:35:22,909.909 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:35:22,950.950 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:35:23,049.049 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:35:23,051.051 INFO    ] No camera update needed
[2026-08-31 05:35:23,054.054 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:35:23,056.056 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:35:23,062.062 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:35:23,067.067 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:35:25,107.107 INFO    ] ================================================
[2026-08-31 05:35:25,122.122 INFO    ] Launching Daemon at Mon Aug 31 05:35:25 IST 2026
[2026-08-31 05:35:25,132.132 INFO    ] ================================================
[2026-08-31 05:35:25,698.698 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:35:25
[2026-08-31 05:35:26,284.284 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:35:26,548.548 INFO    ] Initializing speech engine...
[2026-08-31 05:35:26,561.561 INFO    ] 2026-08-31 05:35:26
[2026-08-31 05:35:26,808.808 INFO    ] 2026-08-31 05:35:26
[2026-08-31 05:35:26,842.842 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:35:27,099.099 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:35:27,102.102 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:35:27,237.237 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:35:27,302.302 INFO    ] time= 31/08/2026 05:35:27
[2026-08-31 05:35:27,356.356 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:35:27,370.370 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:35:27,497.497 INFO    ] No existing commands found in stream
[2026-08-31 05:35:32,520.520 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:35:32,523.523 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-08-31 05:35:34,648.648 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 05:35:34,650.650 INFO    ] Checking for system updates...
[2026-08-31 05:35:34,686.686 INFO    ] 200
[2026-08-31 05:35:34,689.689 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:35:34,747.747 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:35:34,749.749 INFO    ] No update needed
[2026-08-31 05:35:34,752.752 INFO    ] Checking for camera pi updates...
[2026-08-31 05:35:34,788.788 INFO    ] 200
[2026-08-31 05:35:34,790.790 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:35:34,830.830 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:35:34,904.904 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:35:34,907.907 INFO    ] No camera update needed
[2026-08-31 05:35:34,909.909 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:35:34,912.912 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:35:34,917.917 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:35:34,922.922 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:35:36,965.965 INFO    ] ================================================
[2026-08-31 05:35:36,980.980 INFO    ] Launching Daemon at Mon Aug 31 05:35:36 IST 2026
[2026-08-31 05:35:36,990.990 INFO    ] ================================================
[2026-08-31 05:35:37,574.574 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:35:37
[2026-08-31 05:35:38,173.173 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:35:38,426.426 INFO    ] Initializing speech engine...
[2026-08-31 05:35:38,448.448 INFO    ] 2026-08-31 05:35:38
[2026-08-31 05:35:38,702.702 INFO    ] 2026-08-31 05:35:38
[2026-08-31 05:35:38,739.739 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:35:38,992.992 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:35:39,001.001 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:35:39,217.217 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:35:39,258.258 INFO    ] time= 31/08/2026 05:35:39
[2026-08-31 05:35:39,276.276 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:35:39,284.284 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:35:39,408.408 INFO    ] No existing commands found in stream
[2026-08-31 05:35:44,423.423 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:35:44,425.425 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-08-31 05:35:48,106.106 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 05:35:48,109.109 INFO    ] Checking for system updates...
[2026-08-31 05:35:48,144.144 INFO    ] 200
[2026-08-31 05:35:48,147.147 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:35:48,205.205 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:35:48,207.207 INFO    ] No update needed
[2026-08-31 05:35:48,210.210 INFO    ] Checking for camera pi updates...
[2026-08-31 05:35:48,243.243 INFO    ] 200
[2026-08-31 05:35:48,246.246 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:35:48,290.290 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:35:48,372.372 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:35:48,374.374 INFO    ] No camera update needed
[2026-08-31 05:35:48,377.377 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:35:48,379.379 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:35:48,384.384 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:35:48,389.389 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:35:50,430.430 INFO    ] ================================================
[2026-08-31 05:35:50,445.445 INFO    ] Launching Daemon at Mon Aug 31 05:35:50 IST 2026
[2026-08-31 05:35:50,456.456 INFO    ] ================================================
[2026-08-31 05:35:51,070.070 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:35:51
[2026-08-31 05:35:51,713.713 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:35:51,984.984 INFO    ] Initializing speech engine...
[2026-08-31 05:35:51,991.991 INFO    ] 2026-08-31 05:35:51
[2026-08-31 05:35:52,292.292 INFO    ] 2026-08-31 05:35:52
[2026-08-31 05:35:52,333.333 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:35:52,502.502 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:35:52,510.510 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:35:52,662.662 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:35:52,672.672 INFO    ] time= 31/08/2026 05:35:52
[2026-08-31 05:35:52,678.678 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:35:52,701.701 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:35:52,761.761 INFO    ] No existing commands found in stream
[2026-08-31 05:35:57,798.798 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:35:57,801.801 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-08-31 05:36:01,693.693 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 05:36:01,695.695 INFO    ] Checking for system updates...
[2026-08-31 05:36:01,731.731 INFO    ] 200
[2026-08-31 05:36:01,733.733 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:36:01,792.792 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:36:01,794.794 INFO    ] No update needed
[2026-08-31 05:36:01,796.796 INFO    ] Checking for camera pi updates...
[2026-08-31 05:36:01,833.833 INFO    ] 200
[2026-08-31 05:36:01,836.836 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:36:01,900.900 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:36:01,964.964 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:36:01,974.974 INFO    ] No camera update needed
[2026-08-31 05:36:01,979.979 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:36:01,983.983 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:36:01,994.994 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:36:02,002.002 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:36:04,046.046 INFO    ] ================================================
[2026-08-31 05:36:04,061.061 INFO    ] Launching Daemon at Mon Aug 31 05:36:04 IST 2026
[2026-08-31 05:36:04,072.072 INFO    ] ================================================
[2026-08-31 05:36:04,653.653 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:36:04
[2026-08-31 05:36:05,252.252 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:36:05,526.526 INFO    ] Initializing speech engine...
[2026-08-31 05:36:05,534.534 INFO    ] 2026-08-31 05:36:05
[2026-08-31 05:36:05,795.795 INFO    ] 2026-08-31 05:36:05
[2026-08-31 05:36:05,850.850 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:36:06,074.074 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:36:06,079.079 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:36:06,296.296 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:36:06,337.337 INFO    ] time= 31/08/2026 05:36:06
[2026-08-31 05:36:06,343.343 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:36:06,361.361 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:36:06,491.491 INFO    ] No existing commands found in stream
[2026-08-31 05:36:11,503.503 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:36:11,506.506 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-08-31 05:36:13,735.735 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 05:36:13,738.738 INFO    ] Checking for system updates...
[2026-08-31 05:36:13,774.774 INFO    ] 200
[2026-08-31 05:36:13,777.777 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:36:13,836.836 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:36:13,840.840 INFO    ] No update needed
[2026-08-31 05:36:13,843.843 INFO    ] Checking for camera pi updates...
[2026-08-31 05:36:13,878.878 INFO    ] 200
[2026-08-31 05:36:13,881.881 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:36:13,925.925 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:36:13,999.999 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:36:14,002.002 INFO    ] No camera update needed
[2026-08-31 05:36:14,004.004 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:36:14,006.006 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:36:14,012.012 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:36:14,017.017 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:36:16,058.058 INFO    ] ================================================
[2026-08-31 05:36:16,073.073 INFO    ] Launching Daemon at Mon Aug 31 05:36:16 IST 2026
[2026-08-31 05:36:16,083.083 INFO    ] ================================================
[2026-08-31 05:36:16,727.727 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:36:16
[2026-08-31 05:36:17,389.389 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:36:17,691.691 INFO    ] Initializing speech engine...
[2026-08-31 05:36:17,704.704 INFO    ] 2026-08-31 05:36:17
[2026-08-31 05:36:17,975.975 INFO    ] 2026-08-31 05:36:17
[2026-08-31 05:36:18,030.030 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:36:18,256.256 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:36:18,265.265 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:36:18,420.420 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:36:18,481.481 INFO    ] time= 31/08/2026 05:36:18
[2026-08-31 05:36:18,534.534 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:36:18,541.541 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:36:18,691.691 INFO    ] No existing commands found in stream
[2026-08-31 05:36:23,710.710 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:36:23,713.713 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-08-31 05:36:24,928.928 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 05:36:24,931.931 INFO    ] Checking for system updates...
[2026-08-31 05:36:24,970.970 INFO    ] 200
[2026-08-31 05:36:24,973.973 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:36:25,025.025 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:36:25,027.027 INFO    ] No update needed
[2026-08-31 05:36:25,030.030 INFO    ] Checking for camera pi updates...
[2026-08-31 05:36:25,068.068 INFO    ] 200
[2026-08-31 05:36:25,071.071 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:36:25,115.115 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:36:25,199.199 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:36:25,202.202 INFO    ] No camera update needed
[2026-08-31 05:36:25,204.204 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:36:25,206.206 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:36:25,218.218 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:36:25,223.223 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:36:27,265.265 INFO    ] ================================================
[2026-08-31 05:36:27,280.280 INFO    ] Launching Daemon at Mon Aug 31 05:36:27 IST 2026
[2026-08-31 05:36:27,291.291 INFO    ] ================================================
[2026-08-31 05:36:27,868.868 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:36:27
[2026-08-31 05:36:28,463.463 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:36:28,735.735 INFO    ] Initializing speech engine...
[2026-08-31 05:36:28,743.743 INFO    ] 2026-08-31 05:36:28
[2026-08-31 05:36:28,998.998 INFO    ] 2026-08-31 05:36:28
[2026-08-31 05:36:29,057.057 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:36:29,284.284 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:36:29,289.289 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:36:29,419.419 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:36:29,471.471 INFO    ] time= 31/08/2026 05:36:29
[2026-08-31 05:36:29,521.521 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:36:29,554.554 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:36:29,621.621 INFO    ] No existing commands found in stream
[2026-08-31 05:36:34,658.658 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:36:34,661.661 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-08-31 05:36:35,268.268 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 05:36:35,271.271 INFO    ] Checking for system updates...
[2026-08-31 05:36:35,307.307 INFO    ] 200
[2026-08-31 05:36:35,309.309 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:36:35,363.363 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:36:35,365.365 INFO    ] No update needed
[2026-08-31 05:36:35,368.368 INFO    ] Checking for camera pi updates...
[2026-08-31 05:36:35,405.405 INFO    ] 200
[2026-08-31 05:36:35,408.408 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:36:35,453.453 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:36:35,528.528 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:36:35,531.531 INFO    ] No camera update needed
[2026-08-31 05:36:35,533.533 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:36:35,536.536 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:36:35,541.541 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:36:35,546.546 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:36:37,588.588 INFO    ] ================================================
[2026-08-31 05:36:37,604.604 INFO    ] Launching Daemon at Mon Aug 31 05:36:37 IST 2026
[2026-08-31 05:36:37,615.615 INFO    ] ================================================
[2026-08-31 05:36:38,261.261 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:36:38
[2026-08-31 05:36:38,859.859 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:36:39,130.130 INFO    ] Initializing speech engine...
[2026-08-31 05:36:39,140.140 INFO    ] 2026-08-31 05:36:39
[2026-08-31 05:36:39,388.388 INFO    ] 2026-08-31 05:36:39
[2026-08-31 05:36:39,423.423 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:36:39,675.675 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:36:39,684.684 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:36:39,891.891 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:36:39,942.942 INFO    ] time= 31/08/2026 05:36:39
[2026-08-31 05:36:39,949.949 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:36:39,966.966 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:36:40,092.092 INFO    ] No existing commands found in stream
[2026-08-31 05:36:45,109.109 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:36:45,112.112 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-08-31 05:36:46,705.705 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 05:36:46,708.708 INFO    ] Checking for system updates...
[2026-08-31 05:36:46,743.743 INFO    ] 200
[2026-08-31 05:36:46,745.745 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:36:46,798.798 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:36:46,800.800 INFO    ] No update needed
[2026-08-31 05:36:46,802.802 INFO    ] Checking for camera pi updates...
[2026-08-31 05:36:46,839.839 INFO    ] 200
[2026-08-31 05:36:46,842.842 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:36:46,883.883 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:36:46,985.985 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:36:46,988.988 INFO    ] No camera update needed
[2026-08-31 05:36:46,990.990 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:36:46,992.992 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:36:46,998.998 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:36:47,003.003 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:36:49,044.044 INFO    ] ================================================
[2026-08-31 05:36:49,059.059 INFO    ] Launching Daemon at Mon Aug 31 05:36:49 IST 2026
[2026-08-31 05:36:49,070.070 INFO    ] ================================================
[2026-08-31 05:36:49,643.643 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:36:49
[2026-08-31 05:36:50,223.223 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:36:50,479.479 INFO    ] Initializing speech engine...
[2026-08-31 05:36:50,493.493 INFO    ] 2026-08-31 05:36:50
[2026-08-31 05:36:50,776.776 INFO    ] 2026-08-31 05:36:50
[2026-08-31 05:36:50,813.813 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:36:51,008.008 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:36:51,022.022 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:36:51,183.183 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:36:51,191.191 INFO    ] time= 31/08/2026 05:36:51
[2026-08-31 05:36:51,198.198 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:36:51,204.204 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:36:51,329.329 INFO    ] No existing commands found in stream
[2026-08-31 05:36:56,360.360 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:36:56,372.372 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-08-31 05:37:00,509.509 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 05:37:00,511.511 INFO    ] Checking for system updates...
[2026-08-31 05:37:00,552.552 INFO    ] 200
[2026-08-31 05:37:00,554.554 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:37:00,617.617 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:37:00,620.620 INFO    ] No update needed
[2026-08-31 05:37:00,623.623 INFO    ] Checking for camera pi updates...
[2026-08-31 05:37:00,661.661 INFO    ] 200
[2026-08-31 05:37:00,664.664 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:37:00,704.704 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:37:00,772.772 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:37:00,775.775 INFO    ] No camera update needed
[2026-08-31 05:37:00,777.777 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:37:00,780.780 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:37:00,786.786 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:37:00,792.792 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:37:02,843.843 INFO    ] ================================================
[2026-08-31 05:37:02,865.865 INFO    ] Launching Daemon at Mon Aug 31 05:37:02 IST 2026
[2026-08-31 05:37:02,878.878 INFO    ] ================================================
[2026-08-31 05:37:03,534.534 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:37:03
[2026-08-31 05:37:04,124.124 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:37:04,391.391 INFO    ] Initializing speech engine...
[2026-08-31 05:37:04,400.400 INFO    ] 2026-08-31 05:37:04
[2026-08-31 05:37:04,660.660 INFO    ] 2026-08-31 05:37:04
[2026-08-31 05:37:04,712.712 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:37:04,853.853 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:37:04,876.876 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:37:05,071.071 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:37:05,098.098 INFO    ] time= 31/08/2026 05:37:05
[2026-08-31 05:37:05,157.157 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:37:05,204.204 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:37:05,348.348 INFO    ] No existing commands found in stream
[2026-08-31 05:37:10,363.363 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:37:10,366.366 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-08-31 05:37:11,016.016 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 05:37:11,019.019 INFO    ] Checking for system updates...
[2026-08-31 05:37:11,055.055 INFO    ] 200
[2026-08-31 05:37:11,058.058 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:37:11,119.119 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:37:11,121.121 INFO    ] No update needed
[2026-08-31 05:37:11,124.124 INFO    ] Checking for camera pi updates...
[2026-08-31 05:37:11,163.163 INFO    ] 200
[2026-08-31 05:37:11,165.165 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:37:11,208.208 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:37:11,290.290 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:37:11,293.293 INFO    ] No camera update needed
[2026-08-31 05:37:11,296.296 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:37:11,299.299 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:37:11,305.305 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:37:11,311.311 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:37:13,354.354 INFO    ] ================================================
[2026-08-31 05:37:13,370.370 INFO    ] Launching Daemon at Mon Aug 31 05:37:13 IST 2026
[2026-08-31 05:37:13,382.382 INFO    ] ================================================
[2026-08-31 05:37:14,038.038 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:37:14
[2026-08-31 05:37:14,716.716 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:37:15,018.018 INFO    ] Initializing speech engine...
[2026-08-31 05:37:15,026.026 INFO    ] 2026-08-31 05:37:15
[2026-08-31 05:37:15,319.319 INFO    ] 2026-08-31 05:37:15
[2026-08-31 05:37:15,357.357 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:37:15,642.642 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:37:15,649.649 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:37:15,827.827 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:37:15,849.849 INFO    ] time= 31/08/2026 05:37:15
[2026-08-31 05:37:15,869.869 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:37:15,896.896 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:37:16,004.004 INFO    ] No existing commands found in stream
[2026-08-31 05:37:21,038.038 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:37:21,042.042 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-08-31 05:37:22,325.325 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 05:37:22,329.329 INFO    ] Checking for system updates...
[2026-08-31 05:37:22,366.366 INFO    ] 200
[2026-08-31 05:37:22,369.369 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:37:22,430.430 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:37:22,433.433 INFO    ] No update needed
[2026-08-31 05:37:22,436.436 INFO    ] Checking for camera pi updates...
[2026-08-31 05:37:22,470.470 INFO    ] 200
[2026-08-31 05:37:22,473.473 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:37:22,519.519 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:37:22,595.595 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:37:22,598.598 INFO    ] No camera update needed
[2026-08-31 05:37:22,601.601 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:37:22,603.603 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:37:22,610.610 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:37:22,615.615 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:37:24,659.659 INFO    ] ================================================
[2026-08-31 05:37:24,674.674 INFO    ] Launching Daemon at Mon Aug 31 05:37:24 IST 2026
[2026-08-31 05:37:24,685.685 INFO    ] ================================================
[2026-08-31 05:37:25,249.249 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:37:25
[2026-08-31 05:37:25,834.834 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:37:26,087.087 INFO    ] Initializing speech engine...
[2026-08-31 05:37:26,096.096 INFO    ] 2026-08-31 05:37:26
[2026-08-31 05:37:26,390.390 INFO    ] 2026-08-31 05:37:26
[2026-08-31 05:37:26,426.426 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:37:26,655.655 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:37:26,684.684 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:37:26,813.813 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:37:26,818.818 INFO    ] time= 31/08/2026 05:37:26
[2026-08-31 05:37:26,824.824 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:37:26,830.830 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:37:26,972.972 INFO    ] No existing commands found in stream
[2026-08-31 05:37:32,000.000 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:37:32,003.003 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-08-31 05:37:33,292.292 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 05:37:33,295.295 INFO    ] Checking for system updates...
[2026-08-31 05:37:33,332.332 INFO    ] 200
[2026-08-31 05:37:33,335.335 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:37:33,388.388 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:37:33,391.391 INFO    ] No update needed
[2026-08-31 05:37:33,394.394 INFO    ] Checking for camera pi updates...
[2026-08-31 05:37:33,429.429 INFO    ] 200
[2026-08-31 05:37:33,432.432 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:37:33,479.479 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:37:33,570.570 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:37:33,572.572 INFO    ] No camera update needed
[2026-08-31 05:37:33,575.575 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:37:33,578.578 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:37:33,584.584 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:37:33,590.590 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:37:35,632.632 INFO    ] ================================================
[2026-08-31 05:37:35,647.647 INFO    ] Launching Daemon at Mon Aug 31 05:37:35 IST 2026
[2026-08-31 05:37:35,658.658 INFO    ] ================================================
[2026-08-31 05:37:36,241.241 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:37:36
[2026-08-31 05:37:36,865.865 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:37:37,182.182 INFO    ] Initializing speech engine...
[2026-08-31 05:37:37,190.190 INFO    ] 2026-08-31 05:37:37
[2026-08-31 05:37:37,497.497 INFO    ] 2026-08-31 05:37:37
[2026-08-31 05:37:37,584.584 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:37:37,761.761 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:37:37,791.791 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:37:37,977.977 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:37:38,002.002 INFO    ] time= 31/08/2026 05:37:37
[2026-08-31 05:37:38,020.020 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:37:38,029.029 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:37:38,152.152 INFO    ] No existing commands found in stream
[2026-08-31 05:37:43,169.169 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:37:43,172.172 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-08-31 05:37:47,375.375 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 05:37:47,378.378 INFO    ] Checking for system updates...
[2026-08-31 05:37:47,416.416 INFO    ] 200
[2026-08-31 05:37:47,419.419 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:37:47,472.472 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:37:47,475.475 INFO    ] No update needed
[2026-08-31 05:37:47,478.478 INFO    ] Checking for camera pi updates...
[2026-08-31 05:37:47,513.513 INFO    ] 200
[2026-08-31 05:37:47,515.515 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:37:47,556.556 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:37:47,649.649 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:37:47,652.652 INFO    ] No camera update needed
[2026-08-31 05:37:47,654.654 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:37:47,657.657 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:37:47,663.663 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:37:47,669.669 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:37:49,709.709 INFO    ] ================================================
[2026-08-31 05:37:49,724.724 INFO    ] Launching Daemon at Mon Aug 31 05:37:49 IST 2026
[2026-08-31 05:37:49,735.735 INFO    ] ================================================
[2026-08-31 05:37:50,391.391 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:37:50
[2026-08-31 05:37:51,067.067 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:37:51,373.373 INFO    ] Initializing speech engine...
[2026-08-31 05:37:51,386.386 INFO    ] 2026-08-31 05:37:51
[2026-08-31 05:37:51,702.702 INFO    ] 2026-08-31 05:37:51
[2026-08-31 05:37:51,784.784 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:37:51,999.999 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:37:52,008.008 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:37:52,197.197 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:37:52,204.204 INFO    ] time= 31/08/2026 05:37:52
[2026-08-31 05:37:52,227.227 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:37:52,256.256 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:37:52,357.357 INFO    ] No existing commands found in stream
[2026-08-31 05:37:57,380.380 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:37:57,384.384 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-08-31 05:38:00,690.690 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 05:38:00,693.693 INFO    ] Checking for system updates...
[2026-08-31 05:38:00,729.729 INFO    ] 200
[2026-08-31 05:38:00,732.732 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:38:00,787.787 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:38:00,790.790 INFO    ] No update needed
[2026-08-31 05:38:00,793.793 INFO    ] Checking for camera pi updates...
[2026-08-31 05:38:00,827.827 INFO    ] 200
[2026-08-31 05:38:00,830.830 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:38:00,871.871 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:38:00,977.977 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:38:00,980.980 INFO    ] No camera update needed
[2026-08-31 05:38:00,983.983 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:38:00,985.985 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:38:00,992.992 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:38:00,998.998 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:38:03,061.061 INFO    ] ================================================
[2026-08-31 05:38:03,080.080 INFO    ] Launching Daemon at Mon Aug 31 05:38:03 IST 2026
[2026-08-31 05:38:03,096.096 INFO    ] ================================================
[2026-08-31 05:38:03,789.789 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:38:03
[2026-08-31 05:38:04,462.462 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:38:04,763.763 INFO    ] Initializing speech engine...
[2026-08-31 05:38:04,777.777 INFO    ] 2026-08-31 05:38:04
[2026-08-31 05:38:05,088.088 INFO    ] 2026-08-31 05:38:05
[2026-08-31 05:38:05,172.172 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:38:05,386.386 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:38:05,396.396 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:38:05,585.585 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:38:05,593.593 INFO    ] time= 31/08/2026 05:38:05
[2026-08-31 05:38:05,612.612 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:38:05,634.634 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:38:05,747.747 INFO    ] No existing commands found in stream
[2026-08-31 05:38:10,768.768 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:38:10,772.772 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-08-31 05:38:13,422.422 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 05:38:13,425.425 INFO    ] Checking for system updates...
[2026-08-31 05:38:13,462.462 INFO    ] 200
[2026-08-31 05:38:13,465.465 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:38:13,519.519 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:38:13,522.522 INFO    ] No update needed
[2026-08-31 05:38:13,524.524 INFO    ] Checking for camera pi updates...
[2026-08-31 05:38:13,559.559 INFO    ] 200
[2026-08-31 05:38:13,562.562 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:38:13,608.608 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:38:13,801.801 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:38:13,804.804 INFO    ] No camera update needed
[2026-08-31 05:38:13,806.806 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:38:13,809.809 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:38:13,815.815 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:38:13,821.821 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:38:15,862.862 INFO    ] ================================================
[2026-08-31 05:38:15,877.877 INFO    ] Launching Daemon at Mon Aug 31 05:38:15 IST 2026
[2026-08-31 05:38:15,888.888 INFO    ] ================================================
[2026-08-31 05:38:16,453.453 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:38:16
[2026-08-31 05:38:17,035.035 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:38:17,293.293 INFO    ] Initializing speech engine...
[2026-08-31 05:38:17,313.313 INFO    ] 2026-08-31 05:38:17
[2026-08-31 05:38:17,565.565 INFO    ] 2026-08-31 05:38:17
[2026-08-31 05:38:17,601.601 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:38:17,801.801 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:38:17,852.852 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:38:18,001.001 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:38:18,023.023 INFO    ] time= 31/08/2026 05:38:18
[2026-08-31 05:38:18,083.083 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:38:18,136.136 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:38:18,291.291 INFO    ] No existing commands found in stream
[2026-08-31 05:38:23,302.302 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:38:23,304.304 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-08-31 05:38:27,705.705 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 05:38:27,707.707 INFO    ] Checking for system updates...
[2026-08-31 05:38:27,742.742 INFO    ] 200
[2026-08-31 05:38:27,745.745 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:38:27,800.800 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:38:27,802.802 INFO    ] No update needed
[2026-08-31 05:38:27,805.805 INFO    ] Checking for camera pi updates...
[2026-08-31 05:38:27,838.838 INFO    ] 200
[2026-08-31 05:38:27,840.840 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:38:27,881.881 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:38:27,972.972 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:38:27,974.974 INFO    ] No camera update needed
[2026-08-31 05:38:27,976.976 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:38:27,979.979 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:38:27,984.984 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:38:27,989.989 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:38:30,030.030 INFO    ] ================================================
[2026-08-31 05:38:30,045.045 INFO    ] Launching Daemon at Mon Aug 31 05:38:30 IST 2026
[2026-08-31 05:38:30,057.057 INFO    ] ================================================
[2026-08-31 05:38:30,711.711 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:38:30
[2026-08-31 05:38:31,384.384 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:38:31,700.700 INFO    ] Initializing speech engine...
[2026-08-31 05:38:31,707.707 INFO    ] 2026-08-31 05:38:31
[2026-08-31 05:38:32,023.023 INFO    ] 2026-08-31 05:38:31
[2026-08-31 05:38:32,121.121 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:38:32,323.323 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:38:32,328.328 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:38:32,555.555 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:38:32,586.586 INFO    ] time= 31/08/2026 05:38:32
[2026-08-31 05:38:32,605.605 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:38:32,614.614 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:38:32,750.750 INFO    ] No existing commands found in stream
[2026-08-31 05:38:37,766.766 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:38:37,769.769 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-08-31 05:38:39,022.022 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 05:38:39,025.025 INFO    ] Checking for system updates...
[2026-08-31 05:38:39,065.065 INFO    ] 200
[2026-08-31 05:38:39,068.068 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:38:39,123.123 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:38:39,125.125 INFO    ] No update needed
[2026-08-31 05:38:39,128.128 INFO    ] Checking for camera pi updates...
[2026-08-31 05:38:39,164.164 INFO    ] 200
[2026-08-31 05:38:39,167.167 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:38:39,209.209 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:38:39,293.293 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:38:39,296.296 INFO    ] No camera update needed
[2026-08-31 05:38:39,299.299 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:38:39,301.301 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:38:39,307.307 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:38:39,313.313 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:38:41,353.353 INFO    ] ================================================
[2026-08-31 05:38:41,369.369 INFO    ] Launching Daemon at Mon Aug 31 05:38:41 IST 2026
[2026-08-31 05:38:41,379.379 INFO    ] ================================================
[2026-08-31 05:38:41,963.963 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:38:41
[2026-08-31 05:38:42,562.562 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:38:42,835.835 INFO    ] Initializing speech engine...
[2026-08-31 05:38:42,844.844 INFO    ] 2026-08-31 05:38:42
[2026-08-31 05:38:43,105.105 INFO    ] 2026-08-31 05:38:43
[2026-08-31 05:38:43,160.160 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:38:43,406.406 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:38:43,411.411 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:38:43,605.605 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:38:43,644.644 INFO    ] time= 31/08/2026 05:38:43
[2026-08-31 05:38:43,661.661 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:38:43,670.670 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:38:43,797.797 INFO    ] No existing commands found in stream
[2026-08-31 05:38:48,811.811 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:38:48,814.814 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-08-31 05:38:52,584.584 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 05:38:52,586.586 INFO    ] Checking for system updates...
[2026-08-31 05:38:52,623.623 INFO    ] 200
[2026-08-31 05:38:52,625.625 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:38:52,682.682 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:38:52,685.685 INFO    ] No update needed
[2026-08-31 05:38:52,687.687 INFO    ] Checking for camera pi updates...
[2026-08-31 05:38:52,720.720 INFO    ] 200
[2026-08-31 05:38:52,723.723 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:38:52,763.763 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:38:52,843.843 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:38:52,846.846 INFO    ] No camera update needed
[2026-08-31 05:38:52,848.848 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:38:52,851.851 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:38:52,856.856 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:38:52,861.861 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:38:54,904.904 INFO    ] ================================================
[2026-08-31 05:38:54,920.920 INFO    ] Launching Daemon at Mon Aug 31 05:38:54 IST 2026
[2026-08-31 05:38:54,930.930 INFO    ] ================================================
[2026-08-31 05:38:55,510.510 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:38:55
[2026-08-31 05:38:56,167.167 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:38:56,470.470 INFO    ] Initializing speech engine...
[2026-08-31 05:38:56,481.481 INFO    ] 2026-08-31 05:38:56
[2026-08-31 05:38:56,763.763 INFO    ] 2026-08-31 05:38:56
[2026-08-31 05:38:56,802.802 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:38:57,049.049 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:38:57,055.055 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:38:57,255.255 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:38:57,292.292 INFO    ] time= 31/08/2026 05:38:57
[2026-08-31 05:38:57,307.307 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:38:57,317.317 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:38:57,440.440 INFO    ] No existing commands found in stream
[2026-08-31 05:39:02,455.455 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:39:02,459.459 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-08-31 05:39:03,585.585 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 05:39:03,588.588 INFO    ] Checking for system updates...
[2026-08-31 05:39:03,623.623 INFO    ] 200
[2026-08-31 05:39:03,625.625 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:39:03,676.676 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:39:03,679.679 INFO    ] No update needed
[2026-08-31 05:39:03,681.681 INFO    ] Checking for camera pi updates...
[2026-08-31 05:39:03,715.715 INFO    ] 200
[2026-08-31 05:39:03,717.717 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:39:03,758.758 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:39:03,841.841 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:39:03,844.844 INFO    ] No camera update needed
[2026-08-31 05:39:03,846.846 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:39:03,848.848 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:39:03,854.854 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:39:03,859.859 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:39:05,899.899 INFO    ] ================================================
[2026-08-31 05:39:05,914.914 INFO    ] Launching Daemon at Mon Aug 31 05:39:05 IST 2026
[2026-08-31 05:39:05,925.925 INFO    ] ================================================
[2026-08-31 05:39:06,513.513 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:39:06
[2026-08-31 05:39:07,113.113 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:39:07,362.362 INFO    ] Initializing speech engine...
[2026-08-31 05:39:07,385.385 INFO    ] 2026-08-31 05:39:07
[2026-08-31 05:39:07,641.641 INFO    ] 2026-08-31 05:39:07
[2026-08-31 05:39:07,675.675 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:39:07,851.851 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:39:07,862.862 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:39:08,011.011 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:39:08,016.016 INFO    ] time= 31/08/2026 05:39:08
[2026-08-31 05:39:08,022.022 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:39:08,068.068 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:39:08,211.211 INFO    ] No existing commands found in stream
[2026-08-31 05:39:13,227.227 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:39:13,229.229 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-08-31 05:39:17,212.212 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 05:39:17,214.214 INFO    ] Checking for system updates...
[2026-08-31 05:39:17,253.253 INFO    ] 200
[2026-08-31 05:39:17,256.256 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:39:17,307.307 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:39:17,309.309 INFO    ] No update needed
[2026-08-31 05:39:17,312.312 INFO    ] Checking for camera pi updates...
[2026-08-31 05:39:17,345.345 INFO    ] 200
[2026-08-31 05:39:17,347.347 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:39:17,387.387 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:39:17,485.485 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:39:17,488.488 INFO    ] No camera update needed
[2026-08-31 05:39:17,490.490 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:39:17,492.492 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:39:17,497.497 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:39:17,502.502 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:39:19,544.544 INFO    ] ================================================
[2026-08-31 05:39:19,560.560 INFO    ] Launching Daemon at Mon Aug 31 05:39:19 IST 2026
[2026-08-31 05:39:19,571.571 INFO    ] ================================================
[2026-08-31 05:39:20,138.138 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:39:20
[2026-08-31 05:39:20,720.720 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:39:20,964.964 INFO    ] Initializing speech engine...
[2026-08-31 05:39:20,972.972 INFO    ] 2026-08-31 05:39:20
[2026-08-31 05:39:21,247.247 INFO    ] 2026-08-31 05:39:21
[2026-08-31 05:39:21,282.282 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:39:21,564.564 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:39:21,572.572 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:39:21,759.759 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:39:21,819.819 INFO    ] time= 31/08/2026 05:39:21
[2026-08-31 05:39:21,865.865 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:39:21,871.871 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:39:21,997.997 INFO    ] No existing commands found in stream
[2026-08-31 05:39:27,014.014 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:39:27,017.017 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-08-31 05:39:32,706.706 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 05:39:32,709.709 INFO    ] Checking for system updates...
[2026-08-31 05:39:32,746.746 INFO    ] 200
[2026-08-31 05:39:32,749.749 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:39:32,811.811 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:39:32,814.814 INFO    ] No update needed
[2026-08-31 05:39:32,816.816 INFO    ] Checking for camera pi updates...
[2026-08-31 05:39:32,855.855 INFO    ] 200
[2026-08-31 05:39:32,858.858 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:39:32,907.907 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:39:33,013.013 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:39:33,015.015 INFO    ] No camera update needed
[2026-08-31 05:39:33,018.018 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:39:33,020.020 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:39:33,025.025 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:39:33,031.031 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:39:35,071.071 INFO    ] ================================================
[2026-08-31 05:39:35,086.086 INFO    ] Launching Daemon at Mon Aug 31 05:39:35 IST 2026
[2026-08-31 05:39:35,097.097 INFO    ] ================================================
[2026-08-31 05:39:35,698.698 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:39:35
[2026-08-31 05:39:36,280.280 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:39:36,535.535 INFO    ] Initializing speech engine...
[2026-08-31 05:39:36,550.550 INFO    ] 2026-08-31 05:39:36
[2026-08-31 05:39:36,829.829 INFO    ] 2026-08-31 05:39:36
[2026-08-31 05:39:36,866.866 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:39:37,047.047 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:39:37,060.060 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:39:37,207.207 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:39:37,212.212 INFO    ] time= 31/08/2026 05:39:37
[2026-08-31 05:39:37,219.219 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:39:37,264.264 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:39:37,412.412 INFO    ] No existing commands found in stream
[2026-08-31 05:39:42,423.423 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:39:42,426.426 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-08-31 05:39:45,683.683 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 05:39:45,686.686 INFO    ] Checking for system updates...
[2026-08-31 05:39:45,724.724 INFO    ] 200
[2026-08-31 05:39:45,726.726 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:39:45,782.782 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:39:45,784.784 INFO    ] No update needed
[2026-08-31 05:39:45,787.787 INFO    ] Checking for camera pi updates...
[2026-08-31 05:39:45,820.820 INFO    ] 200
[2026-08-31 05:39:45,823.823 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:39:45,864.864 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:39:45,930.930 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:39:45,933.933 INFO    ] No camera update needed
[2026-08-31 05:39:45,935.935 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:39:45,937.937 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:39:45,942.942 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:39:45,947.947 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:39:47,989.989 INFO    ] ================================================
[2026-08-31 05:39:48,005.005 INFO    ] Launching Daemon at Mon Aug 31 05:39:47 IST 2026
[2026-08-31 05:39:48,016.016 INFO    ] ================================================
[2026-08-31 05:39:48,639.639 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:39:48
[2026-08-31 05:39:49,219.219 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:39:49,486.486 INFO    ] Initializing speech engine...
[2026-08-31 05:39:49,499.499 INFO    ] 2026-08-31 05:39:49
[2026-08-31 05:39:49,748.748 INFO    ] 2026-08-31 05:39:49
[2026-08-31 05:39:49,782.782 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:39:49,983.983 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:39:50,041.041 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:39:50,183.183 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:39:50,220.220 INFO    ] time= 31/08/2026 05:39:50
[2026-08-31 05:39:50,279.279 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:39:50,320.320 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:39:50,440.440 INFO    ] No existing commands found in stream
[2026-08-31 05:39:55,471.471 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:39:55,473.473 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-08-31 05:39:56,867.867 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 05:39:56,870.870 INFO    ] Checking for system updates...
[2026-08-31 05:39:56,907.907 INFO    ] 200
[2026-08-31 05:39:56,910.910 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:39:56,965.965 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:39:56,968.968 INFO    ] No update needed
[2026-08-31 05:39:56,970.970 INFO    ] Checking for camera pi updates...
[2026-08-31 05:39:57,003.003 INFO    ] 200
[2026-08-31 05:39:57,006.006 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:39:57,046.046 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:39:57,120.120 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:39:57,122.122 INFO    ] No camera update needed
[2026-08-31 05:39:57,124.124 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:39:57,127.127 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:39:57,132.132 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:39:57,137.137 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:39:59,179.179 INFO    ] ================================================
[2026-08-31 05:39:59,194.194 INFO    ] Launching Daemon at Mon Aug 31 05:39:59 IST 2026
[2026-08-31 05:39:59,205.205 INFO    ] ================================================
[2026-08-31 05:39:59,772.772 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:39:59
[2026-08-31 05:40:00,353.353 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:40:00,624.624 INFO    ] Initializing speech engine...
[2026-08-31 05:40:00,634.634 INFO    ] 2026-08-31 05:40:00
[2026-08-31 05:40:00,884.884 INFO    ] 2026-08-31 05:40:00
[2026-08-31 05:40:00,919.919 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:40:01,126.126 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:40:01,181.181 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:40:01,325.325 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:40:01,379.379 INFO    ] time= 31/08/2026 05:40:01
[2026-08-31 05:40:01,439.439 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:40:01,460.460 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:40:01,575.575 INFO    ] No existing commands found in stream
[2026-08-31 05:40:06,606.606 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:40:06,609.609 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-08-31 05:40:09,345.345 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 05:40:09,348.348 INFO    ] Checking for system updates...
[2026-08-31 05:40:09,384.384 INFO    ] 200
[2026-08-31 05:40:09,386.386 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:40:09,438.438 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:40:09,441.441 INFO    ] No update needed
[2026-08-31 05:40:09,443.443 INFO    ] Checking for camera pi updates...
[2026-08-31 05:40:09,477.477 INFO    ] 200
[2026-08-31 05:40:09,480.480 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:40:09,521.521 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:40:09,602.602 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:40:09,604.604 INFO    ] No camera update needed
[2026-08-31 05:40:09,607.607 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:40:09,609.609 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:40:09,614.614 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:40:09,619.619 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:40:11,659.659 INFO    ] ================================================
[2026-08-31 05:40:11,675.675 INFO    ] Launching Daemon at Mon Aug 31 05:40:11 IST 2026
[2026-08-31 05:40:11,686.686 INFO    ] ================================================
[2026-08-31 05:40:12,348.348 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:40:12
[2026-08-31 05:40:12,964.964 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:40:13,217.217 INFO    ] Initializing speech engine...
[2026-08-31 05:40:13,230.230 INFO    ] 2026-08-31 05:40:13
[2026-08-31 05:40:13,494.494 INFO    ] 2026-08-31 05:40:13
[2026-08-31 05:40:13,528.528 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:40:13,782.782 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:40:13,792.792 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:40:13,944.944 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:40:13,956.956 INFO    ] time= 31/08/2026 05:40:13
[2026-08-31 05:40:14,015.015 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:40:14,064.064 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:40:14,163.163 INFO    ] No existing commands found in stream
[2026-08-31 05:40:19,175.175 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:40:19,178.178 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-08-31 05:40:20,651.651 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 05:40:20,654.654 INFO    ] Checking for system updates...
[2026-08-31 05:40:20,695.695 INFO    ] 200
[2026-08-31 05:40:20,697.697 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:40:20,751.751 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:40:20,753.753 INFO    ] No update needed
[2026-08-31 05:40:20,756.756 INFO    ] Checking for camera pi updates...
[2026-08-31 05:40:20,793.793 INFO    ] 200
[2026-08-31 05:40:20,796.796 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:40:20,841.841 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:40:21,024.024 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:40:21,026.026 INFO    ] No camera update needed
[2026-08-31 05:40:21,029.029 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:40:21,031.031 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:40:21,036.036 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:40:21,041.041 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:40:23,081.081 INFO    ] ================================================
[2026-08-31 05:40:23,096.096 INFO    ] Launching Daemon at Mon Aug 31 05:40:23 IST 2026
[2026-08-31 05:40:23,107.107 INFO    ] ================================================
[2026-08-31 05:40:23,771.771 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:40:23
[2026-08-31 05:40:24,396.396 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:40:24,644.644 INFO    ] Initializing speech engine...
[2026-08-31 05:40:24,666.666 INFO    ] 2026-08-31 05:40:24
[2026-08-31 05:40:24,917.917 INFO    ] 2026-08-31 05:40:24
[2026-08-31 05:40:24,952.952 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:40:25,203.203 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:40:25,212.212 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:40:25,342.342 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:40:25,389.389 INFO    ] time= 31/08/2026 05:40:25
[2026-08-31 05:40:25,438.438 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:40:25,474.474 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:40:25,530.530 INFO    ] No existing commands found in stream
[2026-08-31 05:40:30,542.542 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:40:30,544.544 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-08-31 05:40:32,859.859 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 05:40:32,862.862 INFO    ] Checking for system updates...
[2026-08-31 05:40:32,905.905 INFO    ] 200
[2026-08-31 05:40:32,908.908 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:40:32,966.966 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:40:32,969.969 INFO    ] No update needed
[2026-08-31 05:40:32,972.972 INFO    ] Checking for camera pi updates...
[2026-08-31 05:40:33,013.013 INFO    ] 200
[2026-08-31 05:40:33,016.016 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:40:33,066.066 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:40:33,152.152 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:40:33,154.154 INFO    ] No camera update needed
[2026-08-31 05:40:33,157.157 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:40:33,159.159 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:40:33,164.164 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:40:33,169.169 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:40:35,211.211 INFO    ] ================================================
[2026-08-31 05:40:35,227.227 INFO    ] Launching Daemon at Mon Aug 31 05:40:35 IST 2026
[2026-08-31 05:40:35,238.238 INFO    ] ================================================
[2026-08-31 05:40:35,844.844 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:40:35
[2026-08-31 05:40:36,451.451 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:40:36,789.789 INFO    ] Initializing speech engine...
[2026-08-31 05:40:36,795.795 INFO    ] 2026-08-31 05:40:36
[2026-08-31 05:40:37,108.108 INFO    ] 2026-08-31 05:40:37
[2026-08-31 05:40:37,194.194 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:40:37,373.373 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:40:37,378.378 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:40:37,569.569 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:40:37,624.624 INFO    ] time= 31/08/2026 05:40:37
[2026-08-31 05:40:37,653.653 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:40:37,672.672 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:40:37,809.809 INFO    ] No existing commands found in stream
[2026-08-31 05:40:42,832.832 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:40:42,836.836 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-08-31 05:40:46,085.085 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 05:40:46,088.088 INFO    ] Checking for system updates...
[2026-08-31 05:40:46,125.125 INFO    ] 200
[2026-08-31 05:40:46,128.128 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:40:46,183.183 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:40:46,185.185 INFO    ] No update needed
[2026-08-31 05:40:46,188.188 INFO    ] Checking for camera pi updates...
[2026-08-31 05:40:46,222.222 INFO    ] 200
[2026-08-31 05:40:46,224.224 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:40:46,274.274 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:40:46,372.372 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:40:46,375.375 INFO    ] No camera update needed
[2026-08-31 05:40:46,377.377 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:40:46,379.379 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:40:46,386.386 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:40:46,391.391 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:40:48,433.433 INFO    ] ================================================
[2026-08-31 05:40:48,449.449 INFO    ] Launching Daemon at Mon Aug 31 05:40:48 IST 2026
[2026-08-31 05:40:48,460.460 INFO    ] ================================================
[2026-08-31 05:40:49,042.042 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:40:49
[2026-08-31 05:40:49,641.641 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:40:49,918.918 INFO    ] Initializing speech engine...
[2026-08-31 05:40:49,925.925 INFO    ] 2026-08-31 05:40:49
[2026-08-31 05:40:50,185.185 INFO    ] 2026-08-31 05:40:50
[2026-08-31 05:40:50,215.215 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:40:50,459.459 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:40:50,468.468 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:40:50,601.601 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:40:50,656.656 INFO    ] time= 31/08/2026 05:40:50
[2026-08-31 05:40:50,710.710 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:40:50,732.732 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:40:50,874.874 INFO    ] No existing commands found in stream
[2026-08-31 05:40:55,889.889 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:40:55,892.892 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-08-31 05:40:58,544.544 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 05:40:58,547.547 INFO    ] Checking for system updates...
[2026-08-31 05:40:58,583.583 INFO    ] 200
[2026-08-31 05:40:58,586.586 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:40:58,646.646 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:40:58,648.648 INFO    ] No update needed
[2026-08-31 05:40:58,651.651 INFO    ] Checking for camera pi updates...
[2026-08-31 05:40:58,690.690 INFO    ] 200
[2026-08-31 05:40:58,693.693 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:40:58,735.735 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:40:58,838.838 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:40:58,841.841 INFO    ] No camera update needed
[2026-08-31 05:40:58,844.844 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:40:58,846.846 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:40:58,853.853 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:40:58,858.858 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:41:00,899.899 INFO    ] ================================================
[2026-08-31 05:41:00,915.915 INFO    ] Launching Daemon at Mon Aug 31 05:41:00 IST 2026
[2026-08-31 05:41:00,926.926 INFO    ] ================================================
[2026-08-31 05:41:01,617.617 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:41:01
[2026-08-31 05:41:02,259.259 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:41:02,606.606 INFO    ] Initializing speech engine...
[2026-08-31 05:41:02,620.620 INFO    ] 2026-08-31 05:41:02
[2026-08-31 05:41:02,923.923 INFO    ] 2026-08-31 05:41:02
[2026-08-31 05:41:02,980.980 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:41:03,144.144 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:41:03,162.162 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:41:03,295.295 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:41:03,300.300 INFO    ] time= 31/08/2026 05:41:03
[2026-08-31 05:41:03,306.306 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:41:03,352.352 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:41:03,496.496 INFO    ] No existing commands found in stream
[2026-08-31 05:41:08,511.511 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:41:08,513.513 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-08-31 05:41:10,094.094 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 05:41:10,096.096 INFO    ] Checking for system updates...
[2026-08-31 05:41:10,131.131 INFO    ] 200
[2026-08-31 05:41:10,134.134 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:41:10,186.186 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:41:10,188.188 INFO    ] No update needed
[2026-08-31 05:41:10,190.190 INFO    ] Checking for camera pi updates...
[2026-08-31 05:41:10,224.224 INFO    ] 200
[2026-08-31 05:41:10,226.226 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:41:10,266.266 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:41:10,347.347 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:41:10,349.349 INFO    ] No camera update needed
[2026-08-31 05:41:10,352.352 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:41:10,354.354 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:41:10,359.359 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:41:10,364.364 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:41:12,404.404 INFO    ] ================================================
[2026-08-31 05:41:12,420.420 INFO    ] Launching Daemon at Mon Aug 31 05:41:12 IST 2026
[2026-08-31 05:41:12,431.431 INFO    ] ================================================
[2026-08-31 05:41:13,007.007 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:41:12
[2026-08-31 05:41:13,604.604 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:41:13,883.883 INFO    ] Initializing speech engine...
[2026-08-31 05:41:13,891.891 INFO    ] 2026-08-31 05:41:13
[2026-08-31 05:41:14,149.149 INFO    ] 2026-08-31 05:41:14
[2026-08-31 05:41:14,179.179 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:41:14,422.422 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:41:14,431.431 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:41:14,570.570 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:41:14,635.635 INFO    ] time= 31/08/2026 05:41:14
[2026-08-31 05:41:14,692.692 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:41:14,698.698 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:41:14,841.841 INFO    ] No existing commands found in stream
[2026-08-31 05:41:19,854.854 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:41:19,857.857 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-08-31 05:41:22,502.502 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 05:41:22,505.505 INFO    ] Checking for system updates...
[2026-08-31 05:41:22,545.545 INFO    ] 200
[2026-08-31 05:41:22,548.548 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:41:22,626.626 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:41:22,629.629 INFO    ] No update needed
[2026-08-31 05:41:22,631.631 INFO    ] Checking for camera pi updates...
[2026-08-31 05:41:22,669.669 INFO    ] 200
[2026-08-31 05:41:22,672.672 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:41:22,718.718 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:41:22,768.768 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:41:22,771.771 INFO    ] No camera update needed
[2026-08-31 05:41:22,773.773 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:41:22,776.776 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:41:22,781.781 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:41:22,786.786 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:41:24,829.829 INFO    ] ================================================
[2026-08-31 05:41:24,845.845 INFO    ] Launching Daemon at Mon Aug 31 05:41:24 IST 2026
[2026-08-31 05:41:24,856.856 INFO    ] ================================================
[2026-08-31 05:41:25,522.522 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:41:25
[2026-08-31 05:41:26,207.207 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:41:26,519.519 INFO    ] Initializing speech engine...
[2026-08-31 05:41:26,530.530 INFO    ] 2026-08-31 05:41:26
[2026-08-31 05:41:26,840.840 INFO    ] 2026-08-31 05:41:26
[2026-08-31 05:41:26,926.926 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:41:27,136.136 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:41:27,144.144 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:41:27,340.340 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:41:27,348.348 INFO    ] time= 31/08/2026 05:41:27
[2026-08-31 05:41:27,369.369 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:41:27,398.398 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:41:27,521.521 INFO    ] No existing commands found in stream
[2026-08-31 05:41:32,547.547 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:41:32,550.550 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-08-31 05:41:34,587.587 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 05:41:34,590.590 INFO    ] Checking for system updates...
[2026-08-31 05:41:34,631.631 INFO    ] 200
[2026-08-31 05:41:34,634.634 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:41:34,689.689 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:41:34,692.692 INFO    ] No update needed
[2026-08-31 05:41:34,695.695 INFO    ] Checking for camera pi updates...
[2026-08-31 05:41:34,729.729 INFO    ] 200
[2026-08-31 05:41:34,732.732 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:41:34,779.779 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:41:34,867.867 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:41:34,870.870 INFO    ] No camera update needed
[2026-08-31 05:41:34,873.873 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:41:34,875.875 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:41:34,882.882 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:41:34,887.887 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:41:36,930.930 INFO    ] ================================================
[2026-08-31 05:41:36,946.946 INFO    ] Launching Daemon at Mon Aug 31 05:41:36 IST 2026
[2026-08-31 05:41:36,956.956 INFO    ] ================================================
[2026-08-31 05:41:37,540.540 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:41:37
[2026-08-31 05:41:38,144.144 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:41:38,408.408 INFO    ] Initializing speech engine...
[2026-08-31 05:41:38,415.415 INFO    ] 2026-08-31 05:41:38
[2026-08-31 05:41:38,715.715 INFO    ] 2026-08-31 05:41:38
[2026-08-31 05:41:38,741.741 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:41:38,953.953 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:41:38,960.960 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:41:39,094.094 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:41:39,102.102 INFO    ] time= 31/08/2026 05:41:39
[2026-08-31 05:41:39,122.122 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:41:39,144.144 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:41:39,231.231 INFO    ] No existing commands found in stream
[2026-08-31 05:41:44,246.246 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:41:44,249.249 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-08-31 05:41:48,470.470 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 05:41:48,473.473 INFO    ] Checking for system updates...
[2026-08-31 05:41:48,514.514 INFO    ] 200
[2026-08-31 05:41:48,517.517 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:41:48,571.571 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:41:48,574.574 INFO    ] No update needed
[2026-08-31 05:41:48,577.577 INFO    ] Checking for camera pi updates...
[2026-08-31 05:41:48,611.611 INFO    ] 200
[2026-08-31 05:41:48,614.614 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:41:48,655.655 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:41:48,738.738 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:41:48,741.741 INFO    ] No camera update needed
[2026-08-31 05:41:48,744.744 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:41:48,746.746 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:41:48,753.753 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:41:48,759.759 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:41:50,801.801 INFO    ] ================================================
[2026-08-31 05:41:50,818.818 INFO    ] Launching Daemon at Mon Aug 31 05:41:50 IST 2026
[2026-08-31 05:41:50,828.828 INFO    ] ================================================
[2026-08-31 05:41:51,493.493 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:41:51
[2026-08-31 05:41:52,178.178 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:41:52,496.496 INFO    ] Initializing speech engine...
[2026-08-31 05:41:52,504.504 INFO    ] 2026-08-31 05:41:52
[2026-08-31 05:41:52,813.813 INFO    ] 2026-08-31 05:41:52
[2026-08-31 05:41:52,900.900 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:41:53,127.127 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:41:53,182.182 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:41:53,330.330 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:41:53,339.339 INFO    ] time= 31/08/2026 05:41:53
[2026-08-31 05:41:53,366.366 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:41:53,376.376 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:41:53,478.478 INFO    ] No existing commands found in stream
[2026-08-31 05:41:58,508.508 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:41:58,511.511 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-08-31 05:41:59,086.086 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 05:41:59,089.089 INFO    ] Checking for system updates...
[2026-08-31 05:41:59,126.126 INFO    ] 200
[2026-08-31 05:41:59,129.129 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:41:59,190.190 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:41:59,193.193 INFO    ] No update needed
[2026-08-31 05:41:59,196.196 INFO    ] Checking for camera pi updates...
[2026-08-31 05:41:59,235.235 INFO    ] 200
[2026-08-31 05:41:59,238.238 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:41:59,290.290 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:41:59,371.371 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:41:59,373.373 INFO    ] No camera update needed
[2026-08-31 05:41:59,375.375 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:41:59,378.378 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:41:59,383.383 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:41:59,388.388 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:42:01,440.440 INFO    ] ================================================
[2026-08-31 05:42:01,481.481 INFO    ] Launching Daemon at Mon Aug 31 05:42:01 IST 2026
[2026-08-31 05:42:01,495.495 INFO    ] ================================================
[2026-08-31 05:42:02,161.161 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:42:02
[2026-08-31 05:42:02,815.815 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:42:03,117.117 INFO    ] Initializing speech engine...
[2026-08-31 05:42:03,122.122 INFO    ] 2026-08-31 05:42:03
[2026-08-31 05:42:03,395.395 INFO    ] 2026-08-31 05:42:03
[2026-08-31 05:42:03,448.448 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:42:03,692.692 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:42:03,700.700 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:42:03,889.889 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:42:03,931.931 INFO    ] time= 31/08/2026 05:42:03
[2026-08-31 05:42:03,937.937 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:42:03,954.954 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:42:04,081.081 INFO    ] No existing commands found in stream
[2026-08-31 05:42:09,096.096 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:42:09,099.099 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-08-31 05:42:13,329.329 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 05:42:13,332.332 INFO    ] Checking for system updates...
[2026-08-31 05:42:13,368.368 INFO    ] 200
[2026-08-31 05:42:13,371.371 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:42:13,422.422 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:42:13,425.425 INFO    ] No update needed
[2026-08-31 05:42:13,427.427 INFO    ] Checking for camera pi updates...
[2026-08-31 05:42:13,460.460 INFO    ] 200
[2026-08-31 05:42:13,462.462 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:42:13,502.502 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:42:13,582.582 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:42:13,584.584 INFO    ] No camera update needed
[2026-08-31 05:42:13,586.586 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:42:13,589.589 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:42:13,594.594 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:42:13,599.599 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:42:15,638.638 INFO    ] ================================================
[2026-08-31 05:42:15,653.653 INFO    ] Launching Daemon at Mon Aug 31 05:42:15 IST 2026
[2026-08-31 05:42:15,664.664 INFO    ] ================================================
[2026-08-31 05:42:16,234.234 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:42:16
[2026-08-31 05:42:16,818.818 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:42:17,075.075 INFO    ] Initializing speech engine...
[2026-08-31 05:42:17,090.090 INFO    ] 2026-08-31 05:42:17
[2026-08-31 05:42:17,375.375 INFO    ] 2026-08-31 05:42:17
[2026-08-31 05:42:17,413.413 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:42:17,611.611 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:42:17,617.617 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:42:17,777.777 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:42:17,785.785 INFO    ] time= 31/08/2026 05:42:17
[2026-08-31 05:42:17,791.791 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:42:17,828.828 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:42:17,971.971 INFO    ] No existing commands found in stream
[2026-08-31 05:42:22,992.992 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:42:22,994.994 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-08-31 05:42:23,945.945 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 05:42:23,948.948 INFO    ] Checking for system updates...
[2026-08-31 05:42:23,984.984 INFO    ] 200
[2026-08-31 05:42:23,986.986 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:42:24,039.039 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:42:24,041.041 INFO    ] No update needed
[2026-08-31 05:42:24,044.044 INFO    ] Checking for camera pi updates...
[2026-08-31 05:42:24,081.081 INFO    ] 200
[2026-08-31 05:42:24,083.083 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:42:24,124.124 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:42:24,302.302 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:42:24,305.305 INFO    ] No camera update needed
[2026-08-31 05:42:24,307.307 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:42:24,309.309 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:42:24,315.315 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:42:24,320.320 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:42:26,359.359 INFO    ] ================================================
[2026-08-31 05:42:26,374.374 INFO    ] Launching Daemon at Mon Aug 31 05:42:26 IST 2026
[2026-08-31 05:42:26,385.385 INFO    ] ================================================
[2026-08-31 05:42:27,039.039 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:42:27
[2026-08-31 05:42:27,714.714 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:42:27,969.969 INFO    ] Initializing speech engine...
[2026-08-31 05:42:27,976.976 INFO    ] 2026-08-31 05:42:27
[2026-08-31 05:42:28,278.278 INFO    ] 2026-08-31 05:42:28
[2026-08-31 05:42:28,313.313 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:42:28,525.525 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:42:28,543.543 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:42:28,693.693 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:42:28,700.700 INFO    ] time= 31/08/2026 05:42:28
[2026-08-31 05:42:28,707.707 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:42:28,745.745 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:42:28,892.892 INFO    ] No existing commands found in stream
[2026-08-31 05:42:33,923.923 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:42:33,925.925 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-08-31 05:42:37,985.985 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 05:42:37,987.987 INFO    ] Checking for system updates...
[2026-08-31 05:42:38,023.023 INFO    ] 200
[2026-08-31 05:42:38,026.026 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:42:38,085.085 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:42:38,088.088 INFO    ] No update needed
[2026-08-31 05:42:38,090.090 INFO    ] Checking for camera pi updates...
[2026-08-31 05:42:38,130.130 INFO    ] 200
[2026-08-31 05:42:38,133.133 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:42:38,175.175 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:42:38,257.257 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:42:38,260.260 INFO    ] No camera update needed
[2026-08-31 05:42:38,262.262 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:42:38,265.265 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:42:38,271.271 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:42:38,277.277 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:42:40,317.317 INFO    ] ================================================
[2026-08-31 05:42:40,332.332 INFO    ] Launching Daemon at Mon Aug 31 05:42:40 IST 2026
[2026-08-31 05:42:40,343.343 INFO    ] ================================================
[2026-08-31 05:42:40,920.920 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:42:40
[2026-08-31 05:42:41,504.504 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:42:41,774.774 INFO    ] Initializing speech engine...
[2026-08-31 05:42:41,783.783 INFO    ] 2026-08-31 05:42:41
[2026-08-31 05:42:42,033.033 INFO    ] 2026-08-31 05:42:42
[2026-08-31 05:42:42,100.100 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:42:42,328.328 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:42:42,334.334 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:42:42,531.531 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:42:42,589.589 INFO    ] time= 31/08/2026 05:42:42
[2026-08-31 05:42:42,595.595 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:42:42,613.613 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:42:42,728.728 INFO    ] No existing commands found in stream
[2026-08-31 05:42:47,753.753 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:42:47,756.756 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-08-31 05:42:51,389.389 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 05:42:51,392.392 INFO    ] Checking for system updates...
[2026-08-31 05:42:51,428.428 INFO    ] 200
[2026-08-31 05:42:51,431.431 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:42:51,484.484 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:42:51,487.487 INFO    ] No update needed
[2026-08-31 05:42:51,489.489 INFO    ] Checking for camera pi updates...
[2026-08-31 05:42:51,523.523 INFO    ] 200
[2026-08-31 05:42:51,525.525 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:42:51,572.572 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:42:51,654.654 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:42:51,656.656 INFO    ] No camera update needed
[2026-08-31 05:42:51,659.659 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:42:51,661.661 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:42:51,666.666 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:42:51,671.671 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:42:53,712.712 INFO    ] ================================================
[2026-08-31 05:42:53,727.727 INFO    ] Launching Daemon at Mon Aug 31 05:42:53 IST 2026
[2026-08-31 05:42:53,738.738 INFO    ] ================================================
[2026-08-31 05:42:54,306.306 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:42:54
[2026-08-31 05:42:54,888.888 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:42:55,154.154 INFO    ] Initializing speech engine...
[2026-08-31 05:42:55,163.163 INFO    ] 2026-08-31 05:42:55
[2026-08-31 05:42:55,409.409 INFO    ] 2026-08-31 05:42:55
[2026-08-31 05:42:55,444.444 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:42:55,699.699 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:42:55,704.704 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:42:55,899.899 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:42:55,962.962 INFO    ] time= 31/08/2026 05:42:55
[2026-08-31 05:42:55,969.969 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:42:55,987.987 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:42:56,118.118 INFO    ] No existing commands found in stream
[2026-08-31 05:43:01,136.136 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:43:01,139.139 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-08-31 05:43:03,696.696 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 05:43:03,699.699 INFO    ] Checking for system updates...
[2026-08-31 05:43:03,734.734 INFO    ] 200
[2026-08-31 05:43:03,737.737 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:43:03,795.795 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:43:03,798.798 INFO    ] No update needed
[2026-08-31 05:43:03,800.800 INFO    ] Checking for camera pi updates...
[2026-08-31 05:43:03,833.833 INFO    ] 200
[2026-08-31 05:43:03,835.835 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:43:03,876.876 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:43:03,958.958 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:43:03,961.961 INFO    ] No camera update needed
[2026-08-31 05:43:03,963.963 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:43:03,965.965 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:43:03,971.971 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:43:03,976.976 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:43:06,019.019 INFO    ] ================================================
[2026-08-31 05:43:06,034.034 INFO    ] Launching Daemon at Mon Aug 31 05:43:06 IST 2026
[2026-08-31 05:43:06,044.044 INFO    ] ================================================
[2026-08-31 05:43:06,723.723 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:43:06
[2026-08-31 05:43:07,412.412 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:43:07,724.724 INFO    ] Initializing speech engine...
[2026-08-31 05:43:07,735.735 INFO    ] 2026-08-31 05:43:07
[2026-08-31 05:43:08,019.019 INFO    ] 2026-08-31 05:43:08
[2026-08-31 05:43:08,115.115 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:43:08,329.329 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:43:08,352.352 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:43:08,548.548 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:43:08,555.555 INFO    ] time= 31/08/2026 05:43:08
[2026-08-31 05:43:08,573.573 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:43:08,607.607 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:43:08,709.709 INFO    ] No existing commands found in stream
[2026-08-31 05:43:13,733.733 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:43:13,735.735 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-08-31 05:43:16,263.263 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 05:43:16,266.266 INFO    ] Checking for system updates...
[2026-08-31 05:43:16,306.306 INFO    ] 200
[2026-08-31 05:43:16,309.309 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:43:16,369.369 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:43:16,372.372 INFO    ] No update needed
[2026-08-31 05:43:16,374.374 INFO    ] Checking for camera pi updates...
[2026-08-31 05:43:16,408.408 INFO    ] 200
[2026-08-31 05:43:16,410.410 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:43:16,450.450 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:43:16,529.529 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:43:16,532.532 INFO    ] No camera update needed
[2026-08-31 05:43:16,534.534 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:43:16,536.536 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:43:16,542.542 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:43:16,547.547 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:43:18,588.588 INFO    ] ================================================
[2026-08-31 05:43:18,603.603 INFO    ] Launching Daemon at Mon Aug 31 05:43:18 IST 2026
[2026-08-31 05:43:18,613.613 INFO    ] ================================================
[2026-08-31 05:43:19,195.195 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:43:19
[2026-08-31 05:43:19,792.792 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:43:20,069.069 INFO    ] Initializing speech engine...
[2026-08-31 05:43:20,078.078 INFO    ] 2026-08-31 05:43:20
[2026-08-31 05:43:20,337.337 INFO    ] 2026-08-31 05:43:20
[2026-08-31 05:43:20,367.367 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:43:20,615.615 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:43:20,621.621 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:43:20,820.820 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:43:20,875.875 INFO    ] time= 31/08/2026 05:43:20
[2026-08-31 05:43:20,884.884 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:43:20,901.901 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:43:21,011.011 INFO    ] No existing commands found in stream
[2026-08-31 05:43:26,040.040 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:43:26,043.043 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-08-31 05:43:26,783.783 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 05:43:26,786.786 INFO    ] Checking for system updates...
[2026-08-31 05:43:26,822.822 INFO    ] 200
[2026-08-31 05:43:26,824.824 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:43:26,876.876 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:43:26,878.878 INFO    ] No update needed
[2026-08-31 05:43:26,881.881 INFO    ] Checking for camera pi updates...
[2026-08-31 05:43:26,919.919 INFO    ] 200
[2026-08-31 05:43:26,922.922 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:43:26,962.962 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:43:27,055.055 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:43:27,058.058 INFO    ] No camera update needed
[2026-08-31 05:43:27,060.060 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:43:27,062.062 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:43:27,068.068 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:43:27,073.073 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:43:29,111.111 INFO    ] ================================================
[2026-08-31 05:43:29,126.126 INFO    ] Launching Daemon at Mon Aug 31 05:43:29 IST 2026
[2026-08-31 05:43:29,136.136 INFO    ] ================================================
[2026-08-31 05:43:29,715.715 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:43:29
[2026-08-31 05:43:30,311.311 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:43:30,588.588 INFO    ] Initializing speech engine...
[2026-08-31 05:43:30,594.594 INFO    ] 2026-08-31 05:43:30
[2026-08-31 05:43:30,854.854 INFO    ] 2026-08-31 05:43:30
[2026-08-31 05:43:30,884.884 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:43:31,133.133 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:43:31,138.138 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:43:31,268.268 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:43:31,315.315 INFO    ] time= 31/08/2026 05:43:31
[2026-08-31 05:43:31,370.370 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:43:31,423.423 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:43:31,571.571 INFO    ] No existing commands found in stream
[2026-08-31 05:43:36,588.588 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:43:36,591.591 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-08-31 05:43:40,297.297 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 05:43:40,301.301 INFO    ] Checking for system updates...
[2026-08-31 05:43:40,338.338 INFO    ] 200
[2026-08-31 05:43:40,340.340 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:43:40,393.393 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:43:40,396.396 INFO    ] No update needed
[2026-08-31 05:43:40,398.398 INFO    ] Checking for camera pi updates...
[2026-08-31 05:43:40,432.432 INFO    ] 200
[2026-08-31 05:43:40,434.434 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:43:40,478.478 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:43:40,567.567 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:43:40,569.569 INFO    ] No camera update needed
[2026-08-31 05:43:40,572.572 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:43:40,574.574 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:43:40,580.580 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:43:40,585.585 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:43:42,625.625 INFO    ] ================================================
[2026-08-31 05:43:42,640.640 INFO    ] Launching Daemon at Mon Aug 31 05:43:42 IST 2026
[2026-08-31 05:43:42,651.651 INFO    ] ================================================
[2026-08-31 05:43:43,223.223 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:43:43
[2026-08-31 05:43:43,823.823 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:43:44,086.086 INFO    ] Initializing speech engine...
[2026-08-31 05:43:44,093.093 INFO    ] 2026-08-31 05:43:44
[2026-08-31 05:43:44,382.382 INFO    ] 2026-08-31 05:43:44
[2026-08-31 05:43:44,420.420 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:43:44,670.670 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:43:44,679.679 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:43:44,890.890 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:43:44,936.936 INFO    ] time= 31/08/2026 05:43:44
[2026-08-31 05:43:44,942.942 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:43:44,963.963 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:43:45,091.091 INFO    ] No existing commands found in stream
[2026-08-31 05:43:50,114.114 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:43:50,117.117 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-08-31 05:43:52,210.210 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 05:43:52,212.212 INFO    ] Checking for system updates...
[2026-08-31 05:43:52,252.252 INFO    ] 200
[2026-08-31 05:43:52,255.255 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:43:52,314.314 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:43:52,316.316 INFO    ] No update needed
[2026-08-31 05:43:52,319.319 INFO    ] Checking for camera pi updates...
[2026-08-31 05:43:52,356.356 INFO    ] 200
[2026-08-31 05:43:52,359.359 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:43:52,404.404 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:43:52,476.476 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:43:52,479.479 INFO    ] No camera update needed
[2026-08-31 05:43:52,481.481 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:43:52,483.483 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:43:52,489.489 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:43:52,494.494 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:43:54,534.534 INFO    ] ================================================
[2026-08-31 05:43:54,549.549 INFO    ] Launching Daemon at Mon Aug 31 05:43:54 IST 2026
[2026-08-31 05:43:54,560.560 INFO    ] ================================================
[2026-08-31 05:43:55,131.131 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:43:55
[2026-08-31 05:43:55,714.714 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:43:55,981.981 INFO    ] Initializing speech engine...
[2026-08-31 05:43:55,991.991 INFO    ] 2026-08-31 05:43:55
[2026-08-31 05:43:56,241.241 INFO    ] 2026-08-31 05:43:56
[2026-08-31 05:43:56,299.299 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:43:56,519.519 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:43:56,528.528 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:43:56,667.667 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:43:56,732.732 INFO    ] time= 31/08/2026 05:43:56
[2026-08-31 05:43:56,788.788 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:43:56,794.794 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:43:56,933.933 INFO    ] No existing commands found in stream
[2026-08-31 05:44:01,950.950 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:44:01,954.954 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-08-31 05:44:04,569.569 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 05:44:04,571.571 INFO    ] Checking for system updates...
[2026-08-31 05:44:04,606.606 INFO    ] 200
[2026-08-31 05:44:04,609.609 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:44:04,670.670 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:44:04,672.672 INFO    ] No update needed
[2026-08-31 05:44:04,674.674 INFO    ] Checking for camera pi updates...
[2026-08-31 05:44:04,707.707 INFO    ] 200
[2026-08-31 05:44:04,710.710 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:44:04,753.753 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:44:04,837.837 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:44:04,840.840 INFO    ] No camera update needed
[2026-08-31 05:44:04,842.842 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:44:04,844.844 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:44:04,850.850 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:44:04,855.855 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:44:06,896.896 INFO    ] ================================================
[2026-08-31 05:44:06,911.911 INFO    ] Launching Daemon at Mon Aug 31 05:44:06 IST 2026
[2026-08-31 05:44:06,921.921 INFO    ] ================================================
[2026-08-31 05:44:07,486.486 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:44:07
[2026-08-31 05:44:08,069.069 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:44:08,325.325 INFO    ] Initializing speech engine...
[2026-08-31 05:44:08,334.334 INFO    ] 2026-08-31 05:44:08
[2026-08-31 05:44:08,635.635 INFO    ] 2026-08-31 05:44:08
[2026-08-31 05:44:08,661.661 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:44:08,879.879 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:44:08,892.892 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:44:09,058.058 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:44:09,066.066 INFO    ] time= 31/08/2026 05:44:09
[2026-08-31 05:44:09,072.072 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:44:09,081.081 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:44:09,157.157 INFO    ] No existing commands found in stream
[2026-08-31 05:44:14,182.182 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:44:14,184.184 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-08-31 05:44:14,862.862 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 05:44:14,864.864 INFO    ] Checking for system updates...
[2026-08-31 05:44:14,904.904 INFO    ] 200
[2026-08-31 05:44:14,907.907 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:44:14,959.959 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:44:14,962.962 INFO    ] No update needed
[2026-08-31 05:44:14,964.964 INFO    ] Checking for camera pi updates...
[2026-08-31 05:44:14,998.998 INFO    ] 200
[2026-08-31 05:44:15,000.000 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:44:15,041.041 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:44:15,120.120 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:44:15,123.123 INFO    ] No camera update needed
[2026-08-31 05:44:15,125.125 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:44:15,128.128 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:44:15,133.133 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:44:15,138.138 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:44:17,186.186 INFO    ] ================================================
[2026-08-31 05:44:17,201.201 INFO    ] Launching Daemon at Mon Aug 31 05:44:17 IST 2026
[2026-08-31 05:44:17,213.213 INFO    ] ================================================
[2026-08-31 05:44:17,879.879 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:44:17
[2026-08-31 05:44:18,568.568 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:44:18,876.876 INFO    ] Initializing speech engine...
[2026-08-31 05:44:18,884.884 INFO    ] 2026-08-31 05:44:18
[2026-08-31 05:44:19,164.164 INFO    ] 2026-08-31 05:44:19
[2026-08-31 05:44:19,217.217 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:44:19,500.500 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:44:19,509.509 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:44:19,690.690 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:44:19,712.712 INFO    ] time= 31/08/2026 05:44:19
[2026-08-31 05:44:19,733.733 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:44:19,761.761 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:44:19,867.867 INFO    ] No existing commands found in stream
[2026-08-31 05:44:24,897.897 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:44:24,901.901 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-08-31 05:44:25,452.452 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 05:44:25,455.455 INFO    ] Checking for system updates...
[2026-08-31 05:44:25,498.498 INFO    ] 200
[2026-08-31 05:44:25,501.501 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:44:25,563.563 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:44:25,566.566 INFO    ] No update needed
[2026-08-31 05:44:25,570.570 INFO    ] Checking for camera pi updates...
[2026-08-31 05:44:25,611.611 INFO    ] 200
[2026-08-31 05:44:25,614.614 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:44:25,655.655 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:44:25,826.826 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:44:25,830.830 INFO    ] No camera update needed
[2026-08-31 05:44:25,832.832 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:44:25,835.835 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:44:25,842.842 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:44:25,848.848 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:44:27,891.891 INFO    ] ================================================
[2026-08-31 05:44:27,907.907 INFO    ] Launching Daemon at Mon Aug 31 05:44:27 IST 2026
[2026-08-31 05:44:27,918.918 INFO    ] ================================================
[2026-08-31 05:44:28,485.485 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:44:28
[2026-08-31 05:44:29,068.068 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:44:29,317.317 INFO    ] Initializing speech engine...
[2026-08-31 05:44:29,330.330 INFO    ] 2026-08-31 05:44:29
[2026-08-31 05:44:29,594.594 INFO    ] 2026-08-31 05:44:29
[2026-08-31 05:44:29,629.629 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:44:29,805.805 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:44:29,817.817 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:44:29,963.963 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:44:29,969.969 INFO    ] time= 31/08/2026 05:44:29
[2026-08-31 05:44:29,974.974 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:44:30,016.016 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:44:30,127.127 INFO    ] No existing commands found in stream
[2026-08-31 05:44:35,152.152 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:44:35,155.155 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-08-31 05:44:37,489.489 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 05:44:37,492.492 INFO    ] Checking for system updates...
[2026-08-31 05:44:37,532.532 INFO    ] 200
[2026-08-31 05:44:37,535.535 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:44:37,586.586 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:44:37,589.589 INFO    ] No update needed
[2026-08-31 05:44:37,591.591 INFO    ] Checking for camera pi updates...
[2026-08-31 05:44:37,625.625 INFO    ] 200
[2026-08-31 05:44:37,628.628 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:44:37,667.667 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:44:37,752.752 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:44:37,754.754 INFO    ] No camera update needed
[2026-08-31 05:44:37,756.756 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:44:37,759.759 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:44:37,764.764 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:44:37,769.769 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:44:39,810.810 INFO    ] ================================================
[2026-08-31 05:44:39,825.825 INFO    ] Launching Daemon at Mon Aug 31 05:44:39 IST 2026
[2026-08-31 05:44:39,837.837 INFO    ] ================================================
[2026-08-31 05:44:40,503.503 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:44:40
[2026-08-31 05:44:41,189.189 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:44:41,497.497 INFO    ] Initializing speech engine...
[2026-08-31 05:44:41,511.511 INFO    ] 2026-08-31 05:44:41
[2026-08-31 05:44:41,825.825 INFO    ] 2026-08-31 05:44:41
[2026-08-31 05:44:41,907.907 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:44:42,117.117 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:44:42,126.126 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:44:42,299.299 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:44:42,326.326 INFO    ] time= 31/08/2026 05:44:42
[2026-08-31 05:44:42,332.332 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:44:42,354.354 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:44:42,493.493 INFO    ] No existing commands found in stream
[2026-08-31 05:44:47,516.516 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:44:47,520.520 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-08-31 05:44:49,164.164 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 05:44:49,168.168 INFO    ] Checking for system updates...
[2026-08-31 05:44:49,204.204 INFO    ] 200
[2026-08-31 05:44:49,207.207 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:44:49,261.261 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:44:49,264.264 INFO    ] No update needed
[2026-08-31 05:44:49,266.266 INFO    ] Checking for camera pi updates...
[2026-08-31 05:44:49,301.301 INFO    ] 200
[2026-08-31 05:44:49,304.304 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:44:49,351.351 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:44:49,455.455 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:44:49,458.458 INFO    ] No camera update needed
[2026-08-31 05:44:49,461.461 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:44:49,463.463 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:44:49,470.470 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:44:49,476.476 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:44:51,517.517 INFO    ] ================================================
[2026-08-31 05:44:51,533.533 INFO    ] Launching Daemon at Mon Aug 31 05:44:51 IST 2026
[2026-08-31 05:44:51,544.544 INFO    ] ================================================
[2026-08-31 05:44:52,111.111 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:44:52
[2026-08-31 05:44:52,693.693 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:44:52,961.961 INFO    ] Initializing speech engine...
[2026-08-31 05:44:52,970.970 INFO    ] 2026-08-31 05:44:52
[2026-08-31 05:44:53,217.217 INFO    ] 2026-08-31 05:44:53
[2026-08-31 05:44:53,252.252 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:44:53,449.449 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:44:53,504.504 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:44:53,647.647 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:44:53,654.654 INFO    ] time= 31/08/2026 05:44:53
[2026-08-31 05:44:53,709.709 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:44:53,763.763 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:44:53,838.838 INFO    ] No existing commands found in stream
[2026-08-31 05:44:58,850.850 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:44:58,852.852 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-08-31 05:45:03,242.242 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 05:45:03,245.245 INFO    ] Checking for system updates...
[2026-08-31 05:45:03,284.284 INFO    ] 200
[2026-08-31 05:45:03,287.287 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:45:03,356.356 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:45:03,359.359 INFO    ] No update needed
[2026-08-31 05:45:03,361.361 INFO    ] Checking for camera pi updates...
[2026-08-31 05:45:03,399.399 INFO    ] 200
[2026-08-31 05:45:03,401.401 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:45:03,441.441 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:45:03,535.535 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:45:03,538.538 INFO    ] No camera update needed
[2026-08-31 05:45:03,540.540 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:45:03,543.543 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:45:03,548.548 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:45:03,553.553 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:45:05,595.595 INFO    ] ================================================
[2026-08-31 05:45:05,610.610 INFO    ] Launching Daemon at Mon Aug 31 05:45:05 IST 2026
[2026-08-31 05:45:05,620.620 INFO    ] ================================================
[2026-08-31 05:45:06,186.186 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:45:06
[2026-08-31 05:45:06,842.842 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:45:07,144.144 INFO    ] Initializing speech engine...
[2026-08-31 05:45:07,153.153 INFO    ] 2026-08-31 05:45:07
[2026-08-31 05:45:07,441.441 INFO    ] 2026-08-31 05:45:07
[2026-08-31 05:45:07,485.485 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:45:07,773.773 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:45:07,780.780 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:45:07,976.976 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:45:07,995.995 INFO    ] time= 31/08/2026 05:45:07
[2026-08-31 05:45:08,005.005 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:45:08,034.034 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:45:08,160.160 INFO    ] No existing commands found in stream
[2026-08-31 05:45:13,191.191 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:45:13,194.194 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-08-31 05:45:15,948.948 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 05:45:15,952.952 INFO    ] Checking for system updates...
[2026-08-31 05:45:15,988.988 INFO    ] 200
[2026-08-31 05:45:15,991.991 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:45:16,053.053 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:45:16,056.056 INFO    ] No update needed
[2026-08-31 05:45:16,059.059 INFO    ] Checking for camera pi updates...
[2026-08-31 05:45:16,093.093 INFO    ] 200
[2026-08-31 05:45:16,096.096 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:45:16,139.139 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:45:16,214.214 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:45:16,216.216 INFO    ] No camera update needed
[2026-08-31 05:45:16,219.219 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:45:16,222.222 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:45:16,228.228 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:45:16,234.234 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:45:18,276.276 INFO    ] ================================================
[2026-08-31 05:45:18,292.292 INFO    ] Launching Daemon at Mon Aug 31 05:45:18 IST 2026
[2026-08-31 05:45:18,303.303 INFO    ] ================================================
[2026-08-31 05:45:18,877.877 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:45:18
[2026-08-31 05:45:19,462.462 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:45:19,735.735 INFO    ] Initializing speech engine...
[2026-08-31 05:45:19,741.741 INFO    ] 2026-08-31 05:45:19
[2026-08-31 05:45:19,985.985 INFO    ] 2026-08-31 05:45:19
[2026-08-31 05:45:20,020.020 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:45:20,218.218 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:45:20,276.276 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:45:20,488.488 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:45:20,540.540 INFO    ] time= 31/08/2026 05:45:20
[2026-08-31 05:45:20,546.546 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:45:20,566.566 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:45:20,680.680 INFO    ] No existing commands found in stream
[2026-08-31 05:45:25,702.702 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:45:25,704.704 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-08-31 05:45:27,602.602 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 05:45:27,604.604 INFO    ] Checking for system updates...
[2026-08-31 05:45:27,639.639 INFO    ] 200
[2026-08-31 05:45:27,642.642 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:45:27,693.693 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:45:27,696.696 INFO    ] No update needed
[2026-08-31 05:45:27,698.698 INFO    ] Checking for camera pi updates...
[2026-08-31 05:45:27,731.731 INFO    ] 200
[2026-08-31 05:45:27,734.734 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:45:27,781.781 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:45:27,864.864 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:45:27,867.867 INFO    ] No camera update needed
[2026-08-31 05:45:27,869.869 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:45:27,872.872 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:45:27,877.877 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:45:27,882.882 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:45:29,924.924 INFO    ] ================================================
[2026-08-31 05:45:29,939.939 INFO    ] Launching Daemon at Mon Aug 31 05:45:29 IST 2026
[2026-08-31 05:45:29,950.950 INFO    ] ================================================
[2026-08-31 05:45:30,518.518 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:45:30
[2026-08-31 05:45:31,103.103 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:45:31,352.352 INFO    ] Initializing speech engine...
[2026-08-31 05:45:31,375.375 INFO    ] 2026-08-31 05:45:31
[2026-08-31 05:45:31,651.651 INFO    ] 2026-08-31 05:45:31
[2026-08-31 05:45:31,687.687 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:45:31,956.956 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:45:31,967.967 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:45:32,105.105 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:45:32,113.113 INFO    ] time= 31/08/2026 05:45:32
[2026-08-31 05:45:32,179.179 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:45:32,234.234 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:45:32,393.393 INFO    ] No existing commands found in stream
[2026-08-31 05:45:37,419.419 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:45:37,422.422 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-08-31 05:45:39,382.382 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 05:45:39,384.384 INFO    ] Checking for system updates...
[2026-08-31 05:45:39,425.425 INFO    ] 200
[2026-08-31 05:45:39,428.428 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:45:39,490.490 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:45:39,492.492 INFO    ] No update needed
[2026-08-31 05:45:39,495.495 INFO    ] Checking for camera pi updates...
[2026-08-31 05:45:39,528.528 INFO    ] 200
[2026-08-31 05:45:39,530.530 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:45:39,570.570 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:45:39,677.677 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:45:39,680.680 INFO    ] No camera update needed
[2026-08-31 05:45:39,682.682 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:45:39,684.684 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:45:39,690.690 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:45:39,695.695 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:45:41,736.736 INFO    ] ================================================
[2026-08-31 05:45:41,751.751 INFO    ] Launching Daemon at Mon Aug 31 05:45:41 IST 2026
[2026-08-31 05:45:41,762.762 INFO    ] ================================================
[2026-08-31 05:45:42,332.332 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:45:42
[2026-08-31 05:45:42,935.935 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:45:43,214.214 INFO    ] Initializing speech engine...
[2026-08-31 05:45:43,221.221 INFO    ] 2026-08-31 05:45:43
[2026-08-31 05:45:43,509.509 INFO    ] 2026-08-31 05:45:43
[2026-08-31 05:45:43,546.546 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:45:43,774.774 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:45:43,789.789 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:45:43,983.983 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:45:44,000.000 INFO    ] time= 31/08/2026 05:45:43
[2026-08-31 05:45:44,066.066 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:45:44,107.107 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:45:44,268.268 INFO    ] No existing commands found in stream
[2026-08-31 05:45:49,295.295 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:45:49,298.298 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-08-31 05:45:53,089.089 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 05:45:53,092.092 INFO    ] Checking for system updates...
[2026-08-31 05:45:53,128.128 INFO    ] 200
[2026-08-31 05:45:53,130.130 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:45:53,183.183 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:45:53,186.186 INFO    ] No update needed
[2026-08-31 05:45:53,188.188 INFO    ] Checking for camera pi updates...
[2026-08-31 05:45:53,226.226 INFO    ] 200
[2026-08-31 05:45:53,229.229 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:45:53,269.269 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:45:53,352.352 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:45:53,354.354 INFO    ] No camera update needed
[2026-08-31 05:45:53,356.356 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:45:53,359.359 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:45:53,364.364 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:45:53,369.369 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:45:55,410.410 INFO    ] ================================================
[2026-08-31 05:45:55,426.426 INFO    ] Launching Daemon at Mon Aug 31 05:45:55 IST 2026
[2026-08-31 05:45:55,438.438 INFO    ] ================================================
[2026-08-31 05:45:56,005.005 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:45:56
[2026-08-31 05:45:56,586.586 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:45:56,859.859 INFO    ] Initializing speech engine...
[2026-08-31 05:45:56,868.868 INFO    ] 2026-08-31 05:45:56
[2026-08-31 05:45:57,119.119 INFO    ] 2026-08-31 05:45:57
[2026-08-31 05:45:57,182.182 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:45:57,464.464 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:45:57,473.473 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:45:57,667.667 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:45:57,673.673 INFO    ] time= 31/08/2026 05:45:57
[2026-08-31 05:45:57,689.689 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:45:57,719.719 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:45:57,825.825 INFO    ] No existing commands found in stream
[2026-08-31 05:46:02,838.838 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:46:02,841.841 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-08-31 05:46:06,860.860 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 05:46:06,863.863 INFO    ] Checking for system updates...
[2026-08-31 05:46:06,903.903 INFO    ] 200
[2026-08-31 05:46:06,906.906 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:46:06,966.966 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:46:06,969.969 INFO    ] No update needed
[2026-08-31 05:46:06,971.971 INFO    ] Checking for camera pi updates...
[2026-08-31 05:46:07,004.004 INFO    ] 200
[2026-08-31 05:46:07,007.007 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:46:07,047.047 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:46:07,129.129 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:46:07,132.132 INFO    ] No camera update needed
[2026-08-31 05:46:07,134.134 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:46:07,136.136 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:46:07,142.142 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:46:07,147.147 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:46:09,189.189 INFO    ] ================================================
[2026-08-31 05:46:09,205.205 INFO    ] Launching Daemon at Mon Aug 31 05:46:09 IST 2026
[2026-08-31 05:46:09,216.216 INFO    ] ================================================
[2026-08-31 05:46:09,787.787 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:46:09
[2026-08-31 05:46:10,379.379 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:46:10,639.639 INFO    ] Initializing speech engine...
[2026-08-31 05:46:10,653.653 INFO    ] 2026-08-31 05:46:10
[2026-08-31 05:46:10,944.944 INFO    ] 2026-08-31 05:46:10
[2026-08-31 05:46:10,979.979 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:46:11,211.211 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:46:11,218.218 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:46:11,365.365 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:46:11,374.374 INFO    ] time= 31/08/2026 05:46:11
[2026-08-31 05:46:11,381.381 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:46:11,435.435 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:46:11,547.547 INFO    ] No existing commands found in stream
[2026-08-31 05:46:16,572.572 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:46:16,575.575 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-08-31 05:46:20,988.988 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 05:46:20,991.991 INFO    ] Checking for system updates...
[2026-08-31 05:46:21,033.033 INFO    ] 200
[2026-08-31 05:46:21,036.036 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:46:21,090.090 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:46:21,093.093 INFO    ] No update needed
[2026-08-31 05:46:21,095.095 INFO    ] Checking for camera pi updates...
[2026-08-31 05:46:21,131.131 INFO    ] 200
[2026-08-31 05:46:21,134.134 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:46:21,175.175 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:46:21,258.258 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:46:21,261.261 INFO    ] No camera update needed
[2026-08-31 05:46:21,264.264 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:46:21,267.267 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:46:21,273.273 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:46:21,279.279 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:46:23,322.322 INFO    ] ================================================
[2026-08-31 05:46:23,338.338 INFO    ] Launching Daemon at Mon Aug 31 05:46:23 IST 2026
[2026-08-31 05:46:23,350.350 INFO    ] ================================================
[2026-08-31 05:46:23,917.917 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:46:23
[2026-08-31 05:46:24,503.503 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:46:24,775.775 INFO    ] Initializing speech engine...
[2026-08-31 05:46:24,784.784 INFO    ] 2026-08-31 05:46:24
[2026-08-31 05:46:25,041.041 INFO    ] 2026-08-31 05:46:25
[2026-08-31 05:46:25,094.094 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:46:25,316.316 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:46:25,325.325 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:46:25,459.459 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:46:25,504.504 INFO    ] time= 31/08/2026 05:46:25
[2026-08-31 05:46:25,568.568 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:46:25,592.592 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:46:25,722.722 INFO    ] No existing commands found in stream
[2026-08-31 05:46:30,746.746 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:46:30,749.749 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-08-31 05:46:34,701.701 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 05:46:34,703.703 INFO    ] Checking for system updates...
[2026-08-31 05:46:34,740.740 INFO    ] 200
[2026-08-31 05:46:34,743.743 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:46:34,805.805 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:46:34,809.809 INFO    ] No update needed
[2026-08-31 05:46:34,812.812 INFO    ] Checking for camera pi updates...
[2026-08-31 05:46:34,846.846 INFO    ] 200
[2026-08-31 05:46:34,849.849 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:46:34,897.897 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:46:34,999.999 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:46:35,002.002 INFO    ] No camera update needed
[2026-08-31 05:46:35,005.005 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:46:35,008.008 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:46:35,014.014 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:46:35,020.020 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:46:37,063.063 INFO    ] ================================================
[2026-08-31 05:46:37,079.079 INFO    ] Launching Daemon at Mon Aug 31 05:46:37 IST 2026
[2026-08-31 05:46:37,091.091 INFO    ] ================================================
[2026-08-31 05:46:37,675.675 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:46:37
[2026-08-31 05:46:38,271.271 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:46:38,523.523 INFO    ] Initializing speech engine...
[2026-08-31 05:46:38,547.547 INFO    ] 2026-08-31 05:46:38
[2026-08-31 05:46:38,806.806 INFO    ] 2026-08-31 05:46:38
[2026-08-31 05:46:38,842.842 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:46:39,043.043 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:46:39,104.104 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:46:39,252.252 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:46:39,312.312 INFO    ] time= 31/08/2026 05:46:39
[2026-08-31 05:46:39,371.371 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:46:39,381.381 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:46:39,512.512 INFO    ] No existing commands found in stream
[2026-08-31 05:46:44,536.536 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:46:44,539.539 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-08-31 05:46:47,807.807 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 05:46:47,810.810 INFO    ] Checking for system updates...
[2026-08-31 05:46:47,850.850 INFO    ] 200
[2026-08-31 05:46:47,853.853 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:46:47,914.914 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:46:47,916.916 INFO    ] No update needed
[2026-08-31 05:46:47,919.919 INFO    ] Checking for camera pi updates...
[2026-08-31 05:46:47,957.957 INFO    ] 200
[2026-08-31 05:46:47,959.959 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:46:48,001.001 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:46:48,088.088 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:46:48,091.091 INFO    ] No camera update needed
[2026-08-31 05:46:48,094.094 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:46:48,097.097 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:46:48,103.103 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:46:48,109.109 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:46:50,153.153 INFO    ] ================================================
[2026-08-31 05:46:50,168.168 INFO    ] Launching Daemon at Mon Aug 31 05:46:50 IST 2026
[2026-08-31 05:46:50,180.180 INFO    ] ================================================
[2026-08-31 05:46:50,853.853 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:46:50
[2026-08-31 05:46:51,547.547 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:46:51,862.862 INFO    ] Initializing speech engine...
[2026-08-31 05:46:51,874.874 INFO    ] 2026-08-31 05:46:51
[2026-08-31 05:46:52,187.187 INFO    ] 2026-08-31 05:46:52
[2026-08-31 05:46:52,273.273 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:46:52,488.488 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:46:52,494.494 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:46:52,688.688 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:46:52,697.697 INFO    ] time= 31/08/2026 05:46:52
[2026-08-31 05:46:52,715.715 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:46:52,739.739 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:46:52,854.854 INFO    ] No existing commands found in stream
[2026-08-31 05:46:57,883.883 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:46:57,887.887 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-08-31 05:47:00,700.700 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 05:47:00,704.704 INFO    ] Checking for system updates...
[2026-08-31 05:47:00,740.740 INFO    ] 200
[2026-08-31 05:47:00,743.743 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:47:00,798.798 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:47:00,801.801 INFO    ] No update needed
[2026-08-31 05:47:00,804.804 INFO    ] Checking for camera pi updates...
[2026-08-31 05:47:00,839.839 INFO    ] 200
[2026-08-31 05:47:00,842.842 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:47:00,884.884 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:47:00,984.984 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:47:00,986.986 INFO    ] No camera update needed
[2026-08-31 05:47:00,990.990 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:47:00,992.992 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:47:00,999.999 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:47:01,005.005 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:47:03,052.052 INFO    ] ================================================
[2026-08-31 05:47:03,070.070 INFO    ] Launching Daemon at Mon Aug 31 05:47:03 IST 2026
[2026-08-31 05:47:03,084.084 INFO    ] ================================================
[2026-08-31 05:47:03,747.747 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:47:03
[2026-08-31 05:47:04,436.436 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:47:04,741.741 INFO    ] Initializing speech engine...
[2026-08-31 05:47:04,751.751 INFO    ] 2026-08-31 05:47:04
[2026-08-31 05:47:05,026.026 INFO    ] 2026-08-31 05:47:05
[2026-08-31 05:47:05,084.084 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:47:05,308.308 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:47:05,314.314 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:47:05,528.528 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:47:05,574.574 INFO    ] time= 31/08/2026 05:47:05
[2026-08-31 05:47:05,595.595 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:47:05,618.618 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:47:05,731.731 INFO    ] No existing commands found in stream
[2026-08-31 05:47:10,745.745 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:47:10,749.749 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-08-31 05:47:11,371.371 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 05:47:11,374.374 INFO    ] Checking for system updates...
[2026-08-31 05:47:11,410.410 INFO    ] 200
[2026-08-31 05:47:11,413.413 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:47:11,465.465 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:47:11,468.468 INFO    ] No update needed
[2026-08-31 05:47:11,470.470 INFO    ] Checking for camera pi updates...
[2026-08-31 05:47:11,503.503 INFO    ] 200
[2026-08-31 05:47:11,506.506 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:47:11,552.552 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:47:11,632.632 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:47:11,635.635 INFO    ] No camera update needed
[2026-08-31 05:47:11,637.637 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:47:11,639.639 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:47:11,644.644 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:47:11,649.649 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:47:13,689.689 INFO    ] ================================================
[2026-08-31 05:47:13,705.705 INFO    ] Launching Daemon at Mon Aug 31 05:47:13 IST 2026
[2026-08-31 05:47:13,716.716 INFO    ] ================================================
[2026-08-31 05:47:14,321.321 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:47:14
[2026-08-31 05:47:15,010.010 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:47:15,319.319 INFO    ] Initializing speech engine...
[2026-08-31 05:47:15,327.327 INFO    ] 2026-08-31 05:47:15
[2026-08-31 05:47:15,620.620 INFO    ] 2026-08-31 05:47:15
[2026-08-31 05:47:15,665.665 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:47:15,915.915 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:47:15,935.935 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:47:16,152.152 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:47:16,172.172 INFO    ] time= 31/08/2026 05:47:16
[2026-08-31 05:47:16,204.204 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:47:16,214.214 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:47:16,316.316 INFO    ] No existing commands found in stream
[2026-08-31 05:47:21,340.340 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:47:21,344.344 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-08-31 05:47:24,142.142 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 05:47:24,145.145 INFO    ] Checking for system updates...
[2026-08-31 05:47:24,187.187 INFO    ] 200
[2026-08-31 05:47:24,190.190 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:47:24,253.253 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:47:24,256.256 INFO    ] No update needed
[2026-08-31 05:47:24,259.259 INFO    ] Checking for camera pi updates...
[2026-08-31 05:47:24,300.300 INFO    ] 200
[2026-08-31 05:47:24,303.303 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:47:24,344.344 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:47:24,434.434 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:47:24,437.437 INFO    ] No camera update needed
[2026-08-31 05:47:24,440.440 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:47:24,443.443 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:47:24,449.449 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:47:24,455.455 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:47:26,498.498 INFO    ] ================================================
[2026-08-31 05:47:26,513.513 INFO    ] Launching Daemon at Mon Aug 31 05:47:26 IST 2026
[2026-08-31 05:47:26,524.524 INFO    ] ================================================
[2026-08-31 05:47:27,198.198 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:47:27
[2026-08-31 05:47:27,887.887 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:47:28,199.199 INFO    ] Initializing speech engine...
[2026-08-31 05:47:28,211.211 INFO    ] 2026-08-31 05:47:28
[2026-08-31 05:47:28,524.524 INFO    ] 2026-08-31 05:47:28
[2026-08-31 05:47:28,609.609 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:47:28,819.819 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:47:28,827.827 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:47:29,023.023 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:47:29,042.042 INFO    ] time= 31/08/2026 05:47:29
[2026-08-31 05:47:29,052.052 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:47:29,081.081 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:47:29,204.204 INFO    ] No existing commands found in stream
[2026-08-31 05:47:34,235.235 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:47:34,238.238 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-08-31 05:47:37,612.612 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 05:47:37,615.615 INFO    ] Checking for system updates...
[2026-08-31 05:47:37,652.652 INFO    ] 200
[2026-08-31 05:47:37,655.655 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:47:37,710.710 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:47:37,712.712 INFO    ] No update needed
[2026-08-31 05:47:37,715.715 INFO    ] Checking for camera pi updates...
[2026-08-31 05:47:37,751.751 INFO    ] 200
[2026-08-31 05:47:37,754.754 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:47:37,795.795 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:47:37,884.884 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:47:37,886.886 INFO    ] No camera update needed
[2026-08-31 05:47:37,890.890 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:47:37,892.892 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:47:37,899.899 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:47:37,905.905 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:47:39,948.948 INFO    ] ================================================
[2026-08-31 05:47:39,964.964 INFO    ] Launching Daemon at Mon Aug 31 05:47:39 IST 2026
[2026-08-31 05:47:39,975.975 INFO    ] ================================================
[2026-08-31 05:47:40,576.576 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:47:40
[2026-08-31 05:47:41,172.172 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:47:41,477.477 INFO    ] Initializing speech engine...
[2026-08-31 05:47:41,489.489 INFO    ] 2026-08-31 05:47:41
[2026-08-31 05:47:41,805.805 INFO    ] 2026-08-31 05:47:41
[2026-08-31 05:47:41,886.886 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:47:42,042.042 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:47:42,049.049 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:47:42,179.179 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:47:42,222.222 INFO    ] time= 31/08/2026 05:47:42
[2026-08-31 05:47:42,292.292 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:47:42,317.317 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:47:42,454.454 INFO    ] No existing commands found in stream
[2026-08-31 05:47:47,478.478 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:47:47,481.481 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-08-31 05:47:49,136.136 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 05:47:49,140.140 INFO    ] Checking for system updates...
[2026-08-31 05:47:49,178.178 INFO    ] 200
[2026-08-31 05:47:49,181.181 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:47:49,236.236 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:47:49,239.239 INFO    ] No update needed
[2026-08-31 05:47:49,242.242 INFO    ] Checking for camera pi updates...
[2026-08-31 05:47:49,276.276 INFO    ] 200
[2026-08-31 05:47:49,279.279 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:47:49,322.322 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:47:49,385.385 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:47:49,388.388 INFO    ] No camera update needed
[2026-08-31 05:47:49,396.396 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:47:49,398.398 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:47:49,403.403 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:47:49,408.408 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:47:51,452.452 INFO    ] ================================================
[2026-08-31 05:47:51,467.467 INFO    ] Launching Daemon at Mon Aug 31 05:47:51 IST 2026
[2026-08-31 05:47:51,479.479 INFO    ] ================================================
[2026-08-31 05:47:52,157.157 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:47:52
[2026-08-31 05:47:52,856.856 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:47:53,169.169 INFO    ] Initializing speech engine...
[2026-08-31 05:47:53,176.176 INFO    ] 2026-08-31 05:47:53
[2026-08-31 05:47:53,466.466 INFO    ] 2026-08-31 05:47:53
[2026-08-31 05:47:53,523.523 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:47:53,740.740 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:47:53,746.746 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:47:53,978.978 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:47:54,007.007 INFO    ] time= 31/08/2026 05:47:53
[2026-08-31 05:47:54,023.023 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:47:54,048.048 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:47:54,201.201 INFO    ] No existing commands found in stream
[2026-08-31 05:47:59,233.233 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:47:59,236.236 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-08-31 05:48:02,969.969 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 05:48:02,973.973 INFO    ] Checking for system updates...
[2026-08-31 05:48:03,017.017 INFO    ] 200
[2026-08-31 05:48:03,020.020 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:48:03,079.079 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:48:03,082.082 INFO    ] No update needed
[2026-08-31 05:48:03,086.086 INFO    ] Checking for camera pi updates...
[2026-08-31 05:48:03,123.123 INFO    ] 200
[2026-08-31 05:48:03,125.125 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:48:03,168.168 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:48:03,256.256 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:48:03,259.259 INFO    ] No camera update needed
[2026-08-31 05:48:03,262.262 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:48:03,264.264 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:48:03,271.271 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:48:03,277.277 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:48:05,320.320 INFO    ] ================================================
[2026-08-31 05:48:05,337.337 INFO    ] Launching Daemon at Mon Aug 31 05:48:05 IST 2026
[2026-08-31 05:48:05,348.348 INFO    ] ================================================
[2026-08-31 05:48:05,912.912 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:48:05
[2026-08-31 05:48:06,511.511 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:48:06,768.768 INFO    ] Initializing speech engine...
[2026-08-31 05:48:06,774.774 INFO    ] 2026-08-31 05:48:06
[2026-08-31 05:48:07,075.075 INFO    ] 2026-08-31 05:48:07
[2026-08-31 05:48:07,110.110 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:48:07,308.308 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:48:07,318.318 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:48:07,498.498 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:48:07,506.506 INFO    ] time= 31/08/2026 05:48:07
[2026-08-31 05:48:07,511.511 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:48:07,518.518 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:48:07,595.595 INFO    ] No existing commands found in stream
[2026-08-31 05:48:12,620.620 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:48:12,623.623 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-08-31 05:48:14,306.306 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 05:48:14,309.309 INFO    ] Checking for system updates...
[2026-08-31 05:48:14,344.344 INFO    ] 200
[2026-08-31 05:48:14,347.347 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:48:14,408.408 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:48:14,410.410 INFO    ] No update needed
[2026-08-31 05:48:14,412.412 INFO    ] Checking for camera pi updates...
[2026-08-31 05:48:14,447.447 INFO    ] 200
[2026-08-31 05:48:14,449.449 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:48:14,490.490 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:48:14,574.574 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:48:14,576.576 INFO    ] No camera update needed
[2026-08-31 05:48:14,579.579 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:48:14,581.581 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:48:14,586.586 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:48:14,591.591 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:48:16,634.634 INFO    ] ================================================
[2026-08-31 05:48:16,650.650 INFO    ] Launching Daemon at Mon Aug 31 05:48:16 IST 2026
[2026-08-31 05:48:16,662.662 INFO    ] ================================================
[2026-08-31 05:48:17,239.239 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:48:17
[2026-08-31 05:48:17,825.825 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:48:18,092.092 INFO    ] Initializing speech engine...
[2026-08-31 05:48:18,102.102 INFO    ] 2026-08-31 05:48:18
[2026-08-31 05:48:18,360.360 INFO    ] 2026-08-31 05:48:18
[2026-08-31 05:48:18,413.413 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:48:18,635.635 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:48:18,645.645 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:48:18,776.776 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:48:18,823.823 INFO    ] time= 31/08/2026 05:48:18
[2026-08-31 05:48:18,882.882 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:48:18,911.911 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:48:18,998.998 INFO    ] No existing commands found in stream
[2026-08-31 05:48:24,029.029 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:48:24,032.032 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-08-31 05:48:25,127.127 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 05:48:25,130.130 INFO    ] Checking for system updates...
[2026-08-31 05:48:25,167.167 INFO    ] 200
[2026-08-31 05:48:25,170.170 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:48:25,224.224 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:48:25,227.227 INFO    ] No update needed
[2026-08-31 05:48:25,230.230 INFO    ] Checking for camera pi updates...
[2026-08-31 05:48:25,264.264 INFO    ] 200
[2026-08-31 05:48:25,267.267 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:48:25,310.310 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:48:25,388.388 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:48:25,391.391 INFO    ] No camera update needed
[2026-08-31 05:48:25,393.393 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:48:25,396.396 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:48:25,403.403 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:48:25,408.408 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:48:27,452.452 INFO    ] ================================================
[2026-08-31 05:48:27,468.468 INFO    ] Launching Daemon at Mon Aug 31 05:48:27 IST 2026
[2026-08-31 05:48:27,479.479 INFO    ] ================================================
[2026-08-31 05:48:28,141.141 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:48:28
[2026-08-31 05:48:28,824.824 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:48:29,141.141 INFO    ] Initializing speech engine...
[2026-08-31 05:48:29,146.146 INFO    ] 2026-08-31 05:48:29
[2026-08-31 05:48:29,431.431 INFO    ] 2026-08-31 05:48:29
[2026-08-31 05:48:29,476.476 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:48:29,710.710 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:48:29,715.715 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:48:29,875.875 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:48:29,926.926 INFO    ] time= 31/08/2026 05:48:29
[2026-08-31 05:48:29,991.991 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:48:30,001.001 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:48:30,132.132 INFO    ] No existing commands found in stream
[2026-08-31 05:48:35,157.157 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:48:35,161.161 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-08-31 05:48:39,284.284 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 05:48:39,287.287 INFO    ] Checking for system updates...
[2026-08-31 05:48:39,325.325 INFO    ] 200
[2026-08-31 05:48:39,328.328 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:48:39,382.382 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:48:39,385.385 INFO    ] No update needed
[2026-08-31 05:48:39,388.388 INFO    ] Checking for camera pi updates...
[2026-08-31 05:48:39,425.425 INFO    ] 200
[2026-08-31 05:48:39,428.428 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:48:39,470.470 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:48:39,677.677 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:48:39,680.680 INFO    ] No camera update needed
[2026-08-31 05:48:39,683.683 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:48:39,685.685 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:48:39,691.691 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:48:39,696.696 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:48:41,739.739 INFO    ] ================================================
[2026-08-31 05:48:41,755.755 INFO    ] Launching Daemon at Mon Aug 31 05:48:41 IST 2026
[2026-08-31 05:48:41,765.765 INFO    ] ================================================
[2026-08-31 05:48:42,332.332 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:48:42
[2026-08-31 05:48:42,914.914 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:48:43,182.182 INFO    ] Initializing speech engine...
[2026-08-31 05:48:43,191.191 INFO    ] 2026-08-31 05:48:43
[2026-08-31 05:48:43,436.436 INFO    ] 2026-08-31 05:48:43
[2026-08-31 05:48:43,472.472 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:48:43,727.727 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:48:43,731.731 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:48:43,865.865 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:48:43,905.905 INFO    ] time= 31/08/2026 05:48:43
[2026-08-31 05:48:43,944.944 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:48:43,995.995 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:48:44,133.133 INFO    ] No existing commands found in stream
[2026-08-31 05:48:49,152.152 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:48:49,155.155 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-08-31 05:48:50,981.981 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 05:48:50,984.984 INFO    ] Checking for system updates...
[2026-08-31 05:48:51,024.024 INFO    ] 200
[2026-08-31 05:48:51,026.026 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:48:51,081.081 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:48:51,084.084 INFO    ] No update needed
[2026-08-31 05:48:51,086.086 INFO    ] Checking for camera pi updates...
[2026-08-31 05:48:51,120.120 INFO    ] 200
[2026-08-31 05:48:51,122.122 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:48:51,162.162 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:48:51,248.248 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:48:51,250.250 INFO    ] No camera update needed
[2026-08-31 05:48:51,253.253 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:48:51,255.255 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:48:51,260.260 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:48:51,265.265 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:48:53,305.305 INFO    ] ================================================
[2026-08-31 05:48:53,321.321 INFO    ] Launching Daemon at Mon Aug 31 05:48:53 IST 2026
[2026-08-31 05:48:53,331.331 INFO    ] ================================================
[2026-08-31 05:48:53,914.914 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:48:53
[2026-08-31 05:48:54,497.497 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:48:54,759.759 INFO    ] Initializing speech engine...
[2026-08-31 05:48:54,772.772 INFO    ] 2026-08-31 05:48:54
[2026-08-31 05:48:55,065.065 INFO    ] 2026-08-31 05:48:55
[2026-08-31 05:48:55,101.101 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:48:55,352.352 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:48:55,361.361 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:48:55,496.496 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:48:55,562.562 INFO    ] time= 31/08/2026 05:48:55
[2026-08-31 05:48:55,622.622 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:48:55,631.631 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:48:55,761.761 INFO    ] No existing commands found in stream
[2026-08-31 05:49:00,785.785 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:49:00,788.788 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-08-31 05:49:01,816.816 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 05:49:01,820.820 INFO    ] Checking for system updates...
[2026-08-31 05:49:01,863.863 INFO    ] 200
[2026-08-31 05:49:01,866.866 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:49:01,933.933 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:49:01,935.935 INFO    ] No update needed
[2026-08-31 05:49:01,938.938 INFO    ] Checking for camera pi updates...
[2026-08-31 05:49:01,979.979 INFO    ] 200
[2026-08-31 05:49:01,982.982 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:49:02,027.027 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:49:02,098.098 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:49:02,101.101 INFO    ] No camera update needed
[2026-08-31 05:49:02,104.104 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:49:02,107.107 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:49:02,114.114 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:49:02,121.121 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:49:04,163.163 INFO    ] ================================================
[2026-08-31 05:49:04,178.178 INFO    ] Launching Daemon at Mon Aug 31 05:49:04 IST 2026
[2026-08-31 05:49:04,189.189 INFO    ] ================================================
[2026-08-31 05:49:04,873.873 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:49:04
[2026-08-31 05:49:05,572.572 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:49:05,890.890 INFO    ] Initializing speech engine...
[2026-08-31 05:49:05,904.904 INFO    ] 2026-08-31 05:49:05
[2026-08-31 05:49:06,239.239 INFO    ] 2026-08-31 05:49:06
[2026-08-31 05:49:06,321.321 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:49:06,526.526 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:49:06,531.531 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:49:06,688.688 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:49:06,710.710 INFO    ] time= 31/08/2026 05:49:06
[2026-08-31 05:49:06,764.764 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:49:06,803.803 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:49:06,897.897 INFO    ] No existing commands found in stream
[2026-08-31 05:49:11,913.913 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:49:11,916.916 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-08-31 05:49:13,364.364 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 05:49:13,366.366 INFO    ] Checking for system updates...
[2026-08-31 05:49:13,407.407 INFO    ] 200
[2026-08-31 05:49:13,410.410 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:49:13,461.461 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:49:13,464.464 INFO    ] No update needed
[2026-08-31 05:49:13,466.466 INFO    ] Checking for camera pi updates...
[2026-08-31 05:49:13,505.505 INFO    ] 200
[2026-08-31 05:49:13,508.508 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:49:13,549.549 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:49:13,653.653 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:49:13,656.656 INFO    ] No camera update needed
[2026-08-31 05:49:13,658.658 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:49:13,661.661 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:49:13,666.666 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:49:13,671.671 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:49:15,712.712 INFO    ] ================================================
[2026-08-31 05:49:15,728.728 INFO    ] Launching Daemon at Mon Aug 31 05:49:15 IST 2026
[2026-08-31 05:49:15,739.739 INFO    ] ================================================
[2026-08-31 05:49:16,414.414 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:49:16
[2026-08-31 05:49:17,110.110 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:49:17,424.424 INFO    ] Initializing speech engine...
[2026-08-31 05:49:17,437.437 INFO    ] 2026-08-31 05:49:17
[2026-08-31 05:49:17,717.717 INFO    ] 2026-08-31 05:49:17
[2026-08-31 05:49:17,772.772 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:49:18,005.005 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:49:18,012.012 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:49:18,149.149 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:49:18,209.209 INFO    ] time= 31/08/2026 05:49:18
[2026-08-31 05:49:18,269.269 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:49:18,287.287 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:49:18,405.405 INFO    ] No existing commands found in stream
[2026-08-31 05:49:23,438.438 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:49:23,442.442 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-08-31 05:49:26,381.381 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 05:49:26,384.384 INFO    ] Checking for system updates...
[2026-08-31 05:49:26,426.426 INFO    ] 200
[2026-08-31 05:49:26,428.428 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:49:26,489.489 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:49:26,491.491 INFO    ] No update needed
[2026-08-31 05:49:26,494.494 INFO    ] Checking for camera pi updates...
[2026-08-31 05:49:26,532.532 INFO    ] 200
[2026-08-31 05:49:26,535.535 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:49:26,575.575 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:49:26,658.658 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:49:26,660.660 INFO    ] No camera update needed
[2026-08-31 05:49:26,662.662 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:49:26,665.665 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:49:26,670.670 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:49:26,675.675 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:49:28,714.714 INFO    ] ================================================
[2026-08-31 05:49:28,730.730 INFO    ] Launching Daemon at Mon Aug 31 05:49:28 IST 2026
[2026-08-31 05:49:28,741.741 INFO    ] ================================================
[2026-08-31 05:49:29,305.305 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:49:29
[2026-08-31 05:49:29,887.887 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:49:30,157.157 INFO    ] Initializing speech engine...
[2026-08-31 05:49:30,166.166 INFO    ] 2026-08-31 05:49:30
[2026-08-31 05:49:30,428.428 INFO    ] 2026-08-31 05:49:30
[2026-08-31 05:49:30,480.480 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:49:30,702.702 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:49:30,711.711 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:49:30,921.921 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:49:30,971.971 INFO    ] time= 31/08/2026 05:49:30
[2026-08-31 05:49:30,977.977 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:49:30,995.995 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:49:31,123.123 INFO    ] No existing commands found in stream
[2026-08-31 05:49:36,138.138 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:49:36,140.140 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-08-31 05:49:36,680.680 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 05:49:36,683.683 INFO    ] Checking for system updates...
[2026-08-31 05:49:36,719.719 INFO    ] 200
[2026-08-31 05:49:36,721.721 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:49:36,779.779 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:49:36,782.782 INFO    ] No update needed
[2026-08-31 05:49:36,784.784 INFO    ] Checking for camera pi updates...
[2026-08-31 05:49:36,818.818 INFO    ] 200
[2026-08-31 05:49:36,821.821 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:49:36,861.861 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:49:36,965.965 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:49:36,967.967 INFO    ] No camera update needed
[2026-08-31 05:49:36,970.970 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:49:36,972.972 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:49:36,977.977 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:49:36,982.982 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:49:39,024.024 INFO    ] ================================================
[2026-08-31 05:49:39,040.040 INFO    ] Launching Daemon at Mon Aug 31 05:49:39 IST 2026
[2026-08-31 05:49:39,051.051 INFO    ] ================================================
[2026-08-31 05:49:39,616.616 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:49:39
[2026-08-31 05:49:40,198.198 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:49:40,476.476 INFO    ] Initializing speech engine...
[2026-08-31 05:49:40,483.483 INFO    ] 2026-08-31 05:49:40
[2026-08-31 05:49:40,738.738 INFO    ] 2026-08-31 05:49:40
[2026-08-31 05:49:40,783.783 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:49:41,045.045 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:49:41,051.051 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:49:41,286.286 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:49:41,317.317 INFO    ] time= 31/08/2026 05:49:41
[2026-08-31 05:49:41,334.334 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:49:41,343.343 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:49:41,474.474 INFO    ] No existing commands found in stream
[2026-08-31 05:49:46,497.497 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:49:46,500.500 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-08-31 05:49:49,423.423 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 05:49:49,426.426 INFO    ] Checking for system updates...
[2026-08-31 05:49:49,461.461 INFO    ] 200
[2026-08-31 05:49:49,463.463 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:49:49,524.524 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:49:49,526.526 INFO    ] No update needed
[2026-08-31 05:49:49,528.528 INFO    ] Checking for camera pi updates...
[2026-08-31 05:49:49,562.562 INFO    ] 200
[2026-08-31 05:49:49,565.565 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:49:49,605.605 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:49:49,703.703 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:49:49,705.705 INFO    ] No camera update needed
[2026-08-31 05:49:49,707.707 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:49:49,710.710 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:49:49,715.715 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:49:49,720.720 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:49:51,759.759 INFO    ] ================================================
[2026-08-31 05:49:51,774.774 INFO    ] Launching Daemon at Mon Aug 31 05:49:51 IST 2026
[2026-08-31 05:49:51,785.785 INFO    ] ================================================
[2026-08-31 05:49:52,370.370 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:49:52
[2026-08-31 05:49:52,971.971 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:49:53,234.234 INFO    ] Initializing speech engine...
[2026-08-31 05:49:53,253.253 INFO    ] 2026-08-31 05:49:53
[2026-08-31 05:49:53,502.502 INFO    ] 2026-08-31 05:49:53
[2026-08-31 05:49:53,538.538 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:49:53,796.796 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:49:53,818.818 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:49:54,001.001 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:49:54,058.058 INFO    ] time= 31/08/2026 05:49:54
[2026-08-31 05:49:54,065.065 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:49:54,082.082 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:49:54,198.198 INFO    ] No existing commands found in stream
[2026-08-31 05:49:59,222.222 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:49:59,225.225 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-08-31 05:50:02,309.309 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 05:50:02,314.314 INFO    ] Checking for system updates...
[2026-08-31 05:50:02,370.370 INFO    ] 200
[2026-08-31 05:50:02,374.374 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:50:02,470.470 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:50:02,474.474 INFO    ] No update needed
[2026-08-31 05:50:02,477.477 INFO    ] Checking for camera pi updates...
[2026-08-31 05:50:02,528.528 INFO    ] 200
[2026-08-31 05:50:02,531.531 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:50:02,581.581 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:50:02,777.777 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:50:02,780.780 INFO    ] No camera update needed
[2026-08-31 05:50:02,783.783 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:50:02,786.786 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:50:02,793.793 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:50:02,799.799 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:50:04,841.841 INFO    ] ================================================
[2026-08-31 05:50:04,856.856 INFO    ] Launching Daemon at Mon Aug 31 05:50:04 IST 2026
[2026-08-31 05:50:04,868.868 INFO    ] ================================================
[2026-08-31 05:50:05,440.440 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:50:05
[2026-08-31 05:50:06,028.028 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:50:06,275.275 INFO    ] Initializing speech engine...
[2026-08-31 05:50:06,290.290 INFO    ] 2026-08-31 05:50:06
[2026-08-31 05:50:06,553.553 INFO    ] 2026-08-31 05:50:06
[2026-08-31 05:50:06,600.600 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:50:06,864.864 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:50:06,875.875 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:50:07,104.104 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:50:07,134.134 INFO    ] time= 31/08/2026 05:50:07
[2026-08-31 05:50:07,140.140 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:50:07,162.162 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:50:07,325.325 INFO    ] No existing commands found in stream
[2026-08-31 05:50:12,350.350 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:50:12,353.353 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-08-31 05:50:14,680.680 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 05:50:14,683.683 INFO    ] Checking for system updates...
[2026-08-31 05:50:14,720.720 INFO    ] 200
[2026-08-31 05:50:14,722.722 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:50:14,783.783 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:50:14,785.785 INFO    ] No update needed
[2026-08-31 05:50:14,788.788 INFO    ] Checking for camera pi updates...
[2026-08-31 05:50:14,823.823 INFO    ] 200
[2026-08-31 05:50:14,826.826 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:50:14,872.872 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:50:14,960.960 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:50:14,963.963 INFO    ] No camera update needed
[2026-08-31 05:50:14,965.965 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:50:14,968.968 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:50:14,974.974 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:50:14,980.980 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:50:17,023.023 INFO    ] ================================================
[2026-08-31 05:50:17,039.039 INFO    ] Launching Daemon at Mon Aug 31 05:50:17 IST 2026
[2026-08-31 05:50:17,050.050 INFO    ] ================================================
[2026-08-31 05:50:17,714.714 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:50:17
[2026-08-31 05:50:18,399.399 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:50:18,705.705 INFO    ] Initializing speech engine...
[2026-08-31 05:50:18,719.719 INFO    ] 2026-08-31 05:50:18
[2026-08-31 05:50:18,989.989 INFO    ] 2026-08-31 05:50:18
[2026-08-31 05:50:19,045.045 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:50:19,271.271 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:50:19,277.277 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:50:19,491.491 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:50:19,535.535 INFO    ] time= 31/08/2026 05:50:19
[2026-08-31 05:50:19,542.542 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:50:19,564.564 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:50:19,715.715 INFO    ] No existing commands found in stream
[2026-08-31 05:50:24,746.746 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:50:24,750.750 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-08-31 05:50:25,920.920 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 05:50:25,923.923 INFO    ] Checking for system updates...
[2026-08-31 05:50:25,959.959 INFO    ] 200
[2026-08-31 05:50:25,961.961 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:50:26,020.020 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:50:26,023.023 INFO    ] No update needed
[2026-08-31 05:50:26,025.025 INFO    ] Checking for camera pi updates...
[2026-08-31 05:50:26,062.062 INFO    ] 200
[2026-08-31 05:50:26,065.065 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:50:26,111.111 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:50:26,195.195 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:50:26,197.197 INFO    ] No camera update needed
[2026-08-31 05:50:26,200.200 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:50:26,202.202 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:50:26,207.207 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:50:26,212.212 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:50:28,253.253 INFO    ] ================================================
[2026-08-31 05:50:28,268.268 INFO    ] Launching Daemon at Mon Aug 31 05:50:28 IST 2026
[2026-08-31 05:50:28,280.280 INFO    ] ================================================
[2026-08-31 05:50:28,941.941 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:50:28
[2026-08-31 05:50:29,623.623 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:50:29,938.938 INFO    ] Initializing speech engine...
[2026-08-31 05:50:29,944.944 INFO    ] 2026-08-31 05:50:29
[2026-08-31 05:50:30,232.232 INFO    ] 2026-08-31 05:50:30
[2026-08-31 05:50:30,271.271 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:50:30,496.496 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:50:30,503.503 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:50:30,730.730 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:50:30,762.762 INFO    ] time= 31/08/2026 05:50:30
[2026-08-31 05:50:30,768.768 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:50:30,790.790 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:50:30,921.921 INFO    ] No existing commands found in stream
[2026-08-31 05:50:35,940.940 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:50:35,943.943 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-08-31 05:50:37,735.735 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 05:50:37,738.738 INFO    ] Checking for system updates...
[2026-08-31 05:50:37,778.778 INFO    ] 200
[2026-08-31 05:50:37,781.781 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:50:37,833.833 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:50:37,835.835 INFO    ] No update needed
[2026-08-31 05:50:37,838.838 INFO    ] Checking for camera pi updates...
[2026-08-31 05:50:37,871.871 INFO    ] 200
[2026-08-31 05:50:37,874.874 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:50:37,914.914 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:50:38,017.017 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:50:38,020.020 INFO    ] No camera update needed
[2026-08-31 05:50:38,022.022 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:50:38,024.024 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:50:38,030.030 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:50:38,035.035 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:50:40,074.074 INFO    ] ================================================
[2026-08-31 05:50:40,090.090 INFO    ] Launching Daemon at Mon Aug 31 05:50:40 IST 2026
[2026-08-31 05:50:40,101.101 INFO    ] ================================================
[2026-08-31 05:50:40,681.681 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:50:40
[2026-08-31 05:50:41,265.265 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:50:41,522.522 INFO    ] Initializing speech engine...
[2026-08-31 05:50:41,530.530 INFO    ] 2026-08-31 05:50:41
[2026-08-31 05:50:41,830.830 INFO    ] 2026-08-31 05:50:41
[2026-08-31 05:50:41,856.856 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:50:42,069.069 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:50:42,073.073 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:50:42,254.254 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:50:42,261.261 INFO    ] time= 31/08/2026 05:50:42
[2026-08-31 05:50:42,267.267 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:50:42,274.274 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:50:42,362.362 INFO    ] No existing commands found in stream
[2026-08-31 05:50:47,397.397 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:50:47,400.400 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-08-31 05:50:51,202.202 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 05:50:51,204.204 INFO    ] Checking for system updates...
[2026-08-31 05:50:51,240.240 INFO    ] 200
[2026-08-31 05:50:51,243.243 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:50:51,294.294 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:50:51,297.297 INFO    ] No update needed
[2026-08-31 05:50:51,300.300 INFO    ] Checking for camera pi updates...
[2026-08-31 05:50:51,334.334 INFO    ] 200
[2026-08-31 05:50:51,336.336 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:50:51,378.378 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:50:51,560.560 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:50:51,562.562 INFO    ] No camera update needed
[2026-08-31 05:50:51,564.564 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:50:51,567.567 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:50:51,572.572 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:50:51,577.577 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:50:53,618.618 INFO    ] ================================================
[2026-08-31 05:50:53,633.633 INFO    ] Launching Daemon at Mon Aug 31 05:50:53 IST 2026
[2026-08-31 05:50:53,645.645 INFO    ] ================================================
[2026-08-31 05:50:54,227.227 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:50:54
[2026-08-31 05:50:54,826.826 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:50:55,082.082 INFO    ] Initializing speech engine...
[2026-08-31 05:50:55,089.089 INFO    ] 2026-08-31 05:50:55
[2026-08-31 05:50:55,400.400 INFO    ] 2026-08-31 05:50:55
[2026-08-31 05:50:55,425.425 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:50:55,598.598 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:50:55,638.638 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:50:55,805.805 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:50:55,828.828 INFO    ] time= 31/08/2026 05:50:55
[2026-08-31 05:50:55,835.835 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:50:55,840.840 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:50:55,921.921 INFO    ] No existing commands found in stream
[2026-08-31 05:51:00,946.946 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:51:00,949.949 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-08-31 05:51:04,503.503 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 05:51:04,506.506 INFO    ] Checking for system updates...
[2026-08-31 05:51:04,546.546 INFO    ] 200
[2026-08-31 05:51:04,548.548 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:51:04,608.608 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:51:04,611.611 INFO    ] No update needed
[2026-08-31 05:51:04,613.613 INFO    ] Checking for camera pi updates...
[2026-08-31 05:51:04,647.647 INFO    ] 200
[2026-08-31 05:51:04,650.650 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:51:04,690.690 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:51:04,793.793 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:51:04,796.796 INFO    ] No camera update needed
[2026-08-31 05:51:04,798.798 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:51:04,801.801 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:51:04,806.806 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:51:04,811.811 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:51:06,850.850 INFO    ] ================================================
[2026-08-31 05:51:06,865.865 INFO    ] Launching Daemon at Mon Aug 31 05:51:06 IST 2026
[2026-08-31 05:51:06,876.876 INFO    ] ================================================
[2026-08-31 05:51:07,444.444 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:51:07
[2026-08-31 05:51:08,032.032 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:51:08,310.310 INFO    ] Initializing speech engine...
[2026-08-31 05:51:08,319.319 INFO    ] 2026-08-31 05:51:08
[2026-08-31 05:51:08,588.588 INFO    ] 2026-08-31 05:51:08
[2026-08-31 05:51:08,626.626 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:51:08,850.850 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:51:08,888.888 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:51:09,082.082 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:51:09,117.117 INFO    ] time= 31/08/2026 05:51:09
[2026-08-31 05:51:09,166.166 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:51:09,215.215 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:51:09,287.287 INFO    ] No existing commands found in stream
[2026-08-31 05:51:14,299.299 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:51:14,302.302 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-08-31 05:51:15,846.846 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 05:51:15,849.849 INFO    ] Checking for system updates...
[2026-08-31 05:51:15,884.884 INFO    ] 200
[2026-08-31 05:51:15,886.886 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:51:15,941.941 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:51:15,943.943 INFO    ] No update needed
[2026-08-31 05:51:15,946.946 INFO    ] Checking for camera pi updates...
[2026-08-31 05:51:15,979.979 INFO    ] 200
[2026-08-31 05:51:15,982.982 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:51:16,022.022 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:51:16,107.107 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:51:16,109.109 INFO    ] No camera update needed
[2026-08-31 05:51:16,112.112 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:51:16,114.114 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:51:16,119.119 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:51:16,124.124 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:51:18,164.164 INFO    ] ================================================
[2026-08-31 05:51:18,180.180 INFO    ] Launching Daemon at Mon Aug 31 05:51:18 IST 2026
[2026-08-31 05:51:18,191.191 INFO    ] ================================================
[2026-08-31 05:51:18,773.773 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:51:18
[2026-08-31 05:51:19,373.373 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:51:19,652.652 INFO    ] Initializing speech engine...
[2026-08-31 05:51:19,661.661 INFO    ] 2026-08-31 05:51:19
[2026-08-31 05:51:19,920.920 INFO    ] 2026-08-31 05:51:19
[2026-08-31 05:51:19,951.951 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:51:20,195.195 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:51:20,204.204 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:51:20,344.344 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:51:20,410.410 INFO    ] time= 31/08/2026 05:51:20
[2026-08-31 05:51:20,472.472 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:51:20,479.479 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:51:20,614.614 INFO    ] No existing commands found in stream
[2026-08-31 05:51:25,640.640 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:51:25,643.643 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-08-31 05:51:28,078.078 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 05:51:28,080.080 INFO    ] Checking for system updates...
[2026-08-31 05:51:28,116.116 INFO    ] 200
[2026-08-31 05:51:28,119.119 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:51:28,172.172 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:51:28,175.175 INFO    ] No update needed
[2026-08-31 05:51:28,177.177 INFO    ] Checking for camera pi updates...
[2026-08-31 05:51:28,212.212 INFO    ] 200
[2026-08-31 05:51:28,215.215 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:51:28,256.256 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:51:28,342.342 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:51:28,345.345 INFO    ] No camera update needed
[2026-08-31 05:51:28,348.348 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:51:28,350.350 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:51:28,355.355 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:51:28,361.361 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:51:30,408.408 INFO    ] ================================================
[2026-08-31 05:51:30,424.424 INFO    ] Launching Daemon at Mon Aug 31 05:51:30 IST 2026
[2026-08-31 05:51:30,435.435 INFO    ] ================================================
[2026-08-31 05:51:30,998.998 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:51:30
[2026-08-31 05:51:31,598.598 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:51:31,900.900 INFO    ] Initializing speech engine...
[2026-08-31 05:51:31,914.914 INFO    ] 2026-08-31 05:51:31
[2026-08-31 05:51:32,192.192 INFO    ] 2026-08-31 05:51:32
[2026-08-31 05:51:32,240.240 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:51:32,467.467 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:51:32,477.477 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:51:32,620.620 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:51:32,663.663 INFO    ] time= 31/08/2026 05:51:32
[2026-08-31 05:51:32,709.709 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:51:32,756.756 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:51:32,909.909 INFO    ] No existing commands found in stream
[2026-08-31 05:51:37,924.924 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:51:37,927.927 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-08-31 05:51:39,687.687 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 05:51:39,690.690 INFO    ] Checking for system updates...
[2026-08-31 05:51:39,730.730 INFO    ] 200
[2026-08-31 05:51:39,732.732 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:51:39,785.785 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:51:39,788.788 INFO    ] No update needed
[2026-08-31 05:51:39,791.791 INFO    ] Checking for camera pi updates...
[2026-08-31 05:51:39,825.825 INFO    ] 200
[2026-08-31 05:51:39,828.828 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:51:39,876.876 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:51:39,975.975 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:51:39,978.978 INFO    ] No camera update needed
[2026-08-31 05:51:39,981.981 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:51:39,984.984 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:51:39,990.990 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:51:39,996.996 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:51:42,038.038 INFO    ] ================================================
[2026-08-31 05:51:42,054.054 INFO    ] Launching Daemon at Mon Aug 31 05:51:42 IST 2026
[2026-08-31 05:51:42,065.065 INFO    ] ================================================
[2026-08-31 05:51:42,635.635 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:51:42
[2026-08-31 05:51:43,221.221 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:51:43,497.497 INFO    ] Initializing speech engine...
[2026-08-31 05:51:43,506.506 INFO    ] 2026-08-31 05:51:43
[2026-08-31 05:51:43,763.763 INFO    ] 2026-08-31 05:51:43
[2026-08-31 05:51:43,792.792 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:51:44,036.036 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:51:44,046.046 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:51:44,176.176 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:51:44,223.223 INFO    ] time= 31/08/2026 05:51:44
[2026-08-31 05:51:44,273.273 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:51:44,309.309 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:51:44,442.442 INFO    ] No existing commands found in stream
[2026-08-31 05:51:49,466.466 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:51:49,469.469 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-08-31 05:51:52,657.657 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 05:51:52,660.660 INFO    ] Checking for system updates...
[2026-08-31 05:51:52,703.703 INFO    ] 200
[2026-08-31 05:51:52,706.706 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:51:52,766.766 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:51:52,769.769 INFO    ] No update needed
[2026-08-31 05:51:52,772.772 INFO    ] Checking for camera pi updates...
[2026-08-31 05:51:52,807.807 INFO    ] 200
[2026-08-31 05:51:52,810.810 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:51:52,853.853 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:51:52,943.943 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:51:52,946.946 INFO    ] No camera update needed
[2026-08-31 05:51:52,949.949 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:51:52,952.952 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:51:52,958.958 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:51:52,964.964 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:51:55,006.006 INFO    ] ================================================
[2026-08-31 05:51:55,021.021 INFO    ] Launching Daemon at Mon Aug 31 05:51:55 IST 2026
[2026-08-31 05:51:55,031.031 INFO    ] ================================================
[2026-08-31 05:51:55,599.599 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:51:55
[2026-08-31 05:51:56,180.180 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:51:56,434.434 INFO    ] Initializing speech engine...
[2026-08-31 05:51:56,450.450 INFO    ] 2026-08-31 05:51:56
[2026-08-31 05:51:56,737.737 INFO    ] 2026-08-31 05:51:56
[2026-08-31 05:51:56,775.775 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:51:56,970.970 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:51:56,985.985 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:51:57,112.112 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:51:57,133.133 INFO    ] time= 31/08/2026 05:51:57
[2026-08-31 05:51:57,155.155 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:51:57,164.164 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:51:57,243.243 INFO    ] No existing commands found in stream
[2026-08-31 05:52:02,279.279 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:52:02,283.283 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-08-31 05:52:06,250.250 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 05:52:06,252.252 INFO    ] Checking for system updates...
[2026-08-31 05:52:06,291.291 INFO    ] 200
[2026-08-31 05:52:06,294.294 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:52:06,354.354 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:52:06,356.356 INFO    ] No update needed
[2026-08-31 05:52:06,359.359 INFO    ] Checking for camera pi updates...
[2026-08-31 05:52:06,396.396 INFO    ] 200
[2026-08-31 05:52:06,398.398 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:52:06,438.438 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:52:06,521.521 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:52:06,524.524 INFO    ] No camera update needed
[2026-08-31 05:52:06,527.527 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:52:06,530.530 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:52:06,537.537 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:52:06,544.544 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:52:08,586.586 INFO    ] ================================================
[2026-08-31 05:52:08,601.601 INFO    ] Launching Daemon at Mon Aug 31 05:52:08 IST 2026
[2026-08-31 05:52:08,612.612 INFO    ] ================================================
[2026-08-31 05:52:09,239.239 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:52:09
[2026-08-31 05:52:09,854.854 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:52:10,138.138 INFO    ] Initializing speech engine...
[2026-08-31 05:52:10,145.145 INFO    ] 2026-08-31 05:52:10
[2026-08-31 05:52:10,407.407 INFO    ] 2026-08-31 05:52:10
[2026-08-31 05:52:10,444.444 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:52:10,652.652 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:52:10,698.698 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:52:10,863.863 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:52:10,890.890 INFO    ] time= 31/08/2026 05:52:10
[2026-08-31 05:52:10,946.946 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:52:10,986.986 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:52:11,123.123 INFO    ] No existing commands found in stream
[2026-08-31 05:52:16,159.159 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:52:16,162.162 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-08-31 05:52:17,660.660 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 05:52:17,662.662 INFO    ] Checking for system updates...
[2026-08-31 05:52:17,697.697 INFO    ] 200
[2026-08-31 05:52:17,700.700 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:52:17,759.759 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:52:17,761.761 INFO    ] No update needed
[2026-08-31 05:52:17,764.764 INFO    ] Checking for camera pi updates...
[2026-08-31 05:52:17,798.798 INFO    ] 200
[2026-08-31 05:52:17,800.800 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:52:17,841.841 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:52:17,943.943 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:52:17,945.945 INFO    ] No camera update needed
[2026-08-31 05:52:17,954.954 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:52:17,957.957 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:52:17,963.963 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:52:17,968.968 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:52:20,009.009 INFO    ] ================================================
[2026-08-31 05:52:20,025.025 INFO    ] Launching Daemon at Mon Aug 31 05:52:20 IST 2026
[2026-08-31 05:52:20,036.036 INFO    ] ================================================
[2026-08-31 05:52:20,629.629 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:52:20
[2026-08-31 05:52:21,214.214 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:52:21,475.475 INFO    ] Initializing speech engine...
[2026-08-31 05:52:21,500.500 INFO    ] 2026-08-31 05:52:21
[2026-08-31 05:52:21,776.776 INFO    ] 2026-08-31 05:52:21
[2026-08-31 05:52:21,811.811 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:52:22,007.007 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:52:22,021.021 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:52:22,178.178 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:52:22,190.190 INFO    ] time= 31/08/2026 05:52:22
[2026-08-31 05:52:22,194.194 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:52:22,200.200 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:52:22,275.275 INFO    ] No existing commands found in stream
[2026-08-31 05:52:27,289.289 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:52:27,292.292 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-08-31 05:52:30,055.055 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 05:52:30,058.058 INFO    ] Checking for system updates...
[2026-08-31 05:52:30,097.097 INFO    ] 200
[2026-08-31 05:52:30,100.100 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:52:30,153.153 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:52:30,155.155 INFO    ] No update needed
[2026-08-31 05:52:30,157.157 INFO    ] Checking for camera pi updates...
[2026-08-31 05:52:30,194.194 INFO    ] 200
[2026-08-31 05:52:30,197.197 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:52:30,242.242 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:52:30,325.325 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:52:30,327.327 INFO    ] No camera update needed
[2026-08-31 05:52:30,330.330 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:52:30,332.332 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:52:30,337.337 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:52:30,342.342 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:52:32,386.386 INFO    ] ================================================
[2026-08-31 05:52:32,410.410 INFO    ] Launching Daemon at Mon Aug 31 05:52:32 IST 2026
[2026-08-31 05:52:32,422.422 INFO    ] ================================================
[2026-08-31 05:52:33,026.026 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:52:33
[2026-08-31 05:52:33,627.627 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:52:33,879.879 INFO    ] Initializing speech engine...
[2026-08-31 05:52:33,885.885 INFO    ] 2026-08-31 05:52:33
[2026-08-31 05:52:34,185.185 INFO    ] 2026-08-31 05:52:34
[2026-08-31 05:52:34,223.223 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:52:34,447.447 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:52:34,478.478 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:52:34,600.600 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:52:34,606.606 INFO    ] time= 31/08/2026 05:52:34
[2026-08-31 05:52:34,612.612 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:52:34,638.638 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:52:34,778.778 INFO    ] No existing commands found in stream
[2026-08-31 05:52:39,808.808 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:52:39,811.811 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-08-31 05:52:44,020.020 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 05:52:44,023.023 INFO    ] Checking for system updates...
[2026-08-31 05:52:44,061.061 INFO    ] 200
[2026-08-31 05:52:44,064.064 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:52:44,122.122 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:52:44,124.124 INFO    ] No update needed
[2026-08-31 05:52:44,127.127 INFO    ] Checking for camera pi updates...
[2026-08-31 05:52:44,160.160 INFO    ] 200
[2026-08-31 05:52:44,163.163 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:52:44,203.203 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:52:44,274.274 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:52:44,276.276 INFO    ] No camera update needed
[2026-08-31 05:52:44,279.279 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:52:44,281.281 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:52:44,286.286 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:52:44,291.291 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:52:46,332.332 INFO    ] ================================================
[2026-08-31 05:52:46,347.347 INFO    ] Launching Daemon at Mon Aug 31 05:52:46 IST 2026
[2026-08-31 05:52:46,359.359 INFO    ] ================================================
[2026-08-31 05:52:46,929.929 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:52:46
[2026-08-31 05:52:47,515.515 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:52:47,782.782 INFO    ] Initializing speech engine...
[2026-08-31 05:52:47,791.791 INFO    ] 2026-08-31 05:52:47
[2026-08-31 05:52:48,036.036 INFO    ] 2026-08-31 05:52:48
[2026-08-31 05:52:48,071.071 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:52:48,249.249 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:52:48,264.264 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:52:48,461.461 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:52:48,503.503 INFO    ] time= 31/08/2026 05:52:48
[2026-08-31 05:52:48,562.562 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:52:48,594.594 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:52:48,740.740 INFO    ] No existing commands found in stream
[2026-08-31 05:52:53,755.755 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:52:53,759.759 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-08-31 05:52:55,965.965 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 05:52:55,968.968 INFO    ] Checking for system updates...
[2026-08-31 05:52:56,004.004 INFO    ] 200
[2026-08-31 05:52:56,007.007 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:52:56,060.060 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:52:56,062.062 INFO    ] No update needed
[2026-08-31 05:52:56,065.065 INFO    ] Checking for camera pi updates...
[2026-08-31 05:52:56,102.102 INFO    ] 200
[2026-08-31 05:52:56,105.105 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:52:56,146.146 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:52:56,339.339 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:52:56,342.342 INFO    ] No camera update needed
[2026-08-31 05:52:56,345.345 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:52:56,347.347 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:52:56,354.354 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:52:56,359.359 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:52:58,401.401 INFO    ] ================================================
[2026-08-31 05:52:58,416.416 INFO    ] Launching Daemon at Mon Aug 31 05:52:58 IST 2026
[2026-08-31 05:52:58,427.427 INFO    ] ================================================
[2026-08-31 05:52:59,073.073 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:52:59
[2026-08-31 05:52:59,736.736 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:53:00,035.035 INFO    ] Initializing speech engine...
[2026-08-31 05:53:00,049.049 INFO    ] 2026-08-31 05:53:00
[2026-08-31 05:53:00,357.357 INFO    ] 2026-08-31 05:53:00
[2026-08-31 05:53:00,444.444 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:53:00,655.655 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:53:00,660.660 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:53:00,849.849 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:53:00,862.862 INFO    ] time= 31/08/2026 05:53:00
[2026-08-31 05:53:00,884.884 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:53:00,910.910 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:53:01,027.027 INFO    ] No existing commands found in stream
[2026-08-31 05:53:06,062.062 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:53:06,065.065 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-08-31 05:53:10,343.343 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 05:53:10,346.346 INFO    ] Checking for system updates...
[2026-08-31 05:53:10,385.385 INFO    ] 200
[2026-08-31 05:53:10,388.388 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:53:10,451.451 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:53:10,454.454 INFO    ] No update needed
[2026-08-31 05:53:10,456.456 INFO    ] Checking for camera pi updates...
[2026-08-31 05:53:10,493.493 INFO    ] 200
[2026-08-31 05:53:10,496.496 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:53:10,545.545 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:53:10,630.630 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:53:10,632.632 INFO    ] No camera update needed
[2026-08-31 05:53:10,635.635 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:53:10,638.638 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:53:10,644.644 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:53:10,650.650 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:53:12,691.691 INFO    ] ================================================
[2026-08-31 05:53:12,706.706 INFO    ] Launching Daemon at Mon Aug 31 05:53:12 IST 2026
[2026-08-31 05:53:12,716.716 INFO    ] ================================================
[2026-08-31 05:53:13,282.282 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:53:13
[2026-08-31 05:53:13,866.866 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:53:14,132.132 INFO    ] Initializing speech engine...
[2026-08-31 05:53:14,145.145 INFO    ] 2026-08-31 05:53:14
[2026-08-31 05:53:14,395.395 INFO    ] 2026-08-31 05:53:14
[2026-08-31 05:53:14,429.429 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:53:14,668.668 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:53:14,691.691 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:53:14,833.833 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:53:14,893.893 INFO    ] time= 31/08/2026 05:53:14
[2026-08-31 05:53:14,952.952 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:53:14,970.970 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:53:15,088.088 INFO    ] No existing commands found in stream
[2026-08-31 05:53:20,113.113 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:53:20,116.116 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-08-31 05:53:24,418.418 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 05:53:24,420.420 INFO    ] Checking for system updates...
[2026-08-31 05:53:24,455.455 INFO    ] 200
[2026-08-31 05:53:24,458.458 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:53:24,511.511 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:53:24,513.513 INFO    ] No update needed
[2026-08-31 05:53:24,516.516 INFO    ] Checking for camera pi updates...
[2026-08-31 05:53:24,552.552 INFO    ] 200
[2026-08-31 05:53:24,554.554 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:53:24,595.595 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:53:24,677.677 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:53:24,680.680 INFO    ] No camera update needed
[2026-08-31 05:53:24,682.682 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:53:24,684.684 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:53:24,689.689 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:53:24,694.694 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:53:26,736.736 INFO    ] ================================================
[2026-08-31 05:53:26,751.751 INFO    ] Launching Daemon at Mon Aug 31 05:53:26 IST 2026
[2026-08-31 05:53:26,762.762 INFO    ] ================================================
[2026-08-31 05:53:27,393.393 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:53:27
[2026-08-31 05:53:28,043.043 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:53:28,340.340 INFO    ] Initializing speech engine...
[2026-08-31 05:53:28,350.350 INFO    ] 2026-08-31 05:53:28
[2026-08-31 05:53:28,623.623 INFO    ] 2026-08-31 05:53:28
[2026-08-31 05:53:28,677.677 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:53:28,964.964 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:53:28,970.970 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:53:29,165.165 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:53:29,173.173 INFO    ] time= 31/08/2026 05:53:29
[2026-08-31 05:53:29,191.191 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:53:29,204.204 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:53:29,330.330 INFO    ] No existing commands found in stream
[2026-08-31 05:53:34,360.360 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:53:34,363.363 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-08-31 05:53:37,577.577 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 05:53:37,580.580 INFO    ] Checking for system updates...
[2026-08-31 05:53:37,616.616 INFO    ] 200
[2026-08-31 05:53:37,619.619 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:53:37,678.678 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:53:37,681.681 INFO    ] No update needed
[2026-08-31 05:53:37,684.684 INFO    ] Checking for camera pi updates...
[2026-08-31 05:53:37,719.719 INFO    ] 200
[2026-08-31 05:53:37,722.722 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:53:37,768.768 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:53:37,868.868 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:53:37,871.871 INFO    ] No camera update needed
[2026-08-31 05:53:37,873.873 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:53:37,876.876 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:53:37,882.882 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:53:37,888.888 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:53:39,929.929 INFO    ] ================================================
[2026-08-31 05:53:39,944.944 INFO    ] Launching Daemon at Mon Aug 31 05:53:39 IST 2026
[2026-08-31 05:53:39,955.955 INFO    ] ================================================
[2026-08-31 05:53:40,525.525 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:53:40
[2026-08-31 05:53:41,110.110 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:53:41,359.359 INFO    ] Initializing speech engine...
[2026-08-31 05:53:41,366.366 INFO    ] 2026-08-31 05:53:41
[2026-08-31 05:53:41,661.661 INFO    ] 2026-08-31 05:53:41
[2026-08-31 05:53:41,699.699 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:53:41,922.922 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:53:41,976.976 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:53:42,125.125 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:53:42,152.152 INFO    ] time= 31/08/2026 05:53:42
[2026-08-31 05:53:42,155.155 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:53:42,173.173 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:53:42,267.267 INFO    ] No existing commands found in stream
[2026-08-31 05:53:47,278.278 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:53:47,281.281 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-08-31 05:53:48,743.743 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 05:53:48,746.746 INFO    ] Checking for system updates...
[2026-08-31 05:53:48,782.782 INFO    ] 200
[2026-08-31 05:53:48,785.785 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:53:48,844.844 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:53:48,847.847 INFO    ] No update needed
[2026-08-31 05:53:48,850.850 INFO    ] Checking for camera pi updates...
[2026-08-31 05:53:48,884.884 INFO    ] 200
[2026-08-31 05:53:48,887.887 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:53:48,929.929 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:53:49,016.016 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:53:49,018.018 INFO    ] No camera update needed
[2026-08-31 05:53:49,021.021 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:53:49,024.024 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:53:49,030.030 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:53:49,035.035 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:53:51,076.076 INFO    ] ================================================
[2026-08-31 05:53:51,092.092 INFO    ] Launching Daemon at Mon Aug 31 05:53:51 IST 2026
[2026-08-31 05:53:51,103.103 INFO    ] ================================================
[2026-08-31 05:53:51,666.666 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:53:51
[2026-08-31 05:53:52,310.310 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:53:52,643.643 INFO    ] Initializing speech engine...
[2026-08-31 05:53:52,655.655 INFO    ] 2026-08-31 05:53:52
[2026-08-31 05:53:52,934.934 INFO    ] 2026-08-31 05:53:52
[2026-08-31 05:53:52,998.998 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:53:53,244.244 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:53:53,256.256 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:53:53,400.400 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:53:53,472.472 INFO    ] time= 31/08/2026 05:53:53
[2026-08-31 05:53:53,534.534 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:53:53,541.541 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:53:53,678.678 INFO    ] No existing commands found in stream
[2026-08-31 05:53:58,706.706 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:53:58,709.709 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-08-31 05:54:00,255.255 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 05:54:00,263.263 INFO    ] Checking for system updates...
[2026-08-31 05:54:00,299.299 INFO    ] 200
[2026-08-31 05:54:00,302.302 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:54:00,361.361 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:54:00,364.364 INFO    ] No update needed
[2026-08-31 05:54:00,367.367 INFO    ] Checking for camera pi updates...
[2026-08-31 05:54:00,402.402 INFO    ] 200
[2026-08-31 05:54:00,404.404 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:54:00,445.445 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:54:00,535.535 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:54:00,538.538 INFO    ] No camera update needed
[2026-08-31 05:54:00,540.540 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:54:00,543.543 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:54:00,549.549 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:54:00,555.555 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:54:02,600.600 INFO    ] ================================================
[2026-08-31 05:54:02,635.635 INFO    ] Launching Daemon at Mon Aug 31 05:54:02 IST 2026
[2026-08-31 05:54:02,650.650 INFO    ] ================================================
[2026-08-31 05:54:03,349.349 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:54:03
[2026-08-31 05:54:03,937.937 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:54:04,203.203 INFO    ] Initializing speech engine...
[2026-08-31 05:54:04,213.213 INFO    ] 2026-08-31 05:54:04
[2026-08-31 05:54:04,460.460 INFO    ] 2026-08-31 05:54:04
[2026-08-31 05:54:04,525.525 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:54:04,751.751 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:54:04,756.756 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:54:04,968.968 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:54:05,013.013 INFO    ] time= 31/08/2026 05:54:04
[2026-08-31 05:54:05,019.019 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:54:05,036.036 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:54:05,165.165 INFO    ] No existing commands found in stream
[2026-08-31 05:54:10,178.178 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:54:10,181.181 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-08-31 05:54:13,334.334 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 05:54:13,337.337 INFO    ] Checking for system updates...
[2026-08-31 05:54:13,372.372 INFO    ] 200
[2026-08-31 05:54:13,375.375 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:54:13,429.429 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:54:13,432.432 INFO    ] No update needed
[2026-08-31 05:54:13,435.435 INFO    ] Checking for camera pi updates...
[2026-08-31 05:54:13,468.468 INFO    ] 200
[2026-08-31 05:54:13,471.471 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:54:13,515.515 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:54:13,616.616 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:54:13,618.618 INFO    ] No camera update needed
[2026-08-31 05:54:13,621.621 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:54:13,623.623 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:54:13,628.628 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:54:13,633.633 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:54:15,676.676 INFO    ] ================================================
[2026-08-31 05:54:15,692.692 INFO    ] Launching Daemon at Mon Aug 31 05:54:15 IST 2026
[2026-08-31 05:54:15,703.703 INFO    ] ================================================
[2026-08-31 05:54:16,271.271 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:54:16
[2026-08-31 05:54:16,852.852 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:54:17,124.124 INFO    ] Initializing speech engine...
[2026-08-31 05:54:17,133.133 INFO    ] 2026-08-31 05:54:17
[2026-08-31 05:54:17,389.389 INFO    ] 2026-08-31 05:54:17
[2026-08-31 05:54:17,444.444 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:54:17,671.671 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:54:17,676.676 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:54:17,808.808 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:54:17,863.863 INFO    ] time= 31/08/2026 05:54:17
[2026-08-31 05:54:17,917.917 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:54:17,941.941 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:54:17,998.998 INFO    ] No existing commands found in stream
[2026-08-31 05:54:23,028.028 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:54:23,030.030 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-08-31 05:54:23,695.695 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 05:54:23,698.698 INFO    ] Checking for system updates...
[2026-08-31 05:54:23,733.733 INFO    ] 200
[2026-08-31 05:54:23,736.736 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:54:23,790.790 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:54:23,792.792 INFO    ] No update needed
[2026-08-31 05:54:23,795.795 INFO    ] Checking for camera pi updates...
[2026-08-31 05:54:23,830.830 INFO    ] 200
[2026-08-31 05:54:23,833.833 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:54:23,873.873 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:54:23,963.963 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:54:23,966.966 INFO    ] No camera update needed
[2026-08-31 05:54:23,968.968 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:54:23,971.971 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:54:23,977.977 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:54:23,983.983 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:54:26,025.025 INFO    ] ================================================
[2026-08-31 05:54:26,040.040 INFO    ] Launching Daemon at Mon Aug 31 05:54:26 IST 2026
[2026-08-31 05:54:26,051.051 INFO    ] ================================================
[2026-08-31 05:54:26,616.616 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:54:26
[2026-08-31 05:54:27,200.200 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:54:27,475.475 INFO    ] Initializing speech engine...
[2026-08-31 05:54:27,483.483 INFO    ] 2026-08-31 05:54:27
[2026-08-31 05:54:27,727.727 INFO    ] 2026-08-31 05:54:27
[2026-08-31 05:54:27,761.761 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:54:28,019.019 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:54:28,028.028 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:54:28,248.248 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:54:28,291.291 INFO    ] time= 31/08/2026 05:54:28
[2026-08-31 05:54:28,297.297 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:54:28,313.313 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:54:28,438.438 INFO    ] No existing commands found in stream
[2026-08-31 05:54:33,459.459 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:54:33,462.462 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-08-31 05:54:37,001.001 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 05:54:37,004.004 INFO    ] Checking for system updates...
[2026-08-31 05:54:37,040.040 INFO    ] 200
[2026-08-31 05:54:37,043.043 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:54:37,096.096 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:54:37,099.099 INFO    ] No update needed
[2026-08-31 05:54:37,102.102 INFO    ] Checking for camera pi updates...
[2026-08-31 05:54:37,140.140 INFO    ] 200
[2026-08-31 05:54:37,142.142 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:54:37,186.186 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:54:37,270.270 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:54:37,273.273 INFO    ] No camera update needed
[2026-08-31 05:54:37,275.275 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:54:37,277.277 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:54:37,283.283 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:54:37,288.288 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:54:39,328.328 INFO    ] ================================================
[2026-08-31 05:54:39,344.344 INFO    ] Launching Daemon at Mon Aug 31 05:54:39 IST 2026
[2026-08-31 05:54:39,356.356 INFO    ] ================================================
[2026-08-31 05:54:39,999.999 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:54:39
[2026-08-31 05:54:40,661.661 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:54:40,961.961 INFO    ] Initializing speech engine...
[2026-08-31 05:54:40,968.968 INFO    ] 2026-08-31 05:54:40
[2026-08-31 05:54:41,248.248 INFO    ] 2026-08-31 05:54:41
[2026-08-31 05:54:41,290.290 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:54:41,508.508 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:54:41,516.516 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:54:41,727.727 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:54:41,773.773 INFO    ] time= 31/08/2026 05:54:41
[2026-08-31 05:54:41,779.779 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:54:41,797.797 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:54:41,925.925 INFO    ] No existing commands found in stream
[2026-08-31 05:54:46,938.938 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:54:46,941.941 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-08-31 05:54:50,214.214 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 05:54:50,217.217 INFO    ] Checking for system updates...
[2026-08-31 05:54:50,254.254 INFO    ] 200
[2026-08-31 05:54:50,256.256 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:54:50,309.309 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:54:50,312.312 INFO    ] No update needed
[2026-08-31 05:54:50,315.315 INFO    ] Checking for camera pi updates...
[2026-08-31 05:54:50,350.350 INFO    ] 200
[2026-08-31 05:54:50,352.352 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:54:50,393.393 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:54:50,473.473 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:54:50,476.476 INFO    ] No camera update needed
[2026-08-31 05:54:50,479.479 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:54:50,482.482 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:54:50,488.488 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:54:50,493.493 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:54:52,534.534 INFO    ] ================================================
[2026-08-31 05:54:52,550.550 INFO    ] Launching Daemon at Mon Aug 31 05:54:52 IST 2026
[2026-08-31 05:54:52,561.561 INFO    ] ================================================
[2026-08-31 05:54:53,203.203 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:54:53
[2026-08-31 05:54:53,827.827 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:54:54,095.095 INFO    ] Initializing speech engine...
[2026-08-31 05:54:54,104.104 INFO    ] 2026-08-31 05:54:54
[2026-08-31 05:54:54,350.350 INFO    ] 2026-08-31 05:54:54
[2026-08-31 05:54:54,385.385 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:54:54,555.555 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:54:54,568.568 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:54:54,711.711 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:54:54,717.717 INFO    ] time= 31/08/2026 05:54:54
[2026-08-31 05:54:54,764.764 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:54:54,787.787 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:54:54,911.911 INFO    ] No existing commands found in stream
[2026-08-31 05:54:59,923.923 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:54:59,926.926 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-08-31 05:55:04,296.296 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 05:55:04,299.299 INFO    ] Checking for system updates...
[2026-08-31 05:55:04,334.334 INFO    ] 200
[2026-08-31 05:55:04,336.336 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:55:04,390.390 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:55:04,392.392 INFO    ] No update needed
[2026-08-31 05:55:04,394.394 INFO    ] Checking for camera pi updates...
[2026-08-31 05:55:04,427.427 INFO    ] 200
[2026-08-31 05:55:04,430.430 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:55:04,470.470 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:55:04,554.554 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:55:04,557.557 INFO    ] No camera update needed
[2026-08-31 05:55:04,559.559 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:55:04,561.561 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:55:04,567.567 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:55:04,572.572 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:55:06,612.612 INFO    ] ================================================
[2026-08-31 05:55:06,628.628 INFO    ] Launching Daemon at Mon Aug 31 05:55:06 IST 2026
[2026-08-31 05:55:06,640.640 INFO    ] ================================================
[2026-08-31 05:55:07,222.222 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:55:07
[2026-08-31 05:55:07,889.889 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:55:08,173.173 INFO    ] Initializing speech engine...
[2026-08-31 05:55:08,178.178 INFO    ] 2026-08-31 05:55:08
[2026-08-31 05:55:08,439.439 INFO    ] 2026-08-31 05:55:08
[2026-08-31 05:55:08,496.496 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:55:08,641.641 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:55:08,652.652 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:55:08,795.795 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:55:08,799.799 INFO    ] time= 31/08/2026 05:55:08
[2026-08-31 05:55:08,807.807 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:55:08,811.811 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:55:08,880.880 INFO    ] No existing commands found in stream
[2026-08-31 05:55:13,892.892 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:55:13,895.895 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-08-31 05:55:16,497.497 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 05:55:16,500.500 INFO    ] Checking for system updates...
[2026-08-31 05:55:16,540.540 INFO    ] 200
[2026-08-31 05:55:16,542.542 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:55:16,593.593 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:55:16,596.596 INFO    ] No update needed
[2026-08-31 05:55:16,599.599 INFO    ] Checking for camera pi updates...
[2026-08-31 05:55:16,632.632 INFO    ] 200
[2026-08-31 05:55:16,634.634 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:55:16,674.674 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:55:16,751.751 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:55:16,753.753 INFO    ] No camera update needed
[2026-08-31 05:55:16,756.756 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:55:16,758.758 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:55:16,763.763 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:55:16,768.768 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:55:18,808.808 INFO    ] ================================================
[2026-08-31 05:55:18,824.824 INFO    ] Launching Daemon at Mon Aug 31 05:55:18 IST 2026
[2026-08-31 05:55:18,835.835 INFO    ] ================================================
[2026-08-31 05:55:19,399.399 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:55:19
[2026-08-31 05:55:19,980.980 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:55:20,252.252 INFO    ] Initializing speech engine...
[2026-08-31 05:55:20,258.258 INFO    ] 2026-08-31 05:55:20
[2026-08-31 05:55:20,517.517 INFO    ] 2026-08-31 05:55:20
[2026-08-31 05:55:20,546.546 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:55:20,789.789 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:55:20,797.797 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:55:20,932.932 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:55:20,987.987 INFO    ] time= 31/08/2026 05:55:20
[2026-08-31 05:55:21,041.041 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:55:21,064.064 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:55:21,116.116 INFO    ] No existing commands found in stream
[2026-08-31 05:55:26,128.128 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:55:26,131.131 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-08-31 05:55:27,657.657 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 05:55:27,660.660 INFO    ] Checking for system updates...
[2026-08-31 05:55:27,695.695 INFO    ] 200
[2026-08-31 05:55:27,697.697 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:55:27,758.758 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:55:27,761.761 INFO    ] No update needed
[2026-08-31 05:55:27,763.763 INFO    ] Checking for camera pi updates...
[2026-08-31 05:55:27,801.801 INFO    ] 200
[2026-08-31 05:55:27,804.804 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:55:27,844.844 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:55:27,894.894 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:55:27,896.896 INFO    ] No camera update needed
[2026-08-31 05:55:27,899.899 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:55:27,901.901 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:55:27,906.906 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:55:27,911.911 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:55:29,951.951 INFO    ] ================================================
[2026-08-31 05:55:29,966.966 INFO    ] Launching Daemon at Mon Aug 31 05:55:29 IST 2026
[2026-08-31 05:55:29,977.977 INFO    ] ================================================
[2026-08-31 05:55:30,654.654 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:55:30
[2026-08-31 05:55:31,279.279 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:55:31,557.557 INFO    ] Initializing speech engine...
[2026-08-31 05:55:31,563.563 INFO    ] 2026-08-31 05:55:31
[2026-08-31 05:55:31,830.830 INFO    ] 2026-08-31 05:55:31
[2026-08-31 05:55:31,868.868 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:55:32,081.081 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:55:32,084.084 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:55:32,226.226 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:55:32,235.235 INFO    ] time= 31/08/2026 05:55:32
[2026-08-31 05:55:32,241.241 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:55:32,248.248 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:55:32,333.333 INFO    ] No existing commands found in stream
[2026-08-31 05:55:37,348.348 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:55:37,351.351 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-08-31 05:55:42,614.614 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 05:55:42,617.617 INFO    ] Checking for system updates...
[2026-08-31 05:55:42,653.653 INFO    ] 200
[2026-08-31 05:55:42,655.655 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:55:42,715.715 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:55:42,718.718 INFO    ] No update needed
[2026-08-31 05:55:42,720.720 INFO    ] Checking for camera pi updates...
[2026-08-31 05:55:42,758.758 INFO    ] 200
[2026-08-31 05:55:42,760.760 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:55:42,805.805 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:55:42,902.902 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:55:42,904.904 INFO    ] No camera update needed
[2026-08-31 05:55:42,906.906 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:55:42,909.909 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:55:42,914.914 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:55:42,919.919 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:55:44,960.960 INFO    ] ================================================
[2026-08-31 05:55:44,975.975 INFO    ] Launching Daemon at Mon Aug 31 05:55:44 IST 2026
[2026-08-31 05:55:44,987.987 INFO    ] ================================================
[2026-08-31 05:55:45,554.554 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:55:45
[2026-08-31 05:55:46,136.136 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:55:46,403.403 INFO    ] Initializing speech engine...
[2026-08-31 05:55:46,412.412 INFO    ] 2026-08-31 05:55:46
[2026-08-31 05:55:46,660.660 INFO    ] 2026-08-31 05:55:46
[2026-08-31 05:55:46,695.695 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:55:46,946.946 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:55:46,956.956 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:55:47,086.086 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:55:47,128.128 INFO    ] time= 31/08/2026 05:55:47
[2026-08-31 05:55:47,188.188 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:55:47,220.220 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:55:47,278.278 INFO    ] No existing commands found in stream
[2026-08-31 05:55:52,289.289 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:55:52,292.292 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-08-31 05:55:55,770.770 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 05:55:55,773.773 INFO    ] Checking for system updates...
[2026-08-31 05:55:55,812.812 INFO    ] 200
[2026-08-31 05:55:55,815.815 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:55:55,868.868 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:55:55,870.870 INFO    ] No update needed
[2026-08-31 05:55:55,872.872 INFO    ] Checking for camera pi updates...
[2026-08-31 05:55:55,906.906 INFO    ] 200
[2026-08-31 05:55:55,908.908 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:55:55,955.955 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:55:56,041.041 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:55:56,044.044 INFO    ] No camera update needed
[2026-08-31 05:55:56,046.046 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:55:56,049.049 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:55:56,056.056 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:55:56,062.062 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:55:58,111.111 INFO    ] ================================================
[2026-08-31 05:55:58,126.126 INFO    ] Launching Daemon at Mon Aug 31 05:55:58 IST 2026
[2026-08-31 05:55:58,137.137 INFO    ] ================================================
[2026-08-31 05:55:58,701.701 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:55:58
[2026-08-31 05:55:59,281.281 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:55:59,536.536 INFO    ] Initializing speech engine...
[2026-08-31 05:55:59,552.552 INFO    ] 2026-08-31 05:55:59
[2026-08-31 05:55:59,804.804 INFO    ] 2026-08-31 05:55:59
[2026-08-31 05:55:59,839.839 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:56:00,093.093 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:56:00,098.098 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:56:00,304.304 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:56:00,353.353 INFO    ] time= 31/08/2026 05:56:00
[2026-08-31 05:56:00,360.360 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:56:00,378.378 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:56:00,510.510 INFO    ] No existing commands found in stream
[2026-08-31 05:56:05,528.528 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:56:05,531.531 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-08-31 05:56:09,253.253 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 05:56:09,255.255 INFO    ] Checking for system updates...
[2026-08-31 05:56:09,291.291 INFO    ] 200
[2026-08-31 05:56:09,293.293 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:56:09,345.345 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:56:09,348.348 INFO    ] No update needed
[2026-08-31 05:56:09,351.351 INFO    ] Checking for camera pi updates...
[2026-08-31 05:56:09,384.384 INFO    ] 200
[2026-08-31 05:56:09,386.386 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:56:09,426.426 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:56:09,511.511 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:56:09,513.513 INFO    ] No camera update needed
[2026-08-31 05:56:09,516.516 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:56:09,518.518 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:56:09,523.523 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:56:09,528.528 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:56:11,570.570 INFO    ] ================================================
[2026-08-31 05:56:11,585.585 INFO    ] Launching Daemon at Mon Aug 31 05:56:11 IST 2026
[2026-08-31 05:56:11,596.596 INFO    ] ================================================
[2026-08-31 05:56:12,245.245 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:56:12
[2026-08-31 05:56:12,907.907 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:56:13,207.207 INFO    ] Initializing speech engine...
[2026-08-31 05:56:13,221.221 INFO    ] 2026-08-31 05:56:13
[2026-08-31 05:56:13,500.500 INFO    ] 2026-08-31 05:56:13
[2026-08-31 05:56:13,544.544 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:56:13,771.771 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:56:13,776.776 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:56:14,018.018 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:56:14,036.036 INFO    ] time= 31/08/2026 05:56:14
[2026-08-31 05:56:14,054.054 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:56:14,066.066 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:56:14,192.192 INFO    ] No existing commands found in stream
[2026-08-31 05:56:19,221.221 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:56:19,224.224 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-08-31 05:56:22,840.840 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 05:56:22,843.843 INFO    ] Checking for system updates...
[2026-08-31 05:56:22,884.884 INFO    ] 200
[2026-08-31 05:56:22,887.887 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:56:22,951.951 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:56:22,954.954 INFO    ] No update needed
[2026-08-31 05:56:22,957.957 INFO    ] Checking for camera pi updates...
[2026-08-31 05:56:22,995.995 INFO    ] 200
[2026-08-31 05:56:22,998.998 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:56:23,045.045 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:56:23,155.155 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:56:23,158.158 INFO    ] No camera update needed
[2026-08-31 05:56:23,161.161 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:56:23,163.163 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:56:23,170.170 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:56:23,175.175 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:56:25,217.217 INFO    ] ================================================
[2026-08-31 05:56:25,233.233 INFO    ] Launching Daemon at Mon Aug 31 05:56:25 IST 2026
[2026-08-31 05:56:25,244.244 INFO    ] ================================================
[2026-08-31 05:56:25,823.823 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:56:25
[2026-08-31 05:56:26,419.419 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:56:26,695.695 INFO    ] Initializing speech engine...
[2026-08-31 05:56:26,704.704 INFO    ] 2026-08-31 05:56:26
[2026-08-31 05:56:26,963.963 INFO    ] 2026-08-31 05:56:26
[2026-08-31 05:56:26,994.994 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:56:27,242.242 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:56:27,248.248 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:56:27,380.380 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:56:27,424.424 INFO    ] time= 31/08/2026 05:56:27
[2026-08-31 05:56:27,489.489 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:56:27,510.510 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:56:27,642.642 INFO    ] No existing commands found in stream
[2026-08-31 05:56:32,666.666 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:56:32,670.670 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-08-31 05:56:33,936.936 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 05:56:33,939.939 INFO    ] Checking for system updates...
[2026-08-31 05:56:33,975.975 INFO    ] 200
[2026-08-31 05:56:33,977.977 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:56:34,029.029 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:56:34,031.031 INFO    ] No update needed
[2026-08-31 05:56:34,034.034 INFO    ] Checking for camera pi updates...
[2026-08-31 05:56:34,070.070 INFO    ] 200
[2026-08-31 05:56:34,073.073 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:56:34,116.116 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:56:34,195.195 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:56:34,198.198 INFO    ] No camera update needed
[2026-08-31 05:56:34,200.200 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:56:34,202.202 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:56:34,208.208 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:56:34,213.213 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:56:36,254.254 INFO    ] ================================================
[2026-08-31 05:56:36,270.270 INFO    ] Launching Daemon at Mon Aug 31 05:56:36 IST 2026
[2026-08-31 05:56:36,280.280 INFO    ] ================================================
[2026-08-31 05:56:36,859.859 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:56:36
[2026-08-31 05:56:37,458.458 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:56:37,737.737 INFO    ] Initializing speech engine...
[2026-08-31 05:56:37,750.750 INFO    ] 2026-08-31 05:56:37
[2026-08-31 05:56:38,016.016 INFO    ] 2026-08-31 05:56:38
[2026-08-31 05:56:38,054.054 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:56:38,308.308 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:56:38,336.336 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:56:38,475.475 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:56:38,534.534 INFO    ] time= 31/08/2026 05:56:38
[2026-08-31 05:56:38,589.589 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:56:38,609.609 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:56:38,690.690 INFO    ] No existing commands found in stream
[2026-08-31 05:56:43,728.728 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:56:43,731.731 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-08-31 05:56:44,436.436 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 05:56:44,439.439 INFO    ] Checking for system updates...
[2026-08-31 05:56:44,477.477 INFO    ] 200
[2026-08-31 05:56:44,480.480 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:56:44,532.532 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:56:44,534.534 INFO    ] No update needed
[2026-08-31 05:56:44,537.537 INFO    ] Checking for camera pi updates...
[2026-08-31 05:56:44,570.570 INFO    ] 200
[2026-08-31 05:56:44,572.572 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:56:44,612.612 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:56:44,689.689 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:56:44,692.692 INFO    ] No camera update needed
[2026-08-31 05:56:44,694.694 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:56:44,696.696 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:56:44,702.702 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:56:44,706.706 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:56:46,746.746 INFO    ] ================================================
[2026-08-31 05:56:46,760.760 INFO    ] Launching Daemon at Mon Aug 31 05:56:46 IST 2026
[2026-08-31 05:56:46,771.771 INFO    ] ================================================
[2026-08-31 05:56:47,390.390 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:56:47
[2026-08-31 05:56:48,044.044 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:56:48,335.335 INFO    ] Initializing speech engine...
[2026-08-31 05:56:48,347.347 INFO    ] 2026-08-31 05:56:48
[2026-08-31 05:56:48,617.617 INFO    ] 2026-08-31 05:56:48
[2026-08-31 05:56:48,679.679 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:56:48,911.911 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:56:48,917.917 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:56:49,053.053 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:56:49,118.118 INFO    ] time= 31/08/2026 05:56:49
[2026-08-31 05:56:49,183.183 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:56:49,191.191 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:56:49,324.324 INFO    ] No existing commands found in stream
[2026-08-31 05:56:54,349.349 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:56:54,352.352 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-08-31 05:56:56,645.645 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 05:56:56,648.648 INFO    ] Checking for system updates...
[2026-08-31 05:56:56,685.685 INFO    ] 200
[2026-08-31 05:56:56,687.687 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:56:56,740.740 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:56:56,742.742 INFO    ] No update needed
[2026-08-31 05:56:56,745.745 INFO    ] Checking for camera pi updates...
[2026-08-31 05:56:56,778.778 INFO    ] 200
[2026-08-31 05:56:56,780.780 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:56:56,824.824 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:56:56,903.903 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:56:56,906.906 INFO    ] No camera update needed
[2026-08-31 05:56:56,909.909 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:56:56,911.911 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:56:56,916.916 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:56:56,921.921 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:56:58,960.960 INFO    ] ================================================
[2026-08-31 05:56:58,976.976 INFO    ] Launching Daemon at Mon Aug 31 05:56:58 IST 2026
[2026-08-31 05:56:58,986.986 INFO    ] ================================================
[2026-08-31 05:56:59,559.559 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:56:59
[2026-08-31 05:57:00,146.146 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:57:00,412.412 INFO    ] Initializing speech engine...
[2026-08-31 05:57:00,421.421 INFO    ] 2026-08-31 05:57:00
[2026-08-31 05:57:00,667.667 INFO    ] 2026-08-31 05:57:00
[2026-08-31 05:57:00,702.702 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:57:00,956.956 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:57:00,962.962 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:57:01,091.091 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:57:01,133.133 INFO    ] time= 31/08/2026 05:57:01
[2026-08-31 05:57:01,177.177 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:57:01,224.224 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:57:01,360.360 INFO    ] No existing commands found in stream
[2026-08-31 05:57:06,381.381 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:57:06,384.384 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-08-31 05:57:10,655.655 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 05:57:10,658.658 INFO    ] Checking for system updates...
[2026-08-31 05:57:10,694.694 INFO    ] 200
[2026-08-31 05:57:10,696.696 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:57:10,754.754 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:57:10,757.757 INFO    ] No update needed
[2026-08-31 05:57:10,759.759 INFO    ] Checking for camera pi updates...
[2026-08-31 05:57:10,795.795 INFO    ] 200
[2026-08-31 05:57:10,798.798 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:57:10,842.842 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:57:11,020.020 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:57:11,022.022 INFO    ] No camera update needed
[2026-08-31 05:57:11,025.025 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:57:11,027.027 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:57:11,032.032 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:57:11,037.037 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:57:13,080.080 INFO    ] ================================================
[2026-08-31 05:57:13,095.095 INFO    ] Launching Daemon at Mon Aug 31 05:57:13 IST 2026
[2026-08-31 05:57:13,105.105 INFO    ] ================================================
[2026-08-31 05:57:13,758.758 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:57:13
[2026-08-31 05:57:14,418.418 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:57:14,667.667 INFO    ] Initializing speech engine...
[2026-08-31 05:57:14,681.681 INFO    ] 2026-08-31 05:57:14
[2026-08-31 05:57:14,945.945 INFO    ] 2026-08-31 05:57:14
[2026-08-31 05:57:14,980.980 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:57:15,178.178 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:57:15,223.223 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:57:15,384.384 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:57:15,424.424 INFO    ] time= 31/08/2026 05:57:15
[2026-08-31 05:57:15,478.478 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:57:15,518.518 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:57:15,659.659 INFO    ] No existing commands found in stream
[2026-08-31 05:57:20,680.680 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:57:20,683.683 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-08-31 05:57:22,196.196 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 05:57:22,199.199 INFO    ] Checking for system updates...
[2026-08-31 05:57:22,235.235 INFO    ] 200
[2026-08-31 05:57:22,238.238 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:57:22,291.291 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:57:22,294.294 INFO    ] No update needed
[2026-08-31 05:57:22,303.303 INFO    ] Checking for camera pi updates...
[2026-08-31 05:57:22,336.336 INFO    ] 200
[2026-08-31 05:57:22,339.339 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:57:22,379.379 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:57:22,461.461 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:57:22,463.463 INFO    ] No camera update needed
[2026-08-31 05:57:22,465.465 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:57:22,468.468 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:57:22,473.473 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:57:22,478.478 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:57:24,518.518 INFO    ] ================================================
[2026-08-31 05:57:24,533.533 INFO    ] Launching Daemon at Mon Aug 31 05:57:24 IST 2026
[2026-08-31 05:57:24,544.544 INFO    ] ================================================
[2026-08-31 05:57:25,116.116 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:57:25
[2026-08-31 05:57:25,697.697 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:57:25,973.973 INFO    ] Initializing speech engine...
[2026-08-31 05:57:25,980.980 INFO    ] 2026-08-31 05:57:25
[2026-08-31 05:57:26,225.225 INFO    ] 2026-08-31 05:57:26
[2026-08-31 05:57:26,261.261 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:57:26,454.454 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:57:26,477.477 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:57:26,595.595 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:57:26,640.640 INFO    ] time= 31/08/2026 05:57:26
[2026-08-31 05:57:26,663.663 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:57:26,707.707 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:57:26,793.793 INFO    ] No existing commands found in stream
[2026-08-31 05:57:31,815.815 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:57:31,818.818 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-08-31 05:57:34,775.775 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 05:57:34,778.778 INFO    ] Checking for system updates...
[2026-08-31 05:57:34,814.814 INFO    ] 200
[2026-08-31 05:57:34,816.816 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:57:34,869.869 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:57:34,871.871 INFO    ] No update needed
[2026-08-31 05:57:34,874.874 INFO    ] Checking for camera pi updates...
[2026-08-31 05:57:34,911.911 INFO    ] 200
[2026-08-31 05:57:34,913.913 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:57:34,954.954 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:57:35,038.038 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:57:35,041.041 INFO    ] No camera update needed
[2026-08-31 05:57:35,043.043 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:57:35,045.045 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:57:35,051.051 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:57:35,056.056 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:57:37,098.098 INFO    ] ================================================
[2026-08-31 05:57:37,113.113 INFO    ] Launching Daemon at Mon Aug 31 05:57:37 IST 2026
[2026-08-31 05:57:37,124.124 INFO    ] ================================================
[2026-08-31 05:57:37,695.695 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:57:37
[2026-08-31 05:57:38,278.278 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:57:38,527.527 INFO    ] Initializing speech engine...
[2026-08-31 05:57:38,542.542 INFO    ] 2026-08-31 05:57:38
[2026-08-31 05:57:38,807.807 INFO    ] 2026-08-31 05:57:38
[2026-08-31 05:57:38,842.842 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:57:39,097.097 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:57:39,107.107 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:57:39,332.332 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:57:39,369.369 INFO    ] time= 31/08/2026 05:57:39
[2026-08-31 05:57:39,375.375 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:57:39,394.394 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:57:39,510.510 INFO    ] No existing commands found in stream
[2026-08-31 05:57:44,535.535 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:57:44,538.538 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-08-31 05:57:48,875.875 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 05:57:48,878.878 INFO    ] Checking for system updates...
[2026-08-31 05:57:48,918.918 INFO    ] 200
[2026-08-31 05:57:48,920.920 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:57:48,971.971 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:57:48,974.974 INFO    ] No update needed
[2026-08-31 05:57:48,977.977 INFO    ] Checking for camera pi updates...
[2026-08-31 05:57:49,014.014 INFO    ] 200
[2026-08-31 05:57:49,016.016 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:57:49,062.062 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:57:49,132.132 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:57:49,134.134 INFO    ] No camera update needed
[2026-08-31 05:57:49,136.136 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:57:49,139.139 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:57:49,144.144 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:57:49,149.149 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:57:51,189.189 INFO    ] ================================================
[2026-08-31 05:57:51,204.204 INFO    ] Launching Daemon at Mon Aug 31 05:57:51 IST 2026
[2026-08-31 05:57:51,215.215 INFO    ] ================================================
[2026-08-31 05:57:51,781.781 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:57:51
[2026-08-31 05:57:52,367.367 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:57:52,616.616 INFO    ] Initializing speech engine...
[2026-08-31 05:57:52,630.630 INFO    ] 2026-08-31 05:57:52
[2026-08-31 05:57:52,896.896 INFO    ] 2026-08-31 05:57:52
[2026-08-31 05:57:52,931.931 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:57:53,187.187 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:57:53,193.193 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:57:53,327.327 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:57:53,371.371 INFO    ] time= 31/08/2026 05:57:53
[2026-08-31 05:57:53,441.441 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:57:53,461.461 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:57:53,520.520 INFO    ] No existing commands found in stream
[2026-08-31 05:57:58,552.552 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:57:58,555.555 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-08-31 05:58:01,649.649 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 05:58:01,655.655 INFO    ] Checking for system updates...
[2026-08-31 05:58:01,770.770 INFO    ] 200
[2026-08-31 05:58:01,773.773 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:58:01,853.853 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:58:01,857.857 INFO    ] No update needed
[2026-08-31 05:58:01,860.860 INFO    ] Checking for camera pi updates...
[2026-08-31 05:58:01,927.927 INFO    ] 200
[2026-08-31 05:58:01,930.930 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:58:01,983.983 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:58:02,080.080 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:58:02,083.083 INFO    ] No camera update needed
[2026-08-31 05:58:02,086.086 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:58:02,095.095 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:58:02,103.103 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:58:02,110.110 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:58:04,155.155 INFO    ] ================================================
[2026-08-31 05:58:04,170.170 INFO    ] Launching Daemon at Mon Aug 31 05:58:04 IST 2026
[2026-08-31 05:58:04,181.181 INFO    ] ================================================
[2026-08-31 05:58:04,752.752 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:58:04
[2026-08-31 05:58:05,355.355 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:58:05,629.629 INFO    ] Initializing speech engine...
[2026-08-31 05:58:05,638.638 INFO    ] 2026-08-31 05:58:05
[2026-08-31 05:58:05,886.886 INFO    ] 2026-08-31 05:58:05
[2026-08-31 05:58:05,922.922 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:58:06,174.174 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:58:06,183.183 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:58:06,317.317 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:58:06,382.382 INFO    ] time= 31/08/2026 05:58:06
[2026-08-31 05:58:06,444.444 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:58:06,453.453 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:58:06,602.602 INFO    ] No existing commands found in stream
[2026-08-31 05:58:11,622.622 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:58:11,625.625 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-08-31 05:58:16,077.077 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 05:58:16,080.080 INFO    ] Checking for system updates...
[2026-08-31 05:58:16,116.116 INFO    ] 200
[2026-08-31 05:58:16,119.119 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:58:16,180.180 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:58:16,183.183 INFO    ] No update needed
[2026-08-31 05:58:16,186.186 INFO    ] Checking for camera pi updates...
[2026-08-31 05:58:16,224.224 INFO    ] 200
[2026-08-31 05:58:16,227.227 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:58:16,274.274 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:58:16,354.354 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:58:16,357.357 INFO    ] No camera update needed
[2026-08-31 05:58:16,360.360 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:58:16,362.362 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:58:16,369.369 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:58:16,375.375 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:58:18,415.415 INFO    ] ================================================
[2026-08-31 05:58:18,431.431 INFO    ] Launching Daemon at Mon Aug 31 05:58:18 IST 2026
[2026-08-31 05:58:18,441.441 INFO    ] ================================================
[2026-08-31 05:58:19,014.014 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:58:19
[2026-08-31 05:58:19,612.612 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:58:19,889.889 INFO    ] Initializing speech engine...
[2026-08-31 05:58:19,898.898 INFO    ] 2026-08-31 05:58:19
[2026-08-31 05:58:20,160.160 INFO    ] 2026-08-31 05:58:20
[2026-08-31 05:58:20,214.214 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:58:20,432.432 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:58:20,442.442 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:58:20,575.575 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:58:20,620.620 INFO    ] time= 31/08/2026 05:58:20
[2026-08-31 05:58:20,680.680 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:58:20,707.707 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:58:20,838.838 INFO    ] No existing commands found in stream
[2026-08-31 05:58:25,864.864 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:58:25,867.867 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-08-31 05:58:28,555.555 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 05:58:28,558.558 INFO    ] Checking for system updates...
[2026-08-31 05:58:28,598.598 INFO    ] 200
[2026-08-31 05:58:28,600.600 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:58:28,660.660 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:58:28,662.662 INFO    ] No update needed
[2026-08-31 05:58:28,664.664 INFO    ] Checking for camera pi updates...
[2026-08-31 05:58:28,702.702 INFO    ] 200
[2026-08-31 05:58:28,704.704 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:58:28,744.744 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:58:28,830.830 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:58:28,832.832 INFO    ] No camera update needed
[2026-08-31 05:58:28,835.835 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:58:28,837.837 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:58:28,842.842 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:58:28,847.847 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:58:30,888.888 INFO    ] ================================================
[2026-08-31 05:58:30,903.903 INFO    ] Launching Daemon at Mon Aug 31 05:58:30 IST 2026
[2026-08-31 05:58:30,914.914 INFO    ] ================================================
[2026-08-31 05:58:31,488.488 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:58:31
[2026-08-31 05:58:32,098.098 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:58:32,376.376 INFO    ] Initializing speech engine...
[2026-08-31 05:58:32,393.393 INFO    ] 2026-08-31 05:58:32
[2026-08-31 05:58:32,680.680 INFO    ] 2026-08-31 05:58:32
[2026-08-31 05:58:32,717.717 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:58:32,919.919 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:58:32,962.962 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:58:33,110.110 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:58:33,114.114 INFO    ] time= 31/08/2026 05:58:33
[2026-08-31 05:58:33,132.132 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:58:33,155.155 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:58:33,282.282 INFO    ] No existing commands found in stream
[2026-08-31 05:58:38,294.294 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:58:38,298.298 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-08-31 05:58:41,133.133 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 05:58:41,136.136 INFO    ] Checking for system updates...
[2026-08-31 05:58:41,173.173 INFO    ] 200
[2026-08-31 05:58:41,176.176 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:58:41,237.237 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:58:41,240.240 INFO    ] No update needed
[2026-08-31 05:58:41,243.243 INFO    ] Checking for camera pi updates...
[2026-08-31 05:58:41,278.278 INFO    ] 200
[2026-08-31 05:58:41,281.281 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:58:41,323.323 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:58:41,408.408 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:58:41,411.411 INFO    ] No camera update needed
[2026-08-31 05:58:41,413.413 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:58:41,416.416 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:58:41,422.422 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:58:41,428.428 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:58:43,472.472 INFO    ] ================================================
[2026-08-31 05:58:43,488.488 INFO    ] Launching Daemon at Mon Aug 31 05:58:43 IST 2026
[2026-08-31 05:58:43,499.499 INFO    ] ================================================
[2026-08-31 05:58:44,081.081 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:58:44
[2026-08-31 05:58:44,683.683 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:58:44,959.959 INFO    ] Initializing speech engine...
[2026-08-31 05:58:44,965.965 INFO    ] 2026-08-31 05:58:44
[2026-08-31 05:58:45,214.214 INFO    ] 2026-08-31 05:58:45
[2026-08-31 05:58:45,280.280 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:58:45,509.509 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:58:45,531.531 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:58:45,728.728 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:58:45,771.771 INFO    ] time= 31/08/2026 05:58:45
[2026-08-31 05:58:45,777.777 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:58:45,795.795 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:58:45,928.928 INFO    ] No existing commands found in stream
[2026-08-31 05:58:50,950.950 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:58:50,953.953 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-08-31 05:58:51,722.722 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 05:58:51,726.726 INFO    ] Checking for system updates...
[2026-08-31 05:58:51,767.767 INFO    ] 200
[2026-08-31 05:58:51,769.769 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:58:51,822.822 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:58:51,824.824 INFO    ] No update needed
[2026-08-31 05:58:51,827.827 INFO    ] Checking for camera pi updates...
[2026-08-31 05:58:51,860.860 INFO    ] 200
[2026-08-31 05:58:51,862.862 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:58:51,902.902 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:58:51,984.984 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:58:51,986.986 INFO    ] No camera update needed
[2026-08-31 05:58:51,989.989 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:58:51,991.991 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:58:51,997.997 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:58:52,002.002 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:58:54,041.041 INFO    ] ================================================
[2026-08-31 05:58:54,056.056 INFO    ] Launching Daemon at Mon Aug 31 05:58:54 IST 2026
[2026-08-31 05:58:54,066.066 INFO    ] ================================================
[2026-08-31 05:58:54,653.653 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:58:54
[2026-08-31 05:58:55,250.250 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:58:55,528.528 INFO    ] Initializing speech engine...
[2026-08-31 05:58:55,536.536 INFO    ] 2026-08-31 05:58:55
[2026-08-31 05:58:55,795.795 INFO    ] 2026-08-31 05:58:55
[2026-08-31 05:58:55,825.825 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:58:56,070.070 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:58:56,079.079 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:58:56,213.213 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:58:56,252.252 INFO    ] time= 31/08/2026 05:58:56
[2026-08-31 05:58:56,306.306 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:58:56,343.343 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:58:56,476.476 INFO    ] No existing commands found in stream
[2026-08-31 05:59:01,500.500 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:59:01,502.502 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-08-31 05:59:03,440.440 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 05:59:03,443.443 INFO    ] Checking for system updates...
[2026-08-31 05:59:03,484.484 INFO    ] 200
[2026-08-31 05:59:03,486.486 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:59:03,547.547 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:59:03,550.550 INFO    ] No update needed
[2026-08-31 05:59:03,552.552 INFO    ] Checking for camera pi updates...
[2026-08-31 05:59:03,590.590 INFO    ] 200
[2026-08-31 05:59:03,593.593 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:59:03,641.641 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:59:03,695.695 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:59:03,699.699 INFO    ] No camera update needed
[2026-08-31 05:59:03,701.701 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:59:03,704.704 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:59:03,710.710 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:59:03,716.716 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:59:05,759.759 INFO    ] ================================================
[2026-08-31 05:59:05,774.774 INFO    ] Launching Daemon at Mon Aug 31 05:59:05 IST 2026
[2026-08-31 05:59:05,785.785 INFO    ] ================================================
[2026-08-31 05:59:06,353.353 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:59:06
[2026-08-31 05:59:06,951.951 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:59:07,223.223 INFO    ] Initializing speech engine...
[2026-08-31 05:59:07,230.230 INFO    ] 2026-08-31 05:59:07
[2026-08-31 05:59:07,487.487 INFO    ] 2026-08-31 05:59:07
[2026-08-31 05:59:07,517.517 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:59:07,762.762 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:59:07,771.771 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:59:07,961.961 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:59:08,026.026 INFO    ] time= 31/08/2026 05:59:07
[2026-08-31 05:59:08,033.033 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:59:08,051.051 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:59:08,167.167 INFO    ] No existing commands found in stream
[2026-08-31 05:59:13,191.191 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:59:13,194.194 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-08-31 05:59:15,195.195 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 05:59:15,198.198 INFO    ] Checking for system updates...
[2026-08-31 05:59:15,233.233 INFO    ] 200
[2026-08-31 05:59:15,235.235 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:59:15,288.288 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:59:15,290.290 INFO    ] No update needed
[2026-08-31 05:59:15,293.293 INFO    ] Checking for camera pi updates...
[2026-08-31 05:59:15,327.327 INFO    ] 200
[2026-08-31 05:59:15,329.329 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:59:15,371.371 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:59:15,565.565 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:59:15,568.568 INFO    ] No camera update needed
[2026-08-31 05:59:15,570.570 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:59:15,573.573 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:59:15,578.578 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:59:15,583.583 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:59:17,623.623 INFO    ] ================================================
[2026-08-31 05:59:17,639.639 INFO    ] Launching Daemon at Mon Aug 31 05:59:17 IST 2026
[2026-08-31 05:59:17,653.653 INFO    ] ================================================
[2026-08-31 05:59:18,227.227 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:59:18
[2026-08-31 05:59:18,811.811 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:59:19,062.062 INFO    ] Initializing speech engine...
[2026-08-31 05:59:19,085.085 INFO    ] 2026-08-31 05:59:19
[2026-08-31 05:59:19,340.340 INFO    ] 2026-08-31 05:59:19
[2026-08-31 05:59:19,374.374 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:59:19,550.550 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:59:19,563.563 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:59:19,707.707 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:59:19,716.716 INFO    ] time= 31/08/2026 05:59:19
[2026-08-31 05:59:19,722.722 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:59:19,773.773 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:59:19,906.906 INFO    ] No existing commands found in stream
[2026-08-31 05:59:24,926.926 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:59:24,930.930 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-08-31 05:59:28,487.487 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 05:59:28,490.490 INFO    ] Checking for system updates...
[2026-08-31 05:59:28,525.525 INFO    ] 200
[2026-08-31 05:59:28,527.527 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:59:28,579.579 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:59:28,582.582 INFO    ] No update needed
[2026-08-31 05:59:28,584.584 INFO    ] Checking for camera pi updates...
[2026-08-31 05:59:28,618.618 INFO    ] 200
[2026-08-31 05:59:28,621.621 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:59:28,661.661 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:59:28,739.739 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 05:59:28,741.741 INFO    ] No camera update needed
[2026-08-31 05:59:28,744.744 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:59:28,746.746 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:59:28,751.751 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:59:28,756.756 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:59:30,796.796 INFO    ] ================================================
[2026-08-31 05:59:30,811.811 INFO    ] Launching Daemon at Mon Aug 31 05:59:30 IST 2026
[2026-08-31 05:59:30,822.822 INFO    ] ================================================
[2026-08-31 05:59:31,388.388 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:59:31
[2026-08-31 05:59:31,999.999 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:59:32,271.271 INFO    ] Initializing speech engine...
[2026-08-31 05:59:32,292.292 INFO    ] 2026-08-31 05:59:32
[2026-08-31 05:59:32,600.600 INFO    ] 2026-08-31 05:59:32
[2026-08-31 05:59:32,666.666 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:59:32,918.918 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:59:32,934.934 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:59:33,082.082 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:59:33,142.142 INFO    ] time= 31/08/2026 05:59:33
[2026-08-31 05:59:33,197.197 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:59:33,219.219 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:59:33,279.279 INFO    ] No existing commands found in stream
[2026-08-31 05:59:38,306.306 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:59:38,309.309 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-08-31 05:59:39,157.157 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 05:59:39,160.160 INFO    ] Checking for system updates...
[2026-08-31 05:59:39,199.199 INFO    ] 200
[2026-08-31 05:59:39,202.202 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:59:39,263.263 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:59:39,265.265 INFO    ] No update needed
[2026-08-31 05:59:39,268.268 INFO    ] Checking for camera pi updates...
[2026-08-31 05:59:39,306.306 INFO    ] 200
[2026-08-31 05:59:39,309.309 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:59:39,355.355 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:59:39,405.405 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:59:39,407.407 INFO    ] No camera update needed
[2026-08-31 05:59:39,410.410 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:59:39,412.412 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:59:39,418.418 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:59:39,423.423 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:59:41,462.462 INFO    ] ================================================
[2026-08-31 05:59:41,478.478 INFO    ] Launching Daemon at Mon Aug 31 05:59:41 IST 2026
[2026-08-31 05:59:41,488.488 INFO    ] ================================================
[2026-08-31 05:59:42,106.106 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:59:42
[2026-08-31 05:59:42,772.772 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:59:43,055.055 INFO    ] Initializing speech engine...
[2026-08-31 05:59:43,068.068 INFO    ] 2026-08-31 05:59:43
[2026-08-31 05:59:43,334.334 INFO    ] 2026-08-31 05:59:43
[2026-08-31 05:59:43,376.376 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:59:43,603.603 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:59:43,608.608 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:59:43,739.739 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:59:43,765.765 INFO    ] time= 31/08/2026 05:59:43
[2026-08-31 05:59:43,820.820 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:59:43,872.872 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:59:44,018.018 INFO    ] No existing commands found in stream
[2026-08-31 05:59:49,058.058 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:59:49,061.061 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-08-31 05:59:49,642.642 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 05:59:49,644.644 INFO    ] Checking for system updates...
[2026-08-31 05:59:49,679.679 INFO    ] 200
[2026-08-31 05:59:49,682.682 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:59:49,742.742 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:59:49,744.744 INFO    ] No update needed
[2026-08-31 05:59:49,747.747 INFO    ] Checking for camera pi updates...
[2026-08-31 05:59:49,780.780 INFO    ] 200
[2026-08-31 05:59:49,782.782 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 05:59:49,823.823 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 05:59:49,910.910 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 05:59:49,913.913 INFO    ] No camera update needed
[2026-08-31 05:59:49,915.915 INFO    ] Script finished. Safe exiting...
[2026-08-31 05:59:49,918.918 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 05:59:49,923.923 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 05:59:49,928.928 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 05:59:51,968.968 INFO    ] ================================================
[2026-08-31 05:59:51,984.984 INFO    ] Launching Daemon at Mon Aug 31 05:59:51 IST 2026
[2026-08-31 05:59:52,995.995 INFO    ] ================================================
[2026-08-31 05:59:52,559.559 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 05:59:52
[2026-08-31 05:59:53,143.143 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 05:59:53,410.410 INFO    ] Initializing speech engine...
[2026-08-31 05:59:53,419.419 INFO    ] 2026-08-31 05:59:53
[2026-08-31 05:59:53,664.664 INFO    ] 2026-08-31 05:59:53
[2026-08-31 05:59:53,699.699 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 05:59:53,950.950 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 05:59:53,959.959 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 05:59:54,176.176 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 05:59:54,217.217 INFO    ] time= 31/08/2026 05:59:54
[2026-08-31 05:59:54,223.223 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 05:59:54,241.241 INFO    ] Checking for existing commands in stream...
[2026-08-31 05:59:54,370.370 INFO    ] No existing commands found in stream
[2026-08-31 05:59:59,383.383 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 05:59:59,386.386 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-08-31 06:00:03,750.750 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 06:00:03,754.754 INFO    ] Checking for system updates...
[2026-08-31 06:00:03,917.917 INFO    ] 200
[2026-08-31 06:00:03,921.921 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:00:04,156.156 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:00:04,180.180 INFO    ] No update needed
[2026-08-31 06:00:04,184.184 INFO    ] Checking for camera pi updates...
[2026-08-31 06:00:04,351.351 INFO    ] 200
[2026-08-31 06:00:04,355.355 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:00:04,554.554 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:00:05,057.057 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:00:05,061.061 INFO    ] No camera update needed
[2026-08-31 06:00:05,064.064 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:00:05,088.088 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:00:05,095.095 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:00:05,125.125 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:00:07,199.199 INFO    ] ================================================
[2026-08-31 06:00:07,214.214 INFO    ] Launching Daemon at Mon Aug 31 06:00:07 IST 2026
[2026-08-31 06:00:07,225.225 INFO    ] ================================================
[2026-08-31 06:00:07,797.797 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:00:07
[2026-08-31 06:00:08,382.382 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:00:08,654.654 INFO    ] Initializing speech engine...
[2026-08-31 06:00:08,663.663 INFO    ] 2026-08-31 06:00:08
[2026-08-31 06:00:08,918.918 INFO    ] 2026-08-31 06:00:08
[2026-08-31 06:00:08,948.948 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:00:09,195.195 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:00:09,201.201 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:00:09,401.401 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:00:09,453.453 INFO    ] time= 31/08/2026 06:00:09
[2026-08-31 06:00:09,479.479 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:00:09,504.504 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:00:09,633.633 INFO    ] No existing commands found in stream
[2026-08-31 06:00:14,649.649 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:00:14,652.652 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-08-31 06:00:16,168.168 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 06:00:16,171.171 INFO    ] Checking for system updates...
[2026-08-31 06:00:16,213.213 INFO    ] 200
[2026-08-31 06:00:16,215.215 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:00:16,274.274 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:00:16,277.277 INFO    ] No update needed
[2026-08-31 06:00:16,280.280 INFO    ] Checking for camera pi updates...
[2026-08-31 06:00:16,315.315 INFO    ] 200
[2026-08-31 06:00:16,318.318 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:00:16,364.364 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:00:16,456.456 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:00:16,459.459 INFO    ] No camera update needed
[2026-08-31 06:00:16,462.462 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:00:16,464.464 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:00:16,470.470 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:00:16,476.476 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:00:18,518.518 INFO    ] ================================================
[2026-08-31 06:00:18,534.534 INFO    ] Launching Daemon at Mon Aug 31 06:00:18 IST 2026
[2026-08-31 06:00:18,545.545 INFO    ] ================================================
[2026-08-31 06:00:19,110.110 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:00:19
[2026-08-31 06:00:19,694.694 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:00:19,962.962 INFO    ] Initializing speech engine...
[2026-08-31 06:00:19,971.971 INFO    ] 2026-08-31 06:00:19
[2026-08-31 06:00:20,224.224 INFO    ] 2026-08-31 06:00:20
[2026-08-31 06:00:20,282.282 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:00:20,451.451 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:00:20,508.508 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:00:20,648.648 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:00:20,693.693 INFO    ] time= 31/08/2026 06:00:20
[2026-08-31 06:00:20,752.752 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:00:20,778.778 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:00:20,926.926 INFO    ] No existing commands found in stream
[2026-08-31 06:00:25,941.941 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:00:25,943.943 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-08-31 06:00:29,419.419 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 06:00:29,422.422 INFO    ] Checking for system updates...
[2026-08-31 06:00:29,461.461 INFO    ] 200
[2026-08-31 06:00:29,463.463 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:00:29,516.516 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:00:29,519.519 INFO    ] No update needed
[2026-08-31 06:00:29,527.527 INFO    ] Checking for camera pi updates...
[2026-08-31 06:00:29,561.561 INFO    ] 200
[2026-08-31 06:00:29,563.563 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:00:29,608.608 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:00:29,687.687 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:00:29,690.690 INFO    ] No camera update needed
[2026-08-31 06:00:29,692.692 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:00:29,694.694 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:00:29,700.700 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:00:29,704.704 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:00:31,747.747 INFO    ] ================================================
[2026-08-31 06:00:31,762.762 INFO    ] Launching Daemon at Mon Aug 31 06:00:31 IST 2026
[2026-08-31 06:00:31,773.773 INFO    ] ================================================
[2026-08-31 06:00:32,446.446 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:00:32
[2026-08-31 06:00:33,124.124 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:00:33,389.389 INFO    ] Initializing speech engine...
[2026-08-31 06:00:33,398.398 INFO    ] 2026-08-31 06:00:33
[2026-08-31 06:00:33,696.696 INFO    ] 2026-08-31 06:00:33
[2026-08-31 06:00:33,722.722 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:00:33,934.934 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:00:33,950.950 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:00:34,118.118 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:00:34,123.123 INFO    ] time= 31/08/2026 06:00:34
[2026-08-31 06:00:34,131.131 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:00:34,168.168 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:00:34,317.317 INFO    ] No existing commands found in stream
[2026-08-31 06:00:39,352.352 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:00:39,355.355 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-08-31 06:00:39,882.882 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 06:00:39,884.884 INFO    ] Checking for system updates...
[2026-08-31 06:00:39,924.924 INFO    ] 200
[2026-08-31 06:00:39,926.926 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:00:39,978.978 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:00:39,981.981 INFO    ] No update needed
[2026-08-31 06:00:39,983.983 INFO    ] Checking for camera pi updates...
[2026-08-31 06:00:40,017.017 INFO    ] 200
[2026-08-31 06:00:40,020.020 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:00:40,065.065 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:00:40,149.149 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:00:40,152.152 INFO    ] No camera update needed
[2026-08-31 06:00:40,154.154 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:00:40,156.156 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:00:40,162.162 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:00:40,167.167 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:00:42,208.208 INFO    ] ================================================
[2026-08-31 06:00:42,223.223 INFO    ] Launching Daemon at Mon Aug 31 06:00:42 IST 2026
[2026-08-31 06:00:42,234.234 INFO    ] ================================================
[2026-08-31 06:00:42,802.802 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:00:42
[2026-08-31 06:00:43,385.385 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:00:43,643.643 INFO    ] Initializing speech engine...
[2026-08-31 06:00:43,662.662 INFO    ] 2026-08-31 06:00:43
[2026-08-31 06:00:43,907.907 INFO    ] 2026-08-31 06:00:43
[2026-08-31 06:00:43,942.942 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:00:44,135.135 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:00:44,162.162 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:00:44,333.333 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:00:44,375.375 INFO    ] time= 31/08/2026 06:00:44
[2026-08-31 06:00:44,435.435 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:00:44,467.467 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:00:44,599.599 INFO    ] No existing commands found in stream
[2026-08-31 06:00:49,622.622 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:00:49,625.625 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-08-31 06:00:50,278.278 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 06:00:50,281.281 INFO    ] Checking for system updates...
[2026-08-31 06:00:50,316.316 INFO    ] 200
[2026-08-31 06:00:50,319.319 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:00:50,371.371 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:00:50,373.373 INFO    ] No update needed
[2026-08-31 06:00:50,376.376 INFO    ] Checking for camera pi updates...
[2026-08-31 06:00:50,413.413 INFO    ] 200
[2026-08-31 06:00:50,416.416 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:00:50,457.457 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:00:50,542.542 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:00:50,545.545 INFO    ] No camera update needed
[2026-08-31 06:00:50,547.547 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:00:50,549.549 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:00:50,555.555 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:00:50,560.560 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:00:52,603.603 INFO    ] ================================================
[2026-08-31 06:00:52,619.619 INFO    ] Launching Daemon at Mon Aug 31 06:00:52 IST 2026
[2026-08-31 06:00:52,630.630 INFO    ] ================================================
[2026-08-31 06:00:53,214.214 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:00:53
[2026-08-31 06:00:53,812.812 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:00:54,091.091 INFO    ] Initializing speech engine...
[2026-08-31 06:00:54,099.099 INFO    ] 2026-08-31 06:00:54
[2026-08-31 06:00:54,371.371 INFO    ] 2026-08-31 06:00:54
[2026-08-31 06:00:54,413.413 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:00:54,693.693 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:00:54,701.701 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:00:54,885.885 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:00:54,902.902 INFO    ] time= 31/08/2026 06:00:54
[2026-08-31 06:00:54,920.920 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:00:54,943.943 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:00:55,065.065 INFO    ] No existing commands found in stream
[2026-08-31 06:01:00,095.095 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:01:00,098.098 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-08-31 06:01:05,155.155 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 06:01:05,157.157 INFO    ] Checking for system updates...
[2026-08-31 06:01:05,193.193 INFO    ] 200
[2026-08-31 06:01:05,195.195 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:01:05,247.247 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:01:05,256.256 INFO    ] No update needed
[2026-08-31 06:01:05,259.259 INFO    ] Checking for camera pi updates...
[2026-08-31 06:01:05,294.294 INFO    ] 200
[2026-08-31 06:01:05,297.297 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:01:05,341.341 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:01:05,429.429 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:01:05,431.431 INFO    ] No camera update needed
[2026-08-31 06:01:05,434.434 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:01:05,436.436 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:01:05,442.442 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:01:05,447.447 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:01:07,491.491 INFO    ] ================================================
[2026-08-31 06:01:07,506.506 INFO    ] Launching Daemon at Mon Aug 31 06:01:07 IST 2026
[2026-08-31 06:01:07,517.517 INFO    ] ================================================
[2026-08-31 06:01:08,121.121 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:01:08
[2026-08-31 06:01:08,723.723 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:01:09,001.001 INFO    ] Initializing speech engine...
[2026-08-31 06:01:09,008.008 INFO    ] 2026-08-31 06:01:09
[2026-08-31 06:01:09,273.273 INFO    ] 2026-08-31 06:01:09
[2026-08-31 06:01:09,325.325 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:01:09,545.545 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:01:09,554.554 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:01:09,689.689 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:01:09,760.760 INFO    ] time= 31/08/2026 06:01:09
[2026-08-31 06:01:09,816.816 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:01:09,823.823 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:01:09,963.963 INFO    ] No existing commands found in stream
[2026-08-31 06:01:14,979.979 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:01:14,982.982 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-08-31 06:01:17,369.369 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 06:01:17,371.371 INFO    ] Checking for system updates...
[2026-08-31 06:01:17,407.407 INFO    ] 200
[2026-08-31 06:01:17,410.410 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:01:17,461.461 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:01:17,464.464 INFO    ] No update needed
[2026-08-31 06:01:17,466.466 INFO    ] Checking for camera pi updates...
[2026-08-31 06:01:17,504.504 INFO    ] 200
[2026-08-31 06:01:17,506.506 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:01:17,551.551 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:01:17,736.736 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:01:17,739.739 INFO    ] No camera update needed
[2026-08-31 06:01:17,741.741 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:01:17,743.743 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:01:17,749.749 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:01:17,754.754 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:01:19,795.795 INFO    ] ================================================
[2026-08-31 06:01:19,810.810 INFO    ] Launching Daemon at Mon Aug 31 06:01:19 IST 2026
[2026-08-31 06:01:19,820.820 INFO    ] ================================================
[2026-08-31 06:01:20,400.400 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:01:20
[2026-08-31 06:01:20,985.985 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:01:21,252.252 INFO    ] Initializing speech engine...
[2026-08-31 06:01:21,261.261 INFO    ] 2026-08-31 06:01:21
[2026-08-31 06:01:21,508.508 INFO    ] 2026-08-31 06:01:21
[2026-08-31 06:01:21,542.542 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:01:21,714.714 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:01:21,725.725 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:01:21,869.869 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:01:21,877.877 INFO    ] time= 31/08/2026 06:01:21
[2026-08-31 06:01:21,928.928 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:01:21,943.943 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:01:22,051.051 INFO    ] No existing commands found in stream
[2026-08-31 06:01:27,080.080 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:01:27,082.082 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-08-31 06:01:30,962.962 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 06:01:30,965.965 INFO    ] Checking for system updates...
[2026-08-31 06:01:31,000.000 INFO    ] 200
[2026-08-31 06:01:31,003.003 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:01:31,061.061 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:01:31,063.063 INFO    ] No update needed
[2026-08-31 06:01:31,065.065 INFO    ] Checking for camera pi updates...
[2026-08-31 06:01:31,102.102 INFO    ] 200
[2026-08-31 06:01:31,104.104 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:01:31,149.149 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:01:31,249.249 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:01:31,251.251 INFO    ] No camera update needed
[2026-08-31 06:01:31,253.253 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:01:31,256.256 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:01:31,261.261 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:01:31,266.266 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:01:33,308.308 INFO    ] ================================================
[2026-08-31 06:01:33,323.323 INFO    ] Launching Daemon at Mon Aug 31 06:01:33 IST 2026
[2026-08-31 06:01:33,333.333 INFO    ] ================================================
[2026-08-31 06:01:33,976.976 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:01:33
[2026-08-31 06:01:34,636.636 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:01:34,941.941 INFO    ] Initializing speech engine...
[2026-08-31 06:01:34,953.953 INFO    ] 2026-08-31 06:01:34
[2026-08-31 06:01:35,207.207 INFO    ] 2026-08-31 06:01:35
[2026-08-31 06:01:35,259.259 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:01:35,509.509 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:01:35,526.526 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:01:35,717.717 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:01:35,745.745 INFO    ] time= 31/08/2026 06:01:35
[2026-08-31 06:01:35,751.751 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:01:35,772.772 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:01:35,894.894 INFO    ] No existing commands found in stream
[2026-08-31 06:01:40,911.911 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:01:40,914.914 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-08-31 06:01:43,689.689 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 06:01:43,691.691 INFO    ] Checking for system updates...
[2026-08-31 06:01:43,726.726 INFO    ] 200
[2026-08-31 06:01:43,729.729 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:01:43,784.784 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:01:43,786.786 INFO    ] No update needed
[2026-08-31 06:01:43,789.789 INFO    ] Checking for camera pi updates...
[2026-08-31 06:01:43,822.822 INFO    ] 200
[2026-08-31 06:01:43,824.824 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:01:43,869.869 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:01:43,952.952 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:01:43,954.954 INFO    ] No camera update needed
[2026-08-31 06:01:43,957.957 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:01:43,959.959 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:01:43,965.965 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:01:43,970.970 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:01:46,011.011 INFO    ] ================================================
[2026-08-31 06:01:46,026.026 INFO    ] Launching Daemon at Mon Aug 31 06:01:46 IST 2026
[2026-08-31 06:01:46,036.036 INFO    ] ================================================
[2026-08-31 06:01:46,615.615 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:01:46
[2026-08-31 06:01:47,210.210 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:01:47,487.487 INFO    ] Initializing speech engine...
[2026-08-31 06:01:47,495.495 INFO    ] 2026-08-31 06:01:47
[2026-08-31 06:01:47,755.755 INFO    ] 2026-08-31 06:01:47
[2026-08-31 06:01:47,784.784 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:01:48,027.027 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:01:48,036.036 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:01:48,168.168 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:01:48,215.215 INFO    ] time= 31/08/2026 06:01:48
[2026-08-31 06:01:48,269.269 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:01:48,300.300 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:01:48,390.390 INFO    ] No existing commands found in stream
[2026-08-31 06:01:53,416.416 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:01:53,419.419 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-08-31 06:01:56,456.456 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 06:01:56,459.459 INFO    ] Checking for system updates...
[2026-08-31 06:01:56,496.496 INFO    ] 200
[2026-08-31 06:01:56,499.499 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:01:56,557.557 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:01:56,560.560 INFO    ] No update needed
[2026-08-31 06:01:56,563.563 INFO    ] Checking for camera pi updates...
[2026-08-31 06:01:56,601.601 INFO    ] 200
[2026-08-31 06:01:56,604.604 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:01:56,645.645 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:01:56,726.726 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:01:56,729.729 INFO    ] No camera update needed
[2026-08-31 06:01:56,731.731 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:01:56,734.734 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:01:56,740.740 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:01:56,745.745 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:01:58,787.787 INFO    ] ================================================
[2026-08-31 06:01:58,802.802 INFO    ] Launching Daemon at Mon Aug 31 06:01:58 IST 2026
[2026-08-31 06:01:58,812.812 INFO    ] ================================================
[2026-08-31 06:01:59,378.378 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:01:59
[2026-08-31 06:01:59,961.961 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:02:00,209.209 INFO    ] Initializing speech engine...
[2026-08-31 06:02:00,224.224 INFO    ] 2026-08-31 06:02:00
[2026-08-31 06:02:00,490.490 INFO    ] 2026-08-31 06:02:00
[2026-08-31 06:02:00,524.524 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:02:00,722.722 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:02:00,745.745 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:02:00,911.911 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:02:00,929.929 INFO    ] time= 31/08/2026 06:02:00
[2026-08-31 06:02:00,976.976 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:02:01,035.035 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:02:01,113.113 INFO    ] No existing commands found in stream
[2026-08-31 06:02:06,125.125 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:02:06,127.127 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-08-31 06:02:09,195.195 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 06:02:09,197.197 INFO    ] Checking for system updates...
[2026-08-31 06:02:09,237.237 INFO    ] 200
[2026-08-31 06:02:09,240.240 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:02:09,303.303 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:02:09,305.305 INFO    ] No update needed
[2026-08-31 06:02:09,308.308 INFO    ] Checking for camera pi updates...
[2026-08-31 06:02:09,345.345 INFO    ] 200
[2026-08-31 06:02:09,348.348 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:02:09,393.393 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:02:09,479.479 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:02:09,482.482 INFO    ] No camera update needed
[2026-08-31 06:02:09,484.484 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:02:09,487.487 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:02:09,493.493 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:02:09,498.498 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:02:11,538.538 INFO    ] ================================================
[2026-08-31 06:02:11,553.553 INFO    ] Launching Daemon at Mon Aug 31 06:02:11 IST 2026
[2026-08-31 06:02:11,564.564 INFO    ] ================================================
[2026-08-31 06:02:12,130.130 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:02:12
[2026-08-31 06:02:12,712.712 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:02:12,980.980 INFO    ] Initializing speech engine...
[2026-08-31 06:02:12,989.989 INFO    ] 2026-08-31 06:02:12
[2026-08-31 06:02:13,234.234 INFO    ] 2026-08-31 06:02:13
[2026-08-31 06:02:13,270.270 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:02:13,529.529 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:02:13,533.533 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:02:13,670.670 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:02:13,735.735 INFO    ] time= 31/08/2026 06:02:13
[2026-08-31 06:02:13,795.795 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:02:13,806.806 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:02:13,911.911 INFO    ] No existing commands found in stream
[2026-08-31 06:02:18,921.921 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:02:18,923.923 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-08-31 06:02:21,595.595 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 06:02:21,597.597 INFO    ] Checking for system updates...
[2026-08-31 06:02:21,635.635 INFO    ] 200
[2026-08-31 06:02:21,638.638 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:02:21,690.690 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:02:21,692.692 INFO    ] No update needed
[2026-08-31 06:02:21,695.695 INFO    ] Checking for camera pi updates...
[2026-08-31 06:02:21,732.732 INFO    ] 200
[2026-08-31 06:02:21,734.734 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:02:21,783.783 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:02:21,884.884 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:02:21,886.886 INFO    ] No camera update needed
[2026-08-31 06:02:21,889.889 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:02:21,891.891 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:02:21,896.896 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:02:21,901.901 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:02:23,942.942 INFO    ] ================================================
[2026-08-31 06:02:23,958.958 INFO    ] Launching Daemon at Mon Aug 31 06:02:23 IST 2026
[2026-08-31 06:02:23,968.968 INFO    ] ================================================
[2026-08-31 06:02:24,584.584 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:02:24
[2026-08-31 06:02:25,173.173 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:02:25,436.436 INFO    ] Initializing speech engine...
[2026-08-31 06:02:25,449.449 INFO    ] 2026-08-31 06:02:25
[2026-08-31 06:02:25,731.731 INFO    ] 2026-08-31 06:02:25
[2026-08-31 06:02:25,756.756 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:02:25,963.963 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:02:25,977.977 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:02:26,129.129 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:02:26,141.141 INFO    ] time= 31/08/2026 06:02:26
[2026-08-31 06:02:26,148.148 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:02:26,156.156 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:02:26,241.241 INFO    ] No existing commands found in stream
[2026-08-31 06:02:31,277.277 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:02:31,280.280 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-08-31 06:02:32,518.518 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 06:02:32,521.521 INFO    ] Checking for system updates...
[2026-08-31 06:02:32,559.559 INFO    ] 200
[2026-08-31 06:02:32,562.562 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:02:32,625.625 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:02:32,628.628 INFO    ] No update needed
[2026-08-31 06:02:32,631.631 INFO    ] Checking for camera pi updates...
[2026-08-31 06:02:32,671.671 INFO    ] 200
[2026-08-31 06:02:32,674.674 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:02:32,725.725 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:02:32,780.780 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:02:32,783.783 INFO    ] No camera update needed
[2026-08-31 06:02:32,786.786 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:02:32,789.789 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:02:32,795.795 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:02:32,800.800 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:02:34,840.840 INFO    ] ================================================
[2026-08-31 06:02:34,855.855 INFO    ] Launching Daemon at Mon Aug 31 06:02:34 IST 2026
[2026-08-31 06:02:34,865.865 INFO    ] ================================================
[2026-08-31 06:02:35,449.449 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:02:35
[2026-08-31 06:02:36,037.037 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:02:36,297.297 INFO    ] Initializing speech engine...
[2026-08-31 06:02:36,314.314 INFO    ] 2026-08-31 06:02:36
[2026-08-31 06:02:36,603.603 INFO    ] 2026-08-31 06:02:36
[2026-08-31 06:02:36,630.630 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:02:36,797.797 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:02:36,807.807 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:02:36,990.990 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:02:37,004.004 INFO    ] time= 31/08/2026 06:02:36
[2026-08-31 06:02:37,024.024 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:02:37,040.040 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:02:37,123.123 INFO    ] No existing commands found in stream
[2026-08-31 06:02:42,139.139 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:02:42,141.141 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-08-31 06:02:44,254.254 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 06:02:44,257.257 INFO    ] Checking for system updates...
[2026-08-31 06:02:44,293.293 INFO    ] 200
[2026-08-31 06:02:44,295.295 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:02:44,355.355 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:02:44,358.358 INFO    ] No update needed
[2026-08-31 06:02:44,360.360 INFO    ] Checking for camera pi updates...
[2026-08-31 06:02:44,393.393 INFO    ] 200
[2026-08-31 06:02:44,396.396 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:02:44,436.436 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:02:44,517.517 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:02:44,520.520 INFO    ] No camera update needed
[2026-08-31 06:02:44,522.522 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:02:44,524.524 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:02:44,530.530 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:02:44,535.535 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:02:46,574.574 INFO    ] ================================================
[2026-08-31 06:02:46,590.590 INFO    ] Launching Daemon at Mon Aug 31 06:02:46 IST 2026
[2026-08-31 06:02:46,601.601 INFO    ] ================================================
[2026-08-31 06:02:47,167.167 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:02:47
[2026-08-31 06:02:47,754.754 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:02:48,025.025 INFO    ] Initializing speech engine...
[2026-08-31 06:02:48,031.031 INFO    ] 2026-08-31 06:02:48
[2026-08-31 06:02:48,275.275 INFO    ] 2026-08-31 06:02:48
[2026-08-31 06:02:48,311.311 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:02:48,509.509 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:02:48,523.523 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:02:48,690.690 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:02:48,697.697 INFO    ] time= 31/08/2026 06:02:48
[2026-08-31 06:02:48,702.702 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:02:48,709.709 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:02:48,812.812 INFO    ] No existing commands found in stream
[2026-08-31 06:02:53,842.842 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:02:53,845.845 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-08-31 06:02:54,755.755 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 06:02:54,758.758 INFO    ] Checking for system updates...
[2026-08-31 06:02:54,794.794 INFO    ] 200
[2026-08-31 06:02:54,797.797 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:02:54,850.850 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:02:54,852.852 INFO    ] No update needed
[2026-08-31 06:02:54,855.855 INFO    ] Checking for camera pi updates...
[2026-08-31 06:02:54,888.888 INFO    ] 200
[2026-08-31 06:02:54,891.891 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:02:54,931.931 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:02:55,023.023 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:02:55,025.025 INFO    ] No camera update needed
[2026-08-31 06:02:55,028.028 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:02:55,030.030 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:02:55,036.036 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:02:55,041.041 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:02:57,080.080 INFO    ] ================================================
[2026-08-31 06:02:57,095.095 INFO    ] Launching Daemon at Mon Aug 31 06:02:57 IST 2026
[2026-08-31 06:02:57,106.106 INFO    ] ================================================
[2026-08-31 06:02:57,761.761 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:02:57
[2026-08-31 06:02:58,374.374 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:02:58,646.646 INFO    ] Initializing speech engine...
[2026-08-31 06:02:58,656.656 INFO    ] 2026-08-31 06:02:58
[2026-08-31 06:02:58,907.907 INFO    ] 2026-08-31 06:02:58
[2026-08-31 06:02:58,942.942 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:02:59,203.203 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:02:59,213.213 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:02:59,356.356 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:02:59,405.405 INFO    ] time= 31/08/2026 06:02:59
[2026-08-31 06:02:59,460.460 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:02:59,486.486 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:02:59,626.626 INFO    ] No existing commands found in stream
[2026-08-31 06:03:04,651.651 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:03:04,654.654 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-08-31 06:03:05,894.894 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 06:03:05,897.897 INFO    ] Checking for system updates...
[2026-08-31 06:03:05,932.932 INFO    ] 200
[2026-08-31 06:03:05,935.935 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:03:05,996.996 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:03:05,998.998 INFO    ] No update needed
[2026-08-31 06:03:06,001.001 INFO    ] Checking for camera pi updates...
[2026-08-31 06:03:06,034.034 INFO    ] 200
[2026-08-31 06:03:06,036.036 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:03:06,077.077 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:03:06,151.151 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:03:06,154.154 INFO    ] No camera update needed
[2026-08-31 06:03:06,156.156 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:03:06,159.159 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:03:06,164.164 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:03:06,170.170 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:03:08,213.213 INFO    ] ================================================
[2026-08-31 06:03:08,229.229 INFO    ] Launching Daemon at Mon Aug 31 06:03:08 IST 2026
[2026-08-31 06:03:08,239.239 INFO    ] ================================================
[2026-08-31 06:03:08,902.902 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:03:08
[2026-08-31 06:03:09,586.586 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:03:09,901.901 INFO    ] Initializing speech engine...
[2026-08-31 06:03:09,906.906 INFO    ] 2026-08-31 06:03:09
[2026-08-31 06:03:10,207.207 INFO    ] 2026-08-31 06:03:10
[2026-08-31 06:03:10,289.289 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:03:10,469.469 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:03:10,474.474 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:03:10,675.675 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:03:10,710.710 INFO    ] time= 31/08/2026 06:03:10
[2026-08-31 06:03:10,724.724 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:03:10,734.734 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:03:10,846.846 INFO    ] No existing commands found in stream
[2026-08-31 06:03:15,871.871 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:03:15,873.873 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-08-31 06:03:19,332.332 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 06:03:19,335.335 INFO    ] Checking for system updates...
[2026-08-31 06:03:19,370.370 INFO    ] 200
[2026-08-31 06:03:19,373.373 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:03:19,427.427 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:03:19,430.430 INFO    ] No update needed
[2026-08-31 06:03:19,432.432 INFO    ] Checking for camera pi updates...
[2026-08-31 06:03:19,466.466 INFO    ] 200
[2026-08-31 06:03:19,469.469 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:03:19,514.514 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:03:19,613.613 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:03:19,615.615 INFO    ] No camera update needed
[2026-08-31 06:03:19,618.618 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:03:19,620.620 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:03:19,625.625 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:03:19,631.631 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:03:21,670.670 INFO    ] ================================================
[2026-08-31 06:03:21,685.685 INFO    ] Launching Daemon at Mon Aug 31 06:03:21 IST 2026
[2026-08-31 06:03:21,696.696 INFO    ] ================================================
[2026-08-31 06:03:22,264.264 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:03:22
[2026-08-31 06:03:22,850.850 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:03:23,096.096 INFO    ] Initializing speech engine...
[2026-08-31 06:03:23,104.104 INFO    ] 2026-08-31 06:03:23
[2026-08-31 06:03:23,381.381 INFO    ] 2026-08-31 06:03:23
[2026-08-31 06:03:23,414.414 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:03:23,593.593 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:03:23,606.606 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:03:23,780.780 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:03:23,827.827 INFO    ] time= 31/08/2026 06:03:23
[2026-08-31 06:03:23,853.853 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:03:23,908.908 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:03:24,009.009 INFO    ] No existing commands found in stream
[2026-08-31 06:03:29,021.021 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:03:29,023.023 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-08-31 06:03:32,094.094 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 06:03:32,097.097 INFO    ] Checking for system updates...
[2026-08-31 06:03:32,135.135 INFO    ] 200
[2026-08-31 06:03:32,138.138 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:03:32,210.210 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:03:32,213.213 INFO    ] No update needed
[2026-08-31 06:03:32,216.216 INFO    ] Checking for camera pi updates...
[2026-08-31 06:03:32,255.255 INFO    ] 200
[2026-08-31 06:03:32,258.258 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:03:32,308.308 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:03:32,358.358 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:03:32,361.361 INFO    ] No camera update needed
[2026-08-31 06:03:32,364.364 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:03:32,366.366 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:03:32,373.373 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:03:32,379.379 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:03:34,421.421 INFO    ] ================================================
[2026-08-31 06:03:34,436.436 INFO    ] Launching Daemon at Mon Aug 31 06:03:34 IST 2026
[2026-08-31 06:03:34,447.447 INFO    ] ================================================
[2026-08-31 06:03:35,027.027 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:03:35
[2026-08-31 06:03:35,625.625 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:03:35,898.898 INFO    ] Initializing speech engine...
[2026-08-31 06:03:35,907.907 INFO    ] 2026-08-31 06:03:35
[2026-08-31 06:03:36,155.155 INFO    ] 2026-08-31 06:03:36
[2026-08-31 06:03:36,197.197 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:03:36,362.362 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:03:36,385.385 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:03:36,518.518 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:03:36,523.523 INFO    ] time= 31/08/2026 06:03:36
[2026-08-31 06:03:36,530.530 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:03:36,581.581 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:03:36,719.719 INFO    ] No existing commands found in stream
[2026-08-31 06:03:41,730.730 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:03:41,733.733 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-08-31 06:03:43,437.437 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 06:03:43,440.440 INFO    ] Checking for system updates...
[2026-08-31 06:03:43,479.479 INFO    ] 200
[2026-08-31 06:03:43,482.482 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:03:43,539.539 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:03:43,542.542 INFO    ] No update needed
[2026-08-31 06:03:43,544.544 INFO    ] Checking for camera pi updates...
[2026-08-31 06:03:43,581.581 INFO    ] 200
[2026-08-31 06:03:43,583.583 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:03:43,628.628 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:03:43,718.718 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:03:43,720.720 INFO    ] No camera update needed
[2026-08-31 06:03:43,723.723 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:03:43,725.725 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:03:43,730.730 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:03:43,735.735 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:03:45,775.775 INFO    ] ================================================
[2026-08-31 06:03:45,790.790 INFO    ] Launching Daemon at Mon Aug 31 06:03:45 IST 2026
[2026-08-31 06:03:45,800.800 INFO    ] ================================================
[2026-08-31 06:03:46,366.366 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:03:46
[2026-08-31 06:03:46,949.949 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:03:47,192.192 INFO    ] Initializing speech engine...
[2026-08-31 06:03:47,200.200 INFO    ] 2026-08-31 06:03:47
[2026-08-31 06:03:47,470.470 INFO    ] 2026-08-31 06:03:47
[2026-08-31 06:03:47,505.505 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:03:47,761.761 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:03:47,765.765 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:03:47,896.896 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:03:47,944.944 INFO    ] time= 31/08/2026 06:03:47
[2026-08-31 06:03:48,003.003 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:03:48,029.029 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:03:48,162.162 INFO    ] No existing commands found in stream
[2026-08-31 06:03:53,183.183 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:03:53,186.186 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-08-31 06:03:55,886.886 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 06:03:55,889.889 INFO    ] Checking for system updates...
[2026-08-31 06:03:55,928.928 INFO    ] 200
[2026-08-31 06:03:55,930.930 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:03:55,988.988 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:03:55,991.991 INFO    ] No update needed
[2026-08-31 06:03:55,993.993 INFO    ] Checking for camera pi updates...
[2026-08-31 06:03:56,029.029 INFO    ] 200
[2026-08-31 06:03:56,032.032 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:03:56,072.072 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:03:56,162.162 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:03:56,165.165 INFO    ] No camera update needed
[2026-08-31 06:03:56,167.167 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:03:56,170.170 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:03:56,175.175 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:03:56,180.180 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:03:58,219.219 INFO    ] ================================================
[2026-08-31 06:03:58,234.234 INFO    ] Launching Daemon at Mon Aug 31 06:03:58 IST 2026
[2026-08-31 06:03:58,245.245 INFO    ] ================================================
[2026-08-31 06:03:58,887.887 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:03:58
[2026-08-31 06:03:59,550.550 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:03:59,851.851 INFO    ] Initializing speech engine...
[2026-08-31 06:03:59,865.865 INFO    ] 2026-08-31 06:03:59
[2026-08-31 06:04:00,131.131 INFO    ] 2026-08-31 06:04:00
[2026-08-31 06:04:00,184.184 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:04:00,408.408 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:04:00,419.419 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:04:00,559.559 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:04:00,609.609 INFO    ] time= 31/08/2026 06:04:00
[2026-08-31 06:04:00,659.659 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:04:00,692.692 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:04:00,756.756 INFO    ] No existing commands found in stream
[2026-08-31 06:04:05,780.780 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:04:05,783.783 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-08-31 06:04:10,234.234 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 06:04:10,237.237 INFO    ] Checking for system updates...
[2026-08-31 06:04:10,278.278 INFO    ] 200
[2026-08-31 06:04:10,281.281 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:04:10,333.333 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:04:10,336.336 INFO    ] No update needed
[2026-08-31 06:04:10,339.339 INFO    ] Checking for camera pi updates...
[2026-08-31 06:04:10,374.374 INFO    ] 200
[2026-08-31 06:04:10,377.377 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:04:10,422.422 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:04:10,514.514 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:04:10,517.517 INFO    ] No camera update needed
[2026-08-31 06:04:10,519.519 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:04:10,521.521 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:04:10,527.527 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:04:10,532.532 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:04:12,572.572 INFO    ] ================================================
[2026-08-31 06:04:12,588.588 INFO    ] Launching Daemon at Mon Aug 31 06:04:12 IST 2026
[2026-08-31 06:04:12,599.599 INFO    ] ================================================
[2026-08-31 06:04:13,181.181 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:04:13
[2026-08-31 06:04:13,779.779 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:04:14,041.041 INFO    ] Initializing speech engine...
[2026-08-31 06:04:14,047.047 INFO    ] 2026-08-31 06:04:14
[2026-08-31 06:04:14,339.339 INFO    ] 2026-08-31 06:04:14
[2026-08-31 06:04:14,378.378 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:04:14,568.568 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:04:14,574.574 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:04:14,707.707 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:04:14,726.726 INFO    ] time= 31/08/2026 06:04:14
[2026-08-31 06:04:14,747.747 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:04:14,757.757 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:04:14,836.836 INFO    ] No existing commands found in stream
[2026-08-31 06:04:19,871.871 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:04:19,874.874 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-08-31 06:04:23,294.294 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 06:04:23,297.297 INFO    ] Checking for system updates...
[2026-08-31 06:04:23,336.336 INFO    ] 200
[2026-08-31 06:04:23,339.339 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:04:23,396.396 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:04:23,399.399 INFO    ] No update needed
[2026-08-31 06:04:23,401.401 INFO    ] Checking for camera pi updates...
[2026-08-31 06:04:23,438.438 INFO    ] 200
[2026-08-31 06:04:23,440.440 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:04:23,480.480 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:04:23,560.560 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:04:23,563.563 INFO    ] No camera update needed
[2026-08-31 06:04:23,565.565 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:04:23,567.567 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:04:23,573.573 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:04:23,578.578 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:04:25,618.618 INFO    ] ================================================
[2026-08-31 06:04:25,632.632 INFO    ] Launching Daemon at Mon Aug 31 06:04:25 IST 2026
[2026-08-31 06:04:25,644.644 INFO    ] ================================================
[2026-08-31 06:04:26,210.210 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:04:26
[2026-08-31 06:04:26,792.792 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:04:27,065.065 INFO    ] Initializing speech engine...
[2026-08-31 06:04:27,071.071 INFO    ] 2026-08-31 06:04:27
[2026-08-31 06:04:27,318.318 INFO    ] 2026-08-31 06:04:27
[2026-08-31 06:04:27,355.355 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:04:27,610.610 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:04:27,619.619 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:04:27,753.753 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:04:27,790.790 INFO    ] time= 31/08/2026 06:04:27
[2026-08-31 06:04:27,849.849 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:04:27,889.889 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:04:27,949.949 INFO    ] No existing commands found in stream
[2026-08-31 06:04:32,963.963 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:04:32,965.965 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-08-31 06:04:33,684.684 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 06:04:33,687.687 INFO    ] Checking for system updates...
[2026-08-31 06:04:33,725.725 INFO    ] 200
[2026-08-31 06:04:33,728.728 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:04:33,784.784 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:04:33,786.786 INFO    ] No update needed
[2026-08-31 06:04:33,789.789 INFO    ] Checking for camera pi updates...
[2026-08-31 06:04:33,823.823 INFO    ] 200
[2026-08-31 06:04:33,825.825 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:04:33,869.869 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:04:33,945.945 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:04:33,948.948 INFO    ] No camera update needed
[2026-08-31 06:04:33,950.950 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:04:33,952.952 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:04:33,958.958 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:04:33,963.963 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:04:36,003.003 INFO    ] ================================================
[2026-08-31 06:04:36,018.018 INFO    ] Launching Daemon at Mon Aug 31 06:04:36 IST 2026
[2026-08-31 06:04:36,029.029 INFO    ] ================================================
[2026-08-31 06:04:36,607.607 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:04:36
[2026-08-31 06:04:37,201.201 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:04:37,476.476 INFO    ] Initializing speech engine...
[2026-08-31 06:04:37,482.482 INFO    ] 2026-08-31 06:04:37
[2026-08-31 06:04:37,742.742 INFO    ] 2026-08-31 06:04:37
[2026-08-31 06:04:37,796.796 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:04:38,018.018 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:04:38,027.027 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:04:38,241.241 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:04:38,286.286 INFO    ] time= 31/08/2026 06:04:38
[2026-08-31 06:04:38,292.292 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:04:38,310.310 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:04:38,436.436 INFO    ] No existing commands found in stream
[2026-08-31 06:04:43,450.450 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:04:43,453.453 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-08-31 06:04:46,782.782 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 06:04:46,785.785 INFO    ] Checking for system updates...
[2026-08-31 06:04:46,820.820 INFO    ] 200
[2026-08-31 06:04:46,823.823 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:04:46,874.874 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:04:46,877.877 INFO    ] No update needed
[2026-08-31 06:04:46,879.879 INFO    ] Checking for camera pi updates...
[2026-08-31 06:04:46,913.913 INFO    ] 200
[2026-08-31 06:04:46,915.915 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:04:46,956.956 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:04:47,041.041 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:04:47,043.043 INFO    ] No camera update needed
[2026-08-31 06:04:47,045.045 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:04:47,048.048 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:04:47,053.053 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:04:47,058.058 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:04:49,100.100 INFO    ] ================================================
[2026-08-31 06:04:49,116.116 INFO    ] Launching Daemon at Mon Aug 31 06:04:49 IST 2026
[2026-08-31 06:04:49,127.127 INFO    ] ================================================
[2026-08-31 06:04:49,705.705 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:04:49
[2026-08-31 06:04:50,301.301 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:04:50,568.568 INFO    ] Initializing speech engine...
[2026-08-31 06:04:50,581.581 INFO    ] 2026-08-31 06:04:50
[2026-08-31 06:04:50,829.829 INFO    ] 2026-08-31 06:04:50
[2026-08-31 06:04:50,864.864 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:04:51,037.037 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:04:51,049.049 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:04:51,191.191 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:04:51,199.199 INFO    ] time= 31/08/2026 06:04:51
[2026-08-31 06:04:51,250.250 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:04:51,266.266 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:04:51,394.394 INFO    ] No existing commands found in stream
[2026-08-31 06:04:56,405.405 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:04:56,408.408 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-08-31 06:05:00,313.313 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 06:05:00,316.316 INFO    ] Checking for system updates...
[2026-08-31 06:05:00,354.354 INFO    ] 200
[2026-08-31 06:05:00,356.356 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:05:00,412.412 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:05:00,415.415 INFO    ] No update needed
[2026-08-31 06:05:00,417.417 INFO    ] Checking for camera pi updates...
[2026-08-31 06:05:00,453.453 INFO    ] 200
[2026-08-31 06:05:00,455.455 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:05:00,498.498 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:05:00,616.616 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:05:00,625.625 INFO    ] No camera update needed
[2026-08-31 06:05:00,627.627 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:05:00,630.630 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:05:00,635.635 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:05:00,640.640 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:05:02,684.684 INFO    ] ================================================
[2026-08-31 06:05:02,703.703 INFO    ] Launching Daemon at Mon Aug 31 06:05:02 IST 2026
[2026-08-31 06:05:02,717.717 INFO    ] ================================================
[2026-08-31 06:05:03,373.373 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:05:03
[2026-08-31 06:05:03,998.998 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:05:04,259.259 INFO    ] Initializing speech engine...
[2026-08-31 06:05:04,275.275 INFO    ] 2026-08-31 06:05:04
[2026-08-31 06:05:04,556.556 INFO    ] 2026-08-31 06:05:04
[2026-08-31 06:05:04,591.591 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:05:04,809.809 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:05:04,852.852 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:05:05,033.033 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:05:05,088.088 INFO    ] time= 31/08/2026 06:05:05
[2026-08-31 06:05:05,137.137 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:05:05,178.178 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:05:05,306.306 INFO    ] No existing commands found in stream
[2026-08-31 06:05:10,334.334 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:05:10,337.337 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-08-31 06:05:12,612.612 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 06:05:12,615.615 INFO    ] Checking for system updates...
[2026-08-31 06:05:12,655.655 INFO    ] 200
[2026-08-31 06:05:12,659.659 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:05:12,712.712 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:05:12,714.714 INFO    ] No update needed
[2026-08-31 06:05:12,717.717 INFO    ] Checking for camera pi updates...
[2026-08-31 06:05:12,751.751 INFO    ] 200
[2026-08-31 06:05:12,754.754 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:05:12,794.794 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:05:12,883.883 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:05:12,886.886 INFO    ] No camera update needed
[2026-08-31 06:05:12,889.889 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:05:12,892.892 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:05:12,898.898 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:05:12,903.903 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:05:14,945.945 INFO    ] ================================================
[2026-08-31 06:05:14,959.959 INFO    ] Launching Daemon at Mon Aug 31 06:05:14 IST 2026
[2026-08-31 06:05:14,970.970 INFO    ] ================================================
[2026-08-31 06:05:15,539.539 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:05:15
[2026-08-31 06:05:16,120.120 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:05:16,368.368 INFO    ] Initializing speech engine...
[2026-08-31 06:05:16,374.374 INFO    ] 2026-08-31 06:05:16
[2026-08-31 06:05:16,645.645 INFO    ] 2026-08-31 06:05:16
[2026-08-31 06:05:16,681.681 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:05:16,883.883 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:05:16,942.942 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:05:17,086.086 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:05:17,150.150 INFO    ] time= 31/08/2026 06:05:17
[2026-08-31 06:05:17,205.205 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:05:17,220.220 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:05:17,274.274 INFO    ] No existing commands found in stream
[2026-08-31 06:05:22,286.286 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:05:22,289.289 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-08-31 06:05:24,365.365 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 06:05:24,368.368 INFO    ] Checking for system updates...
[2026-08-31 06:05:24,417.417 INFO    ] 200
[2026-08-31 06:05:24,419.419 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-08-31 06:05:24,422.422 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-08-31 06:05:24,427.427 INFO    ] Checking for camera pi updates...
[2026-08-31 06:05:24,478.478 INFO    ] 200
[2026-08-31 06:05:24,481.481 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-08-31 06:05:24,484.484 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-08-31 06:05:24,487.487 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:05:24,491.491 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:05:24,498.498 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:05:24,505.505 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:05:26,548.548 INFO    ] ================================================
[2026-08-31 06:05:26,564.564 INFO    ] Launching Daemon at Mon Aug 31 06:05:26 IST 2026
[2026-08-31 06:05:26,574.574 INFO    ] ================================================
[2026-08-31 06:05:27,142.142 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:05:27
[2026-08-31 06:05:27,725.725 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:05:27,993.993 INFO    ] Initializing speech engine...
[2026-08-31 06:05:28,002.002 INFO    ] 2026-08-31 06:05:27
[2026-08-31 06:05:28,248.248 INFO    ] 2026-08-31 06:05:28
[2026-08-31 06:05:28,283.283 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:05:28,482.482 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:05:28,496.496 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:05:28,625.625 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:05:28,646.646 INFO    ] time= 31/08/2026 06:05:28
[2026-08-31 06:05:28,650.650 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:05:28,672.672 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:05:28,770.770 INFO    ] No existing commands found in stream
[2026-08-31 06:05:33,800.800 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:05:33,803.803 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-08-31 06:05:34,639.639 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 06:05:34,642.642 INFO    ] Checking for system updates...
[2026-08-31 06:05:34,682.682 INFO    ] 200
[2026-08-31 06:05:34,684.684 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:05:34,738.738 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:05:34,740.740 INFO    ] No update needed
[2026-08-31 06:05:34,743.743 INFO    ] Checking for camera pi updates...
[2026-08-31 06:05:34,775.775 INFO    ] 200
[2026-08-31 06:05:34,778.778 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:05:34,818.818 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:05:35,001.001 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:05:35,004.004 INFO    ] No camera update needed
[2026-08-31 06:05:35,006.006 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:05:35,008.008 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:05:35,014.014 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:05:35,019.019 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:05:37,060.060 INFO    ] ================================================
[2026-08-31 06:05:37,075.075 INFO    ] Launching Daemon at Mon Aug 31 06:05:37 IST 2026
[2026-08-31 06:05:37,086.086 INFO    ] ================================================
[2026-08-31 06:05:37,667.667 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:05:37
[2026-08-31 06:05:38,266.266 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:05:38,531.531 INFO    ] Initializing speech engine...
[2026-08-31 06:05:38,544.544 INFO    ] 2026-08-31 06:05:38
[2026-08-31 06:05:38,839.839 INFO    ] 2026-08-31 06:05:38
[2026-08-31 06:05:38,874.874 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:05:39,068.068 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:05:39,084.084 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:05:39,224.224 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:05:39,246.246 INFO    ] time= 31/08/2026 06:05:39
[2026-08-31 06:05:39,269.269 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:05:39,276.276 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:05:39,357.357 INFO    ] No existing commands found in stream
[2026-08-31 06:05:44,393.393 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:05:44,395.395 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-08-31 06:05:45,675.675 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 06:05:45,678.678 INFO    ] Checking for system updates...
[2026-08-31 06:05:45,713.713 INFO    ] 200
[2026-08-31 06:05:45,715.715 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:05:45,768.768 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:05:45,771.771 INFO    ] No update needed
[2026-08-31 06:05:45,773.773 INFO    ] Checking for camera pi updates...
[2026-08-31 06:05:45,806.806 INFO    ] 200
[2026-08-31 06:05:45,809.809 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:05:45,850.850 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:05:45,926.926 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:05:45,930.930 INFO    ] No camera update needed
[2026-08-31 06:05:45,932.932 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:05:45,935.935 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:05:45,942.942 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:05:45,948.948 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:05:47,991.991 INFO    ] ================================================
[2026-08-31 06:05:48,008.008 INFO    ] Launching Daemon at Mon Aug 31 06:05:48 IST 2026
[2026-08-31 06:05:48,019.019 INFO    ] ================================================
[2026-08-31 06:05:48,591.591 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:05:48
[2026-08-31 06:05:49,201.201 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:05:49,469.469 INFO    ] Initializing speech engine...
[2026-08-31 06:05:49,476.476 INFO    ] 2026-08-31 06:05:49
[2026-08-31 06:05:49,777.777 INFO    ] 2026-08-31 06:05:49
[2026-08-31 06:05:49,813.813 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:05:50,019.019 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:05:50,034.034 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:05:50,200.200 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:05:50,208.208 INFO    ] time= 31/08/2026 06:05:50
[2026-08-31 06:05:50,216.216 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:05:50,240.240 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:05:50,366.366 INFO    ] No existing commands found in stream
[2026-08-31 06:05:55,391.391 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:05:55,394.394 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-08-31 06:05:58,612.612 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 06:05:58,614.614 INFO    ] Checking for system updates...
[2026-08-31 06:05:58,650.650 INFO    ] 200
[2026-08-31 06:05:58,652.652 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:05:58,704.704 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:05:58,707.707 INFO    ] No update needed
[2026-08-31 06:05:58,709.709 INFO    ] Checking for camera pi updates...
[2026-08-31 06:05:58,743.743 INFO    ] 200
[2026-08-31 06:05:58,745.745 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:05:58,791.791 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:05:58,864.864 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:05:58,866.866 INFO    ] No camera update needed
[2026-08-31 06:05:58,869.869 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:05:58,871.871 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:05:58,877.877 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:05:58,882.882 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:06:00,922.922 INFO    ] ================================================
[2026-08-31 06:06:00,937.937 INFO    ] Launching Daemon at Mon Aug 31 06:06:00 IST 2026
[2026-08-31 06:06:00,948.948 INFO    ] ================================================
[2026-08-31 06:06:01,521.521 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:06:01
[2026-08-31 06:06:02,231.231 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:06:02,540.540 INFO    ] Initializing speech engine...
[2026-08-31 06:06:02,564.564 INFO    ] 2026-08-31 06:06:02
[2026-08-31 06:06:02,862.862 INFO    ] 2026-08-31 06:06:02
[2026-08-31 06:06:02,940.940 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:06:03,189.189 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:06:03,213.213 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:06:03,380.380 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:06:03,430.430 INFO    ] time= 31/08/2026 06:06:03
[2026-08-31 06:06:03,479.479 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:06:03,520.520 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:06:03,655.655 INFO    ] No existing commands found in stream
[2026-08-31 06:06:08,680.680 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:06:08,683.683 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-08-31 06:06:11,083.083 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 06:06:11,086.086 INFO    ] Checking for system updates...
[2026-08-31 06:06:11,125.125 INFO    ] 200
[2026-08-31 06:06:11,128.128 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:06:11,179.179 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:06:11,182.182 INFO    ] No update needed
[2026-08-31 06:06:11,185.185 INFO    ] Checking for camera pi updates...
[2026-08-31 06:06:11,218.218 INFO    ] 200
[2026-08-31 06:06:11,221.221 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:06:11,260.260 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:06:11,341.341 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:06:11,344.344 INFO    ] No camera update needed
[2026-08-31 06:06:11,346.346 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:06:11,348.348 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:06:11,354.354 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:06:11,359.359 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:06:13,400.400 INFO    ] ================================================
[2026-08-31 06:06:13,415.415 INFO    ] Launching Daemon at Mon Aug 31 06:06:13 IST 2026
[2026-08-31 06:06:13,425.425 INFO    ] ================================================
[2026-08-31 06:06:13,995.995 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:06:13
[2026-08-31 06:06:14,585.585 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:06:14,854.854 INFO    ] Initializing speech engine...
[2026-08-31 06:06:14,863.863 INFO    ] 2026-08-31 06:06:14
[2026-08-31 06:06:15,110.110 INFO    ] 2026-08-31 06:06:15
[2026-08-31 06:06:15,144.144 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:06:15,394.394 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:06:15,403.403 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:06:15,536.536 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:06:15,596.596 INFO    ] time= 31/08/2026 06:06:15
[2026-08-31 06:06:15,662.662 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:06:15,669.669 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:06:15,803.803 INFO    ] No existing commands found in stream
[2026-08-31 06:06:20,824.824 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:06:20,827.827 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-08-31 06:06:26,119.119 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 06:06:26,121.121 INFO    ] Checking for system updates...
[2026-08-31 06:06:26,156.156 INFO    ] 200
[2026-08-31 06:06:26,159.159 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:06:26,211.211 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:06:26,213.213 INFO    ] No update needed
[2026-08-31 06:06:26,216.216 INFO    ] Checking for camera pi updates...
[2026-08-31 06:06:26,253.253 INFO    ] 200
[2026-08-31 06:06:26,255.255 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:06:26,296.296 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:06:26,378.378 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:06:26,380.380 INFO    ] No camera update needed
[2026-08-31 06:06:26,382.382 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:06:26,384.384 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:06:26,390.390 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:06:26,395.395 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:06:28,438.438 INFO    ] ================================================
[2026-08-31 06:06:28,453.453 INFO    ] Launching Daemon at Mon Aug 31 06:06:28 IST 2026
[2026-08-31 06:06:28,465.465 INFO    ] ================================================
[2026-08-31 06:06:29,050.050 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:06:29
[2026-08-31 06:06:29,652.652 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:06:29,931.931 INFO    ] Initializing speech engine...
[2026-08-31 06:06:29,940.940 INFO    ] 2026-08-31 06:06:29
[2026-08-31 06:06:30,200.200 INFO    ] 2026-08-31 06:06:30
[2026-08-31 06:06:30,253.253 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:06:30,476.476 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:06:30,485.485 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:06:30,619.619 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:06:30,654.654 INFO    ] time= 31/08/2026 06:06:30
[2026-08-31 06:06:30,718.718 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:06:30,751.751 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:06:30,896.896 INFO    ] No existing commands found in stream
[2026-08-31 06:06:35,911.911 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:06:35,914.914 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-08-31 06:06:36,940.940 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 06:06:36,943.943 INFO    ] Checking for system updates...
[2026-08-31 06:06:36,979.979 INFO    ] 200
[2026-08-31 06:06:36,982.982 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:06:37,043.043 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:06:37,046.046 INFO    ] No update needed
[2026-08-31 06:06:37,048.048 INFO    ] Checking for camera pi updates...
[2026-08-31 06:06:37,087.087 INFO    ] 200
[2026-08-31 06:06:37,090.090 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:06:37,131.131 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:06:37,213.213 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:06:37,215.215 INFO    ] No camera update needed
[2026-08-31 06:06:37,218.218 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:06:37,220.220 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:06:37,226.226 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:06:37,231.231 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:06:39,275.275 INFO    ] ================================================
[2026-08-31 06:06:39,291.291 INFO    ] Launching Daemon at Mon Aug 31 06:06:39 IST 2026
[2026-08-31 06:06:39,302.302 INFO    ] ================================================
[2026-08-31 06:06:39,929.929 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:06:39
[2026-08-31 06:06:40,514.514 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:06:40,772.772 INFO    ] Initializing speech engine...
[2026-08-31 06:06:40,791.791 INFO    ] 2026-08-31 06:06:40
[2026-08-31 06:06:41,042.042 INFO    ] 2026-08-31 06:06:41
[2026-08-31 06:06:41,077.077 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:06:41,279.279 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:06:41,339.339 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:06:41,555.555 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:06:41,604.604 INFO    ] time= 31/08/2026 06:06:41
[2026-08-31 06:06:41,623.623 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:06:41,629.629 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:06:41,752.752 INFO    ] No existing commands found in stream
[2026-08-31 06:06:46,783.783 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:06:46,785.785 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-08-31 06:06:50,138.138 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 06:06:50,141.141 INFO    ] Checking for system updates...
[2026-08-31 06:06:50,176.176 INFO    ] 200
[2026-08-31 06:06:50,179.179 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:06:50,231.231 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:06:50,233.233 INFO    ] No update needed
[2026-08-31 06:06:50,235.235 INFO    ] Checking for camera pi updates...
[2026-08-31 06:06:50,268.268 INFO    ] 200
[2026-08-31 06:06:50,271.271 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:06:50,311.311 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:06:50,394.394 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:06:50,396.396 INFO    ] No camera update needed
[2026-08-31 06:06:50,399.399 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:06:50,401.401 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:06:50,406.406 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:06:50,411.411 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:06:52,452.452 INFO    ] ================================================
[2026-08-31 06:06:52,468.468 INFO    ] Launching Daemon at Mon Aug 31 06:06:52 IST 2026
[2026-08-31 06:06:52,478.478 INFO    ] ================================================
[2026-08-31 06:06:53,064.064 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:06:53
[2026-08-31 06:06:53,663.663 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:06:53,941.941 INFO    ] Initializing speech engine...
[2026-08-31 06:06:53,951.951 INFO    ] 2026-08-31 06:06:53
[2026-08-31 06:06:54,203.203 INFO    ] 2026-08-31 06:06:54
[2026-08-31 06:06:54,238.238 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:06:54,495.495 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:06:54,501.501 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:06:54,652.652 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:06:54,702.702 INFO    ] time= 31/08/2026 06:06:54
[2026-08-31 06:06:54,762.762 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:06:54,772.772 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:06:54,919.919 INFO    ] No existing commands found in stream
[2026-08-31 06:06:59,932.932 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:06:59,934.934 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-08-31 06:07:03,284.284 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 06:07:03,290.290 INFO    ] Checking for system updates...
[2026-08-31 06:07:03,336.336 INFO    ] 200
[2026-08-31 06:07:03,339.339 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:07:03,400.400 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:07:03,403.403 INFO    ] No update needed
[2026-08-31 06:07:03,407.407 INFO    ] Checking for camera pi updates...
[2026-08-31 06:07:03,442.442 INFO    ] 200
[2026-08-31 06:07:03,446.446 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:07:03,503.503 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:07:03,585.585 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:07:03,587.587 INFO    ] No camera update needed
[2026-08-31 06:07:03,590.590 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:07:03,592.592 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:07:03,597.597 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:07:03,602.602 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:07:05,644.644 INFO    ] ================================================
[2026-08-31 06:07:05,660.660 INFO    ] Launching Daemon at Mon Aug 31 06:07:05 IST 2026
[2026-08-31 06:07:05,671.671 INFO    ] ================================================
[2026-08-31 06:07:06,240.240 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:07:06
[2026-08-31 06:07:06,845.845 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:07:07,107.107 INFO    ] Initializing speech engine...
[2026-08-31 06:07:07,126.126 INFO    ] 2026-08-31 06:07:07
[2026-08-31 06:07:07,375.375 INFO    ] 2026-08-31 06:07:07
[2026-08-31 06:07:07,411.411 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:07:07,586.586 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:07:07,598.598 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:07:07,747.747 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:07:07,753.753 INFO    ] time= 31/08/2026 06:07:07
[2026-08-31 06:07:07,789.789 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:07:07,821.821 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:07:07,930.930 INFO    ] No existing commands found in stream
[2026-08-31 06:07:12,960.960 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:07:12,963.963 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-08-31 06:07:17,093.093 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 06:07:17,096.096 INFO    ] Checking for system updates...
[2026-08-31 06:07:17,135.135 INFO    ] 200
[2026-08-31 06:07:17,137.137 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:07:17,195.195 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:07:17,198.198 INFO    ] No update needed
[2026-08-31 06:07:17,200.200 INFO    ] Checking for camera pi updates...
[2026-08-31 06:07:17,233.233 INFO    ] 200
[2026-08-31 06:07:17,236.236 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:07:17,275.275 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:07:17,364.364 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:07:17,366.366 INFO    ] No camera update needed
[2026-08-31 06:07:17,369.369 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:07:17,371.371 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:07:17,376.376 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:07:17,381.381 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:07:19,423.423 INFO    ] ================================================
[2026-08-31 06:07:19,439.439 INFO    ] Launching Daemon at Mon Aug 31 06:07:19 IST 2026
[2026-08-31 06:07:19,450.450 INFO    ] ================================================
[2026-08-31 06:07:20,049.049 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:07:20
[2026-08-31 06:07:20,710.710 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:07:21,009.009 INFO    ] Initializing speech engine...
[2026-08-31 06:07:21,016.016 INFO    ] 2026-08-31 06:07:21
[2026-08-31 06:07:21,293.293 INFO    ] 2026-08-31 06:07:21
[2026-08-31 06:07:21,349.349 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:07:21,578.578 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:07:21,588.588 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:07:21,806.806 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:07:21,854.854 INFO    ] time= 31/08/2026 06:07:21
[2026-08-31 06:07:21,861.861 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:07:21,883.883 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:07:22,035.035 INFO    ] No existing commands found in stream
[2026-08-31 06:07:27,066.066 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:07:27,070.070 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-08-31 06:07:30,852.852 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 06:07:30,854.854 INFO    ] Checking for system updates...
[2026-08-31 06:07:30,891.891 INFO    ] 200
[2026-08-31 06:07:30,894.894 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:07:30,946.946 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:07:30,949.949 INFO    ] No update needed
[2026-08-31 06:07:30,952.952 INFO    ] Checking for camera pi updates...
[2026-08-31 06:07:30,987.987 INFO    ] 200
[2026-08-31 06:07:30,990.990 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:07:31,031.031 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:07:31,115.115 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:07:31,118.118 INFO    ] No camera update needed
[2026-08-31 06:07:31,121.121 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:07:31,123.123 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:07:31,130.130 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:07:31,135.135 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:07:33,179.179 INFO    ] ================================================
[2026-08-31 06:07:33,195.195 INFO    ] Launching Daemon at Mon Aug 31 06:07:33 IST 2026
[2026-08-31 06:07:33,206.206 INFO    ] ================================================
[2026-08-31 06:07:33,788.788 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:07:33
[2026-08-31 06:07:34,384.384 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:07:34,657.657 INFO    ] Initializing speech engine...
[2026-08-31 06:07:34,666.666 INFO    ] 2026-08-31 06:07:34
[2026-08-31 06:07:34,925.925 INFO    ] 2026-08-31 06:07:34
[2026-08-31 06:07:34,982.982 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:07:35,208.208 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:07:35,217.217 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:07:35,409.409 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:07:35,464.464 INFO    ] time= 31/08/2026 06:07:35
[2026-08-31 06:07:35,481.481 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:07:35,498.498 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:07:35,631.631 INFO    ] No existing commands found in stream
[2026-08-31 06:07:40,658.658 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:07:40,661.661 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-08-31 06:07:45,076.076 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 06:07:45,079.079 INFO    ] Checking for system updates...
[2026-08-31 06:07:45,116.116 INFO    ] 200
[2026-08-31 06:07:45,118.118 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:07:45,171.171 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:07:45,173.173 INFO    ] No update needed
[2026-08-31 06:07:45,175.175 INFO    ] Checking for camera pi updates...
[2026-08-31 06:07:45,209.209 INFO    ] 200
[2026-08-31 06:07:45,211.211 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:07:45,252.252 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:07:45,430.430 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:07:45,433.433 INFO    ] No camera update needed
[2026-08-31 06:07:45,435.435 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:07:45,437.437 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:07:45,443.443 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:07:45,448.448 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:07:47,488.488 INFO    ] ================================================
[2026-08-31 06:07:47,503.503 INFO    ] Launching Daemon at Mon Aug 31 06:07:47 IST 2026
[2026-08-31 06:07:47,514.514 INFO    ] ================================================
[2026-08-31 06:07:48,082.082 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:07:48
[2026-08-31 06:07:48,669.669 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:07:48,940.940 INFO    ] Initializing speech engine...
[2026-08-31 06:07:48,949.949 INFO    ] 2026-08-31 06:07:48
[2026-08-31 06:07:49,205.205 INFO    ] 2026-08-31 06:07:49
[2026-08-31 06:07:49,259.259 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:07:49,515.515 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:07:49,533.533 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:07:49,732.732 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:07:49,751.751 INFO    ] time= 31/08/2026 06:07:49
[2026-08-31 06:07:49,757.757 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:07:49,774.774 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:07:49,895.895 INFO    ] No existing commands found in stream
[2026-08-31 06:07:54,915.915 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:07:54,918.918 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-08-31 06:07:59,084.084 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 06:07:59,086.086 INFO    ] Checking for system updates...
[2026-08-31 06:07:59,127.127 INFO    ] 200
[2026-08-31 06:07:59,129.129 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:07:59,181.181 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:07:59,183.183 INFO    ] No update needed
[2026-08-31 06:07:59,186.186 INFO    ] Checking for camera pi updates...
[2026-08-31 06:07:59,220.220 INFO    ] 200
[2026-08-31 06:07:59,222.222 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:07:59,262.262 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:07:59,341.341 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:07:59,344.344 INFO    ] No camera update needed
[2026-08-31 06:07:59,346.346 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:07:59,349.349 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:07:59,354.354 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:07:59,359.359 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:08:01,399.399 INFO    ] ================================================
[2026-08-31 06:08:01,415.415 INFO    ] Launching Daemon at Mon Aug 31 06:08:01 IST 2026
[2026-08-31 06:08:01,426.426 INFO    ] ================================================
[2026-08-31 06:08:02,158.158 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:08:02
[2026-08-31 06:08:02,824.824 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:08:03,129.129 INFO    ] Initializing speech engine...
[2026-08-31 06:08:03,138.138 INFO    ] 2026-08-31 06:08:03
[2026-08-31 06:08:03,431.431 INFO    ] 2026-08-31 06:08:03
[2026-08-31 06:08:03,467.467 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:08:03,686.686 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:08:03,711.711 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:08:03,893.893 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:08:03,899.899 INFO    ] time= 31/08/2026 06:08:03
[2026-08-31 06:08:03,963.963 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:08:04,017.017 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:08:04,171.171 INFO    ] No existing commands found in stream
[2026-08-31 06:08:09,191.191 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:08:09,193.193 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-08-31 06:08:10,854.854 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 06:08:10,857.857 INFO    ] Checking for system updates...
[2026-08-31 06:08:10,893.893 INFO    ] 200
[2026-08-31 06:08:10,895.895 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:08:10,948.948 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:08:10,950.950 INFO    ] No update needed
[2026-08-31 06:08:10,953.953 INFO    ] Checking for camera pi updates...
[2026-08-31 06:08:10,986.986 INFO    ] 200
[2026-08-31 06:08:10,989.989 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:08:11,028.028 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:08:11,129.129 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:08:11,131.131 INFO    ] No camera update needed
[2026-08-31 06:08:11,134.134 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:08:11,136.136 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:08:11,141.141 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:08:11,146.146 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:08:13,186.186 INFO    ] ================================================
[2026-08-31 06:08:13,202.202 INFO    ] Launching Daemon at Mon Aug 31 06:08:13 IST 2026
[2026-08-31 06:08:13,213.213 INFO    ] ================================================
[2026-08-31 06:08:13,777.777 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:08:13
[2026-08-31 06:08:14,361.361 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:08:14,611.611 INFO    ] Initializing speech engine...
[2026-08-31 06:08:14,633.633 INFO    ] 2026-08-31 06:08:14
[2026-08-31 06:08:14,890.890 INFO    ] 2026-08-31 06:08:14
[2026-08-31 06:08:14,925.925 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:08:15,184.184 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:08:15,193.193 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:08:15,328.328 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:08:15,365.365 INFO    ] time= 31/08/2026 06:08:15
[2026-08-31 06:08:15,419.419 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:08:15,464.464 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:08:15,518.518 INFO    ] No existing commands found in stream
[2026-08-31 06:08:20,530.530 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:08:20,533.533 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-08-31 06:08:23,928.928 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 06:08:23,930.930 INFO    ] Checking for system updates...
[2026-08-31 06:08:23,965.965 INFO    ] 200
[2026-08-31 06:08:23,968.968 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:08:24,027.027 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:08:24,029.029 INFO    ] No update needed
[2026-08-31 06:08:24,032.032 INFO    ] Checking for camera pi updates...
[2026-08-31 06:08:24,069.069 INFO    ] 200
[2026-08-31 06:08:24,072.072 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:08:24,116.116 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:08:24,200.200 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:08:24,202.202 INFO    ] No camera update needed
[2026-08-31 06:08:24,205.205 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:08:24,207.207 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:08:24,212.212 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:08:24,217.217 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:08:26,258.258 INFO    ] ================================================
[2026-08-31 06:08:26,273.273 INFO    ] Launching Daemon at Mon Aug 31 06:08:26 IST 2026
[2026-08-31 06:08:26,284.284 INFO    ] ================================================
[2026-08-31 06:08:26,866.866 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:08:26
[2026-08-31 06:08:27,464.464 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:08:27,741.741 INFO    ] Initializing speech engine...
[2026-08-31 06:08:27,750.750 INFO    ] 2026-08-31 06:08:27
[2026-08-31 06:08:28,011.011 INFO    ] 2026-08-31 06:08:28
[2026-08-31 06:08:28,061.061 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:08:28,291.291 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:08:28,297.297 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:08:28,519.519 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:08:28,554.554 INFO    ] time= 31/08/2026 06:08:28
[2026-08-31 06:08:28,560.560 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:08:28,577.577 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:08:28,698.698 INFO    ] No existing commands found in stream
[2026-08-31 06:08:33,717.717 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:08:33,720.720 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-08-31 06:08:34,873.873 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 06:08:34,876.876 INFO    ] Checking for system updates...
[2026-08-31 06:08:34,911.911 INFO    ] 200
[2026-08-31 06:08:34,914.914 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:08:34,966.966 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:08:34,968.968 INFO    ] No update needed
[2026-08-31 06:08:34,971.971 INFO    ] Checking for camera pi updates...
[2026-08-31 06:08:35,004.004 INFO    ] 200
[2026-08-31 06:08:35,007.007 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:08:35,047.047 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:08:35,128.128 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:08:35,131.131 INFO    ] No camera update needed
[2026-08-31 06:08:35,136.136 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:08:35,139.139 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:08:35,145.145 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:08:35,150.150 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:08:37,193.193 INFO    ] ================================================
[2026-08-31 06:08:37,209.209 INFO    ] Launching Daemon at Mon Aug 31 06:08:37 IST 2026
[2026-08-31 06:08:37,220.220 INFO    ] ================================================
[2026-08-31 06:08:37,798.798 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:08:37
[2026-08-31 06:08:38,392.392 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:08:38,660.660 INFO    ] Initializing speech engine...
[2026-08-31 06:08:38,669.669 INFO    ] 2026-08-31 06:08:38
[2026-08-31 06:08:38,918.918 INFO    ] 2026-08-31 06:08:38
[2026-08-31 06:08:38,953.953 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:08:39,208.208 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:08:39,212.212 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:08:39,387.387 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:08:39,436.436 INFO    ] time= 31/08/2026 06:08:39
[2026-08-31 06:08:39,472.472 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:08:39,478.478 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:08:39,624.624 INFO    ] No existing commands found in stream
[2026-08-31 06:08:44,643.643 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:08:44,646.646 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-08-31 06:08:46,980.980 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 06:08:46,982.982 INFO    ] Checking for system updates...
[2026-08-31 06:08:47,018.018 INFO    ] 200
[2026-08-31 06:08:47,021.021 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:08:47,073.073 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:08:47,076.076 INFO    ] No update needed
[2026-08-31 06:08:47,079.079 INFO    ] Checking for camera pi updates...
[2026-08-31 06:08:47,119.119 INFO    ] 200
[2026-08-31 06:08:47,122.122 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:08:47,170.170 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:08:47,269.269 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:08:47,272.272 INFO    ] No camera update needed
[2026-08-31 06:08:47,275.275 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:08:47,277.277 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:08:47,284.284 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:08:47,291.291 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:08:49,332.332 INFO    ] ================================================
[2026-08-31 06:08:49,348.348 INFO    ] Launching Daemon at Mon Aug 31 06:08:49 IST 2026
[2026-08-31 06:08:49,359.359 INFO    ] ================================================
[2026-08-31 06:08:50,025.025 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:08:50
[2026-08-31 06:08:50,715.715 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:08:51,023.023 INFO    ] Initializing speech engine...
[2026-08-31 06:08:51,035.035 INFO    ] 2026-08-31 06:08:51
[2026-08-31 06:08:51,350.350 INFO    ] 2026-08-31 06:08:51
[2026-08-31 06:08:51,435.435 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:08:51,654.654 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:08:51,710.710 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:08:51,871.871 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:08:51,901.901 INFO    ] time= 31/08/2026 06:08:51
[2026-08-31 06:08:51,909.909 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:08:51,920.920 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:08:52,083.083 INFO    ] No existing commands found in stream
[2026-08-31 06:08:57,120.120 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:08:57,123.123 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-08-31 06:09:01,492.492 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 06:09:01,495.495 INFO    ] Checking for system updates...
[2026-08-31 06:09:01,541.541 INFO    ] 200
[2026-08-31 06:09:01,544.544 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:09:01,613.613 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:09:01,615.615 INFO    ] No update needed
[2026-08-31 06:09:01,618.618 INFO    ] Checking for camera pi updates...
[2026-08-31 06:09:01,679.679 INFO    ] 200
[2026-08-31 06:09:01,682.682 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:09:01,740.740 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:09:01,817.817 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:09:01,820.820 INFO    ] No camera update needed
[2026-08-31 06:09:01,822.822 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:09:01,825.825 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:09:01,830.830 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:09:01,835.835 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:09:03,879.879 INFO    ] ================================================
[2026-08-31 06:09:03,895.895 INFO    ] Launching Daemon at Mon Aug 31 06:09:03 IST 2026
[2026-08-31 06:09:03,906.906 INFO    ] ================================================
[2026-08-31 06:09:04,563.563 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:09:04
[2026-08-31 06:09:05,238.238 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:09:05,540.540 INFO    ] Initializing speech engine...
[2026-08-31 06:09:05,552.552 INFO    ] 2026-08-31 06:09:05
[2026-08-31 06:09:05,850.850 INFO    ] 2026-08-31 06:09:05
[2026-08-31 06:09:05,894.894 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:09:06,126.126 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:09:06,132.132 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:09:06,285.285 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:09:06,340.340 INFO    ] time= 31/08/2026 06:09:06
[2026-08-31 06:09:06,400.400 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:09:06,410.410 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:09:06,561.561 INFO    ] No existing commands found in stream
[2026-08-31 06:09:11,576.576 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:09:11,580.580 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-08-31 06:09:15,601.601 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 06:09:15,604.604 INFO    ] Checking for system updates...
[2026-08-31 06:09:15,642.642 INFO    ] 200
[2026-08-31 06:09:15,645.645 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:09:15,697.697 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:09:15,699.699 INFO    ] No update needed
[2026-08-31 06:09:15,702.702 INFO    ] Checking for camera pi updates...
[2026-08-31 06:09:15,736.736 INFO    ] 200
[2026-08-31 06:09:15,738.738 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:09:15,779.779 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:09:15,876.876 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:09:15,879.879 INFO    ] No camera update needed
[2026-08-31 06:09:15,881.881 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:09:15,883.883 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:09:15,889.889 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:09:15,893.893 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:09:17,935.935 INFO    ] ================================================
[2026-08-31 06:09:17,950.950 INFO    ] Launching Daemon at Mon Aug 31 06:09:17 IST 2026
[2026-08-31 06:09:17,962.962 INFO    ] ================================================
[2026-08-31 06:09:18,534.534 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:09:18
[2026-08-31 06:09:19,117.117 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:09:19,365.365 INFO    ] Initializing speech engine...
[2026-08-31 06:09:19,380.380 INFO    ] 2026-08-31 06:09:19
[2026-08-31 06:09:19,645.645 INFO    ] 2026-08-31 06:09:19
[2026-08-31 06:09:19,680.680 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:09:19,878.878 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:09:19,922.922 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:09:20,083.083 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:09:20,149.149 INFO    ] time= 31/08/2026 06:09:20
[2026-08-31 06:09:20,208.208 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:09:20,220.220 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:09:20,371.371 INFO    ] No existing commands found in stream
[2026-08-31 06:09:25,389.389 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:09:25,392.392 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-08-31 06:09:29,021.021 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 06:09:29,024.024 INFO    ] Checking for system updates...
[2026-08-31 06:09:29,064.064 INFO    ] 200
[2026-08-31 06:09:29,067.067 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:09:29,127.127 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:09:29,130.130 INFO    ] No update needed
[2026-08-31 06:09:29,133.133 INFO    ] Checking for camera pi updates...
[2026-08-31 06:09:29,168.168 INFO    ] 200
[2026-08-31 06:09:29,171.171 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:09:29,212.212 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:09:29,293.293 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:09:29,296.296 INFO    ] No camera update needed
[2026-08-31 06:09:29,299.299 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:09:29,301.301 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:09:29,308.308 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:09:29,313.313 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:09:31,356.356 INFO    ] ================================================
[2026-08-31 06:09:31,373.373 INFO    ] Launching Daemon at Mon Aug 31 06:09:31 IST 2026
[2026-08-31 06:09:31,384.384 INFO    ] ================================================
[2026-08-31 06:09:31,991.991 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:09:31
[2026-08-31 06:09:32,631.631 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:09:32,903.903 INFO    ] Initializing speech engine...
[2026-08-31 06:09:32,926.926 INFO    ] 2026-08-31 06:09:32
[2026-08-31 06:09:33,189.189 INFO    ] 2026-08-31 06:09:33
[2026-08-31 06:09:33,225.225 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:09:33,440.440 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:09:33,484.484 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:09:33,639.639 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:09:33,671.671 INFO    ] time= 31/08/2026 06:09:33
[2026-08-31 06:09:33,730.730 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:09:33,788.788 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:09:33,929.929 INFO    ] No existing commands found in stream
[2026-08-31 06:09:38,959.959 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:09:38,962.962 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-08-31 06:09:43,405.405 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 06:09:43,408.408 INFO    ] Checking for system updates...
[2026-08-31 06:09:43,448.448 INFO    ] 200
[2026-08-31 06:09:43,450.450 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:09:43,504.504 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:09:43,507.507 INFO    ] No update needed
[2026-08-31 06:09:43,510.510 INFO    ] Checking for camera pi updates...
[2026-08-31 06:09:43,544.544 INFO    ] 200
[2026-08-31 06:09:43,547.547 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:09:43,588.588 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:09:43,673.673 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:09:43,676.676 INFO    ] No camera update needed
[2026-08-31 06:09:43,678.678 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:09:43,681.681 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:09:43,687.687 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:09:43,694.694 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:09:45,737.737 INFO    ] ================================================
[2026-08-31 06:09:45,753.753 INFO    ] Launching Daemon at Mon Aug 31 06:09:45 IST 2026
[2026-08-31 06:09:45,764.764 INFO    ] ================================================
[2026-08-31 06:09:46,415.415 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:09:46
[2026-08-31 06:09:47,083.083 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:09:47,382.382 INFO    ] Initializing speech engine...
[2026-08-31 06:09:47,393.393 INFO    ] 2026-08-31 06:09:47
[2026-08-31 06:09:47,685.685 INFO    ] 2026-08-31 06:09:47
[2026-08-31 06:09:47,729.729 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:09:47,996.996 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:09:48,020.020 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:09:48,225.225 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:09:48,244.244 INFO    ] time= 31/08/2026 06:09:48
[2026-08-31 06:09:48,253.253 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:09:48,280.280 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:09:48,387.387 INFO    ] No existing commands found in stream
[2026-08-31 06:09:53,406.406 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:09:53,409.409 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-08-31 06:09:56,091.091 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 06:09:56,094.094 INFO    ] Checking for system updates...
[2026-08-31 06:09:56,131.131 INFO    ] 200
[2026-08-31 06:09:56,134.134 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:09:56,188.188 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:09:56,190.190 INFO    ] No update needed
[2026-08-31 06:09:56,193.193 INFO    ] Checking for camera pi updates...
[2026-08-31 06:09:56,226.226 INFO    ] 200
[2026-08-31 06:09:56,229.229 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:09:56,269.269 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:09:56,448.448 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:09:56,450.450 INFO    ] No camera update needed
[2026-08-31 06:09:56,452.452 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:09:56,455.455 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:09:56,460.460 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:09:56,466.466 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:09:58,505.505 INFO    ] ================================================
[2026-08-31 06:09:58,521.521 INFO    ] Launching Daemon at Mon Aug 31 06:09:58 IST 2026
[2026-08-31 06:09:58,532.532 INFO    ] ================================================
[2026-08-31 06:09:59,150.150 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:09:59
[2026-08-31 06:09:59,733.733 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:09:59,977.977 INFO    ] Initializing speech engine...
[2026-08-31 06:09:59,985.985 INFO    ] 2026-08-31 06:09:59
[2026-08-31 06:10:00,260.260 INFO    ] 2026-08-31 06:10:00
[2026-08-31 06:10:00,294.294 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:10:00,553.553 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:10:00,562.562 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:10:00,775.775 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:10:00,828.828 INFO    ] time= 31/08/2026 06:10:00
[2026-08-31 06:10:00,834.834 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:10:00,852.852 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:10:00,975.975 INFO    ] No existing commands found in stream
[2026-08-31 06:10:05,988.988 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:10:05,990.990 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-08-31 06:10:08,315.315 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 06:10:08,317.317 INFO    ] Checking for system updates...
[2026-08-31 06:10:08,352.352 INFO    ] 200
[2026-08-31 06:10:08,355.355 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:10:08,415.415 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:10:08,417.417 INFO    ] No update needed
[2026-08-31 06:10:08,420.420 INFO    ] Checking for camera pi updates...
[2026-08-31 06:10:08,456.456 INFO    ] 200
[2026-08-31 06:10:08,459.459 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:10:08,500.500 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:10:08,577.577 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:10:08,579.579 INFO    ] No camera update needed
[2026-08-31 06:10:08,582.582 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:10:08,584.584 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:10:08,589.589 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:10:08,594.594 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:10:10,636.636 INFO    ] ================================================
[2026-08-31 06:10:10,651.651 INFO    ] Launching Daemon at Mon Aug 31 06:10:10 IST 2026
[2026-08-31 06:10:10,662.662 INFO    ] ================================================
[2026-08-31 06:10:11,244.244 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:10:11
[2026-08-31 06:10:11,839.839 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:10:12,111.111 INFO    ] Initializing speech engine...
[2026-08-31 06:10:12,120.120 INFO    ] 2026-08-31 06:10:12
[2026-08-31 06:10:12,370.370 INFO    ] 2026-08-31 06:10:12
[2026-08-31 06:10:12,405.405 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:10:12,657.657 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:10:12,666.666 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:10:12,889.889 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:10:12,924.924 INFO    ] time= 31/08/2026 06:10:12
[2026-08-31 06:10:12,929.929 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:10:12,947.947 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:10:13,077.077 INFO    ] No existing commands found in stream
[2026-08-31 06:10:18,092.092 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:10:18,095.095 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-08-31 06:10:21,258.258 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 06:10:21,261.261 INFO    ] Checking for system updates...
[2026-08-31 06:10:21,296.296 INFO    ] 200
[2026-08-31 06:10:21,299.299 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:10:21,350.350 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:10:21,353.353 INFO    ] No update needed
[2026-08-31 06:10:21,355.355 INFO    ] Checking for camera pi updates...
[2026-08-31 06:10:21,389.389 INFO    ] 200
[2026-08-31 06:10:21,391.391 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:10:21,435.435 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:10:21,515.515 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:10:21,517.517 INFO    ] No camera update needed
[2026-08-31 06:10:21,520.520 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:10:21,522.522 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:10:21,527.527 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:10:21,532.532 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:10:23,572.572 INFO    ] ================================================
[2026-08-31 06:10:23,588.588 INFO    ] Launching Daemon at Mon Aug 31 06:10:23 IST 2026
[2026-08-31 06:10:23,599.599 INFO    ] ================================================
[2026-08-31 06:10:24,237.237 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:10:24
[2026-08-31 06:10:24,862.862 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:10:25,106.106 INFO    ] Initializing speech engine...
[2026-08-31 06:10:25,113.113 INFO    ] 2026-08-31 06:10:25
[2026-08-31 06:10:25,386.386 INFO    ] 2026-08-31 06:10:25
[2026-08-31 06:10:25,422.422 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:10:25,597.597 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:10:25,623.623 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:10:25,824.824 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:10:25,845.845 INFO    ] time= 31/08/2026 06:10:25
[2026-08-31 06:10:25,905.905 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:10:25,958.958 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:10:26,016.016 INFO    ] No existing commands found in stream
[2026-08-31 06:10:31,027.027 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:10:31,030.030 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-08-31 06:10:34,394.394 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 06:10:34,396.396 INFO    ] Checking for system updates...
[2026-08-31 06:10:34,431.431 INFO    ] 200
[2026-08-31 06:10:34,434.434 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:10:34,485.485 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:10:34,488.488 INFO    ] No update needed
[2026-08-31 06:10:34,491.491 INFO    ] Checking for camera pi updates...
[2026-08-31 06:10:34,524.524 INFO    ] 200
[2026-08-31 06:10:34,526.526 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:10:34,566.566 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:10:34,648.648 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:10:34,650.650 INFO    ] No camera update needed
[2026-08-31 06:10:34,653.653 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:10:34,655.655 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:10:34,660.660 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:10:34,665.665 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:10:36,706.706 INFO    ] ================================================
[2026-08-31 06:10:36,722.722 INFO    ] Launching Daemon at Mon Aug 31 06:10:36 IST 2026
[2026-08-31 06:10:36,733.733 INFO    ] ================================================
[2026-08-31 06:10:37,313.313 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:10:37
[2026-08-31 06:10:37,912.912 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:10:38,183.183 INFO    ] Initializing speech engine...
[2026-08-31 06:10:38,193.193 INFO    ] 2026-08-31 06:10:38
[2026-08-31 06:10:38,454.454 INFO    ] 2026-08-31 06:10:38
[2026-08-31 06:10:38,508.508 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:10:38,734.734 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:10:38,738.738 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:10:38,877.877 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:10:38,942.942 INFO    ] time= 31/08/2026 06:10:38
[2026-08-31 06:10:38,998.998 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:10:39,004.004 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:10:39,150.150 INFO    ] No existing commands found in stream
[2026-08-31 06:10:44,174.174 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:10:44,176.176 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-08-31 06:10:45,014.014 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 06:10:45,016.016 INFO    ] Checking for system updates...
[2026-08-31 06:10:45,054.054 INFO    ] 200
[2026-08-31 06:10:45,057.057 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:10:45,110.110 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:10:45,113.113 INFO    ] No update needed
[2026-08-31 06:10:45,115.115 INFO    ] Checking for camera pi updates...
[2026-08-31 06:10:45,152.152 INFO    ] 200
[2026-08-31 06:10:45,155.155 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:10:45,200.200 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:10:45,305.305 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:10:45,308.308 INFO    ] No camera update needed
[2026-08-31 06:10:45,311.311 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:10:45,314.314 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:10:45,320.320 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:10:45,325.325 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:10:47,365.365 INFO    ] ================================================
[2026-08-31 06:10:47,380.380 INFO    ] Launching Daemon at Mon Aug 31 06:10:47 IST 2026
[2026-08-31 06:10:47,391.391 INFO    ] ================================================
[2026-08-31 06:10:47,977.977 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:10:47
[2026-08-31 06:10:48,571.571 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:10:48,839.839 INFO    ] Initializing speech engine...
[2026-08-31 06:10:48,848.848 INFO    ] 2026-08-31 06:10:48
[2026-08-31 06:10:49,095.095 INFO    ] 2026-08-31 06:10:49
[2026-08-31 06:10:49,130.130 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:10:49,382.382 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:10:49,391.391 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:10:49,525.525 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:10:49,559.559 INFO    ] time= 31/08/2026 06:10:49
[2026-08-31 06:10:49,614.614 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:10:49,656.656 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:10:49,801.801 INFO    ] No existing commands found in stream
[2026-08-31 06:10:54,816.816 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:10:54,819.819 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-08-31 06:10:57,853.853 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 06:10:57,856.856 INFO    ] Checking for system updates...
[2026-08-31 06:10:57,892.892 INFO    ] 200
[2026-08-31 06:10:57,894.894 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:10:57,946.946 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:10:57,948.948 INFO    ] No update needed
[2026-08-31 06:10:57,951.951 INFO    ] Checking for camera pi updates...
[2026-08-31 06:10:57,983.983 INFO    ] 200
[2026-08-31 06:10:57,986.986 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:10:58,025.025 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:10:58,104.104 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:10:58,106.106 INFO    ] No camera update needed
[2026-08-31 06:10:58,109.109 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:10:58,111.111 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:10:58,116.116 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:10:58,121.121 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:11:00,162.162 INFO    ] ================================================
[2026-08-31 06:11:00,177.177 INFO    ] Launching Daemon at Mon Aug 31 06:11:00 IST 2026
[2026-08-31 06:11:00,188.188 INFO    ] ================================================
[2026-08-31 06:11:00,778.778 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:11:00
[2026-08-31 06:11:01,380.380 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:11:01,875.875 INFO    ] Initializing speech engine...
[2026-08-31 06:11:01,890.890 INFO    ] 2026-08-31 06:11:01
[2026-08-31 06:11:02,337.337 INFO    ] 2026-08-31 06:11:02
[2026-08-31 06:11:02,401.401 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:11:02,598.598 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:11:02,609.609 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:11:02,807.807 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:11:02,850.850 INFO    ] time= 31/08/2026 06:11:02
[2026-08-31 06:11:02,859.859 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:11:02,892.892 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:11:03,013.013 INFO    ] No existing commands found in stream
[2026-08-31 06:11:08,040.040 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:11:08,043.043 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-08-31 06:11:11,528.528 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 06:11:11,531.531 INFO    ] Checking for system updates...
[2026-08-31 06:11:11,567.567 INFO    ] 200
[2026-08-31 06:11:11,569.569 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:11:11,622.622 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:11:11,624.624 INFO    ] No update needed
[2026-08-31 06:11:11,626.626 INFO    ] Checking for camera pi updates...
[2026-08-31 06:11:11,659.659 INFO    ] 200
[2026-08-31 06:11:11,662.662 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:11:11,701.701 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:11:11,781.781 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:11:11,784.784 INFO    ] No camera update needed
[2026-08-31 06:11:11,786.786 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:11:11,788.788 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:11:11,794.794 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:11:11,799.799 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:11:13,839.839 INFO    ] ================================================
[2026-08-31 06:11:13,855.855 INFO    ] Launching Daemon at Mon Aug 31 06:11:13 IST 2026
[2026-08-31 06:11:13,866.866 INFO    ] ================================================
[2026-08-31 06:11:14,445.445 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:11:14
[2026-08-31 06:11:15,040.040 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:11:15,316.316 INFO    ] Initializing speech engine...
[2026-08-31 06:11:15,321.321 INFO    ] 2026-08-31 06:11:15
[2026-08-31 06:11:15,568.568 INFO    ] 2026-08-31 06:11:15
[2026-08-31 06:11:15,604.604 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:11:15,854.854 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:11:15,863.863 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:11:16,078.078 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:11:16,122.122 INFO    ] time= 31/08/2026 06:11:16
[2026-08-31 06:11:16,128.128 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:11:16,149.149 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:11:16,277.277 INFO    ] No existing commands found in stream
[2026-08-31 06:11:21,300.300 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:11:21,303.303 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-08-31 06:11:22,621.621 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 06:11:22,623.623 INFO    ] Checking for system updates...
[2026-08-31 06:11:22,659.659 INFO    ] 200
[2026-08-31 06:11:22,661.661 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:11:22,718.718 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:11:22,720.720 INFO    ] No update needed
[2026-08-31 06:11:22,723.723 INFO    ] Checking for camera pi updates...
[2026-08-31 06:11:22,757.757 INFO    ] 200
[2026-08-31 06:11:22,760.760 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:11:22,805.805 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:11:22,890.890 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:11:22,893.893 INFO    ] No camera update needed
[2026-08-31 06:11:22,895.895 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:11:22,898.898 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:11:22,903.903 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:11:22,908.908 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:11:24,948.948 INFO    ] ================================================
[2026-08-31 06:11:24,963.963 INFO    ] Launching Daemon at Mon Aug 31 06:11:24 IST 2026
[2026-08-31 06:11:24,974.974 INFO    ] ================================================
[2026-08-31 06:11:25,537.537 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:11:25
[2026-08-31 06:11:26,120.120 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:11:26,390.390 INFO    ] Initializing speech engine...
[2026-08-31 06:11:26,399.399 INFO    ] 2026-08-31 06:11:26
[2026-08-31 06:11:26,648.648 INFO    ] 2026-08-31 06:11:26
[2026-08-31 06:11:26,683.683 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:11:26,942.942 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:11:26,951.951 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:11:27,085.085 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:11:27,142.142 INFO    ] time= 31/08/2026 06:11:27
[2026-08-31 06:11:27,202.202 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:11:27,221.221 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:11:27,280.280 INFO    ] No existing commands found in stream
[2026-08-31 06:11:32,292.292 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:11:32,295.295 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-08-31 06:11:33,452.452 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 06:11:33,455.455 INFO    ] Checking for system updates...
[2026-08-31 06:11:33,490.490 INFO    ] 200
[2026-08-31 06:11:33,493.493 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:11:33,545.545 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:11:33,548.548 INFO    ] No update needed
[2026-08-31 06:11:33,550.550 INFO    ] Checking for camera pi updates...
[2026-08-31 06:11:33,584.584 INFO    ] 200
[2026-08-31 06:11:33,586.586 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:11:33,633.633 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:11:33,692.692 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:11:33,694.694 INFO    ] No camera update needed
[2026-08-31 06:11:33,696.696 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:11:33,699.699 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:11:33,704.704 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:11:33,709.709 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:11:35,748.748 INFO    ] ================================================
[2026-08-31 06:11:35,764.764 INFO    ] Launching Daemon at Mon Aug 31 06:11:35 IST 2026
[2026-08-31 06:11:35,776.776 INFO    ] ================================================
[2026-08-31 06:11:36,341.341 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:11:36
[2026-08-31 06:11:36,924.924 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:11:37,190.190 INFO    ] Initializing speech engine...
[2026-08-31 06:11:37,205.205 INFO    ] 2026-08-31 06:11:37
[2026-08-31 06:11:37,470.470 INFO    ] 2026-08-31 06:11:37
[2026-08-31 06:11:37,504.504 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:11:37,732.732 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:11:37,784.784 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:11:37,936.936 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:11:37,957.957 INFO    ] time= 31/08/2026 06:11:37
[2026-08-31 06:11:38,023.023 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:11:38,067.067 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:11:38,161.161 INFO    ] No existing commands found in stream
[2026-08-31 06:11:43,191.191 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:11:43,194.194 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-08-31 06:11:44,298.298 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 06:11:44,301.301 INFO    ] Checking for system updates...
[2026-08-31 06:11:44,336.336 INFO    ] 200
[2026-08-31 06:11:44,339.339 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:11:44,394.394 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:11:44,396.396 INFO    ] No update needed
[2026-08-31 06:11:44,399.399 INFO    ] Checking for camera pi updates...
[2026-08-31 06:11:44,433.433 INFO    ] 200
[2026-08-31 06:11:44,435.435 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:11:44,474.474 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:11:44,564.564 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:11:44,566.566 INFO    ] No camera update needed
[2026-08-31 06:11:44,568.568 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:11:44,571.571 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:11:44,576.576 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:11:44,581.581 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:11:46,620.620 INFO    ] ================================================
[2026-08-31 06:11:46,636.636 INFO    ] Launching Daemon at Mon Aug 31 06:11:46 IST 2026
[2026-08-31 06:11:46,647.647 INFO    ] ================================================
[2026-08-31 06:11:47,283.283 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:11:47
[2026-08-31 06:11:47,934.934 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:11:48,228.228 INFO    ] Initializing speech engine...
[2026-08-31 06:11:48,238.238 INFO    ] 2026-08-31 06:11:48
[2026-08-31 06:11:48,514.514 INFO    ] 2026-08-31 06:11:48
[2026-08-31 06:11:48,570.570 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:11:48,850.850 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:11:48,859.859 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:11:49,050.050 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:11:49,062.062 INFO    ] time= 31/08/2026 06:11:49
[2026-08-31 06:11:49,083.083 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:11:49,110.110 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:11:49,222.222 INFO    ] No existing commands found in stream
[2026-08-31 06:11:54,252.252 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:11:54,255.255 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-08-31 06:11:57,686.686 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 06:11:57,689.689 INFO    ] Checking for system updates...
[2026-08-31 06:11:57,726.726 INFO    ] 200
[2026-08-31 06:11:57,729.729 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:11:57,782.782 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:11:57,784.784 INFO    ] No update needed
[2026-08-31 06:11:57,787.787 INFO    ] Checking for camera pi updates...
[2026-08-31 06:11:57,824.824 INFO    ] 200
[2026-08-31 06:11:57,827.827 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:11:57,873.873 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:11:57,964.964 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:11:57,966.966 INFO    ] No camera update needed
[2026-08-31 06:11:57,969.969 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:11:57,972.972 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:11:57,978.978 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:11:57,984.984 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:12:00,025.025 INFO    ] ================================================
[2026-08-31 06:12:00,040.040 INFO    ] Launching Daemon at Mon Aug 31 06:12:00 IST 2026
[2026-08-31 06:12:00,051.051 INFO    ] ================================================
[2026-08-31 06:12:00,640.640 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:12:00
[2026-08-31 06:12:01,249.249 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:12:01,746.746 INFO    ] Initializing speech engine...
[2026-08-31 06:12:01,798.798 INFO    ] 2026-08-31 06:12:01
[2026-08-31 06:12:02,125.125 INFO    ] 2026-08-31 06:12:02
[2026-08-31 06:12:02,161.161 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:12:02,413.413 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:12:02,424.424 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:12:02,632.632 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:12:02,652.652 INFO    ] time= 31/08/2026 06:12:02
[2026-08-31 06:12:02,687.687 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:12:02,699.699 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:12:02,863.863 INFO    ] No existing commands found in stream
[2026-08-31 06:12:07,873.873 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:12:07,876.876 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-08-31 06:12:11,715.715 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 06:12:11,718.718 INFO    ] Checking for system updates...
[2026-08-31 06:12:11,754.754 INFO    ] 200
[2026-08-31 06:12:11,757.757 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:12:11,809.809 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:12:11,811.811 INFO    ] No update needed
[2026-08-31 06:12:11,814.814 INFO    ] Checking for camera pi updates...
[2026-08-31 06:12:11,849.849 INFO    ] 200
[2026-08-31 06:12:11,852.852 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:12:11,891.891 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:12:11,974.974 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:12:11,977.977 INFO    ] No camera update needed
[2026-08-31 06:12:11,979.979 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:12:11,981.981 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:12:11,987.987 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:12:11,992.992 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:12:14,032.032 INFO    ] ================================================
[2026-08-31 06:12:14,046.046 INFO    ] Launching Daemon at Mon Aug 31 06:12:14 IST 2026
[2026-08-31 06:12:14,056.056 INFO    ] ================================================
[2026-08-31 06:12:14,628.628 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:12:14
[2026-08-31 06:12:15,214.214 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:12:15,466.466 INFO    ] Initializing speech engine...
[2026-08-31 06:12:15,475.475 INFO    ] 2026-08-31 06:12:15
[2026-08-31 06:12:15,758.758 INFO    ] 2026-08-31 06:12:15
[2026-08-31 06:12:15,796.796 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:12:15,995.995 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:12:16,014.014 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:12:16,152.152 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:12:16,230.230 INFO    ] time= 31/08/2026 06:12:16
[2026-08-31 06:12:16,238.238 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:12:16,287.287 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:12:16,400.400 INFO    ] No existing commands found in stream
[2026-08-31 06:12:21,415.415 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:12:21,418.418 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-08-31 06:12:22,682.682 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 06:12:22,684.684 INFO    ] Checking for system updates...
[2026-08-31 06:12:22,720.720 INFO    ] 200
[2026-08-31 06:12:22,723.723 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:12:22,775.775 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:12:22,778.778 INFO    ] No update needed
[2026-08-31 06:12:22,780.780 INFO    ] Checking for camera pi updates...
[2026-08-31 06:12:22,813.813 INFO    ] 200
[2026-08-31 06:12:22,816.816 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:12:22,855.855 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:12:22,911.911 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:12:22,913.913 INFO    ] No camera update needed
[2026-08-31 06:12:22,915.915 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:12:22,918.918 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:12:22,923.923 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:12:22,928.928 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:12:24,969.969 INFO    ] ================================================
[2026-08-31 06:12:24,984.984 INFO    ] Launching Daemon at Mon Aug 31 06:12:24 IST 2026
[2026-08-31 06:12:24,995.995 INFO    ] ================================================
[2026-08-31 06:12:25,558.558 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:12:25
[2026-08-31 06:12:26,139.139 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:12:26,424.424 INFO    ] Initializing speech engine...
[2026-08-31 06:12:26,433.433 INFO    ] 2026-08-31 06:12:26
[2026-08-31 06:12:26,702.702 INFO    ] 2026-08-31 06:12:26
[2026-08-31 06:12:26,756.756 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:12:26,983.983 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:12:26,987.987 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:12:27,200.200 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:12:27,245.245 INFO    ] time= 31/08/2026 06:12:27
[2026-08-31 06:12:27,263.263 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:12:27,272.272 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:12:27,401.401 INFO    ] No existing commands found in stream
[2026-08-31 06:12:32,417.417 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:12:32,420.420 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-08-31 06:12:34,926.926 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 06:12:34,929.929 INFO    ] Checking for system updates...
[2026-08-31 06:12:34,965.965 INFO    ] 200
[2026-08-31 06:12:34,968.968 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:12:35,021.021 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:12:35,024.024 INFO    ] No update needed
[2026-08-31 06:12:35,026.026 INFO    ] Checking for camera pi updates...
[2026-08-31 06:12:35,060.060 INFO    ] 200
[2026-08-31 06:12:35,063.063 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:12:35,103.103 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:12:35,182.182 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:12:35,185.185 INFO    ] No camera update needed
[2026-08-31 06:12:35,187.187 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:12:35,189.189 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:12:35,195.195 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:12:35,200.200 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:12:37,239.239 INFO    ] ================================================
[2026-08-31 06:12:37,253.253 INFO    ] Launching Daemon at Mon Aug 31 06:12:37 IST 2026
[2026-08-31 06:12:37,264.264 INFO    ] ================================================
[2026-08-31 06:12:37,831.831 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:12:37
[2026-08-31 06:12:38,416.416 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:12:38,678.678 INFO    ] Initializing speech engine...
[2026-08-31 06:12:38,691.691 INFO    ] 2026-08-31 06:12:38
[2026-08-31 06:12:38,937.937 INFO    ] 2026-08-31 06:12:38
[2026-08-31 06:12:38,972.972 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:12:39,152.152 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:12:39,168.168 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:12:39,296.296 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:12:39,305.305 INFO    ] time= 31/08/2026 06:12:39
[2026-08-31 06:12:39,313.313 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:12:39,357.357 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:12:39,488.488 INFO    ] No existing commands found in stream
[2026-08-31 06:12:44,512.512 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:12:44,515.515 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-08-31 06:12:45,572.572 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 06:12:45,575.575 INFO    ] Checking for system updates...
[2026-08-31 06:12:45,610.610 INFO    ] 200
[2026-08-31 06:12:45,613.613 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:12:45,664.664 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:12:45,666.666 INFO    ] No update needed
[2026-08-31 06:12:45,669.669 INFO    ] Checking for camera pi updates...
[2026-08-31 06:12:45,702.702 INFO    ] 200
[2026-08-31 06:12:45,704.704 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:12:45,752.752 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:12:45,801.801 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:12:45,803.803 INFO    ] No camera update needed
[2026-08-31 06:12:45,805.805 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:12:45,808.808 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:12:45,813.813 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:12:45,818.818 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:12:47,857.857 INFO    ] ================================================
[2026-08-31 06:12:47,872.872 INFO    ] Launching Daemon at Mon Aug 31 06:12:47 IST 2026
[2026-08-31 06:12:47,883.883 INFO    ] ================================================
[2026-08-31 06:12:48,447.447 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:12:48
[2026-08-31 06:12:49,031.031 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:12:49,278.278 INFO    ] Initializing speech engine...
[2026-08-31 06:12:49,291.291 INFO    ] 2026-08-31 06:12:49
[2026-08-31 06:12:49,552.552 INFO    ] 2026-08-31 06:12:49
[2026-08-31 06:12:49,586.586 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:12:49,840.840 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:12:49,848.848 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:12:50,082.082 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:12:50,102.102 INFO    ] time= 31/08/2026 06:12:50
[2026-08-31 06:12:50,108.108 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:12:50,126.126 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:12:50,236.236 INFO    ] No existing commands found in stream
[2026-08-31 06:12:55,263.263 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:12:55,265.265 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-08-31 06:12:59,052.052 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 06:12:59,055.055 INFO    ] Checking for system updates...
[2026-08-31 06:12:59,094.094 INFO    ] 200
[2026-08-31 06:12:59,097.097 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:12:59,152.152 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:12:59,155.155 INFO    ] No update needed
[2026-08-31 06:12:59,157.157 INFO    ] Checking for camera pi updates...
[2026-08-31 06:12:59,192.192 INFO    ] 200
[2026-08-31 06:12:59,195.195 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:12:59,236.236 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:12:59,319.319 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:12:59,322.322 INFO    ] No camera update needed
[2026-08-31 06:12:59,324.324 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:12:59,327.327 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:12:59,333.333 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:12:59,339.339 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:13:01,383.383 INFO    ] ================================================
[2026-08-31 06:13:01,398.398 INFO    ] Launching Daemon at Mon Aug 31 06:13:01 IST 2026
[2026-08-31 06:13:01,409.409 INFO    ] ================================================
[2026-08-31 06:13:02,148.148 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:13:02
[2026-08-31 06:13:02,854.854 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:13:03,135.135 INFO    ] Initializing speech engine...
[2026-08-31 06:13:03,145.145 INFO    ] 2026-08-31 06:13:03
[2026-08-31 06:13:03,414.414 INFO    ] 2026-08-31 06:13:03
[2026-08-31 06:13:03,457.457 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:13:03,656.656 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:13:03,671.671 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:13:03,812.812 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:13:03,821.821 INFO    ] time= 31/08/2026 06:13:03
[2026-08-31 06:13:03,827.827 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:13:03,874.874 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:13:04,012.012 INFO    ] No existing commands found in stream
[2026-08-31 06:13:09,030.030 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:13:09,032.032 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-08-31 06:13:10,400.400 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 06:13:10,403.403 INFO    ] Checking for system updates...
[2026-08-31 06:13:10,439.439 INFO    ] 200
[2026-08-31 06:13:10,441.441 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:13:10,494.494 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:13:10,496.496 INFO    ] No update needed
[2026-08-31 06:13:10,499.499 INFO    ] Checking for camera pi updates...
[2026-08-31 06:13:10,532.532 INFO    ] 200
[2026-08-31 06:13:10,534.534 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:13:10,574.574 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:13:10,664.664 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:13:10,666.666 INFO    ] No camera update needed
[2026-08-31 06:13:10,669.669 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:13:10,671.671 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:13:10,676.676 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:13:10,681.681 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:13:12,722.722 INFO    ] ================================================
[2026-08-31 06:13:12,737.737 INFO    ] Launching Daemon at Mon Aug 31 06:13:12 IST 2026
[2026-08-31 06:13:12,748.748 INFO    ] ================================================
[2026-08-31 06:13:13,400.400 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:13:13
[2026-08-31 06:13:14,052.052 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:13:14,365.365 INFO    ] Initializing speech engine...
[2026-08-31 06:13:14,373.373 INFO    ] 2026-08-31 06:13:14
[2026-08-31 06:13:14,655.655 INFO    ] 2026-08-31 06:13:14
[2026-08-31 06:13:14,765.765 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:13:14,969.969 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:13:14,983.983 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:13:15,179.179 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:13:15,186.186 INFO    ] time= 31/08/2026 06:13:15
[2026-08-31 06:13:15,207.207 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:13:15,237.237 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:13:15,339.339 INFO    ] No existing commands found in stream
[2026-08-31 06:13:20,366.366 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:13:20,369.369 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-08-31 06:13:23,764.764 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 06:13:23,767.767 INFO    ] Checking for system updates...
[2026-08-31 06:13:23,803.803 INFO    ] 200
[2026-08-31 06:13:23,806.806 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:13:23,868.868 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:13:23,871.871 INFO    ] No update needed
[2026-08-31 06:13:23,873.873 INFO    ] Checking for camera pi updates...
[2026-08-31 06:13:23,912.912 INFO    ] 200
[2026-08-31 06:13:23,915.915 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:13:23,956.956 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:13:24,058.058 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:13:24,061.061 INFO    ] No camera update needed
[2026-08-31 06:13:24,064.064 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:13:24,066.066 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:13:24,073.073 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:13:24,079.079 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:13:26,119.119 INFO    ] ================================================
[2026-08-31 06:13:26,134.134 INFO    ] Launching Daemon at Mon Aug 31 06:13:26 IST 2026
[2026-08-31 06:13:26,144.144 INFO    ] ================================================
[2026-08-31 06:13:26,711.711 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:13:26
[2026-08-31 06:13:27,294.294 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:13:27,556.556 INFO    ] Initializing speech engine...
[2026-08-31 06:13:27,569.569 INFO    ] 2026-08-31 06:13:27
[2026-08-31 06:13:27,820.820 INFO    ] 2026-08-31 06:13:27
[2026-08-31 06:13:27,881.881 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:13:28,109.109 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:13:28,130.130 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:13:28,324.324 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:13:28,368.368 INFO    ] time= 31/08/2026 06:13:28
[2026-08-31 06:13:28,374.374 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:13:28,392.392 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:13:28,517.517 INFO    ] No existing commands found in stream
[2026-08-31 06:13:33,532.532 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:13:33,535.535 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-08-31 06:13:36,169.169 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 06:13:36,171.171 INFO    ] Checking for system updates...
[2026-08-31 06:13:36,207.207 INFO    ] 200
[2026-08-31 06:13:36,210.210 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:13:36,263.263 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:13:36,265.265 INFO    ] No update needed
[2026-08-31 06:13:36,268.268 INFO    ] Checking for camera pi updates...
[2026-08-31 06:13:36,301.301 INFO    ] 200
[2026-08-31 06:13:36,303.303 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:13:36,343.343 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:13:36,423.423 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:13:36,425.425 INFO    ] No camera update needed
[2026-08-31 06:13:36,428.428 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:13:36,430.430 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:13:36,435.435 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:13:36,440.440 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:13:38,482.482 INFO    ] ================================================
[2026-08-31 06:13:38,497.497 INFO    ] Launching Daemon at Mon Aug 31 06:13:38 IST 2026
[2026-08-31 06:13:38,508.508 INFO    ] ================================================
[2026-08-31 06:13:39,093.093 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:13:39
[2026-08-31 06:13:39,694.694 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:13:39,971.971 INFO    ] Initializing speech engine...
[2026-08-31 06:13:39,978.978 INFO    ] 2026-08-31 06:13:39
[2026-08-31 06:13:40,225.225 INFO    ] 2026-08-31 06:13:40
[2026-08-31 06:13:40,266.266 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:13:40,512.512 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:13:40,520.520 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:13:40,653.653 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:13:40,705.705 INFO    ] time= 31/08/2026 06:13:40
[2026-08-31 06:13:40,770.770 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:13:40,789.789 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:13:40,929.929 INFO    ] No existing commands found in stream
[2026-08-31 06:13:45,944.944 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:13:45,947.947 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-08-31 06:13:48,073.073 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 06:13:48,076.076 INFO    ] Checking for system updates...
[2026-08-31 06:13:48,111.111 INFO    ] 200
[2026-08-31 06:13:48,113.113 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:13:48,165.165 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:13:48,168.168 INFO    ] No update needed
[2026-08-31 06:13:48,170.170 INFO    ] Checking for camera pi updates...
[2026-08-31 06:13:48,204.204 INFO    ] 200
[2026-08-31 06:13:48,206.206 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:13:48,246.246 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:13:48,336.336 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:13:48,339.339 INFO    ] No camera update needed
[2026-08-31 06:13:48,341.341 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:13:48,343.343 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:13:48,348.348 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:13:48,353.353 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:13:50,394.394 INFO    ] ================================================
[2026-08-31 06:13:50,410.410 INFO    ] Launching Daemon at Mon Aug 31 06:13:50 IST 2026
[2026-08-31 06:13:50,420.420 INFO    ] ================================================
[2026-08-31 06:13:51,001.001 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:13:50
[2026-08-31 06:13:51,599.599 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:13:51,873.873 INFO    ] Initializing speech engine...
[2026-08-31 06:13:51,882.882 INFO    ] 2026-08-31 06:13:51
[2026-08-31 06:13:52,143.143 INFO    ] 2026-08-31 06:13:52
[2026-08-31 06:13:52,197.197 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:13:52,424.424 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:13:52,430.430 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:13:52,644.644 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:13:52,687.687 INFO    ] time= 31/08/2026 06:13:52
[2026-08-31 06:13:52,702.702 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:13:52,711.711 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:13:52,835.835 INFO    ] No existing commands found in stream
[2026-08-31 06:13:57,850.850 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:13:57,853.853 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-08-31 06:14:00,894.894 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 06:14:00,896.896 INFO    ] Checking for system updates...
[2026-08-31 06:14:00,933.933 INFO    ] 200
[2026-08-31 06:14:00,936.936 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:14:00,989.989 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:14:00,992.992 INFO    ] No update needed
[2026-08-31 06:14:00,995.995 INFO    ] Checking for camera pi updates...
[2026-08-31 06:14:01,030.030 INFO    ] 200
[2026-08-31 06:14:01,033.033 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:14:01,074.074 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:14:01,158.158 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:14:01,161.161 INFO    ] No camera update needed
[2026-08-31 06:14:01,163.163 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:14:01,166.166 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:14:01,172.172 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:14:01,178.178 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:14:03,221.221 INFO    ] ================================================
[2026-08-31 06:14:03,242.242 INFO    ] Launching Daemon at Mon Aug 31 06:14:03 IST 2026
[2026-08-31 06:14:03,257.257 INFO    ] ================================================
[2026-08-31 06:14:03,846.846 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:14:03
[2026-08-31 06:14:04,431.431 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:14:04,686.686 INFO    ] Initializing speech engine...
[2026-08-31 06:14:04,705.705 INFO    ] 2026-08-31 06:14:04
[2026-08-31 06:14:04,952.952 INFO    ] 2026-08-31 06:14:04
[2026-08-31 06:14:04,986.986 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:14:05,183.183 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:14:05,232.232 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:14:05,377.377 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:14:05,404.404 INFO    ] time= 31/08/2026 06:14:05
[2026-08-31 06:14:05,459.459 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:14:05,510.510 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:14:05,644.644 INFO    ] No existing commands found in stream
[2026-08-31 06:14:10,668.668 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:14:10,671.671 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-08-31 06:14:12,178.178 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 06:14:12,181.181 INFO    ] Checking for system updates...
[2026-08-31 06:14:12,218.218 INFO    ] 200
[2026-08-31 06:14:12,221.221 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:14:12,275.275 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:14:12,278.278 INFO    ] No update needed
[2026-08-31 06:14:12,281.281 INFO    ] Checking for camera pi updates...
[2026-08-31 06:14:12,319.319 INFO    ] 200
[2026-08-31 06:14:12,322.322 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:14:12,363.363 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:14:12,553.553 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:14:12,556.556 INFO    ] No camera update needed
[2026-08-31 06:14:12,559.559 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:14:12,561.561 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:14:12,568.568 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:14:12,574.574 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:14:14,615.615 INFO    ] ================================================
[2026-08-31 06:14:14,630.630 INFO    ] Launching Daemon at Mon Aug 31 06:14:14 IST 2026
[2026-08-31 06:14:14,641.641 INFO    ] ================================================
[2026-08-31 06:14:15,224.224 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:14:15
[2026-08-31 06:14:15,823.823 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:14:16,103.103 INFO    ] Initializing speech engine...
[2026-08-31 06:14:16,108.108 INFO    ] 2026-08-31 06:14:16
[2026-08-31 06:14:16,370.370 INFO    ] 2026-08-31 06:14:16
[2026-08-31 06:14:16,423.423 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:14:16,645.645 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:14:16,654.654 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:14:16,798.798 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:14:16,870.870 INFO    ] time= 31/08/2026 06:14:16
[2026-08-31 06:14:16,915.915 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:14:16,967.967 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:14:17,058.058 INFO    ] No existing commands found in stream
[2026-08-31 06:14:22,083.083 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:14:22,086.086 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-08-31 06:14:23,192.192 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 06:14:23,195.195 INFO    ] Checking for system updates...
[2026-08-31 06:14:23,231.231 INFO    ] 200
[2026-08-31 06:14:23,234.234 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:14:23,287.287 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:14:23,290.290 INFO    ] No update needed
[2026-08-31 06:14:23,292.292 INFO    ] Checking for camera pi updates...
[2026-08-31 06:14:23,329.329 INFO    ] 200
[2026-08-31 06:14:23,332.332 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:14:23,372.372 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:14:23,462.462 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:14:23,464.464 INFO    ] No camera update needed
[2026-08-31 06:14:23,467.467 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:14:23,469.469 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:14:23,474.474 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:14:23,480.480 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:14:25,519.519 INFO    ] ================================================
[2026-08-31 06:14:25,534.534 INFO    ] Launching Daemon at Mon Aug 31 06:14:25 IST 2026
[2026-08-31 06:14:25,545.545 INFO    ] ================================================
[2026-08-31 06:14:26,125.125 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:14:26
[2026-08-31 06:14:26,722.722 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:14:26,994.994 INFO    ] Initializing speech engine...
[2026-08-31 06:14:27,003.003 INFO    ] 2026-08-31 06:14:26
[2026-08-31 06:14:27,251.251 INFO    ] 2026-08-31 06:14:27
[2026-08-31 06:14:27,286.286 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:14:27,536.536 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:14:27,546.546 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:14:27,770.770 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:14:27,803.803 INFO    ] time= 31/08/2026 06:14:27
[2026-08-31 06:14:27,809.809 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:14:27,829.829 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:14:27,955.955 INFO    ] No existing commands found in stream
[2026-08-31 06:14:32,969.969 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:14:32,972.972 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-08-31 06:14:36,531.531 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 06:14:36,533.533 INFO    ] Checking for system updates...
[2026-08-31 06:14:36,569.569 INFO    ] 200
[2026-08-31 06:14:36,572.572 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:14:36,625.625 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:14:36,628.628 INFO    ] No update needed
[2026-08-31 06:14:36,630.630 INFO    ] Checking for camera pi updates...
[2026-08-31 06:14:36,664.664 INFO    ] 200
[2026-08-31 06:14:36,666.666 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:14:36,706.706 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:14:36,789.789 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:14:36,792.792 INFO    ] No camera update needed
[2026-08-31 06:14:36,794.794 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:14:36,796.796 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:14:36,802.802 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:14:36,807.807 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:14:38,847.847 INFO    ] ================================================
[2026-08-31 06:14:38,862.862 INFO    ] Launching Daemon at Mon Aug 31 06:14:38 IST 2026
[2026-08-31 06:14:38,873.873 INFO    ] ================================================
[2026-08-31 06:14:39,449.449 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:14:39
[2026-08-31 06:14:40,049.049 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:14:40,326.326 INFO    ] Initializing speech engine...
[2026-08-31 06:14:40,332.332 INFO    ] 2026-08-31 06:14:40
[2026-08-31 06:14:40,594.594 INFO    ] 2026-08-31 06:14:40
[2026-08-31 06:14:40,648.648 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:14:40,835.835 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:14:40,873.873 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:14:41,040.040 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:14:41,090.090 INFO    ] time= 31/08/2026 06:14:41
[2026-08-31 06:14:41,139.139 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:14:41,187.187 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:14:41,315.315 INFO    ] No existing commands found in stream
[2026-08-31 06:14:46,333.333 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:14:46,335.335 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-08-31 06:14:48,321.321 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 06:14:48,324.324 INFO    ] Checking for system updates...
[2026-08-31 06:14:48,360.360 INFO    ] 200
[2026-08-31 06:14:48,363.363 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:14:48,416.416 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:14:48,419.419 INFO    ] No update needed
[2026-08-31 06:14:48,421.421 INFO    ] Checking for camera pi updates...
[2026-08-31 06:14:48,455.455 INFO    ] 200
[2026-08-31 06:14:48,457.457 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:14:48,497.497 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:14:48,596.596 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:14:48,599.599 INFO    ] No camera update needed
[2026-08-31 06:14:48,601.601 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:14:48,604.604 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:14:48,609.609 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:14:48,614.614 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:14:50,654.654 INFO    ] ================================================
[2026-08-31 06:14:50,669.669 INFO    ] Launching Daemon at Mon Aug 31 06:14:50 IST 2026
[2026-08-31 06:14:50,680.680 INFO    ] ================================================
[2026-08-31 06:14:51,250.250 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:14:51
[2026-08-31 06:14:51,839.839 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:14:52,092.092 INFO    ] Initializing speech engine...
[2026-08-31 06:14:52,102.102 INFO    ] 2026-08-31 06:14:52
[2026-08-31 06:14:52,375.375 INFO    ] 2026-08-31 06:14:52
[2026-08-31 06:14:52,410.410 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:14:52,602.602 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:14:52,647.647 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:14:52,885.885 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:14:52,932.932 INFO    ] time= 31/08/2026 06:14:52
[2026-08-31 06:14:52,938.938 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:14:52,955.955 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:14:53,081.081 INFO    ] No existing commands found in stream
[2026-08-31 06:14:58,097.097 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:14:58,100.100 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-08-31 06:15:01,702.702 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 06:15:01,709.709 INFO    ] Checking for system updates...
[2026-08-31 06:15:01,934.934 INFO    ] 200
[2026-08-31 06:15:01,976.976 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:15:02,214.214 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:15:02,234.234 INFO    ] No update needed
[2026-08-31 06:15:02,244.244 INFO    ] Checking for camera pi updates...
[2026-08-31 06:15:02,350.350 INFO    ] 200
[2026-08-31 06:15:02,353.353 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:15:02,473.473 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:15:02,554.554 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:15:02,561.561 INFO    ] No camera update needed
[2026-08-31 06:15:02,565.565 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:15:02,569.569 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:15:02,581.581 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:15:02,593.593 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:15:04,636.636 INFO    ] ================================================
[2026-08-31 06:15:04,651.651 INFO    ] Launching Daemon at Mon Aug 31 06:15:04 IST 2026
[2026-08-31 06:15:04,662.662 INFO    ] ================================================
[2026-08-31 06:15:05,241.241 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:15:05
[2026-08-31 06:15:05,841.841 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:15:06,109.109 INFO    ] Initializing speech engine...
[2026-08-31 06:15:06,135.135 INFO    ] 2026-08-31 06:15:06
[2026-08-31 06:15:06,411.411 INFO    ] 2026-08-31 06:15:06
[2026-08-31 06:15:06,448.448 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:15:06,645.645 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:15:06,662.662 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:15:06,827.827 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:15:06,835.835 INFO    ] time= 31/08/2026 06:15:06
[2026-08-31 06:15:06,892.892 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:15:06,922.922 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:15:07,074.074 INFO    ] No existing commands found in stream
[2026-08-31 06:15:12,082.082 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:15:12,084.084 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-08-31 06:15:12,562.562 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 06:15:12,565.565 INFO    ] Checking for system updates...
[2026-08-31 06:15:12,601.601 INFO    ] 200
[2026-08-31 06:15:12,603.603 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:15:12,657.657 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:15:12,660.660 INFO    ] No update needed
[2026-08-31 06:15:12,663.663 INFO    ] Checking for camera pi updates...
[2026-08-31 06:15:12,698.698 INFO    ] 200
[2026-08-31 06:15:12,701.701 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:15:12,746.746 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:15:12,832.832 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:15:12,835.835 INFO    ] No camera update needed
[2026-08-31 06:15:12,837.837 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:15:12,840.840 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:15:12,845.845 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:15:12,851.851 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:15:14,890.890 INFO    ] ================================================
[2026-08-31 06:15:14,906.906 INFO    ] Launching Daemon at Mon Aug 31 06:15:14 IST 2026
[2026-08-31 06:15:14,916.916 INFO    ] ================================================
[2026-08-31 06:15:15,483.483 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:15:15
[2026-08-31 06:15:16,067.067 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:15:16,328.328 INFO    ] Initializing speech engine...
[2026-08-31 06:15:16,347.347 INFO    ] 2026-08-31 06:15:16
[2026-08-31 06:15:16,606.606 INFO    ] 2026-08-31 06:15:16
[2026-08-31 06:15:16,642.642 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:15:16,902.902 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:15:16,905.905 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:15:17,045.045 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:15:17,109.109 INFO    ] time= 31/08/2026 06:15:17
[2026-08-31 06:15:17,164.164 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:15:17,178.178 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:15:17,234.234 INFO    ] No existing commands found in stream
[2026-08-31 06:15:22,249.249 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:15:22,252.252 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-08-31 06:15:24,836.836 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 06:15:24,839.839 INFO    ] Checking for system updates...
[2026-08-31 06:15:24,875.875 INFO    ] 200
[2026-08-31 06:15:24,878.878 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:15:24,931.931 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:15:24,933.933 INFO    ] No update needed
[2026-08-31 06:15:24,936.936 INFO    ] Checking for camera pi updates...
[2026-08-31 06:15:24,969.969 INFO    ] 200
[2026-08-31 06:15:24,972.972 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:15:25,016.016 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:15:25,126.126 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:15:25,129.129 INFO    ] No camera update needed
[2026-08-31 06:15:25,131.131 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:15:25,133.133 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:15:25,139.139 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:15:25,144.144 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:15:27,186.186 INFO    ] ================================================
[2026-08-31 06:15:27,202.202 INFO    ] Launching Daemon at Mon Aug 31 06:15:27 IST 2026
[2026-08-31 06:15:27,213.213 INFO    ] ================================================
[2026-08-31 06:15:27,805.805 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:15:27
[2026-08-31 06:15:28,392.392 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:15:28,650.650 INFO    ] Initializing speech engine...
[2026-08-31 06:15:28,657.657 INFO    ] 2026-08-31 06:15:28
[2026-08-31 06:15:28,957.957 INFO    ] 2026-08-31 06:15:28
[2026-08-31 06:15:28,995.995 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:15:29,279.279 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:15:29,295.295 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:15:29,447.447 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:15:29,454.454 INFO    ] time= 31/08/2026 06:15:29
[2026-08-31 06:15:29,513.513 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:15:29,578.578 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:15:29,664.664 INFO    ] No existing commands found in stream
[2026-08-31 06:15:34,674.674 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:15:34,677.677 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-08-31 06:15:37,820.820 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 06:15:37,823.823 INFO    ] Checking for system updates...
[2026-08-31 06:15:37,858.858 INFO    ] 200
[2026-08-31 06:15:37,861.861 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:15:37,913.913 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:15:37,916.916 INFO    ] No update needed
[2026-08-31 06:15:37,918.918 INFO    ] Checking for camera pi updates...
[2026-08-31 06:15:37,956.956 INFO    ] 200
[2026-08-31 06:15:37,959.959 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:15:38,004.004 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:15:38,083.083 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:15:38,085.085 INFO    ] No camera update needed
[2026-08-31 06:15:38,088.088 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:15:38,090.090 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:15:38,095.095 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:15:38,100.100 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:15:40,141.141 INFO    ] ================================================
[2026-08-31 06:15:40,156.156 INFO    ] Launching Daemon at Mon Aug 31 06:15:40 IST 2026
[2026-08-31 06:15:40,167.167 INFO    ] ================================================
[2026-08-31 06:15:40,811.811 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:15:40
[2026-08-31 06:15:41,476.476 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:15:41,773.773 INFO    ] Initializing speech engine...
[2026-08-31 06:15:41,783.783 INFO    ] 2026-08-31 06:15:41
[2026-08-31 06:15:42,056.056 INFO    ] 2026-08-31 06:15:42
[2026-08-31 06:15:42,111.111 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:15:42,342.342 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:15:42,349.349 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:15:42,560.560 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:15:42,610.610 INFO    ] time= 31/08/2026 06:15:42
[2026-08-31 06:15:42,629.629 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:15:42,661.661 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:15:42,768.768 INFO    ] No existing commands found in stream
[2026-08-31 06:15:47,798.798 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:15:47,801.801 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-08-31 06:15:49,252.252 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 06:15:49,255.255 INFO    ] Checking for system updates...
[2026-08-31 06:15:49,296.296 INFO    ] 200
[2026-08-31 06:15:49,299.299 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:15:49,352.352 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:15:49,355.355 INFO    ] No update needed
[2026-08-31 06:15:49,357.357 INFO    ] Checking for camera pi updates...
[2026-08-31 06:15:49,396.396 INFO    ] 200
[2026-08-31 06:15:49,399.399 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:15:49,440.440 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:15:49,522.522 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:15:49,524.524 INFO    ] No camera update needed
[2026-08-31 06:15:49,526.526 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:15:49,529.529 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:15:49,535.535 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:15:49,540.540 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:15:51,580.580 INFO    ] ================================================
[2026-08-31 06:15:51,595.595 INFO    ] Launching Daemon at Mon Aug 31 06:15:51 IST 2026
[2026-08-31 06:15:51,606.606 INFO    ] ================================================
[2026-08-31 06:15:52,263.263 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:15:52
[2026-08-31 06:15:52,878.878 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:15:53,133.133 INFO    ] Initializing speech engine...
[2026-08-31 06:15:53,141.141 INFO    ] 2026-08-31 06:15:53
[2026-08-31 06:15:53,435.435 INFO    ] 2026-08-31 06:15:53
[2026-08-31 06:15:53,470.470 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:15:53,674.674 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:15:53,699.699 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:15:53,849.849 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:15:53,856.856 INFO    ] time= 31/08/2026 06:15:53
[2026-08-31 06:15:53,864.864 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:15:53,906.906 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:15:54,044.044 INFO    ] No existing commands found in stream
[2026-08-31 06:15:59,068.068 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:15:59,071.071 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-08-31 06:16:00,152.152 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 06:16:00,154.154 INFO    ] Checking for system updates...
[2026-08-31 06:16:00,191.191 INFO    ] 200
[2026-08-31 06:16:00,193.193 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:16:00,246.246 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:16:00,249.249 INFO    ] No update needed
[2026-08-31 06:16:00,251.251 INFO    ] Checking for camera pi updates...
[2026-08-31 06:16:00,289.289 INFO    ] 200
[2026-08-31 06:16:00,291.291 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:16:00,336.336 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:16:00,391.391 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:16:00,393.393 INFO    ] No camera update needed
[2026-08-31 06:16:00,396.396 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:16:00,398.398 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:16:00,403.403 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:16:00,408.408 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:16:02,453.453 INFO    ] ================================================
[2026-08-31 06:16:02,475.475 INFO    ] Launching Daemon at Mon Aug 31 06:16:02 IST 2026
[2026-08-31 06:16:02,507.507 INFO    ] ================================================
[2026-08-31 06:16:03,150.150 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:16:03
[2026-08-31 06:16:03,829.829 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:16:04,102.102 INFO    ] Initializing speech engine...
[2026-08-31 06:16:04,112.112 INFO    ] 2026-08-31 06:16:04
[2026-08-31 06:16:04,362.362 INFO    ] 2026-08-31 06:16:04
[2026-08-31 06:16:04,427.427 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:16:04,677.677 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:16:04,682.682 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:16:04,885.885 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:16:04,916.916 INFO    ] time= 31/08/2026 06:16:04
[2026-08-31 06:16:04,934.934 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:16:04,943.943 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:16:05,073.073 INFO    ] No existing commands found in stream
[2026-08-31 06:16:10,095.095 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:16:10,099.099 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-08-31 06:16:11,051.051 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 06:16:11,054.054 INFO    ] Checking for system updates...
[2026-08-31 06:16:11,090.090 INFO    ] 200
[2026-08-31 06:16:11,092.092 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:16:11,147.147 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:16:11,149.149 INFO    ] No update needed
[2026-08-31 06:16:11,152.152 INFO    ] Checking for camera pi updates...
[2026-08-31 06:16:11,188.188 INFO    ] 200
[2026-08-31 06:16:11,191.191 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:16:11,235.235 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:16:11,326.326 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:16:11,328.328 INFO    ] No camera update needed
[2026-08-31 06:16:11,331.331 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:16:11,333.333 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:16:11,338.338 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:16:11,344.344 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:16:13,385.385 INFO    ] ================================================
[2026-08-31 06:16:13,401.401 INFO    ] Launching Daemon at Mon Aug 31 06:16:13 IST 2026
[2026-08-31 06:16:13,411.411 INFO    ] ================================================
[2026-08-31 06:16:13,977.977 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:16:13
[2026-08-31 06:16:14,591.591 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:16:14,863.863 INFO    ] Initializing speech engine...
[2026-08-31 06:16:14,874.874 INFO    ] 2026-08-31 06:16:14
[2026-08-31 06:16:15,150.150 INFO    ] 2026-08-31 06:16:15
[2026-08-31 06:16:15,185.185 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:16:15,403.403 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:16:15,411.411 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:16:15,609.609 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:16:15,632.632 INFO    ] time= 31/08/2026 06:16:15
[2026-08-31 06:16:15,674.674 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:16:15,719.719 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:16:15,802.802 INFO    ] No existing commands found in stream
[2026-08-31 06:16:20,815.815 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:16:20,818.818 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-08-31 06:16:24,450.450 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 06:16:24,453.453 INFO    ] Checking for system updates...
[2026-08-31 06:16:24,491.491 INFO    ] 200
[2026-08-31 06:16:24,494.494 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:16:24,551.551 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:16:24,554.554 INFO    ] No update needed
[2026-08-31 06:16:24,556.556 INFO    ] Checking for camera pi updates...
[2026-08-31 06:16:24,589.589 INFO    ] 200
[2026-08-31 06:16:24,591.591 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:16:24,633.633 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:16:24,784.784 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:16:24,786.786 INFO    ] No camera update needed
[2026-08-31 06:16:24,789.789 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:16:24,791.791 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:16:24,797.797 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:16:24,802.802 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:16:26,843.843 INFO    ] ================================================
[2026-08-31 06:16:26,857.857 INFO    ] Launching Daemon at Mon Aug 31 06:16:26 IST 2026
[2026-08-31 06:16:26,868.868 INFO    ] ================================================
[2026-08-31 06:16:27,450.450 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:16:27
[2026-08-31 06:16:28,051.051 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:16:28,313.313 INFO    ] Initializing speech engine...
[2026-08-31 06:16:28,328.328 INFO    ] 2026-08-31 06:16:28
[2026-08-31 06:16:28,612.612 INFO    ] 2026-08-31 06:16:28
[2026-08-31 06:16:28,650.650 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:16:28,855.855 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:16:28,872.872 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:16:29,016.016 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:16:29,025.025 INFO    ] time= 31/08/2026 06:16:29
[2026-08-31 06:16:29,033.033 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:16:29,066.066 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:16:29,194.194 INFO    ] No existing commands found in stream
[2026-08-31 06:16:34,220.220 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:16:34,222.222 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-08-31 06:16:36,725.725 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 06:16:36,728.728 INFO    ] Checking for system updates...
[2026-08-31 06:16:36,767.767 INFO    ] 200
[2026-08-31 06:16:36,769.769 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:16:36,822.822 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:16:36,824.824 INFO    ] No update needed
[2026-08-31 06:16:36,826.826 INFO    ] Checking for camera pi updates...
[2026-08-31 06:16:36,860.860 INFO    ] 200
[2026-08-31 06:16:36,862.862 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:16:36,902.902 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:16:36,990.990 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:16:36,992.992 INFO    ] No camera update needed
[2026-08-31 06:16:36,995.995 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:16:36,997.997 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:16:37,003.003 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:16:37,008.008 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:16:39,048.048 INFO    ] ================================================
[2026-08-31 06:16:39,063.063 INFO    ] Launching Daemon at Mon Aug 31 06:16:39 IST 2026
[2026-08-31 06:16:39,074.074 INFO    ] ================================================
[2026-08-31 06:16:39,640.640 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:16:39
[2026-08-31 06:16:40,224.224 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:16:40,475.475 INFO    ] Initializing speech engine...
[2026-08-31 06:16:40,483.483 INFO    ] 2026-08-31 06:16:40
[2026-08-31 06:16:40,776.776 INFO    ] 2026-08-31 06:16:40
[2026-08-31 06:16:40,813.813 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:16:41,037.037 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:16:41,066.066 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:16:41,259.259 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:16:41,286.286 INFO    ] time= 31/08/2026 06:16:41
[2026-08-31 06:16:41,345.345 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:16:41,407.407 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:16:41,468.468 INFO    ] No existing commands found in stream
[2026-08-31 06:16:46,480.480 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:16:46,483.483 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-08-31 06:16:48,689.689 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 06:16:48,692.692 INFO    ] Checking for system updates...
[2026-08-31 06:16:48,730.730 INFO    ] 200
[2026-08-31 06:16:48,733.733 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:16:48,790.790 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:16:48,793.793 INFO    ] No update needed
[2026-08-31 06:16:48,795.795 INFO    ] Checking for camera pi updates...
[2026-08-31 06:16:48,828.828 INFO    ] 200
[2026-08-31 06:16:48,830.830 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:16:48,871.871 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:16:48,956.956 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:16:48,958.958 INFO    ] No camera update needed
[2026-08-31 06:16:48,961.961 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:16:48,963.963 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:16:48,968.968 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:16:48,973.973 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:16:51,012.012 INFO    ] ================================================
[2026-08-31 06:16:51,027.027 INFO    ] Launching Daemon at Mon Aug 31 06:16:51 IST 2026
[2026-08-31 06:16:51,038.038 INFO    ] ================================================
[2026-08-31 06:16:51,620.620 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:16:51
[2026-08-31 06:16:52,219.219 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:16:52,478.478 INFO    ] Initializing speech engine...
[2026-08-31 06:16:52,485.485 INFO    ] 2026-08-31 06:16:52
[2026-08-31 06:16:52,780.780 INFO    ] 2026-08-31 06:16:52
[2026-08-31 06:16:52,818.818 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:16:53,047.047 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:16:53,107.107 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:16:53,263.263 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:16:53,311.311 INFO    ] time= 31/08/2026 06:16:53
[2026-08-31 06:16:53,361.361 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:16:53,412.412 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:16:53,561.561 INFO    ] No existing commands found in stream
[2026-08-31 06:16:58,586.586 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:16:58,589.589 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-08-31 06:16:59,041.041 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 06:16:59,044.044 INFO    ] Checking for system updates...
[2026-08-31 06:16:59,079.079 INFO    ] 200
[2026-08-31 06:16:59,081.081 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:16:59,139.139 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:16:59,141.141 INFO    ] No update needed
[2026-08-31 06:16:59,144.144 INFO    ] Checking for camera pi updates...
[2026-08-31 06:16:59,182.182 INFO    ] 200
[2026-08-31 06:16:59,184.184 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:16:59,224.224 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:16:59,300.300 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:16:59,303.303 INFO    ] No camera update needed
[2026-08-31 06:16:59,305.305 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:16:59,307.307 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:16:59,313.313 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:16:59,318.318 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:17:01,358.358 INFO    ] ================================================
[2026-08-31 06:17:01,373.373 INFO    ] Launching Daemon at Mon Aug 31 06:17:01 IST 2026
[2026-08-31 06:17:01,384.384 INFO    ] ================================================
[2026-08-31 06:17:02,019.019 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:17:02
[2026-08-31 06:17:02,782.782 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:17:03,144.144 INFO    ] Initializing speech engine...
[2026-08-31 06:17:03,154.154 INFO    ] 2026-08-31 06:17:03
[2026-08-31 06:17:03,467.467 INFO    ] 2026-08-31 06:17:03
[2026-08-31 06:17:03,503.503 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:17:03,767.767 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:17:03,798.798 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:17:04,002.002 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:17:04,045.045 INFO    ] time= 31/08/2026 06:17:04
[2026-08-31 06:17:04,051.051 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:17:04,069.069 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:17:04,200.200 INFO    ] No existing commands found in stream
[2026-08-31 06:17:09,223.223 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:17:09,226.226 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-08-31 06:17:14,754.754 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 06:17:14,756.756 INFO    ] Checking for system updates...
[2026-08-31 06:17:14,798.798 INFO    ] 200
[2026-08-31 06:17:14,800.800 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:17:14,852.852 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:17:14,855.855 INFO    ] No update needed
[2026-08-31 06:17:14,857.857 INFO    ] Checking for camera pi updates...
[2026-08-31 06:17:14,890.890 INFO    ] 200
[2026-08-31 06:17:14,892.892 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:17:14,936.936 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:17:15,019.019 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:17:15,021.021 INFO    ] No camera update needed
[2026-08-31 06:17:15,023.023 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:17:15,026.026 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:17:15,031.031 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:17:15,036.036 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:17:17,077.077 INFO    ] ================================================
[2026-08-31 06:17:17,092.092 INFO    ] Launching Daemon at Mon Aug 31 06:17:17 IST 2026
[2026-08-31 06:17:17,103.103 INFO    ] ================================================
[2026-08-31 06:17:17,669.669 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:17:17
[2026-08-31 06:17:18,277.277 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:17:18,555.555 INFO    ] Initializing speech engine...
[2026-08-31 06:17:18,565.565 INFO    ] 2026-08-31 06:17:18
[2026-08-31 06:17:18,826.826 INFO    ] 2026-08-31 06:17:18
[2026-08-31 06:17:18,881.881 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:17:19,108.108 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:17:19,114.114 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:17:19,244.244 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:17:19,298.298 INFO    ] time= 31/08/2026 06:17:19
[2026-08-31 06:17:19,367.367 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:17:19,381.381 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:17:19,521.521 INFO    ] No existing commands found in stream
[2026-08-31 06:17:24,538.538 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:17:24,541.541 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-08-31 06:17:25,755.755 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 06:17:25,758.758 INFO    ] Checking for system updates...
[2026-08-31 06:17:25,797.797 INFO    ] 200
[2026-08-31 06:17:25,800.800 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:17:25,851.851 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:17:25,854.854 INFO    ] No update needed
[2026-08-31 06:17:25,856.856 INFO    ] Checking for camera pi updates...
[2026-08-31 06:17:25,890.890 INFO    ] 200
[2026-08-31 06:17:25,892.892 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:17:25,933.933 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:17:26,031.031 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:17:26,033.033 INFO    ] No camera update needed
[2026-08-31 06:17:26,036.036 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:17:26,038.038 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:17:26,043.043 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:17:26,048.048 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:17:28,090.090 INFO    ] ================================================
[2026-08-31 06:17:28,106.106 INFO    ] Launching Daemon at Mon Aug 31 06:17:28 IST 2026
[2026-08-31 06:17:28,118.118 INFO    ] ================================================
[2026-08-31 06:17:28,701.701 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:17:28
[2026-08-31 06:17:29,300.300 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:17:29,572.572 INFO    ] Initializing speech engine...
[2026-08-31 06:17:29,581.581 INFO    ] 2026-08-31 06:17:29
[2026-08-31 06:17:29,830.830 INFO    ] 2026-08-31 06:17:29
[2026-08-31 06:17:29,864.864 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:17:30,117.117 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:17:30,127.127 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:17:30,324.324 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:17:30,383.383 INFO    ] time= 31/08/2026 06:17:30
[2026-08-31 06:17:30,390.390 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:17:30,408.408 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:17:30,518.518 INFO    ] No existing commands found in stream
[2026-08-31 06:17:35,545.545 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:17:35,549.549 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-08-31 06:17:39,572.572 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 06:17:39,575.575 INFO    ] Checking for system updates...
[2026-08-31 06:17:39,614.614 INFO    ] 200
[2026-08-31 06:17:39,617.617 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:17:39,677.677 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:17:39,680.680 INFO    ] No update needed
[2026-08-31 06:17:39,682.682 INFO    ] Checking for camera pi updates...
[2026-08-31 06:17:39,716.716 INFO    ] 200
[2026-08-31 06:17:39,718.718 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:17:39,759.759 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:17:39,842.842 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:17:39,844.844 INFO    ] No camera update needed
[2026-08-31 06:17:39,846.846 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:17:39,849.849 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:17:39,854.854 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:17:39,859.859 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:17:41,902.902 INFO    ] ================================================
[2026-08-31 06:17:41,918.918 INFO    ] Launching Daemon at Mon Aug 31 06:17:41 IST 2026
[2026-08-31 06:17:41,929.929 INFO    ] ================================================
[2026-08-31 06:17:42,582.582 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:17:42
[2026-08-31 06:17:43,258.258 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:17:43,561.561 INFO    ] Initializing speech engine...
[2026-08-31 06:17:43,571.571 INFO    ] 2026-08-31 06:17:43
[2026-08-31 06:17:43,851.851 INFO    ] 2026-08-31 06:17:43
[2026-08-31 06:17:43,907.907 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:17:44,163.163 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:17:44,170.170 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:17:44,406.406 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:17:44,414.414 INFO    ] time= 31/08/2026 06:17:44
[2026-08-31 06:17:44,432.432 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:17:44,461.461 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:17:44,598.598 INFO    ] No existing commands found in stream
[2026-08-31 06:17:49,629.629 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:17:49,633.633 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-08-31 06:17:51,014.014 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 06:17:51,017.017 INFO    ] Checking for system updates...
[2026-08-31 06:17:51,058.058 INFO    ] 200
[2026-08-31 06:17:51,062.062 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:17:51,114.114 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:17:51,118.118 INFO    ] No update needed
[2026-08-31 06:17:51,120.120 INFO    ] Checking for camera pi updates...
[2026-08-31 06:17:51,156.156 INFO    ] 200
[2026-08-31 06:17:51,159.159 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:17:51,199.199 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:17:51,282.282 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:17:51,284.284 INFO    ] No camera update needed
[2026-08-31 06:17:51,287.287 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:17:51,289.289 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:17:51,294.294 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:17:51,299.299 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:17:53,340.340 INFO    ] ================================================
[2026-08-31 06:17:53,356.356 INFO    ] Launching Daemon at Mon Aug 31 06:17:53 IST 2026
[2026-08-31 06:17:53,367.367 INFO    ] ================================================
[2026-08-31 06:17:53,946.946 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:17:53
[2026-08-31 06:17:54,570.570 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:17:54,881.881 INFO    ] Initializing speech engine...
[2026-08-31 06:17:54,886.886 INFO    ] 2026-08-31 06:17:54
[2026-08-31 06:17:55,160.160 INFO    ] 2026-08-31 06:17:55
[2026-08-31 06:17:55,199.199 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:17:55,401.401 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:17:55,418.418 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:17:55,580.580 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:17:55,588.588 INFO    ] time= 31/08/2026 06:17:55
[2026-08-31 06:17:55,597.597 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:17:55,604.604 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:17:55,679.679 INFO    ] No existing commands found in stream
[2026-08-31 06:18:00,692.692 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:18:00,695.695 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-08-31 06:18:03,574.574 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 06:18:03,577.577 INFO    ] Checking for system updates...
[2026-08-31 06:18:03,616.616 INFO    ] 200
[2026-08-31 06:18:03,619.619 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:18:03,673.673 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:18:03,676.676 INFO    ] No update needed
[2026-08-31 06:18:03,678.678 INFO    ] Checking for camera pi updates...
[2026-08-31 06:18:03,718.718 INFO    ] 200
[2026-08-31 06:18:03,720.720 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:18:03,761.761 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:18:03,850.850 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:18:03,853.853 INFO    ] No camera update needed
[2026-08-31 06:18:03,855.855 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:18:03,858.858 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:18:03,863.863 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:18:03,869.869 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:18:05,909.909 INFO    ] ================================================
[2026-08-31 06:18:05,925.925 INFO    ] Launching Daemon at Mon Aug 31 06:18:05 IST 2026
[2026-08-31 06:18:05,938.938 INFO    ] ================================================
[2026-08-31 06:18:06,540.540 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:18:06
[2026-08-31 06:18:07,138.138 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:18:07,411.411 INFO    ] Initializing speech engine...
[2026-08-31 06:18:07,420.420 INFO    ] 2026-08-31 06:18:07
[2026-08-31 06:18:07,671.671 INFO    ] 2026-08-31 06:18:07
[2026-08-31 06:18:07,739.739 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:18:07,965.965 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:18:07,971.971 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:18:08,111.111 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:18:08,172.172 INFO    ] time= 31/08/2026 06:18:08
[2026-08-31 06:18:08,221.221 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:18:08,245.245 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:18:08,370.370 INFO    ] No existing commands found in stream
[2026-08-31 06:18:13,397.397 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:18:13,400.400 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-08-31 06:18:17,252.252 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 06:18:17,254.254 INFO    ] Checking for system updates...
[2026-08-31 06:18:17,294.294 INFO    ] 200
[2026-08-31 06:18:17,296.296 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:18:17,349.349 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:18:17,352.352 INFO    ] No update needed
[2026-08-31 06:18:17,354.354 INFO    ] Checking for camera pi updates...
[2026-08-31 06:18:17,388.388 INFO    ] 200
[2026-08-31 06:18:17,390.390 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:18:17,436.436 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:18:17,515.515 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:18:17,517.517 INFO    ] No camera update needed
[2026-08-31 06:18:17,520.520 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:18:17,522.522 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:18:17,527.527 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:18:17,532.532 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:18:19,573.573 INFO    ] ================================================
[2026-08-31 06:18:19,588.588 INFO    ] Launching Daemon at Mon Aug 31 06:18:19 IST 2026
[2026-08-31 06:18:19,599.599 INFO    ] ================================================
[2026-08-31 06:18:20,270.270 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:18:20
[2026-08-31 06:18:20,853.853 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:18:21,104.104 INFO    ] Initializing speech engine...
[2026-08-31 06:18:21,127.127 INFO    ] 2026-08-31 06:18:21
[2026-08-31 06:18:21,380.380 INFO    ] 2026-08-31 06:18:21
[2026-08-31 06:18:21,415.415 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:18:21,672.672 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:18:21,682.682 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:18:21,879.879 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:18:21,947.947 INFO    ] time= 31/08/2026 06:18:21
[2026-08-31 06:18:21,954.954 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:18:21,970.970 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:18:22,106.106 INFO    ] No existing commands found in stream
[2026-08-31 06:18:27,118.118 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:18:27,120.120 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-08-31 06:18:31,320.320 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 06:18:31,323.323 INFO    ] Checking for system updates...
[2026-08-31 06:18:31,362.362 INFO    ] 200
[2026-08-31 06:18:31,365.365 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:18:31,427.427 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:18:31,430.430 INFO    ] No update needed
[2026-08-31 06:18:31,432.432 INFO    ] Checking for camera pi updates...
[2026-08-31 06:18:31,468.468 INFO    ] 200
[2026-08-31 06:18:31,470.470 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:18:31,519.519 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:18:31,682.682 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:18:31,685.685 INFO    ] No camera update needed
[2026-08-31 06:18:31,688.688 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:18:31,691.691 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:18:31,698.698 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:18:31,704.704 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:18:33,749.749 INFO    ] ================================================
[2026-08-31 06:18:33,765.765 INFO    ] Launching Daemon at Mon Aug 31 06:18:33 IST 2026
[2026-08-31 06:18:33,777.777 INFO    ] ================================================
[2026-08-31 06:18:34,360.360 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:18:34
[2026-08-31 06:18:34,959.959 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:18:35,233.233 INFO    ] Initializing speech engine...
[2026-08-31 06:18:35,242.242 INFO    ] 2026-08-31 06:18:35
[2026-08-31 06:18:35,491.491 INFO    ] 2026-08-31 06:18:35
[2026-08-31 06:18:35,526.526 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:18:35,778.778 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:18:35,787.787 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:18:36,002.002 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:18:36,047.047 INFO    ] time= 31/08/2026 06:18:36
[2026-08-31 06:18:36,053.053 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:18:36,073.073 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:18:36,198.198 INFO    ] No existing commands found in stream
[2026-08-31 06:18:41,213.213 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:18:41,215.215 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-08-31 06:18:45,154.154 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 06:18:45,157.157 INFO    ] Checking for system updates...
[2026-08-31 06:18:45,195.195 INFO    ] 200
[2026-08-31 06:18:45,198.198 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:18:45,253.253 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:18:45,256.256 INFO    ] No update needed
[2026-08-31 06:18:45,259.259 INFO    ] Checking for camera pi updates...
[2026-08-31 06:18:45,293.293 INFO    ] 200
[2026-08-31 06:18:45,296.296 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:18:45,343.343 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:18:45,430.430 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:18:45,433.433 INFO    ] No camera update needed
[2026-08-31 06:18:45,435.435 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:18:45,438.438 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:18:45,445.445 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:18:45,450.450 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:18:47,493.493 INFO    ] ================================================
[2026-08-31 06:18:47,509.509 INFO    ] Launching Daemon at Mon Aug 31 06:18:47 IST 2026
[2026-08-31 06:18:47,521.521 INFO    ] ================================================
[2026-08-31 06:18:48,102.102 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:18:48
[2026-08-31 06:18:48,702.702 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:18:48,980.980 INFO    ] Initializing speech engine...
[2026-08-31 06:18:48,989.989 INFO    ] 2026-08-31 06:18:48
[2026-08-31 06:18:49,248.248 INFO    ] 2026-08-31 06:18:49
[2026-08-31 06:18:49,303.303 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:18:49,529.529 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:18:49,533.533 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:18:49,667.667 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:18:49,721.721 INFO    ] time= 31/08/2026 06:18:49
[2026-08-31 06:18:49,776.776 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:18:49,798.798 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:18:49,931.931 INFO    ] No existing commands found in stream
[2026-08-31 06:18:54,956.956 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:18:54,960.960 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-08-31 06:18:56,734.734 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 06:18:56,737.737 INFO    ] Checking for system updates...
[2026-08-31 06:18:56,778.778 INFO    ] 200
[2026-08-31 06:18:56,780.780 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:18:56,832.832 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:18:56,835.835 INFO    ] No update needed
[2026-08-31 06:18:56,837.837 INFO    ] Checking for camera pi updates...
[2026-08-31 06:18:56,870.870 INFO    ] 200
[2026-08-31 06:18:56,873.873 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:18:56,914.914 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:18:56,998.998 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:18:57,001.001 INFO    ] No camera update needed
[2026-08-31 06:18:57,003.003 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:18:57,005.005 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:18:57,011.011 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:18:57,016.016 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:18:59,058.058 INFO    ] ================================================
[2026-08-31 06:18:59,074.074 INFO    ] Launching Daemon at Mon Aug 31 06:18:59 IST 2026
[2026-08-31 06:18:59,086.086 INFO    ] ================================================
[2026-08-31 06:18:59,761.761 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:18:59
[2026-08-31 06:19:00,461.461 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:19:00,775.775 INFO    ] Initializing speech engine...
[2026-08-31 06:19:00,790.790 INFO    ] 2026-08-31 06:19:00
[2026-08-31 06:19:01,072.072 INFO    ] 2026-08-31 06:19:01
[2026-08-31 06:19:01,166.166 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:19:01,348.348 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:19:01,351.351 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:19:01,477.477 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:19:01,504.504 INFO    ] time= 31/08/2026 06:19:01
[2026-08-31 06:19:01,514.514 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:19:01,525.525 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:19:01,591.591 INFO    ] No existing commands found in stream
[2026-08-31 06:19:06,602.602 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:19:06,604.604 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-08-31 06:19:07,912.912 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 06:19:07,915.915 INFO    ] Checking for system updates...
[2026-08-31 06:19:07,954.954 INFO    ] 200
[2026-08-31 06:19:07,957.957 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:19:08,016.016 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:19:08,018.018 INFO    ] No update needed
[2026-08-31 06:19:08,021.021 INFO    ] Checking for camera pi updates...
[2026-08-31 06:19:08,055.055 INFO    ] 200
[2026-08-31 06:19:08,058.058 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:19:08,099.099 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:19:08,180.180 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:19:08,183.183 INFO    ] No camera update needed
[2026-08-31 06:19:08,185.185 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:19:08,188.188 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:19:08,193.193 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:19:08,198.198 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:19:10,240.240 INFO    ] ================================================
[2026-08-31 06:19:10,255.255 INFO    ] Launching Daemon at Mon Aug 31 06:19:10 IST 2026
[2026-08-31 06:19:10,269.269 INFO    ] ================================================
[2026-08-31 06:19:10,833.833 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:19:10
[2026-08-31 06:19:11,416.416 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:19:11,689.689 INFO    ] Initializing speech engine...
[2026-08-31 06:19:11,698.698 INFO    ] 2026-08-31 06:19:11
[2026-08-31 06:19:11,943.943 INFO    ] 2026-08-31 06:19:11
[2026-08-31 06:19:11,978.978 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:19:12,158.158 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:19:12,178.178 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:19:12,371.371 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:19:12,411.411 INFO    ] time= 31/08/2026 06:19:12
[2026-08-31 06:19:12,465.465 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:19:12,502.502 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:19:12,640.640 INFO    ] No existing commands found in stream
[2026-08-31 06:19:17,661.661 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:19:17,664.664 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-08-31 06:19:19,791.791 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 06:19:19,794.794 INFO    ] Checking for system updates...
[2026-08-31 06:19:19,830.830 INFO    ] 200
[2026-08-31 06:19:19,833.833 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:19:19,893.893 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:19:19,896.896 INFO    ] No update needed
[2026-08-31 06:19:19,899.899 INFO    ] Checking for camera pi updates...
[2026-08-31 06:19:19,936.936 INFO    ] 200
[2026-08-31 06:19:19,939.939 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:19:19,981.981 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:19:20,084.084 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:19:20,087.087 INFO    ] No camera update needed
[2026-08-31 06:19:20,090.090 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:19:20,093.093 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:19:20,099.099 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:19:20,104.104 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:19:22,146.146 INFO    ] ================================================
[2026-08-31 06:19:22,161.161 INFO    ] Launching Daemon at Mon Aug 31 06:19:22 IST 2026
[2026-08-31 06:19:22,172.172 INFO    ] ================================================
[2026-08-31 06:19:22,755.755 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:19:22
[2026-08-31 06:19:23,358.358 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:19:23,620.620 INFO    ] Initializing speech engine...
[2026-08-31 06:19:23,629.629 INFO    ] 2026-08-31 06:19:23
[2026-08-31 06:19:23,921.921 INFO    ] 2026-08-31 06:19:23
[2026-08-31 06:19:23,957.957 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:19:24,154.154 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:19:24,168.168 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:19:24,328.328 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:19:24,336.336 INFO    ] time= 31/08/2026 06:19:24
[2026-08-31 06:19:24,340.340 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:19:24,346.346 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:19:24,479.479 INFO    ] No existing commands found in stream
[2026-08-31 06:19:29,504.504 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:19:29,507.507 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-08-31 06:19:32,053.053 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 06:19:32,056.056 INFO    ] Checking for system updates...
[2026-08-31 06:19:32,094.094 INFO    ] 200
[2026-08-31 06:19:32,097.097 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:19:32,156.156 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:19:32,159.159 INFO    ] No update needed
[2026-08-31 06:19:32,162.162 INFO    ] Checking for camera pi updates...
[2026-08-31 06:19:32,198.198 INFO    ] 200
[2026-08-31 06:19:32,200.200 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:19:32,248.248 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:19:32,301.301 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:19:32,305.305 INFO    ] No camera update needed
[2026-08-31 06:19:32,308.308 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:19:32,311.311 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:19:32,318.318 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:19:32,324.324 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:19:34,365.365 INFO    ] ================================================
[2026-08-31 06:19:34,380.380 INFO    ] Launching Daemon at Mon Aug 31 06:19:34 IST 2026
[2026-08-31 06:19:34,391.391 INFO    ] ================================================
[2026-08-31 06:19:34,956.956 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:19:34
[2026-08-31 06:19:35,539.539 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:19:35,806.806 INFO    ] Initializing speech engine...
[2026-08-31 06:19:35,816.816 INFO    ] 2026-08-31 06:19:35
[2026-08-31 06:19:36,062.062 INFO    ] 2026-08-31 06:19:36
[2026-08-31 06:19:36,096.096 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:19:36,347.347 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:19:36,357.357 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:19:36,490.490 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:19:36,531.531 INFO    ] time= 31/08/2026 06:19:36
[2026-08-31 06:19:36,570.570 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:19:36,614.614 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:19:36,761.761 INFO    ] No existing commands found in stream
[2026-08-31 06:19:41,780.780 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:19:41,783.783 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-08-31 06:19:43,771.771 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 06:19:43,774.774 INFO    ] Checking for system updates...
[2026-08-31 06:19:43,814.814 INFO    ] 200
[2026-08-31 06:19:43,817.817 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:19:43,878.878 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:19:43,882.882 INFO    ] No update needed
[2026-08-31 06:19:43,885.885 INFO    ] Checking for camera pi updates...
[2026-08-31 06:19:43,923.923 INFO    ] 200
[2026-08-31 06:19:43,926.926 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:19:43,973.973 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:19:44,056.056 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:19:44,059.059 INFO    ] No camera update needed
[2026-08-31 06:19:44,062.062 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:19:44,064.064 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:19:44,071.071 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:19:44,076.076 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:19:46,118.118 INFO    ] ================================================
[2026-08-31 06:19:46,133.133 INFO    ] Launching Daemon at Mon Aug 31 06:19:46 IST 2026
[2026-08-31 06:19:46,144.144 INFO    ] ================================================
[2026-08-31 06:19:46,711.711 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:19:46
[2026-08-31 06:19:47,294.294 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:19:47,550.550 INFO    ] Initializing speech engine...
[2026-08-31 06:19:47,569.569 INFO    ] 2026-08-31 06:19:47
[2026-08-31 06:19:47,814.814 INFO    ] 2026-08-31 06:19:47
[2026-08-31 06:19:47,850.850 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:19:48,100.100 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:19:48,109.109 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:19:48,242.242 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:19:48,282.282 INFO    ] time= 31/08/2026 06:19:48
[2026-08-31 06:19:48,336.336 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:19:48,373.373 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:19:48,510.510 INFO    ] No existing commands found in stream
[2026-08-31 06:19:53,536.536 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:19:53,541.541 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-08-31 06:19:54,048.048 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 06:19:54,052.052 INFO    ] Checking for system updates...
[2026-08-31 06:19:54,088.088 INFO    ] 200
[2026-08-31 06:19:54,091.091 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:19:54,144.144 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:19:54,147.147 INFO    ] No update needed
[2026-08-31 06:19:54,150.150 INFO    ] Checking for camera pi updates...
[2026-08-31 06:19:54,185.185 INFO    ] 200
[2026-08-31 06:19:54,188.188 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:19:54,235.235 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:19:54,322.322 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:19:54,325.325 INFO    ] No camera update needed
[2026-08-31 06:19:54,328.328 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:19:54,331.331 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:19:54,337.337 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:19:54,344.344 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:19:56,384.384 INFO    ] ================================================
[2026-08-31 06:19:56,400.400 INFO    ] Launching Daemon at Mon Aug 31 06:19:56 IST 2026
[2026-08-31 06:19:56,411.411 INFO    ] ================================================
[2026-08-31 06:19:56,989.989 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:19:56
[2026-08-31 06:19:57,586.586 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:19:57,858.858 INFO    ] Initializing speech engine...
[2026-08-31 06:19:57,868.868 INFO    ] 2026-08-31 06:19:57
[2026-08-31 06:19:58,131.131 INFO    ] 2026-08-31 06:19:58
[2026-08-31 06:19:58,184.184 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:19:58,411.411 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:19:58,416.416 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:19:58,559.559 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:19:58,611.611 INFO    ] time= 31/08/2026 06:19:58
[2026-08-31 06:19:58,670.670 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:19:58,682.682 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:19:58,828.828 INFO    ] No existing commands found in stream
[2026-08-31 06:20:03,847.847 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:20:03,850.850 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-08-31 06:20:08,843.843 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 06:20:08,846.846 INFO    ] Checking for system updates...
[2026-08-31 06:20:08,885.885 INFO    ] 200
[2026-08-31 06:20:08,888.888 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:20:08,947.947 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:20:08,950.950 INFO    ] No update needed
[2026-08-31 06:20:08,952.952 INFO    ] Checking for camera pi updates...
[2026-08-31 06:20:08,987.987 INFO    ] 200
[2026-08-31 06:20:08,989.989 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:20:09,033.033 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:20:09,115.115 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:20:09,117.117 INFO    ] No camera update needed
[2026-08-31 06:20:09,120.120 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:20:09,122.122 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:20:09,128.128 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:20:09,133.133 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:20:11,174.174 INFO    ] ================================================
[2026-08-31 06:20:11,189.189 INFO    ] Launching Daemon at Mon Aug 31 06:20:11 IST 2026
[2026-08-31 06:20:11,200.200 INFO    ] ================================================
[2026-08-31 06:20:11,851.851 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:20:11
[2026-08-31 06:20:12,521.521 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:20:12,827.827 INFO    ] Initializing speech engine...
[2026-08-31 06:20:12,841.841 INFO    ] 2026-08-31 06:20:12
[2026-08-31 06:20:13,151.151 INFO    ] 2026-08-31 06:20:13
[2026-08-31 06:20:13,220.220 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:20:13,445.445 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:20:13,455.455 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:20:13,649.649 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:20:13,656.656 INFO    ] time= 31/08/2026 06:20:13
[2026-08-31 06:20:13,671.671 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:20:13,681.681 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:20:13,810.810 INFO    ] No existing commands found in stream
[2026-08-31 06:20:18,835.835 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:20:18,839.839 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-08-31 06:20:20,815.815 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 06:20:20,818.818 INFO    ] Checking for system updates...
[2026-08-31 06:20:20,856.856 INFO    ] 200
[2026-08-31 06:20:20,859.859 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:20:20,912.912 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:20:20,915.915 INFO    ] No update needed
[2026-08-31 06:20:20,918.918 INFO    ] Checking for camera pi updates...
[2026-08-31 06:20:20,951.951 INFO    ] 200
[2026-08-31 06:20:20,954.954 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:20:20,994.994 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:20:21,065.065 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:20:21,068.068 INFO    ] No camera update needed
[2026-08-31 06:20:21,070.070 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:20:21,073.073 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:20:21,078.078 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:20:21,083.083 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:20:23,125.125 INFO    ] ================================================
[2026-08-31 06:20:23,140.140 INFO    ] Launching Daemon at Mon Aug 31 06:20:23 IST 2026
[2026-08-31 06:20:23,151.151 INFO    ] ================================================
[2026-08-31 06:20:23,794.794 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:20:23
[2026-08-31 06:20:24,462.462 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:20:24,763.763 INFO    ] Initializing speech engine...
[2026-08-31 06:20:24,771.771 INFO    ] 2026-08-31 06:20:24
[2026-08-31 06:20:25,045.045 INFO    ] 2026-08-31 06:20:25
[2026-08-31 06:20:25,101.101 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:20:25,381.381 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:20:25,389.389 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:20:25,558.558 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:20:25,590.590 INFO    ] time= 31/08/2026 06:20:25
[2026-08-31 06:20:25,607.607 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:20:25,638.638 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:20:25,768.768 INFO    ] No existing commands found in stream
[2026-08-31 06:20:30,793.793 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:20:30,796.796 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-08-31 06:20:32,721.721 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 06:20:32,724.724 INFO    ] Checking for system updates...
[2026-08-31 06:20:32,760.760 INFO    ] 200
[2026-08-31 06:20:32,762.762 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:20:32,815.815 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:20:32,817.817 INFO    ] No update needed
[2026-08-31 06:20:32,820.820 INFO    ] Checking for camera pi updates...
[2026-08-31 06:20:32,853.853 INFO    ] 200
[2026-08-31 06:20:32,856.856 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:20:32,907.907 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:20:32,983.983 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:20:32,986.986 INFO    ] No camera update needed
[2026-08-31 06:20:32,988.988 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:20:32,990.990 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:20:32,996.996 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:20:33,001.001 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:20:35,044.044 INFO    ] ================================================
[2026-08-31 06:20:35,060.060 INFO    ] Launching Daemon at Mon Aug 31 06:20:35 IST 2026
[2026-08-31 06:20:35,071.071 INFO    ] ================================================
[2026-08-31 06:20:35,655.655 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:20:35
[2026-08-31 06:20:36,241.241 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:20:36,495.495 INFO    ] Initializing speech engine...
[2026-08-31 06:20:36,518.518 INFO    ] 2026-08-31 06:20:36
[2026-08-31 06:20:36,773.773 INFO    ] 2026-08-31 06:20:36
[2026-08-31 06:20:36,808.808 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:20:37,007.007 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:20:37,030.030 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:20:37,277.277 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:20:37,327.327 INFO    ] time= 31/08/2026 06:20:37
[2026-08-31 06:20:37,346.346 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:20:37,364.364 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:20:37,476.476 INFO    ] No existing commands found in stream
[2026-08-31 06:20:42,501.501 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:20:42,504.504 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-08-31 06:20:45,371.371 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 06:20:45,374.374 INFO    ] Checking for system updates...
[2026-08-31 06:20:45,414.414 INFO    ] 200
[2026-08-31 06:20:45,416.416 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:20:45,477.477 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:20:45,479.479 INFO    ] No update needed
[2026-08-31 06:20:45,482.482 INFO    ] Checking for camera pi updates...
[2026-08-31 06:20:45,515.515 INFO    ] 200
[2026-08-31 06:20:45,517.517 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:20:45,557.557 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:20:45,750.750 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:20:45,753.753 INFO    ] No camera update needed
[2026-08-31 06:20:45,755.755 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:20:45,757.757 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:20:45,763.763 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:20:45,768.768 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:20:47,807.807 INFO    ] ================================================
[2026-08-31 06:20:47,823.823 INFO    ] Launching Daemon at Mon Aug 31 06:20:47 IST 2026
[2026-08-31 06:20:47,835.835 INFO    ] ================================================
[2026-08-31 06:20:48,401.401 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:20:48
[2026-08-31 06:20:49,029.029 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:20:49,343.343 INFO    ] Initializing speech engine...
[2026-08-31 06:20:49,358.358 INFO    ] 2026-08-31 06:20:49
[2026-08-31 06:20:49,635.635 INFO    ] 2026-08-31 06:20:49
[2026-08-31 06:20:49,692.692 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:20:49,984.984 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:20:49,993.993 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:20:50,167.167 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:20:50,195.195 INFO    ] time= 31/08/2026 06:20:50
[2026-08-31 06:20:50,212.212 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:20:50,222.222 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:20:50,338.338 INFO    ] No existing commands found in stream
[2026-08-31 06:20:55,362.362 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:20:55,365.365 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-08-31 06:20:57,965.965 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 06:20:57,968.968 INFO    ] Checking for system updates...
[2026-08-31 06:20:58,004.004 INFO    ] 200
[2026-08-31 06:20:58,007.007 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:20:58,060.060 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:20:58,063.063 INFO    ] No update needed
[2026-08-31 06:20:58,065.065 INFO    ] Checking for camera pi updates...
[2026-08-31 06:20:58,103.103 INFO    ] 200
[2026-08-31 06:20:58,106.106 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:20:58,153.153 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:20:58,231.231 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:20:58,233.233 INFO    ] No camera update needed
[2026-08-31 06:20:58,236.236 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:20:58,238.238 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:20:58,244.244 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:20:58,248.248 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:21:00,290.290 INFO    ] ================================================
[2026-08-31 06:21:00,306.306 INFO    ] Launching Daemon at Mon Aug 31 06:21:00 IST 2026
[2026-08-31 06:21:00,318.318 INFO    ] ================================================
[2026-08-31 06:21:00,990.990 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:21:00
[2026-08-31 06:21:01,855.855 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:21:02,216.216 INFO    ] Initializing speech engine...
[2026-08-31 06:21:02,228.228 INFO    ] 2026-08-31 06:21:02
[2026-08-31 06:21:02,524.524 INFO    ] 2026-08-31 06:21:02
[2026-08-31 06:21:02,570.570 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:21:02,834.834 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:21:02,839.839 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:21:03,062.062 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:21:03,123.123 INFO    ] time= 31/08/2026 06:21:03
[2026-08-31 06:21:03,139.139 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:21:03,161.161 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:21:03,288.288 INFO    ] No existing commands found in stream
[2026-08-31 06:21:08,309.309 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:21:08,312.312 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-08-31 06:21:10,721.721 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 06:21:10,724.724 INFO    ] Checking for system updates...
[2026-08-31 06:21:10,764.764 INFO    ] 200
[2026-08-31 06:21:10,767.767 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:21:10,827.827 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:21:10,830.830 INFO    ] No update needed
[2026-08-31 06:21:10,832.832 INFO    ] Checking for camera pi updates...
[2026-08-31 06:21:10,870.870 INFO    ] 200
[2026-08-31 06:21:10,872.872 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:21:10,918.918 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:21:11,014.014 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:21:11,017.017 INFO    ] No camera update needed
[2026-08-31 06:21:11,019.019 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:21:11,021.021 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:21:11,027.027 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:21:11,032.032 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:21:13,072.072 INFO    ] ================================================
[2026-08-31 06:21:13,088.088 INFO    ] Launching Daemon at Mon Aug 31 06:21:13 IST 2026
[2026-08-31 06:21:13,100.100 INFO    ] ================================================
[2026-08-31 06:21:13,780.780 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:21:13
[2026-08-31 06:21:14,427.427 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:21:14,700.700 INFO    ] Initializing speech engine...
[2026-08-31 06:21:14,716.716 INFO    ] 2026-08-31 06:21:14
[2026-08-31 06:21:14,992.992 INFO    ] 2026-08-31 06:21:14
[2026-08-31 06:21:15,028.028 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:21:15,284.284 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:21:15,289.289 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:21:15,489.489 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:21:15,544.544 INFO    ] time= 31/08/2026 06:21:15
[2026-08-31 06:21:15,551.551 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:21:15,569.569 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:21:15,679.679 INFO    ] No existing commands found in stream
[2026-08-31 06:21:20,708.708 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:21:20,711.711 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-08-31 06:21:24,401.401 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 06:21:24,404.404 INFO    ] Checking for system updates...
[2026-08-31 06:21:24,444.444 INFO    ] 200
[2026-08-31 06:21:24,447.447 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:21:24,499.499 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:21:24,501.501 INFO    ] No update needed
[2026-08-31 06:21:24,503.503 INFO    ] Checking for camera pi updates...
[2026-08-31 06:21:24,541.541 INFO    ] 200
[2026-08-31 06:21:24,544.544 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:21:24,585.585 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:21:24,672.672 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:21:24,674.674 INFO    ] No camera update needed
[2026-08-31 06:21:24,676.676 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:21:24,679.679 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:21:24,684.684 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:21:24,689.689 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:21:26,730.730 INFO    ] ================================================
[2026-08-31 06:21:26,745.745 INFO    ] Launching Daemon at Mon Aug 31 06:21:26 IST 2026
[2026-08-31 06:21:26,756.756 INFO    ] ================================================
[2026-08-31 06:21:27,378.378 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:21:27
[2026-08-31 06:21:27,976.976 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:21:28,250.250 INFO    ] Initializing speech engine...
[2026-08-31 06:21:28,261.261 INFO    ] 2026-08-31 06:21:28
[2026-08-31 06:21:28,520.520 INFO    ] 2026-08-31 06:21:28
[2026-08-31 06:21:28,575.575 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:21:28,830.830 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:21:28,857.857 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:21:29,025.025 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:21:29,065.065 INFO    ] time= 31/08/2026 06:21:29
[2026-08-31 06:21:29,096.096 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:21:29,114.114 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:21:29,234.234 INFO    ] No existing commands found in stream
[2026-08-31 06:21:34,257.257 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:21:34,260.260 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-08-31 06:21:36,192.192 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 06:21:36,195.195 INFO    ] Checking for system updates...
[2026-08-31 06:21:36,231.231 INFO    ] 200
[2026-08-31 06:21:36,234.234 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:21:36,294.294 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:21:36,297.297 INFO    ] No update needed
[2026-08-31 06:21:36,299.299 INFO    ] Checking for camera pi updates...
[2026-08-31 06:21:36,337.337 INFO    ] 200
[2026-08-31 06:21:36,340.340 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:21:36,381.381 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:21:36,463.463 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:21:36,466.466 INFO    ] No camera update needed
[2026-08-31 06:21:36,468.468 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:21:36,471.471 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:21:36,476.476 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:21:36,481.481 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:21:38,522.522 INFO    ] ================================================
[2026-08-31 06:21:38,537.537 INFO    ] Launching Daemon at Mon Aug 31 06:21:38 IST 2026
[2026-08-31 06:21:38,548.548 INFO    ] ================================================
[2026-08-31 06:21:39,123.123 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:21:39
[2026-08-31 06:21:39,755.755 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:21:40,069.069 INFO    ] Initializing speech engine...
[2026-08-31 06:21:40,081.081 INFO    ] 2026-08-31 06:21:40
[2026-08-31 06:21:40,397.397 INFO    ] 2026-08-31 06:21:40
[2026-08-31 06:21:40,474.474 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:21:40,666.666 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:21:40,684.684 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:21:40,884.884 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:21:40,909.909 INFO    ] time= 31/08/2026 06:21:40
[2026-08-31 06:21:40,915.915 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:21:40,933.933 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:21:41,051.051 INFO    ] No existing commands found in stream
[2026-08-31 06:21:46,074.074 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:21:46,077.077 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-08-31 06:21:48,556.556 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 06:21:48,560.560 INFO    ] Checking for system updates...
[2026-08-31 06:21:48,601.601 INFO    ] 200
[2026-08-31 06:21:48,604.604 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:21:48,669.669 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:21:48,672.672 INFO    ] No update needed
[2026-08-31 06:21:48,675.675 INFO    ] Checking for camera pi updates...
[2026-08-31 06:21:48,714.714 INFO    ] 200
[2026-08-31 06:21:48,717.717 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:21:48,763.763 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:21:48,845.845 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:21:48,847.847 INFO    ] No camera update needed
[2026-08-31 06:21:48,850.850 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:21:48,852.852 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:21:48,857.857 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:21:48,862.862 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:21:50,904.904 INFO    ] ================================================
[2026-08-31 06:21:50,920.920 INFO    ] Launching Daemon at Mon Aug 31 06:21:50 IST 2026
[2026-08-31 06:21:50,931.931 INFO    ] ================================================
[2026-08-31 06:21:51,537.537 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:21:51
[2026-08-31 06:21:52,144.144 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:21:52,390.390 INFO    ] Initializing speech engine...
[2026-08-31 06:21:52,405.405 INFO    ] 2026-08-31 06:21:52
[2026-08-31 06:21:52,668.668 INFO    ] 2026-08-31 06:21:52
[2026-08-31 06:21:52,704.704 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:21:52,997.997 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:21:53,008.008 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:21:53,160.160 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:21:53,167.167 INFO    ] time= 31/08/2026 06:21:53
[2026-08-31 06:21:53,203.203 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:21:53,252.252 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:21:53,369.369 INFO    ] No existing commands found in stream
[2026-08-31 06:21:58,380.380 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:21:58,383.383 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-08-31 06:22:01,741.741 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 06:22:01,744.744 INFO    ] Checking for system updates...
[2026-08-31 06:22:01,809.809 INFO    ] 200
[2026-08-31 06:22:01,813.813 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:22:01,914.914 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:22:01,917.917 INFO    ] No update needed
[2026-08-31 06:22:01,920.920 INFO    ] Checking for camera pi updates...
[2026-08-31 06:22:01,958.958 INFO    ] 200
[2026-08-31 06:22:01,961.961 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:22:02,011.011 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:22:02,071.071 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:22:02,074.074 INFO    ] No camera update needed
[2026-08-31 06:22:02,077.077 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:22:02,080.080 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:22:02,086.086 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:22:02,094.094 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:22:04,143.143 INFO    ] ================================================
[2026-08-31 06:22:04,158.158 INFO    ] Launching Daemon at Mon Aug 31 06:22:04 IST 2026
[2026-08-31 06:22:04,169.169 INFO    ] ================================================
[2026-08-31 06:22:04,736.736 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:22:04
[2026-08-31 06:22:05,320.320 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:22:05,569.569 INFO    ] Initializing speech engine...
[2026-08-31 06:22:05,583.583 INFO    ] 2026-08-31 06:22:05
[2026-08-31 06:22:05,850.850 INFO    ] 2026-08-31 06:22:05
[2026-08-31 06:22:05,885.885 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:22:06,084.084 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:22:06,112.112 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:22:06,303.303 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:22:06,356.356 INFO    ] time= 31/08/2026 06:22:06
[2026-08-31 06:22:06,420.420 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:22:06,463.463 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:22:06,600.600 INFO    ] No existing commands found in stream
[2026-08-31 06:22:11,630.630 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:22:11,633.633 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-08-31 06:22:13,206.206 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 06:22:13,209.209 INFO    ] Checking for system updates...
[2026-08-31 06:22:13,249.249 INFO    ] 200
[2026-08-31 06:22:13,252.252 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:22:13,311.311 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:22:13,313.313 INFO    ] No update needed
[2026-08-31 06:22:13,316.316 INFO    ] Checking for camera pi updates...
[2026-08-31 06:22:13,353.353 INFO    ] 200
[2026-08-31 06:22:13,355.355 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:22:13,396.396 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:22:13,479.479 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:22:13,481.481 INFO    ] No camera update needed
[2026-08-31 06:22:13,484.484 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:22:13,486.486 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:22:13,491.491 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:22:13,496.496 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:22:15,538.538 INFO    ] ================================================
[2026-08-31 06:22:15,553.553 INFO    ] Launching Daemon at Mon Aug 31 06:22:15 IST 2026
[2026-08-31 06:22:15,564.564 INFO    ] ================================================
[2026-08-31 06:22:16,226.226 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:22:16
[2026-08-31 06:22:16,825.825 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:22:17,085.085 INFO    ] Initializing speech engine...
[2026-08-31 06:22:17,104.104 INFO    ] 2026-08-31 06:22:17
[2026-08-31 06:22:17,358.358 INFO    ] 2026-08-31 06:22:17
[2026-08-31 06:22:17,393.393 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:22:17,597.597 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:22:17,656.656 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:22:17,800.800 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:22:17,871.871 INFO    ] time= 31/08/2026 06:22:17
[2026-08-31 06:22:17,931.931 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:22:17,936.936 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:22:17,992.992 INFO    ] No existing commands found in stream
[2026-08-31 06:22:23,004.004 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:22:23,007.007 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-08-31 06:22:26,927.927 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 06:22:26,930.930 INFO    ] Checking for system updates...
[2026-08-31 06:22:26,972.972 INFO    ] 200
[2026-08-31 06:22:26,975.975 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:22:27,044.044 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:22:27,047.047 INFO    ] No update needed
[2026-08-31 06:22:27,051.051 INFO    ] Checking for camera pi updates...
[2026-08-31 06:22:27,096.096 INFO    ] 200
[2026-08-31 06:22:27,099.099 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:22:27,153.153 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:22:27,252.252 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:22:27,255.255 INFO    ] No camera update needed
[2026-08-31 06:22:27,257.257 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:22:27,259.259 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:22:27,265.265 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:22:27,270.270 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:22:29,311.311 INFO    ] ================================================
[2026-08-31 06:22:29,326.326 INFO    ] Launching Daemon at Mon Aug 31 06:22:29 IST 2026
[2026-08-31 06:22:29,336.336 INFO    ] ================================================
[2026-08-31 06:22:29,990.990 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:22:29
[2026-08-31 06:22:30,662.662 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:22:30,988.988 INFO    ] Initializing speech engine...
[2026-08-31 06:22:31,000.000 INFO    ] 2026-08-31 06:22:30
[2026-08-31 06:22:31,312.312 INFO    ] 2026-08-31 06:22:31
[2026-08-31 06:22:31,367.367 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:22:31,610.610 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:22:31,625.625 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:22:31,787.787 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:22:31,846.846 INFO    ] time= 31/08/2026 06:22:31
[2026-08-31 06:22:31,901.901 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:22:31,947.947 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:22:32,081.081 INFO    ] No existing commands found in stream
[2026-08-31 06:22:37,108.108 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:22:37,111.111 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-08-31 06:22:39,512.512 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 06:22:39,515.515 INFO    ] Checking for system updates...
[2026-08-31 06:22:39,557.557 INFO    ] 200
[2026-08-31 06:22:39,560.560 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:22:39,615.615 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:22:39,618.618 INFO    ] No update needed
[2026-08-31 06:22:39,621.621 INFO    ] Checking for camera pi updates...
[2026-08-31 06:22:39,655.655 INFO    ] 200
[2026-08-31 06:22:39,658.658 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:22:39,705.705 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:22:39,791.791 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:22:39,794.794 INFO    ] No camera update needed
[2026-08-31 06:22:39,797.797 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:22:39,800.800 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:22:39,806.806 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:22:39,812.812 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:22:41,854.854 INFO    ] ================================================
[2026-08-31 06:22:41,869.869 INFO    ] Launching Daemon at Mon Aug 31 06:22:41 IST 2026
[2026-08-31 06:22:41,880.880 INFO    ] ================================================
[2026-08-31 06:22:42,447.447 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:22:42
[2026-08-31 06:22:43,029.029 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:22:43,278.278 INFO    ] Initializing speech engine...
[2026-08-31 06:22:43,293.293 INFO    ] 2026-08-31 06:22:43
[2026-08-31 06:22:43,558.558 INFO    ] 2026-08-31 06:22:43
[2026-08-31 06:22:43,593.593 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:22:43,794.794 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:22:43,853.853 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:22:43,996.996 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:22:44,022.022 INFO    ] time= 31/08/2026 06:22:43
[2026-08-31 06:22:44,082.082 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:22:44,132.132 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:22:44,268.268 INFO    ] No existing commands found in stream
[2026-08-31 06:22:49,293.293 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:22:49,296.296 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-08-31 06:22:51,244.244 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 06:22:51,248.248 INFO    ] Checking for system updates...
[2026-08-31 06:22:51,287.287 INFO    ] 200
[2026-08-31 06:22:51,290.290 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:22:51,350.350 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:22:51,352.352 INFO    ] No update needed
[2026-08-31 06:22:51,355.355 INFO    ] Checking for camera pi updates...
[2026-08-31 06:22:51,389.389 INFO    ] 200
[2026-08-31 06:22:51,391.391 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:22:51,434.434 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:22:51,610.610 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:22:51,612.612 INFO    ] No camera update needed
[2026-08-31 06:22:51,615.615 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:22:51,617.617 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:22:51,622.622 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:22:51,628.628 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:22:53,667.667 INFO    ] ================================================
[2026-08-31 06:22:53,682.682 INFO    ] Launching Daemon at Mon Aug 31 06:22:53 IST 2026
[2026-08-31 06:22:53,693.693 INFO    ] ================================================
[2026-08-31 06:22:54,362.362 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:22:54
[2026-08-31 06:22:55,051.051 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:22:55,367.367 INFO    ] Initializing speech engine...
[2026-08-31 06:22:55,379.379 INFO    ] 2026-08-31 06:22:55
[2026-08-31 06:22:55,671.671 INFO    ] 2026-08-31 06:22:55
[2026-08-31 06:22:55,712.712 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:22:56,001.001 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:22:56,010.010 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:22:56,204.204 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:22:56,220.220 INFO    ] time= 31/08/2026 06:22:56
[2026-08-31 06:22:56,236.236 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:22:56,246.246 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:22:56,357.357 INFO    ] No existing commands found in stream
[2026-08-31 06:23:01,387.387 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:23:01,393.393 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-08-31 06:23:04,923.923 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 06:23:04,926.926 INFO    ] Checking for system updates...
[2026-08-31 06:23:04,962.962 INFO    ] 200
[2026-08-31 06:23:04,965.965 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:23:05,019.019 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:23:05,022.022 INFO    ] No update needed
[2026-08-31 06:23:05,024.024 INFO    ] Checking for camera pi updates...
[2026-08-31 06:23:05,062.062 INFO    ] 200
[2026-08-31 06:23:05,064.064 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:23:05,105.105 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:23:05,192.192 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:23:05,194.194 INFO    ] No camera update needed
[2026-08-31 06:23:05,197.197 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:23:05,199.199 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:23:05,204.204 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:23:05,209.209 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:23:07,250.250 INFO    ] ================================================
[2026-08-31 06:23:07,265.265 INFO    ] Launching Daemon at Mon Aug 31 06:23:07 IST 2026
[2026-08-31 06:23:07,276.276 INFO    ] ================================================
[2026-08-31 06:23:07,848.848 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:23:07
[2026-08-31 06:23:08,438.438 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:23:08,687.687 INFO    ] Initializing speech engine...
[2026-08-31 06:23:08,702.702 INFO    ] 2026-08-31 06:23:08
[2026-08-31 06:23:08,971.971 INFO    ] 2026-08-31 06:23:08
[2026-08-31 06:23:09,006.006 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:23:09,265.265 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:23:09,273.273 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:23:09,410.410 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:23:09,455.455 INFO    ] time= 31/08/2026 06:23:09
[2026-08-31 06:23:09,504.504 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:23:09,548.548 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:23:09,680.680 INFO    ] No existing commands found in stream
[2026-08-31 06:23:14,700.700 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:23:14,703.703 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-08-31 06:23:15,993.993 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 06:23:15,995.995 INFO    ] Checking for system updates...
[2026-08-31 06:23:16,032.032 INFO    ] 200
[2026-08-31 06:23:16,034.034 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:23:16,086.086 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:23:16,088.088 INFO    ] No update needed
[2026-08-31 06:23:16,091.091 INFO    ] Checking for camera pi updates...
[2026-08-31 06:23:16,132.132 INFO    ] 200
[2026-08-31 06:23:16,134.134 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:23:16,199.199 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:23:16,308.308 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:23:16,310.310 INFO    ] No camera update needed
[2026-08-31 06:23:16,313.313 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:23:16,315.315 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:23:16,320.320 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:23:16,325.325 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:23:18,366.366 INFO    ] ================================================
[2026-08-31 06:23:18,382.382 INFO    ] Launching Daemon at Mon Aug 31 06:23:18 IST 2026
[2026-08-31 06:23:18,392.392 INFO    ] ================================================
[2026-08-31 06:23:18,972.972 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:23:18
[2026-08-31 06:23:19,574.574 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:23:19,834.834 INFO    ] Initializing speech engine...
[2026-08-31 06:23:19,843.843 INFO    ] 2026-08-31 06:23:19
[2026-08-31 06:23:20,144.144 INFO    ] 2026-08-31 06:23:20
[2026-08-31 06:23:20,169.169 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:23:20,395.395 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:23:20,412.412 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:23:20,564.564 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:23:20,572.572 INFO    ] time= 31/08/2026 06:23:20
[2026-08-31 06:23:20,581.581 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:23:20,608.608 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:23:20,737.737 INFO    ] No existing commands found in stream
[2026-08-31 06:23:25,762.762 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:23:25,765.765 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-08-31 06:23:29,001.001 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 06:23:29,004.004 INFO    ] Checking for system updates...
[2026-08-31 06:23:29,039.039 INFO    ] 200
[2026-08-31 06:23:29,041.041 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:23:29,095.095 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:23:29,097.097 INFO    ] No update needed
[2026-08-31 06:23:29,100.100 INFO    ] Checking for camera pi updates...
[2026-08-31 06:23:29,134.134 INFO    ] 200
[2026-08-31 06:23:29,137.137 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:23:29,187.187 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:23:29,267.267 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:23:29,270.270 INFO    ] No camera update needed
[2026-08-31 06:23:29,272.272 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:23:29,274.274 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:23:29,280.280 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:23:29,285.285 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:23:31,326.326 INFO    ] ================================================
[2026-08-31 06:23:31,341.341 INFO    ] Launching Daemon at Mon Aug 31 06:23:31 IST 2026
[2026-08-31 06:23:31,353.353 INFO    ] ================================================
[2026-08-31 06:23:31,977.977 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:23:31
[2026-08-31 06:23:32,609.609 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:23:32,892.892 INFO    ] Initializing speech engine...
[2026-08-31 06:23:32,901.901 INFO    ] 2026-08-31 06:23:32
[2026-08-31 06:23:33,202.202 INFO    ] 2026-08-31 06:23:33
[2026-08-31 06:23:33,240.240 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:23:33,440.440 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:23:33,453.453 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:23:33,604.604 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:23:33,623.623 INFO    ] time= 31/08/2026 06:23:33
[2026-08-31 06:23:33,630.630 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:23:33,636.636 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:23:33,710.710 INFO    ] No existing commands found in stream
[2026-08-31 06:23:38,720.720 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:23:38,723.723 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-08-31 06:23:40,658.658 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 06:23:40,661.661 INFO    ] Checking for system updates...
[2026-08-31 06:23:40,697.697 INFO    ] 200
[2026-08-31 06:23:40,700.700 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:23:40,759.759 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:23:40,761.761 INFO    ] No update needed
[2026-08-31 06:23:40,763.763 INFO    ] Checking for camera pi updates...
[2026-08-31 06:23:40,797.797 INFO    ] 200
[2026-08-31 06:23:40,799.799 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:23:40,840.840 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:23:40,923.923 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:23:40,926.926 INFO    ] No camera update needed
[2026-08-31 06:23:40,929.929 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:23:40,932.932 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:23:40,938.938 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:23:40,944.944 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:23:42,986.986 INFO    ] ================================================
[2026-08-31 06:23:43,002.002 INFO    ] Launching Daemon at Mon Aug 31 06:23:42 IST 2026
[2026-08-31 06:23:43,013.013 INFO    ] ================================================
[2026-08-31 06:23:43,590.590 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:23:43
[2026-08-31 06:23:44,186.186 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:23:44,444.444 INFO    ] Initializing speech engine...
[2026-08-31 06:23:44,451.451 INFO    ] 2026-08-31 06:23:44
[2026-08-31 06:23:44,751.751 INFO    ] 2026-08-31 06:23:44
[2026-08-31 06:23:44,785.785 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:23:44,983.983 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:23:44,990.990 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:23:45,161.161 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:23:45,169.169 INFO    ] time= 31/08/2026 06:23:45
[2026-08-31 06:23:45,175.175 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:23:45,183.183 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:23:45,257.257 INFO    ] No existing commands found in stream
[2026-08-31 06:23:50,288.288 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:23:50,290.290 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-08-31 06:23:52,284.284 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 06:23:52,286.286 INFO    ] Checking for system updates...
[2026-08-31 06:23:52,322.322 INFO    ] 200
[2026-08-31 06:23:52,325.325 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:23:52,383.383 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:23:52,385.385 INFO    ] No update needed
[2026-08-31 06:23:52,388.388 INFO    ] Checking for camera pi updates...
[2026-08-31 06:23:52,425.425 INFO    ] 200
[2026-08-31 06:23:52,428.428 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:23:52,473.473 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:23:52,554.554 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:23:52,556.556 INFO    ] No camera update needed
[2026-08-31 06:23:52,559.559 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:23:52,561.561 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:23:52,567.567 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:23:52,572.572 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:23:54,614.614 INFO    ] ================================================
[2026-08-31 06:23:54,632.632 INFO    ] Launching Daemon at Mon Aug 31 06:23:54 IST 2026
[2026-08-31 06:23:54,643.643 INFO    ] ================================================
[2026-08-31 06:23:55,223.223 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:23:55
[2026-08-31 06:23:55,821.821 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:23:56,081.081 INFO    ] Initializing speech engine...
[2026-08-31 06:23:56,087.087 INFO    ] 2026-08-31 06:23:56
[2026-08-31 06:23:56,392.392 INFO    ] 2026-08-31 06:23:56
[2026-08-31 06:23:56,427.427 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:23:56,633.633 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:23:56,648.648 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:23:56,810.810 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:23:56,822.822 INFO    ] time= 31/08/2026 06:23:56
[2026-08-31 06:23:56,832.832 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:23:56,853.853 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:23:56,948.948 INFO    ] No existing commands found in stream
[2026-08-31 06:24:01,970.970 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:24:01,974.974 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-08-31 06:24:02,938.938 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 06:24:02,941.941 INFO    ] Checking for system updates...
[2026-08-31 06:24:02,984.984 INFO    ] 200
[2026-08-31 06:24:02,987.987 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:24:03,045.045 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:24:03,048.048 INFO    ] No update needed
[2026-08-31 06:24:03,051.051 INFO    ] Checking for camera pi updates...
[2026-08-31 06:24:03,096.096 INFO    ] 200
[2026-08-31 06:24:03,099.099 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:24:03,145.145 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:24:03,230.230 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:24:03,232.232 INFO    ] No camera update needed
[2026-08-31 06:24:03,234.234 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:24:03,237.237 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:24:03,242.242 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:24:03,247.247 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:24:05,287.287 INFO    ] ================================================
[2026-08-31 06:24:05,302.302 INFO    ] Launching Daemon at Mon Aug 31 06:24:05 IST 2026
[2026-08-31 06:24:05,314.314 INFO    ] ================================================
[2026-08-31 06:24:05,879.879 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:24:05
[2026-08-31 06:24:06,485.485 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:24:06,738.738 INFO    ] Initializing speech engine...
[2026-08-31 06:24:06,747.747 INFO    ] 2026-08-31 06:24:06
[2026-08-31 06:24:07,041.041 INFO    ] 2026-08-31 06:24:07
[2026-08-31 06:24:07,079.079 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:24:07,276.276 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:24:07,289.289 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:24:07,450.450 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:24:07,460.460 INFO    ] time= 31/08/2026 06:24:07
[2026-08-31 06:24:07,467.467 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:24:07,473.473 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:24:07,546.546 INFO    ] No existing commands found in stream
[2026-08-31 06:24:12,576.576 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:24:12,579.579 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-08-31 06:24:13,411.411 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 06:24:13,414.414 INFO    ] Checking for system updates...
[2026-08-31 06:24:13,453.453 INFO    ] 200
[2026-08-31 06:24:13,455.455 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:24:13,508.508 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:24:13,511.511 INFO    ] No update needed
[2026-08-31 06:24:13,513.513 INFO    ] Checking for camera pi updates...
[2026-08-31 06:24:13,547.547 INFO    ] 200
[2026-08-31 06:24:13,549.549 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:24:13,594.594 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:24:13,677.677 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:24:13,679.679 INFO    ] No camera update needed
[2026-08-31 06:24:13,682.682 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:24:13,684.684 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:24:13,689.689 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:24:13,694.694 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:24:15,738.738 INFO    ] ================================================
[2026-08-31 06:24:15,754.754 INFO    ] Launching Daemon at Mon Aug 31 06:24:15 IST 2026
[2026-08-31 06:24:15,765.765 INFO    ] ================================================
[2026-08-31 06:24:16,344.344 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:24:16
[2026-08-31 06:24:16,941.941 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:24:17,215.215 INFO    ] Initializing speech engine...
[2026-08-31 06:24:17,224.224 INFO    ] 2026-08-31 06:24:17
[2026-08-31 06:24:17,473.473 INFO    ] 2026-08-31 06:24:17
[2026-08-31 06:24:17,508.508 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:24:17,759.759 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:24:17,768.768 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:24:17,945.945 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:24:18,010.010 INFO    ] time= 31/08/2026 06:24:17
[2026-08-31 06:24:18,034.034 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:24:18,049.049 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:24:18,178.178 INFO    ] No existing commands found in stream
[2026-08-31 06:24:23,195.195 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:24:23,198.198 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-08-31 06:24:26,092.092 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 06:24:26,095.095 INFO    ] Checking for system updates...
[2026-08-31 06:24:26,134.134 INFO    ] 200
[2026-08-31 06:24:26,137.137 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:24:26,192.192 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:24:26,194.194 INFO    ] No update needed
[2026-08-31 06:24:26,196.196 INFO    ] Checking for camera pi updates...
[2026-08-31 06:24:26,230.230 INFO    ] 200
[2026-08-31 06:24:26,233.233 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:24:26,275.275 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:24:26,361.361 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:24:26,363.363 INFO    ] No camera update needed
[2026-08-31 06:24:26,365.365 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:24:26,368.368 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:24:26,374.374 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:24:26,379.379 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:24:28,422.422 INFO    ] ================================================
[2026-08-31 06:24:28,437.437 INFO    ] Launching Daemon at Mon Aug 31 06:24:28 IST 2026
[2026-08-31 06:24:28,448.448 INFO    ] ================================================
[2026-08-31 06:24:29,104.104 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:24:29
[2026-08-31 06:24:29,773.773 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:24:30,079.079 INFO    ] Initializing speech engine...
[2026-08-31 06:24:30,093.093 INFO    ] 2026-08-31 06:24:30
[2026-08-31 06:24:30,407.407 INFO    ] 2026-08-31 06:24:30
[2026-08-31 06:24:30,496.496 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:24:30,717.717 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:24:30,725.725 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:24:30,922.922 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:24:30,942.942 INFO    ] time= 31/08/2026 06:24:30
[2026-08-31 06:24:30,971.971 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:24:30,979.979 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:24:31,085.085 INFO    ] No existing commands found in stream
[2026-08-31 06:24:36,110.110 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:24:36,113.113 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-08-31 06:24:40,531.531 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 06:24:40,534.534 INFO    ] Checking for system updates...
[2026-08-31 06:24:40,575.575 INFO    ] 200
[2026-08-31 06:24:40,578.578 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:24:40,632.632 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:24:40,635.635 INFO    ] No update needed
[2026-08-31 06:24:40,638.638 INFO    ] Checking for camera pi updates...
[2026-08-31 06:24:40,678.678 INFO    ] 200
[2026-08-31 06:24:40,680.680 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:24:40,727.727 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:24:40,835.835 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:24:40,838.838 INFO    ] No camera update needed
[2026-08-31 06:24:40,841.841 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:24:40,843.843 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:24:40,850.850 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:24:40,855.855 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:24:42,897.897 INFO    ] ================================================
[2026-08-31 06:24:42,913.913 INFO    ] Launching Daemon at Mon Aug 31 06:24:42 IST 2026
[2026-08-31 06:24:42,924.924 INFO    ] ================================================
[2026-08-31 06:24:43,564.564 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:24:43
[2026-08-31 06:24:44,244.244 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:24:44,553.553 INFO    ] Initializing speech engine...
[2026-08-31 06:24:44,565.565 INFO    ] 2026-08-31 06:24:44
[2026-08-31 06:24:44,841.841 INFO    ] 2026-08-31 06:24:44
[2026-08-31 06:24:44,900.900 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:24:45,153.153 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:24:45,160.160 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:24:45,365.365 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:24:45,401.401 INFO    ] time= 31/08/2026 06:24:45
[2026-08-31 06:24:45,419.419 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:24:45,451.451 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:24:45,554.554 INFO    ] No existing commands found in stream
[2026-08-31 06:24:50,573.573 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:24:50,576.576 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-08-31 06:24:51,323.323 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 06:24:51,326.326 INFO    ] Checking for system updates...
[2026-08-31 06:24:51,368.368 INFO    ] 200
[2026-08-31 06:24:51,371.371 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:24:51,428.428 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:24:51,431.431 INFO    ] No update needed
[2026-08-31 06:24:51,434.434 INFO    ] Checking for camera pi updates...
[2026-08-31 06:24:51,473.473 INFO    ] 200
[2026-08-31 06:24:51,476.476 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:24:51,524.524 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:24:51,609.609 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:24:51,612.612 INFO    ] No camera update needed
[2026-08-31 06:24:51,614.614 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:24:51,617.617 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:24:51,624.624 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:24:51,630.630 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:24:53,671.671 INFO    ] ================================================
[2026-08-31 06:24:53,686.686 INFO    ] Launching Daemon at Mon Aug 31 06:24:53 IST 2026
[2026-08-31 06:24:53,697.697 INFO    ] ================================================
[2026-08-31 06:24:54,302.302 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:24:54
[2026-08-31 06:24:54,901.901 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:24:55,166.166 INFO    ] Initializing speech engine...
[2026-08-31 06:24:55,183.183 INFO    ] 2026-08-31 06:24:55
[2026-08-31 06:24:55,475.475 INFO    ] 2026-08-31 06:24:55
[2026-08-31 06:24:55,500.500 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:24:55,724.724 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:24:55,739.739 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:24:55,911.911 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:24:55,915.915 INFO    ] time= 31/08/2026 06:24:55
[2026-08-31 06:24:55,922.922 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:24:55,950.950 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:24:56,084.084 INFO    ] No existing commands found in stream
[2026-08-31 06:25:01,120.120 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:25:01,122.122 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-08-31 06:25:02,962.962 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 06:25:02,970.970 INFO    ] Checking for system updates...
[2026-08-31 06:25:03,025.025 INFO    ] 200
[2026-08-31 06:25:03,029.029 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:25:03,112.112 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:25:03,115.115 INFO    ] No update needed
[2026-08-31 06:25:03,118.118 INFO    ] Checking for camera pi updates...
[2026-08-31 06:25:03,164.164 INFO    ] 200
[2026-08-31 06:25:03,168.168 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:25:03,225.225 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:25:03,484.484 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:25:03,487.487 INFO    ] No camera update needed
[2026-08-31 06:25:03,490.490 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:25:03,492.492 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:25:03,498.498 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:25:03,504.504 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:25:05,545.545 INFO    ] ================================================
[2026-08-31 06:25:05,561.561 INFO    ] Launching Daemon at Mon Aug 31 06:25:05 IST 2026
[2026-08-31 06:25:05,572.572 INFO    ] ================================================
[2026-08-31 06:25:06,153.153 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:25:06
[2026-08-31 06:25:06,762.762 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:25:07,015.015 INFO    ] Initializing speech engine...
[2026-08-31 06:25:07,021.021 INFO    ] 2026-08-31 06:25:07
[2026-08-31 06:25:07,319.319 INFO    ] 2026-08-31 06:25:07
[2026-08-31 06:25:07,357.357 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:25:07,565.565 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:25:07,583.583 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:25:07,804.804 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:25:07,815.815 INFO    ] time= 31/08/2026 06:25:07
[2026-08-31 06:25:07,833.833 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:25:07,903.903 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:25:08,010.010 INFO    ] No existing commands found in stream
[2026-08-31 06:25:13,030.030 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:25:13,038.038 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-08-31 06:25:13,843.843 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 06:25:13,846.846 INFO    ] Checking for system updates...
[2026-08-31 06:25:13,905.905 INFO    ] 200
[2026-08-31 06:25:13,908.908 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:25:13,960.960 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:25:13,962.962 INFO    ] No update needed
[2026-08-31 06:25:13,964.964 INFO    ] Checking for camera pi updates...
[2026-08-31 06:25:14,001.001 INFO    ] 200
[2026-08-31 06:25:14,003.003 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:25:14,043.043 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:25:14,128.128 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:25:14,130.130 INFO    ] No camera update needed
[2026-08-31 06:25:14,133.133 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:25:14,136.136 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:25:14,142.142 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:25:14,147.147 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:25:16,187.187 INFO    ] ================================================
[2026-08-31 06:25:16,203.203 INFO    ] Launching Daemon at Mon Aug 31 06:25:16 IST 2026
[2026-08-31 06:25:16,214.214 INFO    ] ================================================
[2026-08-31 06:25:16,783.783 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:25:16
[2026-08-31 06:25:17,368.368 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:25:17,627.627 INFO    ] Initializing speech engine...
[2026-08-31 06:25:17,638.638 INFO    ] 2026-08-31 06:25:17
[2026-08-31 06:25:17,924.924 INFO    ] 2026-08-31 06:25:17
[2026-08-31 06:25:17,960.960 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:25:18,158.158 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:25:18,188.188 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:25:18,328.328 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:25:18,340.340 INFO    ] time= 31/08/2026 06:25:18
[2026-08-31 06:25:18,349.349 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:25:18,356.356 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:25:18,435.435 INFO    ] No existing commands found in stream
[2026-08-31 06:25:23,470.470 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:25:23,473.473 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-08-31 06:25:26,971.971 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 06:25:26,974.974 INFO    ] Checking for system updates...
[2026-08-31 06:25:27,009.009 INFO    ] 200
[2026-08-31 06:25:27,012.012 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:25:27,063.063 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:25:27,066.066 INFO    ] No update needed
[2026-08-31 06:25:27,069.069 INFO    ] Checking for camera pi updates...
[2026-08-31 06:25:27,102.102 INFO    ] 200
[2026-08-31 06:25:27,104.104 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:25:27,145.145 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:25:27,239.239 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:25:27,241.241 INFO    ] No camera update needed
[2026-08-31 06:25:27,243.243 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:25:27,245.245 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:25:27,251.251 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:25:27,256.256 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:25:29,295.295 INFO    ] ================================================
[2026-08-31 06:25:29,312.312 INFO    ] Launching Daemon at Mon Aug 31 06:25:29 IST 2026
[2026-08-31 06:25:29,322.322 INFO    ] ================================================
[2026-08-31 06:25:29,893.893 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:25:29
[2026-08-31 06:25:30,500.500 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:25:30,752.752 INFO    ] Initializing speech engine...
[2026-08-31 06:25:30,760.760 INFO    ] 2026-08-31 06:25:30
[2026-08-31 06:25:31,056.056 INFO    ] 2026-08-31 06:25:31
[2026-08-31 06:25:31,081.081 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:25:31,292.292 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:25:31,306.306 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:25:31,489.489 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:25:31,499.499 INFO    ] time= 31/08/2026 06:25:31
[2026-08-31 06:25:31,506.506 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:25:31,512.512 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:25:31,642.642 INFO    ] No existing commands found in stream
[2026-08-31 06:25:36,663.663 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:25:36,665.665 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-08-31 06:25:38,411.411 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 06:25:38,413.413 INFO    ] Checking for system updates...
[2026-08-31 06:25:38,449.449 INFO    ] 200
[2026-08-31 06:25:38,452.452 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:25:38,504.504 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:25:38,506.506 INFO    ] No update needed
[2026-08-31 06:25:38,509.509 INFO    ] Checking for camera pi updates...
[2026-08-31 06:25:38,542.542 INFO    ] 200
[2026-08-31 06:25:38,545.545 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:25:38,584.584 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:25:38,667.667 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:25:38,670.670 INFO    ] No camera update needed
[2026-08-31 06:25:38,672.672 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:25:38,674.674 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:25:38,679.679 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:25:38,684.684 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:25:40,725.725 INFO    ] ================================================
[2026-08-31 06:25:40,740.740 INFO    ] Launching Daemon at Mon Aug 31 06:25:40 IST 2026
[2026-08-31 06:25:40,751.751 INFO    ] ================================================
[2026-08-31 06:25:41,336.336 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:25:41
[2026-08-31 06:25:41,930.930 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:25:42,209.209 INFO    ] Initializing speech engine...
[2026-08-31 06:25:42,215.215 INFO    ] 2026-08-31 06:25:42
[2026-08-31 06:25:42,462.462 INFO    ] 2026-08-31 06:25:42
[2026-08-31 06:25:42,498.498 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:25:42,678.678 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:25:42,703.703 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:25:42,887.887 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:25:42,901.901 INFO    ] time= 31/08/2026 06:25:42
[2026-08-31 06:25:42,950.950 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:25:43,015.015 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:25:43,075.075 INFO    ] No existing commands found in stream
[2026-08-31 06:25:48,087.087 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:25:48,090.090 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-08-31 06:25:51,872.872 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 06:25:51,874.874 INFO    ] Checking for system updates...
[2026-08-31 06:25:51,911.911 INFO    ] 200
[2026-08-31 06:25:51,913.913 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:25:51,965.965 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:25:51,968.968 INFO    ] No update needed
[2026-08-31 06:25:51,970.970 INFO    ] Checking for camera pi updates...
[2026-08-31 06:25:52,004.004 INFO    ] 200
[2026-08-31 06:25:52,007.007 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:25:52,060.060 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:25:52,132.132 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:25:52,135.135 INFO    ] No camera update needed
[2026-08-31 06:25:52,137.137 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:25:52,140.140 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:25:52,145.145 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:25:52,150.150 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:25:54,190.190 INFO    ] ================================================
[2026-08-31 06:25:54,205.205 INFO    ] Launching Daemon at Mon Aug 31 06:25:54 IST 2026
[2026-08-31 06:25:54,216.216 INFO    ] ================================================
[2026-08-31 06:25:54,785.785 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:25:54
[2026-08-31 06:25:55,368.368 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:25:55,638.638 INFO    ] Initializing speech engine...
[2026-08-31 06:25:55,648.648 INFO    ] 2026-08-31 06:25:55
[2026-08-31 06:25:55,899.899 INFO    ] 2026-08-31 06:25:55
[2026-08-31 06:25:55,934.934 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:25:56,190.190 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:25:56,198.198 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:25:56,334.334 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:25:56,382.382 INFO    ] time= 31/08/2026 06:25:56
[2026-08-31 06:25:56,436.436 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:25:56,472.472 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:25:56,585.585 INFO    ] No existing commands found in stream
[2026-08-31 06:26:01,613.613 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:26:01,618.618 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-08-31 06:26:05,522.522 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 06:26:05,524.524 INFO    ] Checking for system updates...
[2026-08-31 06:26:05,559.559 INFO    ] 200
[2026-08-31 06:26:05,562.562 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:26:05,620.620 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:26:05,623.623 INFO    ] No update needed
[2026-08-31 06:26:05,625.625 INFO    ] Checking for camera pi updates...
[2026-08-31 06:26:05,658.658 INFO    ] 200
[2026-08-31 06:26:05,660.660 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:26:05,705.705 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:26:05,785.785 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:26:05,788.788 INFO    ] No camera update needed
[2026-08-31 06:26:05,790.790 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:26:05,792.792 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:26:05,798.798 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:26:05,803.803 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:26:07,842.842 INFO    ] ================================================
[2026-08-31 06:26:07,858.858 INFO    ] Launching Daemon at Mon Aug 31 06:26:07 IST 2026
[2026-08-31 06:26:07,869.869 INFO    ] ================================================
[2026-08-31 06:26:08,444.444 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:26:08
[2026-08-31 06:26:09,032.032 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:26:09,308.308 INFO    ] Initializing speech engine...
[2026-08-31 06:26:09,326.326 INFO    ] 2026-08-31 06:26:09
[2026-08-31 06:26:09,608.608 INFO    ] 2026-08-31 06:26:09
[2026-08-31 06:26:09,666.666 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:26:09,904.904 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:26:09,909.909 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:26:10,045.045 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:26:10,108.108 INFO    ] time= 31/08/2026 06:26:10
[2026-08-31 06:26:10,182.182 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:26:10,199.199 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:26:10,330.330 INFO    ] No existing commands found in stream
[2026-08-31 06:26:15,349.349 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:26:15,352.352 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-08-31 06:26:19,235.235 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 06:26:19,238.238 INFO    ] Checking for system updates...
[2026-08-31 06:26:19,274.274 INFO    ] 200
[2026-08-31 06:26:19,277.277 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:26:19,333.333 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:26:19,336.336 INFO    ] No update needed
[2026-08-31 06:26:19,339.339 INFO    ] Checking for camera pi updates...
[2026-08-31 06:26:19,373.373 INFO    ] 200
[2026-08-31 06:26:19,376.376 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:26:19,422.422 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:26:19,517.517 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:26:19,520.520 INFO    ] No camera update needed
[2026-08-31 06:26:19,523.523 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:26:19,525.525 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:26:19,532.532 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:26:19,538.538 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:26:21,578.578 INFO    ] ================================================
[2026-08-31 06:26:21,594.594 INFO    ] Launching Daemon at Mon Aug 31 06:26:21 IST 2026
[2026-08-31 06:26:21,605.605 INFO    ] ================================================
[2026-08-31 06:26:22,201.201 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:26:22
[2026-08-31 06:26:22,799.799 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:26:23,055.055 INFO    ] Initializing speech engine...
[2026-08-31 06:26:23,063.063 INFO    ] 2026-08-31 06:26:23
[2026-08-31 06:26:23,364.364 INFO    ] 2026-08-31 06:26:23
[2026-08-31 06:26:23,400.400 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:26:23,595.595 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:26:23,639.639 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:26:23,797.797 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:26:23,819.819 INFO    ] time= 31/08/2026 06:26:23
[2026-08-31 06:26:23,893.893 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:26:23,933.933 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:26:23,986.986 INFO    ] No existing commands found in stream
[2026-08-31 06:26:28,998.998 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:26:29,001.001 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-08-31 06:26:31,216.216 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 06:26:31,219.219 INFO    ] Checking for system updates...
[2026-08-31 06:26:31,255.255 INFO    ] 200
[2026-08-31 06:26:31,258.258 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:26:31,318.318 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:26:31,321.321 INFO    ] No update needed
[2026-08-31 06:26:31,324.324 INFO    ] Checking for camera pi updates...
[2026-08-31 06:26:31,361.361 INFO    ] 200
[2026-08-31 06:26:31,364.364 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:26:31,405.405 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:26:31,480.480 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:26:31,483.483 INFO    ] No camera update needed
[2026-08-31 06:26:31,485.485 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:26:31,488.488 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:26:31,494.494 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:26:31,500.500 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:26:33,541.541 INFO    ] ================================================
[2026-08-31 06:26:33,558.558 INFO    ] Launching Daemon at Mon Aug 31 06:26:33 IST 2026
[2026-08-31 06:26:33,568.568 INFO    ] ================================================
[2026-08-31 06:26:34,138.138 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:26:34
[2026-08-31 06:26:34,799.799 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:26:35,104.104 INFO    ] Initializing speech engine...
[2026-08-31 06:26:35,114.114 INFO    ] 2026-08-31 06:26:35
[2026-08-31 06:26:35,386.386 INFO    ] 2026-08-31 06:26:35
[2026-08-31 06:26:35,420.420 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:26:35,671.671 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:26:35,680.680 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:26:35,814.814 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:26:35,857.857 INFO    ] time= 31/08/2026 06:26:35
[2026-08-31 06:26:35,912.912 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:26:35,951.951 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:26:36,077.077 INFO    ] No existing commands found in stream
[2026-08-31 06:26:41,111.111 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:26:41,114.114 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-08-31 06:26:43,849.849 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 06:26:43,851.851 INFO    ] Checking for system updates...
[2026-08-31 06:26:43,888.888 INFO    ] 200
[2026-08-31 06:26:43,891.891 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:26:43,944.944 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:26:43,946.946 INFO    ] No update needed
[2026-08-31 06:26:43,949.949 INFO    ] Checking for camera pi updates...
[2026-08-31 06:26:43,988.988 INFO    ] 200
[2026-08-31 06:26:43,990.990 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:26:44,035.035 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:26:44,119.119 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:26:44,122.122 INFO    ] No camera update needed
[2026-08-31 06:26:44,124.124 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:26:44,127.127 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:26:44,133.133 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:26:44,139.139 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:26:46,179.179 INFO    ] ================================================
[2026-08-31 06:26:46,194.194 INFO    ] Launching Daemon at Mon Aug 31 06:26:46 IST 2026
[2026-08-31 06:26:46,204.204 INFO    ] ================================================
[2026-08-31 06:26:46,771.771 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:26:46
[2026-08-31 06:26:47,354.354 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:26:47,602.602 INFO    ] Initializing speech engine...
[2026-08-31 06:26:47,617.617 INFO    ] 2026-08-31 06:26:47
[2026-08-31 06:26:47,883.883 INFO    ] 2026-08-31 06:26:47
[2026-08-31 06:26:47,918.918 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:26:48,175.175 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:26:48,185.185 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:26:48,407.407 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:26:48,448.448 INFO    ] time= 31/08/2026 06:26:48
[2026-08-31 06:26:48,454.454 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:26:48,470.470 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:26:48,600.600 INFO    ] No existing commands found in stream
[2026-08-31 06:26:53,618.618 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:26:53,621.621 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-08-31 06:26:57,730.730 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 06:26:57,733.733 INFO    ] Checking for system updates...
[2026-08-31 06:26:57,769.769 INFO    ] 200
[2026-08-31 06:26:57,771.771 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:26:57,824.824 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:26:57,826.826 INFO    ] No update needed
[2026-08-31 06:26:57,829.829 INFO    ] Checking for camera pi updates...
[2026-08-31 06:26:57,863.863 INFO    ] 200
[2026-08-31 06:26:57,865.865 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:26:57,905.905 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:26:57,963.963 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:26:57,965.965 INFO    ] No camera update needed
[2026-08-31 06:26:57,968.968 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:26:57,970.970 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:26:57,975.975 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:26:57,981.981 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:27:00,023.023 INFO    ] ================================================
[2026-08-31 06:27:00,038.038 INFO    ] Launching Daemon at Mon Aug 31 06:27:00 IST 2026
[2026-08-31 06:27:00,048.048 INFO    ] ================================================
[2026-08-31 06:27:00,634.634 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:27:00
[2026-08-31 06:27:01,234.234 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:27:01,723.723 INFO    ] Initializing speech engine...
[2026-08-31 06:27:01,727.727 INFO    ] 2026-08-31 06:27:01
[2026-08-31 06:27:02,129.129 INFO    ] 2026-08-31 06:27:02
[2026-08-31 06:27:02,193.193 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:27:02,375.375 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:27:02,385.385 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:27:02,559.559 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:27:02,594.594 INFO    ] time= 31/08/2026 06:27:02
[2026-08-31 06:27:02,618.618 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:27:02,620.620 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:27:02,757.757 INFO    ] No existing commands found in stream
[2026-08-31 06:27:07,785.785 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:27:07,788.788 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-08-31 06:27:11,652.652 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 06:27:11,655.655 INFO    ] Checking for system updates...
[2026-08-31 06:27:11,691.691 INFO    ] 200
[2026-08-31 06:27:11,693.693 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:27:11,745.745 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:27:11,747.747 INFO    ] No update needed
[2026-08-31 06:27:11,750.750 INFO    ] Checking for camera pi updates...
[2026-08-31 06:27:11,784.784 INFO    ] 200
[2026-08-31 06:27:11,787.787 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:27:11,832.832 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:27:12,011.011 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:27:12,014.014 INFO    ] No camera update needed
[2026-08-31 06:27:12,016.016 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:27:12,019.019 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:27:12,024.024 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:27:12,029.029 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:27:14,069.069 INFO    ] ================================================
[2026-08-31 06:27:14,085.085 INFO    ] Launching Daemon at Mon Aug 31 06:27:14 IST 2026
[2026-08-31 06:27:14,097.097 INFO    ] ================================================
[2026-08-31 06:27:14,674.674 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:27:14
[2026-08-31 06:27:15,272.272 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:27:15,551.551 INFO    ] Initializing speech engine...
[2026-08-31 06:27:15,558.558 INFO    ] 2026-08-31 06:27:15
[2026-08-31 06:27:15,818.818 INFO    ] 2026-08-31 06:27:15
[2026-08-31 06:27:15,849.849 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:27:16,099.099 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:27:16,105.105 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:27:16,323.323 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:27:16,362.362 INFO    ] time= 31/08/2026 06:27:16
[2026-08-31 06:27:16,380.380 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:27:16,389.389 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:27:16,517.517 INFO    ] No existing commands found in stream
[2026-08-31 06:27:21,532.532 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:27:21,535.535 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-08-31 06:27:22,086.086 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 06:27:22,089.089 INFO    ] Checking for system updates...
[2026-08-31 06:27:22,124.124 INFO    ] 200
[2026-08-31 06:27:22,126.126 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:27:22,184.184 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:27:22,187.187 INFO    ] No update needed
[2026-08-31 06:27:22,189.189 INFO    ] Checking for camera pi updates...
[2026-08-31 06:27:22,222.222 INFO    ] 200
[2026-08-31 06:27:22,225.225 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:27:22,270.270 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:27:22,369.369 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:27:22,371.371 INFO    ] No camera update needed
[2026-08-31 06:27:22,373.373 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:27:22,376.376 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:27:22,381.381 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:27:22,386.386 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:27:24,427.427 INFO    ] ================================================
[2026-08-31 06:27:24,442.442 INFO    ] Launching Daemon at Mon Aug 31 06:27:24 IST 2026
[2026-08-31 06:27:24,454.454 INFO    ] ================================================
[2026-08-31 06:27:25,026.026 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:27:25
[2026-08-31 06:27:25,619.619 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:27:25,874.874 INFO    ] Initializing speech engine...
[2026-08-31 06:27:25,895.895 INFO    ] 2026-08-31 06:27:25
[2026-08-31 06:27:26,156.156 INFO    ] 2026-08-31 06:27:26
[2026-08-31 06:27:26,191.191 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:27:26,393.393 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:27:26,452.452 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:27:26,593.593 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:27:26,636.636 INFO    ] time= 31/08/2026 06:27:26
[2026-08-31 06:27:26,700.700 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:27:26,731.731 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:27:26,822.822 INFO    ] No existing commands found in stream
[2026-08-31 06:27:31,854.854 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:27:31,857.857 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-08-31 06:27:35,409.409 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 06:27:35,412.412 INFO    ] Checking for system updates...
[2026-08-31 06:27:35,451.451 INFO    ] 200
[2026-08-31 06:27:35,453.453 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:27:35,507.507 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:27:35,510.510 INFO    ] No update needed
[2026-08-31 06:27:35,512.512 INFO    ] Checking for camera pi updates...
[2026-08-31 06:27:35,545.545 INFO    ] 200
[2026-08-31 06:27:35,619.619 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:27:35,668.668 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:27:35,749.749 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:27:35,751.751 INFO    ] No camera update needed
[2026-08-31 06:27:35,753.753 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:27:35,756.756 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:27:35,761.761 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:27:35,766.766 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:27:37,808.808 INFO    ] ================================================
[2026-08-31 06:27:37,824.824 INFO    ] Launching Daemon at Mon Aug 31 06:27:37 IST 2026
[2026-08-31 06:27:37,835.835 INFO    ] ================================================
[2026-08-31 06:27:38,415.415 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:27:38
[2026-08-31 06:27:39,010.010 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:27:39,273.273 INFO    ] Initializing speech engine...
[2026-08-31 06:27:39,288.288 INFO    ] 2026-08-31 06:27:39
[2026-08-31 06:27:39,542.542 INFO    ] 2026-08-31 06:27:39
[2026-08-31 06:27:39,577.577 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:27:39,771.771 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:27:39,811.811 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:27:39,974.974 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:27:40,036.036 INFO    ] time= 31/08/2026 06:27:39
[2026-08-31 06:27:40,090.090 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:27:40,106.106 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:27:40,239.239 INFO    ] No existing commands found in stream
[2026-08-31 06:27:45,264.264 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:27:45,266.266 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-08-31 06:27:46,736.736 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 06:27:46,739.739 INFO    ] Checking for system updates...
[2026-08-31 06:27:46,774.774 INFO    ] 200
[2026-08-31 06:27:46,777.777 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:27:46,829.829 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:27:46,831.831 INFO    ] No update needed
[2026-08-31 06:27:46,834.834 INFO    ] Checking for camera pi updates...
[2026-08-31 06:27:46,871.871 INFO    ] 200
[2026-08-31 06:27:46,874.874 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:27:46,914.914 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:27:46,993.993 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:27:46,996.996 INFO    ] No camera update needed
[2026-08-31 06:27:46,998.998 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:27:47,000.000 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:27:47,005.005 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:27:47,010.010 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:27:49,053.053 INFO    ] ================================================
[2026-08-31 06:27:49,070.070 INFO    ] Launching Daemon at Mon Aug 31 06:27:49 IST 2026
[2026-08-31 06:27:49,080.080 INFO    ] ================================================
[2026-08-31 06:27:49,662.662 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:27:49
[2026-08-31 06:27:50,260.260 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:27:50,525.525 INFO    ] Initializing speech engine...
[2026-08-31 06:27:50,546.546 INFO    ] 2026-08-31 06:27:50
[2026-08-31 06:27:50,824.824 INFO    ] 2026-08-31 06:27:50
[2026-08-31 06:27:50,861.861 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:27:51,113.113 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:27:51,125.125 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:27:51,275.275 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:27:51,317.317 INFO    ] time= 31/08/2026 06:27:51
[2026-08-31 06:27:51,382.382 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:27:51,425.425 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:27:51,547.547 INFO    ] No existing commands found in stream
[2026-08-31 06:27:56,570.570 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:27:56,573.573 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-08-31 06:28:00,576.576 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 06:28:00,579.579 INFO    ] Checking for system updates...
[2026-08-31 06:28:00,618.618 INFO    ] 200
[2026-08-31 06:28:00,620.620 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:28:00,672.672 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:28:00,675.675 INFO    ] No update needed
[2026-08-31 06:28:00,677.677 INFO    ] Checking for camera pi updates...
[2026-08-31 06:28:00,714.714 INFO    ] 200
[2026-08-31 06:28:00,716.716 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:28:00,758.758 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:28:00,844.844 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:28:00,847.847 INFO    ] No camera update needed
[2026-08-31 06:28:00,850.850 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:28:00,852.852 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:28:00,858.858 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:28:00,863.863 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:28:02,908.908 INFO    ] ================================================
[2026-08-31 06:28:02,932.932 INFO    ] Launching Daemon at Mon Aug 31 06:28:02 IST 2026
[2026-08-31 06:28:02,945.945 INFO    ] ================================================
[2026-08-31 06:28:03,558.558 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:28:03
[2026-08-31 06:28:04,145.145 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:28:04,393.393 INFO    ] Initializing speech engine...
[2026-08-31 06:28:04,407.407 INFO    ] 2026-08-31 06:28:04
[2026-08-31 06:28:04,668.668 INFO    ] 2026-08-31 06:28:04
[2026-08-31 06:28:04,704.704 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:28:04,958.958 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:28:04,962.962 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:28:05,093.093 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:28:05,130.130 INFO    ] time= 31/08/2026 06:28:05
[2026-08-31 06:28:05,154.154 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:28:05,179.179 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:28:05,279.279 INFO    ] No existing commands found in stream
[2026-08-31 06:28:10,292.292 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:28:10,295.295 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-08-31 06:28:13,832.832 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 06:28:13,835.835 INFO    ] Checking for system updates...
[2026-08-31 06:28:13,872.872 INFO    ] 200
[2026-08-31 06:28:13,875.875 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:28:13,928.928 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:28:13,930.930 INFO    ] No update needed
[2026-08-31 06:28:13,933.933 INFO    ] Checking for camera pi updates...
[2026-08-31 06:28:13,967.967 INFO    ] 200
[2026-08-31 06:28:13,970.970 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:28:14,016.016 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:28:14,114.114 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:28:14,117.117 INFO    ] No camera update needed
[2026-08-31 06:28:14,119.119 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:28:14,122.122 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:28:14,127.127 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:28:14,132.132 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:28:16,174.174 INFO    ] ================================================
[2026-08-31 06:28:16,190.190 INFO    ] Launching Daemon at Mon Aug 31 06:28:16 IST 2026
[2026-08-31 06:28:16,201.201 INFO    ] ================================================
[2026-08-31 06:28:16,814.814 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:28:16
[2026-08-31 06:28:17,461.461 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:28:17,755.755 INFO    ] Initializing speech engine...
[2026-08-31 06:28:17,764.764 INFO    ] 2026-08-31 06:28:17
[2026-08-31 06:28:18,045.045 INFO    ] 2026-08-31 06:28:18
[2026-08-31 06:28:18,089.089 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:28:18,314.314 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:28:18,319.319 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:28:18,531.531 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:28:18,575.575 INFO    ] time= 31/08/2026 06:28:18
[2026-08-31 06:28:18,582.582 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:28:18,600.600 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:28:18,735.735 INFO    ] No existing commands found in stream
[2026-08-31 06:28:23,761.761 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:28:23,764.764 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-08-31 06:28:27,592.592 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 06:28:27,595.595 INFO    ] Checking for system updates...
[2026-08-31 06:28:27,631.631 INFO    ] 200
[2026-08-31 06:28:27,634.634 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:28:27,694.694 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:28:27,697.697 INFO    ] No update needed
[2026-08-31 06:28:27,699.699 INFO    ] Checking for camera pi updates...
[2026-08-31 06:28:27,733.733 INFO    ] 200
[2026-08-31 06:28:27,736.736 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:28:27,775.775 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:28:27,853.853 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:28:27,855.855 INFO    ] No camera update needed
[2026-08-31 06:28:27,858.858 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:28:27,860.860 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:28:27,865.865 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:28:27,870.870 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:28:29,910.910 INFO    ] ================================================
[2026-08-31 06:28:29,926.926 INFO    ] Launching Daemon at Mon Aug 31 06:28:29 IST 2026
[2026-08-31 06:28:29,937.937 INFO    ] ================================================
[2026-08-31 06:28:30,567.567 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:28:30
[2026-08-31 06:28:31,196.196 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:28:31,463.463 INFO    ] Initializing speech engine...
[2026-08-31 06:28:31,472.472 INFO    ] 2026-08-31 06:28:31
[2026-08-31 06:28:31,738.738 INFO    ] 2026-08-31 06:28:31
[2026-08-31 06:28:31,801.801 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:28:32,030.030 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:28:32,041.041 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:28:32,178.178 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:28:32,218.218 INFO    ] time= 31/08/2026 06:28:32
[2026-08-31 06:28:32,273.273 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:28:32,314.314 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:28:32,434.434 INFO    ] No existing commands found in stream
[2026-08-31 06:28:37,461.461 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:28:37,464.464 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-08-31 06:28:40,451.451 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 06:28:40,454.454 INFO    ] Checking for system updates...
[2026-08-31 06:28:40,489.489 INFO    ] 200
[2026-08-31 06:28:40,491.491 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:28:40,550.550 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:28:40,552.552 INFO    ] No update needed
[2026-08-31 06:28:40,554.554 INFO    ] Checking for camera pi updates...
[2026-08-31 06:28:40,589.589 INFO    ] 200
[2026-08-31 06:28:40,592.592 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:28:40,638.638 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:28:40,737.737 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:28:40,740.740 INFO    ] No camera update needed
[2026-08-31 06:28:40,742.742 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:28:40,744.744 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:28:40,749.749 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:28:40,754.754 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:28:42,796.796 INFO    ] ================================================
[2026-08-31 06:28:42,811.811 INFO    ] Launching Daemon at Mon Aug 31 06:28:42 IST 2026
[2026-08-31 06:28:42,823.823 INFO    ] ================================================
[2026-08-31 06:28:43,390.390 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:28:43
[2026-08-31 06:28:43,972.972 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:28:44,221.221 INFO    ] Initializing speech engine...
[2026-08-31 06:28:44,234.234 INFO    ] 2026-08-31 06:28:44
[2026-08-31 06:28:44,499.499 INFO    ] 2026-08-31 06:28:44
[2026-08-31 06:28:44,535.535 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:28:44,790.790 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:28:44,799.799 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:28:44,936.936 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:28:44,971.971 INFO    ] time= 31/08/2026 06:28:44
[2026-08-31 06:28:45,020.020 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:28:45,069.069 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:28:45,210.210 INFO    ] No existing commands found in stream
[2026-08-31 06:28:50,231.231 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:28:50,234.234 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-08-31 06:28:51,482.482 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 06:28:51,485.485 INFO    ] Checking for system updates...
[2026-08-31 06:28:51,521.521 INFO    ] 200
[2026-08-31 06:28:51,524.524 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:28:51,583.583 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:28:51,586.586 INFO    ] No update needed
[2026-08-31 06:28:51,589.589 INFO    ] Checking for camera pi updates...
[2026-08-31 06:28:51,623.623 INFO    ] 200
[2026-08-31 06:28:51,626.626 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:28:51,666.666 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:28:51,757.757 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:28:51,760.760 INFO    ] No camera update needed
[2026-08-31 06:28:51,763.763 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:28:51,765.765 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:28:51,771.771 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:28:51,777.777 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:28:53,820.820 INFO    ] ================================================
[2026-08-31 06:28:53,836.836 INFO    ] Launching Daemon at Mon Aug 31 06:28:53 IST 2026
[2026-08-31 06:28:53,847.847 INFO    ] ================================================
[2026-08-31 06:28:54,491.491 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:28:54
[2026-08-31 06:28:55,154.154 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:28:55,458.458 INFO    ] Initializing speech engine...
[2026-08-31 06:28:55,472.472 INFO    ] 2026-08-31 06:28:55
[2026-08-31 06:28:55,761.761 INFO    ] 2026-08-31 06:28:55
[2026-08-31 06:28:55,799.799 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:28:56,092.092 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:28:56,102.102 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:28:56,300.300 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:28:56,306.306 INFO    ] time= 31/08/2026 06:28:56
[2026-08-31 06:28:56,324.324 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:28:56,347.347 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:28:56,463.463 INFO    ] No existing commands found in stream
[2026-08-31 06:29:01,483.483 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:29:01,486.486 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-08-31 06:29:02,138.138 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 06:29:02,141.141 INFO    ] Checking for system updates...
[2026-08-31 06:29:02,193.193 INFO    ] 200
[2026-08-31 06:29:02,196.196 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:29:02,259.259 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:29:02,262.262 INFO    ] No update needed
[2026-08-31 06:29:02,266.266 INFO    ] Checking for camera pi updates...
[2026-08-31 06:29:02,310.310 INFO    ] 200
[2026-08-31 06:29:02,313.313 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:29:02,373.373 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:29:02,475.475 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:29:02,478.478 INFO    ] No camera update needed
[2026-08-31 06:29:02,481.481 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:29:02,484.484 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:29:02,491.491 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:29:02,497.497 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:29:04,539.539 INFO    ] ================================================
[2026-08-31 06:29:04,554.554 INFO    ] Launching Daemon at Mon Aug 31 06:29:04 IST 2026
[2026-08-31 06:29:04,565.565 INFO    ] ================================================
[2026-08-31 06:29:05,133.133 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:29:05
[2026-08-31 06:29:05,720.720 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:29:05,971.971 INFO    ] Initializing speech engine...
[2026-08-31 06:29:05,994.994 INFO    ] 2026-08-31 06:29:05
[2026-08-31 06:29:06,252.252 INFO    ] 2026-08-31 06:29:06
[2026-08-31 06:29:06,288.288 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:29:06,497.497 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:29:06,553.553 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:29:06,753.753 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:29:06,818.818 INFO    ] time= 31/08/2026 06:29:06
[2026-08-31 06:29:06,845.845 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:29:06,860.860 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:29:06,991.991 INFO    ] No existing commands found in stream
[2026-08-31 06:29:12,008.008 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:29:12,011.011 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-08-31 06:29:15,571.571 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 06:29:15,573.573 INFO    ] Checking for system updates...
[2026-08-31 06:29:15,612.612 INFO    ] 200
[2026-08-31 06:29:15,614.614 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:29:15,668.668 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:29:15,671.671 INFO    ] No update needed
[2026-08-31 06:29:15,673.673 INFO    ] Checking for camera pi updates...
[2026-08-31 06:29:15,708.708 INFO    ] 200
[2026-08-31 06:29:15,710.710 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:29:15,751.751 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:29:15,933.933 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:29:15,936.936 INFO    ] No camera update needed
[2026-08-31 06:29:15,939.939 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:29:15,941.941 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:29:15,948.948 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:29:15,953.953 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:29:18,995.995 INFO    ] ================================================
[2026-08-31 06:29:18,011.011 INFO    ] Launching Daemon at Mon Aug 31 06:29:18 IST 2026
[2026-08-31 06:29:18,022.022 INFO    ] ================================================
[2026-08-31 06:29:18,672.672 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:29:18
[2026-08-31 06:29:19,339.339 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:29:19,643.643 INFO    ] Initializing speech engine...
[2026-08-31 06:29:19,658.658 INFO    ] 2026-08-31 06:29:19
[2026-08-31 06:29:19,932.932 INFO    ] 2026-08-31 06:29:19
[2026-08-31 06:29:19,989.989 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:29:20,223.223 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:29:20,245.245 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:29:20,431.431 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:29:20,491.491 INFO    ] time= 31/08/2026 06:29:20
[2026-08-31 06:29:20,498.498 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:29:20,520.520 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:29:20,654.654 INFO    ] No existing commands found in stream
[2026-08-31 06:29:25,684.684 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:29:25,687.687 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-08-31 06:29:29,848.848 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 06:29:29,851.851 INFO    ] Checking for system updates...
[2026-08-31 06:29:29,888.888 INFO    ] 200
[2026-08-31 06:29:29,891.891 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:29:29,944.944 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:29:29,947.947 INFO    ] No update needed
[2026-08-31 06:29:29,950.950 INFO    ] Checking for camera pi updates...
[2026-08-31 06:29:29,983.983 INFO    ] 200
[2026-08-31 06:29:29,986.986 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:29:30,031.031 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:29:30,103.103 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:29:30,105.105 INFO    ] No camera update needed
[2026-08-31 06:29:30,108.108 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:29:30,110.110 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:29:30,115.115 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:29:30,120.120 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:29:32,163.163 INFO    ] ================================================
[2026-08-31 06:29:32,182.182 INFO    ] Launching Daemon at Mon Aug 31 06:29:32 IST 2026
[2026-08-31 06:29:32,193.193 INFO    ] ================================================
[2026-08-31 06:29:32,793.793 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:29:32
[2026-08-31 06:29:33,466.466 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:29:33,773.773 INFO    ] Initializing speech engine...
[2026-08-31 06:29:33,785.785 INFO    ] 2026-08-31 06:29:33
[2026-08-31 06:29:34,054.054 INFO    ] 2026-08-31 06:29:34
[2026-08-31 06:29:34,110.110 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:29:34,362.362 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:29:34,367.367 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:29:34,581.581 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:29:34,606.606 INFO    ] time= 31/08/2026 06:29:34
[2026-08-31 06:29:34,625.625 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:29:34,654.654 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:29:34,781.781 INFO    ] No existing commands found in stream
[2026-08-31 06:29:39,817.817 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:29:39,820.820 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-08-31 06:29:42,634.634 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 06:29:42,637.637 INFO    ] Checking for system updates...
[2026-08-31 06:29:42,673.673 INFO    ] 200
[2026-08-31 06:29:42,676.676 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:29:42,729.729 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:29:42,731.731 INFO    ] No update needed
[2026-08-31 06:29:42,733.733 INFO    ] Checking for camera pi updates...
[2026-08-31 06:29:42,770.770 INFO    ] 200
[2026-08-31 06:29:42,773.773 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:29:42,812.812 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:29:42,884.884 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:29:42,887.887 INFO    ] No camera update needed
[2026-08-31 06:29:42,889.889 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:29:42,892.892 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:29:42,897.897 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:29:42,902.902 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:29:44,944.944 INFO    ] ================================================
[2026-08-31 06:29:44,959.959 INFO    ] Launching Daemon at Mon Aug 31 06:29:44 IST 2026
[2026-08-31 06:29:44,969.969 INFO    ] ================================================
[2026-08-31 06:29:45,550.550 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:29:45
[2026-08-31 06:29:46,148.148 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:29:46,409.409 INFO    ] Initializing speech engine...
[2026-08-31 06:29:46,432.432 INFO    ] 2026-08-31 06:29:46
[2026-08-31 06:29:46,694.694 INFO    ] 2026-08-31 06:29:46
[2026-08-31 06:29:46,729.729 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:29:46,983.983 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:29:46,993.993 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:29:47,202.202 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:29:47,252.252 INFO    ] time= 31/08/2026 06:29:47
[2026-08-31 06:29:47,270.270 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:29:47,280.280 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:29:47,392.392 INFO    ] No existing commands found in stream
[2026-08-31 06:29:52,402.402 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:29:52,405.405 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-08-31 06:29:54,995.995 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 06:29:54,998.998 INFO    ] Checking for system updates...
[2026-08-31 06:29:55,035.035 INFO    ] 200
[2026-08-31 06:29:55,038.038 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:29:55,098.098 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:29:55,101.101 INFO    ] No update needed
[2026-08-31 06:29:55,104.104 INFO    ] Checking for camera pi updates...
[2026-08-31 06:29:55,139.139 INFO    ] 200
[2026-08-31 06:29:55,141.141 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:29:55,183.183 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:29:55,261.261 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:29:55,264.264 INFO    ] No camera update needed
[2026-08-31 06:29:55,266.266 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:29:55,269.269 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:29:55,275.275 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:29:55,281.281 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:29:57,322.322 INFO    ] ================================================
[2026-08-31 06:29:57,336.336 INFO    ] Launching Daemon at Mon Aug 31 06:29:57 IST 2026
[2026-08-31 06:29:57,346.346 INFO    ] ================================================
[2026-08-31 06:29:57,928.928 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:29:57
[2026-08-31 06:29:58,524.524 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:29:58,786.786 INFO    ] Initializing speech engine...
[2026-08-31 06:29:58,792.792 INFO    ] 2026-08-31 06:29:58
[2026-08-31 06:29:59,086.086 INFO    ] 2026-08-31 06:29:59
[2026-08-31 06:29:59,124.124 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:29:59,320.320 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:29:59,334.334 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:29:59,496.496 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:29:59,505.505 INFO    ] time= 31/08/2026 06:29:59
[2026-08-31 06:29:59,512.512 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:29:59,535.535 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:29:59,671.671 INFO    ] No existing commands found in stream
[2026-08-31 06:30:04,697.697 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:30:04,700.700 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-08-31 06:30:08,497.497 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 06:30:08,500.500 INFO    ] Checking for system updates...
[2026-08-31 06:30:08,539.539 INFO    ] 200
[2026-08-31 06:30:08,541.541 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:30:08,594.594 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:30:08,596.596 INFO    ] No update needed
[2026-08-31 06:30:08,599.599 INFO    ] Checking for camera pi updates...
[2026-08-31 06:30:08,632.632 INFO    ] 200
[2026-08-31 06:30:08,634.634 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:30:08,674.674 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:30:08,756.756 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:30:08,759.759 INFO    ] No camera update needed
[2026-08-31 06:30:08,761.761 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:30:08,763.763 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:30:08,769.769 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:30:08,774.774 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:30:10,814.814 INFO    ] ================================================
[2026-08-31 06:30:10,829.829 INFO    ] Launching Daemon at Mon Aug 31 06:30:10 IST 2026
[2026-08-31 06:30:10,839.839 INFO    ] ================================================
[2026-08-31 06:30:11,478.478 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:30:11
[2026-08-31 06:30:12,067.067 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:30:12,328.328 INFO    ] Initializing speech engine...
[2026-08-31 06:30:12,352.352 INFO    ] 2026-08-31 06:30:12
[2026-08-31 06:30:12,624.624 INFO    ] 2026-08-31 06:30:12
[2026-08-31 06:30:12,660.660 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:30:12,883.883 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:30:12,912.912 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:30:13,110.110 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:30:13,127.127 INFO    ] time= 31/08/2026 06:30:13
[2026-08-31 06:30:13,171.171 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:30:13,215.215 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:30:13,315.315 INFO    ] No existing commands found in stream
[2026-08-31 06:30:18,327.327 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:30:18,330.330 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-08-31 06:30:20,488.488 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 06:30:20,491.491 INFO    ] Checking for system updates...
[2026-08-31 06:30:20,526.526 INFO    ] 200
[2026-08-31 06:30:20,529.529 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:30:20,581.581 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:30:20,583.583 INFO    ] No update needed
[2026-08-31 06:30:20,585.585 INFO    ] Checking for camera pi updates...
[2026-08-31 06:30:20,619.619 INFO    ] 200
[2026-08-31 06:30:20,621.621 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:30:20,665.665 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:30:20,750.750 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:30:20,752.752 INFO    ] No camera update needed
[2026-08-31 06:30:20,754.754 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:30:20,757.757 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:30:20,762.762 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:30:20,767.767 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:30:22,810.810 INFO    ] ================================================
[2026-08-31 06:30:22,824.824 INFO    ] Launching Daemon at Mon Aug 31 06:30:22 IST 2026
[2026-08-31 06:30:22,835.835 INFO    ] ================================================
[2026-08-31 06:30:23,404.404 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:30:23
[2026-08-31 06:30:23,991.991 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:30:24,245.245 INFO    ] Initializing speech engine...
[2026-08-31 06:30:24,251.251 INFO    ] 2026-08-31 06:30:24
[2026-08-31 06:30:24,544.544 INFO    ] 2026-08-31 06:30:24
[2026-08-31 06:30:24,582.582 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:30:24,802.802 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:30:24,810.810 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:30:24,959.959 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:30:25,008.008 INFO    ] time= 31/08/2026 06:30:24
[2026-08-31 06:30:25,034.034 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:30:25,071.071 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:30:25,181.181 INFO    ] No existing commands found in stream
[2026-08-31 06:30:30,191.191 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:30:30,194.194 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-08-31 06:30:33,891.891 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 06:30:33,893.893 INFO    ] Checking for system updates...
[2026-08-31 06:30:33,932.932 INFO    ] 200
[2026-08-31 06:30:33,935.935 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:30:33,993.993 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:30:33,996.996 INFO    ] No update needed
[2026-08-31 06:30:33,998.998 INFO    ] Checking for camera pi updates...
[2026-08-31 06:30:34,036.036 INFO    ] 200
[2026-08-31 06:30:34,038.038 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:30:34,078.078 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:30:34,177.177 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:30:34,180.180 INFO    ] No camera update needed
[2026-08-31 06:30:34,182.182 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:30:34,184.184 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:30:34,190.190 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:30:34,194.194 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:30:36,235.235 INFO    ] ================================================
[2026-08-31 06:30:36,251.251 INFO    ] Launching Daemon at Mon Aug 31 06:30:36 IST 2026
[2026-08-31 06:30:36,262.262 INFO    ] ================================================
[2026-08-31 06:30:36,883.883 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:30:36
[2026-08-31 06:30:37,489.489 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:30:37,748.748 INFO    ] Initializing speech engine...
[2026-08-31 06:30:37,756.756 INFO    ] 2026-08-31 06:30:37
[2026-08-31 06:30:38,058.058 INFO    ] 2026-08-31 06:30:38
[2026-08-31 06:30:38,097.097 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:30:38,320.320 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:30:38,369.369 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:30:38,552.552 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:30:38,617.617 INFO    ] time= 31/08/2026 06:30:38
[2026-08-31 06:30:38,661.661 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:30:38,700.700 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:30:38,834.834 INFO    ] No existing commands found in stream
[2026-08-31 06:30:43,867.867 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:30:43,870.870 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-08-31 06:30:46,531.531 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 06:30:46,534.534 INFO    ] Checking for system updates...
[2026-08-31 06:30:46,570.570 INFO    ] 200
[2026-08-31 06:30:46,572.572 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:30:46,644.644 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:30:46,646.646 INFO    ] No update needed
[2026-08-31 06:30:46,649.649 INFO    ] Checking for camera pi updates...
[2026-08-31 06:30:46,682.682 INFO    ] 200
[2026-08-31 06:30:46,684.684 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:30:46,724.724 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:30:46,805.805 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:30:46,807.807 INFO    ] No camera update needed
[2026-08-31 06:30:46,810.810 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:30:46,812.812 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:30:46,817.817 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:30:46,822.822 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:30:48,863.863 INFO    ] ================================================
[2026-08-31 06:30:48,879.879 INFO    ] Launching Daemon at Mon Aug 31 06:30:48 IST 2026
[2026-08-31 06:30:48,890.890 INFO    ] ================================================
[2026-08-31 06:30:49,482.482 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:30:49
[2026-08-31 06:30:50,089.089 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:30:50,344.344 INFO    ] Initializing speech engine...
[2026-08-31 06:30:50,352.352 INFO    ] 2026-08-31 06:30:50
[2026-08-31 06:30:50,628.628 INFO    ] 2026-08-31 06:30:50
[2026-08-31 06:30:50,664.664 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:30:50,836.836 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:30:50,849.849 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:30:50,993.993 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:30:50,998.998 INFO    ] time= 31/08/2026 06:30:50
[2026-08-31 06:30:51,004.004 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:30:51,046.046 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:30:51,195.195 INFO    ] No existing commands found in stream
[2026-08-31 06:30:56,206.206 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:30:56,209.209 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-08-31 06:30:59,649.649 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 06:30:59,651.651 INFO    ] Checking for system updates...
[2026-08-31 06:30:59,687.687 INFO    ] 200
[2026-08-31 06:30:59,690.690 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:30:59,745.745 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:30:59,748.748 INFO    ] No update needed
[2026-08-31 06:30:59,750.750 INFO    ] Checking for camera pi updates...
[2026-08-31 06:30:59,784.784 INFO    ] 200
[2026-08-31 06:30:59,786.786 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:30:59,827.827 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:30:59,894.894 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:30:59,896.896 INFO    ] No camera update needed
[2026-08-31 06:30:59,899.899 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:30:59,901.901 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:30:59,906.906 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:30:59,911.911 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:31:01,954.954 INFO    ] ================================================
[2026-08-31 06:31:01,982.982 INFO    ] Launching Daemon at Mon Aug 31 06:31:01 IST 2026
[2026-08-31 06:31:02,998.998 INFO    ] ================================================
[2026-08-31 06:31:02,641.641 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:31:02
[2026-08-31 06:31:03,320.320 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:31:03,605.605 INFO    ] Initializing speech engine...
[2026-08-31 06:31:03,611.611 INFO    ] 2026-08-31 06:31:03
[2026-08-31 06:31:03,873.873 INFO    ] 2026-08-31 06:31:03
[2026-08-31 06:31:03,926.926 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:31:04,078.078 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:31:04,097.097 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:31:04,225.225 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:31:04,234.234 INFO    ] time= 31/08/2026 06:31:04
[2026-08-31 06:31:04,278.278 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:31:04,301.301 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:31:04,426.426 INFO    ] No existing commands found in stream
[2026-08-31 06:31:09,437.437 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:31:09,440.440 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-08-31 06:31:10,168.168 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 06:31:10,171.171 INFO    ] Checking for system updates...
[2026-08-31 06:31:10,212.212 INFO    ] 200
[2026-08-31 06:31:10,215.215 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:31:10,278.278 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:31:10,282.282 INFO    ] No update needed
[2026-08-31 06:31:10,285.285 INFO    ] Checking for camera pi updates...
[2026-08-31 06:31:10,323.323 INFO    ] 200
[2026-08-31 06:31:10,326.326 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:31:10,372.372 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:31:10,461.461 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:31:10,463.463 INFO    ] No camera update needed
[2026-08-31 06:31:10,466.466 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:31:10,469.469 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:31:10,475.475 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:31:10,481.481 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:31:12,523.523 INFO    ] ================================================
[2026-08-31 06:31:12,538.538 INFO    ] Launching Daemon at Mon Aug 31 06:31:12 IST 2026
[2026-08-31 06:31:12,549.549 INFO    ] ================================================
[2026-08-31 06:31:13,169.169 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:31:13
[2026-08-31 06:31:13,836.836 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:31:14,140.140 INFO    ] Initializing speech engine...
[2026-08-31 06:31:14,146.146 INFO    ] 2026-08-31 06:31:14
[2026-08-31 06:31:14,423.423 INFO    ] 2026-08-31 06:31:14
[2026-08-31 06:31:14,475.475 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:31:14,759.759 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:31:14,768.768 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:31:14,962.962 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:31:14,970.970 INFO    ] time= 31/08/2026 06:31:14
[2026-08-31 06:31:14,989.989 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:31:15,017.017 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:31:15,159.159 INFO    ] No existing commands found in stream
[2026-08-31 06:31:20,195.195 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:31:20,199.199 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-08-31 06:31:23,320.320 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 06:31:23,323.323 INFO    ] Checking for system updates...
[2026-08-31 06:31:23,364.364 INFO    ] 200
[2026-08-31 06:31:23,367.367 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:31:23,421.421 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:31:23,424.424 INFO    ] No update needed
[2026-08-31 06:31:23,426.426 INFO    ] Checking for camera pi updates...
[2026-08-31 06:31:23,460.460 INFO    ] 200
[2026-08-31 06:31:23,463.463 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:31:23,504.504 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:31:23,679.679 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:31:23,682.682 INFO    ] No camera update needed
[2026-08-31 06:31:23,685.685 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:31:23,688.688 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:31:23,694.694 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:31:23,700.700 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:31:25,741.741 INFO    ] ================================================
[2026-08-31 06:31:25,757.757 INFO    ] Launching Daemon at Mon Aug 31 06:31:25 IST 2026
[2026-08-31 06:31:25,768.768 INFO    ] ================================================
[2026-08-31 06:31:26,422.422 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:31:26
[2026-08-31 06:31:27,098.098 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:31:27,402.402 INFO    ] Initializing speech engine...
[2026-08-31 06:31:27,417.417 INFO    ] 2026-08-31 06:31:27
[2026-08-31 06:31:27,686.686 INFO    ] 2026-08-31 06:31:27
[2026-08-31 06:31:27,747.747 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:31:28,001.001 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:31:28,006.006 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:31:28,237.237 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:31:28,244.244 INFO    ] time= 31/08/2026 06:31:28
[2026-08-31 06:31:28,266.266 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:31:28,295.295 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:31:28,398.398 INFO    ] No existing commands found in stream
[2026-08-31 06:31:33,420.420 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:31:33,423.423 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-08-31 06:31:34,840.840 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 06:31:34,843.843 INFO    ] Checking for system updates...
[2026-08-31 06:31:34,882.882 INFO    ] 200
[2026-08-31 06:31:34,884.884 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:31:34,938.938 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:31:34,941.941 INFO    ] No update needed
[2026-08-31 06:31:34,944.944 INFO    ] Checking for camera pi updates...
[2026-08-31 06:31:34,978.978 INFO    ] 200
[2026-08-31 06:31:34,981.981 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:31:35,021.021 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:31:35,120.120 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:31:35,122.122 INFO    ] No camera update needed
[2026-08-31 06:31:35,125.125 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:31:35,127.127 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:31:35,133.133 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:31:35,138.138 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:31:37,177.177 INFO    ] ================================================
[2026-08-31 06:31:37,192.192 INFO    ] Launching Daemon at Mon Aug 31 06:31:37 IST 2026
[2026-08-31 06:31:37,203.203 INFO    ] ================================================
[2026-08-31 06:31:37,847.847 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:31:37
[2026-08-31 06:31:38,514.514 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:31:38,813.813 INFO    ] Initializing speech engine...
[2026-08-31 06:31:38,822.822 INFO    ] 2026-08-31 06:31:38
[2026-08-31 06:31:39,108.108 INFO    ] 2026-08-31 06:31:39
[2026-08-31 06:31:39,154.154 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:31:39,383.383 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:31:39,404.404 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:31:39,610.610 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:31:39,645.645 INFO    ] time= 31/08/2026 06:31:39
[2026-08-31 06:31:39,652.652 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:31:39,674.674 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:31:39,792.792 INFO    ] No existing commands found in stream
[2026-08-31 06:31:44,812.812 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:31:44,816.816 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-08-31 06:31:48,593.593 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 06:31:48,596.596 INFO    ] Checking for system updates...
[2026-08-31 06:31:48,633.633 INFO    ] 200
[2026-08-31 06:31:48,636.636 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:31:48,696.696 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:31:48,699.699 INFO    ] No update needed
[2026-08-31 06:31:48,701.701 INFO    ] Checking for camera pi updates...
[2026-08-31 06:31:48,734.734 INFO    ] 200
[2026-08-31 06:31:48,737.737 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:31:48,777.777 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:31:48,850.850 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:31:48,853.853 INFO    ] No camera update needed
[2026-08-31 06:31:48,855.855 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:31:48,858.858 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:31:48,863.863 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:31:48,868.868 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:31:50,908.908 INFO    ] ================================================
[2026-08-31 06:31:50,923.923 INFO    ] Launching Daemon at Mon Aug 31 06:31:50 IST 2026
[2026-08-31 06:31:50,934.934 INFO    ] ================================================
[2026-08-31 06:31:51,501.501 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:31:51
[2026-08-31 06:31:52,085.085 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:31:52,352.352 INFO    ] Initializing speech engine...
[2026-08-31 06:31:52,361.361 INFO    ] 2026-08-31 06:31:52
[2026-08-31 06:31:52,627.627 INFO    ] 2026-08-31 06:31:52
[2026-08-31 06:31:52,665.665 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:31:52,864.864 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:31:52,878.878 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:31:53,042.042 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:31:53,050.050 INFO    ] time= 31/08/2026 06:31:53
[2026-08-31 06:31:53,055.055 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:31:53,062.062 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:31:53,193.193 INFO    ] No existing commands found in stream
[2026-08-31 06:31:58,223.223 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:31:58,225.225 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-08-31 06:31:59,250.250 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 06:31:59,253.253 INFO    ] Checking for system updates...
[2026-08-31 06:31:59,288.288 INFO    ] 200
[2026-08-31 06:31:59,291.291 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:31:59,342.342 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:31:59,345.345 INFO    ] No update needed
[2026-08-31 06:31:59,347.347 INFO    ] Checking for camera pi updates...
[2026-08-31 06:31:59,381.381 INFO    ] 200
[2026-08-31 06:31:59,383.383 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:31:59,423.423 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:31:59,518.518 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:31:59,520.520 INFO    ] No camera update needed
[2026-08-31 06:31:59,522.522 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:31:59,525.525 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:31:59,530.530 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:31:59,535.535 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:32:01,595.595 INFO    ] ================================================
[2026-08-31 06:32:01,621.621 INFO    ] Launching Daemon at Mon Aug 31 06:32:01 IST 2026
[2026-08-31 06:32:01,663.663 INFO    ] ================================================
[2026-08-31 06:32:02,477.477 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:32:02
[2026-08-31 06:32:03,236.236 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:32:03,553.553 INFO    ] Initializing speech engine...
[2026-08-31 06:32:03,559.559 INFO    ] 2026-08-31 06:32:03
[2026-08-31 06:32:03,838.838 INFO    ] 2026-08-31 06:32:03
[2026-08-31 06:32:03,896.896 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:32:04,121.121 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:32:04,131.131 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:32:04,269.269 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:32:04,334.334 INFO    ] time= 31/08/2026 06:32:04
[2026-08-31 06:32:04,395.395 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:32:04,408.408 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:32:04,563.563 INFO    ] No existing commands found in stream
[2026-08-31 06:32:09,594.594 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:32:09,598.598 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-08-31 06:32:11,792.792 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 06:32:11,795.795 INFO    ] Checking for system updates...
[2026-08-31 06:32:11,836.836 INFO    ] 200
[2026-08-31 06:32:11,839.839 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:32:11,898.898 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:32:11,901.901 INFO    ] No update needed
[2026-08-31 06:32:11,904.904 INFO    ] Checking for camera pi updates...
[2026-08-31 06:32:11,941.941 INFO    ] 200
[2026-08-31 06:32:11,944.944 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:32:12,000.000 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:32:12,078.078 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:32:12,080.080 INFO    ] No camera update needed
[2026-08-31 06:32:12,083.083 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:32:12,085.085 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:32:12,091.091 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:32:12,096.096 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:32:14,136.136 INFO    ] ================================================
[2026-08-31 06:32:14,151.151 INFO    ] Launching Daemon at Mon Aug 31 06:32:14 IST 2026
[2026-08-31 06:32:14,162.162 INFO    ] ================================================
[2026-08-31 06:32:14,741.741 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:32:14
[2026-08-31 06:32:15,339.339 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:32:15,617.617 INFO    ] Initializing speech engine...
[2026-08-31 06:32:15,624.624 INFO    ] 2026-08-31 06:32:15
[2026-08-31 06:32:15,885.885 INFO    ] 2026-08-31 06:32:15
[2026-08-31 06:32:15,939.939 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:32:16,160.160 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:32:16,170.170 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:32:16,302.302 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:32:16,350.350 INFO    ] time= 31/08/2026 06:32:16
[2026-08-31 06:32:16,395.395 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:32:16,435.435 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:32:16,559.559 INFO    ] No existing commands found in stream
[2026-08-31 06:32:21,592.592 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:32:21,595.595 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-08-31 06:32:22,909.909 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 06:32:22,912.912 INFO    ] Checking for system updates...
[2026-08-31 06:32:22,948.948 INFO    ] 200
[2026-08-31 06:32:22,951.951 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:32:23,003.003 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:32:23,006.006 INFO    ] No update needed
[2026-08-31 06:32:23,008.008 INFO    ] Checking for camera pi updates...
[2026-08-31 06:32:23,042.042 INFO    ] 200
[2026-08-31 06:32:23,044.044 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:32:23,084.084 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:32:23,138.138 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:32:23,141.141 INFO    ] No camera update needed
[2026-08-31 06:32:23,143.143 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:32:23,145.145 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:32:23,151.151 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:32:23,156.156 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:32:25,200.200 INFO    ] ================================================
[2026-08-31 06:32:25,215.215 INFO    ] Launching Daemon at Mon Aug 31 06:32:25 IST 2026
[2026-08-31 06:32:25,226.226 INFO    ] ================================================
[2026-08-31 06:32:25,791.791 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:32:25
[2026-08-31 06:32:26,373.373 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:32:26,645.645 INFO    ] Initializing speech engine...
[2026-08-31 06:32:26,666.666 INFO    ] 2026-08-31 06:32:26
[2026-08-31 06:32:26,946.946 INFO    ] 2026-08-31 06:32:26
[2026-08-31 06:32:26,985.985 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:32:27,174.174 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:32:27,181.181 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:32:27,330.330 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:32:27,339.339 INFO    ] time= 31/08/2026 06:32:27
[2026-08-31 06:32:27,345.345 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:32:27,365.365 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:32:27,438.438 INFO    ] No existing commands found in stream
[2026-08-31 06:32:32,468.468 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:32:32,471.471 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-08-31 06:32:33,482.482 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 06:32:33,485.485 INFO    ] Checking for system updates...
[2026-08-31 06:32:33,521.521 INFO    ] 200
[2026-08-31 06:32:33,523.523 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:32:33,576.576 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:32:33,579.579 INFO    ] No update needed
[2026-08-31 06:32:33,581.581 INFO    ] Checking for camera pi updates...
[2026-08-31 06:32:33,614.614 INFO    ] 200
[2026-08-31 06:32:33,617.617 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:32:33,662.662 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:32:33,770.770 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:32:33,772.772 INFO    ] No camera update needed
[2026-08-31 06:32:33,775.775 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:32:33,777.777 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:32:33,783.783 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:32:33,789.789 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:32:35,829.829 INFO    ] ================================================
[2026-08-31 06:32:35,844.844 INFO    ] Launching Daemon at Mon Aug 31 06:32:35 IST 2026
[2026-08-31 06:32:35,855.855 INFO    ] ================================================
[2026-08-31 06:32:36,434.434 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:32:36
[2026-08-31 06:32:37,045.045 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:32:37,341.341 INFO    ] Initializing speech engine...
[2026-08-31 06:32:37,352.352 INFO    ] 2026-08-31 06:32:37
[2026-08-31 06:32:37,619.619 INFO    ] 2026-08-31 06:32:37
[2026-08-31 06:32:37,650.650 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:32:37,896.896 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:32:37,905.905 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:32:38,118.118 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:32:38,164.164 INFO    ] time= 31/08/2026 06:32:38
[2026-08-31 06:32:38,170.170 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:32:38,188.188 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:32:38,316.316 INFO    ] No existing commands found in stream
[2026-08-31 06:32:43,332.332 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:32:43,334.334 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-08-31 06:32:44,377.377 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 06:32:44,379.379 INFO    ] Checking for system updates...
[2026-08-31 06:32:44,417.417 INFO    ] 200
[2026-08-31 06:32:44,419.419 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:32:44,480.480 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:32:44,482.482 INFO    ] No update needed
[2026-08-31 06:32:44,485.485 INFO    ] Checking for camera pi updates...
[2026-08-31 06:32:44,519.519 INFO    ] 200
[2026-08-31 06:32:44,522.522 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:32:44,568.568 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:32:44,649.649 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:32:44,651.651 INFO    ] No camera update needed
[2026-08-31 06:32:44,653.653 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:32:44,656.656 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:32:44,661.661 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:32:44,666.666 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:32:46,706.706 INFO    ] ================================================
[2026-08-31 06:32:46,721.721 INFO    ] Launching Daemon at Mon Aug 31 06:32:46 IST 2026
[2026-08-31 06:32:46,732.732 INFO    ] ================================================
[2026-08-31 06:32:47,395.395 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:32:47
[2026-08-31 06:32:48,078.078 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:32:48,388.388 INFO    ] Initializing speech engine...
[2026-08-31 06:32:48,403.403 INFO    ] 2026-08-31 06:32:48
[2026-08-31 06:32:48,695.695 INFO    ] 2026-08-31 06:32:48
[2026-08-31 06:32:48,808.808 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:32:49,029.029 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:32:49,037.037 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:32:49,232.232 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:32:49,239.239 INFO    ] time= 31/08/2026 06:32:49
[2026-08-31 06:32:49,258.258 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:32:49,288.288 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:32:49,391.391 INFO    ] No existing commands found in stream
[2026-08-31 06:32:54,409.409 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:32:54,412.412 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-08-31 06:32:55,058.058 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 06:32:55,061.061 INFO    ] Checking for system updates...
[2026-08-31 06:32:55,097.097 INFO    ] 200
[2026-08-31 06:32:55,100.100 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:32:55,152.152 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:32:55,155.155 INFO    ] No update needed
[2026-08-31 06:32:55,157.157 INFO    ] Checking for camera pi updates...
[2026-08-31 06:32:55,191.191 INFO    ] 200
[2026-08-31 06:32:55,193.193 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:32:55,243.243 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:32:55,325.325 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:32:55,328.328 INFO    ] No camera update needed
[2026-08-31 06:32:55,331.331 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:32:55,334.334 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:32:55,340.340 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:32:55,346.346 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:32:57,388.388 INFO    ] ================================================
[2026-08-31 06:32:57,403.403 INFO    ] Launching Daemon at Mon Aug 31 06:32:57 IST 2026
[2026-08-31 06:32:57,413.413 INFO    ] ================================================
[2026-08-31 06:32:57,994.994 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:32:57
[2026-08-31 06:32:58,591.591 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:32:58,864.864 INFO    ] Initializing speech engine...
[2026-08-31 06:32:58,873.873 INFO    ] 2026-08-31 06:32:58
[2026-08-31 06:32:59,123.123 INFO    ] 2026-08-31 06:32:59
[2026-08-31 06:32:59,158.158 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:32:59,408.408 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:32:59,417.417 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:32:59,557.557 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:32:59,611.611 INFO    ] time= 31/08/2026 06:32:59
[2026-08-31 06:32:59,666.666 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:32:59,684.684 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:32:59,809.809 INFO    ] No existing commands found in stream
[2026-08-31 06:33:04,836.836 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:33:04,839.839 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-08-31 06:33:08,570.570 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 06:33:08,573.573 INFO    ] Checking for system updates...
[2026-08-31 06:33:08,613.613 INFO    ] 200
[2026-08-31 06:33:08,615.615 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:33:08,670.670 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:33:08,672.672 INFO    ] No update needed
[2026-08-31 06:33:08,674.674 INFO    ] Checking for camera pi updates...
[2026-08-31 06:33:08,708.708 INFO    ] 200
[2026-08-31 06:33:08,710.710 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:33:08,755.755 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:33:08,835.835 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:33:08,837.837 INFO    ] No camera update needed
[2026-08-31 06:33:08,840.840 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:33:08,842.842 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:33:08,847.847 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:33:08,852.852 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:33:10,896.896 INFO    ] ================================================
[2026-08-31 06:33:10,911.911 INFO    ] Launching Daemon at Mon Aug 31 06:33:10 IST 2026
[2026-08-31 06:33:10,922.922 INFO    ] ================================================
[2026-08-31 06:33:11,565.565 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:33:11
[2026-08-31 06:33:12,241.241 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:33:12,561.561 INFO    ] Initializing speech engine...
[2026-08-31 06:33:12,572.572 INFO    ] 2026-08-31 06:33:12
[2026-08-31 06:33:12,878.878 INFO    ] 2026-08-31 06:33:12
[2026-08-31 06:33:12,960.960 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:33:13,184.184 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:33:13,199.199 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:33:13,390.390 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:33:13,413.413 INFO    ] time= 31/08/2026 06:33:13
[2026-08-31 06:33:13,445.445 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:33:13,454.454 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:33:13,580.580 INFO    ] No existing commands found in stream
[2026-08-31 06:33:18,606.606 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:33:18,609.609 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-08-31 06:33:19,941.941 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 06:33:19,944.944 INFO    ] Checking for system updates...
[2026-08-31 06:33:19,985.985 INFO    ] 200
[2026-08-31 06:33:19,989.989 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:33:20,050.050 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:33:20,053.053 INFO    ] No update needed
[2026-08-31 06:33:20,056.056 INFO    ] Checking for camera pi updates...
[2026-08-31 06:33:20,090.090 INFO    ] 200
[2026-08-31 06:33:20,093.093 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:33:20,134.134 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:33:20,218.218 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:33:20,220.220 INFO    ] No camera update needed
[2026-08-31 06:33:20,223.223 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:33:20,226.226 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:33:20,232.232 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:33:20,238.238 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:33:22,280.280 INFO    ] ================================================
[2026-08-31 06:33:22,294.294 INFO    ] Launching Daemon at Mon Aug 31 06:33:22 IST 2026
[2026-08-31 06:33:22,305.305 INFO    ] ================================================
[2026-08-31 06:33:22,870.870 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:33:22
[2026-08-31 06:33:23,453.453 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:33:23,720.720 INFO    ] Initializing speech engine...
[2026-08-31 06:33:23,729.729 INFO    ] 2026-08-31 06:33:23
[2026-08-31 06:33:23,983.983 INFO    ] 2026-08-31 06:33:23
[2026-08-31 06:33:24,018.018 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:33:24,202.202 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:33:24,218.218 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:33:24,420.420 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:33:24,441.441 INFO    ] time= 31/08/2026 06:33:24
[2026-08-31 06:33:24,506.506 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:33:24,555.555 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:33:24,676.676 INFO    ] No existing commands found in stream
[2026-08-31 06:33:29,706.706 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:33:29,709.709 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-08-31 06:33:30,317.317 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 06:33:30,320.320 INFO    ] Checking for system updates...
[2026-08-31 06:33:30,357.357 INFO    ] 200
[2026-08-31 06:33:30,360.360 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:33:30,411.411 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:33:30,414.414 INFO    ] No update needed
[2026-08-31 06:33:30,416.416 INFO    ] Checking for camera pi updates...
[2026-08-31 06:33:30,450.450 INFO    ] 200
[2026-08-31 06:33:30,452.452 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:33:30,492.492 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:33:30,683.683 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:33:30,685.685 INFO    ] No camera update needed
[2026-08-31 06:33:30,688.688 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:33:30,690.690 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:33:30,695.695 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:33:30,701.701 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:33:32,747.747 INFO    ] ================================================
[2026-08-31 06:33:32,763.763 INFO    ] Launching Daemon at Mon Aug 31 06:33:32 IST 2026
[2026-08-31 06:33:32,776.776 INFO    ] ================================================
[2026-08-31 06:33:33,356.356 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:33:33
[2026-08-31 06:33:33,945.945 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:33:34,218.218 INFO    ] Initializing speech engine...
[2026-08-31 06:33:34,227.227 INFO    ] 2026-08-31 06:33:34
[2026-08-31 06:33:34,489.489 INFO    ] 2026-08-31 06:33:34
[2026-08-31 06:33:34,547.547 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:33:34,780.780 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:33:34,785.785 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:33:35,006.006 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:33:35,046.046 INFO    ] time= 31/08/2026 06:33:35
[2026-08-31 06:33:35,053.053 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:33:35,071.071 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:33:35,185.185 INFO    ] No existing commands found in stream
[2026-08-31 06:33:40,213.213 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:33:40,216.216 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-08-31 06:33:44,211.211 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 06:33:44,214.214 INFO    ] Checking for system updates...
[2026-08-31 06:33:44,253.253 INFO    ] 200
[2026-08-31 06:33:44,256.256 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:33:44,316.316 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:33:44,318.318 INFO    ] No update needed
[2026-08-31 06:33:44,321.321 INFO    ] Checking for camera pi updates...
[2026-08-31 06:33:44,354.354 INFO    ] 200
[2026-08-31 06:33:44,357.357 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:33:44,397.397 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:33:44,468.468 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:33:44,471.471 INFO    ] No camera update needed
[2026-08-31 06:33:44,473.473 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:33:44,475.475 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:33:44,480.480 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:33:44,485.485 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:33:46,525.525 INFO    ] ================================================
[2026-08-31 06:33:46,540.540 INFO    ] Launching Daemon at Mon Aug 31 06:33:46 IST 2026
[2026-08-31 06:33:46,551.551 INFO    ] ================================================
[2026-08-31 06:33:47,214.214 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:33:47
[2026-08-31 06:33:47,896.896 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:33:48,205.205 INFO    ] Initializing speech engine...
[2026-08-31 06:33:48,213.213 INFO    ] 2026-08-31 06:33:48
[2026-08-31 06:33:48,494.494 INFO    ] 2026-08-31 06:33:48
[2026-08-31 06:33:48,547.547 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:33:48,777.777 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:33:48,787.787 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:33:48,922.922 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:33:48,971.971 INFO    ] time= 31/08/2026 06:33:48
[2026-08-31 06:33:49,031.031 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:33:49,061.061 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:33:49,174.174 INFO    ] No existing commands found in stream
[2026-08-31 06:33:54,199.199 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:33:54,202.202 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-08-31 06:33:55,940.940 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 06:33:55,943.943 INFO    ] Checking for system updates...
[2026-08-31 06:33:55,985.985 INFO    ] 200
[2026-08-31 06:33:55,989.989 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:33:56,043.043 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:33:56,045.045 INFO    ] No update needed
[2026-08-31 06:33:56,048.048 INFO    ] Checking for camera pi updates...
[2026-08-31 06:33:56,082.082 INFO    ] 200
[2026-08-31 06:33:56,085.085 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:33:56,125.125 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:33:56,223.223 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:33:56,225.225 INFO    ] No camera update needed
[2026-08-31 06:33:56,228.228 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:33:56,230.230 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:33:56,236.236 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:33:56,241.241 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:33:58,281.281 INFO    ] ================================================
[2026-08-31 06:33:58,296.296 INFO    ] Launching Daemon at Mon Aug 31 06:33:58 IST 2026
[2026-08-31 06:33:58,307.307 INFO    ] ================================================
[2026-08-31 06:33:58,884.884 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:33:58
[2026-08-31 06:33:59,487.487 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:33:59,766.766 INFO    ] Initializing speech engine...
[2026-08-31 06:33:59,772.772 INFO    ] 2026-08-31 06:33:59
[2026-08-31 06:34:00,034.034 INFO    ] 2026-08-31 06:34:00
[2026-08-31 06:34:00,091.091 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:34:00,369.369 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:34:00,377.377 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:34:00,557.557 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:34:00,578.578 INFO    ] time= 31/08/2026 06:34:00
[2026-08-31 06:34:00,596.596 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:34:00,603.603 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:34:00,716.716 INFO    ] No existing commands found in stream
[2026-08-31 06:34:05,741.741 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:34:05,743.743 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-08-31 06:34:07,090.090 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 06:34:07,092.092 INFO    ] Checking for system updates...
[2026-08-31 06:34:07,128.128 INFO    ] 200
[2026-08-31 06:34:07,131.131 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:34:07,183.183 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:34:07,185.185 INFO    ] No update needed
[2026-08-31 06:34:07,187.187 INFO    ] Checking for camera pi updates...
[2026-08-31 06:34:07,227.227 INFO    ] 200
[2026-08-31 06:34:07,230.230 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:34:07,273.273 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:34:07,363.363 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:34:07,365.365 INFO    ] No camera update needed
[2026-08-31 06:34:07,368.368 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:34:07,370.370 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:34:07,376.376 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:34:07,381.381 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:34:09,428.428 INFO    ] ================================================
[2026-08-31 06:34:09,443.443 INFO    ] Launching Daemon at Mon Aug 31 06:34:09 IST 2026
[2026-08-31 06:34:09,454.454 INFO    ] ================================================
[2026-08-31 06:34:10,076.076 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:34:10
[2026-08-31 06:34:10,669.669 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:34:10,939.939 INFO    ] Initializing speech engine...
[2026-08-31 06:34:10,948.948 INFO    ] 2026-08-31 06:34:10
[2026-08-31 06:34:11,196.196 INFO    ] 2026-08-31 06:34:11
[2026-08-31 06:34:11,263.263 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:34:11,493.493 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:34:11,497.497 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:34:11,640.640 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:34:11,704.704 INFO    ] time= 31/08/2026 06:34:11
[2026-08-31 06:34:11,764.764 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:34:11,770.770 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:34:11,825.825 INFO    ] No existing commands found in stream
[2026-08-31 06:34:16,837.837 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:34:16,840.840 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-08-31 06:34:20,255.255 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 06:34:20,258.258 INFO    ] Checking for system updates...
[2026-08-31 06:34:20,296.296 INFO    ] 200
[2026-08-31 06:34:20,299.299 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:34:20,351.351 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:34:20,353.353 INFO    ] No update needed
[2026-08-31 06:34:20,356.356 INFO    ] Checking for camera pi updates...
[2026-08-31 06:34:20,389.389 INFO    ] 200
[2026-08-31 06:34:20,392.392 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:34:20,436.436 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:34:20,520.520 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:34:20,523.523 INFO    ] No camera update needed
[2026-08-31 06:34:20,525.525 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:34:20,528.528 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:34:20,533.533 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:34:20,538.538 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:34:22,579.579 INFO    ] ================================================
[2026-08-31 06:34:22,595.595 INFO    ] Launching Daemon at Mon Aug 31 06:34:22 IST 2026
[2026-08-31 06:34:22,608.608 INFO    ] ================================================
[2026-08-31 06:34:23,250.250 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:34:23
[2026-08-31 06:34:23,911.911 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:34:24,213.213 INFO    ] Initializing speech engine...
[2026-08-31 06:34:24,221.221 INFO    ] 2026-08-31 06:34:24
[2026-08-31 06:34:24,510.510 INFO    ] 2026-08-31 06:34:24
[2026-08-31 06:34:24,556.556 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:34:24,786.786 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:34:24,791.791 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:34:24,929.929 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:34:24,994.994 INFO    ] time= 31/08/2026 06:34:24
[2026-08-31 06:34:25,059.059 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:34:25,066.066 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:34:25,190.190 INFO    ] No existing commands found in stream
[2026-08-31 06:34:30,207.207 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:34:30,211.211 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-08-31 06:34:34,498.498 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 06:34:34,501.501 INFO    ] Checking for system updates...
[2026-08-31 06:34:34,540.540 INFO    ] 200
[2026-08-31 06:34:34,543.543 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:34:34,594.594 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:34:34,596.596 INFO    ] No update needed
[2026-08-31 06:34:34,599.599 INFO    ] Checking for camera pi updates...
[2026-08-31 06:34:34,633.633 INFO    ] 200
[2026-08-31 06:34:34,635.635 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:34:34,679.679 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:34:34,762.762 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:34:34,764.764 INFO    ] No camera update needed
[2026-08-31 06:34:34,767.767 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:34:34,769.769 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:34:34,774.774 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:34:34,779.779 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:34:36,821.821 INFO    ] ================================================
[2026-08-31 06:34:36,836.836 INFO    ] Launching Daemon at Mon Aug 31 06:34:36 IST 2026
[2026-08-31 06:34:36,847.847 INFO    ] ================================================
[2026-08-31 06:34:37,427.427 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:34:37
[2026-08-31 06:34:38,024.024 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:34:38,299.299 INFO    ] Initializing speech engine...
[2026-08-31 06:34:38,308.308 INFO    ] 2026-08-31 06:34:38
[2026-08-31 06:34:38,567.567 INFO    ] 2026-08-31 06:34:38
[2026-08-31 06:34:38,597.597 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:34:38,841.841 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:34:38,850.850 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:34:38,990.990 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:34:39,060.060 INFO    ] time= 31/08/2026 06:34:39
[2026-08-31 06:34:39,113.113 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:34:39,119.119 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:34:39,239.239 INFO    ] No existing commands found in stream
[2026-08-31 06:34:44,269.269 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:34:44,272.272 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-08-31 06:34:47,953.953 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 06:34:47,955.955 INFO    ] Checking for system updates...
[2026-08-31 06:34:47,995.995 INFO    ] 200
[2026-08-31 06:34:47,997.997 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:34:48,050.050 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:34:48,052.052 INFO    ] No update needed
[2026-08-31 06:34:48,055.055 INFO    ] Checking for camera pi updates...
[2026-08-31 06:34:48,088.088 INFO    ] 200
[2026-08-31 06:34:48,091.091 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:34:48,142.142 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:34:48,234.234 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:34:48,236.236 INFO    ] No camera update needed
[2026-08-31 06:34:48,239.239 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:34:48,241.241 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:34:48,246.246 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:34:48,252.252 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:34:50,294.294 INFO    ] ================================================
[2026-08-31 06:34:50,310.310 INFO    ] Launching Daemon at Mon Aug 31 06:34:50 IST 2026
[2026-08-31 06:34:50,321.321 INFO    ] ================================================
[2026-08-31 06:34:50,903.903 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:34:50
[2026-08-31 06:34:51,501.501 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:34:51,778.778 INFO    ] Initializing speech engine...
[2026-08-31 06:34:51,787.787 INFO    ] 2026-08-31 06:34:51
[2026-08-31 06:34:52,046.046 INFO    ] 2026-08-31 06:34:52
[2026-08-31 06:34:52,100.100 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:34:52,328.328 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:34:52,333.333 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:34:52,565.565 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:34:52,591.591 INFO    ] time= 31/08/2026 06:34:52
[2026-08-31 06:34:52,605.605 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:34:52,615.615 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:34:52,723.723 INFO    ] No existing commands found in stream
[2026-08-31 06:34:57,757.757 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:34:57,760.760 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-08-31 06:34:59,850.850 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 06:34:59,853.853 INFO    ] Checking for system updates...
[2026-08-31 06:34:59,892.892 INFO    ] 200
[2026-08-31 06:34:59,895.895 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:34:59,953.953 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:34:59,955.955 INFO    ] No update needed
[2026-08-31 06:34:59,958.958 INFO    ] Checking for camera pi updates...
[2026-08-31 06:34:59,991.991 INFO    ] 200
[2026-08-31 06:34:59,993.993 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:35:00,033.033 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:35:00,118.118 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:35:00,120.120 INFO    ] No camera update needed
[2026-08-31 06:35:00,123.123 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:35:00,126.126 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:35:00,132.132 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:35:00,137.137 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:35:02,186.186 INFO    ] ================================================
[2026-08-31 06:35:02,217.217 INFO    ] Launching Daemon at Mon Aug 31 06:35:02 IST 2026
[2026-08-31 06:35:02,240.240 INFO    ] ================================================
[2026-08-31 06:35:02,888.888 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:35:02
[2026-08-31 06:35:03,556.556 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:35:03,872.872 INFO    ] Initializing speech engine...
[2026-08-31 06:35:03,880.880 INFO    ] 2026-08-31 06:35:03
[2026-08-31 06:35:04,155.155 INFO    ] 2026-08-31 06:35:04
[2026-08-31 06:35:04,200.200 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:35:04,424.424 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:35:04,429.429 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:35:04,632.632 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:35:04,685.685 INFO    ] time= 31/08/2026 06:35:04
[2026-08-31 06:35:04,692.692 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:35:04,706.706 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:35:04,825.825 INFO    ] No existing commands found in stream
[2026-08-31 06:35:09,851.851 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:35:09,854.854 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-08-31 06:35:13,528.528 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 06:35:13,531.531 INFO    ] Checking for system updates...
[2026-08-31 06:35:13,568.568 INFO    ] 200
[2026-08-31 06:35:13,570.570 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:35:13,626.626 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:35:13,628.628 INFO    ] No update needed
[2026-08-31 06:35:13,631.631 INFO    ] Checking for camera pi updates...
[2026-08-31 06:35:13,668.668 INFO    ] 200
[2026-08-31 06:35:13,670.670 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:35:13,711.711 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:35:13,804.804 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:35:13,807.807 INFO    ] No camera update needed
[2026-08-31 06:35:13,810.810 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:35:13,812.812 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:35:13,817.817 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:35:13,822.822 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:35:15,863.863 INFO    ] ================================================
[2026-08-31 06:35:15,878.878 INFO    ] Launching Daemon at Mon Aug 31 06:35:15 IST 2026
[2026-08-31 06:35:15,889.889 INFO    ] ================================================
[2026-08-31 06:35:16,531.531 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:35:16
[2026-08-31 06:35:17,185.185 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:35:17,484.484 INFO    ] Initializing speech engine...
[2026-08-31 06:35:17,496.496 INFO    ] 2026-08-31 06:35:17
[2026-08-31 06:35:17,772.772 INFO    ] 2026-08-31 06:35:17
[2026-08-31 06:35:17,816.816 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:35:18,064.064 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:35:18,082.082 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:35:18,288.288 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:35:18,303.303 INFO    ] time= 31/08/2026 06:35:18
[2026-08-31 06:35:18,321.321 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:35:18,338.338 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:35:18,455.455 INFO    ] No existing commands found in stream
[2026-08-31 06:35:23,479.479 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:35:23,482.482 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-08-31 06:35:27,971.971 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 06:35:27,973.973 INFO    ] Checking for system updates...
[2026-08-31 06:35:28,012.012 INFO    ] 200
[2026-08-31 06:35:28,014.014 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:35:28,071.071 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:35:28,074.074 INFO    ] No update needed
[2026-08-31 06:35:28,076.076 INFO    ] Checking for camera pi updates...
[2026-08-31 06:35:28,109.109 INFO    ] 200
[2026-08-31 06:35:28,111.111 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:35:28,151.151 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:35:28,251.251 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:35:28,253.253 INFO    ] No camera update needed
[2026-08-31 06:35:28,256.256 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:35:28,258.258 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:35:28,263.263 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:35:28,268.268 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:35:30,310.310 INFO    ] ================================================
[2026-08-31 06:35:30,326.326 INFO    ] Launching Daemon at Mon Aug 31 06:35:30 IST 2026
[2026-08-31 06:35:30,336.336 INFO    ] ================================================
[2026-08-31 06:35:30,973.973 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:35:30
[2026-08-31 06:35:31,629.629 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:35:31,946.946 INFO    ] Initializing speech engine...
[2026-08-31 06:35:31,957.957 INFO    ] 2026-08-31 06:35:31
[2026-08-31 06:35:32,216.216 INFO    ] 2026-08-31 06:35:32
[2026-08-31 06:35:32,251.251 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:35:32,453.453 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:35:32,513.513 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:35:32,675.675 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:35:32,715.715 INFO    ] time= 31/08/2026 06:35:32
[2026-08-31 06:35:32,765.765 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:35:32,814.814 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:35:32,868.868 INFO    ] No existing commands found in stream
[2026-08-31 06:35:37,880.880 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:35:37,883.883 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-08-31 06:35:41,615.615 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 06:35:41,618.618 INFO    ] Checking for system updates...
[2026-08-31 06:35:41,670.670 INFO    ] 200
[2026-08-31 06:35:41,672.672 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-08-31 06:35:41,675.675 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-08-31 06:35:41,678.678 INFO    ] Checking for camera pi updates...
[2026-08-31 06:35:41,717.717 INFO    ] 200
[2026-08-31 06:35:41,720.720 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-08-31 06:35:41,722.722 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-08-31 06:35:41,725.725 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:35:41,728.728 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:35:41,734.734 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:35:41,739.739 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:35:43,779.779 INFO    ] ================================================
[2026-08-31 06:35:43,805.805 INFO    ] Launching Daemon at Mon Aug 31 06:35:43 IST 2026
[2026-08-31 06:35:43,817.817 INFO    ] ================================================
[2026-08-31 06:35:44,546.546 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:35:44
[2026-08-31 06:35:45,268.268 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:35:45,591.591 INFO    ] Initializing speech engine...
[2026-08-31 06:35:45,606.606 INFO    ] 2026-08-31 06:35:45
[2026-08-31 06:35:45,938.938 INFO    ] 2026-08-31 06:35:45
[2026-08-31 06:35:46,029.029 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:35:46,238.238 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:35:46,257.257 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:35:46,439.439 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:35:46,507.507 INFO    ] time= 31/08/2026 06:35:46
[2026-08-31 06:35:46,518.518 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:35:46,543.543 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:35:46,665.665 INFO    ] No existing commands found in stream
[2026-08-31 06:35:51,697.697 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:35:51,700.700 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-08-31 06:35:53,030.030 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 06:35:53,033.033 INFO    ] Checking for system updates...
[2026-08-31 06:35:53,071.071 INFO    ] 200
[2026-08-31 06:35:53,074.074 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:35:53,135.135 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:35:53,138.138 INFO    ] No update needed
[2026-08-31 06:35:53,141.141 INFO    ] Checking for camera pi updates...
[2026-08-31 06:35:53,176.176 INFO    ] 200
[2026-08-31 06:35:53,179.179 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:35:53,221.221 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:35:53,304.304 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:35:53,307.307 INFO    ] No camera update needed
[2026-08-31 06:35:53,310.310 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:35:53,313.313 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:35:53,319.319 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:35:53,325.325 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:35:55,370.370 INFO    ] ================================================
[2026-08-31 06:35:55,389.389 INFO    ] Launching Daemon at Mon Aug 31 06:35:55 IST 2026
[2026-08-31 06:35:55,402.402 INFO    ] ================================================
[2026-08-31 06:35:55,998.998 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:35:55
[2026-08-31 06:35:56,624.624 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:35:56,879.879 INFO    ] Initializing speech engine...
[2026-08-31 06:35:56,902.902 INFO    ] 2026-08-31 06:35:56
[2026-08-31 06:35:57,174.174 INFO    ] 2026-08-31 06:35:57
[2026-08-31 06:35:57,249.249 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:35:57,493.493 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:35:57,502.502 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:35:57,692.692 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:35:57,746.746 INFO    ] time= 31/08/2026 06:35:57
[2026-08-31 06:35:57,772.772 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:35:57,779.779 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:35:57,913.913 INFO    ] No existing commands found in stream
[2026-08-31 06:36:02,941.941 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:36:02,944.944 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-08-31 06:36:06,248.248 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 06:36:06,250.250 INFO    ] Checking for system updates...
[2026-08-31 06:36:06,291.291 INFO    ] 200
[2026-08-31 06:36:06,293.293 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:36:06,347.347 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:36:06,350.350 INFO    ] No update needed
[2026-08-31 06:36:06,352.352 INFO    ] Checking for camera pi updates...
[2026-08-31 06:36:06,386.386 INFO    ] 200
[2026-08-31 06:36:06,388.388 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:36:06,435.435 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:36:06,514.514 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:36:06,516.516 INFO    ] No camera update needed
[2026-08-31 06:36:06,519.519 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:36:06,521.521 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:36:06,527.527 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:36:06,532.532 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:36:08,573.573 INFO    ] ================================================
[2026-08-31 06:36:08,589.589 INFO    ] Launching Daemon at Mon Aug 31 06:36:08 IST 2026
[2026-08-31 06:36:08,600.600 INFO    ] ================================================
[2026-08-31 06:36:09,185.185 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:36:09
[2026-08-31 06:36:09,770.770 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:36:10,043.043 INFO    ] Initializing speech engine...
[2026-08-31 06:36:10,051.051 INFO    ] 2026-08-31 06:36:10
[2026-08-31 06:36:10,303.303 INFO    ] 2026-08-31 06:36:10
[2026-08-31 06:36:10,337.337 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:36:10,538.538 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:36:10,571.571 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:36:10,745.745 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:36:10,804.804 INFO    ] time= 31/08/2026 06:36:10
[2026-08-31 06:36:10,859.859 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:36:10,882.882 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:36:10,988.988 INFO    ] No existing commands found in stream
[2026-08-31 06:36:16,009.009 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:36:16,011.011 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-08-31 06:36:16,509.509 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 06:36:16,512.512 INFO    ] Checking for system updates...
[2026-08-31 06:36:16,549.549 INFO    ] 200
[2026-08-31 06:36:16,552.552 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:36:16,605.605 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:36:16,608.608 INFO    ] No update needed
[2026-08-31 06:36:16,611.611 INFO    ] Checking for camera pi updates...
[2026-08-31 06:36:16,646.646 INFO    ] 200
[2026-08-31 06:36:16,649.649 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:36:16,690.690 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:36:16,794.794 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:36:16,797.797 INFO    ] No camera update needed
[2026-08-31 06:36:16,800.800 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:36:16,803.803 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:36:16,809.809 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:36:16,815.815 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:36:18,859.859 INFO    ] ================================================
[2026-08-31 06:36:18,874.874 INFO    ] Launching Daemon at Mon Aug 31 06:36:18 IST 2026
[2026-08-31 06:36:18,886.886 INFO    ] ================================================
[2026-08-31 06:36:19,450.450 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:36:19
[2026-08-31 06:36:20,034.034 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:36:20,282.282 INFO    ] Initializing speech engine...
[2026-08-31 06:36:20,292.292 INFO    ] 2026-08-31 06:36:20
[2026-08-31 06:36:20,614.614 INFO    ] 2026-08-31 06:36:20
[2026-08-31 06:36:20,642.642 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:36:20,856.856 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:36:20,870.870 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:36:21,024.024 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:36:21,031.031 INFO    ] time= 31/08/2026 06:36:21
[2026-08-31 06:36:21,052.052 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:36:21,099.099 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:36:21,230.230 INFO    ] No existing commands found in stream
[2026-08-31 06:36:26,241.241 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:36:26,244.244 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-08-31 06:36:30,208.208 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 06:36:30,210.210 INFO    ] Checking for system updates...
[2026-08-31 06:36:30,246.246 INFO    ] 200
[2026-08-31 06:36:30,249.249 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:36:30,301.301 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:36:30,304.304 INFO    ] No update needed
[2026-08-31 06:36:30,306.306 INFO    ] Checking for camera pi updates...
[2026-08-31 06:36:30,346.346 INFO    ] 200
[2026-08-31 06:36:30,348.348 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:36:30,390.390 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:36:30,470.470 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:36:30,472.472 INFO    ] No camera update needed
[2026-08-31 06:36:30,475.475 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:36:30,477.477 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:36:30,482.482 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:36:30,487.487 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:36:32,532.532 INFO    ] ================================================
[2026-08-31 06:36:32,549.549 INFO    ] Launching Daemon at Mon Aug 31 06:36:32 IST 2026
[2026-08-31 06:36:32,561.561 INFO    ] ================================================
[2026-08-31 06:36:33,156.156 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:36:33
[2026-08-31 06:36:33,772.772 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:36:34,051.051 INFO    ] Initializing speech engine...
[2026-08-31 06:36:34,059.059 INFO    ] 2026-08-31 06:36:34
[2026-08-31 06:36:34,320.320 INFO    ] 2026-08-31 06:36:34
[2026-08-31 06:36:34,374.374 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:36:34,598.598 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:36:34,607.607 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:36:34,782.782 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:36:34,852.852 INFO    ] time= 31/08/2026 06:36:34
[2026-08-31 06:36:34,872.872 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:36:34,891.891 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:36:35,006.006 INFO    ] No existing commands found in stream
[2026-08-31 06:36:40,030.030 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:36:40,033.033 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-08-31 06:36:44,086.086 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 06:36:44,090.090 INFO    ] Checking for system updates...
[2026-08-31 06:36:44,126.126 INFO    ] 200
[2026-08-31 06:36:44,129.129 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:36:44,182.182 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:36:44,184.184 INFO    ] No update needed
[2026-08-31 06:36:44,187.187 INFO    ] Checking for camera pi updates...
[2026-08-31 06:36:44,225.225 INFO    ] 200
[2026-08-31 06:36:44,227.227 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:36:44,272.272 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:36:44,376.376 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:36:44,378.378 INFO    ] No camera update needed
[2026-08-31 06:36:44,381.381 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:36:44,383.383 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:36:44,389.389 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:36:44,394.394 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:36:46,435.435 INFO    ] ================================================
[2026-08-31 06:36:46,450.450 INFO    ] Launching Daemon at Mon Aug 31 06:36:46 IST 2026
[2026-08-31 06:36:46,462.462 INFO    ] ================================================
[2026-08-31 06:36:47,028.028 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:36:47
[2026-08-31 06:36:47,618.618 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:36:47,891.891 INFO    ] Initializing speech engine...
[2026-08-31 06:36:47,901.901 INFO    ] 2026-08-31 06:36:47
[2026-08-31 06:36:48,162.162 INFO    ] 2026-08-31 06:36:48
[2026-08-31 06:36:48,192.192 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:36:48,358.358 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:36:48,369.369 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:36:48,514.514 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:36:48,519.519 INFO    ] time= 31/08/2026 06:36:48
[2026-08-31 06:36:48,527.527 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:36:48,576.576 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:36:48,714.714 INFO    ] No existing commands found in stream
[2026-08-31 06:36:53,725.725 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:36:53,728.728 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-08-31 06:36:54,914.914 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 06:36:54,917.917 INFO    ] Checking for system updates...
[2026-08-31 06:36:54,954.954 INFO    ] 200
[2026-08-31 06:36:54,956.956 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:36:55,011.011 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:36:55,014.014 INFO    ] No update needed
[2026-08-31 06:36:55,016.016 INFO    ] Checking for camera pi updates...
[2026-08-31 06:36:55,051.051 INFO    ] 200
[2026-08-31 06:36:55,054.054 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:36:55,095.095 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:36:55,204.204 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:36:55,206.206 INFO    ] No camera update needed
[2026-08-31 06:36:55,210.210 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:36:55,212.212 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:36:55,218.218 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:36:55,224.224 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:36:57,267.267 INFO    ] ================================================
[2026-08-31 06:36:57,282.282 INFO    ] Launching Daemon at Mon Aug 31 06:36:57 IST 2026
[2026-08-31 06:36:57,293.293 INFO    ] ================================================
[2026-08-31 06:36:57,946.946 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:36:57
[2026-08-31 06:36:58,584.584 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:36:58,848.848 INFO    ] Initializing speech engine...
[2026-08-31 06:36:58,860.860 INFO    ] 2026-08-31 06:36:58
[2026-08-31 06:36:59,109.109 INFO    ] 2026-08-31 06:36:59
[2026-08-31 06:36:59,145.145 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:36:59,346.346 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:36:59,405.405 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:36:59,548.548 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:36:59,624.624 INFO    ] time= 31/08/2026 06:36:59
[2026-08-31 06:36:59,678.678 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:36:59,684.684 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:36:59,800.800 INFO    ] No existing commands found in stream
[2026-08-31 06:37:04,822.822 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:37:04,825.825 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-08-31 06:37:07,890.890 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 06:37:07,892.892 INFO    ] Checking for system updates...
[2026-08-31 06:37:07,928.928 INFO    ] 200
[2026-08-31 06:37:07,930.930 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:37:07,989.989 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:37:07,992.992 INFO    ] No update needed
[2026-08-31 06:37:07,994.994 INFO    ] Checking for camera pi updates...
[2026-08-31 06:37:08,029.029 INFO    ] 200
[2026-08-31 06:37:08,032.032 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:37:08,078.078 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:37:08,170.170 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:37:08,173.173 INFO    ] No camera update needed
[2026-08-31 06:37:08,175.175 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:37:08,178.178 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:37:08,184.184 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:37:08,190.190 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:37:10,233.233 INFO    ] ================================================
[2026-08-31 06:37:10,248.248 INFO    ] Launching Daemon at Mon Aug 31 06:37:10 IST 2026
[2026-08-31 06:37:10,259.259 INFO    ] ================================================
[2026-08-31 06:37:10,830.830 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:37:10
[2026-08-31 06:37:11,420.420 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:37:11,682.682 INFO    ] Initializing speech engine...
[2026-08-31 06:37:11,701.701 INFO    ] 2026-08-31 06:37:11
[2026-08-31 06:37:11,953.953 INFO    ] 2026-08-31 06:37:11
[2026-08-31 06:37:11,989.989 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:37:12,187.187 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:37:12,209.209 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:37:12,392.392 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:37:12,414.414 INFO    ] time= 31/08/2026 06:37:12
[2026-08-31 06:37:12,478.478 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:37:12,531.531 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:37:12,595.595 INFO    ] No existing commands found in stream
[2026-08-31 06:37:17,627.627 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:37:17,630.630 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-08-31 06:37:21,434.434 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 06:37:21,437.437 INFO    ] Checking for system updates...
[2026-08-31 06:37:21,472.472 INFO    ] 200
[2026-08-31 06:37:21,475.475 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:37:21,533.533 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:37:21,535.535 INFO    ] No update needed
[2026-08-31 06:37:21,538.538 INFO    ] Checking for camera pi updates...
[2026-08-31 06:37:21,575.575 INFO    ] 200
[2026-08-31 06:37:21,578.578 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:37:21,620.620 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:37:21,718.718 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:37:21,721.721 INFO    ] No camera update needed
[2026-08-31 06:37:21,723.723 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:37:21,726.726 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:37:21,732.732 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:37:21,738.738 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:37:23,781.781 INFO    ] ================================================
[2026-08-31 06:37:23,797.797 INFO    ] Launching Daemon at Mon Aug 31 06:37:23 IST 2026
[2026-08-31 06:37:23,808.808 INFO    ] ================================================
[2026-08-31 06:37:24,481.481 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:37:24
[2026-08-31 06:37:25,170.170 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:37:25,483.483 INFO    ] Initializing speech engine...
[2026-08-31 06:37:25,495.495 INFO    ] 2026-08-31 06:37:25
[2026-08-31 06:37:25,773.773 INFO    ] 2026-08-31 06:37:25
[2026-08-31 06:37:25,832.832 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:37:26,318.318 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:37:26,338.338 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:37:26,565.565 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:37:26,609.609 INFO    ] time= 31/08/2026 06:37:26
[2026-08-31 06:37:26,669.669 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:37:26,730.730 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:37:26,893.893 INFO    ] No existing commands found in stream
[2026-08-31 06:37:31,920.920 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:37:31,928.928 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-08-31 06:37:34,450.450 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 06:37:34,452.452 INFO    ] Checking for system updates...
[2026-08-31 06:37:34,488.488 INFO    ] 200
[2026-08-31 06:37:34,491.491 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:37:34,544.544 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:37:34,546.546 INFO    ] No update needed
[2026-08-31 06:37:34,549.549 INFO    ] Checking for camera pi updates...
[2026-08-31 06:37:34,586.586 INFO    ] 200
[2026-08-31 06:37:34,588.588 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:37:34,629.629 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:37:34,824.824 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:37:34,827.827 INFO    ] No camera update needed
[2026-08-31 06:37:34,829.829 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:37:34,831.831 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:37:34,837.837 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:37:34,842.842 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:37:36,881.881 INFO    ] ================================================
[2026-08-31 06:37:36,903.903 INFO    ] Launching Daemon at Mon Aug 31 06:37:36 IST 2026
[2026-08-31 06:37:36,914.914 INFO    ] ================================================
[2026-08-31 06:37:37,479.479 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:37:37
[2026-08-31 06:37:38,061.061 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:37:38,309.309 INFO    ] Initializing speech engine...
[2026-08-31 06:37:38,314.314 INFO    ] 2026-08-31 06:37:38
[2026-08-31 06:37:38,590.590 INFO    ] 2026-08-31 06:37:38
[2026-08-31 06:37:38,625.625 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:37:38,882.882 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:37:38,891.891 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:37:39,117.117 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:37:39,155.155 INFO    ] time= 31/08/2026 06:37:39
[2026-08-31 06:37:39,161.161 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:37:39,182.182 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:37:39,315.315 INFO    ] No existing commands found in stream
[2026-08-31 06:37:44,334.334 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:37:44,336.336 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-08-31 06:37:48,249.249 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 06:37:48,252.252 INFO    ] Checking for system updates...
[2026-08-31 06:37:48,294.294 INFO    ] 200
[2026-08-31 06:37:48,297.297 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:37:48,356.356 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:37:48,359.359 INFO    ] No update needed
[2026-08-31 06:37:48,362.362 INFO    ] Checking for camera pi updates...
[2026-08-31 06:37:48,396.396 INFO    ] 200
[2026-08-31 06:37:48,398.398 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:37:48,438.438 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:37:48,529.529 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:37:48,532.532 INFO    ] No camera update needed
[2026-08-31 06:37:48,534.534 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:37:48,536.536 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:37:48,542.542 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:37:48,546.546 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:37:50,588.588 INFO    ] ================================================
[2026-08-31 06:37:50,603.603 INFO    ] Launching Daemon at Mon Aug 31 06:37:50 IST 2026
[2026-08-31 06:37:50,614.614 INFO    ] ================================================
[2026-08-31 06:37:51,198.198 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:37:51
[2026-08-31 06:37:51,802.802 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:37:52,081.081 INFO    ] Initializing speech engine...
[2026-08-31 06:37:52,088.088 INFO    ] 2026-08-31 06:37:52
[2026-08-31 06:37:52,348.348 INFO    ] 2026-08-31 06:37:52
[2026-08-31 06:37:52,401.401 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:37:52,629.629 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:37:52,635.635 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:37:52,766.766 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:37:52,821.821 INFO    ] time= 31/08/2026 06:37:52
[2026-08-31 06:37:52,880.880 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:37:52,897.897 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:37:53,019.019 INFO    ] No existing commands found in stream
[2026-08-31 06:37:58,044.044 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:37:58,047.047 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-08-31 06:38:00,042.042 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 06:38:00,045.045 INFO    ] Checking for system updates...
[2026-08-31 06:38:00,085.085 INFO    ] 200
[2026-08-31 06:38:00,088.088 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:38:00,149.149 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:38:00,152.152 INFO    ] No update needed
[2026-08-31 06:38:00,154.154 INFO    ] Checking for camera pi updates...
[2026-08-31 06:38:00,188.188 INFO    ] 200
[2026-08-31 06:38:00,191.191 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:38:00,231.231 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:38:00,310.310 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:38:00,312.312 INFO    ] No camera update needed
[2026-08-31 06:38:00,314.314 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:38:00,317.317 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:38:00,322.322 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:38:00,327.327 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:38:02,368.368 INFO    ] ================================================
[2026-08-31 06:38:02,389.389 INFO    ] Launching Daemon at Mon Aug 31 06:38:02 IST 2026
[2026-08-31 06:38:02,405.405 INFO    ] ================================================
[2026-08-31 06:38:03,053.053 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:38:03
[2026-08-31 06:38:03,725.725 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:38:03,994.994 INFO    ] Initializing speech engine...
[2026-08-31 06:38:04,003.003 INFO    ] 2026-08-31 06:38:03
[2026-08-31 06:38:04,254.254 INFO    ] 2026-08-31 06:38:04
[2026-08-31 06:38:04,288.288 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:38:04,465.465 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:38:04,478.478 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:38:04,623.623 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:38:04,632.632 INFO    ] time= 31/08/2026 06:38:04
[2026-08-31 06:38:04,638.638 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:38:04,689.689 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:38:04,806.806 INFO    ] No existing commands found in stream
[2026-08-31 06:38:09,836.836 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:38:09,839.839 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-08-31 06:38:12,938.938 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 06:38:12,941.941 INFO    ] Checking for system updates...
[2026-08-31 06:38:12,977.977 INFO    ] 200
[2026-08-31 06:38:12,979.979 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:38:13,039.039 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:38:13,041.041 INFO    ] No update needed
[2026-08-31 06:38:13,043.043 INFO    ] Checking for camera pi updates...
[2026-08-31 06:38:13,077.077 INFO    ] 200
[2026-08-31 06:38:13,079.079 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:38:13,120.120 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:38:13,220.220 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:38:13,222.222 INFO    ] No camera update needed
[2026-08-31 06:38:13,225.225 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:38:13,227.227 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:38:13,232.232 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:38:13,237.237 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:38:15,279.279 INFO    ] ================================================
[2026-08-31 06:38:15,294.294 INFO    ] Launching Daemon at Mon Aug 31 06:38:15 IST 2026
[2026-08-31 06:38:15,305.305 INFO    ] ================================================
[2026-08-31 06:38:15,884.884 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:38:15
[2026-08-31 06:38:16,479.479 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:38:16,757.757 INFO    ] Initializing speech engine...
[2026-08-31 06:38:16,762.762 INFO    ] 2026-08-31 06:38:16
[2026-08-31 06:38:17,024.024 INFO    ] 2026-08-31 06:38:17
[2026-08-31 06:38:17,078.078 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:38:17,306.306 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:38:17,312.312 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:38:17,442.442 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:38:17,489.489 INFO    ] time= 31/08/2026 06:38:17
[2026-08-31 06:38:17,549.549 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:38:17,575.575 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:38:17,714.714 INFO    ] No existing commands found in stream
[2026-08-31 06:38:22,735.735 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:38:22,738.738 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-08-31 06:38:23,647.647 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 06:38:23,650.650 INFO    ] Checking for system updates...
[2026-08-31 06:38:23,686.686 INFO    ] 200
[2026-08-31 06:38:23,689.689 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:38:23,748.748 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:38:23,751.751 INFO    ] No update needed
[2026-08-31 06:38:23,754.754 INFO    ] Checking for camera pi updates...
[2026-08-31 06:38:23,792.792 INFO    ] 200
[2026-08-31 06:38:23,795.795 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:38:23,840.840 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:38:23,924.924 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:38:23,926.926 INFO    ] No camera update needed
[2026-08-31 06:38:23,929.929 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:38:23,931.931 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:38:23,937.937 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:38:23,942.942 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:38:25,983.983 INFO    ] ================================================
[2026-08-31 06:38:26,998.998 INFO    ] Launching Daemon at Mon Aug 31 06:38:25 IST 2026
[2026-08-31 06:38:26,010.010 INFO    ] ================================================
[2026-08-31 06:38:26,580.580 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:38:26
[2026-08-31 06:38:27,170.170 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:38:27,437.437 INFO    ] Initializing speech engine...
[2026-08-31 06:38:27,451.451 INFO    ] 2026-08-31 06:38:27
[2026-08-31 06:38:27,739.739 INFO    ] 2026-08-31 06:38:27
[2026-08-31 06:38:27,779.779 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:38:28,001.001 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:38:28,045.045 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:38:28,231.231 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:38:28,279.279 INFO    ] time= 31/08/2026 06:38:28
[2026-08-31 06:38:28,318.318 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:38:28,378.378 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:38:28,520.520 INFO    ] No existing commands found in stream
[2026-08-31 06:38:33,550.550 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:38:33,553.553 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-08-31 06:38:36,569.569 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 06:38:36,571.571 INFO    ] Checking for system updates...
[2026-08-31 06:38:36,607.607 INFO    ] 200
[2026-08-31 06:38:36,609.609 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:38:36,664.664 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:38:36,666.666 INFO    ] No update needed
[2026-08-31 06:38:36,669.669 INFO    ] Checking for camera pi updates...
[2026-08-31 06:38:36,702.702 INFO    ] 200
[2026-08-31 06:38:36,705.705 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:38:36,745.745 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:38:36,825.825 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:38:36,828.828 INFO    ] No camera update needed
[2026-08-31 06:38:36,830.830 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:38:36,833.833 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:38:36,838.838 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:38:36,843.843 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:38:38,883.883 INFO    ] ================================================
[2026-08-31 06:38:38,967.967 INFO    ] Launching Daemon at Mon Aug 31 06:38:38 IST 2026
[2026-08-31 06:38:38,978.978 INFO    ] ================================================
[2026-08-31 06:38:39,560.560 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:38:39
[2026-08-31 06:38:40,158.158 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:38:40,432.432 INFO    ] Initializing speech engine...
[2026-08-31 06:38:40,442.442 INFO    ] 2026-08-31 06:38:40
[2026-08-31 06:38:40,704.704 INFO    ] 2026-08-31 06:38:40
[2026-08-31 06:38:40,758.758 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:38:40,985.985 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:38:40,991.991 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:38:41,202.202 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:38:41,247.247 INFO    ] time= 31/08/2026 06:38:41
[2026-08-31 06:38:41,253.253 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:38:41,272.272 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:38:41,381.381 INFO    ] No existing commands found in stream
[2026-08-31 06:38:46,406.406 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:38:46,409.409 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-08-31 06:38:50,007.007 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 06:38:50,009.009 INFO    ] Checking for system updates...
[2026-08-31 06:38:50,049.049 INFO    ] 200
[2026-08-31 06:38:50,051.051 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:38:50,757.757 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:38:50,760.760 INFO    ] No update needed
[2026-08-31 06:38:50,762.762 INFO    ] Checking for camera pi updates...
[2026-08-31 06:38:50,796.796 INFO    ] 200
[2026-08-31 06:38:50,799.799 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:38:50,844.844 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:38:50,933.933 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:38:50,935.935 INFO    ] No camera update needed
[2026-08-31 06:38:50,938.938 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:38:50,940.940 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:38:50,946.946 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:38:50,951.951 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:38:52,990.990 INFO    ] ================================================
[2026-08-31 06:38:53,005.005 INFO    ] Launching Daemon at Mon Aug 31 06:38:53 IST 2026
[2026-08-31 06:38:53,016.016 INFO    ] ================================================
[2026-08-31 06:38:53,598.598 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:38:53
[2026-08-31 06:38:54,196.196 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:38:54,475.475 INFO    ] Initializing speech engine...
[2026-08-31 06:38:54,483.483 INFO    ] 2026-08-31 06:38:54
[2026-08-31 06:38:54,749.749 INFO    ] 2026-08-31 06:38:54
[2026-08-31 06:38:54,814.814 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:38:55,066.066 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:38:55,076.076 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:38:55,231.231 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:38:55,272.272 INFO    ] time= 31/08/2026 06:38:55
[2026-08-31 06:38:55,326.326 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:38:55,380.380 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:38:55,515.515 INFO    ] No existing commands found in stream
[2026-08-31 06:39:00,538.538 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:39:00,541.541 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-08-31 06:39:01,030.030 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 06:39:01,033.033 INFO    ] Checking for system updates...
[2026-08-31 06:39:01,073.073 INFO    ] 200
[2026-08-31 06:39:01,076.076 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:39:01,131.131 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:39:01,133.133 INFO    ] No update needed
[2026-08-31 06:39:01,136.136 INFO    ] Checking for camera pi updates...
[2026-08-31 06:39:01,176.176 INFO    ] 200
[2026-08-31 06:39:01,179.179 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:39:01,234.234 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:39:01,300.300 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:39:01,303.303 INFO    ] No camera update needed
[2026-08-31 06:39:01,305.305 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:39:01,307.307 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:39:01,313.313 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:39:01,318.318 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:39:03,363.363 INFO    ] ================================================
[2026-08-31 06:39:03,382.382 INFO    ] Launching Daemon at Mon Aug 31 06:39:03 IST 2026
[2026-08-31 06:39:03,393.393 INFO    ] ================================================
[2026-08-31 06:39:03,996.996 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:39:03
[2026-08-31 06:39:04,598.598 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:39:04,857.857 INFO    ] Initializing speech engine...
[2026-08-31 06:39:04,866.866 INFO    ] 2026-08-31 06:39:04
[2026-08-31 06:39:05,159.159 INFO    ] 2026-08-31 06:39:05
[2026-08-31 06:39:05,198.198 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:39:05,393.393 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:39:05,407.407 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:39:05,565.565 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:39:05,574.574 INFO    ] time= 31/08/2026 06:39:05
[2026-08-31 06:39:05,580.580 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:39:05,588.588 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:39:05,702.702 INFO    ] No existing commands found in stream
[2026-08-31 06:39:10,723.723 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:39:10,726.726 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-08-31 06:39:12,612.612 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 06:39:12,614.614 INFO    ] Checking for system updates...
[2026-08-31 06:39:12,649.649 INFO    ] 200
[2026-08-31 06:39:12,652.652 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:39:12,704.704 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:39:12,707.707 INFO    ] No update needed
[2026-08-31 06:39:12,709.709 INFO    ] Checking for camera pi updates...
[2026-08-31 06:39:12,746.746 INFO    ] 200
[2026-08-31 06:39:12,749.749 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:39:12,790.790 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:39:12,869.869 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:39:12,872.872 INFO    ] No camera update needed
[2026-08-31 06:39:12,874.874 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:39:12,876.876 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:39:12,882.882 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:39:12,887.887 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:39:14,926.926 INFO    ] ================================================
[2026-08-31 06:39:14,941.941 INFO    ] Launching Daemon at Mon Aug 31 06:39:14 IST 2026
[2026-08-31 06:39:14,951.951 INFO    ] ================================================
[2026-08-31 06:39:15,581.581 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:39:15
[2026-08-31 06:39:16,229.229 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:39:16,527.527 INFO    ] Initializing speech engine...
[2026-08-31 06:39:16,542.542 INFO    ] 2026-08-31 06:39:16
[2026-08-31 06:39:16,808.808 INFO    ] 2026-08-31 06:39:16
[2026-08-31 06:39:16,862.862 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:39:17,089.089 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:39:17,096.096 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:39:17,332.332 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:39:17,355.355 INFO    ] time= 31/08/2026 06:39:17
[2026-08-31 06:39:17,372.372 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:39:17,383.383 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:39:17,508.508 INFO    ] No existing commands found in stream
[2026-08-31 06:39:22,524.524 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:39:22,527.527 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-08-31 06:39:24,915.915 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 06:39:24,919.919 INFO    ] Checking for system updates...
[2026-08-31 06:39:24,958.958 INFO    ] 200
[2026-08-31 06:39:24,961.961 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:39:25,013.013 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:39:25,016.016 INFO    ] No update needed
[2026-08-31 06:39:25,019.019 INFO    ] Checking for camera pi updates...
[2026-08-31 06:39:25,056.056 INFO    ] 200
[2026-08-31 06:39:25,059.059 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:39:25,104.104 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:39:25,185.185 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:39:25,188.188 INFO    ] No camera update needed
[2026-08-31 06:39:25,191.191 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:39:25,194.194 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:39:25,200.200 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:39:25,205.205 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:39:27,247.247 INFO    ] ================================================
[2026-08-31 06:39:27,262.262 INFO    ] Launching Daemon at Mon Aug 31 06:39:27 IST 2026
[2026-08-31 06:39:27,272.272 INFO    ] ================================================
[2026-08-31 06:39:27,905.905 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:39:27
[2026-08-31 06:39:28,556.556 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:39:28,853.853 INFO    ] Initializing speech engine...
[2026-08-31 06:39:28,860.860 INFO    ] 2026-08-31 06:39:28
[2026-08-31 06:39:29,133.133 INFO    ] 2026-08-31 06:39:29
[2026-08-31 06:39:29,193.193 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:39:29,391.391 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:39:29,393.393 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:39:29,506.506 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:39:29,517.517 INFO    ] time= 31/08/2026 06:39:29
[2026-08-31 06:39:29,578.578 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:39:29,594.594 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:39:29,727.727 INFO    ] No existing commands found in stream
[2026-08-31 06:39:34,742.742 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:39:34,745.745 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-08-31 06:39:37,243.243 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 06:39:37,246.246 INFO    ] Checking for system updates...
[2026-08-31 06:39:37,285.285 INFO    ] 200
[2026-08-31 06:39:37,288.288 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:39:37,341.341 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:39:37,344.344 INFO    ] No update needed
[2026-08-31 06:39:37,346.346 INFO    ] Checking for camera pi updates...
[2026-08-31 06:39:37,381.381 INFO    ] 200
[2026-08-31 06:39:37,383.383 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:39:37,424.424 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:39:37,599.599 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:39:37,602.602 INFO    ] No camera update needed
[2026-08-31 06:39:37,604.604 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:39:37,607.607 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:39:37,613.613 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:39:37,618.618 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:39:39,659.659 INFO    ] ================================================
[2026-08-31 06:39:39,674.674 INFO    ] Launching Daemon at Mon Aug 31 06:39:39 IST 2026
[2026-08-31 06:39:39,685.685 INFO    ] ================================================
[2026-08-31 06:39:40,262.262 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:39:40
[2026-08-31 06:39:40,861.861 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:39:41,118.118 INFO    ] Initializing speech engine...
[2026-08-31 06:39:41,127.127 INFO    ] 2026-08-31 06:39:41
[2026-08-31 06:39:41,417.417 INFO    ] 2026-08-31 06:39:41
[2026-08-31 06:39:41,452.452 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:39:41,674.674 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:39:41,738.738 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:39:41,892.892 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:39:41,908.908 INFO    ] time= 31/08/2026 06:39:41
[2026-08-31 06:39:41,968.968 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:39:42,028.028 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:39:42,181.181 INFO    ] No existing commands found in stream
[2026-08-31 06:39:47,207.207 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:39:47,210.210 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-08-31 06:39:49,487.487 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 06:39:49,489.489 INFO    ] Checking for system updates...
[2026-08-31 06:39:49,525.525 INFO    ] 200
[2026-08-31 06:39:49,528.528 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:39:49,584.584 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:39:49,587.587 INFO    ] No update needed
[2026-08-31 06:39:49,589.589 INFO    ] Checking for camera pi updates...
[2026-08-31 06:39:49,623.623 INFO    ] 200
[2026-08-31 06:39:49,625.625 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:39:49,667.667 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:39:49,718.718 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:39:49,720.720 INFO    ] No camera update needed
[2026-08-31 06:39:49,723.723 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:39:49,725.725 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:39:49,730.730 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:39:49,735.735 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:39:51,775.775 INFO    ] ================================================
[2026-08-31 06:39:51,791.791 INFO    ] Launching Daemon at Mon Aug 31 06:39:51 IST 2026
[2026-08-31 06:39:51,801.801 INFO    ] ================================================
[2026-08-31 06:39:52,380.380 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:39:52
[2026-08-31 06:39:52,980.980 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:39:53,262.262 INFO    ] Initializing speech engine...
[2026-08-31 06:39:53,272.272 INFO    ] 2026-08-31 06:39:53
[2026-08-31 06:39:53,537.537 INFO    ] 2026-08-31 06:39:53
[2026-08-31 06:39:53,574.574 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:39:53,765.765 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:39:53,779.779 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:39:53,936.936 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:39:53,946.946 INFO    ] time= 31/08/2026 06:39:53
[2026-08-31 06:39:53,952.952 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:39:54,002.002 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:39:54,112.112 INFO    ] No existing commands found in stream
[2026-08-31 06:39:59,132.132 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:39:59,134.134 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-08-31 06:40:01,936.936 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 06:40:01,968.968 INFO    ] Checking for system updates...
[2026-08-31 06:40:02,138.138 INFO    ] 200
[2026-08-31 06:40:02,142.142 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:40:02,420.420 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:40:02,438.438 INFO    ] No update needed
[2026-08-31 06:40:02,442.442 INFO    ] Checking for camera pi updates...
[2026-08-31 06:40:02,542.542 INFO    ] 200
[2026-08-31 06:40:02,545.545 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:40:02,656.656 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:40:02,751.751 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:40:02,753.753 INFO    ] No camera update needed
[2026-08-31 06:40:02,756.756 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:40:02,759.759 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:40:02,765.765 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:40:02,772.772 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:40:04,812.812 INFO    ] ================================================
[2026-08-31 06:40:04,827.827 INFO    ] Launching Daemon at Mon Aug 31 06:40:04 IST 2026
[2026-08-31 06:40:04,838.838 INFO    ] ================================================
[2026-08-31 06:40:05,413.413 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:40:05
[2026-08-31 06:40:05,999.999 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:40:06,249.249 INFO    ] Initializing speech engine...
[2026-08-31 06:40:06,257.257 INFO    ] 2026-08-31 06:40:06
[2026-08-31 06:40:06,546.546 INFO    ] 2026-08-31 06:40:06
[2026-08-31 06:40:06,582.582 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:40:06,803.803 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:40:06,873.873 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:40:07,020.020 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:40:07,042.042 INFO    ] time= 31/08/2026 06:40:07
[2026-08-31 06:40:07,098.098 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:40:07,138.138 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:40:07,242.242 INFO    ] No existing commands found in stream
[2026-08-31 06:40:12,254.254 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:40:12,257.257 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-08-31 06:40:13,042.042 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 06:40:13,045.045 INFO    ] Checking for system updates...
[2026-08-31 06:40:13,081.081 INFO    ] 200
[2026-08-31 06:40:13,084.084 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:40:13,141.141 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:40:13,144.144 INFO    ] No update needed
[2026-08-31 06:40:13,146.146 INFO    ] Checking for camera pi updates...
[2026-08-31 06:40:13,180.180 INFO    ] 200
[2026-08-31 06:40:13,183.183 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:40:13,227.227 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:40:13,313.313 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:40:13,316.316 INFO    ] No camera update needed
[2026-08-31 06:40:13,318.318 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:40:13,320.320 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:40:13,326.326 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:40:13,331.331 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:40:15,371.371 INFO    ] ================================================
[2026-08-31 06:40:15,386.386 INFO    ] Launching Daemon at Mon Aug 31 06:40:15 IST 2026
[2026-08-31 06:40:15,397.397 INFO    ] ================================================
[2026-08-31 06:40:15,969.969 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:40:15
[2026-08-31 06:40:16,557.557 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:40:16,811.811 INFO    ] Initializing speech engine...
[2026-08-31 06:40:16,818.818 INFO    ] 2026-08-31 06:40:16
[2026-08-31 06:40:17,113.113 INFO    ] 2026-08-31 06:40:17
[2026-08-31 06:40:17,151.151 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:40:17,347.347 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:40:17,360.360 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:40:17,519.519 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:40:17,527.527 INFO    ] time= 31/08/2026 06:40:17
[2026-08-31 06:40:17,532.532 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:40:17,538.538 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:40:17,614.614 INFO    ] No existing commands found in stream
[2026-08-31 06:40:22,644.644 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:40:22,646.646 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-08-31 06:40:25,007.007 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 06:40:25,010.010 INFO    ] Checking for system updates...
[2026-08-31 06:40:25,047.047 INFO    ] 200
[2026-08-31 06:40:25,050.050 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:40:25,109.109 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:40:25,112.112 INFO    ] No update needed
[2026-08-31 06:40:25,115.115 INFO    ] Checking for camera pi updates...
[2026-08-31 06:40:25,149.149 INFO    ] 200
[2026-08-31 06:40:25,152.152 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:40:25,193.193 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:40:25,270.270 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:40:25,273.273 INFO    ] No camera update needed
[2026-08-31 06:40:25,275.275 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:40:25,278.278 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:40:25,284.284 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:40:25,290.290 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:40:27,332.332 INFO    ] ================================================
[2026-08-31 06:40:27,347.347 INFO    ] Launching Daemon at Mon Aug 31 06:40:27 IST 2026
[2026-08-31 06:40:27,358.358 INFO    ] ================================================
[2026-08-31 06:40:27,928.928 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:40:27
[2026-08-31 06:40:28,514.514 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:40:28,758.758 INFO    ] Initializing speech engine...
[2026-08-31 06:40:28,763.763 INFO    ] 2026-08-31 06:40:28
[2026-08-31 06:40:29,045.045 INFO    ] 2026-08-31 06:40:29
[2026-08-31 06:40:29,082.082 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:40:29,333.333 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:40:29,343.343 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:40:29,559.559 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:40:29,602.602 INFO    ] time= 31/08/2026 06:40:29
[2026-08-31 06:40:29,608.608 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:40:29,625.625 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:40:29,715.715 INFO    ] No existing commands found in stream
[2026-08-31 06:40:34,730.730 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:40:34,733.733 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-08-31 06:40:38,446.446 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 06:40:38,449.449 INFO    ] Checking for system updates...
[2026-08-31 06:40:38,484.484 INFO    ] 200
[2026-08-31 06:40:38,487.487 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:40:38,540.540 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:40:38,542.542 INFO    ] No update needed
[2026-08-31 06:40:38,545.545 INFO    ] Checking for camera pi updates...
[2026-08-31 06:40:38,581.581 INFO    ] 200
[2026-08-31 06:40:38,584.584 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:40:38,624.624 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:40:38,690.690 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:40:38,693.693 INFO    ] No camera update needed
[2026-08-31 06:40:38,695.695 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:40:38,698.698 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:40:38,703.703 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:40:38,708.708 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:40:40,748.748 INFO    ] ================================================
[2026-08-31 06:40:40,764.764 INFO    ] Launching Daemon at Mon Aug 31 06:40:40 IST 2026
[2026-08-31 06:40:40,774.774 INFO    ] ================================================
[2026-08-31 06:40:41,403.403 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:40:41
[2026-08-31 06:40:42,060.060 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:40:42,358.358 INFO    ] Initializing speech engine...
[2026-08-31 06:40:42,369.369 INFO    ] 2026-08-31 06:40:42
[2026-08-31 06:40:42,640.640 INFO    ] 2026-08-31 06:40:42
[2026-08-31 06:40:42,697.697 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:40:42,947.947 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:40:42,952.952 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:40:43,157.157 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:40:43,189.189 INFO    ] time= 31/08/2026 06:40:43
[2026-08-31 06:40:43,209.209 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:40:43,239.239 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:40:43,370.370 INFO    ] No existing commands found in stream
[2026-08-31 06:40:48,401.401 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:40:48,404.404 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-08-31 06:40:50,605.605 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 06:40:50,608.608 INFO    ] Checking for system updates...
[2026-08-31 06:40:50,644.644 INFO    ] 200
[2026-08-31 06:40:50,647.647 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:40:50,700.700 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:40:50,702.702 INFO    ] No update needed
[2026-08-31 06:40:50,705.705 INFO    ] Checking for camera pi updates...
[2026-08-31 06:40:50,742.742 INFO    ] 200
[2026-08-31 06:40:50,744.744 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:40:50,785.785 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:40:50,834.834 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:40:50,836.836 INFO    ] No camera update needed
[2026-08-31 06:40:50,839.839 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:40:50,841.841 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:40:50,846.846 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:40:50,852.852 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:40:52,892.892 INFO    ] ================================================
[2026-08-31 06:40:52,908.908 INFO    ] Launching Daemon at Mon Aug 31 06:40:52 IST 2026
[2026-08-31 06:40:52,918.918 INFO    ] ================================================
[2026-08-31 06:40:53,483.483 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:40:53
[2026-08-31 06:40:54,066.066 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:40:54,317.317 INFO    ] Initializing speech engine...
[2026-08-31 06:40:54,339.339 INFO    ] 2026-08-31 06:40:54
[2026-08-31 06:40:54,597.597 INFO    ] 2026-08-31 06:40:54
[2026-08-31 06:40:54,632.632 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:40:54,886.886 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:40:54,895.895 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:40:55,045.045 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:40:55,104.104 INFO    ] time= 31/08/2026 06:40:55
[2026-08-31 06:40:55,159.159 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:40:55,166.166 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:40:55,312.312 INFO    ] No existing commands found in stream
[2026-08-31 06:41:00,327.327 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:41:00,329.329 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-08-31 06:41:03,134.134 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 06:41:03,136.136 INFO    ] Checking for system updates...
[2026-08-31 06:41:03,171.171 INFO    ] 200
[2026-08-31 06:41:03,174.174 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:41:03,225.225 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:41:03,228.228 INFO    ] No update needed
[2026-08-31 06:41:03,230.230 INFO    ] Checking for camera pi updates...
[2026-08-31 06:41:03,264.264 INFO    ] 200
[2026-08-31 06:41:03,267.267 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:41:03,306.306 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:41:03,389.389 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:41:03,391.391 INFO    ] No camera update needed
[2026-08-31 06:41:03,393.393 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:41:03,395.395 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:41:03,407.407 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:41:03,412.412 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:41:05,452.452 INFO    ] ================================================
[2026-08-31 06:41:05,467.467 INFO    ] Launching Daemon at Mon Aug 31 06:41:05 IST 2026
[2026-08-31 06:41:05,477.477 INFO    ] ================================================
[2026-08-31 06:41:06,093.093 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:41:06
[2026-08-31 06:41:06,746.746 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:41:07,041.041 INFO    ] Initializing speech engine...
[2026-08-31 06:41:07,047.047 INFO    ] 2026-08-31 06:41:07
[2026-08-31 06:41:07,318.318 INFO    ] 2026-08-31 06:41:07
[2026-08-31 06:41:07,374.374 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:41:07,601.601 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:41:07,605.605 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:41:07,740.740 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:41:07,780.780 INFO    ] time= 31/08/2026 06:41:07
[2026-08-31 06:41:07,845.845 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:41:07,872.872 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:41:08,005.005 INFO    ] No existing commands found in stream
[2026-08-31 06:41:13,030.030 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:41:13,033.033 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-08-31 06:41:15,271.271 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 06:41:15,274.274 INFO    ] Checking for system updates...
[2026-08-31 06:41:15,310.310 INFO    ] 200
[2026-08-31 06:41:15,313.313 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:41:15,366.366 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:41:15,369.369 INFO    ] No update needed
[2026-08-31 06:41:15,371.371 INFO    ] Checking for camera pi updates...
[2026-08-31 06:41:15,405.405 INFO    ] 200
[2026-08-31 06:41:15,408.408 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:41:15,452.452 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:41:15,583.583 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:41:15,586.586 INFO    ] No camera update needed
[2026-08-31 06:41:15,589.589 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:41:15,591.591 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:41:15,597.597 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:41:15,603.603 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:41:17,646.646 INFO    ] ================================================
[2026-08-31 06:41:17,662.662 INFO    ] Launching Daemon at Mon Aug 31 06:41:17 IST 2026
[2026-08-31 06:41:17,672.672 INFO    ] ================================================
[2026-08-31 06:41:18,256.256 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:41:18
[2026-08-31 06:41:18,857.857 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:41:19,130.130 INFO    ] Initializing speech engine...
[2026-08-31 06:41:19,138.138 INFO    ] 2026-08-31 06:41:19
[2026-08-31 06:41:19,388.388 INFO    ] 2026-08-31 06:41:19
[2026-08-31 06:41:19,423.423 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:41:19,680.680 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:41:19,686.686 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:41:19,916.916 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:41:19,943.943 INFO    ] time= 31/08/2026 06:41:19
[2026-08-31 06:41:19,959.959 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:41:19,969.969 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:41:20,093.093 INFO    ] No existing commands found in stream
[2026-08-31 06:41:25,109.109 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:41:25,112.112 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-08-31 06:41:26,117.117 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 06:41:26,120.120 INFO    ] Checking for system updates...
[2026-08-31 06:41:26,157.157 INFO    ] 200
[2026-08-31 06:41:26,160.160 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:41:26,219.219 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:41:26,222.222 INFO    ] No update needed
[2026-08-31 06:41:26,225.225 INFO    ] Checking for camera pi updates...
[2026-08-31 06:41:26,263.263 INFO    ] 200
[2026-08-31 06:41:26,266.266 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:41:26,312.312 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:41:26,383.383 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:41:26,386.386 INFO    ] No camera update needed
[2026-08-31 06:41:26,389.389 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:41:26,391.391 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:41:26,397.397 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:41:26,403.403 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:41:28,444.444 INFO    ] ================================================
[2026-08-31 06:41:28,459.459 INFO    ] Launching Daemon at Mon Aug 31 06:41:28 IST 2026
[2026-08-31 06:41:28,470.470 INFO    ] ================================================
[2026-08-31 06:41:29,053.053 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:41:29
[2026-08-31 06:41:29,654.654 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:41:29,928.928 INFO    ] Initializing speech engine...
[2026-08-31 06:41:29,939.939 INFO    ] 2026-08-31 06:41:29
[2026-08-31 06:41:30,199.199 INFO    ] 2026-08-31 06:41:30
[2026-08-31 06:41:30,252.252 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:41:30,479.479 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:41:30,485.485 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:41:30,716.716 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:41:30,742.742 INFO    ] time= 31/08/2026 06:41:30
[2026-08-31 06:41:30,759.759 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:41:30,768.768 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:41:30,901.901 INFO    ] No existing commands found in stream
[2026-08-31 06:41:35,927.927 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:41:35,930.930 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-08-31 06:41:37,719.719 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 06:41:37,722.722 INFO    ] Checking for system updates...
[2026-08-31 06:41:37,757.757 INFO    ] 200
[2026-08-31 06:41:37,760.760 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:41:37,813.813 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:41:37,816.816 INFO    ] No update needed
[2026-08-31 06:41:37,818.818 INFO    ] Checking for camera pi updates...
[2026-08-31 06:41:37,852.852 INFO    ] 200
[2026-08-31 06:41:37,854.854 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:41:37,893.893 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:41:37,974.974 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:41:37,976.976 INFO    ] No camera update needed
[2026-08-31 06:41:37,978.978 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:41:37,981.981 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:41:37,986.986 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:41:37,991.991 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:41:40,032.032 INFO    ] ================================================
[2026-08-31 06:41:40,047.047 INFO    ] Launching Daemon at Mon Aug 31 06:41:40 IST 2026
[2026-08-31 06:41:40,058.058 INFO    ] ================================================
[2026-08-31 06:41:40,621.621 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:41:40
[2026-08-31 06:41:41,203.203 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:41:41,447.447 INFO    ] Initializing speech engine...
[2026-08-31 06:41:41,456.456 INFO    ] 2026-08-31 06:41:41
[2026-08-31 06:41:41,729.729 INFO    ] 2026-08-31 06:41:41
[2026-08-31 06:41:41,764.764 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:41:42,020.020 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:41:42,029.029 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:41:42,164.164 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:41:42,201.201 INFO    ] time= 31/08/2026 06:41:42
[2026-08-31 06:41:42,255.255 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:41:42,301.301 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:41:42,441.441 INFO    ] No existing commands found in stream
[2026-08-31 06:41:47,461.461 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:41:47,464.464 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-08-31 06:41:48,431.431 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 06:41:48,433.433 INFO    ] Checking for system updates...
[2026-08-31 06:41:48,468.468 INFO    ] 200
[2026-08-31 06:41:48,471.471 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:41:48,522.522 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:41:48,524.524 INFO    ] No update needed
[2026-08-31 06:41:48,527.527 INFO    ] Checking for camera pi updates...
[2026-08-31 06:41:48,561.561 INFO    ] 200
[2026-08-31 06:41:48,564.564 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:41:48,604.604 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:41:48,779.779 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:41:48,782.782 INFO    ] No camera update needed
[2026-08-31 06:41:48,784.784 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:41:48,786.786 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:41:48,792.792 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:41:48,797.797 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:41:50,839.839 INFO    ] ================================================
[2026-08-31 06:41:50,854.854 INFO    ] Launching Daemon at Mon Aug 31 06:41:50 IST 2026
[2026-08-31 06:41:50,864.864 INFO    ] ================================================
[2026-08-31 06:41:51,497.497 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:41:51
[2026-08-31 06:41:52,149.149 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:41:52,445.445 INFO    ] Initializing speech engine...
[2026-08-31 06:41:52,453.453 INFO    ] 2026-08-31 06:41:52
[2026-08-31 06:41:52,722.722 INFO    ] 2026-08-31 06:41:52
[2026-08-31 06:41:52,757.757 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:41:53,010.010 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:41:53,020.020 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:41:53,239.239 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:41:53,285.285 INFO    ] time= 31/08/2026 06:41:53
[2026-08-31 06:41:53,291.291 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:41:53,310.310 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:41:53,432.432 INFO    ] No existing commands found in stream
[2026-08-31 06:41:58,454.454 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:41:58,458.458 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-08-31 06:42:00,777.777 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 06:42:00,780.780 INFO    ] Checking for system updates...
[2026-08-31 06:42:00,817.817 INFO    ] 200
[2026-08-31 06:42:00,819.819 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:42:00,873.873 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:42:00,876.876 INFO    ] No update needed
[2026-08-31 06:42:00,879.879 INFO    ] Checking for camera pi updates...
[2026-08-31 06:42:00,914.914 INFO    ] 200
[2026-08-31 06:42:00,916.916 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:42:00,958.958 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:42:01,041.041 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:42:01,044.044 INFO    ] No camera update needed
[2026-08-31 06:42:01,046.046 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:42:01,049.049 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:42:01,055.055 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:42:01,061.061 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:42:03,114.114 INFO    ] ================================================
[2026-08-31 06:42:03,133.133 INFO    ] Launching Daemon at Mon Aug 31 06:42:03 IST 2026
[2026-08-31 06:42:03,149.149 INFO    ] ================================================
[2026-08-31 06:42:03,797.797 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:42:03
[2026-08-31 06:42:04,380.380 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:42:04,657.657 INFO    ] Initializing speech engine...
[2026-08-31 06:42:04,664.664 INFO    ] 2026-08-31 06:42:04
[2026-08-31 06:42:04,927.927 INFO    ] 2026-08-31 06:42:04
[2026-08-31 06:42:04,962.962 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:42:05,153.153 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:42:05,178.178 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:42:05,319.319 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:42:05,328.328 INFO    ] time= 31/08/2026 06:42:05
[2026-08-31 06:42:05,332.332 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:42:05,338.338 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:42:05,476.476 INFO    ] No existing commands found in stream
[2026-08-31 06:42:10,506.506 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:42:10,509.509 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-08-31 06:42:13,734.734 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 06:42:13,736.736 INFO    ] Checking for system updates...
[2026-08-31 06:42:13,772.772 INFO    ] 200
[2026-08-31 06:42:13,775.775 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:42:13,827.827 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:42:13,830.830 INFO    ] No update needed
[2026-08-31 06:42:13,832.832 INFO    ] Checking for camera pi updates...
[2026-08-31 06:42:13,865.865 INFO    ] 200
[2026-08-31 06:42:13,868.868 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:42:13,908.908 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:42:13,964.964 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:42:13,966.966 INFO    ] No camera update needed
[2026-08-31 06:42:13,969.969 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:42:13,971.971 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:42:13,976.976 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:42:13,981.981 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:42:16,022.022 INFO    ] ================================================
[2026-08-31 06:42:16,036.036 INFO    ] Launching Daemon at Mon Aug 31 06:42:16 IST 2026
[2026-08-31 06:42:16,047.047 INFO    ] ================================================
[2026-08-31 06:42:16,612.612 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:42:16
[2026-08-31 06:42:17,198.198 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:42:17,470.470 INFO    ] Initializing speech engine...
[2026-08-31 06:42:17,481.481 INFO    ] 2026-08-31 06:42:17
[2026-08-31 06:42:17,729.729 INFO    ] 2026-08-31 06:42:17
[2026-08-31 06:42:17,765.765 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:42:18,024.024 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:42:18,033.033 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:42:18,167.167 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:42:18,204.204 INFO    ] time= 31/08/2026 06:42:18
[2026-08-31 06:42:18,258.258 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:42:18,298.298 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:42:18,430.430 INFO    ] No existing commands found in stream
[2026-08-31 06:42:23,455.455 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:42:23,458.458 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-08-31 06:42:24,295.295 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 06:42:24,298.298 INFO    ] Checking for system updates...
[2026-08-31 06:42:24,333.333 INFO    ] 200
[2026-08-31 06:42:24,335.335 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:42:24,387.387 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:42:24,389.389 INFO    ] No update needed
[2026-08-31 06:42:24,391.391 INFO    ] Checking for camera pi updates...
[2026-08-31 06:42:24,428.428 INFO    ] 200
[2026-08-31 06:42:24,430.430 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:42:24,471.471 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:42:24,552.552 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:42:24,554.554 INFO    ] No camera update needed
[2026-08-31 06:42:24,557.557 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:42:24,559.559 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:42:24,564.564 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:42:24,569.569 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:42:26,609.609 INFO    ] ================================================
[2026-08-31 06:42:26,624.624 INFO    ] Launching Daemon at Mon Aug 31 06:42:26 IST 2026
[2026-08-31 06:42:26,635.635 INFO    ] ================================================
[2026-08-31 06:42:27,252.252 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:42:27
[2026-08-31 06:42:27,905.905 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:42:28,206.206 INFO    ] Initializing speech engine...
[2026-08-31 06:42:28,213.213 INFO    ] 2026-08-31 06:42:28
[2026-08-31 06:42:28,489.489 INFO    ] 2026-08-31 06:42:28
[2026-08-31 06:42:28,543.543 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:42:28,795.795 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:42:28,803.803 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:42:29,004.004 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:42:29,047.047 INFO    ] time= 31/08/2026 06:42:29
[2026-08-31 06:42:29,064.064 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:42:29,096.096 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:42:29,216.216 INFO    ] No existing commands found in stream
[2026-08-31 06:42:34,238.238 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:42:34,241.241 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-08-31 06:42:37,231.231 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 06:42:37,234.234 INFO    ] Checking for system updates...
[2026-08-31 06:42:37,271.271 INFO    ] 200
[2026-08-31 06:42:37,273.273 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:42:37,327.327 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:42:37,330.330 INFO    ] No update needed
[2026-08-31 06:42:37,333.333 INFO    ] Checking for camera pi updates...
[2026-08-31 06:42:37,368.368 INFO    ] 200
[2026-08-31 06:42:37,371.371 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:42:37,412.412 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:42:37,485.485 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:42:37,488.488 INFO    ] No camera update needed
[2026-08-31 06:42:37,491.491 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:42:37,493.493 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:42:37,500.500 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:42:37,505.505 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:42:39,547.547 INFO    ] ================================================
[2026-08-31 06:42:39,562.562 INFO    ] Launching Daemon at Mon Aug 31 06:42:39 IST 2026
[2026-08-31 06:42:39,573.573 INFO    ] ================================================
[2026-08-31 06:42:40,161.161 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:42:40
[2026-08-31 06:42:40,754.754 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:42:41,026.026 INFO    ] Initializing speech engine...
[2026-08-31 06:42:41,035.035 INFO    ] 2026-08-31 06:42:41
[2026-08-31 06:42:41,281.281 INFO    ] 2026-08-31 06:42:41
[2026-08-31 06:42:41,315.315 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:42:41,566.566 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:42:41,576.576 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:42:41,720.720 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:42:41,780.780 INFO    ] time= 31/08/2026 06:42:41
[2026-08-31 06:42:41,834.834 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:42:41,843.843 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:42:41,984.984 INFO    ] No existing commands found in stream
[2026-08-31 06:42:46,998.998 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:42:47,001.001 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-08-31 06:42:50,967.967 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 06:42:50,970.970 INFO    ] Checking for system updates...
[2026-08-31 06:42:51,007.007 INFO    ] 200
[2026-08-31 06:42:51,010.010 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:42:51,064.064 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:42:51,067.067 INFO    ] No update needed
[2026-08-31 06:42:51,070.070 INFO    ] Checking for camera pi updates...
[2026-08-31 06:42:51,104.104 INFO    ] 200
[2026-08-31 06:42:51,107.107 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:42:51,148.148 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:42:51,256.256 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:42:51,259.259 INFO    ] No camera update needed
[2026-08-31 06:42:51,262.262 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:42:51,265.265 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:42:51,271.271 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:42:51,276.276 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:42:53,318.318 INFO    ] ================================================
[2026-08-31 06:42:53,333.333 INFO    ] Launching Daemon at Mon Aug 31 06:42:53 IST 2026
[2026-08-31 06:42:53,344.344 INFO    ] ================================================
[2026-08-31 06:42:53,924.924 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:42:53
[2026-08-31 06:42:54,522.522 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:42:54,799.799 INFO    ] Initializing speech engine...
[2026-08-31 06:42:54,806.806 INFO    ] 2026-08-31 06:42:54
[2026-08-31 06:42:55,063.063 INFO    ] 2026-08-31 06:42:55
[2026-08-31 06:42:55,093.093 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:42:55,340.340 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:42:55,349.349 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:42:55,482.482 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:42:55,537.537 INFO    ] time= 31/08/2026 06:42:55
[2026-08-31 06:42:55,591.591 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:42:55,612.612 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:42:55,728.728 INFO    ] No existing commands found in stream
[2026-08-31 06:43:00,750.750 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:43:00,753.753 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-08-31 06:43:04,645.645 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 06:43:04,647.647 INFO    ] Checking for system updates...
[2026-08-31 06:43:04,686.686 INFO    ] 200
[2026-08-31 06:43:04,689.689 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:43:04,744.744 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:43:04,747.747 INFO    ] No update needed
[2026-08-31 06:43:04,749.749 INFO    ] Checking for camera pi updates...
[2026-08-31 06:43:04,786.786 INFO    ] 200
[2026-08-31 06:43:04,788.788 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:43:04,829.829 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:43:04,914.914 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:43:04,916.916 INFO    ] No camera update needed
[2026-08-31 06:43:04,919.919 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:43:04,921.921 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:43:04,926.926 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:43:04,931.931 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:43:06,972.972 INFO    ] ================================================
[2026-08-31 06:43:06,988.988 INFO    ] Launching Daemon at Mon Aug 31 06:43:06 IST 2026
[2026-08-31 06:43:07,998.998 INFO    ] ================================================
[2026-08-31 06:43:07,591.591 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:43:07
[2026-08-31 06:43:08,173.173 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:43:08,429.429 INFO    ] Initializing speech engine...
[2026-08-31 06:43:08,453.453 INFO    ] 2026-08-31 06:43:08
[2026-08-31 06:43:08,708.708 INFO    ] 2026-08-31 06:43:08
[2026-08-31 06:43:08,740.740 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:43:08,937.937 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:43:08,973.973 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:43:09,132.132 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:43:09,169.169 INFO    ] time= 31/08/2026 06:43:09
[2026-08-31 06:43:09,233.233 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:43:09,265.265 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:43:09,392.392 INFO    ] No existing commands found in stream
[2026-08-31 06:43:14,419.419 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:43:14,422.422 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-08-31 06:43:15,856.856 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 06:43:15,859.859 INFO    ] Checking for system updates...
[2026-08-31 06:43:15,895.895 INFO    ] 200
[2026-08-31 06:43:15,898.898 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:43:15,950.950 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:43:15,952.952 INFO    ] No update needed
[2026-08-31 06:43:15,955.955 INFO    ] Checking for camera pi updates...
[2026-08-31 06:43:15,988.988 INFO    ] 200
[2026-08-31 06:43:15,991.991 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:43:16,031.031 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:43:16,115.115 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:43:16,118.118 INFO    ] No camera update needed
[2026-08-31 06:43:16,121.121 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:43:16,124.124 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:43:16,129.129 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:43:16,134.134 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:43:18,173.173 INFO    ] ================================================
[2026-08-31 06:43:18,189.189 INFO    ] Launching Daemon at Mon Aug 31 06:43:18 IST 2026
[2026-08-31 06:43:18,199.199 INFO    ] ================================================
[2026-08-31 06:43:18,804.804 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:43:18
[2026-08-31 06:43:19,397.397 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:43:19,666.666 INFO    ] Initializing speech engine...
[2026-08-31 06:43:19,676.676 INFO    ] 2026-08-31 06:43:19
[2026-08-31 06:43:19,934.934 INFO    ] 2026-08-31 06:43:19
[2026-08-31 06:43:19,989.989 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:43:20,215.215 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:43:20,221.221 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:43:20,449.449 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:43:20,479.479 INFO    ] time= 31/08/2026 06:43:20
[2026-08-31 06:43:20,494.494 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:43:20,503.503 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:43:20,625.625 INFO    ] No existing commands found in stream
[2026-08-31 06:43:25,641.641 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:43:25,644.644 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-08-31 06:43:26,849.849 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 06:43:26,851.851 INFO    ] Checking for system updates...
[2026-08-31 06:43:26,887.887 INFO    ] 200
[2026-08-31 06:43:26,890.890 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:43:26,942.942 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:43:26,945.945 INFO    ] No update needed
[2026-08-31 06:43:26,948.948 INFO    ] Checking for camera pi updates...
[2026-08-31 06:43:26,982.982 INFO    ] 200
[2026-08-31 06:43:26,984.984 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:43:27,024.024 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:43:27,085.085 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:43:27,087.087 INFO    ] No camera update needed
[2026-08-31 06:43:27,089.089 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:43:27,092.092 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:43:27,097.097 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:43:27,102.102 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:43:29,142.142 INFO    ] ================================================
[2026-08-31 06:43:29,157.157 INFO    ] Launching Daemon at Mon Aug 31 06:43:29 IST 2026
[2026-08-31 06:43:29,168.168 INFO    ] ================================================
[2026-08-31 06:43:29,805.805 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:43:29
[2026-08-31 06:43:30,461.461 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:43:30,763.763 INFO    ] Initializing speech engine...
[2026-08-31 06:43:30,772.772 INFO    ] 2026-08-31 06:43:30
[2026-08-31 06:43:31,058.058 INFO    ] 2026-08-31 06:43:31
[2026-08-31 06:43:31,104.104 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:43:31,375.375 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:43:31,396.396 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:43:31,603.603 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:43:31,610.610 INFO    ] time= 31/08/2026 06:43:31
[2026-08-31 06:43:31,632.632 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:43:31,661.661 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:43:31,794.794 INFO    ] No existing commands found in stream
[2026-08-31 06:43:36,830.830 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:43:36,833.833 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-08-31 06:43:40,690.690 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 06:43:40,693.693 INFO    ] Checking for system updates...
[2026-08-31 06:43:40,734.734 INFO    ] 200
[2026-08-31 06:43:40,737.737 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:43:40,797.797 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:43:40,800.800 INFO    ] No update needed
[2026-08-31 06:43:40,803.803 INFO    ] Checking for camera pi updates...
[2026-08-31 06:43:40,841.841 INFO    ] 200
[2026-08-31 06:43:40,844.844 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:43:40,890.890 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:43:40,972.972 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:43:40,974.974 INFO    ] No camera update needed
[2026-08-31 06:43:40,977.977 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:43:40,980.980 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:43:40,986.986 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:43:40,991.991 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:43:43,033.033 INFO    ] ================================================
[2026-08-31 06:43:43,049.049 INFO    ] Launching Daemon at Mon Aug 31 06:43:43 IST 2026
[2026-08-31 06:43:43,059.059 INFO    ] ================================================
[2026-08-31 06:43:43,630.630 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:43:43
[2026-08-31 06:43:44,214.214 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:43:44,481.481 INFO    ] Initializing speech engine...
[2026-08-31 06:43:44,490.490 INFO    ] 2026-08-31 06:43:44
[2026-08-31 06:43:44,737.737 INFO    ] 2026-08-31 06:43:44
[2026-08-31 06:43:44,772.772 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:43:45,025.025 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:43:45,033.033 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:43:45,248.248 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:43:45,292.292 INFO    ] time= 31/08/2026 06:43:45
[2026-08-31 06:43:45,298.298 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:43:45,315.315 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:43:45,436.436 INFO    ] No existing commands found in stream
[2026-08-31 06:43:50,455.455 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:43:50,458.458 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-08-31 06:43:51,639.639 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 06:43:51,641.641 INFO    ] Checking for system updates...
[2026-08-31 06:43:51,677.677 INFO    ] 200
[2026-08-31 06:43:51,680.680 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:43:51,731.731 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:43:51,734.734 INFO    ] No update needed
[2026-08-31 06:43:51,736.736 INFO    ] Checking for camera pi updates...
[2026-08-31 06:43:51,769.769 INFO    ] 200
[2026-08-31 06:43:51,772.772 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:43:51,812.812 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:43:51,992.992 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:43:51,994.994 INFO    ] No camera update needed
[2026-08-31 06:43:51,996.996 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:43:51,999.999 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:43:52,004.004 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:43:52,009.009 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:43:54,048.048 INFO    ] ================================================
[2026-08-31 06:43:54,064.064 INFO    ] Launching Daemon at Mon Aug 31 06:43:54 IST 2026
[2026-08-31 06:43:54,076.076 INFO    ] ================================================
[2026-08-31 06:43:54,641.641 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:43:54
[2026-08-31 06:43:55,242.242 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:43:55,502.502 INFO    ] Initializing speech engine...
[2026-08-31 06:43:55,509.509 INFO    ] 2026-08-31 06:43:55
[2026-08-31 06:43:55,785.785 INFO    ] 2026-08-31 06:43:55
[2026-08-31 06:43:55,823.823 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:43:56,049.049 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:43:56,099.099 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:43:56,274.274 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:43:56,296.296 INFO    ] time= 31/08/2026 06:43:56
[2026-08-31 06:43:56,351.351 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:43:56,390.390 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:43:56,483.483 INFO    ] No existing commands found in stream
[2026-08-31 06:44:01,496.496 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:44:01,499.499 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-08-31 06:44:07,894.894 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 06:44:07,897.897 INFO    ] Checking for system updates...
[2026-08-31 06:44:07,933.933 INFO    ] 200
[2026-08-31 06:44:07,935.935 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:44:07,986.986 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:44:07,989.989 INFO    ] No update needed
[2026-08-31 06:44:07,991.991 INFO    ] Checking for camera pi updates...
[2026-08-31 06:44:08,024.024 INFO    ] 200
[2026-08-31 06:44:08,027.027 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:44:08,071.071 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:44:08,152.152 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:44:08,155.155 INFO    ] No camera update needed
[2026-08-31 06:44:08,157.157 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:44:08,160.160 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:44:08,165.165 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:44:08,170.170 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:44:10,212.212 INFO    ] ================================================
[2026-08-31 06:44:10,227.227 INFO    ] Launching Daemon at Mon Aug 31 06:44:10 IST 2026
[2026-08-31 06:44:10,239.239 INFO    ] ================================================
[2026-08-31 06:44:10,870.870 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:44:10
[2026-08-31 06:44:11,529.529 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:44:11,822.822 INFO    ] Initializing speech engine...
[2026-08-31 06:44:11,829.829 INFO    ] 2026-08-31 06:44:11
[2026-08-31 06:44:12,113.113 INFO    ] 2026-08-31 06:44:12
[2026-08-31 06:44:12,157.157 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:44:12,437.437 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:44:12,445.445 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:44:12,623.623 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:44:12,644.644 INFO    ] time= 31/08/2026 06:44:12
[2026-08-31 06:44:12,663.663 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:44:12,673.673 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:44:12,802.802 INFO    ] No existing commands found in stream
[2026-08-31 06:44:17,825.825 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:44:17,828.828 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-08-31 06:44:18,749.749 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 06:44:18,752.752 INFO    ] Checking for system updates...
[2026-08-31 06:44:18,788.788 INFO    ] 200
[2026-08-31 06:44:18,790.790 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:44:18,843.843 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:44:18,845.845 INFO    ] No update needed
[2026-08-31 06:44:18,848.848 INFO    ] Checking for camera pi updates...
[2026-08-31 06:44:18,881.881 INFO    ] 200
[2026-08-31 06:44:18,884.884 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:44:18,928.928 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:44:19,008.008 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:44:19,010.010 INFO    ] No camera update needed
[2026-08-31 06:44:19,013.013 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:44:19,015.015 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:44:19,020.020 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:44:19,025.025 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:44:21,066.066 INFO    ] ================================================
[2026-08-31 06:44:21,082.082 INFO    ] Launching Daemon at Mon Aug 31 06:44:21 IST 2026
[2026-08-31 06:44:21,093.093 INFO    ] ================================================
[2026-08-31 06:44:21,659.659 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:44:21
[2026-08-31 06:44:22,241.241 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:44:22,514.514 INFO    ] Initializing speech engine...
[2026-08-31 06:44:22,520.520 INFO    ] 2026-08-31 06:44:22
[2026-08-31 06:44:22,779.779 INFO    ] 2026-08-31 06:44:22
[2026-08-31 06:44:22,834.834 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:44:23,079.079 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:44:23,087.087 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:44:23,275.275 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:44:23,321.321 INFO    ] time= 31/08/2026 06:44:23
[2026-08-31 06:44:23,327.327 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:44:23,345.345 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:44:23,476.476 INFO    ] No existing commands found in stream
[2026-08-31 06:44:28,490.490 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:44:28,493.493 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-08-31 06:44:30,444.444 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 06:44:30,447.447 INFO    ] Checking for system updates...
[2026-08-31 06:44:30,482.482 INFO    ] 200
[2026-08-31 06:44:30,484.484 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:44:30,536.536 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:44:30,538.538 INFO    ] No update needed
[2026-08-31 06:44:30,541.541 INFO    ] Checking for camera pi updates...
[2026-08-31 06:44:30,581.581 INFO    ] 200
[2026-08-31 06:44:30,583.583 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:44:30,624.624 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:44:30,704.704 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:44:30,707.707 INFO    ] No camera update needed
[2026-08-31 06:44:30,710.710 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:44:30,713.713 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:44:30,718.718 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:44:30,723.723 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:44:32,765.765 INFO    ] ================================================
[2026-08-31 06:44:32,782.782 INFO    ] Launching Daemon at Mon Aug 31 06:44:32 IST 2026
[2026-08-31 06:44:32,793.793 INFO    ] ================================================
[2026-08-31 06:44:33,426.426 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:44:33
[2026-08-31 06:44:34,011.011 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:44:34,265.265 INFO    ] Initializing speech engine...
[2026-08-31 06:44:34,281.281 INFO    ] 2026-08-31 06:44:34
[2026-08-31 06:44:34,533.533 INFO    ] 2026-08-31 06:44:34
[2026-08-31 06:44:34,568.568 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:44:34,748.748 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:44:34,767.767 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:44:34,952.952 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:44:34,965.965 INFO    ] time= 31/08/2026 06:44:34
[2026-08-31 06:44:35,024.024 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:44:35,084.084 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:44:35,230.230 INFO    ] No existing commands found in stream
[2026-08-31 06:44:40,250.250 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:44:40,253.253 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-08-31 06:44:43,565.565 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 06:44:43,568.568 INFO    ] Checking for system updates...
[2026-08-31 06:44:43,603.603 INFO    ] 200
[2026-08-31 06:44:43,605.605 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:44:43,659.659 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:44:43,661.661 INFO    ] No update needed
[2026-08-31 06:44:43,664.664 INFO    ] Checking for camera pi updates...
[2026-08-31 06:44:43,697.697 INFO    ] 200
[2026-08-31 06:44:43,700.700 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:44:43,743.743 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:44:43,835.835 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:44:43,837.837 INFO    ] No camera update needed
[2026-08-31 06:44:43,840.840 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:44:43,842.842 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:44:43,847.847 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:44:43,852.852 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:44:45,892.892 INFO    ] ================================================
[2026-08-31 06:44:45,906.906 INFO    ] Launching Daemon at Mon Aug 31 06:44:45 IST 2026
[2026-08-31 06:44:45,917.917 INFO    ] ================================================
[2026-08-31 06:44:46,481.481 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:44:46
[2026-08-31 06:44:47,062.062 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:44:47,330.330 INFO    ] Initializing speech engine...
[2026-08-31 06:44:47,339.339 INFO    ] 2026-08-31 06:44:47
[2026-08-31 06:44:47,584.584 INFO    ] 2026-08-31 06:44:47
[2026-08-31 06:44:47,619.619 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:44:47,869.869 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:44:47,878.878 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:44:48,012.012 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:44:48,051.051 INFO    ] time= 31/08/2026 06:44:48
[2026-08-31 06:44:48,116.116 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:44:48,143.143 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:44:48,280.280 INFO    ] No existing commands found in stream
[2026-08-31 06:44:53,301.301 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:44:53,304.304 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-08-31 06:44:55,557.557 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 06:44:55,559.559 INFO    ] Checking for system updates...
[2026-08-31 06:44:55,595.595 INFO    ] 200
[2026-08-31 06:44:55,598.598 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:44:55,651.651 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:44:55,653.653 INFO    ] No update needed
[2026-08-31 06:44:55,656.656 INFO    ] Checking for camera pi updates...
[2026-08-31 06:44:55,689.689 INFO    ] 200
[2026-08-31 06:44:55,692.692 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:44:55,732.732 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:44:55,812.812 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:44:55,814.814 INFO    ] No camera update needed
[2026-08-31 06:44:55,816.816 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:44:55,819.819 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:44:55,824.824 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:44:55,829.829 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:44:57,872.872 INFO    ] ================================================
[2026-08-31 06:44:57,887.887 INFO    ] Launching Daemon at Mon Aug 31 06:44:57 IST 2026
[2026-08-31 06:44:57,898.898 INFO    ] ================================================
[2026-08-31 06:44:58,465.465 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:44:58
[2026-08-31 06:44:59,046.046 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:44:59,302.302 INFO    ] Initializing speech engine...
[2026-08-31 06:44:59,321.321 INFO    ] 2026-08-31 06:44:59
[2026-08-31 06:44:59,566.566 INFO    ] 2026-08-31 06:44:59
[2026-08-31 06:44:59,601.601 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:44:59,852.852 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:44:59,861.861 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:45:00,080.080 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:45:00,119.119 INFO    ] time= 31/08/2026 06:45:00
[2026-08-31 06:45:00,135.135 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:45:00,142.142 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:45:00,272.272 INFO    ] No existing commands found in stream
[2026-08-31 06:45:05,283.283 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:45:05,285.285 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-08-31 06:45:06,605.605 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 06:45:06,607.607 INFO    ] Checking for system updates...
[2026-08-31 06:45:06,643.643 INFO    ] 200
[2026-08-31 06:45:06,646.646 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:45:06,699.699 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:45:06,701.701 INFO    ] No update needed
[2026-08-31 06:45:06,704.704 INFO    ] Checking for camera pi updates...
[2026-08-31 06:45:06,737.737 INFO    ] 200
[2026-08-31 06:45:06,739.739 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:45:06,780.780 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:45:06,863.863 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:45:06,866.866 INFO    ] No camera update needed
[2026-08-31 06:45:06,868.868 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:45:06,871.871 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:45:06,876.876 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:45:06,881.881 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:45:08,921.921 INFO    ] ================================================
[2026-08-31 06:45:08,936.936 INFO    ] Launching Daemon at Mon Aug 31 06:45:08 IST 2026
[2026-08-31 06:45:08,947.947 INFO    ] ================================================
[2026-08-31 06:45:09,548.548 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:45:09
[2026-08-31 06:45:10,156.156 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:45:10,436.436 INFO    ] Initializing speech engine...
[2026-08-31 06:45:10,442.442 INFO    ] 2026-08-31 06:45:10
[2026-08-31 06:45:10,686.686 INFO    ] 2026-08-31 06:45:10
[2026-08-31 06:45:10,722.722 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:45:10,921.921 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:45:10,937.937 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:45:11,148.148 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:45:11,166.166 INFO    ] time= 31/08/2026 06:45:11
[2026-08-31 06:45:11,221.221 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:45:11,255.255 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:45:11,360.360 INFO    ] No existing commands found in stream
[2026-08-31 06:45:16,372.372 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:45:16,375.375 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-08-31 06:45:17,843.843 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 06:45:17,846.846 INFO    ] Checking for system updates...
[2026-08-31 06:45:17,881.881 INFO    ] 200
[2026-08-31 06:45:17,884.884 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:45:17,936.936 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:45:17,939.939 INFO    ] No update needed
[2026-08-31 06:45:17,941.941 INFO    ] Checking for camera pi updates...
[2026-08-31 06:45:17,984.984 INFO    ] 200
[2026-08-31 06:45:17,987.987 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:45:18,028.028 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:45:18,124.124 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:45:18,126.126 INFO    ] No camera update needed
[2026-08-31 06:45:18,129.129 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:45:18,131.131 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:45:18,136.136 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:45:18,141.141 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:45:20,182.182 INFO    ] ================================================
[2026-08-31 06:45:20,198.198 INFO    ] Launching Daemon at Mon Aug 31 06:45:20 IST 2026
[2026-08-31 06:45:20,209.209 INFO    ] ================================================
[2026-08-31 06:45:20,773.773 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:45:20
[2026-08-31 06:45:21,422.422 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:45:21,720.720 INFO    ] Initializing speech engine...
[2026-08-31 06:45:21,728.728 INFO    ] 2026-08-31 06:45:21
[2026-08-31 06:45:22,039.039 INFO    ] 2026-08-31 06:45:21
[2026-08-31 06:45:22,125.125 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:45:22,305.305 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:45:22,323.323 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:45:22,540.540 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:45:22,558.558 INFO    ] time= 31/08/2026 06:45:22
[2026-08-31 06:45:22,568.568 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:45:22,597.597 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:45:22,701.701 INFO    ] No existing commands found in stream
[2026-08-31 06:45:27,731.731 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:45:27,734.734 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-08-31 06:45:32,121.121 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 06:45:32,123.123 INFO    ] Checking for system updates...
[2026-08-31 06:45:32,160.160 INFO    ] 200
[2026-08-31 06:45:32,162.162 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:45:32,220.220 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:45:32,223.223 INFO    ] No update needed
[2026-08-31 06:45:32,225.225 INFO    ] Checking for camera pi updates...
[2026-08-31 06:45:32,261.261 INFO    ] 200
[2026-08-31 06:45:32,264.264 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:45:32,312.312 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:45:32,397.397 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:45:32,400.400 INFO    ] No camera update needed
[2026-08-31 06:45:32,403.403 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:45:32,406.406 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:45:32,412.412 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:45:32,418.418 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:45:34,459.459 INFO    ] ================================================
[2026-08-31 06:45:34,476.476 INFO    ] Launching Daemon at Mon Aug 31 06:45:34 IST 2026
[2026-08-31 06:45:34,487.487 INFO    ] ================================================
[2026-08-31 06:45:35,063.063 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:45:35
[2026-08-31 06:45:35,696.696 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:45:35,998.998 INFO    ] Initializing speech engine...
[2026-08-31 06:45:36,006.006 INFO    ] 2026-08-31 06:45:35
[2026-08-31 06:45:36,279.279 INFO    ] 2026-08-31 06:45:36
[2026-08-31 06:45:36,334.334 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:45:36,592.592 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:45:36,596.596 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:45:36,785.785 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:45:36,836.836 INFO    ] time= 31/08/2026 06:45:36
[2026-08-31 06:45:36,854.854 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:45:36,864.864 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:45:36,997.997 INFO    ] No existing commands found in stream
[2026-08-31 06:45:42,027.027 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:45:42,030.030 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-08-31 06:45:46,086.086 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 06:45:46,090.090 INFO    ] Checking for system updates...
[2026-08-31 06:45:46,126.126 INFO    ] 200
[2026-08-31 06:45:46,129.129 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:45:46,183.183 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:45:46,185.185 INFO    ] No update needed
[2026-08-31 06:45:46,188.188 INFO    ] Checking for camera pi updates...
[2026-08-31 06:45:46,221.221 INFO    ] 200
[2026-08-31 06:45:46,224.224 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:45:46,264.264 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:45:46,337.337 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:45:46,340.340 INFO    ] No camera update needed
[2026-08-31 06:45:46,342.342 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:45:46,344.344 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:45:46,349.349 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:45:46,354.354 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:45:48,395.395 INFO    ] ================================================
[2026-08-31 06:45:48,410.410 INFO    ] Launching Daemon at Mon Aug 31 06:45:48 IST 2026
[2026-08-31 06:45:48,421.421 INFO    ] ================================================
[2026-08-31 06:45:48,987.987 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:45:48
[2026-08-31 06:45:49,567.567 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:45:49,839.839 INFO    ] Initializing speech engine...
[2026-08-31 06:45:49,848.848 INFO    ] 2026-08-31 06:45:49
[2026-08-31 06:45:50,096.096 INFO    ] 2026-08-31 06:45:50
[2026-08-31 06:45:50,132.132 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:45:50,389.389 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:45:50,399.399 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:45:50,540.540 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:45:50,590.590 INFO    ] time= 31/08/2026 06:45:50
[2026-08-31 06:45:50,634.634 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:45:50,671.671 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:45:50,823.823 INFO    ] No existing commands found in stream
[2026-08-31 06:45:55,837.837 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:45:55,840.840 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-08-31 06:45:58,993.993 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 06:45:58,995.995 INFO    ] Checking for system updates...
[2026-08-31 06:45:59,030.030 INFO    ] 200
[2026-08-31 06:45:59,033.033 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:45:59,091.091 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:45:59,093.093 INFO    ] No update needed
[2026-08-31 06:45:59,095.095 INFO    ] Checking for camera pi updates...
[2026-08-31 06:45:59,129.129 INFO    ] 200
[2026-08-31 06:45:59,131.131 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:45:59,176.176 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:45:59,353.353 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:45:59,356.356 INFO    ] No camera update needed
[2026-08-31 06:45:59,358.358 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:45:59,361.361 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:45:59,366.366 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:45:59,371.371 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:46:01,444.444 INFO    ] ================================================
[2026-08-31 06:46:01,503.503 INFO    ] Launching Daemon at Mon Aug 31 06:46:01 IST 2026
[2026-08-31 06:46:01,518.518 INFO    ] ================================================
[2026-08-31 06:46:02,184.184 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:46:02
[2026-08-31 06:46:02,856.856 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:46:03,181.181 INFO    ] Initializing speech engine...
[2026-08-31 06:46:03,188.188 INFO    ] 2026-08-31 06:46:03
[2026-08-31 06:46:03,485.485 INFO    ] 2026-08-31 06:46:03
[2026-08-31 06:46:03,531.531 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:46:04,266.266 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:46:04,326.326 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:46:04,535.535 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:46:04,585.585 INFO    ] time= 31/08/2026 06:46:04
[2026-08-31 06:46:04,597.597 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:46:04,600.600 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:46:04,699.699 INFO    ] No existing commands found in stream
[2026-08-31 06:46:09,712.712 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:46:09,715.715 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-08-31 06:46:11,712.712 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 06:46:11,715.715 INFO    ] Checking for system updates...
[2026-08-31 06:46:11,756.756 INFO    ] 200
[2026-08-31 06:46:11,759.759 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:46:11,817.817 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:46:11,820.820 INFO    ] No update needed
[2026-08-31 06:46:11,823.823 INFO    ] Checking for camera pi updates...
[2026-08-31 06:46:11,858.858 INFO    ] 200
[2026-08-31 06:46:11,861.861 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:46:11,906.906 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:46:11,983.983 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:46:11,986.986 INFO    ] No camera update needed
[2026-08-31 06:46:11,988.988 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:46:11,991.991 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:46:11,997.997 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:46:12,003.003 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:46:14,043.043 INFO    ] ================================================
[2026-08-31 06:46:14,058.058 INFO    ] Launching Daemon at Mon Aug 31 06:46:14 IST 2026
[2026-08-31 06:46:14,069.069 INFO    ] ================================================
[2026-08-31 06:46:14,708.708 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:46:14
[2026-08-31 06:46:15,368.368 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:46:15,661.661 INFO    ] Initializing speech engine...
[2026-08-31 06:46:15,673.673 INFO    ] 2026-08-31 06:46:15
[2026-08-31 06:46:15,945.945 INFO    ] 2026-08-31 06:46:15
[2026-08-31 06:46:16,000.000 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:46:16,287.287 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:46:16,295.295 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:46:16,494.494 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:46:16,511.511 INFO    ] time= 31/08/2026 06:46:16
[2026-08-31 06:46:16,521.521 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:46:16,548.548 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:46:16,669.669 INFO    ] No existing commands found in stream
[2026-08-31 06:46:21,700.700 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:46:21,703.703 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-08-31 06:46:24,551.551 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 06:46:24,554.554 INFO    ] Checking for system updates...
[2026-08-31 06:46:24,592.592 INFO    ] 200
[2026-08-31 06:46:24,595.595 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:46:24,649.649 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:46:24,651.651 INFO    ] No update needed
[2026-08-31 06:46:24,654.654 INFO    ] Checking for camera pi updates...
[2026-08-31 06:46:24,689.689 INFO    ] 200
[2026-08-31 06:46:24,691.691 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:46:24,734.734 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:46:24,821.821 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:46:24,824.824 INFO    ] No camera update needed
[2026-08-31 06:46:24,826.826 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:46:24,829.829 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:46:24,835.835 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:46:24,841.841 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:46:26,882.882 INFO    ] ================================================
[2026-08-31 06:46:26,898.898 INFO    ] Launching Daemon at Mon Aug 31 06:46:26 IST 2026
[2026-08-31 06:46:26,908.908 INFO    ] ================================================
[2026-08-31 06:46:27,548.548 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:46:27
[2026-08-31 06:46:28,207.207 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:46:28,505.505 INFO    ] Initializing speech engine...
[2026-08-31 06:46:28,514.514 INFO    ] 2026-08-31 06:46:28
[2026-08-31 06:46:28,824.824 INFO    ] 2026-08-31 06:46:28
[2026-08-31 06:46:28,912.912 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:46:29,126.126 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:46:29,133.133 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:46:29,322.322 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:46:29,336.336 INFO    ] time= 31/08/2026 06:46:29
[2026-08-31 06:46:29,355.355 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:46:29,385.385 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:46:29,502.502 INFO    ] No existing commands found in stream
[2026-08-31 06:46:34,532.532 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:46:34,535.535 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-08-31 06:46:36,670.670 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 06:46:36,673.673 INFO    ] Checking for system updates...
[2026-08-31 06:46:36,713.713 INFO    ] 200
[2026-08-31 06:46:36,715.715 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:46:36,770.770 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:46:36,773.773 INFO    ] No update needed
[2026-08-31 06:46:36,775.775 INFO    ] Checking for camera pi updates...
[2026-08-31 06:46:36,810.810 INFO    ] 200
[2026-08-31 06:46:36,813.813 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:46:36,855.855 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:46:36,934.934 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:46:36,937.937 INFO    ] No camera update needed
[2026-08-31 06:46:36,940.940 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:46:36,942.942 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:46:36,949.949 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:46:36,954.954 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:46:38,994.994 INFO    ] ================================================
[2026-08-31 06:46:39,012.012 INFO    ] Launching Daemon at Mon Aug 31 06:46:39 IST 2026
[2026-08-31 06:46:39,023.023 INFO    ] ================================================
[2026-08-31 06:46:39,598.598 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:46:39
[2026-08-31 06:46:40,181.181 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:46:40,434.434 INFO    ] Initializing speech engine...
[2026-08-31 06:46:40,442.442 INFO    ] 2026-08-31 06:46:40
[2026-08-31 06:46:40,735.735 INFO    ] 2026-08-31 06:46:40
[2026-08-31 06:46:40,772.772 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:46:40,965.965 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:46:40,979.979 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:46:41,136.136 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:46:41,146.146 INFO    ] time= 31/08/2026 06:46:41
[2026-08-31 06:46:41,151.151 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:46:41,158.158 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:46:41,233.233 INFO    ] No existing commands found in stream
[2026-08-31 06:46:46,248.248 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:46:46,251.251 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-08-31 06:46:47,398.398 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 06:46:47,401.401 INFO    ] Checking for system updates...
[2026-08-31 06:46:47,439.439 INFO    ] 200
[2026-08-31 06:46:47,442.442 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:46:47,495.495 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:46:47,498.498 INFO    ] No update needed
[2026-08-31 06:46:47,501.501 INFO    ] Checking for camera pi updates...
[2026-08-31 06:46:47,535.535 INFO    ] 200
[2026-08-31 06:46:47,538.538 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:46:47,579.579 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:46:47,667.667 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:46:47,670.670 INFO    ] No camera update needed
[2026-08-31 06:46:47,673.673 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:46:47,675.675 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:46:47,681.681 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:46:47,687.687 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:46:49,728.728 INFO    ] ================================================
[2026-08-31 06:46:49,743.743 INFO    ] Launching Daemon at Mon Aug 31 06:46:49 IST 2026
[2026-08-31 06:46:49,754.754 INFO    ] ================================================
[2026-08-31 06:46:50,330.330 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:46:50
[2026-08-31 06:46:50,917.917 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:46:51,172.172 INFO    ] Initializing speech engine...
[2026-08-31 06:46:51,195.195 INFO    ] 2026-08-31 06:46:51
[2026-08-31 06:46:51,447.447 INFO    ] 2026-08-31 06:46:51
[2026-08-31 06:46:51,482.482 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:46:51,734.734 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:46:51,743.743 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:46:51,955.955 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:46:52,000.000 INFO    ] time= 31/08/2026 06:46:51
[2026-08-31 06:46:52,017.017 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:46:52,026.026 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:46:52,153.153 INFO    ] No existing commands found in stream
[2026-08-31 06:46:57,166.166 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:46:57,169.169 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-08-31 06:46:58,910.910 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 06:46:58,913.913 INFO    ] Checking for system updates...
[2026-08-31 06:46:58,949.949 INFO    ] 200
[2026-08-31 06:46:58,951.951 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:46:59,003.003 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:46:59,005.005 INFO    ] No update needed
[2026-08-31 06:46:59,008.008 INFO    ] Checking for camera pi updates...
[2026-08-31 06:46:59,042.042 INFO    ] 200
[2026-08-31 06:46:59,044.044 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:46:59,084.084 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:46:59,181.181 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:46:59,184.184 INFO    ] No camera update needed
[2026-08-31 06:46:59,186.186 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:46:59,188.188 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:46:59,194.194 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:46:59,199.199 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:47:01,239.239 INFO    ] ================================================
[2026-08-31 06:47:01,255.255 INFO    ] Launching Daemon at Mon Aug 31 06:47:01 IST 2026
[2026-08-31 06:47:01,265.265 INFO    ] ================================================
[2026-08-31 06:47:01,986.986 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:47:01
[2026-08-31 06:47:02,636.636 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:47:02,958.958 INFO    ] Initializing speech engine...
[2026-08-31 06:47:02,973.973 INFO    ] 2026-08-31 06:47:02
[2026-08-31 06:47:03,291.291 INFO    ] 2026-08-31 06:47:03
[2026-08-31 06:47:03,341.341 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:47:03,543.543 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:47:03,550.550 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:47:03,725.725 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:47:03,733.733 INFO    ] time= 31/08/2026 06:47:03
[2026-08-31 06:47:03,738.738 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:47:03,745.745 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:47:03,868.868 INFO    ] No existing commands found in stream
[2026-08-31 06:47:08,893.893 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:47:08,896.896 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-08-31 06:47:09,619.619 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 06:47:09,621.621 INFO    ] Checking for system updates...
[2026-08-31 06:47:09,658.658 INFO    ] 200
[2026-08-31 06:47:09,661.661 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:47:09,714.714 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:47:09,717.717 INFO    ] No update needed
[2026-08-31 06:47:09,720.720 INFO    ] Checking for camera pi updates...
[2026-08-31 06:47:09,754.754 INFO    ] 200
[2026-08-31 06:47:09,757.757 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:47:09,797.797 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:47:09,877.877 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:47:09,880.880 INFO    ] No camera update needed
[2026-08-31 06:47:09,882.882 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:47:09,885.885 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:47:09,890.890 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:47:09,895.895 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:47:11,937.937 INFO    ] ================================================
[2026-08-31 06:47:11,953.953 INFO    ] Launching Daemon at Mon Aug 31 06:47:11 IST 2026
[2026-08-31 06:47:11,964.964 INFO    ] ================================================
[2026-08-31 06:47:12,544.544 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:47:12
[2026-08-31 06:47:13,147.147 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:47:13,415.415 INFO    ] Initializing speech engine...
[2026-08-31 06:47:13,424.424 INFO    ] 2026-08-31 06:47:13
[2026-08-31 06:47:13,671.671 INFO    ] 2026-08-31 06:47:13
[2026-08-31 06:47:13,705.705 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:47:13,886.886 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:47:13,902.902 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:47:14,098.098 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:47:14,145.145 INFO    ] time= 31/08/2026 06:47:14
[2026-08-31 06:47:14,194.194 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:47:14,230.230 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:47:14,369.369 INFO    ] No existing commands found in stream
[2026-08-31 06:47:19,390.390 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:47:19,393.393 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-08-31 06:47:20,147.147 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 06:47:20,149.149 INFO    ] Checking for system updates...
[2026-08-31 06:47:20,185.185 INFO    ] 200
[2026-08-31 06:47:20,188.188 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:47:20,241.241 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:47:20,244.244 INFO    ] No update needed
[2026-08-31 06:47:20,246.246 INFO    ] Checking for camera pi updates...
[2026-08-31 06:47:20,280.280 INFO    ] 200
[2026-08-31 06:47:20,282.282 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:47:20,330.330 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:47:20,426.426 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:47:20,429.429 INFO    ] No camera update needed
[2026-08-31 06:47:20,431.431 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:47:20,433.433 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:47:20,439.439 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:47:20,444.444 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:47:22,485.485 INFO    ] ================================================
[2026-08-31 06:47:22,500.500 INFO    ] Launching Daemon at Mon Aug 31 06:47:22 IST 2026
[2026-08-31 06:47:22,511.511 INFO    ] ================================================
[2026-08-31 06:47:23,098.098 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:47:23
[2026-08-31 06:47:23,689.689 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:47:23,961.961 INFO    ] Initializing speech engine...
[2026-08-31 06:47:23,977.977 INFO    ] 2026-08-31 06:47:23
[2026-08-31 06:47:24,251.251 INFO    ] 2026-08-31 06:47:24
[2026-08-31 06:47:24,286.286 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:47:24,487.487 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:47:24,502.502 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:47:24,666.666 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:47:24,675.675 INFO    ] time= 31/08/2026 06:47:24
[2026-08-31 06:47:24,682.682 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:47:24,734.734 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:47:24,881.881 INFO    ] No existing commands found in stream
[2026-08-31 06:47:29,911.911 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:47:29,914.914 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-08-31 06:47:32,888.888 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 06:47:32,891.891 INFO    ] Checking for system updates...
[2026-08-31 06:47:32,930.930 INFO    ] 200
[2026-08-31 06:47:32,932.932 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:47:32,991.991 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:47:32,993.993 INFO    ] No update needed
[2026-08-31 06:47:32,996.996 INFO    ] Checking for camera pi updates...
[2026-08-31 06:47:33,033.033 INFO    ] 200
[2026-08-31 06:47:33,035.035 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:47:33,075.075 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:47:33,164.164 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:47:33,166.166 INFO    ] No camera update needed
[2026-08-31 06:47:33,169.169 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:47:33,171.171 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:47:33,176.176 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:47:33,181.181 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:47:35,221.221 INFO    ] ================================================
[2026-08-31 06:47:35,236.236 INFO    ] Launching Daemon at Mon Aug 31 06:47:35 IST 2026
[2026-08-31 06:47:35,248.248 INFO    ] ================================================
[2026-08-31 06:47:35,823.823 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:47:35
[2026-08-31 06:47:36,405.405 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:47:36,674.674 INFO    ] Initializing speech engine...
[2026-08-31 06:47:36,685.685 INFO    ] 2026-08-31 06:47:36
[2026-08-31 06:47:36,929.929 INFO    ] 2026-08-31 06:47:36
[2026-08-31 06:47:36,964.964 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:47:37,278.278 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:47:37,284.284 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:47:37,480.480 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:47:37,487.487 INFO    ] time= 31/08/2026 06:47:37
[2026-08-31 06:47:37,504.504 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:47:37,532.532 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:47:37,663.663 INFO    ] No existing commands found in stream
[2026-08-31 06:47:42,694.694 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:47:42,696.696 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-08-31 06:47:45,886.886 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 06:47:45,889.889 INFO    ] Checking for system updates...
[2026-08-31 06:47:45,924.924 INFO    ] 200
[2026-08-31 06:47:45,926.926 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:47:45,979.979 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:47:45,981.981 INFO    ] No update needed
[2026-08-31 06:47:45,984.984 INFO    ] Checking for camera pi updates...
[2026-08-31 06:47:46,017.017 INFO    ] 200
[2026-08-31 06:47:46,020.020 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:47:46,062.062 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:47:46,156.156 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:47:46,159.159 INFO    ] No camera update needed
[2026-08-31 06:47:46,161.161 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:47:46,164.164 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:47:46,169.169 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:47:46,174.174 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:47:48,216.216 INFO    ] ================================================
[2026-08-31 06:47:48,232.232 INFO    ] Launching Daemon at Mon Aug 31 06:47:48 IST 2026
[2026-08-31 06:47:48,244.244 INFO    ] ================================================
[2026-08-31 06:47:48,828.828 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:47:48
[2026-08-31 06:47:49,448.448 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:47:49,748.748 INFO    ] Initializing speech engine...
[2026-08-31 06:47:49,759.759 INFO    ] 2026-08-31 06:47:49
[2026-08-31 06:47:50,039.039 INFO    ] 2026-08-31 06:47:50
[2026-08-31 06:47:50,094.094 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:47:50,309.309 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:47:50,331.331 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:47:50,515.515 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:47:50,572.572 INFO    ] time= 31/08/2026 06:47:50
[2026-08-31 06:47:50,578.578 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:47:50,597.597 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:47:50,707.707 INFO    ] No existing commands found in stream
[2026-08-31 06:47:55,735.735 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:47:55,738.738 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-08-31 06:47:56,652.652 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 06:47:56,654.654 INFO    ] Checking for system updates...
[2026-08-31 06:47:56,691.691 INFO    ] 200
[2026-08-31 06:47:56,694.694 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:47:56,746.746 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:47:56,749.749 INFO    ] No update needed
[2026-08-31 06:47:56,751.751 INFO    ] Checking for camera pi updates...
[2026-08-31 06:47:56,784.784 INFO    ] 200
[2026-08-31 06:47:56,787.787 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:47:56,827.827 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:47:56,925.925 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:47:56,927.927 INFO    ] No camera update needed
[2026-08-31 06:47:56,930.930 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:47:56,932.932 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:47:56,937.937 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:47:56,942.942 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:47:58,982.982 INFO    ] ================================================
[2026-08-31 06:47:59,997.997 INFO    ] Launching Daemon at Mon Aug 31 06:47:58 IST 2026
[2026-08-31 06:47:59,009.009 INFO    ] ================================================
[2026-08-31 06:47:59,648.648 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:47:59
[2026-08-31 06:48:00,313.313 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:48:00,573.573 INFO    ] Initializing speech engine...
[2026-08-31 06:48:00,590.590 INFO    ] 2026-08-31 06:48:00
[2026-08-31 06:48:00,870.870 INFO    ] 2026-08-31 06:48:00
[2026-08-31 06:48:00,907.907 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:48:01,184.184 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:48:01,194.194 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:48:01,345.345 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:48:01,385.385 INFO    ] time= 31/08/2026 06:48:01
[2026-08-31 06:48:01,429.429 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:48:01,479.479 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:48:01,588.588 INFO    ] No existing commands found in stream
[2026-08-31 06:48:06,599.599 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:48:06,601.601 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-08-31 06:48:07,949.949 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 06:48:07,951.951 INFO    ] Checking for system updates...
[2026-08-31 06:48:07,986.986 INFO    ] 200
[2026-08-31 06:48:07,989.989 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:48:08,052.052 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:48:08,054.054 INFO    ] No update needed
[2026-08-31 06:48:08,056.056 INFO    ] Checking for camera pi updates...
[2026-08-31 06:48:08,093.093 INFO    ] 200
[2026-08-31 06:48:08,096.096 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:48:08,137.137 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:48:08,240.240 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:48:08,243.243 INFO    ] No camera update needed
[2026-08-31 06:48:08,245.245 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:48:08,248.248 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:48:08,253.253 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:48:08,258.258 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:48:10,299.299 INFO    ] ================================================
[2026-08-31 06:48:10,315.315 INFO    ] Launching Daemon at Mon Aug 31 06:48:10 IST 2026
[2026-08-31 06:48:10,326.326 INFO    ] ================================================
[2026-08-31 06:48:10,890.890 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:48:10
[2026-08-31 06:48:11,471.471 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:48:11,742.742 INFO    ] Initializing speech engine...
[2026-08-31 06:48:11,752.752 INFO    ] 2026-08-31 06:48:11
[2026-08-31 06:48:12,000.000 INFO    ] 2026-08-31 06:48:11
[2026-08-31 06:48:12,066.066 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:48:12,295.295 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:48:12,301.301 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:48:12,521.521 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:48:12,564.564 INFO    ] time= 31/08/2026 06:48:12
[2026-08-31 06:48:12,570.570 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:48:12,586.586 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:48:12,722.722 INFO    ] No existing commands found in stream
[2026-08-31 06:48:17,737.737 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:48:17,740.740 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-08-31 06:48:21,697.697 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 06:48:21,699.699 INFO    ] Checking for system updates...
[2026-08-31 06:48:21,738.738 INFO    ] 200
[2026-08-31 06:48:21,741.741 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:48:21,806.806 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:48:21,809.809 INFO    ] No update needed
[2026-08-31 06:48:21,811.811 INFO    ] Checking for camera pi updates...
[2026-08-31 06:48:21,844.844 INFO    ] 200
[2026-08-31 06:48:21,847.847 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:48:21,886.886 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:48:21,965.965 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:48:21,968.968 INFO    ] No camera update needed
[2026-08-31 06:48:21,970.970 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:48:21,972.972 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:48:21,978.978 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:48:21,983.983 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:48:24,024.024 INFO    ] ================================================
[2026-08-31 06:48:24,040.040 INFO    ] Launching Daemon at Mon Aug 31 06:48:24 IST 2026
[2026-08-31 06:48:24,052.052 INFO    ] ================================================
[2026-08-31 06:48:24,617.617 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:48:24
[2026-08-31 06:48:25,224.224 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:48:25,503.503 INFO    ] Initializing speech engine...
[2026-08-31 06:48:25,508.508 INFO    ] 2026-08-31 06:48:25
[2026-08-31 06:48:25,756.756 INFO    ] 2026-08-31 06:48:25
[2026-08-31 06:48:25,791.791 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:48:25,976.976 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:48:25,995.995 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:48:26,126.126 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:48:26,131.131 INFO    ] time= 31/08/2026 06:48:26
[2026-08-31 06:48:26,139.139 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:48:26,183.183 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:48:26,316.316 INFO    ] No existing commands found in stream
[2026-08-31 06:48:31,340.340 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:48:31,343.343 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-08-31 06:48:34,535.535 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 06:48:34,538.538 INFO    ] Checking for system updates...
[2026-08-31 06:48:34,578.578 INFO    ] 200
[2026-08-31 06:48:34,581.581 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:48:34,644.644 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:48:34,647.647 INFO    ] No update needed
[2026-08-31 06:48:34,651.651 INFO    ] Checking for camera pi updates...
[2026-08-31 06:48:34,685.685 INFO    ] 200
[2026-08-31 06:48:34,688.688 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:48:34,734.734 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:48:34,838.838 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:48:34,840.840 INFO    ] No camera update needed
[2026-08-31 06:48:34,842.842 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:48:34,845.845 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:48:34,850.850 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:48:34,855.855 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:48:36,895.895 INFO    ] ================================================
[2026-08-31 06:48:36,911.911 INFO    ] Launching Daemon at Mon Aug 31 06:48:36 IST 2026
[2026-08-31 06:48:36,926.926 INFO    ] ================================================
[2026-08-31 06:48:37,490.490 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:48:37
[2026-08-31 06:48:38,075.075 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:48:38,413.413 INFO    ] Initializing speech engine...
[2026-08-31 06:48:38,427.427 INFO    ] 2026-08-31 06:48:38
[2026-08-31 06:48:38,698.698 INFO    ] 2026-08-31 06:48:38
[2026-08-31 06:48:38,751.751 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:48:38,986.986 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:48:38,992.992 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:48:39,126.126 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:48:39,180.180 INFO    ] time= 31/08/2026 06:48:39
[2026-08-31 06:48:39,229.229 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:48:39,265.265 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:48:39,412.412 INFO    ] No existing commands found in stream
[2026-08-31 06:48:44,430.430 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:48:44,433.433 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-08-31 06:48:46,970.970 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 06:48:46,973.973 INFO    ] Checking for system updates...
[2026-08-31 06:48:47,013.013 INFO    ] 200
[2026-08-31 06:48:47,016.016 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:48:47,069.069 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:48:47,072.072 INFO    ] No update needed
[2026-08-31 06:48:47,075.075 INFO    ] Checking for camera pi updates...
[2026-08-31 06:48:47,112.112 INFO    ] 200
[2026-08-31 06:48:47,115.115 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:48:47,156.156 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:48:47,242.242 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:48:47,245.245 INFO    ] No camera update needed
[2026-08-31 06:48:47,249.249 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:48:47,252.252 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:48:47,259.259 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:48:47,267.267 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:48:49,312.312 INFO    ] ================================================
[2026-08-31 06:48:49,327.327 INFO    ] Launching Daemon at Mon Aug 31 06:48:49 IST 2026
[2026-08-31 06:48:49,339.339 INFO    ] ================================================
[2026-08-31 06:48:49,905.905 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:48:49
[2026-08-31 06:48:50,488.488 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:48:50,748.748 INFO    ] Initializing speech engine...
[2026-08-31 06:48:50,767.767 INFO    ] 2026-08-31 06:48:50
[2026-08-31 06:48:51,018.018 INFO    ] 2026-08-31 06:48:51
[2026-08-31 06:48:51,054.054 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:48:51,236.236 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:48:51,253.253 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:48:51,390.390 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:48:51,399.399 INFO    ] time= 31/08/2026 06:48:51
[2026-08-31 06:48:51,404.404 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:48:51,450.450 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:48:51,595.595 INFO    ] No existing commands found in stream
[2026-08-31 06:48:56,609.609 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:48:56,612.612 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-08-31 06:48:59,548.548 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 06:48:59,551.551 INFO    ] Checking for system updates...
[2026-08-31 06:48:59,587.587 INFO    ] 200
[2026-08-31 06:48:59,589.589 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:48:59,647.647 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:48:59,650.650 INFO    ] No update needed
[2026-08-31 06:48:59,652.652 INFO    ] Checking for camera pi updates...
[2026-08-31 06:48:59,685.685 INFO    ] 200
[2026-08-31 06:48:59,688.688 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:48:59,729.729 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:48:59,812.812 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:48:59,815.815 INFO    ] No camera update needed
[2026-08-31 06:48:59,818.818 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:48:59,820.820 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:48:59,827.827 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:48:59,833.833 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:49:01,883.883 INFO    ] ================================================
[2026-08-31 06:49:01,923.923 INFO    ] Launching Daemon at Mon Aug 31 06:49:01 IST 2026
[2026-08-31 06:49:01,941.941 INFO    ] ================================================
[2026-08-31 06:49:02,628.628 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:49:02
[2026-08-31 06:49:03,302.302 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:49:03,594.594 INFO    ] Initializing speech engine...
[2026-08-31 06:49:03,609.609 INFO    ] 2026-08-31 06:49:03
[2026-08-31 06:49:03,884.884 INFO    ] 2026-08-31 06:49:03
[2026-08-31 06:49:03,920.920 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:49:04,114.114 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:49:04,127.127 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:49:04,360.360 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:49:04,368.368 INFO    ] time= 31/08/2026 06:49:04
[2026-08-31 06:49:04,412.412 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:49:04,466.466 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:49:04,564.564 INFO    ] No existing commands found in stream
[2026-08-31 06:49:09,576.576 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:49:09,579.579 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-08-31 06:49:13,319.319 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 06:49:13,322.322 INFO    ] Checking for system updates...
[2026-08-31 06:49:13,357.357 INFO    ] 200
[2026-08-31 06:49:13,360.360 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:49:13,412.412 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:49:13,415.415 INFO    ] No update needed
[2026-08-31 06:49:13,417.417 INFO    ] Checking for camera pi updates...
[2026-08-31 06:49:13,450.450 INFO    ] 200
[2026-08-31 06:49:13,453.453 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:49:13,494.494 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:49:13,578.578 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:49:13,580.580 INFO    ] No camera update needed
[2026-08-31 06:49:13,583.583 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:49:13,585.585 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:49:13,590.590 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:49:13,595.595 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:49:15,634.634 INFO    ] ================================================
[2026-08-31 06:49:15,649.649 INFO    ] Launching Daemon at Mon Aug 31 06:49:15 IST 2026
[2026-08-31 06:49:15,659.659 INFO    ] ================================================
[2026-08-31 06:49:16,247.247 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:49:16
[2026-08-31 06:49:16,872.872 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:49:17,169.169 INFO    ] Initializing speech engine...
[2026-08-31 06:49:17,183.183 INFO    ] 2026-08-31 06:49:17
[2026-08-31 06:49:17,448.448 INFO    ] 2026-08-31 06:49:17
[2026-08-31 06:49:17,490.490 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:49:17,739.739 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:49:17,743.743 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:49:17,958.958 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:49:17,980.980 INFO    ] time= 31/08/2026 06:49:17
[2026-08-31 06:49:17,998.998 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:49:18,026.026 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:49:18,136.136 INFO    ] No existing commands found in stream
[2026-08-31 06:49:23,167.167 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:49:23,170.170 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-08-31 06:49:30,428.428 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 06:49:30,431.431 INFO    ] Checking for system updates...
[2026-08-31 06:49:30,466.466 INFO    ] 200
[2026-08-31 06:49:30,469.469 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:49:30,526.526 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:49:30,529.529 INFO    ] No update needed
[2026-08-31 06:49:30,531.531 INFO    ] Checking for camera pi updates...
[2026-08-31 06:49:30,567.567 INFO    ] 200
[2026-08-31 06:49:30,569.569 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:49:30,609.609 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:49:30,674.674 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:49:30,676.676 INFO    ] No camera update needed
[2026-08-31 06:49:30,679.679 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:49:30,681.681 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:49:30,686.686 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:49:30,691.691 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:49:32,739.739 INFO    ] ================================================
[2026-08-31 06:49:32,754.754 INFO    ] Launching Daemon at Mon Aug 31 06:49:32 IST 2026
[2026-08-31 06:49:32,765.765 INFO    ] ================================================
[2026-08-31 06:49:33,359.359 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:49:33
[2026-08-31 06:49:33,945.945 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:49:34,203.203 INFO    ] Initializing speech engine...
[2026-08-31 06:49:34,216.216 INFO    ] 2026-08-31 06:49:34
[2026-08-31 06:49:34,496.496 INFO    ] 2026-08-31 06:49:34
[2026-08-31 06:49:34,532.532 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:49:34,722.722 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:49:34,736.736 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:49:34,903.903 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:49:34,958.958 INFO    ] time= 31/08/2026 06:49:34
[2026-08-31 06:49:34,973.973 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:49:35,021.021 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:49:35,119.119 INFO    ] No existing commands found in stream
[2026-08-31 06:49:40,132.132 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:49:40,135.135 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-08-31 06:49:44,444.444 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 06:49:44,446.446 INFO    ] Checking for system updates...
[2026-08-31 06:49:44,486.486 INFO    ] 200
[2026-08-31 06:49:44,489.489 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:49:44,541.541 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:49:44,543.543 INFO    ] No update needed
[2026-08-31 06:49:44,546.546 INFO    ] Checking for camera pi updates...
[2026-08-31 06:49:44,580.580 INFO    ] 200
[2026-08-31 06:49:44,582.582 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:49:44,622.622 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:49:44,679.679 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:49:44,682.682 INFO    ] No camera update needed
[2026-08-31 06:49:44,684.684 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:49:44,686.686 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:49:44,692.692 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:49:44,696.696 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:49:46,738.738 INFO    ] ================================================
[2026-08-31 06:49:46,753.753 INFO    ] Launching Daemon at Mon Aug 31 06:49:46 IST 2026
[2026-08-31 06:49:46,764.764 INFO    ] ================================================
[2026-08-31 06:49:47,331.331 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:49:47
[2026-08-31 06:49:47,914.914 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:49:48,161.161 INFO    ] Initializing speech engine...
[2026-08-31 06:49:48,170.170 INFO    ] 2026-08-31 06:49:48
[2026-08-31 06:49:48,465.465 INFO    ] 2026-08-31 06:49:48
[2026-08-31 06:49:48,491.491 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:49:48,721.721 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:49:48,730.730 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:49:48,946.946 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:49:48,954.954 INFO    ] time= 31/08/2026 06:49:48
[2026-08-31 06:49:48,998.998 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:49:49,041.041 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:49:49,124.124 INFO    ] No existing commands found in stream
[2026-08-31 06:49:54,135.135 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:49:54,138.138 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-08-31 06:49:56,908.908 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 06:49:56,911.911 INFO    ] Checking for system updates...
[2026-08-31 06:49:56,946.946 INFO    ] 200
[2026-08-31 06:49:56,948.948 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:49:57,004.004 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:49:57,007.007 INFO    ] No update needed
[2026-08-31 06:49:57,009.009 INFO    ] Checking for camera pi updates...
[2026-08-31 06:49:57,043.043 INFO    ] 200
[2026-08-31 06:49:57,045.045 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:49:57,088.088 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:49:57,179.179 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:49:57,181.181 INFO    ] No camera update needed
[2026-08-31 06:49:57,183.183 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:49:57,186.186 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:49:57,191.191 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:49:57,196.196 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:49:59,236.236 INFO    ] ================================================
[2026-08-31 06:49:59,251.251 INFO    ] Launching Daemon at Mon Aug 31 06:49:59 IST 2026
[2026-08-31 06:49:59,261.261 INFO    ] ================================================
[2026-08-31 06:49:59,836.836 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:49:59
[2026-08-31 06:50:00,425.425 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:50:00,685.685 INFO    ] Initializing speech engine...
[2026-08-31 06:50:00,699.699 INFO    ] 2026-08-31 06:50:00
[2026-08-31 06:50:00,983.983 INFO    ] 2026-08-31 06:50:00
[2026-08-31 06:50:01,018.018 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:50:01,238.238 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:50:01,247.247 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:50:01,391.391 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:50:01,397.397 INFO    ] time= 31/08/2026 06:50:01
[2026-08-31 06:50:01,403.403 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:50:01,435.435 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:50:01,578.578 INFO    ] No existing commands found in stream
[2026-08-31 06:50:06,604.604 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:50:06,607.607 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-08-31 06:50:09,405.405 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 06:50:09,408.408 INFO    ] Checking for system updates...
[2026-08-31 06:50:09,443.443 INFO    ] 200
[2026-08-31 06:50:09,446.446 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:50:09,499.499 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:50:09,501.501 INFO    ] No update needed
[2026-08-31 06:50:09,503.503 INFO    ] Checking for camera pi updates...
[2026-08-31 06:50:09,541.541 INFO    ] 200
[2026-08-31 06:50:09,544.544 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:50:09,584.584 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:50:09,788.788 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:50:09,791.791 INFO    ] No camera update needed
[2026-08-31 06:50:09,793.793 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:50:09,795.795 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:50:09,801.801 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:50:09,806.806 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:50:11,849.849 INFO    ] ================================================
[2026-08-31 06:50:11,864.864 INFO    ] Launching Daemon at Mon Aug 31 06:50:11 IST 2026
[2026-08-31 06:50:11,874.874 INFO    ] ================================================
[2026-08-31 06:50:12,441.441 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:50:12
[2026-08-31 06:50:13,020.020 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:50:13,286.286 INFO    ] Initializing speech engine...
[2026-08-31 06:50:13,296.296 INFO    ] 2026-08-31 06:50:13
[2026-08-31 06:50:13,548.548 INFO    ] 2026-08-31 06:50:13
[2026-08-31 06:50:13,604.604 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:50:13,826.826 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:50:13,835.835 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:50:13,966.966 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:50:14,008.008 INFO    ] time= 31/08/2026 06:50:13
[2026-08-31 06:50:14,067.067 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:50:14,099.099 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:50:14,236.236 INFO    ] No existing commands found in stream
[2026-08-31 06:50:19,255.255 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:50:19,258.258 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-08-31 06:50:21,788.788 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 06:50:21,791.791 INFO    ] Checking for system updates...
[2026-08-31 06:50:21,827.827 INFO    ] 200
[2026-08-31 06:50:21,829.829 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:50:21,884.884 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:50:21,886.886 INFO    ] No update needed
[2026-08-31 06:50:21,889.889 INFO    ] Checking for camera pi updates...
[2026-08-31 06:50:21,922.922 INFO    ] 200
[2026-08-31 06:50:21,924.924 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:50:21,964.964 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:50:22,051.051 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:50:22,053.053 INFO    ] No camera update needed
[2026-08-31 06:50:22,056.056 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:50:22,058.058 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:50:22,064.064 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:50:22,069.069 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:50:24,109.109 INFO    ] ================================================
[2026-08-31 06:50:24,124.124 INFO    ] Launching Daemon at Mon Aug 31 06:50:24 IST 2026
[2026-08-31 06:50:24,135.135 INFO    ] ================================================
[2026-08-31 06:50:24,701.701 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:50:24
[2026-08-31 06:50:25,284.284 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:50:25,553.553 INFO    ] Initializing speech engine...
[2026-08-31 06:50:25,562.562 INFO    ] 2026-08-31 06:50:25
[2026-08-31 06:50:25,808.808 INFO    ] 2026-08-31 06:50:25
[2026-08-31 06:50:25,844.844 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:50:26,094.094 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:50:26,103.103 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:50:26,315.315 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:50:26,359.359 INFO    ] time= 31/08/2026 06:50:26
[2026-08-31 06:50:26,365.365 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:50:26,387.387 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:50:26,511.511 INFO    ] No existing commands found in stream
[2026-08-31 06:50:31,526.526 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:50:31,529.529 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-08-31 06:50:33,800.800 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 06:50:33,802.802 INFO    ] Checking for system updates...
[2026-08-31 06:50:33,841.841 INFO    ] 200
[2026-08-31 06:50:33,843.843 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-08-31 06:50:33,846.846 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-08-31 06:50:33,849.849 INFO    ] Checking for camera pi updates...
[2026-08-31 06:50:33,901.901 INFO    ] 200
[2026-08-31 06:50:33,904.904 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-08-31 06:50:33,907.907 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-08-31 06:50:33,909.909 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:50:33,912.912 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:50:33,918.918 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:50:33,924.924 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:50:35,966.966 INFO    ] ================================================
[2026-08-31 06:50:35,981.981 INFO    ] Launching Daemon at Mon Aug 31 06:50:35 IST 2026
[2026-08-31 06:50:35,992.992 INFO    ] ================================================
[2026-08-31 06:50:36,658.658 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:50:36
[2026-08-31 06:50:37,345.345 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:50:37,654.654 INFO    ] Initializing speech engine...
[2026-08-31 06:50:37,659.659 INFO    ] 2026-08-31 06:50:37
[2026-08-31 06:50:37,948.948 INFO    ] 2026-08-31 06:50:37
[2026-08-31 06:50:38,028.028 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:50:38,243.243 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:50:38,251.251 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:50:38,447.447 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:50:38,454.454 INFO    ] time= 31/08/2026 06:50:38
[2026-08-31 06:50:38,473.473 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:50:38,501.501 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:50:38,610.610 INFO    ] No existing commands found in stream
[2026-08-31 06:50:43,638.638 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:50:43,641.641 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-08-31 06:50:46,429.429 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 06:50:46,431.431 INFO    ] Checking for system updates...
[2026-08-31 06:50:46,472.472 INFO    ] 200
[2026-08-31 06:50:46,474.474 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:50:46,527.527 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:50:46,530.530 INFO    ] No update needed
[2026-08-31 06:50:46,532.532 INFO    ] Checking for camera pi updates...
[2026-08-31 06:50:46,566.566 INFO    ] 200
[2026-08-31 06:50:46,569.569 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:50:46,615.615 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:50:46,693.693 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:50:46,695.695 INFO    ] No camera update needed
[2026-08-31 06:50:46,698.698 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:50:46,700.700 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:50:46,706.706 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:50:46,711.711 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:50:48,751.751 INFO    ] ================================================
[2026-08-31 06:50:48,767.767 INFO    ] Launching Daemon at Mon Aug 31 06:50:48 IST 2026
[2026-08-31 06:50:48,778.778 INFO    ] ================================================
[2026-08-31 06:50:49,351.351 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:50:49
[2026-08-31 06:50:49,944.944 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:50:50,214.214 INFO    ] Initializing speech engine...
[2026-08-31 06:50:50,223.223 INFO    ] 2026-08-31 06:50:50
[2026-08-31 06:50:50,470.470 INFO    ] 2026-08-31 06:50:50
[2026-08-31 06:50:50,506.506 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:50:50,757.757 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:50:50,766.766 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:50:50,907.907 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:50:50,972.972 INFO    ] time= 31/08/2026 06:50:50
[2026-08-31 06:50:51,021.021 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:50:51,034.034 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:50:51,163.163 INFO    ] No existing commands found in stream
[2026-08-31 06:50:56,190.190 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:50:56,193.193 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-08-31 06:50:59,790.790 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 06:50:59,792.792 INFO    ] Checking for system updates...
[2026-08-31 06:50:59,829.829 INFO    ] 200
[2026-08-31 06:50:59,831.831 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:50:59,884.884 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:50:59,887.887 INFO    ] No update needed
[2026-08-31 06:50:59,890.890 INFO    ] Checking for camera pi updates...
[2026-08-31 06:50:59,924.924 INFO    ] 200
[2026-08-31 06:50:59,926.926 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:50:59,967.967 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:51:00,055.055 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:51:00,058.058 INFO    ] No camera update needed
[2026-08-31 06:51:00,061.061 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:51:00,063.063 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:51:00,068.068 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:51:00,073.073 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:51:02,117.117 INFO    ] ================================================
[2026-08-31 06:51:02,134.134 INFO    ] Launching Daemon at Mon Aug 31 06:51:02 IST 2026
[2026-08-31 06:51:02,146.146 INFO    ] ================================================
[2026-08-31 06:51:02,817.817 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:51:02
[2026-08-31 06:51:03,542.542 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:51:03,859.859 INFO    ] Initializing speech engine...
[2026-08-31 06:51:03,871.871 INFO    ] 2026-08-31 06:51:03
[2026-08-31 06:51:04,151.151 INFO    ] 2026-08-31 06:51:04
[2026-08-31 06:51:04,216.216 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:51:04,477.477 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:51:04,496.496 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:51:04,692.692 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:51:04,725.725 INFO    ] time= 31/08/2026 06:51:04
[2026-08-31 06:51:04,748.748 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:51:04,777.777 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:51:04,910.910 INFO    ] No existing commands found in stream
[2026-08-31 06:51:09,946.946 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:51:09,950.950 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-08-31 06:51:13,683.683 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 06:51:13,686.686 INFO    ] Checking for system updates...
[2026-08-31 06:51:13,724.724 INFO    ] 200
[2026-08-31 06:51:13,726.726 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:51:13,789.789 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:51:13,792.792 INFO    ] No update needed
[2026-08-31 06:51:13,794.794 INFO    ] Checking for camera pi updates...
[2026-08-31 06:51:13,829.829 INFO    ] 200
[2026-08-31 06:51:13,832.832 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:51:13,872.872 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:51:13,966.966 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:51:13,968.968 INFO    ] No camera update needed
[2026-08-31 06:51:13,971.971 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:51:13,973.973 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:51:13,978.978 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:51:13,983.983 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:51:16,022.022 INFO    ] ================================================
[2026-08-31 06:51:16,038.038 INFO    ] Launching Daemon at Mon Aug 31 06:51:16 IST 2026
[2026-08-31 06:51:16,048.048 INFO    ] ================================================
[2026-08-31 06:51:16,616.616 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:51:16
[2026-08-31 06:51:17,197.197 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:51:17,441.441 INFO    ] Initializing speech engine...
[2026-08-31 06:51:17,448.448 INFO    ] 2026-08-31 06:51:17
[2026-08-31 06:51:17,757.757 INFO    ] 2026-08-31 06:51:17
[2026-08-31 06:51:17,795.795 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:51:17,999.999 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:51:18,012.012 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:51:18,167.167 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:51:18,175.175 INFO    ] time= 31/08/2026 06:51:18
[2026-08-31 06:51:18,180.180 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:51:18,186.186 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:51:18,264.264 INFO    ] No existing commands found in stream
[2026-08-31 06:51:23,295.295 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:51:23,298.298 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-08-31 06:51:25,070.070 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 06:51:25,073.073 INFO    ] Checking for system updates...
[2026-08-31 06:51:25,109.109 INFO    ] 200
[2026-08-31 06:51:25,112.112 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:51:25,165.165 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:51:25,168.168 INFO    ] No update needed
[2026-08-31 06:51:25,171.171 INFO    ] Checking for camera pi updates...
[2026-08-31 06:51:25,211.211 INFO    ] 200
[2026-08-31 06:51:25,214.214 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:51:25,255.255 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:51:25,360.360 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:51:25,363.363 INFO    ] No camera update needed
[2026-08-31 06:51:25,366.366 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:51:25,369.369 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:51:25,375.375 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:51:25,382.382 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:51:27,432.432 INFO    ] ================================================
[2026-08-31 06:51:27,448.448 INFO    ] Launching Daemon at Mon Aug 31 06:51:27 IST 2026
[2026-08-31 06:51:27,459.459 INFO    ] ================================================
[2026-08-31 06:51:28,138.138 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:51:28
[2026-08-31 06:51:28,828.828 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:51:29,147.147 INFO    ] Initializing speech engine...
[2026-08-31 06:51:29,154.154 INFO    ] 2026-08-31 06:51:29
[2026-08-31 06:51:29,469.469 INFO    ] 2026-08-31 06:51:29
[2026-08-31 06:51:29,555.555 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:51:29,770.770 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:51:29,786.786 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:51:30,007.007 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:51:30,024.024 INFO    ] time= 31/08/2026 06:51:30
[2026-08-31 06:51:30,034.034 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:51:30,078.078 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:51:30,204.204 INFO    ] No existing commands found in stream
[2026-08-31 06:51:35,235.235 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:51:35,239.239 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-08-31 06:51:39,278.278 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 06:51:39,281.281 INFO    ] Checking for system updates...
[2026-08-31 06:51:39,317.317 INFO    ] 200
[2026-08-31 06:51:39,320.320 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:51:39,381.381 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:51:39,384.384 INFO    ] No update needed
[2026-08-31 06:51:39,387.387 INFO    ] Checking for camera pi updates...
[2026-08-31 06:51:39,422.422 INFO    ] 200
[2026-08-31 06:51:39,425.425 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:51:39,466.466 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:51:39,539.539 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:51:39,541.541 INFO    ] No camera update needed
[2026-08-31 06:51:39,544.544 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:51:39,546.546 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:51:39,551.551 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:51:39,557.557 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:51:41,597.597 INFO    ] ================================================
[2026-08-31 06:51:41,612.612 INFO    ] Launching Daemon at Mon Aug 31 06:51:41 IST 2026
[2026-08-31 06:51:41,623.623 INFO    ] ================================================
[2026-08-31 06:51:42,210.210 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:51:42
[2026-08-31 06:51:42,815.815 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:51:43,093.093 INFO    ] Initializing speech engine...
[2026-08-31 06:51:43,098.098 INFO    ] 2026-08-31 06:51:43
[2026-08-31 06:51:43,361.361 INFO    ] 2026-08-31 06:51:43
[2026-08-31 06:51:43,420.420 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:51:43,651.651 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:51:43,657.657 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:51:43,888.888 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:51:43,918.918 INFO    ] time= 31/08/2026 06:51:43
[2026-08-31 06:51:43,935.935 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:51:43,967.967 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:51:44,103.103 INFO    ] No existing commands found in stream
[2026-08-31 06:51:49,139.139 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:51:49,143.143 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-08-31 06:51:52,371.371 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 06:51:52,374.374 INFO    ] Checking for system updates...
[2026-08-31 06:51:52,411.411 INFO    ] 200
[2026-08-31 06:51:52,414.414 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:51:52,467.467 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:51:52,470.470 INFO    ] No update needed
[2026-08-31 06:51:52,472.472 INFO    ] Checking for camera pi updates...
[2026-08-31 06:51:52,511.511 INFO    ] 200
[2026-08-31 06:51:52,513.513 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:51:52,560.560 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:51:52,661.661 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:51:52,664.664 INFO    ] No camera update needed
[2026-08-31 06:51:52,667.667 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:51:52,669.669 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:51:52,675.675 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:51:52,680.680 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:51:54,719.719 INFO    ] ================================================
[2026-08-31 06:51:54,734.734 INFO    ] Launching Daemon at Mon Aug 31 06:51:54 IST 2026
[2026-08-31 06:51:54,745.745 INFO    ] ================================================
[2026-08-31 06:51:55,329.329 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:51:55
[2026-08-31 06:51:55,934.934 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:51:56,211.211 INFO    ] Initializing speech engine...
[2026-08-31 06:51:56,216.216 INFO    ] 2026-08-31 06:51:56
[2026-08-31 06:51:56,464.464 INFO    ] 2026-08-31 06:51:56
[2026-08-31 06:51:56,529.529 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:51:56,755.755 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:51:56,761.761 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:51:56,891.891 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:51:56,934.934 INFO    ] time= 31/08/2026 06:51:56
[2026-08-31 06:51:56,988.988 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:51:57,025.025 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:51:57,158.158 INFO    ] No existing commands found in stream
[2026-08-31 06:52:02,180.180 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:52:02,183.183 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-08-31 06:52:04,196.196 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 06:52:04,199.199 INFO    ] Checking for system updates...
[2026-08-31 06:52:04,242.242 INFO    ] 200
[2026-08-31 06:52:04,244.244 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:52:04,298.298 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:52:04,301.301 INFO    ] No update needed
[2026-08-31 06:52:04,303.303 INFO    ] Checking for camera pi updates...
[2026-08-31 06:52:04,338.338 INFO    ] 200
[2026-08-31 06:52:04,341.341 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:52:04,382.382 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:52:04,460.460 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:52:04,463.463 INFO    ] No camera update needed
[2026-08-31 06:52:04,466.466 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:52:04,469.469 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:52:04,475.475 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:52:04,480.480 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:52:06,521.521 INFO    ] ================================================
[2026-08-31 06:52:06,536.536 INFO    ] Launching Daemon at Mon Aug 31 06:52:06 IST 2026
[2026-08-31 06:52:06,547.547 INFO    ] ================================================
[2026-08-31 06:52:07,129.129 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:52:07
[2026-08-31 06:52:07,728.728 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:52:07,993.993 INFO    ] Initializing speech engine...
[2026-08-31 06:52:08,011.011 INFO    ] 2026-08-31 06:52:08
[2026-08-31 06:52:08,261.261 INFO    ] 2026-08-31 06:52:08
[2026-08-31 06:52:08,296.296 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:52:08,469.469 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:52:08,481.481 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:52:08,625.625 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:52:08,633.633 INFO    ] time= 31/08/2026 06:52:08
[2026-08-31 06:52:08,696.696 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:52:08,702.702 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:52:08,827.827 INFO    ] No existing commands found in stream
[2026-08-31 06:52:13,838.838 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:52:13,841.841 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-08-31 06:52:17,469.469 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 06:52:17,471.471 INFO    ] Checking for system updates...
[2026-08-31 06:52:17,507.507 INFO    ] 200
[2026-08-31 06:52:17,510.510 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:52:17,565.565 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:52:17,567.567 INFO    ] No update needed
[2026-08-31 06:52:17,570.570 INFO    ] Checking for camera pi updates...
[2026-08-31 06:52:17,606.606 INFO    ] 200
[2026-08-31 06:52:17,609.609 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:52:17,649.649 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:52:17,825.825 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:52:17,828.828 INFO    ] No camera update needed
[2026-08-31 06:52:17,830.830 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:52:17,833.833 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:52:17,838.838 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:52:17,843.843 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:52:19,883.883 INFO    ] ================================================
[2026-08-31 06:52:19,899.899 INFO    ] Launching Daemon at Mon Aug 31 06:52:19 IST 2026
[2026-08-31 06:52:19,909.909 INFO    ] ================================================
[2026-08-31 06:52:20,481.481 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:52:20
[2026-08-31 06:52:21,069.069 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:52:21,331.331 INFO    ] Initializing speech engine...
[2026-08-31 06:52:21,349.349 INFO    ] 2026-08-31 06:52:21
[2026-08-31 06:52:21,599.599 INFO    ] 2026-08-31 06:52:21
[2026-08-31 06:52:21,634.634 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:52:21,889.889 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:52:21,894.894 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:52:22,027.027 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:52:22,087.087 INFO    ] time= 31/08/2026 06:52:22
[2026-08-31 06:52:22,146.146 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:52:22,160.160 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:52:22,291.291 INFO    ] No existing commands found in stream
[2026-08-31 06:52:27,315.315 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:52:27,318.318 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-08-31 06:52:28,930.930 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 06:52:28,933.933 INFO    ] Checking for system updates...
[2026-08-31 06:52:28,969.969 INFO    ] 200
[2026-08-31 06:52:28,971.971 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:52:29,030.030 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:52:29,033.033 INFO    ] No update needed
[2026-08-31 06:52:29,036.036 INFO    ] Checking for camera pi updates...
[2026-08-31 06:52:29,079.079 INFO    ] 200
[2026-08-31 06:52:29,082.082 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:52:29,123.123 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:52:29,207.207 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:52:29,210.210 INFO    ] No camera update needed
[2026-08-31 06:52:29,212.212 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:52:29,215.215 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:52:29,221.221 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:52:29,227.227 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:52:31,267.267 INFO    ] ================================================
[2026-08-31 06:52:31,282.282 INFO    ] Launching Daemon at Mon Aug 31 06:52:31 IST 2026
[2026-08-31 06:52:31,292.292 INFO    ] ================================================
[2026-08-31 06:52:31,892.892 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:52:31
[2026-08-31 06:52:32,504.504 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:52:32,804.804 INFO    ] Initializing speech engine...
[2026-08-31 06:52:32,820.820 INFO    ] 2026-08-31 06:52:32
[2026-08-31 06:52:33,075.075 INFO    ] 2026-08-31 06:52:33
[2026-08-31 06:52:33,122.122 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:52:33,367.367 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:52:33,376.376 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:52:33,608.608 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:52:33,633.633 INFO    ] time= 31/08/2026 06:52:33
[2026-08-31 06:52:33,639.639 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:52:33,656.656 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:52:33,767.767 INFO    ] No existing commands found in stream
[2026-08-31 06:52:38,794.794 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:52:38,797.797 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-08-31 06:52:40,008.008 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 06:52:40,011.011 INFO    ] Checking for system updates...
[2026-08-31 06:52:40,048.048 INFO    ] 200
[2026-08-31 06:52:40,050.050 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:52:40,103.103 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:52:40,106.106 INFO    ] No update needed
[2026-08-31 06:52:40,108.108 INFO    ] Checking for camera pi updates...
[2026-08-31 06:52:40,143.143 INFO    ] 200
[2026-08-31 06:52:40,146.146 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:52:40,187.187 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:52:40,258.258 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:52:40,260.260 INFO    ] No camera update needed
[2026-08-31 06:52:40,263.263 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:52:40,266.266 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:52:40,272.272 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:52:40,277.277 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:52:42,319.319 INFO    ] ================================================
[2026-08-31 06:52:42,333.333 INFO    ] Launching Daemon at Mon Aug 31 06:52:42 IST 2026
[2026-08-31 06:52:42,344.344 INFO    ] ================================================
[2026-08-31 06:52:42,921.921 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:52:42
[2026-08-31 06:52:43,519.519 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:52:43,791.791 INFO    ] Initializing speech engine...
[2026-08-31 06:52:43,802.802 INFO    ] 2026-08-31 06:52:43
[2026-08-31 06:52:44,062.062 INFO    ] 2026-08-31 06:52:44
[2026-08-31 06:52:44,116.116 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:52:44,343.343 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:52:44,347.347 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:52:44,555.555 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:52:44,602.602 INFO    ] time= 31/08/2026 06:52:44
[2026-08-31 06:52:44,608.608 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:52:44,625.625 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:52:44,752.752 INFO    ] No existing commands found in stream
[2026-08-31 06:52:49,768.768 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:52:49,771.771 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-08-31 06:52:50,627.627 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 06:52:50,630.630 INFO    ] Checking for system updates...
[2026-08-31 06:52:50,666.666 INFO    ] 200
[2026-08-31 06:52:50,669.669 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:52:50,721.721 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:52:50,730.730 INFO    ] No update needed
[2026-08-31 06:52:50,734.734 INFO    ] Checking for camera pi updates...
[2026-08-31 06:52:50,768.768 INFO    ] 200
[2026-08-31 06:52:50,771.771 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:52:50,814.814 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:52:50,898.898 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:52:50,900.900 INFO    ] No camera update needed
[2026-08-31 06:52:50,903.903 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:52:50,905.905 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:52:50,910.910 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:52:50,915.915 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:52:52,955.955 INFO    ] ================================================
[2026-08-31 06:52:52,970.970 INFO    ] Launching Daemon at Mon Aug 31 06:52:52 IST 2026
[2026-08-31 06:52:52,981.981 INFO    ] ================================================
[2026-08-31 06:52:53,594.594 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:52:53
[2026-08-31 06:52:54,191.191 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:52:54,468.468 INFO    ] Initializing speech engine...
[2026-08-31 06:52:54,475.475 INFO    ] 2026-08-31 06:52:54
[2026-08-31 06:52:54,737.737 INFO    ] 2026-08-31 06:52:54
[2026-08-31 06:52:54,766.766 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:52:55,010.010 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:52:55,020.020 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:52:55,239.239 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:52:55,278.278 INFO    ] time= 31/08/2026 06:52:55
[2026-08-31 06:52:55,295.295 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:52:55,303.303 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:52:55,432.432 INFO    ] No existing commands found in stream
[2026-08-31 06:53:00,451.451 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:53:00,454.454 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-08-31 06:53:02,538.538 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 06:53:02,543.543 INFO    ] Checking for system updates...
[2026-08-31 06:53:02,593.593 INFO    ] 200
[2026-08-31 06:53:02,597.597 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:53:02,654.654 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:53:02,656.656 INFO    ] No update needed
[2026-08-31 06:53:02,660.660 INFO    ] Checking for camera pi updates...
[2026-08-31 06:53:02,700.700 INFO    ] 200
[2026-08-31 06:53:02,703.703 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:53:02,743.743 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:53:02,832.832 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:53:02,834.834 INFO    ] No camera update needed
[2026-08-31 06:53:02,837.837 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:53:02,840.840 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:53:02,847.847 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:53:02,854.854 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:53:04,896.896 INFO    ] ================================================
[2026-08-31 06:53:04,911.911 INFO    ] Launching Daemon at Mon Aug 31 06:53:04 IST 2026
[2026-08-31 06:53:04,922.922 INFO    ] ================================================
[2026-08-31 06:53:05,556.556 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:53:05
[2026-08-31 06:53:06,210.210 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:53:06,480.480 INFO    ] Initializing speech engine...
[2026-08-31 06:53:06,494.494 INFO    ] 2026-08-31 06:53:06
[2026-08-31 06:53:06,762.762 INFO    ] 2026-08-31 06:53:06
[2026-08-31 06:53:06,798.798 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:53:07,049.049 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:53:07,058.058 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:53:07,283.283 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:53:07,315.315 INFO    ] time= 31/08/2026 06:53:07
[2026-08-31 06:53:07,321.321 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:53:07,339.339 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:53:07,465.465 INFO    ] No existing commands found in stream
[2026-08-31 06:53:12,480.480 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:53:12,482.482 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-08-31 06:53:14,550.550 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 06:53:14,552.552 INFO    ] Checking for system updates...
[2026-08-31 06:53:14,588.588 INFO    ] 200
[2026-08-31 06:53:14,590.590 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:53:14,642.642 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:53:14,644.644 INFO    ] No update needed
[2026-08-31 06:53:14,647.647 INFO    ] Checking for camera pi updates...
[2026-08-31 06:53:14,680.680 INFO    ] 200
[2026-08-31 06:53:14,682.682 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:53:14,722.722 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:53:14,801.801 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:53:14,804.804 INFO    ] No camera update needed
[2026-08-31 06:53:14,806.806 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:53:14,808.808 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:53:14,814.814 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:53:14,819.819 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:53:16,858.858 INFO    ] ================================================
[2026-08-31 06:53:16,873.873 INFO    ] Launching Daemon at Mon Aug 31 06:53:16 IST 2026
[2026-08-31 06:53:16,883.883 INFO    ] ================================================
[2026-08-31 06:53:17,529.529 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:53:17
[2026-08-31 06:53:18,189.189 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:53:18,490.490 INFO    ] Initializing speech engine...
[2026-08-31 06:53:18,500.500 INFO    ] 2026-08-31 06:53:18
[2026-08-31 06:53:18,754.754 INFO    ] 2026-08-31 06:53:18
[2026-08-31 06:53:18,806.806 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:53:19,028.028 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:53:19,037.037 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:53:19,171.171 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:53:19,211.211 INFO    ] time= 31/08/2026 06:53:19
[2026-08-31 06:53:19,270.270 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:53:19,306.306 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:53:19,442.442 INFO    ] No existing commands found in stream
[2026-08-31 06:53:24,463.463 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:53:24,466.466 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-08-31 06:53:26,518.518 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 06:53:26,521.521 INFO    ] Checking for system updates...
[2026-08-31 06:53:26,556.556 INFO    ] 200
[2026-08-31 06:53:26,559.559 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:53:26,611.611 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:53:26,613.613 INFO    ] No update needed
[2026-08-31 06:53:26,616.616 INFO    ] Checking for camera pi updates...
[2026-08-31 06:53:26,653.653 INFO    ] 200
[2026-08-31 06:53:26,655.655 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:53:26,696.696 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:53:26,771.771 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:53:26,773.773 INFO    ] No camera update needed
[2026-08-31 06:53:26,776.776 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:53:26,778.778 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:53:26,783.783 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:53:26,789.789 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:53:28,828.828 INFO    ] ================================================
[2026-08-31 06:53:28,843.843 INFO    ] Launching Daemon at Mon Aug 31 06:53:28 IST 2026
[2026-08-31 06:53:28,853.853 INFO    ] ================================================
[2026-08-31 06:53:29,463.463 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:53:29
[2026-08-31 06:53:30,053.053 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:53:30,333.333 INFO    ] Initializing speech engine...
[2026-08-31 06:53:30,349.349 INFO    ] 2026-08-31 06:53:30
[2026-08-31 06:53:30,627.627 INFO    ] 2026-08-31 06:53:30
[2026-08-31 06:53:30,663.663 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:53:30,860.860 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:53:30,875.875 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:53:31,022.022 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:53:31,030.030 INFO    ] time= 31/08/2026 06:53:31
[2026-08-31 06:53:31,073.073 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:53:31,095.095 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:53:31,224.224 INFO    ] No existing commands found in stream
[2026-08-31 06:53:36,237.237 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:53:36,240.240 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-08-31 06:53:37,533.533 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 06:53:37,535.535 INFO    ] Checking for system updates...
[2026-08-31 06:53:37,571.571 INFO    ] 200
[2026-08-31 06:53:37,573.573 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:53:37,625.625 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:53:37,628.628 INFO    ] No update needed
[2026-08-31 06:53:37,630.630 INFO    ] Checking for camera pi updates...
[2026-08-31 06:53:37,665.665 INFO    ] 200
[2026-08-31 06:53:37,668.668 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:53:37,709.709 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:53:37,782.782 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:53:37,784.784 INFO    ] No camera update needed
[2026-08-31 06:53:37,786.786 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:53:37,789.789 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:53:37,794.794 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:53:37,799.799 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:53:39,839.839 INFO    ] ================================================
[2026-08-31 06:53:39,854.854 INFO    ] Launching Daemon at Mon Aug 31 06:53:39 IST 2026
[2026-08-31 06:53:39,864.864 INFO    ] ================================================
[2026-08-31 06:53:40,430.430 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:53:40
[2026-08-31 06:53:41,012.012 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:53:41,278.278 INFO    ] Initializing speech engine...
[2026-08-31 06:53:41,286.286 INFO    ] 2026-08-31 06:53:41
[2026-08-31 06:53:41,533.533 INFO    ] 2026-08-31 06:53:41
[2026-08-31 06:53:41,568.568 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:53:41,818.818 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:53:41,827.827 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:53:41,961.961 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:53:42,020.020 INFO    ] time= 31/08/2026 06:53:41
[2026-08-31 06:53:42,074.074 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:53:42,092.092 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:53:42,147.147 INFO    ] No existing commands found in stream
[2026-08-31 06:53:47,159.159 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:53:47,162.162 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-08-31 06:53:50,467.467 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 06:53:50,470.470 INFO    ] Checking for system updates...
[2026-08-31 06:53:50,505.505 INFO    ] 200
[2026-08-31 06:53:50,508.508 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:53:50,560.560 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:53:50,562.562 INFO    ] No update needed
[2026-08-31 06:53:50,564.564 INFO    ] Checking for camera pi updates...
[2026-08-31 06:53:50,597.597 INFO    ] 200
[2026-08-31 06:53:50,600.600 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:53:50,640.640 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:53:50,723.723 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:53:50,725.725 INFO    ] No camera update needed
[2026-08-31 06:53:50,728.728 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:53:50,730.730 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:53:50,736.736 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:53:50,740.740 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:53:52,781.781 INFO    ] ================================================
[2026-08-31 06:53:52,796.796 INFO    ] Launching Daemon at Mon Aug 31 06:53:52 IST 2026
[2026-08-31 06:53:52,808.808 INFO    ] ================================================
[2026-08-31 06:53:53,378.378 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:53:53
[2026-08-31 06:53:53,962.962 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:53:54,230.230 INFO    ] Initializing speech engine...
[2026-08-31 06:53:54,239.239 INFO    ] 2026-08-31 06:53:54
[2026-08-31 06:53:54,485.485 INFO    ] 2026-08-31 06:53:54
[2026-08-31 06:53:54,520.520 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:53:54,771.771 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:53:54,780.780 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:53:55,001.001 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:53:55,037.037 INFO    ] time= 31/08/2026 06:53:55
[2026-08-31 06:53:55,043.043 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:53:55,064.064 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:53:55,188.188 INFO    ] No existing commands found in stream
[2026-08-31 06:54:00,202.202 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:54:00,205.205 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-08-31 06:54:02,147.147 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 06:54:02,151.151 INFO    ] Checking for system updates...
[2026-08-31 06:54:02,191.191 INFO    ] 200
[2026-08-31 06:54:02,194.194 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:54:02,260.260 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:54:02,263.263 INFO    ] No update needed
[2026-08-31 06:54:02,266.266 INFO    ] Checking for camera pi updates...
[2026-08-31 06:54:02,303.303 INFO    ] 200
[2026-08-31 06:54:02,306.306 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:54:02,353.353 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:54:02,406.406 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:54:02,410.410 INFO    ] No camera update needed
[2026-08-31 06:54:02,413.413 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:54:02,417.417 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:54:02,424.424 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:54:02,431.431 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:54:04,473.473 INFO    ] ================================================
[2026-08-31 06:54:04,488.488 INFO    ] Launching Daemon at Mon Aug 31 06:54:04 IST 2026
[2026-08-31 06:54:04,499.499 INFO    ] ================================================
[2026-08-31 06:54:05,073.073 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:54:05
[2026-08-31 06:54:05,657.657 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:54:05,900.900 INFO    ] Initializing speech engine...
[2026-08-31 06:54:05,908.908 INFO    ] 2026-08-31 06:54:05
[2026-08-31 06:54:06,215.215 INFO    ] 2026-08-31 06:54:06
[2026-08-31 06:54:06,255.255 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:54:06,524.524 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:54:06,530.530 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:54:06,745.745 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:54:06,790.790 INFO    ] time= 31/08/2026 06:54:06
[2026-08-31 06:54:06,803.803 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:54:06,820.820 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:54:06,959.959 INFO    ] No existing commands found in stream
[2026-08-31 06:54:11,988.988 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:54:11,992.992 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-08-31 06:54:15,328.328 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 06:54:15,331.331 INFO    ] Checking for system updates...
[2026-08-31 06:54:15,374.374 INFO    ] 200
[2026-08-31 06:54:15,377.377 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:54:15,432.432 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:54:15,434.434 INFO    ] No update needed
[2026-08-31 06:54:15,437.437 INFO    ] Checking for camera pi updates...
[2026-08-31 06:54:15,471.471 INFO    ] 200
[2026-08-31 06:54:15,474.474 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:54:15,514.514 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:54:15,622.622 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:54:15,625.625 INFO    ] No camera update needed
[2026-08-31 06:54:15,628.628 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:54:15,631.631 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:54:15,637.637 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:54:15,642.642 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:54:17,683.683 INFO    ] ================================================
[2026-08-31 06:54:17,699.699 INFO    ] Launching Daemon at Mon Aug 31 06:54:17 IST 2026
[2026-08-31 06:54:17,709.709 INFO    ] ================================================
[2026-08-31 06:54:18,275.275 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:54:18
[2026-08-31 06:54:18,859.859 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:54:19,108.108 INFO    ] Initializing speech engine...
[2026-08-31 06:54:19,122.122 INFO    ] 2026-08-31 06:54:19
[2026-08-31 06:54:19,387.387 INFO    ] 2026-08-31 06:54:19
[2026-08-31 06:54:19,423.423 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:54:19,625.625 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:54:19,684.684 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:54:19,827.827 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:54:19,833.833 INFO    ] time= 31/08/2026 06:54:19
[2026-08-31 06:54:19,892.892 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:54:19,946.946 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:54:20,084.084 INFO    ] No existing commands found in stream
[2026-08-31 06:54:25,109.109 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:54:25,112.112 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-08-31 06:54:27,044.044 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 06:54:27,047.047 INFO    ] Checking for system updates...
[2026-08-31 06:54:27,086.086 INFO    ] 200
[2026-08-31 06:54:27,088.088 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:54:27,140.140 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:54:27,143.143 INFO    ] No update needed
[2026-08-31 06:54:27,145.145 INFO    ] Checking for camera pi updates...
[2026-08-31 06:54:27,178.178 INFO    ] 200
[2026-08-31 06:54:27,180.180 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:54:27,225.225 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:54:27,406.406 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:54:27,408.408 INFO    ] No camera update needed
[2026-08-31 06:54:27,411.411 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:54:27,413.413 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:54:27,418.418 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:54:27,423.423 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:54:29,463.463 INFO    ] ================================================
[2026-08-31 06:54:29,478.478 INFO    ] Launching Daemon at Mon Aug 31 06:54:29 IST 2026
[2026-08-31 06:54:29,489.489 INFO    ] ================================================
[2026-08-31 06:54:30,054.054 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:54:30
[2026-08-31 06:54:30,636.636 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:54:30,905.905 INFO    ] Initializing speech engine...
[2026-08-31 06:54:30,915.915 INFO    ] 2026-08-31 06:54:30
[2026-08-31 06:54:31,159.159 INFO    ] 2026-08-31 06:54:31
[2026-08-31 06:54:31,201.201 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:54:31,467.467 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:54:31,476.476 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:54:31,617.617 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:54:31,682.682 INFO    ] time= 31/08/2026 06:54:31
[2026-08-31 06:54:31,742.742 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:54:31,754.754 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:54:31,897.897 INFO    ] No existing commands found in stream
[2026-08-31 06:54:36,928.928 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:54:36,930.930 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-08-31 06:54:37,725.725 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 06:54:37,728.728 INFO    ] Checking for system updates...
[2026-08-31 06:54:37,767.767 INFO    ] 200
[2026-08-31 06:54:37,770.770 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:54:37,822.822 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:54:37,825.825 INFO    ] No update needed
[2026-08-31 06:54:37,830.830 INFO    ] Checking for camera pi updates...
[2026-08-31 06:54:37,864.864 INFO    ] 200
[2026-08-31 06:54:37,866.866 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:54:37,908.908 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:54:37,980.980 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:54:37,983.983 INFO    ] No camera update needed
[2026-08-31 06:54:37,986.986 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:54:37,989.989 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:54:37,995.995 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:54:38,001.001 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:54:40,042.042 INFO    ] ================================================
[2026-08-31 06:54:40,056.056 INFO    ] Launching Daemon at Mon Aug 31 06:54:40 IST 2026
[2026-08-31 06:54:40,067.067 INFO    ] ================================================
[2026-08-31 06:54:40,718.718 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:54:40
[2026-08-31 06:54:41,382.382 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:54:41,683.683 INFO    ] Initializing speech engine...
[2026-08-31 06:54:41,697.697 INFO    ] 2026-08-31 06:54:41
[2026-08-31 06:54:42,013.013 INFO    ] 2026-08-31 06:54:41
[2026-08-31 06:54:42,094.094 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:54:42,304.304 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:54:42,313.313 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:54:42,473.473 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:54:42,512.512 INFO    ] time= 31/08/2026 06:54:42
[2026-08-31 06:54:42,519.519 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:54:42,541.541 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:54:42,670.670 INFO    ] No existing commands found in stream
[2026-08-31 06:54:47,700.700 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:54:47,703.703 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-08-31 06:54:52,351.351 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 06:54:52,354.354 INFO    ] Checking for system updates...
[2026-08-31 06:54:52,390.390 INFO    ] 200
[2026-08-31 06:54:52,393.393 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:54:52,453.453 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:54:52,455.455 INFO    ] No update needed
[2026-08-31 06:54:52,458.458 INFO    ] Checking for camera pi updates...
[2026-08-31 06:54:52,493.493 INFO    ] 200
[2026-08-31 06:54:52,496.496 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:54:52,536.536 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:54:52,623.623 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:54:52,626.626 INFO    ] No camera update needed
[2026-08-31 06:54:52,629.629 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:54:52,632.632 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:54:52,639.639 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:54:52,645.645 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:54:54,686.686 INFO    ] ================================================
[2026-08-31 06:54:54,700.700 INFO    ] Launching Daemon at Mon Aug 31 06:54:54 IST 2026
[2026-08-31 06:54:54,711.711 INFO    ] ================================================
[2026-08-31 06:54:55,353.353 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:54:55
[2026-08-31 06:54:56,015.015 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:54:56,313.313 INFO    ] Initializing speech engine...
[2026-08-31 06:54:56,322.322 INFO    ] 2026-08-31 06:54:56
[2026-08-31 06:54:56,633.633 INFO    ] 2026-08-31 06:54:56
[2026-08-31 06:54:56,720.720 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:54:56,930.930 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:54:56,939.939 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:54:57,134.134 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:54:57,141.141 INFO    ] time= 31/08/2026 06:54:57
[2026-08-31 06:54:57,160.160 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:54:57,189.189 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:54:57,309.309 INFO    ] No existing commands found in stream
[2026-08-31 06:55:02,340.340 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:55:02,344.344 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-08-31 06:55:03,789.789 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 06:55:03,792.792 INFO    ] Checking for system updates...
[2026-08-31 06:55:03,833.833 INFO    ] 200
[2026-08-31 06:55:03,836.836 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:55:03,891.891 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:55:03,894.894 INFO    ] No update needed
[2026-08-31 06:55:03,896.896 INFO    ] Checking for camera pi updates...
[2026-08-31 06:55:03,934.934 INFO    ] 200
[2026-08-31 06:55:03,937.937 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:55:03,983.983 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:55:04,068.068 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:55:04,071.071 INFO    ] No camera update needed
[2026-08-31 06:55:04,074.074 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:55:04,077.077 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:55:04,083.083 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:55:04,089.089 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:55:06,131.131 INFO    ] ================================================
[2026-08-31 06:55:06,146.146 INFO    ] Launching Daemon at Mon Aug 31 06:55:06 IST 2026
[2026-08-31 06:55:06,157.157 INFO    ] ================================================
[2026-08-31 06:55:06,722.722 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:55:06
[2026-08-31 06:55:07,304.304 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:55:07,573.573 INFO    ] Initializing speech engine...
[2026-08-31 06:55:07,579.579 INFO    ] 2026-08-31 06:55:07
[2026-08-31 06:55:07,824.824 INFO    ] 2026-08-31 06:55:07
[2026-08-31 06:55:07,865.865 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:55:08,050.050 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:55:08,095.095 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:55:08,250.250 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:55:08,292.292 INFO    ] time= 31/08/2026 06:55:08
[2026-08-31 06:55:08,341.341 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:55:08,383.383 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:55:08,511.511 INFO    ] No existing commands found in stream
[2026-08-31 06:55:13,538.538 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:55:13,541.541 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-08-31 06:55:17,811.811 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 06:55:17,813.813 INFO    ] Checking for system updates...
[2026-08-31 06:55:17,848.848 INFO    ] 200
[2026-08-31 06:55:17,851.851 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:55:17,903.903 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:55:17,905.905 INFO    ] No update needed
[2026-08-31 06:55:17,908.908 INFO    ] Checking for camera pi updates...
[2026-08-31 06:55:17,942.942 INFO    ] 200
[2026-08-31 06:55:17,944.944 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:55:17,988.988 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:55:18,093.093 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:55:18,096.096 INFO    ] No camera update needed
[2026-08-31 06:55:18,098.098 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:55:18,100.100 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:55:18,106.106 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:55:18,111.111 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:55:20,151.151 INFO    ] ================================================
[2026-08-31 06:55:20,166.166 INFO    ] Launching Daemon at Mon Aug 31 06:55:20 IST 2026
[2026-08-31 06:55:20,178.178 INFO    ] ================================================
[2026-08-31 06:55:20,742.742 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:55:20
[2026-08-31 06:55:21,322.322 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:55:21,589.589 INFO    ] Initializing speech engine...
[2026-08-31 06:55:21,598.598 INFO    ] 2026-08-31 06:55:21
[2026-08-31 06:55:21,849.849 INFO    ] 2026-08-31 06:55:21
[2026-08-31 06:55:21,906.906 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:55:22,152.152 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:55:22,160.160 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:55:22,364.364 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:55:22,395.395 INFO    ] time= 31/08/2026 06:55:22
[2026-08-31 06:55:22,410.410 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:55:22,419.419 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:55:22,548.548 INFO    ] No existing commands found in stream
[2026-08-31 06:55:27,567.567 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:55:27,570.570 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-08-31 06:55:30,032.032 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 06:55:30,034.034 INFO    ] Checking for system updates...
[2026-08-31 06:55:30,070.070 INFO    ] 200
[2026-08-31 06:55:30,073.073 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:55:30,126.126 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:55:30,129.129 INFO    ] No update needed
[2026-08-31 06:55:30,132.132 INFO    ] Checking for camera pi updates...
[2026-08-31 06:55:30,166.166 INFO    ] 200
[2026-08-31 06:55:30,169.169 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:55:30,215.215 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:55:30,301.301 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:55:30,304.304 INFO    ] No camera update needed
[2026-08-31 06:55:30,307.307 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:55:30,309.309 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:55:30,315.315 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:55:30,321.321 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:55:32,366.366 INFO    ] ================================================
[2026-08-31 06:55:32,390.390 INFO    ] Launching Daemon at Mon Aug 31 06:55:32 IST 2026
[2026-08-31 06:55:32,403.403 INFO    ] ================================================
[2026-08-31 06:55:32,981.981 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:55:32
[2026-08-31 06:55:33,565.565 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:55:33,832.832 INFO    ] Initializing speech engine...
[2026-08-31 06:55:33,841.841 INFO    ] 2026-08-31 06:55:33
[2026-08-31 06:55:34,091.091 INFO    ] 2026-08-31 06:55:34
[2026-08-31 06:55:34,126.126 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:55:34,301.301 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:55:34,313.313 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:55:34,460.460 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:55:34,462.462 INFO    ] time= 31/08/2026 06:55:34
[2026-08-31 06:55:34,465.465 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:55:34,467.467 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:55:34,550.550 INFO    ] No existing commands found in stream
[2026-08-31 06:55:39,580.580 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:55:39,582.582 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-08-31 06:55:40,747.747 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 06:55:40,750.750 INFO    ] Checking for system updates...
[2026-08-31 06:55:40,790.790 INFO    ] 200
[2026-08-31 06:55:40,792.792 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:55:40,845.845 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:55:40,847.847 INFO    ] No update needed
[2026-08-31 06:55:40,850.850 INFO    ] Checking for camera pi updates...
[2026-08-31 06:55:40,883.883 INFO    ] 200
[2026-08-31 06:55:40,885.885 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:55:40,929.929 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:55:41,011.011 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:55:41,014.014 INFO    ] No camera update needed
[2026-08-31 06:55:41,016.016 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:55:41,018.018 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:55:41,024.024 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:55:41,028.028 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:55:43,070.070 INFO    ] ================================================
[2026-08-31 06:55:43,085.085 INFO    ] Launching Daemon at Mon Aug 31 06:55:43 IST 2026
[2026-08-31 06:55:43,096.096 INFO    ] ================================================
[2026-08-31 06:55:43,671.671 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:55:43
[2026-08-31 06:55:44,261.261 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:55:44,515.515 INFO    ] Initializing speech engine...
[2026-08-31 06:55:44,520.520 INFO    ] 2026-08-31 06:55:44
[2026-08-31 06:55:44,811.811 INFO    ] 2026-08-31 06:55:44
[2026-08-31 06:55:44,848.848 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:55:45,074.074 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:55:45,139.139 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:55:45,299.299 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:55:45,320.320 INFO    ] time= 31/08/2026 06:55:45
[2026-08-31 06:55:45,370.370 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:55:45,434.434 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:55:45,506.506 INFO    ] No existing commands found in stream
[2026-08-31 06:55:50,518.518 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:55:50,521.521 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-08-31 06:55:51,705.705 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 06:55:51,708.708 INFO    ] Checking for system updates...
[2026-08-31 06:55:51,743.743 INFO    ] 200
[2026-08-31 06:55:51,745.745 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:55:51,803.803 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:55:51,805.805 INFO    ] No update needed
[2026-08-31 06:55:51,808.808 INFO    ] Checking for camera pi updates...
[2026-08-31 06:55:51,842.842 INFO    ] 200
[2026-08-31 06:55:51,844.844 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:55:51,885.885 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:55:51,969.969 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:55:51,972.972 INFO    ] No camera update needed
[2026-08-31 06:55:51,974.974 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:55:51,976.976 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:55:51,982.982 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:55:51,986.986 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:55:54,027.027 INFO    ] ================================================
[2026-08-31 06:55:54,042.042 INFO    ] Launching Daemon at Mon Aug 31 06:55:54 IST 2026
[2026-08-31 06:55:54,053.053 INFO    ] ================================================
[2026-08-31 06:55:54,616.616 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:55:54
[2026-08-31 06:55:55,197.197 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:55:55,464.464 INFO    ] Initializing speech engine...
[2026-08-31 06:55:55,473.473 INFO    ] 2026-08-31 06:55:55
[2026-08-31 06:55:55,717.717 INFO    ] 2026-08-31 06:55:55
[2026-08-31 06:55:55,751.751 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:55:56,001.001 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:55:56,010.010 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:55:56,159.159 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:55:56,208.208 INFO    ] time= 31/08/2026 06:55:56
[2026-08-31 06:55:56,267.267 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:55:56,277.277 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:55:56,427.427 INFO    ] No existing commands found in stream
[2026-08-31 06:56:01,450.450 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:56:01,455.455 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-08-31 06:56:04,764.764 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 06:56:04,767.767 INFO    ] Checking for system updates...
[2026-08-31 06:56:04,802.802 INFO    ] 200
[2026-08-31 06:56:04,805.805 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:56:04,858.858 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:56:04,860.860 INFO    ] No update needed
[2026-08-31 06:56:04,863.863 INFO    ] Checking for camera pi updates...
[2026-08-31 06:56:04,896.896 INFO    ] 200
[2026-08-31 06:56:04,898.898 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:56:04,938.938 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:56:05,025.025 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:56:05,027.027 INFO    ] No camera update needed
[2026-08-31 06:56:05,030.030 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:56:05,032.032 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:56:05,038.038 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:56:05,043.043 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:56:07,085.085 INFO    ] ================================================
[2026-08-31 06:56:07,100.100 INFO    ] Launching Daemon at Mon Aug 31 06:56:07 IST 2026
[2026-08-31 06:56:07,111.111 INFO    ] ================================================
[2026-08-31 06:56:07,691.691 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:56:07
[2026-08-31 06:56:08,291.291 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:56:08,569.569 INFO    ] Initializing speech engine...
[2026-08-31 06:56:08,578.578 INFO    ] 2026-08-31 06:56:08
[2026-08-31 06:56:08,840.840 INFO    ] 2026-08-31 06:56:08
[2026-08-31 06:56:08,892.892 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:56:09,143.143 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:56:09,149.149 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:56:09,300.300 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:56:09,307.307 INFO    ] time= 31/08/2026 06:56:09
[2026-08-31 06:56:09,356.356 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:56:09,405.405 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:56:09,511.511 INFO    ] No existing commands found in stream
[2026-08-31 06:56:14,523.523 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:56:14,526.526 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-08-31 06:56:16,876.876 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 06:56:16,879.879 INFO    ] Checking for system updates...
[2026-08-31 06:56:16,915.915 INFO    ] 200
[2026-08-31 06:56:16,918.918 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:56:16,977.977 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:56:16,980.980 INFO    ] No update needed
[2026-08-31 06:56:16,982.982 INFO    ] Checking for camera pi updates...
[2026-08-31 06:56:17,019.019 INFO    ] 200
[2026-08-31 06:56:17,022.022 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:56:17,063.063 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:56:17,142.142 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:56:17,145.145 INFO    ] No camera update needed
[2026-08-31 06:56:17,147.147 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:56:17,149.149 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:56:17,155.155 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:56:17,160.160 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:56:19,201.201 INFO    ] ================================================
[2026-08-31 06:56:19,217.217 INFO    ] Launching Daemon at Mon Aug 31 06:56:19 IST 2026
[2026-08-31 06:56:19,228.228 INFO    ] ================================================
[2026-08-31 06:56:19,881.881 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:56:19
[2026-08-31 06:56:20,554.554 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:56:20,859.859 INFO    ] Initializing speech engine...
[2026-08-31 06:56:20,868.868 INFO    ] 2026-08-31 06:56:20
[2026-08-31 06:56:21,166.166 INFO    ] 2026-08-31 06:56:21
[2026-08-31 06:56:21,280.280 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:56:21,493.493 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:56:21,502.502 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:56:21,668.668 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:56:21,708.708 INFO    ] time= 31/08/2026 06:56:21
[2026-08-31 06:56:21,726.726 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:56:21,737.737 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:56:21,872.872 INFO    ] No existing commands found in stream
[2026-08-31 06:56:26,901.901 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:56:26,905.905 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-08-31 06:56:30,366.366 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 06:56:30,369.369 INFO    ] Checking for system updates...
[2026-08-31 06:56:30,410.410 INFO    ] 200
[2026-08-31 06:56:30,413.413 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:56:30,472.472 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:56:30,475.475 INFO    ] No update needed
[2026-08-31 06:56:30,477.477 INFO    ] Checking for camera pi updates...
[2026-08-31 06:56:30,512.512 INFO    ] 200
[2026-08-31 06:56:30,515.515 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:56:30,556.556 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:56:30,742.742 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:56:30,745.745 INFO    ] No camera update needed
[2026-08-31 06:56:30,748.748 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:56:30,751.751 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:56:30,757.757 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:56:30,763.763 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:56:32,803.803 INFO    ] ================================================
[2026-08-31 06:56:32,819.819 INFO    ] Launching Daemon at Mon Aug 31 06:56:32 IST 2026
[2026-08-31 06:56:32,829.829 INFO    ] ================================================
[2026-08-31 06:56:33,397.397 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:56:33
[2026-08-31 06:56:33,981.981 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:56:34,252.252 INFO    ] Initializing speech engine...
[2026-08-31 06:56:34,261.261 INFO    ] 2026-08-31 06:56:34
[2026-08-31 06:56:34,525.525 INFO    ] 2026-08-31 06:56:34
[2026-08-31 06:56:34,591.591 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:56:34,842.842 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:56:34,852.852 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:56:35,011.011 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:56:35,043.043 INFO    ] time= 31/08/2026 06:56:35
[2026-08-31 06:56:35,097.097 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:56:35,157.157 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:56:35,304.304 INFO    ] No existing commands found in stream
[2026-08-31 06:56:40,325.325 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:56:40,328.328 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-08-31 06:56:41,427.427 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 06:56:41,430.430 INFO    ] Checking for system updates...
[2026-08-31 06:56:41,465.465 INFO    ] 200
[2026-08-31 06:56:41,467.467 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:56:41,524.524 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:56:41,526.526 INFO    ] No update needed
[2026-08-31 06:56:41,528.528 INFO    ] Checking for camera pi updates...
[2026-08-31 06:56:41,562.562 INFO    ] 200
[2026-08-31 06:56:41,564.564 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:56:41,609.609 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:56:41,716.716 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:56:41,719.719 INFO    ] No camera update needed
[2026-08-31 06:56:41,721.721 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:56:41,723.723 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:56:41,729.729 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:56:41,734.734 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:56:43,775.775 INFO    ] ================================================
[2026-08-31 06:56:43,790.790 INFO    ] Launching Daemon at Mon Aug 31 06:56:43 IST 2026
[2026-08-31 06:56:43,801.801 INFO    ] ================================================
[2026-08-31 06:56:44,379.379 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:56:44
[2026-08-31 06:56:44,967.967 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:56:45,234.234 INFO    ] Initializing speech engine...
[2026-08-31 06:56:45,247.247 INFO    ] 2026-08-31 06:56:45
[2026-08-31 06:56:45,502.502 INFO    ] 2026-08-31 06:56:45
[2026-08-31 06:56:45,568.568 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:56:45,794.794 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:56:45,803.803 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:56:45,939.939 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:56:45,979.979 INFO    ] time= 31/08/2026 06:56:45
[2026-08-31 06:56:46,028.028 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:56:46,072.072 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:56:46,186.186 INFO    ] No existing commands found in stream
[2026-08-31 06:56:51,208.208 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:56:51,210.210 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-08-31 06:56:54,075.075 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 06:56:54,078.078 INFO    ] Checking for system updates...
[2026-08-31 06:56:54,119.119 INFO    ] 200
[2026-08-31 06:56:54,122.122 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:56:54,183.183 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:56:54,186.186 INFO    ] No update needed
[2026-08-31 06:56:54,189.189 INFO    ] Checking for camera pi updates...
[2026-08-31 06:56:54,241.241 INFO    ] 200
[2026-08-31 06:56:54,243.243 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:56:54,285.285 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:56:54,370.370 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:56:54,372.372 INFO    ] No camera update needed
[2026-08-31 06:56:54,375.375 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:56:54,377.377 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:56:54,382.382 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:56:54,387.387 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:56:56,429.429 INFO    ] ================================================
[2026-08-31 06:56:56,444.444 INFO    ] Launching Daemon at Mon Aug 31 06:56:56 IST 2026
[2026-08-31 06:56:56,455.455 INFO    ] ================================================
[2026-08-31 06:56:57,109.109 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:56:57
[2026-08-31 06:56:57,782.782 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:56:58,083.083 INFO    ] Initializing speech engine...
[2026-08-31 06:56:58,093.093 INFO    ] 2026-08-31 06:56:58
[2026-08-31 06:56:58,378.378 INFO    ] 2026-08-31 06:56:58
[2026-08-31 06:56:58,424.424 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:56:58,647.647 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:56:58,654.654 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:56:58,868.868 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:56:58,911.911 INFO    ] time= 31/08/2026 06:56:58
[2026-08-31 06:56:58,917.917 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:56:58,940.940 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:56:59,066.066 INFO    ] No existing commands found in stream
[2026-08-31 06:57:04,088.088 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:57:04,091.091 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-08-31 06:57:07,678.678 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 06:57:07,681.681 INFO    ] Checking for system updates...
[2026-08-31 06:57:07,718.718 INFO    ] 200
[2026-08-31 06:57:07,721.721 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:57:07,774.774 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:57:07,776.776 INFO    ] No update needed
[2026-08-31 06:57:07,779.779 INFO    ] Checking for camera pi updates...
[2026-08-31 06:57:07,813.813 INFO    ] 200
[2026-08-31 06:57:07,816.816 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:57:07,855.855 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:57:07,935.935 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:57:07,937.937 INFO    ] No camera update needed
[2026-08-31 06:57:07,940.940 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:57:07,942.942 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:57:07,947.947 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:57:07,952.952 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:57:09,992.992 INFO    ] ================================================
[2026-08-31 06:57:10,007.007 INFO    ] Launching Daemon at Mon Aug 31 06:57:10 IST 2026
[2026-08-31 06:57:10,017.017 INFO    ] ================================================
[2026-08-31 06:57:10,662.662 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:57:10
[2026-08-31 06:57:11,328.328 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:57:11,625.625 INFO    ] Initializing speech engine...
[2026-08-31 06:57:11,634.634 INFO    ] 2026-08-31 06:57:11
[2026-08-31 06:57:11,905.905 INFO    ] 2026-08-31 06:57:11
[2026-08-31 06:57:11,959.959 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:57:12,242.242 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:57:12,251.251 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:57:12,438.438 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:57:12,451.451 INFO    ] time= 31/08/2026 06:57:12
[2026-08-31 06:57:12,468.468 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:57:12,486.486 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:57:12,605.605 INFO    ] No existing commands found in stream
[2026-08-31 06:57:17,629.629 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:57:17,632.632 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-08-31 06:57:21,086.086 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 06:57:21,089.089 INFO    ] Checking for system updates...
[2026-08-31 06:57:21,126.126 INFO    ] 200
[2026-08-31 06:57:21,129.129 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:57:21,181.181 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:57:21,183.183 INFO    ] No update needed
[2026-08-31 06:57:21,186.186 INFO    ] Checking for camera pi updates...
[2026-08-31 06:57:21,223.223 INFO    ] 200
[2026-08-31 06:57:21,225.225 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:57:21,269.269 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:57:21,350.350 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:57:21,353.353 INFO    ] No camera update needed
[2026-08-31 06:57:21,355.355 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:57:21,357.357 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:57:21,363.363 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:57:21,368.368 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:57:23,407.407 INFO    ] ================================================
[2026-08-31 06:57:23,422.422 INFO    ] Launching Daemon at Mon Aug 31 06:57:23 IST 2026
[2026-08-31 06:57:23,433.433 INFO    ] ================================================
[2026-08-31 06:57:24,005.005 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:57:23
[2026-08-31 06:57:24,591.591 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:57:24,838.838 INFO    ] Initializing speech engine...
[2026-08-31 06:57:24,852.852 INFO    ] 2026-08-31 06:57:24
[2026-08-31 06:57:25,114.114 INFO    ] 2026-08-31 06:57:25
[2026-08-31 06:57:25,149.149 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:57:25,401.401 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:57:25,411.411 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:57:25,544.544 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:57:25,599.599 INFO    ] time= 31/08/2026 06:57:25
[2026-08-31 06:57:25,648.648 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:57:25,675.675 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:57:25,791.791 INFO    ] No existing commands found in stream
[2026-08-31 06:57:30,818.818 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:57:30,821.821 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-08-31 06:57:33,953.953 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 06:57:33,956.956 INFO    ] Checking for system updates...
[2026-08-31 06:57:33,991.991 INFO    ] 200
[2026-08-31 06:57:33,993.993 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:57:34,052.052 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:57:34,055.055 INFO    ] No update needed
[2026-08-31 06:57:34,057.057 INFO    ] Checking for camera pi updates...
[2026-08-31 06:57:34,090.090 INFO    ] 200
[2026-08-31 06:57:34,093.093 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:57:34,137.137 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:57:34,224.224 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:57:34,226.226 INFO    ] No camera update needed
[2026-08-31 06:57:34,229.229 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:57:34,231.231 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:57:34,236.236 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:57:34,241.241 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:57:36,280.280 INFO    ] ================================================
[2026-08-31 06:57:36,295.295 INFO    ] Launching Daemon at Mon Aug 31 06:57:36 IST 2026
[2026-08-31 06:57:36,306.306 INFO    ] ================================================
[2026-08-31 06:57:36,951.951 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:57:36
[2026-08-31 06:57:37,545.545 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:57:37,811.811 INFO    ] Initializing speech engine...
[2026-08-31 06:57:37,820.820 INFO    ] 2026-08-31 06:57:37
[2026-08-31 06:57:38,080.080 INFO    ] 2026-08-31 06:57:38
[2026-08-31 06:57:38,132.132 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:57:38,326.326 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:57:38,358.358 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:57:38,497.497 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:57:38,572.572 INFO    ] time= 31/08/2026 06:57:38
[2026-08-31 06:57:38,624.624 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:57:38,631.631 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:57:38,751.751 INFO    ] No existing commands found in stream
[2026-08-31 06:57:43,781.781 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:57:43,784.784 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-08-31 06:57:45,125.125 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 06:57:45,128.128 INFO    ] Checking for system updates...
[2026-08-31 06:57:45,163.163 INFO    ] 200
[2026-08-31 06:57:45,166.166 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:57:45,218.218 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:57:45,220.220 INFO    ] No update needed
[2026-08-31 06:57:45,223.223 INFO    ] Checking for camera pi updates...
[2026-08-31 06:57:45,256.256 INFO    ] 200
[2026-08-31 06:57:45,258.258 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:57:45,303.303 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:57:45,382.382 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:57:45,385.385 INFO    ] No camera update needed
[2026-08-31 06:57:45,387.387 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:57:45,389.389 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:57:45,395.395 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:57:45,400.400 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:57:47,440.440 INFO    ] ================================================
[2026-08-31 06:57:47,455.455 INFO    ] Launching Daemon at Mon Aug 31 06:57:47 IST 2026
[2026-08-31 06:57:47,465.465 INFO    ] ================================================
[2026-08-31 06:57:48,118.118 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:57:48
[2026-08-31 06:57:48,723.723 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:57:48,997.997 INFO    ] Initializing speech engine...
[2026-08-31 06:57:49,006.006 INFO    ] 2026-08-31 06:57:48
[2026-08-31 06:57:49,261.261 INFO    ] 2026-08-31 06:57:49
[2026-08-31 06:57:49,294.294 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:57:49,548.548 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:57:49,569.569 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:57:49,720.720 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:57:49,752.752 INFO    ] time= 31/08/2026 06:57:49
[2026-08-31 06:57:49,807.807 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:57:49,861.861 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:57:49,958.958 INFO    ] No existing commands found in stream
[2026-08-31 06:57:54,995.995 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:57:54,998.998 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-08-31 06:57:58,147.147 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 06:57:58,150.150 INFO    ] Checking for system updates...
[2026-08-31 06:57:58,186.186 INFO    ] 200
[2026-08-31 06:57:58,188.188 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:57:58,247.247 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:57:58,249.249 INFO    ] No update needed
[2026-08-31 06:57:58,252.252 INFO    ] Checking for camera pi updates...
[2026-08-31 06:57:58,285.285 INFO    ] 200
[2026-08-31 06:57:58,287.287 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:57:58,331.331 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:57:58,415.415 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:57:58,418.418 INFO    ] No camera update needed
[2026-08-31 06:57:58,420.420 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:57:58,422.422 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:57:58,428.428 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:57:58,433.433 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:58:00,471.471 INFO    ] ================================================
[2026-08-31 06:58:00,486.486 INFO    ] Launching Daemon at Mon Aug 31 06:58:00 IST 2026
[2026-08-31 06:58:00,497.497 INFO    ] ================================================
[2026-08-31 06:58:01,134.134 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:58:01
[2026-08-31 06:58:01,717.717 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:58:02,188.188 INFO    ] Initializing speech engine...
[2026-08-31 06:58:02,219.219 INFO    ] 2026-08-31 06:58:02
[2026-08-31 06:58:02,548.548 INFO    ] 2026-08-31 06:58:02
[2026-08-31 06:58:02,610.610 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:58:02,821.821 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:58:02,845.845 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:58:02,971.971 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:58:03,038.038 INFO    ] time= 31/08/2026 06:58:02
[2026-08-31 06:58:03,111.111 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:58:03,143.143 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:58:03,234.234 INFO    ] No existing commands found in stream
[2026-08-31 06:58:08,265.265 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:58:08,268.268 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-08-31 06:58:10,435.435 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 06:58:10,438.438 INFO    ] Checking for system updates...
[2026-08-31 06:58:10,477.477 INFO    ] 200
[2026-08-31 06:58:10,479.479 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:58:10,531.531 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:58:10,534.534 INFO    ] No update needed
[2026-08-31 06:58:10,536.536 INFO    ] Checking for camera pi updates...
[2026-08-31 06:58:10,574.574 INFO    ] 200
[2026-08-31 06:58:10,576.576 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:58:10,617.617 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:58:10,688.688 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:58:10,691.691 INFO    ] No camera update needed
[2026-08-31 06:58:10,693.693 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:58:10,695.695 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:58:10,701.701 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:58:10,706.706 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:58:12,746.746 INFO    ] ================================================
[2026-08-31 06:58:12,761.761 INFO    ] Launching Daemon at Mon Aug 31 06:58:12 IST 2026
[2026-08-31 06:58:12,772.772 INFO    ] ================================================
[2026-08-31 06:58:13,336.336 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:58:13
[2026-08-31 06:58:13,917.917 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:58:14,170.170 INFO    ] Initializing speech engine...
[2026-08-31 06:58:14,176.176 INFO    ] 2026-08-31 06:58:14
[2026-08-31 06:58:14,468.468 INFO    ] 2026-08-31 06:58:14
[2026-08-31 06:58:14,505.505 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:58:14,702.702 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:58:14,705.705 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:58:14,842.842 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:58:14,848.848 INFO    ] time= 31/08/2026 06:58:14
[2026-08-31 06:58:14,854.854 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:58:14,916.916 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:58:15,044.044 INFO    ] No existing commands found in stream
[2026-08-31 06:58:20,054.054 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:58:20,057.057 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-08-31 06:58:21,960.960 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 06:58:21,963.963 INFO    ] Checking for system updates...
[2026-08-31 06:58:22,001.001 INFO    ] 200
[2026-08-31 06:58:22,004.004 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:58:22,056.056 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:58:22,059.059 INFO    ] No update needed
[2026-08-31 06:58:22,065.065 INFO    ] Checking for camera pi updates...
[2026-08-31 06:58:22,102.102 INFO    ] 200
[2026-08-31 06:58:22,104.104 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:58:22,144.144 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:58:22,213.213 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:58:22,215.215 INFO    ] No camera update needed
[2026-08-31 06:58:22,218.218 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:58:22,220.220 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:58:22,225.225 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:58:22,230.230 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:58:24,270.270 INFO    ] ================================================
[2026-08-31 06:58:24,285.285 INFO    ] Launching Daemon at Mon Aug 31 06:58:24 IST 2026
[2026-08-31 06:58:24,296.296 INFO    ] ================================================
[2026-08-31 06:58:24,866.866 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:58:24
[2026-08-31 06:58:25,452.452 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:58:25,698.698 INFO    ] Initializing speech engine...
[2026-08-31 06:58:25,712.712 INFO    ] 2026-08-31 06:58:25
[2026-08-31 06:58:25,974.974 INFO    ] 2026-08-31 06:58:25
[2026-08-31 06:58:26,008.008 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:58:26,259.259 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:58:26,267.267 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:58:26,400.400 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:58:26,447.447 INFO    ] time= 31/08/2026 06:58:26
[2026-08-31 06:58:26,496.496 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:58:26,533.533 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:58:26,676.676 INFO    ] No existing commands found in stream
[2026-08-31 06:58:31,690.690 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:58:31,692.692 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-08-31 06:58:35,066.066 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 06:58:35,069.069 INFO    ] Checking for system updates...
[2026-08-31 06:58:35,108.108 INFO    ] 200
[2026-08-31 06:58:35,110.110 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:58:35,162.162 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:58:35,165.165 INFO    ] No update needed
[2026-08-31 06:58:35,167.167 INFO    ] Checking for camera pi updates...
[2026-08-31 06:58:35,208.208 INFO    ] 200
[2026-08-31 06:58:35,211.211 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:58:35,254.254 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:58:35,339.339 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:58:35,342.342 INFO    ] No camera update needed
[2026-08-31 06:58:35,344.344 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:58:35,346.346 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:58:35,351.351 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:58:35,356.356 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:58:37,402.402 INFO    ] ================================================
[2026-08-31 06:58:37,418.418 INFO    ] Launching Daemon at Mon Aug 31 06:58:37 IST 2026
[2026-08-31 06:58:37,429.429 INFO    ] ================================================
[2026-08-31 06:58:38,000.000 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:58:37
[2026-08-31 06:58:38,586.586 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:58:38,856.856 INFO    ] Initializing speech engine...
[2026-08-31 06:58:38,865.865 INFO    ] 2026-08-31 06:58:38
[2026-08-31 06:58:39,126.126 INFO    ] 2026-08-31 06:58:39
[2026-08-31 06:58:39,179.179 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:58:39,399.399 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:58:39,409.409 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:58:39,542.542 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:58:39,612.612 INFO    ] time= 31/08/2026 06:58:39
[2026-08-31 06:58:39,668.668 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:58:39,675.675 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:58:39,800.800 INFO    ] No existing commands found in stream
[2026-08-31 06:58:44,827.827 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:58:44,830.830 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-08-31 06:58:46,443.443 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 06:58:46,446.446 INFO    ] Checking for system updates...
[2026-08-31 06:58:46,481.481 INFO    ] 200
[2026-08-31 06:58:46,484.484 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:58:46,541.541 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:58:46,544.544 INFO    ] No update needed
[2026-08-31 06:58:46,546.546 INFO    ] Checking for camera pi updates...
[2026-08-31 06:58:46,582.582 INFO    ] 200
[2026-08-31 06:58:46,584.584 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:58:46,628.628 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:58:46,712.712 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:58:46,714.714 INFO    ] No camera update needed
[2026-08-31 06:58:46,717.717 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:58:46,719.719 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:58:46,724.724 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:58:46,729.729 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:58:48,771.771 INFO    ] ================================================
[2026-08-31 06:58:48,787.787 INFO    ] Launching Daemon at Mon Aug 31 06:58:48 IST 2026
[2026-08-31 06:58:48,798.798 INFO    ] ================================================
[2026-08-31 06:58:49,368.368 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:58:49
[2026-08-31 06:58:49,957.957 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:58:50,205.205 INFO    ] Initializing speech engine...
[2026-08-31 06:58:50,220.220 INFO    ] 2026-08-31 06:58:50
[2026-08-31 06:58:50,487.487 INFO    ] 2026-08-31 06:58:50
[2026-08-31 06:58:50,522.522 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:58:50,719.719 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:58:50,742.742 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:58:50,923.923 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:58:50,930.930 INFO    ] time= 31/08/2026 06:58:50
[2026-08-31 06:58:50,974.974 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:58:51,039.039 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:58:51,119.119 INFO    ] No existing commands found in stream
[2026-08-31 06:58:56,130.130 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:58:56,133.133 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-08-31 06:58:58,184.184 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 06:58:58,186.186 INFO    ] Checking for system updates...
[2026-08-31 06:58:58,222.222 INFO    ] 200
[2026-08-31 06:58:58,225.225 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:58:58,283.283 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:58:58,285.285 INFO    ] No update needed
[2026-08-31 06:58:58,288.288 INFO    ] Checking for camera pi updates...
[2026-08-31 06:58:58,321.321 INFO    ] 200
[2026-08-31 06:58:58,323.323 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:58:58,368.368 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:58:58,442.442 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:58:58,445.445 INFO    ] No camera update needed
[2026-08-31 06:58:58,448.448 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:58:58,450.450 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:58:58,456.456 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:58:58,462.462 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:59:00,505.505 INFO    ] ================================================
[2026-08-31 06:59:00,521.521 INFO    ] Launching Daemon at Mon Aug 31 06:59:00 IST 2026
[2026-08-31 06:59:00,532.532 INFO    ] ================================================
[2026-08-31 06:59:01,098.098 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:59:01
[2026-08-31 06:59:01,682.682 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:59:02,282.282 INFO    ] Initializing speech engine...
[2026-08-31 06:59:02,289.289 INFO    ] 2026-08-31 06:59:02
[2026-08-31 06:59:02,697.697 INFO    ] 2026-08-31 06:59:02
[2026-08-31 06:59:02,741.741 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:59:02,998.998 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:59:03,014.014 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:59:03,172.172 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:59:03,203.203 INFO    ] time= 31/08/2026 06:59:03
[2026-08-31 06:59:03,261.261 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:59:03,298.298 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:59:03,444.444 INFO    ] No existing commands found in stream
[2026-08-31 06:59:08,470.470 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:59:08,473.473 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-08-31 06:59:12,121.121 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 06:59:12,124.124 INFO    ] Checking for system updates...
[2026-08-31 06:59:12,159.159 INFO    ] 200
[2026-08-31 06:59:12,161.161 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:59:12,217.217 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:59:12,220.220 INFO    ] No update needed
[2026-08-31 06:59:12,222.222 INFO    ] Checking for camera pi updates...
[2026-08-31 06:59:12,258.258 INFO    ] 200
[2026-08-31 06:59:12,261.261 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:59:12,303.303 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:59:12,374.374 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:59:12,377.377 INFO    ] No camera update needed
[2026-08-31 06:59:12,380.380 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:59:12,382.382 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:59:12,387.387 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:59:12,392.392 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:59:14,433.433 INFO    ] ================================================
[2026-08-31 06:59:14,449.449 INFO    ] Launching Daemon at Mon Aug 31 06:59:14 IST 2026
[2026-08-31 06:59:14,460.460 INFO    ] ================================================
[2026-08-31 06:59:15,072.072 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:59:15
[2026-08-31 06:59:15,655.655 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:59:15,928.928 INFO    ] Initializing speech engine...
[2026-08-31 06:59:15,934.934 INFO    ] 2026-08-31 06:59:15
[2026-08-31 06:59:16,193.193 INFO    ] 2026-08-31 06:59:16
[2026-08-31 06:59:16,246.246 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:59:16,473.473 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:59:16,479.479 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:59:16,682.682 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:59:16,731.731 INFO    ] time= 31/08/2026 06:59:16
[2026-08-31 06:59:16,742.742 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:59:16,760.760 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:59:16,879.879 INFO    ] No existing commands found in stream
[2026-08-31 06:59:21,899.899 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:59:21,902.902 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-08-31 06:59:22,370.370 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 06:59:22,372.372 INFO    ] Checking for system updates...
[2026-08-31 06:59:22,408.408 INFO    ] 200
[2026-08-31 06:59:22,410.410 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:59:22,467.467 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:59:22,469.469 INFO    ] No update needed
[2026-08-31 06:59:22,471.471 INFO    ] Checking for camera pi updates...
[2026-08-31 06:59:22,506.506 INFO    ] 200
[2026-08-31 06:59:22,509.509 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:59:22,548.548 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:59:22,635.635 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:59:22,638.638 INFO    ] No camera update needed
[2026-08-31 06:59:22,640.640 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:59:22,642.642 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:59:22,647.647 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:59:22,653.653 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:59:24,692.692 INFO    ] ================================================
[2026-08-31 06:59:24,707.707 INFO    ] Launching Daemon at Mon Aug 31 06:59:24 IST 2026
[2026-08-31 06:59:24,718.718 INFO    ] ================================================
[2026-08-31 06:59:25,303.303 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:59:25
[2026-08-31 06:59:25,913.913 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:59:26,183.183 INFO    ] Initializing speech engine...
[2026-08-31 06:59:26,192.192 INFO    ] 2026-08-31 06:59:26
[2026-08-31 06:59:26,442.442 INFO    ] 2026-08-31 06:59:26
[2026-08-31 06:59:26,477.477 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:59:26,732.732 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:59:26,741.741 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:59:26,971.971 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:59:27,005.005 INFO    ] time= 31/08/2026 06:59:26
[2026-08-31 06:59:27,011.011 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:59:27,030.030 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:59:27,142.142 INFO    ] No existing commands found in stream
[2026-08-31 06:59:32,167.167 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:59:32,179.179 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-08-31 06:59:33,353.353 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 06:59:33,355.355 INFO    ] Checking for system updates...
[2026-08-31 06:59:33,393.393 INFO    ] 200
[2026-08-31 06:59:33,396.396 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:59:33,452.452 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:59:33,454.454 INFO    ] No update needed
[2026-08-31 06:59:33,456.456 INFO    ] Checking for camera pi updates...
[2026-08-31 06:59:33,490.490 INFO    ] 200
[2026-08-31 06:59:33,492.492 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:59:33,536.536 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:59:33,617.617 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 06:59:33,620.620 INFO    ] No camera update needed
[2026-08-31 06:59:33,622.622 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:59:33,624.624 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:59:33,630.630 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:59:33,634.634 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:59:35,675.675 INFO    ] ================================================
[2026-08-31 06:59:35,691.691 INFO    ] Launching Daemon at Mon Aug 31 06:59:35 IST 2026
[2026-08-31 06:59:35,702.702 INFO    ] ================================================
[2026-08-31 06:59:36,281.281 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:59:36
[2026-08-31 06:59:36,874.874 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:59:37,150.150 INFO    ] Initializing speech engine...
[2026-08-31 06:59:37,157.157 INFO    ] 2026-08-31 06:59:37
[2026-08-31 06:59:37,416.416 INFO    ] 2026-08-31 06:59:37
[2026-08-31 06:59:37,469.469 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:59:37,690.690 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:59:37,699.699 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:59:37,906.906 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:59:37,958.958 INFO    ] time= 31/08/2026 06:59:37
[2026-08-31 06:59:37,964.964 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:59:37,981.981 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:59:38,109.109 INFO    ] No existing commands found in stream
[2026-08-31 06:59:43,122.122 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:59:43,124.124 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-08-31 06:59:47,317.317 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 06:59:47,320.320 INFO    ] Checking for system updates...
[2026-08-31 06:59:47,355.355 INFO    ] 200
[2026-08-31 06:59:47,358.358 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:59:47,411.411 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:59:47,414.414 INFO    ] No update needed
[2026-08-31 06:59:47,416.416 INFO    ] Checking for camera pi updates...
[2026-08-31 06:59:47,452.452 INFO    ] 200
[2026-08-31 06:59:47,455.455 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:59:47,501.501 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 06:59:47,578.578 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:59:47,580.580 INFO    ] No camera update needed
[2026-08-31 06:59:47,583.583 INFO    ] Script finished. Safe exiting...
[2026-08-31 06:59:47,585.585 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 06:59:47,591.591 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 06:59:47,597.597 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 06:59:49,638.638 INFO    ] ================================================
[2026-08-31 06:59:49,653.653 INFO    ] Launching Daemon at Mon Aug 31 06:59:49 IST 2026
[2026-08-31 06:59:49,664.664 INFO    ] ================================================
[2026-08-31 06:59:50,261.261 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 06:59:50
[2026-08-31 06:59:50,845.845 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 06:59:51,111.111 INFO    ] Initializing speech engine...
[2026-08-31 06:59:51,132.132 INFO    ] 2026-08-31 06:59:51
[2026-08-31 06:59:51,392.392 INFO    ] 2026-08-31 06:59:51
[2026-08-31 06:59:51,427.427 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 06:59:51,638.638 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 06:59:51,680.680 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 06:59:51,860.860 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 06:59:51,903.903 INFO    ] time= 31/08/2026 06:59:51
[2026-08-31 06:59:51,957.957 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 06:59:52,005.005 INFO    ] Checking for existing commands in stream...
[2026-08-31 06:59:52,062.062 INFO    ] No existing commands found in stream
[2026-08-31 06:59:57,074.074 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 06:59:57,076.076 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-08-31 06:59:59,751.751 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 06:59:59,754.754 INFO    ] Checking for system updates...
[2026-08-31 06:59:59,789.789 INFO    ] 200
[2026-08-31 06:59:59,792.792 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:59:59,844.844 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 06:59:59,846.846 INFO    ] No update needed
[2026-08-31 06:59:59,849.849 INFO    ] Checking for camera pi updates...
[2026-08-31 06:59:59,885.885 INFO    ] 200
[2026-08-31 06:59:59,887.887 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 06:59:59,927.927 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:00:00,007.007 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:00:00,010.010 INFO    ] No camera update needed
[2026-08-31 07:00:00,012.012 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:00:00,014.014 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:00:00,020.020 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:00:00,025.025 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:00:02,113.113 INFO    ] ================================================
[2026-08-31 07:00:02,191.191 INFO    ] Launching Daemon at Mon Aug 31 07:00:02 IST 2026
[2026-08-31 07:00:02,400.400 INFO    ] ================================================
[2026-08-31 07:00:04,607.607 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:00:04
[2026-08-31 07:00:06,320.320 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:00:06,656.656 INFO    ] Initializing speech engine...
[2026-08-31 07:00:06,665.665 INFO    ] 2026-08-31 07:00:06
[2026-08-31 07:00:06,958.958 INFO    ] 2026-08-31 07:00:06
[2026-08-31 07:00:06,994.994 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:00:07,185.185 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:00:07,187.187 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:00:07,344.344 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:00:07,349.349 INFO    ] time= 31/08/2026 07:00:07
[2026-08-31 07:00:07,355.355 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:00:07,401.401 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:00:07,547.547 INFO    ] No existing commands found in stream
[2026-08-31 07:00:12,561.561 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:00:12,564.564 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-08-31 07:00:17,467.467 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 07:00:17,470.470 INFO    ] Checking for system updates...
[2026-08-31 07:00:17,514.514 INFO    ] 200
[2026-08-31 07:00:17,517.517 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:00:17,570.570 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:00:17,573.573 INFO    ] No update needed
[2026-08-31 07:00:17,576.576 INFO    ] Checking for camera pi updates...
[2026-08-31 07:00:17,610.610 INFO    ] 200
[2026-08-31 07:00:17,613.613 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:00:17,654.654 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:00:17,742.742 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:00:17,745.745 INFO    ] No camera update needed
[2026-08-31 07:00:17,747.747 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:00:17,750.750 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:00:17,755.755 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:00:17,760.760 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:00:19,801.801 INFO    ] ================================================
[2026-08-31 07:00:19,817.817 INFO    ] Launching Daemon at Mon Aug 31 07:00:19 IST 2026
[2026-08-31 07:00:19,828.828 INFO    ] ================================================
[2026-08-31 07:00:20,474.474 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:00:20
[2026-08-31 07:00:21,135.135 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:00:21,433.433 INFO    ] Initializing speech engine...
[2026-08-31 07:00:21,442.442 INFO    ] 2026-08-31 07:00:21
[2026-08-31 07:00:21,712.712 INFO    ] 2026-08-31 07:00:21
[2026-08-31 07:00:21,747.747 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:00:22,020.020 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:00:22,030.030 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:00:22,179.179 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:00:22,196.196 INFO    ] time= 31/08/2026 07:00:22
[2026-08-31 07:00:22,255.255 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:00:22,310.310 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:00:22,389.389 INFO    ] No existing commands found in stream
[2026-08-31 07:00:27,401.401 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:00:27,403.403 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-08-31 07:00:27,922.922 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 07:00:27,925.925 INFO    ] Checking for system updates...
[2026-08-31 07:00:27,960.960 INFO    ] 200
[2026-08-31 07:00:27,963.963 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:00:28,015.015 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:00:28,018.018 INFO    ] No update needed
[2026-08-31 07:00:28,020.020 INFO    ] Checking for camera pi updates...
[2026-08-31 07:00:28,057.057 INFO    ] 200
[2026-08-31 07:00:28,060.060 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:00:28,099.099 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:00:28,188.188 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:00:28,190.190 INFO    ] No camera update needed
[2026-08-31 07:00:28,192.192 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:00:28,194.194 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:00:28,200.200 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:00:28,205.205 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:00:30,246.246 INFO    ] ================================================
[2026-08-31 07:00:30,264.264 INFO    ] Launching Daemon at Mon Aug 31 07:00:30 IST 2026
[2026-08-31 07:00:30,276.276 INFO    ] ================================================
[2026-08-31 07:00:30,914.914 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:00:30
[2026-08-31 07:00:31,571.571 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:00:31,870.870 INFO    ] Initializing speech engine...
[2026-08-31 07:00:31,880.880 INFO    ] 2026-08-31 07:00:31
[2026-08-31 07:00:32,152.152 INFO    ] 2026-08-31 07:00:32
[2026-08-31 07:00:32,223.223 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:00:32,469.469 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:00:32,475.475 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:00:32,690.690 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:00:32,753.753 INFO    ] time= 31/08/2026 07:00:32
[2026-08-31 07:00:32,775.775 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:00:32,810.810 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:00:32,926.926 INFO    ] No existing commands found in stream
[2026-08-31 07:00:37,949.949 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:00:37,952.952 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-08-31 07:00:40,054.054 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 07:00:40,057.057 INFO    ] Checking for system updates...
[2026-08-31 07:00:40,094.094 INFO    ] 200
[2026-08-31 07:00:40,097.097 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:00:40,156.156 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:00:40,159.159 INFO    ] No update needed
[2026-08-31 07:00:40,161.161 INFO    ] Checking for camera pi updates...
[2026-08-31 07:00:40,195.195 INFO    ] 200
[2026-08-31 07:00:40,198.198 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:00:40,244.244 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:00:40,432.432 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:00:40,435.435 INFO    ] No camera update needed
[2026-08-31 07:00:40,438.438 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:00:40,441.441 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:00:40,447.447 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:00:40,452.452 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:00:42,494.494 INFO    ] ================================================
[2026-08-31 07:00:42,510.510 INFO    ] Launching Daemon at Mon Aug 31 07:00:42 IST 2026
[2026-08-31 07:00:42,520.520 INFO    ] ================================================
[2026-08-31 07:00:43,158.158 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:00:43
[2026-08-31 07:00:43,752.752 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:00:44,013.013 INFO    ] Initializing speech engine...
[2026-08-31 07:00:44,028.028 INFO    ] 2026-08-31 07:00:44
[2026-08-31 07:00:44,312.312 INFO    ] 2026-08-31 07:00:44
[2026-08-31 07:00:44,349.349 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:00:44,543.543 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:00:44,556.556 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:00:44,719.719 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:00:44,724.724 INFO    ] time= 31/08/2026 07:00:44
[2026-08-31 07:00:44,731.731 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:00:44,779.779 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:00:44,912.912 INFO    ] No existing commands found in stream
[2026-08-31 07:00:49,937.937 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:00:49,940.940 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-08-31 07:00:53,425.425 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 07:00:53,428.428 INFO    ] Checking for system updates...
[2026-08-31 07:00:53,463.463 INFO    ] 200
[2026-08-31 07:00:53,465.465 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:00:53,517.517 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:00:53,520.520 INFO    ] No update needed
[2026-08-31 07:00:53,522.522 INFO    ] Checking for camera pi updates...
[2026-08-31 07:00:53,562.562 INFO    ] 200
[2026-08-31 07:00:53,565.565 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:00:53,607.607 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:00:53,688.688 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:00:53,691.691 INFO    ] No camera update needed
[2026-08-31 07:00:53,694.694 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:00:53,696.696 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:00:53,703.703 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:00:53,708.708 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:00:55,750.750 INFO    ] ================================================
[2026-08-31 07:00:55,766.766 INFO    ] Launching Daemon at Mon Aug 31 07:00:55 IST 2026
[2026-08-31 07:00:55,776.776 INFO    ] ================================================
[2026-08-31 07:00:56,344.344 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:00:56
[2026-08-31 07:00:56,931.931 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:00:57,192.192 INFO    ] Initializing speech engine...
[2026-08-31 07:00:57,205.205 INFO    ] 2026-08-31 07:00:57
[2026-08-31 07:00:57,485.485 INFO    ] 2026-08-31 07:00:57
[2026-08-31 07:00:57,523.523 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:00:57,716.716 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:00:57,729.729 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:00:57,890.890 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:00:57,899.899 INFO    ] time= 31/08/2026 07:00:57
[2026-08-31 07:00:57,907.907 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:00:57,934.934 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:00:58,069.069 INFO    ] No existing commands found in stream
[2026-08-31 07:01:03,095.095 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:01:03,098.098 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-08-31 07:01:07,237.237 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 07:01:07,240.240 INFO    ] Checking for system updates...
[2026-08-31 07:01:07,277.277 INFO    ] 200
[2026-08-31 07:01:07,280.280 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:01:07,342.342 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:01:07,344.344 INFO    ] No update needed
[2026-08-31 07:01:07,347.347 INFO    ] Checking for camera pi updates...
[2026-08-31 07:01:07,383.383 INFO    ] 200
[2026-08-31 07:01:07,385.385 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:01:07,434.434 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:01:07,518.518 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:01:07,521.521 INFO    ] No camera update needed
[2026-08-31 07:01:07,523.523 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:01:07,525.525 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:01:07,531.531 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:01:07,536.536 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:01:09,577.577 INFO    ] ================================================
[2026-08-31 07:01:09,593.593 INFO    ] Launching Daemon at Mon Aug 31 07:01:09 IST 2026
[2026-08-31 07:01:09,605.605 INFO    ] ================================================
[2026-08-31 07:01:10,169.169 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:01:10
[2026-08-31 07:01:10,755.755 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:01:11,024.024 INFO    ] Initializing speech engine...
[2026-08-31 07:01:11,033.033 INFO    ] 2026-08-31 07:01:11
[2026-08-31 07:01:11,293.293 INFO    ] 2026-08-31 07:01:11
[2026-08-31 07:01:11,347.347 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:01:11,567.567 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:01:11,576.576 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:01:11,796.796 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:01:11,834.834 INFO    ] time= 31/08/2026 07:01:11
[2026-08-31 07:01:11,852.852 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:01:11,861.861 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:01:11,985.985 INFO    ] No existing commands found in stream
[2026-08-31 07:01:17,000.000 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:01:17,003.003 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-08-31 07:01:20,353.353 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 07:01:20,356.356 INFO    ] Checking for system updates...
[2026-08-31 07:01:20,392.392 INFO    ] 200
[2026-08-31 07:01:20,394.394 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:01:20,446.446 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:01:20,449.449 INFO    ] No update needed
[2026-08-31 07:01:20,451.451 INFO    ] Checking for camera pi updates...
[2026-08-31 07:01:20,497.497 INFO    ] 200
[2026-08-31 07:01:20,500.500 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:01:20,549.549 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:01:20,636.636 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:01:20,638.638 INFO    ] No camera update needed
[2026-08-31 07:01:20,641.641 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:01:20,643.643 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:01:20,649.649 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:01:20,654.654 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:01:22,697.697 INFO    ] ================================================
[2026-08-31 07:01:22,713.713 INFO    ] Launching Daemon at Mon Aug 31 07:01:22 IST 2026
[2026-08-31 07:01:22,724.724 INFO    ] ================================================
[2026-08-31 07:01:23,295.295 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:01:23
[2026-08-31 07:01:23,884.884 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:01:24,157.157 INFO    ] Initializing speech engine...
[2026-08-31 07:01:24,165.165 INFO    ] 2026-08-31 07:01:24
[2026-08-31 07:01:24,423.423 INFO    ] 2026-08-31 07:01:24
[2026-08-31 07:01:24,453.453 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:01:24,696.696 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:01:24,705.705 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:01:24,839.839 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:01:24,878.878 INFO    ] time= 31/08/2026 07:01:24
[2026-08-31 07:01:24,927.927 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:01:24,969.969 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:01:25,025.025 INFO    ] No existing commands found in stream
[2026-08-31 07:01:30,037.037 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:01:30,040.040 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-08-31 07:01:33,643.643 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 07:01:33,646.646 INFO    ] Checking for system updates...
[2026-08-31 07:01:33,681.681 INFO    ] 200
[2026-08-31 07:01:33,684.684 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:01:33,736.736 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:01:33,738.738 INFO    ] No update needed
[2026-08-31 07:01:33,741.741 INFO    ] Checking for camera pi updates...
[2026-08-31 07:01:33,774.774 INFO    ] 200
[2026-08-31 07:01:33,777.777 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:01:33,817.817 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:01:33,909.909 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:01:33,912.912 INFO    ] No camera update needed
[2026-08-31 07:01:33,914.914 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:01:33,917.917 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:01:33,922.922 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:01:33,927.927 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:01:35,969.969 INFO    ] ================================================
[2026-08-31 07:01:35,985.985 INFO    ] Launching Daemon at Mon Aug 31 07:01:35 IST 2026
[2026-08-31 07:01:36,996.996 INFO    ] ================================================
[2026-08-31 07:01:36,562.562 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:01:36
[2026-08-31 07:01:37,146.146 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:01:37,418.418 INFO    ] Initializing speech engine...
[2026-08-31 07:01:37,424.424 INFO    ] 2026-08-31 07:01:37
[2026-08-31 07:01:37,671.671 INFO    ] 2026-08-31 07:01:37
[2026-08-31 07:01:37,705.705 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:01:37,960.960 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:01:37,965.965 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:01:38,100.100 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:01:38,170.170 INFO    ] time= 31/08/2026 07:01:38
[2026-08-31 07:01:38,226.226 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:01:38,233.233 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:01:38,357.357 INFO    ] No existing commands found in stream
[2026-08-31 07:01:43,382.382 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:01:43,385.385 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-08-31 07:01:46,589.589 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 07:01:46,592.592 INFO    ] Checking for system updates...
[2026-08-31 07:01:46,629.629 INFO    ] 200
[2026-08-31 07:01:46,631.631 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:01:46,686.686 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:01:46,689.689 INFO    ] No update needed
[2026-08-31 07:01:46,692.692 INFO    ] Checking for camera pi updates...
[2026-08-31 07:01:46,729.729 INFO    ] 200
[2026-08-31 07:01:46,732.732 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:01:46,777.777 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:01:46,872.872 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:01:46,875.875 INFO    ] No camera update needed
[2026-08-31 07:01:46,878.878 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:01:46,881.881 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:01:46,887.887 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:01:46,892.892 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:01:48,933.933 INFO    ] ================================================
[2026-08-31 07:01:48,950.950 INFO    ] Launching Daemon at Mon Aug 31 07:01:48 IST 2026
[2026-08-31 07:01:48,961.961 INFO    ] ================================================
[2026-08-31 07:01:49,549.549 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:01:49
[2026-08-31 07:01:50,142.142 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:01:50,392.392 INFO    ] Initializing speech engine...
[2026-08-31 07:01:50,404.404 INFO    ] 2026-08-31 07:01:50
[2026-08-31 07:01:50,682.682 INFO    ] 2026-08-31 07:01:50
[2026-08-31 07:01:50,717.717 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:01:50,969.969 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:01:50,978.978 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:01:51,191.191 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:01:51,236.236 INFO    ] time= 31/08/2026 07:01:51
[2026-08-31 07:01:51,243.243 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:01:51,261.261 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:01:51,376.376 INFO    ] No existing commands found in stream
[2026-08-31 07:01:56,400.400 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:01:56,403.403 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-08-31 07:02:00,681.681 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 07:02:00,697.697 INFO    ] Checking for system updates...
[2026-08-31 07:02:00,736.736 INFO    ] 200
[2026-08-31 07:02:00,738.738 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:02:00,791.791 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:02:00,793.793 INFO    ] No update needed
[2026-08-31 07:02:00,796.796 INFO    ] Checking for camera pi updates...
[2026-08-31 07:02:00,832.832 INFO    ] 200
[2026-08-31 07:02:00,835.835 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:02:00,874.874 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:02:00,957.957 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:02:00,960.960 INFO    ] No camera update needed
[2026-08-31 07:02:00,962.962 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:02:00,964.964 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:02:00,969.969 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:02:00,974.974 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:02:03,032.032 INFO    ] ================================================
[2026-08-31 07:02:03,050.050 INFO    ] Launching Daemon at Mon Aug 31 07:02:03 IST 2026
[2026-08-31 07:02:03,067.067 INFO    ] ================================================
[2026-08-31 07:02:03,736.736 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:02:03
[2026-08-31 07:02:04,322.322 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:02:04,572.572 INFO    ] Initializing speech engine...
[2026-08-31 07:02:04,586.586 INFO    ] 2026-08-31 07:02:04
[2026-08-31 07:02:04,853.853 INFO    ] 2026-08-31 07:02:04
[2026-08-31 07:02:04,889.889 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:02:05,073.073 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:02:05,090.090 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:02:05,226.226 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:02:05,232.232 INFO    ] time= 31/08/2026 07:02:05
[2026-08-31 07:02:05,279.279 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:02:05,304.304 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:02:05,432.432 INFO    ] No existing commands found in stream
[2026-08-31 07:02:10,442.442 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:02:10,445.445 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-08-31 07:02:14,875.875 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 07:02:14,878.878 INFO    ] Checking for system updates...
[2026-08-31 07:02:14,913.913 INFO    ] 200
[2026-08-31 07:02:14,915.915 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:02:14,975.975 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:02:14,977.977 INFO    ] No update needed
[2026-08-31 07:02:14,980.980 INFO    ] Checking for camera pi updates...
[2026-08-31 07:02:15,013.013 INFO    ] 200
[2026-08-31 07:02:15,015.015 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:02:15,060.060 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:02:15,143.143 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:02:15,146.146 INFO    ] No camera update needed
[2026-08-31 07:02:15,148.148 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:02:15,151.151 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:02:15,156.156 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:02:15,161.161 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:02:17,202.202 INFO    ] ================================================
[2026-08-31 07:02:17,217.217 INFO    ] Launching Daemon at Mon Aug 31 07:02:17 IST 2026
[2026-08-31 07:02:17,229.229 INFO    ] ================================================
[2026-08-31 07:02:17,881.881 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:02:17
[2026-08-31 07:02:18,551.551 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:02:18,856.856 INFO    ] Initializing speech engine...
[2026-08-31 07:02:18,866.866 INFO    ] 2026-08-31 07:02:18
[2026-08-31 07:02:19,139.139 INFO    ] 2026-08-31 07:02:19
[2026-08-31 07:02:19,175.175 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:02:19,430.430 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:02:19,440.440 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:02:19,580.580 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:02:19,630.630 INFO    ] time= 31/08/2026 07:02:19
[2026-08-31 07:02:19,679.679 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:02:19,716.716 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:02:19,859.859 INFO    ] No existing commands found in stream
[2026-08-31 07:02:24,880.880 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:02:24,884.884 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-08-31 07:02:28,033.033 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 07:02:28,036.036 INFO    ] Checking for system updates...
[2026-08-31 07:02:28,073.073 INFO    ] 200
[2026-08-31 07:02:28,075.075 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:02:28,135.135 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:02:28,138.138 INFO    ] No update needed
[2026-08-31 07:02:28,141.141 INFO    ] Checking for camera pi updates...
[2026-08-31 07:02:28,177.177 INFO    ] 200
[2026-08-31 07:02:28,180.180 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:02:28,221.221 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:02:28,319.319 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:02:28,322.322 INFO    ] No camera update needed
[2026-08-31 07:02:28,325.325 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:02:28,327.327 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:02:28,333.333 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:02:28,339.339 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:02:30,383.383 INFO    ] ================================================
[2026-08-31 07:02:30,400.400 INFO    ] Launching Daemon at Mon Aug 31 07:02:30 IST 2026
[2026-08-31 07:02:30,413.413 INFO    ] ================================================
[2026-08-31 07:02:30,993.993 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:02:30
[2026-08-31 07:02:31,578.578 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:02:31,833.833 INFO    ] Initializing speech engine...
[2026-08-31 07:02:31,846.846 INFO    ] 2026-08-31 07:02:31
[2026-08-31 07:02:32,131.131 INFO    ] 2026-08-31 07:02:32
[2026-08-31 07:02:32,177.177 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:02:32,431.431 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:02:32,440.440 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:02:32,635.635 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:02:32,696.696 INFO    ] time= 31/08/2026 07:02:32
[2026-08-31 07:02:32,717.717 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:02:32,732.732 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:02:32,839.839 INFO    ] No existing commands found in stream
[2026-08-31 07:02:37,872.872 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:02:37,875.875 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-08-31 07:02:40,366.366 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 07:02:40,369.369 INFO    ] Checking for system updates...
[2026-08-31 07:02:40,405.405 INFO    ] 200
[2026-08-31 07:02:40,409.409 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:02:40,471.471 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:02:40,474.474 INFO    ] No update needed
[2026-08-31 07:02:40,477.477 INFO    ] Checking for camera pi updates...
[2026-08-31 07:02:40,517.517 INFO    ] 200
[2026-08-31 07:02:40,524.524 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:02:40,566.566 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:02:40,664.664 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:02:40,667.667 INFO    ] No camera update needed
[2026-08-31 07:02:40,670.670 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:02:40,673.673 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:02:40,680.680 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:02:40,685.685 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:02:42,729.729 INFO    ] ================================================
[2026-08-31 07:02:42,745.745 INFO    ] Launching Daemon at Mon Aug 31 07:02:42 IST 2026
[2026-08-31 07:02:42,757.757 INFO    ] ================================================
[2026-08-31 07:02:43,323.323 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:02:43
[2026-08-31 07:02:43,905.905 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:02:44,175.175 INFO    ] Initializing speech engine...
[2026-08-31 07:02:44,184.184 INFO    ] 2026-08-31 07:02:44
[2026-08-31 07:02:44,434.434 INFO    ] 2026-08-31 07:02:44
[2026-08-31 07:02:44,468.468 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:02:44,726.726 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:02:44,735.735 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:02:44,956.956 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:02:44,997.997 INFO    ] time= 31/08/2026 07:02:44
[2026-08-31 07:02:45,004.004 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:02:45,023.023 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:02:45,158.158 INFO    ] No existing commands found in stream
[2026-08-31 07:02:50,176.176 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:02:50,179.179 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-08-31 07:02:51,164.164 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 07:02:51,168.168 INFO    ] Checking for system updates...
[2026-08-31 07:02:51,205.205 INFO    ] 200
[2026-08-31 07:02:51,208.208 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:02:51,261.261 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:02:51,264.264 INFO    ] No update needed
[2026-08-31 07:02:51,266.266 INFO    ] Checking for camera pi updates...
[2026-08-31 07:02:51,304.304 INFO    ] 200
[2026-08-31 07:02:51,306.306 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:02:51,346.346 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:02:51,531.531 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:02:51,533.533 INFO    ] No camera update needed
[2026-08-31 07:02:51,535.535 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:02:51,538.538 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:02:51,543.543 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:02:51,548.548 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:02:53,590.590 INFO    ] ================================================
[2026-08-31 07:02:53,605.605 INFO    ] Launching Daemon at Mon Aug 31 07:02:53 IST 2026
[2026-08-31 07:02:53,617.617 INFO    ] ================================================
[2026-08-31 07:02:54,196.196 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:02:54
[2026-08-31 07:02:54,795.795 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:02:55,074.074 INFO    ] Initializing speech engine...
[2026-08-31 07:02:55,079.079 INFO    ] 2026-08-31 07:02:55
[2026-08-31 07:02:55,335.335 INFO    ] 2026-08-31 07:02:55
[2026-08-31 07:02:55,395.395 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:02:55,678.678 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:02:55,686.686 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:02:55,861.861 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:02:55,888.888 INFO    ] time= 31/08/2026 07:02:55
[2026-08-31 07:02:55,903.903 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:02:55,911.911 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:02:56,035.035 INFO    ] No existing commands found in stream
[2026-08-31 07:03:01,052.052 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:03:01,055.055 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-08-31 07:03:01,971.971 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 07:03:01,976.976 INFO    ] Checking for system updates...
[2026-08-31 07:03:02,034.034 INFO    ] 200
[2026-08-31 07:03:02,048.048 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:03:02,133.133 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:03:02,136.136 INFO    ] No update needed
[2026-08-31 07:03:02,145.145 INFO    ] Checking for camera pi updates...
[2026-08-31 07:03:02,224.224 INFO    ] 200
[2026-08-31 07:03:02,227.227 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:03:02,296.296 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:03:02,411.411 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:03:02,414.414 INFO    ] No camera update needed
[2026-08-31 07:03:02,416.416 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:03:02,420.420 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:03:02,426.426 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:03:02,431.431 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:03:04,477.477 INFO    ] ================================================
[2026-08-31 07:03:04,492.492 INFO    ] Launching Daemon at Mon Aug 31 07:03:04 IST 2026
[2026-08-31 07:03:04,504.504 INFO    ] ================================================
[2026-08-31 07:03:05,085.085 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:03:05
[2026-08-31 07:03:05,685.685 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:03:05,956.956 INFO    ] Initializing speech engine...
[2026-08-31 07:03:05,966.966 INFO    ] 2026-08-31 07:03:05
[2026-08-31 07:03:06,216.216 INFO    ] 2026-08-31 07:03:06
[2026-08-31 07:03:06,251.251 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:03:06,503.503 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:03:06,512.512 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:03:06,722.722 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:03:06,767.767 INFO    ] time= 31/08/2026 07:03:06
[2026-08-31 07:03:06,776.776 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:03:06,789.789 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:03:06,868.868 INFO    ] No existing commands found in stream
[2026-08-31 07:03:11,880.880 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:03:11,883.883 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-08-31 07:03:16,225.225 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 07:03:16,228.228 INFO    ] Checking for system updates...
[2026-08-31 07:03:16,263.263 INFO    ] 200
[2026-08-31 07:03:16,266.266 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:03:16,318.318 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:03:16,321.321 INFO    ] No update needed
[2026-08-31 07:03:16,323.323 INFO    ] Checking for camera pi updates...
[2026-08-31 07:03:16,356.356 INFO    ] 200
[2026-08-31 07:03:16,359.359 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:03:16,399.399 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:03:16,486.486 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:03:16,488.488 INFO    ] No camera update needed
[2026-08-31 07:03:16,491.491 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:03:16,493.493 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:03:16,499.499 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:03:16,504.504 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:03:18,547.547 INFO    ] ================================================
[2026-08-31 07:03:18,563.563 INFO    ] Launching Daemon at Mon Aug 31 07:03:18 IST 2026
[2026-08-31 07:03:18,574.574 INFO    ] ================================================
[2026-08-31 07:03:19,156.156 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:03:19
[2026-08-31 07:03:19,751.751 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:03:20,025.025 INFO    ] Initializing speech engine...
[2026-08-31 07:03:20,034.034 INFO    ] 2026-08-31 07:03:20
[2026-08-31 07:03:20,283.283 INFO    ] 2026-08-31 07:03:20
[2026-08-31 07:03:20,318.318 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:03:20,570.570 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:03:20,580.580 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:03:20,801.801 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:03:20,838.838 INFO    ] time= 31/08/2026 07:03:20
[2026-08-31 07:03:20,844.844 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:03:20,865.865 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:03:20,942.942 INFO    ] No existing commands found in stream
[2026-08-31 07:03:25,952.952 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:03:25,955.955 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-08-31 07:03:28,312.312 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 07:03:28,315.315 INFO    ] Checking for system updates...
[2026-08-31 07:03:28,350.350 INFO    ] 200
[2026-08-31 07:03:28,352.352 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:03:28,405.405 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:03:28,408.408 INFO    ] No update needed
[2026-08-31 07:03:28,410.410 INFO    ] Checking for camera pi updates...
[2026-08-31 07:03:28,447.447 INFO    ] 200
[2026-08-31 07:03:28,450.450 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:03:28,490.490 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:03:28,586.586 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:03:28,589.589 INFO    ] No camera update needed
[2026-08-31 07:03:28,591.591 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:03:28,594.594 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:03:28,599.599 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:03:28,604.604 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:03:30,646.646 INFO    ] ================================================
[2026-08-31 07:03:30,661.661 INFO    ] Launching Daemon at Mon Aug 31 07:03:30 IST 2026
[2026-08-31 07:03:30,672.672 INFO    ] ================================================
[2026-08-31 07:03:31,243.243 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:03:31
[2026-08-31 07:03:31,824.824 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:03:32,122.122 INFO    ] Initializing speech engine...
[2026-08-31 07:03:32,137.137 INFO    ] 2026-08-31 07:03:32
[2026-08-31 07:03:32,420.420 INFO    ] 2026-08-31 07:03:32
[2026-08-31 07:03:32,456.456 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:03:32,620.620 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:03:32,628.628 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:03:32,784.784 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:03:32,795.795 INFO    ] time= 31/08/2026 07:03:32
[2026-08-31 07:03:32,802.802 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:03:32,826.826 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:03:32,956.956 INFO    ] No existing commands found in stream
[2026-08-31 07:03:37,969.969 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:03:37,972.972 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-08-31 07:03:40,826.826 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 07:03:40,829.829 INFO    ] Checking for system updates...
[2026-08-31 07:03:40,864.864 INFO    ] 200
[2026-08-31 07:03:40,866.866 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:03:40,919.919 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:03:40,921.921 INFO    ] No update needed
[2026-08-31 07:03:40,924.924 INFO    ] Checking for camera pi updates...
[2026-08-31 07:03:40,957.957 INFO    ] 200
[2026-08-31 07:03:40,960.960 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:03:41,005.005 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:03:41,085.085 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:03:41,088.088 INFO    ] No camera update needed
[2026-08-31 07:03:41,090.090 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:03:41,093.093 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:03:41,098.098 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:03:41,103.103 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:03:43,144.144 INFO    ] ================================================
[2026-08-31 07:03:43,160.160 INFO    ] Launching Daemon at Mon Aug 31 07:03:43 IST 2026
[2026-08-31 07:03:43,171.171 INFO    ] ================================================
[2026-08-31 07:03:43,750.750 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:03:43
[2026-08-31 07:03:44,348.348 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:03:44,620.620 INFO    ] Initializing speech engine...
[2026-08-31 07:03:44,629.629 INFO    ] 2026-08-31 07:03:44
[2026-08-31 07:03:44,879.879 INFO    ] 2026-08-31 07:03:44
[2026-08-31 07:03:44,914.914 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:03:45,165.165 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:03:45,176.176 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:03:45,399.399 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:03:45,435.435 INFO    ] time= 31/08/2026 07:03:45
[2026-08-31 07:03:45,441.441 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:03:45,459.459 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:03:45,591.591 INFO    ] No existing commands found in stream
[2026-08-31 07:03:50,610.610 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:03:50,613.613 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-08-31 07:03:52,744.744 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 07:03:52,747.747 INFO    ] Checking for system updates...
[2026-08-31 07:03:52,783.783 INFO    ] 200
[2026-08-31 07:03:52,786.786 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:03:52,838.838 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:03:52,841.841 INFO    ] No update needed
[2026-08-31 07:03:52,843.843 INFO    ] Checking for camera pi updates...
[2026-08-31 07:03:52,876.876 INFO    ] 200
[2026-08-31 07:03:52,879.879 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:03:52,924.924 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:03:53,020.020 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:03:53,022.022 INFO    ] No camera update needed
[2026-08-31 07:03:53,024.024 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:03:53,027.027 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:03:53,032.032 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:03:53,037.037 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:03:55,078.078 INFO    ] ================================================
[2026-08-31 07:03:55,093.093 INFO    ] Launching Daemon at Mon Aug 31 07:03:55 IST 2026
[2026-08-31 07:03:55,103.103 INFO    ] ================================================
[2026-08-31 07:03:55,742.742 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:03:55
[2026-08-31 07:03:56,355.355 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:03:56,625.625 INFO    ] Initializing speech engine...
[2026-08-31 07:03:56,634.634 INFO    ] 2026-08-31 07:03:56
[2026-08-31 07:03:56,885.885 INFO    ] 2026-08-31 07:03:56
[2026-08-31 07:03:56,945.945 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:03:57,171.171 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:03:57,177.177 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:03:57,387.387 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:03:57,434.434 INFO    ] time= 31/08/2026 07:03:57
[2026-08-31 07:03:57,441.441 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:03:57,456.456 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:03:57,590.590 INFO    ] No existing commands found in stream
[2026-08-31 07:04:02,610.610 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:04:02,614.614 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-08-31 07:04:06,283.283 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 07:04:06,286.286 INFO    ] Checking for system updates...
[2026-08-31 07:04:06,333.333 INFO    ] 200
[2026-08-31 07:04:06,335.335 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:04:06,387.387 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:04:06,389.389 INFO    ] No update needed
[2026-08-31 07:04:06,392.392 INFO    ] Checking for camera pi updates...
[2026-08-31 07:04:06,425.425 INFO    ] 200
[2026-08-31 07:04:06,428.428 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:04:06,472.472 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:04:06,570.570 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:04:06,572.572 INFO    ] No camera update needed
[2026-08-31 07:04:06,574.574 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:04:06,577.577 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:04:06,582.582 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:04:06,587.587 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:04:08,628.628 INFO    ] ================================================
[2026-08-31 07:04:08,643.643 INFO    ] Launching Daemon at Mon Aug 31 07:04:08 IST 2026
[2026-08-31 07:04:08,654.654 INFO    ] ================================================
[2026-08-31 07:04:09,221.221 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:04:09
[2026-08-31 07:04:09,802.802 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:04:10,068.068 INFO    ] Initializing speech engine...
[2026-08-31 07:04:10,077.077 INFO    ] 2026-08-31 07:04:10
[2026-08-31 07:04:10,322.322 INFO    ] 2026-08-31 07:04:10
[2026-08-31 07:04:10,356.356 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:04:10,611.611 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:04:10,616.616 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:04:10,856.856 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:04:10,877.877 INFO    ] time= 31/08/2026 07:04:10
[2026-08-31 07:04:10,892.892 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:04:10,898.898 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:04:11,026.026 INFO    ] No existing commands found in stream
[2026-08-31 07:04:16,039.039 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:04:16,042.042 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-08-31 07:04:18,482.482 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 07:04:18,485.485 INFO    ] Checking for system updates...
[2026-08-31 07:04:18,521.521 INFO    ] 200
[2026-08-31 07:04:18,523.523 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:04:18,577.577 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:04:18,579.579 INFO    ] No update needed
[2026-08-31 07:04:18,581.581 INFO    ] Checking for camera pi updates...
[2026-08-31 07:04:18,619.619 INFO    ] 200
[2026-08-31 07:04:18,621.621 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:04:18,662.662 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:04:18,746.746 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:04:18,749.749 INFO    ] No camera update needed
[2026-08-31 07:04:18,752.752 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:04:18,755.755 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:04:18,761.761 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:04:18,767.767 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:04:20,808.808 INFO    ] ================================================
[2026-08-31 07:04:20,823.823 INFO    ] Launching Daemon at Mon Aug 31 07:04:20 IST 2026
[2026-08-31 07:04:20,833.833 INFO    ] ================================================
[2026-08-31 07:04:21,414.414 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:04:21
[2026-08-31 07:04:21,998.998 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:04:22,273.273 INFO    ] Initializing speech engine...
[2026-08-31 07:04:22,279.279 INFO    ] 2026-08-31 07:04:22
[2026-08-31 07:04:22,538.538 INFO    ] 2026-08-31 07:04:22
[2026-08-31 07:04:22,579.579 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:04:22,790.790 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:04:22,848.848 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:04:22,996.996 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:04:23,044.044 INFO    ] time= 31/08/2026 07:04:22
[2026-08-31 07:04:23,094.094 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:04:23,137.137 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:04:23,299.299 INFO    ] No existing commands found in stream
[2026-08-31 07:04:28,330.330 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:04:28,333.333 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-08-31 07:04:28,824.824 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 07:04:28,827.827 INFO    ] Checking for system updates...
[2026-08-31 07:04:28,868.868 INFO    ] 200
[2026-08-31 07:04:28,870.870 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:04:28,922.922 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:04:28,925.925 INFO    ] No update needed
[2026-08-31 07:04:28,927.927 INFO    ] Checking for camera pi updates...
[2026-08-31 07:04:28,964.964 INFO    ] 200
[2026-08-31 07:04:28,967.967 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:04:29,012.012 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:04:29,092.092 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:04:29,094.094 INFO    ] No camera update needed
[2026-08-31 07:04:29,097.097 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:04:29,099.099 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:04:29,105.105 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:04:29,110.110 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:04:31,152.152 INFO    ] ================================================
[2026-08-31 07:04:31,167.167 INFO    ] Launching Daemon at Mon Aug 31 07:04:31 IST 2026
[2026-08-31 07:04:31,178.178 INFO    ] ================================================
[2026-08-31 07:04:31,744.744 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:04:31
[2026-08-31 07:04:32,356.356 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:04:32,665.665 INFO    ] Initializing speech engine...
[2026-08-31 07:04:32,675.675 INFO    ] 2026-08-31 07:04:32
[2026-08-31 07:04:32,958.958 INFO    ] 2026-08-31 07:04:32
[2026-08-31 07:04:32,996.996 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:04:33,180.180 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:04:33,182.182 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:04:33,340.340 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:04:33,352.352 INFO    ] time= 31/08/2026 07:04:33
[2026-08-31 07:04:33,360.360 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:04:33,366.366 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:04:33,433.433 INFO    ] No existing commands found in stream
[2026-08-31 07:04:38,469.469 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:04:38,472.472 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-08-31 07:04:39,644.644 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 07:04:39,646.646 INFO    ] Checking for system updates...
[2026-08-31 07:04:39,689.689 INFO    ] 200
[2026-08-31 07:04:39,691.691 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:04:39,743.743 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:04:39,745.745 INFO    ] No update needed
[2026-08-31 07:04:39,748.748 INFO    ] Checking for camera pi updates...
[2026-08-31 07:04:39,782.782 INFO    ] 200
[2026-08-31 07:04:39,784.784 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:04:39,825.825 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:04:39,915.915 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:04:39,917.917 INFO    ] No camera update needed
[2026-08-31 07:04:39,920.920 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:04:39,922.922 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:04:39,927.927 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:04:39,932.932 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:04:41,975.975 INFO    ] ================================================
[2026-08-31 07:04:41,990.990 INFO    ] Launching Daemon at Mon Aug 31 07:04:41 IST 2026
[2026-08-31 07:04:42,002.002 INFO    ] ================================================
[2026-08-31 07:04:42,653.653 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:04:42
[2026-08-31 07:04:43,321.321 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:04:43,622.622 INFO    ] Initializing speech engine...
[2026-08-31 07:04:43,629.629 INFO    ] 2026-08-31 07:04:43
[2026-08-31 07:04:43,903.903 INFO    ] 2026-08-31 07:04:43
[2026-08-31 07:04:43,958.958 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:04:44,242.242 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:04:44,252.252 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:04:44,435.435 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:04:44,454.454 INFO    ] time= 31/08/2026 07:04:44
[2026-08-31 07:04:44,473.473 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:04:44,502.502 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:04:44,648.648 INFO    ] No existing commands found in stream
[2026-08-31 07:04:49,679.679 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:04:49,682.682 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-08-31 07:04:52,825.825 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 07:04:52,828.828 INFO    ] Checking for system updates...
[2026-08-31 07:04:52,865.865 INFO    ] 200
[2026-08-31 07:04:52,868.868 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:04:52,922.922 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:04:52,924.924 INFO    ] No update needed
[2026-08-31 07:04:52,927.927 INFO    ] Checking for camera pi updates...
[2026-08-31 07:04:52,965.965 INFO    ] 200
[2026-08-31 07:04:52,968.968 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:04:53,008.008 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:04:53,190.190 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:04:53,192.192 INFO    ] No camera update needed
[2026-08-31 07:04:53,194.194 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:04:53,197.197 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:04:53,202.202 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:04:53,207.207 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:04:55,248.248 INFO    ] ================================================
[2026-08-31 07:04:55,264.264 INFO    ] Launching Daemon at Mon Aug 31 07:04:55 IST 2026
[2026-08-31 07:04:55,276.276 INFO    ] ================================================
[2026-08-31 07:04:55,847.847 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:04:55
[2026-08-31 07:04:56,434.434 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:04:56,722.722 INFO    ] Initializing speech engine...
[2026-08-31 07:04:56,737.737 INFO    ] 2026-08-31 07:04:56
[2026-08-31 07:04:57,016.016 INFO    ] 2026-08-31 07:04:57
[2026-08-31 07:04:57,052.052 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:04:57,232.232 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:04:57,245.245 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:04:57,396.396 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:04:57,406.406 INFO    ] time= 31/08/2026 07:04:57
[2026-08-31 07:04:57,415.415 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:04:57,470.470 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:04:57,583.583 INFO    ] No existing commands found in stream
[2026-08-31 07:05:02,609.609 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:05:02,612.612 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-08-31 07:05:04,067.067 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 07:05:04,069.069 INFO    ] Checking for system updates...
[2026-08-31 07:05:04,105.105 INFO    ] 200
[2026-08-31 07:05:04,107.107 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:05:04,160.160 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:05:04,162.162 INFO    ] No update needed
[2026-08-31 07:05:04,165.165 INFO    ] Checking for camera pi updates...
[2026-08-31 07:05:04,198.198 INFO    ] 200
[2026-08-31 07:05:04,201.201 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:05:04,241.241 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:05:04,340.340 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:05:04,342.342 INFO    ] No camera update needed
[2026-08-31 07:05:04,345.345 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:05:04,347.347 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:05:04,352.352 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:05:04,357.357 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:05:06,399.399 INFO    ] ================================================
[2026-08-31 07:05:06,415.415 INFO    ] Launching Daemon at Mon Aug 31 07:05:06 IST 2026
[2026-08-31 07:05:06,426.426 INFO    ] ================================================
[2026-08-31 07:05:07,011.011 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:05:07
[2026-08-31 07:05:07,599.599 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:05:07,871.871 INFO    ] Initializing speech engine...
[2026-08-31 07:05:07,878.878 INFO    ] 2026-08-31 07:05:07
[2026-08-31 07:05:08,137.137 INFO    ] 2026-08-31 07:05:08
[2026-08-31 07:05:08,167.167 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:05:08,411.411 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:05:08,420.420 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:05:08,620.620 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:05:08,678.678 INFO    ] time= 31/08/2026 07:05:08
[2026-08-31 07:05:08,684.684 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:05:08,701.701 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:05:08,829.829 INFO    ] No existing commands found in stream
[2026-08-31 07:05:13,844.844 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:05:13,846.846 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-08-31 07:05:16,797.797 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 07:05:16,800.800 INFO    ] Checking for system updates...
[2026-08-31 07:05:16,854.854 INFO    ] 200
[2026-08-31 07:05:16,857.857 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-08-31 07:05:16,860.860 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-08-31 07:05:16,862.862 INFO    ] Checking for camera pi updates...
[2026-08-31 07:05:16,906.906 INFO    ] 200
[2026-08-31 07:05:16,909.909 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-08-31 07:05:16,912.912 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-08-31 07:05:16,914.914 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:05:16,917.917 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:05:16,923.923 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:05:16,928.928 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:05:18,973.973 INFO    ] ================================================
[2026-08-31 07:05:18,989.989 INFO    ] Launching Daemon at Mon Aug 31 07:05:18 IST 2026
[2026-08-31 07:05:19,000.000 INFO    ] ================================================
[2026-08-31 07:05:19,667.667 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:05:19
[2026-08-31 07:05:20,354.354 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:05:20,663.663 INFO    ] Initializing speech engine...
[2026-08-31 07:05:20,675.675 INFO    ] 2026-08-31 07:05:20
[2026-08-31 07:05:20,989.989 INFO    ] 2026-08-31 07:05:20
[2026-08-31 07:05:21,073.073 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:05:21,283.283 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:05:21,292.292 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:05:21,487.487 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:05:21,494.494 INFO    ] time= 31/08/2026 07:05:21
[2026-08-31 07:05:21,513.513 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:05:21,543.543 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:05:21,659.659 INFO    ] No existing commands found in stream
[2026-08-31 07:05:26,690.690 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:05:26,693.693 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-08-31 07:05:27,567.567 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 07:05:27,569.569 INFO    ] Checking for system updates...
[2026-08-31 07:05:27,605.605 INFO    ] 200
[2026-08-31 07:05:27,608.608 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:05:27,661.661 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:05:27,663.663 INFO    ] No update needed
[2026-08-31 07:05:27,666.666 INFO    ] Checking for camera pi updates...
[2026-08-31 07:05:27,700.700 INFO    ] 200
[2026-08-31 07:05:27,703.703 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:05:27,743.743 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:05:27,829.829 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:05:27,831.831 INFO    ] No camera update needed
[2026-08-31 07:05:27,834.834 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:05:27,836.836 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:05:27,842.842 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:05:27,847.847 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:05:29,888.888 INFO    ] ================================================
[2026-08-31 07:05:29,904.904 INFO    ] Launching Daemon at Mon Aug 31 07:05:29 IST 2026
[2026-08-31 07:05:29,915.915 INFO    ] ================================================
[2026-08-31 07:05:30,585.585 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:05:30
[2026-08-31 07:05:31,274.274 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:05:31,584.584 INFO    ] Initializing speech engine...
[2026-08-31 07:05:31,595.595 INFO    ] 2026-08-31 07:05:31
[2026-08-31 07:05:31,881.881 INFO    ] 2026-08-31 07:05:31
[2026-08-31 07:05:31,952.952 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:05:32,222.222 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:05:32,241.241 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:05:32,432.432 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:05:32,467.467 INFO    ] time= 31/08/2026 07:05:32
[2026-08-31 07:05:32,486.486 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:05:32,496.496 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:05:32,618.618 INFO    ] No existing commands found in stream
[2026-08-31 07:05:37,643.643 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:05:37,646.646 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-08-31 07:05:40,971.971 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 07:05:40,974.974 INFO    ] Checking for system updates...
[2026-08-31 07:05:41,009.009 INFO    ] 200
[2026-08-31 07:05:41,012.012 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:05:41,064.064 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:05:41,067.067 INFO    ] No update needed
[2026-08-31 07:05:41,069.069 INFO    ] Checking for camera pi updates...
[2026-08-31 07:05:41,103.103 INFO    ] 200
[2026-08-31 07:05:41,105.105 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:05:41,152.152 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:05:41,242.242 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:05:41,245.245 INFO    ] No camera update needed
[2026-08-31 07:05:41,247.247 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:05:41,250.250 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:05:41,255.255 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:05:41,260.260 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:05:43,301.301 INFO    ] ================================================
[2026-08-31 07:05:43,317.317 INFO    ] Launching Daemon at Mon Aug 31 07:05:43 IST 2026
[2026-08-31 07:05:43,329.329 INFO    ] ================================================
[2026-08-31 07:05:43,997.997 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:05:43
[2026-08-31 07:05:44,687.687 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:05:45,002.002 INFO    ] Initializing speech engine...
[2026-08-31 07:05:45,012.012 INFO    ] 2026-08-31 07:05:45
[2026-08-31 07:05:45,331.331 INFO    ] 2026-08-31 07:05:45
[2026-08-31 07:05:45,414.414 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:05:45,631.631 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:05:45,640.640 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:05:45,835.835 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:05:45,857.857 INFO    ] time= 31/08/2026 07:05:45
[2026-08-31 07:05:45,886.886 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:05:45,896.896 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:05:46,010.010 INFO    ] No existing commands found in stream
[2026-08-31 07:05:51,046.046 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:05:51,050.050 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-08-31 07:05:54,830.830 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 07:05:54,833.833 INFO    ] Checking for system updates...
[2026-08-31 07:05:54,870.870 INFO    ] 200
[2026-08-31 07:05:54,873.873 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:05:54,929.929 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:05:54,931.931 INFO    ] No update needed
[2026-08-31 07:05:54,934.934 INFO    ] Checking for camera pi updates...
[2026-08-31 07:05:54,970.970 INFO    ] 200
[2026-08-31 07:05:54,972.972 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:05:55,015.015 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:05:55,098.098 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:05:55,101.101 INFO    ] No camera update needed
[2026-08-31 07:05:55,103.103 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:05:55,106.106 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:05:55,112.112 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:05:55,119.119 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:05:57,160.160 INFO    ] ================================================
[2026-08-31 07:05:57,175.175 INFO    ] Launching Daemon at Mon Aug 31 07:05:57 IST 2026
[2026-08-31 07:05:57,186.186 INFO    ] ================================================
[2026-08-31 07:05:57,861.861 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:05:57
[2026-08-31 07:05:58,554.554 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:05:58,869.869 INFO    ] Initializing speech engine...
[2026-08-31 07:05:58,881.881 INFO    ] 2026-08-31 07:05:58
[2026-08-31 07:05:59,194.194 INFO    ] 2026-08-31 07:05:59
[2026-08-31 07:05:59,281.281 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:05:59,467.467 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:05:59,496.496 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:05:59,676.676 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:05:59,704.704 INFO    ] time= 31/08/2026 07:05:59
[2026-08-31 07:05:59,725.725 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:05:59,754.754 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:05:59,854.854 INFO    ] No existing commands found in stream
[2026-08-31 07:06:04,871.871 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:06:04,874.874 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-08-31 07:06:07,758.758 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 07:06:07,761.761 INFO    ] Checking for system updates...
[2026-08-31 07:06:07,798.798 INFO    ] 200
[2026-08-31 07:06:07,801.801 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:06:07,863.863 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:06:07,866.866 INFO    ] No update needed
[2026-08-31 07:06:07,869.869 INFO    ] Checking for camera pi updates...
[2026-08-31 07:06:07,904.904 INFO    ] 200
[2026-08-31 07:06:07,906.906 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:06:07,950.950 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:06:08,034.034 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:06:08,036.036 INFO    ] No camera update needed
[2026-08-31 07:06:08,040.040 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:06:08,042.042 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:06:08,049.049 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:06:08,055.055 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:06:10,099.099 INFO    ] ================================================
[2026-08-31 07:06:10,115.115 INFO    ] Launching Daemon at Mon Aug 31 07:06:10 IST 2026
[2026-08-31 07:06:10,125.125 INFO    ] ================================================
[2026-08-31 07:06:10,689.689 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:06:10
[2026-08-31 07:06:11,272.272 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:06:11,539.539 INFO    ] Initializing speech engine...
[2026-08-31 07:06:11,548.548 INFO    ] 2026-08-31 07:06:11
[2026-08-31 07:06:11,799.799 INFO    ] 2026-08-31 07:06:11
[2026-08-31 07:06:11,859.859 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:06:12,080.080 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:06:12,089.089 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:06:12,223.223 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:06:12,293.293 INFO    ] time= 31/08/2026 07:06:12
[2026-08-31 07:06:12,350.350 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:06:12,356.356 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:06:12,485.485 INFO    ] No existing commands found in stream
[2026-08-31 07:06:17,509.509 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:06:17,512.512 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-08-31 07:06:18,323.323 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 07:06:18,326.326 INFO    ] Checking for system updates...
[2026-08-31 07:06:18,371.371 INFO    ] 200
[2026-08-31 07:06:18,374.374 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:06:18,480.480 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:06:18,483.483 INFO    ] No update needed
[2026-08-31 07:06:18,485.485 INFO    ] Checking for camera pi updates...
[2026-08-31 07:06:18,521.521 INFO    ] 200
[2026-08-31 07:06:18,523.523 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:06:18,565.565 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:06:18,668.668 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:06:18,671.671 INFO    ] No camera update needed
[2026-08-31 07:06:18,673.673 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:06:18,676.676 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:06:18,682.682 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:06:18,688.688 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:06:20,731.731 INFO    ] ================================================
[2026-08-31 07:06:20,746.746 INFO    ] Launching Daemon at Mon Aug 31 07:06:20 IST 2026
[2026-08-31 07:06:20,757.757 INFO    ] ================================================
[2026-08-31 07:06:21,324.324 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:06:21
[2026-08-31 07:06:21,909.909 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:06:22,167.167 INFO    ] Initializing speech engine...
[2026-08-31 07:06:22,176.176 INFO    ] 2026-08-31 07:06:22
[2026-08-31 07:06:22,473.473 INFO    ] 2026-08-31 07:06:22
[2026-08-31 07:06:22,509.509 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:06:22,710.710 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:06:22,724.724 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:06:22,871.871 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:06:22,894.894 INFO    ] time= 31/08/2026 07:06:22
[2026-08-31 07:06:22,903.903 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:06:22,910.910 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:06:22,988.988 INFO    ] No existing commands found in stream
[2026-08-31 07:06:28,013.013 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:06:28,016.016 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-08-31 07:06:31,306.306 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 07:06:31,309.309 INFO    ] Checking for system updates...
[2026-08-31 07:06:31,344.344 INFO    ] 200
[2026-08-31 07:06:31,347.347 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:06:31,399.399 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:06:31,402.402 INFO    ] No update needed
[2026-08-31 07:06:31,404.404 INFO    ] Checking for camera pi updates...
[2026-08-31 07:06:31,437.437 INFO    ] 200
[2026-08-31 07:06:31,440.440 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:06:31,479.479 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:06:31,537.537 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:06:31,540.540 INFO    ] No camera update needed
[2026-08-31 07:06:31,542.542 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:06:31,544.544 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:06:31,550.550 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:06:31,556.556 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:06:33,598.598 INFO    ] ================================================
[2026-08-31 07:06:33,612.612 INFO    ] Launching Daemon at Mon Aug 31 07:06:33 IST 2026
[2026-08-31 07:06:33,623.623 INFO    ] ================================================
[2026-08-31 07:06:34,280.280 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:06:34
[2026-08-31 07:06:34,978.978 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:06:35,288.288 INFO    ] Initializing speech engine...
[2026-08-31 07:06:35,299.299 INFO    ] 2026-08-31 07:06:35
[2026-08-31 07:06:35,609.609 INFO    ] 2026-08-31 07:06:35
[2026-08-31 07:06:35,694.694 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:06:35,909.909 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:06:35,914.914 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:06:36,110.110 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:06:36,116.116 INFO    ] time= 31/08/2026 07:06:36
[2026-08-31 07:06:36,135.135 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:06:36,164.164 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:06:36,266.266 INFO    ] No existing commands found in stream
[2026-08-31 07:06:41,282.282 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:06:41,286.286 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-08-31 07:06:42,428.428 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 07:06:42,431.431 INFO    ] Checking for system updates...
[2026-08-31 07:06:42,468.468 INFO    ] 200
[2026-08-31 07:06:42,471.471 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:06:42,525.525 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:06:42,528.528 INFO    ] No update needed
[2026-08-31 07:06:42,531.531 INFO    ] Checking for camera pi updates...
[2026-08-31 07:06:42,570.570 INFO    ] 200
[2026-08-31 07:06:42,573.573 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:06:42,620.620 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:06:42,700.700 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:06:42,703.703 INFO    ] No camera update needed
[2026-08-31 07:06:42,706.706 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:06:42,709.709 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:06:42,715.715 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:06:42,721.721 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:06:44,761.761 INFO    ] ================================================
[2026-08-31 07:06:44,776.776 INFO    ] Launching Daemon at Mon Aug 31 07:06:44 IST 2026
[2026-08-31 07:06:44,791.791 INFO    ] ================================================
[2026-08-31 07:06:45,357.357 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:06:45
[2026-08-31 07:06:45,940.940 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:06:46,196.196 INFO    ] Initializing speech engine...
[2026-08-31 07:06:46,215.215 INFO    ] 2026-08-31 07:06:46
[2026-08-31 07:06:46,461.461 INFO    ] 2026-08-31 07:06:46
[2026-08-31 07:06:46,496.496 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:06:46,746.746 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:06:46,754.754 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:06:46,889.889 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:06:46,933.933 INFO    ] time= 31/08/2026 07:06:46
[2026-08-31 07:06:46,982.982 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:06:47,019.019 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:06:47,151.151 INFO    ] No existing commands found in stream
[2026-08-31 07:06:52,173.173 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:06:52,176.176 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-08-31 07:06:53,475.475 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 07:06:53,478.478 INFO    ] Checking for system updates...
[2026-08-31 07:06:53,516.516 INFO    ] 200
[2026-08-31 07:06:53,519.519 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:06:53,572.572 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:06:53,575.575 INFO    ] No update needed
[2026-08-31 07:06:53,578.578 INFO    ] Checking for camera pi updates...
[2026-08-31 07:06:53,613.613 INFO    ] 200
[2026-08-31 07:06:53,616.616 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:06:53,657.657 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:06:53,738.738 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:06:53,741.741 INFO    ] No camera update needed
[2026-08-31 07:06:53,744.744 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:06:53,746.746 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:06:53,753.753 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:06:53,759.759 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:06:55,800.800 INFO    ] ================================================
[2026-08-31 07:06:55,816.816 INFO    ] Launching Daemon at Mon Aug 31 07:06:55 IST 2026
[2026-08-31 07:06:55,827.827 INFO    ] ================================================
[2026-08-31 07:06:56,490.490 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:06:56
[2026-08-31 07:06:57,172.172 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:06:57,481.481 INFO    ] Initializing speech engine...
[2026-08-31 07:06:57,487.487 INFO    ] 2026-08-31 07:06:57
[2026-08-31 07:06:57,781.781 INFO    ] 2026-08-31 07:06:57
[2026-08-31 07:06:57,854.854 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:06:58,112.112 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:06:58,120.120 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:06:58,312.312 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:06:58,333.333 INFO    ] time= 31/08/2026 07:06:58
[2026-08-31 07:06:58,361.361 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:06:58,371.371 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:06:58,470.470 INFO    ] No existing commands found in stream
[2026-08-31 07:07:03,496.496 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:07:03,499.499 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-08-31 07:07:07,547.547 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 07:07:07,551.551 INFO    ] Checking for system updates...
[2026-08-31 07:07:07,587.587 INFO    ] 200
[2026-08-31 07:07:07,590.590 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:07:07,643.643 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:07:07,646.646 INFO    ] No update needed
[2026-08-31 07:07:07,649.649 INFO    ] Checking for camera pi updates...
[2026-08-31 07:07:07,685.685 INFO    ] 200
[2026-08-31 07:07:07,688.688 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:07:07,729.729 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:07:07,812.812 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:07:07,815.815 INFO    ] No camera update needed
[2026-08-31 07:07:07,817.817 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:07:07,819.819 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:07:07,825.825 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:07:07,830.830 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:07:09,870.870 INFO    ] ================================================
[2026-08-31 07:07:09,886.886 INFO    ] Launching Daemon at Mon Aug 31 07:07:09 IST 2026
[2026-08-31 07:07:09,897.897 INFO    ] ================================================
[2026-08-31 07:07:10,552.552 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:07:10
[2026-08-31 07:07:11,229.229 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:07:11,533.533 INFO    ] Initializing speech engine...
[2026-08-31 07:07:11,545.545 INFO    ] 2026-08-31 07:07:11
[2026-08-31 07:07:11,828.828 INFO    ] 2026-08-31 07:07:11
[2026-08-31 07:07:11,874.874 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:07:12,158.158 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:07:12,163.163 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:07:12,345.345 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:07:12,367.367 INFO    ] time= 31/08/2026 07:07:12
[2026-08-31 07:07:12,374.374 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:07:12,397.397 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:07:12,509.509 INFO    ] No existing commands found in stream
[2026-08-31 07:07:17,526.526 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:07:17,529.529 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-08-31 07:07:21,724.724 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 07:07:21,726.726 INFO    ] Checking for system updates...
[2026-08-31 07:07:21,763.763 INFO    ] 200
[2026-08-31 07:07:21,765.765 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:07:21,821.821 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:07:21,824.824 INFO    ] No update needed
[2026-08-31 07:07:21,827.827 INFO    ] Checking for camera pi updates...
[2026-08-31 07:07:21,861.861 INFO    ] 200
[2026-08-31 07:07:21,863.863 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:07:21,909.909 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:07:21,974.974 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:07:21,977.977 INFO    ] No camera update needed
[2026-08-31 07:07:21,979.979 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:07:21,981.981 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:07:21,987.987 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:07:21,992.992 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:07:24,033.033 INFO    ] ================================================
[2026-08-31 07:07:24,049.049 INFO    ] Launching Daemon at Mon Aug 31 07:07:24 IST 2026
[2026-08-31 07:07:24,060.060 INFO    ] ================================================
[2026-08-31 07:07:24,716.716 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:07:24
[2026-08-31 07:07:25,389.389 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:07:25,696.696 INFO    ] Initializing speech engine...
[2026-08-31 07:07:25,707.707 INFO    ] 2026-08-31 07:07:25
[2026-08-31 07:07:26,018.018 INFO    ] 2026-08-31 07:07:25
[2026-08-31 07:07:26,103.103 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:07:26,314.314 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:07:26,322.322 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:07:26,518.518 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:07:26,526.526 INFO    ] time= 31/08/2026 07:07:26
[2026-08-31 07:07:26,546.546 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:07:26,575.575 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:07:26,704.704 INFO    ] No existing commands found in stream
[2026-08-31 07:07:31,735.735 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:07:31,739.739 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-08-31 07:07:34,965.965 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 07:07:34,969.969 INFO    ] Checking for system updates...
[2026-08-31 07:07:35,005.005 INFO    ] 200
[2026-08-31 07:07:35,008.008 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:07:35,061.061 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:07:35,064.064 INFO    ] No update needed
[2026-08-31 07:07:35,066.066 INFO    ] Checking for camera pi updates...
[2026-08-31 07:07:35,099.099 INFO    ] 200
[2026-08-31 07:07:35,101.101 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:07:35,147.147 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:07:35,245.245 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:07:35,247.247 INFO    ] No camera update needed
[2026-08-31 07:07:35,250.250 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:07:35,252.252 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:07:35,257.257 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:07:35,262.262 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:07:37,303.303 INFO    ] ================================================
[2026-08-31 07:07:37,325.325 INFO    ] Launching Daemon at Mon Aug 31 07:07:37 IST 2026
[2026-08-31 07:07:37,336.336 INFO    ] ================================================
[2026-08-31 07:07:37,995.995 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:07:37
[2026-08-31 07:07:38,671.671 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:07:38,973.973 INFO    ] Initializing speech engine...
[2026-08-31 07:07:38,988.988 INFO    ] 2026-08-31 07:07:38
[2026-08-31 07:07:39,297.297 INFO    ] 2026-08-31 07:07:39
[2026-08-31 07:07:39,382.382 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:07:39,592.592 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:07:39,600.600 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:07:39,796.796 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:07:39,803.803 INFO    ] time= 31/08/2026 07:07:39
[2026-08-31 07:07:39,825.825 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:07:39,853.853 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:07:39,977.977 INFO    ] No existing commands found in stream
[2026-08-31 07:07:45,008.008 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:07:45,011.011 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-08-31 07:07:47,843.843 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 07:07:47,846.846 INFO    ] Checking for system updates...
[2026-08-31 07:07:47,882.882 INFO    ] 200
[2026-08-31 07:07:47,885.885 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:07:47,939.939 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:07:47,942.942 INFO    ] No update needed
[2026-08-31 07:07:47,945.945 INFO    ] Checking for camera pi updates...
[2026-08-31 07:07:47,979.979 INFO    ] 200
[2026-08-31 07:07:47,982.982 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:07:48,024.024 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:07:48,129.129 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:07:48,132.132 INFO    ] No camera update needed
[2026-08-31 07:07:48,134.134 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:07:48,137.137 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:07:48,149.149 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:07:48,154.154 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:07:50,196.196 INFO    ] ================================================
[2026-08-31 07:07:50,212.212 INFO    ] Launching Daemon at Mon Aug 31 07:07:50 IST 2026
[2026-08-31 07:07:50,223.223 INFO    ] ================================================
[2026-08-31 07:07:50,874.874 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:07:50
[2026-08-31 07:07:51,543.543 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:07:51,844.844 INFO    ] Initializing speech engine...
[2026-08-31 07:07:51,853.853 INFO    ] 2026-08-31 07:07:51
[2026-08-31 07:07:52,127.127 INFO    ] 2026-08-31 07:07:52
[2026-08-31 07:07:52,182.182 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:07:52,431.431 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:07:52,438.438 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:07:52,640.640 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:07:52,674.674 INFO    ] time= 31/08/2026 07:07:52
[2026-08-31 07:07:52,681.681 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:07:52,702.702 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:07:52,826.826 INFO    ] No existing commands found in stream
[2026-08-31 07:07:57,843.843 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:07:57,846.846 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-08-31 07:07:58,370.370 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 07:07:58,373.373 INFO    ] Checking for system updates...
[2026-08-31 07:07:58,414.414 INFO    ] 200
[2026-08-31 07:07:58,417.417 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:07:58,478.478 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:07:58,481.481 INFO    ] No update needed
[2026-08-31 07:07:58,484.484 INFO    ] Checking for camera pi updates...
[2026-08-31 07:07:58,519.519 INFO    ] 200
[2026-08-31 07:07:58,521.521 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:07:58,563.563 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:07:58,651.651 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:07:58,653.653 INFO    ] No camera update needed
[2026-08-31 07:07:58,656.656 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:07:58,659.659 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:07:58,665.665 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:07:58,671.671 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:08:00,712.712 INFO    ] ================================================
[2026-08-31 07:08:00,728.728 INFO    ] Launching Daemon at Mon Aug 31 07:08:00 IST 2026
[2026-08-31 07:08:00,740.740 INFO    ] ================================================
[2026-08-31 07:08:01,323.323 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:08:01
[2026-08-31 07:08:01,926.926 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:08:02,485.485 INFO    ] Initializing speech engine...
[2026-08-31 07:08:02,491.491 INFO    ] 2026-08-31 07:08:02
[2026-08-31 07:08:02,873.873 INFO    ] 2026-08-31 07:08:02
[2026-08-31 07:08:02,935.935 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:08:03,113.113 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:08:03,122.122 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:08:03,316.316 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:08:03,340.340 INFO    ] time= 31/08/2026 07:08:03
[2026-08-31 07:08:03,366.366 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:08:03,399.399 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:08:03,508.508 INFO    ] No existing commands found in stream
[2026-08-31 07:08:08,523.523 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:08:08,526.526 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-08-31 07:08:09,802.802 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 07:08:09,805.805 INFO    ] Checking for system updates...
[2026-08-31 07:08:09,845.845 INFO    ] 200
[2026-08-31 07:08:09,848.848 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:08:09,900.900 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:08:09,902.902 INFO    ] No update needed
[2026-08-31 07:08:09,904.904 INFO    ] Checking for camera pi updates...
[2026-08-31 07:08:09,939.939 INFO    ] 200
[2026-08-31 07:08:09,941.941 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:08:09,982.982 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:08:10,082.082 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:08:10,084.084 INFO    ] No camera update needed
[2026-08-31 07:08:10,086.086 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:08:10,089.089 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:08:10,094.094 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:08:10,099.099 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:08:12,139.139 INFO    ] ================================================
[2026-08-31 07:08:12,154.154 INFO    ] Launching Daemon at Mon Aug 31 07:08:12 IST 2026
[2026-08-31 07:08:12,166.166 INFO    ] ================================================
[2026-08-31 07:08:12,804.804 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:08:12
[2026-08-31 07:08:13,411.411 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:08:13,678.678 INFO    ] Initializing speech engine...
[2026-08-31 07:08:13,696.696 INFO    ] 2026-08-31 07:08:13
[2026-08-31 07:08:13,981.981 INFO    ] 2026-08-31 07:08:13
[2026-08-31 07:08:14,016.016 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:08:14,226.226 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:08:14,245.245 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:08:14,393.393 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:08:14,402.402 INFO    ] time= 31/08/2026 07:08:14
[2026-08-31 07:08:14,410.410 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:08:14,459.459 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:08:14,585.585 INFO    ] No existing commands found in stream
[2026-08-31 07:08:19,610.610 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:08:19,613.613 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-08-31 07:08:23,564.564 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 07:08:23,567.567 INFO    ] Checking for system updates...
[2026-08-31 07:08:23,605.605 INFO    ] 200
[2026-08-31 07:08:23,607.607 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:08:23,667.667 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:08:23,670.670 INFO    ] No update needed
[2026-08-31 07:08:23,672.672 INFO    ] Checking for camera pi updates...
[2026-08-31 07:08:23,706.706 INFO    ] 200
[2026-08-31 07:08:23,708.708 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:08:23,753.753 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:08:23,837.837 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:08:23,839.839 INFO    ] No camera update needed
[2026-08-31 07:08:23,842.842 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:08:23,844.844 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:08:23,850.850 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:08:23,855.855 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:08:25,896.896 INFO    ] ================================================
[2026-08-31 07:08:25,912.912 INFO    ] Launching Daemon at Mon Aug 31 07:08:25 IST 2026
[2026-08-31 07:08:25,922.922 INFO    ] ================================================
[2026-08-31 07:08:26,488.488 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:08:26
[2026-08-31 07:08:27,074.074 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:08:27,343.343 INFO    ] Initializing speech engine...
[2026-08-31 07:08:27,352.352 INFO    ] 2026-08-31 07:08:27
[2026-08-31 07:08:27,603.603 INFO    ] 2026-08-31 07:08:27
[2026-08-31 07:08:27,638.638 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:08:27,824.824 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:08:27,839.839 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:08:27,974.974 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:08:27,981.981 INFO    ] time= 31/08/2026 07:08:27
[2026-08-31 07:08:28,027.027 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:08:28,047.047 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:08:28,166.166 INFO    ] No existing commands found in stream
[2026-08-31 07:08:33,185.185 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:08:33,188.188 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-08-31 07:08:35,318.318 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 07:08:35,321.321 INFO    ] Checking for system updates...
[2026-08-31 07:08:35,356.356 INFO    ] 200
[2026-08-31 07:08:35,359.359 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:08:35,411.411 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:08:35,414.414 INFO    ] No update needed
[2026-08-31 07:08:35,416.416 INFO    ] Checking for camera pi updates...
[2026-08-31 07:08:35,450.450 INFO    ] 200
[2026-08-31 07:08:35,452.452 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:08:35,494.494 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:08:35,575.575 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:08:35,577.577 INFO    ] No camera update needed
[2026-08-31 07:08:35,580.580 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:08:35,582.582 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:08:35,587.587 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:08:35,592.592 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:08:37,634.634 INFO    ] ================================================
[2026-08-31 07:08:37,651.651 INFO    ] Launching Daemon at Mon Aug 31 07:08:37 IST 2026
[2026-08-31 07:08:37,662.662 INFO    ] ================================================
[2026-08-31 07:08:38,325.325 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:08:38
[2026-08-31 07:08:39,003.003 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:08:39,279.279 INFO    ] Initializing speech engine...
[2026-08-31 07:08:39,288.288 INFO    ] 2026-08-31 07:08:39
[2026-08-31 07:08:39,537.537 INFO    ] 2026-08-31 07:08:39
[2026-08-31 07:08:39,572.572 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:08:39,822.822 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:08:39,831.831 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:08:39,966.966 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:08:40,031.031 INFO    ] time= 31/08/2026 07:08:39
[2026-08-31 07:08:40,085.085 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:08:40,097.097 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:08:40,219.219 INFO    ] No existing commands found in stream
[2026-08-31 07:08:45,250.250 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:08:45,252.252 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-08-31 07:08:48,524.524 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 07:08:48,526.526 INFO    ] Checking for system updates...
[2026-08-31 07:08:48,561.561 INFO    ] 200
[2026-08-31 07:08:48,564.564 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:08:48,623.623 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:08:48,625.625 INFO    ] No update needed
[2026-08-31 07:08:48,627.627 INFO    ] Checking for camera pi updates...
[2026-08-31 07:08:48,665.665 INFO    ] 200
[2026-08-31 07:08:48,667.667 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:08:48,708.708 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:08:48,812.812 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:08:48,814.814 INFO    ] No camera update needed
[2026-08-31 07:08:48,816.816 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:08:48,819.819 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:08:48,824.824 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:08:48,829.829 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:08:50,868.868 INFO    ] ================================================
[2026-08-31 07:08:50,884.884 INFO    ] Launching Daemon at Mon Aug 31 07:08:50 IST 2026
[2026-08-31 07:08:50,895.895 INFO    ] ================================================
[2026-08-31 07:08:51,475.475 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:08:51
[2026-08-31 07:08:52,073.073 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:08:52,349.349 INFO    ] Initializing speech engine...
[2026-08-31 07:08:52,356.356 INFO    ] 2026-08-31 07:08:52
[2026-08-31 07:08:52,615.615 INFO    ] 2026-08-31 07:08:52
[2026-08-31 07:08:52,645.645 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:08:52,890.890 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:08:52,899.899 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:08:53,120.120 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:08:53,158.158 INFO    ] time= 31/08/2026 07:08:53
[2026-08-31 07:08:53,164.164 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:08:53,182.182 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:08:53,309.309 INFO    ] No existing commands found in stream
[2026-08-31 07:08:58,323.323 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:08:58,326.326 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-08-31 07:08:59,192.192 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 07:08:59,195.195 INFO    ] Checking for system updates...
[2026-08-31 07:08:59,231.231 INFO    ] 200
[2026-08-31 07:08:59,233.233 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:08:59,286.286 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:08:59,289.289 INFO    ] No update needed
[2026-08-31 07:08:59,291.291 INFO    ] Checking for camera pi updates...
[2026-08-31 07:08:59,329.329 INFO    ] 200
[2026-08-31 07:08:59,331.331 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:08:59,372.372 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:08:59,441.441 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:08:59,443.443 INFO    ] No camera update needed
[2026-08-31 07:08:59,446.446 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:08:59,448.448 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:08:59,454.454 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:08:59,459.459 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:09:01,506.506 INFO    ] ================================================
[2026-08-31 07:09:01,530.530 INFO    ] Launching Daemon at Mon Aug 31 07:09:01 IST 2026
[2026-08-31 07:09:01,544.544 INFO    ] ================================================
[2026-08-31 07:09:02,283.283 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:09:02
[2026-08-31 07:09:02,967.967 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:09:03,239.239 INFO    ] Initializing speech engine...
[2026-08-31 07:09:03,245.245 INFO    ] 2026-08-31 07:09:03
[2026-08-31 07:09:03,491.491 INFO    ] 2026-08-31 07:09:03
[2026-08-31 07:09:03,553.553 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:09:03,777.777 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:09:03,786.786 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:09:03,921.921 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:09:03,965.965 INFO    ] time= 31/08/2026 07:09:03
[2026-08-31 07:09:04,009.009 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:09:04,052.052 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:09:04,175.175 INFO    ] No existing commands found in stream
[2026-08-31 07:09:09,200.200 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:09:09,203.203 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-08-31 07:09:12,346.346 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 07:09:12,349.349 INFO    ] Checking for system updates...
[2026-08-31 07:09:12,385.385 INFO    ] 200
[2026-08-31 07:09:12,387.387 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:09:12,441.441 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:09:12,443.443 INFO    ] No update needed
[2026-08-31 07:09:12,446.446 INFO    ] Checking for camera pi updates...
[2026-08-31 07:09:12,480.480 INFO    ] 200
[2026-08-31 07:09:12,482.482 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:09:12,523.523 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:09:12,701.701 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:09:12,704.704 INFO    ] No camera update needed
[2026-08-31 07:09:12,706.706 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:09:12,708.708 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:09:12,714.714 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:09:12,719.719 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:09:14,762.762 INFO    ] ================================================
[2026-08-31 07:09:14,777.777 INFO    ] Launching Daemon at Mon Aug 31 07:09:14 IST 2026
[2026-08-31 07:09:14,788.788 INFO    ] ================================================
[2026-08-31 07:09:15,456.456 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:09:15
[2026-08-31 07:09:16,144.144 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:09:16,455.455 INFO    ] Initializing speech engine...
[2026-08-31 07:09:16,467.467 INFO    ] 2026-08-31 07:09:16
[2026-08-31 07:09:16,754.754 INFO    ] 2026-08-31 07:09:16
[2026-08-31 07:09:16,868.868 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:09:17,084.084 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:09:17,093.093 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:09:17,297.297 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:09:17,314.314 INFO    ] time= 31/08/2026 07:09:17
[2026-08-31 07:09:17,334.334 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:09:17,354.354 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:09:17,461.461 INFO    ] No existing commands found in stream
[2026-08-31 07:09:22,487.487 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:09:22,490.490 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-08-31 07:09:24,716.716 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 07:09:24,719.719 INFO    ] Checking for system updates...
[2026-08-31 07:09:24,761.761 INFO    ] 200
[2026-08-31 07:09:24,764.764 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:09:24,827.827 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:09:24,831.831 INFO    ] No update needed
[2026-08-31 07:09:24,834.834 INFO    ] Checking for camera pi updates...
[2026-08-31 07:09:24,873.873 INFO    ] 200
[2026-08-31 07:09:24,876.876 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:09:24,918.918 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:09:24,983.983 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:09:24,986.986 INFO    ] No camera update needed
[2026-08-31 07:09:24,988.988 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:09:24,991.991 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:09:24,998.998 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:09:25,004.004 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:09:27,044.044 INFO    ] ================================================
[2026-08-31 07:09:27,060.060 INFO    ] Launching Daemon at Mon Aug 31 07:09:27 IST 2026
[2026-08-31 07:09:27,071.071 INFO    ] ================================================
[2026-08-31 07:09:27,743.743 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:09:27
[2026-08-31 07:09:28,363.363 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:09:28,630.630 INFO    ] Initializing speech engine...
[2026-08-31 07:09:28,641.641 INFO    ] 2026-08-31 07:09:28
[2026-08-31 07:09:28,884.884 INFO    ] 2026-08-31 07:09:28
[2026-08-31 07:09:28,919.919 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:09:29,170.170 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:09:29,180.180 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:09:29,389.389 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:09:29,438.438 INFO    ] time= 31/08/2026 07:09:29
[2026-08-31 07:09:29,444.444 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:09:29,461.461 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:09:29,588.588 INFO    ] No existing commands found in stream
[2026-08-31 07:09:34,603.603 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:09:34,606.606 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-08-31 07:09:35,761.761 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 07:09:35,764.764 INFO    ] Checking for system updates...
[2026-08-31 07:09:35,799.799 INFO    ] 200
[2026-08-31 07:09:35,802.802 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:09:35,862.862 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:09:35,865.865 INFO    ] No update needed
[2026-08-31 07:09:35,867.867 INFO    ] Checking for camera pi updates...
[2026-08-31 07:09:35,901.901 INFO    ] 200
[2026-08-31 07:09:35,903.903 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:09:35,950.950 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:09:36,035.035 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:09:36,038.038 INFO    ] No camera update needed
[2026-08-31 07:09:36,040.040 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:09:36,043.043 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:09:36,048.048 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:09:36,053.053 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:09:38,094.094 INFO    ] ================================================
[2026-08-31 07:09:38,110.110 INFO    ] Launching Daemon at Mon Aug 31 07:09:38 IST 2026
[2026-08-31 07:09:38,121.121 INFO    ] ================================================
[2026-08-31 07:09:38,686.686 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:09:38
[2026-08-31 07:09:39,272.272 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:09:39,526.526 INFO    ] Initializing speech engine...
[2026-08-31 07:09:39,533.533 INFO    ] 2026-08-31 07:09:39
[2026-08-31 07:09:39,834.834 INFO    ] 2026-08-31 07:09:39
[2026-08-31 07:09:39,871.871 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:09:40,074.074 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:09:40,090.090 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:09:40,217.217 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:09:40,224.224 INFO    ] time= 31/08/2026 07:09:40
[2026-08-31 07:09:40,228.228 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:09:40,247.247 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:09:40,351.351 INFO    ] No existing commands found in stream
[2026-08-31 07:09:45,362.362 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:09:45,365.365 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-08-31 07:09:47,764.764 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 07:09:47,766.766 INFO    ] Checking for system updates...
[2026-08-31 07:09:47,806.806 INFO    ] 200
[2026-08-31 07:09:47,809.809 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:09:47,863.863 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:09:47,865.865 INFO    ] No update needed
[2026-08-31 07:09:47,867.867 INFO    ] Checking for camera pi updates...
[2026-08-31 07:09:47,901.901 INFO    ] 200
[2026-08-31 07:09:47,904.904 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:09:47,945.945 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:09:48,023.023 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:09:48,025.025 INFO    ] No camera update needed
[2026-08-31 07:09:48,028.028 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:09:48,030.030 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:09:48,035.035 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:09:48,040.040 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:09:50,083.083 INFO    ] ================================================
[2026-08-31 07:09:50,099.099 INFO    ] Launching Daemon at Mon Aug 31 07:09:50 IST 2026
[2026-08-31 07:09:50,110.110 INFO    ] ================================================
[2026-08-31 07:09:50,778.778 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:09:50
[2026-08-31 07:09:51,466.466 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:09:51,774.774 INFO    ] Initializing speech engine...
[2026-08-31 07:09:51,786.786 INFO    ] 2026-08-31 07:09:51
[2026-08-31 07:09:52,059.059 INFO    ] 2026-08-31 07:09:52
[2026-08-31 07:09:52,115.115 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:09:52,399.399 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:09:52,406.406 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:09:52,600.600 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:09:52,617.617 INFO    ] time= 31/08/2026 07:09:52
[2026-08-31 07:09:52,629.629 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:09:52,655.655 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:09:52,780.780 INFO    ] No existing commands found in stream
[2026-08-31 07:09:57,817.817 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:09:57,820.820 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-08-31 07:10:00,273.273 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 07:10:00,276.276 INFO    ] Checking for system updates...
[2026-08-31 07:10:00,313.313 INFO    ] 200
[2026-08-31 07:10:00,316.316 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:10:00,369.369 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:10:00,372.372 INFO    ] No update needed
[2026-08-31 07:10:00,374.374 INFO    ] Checking for camera pi updates...
[2026-08-31 07:10:00,408.408 INFO    ] 200
[2026-08-31 07:10:00,410.410 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:10:00,451.451 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:10:00,528.528 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:10:00,530.530 INFO    ] No camera update needed
[2026-08-31 07:10:00,532.532 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:10:00,535.535 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:10:00,540.540 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:10:00,545.545 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:10:02,604.604 INFO    ] ================================================
[2026-08-31 07:10:02,627.627 INFO    ] Launching Daemon at Mon Aug 31 07:10:02 IST 2026
[2026-08-31 07:10:02,644.644 INFO    ] ================================================
[2026-08-31 07:10:03,324.324 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:10:03
[2026-08-31 07:10:03,929.929 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:10:04,203.203 INFO    ] Initializing speech engine...
[2026-08-31 07:10:04,214.214 INFO    ] 2026-08-31 07:10:04
[2026-08-31 07:10:04,475.475 INFO    ] 2026-08-31 07:10:04
[2026-08-31 07:10:04,505.505 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:10:04,750.750 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:10:04,760.760 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:10:04,892.892 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:10:04,934.934 INFO    ] time= 31/08/2026 07:10:04
[2026-08-31 07:10:04,999.999 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:10:05,028.028 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:10:05,149.149 INFO    ] No existing commands found in stream
[2026-08-31 07:10:10,182.182 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:10:10,184.184 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-08-31 07:10:13,119.119 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 07:10:13,121.121 INFO    ] Checking for system updates...
[2026-08-31 07:10:13,162.162 INFO    ] 200
[2026-08-31 07:10:13,164.164 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:10:13,232.232 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:10:13,235.235 INFO    ] No update needed
[2026-08-31 07:10:13,237.237 INFO    ] Checking for camera pi updates...
[2026-08-31 07:10:13,276.276 INFO    ] 200
[2026-08-31 07:10:13,278.278 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:10:13,320.320 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:10:13,403.403 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:10:13,405.405 INFO    ] No camera update needed
[2026-08-31 07:10:13,408.408 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:10:13,410.410 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:10:13,416.416 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:10:13,421.421 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:10:15,464.464 INFO    ] ================================================
[2026-08-31 07:10:15,479.479 INFO    ] Launching Daemon at Mon Aug 31 07:10:15 IST 2026
[2026-08-31 07:10:15,490.490 INFO    ] ================================================
[2026-08-31 07:10:16,160.160 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:10:16
[2026-08-31 07:10:16,853.853 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:10:17,171.171 INFO    ] Initializing speech engine...
[2026-08-31 07:10:17,179.179 INFO    ] 2026-08-31 07:10:17
[2026-08-31 07:10:17,485.485 INFO    ] 2026-08-31 07:10:17
[2026-08-31 07:10:17,575.575 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:10:17,787.787 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:10:17,792.792 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:10:17,979.979 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:10:17,991.991 INFO    ] time= 31/08/2026 07:10:17
[2026-08-31 07:10:18,009.009 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:10:18,031.031 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:10:18,144.144 INFO    ] No existing commands found in stream
[2026-08-31 07:10:23,164.164 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:10:23,167.167 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-08-31 07:10:24,605.605 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 07:10:24,607.607 INFO    ] Checking for system updates...
[2026-08-31 07:10:24,643.643 INFO    ] 200
[2026-08-31 07:10:24,646.646 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:10:24,699.699 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:10:24,701.701 INFO    ] No update needed
[2026-08-31 07:10:24,704.704 INFO    ] Checking for camera pi updates...
[2026-08-31 07:10:24,737.737 INFO    ] 200
[2026-08-31 07:10:24,740.740 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:10:24,780.780 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:10:24,870.870 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:10:24,873.873 INFO    ] No camera update needed
[2026-08-31 07:10:24,875.875 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:10:24,878.878 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:10:24,883.883 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:10:24,888.888 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:10:26,937.937 INFO    ] ================================================
[2026-08-31 07:10:26,952.952 INFO    ] Launching Daemon at Mon Aug 31 07:10:26 IST 2026
[2026-08-31 07:10:26,963.963 INFO    ] ================================================
[2026-08-31 07:10:27,629.629 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:10:27
[2026-08-31 07:10:28,310.310 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:10:28,583.583 INFO    ] Initializing speech engine...
[2026-08-31 07:10:28,593.593 INFO    ] 2026-08-31 07:10:28
[2026-08-31 07:10:28,842.842 INFO    ] 2026-08-31 07:10:28
[2026-08-31 07:10:28,877.877 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:10:29,084.084 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:10:29,132.132 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:10:29,368.368 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:10:29,398.398 INFO    ] time= 31/08/2026 07:10:29
[2026-08-31 07:10:29,413.413 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:10:29,423.423 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:10:29,549.549 INFO    ] No existing commands found in stream
[2026-08-31 07:10:34,562.562 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:10:34,565.565 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-08-31 07:10:38,875.875 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 07:10:38,877.877 INFO    ] Checking for system updates...
[2026-08-31 07:10:38,913.913 INFO    ] 200
[2026-08-31 07:10:38,916.916 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:10:38,970.970 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:10:38,973.973 INFO    ] No update needed
[2026-08-31 07:10:38,975.975 INFO    ] Checking for camera pi updates...
[2026-08-31 07:10:39,009.009 INFO    ] 200
[2026-08-31 07:10:39,011.011 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:10:39,052.052 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:10:39,142.142 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:10:39,144.144 INFO    ] No camera update needed
[2026-08-31 07:10:39,146.146 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:10:39,149.149 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:10:39,154.154 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:10:39,159.159 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:10:41,202.202 INFO    ] ================================================
[2026-08-31 07:10:41,217.217 INFO    ] Launching Daemon at Mon Aug 31 07:10:41 IST 2026
[2026-08-31 07:10:41,229.229 INFO    ] ================================================
[2026-08-31 07:10:41,805.805 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:10:41
[2026-08-31 07:10:42,393.393 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:10:42,653.653 INFO    ] Initializing speech engine...
[2026-08-31 07:10:42,661.661 INFO    ] 2026-08-31 07:10:42
[2026-08-31 07:10:42,961.961 INFO    ] 2026-08-31 07:10:42
[2026-08-31 07:10:42,999.999 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:10:43,205.205 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:10:43,221.221 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:10:43,388.388 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:10:43,394.394 INFO    ] time= 31/08/2026 07:10:43
[2026-08-31 07:10:43,400.400 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:10:43,446.446 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:10:43,595.595 INFO    ] No existing commands found in stream
[2026-08-31 07:10:48,605.605 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:10:48,608.608 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-08-31 07:10:51,823.823 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 07:10:51,825.825 INFO    ] Checking for system updates...
[2026-08-31 07:10:51,866.866 INFO    ] 200
[2026-08-31 07:10:51,869.869 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:10:51,922.922 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:10:51,925.925 INFO    ] No update needed
[2026-08-31 07:10:51,927.927 INFO    ] Checking for camera pi updates...
[2026-08-31 07:10:51,961.961 INFO    ] 200
[2026-08-31 07:10:51,963.963 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:10:52,005.005 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:10:52,085.085 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:10:52,088.088 INFO    ] No camera update needed
[2026-08-31 07:10:52,091.091 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:10:52,093.093 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:10:52,098.098 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:10:52,104.104 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:10:54,145.145 INFO    ] ================================================
[2026-08-31 07:10:54,161.161 INFO    ] Launching Daemon at Mon Aug 31 07:10:54 IST 2026
[2026-08-31 07:10:54,171.171 INFO    ] ================================================
[2026-08-31 07:10:54,737.737 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:10:54
[2026-08-31 07:10:55,320.320 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:10:55,570.570 INFO    ] Initializing speech engine...
[2026-08-31 07:10:55,593.593 INFO    ] 2026-08-31 07:10:55
[2026-08-31 07:10:55,849.849 INFO    ] 2026-08-31 07:10:55
[2026-08-31 07:10:55,883.883 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:10:56,059.059 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:10:56,071.071 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:10:56,280.280 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:10:56,287.287 INFO    ] time= 31/08/2026 07:10:56
[2026-08-31 07:10:56,357.357 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:10:56,414.414 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:10:56,468.468 INFO    ] No existing commands found in stream
[2026-08-31 07:11:01,479.479 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:11:01,482.482 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-08-31 07:11:05,383.383 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 07:11:05,386.386 INFO    ] Checking for system updates...
[2026-08-31 07:11:05,423.423 INFO    ] 200
[2026-08-31 07:11:05,425.425 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:11:05,478.478 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:11:05,481.481 INFO    ] No update needed
[2026-08-31 07:11:05,483.483 INFO    ] Checking for camera pi updates...
[2026-08-31 07:11:05,520.520 INFO    ] 200
[2026-08-31 07:11:05,523.523 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:11:05,567.567 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:11:05,654.654 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:11:05,657.657 INFO    ] No camera update needed
[2026-08-31 07:11:05,659.659 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:11:05,662.662 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:11:05,667.667 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:11:05,672.672 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:11:07,713.713 INFO    ] ================================================
[2026-08-31 07:11:07,728.728 INFO    ] Launching Daemon at Mon Aug 31 07:11:07 IST 2026
[2026-08-31 07:11:07,739.739 INFO    ] ================================================
[2026-08-31 07:11:08,313.313 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:11:08
[2026-08-31 07:11:08,897.897 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:11:09,157.157 INFO    ] Initializing speech engine...
[2026-08-31 07:11:09,171.171 INFO    ] 2026-08-31 07:11:09
[2026-08-31 07:11:09,459.459 INFO    ] 2026-08-31 07:11:09
[2026-08-31 07:11:09,494.494 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:11:09,692.692 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:11:09,707.707 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:11:09,871.871 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:11:09,880.880 INFO    ] time= 31/08/2026 07:11:09
[2026-08-31 07:11:09,887.887 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:11:09,919.919 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:11:10,075.075 INFO    ] No existing commands found in stream
[2026-08-31 07:11:15,111.111 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:11:15,114.114 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-08-31 07:11:18,246.246 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 07:11:18,249.249 INFO    ] Checking for system updates...
[2026-08-31 07:11:18,284.284 INFO    ] 200
[2026-08-31 07:11:18,287.287 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:11:18,349.349 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:11:18,352.352 INFO    ] No update needed
[2026-08-31 07:11:18,355.355 INFO    ] Checking for camera pi updates...
[2026-08-31 07:11:18,388.388 INFO    ] 200
[2026-08-31 07:11:18,390.390 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:11:18,439.439 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:11:18,628.628 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:11:18,630.630 INFO    ] No camera update needed
[2026-08-31 07:11:18,633.633 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:11:18,635.635 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:11:18,640.640 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:11:18,652.652 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:11:20,692.692 INFO    ] ================================================
[2026-08-31 07:11:20,707.707 INFO    ] Launching Daemon at Mon Aug 31 07:11:20 IST 2026
[2026-08-31 07:11:20,718.718 INFO    ] ================================================
[2026-08-31 07:11:21,291.291 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:11:21
[2026-08-31 07:11:21,881.881 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:11:22,133.133 INFO    ] Initializing speech engine...
[2026-08-31 07:11:22,140.140 INFO    ] 2026-08-31 07:11:22
[2026-08-31 07:11:22,445.445 INFO    ] 2026-08-31 07:11:22
[2026-08-31 07:11:22,483.483 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:11:22,682.682 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:11:22,689.689 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:11:22,843.843 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:11:22,868.868 INFO    ] time= 31/08/2026 07:11:22
[2026-08-31 07:11:22,875.875 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:11:22,881.881 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:11:22,958.958 INFO    ] No existing commands found in stream
[2026-08-31 07:11:27,983.983 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:11:27,986.986 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-08-31 07:11:30,044.044 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 07:11:30,047.047 INFO    ] Checking for system updates...
[2026-08-31 07:11:30,084.084 INFO    ] 200
[2026-08-31 07:11:30,087.087 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:11:30,141.141 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:11:30,144.144 INFO    ] No update needed
[2026-08-31 07:11:30,146.146 INFO    ] Checking for camera pi updates...
[2026-08-31 07:11:30,181.181 INFO    ] 200
[2026-08-31 07:11:30,184.184 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:11:30,225.225 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:11:30,305.305 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:11:30,308.308 INFO    ] No camera update needed
[2026-08-31 07:11:30,311.311 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:11:30,313.313 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:11:30,320.320 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:11:30,325.325 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:11:32,370.370 INFO    ] ================================================
[2026-08-31 07:11:32,386.386 INFO    ] Launching Daemon at Mon Aug 31 07:11:32 IST 2026
[2026-08-31 07:11:32,397.397 INFO    ] ================================================
[2026-08-31 07:11:33,028.028 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:11:33
[2026-08-31 07:11:33,636.636 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:11:33,913.913 INFO    ] Initializing speech engine...
[2026-08-31 07:11:33,920.920 INFO    ] 2026-08-31 07:11:33
[2026-08-31 07:11:34,168.168 INFO    ] 2026-08-31 07:11:34
[2026-08-31 07:11:34,205.205 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:11:34,457.457 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:11:34,467.467 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:11:34,605.605 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:11:34,671.671 INFO    ] time= 31/08/2026 07:11:34
[2026-08-31 07:11:34,721.721 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:11:34,734.734 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:11:34,868.868 INFO    ] No existing commands found in stream
[2026-08-31 07:11:39,889.889 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:11:39,892.892 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-08-31 07:11:43,801.801 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 07:11:43,804.804 INFO    ] Checking for system updates...
[2026-08-31 07:11:43,843.843 INFO    ] 200
[2026-08-31 07:11:43,846.846 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:11:43,900.900 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:11:43,902.902 INFO    ] No update needed
[2026-08-31 07:11:43,905.905 INFO    ] Checking for camera pi updates...
[2026-08-31 07:11:43,943.943 INFO    ] 200
[2026-08-31 07:11:43,945.945 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:11:43,990.990 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:11:44,070.070 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:11:44,073.073 INFO    ] No camera update needed
[2026-08-31 07:11:44,075.075 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:11:44,078.078 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:11:44,083.083 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:11:44,088.088 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:11:46,130.130 INFO    ] ================================================
[2026-08-31 07:11:46,145.145 INFO    ] Launching Daemon at Mon Aug 31 07:11:46 IST 2026
[2026-08-31 07:11:46,155.155 INFO    ] ================================================
[2026-08-31 07:11:46,741.741 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:11:46
[2026-08-31 07:11:47,324.324 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:11:47,599.599 INFO    ] Initializing speech engine...
[2026-08-31 07:11:47,606.606 INFO    ] 2026-08-31 07:11:47
[2026-08-31 07:11:47,868.868 INFO    ] 2026-08-31 07:11:47
[2026-08-31 07:11:47,898.898 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:11:48,150.150 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:11:48,154.154 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:11:48,289.289 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:11:48,333.333 INFO    ] time= 31/08/2026 07:11:48
[2026-08-31 07:11:48,388.388 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:11:48,424.424 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:11:48,569.569 INFO    ] No existing commands found in stream
[2026-08-31 07:11:53,582.582 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:11:53,585.585 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-08-31 07:11:56,314.314 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 07:11:56,316.316 INFO    ] Checking for system updates...
[2026-08-31 07:11:56,356.356 INFO    ] 200
[2026-08-31 07:11:56,359.359 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:11:56,411.411 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:11:56,414.414 INFO    ] No update needed
[2026-08-31 07:11:56,416.416 INFO    ] Checking for camera pi updates...
[2026-08-31 07:11:56,454.454 INFO    ] 200
[2026-08-31 07:11:56,457.457 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:11:56,498.498 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:11:56,580.580 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:11:56,583.583 INFO    ] No camera update needed
[2026-08-31 07:11:56,585.585 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:11:56,588.588 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:11:56,594.594 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:11:56,600.600 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:11:58,642.642 INFO    ] ================================================
[2026-08-31 07:11:58,658.658 INFO    ] Launching Daemon at Mon Aug 31 07:11:58 IST 2026
[2026-08-31 07:11:58,674.674 INFO    ] ================================================
[2026-08-31 07:11:59,336.336 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:11:59
[2026-08-31 07:12:00,019.019 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:12:00,327.327 INFO    ] Initializing speech engine...
[2026-08-31 07:12:00,335.335 INFO    ] 2026-08-31 07:12:00
[2026-08-31 07:12:00,618.618 INFO    ] 2026-08-31 07:12:00
[2026-08-31 07:12:00,675.675 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:12:00,965.965 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:12:00,974.974 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:12:01,175.175 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:12:01,194.194 INFO    ] time= 31/08/2026 07:12:01
[2026-08-31 07:12:01,204.204 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:12:01,233.233 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:12:01,337.337 INFO    ] No existing commands found in stream
[2026-08-31 07:12:06,349.349 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:12:06,353.353 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-08-31 07:12:09,186.186 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 07:12:09,189.189 INFO    ] Checking for system updates...
[2026-08-31 07:12:09,225.225 INFO    ] 200
[2026-08-31 07:12:09,228.228 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:12:09,281.281 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:12:09,283.283 INFO    ] No update needed
[2026-08-31 07:12:09,286.286 INFO    ] Checking for camera pi updates...
[2026-08-31 07:12:09,320.320 INFO    ] 200
[2026-08-31 07:12:09,323.323 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:12:09,369.369 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:12:09,449.449 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:12:09,452.452 INFO    ] No camera update needed
[2026-08-31 07:12:09,455.455 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:12:09,457.457 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:12:09,463.463 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:12:09,469.469 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:12:11,510.510 INFO    ] ================================================
[2026-08-31 07:12:11,525.525 INFO    ] Launching Daemon at Mon Aug 31 07:12:11 IST 2026
[2026-08-31 07:12:11,535.535 INFO    ] ================================================
[2026-08-31 07:12:12,104.104 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:12:12
[2026-08-31 07:12:12,689.689 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:12:12,944.944 INFO    ] Initializing speech engine...
[2026-08-31 07:12:12,950.950 INFO    ] 2026-08-31 07:12:12
[2026-08-31 07:12:13,241.241 INFO    ] 2026-08-31 07:12:13
[2026-08-31 07:12:13,278.278 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:12:13,472.472 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:12:13,486.486 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:12:13,645.645 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:12:13,654.654 INFO    ] time= 31/08/2026 07:12:13
[2026-08-31 07:12:13,662.662 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:12:13,684.684 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:12:13,810.810 INFO    ] No existing commands found in stream
[2026-08-31 07:12:18,830.830 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:12:18,833.833 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-08-31 07:12:20,006.006 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 07:12:20,008.008 INFO    ] Checking for system updates...
[2026-08-31 07:12:20,044.044 INFO    ] 200
[2026-08-31 07:12:20,046.046 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:12:20,099.099 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:12:20,102.102 INFO    ] No update needed
[2026-08-31 07:12:20,104.104 INFO    ] Checking for camera pi updates...
[2026-08-31 07:12:20,137.137 INFO    ] 200
[2026-08-31 07:12:20,139.139 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:12:20,184.184 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:12:20,267.267 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:12:20,270.270 INFO    ] No camera update needed
[2026-08-31 07:12:20,272.272 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:12:20,274.274 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:12:20,279.279 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:12:20,284.284 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:12:22,324.324 INFO    ] ================================================
[2026-08-31 07:12:22,339.339 INFO    ] Launching Daemon at Mon Aug 31 07:12:22 IST 2026
[2026-08-31 07:12:22,349.349 INFO    ] ================================================
[2026-08-31 07:12:22,928.928 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:12:22
[2026-08-31 07:12:23,515.515 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:12:23,786.786 INFO    ] Initializing speech engine...
[2026-08-31 07:12:23,807.807 INFO    ] 2026-08-31 07:12:23
[2026-08-31 07:12:24,076.076 INFO    ] 2026-08-31 07:12:24
[2026-08-31 07:12:24,112.112 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:12:24,378.378 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:12:24,402.402 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:12:24,558.558 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:12:24,566.566 INFO    ] time= 31/08/2026 07:12:24
[2026-08-31 07:12:24,636.636 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:12:24,690.690 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:12:24,778.778 INFO    ] No existing commands found in stream
[2026-08-31 07:12:29,793.793 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:12:29,796.796 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-08-31 07:12:32,523.523 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 07:12:32,526.526 INFO    ] Checking for system updates...
[2026-08-31 07:12:32,565.565 INFO    ] 200
[2026-08-31 07:12:32,568.568 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:12:32,632.632 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:12:32,634.634 INFO    ] No update needed
[2026-08-31 07:12:32,637.637 INFO    ] Checking for camera pi updates...
[2026-08-31 07:12:32,672.672 INFO    ] 200
[2026-08-31 07:12:32,675.675 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:12:32,723.723 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:12:32,775.775 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:12:32,778.778 INFO    ] No camera update needed
[2026-08-31 07:12:32,781.781 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:12:32,784.784 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:12:32,791.791 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:12:32,797.797 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:12:34,843.843 INFO    ] ================================================
[2026-08-31 07:12:34,858.858 INFO    ] Launching Daemon at Mon Aug 31 07:12:34 IST 2026
[2026-08-31 07:12:34,868.868 INFO    ] ================================================
[2026-08-31 07:12:35,438.438 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:12:35
[2026-08-31 07:12:36,026.026 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:12:36,299.299 INFO    ] Initializing speech engine...
[2026-08-31 07:12:36,309.309 INFO    ] 2026-08-31 07:12:36
[2026-08-31 07:12:36,556.556 INFO    ] 2026-08-31 07:12:36
[2026-08-31 07:12:36,590.590 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:12:36,844.844 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:12:36,852.852 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:12:37,064.064 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:12:37,110.110 INFO    ] time= 31/08/2026 07:12:37
[2026-08-31 07:12:37,116.116 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:12:37,134.134 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:12:37,232.232 INFO    ] No existing commands found in stream
[2026-08-31 07:12:42,244.244 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:12:42,247.247 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-08-31 07:12:45,686.686 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 07:12:45,688.688 INFO    ] Checking for system updates...
[2026-08-31 07:12:45,723.723 INFO    ] 200
[2026-08-31 07:12:45,726.726 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:12:45,777.777 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:12:45,779.779 INFO    ] No update needed
[2026-08-31 07:12:45,782.782 INFO    ] Checking for camera pi updates...
[2026-08-31 07:12:45,815.815 INFO    ] 200
[2026-08-31 07:12:45,817.817 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:12:45,857.857 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:12:45,931.931 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:12:45,933.933 INFO    ] No camera update needed
[2026-08-31 07:12:45,936.936 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:12:45,938.938 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:12:45,943.943 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:12:45,948.948 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:12:47,990.990 INFO    ] ================================================
[2026-08-31 07:12:48,004.004 INFO    ] Launching Daemon at Mon Aug 31 07:12:47 IST 2026
[2026-08-31 07:12:48,015.015 INFO    ] ================================================
[2026-08-31 07:12:48,596.596 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:12:48
[2026-08-31 07:12:49,193.193 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:12:49,471.471 INFO    ] Initializing speech engine...
[2026-08-31 07:12:49,478.478 INFO    ] 2026-08-31 07:12:49
[2026-08-31 07:12:49,739.739 INFO    ] 2026-08-31 07:12:49
[2026-08-31 07:12:49,795.795 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:12:50,017.017 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:12:50,025.025 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:12:50,161.161 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:12:50,216.216 INFO    ] time= 31/08/2026 07:12:50
[2026-08-31 07:12:50,271.271 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:12:50,293.293 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:12:50,437.437 INFO    ] No existing commands found in stream
[2026-08-31 07:12:55,452.452 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:12:55,455.455 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-08-31 07:12:56,595.595 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 07:12:56,598.598 INFO    ] Checking for system updates...
[2026-08-31 07:12:56,637.637 INFO    ] 200
[2026-08-31 07:12:56,640.640 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:12:56,693.693 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:12:56,696.696 INFO    ] No update needed
[2026-08-31 07:12:56,698.698 INFO    ] Checking for camera pi updates...
[2026-08-31 07:12:56,732.732 INFO    ] 200
[2026-08-31 07:12:56,735.735 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:12:56,775.775 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:12:56,879.879 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:12:56,881.881 INFO    ] No camera update needed
[2026-08-31 07:12:56,883.883 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:12:56,886.886 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:12:56,891.891 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:12:56,896.896 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:12:58,937.937 INFO    ] ================================================
[2026-08-31 07:12:58,952.952 INFO    ] Launching Daemon at Mon Aug 31 07:12:58 IST 2026
[2026-08-31 07:12:58,963.963 INFO    ] ================================================
[2026-08-31 07:12:59,545.545 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:12:59
[2026-08-31 07:13:00,149.149 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:13:00,434.434 INFO    ] Initializing speech engine...
[2026-08-31 07:13:00,442.442 INFO    ] 2026-08-31 07:13:00
[2026-08-31 07:13:00,711.711 INFO    ] 2026-08-31 07:13:00
[2026-08-31 07:13:00,746.746 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:13:00,944.944 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:13:00,955.955 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:13:01,116.116 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:13:01,122.122 INFO    ] time= 31/08/2026 07:13:01
[2026-08-31 07:13:01,128.128 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:13:01,135.135 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:13:01,251.251 INFO    ] No existing commands found in stream
[2026-08-31 07:13:06,259.259 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:13:06,262.262 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-08-31 07:13:10,556.556 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 07:13:10,558.558 INFO    ] Checking for system updates...
[2026-08-31 07:13:10,593.593 INFO    ] 200
[2026-08-31 07:13:10,596.596 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:13:10,647.647 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:13:10,650.650 INFO    ] No update needed
[2026-08-31 07:13:10,652.652 INFO    ] Checking for camera pi updates...
[2026-08-31 07:13:10,689.689 INFO    ] 200
[2026-08-31 07:13:10,691.691 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:13:10,736.736 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:13:10,817.817 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:13:10,819.819 INFO    ] No camera update needed
[2026-08-31 07:13:10,821.821 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:13:10,824.824 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:13:10,829.829 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:13:10,834.834 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:13:12,876.876 INFO    ] ================================================
[2026-08-31 07:13:12,891.891 INFO    ] Launching Daemon at Mon Aug 31 07:13:12 IST 2026
[2026-08-31 07:13:12,902.902 INFO    ] ================================================
[2026-08-31 07:13:13,483.483 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:13:13
[2026-08-31 07:13:14,077.077 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:13:14,350.350 INFO    ] Initializing speech engine...
[2026-08-31 07:13:14,361.361 INFO    ] 2026-08-31 07:13:14
[2026-08-31 07:13:14,610.610 INFO    ] 2026-08-31 07:13:14
[2026-08-31 07:13:14,644.644 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:13:14,836.836 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:13:14,864.864 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:13:15,038.038 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:13:15,103.103 INFO    ] time= 31/08/2026 07:13:15
[2026-08-31 07:13:15,165.165 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:13:15,171.171 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:13:15,310.310 INFO    ] No existing commands found in stream
[2026-08-31 07:13:20,326.326 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:13:20,330.330 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-08-31 07:13:21,862.862 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 07:13:21,865.865 INFO    ] Checking for system updates...
[2026-08-31 07:13:21,901.901 INFO    ] 200
[2026-08-31 07:13:21,904.904 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:13:21,956.956 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:13:21,958.958 INFO    ] No update needed
[2026-08-31 07:13:21,961.961 INFO    ] Checking for camera pi updates...
[2026-08-31 07:13:21,998.998 INFO    ] 200
[2026-08-31 07:13:22,001.001 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:13:22,041.041 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:13:22,220.220 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:13:22,222.222 INFO    ] No camera update needed
[2026-08-31 07:13:22,225.225 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:13:22,227.227 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:13:22,232.232 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:13:22,237.237 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:13:24,281.281 INFO    ] ================================================
[2026-08-31 07:13:24,296.296 INFO    ] Launching Daemon at Mon Aug 31 07:13:24 IST 2026
[2026-08-31 07:13:24,306.306 INFO    ] ================================================
[2026-08-31 07:13:24,871.871 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:13:24
[2026-08-31 07:13:25,453.453 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:13:25,703.703 INFO    ] Initializing speech engine...
[2026-08-31 07:13:25,726.726 INFO    ] 2026-08-31 07:13:25
[2026-08-31 07:13:25,982.982 INFO    ] 2026-08-31 07:13:25
[2026-08-31 07:13:26,016.016 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:13:26,224.224 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:13:26,277.277 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:13:26,415.415 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:13:26,465.465 INFO    ] time= 31/08/2026 07:13:26
[2026-08-31 07:13:26,530.530 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:13:26,551.551 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:13:26,681.681 INFO    ] No existing commands found in stream
[2026-08-31 07:13:31,705.705 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:13:31,708.708 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-08-31 07:13:32,350.350 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 07:13:32,353.353 INFO    ] Checking for system updates...
[2026-08-31 07:13:32,398.398 INFO    ] 200
[2026-08-31 07:13:32,400.400 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:13:32,467.467 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:13:32,470.470 INFO    ] No update needed
[2026-08-31 07:13:32,472.472 INFO    ] Checking for camera pi updates...
[2026-08-31 07:13:32,505.505 INFO    ] 200
[2026-08-31 07:13:32,508.508 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:13:32,554.554 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:13:32,609.609 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:13:32,611.611 INFO    ] No camera update needed
[2026-08-31 07:13:32,614.614 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:13:32,616.616 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:13:32,621.621 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:13:32,626.626 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:13:34,669.669 INFO    ] ================================================
[2026-08-31 07:13:34,684.684 INFO    ] Launching Daemon at Mon Aug 31 07:13:34 IST 2026
[2026-08-31 07:13:34,694.694 INFO    ] ================================================
[2026-08-31 07:13:35,272.272 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:13:35
[2026-08-31 07:13:35,873.873 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:13:36,149.149 INFO    ] Initializing speech engine...
[2026-08-31 07:13:36,154.154 INFO    ] 2026-08-31 07:13:36
[2026-08-31 07:13:36,430.430 INFO    ] 2026-08-31 07:13:36
[2026-08-31 07:13:36,473.473 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:13:36,698.698 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:13:36,704.704 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:13:36,928.928 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:13:36,960.960 INFO    ] time= 31/08/2026 07:13:36
[2026-08-31 07:13:36,977.977 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:13:36,986.986 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:13:37,108.108 INFO    ] No existing commands found in stream
[2026-08-31 07:13:42,123.123 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:13:42,126.126 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-08-31 07:13:45,622.622 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 07:13:45,625.625 INFO    ] Checking for system updates...
[2026-08-31 07:13:45,664.664 INFO    ] 200
[2026-08-31 07:13:45,666.666 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:13:45,725.725 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:13:45,727.727 INFO    ] No update needed
[2026-08-31 07:13:45,729.729 INFO    ] Checking for camera pi updates...
[2026-08-31 07:13:45,763.763 INFO    ] 200
[2026-08-31 07:13:45,765.765 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:13:45,812.812 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:13:45,894.894 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:13:45,896.896 INFO    ] No camera update needed
[2026-08-31 07:13:45,899.899 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:13:45,901.901 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:13:45,906.906 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:13:45,911.911 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:13:47,954.954 INFO    ] ================================================
[2026-08-31 07:13:47,969.969 INFO    ] Launching Daemon at Mon Aug 31 07:13:47 IST 2026
[2026-08-31 07:13:47,979.979 INFO    ] ================================================
[2026-08-31 07:13:48,545.545 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:13:48
[2026-08-31 07:13:49,129.129 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:13:49,403.403 INFO    ] Initializing speech engine...
[2026-08-31 07:13:49,423.423 INFO    ] 2026-08-31 07:13:49
[2026-08-31 07:13:49,689.689 INFO    ] 2026-08-31 07:13:49
[2026-08-31 07:13:49,727.727 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:13:49,949.949 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:13:49,957.957 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:13:50,104.104 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:13:50,109.109 INFO    ] time= 31/08/2026 07:13:50
[2026-08-31 07:13:50,115.115 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:13:50,158.158 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:13:50,269.269 INFO    ] No existing commands found in stream
[2026-08-31 07:13:55,299.299 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:13:55,302.302 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-08-31 07:13:59,407.407 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 07:13:59,410.410 INFO    ] Checking for system updates...
[2026-08-31 07:13:59,444.444 INFO    ] 200
[2026-08-31 07:13:59,447.447 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:13:59,498.498 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:13:59,501.501 INFO    ] No update needed
[2026-08-31 07:13:59,503.503 INFO    ] Checking for camera pi updates...
[2026-08-31 07:13:59,536.536 INFO    ] 200
[2026-08-31 07:13:59,539.539 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:13:59,583.583 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:13:59,674.674 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:13:59,676.676 INFO    ] No camera update needed
[2026-08-31 07:13:59,679.679 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:13:59,681.681 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:13:59,686.686 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:13:59,691.691 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:14:01,733.733 INFO    ] ================================================
[2026-08-31 07:14:01,756.756 INFO    ] Launching Daemon at Mon Aug 31 07:14:01 IST 2026
[2026-08-31 07:14:01,773.773 INFO    ] ================================================
[2026-08-31 07:14:02,407.407 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:14:02
[2026-08-31 07:14:03,073.073 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:14:03,349.349 INFO    ] Initializing speech engine...
[2026-08-31 07:14:03,356.356 INFO    ] 2026-08-31 07:14:03
[2026-08-31 07:14:03,628.628 INFO    ] 2026-08-31 07:14:03
[2026-08-31 07:14:03,671.671 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:14:03,890.890 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:14:03,899.899 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:14:04,109.109 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:14:04,155.155 INFO    ] time= 31/08/2026 07:14:04
[2026-08-31 07:14:04,161.161 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:14:04,181.181 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:14:04,304.304 INFO    ] No existing commands found in stream
[2026-08-31 07:14:09,369.369 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:14:09,373.373 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-08-31 07:14:13,511.511 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 07:14:13,514.514 INFO    ] Checking for system updates...
[2026-08-31 07:14:13,552.552 INFO    ] 200
[2026-08-31 07:14:13,554.554 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:14:13,607.607 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:14:13,610.610 INFO    ] No update needed
[2026-08-31 07:14:13,613.613 INFO    ] Checking for camera pi updates...
[2026-08-31 07:14:13,647.647 INFO    ] 200
[2026-08-31 07:14:13,650.650 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:14:13,690.690 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:14:13,778.778 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:14:13,781.781 INFO    ] No camera update needed
[2026-08-31 07:14:13,783.783 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:14:13,785.785 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:14:13,791.791 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:14:13,796.796 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:14:15,836.836 INFO    ] ================================================
[2026-08-31 07:14:15,852.852 INFO    ] Launching Daemon at Mon Aug 31 07:14:15 IST 2026
[2026-08-31 07:14:15,863.863 INFO    ] ================================================
[2026-08-31 07:14:16,430.430 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:14:16
[2026-08-31 07:14:17,014.014 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:14:17,266.266 INFO    ] Initializing speech engine...
[2026-08-31 07:14:17,289.289 INFO    ] 2026-08-31 07:14:17
[2026-08-31 07:14:17,545.545 INFO    ] 2026-08-31 07:14:17
[2026-08-31 07:14:17,579.579 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:14:17,755.755 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:14:17,767.767 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:14:17,913.913 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:14:17,920.920 INFO    ] time= 31/08/2026 07:14:17
[2026-08-31 07:14:17,928.928 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:14:17,974.974 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:14:18,117.117 INFO    ] No existing commands found in stream
[2026-08-31 07:14:23,135.135 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:14:23,138.138 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-08-31 07:14:26,804.804 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 07:14:26,806.806 INFO    ] Checking for system updates...
[2026-08-31 07:14:26,845.845 INFO    ] 200
[2026-08-31 07:14:26,847.847 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:14:26,899.899 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:14:26,902.902 INFO    ] No update needed
[2026-08-31 07:14:26,904.904 INFO    ] Checking for camera pi updates...
[2026-08-31 07:14:26,941.941 INFO    ] 200
[2026-08-31 07:14:26,943.943 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:14:26,987.987 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:14:27,066.066 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:14:27,069.069 INFO    ] No camera update needed
[2026-08-31 07:14:27,071.071 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:14:27,074.074 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:14:27,079.079 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:14:27,084.084 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:14:29,125.125 INFO    ] ================================================
[2026-08-31 07:14:29,140.140 INFO    ] Launching Daemon at Mon Aug 31 07:14:29 IST 2026
[2026-08-31 07:14:29,151.151 INFO    ] ================================================
[2026-08-31 07:14:29,730.730 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:14:29
[2026-08-31 07:14:30,329.329 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:14:30,605.605 INFO    ] Initializing speech engine...
[2026-08-31 07:14:30,612.612 INFO    ] 2026-08-31 07:14:30
[2026-08-31 07:14:30,873.873 INFO    ] 2026-08-31 07:14:30
[2026-08-31 07:14:30,903.903 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:14:31,147.147 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:14:31,156.156 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:14:31,270.270 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:14:31,273.273 INFO    ] time= 31/08/2026 07:14:31
[2026-08-31 07:14:31,275.275 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:14:31,316.316 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:14:31,446.446 INFO    ] No existing commands found in stream
[2026-08-31 07:14:36,468.468 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:14:36,471.471 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-08-31 07:14:38,562.562 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 07:14:38,565.565 INFO    ] Checking for system updates...
[2026-08-31 07:14:38,600.600 INFO    ] 200
[2026-08-31 07:14:38,602.602 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:14:38,655.655 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:14:38,657.657 INFO    ] No update needed
[2026-08-31 07:14:38,660.660 INFO    ] Checking for camera pi updates...
[2026-08-31 07:14:38,696.696 INFO    ] 200
[2026-08-31 07:14:38,699.699 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:14:38,740.740 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:14:38,824.824 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:14:38,826.826 INFO    ] No camera update needed
[2026-08-31 07:14:38,829.829 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:14:38,831.831 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:14:38,837.837 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:14:38,842.842 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:14:40,883.883 INFO    ] ================================================
[2026-08-31 07:14:40,898.898 INFO    ] Launching Daemon at Mon Aug 31 07:14:40 IST 2026
[2026-08-31 07:14:40,908.908 INFO    ] ================================================
[2026-08-31 07:14:41,518.518 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:14:41
[2026-08-31 07:14:42,165.165 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:14:42,464.464 INFO    ] Initializing speech engine...
[2026-08-31 07:14:42,478.478 INFO    ] 2026-08-31 07:14:42
[2026-08-31 07:14:42,756.756 INFO    ] 2026-08-31 07:14:42
[2026-08-31 07:14:42,801.801 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:14:43,088.088 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:14:43,096.096 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:14:43,296.296 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:14:43,303.303 INFO    ] time= 31/08/2026 07:14:43
[2026-08-31 07:14:43,325.325 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:14:43,353.353 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:14:43,460.460 INFO    ] No existing commands found in stream
[2026-08-31 07:14:48,477.477 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:14:48,481.481 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-08-31 07:14:52,632.632 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 07:14:52,635.635 INFO    ] Checking for system updates...
[2026-08-31 07:14:52,675.675 INFO    ] 200
[2026-08-31 07:14:52,677.677 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:14:52,736.736 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:14:52,739.739 INFO    ] No update needed
[2026-08-31 07:14:52,742.742 INFO    ] Checking for camera pi updates...
[2026-08-31 07:14:52,781.781 INFO    ] 200
[2026-08-31 07:14:52,784.784 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:14:52,824.824 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:14:52,906.906 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:14:52,909.909 INFO    ] No camera update needed
[2026-08-31 07:14:52,911.911 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:14:52,914.914 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:14:52,920.920 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:14:52,926.926 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:14:54,969.969 INFO    ] ================================================
[2026-08-31 07:14:54,983.983 INFO    ] Launching Daemon at Mon Aug 31 07:14:54 IST 2026
[2026-08-31 07:14:54,994.994 INFO    ] ================================================
[2026-08-31 07:14:55,623.623 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:14:55
[2026-08-31 07:14:56,272.272 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:14:56,558.558 INFO    ] Initializing speech engine...
[2026-08-31 07:14:56,567.567 INFO    ] 2026-08-31 07:14:56
[2026-08-31 07:14:56,825.825 INFO    ] 2026-08-31 07:14:56
[2026-08-31 07:14:56,860.860 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:14:57,075.075 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:14:57,083.083 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:14:57,296.296 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:14:57,304.304 INFO    ] time= 31/08/2026 07:14:57
[2026-08-31 07:14:57,369.369 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:14:57,423.423 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:14:57,508.508 INFO    ] No existing commands found in stream
[2026-08-31 07:15:02,519.519 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:15:02,522.522 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-08-31 07:15:05,769.769 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 07:15:05,772.772 INFO    ] Checking for system updates...
[2026-08-31 07:15:05,810.810 INFO    ] 200
[2026-08-31 07:15:05,813.813 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:15:05,864.864 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:15:05,866.866 INFO    ] No update needed
[2026-08-31 07:15:05,869.869 INFO    ] Checking for camera pi updates...
[2026-08-31 07:15:05,902.902 INFO    ] 200
[2026-08-31 07:15:05,904.904 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:15:05,948.948 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:15:06,026.026 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:15:06,029.029 INFO    ] No camera update needed
[2026-08-31 07:15:06,031.031 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:15:06,033.033 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:15:06,039.039 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:15:06,044.044 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:15:08,084.084 INFO    ] ================================================
[2026-08-31 07:15:08,099.099 INFO    ] Launching Daemon at Mon Aug 31 07:15:08 IST 2026
[2026-08-31 07:15:08,110.110 INFO    ] ================================================
[2026-08-31 07:15:08,676.676 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:15:08
[2026-08-31 07:15:09,259.259 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:15:09,507.507 INFO    ] Initializing speech engine...
[2026-08-31 07:15:09,522.522 INFO    ] 2026-08-31 07:15:09
[2026-08-31 07:15:09,789.789 INFO    ] 2026-08-31 07:15:09
[2026-08-31 07:15:09,826.826 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:15:10,084.084 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:15:10,093.093 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:15:10,313.313 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:15:10,358.358 INFO    ] time= 31/08/2026 07:15:10
[2026-08-31 07:15:10,364.364 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:15:10,385.385 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:15:10,505.505 INFO    ] No existing commands found in stream
[2026-08-31 07:15:15,525.525 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:15:15,529.529 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-08-31 07:15:16,984.984 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 07:15:16,987.987 INFO    ] Checking for system updates...
[2026-08-31 07:15:17,023.023 INFO    ] 200
[2026-08-31 07:15:17,025.025 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:15:17,087.087 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:15:17,090.090 INFO    ] No update needed
[2026-08-31 07:15:17,092.092 INFO    ] Checking for camera pi updates...
[2026-08-31 07:15:17,125.125 INFO    ] 200
[2026-08-31 07:15:17,128.128 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:15:17,170.170 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:15:17,250.250 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:15:17,253.253 INFO    ] No camera update needed
[2026-08-31 07:15:17,255.255 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:15:17,258.258 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:15:17,264.264 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:15:17,269.269 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:15:19,311.311 INFO    ] ================================================
[2026-08-31 07:15:19,326.326 INFO    ] Launching Daemon at Mon Aug 31 07:15:19 IST 2026
[2026-08-31 07:15:19,337.337 INFO    ] ================================================
[2026-08-31 07:15:19,903.903 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:15:19
[2026-08-31 07:15:20,484.484 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:15:20,739.739 INFO    ] Initializing speech engine...
[2026-08-31 07:15:20,755.755 INFO    ] 2026-08-31 07:15:20
[2026-08-31 07:15:21,036.036 INFO    ] 2026-08-31 07:15:21
[2026-08-31 07:15:21,071.071 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:15:21,264.264 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:15:21,276.276 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:15:21,434.434 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:15:21,443.443 INFO    ] time= 31/08/2026 07:15:21
[2026-08-31 07:15:21,450.450 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:15:21,480.480 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:15:21,638.638 INFO    ] No existing commands found in stream
[2026-08-31 07:15:26,673.673 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:15:26,676.676 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-08-31 07:15:28,022.022 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 07:15:28,024.024 INFO    ] Checking for system updates...
[2026-08-31 07:15:28,061.061 INFO    ] 200
[2026-08-31 07:15:28,063.063 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:15:28,119.119 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:15:28,121.121 INFO    ] No update needed
[2026-08-31 07:15:28,124.124 INFO    ] Checking for camera pi updates...
[2026-08-31 07:15:28,160.160 INFO    ] 200
[2026-08-31 07:15:28,162.162 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:15:28,202.202 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:15:28,366.366 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:15:28,369.369 INFO    ] No camera update needed
[2026-08-31 07:15:28,371.371 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:15:28,374.374 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:15:28,379.379 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:15:28,384.384 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:15:30,423.423 INFO    ] ================================================
[2026-08-31 07:15:30,439.439 INFO    ] Launching Daemon at Mon Aug 31 07:15:30 IST 2026
[2026-08-31 07:15:30,449.449 INFO    ] ================================================
[2026-08-31 07:15:31,017.017 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:15:31
[2026-08-31 07:15:31,627.627 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:15:31,906.906 INFO    ] Initializing speech engine...
[2026-08-31 07:15:31,921.921 INFO    ] 2026-08-31 07:15:31
[2026-08-31 07:15:32,198.198 INFO    ] 2026-08-31 07:15:32
[2026-08-31 07:15:32,233.233 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:15:32,429.429 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:15:32,451.451 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:15:32,649.649 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:15:32,666.666 INFO    ] time= 31/08/2026 07:15:32
[2026-08-31 07:15:32,730.730 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:15:32,754.754 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:15:32,859.859 INFO    ] No existing commands found in stream
[2026-08-31 07:15:37,870.870 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:15:37,873.873 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-08-31 07:15:41,042.042 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 07:15:41,045.045 INFO    ] Checking for system updates...
[2026-08-31 07:15:41,082.082 INFO    ] 200
[2026-08-31 07:15:41,085.085 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:15:41,141.141 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:15:41,143.143 INFO    ] No update needed
[2026-08-31 07:15:41,145.145 INFO    ] Checking for camera pi updates...
[2026-08-31 07:15:41,178.178 INFO    ] 200
[2026-08-31 07:15:41,181.181 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:15:41,225.225 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:15:41,307.307 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:15:41,309.309 INFO    ] No camera update needed
[2026-08-31 07:15:41,312.312 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:15:41,314.314 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:15:41,319.319 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:15:41,324.324 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:15:43,365.365 INFO    ] ================================================
[2026-08-31 07:15:43,380.380 INFO    ] Launching Daemon at Mon Aug 31 07:15:43 IST 2026
[2026-08-31 07:15:43,390.390 INFO    ] ================================================
[2026-08-31 07:15:43,953.953 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:15:43
[2026-08-31 07:15:44,535.535 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:15:44,800.800 INFO    ] Initializing speech engine...
[2026-08-31 07:15:44,815.815 INFO    ] 2026-08-31 07:15:44
[2026-08-31 07:15:45,085.085 INFO    ] 2026-08-31 07:15:45
[2026-08-31 07:15:45,120.120 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:15:45,375.375 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:15:45,385.385 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:15:45,520.520 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:15:45,585.585 INFO    ] time= 31/08/2026 07:15:45
[2026-08-31 07:15:45,645.645 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:15:45,655.655 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:15:45,791.791 INFO    ] No existing commands found in stream
[2026-08-31 07:15:50,813.813 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:15:50,816.816 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-08-31 07:15:51,561.561 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 07:15:51,564.564 INFO    ] Checking for system updates...
[2026-08-31 07:15:51,604.604 INFO    ] 200
[2026-08-31 07:15:51,606.606 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:15:51,663.663 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:15:51,665.665 INFO    ] No update needed
[2026-08-31 07:15:51,668.668 INFO    ] Checking for camera pi updates...
[2026-08-31 07:15:51,706.706 INFO    ] 200
[2026-08-31 07:15:51,709.709 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:15:51,752.752 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:15:51,833.833 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:15:51,835.835 INFO    ] No camera update needed
[2026-08-31 07:15:51,838.838 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:15:51,840.840 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:15:51,845.845 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:15:51,850.850 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:15:53,889.889 INFO    ] ================================================
[2026-08-31 07:15:53,905.905 INFO    ] Launching Daemon at Mon Aug 31 07:15:53 IST 2026
[2026-08-31 07:15:53,915.915 INFO    ] ================================================
[2026-08-31 07:15:54,526.526 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:15:54
[2026-08-31 07:15:55,143.143 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:15:55,409.409 INFO    ] Initializing speech engine...
[2026-08-31 07:15:55,418.418 INFO    ] 2026-08-31 07:15:55
[2026-08-31 07:15:55,669.669 INFO    ] 2026-08-31 07:15:55
[2026-08-31 07:15:55,728.728 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:15:55,949.949 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:15:55,958.958 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:15:56,088.088 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:15:56,125.125 INFO    ] time= 31/08/2026 07:15:56
[2026-08-31 07:15:56,179.179 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:15:56,220.220 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:15:56,353.353 INFO    ] No existing commands found in stream
[2026-08-31 07:16:01,378.378 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:16:01,382.382 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-08-31 07:16:02,226.226 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 07:16:02,229.229 INFO    ] Checking for system updates...
[2026-08-31 07:16:02,271.271 INFO    ] 200
[2026-08-31 07:16:02,274.274 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:16:02,351.351 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:16:02,354.354 INFO    ] No update needed
[2026-08-31 07:16:02,357.357 INFO    ] Checking for camera pi updates...
[2026-08-31 07:16:02,394.394 INFO    ] 200
[2026-08-31 07:16:02,397.397 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:16:02,449.449 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:16:02,506.506 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:16:02,509.509 INFO    ] No camera update needed
[2026-08-31 07:16:02,518.518 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:16:02,521.521 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:16:02,528.528 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:16:02,534.534 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:16:04,575.575 INFO    ] ================================================
[2026-08-31 07:16:04,590.590 INFO    ] Launching Daemon at Mon Aug 31 07:16:04 IST 2026
[2026-08-31 07:16:04,601.601 INFO    ] ================================================
[2026-08-31 07:16:05,175.175 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:16:05
[2026-08-31 07:16:05,772.772 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:16:06,037.037 INFO    ] Initializing speech engine...
[2026-08-31 07:16:06,058.058 INFO    ] 2026-08-31 07:16:06
[2026-08-31 07:16:06,335.335 INFO    ] 2026-08-31 07:16:06
[2026-08-31 07:16:06,386.386 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:16:06,624.624 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:16:06,685.685 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:16:06,850.850 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:16:06,887.887 INFO    ] time= 31/08/2026 07:16:06
[2026-08-31 07:16:06,932.932 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:16:06,992.992 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:16:07,061.061 INFO    ] No existing commands found in stream
[2026-08-31 07:16:12,073.073 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:16:12,076.076 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-08-31 07:16:15,262.262 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 07:16:15,264.264 INFO    ] Checking for system updates...
[2026-08-31 07:16:15,305.305 INFO    ] 200
[2026-08-31 07:16:15,307.307 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:16:15,359.359 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:16:15,362.362 INFO    ] No update needed
[2026-08-31 07:16:15,364.364 INFO    ] Checking for camera pi updates...
[2026-08-31 07:16:15,399.399 INFO    ] 200
[2026-08-31 07:16:15,401.401 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:16:15,444.444 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:16:15,525.525 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:16:15,527.527 INFO    ] No camera update needed
[2026-08-31 07:16:15,530.530 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:16:15,532.532 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:16:15,538.538 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:16:15,543.543 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:16:17,582.582 INFO    ] ================================================
[2026-08-31 07:16:17,597.597 INFO    ] Launching Daemon at Mon Aug 31 07:16:17 IST 2026
[2026-08-31 07:16:17,608.608 INFO    ] ================================================
[2026-08-31 07:16:18,178.178 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:16:18
[2026-08-31 07:16:18,764.764 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:16:19,035.035 INFO    ] Initializing speech engine...
[2026-08-31 07:16:19,041.041 INFO    ] 2026-08-31 07:16:19
[2026-08-31 07:16:19,286.286 INFO    ] 2026-08-31 07:16:19
[2026-08-31 07:16:19,321.321 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:16:19,572.572 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:16:19,580.580 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:16:19,756.756 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:16:19,805.805 INFO    ] time= 31/08/2026 07:16:19
[2026-08-31 07:16:19,843.843 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:16:19,849.849 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:16:19,983.983 INFO    ] No existing commands found in stream
[2026-08-31 07:16:25,003.003 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:16:25,006.006 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-08-31 07:16:25,822.822 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 07:16:25,825.825 INFO    ] Checking for system updates...
[2026-08-31 07:16:25,864.864 INFO    ] 200
[2026-08-31 07:16:25,867.867 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:16:25,919.919 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:16:25,922.922 INFO    ] No update needed
[2026-08-31 07:16:25,924.924 INFO    ] Checking for camera pi updates...
[2026-08-31 07:16:25,961.961 INFO    ] 200
[2026-08-31 07:16:25,963.963 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:16:26,003.003 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:16:26,081.081 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:16:26,083.083 INFO    ] No camera update needed
[2026-08-31 07:16:26,085.085 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:16:26,088.088 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:16:26,093.093 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:16:26,098.098 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:16:28,140.140 INFO    ] ================================================
[2026-08-31 07:16:28,155.155 INFO    ] Launching Daemon at Mon Aug 31 07:16:28 IST 2026
[2026-08-31 07:16:28,167.167 INFO    ] ================================================
[2026-08-31 07:16:28,828.828 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:16:28
[2026-08-31 07:16:29,431.431 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:16:29,698.698 INFO    ] Initializing speech engine...
[2026-08-31 07:16:29,708.708 INFO    ] 2026-08-31 07:16:29
[2026-08-31 07:16:29,953.953 INFO    ] 2026-08-31 07:16:29
[2026-08-31 07:16:29,987.987 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:16:30,186.186 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:16:30,244.244 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:16:30,384.384 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:16:30,454.454 INFO    ] time= 31/08/2026 07:16:30
[2026-08-31 07:16:30,510.510 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:16:30,516.516 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:16:30,658.658 INFO    ] No existing commands found in stream
[2026-08-31 07:16:35,673.673 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:16:35,676.676 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-08-31 07:16:39,541.541 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 07:16:39,544.544 INFO    ] Checking for system updates...
[2026-08-31 07:16:39,580.580 INFO    ] 200
[2026-08-31 07:16:39,582.582 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:16:39,634.634 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:16:39,637.637 INFO    ] No update needed
[2026-08-31 07:16:39,639.639 INFO    ] Checking for camera pi updates...
[2026-08-31 07:16:39,676.676 INFO    ] 200
[2026-08-31 07:16:39,679.679 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:16:39,719.719 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:16:39,813.813 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:16:39,815.815 INFO    ] No camera update needed
[2026-08-31 07:16:39,817.817 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:16:39,820.820 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:16:39,825.825 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:16:39,830.830 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:16:41,873.873 INFO    ] ================================================
[2026-08-31 07:16:41,889.889 INFO    ] Launching Daemon at Mon Aug 31 07:16:41 IST 2026
[2026-08-31 07:16:41,900.900 INFO    ] ================================================
[2026-08-31 07:16:42,519.519 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:16:42
[2026-08-31 07:16:43,178.178 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:16:43,477.477 INFO    ] Initializing speech engine...
[2026-08-31 07:16:43,485.485 INFO    ] 2026-08-31 07:16:43
[2026-08-31 07:16:43,743.743 INFO    ] 2026-08-31 07:16:43
[2026-08-31 07:16:43,797.797 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:16:44,077.077 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:16:44,086.086 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:16:44,267.267 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:16:44,286.286 INFO    ] time= 31/08/2026 07:16:44
[2026-08-31 07:16:44,302.302 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:16:44,310.310 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:16:44,433.433 INFO    ] No existing commands found in stream
[2026-08-31 07:16:49,449.449 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:16:49,452.452 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-08-31 07:16:51,069.069 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 07:16:51,072.072 INFO    ] Checking for system updates...
[2026-08-31 07:16:51,108.108 INFO    ] 200
[2026-08-31 07:16:51,110.110 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:16:51,170.170 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:16:51,172.172 INFO    ] No update needed
[2026-08-31 07:16:51,174.174 INFO    ] Checking for camera pi updates...
[2026-08-31 07:16:51,208.208 INFO    ] 200
[2026-08-31 07:16:51,210.210 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:16:51,251.251 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:16:51,341.341 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:16:51,343.343 INFO    ] No camera update needed
[2026-08-31 07:16:51,345.345 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:16:51,348.348 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:16:51,353.353 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:16:51,358.358 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:16:53,399.399 INFO    ] ================================================
[2026-08-31 07:16:53,415.415 INFO    ] Launching Daemon at Mon Aug 31 07:16:53 IST 2026
[2026-08-31 07:16:53,426.426 INFO    ] ================================================
[2026-08-31 07:16:53,990.990 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:16:53
[2026-08-31 07:16:54,571.571 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:16:54,843.843 INFO    ] Initializing speech engine...
[2026-08-31 07:16:54,850.850 INFO    ] 2026-08-31 07:16:54
[2026-08-31 07:16:55,093.093 INFO    ] 2026-08-31 07:16:55
[2026-08-31 07:16:55,128.128 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:16:55,380.380 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:16:55,389.389 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:16:55,520.520 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:16:55,557.557 INFO    ] time= 31/08/2026 07:16:55
[2026-08-31 07:16:55,602.602 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:16:55,653.653 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:16:55,787.787 INFO    ] No existing commands found in stream
[2026-08-31 07:17:00,811.811 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:17:00,813.813 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-08-31 07:17:01,888.888 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 07:17:01,892.892 INFO    ] Checking for system updates...
[2026-08-31 07:17:01,946.946 INFO    ] 200
[2026-08-31 07:17:01,954.954 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:17:02,031.031 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:17:02,034.034 INFO    ] No update needed
[2026-08-31 07:17:02,037.037 INFO    ] Checking for camera pi updates...
[2026-08-31 07:17:02,075.075 INFO    ] 200
[2026-08-31 07:17:02,078.078 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:17:02,133.133 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:17:02,193.193 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:17:02,196.196 INFO    ] No camera update needed
[2026-08-31 07:17:02,199.199 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:17:02,202.202 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:17:02,210.210 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:17:02,216.216 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:17:04,261.261 INFO    ] ================================================
[2026-08-31 07:17:04,278.278 INFO    ] Launching Daemon at Mon Aug 31 07:17:04 IST 2026
[2026-08-31 07:17:04,289.289 INFO    ] ================================================
[2026-08-31 07:17:04,858.858 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:17:04
[2026-08-31 07:17:05,444.444 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:17:05,719.719 INFO    ] Initializing speech engine...
[2026-08-31 07:17:05,728.728 INFO    ] 2026-08-31 07:17:05
[2026-08-31 07:17:05,976.976 INFO    ] 2026-08-31 07:17:05
[2026-08-31 07:17:06,042.042 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:17:06,264.264 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:17:06,275.275 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:17:06,426.426 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:17:06,443.443 INFO    ] time= 31/08/2026 07:17:06
[2026-08-31 07:17:06,446.446 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:17:06,463.463 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:17:06,584.584 INFO    ] No existing commands found in stream
[2026-08-31 07:17:11,600.600 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:17:11,602.602 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-08-31 07:17:15,983.983 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 07:17:15,986.986 INFO    ] Checking for system updates...
[2026-08-31 07:17:16,026.026 INFO    ] 200
[2026-08-31 07:17:16,028.028 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:17:16,087.087 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:17:16,090.090 INFO    ] No update needed
[2026-08-31 07:17:16,092.092 INFO    ] Checking for camera pi updates...
[2026-08-31 07:17:16,129.129 INFO    ] 200
[2026-08-31 07:17:16,132.132 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:17:16,177.177 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:17:16,273.273 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:17:16,276.276 INFO    ] No camera update needed
[2026-08-31 07:17:16,278.278 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:17:16,281.281 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:17:16,286.286 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:17:16,291.291 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:17:18,330.330 INFO    ] ================================================
[2026-08-31 07:17:18,346.346 INFO    ] Launching Daemon at Mon Aug 31 07:17:18 IST 2026
[2026-08-31 07:17:18,357.357 INFO    ] ================================================
[2026-08-31 07:17:18,922.922 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:17:18
[2026-08-31 07:17:19,503.503 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:17:19,775.775 INFO    ] Initializing speech engine...
[2026-08-31 07:17:19,780.780 INFO    ] 2026-08-31 07:17:19
[2026-08-31 07:17:20,032.032 INFO    ] 2026-08-31 07:17:20
[2026-08-31 07:17:20,090.090 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:17:20,314.314 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:17:20,319.319 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:17:20,490.490 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:17:20,550.550 INFO    ] time= 31/08/2026 07:17:20
[2026-08-31 07:17:20,581.581 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:17:20,587.587 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:17:20,721.721 INFO    ] No existing commands found in stream
[2026-08-31 07:17:25,743.743 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:17:25,745.745 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-08-31 07:17:29,672.672 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 07:17:29,674.674 INFO    ] Checking for system updates...
[2026-08-31 07:17:29,714.714 INFO    ] 200
[2026-08-31 07:17:29,717.717 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:17:29,768.768 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:17:29,771.771 INFO    ] No update needed
[2026-08-31 07:17:29,773.773 INFO    ] Checking for camera pi updates...
[2026-08-31 07:17:29,807.807 INFO    ] 200
[2026-08-31 07:17:29,809.809 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:17:29,850.850 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:17:30,007.007 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:17:30,010.010 INFO    ] No camera update needed
[2026-08-31 07:17:30,012.012 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:17:30,014.014 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:17:30,020.020 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:17:30,025.025 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:17:32,070.070 INFO    ] ================================================
[2026-08-31 07:17:32,087.087 INFO    ] Launching Daemon at Mon Aug 31 07:17:32 IST 2026
[2026-08-31 07:17:32,100.100 INFO    ] ================================================
[2026-08-31 07:17:32,803.803 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:17:32
[2026-08-31 07:17:33,465.465 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:17:33,769.769 INFO    ] Initializing speech engine...
[2026-08-31 07:17:33,777.777 INFO    ] 2026-08-31 07:17:33
[2026-08-31 07:17:34,037.037 INFO    ] 2026-08-31 07:17:34
[2026-08-31 07:17:34,089.089 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:17:34,309.309 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:17:34,319.319 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:17:34,516.516 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:17:34,565.565 INFO    ] time= 31/08/2026 07:17:34
[2026-08-31 07:17:34,582.582 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:17:34,598.598 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:17:34,728.728 INFO    ] No existing commands found in stream
[2026-08-31 07:17:39,743.743 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:17:39,746.746 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-08-31 07:17:40,989.989 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 07:17:40,991.991 INFO    ] Checking for system updates...
[2026-08-31 07:17:41,027.027 INFO    ] 200
[2026-08-31 07:17:41,030.030 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:17:41,092.092 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:17:41,094.094 INFO    ] No update needed
[2026-08-31 07:17:41,097.097 INFO    ] Checking for camera pi updates...
[2026-08-31 07:17:41,133.133 INFO    ] 200
[2026-08-31 07:17:41,136.136 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:17:41,177.177 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:17:41,256.256 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:17:41,258.258 INFO    ] No camera update needed
[2026-08-31 07:17:41,261.261 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:17:41,263.263 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:17:41,268.268 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:17:41,273.273 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:17:43,314.314 INFO    ] ================================================
[2026-08-31 07:17:43,330.330 INFO    ] Launching Daemon at Mon Aug 31 07:17:43 IST 2026
[2026-08-31 07:17:43,341.341 INFO    ] ================================================
[2026-08-31 07:17:43,982.982 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:17:43
[2026-08-31 07:17:44,652.652 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:17:44,947.947 INFO    ] Initializing speech engine...
[2026-08-31 07:17:44,957.957 INFO    ] 2026-08-31 07:17:44
[2026-08-31 07:17:45,227.227 INFO    ] 2026-08-31 07:17:45
[2026-08-31 07:17:45,262.262 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:17:45,469.469 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:17:45,493.493 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:17:45,683.683 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:17:45,732.732 INFO    ] time= 31/08/2026 07:17:45
[2026-08-31 07:17:45,792.792 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:17:45,826.826 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:17:45,952.952 INFO    ] No existing commands found in stream
[2026-08-31 07:17:50,982.982 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:17:50,985.985 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-08-31 07:17:54,308.308 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 07:17:54,311.311 INFO    ] Checking for system updates...
[2026-08-31 07:17:54,347.347 INFO    ] 200
[2026-08-31 07:17:54,350.350 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:17:54,409.409 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:17:54,411.411 INFO    ] No update needed
[2026-08-31 07:17:54,413.413 INFO    ] Checking for camera pi updates...
[2026-08-31 07:17:54,450.450 INFO    ] 200
[2026-08-31 07:17:54,452.452 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:17:54,496.496 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:17:54,577.577 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:17:54,579.579 INFO    ] No camera update needed
[2026-08-31 07:17:54,582.582 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:17:54,584.584 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:17:54,589.589 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:17:54,594.594 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:17:56,634.634 INFO    ] ================================================
[2026-08-31 07:17:56,649.649 INFO    ] Launching Daemon at Mon Aug 31 07:17:56 IST 2026
[2026-08-31 07:17:56,661.661 INFO    ] ================================================
[2026-08-31 07:17:57,296.296 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:17:57
[2026-08-31 07:17:57,948.948 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:17:58,234.234 INFO    ] Initializing speech engine...
[2026-08-31 07:17:58,244.244 INFO    ] 2026-08-31 07:17:58
[2026-08-31 07:17:58,519.519 INFO    ] 2026-08-31 07:17:58
[2026-08-31 07:17:58,554.554 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:17:58,773.773 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:17:58,781.781 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:17:58,907.907 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:17:58,932.932 INFO    ] time= 31/08/2026 07:17:58
[2026-08-31 07:17:58,941.941 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:17:58,947.947 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:17:59,027.027 INFO    ] No existing commands found in stream
[2026-08-31 07:18:04,059.059 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:18:04,062.062 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-08-31 07:18:07,642.642 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 07:18:07,644.644 INFO    ] Checking for system updates...
[2026-08-31 07:18:07,680.680 INFO    ] 200
[2026-08-31 07:18:07,682.682 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:18:07,744.744 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:18:07,746.746 INFO    ] No update needed
[2026-08-31 07:18:07,749.749 INFO    ] Checking for camera pi updates...
[2026-08-31 07:18:07,787.787 INFO    ] 200
[2026-08-31 07:18:07,790.790 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:18:07,830.830 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:18:07,909.909 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:18:07,912.912 INFO    ] No camera update needed
[2026-08-31 07:18:07,914.914 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:18:07,916.916 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:18:07,922.922 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:18:07,927.927 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:18:09,968.968 INFO    ] ================================================
[2026-08-31 07:18:09,984.984 INFO    ] Launching Daemon at Mon Aug 31 07:18:09 IST 2026
[2026-08-31 07:18:10,995.995 INFO    ] ================================================
[2026-08-31 07:18:10,660.660 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:18:10
[2026-08-31 07:18:11,258.258 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:18:11,532.532 INFO    ] Initializing speech engine...
[2026-08-31 07:18:11,539.539 INFO    ] 2026-08-31 07:18:11
[2026-08-31 07:18:11,802.802 INFO    ] 2026-08-31 07:18:11
[2026-08-31 07:18:11,856.856 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:18:12,087.087 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:18:12,093.093 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:18:12,313.313 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:18:12,349.349 INFO    ] time= 31/08/2026 07:18:12
[2026-08-31 07:18:12,367.367 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:18:12,378.378 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:18:12,511.511 INFO    ] No existing commands found in stream
[2026-08-31 07:18:17,538.538 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:18:17,541.541 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-08-31 07:18:18,470.470 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 07:18:18,473.473 INFO    ] Checking for system updates...
[2026-08-31 07:18:18,511.511 INFO    ] 200
[2026-08-31 07:18:18,513.513 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:18:18,575.575 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:18:18,578.578 INFO    ] No update needed
[2026-08-31 07:18:18,581.581 INFO    ] Checking for camera pi updates...
[2026-08-31 07:18:18,621.621 INFO    ] 200
[2026-08-31 07:18:18,624.624 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:18:18,675.675 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:18:18,766.766 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:18:18,769.769 INFO    ] No camera update needed
[2026-08-31 07:18:18,772.772 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:18:18,774.774 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:18:18,781.781 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:18:18,787.787 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:18:20,827.827 INFO    ] ================================================
[2026-08-31 07:18:20,843.843 INFO    ] Launching Daemon at Mon Aug 31 07:18:20 IST 2026
[2026-08-31 07:18:20,858.858 INFO    ] ================================================
[2026-08-31 07:18:21,437.437 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:18:21
[2026-08-31 07:18:22,019.019 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:18:22,268.268 INFO    ] Initializing speech engine...
[2026-08-31 07:18:22,282.282 INFO    ] 2026-08-31 07:18:22
[2026-08-31 07:18:22,544.544 INFO    ] 2026-08-31 07:18:22
[2026-08-31 07:18:22,579.579 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:18:22,775.775 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:18:22,832.832 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:18:23,038.038 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:18:23,096.096 INFO    ] time= 31/08/2026 07:18:23
[2026-08-31 07:18:23,103.103 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:18:23,121.121 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:18:23,231.231 INFO    ] No existing commands found in stream
[2026-08-31 07:18:28,258.258 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:18:28,260.260 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-08-31 07:18:30,161.161 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 07:18:30,164.164 INFO    ] Checking for system updates...
[2026-08-31 07:18:30,199.199 INFO    ] 200
[2026-08-31 07:18:30,202.202 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:18:30,255.255 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:18:30,257.257 INFO    ] No update needed
[2026-08-31 07:18:30,260.260 INFO    ] Checking for camera pi updates...
[2026-08-31 07:18:30,293.293 INFO    ] 200
[2026-08-31 07:18:30,295.295 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:18:30,341.341 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:18:30,424.424 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:18:30,427.427 INFO    ] No camera update needed
[2026-08-31 07:18:30,429.429 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:18:30,431.431 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:18:30,437.437 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:18:30,442.442 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:18:32,482.482 INFO    ] ================================================
[2026-08-31 07:18:32,499.499 INFO    ] Launching Daemon at Mon Aug 31 07:18:32 IST 2026
[2026-08-31 07:18:32,510.510 INFO    ] ================================================
[2026-08-31 07:18:33,103.103 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:18:33
[2026-08-31 07:18:33,684.684 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:18:33,932.932 INFO    ] Initializing speech engine...
[2026-08-31 07:18:33,947.947 INFO    ] 2026-08-31 07:18:33
[2026-08-31 07:18:34,213.213 INFO    ] 2026-08-31 07:18:34
[2026-08-31 07:18:34,248.248 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:18:34,422.422 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:18:34,435.435 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:18:34,580.580 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:18:34,588.588 INFO    ] time= 31/08/2026 07:18:34
[2026-08-31 07:18:34,592.592 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:18:34,598.598 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:18:34,666.666 INFO    ] No existing commands found in stream
[2026-08-31 07:18:39,696.696 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:18:39,699.699 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-08-31 07:18:43,922.922 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 07:18:43,925.925 INFO    ] Checking for system updates...
[2026-08-31 07:18:43,963.963 INFO    ] 200
[2026-08-31 07:18:43,966.966 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:18:44,023.023 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:18:44,025.025 INFO    ] No update needed
[2026-08-31 07:18:44,028.028 INFO    ] Checking for camera pi updates...
[2026-08-31 07:18:44,061.061 INFO    ] 200
[2026-08-31 07:18:44,064.064 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:18:44,104.104 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:18:44,152.152 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:18:44,155.155 INFO    ] No camera update needed
[2026-08-31 07:18:44,157.157 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:18:44,160.160 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:18:44,165.165 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:18:44,170.170 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:18:46,211.211 INFO    ] ================================================
[2026-08-31 07:18:46,227.227 INFO    ] Launching Daemon at Mon Aug 31 07:18:46 IST 2026
[2026-08-31 07:18:46,238.238 INFO    ] ================================================
[2026-08-31 07:18:46,802.802 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:18:46
[2026-08-31 07:18:47,401.401 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:18:47,663.663 INFO    ] Initializing speech engine...
[2026-08-31 07:18:47,687.687 INFO    ] 2026-08-31 07:18:47
[2026-08-31 07:18:47,964.964 INFO    ] 2026-08-31 07:18:47
[2026-08-31 07:18:48,000.000 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:18:48,192.192 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:18:48,206.206 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:18:48,334.334 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:18:48,349.349 INFO    ] time= 31/08/2026 07:18:48
[2026-08-31 07:18:48,374.374 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:18:48,383.383 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:18:48,515.515 INFO    ] No existing commands found in stream
[2026-08-31 07:18:53,540.540 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:18:53,543.543 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-08-31 07:18:57,183.183 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 07:18:57,186.186 INFO    ] Checking for system updates...
[2026-08-31 07:18:57,227.227 INFO    ] 200
[2026-08-31 07:18:57,230.230 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:18:57,290.290 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:18:57,292.292 INFO    ] No update needed
[2026-08-31 07:18:57,298.298 INFO    ] Checking for camera pi updates...
[2026-08-31 07:18:57,333.333 INFO    ] 200
[2026-08-31 07:18:57,336.336 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:18:57,382.382 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:18:57,490.490 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:18:57,493.493 INFO    ] No camera update needed
[2026-08-31 07:18:57,495.495 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:18:57,498.498 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:18:57,504.504 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:18:57,510.510 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:18:59,551.551 INFO    ] ================================================
[2026-08-31 07:18:59,567.567 INFO    ] Launching Daemon at Mon Aug 31 07:18:59 IST 2026
[2026-08-31 07:18:59,578.578 INFO    ] ================================================
[2026-08-31 07:19:00,222.222 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:19:00
[2026-08-31 07:19:00,887.887 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:19:01,187.187 INFO    ] Initializing speech engine...
[2026-08-31 07:19:01,195.195 INFO    ] 2026-08-31 07:19:01
[2026-08-31 07:19:01,465.465 INFO    ] 2026-08-31 07:19:01
[2026-08-31 07:19:01,542.542 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:19:01,749.749 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:19:01,756.756 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:19:01,939.939 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:19:01,944.944 INFO    ] time= 31/08/2026 07:19:01
[2026-08-31 07:19:01,949.949 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:19:01,954.954 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:19:02,038.038 INFO    ] No existing commands found in stream
[2026-08-31 07:19:07,051.051 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:19:07,054.054 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-08-31 07:19:10,564.564 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 07:19:10,567.567 INFO    ] Checking for system updates...
[2026-08-31 07:19:10,608.608 INFO    ] 200
[2026-08-31 07:19:10,610.610 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:19:10,668.668 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:19:10,671.671 INFO    ] No update needed
[2026-08-31 07:19:10,673.673 INFO    ] Checking for camera pi updates...
[2026-08-31 07:19:10,710.710 INFO    ] 200
[2026-08-31 07:19:10,712.712 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:19:10,756.756 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:19:10,839.839 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:19:10,842.842 INFO    ] No camera update needed
[2026-08-31 07:19:10,844.844 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:19:10,846.846 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:19:10,851.851 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:19:10,856.856 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:19:12,897.897 INFO    ] ================================================
[2026-08-31 07:19:12,912.912 INFO    ] Launching Daemon at Mon Aug 31 07:19:12 IST 2026
[2026-08-31 07:19:12,923.923 INFO    ] ================================================
[2026-08-31 07:19:13,503.503 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:19:13
[2026-08-31 07:19:14,100.100 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:19:14,377.377 INFO    ] Initializing speech engine...
[2026-08-31 07:19:14,383.383 INFO    ] 2026-08-31 07:19:14
[2026-08-31 07:19:14,644.644 INFO    ] 2026-08-31 07:19:14
[2026-08-31 07:19:14,700.700 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:19:14,944.944 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:19:14,952.952 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:19:15,153.153 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:19:15,187.187 INFO    ] time= 31/08/2026 07:19:15
[2026-08-31 07:19:15,193.193 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:19:15,213.213 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:19:15,341.341 INFO    ] No existing commands found in stream
[2026-08-31 07:19:20,356.356 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:19:20,359.359 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-08-31 07:19:21,910.910 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 07:19:21,912.912 INFO    ] Checking for system updates...
[2026-08-31 07:19:21,949.949 INFO    ] 200
[2026-08-31 07:19:21,951.951 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:19:22,003.003 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:19:22,005.005 INFO    ] No update needed
[2026-08-31 07:19:22,008.008 INFO    ] Checking for camera pi updates...
[2026-08-31 07:19:22,042.042 INFO    ] 200
[2026-08-31 07:19:22,044.044 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:19:22,091.091 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:19:22,168.168 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:19:22,170.170 INFO    ] No camera update needed
[2026-08-31 07:19:22,173.173 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:19:22,175.175 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:19:22,180.180 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:19:22,185.185 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:19:24,224.224 INFO    ] ================================================
[2026-08-31 07:19:24,240.240 INFO    ] Launching Daemon at Mon Aug 31 07:19:24 IST 2026
[2026-08-31 07:19:24,251.251 INFO    ] ================================================
[2026-08-31 07:19:24,871.871 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:19:24
[2026-08-31 07:19:25,508.508 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:19:25,806.806 INFO    ] Initializing speech engine...
[2026-08-31 07:19:25,813.813 INFO    ] 2026-08-31 07:19:25
[2026-08-31 07:19:26,091.091 INFO    ] 2026-08-31 07:19:26
[2026-08-31 07:19:26,134.134 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:19:26,423.423 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:19:26,427.427 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:19:26,621.621 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:19:26,628.628 INFO    ] time= 31/08/2026 07:19:26
[2026-08-31 07:19:26,647.647 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:19:26,676.676 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:19:26,780.780 INFO    ] No existing commands found in stream
[2026-08-31 07:19:31,792.792 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:19:31,796.796 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-08-31 07:19:35,968.968 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 07:19:35,971.971 INFO    ] Checking for system updates...
[2026-08-31 07:19:36,008.008 INFO    ] 200
[2026-08-31 07:19:36,010.010 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:19:36,062.062 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:19:36,065.065 INFO    ] No update needed
[2026-08-31 07:19:36,067.067 INFO    ] Checking for camera pi updates...
[2026-08-31 07:19:36,103.103 INFO    ] 200
[2026-08-31 07:19:36,105.105 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:19:36,148.148 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:19:36,228.228 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:19:36,230.230 INFO    ] No camera update needed
[2026-08-31 07:19:36,233.233 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:19:36,235.235 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:19:36,246.246 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:19:36,251.251 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:19:38,293.293 INFO    ] ================================================
[2026-08-31 07:19:38,308.308 INFO    ] Launching Daemon at Mon Aug 31 07:19:38 IST 2026
[2026-08-31 07:19:38,320.320 INFO    ] ================================================
[2026-08-31 07:19:38,889.889 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:19:38
[2026-08-31 07:19:39,484.484 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:19:39,750.750 INFO    ] Initializing speech engine...
[2026-08-31 07:19:39,765.765 INFO    ] 2026-08-31 07:19:39
[2026-08-31 07:19:40,031.031 INFO    ] 2026-08-31 07:19:40
[2026-08-31 07:19:40,069.069 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:19:40,263.263 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:19:40,278.278 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:19:40,430.430 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:19:40,439.439 INFO    ] time= 31/08/2026 07:19:40
[2026-08-31 07:19:40,445.445 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:19:40,496.496 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:19:40,640.640 INFO    ] No existing commands found in stream
[2026-08-31 07:19:45,650.650 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:19:45,653.653 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-08-31 07:19:48,221.221 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 07:19:48,224.224 INFO    ] Checking for system updates...
[2026-08-31 07:19:48,260.260 INFO    ] 200
[2026-08-31 07:19:48,263.263 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:19:48,315.315 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:19:48,318.318 INFO    ] No update needed
[2026-08-31 07:19:48,320.320 INFO    ] Checking for camera pi updates...
[2026-08-31 07:19:48,353.353 INFO    ] 200
[2026-08-31 07:19:48,356.356 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:19:48,395.395 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:19:48,500.500 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:19:48,502.502 INFO    ] No camera update needed
[2026-08-31 07:19:48,505.505 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:19:48,507.507 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:19:48,512.512 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:19:48,517.517 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:19:50,558.558 INFO    ] ================================================
[2026-08-31 07:19:50,574.574 INFO    ] Launching Daemon at Mon Aug 31 07:19:50 IST 2026
[2026-08-31 07:19:50,585.585 INFO    ] ================================================
[2026-08-31 07:19:51,229.229 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:19:51
[2026-08-31 07:19:51,859.859 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:19:52,132.132 INFO    ] Initializing speech engine...
[2026-08-31 07:19:52,141.141 INFO    ] 2026-08-31 07:19:52
[2026-08-31 07:19:52,422.422 INFO    ] 2026-08-31 07:19:52
[2026-08-31 07:19:52,464.464 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:19:52,688.688 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:19:52,694.694 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:19:52,913.913 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:19:52,950.950 INFO    ] time= 31/08/2026 07:19:52
[2026-08-31 07:19:52,956.956 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:19:52,974.974 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:19:53,104.104 INFO    ] No existing commands found in stream
[2026-08-31 07:19:58,116.116 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:19:58,119.119 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-08-31 07:19:59,674.674 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 07:19:59,676.676 INFO    ] Checking for system updates...
[2026-08-31 07:19:59,715.715 INFO    ] 200
[2026-08-31 07:19:59,718.718 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:19:59,769.769 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:19:59,772.772 INFO    ] No update needed
[2026-08-31 07:19:59,775.775 INFO    ] Checking for camera pi updates...
[2026-08-31 07:19:59,810.810 INFO    ] 200
[2026-08-31 07:19:59,812.812 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:19:59,852.852 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:19:59,931.931 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:19:59,934.934 INFO    ] No camera update needed
[2026-08-31 07:19:59,936.936 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:19:59,938.938 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:19:59,944.944 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:19:59,949.949 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:20:02,042.042 INFO    ] ================================================
[2026-08-31 07:20:02,090.090 INFO    ] Launching Daemon at Mon Aug 31 07:20:02 IST 2026
[2026-08-31 07:20:02,120.120 INFO    ] ================================================
[2026-08-31 07:20:03,115.115 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:20:03
[2026-08-31 07:20:03,895.895 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:20:04,203.203 INFO    ] Initializing speech engine...
[2026-08-31 07:20:04,214.214 INFO    ] 2026-08-31 07:20:04
[2026-08-31 07:20:04,494.494 INFO    ] 2026-08-31 07:20:04
[2026-08-31 07:20:04,556.556 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:20:04,766.766 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:20:04,773.773 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:20:04,988.988 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:20:05,031.031 INFO    ] time= 31/08/2026 07:20:04
[2026-08-31 07:20:05,049.049 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:20:05,060.060 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:20:05,189.189 INFO    ] No existing commands found in stream
[2026-08-31 07:20:10,209.209 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:20:10,212.212 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-08-31 07:20:11,701.701 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 07:20:11,704.704 INFO    ] Checking for system updates...
[2026-08-31 07:20:11,743.743 INFO    ] 200
[2026-08-31 07:20:11,746.746 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:20:11,799.799 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:20:11,801.801 INFO    ] No update needed
[2026-08-31 07:20:11,804.804 INFO    ] Checking for camera pi updates...
[2026-08-31 07:20:11,839.839 INFO    ] 200
[2026-08-31 07:20:11,842.842 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:20:11,884.884 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:20:11,965.965 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:20:11,968.968 INFO    ] No camera update needed
[2026-08-31 07:20:11,970.970 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:20:11,973.973 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:20:11,979.979 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:20:11,985.985 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:20:14,027.027 INFO    ] ================================================
[2026-08-31 07:20:14,043.043 INFO    ] Launching Daemon at Mon Aug 31 07:20:14 IST 2026
[2026-08-31 07:20:14,054.054 INFO    ] ================================================
[2026-08-31 07:20:14,622.622 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:20:14
[2026-08-31 07:20:15,204.204 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:20:15,467.467 INFO    ] Initializing speech engine...
[2026-08-31 07:20:15,480.480 INFO    ] 2026-08-31 07:20:15
[2026-08-31 07:20:15,726.726 INFO    ] 2026-08-31 07:20:15
[2026-08-31 07:20:15,761.761 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:20:15,958.958 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:20:16,015.015 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:20:16,152.152 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:20:16,194.194 INFO    ] time= 31/08/2026 07:20:16
[2026-08-31 07:20:16,253.253 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:20:16,286.286 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:20:16,414.414 INFO    ] No existing commands found in stream
[2026-08-31 07:20:21,434.434 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:20:21,436.436 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-08-31 07:20:23,320.320 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 07:20:23,322.322 INFO    ] Checking for system updates...
[2026-08-31 07:20:23,358.358 INFO    ] 200
[2026-08-31 07:20:23,361.361 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:20:23,412.412 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:20:23,415.415 INFO    ] No update needed
[2026-08-31 07:20:23,417.417 INFO    ] Checking for camera pi updates...
[2026-08-31 07:20:23,455.455 INFO    ] 200
[2026-08-31 07:20:23,457.457 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:20:23,500.500 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:20:23,585.585 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:20:23,588.588 INFO    ] No camera update needed
[2026-08-31 07:20:23,591.591 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:20:23,593.593 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:20:23,599.599 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:20:23,605.605 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:20:25,647.647 INFO    ] ================================================
[2026-08-31 07:20:25,663.663 INFO    ] Launching Daemon at Mon Aug 31 07:20:25 IST 2026
[2026-08-31 07:20:25,675.675 INFO    ] ================================================
[2026-08-31 07:20:26,242.242 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:20:26
[2026-08-31 07:20:26,826.826 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:20:27,093.093 INFO    ] Initializing speech engine...
[2026-08-31 07:20:27,102.102 INFO    ] 2026-08-31 07:20:27
[2026-08-31 07:20:27,351.351 INFO    ] 2026-08-31 07:20:27
[2026-08-31 07:20:27,386.386 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:20:27,584.584 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:20:27,641.641 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:20:27,783.783 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:20:27,843.843 INFO    ] time= 31/08/2026 07:20:27
[2026-08-31 07:20:27,892.892 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:20:27,913.913 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:20:28,030.030 INFO    ] No existing commands found in stream
[2026-08-31 07:20:33,057.057 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:20:33,060.060 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-08-31 07:20:37,329.329 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 07:20:37,331.331 INFO    ] Checking for system updates...
[2026-08-31 07:20:37,367.367 INFO    ] 200
[2026-08-31 07:20:37,370.370 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:20:37,423.423 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:20:37,425.425 INFO    ] No update needed
[2026-08-31 07:20:37,428.428 INFO    ] Checking for camera pi updates...
[2026-08-31 07:20:37,461.461 INFO    ] 200
[2026-08-31 07:20:37,463.463 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:20:37,512.512 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:20:37,583.583 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:20:37,586.586 INFO    ] No camera update needed
[2026-08-31 07:20:37,588.588 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:20:37,591.591 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:20:37,596.596 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:20:37,601.601 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:20:39,643.643 INFO    ] ================================================
[2026-08-31 07:20:39,658.658 INFO    ] Launching Daemon at Mon Aug 31 07:20:39 IST 2026
[2026-08-31 07:20:39,669.669 INFO    ] ================================================
[2026-08-31 07:20:40,318.318 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:20:40
[2026-08-31 07:20:40,988.988 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:20:41,290.290 INFO    ] Initializing speech engine...
[2026-08-31 07:20:41,303.303 INFO    ] 2026-08-31 07:20:41
[2026-08-31 07:20:41,585.585 INFO    ] 2026-08-31 07:20:41
[2026-08-31 07:20:41,648.648 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:20:41,915.915 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:20:41,921.921 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:20:42,106.106 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:20:42,125.125 INFO    ] time= 31/08/2026 07:20:42
[2026-08-31 07:20:42,144.144 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:20:42,175.175 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:20:42,298.298 INFO    ] No existing commands found in stream
[2026-08-31 07:20:47,329.329 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:20:47,332.332 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-08-31 07:20:48,641.641 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 07:20:48,644.644 INFO    ] Checking for system updates...
[2026-08-31 07:20:48,683.683 INFO    ] 200
[2026-08-31 07:20:48,685.685 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:20:48,744.744 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:20:48,746.746 INFO    ] No update needed
[2026-08-31 07:20:48,749.749 INFO    ] Checking for camera pi updates...
[2026-08-31 07:20:48,782.782 INFO    ] 200
[2026-08-31 07:20:48,785.785 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:20:48,830.830 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:20:48,911.911 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:20:48,914.914 INFO    ] No camera update needed
[2026-08-31 07:20:48,916.916 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:20:48,918.918 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:20:48,924.924 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:20:48,929.929 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:20:50,969.969 INFO    ] ================================================
[2026-08-31 07:20:50,984.984 INFO    ] Launching Daemon at Mon Aug 31 07:20:50 IST 2026
[2026-08-31 07:20:51,996.996 INFO    ] ================================================
[2026-08-31 07:20:51,575.575 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:20:51
[2026-08-31 07:20:52,159.159 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:20:52,406.406 INFO    ] Initializing speech engine...
[2026-08-31 07:20:52,414.414 INFO    ] 2026-08-31 07:20:52
[2026-08-31 07:20:52,713.713 INFO    ] 2026-08-31 07:20:52
[2026-08-31 07:20:52,737.737 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:20:52,945.945 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:20:52,951.951 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:20:53,123.123 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:20:53,132.132 INFO    ] time= 31/08/2026 07:20:53
[2026-08-31 07:20:53,139.139 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:20:53,193.193 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:20:53,348.348 INFO    ] No existing commands found in stream
[2026-08-31 07:20:58,365.365 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:20:58,368.368 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-08-31 07:21:01,766.766 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 07:21:01,769.769 INFO    ] Checking for system updates...
[2026-08-31 07:21:01,836.836 INFO    ] 200
[2026-08-31 07:21:01,843.843 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:21:01,967.967 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:21:01,981.981 INFO    ] No update needed
[2026-08-31 07:21:01,985.985 INFO    ] Checking for camera pi updates...
[2026-08-31 07:21:02,060.060 INFO    ] 200
[2026-08-31 07:21:02,063.063 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:21:02,124.124 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:21:02,186.186 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:21:02,190.190 INFO    ] No camera update needed
[2026-08-31 07:21:02,193.193 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:21:02,195.195 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:21:02,209.209 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:21:02,216.216 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:21:04,260.260 INFO    ] ================================================
[2026-08-31 07:21:04,275.275 INFO    ] Launching Daemon at Mon Aug 31 07:21:04 IST 2026
[2026-08-31 07:21:04,287.287 INFO    ] ================================================
[2026-08-31 07:21:04,929.929 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:21:04
[2026-08-31 07:21:05,590.590 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:21:05,860.860 INFO    ] Initializing speech engine...
[2026-08-31 07:21:05,885.885 INFO    ] 2026-08-31 07:21:05
[2026-08-31 07:21:06,161.161 INFO    ] 2026-08-31 07:21:06
[2026-08-31 07:21:06,197.197 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:21:06,423.423 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:21:06,483.483 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:21:06,665.665 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:21:06,688.688 INFO    ] time= 31/08/2026 07:21:06
[2026-08-31 07:21:06,713.713 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:21:06,785.785 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:21:06,879.879 INFO    ] No existing commands found in stream
[2026-08-31 07:21:11,892.892 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:21:11,895.895 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-08-31 07:21:12,926.926 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 07:21:12,929.929 INFO    ] Checking for system updates...
[2026-08-31 07:21:12,966.966 INFO    ] 200
[2026-08-31 07:21:12,969.969 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:21:13,022.022 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:21:13,025.025 INFO    ] No update needed
[2026-08-31 07:21:13,028.028 INFO    ] Checking for camera pi updates...
[2026-08-31 07:21:13,067.067 INFO    ] 200
[2026-08-31 07:21:13,070.070 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:21:13,116.116 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:21:13,198.198 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:21:13,201.201 INFO    ] No camera update needed
[2026-08-31 07:21:13,204.204 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:21:13,207.207 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:21:13,213.213 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:21:13,219.219 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:21:15,260.260 INFO    ] ================================================
[2026-08-31 07:21:15,276.276 INFO    ] Launching Daemon at Mon Aug 31 07:21:15 IST 2026
[2026-08-31 07:21:15,287.287 INFO    ] ================================================
[2026-08-31 07:21:15,871.871 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:21:15
[2026-08-31 07:21:16,455.455 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:21:16,730.730 INFO    ] Initializing speech engine...
[2026-08-31 07:21:16,745.745 INFO    ] 2026-08-31 07:21:16
[2026-08-31 07:21:17,021.021 INFO    ] 2026-08-31 07:21:16
[2026-08-31 07:21:17,061.061 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:21:17,284.284 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:21:17,292.292 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:21:17,436.436 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:21:17,443.443 INFO    ] time= 31/08/2026 07:21:17
[2026-08-31 07:21:17,449.449 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:21:17,455.455 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:21:17,532.532 INFO    ] No existing commands found in stream
[2026-08-31 07:21:22,563.563 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:21:22,565.565 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-08-31 07:21:25,023.023 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 07:21:25,025.025 INFO    ] Checking for system updates...
[2026-08-31 07:21:25,065.065 INFO    ] 200
[2026-08-31 07:21:25,067.067 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:21:25,126.126 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:21:25,129.129 INFO    ] No update needed
[2026-08-31 07:21:25,132.132 INFO    ] Checking for camera pi updates...
[2026-08-31 07:21:25,169.169 INFO    ] 200
[2026-08-31 07:21:25,171.171 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:21:25,212.212 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:21:25,288.288 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:21:25,290.290 INFO    ] No camera update needed
[2026-08-31 07:21:25,293.293 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:21:25,295.295 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:21:25,301.301 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:21:25,306.306 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:21:27,349.349 INFO    ] ================================================
[2026-08-31 07:21:27,365.365 INFO    ] Launching Daemon at Mon Aug 31 07:21:27 IST 2026
[2026-08-31 07:21:27,376.376 INFO    ] ================================================
[2026-08-31 07:21:27,942.942 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:21:27
[2026-08-31 07:21:28,526.526 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:21:28,781.781 INFO    ] Initializing speech engine...
[2026-08-31 07:21:28,790.790 INFO    ] 2026-08-31 07:21:28
[2026-08-31 07:21:29,088.088 INFO    ] 2026-08-31 07:21:29
[2026-08-31 07:21:29,114.114 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:21:29,324.324 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:21:29,331.331 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:21:29,505.505 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:21:29,514.514 INFO    ] time= 31/08/2026 07:21:29
[2026-08-31 07:21:29,523.523 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:21:29,560.560 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:21:29,676.676 INFO    ] No existing commands found in stream
[2026-08-31 07:21:34,700.700 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:21:34,703.703 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-08-31 07:21:37,754.754 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 07:21:37,756.756 INFO    ] Checking for system updates...
[2026-08-31 07:21:37,792.792 INFO    ] 200
[2026-08-31 07:21:37,794.794 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:21:37,854.854 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:21:37,856.856 INFO    ] No update needed
[2026-08-31 07:21:37,859.859 INFO    ] Checking for camera pi updates...
[2026-08-31 07:21:37,892.892 INFO    ] 200
[2026-08-31 07:21:37,895.895 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:21:37,936.936 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:21:38,120.120 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:21:38,122.122 INFO    ] No camera update needed
[2026-08-31 07:21:38,124.124 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:21:38,126.126 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:21:38,132.132 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:21:38,138.138 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:21:40,179.179 INFO    ] ================================================
[2026-08-31 07:21:40,196.196 INFO    ] Launching Daemon at Mon Aug 31 07:21:40 IST 2026
[2026-08-31 07:21:40,208.208 INFO    ] ================================================
[2026-08-31 07:21:40,868.868 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:21:40
[2026-08-31 07:21:41,547.547 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:21:41,852.852 INFO    ] Initializing speech engine...
[2026-08-31 07:21:41,865.865 INFO    ] 2026-08-31 07:21:41
[2026-08-31 07:21:42,155.155 INFO    ] 2026-08-31 07:21:42
[2026-08-31 07:21:42,193.193 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:21:42,473.473 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:21:42,482.482 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:21:42,672.672 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:21:42,684.684 INFO    ] time= 31/08/2026 07:21:42
[2026-08-31 07:21:42,705.705 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:21:42,735.735 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:21:42,857.857 INFO    ] No existing commands found in stream
[2026-08-31 07:21:47,888.888 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:21:47,892.892 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-08-31 07:21:51,943.943 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 07:21:51,946.946 INFO    ] Checking for system updates...
[2026-08-31 07:21:51,992.992 INFO    ] 200
[2026-08-31 07:21:51,994.994 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:21:52,049.049 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:21:52,051.051 INFO    ] No update needed
[2026-08-31 07:21:52,054.054 INFO    ] Checking for camera pi updates...
[2026-08-31 07:21:52,088.088 INFO    ] 200
[2026-08-31 07:21:52,090.090 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:21:52,131.131 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:21:52,212.212 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:21:52,214.214 INFO    ] No camera update needed
[2026-08-31 07:21:52,217.217 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:21:52,219.219 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:21:52,225.225 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:21:52,230.230 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:21:54,269.269 INFO    ] ================================================
[2026-08-31 07:21:54,285.285 INFO    ] Launching Daemon at Mon Aug 31 07:21:54 IST 2026
[2026-08-31 07:21:54,296.296 INFO    ] ================================================
[2026-08-31 07:21:54,882.882 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:21:54
[2026-08-31 07:21:55,479.479 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:21:55,750.750 INFO    ] Initializing speech engine...
[2026-08-31 07:21:55,757.757 INFO    ] 2026-08-31 07:21:55
[2026-08-31 07:21:56,005.005 INFO    ] 2026-08-31 07:21:56
[2026-08-31 07:21:56,041.041 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:21:56,293.293 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:21:56,302.302 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:21:56,436.436 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:21:56,506.506 INFO    ] time= 31/08/2026 07:21:56
[2026-08-31 07:21:56,563.563 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:21:56,569.569 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:21:56,711.711 INFO    ] No existing commands found in stream
[2026-08-31 07:22:01,725.725 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:22:01,728.728 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-08-31 07:22:05,753.753 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 07:22:05,755.755 INFO    ] Checking for system updates...
[2026-08-31 07:22:05,792.792 INFO    ] 200
[2026-08-31 07:22:05,794.794 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:22:05,853.853 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:22:05,856.856 INFO    ] No update needed
[2026-08-31 07:22:05,860.860 INFO    ] Checking for camera pi updates...
[2026-08-31 07:22:05,897.897 INFO    ] 200
[2026-08-31 07:22:05,900.900 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:22:05,942.942 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:22:06,022.022 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:22:06,025.025 INFO    ] No camera update needed
[2026-08-31 07:22:06,028.028 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:22:06,030.030 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:22:06,037.037 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:22:06,042.042 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:22:08,086.086 INFO    ] ================================================
[2026-08-31 07:22:08,102.102 INFO    ] Launching Daemon at Mon Aug 31 07:22:08 IST 2026
[2026-08-31 07:22:08,113.113 INFO    ] ================================================
[2026-08-31 07:22:08,685.685 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:22:08
[2026-08-31 07:22:09,269.269 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:22:09,521.521 INFO    ] Initializing speech engine...
[2026-08-31 07:22:09,527.527 INFO    ] 2026-08-31 07:22:09
[2026-08-31 07:22:09,820.820 INFO    ] 2026-08-31 07:22:09
[2026-08-31 07:22:09,857.857 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:22:10,143.143 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:22:10,153.153 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:22:10,305.305 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:22:10,365.365 INFO    ] time= 31/08/2026 07:22:10
[2026-08-31 07:22:10,409.409 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:22:10,451.451 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:22:10,583.583 INFO    ] No existing commands found in stream
[2026-08-31 07:22:15,610.610 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:22:15,613.613 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-08-31 07:22:17,784.784 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 07:22:17,786.786 INFO    ] Checking for system updates...
[2026-08-31 07:22:17,822.822 INFO    ] 200
[2026-08-31 07:22:17,824.824 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:22:17,876.876 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:22:17,879.879 INFO    ] No update needed
[2026-08-31 07:22:17,882.882 INFO    ] Checking for camera pi updates...
[2026-08-31 07:22:17,915.915 INFO    ] 200
[2026-08-31 07:22:17,917.917 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:22:17,958.958 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:22:18,022.022 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:22:18,025.025 INFO    ] No camera update needed
[2026-08-31 07:22:18,027.027 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:22:18,029.029 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:22:18,035.035 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:22:18,040.040 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:22:20,079.079 INFO    ] ================================================
[2026-08-31 07:22:20,095.095 INFO    ] Launching Daemon at Mon Aug 31 07:22:20 IST 2026
[2026-08-31 07:22:20,106.106 INFO    ] ================================================
[2026-08-31 07:22:20,673.673 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:22:20
[2026-08-31 07:22:21,257.257 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:22:21,508.508 INFO    ] Initializing speech engine...
[2026-08-31 07:22:21,516.516 INFO    ] 2026-08-31 07:22:21
[2026-08-31 07:22:21,810.810 INFO    ] 2026-08-31 07:22:21
[2026-08-31 07:22:21,846.846 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:22:22,067.067 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:22:22,075.075 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:22:22,222.222 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:22:22,227.227 INFO    ] time= 31/08/2026 07:22:22
[2026-08-31 07:22:22,234.234 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:22:22,286.286 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:22:22,428.428 INFO    ] No existing commands found in stream
[2026-08-31 07:22:27,453.453 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:22:27,457.457 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-08-31 07:22:30,422.422 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 07:22:30,425.425 INFO    ] Checking for system updates...
[2026-08-31 07:22:30,463.463 INFO    ] 200
[2026-08-31 07:22:30,466.466 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:22:30,523.523 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:22:30,525.525 INFO    ] No update needed
[2026-08-31 07:22:30,528.528 INFO    ] Checking for camera pi updates...
[2026-08-31 07:22:30,561.561 INFO    ] 200
[2026-08-31 07:22:30,564.564 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:22:30,604.604 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:22:30,692.692 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:22:30,695.695 INFO    ] No camera update needed
[2026-08-31 07:22:30,697.697 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:22:30,700.700 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:22:30,705.705 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:22:30,710.710 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:22:32,750.750 INFO    ] ================================================
[2026-08-31 07:22:32,765.765 INFO    ] Launching Daemon at Mon Aug 31 07:22:32 IST 2026
[2026-08-31 07:22:32,776.776 INFO    ] ================================================
[2026-08-31 07:22:33,368.368 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:22:33
[2026-08-31 07:22:33,953.953 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:22:34,225.225 INFO    ] Initializing speech engine...
[2026-08-31 07:22:34,234.234 INFO    ] 2026-08-31 07:22:34
[2026-08-31 07:22:34,492.492 INFO    ] 2026-08-31 07:22:34
[2026-08-31 07:22:34,522.522 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:22:34,766.766 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:22:34,775.775 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:22:34,989.989 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:22:35,035.035 INFO    ] time= 31/08/2026 07:22:35
[2026-08-31 07:22:35,041.041 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:22:35,059.059 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:22:35,199.199 INFO    ] No existing commands found in stream
[2026-08-31 07:22:40,214.214 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:22:40,217.217 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-08-31 07:22:42,071.071 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 07:22:42,074.074 INFO    ] Checking for system updates...
[2026-08-31 07:22:42,109.109 INFO    ] 200
[2026-08-31 07:22:42,112.112 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:22:42,164.164 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:22:42,166.166 INFO    ] No update needed
[2026-08-31 07:22:42,169.169 INFO    ] Checking for camera pi updates...
[2026-08-31 07:22:42,219.219 INFO    ] 200
[2026-08-31 07:22:42,221.221 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:22:42,267.267 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:22:42,365.365 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:22:42,368.368 INFO    ] No camera update needed
[2026-08-31 07:22:42,371.371 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:22:42,373.373 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:22:42,379.379 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:22:42,385.385 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:22:44,426.426 INFO    ] ================================================
[2026-08-31 07:22:44,441.441 INFO    ] Launching Daemon at Mon Aug 31 07:22:44 IST 2026
[2026-08-31 07:22:44,452.452 INFO    ] ================================================
[2026-08-31 07:22:45,101.101 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:22:45
[2026-08-31 07:22:45,700.700 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:22:45,959.959 INFO    ] Initializing speech engine...
[2026-08-31 07:22:45,965.965 INFO    ] 2026-08-31 07:22:45
[2026-08-31 07:22:46,259.259 INFO    ] 2026-08-31 07:22:46
[2026-08-31 07:22:46,294.294 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:22:46,494.494 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:22:46,499.499 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:22:46,672.672 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:22:46,680.680 INFO    ] time= 31/08/2026 07:22:46
[2026-08-31 07:22:46,688.688 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:22:46,694.694 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:22:46,815.815 INFO    ] No existing commands found in stream
[2026-08-31 07:22:51,835.835 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:22:51,838.838 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-08-31 07:22:52,915.915 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 07:22:52,918.918 INFO    ] Checking for system updates...
[2026-08-31 07:22:52,953.953 INFO    ] 200
[2026-08-31 07:22:52,956.956 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:22:53,008.008 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:22:53,010.010 INFO    ] No update needed
[2026-08-31 07:22:53,013.013 INFO    ] Checking for camera pi updates...
[2026-08-31 07:22:53,050.050 INFO    ] 200
[2026-08-31 07:22:53,052.052 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:22:53,097.097 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:22:53,176.176 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:22:53,179.179 INFO    ] No camera update needed
[2026-08-31 07:22:53,181.181 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:22:53,184.184 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:22:53,189.189 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:22:53,194.194 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:22:55,233.233 INFO    ] ================================================
[2026-08-31 07:22:55,248.248 INFO    ] Launching Daemon at Mon Aug 31 07:22:55 IST 2026
[2026-08-31 07:22:55,258.258 INFO    ] ================================================
[2026-08-31 07:22:55,825.825 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:22:55
[2026-08-31 07:22:56,413.413 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:22:56,668.668 INFO    ] Initializing speech engine...
[2026-08-31 07:22:56,677.677 INFO    ] 2026-08-31 07:22:56
[2026-08-31 07:22:56,972.972 INFO    ] 2026-08-31 07:22:56
[2026-08-31 07:22:56,999.999 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:22:57,237.237 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:22:57,262.262 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:22:57,462.462 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:22:57,468.468 INFO    ] time= 31/08/2026 07:22:57
[2026-08-31 07:22:57,508.508 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:22:57,568.568 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:22:57,669.669 INFO    ] No existing commands found in stream
[2026-08-31 07:23:02,681.681 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:23:02,684.684 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-08-31 07:23:07,081.081 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 07:23:07,084.084 INFO    ] Checking for system updates...
[2026-08-31 07:23:07,120.120 INFO    ] 200
[2026-08-31 07:23:07,123.123 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:23:07,179.179 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:23:07,181.181 INFO    ] No update needed
[2026-08-31 07:23:07,183.183 INFO    ] Checking for camera pi updates...
[2026-08-31 07:23:07,220.220 INFO    ] 200
[2026-08-31 07:23:07,222.222 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:23:07,267.267 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:23:07,344.344 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:23:07,347.347 INFO    ] No camera update needed
[2026-08-31 07:23:07,350.350 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:23:07,352.352 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:23:07,358.358 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:23:07,364.364 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:23:09,404.404 INFO    ] ================================================
[2026-08-31 07:23:09,419.419 INFO    ] Launching Daemon at Mon Aug 31 07:23:09 IST 2026
[2026-08-31 07:23:09,429.429 INFO    ] ================================================
[2026-08-31 07:23:09,997.997 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:23:09
[2026-08-31 07:23:10,580.580 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:23:10,828.828 INFO    ] Initializing speech engine...
[2026-08-31 07:23:10,850.850 INFO    ] 2026-08-31 07:23:10
[2026-08-31 07:23:11,103.103 INFO    ] 2026-08-31 07:23:11
[2026-08-31 07:23:11,139.139 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:23:11,335.335 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:23:11,390.390 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:23:11,601.601 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:23:11,656.656 INFO    ] time= 31/08/2026 07:23:11
[2026-08-31 07:23:11,662.662 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:23:11,680.680 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:23:11,800.800 INFO    ] No existing commands found in stream
[2026-08-31 07:23:16,819.819 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:23:16,822.822 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-08-31 07:23:18,798.798 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 07:23:18,801.801 INFO    ] Checking for system updates...
[2026-08-31 07:23:18,836.836 INFO    ] 200
[2026-08-31 07:23:18,839.839 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:23:18,892.892 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:23:18,894.894 INFO    ] No update needed
[2026-08-31 07:23:18,896.896 INFO    ] Checking for camera pi updates...
[2026-08-31 07:23:18,931.931 INFO    ] 200
[2026-08-31 07:23:18,933.933 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:23:18,978.978 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:23:19,057.057 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:23:19,060.060 INFO    ] No camera update needed
[2026-08-31 07:23:19,062.062 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:23:19,064.064 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:23:19,070.070 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:23:19,075.075 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:23:21,119.119 INFO    ] ================================================
[2026-08-31 07:23:21,134.134 INFO    ] Launching Daemon at Mon Aug 31 07:23:21 IST 2026
[2026-08-31 07:23:21,144.144 INFO    ] ================================================
[2026-08-31 07:23:21,721.721 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:23:21
[2026-08-31 07:23:22,303.303 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:23:22,549.549 INFO    ] Initializing speech engine...
[2026-08-31 07:23:22,555.555 INFO    ] 2026-08-31 07:23:22
[2026-08-31 07:23:22,825.825 INFO    ] 2026-08-31 07:23:22
[2026-08-31 07:23:22,860.860 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:23:23,110.110 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:23:23,121.121 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:23:23,251.251 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:23:23,288.288 INFO    ] time= 31/08/2026 07:23:23
[2026-08-31 07:23:23,337.337 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:23:23,384.384 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:23:23,513.513 INFO    ] No existing commands found in stream
[2026-08-31 07:23:28,539.539 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:23:28,542.542 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-08-31 07:23:30,350.350 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 07:23:30,353.353 INFO    ] Checking for system updates...
[2026-08-31 07:23:30,392.392 INFO    ] 200
[2026-08-31 07:23:30,394.394 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:23:30,447.447 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:23:30,450.450 INFO    ] No update needed
[2026-08-31 07:23:30,452.452 INFO    ] Checking for camera pi updates...
[2026-08-31 07:23:30,485.485 INFO    ] 200
[2026-08-31 07:23:30,488.488 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:23:30,532.532 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:23:30,612.612 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:23:30,614.614 INFO    ] No camera update needed
[2026-08-31 07:23:30,617.617 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:23:30,619.619 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:23:30,624.624 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:23:30,629.629 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:23:32,673.673 INFO    ] ================================================
[2026-08-31 07:23:32,689.689 INFO    ] Launching Daemon at Mon Aug 31 07:23:32 IST 2026
[2026-08-31 07:23:32,700.700 INFO    ] ================================================
[2026-08-31 07:23:33,303.303 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:23:33
[2026-08-31 07:23:33,890.890 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:23:34,140.140 INFO    ] Initializing speech engine...
[2026-08-31 07:23:34,146.146 INFO    ] 2026-08-31 07:23:34
[2026-08-31 07:23:34,441.441 INFO    ] 2026-08-31 07:23:34
[2026-08-31 07:23:34,480.480 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:23:34,672.672 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:23:34,685.685 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:23:34,827.827 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:23:34,853.853 INFO    ] time= 31/08/2026 07:23:34
[2026-08-31 07:23:34,858.858 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:23:34,864.864 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:23:34,938.938 INFO    ] No existing commands found in stream
[2026-08-31 07:23:39,953.953 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:23:39,956.956 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-08-31 07:23:41,981.981 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 07:23:41,984.984 INFO    ] Checking for system updates...
[2026-08-31 07:23:42,019.019 INFO    ] 200
[2026-08-31 07:23:42,021.021 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:23:42,081.081 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:23:42,083.083 INFO    ] No update needed
[2026-08-31 07:23:42,086.086 INFO    ] Checking for camera pi updates...
[2026-08-31 07:23:42,119.119 INFO    ] 200
[2026-08-31 07:23:42,121.121 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:23:42,166.166 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:23:42,345.345 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:23:42,348.348 INFO    ] No camera update needed
[2026-08-31 07:23:42,351.351 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:23:42,353.353 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:23:42,358.358 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:23:42,363.363 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:23:44,403.403 INFO    ] ================================================
[2026-08-31 07:23:44,418.418 INFO    ] Launching Daemon at Mon Aug 31 07:23:44 IST 2026
[2026-08-31 07:23:44,429.429 INFO    ] ================================================
[2026-08-31 07:23:45,070.070 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:23:45
[2026-08-31 07:23:45,730.730 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:23:46,028.028 INFO    ] Initializing speech engine...
[2026-08-31 07:23:46,041.041 INFO    ] 2026-08-31 07:23:46
[2026-08-31 07:23:46,322.322 INFO    ] 2026-08-31 07:23:46
[2026-08-31 07:23:46,367.367 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:23:46,615.615 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:23:46,621.621 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:23:46,838.838 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:23:46,862.862 INFO    ] time= 31/08/2026 07:23:46
[2026-08-31 07:23:46,883.883 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:23:46,910.910 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:23:47,051.051 INFO    ] No existing commands found in stream
[2026-08-31 07:23:52,082.082 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:23:52,085.085 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-08-31 07:23:52,841.841 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 07:23:52,844.844 INFO    ] Checking for system updates...
[2026-08-31 07:23:52,885.885 INFO    ] 200
[2026-08-31 07:23:52,888.888 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:23:52,945.945 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:23:52,948.948 INFO    ] No update needed
[2026-08-31 07:23:52,951.951 INFO    ] Checking for camera pi updates...
[2026-08-31 07:23:52,989.989 INFO    ] 200
[2026-08-31 07:23:52,991.991 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:23:53,040.040 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:23:53,161.161 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:23:53,164.164 INFO    ] No camera update needed
[2026-08-31 07:23:53,166.166 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:23:53,168.168 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:23:53,173.173 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:23:53,178.178 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:23:55,219.219 INFO    ] ================================================
[2026-08-31 07:23:55,234.234 INFO    ] Launching Daemon at Mon Aug 31 07:23:55 IST 2026
[2026-08-31 07:23:55,244.244 INFO    ] ================================================
[2026-08-31 07:23:55,850.850 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:23:55
[2026-08-31 07:23:56,509.509 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:23:56,807.807 INFO    ] Initializing speech engine...
[2026-08-31 07:23:56,815.815 INFO    ] 2026-08-31 07:23:56
[2026-08-31 07:23:57,098.098 INFO    ] 2026-08-31 07:23:57
[2026-08-31 07:23:57,143.143 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:23:57,427.427 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:23:57,436.436 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:23:57,630.630 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:23:57,638.638 INFO    ] time= 31/08/2026 07:23:57
[2026-08-31 07:23:57,659.659 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:23:57,688.688 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:23:57,798.798 INFO    ] No existing commands found in stream
[2026-08-31 07:24:02,831.831 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:24:02,835.835 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-08-31 07:24:05,405.405 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 07:24:05,408.408 INFO    ] Checking for system updates...
[2026-08-31 07:24:05,448.448 INFO    ] 200
[2026-08-31 07:24:05,451.451 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:24:05,510.510 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:24:05,513.513 INFO    ] No update needed
[2026-08-31 07:24:05,516.516 INFO    ] Checking for camera pi updates...
[2026-08-31 07:24:05,550.550 INFO    ] 200
[2026-08-31 07:24:05,553.553 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:24:05,594.594 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:24:05,675.675 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:24:05,678.678 INFO    ] No camera update needed
[2026-08-31 07:24:05,680.680 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:24:05,683.683 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:24:05,689.689 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:24:05,695.695 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:24:07,734.734 INFO    ] ================================================
[2026-08-31 07:24:07,750.750 INFO    ] Launching Daemon at Mon Aug 31 07:24:07 IST 2026
[2026-08-31 07:24:07,760.760 INFO    ] ================================================
[2026-08-31 07:24:08,401.401 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:24:08
[2026-08-31 07:24:09,065.065 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:24:09,364.364 INFO    ] Initializing speech engine...
[2026-08-31 07:24:09,372.372 INFO    ] 2026-08-31 07:24:09
[2026-08-31 07:24:09,688.688 INFO    ] 2026-08-31 07:24:09
[2026-08-31 07:24:09,773.773 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:24:09,987.987 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:24:09,992.992 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:24:10,165.165 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:24:10,191.191 INFO    ] time= 31/08/2026 07:24:10
[2026-08-31 07:24:10,209.209 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:24:10,218.218 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:24:10,345.345 INFO    ] No existing commands found in stream
[2026-08-31 07:24:15,359.359 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:24:15,362.362 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-08-31 07:24:18,720.720 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 07:24:18,723.723 INFO    ] Checking for system updates...
[2026-08-31 07:24:18,763.763 INFO    ] 200
[2026-08-31 07:24:18,766.766 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:24:18,830.830 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:24:18,833.833 INFO    ] No update needed
[2026-08-31 07:24:18,835.835 INFO    ] Checking for camera pi updates...
[2026-08-31 07:24:18,876.876 INFO    ] 200
[2026-08-31 07:24:18,879.879 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:24:18,924.924 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:24:19,007.007 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:24:19,010.010 INFO    ] No camera update needed
[2026-08-31 07:24:19,013.013 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:24:19,015.015 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:24:19,021.021 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:24:19,027.027 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:24:21,068.068 INFO    ] ================================================
[2026-08-31 07:24:21,082.082 INFO    ] Launching Daemon at Mon Aug 31 07:24:21 IST 2026
[2026-08-31 07:24:21,093.093 INFO    ] ================================================
[2026-08-31 07:24:21,657.657 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:24:21
[2026-08-31 07:24:22,240.240 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:24:22,482.482 INFO    ] Initializing speech engine...
[2026-08-31 07:24:22,490.490 INFO    ] 2026-08-31 07:24:22
[2026-08-31 07:24:22,760.760 INFO    ] 2026-08-31 07:24:22
[2026-08-31 07:24:22,794.794 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:24:23,045.045 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:24:23,056.056 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:24:23,272.272 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:24:23,310.310 INFO    ] time= 31/08/2026 07:24:23
[2026-08-31 07:24:23,316.316 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:24:23,334.334 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:24:23,460.460 INFO    ] No existing commands found in stream
[2026-08-31 07:24:28,476.476 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:24:28,479.479 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-08-31 07:24:31,153.153 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 07:24:31,155.155 INFO    ] Checking for system updates...
[2026-08-31 07:24:31,194.194 INFO    ] 200
[2026-08-31 07:24:31,197.197 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:24:31,255.255 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:24:31,257.257 INFO    ] No update needed
[2026-08-31 07:24:31,260.260 INFO    ] Checking for camera pi updates...
[2026-08-31 07:24:31,297.297 INFO    ] 200
[2026-08-31 07:24:31,299.299 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:24:31,340.340 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:24:31,445.445 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:24:31,448.448 INFO    ] No camera update needed
[2026-08-31 07:24:31,451.451 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:24:31,454.454 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:24:31,460.460 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:24:31,465.465 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:24:33,507.507 INFO    ] ================================================
[2026-08-31 07:24:33,522.522 INFO    ] Launching Daemon at Mon Aug 31 07:24:33 IST 2026
[2026-08-31 07:24:33,532.532 INFO    ] ================================================
[2026-08-31 07:24:34,129.129 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:24:34
[2026-08-31 07:24:34,711.711 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:24:34,977.977 INFO    ] Initializing speech engine...
[2026-08-31 07:24:34,986.986 INFO    ] 2026-08-31 07:24:34
[2026-08-31 07:24:35,231.231 INFO    ] 2026-08-31 07:24:35
[2026-08-31 07:24:35,265.265 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:24:35,457.457 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:24:35,480.480 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:24:35,657.657 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:24:35,694.694 INFO    ] time= 31/08/2026 07:24:35
[2026-08-31 07:24:35,743.743 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:24:35,789.789 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:24:35,921.921 INFO    ] No existing commands found in stream
[2026-08-31 07:24:40,943.943 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:24:40,946.946 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-08-31 07:24:45,031.031 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 07:24:45,034.034 INFO    ] Checking for system updates...
[2026-08-31 07:24:45,070.070 INFO    ] 200
[2026-08-31 07:24:45,073.073 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:24:45,129.129 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:24:45,131.131 INFO    ] No update needed
[2026-08-31 07:24:45,134.134 INFO    ] Checking for camera pi updates...
[2026-08-31 07:24:45,168.168 INFO    ] 200
[2026-08-31 07:24:45,170.170 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:24:45,210.210 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:24:45,291.291 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:24:45,293.293 INFO    ] No camera update needed
[2026-08-31 07:24:45,295.295 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:24:45,298.298 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:24:45,303.303 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:24:45,308.308 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:24:47,349.349 INFO    ] ================================================
[2026-08-31 07:24:47,364.364 INFO    ] Launching Daemon at Mon Aug 31 07:24:47 IST 2026
[2026-08-31 07:24:47,374.374 INFO    ] ================================================
[2026-08-31 07:24:47,960.960 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:24:47
[2026-08-31 07:24:48,544.544 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:24:48,828.828 INFO    ] Initializing speech engine...
[2026-08-31 07:24:48,836.836 INFO    ] 2026-08-31 07:24:48
[2026-08-31 07:24:49,102.102 INFO    ] 2026-08-31 07:24:49
[2026-08-31 07:24:49,139.139 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:24:49,356.356 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:24:49,365.365 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:24:49,585.585 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:24:49,593.593 INFO    ] time= 31/08/2026 07:24:49
[2026-08-31 07:24:49,657.657 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:24:49,702.702 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:24:49,792.792 INFO    ] No existing commands found in stream
[2026-08-31 07:24:54,805.805 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:24:54,808.808 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-08-31 07:24:57,629.629 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 07:24:57,632.632 INFO    ] Checking for system updates...
[2026-08-31 07:24:57,667.667 INFO    ] 200
[2026-08-31 07:24:57,670.670 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:24:57,731.731 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:24:57,733.733 INFO    ] No update needed
[2026-08-31 07:24:57,736.736 INFO    ] Checking for camera pi updates...
[2026-08-31 07:24:57,769.769 INFO    ] 200
[2026-08-31 07:24:57,772.772 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:24:57,829.829 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:24:57,913.913 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:24:57,915.915 INFO    ] No camera update needed
[2026-08-31 07:24:57,918.918 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:24:57,920.920 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:24:57,925.925 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:24:57,930.930 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:24:59,972.972 INFO    ] ================================================
[2026-08-31 07:24:59,987.987 INFO    ] Launching Daemon at Mon Aug 31 07:24:59 IST 2026
[2026-08-31 07:25:00,997.997 INFO    ] ================================================
[2026-08-31 07:25:00,611.611 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:25:00
[2026-08-31 07:25:01,273.273 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:25:01,730.730 INFO    ] Initializing speech engine...
[2026-08-31 07:25:01,733.733 INFO    ] 2026-08-31 07:25:01
[2026-08-31 07:25:02,243.243 INFO    ] 2026-08-31 07:25:02
[2026-08-31 07:25:02,314.314 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:25:02,502.502 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:25:02,519.519 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:25:02,717.717 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:25:02,724.724 INFO    ] time= 31/08/2026 07:25:02
[2026-08-31 07:25:02,735.735 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:25:02,775.775 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:25:02,932.932 INFO    ] No existing commands found in stream
[2026-08-31 07:25:07,949.949 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:25:07,952.952 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-08-31 07:25:10,752.752 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 07:25:10,755.755 INFO    ] Checking for system updates...
[2026-08-31 07:25:10,790.790 INFO    ] 200
[2026-08-31 07:25:10,793.793 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:25:10,845.845 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:25:10,848.848 INFO    ] No update needed
[2026-08-31 07:25:10,850.850 INFO    ] Checking for camera pi updates...
[2026-08-31 07:25:10,884.884 INFO    ] 200
[2026-08-31 07:25:10,886.886 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:25:10,926.926 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:25:11,024.024 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:25:11,027.027 INFO    ] No camera update needed
[2026-08-31 07:25:11,030.030 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:25:11,032.032 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:25:11,037.037 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:25:11,042.042 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:25:13,082.082 INFO    ] ================================================
[2026-08-31 07:25:13,098.098 INFO    ] Launching Daemon at Mon Aug 31 07:25:13 IST 2026
[2026-08-31 07:25:13,108.108 INFO    ] ================================================
[2026-08-31 07:25:13,678.678 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:25:13
[2026-08-31 07:25:14,268.268 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:25:14,539.539 INFO    ] Initializing speech engine...
[2026-08-31 07:25:14,548.548 INFO    ] 2026-08-31 07:25:14
[2026-08-31 07:25:14,796.796 INFO    ] 2026-08-31 07:25:14
[2026-08-31 07:25:14,831.831 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:25:15,086.086 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:25:15,095.095 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:25:15,315.315 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:25:15,353.353 INFO    ] time= 31/08/2026 07:25:15
[2026-08-31 07:25:15,371.371 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:25:15,380.380 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:25:15,508.508 INFO    ] No existing commands found in stream
[2026-08-31 07:25:20,523.523 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:25:20,525.525 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-08-31 07:25:24,248.248 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 07:25:24,251.251 INFO    ] Checking for system updates...
[2026-08-31 07:25:24,288.288 INFO    ] 200
[2026-08-31 07:25:24,290.290 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:25:24,354.354 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:25:24,356.356 INFO    ] No update needed
[2026-08-31 07:25:24,359.359 INFO    ] Checking for camera pi updates...
[2026-08-31 07:25:24,392.392 INFO    ] 200
[2026-08-31 07:25:24,394.394 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:25:24,440.440 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:25:24,525.525 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:25:24,528.528 INFO    ] No camera update needed
[2026-08-31 07:25:24,530.530 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:25:24,532.532 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:25:24,538.538 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:25:24,543.543 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:25:26,584.584 INFO    ] ================================================
[2026-08-31 07:25:26,599.599 INFO    ] Launching Daemon at Mon Aug 31 07:25:26 IST 2026
[2026-08-31 07:25:26,610.610 INFO    ] ================================================
[2026-08-31 07:25:27,260.260 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:25:27
[2026-08-31 07:25:27,937.937 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:25:28,252.252 INFO    ] Initializing speech engine...
[2026-08-31 07:25:28,263.263 INFO    ] 2026-08-31 07:25:28
[2026-08-31 07:25:28,556.556 INFO    ] 2026-08-31 07:25:28
[2026-08-31 07:25:28,606.606 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:25:28,867.867 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:25:28,891.891 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:25:29,093.093 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:25:29,112.112 INFO    ] time= 31/08/2026 07:25:29
[2026-08-31 07:25:29,122.122 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:25:29,152.152 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:25:29,252.252 INFO    ] No existing commands found in stream
[2026-08-31 07:25:34,270.270 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:25:34,274.274 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-08-31 07:25:35,928.928 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 07:25:35,931.931 INFO    ] Checking for system updates...
[2026-08-31 07:25:35,972.972 INFO    ] 200
[2026-08-31 07:25:35,975.975 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:25:36,028.028 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:25:36,030.030 INFO    ] No update needed
[2026-08-31 07:25:36,033.033 INFO    ] Checking for camera pi updates...
[2026-08-31 07:25:36,068.068 INFO    ] 200
[2026-08-31 07:25:36,071.071 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:25:36,112.112 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:25:36,193.193 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:25:36,196.196 INFO    ] No camera update needed
[2026-08-31 07:25:36,199.199 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:25:36,201.201 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:25:36,208.208 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:25:36,213.213 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:25:38,254.254 INFO    ] ================================================
[2026-08-31 07:25:38,269.269 INFO    ] Launching Daemon at Mon Aug 31 07:25:38 IST 2026
[2026-08-31 07:25:38,280.280 INFO    ] ================================================
[2026-08-31 07:25:38,868.868 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:25:38
[2026-08-31 07:25:39,545.545 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:25:39,856.856 INFO    ] Initializing speech engine...
[2026-08-31 07:25:39,863.863 INFO    ] 2026-08-31 07:25:39
[2026-08-31 07:25:40,172.172 INFO    ] 2026-08-31 07:25:40
[2026-08-31 07:25:40,260.260 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:25:40,477.477 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:25:40,486.486 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:25:40,666.666 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:25:40,694.694 INFO    ] time= 31/08/2026 07:25:40
[2026-08-31 07:25:40,713.713 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:25:40,742.742 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:25:40,856.856 INFO    ] No existing commands found in stream
[2026-08-31 07:25:45,883.883 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:25:45,886.886 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-08-31 07:25:49,124.124 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 07:25:49,127.127 INFO    ] Checking for system updates...
[2026-08-31 07:25:49,168.168 INFO    ] 200
[2026-08-31 07:25:49,171.171 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:25:49,224.224 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:25:49,227.227 INFO    ] No update needed
[2026-08-31 07:25:49,230.230 INFO    ] Checking for camera pi updates...
[2026-08-31 07:25:49,265.265 INFO    ] 200
[2026-08-31 07:25:49,268.268 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:25:49,310.310 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:25:49,510.510 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:25:49,513.513 INFO    ] No camera update needed
[2026-08-31 07:25:49,516.516 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:25:49,518.518 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:25:49,525.525 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:25:49,531.531 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:25:51,571.571 INFO    ] ================================================
[2026-08-31 07:25:51,586.586 INFO    ] Launching Daemon at Mon Aug 31 07:25:51 IST 2026
[2026-08-31 07:25:51,597.597 INFO    ] ================================================
[2026-08-31 07:25:52,169.169 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:25:52
[2026-08-31 07:25:52,768.768 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:25:53,046.046 INFO    ] Initializing speech engine...
[2026-08-31 07:25:53,055.055 INFO    ] 2026-08-31 07:25:53
[2026-08-31 07:25:53,307.307 INFO    ] 2026-08-31 07:25:53
[2026-08-31 07:25:53,342.342 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:25:53,605.605 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:25:53,615.615 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:25:53,768.768 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:25:53,795.795 INFO    ] time= 31/08/2026 07:25:53
[2026-08-31 07:25:53,855.855 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:25:53,900.900 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:25:53,981.981 INFO    ] No existing commands found in stream
[2026-08-31 07:25:58,993.993 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:25:58,996.996 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-08-31 07:26:00,727.727 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 07:26:00,729.729 INFO    ] Checking for system updates...
[2026-08-31 07:26:00,765.765 INFO    ] 200
[2026-08-31 07:26:00,768.768 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:26:00,821.821 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:26:00,824.824 INFO    ] No update needed
[2026-08-31 07:26:00,826.826 INFO    ] Checking for camera pi updates...
[2026-08-31 07:26:00,863.863 INFO    ] 200
[2026-08-31 07:26:00,866.866 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:26:00,906.906 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:26:00,983.983 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:26:00,985.985 INFO    ] No camera update needed
[2026-08-31 07:26:00,987.987 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:26:00,990.990 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:26:00,995.995 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:26:01,000.000 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:26:03,071.071 INFO    ] ================================================
[2026-08-31 07:26:03,118.118 INFO    ] Launching Daemon at Mon Aug 31 07:26:03 IST 2026
[2026-08-31 07:26:03,131.131 INFO    ] ================================================
[2026-08-31 07:26:03,769.769 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:26:03
[2026-08-31 07:26:04,367.367 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:26:04,645.645 INFO    ] Initializing speech engine...
[2026-08-31 07:26:04,651.651 INFO    ] 2026-08-31 07:26:04
[2026-08-31 07:26:04,913.913 INFO    ] 2026-08-31 07:26:04
[2026-08-31 07:26:04,967.967 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:26:05,189.189 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:26:05,198.198 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:26:05,367.367 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:26:05,432.432 INFO    ] time= 31/08/2026 07:26:05
[2026-08-31 07:26:05,459.459 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:26:05,465.465 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:26:05,584.584 INFO    ] No existing commands found in stream
[2026-08-31 07:26:10,615.615 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:26:10,618.618 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-08-31 07:26:14,329.329 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 07:26:14,332.332 INFO    ] Checking for system updates...
[2026-08-31 07:26:14,368.368 INFO    ] 200
[2026-08-31 07:26:14,370.370 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:26:14,422.422 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:26:14,424.424 INFO    ] No update needed
[2026-08-31 07:26:14,427.427 INFO    ] Checking for camera pi updates...
[2026-08-31 07:26:14,460.460 INFO    ] 200
[2026-08-31 07:26:14,462.462 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:26:14,507.507 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:26:14,604.604 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:26:14,606.606 INFO    ] No camera update needed
[2026-08-31 07:26:14,609.609 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:26:14,611.611 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:26:14,617.617 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:26:14,622.622 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:26:16,663.663 INFO    ] ================================================
[2026-08-31 07:26:16,678.678 INFO    ] Launching Daemon at Mon Aug 31 07:26:16 IST 2026
[2026-08-31 07:26:16,689.689 INFO    ] ================================================
[2026-08-31 07:26:17,261.261 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:26:17
[2026-08-31 07:26:17,849.849 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:26:18,105.105 INFO    ] Initializing speech engine...
[2026-08-31 07:26:18,124.124 INFO    ] 2026-08-31 07:26:18
[2026-08-31 07:26:18,374.374 INFO    ] 2026-08-31 07:26:18
[2026-08-31 07:26:18,410.410 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:26:18,633.633 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:26:18,692.692 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:26:18,853.853 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:26:18,885.885 INFO    ] time= 31/08/2026 07:26:18
[2026-08-31 07:26:18,939.939 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:26:18,994.994 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:26:19,066.066 INFO    ] No existing commands found in stream
[2026-08-31 07:26:24,077.077 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:26:24,080.080 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-08-31 07:26:28,354.354 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 07:26:28,357.357 INFO    ] Checking for system updates...
[2026-08-31 07:26:28,395.395 INFO    ] 200
[2026-08-31 07:26:28,398.398 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:26:28,452.452 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:26:28,455.455 INFO    ] No update needed
[2026-08-31 07:26:28,458.458 INFO    ] Checking for camera pi updates...
[2026-08-31 07:26:28,493.493 INFO    ] 200
[2026-08-31 07:26:28,495.495 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:26:28,536.536 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:26:28,589.589 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:26:28,592.592 INFO    ] No camera update needed
[2026-08-31 07:26:28,595.595 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:26:28,598.598 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:26:28,604.604 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:26:28,610.610 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:26:30,652.652 INFO    ] ================================================
[2026-08-31 07:26:30,666.666 INFO    ] Launching Daemon at Mon Aug 31 07:26:30 IST 2026
[2026-08-31 07:26:30,677.677 INFO    ] ================================================
[2026-08-31 07:26:31,300.300 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:26:31
[2026-08-31 07:26:31,984.984 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:26:32,308.308 INFO    ] Initializing speech engine...
[2026-08-31 07:26:32,322.322 INFO    ] 2026-08-31 07:26:32
[2026-08-31 07:26:32,680.680 INFO    ] 2026-08-31 07:26:32
[2026-08-31 07:26:32,749.749 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:26:32,943.943 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:26:32,947.947 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:26:33,087.087 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:26:33,135.135 INFO    ] time= 31/08/2026 07:26:33
[2026-08-31 07:26:33,195.195 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:26:33,225.225 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:26:33,356.356 INFO    ] No existing commands found in stream
[2026-08-31 07:26:38,382.382 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:26:38,386.386 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-08-31 07:26:41,664.664 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 07:26:41,667.667 INFO    ] Checking for system updates...
[2026-08-31 07:26:41,705.705 INFO    ] 200
[2026-08-31 07:26:41,708.708 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:26:41,767.767 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:26:41,770.770 INFO    ] No update needed
[2026-08-31 07:26:41,773.773 INFO    ] Checking for camera pi updates...
[2026-08-31 07:26:41,808.808 INFO    ] 200
[2026-08-31 07:26:41,811.811 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:26:41,851.851 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:26:41,931.931 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:26:41,934.934 INFO    ] No camera update needed
[2026-08-31 07:26:41,936.936 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:26:41,939.939 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:26:41,945.945 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:26:41,951.951 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:26:43,991.991 INFO    ] ================================================
[2026-08-31 07:26:44,005.005 INFO    ] Launching Daemon at Mon Aug 31 07:26:44 IST 2026
[2026-08-31 07:26:44,016.016 INFO    ] ================================================
[2026-08-31 07:26:44,584.584 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:26:44
[2026-08-31 07:26:45,169.169 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:26:45,415.415 INFO    ] Initializing speech engine...
[2026-08-31 07:26:45,437.437 INFO    ] 2026-08-31 07:26:45
[2026-08-31 07:26:45,696.696 INFO    ] 2026-08-31 07:26:45
[2026-08-31 07:26:45,731.731 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:26:45,988.988 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:26:45,997.997 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:26:46,182.182 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:26:46,221.221 INFO    ] time= 31/08/2026 07:26:46
[2026-08-31 07:26:46,267.267 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:26:46,274.274 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:26:46,406.406 INFO    ] No existing commands found in stream
[2026-08-31 07:26:51,429.429 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:26:51,432.432 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-08-31 07:26:53,384.384 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 07:26:53,386.386 INFO    ] Checking for system updates...
[2026-08-31 07:26:53,422.422 INFO    ] 200
[2026-08-31 07:26:53,424.424 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:26:53,476.476 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:26:53,478.478 INFO    ] No update needed
[2026-08-31 07:26:53,481.481 INFO    ] Checking for camera pi updates...
[2026-08-31 07:26:53,514.514 INFO    ] 200
[2026-08-31 07:26:53,516.516 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:26:53,561.561 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:26:53,658.658 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:26:53,660.660 INFO    ] No camera update needed
[2026-08-31 07:26:53,663.663 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:26:53,665.665 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:26:53,670.670 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:26:53,675.675 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:26:55,716.716 INFO    ] ================================================
[2026-08-31 07:26:55,733.733 INFO    ] Launching Daemon at Mon Aug 31 07:26:55 IST 2026
[2026-08-31 07:26:55,744.744 INFO    ] ================================================
[2026-08-31 07:26:56,309.309 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:26:56
[2026-08-31 07:26:56,889.889 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:26:57,136.136 INFO    ] Initializing speech engine...
[2026-08-31 07:26:57,158.158 INFO    ] 2026-08-31 07:26:57
[2026-08-31 07:26:57,417.417 INFO    ] 2026-08-31 07:26:57
[2026-08-31 07:26:57,452.452 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:26:57,655.655 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:26:57,714.714 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:26:57,858.858 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:26:57,928.928 INFO    ] time= 31/08/2026 07:26:57
[2026-08-31 07:26:57,987.987 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:26:57,994.994 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:26:58,105.105 INFO    ] No existing commands found in stream
[2026-08-31 07:27:03,127.127 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:27:03,131.131 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-08-31 07:27:08,720.720 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 07:27:08,722.722 INFO    ] Checking for system updates...
[2026-08-31 07:27:08,758.758 INFO    ] 200
[2026-08-31 07:27:08,761.761 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:27:08,813.813 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:27:08,816.816 INFO    ] No update needed
[2026-08-31 07:27:08,818.818 INFO    ] Checking for camera pi updates...
[2026-08-31 07:27:08,851.851 INFO    ] 200
[2026-08-31 07:27:08,854.854 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:27:08,895.895 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:27:08,997.997 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:27:08,999.999 INFO    ] No camera update needed
[2026-08-31 07:27:09,002.002 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:27:09,004.004 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:27:09,009.009 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:27:09,014.014 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:27:11,055.055 INFO    ] ================================================
[2026-08-31 07:27:11,071.071 INFO    ] Launching Daemon at Mon Aug 31 07:27:11 IST 2026
[2026-08-31 07:27:11,082.082 INFO    ] ================================================
[2026-08-31 07:27:11,648.648 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:27:11
[2026-08-31 07:27:12,233.233 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:27:12,490.490 INFO    ] Initializing speech engine...
[2026-08-31 07:27:12,496.496 INFO    ] 2026-08-31 07:27:12
[2026-08-31 07:27:12,799.799 INFO    ] 2026-08-31 07:27:12
[2026-08-31 07:27:12,834.834 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:27:13,024.024 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:27:13,026.026 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:27:13,182.182 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:27:13,189.189 INFO    ] time= 31/08/2026 07:27:13
[2026-08-31 07:27:13,230.230 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:27:13,256.256 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:27:13,384.384 INFO    ] No existing commands found in stream
[2026-08-31 07:27:18,413.413 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:27:18,420.420 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-08-31 07:27:20,943.943 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 07:27:20,945.945 INFO    ] Checking for system updates...
[2026-08-31 07:27:20,981.981 INFO    ] 200
[2026-08-31 07:27:20,984.984 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:27:21,035.035 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:27:21,038.038 INFO    ] No update needed
[2026-08-31 07:27:21,040.040 INFO    ] Checking for camera pi updates...
[2026-08-31 07:27:21,073.073 INFO    ] 200
[2026-08-31 07:27:21,076.076 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:27:21,122.122 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:27:21,194.194 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:27:21,197.197 INFO    ] No camera update needed
[2026-08-31 07:27:21,199.199 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:27:21,202.202 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:27:21,207.207 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:27:21,212.212 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:27:23,253.253 INFO    ] ================================================
[2026-08-31 07:27:23,268.268 INFO    ] Launching Daemon at Mon Aug 31 07:27:23 IST 2026
[2026-08-31 07:27:23,279.279 INFO    ] ================================================
[2026-08-31 07:27:23,907.907 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:27:23
[2026-08-31 07:27:24,496.496 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:27:24,748.748 INFO    ] Initializing speech engine...
[2026-08-31 07:27:24,755.755 INFO    ] 2026-08-31 07:27:24
[2026-08-31 07:27:25,061.061 INFO    ] 2026-08-31 07:27:25
[2026-08-31 07:27:25,099.099 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:27:25,308.308 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:27:25,325.325 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:27:25,460.460 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:27:25,482.482 INFO    ] time= 31/08/2026 07:27:25
[2026-08-31 07:27:25,487.487 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:27:25,493.493 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:27:25,566.566 INFO    ] No existing commands found in stream
[2026-08-31 07:27:30,579.579 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:27:30,582.582 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-08-31 07:27:33,715.715 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 07:27:33,718.718 INFO    ] Checking for system updates...
[2026-08-31 07:27:33,760.760 INFO    ] 200
[2026-08-31 07:27:33,767.767 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:27:33,830.830 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:27:33,833.833 INFO    ] No update needed
[2026-08-31 07:27:33,836.836 INFO    ] Checking for camera pi updates...
[2026-08-31 07:27:33,870.870 INFO    ] 200
[2026-08-31 07:27:33,873.873 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:27:33,916.916 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:27:34,023.023 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:27:34,026.026 INFO    ] No camera update needed
[2026-08-31 07:27:34,029.029 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:27:34,032.032 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:27:34,038.038 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:27:34,044.044 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:27:36,088.088 INFO    ] ================================================
[2026-08-31 07:27:36,104.104 INFO    ] Launching Daemon at Mon Aug 31 07:27:36 IST 2026
[2026-08-31 07:27:36,115.115 INFO    ] ================================================
[2026-08-31 07:27:36,679.679 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:27:36
[2026-08-31 07:27:37,262.262 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:27:37,512.512 INFO    ] Initializing speech engine...
[2026-08-31 07:27:37,534.534 INFO    ] 2026-08-31 07:27:37
[2026-08-31 07:27:37,790.790 INFO    ] 2026-08-31 07:27:37
[2026-08-31 07:27:37,826.826 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:27:38,083.083 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:27:38,092.092 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:27:38,309.309 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:27:38,357.357 INFO    ] time= 31/08/2026 07:27:38
[2026-08-31 07:27:38,363.363 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:27:38,380.380 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:27:38,515.515 INFO    ] No existing commands found in stream
[2026-08-31 07:27:43,536.536 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:27:43,543.543 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-08-31 07:27:44,843.843 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 07:27:44,846.846 INFO    ] Checking for system updates...
[2026-08-31 07:27:44,883.883 INFO    ] 200
[2026-08-31 07:27:44,886.886 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:27:44,940.940 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:27:44,943.943 INFO    ] No update needed
[2026-08-31 07:27:44,946.946 INFO    ] Checking for camera pi updates...
[2026-08-31 07:27:44,982.982 INFO    ] 200
[2026-08-31 07:27:44,984.984 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:27:45,028.028 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:27:45,108.108 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:27:45,111.111 INFO    ] No camera update needed
[2026-08-31 07:27:45,113.113 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:27:45,115.115 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:27:45,121.121 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:27:45,126.126 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:27:47,165.165 INFO    ] ================================================
[2026-08-31 07:27:47,181.181 INFO    ] Launching Daemon at Mon Aug 31 07:27:47 IST 2026
[2026-08-31 07:27:47,191.191 INFO    ] ================================================
[2026-08-31 07:27:47,758.758 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:27:47
[2026-08-31 07:27:48,343.343 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:27:48,617.617 INFO    ] Initializing speech engine...
[2026-08-31 07:27:48,627.627 INFO    ] 2026-08-31 07:27:48
[2026-08-31 07:27:48,880.880 INFO    ] 2026-08-31 07:27:48
[2026-08-31 07:27:48,915.915 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:27:49,176.176 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:27:49,185.185 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:27:49,325.325 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:27:49,375.375 INFO    ] time= 31/08/2026 07:27:49
[2026-08-31 07:27:49,439.439 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:27:49,462.462 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:27:49,591.591 INFO    ] No existing commands found in stream
[2026-08-31 07:27:54,616.616 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:27:54,619.619 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-08-31 07:27:58,153.153 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 07:27:58,156.156 INFO    ] Checking for system updates...
[2026-08-31 07:27:58,191.191 INFO    ] 200
[2026-08-31 07:27:58,194.194 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:27:58,246.246 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:27:58,249.249 INFO    ] No update needed
[2026-08-31 07:27:58,251.251 INFO    ] Checking for camera pi updates...
[2026-08-31 07:27:58,294.294 INFO    ] 200
[2026-08-31 07:27:58,296.296 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:27:58,343.343 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:27:58,521.521 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:27:58,524.524 INFO    ] No camera update needed
[2026-08-31 07:27:58,526.526 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:27:58,528.528 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:27:58,534.534 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:27:58,539.539 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:28:00,579.579 INFO    ] ================================================
[2026-08-31 07:28:00,595.595 INFO    ] Launching Daemon at Mon Aug 31 07:28:00 IST 2026
[2026-08-31 07:28:00,606.606 INFO    ] ================================================
[2026-08-31 07:28:01,174.174 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:28:01
[2026-08-31 07:28:01,879.879 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:28:02,242.242 INFO    ] Initializing speech engine...
[2026-08-31 07:28:02,249.249 INFO    ] 2026-08-31 07:28:02
[2026-08-31 07:28:02,538.538 INFO    ] 2026-08-31 07:28:02
[2026-08-31 07:28:02,575.575 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:28:02,843.843 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:28:02,849.849 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:28:03,083.083 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:28:03,131.131 INFO    ] time= 31/08/2026 07:28:03
[2026-08-31 07:28:03,142.142 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:28:03,165.165 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:28:03,293.293 INFO    ] No existing commands found in stream
[2026-08-31 07:28:08,316.316 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:28:08,319.319 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-08-31 07:28:09,879.879 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 07:28:09,882.882 INFO    ] Checking for system updates...
[2026-08-31 07:28:09,918.918 INFO    ] 200
[2026-08-31 07:28:09,920.920 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:28:09,972.972 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:28:09,975.975 INFO    ] No update needed
[2026-08-31 07:28:09,977.977 INFO    ] Checking for camera pi updates...
[2026-08-31 07:28:10,011.011 INFO    ] 200
[2026-08-31 07:28:10,014.014 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:28:10,054.054 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:28:10,156.156 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:28:10,159.159 INFO    ] No camera update needed
[2026-08-31 07:28:10,161.161 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:28:10,164.164 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:28:10,169.169 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:28:10,174.174 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:28:12,214.214 INFO    ] ================================================
[2026-08-31 07:28:12,229.229 INFO    ] Launching Daemon at Mon Aug 31 07:28:12 IST 2026
[2026-08-31 07:28:12,239.239 INFO    ] ================================================
[2026-08-31 07:28:12,829.829 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:28:12
[2026-08-31 07:28:13,433.433 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:28:13,707.707 INFO    ] Initializing speech engine...
[2026-08-31 07:28:13,716.716 INFO    ] 2026-08-31 07:28:13
[2026-08-31 07:28:13,965.965 INFO    ] 2026-08-31 07:28:13
[2026-08-31 07:28:14,002.002 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:28:14,253.253 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:28:14,263.263 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:28:14,397.397 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:28:14,457.457 INFO    ] time= 31/08/2026 07:28:14
[2026-08-31 07:28:14,506.506 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:28:14,531.531 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:28:14,656.656 INFO    ] No existing commands found in stream
[2026-08-31 07:28:19,684.684 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:28:19,687.687 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-08-31 07:28:22,648.648 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 07:28:22,651.651 INFO    ] Checking for system updates...
[2026-08-31 07:28:22,689.689 INFO    ] 200
[2026-08-31 07:28:22,692.692 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:28:22,755.755 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:28:22,757.757 INFO    ] No update needed
[2026-08-31 07:28:22,760.760 INFO    ] Checking for camera pi updates...
[2026-08-31 07:28:22,793.793 INFO    ] 200
[2026-08-31 07:28:22,796.796 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:28:22,836.836 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:28:22,918.918 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:28:22,920.920 INFO    ] No camera update needed
[2026-08-31 07:28:22,923.923 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:28:22,925.925 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:28:22,931.931 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:28:22,936.936 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:28:24,976.976 INFO    ] ================================================
[2026-08-31 07:28:24,991.991 INFO    ] Launching Daemon at Mon Aug 31 07:28:24 IST 2026
[2026-08-31 07:28:25,002.002 INFO    ] ================================================
[2026-08-31 07:28:25,568.568 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:28:25
[2026-08-31 07:28:26,151.151 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:28:26,418.418 INFO    ] Initializing speech engine...
[2026-08-31 07:28:26,427.427 INFO    ] 2026-08-31 07:28:26
[2026-08-31 07:28:26,673.673 INFO    ] 2026-08-31 07:28:26
[2026-08-31 07:28:26,708.708 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:28:26,959.959 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:28:26,968.968 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:28:27,107.107 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:28:27,177.177 INFO    ] time= 31/08/2026 07:28:27
[2026-08-31 07:28:27,227.227 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:28:27,235.235 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:28:27,381.381 INFO    ] No existing commands found in stream
[2026-08-31 07:28:32,400.400 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:28:32,403.403 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-08-31 07:28:33,345.345 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 07:28:33,349.349 INFO    ] Checking for system updates...
[2026-08-31 07:28:33,385.385 INFO    ] 200
[2026-08-31 07:28:33,388.388 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:28:33,440.440 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:28:33,443.443 INFO    ] No update needed
[2026-08-31 07:28:33,445.445 INFO    ] Checking for camera pi updates...
[2026-08-31 07:28:33,484.484 INFO    ] 200
[2026-08-31 07:28:33,486.486 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:28:33,533.533 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:28:33,635.635 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:28:33,637.637 INFO    ] No camera update needed
[2026-08-31 07:28:33,640.640 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:28:33,642.642 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:28:33,647.647 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:28:33,652.652 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:28:35,691.691 INFO    ] ================================================
[2026-08-31 07:28:35,706.706 INFO    ] Launching Daemon at Mon Aug 31 07:28:35 IST 2026
[2026-08-31 07:28:35,717.717 INFO    ] ================================================
[2026-08-31 07:28:36,306.306 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:28:36
[2026-08-31 07:28:36,908.908 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:28:37,184.184 INFO    ] Initializing speech engine...
[2026-08-31 07:28:37,194.194 INFO    ] 2026-08-31 07:28:37
[2026-08-31 07:28:37,442.442 INFO    ] 2026-08-31 07:28:37
[2026-08-31 07:28:37,478.478 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:28:37,733.733 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:28:37,738.738 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:28:37,967.967 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:28:37,997.997 INFO    ] time= 31/08/2026 07:28:37
[2026-08-31 07:28:38,014.014 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:28:38,022.022 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:28:38,149.149 INFO    ] No existing commands found in stream
[2026-08-31 07:28:43,162.162 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:28:43,165.165 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-08-31 07:28:47,161.161 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 07:28:47,164.164 INFO    ] Checking for system updates...
[2026-08-31 07:28:47,205.205 INFO    ] 200
[2026-08-31 07:28:47,207.207 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:28:47,260.260 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:28:47,262.262 INFO    ] No update needed
[2026-08-31 07:28:47,265.265 INFO    ] Checking for camera pi updates...
[2026-08-31 07:28:47,303.303 INFO    ] 200
[2026-08-31 07:28:47,305.305 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:28:47,346.346 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:28:47,434.434 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:28:47,436.436 INFO    ] No camera update needed
[2026-08-31 07:28:47,439.439 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:28:47,441.441 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:28:47,446.446 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:28:47,452.452 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:28:49,493.493 INFO    ] ================================================
[2026-08-31 07:28:49,510.510 INFO    ] Launching Daemon at Mon Aug 31 07:28:49 IST 2026
[2026-08-31 07:28:49,521.521 INFO    ] ================================================
[2026-08-31 07:28:50,128.128 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:28:50
[2026-08-31 07:28:50,716.716 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:28:50,983.983 INFO    ] Initializing speech engine...
[2026-08-31 07:28:50,992.992 INFO    ] 2026-08-31 07:28:50
[2026-08-31 07:28:51,239.239 INFO    ] 2026-08-31 07:28:51
[2026-08-31 07:28:51,274.274 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:28:51,525.525 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:28:51,534.534 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:28:51,749.749 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:28:51,793.793 INFO    ] time= 31/08/2026 07:28:51
[2026-08-31 07:28:51,811.811 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:28:51,819.819 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:28:51,946.946 INFO    ] No existing commands found in stream
[2026-08-31 07:28:56,959.959 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:28:56,961.961 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-08-31 07:29:00,569.569 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 07:29:00,571.571 INFO    ] Checking for system updates...
[2026-08-31 07:29:00,607.607 INFO    ] 200
[2026-08-31 07:29:00,610.610 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:29:00,662.662 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:29:00,665.665 INFO    ] No update needed
[2026-08-31 07:29:00,667.667 INFO    ] Checking for camera pi updates...
[2026-08-31 07:29:00,706.706 INFO    ] 200
[2026-08-31 07:29:00,709.709 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:29:00,755.755 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:29:00,858.858 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:29:00,861.861 INFO    ] No camera update needed
[2026-08-31 07:29:00,863.863 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:29:00,865.865 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:29:00,871.871 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:29:00,876.876 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:29:02,926.926 INFO    ] ================================================
[2026-08-31 07:29:02,949.949 INFO    ] Launching Daemon at Mon Aug 31 07:29:02 IST 2026
[2026-08-31 07:29:02,968.968 INFO    ] ================================================
[2026-08-31 07:29:03,605.605 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:29:03
[2026-08-31 07:29:04,189.189 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:29:04,435.435 INFO    ] Initializing speech engine...
[2026-08-31 07:29:04,449.449 INFO    ] 2026-08-31 07:29:04
[2026-08-31 07:29:04,711.711 INFO    ] 2026-08-31 07:29:04
[2026-08-31 07:29:04,746.746 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:29:04,942.942 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:29:05,000.000 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:29:05,139.139 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:29:05,210.210 INFO    ] time= 31/08/2026 07:29:05
[2026-08-31 07:29:05,266.266 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:29:05,272.272 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:29:05,416.416 INFO    ] No existing commands found in stream
[2026-08-31 07:29:10,429.429 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:29:10,432.432 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-08-31 07:29:14,602.602 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 07:29:14,604.604 INFO    ] Checking for system updates...
[2026-08-31 07:29:14,643.643 INFO    ] 200
[2026-08-31 07:29:14,646.646 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:29:14,697.697 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:29:14,700.700 INFO    ] No update needed
[2026-08-31 07:29:14,702.702 INFO    ] Checking for camera pi updates...
[2026-08-31 07:29:14,739.739 INFO    ] 200
[2026-08-31 07:29:14,742.742 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:29:14,787.787 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:29:14,869.869 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:29:14,871.871 INFO    ] No camera update needed
[2026-08-31 07:29:14,873.873 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:29:14,876.876 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:29:14,881.881 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:29:14,886.886 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:29:16,927.927 INFO    ] ================================================
[2026-08-31 07:29:16,943.943 INFO    ] Launching Daemon at Mon Aug 31 07:29:16 IST 2026
[2026-08-31 07:29:16,954.954 INFO    ] ================================================
[2026-08-31 07:29:17,523.523 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:29:17
[2026-08-31 07:29:18,117.117 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:29:18,420.420 INFO    ] Initializing speech engine...
[2026-08-31 07:29:18,433.433 INFO    ] 2026-08-31 07:29:18
[2026-08-31 07:29:18,719.719 INFO    ] 2026-08-31 07:29:18
[2026-08-31 07:29:18,757.757 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:29:19,047.047 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:29:19,053.053 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:29:19,249.249 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:29:19,270.270 INFO    ] time= 31/08/2026 07:29:19
[2026-08-31 07:29:19,279.279 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:29:19,308.308 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:29:19,418.418 INFO    ] No existing commands found in stream
[2026-08-31 07:29:24,443.443 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:29:24,446.446 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-08-31 07:29:27,325.325 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 07:29:27,329.329 INFO    ] Checking for system updates...
[2026-08-31 07:29:27,370.370 INFO    ] 200
[2026-08-31 07:29:27,372.372 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:29:27,432.432 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:29:27,435.435 INFO    ] No update needed
[2026-08-31 07:29:27,437.437 INFO    ] Checking for camera pi updates...
[2026-08-31 07:29:27,477.477 INFO    ] 200
[2026-08-31 07:29:27,480.480 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:29:27,526.526 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:29:27,636.636 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:29:27,639.639 INFO    ] No camera update needed
[2026-08-31 07:29:27,641.641 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:29:27,644.644 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:29:27,650.650 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:29:27,656.656 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:29:29,697.697 INFO    ] ================================================
[2026-08-31 07:29:29,711.711 INFO    ] Launching Daemon at Mon Aug 31 07:29:29 IST 2026
[2026-08-31 07:29:29,722.722 INFO    ] ================================================
[2026-08-31 07:29:30,286.286 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:29:30
[2026-08-31 07:29:30,868.868 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:29:31,128.128 INFO    ] Initializing speech engine...
[2026-08-31 07:29:31,142.142 INFO    ] 2026-08-31 07:29:31
[2026-08-31 07:29:31,398.398 INFO    ] 2026-08-31 07:29:31
[2026-08-31 07:29:31,431.431 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:29:31,631.631 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:29:31,675.675 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:29:31,838.838 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:29:31,889.889 INFO    ] time= 31/08/2026 07:29:31
[2026-08-31 07:29:31,951.951 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:29:31,991.991 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:29:32,108.108 INFO    ] No existing commands found in stream
[2026-08-31 07:29:37,137.137 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:29:37,140.140 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-08-31 07:29:39,274.274 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 07:29:39,276.276 INFO    ] Checking for system updates...
[2026-08-31 07:29:39,323.323 INFO    ] 200
[2026-08-31 07:29:39,325.325 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:29:39,384.384 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:29:39,387.387 INFO    ] No update needed
[2026-08-31 07:29:39,389.389 INFO    ] Checking for camera pi updates...
[2026-08-31 07:29:39,427.427 INFO    ] 200
[2026-08-31 07:29:39,430.430 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:29:39,474.474 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:29:39,570.570 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:29:39,572.572 INFO    ] No camera update needed
[2026-08-31 07:29:39,574.574 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:29:39,577.577 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:29:39,582.582 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:29:39,587.587 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:29:41,627.627 INFO    ] ================================================
[2026-08-31 07:29:41,642.642 INFO    ] Launching Daemon at Mon Aug 31 07:29:41 IST 2026
[2026-08-31 07:29:41,653.653 INFO    ] ================================================
[2026-08-31 07:29:42,220.220 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:29:42
[2026-08-31 07:29:42,803.803 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:29:43,072.072 INFO    ] Initializing speech engine...
[2026-08-31 07:29:43,081.081 INFO    ] 2026-08-31 07:29:43
[2026-08-31 07:29:43,341.341 INFO    ] 2026-08-31 07:29:43
[2026-08-31 07:29:43,394.394 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:29:43,621.621 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:29:43,626.626 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:29:43,764.764 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:29:43,828.828 INFO    ] time= 31/08/2026 07:29:43
[2026-08-31 07:29:43,886.886 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:29:43,892.892 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:29:44,016.016 INFO    ] No existing commands found in stream
[2026-08-31 07:29:49,043.043 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:29:49,046.046 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-08-31 07:29:52,876.876 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 07:29:52,879.879 INFO    ] Checking for system updates...
[2026-08-31 07:29:52,914.914 INFO    ] 200
[2026-08-31 07:29:52,916.916 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:29:52,980.980 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:29:52,982.982 INFO    ] No update needed
[2026-08-31 07:29:52,984.984 INFO    ] Checking for camera pi updates...
[2026-08-31 07:29:53,021.021 INFO    ] 200
[2026-08-31 07:29:53,024.024 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:29:53,065.065 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:29:53,147.147 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:29:53,150.150 INFO    ] No camera update needed
[2026-08-31 07:29:53,152.152 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:29:53,154.154 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:29:53,160.160 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:29:53,164.164 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:29:55,211.211 INFO    ] ================================================
[2026-08-31 07:29:55,226.226 INFO    ] Launching Daemon at Mon Aug 31 07:29:55 IST 2026
[2026-08-31 07:29:55,236.236 INFO    ] ================================================
[2026-08-31 07:29:55,813.813 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:29:55
[2026-08-31 07:29:56,395.395 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:29:56,671.671 INFO    ] Initializing speech engine...
[2026-08-31 07:29:56,677.677 INFO    ] 2026-08-31 07:29:56
[2026-08-31 07:29:56,926.926 INFO    ] 2026-08-31 07:29:56
[2026-08-31 07:29:56,991.991 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:29:57,207.207 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:29:57,224.224 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:29:57,367.367 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:29:57,409.409 INFO    ] time= 31/08/2026 07:29:57
[2026-08-31 07:29:57,464.464 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:29:57,520.520 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:29:57,588.588 INFO    ] No existing commands found in stream
[2026-08-31 07:30:02,600.600 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:30:02,603.603 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-08-31 07:30:05,510.510 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 07:30:05,513.513 INFO    ] Checking for system updates...
[2026-08-31 07:30:05,551.551 INFO    ] 200
[2026-08-31 07:30:05,553.553 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:30:05,611.611 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:30:05,613.613 INFO    ] No update needed
[2026-08-31 07:30:05,615.615 INFO    ] Checking for camera pi updates...
[2026-08-31 07:30:05,651.651 INFO    ] 200
[2026-08-31 07:30:05,654.654 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:30:05,698.698 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:30:05,758.758 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:30:05,760.760 INFO    ] No camera update needed
[2026-08-31 07:30:05,763.763 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:30:05,765.765 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:30:05,770.770 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:30:05,776.776 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:30:07,816.816 INFO    ] ================================================
[2026-08-31 07:30:07,832.832 INFO    ] Launching Daemon at Mon Aug 31 07:30:07 IST 2026
[2026-08-31 07:30:07,843.843 INFO    ] ================================================
[2026-08-31 07:30:08,409.409 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:30:08
[2026-08-31 07:30:08,992.992 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:30:09,238.238 INFO    ] Initializing speech engine...
[2026-08-31 07:30:09,251.251 INFO    ] 2026-08-31 07:30:09
[2026-08-31 07:30:09,521.521 INFO    ] 2026-08-31 07:30:09
[2026-08-31 07:30:09,556.556 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:30:09,754.754 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:30:09,761.761 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:30:09,982.982 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:30:10,038.038 INFO    ] time= 31/08/2026 07:30:09
[2026-08-31 07:30:10,073.073 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:30:10,111.111 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:30:10,254.254 INFO    ] No existing commands found in stream
[2026-08-31 07:30:15,282.282 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:30:15,284.284 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-08-31 07:30:19,266.266 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 07:30:19,268.268 INFO    ] Checking for system updates...
[2026-08-31 07:30:19,317.317 INFO    ] 200
[2026-08-31 07:30:19,320.320 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:30:19,379.379 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:30:19,381.381 INFO    ] No update needed
[2026-08-31 07:30:19,383.383 INFO    ] Checking for camera pi updates...
[2026-08-31 07:30:19,421.421 INFO    ] 200
[2026-08-31 07:30:19,424.424 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:30:19,471.471 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:30:19,557.557 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:30:19,560.560 INFO    ] No camera update needed
[2026-08-31 07:30:19,563.563 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:30:19,566.566 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:30:19,572.572 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:30:19,578.578 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:30:21,618.618 INFO    ] ================================================
[2026-08-31 07:30:21,633.633 INFO    ] Launching Daemon at Mon Aug 31 07:30:21 IST 2026
[2026-08-31 07:30:21,644.644 INFO    ] ================================================
[2026-08-31 07:30:22,223.223 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:30:22
[2026-08-31 07:30:22,832.832 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:30:23,141.141 INFO    ] Initializing speech engine...
[2026-08-31 07:30:23,152.152 INFO    ] 2026-08-31 07:30:23
[2026-08-31 07:30:23,463.463 INFO    ] 2026-08-31 07:30:23
[2026-08-31 07:30:23,545.545 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:30:23,755.755 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:30:23,764.764 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:30:23,960.960 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:30:23,968.968 INFO    ] time= 31/08/2026 07:30:23
[2026-08-31 07:30:23,989.989 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:30:24,016.016 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:30:24,146.146 INFO    ] No existing commands found in stream
[2026-08-31 07:30:29,172.172 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:30:29,175.175 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-08-31 07:30:30,348.348 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 07:30:30,351.351 INFO    ] Checking for system updates...
[2026-08-31 07:30:30,389.389 INFO    ] 200
[2026-08-31 07:30:30,391.391 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:30:30,451.451 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:30:30,454.454 INFO    ] No update needed
[2026-08-31 07:30:30,457.457 INFO    ] Checking for camera pi updates...
[2026-08-31 07:30:30,492.492 INFO    ] 200
[2026-08-31 07:30:30,495.495 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:30:30,541.541 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:30:30,639.639 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:30:30,642.642 INFO    ] No camera update needed
[2026-08-31 07:30:30,644.644 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:30:30,646.646 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:30:30,651.651 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:30:30,656.656 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:30:32,699.699 INFO    ] ================================================
[2026-08-31 07:30:32,716.716 INFO    ] Launching Daemon at Mon Aug 31 07:30:32 IST 2026
[2026-08-31 07:30:32,727.727 INFO    ] ================================================
[2026-08-31 07:30:33,332.332 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:30:33
[2026-08-31 07:30:34,004.004 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:30:34,304.304 INFO    ] Initializing speech engine...
[2026-08-31 07:30:34,314.314 INFO    ] 2026-08-31 07:30:34
[2026-08-31 07:30:34,589.589 INFO    ] 2026-08-31 07:30:34
[2026-08-31 07:30:34,650.650 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:30:34,878.878 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:30:34,888.888 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:30:35,046.046 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:30:35,102.102 INFO    ] time= 31/08/2026 07:30:35
[2026-08-31 07:30:35,158.158 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:30:35,164.164 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:30:35,315.315 INFO    ] No existing commands found in stream
[2026-08-31 07:30:40,334.334 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:30:40,337.337 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-08-31 07:30:42,785.785 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 07:30:42,787.787 INFO    ] Checking for system updates...
[2026-08-31 07:30:42,823.823 INFO    ] 200
[2026-08-31 07:30:42,825.825 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:30:42,883.883 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:30:42,885.885 INFO    ] No update needed
[2026-08-31 07:30:42,887.887 INFO    ] Checking for camera pi updates...
[2026-08-31 07:30:42,924.924 INFO    ] 200
[2026-08-31 07:30:42,926.926 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:30:42,970.970 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:30:43,050.050 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:30:43,053.053 INFO    ] No camera update needed
[2026-08-31 07:30:43,055.055 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:30:43,057.057 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:30:43,063.063 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:30:43,068.068 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:30:45,110.110 INFO    ] ================================================
[2026-08-31 07:30:45,125.125 INFO    ] Launching Daemon at Mon Aug 31 07:30:45 IST 2026
[2026-08-31 07:30:45,136.136 INFO    ] ================================================
[2026-08-31 07:30:45,705.705 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:30:45
[2026-08-31 07:30:46,287.287 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:30:46,537.537 INFO    ] Initializing speech engine...
[2026-08-31 07:30:46,560.560 INFO    ] 2026-08-31 07:30:46
[2026-08-31 07:30:46,817.817 INFO    ] 2026-08-31 07:30:46
[2026-08-31 07:30:46,852.852 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:30:47,050.050 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:30:47,058.058 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:30:47,254.254 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:30:47,275.275 INFO    ] time= 31/08/2026 07:30:47
[2026-08-31 07:30:47,334.334 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:30:47,386.386 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:30:47,530.530 INFO    ] No existing commands found in stream
[2026-08-31 07:30:52,546.546 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:30:52,549.549 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-08-31 07:30:55,528.528 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 07:30:55,531.531 INFO    ] Checking for system updates...
[2026-08-31 07:30:55,570.570 INFO    ] 200
[2026-08-31 07:30:55,572.572 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:30:55,624.624 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:30:55,627.627 INFO    ] No update needed
[2026-08-31 07:30:55,629.629 INFO    ] Checking for camera pi updates...
[2026-08-31 07:30:55,662.662 INFO    ] 200
[2026-08-31 07:30:55,665.665 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:30:55,713.713 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:30:55,787.787 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:30:55,790.790 INFO    ] No camera update needed
[2026-08-31 07:30:55,792.792 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:30:55,794.794 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:30:55,799.799 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:30:55,804.804 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:30:57,845.845 INFO    ] ================================================
[2026-08-31 07:30:57,860.860 INFO    ] Launching Daemon at Mon Aug 31 07:30:57 IST 2026
[2026-08-31 07:30:57,871.871 INFO    ] ================================================
[2026-08-31 07:30:58,437.437 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:30:58
[2026-08-31 07:30:59,020.020 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:30:59,267.267 INFO    ] Initializing speech engine...
[2026-08-31 07:30:59,275.275 INFO    ] 2026-08-31 07:30:59
[2026-08-31 07:30:59,550.550 INFO    ] 2026-08-31 07:30:59
[2026-08-31 07:30:59,621.621 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:30:59,874.874 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:30:59,879.879 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:31:00,076.076 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:31:00,120.120 INFO    ] time= 31/08/2026 07:31:00
[2026-08-31 07:31:00,126.126 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:31:00,147.147 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:31:00,272.272 INFO    ] No existing commands found in stream
[2026-08-31 07:31:05,289.289 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:31:05,291.291 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-08-31 07:31:08,385.385 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 07:31:08,388.388 INFO    ] Checking for system updates...
[2026-08-31 07:31:08,424.424 INFO    ] 200
[2026-08-31 07:31:08,426.426 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:31:08,479.479 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:31:08,481.481 INFO    ] No update needed
[2026-08-31 07:31:08,484.484 INFO    ] Checking for camera pi updates...
[2026-08-31 07:31:08,517.517 INFO    ] 200
[2026-08-31 07:31:08,519.519 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:31:08,568.568 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:31:08,650.650 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:31:08,652.652 INFO    ] No camera update needed
[2026-08-31 07:31:08,654.654 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:31:08,656.656 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:31:08,662.662 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:31:08,667.667 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:31:10,707.707 INFO    ] ================================================
[2026-08-31 07:31:10,723.723 INFO    ] Launching Daemon at Mon Aug 31 07:31:10 IST 2026
[2026-08-31 07:31:10,739.739 INFO    ] ================================================
[2026-08-31 07:31:11,326.326 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:31:11
[2026-08-31 07:31:11,924.924 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:31:12,200.200 INFO    ] Initializing speech engine...
[2026-08-31 07:31:12,209.209 INFO    ] 2026-08-31 07:31:12
[2026-08-31 07:31:12,462.462 INFO    ] 2026-08-31 07:31:12
[2026-08-31 07:31:12,498.498 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:31:12,670.670 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:31:12,693.693 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:31:12,889.889 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:31:12,941.941 INFO    ] time= 31/08/2026 07:31:12
[2026-08-31 07:31:13,001.001 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:31:13,022.022 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:31:13,159.159 INFO    ] No existing commands found in stream
[2026-08-31 07:31:18,185.185 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:31:18,188.188 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-08-31 07:31:20,043.043 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 07:31:20,046.046 INFO    ] Checking for system updates...
[2026-08-31 07:31:20,085.085 INFO    ] 200
[2026-08-31 07:31:20,088.088 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:31:20,146.146 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:31:20,148.148 INFO    ] No update needed
[2026-08-31 07:31:20,151.151 INFO    ] Checking for camera pi updates...
[2026-08-31 07:31:20,187.187 INFO    ] 200
[2026-08-31 07:31:20,190.190 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:31:20,234.234 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:31:20,315.315 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:31:20,318.318 INFO    ] No camera update needed
[2026-08-31 07:31:20,320.320 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:31:20,322.322 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:31:20,328.328 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:31:20,333.333 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:31:22,373.373 INFO    ] ================================================
[2026-08-31 07:31:22,389.389 INFO    ] Launching Daemon at Mon Aug 31 07:31:22 IST 2026
[2026-08-31 07:31:22,399.399 INFO    ] ================================================
[2026-08-31 07:31:22,979.979 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:31:22
[2026-08-31 07:31:23,648.648 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:31:23,951.951 INFO    ] Initializing speech engine...
[2026-08-31 07:31:23,959.959 INFO    ] 2026-08-31 07:31:23
[2026-08-31 07:31:24,237.237 INFO    ] 2026-08-31 07:31:24
[2026-08-31 07:31:24,290.290 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:31:24,520.520 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:31:24,526.526 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:31:24,752.752 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:31:24,783.783 INFO    ] time= 31/08/2026 07:31:24
[2026-08-31 07:31:24,804.804 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:31:24,822.822 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:31:24,941.941 INFO    ] No existing commands found in stream
[2026-08-31 07:31:29,965.965 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:31:29,968.968 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-08-31 07:31:30,732.732 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 07:31:30,735.735 INFO    ] Checking for system updates...
[2026-08-31 07:31:30,772.772 INFO    ] 200
[2026-08-31 07:31:30,774.774 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:31:30,827.827 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:31:30,830.830 INFO    ] No update needed
[2026-08-31 07:31:30,833.833 INFO    ] Checking for camera pi updates...
[2026-08-31 07:31:30,871.871 INFO    ] 200
[2026-08-31 07:31:30,874.874 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:31:30,918.918 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:31:31,003.003 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:31:31,006.006 INFO    ] No camera update needed
[2026-08-31 07:31:31,009.009 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:31:31,011.011 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:31:31,018.018 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:31:31,023.023 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:31:33,065.065 INFO    ] ================================================
[2026-08-31 07:31:33,081.081 INFO    ] Launching Daemon at Mon Aug 31 07:31:33 IST 2026
[2026-08-31 07:31:33,093.093 INFO    ] ================================================
[2026-08-31 07:31:33,670.670 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:31:33
[2026-08-31 07:31:34,259.259 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:31:34,514.514 INFO    ] Initializing speech engine...
[2026-08-31 07:31:34,522.522 INFO    ] 2026-08-31 07:31:34
[2026-08-31 07:31:34,818.818 INFO    ] 2026-08-31 07:31:34
[2026-08-31 07:31:34,857.857 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:31:35,078.078 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:31:35,086.086 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:31:35,232.232 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:31:35,238.238 INFO    ] time= 31/08/2026 07:31:35
[2026-08-31 07:31:35,245.245 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:31:35,272.272 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:31:35,385.385 INFO    ] No existing commands found in stream
[2026-08-31 07:31:40,410.410 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:31:40,412.412 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-08-31 07:31:42,669.669 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 07:31:42,672.672 INFO    ] Checking for system updates...
[2026-08-31 07:31:42,709.709 INFO    ] 200
[2026-08-31 07:31:42,712.712 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:31:42,765.765 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:31:42,767.767 INFO    ] No update needed
[2026-08-31 07:31:42,770.770 INFO    ] Checking for camera pi updates...
[2026-08-31 07:31:42,805.805 INFO    ] 200
[2026-08-31 07:31:42,808.808 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:31:42,850.850 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:31:42,930.930 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:31:42,933.933 INFO    ] No camera update needed
[2026-08-31 07:31:42,936.936 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:31:42,938.938 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:31:42,945.945 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:31:42,950.950 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:31:44,993.993 INFO    ] ================================================
[2026-08-31 07:31:45,009.009 INFO    ] Launching Daemon at Mon Aug 31 07:31:45 IST 2026
[2026-08-31 07:31:45,020.020 INFO    ] ================================================
[2026-08-31 07:31:45,676.676 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:31:45
[2026-08-31 07:31:46,346.346 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:31:46,646.646 INFO    ] Initializing speech engine...
[2026-08-31 07:31:46,654.654 INFO    ] 2026-08-31 07:31:46
[2026-08-31 07:31:46,931.931 INFO    ] 2026-08-31 07:31:46
[2026-08-31 07:31:47,008.008 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:31:47,223.223 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:31:47,229.229 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:31:47,455.455 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:31:47,492.492 INFO    ] time= 31/08/2026 07:31:47
[2026-08-31 07:31:47,511.511 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:31:47,536.536 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:31:47,658.658 INFO    ] No existing commands found in stream
[2026-08-31 07:31:52,683.683 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:31:52,686.686 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-08-31 07:31:54,815.815 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 07:31:54,821.821 INFO    ] Checking for system updates...
[2026-08-31 07:31:54,862.862 INFO    ] 200
[2026-08-31 07:31:54,864.864 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:31:54,924.924 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:31:54,926.926 INFO    ] No update needed
[2026-08-31 07:31:54,928.928 INFO    ] Checking for camera pi updates...
[2026-08-31 07:31:54,966.966 INFO    ] 200
[2026-08-31 07:31:54,968.968 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:31:55,013.013 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:31:55,103.103 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:31:55,105.105 INFO    ] No camera update needed
[2026-08-31 07:31:55,108.108 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:31:55,110.110 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:31:55,115.115 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:31:55,121.121 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:31:57,161.161 INFO    ] ================================================
[2026-08-31 07:31:57,178.178 INFO    ] Launching Daemon at Mon Aug 31 07:31:57 IST 2026
[2026-08-31 07:31:57,189.189 INFO    ] ================================================
[2026-08-31 07:31:57,843.843 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:31:57
[2026-08-31 07:31:58,518.518 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:31:58,820.820 INFO    ] Initializing speech engine...
[2026-08-31 07:31:58,832.832 INFO    ] 2026-08-31 07:31:58
[2026-08-31 07:31:59,148.148 INFO    ] 2026-08-31 07:31:59
[2026-08-31 07:31:59,226.226 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:31:59,442.442 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:31:59,451.451 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:31:59,646.646 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:31:59,664.664 INFO    ] time= 31/08/2026 07:31:59
[2026-08-31 07:31:59,674.674 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:31:59,703.703 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:31:59,827.827 INFO    ] No existing commands found in stream
[2026-08-31 07:32:04,863.863 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:32:04,866.866 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-08-31 07:32:09,173.173 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 07:32:09,176.176 INFO    ] Checking for system updates...
[2026-08-31 07:32:09,213.213 INFO    ] 200
[2026-08-31 07:32:09,216.216 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:32:09,269.269 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:32:09,272.272 INFO    ] No update needed
[2026-08-31 07:32:09,275.275 INFO    ] Checking for camera pi updates...
[2026-08-31 07:32:09,310.310 INFO    ] 200
[2026-08-31 07:32:09,312.312 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:32:09,354.354 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:32:09,548.548 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:32:09,551.551 INFO    ] No camera update needed
[2026-08-31 07:32:09,553.553 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:32:09,556.556 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:32:09,563.563 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:32:09,568.568 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:32:11,612.612 INFO    ] ================================================
[2026-08-31 07:32:11,627.627 INFO    ] Launching Daemon at Mon Aug 31 07:32:11 IST 2026
[2026-08-31 07:32:11,639.639 INFO    ] ================================================
[2026-08-31 07:32:12,291.291 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:32:12
[2026-08-31 07:32:12,960.960 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:32:13,263.263 INFO    ] Initializing speech engine...
[2026-08-31 07:32:13,276.276 INFO    ] 2026-08-31 07:32:13
[2026-08-31 07:32:13,561.561 INFO    ] 2026-08-31 07:32:13
[2026-08-31 07:32:13,670.670 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:32:13,883.883 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:32:13,892.892 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:32:14,087.087 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:32:14,096.096 INFO    ] time= 31/08/2026 07:32:14
[2026-08-31 07:32:14,118.118 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:32:14,147.147 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:32:14,266.266 INFO    ] No existing commands found in stream
[2026-08-31 07:32:19,290.290 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:32:19,294.294 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-08-31 07:32:22,786.786 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 07:32:22,789.789 INFO    ] Checking for system updates...
[2026-08-31 07:32:22,826.826 INFO    ] 200
[2026-08-31 07:32:22,829.829 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:32:22,889.889 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:32:22,891.891 INFO    ] No update needed
[2026-08-31 07:32:22,893.893 INFO    ] Checking for camera pi updates...
[2026-08-31 07:32:22,927.927 INFO    ] 200
[2026-08-31 07:32:22,930.930 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:32:22,975.975 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:32:23,055.055 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:32:23,057.057 INFO    ] No camera update needed
[2026-08-31 07:32:23,060.060 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:32:23,062.062 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:32:23,067.067 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:32:23,072.072 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:32:25,114.114 INFO    ] ================================================
[2026-08-31 07:32:25,130.130 INFO    ] Launching Daemon at Mon Aug 31 07:32:25 IST 2026
[2026-08-31 07:32:25,142.142 INFO    ] ================================================
[2026-08-31 07:32:25,725.725 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:32:25
[2026-08-31 07:32:26,306.306 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:32:26,567.567 INFO    ] Initializing speech engine...
[2026-08-31 07:32:26,591.591 INFO    ] 2026-08-31 07:32:26
[2026-08-31 07:32:26,861.861 INFO    ] 2026-08-31 07:32:26
[2026-08-31 07:32:26,897.897 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:32:27,119.119 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:32:27,142.142 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:32:27,277.277 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:32:27,315.315 INFO    ] time= 31/08/2026 07:32:27
[2026-08-31 07:32:27,352.352 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:32:27,358.358 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:32:27,499.499 INFO    ] No existing commands found in stream
[2026-08-31 07:32:32,512.512 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:32:32,515.515 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-08-31 07:32:35,806.806 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 07:32:35,809.809 INFO    ] Checking for system updates...
[2026-08-31 07:32:35,848.848 INFO    ] 200
[2026-08-31 07:32:35,851.851 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:32:35,903.903 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:32:35,905.905 INFO    ] No update needed
[2026-08-31 07:32:35,907.907 INFO    ] Checking for camera pi updates...
[2026-08-31 07:32:35,944.944 INFO    ] 200
[2026-08-31 07:32:35,947.947 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:32:35,987.987 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:32:36,070.070 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:32:36,072.072 INFO    ] No camera update needed
[2026-08-31 07:32:36,075.075 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:32:36,077.077 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:32:36,082.082 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:32:36,087.087 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:32:38,129.129 INFO    ] ================================================
[2026-08-31 07:32:38,144.144 INFO    ] Launching Daemon at Mon Aug 31 07:32:38 IST 2026
[2026-08-31 07:32:38,155.155 INFO    ] ================================================
[2026-08-31 07:32:38,726.726 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:32:38
[2026-08-31 07:32:39,313.313 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:32:39,560.560 INFO    ] Initializing speech engine...
[2026-08-31 07:32:39,574.574 INFO    ] 2026-08-31 07:32:39
[2026-08-31 07:32:39,836.836 INFO    ] 2026-08-31 07:32:39
[2026-08-31 07:32:39,871.871 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:32:40,129.129 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:32:40,138.138 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:32:40,273.273 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:32:40,315.315 INFO    ] time= 31/08/2026 07:32:40
[2026-08-31 07:32:40,369.369 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:32:40,406.406 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:32:40,490.490 INFO    ] No existing commands found in stream
[2026-08-31 07:32:45,526.526 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:32:45,529.529 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-08-31 07:32:46,546.546 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 07:32:46,548.548 INFO    ] Checking for system updates...
[2026-08-31 07:32:46,584.584 INFO    ] 200
[2026-08-31 07:32:46,587.587 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:32:46,643.643 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:32:46,646.646 INFO    ] No update needed
[2026-08-31 07:32:46,648.648 INFO    ] Checking for camera pi updates...
[2026-08-31 07:32:46,681.681 INFO    ] 200
[2026-08-31 07:32:46,683.683 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:32:46,731.731 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:32:46,832.832 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:32:46,835.835 INFO    ] No camera update needed
[2026-08-31 07:32:46,837.837 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:32:46,839.839 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:32:46,844.844 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:32:46,849.849 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:32:48,891.891 INFO    ] ================================================
[2026-08-31 07:32:48,906.906 INFO    ] Launching Daemon at Mon Aug 31 07:32:48 IST 2026
[2026-08-31 07:32:48,918.918 INFO    ] ================================================
[2026-08-31 07:32:49,488.488 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:32:49
[2026-08-31 07:32:50,074.074 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:32:50,336.336 INFO    ] Initializing speech engine...
[2026-08-31 07:32:50,353.353 INFO    ] 2026-08-31 07:32:50
[2026-08-31 07:32:50,610.610 INFO    ] 2026-08-31 07:32:50
[2026-08-31 07:32:50,646.646 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:32:50,904.904 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:32:50,914.914 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:32:51,049.049 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:32:51,096.096 INFO    ] time= 31/08/2026 07:32:51
[2026-08-31 07:32:51,140.140 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:32:51,186.186 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:32:51,305.305 INFO    ] No existing commands found in stream
[2026-08-31 07:32:56,327.327 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:32:56,330.330 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-08-31 07:32:57,946.946 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 07:32:57,949.949 INFO    ] Checking for system updates...
[2026-08-31 07:32:57,988.988 INFO    ] 200
[2026-08-31 07:32:57,990.990 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:32:58,048.048 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:32:58,051.051 INFO    ] No update needed
[2026-08-31 07:32:58,053.053 INFO    ] Checking for camera pi updates...
[2026-08-31 07:32:58,089.089 INFO    ] 200
[2026-08-31 07:32:58,092.092 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:32:58,132.132 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:32:58,218.218 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:32:58,220.220 INFO    ] No camera update needed
[2026-08-31 07:32:58,223.223 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:32:58,225.225 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:32:58,230.230 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:32:58,235.235 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:33:00,276.276 INFO    ] ================================================
[2026-08-31 07:33:00,291.291 INFO    ] Launching Daemon at Mon Aug 31 07:33:00 IST 2026
[2026-08-31 07:33:00,302.302 INFO    ] ================================================
[2026-08-31 07:33:00,881.881 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:33:00
[2026-08-31 07:33:01,573.573 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:33:01,957.957 INFO    ] Initializing speech engine...
[2026-08-31 07:33:01,969.969 INFO    ] 2026-08-31 07:33:01
[2026-08-31 07:33:02,261.261 INFO    ] 2026-08-31 07:33:02
[2026-08-31 07:33:02,301.301 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:33:02,543.543 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:33:02,564.564 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:33:02,709.709 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:33:02,713.713 INFO    ] time= 31/08/2026 07:33:02
[2026-08-31 07:33:02,738.738 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:33:02,806.806 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:33:02,926.926 INFO    ] No existing commands found in stream
[2026-08-31 07:33:07,953.953 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:33:07,956.956 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-08-31 07:33:10,955.955 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 07:33:10,957.957 INFO    ] Checking for system updates...
[2026-08-31 07:33:10,993.993 INFO    ] 200
[2026-08-31 07:33:10,995.995 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:33:11,049.049 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:33:11,052.052 INFO    ] No update needed
[2026-08-31 07:33:11,054.054 INFO    ] Checking for camera pi updates...
[2026-08-31 07:33:11,090.090 INFO    ] 200
[2026-08-31 07:33:11,092.092 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:33:11,132.132 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:33:11,218.218 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:33:11,220.220 INFO    ] No camera update needed
[2026-08-31 07:33:11,222.222 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:33:11,224.224 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:33:11,230.230 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:33:11,235.235 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:33:13,274.274 INFO    ] ================================================
[2026-08-31 07:33:13,290.290 INFO    ] Launching Daemon at Mon Aug 31 07:33:13 IST 2026
[2026-08-31 07:33:13,301.301 INFO    ] ================================================
[2026-08-31 07:33:13,880.880 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:33:13
[2026-08-31 07:33:14,477.477 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:33:14,753.753 INFO    ] Initializing speech engine...
[2026-08-31 07:33:14,762.762 INFO    ] 2026-08-31 07:33:14
[2026-08-31 07:33:15,025.025 INFO    ] 2026-08-31 07:33:15
[2026-08-31 07:33:15,089.089 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:33:15,336.336 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:33:15,347.347 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:33:15,495.495 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:33:15,555.555 INFO    ] time= 31/08/2026 07:33:15
[2026-08-31 07:33:15,609.609 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:33:15,642.642 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:33:15,702.702 INFO    ] No existing commands found in stream
[2026-08-31 07:33:20,714.714 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:33:20,717.717 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-08-31 07:33:24,907.907 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 07:33:24,910.910 INFO    ] Checking for system updates...
[2026-08-31 07:33:24,951.951 INFO    ] 200
[2026-08-31 07:33:24,954.954 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:33:25,022.022 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:33:25,024.024 INFO    ] No update needed
[2026-08-31 07:33:25,027.027 INFO    ] Checking for camera pi updates...
[2026-08-31 07:33:25,067.067 INFO    ] 200
[2026-08-31 07:33:25,070.070 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:33:25,136.136 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:33:25,219.219 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:33:25,221.221 INFO    ] No camera update needed
[2026-08-31 07:33:25,223.223 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:33:25,226.226 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:33:25,232.232 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:33:25,239.239 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:33:27,279.279 INFO    ] ================================================
[2026-08-31 07:33:27,294.294 INFO    ] Launching Daemon at Mon Aug 31 07:33:27 IST 2026
[2026-08-31 07:33:27,305.305 INFO    ] ================================================
[2026-08-31 07:33:27,923.923 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:33:27
[2026-08-31 07:33:28,536.536 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:33:28,809.809 INFO    ] Initializing speech engine...
[2026-08-31 07:33:28,815.815 INFO    ] 2026-08-31 07:33:28
[2026-08-31 07:33:29,061.061 INFO    ] 2026-08-31 07:33:29
[2026-08-31 07:33:29,096.096 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:33:29,351.351 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:33:29,356.356 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:33:29,562.562 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:33:29,612.612 INFO    ] time= 31/08/2026 07:33:29
[2026-08-31 07:33:29,619.619 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:33:29,636.636 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:33:29,746.746 INFO    ] No existing commands found in stream
[2026-08-31 07:33:34,773.773 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:33:34,776.776 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-08-31 07:33:38,353.353 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 07:33:38,355.355 INFO    ] Checking for system updates...
[2026-08-31 07:33:38,392.392 INFO    ] 200
[2026-08-31 07:33:38,394.394 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:33:38,454.454 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:33:38,456.456 INFO    ] No update needed
[2026-08-31 07:33:38,459.459 INFO    ] Checking for camera pi updates...
[2026-08-31 07:33:38,492.492 INFO    ] 200
[2026-08-31 07:33:38,494.494 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:33:38,535.535 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:33:38,624.624 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:33:38,627.627 INFO    ] No camera update needed
[2026-08-31 07:33:38,629.629 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:33:38,631.631 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:33:38,637.637 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:33:38,642.642 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:33:40,683.683 INFO    ] ================================================
[2026-08-31 07:33:40,699.699 INFO    ] Launching Daemon at Mon Aug 31 07:33:40 IST 2026
[2026-08-31 07:33:40,709.709 INFO    ] ================================================
[2026-08-31 07:33:41,275.275 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:33:41
[2026-08-31 07:33:41,858.858 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:33:42,114.114 INFO    ] Initializing speech engine...
[2026-08-31 07:33:42,137.137 INFO    ] 2026-08-31 07:33:42
[2026-08-31 07:33:42,409.409 INFO    ] 2026-08-31 07:33:42
[2026-08-31 07:33:42,444.444 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:33:42,700.700 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:33:42,703.703 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:33:42,863.863 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:33:42,884.884 INFO    ] time= 31/08/2026 07:33:42
[2026-08-31 07:33:42,938.938 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:33:42,993.993 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:33:43,112.112 INFO    ] No existing commands found in stream
[2026-08-31 07:33:48,134.134 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:33:48,137.137 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-08-31 07:33:52,427.427 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 07:33:52,430.430 INFO    ] Checking for system updates...
[2026-08-31 07:33:52,466.466 INFO    ] 200
[2026-08-31 07:33:52,469.469 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:33:52,521.521 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:33:52,524.524 INFO    ] No update needed
[2026-08-31 07:33:52,526.526 INFO    ] Checking for camera pi updates...
[2026-08-31 07:33:52,560.560 INFO    ] 200
[2026-08-31 07:33:52,563.563 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:33:52,607.607 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:33:52,695.695 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:33:52,698.698 INFO    ] No camera update needed
[2026-08-31 07:33:52,700.700 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:33:52,703.703 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:33:52,709.709 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:33:52,714.714 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:33:54,754.754 INFO    ] ================================================
[2026-08-31 07:33:54,768.768 INFO    ] Launching Daemon at Mon Aug 31 07:33:54 IST 2026
[2026-08-31 07:33:54,779.779 INFO    ] ================================================
[2026-08-31 07:33:55,346.346 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:33:55
[2026-08-31 07:33:55,936.936 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:33:56,206.206 INFO    ] Initializing speech engine...
[2026-08-31 07:33:56,215.215 INFO    ] 2026-08-31 07:33:56
[2026-08-31 07:33:56,468.468 INFO    ] 2026-08-31 07:33:56
[2026-08-31 07:33:56,526.526 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:33:56,750.750 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:33:56,759.759 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:33:56,890.890 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:33:56,911.911 INFO    ] time= 31/08/2026 07:33:56
[2026-08-31 07:33:56,965.965 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:33:57,022.022 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:33:57,168.168 INFO    ] No existing commands found in stream
[2026-08-31 07:34:02,180.180 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:34:02,183.183 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-08-31 07:34:04,638.638 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 07:34:04,640.640 INFO    ] Checking for system updates...
[2026-08-31 07:34:04,676.676 INFO    ] 200
[2026-08-31 07:34:04,679.679 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:34:04,735.735 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:34:04,738.738 INFO    ] No update needed
[2026-08-31 07:34:04,740.740 INFO    ] Checking for camera pi updates...
[2026-08-31 07:34:04,777.777 INFO    ] 200
[2026-08-31 07:34:04,780.780 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:34:04,823.823 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:34:04,902.902 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:34:04,905.905 INFO    ] No camera update needed
[2026-08-31 07:34:04,907.907 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:34:04,910.910 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:34:04,915.915 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:34:04,920.920 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:34:06,960.960 INFO    ] ================================================
[2026-08-31 07:34:06,975.975 INFO    ] Launching Daemon at Mon Aug 31 07:34:06 IST 2026
[2026-08-31 07:34:06,986.986 INFO    ] ================================================
[2026-08-31 07:34:07,556.556 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:34:07
[2026-08-31 07:34:08,143.143 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:34:08,411.411 INFO    ] Initializing speech engine...
[2026-08-31 07:34:08,426.426 INFO    ] 2026-08-31 07:34:08
[2026-08-31 07:34:08,694.694 INFO    ] 2026-08-31 07:34:08
[2026-08-31 07:34:08,728.728 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:34:08,949.949 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:34:08,978.978 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:34:09,097.097 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:34:09,104.104 INFO    ] time= 31/08/2026 07:34:09
[2026-08-31 07:34:09,131.131 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:34:09,177.177 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:34:09,285.285 INFO    ] No existing commands found in stream
[2026-08-31 07:34:14,310.310 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:34:14,313.313 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-08-31 07:34:16,268.268 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 07:34:16,271.271 INFO    ] Checking for system updates...
[2026-08-31 07:34:16,309.309 INFO    ] 200
[2026-08-31 07:34:16,311.311 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:34:16,363.363 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:34:16,365.365 INFO    ] No update needed
[2026-08-31 07:34:16,368.368 INFO    ] Checking for camera pi updates...
[2026-08-31 07:34:16,403.403 INFO    ] 200
[2026-08-31 07:34:16,406.406 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:34:16,447.447 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:34:16,627.627 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:34:16,630.630 INFO    ] No camera update needed
[2026-08-31 07:34:16,632.632 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:34:16,634.634 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:34:16,640.640 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:34:16,645.645 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:34:18,689.689 INFO    ] ================================================
[2026-08-31 07:34:18,705.705 INFO    ] Launching Daemon at Mon Aug 31 07:34:18 IST 2026
[2026-08-31 07:34:18,715.715 INFO    ] ================================================
[2026-08-31 07:34:19,338.338 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:34:19
[2026-08-31 07:34:19,985.985 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:34:20,261.261 INFO    ] Initializing speech engine...
[2026-08-31 07:34:20,278.278 INFO    ] 2026-08-31 07:34:20
[2026-08-31 07:34:20,541.541 INFO    ] 2026-08-31 07:34:20
[2026-08-31 07:34:20,585.585 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:34:20,833.833 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:34:20,843.843 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:34:21,030.030 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:34:21,085.085 INFO    ] time= 31/08/2026 07:34:21
[2026-08-31 07:34:21,107.107 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:34:21,126.126 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:34:21,196.196 INFO    ] No existing commands found in stream
[2026-08-31 07:34:26,227.227 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:34:26,230.230 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-08-31 07:34:27,916.916 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 07:34:27,919.919 INFO    ] Checking for system updates...
[2026-08-31 07:34:27,959.959 INFO    ] 200
[2026-08-31 07:34:27,961.961 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:34:28,020.020 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:34:28,023.023 INFO    ] No update needed
[2026-08-31 07:34:28,025.025 INFO    ] Checking for camera pi updates...
[2026-08-31 07:34:28,060.060 INFO    ] 200
[2026-08-31 07:34:28,062.062 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:34:28,107.107 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:34:28,189.189 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:34:28,191.191 INFO    ] No camera update needed
[2026-08-31 07:34:28,194.194 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:34:28,196.196 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:34:28,202.202 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:34:28,208.208 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:34:30,249.249 INFO    ] ================================================
[2026-08-31 07:34:30,265.265 INFO    ] Launching Daemon at Mon Aug 31 07:34:30 IST 2026
[2026-08-31 07:34:30,276.276 INFO    ] ================================================
[2026-08-31 07:34:30,908.908 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:34:30
[2026-08-31 07:34:31,557.557 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:34:31,875.875 INFO    ] Initializing speech engine...
[2026-08-31 07:34:31,885.885 INFO    ] 2026-08-31 07:34:31
[2026-08-31 07:34:32,165.165 INFO    ] 2026-08-31 07:34:32
[2026-08-31 07:34:32,206.206 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:34:32,398.398 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:34:32,412.412 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:34:32,575.575 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:34:32,584.584 INFO    ] time= 31/08/2026 07:34:32
[2026-08-31 07:34:32,593.593 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:34:32,635.635 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:34:32,776.776 INFO    ] No existing commands found in stream
[2026-08-31 07:34:37,808.808 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:34:37,811.811 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-08-31 07:34:39,707.707 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 07:34:39,710.710 INFO    ] Checking for system updates...
[2026-08-31 07:34:39,747.747 INFO    ] 200
[2026-08-31 07:34:39,750.750 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:34:39,805.805 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:34:39,808.808 INFO    ] No update needed
[2026-08-31 07:34:39,810.810 INFO    ] Checking for camera pi updates...
[2026-08-31 07:34:39,846.846 INFO    ] 200
[2026-08-31 07:34:39,848.848 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:34:39,891.891 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:34:39,964.964 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:34:39,966.966 INFO    ] No camera update needed
[2026-08-31 07:34:39,969.969 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:34:39,971.971 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:34:39,976.976 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:34:39,981.981 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:34:42,022.022 INFO    ] ================================================
[2026-08-31 07:34:42,037.037 INFO    ] Launching Daemon at Mon Aug 31 07:34:42 IST 2026
[2026-08-31 07:34:42,048.048 INFO    ] ================================================
[2026-08-31 07:34:42,669.669 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:34:42
[2026-08-31 07:34:43,308.308 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:34:43,599.599 INFO    ] Initializing speech engine...
[2026-08-31 07:34:43,607.607 INFO    ] 2026-08-31 07:34:43
[2026-08-31 07:34:43,894.894 INFO    ] 2026-08-31 07:34:43
[2026-08-31 07:34:43,936.936 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:34:44,167.167 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:34:44,174.174 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:34:44,323.323 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:34:44,383.383 INFO    ] time= 31/08/2026 07:34:44
[2026-08-31 07:34:44,434.434 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:34:44,440.440 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:34:44,587.587 INFO    ] No existing commands found in stream
[2026-08-31 07:34:49,611.611 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:34:49,614.614 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-08-31 07:34:51,312.312 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 07:34:51,315.315 INFO    ] Checking for system updates...
[2026-08-31 07:34:51,351.351 INFO    ] 200
[2026-08-31 07:34:51,353.353 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:34:51,405.405 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:34:51,408.408 INFO    ] No update needed
[2026-08-31 07:34:51,411.411 INFO    ] Checking for camera pi updates...
[2026-08-31 07:34:51,444.444 INFO    ] 200
[2026-08-31 07:34:51,447.447 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:34:51,489.489 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:34:51,563.563 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:34:51,566.566 INFO    ] No camera update needed
[2026-08-31 07:34:51,568.568 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:34:51,571.571 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:34:51,577.577 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:34:51,582.582 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:34:53,623.623 INFO    ] ================================================
[2026-08-31 07:34:53,638.638 INFO    ] Launching Daemon at Mon Aug 31 07:34:53 IST 2026
[2026-08-31 07:34:53,649.649 INFO    ] ================================================
[2026-08-31 07:34:54,268.268 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:34:54
[2026-08-31 07:34:54,906.906 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:34:55,197.197 INFO    ] Initializing speech engine...
[2026-08-31 07:34:55,210.210 INFO    ] 2026-08-31 07:34:55
[2026-08-31 07:34:55,474.474 INFO    ] 2026-08-31 07:34:55
[2026-08-31 07:34:55,527.527 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:34:55,754.754 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:34:55,760.760 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:34:55,891.891 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:34:55,951.951 INFO    ] time= 31/08/2026 07:34:55
[2026-08-31 07:34:56,011.011 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:34:56,025.025 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:34:56,173.173 INFO    ] No existing commands found in stream
[2026-08-31 07:35:01,196.196 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:35:01,199.199 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-08-31 07:35:05,525.525 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 07:35:05,530.530 INFO    ] Checking for system updates...
[2026-08-31 07:35:05,571.571 INFO    ] 200
[2026-08-31 07:35:05,574.574 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:35:05,636.636 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:35:05,638.638 INFO    ] No update needed
[2026-08-31 07:35:05,641.641 INFO    ] Checking for camera pi updates...
[2026-08-31 07:35:05,694.694 INFO    ] 200
[2026-08-31 07:35:05,697.697 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:35:05,750.750 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:35:05,834.834 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:35:05,836.836 INFO    ] No camera update needed
[2026-08-31 07:35:05,839.839 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:35:05,842.842 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:35:05,848.848 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:35:05,854.854 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:35:07,897.897 INFO    ] ================================================
[2026-08-31 07:35:07,912.912 INFO    ] Launching Daemon at Mon Aug 31 07:35:07 IST 2026
[2026-08-31 07:35:07,924.924 INFO    ] ================================================
[2026-08-31 07:35:08,492.492 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:35:08
[2026-08-31 07:35:09,076.076 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:35:09,333.333 INFO    ] Initializing speech engine...
[2026-08-31 07:35:09,342.342 INFO    ] 2026-08-31 07:35:09
[2026-08-31 07:35:09,635.635 INFO    ] 2026-08-31 07:35:09
[2026-08-31 07:35:09,660.660 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:35:09,823.823 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:35:09,834.834 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:35:10,012.012 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:35:10,017.017 INFO    ] time= 31/08/2026 07:35:10
[2026-08-31 07:35:10,038.038 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:35:10,059.059 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:35:10,146.146 INFO    ] No existing commands found in stream
[2026-08-31 07:35:15,160.160 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:35:15,163.163 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-08-31 07:35:17,969.969 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 07:35:17,971.971 INFO    ] Checking for system updates...
[2026-08-31 07:35:18,006.006 INFO    ] 200
[2026-08-31 07:35:18,009.009 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:35:18,061.061 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:35:18,063.063 INFO    ] No update needed
[2026-08-31 07:35:18,065.065 INFO    ] Checking for camera pi updates...
[2026-08-31 07:35:18,102.102 INFO    ] 200
[2026-08-31 07:35:18,105.105 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:35:18,153.153 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:35:18,232.232 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:35:18,235.235 INFO    ] No camera update needed
[2026-08-31 07:35:18,237.237 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:35:18,240.240 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:35:18,245.245 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:35:18,250.250 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:35:20,290.290 INFO    ] ================================================
[2026-08-31 07:35:20,305.305 INFO    ] Launching Daemon at Mon Aug 31 07:35:20 IST 2026
[2026-08-31 07:35:20,316.316 INFO    ] ================================================
[2026-08-31 07:35:20,886.886 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:35:20
[2026-08-31 07:35:21,475.475 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:35:21,745.745 INFO    ] Initializing speech engine...
[2026-08-31 07:35:21,755.755 INFO    ] 2026-08-31 07:35:21
[2026-08-31 07:35:22,006.006 INFO    ] 2026-08-31 07:35:21
[2026-08-31 07:35:22,041.041 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:35:22,240.240 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:35:22,253.253 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:35:22,386.386 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:35:22,448.448 INFO    ] time= 31/08/2026 07:35:22
[2026-08-31 07:35:22,455.455 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:35:22,520.520 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:35:22,592.592 INFO    ] No existing commands found in stream
[2026-08-31 07:35:27,613.613 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:35:27,616.616 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-08-31 07:35:30,798.798 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 07:35:30,801.801 INFO    ] Checking for system updates...
[2026-08-31 07:35:30,849.849 INFO    ] 200
[2026-08-31 07:35:30,852.852 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:35:30,904.904 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:35:30,907.907 INFO    ] No update needed
[2026-08-31 07:35:30,909.909 INFO    ] Checking for camera pi updates...
[2026-08-31 07:35:30,942.942 INFO    ] 200
[2026-08-31 07:35:30,945.945 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:35:30,986.986 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:35:31,057.057 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:35:31,060.060 INFO    ] No camera update needed
[2026-08-31 07:35:31,062.062 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:35:31,064.064 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:35:31,070.070 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:35:31,075.075 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:35:33,118.118 INFO    ] ================================================
[2026-08-31 07:35:33,134.134 INFO    ] Launching Daemon at Mon Aug 31 07:35:33 IST 2026
[2026-08-31 07:35:33,145.145 INFO    ] ================================================
[2026-08-31 07:35:33,792.792 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:35:33
[2026-08-31 07:35:34,457.457 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:35:34,762.762 INFO    ] Initializing speech engine...
[2026-08-31 07:35:34,769.769 INFO    ] 2026-08-31 07:35:34
[2026-08-31 07:35:35,027.027 INFO    ] 2026-08-31 07:35:35
[2026-08-31 07:35:35,084.084 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:35:35,351.351 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:35:35,375.375 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:35:35,570.570 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:35:35,588.588 INFO    ] time= 31/08/2026 07:35:35
[2026-08-31 07:35:35,597.597 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:35:35,624.624 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:35:35,731.731 INFO    ] No existing commands found in stream
[2026-08-31 07:35:40,754.754 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:35:40,757.757 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-08-31 07:35:43,558.558 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 07:35:43,560.560 INFO    ] Checking for system updates...
[2026-08-31 07:35:43,599.599 INFO    ] 200
[2026-08-31 07:35:43,602.602 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:35:43,654.654 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:35:43,656.656 INFO    ] No update needed
[2026-08-31 07:35:43,659.659 INFO    ] Checking for camera pi updates...
[2026-08-31 07:35:43,692.692 INFO    ] 200
[2026-08-31 07:35:43,695.695 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:35:43,739.739 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:35:43,824.824 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:35:43,826.826 INFO    ] No camera update needed
[2026-08-31 07:35:43,829.829 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:35:43,831.831 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:35:43,837.837 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:35:43,842.842 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:35:45,883.883 INFO    ] ================================================
[2026-08-31 07:35:45,904.904 INFO    ] Launching Daemon at Mon Aug 31 07:35:45 IST 2026
[2026-08-31 07:35:45,919.919 INFO    ] ================================================
[2026-08-31 07:35:46,491.491 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:35:46
[2026-08-31 07:35:47,134.134 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:35:47,436.436 INFO    ] Initializing speech engine...
[2026-08-31 07:35:47,444.444 INFO    ] 2026-08-31 07:35:47
[2026-08-31 07:35:47,734.734 INFO    ] 2026-08-31 07:35:47
[2026-08-31 07:35:47,779.779 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:35:48,034.034 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:35:48,040.040 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:35:48,232.232 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:35:48,282.282 INFO    ] time= 31/08/2026 07:35:48
[2026-08-31 07:35:48,299.299 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:35:48,311.311 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:35:48,441.441 INFO    ] No existing commands found in stream
[2026-08-31 07:35:53,455.455 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:35:53,458.458 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-08-31 07:35:56,511.511 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 07:35:56,514.514 INFO    ] Checking for system updates...
[2026-08-31 07:35:56,551.551 INFO    ] 200
[2026-08-31 07:35:56,554.554 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:35:56,607.607 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:35:56,610.610 INFO    ] No update needed
[2026-08-31 07:35:56,612.612 INFO    ] Checking for camera pi updates...
[2026-08-31 07:35:56,650.650 INFO    ] 200
[2026-08-31 07:35:56,653.653 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:35:56,698.698 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:35:56,798.798 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:35:56,801.801 INFO    ] No camera update needed
[2026-08-31 07:35:56,803.803 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:35:56,805.805 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:35:56,811.811 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:35:56,816.816 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:35:58,857.857 INFO    ] ================================================
[2026-08-31 07:35:58,872.872 INFO    ] Launching Daemon at Mon Aug 31 07:35:58 IST 2026
[2026-08-31 07:35:58,882.882 INFO    ] ================================================
[2026-08-31 07:35:59,522.522 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:35:59
[2026-08-31 07:36:00,180.180 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:36:00,480.480 INFO    ] Initializing speech engine...
[2026-08-31 07:36:00,488.488 INFO    ] 2026-08-31 07:36:00
[2026-08-31 07:36:00,777.777 INFO    ] 2026-08-31 07:36:00
[2026-08-31 07:36:00,822.822 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:36:01,075.075 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:36:01,082.082 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:36:01,283.283 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:36:01,325.325 INFO    ] time= 31/08/2026 07:36:01
[2026-08-31 07:36:01,342.342 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:36:01,351.351 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:36:01,478.478 INFO    ] No existing commands found in stream
[2026-08-31 07:36:06,490.490 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:36:06,494.494 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-08-31 07:36:07,117.117 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 07:36:07,120.120 INFO    ] Checking for system updates...
[2026-08-31 07:36:07,160.160 INFO    ] 200
[2026-08-31 07:36:07,163.163 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:36:07,216.216 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:36:07,219.219 INFO    ] No update needed
[2026-08-31 07:36:07,222.222 INFO    ] Checking for camera pi updates...
[2026-08-31 07:36:07,256.256 INFO    ] 200
[2026-08-31 07:36:07,259.259 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:36:07,304.304 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:36:07,381.381 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:36:07,384.384 INFO    ] No camera update needed
[2026-08-31 07:36:07,387.387 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:36:07,390.390 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:36:07,396.396 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:36:07,402.402 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:36:09,443.443 INFO    ] ================================================
[2026-08-31 07:36:09,461.461 INFO    ] Launching Daemon at Mon Aug 31 07:36:09 IST 2026
[2026-08-31 07:36:09,471.471 INFO    ] ================================================
[2026-08-31 07:36:10,052.052 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:36:10
[2026-08-31 07:36:10,653.653 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:36:10,932.932 INFO    ] Initializing speech engine...
[2026-08-31 07:36:10,937.937 INFO    ] 2026-08-31 07:36:10
[2026-08-31 07:36:11,203.203 INFO    ] 2026-08-31 07:36:11
[2026-08-31 07:36:11,256.256 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:36:11,486.486 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:36:11,490.490 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:36:11,623.623 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:36:11,673.673 INFO    ] time= 31/08/2026 07:36:11
[2026-08-31 07:36:11,717.717 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:36:11,754.754 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:36:11,855.855 INFO    ] No existing commands found in stream
[2026-08-31 07:36:16,865.865 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:36:16,869.869 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-08-31 07:36:18,665.665 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 07:36:18,668.668 INFO    ] Checking for system updates...
[2026-08-31 07:36:18,705.705 INFO    ] 200
[2026-08-31 07:36:18,707.707 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:36:18,759.759 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:36:18,762.762 INFO    ] No update needed
[2026-08-31 07:36:18,764.764 INFO    ] Checking for camera pi updates...
[2026-08-31 07:36:18,797.797 INFO    ] 200
[2026-08-31 07:36:18,800.800 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:36:18,841.841 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:36:19,019.019 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:36:19,021.021 INFO    ] No camera update needed
[2026-08-31 07:36:19,024.024 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:36:19,026.026 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:36:19,031.031 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:36:19,036.036 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:36:21,082.082 INFO    ] ================================================
[2026-08-31 07:36:21,097.097 INFO    ] Launching Daemon at Mon Aug 31 07:36:21 IST 2026
[2026-08-31 07:36:21,108.108 INFO    ] ================================================
[2026-08-31 07:36:21,687.687 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:36:21
[2026-08-31 07:36:22,288.288 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:36:22,561.561 INFO    ] Initializing speech engine...
[2026-08-31 07:36:22,568.568 INFO    ] 2026-08-31 07:36:22
[2026-08-31 07:36:22,829.829 INFO    ] 2026-08-31 07:36:22
[2026-08-31 07:36:22,859.859 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:36:23,102.102 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:36:23,112.112 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:36:23,245.245 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:36:23,284.284 INFO    ] time= 31/08/2026 07:36:23
[2026-08-31 07:36:23,334.334 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:36:23,375.375 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:36:23,496.496 INFO    ] No existing commands found in stream
[2026-08-31 07:36:28,521.521 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:36:28,524.524 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-08-31 07:36:29,886.886 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 07:36:29,889.889 INFO    ] Checking for system updates...
[2026-08-31 07:36:29,928.928 INFO    ] 200
[2026-08-31 07:36:29,930.930 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:36:29,983.983 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:36:29,986.986 INFO    ] No update needed
[2026-08-31 07:36:29,989.989 INFO    ] Checking for camera pi updates...
[2026-08-31 07:36:30,026.026 INFO    ] 200
[2026-08-31 07:36:30,029.029 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:36:30,074.074 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:36:30,154.154 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:36:30,157.157 INFO    ] No camera update needed
[2026-08-31 07:36:30,160.160 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:36:30,163.163 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:36:30,169.169 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:36:30,175.175 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:36:32,219.219 INFO    ] ================================================
[2026-08-31 07:36:32,237.237 INFO    ] Launching Daemon at Mon Aug 31 07:36:32 IST 2026
[2026-08-31 07:36:32,249.249 INFO    ] ================================================
[2026-08-31 07:36:32,873.873 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:36:32
[2026-08-31 07:36:33,481.481 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:36:33,759.759 INFO    ] Initializing speech engine...
[2026-08-31 07:36:33,768.768 INFO    ] 2026-08-31 07:36:33
[2026-08-31 07:36:34,027.027 INFO    ] 2026-08-31 07:36:34
[2026-08-31 07:36:34,080.080 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:36:34,301.301 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:36:34,311.311 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:36:34,443.443 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:36:34,500.500 INFO    ] time= 31/08/2026 07:36:34
[2026-08-31 07:36:34,554.554 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:36:34,580.580 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:36:34,700.700 INFO    ] No existing commands found in stream
[2026-08-31 07:36:39,730.730 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:36:39,733.733 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-08-31 07:36:41,967.967 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 07:36:41,970.970 INFO    ] Checking for system updates...
[2026-08-31 07:36:42,011.011 INFO    ] 200
[2026-08-31 07:36:42,014.014 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:36:42,072.072 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:36:42,075.075 INFO    ] No update needed
[2026-08-31 07:36:42,078.078 INFO    ] Checking for camera pi updates...
[2026-08-31 07:36:42,112.112 INFO    ] 200
[2026-08-31 07:36:42,115.115 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:36:42,157.157 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:36:42,236.236 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:36:42,239.239 INFO    ] No camera update needed
[2026-08-31 07:36:42,242.242 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:36:42,245.245 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:36:42,251.251 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:36:42,257.257 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:36:44,299.299 INFO    ] ================================================
[2026-08-31 07:36:44,314.314 INFO    ] Launching Daemon at Mon Aug 31 07:36:44 IST 2026
[2026-08-31 07:36:44,325.325 INFO    ] ================================================
[2026-08-31 07:36:44,892.892 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:36:44
[2026-08-31 07:36:45,478.478 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:36:45,728.728 INFO    ] Initializing speech engine...
[2026-08-31 07:36:45,740.740 INFO    ] 2026-08-31 07:36:45
[2026-08-31 07:36:46,007.007 INFO    ] 2026-08-31 07:36:45
[2026-08-31 07:36:46,042.042 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:36:46,245.245 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:36:46,304.304 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:36:46,447.447 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:36:46,464.464 INFO    ] time= 31/08/2026 07:36:46
[2026-08-31 07:36:46,523.523 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:36:46,582.582 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:36:46,720.720 INFO    ] No existing commands found in stream
[2026-08-31 07:36:51,746.746 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:36:51,749.749 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-08-31 07:36:55,115.115 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 07:36:55,118.118 INFO    ] Checking for system updates...
[2026-08-31 07:36:55,153.153 INFO    ] 200
[2026-08-31 07:36:55,156.156 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:36:55,208.208 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:36:55,211.211 INFO    ] No update needed
[2026-08-31 07:36:55,213.213 INFO    ] Checking for camera pi updates...
[2026-08-31 07:36:55,247.247 INFO    ] 200
[2026-08-31 07:36:55,249.249 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:36:55,291.291 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:36:55,370.370 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:36:55,373.373 INFO    ] No camera update needed
[2026-08-31 07:36:55,376.376 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:36:55,379.379 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:36:55,385.385 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:36:55,391.391 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:36:57,432.432 INFO    ] ================================================
[2026-08-31 07:36:57,448.448 INFO    ] Launching Daemon at Mon Aug 31 07:36:57 IST 2026
[2026-08-31 07:36:57,459.459 INFO    ] ================================================
[2026-08-31 07:36:58,115.115 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:36:58
[2026-08-31 07:36:58,793.793 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:36:59,098.098 INFO    ] Initializing speech engine...
[2026-08-31 07:36:59,106.106 INFO    ] 2026-08-31 07:36:59
[2026-08-31 07:36:59,383.383 INFO    ] 2026-08-31 07:36:59
[2026-08-31 07:36:59,439.439 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:36:59,715.715 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:36:59,738.738 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:36:59,939.939 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:36:59,957.957 INFO    ] time= 31/08/2026 07:36:59
[2026-08-31 07:36:59,986.986 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:36:59,998.998 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:37:00,103.103 INFO    ] No existing commands found in stream
[2026-08-31 07:37:05,116.116 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:37:05,119.119 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-08-31 07:37:09,086.086 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 07:37:09,089.089 INFO    ] Checking for system updates...
[2026-08-31 07:37:09,126.126 INFO    ] 200
[2026-08-31 07:37:09,129.129 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:37:09,183.183 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:37:09,186.186 INFO    ] No update needed
[2026-08-31 07:37:09,190.190 INFO    ] Checking for camera pi updates...
[2026-08-31 07:37:09,229.229 INFO    ] 200
[2026-08-31 07:37:09,232.232 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:37:09,274.274 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:37:09,352.352 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:37:09,355.355 INFO    ] No camera update needed
[2026-08-31 07:37:09,358.358 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:37:09,361.361 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:37:09,367.367 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:37:09,373.373 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:37:11,415.415 INFO    ] ================================================
[2026-08-31 07:37:11,430.430 INFO    ] Launching Daemon at Mon Aug 31 07:37:11 IST 2026
[2026-08-31 07:37:11,441.441 INFO    ] ================================================
[2026-08-31 07:37:12,093.093 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:37:12
[2026-08-31 07:37:12,715.715 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:37:12,983.983 INFO    ] Initializing speech engine...
[2026-08-31 07:37:12,992.992 INFO    ] 2026-08-31 07:37:12
[2026-08-31 07:37:13,238.238 INFO    ] 2026-08-31 07:37:13
[2026-08-31 07:37:13,273.273 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:37:13,523.523 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:37:13,532.532 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:37:13,670.670 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:37:13,725.725 INFO    ] time= 31/08/2026 07:37:13
[2026-08-31 07:37:13,774.774 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:37:13,797.797 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:37:13,917.917 INFO    ] No existing commands found in stream
[2026-08-31 07:37:18,942.942 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:37:18,945.945 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-08-31 07:37:20,430.430 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 07:37:20,433.433 INFO    ] Checking for system updates...
[2026-08-31 07:37:20,469.469 INFO    ] 200
[2026-08-31 07:37:20,471.471 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:37:20,525.525 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:37:20,527.527 INFO    ] No update needed
[2026-08-31 07:37:20,530.530 INFO    ] Checking for camera pi updates...
[2026-08-31 07:37:20,567.567 INFO    ] 200
[2026-08-31 07:37:20,570.570 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:37:20,610.610 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:37:20,709.709 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:37:20,712.712 INFO    ] No camera update needed
[2026-08-31 07:37:20,714.714 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:37:20,716.716 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:37:20,722.722 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:37:20,727.727 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:37:22,768.768 INFO    ] ================================================
[2026-08-31 07:37:22,782.782 INFO    ] Launching Daemon at Mon Aug 31 07:37:22 IST 2026
[2026-08-31 07:37:22,793.793 INFO    ] ================================================
[2026-08-31 07:37:23,456.456 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:37:23
[2026-08-31 07:37:24,065.065 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:37:24,333.333 INFO    ] Initializing speech engine...
[2026-08-31 07:37:24,342.342 INFO    ] 2026-08-31 07:37:24
[2026-08-31 07:37:24,589.589 INFO    ] 2026-08-31 07:37:24
[2026-08-31 07:37:24,623.623 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:37:24,881.881 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:37:24,885.885 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:37:25,060.060 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:37:25,120.120 INFO    ] time= 31/08/2026 07:37:25
[2026-08-31 07:37:25,148.148 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:37:25,166.166 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:37:25,303.303 INFO    ] No existing commands found in stream
[2026-08-31 07:37:30,333.333 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:37:30,336.336 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-08-31 07:37:32,358.358 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 07:37:32,361.361 INFO    ] Checking for system updates...
[2026-08-31 07:37:32,399.399 INFO    ] 200
[2026-08-31 07:37:32,402.402 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:37:32,472.472 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:37:32,475.475 INFO    ] No update needed
[2026-08-31 07:37:32,478.478 INFO    ] Checking for camera pi updates...
[2026-08-31 07:37:32,515.515 INFO    ] 200
[2026-08-31 07:37:32,518.518 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:37:32,567.567 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:37:32,620.620 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:37:32,623.623 INFO    ] No camera update needed
[2026-08-31 07:37:32,625.625 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:37:32,628.628 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:37:32,634.634 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:37:32,640.640 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:37:34,683.683 INFO    ] ================================================
[2026-08-31 07:37:34,698.698 INFO    ] Launching Daemon at Mon Aug 31 07:37:34 IST 2026
[2026-08-31 07:37:34,709.709 INFO    ] ================================================
[2026-08-31 07:37:35,291.291 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:37:35
[2026-08-31 07:37:35,888.888 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:37:36,147.147 INFO    ] Initializing speech engine...
[2026-08-31 07:37:36,154.154 INFO    ] 2026-08-31 07:37:36
[2026-08-31 07:37:36,457.457 INFO    ] 2026-08-31 07:37:36
[2026-08-31 07:37:36,484.484 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:37:36,825.825 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:37:36,841.841 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:37:37,038.038 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:37:37,082.082 INFO    ] time= 31/08/2026 07:37:37
[2026-08-31 07:37:37,105.105 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:37:37,121.121 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:37:37,234.234 INFO    ] No existing commands found in stream
[2026-08-31 07:37:42,252.252 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:37:42,254.254 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-08-31 07:37:46,728.728 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 07:37:46,731.731 INFO    ] Checking for system updates...
[2026-08-31 07:37:46,772.772 INFO    ] 200
[2026-08-31 07:37:46,775.775 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:37:46,836.836 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:37:46,840.840 INFO    ] No update needed
[2026-08-31 07:37:46,842.842 INFO    ] Checking for camera pi updates...
[2026-08-31 07:37:46,878.878 INFO    ] 200
[2026-08-31 07:37:46,881.881 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:37:46,929.929 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:37:47,010.010 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:37:47,012.012 INFO    ] No camera update needed
[2026-08-31 07:37:47,015.015 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:37:47,018.018 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:37:47,024.024 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:37:47,030.030 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:37:49,072.072 INFO    ] ================================================
[2026-08-31 07:37:49,086.086 INFO    ] Launching Daemon at Mon Aug 31 07:37:49 IST 2026
[2026-08-31 07:37:49,097.097 INFO    ] ================================================
[2026-08-31 07:37:49,661.661 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:37:49
[2026-08-31 07:37:50,243.243 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:37:50,490.490 INFO    ] Initializing speech engine...
[2026-08-31 07:37:50,497.497 INFO    ] 2026-08-31 07:37:50
[2026-08-31 07:37:50,769.769 INFO    ] 2026-08-31 07:37:50
[2026-08-31 07:37:50,804.804 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:37:51,003.003 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:37:51,031.031 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:37:51,206.206 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:37:51,249.249 INFO    ] time= 31/08/2026 07:37:51
[2026-08-31 07:37:51,309.309 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:37:51,343.343 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:37:51,480.480 INFO    ] No existing commands found in stream
[2026-08-31 07:37:56,504.504 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:37:56,507.507 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-08-31 07:37:58,685.685 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 07:37:58,688.688 INFO    ] Checking for system updates...
[2026-08-31 07:37:58,723.723 INFO    ] 200
[2026-08-31 07:37:58,726.726 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:37:58,787.787 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:37:58,790.790 INFO    ] No update needed
[2026-08-31 07:37:58,792.792 INFO    ] Checking for camera pi updates...
[2026-08-31 07:37:58,825.825 INFO    ] 200
[2026-08-31 07:37:58,828.828 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:37:58,873.873 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:37:58,952.952 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:37:58,954.954 INFO    ] No camera update needed
[2026-08-31 07:37:58,957.957 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:37:58,959.959 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:37:58,964.964 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:37:58,969.969 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:38:01,011.011 INFO    ] ================================================
[2026-08-31 07:38:01,027.027 INFO    ] Launching Daemon at Mon Aug 31 07:38:01 IST 2026
[2026-08-31 07:38:01,038.038 INFO    ] ================================================
[2026-08-31 07:38:01,686.686 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:38:01
[2026-08-31 07:38:02,389.389 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:38:02,823.823 INFO    ] Initializing speech engine...
[2026-08-31 07:38:02,826.826 INFO    ] 2026-08-31 07:38:02
[2026-08-31 07:38:03,191.191 INFO    ] 2026-08-31 07:38:03
[2026-08-31 07:38:03,254.254 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:38:03,523.523 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:38:03,595.595 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:38:03,899.899 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:38:03,937.937 INFO    ] time= 31/08/2026 07:38:03
[2026-08-31 07:38:04,003.003 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:38:04,070.070 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:38:04,146.146 INFO    ] No existing commands found in stream
[2026-08-31 07:38:09,157.157 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:38:09,160.160 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-08-31 07:38:10,333.333 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 07:38:10,336.336 INFO    ] Checking for system updates...
[2026-08-31 07:38:10,373.373 INFO    ] 200
[2026-08-31 07:38:10,376.376 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:38:10,430.430 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:38:10,433.433 INFO    ] No update needed
[2026-08-31 07:38:10,436.436 INFO    ] Checking for camera pi updates...
[2026-08-31 07:38:10,474.474 INFO    ] 200
[2026-08-31 07:38:10,477.477 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:38:10,519.519 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:38:10,619.619 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:38:10,622.622 INFO    ] No camera update needed
[2026-08-31 07:38:10,624.624 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:38:10,627.627 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:38:10,633.633 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:38:10,639.639 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:38:12,680.680 INFO    ] ================================================
[2026-08-31 07:38:12,695.695 INFO    ] Launching Daemon at Mon Aug 31 07:38:12 IST 2026
[2026-08-31 07:38:12,706.706 INFO    ] ================================================
[2026-08-31 07:38:13,363.363 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:38:13
[2026-08-31 07:38:14,037.037 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:38:14,342.342 INFO    ] Initializing speech engine...
[2026-08-31 07:38:14,357.357 INFO    ] 2026-08-31 07:38:14
[2026-08-31 07:38:14,667.667 INFO    ] 2026-08-31 07:38:14
[2026-08-31 07:38:14,752.752 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:38:14,963.963 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:38:14,972.972 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:38:15,159.159 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:38:15,174.174 INFO    ] time= 31/08/2026 07:38:15
[2026-08-31 07:38:15,190.190 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:38:15,210.210 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:38:15,330.330 INFO    ] No existing commands found in stream
[2026-08-31 07:38:20,359.359 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:38:20,362.362 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-08-31 07:38:23,308.308 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 07:38:23,311.311 INFO    ] Checking for system updates...
[2026-08-31 07:38:23,346.346 INFO    ] 200
[2026-08-31 07:38:23,349.349 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:38:23,402.402 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:38:23,405.405 INFO    ] No update needed
[2026-08-31 07:38:23,407.407 INFO    ] Checking for camera pi updates...
[2026-08-31 07:38:23,440.440 INFO    ] 200
[2026-08-31 07:38:23,443.443 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:38:23,483.483 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:38:23,674.674 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:38:23,677.677 INFO    ] No camera update needed
[2026-08-31 07:38:23,680.680 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:38:23,683.683 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:38:23,689.689 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:38:23,695.695 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:38:25,736.736 INFO    ] ================================================
[2026-08-31 07:38:25,751.751 INFO    ] Launching Daemon at Mon Aug 31 07:38:25 IST 2026
[2026-08-31 07:38:25,762.762 INFO    ] ================================================
[2026-08-31 07:38:26,418.418 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:38:26
[2026-08-31 07:38:27,035.035 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:38:27,290.290 INFO    ] Initializing speech engine...
[2026-08-31 07:38:27,298.298 INFO    ] 2026-08-31 07:38:27
[2026-08-31 07:38:27,580.580 INFO    ] 2026-08-31 07:38:27
[2026-08-31 07:38:27,616.616 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:38:27,873.873 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:38:27,878.878 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:38:28,013.013 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:38:28,073.073 INFO    ] time= 31/08/2026 07:38:28
[2026-08-31 07:38:28,122.122 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:38:28,145.145 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:38:28,279.279 INFO    ] No existing commands found in stream
[2026-08-31 07:38:33,304.304 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:38:33,307.307 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-08-31 07:38:36,574.574 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 07:38:36,576.576 INFO    ] Checking for system updates...
[2026-08-31 07:38:36,617.617 INFO    ] 200
[2026-08-31 07:38:36,620.620 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:38:36,684.684 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:38:36,686.686 INFO    ] No update needed
[2026-08-31 07:38:36,689.689 INFO    ] Checking for camera pi updates...
[2026-08-31 07:38:36,727.727 INFO    ] 200
[2026-08-31 07:38:36,730.730 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:38:36,771.771 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:38:36,853.853 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:38:36,856.856 INFO    ] No camera update needed
[2026-08-31 07:38:36,858.858 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:38:36,861.861 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:38:36,866.866 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:38:36,871.871 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:38:38,910.910 INFO    ] ================================================
[2026-08-31 07:38:38,925.925 INFO    ] Launching Daemon at Mon Aug 31 07:38:38 IST 2026
[2026-08-31 07:38:38,936.936 INFO    ] ================================================
[2026-08-31 07:38:39,574.574 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:38:39
[2026-08-31 07:38:40,158.158 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:38:40,426.426 INFO    ] Initializing speech engine...
[2026-08-31 07:38:40,435.435 INFO    ] 2026-08-31 07:38:40
[2026-08-31 07:38:40,681.681 INFO    ] 2026-08-31 07:38:40
[2026-08-31 07:38:40,716.716 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:38:40,967.967 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:38:40,977.977 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:38:41,188.188 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:38:41,233.233 INFO    ] time= 31/08/2026 07:38:41
[2026-08-31 07:38:41,240.240 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:38:41,260.260 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:38:41,389.389 INFO    ] No existing commands found in stream
[2026-08-31 07:38:46,407.407 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:38:46,410.410 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-08-31 07:38:50,282.282 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 07:38:50,285.285 INFO    ] Checking for system updates...
[2026-08-31 07:38:50,320.320 INFO    ] 200
[2026-08-31 07:38:50,323.323 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:38:50,375.375 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:38:50,377.377 INFO    ] No update needed
[2026-08-31 07:38:50,380.380 INFO    ] Checking for camera pi updates...
[2026-08-31 07:38:50,414.414 INFO    ] 200
[2026-08-31 07:38:50,416.416 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:38:50,457.457 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:38:50,560.560 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:38:50,562.562 INFO    ] No camera update needed
[2026-08-31 07:38:50,565.565 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:38:50,567.567 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:38:50,572.572 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:38:50,577.577 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:38:52,619.619 INFO    ] ================================================
[2026-08-31 07:38:52,634.634 INFO    ] Launching Daemon at Mon Aug 31 07:38:52 IST 2026
[2026-08-31 07:38:52,646.646 INFO    ] ================================================
[2026-08-31 07:38:53,226.226 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:38:53
[2026-08-31 07:38:53,824.824 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:38:54,101.101 INFO    ] Initializing speech engine...
[2026-08-31 07:38:54,109.109 INFO    ] 2026-08-31 07:38:54
[2026-08-31 07:38:54,368.368 INFO    ] 2026-08-31 07:38:54
[2026-08-31 07:38:54,399.399 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:38:54,644.644 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:38:54,654.654 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:38:54,823.823 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:38:54,888.888 INFO    ] time= 31/08/2026 07:38:54
[2026-08-31 07:38:54,915.915 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:38:54,931.931 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:38:55,071.071 INFO    ] No existing commands found in stream
[2026-08-31 07:39:00,102.102 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:39:00,105.105 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-08-31 07:39:00,759.759 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 07:39:00,761.761 INFO    ] Checking for system updates...
[2026-08-31 07:39:00,797.797 INFO    ] 200
[2026-08-31 07:39:00,799.799 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:39:00,855.855 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:39:00,858.858 INFO    ] No update needed
[2026-08-31 07:39:00,860.860 INFO    ] Checking for camera pi updates...
[2026-08-31 07:39:00,894.894 INFO    ] 200
[2026-08-31 07:39:00,896.896 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:39:00,936.936 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:39:01,015.015 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:39:01,018.018 INFO    ] No camera update needed
[2026-08-31 07:39:01,020.020 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:39:01,023.023 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:39:01,028.028 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:39:01,033.033 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:39:03,078.078 INFO    ] ================================================
[2026-08-31 07:39:03,096.096 INFO    ] Launching Daemon at Mon Aug 31 07:39:03 IST 2026
[2026-08-31 07:39:03,109.109 INFO    ] ================================================
[2026-08-31 07:39:03,694.694 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:39:03
[2026-08-31 07:39:04,275.275 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:39:04,544.544 INFO    ] Initializing speech engine...
[2026-08-31 07:39:04,555.555 INFO    ] 2026-08-31 07:39:04
[2026-08-31 07:39:04,802.802 INFO    ] 2026-08-31 07:39:04
[2026-08-31 07:39:04,835.835 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:39:05,034.034 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:39:05,042.042 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:39:05,179.179 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:39:05,242.242 INFO    ] time= 31/08/2026 07:39:05
[2026-08-31 07:39:05,278.278 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:39:05,332.332 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:39:05,425.425 INFO    ] No existing commands found in stream
[2026-08-31 07:39:10,437.437 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:39:10,439.439 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-08-31 07:39:11,715.715 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 07:39:11,718.718 INFO    ] Checking for system updates...
[2026-08-31 07:39:11,756.756 INFO    ] 200
[2026-08-31 07:39:11,759.759 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:39:11,817.817 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:39:11,819.819 INFO    ] No update needed
[2026-08-31 07:39:11,822.822 INFO    ] Checking for camera pi updates...
[2026-08-31 07:39:11,863.863 INFO    ] 200
[2026-08-31 07:39:11,866.866 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:39:11,908.908 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:39:11,995.995 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:39:11,998.998 INFO    ] No camera update needed
[2026-08-31 07:39:12,000.000 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:39:12,002.002 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:39:12,008.008 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:39:12,012.012 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:39:14,052.052 INFO    ] ================================================
[2026-08-31 07:39:14,066.066 INFO    ] Launching Daemon at Mon Aug 31 07:39:14 IST 2026
[2026-08-31 07:39:14,077.077 INFO    ] ================================================
[2026-08-31 07:39:14,717.717 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:39:14
[2026-08-31 07:39:15,369.369 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:39:15,668.668 INFO    ] Initializing speech engine...
[2026-08-31 07:39:15,680.680 INFO    ] 2026-08-31 07:39:15
[2026-08-31 07:39:15,964.964 INFO    ] 2026-08-31 07:39:15
[2026-08-31 07:39:16,073.073 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:39:16,280.280 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:39:16,289.289 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:39:16,478.478 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:39:16,490.490 INFO    ] time= 31/08/2026 07:39:16
[2026-08-31 07:39:16,508.508 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:39:16,537.537 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:39:16,644.644 INFO    ] No existing commands found in stream
[2026-08-31 07:39:21,668.668 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:39:21,671.671 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-08-31 07:39:26,032.032 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 07:39:26,034.034 INFO    ] Checking for system updates...
[2026-08-31 07:39:26,070.070 INFO    ] 200
[2026-08-31 07:39:26,073.073 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:39:26,129.129 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:39:26,131.131 INFO    ] No update needed
[2026-08-31 07:39:26,133.133 INFO    ] Checking for camera pi updates...
[2026-08-31 07:39:26,167.167 INFO    ] 200
[2026-08-31 07:39:26,169.169 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:39:26,209.209 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:39:26,306.306 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:39:26,309.309 INFO    ] No camera update needed
[2026-08-31 07:39:26,311.311 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:39:26,313.313 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:39:26,319.319 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:39:26,324.324 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:39:28,365.365 INFO    ] ================================================
[2026-08-31 07:39:28,380.380 INFO    ] Launching Daemon at Mon Aug 31 07:39:28 IST 2026
[2026-08-31 07:39:28,391.391 INFO    ] ================================================
[2026-08-31 07:39:28,998.998 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:39:28
[2026-08-31 07:39:29,586.586 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:39:29,856.856 INFO    ] Initializing speech engine...
[2026-08-31 07:39:29,861.861 INFO    ] 2026-08-31 07:39:29
[2026-08-31 07:39:30,113.113 INFO    ] 2026-08-31 07:39:30
[2026-08-31 07:39:30,171.171 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:39:30,396.396 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:39:30,400.400 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:39:30,531.531 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:39:30,578.578 INFO    ] time= 31/08/2026 07:39:30
[2026-08-31 07:39:30,642.642 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:39:30,666.666 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:39:30,791.791 INFO    ] No existing commands found in stream
[2026-08-31 07:39:35,818.818 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:39:35,821.821 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-08-31 07:39:38,109.109 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 07:39:38,111.111 INFO    ] Checking for system updates...
[2026-08-31 07:39:38,150.150 INFO    ] 200
[2026-08-31 07:39:38,152.152 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:39:38,204.204 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:39:38,207.207 INFO    ] No update needed
[2026-08-31 07:39:38,209.209 INFO    ] Checking for camera pi updates...
[2026-08-31 07:39:38,245.245 INFO    ] 200
[2026-08-31 07:39:38,247.247 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:39:38,290.290 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:39:38,386.386 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:39:38,389.389 INFO    ] No camera update needed
[2026-08-31 07:39:38,391.391 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:39:38,393.393 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:39:38,398.398 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:39:38,403.403 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:39:40,446.446 INFO    ] ================================================
[2026-08-31 07:39:40,461.461 INFO    ] Launching Daemon at Mon Aug 31 07:39:40 IST 2026
[2026-08-31 07:39:40,471.471 INFO    ] ================================================
[2026-08-31 07:39:41,050.050 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:39:41
[2026-08-31 07:39:41,644.644 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:39:41,920.920 INFO    ] Initializing speech engine...
[2026-08-31 07:39:41,927.927 INFO    ] 2026-08-31 07:39:41
[2026-08-31 07:39:42,201.201 INFO    ] 2026-08-31 07:39:42
[2026-08-31 07:39:42,245.245 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:39:42,463.463 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:39:42,472.472 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:39:42,605.605 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:39:42,670.670 INFO    ] time= 31/08/2026 07:39:42
[2026-08-31 07:39:42,729.729 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:39:42,737.737 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:39:42,871.871 INFO    ] No existing commands found in stream
[2026-08-31 07:39:47,891.891 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:39:47,894.894 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-08-31 07:39:49,196.196 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 07:39:49,200.200 INFO    ] Checking for system updates...
[2026-08-31 07:39:49,247.247 INFO    ] 200
[2026-08-31 07:39:49,250.250 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:39:49,312.312 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:39:49,315.315 INFO    ] No update needed
[2026-08-31 07:39:49,318.318 INFO    ] Checking for camera pi updates...
[2026-08-31 07:39:49,357.357 INFO    ] 200
[2026-08-31 07:39:49,360.360 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:39:49,404.404 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:39:49,498.498 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:39:49,501.501 INFO    ] No camera update needed
[2026-08-31 07:39:49,504.504 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:39:49,507.507 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:39:49,513.513 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:39:49,519.519 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:39:51,559.559 INFO    ] ================================================
[2026-08-31 07:39:51,574.574 INFO    ] Launching Daemon at Mon Aug 31 07:39:51 IST 2026
[2026-08-31 07:39:51,588.588 INFO    ] ================================================
[2026-08-31 07:39:52,154.154 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:39:52
[2026-08-31 07:39:52,734.734 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:39:52,984.984 INFO    ] Initializing speech engine...
[2026-08-31 07:39:52,990.990 INFO    ] 2026-08-31 07:39:52
[2026-08-31 07:39:53,281.281 INFO    ] 2026-08-31 07:39:53
[2026-08-31 07:39:53,318.318 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:39:53,520.520 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:39:53,537.537 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:39:53,680.680 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:39:53,688.688 INFO    ] time= 31/08/2026 07:39:53
[2026-08-31 07:39:53,695.695 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:39:53,733.733 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:39:53,879.879 INFO    ] No existing commands found in stream
[2026-08-31 07:39:58,905.905 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:39:58,908.908 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-08-31 07:40:01,956.956 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 07:40:02,010.010 INFO    ] Checking for system updates...
[2026-08-31 07:40:02,168.168 INFO    ] 200
[2026-08-31 07:40:02,171.171 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:40:02,351.351 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:40:02,354.354 INFO    ] No update needed
[2026-08-31 07:40:02,357.357 INFO    ] Checking for camera pi updates...
[2026-08-31 07:40:02,432.432 INFO    ] 200
[2026-08-31 07:40:02,435.435 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:40:02,561.561 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:40:02,660.660 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:40:02,664.664 INFO    ] No camera update needed
[2026-08-31 07:40:02,667.667 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:40:02,674.674 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:40:02,684.684 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:40:02,694.694 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:40:04,736.736 INFO    ] ================================================
[2026-08-31 07:40:04,752.752 INFO    ] Launching Daemon at Mon Aug 31 07:40:04 IST 2026
[2026-08-31 07:40:04,763.763 INFO    ] ================================================
[2026-08-31 07:40:05,335.335 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:40:05
[2026-08-31 07:40:05,923.923 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:40:06,185.185 INFO    ] Initializing speech engine...
[2026-08-31 07:40:06,200.200 INFO    ] 2026-08-31 07:40:06
[2026-08-31 07:40:06,484.484 INFO    ] 2026-08-31 07:40:06
[2026-08-31 07:40:06,521.521 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:40:06,716.716 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:40:06,729.729 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:40:06,864.864 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:40:06,902.902 INFO    ] time= 31/08/2026 07:40:06
[2026-08-31 07:40:06,918.918 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:40:06,923.923 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:40:07,064.064 INFO    ] No existing commands found in stream
[2026-08-31 07:40:12,094.094 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:40:12,097.097 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-08-31 07:40:15,436.436 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 07:40:15,438.438 INFO    ] Checking for system updates...
[2026-08-31 07:40:15,477.477 INFO    ] 200
[2026-08-31 07:40:15,480.480 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:40:15,538.538 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:40:15,540.540 INFO    ] No update needed
[2026-08-31 07:40:15,542.542 INFO    ] Checking for camera pi updates...
[2026-08-31 07:40:15,579.579 INFO    ] 200
[2026-08-31 07:40:15,581.581 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:40:15,622.622 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:40:15,703.703 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:40:15,705.705 INFO    ] No camera update needed
[2026-08-31 07:40:15,708.708 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:40:15,710.710 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:40:15,715.715 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:40:15,720.720 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:40:17,761.761 INFO    ] ================================================
[2026-08-31 07:40:17,777.777 INFO    ] Launching Daemon at Mon Aug 31 07:40:17 IST 2026
[2026-08-31 07:40:17,788.788 INFO    ] ================================================
[2026-08-31 07:40:18,357.357 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:40:18
[2026-08-31 07:40:18,943.943 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:40:19,200.200 INFO    ] Initializing speech engine...
[2026-08-31 07:40:19,219.219 INFO    ] 2026-08-31 07:40:19
[2026-08-31 07:40:19,465.465 INFO    ] 2026-08-31 07:40:19
[2026-08-31 07:40:19,501.501 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:40:19,694.694 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:40:19,737.737 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:40:19,892.892 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:40:19,929.929 INFO    ] time= 31/08/2026 07:40:19
[2026-08-31 07:40:19,983.983 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:40:20,025.025 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:40:20,173.173 INFO    ] No existing commands found in stream
[2026-08-31 07:40:25,193.193 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:40:25,195.195 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-08-31 07:40:28,767.767 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 07:40:28,770.770 INFO    ] Checking for system updates...
[2026-08-31 07:40:28,806.806 INFO    ] 200
[2026-08-31 07:40:28,809.809 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:40:28,866.866 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:40:28,869.869 INFO    ] No update needed
[2026-08-31 07:40:28,871.871 INFO    ] Checking for camera pi updates...
[2026-08-31 07:40:28,906.906 INFO    ] 200
[2026-08-31 07:40:28,909.909 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:40:28,949.949 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:40:29,128.128 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:40:29,130.130 INFO    ] No camera update needed
[2026-08-31 07:40:29,132.132 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:40:29,135.135 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:40:29,140.140 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:40:29,145.145 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:40:31,188.188 INFO    ] ================================================
[2026-08-31 07:40:31,204.204 INFO    ] Launching Daemon at Mon Aug 31 07:40:31 IST 2026
[2026-08-31 07:40:31,215.215 INFO    ] ================================================
[2026-08-31 07:40:31,781.781 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:40:31
[2026-08-31 07:40:32,399.399 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:40:32,676.676 INFO    ] Initializing speech engine...
[2026-08-31 07:40:32,699.699 INFO    ] 2026-08-31 07:40:32
[2026-08-31 07:40:32,970.970 INFO    ] 2026-08-31 07:40:32
[2026-08-31 07:40:32,996.996 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:40:33,216.216 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:40:33,228.228 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:40:33,372.372 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:40:33,380.380 INFO    ] time= 31/08/2026 07:40:33
[2026-08-31 07:40:33,386.386 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:40:33,428.428 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:40:33,550.550 INFO    ] No existing commands found in stream
[2026-08-31 07:40:38,575.575 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:40:38,578.578 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-08-31 07:40:41,475.475 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 07:40:41,478.478 INFO    ] Checking for system updates...
[2026-08-31 07:40:41,514.514 INFO    ] 200
[2026-08-31 07:40:41,516.516 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:40:41,572.572 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:40:41,574.574 INFO    ] No update needed
[2026-08-31 07:40:41,577.577 INFO    ] Checking for camera pi updates...
[2026-08-31 07:40:41,615.615 INFO    ] 200
[2026-08-31 07:40:41,617.617 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:40:41,663.663 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:40:41,761.761 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:40:41,764.764 INFO    ] No camera update needed
[2026-08-31 07:40:41,767.767 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:40:41,770.770 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:40:41,776.776 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:40:41,781.781 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:40:43,822.822 INFO    ] ================================================
[2026-08-31 07:40:43,837.837 INFO    ] Launching Daemon at Mon Aug 31 07:40:43 IST 2026
[2026-08-31 07:40:43,848.848 INFO    ] ================================================
[2026-08-31 07:40:44,417.417 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:40:44
[2026-08-31 07:40:45,005.005 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:40:45,269.269 INFO    ] Initializing speech engine...
[2026-08-31 07:40:45,281.281 INFO    ] 2026-08-31 07:40:45
[2026-08-31 07:40:45,528.528 INFO    ] 2026-08-31 07:40:45
[2026-08-31 07:40:45,563.563 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:40:45,760.760 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:40:45,818.818 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:40:46,033.033 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:40:46,081.081 INFO    ] time= 31/08/2026 07:40:46
[2026-08-31 07:40:46,098.098 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:40:46,107.107 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:40:46,231.231 INFO    ] No existing commands found in stream
[2026-08-31 07:40:51,246.246 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:40:51,249.249 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-08-31 07:40:54,516.516 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 07:40:54,519.519 INFO    ] Checking for system updates...
[2026-08-31 07:40:54,560.560 INFO    ] 200
[2026-08-31 07:40:54,562.562 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:40:54,620.620 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:40:54,622.622 INFO    ] No update needed
[2026-08-31 07:40:54,625.625 INFO    ] Checking for camera pi updates...
[2026-08-31 07:40:54,661.661 INFO    ] 200
[2026-08-31 07:40:54,663.663 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:40:54,708.708 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:40:54,786.786 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:40:54,789.789 INFO    ] No camera update needed
[2026-08-31 07:40:54,791.791 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:40:54,794.794 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:40:54,799.799 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:40:54,804.804 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:40:56,845.845 INFO    ] ================================================
[2026-08-31 07:40:56,861.861 INFO    ] Launching Daemon at Mon Aug 31 07:40:56 IST 2026
[2026-08-31 07:40:56,872.872 INFO    ] ================================================
[2026-08-31 07:40:57,441.441 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:40:57
[2026-08-31 07:40:58,025.025 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:40:58,294.294 INFO    ] Initializing speech engine...
[2026-08-31 07:40:58,303.303 INFO    ] 2026-08-31 07:40:58
[2026-08-31 07:40:58,547.547 INFO    ] 2026-08-31 07:40:58
[2026-08-31 07:40:58,583.583 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:40:58,833.833 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:40:58,843.843 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:40:59,029.029 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:40:59,084.084 INFO    ] time= 31/08/2026 07:40:59
[2026-08-31 07:40:59,104.104 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:40:59,110.110 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:40:59,240.240 INFO    ] No existing commands found in stream
[2026-08-31 07:41:04,262.262 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:41:04,264.264 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-08-31 07:41:07,428.428 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 07:41:07,431.431 INFO    ] Checking for system updates...
[2026-08-31 07:41:07,486.486 INFO    ] 200
[2026-08-31 07:41:07,489.489 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:41:07,541.541 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:41:07,544.544 INFO    ] No update needed
[2026-08-31 07:41:07,546.546 INFO    ] Checking for camera pi updates...
[2026-08-31 07:41:07,580.580 INFO    ] 200
[2026-08-31 07:41:07,582.582 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:41:07,626.626 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:41:07,703.703 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:41:07,705.705 INFO    ] No camera update needed
[2026-08-31 07:41:07,707.707 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:41:07,710.710 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:41:07,715.715 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:41:07,720.720 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:41:09,761.761 INFO    ] ================================================
[2026-08-31 07:41:09,776.776 INFO    ] Launching Daemon at Mon Aug 31 07:41:09 IST 2026
[2026-08-31 07:41:09,788.788 INFO    ] ================================================
[2026-08-31 07:41:10,406.406 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:41:10
[2026-08-31 07:41:11,043.043 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:41:11,335.335 INFO    ] Initializing speech engine...
[2026-08-31 07:41:11,343.343 INFO    ] 2026-08-31 07:41:11
[2026-08-31 07:41:11,613.613 INFO    ] 2026-08-31 07:41:11
[2026-08-31 07:41:11,667.667 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:41:11,914.914 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:41:11,919.919 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:41:12,109.109 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:41:12,155.155 INFO    ] time= 31/08/2026 07:41:12
[2026-08-31 07:41:12,162.162 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:41:12,183.183 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:41:12,312.312 INFO    ] No existing commands found in stream
[2026-08-31 07:41:17,342.342 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:41:17,345.345 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-08-31 07:41:20,353.353 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 07:41:20,356.356 INFO    ] Checking for system updates...
[2026-08-31 07:41:20,393.393 INFO    ] 200
[2026-08-31 07:41:20,395.395 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:41:20,452.452 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:41:20,454.454 INFO    ] No update needed
[2026-08-31 07:41:20,456.456 INFO    ] Checking for camera pi updates...
[2026-08-31 07:41:20,490.490 INFO    ] 200
[2026-08-31 07:41:20,492.492 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:41:20,532.532 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:41:20,612.612 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:41:20,615.615 INFO    ] No camera update needed
[2026-08-31 07:41:20,617.617 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:41:20,619.619 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:41:20,625.625 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:41:20,629.629 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:41:22,669.669 INFO    ] ================================================
[2026-08-31 07:41:22,684.684 INFO    ] Launching Daemon at Mon Aug 31 07:41:22 IST 2026
[2026-08-31 07:41:22,695.695 INFO    ] ================================================
[2026-08-31 07:41:23,271.271 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:41:23
[2026-08-31 07:41:23,852.852 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:41:24,123.123 INFO    ] Initializing speech engine...
[2026-08-31 07:41:24,130.130 INFO    ] 2026-08-31 07:41:24
[2026-08-31 07:41:24,387.387 INFO    ] 2026-08-31 07:41:24
[2026-08-31 07:41:24,440.440 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:41:24,661.661 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:41:24,670.670 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:41:24,802.802 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:41:24,839.839 INFO    ] time= 31/08/2026 07:41:24
[2026-08-31 07:41:24,888.888 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:41:24,934.934 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:41:25,072.072 INFO    ] No existing commands found in stream
[2026-08-31 07:41:30,091.091 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:41:30,094.094 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-08-31 07:41:33,198.198 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 07:41:33,201.201 INFO    ] Checking for system updates...
[2026-08-31 07:41:33,239.239 INFO    ] 200
[2026-08-31 07:41:33,241.241 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:41:33,294.294 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:41:33,296.296 INFO    ] No update needed
[2026-08-31 07:41:33,299.299 INFO    ] Checking for camera pi updates...
[2026-08-31 07:41:33,334.334 INFO    ] 200
[2026-08-31 07:41:33,336.336 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:41:33,377.377 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:41:33,466.466 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:41:33,469.469 INFO    ] No camera update needed
[2026-08-31 07:41:33,471.471 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:41:33,473.473 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:41:33,479.479 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:41:33,483.483 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:41:35,524.524 INFO    ] ================================================
[2026-08-31 07:41:35,540.540 INFO    ] Launching Daemon at Mon Aug 31 07:41:35 IST 2026
[2026-08-31 07:41:35,550.550 INFO    ] ================================================
[2026-08-31 07:41:36,172.172 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:41:36
[2026-08-31 07:41:36,784.784 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:41:37,054.054 INFO    ] Initializing speech engine...
[2026-08-31 07:41:37,060.060 INFO    ] 2026-08-31 07:41:37
[2026-08-31 07:41:37,305.305 INFO    ] 2026-08-31 07:41:37
[2026-08-31 07:41:37,368.368 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:41:37,593.593 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:41:37,598.598 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:41:37,733.733 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:41:37,798.798 INFO    ] time= 31/08/2026 07:41:37
[2026-08-31 07:41:37,857.857 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:41:37,866.866 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:41:38,001.001 INFO    ] No existing commands found in stream
[2026-08-31 07:41:43,021.021 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:41:43,024.024 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-08-31 07:41:46,407.407 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 07:41:46,410.410 INFO    ] Checking for system updates...
[2026-08-31 07:41:46,445.445 INFO    ] 200
[2026-08-31 07:41:46,448.448 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:41:46,505.505 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:41:46,507.507 INFO    ] No update needed
[2026-08-31 07:41:46,510.510 INFO    ] Checking for camera pi updates...
[2026-08-31 07:41:46,544.544 INFO    ] 200
[2026-08-31 07:41:46,546.546 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:41:46,590.590 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:41:46,670.670 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:41:46,672.672 INFO    ] No camera update needed
[2026-08-31 07:41:46,675.675 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:41:46,678.678 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:41:46,683.683 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:41:46,688.688 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:41:48,729.729 INFO    ] ================================================
[2026-08-31 07:41:48,744.744 INFO    ] Launching Daemon at Mon Aug 31 07:41:48 IST 2026
[2026-08-31 07:41:48,754.754 INFO    ] ================================================
[2026-08-31 07:41:49,317.317 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:41:49
[2026-08-31 07:41:49,901.901 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:41:50,149.149 INFO    ] Initializing speech engine...
[2026-08-31 07:41:50,156.156 INFO    ] 2026-08-31 07:41:50
[2026-08-31 07:41:50,442.442 INFO    ] 2026-08-31 07:41:50
[2026-08-31 07:41:50,478.478 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:41:50,667.667 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:41:50,681.681 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:41:50,835.835 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:41:50,844.844 INFO    ] time= 31/08/2026 07:41:50
[2026-08-31 07:41:50,851.851 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:41:50,872.872 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:41:51,018.018 INFO    ] No existing commands found in stream
[2026-08-31 07:41:56,043.043 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:41:56,046.046 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-08-31 07:41:59,286.286 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 07:41:59,289.289 INFO    ] Checking for system updates...
[2026-08-31 07:41:59,324.324 INFO    ] 200
[2026-08-31 07:41:59,327.327 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:41:59,381.381 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:41:59,383.383 INFO    ] No update needed
[2026-08-31 07:41:59,385.385 INFO    ] Checking for camera pi updates...
[2026-08-31 07:41:59,421.421 INFO    ] 200
[2026-08-31 07:41:59,423.423 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:41:59,463.463 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:41:59,554.554 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:41:59,556.556 INFO    ] No camera update needed
[2026-08-31 07:41:59,559.559 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:41:59,561.561 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:41:59,566.566 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:41:59,571.571 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:42:01,611.611 INFO    ] ================================================
[2026-08-31 07:42:01,626.626 INFO    ] Launching Daemon at Mon Aug 31 07:42:01 IST 2026
[2026-08-31 07:42:01,636.636 INFO    ] ================================================
[2026-08-31 07:42:02,394.394 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:42:02
[2026-08-31 07:42:03,049.049 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:42:03,355.355 INFO    ] Initializing speech engine...
[2026-08-31 07:42:03,379.379 INFO    ] 2026-08-31 07:42:03
[2026-08-31 07:42:03,661.661 INFO    ] 2026-08-31 07:42:03
[2026-08-31 07:42:03,709.709 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:42:03,913.913 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:42:03,926.926 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:42:04,158.158 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:42:04,181.181 INFO    ] time= 31/08/2026 07:42:04
[2026-08-31 07:42:04,241.241 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:42:04,301.301 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:42:04,434.434 INFO    ] No existing commands found in stream
[2026-08-31 07:42:09,450.450 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:42:09,452.452 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-08-31 07:42:13,400.400 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 07:42:13,403.403 INFO    ] Checking for system updates...
[2026-08-31 07:42:13,439.439 INFO    ] 200
[2026-08-31 07:42:13,441.441 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:42:13,500.500 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:42:13,503.503 INFO    ] No update needed
[2026-08-31 07:42:13,505.505 INFO    ] Checking for camera pi updates...
[2026-08-31 07:42:13,540.540 INFO    ] 200
[2026-08-31 07:42:13,542.542 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:42:13,586.586 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:42:13,666.666 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:42:13,668.668 INFO    ] No camera update needed
[2026-08-31 07:42:13,671.671 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:42:13,673.673 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:42:13,679.679 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:42:13,684.684 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:42:15,725.725 INFO    ] ================================================
[2026-08-31 07:42:15,741.741 INFO    ] Launching Daemon at Mon Aug 31 07:42:15 IST 2026
[2026-08-31 07:42:15,753.753 INFO    ] ================================================
[2026-08-31 07:42:16,385.385 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:42:16
[2026-08-31 07:42:16,981.981 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:42:17,236.236 INFO    ] Initializing speech engine...
[2026-08-31 07:42:17,244.244 INFO    ] 2026-08-31 07:42:17
[2026-08-31 07:42:17,534.534 INFO    ] 2026-08-31 07:42:17
[2026-08-31 07:42:17,572.572 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:42:17,759.759 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:42:17,772.772 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:42:17,927.927 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:42:17,937.937 INFO    ] time= 31/08/2026 07:42:17
[2026-08-31 07:42:17,941.941 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:42:17,948.948 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:42:18,062.062 INFO    ] No existing commands found in stream
[2026-08-31 07:42:23,090.090 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:42:23,092.092 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-08-31 07:42:27,595.595 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 07:42:27,597.597 INFO    ] Checking for system updates...
[2026-08-31 07:42:27,633.633 INFO    ] 200
[2026-08-31 07:42:27,635.635 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:42:27,691.691 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:42:27,694.694 INFO    ] No update needed
[2026-08-31 07:42:27,696.696 INFO    ] Checking for camera pi updates...
[2026-08-31 07:42:27,731.731 INFO    ] 200
[2026-08-31 07:42:27,734.734 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:42:27,774.774 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:42:27,848.848 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:42:27,851.851 INFO    ] No camera update needed
[2026-08-31 07:42:27,853.853 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:42:27,856.856 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:42:27,861.861 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:42:27,866.866 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:42:29,905.905 INFO    ] ================================================
[2026-08-31 07:42:29,921.921 INFO    ] Launching Daemon at Mon Aug 31 07:42:29 IST 2026
[2026-08-31 07:42:29,932.932 INFO    ] ================================================
[2026-08-31 07:42:30,515.515 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:42:30
[2026-08-31 07:42:31,109.109 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:42:31,364.364 INFO    ] Initializing speech engine...
[2026-08-31 07:42:31,371.371 INFO    ] 2026-08-31 07:42:31
[2026-08-31 07:42:31,659.659 INFO    ] 2026-08-31 07:42:31
[2026-08-31 07:42:31,696.696 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:42:31,914.914 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:42:31,973.973 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:42:32,150.150 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:42:32,204.204 INFO    ] time= 31/08/2026 07:42:32
[2026-08-31 07:42:32,249.249 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:42:32,300.300 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:42:32,429.429 INFO    ] No existing commands found in stream
[2026-08-31 07:42:37,452.452 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:42:37,455.455 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-08-31 07:42:40,992.992 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 07:42:40,995.995 INFO    ] Checking for system updates...
[2026-08-31 07:42:41,034.034 INFO    ] 200
[2026-08-31 07:42:41,037.037 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:42:41,093.093 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:42:41,096.096 INFO    ] No update needed
[2026-08-31 07:42:41,098.098 INFO    ] Checking for camera pi updates...
[2026-08-31 07:42:41,132.132 INFO    ] 200
[2026-08-31 07:42:41,134.134 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:42:41,174.174 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:42:41,250.250 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:42:41,253.253 INFO    ] No camera update needed
[2026-08-31 07:42:41,255.255 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:42:41,257.257 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:42:41,263.263 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:42:41,268.268 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:42:43,307.307 INFO    ] ================================================
[2026-08-31 07:42:43,323.323 INFO    ] Launching Daemon at Mon Aug 31 07:42:43 IST 2026
[2026-08-31 07:42:43,333.333 INFO    ] ================================================
[2026-08-31 07:42:43,913.913 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:42:43
[2026-08-31 07:42:44,509.509 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:42:44,784.784 INFO    ] Initializing speech engine...
[2026-08-31 07:42:44,789.789 INFO    ] 2026-08-31 07:42:44
[2026-08-31 07:42:45,052.052 INFO    ] 2026-08-31 07:42:45
[2026-08-31 07:42:45,105.105 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:42:45,355.355 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:42:45,360.360 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:42:45,552.552 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:42:45,593.593 INFO    ] time= 31/08/2026 07:42:45
[2026-08-31 07:42:45,600.600 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:42:45,621.621 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:42:45,745.745 INFO    ] No existing commands found in stream
[2026-08-31 07:42:50,760.760 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:42:50,763.763 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-08-31 07:42:51,346.346 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 07:42:51,349.349 INFO    ] Checking for system updates...
[2026-08-31 07:42:51,384.384 INFO    ] 200
[2026-08-31 07:42:51,386.386 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:42:51,438.438 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:42:51,441.441 INFO    ] No update needed
[2026-08-31 07:42:51,443.443 INFO    ] Checking for camera pi updates...
[2026-08-31 07:42:51,477.477 INFO    ] 200
[2026-08-31 07:42:51,479.479 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:42:51,519.519 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:42:51,599.599 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:42:51,601.601 INFO    ] No camera update needed
[2026-08-31 07:42:51,603.603 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:42:51,606.606 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:42:51,611.611 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:42:51,616.616 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:42:53,657.657 INFO    ] ================================================
[2026-08-31 07:42:53,673.673 INFO    ] Launching Daemon at Mon Aug 31 07:42:53 IST 2026
[2026-08-31 07:42:53,684.684 INFO    ] ================================================
[2026-08-31 07:42:54,250.250 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:42:54
[2026-08-31 07:42:54,835.835 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:42:55,106.106 INFO    ] Initializing speech engine...
[2026-08-31 07:42:55,115.115 INFO    ] 2026-08-31 07:42:55
[2026-08-31 07:42:55,365.365 INFO    ] 2026-08-31 07:42:55
[2026-08-31 07:42:55,400.400 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:42:55,658.658 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:42:55,667.667 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:42:55,880.880 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:42:55,930.930 INFO    ] time= 31/08/2026 07:42:55
[2026-08-31 07:42:55,937.937 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:42:55,956.956 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:42:56,092.092 INFO    ] No existing commands found in stream
[2026-08-31 07:43:01,110.110 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:43:01,113.113 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-08-31 07:43:03,807.807 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 07:43:03,810.810 INFO    ] Checking for system updates...
[2026-08-31 07:43:03,846.846 INFO    ] 200
[2026-08-31 07:43:03,848.848 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:43:03,902.902 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:43:03,904.904 INFO    ] No update needed
[2026-08-31 07:43:03,906.906 INFO    ] Checking for camera pi updates...
[2026-08-31 07:43:03,943.943 INFO    ] 200
[2026-08-31 07:43:03,945.945 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:43:03,989.989 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:43:04,065.065 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:43:04,067.067 INFO    ] No camera update needed
[2026-08-31 07:43:04,070.070 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:43:04,072.072 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:43:04,077.077 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:43:04,082.082 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:43:06,123.123 INFO    ] ================================================
[2026-08-31 07:43:06,138.138 INFO    ] Launching Daemon at Mon Aug 31 07:43:06 IST 2026
[2026-08-31 07:43:06,149.149 INFO    ] ================================================
[2026-08-31 07:43:06,757.757 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:43:06
[2026-08-31 07:43:07,347.347 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:43:07,614.614 INFO    ] Initializing speech engine...
[2026-08-31 07:43:07,624.624 INFO    ] 2026-08-31 07:43:07
[2026-08-31 07:43:07,892.892 INFO    ] 2026-08-31 07:43:07
[2026-08-31 07:43:07,945.945 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:43:08,198.198 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:43:08,203.203 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:43:08,434.434 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:43:08,441.441 INFO    ] time= 31/08/2026 07:43:08
[2026-08-31 07:43:08,459.459 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:43:08,470.470 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:43:08,608.608 INFO    ] No existing commands found in stream
[2026-08-31 07:43:13,639.639 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:43:13,642.642 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-08-31 07:43:18,953.953 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 07:43:18,955.955 INFO    ] Checking for system updates...
[2026-08-31 07:43:18,994.994 INFO    ] 200
[2026-08-31 07:43:18,997.997 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:43:19,050.050 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:43:19,052.052 INFO    ] No update needed
[2026-08-31 07:43:19,055.055 INFO    ] Checking for camera pi updates...
[2026-08-31 07:43:19,088.088 INFO    ] 200
[2026-08-31 07:43:19,091.091 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:43:19,132.132 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:43:19,211.211 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:43:19,213.213 INFO    ] No camera update needed
[2026-08-31 07:43:19,216.216 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:43:19,218.218 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:43:19,224.224 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:43:19,229.229 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:43:21,270.270 INFO    ] ================================================
[2026-08-31 07:43:21,286.286 INFO    ] Launching Daemon at Mon Aug 31 07:43:21 IST 2026
[2026-08-31 07:43:21,296.296 INFO    ] ================================================
[2026-08-31 07:43:21,939.939 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:43:21
[2026-08-31 07:43:22,605.605 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:43:22,910.910 INFO    ] Initializing speech engine...
[2026-08-31 07:43:22,921.921 INFO    ] 2026-08-31 07:43:22
[2026-08-31 07:43:23,212.212 INFO    ] 2026-08-31 07:43:23
[2026-08-31 07:43:23,324.324 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:43:23,503.503 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:43:23,510.510 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:43:23,719.719 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:43:23,753.753 INFO    ] time= 31/08/2026 07:43:23
[2026-08-31 07:43:23,769.769 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:43:23,778.778 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:43:23,894.894 INFO    ] No existing commands found in stream
[2026-08-31 07:43:28,920.920 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:43:28,923.923 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-08-31 07:43:29,606.606 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 07:43:29,609.609 INFO    ] Checking for system updates...
[2026-08-31 07:43:29,645.645 INFO    ] 200
[2026-08-31 07:43:29,648.648 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:43:29,702.702 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:43:29,704.704 INFO    ] No update needed
[2026-08-31 07:43:29,707.707 INFO    ] Checking for camera pi updates...
[2026-08-31 07:43:29,747.747 INFO    ] 200
[2026-08-31 07:43:29,750.750 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:43:29,791.791 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:43:29,852.852 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:43:29,855.855 INFO    ] No camera update needed
[2026-08-31 07:43:29,857.857 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:43:29,860.860 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:43:29,865.865 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:43:29,870.870 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:43:31,912.912 INFO    ] ================================================
[2026-08-31 07:43:31,929.929 INFO    ] Launching Daemon at Mon Aug 31 07:43:31 IST 2026
[2026-08-31 07:43:31,943.943 INFO    ] ================================================
[2026-08-31 07:43:32,541.541 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:43:32
[2026-08-31 07:43:33,168.168 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:43:33,433.433 INFO    ] Initializing speech engine...
[2026-08-31 07:43:33,454.454 INFO    ] 2026-08-31 07:43:33
[2026-08-31 07:43:33,713.713 INFO    ] 2026-08-31 07:43:33
[2026-08-31 07:43:33,749.749 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:43:34,006.006 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:43:34,015.015 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:43:34,228.228 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:43:34,278.278 INFO    ] time= 31/08/2026 07:43:34
[2026-08-31 07:43:34,284.284 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:43:34,306.306 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:43:34,430.430 INFO    ] No existing commands found in stream
[2026-08-31 07:43:39,446.446 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:43:39,449.449 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-08-31 07:43:40,046.046 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 07:43:40,049.049 INFO    ] Checking for system updates...
[2026-08-31 07:43:40,088.088 INFO    ] 200
[2026-08-31 07:43:40,091.091 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:43:40,144.144 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:43:40,147.147 INFO    ] No update needed
[2026-08-31 07:43:40,149.149 INFO    ] Checking for camera pi updates...
[2026-08-31 07:43:40,183.183 INFO    ] 200
[2026-08-31 07:43:40,186.186 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:43:40,231.231 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:43:40,322.322 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:43:40,325.325 INFO    ] No camera update needed
[2026-08-31 07:43:40,327.327 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:43:40,329.329 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:43:40,335.335 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:43:40,339.339 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:43:42,380.380 INFO    ] ================================================
[2026-08-31 07:43:42,395.395 INFO    ] Launching Daemon at Mon Aug 31 07:43:42 IST 2026
[2026-08-31 07:43:42,406.406 INFO    ] ================================================
[2026-08-31 07:43:43,000.000 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:43:42
[2026-08-31 07:43:43,585.585 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:43:43,838.838 INFO    ] Initializing speech engine...
[2026-08-31 07:43:43,846.846 INFO    ] 2026-08-31 07:43:43
[2026-08-31 07:43:44,141.141 INFO    ] 2026-08-31 07:43:44
[2026-08-31 07:43:44,178.178 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:43:44,404.404 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:43:44,436.436 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:43:44,639.639 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:43:44,694.694 INFO    ] time= 31/08/2026 07:43:44
[2026-08-31 07:43:44,705.705 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:43:44,722.722 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:43:44,838.838 INFO    ] No existing commands found in stream
[2026-08-31 07:43:49,862.862 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:43:49,865.865 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-08-31 07:43:50,405.405 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 07:43:50,407.407 INFO    ] Checking for system updates...
[2026-08-31 07:43:50,446.446 INFO    ] 200
[2026-08-31 07:43:50,449.449 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:43:50,507.507 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:43:50,510.510 INFO    ] No update needed
[2026-08-31 07:43:50,512.512 INFO    ] Checking for camera pi updates...
[2026-08-31 07:43:50,549.549 INFO    ] 200
[2026-08-31 07:43:50,551.551 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:43:50,592.592 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:43:50,665.665 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:43:50,668.668 INFO    ] No camera update needed
[2026-08-31 07:43:50,670.670 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:43:50,672.672 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:43:50,678.678 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:43:50,683.683 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:43:52,723.723 INFO    ] ================================================
[2026-08-31 07:43:52,738.738 INFO    ] Launching Daemon at Mon Aug 31 07:43:52 IST 2026
[2026-08-31 07:43:52,748.748 INFO    ] ================================================
[2026-08-31 07:43:53,317.317 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:43:53
[2026-08-31 07:43:53,901.901 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:43:54,149.149 INFO    ] Initializing speech engine...
[2026-08-31 07:43:54,168.168 INFO    ] 2026-08-31 07:43:54
[2026-08-31 07:43:54,426.426 INFO    ] 2026-08-31 07:43:54
[2026-08-31 07:43:54,460.460 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:43:54,714.714 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:43:54,724.724 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:43:54,858.858 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:43:54,928.928 INFO    ] time= 31/08/2026 07:43:54
[2026-08-31 07:43:54,986.986 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:43:54,993.993 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:43:55,117.117 INFO    ] No existing commands found in stream
[2026-08-31 07:44:00,145.145 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:44:00,148.148 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-08-31 07:44:02,866.866 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 07:44:02,868.868 INFO    ] Checking for system updates...
[2026-08-31 07:44:02,913.913 INFO    ] 200
[2026-08-31 07:44:02,915.915 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:44:02,978.978 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:44:02,982.982 INFO    ] No update needed
[2026-08-31 07:44:02,985.985 INFO    ] Checking for camera pi updates...
[2026-08-31 07:44:03,029.029 INFO    ] 200
[2026-08-31 07:44:03,033.033 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:44:03,089.089 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:44:03,192.192 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:44:03,195.195 INFO    ] No camera update needed
[2026-08-31 07:44:03,198.198 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:44:03,202.202 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:44:03,208.208 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:44:03,215.215 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:44:05,257.257 INFO    ] ================================================
[2026-08-31 07:44:05,272.272 INFO    ] Launching Daemon at Mon Aug 31 07:44:05 IST 2026
[2026-08-31 07:44:05,282.282 INFO    ] ================================================
[2026-08-31 07:44:05,851.851 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:44:05
[2026-08-31 07:44:06,435.435 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:44:06,742.742 INFO    ] Initializing speech engine...
[2026-08-31 07:44:06,750.750 INFO    ] 2026-08-31 07:44:06
[2026-08-31 07:44:07,020.020 INFO    ] 2026-08-31 07:44:07
[2026-08-31 07:44:07,064.064 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:44:07,287.287 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:44:07,291.291 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:44:07,440.440 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:44:07,494.494 INFO    ] time= 31/08/2026 07:44:07
[2026-08-31 07:44:07,548.548 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:44:07,557.557 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:44:07,703.703 INFO    ] No existing commands found in stream
[2026-08-31 07:44:12,721.721 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:44:12,724.724 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-08-31 07:44:13,728.728 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 07:44:13,730.730 INFO    ] Checking for system updates...
[2026-08-31 07:44:13,766.766 INFO    ] 200
[2026-08-31 07:44:13,769.769 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:44:13,822.822 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:44:13,824.824 INFO    ] No update needed
[2026-08-31 07:44:13,826.826 INFO    ] Checking for camera pi updates...
[2026-08-31 07:44:13,870.870 INFO    ] 200
[2026-08-31 07:44:13,873.873 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:44:13,917.917 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:44:13,997.997 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:44:14,000.000 INFO    ] No camera update needed
[2026-08-31 07:44:14,002.002 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:44:14,004.004 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:44:14,010.010 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:44:14,014.014 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:44:16,062.062 INFO    ] ================================================
[2026-08-31 07:44:16,077.077 INFO    ] Launching Daemon at Mon Aug 31 07:44:16 IST 2026
[2026-08-31 07:44:16,087.087 INFO    ] ================================================
[2026-08-31 07:44:16,681.681 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:44:16
[2026-08-31 07:44:17,282.282 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:44:17,560.560 INFO    ] Initializing speech engine...
[2026-08-31 07:44:17,566.566 INFO    ] 2026-08-31 07:44:17
[2026-08-31 07:44:17,828.828 INFO    ] 2026-08-31 07:44:17
[2026-08-31 07:44:17,859.859 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:44:18,103.103 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:44:18,113.113 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:44:18,249.249 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:44:18,299.299 INFO    ] time= 31/08/2026 07:44:18
[2026-08-31 07:44:18,363.363 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:44:18,383.383 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:44:18,503.503 INFO    ] No existing commands found in stream
[2026-08-31 07:44:23,534.534 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:44:23,537.537 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-08-31 07:44:24,768.768 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 07:44:24,771.771 INFO    ] Checking for system updates...
[2026-08-31 07:44:24,827.827 INFO    ] 200
[2026-08-31 07:44:24,830.830 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:44:24,894.894 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:44:24,896.896 INFO    ] No update needed
[2026-08-31 07:44:24,900.900 INFO    ] Checking for camera pi updates...
[2026-08-31 07:44:24,934.934 INFO    ] 200
[2026-08-31 07:44:24,936.936 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:44:24,982.982 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:44:25,070.070 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:44:25,073.073 INFO    ] No camera update needed
[2026-08-31 07:44:25,075.075 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:44:25,078.078 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:44:25,083.083 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:44:25,088.088 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:44:27,127.127 INFO    ] ================================================
[2026-08-31 07:44:27,142.142 INFO    ] Launching Daemon at Mon Aug 31 07:44:27 IST 2026
[2026-08-31 07:44:27,152.152 INFO    ] ================================================
[2026-08-31 07:44:27,731.731 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:44:27
[2026-08-31 07:44:28,353.353 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:44:28,650.650 INFO    ] Initializing speech engine...
[2026-08-31 07:44:28,657.657 INFO    ] 2026-08-31 07:44:28
[2026-08-31 07:44:28,974.974 INFO    ] 2026-08-31 07:44:28
[2026-08-31 07:44:29,058.058 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:44:29,272.272 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:44:29,277.277 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:44:29,476.476 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:44:29,498.498 INFO    ] time= 31/08/2026 07:44:29
[2026-08-31 07:44:29,526.526 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:44:29,535.535 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:44:29,663.663 INFO    ] No existing commands found in stream
[2026-08-31 07:44:34,690.690 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:44:34,693.693 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-08-31 07:44:35,399.399 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 07:44:35,402.402 INFO    ] Checking for system updates...
[2026-08-31 07:44:35,439.439 INFO    ] 200
[2026-08-31 07:44:35,442.442 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:44:35,497.497 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:44:35,500.500 INFO    ] No update needed
[2026-08-31 07:44:35,502.502 INFO    ] Checking for camera pi updates...
[2026-08-31 07:44:35,537.537 INFO    ] 200
[2026-08-31 07:44:35,540.540 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:44:35,581.581 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:44:35,763.763 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:44:35,765.765 INFO    ] No camera update needed
[2026-08-31 07:44:35,768.768 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:44:35,771.771 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:44:35,777.777 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:44:35,782.782 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:44:37,823.823 INFO    ] ================================================
[2026-08-31 07:44:37,838.838 INFO    ] Launching Daemon at Mon Aug 31 07:44:37 IST 2026
[2026-08-31 07:44:37,848.848 INFO    ] ================================================
[2026-08-31 07:44:38,424.424 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:44:38
[2026-08-31 07:44:39,012.012 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:44:39,294.294 INFO    ] Initializing speech engine...
[2026-08-31 07:44:39,301.301 INFO    ] 2026-08-31 07:44:39
[2026-08-31 07:44:39,558.558 INFO    ] 2026-08-31 07:44:39
[2026-08-31 07:44:39,588.588 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:44:39,836.836 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:44:39,841.841 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:44:40,044.044 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:44:40,098.098 INFO    ] time= 31/08/2026 07:44:40
[2026-08-31 07:44:40,108.108 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:44:40,125.125 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:44:40,256.256 INFO    ] No existing commands found in stream
[2026-08-31 07:44:45,268.268 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:44:45,271.271 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-08-31 07:44:48,750.750 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 07:44:48,753.753 INFO    ] Checking for system updates...
[2026-08-31 07:44:48,793.793 INFO    ] 200
[2026-08-31 07:44:48,796.796 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:44:48,850.850 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:44:48,852.852 INFO    ] No update needed
[2026-08-31 07:44:48,855.855 INFO    ] Checking for camera pi updates...
[2026-08-31 07:44:48,890.890 INFO    ] 200
[2026-08-31 07:44:48,893.893 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:44:48,939.939 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:44:49,027.027 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:44:49,030.030 INFO    ] No camera update needed
[2026-08-31 07:44:49,032.032 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:44:49,035.035 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:44:49,041.041 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:44:49,047.047 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:44:51,088.088 INFO    ] ================================================
[2026-08-31 07:44:51,103.103 INFO    ] Launching Daemon at Mon Aug 31 07:44:51 IST 2026
[2026-08-31 07:44:51,114.114 INFO    ] ================================================
[2026-08-31 07:44:51,699.699 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:44:51
[2026-08-31 07:44:52,296.296 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:44:52,571.571 INFO    ] Initializing speech engine...
[2026-08-31 07:44:52,577.577 INFO    ] 2026-08-31 07:44:52
[2026-08-31 07:44:52,827.827 INFO    ] 2026-08-31 07:44:52
[2026-08-31 07:44:52,868.868 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:44:53,113.113 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:44:53,122.122 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:44:53,308.308 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:44:53,368.368 INFO    ] time= 31/08/2026 07:44:53
[2026-08-31 07:44:53,384.384 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:44:53,390.390 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:44:53,560.560 INFO    ] No existing commands found in stream
[2026-08-31 07:44:58,590.590 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:44:58,593.593 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-08-31 07:45:01,431.431 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 07:45:01,434.434 INFO    ] Checking for system updates...
[2026-08-31 07:45:01,470.470 INFO    ] 200
[2026-08-31 07:45:01,472.472 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:45:01,534.534 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:45:01,537.537 INFO    ] No update needed
[2026-08-31 07:45:01,539.539 INFO    ] Checking for camera pi updates...
[2026-08-31 07:45:01,572.572 INFO    ] 200
[2026-08-31 07:45:01,575.575 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:45:01,615.615 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:45:01,698.698 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:45:01,702.702 INFO    ] No camera update needed
[2026-08-31 07:45:01,706.706 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:45:01,715.715 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:45:01,724.724 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:45:01,732.732 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:45:03,781.781 INFO    ] ================================================
[2026-08-31 07:45:03,796.796 INFO    ] Launching Daemon at Mon Aug 31 07:45:03 IST 2026
[2026-08-31 07:45:03,807.807 INFO    ] ================================================
[2026-08-31 07:45:04,396.396 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:45:04
[2026-08-31 07:45:04,996.996 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:45:05,260.260 INFO    ] Initializing speech engine...
[2026-08-31 07:45:05,276.276 INFO    ] 2026-08-31 07:45:05
[2026-08-31 07:45:05,564.564 INFO    ] 2026-08-31 07:45:05
[2026-08-31 07:45:05,600.600 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:45:05,802.802 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:45:05,808.808 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:45:05,944.944 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:45:05,951.951 INFO    ] time= 31/08/2026 07:45:05
[2026-08-31 07:45:05,972.972 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:45:05,995.995 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:45:06,082.082 INFO    ] No existing commands found in stream
[2026-08-31 07:45:11,097.097 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:45:11,100.100 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-08-31 07:45:14,550.550 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 07:45:14,553.553 INFO    ] Checking for system updates...
[2026-08-31 07:45:14,589.589 INFO    ] 200
[2026-08-31 07:45:14,591.591 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:45:14,644.644 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:45:14,647.647 INFO    ] No update needed
[2026-08-31 07:45:14,650.650 INFO    ] Checking for camera pi updates...
[2026-08-31 07:45:14,684.684 INFO    ] 200
[2026-08-31 07:45:14,687.687 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:45:14,728.728 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:45:14,820.820 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:45:14,822.822 INFO    ] No camera update needed
[2026-08-31 07:45:14,824.824 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:45:14,827.827 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:45:14,832.832 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:45:14,838.838 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:45:16,877.877 INFO    ] ================================================
[2026-08-31 07:45:16,892.892 INFO    ] Launching Daemon at Mon Aug 31 07:45:16 IST 2026
[2026-08-31 07:45:16,903.903 INFO    ] ================================================
[2026-08-31 07:45:17,481.481 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:45:17
[2026-08-31 07:45:18,076.076 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:45:18,354.354 INFO    ] Initializing speech engine...
[2026-08-31 07:45:18,370.370 INFO    ] 2026-08-31 07:45:18
[2026-08-31 07:45:18,623.623 INFO    ] 2026-08-31 07:45:18
[2026-08-31 07:45:18,674.674 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:45:18,903.903 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:45:18,907.907 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:45:19,041.041 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:45:19,080.080 INFO    ] time= 31/08/2026 07:45:19
[2026-08-31 07:45:19,134.134 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:45:19,173.173 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:45:19,316.316 INFO    ] No existing commands found in stream
[2026-08-31 07:45:24,332.332 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:45:24,335.335 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-08-31 07:45:24,895.895 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 07:45:24,898.898 INFO    ] Checking for system updates...
[2026-08-31 07:45:24,934.934 INFO    ] 200
[2026-08-31 07:45:24,936.936 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:45:24,997.997 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:45:24,999.999 INFO    ] No update needed
[2026-08-31 07:45:25,002.002 INFO    ] Checking for camera pi updates...
[2026-08-31 07:45:25,034.034 INFO    ] 200
[2026-08-31 07:45:25,037.037 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:45:25,090.090 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:45:25,153.153 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:45:25,155.155 INFO    ] No camera update needed
[2026-08-31 07:45:25,158.158 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:45:25,160.160 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:45:25,165.165 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:45:25,170.170 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:45:27,212.212 INFO    ] ================================================
[2026-08-31 07:45:27,230.230 INFO    ] Launching Daemon at Mon Aug 31 07:45:27 IST 2026
[2026-08-31 07:45:27,241.241 INFO    ] ================================================
[2026-08-31 07:45:27,820.820 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:45:27
[2026-08-31 07:45:28,415.415 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:45:28,676.676 INFO    ] Initializing speech engine...
[2026-08-31 07:45:28,682.682 INFO    ] 2026-08-31 07:45:28
[2026-08-31 07:45:28,980.980 INFO    ] 2026-08-31 07:45:28
[2026-08-31 07:45:29,006.006 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:45:29,219.219 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:45:29,225.225 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:45:29,402.402 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:45:29,411.411 INFO    ] time= 31/08/2026 07:45:29
[2026-08-31 07:45:29,418.418 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:45:29,472.472 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:45:29,632.632 INFO    ] No existing commands found in stream
[2026-08-31 07:45:34,652.652 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:45:34,659.659 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-08-31 07:45:38,252.252 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 07:45:38,255.255 INFO    ] Checking for system updates...
[2026-08-31 07:45:38,290.290 INFO    ] 200
[2026-08-31 07:45:38,293.293 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:45:38,346.346 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:45:38,348.348 INFO    ] No update needed
[2026-08-31 07:45:38,351.351 INFO    ] Checking for camera pi updates...
[2026-08-31 07:45:38,384.384 INFO    ] 200
[2026-08-31 07:45:38,386.386 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:45:38,427.427 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:45:38,513.513 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:45:38,515.515 INFO    ] No camera update needed
[2026-08-31 07:45:38,518.518 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:45:38,520.520 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:45:38,525.525 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:45:38,530.530 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:45:40,570.570 INFO    ] ================================================
[2026-08-31 07:45:40,585.585 INFO    ] Launching Daemon at Mon Aug 31 07:45:40 IST 2026
[2026-08-31 07:45:40,596.596 INFO    ] ================================================
[2026-08-31 07:45:41,161.161 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:45:41
[2026-08-31 07:45:41,744.744 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:45:42,014.014 INFO    ] Initializing speech engine...
[2026-08-31 07:45:42,022.022 INFO    ] 2026-08-31 07:45:42
[2026-08-31 07:45:42,266.266 INFO    ] 2026-08-31 07:45:42
[2026-08-31 07:45:42,301.301 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:45:42,556.556 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:45:42,562.562 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:45:42,764.764 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:45:42,817.817 INFO    ] time= 31/08/2026 07:45:42
[2026-08-31 07:45:42,824.824 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:45:42,842.842 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:45:42,967.967 INFO    ] No existing commands found in stream
[2026-08-31 07:45:47,982.982 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:45:47,985.985 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-08-31 07:45:51,846.846 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 07:45:51,849.849 INFO    ] Checking for system updates...
[2026-08-31 07:45:51,888.888 INFO    ] 200
[2026-08-31 07:45:51,891.891 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:45:51,942.942 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:45:51,945.945 INFO    ] No update needed
[2026-08-31 07:45:51,947.947 INFO    ] Checking for camera pi updates...
[2026-08-31 07:45:51,981.981 INFO    ] 200
[2026-08-31 07:45:51,983.983 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:45:52,028.028 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:45:52,094.094 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:45:52,096.096 INFO    ] No camera update needed
[2026-08-31 07:45:52,098.098 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:45:52,101.101 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:45:52,106.106 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:45:52,111.111 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:45:54,154.154 INFO    ] ================================================
[2026-08-31 07:45:54,169.169 INFO    ] Launching Daemon at Mon Aug 31 07:45:54 IST 2026
[2026-08-31 07:45:54,179.179 INFO    ] ================================================
[2026-08-31 07:45:54,765.765 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:45:54
[2026-08-31 07:45:55,374.374 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:45:55,636.636 INFO    ] Initializing speech engine...
[2026-08-31 07:45:55,645.645 INFO    ] 2026-08-31 07:45:55
[2026-08-31 07:45:55,942.942 INFO    ] 2026-08-31 07:45:55
[2026-08-31 07:45:55,981.981 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:45:56,191.191 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:45:56,208.208 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:45:56,359.359 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:45:56,364.364 INFO    ] time= 31/08/2026 07:45:56
[2026-08-31 07:45:56,371.371 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:45:56,409.409 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:45:56,528.528 INFO    ] No existing commands found in stream
[2026-08-31 07:46:01,550.550 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:46:01,552.552 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-08-31 07:46:05,966.966 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 07:46:05,968.968 INFO    ] Checking for system updates...
[2026-08-31 07:46:06,004.004 INFO    ] 200
[2026-08-31 07:46:06,007.007 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:46:06,062.062 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:46:06,065.065 INFO    ] No update needed
[2026-08-31 07:46:06,067.067 INFO    ] Checking for camera pi updates...
[2026-08-31 07:46:06,100.100 INFO    ] 200
[2026-08-31 07:46:06,103.103 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:46:06,144.144 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:46:06,240.240 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:46:06,242.242 INFO    ] No camera update needed
[2026-08-31 07:46:06,245.245 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:46:06,247.247 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:46:06,252.252 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:46:06,257.257 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:46:08,297.297 INFO    ] ================================================
[2026-08-31 07:46:08,312.312 INFO    ] Launching Daemon at Mon Aug 31 07:46:08 IST 2026
[2026-08-31 07:46:08,323.323 INFO    ] ================================================
[2026-08-31 07:46:08,900.900 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:46:08
[2026-08-31 07:46:09,499.499 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:46:09,753.753 INFO    ] Initializing speech engine...
[2026-08-31 07:46:09,759.759 INFO    ] 2026-08-31 07:46:09
[2026-08-31 07:46:10,056.056 INFO    ] 2026-08-31 07:46:10
[2026-08-31 07:46:10,081.081 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:46:10,666.666 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:46:10,684.684 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:46:10,852.852 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:46:10,896.896 INFO    ] time= 31/08/2026 07:46:10
[2026-08-31 07:46:10,952.952 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:46:10,975.975 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:46:11,113.113 INFO    ] No existing commands found in stream
[2026-08-31 07:46:16,139.139 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:46:16,142.142 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-08-31 07:46:17,727.727 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 07:46:17,730.730 INFO    ] Checking for system updates...
[2026-08-31 07:46:17,811.811 INFO    ] 200
[2026-08-31 07:46:17,813.813 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-08-31 07:46:17,816.816 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-08-31 07:46:17,819.819 INFO    ] Checking for camera pi updates...
[2026-08-31 07:46:17,855.855 INFO    ] 200
[2026-08-31 07:46:17,858.858 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-08-31 07:46:17,861.861 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-08-31 07:46:17,863.863 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:46:17,866.866 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:46:17,872.872 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:46:17,877.877 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:46:19,918.918 INFO    ] ================================================
[2026-08-31 07:46:19,933.933 INFO    ] Launching Daemon at Mon Aug 31 07:46:19 IST 2026
[2026-08-31 07:46:19,944.944 INFO    ] ================================================
[2026-08-31 07:46:20,540.540 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:46:20
[2026-08-31 07:46:21,135.135 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:46:21,413.413 INFO    ] Initializing speech engine...
[2026-08-31 07:46:21,419.419 INFO    ] 2026-08-31 07:46:21
[2026-08-31 07:46:21,680.680 INFO    ] 2026-08-31 07:46:21
[2026-08-31 07:46:21,733.733 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:46:21,960.960 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:46:21,965.965 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:46:22,094.094 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:46:22,141.141 INFO    ] time= 31/08/2026 07:46:22
[2026-08-31 07:46:22,190.190 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:46:22,227.227 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:46:22,371.371 INFO    ] No existing commands found in stream
[2026-08-31 07:46:27,387.387 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:46:27,390.390 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-08-31 07:46:30,791.791 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 07:46:30,794.794 INFO    ] Checking for system updates...
[2026-08-31 07:46:30,831.831 INFO    ] 200
[2026-08-31 07:46:30,834.834 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:46:30,886.886 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:46:30,888.888 INFO    ] No update needed
[2026-08-31 07:46:30,891.891 INFO    ] Checking for camera pi updates...
[2026-08-31 07:46:30,928.928 INFO    ] 200
[2026-08-31 07:46:30,930.930 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:46:30,971.971 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:46:31,052.052 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:46:31,054.054 INFO    ] No camera update needed
[2026-08-31 07:46:31,057.057 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:46:31,060.060 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:46:31,066.066 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:46:31,072.072 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:46:33,112.112 INFO    ] ================================================
[2026-08-31 07:46:33,128.128 INFO    ] Launching Daemon at Mon Aug 31 07:46:33 IST 2026
[2026-08-31 07:46:33,138.138 INFO    ] ================================================
[2026-08-31 07:46:33,774.774 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:46:33
[2026-08-31 07:46:34,429.429 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:46:34,713.713 INFO    ] Initializing speech engine...
[2026-08-31 07:46:34,728.728 INFO    ] 2026-08-31 07:46:34
[2026-08-31 07:46:35,008.008 INFO    ] 2026-08-31 07:46:35
[2026-08-31 07:46:35,045.045 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:46:35,237.237 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:46:35,264.264 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:46:35,435.435 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:46:35,530.530 INFO    ] time= 31/08/2026 07:46:35
[2026-08-31 07:46:35,532.532 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:46:35,568.568 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:46:35,714.714 INFO    ] No existing commands found in stream
[2026-08-31 07:46:40,727.727 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:46:40,730.730 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-08-31 07:46:43,323.323 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 07:46:43,326.326 INFO    ] Checking for system updates...
[2026-08-31 07:46:43,361.361 INFO    ] 200
[2026-08-31 07:46:43,364.364 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:46:43,417.417 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:46:43,419.419 INFO    ] No update needed
[2026-08-31 07:46:43,421.421 INFO    ] Checking for camera pi updates...
[2026-08-31 07:46:43,455.455 INFO    ] 200
[2026-08-31 07:46:43,457.457 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:46:43,497.497 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:46:43,702.702 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:46:43,705.705 INFO    ] No camera update needed
[2026-08-31 07:46:43,707.707 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:46:43,709.709 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:46:43,714.714 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:46:43,719.719 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:46:45,759.759 INFO    ] ================================================
[2026-08-31 07:46:45,774.774 INFO    ] Launching Daemon at Mon Aug 31 07:46:45 IST 2026
[2026-08-31 07:46:45,784.784 INFO    ] ================================================
[2026-08-31 07:46:46,365.365 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:46:46
[2026-08-31 07:46:46,961.961 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:46:47,238.238 INFO    ] Initializing speech engine...
[2026-08-31 07:46:47,245.245 INFO    ] 2026-08-31 07:46:47
[2026-08-31 07:46:47,504.504 INFO    ] 2026-08-31 07:46:47
[2026-08-31 07:46:47,554.554 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:46:47,778.778 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:46:47,787.787 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:46:47,922.922 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:46:47,976.976 INFO    ] time= 31/08/2026 07:46:47
[2026-08-31 07:46:48,030.030 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:46:48,055.055 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:46:48,106.106 INFO    ] No existing commands found in stream
[2026-08-31 07:46:53,118.118 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:46:53,121.121 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-08-31 07:46:57,597.597 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 07:46:57,600.600 INFO    ] Checking for system updates...
[2026-08-31 07:46:57,636.636 INFO    ] 200
[2026-08-31 07:46:57,639.639 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:46:57,691.691 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:46:57,694.694 INFO    ] No update needed
[2026-08-31 07:46:57,696.696 INFO    ] Checking for camera pi updates...
[2026-08-31 07:46:57,730.730 INFO    ] 200
[2026-08-31 07:46:57,732.732 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:46:57,772.772 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:46:57,851.851 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:46:57,854.854 INFO    ] No camera update needed
[2026-08-31 07:46:57,856.856 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:46:57,859.859 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:46:57,864.864 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:46:57,869.869 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:46:59,912.912 INFO    ] ================================================
[2026-08-31 07:46:59,927.927 INFO    ] Launching Daemon at Mon Aug 31 07:46:59 IST 2026
[2026-08-31 07:46:59,937.937 INFO    ] ================================================
[2026-08-31 07:47:00,504.504 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:47:00
[2026-08-31 07:47:01,088.088 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:47:01,360.360 INFO    ] Initializing speech engine...
[2026-08-31 07:47:01,366.366 INFO    ] 2026-08-31 07:47:01
[2026-08-31 07:47:01,626.626 INFO    ] 2026-08-31 07:47:01
[2026-08-31 07:47:01,679.679 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:47:01,954.954 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:47:01,958.958 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:47:02,119.119 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:47:02,123.123 INFO    ] time= 31/08/2026 07:47:02
[2026-08-31 07:47:02,127.127 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:47:02,130.130 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:47:02,252.252 INFO    ] No existing commands found in stream
[2026-08-31 07:47:07,319.319 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:47:07,321.321 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-08-31 07:47:08,253.253 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 07:47:08,256.256 INFO    ] Checking for system updates...
[2026-08-31 07:47:08,292.292 INFO    ] 200
[2026-08-31 07:47:08,295.295 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:47:08,353.353 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:47:08,356.356 INFO    ] No update needed
[2026-08-31 07:47:08,358.358 INFO    ] Checking for camera pi updates...
[2026-08-31 07:47:08,395.395 INFO    ] 200
[2026-08-31 07:47:08,397.397 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:47:08,441.441 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:47:08,525.525 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:47:08,527.527 INFO    ] No camera update needed
[2026-08-31 07:47:08,530.530 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:47:08,532.532 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:47:08,537.537 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:47:08,542.542 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:47:10,583.583 INFO    ] ================================================
[2026-08-31 07:47:10,598.598 INFO    ] Launching Daemon at Mon Aug 31 07:47:10 IST 2026
[2026-08-31 07:47:10,609.609 INFO    ] ================================================
[2026-08-31 07:47:11,176.176 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:47:11
[2026-08-31 07:47:11,759.759 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:47:12,028.028 INFO    ] Initializing speech engine...
[2026-08-31 07:47:12,048.048 INFO    ] 2026-08-31 07:47:12
[2026-08-31 07:47:12,324.324 INFO    ] 2026-08-31 07:47:12
[2026-08-31 07:47:12,363.363 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:47:12,562.562 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:47:12,577.577 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:47:12,752.752 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:47:12,798.798 INFO    ] time= 31/08/2026 07:47:12
[2026-08-31 07:47:12,826.826 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:47:12,853.853 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:47:12,975.975 INFO    ] No existing commands found in stream
[2026-08-31 07:47:17,986.986 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:47:17,989.989 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-08-31 07:47:20,396.396 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 07:47:20,399.399 INFO    ] Checking for system updates...
[2026-08-31 07:47:20,435.435 INFO    ] 200
[2026-08-31 07:47:20,438.438 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:47:20,491.491 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:47:20,493.493 INFO    ] No update needed
[2026-08-31 07:47:20,495.495 INFO    ] Checking for camera pi updates...
[2026-08-31 07:47:20,533.533 INFO    ] 200
[2026-08-31 07:47:20,535.535 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:47:20,576.576 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:47:20,662.662 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:47:20,665.665 INFO    ] No camera update needed
[2026-08-31 07:47:20,668.668 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:47:20,670.670 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:47:20,677.677 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:47:20,683.683 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:47:22,723.723 INFO    ] ================================================
[2026-08-31 07:47:22,738.738 INFO    ] Launching Daemon at Mon Aug 31 07:47:22 IST 2026
[2026-08-31 07:47:22,749.749 INFO    ] ================================================
[2026-08-31 07:47:23,314.314 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:47:23
[2026-08-31 07:47:23,898.898 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:47:24,154.154 INFO    ] Initializing speech engine...
[2026-08-31 07:47:24,163.163 INFO    ] 2026-08-31 07:47:24
[2026-08-31 07:47:24,458.458 INFO    ] 2026-08-31 07:47:24
[2026-08-31 07:47:24,483.483 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:47:24,717.717 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:47:24,726.726 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:47:24,948.948 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:47:24,956.956 INFO    ] time= 31/08/2026 07:47:24
[2026-08-31 07:47:24,995.995 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:47:25,044.044 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:47:25,132.132 INFO    ] No existing commands found in stream
[2026-08-31 07:47:30,152.152 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:47:30,155.155 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-08-31 07:47:34,609.609 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 07:47:34,612.612 INFO    ] Checking for system updates...
[2026-08-31 07:47:34,648.648 INFO    ] 200
[2026-08-31 07:47:34,651.651 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:47:34,711.711 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:47:34,714.714 INFO    ] No update needed
[2026-08-31 07:47:34,716.716 INFO    ] Checking for camera pi updates...
[2026-08-31 07:47:34,755.755 INFO    ] 200
[2026-08-31 07:47:34,758.758 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:47:34,804.804 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:47:34,889.889 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:47:34,891.891 INFO    ] No camera update needed
[2026-08-31 07:47:34,894.894 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:47:34,897.897 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:47:34,903.903 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:47:34,909.909 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:47:36,952.952 INFO    ] ================================================
[2026-08-31 07:47:36,967.967 INFO    ] Launching Daemon at Mon Aug 31 07:47:36 IST 2026
[2026-08-31 07:47:36,978.978 INFO    ] ================================================
[2026-08-31 07:47:37,549.549 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:47:37
[2026-08-31 07:47:38,137.137 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:47:38,388.388 INFO    ] Initializing speech engine...
[2026-08-31 07:47:38,394.394 INFO    ] 2026-08-31 07:47:38
[2026-08-31 07:47:38,693.693 INFO    ] 2026-08-31 07:47:38
[2026-08-31 07:47:38,731.731 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:47:38,953.953 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:47:38,961.961 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:47:39,084.084 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:47:39,106.106 INFO    ] time= 31/08/2026 07:47:39
[2026-08-31 07:47:39,115.115 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:47:39,122.122 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:47:39,194.194 INFO    ] No existing commands found in stream
[2026-08-31 07:47:44,208.208 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:47:44,211.211 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-08-31 07:47:45,730.730 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 07:47:45,733.733 INFO    ] Checking for system updates...
[2026-08-31 07:47:45,771.771 INFO    ] 200
[2026-08-31 07:47:45,774.774 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:47:45,832.832 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:47:45,834.834 INFO    ] No update needed
[2026-08-31 07:47:45,836.836 INFO    ] Checking for camera pi updates...
[2026-08-31 07:47:45,873.873 INFO    ] 200
[2026-08-31 07:47:45,876.876 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:47:45,915.915 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:47:45,974.974 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:47:45,977.977 INFO    ] No camera update needed
[2026-08-31 07:47:45,979.979 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:47:45,982.982 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:47:45,987.987 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:47:45,992.992 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:47:48,033.033 INFO    ] ================================================
[2026-08-31 07:47:48,048.048 INFO    ] Launching Daemon at Mon Aug 31 07:47:48 IST 2026
[2026-08-31 07:47:48,059.059 INFO    ] ================================================
[2026-08-31 07:47:48,627.627 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:47:48
[2026-08-31 07:47:49,215.215 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:47:49,463.463 INFO    ] Initializing speech engine...
[2026-08-31 07:47:49,484.484 INFO    ] 2026-08-31 07:47:49
[2026-08-31 07:47:49,743.743 INFO    ] 2026-08-31 07:47:49
[2026-08-31 07:47:49,778.778 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:47:49,954.954 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:47:49,966.966 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:47:50,179.179 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:47:50,221.221 INFO    ] time= 31/08/2026 07:47:50
[2026-08-31 07:47:50,281.281 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:47:50,316.316 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:47:50,431.431 INFO    ] No existing commands found in stream
[2026-08-31 07:47:55,448.448 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:47:55,451.451 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-08-31 07:47:58,606.606 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 07:47:58,609.609 INFO    ] Checking for system updates...
[2026-08-31 07:47:58,646.646 INFO    ] 200
[2026-08-31 07:47:58,649.649 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:47:58,709.709 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:47:58,712.712 INFO    ] No update needed
[2026-08-31 07:47:58,714.714 INFO    ] Checking for camera pi updates...
[2026-08-31 07:47:58,749.749 INFO    ] 200
[2026-08-31 07:47:58,752.752 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:47:58,800.800 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:47:58,881.881 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:47:58,883.883 INFO    ] No camera update needed
[2026-08-31 07:47:58,886.886 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:47:58,889.889 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:47:58,895.895 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:47:58,901.901 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:48:00,944.944 INFO    ] ================================================
[2026-08-31 07:48:00,959.959 INFO    ] Launching Daemon at Mon Aug 31 07:48:00 IST 2026
[2026-08-31 07:48:00,969.969 INFO    ] ================================================
[2026-08-31 07:48:01,623.623 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:48:01
[2026-08-31 07:48:02,458.458 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:48:02,830.830 INFO    ] Initializing speech engine...
[2026-08-31 07:48:02,842.842 INFO    ] 2026-08-31 07:48:02
[2026-08-31 07:48:03,153.153 INFO    ] 2026-08-31 07:48:03
[2026-08-31 07:48:03,239.239 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:48:03,456.456 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:48:03,474.474 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:48:03,673.673 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:48:03,712.712 INFO    ] time= 31/08/2026 07:48:03
[2026-08-31 07:48:03,732.732 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:48:03,762.762 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:48:03,873.873 INFO    ] No existing commands found in stream
[2026-08-31 07:48:08,889.889 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:48:08,891.891 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-08-31 07:48:12,128.128 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 07:48:12,130.130 INFO    ] Checking for system updates...
[2026-08-31 07:48:12,167.167 INFO    ] 200
[2026-08-31 07:48:12,169.169 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:48:12,229.229 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:48:12,232.232 INFO    ] No update needed
[2026-08-31 07:48:12,234.234 INFO    ] Checking for camera pi updates...
[2026-08-31 07:48:12,271.271 INFO    ] 200
[2026-08-31 07:48:12,274.274 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:48:12,314.314 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:48:12,383.383 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:48:12,386.386 INFO    ] No camera update needed
[2026-08-31 07:48:12,389.389 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:48:12,391.391 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:48:12,397.397 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:48:12,403.403 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:48:14,445.445 INFO    ] ================================================
[2026-08-31 07:48:14,460.460 INFO    ] Launching Daemon at Mon Aug 31 07:48:14 IST 2026
[2026-08-31 07:48:14,471.471 INFO    ] ================================================
[2026-08-31 07:48:15,120.120 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:48:15
[2026-08-31 07:48:15,791.791 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:48:16,093.093 INFO    ] Initializing speech engine...
[2026-08-31 07:48:16,107.107 INFO    ] 2026-08-31 07:48:16
[2026-08-31 07:48:16,392.392 INFO    ] 2026-08-31 07:48:16
[2026-08-31 07:48:16,501.501 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:48:16,716.716 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:48:16,722.722 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:48:16,918.918 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:48:16,926.926 INFO    ] time= 31/08/2026 07:48:16
[2026-08-31 07:48:16,948.948 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:48:16,978.978 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:48:17,076.076 INFO    ] No existing commands found in stream
[2026-08-31 07:48:22,094.094 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:48:22,097.097 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-08-31 07:48:24,927.927 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 07:48:24,930.930 INFO    ] Checking for system updates...
[2026-08-31 07:48:24,972.972 INFO    ] 200
[2026-08-31 07:48:24,975.975 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:48:25,034.034 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:48:25,037.037 INFO    ] No update needed
[2026-08-31 07:48:25,040.040 INFO    ] Checking for camera pi updates...
[2026-08-31 07:48:25,073.073 INFO    ] 200
[2026-08-31 07:48:25,075.075 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:48:25,117.117 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:48:25,200.200 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:48:25,203.203 INFO    ] No camera update needed
[2026-08-31 07:48:25,206.206 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:48:25,209.209 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:48:25,216.216 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:48:25,222.222 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:48:27,263.263 INFO    ] ================================================
[2026-08-31 07:48:27,279.279 INFO    ] Launching Daemon at Mon Aug 31 07:48:27 IST 2026
[2026-08-31 07:48:27,290.290 INFO    ] ================================================
[2026-08-31 07:48:27,948.948 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:48:27
[2026-08-31 07:48:28,572.572 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:48:28,832.832 INFO    ] Initializing speech engine...
[2026-08-31 07:48:28,841.841 INFO    ] 2026-08-31 07:48:28
[2026-08-31 07:48:29,141.141 INFO    ] 2026-08-31 07:48:29
[2026-08-31 07:48:29,180.180 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:48:29,383.383 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:48:29,397.397 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:48:29,558.558 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:48:29,567.567 INFO    ] time= 31/08/2026 07:48:29
[2026-08-31 07:48:29,571.571 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:48:29,577.577 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:48:29,651.651 INFO    ] No existing commands found in stream
[2026-08-31 07:48:34,663.663 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:48:34,666.666 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-08-31 07:48:39,909.909 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 07:48:39,912.912 INFO    ] Checking for system updates...
[2026-08-31 07:48:39,947.947 INFO    ] 200
[2026-08-31 07:48:39,950.950 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:48:40,003.003 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:48:40,006.006 INFO    ] No update needed
[2026-08-31 07:48:40,008.008 INFO    ] Checking for camera pi updates...
[2026-08-31 07:48:40,046.046 INFO    ] 200
[2026-08-31 07:48:40,048.048 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:48:40,089.089 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:48:40,190.190 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:48:40,193.193 INFO    ] No camera update needed
[2026-08-31 07:48:40,195.195 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:48:40,198.198 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:48:40,203.203 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:48:40,208.208 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:48:42,248.248 INFO    ] ================================================
[2026-08-31 07:48:42,263.263 INFO    ] Launching Daemon at Mon Aug 31 07:48:42 IST 2026
[2026-08-31 07:48:42,274.274 INFO    ] ================================================
[2026-08-31 07:48:42,854.854 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:48:42
[2026-08-31 07:48:43,440.440 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:48:43,709.709 INFO    ] Initializing speech engine...
[2026-08-31 07:48:43,727.727 INFO    ] 2026-08-31 07:48:43
[2026-08-31 07:48:44,000.000 INFO    ] 2026-08-31 07:48:43
[2026-08-31 07:48:44,036.036 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:48:44,234.234 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:48:44,247.247 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:48:44,409.409 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:48:44,416.416 INFO    ] time= 31/08/2026 07:48:44
[2026-08-31 07:48:44,422.422 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:48:44,426.426 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:48:44,505.505 INFO    ] No existing commands found in stream
[2026-08-31 07:48:49,540.540 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:48:49,543.543 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-08-31 07:48:51,587.587 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 07:48:51,590.590 INFO    ] Checking for system updates...
[2026-08-31 07:48:51,625.625 INFO    ] 200
[2026-08-31 07:48:51,628.628 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:48:51,680.680 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:48:51,682.682 INFO    ] No update needed
[2026-08-31 07:48:51,685.685 INFO    ] Checking for camera pi updates...
[2026-08-31 07:48:51,722.722 INFO    ] 200
[2026-08-31 07:48:51,725.725 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:48:51,769.769 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:48:51,971.971 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:48:51,973.973 INFO    ] No camera update needed
[2026-08-31 07:48:51,976.976 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:48:51,978.978 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:48:51,983.983 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:48:51,988.988 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:48:54,035.035 INFO    ] ================================================
[2026-08-31 07:48:54,050.050 INFO    ] Launching Daemon at Mon Aug 31 07:48:54 IST 2026
[2026-08-31 07:48:54,061.061 INFO    ] ================================================
[2026-08-31 07:48:54,634.634 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:48:54
[2026-08-31 07:48:55,224.224 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:48:55,510.510 INFO    ] Initializing speech engine...
[2026-08-31 07:48:55,523.523 INFO    ] 2026-08-31 07:48:55
[2026-08-31 07:48:55,793.793 INFO    ] 2026-08-31 07:48:55
[2026-08-31 07:48:55,828.828 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:48:56,025.025 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:48:56,038.038 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:48:56,202.202 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:48:56,208.208 INFO    ] time= 31/08/2026 07:48:56
[2026-08-31 07:48:56,216.216 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:48:56,267.267 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:48:56,406.406 INFO    ] No existing commands found in stream
[2026-08-31 07:49:01,439.439 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:49:01,442.442 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-08-31 07:49:03,367.367 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 07:49:03,371.371 INFO    ] Checking for system updates...
[2026-08-31 07:49:03,415.415 INFO    ] 200
[2026-08-31 07:49:03,419.419 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:49:03,478.478 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:49:03,483.483 INFO    ] No update needed
[2026-08-31 07:49:03,489.489 INFO    ] Checking for camera pi updates...
[2026-08-31 07:49:03,530.530 INFO    ] 200
[2026-08-31 07:49:03,534.534 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:49:03,576.576 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:49:03,662.662 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:49:03,664.664 INFO    ] No camera update needed
[2026-08-31 07:49:03,667.667 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:49:03,669.669 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:49:03,674.674 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:49:03,680.680 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:49:05,719.719 INFO    ] ================================================
[2026-08-31 07:49:05,734.734 INFO    ] Launching Daemon at Mon Aug 31 07:49:05 IST 2026
[2026-08-31 07:49:05,745.745 INFO    ] ================================================
[2026-08-31 07:49:06,311.311 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:49:06
[2026-08-31 07:49:06,912.912 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:49:07,158.158 INFO    ] Initializing speech engine...
[2026-08-31 07:49:07,166.166 INFO    ] 2026-08-31 07:49:07
[2026-08-31 07:49:07,448.448 INFO    ] 2026-08-31 07:49:07
[2026-08-31 07:49:07,483.483 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:49:07,743.743 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:49:07,752.752 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:49:07,892.892 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:49:07,934.934 INFO    ] time= 31/08/2026 07:49:07
[2026-08-31 07:49:07,983.983 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:49:08,029.029 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:49:08,157.157 INFO    ] No existing commands found in stream
[2026-08-31 07:49:13,187.187 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:49:13,190.190 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-08-31 07:49:16,429.429 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 07:49:16,432.432 INFO    ] Checking for system updates...
[2026-08-31 07:49:16,467.467 INFO    ] 200
[2026-08-31 07:49:16,470.470 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:49:16,528.528 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:49:16,530.530 INFO    ] No update needed
[2026-08-31 07:49:16,532.532 INFO    ] Checking for camera pi updates...
[2026-08-31 07:49:16,566.566 INFO    ] 200
[2026-08-31 07:49:16,569.569 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:49:16,610.610 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:49:16,711.711 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:49:16,714.714 INFO    ] No camera update needed
[2026-08-31 07:49:16,716.716 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:49:16,718.718 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:49:16,723.723 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:49:16,728.728 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:49:18,769.769 INFO    ] ================================================
[2026-08-31 07:49:18,784.784 INFO    ] Launching Daemon at Mon Aug 31 07:49:18 IST 2026
[2026-08-31 07:49:18,795.795 INFO    ] ================================================
[2026-08-31 07:49:19,364.364 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:49:19
[2026-08-31 07:49:19,949.949 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:49:20,208.208 INFO    ] Initializing speech engine...
[2026-08-31 07:49:20,227.227 INFO    ] 2026-08-31 07:49:20
[2026-08-31 07:49:20,474.474 INFO    ] 2026-08-31 07:49:20
[2026-08-31 07:49:20,509.509 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:49:20,727.727 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:49:20,765.765 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:49:20,910.910 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:49:20,970.970 INFO    ] time= 31/08/2026 07:49:20
[2026-08-31 07:49:21,014.014 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:49:21,036.036 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:49:21,174.174 INFO    ] No existing commands found in stream
[2026-08-31 07:49:26,195.195 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:49:26,198.198 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-08-31 07:49:28,655.655 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 07:49:28,658.658 INFO    ] Checking for system updates...
[2026-08-31 07:49:28,696.696 INFO    ] 200
[2026-08-31 07:49:28,699.699 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:49:28,751.751 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:49:28,753.753 INFO    ] No update needed
[2026-08-31 07:49:28,755.755 INFO    ] Checking for camera pi updates...
[2026-08-31 07:49:28,788.788 INFO    ] 200
[2026-08-31 07:49:28,791.791 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:49:28,831.831 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:49:28,920.920 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:49:28,922.922 INFO    ] No camera update needed
[2026-08-31 07:49:28,924.924 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:49:28,927.927 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:49:28,932.932 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:49:28,937.937 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:49:30,978.978 INFO    ] ================================================
[2026-08-31 07:49:30,994.994 INFO    ] Launching Daemon at Mon Aug 31 07:49:30 IST 2026
[2026-08-31 07:49:31,005.005 INFO    ] ================================================
[2026-08-31 07:49:31,586.586 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:49:31
[2026-08-31 07:49:32,208.208 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:49:32,491.491 INFO    ] Initializing speech engine...
[2026-08-31 07:49:32,507.507 INFO    ] 2026-08-31 07:49:32
[2026-08-31 07:49:32,802.802 INFO    ] 2026-08-31 07:49:32
[2026-08-31 07:49:32,868.868 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:49:33,082.082 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:49:33,112.112 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:49:33,263.263 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:49:33,293.293 INFO    ] time= 31/08/2026 07:49:33
[2026-08-31 07:49:33,300.300 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:49:33,350.350 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:49:33,450.450 INFO    ] No existing commands found in stream
[2026-08-31 07:49:38,462.462 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:49:38,465.465 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-08-31 07:49:41,592.592 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 07:49:41,595.595 INFO    ] Checking for system updates...
[2026-08-31 07:49:41,630.630 INFO    ] 200
[2026-08-31 07:49:41,633.633 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:49:41,686.686 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:49:41,689.689 INFO    ] No update needed
[2026-08-31 07:49:41,692.692 INFO    ] Checking for camera pi updates...
[2026-08-31 07:49:41,726.726 INFO    ] 200
[2026-08-31 07:49:41,729.729 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:49:41,769.769 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:49:41,871.871 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:49:41,873.873 INFO    ] No camera update needed
[2026-08-31 07:49:41,876.876 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:49:41,878.878 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:49:41,884.884 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:49:41,889.889 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:49:43,930.930 INFO    ] ================================================
[2026-08-31 07:49:43,945.945 INFO    ] Launching Daemon at Mon Aug 31 07:49:43 IST 2026
[2026-08-31 07:49:43,956.956 INFO    ] ================================================
[2026-08-31 07:49:44,522.522 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:49:44
[2026-08-31 07:49:45,104.104 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:49:45,371.371 INFO    ] Initializing speech engine...
[2026-08-31 07:49:45,379.379 INFO    ] 2026-08-31 07:49:45
[2026-08-31 07:49:45,627.627 INFO    ] 2026-08-31 07:49:45
[2026-08-31 07:49:45,661.661 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:49:45,832.832 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:49:45,844.844 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:49:45,989.989 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:49:45,993.993 INFO    ] time= 31/08/2026 07:49:45
[2026-08-31 07:49:45,999.999 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:49:46,046.046 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:49:46,187.187 INFO    ] No existing commands found in stream
[2026-08-31 07:49:51,200.200 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:49:51,203.203 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-08-31 07:49:53,427.427 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 07:49:53,430.430 INFO    ] Checking for system updates...
[2026-08-31 07:49:53,469.469 INFO    ] 200
[2026-08-31 07:49:53,472.472 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:49:53,525.525 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:49:53,527.527 INFO    ] No update needed
[2026-08-31 07:49:53,530.530 INFO    ] Checking for camera pi updates...
[2026-08-31 07:49:53,566.566 INFO    ] 200
[2026-08-31 07:49:53,569.569 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:49:53,613.613 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:49:53,671.671 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:49:53,673.673 INFO    ] No camera update needed
[2026-08-31 07:49:53,675.675 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:49:53,678.678 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:49:53,683.683 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:49:53,689.689 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:49:55,731.731 INFO    ] ================================================
[2026-08-31 07:49:55,746.746 INFO    ] Launching Daemon at Mon Aug 31 07:49:55 IST 2026
[2026-08-31 07:49:55,758.758 INFO    ] ================================================
[2026-08-31 07:49:56,415.415 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:49:56
[2026-08-31 07:49:57,095.095 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:49:57,395.395 INFO    ] Initializing speech engine...
[2026-08-31 07:49:57,404.404 INFO    ] 2026-08-31 07:49:57
[2026-08-31 07:49:57,690.690 INFO    ] 2026-08-31 07:49:57
[2026-08-31 07:49:57,736.736 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:49:57,962.962 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:49:57,968.968 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:49:58,205.205 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:49:58,229.229 INFO    ] time= 31/08/2026 07:49:58
[2026-08-31 07:49:58,245.245 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:49:58,265.265 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:49:58,385.385 INFO    ] No existing commands found in stream
[2026-08-31 07:50:03,400.400 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:50:03,404.404 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-08-31 07:50:07,961.961 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 07:50:07,964.964 INFO    ] Checking for system updates...
[2026-08-31 07:50:08,002.002 INFO    ] 200
[2026-08-31 07:50:08,005.005 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:50:08,057.057 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:50:08,059.059 INFO    ] No update needed
[2026-08-31 07:50:08,062.062 INFO    ] Checking for camera pi updates...
[2026-08-31 07:50:08,095.095 INFO    ] 200
[2026-08-31 07:50:08,098.098 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:50:08,142.142 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:50:08,244.244 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:50:08,246.246 INFO    ] No camera update needed
[2026-08-31 07:50:08,248.248 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:50:08,251.251 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:50:08,256.256 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:50:08,261.261 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:50:10,303.303 INFO    ] ================================================
[2026-08-31 07:50:10,321.321 INFO    ] Launching Daemon at Mon Aug 31 07:50:10 IST 2026
[2026-08-31 07:50:10,332.332 INFO    ] ================================================
[2026-08-31 07:50:10,926.926 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:50:10
[2026-08-31 07:50:11,530.530 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:50:11,808.808 INFO    ] Initializing speech engine...
[2026-08-31 07:50:11,817.817 INFO    ] 2026-08-31 07:50:11
[2026-08-31 07:50:12,077.077 INFO    ] 2026-08-31 07:50:12
[2026-08-31 07:50:12,106.106 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:50:12,355.355 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:50:12,360.360 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:50:12,564.564 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:50:12,617.617 INFO    ] time= 31/08/2026 07:50:12
[2026-08-31 07:50:12,624.624 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:50:12,642.642 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:50:12,768.768 INFO    ] No existing commands found in stream
[2026-08-31 07:50:17,784.784 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:50:17,786.786 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-08-31 07:50:18,719.719 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 07:50:18,722.722 INFO    ] Checking for system updates...
[2026-08-31 07:50:18,769.769 INFO    ] 200
[2026-08-31 07:50:18,772.772 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:50:18,825.825 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:50:18,828.828 INFO    ] No update needed
[2026-08-31 07:50:18,831.831 INFO    ] Checking for camera pi updates...
[2026-08-31 07:50:18,866.866 INFO    ] 200
[2026-08-31 07:50:18,869.869 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:50:18,910.910 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:50:18,961.961 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:50:18,964.964 INFO    ] No camera update needed
[2026-08-31 07:50:18,967.967 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:50:18,970.970 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:50:18,976.976 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:50:18,981.981 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:50:21,024.024 INFO    ] ================================================
[2026-08-31 07:50:21,039.039 INFO    ] Launching Daemon at Mon Aug 31 07:50:21 IST 2026
[2026-08-31 07:50:21,051.051 INFO    ] ================================================
[2026-08-31 07:50:21,632.632 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:50:21
[2026-08-31 07:50:22,231.231 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:50:22,512.512 INFO    ] Initializing speech engine...
[2026-08-31 07:50:22,520.520 INFO    ] 2026-08-31 07:50:22
[2026-08-31 07:50:22,791.791 INFO    ] 2026-08-31 07:50:22
[2026-08-31 07:50:22,834.834 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:50:23,060.060 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:50:23,081.081 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:50:23,274.274 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:50:23,321.321 INFO    ] time= 31/08/2026 07:50:23
[2026-08-31 07:50:23,327.327 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:50:23,345.345 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:50:23,472.472 INFO    ] No existing commands found in stream
[2026-08-31 07:50:28,489.489 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:50:28,491.491 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-08-31 07:50:30,354.354 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 07:50:30,357.357 INFO    ] Checking for system updates...
[2026-08-31 07:50:30,399.399 INFO    ] 200
[2026-08-31 07:50:30,402.402 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:50:30,461.461 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:50:30,463.463 INFO    ] No update needed
[2026-08-31 07:50:30,466.466 INFO    ] Checking for camera pi updates...
[2026-08-31 07:50:30,500.500 INFO    ] 200
[2026-08-31 07:50:30,503.503 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:50:30,544.544 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:50:30,634.634 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:50:30,637.637 INFO    ] No camera update needed
[2026-08-31 07:50:30,640.640 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:50:30,642.642 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:50:30,648.648 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:50:30,654.654 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:50:32,696.696 INFO    ] ================================================
[2026-08-31 07:50:32,713.713 INFO    ] Launching Daemon at Mon Aug 31 07:50:32 IST 2026
[2026-08-31 07:50:32,725.725 INFO    ] ================================================
[2026-08-31 07:50:33,340.340 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:50:33
[2026-08-31 07:50:33,972.972 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:50:34,222.222 INFO    ] Initializing speech engine...
[2026-08-31 07:50:34,228.228 INFO    ] 2026-08-31 07:50:34
[2026-08-31 07:50:34,506.506 INFO    ] 2026-08-31 07:50:34
[2026-08-31 07:50:34,541.541 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:50:34,744.744 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:50:34,785.785 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:50:34,948.948 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:50:35,017.017 INFO    ] time= 31/08/2026 07:50:34
[2026-08-31 07:50:35,078.078 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:50:35,085.085 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:50:35,238.238 INFO    ] No existing commands found in stream
[2026-08-31 07:50:40,253.253 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:50:40,255.255 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-08-31 07:50:43,882.882 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 07:50:43,884.884 INFO    ] Checking for system updates...
[2026-08-31 07:50:43,920.920 INFO    ] 200
[2026-08-31 07:50:43,923.923 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:50:43,975.975 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:50:43,977.977 INFO    ] No update needed
[2026-08-31 07:50:43,980.980 INFO    ] Checking for camera pi updates...
[2026-08-31 07:50:44,019.019 INFO    ] 200
[2026-08-31 07:50:44,021.021 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:50:44,069.069 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:50:44,132.132 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:50:44,134.134 INFO    ] No camera update needed
[2026-08-31 07:50:44,136.136 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:50:44,139.139 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:50:44,144.144 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:50:44,149.149 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:50:46,192.192 INFO    ] ================================================
[2026-08-31 07:50:46,207.207 INFO    ] Launching Daemon at Mon Aug 31 07:50:46 IST 2026
[2026-08-31 07:50:46,218.218 INFO    ] ================================================
[2026-08-31 07:50:46,812.812 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:50:46
[2026-08-31 07:50:47,396.396 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:50:47,667.667 INFO    ] Initializing speech engine...
[2026-08-31 07:50:47,675.675 INFO    ] 2026-08-31 07:50:47
[2026-08-31 07:50:47,926.926 INFO    ] 2026-08-31 07:50:47
[2026-08-31 07:50:47,960.960 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:50:48,160.160 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:50:48,188.188 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:50:48,363.363 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:50:48,395.395 INFO    ] time= 31/08/2026 07:50:48
[2026-08-31 07:50:48,445.445 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:50:48,499.499 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:50:48,645.645 INFO    ] No existing commands found in stream
[2026-08-31 07:50:53,667.667 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:50:53,669.669 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-08-31 07:50:56,558.558 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 07:50:56,560.560 INFO    ] Checking for system updates...
[2026-08-31 07:50:56,596.596 INFO    ] 200
[2026-08-31 07:50:56,598.598 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:50:56,652.652 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:50:56,654.654 INFO    ] No update needed
[2026-08-31 07:50:56,656.656 INFO    ] Checking for camera pi updates...
[2026-08-31 07:50:56,689.689 INFO    ] 200
[2026-08-31 07:50:56,692.692 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:50:56,732.732 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:50:56,919.919 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:50:56,921.921 INFO    ] No camera update needed
[2026-08-31 07:50:56,924.924 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:50:56,927.927 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:50:56,933.933 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:50:56,939.939 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:50:58,979.979 INFO    ] ================================================
[2026-08-31 07:50:59,995.995 INFO    ] Launching Daemon at Mon Aug 31 07:50:58 IST 2026
[2026-08-31 07:50:59,006.006 INFO    ] ================================================
[2026-08-31 07:50:59,650.650 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:50:59
[2026-08-31 07:51:00,310.310 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:51:00,618.618 INFO    ] Initializing speech engine...
[2026-08-31 07:51:00,625.625 INFO    ] 2026-08-31 07:51:00
[2026-08-31 07:51:00,930.930 INFO    ] 2026-08-31 07:51:00
[2026-08-31 07:51:01,015.015 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:51:01,245.245 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:51:01,298.298 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:51:01,470.470 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:51:01,474.474 INFO    ] time= 31/08/2026 07:51:01
[2026-08-31 07:51:01,477.477 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:51:01,505.505 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:51:01,578.578 INFO    ] No existing commands found in stream
[2026-08-31 07:51:06,588.588 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:51:06,591.591 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-08-31 07:51:07,880.880 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 07:51:07,882.882 INFO    ] Checking for system updates...
[2026-08-31 07:51:07,918.918 INFO    ] 200
[2026-08-31 07:51:07,920.920 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:51:07,974.974 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:51:07,976.976 INFO    ] No update needed
[2026-08-31 07:51:07,979.979 INFO    ] Checking for camera pi updates...
[2026-08-31 07:51:08,013.013 INFO    ] 200
[2026-08-31 07:51:08,015.015 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:51:08,060.060 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:51:08,146.146 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:51:08,149.149 INFO    ] No camera update needed
[2026-08-31 07:51:08,151.151 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:51:08,153.153 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:51:08,158.158 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:51:08,163.163 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:51:10,203.203 INFO    ] ================================================
[2026-08-31 07:51:10,219.219 INFO    ] Launching Daemon at Mon Aug 31 07:51:10 IST 2026
[2026-08-31 07:51:10,230.230 INFO    ] ================================================
[2026-08-31 07:51:10,879.879 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:51:10
[2026-08-31 07:51:11,540.540 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:51:11,842.842 INFO    ] Initializing speech engine...
[2026-08-31 07:51:11,856.856 INFO    ] 2026-08-31 07:51:11
[2026-08-31 07:51:12,140.140 INFO    ] 2026-08-31 07:51:12
[2026-08-31 07:51:12,244.244 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:51:12,462.462 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:51:12,468.468 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:51:12,661.661 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:51:12,680.680 INFO    ] time= 31/08/2026 07:51:12
[2026-08-31 07:51:12,687.687 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:51:12,717.717 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:51:12,823.823 INFO    ] No existing commands found in stream
[2026-08-31 07:51:17,843.843 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:51:17,846.846 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-08-31 07:51:20,752.752 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 07:51:20,755.755 INFO    ] Checking for system updates...
[2026-08-31 07:51:20,792.792 INFO    ] 200
[2026-08-31 07:51:20,794.794 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:51:20,848.848 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:51:20,851.851 INFO    ] No update needed
[2026-08-31 07:51:20,854.854 INFO    ] Checking for camera pi updates...
[2026-08-31 07:51:20,887.887 INFO    ] 200
[2026-08-31 07:51:20,890.890 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:51:20,931.931 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:51:21,032.032 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:51:21,034.034 INFO    ] No camera update needed
[2026-08-31 07:51:21,036.036 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:51:21,039.039 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:51:21,044.044 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:51:21,049.049 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:51:23,088.088 INFO    ] ================================================
[2026-08-31 07:51:23,104.104 INFO    ] Launching Daemon at Mon Aug 31 07:51:23 IST 2026
[2026-08-31 07:51:23,115.115 INFO    ] ================================================
[2026-08-31 07:51:23,700.700 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:51:23
[2026-08-31 07:51:24,293.293 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:51:24,580.580 INFO    ] Initializing speech engine...
[2026-08-31 07:51:24,590.590 INFO    ] 2026-08-31 07:51:24
[2026-08-31 07:51:24,856.856 INFO    ] 2026-08-31 07:51:24
[2026-08-31 07:51:24,892.892 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:51:25,089.089 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:51:25,103.103 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:51:25,269.269 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:51:25,277.277 INFO    ] time= 31/08/2026 07:51:25
[2026-08-31 07:51:25,330.330 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:51:25,352.352 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:51:25,468.468 INFO    ] No existing commands found in stream
[2026-08-31 07:51:30,493.493 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:51:30,496.496 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-08-31 07:51:33,754.754 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 07:51:33,757.757 INFO    ] Checking for system updates...
[2026-08-31 07:51:33,793.793 INFO    ] 200
[2026-08-31 07:51:33,796.796 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:51:33,848.848 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:51:33,851.851 INFO    ] No update needed
[2026-08-31 07:51:33,853.853 INFO    ] Checking for camera pi updates...
[2026-08-31 07:51:33,890.890 INFO    ] 200
[2026-08-31 07:51:33,893.893 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:51:33,933.933 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:51:34,030.030 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:51:34,033.033 INFO    ] No camera update needed
[2026-08-31 07:51:34,035.035 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:51:34,037.037 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:51:34,043.043 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:51:34,048.048 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:51:36,089.089 INFO    ] ================================================
[2026-08-31 07:51:36,104.104 INFO    ] Launching Daemon at Mon Aug 31 07:51:36 IST 2026
[2026-08-31 07:51:36,115.115 INFO    ] ================================================
[2026-08-31 07:51:36,687.687 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:51:36
[2026-08-31 07:51:37,299.299 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:51:37,594.594 INFO    ] Initializing speech engine...
[2026-08-31 07:51:37,605.605 INFO    ] 2026-08-31 07:51:37
[2026-08-31 07:51:37,871.871 INFO    ] 2026-08-31 07:51:37
[2026-08-31 07:51:37,905.905 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:51:38,142.142 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:51:38,145.145 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:51:38,302.302 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:51:38,335.335 INFO    ] time= 31/08/2026 07:51:38
[2026-08-31 07:51:38,383.383 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:51:38,447.447 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:51:38,595.595 INFO    ] No existing commands found in stream
[2026-08-31 07:51:43,622.622 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:51:43,624.624 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-08-31 07:51:47,879.879 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 07:51:47,882.882 INFO    ] Checking for system updates...
[2026-08-31 07:51:47,918.918 INFO    ] 200
[2026-08-31 07:51:47,921.921 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:51:47,974.974 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:51:47,976.976 INFO    ] No update needed
[2026-08-31 07:51:47,980.980 INFO    ] Checking for camera pi updates...
[2026-08-31 07:51:48,024.024 INFO    ] 200
[2026-08-31 07:51:48,027.027 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:51:48,070.070 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:51:48,152.152 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:51:48,154.154 INFO    ] No camera update needed
[2026-08-31 07:51:48,157.157 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:51:48,160.160 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:51:48,166.166 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:51:48,173.173 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:51:50,216.216 INFO    ] ================================================
[2026-08-31 07:51:50,232.232 INFO    ] Launching Daemon at Mon Aug 31 07:51:50 IST 2026
[2026-08-31 07:51:50,244.244 INFO    ] ================================================
[2026-08-31 07:51:50,843.843 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:51:50
[2026-08-31 07:51:51,455.455 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:51:51,719.719 INFO    ] Initializing speech engine...
[2026-08-31 07:51:51,727.727 INFO    ] 2026-08-31 07:51:51
[2026-08-31 07:51:52,026.026 INFO    ] 2026-08-31 07:51:51
[2026-08-31 07:51:52,064.064 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:51:52,265.265 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:51:52,280.280 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:51:52,442.442 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:51:52,451.451 INFO    ] time= 31/08/2026 07:51:52
[2026-08-31 07:51:52,455.455 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:51:52,462.462 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:51:52,582.582 INFO    ] No existing commands found in stream
[2026-08-31 07:51:57,592.592 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:51:57,595.595 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-08-31 07:51:58,878.878 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 07:51:58,881.881 INFO    ] Checking for system updates...
[2026-08-31 07:51:58,916.916 INFO    ] 200
[2026-08-31 07:51:58,918.918 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:51:58,976.976 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:51:58,979.979 INFO    ] No update needed
[2026-08-31 07:51:58,981.981 INFO    ] Checking for camera pi updates...
[2026-08-31 07:51:59,014.014 INFO    ] 200
[2026-08-31 07:51:59,017.017 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:51:59,057.057 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:51:59,140.140 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:51:59,142.142 INFO    ] No camera update needed
[2026-08-31 07:51:59,144.144 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:51:59,147.147 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:51:59,152.152 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:51:59,157.157 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:52:01,196.196 INFO    ] ================================================
[2026-08-31 07:52:01,212.212 INFO    ] Launching Daemon at Mon Aug 31 07:52:01 IST 2026
[2026-08-31 07:52:01,223.223 INFO    ] ================================================
[2026-08-31 07:52:01,920.920 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:52:01
[2026-08-31 07:52:02,572.572 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:52:02,912.912 INFO    ] Initializing speech engine...
[2026-08-31 07:52:02,921.921 INFO    ] 2026-08-31 07:52:02
[2026-08-31 07:52:03,198.198 INFO    ] 2026-08-31 07:52:03
[2026-08-31 07:52:03,259.259 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:52:03,496.496 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:52:03,501.501 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:52:03,709.709 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:52:03,757.757 INFO    ] time= 31/08/2026 07:52:03
[2026-08-31 07:52:03,764.764 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:52:03,782.782 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:52:03,927.927 INFO    ] No existing commands found in stream
[2026-08-31 07:52:08,955.955 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:52:08,958.958 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-08-31 07:52:13,327.327 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 07:52:13,330.330 INFO    ] Checking for system updates...
[2026-08-31 07:52:13,370.370 INFO    ] 200
[2026-08-31 07:52:13,373.373 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:52:13,425.425 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:52:13,428.428 INFO    ] No update needed
[2026-08-31 07:52:13,431.431 INFO    ] Checking for camera pi updates...
[2026-08-31 07:52:13,468.468 INFO    ] 200
[2026-08-31 07:52:13,471.471 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:52:13,521.521 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:52:13,600.600 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:52:13,602.602 INFO    ] No camera update needed
[2026-08-31 07:52:13,605.605 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:52:13,608.608 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:52:13,615.615 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:52:13,622.622 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:52:15,663.663 INFO    ] ================================================
[2026-08-31 07:52:15,678.678 INFO    ] Launching Daemon at Mon Aug 31 07:52:15 IST 2026
[2026-08-31 07:52:15,690.690 INFO    ] ================================================
[2026-08-31 07:52:16,275.275 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:52:16
[2026-08-31 07:52:16,878.878 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:52:17,163.163 INFO    ] Initializing speech engine...
[2026-08-31 07:52:17,173.173 INFO    ] 2026-08-31 07:52:17
[2026-08-31 07:52:17,438.438 INFO    ] 2026-08-31 07:52:17
[2026-08-31 07:52:17,478.478 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:52:17,669.669 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:52:17,683.683 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:52:17,844.844 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:52:17,850.850 INFO    ] time= 31/08/2026 07:52:17
[2026-08-31 07:52:17,856.856 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:52:17,909.909 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:52:18,023.023 INFO    ] No existing commands found in stream
[2026-08-31 07:52:23,054.054 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:52:23,056.056 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-08-31 07:52:26,829.829 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 07:52:26,832.832 INFO    ] Checking for system updates...
[2026-08-31 07:52:26,872.872 INFO    ] 200
[2026-08-31 07:52:26,874.874 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:52:26,931.931 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:52:26,934.934 INFO    ] No update needed
[2026-08-31 07:52:26,936.936 INFO    ] Checking for camera pi updates...
[2026-08-31 07:52:26,971.971 INFO    ] 200
[2026-08-31 07:52:26,974.974 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:52:27,015.015 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:52:27,093.093 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:52:27,095.095 INFO    ] No camera update needed
[2026-08-31 07:52:27,098.098 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:52:27,101.101 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:52:27,106.106 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:52:27,112.112 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:52:29,153.153 INFO    ] ================================================
[2026-08-31 07:52:29,169.169 INFO    ] Launching Daemon at Mon Aug 31 07:52:29 IST 2026
[2026-08-31 07:52:29,180.180 INFO    ] ================================================
[2026-08-31 07:52:29,810.810 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:52:29
[2026-08-31 07:52:30,461.461 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:52:30,763.763 INFO    ] Initializing speech engine...
[2026-08-31 07:52:30,775.775 INFO    ] 2026-08-31 07:52:30
[2026-08-31 07:52:31,061.061 INFO    ] 2026-08-31 07:52:31
[2026-08-31 07:52:31,105.105 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:52:31,336.336 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:52:31,341.341 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:52:31,565.565 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:52:31,621.621 INFO    ] time= 31/08/2026 07:52:31
[2026-08-31 07:52:31,646.646 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:52:31,659.659 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:52:31,795.795 INFO    ] No existing commands found in stream
[2026-08-31 07:52:36,810.810 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:52:36,813.813 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-08-31 07:52:37,648.648 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 07:52:37,651.651 INFO    ] Checking for system updates...
[2026-08-31 07:52:37,689.689 INFO    ] 200
[2026-08-31 07:52:37,692.692 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:52:37,750.750 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:52:37,753.753 INFO    ] No update needed
[2026-08-31 07:52:37,755.755 INFO    ] Checking for camera pi updates...
[2026-08-31 07:52:37,790.790 INFO    ] 200
[2026-08-31 07:52:37,792.792 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:52:37,835.835 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:52:37,908.908 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:52:37,910.910 INFO    ] No camera update needed
[2026-08-31 07:52:37,913.913 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:52:37,915.915 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:52:37,920.920 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:52:37,925.925 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:52:39,966.966 INFO    ] ================================================
[2026-08-31 07:52:39,982.982 INFO    ] Launching Daemon at Mon Aug 31 07:52:39 IST 2026
[2026-08-31 07:52:39,993.993 INFO    ] ================================================
[2026-08-31 07:52:40,587.587 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:52:40
[2026-08-31 07:52:41,229.229 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:52:41,526.526 INFO    ] Initializing speech engine...
[2026-08-31 07:52:41,538.538 INFO    ] 2026-08-31 07:52:41
[2026-08-31 07:52:41,839.839 INFO    ] 2026-08-31 07:52:41
[2026-08-31 07:52:41,919.919 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:52:42,118.118 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:52:42,142.142 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:52:42,339.339 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:52:42,357.357 INFO    ] time= 31/08/2026 07:52:42
[2026-08-31 07:52:42,377.377 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:52:42,396.396 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:52:42,510.510 INFO    ] No existing commands found in stream
[2026-08-31 07:52:47,535.535 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:52:47,539.539 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-08-31 07:52:49,441.441 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 07:52:49,444.444 INFO    ] Checking for system updates...
[2026-08-31 07:52:49,481.481 INFO    ] 200
[2026-08-31 07:52:49,483.483 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:52:49,540.540 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:52:49,543.543 INFO    ] No update needed
[2026-08-31 07:52:49,545.545 INFO    ] Checking for camera pi updates...
[2026-08-31 07:52:49,579.579 INFO    ] 200
[2026-08-31 07:52:49,581.581 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:52:49,626.626 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:52:49,702.702 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:52:49,704.704 INFO    ] No camera update needed
[2026-08-31 07:52:49,707.707 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:52:49,709.709 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:52:49,715.715 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:52:49,720.720 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:52:51,759.759 INFO    ] ================================================
[2026-08-31 07:52:51,775.775 INFO    ] Launching Daemon at Mon Aug 31 07:52:51 IST 2026
[2026-08-31 07:52:51,786.786 INFO    ] ================================================
[2026-08-31 07:52:52,435.435 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:52:52
[2026-08-31 07:52:53,104.104 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:52:53,419.419 INFO    ] Initializing speech engine...
[2026-08-31 07:52:53,426.426 INFO    ] 2026-08-31 07:52:53
[2026-08-31 07:52:53,716.716 INFO    ] 2026-08-31 07:52:53
[2026-08-31 07:52:53,829.829 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:52:54,044.044 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:52:54,052.052 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:52:54,250.250 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:52:54,257.257 INFO    ] time= 31/08/2026 07:52:54
[2026-08-31 07:52:54,278.278 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:52:54,304.304 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:52:54,417.417 INFO    ] No existing commands found in stream
[2026-08-31 07:52:59,442.442 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:52:59,445.445 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-08-31 07:53:01,086.086 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 07:53:01,089.089 INFO    ] Checking for system updates...
[2026-08-31 07:53:01,130.130 INFO    ] 200
[2026-08-31 07:53:01,133.133 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:53:01,187.187 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:53:01,190.190 INFO    ] No update needed
[2026-08-31 07:53:01,192.192 INFO    ] Checking for camera pi updates...
[2026-08-31 07:53:01,226.226 INFO    ] 200
[2026-08-31 07:53:01,228.228 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:53:01,269.269 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:53:01,454.454 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:53:01,458.458 INFO    ] No camera update needed
[2026-08-31 07:53:01,462.462 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:53:01,466.466 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:53:01,475.475 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:53:01,484.484 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:53:03,530.530 INFO    ] ================================================
[2026-08-31 07:53:03,547.547 INFO    ] Launching Daemon at Mon Aug 31 07:53:03 IST 2026
[2026-08-31 07:53:03,558.558 INFO    ] ================================================
[2026-08-31 07:53:04,126.126 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:53:04
[2026-08-31 07:53:04,712.712 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:53:04,966.966 INFO    ] Initializing speech engine...
[2026-08-31 07:53:04,974.974 INFO    ] 2026-08-31 07:53:04
[2026-08-31 07:53:05,262.262 INFO    ] 2026-08-31 07:53:05
[2026-08-31 07:53:05,296.296 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:53:05,515.515 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:53:05,546.546 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:53:05,720.720 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:53:05,741.741 INFO    ] time= 31/08/2026 07:53:05
[2026-08-31 07:53:05,801.801 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:53:05,851.851 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:53:05,912.912 INFO    ] No existing commands found in stream
[2026-08-31 07:53:10,936.936 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:53:10,939.939 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-08-31 07:53:15,092.092 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 07:53:15,094.094 INFO    ] Checking for system updates...
[2026-08-31 07:53:15,131.131 INFO    ] 200
[2026-08-31 07:53:15,133.133 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:53:15,188.188 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:53:15,191.191 INFO    ] No update needed
[2026-08-31 07:53:15,193.193 INFO    ] Checking for camera pi updates...
[2026-08-31 07:53:15,230.230 INFO    ] 200
[2026-08-31 07:53:15,233.233 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:53:15,274.274 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:53:15,326.326 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:53:15,329.329 INFO    ] No camera update needed
[2026-08-31 07:53:15,331.331 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:53:15,334.334 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:53:15,340.340 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:53:15,345.345 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:53:17,386.386 INFO    ] ================================================
[2026-08-31 07:53:17,401.401 INFO    ] Launching Daemon at Mon Aug 31 07:53:17 IST 2026
[2026-08-31 07:53:17,412.412 INFO    ] ================================================
[2026-08-31 07:53:18,000.000 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:53:17
[2026-08-31 07:53:18,597.597 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:53:18,871.871 INFO    ] Initializing speech engine...
[2026-08-31 07:53:18,882.882 INFO    ] 2026-08-31 07:53:18
[2026-08-31 07:53:19,135.135 INFO    ] 2026-08-31 07:53:19
[2026-08-31 07:53:19,194.194 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:53:19,448.448 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:53:19,453.453 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:53:19,677.677 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:53:19,732.732 INFO    ] time= 31/08/2026 07:53:19
[2026-08-31 07:53:19,747.747 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:53:19,763.763 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:53:19,872.872 INFO    ] No existing commands found in stream
[2026-08-31 07:53:24,889.889 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:53:24,892.892 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-08-31 07:53:27,280.280 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 07:53:27,283.283 INFO    ] Checking for system updates...
[2026-08-31 07:53:27,321.321 INFO    ] 200
[2026-08-31 07:53:27,323.323 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:53:27,377.377 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:53:27,379.379 INFO    ] No update needed
[2026-08-31 07:53:27,382.382 INFO    ] Checking for camera pi updates...
[2026-08-31 07:53:27,419.419 INFO    ] 200
[2026-08-31 07:53:27,421.421 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:53:27,465.465 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:53:27,548.548 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:53:27,551.551 INFO    ] No camera update needed
[2026-08-31 07:53:27,553.553 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:53:27,555.555 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:53:27,561.561 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:53:27,566.566 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:53:29,608.608 INFO    ] ================================================
[2026-08-31 07:53:29,623.623 INFO    ] Launching Daemon at Mon Aug 31 07:53:29 IST 2026
[2026-08-31 07:53:29,634.634 INFO    ] ================================================
[2026-08-31 07:53:30,264.264 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:53:30
[2026-08-31 07:53:30,915.915 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:53:31,215.215 INFO    ] Initializing speech engine...
[2026-08-31 07:53:31,228.228 INFO    ] 2026-08-31 07:53:31
[2026-08-31 07:53:31,543.543 INFO    ] 2026-08-31 07:53:31
[2026-08-31 07:53:31,634.634 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:53:31,850.850 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:53:31,858.858 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:53:32,057.057 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:53:32,064.064 INFO    ] time= 31/08/2026 07:53:32
[2026-08-31 07:53:32,084.084 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:53:32,115.115 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:53:32,230.230 INFO    ] No existing commands found in stream
[2026-08-31 07:53:37,257.257 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:53:37,260.260 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-08-31 07:53:38,400.400 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 07:53:38,403.403 INFO    ] Checking for system updates...
[2026-08-31 07:53:38,441.441 INFO    ] 200
[2026-08-31 07:53:38,444.444 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:53:38,501.501 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:53:38,504.504 INFO    ] No update needed
[2026-08-31 07:53:38,506.506 INFO    ] Checking for camera pi updates...
[2026-08-31 07:53:38,539.539 INFO    ] 200
[2026-08-31 07:53:38,541.541 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:53:38,585.585 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:53:38,679.679 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:53:38,681.681 INFO    ] No camera update needed
[2026-08-31 07:53:38,684.684 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:53:38,686.686 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:53:38,692.692 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:53:38,696.696 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:53:40,737.737 INFO    ] ================================================
[2026-08-31 07:53:40,752.752 INFO    ] Launching Daemon at Mon Aug 31 07:53:40 IST 2026
[2026-08-31 07:53:40,763.763 INFO    ] ================================================
[2026-08-31 07:53:41,327.327 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:53:41
[2026-08-31 07:53:41,909.909 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:53:42,176.176 INFO    ] Initializing speech engine...
[2026-08-31 07:53:42,199.199 INFO    ] 2026-08-31 07:53:42
[2026-08-31 07:53:42,473.473 INFO    ] 2026-08-31 07:53:42
[2026-08-31 07:53:42,514.514 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:53:42,712.712 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:53:42,726.726 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:53:42,887.887 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:53:42,892.892 INFO    ] time= 31/08/2026 07:53:42
[2026-08-31 07:53:42,899.899 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:53:42,952.952 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:53:43,077.077 INFO    ] No existing commands found in stream
[2026-08-31 07:53:48,102.102 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:53:48,105.105 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-08-31 07:53:50,468.468 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 07:53:50,471.471 INFO    ] Checking for system updates...
[2026-08-31 07:53:50,506.506 INFO    ] 200
[2026-08-31 07:53:50,509.509 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:53:50,561.561 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:53:50,564.564 INFO    ] No update needed
[2026-08-31 07:53:50,566.566 INFO    ] Checking for camera pi updates...
[2026-08-31 07:53:50,602.602 INFO    ] 200
[2026-08-31 07:53:50,604.604 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:53:50,645.645 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:53:50,724.724 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:53:50,726.726 INFO    ] No camera update needed
[2026-08-31 07:53:50,729.729 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:53:50,731.731 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:53:50,736.736 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:53:50,741.741 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:53:52,781.781 INFO    ] ================================================
[2026-08-31 07:53:52,796.796 INFO    ] Launching Daemon at Mon Aug 31 07:53:52 IST 2026
[2026-08-31 07:53:52,806.806 INFO    ] ================================================
[2026-08-31 07:53:53,383.383 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:53:53
[2026-08-31 07:53:53,979.979 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:53:54,250.250 INFO    ] Initializing speech engine...
[2026-08-31 07:53:54,261.261 INFO    ] 2026-08-31 07:53:54
[2026-08-31 07:53:54,535.535 INFO    ] 2026-08-31 07:53:54
[2026-08-31 07:53:54,577.577 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:53:54,822.822 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:53:54,828.828 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:53:55,019.019 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:53:55,060.060 INFO    ] time= 31/08/2026 07:53:55
[2026-08-31 07:53:55,066.066 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:53:55,084.084 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:53:55,211.211 INFO    ] No existing commands found in stream
[2026-08-31 07:54:00,226.226 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:54:00,229.229 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-08-31 07:54:03,130.130 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 07:54:03,134.134 INFO    ] Checking for system updates...
[2026-08-31 07:54:03,173.173 INFO    ] 200
[2026-08-31 07:54:03,176.176 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:54:03,230.230 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:54:03,233.233 INFO    ] No update needed
[2026-08-31 07:54:03,236.236 INFO    ] Checking for camera pi updates...
[2026-08-31 07:54:03,281.281 INFO    ] 200
[2026-08-31 07:54:03,285.285 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:54:03,329.329 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:54:03,435.435 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:54:03,438.438 INFO    ] No camera update needed
[2026-08-31 07:54:03,441.441 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:54:03,443.443 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:54:03,449.449 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:54:03,455.455 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:54:05,496.496 INFO    ] ================================================
[2026-08-31 07:54:05,511.511 INFO    ] Launching Daemon at Mon Aug 31 07:54:05 IST 2026
[2026-08-31 07:54:05,522.522 INFO    ] ================================================
[2026-08-31 07:54:06,101.101 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:54:06
[2026-08-31 07:54:06,747.747 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:54:07,041.041 INFO    ] Initializing speech engine...
[2026-08-31 07:54:07,050.050 INFO    ] 2026-08-31 07:54:07
[2026-08-31 07:54:07,315.315 INFO    ] 2026-08-31 07:54:07
[2026-08-31 07:54:07,371.371 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:54:07,623.623 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:54:07,627.627 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:54:07,841.841 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:54:07,865.865 INFO    ] time= 31/08/2026 07:54:07
[2026-08-31 07:54:07,880.880 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:54:07,890.890 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:54:08,019.019 INFO    ] No existing commands found in stream
[2026-08-31 07:54:13,040.040 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:54:13,043.043 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-08-31 07:54:16,753.753 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 07:54:16,756.756 INFO    ] Checking for system updates...
[2026-08-31 07:54:16,793.793 INFO    ] 200
[2026-08-31 07:54:16,795.795 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:54:16,848.848 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:54:16,851.851 INFO    ] No update needed
[2026-08-31 07:54:16,853.853 INFO    ] Checking for camera pi updates...
[2026-08-31 07:54:16,888.888 INFO    ] 200
[2026-08-31 07:54:16,891.891 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:54:16,940.940 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:54:17,025.025 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:54:17,028.028 INFO    ] No camera update needed
[2026-08-31 07:54:17,030.030 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:54:17,033.033 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:54:17,038.038 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:54:17,043.043 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:54:19,083.083 INFO    ] ================================================
[2026-08-31 07:54:19,099.099 INFO    ] Launching Daemon at Mon Aug 31 07:54:19 IST 2026
[2026-08-31 07:54:19,110.110 INFO    ] ================================================
[2026-08-31 07:54:19,691.691 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:54:19
[2026-08-31 07:54:20,288.288 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:54:20,565.565 INFO    ] Initializing speech engine...
[2026-08-31 07:54:20,571.571 INFO    ] 2026-08-31 07:54:20
[2026-08-31 07:54:20,831.831 INFO    ] 2026-08-31 07:54:20
[2026-08-31 07:54:20,885.885 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:54:21,168.168 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:54:21,176.176 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:54:21,371.371 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:54:21,388.388 INFO    ] time= 31/08/2026 07:54:21
[2026-08-31 07:54:21,396.396 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:54:21,421.421 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:54:21,548.548 INFO    ] No existing commands found in stream
[2026-08-31 07:54:26,578.578 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:54:26,581.581 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-08-31 07:54:27,234.234 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 07:54:27,237.237 INFO    ] Checking for system updates...
[2026-08-31 07:54:27,272.272 INFO    ] 200
[2026-08-31 07:54:27,275.275 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:54:27,337.337 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:54:27,340.340 INFO    ] No update needed
[2026-08-31 07:54:27,342.342 INFO    ] Checking for camera pi updates...
[2026-08-31 07:54:27,375.375 INFO    ] 200
[2026-08-31 07:54:27,377.377 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:54:27,417.417 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:54:27,502.502 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:54:27,504.504 INFO    ] No camera update needed
[2026-08-31 07:54:27,506.506 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:54:27,508.508 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:54:27,514.514 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:54:27,519.519 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:54:29,560.560 INFO    ] ================================================
[2026-08-31 07:54:29,575.575 INFO    ] Launching Daemon at Mon Aug 31 07:54:29 IST 2026
[2026-08-31 07:54:29,586.586 INFO    ] ================================================
[2026-08-31 07:54:30,167.167 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:54:30
[2026-08-31 07:54:30,761.761 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:54:31,037.037 INFO    ] Initializing speech engine...
[2026-08-31 07:54:31,043.043 INFO    ] 2026-08-31 07:54:31
[2026-08-31 07:54:31,304.304 INFO    ] 2026-08-31 07:54:31
[2026-08-31 07:54:31,333.333 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:54:31,594.594 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:54:31,605.605 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:54:31,744.744 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:54:31,815.815 INFO    ] time= 31/08/2026 07:54:31
[2026-08-31 07:54:31,875.875 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:54:31,882.882 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:54:32,030.030 INFO    ] No existing commands found in stream
[2026-08-31 07:54:37,046.046 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:54:37,049.049 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-08-31 07:54:38,606.606 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 07:54:38,609.609 INFO    ] Checking for system updates...
[2026-08-31 07:54:38,645.645 INFO    ] 200
[2026-08-31 07:54:38,647.647 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:54:38,701.701 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:54:38,703.703 INFO    ] No update needed
[2026-08-31 07:54:38,706.706 INFO    ] Checking for camera pi updates...
[2026-08-31 07:54:38,739.739 INFO    ] 200
[2026-08-31 07:54:38,741.741 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:54:38,781.781 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:54:38,862.862 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:54:38,865.865 INFO    ] No camera update needed
[2026-08-31 07:54:38,867.867 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:54:38,870.870 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:54:38,875.875 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:54:38,880.880 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:54:40,921.921 INFO    ] ================================================
[2026-08-31 07:54:40,936.936 INFO    ] Launching Daemon at Mon Aug 31 07:54:40 IST 2026
[2026-08-31 07:54:40,947.947 INFO    ] ================================================
[2026-08-31 07:54:41,569.569 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:54:41
[2026-08-31 07:54:42,213.213 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:54:42,501.501 INFO    ] Initializing speech engine...
[2026-08-31 07:54:42,513.513 INFO    ] 2026-08-31 07:54:42
[2026-08-31 07:54:42,785.785 INFO    ] 2026-08-31 07:54:42
[2026-08-31 07:54:42,843.843 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:54:43,074.074 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:54:43,080.080 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:54:43,216.216 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:54:43,271.271 INFO    ] time= 31/08/2026 07:54:43
[2026-08-31 07:54:43,326.326 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:54:43,351.351 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:54:43,477.477 INFO    ] No existing commands found in stream
[2026-08-31 07:54:48,508.508 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:54:48,512.512 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-08-31 07:54:51,363.363 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 07:54:51,366.366 INFO    ] Checking for system updates...
[2026-08-31 07:54:51,403.403 INFO    ] 200
[2026-08-31 07:54:51,406.406 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:54:51,458.458 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:54:51,461.461 INFO    ] No update needed
[2026-08-31 07:54:51,464.464 INFO    ] Checking for camera pi updates...
[2026-08-31 07:54:51,498.498 INFO    ] 200
[2026-08-31 07:54:51,501.501 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:54:51,546.546 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:54:51,640.640 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:54:51,643.643 INFO    ] No camera update needed
[2026-08-31 07:54:51,645.645 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:54:51,648.648 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:54:51,654.654 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:54:51,659.659 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:54:53,699.699 INFO    ] ================================================
[2026-08-31 07:54:53,714.714 INFO    ] Launching Daemon at Mon Aug 31 07:54:53 IST 2026
[2026-08-31 07:54:53,726.726 INFO    ] ================================================
[2026-08-31 07:54:54,350.350 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:54:54
[2026-08-31 07:54:54,996.996 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:54:55,290.290 INFO    ] Initializing speech engine...
[2026-08-31 07:54:55,297.297 INFO    ] 2026-08-31 07:54:55
[2026-08-31 07:54:55,566.566 INFO    ] 2026-08-31 07:54:55
[2026-08-31 07:54:55,627.627 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:54:55,854.854 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:54:55,863.863 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:54:56,079.079 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:54:56,128.128 INFO    ] time= 31/08/2026 07:54:56
[2026-08-31 07:54:56,149.149 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:54:56,177.177 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:54:56,319.319 INFO    ] No existing commands found in stream
[2026-08-31 07:55:01,344.344 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:55:01,348.348 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-08-31 07:55:03,589.589 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 07:55:03,592.592 INFO    ] Checking for system updates...
[2026-08-31 07:55:03,631.631 INFO    ] 200
[2026-08-31 07:55:03,634.634 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:55:03,686.686 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:55:03,688.688 INFO    ] No update needed
[2026-08-31 07:55:03,691.691 INFO    ] Checking for camera pi updates...
[2026-08-31 07:55:03,724.724 INFO    ] 200
[2026-08-31 07:55:03,727.727 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:55:03,771.771 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:55:03,918.918 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:55:03,920.920 INFO    ] No camera update needed
[2026-08-31 07:55:03,923.923 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:55:03,925.925 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:55:03,931.931 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:55:03,936.936 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:55:05,977.977 INFO    ] ================================================
[2026-08-31 07:55:05,993.993 INFO    ] Launching Daemon at Mon Aug 31 07:55:05 IST 2026
[2026-08-31 07:55:06,004.004 INFO    ] ================================================
[2026-08-31 07:55:06,639.639 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:55:06
[2026-08-31 07:55:07,224.224 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:55:07,479.479 INFO    ] Initializing speech engine...
[2026-08-31 07:55:07,494.494 INFO    ] 2026-08-31 07:55:07
[2026-08-31 07:55:07,774.774 INFO    ] 2026-08-31 07:55:07
[2026-08-31 07:55:07,809.809 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:55:08,010.010 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:55:08,028.028 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:55:08,171.171 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:55:08,179.179 INFO    ] time= 31/08/2026 07:55:08
[2026-08-31 07:55:08,186.186 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:55:08,208.208 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:55:08,368.368 INFO    ] No existing commands found in stream
[2026-08-31 07:55:13,398.398 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:55:13,401.401 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-08-31 07:55:16,397.397 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 07:55:16,399.399 INFO    ] Checking for system updates...
[2026-08-31 07:55:16,435.435 INFO    ] 200
[2026-08-31 07:55:16,438.438 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:55:16,490.490 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:55:16,492.492 INFO    ] No update needed
[2026-08-31 07:55:16,495.495 INFO    ] Checking for camera pi updates...
[2026-08-31 07:55:16,528.528 INFO    ] 200
[2026-08-31 07:55:16,531.531 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:55:16,578.578 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:55:16,681.681 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:55:16,683.683 INFO    ] No camera update needed
[2026-08-31 07:55:16,685.685 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:55:16,688.688 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:55:16,693.693 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:55:16,698.698 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:55:18,739.739 INFO    ] ================================================
[2026-08-31 07:55:18,754.754 INFO    ] Launching Daemon at Mon Aug 31 07:55:18 IST 2026
[2026-08-31 07:55:18,765.765 INFO    ] ================================================
[2026-08-31 07:55:19,344.344 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:55:19
[2026-08-31 07:55:19,940.940 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:55:20,198.198 INFO    ] Initializing speech engine...
[2026-08-31 07:55:20,206.206 INFO    ] 2026-08-31 07:55:20
[2026-08-31 07:55:20,497.497 INFO    ] 2026-08-31 07:55:20
[2026-08-31 07:55:20,535.535 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:55:20,752.752 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:55:20,775.775 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:55:20,904.904 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:55:20,911.911 INFO    ] time= 31/08/2026 07:55:20
[2026-08-31 07:55:20,959.959 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:55:20,987.987 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:55:21,121.121 INFO    ] No existing commands found in stream
[2026-08-31 07:55:26,134.134 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:55:26,137.137 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-08-31 07:55:27,847.847 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 07:55:27,850.850 INFO    ] Checking for system updates...
[2026-08-31 07:55:27,890.890 INFO    ] 200
[2026-08-31 07:55:27,892.892 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:55:27,944.944 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:55:27,946.946 INFO    ] No update needed
[2026-08-31 07:55:27,949.949 INFO    ] Checking for camera pi updates...
[2026-08-31 07:55:27,983.983 INFO    ] 200
[2026-08-31 07:55:27,985.985 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:55:28,025.025 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:55:28,111.111 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:55:28,113.113 INFO    ] No camera update needed
[2026-08-31 07:55:28,115.115 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:55:28,118.118 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:55:28,123.123 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:55:28,128.128 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:55:30,169.169 INFO    ] ================================================
[2026-08-31 07:55:30,184.184 INFO    ] Launching Daemon at Mon Aug 31 07:55:30 IST 2026
[2026-08-31 07:55:30,194.194 INFO    ] ================================================
[2026-08-31 07:55:30,774.774 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:55:30
[2026-08-31 07:55:31,372.372 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:55:31,664.664 INFO    ] Initializing speech engine...
[2026-08-31 07:55:31,681.681 INFO    ] 2026-08-31 07:55:31
[2026-08-31 07:55:31,950.950 INFO    ] 2026-08-31 07:55:31
[2026-08-31 07:55:31,988.988 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:55:32,265.265 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:55:32,297.297 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:55:32,525.525 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:55:32,548.548 INFO    ] time= 31/08/2026 07:55:32
[2026-08-31 07:55:32,564.564 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:55:32,574.574 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:55:32,684.684 INFO    ] No existing commands found in stream
[2026-08-31 07:55:37,694.694 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:55:37,697.697 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-08-31 07:55:41,804.804 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 07:55:41,807.807 INFO    ] Checking for system updates...
[2026-08-31 07:55:41,846.846 INFO    ] 200
[2026-08-31 07:55:41,849.849 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:55:41,902.902 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:55:41,905.905 INFO    ] No update needed
[2026-08-31 07:55:41,909.909 INFO    ] Checking for camera pi updates...
[2026-08-31 07:55:41,946.946 INFO    ] 200
[2026-08-31 07:55:41,948.948 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:55:41,994.994 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:55:42,079.079 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:55:42,081.081 INFO    ] No camera update needed
[2026-08-31 07:55:42,084.084 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:55:42,086.086 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:55:42,092.092 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:55:42,098.098 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:55:44,139.139 INFO    ] ================================================
[2026-08-31 07:55:44,155.155 INFO    ] Launching Daemon at Mon Aug 31 07:55:44 IST 2026
[2026-08-31 07:55:44,165.165 INFO    ] ================================================
[2026-08-31 07:55:44,747.747 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:55:44
[2026-08-31 07:55:45,349.349 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:55:45,627.627 INFO    ] Initializing speech engine...
[2026-08-31 07:55:45,635.635 INFO    ] 2026-08-31 07:55:45
[2026-08-31 07:55:45,894.894 INFO    ] 2026-08-31 07:55:45
[2026-08-31 07:55:45,951.951 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:55:46,200.200 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:55:46,208.208 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:55:46,389.389 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:55:46,440.440 INFO    ] time= 31/08/2026 07:55:46
[2026-08-31 07:55:46,446.446 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:55:46,464.464 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:55:46,592.592 INFO    ] No existing commands found in stream
[2026-08-31 07:55:51,605.605 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:55:51,608.608 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-08-31 07:55:54,358.358 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 07:55:54,361.361 INFO    ] Checking for system updates...
[2026-08-31 07:55:54,396.396 INFO    ] 200
[2026-08-31 07:55:54,399.399 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:55:54,452.452 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:55:54,454.454 INFO    ] No update needed
[2026-08-31 07:55:54,457.457 INFO    ] Checking for camera pi updates...
[2026-08-31 07:55:54,490.490 INFO    ] 200
[2026-08-31 07:55:54,492.492 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:55:54,532.532 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:55:54,616.616 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:55:54,619.619 INFO    ] No camera update needed
[2026-08-31 07:55:54,621.621 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:55:54,624.624 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:55:54,629.629 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:55:54,634.634 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:55:56,674.674 INFO    ] ================================================
[2026-08-31 07:55:56,690.690 INFO    ] Launching Daemon at Mon Aug 31 07:55:56 IST 2026
[2026-08-31 07:55:56,700.700 INFO    ] ================================================
[2026-08-31 07:55:57,332.332 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:55:57
[2026-08-31 07:55:57,982.982 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:55:58,274.274 INFO    ] Initializing speech engine...
[2026-08-31 07:55:58,286.286 INFO    ] 2026-08-31 07:55:58
[2026-08-31 07:55:58,560.560 INFO    ] 2026-08-31 07:55:58
[2026-08-31 07:55:58,614.614 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:55:58,872.872 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:55:58,892.892 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:55:59,111.111 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:55:59,118.118 INFO    ] time= 31/08/2026 07:55:59
[2026-08-31 07:55:59,137.137 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:55:59,167.167 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:55:59,269.269 INFO    ] No existing commands found in stream
[2026-08-31 07:56:04,286.286 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:56:04,290.290 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-08-31 07:56:05,713.713 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 07:56:05,716.716 INFO    ] Checking for system updates...
[2026-08-31 07:56:05,752.752 INFO    ] 200
[2026-08-31 07:56:05,755.755 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:56:05,810.810 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:56:05,812.812 INFO    ] No update needed
[2026-08-31 07:56:05,815.815 INFO    ] Checking for camera pi updates...
[2026-08-31 07:56:05,848.848 INFO    ] 200
[2026-08-31 07:56:05,851.851 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:56:05,895.895 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:56:06,008.008 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:56:06,010.010 INFO    ] No camera update needed
[2026-08-31 07:56:06,012.012 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:56:06,015.015 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:56:06,020.020 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:56:06,025.025 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:56:08,066.066 INFO    ] ================================================
[2026-08-31 07:56:08,081.081 INFO    ] Launching Daemon at Mon Aug 31 07:56:08 IST 2026
[2026-08-31 07:56:08,091.091 INFO    ] ================================================
[2026-08-31 07:56:08,656.656 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:56:08
[2026-08-31 07:56:09,239.239 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:56:09,505.505 INFO    ] Initializing speech engine...
[2026-08-31 07:56:09,515.515 INFO    ] 2026-08-31 07:56:09
[2026-08-31 07:56:09,759.759 INFO    ] 2026-08-31 07:56:09
[2026-08-31 07:56:09,793.793 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:56:09,991.991 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:56:10,018.018 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:56:10,188.188 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:56:10,235.235 INFO    ] time= 31/08/2026 07:56:10
[2026-08-31 07:56:10,295.295 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:56:10,323.323 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:56:10,383.383 INFO    ] No existing commands found in stream
[2026-08-31 07:56:15,409.409 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:56:15,412.412 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-08-31 07:56:17,311.311 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 07:56:17,314.314 INFO    ] Checking for system updates...
[2026-08-31 07:56:17,350.350 INFO    ] 200
[2026-08-31 07:56:17,353.353 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:56:17,413.413 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:56:17,416.416 INFO    ] No update needed
[2026-08-31 07:56:17,419.419 INFO    ] Checking for camera pi updates...
[2026-08-31 07:56:17,452.452 INFO    ] 200
[2026-08-31 07:56:17,455.455 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:56:17,496.496 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:56:17,567.567 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:56:17,570.570 INFO    ] No camera update needed
[2026-08-31 07:56:17,572.572 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:56:17,575.575 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:56:17,581.581 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:56:17,586.586 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:56:19,630.630 INFO    ] ================================================
[2026-08-31 07:56:19,645.645 INFO    ] Launching Daemon at Mon Aug 31 07:56:19 IST 2026
[2026-08-31 07:56:19,656.656 INFO    ] ================================================
[2026-08-31 07:56:20,223.223 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:56:20
[2026-08-31 07:56:20,830.830 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:56:21,103.103 INFO    ] Initializing speech engine...
[2026-08-31 07:56:21,112.112 INFO    ] 2026-08-31 07:56:21
[2026-08-31 07:56:21,375.375 INFO    ] 2026-08-31 07:56:21
[2026-08-31 07:56:21,428.428 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:56:21,675.675 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:56:21,682.682 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:56:21,874.874 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:56:21,919.919 INFO    ] time= 31/08/2026 07:56:21
[2026-08-31 07:56:21,925.925 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:56:21,944.944 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:56:22,069.069 INFO    ] No existing commands found in stream
[2026-08-31 07:56:27,086.086 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:56:27,089.089 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-08-31 07:56:29,368.368 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 07:56:29,371.371 INFO    ] Checking for system updates...
[2026-08-31 07:56:29,406.406 INFO    ] 200
[2026-08-31 07:56:29,409.409 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:56:29,460.460 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:56:29,463.463 INFO    ] No update needed
[2026-08-31 07:56:29,465.465 INFO    ] Checking for camera pi updates...
[2026-08-31 07:56:29,502.502 INFO    ] 200
[2026-08-31 07:56:29,504.504 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:56:29,548.548 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:56:29,627.627 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:56:29,629.629 INFO    ] No camera update needed
[2026-08-31 07:56:29,632.632 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:56:29,634.634 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:56:29,639.639 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:56:29,644.644 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:56:31,686.686 INFO    ] ================================================
[2026-08-31 07:56:31,704.704 INFO    ] Launching Daemon at Mon Aug 31 07:56:31 IST 2026
[2026-08-31 07:56:31,716.716 INFO    ] ================================================
[2026-08-31 07:56:32,401.401 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:56:32
[2026-08-31 07:56:33,068.068 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:56:33,345.345 INFO    ] Initializing speech engine...
[2026-08-31 07:56:33,352.352 INFO    ] 2026-08-31 07:56:33
[2026-08-31 07:56:33,613.613 INFO    ] 2026-08-31 07:56:33
[2026-08-31 07:56:33,668.668 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:56:33,900.900 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:56:33,905.905 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:56:34,124.124 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:56:34,167.167 INFO    ] time= 31/08/2026 07:56:34
[2026-08-31 07:56:34,173.173 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:56:34,190.190 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:56:34,313.313 INFO    ] No existing commands found in stream
[2026-08-31 07:56:39,332.332 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:56:39,335.335 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-08-31 07:56:40,674.674 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 07:56:40,677.677 INFO    ] Checking for system updates...
[2026-08-31 07:56:40,714.714 INFO    ] 200
[2026-08-31 07:56:40,716.716 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:56:40,769.769 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:56:40,772.772 INFO    ] No update needed
[2026-08-31 07:56:40,775.775 INFO    ] Checking for camera pi updates...
[2026-08-31 07:56:40,810.810 INFO    ] 200
[2026-08-31 07:56:40,813.813 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:56:40,860.860 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:56:40,939.939 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:56:40,942.942 INFO    ] No camera update needed
[2026-08-31 07:56:40,945.945 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:56:40,947.947 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:56:40,953.953 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:56:40,959.959 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:56:43,002.002 INFO    ] ================================================
[2026-08-31 07:56:43,017.017 INFO    ] Launching Daemon at Mon Aug 31 07:56:43 IST 2026
[2026-08-31 07:56:43,028.028 INFO    ] ================================================
[2026-08-31 07:56:43,670.670 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:56:43
[2026-08-31 07:56:44,330.330 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:56:44,634.634 INFO    ] Initializing speech engine...
[2026-08-31 07:56:44,645.645 INFO    ] 2026-08-31 07:56:44
[2026-08-31 07:56:44,925.925 INFO    ] 2026-08-31 07:56:44
[2026-08-31 07:56:44,972.972 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:56:45,201.201 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:56:45,206.206 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:56:45,344.344 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:56:45,409.409 INFO    ] time= 31/08/2026 07:56:45
[2026-08-31 07:56:45,474.474 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:56:45,482.482 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:56:45,627.627 INFO    ] No existing commands found in stream
[2026-08-31 07:56:50,642.642 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:56:50,645.645 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-08-31 07:56:53,728.728 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 07:56:53,731.731 INFO    ] Checking for system updates...
[2026-08-31 07:56:53,768.768 INFO    ] 200
[2026-08-31 07:56:53,771.771 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:56:53,824.824 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:56:53,826.826 INFO    ] No update needed
[2026-08-31 07:56:53,829.829 INFO    ] Checking for camera pi updates...
[2026-08-31 07:56:53,863.863 INFO    ] 200
[2026-08-31 07:56:53,866.866 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:56:53,907.907 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:56:54,005.005 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:56:54,008.008 INFO    ] No camera update needed
[2026-08-31 07:56:54,010.010 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:56:54,013.013 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:56:54,019.019 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:56:54,025.025 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:56:56,065.065 INFO    ] ================================================
[2026-08-31 07:56:56,080.080 INFO    ] Launching Daemon at Mon Aug 31 07:56:56 IST 2026
[2026-08-31 07:56:56,092.092 INFO    ] ================================================
[2026-08-31 07:56:56,746.746 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:56:56
[2026-08-31 07:56:57,346.346 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:56:57,624.624 INFO    ] Initializing speech engine...
[2026-08-31 07:56:57,632.632 INFO    ] 2026-08-31 07:56:57
[2026-08-31 07:56:57,907.907 INFO    ] 2026-08-31 07:56:57
[2026-08-31 07:56:57,952.952 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:56:58,177.177 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:56:58,181.181 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:56:58,403.403 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:56:58,440.440 INFO    ] time= 31/08/2026 07:56:58
[2026-08-31 07:56:58,446.446 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:56:58,464.464 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:56:58,595.595 INFO    ] No existing commands found in stream
[2026-08-31 07:57:03,608.608 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:57:03,610.610 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-08-31 07:57:07,506.506 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 07:57:07,509.509 INFO    ] Checking for system updates...
[2026-08-31 07:57:07,545.545 INFO    ] 200
[2026-08-31 07:57:07,548.548 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:57:07,601.601 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:57:07,603.603 INFO    ] No update needed
[2026-08-31 07:57:07,605.605 INFO    ] Checking for camera pi updates...
[2026-08-31 07:57:07,642.642 INFO    ] 200
[2026-08-31 07:57:07,645.645 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:57:07,689.689 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:57:07,868.868 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:57:07,871.871 INFO    ] No camera update needed
[2026-08-31 07:57:07,873.873 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:57:07,875.875 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:57:07,881.881 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:57:07,886.886 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:57:09,928.928 INFO    ] ================================================
[2026-08-31 07:57:09,943.943 INFO    ] Launching Daemon at Mon Aug 31 07:57:09 IST 2026
[2026-08-31 07:57:09,954.954 INFO    ] ================================================
[2026-08-31 07:57:10,533.533 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:57:10
[2026-08-31 07:57:11,134.134 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:57:11,407.407 INFO    ] Initializing speech engine...
[2026-08-31 07:57:11,416.416 INFO    ] 2026-08-31 07:57:11
[2026-08-31 07:57:11,679.679 INFO    ] 2026-08-31 07:57:11
[2026-08-31 07:57:11,732.732 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:57:11,981.981 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:57:11,987.987 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:57:12,189.189 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:57:12,220.220 INFO    ] time= 31/08/2026 07:57:12
[2026-08-31 07:57:12,238.238 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:57:12,244.244 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:57:12,359.359 INFO    ] No existing commands found in stream
[2026-08-31 07:57:17,383.383 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:57:17,386.386 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-08-31 07:57:20,725.725 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 07:57:20,727.727 INFO    ] Checking for system updates...
[2026-08-31 07:57:20,763.763 INFO    ] 200
[2026-08-31 07:57:20,765.765 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:57:20,819.819 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:57:20,821.821 INFO    ] No update needed
[2026-08-31 07:57:20,824.824 INFO    ] Checking for camera pi updates...
[2026-08-31 07:57:20,857.857 INFO    ] 200
[2026-08-31 07:57:20,860.860 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:57:20,905.905 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:57:20,992.992 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:57:20,995.995 INFO    ] No camera update needed
[2026-08-31 07:57:20,997.997 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:57:21,000.000 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:57:21,005.005 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:57:21,010.010 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:57:23,052.052 INFO    ] ================================================
[2026-08-31 07:57:23,068.068 INFO    ] Launching Daemon at Mon Aug 31 07:57:23 IST 2026
[2026-08-31 07:57:23,079.079 INFO    ] ================================================
[2026-08-31 07:57:23,733.733 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:57:23
[2026-08-31 07:57:24,406.406 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:57:24,707.707 INFO    ] Initializing speech engine...
[2026-08-31 07:57:24,720.720 INFO    ] 2026-08-31 07:57:24
[2026-08-31 07:57:24,991.991 INFO    ] 2026-08-31 07:57:24
[2026-08-31 07:57:25,043.043 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:57:25,265.265 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:57:25,276.276 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:57:25,430.430 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:57:25,485.485 INFO    ] time= 31/08/2026 07:57:25
[2026-08-31 07:57:25,535.535 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:57:25,543.543 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:57:25,679.679 INFO    ] No existing commands found in stream
[2026-08-31 07:57:30,700.700 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:57:30,703.703 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-08-31 07:57:31,316.316 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 07:57:31,319.319 INFO    ] Checking for system updates...
[2026-08-31 07:57:31,355.355 INFO    ] 200
[2026-08-31 07:57:31,357.357 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:57:31,417.417 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:57:31,420.420 INFO    ] No update needed
[2026-08-31 07:57:31,422.422 INFO    ] Checking for camera pi updates...
[2026-08-31 07:57:31,455.455 INFO    ] 200
[2026-08-31 07:57:31,458.458 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:57:31,498.498 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:57:31,615.615 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:57:31,619.619 INFO    ] No camera update needed
[2026-08-31 07:57:31,621.621 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:57:31,624.624 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:57:31,630.630 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:57:31,637.637 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:57:33,680.680 INFO    ] ================================================
[2026-08-31 07:57:33,694.694 INFO    ] Launching Daemon at Mon Aug 31 07:57:33 IST 2026
[2026-08-31 07:57:33,705.705 INFO    ] ================================================
[2026-08-31 07:57:34,357.357 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:57:34
[2026-08-31 07:57:34,986.986 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:57:35,257.257 INFO    ] Initializing speech engine...
[2026-08-31 07:57:35,266.266 INFO    ] 2026-08-31 07:57:35
[2026-08-31 07:57:35,526.526 INFO    ] 2026-08-31 07:57:35
[2026-08-31 07:57:35,581.581 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:57:35,811.811 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:57:35,817.817 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:57:36,038.038 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:57:36,073.073 INFO    ] time= 31/08/2026 07:57:36
[2026-08-31 07:57:36,079.079 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:57:36,097.097 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:57:36,229.229 INFO    ] No existing commands found in stream
[2026-08-31 07:57:41,248.248 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:57:41,251.251 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-08-31 07:57:45,490.490 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 07:57:45,492.492 INFO    ] Checking for system updates...
[2026-08-31 07:57:45,528.528 INFO    ] 200
[2026-08-31 07:57:45,530.530 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:57:45,582.582 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:57:45,585.585 INFO    ] No update needed
[2026-08-31 07:57:45,587.587 INFO    ] Checking for camera pi updates...
[2026-08-31 07:57:45,621.621 INFO    ] 200
[2026-08-31 07:57:45,624.624 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:57:45,670.670 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:57:45,786.786 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:57:45,789.789 INFO    ] No camera update needed
[2026-08-31 07:57:45,791.791 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:57:45,793.793 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:57:45,806.806 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:57:45,811.811 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:57:47,852.852 INFO    ] ================================================
[2026-08-31 07:57:47,866.866 INFO    ] Launching Daemon at Mon Aug 31 07:57:47 IST 2026
[2026-08-31 07:57:47,877.877 INFO    ] ================================================
[2026-08-31 07:57:48,442.442 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:57:48
[2026-08-31 07:57:49,024.024 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:57:49,278.278 INFO    ] Initializing speech engine...
[2026-08-31 07:57:49,301.301 INFO    ] 2026-08-31 07:57:49
[2026-08-31 07:57:49,557.557 INFO    ] 2026-08-31 07:57:49
[2026-08-31 07:57:49,590.590 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:57:49,794.794 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:57:49,823.823 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:57:49,950.950 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:57:49,956.956 INFO    ] time= 31/08/2026 07:57:49
[2026-08-31 07:57:49,962.962 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:57:50,018.018 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:57:50,158.158 INFO    ] No existing commands found in stream
[2026-08-31 07:57:55,178.178 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:57:55,181.181 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-08-31 07:57:56,390.390 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 07:57:56,393.393 INFO    ] Checking for system updates...
[2026-08-31 07:57:56,428.428 INFO    ] 200
[2026-08-31 07:57:56,431.431 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:57:56,482.482 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:57:56,485.485 INFO    ] No update needed
[2026-08-31 07:57:56,487.487 INFO    ] Checking for camera pi updates...
[2026-08-31 07:57:56,525.525 INFO    ] 200
[2026-08-31 07:57:56,527.527 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:57:56,568.568 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:57:56,658.658 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:57:56,660.660 INFO    ] No camera update needed
[2026-08-31 07:57:56,663.663 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:57:56,665.665 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:57:56,671.671 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:57:56,676.676 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:57:58,719.719 INFO    ] ================================================
[2026-08-31 07:57:58,734.734 INFO    ] Launching Daemon at Mon Aug 31 07:57:58 IST 2026
[2026-08-31 07:57:58,745.745 INFO    ] ================================================
[2026-08-31 07:57:59,365.365 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:57:59
[2026-08-31 07:58:00,035.035 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:58:00,338.338 INFO    ] Initializing speech engine...
[2026-08-31 07:58:00,351.351 INFO    ] 2026-08-31 07:58:00
[2026-08-31 07:58:00,621.621 INFO    ] 2026-08-31 07:58:00
[2026-08-31 07:58:00,676.676 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:58:00,967.967 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:58:00,976.976 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:58:01,177.177 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:58:01,184.184 INFO    ] time= 31/08/2026 07:58:01
[2026-08-31 07:58:01,206.206 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:58:01,233.233 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:58:01,363.363 INFO    ] No existing commands found in stream
[2026-08-31 07:58:06,399.399 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:58:06,402.402 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-08-31 07:58:10,409.409 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 07:58:10,412.412 INFO    ] Checking for system updates...
[2026-08-31 07:58:10,452.452 INFO    ] 200
[2026-08-31 07:58:10,455.455 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:58:10,511.511 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:58:10,513.513 INFO    ] No update needed
[2026-08-31 07:58:10,516.516 INFO    ] Checking for camera pi updates...
[2026-08-31 07:58:10,551.551 INFO    ] 200
[2026-08-31 07:58:10,553.553 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:58:10,594.594 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:58:10,698.698 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:58:10,700.700 INFO    ] No camera update needed
[2026-08-31 07:58:10,702.702 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:58:10,705.705 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:58:10,710.710 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:58:10,715.715 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:58:12,754.754 INFO    ] ================================================
[2026-08-31 07:58:12,769.769 INFO    ] Launching Daemon at Mon Aug 31 07:58:12 IST 2026
[2026-08-31 07:58:12,780.780 INFO    ] ================================================
[2026-08-31 07:58:13,432.432 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:58:13
[2026-08-31 07:58:14,107.107 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:58:14,413.413 INFO    ] Initializing speech engine...
[2026-08-31 07:58:14,421.421 INFO    ] 2026-08-31 07:58:14
[2026-08-31 07:58:14,702.702 INFO    ] 2026-08-31 07:58:14
[2026-08-31 07:58:14,755.755 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:58:14,988.988 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:58:14,995.995 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:58:15,130.130 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:58:15,178.178 INFO    ] time= 31/08/2026 07:58:15
[2026-08-31 07:58:15,228.228 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:58:15,268.268 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:58:15,399.399 INFO    ] No existing commands found in stream
[2026-08-31 07:58:20,428.428 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:58:20,432.432 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-08-31 07:58:22,591.591 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 07:58:22,594.594 INFO    ] Checking for system updates...
[2026-08-31 07:58:22,630.630 INFO    ] 200
[2026-08-31 07:58:22,632.632 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:58:22,684.684 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:58:22,687.687 INFO    ] No update needed
[2026-08-31 07:58:22,689.689 INFO    ] Checking for camera pi updates...
[2026-08-31 07:58:22,727.727 INFO    ] 200
[2026-08-31 07:58:22,729.729 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:58:22,774.774 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:58:22,866.866 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:58:22,869.869 INFO    ] No camera update needed
[2026-08-31 07:58:22,871.871 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:58:22,874.874 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:58:22,879.879 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:58:22,884.884 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:58:24,923.923 INFO    ] ================================================
[2026-08-31 07:58:24,938.938 INFO    ] Launching Daemon at Mon Aug 31 07:58:24 IST 2026
[2026-08-31 07:58:24,949.949 INFO    ] ================================================
[2026-08-31 07:58:25,518.518 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:58:25
[2026-08-31 07:58:26,104.104 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:58:26,353.353 INFO    ] Initializing speech engine...
[2026-08-31 07:58:26,366.366 INFO    ] 2026-08-31 07:58:26
[2026-08-31 07:58:26,632.632 INFO    ] 2026-08-31 07:58:26
[2026-08-31 07:58:26,667.667 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:58:26,868.868 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:58:26,927.927 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:58:27,076.076 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:58:27,148.148 INFO    ] time= 31/08/2026 07:58:27
[2026-08-31 07:58:27,202.202 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:58:27,208.208 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:58:27,351.351 INFO    ] No existing commands found in stream
[2026-08-31 07:58:32,369.369 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:58:32,372.372 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-08-31 07:58:34,405.405 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 07:58:34,408.408 INFO    ] Checking for system updates...
[2026-08-31 07:58:34,443.443 INFO    ] 200
[2026-08-31 07:58:34,445.445 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:58:34,507.507 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:58:34,510.510 INFO    ] No update needed
[2026-08-31 07:58:34,512.512 INFO    ] Checking for camera pi updates...
[2026-08-31 07:58:34,546.546 INFO    ] 200
[2026-08-31 07:58:34,548.548 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:58:34,594.594 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:58:34,679.679 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:58:34,681.681 INFO    ] No camera update needed
[2026-08-31 07:58:34,683.683 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:58:34,686.686 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:58:34,691.691 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:58:34,696.696 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:58:36,737.737 INFO    ] ================================================
[2026-08-31 07:58:36,751.751 INFO    ] Launching Daemon at Mon Aug 31 07:58:36 IST 2026
[2026-08-31 07:58:36,762.762 INFO    ] ================================================
[2026-08-31 07:58:37,408.408 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:58:37
[2026-08-31 07:58:38,074.074 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:58:38,380.380 INFO    ] Initializing speech engine...
[2026-08-31 07:58:38,394.394 INFO    ] 2026-08-31 07:58:38
[2026-08-31 07:58:38,710.710 INFO    ] 2026-08-31 07:58:38
[2026-08-31 07:58:38,794.794 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:58:39,010.010 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:58:39,019.019 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:58:39,220.220 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:58:39,227.227 INFO    ] time= 31/08/2026 07:58:39
[2026-08-31 07:58:39,246.246 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:58:39,275.275 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:58:39,386.386 INFO    ] No existing commands found in stream
[2026-08-31 07:58:44,406.406 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:58:44,410.410 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-08-31 07:58:48,195.195 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 07:58:48,198.198 INFO    ] Checking for system updates...
[2026-08-31 07:58:48,234.234 INFO    ] 200
[2026-08-31 07:58:48,237.237 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:58:48,290.290 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:58:48,293.293 INFO    ] No update needed
[2026-08-31 07:58:48,296.296 INFO    ] Checking for camera pi updates...
[2026-08-31 07:58:48,330.330 INFO    ] 200
[2026-08-31 07:58:48,333.333 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:58:48,375.375 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:58:48,459.459 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:58:48,462.462 INFO    ] No camera update needed
[2026-08-31 07:58:48,464.464 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:58:48,467.467 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:58:48,473.473 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:58:48,479.479 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:58:50,520.520 INFO    ] ================================================
[2026-08-31 07:58:50,535.535 INFO    ] Launching Daemon at Mon Aug 31 07:58:50 IST 2026
[2026-08-31 07:58:50,545.545 INFO    ] ================================================
[2026-08-31 07:58:51,198.198 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:58:51
[2026-08-31 07:58:51,870.870 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:58:52,182.182 INFO    ] Initializing speech engine...
[2026-08-31 07:58:52,187.187 INFO    ] 2026-08-31 07:58:52
[2026-08-31 07:58:52,474.474 INFO    ] 2026-08-31 07:58:52
[2026-08-31 07:58:52,583.583 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:58:52,796.796 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:58:52,807.807 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:58:52,998.998 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:58:53,019.019 INFO    ] time= 31/08/2026 07:58:53
[2026-08-31 07:58:53,048.048 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:58:53,056.056 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:58:53,170.170 INFO    ] No existing commands found in stream
[2026-08-31 07:58:58,196.196 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:58:58,200.200 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-08-31 07:59:01,288.288 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 07:59:01,291.291 INFO    ] Checking for system updates...
[2026-08-31 07:59:01,328.328 INFO    ] 200
[2026-08-31 07:59:01,331.331 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:59:01,383.383 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:59:01,386.386 INFO    ] No update needed
[2026-08-31 07:59:01,389.389 INFO    ] Checking for camera pi updates...
[2026-08-31 07:59:01,428.428 INFO    ] 200
[2026-08-31 07:59:01,431.431 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:59:01,481.481 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:59:01,596.596 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:59:01,605.605 INFO    ] No camera update needed
[2026-08-31 07:59:01,616.616 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:59:01,622.622 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:59:01,639.639 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:59:01,649.649 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:59:03,698.698 INFO    ] ================================================
[2026-08-31 07:59:03,713.713 INFO    ] Launching Daemon at Mon Aug 31 07:59:03 IST 2026
[2026-08-31 07:59:03,723.723 INFO    ] ================================================
[2026-08-31 07:59:04,363.363 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:59:04
[2026-08-31 07:59:05,022.022 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:59:05,323.323 INFO    ] Initializing speech engine...
[2026-08-31 07:59:05,337.337 INFO    ] 2026-08-31 07:59:05
[2026-08-31 07:59:05,646.646 INFO    ] 2026-08-31 07:59:05
[2026-08-31 07:59:05,716.716 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:59:05,910.910 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:59:05,915.915 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:59:06,114.114 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:59:06,155.155 INFO    ] time= 31/08/2026 07:59:06
[2026-08-31 07:59:06,162.162 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:59:06,184.184 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:59:06,336.336 INFO    ] No existing commands found in stream
[2026-08-31 07:59:11,368.368 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:59:11,371.371 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-08-31 07:59:14,276.276 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 07:59:14,280.280 INFO    ] Checking for system updates...
[2026-08-31 07:59:14,319.319 INFO    ] 200
[2026-08-31 07:59:14,322.322 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:59:14,376.376 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:59:14,379.379 INFO    ] No update needed
[2026-08-31 07:59:14,382.382 INFO    ] Checking for camera pi updates...
[2026-08-31 07:59:14,420.420 INFO    ] 200
[2026-08-31 07:59:14,422.422 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:59:14,468.468 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:59:14,642.642 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:59:14,645.645 INFO    ] No camera update needed
[2026-08-31 07:59:14,648.648 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:59:14,650.650 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:59:14,657.657 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:59:14,662.662 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:59:16,703.703 INFO    ] ================================================
[2026-08-31 07:59:16,718.718 INFO    ] Launching Daemon at Mon Aug 31 07:59:16 IST 2026
[2026-08-31 07:59:16,729.729 INFO    ] ================================================
[2026-08-31 07:59:17,296.296 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:59:17
[2026-08-31 07:59:17,879.879 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:59:18,146.146 INFO    ] Initializing speech engine...
[2026-08-31 07:59:18,155.155 INFO    ] 2026-08-31 07:59:18
[2026-08-31 07:59:18,402.402 INFO    ] 2026-08-31 07:59:18
[2026-08-31 07:59:18,436.436 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:59:18,688.688 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:59:18,697.697 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:59:18,929.929 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:59:18,959.959 INFO    ] time= 31/08/2026 07:59:18
[2026-08-31 07:59:18,965.965 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:59:18,982.982 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:59:19,100.100 INFO    ] No existing commands found in stream
[2026-08-31 07:59:24,125.125 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:59:24,128.128 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-08-31 07:59:28,307.307 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 07:59:28,310.310 INFO    ] Checking for system updates...
[2026-08-31 07:59:28,345.345 INFO    ] 200
[2026-08-31 07:59:28,348.348 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:59:28,400.400 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:59:28,402.402 INFO    ] No update needed
[2026-08-31 07:59:28,405.405 INFO    ] Checking for camera pi updates...
[2026-08-31 07:59:28,438.438 INFO    ] 200
[2026-08-31 07:59:28,441.441 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:59:28,481.481 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:59:28,555.555 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:59:28,558.558 INFO    ] No camera update needed
[2026-08-31 07:59:28,560.560 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:59:28,562.562 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:59:28,568.568 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:59:28,572.572 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:59:30,613.613 INFO    ] ================================================
[2026-08-31 07:59:30,629.629 INFO    ] Launching Daemon at Mon Aug 31 07:59:30 IST 2026
[2026-08-31 07:59:30,639.639 INFO    ] ================================================
[2026-08-31 07:59:31,285.285 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:59:31
[2026-08-31 07:59:31,935.935 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:59:32,199.199 INFO    ] Initializing speech engine...
[2026-08-31 07:59:32,212.212 INFO    ] 2026-08-31 07:59:32
[2026-08-31 07:59:32,500.500 INFO    ] 2026-08-31 07:59:32
[2026-08-31 07:59:32,545.545 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:59:32,745.745 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:59:32,803.803 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:59:32,968.968 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:59:33,028.028 INFO    ] time= 31/08/2026 07:59:32
[2026-08-31 07:59:33,096.096 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:59:33,104.104 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:59:33,246.246 INFO    ] No existing commands found in stream
[2026-08-31 07:59:38,262.262 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:59:38,265.265 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-08-31 07:59:42,628.628 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 07:59:42,631.631 INFO    ] Checking for system updates...
[2026-08-31 07:59:42,667.667 INFO    ] 200
[2026-08-31 07:59:42,670.670 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:59:42,723.723 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:59:42,726.726 INFO    ] No update needed
[2026-08-31 07:59:42,728.728 INFO    ] Checking for camera pi updates...
[2026-08-31 07:59:42,763.763 INFO    ] 200
[2026-08-31 07:59:42,766.766 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:59:42,806.806 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:59:42,899.899 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 07:59:42,902.902 INFO    ] No camera update needed
[2026-08-31 07:59:42,904.904 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:59:42,906.906 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:59:42,912.912 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:59:42,917.917 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:59:44,957.957 INFO    ] ================================================
[2026-08-31 07:59:44,973.973 INFO    ] Launching Daemon at Mon Aug 31 07:59:44 IST 2026
[2026-08-31 07:59:44,984.984 INFO    ] ================================================
[2026-08-31 07:59:45,562.562 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:59:45
[2026-08-31 07:59:46,158.158 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:59:46,431.431 INFO    ] Initializing speech engine...
[2026-08-31 07:59:46,440.440 INFO    ] 2026-08-31 07:59:46
[2026-08-31 07:59:46,688.688 INFO    ] 2026-08-31 07:59:46
[2026-08-31 07:59:46,723.723 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 07:59:46,974.974 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 07:59:46,984.984 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 07:59:47,190.190 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 07:59:47,241.241 INFO    ] time= 31/08/2026 07:59:47
[2026-08-31 07:59:47,247.247 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 07:59:47,265.265 INFO    ] Checking for existing commands in stream...
[2026-08-31 07:59:47,394.394 INFO    ] No existing commands found in stream
[2026-08-31 07:59:52,408.408 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 07:59:52,411.411 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-08-31 07:59:56,188.188 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 07:59:56,191.191 INFO    ] Checking for system updates...
[2026-08-31 07:59:56,227.227 INFO    ] 200
[2026-08-31 07:59:56,229.229 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:59:56,301.301 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:59:56,304.304 INFO    ] No update needed
[2026-08-31 07:59:56,306.306 INFO    ] Checking for camera pi updates...
[2026-08-31 07:59:56,339.339 INFO    ] 200
[2026-08-31 07:59:56,342.342 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 07:59:56,382.382 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 07:59:56,465.465 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 07:59:56,468.468 INFO    ] No camera update needed
[2026-08-31 07:59:56,470.470 INFO    ] Script finished. Safe exiting...
[2026-08-31 07:59:56,472.472 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 07:59:56,478.478 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 07:59:56,483.483 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 07:59:58,525.525 INFO    ] ================================================
[2026-08-31 07:59:58,541.541 INFO    ] Launching Daemon at Mon Aug 31 07:59:58 IST 2026
[2026-08-31 07:59:58,552.552 INFO    ] ================================================
[2026-08-31 07:59:59,116.116 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 07:59:59
[2026-08-31 07:59:59,699.699 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 07:59:59,954.954 INFO    ] Initializing speech engine...
[2026-08-31 07:59:59,969.969 INFO    ] 2026-08-31 07:59:59
[2026-08-31 08:00:00,248.248 INFO    ] 2026-08-31 08:00:00
[2026-08-31 08:00:00,283.283 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:00:00,477.477 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:00:00,493.493 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:00:00,630.630 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:00:00,650.650 INFO    ] time= 31/08/2026 08:00:00
[2026-08-31 08:00:00,665.665 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:00:00,670.670 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:00:00,758.758 INFO    ] No existing commands found in stream
[2026-08-31 08:00:05,801.801 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:00:05,820.820 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-08-31 08:00:10,128.128 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 08:00:10,131.131 INFO    ] Checking for system updates...
[2026-08-31 08:00:10,167.167 INFO    ] 200
[2026-08-31 08:00:10,169.169 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:00:10,227.227 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:00:10,230.230 INFO    ] No update needed
[2026-08-31 08:00:10,232.232 INFO    ] Checking for camera pi updates...
[2026-08-31 08:00:10,265.265 INFO    ] 200
[2026-08-31 08:00:10,267.267 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:00:10,308.308 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:00:10,402.402 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:00:10,405.405 INFO    ] No camera update needed
[2026-08-31 08:00:10,407.407 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:00:10,410.410 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:00:10,415.415 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:00:10,420.420 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:00:12,460.460 INFO    ] ================================================
[2026-08-31 08:00:12,475.475 INFO    ] Launching Daemon at Mon Aug 31 08:00:12 IST 2026
[2026-08-31 08:00:12,486.486 INFO    ] ================================================
[2026-08-31 08:00:13,055.055 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:00:13
[2026-08-31 08:00:13,640.640 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:00:13,892.892 INFO    ] Initializing speech engine...
[2026-08-31 08:00:13,898.898 INFO    ] 2026-08-31 08:00:13
[2026-08-31 08:00:14,192.192 INFO    ] 2026-08-31 08:00:14
[2026-08-31 08:00:14,227.227 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:00:14,449.449 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:00:14,462.462 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:00:14,675.675 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:00:14,718.718 INFO    ] time= 31/08/2026 08:00:14
[2026-08-31 08:00:14,756.756 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:00:14,812.812 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:00:14,957.957 INFO    ] No existing commands found in stream
[2026-08-31 08:00:19,975.975 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:00:19,978.978 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-08-31 08:00:22,680.680 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 08:00:22,683.683 INFO    ] Checking for system updates...
[2026-08-31 08:00:22,719.719 INFO    ] 200
[2026-08-31 08:00:22,722.722 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:00:22,781.781 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:00:22,784.784 INFO    ] No update needed
[2026-08-31 08:00:22,788.788 INFO    ] Checking for camera pi updates...
[2026-08-31 08:00:22,822.822 INFO    ] 200
[2026-08-31 08:00:22,825.825 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:00:22,871.871 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:00:22,962.962 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:00:22,965.965 INFO    ] No camera update needed
[2026-08-31 08:00:22,968.968 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:00:22,970.970 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:00:22,977.977 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:00:22,982.982 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:00:25,024.024 INFO    ] ================================================
[2026-08-31 08:00:25,040.040 INFO    ] Launching Daemon at Mon Aug 31 08:00:25 IST 2026
[2026-08-31 08:00:25,051.051 INFO    ] ================================================
[2026-08-31 08:00:25,697.697 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:00:25
[2026-08-31 08:00:26,345.345 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:00:26,621.621 INFO    ] Initializing speech engine...
[2026-08-31 08:00:26,630.630 INFO    ] 2026-08-31 08:00:26
[2026-08-31 08:00:26,877.877 INFO    ] 2026-08-31 08:00:26
[2026-08-31 08:00:26,914.914 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:00:27,173.173 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:00:27,182.182 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:00:27,401.401 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:00:27,447.447 INFO    ] time= 31/08/2026 08:00:27
[2026-08-31 08:00:27,453.453 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:00:27,472.472 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:00:27,589.589 INFO    ] No existing commands found in stream
[2026-08-31 08:00:32,612.612 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:00:32,615.615 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-08-31 08:00:36,149.149 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 08:00:36,152.152 INFO    ] Checking for system updates...
[2026-08-31 08:00:36,187.187 INFO    ] 200
[2026-08-31 08:00:36,190.190 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:00:36,248.248 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:00:36,250.250 INFO    ] No update needed
[2026-08-31 08:00:36,252.252 INFO    ] Checking for camera pi updates...
[2026-08-31 08:00:36,285.285 INFO    ] 200
[2026-08-31 08:00:36,288.288 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:00:36,332.332 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:00:36,459.459 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:00:36,462.462 INFO    ] No camera update needed
[2026-08-31 08:00:36,464.464 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:00:36,467.467 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:00:36,472.472 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:00:36,477.477 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:00:38,517.517 INFO    ] ================================================
[2026-08-31 08:00:38,532.532 INFO    ] Launching Daemon at Mon Aug 31 08:00:38 IST 2026
[2026-08-31 08:00:38,543.543 INFO    ] ================================================
[2026-08-31 08:00:39,123.123 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:00:39
[2026-08-31 08:00:39,720.720 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:00:39,988.988 INFO    ] Initializing speech engine...
[2026-08-31 08:00:40,001.001 INFO    ] 2026-08-31 08:00:39
[2026-08-31 08:00:40,251.251 INFO    ] 2026-08-31 08:00:40
[2026-08-31 08:00:40,285.285 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:00:40,537.537 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:00:40,547.547 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:00:40,698.698 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:00:40,758.758 INFO    ] time= 31/08/2026 08:00:40
[2026-08-31 08:00:40,809.809 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:00:40,816.816 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:00:40,958.958 INFO    ] No existing commands found in stream
[2026-08-31 08:00:45,972.972 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:00:45,975.975 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-08-31 08:00:48,111.111 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 08:00:48,114.114 INFO    ] Checking for system updates...
[2026-08-31 08:00:48,150.150 INFO    ] 200
[2026-08-31 08:00:48,153.153 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:00:48,206.206 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:00:48,209.209 INFO    ] No update needed
[2026-08-31 08:00:48,212.212 INFO    ] Checking for camera pi updates...
[2026-08-31 08:00:48,247.247 INFO    ] 200
[2026-08-31 08:00:48,250.250 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:00:48,295.295 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:00:48,376.376 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:00:48,378.378 INFO    ] No camera update needed
[2026-08-31 08:00:48,381.381 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:00:48,383.383 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:00:48,388.388 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:00:48,393.393 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:00:50,432.432 INFO    ] ================================================
[2026-08-31 08:00:50,448.448 INFO    ] Launching Daemon at Mon Aug 31 08:00:50 IST 2026
[2026-08-31 08:00:50,459.459 INFO    ] ================================================
[2026-08-31 08:00:51,099.099 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:00:51
[2026-08-31 08:00:51,688.688 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:00:51,962.962 INFO    ] Initializing speech engine...
[2026-08-31 08:00:51,968.968 INFO    ] 2026-08-31 08:00:51
[2026-08-31 08:00:52,220.220 INFO    ] 2026-08-31 08:00:52
[2026-08-31 08:00:52,255.255 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:00:52,432.432 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:00:52,444.444 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:00:52,591.591 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:00:52,597.597 INFO    ] time= 31/08/2026 08:00:52
[2026-08-31 08:00:52,603.603 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:00:52,650.650 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:00:52,793.793 INFO    ] No existing commands found in stream
[2026-08-31 08:00:57,810.810 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:00:57,813.813 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-08-31 08:00:58,685.685 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 08:00:58,687.687 INFO    ] Checking for system updates...
[2026-08-31 08:00:58,726.726 INFO    ] 200
[2026-08-31 08:00:58,728.728 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:00:58,780.780 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:00:58,783.783 INFO    ] No update needed
[2026-08-31 08:00:58,785.785 INFO    ] Checking for camera pi updates...
[2026-08-31 08:00:58,822.822 INFO    ] 200
[2026-08-31 08:00:58,824.824 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:00:58,868.868 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:00:58,953.953 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:00:58,956.956 INFO    ] No camera update needed
[2026-08-31 08:00:58,958.958 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:00:58,961.961 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:00:58,966.966 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:00:58,971.971 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:01:01,011.011 INFO    ] ================================================
[2026-08-31 08:01:01,026.026 INFO    ] Launching Daemon at Mon Aug 31 08:01:01 IST 2026
[2026-08-31 08:01:01,036.036 INFO    ] ================================================
[2026-08-31 08:01:01,805.805 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:01:01
[2026-08-31 08:01:02,465.465 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:01:02,761.761 INFO    ] Initializing speech engine...
[2026-08-31 08:01:02,766.766 INFO    ] 2026-08-31 08:01:02
[2026-08-31 08:01:03,068.068 INFO    ] 2026-08-31 08:01:03
[2026-08-31 08:01:03,104.104 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:01:03,313.313 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:01:03,371.371 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:01:03,513.513 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:01:03,516.516 INFO    ] time= 31/08/2026 08:01:03
[2026-08-31 08:01:03,518.518 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:01:03,560.560 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:01:03,653.653 INFO    ] No existing commands found in stream
[2026-08-31 08:01:08,665.665 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:01:08,668.668 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-08-31 08:01:10,645.645 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 08:01:10,648.648 INFO    ] Checking for system updates...
[2026-08-31 08:01:10,687.687 INFO    ] 200
[2026-08-31 08:01:10,690.690 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:01:10,748.748 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:01:10,751.751 INFO    ] No update needed
[2026-08-31 08:01:10,754.754 INFO    ] Checking for camera pi updates...
[2026-08-31 08:01:10,791.791 INFO    ] 200
[2026-08-31 08:01:10,793.793 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:01:10,836.836 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:01:10,920.920 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:01:10,923.923 INFO    ] No camera update needed
[2026-08-31 08:01:10,925.925 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:01:10,928.928 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:01:10,933.933 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:01:10,939.939 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:01:12,979.979 INFO    ] ================================================
[2026-08-31 08:01:12,994.994 INFO    ] Launching Daemon at Mon Aug 31 08:01:12 IST 2026
[2026-08-31 08:01:13,005.005 INFO    ] ================================================
[2026-08-31 08:01:13,584.584 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:01:13
[2026-08-31 08:01:14,182.182 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:01:14,465.465 INFO    ] Initializing speech engine...
[2026-08-31 08:01:14,474.474 INFO    ] 2026-08-31 08:01:14
[2026-08-31 08:01:14,738.738 INFO    ] 2026-08-31 08:01:14
[2026-08-31 08:01:14,774.774 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:01:15,035.035 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:01:15,054.054 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:01:15,276.276 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:01:15,331.331 INFO    ] time= 31/08/2026 08:01:15
[2026-08-31 08:01:15,347.347 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:01:15,353.353 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:01:15,500.500 INFO    ] No existing commands found in stream
[2026-08-31 08:01:20,523.523 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:01:20,526.526 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-08-31 08:01:21,917.917 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 08:01:21,920.920 INFO    ] Checking for system updates...
[2026-08-31 08:01:21,956.956 INFO    ] 200
[2026-08-31 08:01:21,959.959 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:01:22,013.013 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:01:22,015.015 INFO    ] No update needed
[2026-08-31 08:01:22,018.018 INFO    ] Checking for camera pi updates...
[2026-08-31 08:01:22,054.054 INFO    ] 200
[2026-08-31 08:01:22,057.057 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:01:22,098.098 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:01:22,282.282 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:01:22,284.284 INFO    ] No camera update needed
[2026-08-31 08:01:22,287.287 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:01:22,290.290 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:01:22,295.295 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:01:22,301.301 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:01:24,342.342 INFO    ] ================================================
[2026-08-31 08:01:24,357.357 INFO    ] Launching Daemon at Mon Aug 31 08:01:24 IST 2026
[2026-08-31 08:01:24,368.368 INFO    ] ================================================
[2026-08-31 08:01:24,987.987 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:01:24
[2026-08-31 08:01:25,626.626 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:01:25,917.917 INFO    ] Initializing speech engine...
[2026-08-31 08:01:25,926.926 INFO    ] 2026-08-31 08:01:25
[2026-08-31 08:01:26,194.194 INFO    ] 2026-08-31 08:01:26
[2026-08-31 08:01:26,249.249 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:01:26,477.477 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:01:26,483.483 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:01:26,680.680 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:01:26,740.740 INFO    ] time= 31/08/2026 08:01:26
[2026-08-31 08:01:26,747.747 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:01:26,765.765 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:01:26,885.885 INFO    ] No existing commands found in stream
[2026-08-31 08:01:31,907.907 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:01:31,911.911 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-08-31 08:01:34,208.208 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 08:01:34,211.211 INFO    ] Checking for system updates...
[2026-08-31 08:01:34,247.247 INFO    ] 200
[2026-08-31 08:01:34,250.250 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:01:34,303.303 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:01:34,305.305 INFO    ] No update needed
[2026-08-31 08:01:34,308.308 INFO    ] Checking for camera pi updates...
[2026-08-31 08:01:34,344.344 INFO    ] 200
[2026-08-31 08:01:34,347.347 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:01:34,395.395 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:01:34,494.494 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:01:34,496.496 INFO    ] No camera update needed
[2026-08-31 08:01:34,499.499 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:01:34,501.501 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:01:34,506.506 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:01:34,512.512 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:01:36,551.551 INFO    ] ================================================
[2026-08-31 08:01:36,566.566 INFO    ] Launching Daemon at Mon Aug 31 08:01:36 IST 2026
[2026-08-31 08:01:36,576.576 INFO    ] ================================================
[2026-08-31 08:01:37,211.211 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:01:37
[2026-08-31 08:01:37,860.860 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:01:38,158.158 INFO    ] Initializing speech engine...
[2026-08-31 08:01:38,164.164 INFO    ] 2026-08-31 08:01:38
[2026-08-31 08:01:38,435.435 INFO    ] 2026-08-31 08:01:38
[2026-08-31 08:01:38,495.495 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:01:38,728.728 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:01:38,735.735 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:01:38,968.968 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:01:38,999.999 INFO    ] time= 31/08/2026 08:01:38
[2026-08-31 08:01:39,016.016 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:01:39,025.025 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:01:39,154.154 INFO    ] No existing commands found in stream
[2026-08-31 08:01:44,170.170 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:01:44,173.173 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-08-31 08:01:46,614.614 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 08:01:46,617.617 INFO    ] Checking for system updates...
[2026-08-31 08:01:46,653.653 INFO    ] 200
[2026-08-31 08:01:46,655.655 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:01:46,707.707 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:01:46,710.710 INFO    ] No update needed
[2026-08-31 08:01:46,712.712 INFO    ] Checking for camera pi updates...
[2026-08-31 08:01:46,745.745 INFO    ] 200
[2026-08-31 08:01:46,747.747 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:01:46,791.791 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:01:46,877.877 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:01:46,880.880 INFO    ] No camera update needed
[2026-08-31 08:01:46,882.882 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:01:46,884.884 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:01:46,889.889 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:01:46,894.894 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:01:48,935.935 INFO    ] ================================================
[2026-08-31 08:01:48,950.950 INFO    ] Launching Daemon at Mon Aug 31 08:01:48 IST 2026
[2026-08-31 08:01:48,961.961 INFO    ] ================================================
[2026-08-31 08:01:49,609.609 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:01:49
[2026-08-31 08:01:50,223.223 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:01:50,473.473 INFO    ] Initializing speech engine...
[2026-08-31 08:01:50,487.487 INFO    ] 2026-08-31 08:01:50
[2026-08-31 08:01:50,757.757 INFO    ] 2026-08-31 08:01:50
[2026-08-31 08:01:50,792.792 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:01:51,428.428 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:01:51,477.477 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:01:51,691.691 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:01:51,748.748 INFO    ] time= 31/08/2026 08:01:51
[2026-08-31 08:01:51,785.785 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:01:51,789.789 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:01:52,148.148 INFO    ] No existing commands found in stream
[2026-08-31 08:01:57,179.179 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:01:57,181.181 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-08-31 08:02:00,832.832 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 08:02:00,834.834 INFO    ] Checking for system updates...
[2026-08-31 08:02:00,870.870 INFO    ] 200
[2026-08-31 08:02:00,872.872 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:02:00,931.931 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:02:00,933.933 INFO    ] No update needed
[2026-08-31 08:02:00,935.935 INFO    ] Checking for camera pi updates...
[2026-08-31 08:02:00,972.972 INFO    ] 200
[2026-08-31 08:02:00,974.974 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:02:01,015.015 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:02:01,146.146 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:02:01,149.149 INFO    ] No camera update needed
[2026-08-31 08:02:01,152.152 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:02:01,154.154 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:02:01,161.161 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:02:01,166.166 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:02:03,211.211 INFO    ] ================================================
[2026-08-31 08:02:03,226.226 INFO    ] Launching Daemon at Mon Aug 31 08:02:03 IST 2026
[2026-08-31 08:02:03,239.239 INFO    ] ================================================
[2026-08-31 08:02:03,812.812 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:02:03
[2026-08-31 08:02:04,400.400 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:02:04,656.656 INFO    ] Initializing speech engine...
[2026-08-31 08:02:04,665.665 INFO    ] 2026-08-31 08:02:04
[2026-08-31 08:02:04,960.960 INFO    ] 2026-08-31 08:02:04
[2026-08-31 08:02:04,998.998 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:02:05,196.196 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:02:05,209.209 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:02:05,369.369 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:02:05,378.378 INFO    ] time= 31/08/2026 08:02:05
[2026-08-31 08:02:05,386.386 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:02:05,419.419 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:02:05,562.562 INFO    ] No existing commands found in stream
[2026-08-31 08:02:10,587.587 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:02:10,590.590 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-08-31 08:02:11,471.471 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 08:02:11,473.473 INFO    ] Checking for system updates...
[2026-08-31 08:02:11,512.512 INFO    ] 200
[2026-08-31 08:02:11,515.515 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:02:11,569.569 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:02:11,572.572 INFO    ] No update needed
[2026-08-31 08:02:11,575.575 INFO    ] Checking for camera pi updates...
[2026-08-31 08:02:11,609.609 INFO    ] 200
[2026-08-31 08:02:11,612.612 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:02:11,658.658 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:02:11,754.754 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:02:11,756.756 INFO    ] No camera update needed
[2026-08-31 08:02:11,759.759 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:02:11,761.761 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:02:11,766.766 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:02:11,771.771 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:02:13,813.813 INFO    ] ================================================
[2026-08-31 08:02:13,828.828 INFO    ] Launching Daemon at Mon Aug 31 08:02:13 IST 2026
[2026-08-31 08:02:13,839.839 INFO    ] ================================================
[2026-08-31 08:02:14,420.420 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:02:14
[2026-08-31 08:02:15,018.018 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:02:15,296.296 INFO    ] Initializing speech engine...
[2026-08-31 08:02:15,306.306 INFO    ] 2026-08-31 08:02:15
[2026-08-31 08:02:15,565.565 INFO    ] 2026-08-31 08:02:15
[2026-08-31 08:02:15,619.619 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:02:15,870.870 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:02:15,880.880 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:02:16,035.035 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:02:16,090.090 INFO    ] time= 31/08/2026 08:02:16
[2026-08-31 08:02:16,139.139 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:02:16,185.185 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:02:16,319.319 INFO    ] No existing commands found in stream
[2026-08-31 08:02:21,341.341 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:02:21,344.344 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-08-31 08:02:24,691.691 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 08:02:24,694.694 INFO    ] Checking for system updates...
[2026-08-31 08:02:24,730.730 INFO    ] 200
[2026-08-31 08:02:24,733.733 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:02:24,786.786 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:02:24,789.789 INFO    ] No update needed
[2026-08-31 08:02:24,791.791 INFO    ] Checking for camera pi updates...
[2026-08-31 08:02:24,825.825 INFO    ] 200
[2026-08-31 08:02:24,827.827 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:02:24,873.873 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:02:24,955.955 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:02:24,958.958 INFO    ] No camera update needed
[2026-08-31 08:02:24,960.960 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:02:24,963.963 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:02:24,968.968 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:02:24,973.973 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:02:27,014.014 INFO    ] ================================================
[2026-08-31 08:02:27,029.029 INFO    ] Launching Daemon at Mon Aug 31 08:02:27 IST 2026
[2026-08-31 08:02:27,040.040 INFO    ] ================================================
[2026-08-31 08:02:27,696.696 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:02:27
[2026-08-31 08:02:28,369.369 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:02:28,671.671 INFO    ] Initializing speech engine...
[2026-08-31 08:02:28,684.684 INFO    ] 2026-08-31 08:02:28
[2026-08-31 08:02:28,952.952 INFO    ] 2026-08-31 08:02:28
[2026-08-31 08:02:29,018.018 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:02:29,204.204 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:02:29,211.211 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:02:29,359.359 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:02:29,365.365 INFO    ] time= 31/08/2026 08:02:29
[2026-08-31 08:02:29,372.372 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:02:29,400.400 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:02:29,520.520 INFO    ] No existing commands found in stream
[2026-08-31 08:02:34,545.545 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:02:34,548.548 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-08-31 08:02:35,055.055 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 08:02:35,058.058 INFO    ] Checking for system updates...
[2026-08-31 08:02:35,094.094 INFO    ] 200
[2026-08-31 08:02:35,096.096 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:02:35,156.156 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:02:35,158.158 INFO    ] No update needed
[2026-08-31 08:02:35,161.161 INFO    ] Checking for camera pi updates...
[2026-08-31 08:02:35,195.195 INFO    ] 200
[2026-08-31 08:02:35,197.197 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:02:35,240.240 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:02:35,329.329 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:02:35,331.331 INFO    ] No camera update needed
[2026-08-31 08:02:35,334.334 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:02:35,336.336 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:02:35,342.342 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:02:35,347.347 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:02:37,388.388 INFO    ] ================================================
[2026-08-31 08:02:37,403.403 INFO    ] Launching Daemon at Mon Aug 31 08:02:37 IST 2026
[2026-08-31 08:02:37,413.413 INFO    ] ================================================
[2026-08-31 08:02:37,994.994 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:02:37
[2026-08-31 08:02:38,593.593 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:02:38,867.867 INFO    ] Initializing speech engine...
[2026-08-31 08:02:38,887.887 INFO    ] 2026-08-31 08:02:38
[2026-08-31 08:02:39,159.159 INFO    ] 2026-08-31 08:02:39
[2026-08-31 08:02:39,194.194 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:02:39,393.393 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:02:39,406.406 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:02:39,534.534 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:02:39,548.548 INFO    ] time= 31/08/2026 08:02:39
[2026-08-31 08:02:39,568.568 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:02:39,582.582 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:02:39,661.661 INFO    ] No existing commands found in stream
[2026-08-31 08:02:44,674.674 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:02:44,677.677 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-08-31 08:02:49,174.174 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 08:02:49,177.177 INFO    ] Checking for system updates...
[2026-08-31 08:02:49,213.213 INFO    ] 200
[2026-08-31 08:02:49,216.216 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:02:49,275.275 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:02:49,277.277 INFO    ] No update needed
[2026-08-31 08:02:49,280.280 INFO    ] Checking for camera pi updates...
[2026-08-31 08:02:49,314.314 INFO    ] 200
[2026-08-31 08:02:49,316.316 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:02:49,361.361 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:02:49,444.444 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:02:49,446.446 INFO    ] No camera update needed
[2026-08-31 08:02:49,449.449 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:02:49,451.451 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:02:49,456.456 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:02:49,461.461 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:02:51,501.501 INFO    ] ================================================
[2026-08-31 08:02:51,516.516 INFO    ] Launching Daemon at Mon Aug 31 08:02:51 IST 2026
[2026-08-31 08:02:51,526.526 INFO    ] ================================================
[2026-08-31 08:02:52,100.100 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:02:52
[2026-08-31 08:02:52,696.696 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:02:52,967.967 INFO    ] Initializing speech engine...
[2026-08-31 08:02:52,977.977 INFO    ] 2026-08-31 08:02:52
[2026-08-31 08:02:53,237.237 INFO    ] 2026-08-31 08:02:53
[2026-08-31 08:02:53,291.291 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:02:53,516.516 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:02:53,522.522 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:02:53,652.652 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:02:53,694.694 INFO    ] time= 31/08/2026 08:02:53
[2026-08-31 08:02:53,754.754 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:02:53,786.786 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:02:53,929.929 INFO    ] No existing commands found in stream
[2026-08-31 08:02:58,944.944 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:02:58,947.947 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-08-31 08:03:01,966.966 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 08:03:01,969.969 INFO    ] Checking for system updates...
[2026-08-31 08:03:02,028.028 INFO    ] 200
[2026-08-31 08:03:02,031.031 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:03:02,096.096 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:03:02,099.099 INFO    ] No update needed
[2026-08-31 08:03:02,102.102 INFO    ] Checking for camera pi updates...
[2026-08-31 08:03:02,163.163 INFO    ] 200
[2026-08-31 08:03:02,166.166 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:03:02,221.221 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:03:02,302.302 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:03:02,305.305 INFO    ] No camera update needed
[2026-08-31 08:03:02,308.308 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:03:02,311.311 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:03:02,318.318 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:03:02,324.324 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:03:04,366.366 INFO    ] ================================================
[2026-08-31 08:03:04,382.382 INFO    ] Launching Daemon at Mon Aug 31 08:03:04 IST 2026
[2026-08-31 08:03:04,393.393 INFO    ] ================================================
[2026-08-31 08:03:04,979.979 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:03:04
[2026-08-31 08:03:05,582.582 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:03:05,852.852 INFO    ] Initializing speech engine...
[2026-08-31 08:03:05,877.877 INFO    ] 2026-08-31 08:03:05
[2026-08-31 08:03:06,168.168 INFO    ] 2026-08-31 08:03:06
[2026-08-31 08:03:06,210.210 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:03:06,438.438 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:03:06,478.478 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:03:06,668.668 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:03:06,703.703 INFO    ] time= 31/08/2026 08:03:06
[2026-08-31 08:03:06,768.768 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:03:06,812.812 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:03:06,933.933 INFO    ] No existing commands found in stream
[2026-08-31 08:03:11,959.959 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:03:11,962.962 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-08-31 08:03:12,530.530 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 08:03:12,532.532 INFO    ] Checking for system updates...
[2026-08-31 08:03:12,572.572 INFO    ] 200
[2026-08-31 08:03:12,575.575 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:03:12,627.627 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:03:12,630.630 INFO    ] No update needed
[2026-08-31 08:03:12,632.632 INFO    ] Checking for camera pi updates...
[2026-08-31 08:03:12,670.670 INFO    ] 200
[2026-08-31 08:03:12,672.672 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:03:12,718.718 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:03:12,798.798 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:03:12,801.801 INFO    ] No camera update needed
[2026-08-31 08:03:12,803.803 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:03:12,806.806 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:03:12,811.811 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:03:12,816.816 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:03:14,856.856 INFO    ] ================================================
[2026-08-31 08:03:14,871.871 INFO    ] Launching Daemon at Mon Aug 31 08:03:14 IST 2026
[2026-08-31 08:03:14,882.882 INFO    ] ================================================
[2026-08-31 08:03:15,550.550 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:03:15
[2026-08-31 08:03:16,238.238 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:03:16,547.547 INFO    ] Initializing speech engine...
[2026-08-31 08:03:16,563.563 INFO    ] 2026-08-31 08:03:16
[2026-08-31 08:03:16,838.838 INFO    ] 2026-08-31 08:03:16
[2026-08-31 08:03:16,878.878 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:03:17,070.070 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:03:17,085.085 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:03:17,253.253 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:03:17,263.263 INFO    ] time= 31/08/2026 08:03:17
[2026-08-31 08:03:17,270.270 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:03:17,292.292 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:03:17,433.433 INFO    ] No existing commands found in stream
[2026-08-31 08:03:22,464.464 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:03:22,466.466 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-08-31 08:03:23,897.897 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 08:03:23,901.901 INFO    ] Checking for system updates...
[2026-08-31 08:03:23,937.937 INFO    ] 200
[2026-08-31 08:03:23,940.940 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:03:23,999.999 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:03:24,001.001 INFO    ] No update needed
[2026-08-31 08:03:24,004.004 INFO    ] Checking for camera pi updates...
[2026-08-31 08:03:24,038.038 INFO    ] 200
[2026-08-31 08:03:24,040.040 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:03:24,085.085 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:03:24,187.187 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:03:24,190.190 INFO    ] No camera update needed
[2026-08-31 08:03:24,192.192 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:03:24,194.194 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:03:24,199.199 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:03:24,204.204 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:03:26,245.245 INFO    ] ================================================
[2026-08-31 08:03:26,261.261 INFO    ] Launching Daemon at Mon Aug 31 08:03:26 IST 2026
[2026-08-31 08:03:26,272.272 INFO    ] ================================================
[2026-08-31 08:03:26,855.855 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:03:26
[2026-08-31 08:03:27,456.456 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:03:27,724.724 INFO    ] Initializing speech engine...
[2026-08-31 08:03:27,733.733 INFO    ] 2026-08-31 08:03:27
[2026-08-31 08:03:27,980.980 INFO    ] 2026-08-31 08:03:27
[2026-08-31 08:03:28,016.016 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:03:28,188.188 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:03:28,200.200 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:03:28,344.344 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:03:28,351.351 INFO    ] time= 31/08/2026 08:03:28
[2026-08-31 08:03:28,383.383 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:03:28,418.418 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:03:28,515.515 INFO    ] No existing commands found in stream
[2026-08-31 08:03:33,546.546 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:03:33,549.549 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-08-31 08:03:37,207.207 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 08:03:37,210.210 INFO    ] Checking for system updates...
[2026-08-31 08:03:37,246.246 INFO    ] 200
[2026-08-31 08:03:37,249.249 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:03:37,309.309 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:03:37,311.311 INFO    ] No update needed
[2026-08-31 08:03:37,314.314 INFO    ] Checking for camera pi updates...
[2026-08-31 08:03:37,360.360 INFO    ] 200
[2026-08-31 08:03:37,362.362 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:03:37,403.403 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:03:37,489.489 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:03:37,491.491 INFO    ] No camera update needed
[2026-08-31 08:03:37,493.493 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:03:37,496.496 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:03:37,501.501 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:03:37,506.506 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:03:39,545.545 INFO    ] ================================================
[2026-08-31 08:03:39,561.561 INFO    ] Launching Daemon at Mon Aug 31 08:03:39 IST 2026
[2026-08-31 08:03:39,572.572 INFO    ] ================================================
[2026-08-31 08:03:40,137.137 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:03:40
[2026-08-31 08:03:40,720.720 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:03:40,990.990 INFO    ] Initializing speech engine...
[2026-08-31 08:03:41,000.000 INFO    ] 2026-08-31 08:03:40
[2026-08-31 08:03:41,249.249 INFO    ] 2026-08-31 08:03:41
[2026-08-31 08:03:41,283.283 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:03:41,541.541 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:03:41,551.551 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:03:41,688.688 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:03:41,742.742 INFO    ] time= 31/08/2026 08:03:41
[2026-08-31 08:03:41,791.791 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:03:41,822.822 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:03:41,957.957 INFO    ] No existing commands found in stream
[2026-08-31 08:03:46,982.982 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:03:46,985.985 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-08-31 08:03:48,653.653 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 08:03:48,655.655 INFO    ] Checking for system updates...
[2026-08-31 08:03:48,691.691 INFO    ] 200
[2026-08-31 08:03:48,693.693 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:03:48,757.757 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:03:48,760.760 INFO    ] No update needed
[2026-08-31 08:03:48,762.762 INFO    ] Checking for camera pi updates...
[2026-08-31 08:03:48,796.796 INFO    ] 200
[2026-08-31 08:03:48,799.799 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:03:48,845.845 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:03:48,927.927 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:03:48,930.930 INFO    ] No camera update needed
[2026-08-31 08:03:48,933.933 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:03:48,936.936 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:03:48,942.942 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:03:48,948.948 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:03:50,990.990 INFO    ] ================================================
[2026-08-31 08:03:51,006.006 INFO    ] Launching Daemon at Mon Aug 31 08:03:51 IST 2026
[2026-08-31 08:03:51,017.017 INFO    ] ================================================
[2026-08-31 08:03:51,585.585 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:03:51
[2026-08-31 08:03:52,165.165 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:03:52,437.437 INFO    ] Initializing speech engine...
[2026-08-31 08:03:52,446.446 INFO    ] 2026-08-31 08:03:52
[2026-08-31 08:03:52,695.695 INFO    ] 2026-08-31 08:03:52
[2026-08-31 08:03:52,731.731 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:03:52,929.929 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:03:52,936.936 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:03:53,068.068 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:03:53,074.074 INFO    ] time= 31/08/2026 08:03:53
[2026-08-31 08:03:53,121.121 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:03:53,143.143 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:03:53,260.260 INFO    ] No existing commands found in stream
[2026-08-31 08:03:58,282.282 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:03:58,284.284 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-08-31 08:04:02,498.498 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 08:04:02,501.501 INFO    ] Checking for system updates...
[2026-08-31 08:04:02,554.554 INFO    ] 200
[2026-08-31 08:04:02,559.559 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:04:02,644.644 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:04:02,647.647 INFO    ] No update needed
[2026-08-31 08:04:02,651.651 INFO    ] Checking for camera pi updates...
[2026-08-31 08:04:02,693.693 INFO    ] 200
[2026-08-31 08:04:02,695.695 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:04:02,751.751 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:04:02,804.804 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:04:02,806.806 INFO    ] No camera update needed
[2026-08-31 08:04:02,810.810 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:04:02,813.813 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:04:02,820.820 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:04:02,826.826 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:04:04,869.869 INFO    ] ================================================
[2026-08-31 08:04:04,885.885 INFO    ] Launching Daemon at Mon Aug 31 08:04:04 IST 2026
[2026-08-31 08:04:04,896.896 INFO    ] ================================================
[2026-08-31 08:04:05,482.482 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:04:05
[2026-08-31 08:04:06,092.092 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:04:06,380.380 INFO    ] Initializing speech engine...
[2026-08-31 08:04:06,389.389 INFO    ] 2026-08-31 08:04:06
[2026-08-31 08:04:06,661.661 INFO    ] 2026-08-31 08:04:06
[2026-08-31 08:04:06,704.704 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:04:06,929.929 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:04:06,934.934 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:04:07,118.118 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:04:07,126.126 INFO    ] time= 31/08/2026 08:04:07
[2026-08-31 08:04:07,144.144 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:04:07,147.147 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:04:07,249.249 INFO    ] No existing commands found in stream
[2026-08-31 08:04:12,261.261 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:04:12,264.264 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-08-31 08:04:13,054.054 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 08:04:13,056.056 INFO    ] Checking for system updates...
[2026-08-31 08:04:13,092.092 INFO    ] 200
[2026-08-31 08:04:13,095.095 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:04:13,155.155 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:04:13,157.157 INFO    ] No update needed
[2026-08-31 08:04:13,160.160 INFO    ] Checking for camera pi updates...
[2026-08-31 08:04:13,193.193 INFO    ] 200
[2026-08-31 08:04:13,195.195 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:04:13,240.240 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:04:13,339.339 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:04:13,341.341 INFO    ] No camera update needed
[2026-08-31 08:04:13,344.344 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:04:13,346.346 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:04:13,352.352 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:04:13,357.357 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:04:15,397.397 INFO    ] ================================================
[2026-08-31 08:04:15,413.413 INFO    ] Launching Daemon at Mon Aug 31 08:04:15 IST 2026
[2026-08-31 08:04:15,424.424 INFO    ] ================================================
[2026-08-31 08:04:16,046.046 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:04:16
[2026-08-31 08:04:16,642.642 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:04:16,906.906 INFO    ] Initializing speech engine...
[2026-08-31 08:04:16,924.924 INFO    ] 2026-08-31 08:04:16
[2026-08-31 08:04:17,174.174 INFO    ] 2026-08-31 08:04:17
[2026-08-31 08:04:17,239.239 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:04:17,523.523 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:04:17,532.532 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:04:17,725.725 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:04:17,732.732 INFO    ] time= 31/08/2026 08:04:17
[2026-08-31 08:04:17,750.750 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:04:17,779.779 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:04:17,884.884 INFO    ] No existing commands found in stream
[2026-08-31 08:04:22,904.904 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:04:22,907.907 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-08-31 08:04:26,355.355 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 08:04:26,358.358 INFO    ] Checking for system updates...
[2026-08-31 08:04:26,394.394 INFO    ] 200
[2026-08-31 08:04:26,396.396 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:04:26,450.450 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:04:26,452.452 INFO    ] No update needed
[2026-08-31 08:04:26,454.454 INFO    ] Checking for camera pi updates...
[2026-08-31 08:04:26,488.488 INFO    ] 200
[2026-08-31 08:04:26,490.490 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:04:26,530.530 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:04:26,611.611 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:04:26,613.613 INFO    ] No camera update needed
[2026-08-31 08:04:26,615.615 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:04:26,618.618 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:04:26,623.623 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:04:26,628.628 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:04:28,669.669 INFO    ] ================================================
[2026-08-31 08:04:28,685.685 INFO    ] Launching Daemon at Mon Aug 31 08:04:28 IST 2026
[2026-08-31 08:04:28,696.696 INFO    ] ================================================
[2026-08-31 08:04:29,349.349 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:04:29
[2026-08-31 08:04:30,021.021 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:04:30,333.333 INFO    ] Initializing speech engine...
[2026-08-31 08:04:30,339.339 INFO    ] 2026-08-31 08:04:30
[2026-08-31 08:04:30,647.647 INFO    ] 2026-08-31 08:04:30
[2026-08-31 08:04:30,733.733 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:04:30,941.941 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:04:30,950.950 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:04:31,144.144 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:04:31,152.152 INFO    ] time= 31/08/2026 08:04:31
[2026-08-31 08:04:31,173.173 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:04:31,202.202 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:04:31,331.331 INFO    ] No existing commands found in stream
[2026-08-31 08:04:36,368.368 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:04:36,371.371 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-08-31 08:04:37,495.495 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 08:04:37,498.498 INFO    ] Checking for system updates...
[2026-08-31 08:04:37,535.535 INFO    ] 200
[2026-08-31 08:04:37,537.537 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:04:37,599.599 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:04:37,602.602 INFO    ] No update needed
[2026-08-31 08:04:37,604.604 INFO    ] Checking for camera pi updates...
[2026-08-31 08:04:37,647.647 INFO    ] 200
[2026-08-31 08:04:37,650.650 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:04:37,690.690 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:04:37,784.784 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:04:37,787.787 INFO    ] No camera update needed
[2026-08-31 08:04:37,790.790 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:04:37,792.792 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:04:37,797.797 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:04:37,802.802 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:04:39,843.843 INFO    ] ================================================
[2026-08-31 08:04:39,859.859 INFO    ] Launching Daemon at Mon Aug 31 08:04:39 IST 2026
[2026-08-31 08:04:39,870.870 INFO    ] ================================================
[2026-08-31 08:04:40,435.435 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:04:40
[2026-08-31 08:04:41,017.017 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:04:41,287.287 INFO    ] Initializing speech engine...
[2026-08-31 08:04:41,296.296 INFO    ] 2026-08-31 08:04:41
[2026-08-31 08:04:41,545.545 INFO    ] 2026-08-31 08:04:41
[2026-08-31 08:04:41,611.611 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:04:41,837.837 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:04:41,846.846 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:04:41,983.983 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:04:42,037.037 INFO    ] time= 31/08/2026 08:04:41
[2026-08-31 08:04:42,092.092 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:04:42,117.117 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:04:42,248.248 INFO    ] No existing commands found in stream
[2026-08-31 08:04:47,273.273 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:04:47,275.275 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-08-31 08:04:51,408.408 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 08:04:51,410.410 INFO    ] Checking for system updates...
[2026-08-31 08:04:51,451.451 INFO    ] 200
[2026-08-31 08:04:51,453.453 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:04:51,505.505 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:04:51,507.507 INFO    ] No update needed
[2026-08-31 08:04:51,510.510 INFO    ] Checking for camera pi updates...
[2026-08-31 08:04:51,543.543 INFO    ] 200
[2026-08-31 08:04:51,545.545 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:04:51,591.591 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:04:51,671.671 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:04:51,673.673 INFO    ] No camera update needed
[2026-08-31 08:04:51,675.675 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:04:51,678.678 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:04:51,683.683 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:04:51,688.688 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:04:53,730.730 INFO    ] ================================================
[2026-08-31 08:04:53,746.746 INFO    ] Launching Daemon at Mon Aug 31 08:04:53 IST 2026
[2026-08-31 08:04:53,757.757 INFO    ] ================================================
[2026-08-31 08:04:54,377.377 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:04:54
[2026-08-31 08:04:55,058.058 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:04:55,369.369 INFO    ] Initializing speech engine...
[2026-08-31 08:04:55,378.378 INFO    ] 2026-08-31 08:04:55
[2026-08-31 08:04:55,657.657 INFO    ] 2026-08-31 08:04:55
[2026-08-31 08:04:55,711.711 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:04:55,956.956 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:04:55,968.968 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:04:56,188.188 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:04:56,229.229 INFO    ] time= 31/08/2026 08:04:56
[2026-08-31 08:04:56,248.248 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:04:56,258.258 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:04:56,390.390 INFO    ] No existing commands found in stream
[2026-08-31 08:05:01,411.411 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:05:01,415.415 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-08-31 08:05:05,843.843 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 08:05:05,846.846 INFO    ] Checking for system updates...
[2026-08-31 08:05:05,882.882 INFO    ] 200
[2026-08-31 08:05:05,885.885 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:05:05,937.937 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:05:05,940.940 INFO    ] No update needed
[2026-08-31 08:05:05,943.943 INFO    ] Checking for camera pi updates...
[2026-08-31 08:05:05,980.980 INFO    ] 200
[2026-08-31 08:05:05,983.983 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:05:06,023.023 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:05:06,113.113 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:05:06,116.116 INFO    ] No camera update needed
[2026-08-31 08:05:06,119.119 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:05:06,121.121 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:05:06,127.127 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:05:06,133.133 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:05:08,173.173 INFO    ] ================================================
[2026-08-31 08:05:08,189.189 INFO    ] Launching Daemon at Mon Aug 31 08:05:08 IST 2026
[2026-08-31 08:05:08,199.199 INFO    ] ================================================
[2026-08-31 08:05:08,780.780 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:05:08
[2026-08-31 08:05:09,376.376 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:05:09,650.650 INFO    ] Initializing speech engine...
[2026-08-31 08:05:09,655.655 INFO    ] 2026-08-31 08:05:09
[2026-08-31 08:05:09,918.918 INFO    ] 2026-08-31 08:05:09
[2026-08-31 08:05:09,973.973 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:05:10,198.198 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:05:10,204.204 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:05:10,418.418 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:05:10,459.459 INFO    ] time= 31/08/2026 08:05:10
[2026-08-31 08:05:10,476.476 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:05:10,484.484 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:05:10,591.591 INFO    ] No existing commands found in stream
[2026-08-31 08:05:15,619.619 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:05:15,621.621 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-08-31 08:05:16,811.811 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 08:05:16,813.813 INFO    ] Checking for system updates...
[2026-08-31 08:05:16,852.852 INFO    ] 200
[2026-08-31 08:05:16,854.854 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:05:16,907.907 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:05:16,910.910 INFO    ] No update needed
[2026-08-31 08:05:16,912.912 INFO    ] Checking for camera pi updates...
[2026-08-31 08:05:16,945.945 INFO    ] 200
[2026-08-31 08:05:16,948.948 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:05:16,991.991 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:05:17,041.041 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:05:17,044.044 INFO    ] No camera update needed
[2026-08-31 08:05:17,046.046 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:05:17,048.048 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:05:17,054.054 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:05:17,059.059 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:05:19,099.099 INFO    ] ================================================
[2026-08-31 08:05:19,115.115 INFO    ] Launching Daemon at Mon Aug 31 08:05:19 IST 2026
[2026-08-31 08:05:19,126.126 INFO    ] ================================================
[2026-08-31 08:05:19,706.706 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:05:19
[2026-08-31 08:05:20,413.413 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:05:20,736.736 INFO    ] Initializing speech engine...
[2026-08-31 08:05:20,748.748 INFO    ] 2026-08-31 08:05:20
[2026-08-31 08:05:21,034.034 INFO    ] 2026-08-31 08:05:21
[2026-08-31 08:05:21,091.091 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:05:21,320.320 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:05:21,326.326 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:05:21,464.464 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:05:21,525.525 INFO    ] time= 31/08/2026 08:05:21
[2026-08-31 08:05:21,573.573 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:05:21,604.604 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:05:21,699.699 INFO    ] No existing commands found in stream
[2026-08-31 08:05:26,710.710 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:05:26,713.713 INFO    ] Waiting 4.00 seconds before fallback handling...
[2026-08-31 08:05:31,168.168 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 08:05:31,171.171 INFO    ] Checking for system updates...
[2026-08-31 08:05:31,206.206 INFO    ] 200
[2026-08-31 08:05:31,208.208 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:05:31,261.261 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:05:31,264.264 INFO    ] No update needed
[2026-08-31 08:05:31,266.266 INFO    ] Checking for camera pi updates...
[2026-08-31 08:05:31,299.299 INFO    ] 200
[2026-08-31 08:05:31,301.301 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:05:31,352.352 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:05:31,456.456 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:05:31,459.459 INFO    ] No camera update needed
[2026-08-31 08:05:31,462.462 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:05:31,465.465 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:05:31,471.471 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:05:31,477.477 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:05:33,519.519 INFO    ] ================================================
[2026-08-31 08:05:33,535.535 INFO    ] Launching Daemon at Mon Aug 31 08:05:33 IST 2026
[2026-08-31 08:05:33,545.545 INFO    ] ================================================
[2026-08-31 08:05:34,126.126 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:05:34
[2026-08-31 08:05:34,723.723 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:05:34,996.996 INFO    ] Initializing speech engine...
[2026-08-31 08:05:35,005.005 INFO    ] 2026-08-31 08:05:34
[2026-08-31 08:05:35,254.254 INFO    ] 2026-08-31 08:05:35
[2026-08-31 08:05:35,295.295 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:05:35,547.547 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:05:35,556.556 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:05:35,690.690 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:05:35,755.755 INFO    ] time= 31/08/2026 08:05:35
[2026-08-31 08:05:35,818.818 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:05:35,824.824 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:05:35,959.959 INFO    ] No existing commands found in stream
[2026-08-31 08:05:40,978.978 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:05:40,981.981 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-08-31 08:05:42,925.925 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 08:05:42,928.928 INFO    ] Checking for system updates...
[2026-08-31 08:05:42,965.965 INFO    ] 200
[2026-08-31 08:05:42,967.967 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:05:43,026.026 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:05:43,029.029 INFO    ] No update needed
[2026-08-31 08:05:43,031.031 INFO    ] Checking for camera pi updates...
[2026-08-31 08:05:43,068.068 INFO    ] 200
[2026-08-31 08:05:43,071.071 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:05:43,111.111 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:05:43,293.293 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:05:43,295.295 INFO    ] No camera update needed
[2026-08-31 08:05:43,298.298 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:05:43,300.300 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:05:43,305.305 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:05:43,311.311 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:05:45,352.352 INFO    ] ================================================
[2026-08-31 08:05:45,368.368 INFO    ] Launching Daemon at Mon Aug 31 08:05:45 IST 2026
[2026-08-31 08:05:45,379.379 INFO    ] ================================================
[2026-08-31 08:05:45,956.956 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:05:45
[2026-08-31 08:05:46,554.554 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:05:46,816.816 INFO    ] Initializing speech engine...
[2026-08-31 08:05:46,841.841 INFO    ] 2026-08-31 08:05:46
[2026-08-31 08:05:47,114.114 INFO    ] 2026-08-31 08:05:47
[2026-08-31 08:05:47,149.149 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:05:47,342.342 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:05:47,357.357 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:05:47,526.526 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:05:47,582.582 INFO    ] time= 31/08/2026 08:05:47
[2026-08-31 08:05:47,598.598 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:05:47,609.609 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:05:47,737.737 INFO    ] No existing commands found in stream
[2026-08-31 08:05:52,753.753 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:05:52,756.756 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-08-31 08:05:54,935.935 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 08:05:54,938.938 INFO    ] Checking for system updates...
[2026-08-31 08:05:54,976.976 INFO    ] 200
[2026-08-31 08:05:54,979.979 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:05:55,036.036 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:05:55,039.039 INFO    ] No update needed
[2026-08-31 08:05:55,041.041 INFO    ] Checking for camera pi updates...
[2026-08-31 08:05:55,074.074 INFO    ] 200
[2026-08-31 08:05:55,076.076 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:05:55,116.116 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:05:55,184.184 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:05:55,186.186 INFO    ] No camera update needed
[2026-08-31 08:05:55,189.189 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:05:55,191.191 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:05:55,197.197 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:05:55,202.202 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:05:57,242.242 INFO    ] ================================================
[2026-08-31 08:05:57,257.257 INFO    ] Launching Daemon at Mon Aug 31 08:05:57 IST 2026
[2026-08-31 08:05:57,268.268 INFO    ] ================================================
[2026-08-31 08:05:57,904.904 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:05:57
[2026-08-31 08:05:58,513.513 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:05:58,790.790 INFO    ] Initializing speech engine...
[2026-08-31 08:05:58,799.799 INFO    ] 2026-08-31 08:05:58
[2026-08-31 08:05:59,058.058 INFO    ] 2026-08-31 08:05:59
[2026-08-31 08:05:59,116.116 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:05:59,346.346 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:05:59,366.366 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:05:59,562.562 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:05:59,606.606 INFO    ] time= 31/08/2026 08:05:59
[2026-08-31 08:05:59,623.623 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:05:59,633.633 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:05:59,760.760 INFO    ] No existing commands found in stream
[2026-08-31 08:06:04,771.771 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:06:04,774.774 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-08-31 08:06:06,886.886 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 08:06:06,889.889 INFO    ] Checking for system updates...
[2026-08-31 08:06:06,925.925 INFO    ] 200
[2026-08-31 08:06:06,928.928 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:06:06,984.984 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:06:06,986.986 INFO    ] No update needed
[2026-08-31 08:06:06,989.989 INFO    ] Checking for camera pi updates...
[2026-08-31 08:06:07,022.022 INFO    ] 200
[2026-08-31 08:06:07,024.024 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:06:07,065.065 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:06:07,150.150 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:06:07,152.152 INFO    ] No camera update needed
[2026-08-31 08:06:07,155.155 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:06:07,157.157 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:06:07,162.162 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:06:07,167.167 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:06:09,208.208 INFO    ] ================================================
[2026-08-31 08:06:09,224.224 INFO    ] Launching Daemon at Mon Aug 31 08:06:09 IST 2026
[2026-08-31 08:06:09,235.235 INFO    ] ================================================
[2026-08-31 08:06:09,813.813 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:06:09
[2026-08-31 08:06:10,411.411 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:06:10,684.684 INFO    ] Initializing speech engine...
[2026-08-31 08:06:10,694.694 INFO    ] 2026-08-31 08:06:10
[2026-08-31 08:06:10,942.942 INFO    ] 2026-08-31 08:06:10
[2026-08-31 08:06:10,976.976 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:06:11,228.228 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:06:11,237.237 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:06:11,371.371 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:06:11,416.416 INFO    ] time= 31/08/2026 08:06:11
[2026-08-31 08:06:11,476.476 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:06:11,504.504 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:06:11,646.646 INFO    ] No existing commands found in stream
[2026-08-31 08:06:16,662.662 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:06:16,665.665 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-08-31 08:06:18,613.613 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 08:06:18,616.616 INFO    ] Checking for system updates...
[2026-08-31 08:06:18,656.656 INFO    ] 200
[2026-08-31 08:06:18,658.658 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:06:18,716.716 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:06:18,719.719 INFO    ] No update needed
[2026-08-31 08:06:18,721.721 INFO    ] Checking for camera pi updates...
[2026-08-31 08:06:18,754.754 INFO    ] 200
[2026-08-31 08:06:18,757.757 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:06:18,797.797 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:06:18,900.900 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:06:18,903.903 INFO    ] No camera update needed
[2026-08-31 08:06:18,905.905 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:06:18,908.908 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:06:18,913.913 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:06:18,918.918 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:06:20,959.959 INFO    ] ================================================
[2026-08-31 08:06:20,975.975 INFO    ] Launching Daemon at Mon Aug 31 08:06:20 IST 2026
[2026-08-31 08:06:20,986.986 INFO    ] ================================================
[2026-08-31 08:06:21,559.559 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:06:21
[2026-08-31 08:06:22,151.151 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:06:22,414.414 INFO    ] Initializing speech engine...
[2026-08-31 08:06:22,428.428 INFO    ] 2026-08-31 08:06:22
[2026-08-31 08:06:22,683.683 INFO    ] 2026-08-31 08:06:22
[2026-08-31 08:06:22,720.720 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:06:22,919.919 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:06:22,964.964 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:06:23,125.125 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:06:23,169.169 INFO    ] time= 31/08/2026 08:06:23
[2026-08-31 08:06:23,223.223 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:06:23,264.264 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:06:23,391.391 INFO    ] No existing commands found in stream
[2026-08-31 08:06:28,421.421 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:06:28,424.424 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-08-31 08:06:30,804.804 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 08:06:30,807.807 INFO    ] Checking for system updates...
[2026-08-31 08:06:30,842.842 INFO    ] 200
[2026-08-31 08:06:30,844.844 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:06:30,898.898 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:06:30,900.900 INFO    ] No update needed
[2026-08-31 08:06:30,903.903 INFO    ] Checking for camera pi updates...
[2026-08-31 08:06:30,936.936 INFO    ] 200
[2026-08-31 08:06:30,939.939 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:06:30,979.979 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:06:31,061.061 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:06:31,063.063 INFO    ] No camera update needed
[2026-08-31 08:06:31,066.066 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:06:31,068.068 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:06:31,073.073 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:06:31,078.078 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:06:33,122.122 INFO    ] ================================================
[2026-08-31 08:06:33,138.138 INFO    ] Launching Daemon at Mon Aug 31 08:06:33 IST 2026
[2026-08-31 08:06:33,148.148 INFO    ] ================================================
[2026-08-31 08:06:33,716.716 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:06:33
[2026-08-31 08:06:34,359.359 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:06:34,661.661 INFO    ] Initializing speech engine...
[2026-08-31 08:06:34,670.670 INFO    ] 2026-08-31 08:06:34
[2026-08-31 08:06:34,940.940 INFO    ] 2026-08-31 08:06:34
[2026-08-31 08:06:34,976.976 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:06:35,231.231 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:06:35,242.242 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:06:35,378.378 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:06:35,425.425 INFO    ] time= 31/08/2026 08:06:35
[2026-08-31 08:06:35,480.480 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:06:35,516.516 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:06:35,654.654 INFO    ] No existing commands found in stream
[2026-08-31 08:06:40,682.682 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:06:40,685.685 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-08-31 08:06:42,838.838 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 08:06:42,840.840 INFO    ] Checking for system updates...
[2026-08-31 08:06:42,877.877 INFO    ] 200
[2026-08-31 08:06:42,880.880 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:06:42,938.938 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:06:42,940.940 INFO    ] No update needed
[2026-08-31 08:06:42,943.943 INFO    ] Checking for camera pi updates...
[2026-08-31 08:06:42,979.979 INFO    ] 200
[2026-08-31 08:06:42,982.982 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:06:43,027.027 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:06:43,111.111 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:06:43,113.113 INFO    ] No camera update needed
[2026-08-31 08:06:43,116.116 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:06:43,118.118 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:06:43,124.124 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:06:43,129.129 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:06:45,169.169 INFO    ] ================================================
[2026-08-31 08:06:45,184.184 INFO    ] Launching Daemon at Mon Aug 31 08:06:45 IST 2026
[2026-08-31 08:06:45,195.195 INFO    ] ================================================
[2026-08-31 08:06:45,829.829 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:06:45
[2026-08-31 08:06:46,486.486 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:06:46,789.789 INFO    ] Initializing speech engine...
[2026-08-31 08:06:46,800.800 INFO    ] 2026-08-31 08:06:46
[2026-08-31 08:06:47,112.112 INFO    ] 2026-08-31 08:06:47
[2026-08-31 08:06:47,199.199 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:06:47,414.414 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:06:47,423.423 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:06:47,623.623 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:06:47,641.641 INFO    ] time= 31/08/2026 08:06:47
[2026-08-31 08:06:47,652.652 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:06:47,682.682 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:06:47,794.794 INFO    ] No existing commands found in stream
[2026-08-31 08:06:52,819.819 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:06:52,823.823 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-08-31 08:06:56,327.327 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 08:06:56,330.330 INFO    ] Checking for system updates...
[2026-08-31 08:06:56,366.366 INFO    ] 200
[2026-08-31 08:06:56,369.369 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:06:56,430.430 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:06:56,433.433 INFO    ] No update needed
[2026-08-31 08:06:56,435.435 INFO    ] Checking for camera pi updates...
[2026-08-31 08:06:56,471.471 INFO    ] 200
[2026-08-31 08:06:56,474.474 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:06:56,514.514 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:06:56,593.593 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:06:56,596.596 INFO    ] No camera update needed
[2026-08-31 08:06:56,598.598 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:06:56,600.600 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:06:56,606.606 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:06:56,611.611 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:06:58,650.650 INFO    ] ================================================
[2026-08-31 08:06:58,665.665 INFO    ] Launching Daemon at Mon Aug 31 08:06:58 IST 2026
[2026-08-31 08:06:58,675.675 INFO    ] ================================================
[2026-08-31 08:06:59,238.238 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:06:59
[2026-08-31 08:06:59,820.820 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:07:00,086.086 INFO    ] Initializing speech engine...
[2026-08-31 08:07:00,096.096 INFO    ] 2026-08-31 08:07:00
[2026-08-31 08:07:00,340.340 INFO    ] 2026-08-31 08:07:00
[2026-08-31 08:07:00,376.376 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:07:00,551.551 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:07:00,563.563 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:07:00,713.713 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:07:00,717.717 INFO    ] time= 31/08/2026 08:07:00
[2026-08-31 08:07:00,723.723 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:07:00,771.771 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:07:00,919.919 INFO    ] No existing commands found in stream
[2026-08-31 08:07:05,930.930 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:07:05,932.932 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-08-31 08:07:08,876.876 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 08:07:08,879.879 INFO    ] Checking for system updates...
[2026-08-31 08:07:08,915.915 INFO    ] 200
[2026-08-31 08:07:08,917.917 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:07:08,970.970 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:07:08,973.973 INFO    ] No update needed
[2026-08-31 08:07:08,975.975 INFO    ] Checking for camera pi updates...
[2026-08-31 08:07:09,008.008 INFO    ] 200
[2026-08-31 08:07:09,010.010 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:07:09,050.050 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:07:09,134.134 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:07:09,137.137 INFO    ] No camera update needed
[2026-08-31 08:07:09,139.139 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:07:09,141.141 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:07:09,147.147 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:07:09,153.153 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:07:11,193.193 INFO    ] ================================================
[2026-08-31 08:07:11,208.208 INFO    ] Launching Daemon at Mon Aug 31 08:07:11 IST 2026
[2026-08-31 08:07:11,218.218 INFO    ] ================================================
[2026-08-31 08:07:11,857.857 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:07:11
[2026-08-31 08:07:12,519.519 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:07:12,818.818 INFO    ] Initializing speech engine...
[2026-08-31 08:07:12,830.830 INFO    ] 2026-08-31 08:07:12
[2026-08-31 08:07:13,112.112 INFO    ] 2026-08-31 08:07:13
[2026-08-31 08:07:13,152.152 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:07:13,399.399 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:07:13,405.405 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:07:13,603.603 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:07:13,640.640 INFO    ] time= 31/08/2026 08:07:13
[2026-08-31 08:07:13,658.658 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:07:13,668.668 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:07:13,797.797 INFO    ] No existing commands found in stream
[2026-08-31 08:07:18,817.817 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:07:18,821.821 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-08-31 08:07:20,459.459 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 08:07:20,462.462 INFO    ] Checking for system updates...
[2026-08-31 08:07:20,502.502 INFO    ] 200
[2026-08-31 08:07:20,504.504 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:07:20,562.562 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:07:20,565.565 INFO    ] No update needed
[2026-08-31 08:07:20,567.567 INFO    ] Checking for camera pi updates...
[2026-08-31 08:07:20,604.604 INFO    ] 200
[2026-08-31 08:07:20,606.606 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:07:20,646.646 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:07:20,732.732 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:07:20,735.735 INFO    ] No camera update needed
[2026-08-31 08:07:20,737.737 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:07:20,740.740 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:07:20,745.745 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:07:20,750.750 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:07:22,791.791 INFO    ] ================================================
[2026-08-31 08:07:22,806.806 INFO    ] Launching Daemon at Mon Aug 31 08:07:22 IST 2026
[2026-08-31 08:07:22,816.816 INFO    ] ================================================
[2026-08-31 08:07:23,386.386 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:07:23
[2026-08-31 08:07:23,977.977 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:07:24,245.245 INFO    ] Initializing speech engine...
[2026-08-31 08:07:24,254.254 INFO    ] 2026-08-31 08:07:24
[2026-08-31 08:07:24,532.532 INFO    ] 2026-08-31 08:07:24
[2026-08-31 08:07:24,575.575 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:07:24,858.858 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:07:24,862.862 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:07:25,048.048 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:07:25,064.064 INFO    ] time= 31/08/2026 08:07:25
[2026-08-31 08:07:25,085.085 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:07:25,113.113 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:07:25,222.222 INFO    ] No existing commands found in stream
[2026-08-31 08:07:30,246.246 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:07:30,250.250 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-08-31 08:07:32,085.085 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 08:07:32,088.088 INFO    ] Checking for system updates...
[2026-08-31 08:07:32,130.130 INFO    ] 200
[2026-08-31 08:07:32,133.133 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:07:32,195.195 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:07:32,198.198 INFO    ] No update needed
[2026-08-31 08:07:32,201.201 INFO    ] Checking for camera pi updates...
[2026-08-31 08:07:32,238.238 INFO    ] 200
[2026-08-31 08:07:32,240.240 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:07:32,288.288 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:07:32,369.369 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:07:32,372.372 INFO    ] No camera update needed
[2026-08-31 08:07:32,375.375 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:07:32,377.377 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:07:32,383.383 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:07:32,389.389 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:07:34,429.429 INFO    ] ================================================
[2026-08-31 08:07:34,444.444 INFO    ] Launching Daemon at Mon Aug 31 08:07:34 IST 2026
[2026-08-31 08:07:34,455.455 INFO    ] ================================================
[2026-08-31 08:07:35,022.022 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:07:35
[2026-08-31 08:07:35,606.606 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:07:35,862.862 INFO    ] Initializing speech engine...
[2026-08-31 08:07:35,875.875 INFO    ] 2026-08-31 08:07:35
[2026-08-31 08:07:36,153.153 INFO    ] 2026-08-31 08:07:36
[2026-08-31 08:07:36,189.189 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:07:36,407.407 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:07:36,431.431 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:07:36,559.559 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:07:36,567.567 INFO    ] time= 31/08/2026 08:07:36
[2026-08-31 08:07:36,572.572 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:07:36,632.632 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:07:36,767.767 INFO    ] No existing commands found in stream
[2026-08-31 08:07:41,790.790 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:07:41,793.793 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-08-31 08:07:45,918.918 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 08:07:45,921.921 INFO    ] Checking for system updates...
[2026-08-31 08:07:45,957.957 INFO    ] 200
[2026-08-31 08:07:45,960.960 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:07:46,013.013 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:07:46,015.015 INFO    ] No update needed
[2026-08-31 08:07:46,018.018 INFO    ] Checking for camera pi updates...
[2026-08-31 08:07:46,053.053 INFO    ] 200
[2026-08-31 08:07:46,055.055 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:07:46,095.095 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:07:46,286.286 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:07:46,289.289 INFO    ] No camera update needed
[2026-08-31 08:07:46,291.291 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:07:46,293.293 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:07:46,298.298 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:07:46,304.304 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:07:48,343.343 INFO    ] ================================================
[2026-08-31 08:07:48,358.358 INFO    ] Launching Daemon at Mon Aug 31 08:07:48 IST 2026
[2026-08-31 08:07:48,369.369 INFO    ] ================================================
[2026-08-31 08:07:48,965.965 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:07:48
[2026-08-31 08:07:49,552.552 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:07:49,852.852 INFO    ] Initializing speech engine...
[2026-08-31 08:07:49,863.863 INFO    ] 2026-08-31 08:07:49
[2026-08-31 08:07:50,146.146 INFO    ] 2026-08-31 08:07:50
[2026-08-31 08:07:50,186.186 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:07:50,410.410 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:07:50,416.416 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:07:50,649.649 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:07:50,675.675 INFO    ] time= 31/08/2026 08:07:50
[2026-08-31 08:07:50,692.692 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:07:50,703.703 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:07:50,833.833 INFO    ] No existing commands found in stream
[2026-08-31 08:07:55,867.867 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:07:55,871.871 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-08-31 08:07:58,797.797 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 08:07:58,800.800 INFO    ] Checking for system updates...
[2026-08-31 08:07:58,839.839 INFO    ] 200
[2026-08-31 08:07:58,841.841 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:07:58,898.898 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:07:58,901.901 INFO    ] No update needed
[2026-08-31 08:07:58,903.903 INFO    ] Checking for camera pi updates...
[2026-08-31 08:07:58,939.939 INFO    ] 200
[2026-08-31 08:07:58,942.942 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:07:58,986.986 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:07:59,070.070 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:07:59,072.072 INFO    ] No camera update needed
[2026-08-31 08:07:59,074.074 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:07:59,076.076 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:07:59,082.082 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:07:59,087.087 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:08:01,127.127 INFO    ] ================================================
[2026-08-31 08:08:01,142.142 INFO    ] Launching Daemon at Mon Aug 31 08:08:01 IST 2026
[2026-08-31 08:08:01,152.152 INFO    ] ================================================
[2026-08-31 08:08:01,877.877 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:08:01
[2026-08-31 08:08:02,536.536 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:08:02,894.894 INFO    ] Initializing speech engine...
[2026-08-31 08:08:02,903.903 INFO    ] 2026-08-31 08:08:02
[2026-08-31 08:08:03,198.198 INFO    ] 2026-08-31 08:08:03
[2026-08-31 08:08:03,254.254 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:08:03,483.483 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:08:03,489.489 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:08:03,684.684 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:08:03,739.739 INFO    ] time= 31/08/2026 08:08:03
[2026-08-31 08:08:03,752.752 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:08:03,773.773 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:08:03,886.886 INFO    ] No existing commands found in stream
[2026-08-31 08:08:08,911.911 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:08:08,914.914 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-08-31 08:08:12,458.458 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 08:08:12,461.461 INFO    ] Checking for system updates...
[2026-08-31 08:08:12,507.507 INFO    ] 200
[2026-08-31 08:08:12,510.510 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:08:12,563.563 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:08:12,565.565 INFO    ] No update needed
[2026-08-31 08:08:12,568.568 INFO    ] Checking for camera pi updates...
[2026-08-31 08:08:12,601.601 INFO    ] 200
[2026-08-31 08:08:12,603.603 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:08:12,644.644 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:08:12,738.738 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:08:12,740.740 INFO    ] No camera update needed
[2026-08-31 08:08:12,742.742 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:08:12,745.745 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:08:12,750.750 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:08:12,755.755 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:08:14,798.798 INFO    ] ================================================
[2026-08-31 08:08:14,814.814 INFO    ] Launching Daemon at Mon Aug 31 08:08:14 IST 2026
[2026-08-31 08:08:14,825.825 INFO    ] ================================================
[2026-08-31 08:08:15,428.428 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:08:15
[2026-08-31 08:08:16,056.056 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:08:16,347.347 INFO    ] Initializing speech engine...
[2026-08-31 08:08:16,356.356 INFO    ] 2026-08-31 08:08:16
[2026-08-31 08:08:16,662.662 INFO    ] 2026-08-31 08:08:16
[2026-08-31 08:08:16,705.705 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:08:16,935.935 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:08:16,941.941 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:08:17,179.179 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:08:17,204.204 INFO    ] time= 31/08/2026 08:08:17
[2026-08-31 08:08:17,210.210 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:08:17,228.228 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:08:17,356.356 INFO    ] No existing commands found in stream
[2026-08-31 08:08:22,372.372 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:08:22,380.380 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-08-31 08:08:25,416.416 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 08:08:25,419.419 INFO    ] Checking for system updates...
[2026-08-31 08:08:25,456.456 INFO    ] 200
[2026-08-31 08:08:25,458.458 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:08:25,511.511 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:08:25,514.514 INFO    ] No update needed
[2026-08-31 08:08:25,516.516 INFO    ] Checking for camera pi updates...
[2026-08-31 08:08:25,553.553 INFO    ] 200
[2026-08-31 08:08:25,555.555 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:08:25,596.596 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:08:25,693.693 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:08:25,696.696 INFO    ] No camera update needed
[2026-08-31 08:08:25,698.698 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:08:25,701.701 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:08:25,707.707 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:08:25,713.713 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:08:27,756.756 INFO    ] ================================================
[2026-08-31 08:08:27,772.772 INFO    ] Launching Daemon at Mon Aug 31 08:08:27 IST 2026
[2026-08-31 08:08:27,783.783 INFO    ] ================================================
[2026-08-31 08:08:28,368.368 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:08:28
[2026-08-31 08:08:28,953.953 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:08:29,197.197 INFO    ] Initializing speech engine...
[2026-08-31 08:08:29,205.205 INFO    ] 2026-08-31 08:08:29
[2026-08-31 08:08:29,481.481 INFO    ] 2026-08-31 08:08:29
[2026-08-31 08:08:29,516.516 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:08:29,772.772 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:08:29,783.783 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:08:29,918.918 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:08:29,979.979 INFO    ] time= 31/08/2026 08:08:29
[2026-08-31 08:08:30,033.033 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:08:30,051.051 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:08:30,196.196 INFO    ] No existing commands found in stream
[2026-08-31 08:08:35,210.210 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:08:35,213.213 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-08-31 08:08:36,976.976 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 08:08:36,979.979 INFO    ] Checking for system updates...
[2026-08-31 08:08:37,019.019 INFO    ] 200
[2026-08-31 08:08:37,021.021 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:08:37,081.081 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:08:37,083.083 INFO    ] No update needed
[2026-08-31 08:08:37,086.086 INFO    ] Checking for camera pi updates...
[2026-08-31 08:08:37,123.123 INFO    ] 200
[2026-08-31 08:08:37,125.125 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:08:37,165.165 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:08:37,217.217 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:08:37,220.220 INFO    ] No camera update needed
[2026-08-31 08:08:37,222.222 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:08:37,224.224 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:08:37,230.230 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:08:37,235.235 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:08:39,277.277 INFO    ] ================================================
[2026-08-31 08:08:39,293.293 INFO    ] Launching Daemon at Mon Aug 31 08:08:39 IST 2026
[2026-08-31 08:08:39,304.304 INFO    ] ================================================
[2026-08-31 08:08:39,962.962 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:08:39
[2026-08-31 08:08:40,633.633 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:08:40,936.936 INFO    ] Initializing speech engine...
[2026-08-31 08:08:40,950.950 INFO    ] 2026-08-31 08:08:40
[2026-08-31 08:08:41,260.260 INFO    ] 2026-08-31 08:08:41
[2026-08-31 08:08:41,345.345 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:08:41,625.625 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:08:41,690.690 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:08:41,909.909 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:08:41,970.970 INFO    ] time= 31/08/2026 08:08:41
[2026-08-31 08:08:42,012.012 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:08:42,035.035 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:08:42,173.173 INFO    ] No existing commands found in stream
[2026-08-31 08:08:47,205.205 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:08:47,209.209 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-08-31 08:08:49,939.939 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 08:08:49,942.942 INFO    ] Checking for system updates...
[2026-08-31 08:08:49,982.982 INFO    ] 200
[2026-08-31 08:08:49,985.985 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:08:50,038.038 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:08:50,041.041 INFO    ] No update needed
[2026-08-31 08:08:50,044.044 INFO    ] Checking for camera pi updates...
[2026-08-31 08:08:50,080.080 INFO    ] 200
[2026-08-31 08:08:50,082.082 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:08:50,123.123 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:08:50,202.202 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:08:50,205.205 INFO    ] No camera update needed
[2026-08-31 08:08:50,208.208 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:08:50,211.211 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:08:50,217.217 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:08:50,223.223 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:08:52,263.263 INFO    ] ================================================
[2026-08-31 08:08:52,279.279 INFO    ] Launching Daemon at Mon Aug 31 08:08:52 IST 2026
[2026-08-31 08:08:52,289.289 INFO    ] ================================================
[2026-08-31 08:08:52,941.941 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:08:52
[2026-08-31 08:08:53,612.612 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:08:53,915.915 INFO    ] Initializing speech engine...
[2026-08-31 08:08:53,929.929 INFO    ] 2026-08-31 08:08:53
[2026-08-31 08:08:54,207.207 INFO    ] 2026-08-31 08:08:54
[2026-08-31 08:08:54,250.250 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:08:54,476.476 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:08:54,482.482 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:08:54,617.617 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:08:54,677.677 INFO    ] time= 31/08/2026 08:08:54
[2026-08-31 08:08:54,745.745 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:08:54,752.752 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:08:54,928.928 INFO    ] No existing commands found in stream
[2026-08-31 08:08:59,959.959 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:08:59,962.962 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-08-31 08:09:00,690.690 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 08:09:00,693.693 INFO    ] Checking for system updates...
[2026-08-31 08:09:00,731.731 INFO    ] 200
[2026-08-31 08:09:00,733.733 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:09:00,788.788 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:09:00,791.791 INFO    ] No update needed
[2026-08-31 08:09:00,793.793 INFO    ] Checking for camera pi updates...
[2026-08-31 08:09:00,828.828 INFO    ] 200
[2026-08-31 08:09:00,831.831 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:09:00,877.877 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:09:00,969.969 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:09:00,971.971 INFO    ] No camera update needed
[2026-08-31 08:09:00,974.974 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:09:00,977.977 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:09:00,983.983 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:09:00,988.988 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:09:03,040.040 INFO    ] ================================================
[2026-08-31 08:09:03,055.055 INFO    ] Launching Daemon at Mon Aug 31 08:09:03 IST 2026
[2026-08-31 08:09:03,065.065 INFO    ] ================================================
[2026-08-31 08:09:03,648.648 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:09:03
[2026-08-31 08:09:04,234.234 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:09:04,485.485 INFO    ] Initializing speech engine...
[2026-08-31 08:09:04,493.493 INFO    ] 2026-08-31 08:09:04
[2026-08-31 08:09:04,783.783 INFO    ] 2026-08-31 08:09:04
[2026-08-31 08:09:04,808.808 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:09:05,012.012 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:09:05,019.019 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:09:05,186.186 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:09:05,194.194 INFO    ] time= 31/08/2026 08:09:05
[2026-08-31 08:09:05,198.198 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:09:05,205.205 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:09:05,279.279 INFO    ] No existing commands found in stream
[2026-08-31 08:09:10,309.309 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:09:10,312.312 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-08-31 08:09:13,718.718 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 08:09:13,721.721 INFO    ] Checking for system updates...
[2026-08-31 08:09:13,760.760 INFO    ] 200
[2026-08-31 08:09:13,763.763 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:09:13,823.823 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:09:13,826.826 INFO    ] No update needed
[2026-08-31 08:09:13,829.829 INFO    ] Checking for camera pi updates...
[2026-08-31 08:09:13,864.864 INFO    ] 200
[2026-08-31 08:09:13,867.867 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:09:13,912.912 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:09:14,011.011 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:09:14,014.014 INFO    ] No camera update needed
[2026-08-31 08:09:14,016.016 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:09:14,019.019 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:09:14,025.025 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:09:14,031.031 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:09:16,072.072 INFO    ] ================================================
[2026-08-31 08:09:16,087.087 INFO    ] Launching Daemon at Mon Aug 31 08:09:16 IST 2026
[2026-08-31 08:09:16,098.098 INFO    ] ================================================
[2026-08-31 08:09:16,669.669 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:09:16
[2026-08-31 08:09:17,258.258 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:09:17,504.504 INFO    ] Initializing speech engine...
[2026-08-31 08:09:17,519.519 INFO    ] 2026-08-31 08:09:17
[2026-08-31 08:09:17,785.785 INFO    ] 2026-08-31 08:09:17
[2026-08-31 08:09:17,821.821 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:09:18,081.081 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:09:18,090.090 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:09:18,222.222 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:09:18,259.259 INFO    ] time= 31/08/2026 08:09:18
[2026-08-31 08:09:18,302.302 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:09:18,354.354 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:09:18,489.489 INFO    ] No existing commands found in stream
[2026-08-31 08:09:23,513.513 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:09:23,516.516 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-08-31 08:09:24,777.777 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 08:09:24,780.780 INFO    ] Checking for system updates...
[2026-08-31 08:09:24,816.816 INFO    ] 200
[2026-08-31 08:09:24,818.818 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:09:24,875.875 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:09:24,878.878 INFO    ] No update needed
[2026-08-31 08:09:24,880.880 INFO    ] Checking for camera pi updates...
[2026-08-31 08:09:24,913.913 INFO    ] 200
[2026-08-31 08:09:24,916.916 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:09:24,957.957 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:09:25,045.045 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:09:25,048.048 INFO    ] No camera update needed
[2026-08-31 08:09:25,050.050 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:09:25,053.053 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:09:25,058.058 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:09:25,063.063 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:09:27,104.104 INFO    ] ================================================
[2026-08-31 08:09:27,119.119 INFO    ] Launching Daemon at Mon Aug 31 08:09:27 IST 2026
[2026-08-31 08:09:27,130.130 INFO    ] ================================================
[2026-08-31 08:09:27,771.771 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:09:27
[2026-08-31 08:09:28,429.429 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:09:28,731.731 INFO    ] Initializing speech engine...
[2026-08-31 08:09:28,739.739 INFO    ] 2026-08-31 08:09:28
[2026-08-31 08:09:29,027.027 INFO    ] 2026-08-31 08:09:29
[2026-08-31 08:09:29,072.072 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:09:29,324.324 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:09:29,332.332 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:09:29,534.534 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:09:29,573.573 INFO    ] time= 31/08/2026 08:09:29
[2026-08-31 08:09:29,580.580 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:09:29,602.602 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:09:29,723.723 INFO    ] No existing commands found in stream
[2026-08-31 08:09:34,743.743 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:09:34,746.746 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-08-31 08:09:36,330.330 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 08:09:36,333.333 INFO    ] Checking for system updates...
[2026-08-31 08:09:36,369.369 INFO    ] 200
[2026-08-31 08:09:36,372.372 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:09:36,432.432 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:09:36,435.435 INFO    ] No update needed
[2026-08-31 08:09:36,438.438 INFO    ] Checking for camera pi updates...
[2026-08-31 08:09:36,477.477 INFO    ] 200
[2026-08-31 08:09:36,479.479 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:09:36,525.525 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:09:36,630.630 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:09:36,633.633 INFO    ] No camera update needed
[2026-08-31 08:09:36,636.636 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:09:36,638.638 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:09:36,645.645 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:09:36,650.650 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:09:38,692.692 INFO    ] ================================================
[2026-08-31 08:09:38,707.707 INFO    ] Launching Daemon at Mon Aug 31 08:09:38 IST 2026
[2026-08-31 08:09:38,717.717 INFO    ] ================================================
[2026-08-31 08:09:39,300.300 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:09:39
[2026-08-31 08:09:39,895.895 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:09:40,166.166 INFO    ] Initializing speech engine...
[2026-08-31 08:09:40,175.175 INFO    ] 2026-08-31 08:09:40
[2026-08-31 08:09:40,430.430 INFO    ] 2026-08-31 08:09:40
[2026-08-31 08:09:40,491.491 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:09:40,716.716 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:09:40,721.721 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:09:40,858.858 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:09:40,928.928 INFO    ] time= 31/08/2026 08:09:40
[2026-08-31 08:09:40,978.978 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:09:40,985.985 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:09:41,125.125 INFO    ] No existing commands found in stream
[2026-08-31 08:09:46,141.141 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:09:46,143.143 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-08-31 08:09:47,900.900 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 08:09:47,903.903 INFO    ] Checking for system updates...
[2026-08-31 08:09:47,946.946 INFO    ] 200
[2026-08-31 08:09:47,949.949 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:09:48,001.001 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:09:48,003.003 INFO    ] No update needed
[2026-08-31 08:09:48,006.006 INFO    ] Checking for camera pi updates...
[2026-08-31 08:09:48,040.040 INFO    ] 200
[2026-08-31 08:09:48,042.042 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:09:48,083.083 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:09:48,171.171 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:09:48,174.174 INFO    ] No camera update needed
[2026-08-31 08:09:48,176.176 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:09:48,178.178 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:09:48,184.184 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:09:48,189.189 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:09:50,231.231 INFO    ] ================================================
[2026-08-31 08:09:50,246.246 INFO    ] Launching Daemon at Mon Aug 31 08:09:50 IST 2026
[2026-08-31 08:09:50,256.256 INFO    ] ================================================
[2026-08-31 08:09:50,844.844 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:09:50
[2026-08-31 08:09:51,485.485 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:09:51,803.803 INFO    ] Initializing speech engine...
[2026-08-31 08:09:51,812.812 INFO    ] 2026-08-31 08:09:51
[2026-08-31 08:09:52,123.123 INFO    ] 2026-08-31 08:09:52
[2026-08-31 08:09:52,203.203 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:09:52,389.389 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:09:52,392.392 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:09:52,614.614 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:09:52,632.632 INFO    ] time= 31/08/2026 08:09:52
[2026-08-31 08:09:52,650.650 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:09:52,660.660 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:09:52,778.778 INFO    ] No existing commands found in stream
[2026-08-31 08:09:57,799.799 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:09:57,803.803 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-08-31 08:10:00,006.006 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 08:10:00,009.009 INFO    ] Checking for system updates...
[2026-08-31 08:10:00,046.046 INFO    ] 200
[2026-08-31 08:10:00,049.049 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:10:00,101.101 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:10:00,103.103 INFO    ] No update needed
[2026-08-31 08:10:00,105.105 INFO    ] Checking for camera pi updates...
[2026-08-31 08:10:00,139.139 INFO    ] 200
[2026-08-31 08:10:00,142.142 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:10:00,187.187 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:10:00,387.387 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:10:00,389.389 INFO    ] No camera update needed
[2026-08-31 08:10:00,392.392 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:10:00,394.394 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:10:00,400.400 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:10:00,405.405 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:10:02,484.484 INFO    ] ================================================
[2026-08-31 08:10:02,511.511 INFO    ] Launching Daemon at Mon Aug 31 08:10:02 IST 2026
[2026-08-31 08:10:02,528.528 INFO    ] ================================================
[2026-08-31 08:10:03,193.193 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:10:03
[2026-08-31 08:10:03,812.812 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:10:04,087.087 INFO    ] Initializing speech engine...
[2026-08-31 08:10:04,096.096 INFO    ] 2026-08-31 08:10:04
[2026-08-31 08:10:04,357.357 INFO    ] 2026-08-31 08:10:04
[2026-08-31 08:10:04,390.390 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:10:04,636.636 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:10:04,645.645 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:10:04,780.780 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:10:04,851.851 INFO    ] time= 31/08/2026 08:10:04
[2026-08-31 08:10:04,905.905 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:10:04,914.914 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:10:05,055.055 INFO    ] No existing commands found in stream
[2026-08-31 08:10:10,071.071 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:10:10,073.073 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-08-31 08:10:11,577.577 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 08:10:11,581.581 INFO    ] Checking for system updates...
[2026-08-31 08:10:11,620.620 INFO    ] 200
[2026-08-31 08:10:11,622.622 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:10:11,674.674 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:10:11,677.677 INFO    ] No update needed
[2026-08-31 08:10:11,680.680 INFO    ] Checking for camera pi updates...
[2026-08-31 08:10:11,713.713 INFO    ] 200
[2026-08-31 08:10:11,716.716 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:10:11,761.761 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:10:11,835.835 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:10:11,838.838 INFO    ] No camera update needed
[2026-08-31 08:10:11,840.840 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:10:11,843.843 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:10:11,848.848 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:10:11,853.853 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:10:13,892.892 INFO    ] ================================================
[2026-08-31 08:10:13,908.908 INFO    ] Launching Daemon at Mon Aug 31 08:10:13 IST 2026
[2026-08-31 08:10:13,918.918 INFO    ] ================================================
[2026-08-31 08:10:14,485.485 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:10:14
[2026-08-31 08:10:15,066.066 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:10:15,315.315 INFO    ] Initializing speech engine...
[2026-08-31 08:10:15,337.337 INFO    ] 2026-08-31 08:10:15
[2026-08-31 08:10:15,592.592 INFO    ] 2026-08-31 08:10:15
[2026-08-31 08:10:15,616.616 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:10:15,803.803 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:10:15,831.831 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:10:16,004.004 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:10:16,013.013 INFO    ] time= 31/08/2026 08:10:16
[2026-08-31 08:10:16,021.021 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:10:16,069.069 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:10:16,214.214 INFO    ] No existing commands found in stream
[2026-08-31 08:10:21,244.244 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:10:21,247.247 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-08-31 08:10:25,533.533 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 08:10:25,536.536 INFO    ] Checking for system updates...
[2026-08-31 08:10:25,572.572 INFO    ] 200
[2026-08-31 08:10:25,575.575 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:10:25,626.626 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:10:25,629.629 INFO    ] No update needed
[2026-08-31 08:10:25,631.631 INFO    ] Checking for camera pi updates...
[2026-08-31 08:10:25,669.669 INFO    ] 200
[2026-08-31 08:10:25,671.671 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:10:25,712.712 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:10:25,807.807 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:10:25,810.810 INFO    ] No camera update needed
[2026-08-31 08:10:25,813.813 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:10:25,815.815 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:10:25,822.822 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:10:25,827.827 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:10:27,870.870 INFO    ] ================================================
[2026-08-31 08:10:27,885.885 INFO    ] Launching Daemon at Mon Aug 31 08:10:27 IST 2026
[2026-08-31 08:10:27,896.896 INFO    ] ================================================
[2026-08-31 08:10:28,475.475 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:10:28
[2026-08-31 08:10:29,073.073 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:10:29,347.347 INFO    ] Initializing speech engine...
[2026-08-31 08:10:29,358.358 INFO    ] 2026-08-31 08:10:29
[2026-08-31 08:10:29,619.619 INFO    ] 2026-08-31 08:10:29
[2026-08-31 08:10:29,675.675 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:10:29,896.896 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:10:29,905.905 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:10:30,040.040 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:10:30,120.120 INFO    ] time= 31/08/2026 08:10:30
[2026-08-31 08:10:30,168.168 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:10:30,174.174 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:10:30,320.320 INFO    ] No existing commands found in stream
[2026-08-31 08:10:35,332.332 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:10:35,335.335 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-08-31 08:10:36,142.142 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 08:10:36,144.144 INFO    ] Checking for system updates...
[2026-08-31 08:10:36,184.184 INFO    ] 200
[2026-08-31 08:10:36,186.186 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:10:36,238.238 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:10:36,240.240 INFO    ] No update needed
[2026-08-31 08:10:36,243.243 INFO    ] Checking for camera pi updates...
[2026-08-31 08:10:36,280.280 INFO    ] 200
[2026-08-31 08:10:36,282.282 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:10:36,327.327 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:10:36,422.422 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:10:36,425.425 INFO    ] No camera update needed
[2026-08-31 08:10:36,427.427 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:10:36,429.429 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:10:36,435.435 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:10:36,440.440 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:10:38,479.479 INFO    ] ================================================
[2026-08-31 08:10:38,494.494 INFO    ] Launching Daemon at Mon Aug 31 08:10:38 IST 2026
[2026-08-31 08:10:38,505.505 INFO    ] ================================================
[2026-08-31 08:10:39,069.069 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:10:39
[2026-08-31 08:10:39,660.660 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:10:39,919.919 INFO    ] Initializing speech engine...
[2026-08-31 08:10:39,932.932 INFO    ] 2026-08-31 08:10:39
[2026-08-31 08:10:40,219.219 INFO    ] 2026-08-31 08:10:40
[2026-08-31 08:10:40,258.258 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:10:40,485.485 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:10:40,525.525 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:10:40,701.701 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:10:40,714.714 INFO    ] time= 31/08/2026 08:10:40
[2026-08-31 08:10:40,761.761 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:10:40,810.810 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:10:40,872.872 INFO    ] No existing commands found in stream
[2026-08-31 08:10:45,881.881 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:10:45,884.884 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-08-31 08:10:47,419.419 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 08:10:47,422.422 INFO    ] Checking for system updates...
[2026-08-31 08:10:47,456.456 INFO    ] 200
[2026-08-31 08:10:47,459.459 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:10:47,518.518 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:10:47,520.520 INFO    ] No update needed
[2026-08-31 08:10:47,523.523 INFO    ] Checking for camera pi updates...
[2026-08-31 08:10:47,556.556 INFO    ] 200
[2026-08-31 08:10:47,558.558 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:10:47,599.599 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:10:47,680.680 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:10:47,683.683 INFO    ] No camera update needed
[2026-08-31 08:10:47,685.685 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:10:47,687.687 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:10:47,693.693 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:10:47,697.697 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:10:49,738.738 INFO    ] ================================================
[2026-08-31 08:10:49,753.753 INFO    ] Launching Daemon at Mon Aug 31 08:10:49 IST 2026
[2026-08-31 08:10:49,764.764 INFO    ] ================================================
[2026-08-31 08:10:50,338.338 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:10:50
[2026-08-31 08:10:50,937.937 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:10:51,213.213 INFO    ] Initializing speech engine...
[2026-08-31 08:10:51,221.221 INFO    ] 2026-08-31 08:10:51
[2026-08-31 08:10:51,483.483 INFO    ] 2026-08-31 08:10:51
[2026-08-31 08:10:51,534.534 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:10:51,757.757 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:10:51,766.766 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:10:51,897.897 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:10:51,944.944 INFO    ] time= 31/08/2026 08:10:51
[2026-08-31 08:10:52,004.004 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:10:52,031.031 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:10:52,164.164 INFO    ] No existing commands found in stream
[2026-08-31 08:10:57,189.189 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:10:57,191.191 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-08-31 08:10:58,500.500 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 08:10:58,502.502 INFO    ] Checking for system updates...
[2026-08-31 08:10:58,539.539 INFO    ] 200
[2026-08-31 08:10:58,542.542 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:10:58,603.603 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:10:58,606.606 INFO    ] No update needed
[2026-08-31 08:10:58,609.609 INFO    ] Checking for camera pi updates...
[2026-08-31 08:10:58,644.644 INFO    ] 200
[2026-08-31 08:10:58,647.647 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:10:58,695.695 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:10:58,753.753 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:10:58,755.755 INFO    ] No camera update needed
[2026-08-31 08:10:58,757.757 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:10:58,760.760 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:10:58,765.765 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:10:58,770.770 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:11:00,812.812 INFO    ] ================================================
[2026-08-31 08:11:00,826.826 INFO    ] Launching Daemon at Mon Aug 31 08:11:00 IST 2026
[2026-08-31 08:11:00,837.837 INFO    ] ================================================
[2026-08-31 08:11:01,505.505 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:11:01
[2026-08-31 08:11:02,241.241 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:11:02,609.609 INFO    ] Initializing speech engine...
[2026-08-31 08:11:02,619.619 INFO    ] 2026-08-31 08:11:02
[2026-08-31 08:11:02,962.962 INFO    ] 2026-08-31 08:11:02
[2026-08-31 08:11:03,057.057 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:11:03,312.312 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:11:03,321.321 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:11:03,473.473 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:11:03,476.476 INFO    ] time= 31/08/2026 08:11:03
[2026-08-31 08:11:03,539.539 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:11:03,546.546 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:11:03,692.692 INFO    ] No existing commands found in stream
[2026-08-31 08:11:08,718.718 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:11:08,721.721 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-08-31 08:11:11,691.691 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 08:11:11,694.694 INFO    ] Checking for system updates...
[2026-08-31 08:11:11,730.730 INFO    ] 200
[2026-08-31 08:11:11,733.733 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:11:11,792.792 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:11:11,794.794 INFO    ] No update needed
[2026-08-31 08:11:11,796.796 INFO    ] Checking for camera pi updates...
[2026-08-31 08:11:11,833.833 INFO    ] 200
[2026-08-31 08:11:11,836.836 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:11:11,876.876 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:11:11,945.945 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:11:11,947.947 INFO    ] No camera update needed
[2026-08-31 08:11:11,949.949 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:11:11,952.952 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:11:11,957.957 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:11:11,962.962 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:11:14,001.001 INFO    ] ================================================
[2026-08-31 08:11:14,016.016 INFO    ] Launching Daemon at Mon Aug 31 08:11:14 IST 2026
[2026-08-31 08:11:14,026.026 INFO    ] ================================================
[2026-08-31 08:11:14,607.607 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:11:14
[2026-08-31 08:11:15,203.203 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:11:15,462.462 INFO    ] Initializing speech engine...
[2026-08-31 08:11:15,471.471 INFO    ] 2026-08-31 08:11:15
[2026-08-31 08:11:15,764.764 INFO    ] 2026-08-31 08:11:15
[2026-08-31 08:11:15,802.802 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:11:16,085.085 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:11:16,101.101 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:11:16,254.254 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:11:16,284.284 INFO    ] time= 31/08/2026 08:11:16
[2026-08-31 08:11:16,334.334 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:11:16,399.399 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:11:16,508.508 INFO    ] No existing commands found in stream
[2026-08-31 08:11:21,533.533 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:11:21,536.536 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-08-31 08:11:25,739.739 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 08:11:25,742.742 INFO    ] Checking for system updates...
[2026-08-31 08:11:25,781.781 INFO    ] 200
[2026-08-31 08:11:25,784.784 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:11:25,842.842 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:11:25,845.845 INFO    ] No update needed
[2026-08-31 08:11:25,847.847 INFO    ] Checking for camera pi updates...
[2026-08-31 08:11:25,881.881 INFO    ] 200
[2026-08-31 08:11:25,883.883 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:11:25,923.923 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:11:26,004.004 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:11:26,007.007 INFO    ] No camera update needed
[2026-08-31 08:11:26,009.009 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:11:26,012.012 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:11:26,017.017 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:11:26,022.022 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:11:28,063.063 INFO    ] ================================================
[2026-08-31 08:11:28,078.078 INFO    ] Launching Daemon at Mon Aug 31 08:11:28 IST 2026
[2026-08-31 08:11:28,088.088 INFO    ] ================================================
[2026-08-31 08:11:28,738.738 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:11:28
[2026-08-31 08:11:29,399.399 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:11:29,701.701 INFO    ] Initializing speech engine...
[2026-08-31 08:11:29,711.711 INFO    ] 2026-08-31 08:11:29
[2026-08-31 08:11:29,989.989 INFO    ] 2026-08-31 08:11:29
[2026-08-31 08:11:30,042.042 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:11:30,277.277 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:11:30,283.283 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:11:30,420.420 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:11:30,485.485 INFO    ] time= 31/08/2026 08:11:30
[2026-08-31 08:11:30,540.540 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:11:30,558.558 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:11:30,691.691 INFO    ] No existing commands found in stream
[2026-08-31 08:11:35,714.714 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:11:35,717.717 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-08-31 08:11:40,000.000 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 08:11:40,002.002 INFO    ] Checking for system updates...
[2026-08-31 08:11:40,039.039 INFO    ] 200
[2026-08-31 08:11:40,041.041 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:11:40,094.094 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:11:40,096.096 INFO    ] No update needed
[2026-08-31 08:11:40,099.099 INFO    ] Checking for camera pi updates...
[2026-08-31 08:11:40,135.135 INFO    ] 200
[2026-08-31 08:11:40,138.138 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:11:40,178.178 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:11:40,281.281 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:11:40,283.283 INFO    ] No camera update needed
[2026-08-31 08:11:40,285.285 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:11:40,288.288 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:11:40,293.293 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:11:40,298.298 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:11:42,340.340 INFO    ] ================================================
[2026-08-31 08:11:42,355.355 INFO    ] Launching Daemon at Mon Aug 31 08:11:42 IST 2026
[2026-08-31 08:11:42,365.365 INFO    ] ================================================
[2026-08-31 08:11:42,930.930 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:11:42
[2026-08-31 08:11:43,525.525 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:11:43,782.782 INFO    ] Initializing speech engine...
[2026-08-31 08:11:43,795.795 INFO    ] 2026-08-31 08:11:43
[2026-08-31 08:11:44,076.076 INFO    ] 2026-08-31 08:11:44
[2026-08-31 08:11:44,114.114 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:11:44,319.319 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:11:44,337.337 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:11:44,484.484 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:11:44,491.491 INFO    ] time= 31/08/2026 08:11:44
[2026-08-31 08:11:44,496.496 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:11:44,503.503 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:11:44,659.659 INFO    ] No existing commands found in stream
[2026-08-31 08:11:49,684.684 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:11:49,686.686 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-08-31 08:11:53,304.304 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 08:11:53,306.306 INFO    ] Checking for system updates...
[2026-08-31 08:11:53,346.346 INFO    ] 200
[2026-08-31 08:11:53,348.348 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:11:53,400.400 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:11:53,403.403 INFO    ] No update needed
[2026-08-31 08:11:53,405.405 INFO    ] Checking for camera pi updates...
[2026-08-31 08:11:53,442.442 INFO    ] 200
[2026-08-31 08:11:53,444.444 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:11:53,488.488 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:11:53,582.582 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:11:53,584.584 INFO    ] No camera update needed
[2026-08-31 08:11:53,586.586 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:11:53,589.589 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:11:53,594.594 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:11:53,599.599 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:11:55,639.639 INFO    ] ================================================
[2026-08-31 08:11:55,654.654 INFO    ] Launching Daemon at Mon Aug 31 08:11:55 IST 2026
[2026-08-31 08:11:55,664.664 INFO    ] ================================================
[2026-08-31 08:11:56,232.232 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:11:56
[2026-08-31 08:11:56,820.820 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:11:57,070.070 INFO    ] Initializing speech engine...
[2026-08-31 08:11:57,077.077 INFO    ] 2026-08-31 08:11:57
[2026-08-31 08:11:57,374.374 INFO    ] 2026-08-31 08:11:57
[2026-08-31 08:11:57,409.409 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:11:57,608.608 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:11:57,623.623 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:11:57,781.781 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:11:57,791.791 INFO    ] time= 31/08/2026 08:11:57
[2026-08-31 08:11:57,799.799 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:11:57,822.822 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:11:57,954.954 INFO    ] No existing commands found in stream
[2026-08-31 08:12:02,980.980 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:12:02,984.984 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-08-31 08:12:06,282.282 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 08:12:06,285.285 INFO    ] Checking for system updates...
[2026-08-31 08:12:06,325.325 INFO    ] 200
[2026-08-31 08:12:06,327.327 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:12:06,380.380 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:12:06,382.382 INFO    ] No update needed
[2026-08-31 08:12:06,384.384 INFO    ] Checking for camera pi updates...
[2026-08-31 08:12:06,418.418 INFO    ] 200
[2026-08-31 08:12:06,421.421 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:12:06,461.461 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:12:06,548.548 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:12:06,551.551 INFO    ] No camera update needed
[2026-08-31 08:12:06,554.554 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:12:06,557.557 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:12:06,564.564 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:12:06,571.571 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:12:08,612.612 INFO    ] ================================================
[2026-08-31 08:12:08,627.627 INFO    ] Launching Daemon at Mon Aug 31 08:12:08 IST 2026
[2026-08-31 08:12:08,637.637 INFO    ] ================================================
[2026-08-31 08:12:09,222.222 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:12:09
[2026-08-31 08:12:09,822.822 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:12:10,106.106 INFO    ] Initializing speech engine...
[2026-08-31 08:12:10,118.118 INFO    ] 2026-08-31 08:12:10
[2026-08-31 08:12:10,392.392 INFO    ] 2026-08-31 08:12:10
[2026-08-31 08:12:10,428.428 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:12:10,652.652 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:12:10,676.676 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:12:10,817.817 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:12:10,863.863 INFO    ] time= 31/08/2026 08:12:10
[2026-08-31 08:12:10,891.891 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:12:10,912.912 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:12:11,030.030 INFO    ] No existing commands found in stream
[2026-08-31 08:12:16,050.050 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:12:16,053.053 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-08-31 08:12:20,241.241 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 08:12:20,244.244 INFO    ] Checking for system updates...
[2026-08-31 08:12:20,279.279 INFO    ] 200
[2026-08-31 08:12:20,282.282 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:12:20,342.342 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:12:20,344.344 INFO    ] No update needed
[2026-08-31 08:12:20,347.347 INFO    ] Checking for camera pi updates...
[2026-08-31 08:12:20,380.380 INFO    ] 200
[2026-08-31 08:12:20,382.382 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:12:20,424.424 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:12:20,524.524 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:12:20,527.527 INFO    ] No camera update needed
[2026-08-31 08:12:20,529.529 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:12:20,532.532 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:12:20,537.537 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:12:20,542.542 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:12:22,582.582 INFO    ] ================================================
[2026-08-31 08:12:22,597.597 INFO    ] Launching Daemon at Mon Aug 31 08:12:22 IST 2026
[2026-08-31 08:12:22,608.608 INFO    ] ================================================
[2026-08-31 08:12:23,274.274 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:12:23
[2026-08-31 08:12:23,875.875 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:12:24,130.130 INFO    ] Initializing speech engine...
[2026-08-31 08:12:24,138.138 INFO    ] 2026-08-31 08:12:24
[2026-08-31 08:12:24,435.435 INFO    ] 2026-08-31 08:12:24
[2026-08-31 08:12:24,470.470 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:12:24,684.684 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:12:24,702.702 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:12:24,851.851 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:12:24,859.859 INFO    ] time= 31/08/2026 08:12:24
[2026-08-31 08:12:24,867.867 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:12:24,973.973 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:12:25,090.090 INFO    ] No existing commands found in stream
[2026-08-31 08:12:30,115.115 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:12:30,118.118 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-08-31 08:12:32,219.219 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 08:12:32,222.222 INFO    ] Checking for system updates...
[2026-08-31 08:12:32,259.259 INFO    ] 200
[2026-08-31 08:12:32,262.262 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:12:32,330.330 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:12:32,333.333 INFO    ] No update needed
[2026-08-31 08:12:32,336.336 INFO    ] Checking for camera pi updates...
[2026-08-31 08:12:32,376.376 INFO    ] 200
[2026-08-31 08:12:32,379.379 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:12:32,426.426 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:12:32,527.527 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:12:32,530.530 INFO    ] No camera update needed
[2026-08-31 08:12:32,533.533 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:12:32,535.535 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:12:32,541.541 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:12:32,547.547 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:12:34,590.590 INFO    ] ================================================
[2026-08-31 08:12:34,605.605 INFO    ] Launching Daemon at Mon Aug 31 08:12:34 IST 2026
[2026-08-31 08:12:34,615.615 INFO    ] ================================================
[2026-08-31 08:12:35,191.191 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:12:35
[2026-08-31 08:12:35,782.782 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:12:36,043.043 INFO    ] Initializing speech engine...
[2026-08-31 08:12:36,050.050 INFO    ] 2026-08-31 08:12:36
[2026-08-31 08:12:36,346.346 INFO    ] 2026-08-31 08:12:36
[2026-08-31 08:12:36,385.385 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:12:36,609.609 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:12:36,637.637 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:12:36,839.839 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:12:36,847.847 INFO    ] time= 31/08/2026 08:12:36
[2026-08-31 08:12:36,901.901 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:12:36,940.940 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:12:37,015.015 INFO    ] No existing commands found in stream
[2026-08-31 08:12:42,028.028 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:12:42,030.030 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-08-31 08:12:43,721.721 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 08:12:43,723.723 INFO    ] Checking for system updates...
[2026-08-31 08:12:43,763.763 INFO    ] 200
[2026-08-31 08:12:43,765.765 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:12:43,824.824 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:12:43,826.826 INFO    ] No update needed
[2026-08-31 08:12:43,829.829 INFO    ] Checking for camera pi updates...
[2026-08-31 08:12:43,862.862 INFO    ] 200
[2026-08-31 08:12:43,865.865 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:12:43,905.905 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:12:43,990.990 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:12:43,993.993 INFO    ] No camera update needed
[2026-08-31 08:12:43,995.995 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:12:43,997.997 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:12:44,003.003 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:12:44,008.008 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:12:46,049.049 INFO    ] ================================================
[2026-08-31 08:12:46,065.065 INFO    ] Launching Daemon at Mon Aug 31 08:12:46 IST 2026
[2026-08-31 08:12:46,076.076 INFO    ] ================================================
[2026-08-31 08:12:46,646.646 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:12:46
[2026-08-31 08:12:47,242.242 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:12:47,520.520 INFO    ] Initializing speech engine...
[2026-08-31 08:12:47,528.528 INFO    ] 2026-08-31 08:12:47
[2026-08-31 08:12:47,788.788 INFO    ] 2026-08-31 08:12:47
[2026-08-31 08:12:47,841.841 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:12:48,067.067 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:12:48,074.074 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:12:48,291.291 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:12:48,328.328 INFO    ] time= 31/08/2026 08:12:48
[2026-08-31 08:12:48,334.334 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:12:48,352.352 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:12:48,483.483 INFO    ] No existing commands found in stream
[2026-08-31 08:12:53,498.498 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:12:53,501.501 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-08-31 08:12:55,879.879 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 08:12:55,882.882 INFO    ] Checking for system updates...
[2026-08-31 08:12:55,918.918 INFO    ] 200
[2026-08-31 08:12:55,921.921 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:12:55,972.972 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:12:55,975.975 INFO    ] No update needed
[2026-08-31 08:12:55,977.977 INFO    ] Checking for camera pi updates...
[2026-08-31 08:12:56,015.015 INFO    ] 200
[2026-08-31 08:12:56,018.018 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:12:56,058.058 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:12:56,133.133 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:12:56,136.136 INFO    ] No camera update needed
[2026-08-31 08:12:56,139.139 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:12:56,142.142 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:12:56,148.148 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:12:56,154.154 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:12:58,196.196 INFO    ] ================================================
[2026-08-31 08:12:58,212.212 INFO    ] Launching Daemon at Mon Aug 31 08:12:58 IST 2026
[2026-08-31 08:12:58,223.223 INFO    ] ================================================
[2026-08-31 08:12:58,802.802 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:12:58
[2026-08-31 08:12:59,479.479 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:12:59,787.787 INFO    ] Initializing speech engine...
[2026-08-31 08:12:59,799.799 INFO    ] 2026-08-31 08:12:59
[2026-08-31 08:13:00,073.073 INFO    ] 2026-08-31 08:13:00
[2026-08-31 08:13:00,128.128 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:13:00,352.352 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:13:00,362.362 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:13:00,512.512 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:13:00,562.562 INFO    ] time= 31/08/2026 08:13:00
[2026-08-31 08:13:00,611.611 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:13:00,636.636 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:13:00,778.778 INFO    ] No existing commands found in stream
[2026-08-31 08:13:05,794.794 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:13:05,797.797 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-08-31 08:13:06,642.642 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 08:13:06,645.645 INFO    ] Checking for system updates...
[2026-08-31 08:13:06,685.685 INFO    ] 200
[2026-08-31 08:13:06,688.688 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:13:06,747.747 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:13:06,750.750 INFO    ] No update needed
[2026-08-31 08:13:06,752.752 INFO    ] Checking for camera pi updates...
[2026-08-31 08:13:06,786.786 INFO    ] 200
[2026-08-31 08:13:06,789.789 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:13:06,829.829 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:13:06,925.925 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:13:06,927.927 INFO    ] No camera update needed
[2026-08-31 08:13:06,930.930 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:13:06,932.932 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:13:06,937.937 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:13:06,942.942 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:13:08,982.982 INFO    ] ================================================
[2026-08-31 08:13:09,998.998 INFO    ] Launching Daemon at Mon Aug 31 08:13:08 IST 2026
[2026-08-31 08:13:09,009.009 INFO    ] ================================================
[2026-08-31 08:13:09,672.672 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:13:09
[2026-08-31 08:13:10,353.353 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:13:10,661.661 INFO    ] Initializing speech engine...
[2026-08-31 08:13:10,675.675 INFO    ] 2026-08-31 08:13:10
[2026-08-31 08:13:10,947.947 INFO    ] 2026-08-31 08:13:10
[2026-08-31 08:13:11,000.000 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:13:11,230.230 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:13:11,240.240 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:13:11,398.398 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:13:11,470.470 INFO    ] time= 31/08/2026 08:13:11
[2026-08-31 08:13:11,513.513 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:13:11,529.529 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:13:11,662.662 INFO    ] No existing commands found in stream
[2026-08-31 08:13:16,678.678 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:13:16,681.681 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-08-31 08:13:17,491.491 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 08:13:17,494.494 INFO    ] Checking for system updates...
[2026-08-31 08:13:17,535.535 INFO    ] 200
[2026-08-31 08:13:17,538.538 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:13:17,590.590 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:13:17,592.592 INFO    ] No update needed
[2026-08-31 08:13:17,595.595 INFO    ] Checking for camera pi updates...
[2026-08-31 08:13:17,629.629 INFO    ] 200
[2026-08-31 08:13:17,631.631 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:13:17,672.672 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:13:17,758.758 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:13:17,760.760 INFO    ] No camera update needed
[2026-08-31 08:13:17,763.763 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:13:17,765.765 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:13:17,770.770 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:13:17,775.775 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:13:19,816.816 INFO    ] ================================================
[2026-08-31 08:13:19,831.831 INFO    ] Launching Daemon at Mon Aug 31 08:13:19 IST 2026
[2026-08-31 08:13:19,843.843 INFO    ] ================================================
[2026-08-31 08:13:20,418.418 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:13:20
[2026-08-31 08:13:21,002.002 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:13:21,247.247 INFO    ] Initializing speech engine...
[2026-08-31 08:13:21,255.255 INFO    ] 2026-08-31 08:13:21
[2026-08-31 08:13:21,529.529 INFO    ] 2026-08-31 08:13:21
[2026-08-31 08:13:21,564.564 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:13:21,763.763 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:13:21,770.770 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:13:21,897.897 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:13:21,904.904 INFO    ] time= 31/08/2026 08:13:21
[2026-08-31 08:13:21,912.912 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:13:21,937.937 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:13:22,079.079 INFO    ] No existing commands found in stream
[2026-08-31 08:13:27,114.114 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:13:27,117.117 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-08-31 08:13:31,538.538 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 08:13:31,541.541 INFO    ] Checking for system updates...
[2026-08-31 08:13:31,577.577 INFO    ] 200
[2026-08-31 08:13:31,579.579 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:13:31,639.639 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:13:31,641.641 INFO    ] No update needed
[2026-08-31 08:13:31,643.643 INFO    ] Checking for camera pi updates...
[2026-08-31 08:13:31,684.684 INFO    ] 200
[2026-08-31 08:13:31,688.688 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:13:31,742.742 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:13:31,859.859 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:13:31,862.862 INFO    ] No camera update needed
[2026-08-31 08:13:31,864.864 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:13:31,867.867 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:13:31,873.873 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:13:31,879.879 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:13:33,922.922 INFO    ] ================================================
[2026-08-31 08:13:33,938.938 INFO    ] Launching Daemon at Mon Aug 31 08:13:33 IST 2026
[2026-08-31 08:13:33,950.950 INFO    ] ================================================
[2026-08-31 08:13:34,531.531 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:13:34
[2026-08-31 08:13:35,128.128 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:13:35,404.404 INFO    ] Initializing speech engine...
[2026-08-31 08:13:35,413.413 INFO    ] 2026-08-31 08:13:35
[2026-08-31 08:13:35,667.667 INFO    ] 2026-08-31 08:13:35
[2026-08-31 08:13:35,729.729 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:13:35,954.954 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:13:35,959.959 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:13:36,169.169 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:13:36,224.224 INFO    ] time= 31/08/2026 08:13:36
[2026-08-31 08:13:36,249.249 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:13:36,266.266 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:13:36,412.412 INFO    ] No existing commands found in stream
[2026-08-31 08:13:41,432.432 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:13:41,435.435 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-08-31 08:13:44,924.924 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 08:13:44,927.927 INFO    ] Checking for system updates...
[2026-08-31 08:13:44,964.964 INFO    ] 200
[2026-08-31 08:13:44,966.966 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:13:45,026.026 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:13:45,028.028 INFO    ] No update needed
[2026-08-31 08:13:45,031.031 INFO    ] Checking for camera pi updates...
[2026-08-31 08:13:45,069.069 INFO    ] 200
[2026-08-31 08:13:45,071.071 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:13:45,112.112 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:13:45,184.184 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:13:45,187.187 INFO    ] No camera update needed
[2026-08-31 08:13:45,189.189 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:13:45,192.192 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:13:45,197.197 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:13:45,202.202 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:13:47,246.246 INFO    ] ================================================
[2026-08-31 08:13:47,261.261 INFO    ] Launching Daemon at Mon Aug 31 08:13:47 IST 2026
[2026-08-31 08:13:47,273.273 INFO    ] ================================================
[2026-08-31 08:13:47,840.840 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:13:47
[2026-08-31 08:13:48,424.424 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:13:48,688.688 INFO    ] Initializing speech engine...
[2026-08-31 08:13:48,706.706 INFO    ] 2026-08-31 08:13:48
[2026-08-31 08:13:48,952.952 INFO    ] 2026-08-31 08:13:48
[2026-08-31 08:13:48,987.987 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:13:49,179.179 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:13:49,224.224 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:13:49,382.382 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:13:49,429.429 INFO    ] time= 31/08/2026 08:13:49
[2026-08-31 08:13:49,493.493 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:13:49,515.515 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:13:49,660.660 INFO    ] No existing commands found in stream
[2026-08-31 08:13:54,675.675 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:13:54,678.678 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-08-31 08:13:57,588.588 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 08:13:57,591.591 INFO    ] Checking for system updates...
[2026-08-31 08:13:57,631.631 INFO    ] 200
[2026-08-31 08:13:57,634.634 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:13:57,693.693 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:13:57,696.696 INFO    ] No update needed
[2026-08-31 08:13:57,698.698 INFO    ] Checking for camera pi updates...
[2026-08-31 08:13:57,743.743 INFO    ] 200
[2026-08-31 08:13:57,745.745 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:13:57,786.786 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:13:57,866.866 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:13:57,868.868 INFO    ] No camera update needed
[2026-08-31 08:13:57,871.871 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:13:57,873.873 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:13:57,878.878 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:13:57,883.883 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:13:59,923.923 INFO    ] ================================================
[2026-08-31 08:13:59,938.938 INFO    ] Launching Daemon at Mon Aug 31 08:13:59 IST 2026
[2026-08-31 08:13:59,949.949 INFO    ] ================================================
[2026-08-31 08:14:00,544.544 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:14:00
[2026-08-31 08:14:01,127.127 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:14:01,398.398 INFO    ] Initializing speech engine...
[2026-08-31 08:14:01,407.407 INFO    ] 2026-08-31 08:14:01
[2026-08-31 08:14:01,659.659 INFO    ] 2026-08-31 08:14:01
[2026-08-31 08:14:01,721.721 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:14:01,955.955 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:14:01,959.959 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:14:02,115.115 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:14:02,161.161 INFO    ] time= 31/08/2026 08:14:02
[2026-08-31 08:14:02,172.172 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:14:02,177.177 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:14:02,243.243 INFO    ] No existing commands found in stream
[2026-08-31 08:14:07,254.254 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:14:07,257.257 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-08-31 08:14:10,327.327 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 08:14:10,329.329 INFO    ] Checking for system updates...
[2026-08-31 08:14:10,369.369 INFO    ] 200
[2026-08-31 08:14:10,372.372 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:14:10,423.423 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:14:10,426.426 INFO    ] No update needed
[2026-08-31 08:14:10,428.428 INFO    ] Checking for camera pi updates...
[2026-08-31 08:14:10,463.463 INFO    ] 200
[2026-08-31 08:14:10,465.465 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:14:10,514.514 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:14:10,699.699 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:14:10,702.702 INFO    ] No camera update needed
[2026-08-31 08:14:10,704.704 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:14:10,707.707 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:14:10,713.713 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:14:10,719.719 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:14:12,760.760 INFO    ] ================================================
[2026-08-31 08:14:12,775.775 INFO    ] Launching Daemon at Mon Aug 31 08:14:12 IST 2026
[2026-08-31 08:14:12,786.786 INFO    ] ================================================
[2026-08-31 08:14:13,350.350 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:14:13
[2026-08-31 08:14:13,933.933 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:14:14,189.189 INFO    ] Initializing speech engine...
[2026-08-31 08:14:14,195.195 INFO    ] 2026-08-31 08:14:14
[2026-08-31 08:14:14,488.488 INFO    ] 2026-08-31 08:14:14
[2026-08-31 08:14:14,526.526 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:14:14,712.712 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:14:14,718.718 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:14:14,876.876 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:14:14,885.885 INFO    ] time= 31/08/2026 08:14:14
[2026-08-31 08:14:14,935.935 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:14:14,952.952 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:14:15,079.079 INFO    ] No existing commands found in stream
[2026-08-31 08:14:20,105.105 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:14:20,108.108 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-08-31 08:14:20,610.610 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 08:14:20,612.612 INFO    ] Checking for system updates...
[2026-08-31 08:14:20,651.651 INFO    ] 200
[2026-08-31 08:14:20,654.654 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:14:20,713.713 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:14:20,715.715 INFO    ] No update needed
[2026-08-31 08:14:20,718.718 INFO    ] Checking for camera pi updates...
[2026-08-31 08:14:20,751.751 INFO    ] 200
[2026-08-31 08:14:20,754.754 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:14:20,799.799 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:14:20,886.886 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:14:20,889.889 INFO    ] No camera update needed
[2026-08-31 08:14:20,891.891 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:14:20,893.893 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:14:20,898.898 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:14:20,903.903 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:14:22,943.943 INFO    ] ================================================
[2026-08-31 08:14:22,958.958 INFO    ] Launching Daemon at Mon Aug 31 08:14:22 IST 2026
[2026-08-31 08:14:22,968.968 INFO    ] ================================================
[2026-08-31 08:14:23,540.540 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:14:23
[2026-08-31 08:14:24,123.123 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:14:24,374.374 INFO    ] Initializing speech engine...
[2026-08-31 08:14:24,396.396 INFO    ] 2026-08-31 08:14:24
[2026-08-31 08:14:24,650.650 INFO    ] 2026-08-31 08:14:24
[2026-08-31 08:14:24,684.684 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:14:24,939.939 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:14:24,945.945 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:14:25,079.079 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:14:25,138.138 INFO    ] time= 31/08/2026 08:14:25
[2026-08-31 08:14:25,203.203 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:14:25,212.212 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:14:25,320.320 INFO    ] No existing commands found in stream
[2026-08-31 08:14:30,352.352 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:14:30,355.355 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-08-31 08:14:31,093.093 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 08:14:31,096.096 INFO    ] Checking for system updates...
[2026-08-31 08:14:31,135.135 INFO    ] 200
[2026-08-31 08:14:31,138.138 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:14:31,196.196 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:14:31,199.199 INFO    ] No update needed
[2026-08-31 08:14:31,201.201 INFO    ] Checking for camera pi updates...
[2026-08-31 08:14:31,235.235 INFO    ] 200
[2026-08-31 08:14:31,238.238 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:14:31,283.283 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:14:31,378.378 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:14:31,381.381 INFO    ] No camera update needed
[2026-08-31 08:14:31,383.383 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:14:31,386.386 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:14:31,391.391 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:14:31,397.397 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:14:33,441.441 INFO    ] ================================================
[2026-08-31 08:14:33,456.456 INFO    ] Launching Daemon at Mon Aug 31 08:14:33 IST 2026
[2026-08-31 08:14:33,467.467 INFO    ] ================================================
[2026-08-31 08:14:34,128.128 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:14:34
[2026-08-31 08:14:34,806.806 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:14:35,112.112 INFO    ] Initializing speech engine...
[2026-08-31 08:14:35,126.126 INFO    ] 2026-08-31 08:14:35
[2026-08-31 08:14:35,418.418 INFO    ] 2026-08-31 08:14:35
[2026-08-31 08:14:35,530.530 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:14:35,756.756 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:14:35,816.816 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:14:35,957.957 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:14:35,976.976 INFO    ] time= 31/08/2026 08:14:35
[2026-08-31 08:14:36,006.006 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:14:36,014.014 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:14:36,120.120 INFO    ] No existing commands found in stream
[2026-08-31 08:14:41,141.141 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:14:41,144.144 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-08-31 08:14:43,470.470 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 08:14:43,473.473 INFO    ] Checking for system updates...
[2026-08-31 08:14:43,514.514 INFO    ] 200
[2026-08-31 08:14:43,517.517 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:14:43,578.578 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:14:43,581.581 INFO    ] No update needed
[2026-08-31 08:14:43,584.584 INFO    ] Checking for camera pi updates...
[2026-08-31 08:14:43,618.618 INFO    ] 200
[2026-08-31 08:14:43,621.621 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:14:43,663.663 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:14:43,760.760 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:14:43,762.762 INFO    ] No camera update needed
[2026-08-31 08:14:43,765.765 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:14:43,767.767 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:14:43,772.772 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:14:43,777.777 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:14:45,818.818 INFO    ] ================================================
[2026-08-31 08:14:45,832.832 INFO    ] Launching Daemon at Mon Aug 31 08:14:45 IST 2026
[2026-08-31 08:14:45,847.847 INFO    ] ================================================
[2026-08-31 08:14:46,419.419 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:14:46
[2026-08-31 08:14:47,006.006 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:14:47,276.276 INFO    ] Initializing speech engine...
[2026-08-31 08:14:47,285.285 INFO    ] 2026-08-31 08:14:47
[2026-08-31 08:14:47,533.533 INFO    ] 2026-08-31 08:14:47
[2026-08-31 08:14:47,567.567 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:14:47,819.819 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:14:47,828.828 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:14:47,962.962 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:14:48,028.028 INFO    ] time= 31/08/2026 08:14:47
[2026-08-31 08:14:48,082.082 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:14:48,096.096 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:14:48,222.222 INFO    ] No existing commands found in stream
[2026-08-31 08:14:53,252.252 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:14:53,255.255 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-08-31 08:14:57,340.340 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 08:14:57,342.342 INFO    ] Checking for system updates...
[2026-08-31 08:14:57,378.378 INFO    ] 200
[2026-08-31 08:14:57,381.381 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:14:57,440.440 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:14:57,442.442 INFO    ] No update needed
[2026-08-31 08:14:57,445.445 INFO    ] Checking for camera pi updates...
[2026-08-31 08:14:57,481.481 INFO    ] 200
[2026-08-31 08:14:57,484.484 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:14:57,524.524 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:14:57,598.598 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:14:57,601.601 INFO    ] No camera update needed
[2026-08-31 08:14:57,603.603 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:14:57,605.605 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:14:57,611.611 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:14:57,615.615 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:14:59,655.655 INFO    ] ================================================
[2026-08-31 08:14:59,670.670 INFO    ] Launching Daemon at Mon Aug 31 08:14:59 IST 2026
[2026-08-31 08:14:59,680.680 INFO    ] ================================================
[2026-08-31 08:15:00,245.245 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:15:00
[2026-08-31 08:15:00,831.831 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:15:01,080.080 INFO    ] Initializing speech engine...
[2026-08-31 08:15:01,092.092 INFO    ] 2026-08-31 08:15:01
[2026-08-31 08:15:01,358.358 INFO    ] 2026-08-31 08:15:01
[2026-08-31 08:15:01,393.393 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:15:01,655.655 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:15:01,660.660 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:15:01,900.900 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:15:01,905.905 INFO    ] time= 31/08/2026 08:15:01
[2026-08-31 08:15:01,914.914 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:15:02,032.032 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:15:02,150.150 INFO    ] No existing commands found in stream
[2026-08-31 08:15:07,160.160 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:15:07,162.162 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-08-31 08:15:10,863.863 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 08:15:10,866.866 INFO    ] Checking for system updates...
[2026-08-31 08:15:10,905.905 INFO    ] 200
[2026-08-31 08:15:10,908.908 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:15:10,960.960 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:15:10,963.963 INFO    ] No update needed
[2026-08-31 08:15:10,966.966 INFO    ] Checking for camera pi updates...
[2026-08-31 08:15:11,005.005 INFO    ] 200
[2026-08-31 08:15:11,008.008 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:15:11,050.050 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:15:11,137.137 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:15:11,140.140 INFO    ] No camera update needed
[2026-08-31 08:15:11,143.143 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:15:11,145.145 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:15:11,151.151 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:15:11,157.157 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:15:13,199.199 INFO    ] ================================================
[2026-08-31 08:15:13,214.214 INFO    ] Launching Daemon at Mon Aug 31 08:15:13 IST 2026
[2026-08-31 08:15:13,225.225 INFO    ] ================================================
[2026-08-31 08:15:13,800.800 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:15:13
[2026-08-31 08:15:14,395.395 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:15:14,667.667 INFO    ] Initializing speech engine...
[2026-08-31 08:15:14,676.676 INFO    ] 2026-08-31 08:15:14
[2026-08-31 08:15:14,937.937 INFO    ] 2026-08-31 08:15:14
[2026-08-31 08:15:14,993.993 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:15:15,218.218 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:15:15,228.228 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:15:15,458.458 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:15:15,485.485 INFO    ] time= 31/08/2026 08:15:15
[2026-08-31 08:15:15,491.491 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:15:15,506.506 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:15:15,619.619 INFO    ] No existing commands found in stream
[2026-08-31 08:15:20,646.646 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:15:20,650.650 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-08-31 08:15:22,641.641 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 08:15:22,644.644 INFO    ] Checking for system updates...
[2026-08-31 08:15:22,681.681 INFO    ] 200
[2026-08-31 08:15:22,684.684 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:15:22,738.738 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:15:22,741.741 INFO    ] No update needed
[2026-08-31 08:15:22,743.743 INFO    ] Checking for camera pi updates...
[2026-08-31 08:15:22,778.778 INFO    ] 200
[2026-08-31 08:15:22,781.781 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:15:22,828.828 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:15:22,931.931 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:15:22,934.934 INFO    ] No camera update needed
[2026-08-31 08:15:22,937.937 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:15:22,940.940 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:15:22,946.946 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:15:22,952.952 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:15:24,993.993 INFO    ] ================================================
[2026-08-31 08:15:25,009.009 INFO    ] Launching Daemon at Mon Aug 31 08:15:25 IST 2026
[2026-08-31 08:15:25,019.019 INFO    ] ================================================
[2026-08-31 08:15:25,590.590 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:15:25
[2026-08-31 08:15:26,173.173 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:15:26,440.440 INFO    ] Initializing speech engine...
[2026-08-31 08:15:26,449.449 INFO    ] 2026-08-31 08:15:26
[2026-08-31 08:15:26,693.693 INFO    ] 2026-08-31 08:15:26
[2026-08-31 08:15:26,729.729 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:15:26,978.978 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:15:26,987.987 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:15:27,126.126 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:15:27,185.185 INFO    ] time= 31/08/2026 08:15:27
[2026-08-31 08:15:27,234.234 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:15:27,253.253 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:15:27,372.372 INFO    ] No existing commands found in stream
[2026-08-31 08:15:32,397.397 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:15:32,400.400 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-08-31 08:15:38,129.129 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 08:15:38,132.132 INFO    ] Checking for system updates...
[2026-08-31 08:15:38,168.168 INFO    ] 200
[2026-08-31 08:15:38,171.171 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:15:38,230.230 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:15:38,233.233 INFO    ] No update needed
[2026-08-31 08:15:38,236.236 INFO    ] Checking for camera pi updates...
[2026-08-31 08:15:38,271.271 INFO    ] 200
[2026-08-31 08:15:38,274.274 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:15:38,314.314 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:15:38,412.412 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:15:38,414.414 INFO    ] No camera update needed
[2026-08-31 08:15:38,417.417 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:15:38,419.419 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:15:38,424.424 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:15:38,429.429 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:15:40,471.471 INFO    ] ================================================
[2026-08-31 08:15:40,487.487 INFO    ] Launching Daemon at Mon Aug 31 08:15:40 IST 2026
[2026-08-31 08:15:40,498.498 INFO    ] ================================================
[2026-08-31 08:15:41,064.064 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:15:41
[2026-08-31 08:15:41,646.646 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:15:41,917.917 INFO    ] Initializing speech engine...
[2026-08-31 08:15:41,926.926 INFO    ] 2026-08-31 08:15:41
[2026-08-31 08:15:42,176.176 INFO    ] 2026-08-31 08:15:42
[2026-08-31 08:15:42,212.212 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:15:42,468.468 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:15:42,478.478 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:15:42,614.614 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:15:42,658.658 INFO    ] time= 31/08/2026 08:15:42
[2026-08-31 08:15:42,707.707 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:15:42,746.746 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:15:42,808.808 INFO    ] No existing commands found in stream
[2026-08-31 08:15:47,828.828 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:15:47,831.831 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-08-31 08:15:49,368.368 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 08:15:49,371.371 INFO    ] Checking for system updates...
[2026-08-31 08:15:49,407.407 INFO    ] 200
[2026-08-31 08:15:49,410.410 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:15:49,466.466 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:15:49,468.468 INFO    ] No update needed
[2026-08-31 08:15:49,471.471 INFO    ] Checking for camera pi updates...
[2026-08-31 08:15:49,504.504 INFO    ] 200
[2026-08-31 08:15:49,507.507 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:15:49,547.547 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:15:49,622.622 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:15:49,625.625 INFO    ] No camera update needed
[2026-08-31 08:15:49,627.627 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:15:49,629.629 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:15:49,635.635 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:15:49,640.640 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:15:51,680.680 INFO    ] ================================================
[2026-08-31 08:15:51,695.695 INFO    ] Launching Daemon at Mon Aug 31 08:15:51 IST 2026
[2026-08-31 08:15:51,706.706 INFO    ] ================================================
[2026-08-31 08:15:52,276.276 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:15:52
[2026-08-31 08:15:52,876.876 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:15:53,152.152 INFO    ] Initializing speech engine...
[2026-08-31 08:15:53,160.160 INFO    ] 2026-08-31 08:15:53
[2026-08-31 08:15:53,419.419 INFO    ] 2026-08-31 08:15:53
[2026-08-31 08:15:53,472.472 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:15:53,694.694 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:15:53,703.703 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:15:53,922.922 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:15:53,960.960 INFO    ] time= 31/08/2026 08:15:53
[2026-08-31 08:15:53,966.966 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:15:53,984.984 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:15:54,104.104 INFO    ] No existing commands found in stream
[2026-08-31 08:15:59,125.125 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:15:59,128.128 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-08-31 08:16:00,654.654 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 08:16:00,656.656 INFO    ] Checking for system updates...
[2026-08-31 08:16:00,692.692 INFO    ] 200
[2026-08-31 08:16:00,695.695 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:16:00,748.748 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:16:00,751.751 INFO    ] No update needed
[2026-08-31 08:16:00,753.753 INFO    ] Checking for camera pi updates...
[2026-08-31 08:16:00,786.786 INFO    ] 200
[2026-08-31 08:16:00,789.789 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:16:00,835.835 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:16:00,917.917 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:16:00,919.919 INFO    ] No camera update needed
[2026-08-31 08:16:00,922.922 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:16:00,924.924 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:16:00,929.929 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:16:00,934.934 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:16:02,979.979 INFO    ] ================================================
[2026-08-31 08:16:02,994.994 INFO    ] Launching Daemon at Mon Aug 31 08:16:02 IST 2026
[2026-08-31 08:16:03,005.005 INFO    ] ================================================
[2026-08-31 08:16:03,646.646 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:16:03
[2026-08-31 08:16:04,297.297 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:16:04,599.599 INFO    ] Initializing speech engine...
[2026-08-31 08:16:04,608.608 INFO    ] 2026-08-31 08:16:04
[2026-08-31 08:16:04,879.879 INFO    ] 2026-08-31 08:16:04
[2026-08-31 08:16:04,943.943 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:16:05,175.175 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:16:05,185.185 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:16:05,324.324 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:16:05,384.384 INFO    ] time= 31/08/2026 08:16:05
[2026-08-31 08:16:05,435.435 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:16:05,465.465 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:16:05,580.580 INFO    ] No existing commands found in stream
[2026-08-31 08:16:10,602.602 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:16:10,605.605 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-08-31 08:16:11,908.908 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 08:16:11,911.911 INFO    ] Checking for system updates...
[2026-08-31 08:16:11,947.947 INFO    ] 200
[2026-08-31 08:16:11,950.950 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:16:12,008.008 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:16:12,010.010 INFO    ] No update needed
[2026-08-31 08:16:12,013.013 INFO    ] Checking for camera pi updates...
[2026-08-31 08:16:12,052.052 INFO    ] 200
[2026-08-31 08:16:12,054.054 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:16:12,099.099 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:16:17,262.262 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:16:17,264.264 INFO    ] No camera update needed
[2026-08-31 08:16:17,267.267 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:16:17,270.270 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:16:17,276.276 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:16:17,281.281 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:16:19,321.321 INFO    ] ================================================
[2026-08-31 08:16:19,336.336 INFO    ] Launching Daemon at Mon Aug 31 08:16:19 IST 2026
[2026-08-31 08:16:19,348.348 INFO    ] ================================================
[2026-08-31 08:16:19,914.914 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:16:19
[2026-08-31 08:16:20,495.495 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:16:20,764.764 INFO    ] Initializing speech engine...
[2026-08-31 08:16:20,773.773 INFO    ] 2026-08-31 08:16:20
[2026-08-31 08:16:21,022.022 INFO    ] 2026-08-31 08:16:21
[2026-08-31 08:16:21,057.057 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:16:21,315.315 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:16:21,324.324 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:16:21,460.460 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:16:21,507.507 INFO    ] time= 31/08/2026 08:16:21
[2026-08-31 08:16:21,556.556 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:16:21,596.596 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:16:21,727.727 INFO    ] No existing commands found in stream
[2026-08-31 08:16:26,752.752 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:16:26,755.755 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-08-31 08:16:27,561.561 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 08:16:27,563.563 INFO    ] Checking for system updates...
[2026-08-31 08:16:27,601.601 INFO    ] 200
[2026-08-31 08:16:27,603.603 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:16:27,654.654 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:16:27,657.657 INFO    ] No update needed
[2026-08-31 08:16:27,660.660 INFO    ] Checking for camera pi updates...
[2026-08-31 08:16:27,694.694 INFO    ] 200
[2026-08-31 08:16:27,696.696 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:16:27,736.736 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:16:27,823.823 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:16:27,826.826 INFO    ] No camera update needed
[2026-08-31 08:16:27,828.828 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:16:27,830.830 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:16:27,835.835 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:16:27,840.840 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:16:29,882.882 INFO    ] ================================================
[2026-08-31 08:16:29,897.897 INFO    ] Launching Daemon at Mon Aug 31 08:16:29 IST 2026
[2026-08-31 08:16:29,908.908 INFO    ] ================================================
[2026-08-31 08:16:30,529.529 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:16:30
[2026-08-31 08:16:31,168.168 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:16:31,470.470 INFO    ] Initializing speech engine...
[2026-08-31 08:16:31,483.483 INFO    ] 2026-08-31 08:16:31
[2026-08-31 08:16:31,757.757 INFO    ] 2026-08-31 08:16:31
[2026-08-31 08:16:31,794.794 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:16:32,026.026 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:16:32,071.071 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:16:32,263.263 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:16:32,314.314 INFO    ] time= 31/08/2026 08:16:32
[2026-08-31 08:16:32,369.369 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:16:32,414.414 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:16:32,484.484 INFO    ] No existing commands found in stream
[2026-08-31 08:16:37,515.515 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:16:37,518.518 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-08-31 08:16:38,058.058 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 08:16:38,061.061 INFO    ] Checking for system updates...
[2026-08-31 08:16:38,097.097 INFO    ] 200
[2026-08-31 08:16:38,100.100 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:16:38,160.160 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:16:38,163.163 INFO    ] No update needed
[2026-08-31 08:16:38,165.165 INFO    ] Checking for camera pi updates...
[2026-08-31 08:16:38,199.199 INFO    ] 200
[2026-08-31 08:16:38,201.201 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:16:38,242.242 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:16:38,311.311 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:16:38,313.313 INFO    ] No camera update needed
[2026-08-31 08:16:38,316.316 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:16:38,318.318 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:16:38,323.323 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:16:38,328.328 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:16:40,369.369 INFO    ] ================================================
[2026-08-31 08:16:40,384.384 INFO    ] Launching Daemon at Mon Aug 31 08:16:40 IST 2026
[2026-08-31 08:16:40,396.396 INFO    ] ================================================
[2026-08-31 08:16:40,974.974 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:16:40
[2026-08-31 08:16:41,628.628 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:16:41,922.922 INFO    ] Initializing speech engine...
[2026-08-31 08:16:41,931.931 INFO    ] 2026-08-31 08:16:41
[2026-08-31 08:16:42,200.200 INFO    ] 2026-08-31 08:16:42
[2026-08-31 08:16:42,254.254 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:16:42,540.540 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:16:42,548.548 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:16:42,746.746 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:16:42,765.765 INFO    ] time= 31/08/2026 08:16:42
[2026-08-31 08:16:42,794.794 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:16:42,804.804 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:16:42,906.906 INFO    ] No existing commands found in stream
[2026-08-31 08:16:47,931.931 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:16:47,934.934 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-08-31 08:16:48,652.652 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 08:16:48,655.655 INFO    ] Checking for system updates...
[2026-08-31 08:16:48,691.691 INFO    ] 200
[2026-08-31 08:16:48,694.694 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:16:48,747.747 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:16:48,750.750 INFO    ] No update needed
[2026-08-31 08:16:48,752.752 INFO    ] Checking for camera pi updates...
[2026-08-31 08:16:48,790.790 INFO    ] 200
[2026-08-31 08:16:48,792.792 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:16:48,841.841 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:16:48,943.943 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:16:48,946.946 INFO    ] No camera update needed
[2026-08-31 08:16:48,948.948 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:16:48,951.951 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:16:48,956.956 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:16:48,961.961 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:16:51,000.000 INFO    ] ================================================
[2026-08-31 08:16:51,017.017 INFO    ] Launching Daemon at Mon Aug 31 08:16:51 IST 2026
[2026-08-31 08:16:51,028.028 INFO    ] ================================================
[2026-08-31 08:16:51,617.617 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:16:51
[2026-08-31 08:16:52,207.207 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:16:52,479.479 INFO    ] Initializing speech engine...
[2026-08-31 08:16:52,488.488 INFO    ] 2026-08-31 08:16:52
[2026-08-31 08:16:52,760.760 INFO    ] 2026-08-31 08:16:52
[2026-08-31 08:16:52,814.814 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:16:53,038.038 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:16:53,047.047 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:16:53,183.183 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:16:53,243.243 INFO    ] time= 31/08/2026 08:16:53
[2026-08-31 08:16:53,303.303 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:16:53,319.319 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:16:53,460.460 INFO    ] No existing commands found in stream
[2026-08-31 08:16:58,477.477 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:16:58,480.480 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-08-31 08:16:59,366.366 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 08:16:59,368.368 INFO    ] Checking for system updates...
[2026-08-31 08:16:59,404.404 INFO    ] 200
[2026-08-31 08:16:59,407.407 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:16:59,460.460 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:16:59,462.462 INFO    ] No update needed
[2026-08-31 08:16:59,464.464 INFO    ] Checking for camera pi updates...
[2026-08-31 08:16:59,497.497 INFO    ] 200
[2026-08-31 08:16:59,500.500 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:16:59,540.540 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:16:59,631.631 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:16:59,636.636 INFO    ] No camera update needed
[2026-08-31 08:16:59,638.638 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:16:59,641.641 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:16:59,646.646 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:16:59,651.651 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:17:01,695.695 INFO    ] ================================================
[2026-08-31 08:17:01,713.713 INFO    ] Launching Daemon at Mon Aug 31 08:17:01 IST 2026
[2026-08-31 08:17:01,725.725 INFO    ] ================================================
[2026-08-31 08:17:02,367.367 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:17:02
[2026-08-31 08:17:03,027.027 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:17:03,312.312 INFO    ] Initializing speech engine...
[2026-08-31 08:17:03,327.327 INFO    ] 2026-08-31 08:17:03
[2026-08-31 08:17:03,598.598 INFO    ] 2026-08-31 08:17:03
[2026-08-31 08:17:03,638.638 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:17:03,844.844 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:17:03,860.860 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:17:04,006.006 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:17:04,015.015 INFO    ] time= 31/08/2026 08:17:04
[2026-08-31 08:17:04,022.022 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:17:04,069.069 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:17:04,219.219 INFO    ] No existing commands found in stream
[2026-08-31 08:17:09,246.246 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:17:09,249.249 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-08-31 08:17:10,781.781 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 08:17:10,784.784 INFO    ] Checking for system updates...
[2026-08-31 08:17:10,822.822 INFO    ] 200
[2026-08-31 08:17:10,825.825 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:17:10,883.883 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:17:10,886.886 INFO    ] No update needed
[2026-08-31 08:17:10,888.888 INFO    ] Checking for camera pi updates...
[2026-08-31 08:17:10,922.922 INFO    ] 200
[2026-08-31 08:17:10,924.924 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:17:10,970.970 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:17:11,058.058 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:17:11,060.060 INFO    ] No camera update needed
[2026-08-31 08:17:11,063.063 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:17:11,065.065 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:17:11,070.070 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:17:11,075.075 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:17:13,115.115 INFO    ] ================================================
[2026-08-31 08:17:13,130.130 INFO    ] Launching Daemon at Mon Aug 31 08:17:13 IST 2026
[2026-08-31 08:17:13,141.141 INFO    ] ================================================
[2026-08-31 08:17:13,733.733 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:17:13
[2026-08-31 08:17:14,333.333 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:17:14,606.606 INFO    ] Initializing speech engine...
[2026-08-31 08:17:14,615.615 INFO    ] 2026-08-31 08:17:14
[2026-08-31 08:17:14,865.865 INFO    ] 2026-08-31 08:17:14
[2026-08-31 08:17:14,931.931 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:17:15,216.216 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:17:15,222.222 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:17:15,414.414 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:17:15,421.421 INFO    ] time= 31/08/2026 08:17:15
[2026-08-31 08:17:15,440.440 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:17:15,468.468 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:17:15,588.588 INFO    ] No existing commands found in stream
[2026-08-31 08:17:20,613.613 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:17:20,616.616 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-08-31 08:17:21,223.223 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 08:17:21,226.226 INFO    ] Checking for system updates...
[2026-08-31 08:17:21,261.261 INFO    ] 200
[2026-08-31 08:17:21,264.264 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:17:21,325.325 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:17:21,327.327 INFO    ] No update needed
[2026-08-31 08:17:21,330.330 INFO    ] Checking for camera pi updates...
[2026-08-31 08:17:21,367.367 INFO    ] 200
[2026-08-31 08:17:21,370.370 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:17:21,420.420 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:17:21,528.528 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:17:21,531.531 INFO    ] No camera update needed
[2026-08-31 08:17:21,533.533 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:17:21,535.535 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:17:21,541.541 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:17:21,546.546 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:17:23,588.588 INFO    ] ================================================
[2026-08-31 08:17:23,604.604 INFO    ] Launching Daemon at Mon Aug 31 08:17:23 IST 2026
[2026-08-31 08:17:23,616.616 INFO    ] ================================================
[2026-08-31 08:17:24,277.277 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:17:24
[2026-08-31 08:17:24,935.935 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:17:25,197.197 INFO    ] Initializing speech engine...
[2026-08-31 08:17:25,215.215 INFO    ] 2026-08-31 08:17:25
[2026-08-31 08:17:25,467.467 INFO    ] 2026-08-31 08:17:25
[2026-08-31 08:17:25,504.504 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:17:25,761.761 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:17:25,771.771 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:17:25,907.907 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:17:25,955.955 INFO    ] time= 31/08/2026 08:17:25
[2026-08-31 08:17:26,009.009 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:17:26,045.045 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:17:26,167.167 INFO    ] No existing commands found in stream
[2026-08-31 08:17:31,192.192 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:17:31,195.195 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-08-31 08:17:32,504.504 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 08:17:32,508.508 INFO    ] Checking for system updates...
[2026-08-31 08:17:32,550.550 INFO    ] 200
[2026-08-31 08:17:32,553.553 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:17:32,614.614 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:17:32,617.617 INFO    ] No update needed
[2026-08-31 08:17:32,619.619 INFO    ] Checking for camera pi updates...
[2026-08-31 08:17:32,654.654 INFO    ] 200
[2026-08-31 08:17:32,657.657 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:17:32,698.698 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:17:32,783.783 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:17:32,786.786 INFO    ] No camera update needed
[2026-08-31 08:17:32,788.788 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:17:32,791.791 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:17:32,797.797 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:17:32,803.803 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:17:34,846.846 INFO    ] ================================================
[2026-08-31 08:17:34,862.862 INFO    ] Launching Daemon at Mon Aug 31 08:17:34 IST 2026
[2026-08-31 08:17:34,874.874 INFO    ] ================================================
[2026-08-31 08:17:35,447.447 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:17:35
[2026-08-31 08:17:36,045.045 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:17:36,316.316 INFO    ] Initializing speech engine...
[2026-08-31 08:17:36,326.326 INFO    ] 2026-08-31 08:17:36
[2026-08-31 08:17:36,578.578 INFO    ] 2026-08-31 08:17:36
[2026-08-31 08:17:36,641.641 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:17:36,873.873 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:17:36,893.893 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:17:37,093.093 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:17:37,134.134 INFO    ] time= 31/08/2026 08:17:37
[2026-08-31 08:17:37,151.151 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:17:37,182.182 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:17:37,276.276 INFO    ] No existing commands found in stream
[2026-08-31 08:17:42,297.297 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:17:42,300.300 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-08-31 08:17:46,129.129 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 08:17:46,132.132 INFO    ] Checking for system updates...
[2026-08-31 08:17:46,168.168 INFO    ] 200
[2026-08-31 08:17:46,170.170 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:17:46,229.229 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:17:46,232.232 INFO    ] No update needed
[2026-08-31 08:17:46,234.234 INFO    ] Checking for camera pi updates...
[2026-08-31 08:17:46,272.272 INFO    ] 200
[2026-08-31 08:17:46,274.274 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:17:46,315.315 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:17:46,395.395 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:17:46,398.398 INFO    ] No camera update needed
[2026-08-31 08:17:46,400.400 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:17:46,402.402 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:17:46,408.408 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:17:46,413.413 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:17:48,452.452 INFO    ] ================================================
[2026-08-31 08:17:48,468.468 INFO    ] Launching Daemon at Mon Aug 31 08:17:48 IST 2026
[2026-08-31 08:17:48,480.480 INFO    ] ================================================
[2026-08-31 08:17:49,143.143 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:17:49
[2026-08-31 08:17:49,821.821 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:17:50,130.130 INFO    ] Initializing speech engine...
[2026-08-31 08:17:50,138.138 INFO    ] 2026-08-31 08:17:50
[2026-08-31 08:17:50,429.429 INFO    ] 2026-08-31 08:17:50
[2026-08-31 08:17:50,473.473 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:17:50,705.705 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:17:50,711.711 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:17:50,929.929 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:17:50,975.975 INFO    ] time= 31/08/2026 08:17:50
[2026-08-31 08:17:50,994.994 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:17:51,020.020 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:17:51,156.156 INFO    ] No existing commands found in stream
[2026-08-31 08:17:56,188.188 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:17:56,191.191 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-08-31 08:18:00,619.619 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 08:18:00,622.622 INFO    ] Checking for system updates...
[2026-08-31 08:18:00,659.659 INFO    ] 200
[2026-08-31 08:18:00,662.662 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:18:00,722.722 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:18:00,725.725 INFO    ] No update needed
[2026-08-31 08:18:00,729.729 INFO    ] Checking for camera pi updates...
[2026-08-31 08:18:00,763.763 INFO    ] 200
[2026-08-31 08:18:00,766.766 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:18:00,811.811 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:18:00,893.893 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:18:00,895.895 INFO    ] No camera update needed
[2026-08-31 08:18:00,897.897 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:18:00,900.900 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:18:00,905.905 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:18:00,910.910 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:18:02,961.961 INFO    ] ================================================
[2026-08-31 08:18:02,982.982 INFO    ] Launching Daemon at Mon Aug 31 08:18:02 IST 2026
[2026-08-31 08:18:03,994.994 INFO    ] ================================================
[2026-08-31 08:18:03,630.630 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:18:03
[2026-08-31 08:18:04,224.224 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:18:04,481.481 INFO    ] Initializing speech engine...
[2026-08-31 08:18:04,488.488 INFO    ] 2026-08-31 08:18:04
[2026-08-31 08:18:04,785.785 INFO    ] 2026-08-31 08:18:04
[2026-08-31 08:18:04,823.823 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:18:05,047.047 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:18:05,112.112 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:18:05,268.268 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:18:05,301.301 INFO    ] time= 31/08/2026 08:18:05
[2026-08-31 08:18:05,350.350 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:18:05,400.400 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:18:05,496.496 INFO    ] No existing commands found in stream
[2026-08-31 08:18:10,532.532 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:18:10,535.535 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-08-31 08:18:12,341.341 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 08:18:12,343.343 INFO    ] Checking for system updates...
[2026-08-31 08:18:12,379.379 INFO    ] 200
[2026-08-31 08:18:12,381.381 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:18:12,441.441 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:18:12,443.443 INFO    ] No update needed
[2026-08-31 08:18:12,446.446 INFO    ] Checking for camera pi updates...
[2026-08-31 08:18:12,483.483 INFO    ] 200
[2026-08-31 08:18:12,485.485 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:18:12,525.525 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:18:12,606.606 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:18:12,608.608 INFO    ] No camera update needed
[2026-08-31 08:18:12,610.610 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:18:12,613.613 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:18:12,618.618 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:18:12,623.623 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:18:14,665.665 INFO    ] ================================================
[2026-08-31 08:18:14,681.681 INFO    ] Launching Daemon at Mon Aug 31 08:18:14 IST 2026
[2026-08-31 08:18:14,692.692 INFO    ] ================================================
[2026-08-31 08:18:15,273.273 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:18:15
[2026-08-31 08:18:15,870.870 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:18:16,148.148 INFO    ] Initializing speech engine...
[2026-08-31 08:18:16,155.155 INFO    ] 2026-08-31 08:18:16
[2026-08-31 08:18:16,415.415 INFO    ] 2026-08-31 08:18:16
[2026-08-31 08:18:16,446.446 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:18:16,690.690 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:18:16,700.700 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:18:16,874.874 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:18:16,934.934 INFO    ] time= 31/08/2026 08:18:16
[2026-08-31 08:18:16,961.961 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:18:16,966.966 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:18:17,101.101 INFO    ] No existing commands found in stream
[2026-08-31 08:18:22,122.122 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:18:22,125.125 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-08-31 08:18:23,742.742 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 08:18:23,744.744 INFO    ] Checking for system updates...
[2026-08-31 08:18:23,780.780 INFO    ] 200
[2026-08-31 08:18:23,783.783 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:18:23,836.836 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:18:23,839.839 INFO    ] No update needed
[2026-08-31 08:18:23,842.842 INFO    ] Checking for camera pi updates...
[2026-08-31 08:18:23,876.876 INFO    ] 200
[2026-08-31 08:18:23,879.879 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:18:23,924.924 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:18:24,129.129 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:18:24,132.132 INFO    ] No camera update needed
[2026-08-31 08:18:24,134.134 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:18:24,136.136 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:18:24,142.142 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:18:24,147.147 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:18:26,189.189 INFO    ] ================================================
[2026-08-31 08:18:26,205.205 INFO    ] Launching Daemon at Mon Aug 31 08:18:26 IST 2026
[2026-08-31 08:18:26,216.216 INFO    ] ================================================
[2026-08-31 08:18:26,850.850 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:18:26
[2026-08-31 08:18:27,503.503 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:18:27,805.805 INFO    ] Initializing speech engine...
[2026-08-31 08:18:27,814.814 INFO    ] 2026-08-31 08:18:27
[2026-08-31 08:18:28,090.090 INFO    ] 2026-08-31 08:18:28
[2026-08-31 08:18:28,144.144 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:18:28,430.430 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:18:28,439.439 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:18:28,639.639 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:18:28,646.646 INFO    ] time= 31/08/2026 08:18:28
[2026-08-31 08:18:28,668.668 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:18:28,698.698 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:18:28,801.801 INFO    ] No existing commands found in stream
[2026-08-31 08:18:33,816.816 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:18:33,820.820 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-08-31 08:18:35,764.764 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 08:18:35,767.767 INFO    ] Checking for system updates...
[2026-08-31 08:18:35,803.803 INFO    ] 200
[2026-08-31 08:18:35,805.805 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:18:35,861.861 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:18:35,864.864 INFO    ] No update needed
[2026-08-31 08:18:35,866.866 INFO    ] Checking for camera pi updates...
[2026-08-31 08:18:35,900.900 INFO    ] 200
[2026-08-31 08:18:35,902.902 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:18:35,943.943 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:18:36,052.052 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:18:36,054.054 INFO    ] No camera update needed
[2026-08-31 08:18:36,057.057 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:18:36,059.059 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:18:36,064.064 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:18:36,069.069 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:18:38,109.109 INFO    ] ================================================
[2026-08-31 08:18:38,124.124 INFO    ] Launching Daemon at Mon Aug 31 08:18:38 IST 2026
[2026-08-31 08:18:38,135.135 INFO    ] ================================================
[2026-08-31 08:18:38,702.702 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:18:38
[2026-08-31 08:18:39,285.285 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:18:39,555.555 INFO    ] Initializing speech engine...
[2026-08-31 08:18:39,563.563 INFO    ] 2026-08-31 08:18:39
[2026-08-31 08:18:39,816.816 INFO    ] 2026-08-31 08:18:39
[2026-08-31 08:18:39,852.852 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:18:40,110.110 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:18:40,119.119 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:18:40,257.257 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:18:40,291.291 INFO    ] time= 31/08/2026 08:18:40
[2026-08-31 08:18:40,345.345 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:18:40,391.391 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:18:40,523.523 INFO    ] No existing commands found in stream
[2026-08-31 08:18:45,551.551 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:18:45,553.553 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-08-31 08:18:47,249.249 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 08:18:47,251.251 INFO    ] Checking for system updates...
[2026-08-31 08:18:47,291.291 INFO    ] 200
[2026-08-31 08:18:47,294.294 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:18:47,353.353 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:18:47,355.355 INFO    ] No update needed
[2026-08-31 08:18:47,358.358 INFO    ] Checking for camera pi updates...
[2026-08-31 08:18:47,391.391 INFO    ] 200
[2026-08-31 08:18:47,393.393 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:18:47,438.438 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:18:47,522.522 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:18:47,525.525 INFO    ] No camera update needed
[2026-08-31 08:18:47,527.527 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:18:47,529.529 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:18:47,534.534 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:18:47,539.539 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:18:49,581.581 INFO    ] ================================================
[2026-08-31 08:18:49,596.596 INFO    ] Launching Daemon at Mon Aug 31 08:18:49 IST 2026
[2026-08-31 08:18:49,606.606 INFO    ] ================================================
[2026-08-31 08:18:50,181.181 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:18:50
[2026-08-31 08:18:50,780.780 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:18:51,056.056 INFO    ] Initializing speech engine...
[2026-08-31 08:18:51,062.062 INFO    ] 2026-08-31 08:18:51
[2026-08-31 08:18:51,324.324 INFO    ] 2026-08-31 08:18:51
[2026-08-31 08:18:51,390.390 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:18:51,646.646 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:18:51,656.656 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:18:51,813.813 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:18:51,873.873 INFO    ] time= 31/08/2026 08:18:51
[2026-08-31 08:18:51,935.935 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:18:51,965.965 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:18:52,111.111 INFO    ] No existing commands found in stream
[2026-08-31 08:18:57,137.137 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:18:57,140.140 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-08-31 08:19:01,052.052 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 08:19:01,055.055 INFO    ] Checking for system updates...
[2026-08-31 08:19:01,095.095 INFO    ] 200
[2026-08-31 08:19:01,097.097 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:19:01,158.158 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:19:01,160.160 INFO    ] No update needed
[2026-08-31 08:19:01,163.163 INFO    ] Checking for camera pi updates...
[2026-08-31 08:19:01,200.200 INFO    ] 200
[2026-08-31 08:19:01,202.202 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:19:01,244.244 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:19:01,329.329 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:19:01,332.332 INFO    ] No camera update needed
[2026-08-31 08:19:01,334.334 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:19:01,336.336 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:19:01,342.342 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:19:01,347.347 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:19:03,393.393 INFO    ] ================================================
[2026-08-31 08:19:03,408.408 INFO    ] Launching Daemon at Mon Aug 31 08:19:03 IST 2026
[2026-08-31 08:19:03,419.419 INFO    ] ================================================
[2026-08-31 08:19:04,051.051 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:19:04
[2026-08-31 08:19:04,705.705 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:19:05,005.005 INFO    ] Initializing speech engine...
[2026-08-31 08:19:05,019.019 INFO    ] 2026-08-31 08:19:05
[2026-08-31 08:19:05,294.294 INFO    ] 2026-08-31 08:19:05
[2026-08-31 08:19:05,349.349 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:19:05,619.619 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:19:05,629.629 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:19:05,822.822 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:19:05,830.830 INFO    ] time= 31/08/2026 08:19:05
[2026-08-31 08:19:05,846.846 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:19:05,876.876 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:19:06,018.018 INFO    ] No existing commands found in stream
[2026-08-31 08:19:11,049.049 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:19:11,052.052 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-08-31 08:19:11,984.984 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 08:19:11,988.988 INFO    ] Checking for system updates...
[2026-08-31 08:19:12,025.025 INFO    ] 200
[2026-08-31 08:19:12,028.028 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:19:12,082.082 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:19:12,084.084 INFO    ] No update needed
[2026-08-31 08:19:12,086.086 INFO    ] Checking for camera pi updates...
[2026-08-31 08:19:12,121.121 INFO    ] 200
[2026-08-31 08:19:12,123.123 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:19:12,164.164 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:19:12,260.260 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:19:12,263.263 INFO    ] No camera update needed
[2026-08-31 08:19:12,265.265 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:19:12,267.267 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:19:12,273.273 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:19:12,277.277 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:19:14,316.316 INFO    ] ================================================
[2026-08-31 08:19:14,332.332 INFO    ] Launching Daemon at Mon Aug 31 08:19:14 IST 2026
[2026-08-31 08:19:14,343.343 INFO    ] ================================================
[2026-08-31 08:19:14,908.908 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:19:14
[2026-08-31 08:19:15,490.490 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:19:15,756.756 INFO    ] Initializing speech engine...
[2026-08-31 08:19:15,769.769 INFO    ] 2026-08-31 08:19:15
[2026-08-31 08:19:16,019.019 INFO    ] 2026-08-31 08:19:16
[2026-08-31 08:19:16,054.054 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:19:16,311.311 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:19:16,320.320 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:19:16,455.455 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:19:16,497.497 INFO    ] time= 31/08/2026 08:19:16
[2026-08-31 08:19:16,551.551 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:19:16,591.591 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:19:16,647.647 INFO    ] No existing commands found in stream
[2026-08-31 08:19:21,659.659 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:19:21,661.661 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-08-31 08:19:23,141.141 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 08:19:23,144.144 INFO    ] Checking for system updates...
[2026-08-31 08:19:23,184.184 INFO    ] 200
[2026-08-31 08:19:23,186.186 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:19:23,238.238 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:19:23,241.241 INFO    ] No update needed
[2026-08-31 08:19:23,243.243 INFO    ] Checking for camera pi updates...
[2026-08-31 08:19:23,280.280 INFO    ] 200
[2026-08-31 08:19:23,282.282 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:19:23,322.322 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:19:23,402.402 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:19:23,404.404 INFO    ] No camera update needed
[2026-08-31 08:19:23,407.407 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:19:23,409.409 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:19:23,414.414 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:19:23,419.419 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:19:25,462.462 INFO    ] ================================================
[2026-08-31 08:19:25,476.476 INFO    ] Launching Daemon at Mon Aug 31 08:19:25 IST 2026
[2026-08-31 08:19:25,487.487 INFO    ] ================================================
[2026-08-31 08:19:26,066.066 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:19:26
[2026-08-31 08:19:26,663.663 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:19:26,940.940 INFO    ] Initializing speech engine...
[2026-08-31 08:19:26,946.946 INFO    ] 2026-08-31 08:19:26
[2026-08-31 08:19:27,210.210 INFO    ] 2026-08-31 08:19:27
[2026-08-31 08:19:27,264.264 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:19:27,491.491 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:19:27,496.496 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:19:27,709.709 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:19:27,753.753 INFO    ] time= 31/08/2026 08:19:27
[2026-08-31 08:19:27,759.759 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:19:27,776.776 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:19:27,886.886 INFO    ] No existing commands found in stream
[2026-08-31 08:19:32,913.913 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:19:32,916.916 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-08-31 08:19:36,459.459 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 08:19:36,461.461 INFO    ] Checking for system updates...
[2026-08-31 08:19:36,502.502 INFO    ] 200
[2026-08-31 08:19:36,504.504 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:19:36,563.563 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:19:36,565.565 INFO    ] No update needed
[2026-08-31 08:19:36,568.568 INFO    ] Checking for camera pi updates...
[2026-08-31 08:19:36,602.602 INFO    ] 200
[2026-08-31 08:19:36,605.605 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:19:36,646.646 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:19:36,956.956 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:19:36,960.960 INFO    ] No camera update needed
[2026-08-31 08:19:36,962.962 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:19:36,965.965 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:19:36,971.971 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:19:36,977.977 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:19:39,019.019 INFO    ] ================================================
[2026-08-31 08:19:39,034.034 INFO    ] Launching Daemon at Mon Aug 31 08:19:39 IST 2026
[2026-08-31 08:19:39,045.045 INFO    ] ================================================
[2026-08-31 08:19:39,696.696 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:19:39
[2026-08-31 08:19:40,366.366 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:19:40,674.674 INFO    ] Initializing speech engine...
[2026-08-31 08:19:40,686.686 INFO    ] 2026-08-31 08:19:40
[2026-08-31 08:19:40,993.993 INFO    ] 2026-08-31 08:19:40
[2026-08-31 08:19:41,081.081 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:19:41,292.292 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:19:41,299.299 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:19:41,492.492 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:19:41,500.500 INFO    ] time= 31/08/2026 08:19:41
[2026-08-31 08:19:41,521.521 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:19:41,550.550 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:19:41,654.654 INFO    ] No existing commands found in stream
[2026-08-31 08:19:46,680.680 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:19:46,683.683 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-08-31 08:19:50,622.622 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 08:19:50,625.625 INFO    ] Checking for system updates...
[2026-08-31 08:19:50,665.665 INFO    ] 200
[2026-08-31 08:19:50,668.668 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:19:50,728.728 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:19:50,730.730 INFO    ] No update needed
[2026-08-31 08:19:50,733.733 INFO    ] Checking for camera pi updates...
[2026-08-31 08:19:50,768.768 INFO    ] 200
[2026-08-31 08:19:50,771.771 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:19:50,814.814 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:19:50,946.946 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:19:50,949.949 INFO    ] No camera update needed
[2026-08-31 08:19:50,952.952 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:19:50,954.954 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:19:50,961.961 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:19:50,966.966 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:19:53,009.009 INFO    ] ================================================
[2026-08-31 08:19:53,024.024 INFO    ] Launching Daemon at Mon Aug 31 08:19:53 IST 2026
[2026-08-31 08:19:53,035.035 INFO    ] ================================================
[2026-08-31 08:19:53,600.600 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:19:53
[2026-08-31 08:19:54,254.254 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:19:54,565.565 INFO    ] Initializing speech engine...
[2026-08-31 08:19:54,576.576 INFO    ] 2026-08-31 08:19:54
[2026-08-31 08:19:54,893.893 INFO    ] 2026-08-31 08:19:54
[2026-08-31 08:19:54,978.978 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:19:55,204.204 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:19:55,264.264 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:19:55,406.406 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:19:55,428.428 INFO    ] time= 31/08/2026 08:19:55
[2026-08-31 08:19:55,455.455 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:19:55,465.465 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:19:55,569.569 INFO    ] No existing commands found in stream
[2026-08-31 08:20:00,600.600 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:20:00,603.603 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-08-31 08:20:03,428.428 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 08:20:03,431.431 INFO    ] Checking for system updates...
[2026-08-31 08:20:03,471.471 INFO    ] 200
[2026-08-31 08:20:03,474.474 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:20:03,531.531 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:20:03,534.534 INFO    ] No update needed
[2026-08-31 08:20:03,536.536 INFO    ] Checking for camera pi updates...
[2026-08-31 08:20:03,573.573 INFO    ] 200
[2026-08-31 08:20:03,575.575 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:20:03,620.620 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:20:03,701.701 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:20:03,703.703 INFO    ] No camera update needed
[2026-08-31 08:20:03,706.706 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:20:03,708.708 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:20:03,713.713 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:20:03,718.718 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:20:05,758.758 INFO    ] ================================================
[2026-08-31 08:20:05,773.773 INFO    ] Launching Daemon at Mon Aug 31 08:20:05 IST 2026
[2026-08-31 08:20:05,784.784 INFO    ] ================================================
[2026-08-31 08:20:06,355.355 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:20:06
[2026-08-31 08:20:06,952.952 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:20:07,200.200 INFO    ] Initializing speech engine...
[2026-08-31 08:20:07,224.224 INFO    ] 2026-08-31 08:20:07
[2026-08-31 08:20:07,482.482 INFO    ] 2026-08-31 08:20:07
[2026-08-31 08:20:07,517.517 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:20:07,701.701 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:20:07,716.716 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:20:07,915.915 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:20:07,922.922 INFO    ] time= 31/08/2026 08:20:07
[2026-08-31 08:20:07,987.987 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:20:08,041.041 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:20:08,182.182 INFO    ] No existing commands found in stream
[2026-08-31 08:20:13,208.208 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:20:13,211.211 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-08-31 08:20:16,090.090 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 08:20:16,093.093 INFO    ] Checking for system updates...
[2026-08-31 08:20:16,132.132 INFO    ] 200
[2026-08-31 08:20:16,134.134 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:20:16,187.187 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:20:16,190.190 INFO    ] No update needed
[2026-08-31 08:20:16,192.192 INFO    ] Checking for camera pi updates...
[2026-08-31 08:20:16,226.226 INFO    ] 200
[2026-08-31 08:20:16,228.228 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:20:16,269.269 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:20:16,349.349 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:20:16,351.351 INFO    ] No camera update needed
[2026-08-31 08:20:16,353.353 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:20:16,356.356 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:20:16,361.361 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:20:16,366.366 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:20:18,407.407 INFO    ] ================================================
[2026-08-31 08:20:18,422.422 INFO    ] Launching Daemon at Mon Aug 31 08:20:18 IST 2026
[2026-08-31 08:20:18,433.433 INFO    ] ================================================
[2026-08-31 08:20:19,000.000 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:20:18
[2026-08-31 08:20:19,598.598 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:20:19,870.870 INFO    ] Initializing speech engine...
[2026-08-31 08:20:19,881.881 INFO    ] 2026-08-31 08:20:19
[2026-08-31 08:20:20,128.128 INFO    ] 2026-08-31 08:20:20
[2026-08-31 08:20:20,162.162 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:20:20,335.335 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:20:20,347.347 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:20:20,490.490 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:20:20,498.498 INFO    ] time= 31/08/2026 08:20:20
[2026-08-31 08:20:20,544.544 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:20:20,565.565 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:20:20,689.689 INFO    ] No existing commands found in stream
[2026-08-31 08:20:25,701.701 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:20:25,704.704 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-08-31 08:20:29,981.981 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 08:20:29,983.983 INFO    ] Checking for system updates...
[2026-08-31 08:20:30,024.024 INFO    ] 200
[2026-08-31 08:20:30,026.026 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:20:30,086.086 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:20:30,088.088 INFO    ] No update needed
[2026-08-31 08:20:30,091.091 INFO    ] Checking for camera pi updates...
[2026-08-31 08:20:30,124.124 INFO    ] 200
[2026-08-31 08:20:30,127.127 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:20:30,173.173 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:20:30,355.355 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:20:30,358.358 INFO    ] No camera update needed
[2026-08-31 08:20:30,360.360 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:20:30,362.362 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:20:30,368.368 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:20:30,373.373 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:20:32,414.414 INFO    ] ================================================
[2026-08-31 08:20:32,431.431 INFO    ] Launching Daemon at Mon Aug 31 08:20:32 IST 2026
[2026-08-31 08:20:32,443.443 INFO    ] ================================================
[2026-08-31 08:20:33,088.088 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:20:33
[2026-08-31 08:20:33,759.759 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:20:34,070.070 INFO    ] Initializing speech engine...
[2026-08-31 08:20:34,081.081 INFO    ] 2026-08-31 08:20:34
[2026-08-31 08:20:34,353.353 INFO    ] 2026-08-31 08:20:34
[2026-08-31 08:20:34,408.408 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:20:34,641.641 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:20:34,648.648 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:20:34,782.782 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:20:34,836.836 INFO    ] time= 31/08/2026 08:20:34
[2026-08-31 08:20:34,901.901 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:20:34,924.924 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:20:35,057.057 INFO    ] No existing commands found in stream
[2026-08-31 08:20:40,084.084 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:20:40,087.087 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-08-31 08:20:43,460.460 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 08:20:43,463.463 INFO    ] Checking for system updates...
[2026-08-31 08:20:43,504.504 INFO    ] 200
[2026-08-31 08:20:43,507.507 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:20:43,570.570 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:20:43,573.573 INFO    ] No update needed
[2026-08-31 08:20:43,576.576 INFO    ] Checking for camera pi updates...
[2026-08-31 08:20:43,615.615 INFO    ] 200
[2026-08-31 08:20:43,618.618 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:20:43,664.664 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:20:43,781.781 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:20:43,783.783 INFO    ] No camera update needed
[2026-08-31 08:20:43,786.786 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:20:43,789.789 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:20:43,795.795 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:20:43,801.801 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:20:45,845.845 INFO    ] ================================================
[2026-08-31 08:20:45,860.860 INFO    ] Launching Daemon at Mon Aug 31 08:20:45 IST 2026
[2026-08-31 08:20:45,870.870 INFO    ] ================================================
[2026-08-31 08:20:46,452.452 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:20:46
[2026-08-31 08:20:47,050.050 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:20:47,330.330 INFO    ] Initializing speech engine...
[2026-08-31 08:20:47,337.337 INFO    ] 2026-08-31 08:20:47
[2026-08-31 08:20:47,599.599 INFO    ] 2026-08-31 08:20:47
[2026-08-31 08:20:47,629.629 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:20:47,875.875 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:20:47,884.884 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:20:48,017.017 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:20:48,064.064 INFO    ] time= 31/08/2026 08:20:48
[2026-08-31 08:20:48,129.129 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:20:48,151.151 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:20:48,207.207 INFO    ] No existing commands found in stream
[2026-08-31 08:20:53,219.219 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:20:53,222.222 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-08-31 08:20:58,451.451 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 08:20:58,454.454 INFO    ] Checking for system updates...
[2026-08-31 08:20:58,495.495 INFO    ] 200
[2026-08-31 08:20:58,497.497 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:20:58,557.557 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:20:58,560.560 INFO    ] No update needed
[2026-08-31 08:20:58,562.562 INFO    ] Checking for camera pi updates...
[2026-08-31 08:20:58,597.597 INFO    ] 200
[2026-08-31 08:20:58,600.600 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:20:58,641.641 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:20:58,727.727 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:20:58,729.729 INFO    ] No camera update needed
[2026-08-31 08:20:58,732.732 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:20:58,734.734 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:20:58,740.740 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:20:58,745.745 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:21:00,786.786 INFO    ] ================================================
[2026-08-31 08:21:00,801.801 INFO    ] Launching Daemon at Mon Aug 31 08:21:00 IST 2026
[2026-08-31 08:21:00,812.812 INFO    ] ================================================
[2026-08-31 08:21:01,375.375 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:21:01
[2026-08-31 08:21:02,138.138 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:21:02,499.499 INFO    ] Initializing speech engine...
[2026-08-31 08:21:02,511.511 INFO    ] 2026-08-31 08:21:02
[2026-08-31 08:21:02,796.796 INFO    ] 2026-08-31 08:21:02
[2026-08-31 08:21:02,865.865 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:21:03,128.128 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:21:03,139.139 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:21:03,286.286 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:21:03,346.346 INFO    ] time= 31/08/2026 08:21:03
[2026-08-31 08:21:03,406.406 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:21:03,426.426 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:21:03,481.481 INFO    ] No existing commands found in stream
[2026-08-31 08:21:08,492.492 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:21:08,495.495 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-08-31 08:21:10,765.765 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 08:21:10,768.768 INFO    ] Checking for system updates...
[2026-08-31 08:21:10,817.817 INFO    ] 200
[2026-08-31 08:21:10,820.820 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:21:10,877.877 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:21:10,880.880 INFO    ] No update needed
[2026-08-31 08:21:10,883.883 INFO    ] Checking for camera pi updates...
[2026-08-31 08:21:10,923.923 INFO    ] 200
[2026-08-31 08:21:10,926.926 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:21:10,976.976 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:21:11,070.070 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:21:11,073.073 INFO    ] No camera update needed
[2026-08-31 08:21:11,075.075 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:21:11,078.078 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:21:11,084.084 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:21:11,090.090 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:21:13,135.135 INFO    ] ================================================
[2026-08-31 08:21:13,150.150 INFO    ] Launching Daemon at Mon Aug 31 08:21:13 IST 2026
[2026-08-31 08:21:13,163.163 INFO    ] ================================================
[2026-08-31 08:21:13,758.758 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:21:13
[2026-08-31 08:21:14,385.385 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:21:14,707.707 INFO    ] Initializing speech engine...
[2026-08-31 08:21:14,719.719 INFO    ] 2026-08-31 08:21:14
[2026-08-31 08:21:15,039.039 INFO    ] 2026-08-31 08:21:15
[2026-08-31 08:21:15,124.124 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:21:15,338.338 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:21:15,345.345 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:21:15,533.533 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:21:15,551.551 INFO    ] time= 31/08/2026 08:21:15
[2026-08-31 08:21:15,567.567 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:21:15,579.579 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:21:15,687.687 INFO    ] No existing commands found in stream
[2026-08-31 08:21:20,717.717 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:21:20,720.720 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-08-31 08:21:25,087.087 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 08:21:25,091.091 INFO    ] Checking for system updates...
[2026-08-31 08:21:25,128.128 INFO    ] 200
[2026-08-31 08:21:25,131.131 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:21:25,188.188 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:21:25,191.191 INFO    ] No update needed
[2026-08-31 08:21:25,194.194 INFO    ] Checking for camera pi updates...
[2026-08-31 08:21:25,234.234 INFO    ] 200
[2026-08-31 08:21:25,237.237 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:21:25,285.285 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:21:25,390.390 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:21:25,392.392 INFO    ] No camera update needed
[2026-08-31 08:21:25,395.395 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:21:25,398.398 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:21:25,404.404 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:21:25,411.411 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:21:27,453.453 INFO    ] ================================================
[2026-08-31 08:21:27,469.469 INFO    ] Launching Daemon at Mon Aug 31 08:21:27 IST 2026
[2026-08-31 08:21:27,479.479 INFO    ] ================================================
[2026-08-31 08:21:28,065.065 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:21:28
[2026-08-31 08:21:28,663.663 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:21:28,938.938 INFO    ] Initializing speech engine...
[2026-08-31 08:21:28,947.947 INFO    ] 2026-08-31 08:21:28
[2026-08-31 08:21:29,200.200 INFO    ] 2026-08-31 08:21:29
[2026-08-31 08:21:29,236.236 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:21:29,441.441 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:21:29,455.455 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:21:29,623.623 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:21:29,632.632 INFO    ] time= 31/08/2026 08:21:29
[2026-08-31 08:21:29,640.640 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:21:29,689.689 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:21:29,799.799 INFO    ] No existing commands found in stream
[2026-08-31 08:21:34,819.819 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:21:34,822.822 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-08-31 08:21:39,215.215 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 08:21:39,218.218 INFO    ] Checking for system updates...
[2026-08-31 08:21:39,258.258 INFO    ] 200
[2026-08-31 08:21:39,260.260 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:21:39,313.313 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:21:39,316.316 INFO    ] No update needed
[2026-08-31 08:21:39,318.318 INFO    ] Checking for camera pi updates...
[2026-08-31 08:21:39,355.355 INFO    ] 200
[2026-08-31 08:21:39,358.358 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:21:39,403.403 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:21:39,481.481 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:21:39,484.484 INFO    ] No camera update needed
[2026-08-31 08:21:39,486.486 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:21:39,489.489 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:21:39,496.496 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:21:39,512.512 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:21:41,552.552 INFO    ] ================================================
[2026-08-31 08:21:41,567.567 INFO    ] Launching Daemon at Mon Aug 31 08:21:41 IST 2026
[2026-08-31 08:21:41,577.577 INFO    ] ================================================
[2026-08-31 08:21:42,167.167 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:21:42
[2026-08-31 08:21:42,770.770 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:21:43,046.046 INFO    ] Initializing speech engine...
[2026-08-31 08:21:43,063.063 INFO    ] 2026-08-31 08:21:43
[2026-08-31 08:21:43,340.340 INFO    ] 2026-08-31 08:21:43
[2026-08-31 08:21:43,378.378 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:21:43,577.577 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:21:43,592.592 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:21:43,761.761 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:21:43,766.766 INFO    ] time= 31/08/2026 08:21:43
[2026-08-31 08:21:43,773.773 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:21:43,816.816 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:21:43,929.929 INFO    ] No existing commands found in stream
[2026-08-31 08:21:48,954.954 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:21:48,957.957 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-08-31 08:21:49,765.765 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 08:21:49,768.768 INFO    ] Checking for system updates...
[2026-08-31 08:21:49,803.803 INFO    ] 200
[2026-08-31 08:21:49,806.806 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:21:49,858.858 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:21:49,860.860 INFO    ] No update needed
[2026-08-31 08:21:49,863.863 INFO    ] Checking for camera pi updates...
[2026-08-31 08:21:49,896.896 INFO    ] 200
[2026-08-31 08:21:49,899.899 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:21:49,939.939 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:21:50,021.021 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:21:50,024.024 INFO    ] No camera update needed
[2026-08-31 08:21:50,026.026 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:21:50,028.028 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:21:50,034.034 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:21:50,039.039 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:21:52,079.079 INFO    ] ================================================
[2026-08-31 08:21:52,095.095 INFO    ] Launching Daemon at Mon Aug 31 08:21:52 IST 2026
[2026-08-31 08:21:52,105.105 INFO    ] ================================================
[2026-08-31 08:21:52,762.762 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:21:52
[2026-08-31 08:21:53,437.437 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:21:53,745.745 INFO    ] Initializing speech engine...
[2026-08-31 08:21:53,758.758 INFO    ] 2026-08-31 08:21:53
[2026-08-31 08:21:54,029.029 INFO    ] 2026-08-31 08:21:54
[2026-08-31 08:21:54,084.084 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:21:54,318.318 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:21:54,324.324 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:21:54,471.471 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:21:54,531.531 INFO    ] time= 31/08/2026 08:21:54
[2026-08-31 08:21:54,586.586 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:21:54,598.598 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:21:54,771.771 INFO    ] No existing commands found in stream
[2026-08-31 08:21:59,802.802 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:21:59,806.806 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-08-31 08:22:03,690.690 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 08:22:03,693.693 INFO    ] Checking for system updates...
[2026-08-31 08:22:03,735.735 INFO    ] 200
[2026-08-31 08:22:03,738.738 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:22:03,793.793 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:22:03,795.795 INFO    ] No update needed
[2026-08-31 08:22:03,798.798 INFO    ] Checking for camera pi updates...
[2026-08-31 08:22:03,838.838 INFO    ] 200
[2026-08-31 08:22:03,841.841 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:22:03,888.888 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:22:03,985.985 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:22:03,988.988 INFO    ] No camera update needed
[2026-08-31 08:22:03,991.991 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:22:03,994.994 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:22:04,000.000 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:22:04,006.006 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:22:06,049.049 INFO    ] ================================================
[2026-08-31 08:22:06,064.064 INFO    ] Launching Daemon at Mon Aug 31 08:22:06 IST 2026
[2026-08-31 08:22:06,075.075 INFO    ] ================================================
[2026-08-31 08:22:06,678.678 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:22:06
[2026-08-31 08:22:07,264.264 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:22:07,552.552 INFO    ] Initializing speech engine...
[2026-08-31 08:22:07,564.564 INFO    ] 2026-08-31 08:22:07
[2026-08-31 08:22:07,843.843 INFO    ] 2026-08-31 08:22:07
[2026-08-31 08:22:07,881.881 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:22:08,094.094 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:22:08,111.111 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:22:08,341.341 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:22:08,359.359 INFO    ] time= 31/08/2026 08:22:08
[2026-08-31 08:22:08,414.414 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:22:08,458.458 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:22:08,558.558 INFO    ] No existing commands found in stream
[2026-08-31 08:22:13,570.570 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:22:13,572.572 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-08-31 08:22:15,911.911 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 08:22:15,914.914 INFO    ] Checking for system updates...
[2026-08-31 08:22:15,950.950 INFO    ] 200
[2026-08-31 08:22:15,952.952 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:22:16,004.004 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:22:16,007.007 INFO    ] No update needed
[2026-08-31 08:22:16,009.009 INFO    ] Checking for camera pi updates...
[2026-08-31 08:22:16,042.042 INFO    ] 200
[2026-08-31 08:22:16,045.045 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:22:16,085.085 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:22:16,165.165 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:22:16,167.167 INFO    ] No camera update needed
[2026-08-31 08:22:16,170.170 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:22:16,172.172 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:22:16,177.177 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:22:16,183.183 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:22:18,223.223 INFO    ] ================================================
[2026-08-31 08:22:18,238.238 INFO    ] Launching Daemon at Mon Aug 31 08:22:18 IST 2026
[2026-08-31 08:22:18,249.249 INFO    ] ================================================
[2026-08-31 08:22:18,923.923 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:22:18
[2026-08-31 08:22:19,537.537 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:22:19,802.802 INFO    ] Initializing speech engine...
[2026-08-31 08:22:19,819.819 INFO    ] 2026-08-31 08:22:19
[2026-08-31 08:22:20,097.097 INFO    ] 2026-08-31 08:22:20
[2026-08-31 08:22:20,132.132 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:22:20,337.337 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:22:20,342.342 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:22:20,481.481 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:22:20,488.488 INFO    ] time= 31/08/2026 08:22:20
[2026-08-31 08:22:20,503.503 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:22:20,533.533 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:22:20,619.619 INFO    ] No existing commands found in stream
[2026-08-31 08:22:25,632.632 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:22:25,634.634 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-08-31 08:22:29,712.712 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 08:22:29,715.715 INFO    ] Checking for system updates...
[2026-08-31 08:22:29,752.752 INFO    ] 200
[2026-08-31 08:22:29,755.755 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:22:29,810.810 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:22:29,813.813 INFO    ] No update needed
[2026-08-31 08:22:29,816.816 INFO    ] Checking for camera pi updates...
[2026-08-31 08:22:29,852.852 INFO    ] 200
[2026-08-31 08:22:29,855.855 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:22:29,898.898 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:22:29,972.972 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:22:29,975.975 INFO    ] No camera update needed
[2026-08-31 08:22:29,977.977 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:22:29,980.980 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:22:29,987.987 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:22:29,993.993 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:22:32,037.037 INFO    ] ================================================
[2026-08-31 08:22:32,057.057 INFO    ] Launching Daemon at Mon Aug 31 08:22:32 IST 2026
[2026-08-31 08:22:32,073.073 INFO    ] ================================================
[2026-08-31 08:22:32,679.679 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:22:32
[2026-08-31 08:22:33,308.308 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:22:33,573.573 INFO    ] Initializing speech engine...
[2026-08-31 08:22:33,580.580 INFO    ] 2026-08-31 08:22:33
[2026-08-31 08:22:33,883.883 INFO    ] 2026-08-31 08:22:33
[2026-08-31 08:22:33,909.909 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:22:34,136.136 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:22:34,154.154 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:22:34,316.316 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:22:34,336.336 INFO    ] time= 31/08/2026 08:22:34
[2026-08-31 08:22:34,393.393 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:22:34,401.401 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:22:34,525.525 INFO    ] No existing commands found in stream
[2026-08-31 08:22:39,550.550 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:22:39,553.553 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-08-31 08:22:43,821.821 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 08:22:43,823.823 INFO    ] Checking for system updates...
[2026-08-31 08:22:43,860.860 INFO    ] 200
[2026-08-31 08:22:43,862.862 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:22:43,914.914 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:22:43,917.917 INFO    ] No update needed
[2026-08-31 08:22:43,919.919 INFO    ] Checking for camera pi updates...
[2026-08-31 08:22:43,953.953 INFO    ] 200
[2026-08-31 08:22:43,956.956 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:22:44,000.000 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:22:44,088.088 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:22:44,091.091 INFO    ] No camera update needed
[2026-08-31 08:22:44,093.093 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:22:44,095.095 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:22:44,101.101 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:22:44,106.106 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:22:46,146.146 INFO    ] ================================================
[2026-08-31 08:22:46,162.162 INFO    ] Launching Daemon at Mon Aug 31 08:22:46 IST 2026
[2026-08-31 08:22:46,179.179 INFO    ] ================================================
[2026-08-31 08:22:46,766.766 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:22:46
[2026-08-31 08:22:47,371.371 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:22:47,651.651 INFO    ] Initializing speech engine...
[2026-08-31 08:22:47,659.659 INFO    ] 2026-08-31 08:22:47
[2026-08-31 08:22:47,918.918 INFO    ] 2026-08-31 08:22:47
[2026-08-31 08:22:47,975.975 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:22:48,208.208 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:22:48,214.214 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:22:48,348.348 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:22:48,384.384 INFO    ] time= 31/08/2026 08:22:48
[2026-08-31 08:22:48,439.439 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:22:48,484.484 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:22:48,617.617 INFO    ] No existing commands found in stream
[2026-08-31 08:22:53,642.642 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:22:53,645.645 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-08-31 08:22:54,333.333 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 08:22:54,335.335 INFO    ] Checking for system updates...
[2026-08-31 08:22:54,375.375 INFO    ] 200
[2026-08-31 08:22:54,377.377 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:22:54,429.429 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:22:54,432.432 INFO    ] No update needed
[2026-08-31 08:22:54,434.434 INFO    ] Checking for camera pi updates...
[2026-08-31 08:22:54,468.468 INFO    ] 200
[2026-08-31 08:22:54,470.470 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:22:54,510.510 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:22:54,609.609 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:22:54,612.612 INFO    ] No camera update needed
[2026-08-31 08:22:54,614.614 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:22:54,616.616 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:22:54,622.622 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:22:54,627.627 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:22:56,666.666 INFO    ] ================================================
[2026-08-31 08:22:56,681.681 INFO    ] Launching Daemon at Mon Aug 31 08:22:56 IST 2026
[2026-08-31 08:22:56,692.692 INFO    ] ================================================
[2026-08-31 08:22:57,257.257 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:22:57
[2026-08-31 08:22:57,841.841 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:22:58,132.132 INFO    ] Initializing speech engine...
[2026-08-31 08:22:58,143.143 INFO    ] 2026-08-31 08:22:58
[2026-08-31 08:22:58,423.423 INFO    ] 2026-08-31 08:22:58
[2026-08-31 08:22:58,483.483 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:22:58,720.720 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:22:58,742.742 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:22:58,952.952 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:22:58,988.988 INFO    ] time= 31/08/2026 08:22:58
[2026-08-31 08:22:59,007.007 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:22:59,016.016 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:22:59,178.178 INFO    ] No existing commands found in stream
[2026-08-31 08:23:04,204.204 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:23:04,208.208 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-08-31 08:23:05,185.185 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 08:23:05,189.189 INFO    ] Checking for system updates...
[2026-08-31 08:23:05,226.226 INFO    ] 200
[2026-08-31 08:23:05,229.229 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:23:05,281.281 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:23:05,284.284 INFO    ] No update needed
[2026-08-31 08:23:05,286.286 INFO    ] Checking for camera pi updates...
[2026-08-31 08:23:05,321.321 INFO    ] 200
[2026-08-31 08:23:05,323.323 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:23:05,368.368 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:23:05,461.461 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:23:05,464.464 INFO    ] No camera update needed
[2026-08-31 08:23:05,466.466 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:23:05,469.469 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:23:05,474.474 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:23:05,479.479 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:23:07,519.519 INFO    ] ================================================
[2026-08-31 08:23:07,534.534 INFO    ] Launching Daemon at Mon Aug 31 08:23:07 IST 2026
[2026-08-31 08:23:07,545.545 INFO    ] ================================================
[2026-08-31 08:23:08,215.215 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:23:08
[2026-08-31 08:23:08,902.902 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:23:09,209.209 INFO    ] Initializing speech engine...
[2026-08-31 08:23:09,216.216 INFO    ] 2026-08-31 08:23:09
[2026-08-31 08:23:09,508.508 INFO    ] 2026-08-31 08:23:09
[2026-08-31 08:23:09,554.554 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:23:09,780.780 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:23:09,786.786 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:23:10,020.020 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:23:10,043.043 INFO    ] time= 31/08/2026 08:23:10
[2026-08-31 08:23:10,050.050 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:23:10,072.072 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:23:10,210.210 INFO    ] No existing commands found in stream
[2026-08-31 08:23:15,237.237 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:23:15,240.240 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-08-31 08:23:15,963.963 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 08:23:15,967.967 INFO    ] Checking for system updates...
[2026-08-31 08:23:16,003.003 INFO    ] 200
[2026-08-31 08:23:16,006.006 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:23:16,058.058 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:23:16,060.060 INFO    ] No update needed
[2026-08-31 08:23:16,063.063 INFO    ] Checking for camera pi updates...
[2026-08-31 08:23:16,096.096 INFO    ] 200
[2026-08-31 08:23:16,099.099 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:23:16,139.139 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:23:16,249.249 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:23:16,251.251 INFO    ] No camera update needed
[2026-08-31 08:23:16,253.253 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:23:16,256.256 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:23:16,261.261 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:23:16,266.266 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:23:18,306.306 INFO    ] ================================================
[2026-08-31 08:23:18,321.321 INFO    ] Launching Daemon at Mon Aug 31 08:23:18 IST 2026
[2026-08-31 08:23:18,332.332 INFO    ] ================================================
[2026-08-31 08:23:18,899.899 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:23:18
[2026-08-31 08:23:19,484.484 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:23:19,743.743 INFO    ] Initializing speech engine...
[2026-08-31 08:23:19,752.752 INFO    ] 2026-08-31 08:23:19
[2026-08-31 08:23:20,054.054 INFO    ] 2026-08-31 08:23:20
[2026-08-31 08:23:20,090.090 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:23:20,293.293 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:23:20,301.301 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:23:20,439.439 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:23:20,445.445 INFO    ] time= 31/08/2026 08:23:20
[2026-08-31 08:23:20,449.449 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:23:20,469.469 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:23:20,576.576 INFO    ] No existing commands found in stream
[2026-08-31 08:23:25,592.592 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:23:25,594.594 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-08-31 08:23:26,806.806 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 08:23:26,808.808 INFO    ] Checking for system updates...
[2026-08-31 08:23:26,848.848 INFO    ] 200
[2026-08-31 08:23:26,851.851 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:23:26,903.903 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:23:26,905.905 INFO    ] No update needed
[2026-08-31 08:23:26,908.908 INFO    ] Checking for camera pi updates...
[2026-08-31 08:23:26,945.945 INFO    ] 200
[2026-08-31 08:23:26,948.948 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:23:26,988.988 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:23:27,093.093 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:23:27,096.096 INFO    ] No camera update needed
[2026-08-31 08:23:27,098.098 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:23:27,100.100 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:23:27,106.106 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:23:27,111.111 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:23:29,151.151 INFO    ] ================================================
[2026-08-31 08:23:29,166.166 INFO    ] Launching Daemon at Mon Aug 31 08:23:29 IST 2026
[2026-08-31 08:23:29,176.176 INFO    ] ================================================
[2026-08-31 08:23:29,756.756 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:23:29
[2026-08-31 08:23:30,363.363 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:23:30,633.633 INFO    ] Initializing speech engine...
[2026-08-31 08:23:30,642.642 INFO    ] 2026-08-31 08:23:30
[2026-08-31 08:23:30,936.936 INFO    ] 2026-08-31 08:23:30
[2026-08-31 08:23:30,982.982 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:23:31,237.237 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:23:31,247.247 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:23:31,385.385 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:23:31,431.431 INFO    ] time= 31/08/2026 08:23:31
[2026-08-31 08:23:31,485.485 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:23:31,522.522 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:23:31,664.664 INFO    ] No existing commands found in stream
[2026-08-31 08:23:36,692.692 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:23:36,695.695 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-08-31 08:23:41,150.150 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 08:23:41,153.153 INFO    ] Checking for system updates...
[2026-08-31 08:23:41,190.190 INFO    ] 200
[2026-08-31 08:23:41,193.193 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:23:41,245.245 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:23:41,248.248 INFO    ] No update needed
[2026-08-31 08:23:41,251.251 INFO    ] Checking for camera pi updates...
[2026-08-31 08:23:41,285.285 INFO    ] 200
[2026-08-31 08:23:41,287.287 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:23:41,328.328 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:23:41,411.411 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:23:41,413.413 INFO    ] No camera update needed
[2026-08-31 08:23:41,416.416 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:23:41,418.418 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:23:41,423.423 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:23:41,428.428 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:23:43,467.467 INFO    ] ================================================
[2026-08-31 08:23:43,482.482 INFO    ] Launching Daemon at Mon Aug 31 08:23:43 IST 2026
[2026-08-31 08:23:43,493.493 INFO    ] ================================================
[2026-08-31 08:23:44,065.065 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:23:44
[2026-08-31 08:23:44,646.646 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:23:44,904.904 INFO    ] Initializing speech engine...
[2026-08-31 08:23:44,923.923 INFO    ] 2026-08-31 08:23:44
[2026-08-31 08:23:45,171.171 INFO    ] 2026-08-31 08:23:45
[2026-08-31 08:23:45,207.207 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:23:45,407.407 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:23:45,466.466 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:23:45,608.608 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:23:45,673.673 INFO    ] time= 31/08/2026 08:23:45
[2026-08-31 08:23:45,737.737 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:23:45,744.744 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:23:45,881.881 INFO    ] No existing commands found in stream
[2026-08-31 08:23:50,903.903 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:23:50,905.905 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-08-31 08:23:53,694.694 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 08:23:53,696.696 INFO    ] Checking for system updates...
[2026-08-31 08:23:53,732.732 INFO    ] 200
[2026-08-31 08:23:53,735.735 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:23:53,794.794 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:23:53,797.797 INFO    ] No update needed
[2026-08-31 08:23:53,799.799 INFO    ] Checking for camera pi updates...
[2026-08-31 08:23:53,833.833 INFO    ] 200
[2026-08-31 08:23:53,835.835 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:23:53,878.878 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:23:53,964.964 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:23:53,966.966 INFO    ] No camera update needed
[2026-08-31 08:23:53,969.969 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:23:53,971.971 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:23:53,976.976 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:23:53,981.981 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:23:56,021.021 INFO    ] ================================================
[2026-08-31 08:23:56,036.036 INFO    ] Launching Daemon at Mon Aug 31 08:23:56 IST 2026
[2026-08-31 08:23:56,046.046 INFO    ] ================================================
[2026-08-31 08:23:56,614.614 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:23:56
[2026-08-31 08:23:57,202.202 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:23:57,455.455 INFO    ] Initializing speech engine...
[2026-08-31 08:23:57,461.461 INFO    ] 2026-08-31 08:23:57
[2026-08-31 08:23:57,762.762 INFO    ] 2026-08-31 08:23:57
[2026-08-31 08:23:57,787.787 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:23:57,997.997 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:23:58,015.015 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:23:58,182.182 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:23:58,187.187 INFO    ] time= 31/08/2026 08:23:58
[2026-08-31 08:23:58,194.194 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:23:58,218.218 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:23:58,354.354 INFO    ] No existing commands found in stream
[2026-08-31 08:24:03,379.379 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:24:03,382.382 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-08-31 08:24:07,817.817 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 08:24:07,820.820 INFO    ] Checking for system updates...
[2026-08-31 08:24:07,856.856 INFO    ] 200
[2026-08-31 08:24:07,859.859 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:24:07,915.915 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:24:07,917.917 INFO    ] No update needed
[2026-08-31 08:24:07,920.920 INFO    ] Checking for camera pi updates...
[2026-08-31 08:24:07,954.954 INFO    ] 200
[2026-08-31 08:24:07,956.956 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:24:07,998.998 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:24:08,097.097 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:24:08,100.100 INFO    ] No camera update needed
[2026-08-31 08:24:08,103.103 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:24:08,105.105 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:24:08,110.110 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:24:08,115.115 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:24:10,156.156 INFO    ] ================================================
[2026-08-31 08:24:10,171.171 INFO    ] Launching Daemon at Mon Aug 31 08:24:10 IST 2026
[2026-08-31 08:24:10,182.182 INFO    ] ================================================
[2026-08-31 08:24:10,762.762 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:24:10
[2026-08-31 08:24:11,360.360 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:24:11,619.619 INFO    ] Initializing speech engine...
[2026-08-31 08:24:11,627.627 INFO    ] 2026-08-31 08:24:11
[2026-08-31 08:24:11,928.928 INFO    ] 2026-08-31 08:24:11
[2026-08-31 08:24:11,964.964 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:24:12,164.164 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:24:12,180.180 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:24:12,343.343 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:24:12,351.351 INFO    ] time= 31/08/2026 08:24:12
[2026-08-31 08:24:12,359.359 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:24:12,393.393 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:24:12,530.530 INFO    ] No existing commands found in stream
[2026-08-31 08:24:17,550.550 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:24:17,553.553 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-08-31 08:24:18,528.528 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 08:24:18,530.530 INFO    ] Checking for system updates...
[2026-08-31 08:24:18,567.567 INFO    ] 200
[2026-08-31 08:24:18,569.569 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:24:18,622.622 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:24:18,625.625 INFO    ] No update needed
[2026-08-31 08:24:18,627.627 INFO    ] Checking for camera pi updates...
[2026-08-31 08:24:18,661.661 INFO    ] 200
[2026-08-31 08:24:18,663.663 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:24:18,704.704 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:24:18,785.785 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:24:18,788.788 INFO    ] No camera update needed
[2026-08-31 08:24:18,791.791 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:24:18,793.793 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:24:18,799.799 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:24:18,804.804 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:24:20,843.843 INFO    ] ================================================
[2026-08-31 08:24:20,859.859 INFO    ] Launching Daemon at Mon Aug 31 08:24:20 IST 2026
[2026-08-31 08:24:20,870.870 INFO    ] ================================================
[2026-08-31 08:24:21,526.526 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:24:21
[2026-08-31 08:24:22,201.201 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:24:22,508.508 INFO    ] Initializing speech engine...
[2026-08-31 08:24:22,515.515 INFO    ] 2026-08-31 08:24:22
[2026-08-31 08:24:22,794.794 INFO    ] 2026-08-31 08:24:22
[2026-08-31 08:24:22,851.851 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:24:23,076.076 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:24:23,087.087 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:24:23,222.222 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:24:23,275.275 INFO    ] time= 31/08/2026 08:24:23
[2026-08-31 08:24:23,329.329 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:24:23,360.360 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:24:23,517.517 INFO    ] No existing commands found in stream
[2026-08-31 08:24:28,545.545 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:24:28,549.549 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-08-31 08:24:32,033.033 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 08:24:32,036.036 INFO    ] Checking for system updates...
[2026-08-31 08:24:32,078.078 INFO    ] 200
[2026-08-31 08:24:32,081.081 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:24:32,150.150 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:24:32,153.153 INFO    ] No update needed
[2026-08-31 08:24:32,156.156 INFO    ] Checking for camera pi updates...
[2026-08-31 08:24:32,203.203 INFO    ] 200
[2026-08-31 08:24:32,205.205 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:24:32,256.256 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:24:32,307.307 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:24:32,309.309 INFO    ] No camera update needed
[2026-08-31 08:24:32,312.312 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:24:32,315.315 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:24:32,321.321 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:24:32,326.326 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:24:34,367.367 INFO    ] ================================================
[2026-08-31 08:24:34,383.383 INFO    ] Launching Daemon at Mon Aug 31 08:24:34 IST 2026
[2026-08-31 08:24:34,394.394 INFO    ] ================================================
[2026-08-31 08:24:35,070.070 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:24:35
[2026-08-31 08:24:35,808.808 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:24:36,144.144 INFO    ] Initializing speech engine...
[2026-08-31 08:24:36,157.157 INFO    ] 2026-08-31 08:24:36
[2026-08-31 08:24:36,456.456 INFO    ] 2026-08-31 08:24:36
[2026-08-31 08:24:36,494.494 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:24:36,744.744 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:24:36,754.754 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:24:36,987.987 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:24:37,028.028 INFO    ] time= 31/08/2026 08:24:36
[2026-08-31 08:24:37,051.051 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:24:37,069.069 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:24:37,180.180 INFO    ] No existing commands found in stream
[2026-08-31 08:24:42,206.206 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:24:42,210.210 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-08-31 08:24:45,084.084 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 08:24:45,088.088 INFO    ] Checking for system updates...
[2026-08-31 08:24:45,125.125 INFO    ] 200
[2026-08-31 08:24:45,128.128 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:24:45,180.180 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:24:45,182.182 INFO    ] No update needed
[2026-08-31 08:24:45,185.185 INFO    ] Checking for camera pi updates...
[2026-08-31 08:24:45,219.219 INFO    ] 200
[2026-08-31 08:24:45,221.221 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:24:45,263.263 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:24:45,458.458 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:24:45,460.460 INFO    ] No camera update needed
[2026-08-31 08:24:45,463.463 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:24:45,465.465 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:24:45,471.471 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:24:45,476.476 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:24:47,516.516 INFO    ] ================================================
[2026-08-31 08:24:47,532.532 INFO    ] Launching Daemon at Mon Aug 31 08:24:47 IST 2026
[2026-08-31 08:24:47,544.544 INFO    ] ================================================
[2026-08-31 08:24:48,177.177 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:24:48
[2026-08-31 08:24:48,808.808 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:24:49,096.096 INFO    ] Initializing speech engine...
[2026-08-31 08:24:49,108.108 INFO    ] 2026-08-31 08:24:49
[2026-08-31 08:24:49,379.379 INFO    ] 2026-08-31 08:24:49
[2026-08-31 08:24:49,414.414 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:24:49,665.665 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:24:49,687.687 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:24:49,900.900 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:24:49,951.951 INFO    ] time= 31/08/2026 08:24:49
[2026-08-31 08:24:49,958.958 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:24:49,976.976 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:24:50,113.113 INFO    ] No existing commands found in stream
[2026-08-31 08:24:55,141.141 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:24:55,144.144 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-08-31 08:24:58,623.623 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 08:24:58,626.626 INFO    ] Checking for system updates...
[2026-08-31 08:24:58,663.663 INFO    ] 200
[2026-08-31 08:24:58,665.665 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:24:58,721.721 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:24:58,724.724 INFO    ] No update needed
[2026-08-31 08:24:58,726.726 INFO    ] Checking for camera pi updates...
[2026-08-31 08:24:58,764.764 INFO    ] 200
[2026-08-31 08:24:58,767.767 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:24:58,808.808 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:24:58,877.877 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:24:58,880.880 INFO    ] No camera update needed
[2026-08-31 08:24:58,883.883 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:24:58,885.885 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:24:58,892.892 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:24:58,898.898 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:25:00,941.941 INFO    ] ================================================
[2026-08-31 08:25:00,956.956 INFO    ] Launching Daemon at Mon Aug 31 08:25:00 IST 2026
[2026-08-31 08:25:00,966.966 INFO    ] ================================================
[2026-08-31 08:25:01,822.822 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:25:01
[2026-08-31 08:25:02,684.684 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:25:02,980.980 INFO    ] Initializing speech engine...
[2026-08-31 08:25:02,998.998 INFO    ] 2026-08-31 08:25:02
[2026-08-31 08:25:03,338.338 INFO    ] 2026-08-31 08:25:03
[2026-08-31 08:25:03,366.366 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:25:03,557.557 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:25:03,608.608 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:25:03,788.788 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:25:03,798.798 INFO    ] time= 31/08/2026 08:25:03
[2026-08-31 08:25:03,806.806 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:25:03,812.812 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:25:03,978.978 INFO    ] No existing commands found in stream
[2026-08-31 08:25:09,003.003 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:25:09,006.006 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-08-31 08:25:10,252.252 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 08:25:10,255.255 INFO    ] Checking for system updates...
[2026-08-31 08:25:10,291.291 INFO    ] 200
[2026-08-31 08:25:10,294.294 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:25:10,347.347 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:25:10,350.350 INFO    ] No update needed
[2026-08-31 08:25:10,352.352 INFO    ] Checking for camera pi updates...
[2026-08-31 08:25:10,389.389 INFO    ] 200
[2026-08-31 08:25:10,391.391 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:25:10,431.431 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:25:10,521.521 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:25:10,523.523 INFO    ] No camera update needed
[2026-08-31 08:25:10,526.526 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:25:10,528.528 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:25:10,534.534 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:25:10,539.539 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:25:12,580.580 INFO    ] ================================================
[2026-08-31 08:25:12,595.595 INFO    ] Launching Daemon at Mon Aug 31 08:25:12 IST 2026
[2026-08-31 08:25:12,606.606 INFO    ] ================================================
[2026-08-31 08:25:13,192.192 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:25:13
[2026-08-31 08:25:13,800.800 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:25:14,062.062 INFO    ] Initializing speech engine...
[2026-08-31 08:25:14,079.079 INFO    ] 2026-08-31 08:25:14
[2026-08-31 08:25:14,335.335 INFO    ] 2026-08-31 08:25:14
[2026-08-31 08:25:14,371.371 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:25:14,628.628 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:25:14,634.634 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:25:14,850.850 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:25:14,891.891 INFO    ] time= 31/08/2026 08:25:14
[2026-08-31 08:25:14,897.897 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:25:14,915.915 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:25:15,048.048 INFO    ] No existing commands found in stream
[2026-08-31 08:25:20,070.070 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:25:20,073.073 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-08-31 08:25:21,459.459 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 08:25:21,462.462 INFO    ] Checking for system updates...
[2026-08-31 08:25:21,502.502 INFO    ] 200
[2026-08-31 08:25:21,504.504 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:25:21,558.558 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:25:21,560.560 INFO    ] No update needed
[2026-08-31 08:25:21,563.563 INFO    ] Checking for camera pi updates...
[2026-08-31 08:25:21,596.596 INFO    ] 200
[2026-08-31 08:25:21,599.599 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:25:21,639.639 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:25:21,719.719 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:25:21,721.721 INFO    ] No camera update needed
[2026-08-31 08:25:21,723.723 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:25:21,726.726 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:25:21,731.731 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:25:21,736.736 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:25:23,778.778 INFO    ] ================================================
[2026-08-31 08:25:23,794.794 INFO    ] Launching Daemon at Mon Aug 31 08:25:23 IST 2026
[2026-08-31 08:25:23,805.805 INFO    ] ================================================
[2026-08-31 08:25:24,386.386 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:25:24
[2026-08-31 08:25:24,989.989 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:25:25,262.262 INFO    ] Initializing speech engine...
[2026-08-31 08:25:25,271.271 INFO    ] 2026-08-31 08:25:25
[2026-08-31 08:25:25,533.533 INFO    ] 2026-08-31 08:25:25
[2026-08-31 08:25:25,587.587 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:25:25,872.872 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:25:25,880.880 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:25:26,074.074 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:25:26,080.080 INFO    ] time= 31/08/2026 08:25:26
[2026-08-31 08:25:26,098.098 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:25:26,126.126 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:25:26,233.233 INFO    ] No existing commands found in stream
[2026-08-31 08:25:31,249.249 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:25:31,252.252 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-08-31 08:25:35,176.176 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 08:25:35,180.180 INFO    ] Checking for system updates...
[2026-08-31 08:25:35,217.217 INFO    ] 200
[2026-08-31 08:25:35,220.220 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:25:35,282.282 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:25:35,285.285 INFO    ] No update needed
[2026-08-31 08:25:35,287.287 INFO    ] Checking for camera pi updates...
[2026-08-31 08:25:35,326.326 INFO    ] 200
[2026-08-31 08:25:35,330.330 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:25:35,378.378 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:25:35,485.485 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:25:35,488.488 INFO    ] No camera update needed
[2026-08-31 08:25:35,491.491 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:25:35,494.494 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:25:35,501.501 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:25:35,507.507 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:25:37,549.549 INFO    ] ================================================
[2026-08-31 08:25:37,564.564 INFO    ] Launching Daemon at Mon Aug 31 08:25:37 IST 2026
[2026-08-31 08:25:37,575.575 INFO    ] ================================================
[2026-08-31 08:25:38,164.164 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:25:38
[2026-08-31 08:25:38,772.772 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:25:39,040.040 INFO    ] Initializing speech engine...
[2026-08-31 08:25:39,057.057 INFO    ] 2026-08-31 08:25:39
[2026-08-31 08:25:39,349.349 INFO    ] 2026-08-31 08:25:39
[2026-08-31 08:25:39,389.389 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:25:39,618.618 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:25:39,626.626 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:25:39,853.853 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:25:39,860.860 INFO    ] time= 31/08/2026 08:25:39
[2026-08-31 08:25:39,879.879 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:25:39,933.933 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:25:40,050.050 INFO    ] No existing commands found in stream
[2026-08-31 08:25:45,075.075 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:25:45,079.079 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-08-31 08:25:49,293.293 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 08:25:49,296.296 INFO    ] Checking for system updates...
[2026-08-31 08:25:49,332.332 INFO    ] 200
[2026-08-31 08:25:49,334.334 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:25:49,394.394 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:25:49,397.397 INFO    ] No update needed
[2026-08-31 08:25:49,399.399 INFO    ] Checking for camera pi updates...
[2026-08-31 08:25:49,437.437 INFO    ] 200
[2026-08-31 08:25:49,440.440 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:25:49,480.480 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:25:49,565.565 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:25:49,568.568 INFO    ] No camera update needed
[2026-08-31 08:25:49,570.570 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:25:49,573.573 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:25:49,578.578 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:25:49,583.583 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:25:51,625.625 INFO    ] ================================================
[2026-08-31 08:25:51,641.641 INFO    ] Launching Daemon at Mon Aug 31 08:25:51 IST 2026
[2026-08-31 08:25:51,651.651 INFO    ] ================================================
[2026-08-31 08:25:52,231.231 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:25:52
[2026-08-31 08:25:52,828.828 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:25:53,104.104 INFO    ] Initializing speech engine...
[2026-08-31 08:25:53,111.111 INFO    ] 2026-08-31 08:25:53
[2026-08-31 08:25:53,357.357 INFO    ] 2026-08-31 08:25:53
[2026-08-31 08:25:53,423.423 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:25:53,650.650 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:25:53,655.655 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:25:53,867.867 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:25:53,912.912 INFO    ] time= 31/08/2026 08:25:53
[2026-08-31 08:25:53,918.918 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:25:53,935.935 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:25:54,064.064 INFO    ] No existing commands found in stream
[2026-08-31 08:25:59,078.078 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:25:59,081.081 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-08-31 08:26:00,458.458 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 08:26:00,461.461 INFO    ] Checking for system updates...
[2026-08-31 08:26:00,501.501 INFO    ] 200
[2026-08-31 08:26:00,504.504 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:26:00,564.564 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:26:00,567.567 INFO    ] No update needed
[2026-08-31 08:26:00,569.569 INFO    ] Checking for camera pi updates...
[2026-08-31 08:26:00,603.603 INFO    ] 200
[2026-08-31 08:26:00,605.605 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:26:00,647.647 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:26:00,732.732 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:26:00,735.735 INFO    ] No camera update needed
[2026-08-31 08:26:00,737.737 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:26:00,740.740 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:26:00,745.745 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:26:00,750.750 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:26:02,812.812 INFO    ] ================================================
[2026-08-31 08:26:02,835.835 INFO    ] Launching Daemon at Mon Aug 31 08:26:02 IST 2026
[2026-08-31 08:26:02,850.850 INFO    ] ================================================
[2026-08-31 08:26:03,542.542 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:26:03
[2026-08-31 08:26:04,146.146 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:26:04,421.421 INFO    ] Initializing speech engine...
[2026-08-31 08:26:04,430.430 INFO    ] 2026-08-31 08:26:04
[2026-08-31 08:26:04,695.695 INFO    ] 2026-08-31 08:26:04
[2026-08-31 08:26:04,749.749 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:26:04,975.975 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:26:04,979.979 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:26:05,165.165 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:26:05,230.230 INFO    ] time= 31/08/2026 08:26:05
[2026-08-31 08:26:05,241.241 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:26:05,247.247 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:26:05,377.377 INFO    ] No existing commands found in stream
[2026-08-31 08:26:10,401.401 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:26:10,404.404 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-08-31 08:26:14,064.064 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 08:26:14,067.067 INFO    ] Checking for system updates...
[2026-08-31 08:26:14,102.102 INFO    ] 200
[2026-08-31 08:26:14,104.104 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:26:14,158.158 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:26:14,161.161 INFO    ] No update needed
[2026-08-31 08:26:14,167.167 INFO    ] Checking for camera pi updates...
[2026-08-31 08:26:14,201.201 INFO    ] 200
[2026-08-31 08:26:14,203.203 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:26:14,248.248 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:26:14,338.338 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:26:14,341.341 INFO    ] No camera update needed
[2026-08-31 08:26:14,343.343 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:26:14,345.345 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:26:14,351.351 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:26:14,356.356 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:26:16,397.397 INFO    ] ================================================
[2026-08-31 08:26:16,413.413 INFO    ] Launching Daemon at Mon Aug 31 08:26:16 IST 2026
[2026-08-31 08:26:16,424.424 INFO    ] ================================================
[2026-08-31 08:26:16,989.989 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:26:16
[2026-08-31 08:26:17,573.573 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:26:17,821.821 INFO    ] Initializing speech engine...
[2026-08-31 08:26:17,836.836 INFO    ] 2026-08-31 08:26:17
[2026-08-31 08:26:18,106.106 INFO    ] 2026-08-31 08:26:18
[2026-08-31 08:26:18,148.148 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:26:18,401.401 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:26:18,410.410 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:26:18,546.546 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:26:18,568.568 INFO    ] time= 31/08/2026 08:26:18
[2026-08-31 08:26:18,628.628 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:26:18,677.677 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:26:18,810.810 INFO    ] No existing commands found in stream
[2026-08-31 08:26:23,830.830 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:26:23,833.833 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-08-31 08:26:27,778.778 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 08:26:27,781.781 INFO    ] Checking for system updates...
[2026-08-31 08:26:27,823.823 INFO    ] 200
[2026-08-31 08:26:27,825.825 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:26:27,893.893 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:26:27,896.896 INFO    ] No update needed
[2026-08-31 08:26:27,899.899 INFO    ] Checking for camera pi updates...
[2026-08-31 08:26:27,939.939 INFO    ] 200
[2026-08-31 08:26:27,942.942 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:26:27,984.984 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:26:28,076.076 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:26:28,079.079 INFO    ] No camera update needed
[2026-08-31 08:26:28,082.082 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:26:28,085.085 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:26:28,091.091 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:26:28,097.097 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:26:30,140.140 INFO    ] ================================================
[2026-08-31 08:26:30,155.155 INFO    ] Launching Daemon at Mon Aug 31 08:26:30 IST 2026
[2026-08-31 08:26:30,166.166 INFO    ] ================================================
[2026-08-31 08:26:30,853.853 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:26:30
[2026-08-31 08:26:31,483.483 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:26:31,751.751 INFO    ] Initializing speech engine...
[2026-08-31 08:26:31,762.762 INFO    ] 2026-08-31 08:26:31
[2026-08-31 08:26:32,049.049 INFO    ] 2026-08-31 08:26:32
[2026-08-31 08:26:32,110.110 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:26:32,379.379 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:26:32,401.401 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:26:32,633.633 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:26:32,641.641 INFO    ] time= 31/08/2026 08:26:32
[2026-08-31 08:26:32,659.659 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:26:32,678.678 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:26:32,823.823 INFO    ] No existing commands found in stream
[2026-08-31 08:26:37,850.850 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:26:37,853.853 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-08-31 08:26:38,740.740 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 08:26:38,743.743 INFO    ] Checking for system updates...
[2026-08-31 08:26:38,785.785 INFO    ] 200
[2026-08-31 08:26:38,788.788 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:26:38,841.841 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:26:38,844.844 INFO    ] No update needed
[2026-08-31 08:26:38,847.847 INFO    ] Checking for camera pi updates...
[2026-08-31 08:26:38,881.881 INFO    ] 200
[2026-08-31 08:26:38,884.884 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:26:38,924.924 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:26:39,013.013 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:26:39,015.015 INFO    ] No camera update needed
[2026-08-31 08:26:39,018.018 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:26:39,020.020 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:26:39,026.026 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:26:39,031.031 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:26:41,072.072 INFO    ] ================================================
[2026-08-31 08:26:41,087.087 INFO    ] Launching Daemon at Mon Aug 31 08:26:41 IST 2026
[2026-08-31 08:26:41,098.098 INFO    ] ================================================
[2026-08-31 08:26:41,763.763 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:26:41
[2026-08-31 08:26:42,446.446 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:26:42,753.753 INFO    ] Initializing speech engine...
[2026-08-31 08:26:42,760.760 INFO    ] 2026-08-31 08:26:42
[2026-08-31 08:26:43,032.032 INFO    ] 2026-08-31 08:26:43
[2026-08-31 08:26:43,076.076 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:26:43,323.323 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:26:43,328.328 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:26:43,514.514 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:26:43,562.562 INFO    ] time= 31/08/2026 08:26:43
[2026-08-31 08:26:43,569.569 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:26:43,589.589 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:26:43,719.719 INFO    ] No existing commands found in stream
[2026-08-31 08:26:48,741.741 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:26:48,744.744 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-08-31 08:26:51,268.268 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 08:26:51,271.271 INFO    ] Checking for system updates...
[2026-08-31 08:26:51,307.307 INFO    ] 200
[2026-08-31 08:26:51,309.309 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:26:51,362.362 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:26:51,364.364 INFO    ] No update needed
[2026-08-31 08:26:51,366.366 INFO    ] Checking for camera pi updates...
[2026-08-31 08:26:51,401.401 INFO    ] 200
[2026-08-31 08:26:51,403.403 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:26:51,444.444 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:26:51,631.631 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:26:51,634.634 INFO    ] No camera update needed
[2026-08-31 08:26:51,636.636 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:26:51,639.639 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:26:51,644.644 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:26:51,650.650 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:26:53,692.692 INFO    ] ================================================
[2026-08-31 08:26:53,708.708 INFO    ] Launching Daemon at Mon Aug 31 08:26:53 IST 2026
[2026-08-31 08:26:53,720.720 INFO    ] ================================================
[2026-08-31 08:26:54,380.380 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:26:54
[2026-08-31 08:26:55,062.062 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:26:55,365.365 INFO    ] Initializing speech engine...
[2026-08-31 08:26:55,373.373 INFO    ] 2026-08-31 08:26:55
[2026-08-31 08:26:55,659.659 INFO    ] 2026-08-31 08:26:55
[2026-08-31 08:26:55,704.704 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:26:55,988.988 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:26:55,994.994 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:26:56,187.187 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:26:56,194.194 INFO    ] time= 31/08/2026 08:26:56
[2026-08-31 08:26:56,216.216 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:26:56,243.243 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:26:56,349.349 INFO    ] No existing commands found in stream
[2026-08-31 08:27:01,378.378 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:27:01,382.382 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-08-31 08:27:03,128.128 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 08:27:03,132.132 INFO    ] Checking for system updates...
[2026-08-31 08:27:03,170.170 INFO    ] 200
[2026-08-31 08:27:03,173.173 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:27:03,234.234 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:27:03,237.237 INFO    ] No update needed
[2026-08-31 08:27:03,239.239 INFO    ] Checking for camera pi updates...
[2026-08-31 08:27:03,274.274 INFO    ] 200
[2026-08-31 08:27:03,277.277 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:27:03,333.333 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:27:03,415.415 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:27:03,419.419 INFO    ] No camera update needed
[2026-08-31 08:27:03,422.422 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:27:03,426.426 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:27:03,434.434 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:27:03,442.442 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:27:05,483.483 INFO    ] ================================================
[2026-08-31 08:27:05,499.499 INFO    ] Launching Daemon at Mon Aug 31 08:27:05 IST 2026
[2026-08-31 08:27:05,511.511 INFO    ] ================================================
[2026-08-31 08:27:06,092.092 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:27:06
[2026-08-31 08:27:06,702.702 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:27:06,953.953 INFO    ] Initializing speech engine...
[2026-08-31 08:27:06,967.967 INFO    ] 2026-08-31 08:27:06
[2026-08-31 08:27:07,232.232 INFO    ] 2026-08-31 08:27:07
[2026-08-31 08:27:07,268.268 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:27:07,462.462 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:27:07,511.511 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:27:07,665.665 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:27:07,720.720 INFO    ] time= 31/08/2026 08:27:07
[2026-08-31 08:27:07,774.774 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:27:07,799.799 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:27:07,935.935 INFO    ] No existing commands found in stream
[2026-08-31 08:27:12,956.956 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:27:12,959.959 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-08-31 08:27:17,487.487 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 08:27:17,489.489 INFO    ] Checking for system updates...
[2026-08-31 08:27:17,525.525 INFO    ] 200
[2026-08-31 08:27:17,528.528 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:27:17,583.583 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:27:17,586.586 INFO    ] No update needed
[2026-08-31 08:27:17,589.589 INFO    ] Checking for camera pi updates...
[2026-08-31 08:27:17,631.631 INFO    ] 200
[2026-08-31 08:27:17,634.634 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:27:17,702.702 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:27:17,786.786 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:27:17,789.789 INFO    ] No camera update needed
[2026-08-31 08:27:17,792.792 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:27:17,794.794 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:27:17,800.800 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:27:17,805.805 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:27:19,853.853 INFO    ] ================================================
[2026-08-31 08:27:19,869.869 INFO    ] Launching Daemon at Mon Aug 31 08:27:19 IST 2026
[2026-08-31 08:27:19,880.880 INFO    ] ================================================
[2026-08-31 08:27:20,466.466 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:27:20
[2026-08-31 08:27:21,065.065 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:27:21,341.341 INFO    ] Initializing speech engine...
[2026-08-31 08:27:21,346.346 INFO    ] 2026-08-31 08:27:21
[2026-08-31 08:27:21,594.594 INFO    ] 2026-08-31 08:27:21
[2026-08-31 08:27:21,630.630 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:27:21,886.886 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:27:21,891.891 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:27:22,023.023 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:27:22,068.068 INFO    ] time= 31/08/2026 08:27:22
[2026-08-31 08:27:22,127.127 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:27:22,157.157 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:27:22,299.299 INFO    ] No existing commands found in stream
[2026-08-31 08:27:27,314.314 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:27:27,317.317 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-08-31 08:27:29,305.305 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 08:27:29,307.307 INFO    ] Checking for system updates...
[2026-08-31 08:27:29,343.343 INFO    ] 200
[2026-08-31 08:27:29,345.345 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:27:29,406.406 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:27:29,409.409 INFO    ] No update needed
[2026-08-31 08:27:29,411.411 INFO    ] Checking for camera pi updates...
[2026-08-31 08:27:29,444.444 INFO    ] 200
[2026-08-31 08:27:29,447.447 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:27:29,495.495 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:27:29,592.592 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:27:29,595.595 INFO    ] No camera update needed
[2026-08-31 08:27:29,597.597 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:27:29,600.600 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:27:29,605.605 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:27:29,610.610 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:27:31,652.652 INFO    ] ================================================
[2026-08-31 08:27:31,670.670 INFO    ] Launching Daemon at Mon Aug 31 08:27:31 IST 2026
[2026-08-31 08:27:31,685.685 INFO    ] ================================================
[2026-08-31 08:27:32,304.304 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:27:32
[2026-08-31 08:27:32,942.942 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:27:33,188.188 INFO    ] Initializing speech engine...
[2026-08-31 08:27:33,194.194 INFO    ] 2026-08-31 08:27:33
[2026-08-31 08:27:33,468.468 INFO    ] 2026-08-31 08:27:33
[2026-08-31 08:27:33,504.504 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:27:33,680.680 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:27:33,693.693 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:27:33,839.839 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:27:33,843.843 INFO    ] time= 31/08/2026 08:27:33
[2026-08-31 08:27:33,849.849 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:27:33,895.895 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:27:34,043.043 INFO    ] No existing commands found in stream
[2026-08-31 08:27:39,054.054 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:27:39,057.057 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-08-31 08:27:42,304.304 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 08:27:42,307.307 INFO    ] Checking for system updates...
[2026-08-31 08:27:42,344.344 INFO    ] 200
[2026-08-31 08:27:42,347.347 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:27:42,401.401 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:27:42,403.403 INFO    ] No update needed
[2026-08-31 08:27:42,406.406 INFO    ] Checking for camera pi updates...
[2026-08-31 08:27:42,442.442 INFO    ] 200
[2026-08-31 08:27:42,444.444 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:27:42,487.487 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:27:42,567.567 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:27:42,570.570 INFO    ] No camera update needed
[2026-08-31 08:27:42,573.573 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:27:42,576.576 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:27:42,582.582 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:27:42,588.588 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:27:44,632.632 INFO    ] ================================================
[2026-08-31 08:27:44,647.647 INFO    ] Launching Daemon at Mon Aug 31 08:27:44 IST 2026
[2026-08-31 08:27:44,658.658 INFO    ] ================================================
[2026-08-31 08:27:45,225.225 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:27:45
[2026-08-31 08:27:45,809.809 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:27:46,057.057 INFO    ] Initializing speech engine...
[2026-08-31 08:27:46,072.072 INFO    ] 2026-08-31 08:27:46
[2026-08-31 08:27:46,338.338 INFO    ] 2026-08-31 08:27:46
[2026-08-31 08:27:46,373.373 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:27:46,633.633 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:27:46,642.642 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:27:46,850.850 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:27:46,908.908 INFO    ] time= 31/08/2026 08:27:46
[2026-08-31 08:27:46,915.915 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:27:46,934.934 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:27:47,057.057 INFO    ] No existing commands found in stream
[2026-08-31 08:27:52,077.077 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:27:52,080.080 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-08-31 08:27:53,089.089 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 08:27:53,091.091 INFO    ] Checking for system updates...
[2026-08-31 08:27:53,126.126 INFO    ] 200
[2026-08-31 08:27:53,129.129 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:27:53,189.189 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:27:53,191.191 INFO    ] No update needed
[2026-08-31 08:27:53,193.193 INFO    ] Checking for camera pi updates...
[2026-08-31 08:27:53,231.231 INFO    ] 200
[2026-08-31 08:27:53,233.233 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:27:53,273.273 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:27:53,371.371 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:27:53,374.374 INFO    ] No camera update needed
[2026-08-31 08:27:53,376.376 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:27:53,378.378 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:27:53,384.384 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:27:53,389.389 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:27:55,430.430 INFO    ] ================================================
[2026-08-31 08:27:55,446.446 INFO    ] Launching Daemon at Mon Aug 31 08:27:55 IST 2026
[2026-08-31 08:27:55,457.457 INFO    ] ================================================
[2026-08-31 08:27:56,120.120 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:27:56
[2026-08-31 08:27:56,766.766 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:27:57,020.020 INFO    ] Initializing speech engine...
[2026-08-31 08:27:57,029.029 INFO    ] 2026-08-31 08:27:57
[2026-08-31 08:27:57,330.330 INFO    ] 2026-08-31 08:27:57
[2026-08-31 08:27:57,355.355 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:27:57,519.519 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:27:57,543.543 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:27:57,719.719 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:27:57,734.734 INFO    ] time= 31/08/2026 08:27:57
[2026-08-31 08:27:57,754.754 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:27:57,762.762 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:27:57,887.887 INFO    ] No existing commands found in stream
[2026-08-31 08:28:02,911.911 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:28:02,916.916 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-08-31 08:28:06,485.485 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 08:28:06,489.489 INFO    ] Checking for system updates...
[2026-08-31 08:28:06,529.529 INFO    ] 200
[2026-08-31 08:28:06,531.531 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:28:06,583.583 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:28:06,586.586 INFO    ] No update needed
[2026-08-31 08:28:06,588.588 INFO    ] Checking for camera pi updates...
[2026-08-31 08:28:06,629.629 INFO    ] 200
[2026-08-31 08:28:06,631.631 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:28:06,671.671 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:28:06,756.756 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:28:06,758.758 INFO    ] No camera update needed
[2026-08-31 08:28:06,761.761 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:28:06,763.763 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:28:06,768.768 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:28:06,773.773 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:28:08,812.812 INFO    ] ================================================
[2026-08-31 08:28:08,827.827 INFO    ] Launching Daemon at Mon Aug 31 08:28:08 IST 2026
[2026-08-31 08:28:08,838.838 INFO    ] ================================================
[2026-08-31 08:28:09,479.479 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:28:09
[2026-08-31 08:28:10,061.061 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:28:10,305.305 INFO    ] Initializing speech engine...
[2026-08-31 08:28:10,313.313 INFO    ] 2026-08-31 08:28:10
[2026-08-31 08:28:10,588.588 INFO    ] 2026-08-31 08:28:10
[2026-08-31 08:28:10,622.622 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:28:10,880.880 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:28:10,889.889 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:28:11,024.024 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:28:11,045.045 INFO    ] time= 31/08/2026 08:28:11
[2026-08-31 08:28:11,100.100 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:28:11,144.144 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:28:11,219.219 INFO    ] No existing commands found in stream
[2026-08-31 08:28:16,230.230 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:28:16,232.232 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-08-31 08:28:18,925.925 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 08:28:18,928.928 INFO    ] Checking for system updates...
[2026-08-31 08:28:18,963.963 INFO    ] 200
[2026-08-31 08:28:18,965.965 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:28:19,020.020 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:28:19,022.022 INFO    ] No update needed
[2026-08-31 08:28:19,025.025 INFO    ] Checking for camera pi updates...
[2026-08-31 08:28:19,059.059 INFO    ] 200
[2026-08-31 08:28:19,062.062 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:28:19,103.103 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:28:19,199.199 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:28:19,202.202 INFO    ] No camera update needed
[2026-08-31 08:28:19,205.205 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:28:19,207.207 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:28:19,214.214 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:28:19,220.220 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:28:21,262.262 INFO    ] ================================================
[2026-08-31 08:28:21,277.277 INFO    ] Launching Daemon at Mon Aug 31 08:28:21 IST 2026
[2026-08-31 08:28:21,288.288 INFO    ] ================================================
[2026-08-31 08:28:21,944.944 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:28:21
[2026-08-31 08:28:22,618.618 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:28:22,923.923 INFO    ] Initializing speech engine...
[2026-08-31 08:28:22,936.936 INFO    ] 2026-08-31 08:28:22
[2026-08-31 08:28:23,223.223 INFO    ] 2026-08-31 08:28:23
[2026-08-31 08:28:23,269.269 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:28:23,523.523 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:28:23,530.530 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:28:23,730.730 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:28:23,774.774 INFO    ] time= 31/08/2026 08:28:23
[2026-08-31 08:28:23,793.793 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:28:23,806.806 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:28:23,932.932 INFO    ] No existing commands found in stream
[2026-08-31 08:28:28,957.957 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:28:28,960.960 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-08-31 08:28:29,845.845 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 08:28:29,848.848 INFO    ] Checking for system updates...
[2026-08-31 08:28:29,889.889 INFO    ] 200
[2026-08-31 08:28:29,892.892 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:28:29,952.952 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:28:29,955.955 INFO    ] No update needed
[2026-08-31 08:28:29,958.958 INFO    ] Checking for camera pi updates...
[2026-08-31 08:28:29,993.993 INFO    ] 200
[2026-08-31 08:28:29,995.995 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:28:30,037.037 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:28:30,113.113 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:28:30,116.116 INFO    ] No camera update needed
[2026-08-31 08:28:30,119.119 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:28:30,121.121 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:28:30,128.128 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:28:30,133.133 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:28:32,177.177 INFO    ] ================================================
[2026-08-31 08:28:32,195.195 INFO    ] Launching Daemon at Mon Aug 31 08:28:32 IST 2026
[2026-08-31 08:28:32,207.207 INFO    ] ================================================
[2026-08-31 08:28:32,821.821 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:28:32
[2026-08-31 08:28:33,416.416 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:28:33,687.687 INFO    ] Initializing speech engine...
[2026-08-31 08:28:33,696.696 INFO    ] 2026-08-31 08:28:33
[2026-08-31 08:28:33,945.945 INFO    ] 2026-08-31 08:28:33
[2026-08-31 08:28:33,981.981 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:28:34,182.182 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:28:34,217.217 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:28:34,381.381 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:28:34,418.418 INFO    ] time= 31/08/2026 08:28:34
[2026-08-31 08:28:34,457.457 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:28:34,506.506 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:28:34,576.576 INFO    ] No existing commands found in stream
[2026-08-31 08:28:39,587.587 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:28:39,590.590 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-08-31 08:28:43,885.885 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 08:28:43,888.888 INFO    ] Checking for system updates...
[2026-08-31 08:28:43,923.923 INFO    ] 200
[2026-08-31 08:28:43,925.925 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:28:43,984.984 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:28:43,987.987 INFO    ] No update needed
[2026-08-31 08:28:43,990.990 INFO    ] Checking for camera pi updates...
[2026-08-31 08:28:44,029.029 INFO    ] 200
[2026-08-31 08:28:44,032.032 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:28:44,078.078 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:28:44,165.165 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:28:44,167.167 INFO    ] No camera update needed
[2026-08-31 08:28:44,170.170 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:28:44,172.172 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:28:44,178.178 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:28:44,183.183 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:28:46,223.223 INFO    ] ================================================
[2026-08-31 08:28:46,238.238 INFO    ] Launching Daemon at Mon Aug 31 08:28:46 IST 2026
[2026-08-31 08:28:46,249.249 INFO    ] ================================================
[2026-08-31 08:28:46,845.845 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:28:46
[2026-08-31 08:28:47,506.506 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:28:47,806.806 INFO    ] Initializing speech engine...
[2026-08-31 08:28:47,820.820 INFO    ] 2026-08-31 08:28:47
[2026-08-31 08:28:48,128.128 INFO    ] 2026-08-31 08:28:48
[2026-08-31 08:28:48,212.212 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:28:48,400.400 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:28:48,419.419 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:28:48,641.641 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:28:48,661.661 INFO    ] time= 31/08/2026 08:28:48
[2026-08-31 08:28:48,691.691 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:28:48,700.700 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:28:48,805.805 INFO    ] No existing commands found in stream
[2026-08-31 08:28:53,818.818 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:28:53,821.821 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-08-31 08:28:54,302.302 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 08:28:54,305.305 INFO    ] Checking for system updates...
[2026-08-31 08:28:54,341.341 INFO    ] 200
[2026-08-31 08:28:54,344.344 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:28:54,396.396 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:28:54,399.399 INFO    ] No update needed
[2026-08-31 08:28:54,402.402 INFO    ] Checking for camera pi updates...
[2026-08-31 08:28:54,436.436 INFO    ] 200
[2026-08-31 08:28:54,438.438 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:28:54,479.479 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:28:54,669.669 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:28:54,671.671 INFO    ] No camera update needed
[2026-08-31 08:28:54,674.674 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:28:54,676.676 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:28:54,681.681 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:28:54,686.686 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:28:56,726.726 INFO    ] ================================================
[2026-08-31 08:28:56,741.741 INFO    ] Launching Daemon at Mon Aug 31 08:28:56 IST 2026
[2026-08-31 08:28:56,752.752 INFO    ] ================================================
[2026-08-31 08:28:57,318.318 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:28:57
[2026-08-31 08:28:57,902.902 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:28:58,151.151 INFO    ] Initializing speech engine...
[2026-08-31 08:28:58,174.174 INFO    ] 2026-08-31 08:28:58
[2026-08-31 08:28:58,428.428 INFO    ] 2026-08-31 08:28:58
[2026-08-31 08:28:58,462.462 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:28:58,638.638 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:28:58,650.650 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:28:58,799.799 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:28:58,806.806 INFO    ] time= 31/08/2026 08:28:58
[2026-08-31 08:28:58,831.831 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:28:58,873.873 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:28:58,976.976 INFO    ] No existing commands found in stream
[2026-08-31 08:29:04,001.001 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:29:04,004.004 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-08-31 08:29:07,304.304 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 08:29:07,306.306 INFO    ] Checking for system updates...
[2026-08-31 08:29:07,342.342 INFO    ] 200
[2026-08-31 08:29:07,344.344 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:29:07,395.395 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:29:07,398.398 INFO    ] No update needed
[2026-08-31 08:29:07,400.400 INFO    ] Checking for camera pi updates...
[2026-08-31 08:29:07,434.434 INFO    ] 200
[2026-08-31 08:29:07,436.436 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:29:07,476.476 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:29:07,577.577 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:29:07,579.579 INFO    ] No camera update needed
[2026-08-31 08:29:07,582.582 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:29:07,584.584 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:29:07,589.589 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:29:07,594.594 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:29:09,638.638 INFO    ] ================================================
[2026-08-31 08:29:09,653.653 INFO    ] Launching Daemon at Mon Aug 31 08:29:09 IST 2026
[2026-08-31 08:29:09,663.663 INFO    ] ================================================
[2026-08-31 08:29:10,230.230 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:29:10
[2026-08-31 08:29:10,813.813 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:29:11,069.069 INFO    ] Initializing speech engine...
[2026-08-31 08:29:11,085.085 INFO    ] 2026-08-31 08:29:11
[2026-08-31 08:29:11,370.370 INFO    ] 2026-08-31 08:29:11
[2026-08-31 08:29:11,405.405 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:29:11,601.601 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:29:11,614.614 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:29:11,852.852 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:29:11,869.869 INFO    ] time= 31/08/2026 08:29:11
[2026-08-31 08:29:11,928.928 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:29:11,982.982 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:29:12,146.146 INFO    ] No existing commands found in stream
[2026-08-31 08:29:17,171.171 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:29:17,173.173 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-08-31 08:29:19,389.389 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 08:29:19,391.391 INFO    ] Checking for system updates...
[2026-08-31 08:29:19,427.427 INFO    ] 200
[2026-08-31 08:29:19,429.429 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:29:19,481.481 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:29:19,483.483 INFO    ] No update needed
[2026-08-31 08:29:19,486.486 INFO    ] Checking for camera pi updates...
[2026-08-31 08:29:19,523.523 INFO    ] 200
[2026-08-31 08:29:19,525.525 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:29:19,570.570 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:29:19,656.656 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:29:19,659.659 INFO    ] No camera update needed
[2026-08-31 08:29:19,664.664 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:29:19,666.666 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:29:19,673.673 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:29:19,678.678 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:29:21,718.718 INFO    ] ================================================
[2026-08-31 08:29:21,733.733 INFO    ] Launching Daemon at Mon Aug 31 08:29:21 IST 2026
[2026-08-31 08:29:21,744.744 INFO    ] ================================================
[2026-08-31 08:29:22,382.382 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:29:22
[2026-08-31 08:29:23,041.041 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:29:23,343.343 INFO    ] Initializing speech engine...
[2026-08-31 08:29:23,354.354 INFO    ] 2026-08-31 08:29:23
[2026-08-31 08:29:23,664.664 INFO    ] 2026-08-31 08:29:23
[2026-08-31 08:29:23,745.745 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:29:23,924.924 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:29:23,930.930 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:29:24,120.120 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:29:24,165.165 INFO    ] time= 31/08/2026 08:29:24
[2026-08-31 08:29:24,183.183 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:29:24,190.190 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:29:24,319.319 INFO    ] No existing commands found in stream
[2026-08-31 08:29:29,337.337 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:29:29,340.340 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-08-31 08:29:30,735.735 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 08:29:30,738.738 INFO    ] Checking for system updates...
[2026-08-31 08:29:30,778.778 INFO    ] 200
[2026-08-31 08:29:30,782.782 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:29:30,836.836 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:29:30,839.839 INFO    ] No update needed
[2026-08-31 08:29:30,842.842 INFO    ] Checking for camera pi updates...
[2026-08-31 08:29:30,876.876 INFO    ] 200
[2026-08-31 08:29:30,879.879 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:29:30,920.920 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:29:31,006.006 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:29:31,009.009 INFO    ] No camera update needed
[2026-08-31 08:29:31,012.012 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:29:31,014.014 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:29:31,020.020 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:29:31,026.026 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:29:33,071.071 INFO    ] ================================================
[2026-08-31 08:29:33,085.085 INFO    ] Launching Daemon at Mon Aug 31 08:29:33 IST 2026
[2026-08-31 08:29:33,096.096 INFO    ] ================================================
[2026-08-31 08:29:33,661.661 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:29:33
[2026-08-31 08:29:34,243.243 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:29:34,492.492 INFO    ] Initializing speech engine...
[2026-08-31 08:29:34,514.514 INFO    ] 2026-08-31 08:29:34
[2026-08-31 08:29:34,769.769 INFO    ] 2026-08-31 08:29:34
[2026-08-31 08:29:34,804.804 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:29:35,090.090 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:29:35,095.095 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:29:35,289.289 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:29:35,335.335 INFO    ] time= 31/08/2026 08:29:35
[2026-08-31 08:29:35,341.341 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:29:35,360.360 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:29:35,495.495 INFO    ] No existing commands found in stream
[2026-08-31 08:29:40,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:29:40,520.520 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-08-31 08:29:44,975.975 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 08:29:44,978.978 INFO    ] Checking for system updates...
[2026-08-31 08:29:45,015.015 INFO    ] 200
[2026-08-31 08:29:45,017.017 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:29:45,070.070 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:29:45,073.073 INFO    ] No update needed
[2026-08-31 08:29:45,076.076 INFO    ] Checking for camera pi updates...
[2026-08-31 08:29:45,110.110 INFO    ] 200
[2026-08-31 08:29:45,113.113 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:29:45,154.154 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:29:45,233.233 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:29:45,236.236 INFO    ] No camera update needed
[2026-08-31 08:29:45,238.238 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:29:45,241.241 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:29:45,246.246 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:29:45,251.251 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:29:47,292.292 INFO    ] ================================================
[2026-08-31 08:29:47,307.307 INFO    ] Launching Daemon at Mon Aug 31 08:29:47 IST 2026
[2026-08-31 08:29:47,318.318 INFO    ] ================================================
[2026-08-31 08:29:47,968.968 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:29:47
[2026-08-31 08:29:48,640.640 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:29:48,941.941 INFO    ] Initializing speech engine...
[2026-08-31 08:29:48,950.950 INFO    ] 2026-08-31 08:29:48
[2026-08-31 08:29:49,234.234 INFO    ] 2026-08-31 08:29:49
[2026-08-31 08:29:49,290.290 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:29:49,528.528 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:29:49,547.547 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:29:49,761.761 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:29:49,768.768 INFO    ] time= 31/08/2026 08:29:49
[2026-08-31 08:29:49,789.789 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:29:49,817.817 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:29:49,924.924 INFO    ] No existing commands found in stream
[2026-08-31 08:29:54,945.945 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:29:54,948.948 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-08-31 08:29:55,779.779 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 08:29:55,782.782 INFO    ] Checking for system updates...
[2026-08-31 08:29:55,818.818 INFO    ] 200
[2026-08-31 08:29:55,821.821 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:29:55,880.880 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:29:55,882.882 INFO    ] No update needed
[2026-08-31 08:29:55,885.885 INFO    ] Checking for camera pi updates...
[2026-08-31 08:29:55,919.919 INFO    ] 200
[2026-08-31 08:29:55,921.921 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:29:55,970.970 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:29:56,054.054 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:29:56,057.057 INFO    ] No camera update needed
[2026-08-31 08:29:56,059.059 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:29:56,062.062 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:29:56,067.067 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:29:56,072.072 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:29:58,112.112 INFO    ] ================================================
[2026-08-31 08:29:58,126.126 INFO    ] Launching Daemon at Mon Aug 31 08:29:58 IST 2026
[2026-08-31 08:29:58,137.137 INFO    ] ================================================
[2026-08-31 08:29:58,701.701 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:29:58
[2026-08-31 08:29:59,360.360 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:29:59,661.661 INFO    ] Initializing speech engine...
[2026-08-31 08:29:59,675.675 INFO    ] 2026-08-31 08:29:59
[2026-08-31 08:29:59,964.964 INFO    ] 2026-08-31 08:29:59
[2026-08-31 08:30:00,073.073 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:30:00,285.285 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:30:00,290.290 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:30:00,483.483 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:30:00,491.491 INFO    ] time= 31/08/2026 08:30:00
[2026-08-31 08:30:00,511.511 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:30:00,538.538 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:30:00,645.645 INFO    ] No existing commands found in stream
[2026-08-31 08:30:05,669.669 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:30:05,672.672 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-08-31 08:30:08,533.533 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 08:30:08,536.536 INFO    ] Checking for system updates...
[2026-08-31 08:30:08,573.573 INFO    ] 200
[2026-08-31 08:30:08,575.575 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:30:08,635.635 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:30:08,637.637 INFO    ] No update needed
[2026-08-31 08:30:08,640.640 INFO    ] Checking for camera pi updates...
[2026-08-31 08:30:08,677.677 INFO    ] 200
[2026-08-31 08:30:08,679.679 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:30:08,724.724 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:30:08,803.803 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:30:08,805.805 INFO    ] No camera update needed
[2026-08-31 08:30:08,807.807 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:30:08,810.810 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:30:08,815.815 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:30:08,820.820 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:30:10,863.863 INFO    ] ================================================
[2026-08-31 08:30:10,879.879 INFO    ] Launching Daemon at Mon Aug 31 08:30:10 IST 2026
[2026-08-31 08:30:10,890.890 INFO    ] ================================================
[2026-08-31 08:30:11,455.455 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:30:11
[2026-08-31 08:30:12,038.038 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:30:12,310.310 INFO    ] Initializing speech engine...
[2026-08-31 08:30:12,319.319 INFO    ] 2026-08-31 08:30:12
[2026-08-31 08:30:12,570.570 INFO    ] 2026-08-31 08:30:12
[2026-08-31 08:30:12,604.604 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:30:12,866.866 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:30:12,873.873 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:30:13,081.081 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:30:13,133.133 INFO    ] time= 31/08/2026 08:30:13
[2026-08-31 08:30:13,140.140 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:30:13,156.156 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:30:13,291.291 INFO    ] No existing commands found in stream
[2026-08-31 08:30:18,304.304 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:30:18,307.307 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-08-31 08:30:22,057.057 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 08:30:22,061.061 INFO    ] Checking for system updates...
[2026-08-31 08:30:22,097.097 INFO    ] 200
[2026-08-31 08:30:22,100.100 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:30:22,152.152 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:30:22,155.155 INFO    ] No update needed
[2026-08-31 08:30:22,158.158 INFO    ] Checking for camera pi updates...
[2026-08-31 08:30:22,191.191 INFO    ] 200
[2026-08-31 08:30:22,194.194 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:30:22,240.240 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:30:22,335.335 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:30:22,338.338 INFO    ] No camera update needed
[2026-08-31 08:30:22,340.340 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:30:22,342.342 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:30:22,347.347 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:30:22,352.352 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:30:24,395.395 INFO    ] ================================================
[2026-08-31 08:30:24,410.410 INFO    ] Launching Daemon at Mon Aug 31 08:30:24 IST 2026
[2026-08-31 08:30:24,421.421 INFO    ] ================================================
[2026-08-31 08:30:25,099.099 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:30:25
[2026-08-31 08:30:25,731.731 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:30:26,002.002 INFO    ] Initializing speech engine...
[2026-08-31 08:30:26,011.011 INFO    ] 2026-08-31 08:30:26
[2026-08-31 08:30:26,263.263 INFO    ] 2026-08-31 08:30:26
[2026-08-31 08:30:26,298.298 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:30:26,484.484 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:30:26,503.503 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:30:26,636.636 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:30:26,642.642 INFO    ] time= 31/08/2026 08:30:26
[2026-08-31 08:30:26,684.684 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:30:26,711.711 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:30:26,816.816 INFO    ] No existing commands found in stream
[2026-08-31 08:30:31,847.847 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:30:31,850.850 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-08-31 08:30:36,055.055 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 08:30:36,058.058 INFO    ] Checking for system updates...
[2026-08-31 08:30:36,101.101 INFO    ] 200
[2026-08-31 08:30:36,104.104 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:30:36,164.164 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:30:36,166.166 INFO    ] No update needed
[2026-08-31 08:30:36,169.169 INFO    ] Checking for camera pi updates...
[2026-08-31 08:30:36,202.202 INFO    ] 200
[2026-08-31 08:30:36,204.204 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:30:36,245.245 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:30:36,325.325 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:30:36,327.327 INFO    ] No camera update needed
[2026-08-31 08:30:36,330.330 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:30:36,332.332 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:30:36,337.337 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:30:36,343.343 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:30:38,383.383 INFO    ] ================================================
[2026-08-31 08:30:38,398.398 INFO    ] Launching Daemon at Mon Aug 31 08:30:38 IST 2026
[2026-08-31 08:30:38,410.410 INFO    ] ================================================
[2026-08-31 08:30:39,063.063 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:30:39
[2026-08-31 08:30:39,746.746 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:30:40,052.052 INFO    ] Initializing speech engine...
[2026-08-31 08:30:40,062.062 INFO    ] 2026-08-31 08:30:40
[2026-08-31 08:30:40,322.322 INFO    ] 2026-08-31 08:30:40
[2026-08-31 08:30:40,357.357 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:30:40,610.610 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:30:40,620.620 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:30:40,754.754 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:30:40,796.796 INFO    ] time= 31/08/2026 08:30:40
[2026-08-31 08:30:40,861.861 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:30:40,892.892 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:30:41,007.007 INFO    ] No existing commands found in stream
[2026-08-31 08:30:46,039.039 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:30:46,042.042 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-08-31 08:30:49,014.014 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 08:30:49,018.018 INFO    ] Checking for system updates...
[2026-08-31 08:30:49,055.055 INFO    ] 200
[2026-08-31 08:30:49,058.058 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:30:49,112.112 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:30:49,115.115 INFO    ] No update needed
[2026-08-31 08:30:49,117.117 INFO    ] Checking for camera pi updates...
[2026-08-31 08:30:49,155.155 INFO    ] 200
[2026-08-31 08:30:49,158.158 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:30:49,204.204 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:30:49,284.284 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:30:49,287.287 INFO    ] No camera update needed
[2026-08-31 08:30:49,289.289 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:30:49,292.292 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:30:49,297.297 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:30:49,302.302 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:30:51,346.346 INFO    ] ================================================
[2026-08-31 08:30:51,361.361 INFO    ] Launching Daemon at Mon Aug 31 08:30:51 IST 2026
[2026-08-31 08:30:51,372.372 INFO    ] ================================================
[2026-08-31 08:30:51,953.953 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:30:51
[2026-08-31 08:30:52,552.552 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:30:52,827.827 INFO    ] Initializing speech engine...
[2026-08-31 08:30:52,836.836 INFO    ] 2026-08-31 08:30:52
[2026-08-31 08:30:53,087.087 INFO    ] 2026-08-31 08:30:53
[2026-08-31 08:30:53,122.122 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:30:53,381.381 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:30:53,387.387 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:30:53,612.612 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:30:53,643.643 INFO    ] time= 31/08/2026 08:30:53
[2026-08-31 08:30:53,660.660 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:30:53,668.668 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:30:53,781.781 INFO    ] No existing commands found in stream
[2026-08-31 08:30:58,806.806 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:30:58,809.809 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-08-31 08:30:59,572.572 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 08:30:59,575.575 INFO    ] Checking for system updates...
[2026-08-31 08:30:59,616.616 INFO    ] 200
[2026-08-31 08:30:59,618.618 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:30:59,680.680 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:30:59,682.682 INFO    ] No update needed
[2026-08-31 08:30:59,689.689 INFO    ] Checking for camera pi updates...
[2026-08-31 08:30:59,726.726 INFO    ] 200
[2026-08-31 08:30:59,729.729 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:30:59,769.769 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:30:59,948.948 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:30:59,950.950 INFO    ] No camera update needed
[2026-08-31 08:30:59,952.952 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:30:59,955.955 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:30:59,960.960 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:30:59,965.965 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:31:02,008.008 INFO    ] ================================================
[2026-08-31 08:31:02,025.025 INFO    ] Launching Daemon at Mon Aug 31 08:31:02 IST 2026
[2026-08-31 08:31:02,041.041 INFO    ] ================================================
[2026-08-31 08:31:02,691.691 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:31:02
[2026-08-31 08:31:03,296.296 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:31:03,563.563 INFO    ] Initializing speech engine...
[2026-08-31 08:31:03,573.573 INFO    ] 2026-08-31 08:31:03
[2026-08-31 08:31:03,820.820 INFO    ] 2026-08-31 08:31:03
[2026-08-31 08:31:03,856.856 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:31:04,106.106 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:31:04,115.115 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:31:04,329.329 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:31:04,374.374 INFO    ] time= 31/08/2026 08:31:04
[2026-08-31 08:31:04,380.380 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:31:04,398.398 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:31:04,529.529 INFO    ] No existing commands found in stream
[2026-08-31 08:31:09,544.544 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:31:09,546.546 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-08-31 08:31:12,581.581 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 08:31:12,584.584 INFO    ] Checking for system updates...
[2026-08-31 08:31:12,623.623 INFO    ] 200
[2026-08-31 08:31:12,625.625 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:31:12,677.677 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:31:12,680.680 INFO    ] No update needed
[2026-08-31 08:31:12,682.682 INFO    ] Checking for camera pi updates...
[2026-08-31 08:31:12,716.716 INFO    ] 200
[2026-08-31 08:31:12,718.718 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:31:12,759.759 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:31:12,822.822 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:31:12,824.824 INFO    ] No camera update needed
[2026-08-31 08:31:12,827.827 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:31:12,829.829 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:31:12,834.834 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:31:12,839.839 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:31:14,880.880 INFO    ] ================================================
[2026-08-31 08:31:14,895.895 INFO    ] Launching Daemon at Mon Aug 31 08:31:14 IST 2026
[2026-08-31 08:31:14,905.905 INFO    ] ================================================
[2026-08-31 08:31:15,483.483 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:31:15
[2026-08-31 08:31:16,070.070 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:31:16,344.344 INFO    ] Initializing speech engine...
[2026-08-31 08:31:16,351.351 INFO    ] 2026-08-31 08:31:16
[2026-08-31 08:31:16,595.595 INFO    ] 2026-08-31 08:31:16
[2026-08-31 08:31:16,662.662 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:31:16,885.885 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:31:16,894.894 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:31:17,029.029 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:31:17,079.079 INFO    ] time= 31/08/2026 08:31:17
[2026-08-31 08:31:17,138.138 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:31:17,163.163 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:31:17,294.294 INFO    ] No existing commands found in stream
[2026-08-31 08:31:22,320.320 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:31:22,323.323 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-08-31 08:31:23,447.447 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 08:31:23,450.450 INFO    ] Checking for system updates...
[2026-08-31 08:31:23,486.486 INFO    ] 200
[2026-08-31 08:31:23,489.489 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:31:23,547.547 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:31:23,550.550 INFO    ] No update needed
[2026-08-31 08:31:23,553.553 INFO    ] Checking for camera pi updates...
[2026-08-31 08:31:23,590.590 INFO    ] 200
[2026-08-31 08:31:23,593.593 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:31:23,638.638 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:31:23,722.722 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:31:23,725.725 INFO    ] No camera update needed
[2026-08-31 08:31:23,727.727 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:31:23,730.730 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:31:23,736.736 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:31:23,741.741 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:31:25,782.782 INFO    ] ================================================
[2026-08-31 08:31:25,797.797 INFO    ] Launching Daemon at Mon Aug 31 08:31:25 IST 2026
[2026-08-31 08:31:25,807.807 INFO    ] ================================================
[2026-08-31 08:31:26,391.391 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:31:26
[2026-08-31 08:31:26,992.992 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:31:27,277.277 INFO    ] Initializing speech engine...
[2026-08-31 08:31:27,286.286 INFO    ] 2026-08-31 08:31:27
[2026-08-31 08:31:27,553.553 INFO    ] 2026-08-31 08:31:27
[2026-08-31 08:31:27,589.589 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:31:27,810.810 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:31:27,875.875 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:31:28,029.029 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:31:28,056.056 INFO    ] time= 31/08/2026 08:31:28
[2026-08-31 08:31:28,116.116 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:31:28,176.176 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:31:28,301.301 INFO    ] No existing commands found in stream
[2026-08-31 08:31:33,319.319 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:31:33,322.322 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-08-31 08:31:36,590.590 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 08:31:36,593.593 INFO    ] Checking for system updates...
[2026-08-31 08:31:36,631.631 INFO    ] 200
[2026-08-31 08:31:36,634.634 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:31:36,692.692 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:31:36,694.694 INFO    ] No update needed
[2026-08-31 08:31:36,697.697 INFO    ] Checking for camera pi updates...
[2026-08-31 08:31:36,733.733 INFO    ] 200
[2026-08-31 08:31:36,736.736 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:31:36,779.779 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:31:36,876.876 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:31:36,879.879 INFO    ] No camera update needed
[2026-08-31 08:31:36,881.881 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:31:36,884.884 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:31:36,889.889 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:31:36,894.894 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:31:38,935.935 INFO    ] ================================================
[2026-08-31 08:31:38,950.950 INFO    ] Launching Daemon at Mon Aug 31 08:31:38 IST 2026
[2026-08-31 08:31:38,961.961 INFO    ] ================================================
[2026-08-31 08:31:39,543.543 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:31:39
[2026-08-31 08:31:40,143.143 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:31:40,409.409 INFO    ] Initializing speech engine...
[2026-08-31 08:31:40,422.422 INFO    ] 2026-08-31 08:31:40
[2026-08-31 08:31:40,709.709 INFO    ] 2026-08-31 08:31:40
[2026-08-31 08:31:40,745.745 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:31:40,970.970 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:31:41,030.030 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:31:41,198.198 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:31:41,233.233 INFO    ] time= 31/08/2026 08:31:41
[2026-08-31 08:31:41,293.293 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:31:41,337.337 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:31:41,482.482 INFO    ] No existing commands found in stream
[2026-08-31 08:31:46,513.513 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:31:46,515.515 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-08-31 08:31:47,033.033 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 08:31:47,035.035 INFO    ] Checking for system updates...
[2026-08-31 08:31:47,075.075 INFO    ] 200
[2026-08-31 08:31:47,077.077 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:31:47,135.135 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:31:47,138.138 INFO    ] No update needed
[2026-08-31 08:31:47,141.141 INFO    ] Checking for camera pi updates...
[2026-08-31 08:31:47,174.174 INFO    ] 200
[2026-08-31 08:31:47,177.177 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:31:47,218.218 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:31:47,298.298 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:31:47,301.301 INFO    ] No camera update needed
[2026-08-31 08:31:47,303.303 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:31:47,305.305 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:31:47,311.311 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:31:47,316.316 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:31:49,359.359 INFO    ] ================================================
[2026-08-31 08:31:49,375.375 INFO    ] Launching Daemon at Mon Aug 31 08:31:49 IST 2026
[2026-08-31 08:31:49,386.386 INFO    ] ================================================
[2026-08-31 08:31:49,988.988 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:31:49
[2026-08-31 08:31:50,640.640 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:31:50,912.912 INFO    ] Initializing speech engine...
[2026-08-31 08:31:50,921.921 INFO    ] 2026-08-31 08:31:50
[2026-08-31 08:31:51,172.172 INFO    ] 2026-08-31 08:31:51
[2026-08-31 08:31:51,206.206 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:31:51,409.409 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:31:51,468.468 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:31:51,613.613 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:31:51,668.668 INFO    ] time= 31/08/2026 08:31:51
[2026-08-31 08:31:51,717.717 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:31:51,749.749 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:31:51,808.808 INFO    ] No existing commands found in stream
[2026-08-31 08:31:56,833.833 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:31:56,836.836 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-08-31 08:31:59,215.215 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 08:31:59,218.218 INFO    ] Checking for system updates...
[2026-08-31 08:31:59,254.254 INFO    ] 200
[2026-08-31 08:31:59,256.256 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:31:59,314.314 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:31:59,316.316 INFO    ] No update needed
[2026-08-31 08:31:59,319.319 INFO    ] Checking for camera pi updates...
[2026-08-31 08:31:59,355.355 INFO    ] 200
[2026-08-31 08:31:59,357.357 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:31:59,401.401 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:31:59,487.487 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:31:59,489.489 INFO    ] No camera update needed
[2026-08-31 08:31:59,492.492 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:31:59,500.500 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:31:59,506.506 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:31:59,511.511 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:32:01,554.554 INFO    ] ================================================
[2026-08-31 08:32:01,574.574 INFO    ] Launching Daemon at Mon Aug 31 08:32:01 IST 2026
[2026-08-31 08:32:01,589.589 INFO    ] ================================================
[2026-08-31 08:32:02,221.221 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:32:02
[2026-08-31 08:32:02,875.875 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:32:03,137.137 INFO    ] Initializing speech engine...
[2026-08-31 08:32:03,160.160 INFO    ] 2026-08-31 08:32:03
[2026-08-31 08:32:03,417.417 INFO    ] 2026-08-31 08:32:03
[2026-08-31 08:32:03,452.452 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:32:03,654.654 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:32:03,706.706 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:32:03,942.942 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:32:03,988.988 INFO    ] time= 31/08/2026 08:32:03
[2026-08-31 08:32:03,995.995 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:32:04,013.013 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:32:04,132.132 INFO    ] No existing commands found in stream
[2026-08-31 08:32:09,158.158 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:32:09,161.161 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-08-31 08:32:12,049.049 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 08:32:12,052.052 INFO    ] Checking for system updates...
[2026-08-31 08:32:12,101.101 INFO    ] 200
[2026-08-31 08:32:12,104.104 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-08-31 08:32:12,108.108 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-08-31 08:32:12,111.111 INFO    ] Checking for camera pi updates...
[2026-08-31 08:32:12,152.152 INFO    ] 200
[2026-08-31 08:32:12,156.156 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-08-31 08:32:12,159.159 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-08-31 08:32:12,162.162 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:32:12,166.166 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:32:12,173.173 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:32:12,179.179 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:32:14,223.223 INFO    ] ================================================
[2026-08-31 08:32:14,238.238 INFO    ] Launching Daemon at Mon Aug 31 08:32:14 IST 2026
[2026-08-31 08:32:14,249.249 INFO    ] ================================================
[2026-08-31 08:32:14,902.902 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:32:14
[2026-08-31 08:32:15,575.575 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:32:15,870.870 INFO    ] Initializing speech engine...
[2026-08-31 08:32:15,873.873 INFO    ] 2026-08-31 08:32:15
[2026-08-31 08:32:16,147.147 INFO    ] 2026-08-31 08:32:16
[2026-08-31 08:32:16,214.214 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:32:16,411.411 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:32:16,452.452 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:32:16,614.614 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:32:16,648.648 INFO    ] time= 31/08/2026 08:32:16
[2026-08-31 08:32:16,698.698 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:32:16,753.753 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:32:16,901.901 INFO    ] No existing commands found in stream
[2026-08-31 08:32:21,923.923 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:32:21,926.926 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-08-31 08:32:23,134.134 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 08:32:23,136.136 INFO    ] Checking for system updates...
[2026-08-31 08:32:23,173.173 INFO    ] 200
[2026-08-31 08:32:23,176.176 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:32:23,228.228 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:32:23,231.231 INFO    ] No update needed
[2026-08-31 08:32:23,233.233 INFO    ] Checking for camera pi updates...
[2026-08-31 08:32:23,266.266 INFO    ] 200
[2026-08-31 08:32:23,269.269 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:32:23,310.310 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:32:23,396.396 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:32:23,398.398 INFO    ] No camera update needed
[2026-08-31 08:32:23,401.401 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:32:23,403.403 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:32:23,408.408 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:32:23,413.413 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:32:25,453.453 INFO    ] ================================================
[2026-08-31 08:32:25,477.477 INFO    ] Launching Daemon at Mon Aug 31 08:32:25 IST 2026
[2026-08-31 08:32:25,489.489 INFO    ] ================================================
[2026-08-31 08:32:26,139.139 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:32:26
[2026-08-31 08:32:26,796.796 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:32:27,103.103 INFO    ] Initializing speech engine...
[2026-08-31 08:32:27,115.115 INFO    ] 2026-08-31 08:32:27
[2026-08-31 08:32:27,403.403 INFO    ] 2026-08-31 08:32:27
[2026-08-31 08:32:27,509.509 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:32:27,732.732 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:32:27,737.737 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:32:27,936.936 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:32:27,943.943 INFO    ] time= 31/08/2026 08:32:27
[2026-08-31 08:32:27,962.962 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:32:27,993.993 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:32:28,107.107 INFO    ] No existing commands found in stream
[2026-08-31 08:32:33,130.130 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:32:33,132.132 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-08-31 08:32:34,895.895 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 08:32:34,897.897 INFO    ] Checking for system updates...
[2026-08-31 08:32:34,937.937 INFO    ] 200
[2026-08-31 08:32:34,939.939 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:32:34,997.997 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:32:34,999.999 INFO    ] No update needed
[2026-08-31 08:32:35,002.002 INFO    ] Checking for camera pi updates...
[2026-08-31 08:32:35,035.035 INFO    ] 200
[2026-08-31 08:32:35,038.038 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:32:35,079.079 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:32:35,159.159 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:32:35,161.161 INFO    ] No camera update needed
[2026-08-31 08:32:35,163.163 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:32:35,166.166 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:32:35,171.171 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:32:35,176.176 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:32:37,215.215 INFO    ] ================================================
[2026-08-31 08:32:37,231.231 INFO    ] Launching Daemon at Mon Aug 31 08:32:37 IST 2026
[2026-08-31 08:32:37,241.241 INFO    ] ================================================
[2026-08-31 08:32:37,822.822 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:32:37
[2026-08-31 08:32:38,421.421 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:32:38,699.699 INFO    ] Initializing speech engine...
[2026-08-31 08:32:38,705.705 INFO    ] 2026-08-31 08:32:38
[2026-08-31 08:32:38,980.980 INFO    ] 2026-08-31 08:32:38
[2026-08-31 08:32:39,024.024 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:32:39,290.290 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:32:39,313.313 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:32:39,508.508 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:32:39,515.515 INFO    ] time= 31/08/2026 08:32:39
[2026-08-31 08:32:39,532.532 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:32:39,550.550 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:32:39,688.688 INFO    ] No existing commands found in stream
[2026-08-31 08:32:44,718.718 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:32:44,721.721 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-08-31 08:32:46,767.767 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 08:32:46,770.770 INFO    ] Checking for system updates...
[2026-08-31 08:32:46,809.809 INFO    ] 200
[2026-08-31 08:32:46,812.812 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:32:46,864.864 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:32:46,866.866 INFO    ] No update needed
[2026-08-31 08:32:46,869.869 INFO    ] Checking for camera pi updates...
[2026-08-31 08:32:46,902.902 INFO    ] 200
[2026-08-31 08:32:46,904.904 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:32:46,945.945 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:32:47,018.018 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:32:47,021.021 INFO    ] No camera update needed
[2026-08-31 08:32:47,023.023 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:32:47,025.025 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:32:47,031.031 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:32:47,036.036 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:32:49,079.079 INFO    ] ================================================
[2026-08-31 08:32:49,094.094 INFO    ] Launching Daemon at Mon Aug 31 08:32:49 IST 2026
[2026-08-31 08:32:49,105.105 INFO    ] ================================================
[2026-08-31 08:32:49,670.670 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:32:49
[2026-08-31 08:32:50,253.253 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:32:50,498.498 INFO    ] Initializing speech engine...
[2026-08-31 08:32:50,506.506 INFO    ] 2026-08-31 08:32:50
[2026-08-31 08:32:50,781.781 INFO    ] 2026-08-31 08:32:50
[2026-08-31 08:32:50,816.816 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:32:51,014.014 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:32:51,042.042 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:32:51,218.218 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:32:51,245.245 INFO    ] time= 31/08/2026 08:32:51
[2026-08-31 08:32:51,295.295 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:32:51,354.354 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:32:51,492.492 INFO    ] No existing commands found in stream
[2026-08-31 08:32:56,515.515 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:32:56,518.518 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-08-31 08:32:57,350.350 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 08:32:57,352.352 INFO    ] Checking for system updates...
[2026-08-31 08:32:57,392.392 INFO    ] 200
[2026-08-31 08:32:57,394.394 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:32:57,453.453 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:32:57,455.455 INFO    ] No update needed
[2026-08-31 08:32:57,458.458 INFO    ] Checking for camera pi updates...
[2026-08-31 08:32:57,491.491 INFO    ] 200
[2026-08-31 08:32:57,494.494 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:32:57,534.534 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:32:57,607.607 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:32:57,610.610 INFO    ] No camera update needed
[2026-08-31 08:32:57,612.612 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:32:57,614.614 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:32:57,620.620 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:32:57,625.625 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:32:59,666.666 INFO    ] ================================================
[2026-08-31 08:32:59,681.681 INFO    ] Launching Daemon at Mon Aug 31 08:32:59 IST 2026
[2026-08-31 08:32:59,693.693 INFO    ] ================================================
[2026-08-31 08:33:00,276.276 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:33:00
[2026-08-31 08:33:00,878.878 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:33:01,273.273 INFO    ] Initializing speech engine...
[2026-08-31 08:33:01,277.277 INFO    ] 2026-08-31 08:33:01
[2026-08-31 08:33:01,600.600 INFO    ] 2026-08-31 08:33:01
[2026-08-31 08:33:01,665.665 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:33:01,912.912 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:33:01,922.922 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:33:02,060.060 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:33:02,063.063 INFO    ] time= 31/08/2026 08:33:02
[2026-08-31 08:33:02,067.067 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:33:02,070.070 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:33:02,129.129 INFO    ] No existing commands found in stream
[2026-08-31 08:33:07,140.140 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:33:07,143.143 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-08-31 08:33:11,227.227 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 08:33:11,230.230 INFO    ] Checking for system updates...
[2026-08-31 08:33:11,271.271 INFO    ] 200
[2026-08-31 08:33:11,274.274 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:33:11,327.327 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:33:11,330.330 INFO    ] No update needed
[2026-08-31 08:33:11,333.333 INFO    ] Checking for camera pi updates...
[2026-08-31 08:33:11,368.368 INFO    ] 200
[2026-08-31 08:33:11,371.371 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:33:11,416.416 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:33:11,500.500 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:33:11,503.503 INFO    ] No camera update needed
[2026-08-31 08:33:11,506.506 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:33:11,509.509 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:33:11,515.515 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:33:11,520.520 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:33:13,561.561 INFO    ] ================================================
[2026-08-31 08:33:13,577.577 INFO    ] Launching Daemon at Mon Aug 31 08:33:13 IST 2026
[2026-08-31 08:33:13,588.588 INFO    ] ================================================
[2026-08-31 08:33:14,151.151 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:33:14
[2026-08-31 08:33:14,731.731 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:33:14,979.979 INFO    ] Initializing speech engine...
[2026-08-31 08:33:14,993.993 INFO    ] 2026-08-31 08:33:14
[2026-08-31 08:33:15,258.258 INFO    ] 2026-08-31 08:33:15
[2026-08-31 08:33:15,295.295 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:33:15,491.491 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:33:15,514.514 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:33:15,713.713 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:33:15,763.763 INFO    ] time= 31/08/2026 08:33:15
[2026-08-31 08:33:15,807.807 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:33:15,833.833 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:33:15,966.966 INFO    ] No existing commands found in stream
[2026-08-31 08:33:20,991.991 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:33:20,993.993 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-08-31 08:33:23,692.692 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 08:33:23,694.694 INFO    ] Checking for system updates...
[2026-08-31 08:33:23,730.730 INFO    ] 200
[2026-08-31 08:33:23,733.733 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:33:23,785.785 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:33:23,787.787 INFO    ] No update needed
[2026-08-31 08:33:23,790.790 INFO    ] Checking for camera pi updates...
[2026-08-31 08:33:23,826.826 INFO    ] 200
[2026-08-31 08:33:23,829.829 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:33:23,870.870 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:33:23,953.953 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:33:23,956.956 INFO    ] No camera update needed
[2026-08-31 08:33:23,958.958 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:33:23,961.961 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:33:23,966.966 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:33:23,971.971 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:33:26,012.012 INFO    ] ================================================
[2026-08-31 08:33:26,027.027 INFO    ] Launching Daemon at Mon Aug 31 08:33:26 IST 2026
[2026-08-31 08:33:26,038.038 INFO    ] ================================================
[2026-08-31 08:33:26,604.604 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:33:26
[2026-08-31 08:33:27,186.186 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:33:27,455.455 INFO    ] Initializing speech engine...
[2026-08-31 08:33:27,464.464 INFO    ] 2026-08-31 08:33:27
[2026-08-31 08:33:27,713.713 INFO    ] 2026-08-31 08:33:27
[2026-08-31 08:33:27,748.748 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:33:28,005.005 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:33:28,014.014 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:33:28,217.217 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:33:28,277.277 INFO    ] time= 31/08/2026 08:33:28
[2026-08-31 08:33:28,284.284 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:33:28,302.302 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:33:28,435.435 INFO    ] No existing commands found in stream
[2026-08-31 08:33:33,447.447 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:33:33,450.450 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-08-31 08:33:36,341.341 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 08:33:36,344.344 INFO    ] Checking for system updates...
[2026-08-31 08:33:36,382.382 INFO    ] 200
[2026-08-31 08:33:36,385.385 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:33:36,438.438 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:33:36,441.441 INFO    ] No update needed
[2026-08-31 08:33:36,443.443 INFO    ] Checking for camera pi updates...
[2026-08-31 08:33:36,480.480 INFO    ] 200
[2026-08-31 08:33:36,482.482 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:33:36,528.528 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:33:36,610.610 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:33:36,613.613 INFO    ] No camera update needed
[2026-08-31 08:33:36,615.615 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:33:36,618.618 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:33:36,623.623 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:33:36,628.628 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:33:38,668.668 INFO    ] ================================================
[2026-08-31 08:33:38,683.683 INFO    ] Launching Daemon at Mon Aug 31 08:33:38 IST 2026
[2026-08-31 08:33:38,693.693 INFO    ] ================================================
[2026-08-31 08:33:39,274.274 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:33:39
[2026-08-31 08:33:39,870.870 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:33:40,131.131 INFO    ] Initializing speech engine...
[2026-08-31 08:33:40,138.138 INFO    ] 2026-08-31 08:33:40
[2026-08-31 08:33:40,433.433 INFO    ] 2026-08-31 08:33:40
[2026-08-31 08:33:40,470.470 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:33:40,664.664 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:33:40,681.681 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:33:40,844.844 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:33:40,850.850 INFO    ] time= 31/08/2026 08:33:40
[2026-08-31 08:33:40,856.856 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:33:40,879.879 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:33:41,011.011 INFO    ] No existing commands found in stream
[2026-08-31 08:33:46,036.036 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:33:46,039.039 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-08-31 08:33:47,654.654 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 08:33:47,656.656 INFO    ] Checking for system updates...
[2026-08-31 08:33:47,695.695 INFO    ] 200
[2026-08-31 08:33:47,698.698 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:33:47,751.751 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:33:47,754.754 INFO    ] No update needed
[2026-08-31 08:33:47,757.757 INFO    ] Checking for camera pi updates...
[2026-08-31 08:33:47,792.792 INFO    ] 200
[2026-08-31 08:33:47,794.794 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:33:47,835.835 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:33:47,921.921 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:33:47,924.924 INFO    ] No camera update needed
[2026-08-31 08:33:47,926.926 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:33:47,929.929 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:33:47,934.934 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:33:47,939.939 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:33:49,985.985 INFO    ] ================================================
[2026-08-31 08:33:50,000.000 INFO    ] Launching Daemon at Mon Aug 31 08:33:49 IST 2026
[2026-08-31 08:33:50,011.011 INFO    ] ================================================
[2026-08-31 08:33:50,578.578 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:33:50
[2026-08-31 08:33:51,167.167 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:33:51,423.423 INFO    ] Initializing speech engine...
[2026-08-31 08:33:51,429.429 INFO    ] 2026-08-31 08:33:51
[2026-08-31 08:33:51,720.720 INFO    ] 2026-08-31 08:33:51
[2026-08-31 08:33:51,758.758 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:33:51,976.976 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:33:51,984.984 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:33:52,130.130 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:33:52,137.137 INFO    ] time= 31/08/2026 08:33:52
[2026-08-31 08:33:52,150.150 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:33:52,211.211 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:33:52,328.328 INFO    ] No existing commands found in stream
[2026-08-31 08:33:57,364.364 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:33:57,366.366 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-08-31 08:33:59,608.608 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 08:33:59,611.611 INFO    ] Checking for system updates...
[2026-08-31 08:33:59,650.650 INFO    ] 200
[2026-08-31 08:33:59,652.652 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:33:59,704.704 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:33:59,706.706 INFO    ] No update needed
[2026-08-31 08:33:59,709.709 INFO    ] Checking for camera pi updates...
[2026-08-31 08:33:59,743.743 INFO    ] 200
[2026-08-31 08:33:59,746.746 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:33:59,791.791 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:33:59,872.872 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:33:59,874.874 INFO    ] No camera update needed
[2026-08-31 08:33:59,877.877 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:33:59,879.879 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:33:59,885.885 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:33:59,890.890 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:34:01,946.946 INFO    ] ================================================
[2026-08-31 08:34:01,968.968 INFO    ] Launching Daemon at Mon Aug 31 08:34:01 IST 2026
[2026-08-31 08:34:01,982.982 INFO    ] ================================================
[2026-08-31 08:34:02,688.688 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:34:02
[2026-08-31 08:34:03,305.305 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:34:03,571.571 INFO    ] Initializing speech engine...
[2026-08-31 08:34:03,581.581 INFO    ] 2026-08-31 08:34:03
[2026-08-31 08:34:03,827.827 INFO    ] 2026-08-31 08:34:03
[2026-08-31 08:34:03,862.862 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:34:04,116.116 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:34:04,121.121 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:34:04,335.335 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:34:04,381.381 INFO    ] time= 31/08/2026 08:34:04
[2026-08-31 08:34:04,387.387 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:34:04,405.405 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:34:04,530.530 INFO    ] No existing commands found in stream
[2026-08-31 08:34:09,545.545 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:34:09,548.548 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-08-31 08:34:13,606.606 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 08:34:13,609.609 INFO    ] Checking for system updates...
[2026-08-31 08:34:13,650.650 INFO    ] 200
[2026-08-31 08:34:13,654.654 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:34:13,707.707 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:34:13,710.710 INFO    ] No update needed
[2026-08-31 08:34:13,713.713 INFO    ] Checking for camera pi updates...
[2026-08-31 08:34:13,752.752 INFO    ] 200
[2026-08-31 08:34:13,754.754 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:34:13,801.801 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:34:13,888.888 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:34:13,891.891 INFO    ] No camera update needed
[2026-08-31 08:34:13,893.893 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:34:13,896.896 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:34:13,901.901 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:34:13,906.906 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:34:15,947.947 INFO    ] ================================================
[2026-08-31 08:34:15,967.967 INFO    ] Launching Daemon at Mon Aug 31 08:34:15 IST 2026
[2026-08-31 08:34:15,981.981 INFO    ] ================================================
[2026-08-31 08:34:16,554.554 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:34:16
[2026-08-31 08:34:17,136.136 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:34:17,403.403 INFO    ] Initializing speech engine...
[2026-08-31 08:34:17,412.412 INFO    ] 2026-08-31 08:34:17
[2026-08-31 08:34:17,667.667 INFO    ] 2026-08-31 08:34:17
[2026-08-31 08:34:17,726.726 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:34:17,970.970 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:34:17,981.981 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:34:18,134.134 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:34:18,151.151 INFO    ] time= 31/08/2026 08:34:18
[2026-08-31 08:34:18,211.211 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:34:18,250.250 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:34:18,348.348 INFO    ] No existing commands found in stream
[2026-08-31 08:34:23,359.359 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:34:23,362.362 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-08-31 08:34:26,741.741 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 08:34:26,744.744 INFO    ] Checking for system updates...
[2026-08-31 08:34:26,786.786 INFO    ] 200
[2026-08-31 08:34:26,789.789 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:34:26,852.852 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:34:26,855.855 INFO    ] No update needed
[2026-08-31 08:34:26,858.858 INFO    ] Checking for camera pi updates...
[2026-08-31 08:34:26,897.897 INFO    ] 200
[2026-08-31 08:34:26,901.901 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:34:26,942.942 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:34:26,995.995 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:34:26,998.998 INFO    ] No camera update needed
[2026-08-31 08:34:27,001.001 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:34:27,003.003 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:34:27,010.010 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:34:27,016.016 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:34:29,059.059 INFO    ] ================================================
[2026-08-31 08:34:29,075.075 INFO    ] Launching Daemon at Mon Aug 31 08:34:29 IST 2026
[2026-08-31 08:34:29,086.086 INFO    ] ================================================
[2026-08-31 08:34:29,763.763 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:34:29
[2026-08-31 08:34:30,461.461 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:34:30,771.771 INFO    ] Initializing speech engine...
[2026-08-31 08:34:30,779.779 INFO    ] 2026-08-31 08:34:30
[2026-08-31 08:34:31,043.043 INFO    ] 2026-08-31 08:34:31
[2026-08-31 08:34:31,096.096 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:34:31,344.344 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:34:31,351.351 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:34:31,583.583 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:34:31,626.626 INFO    ] time= 31/08/2026 08:34:31
[2026-08-31 08:34:31,645.645 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:34:31,656.656 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:34:31,769.769 INFO    ] No existing commands found in stream
[2026-08-31 08:34:36,803.803 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:34:36,806.806 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-08-31 08:34:39,825.825 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 08:34:39,829.829 INFO    ] Checking for system updates...
[2026-08-31 08:34:39,868.868 INFO    ] 200
[2026-08-31 08:34:39,870.870 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:34:39,928.928 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:34:39,930.930 INFO    ] No update needed
[2026-08-31 08:34:39,933.933 INFO    ] Checking for camera pi updates...
[2026-08-31 08:34:39,974.974 INFO    ] 200
[2026-08-31 08:34:39,976.976 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:34:40,020.020 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:34:40,108.108 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:34:40,110.110 INFO    ] No camera update needed
[2026-08-31 08:34:40,113.113 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:34:40,116.116 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:34:40,122.122 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:34:40,128.128 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:34:42,171.171 INFO    ] ================================================
[2026-08-31 08:34:42,187.187 INFO    ] Launching Daemon at Mon Aug 31 08:34:42 IST 2026
[2026-08-31 08:34:42,199.199 INFO    ] ================================================
[2026-08-31 08:34:42,765.765 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:34:42
[2026-08-31 08:34:43,350.350 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:34:43,608.608 INFO    ] Initializing speech engine...
[2026-08-31 08:34:43,617.617 INFO    ] 2026-08-31 08:34:43
[2026-08-31 08:34:43,892.892 INFO    ] 2026-08-31 08:34:43
[2026-08-31 08:34:43,926.926 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:34:44,125.125 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:34:44,138.138 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:34:44,282.282 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:34:44,289.289 INFO    ] time= 31/08/2026 08:34:44
[2026-08-31 08:34:44,312.312 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:34:44,367.367 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:34:44,493.493 INFO    ] No existing commands found in stream
[2026-08-31 08:34:49,523.523 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:34:49,526.526 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-08-31 08:34:51,365.365 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 08:34:51,368.368 INFO    ] Checking for system updates...
[2026-08-31 08:34:51,404.404 INFO    ] 200
[2026-08-31 08:34:51,406.406 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:34:51,458.458 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:34:51,461.461 INFO    ] No update needed
[2026-08-31 08:34:51,463.463 INFO    ] Checking for camera pi updates...
[2026-08-31 08:34:51,497.497 INFO    ] 200
[2026-08-31 08:34:51,500.500 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:34:51,546.546 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:34:51,651.651 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:34:51,653.653 INFO    ] No camera update needed
[2026-08-31 08:34:51,655.655 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:34:51,658.658 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:34:51,663.663 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:34:51,668.668 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:34:53,708.708 INFO    ] ================================================
[2026-08-31 08:34:53,724.724 INFO    ] Launching Daemon at Mon Aug 31 08:34:53 IST 2026
[2026-08-31 08:34:53,735.735 INFO    ] ================================================
[2026-08-31 08:34:54,412.412 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:34:54
[2026-08-31 08:34:55,049.049 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:34:55,296.296 INFO    ] Initializing speech engine...
[2026-08-31 08:34:55,308.308 INFO    ] 2026-08-31 08:34:55
[2026-08-31 08:34:55,570.570 INFO    ] 2026-08-31 08:34:55
[2026-08-31 08:34:55,605.605 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:34:55,801.801 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:34:55,858.858 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:34:56,004.004 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:34:56,069.069 INFO    ] time= 31/08/2026 08:34:56
[2026-08-31 08:34:56,123.123 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:34:56,133.133 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:34:56,281.281 INFO    ] No existing commands found in stream
[2026-08-31 08:35:01,300.300 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:35:01,304.304 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-08-31 08:35:05,367.367 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 08:35:05,370.370 INFO    ] Checking for system updates...
[2026-08-31 08:35:05,405.405 INFO    ] 200
[2026-08-31 08:35:05,408.408 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:35:05,462.462 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:35:05,464.464 INFO    ] No update needed
[2026-08-31 08:35:05,467.467 INFO    ] Checking for camera pi updates...
[2026-08-31 08:35:05,500.500 INFO    ] 200
[2026-08-31 08:35:05,502.502 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:35:05,543.543 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:35:05,722.722 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:35:05,724.724 INFO    ] No camera update needed
[2026-08-31 08:35:05,727.727 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:35:05,729.729 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:35:05,734.734 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:35:05,739.739 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:35:07,784.784 INFO    ] ================================================
[2026-08-31 08:35:07,800.800 INFO    ] Launching Daemon at Mon Aug 31 08:35:07 IST 2026
[2026-08-31 08:35:07,811.811 INFO    ] ================================================
[2026-08-31 08:35:08,392.392 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:35:08
[2026-08-31 08:35:08,990.990 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:35:09,267.267 INFO    ] Initializing speech engine...
[2026-08-31 08:35:09,272.272 INFO    ] 2026-08-31 08:35:09
[2026-08-31 08:35:09,521.521 INFO    ] 2026-08-31 08:35:09
[2026-08-31 08:35:09,554.554 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:35:09,727.727 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:35:09,738.738 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:35:09,883.883 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:35:09,888.888 INFO    ] time= 31/08/2026 08:35:09
[2026-08-31 08:35:09,894.894 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:35:09,940.940 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:35:10,085.085 INFO    ] No existing commands found in stream
[2026-08-31 08:35:15,097.097 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:35:15,100.100 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-08-31 08:35:16,685.685 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 08:35:16,688.688 INFO    ] Checking for system updates...
[2026-08-31 08:35:16,728.728 INFO    ] 200
[2026-08-31 08:35:16,730.730 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:35:16,783.783 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:35:16,785.785 INFO    ] No update needed
[2026-08-31 08:35:16,788.788 INFO    ] Checking for camera pi updates...
[2026-08-31 08:35:16,822.822 INFO    ] 200
[2026-08-31 08:35:16,825.825 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:35:16,871.871 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:35:16,951.951 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:35:16,953.953 INFO    ] No camera update needed
[2026-08-31 08:35:16,955.955 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:35:16,958.958 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:35:16,963.963 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:35:16,969.969 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:35:19,010.010 INFO    ] ================================================
[2026-08-31 08:35:19,025.025 INFO    ] Launching Daemon at Mon Aug 31 08:35:19 IST 2026
[2026-08-31 08:35:19,036.036 INFO    ] ================================================
[2026-08-31 08:35:19,673.673 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:35:19
[2026-08-31 08:35:20,306.306 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:35:20,607.607 INFO    ] Initializing speech engine...
[2026-08-31 08:35:20,615.615 INFO    ] 2026-08-31 08:35:20
[2026-08-31 08:35:20,906.906 INFO    ] 2026-08-31 08:35:20
[2026-08-31 08:35:20,951.951 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:35:21,208.208 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:35:21,214.214 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:35:21,426.426 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:35:21,458.458 INFO    ] time= 31/08/2026 08:35:21
[2026-08-31 08:35:21,474.474 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:35:21,494.494 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:35:21,629.629 INFO    ] No existing commands found in stream
[2026-08-31 08:35:26,655.655 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:35:26,659.659 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-08-31 08:35:30,046.046 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 08:35:30,049.049 INFO    ] Checking for system updates...
[2026-08-31 08:35:30,088.088 INFO    ] 200
[2026-08-31 08:35:30,091.091 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:35:30,142.142 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:35:30,145.145 INFO    ] No update needed
[2026-08-31 08:35:30,147.147 INFO    ] Checking for camera pi updates...
[2026-08-31 08:35:30,184.184 INFO    ] 200
[2026-08-31 08:35:30,187.187 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:35:30,231.231 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:35:30,315.315 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:35:30,317.317 INFO    ] No camera update needed
[2026-08-31 08:35:30,320.320 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:35:30,322.322 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:35:30,327.327 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:35:30,332.332 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:35:32,375.375 INFO    ] ================================================
[2026-08-31 08:35:32,392.392 INFO    ] Launching Daemon at Mon Aug 31 08:35:32 IST 2026
[2026-08-31 08:35:32,404.404 INFO    ] ================================================
[2026-08-31 08:35:33,007.007 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:35:33
[2026-08-31 08:35:33,600.600 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:35:33,872.872 INFO    ] Initializing speech engine...
[2026-08-31 08:35:33,882.882 INFO    ] 2026-08-31 08:35:33
[2026-08-31 08:35:34,130.130 INFO    ] 2026-08-31 08:35:34
[2026-08-31 08:35:34,165.165 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:35:34,421.421 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:35:34,425.425 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:35:34,624.624 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:35:34,681.681 INFO    ] time= 31/08/2026 08:35:34
[2026-08-31 08:35:34,687.687 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:35:34,705.705 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:35:34,850.850 INFO    ] No existing commands found in stream
[2026-08-31 08:35:39,887.887 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:35:39,890.890 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-08-31 08:35:43,460.460 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 08:35:43,463.463 INFO    ] Checking for system updates...
[2026-08-31 08:35:43,499.499 INFO    ] 200
[2026-08-31 08:35:43,501.501 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:35:43,560.560 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:35:43,562.562 INFO    ] No update needed
[2026-08-31 08:35:43,565.565 INFO    ] Checking for camera pi updates...
[2026-08-31 08:35:43,599.599 INFO    ] 200
[2026-08-31 08:35:43,601.601 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:35:43,641.641 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:35:43,725.725 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:35:43,728.728 INFO    ] No camera update needed
[2026-08-31 08:35:43,730.730 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:35:43,732.732 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:35:43,738.738 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:35:43,743.743 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:35:45,784.784 INFO    ] ================================================
[2026-08-31 08:35:45,800.800 INFO    ] Launching Daemon at Mon Aug 31 08:35:45 IST 2026
[2026-08-31 08:35:45,810.810 INFO    ] ================================================
[2026-08-31 08:35:46,461.461 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:35:46
[2026-08-31 08:35:47,126.126 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:35:47,430.430 INFO    ] Initializing speech engine...
[2026-08-31 08:35:47,441.441 INFO    ] 2026-08-31 08:35:47
[2026-08-31 08:35:47,749.749 INFO    ] 2026-08-31 08:35:47
[2026-08-31 08:35:47,833.833 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:35:48,054.054 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:35:48,109.109 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:35:48,296.296 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:35:48,305.305 INFO    ] time= 31/08/2026 08:35:48
[2026-08-31 08:35:48,337.337 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:35:48,399.399 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:35:48,508.508 INFO    ] No existing commands found in stream
[2026-08-31 08:35:53,523.523 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:35:53,526.526 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-08-31 08:35:55,941.941 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 08:35:55,944.944 INFO    ] Checking for system updates...
[2026-08-31 08:35:55,979.979 INFO    ] 200
[2026-08-31 08:35:55,981.981 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:35:56,040.040 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:35:56,042.042 INFO    ] No update needed
[2026-08-31 08:35:56,044.044 INFO    ] Checking for camera pi updates...
[2026-08-31 08:35:56,079.079 INFO    ] 200
[2026-08-31 08:35:56,081.081 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:35:56,121.121 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:35:56,206.206 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:35:56,208.208 INFO    ] No camera update needed
[2026-08-31 08:35:56,210.210 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:35:56,213.213 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:35:56,218.218 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:35:56,223.223 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:35:58,263.263 INFO    ] ================================================
[2026-08-31 08:35:58,278.278 INFO    ] Launching Daemon at Mon Aug 31 08:35:58 IST 2026
[2026-08-31 08:35:58,289.289 INFO    ] ================================================
[2026-08-31 08:35:58,937.937 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:35:58
[2026-08-31 08:35:59,539.539 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:35:59,794.794 INFO    ] Initializing speech engine...
[2026-08-31 08:35:59,816.816 INFO    ] 2026-08-31 08:35:59
[2026-08-31 08:36:00,071.071 INFO    ] 2026-08-31 08:36:00
[2026-08-31 08:36:00,108.108 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:36:00,364.364 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:36:00,369.369 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:36:00,503.503 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:36:00,543.543 INFO    ] time= 31/08/2026 08:36:00
[2026-08-31 08:36:00,602.602 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:36:00,636.636 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:36:00,764.764 INFO    ] No existing commands found in stream
[2026-08-31 08:36:05,791.791 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:36:05,794.794 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-08-31 08:36:08,011.011 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 08:36:08,014.014 INFO    ] Checking for system updates...
[2026-08-31 08:36:08,052.052 INFO    ] 200
[2026-08-31 08:36:08,055.055 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:36:08,108.108 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:36:08,111.111 INFO    ] No update needed
[2026-08-31 08:36:08,113.113 INFO    ] Checking for camera pi updates...
[2026-08-31 08:36:08,149.149 INFO    ] 200
[2026-08-31 08:36:08,152.152 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:36:08,197.197 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:36:08,275.275 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:36:08,278.278 INFO    ] No camera update needed
[2026-08-31 08:36:08,280.280 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:36:08,283.283 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:36:08,288.288 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:36:08,293.293 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:36:10,335.335 INFO    ] ================================================
[2026-08-31 08:36:10,351.351 INFO    ] Launching Daemon at Mon Aug 31 08:36:10 IST 2026
[2026-08-31 08:36:10,363.363 INFO    ] ================================================
[2026-08-31 08:36:10,944.944 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:36:10
[2026-08-31 08:36:11,544.544 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:36:11,823.823 INFO    ] Initializing speech engine...
[2026-08-31 08:36:11,831.831 INFO    ] 2026-08-31 08:36:11
[2026-08-31 08:36:12,089.089 INFO    ] 2026-08-31 08:36:12
[2026-08-31 08:36:12,122.122 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:36:12,372.372 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:36:12,379.379 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:36:12,636.636 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:36:12,643.643 INFO    ] time= 31/08/2026 08:36:12
[2026-08-31 08:36:12,664.664 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:36:12,692.692 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:36:12,798.798 INFO    ] No existing commands found in stream
[2026-08-31 08:36:17,827.827 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:36:17,830.830 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-08-31 08:36:19,724.724 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 08:36:19,727.727 INFO    ] Checking for system updates...
[2026-08-31 08:36:19,763.763 INFO    ] 200
[2026-08-31 08:36:19,765.765 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:36:19,825.825 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:36:19,827.827 INFO    ] No update needed
[2026-08-31 08:36:19,830.830 INFO    ] Checking for camera pi updates...
[2026-08-31 08:36:19,864.864 INFO    ] 200
[2026-08-31 08:36:19,866.866 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:36:19,905.905 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:36:19,991.991 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:36:19,994.994 INFO    ] No camera update needed
[2026-08-31 08:36:19,996.996 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:36:19,998.998 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:36:20,004.004 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:36:20,009.009 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:36:22,048.048 INFO    ] ================================================
[2026-08-31 08:36:22,064.064 INFO    ] Launching Daemon at Mon Aug 31 08:36:22 IST 2026
[2026-08-31 08:36:22,075.075 INFO    ] ================================================
[2026-08-31 08:36:22,642.642 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:36:22
[2026-08-31 08:36:23,224.224 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:36:23,476.476 INFO    ] Initializing speech engine...
[2026-08-31 08:36:23,483.483 INFO    ] 2026-08-31 08:36:23
[2026-08-31 08:36:23,756.756 INFO    ] 2026-08-31 08:36:23
[2026-08-31 08:36:23,791.791 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:36:24,042.042 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:36:24,051.051 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:36:24,184.184 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:36:24,231.231 INFO    ] time= 31/08/2026 08:36:24
[2026-08-31 08:36:24,285.285 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:36:24,318.318 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:36:24,450.450 INFO    ] No existing commands found in stream
[2026-08-31 08:36:29,474.474 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:36:29,477.477 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-08-31 08:36:31,008.008 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 08:36:31,010.010 INFO    ] Checking for system updates...
[2026-08-31 08:36:31,046.046 INFO    ] 200
[2026-08-31 08:36:31,049.049 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:36:31,105.105 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:36:31,107.107 INFO    ] No update needed
[2026-08-31 08:36:31,110.110 INFO    ] Checking for camera pi updates...
[2026-08-31 08:36:31,146.146 INFO    ] 200
[2026-08-31 08:36:31,148.148 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:36:31,191.191 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:36:31,277.277 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:36:31,279.279 INFO    ] No camera update needed
[2026-08-31 08:36:31,282.282 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:36:31,284.284 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:36:31,289.289 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:36:31,294.294 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:36:33,335.335 INFO    ] ================================================
[2026-08-31 08:36:33,351.351 INFO    ] Launching Daemon at Mon Aug 31 08:36:33 IST 2026
[2026-08-31 08:36:33,361.361 INFO    ] ================================================
[2026-08-31 08:36:33,997.997 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:36:33
[2026-08-31 08:36:34,648.648 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:36:34,944.944 INFO    ] Initializing speech engine...
[2026-08-31 08:36:34,958.958 INFO    ] 2026-08-31 08:36:34
[2026-08-31 08:36:35,269.269 INFO    ] 2026-08-31 08:36:35
[2026-08-31 08:36:35,350.350 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:36:35,505.505 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:36:35,511.511 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:36:35,741.741 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:36:35,772.772 INFO    ] time= 31/08/2026 08:36:35
[2026-08-31 08:36:35,786.786 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:36:35,796.796 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:36:35,927.927 INFO    ] No existing commands found in stream
[2026-08-31 08:36:40,950.950 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:36:40,953.953 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-08-31 08:36:43,416.416 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 08:36:43,419.419 INFO    ] Checking for system updates...
[2026-08-31 08:36:43,456.456 INFO    ] 200
[2026-08-31 08:36:43,459.459 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:36:43,516.516 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:36:43,520.520 INFO    ] No update needed
[2026-08-31 08:36:43,523.523 INFO    ] Checking for camera pi updates...
[2026-08-31 08:36:43,560.560 INFO    ] 200
[2026-08-31 08:36:43,562.562 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:36:43,611.611 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:36:43,695.695 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:36:43,698.698 INFO    ] No camera update needed
[2026-08-31 08:36:43,701.701 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:36:43,703.703 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:36:43,709.709 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:36:43,715.715 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:36:45,755.755 INFO    ] ================================================
[2026-08-31 08:36:45,770.770 INFO    ] Launching Daemon at Mon Aug 31 08:36:45 IST 2026
[2026-08-31 08:36:45,781.781 INFO    ] ================================================
[2026-08-31 08:36:46,358.358 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:36:46
[2026-08-31 08:36:46,951.951 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:36:47,210.210 INFO    ] Initializing speech engine...
[2026-08-31 08:36:47,235.235 INFO    ] 2026-08-31 08:36:47
[2026-08-31 08:36:47,502.502 INFO    ] 2026-08-31 08:36:47
[2026-08-31 08:36:47,539.539 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:36:47,731.731 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:36:47,750.750 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:36:47,904.904 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:36:47,910.910 INFO    ] time= 31/08/2026 08:36:47
[2026-08-31 08:36:47,917.917 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:36:47,954.954 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:36:48,090.090 INFO    ] No existing commands found in stream
[2026-08-31 08:36:53,121.121 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:36:53,123.123 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-08-31 08:36:57,044.044 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 08:36:57,047.047 INFO    ] Checking for system updates...
[2026-08-31 08:36:57,082.082 INFO    ] 200
[2026-08-31 08:36:57,085.085 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:36:57,142.142 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:36:57,144.144 INFO    ] No update needed
[2026-08-31 08:36:57,146.146 INFO    ] Checking for camera pi updates...
[2026-08-31 08:36:57,183.183 INFO    ] 200
[2026-08-31 08:36:57,185.185 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:36:57,226.226 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:36:57,305.305 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:36:57,308.308 INFO    ] No camera update needed
[2026-08-31 08:36:57,310.310 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:36:57,312.312 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:36:57,318.318 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:36:57,322.322 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:36:59,363.363 INFO    ] ================================================
[2026-08-31 08:36:59,378.378 INFO    ] Launching Daemon at Mon Aug 31 08:36:59 IST 2026
[2026-08-31 08:36:59,389.389 INFO    ] ================================================
[2026-08-31 08:36:59,977.977 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:36:59
[2026-08-31 08:37:00,574.574 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:37:00,849.849 INFO    ] Initializing speech engine...
[2026-08-31 08:37:00,862.862 INFO    ] 2026-08-31 08:37:00
[2026-08-31 08:37:01,126.126 INFO    ] 2026-08-31 08:37:01
[2026-08-31 08:37:01,161.161 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:37:01,402.402 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:37:01,407.407 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:37:01,529.529 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:37:01,532.532 INFO    ] time= 31/08/2026 08:37:01
[2026-08-31 08:37:01,535.535 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:37:01,539.539 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:37:01,594.594 INFO    ] No existing commands found in stream
[2026-08-31 08:37:06,604.604 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:37:06,607.607 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-08-31 08:37:08,372.372 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 08:37:08,374.374 INFO    ] Checking for system updates...
[2026-08-31 08:37:08,414.414 INFO    ] 200
[2026-08-31 08:37:08,417.417 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:37:08,476.476 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:37:08,480.480 INFO    ] No update needed
[2026-08-31 08:37:08,483.483 INFO    ] Checking for camera pi updates...
[2026-08-31 08:37:08,520.520 INFO    ] 200
[2026-08-31 08:37:08,523.523 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:37:08,568.568 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:37:08,757.757 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:37:08,760.760 INFO    ] No camera update needed
[2026-08-31 08:37:08,762.762 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:37:08,765.765 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:37:08,771.771 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:37:08,776.776 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:37:10,817.817 INFO    ] ================================================
[2026-08-31 08:37:10,833.833 INFO    ] Launching Daemon at Mon Aug 31 08:37:10 IST 2026
[2026-08-31 08:37:10,844.844 INFO    ] ================================================
[2026-08-31 08:37:11,409.409 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:37:11
[2026-08-31 08:37:11,994.994 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:37:12,259.259 INFO    ] Initializing speech engine...
[2026-08-31 08:37:12,275.275 INFO    ] 2026-08-31 08:37:12
[2026-08-31 08:37:12,546.546 INFO    ] 2026-08-31 08:37:12
[2026-08-31 08:37:12,580.580 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:37:12,774.774 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:37:12,788.788 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:37:13,012.012 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:37:13,027.027 INFO    ] time= 31/08/2026 08:37:13
[2026-08-31 08:37:13,071.071 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:37:13,125.125 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:37:13,221.221 INFO    ] No existing commands found in stream
[2026-08-31 08:37:18,232.232 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:37:18,235.235 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-08-31 08:37:19,139.139 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 08:37:19,142.142 INFO    ] Checking for system updates...
[2026-08-31 08:37:19,177.177 INFO    ] 200
[2026-08-31 08:37:19,179.179 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:37:19,231.231 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:37:19,233.233 INFO    ] No update needed
[2026-08-31 08:37:19,235.235 INFO    ] Checking for camera pi updates...
[2026-08-31 08:37:19,268.268 INFO    ] 200
[2026-08-31 08:37:19,271.271 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:37:19,310.310 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:37:19,397.397 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:37:19,400.400 INFO    ] No camera update needed
[2026-08-31 08:37:19,402.402 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:37:19,404.404 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:37:19,409.409 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:37:19,414.414 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:37:21,455.455 INFO    ] ================================================
[2026-08-31 08:37:21,470.470 INFO    ] Launching Daemon at Mon Aug 31 08:37:21 IST 2026
[2026-08-31 08:37:21,482.482 INFO    ] ================================================
[2026-08-31 08:37:22,048.048 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:37:22
[2026-08-31 08:37:22,628.628 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:37:22,894.894 INFO    ] Initializing speech engine...
[2026-08-31 08:37:22,903.903 INFO    ] 2026-08-31 08:37:22
[2026-08-31 08:37:23,148.148 INFO    ] 2026-08-31 08:37:23
[2026-08-31 08:37:23,183.183 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:37:23,373.373 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:37:23,387.387 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:37:23,577.577 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:37:23,584.584 INFO    ] time= 31/08/2026 08:37:23
[2026-08-31 08:37:23,653.653 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:37:23,713.713 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:37:23,849.849 INFO    ] No existing commands found in stream
[2026-08-31 08:37:28,872.872 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:37:28,875.875 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-08-31 08:37:31,730.730 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 08:37:31,733.733 INFO    ] Checking for system updates...
[2026-08-31 08:37:31,774.774 INFO    ] 200
[2026-08-31 08:37:31,777.777 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:37:31,832.832 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:37:31,834.834 INFO    ] No update needed
[2026-08-31 08:37:31,837.837 INFO    ] Checking for camera pi updates...
[2026-08-31 08:37:31,879.879 INFO    ] 200
[2026-08-31 08:37:31,882.882 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:37:31,932.932 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:37:31,990.990 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:37:31,994.994 INFO    ] No camera update needed
[2026-08-31 08:37:31,997.997 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:37:32,001.001 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:37:32,007.007 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:37:32,013.013 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:37:34,056.056 INFO    ] ================================================
[2026-08-31 08:37:34,072.072 INFO    ] Launching Daemon at Mon Aug 31 08:37:34 IST 2026
[2026-08-31 08:37:34,083.083 INFO    ] ================================================
[2026-08-31 08:37:34,652.652 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:37:34
[2026-08-31 08:37:35,260.260 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:37:35,558.558 INFO    ] Initializing speech engine...
[2026-08-31 08:37:35,569.569 INFO    ] 2026-08-31 08:37:35
[2026-08-31 08:37:35,848.848 INFO    ] 2026-08-31 08:37:35
[2026-08-31 08:37:35,903.903 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:37:36,173.173 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:37:36,182.182 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:37:36,420.420 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:37:36,428.428 INFO    ] time= 31/08/2026 08:37:36
[2026-08-31 08:37:36,436.436 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:37:36,447.447 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:37:36,578.578 INFO    ] No existing commands found in stream
[2026-08-31 08:37:41,608.608 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:37:41,611.611 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-08-31 08:37:45,246.246 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 08:37:45,249.249 INFO    ] Checking for system updates...
[2026-08-31 08:37:45,286.286 INFO    ] 200
[2026-08-31 08:37:45,289.289 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:37:45,343.343 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:37:45,345.345 INFO    ] No update needed
[2026-08-31 08:37:45,348.348 INFO    ] Checking for camera pi updates...
[2026-08-31 08:37:45,383.383 INFO    ] 200
[2026-08-31 08:37:45,386.386 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:37:45,428.428 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:37:45,519.519 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:37:45,522.522 INFO    ] No camera update needed
[2026-08-31 08:37:45,524.524 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:37:45,527.527 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:37:45,534.534 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:37:45,540.540 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:37:47,583.583 INFO    ] ================================================
[2026-08-31 08:37:47,601.601 INFO    ] Launching Daemon at Mon Aug 31 08:37:47 IST 2026
[2026-08-31 08:37:47,614.614 INFO    ] ================================================
[2026-08-31 08:37:48,269.269 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:37:48
[2026-08-31 08:37:48,936.936 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:37:49,192.192 INFO    ] Initializing speech engine...
[2026-08-31 08:37:49,198.198 INFO    ] 2026-08-31 08:37:49
[2026-08-31 08:37:49,486.486 INFO    ] 2026-08-31 08:37:49
[2026-08-31 08:37:49,523.523 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:37:49,726.726 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:37:49,744.744 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:37:49,963.963 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:37:49,985.985 INFO    ] time= 31/08/2026 08:37:49
[2026-08-31 08:37:50,044.044 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:37:50,093.093 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:37:50,247.247 INFO    ] No existing commands found in stream
[2026-08-31 08:37:55,278.278 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:37:55,280.280 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-08-31 08:37:57,383.383 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 08:37:57,385.385 INFO    ] Checking for system updates...
[2026-08-31 08:37:57,424.424 INFO    ] 200
[2026-08-31 08:37:57,426.426 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:37:57,478.478 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:37:57,481.481 INFO    ] No update needed
[2026-08-31 08:37:57,483.483 INFO    ] Checking for camera pi updates...
[2026-08-31 08:37:57,517.517 INFO    ] 200
[2026-08-31 08:37:57,520.520 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:37:57,565.565 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:37:57,648.648 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:37:57,651.651 INFO    ] No camera update needed
[2026-08-31 08:37:57,653.653 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:37:57,656.656 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:37:57,661.661 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:37:57,666.666 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:37:59,705.705 INFO    ] ================================================
[2026-08-31 08:37:59,721.721 INFO    ] Launching Daemon at Mon Aug 31 08:37:59 IST 2026
[2026-08-31 08:37:59,732.732 INFO    ] ================================================
[2026-08-31 08:38:00,297.297 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:38:00
[2026-08-31 08:38:00,892.892 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:38:01,152.152 INFO    ] Initializing speech engine...
[2026-08-31 08:38:01,181.181 INFO    ] 2026-08-31 08:38:01
[2026-08-31 08:38:01,669.669 INFO    ] 2026-08-31 08:38:01
[2026-08-31 08:38:01,733.733 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:38:02,014.014 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:38:02,037.037 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:38:02,267.267 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:38:02,276.276 INFO    ] time= 31/08/2026 08:38:02
[2026-08-31 08:38:02,300.300 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:38:02,330.330 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:38:02,475.475 INFO    ] No existing commands found in stream
[2026-08-31 08:38:07,520.520 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:38:07,523.523 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-08-31 08:38:11,536.536 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 08:38:11,538.538 INFO    ] Checking for system updates...
[2026-08-31 08:38:11,575.575 INFO    ] 200
[2026-08-31 08:38:11,577.577 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:38:11,631.631 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:38:11,633.633 INFO    ] No update needed
[2026-08-31 08:38:11,636.636 INFO    ] Checking for camera pi updates...
[2026-08-31 08:38:11,674.674 INFO    ] 200
[2026-08-31 08:38:11,676.676 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:38:11,716.716 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:38:11,798.798 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:38:11,801.801 INFO    ] No camera update needed
[2026-08-31 08:38:11,803.803 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:38:11,806.806 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:38:11,811.811 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:38:11,816.816 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:38:13,858.858 INFO    ] ================================================
[2026-08-31 08:38:13,873.873 INFO    ] Launching Daemon at Mon Aug 31 08:38:13 IST 2026
[2026-08-31 08:38:13,884.884 INFO    ] ================================================
[2026-08-31 08:38:14,470.470 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:38:14
[2026-08-31 08:38:15,072.072 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:38:15,350.350 INFO    ] Initializing speech engine...
[2026-08-31 08:38:15,358.358 INFO    ] 2026-08-31 08:38:15
[2026-08-31 08:38:15,632.632 INFO    ] 2026-08-31 08:38:15
[2026-08-31 08:38:15,675.675 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:38:15,919.919 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:38:15,926.926 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:38:16,136.136 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:38:16,161.161 INFO    ] time= 31/08/2026 08:38:16
[2026-08-31 08:38:16,177.177 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:38:16,186.186 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:38:16,314.314 INFO    ] No existing commands found in stream
[2026-08-31 08:38:21,326.326 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:38:21,329.329 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-08-31 08:38:25,663.663 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 08:38:25,665.665 INFO    ] Checking for system updates...
[2026-08-31 08:38:25,701.701 INFO    ] 200
[2026-08-31 08:38:25,704.704 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:38:25,756.756 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:38:25,759.759 INFO    ] No update needed
[2026-08-31 08:38:25,761.761 INFO    ] Checking for camera pi updates...
[2026-08-31 08:38:25,798.798 INFO    ] 200
[2026-08-31 08:38:25,801.801 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:38:25,841.841 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:38:25,923.923 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:38:25,926.926 INFO    ] No camera update needed
[2026-08-31 08:38:25,928.928 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:38:25,931.931 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:38:25,936.936 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:38:25,942.942 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:38:27,981.981 INFO    ] ================================================
[2026-08-31 08:38:28,997.997 INFO    ] Launching Daemon at Mon Aug 31 08:38:27 IST 2026
[2026-08-31 08:38:28,008.008 INFO    ] ================================================
[2026-08-31 08:38:28,655.655 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:38:28
[2026-08-31 08:38:29,271.271 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:38:29,520.520 INFO    ] Initializing speech engine...
[2026-08-31 08:38:29,534.534 INFO    ] 2026-08-31 08:38:29
[2026-08-31 08:38:29,800.800 INFO    ] 2026-08-31 08:38:29
[2026-08-31 08:38:29,835.835 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:38:30,096.096 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:38:30,102.102 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:38:30,236.236 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:38:30,252.252 INFO    ] time= 31/08/2026 08:38:30
[2026-08-31 08:38:30,312.312 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:38:30,366.366 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:38:30,494.494 INFO    ] No existing commands found in stream
[2026-08-31 08:38:35,520.520 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:38:35,523.523 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-08-31 08:38:37,042.042 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 08:38:37,045.045 INFO    ] Checking for system updates...
[2026-08-31 08:38:37,080.080 INFO    ] 200
[2026-08-31 08:38:37,082.082 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:38:37,135.135 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:38:37,137.137 INFO    ] No update needed
[2026-08-31 08:38:37,139.139 INFO    ] Checking for camera pi updates...
[2026-08-31 08:38:37,184.184 INFO    ] 200
[2026-08-31 08:38:37,186.186 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:38:37,226.226 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:38:37,301.301 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:38:37,303.303 INFO    ] No camera update needed
[2026-08-31 08:38:37,305.305 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:38:37,308.308 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:38:37,313.313 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:38:37,318.318 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:38:39,361.361 INFO    ] ================================================
[2026-08-31 08:38:39,377.377 INFO    ] Launching Daemon at Mon Aug 31 08:38:39 IST 2026
[2026-08-31 08:38:39,388.388 INFO    ] ================================================
[2026-08-31 08:38:39,955.955 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:38:39
[2026-08-31 08:38:40,539.539 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:38:40,786.786 INFO    ] Initializing speech engine...
[2026-08-31 08:38:40,808.808 INFO    ] 2026-08-31 08:38:40
[2026-08-31 08:38:41,068.068 INFO    ] 2026-08-31 08:38:41
[2026-08-31 08:38:41,103.103 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:38:41,304.304 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:38:41,363.363 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:38:41,503.503 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:38:41,540.540 INFO    ] time= 31/08/2026 08:38:41
[2026-08-31 08:38:41,589.589 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:38:41,640.640 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:38:41,785.785 INFO    ] No existing commands found in stream
[2026-08-31 08:38:46,802.802 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:38:46,804.804 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-08-31 08:38:48,106.106 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 08:38:48,108.108 INFO    ] Checking for system updates...
[2026-08-31 08:38:48,147.147 INFO    ] 200
[2026-08-31 08:38:48,150.150 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:38:48,208.208 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:38:48,210.210 INFO    ] No update needed
[2026-08-31 08:38:48,212.212 INFO    ] Checking for camera pi updates...
[2026-08-31 08:38:48,245.245 INFO    ] 200
[2026-08-31 08:38:48,248.248 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:38:48,288.288 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:38:48,355.355 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:38:48,357.357 INFO    ] No camera update needed
[2026-08-31 08:38:48,360.360 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:38:48,362.362 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:38:48,367.367 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:38:48,372.372 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:38:50,412.412 INFO    ] ================================================
[2026-08-31 08:38:50,428.428 INFO    ] Launching Daemon at Mon Aug 31 08:38:50 IST 2026
[2026-08-31 08:38:50,439.439 INFO    ] ================================================
[2026-08-31 08:38:51,083.083 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:38:51
[2026-08-31 08:38:51,743.743 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:38:52,045.045 INFO    ] Initializing speech engine...
[2026-08-31 08:38:52,058.058 INFO    ] 2026-08-31 08:38:52
[2026-08-31 08:38:52,346.346 INFO    ] 2026-08-31 08:38:52
[2026-08-31 08:38:52,392.392 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:38:52,683.683 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:38:52,689.689 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:38:52,856.856 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:38:52,894.894 INFO    ] time= 31/08/2026 08:38:52
[2026-08-31 08:38:52,913.913 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:38:52,933.933 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:38:53,084.084 INFO    ] No existing commands found in stream
[2026-08-31 08:38:58,115.115 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:38:58,118.118 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-08-31 08:39:02,183.183 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 08:39:02,187.187 INFO    ] Checking for system updates...
[2026-08-31 08:39:02,228.228 INFO    ] 200
[2026-08-31 08:39:02,231.231 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:39:02,316.316 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:39:02,320.320 INFO    ] No update needed
[2026-08-31 08:39:02,323.323 INFO    ] Checking for camera pi updates...
[2026-08-31 08:39:02,370.370 INFO    ] 200
[2026-08-31 08:39:02,373.373 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:39:02,420.420 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:39:02,513.513 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:39:02,516.516 INFO    ] No camera update needed
[2026-08-31 08:39:02,521.521 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:39:02,526.526 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:39:02,535.535 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:39:02,543.543 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:39:04,585.585 INFO    ] ================================================
[2026-08-31 08:39:04,600.600 INFO    ] Launching Daemon at Mon Aug 31 08:39:04 IST 2026
[2026-08-31 08:39:04,611.611 INFO    ] ================================================
[2026-08-31 08:39:05,175.175 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:39:05
[2026-08-31 08:39:05,767.767 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:39:06,047.047 INFO    ] Initializing speech engine...
[2026-08-31 08:39:06,062.062 INFO    ] 2026-08-31 08:39:06
[2026-08-31 08:39:06,331.331 INFO    ] 2026-08-31 08:39:06
[2026-08-31 08:39:06,397.397 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:39:06,622.622 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:39:06,627.627 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:39:06,760.760 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:39:06,830.830 INFO    ] time= 31/08/2026 08:39:06
[2026-08-31 08:39:06,887.887 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:39:06,893.893 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:39:07,033.033 INFO    ] No existing commands found in stream
[2026-08-31 08:39:12,049.049 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:39:12,052.052 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-08-31 08:39:16,043.043 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 08:39:16,046.046 INFO    ] Checking for system updates...
[2026-08-31 08:39:16,081.081 INFO    ] 200
[2026-08-31 08:39:16,083.083 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:39:16,136.136 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:39:16,139.139 INFO    ] No update needed
[2026-08-31 08:39:16,141.141 INFO    ] Checking for camera pi updates...
[2026-08-31 08:39:16,175.175 INFO    ] 200
[2026-08-31 08:39:16,178.178 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:39:16,224.224 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:39:16,405.405 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:39:16,408.408 INFO    ] No camera update needed
[2026-08-31 08:39:16,410.410 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:39:16,412.412 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:39:16,418.418 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:39:16,423.423 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:39:18,464.464 INFO    ] ================================================
[2026-08-31 08:39:18,480.480 INFO    ] Launching Daemon at Mon Aug 31 08:39:18 IST 2026
[2026-08-31 08:39:18,491.491 INFO    ] ================================================
[2026-08-31 08:39:19,070.070 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:39:19
[2026-08-31 08:39:19,658.658 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:39:19,929.929 INFO    ] Initializing speech engine...
[2026-08-31 08:39:19,938.938 INFO    ] 2026-08-31 08:39:19
[2026-08-31 08:39:20,189.189 INFO    ] 2026-08-31 08:39:20
[2026-08-31 08:39:20,225.225 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:39:20,400.400 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:39:20,412.412 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:39:20,617.617 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:39:20,633.633 INFO    ] time= 31/08/2026 08:39:20
[2026-08-31 08:39:20,688.688 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:39:20,737.737 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:39:20,904.904 INFO    ] No existing commands found in stream
[2026-08-31 08:39:25,918.918 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:39:25,921.921 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-08-31 08:39:27,335.335 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 08:39:27,338.338 INFO    ] Checking for system updates...
[2026-08-31 08:39:27,386.386 INFO    ] 200
[2026-08-31 08:39:27,390.390 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:39:27,447.447 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:39:27,450.450 INFO    ] No update needed
[2026-08-31 08:39:27,453.453 INFO    ] Checking for camera pi updates...
[2026-08-31 08:39:27,487.487 INFO    ] 200
[2026-08-31 08:39:27,489.489 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:39:27,529.529 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:39:27,613.613 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:39:27,616.616 INFO    ] No camera update needed
[2026-08-31 08:39:27,618.618 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:39:27,621.621 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:39:27,626.626 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:39:27,632.632 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:39:29,672.672 INFO    ] ================================================
[2026-08-31 08:39:29,689.689 INFO    ] Launching Daemon at Mon Aug 31 08:39:29 IST 2026
[2026-08-31 08:39:29,700.700 INFO    ] ================================================
[2026-08-31 08:39:30,272.272 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:39:30
[2026-08-31 08:39:30,858.858 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:39:31,111.111 INFO    ] Initializing speech engine...
[2026-08-31 08:39:31,119.119 INFO    ] 2026-08-31 08:39:31
[2026-08-31 08:39:31,449.449 INFO    ] 2026-08-31 08:39:31
[2026-08-31 08:39:31,512.512 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:39:31,726.726 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:39:31,748.748 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:39:31,891.891 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:39:31,927.927 INFO    ] time= 31/08/2026 08:39:31
[2026-08-31 08:39:31,944.944 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:39:32,013.013 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:39:32,128.128 INFO    ] No existing commands found in stream
[2026-08-31 08:39:37,154.154 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:39:37,157.157 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-08-31 08:39:38,303.303 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 08:39:38,306.306 INFO    ] Checking for system updates...
[2026-08-31 08:39:38,346.346 INFO    ] 200
[2026-08-31 08:39:38,349.349 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:39:38,401.401 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:39:38,404.404 INFO    ] No update needed
[2026-08-31 08:39:38,406.406 INFO    ] Checking for camera pi updates...
[2026-08-31 08:39:38,443.443 INFO    ] 200
[2026-08-31 08:39:38,446.446 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:39:38,486.486 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:39:38,550.550 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:39:38,552.552 INFO    ] No camera update needed
[2026-08-31 08:39:38,554.554 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:39:38,557.557 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:39:38,562.562 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:39:38,567.567 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:39:40,607.607 INFO    ] ================================================
[2026-08-31 08:39:40,622.622 INFO    ] Launching Daemon at Mon Aug 31 08:39:40 IST 2026
[2026-08-31 08:39:40,633.633 INFO    ] ================================================
[2026-08-31 08:39:41,299.299 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:39:41
[2026-08-31 08:39:41,902.902 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:39:42,170.170 INFO    ] Initializing speech engine...
[2026-08-31 08:39:42,179.179 INFO    ] 2026-08-31 08:39:42
[2026-08-31 08:39:42,484.484 INFO    ] 2026-08-31 08:39:42
[2026-08-31 08:39:42,570.570 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:39:42,719.719 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:39:42,728.728 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:39:42,863.863 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:39:42,933.933 INFO    ] time= 31/08/2026 08:39:42
[2026-08-31 08:39:42,987.987 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:39:42,997.997 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:39:43,138.138 INFO    ] No existing commands found in stream
[2026-08-31 08:39:48,154.154 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:39:48,157.157 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-08-31 08:39:48,933.933 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 08:39:48,936.936 INFO    ] Checking for system updates...
[2026-08-31 08:39:48,971.971 INFO    ] 200
[2026-08-31 08:39:48,974.974 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:39:49,027.027 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:39:49,030.030 INFO    ] No update needed
[2026-08-31 08:39:49,032.032 INFO    ] Checking for camera pi updates...
[2026-08-31 08:39:49,066.066 INFO    ] 200
[2026-08-31 08:39:49,069.069 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:39:49,114.114 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:39:49,199.199 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:39:49,202.202 INFO    ] No camera update needed
[2026-08-31 08:39:49,204.204 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:39:49,206.206 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:39:49,212.212 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:39:49,216.216 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:39:51,256.256 INFO    ] ================================================
[2026-08-31 08:39:51,271.271 INFO    ] Launching Daemon at Mon Aug 31 08:39:51 IST 2026
[2026-08-31 08:39:51,282.282 INFO    ] ================================================
[2026-08-31 08:39:51,849.849 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:39:51
[2026-08-31 08:39:52,432.432 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:39:52,737.737 INFO    ] Initializing speech engine...
[2026-08-31 08:39:52,746.746 INFO    ] 2026-08-31 08:39:52
[2026-08-31 08:39:53,023.023 INFO    ] 2026-08-31 08:39:53
[2026-08-31 08:39:53,078.078 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:39:53,306.306 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:39:53,313.313 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:39:53,528.528 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:39:53,572.572 INFO    ] time= 31/08/2026 08:39:53
[2026-08-31 08:39:53,588.588 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:39:53,620.620 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:39:53,724.724 INFO    ] No existing commands found in stream
[2026-08-31 08:39:58,738.738 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:39:58,741.741 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-08-31 08:40:02,346.346 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 08:40:02,349.349 INFO    ] Checking for system updates...
[2026-08-31 08:40:02,404.404 INFO    ] 200
[2026-08-31 08:40:02,408.408 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:40:02,476.476 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:40:02,480.480 INFO    ] No update needed
[2026-08-31 08:40:02,484.484 INFO    ] Checking for camera pi updates...
[2026-08-31 08:40:02,554.554 INFO    ] 200
[2026-08-31 08:40:02,564.564 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:40:02,629.629 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:40:02,690.690 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:40:02,694.694 INFO    ] No camera update needed
[2026-08-31 08:40:02,698.698 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:40:02,702.702 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:40:02,712.712 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:40:02,726.726 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:40:04,769.769 INFO    ] ================================================
[2026-08-31 08:40:04,784.784 INFO    ] Launching Daemon at Mon Aug 31 08:40:04 IST 2026
[2026-08-31 08:40:04,795.795 INFO    ] ================================================
[2026-08-31 08:40:05,362.362 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:40:05
[2026-08-31 08:40:05,946.946 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:40:06,212.212 INFO    ] Initializing speech engine...
[2026-08-31 08:40:06,222.222 INFO    ] 2026-08-31 08:40:06
[2026-08-31 08:40:06,504.504 INFO    ] 2026-08-31 08:40:06
[2026-08-31 08:40:06,530.530 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:40:06,722.722 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:40:06,734.734 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:40:06,881.881 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:40:06,886.886 INFO    ] time= 31/08/2026 08:40:06
[2026-08-31 08:40:06,892.892 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:40:06,938.938 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:40:07,079.079 INFO    ] No existing commands found in stream
[2026-08-31 08:40:12,097.097 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:40:12,100.100 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-08-31 08:40:16,100.100 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 08:40:16,102.102 INFO    ] Checking for system updates...
[2026-08-31 08:40:16,138.138 INFO    ] 200
[2026-08-31 08:40:16,141.141 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:40:16,193.193 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:40:16,195.195 INFO    ] No update needed
[2026-08-31 08:40:16,198.198 INFO    ] Checking for camera pi updates...
[2026-08-31 08:40:16,235.235 INFO    ] 200
[2026-08-31 08:40:16,238.238 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:40:16,283.283 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:40:16,363.363 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:40:16,365.365 INFO    ] No camera update needed
[2026-08-31 08:40:16,368.368 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:40:16,370.370 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:40:16,375.375 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:40:16,380.380 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:40:18,421.421 INFO    ] ================================================
[2026-08-31 08:40:18,437.437 INFO    ] Launching Daemon at Mon Aug 31 08:40:18 IST 2026
[2026-08-31 08:40:18,449.449 INFO    ] ================================================
[2026-08-31 08:40:19,032.032 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:40:19
[2026-08-31 08:40:19,626.626 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:40:19,892.892 INFO    ] Initializing speech engine...
[2026-08-31 08:40:19,901.901 INFO    ] 2026-08-31 08:40:19
[2026-08-31 08:40:20,146.146 INFO    ] 2026-08-31 08:40:20
[2026-08-31 08:40:20,181.181 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:40:20,382.382 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:40:20,434.434 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:40:20,653.653 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:40:20,697.697 INFO    ] time= 31/08/2026 08:40:20
[2026-08-31 08:40:20,703.703 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:40:20,722.722 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:40:20,850.850 INFO    ] No existing commands found in stream
[2026-08-31 08:40:25,863.863 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:40:25,865.865 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-08-31 08:40:28,305.305 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 08:40:28,308.308 INFO    ] Checking for system updates...
[2026-08-31 08:40:28,356.356 INFO    ] 200
[2026-08-31 08:40:28,359.359 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:40:28,424.424 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:40:28,427.427 INFO    ] No update needed
[2026-08-31 08:40:28,430.430 INFO    ] Checking for camera pi updates...
[2026-08-31 08:40:28,466.466 INFO    ] 200
[2026-08-31 08:40:28,469.469 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:40:28,510.510 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:40:28,592.592 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:40:28,594.594 INFO    ] No camera update needed
[2026-08-31 08:40:28,597.597 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:40:28,600.600 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:40:28,606.606 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:40:28,612.612 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:40:30,652.652 INFO    ] ================================================
[2026-08-31 08:40:30,668.668 INFO    ] Launching Daemon at Mon Aug 31 08:40:30 IST 2026
[2026-08-31 08:40:30,679.679 INFO    ] ================================================
[2026-08-31 08:40:31,336.336 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:40:31
[2026-08-31 08:40:31,970.970 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:40:32,255.255 INFO    ] Initializing speech engine...
[2026-08-31 08:40:32,269.269 INFO    ] 2026-08-31 08:40:32
[2026-08-31 08:40:32,535.535 INFO    ] 2026-08-31 08:40:32
[2026-08-31 08:40:32,572.572 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:40:32,764.764 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:40:32,777.777 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:40:32,920.920 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:40:32,928.928 INFO    ] time= 31/08/2026 08:40:32
[2026-08-31 08:40:32,973.973 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:40:32,996.996 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:40:33,120.120 INFO    ] No existing commands found in stream
[2026-08-31 08:40:38,132.132 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:40:38,134.134 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-08-31 08:40:42,463.463 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 08:40:42,465.465 INFO    ] Checking for system updates...
[2026-08-31 08:40:42,500.500 INFO    ] 200
[2026-08-31 08:40:42,503.503 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:40:42,562.562 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:40:42,565.565 INFO    ] No update needed
[2026-08-31 08:40:42,567.567 INFO    ] Checking for camera pi updates...
[2026-08-31 08:40:42,601.601 INFO    ] 200
[2026-08-31 08:40:42,603.603 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:40:42,648.648 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:40:42,732.732 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:40:42,739.739 INFO    ] No camera update needed
[2026-08-31 08:40:42,743.743 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:40:42,745.745 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:40:42,752.752 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:40:42,758.758 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:40:44,801.801 INFO    ] ================================================
[2026-08-31 08:40:44,816.816 INFO    ] Launching Daemon at Mon Aug 31 08:40:44 IST 2026
[2026-08-31 08:40:44,828.828 INFO    ] ================================================
[2026-08-31 08:40:45,496.496 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:40:45
[2026-08-31 08:40:46,182.182 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:40:46,491.491 INFO    ] Initializing speech engine...
[2026-08-31 08:40:46,499.499 INFO    ] 2026-08-31 08:40:46
[2026-08-31 08:40:46,788.788 INFO    ] 2026-08-31 08:40:46
[2026-08-31 08:40:46,833.833 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:40:47,081.081 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:40:47,086.086 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:40:47,292.292 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:40:47,324.324 INFO    ] time= 31/08/2026 08:40:47
[2026-08-31 08:40:47,342.342 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:40:47,360.360 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:40:47,490.490 INFO    ] No existing commands found in stream
[2026-08-31 08:40:52,520.520 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:40:52,523.523 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-08-31 08:40:55,328.328 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 08:40:55,331.331 INFO    ] Checking for system updates...
[2026-08-31 08:40:55,372.372 INFO    ] 200
[2026-08-31 08:40:55,375.375 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:40:55,431.431 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:40:55,434.434 INFO    ] No update needed
[2026-08-31 08:40:55,437.437 INFO    ] Checking for camera pi updates...
[2026-08-31 08:40:55,472.472 INFO    ] 200
[2026-08-31 08:40:55,474.474 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:40:55,521.521 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:40:55,601.601 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:40:55,604.604 INFO    ] No camera update needed
[2026-08-31 08:40:55,606.606 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:40:55,609.609 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:40:55,615.615 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:40:55,620.620 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:40:57,660.660 INFO    ] ================================================
[2026-08-31 08:40:57,676.676 INFO    ] Launching Daemon at Mon Aug 31 08:40:57 IST 2026
[2026-08-31 08:40:57,686.686 INFO    ] ================================================
[2026-08-31 08:40:58,355.355 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:40:58
[2026-08-31 08:40:59,039.039 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:40:59,345.345 INFO    ] Initializing speech engine...
[2026-08-31 08:40:59,360.360 INFO    ] 2026-08-31 08:40:59
[2026-08-31 08:40:59,672.672 INFO    ] 2026-08-31 08:40:59
[2026-08-31 08:40:59,757.757 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:40:59,933.933 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:40:59,941.941 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:41:00,172.172 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:41:00,191.191 INFO    ] time= 31/08/2026 08:41:00
[2026-08-31 08:41:00,200.200 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:41:00,227.227 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:41:00,353.353 INFO    ] No existing commands found in stream
[2026-08-31 08:41:05,384.384 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:41:05,388.388 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-08-31 08:41:06,326.326 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 08:41:06,329.329 INFO    ] Checking for system updates...
[2026-08-31 08:41:06,374.374 INFO    ] 200
[2026-08-31 08:41:06,377.377 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:41:06,454.454 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:41:06,457.457 INFO    ] No update needed
[2026-08-31 08:41:06,459.459 INFO    ] Checking for camera pi updates...
[2026-08-31 08:41:06,492.492 INFO    ] 200
[2026-08-31 08:41:06,495.495 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:41:06,535.535 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:41:06,599.599 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:41:06,601.601 INFO    ] No camera update needed
[2026-08-31 08:41:06,604.604 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:41:06,606.606 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:41:06,611.611 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:41:06,616.616 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:41:08,657.657 INFO    ] ================================================
[2026-08-31 08:41:08,672.672 INFO    ] Launching Daemon at Mon Aug 31 08:41:08 IST 2026
[2026-08-31 08:41:08,683.683 INFO    ] ================================================
[2026-08-31 08:41:09,263.263 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:41:09
[2026-08-31 08:41:09,860.860 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:41:10,121.121 INFO    ] Initializing speech engine...
[2026-08-31 08:41:10,144.144 INFO    ] 2026-08-31 08:41:10
[2026-08-31 08:41:10,423.423 INFO    ] 2026-08-31 08:41:10
[2026-08-31 08:41:10,460.460 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:41:10,657.657 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:41:10,685.685 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:41:10,857.857 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:41:10,911.911 INFO    ] time= 31/08/2026 08:41:10
[2026-08-31 08:41:10,975.975 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:41:10,993.993 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:41:11,120.120 INFO    ] No existing commands found in stream
[2026-08-31 08:41:16,148.148 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:41:16,151.151 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-08-31 08:41:19,654.654 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 08:41:19,657.657 INFO    ] Checking for system updates...
[2026-08-31 08:41:19,697.697 INFO    ] 200
[2026-08-31 08:41:19,700.700 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:41:19,752.752 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:41:19,754.754 INFO    ] No update needed
[2026-08-31 08:41:19,756.756 INFO    ] Checking for camera pi updates...
[2026-08-31 08:41:19,793.793 INFO    ] 200
[2026-08-31 08:41:19,795.795 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:41:19,840.840 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:41:20,034.034 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:41:20,036.036 INFO    ] No camera update needed
[2026-08-31 08:41:20,039.039 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:41:20,042.042 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:41:20,047.047 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:41:20,052.052 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:41:22,093.093 INFO    ] ================================================
[2026-08-31 08:41:22,109.109 INFO    ] Launching Daemon at Mon Aug 31 08:41:22 IST 2026
[2026-08-31 08:41:22,119.119 INFO    ] ================================================
[2026-08-31 08:41:22,767.767 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:41:22
[2026-08-31 08:41:23,423.423 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:41:23,723.723 INFO    ] Initializing speech engine...
[2026-08-31 08:41:23,732.732 INFO    ] 2026-08-31 08:41:23
[2026-08-31 08:41:24,019.019 INFO    ] 2026-08-31 08:41:24
[2026-08-31 08:41:24,065.065 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:41:24,295.295 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:41:24,302.302 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:41:24,434.434 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:41:24,482.482 INFO    ] time= 31/08/2026 08:41:24
[2026-08-31 08:41:24,547.547 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:41:24,572.572 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:41:24,691.691 INFO    ] No existing commands found in stream
[2026-08-31 08:41:29,719.719 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:41:29,722.722 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-08-31 08:41:33,246.246 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 08:41:33,249.249 INFO    ] Checking for system updates...
[2026-08-31 08:41:33,286.286 INFO    ] 200
[2026-08-31 08:41:33,289.289 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:41:33,343.343 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:41:33,345.345 INFO    ] No update needed
[2026-08-31 08:41:33,348.348 INFO    ] Checking for camera pi updates...
[2026-08-31 08:41:33,386.386 INFO    ] 200
[2026-08-31 08:41:33,389.389 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:41:33,439.439 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:41:33,545.545 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:41:33,548.548 INFO    ] No camera update needed
[2026-08-31 08:41:33,551.551 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:41:33,553.553 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:41:33,559.559 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:41:33,565.565 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:41:35,605.605 INFO    ] ================================================
[2026-08-31 08:41:35,620.620 INFO    ] Launching Daemon at Mon Aug 31 08:41:35 IST 2026
[2026-08-31 08:41:35,631.631 INFO    ] ================================================
[2026-08-31 08:41:36,265.265 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:41:36
[2026-08-31 08:41:36,925.925 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:41:37,231.231 INFO    ] Initializing speech engine...
[2026-08-31 08:41:37,243.243 INFO    ] 2026-08-31 08:41:37
[2026-08-31 08:41:37,510.510 INFO    ] 2026-08-31 08:41:37
[2026-08-31 08:41:37,566.566 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:41:37,853.853 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:41:37,862.862 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:41:38,055.055 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:41:38,070.070 INFO    ] time= 31/08/2026 08:41:38
[2026-08-31 08:41:38,092.092 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:41:38,120.120 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:41:38,229.229 INFO    ] No existing commands found in stream
[2026-08-31 08:41:43,245.245 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:41:43,248.248 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-08-31 08:41:46,349.349 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 08:41:46,352.352 INFO    ] Checking for system updates...
[2026-08-31 08:41:46,392.392 INFO    ] 200
[2026-08-31 08:41:46,395.395 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:41:46,453.453 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:41:46,456.456 INFO    ] No update needed
[2026-08-31 08:41:46,459.459 INFO    ] Checking for camera pi updates...
[2026-08-31 08:41:46,493.493 INFO    ] 200
[2026-08-31 08:41:46,496.496 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:41:46,541.541 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:41:46,650.650 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:41:46,653.653 INFO    ] No camera update needed
[2026-08-31 08:41:46,655.655 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:41:46,658.658 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:41:46,664.664 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:41:46,670.670 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:41:48,711.711 INFO    ] ================================================
[2026-08-31 08:41:48,727.727 INFO    ] Launching Daemon at Mon Aug 31 08:41:48 IST 2026
[2026-08-31 08:41:48,737.737 INFO    ] ================================================
[2026-08-31 08:41:49,378.378 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:41:49
[2026-08-31 08:41:50,035.035 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:41:50,338.338 INFO    ] Initializing speech engine...
[2026-08-31 08:41:50,350.350 INFO    ] 2026-08-31 08:41:50
[2026-08-31 08:41:50,662.662 INFO    ] 2026-08-31 08:41:50
[2026-08-31 08:41:50,752.752 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:41:50,967.967 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:41:50,972.972 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:41:51,173.173 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:41:51,180.180 INFO    ] time= 31/08/2026 08:41:51
[2026-08-31 08:41:51,202.202 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:41:51,230.230 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:41:51,359.359 INFO    ] No existing commands found in stream
[2026-08-31 08:41:56,390.390 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:41:56,394.394 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-08-31 08:41:59,935.935 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 08:41:59,938.938 INFO    ] Checking for system updates...
[2026-08-31 08:41:59,975.975 INFO    ] 200
[2026-08-31 08:41:59,978.978 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:42:00,037.037 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:42:00,040.040 INFO    ] No update needed
[2026-08-31 08:42:00,042.042 INFO    ] Checking for camera pi updates...
[2026-08-31 08:42:00,076.076 INFO    ] 200
[2026-08-31 08:42:00,079.079 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:42:00,124.124 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:42:00,212.212 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:42:00,214.214 INFO    ] No camera update needed
[2026-08-31 08:42:00,217.217 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:42:00,220.220 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:42:00,226.226 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:42:00,231.231 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:42:02,278.278 INFO    ] ================================================
[2026-08-31 08:42:02,297.297 INFO    ] Launching Daemon at Mon Aug 31 08:42:02 IST 2026
[2026-08-31 08:42:02,310.310 INFO    ] ================================================
[2026-08-31 08:42:02,968.968 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:42:02
[2026-08-31 08:42:03,595.595 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:42:03,867.867 INFO    ] Initializing speech engine...
[2026-08-31 08:42:03,875.875 INFO    ] 2026-08-31 08:42:03
[2026-08-31 08:42:04,124.124 INFO    ] 2026-08-31 08:42:04
[2026-08-31 08:42:04,159.159 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:42:04,343.343 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:42:04,359.359 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:42:04,493.493 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:42:04,501.501 INFO    ] time= 31/08/2026 08:42:04
[2026-08-31 08:42:04,531.531 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:42:04,568.568 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:42:04,698.698 INFO    ] No existing commands found in stream
[2026-08-31 08:42:09,709.709 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:42:09,711.711 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-08-31 08:42:13,122.122 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 08:42:13,125.125 INFO    ] Checking for system updates...
[2026-08-31 08:42:13,171.171 INFO    ] 200
[2026-08-31 08:42:13,174.174 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:42:13,235.235 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:42:13,237.237 INFO    ] No update needed
[2026-08-31 08:42:13,240.240 INFO    ] Checking for camera pi updates...
[2026-08-31 08:42:13,272.272 INFO    ] 200
[2026-08-31 08:42:13,275.275 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:42:13,319.319 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:42:13,398.398 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:42:13,401.401 INFO    ] No camera update needed
[2026-08-31 08:42:13,403.403 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:42:13,405.405 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:42:13,410.410 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:42:13,415.415 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:42:15,457.457 INFO    ] ================================================
[2026-08-31 08:42:15,473.473 INFO    ] Launching Daemon at Mon Aug 31 08:42:15 IST 2026
[2026-08-31 08:42:15,484.484 INFO    ] ================================================
[2026-08-31 08:42:16,059.059 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:42:16
[2026-08-31 08:42:16,644.644 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:42:16,906.906 INFO    ] Initializing speech engine...
[2026-08-31 08:42:16,930.930 INFO    ] 2026-08-31 08:42:16
[2026-08-31 08:42:17,204.204 INFO    ] 2026-08-31 08:42:17
[2026-08-31 08:42:17,239.239 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:42:17,437.437 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:42:17,450.450 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:42:17,616.616 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:42:17,622.622 INFO    ] time= 31/08/2026 08:42:17
[2026-08-31 08:42:17,628.628 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:42:17,634.634 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:42:17,765.765 INFO    ] No existing commands found in stream
[2026-08-31 08:42:22,790.790 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:42:22,793.793 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-08-31 08:42:23,909.909 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 08:42:23,911.911 INFO    ] Checking for system updates...
[2026-08-31 08:42:23,946.946 INFO    ] 200
[2026-08-31 08:42:23,949.949 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:42:24,001.001 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:42:24,003.003 INFO    ] No update needed
[2026-08-31 08:42:24,005.005 INFO    ] Checking for camera pi updates...
[2026-08-31 08:42:24,039.039 INFO    ] 200
[2026-08-31 08:42:24,041.041 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:42:24,080.080 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:42:24,160.160 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:42:24,162.162 INFO    ] No camera update needed
[2026-08-31 08:42:24,164.164 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:42:24,167.167 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:42:24,172.172 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:42:24,177.177 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:42:26,218.218 INFO    ] ================================================
[2026-08-31 08:42:26,235.235 INFO    ] Launching Daemon at Mon Aug 31 08:42:26 IST 2026
[2026-08-31 08:42:26,245.245 INFO    ] ================================================
[2026-08-31 08:42:26,819.819 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:42:26
[2026-08-31 08:42:27,404.404 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:42:27,678.678 INFO    ] Initializing speech engine...
[2026-08-31 08:42:27,687.687 INFO    ] 2026-08-31 08:42:27
[2026-08-31 08:42:27,942.942 INFO    ] 2026-08-31 08:42:27
[2026-08-31 08:42:27,994.994 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:42:28,161.161 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:42:28,246.246 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:42:28,453.453 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:42:28,485.485 INFO    ] time= 31/08/2026 08:42:28
[2026-08-31 08:42:28,491.491 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:42:28,506.506 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:42:28,636.636 INFO    ] No existing commands found in stream
[2026-08-31 08:42:33,651.651 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:42:33,654.654 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-08-31 08:42:35,268.268 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 08:42:35,270.270 INFO    ] Checking for system updates...
[2026-08-31 08:42:35,306.306 INFO    ] 200
[2026-08-31 08:42:35,308.308 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:42:35,360.360 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:42:35,363.363 INFO    ] No update needed
[2026-08-31 08:42:35,365.365 INFO    ] Checking for camera pi updates...
[2026-08-31 08:42:35,398.398 INFO    ] 200
[2026-08-31 08:42:35,401.401 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:42:35,450.450 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:42:35,541.541 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:42:35,543.543 INFO    ] No camera update needed
[2026-08-31 08:42:35,546.546 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:42:35,548.548 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:42:35,553.553 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:42:35,558.558 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:42:37,600.600 INFO    ] ================================================
[2026-08-31 08:42:37,615.615 INFO    ] Launching Daemon at Mon Aug 31 08:42:37 IST 2026
[2026-08-31 08:42:37,626.626 INFO    ] ================================================
[2026-08-31 08:42:38,280.280 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:42:38
[2026-08-31 08:42:38,946.946 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:42:39,207.207 INFO    ] Initializing speech engine...
[2026-08-31 08:42:39,231.231 INFO    ] 2026-08-31 08:42:39
[2026-08-31 08:42:39,507.507 INFO    ] 2026-08-31 08:42:39
[2026-08-31 08:42:39,543.543 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:42:39,739.739 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:42:39,753.753 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:42:39,915.915 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:42:39,923.923 INFO    ] time= 31/08/2026 08:42:39
[2026-08-31 08:42:39,931.931 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:42:39,974.974 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:42:40,099.099 INFO    ] No existing commands found in stream
[2026-08-31 08:42:45,130.130 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:42:45,132.132 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-08-31 08:42:48,463.463 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 08:42:48,466.466 INFO    ] Checking for system updates...
[2026-08-31 08:42:48,502.502 INFO    ] 200
[2026-08-31 08:42:48,504.504 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:42:48,561.561 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:42:48,563.563 INFO    ] No update needed
[2026-08-31 08:42:48,566.566 INFO    ] Checking for camera pi updates...
[2026-08-31 08:42:48,603.603 INFO    ] 200
[2026-08-31 08:42:48,605.605 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:42:48,645.645 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:42:48,721.721 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:42:48,723.723 INFO    ] No camera update needed
[2026-08-31 08:42:48,726.726 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:42:48,728.728 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:42:48,734.734 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:42:48,738.738 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:42:50,780.780 INFO    ] ================================================
[2026-08-31 08:42:50,795.795 INFO    ] Launching Daemon at Mon Aug 31 08:42:50 IST 2026
[2026-08-31 08:42:50,806.806 INFO    ] ================================================
[2026-08-31 08:42:51,376.376 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:42:51
[2026-08-31 08:42:51,960.960 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:42:52,227.227 INFO    ] Initializing speech engine...
[2026-08-31 08:42:52,236.236 INFO    ] 2026-08-31 08:42:52
[2026-08-31 08:42:52,488.488 INFO    ] 2026-08-31 08:42:52
[2026-08-31 08:42:52,523.523 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:42:52,694.694 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:42:52,709.709 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:42:52,869.869 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:42:52,880.880 INFO    ] time= 31/08/2026 08:42:52
[2026-08-31 08:42:52,885.885 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:42:52,893.893 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:42:52,965.965 INFO    ] No existing commands found in stream
[2026-08-31 08:42:57,977.977 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:42:57,980.980 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-08-31 08:43:00,068.068 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 08:43:00,070.070 INFO    ] Checking for system updates...
[2026-08-31 08:43:00,107.107 INFO    ] 200
[2026-08-31 08:43:00,110.110 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:43:00,164.164 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:43:00,167.167 INFO    ] No update needed
[2026-08-31 08:43:00,170.170 INFO    ] Checking for camera pi updates...
[2026-08-31 08:43:00,204.204 INFO    ] 200
[2026-08-31 08:43:00,207.207 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:43:00,248.248 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:43:00,352.352 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:43:00,355.355 INFO    ] No camera update needed
[2026-08-31 08:43:00,358.358 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:43:00,360.360 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:43:00,366.366 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:43:00,372.372 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:43:02,418.418 INFO    ] ================================================
[2026-08-31 08:43:02,437.437 INFO    ] Launching Daemon at Mon Aug 31 08:43:02 IST 2026
[2026-08-31 08:43:02,450.450 INFO    ] ================================================
[2026-08-31 08:43:03,099.099 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:43:03
[2026-08-31 08:43:03,700.700 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:43:03,945.945 INFO    ] Initializing speech engine...
[2026-08-31 08:43:03,959.959 INFO    ] 2026-08-31 08:43:03
[2026-08-31 08:43:04,220.220 INFO    ] 2026-08-31 08:43:04
[2026-08-31 08:43:04,255.255 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:43:04,505.505 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:43:04,514.514 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:43:04,742.742 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:43:04,770.770 INFO    ] time= 31/08/2026 08:43:04
[2026-08-31 08:43:04,776.776 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:43:04,794.794 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:43:04,903.903 INFO    ] No existing commands found in stream
[2026-08-31 08:43:09,930.930 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:43:09,933.933 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-08-31 08:43:13,739.739 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 08:43:13,741.741 INFO    ] Checking for system updates...
[2026-08-31 08:43:13,776.776 INFO    ] 200
[2026-08-31 08:43:13,779.779 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:43:13,830.830 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:43:13,833.833 INFO    ] No update needed
[2026-08-31 08:43:13,835.835 INFO    ] Checking for camera pi updates...
[2026-08-31 08:43:13,872.872 INFO    ] 200
[2026-08-31 08:43:13,874.874 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:43:13,914.914 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:43:14,016.016 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:43:14,019.019 INFO    ] No camera update needed
[2026-08-31 08:43:14,021.021 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:43:14,024.024 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:43:14,029.029 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:43:14,034.034 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:43:16,074.074 INFO    ] ================================================
[2026-08-31 08:43:16,090.090 INFO    ] Launching Daemon at Mon Aug 31 08:43:16 IST 2026
[2026-08-31 08:43:16,100.100 INFO    ] ================================================
[2026-08-31 08:43:16,748.748 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:43:16
[2026-08-31 08:43:17,411.411 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:43:17,705.705 INFO    ] Initializing speech engine...
[2026-08-31 08:43:17,716.716 INFO    ] 2026-08-31 08:43:17
[2026-08-31 08:43:17,990.990 INFO    ] 2026-08-31 08:43:17
[2026-08-31 08:43:18,046.046 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:43:18,269.269 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:43:18,279.279 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:43:18,495.495 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:43:18,544.544 INFO    ] time= 31/08/2026 08:43:18
[2026-08-31 08:43:18,560.560 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:43:18,568.568 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:43:18,697.697 INFO    ] No existing commands found in stream
[2026-08-31 08:43:23,720.720 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:43:23,724.724 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-08-31 08:43:27,059.059 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 08:43:27,062.062 INFO    ] Checking for system updates...
[2026-08-31 08:43:27,099.099 INFO    ] 200
[2026-08-31 08:43:27,102.102 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:43:27,161.161 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:43:27,164.164 INFO    ] No update needed
[2026-08-31 08:43:27,167.167 INFO    ] Checking for camera pi updates...
[2026-08-31 08:43:27,202.202 INFO    ] 200
[2026-08-31 08:43:27,205.205 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:43:27,249.249 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:43:27,443.443 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:43:27,446.446 INFO    ] No camera update needed
[2026-08-31 08:43:27,448.448 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:43:27,450.450 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:43:27,456.456 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:43:27,461.461 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:43:29,502.502 INFO    ] ================================================
[2026-08-31 08:43:29,516.516 INFO    ] Launching Daemon at Mon Aug 31 08:43:29 IST 2026
[2026-08-31 08:43:29,527.527 INFO    ] ================================================
[2026-08-31 08:43:30,112.112 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:43:30
[2026-08-31 08:43:30,694.694 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:43:30,970.970 INFO    ] Initializing speech engine...
[2026-08-31 08:43:30,979.979 INFO    ] 2026-08-31 08:43:30
[2026-08-31 08:43:31,256.256 INFO    ] 2026-08-31 08:43:31
[2026-08-31 08:43:31,300.300 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:43:31,519.519 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:43:31,551.551 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:43:31,775.775 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:43:31,819.819 INFO    ] time= 31/08/2026 08:43:31
[2026-08-31 08:43:31,839.839 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:43:31,850.850 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:43:31,980.980 INFO    ] No existing commands found in stream
[2026-08-31 08:43:36,990.990 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:43:36,993.993 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-08-31 08:43:40,007.007 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 08:43:40,010.010 INFO    ] Checking for system updates...
[2026-08-31 08:43:40,047.047 INFO    ] 200
[2026-08-31 08:43:40,050.050 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:43:40,102.102 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:43:40,105.105 INFO    ] No update needed
[2026-08-31 08:43:40,107.107 INFO    ] Checking for camera pi updates...
[2026-08-31 08:43:40,140.140 INFO    ] 200
[2026-08-31 08:43:40,143.143 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:43:40,183.183 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:43:40,265.265 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:43:40,268.268 INFO    ] No camera update needed
[2026-08-31 08:43:40,270.270 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:43:40,273.273 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:43:40,278.278 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:43:40,283.283 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:43:42,323.323 INFO    ] ================================================
[2026-08-31 08:43:42,338.338 INFO    ] Launching Daemon at Mon Aug 31 08:43:42 IST 2026
[2026-08-31 08:43:42,348.348 INFO    ] ================================================
[2026-08-31 08:43:42,914.914 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:43:42
[2026-08-31 08:43:43,497.497 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:43:43,760.760 INFO    ] Initializing speech engine...
[2026-08-31 08:43:43,779.779 INFO    ] 2026-08-31 08:43:43
[2026-08-31 08:43:44,031.031 INFO    ] 2026-08-31 08:43:44
[2026-08-31 08:43:44,065.065 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:43:44,261.261 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:43:44,319.319 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:43:44,540.540 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:43:44,585.585 INFO    ] time= 31/08/2026 08:43:44
[2026-08-31 08:43:44,591.591 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:43:44,608.608 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:43:44,741.741 INFO    ] No existing commands found in stream
[2026-08-31 08:43:49,769.769 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:43:49,772.772 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-08-31 08:43:53,340.340 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 08:43:53,343.343 INFO    ] Checking for system updates...
[2026-08-31 08:43:53,379.379 INFO    ] 200
[2026-08-31 08:43:53,382.382 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:43:53,440.440 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:43:53,443.443 INFO    ] No update needed
[2026-08-31 08:43:53,445.445 INFO    ] Checking for camera pi updates...
[2026-08-31 08:43:53,478.478 INFO    ] 200
[2026-08-31 08:43:53,480.480 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:43:53,527.527 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:43:53,603.603 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:43:53,606.606 INFO    ] No camera update needed
[2026-08-31 08:43:53,610.610 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:43:53,613.613 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:43:53,619.619 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:43:53,624.624 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:43:55,665.665 INFO    ] ================================================
[2026-08-31 08:43:55,680.680 INFO    ] Launching Daemon at Mon Aug 31 08:43:55 IST 2026
[2026-08-31 08:43:55,691.691 INFO    ] ================================================
[2026-08-31 08:43:56,266.266 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:43:56
[2026-08-31 08:43:56,847.847 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:43:57,112.112 INFO    ] Initializing speech engine...
[2026-08-31 08:43:57,121.121 INFO    ] 2026-08-31 08:43:57
[2026-08-31 08:43:57,366.366 INFO    ] 2026-08-31 08:43:57
[2026-08-31 08:43:57,400.400 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:43:57,654.654 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:43:57,658.658 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:43:57,865.865 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:43:57,916.916 INFO    ] time= 31/08/2026 08:43:57
[2026-08-31 08:43:57,922.922 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:43:57,940.940 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:43:58,066.066 INFO    ] No existing commands found in stream
[2026-08-31 08:44:03,079.079 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:44:03,082.082 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-08-31 08:44:05,966.966 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 08:44:05,969.969 INFO    ] Checking for system updates...
[2026-08-31 08:44:06,005.005 INFO    ] 200
[2026-08-31 08:44:06,007.007 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:44:06,059.059 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:44:06,062.062 INFO    ] No update needed
[2026-08-31 08:44:06,065.065 INFO    ] Checking for camera pi updates...
[2026-08-31 08:44:06,102.102 INFO    ] 200
[2026-08-31 08:44:06,105.105 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:44:06,144.144 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:44:06,235.235 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:44:06,237.237 INFO    ] No camera update needed
[2026-08-31 08:44:06,240.240 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:44:06,242.242 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:44:06,247.247 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:44:06,252.252 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:44:08,293.293 INFO    ] ================================================
[2026-08-31 08:44:08,308.308 INFO    ] Launching Daemon at Mon Aug 31 08:44:08 IST 2026
[2026-08-31 08:44:08,318.318 INFO    ] ================================================
[2026-08-31 08:44:08,883.883 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:44:08
[2026-08-31 08:44:09,466.466 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:44:09,733.733 INFO    ] Initializing speech engine...
[2026-08-31 08:44:09,743.743 INFO    ] 2026-08-31 08:44:09
[2026-08-31 08:44:09,989.989 INFO    ] 2026-08-31 08:44:09
[2026-08-31 08:44:10,023.023 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:44:10,220.220 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:44:10,277.277 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:44:10,423.423 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:44:10,488.488 INFO    ] time= 31/08/2026 08:44:10
[2026-08-31 08:44:10,547.547 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:44:10,554.554 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:44:10,697.697 INFO    ] No existing commands found in stream
[2026-08-31 08:44:15,710.710 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:44:15,713.713 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-08-31 08:44:18,208.208 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 08:44:18,211.211 INFO    ] Checking for system updates...
[2026-08-31 08:44:18,245.245 INFO    ] 200
[2026-08-31 08:44:18,248.248 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:44:18,299.299 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:44:18,302.302 INFO    ] No update needed
[2026-08-31 08:44:18,304.304 INFO    ] Checking for camera pi updates...
[2026-08-31 08:44:18,337.337 INFO    ] 200
[2026-08-31 08:44:18,339.339 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:44:18,379.379 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:44:18,450.450 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:44:18,452.452 INFO    ] No camera update needed
[2026-08-31 08:44:18,454.454 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:44:18,457.457 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:44:18,462.462 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:44:18,467.467 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:44:20,508.508 INFO    ] ================================================
[2026-08-31 08:44:20,524.524 INFO    ] Launching Daemon at Mon Aug 31 08:44:20 IST 2026
[2026-08-31 08:44:20,534.534 INFO    ] ================================================
[2026-08-31 08:44:21,098.098 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:44:21
[2026-08-31 08:44:21,680.680 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:44:21,931.931 INFO    ] Initializing speech engine...
[2026-08-31 08:44:21,939.939 INFO    ] 2026-08-31 08:44:21
[2026-08-31 08:44:22,224.224 INFO    ] 2026-08-31 08:44:22
[2026-08-31 08:44:22,258.258 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:44:22,448.448 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:44:22,461.461 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:44:22,688.688 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:44:22,695.695 INFO    ] time= 31/08/2026 08:44:22
[2026-08-31 08:44:22,755.755 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:44:22,799.799 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:44:22,889.889 INFO    ] No existing commands found in stream
[2026-08-31 08:44:27,901.901 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:44:27,903.903 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-08-31 08:44:30,725.725 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 08:44:30,727.727 INFO    ] Checking for system updates...
[2026-08-31 08:44:30,765.765 INFO    ] 200
[2026-08-31 08:44:30,768.768 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:44:30,824.824 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:44:30,826.826 INFO    ] No update needed
[2026-08-31 08:44:30,829.829 INFO    ] Checking for camera pi updates...
[2026-08-31 08:44:30,865.865 INFO    ] 200
[2026-08-31 08:44:30,867.867 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:44:30,906.906 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:44:31,005.005 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:44:31,007.007 INFO    ] No camera update needed
[2026-08-31 08:44:31,010.010 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:44:31,012.012 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:44:31,017.017 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:44:31,022.022 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:44:33,063.063 INFO    ] ================================================
[2026-08-31 08:44:33,078.078 INFO    ] Launching Daemon at Mon Aug 31 08:44:33 IST 2026
[2026-08-31 08:44:33,089.089 INFO    ] ================================================
[2026-08-31 08:44:33,652.652 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:44:33
[2026-08-31 08:44:34,236.236 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:44:34,489.489 INFO    ] Initializing speech engine...
[2026-08-31 08:44:34,504.504 INFO    ] 2026-08-31 08:44:34
[2026-08-31 08:44:34,781.781 INFO    ] 2026-08-31 08:44:34
[2026-08-31 08:44:34,816.816 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:44:35,004.004 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:44:35,016.016 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:44:35,172.172 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:44:35,180.180 INFO    ] time= 31/08/2026 08:44:35
[2026-08-31 08:44:35,184.184 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:44:35,190.190 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:44:35,261.261 INFO    ] No existing commands found in stream
[2026-08-31 08:44:40,273.273 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:44:40,276.276 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-08-31 08:44:41,573.573 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 08:44:41,576.576 INFO    ] Checking for system updates...
[2026-08-31 08:44:41,618.618 INFO    ] 200
[2026-08-31 08:44:41,621.621 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:44:41,678.678 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:44:41,681.681 INFO    ] No update needed
[2026-08-31 08:44:41,684.684 INFO    ] Checking for camera pi updates...
[2026-08-31 08:44:41,720.720 INFO    ] 200
[2026-08-31 08:44:41,722.722 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:44:41,775.775 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:44:41,882.882 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:44:41,885.885 INFO    ] No camera update needed
[2026-08-31 08:44:41,888.888 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:44:41,891.891 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:44:41,897.897 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:44:41,903.903 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:44:43,943.943 INFO    ] ================================================
[2026-08-31 08:44:43,958.958 INFO    ] Launching Daemon at Mon Aug 31 08:44:43 IST 2026
[2026-08-31 08:44:43,968.968 INFO    ] ================================================
[2026-08-31 08:44:44,535.535 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:44:44
[2026-08-31 08:44:45,119.119 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:44:45,370.370 INFO    ] Initializing speech engine...
[2026-08-31 08:44:45,377.377 INFO    ] 2026-08-31 08:44:45
[2026-08-31 08:44:45,663.663 INFO    ] 2026-08-31 08:44:45
[2026-08-31 08:44:45,700.700 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:44:45,977.977 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:44:45,987.987 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:44:46,134.134 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:44:46,178.178 INFO    ] time= 31/08/2026 08:44:46
[2026-08-31 08:44:46,232.232 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:44:46,275.275 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:44:46,401.401 INFO    ] No existing commands found in stream
[2026-08-31 08:44:51,428.428 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:44:51,431.431 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-08-31 08:44:55,335.335 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 08:44:55,337.337 INFO    ] Checking for system updates...
[2026-08-31 08:44:55,372.372 INFO    ] 200
[2026-08-31 08:44:55,375.375 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:44:55,435.435 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:44:55,438.438 INFO    ] No update needed
[2026-08-31 08:44:55,440.440 INFO    ] Checking for camera pi updates...
[2026-08-31 08:44:55,476.476 INFO    ] 200
[2026-08-31 08:44:55,478.478 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:44:55,521.521 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:44:55,650.650 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:44:55,653.653 INFO    ] No camera update needed
[2026-08-31 08:44:55,655.655 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:44:55,657.657 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:44:55,663.663 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:44:55,668.668 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:44:57,708.708 INFO    ] ================================================
[2026-08-31 08:44:57,723.723 INFO    ] Launching Daemon at Mon Aug 31 08:44:57 IST 2026
[2026-08-31 08:44:57,734.734 INFO    ] ================================================
[2026-08-31 08:44:58,302.302 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:44:58
[2026-08-31 08:44:58,887.887 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:44:59,156.156 INFO    ] Initializing speech engine...
[2026-08-31 08:44:59,166.166 INFO    ] 2026-08-31 08:44:59
[2026-08-31 08:44:59,411.411 INFO    ] 2026-08-31 08:44:59
[2026-08-31 08:44:59,446.446 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:44:59,698.698 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:44:59,706.706 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:44:59,897.897 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:44:59,952.952 INFO    ] time= 31/08/2026 08:44:59
[2026-08-31 08:44:59,970.970 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:44:59,986.986 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:45:00,143.143 INFO    ] No existing commands found in stream
[2026-08-31 08:45:05,173.173 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:45:05,176.176 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-08-31 08:45:08,543.543 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 08:45:08,545.545 INFO    ] Checking for system updates...
[2026-08-31 08:45:08,582.582 INFO    ] 200
[2026-08-31 08:45:08,584.584 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:45:08,646.646 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:45:08,648.648 INFO    ] No update needed
[2026-08-31 08:45:08,651.651 INFO    ] Checking for camera pi updates...
[2026-08-31 08:45:08,684.684 INFO    ] 200
[2026-08-31 08:45:08,686.686 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:45:08,729.729 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:45:08,818.818 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:45:08,820.820 INFO    ] No camera update needed
[2026-08-31 08:45:08,823.823 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:45:08,825.825 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:45:08,831.831 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:45:08,836.836 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:45:10,878.878 INFO    ] ================================================
[2026-08-31 08:45:10,895.895 INFO    ] Launching Daemon at Mon Aug 31 08:45:10 IST 2026
[2026-08-31 08:45:10,907.907 INFO    ] ================================================
[2026-08-31 08:45:11,578.578 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:45:11
[2026-08-31 08:45:12,222.222 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:45:12,518.518 INFO    ] Initializing speech engine...
[2026-08-31 08:45:12,526.526 INFO    ] 2026-08-31 08:45:12
[2026-08-31 08:45:12,810.810 INFO    ] 2026-08-31 08:45:12
[2026-08-31 08:45:12,857.857 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:45:13,115.115 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:45:13,125.125 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:45:13,336.336 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:45:13,370.370 INFO    ] time= 31/08/2026 08:45:13
[2026-08-31 08:45:13,387.387 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:45:13,397.397 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:45:13,533.533 INFO    ] No existing commands found in stream
[2026-08-31 08:45:18,553.553 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:45:18,556.556 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-08-31 08:45:19,405.405 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 08:45:19,408.408 INFO    ] Checking for system updates...
[2026-08-31 08:45:19,444.444 INFO    ] 200
[2026-08-31 08:45:19,448.448 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:45:19,501.501 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:45:19,503.503 INFO    ] No update needed
[2026-08-31 08:45:19,506.506 INFO    ] Checking for camera pi updates...
[2026-08-31 08:45:19,540.540 INFO    ] 200
[2026-08-31 08:45:19,543.543 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:45:19,587.587 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:45:19,670.670 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:45:19,673.673 INFO    ] No camera update needed
[2026-08-31 08:45:19,675.675 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:45:19,677.677 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:45:19,682.682 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:45:19,687.687 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:45:21,728.728 INFO    ] ================================================
[2026-08-31 08:45:21,743.743 INFO    ] Launching Daemon at Mon Aug 31 08:45:21 IST 2026
[2026-08-31 08:45:21,754.754 INFO    ] ================================================
[2026-08-31 08:45:22,342.342 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:45:22
[2026-08-31 08:45:22,944.944 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:45:23,227.227 INFO    ] Initializing speech engine...
[2026-08-31 08:45:23,236.236 INFO    ] 2026-08-31 08:45:23
[2026-08-31 08:45:23,494.494 INFO    ] 2026-08-31 08:45:23
[2026-08-31 08:45:23,545.545 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:45:23,768.768 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:45:23,777.777 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:45:23,984.984 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:45:24,035.035 INFO    ] time= 31/08/2026 08:45:23
[2026-08-31 08:45:24,041.041 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:45:24,061.061 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:45:24,190.190 INFO    ] No existing commands found in stream
[2026-08-31 08:45:29,213.213 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:45:29,215.215 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-08-31 08:45:32,224.224 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 08:45:32,228.228 INFO    ] Checking for system updates...
[2026-08-31 08:45:32,269.269 INFO    ] 200
[2026-08-31 08:45:32,271.271 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:45:32,340.340 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:45:32,343.343 INFO    ] No update needed
[2026-08-31 08:45:32,345.345 INFO    ] Checking for camera pi updates...
[2026-08-31 08:45:32,384.384 INFO    ] 200
[2026-08-31 08:45:32,386.386 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:45:32,433.433 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:45:32,548.548 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:45:32,551.551 INFO    ] No camera update needed
[2026-08-31 08:45:32,554.554 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:45:32,557.557 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:45:32,563.563 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:45:32,569.569 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:45:34,609.609 INFO    ] ================================================
[2026-08-31 08:45:34,624.624 INFO    ] Launching Daemon at Mon Aug 31 08:45:34 IST 2026
[2026-08-31 08:45:34,635.635 INFO    ] ================================================
[2026-08-31 08:45:35,201.201 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:45:35
[2026-08-31 08:45:35,781.781 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:45:36,055.055 INFO    ] Initializing speech engine...
[2026-08-31 08:45:36,067.067 INFO    ] 2026-08-31 08:45:36
[2026-08-31 08:45:36,325.325 INFO    ] 2026-08-31 08:45:36
[2026-08-31 08:45:36,362.362 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:45:36,578.578 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:45:36,636.636 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:45:36,791.791 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:45:36,834.834 INFO    ] time= 31/08/2026 08:45:36
[2026-08-31 08:45:36,883.883 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:45:36,937.937 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:45:37,032.032 INFO    ] No existing commands found in stream
[2026-08-31 08:45:42,063.063 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:45:42,066.066 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-08-31 08:45:44,425.425 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 08:45:44,428.428 INFO    ] Checking for system updates...
[2026-08-31 08:45:44,463.463 INFO    ] 200
[2026-08-31 08:45:44,466.466 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:45:44,518.518 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:45:44,521.521 INFO    ] No update needed
[2026-08-31 08:45:44,523.523 INFO    ] Checking for camera pi updates...
[2026-08-31 08:45:44,559.559 INFO    ] 200
[2026-08-31 08:45:44,561.561 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:45:44,601.601 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:45:44,677.677 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:45:44,679.679 INFO    ] No camera update needed
[2026-08-31 08:45:44,682.682 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:45:44,684.684 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:45:44,690.690 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:45:44,695.695 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:45:46,736.736 INFO    ] ================================================
[2026-08-31 08:45:46,751.751 INFO    ] Launching Daemon at Mon Aug 31 08:45:46 IST 2026
[2026-08-31 08:45:46,762.762 INFO    ] ================================================
[2026-08-31 08:45:47,329.329 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:45:47
[2026-08-31 08:45:47,913.913 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:45:48,167.167 INFO    ] Initializing speech engine...
[2026-08-31 08:45:48,176.176 INFO    ] 2026-08-31 08:45:48
[2026-08-31 08:45:48,464.464 INFO    ] 2026-08-31 08:45:48
[2026-08-31 08:45:48,500.500 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:45:48,775.775 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:45:48,790.790 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:45:48,938.938 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:45:48,980.980 INFO    ] time= 31/08/2026 08:45:48
[2026-08-31 08:45:49,024.024 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:45:49,078.078 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:45:49,204.204 INFO    ] No existing commands found in stream
[2026-08-31 08:45:54,225.225 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:45:54,228.228 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-08-31 08:45:56,565.565 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 08:45:56,568.568 INFO    ] Checking for system updates...
[2026-08-31 08:45:56,603.603 INFO    ] 200
[2026-08-31 08:45:56,606.606 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:45:56,657.657 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:45:56,660.660 INFO    ] No update needed
[2026-08-31 08:45:56,662.662 INFO    ] Checking for camera pi updates...
[2026-08-31 08:45:56,695.695 INFO    ] 200
[2026-08-31 08:45:56,698.698 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:45:56,741.741 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:45:56,798.798 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:45:56,801.801 INFO    ] No camera update needed
[2026-08-31 08:45:56,803.803 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:45:56,805.805 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:45:56,810.810 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:45:56,815.815 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:45:58,854.854 INFO    ] ================================================
[2026-08-31 08:45:58,870.870 INFO    ] Launching Daemon at Mon Aug 31 08:45:58 IST 2026
[2026-08-31 08:45:58,880.880 INFO    ] ================================================
[2026-08-31 08:45:59,452.452 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:45:59
[2026-08-31 08:46:00,050.050 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:46:00,324.324 INFO    ] Initializing speech engine...
[2026-08-31 08:46:00,333.333 INFO    ] 2026-08-31 08:46:00
[2026-08-31 08:46:00,595.595 INFO    ] 2026-08-31 08:46:00
[2026-08-31 08:46:00,647.647 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:46:00,890.890 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:46:00,898.898 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:46:01,105.105 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:46:01,132.132 INFO    ] time= 31/08/2026 08:46:01
[2026-08-31 08:46:01,138.138 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:46:01,156.156 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:46:01,276.276 INFO    ] No existing commands found in stream
[2026-08-31 08:46:06,295.295 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:46:06,299.299 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-08-31 08:46:08,323.323 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 08:46:08,326.326 INFO    ] Checking for system updates...
[2026-08-31 08:46:08,366.366 INFO    ] 200
[2026-08-31 08:46:08,369.369 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:46:08,431.431 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:46:08,433.433 INFO    ] No update needed
[2026-08-31 08:46:08,436.436 INFO    ] Checking for camera pi updates...
[2026-08-31 08:46:08,473.473 INFO    ] 200
[2026-08-31 08:46:08,476.476 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:46:08,518.518 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:46:08,609.609 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:46:08,612.612 INFO    ] No camera update needed
[2026-08-31 08:46:08,615.615 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:46:08,618.618 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:46:08,624.624 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:46:08,630.630 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:46:10,670.670 INFO    ] ================================================
[2026-08-31 08:46:10,686.686 INFO    ] Launching Daemon at Mon Aug 31 08:46:10 IST 2026
[2026-08-31 08:46:10,697.697 INFO    ] ================================================
[2026-08-31 08:46:11,282.282 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:46:11
[2026-08-31 08:46:11,864.864 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:46:12,115.115 INFO    ] Initializing speech engine...
[2026-08-31 08:46:12,138.138 INFO    ] 2026-08-31 08:46:12
[2026-08-31 08:46:12,394.394 INFO    ] 2026-08-31 08:46:12
[2026-08-31 08:46:12,430.430 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:46:13,355.355 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:46:13,379.379 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:46:13,524.524 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:46:13,568.568 INFO    ] time= 31/08/2026 08:46:13
[2026-08-31 08:46:13,578.578 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:46:13,582.582 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:46:13,740.740 INFO    ] No existing commands found in stream
[2026-08-31 08:46:18,760.760 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:46:18,763.763 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-08-31 08:46:22,323.323 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 08:46:22,326.326 INFO    ] Checking for system updates...
[2026-08-31 08:46:22,361.361 INFO    ] 200
[2026-08-31 08:46:22,364.364 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:46:22,424.424 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:46:22,426.426 INFO    ] No update needed
[2026-08-31 08:46:22,429.429 INFO    ] Checking for camera pi updates...
[2026-08-31 08:46:22,462.462 INFO    ] 200
[2026-08-31 08:46:22,465.465 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:46:22,510.510 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:46:22,611.611 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:46:22,613.613 INFO    ] No camera update needed
[2026-08-31 08:46:22,616.616 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:46:22,618.618 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:46:22,623.623 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:46:22,629.629 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:46:24,670.670 INFO    ] ================================================
[2026-08-31 08:46:24,686.686 INFO    ] Launching Daemon at Mon Aug 31 08:46:24 IST 2026
[2026-08-31 08:46:24,697.697 INFO    ] ================================================
[2026-08-31 08:46:25,291.291 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:46:25
[2026-08-31 08:46:25,926.926 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:46:26,193.193 INFO    ] Initializing speech engine...
[2026-08-31 08:46:26,202.202 INFO    ] 2026-08-31 08:46:26
[2026-08-31 08:46:26,450.450 INFO    ] 2026-08-31 08:46:26
[2026-08-31 08:46:26,485.485 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:46:26,736.736 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:46:26,745.745 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:46:26,939.939 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:46:27,004.004 INFO    ] time= 31/08/2026 08:46:26
[2026-08-31 08:46:27,011.011 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:46:27,029.029 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:46:27,157.157 INFO    ] No existing commands found in stream
[2026-08-31 08:46:32,170.170 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:46:32,173.173 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-08-31 08:46:35,372.372 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 08:46:35,375.375 INFO    ] Checking for system updates...
[2026-08-31 08:46:35,410.410 INFO    ] 200
[2026-08-31 08:46:35,413.413 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:46:35,474.474 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:46:35,476.476 INFO    ] No update needed
[2026-08-31 08:46:35,479.479 INFO    ] Checking for camera pi updates...
[2026-08-31 08:46:35,513.513 INFO    ] 200
[2026-08-31 08:46:35,515.515 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:46:35,556.556 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:46:35,637.637 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:46:35,639.639 INFO    ] No camera update needed
[2026-08-31 08:46:35,642.642 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:46:35,644.644 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:46:35,650.650 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:46:35,655.655 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:46:37,696.696 INFO    ] ================================================
[2026-08-31 08:46:37,711.711 INFO    ] Launching Daemon at Mon Aug 31 08:46:37 IST 2026
[2026-08-31 08:46:37,722.722 INFO    ] ================================================
[2026-08-31 08:46:38,288.288 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:46:38
[2026-08-31 08:46:38,871.871 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:46:39,144.144 INFO    ] Initializing speech engine...
[2026-08-31 08:46:39,151.151 INFO    ] 2026-08-31 08:46:39
[2026-08-31 08:46:39,399.399 INFO    ] 2026-08-31 08:46:39
[2026-08-31 08:46:39,434.434 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:46:39,609.609 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:46:39,622.622 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:46:39,834.834 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:46:39,850.850 INFO    ] time= 31/08/2026 08:46:39
[2026-08-31 08:46:39,904.904 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:46:39,964.964 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:46:40,097.097 INFO    ] No existing commands found in stream
[2026-08-31 08:46:45,122.122 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:46:45,124.124 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-08-31 08:46:46,899.899 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 08:46:46,902.902 INFO    ] Checking for system updates...
[2026-08-31 08:46:46,944.944 INFO    ] 200
[2026-08-31 08:46:46,947.947 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:46:47,009.009 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:46:47,012.012 INFO    ] No update needed
[2026-08-31 08:46:47,015.015 INFO    ] Checking for camera pi updates...
[2026-08-31 08:46:47,050.050 INFO    ] 200
[2026-08-31 08:46:47,053.053 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:46:47,094.094 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:46:47,178.178 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:46:47,181.181 INFO    ] No camera update needed
[2026-08-31 08:46:47,184.184 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:46:47,187.187 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:46:47,193.193 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:46:47,199.199 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:46:49,241.241 INFO    ] ================================================
[2026-08-31 08:46:49,256.256 INFO    ] Launching Daemon at Mon Aug 31 08:46:49 IST 2026
[2026-08-31 08:46:49,267.267 INFO    ] ================================================
[2026-08-31 08:46:49,881.881 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:46:49
[2026-08-31 08:46:50,466.466 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:46:50,718.718 INFO    ] Initializing speech engine...
[2026-08-31 08:46:50,741.741 INFO    ] 2026-08-31 08:46:50
[2026-08-31 08:46:51,012.012 INFO    ] 2026-08-31 08:46:50
[2026-08-31 08:46:51,050.050 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:46:51,251.251 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:46:51,265.265 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:46:51,413.413 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:46:51,435.435 INFO    ] time= 31/08/2026 08:46:51
[2026-08-31 08:46:51,444.444 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:46:51,451.451 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:46:51,525.525 INFO    ] No existing commands found in stream
[2026-08-31 08:46:56,538.538 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:46:56,541.541 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-08-31 08:46:57,065.065 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 08:46:57,067.067 INFO    ] Checking for system updates...
[2026-08-31 08:46:57,109.109 INFO    ] 200
[2026-08-31 08:46:57,112.112 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:46:57,165.165 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:46:57,168.168 INFO    ] No update needed
[2026-08-31 08:46:57,171.171 INFO    ] Checking for camera pi updates...
[2026-08-31 08:46:57,210.210 INFO    ] 200
[2026-08-31 08:46:57,213.213 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:46:57,256.256 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:46:57,345.345 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:46:57,348.348 INFO    ] No camera update needed
[2026-08-31 08:46:57,350.350 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:46:57,352.352 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:46:57,358.358 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:46:57,363.363 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:46:59,402.402 INFO    ] ================================================
[2026-08-31 08:46:59,417.417 INFO    ] Launching Daemon at Mon Aug 31 08:46:59 IST 2026
[2026-08-31 08:46:59,428.428 INFO    ] ================================================
[2026-08-31 08:47:00,084.084 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:47:00
[2026-08-31 08:47:00,759.759 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:47:01,063.063 INFO    ] Initializing speech engine...
[2026-08-31 08:47:01,077.077 INFO    ] 2026-08-31 08:47:01
[2026-08-31 08:47:01,357.357 INFO    ] 2026-08-31 08:47:01
[2026-08-31 08:47:01,402.402 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:47:01,646.646 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:47:01,655.655 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:47:01,854.854 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:47:01,890.890 INFO    ] time= 31/08/2026 08:47:01
[2026-08-31 08:47:01,896.896 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:47:01,915.915 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:47:01,998.998 INFO    ] No existing commands found in stream
[2026-08-31 08:47:07,010.010 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:47:07,013.013 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-08-31 08:47:10,695.695 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 08:47:10,699.699 INFO    ] Checking for system updates...
[2026-08-31 08:47:10,736.736 INFO    ] 200
[2026-08-31 08:47:10,739.739 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:47:10,800.800 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:47:10,802.802 INFO    ] No update needed
[2026-08-31 08:47:10,805.805 INFO    ] Checking for camera pi updates...
[2026-08-31 08:47:10,840.840 INFO    ] 200
[2026-08-31 08:47:10,843.843 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:47:10,884.884 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:47:10,982.982 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:47:10,985.985 INFO    ] No camera update needed
[2026-08-31 08:47:10,987.987 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:47:10,990.990 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:47:10,996.996 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:47:11,002.002 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:47:13,043.043 INFO    ] ================================================
[2026-08-31 08:47:13,059.059 INFO    ] Launching Daemon at Mon Aug 31 08:47:13 IST 2026
[2026-08-31 08:47:13,070.070 INFO    ] ================================================
[2026-08-31 08:47:13,662.662 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:47:13
[2026-08-31 08:47:14,252.252 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:47:14,512.512 INFO    ] Initializing speech engine...
[2026-08-31 08:47:14,525.525 INFO    ] 2026-08-31 08:47:14
[2026-08-31 08:47:14,814.814 INFO    ] 2026-08-31 08:47:14
[2026-08-31 08:47:14,850.850 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:47:15,049.049 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:47:15,062.062 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:47:15,223.223 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:47:15,232.232 INFO    ] time= 31/08/2026 08:47:15
[2026-08-31 08:47:15,239.239 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:47:15,260.260 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:47:15,415.415 INFO    ] No existing commands found in stream
[2026-08-31 08:47:20,445.445 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:47:20,448.448 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-08-31 08:47:22,734.734 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 08:47:22,737.737 INFO    ] Checking for system updates...
[2026-08-31 08:47:22,772.772 INFO    ] 200
[2026-08-31 08:47:22,775.775 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:47:22,826.826 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:47:22,829.829 INFO    ] No update needed
[2026-08-31 08:47:22,832.832 INFO    ] Checking for camera pi updates...
[2026-08-31 08:47:22,869.869 INFO    ] 200
[2026-08-31 08:47:22,871.871 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:47:22,916.916 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:47:22,996.996 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:47:22,999.999 INFO    ] No camera update needed
[2026-08-31 08:47:23,001.001 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:47:23,004.004 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:47:23,009.009 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:47:23,014.014 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:47:25,054.054 INFO    ] ================================================
[2026-08-31 08:47:25,069.069 INFO    ] Launching Daemon at Mon Aug 31 08:47:25 IST 2026
[2026-08-31 08:47:25,080.080 INFO    ] ================================================
[2026-08-31 08:47:25,655.655 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:47:25
[2026-08-31 08:47:26,236.236 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:47:26,503.503 INFO    ] Initializing speech engine...
[2026-08-31 08:47:26,512.512 INFO    ] 2026-08-31 08:47:26
[2026-08-31 08:47:26,760.760 INFO    ] 2026-08-31 08:47:26
[2026-08-31 08:47:26,794.794 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:47:27,046.046 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:47:27,054.054 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:47:27,186.186 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:47:27,233.233 INFO    ] time= 31/08/2026 08:47:27
[2026-08-31 08:47:27,282.282 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:47:27,319.319 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:47:27,463.463 INFO    ] No existing commands found in stream
[2026-08-31 08:47:32,478.478 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:47:32,481.481 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-08-31 08:47:35,043.043 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 08:47:35,045.045 INFO    ] Checking for system updates...
[2026-08-31 08:47:35,082.082 INFO    ] 200
[2026-08-31 08:47:35,085.085 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:47:35,139.139 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:47:35,141.141 INFO    ] No update needed
[2026-08-31 08:47:35,144.144 INFO    ] Checking for camera pi updates...
[2026-08-31 08:47:35,179.179 INFO    ] 200
[2026-08-31 08:47:35,181.181 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:47:35,223.223 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:47:35,389.389 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:47:35,392.392 INFO    ] No camera update needed
[2026-08-31 08:47:35,395.395 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:47:35,398.398 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:47:35,404.404 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:47:35,409.409 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:47:37,450.450 INFO    ] ================================================
[2026-08-31 08:47:37,465.465 INFO    ] Launching Daemon at Mon Aug 31 08:47:37 IST 2026
[2026-08-31 08:47:37,476.476 INFO    ] ================================================
[2026-08-31 08:47:38,067.067 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:47:38
[2026-08-31 08:47:38,669.669 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:47:38,941.941 INFO    ] Initializing speech engine...
[2026-08-31 08:47:38,948.948 INFO    ] 2026-08-31 08:47:38
[2026-08-31 08:47:39,195.195 INFO    ] 2026-08-31 08:47:39
[2026-08-31 08:47:39,230.230 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:47:39,481.481 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:47:39,490.490 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:47:39,625.625 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:47:39,688.688 INFO    ] time= 31/08/2026 08:47:39
[2026-08-31 08:47:39,748.748 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:47:39,760.760 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:47:39,903.903 INFO    ] No existing commands found in stream
[2026-08-31 08:47:44,917.917 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:47:44,920.920 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-08-31 08:47:46,023.023 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 08:47:46,026.026 INFO    ] Checking for system updates...
[2026-08-31 08:47:46,062.062 INFO    ] 200
[2026-08-31 08:47:46,065.065 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:47:46,122.122 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:47:46,124.124 INFO    ] No update needed
[2026-08-31 08:47:46,127.127 INFO    ] Checking for camera pi updates...
[2026-08-31 08:47:46,160.160 INFO    ] 200
[2026-08-31 08:47:46,162.162 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:47:46,203.203 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:47:46,287.287 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:47:46,290.290 INFO    ] No camera update needed
[2026-08-31 08:47:46,292.292 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:47:46,294.294 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:47:46,300.300 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:47:46,305.305 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:47:48,346.346 INFO    ] ================================================
[2026-08-31 08:47:48,362.362 INFO    ] Launching Daemon at Mon Aug 31 08:47:48 IST 2026
[2026-08-31 08:47:48,373.373 INFO    ] ================================================
[2026-08-31 08:47:48,941.941 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:47:48
[2026-08-31 08:47:49,523.523 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:47:49,803.803 INFO    ] Initializing speech engine...
[2026-08-31 08:47:49,808.808 INFO    ] 2026-08-31 08:47:49
[2026-08-31 08:47:50,072.072 INFO    ] 2026-08-31 08:47:50
[2026-08-31 08:47:50,124.124 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:47:50,371.371 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:47:50,378.378 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:47:50,570.570 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:47:50,610.610 INFO    ] time= 31/08/2026 08:47:50
[2026-08-31 08:47:50,615.615 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:47:50,642.642 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:47:50,774.774 INFO    ] No existing commands found in stream
[2026-08-31 08:47:55,805.805 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:47:55,808.808 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-08-31 08:47:58,523.523 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 08:47:58,526.526 INFO    ] Checking for system updates...
[2026-08-31 08:47:58,562.562 INFO    ] 200
[2026-08-31 08:47:58,564.564 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:47:58,623.623 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:47:58,625.625 INFO    ] No update needed
[2026-08-31 08:47:58,628.628 INFO    ] Checking for camera pi updates...
[2026-08-31 08:47:58,666.666 INFO    ] 200
[2026-08-31 08:47:58,668.668 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:47:58,708.708 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:47:58,791.791 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:47:58,794.794 INFO    ] No camera update needed
[2026-08-31 08:47:58,796.796 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:47:58,798.798 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:47:58,804.804 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:47:58,809.809 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:48:00,851.851 INFO    ] ================================================
[2026-08-31 08:48:00,866.866 INFO    ] Launching Daemon at Mon Aug 31 08:48:00 IST 2026
[2026-08-31 08:48:00,876.876 INFO    ] ================================================
[2026-08-31 08:48:01,521.521 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:48:01
[2026-08-31 08:48:02,265.265 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:48:02,586.586 INFO    ] Initializing speech engine...
[2026-08-31 08:48:02,609.609 INFO    ] 2026-08-31 08:48:02
[2026-08-31 08:48:02,924.924 INFO    ] 2026-08-31 08:48:02
[2026-08-31 08:48:02,993.993 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:48:03,250.250 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:48:03,257.257 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:48:03,425.425 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:48:03,478.478 INFO    ] time= 31/08/2026 08:48:03
[2026-08-31 08:48:03,529.529 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:48:03,575.575 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:48:03,641.641 INFO    ] No existing commands found in stream
[2026-08-31 08:48:08,653.653 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:48:08,655.655 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-08-31 08:48:11,417.417 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 08:48:11,420.420 INFO    ] Checking for system updates...
[2026-08-31 08:48:11,456.456 INFO    ] 200
[2026-08-31 08:48:11,459.459 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:48:11,513.513 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:48:11,515.515 INFO    ] No update needed
[2026-08-31 08:48:11,518.518 INFO    ] Checking for camera pi updates...
[2026-08-31 08:48:11,551.551 INFO    ] 200
[2026-08-31 08:48:11,553.553 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:48:11,594.594 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:48:11,680.680 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:48:11,683.683 INFO    ] No camera update needed
[2026-08-31 08:48:11,685.685 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:48:11,688.688 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:48:11,693.693 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:48:11,698.698 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:48:13,740.740 INFO    ] ================================================
[2026-08-31 08:48:13,755.755 INFO    ] Launching Daemon at Mon Aug 31 08:48:13 IST 2026
[2026-08-31 08:48:13,766.766 INFO    ] ================================================
[2026-08-31 08:48:14,331.331 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:48:14
[2026-08-31 08:48:14,939.939 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:48:15,240.240 INFO    ] Initializing speech engine...
[2026-08-31 08:48:15,248.248 INFO    ] 2026-08-31 08:48:15
[2026-08-31 08:48:15,560.560 INFO    ] 2026-08-31 08:48:15
[2026-08-31 08:48:15,640.640 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:48:15,854.854 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:48:15,862.862 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:48:16,050.050 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:48:16,065.065 INFO    ] time= 31/08/2026 08:48:16
[2026-08-31 08:48:16,084.084 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:48:16,115.115 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:48:16,228.228 INFO    ] No existing commands found in stream
[2026-08-31 08:48:21,258.258 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:48:21,262.262 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-08-31 08:48:22,483.483 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 08:48:22,486.486 INFO    ] Checking for system updates...
[2026-08-31 08:48:22,525.525 INFO    ] 200
[2026-08-31 08:48:22,528.528 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:48:22,581.581 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:48:22,584.584 INFO    ] No update needed
[2026-08-31 08:48:22,587.587 INFO    ] Checking for camera pi updates...
[2026-08-31 08:48:22,620.620 INFO    ] 200
[2026-08-31 08:48:22,623.623 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:48:22,668.668 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:48:22,751.751 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:48:22,754.754 INFO    ] No camera update needed
[2026-08-31 08:48:22,756.756 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:48:22,759.759 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:48:22,765.765 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:48:22,770.770 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:48:24,810.810 INFO    ] ================================================
[2026-08-31 08:48:24,830.830 INFO    ] Launching Daemon at Mon Aug 31 08:48:24 IST 2026
[2026-08-31 08:48:24,842.842 INFO    ] ================================================
[2026-08-31 08:48:25,422.422 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:48:25
[2026-08-31 08:48:26,014.014 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:48:26,274.274 INFO    ] Initializing speech engine...
[2026-08-31 08:48:26,299.299 INFO    ] 2026-08-31 08:48:26
[2026-08-31 08:48:26,570.570 INFO    ] 2026-08-31 08:48:26
[2026-08-31 08:48:26,605.605 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:48:26,828.828 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:48:26,868.868 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:48:27,049.049 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:48:27,056.056 INFO    ] time= 31/08/2026 08:48:27
[2026-08-31 08:48:27,131.131 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:48:27,181.181 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:48:27,331.331 INFO    ] No existing commands found in stream
[2026-08-31 08:48:32,361.361 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:48:32,364.364 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-08-31 08:48:35,565.565 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 08:48:35,568.568 INFO    ] Checking for system updates...
[2026-08-31 08:48:35,603.603 INFO    ] 200
[2026-08-31 08:48:35,605.605 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:48:35,657.657 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:48:35,659.659 INFO    ] No update needed
[2026-08-31 08:48:35,662.662 INFO    ] Checking for camera pi updates...
[2026-08-31 08:48:35,698.698 INFO    ] 200
[2026-08-31 08:48:35,700.700 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:48:35,741.741 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:48:35,845.845 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:48:35,848.848 INFO    ] No camera update needed
[2026-08-31 08:48:35,850.850 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:48:35,852.852 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:48:35,858.858 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:48:35,863.863 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:48:37,902.902 INFO    ] ================================================
[2026-08-31 08:48:37,918.918 INFO    ] Launching Daemon at Mon Aug 31 08:48:37 IST 2026
[2026-08-31 08:48:37,928.928 INFO    ] ================================================
[2026-08-31 08:48:38,502.502 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:48:38
[2026-08-31 08:48:39,086.086 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:48:39,343.343 INFO    ] Initializing speech engine...
[2026-08-31 08:48:39,366.366 INFO    ] 2026-08-31 08:48:39
[2026-08-31 08:48:39,637.637 INFO    ] 2026-08-31 08:48:39
[2026-08-31 08:48:39,672.672 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:48:39,876.876 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:48:39,913.913 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:48:40,060.060 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:48:40,066.066 INFO    ] time= 31/08/2026 08:48:40
[2026-08-31 08:48:40,072.072 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:48:40,098.098 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:48:40,227.227 INFO    ] No existing commands found in stream
[2026-08-31 08:48:45,263.263 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:48:45,266.266 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-08-31 08:48:48,333.333 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 08:48:48,336.336 INFO    ] Checking for system updates...
[2026-08-31 08:48:48,372.372 INFO    ] 200
[2026-08-31 08:48:48,375.375 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:48:48,426.426 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:48:48,429.429 INFO    ] No update needed
[2026-08-31 08:48:48,431.431 INFO    ] Checking for camera pi updates...
[2026-08-31 08:48:48,464.464 INFO    ] 200
[2026-08-31 08:48:48,466.466 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:48:48,510.510 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:48:48,587.587 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:48:48,589.589 INFO    ] No camera update needed
[2026-08-31 08:48:48,592.592 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:48:48,594.594 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:48:48,599.599 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:48:48,604.604 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:48:50,644.644 INFO    ] ================================================
[2026-08-31 08:48:50,659.659 INFO    ] Launching Daemon at Mon Aug 31 08:48:50 IST 2026
[2026-08-31 08:48:50,669.669 INFO    ] ================================================
[2026-08-31 08:48:51,238.238 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:48:51
[2026-08-31 08:48:51,823.823 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:48:52,092.092 INFO    ] Initializing speech engine...
[2026-08-31 08:48:52,113.113 INFO    ] 2026-08-31 08:48:52
[2026-08-31 08:48:52,374.374 INFO    ] 2026-08-31 08:48:52
[2026-08-31 08:48:52,412.412 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:48:52,605.605 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:48:52,618.618 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:48:52,781.781 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:48:52,786.786 INFO    ] time= 31/08/2026 08:48:52
[2026-08-31 08:48:52,793.793 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:48:52,840.840 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:48:52,974.974 INFO    ] No existing commands found in stream
[2026-08-31 08:48:58,004.004 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:48:58,006.006 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-08-31 08:48:59,246.246 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 08:48:59,249.249 INFO    ] Checking for system updates...
[2026-08-31 08:48:59,285.285 INFO    ] 200
[2026-08-31 08:48:59,288.288 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:48:59,346.346 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:48:59,349.349 INFO    ] No update needed
[2026-08-31 08:48:59,352.352 INFO    ] Checking for camera pi updates...
[2026-08-31 08:48:59,386.386 INFO    ] 200
[2026-08-31 08:48:59,389.389 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:48:59,434.434 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:48:59,525.525 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:48:59,528.528 INFO    ] No camera update needed
[2026-08-31 08:48:59,531.531 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:48:59,534.534 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:48:59,540.540 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:48:59,545.545 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:49:01,589.589 INFO    ] ================================================
[2026-08-31 08:49:01,618.618 INFO    ] Launching Daemon at Mon Aug 31 08:49:01 IST 2026
[2026-08-31 08:49:01,642.642 INFO    ] ================================================
[2026-08-31 08:49:02,420.420 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:49:02
[2026-08-31 08:49:03,151.151 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:49:03,458.458 INFO    ] Initializing speech engine...
[2026-08-31 08:49:03,465.465 INFO    ] 2026-08-31 08:49:03
[2026-08-31 08:49:03,741.741 INFO    ] 2026-08-31 08:49:03
[2026-08-31 08:49:03,796.796 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:49:04,047.047 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:49:04,067.067 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:49:04,268.268 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:49:04,290.290 INFO    ] time= 31/08/2026 08:49:04
[2026-08-31 08:49:04,307.307 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:49:04,327.327 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:49:04,466.466 INFO    ] No existing commands found in stream
[2026-08-31 08:49:09,498.498 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:49:09,501.501 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-08-31 08:49:10,486.486 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 08:49:10,490.490 INFO    ] Checking for system updates...
[2026-08-31 08:49:10,527.527 INFO    ] 200
[2026-08-31 08:49:10,530.530 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:49:10,590.590 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:49:10,594.594 INFO    ] No update needed
[2026-08-31 08:49:10,596.596 INFO    ] Checking for camera pi updates...
[2026-08-31 08:49:10,631.631 INFO    ] 200
[2026-08-31 08:49:10,634.634 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:49:10,675.675 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:49:10,759.759 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:49:10,762.762 INFO    ] No camera update needed
[2026-08-31 08:49:10,765.765 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:49:10,768.768 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:49:10,774.774 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:49:10,780.780 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:49:12,822.822 INFO    ] ================================================
[2026-08-31 08:49:12,838.838 INFO    ] Launching Daemon at Mon Aug 31 08:49:12 IST 2026
[2026-08-31 08:49:12,849.849 INFO    ] ================================================
[2026-08-31 08:49:13,425.425 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:49:13
[2026-08-31 08:49:14,013.013 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:49:14,272.272 INFO    ] Initializing speech engine...
[2026-08-31 08:49:14,288.288 INFO    ] 2026-08-31 08:49:14
[2026-08-31 08:49:14,569.569 INFO    ] 2026-08-31 08:49:14
[2026-08-31 08:49:14,604.604 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:49:14,804.804 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:49:14,817.817 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:49:14,978.978 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:49:14,986.986 INFO    ] time= 31/08/2026 08:49:14
[2026-08-31 08:49:14,990.990 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:49:14,997.997 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:49:15,130.130 INFO    ] No existing commands found in stream
[2026-08-31 08:49:20,160.160 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:49:20,163.163 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-08-31 08:49:23,966.966 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 08:49:23,969.969 INFO    ] Checking for system updates...
[2026-08-31 08:49:24,006.006 INFO    ] 200
[2026-08-31 08:49:24,009.009 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:49:24,062.062 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:49:24,065.065 INFO    ] No update needed
[2026-08-31 08:49:24,068.068 INFO    ] Checking for camera pi updates...
[2026-08-31 08:49:24,102.102 INFO    ] 200
[2026-08-31 08:49:24,105.105 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:49:24,145.145 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:49:24,222.222 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:49:24,224.224 INFO    ] No camera update needed
[2026-08-31 08:49:24,227.227 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:49:24,229.229 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:49:24,235.235 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:49:24,240.240 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:49:26,282.282 INFO    ] ================================================
[2026-08-31 08:49:26,296.296 INFO    ] Launching Daemon at Mon Aug 31 08:49:26 IST 2026
[2026-08-31 08:49:26,307.307 INFO    ] ================================================
[2026-08-31 08:49:26,873.873 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:49:26
[2026-08-31 08:49:27,455.455 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:49:27,726.726 INFO    ] Initializing speech engine...
[2026-08-31 08:49:27,732.732 INFO    ] 2026-08-31 08:49:27
[2026-08-31 08:49:27,978.978 INFO    ] 2026-08-31 08:49:27
[2026-08-31 08:49:28,012.012 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:49:28,264.264 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:49:28,273.273 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:49:28,494.494 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:49:28,533.533 INFO    ] time= 31/08/2026 08:49:28
[2026-08-31 08:49:28,539.539 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:49:28,556.556 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:49:28,741.741 INFO    ] No existing commands found in stream
[2026-08-31 08:49:33,766.766 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:49:33,769.769 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-08-31 08:49:36,053.053 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 08:49:36,206.206 INFO    ] Checking for system updates...
[2026-08-31 08:49:36,243.243 INFO    ] 200
[2026-08-31 08:49:36,246.246 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:49:36,298.298 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:49:36,300.300 INFO    ] No update needed
[2026-08-31 08:49:36,303.303 INFO    ] Checking for camera pi updates...
[2026-08-31 08:49:36,336.336 INFO    ] 200
[2026-08-31 08:49:36,339.339 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:49:36,379.379 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:49:36,466.466 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:49:36,468.468 INFO    ] No camera update needed
[2026-08-31 08:49:36,471.471 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:49:36,473.473 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:49:36,479.479 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:49:36,484.484 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:49:38,526.526 INFO    ] ================================================
[2026-08-31 08:49:38,540.540 INFO    ] Launching Daemon at Mon Aug 31 08:49:38 IST 2026
[2026-08-31 08:49:38,551.551 INFO    ] ================================================
[2026-08-31 08:49:39,167.167 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:49:39
[2026-08-31 08:49:39,837.837 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:49:40,144.144 INFO    ] Initializing speech engine...
[2026-08-31 08:49:40,159.159 INFO    ] 2026-08-31 08:49:40
[2026-08-31 08:49:40,473.473 INFO    ] 2026-08-31 08:49:40
[2026-08-31 08:49:40,560.560 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:49:40,770.770 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:49:40,779.779 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:49:40,974.974 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:49:40,981.981 INFO    ] time= 31/08/2026 08:49:40
[2026-08-31 08:49:41,000.000 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:49:41,028.028 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:49:41,135.135 INFO    ] No existing commands found in stream
[2026-08-31 08:49:46,167.167 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:49:46,171.171 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-08-31 08:49:49,260.260 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 08:49:49,263.263 INFO    ] Checking for system updates...
[2026-08-31 08:49:49,305.305 INFO    ] 200
[2026-08-31 08:49:49,308.308 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:49:49,374.374 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:49:49,378.378 INFO    ] No update needed
[2026-08-31 08:49:49,381.381 INFO    ] Checking for camera pi updates...
[2026-08-31 08:49:49,419.419 INFO    ] 200
[2026-08-31 08:49:49,422.422 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:49:49,466.466 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:49:49,658.658 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:49:49,661.661 INFO    ] No camera update needed
[2026-08-31 08:49:49,664.664 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:49:49,670.670 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:49:49,679.679 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:49:49,686.686 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:49:51,729.729 INFO    ] ================================================
[2026-08-31 08:49:51,744.744 INFO    ] Launching Daemon at Mon Aug 31 08:49:51 IST 2026
[2026-08-31 08:49:51,755.755 INFO    ] ================================================
[2026-08-31 08:49:52,320.320 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:49:52
[2026-08-31 08:49:52,902.902 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:49:53,169.169 INFO    ] Initializing speech engine...
[2026-08-31 08:49:53,178.178 INFO    ] 2026-08-31 08:49:53
[2026-08-31 08:49:53,439.439 INFO    ] 2026-08-31 08:49:53
[2026-08-31 08:49:53,491.491 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:49:53,657.657 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:49:53,714.714 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:49:53,860.860 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:49:53,925.925 INFO    ] time= 31/08/2026 08:49:53
[2026-08-31 08:49:53,982.982 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:49:53,988.988 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:49:54,129.129 INFO    ] No existing commands found in stream
[2026-08-31 08:49:59,143.143 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:49:59,146.146 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-08-31 08:50:00,203.203 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 08:50:00,205.205 INFO    ] Checking for system updates...
[2026-08-31 08:50:00,240.240 INFO    ] 200
[2026-08-31 08:50:00,243.243 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:50:00,314.314 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:50:00,317.317 INFO    ] No update needed
[2026-08-31 08:50:00,319.319 INFO    ] Checking for camera pi updates...
[2026-08-31 08:50:00,353.353 INFO    ] 200
[2026-08-31 08:50:00,355.355 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:50:00,395.395 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:50:00,478.478 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:50:00,480.480 INFO    ] No camera update needed
[2026-08-31 08:50:00,482.482 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:50:00,485.485 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:50:00,490.490 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:50:00,495.495 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:50:02,573.573 INFO    ] ================================================
[2026-08-31 08:50:02,605.605 INFO    ] Launching Daemon at Mon Aug 31 08:50:02 IST 2026
[2026-08-31 08:50:02,629.629 INFO    ] ================================================
[2026-08-31 08:50:03,283.283 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:50:03
[2026-08-31 08:50:03,866.866 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:50:04,132.132 INFO    ] Initializing speech engine...
[2026-08-31 08:50:04,141.141 INFO    ] 2026-08-31 08:50:04
[2026-08-31 08:50:04,387.387 INFO    ] 2026-08-31 08:50:04
[2026-08-31 08:50:04,429.429 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:50:04,620.620 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:50:04,676.676 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:50:04,818.818 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:50:04,879.879 INFO    ] time= 31/08/2026 08:50:04
[2026-08-31 08:50:04,928.928 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:50:04,952.952 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:50:05,007.007 INFO    ] No existing commands found in stream
[2026-08-31 08:50:10,027.027 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:50:10,030.030 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-08-31 08:50:11,897.897 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 08:50:11,900.900 INFO    ] Checking for system updates...
[2026-08-31 08:50:11,935.935 INFO    ] 200
[2026-08-31 08:50:11,938.938 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:50:11,990.990 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:50:11,992.992 INFO    ] No update needed
[2026-08-31 08:50:11,995.995 INFO    ] Checking for camera pi updates...
[2026-08-31 08:50:12,028.028 INFO    ] 200
[2026-08-31 08:50:12,030.030 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:50:12,070.070 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:50:12,153.153 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:50:12,155.155 INFO    ] No camera update needed
[2026-08-31 08:50:12,158.158 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:50:12,160.160 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:50:12,165.165 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:50:12,170.170 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:50:14,211.211 INFO    ] ================================================
[2026-08-31 08:50:14,226.226 INFO    ] Launching Daemon at Mon Aug 31 08:50:14 IST 2026
[2026-08-31 08:50:14,237.237 INFO    ] ================================================
[2026-08-31 08:50:14,891.891 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:50:14
[2026-08-31 08:50:15,570.570 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:50:15,839.839 INFO    ] Initializing speech engine...
[2026-08-31 08:50:15,848.848 INFO    ] 2026-08-31 08:50:15
[2026-08-31 08:50:16,110.110 INFO    ] 2026-08-31 08:50:16
[2026-08-31 08:50:16,163.163 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:50:16,410.410 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:50:16,416.416 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:50:16,609.609 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:50:16,653.653 INFO    ] time= 31/08/2026 08:50:16
[2026-08-31 08:50:16,659.659 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:50:16,677.677 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:50:16,808.808 INFO    ] No existing commands found in stream
[2026-08-31 08:50:21,819.819 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:50:21,822.822 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-08-31 08:50:25,024.024 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 08:50:25,027.027 INFO    ] Checking for system updates...
[2026-08-31 08:50:25,063.063 INFO    ] 200
[2026-08-31 08:50:25,065.065 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:50:25,124.124 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:50:25,127.127 INFO    ] No update needed
[2026-08-31 08:50:25,130.130 INFO    ] Checking for camera pi updates...
[2026-08-31 08:50:25,168.168 INFO    ] 200
[2026-08-31 08:50:25,171.171 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:50:25,217.217 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:50:25,298.298 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:50:25,300.300 INFO    ] No camera update needed
[2026-08-31 08:50:25,303.303 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:50:25,306.306 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:50:25,312.312 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:50:25,317.317 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:50:27,360.360 INFO    ] ================================================
[2026-08-31 08:50:27,375.375 INFO    ] Launching Daemon at Mon Aug 31 08:50:27 IST 2026
[2026-08-31 08:50:27,386.386 INFO    ] ================================================
[2026-08-31 08:50:27,967.967 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:50:27
[2026-08-31 08:50:28,564.564 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:50:28,843.843 INFO    ] Initializing speech engine...
[2026-08-31 08:50:28,848.848 INFO    ] 2026-08-31 08:50:28
[2026-08-31 08:50:29,108.108 INFO    ] 2026-08-31 08:50:29
[2026-08-31 08:50:29,138.138 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:50:29,383.383 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:50:29,392.392 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:50:29,530.530 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:50:29,595.595 INFO    ] time= 31/08/2026 08:50:29
[2026-08-31 08:50:29,649.649 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:50:29,659.659 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:50:29,803.803 INFO    ] No existing commands found in stream
[2026-08-31 08:50:34,824.824 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:50:34,826.826 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-08-31 08:50:36,103.103 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 08:50:36,105.105 INFO    ] Checking for system updates...
[2026-08-31 08:50:36,142.142 INFO    ] 200
[2026-08-31 08:50:36,145.145 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:50:36,197.197 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:50:36,200.200 INFO    ] No update needed
[2026-08-31 08:50:36,203.203 INFO    ] Checking for camera pi updates...
[2026-08-31 08:50:36,237.237 INFO    ] 200
[2026-08-31 08:50:36,240.240 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:50:36,282.282 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:50:36,366.366 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:50:36,369.369 INFO    ] No camera update needed
[2026-08-31 08:50:36,371.371 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:50:36,374.374 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:50:36,380.380 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:50:36,385.385 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:50:38,427.427 INFO    ] ================================================
[2026-08-31 08:50:38,442.442 INFO    ] Launching Daemon at Mon Aug 31 08:50:38 IST 2026
[2026-08-31 08:50:38,453.453 INFO    ] ================================================
[2026-08-31 08:50:39,020.020 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:50:39
[2026-08-31 08:50:39,621.621 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:50:39,895.895 INFO    ] Initializing speech engine...
[2026-08-31 08:50:39,905.905 INFO    ] 2026-08-31 08:50:39
[2026-08-31 08:50:40,152.152 INFO    ] 2026-08-31 08:50:40
[2026-08-31 08:50:40,188.188 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:50:40,440.440 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:50:40,454.454 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:50:40,596.596 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:50:40,670.670 INFO    ] time= 31/08/2026 08:50:40
[2026-08-31 08:50:40,725.725 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:50:40,748.748 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:50:40,887.887 INFO    ] No existing commands found in stream
[2026-08-31 08:50:45,901.901 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:50:45,904.904 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-08-31 08:50:49,021.021 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 08:50:49,024.024 INFO    ] Checking for system updates...
[2026-08-31 08:50:49,065.065 INFO    ] 200
[2026-08-31 08:50:49,068.068 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:50:49,122.122 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:50:49,124.124 INFO    ] No update needed
[2026-08-31 08:50:49,127.127 INFO    ] Checking for camera pi updates...
[2026-08-31 08:50:49,161.161 INFO    ] 200
[2026-08-31 08:50:49,164.164 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:50:49,209.209 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:50:49,308.308 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:50:49,310.310 INFO    ] No camera update needed
[2026-08-31 08:50:49,312.312 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:50:49,315.315 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:50:49,320.320 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:50:49,325.325 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:50:51,364.364 INFO    ] ================================================
[2026-08-31 08:50:51,379.379 INFO    ] Launching Daemon at Mon Aug 31 08:50:51 IST 2026
[2026-08-31 08:50:51,390.390 INFO    ] ================================================
[2026-08-31 08:50:51,963.963 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:50:51
[2026-08-31 08:50:52,545.545 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:50:52,812.812 INFO    ] Initializing speech engine...
[2026-08-31 08:50:52,822.822 INFO    ] 2026-08-31 08:50:52
[2026-08-31 08:50:53,065.065 INFO    ] 2026-08-31 08:50:53
[2026-08-31 08:50:53,100.100 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:50:53,350.350 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:50:53,358.358 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:50:53,569.569 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:50:53,614.614 INFO    ] time= 31/08/2026 08:50:53
[2026-08-31 08:50:53,621.621 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:50:53,638.638 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:50:53,764.764 INFO    ] No existing commands found in stream
[2026-08-31 08:50:58,780.780 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:50:58,782.782 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-08-31 08:51:01,661.661 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 08:51:01,665.665 INFO    ] Checking for system updates...
[2026-08-31 08:51:01,712.712 INFO    ] 200
[2026-08-31 08:51:01,715.715 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:51:01,845.845 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:51:01,849.849 INFO    ] No update needed
[2026-08-31 08:51:01,853.853 INFO    ] Checking for camera pi updates...
[2026-08-31 08:51:01,913.913 INFO    ] 200
[2026-08-31 08:51:01,916.916 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:51:01,962.962 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:51:02,048.048 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:51:02,051.051 INFO    ] No camera update needed
[2026-08-31 08:51:02,053.053 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:51:02,056.056 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:51:02,063.063 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:51:02,069.069 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:51:04,110.110 INFO    ] ================================================
[2026-08-31 08:51:04,126.126 INFO    ] Launching Daemon at Mon Aug 31 08:51:04 IST 2026
[2026-08-31 08:51:04,136.136 INFO    ] ================================================
[2026-08-31 08:51:04,706.706 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:51:04
[2026-08-31 08:51:05,292.292 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:51:05,559.559 INFO    ] Initializing speech engine...
[2026-08-31 08:51:05,580.580 INFO    ] 2026-08-31 08:51:05
[2026-08-31 08:51:05,842.842 INFO    ] 2026-08-31 08:51:05
[2026-08-31 08:51:05,879.879 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:51:06,094.094 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:51:06,113.113 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:51:06,327.327 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:51:06,382.382 INFO    ] time= 31/08/2026 08:51:06
[2026-08-31 08:51:06,435.435 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:51:06,489.489 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:51:06,545.545 INFO    ] No existing commands found in stream
[2026-08-31 08:51:11,557.557 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:51:11,560.560 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-08-31 08:51:14,424.424 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 08:51:14,427.427 INFO    ] Checking for system updates...
[2026-08-31 08:51:14,462.462 INFO    ] 200
[2026-08-31 08:51:14,465.465 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:51:14,517.517 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:51:14,519.519 INFO    ] No update needed
[2026-08-31 08:51:14,522.522 INFO    ] Checking for camera pi updates...
[2026-08-31 08:51:14,555.555 INFO    ] 200
[2026-08-31 08:51:14,558.558 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:51:14,599.599 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:51:14,654.654 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:51:14,657.657 INFO    ] No camera update needed
[2026-08-31 08:51:14,659.659 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:51:14,661.661 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:51:14,667.667 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:51:14,672.672 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:51:16,713.713 INFO    ] ================================================
[2026-08-31 08:51:16,729.729 INFO    ] Launching Daemon at Mon Aug 31 08:51:16 IST 2026
[2026-08-31 08:51:16,741.741 INFO    ] ================================================
[2026-08-31 08:51:17,310.310 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:51:17
[2026-08-31 08:51:17,898.898 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:51:18,152.152 INFO    ] Initializing speech engine...
[2026-08-31 08:51:18,161.161 INFO    ] 2026-08-31 08:51:18
[2026-08-31 08:51:18,450.450 INFO    ] 2026-08-31 08:51:18
[2026-08-31 08:51:18,489.489 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:51:18,680.680 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:51:18,693.693 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:51:18,851.851 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:51:18,859.859 INFO    ] time= 31/08/2026 08:51:18
[2026-08-31 08:51:18,863.863 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:51:18,869.869 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:51:18,940.940 INFO    ] No existing commands found in stream
[2026-08-31 08:51:23,958.958 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:51:23,961.961 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-08-31 08:51:24,583.583 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 08:51:24,586.586 INFO    ] Checking for system updates...
[2026-08-31 08:51:24,622.622 INFO    ] 200
[2026-08-31 08:51:24,624.624 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:51:24,676.676 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:51:24,678.678 INFO    ] No update needed
[2026-08-31 08:51:24,681.681 INFO    ] Checking for camera pi updates...
[2026-08-31 08:51:24,717.717 INFO    ] 200
[2026-08-31 08:51:24,719.719 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:51:24,761.761 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:51:24,849.849 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:51:24,851.851 INFO    ] No camera update needed
[2026-08-31 08:51:24,854.854 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:51:24,856.856 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:51:24,861.861 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:51:24,866.866 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:51:26,906.906 INFO    ] ================================================
[2026-08-31 08:51:26,921.921 INFO    ] Launching Daemon at Mon Aug 31 08:51:26 IST 2026
[2026-08-31 08:51:26,932.932 INFO    ] ================================================
[2026-08-31 08:51:27,545.545 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:51:27
[2026-08-31 08:51:28,195.195 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:51:28,501.501 INFO    ] Initializing speech engine...
[2026-08-31 08:51:28,511.511 INFO    ] 2026-08-31 08:51:28
[2026-08-31 08:51:28,780.780 INFO    ] 2026-08-31 08:51:28
[2026-08-31 08:51:28,836.836 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:51:29,070.070 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:51:29,075.075 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:51:29,308.308 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:51:29,340.340 INFO    ] time= 31/08/2026 08:51:29
[2026-08-31 08:51:29,346.346 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:51:29,365.365 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:51:29,493.493 INFO    ] No existing commands found in stream
[2026-08-31 08:51:34,511.511 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:51:34,514.514 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-08-31 08:51:36,260.260 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 08:51:36,263.263 INFO    ] Checking for system updates...
[2026-08-31 08:51:36,300.300 INFO    ] 200
[2026-08-31 08:51:36,303.303 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:51:36,361.361 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:51:36,363.363 INFO    ] No update needed
[2026-08-31 08:51:36,366.366 INFO    ] Checking for camera pi updates...
[2026-08-31 08:51:36,404.404 INFO    ] 200
[2026-08-31 08:51:36,407.407 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:51:36,456.456 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:51:36,536.536 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:51:36,539.539 INFO    ] No camera update needed
[2026-08-31 08:51:36,542.542 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:51:36,544.544 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:51:36,550.550 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:51:36,556.556 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:51:38,596.596 INFO    ] ================================================
[2026-08-31 08:51:38,611.611 INFO    ] Launching Daemon at Mon Aug 31 08:51:38 IST 2026
[2026-08-31 08:51:38,622.622 INFO    ] ================================================
[2026-08-31 08:51:39,187.187 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:51:39
[2026-08-31 08:51:39,767.767 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:51:40,036.036 INFO    ] Initializing speech engine...
[2026-08-31 08:51:40,045.045 INFO    ] 2026-08-31 08:51:40
[2026-08-31 08:51:40,294.294 INFO    ] 2026-08-31 08:51:40
[2026-08-31 08:51:40,329.329 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:51:40,585.585 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:51:40,594.594 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:51:40,785.785 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:51:40,830.830 INFO    ] time= 31/08/2026 08:51:40
[2026-08-31 08:51:40,864.864 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:51:40,870.870 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:51:40,997.997 INFO    ] No existing commands found in stream
[2026-08-31 08:51:46,022.022 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:51:46,024.024 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-08-31 08:51:46,963.963 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 08:51:46,966.966 INFO    ] Checking for system updates...
[2026-08-31 08:51:47,001.001 INFO    ] 200
[2026-08-31 08:51:47,003.003 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:51:47,055.055 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:51:47,058.058 INFO    ] No update needed
[2026-08-31 08:51:47,060.060 INFO    ] Checking for camera pi updates...
[2026-08-31 08:51:47,094.094 INFO    ] 200
[2026-08-31 08:51:47,096.096 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:51:47,137.137 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:51:47,230.230 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:51:47,233.233 INFO    ] No camera update needed
[2026-08-31 08:51:47,235.235 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:51:47,237.237 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:51:47,242.242 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:51:47,247.247 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:51:49,287.287 INFO    ] ================================================
[2026-08-31 08:51:49,302.302 INFO    ] Launching Daemon at Mon Aug 31 08:51:49 IST 2026
[2026-08-31 08:51:49,313.313 INFO    ] ================================================
[2026-08-31 08:51:49,875.875 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:51:49
[2026-08-31 08:51:50,456.456 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:51:50,722.722 INFO    ] Initializing speech engine...
[2026-08-31 08:51:50,742.742 INFO    ] 2026-08-31 08:51:50
[2026-08-31 08:51:51,000.000 INFO    ] 2026-08-31 08:51:50
[2026-08-31 08:51:51,036.036 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:51:51,224.224 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:51:51,237.237 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:51:51,390.390 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:51:51,398.398 INFO    ] time= 31/08/2026 08:51:51
[2026-08-31 08:51:51,403.403 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:51:51,409.409 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:51:51,481.481 INFO    ] No existing commands found in stream
[2026-08-31 08:51:56,497.497 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:51:56,500.500 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-08-31 08:51:57,290.290 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 08:51:57,292.292 INFO    ] Checking for system updates...
[2026-08-31 08:51:57,331.331 INFO    ] 200
[2026-08-31 08:51:57,333.333 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:51:57,410.410 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:51:57,413.413 INFO    ] No update needed
[2026-08-31 08:51:57,415.415 INFO    ] Checking for camera pi updates...
[2026-08-31 08:51:57,452.452 INFO    ] 200
[2026-08-31 08:51:57,454.454 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:51:57,512.512 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:51:57,689.689 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:51:57,691.691 INFO    ] No camera update needed
[2026-08-31 08:51:57,694.694 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:51:57,696.696 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:51:57,701.701 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:51:57,706.706 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:51:59,746.746 INFO    ] ================================================
[2026-08-31 08:51:59,761.761 INFO    ] Launching Daemon at Mon Aug 31 08:51:59 IST 2026
[2026-08-31 08:51:59,772.772 INFO    ] ================================================
[2026-08-31 08:52:00,334.334 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:52:00
[2026-08-31 08:52:00,915.915 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:52:01,181.181 INFO    ] Initializing speech engine...
[2026-08-31 08:52:01,200.200 INFO    ] 2026-08-31 08:52:01
[2026-08-31 08:52:01,464.464 INFO    ] 2026-08-31 08:52:01
[2026-08-31 08:52:01,540.540 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:52:01,759.759 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:52:01,763.763 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:52:01,958.958 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:52:01,969.969 INFO    ] time= 31/08/2026 08:52:01
[2026-08-31 08:52:01,975.975 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:52:01,998.998 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:52:02,079.079 INFO    ] No existing commands found in stream
[2026-08-31 08:52:07,090.090 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:52:07,093.093 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-08-31 08:52:11,333.333 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 08:52:11,335.335 INFO    ] Checking for system updates...
[2026-08-31 08:52:11,373.373 INFO    ] 200
[2026-08-31 08:52:11,375.375 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:52:11,428.428 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:52:11,430.430 INFO    ] No update needed
[2026-08-31 08:52:11,433.433 INFO    ] Checking for camera pi updates...
[2026-08-31 08:52:11,469.469 INFO    ] 200
[2026-08-31 08:52:11,472.472 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:52:11,520.520 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:52:11,603.603 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:52:11,606.606 INFO    ] No camera update needed
[2026-08-31 08:52:11,609.609 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:52:11,611.611 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:52:11,617.617 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:52:11,623.623 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:52:13,664.664 INFO    ] ================================================
[2026-08-31 08:52:13,680.680 INFO    ] Launching Daemon at Mon Aug 31 08:52:13 IST 2026
[2026-08-31 08:52:13,690.690 INFO    ] ================================================
[2026-08-31 08:52:14,309.309 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:52:14
[2026-08-31 08:52:14,948.948 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:52:15,239.239 INFO    ] Initializing speech engine...
[2026-08-31 08:52:15,245.245 INFO    ] 2026-08-31 08:52:15
[2026-08-31 08:52:15,516.516 INFO    ] 2026-08-31 08:52:15
[2026-08-31 08:52:15,571.571 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:52:15,795.795 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:52:15,805.805 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:52:15,942.942 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:52:15,981.981 INFO    ] time= 31/08/2026 08:52:15
[2026-08-31 08:52:16,046.046 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:52:16,073.073 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:52:16,197.197 INFO    ] No existing commands found in stream
[2026-08-31 08:52:21,228.228 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:52:21,231.231 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-08-31 08:52:21,889.889 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 08:52:21,892.892 INFO    ] Checking for system updates...
[2026-08-31 08:52:21,928.928 INFO    ] 200
[2026-08-31 08:52:21,931.931 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:52:21,989.989 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:52:21,992.992 INFO    ] No update needed
[2026-08-31 08:52:21,995.995 INFO    ] Checking for camera pi updates...
[2026-08-31 08:52:22,032.032 INFO    ] 200
[2026-08-31 08:52:22,034.034 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:52:22,079.079 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:52:22,172.172 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:52:22,175.175 INFO    ] No camera update needed
[2026-08-31 08:52:22,178.178 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:52:22,180.180 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:52:22,186.186 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:52:22,192.192 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:52:24,233.233 INFO    ] ================================================
[2026-08-31 08:52:24,248.248 INFO    ] Launching Daemon at Mon Aug 31 08:52:24 IST 2026
[2026-08-31 08:52:24,259.259 INFO    ] ================================================
[2026-08-31 08:52:24,892.892 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:52:24
[2026-08-31 08:52:25,544.544 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:52:25,842.842 INFO    ] Initializing speech engine...
[2026-08-31 08:52:25,854.854 INFO    ] 2026-08-31 08:52:25
[2026-08-31 08:52:26,135.135 INFO    ] 2026-08-31 08:52:26
[2026-08-31 08:52:26,178.178 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:52:26,460.460 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:52:26,469.469 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:52:26,640.640 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:52:26,672.672 INFO    ] time= 31/08/2026 08:52:26
[2026-08-31 08:52:26,687.687 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:52:26,702.702 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:52:26,843.843 INFO    ] No existing commands found in stream
[2026-08-31 08:52:31,870.870 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:52:31,874.874 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-08-31 08:52:35,748.748 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 08:52:35,751.751 INFO    ] Checking for system updates...
[2026-08-31 08:52:35,787.787 INFO    ] 200
[2026-08-31 08:52:35,789.789 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:52:35,846.846 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:52:35,848.848 INFO    ] No update needed
[2026-08-31 08:52:35,851.851 INFO    ] Checking for camera pi updates...
[2026-08-31 08:52:35,885.885 INFO    ] 200
[2026-08-31 08:52:35,888.888 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:52:35,932.932 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:52:36,033.033 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:52:36,035.035 INFO    ] No camera update needed
[2026-08-31 08:52:36,038.038 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:52:36,040.040 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:52:36,046.046 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:52:36,051.051 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:52:38,092.092 INFO    ] ================================================
[2026-08-31 08:52:38,108.108 INFO    ] Launching Daemon at Mon Aug 31 08:52:38 IST 2026
[2026-08-31 08:52:38,119.119 INFO    ] ================================================
[2026-08-31 08:52:38,691.691 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:52:38
[2026-08-31 08:52:39,274.274 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:52:39,531.531 INFO    ] Initializing speech engine...
[2026-08-31 08:52:39,546.546 INFO    ] 2026-08-31 08:52:39
[2026-08-31 08:52:39,823.823 INFO    ] 2026-08-31 08:52:39
[2026-08-31 08:52:39,858.858 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:52:40,113.113 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:52:40,143.143 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:52:40,291.291 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:52:40,350.350 INFO    ] time= 31/08/2026 08:52:40
[2026-08-31 08:52:40,399.399 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:52:40,434.434 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:52:40,572.572 INFO    ] No existing commands found in stream
[2026-08-31 08:52:45,592.592 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:52:45,595.595 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-08-31 08:52:47,460.460 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 08:52:47,463.463 INFO    ] Checking for system updates...
[2026-08-31 08:52:47,499.499 INFO    ] 200
[2026-08-31 08:52:47,502.502 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:52:47,559.559 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:52:47,562.562 INFO    ] No update needed
[2026-08-31 08:52:47,564.564 INFO    ] Checking for camera pi updates...
[2026-08-31 08:52:47,602.602 INFO    ] 200
[2026-08-31 08:52:47,604.604 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:52:47,649.649 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:52:47,732.732 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:52:47,735.735 INFO    ] No camera update needed
[2026-08-31 08:52:47,738.738 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:52:47,740.740 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:52:47,746.746 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:52:47,752.752 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:52:49,792.792 INFO    ] ================================================
[2026-08-31 08:52:49,807.807 INFO    ] Launching Daemon at Mon Aug 31 08:52:49 IST 2026
[2026-08-31 08:52:49,818.818 INFO    ] ================================================
[2026-08-31 08:52:50,386.386 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:52:50
[2026-08-31 08:52:50,971.971 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:52:51,230.230 INFO    ] Initializing speech engine...
[2026-08-31 08:52:51,249.249 INFO    ] 2026-08-31 08:52:51
[2026-08-31 08:52:51,496.496 INFO    ] 2026-08-31 08:52:51
[2026-08-31 08:52:51,532.532 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:52:51,786.786 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:52:51,791.791 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:52:52,009.009 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:52:52,048.048 INFO    ] time= 31/08/2026 08:52:52
[2026-08-31 08:52:52,054.054 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:52:52,069.069 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:52:52,202.202 INFO    ] No existing commands found in stream
[2026-08-31 08:52:57,214.214 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:52:57,216.216 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-08-31 08:52:58,424.424 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 08:52:58,426.426 INFO    ] Checking for system updates...
[2026-08-31 08:52:58,462.462 INFO    ] 200
[2026-08-31 08:52:58,464.464 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:52:58,516.516 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:52:58,519.519 INFO    ] No update needed
[2026-08-31 08:52:58,521.521 INFO    ] Checking for camera pi updates...
[2026-08-31 08:52:58,555.555 INFO    ] 200
[2026-08-31 08:52:58,558.558 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:52:58,608.608 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:52:58,691.691 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:52:58,693.693 INFO    ] No camera update needed
[2026-08-31 08:52:58,696.696 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:52:58,699.699 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:52:58,705.705 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:52:58,710.710 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:53:00,751.751 INFO    ] ================================================
[2026-08-31 08:53:00,766.766 INFO    ] Launching Daemon at Mon Aug 31 08:53:00 IST 2026
[2026-08-31 08:53:00,777.777 INFO    ] ================================================
[2026-08-31 08:53:01,404.404 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:53:01
[2026-08-31 08:53:02,163.163 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:53:02,497.497 INFO    ] Initializing speech engine...
[2026-08-31 08:53:02,508.508 INFO    ] 2026-08-31 08:53:02
[2026-08-31 08:53:02,802.802 INFO    ] 2026-08-31 08:53:02
[2026-08-31 08:53:02,867.867 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:53:03,077.077 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:53:03,079.079 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:53:03,202.202 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:53:03,208.208 INFO    ] time= 31/08/2026 08:53:03
[2026-08-31 08:53:03,247.247 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:53:03,281.281 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:53:03,407.407 INFO    ] No existing commands found in stream
[2026-08-31 08:53:08,418.418 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:53:08,421.421 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-08-31 08:53:11,909.909 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 08:53:11,911.911 INFO    ] Checking for system updates...
[2026-08-31 08:53:11,950.950 INFO    ] 200
[2026-08-31 08:53:11,952.952 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:53:12,005.005 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:53:12,007.007 INFO    ] No update needed
[2026-08-31 08:53:12,010.010 INFO    ] Checking for camera pi updates...
[2026-08-31 08:53:12,043.043 INFO    ] 200
[2026-08-31 08:53:12,045.045 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:53:12,086.086 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:53:12,172.172 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:53:12,174.174 INFO    ] No camera update needed
[2026-08-31 08:53:12,176.176 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:53:12,179.179 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:53:12,184.184 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:53:12,189.189 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:53:14,230.230 INFO    ] ================================================
[2026-08-31 08:53:14,245.245 INFO    ] Launching Daemon at Mon Aug 31 08:53:14 IST 2026
[2026-08-31 08:53:14,256.256 INFO    ] ================================================
[2026-08-31 08:53:14,883.883 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:53:14
[2026-08-31 08:53:15,529.529 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:53:15,822.822 INFO    ] Initializing speech engine...
[2026-08-31 08:53:15,836.836 INFO    ] 2026-08-31 08:53:15
[2026-08-31 08:53:16,116.116 INFO    ] 2026-08-31 08:53:16
[2026-08-31 08:53:16,155.155 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:53:16,379.379 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:53:16,384.384 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:53:16,523.523 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:53:16,583.583 INFO    ] time= 31/08/2026 08:53:16
[2026-08-31 08:53:16,627.627 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:53:16,650.650 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:53:16,767.767 INFO    ] No existing commands found in stream
[2026-08-31 08:53:21,798.798 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:53:21,801.801 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-08-31 08:53:24,415.415 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 08:53:24,418.418 INFO    ] Checking for system updates...
[2026-08-31 08:53:24,457.457 INFO    ] 200
[2026-08-31 08:53:24,460.460 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:53:24,513.513 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:53:24,516.516 INFO    ] No update needed
[2026-08-31 08:53:24,519.519 INFO    ] Checking for camera pi updates...
[2026-08-31 08:53:24,553.553 INFO    ] 200
[2026-08-31 08:53:24,556.556 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:53:24,598.598 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:53:24,704.704 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:53:24,707.707 INFO    ] No camera update needed
[2026-08-31 08:53:24,710.710 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:53:24,712.712 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:53:24,718.718 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:53:24,724.724 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:53:26,764.764 INFO    ] ================================================
[2026-08-31 08:53:26,780.780 INFO    ] Launching Daemon at Mon Aug 31 08:53:26 IST 2026
[2026-08-31 08:53:26,791.791 INFO    ] ================================================
[2026-08-31 08:53:27,372.372 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:53:27
[2026-08-31 08:53:27,972.972 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:53:28,244.244 INFO    ] Initializing speech engine...
[2026-08-31 08:53:28,253.253 INFO    ] 2026-08-31 08:53:28
[2026-08-31 08:53:28,508.508 INFO    ] 2026-08-31 08:53:28
[2026-08-31 08:53:28,569.569 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:53:28,795.795 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:53:28,800.800 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:53:28,997.997 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:53:29,052.052 INFO    ] time= 31/08/2026 08:53:29
[2026-08-31 08:53:29,063.063 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:53:29,081.081 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:53:29,210.210 INFO    ] No existing commands found in stream
[2026-08-31 08:53:34,224.224 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:53:34,227.227 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-08-31 08:53:35,701.701 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 08:53:35,703.703 INFO    ] Checking for system updates...
[2026-08-31 08:53:35,739.739 INFO    ] 200
[2026-08-31 08:53:35,741.741 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:53:35,792.792 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:53:35,795.795 INFO    ] No update needed
[2026-08-31 08:53:35,797.797 INFO    ] Checking for camera pi updates...
[2026-08-31 08:53:35,830.830 INFO    ] 200
[2026-08-31 08:53:35,833.833 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:53:35,877.877 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:53:35,962.962 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:53:35,964.964 INFO    ] No camera update needed
[2026-08-31 08:53:35,967.967 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:53:35,969.969 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:53:35,974.974 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:53:35,979.979 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:53:38,020.020 INFO    ] ================================================
[2026-08-31 08:53:38,036.036 INFO    ] Launching Daemon at Mon Aug 31 08:53:38 IST 2026
[2026-08-31 08:53:38,046.046 INFO    ] ================================================
[2026-08-31 08:53:38,611.611 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:53:38
[2026-08-31 08:53:39,192.192 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:53:39,459.459 INFO    ] Initializing speech engine...
[2026-08-31 08:53:39,468.468 INFO    ] 2026-08-31 08:53:39
[2026-08-31 08:53:39,721.721 INFO    ] 2026-08-31 08:53:39
[2026-08-31 08:53:39,781.781 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:53:40,061.061 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:53:40,069.069 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:53:40,255.255 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:53:40,266.266 INFO    ] time= 31/08/2026 08:53:40
[2026-08-31 08:53:40,272.272 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:53:40,290.290 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:53:40,416.416 INFO    ] No existing commands found in stream
[2026-08-31 08:53:45,431.431 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:53:45,434.434 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-08-31 08:53:49,229.229 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 08:53:49,232.232 INFO    ] Checking for system updates...
[2026-08-31 08:53:49,269.269 INFO    ] 200
[2026-08-31 08:53:49,272.272 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:53:49,330.330 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:53:49,332.332 INFO    ] No update needed
[2026-08-31 08:53:49,335.335 INFO    ] Checking for camera pi updates...
[2026-08-31 08:53:49,373.373 INFO    ] 200
[2026-08-31 08:53:49,376.376 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:53:49,416.416 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:53:49,508.508 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:53:49,511.511 INFO    ] No camera update needed
[2026-08-31 08:53:49,513.513 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:53:49,516.516 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:53:49,522.522 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:53:49,528.528 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:53:51,570.570 INFO    ] ================================================
[2026-08-31 08:53:51,586.586 INFO    ] Launching Daemon at Mon Aug 31 08:53:51 IST 2026
[2026-08-31 08:53:51,597.597 INFO    ] ================================================
[2026-08-31 08:53:52,164.164 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:53:52
[2026-08-31 08:53:52,748.748 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:53:53,016.016 INFO    ] Initializing speech engine...
[2026-08-31 08:53:53,025.025 INFO    ] 2026-08-31 08:53:53
[2026-08-31 08:53:53,290.290 INFO    ] 2026-08-31 08:53:53
[2026-08-31 08:53:53,344.344 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:53:53,597.597 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:53:53,614.614 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:53:53,824.824 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:53:53,837.837 INFO    ] time= 31/08/2026 08:53:53
[2026-08-31 08:53:53,858.858 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:53:53,886.886 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:53:53,997.997 INFO    ] No existing commands found in stream
[2026-08-31 08:53:59,027.027 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:53:59,030.030 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-08-31 08:54:01,581.581 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 08:54:01,585.585 INFO    ] Checking for system updates...
[2026-08-31 08:54:01,642.642 INFO    ] 200
[2026-08-31 08:54:01,646.646 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:54:01,717.717 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:54:01,720.720 INFO    ] No update needed
[2026-08-31 08:54:01,723.723 INFO    ] Checking for camera pi updates...
[2026-08-31 08:54:01,818.818 INFO    ] 200
[2026-08-31 08:54:01,822.822 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:54:01,874.874 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:54:02,046.046 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:54:02,049.049 INFO    ] No camera update needed
[2026-08-31 08:54:02,052.052 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:54:02,055.055 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:54:02,062.062 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:54:02,068.068 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:54:04,109.109 INFO    ] ================================================
[2026-08-31 08:54:04,125.125 INFO    ] Launching Daemon at Mon Aug 31 08:54:04 IST 2026
[2026-08-31 08:54:04,136.136 INFO    ] ================================================
[2026-08-31 08:54:04,710.710 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:54:04
[2026-08-31 08:54:05,301.301 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:54:05,550.550 INFO    ] Initializing speech engine...
[2026-08-31 08:54:05,572.572 INFO    ] 2026-08-31 08:54:05
[2026-08-31 08:54:05,823.823 INFO    ] 2026-08-31 08:54:05
[2026-08-31 08:54:05,857.857 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:54:06,110.110 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:54:06,119.119 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:54:06,246.246 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:54:06,274.274 INFO    ] time= 31/08/2026 08:54:06
[2026-08-31 08:54:06,318.318 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:54:06,383.383 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:54:06,543.543 INFO    ] No existing commands found in stream
[2026-08-31 08:54:11,563.563 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:54:11,566.566 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-08-31 08:54:12,308.308 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 08:54:12,311.311 INFO    ] Checking for system updates...
[2026-08-31 08:54:12,347.347 INFO    ] 200
[2026-08-31 08:54:12,350.350 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:54:12,404.404 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:54:12,407.407 INFO    ] No update needed
[2026-08-31 08:54:12,410.410 INFO    ] Checking for camera pi updates...
[2026-08-31 08:54:12,444.444 INFO    ] 200
[2026-08-31 08:54:12,446.446 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:54:12,488.488 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:54:12,568.568 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:54:12,570.570 INFO    ] No camera update needed
[2026-08-31 08:54:12,572.572 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:54:12,575.575 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:54:12,580.580 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:54:12,585.585 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:54:14,627.627 INFO    ] ================================================
[2026-08-31 08:54:14,642.642 INFO    ] Launching Daemon at Mon Aug 31 08:54:14 IST 2026
[2026-08-31 08:54:14,653.653 INFO    ] ================================================
[2026-08-31 08:54:15,241.241 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:54:15
[2026-08-31 08:54:15,838.838 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:54:16,115.115 INFO    ] Initializing speech engine...
[2026-08-31 08:54:16,125.125 INFO    ] 2026-08-31 08:54:16
[2026-08-31 08:54:16,373.373 INFO    ] 2026-08-31 08:54:16
[2026-08-31 08:54:16,439.439 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:54:16,687.687 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:54:16,695.695 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:54:16,890.890 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:54:16,935.935 INFO    ] time= 31/08/2026 08:54:16
[2026-08-31 08:54:16,953.953 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:54:16,962.962 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:54:17,071.071 INFO    ] No existing commands found in stream
[2026-08-31 08:54:22,100.100 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:54:22,103.103 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-08-31 08:54:23,646.646 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 08:54:23,649.649 INFO    ] Checking for system updates...
[2026-08-31 08:54:23,689.689 INFO    ] 200
[2026-08-31 08:54:23,691.691 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:54:23,746.746 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:54:23,749.749 INFO    ] No update needed
[2026-08-31 08:54:23,752.752 INFO    ] Checking for camera pi updates...
[2026-08-31 08:54:23,785.785 INFO    ] 200
[2026-08-31 08:54:23,788.788 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:54:23,830.830 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:54:23,918.918 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:54:23,921.921 INFO    ] No camera update needed
[2026-08-31 08:54:23,924.924 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:54:23,927.927 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:54:23,933.933 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:54:23,940.940 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:54:25,983.983 INFO    ] ================================================
[2026-08-31 08:54:26,998.998 INFO    ] Launching Daemon at Mon Aug 31 08:54:25 IST 2026
[2026-08-31 08:54:26,009.009 INFO    ] ================================================
[2026-08-31 08:54:26,644.644 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:54:26
[2026-08-31 08:54:27,226.226 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:54:27,475.475 INFO    ] Initializing speech engine...
[2026-08-31 08:54:27,488.488 INFO    ] 2026-08-31 08:54:27
[2026-08-31 08:54:27,754.754 INFO    ] 2026-08-31 08:54:27
[2026-08-31 08:54:27,789.789 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:54:27,964.964 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:54:27,976.976 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:54:28,135.135 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:54:28,144.144 INFO    ] time= 31/08/2026 08:54:28
[2026-08-31 08:54:28,150.150 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:54:28,156.156 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:54:28,294.294 INFO    ] No existing commands found in stream
[2026-08-31 08:54:33,319.319 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:54:33,322.322 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-08-31 08:54:34,703.703 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 08:54:34,705.705 INFO    ] Checking for system updates...
[2026-08-31 08:54:34,744.744 INFO    ] 200
[2026-08-31 08:54:34,746.746 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:54:34,798.798 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:54:34,801.801 INFO    ] No update needed
[2026-08-31 08:54:34,803.803 INFO    ] Checking for camera pi updates...
[2026-08-31 08:54:34,837.837 INFO    ] 200
[2026-08-31 08:54:34,839.839 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:54:34,879.879 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:54:34,961.961 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:54:34,963.963 INFO    ] No camera update needed
[2026-08-31 08:54:34,965.965 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:54:34,968.968 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:54:34,973.973 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:54:34,978.978 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:54:37,019.019 INFO    ] ================================================
[2026-08-31 08:54:37,034.034 INFO    ] Launching Daemon at Mon Aug 31 08:54:37 IST 2026
[2026-08-31 08:54:37,045.045 INFO    ] ================================================
[2026-08-31 08:54:37,666.666 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:54:37
[2026-08-31 08:54:38,320.320 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:54:38,618.618 INFO    ] Initializing speech engine...
[2026-08-31 08:54:38,628.628 INFO    ] 2026-08-31 08:54:38
[2026-08-31 08:54:38,899.899 INFO    ] 2026-08-31 08:54:38
[2026-08-31 08:54:38,954.954 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:54:39,211.211 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:54:39,217.217 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:54:39,408.408 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:54:39,455.455 INFO    ] time= 31/08/2026 08:54:39
[2026-08-31 08:54:39,474.474 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:54:39,483.483 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:54:39,616.616 INFO    ] No existing commands found in stream
[2026-08-31 08:54:44,637.637 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:54:44,640.640 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-08-31 08:54:49,064.064 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 08:54:49,067.067 INFO    ] Checking for system updates...
[2026-08-31 08:54:49,104.104 INFO    ] 200
[2026-08-31 08:54:49,107.107 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:54:49,161.161 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:54:49,163.163 INFO    ] No update needed
[2026-08-31 08:54:49,165.165 INFO    ] Checking for camera pi updates...
[2026-08-31 08:54:49,199.199 INFO    ] 200
[2026-08-31 08:54:49,201.201 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:54:49,243.243 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:54:49,294.294 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:54:49,296.296 INFO    ] No camera update needed
[2026-08-31 08:54:49,299.299 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:54:49,301.301 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:54:49,306.306 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:54:49,311.311 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:54:51,353.353 INFO    ] ================================================
[2026-08-31 08:54:51,369.369 INFO    ] Launching Daemon at Mon Aug 31 08:54:51 IST 2026
[2026-08-31 08:54:51,379.379 INFO    ] ================================================
[2026-08-31 08:54:51,961.961 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:54:51
[2026-08-31 08:54:52,545.545 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:54:52,815.815 INFO    ] Initializing speech engine...
[2026-08-31 08:54:52,825.825 INFO    ] 2026-08-31 08:54:52
[2026-08-31 08:54:53,075.075 INFO    ] 2026-08-31 08:54:53
[2026-08-31 08:54:53,110.110 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:54:53,294.294 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:54:53,310.310 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:54:53,511.511 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:54:53,522.522 INFO    ] time= 31/08/2026 08:54:53
[2026-08-31 08:54:53,586.586 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:54:53,641.641 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:54:53,779.779 INFO    ] No existing commands found in stream
[2026-08-31 08:54:58,804.804 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:54:58,807.807 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-08-31 08:55:03,050.050 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 08:55:03,053.053 INFO    ] Checking for system updates...
[2026-08-31 08:55:03,096.096 INFO    ] 200
[2026-08-31 08:55:03,099.099 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:55:03,154.154 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:55:03,157.157 INFO    ] No update needed
[2026-08-31 08:55:03,159.159 INFO    ] Checking for camera pi updates...
[2026-08-31 08:55:03,197.197 INFO    ] 200
[2026-08-31 08:55:03,201.201 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:55:03,249.249 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:55:03,339.339 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:55:03,342.342 INFO    ] No camera update needed
[2026-08-31 08:55:03,344.344 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:55:03,346.346 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:55:03,351.351 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:55:03,356.356 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:55:05,399.399 INFO    ] ================================================
[2026-08-31 08:55:05,414.414 INFO    ] Launching Daemon at Mon Aug 31 08:55:05 IST 2026
[2026-08-31 08:55:05,425.425 INFO    ] ================================================
[2026-08-31 08:55:06,003.003 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:55:06
[2026-08-31 08:55:06,611.611 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:55:06,882.882 INFO    ] Initializing speech engine...
[2026-08-31 08:55:06,891.891 INFO    ] 2026-08-31 08:55:06
[2026-08-31 08:55:07,140.140 INFO    ] 2026-08-31 08:55:07
[2026-08-31 08:55:07,175.175 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:55:07,371.371 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:55:07,412.412 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:55:07,576.576 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:55:07,614.614 INFO    ] time= 31/08/2026 08:55:07
[2026-08-31 08:55:07,688.688 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:55:07,714.714 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:55:07,849.849 INFO    ] No existing commands found in stream
[2026-08-31 08:55:12,874.874 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:55:12,877.877 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-08-31 08:55:14,815.815 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 08:55:14,818.818 INFO    ] Checking for system updates...
[2026-08-31 08:55:14,853.853 INFO    ] 200
[2026-08-31 08:55:14,856.856 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:55:14,908.908 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:55:14,911.911 INFO    ] No update needed
[2026-08-31 08:55:14,913.913 INFO    ] Checking for camera pi updates...
[2026-08-31 08:55:14,948.948 INFO    ] 200
[2026-08-31 08:55:14,950.950 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:55:14,991.991 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:55:15,065.065 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:55:15,067.067 INFO    ] No camera update needed
[2026-08-31 08:55:15,070.070 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:55:15,072.072 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:55:15,077.077 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:55:15,082.082 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:55:17,121.121 INFO    ] ================================================
[2026-08-31 08:55:17,136.136 INFO    ] Launching Daemon at Mon Aug 31 08:55:17 IST 2026
[2026-08-31 08:55:17,146.146 INFO    ] ================================================
[2026-08-31 08:55:17,720.720 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:55:17
[2026-08-31 08:55:18,304.304 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:55:18,570.570 INFO    ] Initializing speech engine...
[2026-08-31 08:55:18,579.579 INFO    ] 2026-08-31 08:55:18
[2026-08-31 08:55:18,825.825 INFO    ] 2026-08-31 08:55:18
[2026-08-31 08:55:18,860.860 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:55:19,112.112 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:55:19,121.121 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:55:19,337.337 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:55:19,378.378 INFO    ] time= 31/08/2026 08:55:19
[2026-08-31 08:55:19,384.384 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:55:19,402.402 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:55:19,531.531 INFO    ] No existing commands found in stream
[2026-08-31 08:55:24,544.544 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:55:24,547.547 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-08-31 08:55:27,381.381 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 08:55:27,383.383 INFO    ] Checking for system updates...
[2026-08-31 08:55:27,420.420 INFO    ] 200
[2026-08-31 08:55:27,423.423 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:55:27,474.474 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:55:27,477.477 INFO    ] No update needed
[2026-08-31 08:55:27,480.480 INFO    ] Checking for camera pi updates...
[2026-08-31 08:55:27,513.513 INFO    ] 200
[2026-08-31 08:55:27,515.515 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:55:27,556.556 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:55:27,640.640 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:55:27,642.642 INFO    ] No camera update needed
[2026-08-31 08:55:27,645.645 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:55:27,647.647 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:55:27,652.652 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:55:27,658.658 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:55:29,697.697 INFO    ] ================================================
[2026-08-31 08:55:29,713.713 INFO    ] Launching Daemon at Mon Aug 31 08:55:29 IST 2026
[2026-08-31 08:55:29,723.723 INFO    ] ================================================
[2026-08-31 08:55:30,302.302 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:55:30
[2026-08-31 08:55:30,899.899 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:55:31,176.176 INFO    ] Initializing speech engine...
[2026-08-31 08:55:31,181.181 INFO    ] 2026-08-31 08:55:31
[2026-08-31 08:55:31,444.444 INFO    ] 2026-08-31 08:55:31
[2026-08-31 08:55:31,508.508 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:55:31,742.742 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:55:31,754.754 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:55:31,976.976 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:55:32,020.020 INFO    ] time= 31/08/2026 08:55:31
[2026-08-31 08:55:32,026.026 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:55:32,045.045 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:55:32,180.180 INFO    ] No existing commands found in stream
[2026-08-31 08:55:37,200.200 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:55:37,202.202 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-08-31 08:55:39,693.693 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 08:55:39,696.696 INFO    ] Checking for system updates...
[2026-08-31 08:55:39,736.736 INFO    ] 200
[2026-08-31 08:55:39,739.739 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:55:39,799.799 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:55:39,801.801 INFO    ] No update needed
[2026-08-31 08:55:39,804.804 INFO    ] Checking for camera pi updates...
[2026-08-31 08:55:39,841.841 INFO    ] 200
[2026-08-31 08:55:39,844.844 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:55:39,884.884 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:55:39,973.973 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:55:39,975.975 INFO    ] No camera update needed
[2026-08-31 08:55:39,978.978 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:55:39,980.980 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:55:39,985.985 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:55:39,990.990 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:55:42,032.032 INFO    ] ================================================
[2026-08-31 08:55:42,047.047 INFO    ] Launching Daemon at Mon Aug 31 08:55:42 IST 2026
[2026-08-31 08:55:42,058.058 INFO    ] ================================================
[2026-08-31 08:55:42,626.626 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:55:42
[2026-08-31 08:55:43,212.212 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:55:43,462.462 INFO    ] Initializing speech engine...
[2026-08-31 08:55:43,476.476 INFO    ] 2026-08-31 08:55:43
[2026-08-31 08:55:43,743.743 INFO    ] 2026-08-31 08:55:43
[2026-08-31 08:55:43,779.779 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:55:44,009.009 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:55:44,066.066 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:55:44,239.239 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:55:44,277.277 INFO    ] time= 31/08/2026 08:55:44
[2026-08-31 08:55:44,326.326 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:55:44,380.380 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:55:44,524.524 INFO    ] No existing commands found in stream
[2026-08-31 08:55:49,542.542 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:55:49,545.545 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-08-31 08:55:50,124.124 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 08:55:50,127.127 INFO    ] Checking for system updates...
[2026-08-31 08:55:50,164.164 INFO    ] 200
[2026-08-31 08:55:50,167.167 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:55:50,220.220 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:55:50,222.222 INFO    ] No update needed
[2026-08-31 08:55:50,225.225 INFO    ] Checking for camera pi updates...
[2026-08-31 08:55:50,258.258 INFO    ] 200
[2026-08-31 08:55:50,261.261 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:55:50,302.302 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:55:50,394.394 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:55:50,397.397 INFO    ] No camera update needed
[2026-08-31 08:55:50,399.399 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:55:50,402.402 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:55:50,407.407 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:55:50,412.412 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:55:52,451.451 INFO    ] ================================================
[2026-08-31 08:55:52,466.466 INFO    ] Launching Daemon at Mon Aug 31 08:55:52 IST 2026
[2026-08-31 08:55:52,476.476 INFO    ] ================================================
[2026-08-31 08:55:53,129.129 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:55:53
[2026-08-31 08:55:53,798.798 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:55:54,103.103 INFO    ] Initializing speech engine...
[2026-08-31 08:55:54,112.112 INFO    ] 2026-08-31 08:55:54
[2026-08-31 08:55:54,404.404 INFO    ] 2026-08-31 08:55:54
[2026-08-31 08:55:54,452.452 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:55:54,743.743 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:55:54,750.750 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:55:54,948.948 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:55:54,967.967 INFO    ] time= 31/08/2026 08:55:54
[2026-08-31 08:55:54,997.997 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:55:55,004.004 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:55:55,122.122 INFO    ] No existing commands found in stream
[2026-08-31 08:56:00,159.159 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:56:00,162.162 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-08-31 08:56:02,567.567 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 08:56:02,571.571 INFO    ] Checking for system updates...
[2026-08-31 08:56:02,618.618 INFO    ] 200
[2026-08-31 08:56:02,622.622 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:56:02,690.690 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:56:02,693.693 INFO    ] No update needed
[2026-08-31 08:56:02,697.697 INFO    ] Checking for camera pi updates...
[2026-08-31 08:56:02,747.747 INFO    ] 200
[2026-08-31 08:56:02,750.750 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:56:02,797.797 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:56:02,910.910 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:56:02,913.913 INFO    ] No camera update needed
[2026-08-31 08:56:02,918.918 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:56:02,922.922 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:56:02,929.929 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:56:02,936.936 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:56:04,978.978 INFO    ] ================================================
[2026-08-31 08:56:04,993.993 INFO    ] Launching Daemon at Mon Aug 31 08:56:04 IST 2026
[2026-08-31 08:56:05,004.004 INFO    ] ================================================
[2026-08-31 08:56:05,568.568 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:56:05
[2026-08-31 08:56:06,149.149 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:56:06,440.440 INFO    ] Initializing speech engine...
[2026-08-31 08:56:06,450.450 INFO    ] 2026-08-31 08:56:06
[2026-08-31 08:56:06,696.696 INFO    ] 2026-08-31 08:56:06
[2026-08-31 08:56:06,731.731 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:56:06,982.982 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:56:06,991.991 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:56:07,210.210 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:56:07,249.249 INFO    ] time= 31/08/2026 08:56:07
[2026-08-31 08:56:07,255.255 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:56:07,276.276 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:56:07,383.383 INFO    ] No existing commands found in stream
[2026-08-31 08:56:12,410.410 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:56:12,670.670 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-08-31 08:56:13,282.282 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 08:56:13,285.285 INFO    ] Checking for system updates...
[2026-08-31 08:56:13,322.322 INFO    ] 200
[2026-08-31 08:56:13,325.325 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:56:13,381.381 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:56:13,383.383 INFO    ] No update needed
[2026-08-31 08:56:13,386.386 INFO    ] Checking for camera pi updates...
[2026-08-31 08:56:13,419.419 INFO    ] 200
[2026-08-31 08:56:13,421.421 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:56:13,466.466 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:56:13,657.657 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:56:13,660.660 INFO    ] No camera update needed
[2026-08-31 08:56:13,662.662 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:56:13,664.664 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:56:13,670.670 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:56:13,674.674 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:56:15,717.717 INFO    ] ================================================
[2026-08-31 08:56:15,732.732 INFO    ] Launching Daemon at Mon Aug 31 08:56:15 IST 2026
[2026-08-31 08:56:15,742.742 INFO    ] ================================================
[2026-08-31 08:56:16,321.321 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:56:16
[2026-08-31 08:56:16,953.953 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:56:17,229.229 INFO    ] Initializing speech engine...
[2026-08-31 08:56:17,237.237 INFO    ] 2026-08-31 08:56:17
[2026-08-31 08:56:17,481.481 INFO    ] 2026-08-31 08:56:17
[2026-08-31 08:56:17,516.516 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:56:17,710.710 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:56:17,749.749 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:56:17,909.909 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:56:17,950.950 INFO    ] time= 31/08/2026 08:56:17
[2026-08-31 08:56:17,994.994 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:56:18,041.041 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:56:18,158.158 INFO    ] No existing commands found in stream
[2026-08-31 08:56:23,189.189 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:56:23,192.192 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-08-31 08:56:26,925.925 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 08:56:26,927.927 INFO    ] Checking for system updates...
[2026-08-31 08:56:26,963.963 INFO    ] 200
[2026-08-31 08:56:26,965.965 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:56:27,023.023 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:56:27,025.025 INFO    ] No update needed
[2026-08-31 08:56:27,027.027 INFO    ] Checking for camera pi updates...
[2026-08-31 08:56:27,061.061 INFO    ] 200
[2026-08-31 08:56:27,063.063 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:56:27,108.108 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:56:27,207.207 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:56:27,209.209 INFO    ] No camera update needed
[2026-08-31 08:56:27,212.212 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:56:27,214.214 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:56:27,219.219 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:56:27,224.224 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:56:29,267.267 INFO    ] ================================================
[2026-08-31 08:56:29,282.282 INFO    ] Launching Daemon at Mon Aug 31 08:56:29 IST 2026
[2026-08-31 08:56:29,293.293 INFO    ] ================================================
[2026-08-31 08:56:29,871.871 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:56:29
[2026-08-31 08:56:30,467.467 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:56:30,740.740 INFO    ] Initializing speech engine...
[2026-08-31 08:56:30,751.751 INFO    ] 2026-08-31 08:56:30
[2026-08-31 08:56:31,010.010 INFO    ] 2026-08-31 08:56:31
[2026-08-31 08:56:31,064.064 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:56:31,315.315 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:56:31,348.348 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:56:31,530.530 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:56:31,572.572 INFO    ] time= 31/08/2026 08:56:31
[2026-08-31 08:56:31,589.589 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:56:31,621.621 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:56:31,744.744 INFO    ] No existing commands found in stream
[2026-08-31 08:56:36,776.776 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:56:36,779.779 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-08-31 08:56:39,524.524 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 08:56:39,526.526 INFO    ] Checking for system updates...
[2026-08-31 08:56:39,565.565 INFO    ] 200
[2026-08-31 08:56:39,568.568 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:56:39,620.620 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:56:39,623.623 INFO    ] No update needed
[2026-08-31 08:56:39,625.625 INFO    ] Checking for camera pi updates...
[2026-08-31 08:56:39,659.659 INFO    ] 200
[2026-08-31 08:56:39,661.661 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:56:39,701.701 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:56:39,783.783 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:56:39,786.786 INFO    ] No camera update needed
[2026-08-31 08:56:39,788.788 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:56:39,791.791 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:56:39,796.796 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:56:39,801.801 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:56:41,840.840 INFO    ] ================================================
[2026-08-31 08:56:41,855.855 INFO    ] Launching Daemon at Mon Aug 31 08:56:41 IST 2026
[2026-08-31 08:56:41,866.866 INFO    ] ================================================
[2026-08-31 08:56:42,431.431 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:56:42
[2026-08-31 08:56:43,015.015 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:56:43,282.282 INFO    ] Initializing speech engine...
[2026-08-31 08:56:43,292.292 INFO    ] 2026-08-31 08:56:43
[2026-08-31 08:56:43,543.543 INFO    ] 2026-08-31 08:56:43
[2026-08-31 08:56:43,601.601 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:56:43,822.822 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:56:43,832.832 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:56:43,966.966 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:56:44,031.031 INFO    ] time= 31/08/2026 08:56:43
[2026-08-31 08:56:44,085.085 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:56:44,098.098 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:56:44,194.194 INFO    ] No existing commands found in stream
[2026-08-31 08:56:49,224.224 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:56:49,227.227 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-08-31 08:56:51,101.101 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 08:56:51,104.104 INFO    ] Checking for system updates...
[2026-08-31 08:56:51,148.148 INFO    ] 200
[2026-08-31 08:56:51,151.151 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:56:51,211.211 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:56:51,214.214 INFO    ] No update needed
[2026-08-31 08:56:51,216.216 INFO    ] Checking for camera pi updates...
[2026-08-31 08:56:51,255.255 INFO    ] 200
[2026-08-31 08:56:51,258.258 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:56:51,301.301 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:56:51,402.402 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:56:51,404.404 INFO    ] No camera update needed
[2026-08-31 08:56:51,407.407 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:56:51,410.410 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:56:51,416.416 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:56:51,422.422 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:56:53,463.463 INFO    ] ================================================
[2026-08-31 08:56:53,479.479 INFO    ] Launching Daemon at Mon Aug 31 08:56:53 IST 2026
[2026-08-31 08:56:53,490.490 INFO    ] ================================================
[2026-08-31 08:56:54,058.058 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:56:54
[2026-08-31 08:56:54,643.643 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:56:54,912.912 INFO    ] Initializing speech engine...
[2026-08-31 08:56:54,922.922 INFO    ] 2026-08-31 08:56:54
[2026-08-31 08:56:55,166.166 INFO    ] 2026-08-31 08:56:55
[2026-08-31 08:56:55,202.202 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:56:55,452.452 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:56:55,461.461 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:56:55,593.593 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:56:55,640.640 INFO    ] time= 31/08/2026 08:56:55
[2026-08-31 08:56:55,700.700 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:56:55,727.727 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:56:55,849.849 INFO    ] No existing commands found in stream
[2026-08-31 08:57:00,880.880 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:57:00,883.883 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-08-31 08:57:02,864.864 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 08:57:02,867.867 INFO    ] Checking for system updates...
[2026-08-31 08:57:02,913.913 INFO    ] 200
[2026-08-31 08:57:02,916.916 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:57:02,973.973 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:57:02,976.976 INFO    ] No update needed
[2026-08-31 08:57:02,978.978 INFO    ] Checking for camera pi updates...
[2026-08-31 08:57:03,012.012 INFO    ] 200
[2026-08-31 08:57:03,014.014 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:57:03,065.065 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:57:03,153.153 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:57:03,156.156 INFO    ] No camera update needed
[2026-08-31 08:57:03,158.158 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:57:03,161.161 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:57:03,166.166 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:57:03,171.171 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:57:05,214.214 INFO    ] ================================================
[2026-08-31 08:57:05,229.229 INFO    ] Launching Daemon at Mon Aug 31 08:57:05 IST 2026
[2026-08-31 08:57:05,240.240 INFO    ] ================================================
[2026-08-31 08:57:05,886.886 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:57:05
[2026-08-31 08:57:06,571.571 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:57:06,864.864 INFO    ] Initializing speech engine...
[2026-08-31 08:57:06,872.872 INFO    ] 2026-08-31 08:57:06
[2026-08-31 08:57:07,133.133 INFO    ] 2026-08-31 08:57:07
[2026-08-31 08:57:07,186.186 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:57:07,409.409 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:57:07,413.413 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:57:07,544.544 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:57:07,586.586 INFO    ] time= 31/08/2026 08:57:07
[2026-08-31 08:57:07,635.635 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:57:07,679.679 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:57:07,823.823 INFO    ] No existing commands found in stream
[2026-08-31 08:57:12,839.839 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:57:12,842.842 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-08-31 08:57:14,209.209 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 08:57:14,211.211 INFO    ] Checking for system updates...
[2026-08-31 08:57:14,248.248 INFO    ] 200
[2026-08-31 08:57:14,251.251 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:57:14,303.303 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:57:14,306.306 INFO    ] No update needed
[2026-08-31 08:57:14,309.309 INFO    ] Checking for camera pi updates...
[2026-08-31 08:57:14,343.343 INFO    ] 200
[2026-08-31 08:57:14,346.346 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:57:14,386.386 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:57:14,467.467 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:57:14,470.470 INFO    ] No camera update needed
[2026-08-31 08:57:14,472.472 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:57:14,475.475 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:57:14,481.481 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:57:14,487.487 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:57:16,529.529 INFO    ] ================================================
[2026-08-31 08:57:16,544.544 INFO    ] Launching Daemon at Mon Aug 31 08:57:16 IST 2026
[2026-08-31 08:57:16,556.556 INFO    ] ================================================
[2026-08-31 08:57:17,197.197 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:57:17
[2026-08-31 08:57:17,871.871 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:57:18,173.173 INFO    ] Initializing speech engine...
[2026-08-31 08:57:18,179.179 INFO    ] 2026-08-31 08:57:18
[2026-08-31 08:57:18,425.425 INFO    ] 2026-08-31 08:57:18
[2026-08-31 08:57:18,461.461 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:57:18,644.644 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:57:18,661.661 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:57:18,791.791 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:57:18,799.799 INFO    ] time= 31/08/2026 08:57:18
[2026-08-31 08:57:18,806.806 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:57:18,868.868 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:57:18,969.969 INFO    ] No existing commands found in stream
[2026-08-31 08:57:23,999.999 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:57:24,002.002 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-08-31 08:57:28,271.271 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 08:57:28,273.273 INFO    ] Checking for system updates...
[2026-08-31 08:57:28,308.308 INFO    ] 200
[2026-08-31 08:57:28,311.311 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:57:28,363.363 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:57:28,365.365 INFO    ] No update needed
[2026-08-31 08:57:28,368.368 INFO    ] Checking for camera pi updates...
[2026-08-31 08:57:28,401.401 INFO    ] 200
[2026-08-31 08:57:28,404.404 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:57:28,455.455 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:57:28,534.534 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:57:28,536.536 INFO    ] No camera update needed
[2026-08-31 08:57:28,539.539 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:57:28,541.541 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:57:28,546.546 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:57:28,551.551 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:57:30,592.592 INFO    ] ================================================
[2026-08-31 08:57:30,607.607 INFO    ] Launching Daemon at Mon Aug 31 08:57:30 IST 2026
[2026-08-31 08:57:30,618.618 INFO    ] ================================================
[2026-08-31 08:57:31,213.213 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:57:31
[2026-08-31 08:57:31,829.829 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:57:32,110.110 INFO    ] Initializing speech engine...
[2026-08-31 08:57:32,127.127 INFO    ] 2026-08-31 08:57:32
[2026-08-31 08:57:32,397.397 INFO    ] 2026-08-31 08:57:32
[2026-08-31 08:57:32,434.434 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:57:32,653.653 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:57:32,662.662 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:57:32,858.858 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:57:32,903.903 INFO    ] time= 31/08/2026 08:57:32
[2026-08-31 08:57:32,947.947 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:57:32,989.989 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:57:33,041.041 INFO    ] No existing commands found in stream
[2026-08-31 08:57:38,053.053 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:57:38,056.056 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-08-31 08:57:39,551.551 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 08:57:39,554.554 INFO    ] Checking for system updates...
[2026-08-31 08:57:39,589.589 INFO    ] 200
[2026-08-31 08:57:39,592.592 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:57:39,650.650 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:57:39,653.653 INFO    ] No update needed
[2026-08-31 08:57:39,655.655 INFO    ] Checking for camera pi updates...
[2026-08-31 08:57:39,689.689 INFO    ] 200
[2026-08-31 08:57:39,691.691 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:57:39,732.732 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:57:39,815.815 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:57:39,817.817 INFO    ] No camera update needed
[2026-08-31 08:57:39,820.820 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:57:39,822.822 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:57:39,827.827 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:57:39,833.833 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:57:41,873.873 INFO    ] ================================================
[2026-08-31 08:57:41,888.888 INFO    ] Launching Daemon at Mon Aug 31 08:57:41 IST 2026
[2026-08-31 08:57:41,899.899 INFO    ] ================================================
[2026-08-31 08:57:42,544.544 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:57:42
[2026-08-31 08:57:43,125.125 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:57:43,398.398 INFO    ] Initializing speech engine...
[2026-08-31 08:57:43,407.407 INFO    ] 2026-08-31 08:57:43
[2026-08-31 08:57:43,662.662 INFO    ] 2026-08-31 08:57:43
[2026-08-31 08:57:43,715.715 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:57:43,941.941 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:57:43,946.946 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:57:44,078.078 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:57:44,149.149 INFO    ] time= 31/08/2026 08:57:44
[2026-08-31 08:57:44,205.205 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:57:44,212.212 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:57:44,357.357 INFO    ] No existing commands found in stream
[2026-08-31 08:57:49,380.380 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:57:49,382.382 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-08-31 08:57:54,444.444 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 08:57:54,446.446 INFO    ] Checking for system updates...
[2026-08-31 08:57:54,487.487 INFO    ] 200
[2026-08-31 08:57:54,490.490 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:57:54,544.544 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:57:54,547.547 INFO    ] No update needed
[2026-08-31 08:57:54,550.550 INFO    ] Checking for camera pi updates...
[2026-08-31 08:57:54,585.585 INFO    ] 200
[2026-08-31 08:57:54,588.588 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:57:54,628.628 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:57:54,715.715 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:57:54,717.717 INFO    ] No camera update needed
[2026-08-31 08:57:54,720.720 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:57:54,722.722 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:57:54,727.727 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:57:54,732.732 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:57:56,774.774 INFO    ] ================================================
[2026-08-31 08:57:56,790.790 INFO    ] Launching Daemon at Mon Aug 31 08:57:56 IST 2026
[2026-08-31 08:57:56,801.801 INFO    ] ================================================
[2026-08-31 08:57:57,369.369 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:57:57
[2026-08-31 08:57:57,951.951 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:57:58,220.220 INFO    ] Initializing speech engine...
[2026-08-31 08:57:58,236.236 INFO    ] 2026-08-31 08:57:58
[2026-08-31 08:57:58,511.511 INFO    ] 2026-08-31 08:57:58
[2026-08-31 08:57:58,536.536 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:57:58,751.751 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:57:58,766.766 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:57:58,931.931 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:57:58,936.936 INFO    ] time= 31/08/2026 08:57:58
[2026-08-31 08:57:58,942.942 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:57:58,985.985 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:57:59,120.120 INFO    ] No existing commands found in stream
[2026-08-31 08:58:04,145.145 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:58:04,148.148 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-08-31 08:58:05,708.708 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 08:58:05,711.711 INFO    ] Checking for system updates...
[2026-08-31 08:58:05,752.752 INFO    ] 200
[2026-08-31 08:58:05,754.754 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:58:05,811.811 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:58:05,813.813 INFO    ] No update needed
[2026-08-31 08:58:05,816.816 INFO    ] Checking for camera pi updates...
[2026-08-31 08:58:05,858.858 INFO    ] 200
[2026-08-31 08:58:05,860.860 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:58:05,908.908 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:58:06,009.009 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:58:06,012.012 INFO    ] No camera update needed
[2026-08-31 08:58:06,015.015 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:58:06,018.018 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:58:06,025.025 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:58:06,031.031 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:58:08,074.074 INFO    ] ================================================
[2026-08-31 08:58:08,089.089 INFO    ] Launching Daemon at Mon Aug 31 08:58:08 IST 2026
[2026-08-31 08:58:08,100.100 INFO    ] ================================================
[2026-08-31 08:58:08,717.717 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:58:08
[2026-08-31 08:58:09,303.303 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:58:09,575.575 INFO    ] Initializing speech engine...
[2026-08-31 08:58:09,584.584 INFO    ] 2026-08-31 08:58:09
[2026-08-31 08:58:09,834.834 INFO    ] 2026-08-31 08:58:09
[2026-08-31 08:58:09,869.869 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:58:10,043.043 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:58:10,055.055 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:58:10,201.201 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:58:10,209.209 INFO    ] time= 31/08/2026 08:58:10
[2026-08-31 08:58:10,215.215 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:58:10,268.268 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:58:10,397.397 INFO    ] No existing commands found in stream
[2026-08-31 08:58:15,420.420 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:58:15,423.423 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-08-31 08:58:19,765.765 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 08:58:19,767.767 INFO    ] Checking for system updates...
[2026-08-31 08:58:19,810.810 INFO    ] 200
[2026-08-31 08:58:19,812.812 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:58:19,866.866 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:58:19,869.869 INFO    ] No update needed
[2026-08-31 08:58:19,872.872 INFO    ] Checking for camera pi updates...
[2026-08-31 08:58:19,907.907 INFO    ] 200
[2026-08-31 08:58:19,910.910 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:58:19,952.952 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:58:20,133.133 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:58:20,136.136 INFO    ] No camera update needed
[2026-08-31 08:58:20,139.139 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:58:20,142.142 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:58:20,148.148 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:58:20,154.154 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:58:22,198.198 INFO    ] ================================================
[2026-08-31 08:58:22,214.214 INFO    ] Launching Daemon at Mon Aug 31 08:58:22 IST 2026
[2026-08-31 08:58:22,225.225 INFO    ] ================================================
[2026-08-31 08:58:22,793.793 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:58:22
[2026-08-31 08:58:23,376.376 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:58:23,646.646 INFO    ] Initializing speech engine...
[2026-08-31 08:58:23,655.655 INFO    ] 2026-08-31 08:58:23
[2026-08-31 08:58:23,901.901 INFO    ] 2026-08-31 08:58:23
[2026-08-31 08:58:23,937.937 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:58:24,188.188 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:58:24,197.197 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:58:24,414.414 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:58:24,454.454 INFO    ] time= 31/08/2026 08:58:24
[2026-08-31 08:58:24,460.460 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:58:24,477.477 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:58:24,609.609 INFO    ] No existing commands found in stream
[2026-08-31 08:58:29,621.621 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:58:29,624.624 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-08-31 08:58:33,323.323 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 08:58:33,326.326 INFO    ] Checking for system updates...
[2026-08-31 08:58:33,361.361 INFO    ] 200
[2026-08-31 08:58:33,363.363 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:58:33,416.416 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:58:33,419.419 INFO    ] No update needed
[2026-08-31 08:58:33,421.421 INFO    ] Checking for camera pi updates...
[2026-08-31 08:58:33,455.455 INFO    ] 200
[2026-08-31 08:58:33,458.458 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:58:33,503.503 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:58:33,600.600 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:58:33,603.603 INFO    ] No camera update needed
[2026-08-31 08:58:33,605.605 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:58:33,607.607 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:58:33,613.613 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:58:33,618.618 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:58:35,660.660 INFO    ] ================================================
[2026-08-31 08:58:35,675.675 INFO    ] Launching Daemon at Mon Aug 31 08:58:35 IST 2026
[2026-08-31 08:58:35,687.687 INFO    ] ================================================
[2026-08-31 08:58:36,350.350 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:58:36
[2026-08-31 08:58:37,032.032 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:58:37,342.342 INFO    ] Initializing speech engine...
[2026-08-31 08:58:37,354.354 INFO    ] 2026-08-31 08:58:37
[2026-08-31 08:58:37,671.671 INFO    ] 2026-08-31 08:58:37
[2026-08-31 08:58:37,753.753 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:58:37,967.967 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:58:37,975.975 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:58:38,167.167 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:58:38,186.186 INFO    ] time= 31/08/2026 08:58:38
[2026-08-31 08:58:38,196.196 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:58:38,226.226 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:58:38,330.330 INFO    ] No existing commands found in stream
[2026-08-31 08:58:43,365.365 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:58:43,369.369 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-08-31 08:58:46,458.458 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 08:58:46,461.461 INFO    ] Checking for system updates...
[2026-08-31 08:58:46,501.501 INFO    ] 200
[2026-08-31 08:58:46,503.503 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:58:46,555.555 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:58:46,557.557 INFO    ] No update needed
[2026-08-31 08:58:46,560.560 INFO    ] Checking for camera pi updates...
[2026-08-31 08:58:46,598.598 INFO    ] 200
[2026-08-31 08:58:46,601.601 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:58:46,646.646 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:58:46,768.768 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:58:46,771.771 INFO    ] No camera update needed
[2026-08-31 08:58:46,773.773 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:58:46,775.775 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:58:46,780.780 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:58:46,785.785 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:58:48,826.826 INFO    ] ================================================
[2026-08-31 08:58:48,842.842 INFO    ] Launching Daemon at Mon Aug 31 08:58:48 IST 2026
[2026-08-31 08:58:48,852.852 INFO    ] ================================================
[2026-08-31 08:58:49,420.420 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:58:49
[2026-08-31 08:58:50,003.003 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:58:50,274.274 INFO    ] Initializing speech engine...
[2026-08-31 08:58:50,281.281 INFO    ] 2026-08-31 08:58:50
[2026-08-31 08:58:50,525.525 INFO    ] 2026-08-31 08:58:50
[2026-08-31 08:58:50,559.559 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:58:50,814.814 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:58:50,820.820 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:58:50,950.950 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:58:50,992.992 INFO    ] time= 31/08/2026 08:58:50
[2026-08-31 08:58:51,041.041 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:58:51,083.083 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:58:51,229.229 INFO    ] No existing commands found in stream
[2026-08-31 08:58:56,243.243 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:58:56,245.245 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-08-31 08:59:00,083.083 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 08:59:00,086.086 INFO    ] Checking for system updates...
[2026-08-31 08:59:00,121.121 INFO    ] 200
[2026-08-31 08:59:00,124.124 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:59:00,183.183 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:59:00,185.185 INFO    ] No update needed
[2026-08-31 08:59:00,188.188 INFO    ] Checking for camera pi updates...
[2026-08-31 08:59:00,222.222 INFO    ] 200
[2026-08-31 08:59:00,225.225 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:59:00,265.265 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:59:00,342.342 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:59:00,344.344 INFO    ] No camera update needed
[2026-08-31 08:59:00,347.347 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:59:00,349.349 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:59:00,354.354 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:59:00,359.359 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:59:02,415.415 INFO    ] ================================================
[2026-08-31 08:59:02,438.438 INFO    ] Launching Daemon at Mon Aug 31 08:59:02 IST 2026
[2026-08-31 08:59:02,455.455 INFO    ] ================================================
[2026-08-31 08:59:03,153.153 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:59:03
[2026-08-31 08:59:03,738.738 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:59:03,983.983 INFO    ] Initializing speech engine...
[2026-08-31 08:59:03,998.998 INFO    ] 2026-08-31 08:59:03
[2026-08-31 08:59:04,258.258 INFO    ] 2026-08-31 08:59:04
[2026-08-31 08:59:04,294.294 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:59:04,544.544 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:59:04,554.554 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:59:04,772.772 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:59:04,811.811 INFO    ] time= 31/08/2026 08:59:04
[2026-08-31 08:59:04,816.816 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:59:04,834.834 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:59:04,962.962 INFO    ] No existing commands found in stream
[2026-08-31 08:59:09,976.976 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:59:09,979.979 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-08-31 08:59:12,749.749 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 08:59:12,751.751 INFO    ] Checking for system updates...
[2026-08-31 08:59:12,790.790 INFO    ] 200
[2026-08-31 08:59:12,792.792 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:59:12,845.845 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:59:12,847.847 INFO    ] No update needed
[2026-08-31 08:59:12,850.850 INFO    ] Checking for camera pi updates...
[2026-08-31 08:59:12,886.886 INFO    ] 200
[2026-08-31 08:59:12,888.888 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:59:12,929.929 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:59:13,012.012 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:59:13,014.014 INFO    ] No camera update needed
[2026-08-31 08:59:13,016.016 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:59:13,019.019 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:59:13,024.024 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:59:13,029.029 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:59:15,069.069 INFO    ] ================================================
[2026-08-31 08:59:15,084.084 INFO    ] Launching Daemon at Mon Aug 31 08:59:15 IST 2026
[2026-08-31 08:59:15,096.096 INFO    ] ================================================
[2026-08-31 08:59:15,736.736 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:59:15
[2026-08-31 08:59:16,388.388 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:59:16,681.681 INFO    ] Initializing speech engine...
[2026-08-31 08:59:16,695.695 INFO    ] 2026-08-31 08:59:16
[2026-08-31 08:59:16,997.997 INFO    ] 2026-08-31 08:59:16
[2026-08-31 08:59:17,083.083 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:59:17,292.292 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:59:17,300.300 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:59:17,494.494 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:59:17,512.512 INFO    ] time= 31/08/2026 08:59:17
[2026-08-31 08:59:17,522.522 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:59:17,553.553 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:59:17,674.674 INFO    ] No existing commands found in stream
[2026-08-31 08:59:22,705.705 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:59:22,708.708 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-08-31 08:59:23,872.872 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 08:59:23,874.874 INFO    ] Checking for system updates...
[2026-08-31 08:59:23,911.911 INFO    ] 200
[2026-08-31 08:59:23,913.913 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:59:23,975.975 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:59:23,978.978 INFO    ] No update needed
[2026-08-31 08:59:23,981.981 INFO    ] Checking for camera pi updates...
[2026-08-31 08:59:24,018.018 INFO    ] 200
[2026-08-31 08:59:24,021.021 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:59:24,060.060 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:59:24,145.145 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 08:59:24,148.148 INFO    ] No camera update needed
[2026-08-31 08:59:24,150.150 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:59:24,153.153 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:59:24,158.158 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:59:24,163.163 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:59:26,204.204 INFO    ] ================================================
[2026-08-31 08:59:26,220.220 INFO    ] Launching Daemon at Mon Aug 31 08:59:26 IST 2026
[2026-08-31 08:59:26,231.231 INFO    ] ================================================
[2026-08-31 08:59:26,809.809 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:59:26
[2026-08-31 08:59:27,394.394 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:59:27,666.666 INFO    ] Initializing speech engine...
[2026-08-31 08:59:27,673.673 INFO    ] 2026-08-31 08:59:27
[2026-08-31 08:59:27,931.931 INFO    ] 2026-08-31 08:59:27
[2026-08-31 08:59:27,985.985 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:59:28,235.235 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:59:28,249.249 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:59:28,449.449 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:59:28,472.472 INFO    ] time= 31/08/2026 08:59:28
[2026-08-31 08:59:28,478.478 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:59:28,495.495 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:59:28,605.605 INFO    ] No existing commands found in stream
[2026-08-31 08:59:33,630.630 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:59:33,633.633 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-08-31 08:59:37,446.446 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 08:59:37,448.448 INFO    ] Checking for system updates...
[2026-08-31 08:59:37,486.486 INFO    ] 200
[2026-08-31 08:59:37,489.489 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:59:37,542.542 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:59:37,544.544 INFO    ] No update needed
[2026-08-31 08:59:37,547.547 INFO    ] Checking for camera pi updates...
[2026-08-31 08:59:37,585.585 INFO    ] 200
[2026-08-31 08:59:37,587.587 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:59:37,629.629 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:59:37,716.716 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:59:37,718.718 INFO    ] No camera update needed
[2026-08-31 08:59:37,721.721 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:59:37,723.723 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:59:37,728.728 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:59:37,734.734 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:59:39,774.774 INFO    ] ================================================
[2026-08-31 08:59:39,789.789 INFO    ] Launching Daemon at Mon Aug 31 08:59:39 IST 2026
[2026-08-31 08:59:39,800.800 INFO    ] ================================================
[2026-08-31 08:59:40,379.379 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:59:40
[2026-08-31 08:59:40,979.979 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:59:41,238.238 INFO    ] Initializing speech engine...
[2026-08-31 08:59:41,254.254 INFO    ] 2026-08-31 08:59:41
[2026-08-31 08:59:41,509.509 INFO    ] 2026-08-31 08:59:41
[2026-08-31 08:59:41,545.545 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:59:41,727.727 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:59:41,745.745 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:59:41,876.876 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:59:41,882.882 INFO    ] time= 31/08/2026 08:59:41
[2026-08-31 08:59:41,928.928 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:59:41,961.961 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:59:42,077.077 INFO    ] No existing commands found in stream
[2026-08-31 08:59:47,089.089 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:59:47,092.092 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-08-31 08:59:49,744.744 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 08:59:49,747.747 INFO    ] Checking for system updates...
[2026-08-31 08:59:49,782.782 INFO    ] 200
[2026-08-31 08:59:49,785.785 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:59:49,842.842 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:59:49,844.844 INFO    ] No update needed
[2026-08-31 08:59:49,847.847 INFO    ] Checking for camera pi updates...
[2026-08-31 08:59:49,881.881 INFO    ] 200
[2026-08-31 08:59:49,883.883 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 08:59:49,930.930 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 08:59:50,004.004 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 08:59:50,007.007 INFO    ] No camera update needed
[2026-08-31 08:59:50,010.010 INFO    ] Script finished. Safe exiting...
[2026-08-31 08:59:50,013.013 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 08:59:50,018.018 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 08:59:50,023.023 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 08:59:52,063.063 INFO    ] ================================================
[2026-08-31 08:59:52,079.079 INFO    ] Launching Daemon at Mon Aug 31 08:59:52 IST 2026
[2026-08-31 08:59:52,089.089 INFO    ] ================================================
[2026-08-31 08:59:52,730.730 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 08:59:52
[2026-08-31 08:59:53,328.328 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 08:59:53,579.579 INFO    ] Initializing speech engine...
[2026-08-31 08:59:53,585.585 INFO    ] 2026-08-31 08:59:53
[2026-08-31 08:59:53,862.862 INFO    ] 2026-08-31 08:59:53
[2026-08-31 08:59:53,897.897 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 08:59:54,151.151 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 08:59:54,160.160 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 08:59:54,393.393 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 08:59:54,420.420 INFO    ] time= 31/08/2026 08:59:54
[2026-08-31 08:59:54,436.436 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 08:59:54,444.444 INFO    ] Checking for existing commands in stream...
[2026-08-31 08:59:54,574.574 INFO    ] No existing commands found in stream
[2026-08-31 08:59:59,592.592 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 08:59:59,595.595 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-08-31 09:00:02,195.195 INFO    ] <class 'urllib3.exceptions.MaxRetryError'>
[2026-08-31 09:00:02,391.391 INFO    ] ("HTTPSConnectionPool(host='neuustore.com', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM08202202 (Caused by NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x73d93650>: Failed to establish a new connection: [Errno 111] Connection refused',))",)
[2026-08-31 09:00:02,451.451 INFO    ] HTTPSConnectionPool(host='neuustore.com', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM08202202 (Caused by NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x73d93650>: Failed to establish a new connection: [Errno 111] Connection refused',))
[2026-08-31 09:00:02,512.512 INFO    ] None
[2026-08-31 09:00:02,516.516 INFO    ] Checking for system updates...
[2026-08-31 09:00:02,821.821 INFO    ] 200
[2026-08-31 09:00:02,824.824 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:00:03,173.173 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:00:03,176.176 INFO    ] No update needed
[2026-08-31 09:00:03,240.240 INFO    ] Checking for camera pi updates...
[2026-08-31 09:00:03,488.488 INFO    ] 200
[2026-08-31 09:00:03,492.492 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:00:03,689.689 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:00:04,320.320 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:00:04,323.323 INFO    ] No camera update needed
[2026-08-31 09:00:04,326.326 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:00:04,350.350 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:00:04,357.357 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:00:04,384.384 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:00:06,458.458 INFO    ] ================================================
[2026-08-31 09:00:06,473.473 INFO    ] Launching Daemon at Mon Aug 31 09:00:06 IST 2026
[2026-08-31 09:00:06,483.483 INFO    ] ================================================
[2026-08-31 09:00:07,050.050 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:00:07
[2026-08-31 09:00:07,634.634 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:00:07,902.902 INFO    ] Initializing speech engine...
[2026-08-31 09:00:07,913.913 INFO    ] 2026-08-31 09:00:07
[2026-08-31 09:00:08,166.166 INFO    ] 2026-08-31 09:00:08
[2026-08-31 09:00:08,202.202 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:00:08,399.399 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:00:08,455.455 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:00:08,602.602 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:00:08,645.645 INFO    ] time= 31/08/2026 09:00:08
[2026-08-31 09:00:08,714.714 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:00:08,742.742 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:00:08,798.798 INFO    ] No existing commands found in stream
[2026-08-31 09:00:13,809.809 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:00:13,812.812 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-08-31 09:00:16,950.950 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 09:00:16,953.953 INFO    ] Checking for system updates...
[2026-08-31 09:00:16,989.989 INFO    ] 200
[2026-08-31 09:00:16,992.992 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:00:17,045.045 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:00:17,047.047 INFO    ] No update needed
[2026-08-31 09:00:17,050.050 INFO    ] Checking for camera pi updates...
[2026-08-31 09:00:17,083.083 INFO    ] 200
[2026-08-31 09:00:17,086.086 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:00:17,132.132 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:00:17,226.226 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:00:17,229.229 INFO    ] No camera update needed
[2026-08-31 09:00:17,231.231 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:00:17,234.234 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:00:17,239.239 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:00:17,244.244 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:00:19,286.286 INFO    ] ================================================
[2026-08-31 09:00:19,301.301 INFO    ] Launching Daemon at Mon Aug 31 09:00:19 IST 2026
[2026-08-31 09:00:19,312.312 INFO    ] ================================================
[2026-08-31 09:00:19,978.978 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:00:19
[2026-08-31 09:00:20,655.655 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:00:20,961.961 INFO    ] Initializing speech engine...
[2026-08-31 09:00:20,973.973 INFO    ] 2026-08-31 09:00:20
[2026-08-31 09:00:21,259.259 INFO    ] 2026-08-31 09:00:21
[2026-08-31 09:00:21,299.299 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:00:21,525.525 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:00:21,530.530 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:00:21,662.662 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:00:21,699.699 INFO    ] time= 31/08/2026 09:00:21
[2026-08-31 09:00:21,759.759 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:00:21,798.798 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:00:21,936.936 INFO    ] No existing commands found in stream
[2026-08-31 09:00:26,959.959 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:00:26,962.962 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-08-31 09:00:30,258.258 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 09:00:30,261.261 INFO    ] Checking for system updates...
[2026-08-31 09:00:30,300.300 INFO    ] 200
[2026-08-31 09:00:30,303.303 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:00:30,364.364 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:00:30,367.367 INFO    ] No update needed
[2026-08-31 09:00:30,370.370 INFO    ] Checking for camera pi updates...
[2026-08-31 09:00:30,421.421 INFO    ] 200
[2026-08-31 09:00:30,424.424 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:00:30,481.481 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:00:30,658.658 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:00:30,661.661 INFO    ] No camera update needed
[2026-08-31 09:00:30,663.663 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:00:30,666.666 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:00:30,671.671 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:00:30,676.676 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:00:32,719.719 INFO    ] ================================================
[2026-08-31 09:00:32,735.735 INFO    ] Launching Daemon at Mon Aug 31 09:00:32 IST 2026
[2026-08-31 09:00:32,746.746 INFO    ] ================================================
[2026-08-31 09:00:33,355.355 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:00:33
[2026-08-31 09:00:33,954.954 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:00:34,224.224 INFO    ] Initializing speech engine...
[2026-08-31 09:00:34,251.251 INFO    ] 2026-08-31 09:00:34
[2026-08-31 09:00:34,502.502 INFO    ] 2026-08-31 09:00:34
[2026-08-31 09:00:34,541.541 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:00:34,739.739 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:00:34,780.780 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:00:34,939.939 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:00:34,983.983 INFO    ] time= 31/08/2026 09:00:34
[2026-08-31 09:00:35,037.037 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:00:35,070.070 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:00:35,122.122 INFO    ] No existing commands found in stream
[2026-08-31 09:00:40,134.134 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:00:40,137.137 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-08-31 09:00:42,335.335 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 09:00:42,338.338 INFO    ] Checking for system updates...
[2026-08-31 09:00:42,375.375 INFO    ] 200
[2026-08-31 09:00:42,378.378 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:00:42,438.438 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:00:42,441.441 INFO    ] No update needed
[2026-08-31 09:00:42,444.444 INFO    ] Checking for camera pi updates...
[2026-08-31 09:00:42,478.478 INFO    ] 200
[2026-08-31 09:00:42,481.481 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:00:42,522.522 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:00:42,601.601 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:00:42,604.604 INFO    ] No camera update needed
[2026-08-31 09:00:42,606.606 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:00:42,609.609 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:00:42,615.615 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:00:42,621.621 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:00:44,662.662 INFO    ] ================================================
[2026-08-31 09:00:44,677.677 INFO    ] Launching Daemon at Mon Aug 31 09:00:44 IST 2026
[2026-08-31 09:00:44,688.688 INFO    ] ================================================
[2026-08-31 09:00:45,259.259 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:00:45
[2026-08-31 09:00:45,849.849 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:00:46,108.108 INFO    ] Initializing speech engine...
[2026-08-31 09:00:46,123.123 INFO    ] 2026-08-31 09:00:46
[2026-08-31 09:00:46,407.407 INFO    ] 2026-08-31 09:00:46
[2026-08-31 09:00:46,445.445 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:00:46,643.643 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:00:46,657.657 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:00:46,819.819 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:00:46,827.827 INFO    ] time= 31/08/2026 09:00:46
[2026-08-31 09:00:46,835.835 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:00:46,867.867 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:00:47,009.009 INFO    ] No existing commands found in stream
[2026-08-31 09:00:52,034.034 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:00:52,037.037 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-08-31 09:00:54,468.468 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 09:00:54,471.471 INFO    ] Checking for system updates...
[2026-08-31 09:00:54,507.507 INFO    ] 200
[2026-08-31 09:00:54,510.510 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:00:54,561.561 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:00:54,564.564 INFO    ] No update needed
[2026-08-31 09:00:54,566.566 INFO    ] Checking for camera pi updates...
[2026-08-31 09:00:54,603.603 INFO    ] 200
[2026-08-31 09:00:54,605.605 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:00:54,650.650 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:00:54,733.733 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:00:54,735.735 INFO    ] No camera update needed
[2026-08-31 09:00:54,738.738 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:00:54,740.740 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:00:54,746.746 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:00:54,751.751 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:00:56,790.790 INFO    ] ================================================
[2026-08-31 09:00:56,805.805 INFO    ] Launching Daemon at Mon Aug 31 09:00:56 IST 2026
[2026-08-31 09:00:56,816.816 INFO    ] ================================================
[2026-08-31 09:00:57,399.399 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:00:57
[2026-08-31 09:00:57,998.998 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:00:58,258.258 INFO    ] Initializing speech engine...
[2026-08-31 09:00:58,266.266 INFO    ] 2026-08-31 09:00:58
[2026-08-31 09:00:58,562.562 INFO    ] 2026-08-31 09:00:58
[2026-08-31 09:00:58,601.601 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:00:58,892.892 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:00:58,902.902 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:00:59,054.054 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:00:59,071.071 INFO    ] time= 31/08/2026 09:00:59
[2026-08-31 09:00:59,125.125 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:00:59,169.169 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:00:59,271.271 INFO    ] No existing commands found in stream
[2026-08-31 09:01:04,280.280 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:01:04,283.283 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-08-31 09:01:08,043.043 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 09:01:08,046.046 INFO    ] Checking for system updates...
[2026-08-31 09:01:08,085.085 INFO    ] 200
[2026-08-31 09:01:08,088.088 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:01:08,148.148 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:01:08,150.150 INFO    ] No update needed
[2026-08-31 09:01:08,153.153 INFO    ] Checking for camera pi updates...
[2026-08-31 09:01:08,191.191 INFO    ] 200
[2026-08-31 09:01:08,193.193 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:01:08,234.234 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:01:08,317.317 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:01:08,320.320 INFO    ] No camera update needed
[2026-08-31 09:01:08,322.322 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:01:08,325.325 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:01:08,330.330 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:01:08,335.335 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:01:10,375.375 INFO    ] ================================================
[2026-08-31 09:01:10,391.391 INFO    ] Launching Daemon at Mon Aug 31 09:01:10 IST 2026
[2026-08-31 09:01:10,402.402 INFO    ] ================================================
[2026-08-31 09:01:10,976.976 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:01:10
[2026-08-31 09:01:11,558.558 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:01:11,804.804 INFO    ] Initializing speech engine...
[2026-08-31 09:01:11,807.807 INFO    ] 2026-08-31 09:01:11
[2026-08-31 09:01:12,079.079 INFO    ] 2026-08-31 09:01:12
[2026-08-31 09:01:12,114.114 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:01:12,328.328 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:01:12,336.336 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:01:12,485.485 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:01:12,490.490 INFO    ] time= 31/08/2026 09:01:12
[2026-08-31 09:01:12,497.497 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:01:12,519.519 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:01:12,653.653 INFO    ] No existing commands found in stream
[2026-08-31 09:01:17,679.679 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:01:17,681.681 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-08-31 09:01:18,212.212 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 09:01:18,215.215 INFO    ] Checking for system updates...
[2026-08-31 09:01:18,251.251 INFO    ] 200
[2026-08-31 09:01:18,254.254 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:01:18,307.307 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:01:18,310.310 INFO    ] No update needed
[2026-08-31 09:01:18,312.312 INFO    ] Checking for camera pi updates...
[2026-08-31 09:01:18,346.346 INFO    ] 200
[2026-08-31 09:01:18,348.348 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:01:18,388.388 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:01:18,470.470 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:01:18,472.472 INFO    ] No camera update needed
[2026-08-31 09:01:18,474.474 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:01:18,476.476 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:01:18,482.482 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:01:18,487.487 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:01:20,529.529 INFO    ] ================================================
[2026-08-31 09:01:20,544.544 INFO    ] Launching Daemon at Mon Aug 31 09:01:20 IST 2026
[2026-08-31 09:01:20,555.555 INFO    ] ================================================
[2026-08-31 09:01:21,121.121 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:01:21
[2026-08-31 09:01:21,704.704 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:01:21,952.952 INFO    ] Initializing speech engine...
[2026-08-31 09:01:21,976.976 INFO    ] 2026-08-31 09:01:21
[2026-08-31 09:01:22,232.232 INFO    ] 2026-08-31 09:01:22
[2026-08-31 09:01:22,266.266 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:01:22,465.465 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:01:22,510.510 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:01:22,740.740 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:01:22,794.794 INFO    ] time= 31/08/2026 09:01:22
[2026-08-31 09:01:22,805.805 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:01:22,823.823 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:01:22,931.931 INFO    ] No existing commands found in stream
[2026-08-31 09:01:27,961.961 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:01:27,964.964 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-08-31 09:01:29,860.860 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 09:01:29,863.863 INFO    ] Checking for system updates...
[2026-08-31 09:01:29,904.904 INFO    ] 200
[2026-08-31 09:01:29,907.907 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:01:29,966.966 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:01:29,969.969 INFO    ] No update needed
[2026-08-31 09:01:29,971.971 INFO    ] Checking for camera pi updates...
[2026-08-31 09:01:30,005.005 INFO    ] 200
[2026-08-31 09:01:30,007.007 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:01:30,048.048 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:01:30,120.120 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:01:30,122.122 INFO    ] No camera update needed
[2026-08-31 09:01:30,125.125 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:01:30,127.127 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:01:30,132.132 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:01:30,137.137 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:01:32,187.187 INFO    ] ================================================
[2026-08-31 09:01:32,204.204 INFO    ] Launching Daemon at Mon Aug 31 09:01:32 IST 2026
[2026-08-31 09:01:32,216.216 INFO    ] ================================================
[2026-08-31 09:01:32,861.861 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:01:32
[2026-08-31 09:01:33,551.551 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:01:33,869.869 INFO    ] Initializing speech engine...
[2026-08-31 09:01:33,881.881 INFO    ] 2026-08-31 09:01:33
[2026-08-31 09:01:34,198.198 INFO    ] 2026-08-31 09:01:34
[2026-08-31 09:01:34,284.284 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:01:34,500.500 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:01:34,515.515 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:01:34,701.701 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:01:34,723.723 INFO    ] time= 31/08/2026 09:01:34
[2026-08-31 09:01:34,745.745 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:01:34,772.772 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:01:34,881.881 INFO    ] No existing commands found in stream
[2026-08-31 09:01:39,897.897 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:01:39,900.900 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-08-31 09:01:41,393.393 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 09:01:41,396.396 INFO    ] Checking for system updates...
[2026-08-31 09:01:41,440.440 INFO    ] 200
[2026-08-31 09:01:41,443.443 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:01:41,511.511 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:01:41,514.514 INFO    ] No update needed
[2026-08-31 09:01:41,517.517 INFO    ] Checking for camera pi updates...
[2026-08-31 09:01:41,552.552 INFO    ] 200
[2026-08-31 09:01:41,555.555 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:01:41,595.595 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:01:41,695.695 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:01:41,698.698 INFO    ] No camera update needed
[2026-08-31 09:01:41,700.700 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:01:41,702.702 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:01:41,708.708 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:01:41,713.713 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:01:43,753.753 INFO    ] ================================================
[2026-08-31 09:01:43,769.769 INFO    ] Launching Daemon at Mon Aug 31 09:01:43 IST 2026
[2026-08-31 09:01:43,779.779 INFO    ] ================================================
[2026-08-31 09:01:44,451.451 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:01:44
[2026-08-31 09:01:45,141.141 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:01:45,452.452 INFO    ] Initializing speech engine...
[2026-08-31 09:01:45,465.465 INFO    ] 2026-08-31 09:01:45
[2026-08-31 09:01:45,785.785 INFO    ] 2026-08-31 09:01:45
[2026-08-31 09:01:45,868.868 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:01:46,085.085 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:01:46,093.093 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:01:46,285.285 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:01:46,295.295 INFO    ] time= 31/08/2026 09:01:46
[2026-08-31 09:01:46,314.314 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:01:46,331.331 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:01:46,447.447 INFO    ] No existing commands found in stream
[2026-08-31 09:01:51,468.468 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:01:51,472.472 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-08-31 09:01:54,968.968 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 09:01:54,971.971 INFO    ] Checking for system updates...
[2026-08-31 09:01:55,011.011 INFO    ] 200
[2026-08-31 09:01:55,014.014 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:01:55,065.065 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:01:55,068.068 INFO    ] No update needed
[2026-08-31 09:01:55,071.071 INFO    ] Checking for camera pi updates...
[2026-08-31 09:01:55,108.108 INFO    ] 200
[2026-08-31 09:01:55,111.111 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:01:55,153.153 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:01:55,233.233 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:01:55,236.236 INFO    ] No camera update needed
[2026-08-31 09:01:55,238.238 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:01:55,241.241 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:01:55,246.246 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:01:55,251.251 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:01:57,291.291 INFO    ] ================================================
[2026-08-31 09:01:57,306.306 INFO    ] Launching Daemon at Mon Aug 31 09:01:57 IST 2026
[2026-08-31 09:01:57,316.316 INFO    ] ================================================
[2026-08-31 09:01:57,892.892 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:01:57
[2026-08-31 09:01:58,480.480 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:01:58,741.741 INFO    ] Initializing speech engine...
[2026-08-31 09:01:58,748.748 INFO    ] 2026-08-31 09:01:58
[2026-08-31 09:01:59,044.044 INFO    ] 2026-08-31 09:01:59
[2026-08-31 09:01:59,079.079 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:01:59,241.241 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:01:59,263.263 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:01:59,454.454 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:01:59,470.470 INFO    ] time= 31/08/2026 09:01:59
[2026-08-31 09:01:59,475.475 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:01:59,482.482 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:01:59,631.631 INFO    ] No existing commands found in stream
[2026-08-31 09:02:04,661.661 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:02:04,664.664 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-08-31 09:02:06,450.450 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 09:02:06,453.453 INFO    ] Checking for system updates...
[2026-08-31 09:02:06,492.492 INFO    ] 200
[2026-08-31 09:02:06,494.494 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:02:06,552.552 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:02:06,555.555 INFO    ] No update needed
[2026-08-31 09:02:06,557.557 INFO    ] Checking for camera pi updates...
[2026-08-31 09:02:06,593.593 INFO    ] 200
[2026-08-31 09:02:06,596.596 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:02:06,640.640 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:02:06,728.728 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:02:06,730.730 INFO    ] No camera update needed
[2026-08-31 09:02:06,732.732 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:02:06,734.734 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:02:06,740.740 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:02:06,745.745 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:02:08,785.785 INFO    ] ================================================
[2026-08-31 09:02:08,800.800 INFO    ] Launching Daemon at Mon Aug 31 09:02:08 IST 2026
[2026-08-31 09:02:08,811.811 INFO    ] ================================================
[2026-08-31 09:02:09,461.461 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:02:09
[2026-08-31 09:02:10,121.121 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:02:10,424.424 INFO    ] Initializing speech engine...
[2026-08-31 09:02:10,434.434 INFO    ] 2026-08-31 09:02:10
[2026-08-31 09:02:10,715.715 INFO    ] 2026-08-31 09:02:10
[2026-08-31 09:02:10,761.761 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:02:11,046.046 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:02:11,052.052 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:02:11,246.246 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:02:11,254.254 INFO    ] time= 31/08/2026 09:02:11
[2026-08-31 09:02:11,276.276 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:02:11,302.302 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:02:11,407.407 INFO    ] No existing commands found in stream
[2026-08-31 09:02:16,421.421 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:02:16,424.424 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-08-31 09:02:20,025.025 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 09:02:20,029.029 INFO    ] Checking for system updates...
[2026-08-31 09:02:20,069.069 INFO    ] 200
[2026-08-31 09:02:20,072.072 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:02:20,129.129 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:02:20,132.132 INFO    ] No update needed
[2026-08-31 09:02:20,134.134 INFO    ] Checking for camera pi updates...
[2026-08-31 09:02:20,172.172 INFO    ] 200
[2026-08-31 09:02:20,175.175 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:02:20,221.221 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:02:20,297.297 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:02:20,299.299 INFO    ] No camera update needed
[2026-08-31 09:02:20,302.302 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:02:20,304.304 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:02:20,309.309 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:02:20,314.314 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:02:22,355.355 INFO    ] ================================================
[2026-08-31 09:02:22,371.371 INFO    ] Launching Daemon at Mon Aug 31 09:02:22 IST 2026
[2026-08-31 09:02:22,383.383 INFO    ] ================================================
[2026-08-31 09:02:23,028.028 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:02:23
[2026-08-31 09:02:23,630.630 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:02:23,892.892 INFO    ] Initializing speech engine...
[2026-08-31 09:02:23,899.899 INFO    ] 2026-08-31 09:02:23
[2026-08-31 09:02:24,190.190 INFO    ] 2026-08-31 09:02:24
[2026-08-31 09:02:24,251.251 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:02:24,480.480 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:02:24,486.486 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:02:24,629.629 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:02:24,700.700 INFO    ] time= 31/08/2026 09:02:24
[2026-08-31 09:02:24,747.747 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:02:24,753.753 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:02:24,893.893 INFO    ] No existing commands found in stream
[2026-08-31 09:02:29,908.908 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:02:29,911.911 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-08-31 09:02:30,821.821 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 09:02:30,824.824 INFO    ] Checking for system updates...
[2026-08-31 09:02:30,860.860 INFO    ] 200
[2026-08-31 09:02:30,863.863 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:02:30,922.922 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:02:30,924.924 INFO    ] No update needed
[2026-08-31 09:02:30,927.927 INFO    ] Checking for camera pi updates...
[2026-08-31 09:02:30,965.965 INFO    ] 200
[2026-08-31 09:02:30,967.967 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:02:31,013.013 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:02:31,101.101 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:02:31,103.103 INFO    ] No camera update needed
[2026-08-31 09:02:31,106.106 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:02:31,109.109 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:02:31,115.115 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:02:31,120.120 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:02:33,162.162 INFO    ] ================================================
[2026-08-31 09:02:33,178.178 INFO    ] Launching Daemon at Mon Aug 31 09:02:33 IST 2026
[2026-08-31 09:02:33,191.191 INFO    ] ================================================
[2026-08-31 09:02:33,840.840 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:02:33
[2026-08-31 09:02:34,506.506 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:02:34,809.809 INFO    ] Initializing speech engine...
[2026-08-31 09:02:34,816.816 INFO    ] 2026-08-31 09:02:34
[2026-08-31 09:02:35,090.090 INFO    ] 2026-08-31 09:02:35
[2026-08-31 09:02:35,145.145 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:02:35,429.429 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:02:35,438.438 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:02:35,635.635 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:02:35,653.653 INFO    ] time= 31/08/2026 09:02:35
[2026-08-31 09:02:35,684.684 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:02:35,694.694 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:02:35,792.792 INFO    ] No existing commands found in stream
[2026-08-31 09:02:40,809.809 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:02:40,812.812 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-08-31 09:02:43,965.965 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 09:02:43,968.968 INFO    ] Checking for system updates...
[2026-08-31 09:02:44,013.013 INFO    ] 200
[2026-08-31 09:02:44,016.016 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:02:44,076.076 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:02:44,092.092 INFO    ] No update needed
[2026-08-31 09:02:44,095.095 INFO    ] Checking for camera pi updates...
[2026-08-31 09:02:44,130.130 INFO    ] 200
[2026-08-31 09:02:44,132.132 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:02:44,177.177 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:02:44,263.263 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:02:44,266.266 INFO    ] No camera update needed
[2026-08-31 09:02:44,269.269 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:02:44,271.271 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:02:44,289.289 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:02:44,294.294 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:02:46,336.336 INFO    ] ================================================
[2026-08-31 09:02:46,352.352 INFO    ] Launching Daemon at Mon Aug 31 09:02:46 IST 2026
[2026-08-31 09:02:46,363.363 INFO    ] ================================================
[2026-08-31 09:02:46,943.943 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:02:46
[2026-08-31 09:02:47,545.545 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:02:47,819.819 INFO    ] Initializing speech engine...
[2026-08-31 09:02:47,828.828 INFO    ] 2026-08-31 09:02:47
[2026-08-31 09:02:48,091.091 INFO    ] 2026-08-31 09:02:48
[2026-08-31 09:02:48,130.130 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:02:48,399.399 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:02:48,414.414 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:02:48,572.572 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:02:48,580.580 INFO    ] time= 31/08/2026 09:02:48
[2026-08-31 09:02:48,629.629 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:02:48,683.683 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:02:48,852.852 INFO    ] No existing commands found in stream
[2026-08-31 09:02:53,869.869 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:02:53,872.872 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-08-31 09:02:57,983.983 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 09:02:57,986.986 INFO    ] Checking for system updates...
[2026-08-31 09:02:58,022.022 INFO    ] 200
[2026-08-31 09:02:58,024.024 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:02:58,085.085 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:02:58,087.087 INFO    ] No update needed
[2026-08-31 09:02:58,090.090 INFO    ] Checking for camera pi updates...
[2026-08-31 09:02:58,123.123 INFO    ] 200
[2026-08-31 09:02:58,125.125 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:02:58,165.165 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:02:58,239.239 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:02:58,241.241 INFO    ] No camera update needed
[2026-08-31 09:02:58,243.243 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:02:58,246.246 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:02:58,251.251 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:02:58,256.256 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:03:00,299.299 INFO    ] ================================================
[2026-08-31 09:03:00,314.314 INFO    ] Launching Daemon at Mon Aug 31 09:03:00 IST 2026
[2026-08-31 09:03:00,325.325 INFO    ] ================================================
[2026-08-31 09:03:00,963.963 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:03:00
[2026-08-31 09:03:01,726.726 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:03:02,036.036 INFO    ] Initializing speech engine...
[2026-08-31 09:03:02,060.060 INFO    ] 2026-08-31 09:03:02
[2026-08-31 09:03:02,361.361 INFO    ] 2026-08-31 09:03:02
[2026-08-31 09:03:02,400.400 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:03:02,639.639 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:03:02,641.641 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:03:02,801.801 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:03:02,824.824 INFO    ] time= 31/08/2026 09:03:02
[2026-08-31 09:03:02,829.829 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:03:02,835.835 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:03:02,986.986 INFO    ] No existing commands found in stream
[2026-08-31 09:03:08,012.012 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:03:08,014.014 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-08-31 09:03:09,773.773 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 09:03:09,776.776 INFO    ] Checking for system updates...
[2026-08-31 09:03:09,817.817 INFO    ] 200
[2026-08-31 09:03:09,820.820 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:03:09,885.885 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:03:09,888.888 INFO    ] No update needed
[2026-08-31 09:03:09,890.890 INFO    ] Checking for camera pi updates...
[2026-08-31 09:03:09,928.928 INFO    ] 200
[2026-08-31 09:03:09,931.931 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:03:09,971.971 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:03:10,050.050 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:03:10,053.053 INFO    ] No camera update needed
[2026-08-31 09:03:10,055.055 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:03:10,057.057 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:03:10,063.063 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:03:10,068.068 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:03:12,110.110 INFO    ] ================================================
[2026-08-31 09:03:12,125.125 INFO    ] Launching Daemon at Mon Aug 31 09:03:12 IST 2026
[2026-08-31 09:03:12,136.136 INFO    ] ================================================
[2026-08-31 09:03:12,793.793 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:03:12
[2026-08-31 09:03:13,472.472 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:03:13,779.779 INFO    ] Initializing speech engine...
[2026-08-31 09:03:13,787.787 INFO    ] 2026-08-31 09:03:13
[2026-08-31 09:03:14,062.062 INFO    ] 2026-08-31 09:03:14
[2026-08-31 09:03:14,117.117 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:03:14,367.367 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:03:14,373.373 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:03:14,573.573 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:03:14,612.612 INFO    ] time= 31/08/2026 09:03:14
[2026-08-31 09:03:14,630.630 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:03:14,659.659 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:03:14,769.769 INFO    ] No existing commands found in stream
[2026-08-31 09:03:19,791.791 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:03:19,795.795 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-08-31 09:03:22,064.064 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 09:03:22,067.067 INFO    ] Checking for system updates...
[2026-08-31 09:03:22,103.103 INFO    ] 200
[2026-08-31 09:03:22,106.106 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:03:22,162.162 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:03:22,165.165 INFO    ] No update needed
[2026-08-31 09:03:22,167.167 INFO    ] Checking for camera pi updates...
[2026-08-31 09:03:22,201.201 INFO    ] 200
[2026-08-31 09:03:22,203.203 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:03:22,244.244 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:03:22,324.324 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:03:22,326.326 INFO    ] No camera update needed
[2026-08-31 09:03:22,329.329 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:03:22,331.331 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:03:22,337.337 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:03:22,342.342 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:03:24,381.381 INFO    ] ================================================
[2026-08-31 09:03:24,396.396 INFO    ] Launching Daemon at Mon Aug 31 09:03:24 IST 2026
[2026-08-31 09:03:24,406.406 INFO    ] ================================================
[2026-08-31 09:03:25,016.016 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:03:25
[2026-08-31 09:03:25,700.700 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:03:26,007.007 INFO    ] Initializing speech engine...
[2026-08-31 09:03:26,015.015 INFO    ] 2026-08-31 09:03:26
[2026-08-31 09:03:26,336.336 INFO    ] 2026-08-31 09:03:26
[2026-08-31 09:03:26,422.422 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:03:26,639.639 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:03:26,647.647 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:03:26,839.839 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:03:26,847.847 INFO    ] time= 31/08/2026 09:03:26
[2026-08-31 09:03:26,868.868 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:03:26,897.897 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:03:27,009.009 INFO    ] No existing commands found in stream
[2026-08-31 09:03:32,039.039 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:03:32,043.043 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-08-31 09:03:34,220.220 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 09:03:34,223.223 INFO    ] Checking for system updates...
[2026-08-31 09:03:34,264.264 INFO    ] 200
[2026-08-31 09:03:34,266.266 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:03:34,326.326 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:03:34,329.329 INFO    ] No update needed
[2026-08-31 09:03:34,331.331 INFO    ] Checking for camera pi updates...
[2026-08-31 09:03:34,365.365 INFO    ] 200
[2026-08-31 09:03:34,368.368 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:03:34,409.409 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:03:34,494.494 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:03:34,496.496 INFO    ] No camera update needed
[2026-08-31 09:03:34,499.499 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:03:34,501.501 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:03:34,507.507 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:03:34,512.512 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:03:36,554.554 INFO    ] ================================================
[2026-08-31 09:03:36,570.570 INFO    ] Launching Daemon at Mon Aug 31 09:03:36 IST 2026
[2026-08-31 09:03:36,581.581 INFO    ] ================================================
[2026-08-31 09:03:37,147.147 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:03:37
[2026-08-31 09:03:37,729.729 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:03:37,975.975 INFO    ] Initializing speech engine...
[2026-08-31 09:03:37,989.989 INFO    ] 2026-08-31 09:03:37
[2026-08-31 09:03:38,249.249 INFO    ] 2026-08-31 09:03:38
[2026-08-31 09:03:38,285.285 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:03:38,536.536 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:03:38,545.545 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:03:38,769.769 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:03:38,809.809 INFO    ] time= 31/08/2026 09:03:38
[2026-08-31 09:03:38,814.814 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:03:38,833.833 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:03:38,969.969 INFO    ] No existing commands found in stream
[2026-08-31 09:03:43,988.988 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:03:43,990.990 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-08-31 09:03:48,084.084 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 09:03:48,087.087 INFO    ] Checking for system updates...
[2026-08-31 09:03:48,123.123 INFO    ] 200
[2026-08-31 09:03:48,125.125 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:03:48,190.190 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:03:48,193.193 INFO    ] No update needed
[2026-08-31 09:03:48,195.195 INFO    ] Checking for camera pi updates...
[2026-08-31 09:03:48,228.228 INFO    ] 200
[2026-08-31 09:03:48,231.231 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:03:48,276.276 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:03:48,359.359 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:03:48,361.361 INFO    ] No camera update needed
[2026-08-31 09:03:48,364.364 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:03:48,366.366 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:03:48,371.371 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:03:48,376.376 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:03:50,427.427 INFO    ] ================================================
[2026-08-31 09:03:50,443.443 INFO    ] Launching Daemon at Mon Aug 31 09:03:50 IST 2026
[2026-08-31 09:03:50,455.455 INFO    ] ================================================
[2026-08-31 09:03:51,066.066 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:03:51
[2026-08-31 09:03:51,671.671 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:03:51,935.935 INFO    ] Initializing speech engine...
[2026-08-31 09:03:51,958.958 INFO    ] 2026-08-31 09:03:51
[2026-08-31 09:03:52,227.227 INFO    ] 2026-08-31 09:03:52
[2026-08-31 09:03:52,264.264 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:03:52,446.446 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:03:52,459.459 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:03:52,611.611 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:03:52,616.616 INFO    ] time= 31/08/2026 09:03:52
[2026-08-31 09:03:52,624.624 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:03:52,669.669 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:03:52,820.820 INFO    ] No existing commands found in stream
[2026-08-31 09:03:57,830.830 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:03:57,833.833 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-08-31 09:04:02,859.859 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 09:04:02,861.861 INFO    ] Checking for system updates...
[2026-08-31 09:04:02,904.904 INFO    ] 200
[2026-08-31 09:04:02,907.907 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:04:02,965.965 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:04:02,967.967 INFO    ] No update needed
[2026-08-31 09:04:02,970.970 INFO    ] Checking for camera pi updates...
[2026-08-31 09:04:03,007.007 INFO    ] 200
[2026-08-31 09:04:03,010.010 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:04:03,063.063 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:04:03,174.174 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:04:03,177.177 INFO    ] No camera update needed
[2026-08-31 09:04:03,179.179 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:04:03,182.182 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:04:03,187.187 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:04:03,192.192 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:04:05,232.232 INFO    ] ================================================
[2026-08-31 09:04:05,247.247 INFO    ] Launching Daemon at Mon Aug 31 09:04:05 IST 2026
[2026-08-31 09:04:05,258.258 INFO    ] ================================================
[2026-08-31 09:04:05,823.823 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:04:05
[2026-08-31 09:04:06,426.426 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:04:06,694.694 INFO    ] Initializing speech engine...
[2026-08-31 09:04:06,703.703 INFO    ] 2026-08-31 09:04:06
[2026-08-31 09:04:06,950.950 INFO    ] 2026-08-31 09:04:06
[2026-08-31 09:04:06,984.984 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:04:07,234.234 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:04:07,244.244 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:04:07,374.374 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:04:07,421.421 INFO    ] time= 31/08/2026 09:04:07
[2026-08-31 09:04:07,481.481 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:04:07,508.508 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:04:07,564.564 INFO    ] No existing commands found in stream
[2026-08-31 09:04:12,575.575 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:04:12,578.578 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-08-31 09:04:15,087.087 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 09:04:15,089.089 INFO    ] Checking for system updates...
[2026-08-31 09:04:15,125.125 INFO    ] 200
[2026-08-31 09:04:15,129.129 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:04:15,183.183 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:04:15,186.186 INFO    ] No update needed
[2026-08-31 09:04:15,189.189 INFO    ] Checking for camera pi updates...
[2026-08-31 09:04:15,238.238 INFO    ] 200
[2026-08-31 09:04:15,241.241 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:04:15,290.290 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:04:15,373.373 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:04:15,376.376 INFO    ] No camera update needed
[2026-08-31 09:04:15,378.378 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:04:15,381.381 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:04:15,386.386 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:04:15,391.391 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:04:17,433.433 INFO    ] ================================================
[2026-08-31 09:04:17,449.449 INFO    ] Launching Daemon at Mon Aug 31 09:04:17 IST 2026
[2026-08-31 09:04:17,460.460 INFO    ] ================================================
[2026-08-31 09:04:18,026.026 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:04:18
[2026-08-31 09:04:18,607.607 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:04:18,857.857 INFO    ] Initializing speech engine...
[2026-08-31 09:04:18,863.863 INFO    ] 2026-08-31 09:04:18
[2026-08-31 09:04:19,166.166 INFO    ] 2026-08-31 09:04:19
[2026-08-31 09:04:19,191.191 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:04:19,401.401 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:04:19,407.407 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:04:19,585.585 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:04:19,593.593 INFO    ] time= 31/08/2026 09:04:19
[2026-08-31 09:04:19,598.598 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:04:19,606.606 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:04:19,677.677 INFO    ] No existing commands found in stream
[2026-08-31 09:04:24,690.690 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:04:24,693.693 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-08-31 09:04:26,291.291 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 09:04:26,294.294 INFO    ] Checking for system updates...
[2026-08-31 09:04:26,333.333 INFO    ] 200
[2026-08-31 09:04:26,336.336 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:04:26,387.387 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:04:26,390.390 INFO    ] No update needed
[2026-08-31 09:04:26,392.392 INFO    ] Checking for camera pi updates...
[2026-08-31 09:04:26,425.425 INFO    ] 200
[2026-08-31 09:04:26,427.427 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:04:26,467.467 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:04:26,546.546 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:04:26,548.548 INFO    ] No camera update needed
[2026-08-31 09:04:26,550.550 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:04:26,553.553 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:04:26,558.558 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:04:26,563.563 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:04:28,602.602 INFO    ] ================================================
[2026-08-31 09:04:28,618.618 INFO    ] Launching Daemon at Mon Aug 31 09:04:28 IST 2026
[2026-08-31 09:04:28,628.628 INFO    ] ================================================
[2026-08-31 09:04:29,193.193 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:04:29
[2026-08-31 09:04:29,775.775 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:04:30,041.041 INFO    ] Initializing speech engine...
[2026-08-31 09:04:30,051.051 INFO    ] 2026-08-31 09:04:30
[2026-08-31 09:04:30,308.308 INFO    ] 2026-08-31 09:04:30
[2026-08-31 09:04:30,365.365 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:04:30,609.609 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:04:30,617.617 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:04:30,824.824 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:04:30,851.851 INFO    ] time= 31/08/2026 09:04:30
[2026-08-31 09:04:30,866.866 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:04:30,875.875 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:04:30,983.983 INFO    ] No existing commands found in stream
[2026-08-31 09:04:36,008.008 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:04:36,011.011 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-08-31 09:04:39,165.165 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 09:04:39,168.168 INFO    ] Checking for system updates...
[2026-08-31 09:04:39,203.203 INFO    ] 200
[2026-08-31 09:04:39,205.205 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:04:39,265.265 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:04:39,268.268 INFO    ] No update needed
[2026-08-31 09:04:39,270.270 INFO    ] Checking for camera pi updates...
[2026-08-31 09:04:39,304.304 INFO    ] 200
[2026-08-31 09:04:39,306.306 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:04:39,352.352 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:04:39,551.551 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:04:39,554.554 INFO    ] No camera update needed
[2026-08-31 09:04:39,556.556 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:04:39,558.558 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:04:39,564.564 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:04:39,569.569 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:04:41,610.610 INFO    ] ================================================
[2026-08-31 09:04:41,625.625 INFO    ] Launching Daemon at Mon Aug 31 09:04:41 IST 2026
[2026-08-31 09:04:41,635.635 INFO    ] ================================================
[2026-08-31 09:04:42,199.199 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:04:42
[2026-08-31 09:04:42,787.787 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:04:43,053.053 INFO    ] Initializing speech engine...
[2026-08-31 09:04:43,063.063 INFO    ] 2026-08-31 09:04:43
[2026-08-31 09:04:43,309.309 INFO    ] 2026-08-31 09:04:43
[2026-08-31 09:04:43,373.373 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:04:43,600.600 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:04:43,606.606 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:04:43,734.734 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:04:43,771.771 INFO    ] time= 31/08/2026 09:04:43
[2026-08-31 09:04:43,830.830 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:04:43,868.868 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:04:43,991.991 INFO    ] No existing commands found in stream
[2026-08-31 09:04:49,021.021 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:04:49,024.024 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-08-31 09:04:52,327.327 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 09:04:52,330.330 INFO    ] Checking for system updates...
[2026-08-31 09:04:52,367.367 INFO    ] 200
[2026-08-31 09:04:52,370.370 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:04:52,421.421 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:04:52,424.424 INFO    ] No update needed
[2026-08-31 09:04:52,427.427 INFO    ] Checking for camera pi updates...
[2026-08-31 09:04:52,460.460 INFO    ] 200
[2026-08-31 09:04:52,462.462 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:04:52,503.503 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:04:52,584.584 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:04:52,586.586 INFO    ] No camera update needed
[2026-08-31 09:04:52,589.589 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:04:52,591.591 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:04:52,596.596 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:04:52,602.602 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:04:54,641.641 INFO    ] ================================================
[2026-08-31 09:04:54,656.656 INFO    ] Launching Daemon at Mon Aug 31 09:04:54 IST 2026
[2026-08-31 09:04:54,668.668 INFO    ] ================================================
[2026-08-31 09:04:55,251.251 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:04:55
[2026-08-31 09:04:55,834.834 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:04:56,103.103 INFO    ] Initializing speech engine...
[2026-08-31 09:04:56,112.112 INFO    ] 2026-08-31 09:04:56
[2026-08-31 09:04:56,363.363 INFO    ] 2026-08-31 09:04:56
[2026-08-31 09:04:56,421.421 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:04:56,667.667 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:04:56,674.674 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:04:56,809.809 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:04:56,812.812 INFO    ] time= 31/08/2026 09:04:56
[2026-08-31 09:04:56,814.814 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:04:56,827.827 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:04:56,937.937 INFO    ] No existing commands found in stream
[2026-08-31 09:05:01,959.959 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:05:01,962.962 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-08-31 09:05:03,296.296 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 09:05:03,299.299 INFO    ] Checking for system updates...
[2026-08-31 09:05:03,334.334 INFO    ] 200
[2026-08-31 09:05:03,336.336 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:05:03,390.390 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:05:03,392.392 INFO    ] No update needed
[2026-08-31 09:05:03,395.395 INFO    ] Checking for camera pi updates...
[2026-08-31 09:05:03,428.428 INFO    ] 200
[2026-08-31 09:05:03,431.431 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:05:03,476.476 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:05:03,555.555 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:05:03,558.558 INFO    ] No camera update needed
[2026-08-31 09:05:03,560.560 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:05:03,563.563 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:05:03,568.568 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:05:03,573.573 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:05:05,614.614 INFO    ] ================================================
[2026-08-31 09:05:05,630.630 INFO    ] Launching Daemon at Mon Aug 31 09:05:05 IST 2026
[2026-08-31 09:05:05,641.641 INFO    ] ================================================
[2026-08-31 09:05:06,227.227 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:05:06
[2026-08-31 09:05:06,822.822 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:05:07,070.070 INFO    ] Initializing speech engine...
[2026-08-31 09:05:07,079.079 INFO    ] 2026-08-31 09:05:07
[2026-08-31 09:05:07,373.373 INFO    ] 2026-08-31 09:05:07
[2026-08-31 09:05:07,411.411 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:05:07,606.606 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:05:07,613.613 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:05:07,766.766 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:05:07,772.772 INFO    ] time= 31/08/2026 09:05:07
[2026-08-31 09:05:07,823.823 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:05:07,841.841 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:05:07,965.965 INFO    ] No existing commands found in stream
[2026-08-31 09:05:12,977.977 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:05:12,980.980 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-08-31 09:05:14,204.204 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 09:05:14,207.207 INFO    ] Checking for system updates...
[2026-08-31 09:05:14,247.247 INFO    ] 200
[2026-08-31 09:05:14,249.249 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:05:14,308.308 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:05:14,310.310 INFO    ] No update needed
[2026-08-31 09:05:14,312.312 INFO    ] Checking for camera pi updates...
[2026-08-31 09:05:14,345.345 INFO    ] 200
[2026-08-31 09:05:14,348.348 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:05:14,388.388 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:05:14,487.487 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:05:14,490.490 INFO    ] No camera update needed
[2026-08-31 09:05:14,493.493 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:05:14,495.495 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:05:14,503.503 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:05:14,511.511 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:05:16,552.552 INFO    ] ================================================
[2026-08-31 09:05:16,568.568 INFO    ] Launching Daemon at Mon Aug 31 09:05:16 IST 2026
[2026-08-31 09:05:16,579.579 INFO    ] ================================================
[2026-08-31 09:05:17,147.147 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:05:17
[2026-08-31 09:05:17,745.745 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:05:18,003.003 INFO    ] Initializing speech engine...
[2026-08-31 09:05:18,009.009 INFO    ] 2026-08-31 09:05:18
[2026-08-31 09:05:18,305.305 INFO    ] 2026-08-31 09:05:18
[2026-08-31 09:05:18,330.330 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:05:18,522.522 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:05:18,533.533 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:05:18,741.741 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:05:18,788.788 INFO    ] time= 31/08/2026 09:05:18
[2026-08-31 09:05:18,842.842 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:05:18,875.875 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:05:19,007.007 INFO    ] No existing commands found in stream
[2026-08-31 09:05:24,029.029 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:05:24,032.032 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-08-31 09:05:24,654.654 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 09:05:24,657.657 INFO    ] Checking for system updates...
[2026-08-31 09:05:24,692.692 INFO    ] 200
[2026-08-31 09:05:24,695.695 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:05:24,752.752 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:05:24,755.755 INFO    ] No update needed
[2026-08-31 09:05:24,758.758 INFO    ] Checking for camera pi updates...
[2026-08-31 09:05:24,791.791 INFO    ] 200
[2026-08-31 09:05:24,794.794 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:05:24,835.835 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:05:24,940.940 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:05:24,942.942 INFO    ] No camera update needed
[2026-08-31 09:05:24,944.944 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:05:24,946.946 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:05:24,952.952 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:05:24,957.957 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:05:27,998.998 INFO    ] ================================================
[2026-08-31 09:05:27,014.014 INFO    ] Launching Daemon at Mon Aug 31 09:05:27 IST 2026
[2026-08-31 09:05:27,025.025 INFO    ] ================================================
[2026-08-31 09:05:27,595.595 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:05:27
[2026-08-31 09:05:28,182.182 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:05:28,450.450 INFO    ] Initializing speech engine...
[2026-08-31 09:05:28,459.459 INFO    ] 2026-08-31 09:05:28
[2026-08-31 09:05:28,710.710 INFO    ] 2026-08-31 09:05:28
[2026-08-31 09:05:28,770.770 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:05:29,015.015 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:05:29,023.023 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:05:29,210.210 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:05:29,257.257 INFO    ] time= 31/08/2026 09:05:29
[2026-08-31 09:05:29,263.263 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:05:29,281.281 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:05:29,409.409 INFO    ] No existing commands found in stream
[2026-08-31 09:05:34,422.422 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:05:34,425.425 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-08-31 09:05:37,937.937 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 09:05:37,940.940 INFO    ] Checking for system updates...
[2026-08-31 09:05:37,979.979 INFO    ] 200
[2026-08-31 09:05:37,981.981 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:05:38,032.032 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:05:38,035.035 INFO    ] No update needed
[2026-08-31 09:05:38,037.037 INFO    ] Checking for camera pi updates...
[2026-08-31 09:05:38,075.075 INFO    ] 200
[2026-08-31 09:05:38,078.078 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:05:38,122.122 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:05:38,210.210 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:05:38,213.213 INFO    ] No camera update needed
[2026-08-31 09:05:38,215.215 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:05:38,217.217 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:05:38,222.222 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:05:38,227.227 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:05:40,269.269 INFO    ] ================================================
[2026-08-31 09:05:40,284.284 INFO    ] Launching Daemon at Mon Aug 31 09:05:40 IST 2026
[2026-08-31 09:05:40,296.296 INFO    ] ================================================
[2026-08-31 09:05:40,863.863 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:05:40
[2026-08-31 09:05:41,445.445 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:05:41,706.706 INFO    ] Initializing speech engine...
[2026-08-31 09:05:41,724.724 INFO    ] 2026-08-31 09:05:41
[2026-08-31 09:05:41,975.975 INFO    ] 2026-08-31 09:05:41
[2026-08-31 09:05:42,014.014 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:05:42,210.210 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:05:42,224.224 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:05:42,378.378 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:05:42,390.390 INFO    ] time= 31/08/2026 09:05:42
[2026-08-31 09:05:42,399.399 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:05:42,406.406 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:05:42,482.482 INFO    ] No existing commands found in stream
[2026-08-31 09:05:47,518.518 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:05:47,521.521 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-08-31 09:05:49,982.982 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 09:05:49,985.985 INFO    ] Checking for system updates...
[2026-08-31 09:05:50,020.020 INFO    ] 200
[2026-08-31 09:05:50,022.022 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:05:50,081.081 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:05:50,083.083 INFO    ] No update needed
[2026-08-31 09:05:50,086.086 INFO    ] Checking for camera pi updates...
[2026-08-31 09:05:50,122.122 INFO    ] 200
[2026-08-31 09:05:50,125.125 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:05:50,165.165 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:05:50,241.241 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:05:50,243.243 INFO    ] No camera update needed
[2026-08-31 09:05:50,246.246 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:05:50,248.248 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:05:50,253.253 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:05:50,258.258 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:05:52,300.300 INFO    ] ================================================
[2026-08-31 09:05:52,315.315 INFO    ] Launching Daemon at Mon Aug 31 09:05:52 IST 2026
[2026-08-31 09:05:52,326.326 INFO    ] ================================================
[2026-08-31 09:05:52,988.988 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:05:52
[2026-08-31 09:05:53,585.585 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:05:53,844.844 INFO    ] Initializing speech engine...
[2026-08-31 09:05:53,852.852 INFO    ] 2026-08-31 09:05:53
[2026-08-31 09:05:54,146.146 INFO    ] 2026-08-31 09:05:54
[2026-08-31 09:05:54,181.181 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:05:54,377.377 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:05:54,391.391 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:05:54,551.551 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:05:54,559.559 INFO    ] time= 31/08/2026 09:05:54
[2026-08-31 09:05:54,563.563 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:05:54,570.570 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:05:54,644.644 INFO    ] No existing commands found in stream
[2026-08-31 09:05:59,680.680 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:05:59,683.683 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-08-31 09:06:04,370.370 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 09:06:04,373.373 INFO    ] Checking for system updates...
[2026-08-31 09:06:04,413.413 INFO    ] 200
[2026-08-31 09:06:04,415.415 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:06:04,468.468 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:06:04,471.471 INFO    ] No update needed
[2026-08-31 09:06:04,474.474 INFO    ] Checking for camera pi updates...
[2026-08-31 09:06:04,511.511 INFO    ] 200
[2026-08-31 09:06:04,514.514 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:06:04,555.555 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:06:04,646.646 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:06:04,649.649 INFO    ] No camera update needed
[2026-08-31 09:06:04,651.651 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:06:04,654.654 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:06:04,659.659 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:06:04,664.664 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:06:06,705.705 INFO    ] ================================================
[2026-08-31 09:06:06,721.721 INFO    ] Launching Daemon at Mon Aug 31 09:06:06 IST 2026
[2026-08-31 09:06:06,731.731 INFO    ] ================================================
[2026-08-31 09:06:07,389.389 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:06:07
[2026-08-31 09:06:08,066.066 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:06:08,375.375 INFO    ] Initializing speech engine...
[2026-08-31 09:06:08,388.388 INFO    ] 2026-08-31 09:06:08
[2026-08-31 09:06:08,702.702 INFO    ] 2026-08-31 09:06:08
[2026-08-31 09:06:08,791.791 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:06:09,012.012 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:06:09,017.017 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:06:09,219.219 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:06:09,227.227 INFO    ] time= 31/08/2026 09:06:09
[2026-08-31 09:06:09,245.245 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:06:09,275.275 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:06:09,401.401 INFO    ] No existing commands found in stream
[2026-08-31 09:06:14,427.427 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:06:14,430.430 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-08-31 09:06:16,579.579 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 09:06:16,582.582 INFO    ] Checking for system updates...
[2026-08-31 09:06:16,618.618 INFO    ] 200
[2026-08-31 09:06:16,621.621 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:06:16,683.683 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:06:16,685.685 INFO    ] No update needed
[2026-08-31 09:06:16,688.688 INFO    ] Checking for camera pi updates...
[2026-08-31 09:06:16,727.727 INFO    ] 200
[2026-08-31 09:06:16,730.730 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:06:16,773.773 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:06:16,863.863 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:06:16,866.866 INFO    ] No camera update needed
[2026-08-31 09:06:16,869.869 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:06:16,872.872 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:06:16,878.878 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:06:16,884.884 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:06:18,927.927 INFO    ] ================================================
[2026-08-31 09:06:18,943.943 INFO    ] Launching Daemon at Mon Aug 31 09:06:18 IST 2026
[2026-08-31 09:06:18,954.954 INFO    ] ================================================
[2026-08-31 09:06:19,537.537 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:06:19
[2026-08-31 09:06:20,136.136 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:06:20,414.414 INFO    ] Initializing speech engine...
[2026-08-31 09:06:20,421.421 INFO    ] 2026-08-31 09:06:20
[2026-08-31 09:06:20,682.682 INFO    ] 2026-08-31 09:06:20
[2026-08-31 09:06:20,735.735 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:06:20,965.965 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:06:20,969.969 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:06:21,102.102 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:06:21,176.176 INFO    ] time= 31/08/2026 09:06:21
[2026-08-31 09:06:21,228.228 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:06:21,235.235 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:06:21,369.369 INFO    ] No existing commands found in stream
[2026-08-31 09:06:26,389.389 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:06:26,392.392 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-08-31 09:06:30,187.187 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 09:06:30,190.190 INFO    ] Checking for system updates...
[2026-08-31 09:06:30,226.226 INFO    ] 200
[2026-08-31 09:06:30,228.228 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:06:30,288.288 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:06:30,291.291 INFO    ] No update needed
[2026-08-31 09:06:30,294.294 INFO    ] Checking for camera pi updates...
[2026-08-31 09:06:30,327.327 INFO    ] 200
[2026-08-31 09:06:30,330.330 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:06:30,370.370 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:06:30,452.452 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:06:30,455.455 INFO    ] No camera update needed
[2026-08-31 09:06:30,457.457 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:06:30,460.460 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:06:30,465.465 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:06:30,470.470 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:06:32,514.514 INFO    ] ================================================
[2026-08-31 09:06:32,531.531 INFO    ] Launching Daemon at Mon Aug 31 09:06:32 IST 2026
[2026-08-31 09:06:32,550.550 INFO    ] ================================================
[2026-08-31 09:06:33,219.219 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:06:33
[2026-08-31 09:06:33,829.829 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:06:34,080.080 INFO    ] Initializing speech engine...
[2026-08-31 09:06:34,103.103 INFO    ] 2026-08-31 09:06:34
[2026-08-31 09:06:34,358.358 INFO    ] 2026-08-31 09:06:34
[2026-08-31 09:06:34,394.394 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:06:34,651.651 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:06:34,660.660 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:06:34,840.840 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:06:34,885.885 INFO    ] time= 31/08/2026 09:06:34
[2026-08-31 09:06:34,923.923 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:06:34,929.929 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:06:35,065.065 INFO    ] No existing commands found in stream
[2026-08-31 09:06:40,083.083 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:06:40,086.086 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-08-31 09:06:44,045.045 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 09:06:44,047.047 INFO    ] Checking for system updates...
[2026-08-31 09:06:44,083.083 INFO    ] 200
[2026-08-31 09:06:44,085.085 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:06:44,144.144 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:06:44,146.146 INFO    ] No update needed
[2026-08-31 09:06:44,149.149 INFO    ] Checking for camera pi updates...
[2026-08-31 09:06:44,182.182 INFO    ] 200
[2026-08-31 09:06:44,184.184 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:06:44,225.225 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:06:44,391.391 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:06:44,393.393 INFO    ] No camera update needed
[2026-08-31 09:06:44,396.396 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:06:44,398.398 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:06:44,403.403 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:06:44,408.408 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:06:46,449.449 INFO    ] ================================================
[2026-08-31 09:06:46,465.465 INFO    ] Launching Daemon at Mon Aug 31 09:06:46 IST 2026
[2026-08-31 09:06:46,475.475 INFO    ] ================================================
[2026-08-31 09:06:47,057.057 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:06:47
[2026-08-31 09:06:47,640.640 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:06:47,908.908 INFO    ] Initializing speech engine...
[2026-08-31 09:06:47,917.917 INFO    ] 2026-08-31 09:06:47
[2026-08-31 09:06:48,163.163 INFO    ] 2026-08-31 09:06:48
[2026-08-31 09:06:48,197.197 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:06:48,368.368 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:06:48,380.380 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:06:48,524.524 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:06:48,529.529 INFO    ] time= 31/08/2026 09:06:48
[2026-08-31 09:06:48,535.535 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:06:48,581.581 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:06:48,723.723 INFO    ] No existing commands found in stream
[2026-08-31 09:06:53,738.738 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:06:53,740.740 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-08-31 09:06:56,024.024 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 09:06:56,026.026 INFO    ] Checking for system updates...
[2026-08-31 09:06:56,066.066 INFO    ] 200
[2026-08-31 09:06:56,069.069 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:06:56,122.122 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:06:56,124.124 INFO    ] No update needed
[2026-08-31 09:06:56,127.127 INFO    ] Checking for camera pi updates...
[2026-08-31 09:06:56,162.162 INFO    ] 200
[2026-08-31 09:06:56,164.164 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:06:56,211.211 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:06:56,293.293 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:06:56,296.296 INFO    ] No camera update needed
[2026-08-31 09:06:56,298.298 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:06:56,301.301 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:06:56,306.306 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:06:56,311.311 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:06:58,353.353 INFO    ] ================================================
[2026-08-31 09:06:58,369.369 INFO    ] Launching Daemon at Mon Aug 31 09:06:58 IST 2026
[2026-08-31 09:06:58,380.380 INFO    ] ================================================
[2026-08-31 09:06:59,001.001 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:06:58
[2026-08-31 09:06:59,675.675 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:06:59,980.980 INFO    ] Initializing speech engine...
[2026-08-31 09:06:59,991.991 INFO    ] 2026-08-31 09:06:59
[2026-08-31 09:07:00,305.305 INFO    ] 2026-08-31 09:07:00
[2026-08-31 09:07:00,387.387 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:07:00,565.565 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:07:00,571.571 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:07:00,755.755 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:07:00,806.806 INFO    ] time= 31/08/2026 09:07:00
[2026-08-31 09:07:00,814.814 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:07:00,834.834 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:07:00,953.953 INFO    ] No existing commands found in stream
[2026-08-31 09:07:05,975.975 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:07:05,978.978 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-08-31 09:07:10,149.149 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 09:07:10,152.152 INFO    ] Checking for system updates...
[2026-08-31 09:07:10,189.189 INFO    ] 200
[2026-08-31 09:07:10,192.192 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:07:10,245.245 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:07:10,248.248 INFO    ] No update needed
[2026-08-31 09:07:10,251.251 INFO    ] Checking for camera pi updates...
[2026-08-31 09:07:10,286.286 INFO    ] 200
[2026-08-31 09:07:10,289.289 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:07:10,331.331 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:07:10,444.444 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:07:10,447.447 INFO    ] No camera update needed
[2026-08-31 09:07:10,449.449 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:07:10,452.452 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:07:10,457.457 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:07:10,462.462 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:07:12,502.502 INFO    ] ================================================
[2026-08-31 09:07:12,518.518 INFO    ] Launching Daemon at Mon Aug 31 09:07:12 IST 2026
[2026-08-31 09:07:12,529.529 INFO    ] ================================================
[2026-08-31 09:07:13,192.192 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:07:13
[2026-08-31 09:07:13,872.872 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:07:14,171.171 INFO    ] Initializing speech engine...
[2026-08-31 09:07:14,185.185 INFO    ] 2026-08-31 09:07:14
[2026-08-31 09:07:14,467.467 INFO    ] 2026-08-31 09:07:14
[2026-08-31 09:07:14,525.525 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:07:14,757.757 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:07:14,762.762 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:07:14,974.974 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:07:15,026.026 INFO    ] time= 31/08/2026 09:07:14
[2026-08-31 09:07:15,045.045 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:07:15,055.055 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:07:15,213.213 INFO    ] No existing commands found in stream
[2026-08-31 09:07:20,249.249 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:07:20,252.252 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-08-31 09:07:24,175.175 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 09:07:24,178.178 INFO    ] Checking for system updates...
[2026-08-31 09:07:24,221.221 INFO    ] 200
[2026-08-31 09:07:24,224.224 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:07:24,276.276 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:07:24,279.279 INFO    ] No update needed
[2026-08-31 09:07:24,281.281 INFO    ] Checking for camera pi updates...
[2026-08-31 09:07:24,315.315 INFO    ] 200
[2026-08-31 09:07:24,317.317 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:07:24,365.365 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:07:24,469.469 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:07:24,471.471 INFO    ] No camera update needed
[2026-08-31 09:07:24,474.474 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:07:24,476.476 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:07:24,481.481 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:07:24,486.486 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:07:26,528.528 INFO    ] ================================================
[2026-08-31 09:07:26,544.544 INFO    ] Launching Daemon at Mon Aug 31 09:07:26 IST 2026
[2026-08-31 09:07:26,555.555 INFO    ] ================================================
[2026-08-31 09:07:27,134.134 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:07:27
[2026-08-31 09:07:27,730.730 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:07:28,005.005 INFO    ] Initializing speech engine...
[2026-08-31 09:07:28,012.012 INFO    ] 2026-08-31 09:07:28
[2026-08-31 09:07:28,272.272 INFO    ] 2026-08-31 09:07:28
[2026-08-31 09:07:28,326.326 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:07:28,572.572 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:07:28,579.579 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:07:28,765.765 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:07:28,815.815 INFO    ] time= 31/08/2026 09:07:28
[2026-08-31 09:07:28,821.821 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:07:28,839.839 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:07:28,969.969 INFO    ] No existing commands found in stream
[2026-08-31 09:07:33,981.981 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:07:33,984.984 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-08-31 09:07:35,407.407 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 09:07:35,410.410 INFO    ] Checking for system updates...
[2026-08-31 09:07:35,445.445 INFO    ] 200
[2026-08-31 09:07:35,448.448 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:07:35,500.500 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:07:35,503.503 INFO    ] No update needed
[2026-08-31 09:07:35,505.505 INFO    ] Checking for camera pi updates...
[2026-08-31 09:07:35,544.544 INFO    ] 200
[2026-08-31 09:07:35,547.547 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:07:35,593.593 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:07:35,713.713 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:07:35,715.715 INFO    ] No camera update needed
[2026-08-31 09:07:35,718.718 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:07:35,720.720 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:07:35,726.726 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:07:35,731.731 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:07:37,776.776 INFO    ] ================================================
[2026-08-31 09:07:37,791.791 INFO    ] Launching Daemon at Mon Aug 31 09:07:37 IST 2026
[2026-08-31 09:07:37,802.802 INFO    ] ================================================
[2026-08-31 09:07:38,472.472 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:07:38
[2026-08-31 09:07:39,152.152 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:07:39,419.419 INFO    ] Initializing speech engine...
[2026-08-31 09:07:39,431.431 INFO    ] 2026-08-31 09:07:39
[2026-08-31 09:07:39,677.677 INFO    ] 2026-08-31 09:07:39
[2026-08-31 09:07:39,741.741 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:07:39,904.904 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:07:39,952.952 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:07:40,101.101 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:07:40,143.143 INFO    ] time= 31/08/2026 09:07:40
[2026-08-31 09:07:40,202.202 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:07:40,235.235 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:07:40,313.313 INFO    ] No existing commands found in stream
[2026-08-31 09:07:45,349.349 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:07:45,352.352 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-08-31 09:07:49,139.139 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 09:07:49,141.141 INFO    ] Checking for system updates...
[2026-08-31 09:07:49,178.178 INFO    ] 200
[2026-08-31 09:07:49,185.185 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:07:49,238.238 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:07:49,240.240 INFO    ] No update needed
[2026-08-31 09:07:49,243.243 INFO    ] Checking for camera pi updates...
[2026-08-31 09:07:49,277.277 INFO    ] 200
[2026-08-31 09:07:49,280.280 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:07:49,321.321 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:07:49,402.402 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:07:49,405.405 INFO    ] No camera update needed
[2026-08-31 09:07:49,407.407 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:07:49,410.410 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:07:49,416.416 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:07:49,422.422 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:07:51,464.464 INFO    ] ================================================
[2026-08-31 09:07:51,480.480 INFO    ] Launching Daemon at Mon Aug 31 09:07:51 IST 2026
[2026-08-31 09:07:51,491.491 INFO    ] ================================================
[2026-08-31 09:07:52,066.066 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:07:52
[2026-08-31 09:07:52,656.656 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:07:52,902.902 INFO    ] Initializing speech engine...
[2026-08-31 09:07:52,911.911 INFO    ] 2026-08-31 09:07:52
[2026-08-31 09:07:53,185.185 INFO    ] 2026-08-31 09:07:53
[2026-08-31 09:07:53,222.222 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:07:53,479.479 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:07:53,489.489 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:07:53,626.626 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:07:53,687.687 INFO    ] time= 31/08/2026 09:07:53
[2026-08-31 09:07:53,746.746 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:07:53,762.762 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:07:53,913.913 INFO    ] No existing commands found in stream
[2026-08-31 09:07:58,932.932 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:07:58,934.934 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-08-31 09:08:00,019.019 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 09:08:00,022.022 INFO    ] Checking for system updates...
[2026-08-31 09:08:00,059.059 INFO    ] 200
[2026-08-31 09:08:00,062.062 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:08:00,115.115 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:08:00,118.118 INFO    ] No update needed
[2026-08-31 09:08:00,121.121 INFO    ] Checking for camera pi updates...
[2026-08-31 09:08:00,156.156 INFO    ] 200
[2026-08-31 09:08:00,158.158 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:08:00,205.205 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:08:00,304.304 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:08:00,307.307 INFO    ] No camera update needed
[2026-08-31 09:08:00,310.310 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:08:00,313.313 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:08:00,319.319 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:08:00,325.325 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:08:02,368.368 INFO    ] ================================================
[2026-08-31 09:08:02,389.389 INFO    ] Launching Daemon at Mon Aug 31 09:08:02 IST 2026
[2026-08-31 09:08:02,404.404 INFO    ] ================================================
[2026-08-31 09:08:03,037.037 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:08:03
[2026-08-31 09:08:03,634.634 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:08:03,901.901 INFO    ] Initializing speech engine...
[2026-08-31 09:08:03,910.910 INFO    ] 2026-08-31 09:08:03
[2026-08-31 09:08:04,157.157 INFO    ] 2026-08-31 09:08:04
[2026-08-31 09:08:04,191.191 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:08:04,442.442 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:08:04,451.451 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:08:04,585.585 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:08:04,650.650 INFO    ] time= 31/08/2026 09:08:04
[2026-08-31 09:08:04,705.705 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:08:04,718.718 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:08:04,862.862 INFO    ] No existing commands found in stream
[2026-08-31 09:08:09,875.875 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:08:09,878.878 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-08-31 09:08:10,938.938 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 09:08:10,941.941 INFO    ] Checking for system updates...
[2026-08-31 09:08:10,978.978 INFO    ] 200
[2026-08-31 09:08:10,980.980 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:08:11,042.042 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:08:11,045.045 INFO    ] No update needed
[2026-08-31 09:08:11,048.048 INFO    ] Checking for camera pi updates...
[2026-08-31 09:08:11,086.086 INFO    ] 200
[2026-08-31 09:08:11,089.089 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:08:11,134.134 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:08:11,225.225 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:08:11,228.228 INFO    ] No camera update needed
[2026-08-31 09:08:11,231.231 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:08:11,234.234 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:08:11,240.240 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:08:11,246.246 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:08:13,288.288 INFO    ] ================================================
[2026-08-31 09:08:13,303.303 INFO    ] Launching Daemon at Mon Aug 31 09:08:13 IST 2026
[2026-08-31 09:08:13,314.314 INFO    ] ================================================
[2026-08-31 09:08:13,894.894 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:08:13
[2026-08-31 09:08:14,492.492 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:08:14,769.769 INFO    ] Initializing speech engine...
[2026-08-31 09:08:14,775.775 INFO    ] 2026-08-31 09:08:14
[2026-08-31 09:08:15,035.035 INFO    ] 2026-08-31 09:08:15
[2026-08-31 09:08:15,065.065 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:08:15,310.310 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:08:15,319.319 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:08:15,453.453 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:08:15,517.517 INFO    ] time= 31/08/2026 09:08:15
[2026-08-31 09:08:15,577.577 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:08:15,585.585 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:08:15,716.716 INFO    ] No existing commands found in stream
[2026-08-31 09:08:20,740.740 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:08:20,743.743 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-08-31 09:08:21,823.823 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 09:08:21,826.826 INFO    ] Checking for system updates...
[2026-08-31 09:08:21,865.865 INFO    ] 200
[2026-08-31 09:08:21,868.868 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:08:21,920.920 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:08:21,922.922 INFO    ] No update needed
[2026-08-31 09:08:21,925.925 INFO    ] Checking for camera pi updates...
[2026-08-31 09:08:21,958.958 INFO    ] 200
[2026-08-31 09:08:21,960.960 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:08:22,001.001 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:08:22,107.107 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:08:22,110.110 INFO    ] No camera update needed
[2026-08-31 09:08:22,112.112 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:08:22,115.115 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:08:22,120.120 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:08:22,125.125 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:08:24,166.166 INFO    ] ================================================
[2026-08-31 09:08:24,182.182 INFO    ] Launching Daemon at Mon Aug 31 09:08:24 IST 2026
[2026-08-31 09:08:24,193.193 INFO    ] ================================================
[2026-08-31 09:08:24,772.772 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:08:24
[2026-08-31 09:08:25,368.368 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:08:25,639.639 INFO    ] Initializing speech engine...
[2026-08-31 09:08:25,648.648 INFO    ] 2026-08-31 09:08:25
[2026-08-31 09:08:25,909.909 INFO    ] 2026-08-31 09:08:25
[2026-08-31 09:08:25,962.962 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:08:26,209.209 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:08:26,216.216 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:08:26,410.410 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:08:26,449.449 INFO    ] time= 31/08/2026 09:08:26
[2026-08-31 09:08:26,455.455 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:08:26,473.473 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:08:26,602.602 INFO    ] No existing commands found in stream
[2026-08-31 09:08:31,617.617 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:08:31,620.620 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-08-31 09:08:36,052.052 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 09:08:36,055.055 INFO    ] Checking for system updates...
[2026-08-31 09:08:36,091.091 INFO    ] 200
[2026-08-31 09:08:36,093.093 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:08:36,146.146 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:08:36,149.149 INFO    ] No update needed
[2026-08-31 09:08:36,151.151 INFO    ] Checking for camera pi updates...
[2026-08-31 09:08:36,184.184 INFO    ] 200
[2026-08-31 09:08:36,187.187 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:08:36,232.232 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:08:36,281.281 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:08:36,283.283 INFO    ] No camera update needed
[2026-08-31 09:08:36,285.285 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:08:36,288.288 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:08:36,293.293 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:08:36,298.298 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:08:38,345.345 INFO    ] ================================================
[2026-08-31 09:08:38,360.360 INFO    ] Launching Daemon at Mon Aug 31 09:08:38 IST 2026
[2026-08-31 09:08:38,371.371 INFO    ] ================================================
[2026-08-31 09:08:38,940.940 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:08:38
[2026-08-31 09:08:39,524.524 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:08:39,794.794 INFO    ] Initializing speech engine...
[2026-08-31 09:08:39,804.804 INFO    ] 2026-08-31 09:08:39
[2026-08-31 09:08:40,049.049 INFO    ] 2026-08-31 09:08:40
[2026-08-31 09:08:40,114.114 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:08:40,334.334 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:08:40,343.343 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:08:40,550.550 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:08:40,600.600 INFO    ] time= 31/08/2026 09:08:40
[2026-08-31 09:08:40,605.605 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:08:40,623.623 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:08:40,752.752 INFO    ] No existing commands found in stream
[2026-08-31 09:08:45,765.765 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:08:45,768.768 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-08-31 09:08:50,005.005 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 09:08:50,008.008 INFO    ] Checking for system updates...
[2026-08-31 09:08:50,044.044 INFO    ] 200
[2026-08-31 09:08:50,046.046 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:08:50,106.106 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:08:50,109.109 INFO    ] No update needed
[2026-08-31 09:08:50,111.111 INFO    ] Checking for camera pi updates...
[2026-08-31 09:08:50,145.145 INFO    ] 200
[2026-08-31 09:08:50,148.148 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:08:50,188.188 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:08:50,372.372 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:08:50,374.374 INFO    ] No camera update needed
[2026-08-31 09:08:50,377.377 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:08:50,379.379 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:08:50,385.385 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:08:50,390.390 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:08:52,434.434 INFO    ] ================================================
[2026-08-31 09:08:52,449.449 INFO    ] Launching Daemon at Mon Aug 31 09:08:52 IST 2026
[2026-08-31 09:08:52,460.460 INFO    ] ================================================
[2026-08-31 09:08:53,099.099 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:08:53
[2026-08-31 09:08:53,685.685 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:08:53,937.937 INFO    ] Initializing speech engine...
[2026-08-31 09:08:53,952.952 INFO    ] 2026-08-31 09:08:53
[2026-08-31 09:08:54,220.220 INFO    ] 2026-08-31 09:08:54
[2026-08-31 09:08:54,255.255 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:08:54,513.513 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:08:54,522.522 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:08:54,657.657 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:08:54,709.709 INFO    ] time= 31/08/2026 09:08:54
[2026-08-31 09:08:54,753.753 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:08:54,793.793 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:08:54,919.919 INFO    ] No existing commands found in stream
[2026-08-31 09:08:59,949.949 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:08:59,952.952 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-08-31 09:09:03,064.064 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 09:09:03,067.067 INFO    ] Checking for system updates...
[2026-08-31 09:09:03,108.108 INFO    ] 200
[2026-08-31 09:09:03,111.111 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:09:03,174.174 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:09:03,177.177 INFO    ] No update needed
[2026-08-31 09:09:03,180.180 INFO    ] Checking for camera pi updates...
[2026-08-31 09:09:03,214.214 INFO    ] 200
[2026-08-31 09:09:03,216.216 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:09:03,258.258 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:09:03,340.340 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:09:03,343.343 INFO    ] No camera update needed
[2026-08-31 09:09:03,346.346 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:09:03,348.348 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:09:03,355.355 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:09:03,360.360 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:09:05,401.401 INFO    ] ================================================
[2026-08-31 09:09:05,416.416 INFO    ] Launching Daemon at Mon Aug 31 09:09:05 IST 2026
[2026-08-31 09:09:05,427.427 INFO    ] ================================================
[2026-08-31 09:09:06,007.007 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:09:06
[2026-08-31 09:09:06,626.626 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:09:06,891.891 INFO    ] Initializing speech engine...
[2026-08-31 09:09:06,915.915 INFO    ] 2026-08-31 09:09:06
[2026-08-31 09:09:07,187.187 INFO    ] 2026-08-31 09:09:07
[2026-08-31 09:09:07,226.226 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:09:07,439.439 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:09:07,442.442 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:09:07,577.577 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:09:07,587.587 INFO    ] time= 31/08/2026 09:09:07
[2026-08-31 09:09:07,631.631 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:09:07,652.652 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:09:07,767.767 INFO    ] No existing commands found in stream
[2026-08-31 09:09:12,789.789 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:09:12,792.792 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-08-31 09:09:14,297.297 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 09:09:14,300.300 INFO    ] Checking for system updates...
[2026-08-31 09:09:14,339.339 INFO    ] 200
[2026-08-31 09:09:14,342.342 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:09:14,400.400 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:09:14,402.402 INFO    ] No update needed
[2026-08-31 09:09:14,405.405 INFO    ] Checking for camera pi updates...
[2026-08-31 09:09:14,439.439 INFO    ] 200
[2026-08-31 09:09:14,442.442 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:09:14,483.483 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:09:14,570.570 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:09:14,572.572 INFO    ] No camera update needed
[2026-08-31 09:09:14,575.575 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:09:14,578.578 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:09:14,584.584 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:09:14,589.589 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:09:16,629.629 INFO    ] ================================================
[2026-08-31 09:09:16,644.644 INFO    ] Launching Daemon at Mon Aug 31 09:09:16 IST 2026
[2026-08-31 09:09:16,654.654 INFO    ] ================================================
[2026-08-31 09:09:17,222.222 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:09:17
[2026-08-31 09:09:17,803.803 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:09:18,073.073 INFO    ] Initializing speech engine...
[2026-08-31 09:09:18,082.082 INFO    ] 2026-08-31 09:09:18
[2026-08-31 09:09:18,333.333 INFO    ] 2026-08-31 09:09:18
[2026-08-31 09:09:18,367.367 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:09:18,567.567 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:09:18,625.625 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:09:18,871.871 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:09:18,895.895 INFO    ] time= 31/08/2026 09:09:18
[2026-08-31 09:09:18,912.912 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:09:18,921.921 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:09:19,049.049 INFO    ] No existing commands found in stream
[2026-08-31 09:09:24,063.063 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:09:24,066.066 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-08-31 09:09:26,286.286 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 09:09:26,288.288 INFO    ] Checking for system updates...
[2026-08-31 09:09:26,328.328 INFO    ] 200
[2026-08-31 09:09:26,330.330 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:09:26,393.393 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:09:26,396.396 INFO    ] No update needed
[2026-08-31 09:09:26,399.399 INFO    ] Checking for camera pi updates...
[2026-08-31 09:09:26,436.436 INFO    ] 200
[2026-08-31 09:09:26,439.439 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:09:26,484.484 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:09:26,570.570 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:09:26,572.572 INFO    ] No camera update needed
[2026-08-31 09:09:26,575.575 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:09:26,577.577 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:09:26,584.584 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:09:26,589.589 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:09:28,632.632 INFO    ] ================================================
[2026-08-31 09:09:28,652.652 INFO    ] Launching Daemon at Mon Aug 31 09:09:28 IST 2026
[2026-08-31 09:09:28,662.662 INFO    ] ================================================
[2026-08-31 09:09:29,243.243 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:09:29
[2026-08-31 09:09:29,844.844 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:09:30,105.105 INFO    ] Initializing speech engine...
[2026-08-31 09:09:30,118.118 INFO    ] 2026-08-31 09:09:30
[2026-08-31 09:09:30,403.403 INFO    ] 2026-08-31 09:09:30
[2026-08-31 09:09:30,439.439 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:09:30,656.656 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:09:30,703.703 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:09:30,878.878 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:09:30,900.900 INFO    ] time= 31/08/2026 09:09:30
[2026-08-31 09:09:30,949.949 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:09:31,003.003 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:09:31,145.145 INFO    ] No existing commands found in stream
[2026-08-31 09:09:36,177.177 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:09:36,180.180 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-08-31 09:09:39,005.005 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 09:09:39,008.008 INFO    ] Checking for system updates...
[2026-08-31 09:09:39,044.044 INFO    ] 200
[2026-08-31 09:09:39,046.046 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:09:39,098.098 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:09:39,100.100 INFO    ] No update needed
[2026-08-31 09:09:39,102.102 INFO    ] Checking for camera pi updates...
[2026-08-31 09:09:39,136.136 INFO    ] 200
[2026-08-31 09:09:39,138.138 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:09:39,178.178 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:09:39,262.262 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:09:39,264.264 INFO    ] No camera update needed
[2026-08-31 09:09:39,266.266 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:09:39,269.269 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:09:39,274.274 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:09:39,279.279 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:09:41,318.318 INFO    ] ================================================
[2026-08-31 09:09:41,334.334 INFO    ] Launching Daemon at Mon Aug 31 09:09:41 IST 2026
[2026-08-31 09:09:41,346.346 INFO    ] ================================================
[2026-08-31 09:09:41,926.926 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:09:41
[2026-08-31 09:09:42,578.578 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:09:42,878.878 INFO    ] Initializing speech engine...
[2026-08-31 09:09:42,884.884 INFO    ] 2026-08-31 09:09:42
[2026-08-31 09:09:43,172.172 INFO    ] 2026-08-31 09:09:43
[2026-08-31 09:09:43,218.218 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:09:43,448.448 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:09:43,453.453 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:09:43,590.590 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:09:43,650.650 INFO    ] time= 31/08/2026 09:09:43
[2026-08-31 09:09:43,715.715 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:09:43,728.728 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:09:43,861.861 INFO    ] No existing commands found in stream
[2026-08-31 09:09:48,884.884 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:09:48,887.887 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-08-31 09:09:51,062.062 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 09:09:51,065.065 INFO    ] Checking for system updates...
[2026-08-31 09:09:51,102.102 INFO    ] 200
[2026-08-31 09:09:51,105.105 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:09:51,158.158 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:09:51,161.161 INFO    ] No update needed
[2026-08-31 09:09:51,163.163 INFO    ] Checking for camera pi updates...
[2026-08-31 09:09:51,197.197 INFO    ] 200
[2026-08-31 09:09:51,199.199 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:09:51,239.239 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:09:51,313.313 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:09:51,316.316 INFO    ] No camera update needed
[2026-08-31 09:09:51,318.318 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:09:51,320.320 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:09:51,326.326 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:09:51,330.330 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:09:53,370.370 INFO    ] ================================================
[2026-08-31 09:09:53,385.385 INFO    ] Launching Daemon at Mon Aug 31 09:09:53 IST 2026
[2026-08-31 09:09:53,396.396 INFO    ] ================================================
[2026-08-31 09:09:54,025.025 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:09:54
[2026-08-31 09:09:54,678.678 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:09:54,975.975 INFO    ] Initializing speech engine...
[2026-08-31 09:09:54,983.983 INFO    ] 2026-08-31 09:09:54
[2026-08-31 09:09:55,256.256 INFO    ] 2026-08-31 09:09:55
[2026-08-31 09:09:55,312.312 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:09:55,569.569 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:09:55,574.574 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:09:55,765.765 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:09:55,813.813 INFO    ] time= 31/08/2026 09:09:55
[2026-08-31 09:09:55,820.820 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:09:55,839.839 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:09:55,972.972 INFO    ] No existing commands found in stream
[2026-08-31 09:10:00,992.992 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:10:00,995.995 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-08-31 09:10:02,181.181 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 09:10:02,184.184 INFO    ] Checking for system updates...
[2026-08-31 09:10:02,237.237 INFO    ] 200
[2026-08-31 09:10:02,240.240 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:10:02,321.321 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:10:02,325.325 INFO    ] No update needed
[2026-08-31 09:10:02,329.329 INFO    ] Checking for camera pi updates...
[2026-08-31 09:10:02,377.377 INFO    ] 200
[2026-08-31 09:10:02,380.380 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:10:02,446.446 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:10:02,706.706 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:10:02,709.709 INFO    ] No camera update needed
[2026-08-31 09:10:02,712.712 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:10:02,719.719 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:10:02,726.726 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:10:02,733.733 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:10:04,773.773 INFO    ] ================================================
[2026-08-31 09:10:04,788.788 INFO    ] Launching Daemon at Mon Aug 31 09:10:04 IST 2026
[2026-08-31 09:10:04,799.799 INFO    ] ================================================
[2026-08-31 09:10:05,393.393 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:10:05
[2026-08-31 09:10:05,983.983 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:10:06,253.253 INFO    ] Initializing speech engine...
[2026-08-31 09:10:06,262.262 INFO    ] 2026-08-31 09:10:06
[2026-08-31 09:10:06,523.523 INFO    ] 2026-08-31 09:10:06
[2026-08-31 09:10:06,569.569 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:10:06,763.763 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:10:06,776.776 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:10:06,937.937 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:10:06,943.943 INFO    ] time= 31/08/2026 09:10:06
[2026-08-31 09:10:06,949.949 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:10:06,976.976 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:10:07,159.159 INFO    ] No existing commands found in stream
[2026-08-31 09:10:12,169.169 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:10:12,171.171 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-08-31 09:10:14,907.907 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 09:10:14,910.910 INFO    ] Checking for system updates...
[2026-08-31 09:10:14,945.945 INFO    ] 200
[2026-08-31 09:10:14,948.948 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:10:15,006.006 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:10:15,008.008 INFO    ] No update needed
[2026-08-31 09:10:15,011.011 INFO    ] Checking for camera pi updates...
[2026-08-31 09:10:15,043.043 INFO    ] 200
[2026-08-31 09:10:15,046.046 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:10:15,086.086 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:10:15,155.155 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:10:15,158.158 INFO    ] No camera update needed
[2026-08-31 09:10:15,160.160 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:10:15,162.162 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:10:15,168.168 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:10:15,173.173 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:10:17,213.213 INFO    ] ================================================
[2026-08-31 09:10:17,248.248 INFO    ] Launching Daemon at Mon Aug 31 09:10:17 IST 2026
[2026-08-31 09:10:17,260.260 INFO    ] ================================================
[2026-08-31 09:10:17,982.982 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:10:17
[2026-08-31 09:10:18,656.656 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:10:18,961.961 INFO    ] Initializing speech engine...
[2026-08-31 09:10:18,972.972 INFO    ] 2026-08-31 09:10:18
[2026-08-31 09:10:19,257.257 INFO    ] 2026-08-31 09:10:19
[2026-08-31 09:10:19,367.367 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:10:19,577.577 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:10:19,585.585 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:10:19,774.774 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:10:19,788.788 INFO    ] time= 31/08/2026 09:10:19
[2026-08-31 09:10:19,810.810 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:10:19,838.838 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:10:19,967.967 INFO    ] No existing commands found in stream
[2026-08-31 09:10:25,003.003 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:10:25,006.006 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-08-31 09:10:29,307.307 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 09:10:29,310.310 INFO    ] Checking for system updates...
[2026-08-31 09:10:29,347.347 INFO    ] 200
[2026-08-31 09:10:29,350.350 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:10:29,408.408 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:10:29,411.411 INFO    ] No update needed
[2026-08-31 09:10:29,413.413 INFO    ] Checking for camera pi updates...
[2026-08-31 09:10:29,450.450 INFO    ] 200
[2026-08-31 09:10:29,452.452 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:10:29,497.497 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:10:29,576.576 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:10:29,579.579 INFO    ] No camera update needed
[2026-08-31 09:10:29,581.581 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:10:29,584.584 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:10:29,589.589 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:10:29,594.594 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:10:31,635.635 INFO    ] ================================================
[2026-08-31 09:10:31,652.652 INFO    ] Launching Daemon at Mon Aug 31 09:10:31 IST 2026
[2026-08-31 09:10:31,664.664 INFO    ] ================================================
[2026-08-31 09:10:32,264.264 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:10:32
[2026-08-31 09:10:32,898.898 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:10:33,196.196 INFO    ] Initializing speech engine...
[2026-08-31 09:10:33,209.209 INFO    ] 2026-08-31 09:10:33
[2026-08-31 09:10:34,726.726 INFO    ] 2026-08-31 09:10:34
[2026-08-31 09:10:34,768.768 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:10:34,944.944 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:10:34,954.954 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:10:35,130.130 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:10:35,164.164 INFO    ] time= 31/08/2026 09:10:35
[2026-08-31 09:10:35,183.183 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:10:35,227.227 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:10:35,371.371 INFO    ] No existing commands found in stream
[2026-08-31 09:10:40,383.383 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:10:40,386.386 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-08-31 09:10:42,217.217 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 09:10:42,220.220 INFO    ] Checking for system updates...
[2026-08-31 09:10:42,260.260 INFO    ] 200
[2026-08-31 09:10:42,262.262 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:10:42,314.314 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:10:42,316.316 INFO    ] No update needed
[2026-08-31 09:10:42,319.319 INFO    ] Checking for camera pi updates...
[2026-08-31 09:10:42,356.356 INFO    ] 200
[2026-08-31 09:10:42,358.358 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:10:42,398.398 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:10:42,483.483 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:10:42,491.491 INFO    ] No camera update needed
[2026-08-31 09:10:42,494.494 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:10:42,496.496 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:10:42,502.502 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:10:42,508.508 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:10:44,547.547 INFO    ] ================================================
[2026-08-31 09:10:44,563.563 INFO    ] Launching Daemon at Mon Aug 31 09:10:44 IST 2026
[2026-08-31 09:10:44,574.574 INFO    ] ================================================
[2026-08-31 09:10:45,141.141 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:10:45
[2026-08-31 09:10:45,727.727 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:10:45,981.981 INFO    ] Initializing speech engine...
[2026-08-31 09:10:45,990.990 INFO    ] 2026-08-31 09:10:45
[2026-08-31 09:10:46,282.282 INFO    ] 2026-08-31 09:10:46
[2026-08-31 09:10:46,320.320 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:10:46,542.542 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:10:46,591.591 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:10:46,768.768 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:10:46,811.811 INFO    ] time= 31/08/2026 09:10:46
[2026-08-31 09:10:46,860.860 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:10:46,894.894 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:10:46,976.976 INFO    ] No existing commands found in stream
[2026-08-31 09:10:51,988.988 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:10:51,991.991 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-08-31 09:10:52,690.690 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 09:10:52,693.693 INFO    ] Checking for system updates...
[2026-08-31 09:10:52,728.728 INFO    ] 200
[2026-08-31 09:10:52,730.730 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:10:52,788.788 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:10:52,791.791 INFO    ] No update needed
[2026-08-31 09:10:52,793.793 INFO    ] Checking for camera pi updates...
[2026-08-31 09:10:52,827.827 INFO    ] 200
[2026-08-31 09:10:52,829.829 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:10:52,874.874 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:10:53,053.053 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:10:53,056.056 INFO    ] No camera update needed
[2026-08-31 09:10:53,058.058 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:10:53,061.061 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:10:53,066.066 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:10:53,071.071 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:10:55,111.111 INFO    ] ================================================
[2026-08-31 09:10:55,127.127 INFO    ] Launching Daemon at Mon Aug 31 09:10:55 IST 2026
[2026-08-31 09:10:55,138.138 INFO    ] ================================================
[2026-08-31 09:10:55,783.783 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:10:55
[2026-08-31 09:10:56,450.450 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:10:56,735.735 INFO    ] Initializing speech engine...
[2026-08-31 09:10:56,743.743 INFO    ] 2026-08-31 09:10:56
[2026-08-31 09:10:57,014.014 INFO    ] 2026-08-31 09:10:56
[2026-08-31 09:10:57,039.039 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:10:57,260.260 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:10:57,281.281 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:10:57,422.422 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:10:57,432.432 INFO    ] time= 31/08/2026 09:10:57
[2026-08-31 09:10:57,438.438 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:10:57,451.451 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:10:57,587.587 INFO    ] No existing commands found in stream
[2026-08-31 09:11:02,620.620 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:11:02,624.624 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-08-31 09:11:05,501.501 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 09:11:05,504.504 INFO    ] Checking for system updates...
[2026-08-31 09:11:05,544.544 INFO    ] 200
[2026-08-31 09:11:05,547.547 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:11:05,606.606 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:11:05,609.609 INFO    ] No update needed
[2026-08-31 09:11:05,612.612 INFO    ] Checking for camera pi updates...
[2026-08-31 09:11:05,650.650 INFO    ] 200
[2026-08-31 09:11:05,653.653 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:11:05,694.694 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:11:05,777.777 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:11:05,780.780 INFO    ] No camera update needed
[2026-08-31 09:11:05,783.783 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:11:05,785.785 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:11:05,791.791 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:11:05,797.797 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:11:07,838.838 INFO    ] ================================================
[2026-08-31 09:11:07,854.854 INFO    ] Launching Daemon at Mon Aug 31 09:11:07 IST 2026
[2026-08-31 09:11:07,865.865 INFO    ] ================================================
[2026-08-31 09:11:08,508.508 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:11:08
[2026-08-31 09:11:09,167.167 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:11:09,467.467 INFO    ] Initializing speech engine...
[2026-08-31 09:11:09,481.481 INFO    ] 2026-08-31 09:11:09
[2026-08-31 09:11:09,787.787 INFO    ] 2026-08-31 09:11:09
[2026-08-31 09:11:09,872.872 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:11:10,092.092 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:11:10,153.153 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:11:10,306.306 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:11:10,331.331 INFO    ] time= 31/08/2026 09:11:10
[2026-08-31 09:11:10,341.341 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:11:10,354.354 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:11:10,447.447 INFO    ] No existing commands found in stream
[2026-08-31 09:11:15,476.476 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:11:15,479.479 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-08-31 09:11:17,820.820 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 09:11:17,823.823 INFO    ] Checking for system updates...
[2026-08-31 09:11:17,860.860 INFO    ] 200
[2026-08-31 09:11:17,863.863 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:11:17,921.921 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:11:17,924.924 INFO    ] No update needed
[2026-08-31 09:11:17,927.927 INFO    ] Checking for camera pi updates...
[2026-08-31 09:11:17,964.964 INFO    ] 200
[2026-08-31 09:11:17,967.967 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:11:18,013.013 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:11:18,093.093 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:11:18,095.095 INFO    ] No camera update needed
[2026-08-31 09:11:18,098.098 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:11:18,101.101 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:11:18,107.107 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:11:18,113.113 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:11:20,153.153 INFO    ] ================================================
[2026-08-31 09:11:20,168.168 INFO    ] Launching Daemon at Mon Aug 31 09:11:20 IST 2026
[2026-08-31 09:11:20,179.179 INFO    ] ================================================
[2026-08-31 09:11:20,787.787 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:11:20
[2026-08-31 09:11:21,373.373 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:11:21,629.629 INFO    ] Initializing speech engine...
[2026-08-31 09:11:21,645.645 INFO    ] 2026-08-31 09:11:21
[2026-08-31 09:11:21,914.914 INFO    ] 2026-08-31 09:11:21
[2026-08-31 09:11:21,948.948 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:11:22,126.126 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:11:22,139.139 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:11:22,286.286 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:11:22,293.293 INFO    ] time= 31/08/2026 09:11:22
[2026-08-31 09:11:22,318.318 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:11:22,361.361 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:11:22,490.490 INFO    ] No existing commands found in stream
[2026-08-31 09:11:27,501.501 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:11:27,504.504 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-08-31 09:11:28,575.575 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 09:11:28,578.578 INFO    ] Checking for system updates...
[2026-08-31 09:11:28,615.615 INFO    ] 200
[2026-08-31 09:11:28,618.618 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:11:28,671.671 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:11:28,673.673 INFO    ] No update needed
[2026-08-31 09:11:28,676.676 INFO    ] Checking for camera pi updates...
[2026-08-31 09:11:28,711.711 INFO    ] 200
[2026-08-31 09:11:28,714.714 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:11:28,755.755 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:11:28,860.860 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:11:28,863.863 INFO    ] No camera update needed
[2026-08-31 09:11:28,866.866 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:11:28,869.869 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:11:28,875.875 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:11:28,881.881 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:11:30,921.921 INFO    ] ================================================
[2026-08-31 09:11:30,936.936 INFO    ] Launching Daemon at Mon Aug 31 09:11:30 IST 2026
[2026-08-31 09:11:30,946.946 INFO    ] ================================================
[2026-08-31 09:11:31,528.528 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:11:31
[2026-08-31 09:11:32,160.160 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:11:32,447.447 INFO    ] Initializing speech engine...
[2026-08-31 09:11:32,456.456 INFO    ] 2026-08-31 09:11:32
[2026-08-31 09:11:32,769.769 INFO    ] 2026-08-31 09:11:32
[2026-08-31 09:11:32,801.801 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:11:33,025.025 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:11:33,038.038 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:11:33,220.220 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:11:33,259.259 INFO    ] time= 31/08/2026 09:11:33
[2026-08-31 09:11:33,281.281 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:11:33,335.335 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:11:33,450.450 INFO    ] No existing commands found in stream
[2026-08-31 09:11:38,475.475 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:11:38,478.478 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-08-31 09:11:42,823.823 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 09:11:42,826.826 INFO    ] Checking for system updates...
[2026-08-31 09:11:42,861.861 INFO    ] 200
[2026-08-31 09:11:42,864.864 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:11:42,916.916 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:11:42,918.918 INFO    ] No update needed
[2026-08-31 09:11:42,921.921 INFO    ] Checking for camera pi updates...
[2026-08-31 09:11:42,954.954 INFO    ] 200
[2026-08-31 09:11:42,956.956 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:11:43,003.003 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:11:43,102.102 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:11:43,104.104 INFO    ] No camera update needed
[2026-08-31 09:11:43,107.107 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:11:43,109.109 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:11:43,115.115 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:11:43,120.120 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:11:45,161.161 INFO    ] ================================================
[2026-08-31 09:11:45,176.176 INFO    ] Launching Daemon at Mon Aug 31 09:11:45 IST 2026
[2026-08-31 09:11:45,187.187 INFO    ] ================================================
[2026-08-31 09:11:45,847.847 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:11:45
[2026-08-31 09:11:46,434.434 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:11:46,705.705 INFO    ] Initializing speech engine...
[2026-08-31 09:11:46,713.713 INFO    ] 2026-08-31 09:11:46
[2026-08-31 09:11:46,966.966 INFO    ] 2026-08-31 09:11:46
[2026-08-31 09:11:47,001.001 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:11:47,203.203 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:11:47,261.261 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:11:47,411.411 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:11:47,481.481 INFO    ] time= 31/08/2026 09:11:47
[2026-08-31 09:11:47,536.536 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:11:47,542.542 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:11:47,689.689 INFO    ] No existing commands found in stream
[2026-08-31 09:11:52,702.702 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:11:52,705.705 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-08-31 09:11:53,284.284 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 09:11:53,286.286 INFO    ] Checking for system updates...
[2026-08-31 09:11:53,322.322 INFO    ] 200
[2026-08-31 09:11:53,324.324 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:11:53,376.376 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:11:53,378.378 INFO    ] No update needed
[2026-08-31 09:11:53,381.381 INFO    ] Checking for camera pi updates...
[2026-08-31 09:11:53,420.420 INFO    ] 200
[2026-08-31 09:11:53,422.422 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:11:53,462.462 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:11:53,546.546 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:11:53,549.549 INFO    ] No camera update needed
[2026-08-31 09:11:53,551.551 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:11:53,554.554 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:11:53,559.559 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:11:53,564.564 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:11:55,607.607 INFO    ] ================================================
[2026-08-31 09:11:55,622.622 INFO    ] Launching Daemon at Mon Aug 31 09:11:55 IST 2026
[2026-08-31 09:11:55,633.633 INFO    ] ================================================
[2026-08-31 09:11:56,205.205 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:11:56
[2026-08-31 09:11:56,795.795 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:11:57,069.069 INFO    ] Initializing speech engine...
[2026-08-31 09:11:57,080.080 INFO    ] 2026-08-31 09:11:57
[2026-08-31 09:11:57,328.328 INFO    ] 2026-08-31 09:11:57
[2026-08-31 09:11:57,363.363 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:11:57,569.569 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:11:57,623.623 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:11:57,766.766 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:11:57,826.826 INFO    ] time= 31/08/2026 09:11:57
[2026-08-31 09:11:57,880.880 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:11:57,903.903 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:11:58,053.053 INFO    ] No existing commands found in stream
[2026-08-31 09:12:03,068.068 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:12:03,071.071 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-08-31 09:12:05,538.538 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 09:12:05,541.541 INFO    ] Checking for system updates...
[2026-08-31 09:12:05,576.576 INFO    ] 200
[2026-08-31 09:12:05,579.579 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:12:05,632.632 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:12:05,634.634 INFO    ] No update needed
[2026-08-31 09:12:05,637.637 INFO    ] Checking for camera pi updates...
[2026-08-31 09:12:05,670.670 INFO    ] 200
[2026-08-31 09:12:05,672.672 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:12:05,713.713 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:12:05,792.792 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:12:05,794.794 INFO    ] No camera update needed
[2026-08-31 09:12:05,797.797 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:12:05,799.799 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:12:05,804.804 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:12:05,809.809 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:12:07,852.852 INFO    ] ================================================
[2026-08-31 09:12:07,873.873 INFO    ] Launching Daemon at Mon Aug 31 09:12:07 IST 2026
[2026-08-31 09:12:07,884.884 INFO    ] ================================================
[2026-08-31 09:12:08,458.458 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:12:08
[2026-08-31 09:12:09,044.044 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:12:09,302.302 INFO    ] Initializing speech engine...
[2026-08-31 09:12:09,309.309 INFO    ] 2026-08-31 09:12:09
[2026-08-31 09:12:09,613.613 INFO    ] 2026-08-31 09:12:09
[2026-08-31 09:12:09,648.648 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:12:09,856.856 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:12:09,872.872 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:12:10,038.038 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:12:10,049.049 INFO    ] time= 31/08/2026 09:12:10
[2026-08-31 09:12:10,055.055 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:12:10,062.062 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:12:10,141.141 INFO    ] No existing commands found in stream
[2026-08-31 09:12:15,177.177 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:12:15,179.179 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-08-31 09:12:17,655.655 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 09:12:17,658.658 INFO    ] Checking for system updates...
[2026-08-31 09:12:17,693.693 INFO    ] 200
[2026-08-31 09:12:17,696.696 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:12:17,748.748 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:12:17,750.750 INFO    ] No update needed
[2026-08-31 09:12:17,752.752 INFO    ] Checking for camera pi updates...
[2026-08-31 09:12:17,791.791 INFO    ] 200
[2026-08-31 09:12:17,794.794 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:12:17,835.835 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:12:17,886.886 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:12:17,888.888 INFO    ] No camera update needed
[2026-08-31 09:12:17,891.891 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:12:17,893.893 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:12:17,899.899 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:12:17,904.904 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:12:19,945.945 INFO    ] ================================================
[2026-08-31 09:12:19,961.961 INFO    ] Launching Daemon at Mon Aug 31 09:12:19 IST 2026
[2026-08-31 09:12:19,971.971 INFO    ] ================================================
[2026-08-31 09:12:20,560.560 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:12:20
[2026-08-31 09:12:21,166.166 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:12:21,446.446 INFO    ] Initializing speech engine...
[2026-08-31 09:12:21,455.455 INFO    ] 2026-08-31 09:12:21
[2026-08-31 09:12:21,717.717 INFO    ] 2026-08-31 09:12:21
[2026-08-31 09:12:21,772.772 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:12:21,965.965 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:12:21,967.967 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:12:22,137.137 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:12:22,179.179 INFO    ] time= 31/08/2026 09:12:22
[2026-08-31 09:12:22,249.249 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:12:22,278.278 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:12:22,411.411 INFO    ] No existing commands found in stream
[2026-08-31 09:12:27,438.438 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:12:27,440.440 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-08-31 09:12:28,297.297 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 09:12:28,300.300 INFO    ] Checking for system updates...
[2026-08-31 09:12:28,336.336 INFO    ] 200
[2026-08-31 09:12:28,339.339 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:12:28,402.402 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:12:28,405.405 INFO    ] No update needed
[2026-08-31 09:12:28,408.408 INFO    ] Checking for camera pi updates...
[2026-08-31 09:12:28,443.443 INFO    ] 200
[2026-08-31 09:12:28,446.446 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:12:28,494.494 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:12:28,574.574 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:12:28,577.577 INFO    ] No camera update needed
[2026-08-31 09:12:28,579.579 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:12:28,582.582 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:12:28,587.587 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:12:28,592.592 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:12:30,635.635 INFO    ] ================================================
[2026-08-31 09:12:30,650.650 INFO    ] Launching Daemon at Mon Aug 31 09:12:30 IST 2026
[2026-08-31 09:12:30,661.661 INFO    ] ================================================
[2026-08-31 09:12:31,228.228 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:12:31
[2026-08-31 09:12:31,832.832 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:12:32,103.103 INFO    ] Initializing speech engine...
[2026-08-31 09:12:32,125.125 INFO    ] 2026-08-31 09:12:32
[2026-08-31 09:12:32,398.398 INFO    ] 2026-08-31 09:12:32
[2026-08-31 09:12:32,442.442 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:12:32,640.640 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:12:32,703.703 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:12:32,866.866 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:12:32,934.934 INFO    ] time= 31/08/2026 09:12:32
[2026-08-31 09:12:32,993.993 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:12:33,002.002 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:12:33,085.085 INFO    ] No existing commands found in stream
[2026-08-31 09:12:38,106.106 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:12:38,109.109 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-08-31 09:12:41,186.186 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 09:12:41,190.190 INFO    ] Checking for system updates...
[2026-08-31 09:12:41,227.227 INFO    ] 200
[2026-08-31 09:12:41,230.230 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:12:41,282.282 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:12:41,284.284 INFO    ] No update needed
[2026-08-31 09:12:41,287.287 INFO    ] Checking for camera pi updates...
[2026-08-31 09:12:41,321.321 INFO    ] 200
[2026-08-31 09:12:41,324.324 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:12:41,364.364 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:12:41,445.445 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:12:41,448.448 INFO    ] No camera update needed
[2026-08-31 09:12:41,450.450 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:12:41,453.453 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:12:41,458.458 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:12:41,463.463 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:12:43,504.504 INFO    ] ================================================
[2026-08-31 09:12:43,520.520 INFO    ] Launching Daemon at Mon Aug 31 09:12:43 IST 2026
[2026-08-31 09:12:43,531.531 INFO    ] ================================================
[2026-08-31 09:12:44,098.098 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:12:44
[2026-08-31 09:12:44,681.681 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:12:44,932.932 INFO    ] Initializing speech engine...
[2026-08-31 09:12:44,955.955 INFO    ] 2026-08-31 09:12:44
[2026-08-31 09:12:45,212.212 INFO    ] 2026-08-31 09:12:45
[2026-08-31 09:12:45,247.247 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:12:45,449.449 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:12:45,507.507 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:12:45,649.649 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:12:45,691.691 INFO    ] time= 31/08/2026 09:12:45
[2026-08-31 09:12:45,740.740 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:12:45,785.785 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:12:45,877.877 INFO    ] No existing commands found in stream
[2026-08-31 09:12:50,909.909 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:12:50,912.912 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-08-31 09:12:53,734.734 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 09:12:53,736.736 INFO    ] Checking for system updates...
[2026-08-31 09:12:53,772.772 INFO    ] 200
[2026-08-31 09:12:53,774.774 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:12:53,826.826 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:12:53,829.829 INFO    ] No update needed
[2026-08-31 09:12:53,831.831 INFO    ] Checking for camera pi updates...
[2026-08-31 09:12:53,865.865 INFO    ] 200
[2026-08-31 09:12:53,867.867 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:12:53,914.914 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:12:54,103.103 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:12:54,106.106 INFO    ] No camera update needed
[2026-08-31 09:12:54,108.108 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:12:54,111.111 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:12:54,116.116 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:12:54,121.121 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:12:56,162.162 INFO    ] ================================================
[2026-08-31 09:12:56,177.177 INFO    ] Launching Daemon at Mon Aug 31 09:12:56 IST 2026
[2026-08-31 09:12:56,188.188 INFO    ] ================================================
[2026-08-31 09:12:56,770.770 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:12:56
[2026-08-31 09:12:57,369.369 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:12:57,646.646 INFO    ] Initializing speech engine...
[2026-08-31 09:12:57,655.655 INFO    ] 2026-08-31 09:12:57
[2026-08-31 09:12:57,915.915 INFO    ] 2026-08-31 09:12:57
[2026-08-31 09:12:57,938.938 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:12:58,190.190 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:12:58,199.199 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:12:58,419.419 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:12:58,457.457 INFO    ] time= 31/08/2026 09:12:58
[2026-08-31 09:12:58,464.464 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:12:58,479.479 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:12:58,610.610 INFO    ] No existing commands found in stream
[2026-08-31 09:13:03,624.624 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:13:03,627.627 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-08-31 09:13:05,505.505 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 09:13:05,508.508 INFO    ] Checking for system updates...
[2026-08-31 09:13:05,548.548 INFO    ] 200
[2026-08-31 09:13:05,551.551 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:13:05,603.603 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:13:05,606.606 INFO    ] No update needed
[2026-08-31 09:13:05,608.608 INFO    ] Checking for camera pi updates...
[2026-08-31 09:13:05,647.647 INFO    ] 200
[2026-08-31 09:13:05,649.649 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:13:05,690.690 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:13:05,777.777 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:13:05,780.780 INFO    ] No camera update needed
[2026-08-31 09:13:05,783.783 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:13:05,785.785 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:13:05,792.792 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:13:05,797.797 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:13:07,839.839 INFO    ] ================================================
[2026-08-31 09:13:07,853.853 INFO    ] Launching Daemon at Mon Aug 31 09:13:07 IST 2026
[2026-08-31 09:13:07,864.864 INFO    ] ================================================
[2026-08-31 09:13:08,440.440 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:13:08
[2026-08-31 09:13:09,033.033 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:13:09,282.282 INFO    ] Initializing speech engine...
[2026-08-31 09:13:09,305.305 INFO    ] 2026-08-31 09:13:09
[2026-08-31 09:13:09,556.556 INFO    ] 2026-08-31 09:13:09
[2026-08-31 09:13:09,620.620 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:13:09,846.846 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:13:09,851.851 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:13:10,056.056 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:13:10,106.106 INFO    ] time= 31/08/2026 09:13:10
[2026-08-31 09:13:10,113.113 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:13:10,131.131 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:13:10,261.261 INFO    ] No existing commands found in stream
[2026-08-31 09:13:15,272.272 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:13:15,275.275 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-08-31 09:13:16,414.414 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 09:13:16,417.417 INFO    ] Checking for system updates...
[2026-08-31 09:13:16,452.452 INFO    ] 200
[2026-08-31 09:13:16,454.454 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:13:16,506.506 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:13:16,508.508 INFO    ] No update needed
[2026-08-31 09:13:16,511.511 INFO    ] Checking for camera pi updates...
[2026-08-31 09:13:16,548.548 INFO    ] 200
[2026-08-31 09:13:16,550.550 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:13:16,595.595 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:13:16,672.672 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:13:16,674.674 INFO    ] No camera update needed
[2026-08-31 09:13:16,677.677 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:13:16,679.679 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:13:16,684.684 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:13:16,690.690 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:13:18,732.732 INFO    ] ================================================
[2026-08-31 09:13:18,746.746 INFO    ] Launching Daemon at Mon Aug 31 09:13:18 IST 2026
[2026-08-31 09:13:18,757.757 INFO    ] ================================================
[2026-08-31 09:13:19,411.411 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:13:19
[2026-08-31 09:13:20,083.083 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:13:20,385.385 INFO    ] Initializing speech engine...
[2026-08-31 09:13:20,399.399 INFO    ] 2026-08-31 09:13:20
[2026-08-31 09:13:20,685.685 INFO    ] 2026-08-31 09:13:20
[2026-08-31 09:13:20,724.724 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:13:20,974.974 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:13:20,998.998 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:13:21,210.210 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:13:21,218.218 INFO    ] time= 31/08/2026 09:13:21
[2026-08-31 09:13:21,237.237 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:13:21,265.265 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:13:21,370.370 INFO    ] No existing commands found in stream
[2026-08-31 09:13:26,389.389 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:13:26,392.392 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-08-31 09:13:27,786.786 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 09:13:27,790.790 INFO    ] Checking for system updates...
[2026-08-31 09:13:27,826.826 INFO    ] 200
[2026-08-31 09:13:27,829.829 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:13:27,882.882 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:13:27,885.885 INFO    ] No update needed
[2026-08-31 09:13:27,888.888 INFO    ] Checking for camera pi updates...
[2026-08-31 09:13:27,923.923 INFO    ] 200
[2026-08-31 09:13:27,926.926 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:13:27,968.968 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:13:28,070.070 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:13:28,072.072 INFO    ] No camera update needed
[2026-08-31 09:13:28,075.075 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:13:28,078.078 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:13:28,084.084 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:13:28,090.090 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:13:30,130.130 INFO    ] ================================================
[2026-08-31 09:13:30,145.145 INFO    ] Launching Daemon at Mon Aug 31 09:13:30 IST 2026
[2026-08-31 09:13:30,156.156 INFO    ] ================================================
[2026-08-31 09:13:30,812.812 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:13:30
[2026-08-31 09:13:31,423.423 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:13:31,728.728 INFO    ] Initializing speech engine...
[2026-08-31 09:13:31,736.736 INFO    ] 2026-08-31 09:13:31
[2026-08-31 09:13:32,032.032 INFO    ] 2026-08-31 09:13:31
[2026-08-31 09:13:32,074.074 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:13:32,293.293 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:13:32,310.310 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:13:32,487.487 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:13:32,494.494 INFO    ] time= 31/08/2026 09:13:32
[2026-08-31 09:13:32,501.501 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:13:32,547.547 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:13:32,718.718 INFO    ] No existing commands found in stream
[2026-08-31 09:13:37,742.742 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:13:37,745.745 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-08-31 09:13:39,152.152 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 09:13:39,154.154 INFO    ] Checking for system updates...
[2026-08-31 09:13:39,191.191 INFO    ] 200
[2026-08-31 09:13:39,194.194 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:13:39,255.255 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:13:39,259.259 INFO    ] No update needed
[2026-08-31 09:13:39,262.262 INFO    ] Checking for camera pi updates...
[2026-08-31 09:13:39,296.296 INFO    ] 200
[2026-08-31 09:13:39,299.299 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:13:39,345.345 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:13:39,453.453 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:13:39,456.456 INFO    ] No camera update needed
[2026-08-31 09:13:39,459.459 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:13:39,461.461 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:13:39,468.468 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:13:39,474.474 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:13:41,514.514 INFO    ] ================================================
[2026-08-31 09:13:41,530.530 INFO    ] Launching Daemon at Mon Aug 31 09:13:41 IST 2026
[2026-08-31 09:13:41,541.541 INFO    ] ================================================
[2026-08-31 09:13:42,204.204 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:13:42
[2026-08-31 09:13:42,889.889 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:13:43,197.197 INFO    ] Initializing speech engine...
[2026-08-31 09:13:43,211.211 INFO    ] 2026-08-31 09:13:43
[2026-08-31 09:13:43,489.489 INFO    ] 2026-08-31 09:13:43
[2026-08-31 09:13:43,597.597 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:13:43,772.772 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:13:43,777.777 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:13:43,969.969 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:13:44,011.011 INFO    ] time= 31/08/2026 09:13:43
[2026-08-31 09:13:44,017.017 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:13:44,035.035 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:13:44,168.168 INFO    ] No existing commands found in stream
[2026-08-31 09:13:49,191.191 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:13:49,194.194 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-08-31 09:13:51,247.247 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 09:13:51,250.250 INFO    ] Checking for system updates...
[2026-08-31 09:13:51,290.290 INFO    ] 200
[2026-08-31 09:13:51,293.293 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:13:51,344.344 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:13:51,347.347 INFO    ] No update needed
[2026-08-31 09:13:51,350.350 INFO    ] Checking for camera pi updates...
[2026-08-31 09:13:51,383.383 INFO    ] 200
[2026-08-31 09:13:51,386.386 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:13:51,431.431 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:13:51,523.523 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:13:51,525.525 INFO    ] No camera update needed
[2026-08-31 09:13:51,528.528 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:13:51,530.530 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:13:51,535.535 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:13:51,540.540 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:13:53,580.580 INFO    ] ================================================
[2026-08-31 09:13:53,595.595 INFO    ] Launching Daemon at Mon Aug 31 09:13:53 IST 2026
[2026-08-31 09:13:53,605.605 INFO    ] ================================================
[2026-08-31 09:13:54,171.171 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:13:54
[2026-08-31 09:13:54,754.754 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:13:55,004.004 INFO    ] Initializing speech engine...
[2026-08-31 09:13:55,010.010 INFO    ] 2026-08-31 09:13:55
[2026-08-31 09:13:55,312.312 INFO    ] 2026-08-31 09:13:55
[2026-08-31 09:13:55,346.346 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:13:55,548.548 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:13:55,561.561 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:13:55,729.729 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:13:55,734.734 INFO    ] time= 31/08/2026 09:13:55
[2026-08-31 09:13:55,741.741 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:13:55,767.767 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:13:55,880.880 INFO    ] No existing commands found in stream
[2026-08-31 09:14:00,901.901 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:14:00,904.904 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-08-31 09:14:04,864.864 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 09:14:04,867.867 INFO    ] Checking for system updates...
[2026-08-31 09:14:04,904.904 INFO    ] 200
[2026-08-31 09:14:04,906.906 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:14:04,963.963 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:14:04,966.966 INFO    ] No update needed
[2026-08-31 09:14:04,968.968 INFO    ] Checking for camera pi updates...
[2026-08-31 09:14:05,001.001 INFO    ] 200
[2026-08-31 09:14:05,004.004 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:14:05,050.050 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:14:05,149.149 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:14:05,151.151 INFO    ] No camera update needed
[2026-08-31 09:14:05,154.154 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:14:05,156.156 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:14:05,161.161 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:14:05,166.166 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:14:07,210.210 INFO    ] ================================================
[2026-08-31 09:14:07,225.225 INFO    ] Launching Daemon at Mon Aug 31 09:14:07 IST 2026
[2026-08-31 09:14:07,236.236 INFO    ] ================================================
[2026-08-31 09:14:07,904.904 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:14:07
[2026-08-31 09:14:08,532.532 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:14:08,808.808 INFO    ] Initializing speech engine...
[2026-08-31 09:14:08,814.814 INFO    ] 2026-08-31 09:14:08
[2026-08-31 09:14:09,076.076 INFO    ] 2026-08-31 09:14:09
[2026-08-31 09:14:09,129.129 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:14:09,359.359 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:14:09,364.364 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:14:09,580.580 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:14:09,621.621 INFO    ] time= 31/08/2026 09:14:09
[2026-08-31 09:14:09,627.627 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:14:09,646.646 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:14:09,774.774 INFO    ] No existing commands found in stream
[2026-08-31 09:14:14,787.787 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:14:14,790.790 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-08-31 09:14:17,615.615 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 09:14:17,618.618 INFO    ] Checking for system updates...
[2026-08-31 09:14:17,654.654 INFO    ] 200
[2026-08-31 09:14:17,657.657 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:14:17,709.709 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:14:17,711.711 INFO    ] No update needed
[2026-08-31 09:14:17,714.714 INFO    ] Checking for camera pi updates...
[2026-08-31 09:14:17,749.749 INFO    ] 200
[2026-08-31 09:14:17,752.752 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:14:17,791.791 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:14:17,889.889 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:14:17,892.892 INFO    ] No camera update needed
[2026-08-31 09:14:17,894.894 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:14:17,896.896 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:14:17,902.902 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:14:17,907.907 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:14:19,948.948 INFO    ] ================================================
[2026-08-31 09:14:19,964.964 INFO    ] Launching Daemon at Mon Aug 31 09:14:19 IST 2026
[2026-08-31 09:14:19,975.975 INFO    ] ================================================
[2026-08-31 09:14:20,586.586 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:14:20
[2026-08-31 09:14:21,188.188 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:14:21,461.461 INFO    ] Initializing speech engine...
[2026-08-31 09:14:21,469.469 INFO    ] 2026-08-31 09:14:21
[2026-08-31 09:14:21,718.718 INFO    ] 2026-08-31 09:14:21
[2026-08-31 09:14:21,754.754 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:14:21,999.999 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:14:22,014.014 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:14:22,177.177 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:14:22,214.214 INFO    ] time= 31/08/2026 09:14:22
[2026-08-31 09:14:22,269.269 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:14:22,318.318 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:14:22,445.445 INFO    ] No existing commands found in stream
[2026-08-31 09:14:27,470.470 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:14:27,473.473 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-08-31 09:14:28,564.564 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 09:14:28,567.567 INFO    ] Checking for system updates...
[2026-08-31 09:14:28,610.610 INFO    ] 200
[2026-08-31 09:14:28,612.612 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:14:28,671.671 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:14:28,673.673 INFO    ] No update needed
[2026-08-31 09:14:28,676.676 INFO    ] Checking for camera pi updates...
[2026-08-31 09:14:28,713.713 INFO    ] 200
[2026-08-31 09:14:28,715.715 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:14:28,763.763 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:14:28,863.863 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:14:28,866.866 INFO    ] No camera update needed
[2026-08-31 09:14:28,868.868 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:14:28,871.871 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:14:28,876.876 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:14:28,881.881 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:14:30,923.923 INFO    ] ================================================
[2026-08-31 09:14:30,939.939 INFO    ] Launching Daemon at Mon Aug 31 09:14:30 IST 2026
[2026-08-31 09:14:30,950.950 INFO    ] ================================================
[2026-08-31 09:14:31,532.532 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:14:31
[2026-08-31 09:14:32,163.163 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:14:32,466.466 INFO    ] Initializing speech engine...
[2026-08-31 09:14:32,474.474 INFO    ] 2026-08-31 09:14:32
[2026-08-31 09:14:32,746.746 INFO    ] 2026-08-31 09:14:32
[2026-08-31 09:14:32,806.806 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:14:32,985.985 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:14:33,036.036 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:14:33,238.238 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:14:33,293.293 INFO    ] time= 31/08/2026 09:14:33
[2026-08-31 09:14:33,326.326 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:14:33,332.332 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:14:33,467.467 INFO    ] No existing commands found in stream
[2026-08-31 09:14:38,487.487 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:14:38,490.490 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-08-31 09:14:41,371.371 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 09:14:41,374.374 INFO    ] Checking for system updates...
[2026-08-31 09:14:41,410.410 INFO    ] 200
[2026-08-31 09:14:41,412.412 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:14:41,464.464 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:14:41,466.466 INFO    ] No update needed
[2026-08-31 09:14:41,469.469 INFO    ] Checking for camera pi updates...
[2026-08-31 09:14:41,503.503 INFO    ] 200
[2026-08-31 09:14:41,505.505 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:14:41,545.545 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:14:41,649.649 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:14:41,651.651 INFO    ] No camera update needed
[2026-08-31 09:14:41,654.654 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:14:41,656.656 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:14:41,662.662 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:14:41,667.667 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:14:43,706.706 INFO    ] ================================================
[2026-08-31 09:14:43,720.720 INFO    ] Launching Daemon at Mon Aug 31 09:14:43 IST 2026
[2026-08-31 09:14:43,731.731 INFO    ] ================================================
[2026-08-31 09:14:44,297.297 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:14:44
[2026-08-31 09:14:44,882.882 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:14:45,135.135 INFO    ] Initializing speech engine...
[2026-08-31 09:14:45,143.143 INFO    ] 2026-08-31 09:14:45
[2026-08-31 09:14:45,417.417 INFO    ] 2026-08-31 09:14:45
[2026-08-31 09:14:45,452.452 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:14:45,717.717 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:14:45,721.721 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:14:45,936.936 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:14:45,985.985 INFO    ] time= 31/08/2026 09:14:45
[2026-08-31 09:14:45,991.991 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:14:46,009.009 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:14:46,123.123 INFO    ] No existing commands found in stream
[2026-08-31 09:14:51,148.148 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:14:51,151.151 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-08-31 09:14:53,445.445 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 09:14:53,447.447 INFO    ] Checking for system updates...
[2026-08-31 09:14:53,484.484 INFO    ] 200
[2026-08-31 09:14:53,486.486 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:14:53,545.545 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:14:53,548.548 INFO    ] No update needed
[2026-08-31 09:14:53,552.552 INFO    ] Checking for camera pi updates...
[2026-08-31 09:14:53,586.586 INFO    ] 200
[2026-08-31 09:14:53,589.589 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:14:53,632.632 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:14:53,728.728 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:14:53,731.731 INFO    ] No camera update needed
[2026-08-31 09:14:53,733.733 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:14:53,735.735 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:14:53,741.741 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:14:53,746.746 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:14:55,785.785 INFO    ] ================================================
[2026-08-31 09:14:55,801.801 INFO    ] Launching Daemon at Mon Aug 31 09:14:55 IST 2026
[2026-08-31 09:14:55,811.811 INFO    ] ================================================
[2026-08-31 09:14:56,377.377 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:14:56
[2026-08-31 09:14:56,957.957 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:14:57,224.224 INFO    ] Initializing speech engine...
[2026-08-31 09:14:57,234.234 INFO    ] 2026-08-31 09:14:57
[2026-08-31 09:14:57,485.485 INFO    ] 2026-08-31 09:14:57
[2026-08-31 09:14:57,544.544 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:14:57,765.765 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:14:57,774.774 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:14:57,906.906 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:14:57,927.927 INFO    ] time= 31/08/2026 09:14:57
[2026-08-31 09:14:57,986.986 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:14:58,039.039 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:14:58,176.176 INFO    ] No existing commands found in stream
[2026-08-31 09:15:03,195.195 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:15:03,199.199 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-08-31 09:15:07,411.411 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 09:15:07,413.413 INFO    ] Checking for system updates...
[2026-08-31 09:15:07,452.452 INFO    ] 200
[2026-08-31 09:15:07,454.454 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:15:07,507.507 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:15:07,509.509 INFO    ] No update needed
[2026-08-31 09:15:07,512.512 INFO    ] Checking for camera pi updates...
[2026-08-31 09:15:07,545.545 INFO    ] 200
[2026-08-31 09:15:07,547.547 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:15:07,588.588 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:15:07,667.667 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:15:07,670.670 INFO    ] No camera update needed
[2026-08-31 09:15:07,672.672 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:15:07,674.674 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:15:07,679.679 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:15:07,684.684 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:15:09,724.724 INFO    ] ================================================
[2026-08-31 09:15:09,739.739 INFO    ] Launching Daemon at Mon Aug 31 09:15:09 IST 2026
[2026-08-31 09:15:09,750.750 INFO    ] ================================================
[2026-08-31 09:15:10,340.340 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:15:10
[2026-08-31 09:15:10,941.941 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:15:11,214.214 INFO    ] Initializing speech engine...
[2026-08-31 09:15:11,223.223 INFO    ] 2026-08-31 09:15:11
[2026-08-31 09:15:11,486.486 INFO    ] 2026-08-31 09:15:11
[2026-08-31 09:15:11,540.540 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:15:11,767.767 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:15:11,773.773 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:15:11,976.976 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:15:12,028.028 INFO    ] time= 31/08/2026 09:15:11
[2026-08-31 09:15:12,035.035 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:15:12,053.053 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:15:12,181.181 INFO    ] No existing commands found in stream
[2026-08-31 09:15:17,194.194 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:15:17,197.197 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-08-31 09:15:21,629.629 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 09:15:21,632.632 INFO    ] Checking for system updates...
[2026-08-31 09:15:21,667.667 INFO    ] 200
[2026-08-31 09:15:21,670.670 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:15:21,728.728 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:15:21,731.731 INFO    ] No update needed
[2026-08-31 09:15:21,733.733 INFO    ] Checking for camera pi updates...
[2026-08-31 09:15:21,767.767 INFO    ] 200
[2026-08-31 09:15:21,770.770 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:15:21,810.810 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:15:21,892.892 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:15:21,894.894 INFO    ] No camera update needed
[2026-08-31 09:15:21,896.896 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:15:21,899.899 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:15:21,904.904 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:15:21,909.909 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:15:23,950.950 INFO    ] ================================================
[2026-08-31 09:15:23,966.966 INFO    ] Launching Daemon at Mon Aug 31 09:15:23 IST 2026
[2026-08-31 09:15:23,976.976 INFO    ] ================================================
[2026-08-31 09:15:24,554.554 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:15:24
[2026-08-31 09:15:25,150.150 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:15:25,410.410 INFO    ] Initializing speech engine...
[2026-08-31 09:15:25,426.426 INFO    ] 2026-08-31 09:15:25
[2026-08-31 09:15:25,680.680 INFO    ] 2026-08-31 09:15:25
[2026-08-31 09:15:25,715.715 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:15:25,966.966 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:15:25,975.975 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:15:26,177.177 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:15:26,231.231 INFO    ] time= 31/08/2026 09:15:26
[2026-08-31 09:15:26,237.237 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:15:26,252.252 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:15:26,376.376 INFO    ] No existing commands found in stream
[2026-08-31 09:15:31,397.397 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:15:31,400.400 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-08-31 09:15:32,178.178 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 09:15:32,181.181 INFO    ] Checking for system updates...
[2026-08-31 09:15:32,221.221 INFO    ] 200
[2026-08-31 09:15:32,224.224 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:15:32,287.287 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:15:32,290.290 INFO    ] No update needed
[2026-08-31 09:15:32,293.293 INFO    ] Checking for camera pi updates...
[2026-08-31 09:15:32,338.338 INFO    ] 200
[2026-08-31 09:15:32,341.341 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:15:32,385.385 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:15:32,442.442 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:15:32,445.445 INFO    ] No camera update needed
[2026-08-31 09:15:32,449.449 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:15:32,452.452 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:15:32,459.459 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:15:32,465.465 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:15:34,506.506 INFO    ] ================================================
[2026-08-31 09:15:34,521.521 INFO    ] Launching Daemon at Mon Aug 31 09:15:34 IST 2026
[2026-08-31 09:15:34,532.532 INFO    ] ================================================
[2026-08-31 09:15:35,111.111 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:15:35
[2026-08-31 09:15:35,708.708 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:15:35,970.970 INFO    ] Initializing speech engine...
[2026-08-31 09:15:35,988.988 INFO    ] 2026-08-31 09:15:35
[2026-08-31 09:15:36,244.244 INFO    ] 2026-08-31 09:15:36
[2026-08-31 09:15:36,305.305 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:15:36,588.588 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:15:36,595.595 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:15:36,790.790 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:15:36,809.809 INFO    ] time= 31/08/2026 09:15:36
[2026-08-31 09:15:36,834.834 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:15:36,846.846 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:15:36,959.959 INFO    ] No existing commands found in stream
[2026-08-31 09:15:41,983.983 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:15:41,986.986 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-08-31 09:15:46,010.010 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 09:15:46,013.013 INFO    ] Checking for system updates...
[2026-08-31 09:15:46,049.049 INFO    ] 200
[2026-08-31 09:15:46,052.052 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:15:46,114.114 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:15:46,117.117 INFO    ] No update needed
[2026-08-31 09:15:46,119.119 INFO    ] Checking for camera pi updates...
[2026-08-31 09:15:46,153.153 INFO    ] 200
[2026-08-31 09:15:46,155.155 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:15:46,195.195 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:15:46,284.284 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:15:46,286.286 INFO    ] No camera update needed
[2026-08-31 09:15:46,289.289 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:15:46,291.291 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:15:46,296.296 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:15:46,302.302 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:15:48,343.343 INFO    ] ================================================
[2026-08-31 09:15:48,359.359 INFO    ] Launching Daemon at Mon Aug 31 09:15:48 IST 2026
[2026-08-31 09:15:48,370.370 INFO    ] ================================================
[2026-08-31 09:15:48,940.940 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:15:48
[2026-08-31 09:15:49,522.522 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:15:49,802.802 INFO    ] Initializing speech engine...
[2026-08-31 09:15:49,811.811 INFO    ] 2026-08-31 09:15:49
[2026-08-31 09:15:50,074.074 INFO    ] 2026-08-31 09:15:50
[2026-08-31 09:15:50,111.111 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:15:50,332.332 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:15:50,396.396 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:15:50,615.615 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:15:50,644.644 INFO    ] time= 31/08/2026 09:15:50
[2026-08-31 09:15:50,694.694 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:15:50,701.701 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:15:50,828.828 INFO    ] No existing commands found in stream
[2026-08-31 09:15:55,853.853 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:15:55,856.856 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-08-31 09:16:00,131.131 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 09:16:00,133.133 INFO    ] Checking for system updates...
[2026-08-31 09:16:00,171.171 INFO    ] 200
[2026-08-31 09:16:00,174.174 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:16:00,225.225 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:16:00,228.228 INFO    ] No update needed
[2026-08-31 09:16:00,231.231 INFO    ] Checking for camera pi updates...
[2026-08-31 09:16:00,264.264 INFO    ] 200
[2026-08-31 09:16:00,266.266 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:16:00,310.310 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:16:00,416.416 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:16:00,419.419 INFO    ] No camera update needed
[2026-08-31 09:16:00,421.421 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:16:00,423.423 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:16:00,429.429 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:16:00,433.433 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:16:02,478.478 INFO    ] ================================================
[2026-08-31 09:16:02,499.499 INFO    ] Launching Daemon at Mon Aug 31 09:16:02 IST 2026
[2026-08-31 09:16:02,514.514 INFO    ] ================================================
[2026-08-31 09:16:03,174.174 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:16:03
[2026-08-31 09:16:03,826.826 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:16:04,083.083 INFO    ] Initializing speech engine...
[2026-08-31 09:16:04,090.090 INFO    ] 2026-08-31 09:16:04
[2026-08-31 09:16:04,380.380 INFO    ] 2026-08-31 09:16:04
[2026-08-31 09:16:04,419.419 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:16:04,646.646 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:16:04,706.706 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:16:04,865.865 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:16:04,905.905 INFO    ] time= 31/08/2026 09:16:04
[2026-08-31 09:16:04,964.964 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:16:05,009.009 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:16:05,148.148 INFO    ] No existing commands found in stream
[2026-08-31 09:16:10,173.173 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:16:10,176.176 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-08-31 09:16:14,415.415 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 09:16:14,417.417 INFO    ] Checking for system updates...
[2026-08-31 09:16:14,456.456 INFO    ] 200
[2026-08-31 09:16:14,459.459 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:16:14,510.510 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:16:14,513.513 INFO    ] No update needed
[2026-08-31 09:16:14,515.515 INFO    ] Checking for camera pi updates...
[2026-08-31 09:16:14,548.548 INFO    ] 200
[2026-08-31 09:16:14,550.550 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:16:14,596.596 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:16:14,678.678 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:16:14,680.680 INFO    ] No camera update needed
[2026-08-31 09:16:14,683.683 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:16:14,685.685 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:16:14,690.690 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:16:14,695.695 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:16:16,738.738 INFO    ] ================================================
[2026-08-31 09:16:16,754.754 INFO    ] Launching Daemon at Mon Aug 31 09:16:16 IST 2026
[2026-08-31 09:16:16,765.765 INFO    ] ================================================
[2026-08-31 09:16:17,401.401 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:16:17
[2026-08-31 09:16:18,058.058 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:16:18,355.355 INFO    ] Initializing speech engine...
[2026-08-31 09:16:18,363.363 INFO    ] 2026-08-31 09:16:18
[2026-08-31 09:16:18,645.645 INFO    ] 2026-08-31 09:16:18
[2026-08-31 09:16:18,689.689 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:16:18,972.972 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:16:18,978.978 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:16:19,175.175 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:16:19,182.182 INFO    ] time= 31/08/2026 09:16:19
[2026-08-31 09:16:19,203.203 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:16:19,231.231 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:16:19,362.362 INFO    ] No existing commands found in stream
[2026-08-31 09:16:24,393.393 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:16:24,396.396 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-08-31 09:16:27,382.382 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 09:16:27,385.385 INFO    ] Checking for system updates...
[2026-08-31 09:16:27,425.425 INFO    ] 200
[2026-08-31 09:16:27,428.428 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:16:27,481.481 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:16:27,484.484 INFO    ] No update needed
[2026-08-31 09:16:27,486.486 INFO    ] Checking for camera pi updates...
[2026-08-31 09:16:27,520.520 INFO    ] 200
[2026-08-31 09:16:27,523.523 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:16:27,565.565 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:16:27,667.667 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:16:27,670.670 INFO    ] No camera update needed
[2026-08-31 09:16:27,672.672 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:16:27,675.675 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:16:27,681.681 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:16:27,687.687 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:16:29,731.731 INFO    ] ================================================
[2026-08-31 09:16:29,746.746 INFO    ] Launching Daemon at Mon Aug 31 09:16:29 IST 2026
[2026-08-31 09:16:29,758.758 INFO    ] ================================================
[2026-08-31 09:16:30,323.323 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:16:30
[2026-08-31 09:16:30,906.906 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:16:31,155.155 INFO    ] Initializing speech engine...
[2026-08-31 09:16:31,168.168 INFO    ] 2026-08-31 09:16:31
[2026-08-31 09:16:31,433.433 INFO    ] 2026-08-31 09:16:31
[2026-08-31 09:16:31,467.467 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:16:31,666.666 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:16:31,711.711 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:16:31,905.905 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:16:31,955.955 INFO    ] time= 31/08/2026 09:16:31
[2026-08-31 09:16:31,999.999 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:16:32,027.027 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:16:32,173.173 INFO    ] No existing commands found in stream
[2026-08-31 09:16:37,200.200 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:16:37,203.203 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-08-31 09:16:41,384.384 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 09:16:41,387.387 INFO    ] Checking for system updates...
[2026-08-31 09:16:41,423.423 INFO    ] 200
[2026-08-31 09:16:41,426.426 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:16:41,485.485 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:16:41,488.488 INFO    ] No update needed
[2026-08-31 09:16:41,491.491 INFO    ] Checking for camera pi updates...
[2026-08-31 09:16:41,525.525 INFO    ] 200
[2026-08-31 09:16:41,528.528 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:16:41,570.570 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:16:41,655.655 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:16:41,658.658 INFO    ] No camera update needed
[2026-08-31 09:16:41,660.660 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:16:41,663.663 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:16:41,669.669 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:16:41,675.675 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:16:43,716.716 INFO    ] ================================================
[2026-08-31 09:16:43,732.732 INFO    ] Launching Daemon at Mon Aug 31 09:16:43 IST 2026
[2026-08-31 09:16:43,743.743 INFO    ] ================================================
[2026-08-31 09:16:44,321.321 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:16:44
[2026-08-31 09:16:44,917.917 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:16:45,193.193 INFO    ] Initializing speech engine...
[2026-08-31 09:16:45,201.201 INFO    ] 2026-08-31 09:16:45
[2026-08-31 09:16:45,458.458 INFO    ] 2026-08-31 09:16:45
[2026-08-31 09:16:45,488.488 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:16:45,735.735 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:16:45,742.742 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:16:45,873.873 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:16:45,933.933 INFO    ] time= 31/08/2026 09:16:45
[2026-08-31 09:16:45,987.987 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:16:46,004.004 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:16:46,147.147 INFO    ] No existing commands found in stream
[2026-08-31 09:16:51,161.161 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:16:51,164.164 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-08-31 09:16:52,245.245 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 09:16:52,247.247 INFO    ] Checking for system updates...
[2026-08-31 09:16:52,288.288 INFO    ] 200
[2026-08-31 09:16:52,291.291 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:16:52,349.349 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:16:52,352.352 INFO    ] No update needed
[2026-08-31 09:16:52,355.355 INFO    ] Checking for camera pi updates...
[2026-08-31 09:16:52,391.391 INFO    ] 200
[2026-08-31 09:16:52,394.394 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:16:52,439.439 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:16:52,519.519 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:16:52,522.522 INFO    ] No camera update needed
[2026-08-31 09:16:52,525.525 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:16:52,528.528 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:16:52,534.534 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:16:52,539.539 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:16:54,584.584 INFO    ] ================================================
[2026-08-31 09:16:54,600.600 INFO    ] Launching Daemon at Mon Aug 31 09:16:54 IST 2026
[2026-08-31 09:16:54,611.611 INFO    ] ================================================
[2026-08-31 09:16:55,270.270 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:16:55
[2026-08-31 09:16:55,941.941 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:16:56,241.241 INFO    ] Initializing speech engine...
[2026-08-31 09:16:56,252.252 INFO    ] 2026-08-31 09:16:56
[2026-08-31 09:16:56,527.527 INFO    ] 2026-08-31 09:16:56
[2026-08-31 09:16:56,590.590 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:16:56,816.816 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:16:56,827.827 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:16:56,979.979 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:16:57,034.034 INFO    ] time= 31/08/2026 09:16:56
[2026-08-31 09:16:57,089.089 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:16:57,101.101 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:16:57,253.253 INFO    ] No existing commands found in stream
[2026-08-31 09:17:02,277.277 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:17:02,282.282 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-08-31 09:17:02,909.909 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 09:17:02,912.912 INFO    ] Checking for system updates...
[2026-08-31 09:17:02,953.953 INFO    ] 200
[2026-08-31 09:17:02,956.956 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:17:03,015.015 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:17:03,018.018 INFO    ] No update needed
[2026-08-31 09:17:03,021.021 INFO    ] Checking for camera pi updates...
[2026-08-31 09:17:03,062.062 INFO    ] 200
[2026-08-31 09:17:03,065.065 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:17:03,122.122 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:17:03,208.208 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:17:03,211.211 INFO    ] No camera update needed
[2026-08-31 09:17:03,215.215 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:17:03,218.218 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:17:03,226.226 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:17:03,236.236 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:17:05,279.279 INFO    ] ================================================
[2026-08-31 09:17:05,295.295 INFO    ] Launching Daemon at Mon Aug 31 09:17:05 IST 2026
[2026-08-31 09:17:05,306.306 INFO    ] ================================================
[2026-08-31 09:17:05,872.872 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:17:05
[2026-08-31 09:17:06,456.456 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:17:06,722.722 INFO    ] Initializing speech engine...
[2026-08-31 09:17:06,732.732 INFO    ] 2026-08-31 09:17:06
[2026-08-31 09:17:07,031.031 INFO    ] 2026-08-31 09:17:07
[2026-08-31 09:17:07,069.069 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:17:07,326.326 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:17:07,362.362 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:17:07,507.507 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:17:07,567.567 INFO    ] time= 31/08/2026 09:17:07
[2026-08-31 09:17:07,626.626 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:17:07,636.636 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:17:07,771.771 INFO    ] No existing commands found in stream
[2026-08-31 09:17:12,789.789 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:17:12,792.792 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-08-31 09:17:15,861.861 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 09:17:15,863.863 INFO    ] Checking for system updates...
[2026-08-31 09:17:15,899.899 INFO    ] 200
[2026-08-31 09:17:15,901.901 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:17:15,957.957 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:17:15,960.960 INFO    ] No update needed
[2026-08-31 09:17:15,962.962 INFO    ] Checking for camera pi updates...
[2026-08-31 09:17:15,995.995 INFO    ] 200
[2026-08-31 09:17:15,998.998 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:17:16,046.046 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:17:16,246.246 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:17:16,248.248 INFO    ] No camera update needed
[2026-08-31 09:17:16,251.251 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:17:16,253.253 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:17:16,259.259 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:17:16,264.264 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:17:18,305.305 INFO    ] ================================================
[2026-08-31 09:17:18,320.320 INFO    ] Launching Daemon at Mon Aug 31 09:17:18 IST 2026
[2026-08-31 09:17:18,331.331 INFO    ] ================================================
[2026-08-31 09:17:18,937.937 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:17:18
[2026-08-31 09:17:19,537.537 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:17:19,814.814 INFO    ] Initializing speech engine...
[2026-08-31 09:17:19,821.821 INFO    ] 2026-08-31 09:17:19
[2026-08-31 09:17:20,082.082 INFO    ] 2026-08-31 09:17:20
[2026-08-31 09:17:20,135.135 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:17:20,363.363 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:17:20,369.369 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:17:20,581.581 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:17:20,627.627 INFO    ] time= 31/08/2026 09:17:20
[2026-08-31 09:17:20,633.633 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:17:20,652.652 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:17:20,778.778 INFO    ] No existing commands found in stream
[2026-08-31 09:17:25,793.793 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:17:25,796.796 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-08-31 09:17:30,260.260 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 09:17:30,263.263 INFO    ] Checking for system updates...
[2026-08-31 09:17:30,299.299 INFO    ] 200
[2026-08-31 09:17:30,301.301 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:17:30,358.358 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:17:30,361.361 INFO    ] No update needed
[2026-08-31 09:17:30,363.363 INFO    ] Checking for camera pi updates...
[2026-08-31 09:17:30,396.396 INFO    ] 200
[2026-08-31 09:17:30,398.398 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:17:30,439.439 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:17:30,517.517 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:17:30,520.520 INFO    ] No camera update needed
[2026-08-31 09:17:30,522.522 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:17:30,525.525 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:17:30,530.530 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:17:30,535.535 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:17:32,576.576 INFO    ] ================================================
[2026-08-31 09:17:32,593.593 INFO    ] Launching Daemon at Mon Aug 31 09:17:32 IST 2026
[2026-08-31 09:17:32,604.604 INFO    ] ================================================
[2026-08-31 09:17:33,210.210 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:17:33
[2026-08-31 09:17:33,821.821 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:17:34,121.121 INFO    ] Initializing speech engine...
[2026-08-31 09:17:34,126.126 INFO    ] 2026-08-31 09:17:34
[2026-08-31 09:17:34,426.426 INFO    ] 2026-08-31 09:17:34
[2026-08-31 09:17:34,537.537 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:17:34,721.721 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:17:34,740.740 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:17:34,935.935 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:17:34,970.970 INFO    ] time= 31/08/2026 09:17:34
[2026-08-31 09:17:34,989.989 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:17:35,019.019 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:17:35,172.172 INFO    ] No existing commands found in stream
[2026-08-31 09:17:40,198.198 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:17:40,201.201 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-08-31 09:17:44,347.347 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 09:17:44,350.350 INFO    ] Checking for system updates...
[2026-08-31 09:17:44,386.386 INFO    ] 200
[2026-08-31 09:17:44,389.389 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:17:44,459.459 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:17:44,462.462 INFO    ] No update needed
[2026-08-31 09:17:44,464.464 INFO    ] Checking for camera pi updates...
[2026-08-31 09:17:44,501.501 INFO    ] 200
[2026-08-31 09:17:44,503.503 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:17:44,543.543 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:17:44,651.651 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:17:44,654.654 INFO    ] No camera update needed
[2026-08-31 09:17:44,656.656 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:17:44,658.658 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:17:44,664.664 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:17:44,669.669 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:17:46,709.709 INFO    ] ================================================
[2026-08-31 09:17:46,725.725 INFO    ] Launching Daemon at Mon Aug 31 09:17:46 IST 2026
[2026-08-31 09:17:46,735.735 INFO    ] ================================================
[2026-08-31 09:17:47,375.375 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:17:47
[2026-08-31 09:17:48,033.033 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:17:48,332.332 INFO    ] Initializing speech engine...
[2026-08-31 09:17:48,345.345 INFO    ] 2026-08-31 09:17:48
[2026-08-31 09:17:48,655.655 INFO    ] 2026-08-31 09:17:48
[2026-08-31 09:17:48,736.736 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:17:49,013.013 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:17:49,060.060 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:17:49,271.271 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:17:49,317.317 INFO    ] time= 31/08/2026 09:17:49
[2026-08-31 09:17:49,372.372 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:17:49,408.408 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:17:49,590.590 INFO    ] No existing commands found in stream
[2026-08-31 09:17:54,600.600 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:17:54,603.603 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-08-31 09:17:56,507.507 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 09:17:56,510.510 INFO    ] Checking for system updates...
[2026-08-31 09:17:56,547.547 INFO    ] 200
[2026-08-31 09:17:56,550.550 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:17:56,603.603 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:17:56,605.605 INFO    ] No update needed
[2026-08-31 09:17:56,608.608 INFO    ] Checking for camera pi updates...
[2026-08-31 09:17:56,646.646 INFO    ] 200
[2026-08-31 09:17:56,648.648 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:17:56,700.700 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:17:56,782.782 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:17:56,785.785 INFO    ] No camera update needed
[2026-08-31 09:17:56,787.787 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:17:56,789.789 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:17:56,795.795 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:17:56,800.800 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:17:58,841.841 INFO    ] ================================================
[2026-08-31 09:17:58,856.856 INFO    ] Launching Daemon at Mon Aug 31 09:17:58 IST 2026
[2026-08-31 09:17:58,866.866 INFO    ] ================================================
[2026-08-31 09:17:59,430.430 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:17:59
[2026-08-31 09:18:00,014.014 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:18:00,268.268 INFO    ] Initializing speech engine...
[2026-08-31 09:18:00,283.283 INFO    ] 2026-08-31 09:18:00
[2026-08-31 09:18:00,560.560 INFO    ] 2026-08-31 09:18:00
[2026-08-31 09:18:00,596.596 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:18:00,786.786 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:18:00,802.802 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:18:00,966.966 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:18:00,973.973 INFO    ] time= 31/08/2026 09:18:00
[2026-08-31 09:18:01,020.020 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:18:01,046.046 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:18:01,176.176 INFO    ] No existing commands found in stream
[2026-08-31 09:18:06,197.197 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:18:06,200.200 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-08-31 09:18:10,550.550 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 09:18:10,552.552 INFO    ] Checking for system updates...
[2026-08-31 09:18:10,589.589 INFO    ] 200
[2026-08-31 09:18:10,591.591 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:18:10,643.643 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:18:10,645.645 INFO    ] No update needed
[2026-08-31 09:18:10,648.648 INFO    ] Checking for camera pi updates...
[2026-08-31 09:18:10,682.682 INFO    ] 200
[2026-08-31 09:18:10,685.685 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:18:10,730.730 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:18:10,804.804 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:18:10,806.806 INFO    ] No camera update needed
[2026-08-31 09:18:10,809.809 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:18:10,811.811 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:18:10,816.816 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:18:10,822.822 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:18:12,862.862 INFO    ] ================================================
[2026-08-31 09:18:12,877.877 INFO    ] Launching Daemon at Mon Aug 31 09:18:12 IST 2026
[2026-08-31 09:18:12,887.887 INFO    ] ================================================
[2026-08-31 09:18:13,460.460 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:18:13
[2026-08-31 09:18:14,052.052 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:18:14,313.313 INFO    ] Initializing speech engine...
[2026-08-31 09:18:14,326.326 INFO    ] 2026-08-31 09:18:14
[2026-08-31 09:18:14,595.595 INFO    ] 2026-08-31 09:18:14
[2026-08-31 09:18:14,625.625 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:18:14,826.826 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:18:14,839.839 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:18:15,047.047 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:18:15,069.069 INFO    ] time= 31/08/2026 09:18:15
[2026-08-31 09:18:15,135.135 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:18:15,180.180 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:18:15,304.304 INFO    ] No existing commands found in stream
[2026-08-31 09:18:20,330.330 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:18:20,332.332 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-08-31 09:18:23,687.687 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 09:18:23,690.690 INFO    ] Checking for system updates...
[2026-08-31 09:18:23,727.727 INFO    ] 200
[2026-08-31 09:18:23,730.730 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:18:23,782.782 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:18:23,785.785 INFO    ] No update needed
[2026-08-31 09:18:23,788.788 INFO    ] Checking for camera pi updates...
[2026-08-31 09:18:23,827.827 INFO    ] 200
[2026-08-31 09:18:23,830.830 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:18:23,872.872 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:18:23,958.958 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:18:23,961.961 INFO    ] No camera update needed
[2026-08-31 09:18:23,963.963 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:18:23,966.966 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:18:23,972.972 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:18:23,978.978 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:18:26,019.019 INFO    ] ================================================
[2026-08-31 09:18:26,034.034 INFO    ] Launching Daemon at Mon Aug 31 09:18:26 IST 2026
[2026-08-31 09:18:26,045.045 INFO    ] ================================================
[2026-08-31 09:18:26,610.610 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:18:26
[2026-08-31 09:18:27,192.192 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:18:27,442.442 INFO    ] Initializing speech engine...
[2026-08-31 09:18:27,449.449 INFO    ] 2026-08-31 09:18:27
[2026-08-31 09:18:27,748.748 INFO    ] 2026-08-31 09:18:27
[2026-08-31 09:18:27,786.786 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:18:28,014.014 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:18:28,022.022 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:18:28,165.165 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:18:28,174.174 INFO    ] time= 31/08/2026 09:18:28
[2026-08-31 09:18:28,181.181 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:18:28,203.203 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:18:28,351.351 INFO    ] No existing commands found in stream
[2026-08-31 09:18:33,379.379 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:18:33,382.382 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-08-31 09:18:36,743.743 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 09:18:36,745.745 INFO    ] Checking for system updates...
[2026-08-31 09:18:36,781.781 INFO    ] 200
[2026-08-31 09:18:36,783.783 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:18:36,842.842 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:18:36,845.845 INFO    ] No update needed
[2026-08-31 09:18:36,847.847 INFO    ] Checking for camera pi updates...
[2026-08-31 09:18:36,884.884 INFO    ] 200
[2026-08-31 09:18:36,887.887 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:18:36,932.932 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:18:37,021.021 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:18:37,023.023 INFO    ] No camera update needed
[2026-08-31 09:18:37,025.025 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:18:37,028.028 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:18:37,033.033 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:18:37,038.038 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:18:39,077.077 INFO    ] ================================================
[2026-08-31 09:18:39,092.092 INFO    ] Launching Daemon at Mon Aug 31 09:18:39 IST 2026
[2026-08-31 09:18:39,103.103 INFO    ] ================================================
[2026-08-31 09:18:39,682.682 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:18:39
[2026-08-31 09:18:40,280.280 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:18:40,551.551 INFO    ] Initializing speech engine...
[2026-08-31 09:18:40,560.560 INFO    ] 2026-08-31 09:18:40
[2026-08-31 09:18:40,808.808 INFO    ] 2026-08-31 09:18:40
[2026-08-31 09:18:40,843.843 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:18:41,100.100 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:18:41,105.105 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:18:41,337.337 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:18:41,363.363 INFO    ] time= 31/08/2026 09:18:41
[2026-08-31 09:18:41,380.380 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:18:41,390.390 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:18:41,512.512 INFO    ] No existing commands found in stream
[2026-08-31 09:18:46,528.528 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:18:46,530.530 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-08-31 09:18:50,221.221 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 09:18:50,224.224 INFO    ] Checking for system updates...
[2026-08-31 09:18:50,263.263 INFO    ] 200
[2026-08-31 09:18:50,265.265 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:18:50,317.317 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:18:50,319.319 INFO    ] No update needed
[2026-08-31 09:18:50,322.322 INFO    ] Checking for camera pi updates...
[2026-08-31 09:18:50,355.355 INFO    ] 200
[2026-08-31 09:18:50,358.358 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:18:50,403.403 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:18:50,500.500 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:18:50,503.503 INFO    ] No camera update needed
[2026-08-31 09:18:50,505.505 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:18:50,507.507 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:18:50,513.513 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:18:50,518.518 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:18:52,558.558 INFO    ] ================================================
[2026-08-31 09:18:52,573.573 INFO    ] Launching Daemon at Mon Aug 31 09:18:52 IST 2026
[2026-08-31 09:18:52,584.584 INFO    ] ================================================
[2026-08-31 09:18:53,151.151 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:18:53
[2026-08-31 09:18:53,734.734 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:18:53,984.984 INFO    ] Initializing speech engine...
[2026-08-31 09:18:54,007.007 INFO    ] 2026-08-31 09:18:53
[2026-08-31 09:18:54,262.262 INFO    ] 2026-08-31 09:18:54
[2026-08-31 09:18:54,296.296 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:18:54,496.496 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:18:54,518.518 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:18:54,700.700 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:18:54,711.711 INFO    ] time= 31/08/2026 09:18:54
[2026-08-31 09:18:54,771.771 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:18:54,820.820 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:18:54,896.896 INFO    ] No existing commands found in stream
[2026-08-31 09:18:59,908.908 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:18:59,910.910 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-08-31 09:19:03,213.213 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 09:19:03,216.216 INFO    ] Checking for system updates...
[2026-08-31 09:19:03,265.265 INFO    ] 200
[2026-08-31 09:19:03,270.270 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:19:03,343.343 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:19:03,345.345 INFO    ] No update needed
[2026-08-31 09:19:03,348.348 INFO    ] Checking for camera pi updates...
[2026-08-31 09:19:03,385.385 INFO    ] 200
[2026-08-31 09:19:03,388.388 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:19:03,435.435 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:19:03,503.503 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:19:03,506.506 INFO    ] No camera update needed
[2026-08-31 09:19:03,508.508 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:19:03,511.511 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:19:03,516.516 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:19:03,521.521 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:19:05,561.561 INFO    ] ================================================
[2026-08-31 09:19:05,576.576 INFO    ] Launching Daemon at Mon Aug 31 09:19:05 IST 2026
[2026-08-31 09:19:05,586.586 INFO    ] ================================================
[2026-08-31 09:19:06,152.152 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:19:06
[2026-08-31 09:19:06,739.739 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:19:07,031.031 INFO    ] Initializing speech engine...
[2026-08-31 09:19:07,038.038 INFO    ] 2026-08-31 09:19:07
[2026-08-31 09:19:07,300.300 INFO    ] 2026-08-31 09:19:07
[2026-08-31 09:19:07,353.353 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:19:07,579.579 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:19:07,584.584 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:19:07,764.764 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:19:07,824.824 INFO    ] time= 31/08/2026 09:19:07
[2026-08-31 09:19:07,848.848 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:19:07,862.862 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:19:07,975.975 INFO    ] No existing commands found in stream
[2026-08-31 09:19:13,002.002 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:19:13,005.005 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-08-31 09:19:14,024.024 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 09:19:14,026.026 INFO    ] Checking for system updates...
[2026-08-31 09:19:14,067.067 INFO    ] 200
[2026-08-31 09:19:14,071.071 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:19:14,132.132 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:19:14,135.135 INFO    ] No update needed
[2026-08-31 09:19:14,138.138 INFO    ] Checking for camera pi updates...
[2026-08-31 09:19:14,172.172 INFO    ] 200
[2026-08-31 09:19:14,175.175 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:19:14,216.216 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:19:14,298.298 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:19:14,300.300 INFO    ] No camera update needed
[2026-08-31 09:19:14,303.303 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:19:14,306.306 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:19:14,312.312 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:19:14,318.318 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:19:16,359.359 INFO    ] ================================================
[2026-08-31 09:19:16,374.374 INFO    ] Launching Daemon at Mon Aug 31 09:19:16 IST 2026
[2026-08-31 09:19:16,385.385 INFO    ] ================================================
[2026-08-31 09:19:17,059.059 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:19:17
[2026-08-31 09:19:17,686.686 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:19:17,963.963 INFO    ] Initializing speech engine...
[2026-08-31 09:19:17,969.969 INFO    ] 2026-08-31 09:19:17
[2026-08-31 09:19:18,218.218 INFO    ] 2026-08-31 09:19:18
[2026-08-31 09:19:18,254.254 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:19:18,509.509 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:19:18,515.515 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:19:18,727.727 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:19:18,772.772 INFO    ] time= 31/08/2026 09:19:18
[2026-08-31 09:19:18,779.779 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:19:18,799.799 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:19:18,926.926 INFO    ] No existing commands found in stream
[2026-08-31 09:19:23,939.939 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:19:23,942.942 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-08-31 09:19:26,685.685 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 09:19:26,688.688 INFO    ] Checking for system updates...
[2026-08-31 09:19:26,724.724 INFO    ] 200
[2026-08-31 09:19:26,727.727 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:19:26,780.780 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:19:26,783.783 INFO    ] No update needed
[2026-08-31 09:19:26,786.786 INFO    ] Checking for camera pi updates...
[2026-08-31 09:19:26,824.824 INFO    ] 200
[2026-08-31 09:19:26,827.827 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:19:26,869.869 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:19:27,054.054 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:19:27,057.057 INFO    ] No camera update needed
[2026-08-31 09:19:27,060.060 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:19:27,063.063 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:19:27,069.069 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:19:27,075.075 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:19:29,116.116 INFO    ] ================================================
[2026-08-31 09:19:29,131.131 INFO    ] Launching Daemon at Mon Aug 31 09:19:29 IST 2026
[2026-08-31 09:19:29,142.142 INFO    ] ================================================
[2026-08-31 09:19:29,725.725 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:19:29
[2026-08-31 09:19:30,328.328 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:19:30,604.604 INFO    ] Initializing speech engine...
[2026-08-31 09:19:30,614.614 INFO    ] 2026-08-31 09:19:30
[2026-08-31 09:19:30,863.863 INFO    ] 2026-08-31 09:19:30
[2026-08-31 09:19:30,898.898 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:19:31,150.150 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:19:31,159.159 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:19:31,382.382 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:19:31,419.419 INFO    ] time= 31/08/2026 09:19:31
[2026-08-31 09:19:31,433.433 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:19:31,443.443 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:19:31,592.592 INFO    ] No existing commands found in stream
[2026-08-31 09:19:36,622.622 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:19:36,625.625 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-08-31 09:19:39,103.103 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 09:19:39,106.106 INFO    ] Checking for system updates...
[2026-08-31 09:19:39,143.143 INFO    ] 200
[2026-08-31 09:19:39,145.145 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:19:39,205.205 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:19:39,209.209 INFO    ] No update needed
[2026-08-31 09:19:39,212.212 INFO    ] Checking for camera pi updates...
[2026-08-31 09:19:39,246.246 INFO    ] 200
[2026-08-31 09:19:39,249.249 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:19:39,295.295 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:19:39,378.378 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:19:39,381.381 INFO    ] No camera update needed
[2026-08-31 09:19:39,383.383 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:19:39,385.385 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:19:39,391.391 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:19:39,396.396 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:19:41,436.436 INFO    ] ================================================
[2026-08-31 09:19:41,451.451 INFO    ] Launching Daemon at Mon Aug 31 09:19:41 IST 2026
[2026-08-31 09:19:41,462.462 INFO    ] ================================================
[2026-08-31 09:19:42,027.027 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:19:42
[2026-08-31 09:19:42,611.611 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:19:42,878.878 INFO    ] Initializing speech engine...
[2026-08-31 09:19:42,887.887 INFO    ] 2026-08-31 09:19:42
[2026-08-31 09:19:43,133.133 INFO    ] 2026-08-31 09:19:43
[2026-08-31 09:19:43,174.174 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:19:43,419.419 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:19:43,428.428 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:19:43,636.636 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:19:43,686.686 INFO    ] time= 31/08/2026 09:19:43
[2026-08-31 09:19:43,692.692 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:19:43,709.709 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:19:43,835.835 INFO    ] No existing commands found in stream
[2026-08-31 09:19:48,851.851 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:19:48,853.853 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-08-31 09:19:49,538.538 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 09:19:49,540.540 INFO    ] Checking for system updates...
[2026-08-31 09:19:49,576.576 INFO    ] 200
[2026-08-31 09:19:49,579.579 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:19:49,631.631 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:19:49,634.634 INFO    ] No update needed
[2026-08-31 09:19:49,636.636 INFO    ] Checking for camera pi updates...
[2026-08-31 09:19:49,670.670 INFO    ] 200
[2026-08-31 09:19:49,673.673 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:19:49,718.718 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:19:49,822.822 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:19:49,825.825 INFO    ] No camera update needed
[2026-08-31 09:19:49,827.827 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:19:49,829.829 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:19:49,835.835 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:19:49,840.840 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:19:51,880.880 INFO    ] ================================================
[2026-08-31 09:19:51,895.895 INFO    ] Launching Daemon at Mon Aug 31 09:19:51 IST 2026
[2026-08-31 09:19:51,906.906 INFO    ] ================================================
[2026-08-31 09:19:52,488.488 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:19:52
[2026-08-31 09:19:53,085.085 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:19:53,357.357 INFO    ] Initializing speech engine...
[2026-08-31 09:19:53,367.367 INFO    ] 2026-08-31 09:19:53
[2026-08-31 09:19:53,616.616 INFO    ] 2026-08-31 09:19:53
[2026-08-31 09:19:53,682.682 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:19:53,907.907 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:19:53,912.912 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:19:54,091.091 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:19:54,141.141 INFO    ] time= 31/08/2026 09:19:54
[2026-08-31 09:19:54,172.172 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:19:54,178.178 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:19:54,324.324 INFO    ] No existing commands found in stream
[2026-08-31 09:19:59,343.343 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:19:59,345.345 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-08-31 09:20:00,013.013 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 09:20:00,016.016 INFO    ] Checking for system updates...
[2026-08-31 09:20:00,052.052 INFO    ] 200
[2026-08-31 09:20:00,055.055 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:20:00,134.134 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:20:00,137.137 INFO    ] No update needed
[2026-08-31 09:20:00,140.140 INFO    ] Checking for camera pi updates...
[2026-08-31 09:20:00,175.175 INFO    ] 200
[2026-08-31 09:20:00,178.178 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:20:00,218.218 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:20:00,322.322 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:20:00,324.324 INFO    ] No camera update needed
[2026-08-31 09:20:00,326.326 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:20:00,329.329 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:20:00,334.334 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:20:00,339.339 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:20:02,401.401 INFO    ] ================================================
[2026-08-31 09:20:02,490.490 INFO    ] Launching Daemon at Mon Aug 31 09:20:02 IST 2026
[2026-08-31 09:20:02,527.527 INFO    ] ================================================
[2026-08-31 09:20:03,245.245 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:20:03
[2026-08-31 09:20:03,967.967 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:20:04,288.288 INFO    ] Initializing speech engine...
[2026-08-31 09:20:04,300.300 INFO    ] 2026-08-31 09:20:04
[2026-08-31 09:20:04,581.581 INFO    ] 2026-08-31 09:20:04
[2026-08-31 09:20:04,620.620 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:20:04,901.901 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:20:04,909.909 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:20:05,096.096 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:20:05,114.114 INFO    ] time= 31/08/2026 09:20:05
[2026-08-31 09:20:05,133.133 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:20:05,161.161 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:20:05,288.288 INFO    ] No existing commands found in stream
[2026-08-31 09:20:10,319.319 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:20:10,322.322 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-08-31 09:20:11,058.058 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 09:20:11,061.061 INFO    ] Checking for system updates...
[2026-08-31 09:20:11,102.102 INFO    ] 200
[2026-08-31 09:20:11,105.105 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:20:11,165.165 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:20:11,167.167 INFO    ] No update needed
[2026-08-31 09:20:11,170.170 INFO    ] Checking for camera pi updates...
[2026-08-31 09:20:11,205.205 INFO    ] 200
[2026-08-31 09:20:11,208.208 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:20:11,250.250 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:20:11,335.335 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:20:11,338.338 INFO    ] No camera update needed
[2026-08-31 09:20:11,341.341 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:20:11,344.344 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:20:11,350.350 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:20:11,355.355 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:20:13,397.397 INFO    ] ================================================
[2026-08-31 09:20:13,414.414 INFO    ] Launching Daemon at Mon Aug 31 09:20:13 IST 2026
[2026-08-31 09:20:13,425.425 INFO    ] ================================================
[2026-08-31 09:20:14,050.050 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:20:14
[2026-08-31 09:20:14,669.669 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:20:14,957.957 INFO    ] Initializing speech engine...
[2026-08-31 09:20:14,966.966 INFO    ] 2026-08-31 09:20:14
[2026-08-31 09:20:15,247.247 INFO    ] 2026-08-31 09:20:15
[2026-08-31 09:20:15,285.285 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:20:15,496.496 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:20:15,558.558 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:20:15,781.781 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:20:15,838.838 INFO    ] time= 31/08/2026 09:20:15
[2026-08-31 09:20:15,858.858 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:20:15,867.867 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:20:15,987.987 INFO    ] No existing commands found in stream
[2026-08-31 09:20:21,014.014 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:20:21,017.017 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-08-31 09:20:22,057.057 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 09:20:22,060.060 INFO    ] Checking for system updates...
[2026-08-31 09:20:22,100.100 INFO    ] 200
[2026-08-31 09:20:22,103.103 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:20:22,154.154 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:20:22,157.157 INFO    ] No update needed
[2026-08-31 09:20:22,159.159 INFO    ] Checking for camera pi updates...
[2026-08-31 09:20:22,193.193 INFO    ] 200
[2026-08-31 09:20:22,195.195 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:20:22,237.237 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:20:22,325.325 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:20:22,328.328 INFO    ] No camera update needed
[2026-08-31 09:20:22,331.331 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:20:22,334.334 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:20:22,340.340 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:20:22,346.346 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:20:24,388.388 INFO    ] ================================================
[2026-08-31 09:20:24,404.404 INFO    ] Launching Daemon at Mon Aug 31 09:20:24 IST 2026
[2026-08-31 09:20:24,416.416 INFO    ] ================================================
[2026-08-31 09:20:25,025.025 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:20:25
[2026-08-31 09:20:25,623.623 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:20:25,884.884 INFO    ] Initializing speech engine...
[2026-08-31 09:20:25,900.900 INFO    ] 2026-08-31 09:20:25
[2026-08-31 09:20:26,151.151 INFO    ] 2026-08-31 09:20:26
[2026-08-31 09:20:26,187.187 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:20:26,439.439 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:20:26,448.448 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:20:26,582.582 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:20:26,621.621 INFO    ] time= 31/08/2026 09:20:26
[2026-08-31 09:20:26,687.687 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:20:26,712.712 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:20:26,856.856 INFO    ] No existing commands found in stream
[2026-08-31 09:20:31,872.872 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:20:31,874.874 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-08-31 09:20:34,684.684 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 09:20:34,686.686 INFO    ] Checking for system updates...
[2026-08-31 09:20:34,722.722 INFO    ] 200
[2026-08-31 09:20:34,725.725 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:20:34,778.778 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:20:34,781.781 INFO    ] No update needed
[2026-08-31 09:20:34,783.783 INFO    ] Checking for camera pi updates...
[2026-08-31 09:20:34,816.816 INFO    ] 200
[2026-08-31 09:20:34,819.819 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:20:34,860.860 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:20:34,941.941 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:20:34,944.944 INFO    ] No camera update needed
[2026-08-31 09:20:34,946.946 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:20:34,949.949 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:20:34,954.954 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:20:34,959.959 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:20:37,004.004 INFO    ] ================================================
[2026-08-31 09:20:37,020.020 INFO    ] Launching Daemon at Mon Aug 31 09:20:37 IST 2026
[2026-08-31 09:20:37,031.031 INFO    ] ================================================
[2026-08-31 09:20:37,616.616 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:20:37
[2026-08-31 09:20:38,217.217 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:20:38,489.489 INFO    ] Initializing speech engine...
[2026-08-31 09:20:38,500.500 INFO    ] 2026-08-31 09:20:38
[2026-08-31 09:20:38,748.748 INFO    ] 2026-08-31 09:20:38
[2026-08-31 09:20:38,784.784 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:20:39,041.041 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:20:39,046.046 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:20:39,260.260 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:20:39,302.302 INFO    ] time= 31/08/2026 09:20:39
[2026-08-31 09:20:39,308.308 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:20:39,326.326 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:20:39,451.451 INFO    ] No existing commands found in stream
[2026-08-31 09:20:44,467.467 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:20:44,470.470 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-08-31 09:20:47,444.444 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 09:20:47,447.447 INFO    ] Checking for system updates...
[2026-08-31 09:20:47,483.483 INFO    ] 200
[2026-08-31 09:20:47,485.485 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:20:47,538.538 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:20:47,541.541 INFO    ] No update needed
[2026-08-31 09:20:47,543.543 INFO    ] Checking for camera pi updates...
[2026-08-31 09:20:47,576.576 INFO    ] 200
[2026-08-31 09:20:47,579.579 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:20:47,620.620 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:20:47,726.726 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:20:47,729.729 INFO    ] No camera update needed
[2026-08-31 09:20:47,732.732 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:20:47,734.734 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:20:47,740.740 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:20:47,745.745 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:20:49,785.785 INFO    ] ================================================
[2026-08-31 09:20:49,801.801 INFO    ] Launching Daemon at Mon Aug 31 09:20:49 IST 2026
[2026-08-31 09:20:49,813.813 INFO    ] ================================================
[2026-08-31 09:20:50,410.410 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:20:50
[2026-08-31 09:20:51,046.046 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:20:51,319.319 INFO    ] Initializing speech engine...
[2026-08-31 09:20:51,328.328 INFO    ] 2026-08-31 09:20:51
[2026-08-31 09:20:51,579.579 INFO    ] 2026-08-31 09:20:51
[2026-08-31 09:20:51,615.615 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:20:51,872.872 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:20:51,882.882 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:20:52,019.019 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:20:52,066.066 INFO    ] time= 31/08/2026 09:20:52
[2026-08-31 09:20:52,132.132 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:20:52,161.161 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:20:52,317.317 INFO    ] No existing commands found in stream
[2026-08-31 09:20:57,349.349 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:20:57,352.352 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-08-31 09:20:59,649.649 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 09:20:59,653.653 INFO    ] Checking for system updates...
[2026-08-31 09:20:59,690.690 INFO    ] 200
[2026-08-31 09:20:59,692.692 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:20:59,760.760 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:20:59,763.763 INFO    ] No update needed
[2026-08-31 09:20:59,765.765 INFO    ] Checking for camera pi updates...
[2026-08-31 09:20:59,801.801 INFO    ] 200
[2026-08-31 09:20:59,805.805 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:20:59,896.896 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:21:00,002.002 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:21:00,004.004 INFO    ] No camera update needed
[2026-08-31 09:21:00,006.006 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:21:00,009.009 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:21:00,015.015 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:21:00,020.020 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:21:02,063.063 INFO    ] ================================================
[2026-08-31 09:21:02,081.081 INFO    ] Launching Daemon at Mon Aug 31 09:21:02 IST 2026
[2026-08-31 09:21:02,093.093 INFO    ] ================================================
[2026-08-31 09:21:02,718.718 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:21:02
[2026-08-31 09:21:03,345.345 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:21:03,615.615 INFO    ] Initializing speech engine...
[2026-08-31 09:21:03,625.625 INFO    ] 2026-08-31 09:21:03
[2026-08-31 09:21:03,873.873 INFO    ] 2026-08-31 09:21:03
[2026-08-31 09:21:03,908.908 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:21:04,083.083 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:21:04,094.094 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:21:04,248.248 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:21:04,288.288 INFO    ] time= 31/08/2026 09:21:04
[2026-08-31 09:21:04,315.315 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:21:04,362.362 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:21:04,452.452 INFO    ] No existing commands found in stream
[2026-08-31 09:21:09,472.472 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:21:09,475.475 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-08-31 09:21:12,927.927 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 09:21:12,930.930 INFO    ] Checking for system updates...
[2026-08-31 09:21:12,970.970 INFO    ] 200
[2026-08-31 09:21:12,972.972 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:21:13,032.032 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:21:13,034.034 INFO    ] No update needed
[2026-08-31 09:21:13,037.037 INFO    ] Checking for camera pi updates...
[2026-08-31 09:21:13,070.070 INFO    ] 200
[2026-08-31 09:21:13,072.072 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:21:13,112.112 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:21:13,199.199 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:21:13,201.201 INFO    ] No camera update needed
[2026-08-31 09:21:13,204.204 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:21:13,206.206 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:21:13,211.211 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:21:13,216.216 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:21:15,257.257 INFO    ] ================================================
[2026-08-31 09:21:15,272.272 INFO    ] Launching Daemon at Mon Aug 31 09:21:15 IST 2026
[2026-08-31 09:21:15,283.283 INFO    ] ================================================
[2026-08-31 09:21:15,853.853 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:21:15
[2026-08-31 09:21:16,436.436 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:21:16,705.705 INFO    ] Initializing speech engine...
[2026-08-31 09:21:16,713.713 INFO    ] 2026-08-31 09:21:16
[2026-08-31 09:21:16,963.963 INFO    ] 2026-08-31 09:21:16
[2026-08-31 09:21:16,998.998 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:21:17,173.173 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:21:17,185.185 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:21:17,332.332 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:21:17,337.337 INFO    ] time= 31/08/2026 09:21:17
[2026-08-31 09:21:17,343.343 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:21:17,369.369 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:21:17,506.506 INFO    ] No existing commands found in stream
[2026-08-31 09:21:22,536.536 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:21:22,539.539 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-08-31 09:21:23,657.657 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 09:21:23,660.660 INFO    ] Checking for system updates...
[2026-08-31 09:21:23,700.700 INFO    ] 200
[2026-08-31 09:21:23,702.702 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:21:23,756.756 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:21:23,759.759 INFO    ] No update needed
[2026-08-31 09:21:23,762.762 INFO    ] Checking for camera pi updates...
[2026-08-31 09:21:23,801.801 INFO    ] 200
[2026-08-31 09:21:23,804.804 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:21:23,851.851 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:21:23,930.930 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:21:23,932.932 INFO    ] No camera update needed
[2026-08-31 09:21:23,935.935 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:21:23,938.938 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:21:23,944.944 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:21:23,950.950 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:21:26,998.998 INFO    ] ================================================
[2026-08-31 09:21:26,013.013 INFO    ] Launching Daemon at Mon Aug 31 09:21:26 IST 2026
[2026-08-31 09:21:26,024.024 INFO    ] ================================================
[2026-08-31 09:21:26,605.605 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:21:26
[2026-08-31 09:21:27,204.204 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:21:27,481.481 INFO    ] Initializing speech engine...
[2026-08-31 09:21:27,487.487 INFO    ] 2026-08-31 09:21:27
[2026-08-31 09:21:27,747.747 INFO    ] 2026-08-31 09:21:27
[2026-08-31 09:21:27,801.801 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:21:28,084.084 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:21:28,093.093 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:21:28,286.286 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:21:28,292.292 INFO    ] time= 31/08/2026 09:21:28
[2026-08-31 09:21:28,311.311 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:21:28,338.338 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:21:28,445.445 INFO    ] No existing commands found in stream
[2026-08-31 09:21:33,466.466 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:21:33,469.469 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-08-31 09:21:36,548.548 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 09:21:36,551.551 INFO    ] Checking for system updates...
[2026-08-31 09:21:36,599.599 INFO    ] 200
[2026-08-31 09:21:36,602.602 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-08-31 09:21:36,604.604 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-08-31 09:21:36,606.606 INFO    ] Checking for camera pi updates...
[2026-08-31 09:21:36,645.645 INFO    ] 200
[2026-08-31 09:21:36,647.647 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-08-31 09:21:36,650.650 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-08-31 09:21:36,652.652 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:21:36,655.655 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:21:36,660.660 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:21:36,665.665 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:21:38,707.707 INFO    ] ================================================
[2026-08-31 09:21:38,722.722 INFO    ] Launching Daemon at Mon Aug 31 09:21:38 IST 2026
[2026-08-31 09:21:38,732.732 INFO    ] ================================================
[2026-08-31 09:21:39,299.299 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:21:39
[2026-08-31 09:21:39,881.881 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:21:40,129.129 INFO    ] Initializing speech engine...
[2026-08-31 09:21:40,153.153 INFO    ] 2026-08-31 09:21:40
[2026-08-31 09:21:40,409.409 INFO    ] 2026-08-31 09:21:40
[2026-08-31 09:21:40,443.443 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:21:40,703.703 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:21:40,712.712 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:21:40,855.855 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:21:40,909.909 INFO    ] time= 31/08/2026 09:21:40
[2026-08-31 09:21:40,963.963 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:21:40,983.983 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:21:41,092.092 INFO    ] No existing commands found in stream
[2026-08-31 09:21:46,115.115 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:21:46,118.118 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-08-31 09:21:49,766.766 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 09:21:49,768.768 INFO    ] Checking for system updates...
[2026-08-31 09:21:49,808.808 INFO    ] 200
[2026-08-31 09:21:49,810.810 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:21:49,870.870 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:21:49,872.872 INFO    ] No update needed
[2026-08-31 09:21:49,874.874 INFO    ] Checking for camera pi updates...
[2026-08-31 09:21:49,911.911 INFO    ] 200
[2026-08-31 09:21:49,914.914 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:21:49,958.958 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:21:50,063.063 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:21:50,066.066 INFO    ] No camera update needed
[2026-08-31 09:21:50,068.068 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:21:50,071.071 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:21:50,076.076 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:21:50,081.081 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:21:52,123.123 INFO    ] ================================================
[2026-08-31 09:21:52,139.139 INFO    ] Launching Daemon at Mon Aug 31 09:21:52 IST 2026
[2026-08-31 09:21:52,149.149 INFO    ] ================================================
[2026-08-31 09:21:52,800.800 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:21:52
[2026-08-31 09:21:53,473.473 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:21:53,778.778 INFO    ] Initializing speech engine...
[2026-08-31 09:21:53,792.792 INFO    ] 2026-08-31 09:21:53
[2026-08-31 09:21:54,101.101 INFO    ] 2026-08-31 09:21:54
[2026-08-31 09:21:54,184.184 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:21:54,398.398 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:21:54,406.406 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:21:54,598.598 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:21:54,616.616 INFO    ] time= 31/08/2026 09:21:54
[2026-08-31 09:21:54,647.647 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:21:54,656.656 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:21:54,759.759 INFO    ] No existing commands found in stream
[2026-08-31 09:21:59,793.793 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:21:59,796.796 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-08-31 09:22:01,969.969 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 09:22:01,972.972 INFO    ] Checking for system updates...
[2026-08-31 09:22:02,019.019 INFO    ] 200
[2026-08-31 09:22:02,022.022 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:22:02,090.090 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:22:02,093.093 INFO    ] No update needed
[2026-08-31 09:22:02,096.096 INFO    ] Checking for camera pi updates...
[2026-08-31 09:22:02,137.137 INFO    ] 200
[2026-08-31 09:22:02,140.140 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:22:02,193.193 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:22:02,247.247 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:22:02,250.250 INFO    ] No camera update needed
[2026-08-31 09:22:02,253.253 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:22:02,256.256 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:22:02,263.263 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:22:02,270.270 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:22:04,312.312 INFO    ] ================================================
[2026-08-31 09:22:04,328.328 INFO    ] Launching Daemon at Mon Aug 31 09:22:04 IST 2026
[2026-08-31 09:22:04,339.339 INFO    ] ================================================
[2026-08-31 09:22:04,979.979 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:22:04
[2026-08-31 09:22:05,635.635 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:22:05,918.918 INFO    ] Initializing speech engine...
[2026-08-31 09:22:05,934.934 INFO    ] 2026-08-31 09:22:05
[2026-08-31 09:22:06,196.196 INFO    ] 2026-08-31 09:22:06
[2026-08-31 09:22:06,241.241 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:22:06,496.496 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:22:06,523.523 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:22:06,664.664 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:22:06,719.719 INFO    ] time= 31/08/2026 09:22:06
[2026-08-31 09:22:06,774.774 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:22:06,802.802 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:22:06,931.931 INFO    ] No existing commands found in stream
[2026-08-31 09:22:11,960.960 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:22:11,963.963 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-08-31 09:22:16,024.024 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 09:22:16,028.028 INFO    ] Checking for system updates...
[2026-08-31 09:22:16,064.064 INFO    ] 200
[2026-08-31 09:22:16,066.066 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:22:16,122.122 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:22:16,124.124 INFO    ] No update needed
[2026-08-31 09:22:16,127.127 INFO    ] Checking for camera pi updates...
[2026-08-31 09:22:16,165.165 INFO    ] 200
[2026-08-31 09:22:16,167.167 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:22:16,217.217 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:22:16,339.339 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:22:16,342.342 INFO    ] No camera update needed
[2026-08-31 09:22:16,345.345 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:22:16,347.347 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:22:16,354.354 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:22:16,359.359 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:22:18,399.399 INFO    ] ================================================
[2026-08-31 09:22:18,415.415 INFO    ] Launching Daemon at Mon Aug 31 09:22:18 IST 2026
[2026-08-31 09:22:18,426.426 INFO    ] ================================================
[2026-08-31 09:22:19,068.068 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:22:19
[2026-08-31 09:22:19,727.727 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:22:20,025.025 INFO    ] Initializing speech engine...
[2026-08-31 09:22:20,038.038 INFO    ] 2026-08-31 09:22:20
[2026-08-31 09:22:20,350.350 INFO    ] 2026-08-31 09:22:20
[2026-08-31 09:22:20,435.435 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:22:20,654.654 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:22:20,713.713 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:22:20,896.896 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:22:20,905.905 INFO    ] time= 31/08/2026 09:22:20
[2026-08-31 09:22:20,927.927 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:22:20,984.984 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:22:21,108.108 INFO    ] No existing commands found in stream
[2026-08-31 09:22:26,126.126 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:22:26,129.129 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-08-31 09:22:27,788.788 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 09:22:27,791.791 INFO    ] Checking for system updates...
[2026-08-31 09:22:27,833.833 INFO    ] 200
[2026-08-31 09:22:27,836.836 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:22:27,895.895 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:22:27,898.898 INFO    ] No update needed
[2026-08-31 09:22:27,901.901 INFO    ] Checking for camera pi updates...
[2026-08-31 09:22:27,935.935 INFO    ] 200
[2026-08-31 09:22:27,938.938 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:22:27,984.984 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:22:28,065.065 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:22:28,068.068 INFO    ] No camera update needed
[2026-08-31 09:22:28,070.070 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:22:28,073.073 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:22:28,079.079 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:22:28,085.085 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:22:30,126.126 INFO    ] ================================================
[2026-08-31 09:22:30,142.142 INFO    ] Launching Daemon at Mon Aug 31 09:22:30 IST 2026
[2026-08-31 09:22:30,153.153 INFO    ] ================================================
[2026-08-31 09:22:30,736.736 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:22:30
[2026-08-31 09:22:31,340.340 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:22:31,646.646 INFO    ] Initializing speech engine...
[2026-08-31 09:22:31,655.655 INFO    ] 2026-08-31 09:22:31
[2026-08-31 09:22:31,918.918 INFO    ] 2026-08-31 09:22:31
[2026-08-31 09:22:31,957.957 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:22:32,190.190 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:22:32,230.230 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:22:32,459.459 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:22:32,505.505 INFO    ] time= 31/08/2026 09:22:32
[2026-08-31 09:22:32,523.523 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:22:32,554.554 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:22:32,663.663 INFO    ] No existing commands found in stream
[2026-08-31 09:22:37,685.685 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:22:37,688.688 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-08-31 09:22:38,417.417 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 09:22:38,420.420 INFO    ] Checking for system updates...
[2026-08-31 09:22:38,456.456 INFO    ] 200
[2026-08-31 09:22:38,458.458 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:22:38,511.511 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:22:38,513.513 INFO    ] No update needed
[2026-08-31 09:22:38,516.516 INFO    ] Checking for camera pi updates...
[2026-08-31 09:22:38,549.549 INFO    ] 200
[2026-08-31 09:22:38,551.551 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:22:38,599.599 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:22:38,697.697 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:22:38,699.699 INFO    ] No camera update needed
[2026-08-31 09:22:38,702.702 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:22:38,704.704 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:22:38,709.709 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:22:38,714.714 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:22:40,757.757 INFO    ] ================================================
[2026-08-31 09:22:40,773.773 INFO    ] Launching Daemon at Mon Aug 31 09:22:40 IST 2026
[2026-08-31 09:22:40,785.785 INFO    ] ================================================
[2026-08-31 09:22:41,448.448 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:22:41
[2026-08-31 09:22:42,124.124 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:22:42,431.431 INFO    ] Initializing speech engine...
[2026-08-31 09:22:42,443.443 INFO    ] 2026-08-31 09:22:42
[2026-08-31 09:22:42,757.757 INFO    ] 2026-08-31 09:22:42
[2026-08-31 09:22:42,839.839 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:22:43,088.088 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:22:43,120.120 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:22:43,273.273 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:22:43,300.300 INFO    ] time= 31/08/2026 09:22:43
[2026-08-31 09:22:43,310.310 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:22:43,317.317 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:22:43,453.453 INFO    ] No existing commands found in stream
[2026-08-31 09:22:48,484.484 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:22:48,488.488 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-08-31 09:22:50,769.769 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 09:22:50,772.772 INFO    ] Checking for system updates...
[2026-08-31 09:22:50,809.809 INFO    ] 200
[2026-08-31 09:22:50,812.812 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:22:50,865.865 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:22:50,868.868 INFO    ] No update needed
[2026-08-31 09:22:50,871.871 INFO    ] Checking for camera pi updates...
[2026-08-31 09:22:50,913.913 INFO    ] 200
[2026-08-31 09:22:50,915.915 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:22:50,962.962 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:22:51,045.045 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:22:51,048.048 INFO    ] No camera update needed
[2026-08-31 09:22:51,051.051 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:22:51,054.054 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:22:51,060.060 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:22:51,066.066 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:22:53,109.109 INFO    ] ================================================
[2026-08-31 09:22:53,124.124 INFO    ] Launching Daemon at Mon Aug 31 09:22:53 IST 2026
[2026-08-31 09:22:53,135.135 INFO    ] ================================================
[2026-08-31 09:22:53,713.713 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:22:53
[2026-08-31 09:22:54,305.305 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:22:54,580.580 INFO    ] Initializing speech engine...
[2026-08-31 09:22:54,586.586 INFO    ] 2026-08-31 09:22:54
[2026-08-31 09:22:54,832.832 INFO    ] 2026-08-31 09:22:54
[2026-08-31 09:22:54,898.898 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:22:55,124.124 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:22:55,129.129 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:22:55,326.326 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:22:55,381.381 INFO    ] time= 31/08/2026 09:22:55
[2026-08-31 09:22:55,391.391 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:22:55,409.409 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:22:55,562.562 INFO    ] No existing commands found in stream
[2026-08-31 09:23:00,592.592 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:23:00,595.595 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-08-31 09:23:04,134.134 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 09:23:04,136.136 INFO    ] Checking for system updates...
[2026-08-31 09:23:04,172.172 INFO    ] 200
[2026-08-31 09:23:04,174.174 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:23:04,227.227 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:23:04,230.230 INFO    ] No update needed
[2026-08-31 09:23:04,232.232 INFO    ] Checking for camera pi updates...
[2026-08-31 09:23:04,267.267 INFO    ] 200
[2026-08-31 09:23:04,269.269 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:23:04,309.309 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:23:04,412.412 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:23:04,415.415 INFO    ] No camera update needed
[2026-08-31 09:23:04,417.417 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:23:04,420.420 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:23:04,425.425 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:23:04,430.430 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:23:06,470.470 INFO    ] ================================================
[2026-08-31 09:23:06,486.486 INFO    ] Launching Daemon at Mon Aug 31 09:23:06 IST 2026
[2026-08-31 09:23:06,496.496 INFO    ] ================================================
[2026-08-31 09:23:07,065.065 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:23:07
[2026-08-31 09:23:07,649.649 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:23:07,903.903 INFO    ] Initializing speech engine...
[2026-08-31 09:23:07,919.919 INFO    ] 2026-08-31 09:23:07
[2026-08-31 09:23:08,198.198 INFO    ] 2026-08-31 09:23:08
[2026-08-31 09:23:08,236.236 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:23:08,427.427 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:23:08,440.440 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:23:08,597.597 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:23:08,606.606 INFO    ] time= 31/08/2026 09:23:08
[2026-08-31 09:23:08,613.613 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:23:08,660.660 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:23:08,784.784 INFO    ] No existing commands found in stream
[2026-08-31 09:23:13,810.810 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:23:13,813.813 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-08-31 09:23:15,926.926 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 09:23:15,929.929 INFO    ] Checking for system updates...
[2026-08-31 09:23:15,964.964 INFO    ] 200
[2026-08-31 09:23:15,986.986 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:23:16,038.038 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:23:16,041.041 INFO    ] No update needed
[2026-08-31 09:23:16,043.043 INFO    ] Checking for camera pi updates...
[2026-08-31 09:23:16,077.077 INFO    ] 200
[2026-08-31 09:23:16,080.080 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:23:16,124.124 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:23:16,209.209 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:23:16,212.212 INFO    ] No camera update needed
[2026-08-31 09:23:16,214.214 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:23:16,217.217 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:23:16,223.223 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:23:16,228.228 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:23:18,269.269 INFO    ] ================================================
[2026-08-31 09:23:18,283.283 INFO    ] Launching Daemon at Mon Aug 31 09:23:18 IST 2026
[2026-08-31 09:23:18,294.294 INFO    ] ================================================
[2026-08-31 09:23:18,857.857 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:23:18
[2026-08-31 09:23:19,438.438 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:23:19,713.713 INFO    ] Initializing speech engine...
[2026-08-31 09:23:19,722.722 INFO    ] 2026-08-31 09:23:19
[2026-08-31 09:23:19,982.982 INFO    ] 2026-08-31 09:23:19
[2026-08-31 09:23:20,017.017 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:23:20,214.214 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:23:20,230.230 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:23:20,377.377 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:23:20,382.382 INFO    ] time= 31/08/2026 09:23:20
[2026-08-31 09:23:20,388.388 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:23:20,435.435 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:23:20,573.573 INFO    ] No existing commands found in stream
[2026-08-31 09:23:25,603.603 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:23:25,606.606 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-08-31 09:23:26,770.770 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 09:23:26,773.773 INFO    ] Checking for system updates...
[2026-08-31 09:23:26,808.808 INFO    ] 200
[2026-08-31 09:23:26,810.810 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:23:26,861.861 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:23:26,864.864 INFO    ] No update needed
[2026-08-31 09:23:26,866.866 INFO    ] Checking for camera pi updates...
[2026-08-31 09:23:26,899.899 INFO    ] 200
[2026-08-31 09:23:26,901.901 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:23:26,946.946 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:23:27,030.030 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:23:27,032.032 INFO    ] No camera update needed
[2026-08-31 09:23:27,034.034 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:23:27,037.037 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:23:27,042.042 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:23:27,047.047 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:23:29,086.086 INFO    ] ================================================
[2026-08-31 09:23:29,101.101 INFO    ] Launching Daemon at Mon Aug 31 09:23:29 IST 2026
[2026-08-31 09:23:29,112.112 INFO    ] ================================================
[2026-08-31 09:23:29,676.676 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:23:29
[2026-08-31 09:23:30,258.258 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:23:30,535.535 INFO    ] Initializing speech engine...
[2026-08-31 09:23:30,543.543 INFO    ] 2026-08-31 09:23:30
[2026-08-31 09:23:30,803.803 INFO    ] 2026-08-31 09:23:30
[2026-08-31 09:23:30,837.837 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:23:31,035.035 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:23:31,055.055 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:23:31,244.244 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:23:31,272.272 INFO    ] time= 31/08/2026 09:23:31
[2026-08-31 09:23:31,299.299 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:23:31,348.348 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:23:31,473.473 INFO    ] No existing commands found in stream
[2026-08-31 09:23:36,489.489 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:23:36,492.492 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-08-31 09:23:38,591.591 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 09:23:38,593.593 INFO    ] Checking for system updates...
[2026-08-31 09:23:38,629.629 INFO    ] 200
[2026-08-31 09:23:38,631.631 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:23:38,687.687 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:23:38,690.690 INFO    ] No update needed
[2026-08-31 09:23:38,692.692 INFO    ] Checking for camera pi updates...
[2026-08-31 09:23:38,725.725 INFO    ] 200
[2026-08-31 09:23:38,728.728 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:23:38,767.767 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:23:38,853.853 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:23:38,855.855 INFO    ] No camera update needed
[2026-08-31 09:23:38,858.858 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:23:38,860.860 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:23:38,865.865 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:23:38,870.870 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:23:40,909.909 INFO    ] ================================================
[2026-08-31 09:23:40,924.924 INFO    ] Launching Daemon at Mon Aug 31 09:23:40 IST 2026
[2026-08-31 09:23:40,935.935 INFO    ] ================================================
[2026-08-31 09:23:41,510.510 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:23:41
[2026-08-31 09:23:42,097.097 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:23:42,346.346 INFO    ] Initializing speech engine...
[2026-08-31 09:23:42,354.354 INFO    ] 2026-08-31 09:23:42
[2026-08-31 09:23:42,643.643 INFO    ] 2026-08-31 09:23:42
[2026-08-31 09:23:42,679.679 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:23:42,890.890 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:23:42,938.938 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:23:43,110.110 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:23:43,156.156 INFO    ] time= 31/08/2026 09:23:43
[2026-08-31 09:23:43,220.220 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:23:43,255.255 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:23:43,409.409 INFO    ] No existing commands found in stream
[2026-08-31 09:23:48,427.427 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:23:48,430.430 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-08-31 09:23:49,713.713 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 09:23:49,716.716 INFO    ] Checking for system updates...
[2026-08-31 09:23:49,751.751 INFO    ] 200
[2026-08-31 09:23:49,753.753 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:23:49,806.806 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:23:49,809.809 INFO    ] No update needed
[2026-08-31 09:23:49,811.811 INFO    ] Checking for camera pi updates...
[2026-08-31 09:23:49,844.844 INFO    ] 200
[2026-08-31 09:23:49,847.847 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:23:49,886.886 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:23:49,994.994 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:23:49,996.996 INFO    ] No camera update needed
[2026-08-31 09:23:49,999.999 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:23:50,001.001 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:23:50,006.006 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:23:50,011.011 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:23:52,051.051 INFO    ] ================================================
[2026-08-31 09:23:52,066.066 INFO    ] Launching Daemon at Mon Aug 31 09:23:52 IST 2026
[2026-08-31 09:23:52,077.077 INFO    ] ================================================
[2026-08-31 09:23:52,709.709 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:23:52
[2026-08-31 09:23:53,360.360 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:23:53,656.656 INFO    ] Initializing speech engine...
[2026-08-31 09:23:53,664.664 INFO    ] 2026-08-31 09:23:53
[2026-08-31 09:23:53,953.953 INFO    ] 2026-08-31 09:23:53
[2026-08-31 09:23:53,990.990 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:23:54,241.241 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:23:54,259.259 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:23:54,477.477 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:23:54,493.493 INFO    ] time= 31/08/2026 09:23:54
[2026-08-31 09:23:54,502.502 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:23:54,531.531 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:23:54,635.635 INFO    ] No existing commands found in stream
[2026-08-31 09:23:59,664.664 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:23:59,667.667 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-08-31 09:24:02,184.184 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 09:24:02,188.188 INFO    ] Checking for system updates...
[2026-08-31 09:24:02,230.230 INFO    ] 200
[2026-08-31 09:24:02,234.234 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:24:02,298.298 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:24:02,301.301 INFO    ] No update needed
[2026-08-31 09:24:02,304.304 INFO    ] Checking for camera pi updates...
[2026-08-31 09:24:02,344.344 INFO    ] 200
[2026-08-31 09:24:02,347.347 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:24:02,399.399 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:24:02,474.474 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:24:02,477.477 INFO    ] No camera update needed
[2026-08-31 09:24:02,480.480 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:24:02,483.483 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:24:02,490.490 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:24:02,496.496 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:24:04,538.538 INFO    ] ================================================
[2026-08-31 09:24:04,553.553 INFO    ] Launching Daemon at Mon Aug 31 09:24:04 IST 2026
[2026-08-31 09:24:04,564.564 INFO    ] ================================================
[2026-08-31 09:24:05,145.145 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:24:05
[2026-08-31 09:24:05,746.746 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:24:06,034.034 INFO    ] Initializing speech engine...
[2026-08-31 09:24:06,044.044 INFO    ] 2026-08-31 09:24:06
[2026-08-31 09:24:06,333.333 INFO    ] 2026-08-31 09:24:06
[2026-08-31 09:24:06,371.371 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:24:06,629.629 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:24:06,634.634 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:24:06,853.853 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:24:06,895.895 INFO    ] time= 31/08/2026 09:24:06
[2026-08-31 09:24:06,902.902 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:24:06,917.917 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:24:07,052.052 INFO    ] No existing commands found in stream
[2026-08-31 09:24:12,072.072 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:24:12,074.074 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-08-31 09:24:15,305.305 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 09:24:15,308.308 INFO    ] Checking for system updates...
[2026-08-31 09:24:15,343.343 INFO    ] 200
[2026-08-31 09:24:15,346.346 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:24:15,398.398 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:24:15,400.400 INFO    ] No update needed
[2026-08-31 09:24:15,402.402 INFO    ] Checking for camera pi updates...
[2026-08-31 09:24:15,436.436 INFO    ] 200
[2026-08-31 09:24:15,438.438 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:24:15,483.483 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:24:15,575.575 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:24:15,577.577 INFO    ] No camera update needed
[2026-08-31 09:24:15,580.580 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:24:15,582.582 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:24:15,594.594 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:24:15,599.599 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:24:17,640.640 INFO    ] ================================================
[2026-08-31 09:24:17,655.655 INFO    ] Launching Daemon at Mon Aug 31 09:24:17 IST 2026
[2026-08-31 09:24:17,667.667 INFO    ] ================================================
[2026-08-31 09:24:18,244.244 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:24:18
[2026-08-31 09:24:18,835.835 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:24:19,104.104 INFO    ] Initializing speech engine...
[2026-08-31 09:24:19,114.114 INFO    ] 2026-08-31 09:24:19
[2026-08-31 09:24:19,378.378 INFO    ] 2026-08-31 09:24:19
[2026-08-31 09:24:19,430.430 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:24:19,653.653 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:24:19,661.661 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:24:19,838.838 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:24:19,903.903 INFO    ] time= 31/08/2026 09:24:19
[2026-08-31 09:24:19,928.928 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:24:19,942.942 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:24:20,057.057 INFO    ] No existing commands found in stream
[2026-08-31 09:24:25,082.082 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:24:25,084.084 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-08-31 09:24:27,542.542 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 09:24:27,544.544 INFO    ] Checking for system updates...
[2026-08-31 09:24:27,580.580 INFO    ] 200
[2026-08-31 09:24:27,582.582 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:24:27,635.635 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:24:27,638.638 INFO    ] No update needed
[2026-08-31 09:24:27,640.640 INFO    ] Checking for camera pi updates...
[2026-08-31 09:24:27,673.673 INFO    ] 200
[2026-08-31 09:24:27,676.676 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:24:27,717.717 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:24:27,822.822 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:24:27,825.825 INFO    ] No camera update needed
[2026-08-31 09:24:27,827.827 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:24:27,829.829 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:24:27,835.835 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:24:27,840.840 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:24:29,882.882 INFO    ] ================================================
[2026-08-31 09:24:29,898.898 INFO    ] Launching Daemon at Mon Aug 31 09:24:29 IST 2026
[2026-08-31 09:24:29,908.908 INFO    ] ================================================
[2026-08-31 09:24:30,481.481 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:24:30
[2026-08-31 09:24:31,072.072 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:24:31,353.353 INFO    ] Initializing speech engine...
[2026-08-31 09:24:31,360.360 INFO    ] 2026-08-31 09:24:31
[2026-08-31 09:24:31,629.629 INFO    ] 2026-08-31 09:24:31
[2026-08-31 09:24:31,666.666 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:24:31,926.926 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:24:31,936.936 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:24:32,172.172 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:24:32,213.213 INFO    ] time= 31/08/2026 09:24:32
[2026-08-31 09:24:32,232.232 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:24:32,241.241 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:24:32,378.378 INFO    ] No existing commands found in stream
[2026-08-31 09:24:37,412.412 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:24:37,415.415 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-08-31 09:24:40,378.378 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 09:24:40,381.381 INFO    ] Checking for system updates...
[2026-08-31 09:24:40,416.416 INFO    ] 200
[2026-08-31 09:24:40,419.419 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:24:40,479.479 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:24:40,482.482 INFO    ] No update needed
[2026-08-31 09:24:40,485.485 INFO    ] Checking for camera pi updates...
[2026-08-31 09:24:40,519.519 INFO    ] 200
[2026-08-31 09:24:40,521.521 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:24:40,561.561 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:24:40,647.647 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:24:40,650.650 INFO    ] No camera update needed
[2026-08-31 09:24:40,652.652 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:24:40,655.655 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:24:40,660.660 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:24:40,665.665 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:24:42,706.706 INFO    ] ================================================
[2026-08-31 09:24:42,722.722 INFO    ] Launching Daemon at Mon Aug 31 09:24:42 IST 2026
[2026-08-31 09:24:42,732.732 INFO    ] ================================================
[2026-08-31 09:24:43,297.297 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:24:43
[2026-08-31 09:24:43,876.876 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:24:44,147.147 INFO    ] Initializing speech engine...
[2026-08-31 09:24:44,153.153 INFO    ] 2026-08-31 09:24:44
[2026-08-31 09:24:44,410.410 INFO    ] 2026-08-31 09:24:44
[2026-08-31 09:24:44,464.464 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:24:44,812.812 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:24:44,852.852 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:24:45,082.082 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:24:45,108.108 INFO    ] time= 31/08/2026 09:24:45
[2026-08-31 09:24:45,162.162 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:24:45,199.199 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:24:45,344.344 INFO    ] No existing commands found in stream
[2026-08-31 09:24:50,357.357 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:24:50,360.360 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-08-31 09:24:52,473.473 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 09:24:52,477.477 INFO    ] Checking for system updates...
[2026-08-31 09:24:52,512.512 INFO    ] 200
[2026-08-31 09:24:52,515.515 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:24:52,566.566 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:24:52,568.568 INFO    ] No update needed
[2026-08-31 09:24:52,571.571 INFO    ] Checking for camera pi updates...
[2026-08-31 09:24:52,605.605 INFO    ] 200
[2026-08-31 09:24:52,607.607 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:24:52,647.647 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:24:52,736.736 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:24:52,739.739 INFO    ] No camera update needed
[2026-08-31 09:24:52,741.741 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:24:52,743.743 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:24:52,749.749 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:24:52,754.754 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:24:54,795.795 INFO    ] ================================================
[2026-08-31 09:24:54,810.810 INFO    ] Launching Daemon at Mon Aug 31 09:24:54 IST 2026
[2026-08-31 09:24:54,821.821 INFO    ] ================================================
[2026-08-31 09:24:55,391.391 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:24:55
[2026-08-31 09:24:55,977.977 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:24:56,246.246 INFO    ] Initializing speech engine...
[2026-08-31 09:24:56,255.255 INFO    ] 2026-08-31 09:24:56
[2026-08-31 09:24:56,501.501 INFO    ] 2026-08-31 09:24:56
[2026-08-31 09:24:56,528.528 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:24:56,743.743 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:24:56,788.788 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:24:56,949.949 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:24:56,993.993 INFO    ] time= 31/08/2026 09:24:56
[2026-08-31 09:24:57,058.058 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:24:57,082.082 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:24:57,213.213 INFO    ] No existing commands found in stream
[2026-08-31 09:25:02,240.240 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:25:02,243.243 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-08-31 09:25:04,298.298 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 09:25:04,300.300 INFO    ] Checking for system updates...
[2026-08-31 09:25:04,337.337 INFO    ] 200
[2026-08-31 09:25:04,340.340 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:25:04,391.391 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:25:04,394.394 INFO    ] No update needed
[2026-08-31 09:25:04,396.396 INFO    ] Checking for camera pi updates...
[2026-08-31 09:25:04,432.432 INFO    ] 200
[2026-08-31 09:25:04,435.435 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:25:04,480.480 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:25:04,582.582 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:25:04,584.584 INFO    ] No camera update needed
[2026-08-31 09:25:04,586.586 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:25:04,589.589 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:25:04,594.594 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:25:04,599.599 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:25:06,640.640 INFO    ] ================================================
[2026-08-31 09:25:06,656.656 INFO    ] Launching Daemon at Mon Aug 31 09:25:06 IST 2026
[2026-08-31 09:25:06,667.667 INFO    ] ================================================
[2026-08-31 09:25:07,238.238 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:25:07
[2026-08-31 09:25:07,825.825 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:25:08,078.078 INFO    ] Initializing speech engine...
[2026-08-31 09:25:08,088.088 INFO    ] 2026-08-31 09:25:08
[2026-08-31 09:25:08,383.383 INFO    ] 2026-08-31 09:25:08
[2026-08-31 09:25:08,420.420 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:25:08,618.618 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:25:08,630.630 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:25:08,774.774 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:25:08,796.796 INFO    ] time= 31/08/2026 09:25:08
[2026-08-31 09:25:08,805.805 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:25:08,811.811 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:25:08,887.887 INFO    ] No existing commands found in stream
[2026-08-31 09:25:13,922.922 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:25:13,925.925 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-08-31 09:25:17,655.655 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 09:25:17,658.658 INFO    ] Checking for system updates...
[2026-08-31 09:25:17,693.693 INFO    ] 200
[2026-08-31 09:25:17,695.695 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:25:17,747.747 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:25:17,750.750 INFO    ] No update needed
[2026-08-31 09:25:17,752.752 INFO    ] Checking for camera pi updates...
[2026-08-31 09:25:17,785.785 INFO    ] 200
[2026-08-31 09:25:17,787.787 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:25:17,832.832 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:25:17,885.885 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:25:17,888.888 INFO    ] No camera update needed
[2026-08-31 09:25:17,890.890 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:25:17,893.893 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:25:17,898.898 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:25:17,903.903 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:25:19,942.942 INFO    ] ================================================
[2026-08-31 09:25:19,958.958 INFO    ] Launching Daemon at Mon Aug 31 09:25:19 IST 2026
[2026-08-31 09:25:19,970.970 INFO    ] ================================================
[2026-08-31 09:25:20,627.627 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:25:20
[2026-08-31 09:25:21,292.292 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:25:21,572.572 INFO    ] Initializing speech engine...
[2026-08-31 09:25:21,581.581 INFO    ] 2026-08-31 09:25:21
[2026-08-31 09:25:21,827.827 INFO    ] 2026-08-31 09:25:21
[2026-08-31 09:25:21,863.863 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:25:22,114.114 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:25:22,123.123 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:25:22,345.345 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:25:22,383.383 INFO    ] time= 31/08/2026 09:25:22
[2026-08-31 09:25:22,398.398 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:25:22,407.407 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:25:22,534.534 INFO    ] No existing commands found in stream
[2026-08-31 09:25:27,549.549 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:25:27,552.552 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-08-31 09:25:31,977.977 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 09:25:31,980.980 INFO    ] Checking for system updates...
[2026-08-31 09:25:32,022.022 INFO    ] 200
[2026-08-31 09:25:32,025.025 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:25:32,085.085 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:25:32,088.088 INFO    ] No update needed
[2026-08-31 09:25:32,091.091 INFO    ] Checking for camera pi updates...
[2026-08-31 09:25:32,133.133 INFO    ] 200
[2026-08-31 09:25:32,136.136 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:25:32,182.182 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:25:32,272.272 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:25:32,275.275 INFO    ] No camera update needed
[2026-08-31 09:25:32,278.278 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:25:32,281.281 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:25:32,289.289 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:25:32,296.296 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:25:34,339.339 INFO    ] ================================================
[2026-08-31 09:25:34,354.354 INFO    ] Launching Daemon at Mon Aug 31 09:25:34 IST 2026
[2026-08-31 09:25:34,365.365 INFO    ] ================================================
[2026-08-31 09:25:34,956.956 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:25:34
[2026-08-31 09:25:35,561.561 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:25:35,837.837 INFO    ] Initializing speech engine...
[2026-08-31 09:25:35,843.843 INFO    ] 2026-08-31 09:25:35
[2026-08-31 09:25:36,090.090 INFO    ] 2026-08-31 09:25:36
[2026-08-31 09:25:36,125.125 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:25:36,381.381 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:25:36,387.387 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:25:36,636.636 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:25:36,644.644 INFO    ] time= 31/08/2026 09:25:36
[2026-08-31 09:25:36,663.663 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:25:36,679.679 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:25:36,811.811 INFO    ] No existing commands found in stream
[2026-08-31 09:25:41,836.836 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:25:41,839.839 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-08-31 09:25:45,463.463 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 09:25:45,465.465 INFO    ] Checking for system updates...
[2026-08-31 09:25:45,502.502 INFO    ] 200
[2026-08-31 09:25:45,505.505 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:25:45,560.560 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:25:45,562.562 INFO    ] No update needed
[2026-08-31 09:25:45,565.565 INFO    ] Checking for camera pi updates...
[2026-08-31 09:25:45,603.603 INFO    ] 200
[2026-08-31 09:25:45,606.606 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:25:45,647.647 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:25:45,815.815 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:25:45,818.818 INFO    ] No camera update needed
[2026-08-31 09:25:45,821.821 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:25:45,824.824 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:25:45,830.830 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:25:45,836.836 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:25:47,876.876 INFO    ] ================================================
[2026-08-31 09:25:47,892.892 INFO    ] Launching Daemon at Mon Aug 31 09:25:47 IST 2026
[2026-08-31 09:25:47,903.903 INFO    ] ================================================
[2026-08-31 09:25:48,475.475 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:25:48
[2026-08-31 09:25:49,063.063 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:25:49,324.324 INFO    ] Initializing speech engine...
[2026-08-31 09:25:49,344.344 INFO    ] 2026-08-31 09:25:49
[2026-08-31 09:25:49,595.595 INFO    ] 2026-08-31 09:25:49
[2026-08-31 09:25:49,631.631 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:25:49,887.887 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:25:49,896.896 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:25:50,034.034 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:25:50,089.089 INFO    ] time= 31/08/2026 09:25:50
[2026-08-31 09:25:50,138.138 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:25:50,168.168 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:25:50,299.299 INFO    ] No existing commands found in stream
[2026-08-31 09:25:55,327.327 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:25:55,330.330 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-08-31 09:25:59,222.222 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 09:25:59,225.225 INFO    ] Checking for system updates...
[2026-08-31 09:25:59,264.264 INFO    ] 200
[2026-08-31 09:25:59,267.267 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:25:59,318.318 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:25:59,321.321 INFO    ] No update needed
[2026-08-31 09:25:59,323.323 INFO    ] Checking for camera pi updates...
[2026-08-31 09:25:59,356.356 INFO    ] 200
[2026-08-31 09:25:59,359.359 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:25:59,402.402 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:25:59,481.481 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:25:59,483.483 INFO    ] No camera update needed
[2026-08-31 09:25:59,485.485 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:25:59,488.488 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:25:59,493.493 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:25:59,498.498 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:26:01,544.544 INFO    ] ================================================
[2026-08-31 09:26:01,569.569 INFO    ] Launching Daemon at Mon Aug 31 09:26:01 IST 2026
[2026-08-31 09:26:01,590.590 INFO    ] ================================================
[2026-08-31 09:26:02,318.318 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:26:02
[2026-08-31 09:26:02,985.985 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:26:03,291.291 INFO    ] Initializing speech engine...
[2026-08-31 09:26:03,311.311 INFO    ] 2026-08-31 09:26:03
[2026-08-31 09:26:03,599.599 INFO    ] 2026-08-31 09:26:03
[2026-08-31 09:26:03,661.661 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:26:03,952.952 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:26:03,961.961 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:26:04,160.160 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:26:04,167.167 INFO    ] time= 31/08/2026 09:26:04
[2026-08-31 09:26:04,186.186 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:26:04,215.215 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:26:04,324.324 INFO    ] No existing commands found in stream
[2026-08-31 09:26:09,336.336 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:26:09,340.340 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-08-31 09:26:13,072.072 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 09:26:13,075.075 INFO    ] Checking for system updates...
[2026-08-31 09:26:13,113.113 INFO    ] 200
[2026-08-31 09:26:13,116.116 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:26:13,168.168 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:26:13,171.171 INFO    ] No update needed
[2026-08-31 09:26:13,174.174 INFO    ] Checking for camera pi updates...
[2026-08-31 09:26:13,208.208 INFO    ] 200
[2026-08-31 09:26:13,211.211 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:26:13,253.253 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:26:13,355.355 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:26:13,358.358 INFO    ] No camera update needed
[2026-08-31 09:26:13,360.360 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:26:13,363.363 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:26:13,369.369 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:26:13,375.375 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:26:15,418.418 INFO    ] ================================================
[2026-08-31 09:26:15,434.434 INFO    ] Launching Daemon at Mon Aug 31 09:26:15 IST 2026
[2026-08-31 09:26:15,445.445 INFO    ] ================================================
[2026-08-31 09:26:16,029.029 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:26:16
[2026-08-31 09:26:16,625.625 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:26:16,905.905 INFO    ] Initializing speech engine...
[2026-08-31 09:26:16,911.911 INFO    ] 2026-08-31 09:26:16
[2026-08-31 09:26:17,173.173 INFO    ] 2026-08-31 09:26:17
[2026-08-31 09:26:17,226.226 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:26:17,452.452 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:26:17,458.458 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:26:17,658.658 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:26:17,713.713 INFO    ] time= 31/08/2026 09:26:17
[2026-08-31 09:26:17,719.719 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:26:17,738.738 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:26:17,872.872 INFO    ] No existing commands found in stream
[2026-08-31 09:26:22,898.898 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:26:22,901.901 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-08-31 09:26:26,128.128 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 09:26:26,131.131 INFO    ] Checking for system updates...
[2026-08-31 09:26:26,167.167 INFO    ] 200
[2026-08-31 09:26:26,169.169 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:26:26,223.223 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:26:26,226.226 INFO    ] No update needed
[2026-08-31 09:26:26,228.228 INFO    ] Checking for camera pi updates...
[2026-08-31 09:26:26,262.262 INFO    ] 200
[2026-08-31 09:26:26,264.264 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:26:26,310.310 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:26:26,394.394 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:26:26,396.396 INFO    ] No camera update needed
[2026-08-31 09:26:26,399.399 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:26:26,401.401 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:26:26,407.407 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:26:26,412.412 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:26:28,453.453 INFO    ] ================================================
[2026-08-31 09:26:28,469.469 INFO    ] Launching Daemon at Mon Aug 31 09:26:28 IST 2026
[2026-08-31 09:26:28,480.480 INFO    ] ================================================
[2026-08-31 09:26:29,052.052 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:26:29
[2026-08-31 09:26:29,648.648 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:26:29,916.916 INFO    ] Initializing speech engine...
[2026-08-31 09:26:29,934.934 INFO    ] 2026-08-31 09:26:29
[2026-08-31 09:26:30,184.184 INFO    ] 2026-08-31 09:26:30
[2026-08-31 09:26:30,220.220 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:26:30,480.480 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:26:30,490.490 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:26:30,698.698 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:26:30,748.748 INFO    ] time= 31/08/2026 09:26:30
[2026-08-31 09:26:30,764.764 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:26:30,774.774 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:26:30,883.883 INFO    ] No existing commands found in stream
[2026-08-31 09:26:35,912.912 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:26:35,915.915 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-08-31 09:26:38,088.088 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 09:26:38,090.090 INFO    ] Checking for system updates...
[2026-08-31 09:26:38,130.130 INFO    ] 200
[2026-08-31 09:26:38,132.132 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:26:38,184.184 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:26:38,187.187 INFO    ] No update needed
[2026-08-31 09:26:38,189.189 INFO    ] Checking for camera pi updates...
[2026-08-31 09:26:38,222.222 INFO    ] 200
[2026-08-31 09:26:38,225.225 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:26:38,270.270 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:26:38,372.372 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:26:38,375.375 INFO    ] No camera update needed
[2026-08-31 09:26:38,377.377 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:26:38,379.379 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:26:38,385.385 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:26:38,390.390 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:26:40,430.430 INFO    ] ================================================
[2026-08-31 09:26:40,445.445 INFO    ] Launching Daemon at Mon Aug 31 09:26:40 IST 2026
[2026-08-31 09:26:40,456.456 INFO    ] ================================================
[2026-08-31 09:26:41,076.076 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:26:41
[2026-08-31 09:26:41,751.751 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:26:42,045.045 INFO    ] Initializing speech engine...
[2026-08-31 09:26:42,053.053 INFO    ] 2026-08-31 09:26:42
[2026-08-31 09:26:42,323.323 INFO    ] 2026-08-31 09:26:42
[2026-08-31 09:26:42,365.365 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:26:42,589.589 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:26:42,594.594 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:26:42,802.802 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:26:42,848.848 INFO    ] time= 31/08/2026 09:26:42
[2026-08-31 09:26:42,854.854 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:26:42,871.871 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:26:42,976.976 INFO    ] No existing commands found in stream
[2026-08-31 09:26:48,006.006 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:26:48,009.009 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-08-31 09:26:52,215.215 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 09:26:52,217.217 INFO    ] Checking for system updates...
[2026-08-31 09:26:52,253.253 INFO    ] 200
[2026-08-31 09:26:52,256.256 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:26:52,308.308 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:26:52,311.311 INFO    ] No update needed
[2026-08-31 09:26:52,313.313 INFO    ] Checking for camera pi updates...
[2026-08-31 09:26:52,346.346 INFO    ] 200
[2026-08-31 09:26:52,349.349 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:26:52,388.388 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:26:52,474.474 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:26:52,476.476 INFO    ] No camera update needed
[2026-08-31 09:26:52,479.479 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:26:52,481.481 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:26:52,486.486 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:26:52,491.491 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:26:54,531.531 INFO    ] ================================================
[2026-08-31 09:26:54,547.547 INFO    ] Launching Daemon at Mon Aug 31 09:26:54 IST 2026
[2026-08-31 09:26:54,558.558 INFO    ] ================================================
[2026-08-31 09:26:55,212.212 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:26:55
[2026-08-31 09:26:55,801.801 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:26:56,050.050 INFO    ] Initializing speech engine...
[2026-08-31 09:26:56,065.065 INFO    ] 2026-08-31 09:26:56
[2026-08-31 09:26:56,330.330 INFO    ] 2026-08-31 09:26:56
[2026-08-31 09:26:56,365.365 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:26:56,569.569 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:26:56,628.628 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:26:56,772.772 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:26:56,837.837 INFO    ] time= 31/08/2026 09:26:56
[2026-08-31 09:26:56,896.896 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:26:56,911.911 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:26:56,999.999 INFO    ] No existing commands found in stream
[2026-08-31 09:27:02,030.030 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:27:02,034.034 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-08-31 09:27:02,550.550 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 09:27:02,553.553 INFO    ] Checking for system updates...
[2026-08-31 09:27:02,602.602 INFO    ] 200
[2026-08-31 09:27:02,605.605 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:27:02,679.679 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:27:02,689.689 INFO    ] No update needed
[2026-08-31 09:27:02,696.696 INFO    ] Checking for camera pi updates...
[2026-08-31 09:27:02,742.742 INFO    ] 200
[2026-08-31 09:27:02,745.745 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:27:02,799.799 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:27:02,851.851 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:27:02,853.853 INFO    ] No camera update needed
[2026-08-31 09:27:02,855.855 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:27:02,858.858 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:27:02,863.863 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:27:02,868.868 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:27:04,911.911 INFO    ] ================================================
[2026-08-31 09:27:04,927.927 INFO    ] Launching Daemon at Mon Aug 31 09:27:04 IST 2026
[2026-08-31 09:27:04,939.939 INFO    ] ================================================
[2026-08-31 09:27:05,531.531 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:27:05
[2026-08-31 09:27:06,139.139 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:27:06,440.440 INFO    ] Initializing speech engine...
[2026-08-31 09:27:06,449.449 INFO    ] 2026-08-31 09:27:06
[2026-08-31 09:27:06,699.699 INFO    ] 2026-08-31 09:27:06
[2026-08-31 09:27:06,735.735 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:27:06,986.986 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:27:06,996.996 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:27:07,215.215 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:27:07,256.256 INFO    ] time= 31/08/2026 09:27:07
[2026-08-31 09:27:07,263.263 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:27:07,280.280 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:27:07,412.412 INFO    ] No existing commands found in stream
[2026-08-31 09:27:12,436.436 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:27:12,439.439 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-08-31 09:27:15,546.546 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 09:27:15,549.549 INFO    ] Checking for system updates...
[2026-08-31 09:27:15,584.584 INFO    ] 200
[2026-08-31 09:27:15,587.587 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:27:15,640.640 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:27:15,643.643 INFO    ] No update needed
[2026-08-31 09:27:15,645.645 INFO    ] Checking for camera pi updates...
[2026-08-31 09:27:15,682.682 INFO    ] 200
[2026-08-31 09:27:15,684.684 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:27:15,726.726 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:27:15,832.832 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:27:15,834.834 INFO    ] No camera update needed
[2026-08-31 09:27:15,836.836 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:27:15,839.839 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:27:15,844.844 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:27:15,850.850 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:27:17,889.889 INFO    ] ================================================
[2026-08-31 09:27:17,904.904 INFO    ] Launching Daemon at Mon Aug 31 09:27:17 IST 2026
[2026-08-31 09:27:17,915.915 INFO    ] ================================================
[2026-08-31 09:27:18,479.479 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:27:18
[2026-08-31 09:27:19,059.059 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:27:19,327.327 INFO    ] Initializing speech engine...
[2026-08-31 09:27:19,337.337 INFO    ] 2026-08-31 09:27:19
[2026-08-31 09:27:19,588.588 INFO    ] 2026-08-31 09:27:19
[2026-08-31 09:27:19,647.647 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:27:19,867.867 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:27:19,876.876 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:27:20,092.092 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:27:20,133.133 INFO    ] time= 31/08/2026 09:27:20
[2026-08-31 09:27:20,139.139 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:27:20,156.156 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:27:20,287.287 INFO    ] No existing commands found in stream
[2026-08-31 09:27:25,299.299 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:27:25,301.301 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-08-31 09:27:26,470.470 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 09:27:26,472.472 INFO    ] Checking for system updates...
[2026-08-31 09:27:26,508.508 INFO    ] 200
[2026-08-31 09:27:26,511.511 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:27:26,568.568 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:27:26,571.571 INFO    ] No update needed
[2026-08-31 09:27:26,573.573 INFO    ] Checking for camera pi updates...
[2026-08-31 09:27:26,610.610 INFO    ] 200
[2026-08-31 09:27:26,612.612 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:27:26,653.653 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:27:26,734.734 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:27:26,736.736 INFO    ] No camera update needed
[2026-08-31 09:27:26,739.739 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:27:26,741.741 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:27:26,746.746 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:27:26,751.751 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:27:28,791.791 INFO    ] ================================================
[2026-08-31 09:27:28,806.806 INFO    ] Launching Daemon at Mon Aug 31 09:27:28 IST 2026
[2026-08-31 09:27:28,816.816 INFO    ] ================================================
[2026-08-31 09:27:29,414.414 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:27:29
[2026-08-31 09:27:30,015.015 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:27:30,268.268 INFO    ] Initializing speech engine...
[2026-08-31 09:27:30,288.288 INFO    ] 2026-08-31 09:27:30
[2026-08-31 09:27:30,547.547 INFO    ] 2026-08-31 09:27:30
[2026-08-31 09:27:30,584.584 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:27:30,835.835 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:27:30,844.844 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:27:31,051.051 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:27:31,100.100 INFO    ] time= 31/08/2026 09:27:31
[2026-08-31 09:27:31,106.106 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:27:31,124.124 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:27:31,251.251 INFO    ] No existing commands found in stream
[2026-08-31 09:27:36,276.276 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:27:36,279.279 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-08-31 09:27:39,745.745 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 09:27:39,748.748 INFO    ] Checking for system updates...
[2026-08-31 09:27:39,784.784 INFO    ] 200
[2026-08-31 09:27:39,786.786 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:27:39,839.839 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:27:39,841.841 INFO    ] No update needed
[2026-08-31 09:27:39,844.844 INFO    ] Checking for camera pi updates...
[2026-08-31 09:27:39,877.877 INFO    ] 200
[2026-08-31 09:27:39,879.879 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:27:39,920.920 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:27:40,015.015 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:27:40,017.017 INFO    ] No camera update needed
[2026-08-31 09:27:40,020.020 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:27:40,022.022 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:27:40,027.027 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:27:40,032.032 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:27:42,072.072 INFO    ] ================================================
[2026-08-31 09:27:42,093.093 INFO    ] Launching Daemon at Mon Aug 31 09:27:42 IST 2026
[2026-08-31 09:27:42,104.104 INFO    ] ================================================
[2026-08-31 09:27:42,742.742 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:27:42
[2026-08-31 09:27:43,407.407 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:27:43,713.713 INFO    ] Initializing speech engine...
[2026-08-31 09:27:43,724.724 INFO    ] 2026-08-31 09:27:43
[2026-08-31 09:27:44,000.000 INFO    ] 2026-08-31 09:27:43
[2026-08-31 09:27:44,046.046 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:27:44,294.294 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:27:44,299.299 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:27:44,493.493 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:27:44,534.534 INFO    ] time= 31/08/2026 09:27:44
[2026-08-31 09:27:44,540.540 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:27:44,562.562 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:27:44,692.692 INFO    ] No existing commands found in stream
[2026-08-31 09:27:49,715.715 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:27:49,718.718 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-08-31 09:27:52,499.499 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 09:27:52,502.502 INFO    ] Checking for system updates...
[2026-08-31 09:27:52,539.539 INFO    ] 200
[2026-08-31 09:27:52,542.542 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:27:52,595.595 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:27:52,597.597 INFO    ] No update needed
[2026-08-31 09:27:52,600.600 INFO    ] Checking for camera pi updates...
[2026-08-31 09:27:52,634.634 INFO    ] 200
[2026-08-31 09:27:52,637.637 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:27:52,682.682 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:27:52,848.848 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:27:52,851.851 INFO    ] No camera update needed
[2026-08-31 09:27:52,854.854 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:27:52,856.856 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:27:52,863.863 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:27:52,868.868 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:27:54,908.908 INFO    ] ================================================
[2026-08-31 09:27:54,924.924 INFO    ] Launching Daemon at Mon Aug 31 09:27:54 IST 2026
[2026-08-31 09:27:54,935.935 INFO    ] ================================================
[2026-08-31 09:27:55,507.507 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:27:55
[2026-08-31 09:27:56,090.090 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:27:56,343.343 INFO    ] Initializing speech engine...
[2026-08-31 09:27:56,349.349 INFO    ] 2026-08-31 09:27:56
[2026-08-31 09:27:56,642.642 INFO    ] 2026-08-31 09:27:56
[2026-08-31 09:27:56,680.680 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:27:56,899.899 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:27:56,907.907 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:27:57,124.124 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:27:57,147.147 INFO    ] time= 31/08/2026 09:27:57
[2026-08-31 09:27:57,211.211 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:27:57,266.266 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:27:57,408.408 INFO    ] No existing commands found in stream
[2026-08-31 09:28:02,430.430 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:28:02,433.433 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-08-31 09:28:03,253.253 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 09:28:03,256.256 INFO    ] Checking for system updates...
[2026-08-31 09:28:03,301.301 INFO    ] 200
[2026-08-31 09:28:03,304.304 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:28:03,365.365 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:28:03,368.368 INFO    ] No update needed
[2026-08-31 09:28:03,370.370 INFO    ] Checking for camera pi updates...
[2026-08-31 09:28:03,407.407 INFO    ] 200
[2026-08-31 09:28:03,410.410 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:28:03,450.450 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:28:03,529.529 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:28:03,532.532 INFO    ] No camera update needed
[2026-08-31 09:28:03,534.534 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:28:03,536.536 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:28:03,541.541 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:28:03,546.546 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:28:05,588.588 INFO    ] ================================================
[2026-08-31 09:28:05,604.604 INFO    ] Launching Daemon at Mon Aug 31 09:28:05 IST 2026
[2026-08-31 09:28:05,615.615 INFO    ] ================================================
[2026-08-31 09:28:06,205.205 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:28:06
[2026-08-31 09:28:06,884.884 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:28:07,183.183 INFO    ] Initializing speech engine...
[2026-08-31 09:28:07,195.195 INFO    ] 2026-08-31 09:28:07
[2026-08-31 09:28:07,481.481 INFO    ] 2026-08-31 09:28:07
[2026-08-31 09:28:07,589.589 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:28:07,743.743 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:28:07,749.749 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:28:07,946.946 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:28:08,007.007 INFO    ] time= 31/08/2026 09:28:07
[2026-08-31 09:28:08,025.025 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:28:08,035.035 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:28:08,163.163 INFO    ] No existing commands found in stream
[2026-08-31 09:28:13,179.179 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:28:13,182.182 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-08-31 09:28:17,018.018 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 09:28:17,021.021 INFO    ] Checking for system updates...
[2026-08-31 09:28:17,058.058 INFO    ] 200
[2026-08-31 09:28:17,061.061 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:28:17,113.113 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:28:17,116.116 INFO    ] No update needed
[2026-08-31 09:28:17,118.118 INFO    ] Checking for camera pi updates...
[2026-08-31 09:28:17,152.152 INFO    ] 200
[2026-08-31 09:28:17,155.155 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:28:17,196.196 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:28:17,276.276 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:28:17,279.279 INFO    ] No camera update needed
[2026-08-31 09:28:17,281.281 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:28:17,284.284 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:28:17,289.289 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:28:17,294.294 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:28:19,333.333 INFO    ] ================================================
[2026-08-31 09:28:19,349.349 INFO    ] Launching Daemon at Mon Aug 31 09:28:19 IST 2026
[2026-08-31 09:28:19,360.360 INFO    ] ================================================
[2026-08-31 09:28:20,014.014 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:28:20
[2026-08-31 09:28:20,687.687 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:28:20,991.991 INFO    ] Initializing speech engine...
[2026-08-31 09:28:21,005.005 INFO    ] 2026-08-31 09:28:20
[2026-08-31 09:28:21,314.314 INFO    ] 2026-08-31 09:28:21
[2026-08-31 09:28:21,396.396 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:28:21,572.572 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:28:21,578.578 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:28:21,803.803 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:28:21,816.816 INFO    ] time= 31/08/2026 09:28:21
[2026-08-31 09:28:21,837.837 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:28:21,863.863 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:28:21,971.971 INFO    ] No existing commands found in stream
[2026-08-31 09:28:27,000.000 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:28:27,003.003 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-08-31 09:28:28,030.030 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 09:28:28,033.033 INFO    ] Checking for system updates...
[2026-08-31 09:28:28,068.068 INFO    ] 200
[2026-08-31 09:28:28,071.071 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:28:28,123.123 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:28:28,126.126 INFO    ] No update needed
[2026-08-31 09:28:28,128.128 INFO    ] Checking for camera pi updates...
[2026-08-31 09:28:28,161.161 INFO    ] 200
[2026-08-31 09:28:28,164.164 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:28:28,210.210 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:28:28,299.299 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:28:28,302.302 INFO    ] No camera update needed
[2026-08-31 09:28:28,304.304 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:28:28,306.306 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:28:28,312.312 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:28:28,316.316 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:28:30,357.357 INFO    ] ================================================
[2026-08-31 09:28:30,373.373 INFO    ] Launching Daemon at Mon Aug 31 09:28:30 IST 2026
[2026-08-31 09:28:30,384.384 INFO    ] ================================================
[2026-08-31 09:28:30,949.949 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:28:30
[2026-08-31 09:28:31,552.552 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:28:31,816.816 INFO    ] Initializing speech engine...
[2026-08-31 09:28:31,838.838 INFO    ] 2026-08-31 09:28:31
[2026-08-31 09:28:32,141.141 INFO    ] 2026-08-31 09:28:32
[2026-08-31 09:28:32,178.178 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:28:32,448.448 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:28:32,466.466 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:28:32,613.613 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:28:32,672.672 INFO    ] time= 31/08/2026 09:28:32
[2026-08-31 09:28:32,731.731 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:28:32,762.762 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:28:32,824.824 INFO    ] No existing commands found in stream
[2026-08-31 09:28:37,834.834 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:28:37,837.837 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-08-31 09:28:40,113.113 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 09:28:40,116.116 INFO    ] Checking for system updates...
[2026-08-31 09:28:40,152.152 INFO    ] 200
[2026-08-31 09:28:40,154.154 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:28:40,213.213 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:28:40,215.215 INFO    ] No update needed
[2026-08-31 09:28:40,217.217 INFO    ] Checking for camera pi updates...
[2026-08-31 09:28:40,255.255 INFO    ] 200
[2026-08-31 09:28:40,258.258 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:28:40,302.302 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:28:40,399.399 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:28:40,402.402 INFO    ] No camera update needed
[2026-08-31 09:28:40,404.404 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:28:40,406.406 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:28:40,411.411 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:28:40,416.416 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:28:42,456.456 INFO    ] ================================================
[2026-08-31 09:28:42,471.471 INFO    ] Launching Daemon at Mon Aug 31 09:28:42 IST 2026
[2026-08-31 09:28:42,488.488 INFO    ] ================================================
[2026-08-31 09:28:43,131.131 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:28:43
[2026-08-31 09:28:43,794.794 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:28:44,097.097 INFO    ] Initializing speech engine...
[2026-08-31 09:28:44,108.108 INFO    ] 2026-08-31 09:28:44
[2026-08-31 09:28:44,385.385 INFO    ] 2026-08-31 09:28:44
[2026-08-31 09:28:44,430.430 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:28:44,681.681 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:28:44,699.699 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:28:44,898.898 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:28:44,920.920 INFO    ] time= 31/08/2026 09:28:44
[2026-08-31 09:28:44,938.938 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:28:44,945.945 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:28:45,061.061 INFO    ] No existing commands found in stream
[2026-08-31 09:28:50,088.088 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:28:50,091.091 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-08-31 09:28:51,527.527 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 09:28:51,530.530 INFO    ] Checking for system updates...
[2026-08-31 09:28:51,567.567 INFO    ] 200
[2026-08-31 09:28:51,570.570 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:28:51,623.623 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:28:51,626.626 INFO    ] No update needed
[2026-08-31 09:28:51,628.628 INFO    ] Checking for camera pi updates...
[2026-08-31 09:28:51,665.665 INFO    ] 200
[2026-08-31 09:28:51,668.668 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:28:51,709.709 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:28:51,790.790 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:28:51,793.793 INFO    ] No camera update needed
[2026-08-31 09:28:51,795.795 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:28:51,798.798 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:28:51,803.803 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:28:51,808.808 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:28:53,849.849 INFO    ] ================================================
[2026-08-31 09:28:53,864.864 INFO    ] Launching Daemon at Mon Aug 31 09:28:53 IST 2026
[2026-08-31 09:28:53,875.875 INFO    ] ================================================
[2026-08-31 09:28:54,479.479 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:28:54
[2026-08-31 09:28:55,143.143 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:28:55,441.441 INFO    ] Initializing speech engine...
[2026-08-31 09:28:55,448.448 INFO    ] 2026-08-31 09:28:55
[2026-08-31 09:28:55,735.735 INFO    ] 2026-08-31 09:28:55
[2026-08-31 09:28:55,780.780 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:28:56,065.065 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:28:56,081.081 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:28:56,264.264 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:28:56,282.282 INFO    ] time= 31/08/2026 09:28:56
[2026-08-31 09:28:56,293.293 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:28:56,321.321 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:28:56,444.444 INFO    ] No existing commands found in stream
[2026-08-31 09:29:01,471.471 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:29:01,477.477 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-08-31 09:29:04,651.651 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 09:29:04,655.655 INFO    ] Checking for system updates...
[2026-08-31 09:29:04,692.692 INFO    ] 200
[2026-08-31 09:29:04,694.694 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:29:04,752.752 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:29:04,755.755 INFO    ] No update needed
[2026-08-31 09:29:04,757.757 INFO    ] Checking for camera pi updates...
[2026-08-31 09:29:04,794.794 INFO    ] 200
[2026-08-31 09:29:04,797.797 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:29:04,841.841 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:29:04,944.944 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:29:04,947.947 INFO    ] No camera update needed
[2026-08-31 09:29:04,949.949 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:29:04,952.952 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:29:04,957.957 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:29:04,962.962 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:29:07,002.002 INFO    ] ================================================
[2026-08-31 09:29:07,016.016 INFO    ] Launching Daemon at Mon Aug 31 09:29:07 IST 2026
[2026-08-31 09:29:07,027.027 INFO    ] ================================================
[2026-08-31 09:29:07,673.673 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:29:07
[2026-08-31 09:29:08,339.339 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:29:08,643.643 INFO    ] Initializing speech engine...
[2026-08-31 09:29:08,655.655 INFO    ] 2026-08-31 09:29:08
[2026-08-31 09:29:08,963.963 INFO    ] 2026-08-31 09:29:08
[2026-08-31 09:29:09,047.047 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:29:09,203.203 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:29:09,208.208 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:29:09,433.433 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:29:09,465.465 INFO    ] time= 31/08/2026 09:29:09
[2026-08-31 09:29:09,484.484 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:29:09,515.515 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:29:09,644.644 INFO    ] No existing commands found in stream
[2026-08-31 09:29:14,675.675 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:29:14,678.678 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-08-31 09:29:18,850.850 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 09:29:18,853.853 INFO    ] Checking for system updates...
[2026-08-31 09:29:18,890.890 INFO    ] 200
[2026-08-31 09:29:18,893.893 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:29:18,952.952 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:29:18,954.954 INFO    ] No update needed
[2026-08-31 09:29:18,956.956 INFO    ] Checking for camera pi updates...
[2026-08-31 09:29:18,993.993 INFO    ] 200
[2026-08-31 09:29:18,996.996 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:29:19,040.040 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:29:19,169.169 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:29:19,171.171 INFO    ] No camera update needed
[2026-08-31 09:29:19,174.174 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:29:19,176.176 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:29:19,182.182 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:29:19,187.187 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:29:21,226.226 INFO    ] ================================================
[2026-08-31 09:29:21,241.241 INFO    ] Launching Daemon at Mon Aug 31 09:29:21 IST 2026
[2026-08-31 09:29:21,252.252 INFO    ] ================================================
[2026-08-31 09:29:21,818.818 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:29:21
[2026-08-31 09:29:22,400.400 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:29:22,669.669 INFO    ] Initializing speech engine...
[2026-08-31 09:29:22,678.678 INFO    ] 2026-08-31 09:29:22
[2026-08-31 09:29:22,925.925 INFO    ] 2026-08-31 09:29:22
[2026-08-31 09:29:22,990.990 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:29:23,215.215 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:29:23,220.220 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:29:23,353.353 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:29:23,393.393 INFO    ] time= 31/08/2026 09:29:23
[2026-08-31 09:29:23,447.447 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:29:23,485.485 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:29:23,619.619 INFO    ] No existing commands found in stream
[2026-08-31 09:29:28,643.643 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:29:28,646.646 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-08-31 09:29:32,267.267 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 09:29:32,270.270 INFO    ] Checking for system updates...
[2026-08-31 09:29:32,313.313 INFO    ] 200
[2026-08-31 09:29:32,316.316 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:29:32,381.381 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:29:32,384.384 INFO    ] No update needed
[2026-08-31 09:29:32,387.387 INFO    ] Checking for camera pi updates...
[2026-08-31 09:29:32,427.427 INFO    ] 200
[2026-08-31 09:29:32,430.430 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:29:32,479.479 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:29:32,532.532 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:29:32,535.535 INFO    ] No camera update needed
[2026-08-31 09:29:32,538.538 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:29:32,541.541 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:29:32,547.547 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:29:32,552.552 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:29:34,596.596 INFO    ] ================================================
[2026-08-31 09:29:34,612.612 INFO    ] Launching Daemon at Mon Aug 31 09:29:34 IST 2026
[2026-08-31 09:29:34,623.623 INFO    ] ================================================
[2026-08-31 09:29:35,187.187 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:29:35
[2026-08-31 09:29:35,768.768 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:29:36,036.036 INFO    ] Initializing speech engine...
[2026-08-31 09:29:36,045.045 INFO    ] 2026-08-31 09:29:36
[2026-08-31 09:29:36,291.291 INFO    ] 2026-08-31 09:29:36
[2026-08-31 09:29:36,325.325 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:29:36,576.576 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:29:36,585.585 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:29:36,793.793 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:29:36,845.845 INFO    ] time= 31/08/2026 09:29:36
[2026-08-31 09:29:36,851.851 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:29:36,868.868 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:29:37,001.001 INFO    ] No existing commands found in stream
[2026-08-31 09:29:42,028.028 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:29:42,031.031 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-08-31 09:29:44,246.246 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 09:29:44,249.249 INFO    ] Checking for system updates...
[2026-08-31 09:29:44,285.285 INFO    ] 200
[2026-08-31 09:29:44,287.287 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:29:44,347.347 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:29:44,350.350 INFO    ] No update needed
[2026-08-31 09:29:44,352.352 INFO    ] Checking for camera pi updates...
[2026-08-31 09:29:44,390.390 INFO    ] 200
[2026-08-31 09:29:44,392.392 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:29:44,438.438 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:29:44,521.521 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:29:44,524.524 INFO    ] No camera update needed
[2026-08-31 09:29:44,526.526 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:29:44,529.529 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:29:44,534.534 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:29:44,539.539 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:29:46,582.582 INFO    ] ================================================
[2026-08-31 09:29:46,597.597 INFO    ] Launching Daemon at Mon Aug 31 09:29:46 IST 2026
[2026-08-31 09:29:46,608.608 INFO    ] ================================================
[2026-08-31 09:29:47,195.195 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:29:47
[2026-08-31 09:29:47,837.837 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:29:48,083.083 INFO    ] Initializing speech engine...
[2026-08-31 09:29:48,102.102 INFO    ] 2026-08-31 09:29:48
[2026-08-31 09:29:48,356.356 INFO    ] 2026-08-31 09:29:48
[2026-08-31 09:29:48,392.392 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:29:48,648.648 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:29:48,655.655 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:29:48,871.871 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:29:48,909.909 INFO    ] time= 31/08/2026 09:29:48
[2026-08-31 09:29:48,915.915 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:29:48,933.933 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:29:49,062.062 INFO    ] No existing commands found in stream
[2026-08-31 09:29:54,074.074 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:29:54,077.077 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-08-31 09:29:55,233.233 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 09:29:55,235.235 INFO    ] Checking for system updates...
[2026-08-31 09:29:55,271.271 INFO    ] 200
[2026-08-31 09:29:55,274.274 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:29:55,326.326 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:29:55,328.328 INFO    ] No update needed
[2026-08-31 09:29:55,331.331 INFO    ] Checking for camera pi updates...
[2026-08-31 09:29:55,368.368 INFO    ] 200
[2026-08-31 09:29:55,371.371 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:29:55,416.416 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:29:55,611.611 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:29:55,614.614 INFO    ] No camera update needed
[2026-08-31 09:29:55,616.616 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:29:55,619.619 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:29:55,624.624 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:29:55,629.629 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:29:57,670.670 INFO    ] ================================================
[2026-08-31 09:29:57,685.685 INFO    ] Launching Daemon at Mon Aug 31 09:29:57 IST 2026
[2026-08-31 09:29:57,696.696 INFO    ] ================================================
[2026-08-31 09:29:58,262.262 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:29:58
[2026-08-31 09:29:58,845.845 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:29:59,101.101 INFO    ] Initializing speech engine...
[2026-08-31 09:29:59,120.120 INFO    ] 2026-08-31 09:29:59
[2026-08-31 09:29:59,367.367 INFO    ] 2026-08-31 09:29:59
[2026-08-31 09:29:59,402.402 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:29:59,654.654 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:29:59,664.664 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:29:59,893.893 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:29:59,923.923 INFO    ] time= 31/08/2026 09:29:59
[2026-08-31 09:29:59,929.929 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:29:59,946.946 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:30:00,051.051 INFO    ] No existing commands found in stream
[2026-08-31 09:30:05,081.081 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:30:05,084.084 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-08-31 09:30:07,823.823 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 09:30:07,825.825 INFO    ] Checking for system updates...
[2026-08-31 09:30:07,875.875 INFO    ] 200
[2026-08-31 09:30:07,878.878 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:30:07,940.940 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:30:07,942.942 INFO    ] No update needed
[2026-08-31 09:30:07,944.944 INFO    ] Checking for camera pi updates...
[2026-08-31 09:30:07,978.978 INFO    ] 200
[2026-08-31 09:30:07,981.981 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:30:08,025.025 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:30:08,100.100 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:30:08,102.102 INFO    ] No camera update needed
[2026-08-31 09:30:08,105.105 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:30:08,107.107 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:30:08,112.112 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:30:08,117.117 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:30:10,158.158 INFO    ] ================================================
[2026-08-31 09:30:10,173.173 INFO    ] Launching Daemon at Mon Aug 31 09:30:10 IST 2026
[2026-08-31 09:30:10,184.184 INFO    ] ================================================
[2026-08-31 09:30:10,787.787 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:30:10
[2026-08-31 09:30:11,371.371 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:30:11,619.619 INFO    ] Initializing speech engine...
[2026-08-31 09:30:11,641.641 INFO    ] 2026-08-31 09:30:11
[2026-08-31 09:30:11,895.895 INFO    ] 2026-08-31 09:30:11
[2026-08-31 09:30:11,930.930 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:30:12,127.127 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:30:12,185.185 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:30:12,324.324 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:30:12,389.389 INFO    ] time= 31/08/2026 09:30:12
[2026-08-31 09:30:12,448.448 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:30:12,459.459 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:30:12,589.589 INFO    ] No existing commands found in stream
[2026-08-31 09:30:17,613.613 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:30:17,615.615 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-08-31 09:30:18,728.728 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 09:30:18,731.731 INFO    ] Checking for system updates...
[2026-08-31 09:30:18,770.770 INFO    ] 200
[2026-08-31 09:30:18,773.773 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:30:18,831.831 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:30:18,834.834 INFO    ] No update needed
[2026-08-31 09:30:18,836.836 INFO    ] Checking for camera pi updates...
[2026-08-31 09:30:18,871.871 INFO    ] 200
[2026-08-31 09:30:18,874.874 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:30:18,914.914 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:30:19,000.000 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:30:19,002.002 INFO    ] No camera update needed
[2026-08-31 09:30:19,005.005 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:30:19,007.007 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:30:19,013.013 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:30:19,018.018 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:30:21,058.058 INFO    ] ================================================
[2026-08-31 09:30:21,073.073 INFO    ] Launching Daemon at Mon Aug 31 09:30:21 IST 2026
[2026-08-31 09:30:21,084.084 INFO    ] ================================================
[2026-08-31 09:30:21,650.650 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:30:21
[2026-08-31 09:30:22,232.232 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:30:22,500.500 INFO    ] Initializing speech engine...
[2026-08-31 09:30:22,509.509 INFO    ] 2026-08-31 09:30:22
[2026-08-31 09:30:22,754.754 INFO    ] 2026-08-31 09:30:22
[2026-08-31 09:30:22,795.795 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:30:23,039.039 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:30:23,048.048 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:30:23,300.300 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:30:23,307.307 INFO    ] time= 31/08/2026 09:30:23
[2026-08-31 09:30:23,324.324 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:30:23,336.336 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:30:23,458.458 INFO    ] No existing commands found in stream
[2026-08-31 09:30:28,478.478 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:30:28,481.481 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-08-31 09:30:29,111.111 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 09:30:29,114.114 INFO    ] Checking for system updates...
[2026-08-31 09:30:29,155.155 INFO    ] 200
[2026-08-31 09:30:29,158.158 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:30:29,219.219 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:30:29,222.222 INFO    ] No update needed
[2026-08-31 09:30:29,225.225 INFO    ] Checking for camera pi updates...
[2026-08-31 09:30:29,260.260 INFO    ] 200
[2026-08-31 09:30:29,263.263 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:30:29,315.315 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:30:29,397.397 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:30:29,400.400 INFO    ] No camera update needed
[2026-08-31 09:30:29,403.403 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:30:29,406.406 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:30:29,412.412 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:30:29,418.418 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:30:31,458.458 INFO    ] ================================================
[2026-08-31 09:30:31,473.473 INFO    ] Launching Daemon at Mon Aug 31 09:30:31 IST 2026
[2026-08-31 09:30:31,484.484 INFO    ] ================================================
[2026-08-31 09:30:32,091.091 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:30:32
[2026-08-31 09:30:32,723.723 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:30:33,030.030 INFO    ] Initializing speech engine...
[2026-08-31 09:30:33,043.043 INFO    ] 2026-08-31 09:30:33
[2026-08-31 09:30:33,321.321 INFO    ] 2026-08-31 09:30:33
[2026-08-31 09:30:33,358.358 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:30:33,601.601 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:30:33,618.618 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:30:33,871.871 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:30:33,887.887 INFO    ] time= 31/08/2026 09:30:33
[2026-08-31 09:30:33,902.902 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:30:33,911.911 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:30:34,040.040 INFO    ] No existing commands found in stream
[2026-08-31 09:30:39,061.061 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:30:39,063.063 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-08-31 09:30:42,208.208 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 09:30:42,211.211 INFO    ] Checking for system updates...
[2026-08-31 09:30:42,251.251 INFO    ] 200
[2026-08-31 09:30:42,254.254 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:30:42,313.313 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:30:42,316.316 INFO    ] No update needed
[2026-08-31 09:30:42,318.318 INFO    ] Checking for camera pi updates...
[2026-08-31 09:30:42,356.356 INFO    ] 200
[2026-08-31 09:30:42,359.359 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:30:42,400.400 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:30:42,507.507 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:30:42,509.509 INFO    ] No camera update needed
[2026-08-31 09:30:42,512.512 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:30:42,514.514 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:30:42,520.520 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:30:42,525.525 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:30:44,568.568 INFO    ] ================================================
[2026-08-31 09:30:44,583.583 INFO    ] Launching Daemon at Mon Aug 31 09:30:44 IST 2026
[2026-08-31 09:30:44,594.594 INFO    ] ================================================
[2026-08-31 09:30:45,269.269 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:30:45
[2026-08-31 09:30:45,962.962 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:30:46,272.272 INFO    ] Initializing speech engine...
[2026-08-31 09:30:46,281.281 INFO    ] 2026-08-31 09:30:46
[2026-08-31 09:30:46,580.580 INFO    ] 2026-08-31 09:30:46
[2026-08-31 09:30:46,690.690 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:30:46,974.974 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:30:47,045.045 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:30:47,272.272 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:30:47,328.328 INFO    ] time= 31/08/2026 09:30:47
[2026-08-31 09:30:47,372.372 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:30:47,438.438 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:30:47,559.559 INFO    ] No existing commands found in stream
[2026-08-31 09:30:52,570.570 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:30:52,573.573 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-08-31 09:30:54,387.387 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 09:30:54,389.389 INFO    ] Checking for system updates...
[2026-08-31 09:30:54,425.425 INFO    ] 200
[2026-08-31 09:30:54,427.427 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:30:54,488.488 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:30:54,490.490 INFO    ] No update needed
[2026-08-31 09:30:54,493.493 INFO    ] Checking for camera pi updates...
[2026-08-31 09:30:54,526.526 INFO    ] 200
[2026-08-31 09:30:54,529.529 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:30:54,573.573 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:30:54,654.654 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:30:54,657.657 INFO    ] No camera update needed
[2026-08-31 09:30:54,659.659 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:30:54,662.662 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:30:54,667.667 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:30:54,672.672 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:30:56,712.712 INFO    ] ================================================
[2026-08-31 09:30:56,727.727 INFO    ] Launching Daemon at Mon Aug 31 09:30:56 IST 2026
[2026-08-31 09:30:56,738.738 INFO    ] ================================================
[2026-08-31 09:30:57,420.420 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:30:57
[2026-08-31 09:30:58,122.122 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:30:58,396.396 INFO    ] Initializing speech engine...
[2026-08-31 09:30:58,414.414 INFO    ] 2026-08-31 09:30:58
[2026-08-31 09:30:58,695.695 INFO    ] 2026-08-31 09:30:58
[2026-08-31 09:30:58,731.731 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:30:58,931.931 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:30:58,950.950 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:30:59,144.144 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:30:59,188.188 INFO    ] time= 31/08/2026 09:30:59
[2026-08-31 09:30:59,242.242 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:30:59,275.275 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:30:59,401.401 INFO    ] No existing commands found in stream
[2026-08-31 09:31:04,411.411 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:31:04,414.414 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-08-31 09:31:05,688.688 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 09:31:05,690.690 INFO    ] Checking for system updates...
[2026-08-31 09:31:05,729.729 INFO    ] 200
[2026-08-31 09:31:05,731.731 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:31:05,785.785 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:31:05,788.788 INFO    ] No update needed
[2026-08-31 09:31:05,791.791 INFO    ] Checking for camera pi updates...
[2026-08-31 09:31:05,824.824 INFO    ] 200
[2026-08-31 09:31:05,826.826 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:31:05,871.871 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:31:05,959.959 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:31:05,963.963 INFO    ] No camera update needed
[2026-08-31 09:31:05,966.966 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:31:05,970.970 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:31:05,977.977 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:31:05,983.983 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:31:08,024.024 INFO    ] ================================================
[2026-08-31 09:31:08,040.040 INFO    ] Launching Daemon at Mon Aug 31 09:31:08 IST 2026
[2026-08-31 09:31:08,051.051 INFO    ] ================================================
[2026-08-31 09:31:08,619.619 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:31:08
[2026-08-31 09:31:09,203.203 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:31:09,459.459 INFO    ] Initializing speech engine...
[2026-08-31 09:31:09,465.465 INFO    ] 2026-08-31 09:31:09
[2026-08-31 09:31:09,762.762 INFO    ] 2026-08-31 09:31:09
[2026-08-31 09:31:09,802.802 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:31:10,090.090 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:31:10,100.100 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:31:10,329.329 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:31:10,384.384 INFO    ] time= 31/08/2026 09:31:10
[2026-08-31 09:31:10,399.399 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:31:10,419.419 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:31:10,536.536 INFO    ] No existing commands found in stream
[2026-08-31 09:31:15,562.562 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:31:15,564.564 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-08-31 09:31:18,538.538 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 09:31:18,541.541 INFO    ] Checking for system updates...
[2026-08-31 09:31:18,577.577 INFO    ] 200
[2026-08-31 09:31:18,580.580 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:31:18,645.645 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:31:18,648.648 INFO    ] No update needed
[2026-08-31 09:31:18,651.651 INFO    ] Checking for camera pi updates...
[2026-08-31 09:31:18,702.702 INFO    ] 200
[2026-08-31 09:31:18,705.705 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:31:18,769.769 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:31:18,845.845 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:31:18,847.847 INFO    ] No camera update needed
[2026-08-31 09:31:18,850.850 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:31:18,852.852 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:31:18,858.858 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:31:18,863.863 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:31:20,904.904 INFO    ] ================================================
[2026-08-31 09:31:20,919.919 INFO    ] Launching Daemon at Mon Aug 31 09:31:20 IST 2026
[2026-08-31 09:31:20,929.929 INFO    ] ================================================
[2026-08-31 09:31:21,500.500 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:31:21
[2026-08-31 09:31:22,084.084 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:31:22,367.367 INFO    ] Initializing speech engine...
[2026-08-31 09:31:22,375.375 INFO    ] 2026-08-31 09:31:22
[2026-08-31 09:31:22,642.642 INFO    ] 2026-08-31 09:31:22
[2026-08-31 09:31:22,679.679 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:31:22,903.903 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:31:22,968.968 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:31:23,126.126 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:31:23,171.171 INFO    ] time= 31/08/2026 09:31:23
[2026-08-31 09:31:23,215.215 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:31:23,274.274 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:31:23,413.413 INFO    ] No existing commands found in stream
[2026-08-31 09:31:28,444.444 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:31:28,446.446 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-08-31 09:31:31,928.928 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 09:31:31,931.931 INFO    ] Checking for system updates...
[2026-08-31 09:31:31,970.970 INFO    ] 200
[2026-08-31 09:31:31,972.972 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:31:32,031.031 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:31:32,034.034 INFO    ] No update needed
[2026-08-31 09:31:32,036.036 INFO    ] Checking for camera pi updates...
[2026-08-31 09:31:32,072.072 INFO    ] 200
[2026-08-31 09:31:32,075.075 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:31:32,122.122 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:31:32,175.175 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:31:32,178.178 INFO    ] No camera update needed
[2026-08-31 09:31:32,181.181 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:31:32,183.183 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:31:32,189.189 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:31:32,195.195 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:31:34,236.236 INFO    ] ================================================
[2026-08-31 09:31:34,252.252 INFO    ] Launching Daemon at Mon Aug 31 09:31:34 IST 2026
[2026-08-31 09:31:34,263.263 INFO    ] ================================================
[2026-08-31 09:31:34,843.843 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:31:34
[2026-08-31 09:31:35,439.439 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:31:35,712.712 INFO    ] Initializing speech engine...
[2026-08-31 09:31:35,721.721 INFO    ] 2026-08-31 09:31:35
[2026-08-31 09:31:35,985.985 INFO    ] 2026-08-31 09:31:35
[2026-08-31 09:31:36,038.038 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:31:36,325.325 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:31:36,329.329 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:31:36,522.522 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:31:36,529.529 INFO    ] time= 31/08/2026 09:31:36
[2026-08-31 09:31:36,550.550 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:31:36,575.575 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:31:36,683.683 INFO    ] No existing commands found in stream
[2026-08-31 09:31:41,707.707 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:31:41,710.710 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-08-31 09:31:45,424.424 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 09:31:45,426.426 INFO    ] Checking for system updates...
[2026-08-31 09:31:45,462.462 INFO    ] 200
[2026-08-31 09:31:45,465.465 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:31:45,521.521 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:31:45,524.524 INFO    ] No update needed
[2026-08-31 09:31:45,526.526 INFO    ] Checking for camera pi updates...
[2026-08-31 09:31:45,563.563 INFO    ] 200
[2026-08-31 09:31:45,566.566 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:31:45,606.606 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:31:45,675.675 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:31:45,678.678 INFO    ] No camera update needed
[2026-08-31 09:31:45,680.680 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:31:45,683.683 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:31:45,688.688 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:31:45,693.693 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:31:47,734.734 INFO    ] ================================================
[2026-08-31 09:31:47,750.750 INFO    ] Launching Daemon at Mon Aug 31 09:31:47 IST 2026
[2026-08-31 09:31:47,761.761 INFO    ] ================================================
[2026-08-31 09:31:48,341.341 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:31:48
[2026-08-31 09:31:48,932.932 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:31:49,183.183 INFO    ] Initializing speech engine...
[2026-08-31 09:31:49,190.190 INFO    ] 2026-08-31 09:31:49
[2026-08-31 09:31:49,464.464 INFO    ] 2026-08-31 09:31:49
[2026-08-31 09:31:49,500.500 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:31:49,758.758 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:31:49,766.766 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:31:49,905.905 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:31:49,939.939 INFO    ] time= 31/08/2026 09:31:49
[2026-08-31 09:31:49,998.998 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:31:50,038.038 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:31:50,169.169 INFO    ] No existing commands found in stream
[2026-08-31 09:31:55,194.194 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:31:55,196.196 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-08-31 09:31:58,726.726 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 09:31:58,729.729 INFO    ] Checking for system updates...
[2026-08-31 09:31:58,769.769 INFO    ] 200
[2026-08-31 09:31:58,772.772 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:31:58,830.830 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:31:58,832.832 INFO    ] No update needed
[2026-08-31 09:31:58,834.834 INFO    ] Checking for camera pi updates...
[2026-08-31 09:31:58,868.868 INFO    ] 200
[2026-08-31 09:31:58,871.871 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:31:58,913.913 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:31:59,116.116 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:31:59,119.119 INFO    ] No camera update needed
[2026-08-31 09:31:59,122.122 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:31:59,124.124 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:31:59,131.131 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:31:59,136.136 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:32:01,196.196 INFO    ] ================================================
[2026-08-31 09:32:01,231.231 INFO    ] Launching Daemon at Mon Aug 31 09:32:01 IST 2026
[2026-08-31 09:32:01,275.275 INFO    ] ================================================
[2026-08-31 09:32:01,944.944 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:32:01
[2026-08-31 09:32:02,593.593 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:32:02,888.888 INFO    ] Initializing speech engine...
[2026-08-31 09:32:02,897.897 INFO    ] 2026-08-31 09:32:02
[2026-08-31 09:32:03,153.153 INFO    ] 2026-08-31 09:32:03
[2026-08-31 09:32:03,189.189 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:32:03,386.386 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:32:03,451.451 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:32:03,592.592 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:32:03,634.634 INFO    ] time= 31/08/2026 09:32:03
[2026-08-31 09:32:03,693.693 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:32:03,728.728 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:32:03,876.876 INFO    ] No existing commands found in stream
[2026-08-31 09:32:08,890.890 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:32:08,893.893 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-08-31 09:32:12,377.377 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 09:32:12,379.379 INFO    ] Checking for system updates...
[2026-08-31 09:32:12,416.416 INFO    ] 200
[2026-08-31 09:32:12,419.419 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:32:12,472.472 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:32:12,474.474 INFO    ] No update needed
[2026-08-31 09:32:12,477.477 INFO    ] Checking for camera pi updates...
[2026-08-31 09:32:12,511.511 INFO    ] 200
[2026-08-31 09:32:12,514.514 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:32:12,559.559 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:32:12,648.648 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:32:12,651.651 INFO    ] No camera update needed
[2026-08-31 09:32:12,653.653 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:32:12,655.655 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:32:12,661.661 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:32:12,666.666 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:32:14,707.707 INFO    ] ================================================
[2026-08-31 09:32:14,722.722 INFO    ] Launching Daemon at Mon Aug 31 09:32:14 IST 2026
[2026-08-31 09:32:14,733.733 INFO    ] ================================================
[2026-08-31 09:32:15,300.300 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:32:15
[2026-08-31 09:32:15,883.883 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:32:16,153.153 INFO    ] Initializing speech engine...
[2026-08-31 09:32:16,161.161 INFO    ] 2026-08-31 09:32:16
[2026-08-31 09:32:16,411.411 INFO    ] 2026-08-31 09:32:16
[2026-08-31 09:32:16,446.446 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:32:16,652.652 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:32:16,706.706 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:32:16,861.861 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:32:16,926.926 INFO    ] time= 31/08/2026 09:32:16
[2026-08-31 09:32:16,981.981 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:32:16,988.988 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:32:17,134.134 INFO    ] No existing commands found in stream
[2026-08-31 09:32:22,148.148 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:32:22,150.150 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-08-31 09:32:23,109.109 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 09:32:23,111.111 INFO    ] Checking for system updates...
[2026-08-31 09:32:23,148.148 INFO    ] 200
[2026-08-31 09:32:23,150.150 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:32:23,210.210 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:32:23,213.213 INFO    ] No update needed
[2026-08-31 09:32:23,216.216 INFO    ] Checking for camera pi updates...
[2026-08-31 09:32:23,258.258 INFO    ] 200
[2026-08-31 09:32:23,261.261 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:32:23,302.302 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:32:23,385.385 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:32:23,388.388 INFO    ] No camera update needed
[2026-08-31 09:32:23,390.390 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:32:23,393.393 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:32:23,399.399 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:32:23,405.405 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:32:25,448.448 INFO    ] ================================================
[2026-08-31 09:32:25,463.463 INFO    ] Launching Daemon at Mon Aug 31 09:32:25 IST 2026
[2026-08-31 09:32:25,475.475 INFO    ] ================================================
[2026-08-31 09:32:26,046.046 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:32:26
[2026-08-31 09:32:26,642.642 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:32:26,918.918 INFO    ] Initializing speech engine...
[2026-08-31 09:32:26,925.925 INFO    ] 2026-08-31 09:32:26
[2026-08-31 09:32:27,184.184 INFO    ] 2026-08-31 09:32:27
[2026-08-31 09:32:27,215.215 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:32:27,528.528 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:32:27,578.578 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:32:27,726.726 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:32:27,743.743 INFO    ] time= 31/08/2026 09:32:27
[2026-08-31 09:32:27,761.761 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:32:27,779.779 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:32:27,884.884 INFO    ] No existing commands found in stream
[2026-08-31 09:32:32,913.913 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:32:32,915.915 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-08-31 09:32:34,150.150 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 09:32:34,153.153 INFO    ] Checking for system updates...
[2026-08-31 09:32:34,189.189 INFO    ] 200
[2026-08-31 09:32:34,192.192 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:32:34,244.244 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:32:34,246.246 INFO    ] No update needed
[2026-08-31 09:32:34,249.249 INFO    ] Checking for camera pi updates...
[2026-08-31 09:32:34,287.287 INFO    ] 200
[2026-08-31 09:32:34,289.289 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:32:34,334.334 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:32:34,439.439 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:32:34,441.441 INFO    ] No camera update needed
[2026-08-31 09:32:34,443.443 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:32:34,446.446 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:32:34,452.452 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:32:34,458.458 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:32:36,500.500 INFO    ] ================================================
[2026-08-31 09:32:36,516.516 INFO    ] Launching Daemon at Mon Aug 31 09:32:36 IST 2026
[2026-08-31 09:32:36,527.527 INFO    ] ================================================
[2026-08-31 09:32:37,138.138 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:32:37
[2026-08-31 09:32:37,798.798 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:32:38,102.102 INFO    ] Initializing speech engine...
[2026-08-31 09:32:38,109.109 INFO    ] 2026-08-31 09:32:38
[2026-08-31 09:32:38,383.383 INFO    ] 2026-08-31 09:32:38
[2026-08-31 09:32:38,438.438 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:32:38,691.691 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:32:38,696.696 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:32:38,900.900 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:32:38,918.918 INFO    ] time= 31/08/2026 09:32:38
[2026-08-31 09:32:38,921.921 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:32:38,933.933 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:32:39,051.051 INFO    ] No existing commands found in stream
[2026-08-31 09:32:44,082.082 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:32:44,084.084 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-08-31 09:32:45,420.420 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 09:32:45,422.422 INFO    ] Checking for system updates...
[2026-08-31 09:32:45,457.457 INFO    ] 200
[2026-08-31 09:32:45,460.460 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:32:45,512.512 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:32:45,514.514 INFO    ] No update needed
[2026-08-31 09:32:45,517.517 INFO    ] Checking for camera pi updates...
[2026-08-31 09:32:45,550.550 INFO    ] 200
[2026-08-31 09:32:45,552.552 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:32:45,592.592 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:32:45,643.643 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:32:45,645.645 INFO    ] No camera update needed
[2026-08-31 09:32:45,648.648 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:32:45,650.650 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:32:45,655.655 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:32:45,660.660 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:32:47,702.702 INFO    ] ================================================
[2026-08-31 09:32:47,717.717 INFO    ] Launching Daemon at Mon Aug 31 09:32:47 IST 2026
[2026-08-31 09:32:47,728.728 INFO    ] ================================================
[2026-08-31 09:32:48,384.384 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:32:48
[2026-08-31 09:32:49,062.062 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:32:49,370.370 INFO    ] Initializing speech engine...
[2026-08-31 09:32:49,377.377 INFO    ] 2026-08-31 09:32:49
[2026-08-31 09:32:49,656.656 INFO    ] 2026-08-31 09:32:49
[2026-08-31 09:32:49,714.714 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:32:49,971.971 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:32:49,976.976 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:32:50,213.213 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:32:50,220.220 INFO    ] time= 31/08/2026 09:32:50
[2026-08-31 09:32:50,242.242 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:32:50,269.269 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:32:50,409.409 INFO    ] No existing commands found in stream
[2026-08-31 09:32:55,441.441 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:32:55,444.444 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-08-31 09:32:59,648.648 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 09:32:59,651.651 INFO    ] Checking for system updates...
[2026-08-31 09:32:59,694.694 INFO    ] 200
[2026-08-31 09:32:59,697.697 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:32:59,764.764 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:32:59,767.767 INFO    ] No update needed
[2026-08-31 09:32:59,770.770 INFO    ] Checking for camera pi updates...
[2026-08-31 09:32:59,810.810 INFO    ] 200
[2026-08-31 09:32:59,812.812 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:32:59,859.859 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:32:59,945.945 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:32:59,948.948 INFO    ] No camera update needed
[2026-08-31 09:32:59,951.951 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:32:59,953.953 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:32:59,960.960 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:32:59,966.966 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:33:02,013.013 INFO    ] ================================================
[2026-08-31 09:33:02,043.043 INFO    ] Launching Daemon at Mon Aug 31 09:33:02 IST 2026
[2026-08-31 09:33:02,063.063 INFO    ] ================================================
[2026-08-31 09:33:02,729.729 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:33:02
[2026-08-31 09:33:03,390.390 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:33:03,725.725 INFO    ] Initializing speech engine...
[2026-08-31 09:33:03,737.737 INFO    ] 2026-08-31 09:33:03
[2026-08-31 09:33:04,044.044 INFO    ] 2026-08-31 09:33:04
[2026-08-31 09:33:04,150.150 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:33:04,389.389 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:33:04,396.396 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:33:04,601.601 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:33:04,610.610 INFO    ] time= 31/08/2026 09:33:04
[2026-08-31 09:33:04,632.632 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:33:04,660.660 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:33:04,775.775 INFO    ] No existing commands found in stream
[2026-08-31 09:33:09,788.788 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:33:09,791.791 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-08-31 09:33:12,624.624 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 09:33:12,627.627 INFO    ] Checking for system updates...
[2026-08-31 09:33:12,663.663 INFO    ] 200
[2026-08-31 09:33:12,666.666 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:33:12,720.720 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:33:12,722.722 INFO    ] No update needed
[2026-08-31 09:33:12,724.724 INFO    ] Checking for camera pi updates...
[2026-08-31 09:33:12,758.758 INFO    ] 200
[2026-08-31 09:33:12,761.761 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:33:12,807.807 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:33:12,891.891 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:33:12,893.893 INFO    ] No camera update needed
[2026-08-31 09:33:12,895.895 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:33:12,898.898 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:33:12,903.903 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:33:12,908.908 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:33:14,948.948 INFO    ] ================================================
[2026-08-31 09:33:14,964.964 INFO    ] Launching Daemon at Mon Aug 31 09:33:14 IST 2026
[2026-08-31 09:33:14,976.976 INFO    ] ================================================
[2026-08-31 09:33:15,598.598 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:33:15
[2026-08-31 09:33:16,185.185 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:33:16,454.454 INFO    ] Initializing speech engine...
[2026-08-31 09:33:16,463.463 INFO    ] 2026-08-31 09:33:16
[2026-08-31 09:33:16,710.710 INFO    ] 2026-08-31 09:33:16
[2026-08-31 09:33:16,746.746 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:33:16,998.998 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:33:17,007.007 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:33:17,233.233 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:33:17,266.266 INFO    ] time= 31/08/2026 09:33:17
[2026-08-31 09:33:17,272.272 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:33:17,293.293 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:33:17,412.412 INFO    ] No existing commands found in stream
[2026-08-31 09:33:22,432.432 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:33:22,435.435 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-08-31 09:33:26,929.929 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 09:33:26,931.931 INFO    ] Checking for system updates...
[2026-08-31 09:33:26,972.972 INFO    ] 200
[2026-08-31 09:33:26,974.974 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:33:27,029.029 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:33:27,032.032 INFO    ] No update needed
[2026-08-31 09:33:27,035.035 INFO    ] Checking for camera pi updates...
[2026-08-31 09:33:27,074.074 INFO    ] 200
[2026-08-31 09:33:27,077.077 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:33:27,125.125 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:33:27,219.219 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:33:27,222.222 INFO    ] No camera update needed
[2026-08-31 09:33:27,225.225 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:33:27,228.228 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:33:27,234.234 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:33:27,240.240 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:33:29,284.284 INFO    ] ================================================
[2026-08-31 09:33:29,299.299 INFO    ] Launching Daemon at Mon Aug 31 09:33:29 IST 2026
[2026-08-31 09:33:29,311.311 INFO    ] ================================================
[2026-08-31 09:33:29,896.896 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:33:29
[2026-08-31 09:33:30,551.551 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:33:30,864.864 INFO    ] Initializing speech engine...
[2026-08-31 09:33:30,876.876 INFO    ] 2026-08-31 09:33:30
[2026-08-31 09:33:31,195.195 INFO    ] 2026-08-31 09:33:31
[2026-08-31 09:33:31,294.294 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:33:31,522.522 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:33:31,568.568 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:33:31,743.743 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:33:31,773.773 INFO    ] time= 31/08/2026 09:33:31
[2026-08-31 09:33:31,783.783 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:33:31,792.792 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:33:31,943.943 INFO    ] No existing commands found in stream
[2026-08-31 09:33:36,968.968 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:33:36,971.971 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-08-31 09:33:40,741.741 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 09:33:40,744.744 INFO    ] Checking for system updates...
[2026-08-31 09:33:40,786.786 INFO    ] 200
[2026-08-31 09:33:40,790.790 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:33:40,851.851 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:33:40,854.854 INFO    ] No update needed
[2026-08-31 09:33:40,857.857 INFO    ] Checking for camera pi updates...
[2026-08-31 09:33:40,892.892 INFO    ] 200
[2026-08-31 09:33:40,895.895 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:33:40,935.935 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:33:41,017.017 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:33:41,019.019 INFO    ] No camera update needed
[2026-08-31 09:33:41,021.021 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:33:41,024.024 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:33:41,029.029 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:33:41,034.034 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:33:43,073.073 INFO    ] ================================================
[2026-08-31 09:33:43,088.088 INFO    ] Launching Daemon at Mon Aug 31 09:33:43 IST 2026
[2026-08-31 09:33:43,100.100 INFO    ] ================================================
[2026-08-31 09:33:43,771.771 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:33:43
[2026-08-31 09:33:44,398.398 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:33:44,679.679 INFO    ] Initializing speech engine...
[2026-08-31 09:33:44,694.694 INFO    ] 2026-08-31 09:33:44
[2026-08-31 09:33:44,973.973 INFO    ] 2026-08-31 09:33:44
[2026-08-31 09:33:45,011.011 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:33:45,224.224 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:33:45,231.231 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:33:45,450.450 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:33:45,512.512 INFO    ] time= 31/08/2026 09:33:45
[2026-08-31 09:33:45,562.562 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:33:45,583.583 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:33:45,686.686 INFO    ] No existing commands found in stream
[2026-08-31 09:33:50,726.726 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:33:50,729.729 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-08-31 09:33:52,427.427 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 09:33:52,429.429 INFO    ] Checking for system updates...
[2026-08-31 09:33:52,466.466 INFO    ] 200
[2026-08-31 09:33:52,468.468 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:33:52,527.527 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:33:52,529.529 INFO    ] No update needed
[2026-08-31 09:33:52,532.532 INFO    ] Checking for camera pi updates...
[2026-08-31 09:33:52,569.569 INFO    ] 200
[2026-08-31 09:33:52,571.571 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:33:52,615.615 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:33:52,716.716 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:33:52,719.719 INFO    ] No camera update needed
[2026-08-31 09:33:52,721.721 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:33:52,723.723 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:33:52,729.729 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:33:52,734.734 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:33:54,775.775 INFO    ] ================================================
[2026-08-31 09:33:54,791.791 INFO    ] Launching Daemon at Mon Aug 31 09:33:54 IST 2026
[2026-08-31 09:33:54,803.803 INFO    ] ================================================
[2026-08-31 09:33:55,410.410 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:33:55
[2026-08-31 09:33:56,012.012 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:33:56,299.299 INFO    ] Initializing speech engine...
[2026-08-31 09:33:56,312.312 INFO    ] 2026-08-31 09:33:56
[2026-08-31 09:33:56,571.571 INFO    ] 2026-08-31 09:33:56
[2026-08-31 09:33:56,632.632 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:33:56,906.906 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:33:56,912.912 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:33:57,144.144 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:33:57,219.219 INFO    ] time= 31/08/2026 09:33:57
[2026-08-31 09:33:57,227.227 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:33:57,246.246 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:33:57,394.394 INFO    ] No existing commands found in stream
[2026-08-31 09:34:02,400.400 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:34:02,403.403 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-08-31 09:34:05,227.227 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 09:34:05,230.230 INFO    ] Checking for system updates...
[2026-08-31 09:34:05,266.266 INFO    ] 200
[2026-08-31 09:34:05,269.269 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:34:05,322.322 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:34:05,325.325 INFO    ] No update needed
[2026-08-31 09:34:05,327.327 INFO    ] Checking for camera pi updates...
[2026-08-31 09:34:05,362.362 INFO    ] 200
[2026-08-31 09:34:05,364.364 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:34:05,408.408 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:34:05,505.505 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:34:05,508.508 INFO    ] No camera update needed
[2026-08-31 09:34:05,510.510 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:34:05,513.513 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:34:05,518.518 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:34:05,523.523 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:34:07,564.564 INFO    ] ================================================
[2026-08-31 09:34:07,580.580 INFO    ] Launching Daemon at Mon Aug 31 09:34:07 IST 2026
[2026-08-31 09:34:07,591.591 INFO    ] ================================================
[2026-08-31 09:34:08,229.229 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:34:08
[2026-08-31 09:34:08,878.878 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:34:09,174.174 INFO    ] Initializing speech engine...
[2026-08-31 09:34:09,186.186 INFO    ] 2026-08-31 09:34:09
[2026-08-31 09:34:09,450.450 INFO    ] 2026-08-31 09:34:09
[2026-08-31 09:34:09,492.492 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:34:09,734.734 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:34:09,741.741 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:34:09,938.938 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:34:09,976.976 INFO    ] time= 31/08/2026 09:34:09
[2026-08-31 09:34:09,982.982 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:34:10,002.002 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:34:10,131.131 INFO    ] No existing commands found in stream
[2026-08-31 09:34:15,150.150 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:34:15,152.152 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-08-31 09:34:19,431.431 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 09:34:19,434.434 INFO    ] Checking for system updates...
[2026-08-31 09:34:19,478.478 INFO    ] 200
[2026-08-31 09:34:19,481.481 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:34:19,538.538 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:34:19,540.540 INFO    ] No update needed
[2026-08-31 09:34:19,542.542 INFO    ] Checking for camera pi updates...
[2026-08-31 09:34:19,579.579 INFO    ] 200
[2026-08-31 09:34:19,581.581 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:34:19,626.626 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:34:19,713.713 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:34:19,716.716 INFO    ] No camera update needed
[2026-08-31 09:34:19,718.718 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:34:19,721.721 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:34:19,726.726 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:34:19,731.731 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:34:21,772.772 INFO    ] ================================================
[2026-08-31 09:34:21,788.788 INFO    ] Launching Daemon at Mon Aug 31 09:34:21 IST 2026
[2026-08-31 09:34:21,799.799 INFO    ] ================================================
[2026-08-31 09:34:22,365.365 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:34:22
[2026-08-31 09:34:22,945.945 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:34:23,220.220 INFO    ] Initializing speech engine...
[2026-08-31 09:34:23,228.228 INFO    ] 2026-08-31 09:34:23
[2026-08-31 09:34:23,484.484 INFO    ] 2026-08-31 09:34:23
[2026-08-31 09:34:23,518.518 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:34:23,773.773 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:34:23,779.779 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:34:23,962.962 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:34:24,027.027 INFO    ] time= 31/08/2026 09:34:23
[2026-08-31 09:34:24,044.044 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:34:24,050.050 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:34:24,196.196 INFO    ] No existing commands found in stream
[2026-08-31 09:34:29,210.210 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:34:29,213.213 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-08-31 09:34:31,787.787 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 09:34:31,790.790 INFO    ] Checking for system updates...
[2026-08-31 09:34:31,831.831 INFO    ] 200
[2026-08-31 09:34:31,834.834 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:34:31,895.895 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:34:31,899.899 INFO    ] No update needed
[2026-08-31 09:34:31,902.902 INFO    ] Checking for camera pi updates...
[2026-08-31 09:34:31,938.938 INFO    ] 200
[2026-08-31 09:34:31,941.941 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:34:31,985.985 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:34:32,095.095 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:34:32,098.098 INFO    ] No camera update needed
[2026-08-31 09:34:32,101.101 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:34:32,104.104 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:34:32,111.111 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:34:32,117.117 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:34:34,160.160 INFO    ] ================================================
[2026-08-31 09:34:34,176.176 INFO    ] Launching Daemon at Mon Aug 31 09:34:34 IST 2026
[2026-08-31 09:34:34,188.188 INFO    ] ================================================
[2026-08-31 09:34:34,752.752 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:34:34
[2026-08-31 09:34:35,334.334 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:34:35,590.590 INFO    ] Initializing speech engine...
[2026-08-31 09:34:35,608.608 INFO    ] 2026-08-31 09:34:35
[2026-08-31 09:34:35,862.862 INFO    ] 2026-08-31 09:34:35
[2026-08-31 09:34:35,922.922 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:34:36,170.170 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:34:36,174.174 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:34:36,373.373 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:34:36,409.409 INFO    ] time= 31/08/2026 09:34:36
[2026-08-31 09:34:36,423.423 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:34:36,433.433 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:34:36,543.543 INFO    ] No existing commands found in stream
[2026-08-31 09:34:41,569.569 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:34:41,572.572 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-08-31 09:34:43,859.859 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 09:34:43,862.862 INFO    ] Checking for system updates...
[2026-08-31 09:34:43,898.898 INFO    ] 200
[2026-08-31 09:34:43,901.901 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:34:43,957.957 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:34:43,959.959 INFO    ] No update needed
[2026-08-31 09:34:43,963.963 INFO    ] Checking for camera pi updates...
[2026-08-31 09:34:43,997.997 INFO    ] 200
[2026-08-31 09:34:44,000.000 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:34:44,040.040 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:34:44,144.144 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:34:44,147.147 INFO    ] No camera update needed
[2026-08-31 09:34:44,152.152 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:34:44,154.154 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:34:44,160.160 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:34:44,166.166 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:34:46,206.206 INFO    ] ================================================
[2026-08-31 09:34:46,222.222 INFO    ] Launching Daemon at Mon Aug 31 09:34:46 IST 2026
[2026-08-31 09:34:46,233.233 INFO    ] ================================================
[2026-08-31 09:34:46,798.798 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:34:46
[2026-08-31 09:34:47,378.378 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:34:47,643.643 INFO    ] Initializing speech engine...
[2026-08-31 09:34:47,652.652 INFO    ] 2026-08-31 09:34:47
[2026-08-31 09:34:47,898.898 INFO    ] 2026-08-31 09:34:47
[2026-08-31 09:34:47,933.933 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:34:48,128.128 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:34:48,185.185 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:34:48,325.325 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:34:48,391.391 INFO    ] time= 31/08/2026 09:34:48
[2026-08-31 09:34:48,451.451 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:34:48,458.458 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:34:48,603.603 INFO    ] No existing commands found in stream
[2026-08-31 09:34:53,621.621 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:34:53,624.624 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-08-31 09:34:57,372.372 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 09:34:57,374.374 INFO    ] Checking for system updates...
[2026-08-31 09:34:57,412.412 INFO    ] 200
[2026-08-31 09:34:57,415.415 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:34:57,471.471 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:34:57,473.473 INFO    ] No update needed
[2026-08-31 09:34:57,475.475 INFO    ] Checking for camera pi updates...
[2026-08-31 09:34:57,511.511 INFO    ] 200
[2026-08-31 09:34:57,513.513 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:34:57,558.558 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:34:57,650.650 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:34:57,652.652 INFO    ] No camera update needed
[2026-08-31 09:34:57,655.655 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:34:57,657.657 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:34:57,662.662 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:34:57,667.667 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:34:59,706.706 INFO    ] ================================================
[2026-08-31 09:34:59,722.722 INFO    ] Launching Daemon at Mon Aug 31 09:34:59 IST 2026
[2026-08-31 09:34:59,733.733 INFO    ] ================================================
[2026-08-31 09:35:00,365.365 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:35:00
[2026-08-31 09:35:00,946.946 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:35:01,216.216 INFO    ] Initializing speech engine...
[2026-08-31 09:35:01,225.225 INFO    ] 2026-08-31 09:35:01
[2026-08-31 09:35:01,635.635 INFO    ] 2026-08-31 09:35:01
[2026-08-31 09:35:01,712.712 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:35:01,927.927 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:35:01,931.931 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:35:02,111.111 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:35:02,114.114 INFO    ] time= 31/08/2026 09:35:02
[2026-08-31 09:35:02,117.117 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:35:02,152.152 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:35:02,221.221 INFO    ] No existing commands found in stream
[2026-08-31 09:35:07,232.232 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:35:07,235.235 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-08-31 09:35:08,615.615 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 09:35:08,617.617 INFO    ] Checking for system updates...
[2026-08-31 09:35:08,654.654 INFO    ] 200
[2026-08-31 09:35:08,657.657 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:35:08,712.712 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:35:08,714.714 INFO    ] No update needed
[2026-08-31 09:35:08,716.716 INFO    ] Checking for camera pi updates...
[2026-08-31 09:35:08,750.750 INFO    ] 200
[2026-08-31 09:35:08,753.753 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:35:08,795.795 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:35:08,861.861 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:35:08,864.864 INFO    ] No camera update needed
[2026-08-31 09:35:08,866.866 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:35:08,869.869 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:35:08,874.874 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:35:08,879.879 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:35:10,920.920 INFO    ] ================================================
[2026-08-31 09:35:10,935.935 INFO    ] Launching Daemon at Mon Aug 31 09:35:10 IST 2026
[2026-08-31 09:35:10,946.946 INFO    ] ================================================
[2026-08-31 09:35:11,618.618 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:35:11
[2026-08-31 09:35:12,273.273 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:35:12,528.528 INFO    ] Initializing speech engine...
[2026-08-31 09:35:12,536.536 INFO    ] 2026-08-31 09:35:12
[2026-08-31 09:35:12,829.829 INFO    ] 2026-08-31 09:35:12
[2026-08-31 09:35:12,866.866 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:35:13,062.062 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:35:13,075.075 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:35:13,237.237 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:35:13,246.246 INFO    ] time= 31/08/2026 09:35:13
[2026-08-31 09:35:13,253.253 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:35:13,296.296 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:35:13,464.464 INFO    ] No existing commands found in stream
[2026-08-31 09:35:18,479.479 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:35:18,482.482 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-08-31 09:35:20,327.327 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 09:35:20,330.330 INFO    ] Checking for system updates...
[2026-08-31 09:35:20,369.369 INFO    ] 200
[2026-08-31 09:35:20,372.372 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:35:20,432.432 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:35:20,434.434 INFO    ] No update needed
[2026-08-31 09:35:20,436.436 INFO    ] Checking for camera pi updates...
[2026-08-31 09:35:20,473.473 INFO    ] 200
[2026-08-31 09:35:20,475.475 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:35:20,515.515 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:35:20,594.594 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:35:20,597.597 INFO    ] No camera update needed
[2026-08-31 09:35:20,599.599 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:35:20,602.602 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:35:20,607.607 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:35:20,612.612 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:35:22,652.652 INFO    ] ================================================
[2026-08-31 09:35:22,668.668 INFO    ] Launching Daemon at Mon Aug 31 09:35:22 IST 2026
[2026-08-31 09:35:22,678.678 INFO    ] ================================================
[2026-08-31 09:35:23,325.325 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:35:23
[2026-08-31 09:35:23,991.991 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:35:24,291.291 INFO    ] Initializing speech engine...
[2026-08-31 09:35:24,300.300 INFO    ] 2026-08-31 09:35:24
[2026-08-31 09:35:24,573.573 INFO    ] 2026-08-31 09:35:24
[2026-08-31 09:35:24,629.629 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:35:24,882.882 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:35:24,901.901 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:35:25,116.116 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:35:25,124.124 INFO    ] time= 31/08/2026 09:35:25
[2026-08-31 09:35:25,143.143 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:35:25,171.171 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:35:25,278.278 INFO    ] No existing commands found in stream
[2026-08-31 09:35:30,299.299 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:35:30,302.302 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-08-31 09:35:34,488.488 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 09:35:34,491.491 INFO    ] Checking for system updates...
[2026-08-31 09:35:34,528.528 INFO    ] 200
[2026-08-31 09:35:34,530.530 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:35:34,586.586 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:35:34,588.588 INFO    ] No update needed
[2026-08-31 09:35:34,591.591 INFO    ] Checking for camera pi updates...
[2026-08-31 09:35:34,628.628 INFO    ] 200
[2026-08-31 09:35:34,635.635 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:35:34,686.686 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:35:34,792.792 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:35:34,794.794 INFO    ] No camera update needed
[2026-08-31 09:35:34,797.797 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:35:34,799.799 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:35:34,804.804 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:35:34,809.809 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:35:36,850.850 INFO    ] ================================================
[2026-08-31 09:35:36,865.865 INFO    ] Launching Daemon at Mon Aug 31 09:35:36 IST 2026
[2026-08-31 09:35:36,876.876 INFO    ] ================================================
[2026-08-31 09:35:37,517.517 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:35:37
[2026-08-31 09:35:38,179.179 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:35:38,477.477 INFO    ] Initializing speech engine...
[2026-08-31 09:35:38,487.487 INFO    ] 2026-08-31 09:35:38
[2026-08-31 09:35:38,772.772 INFO    ] 2026-08-31 09:35:38
[2026-08-31 09:35:38,815.815 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:35:39,098.098 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:35:39,106.106 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:35:39,301.301 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:35:39,309.309 INFO    ] time= 31/08/2026 09:35:39
[2026-08-31 09:35:39,328.328 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:35:39,356.356 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:35:39,483.483 INFO    ] No existing commands found in stream
[2026-08-31 09:35:44,514.514 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:35:44,517.517 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-08-31 09:35:45,169.169 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 09:35:45,171.171 INFO    ] Checking for system updates...
[2026-08-31 09:35:45,210.210 INFO    ] 200
[2026-08-31 09:35:45,213.213 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:35:45,272.272 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:35:45,275.275 INFO    ] No update needed
[2026-08-31 09:35:45,278.278 INFO    ] Checking for camera pi updates...
[2026-08-31 09:35:45,313.313 INFO    ] 200
[2026-08-31 09:35:45,315.315 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:35:45,361.361 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:35:45,447.447 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:35:45,450.450 INFO    ] No camera update needed
[2026-08-31 09:35:45,452.452 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:35:45,454.454 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:35:45,460.460 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:35:45,465.465 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:35:47,507.507 INFO    ] ================================================
[2026-08-31 09:35:47,522.522 INFO    ] Launching Daemon at Mon Aug 31 09:35:47 IST 2026
[2026-08-31 09:35:47,533.533 INFO    ] ================================================
[2026-08-31 09:35:48,179.179 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:35:48
[2026-08-31 09:35:48,842.842 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:35:49,144.144 INFO    ] Initializing speech engine...
[2026-08-31 09:35:49,152.152 INFO    ] 2026-08-31 09:35:49
[2026-08-31 09:35:49,439.439 INFO    ] 2026-08-31 09:35:49
[2026-08-31 09:35:49,482.482 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:35:49,711.711 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:35:49,732.732 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:35:49,969.969 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:35:49,976.976 INFO    ] time= 31/08/2026 09:35:49
[2026-08-31 09:35:49,994.994 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:35:50,012.012 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:35:50,130.130 INFO    ] No existing commands found in stream
[2026-08-31 09:35:55,148.148 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:35:55,151.151 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-08-31 09:35:59,366.366 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 09:35:59,368.368 INFO    ] Checking for system updates...
[2026-08-31 09:35:59,409.409 INFO    ] 200
[2026-08-31 09:35:59,412.412 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:35:59,472.472 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:35:59,475.475 INFO    ] No update needed
[2026-08-31 09:35:59,478.478 INFO    ] Checking for camera pi updates...
[2026-08-31 09:35:59,512.512 INFO    ] 200
[2026-08-31 09:35:59,515.515 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:35:59,556.556 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:35:59,655.655 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:35:59,658.658 INFO    ] No camera update needed
[2026-08-31 09:35:59,661.661 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:35:59,664.664 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:35:59,670.670 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:35:59,675.675 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:36:01,736.736 INFO    ] ================================================
[2026-08-31 09:36:01,769.769 INFO    ] Launching Daemon at Mon Aug 31 09:36:01 IST 2026
[2026-08-31 09:36:01,802.802 INFO    ] ================================================
[2026-08-31 09:36:02,508.508 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:36:02
[2026-08-31 09:36:03,181.181 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:36:03,458.458 INFO    ] Initializing speech engine...
[2026-08-31 09:36:03,470.470 INFO    ] 2026-08-31 09:36:03
[2026-08-31 09:36:03,761.761 INFO    ] 2026-08-31 09:36:03
[2026-08-31 09:36:03,799.799 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:36:04,020.020 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:36:04,029.029 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:36:04,249.249 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:36:04,256.256 INFO    ] time= 31/08/2026 09:36:04
[2026-08-31 09:36:04,316.316 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:36:04,385.385 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:36:04,535.535 INFO    ] No existing commands found in stream
[2026-08-31 09:36:09,565.565 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:36:09,568.568 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-08-31 09:36:12,685.685 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 09:36:12,688.688 INFO    ] Checking for system updates...
[2026-08-31 09:36:12,723.723 INFO    ] 200
[2026-08-31 09:36:12,726.726 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:36:12,783.783 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:36:12,785.785 INFO    ] No update needed
[2026-08-31 09:36:12,788.788 INFO    ] Checking for camera pi updates...
[2026-08-31 09:36:12,824.824 INFO    ] 200
[2026-08-31 09:36:12,826.826 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:36:12,866.866 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:36:13,067.067 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:36:13,070.070 INFO    ] No camera update needed
[2026-08-31 09:36:13,072.072 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:36:13,074.074 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:36:13,080.080 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:36:13,085.085 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:36:15,125.125 INFO    ] ================================================
[2026-08-31 09:36:15,140.140 INFO    ] Launching Daemon at Mon Aug 31 09:36:15 IST 2026
[2026-08-31 09:36:15,151.151 INFO    ] ================================================
[2026-08-31 09:36:15,718.718 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:36:15
[2026-08-31 09:36:16,328.328 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:36:16,619.619 INFO    ] Initializing speech engine...
[2026-08-31 09:36:16,628.628 INFO    ] 2026-08-31 09:36:16
[2026-08-31 09:36:16,902.902 INFO    ] 2026-08-31 09:36:16
[2026-08-31 09:36:16,957.957 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:36:17,242.242 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:36:17,251.251 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:36:17,446.446 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:36:17,453.453 INFO    ] time= 31/08/2026 09:36:17
[2026-08-31 09:36:17,475.475 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:36:17,503.503 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:36:17,608.608 INFO    ] No existing commands found in stream
[2026-08-31 09:36:22,637.637 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:36:22,641.641 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-08-31 09:36:28,451.451 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 09:36:28,454.454 INFO    ] Checking for system updates...
[2026-08-31 09:36:28,494.494 INFO    ] 200
[2026-08-31 09:36:28,497.497 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:36:28,557.557 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:36:28,560.560 INFO    ] No update needed
[2026-08-31 09:36:28,563.563 INFO    ] Checking for camera pi updates...
[2026-08-31 09:36:28,602.602 INFO    ] 200
[2026-08-31 09:36:28,605.605 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:36:28,652.652 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:36:28,753.753 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:36:28,756.756 INFO    ] No camera update needed
[2026-08-31 09:36:28,759.759 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:36:28,761.761 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:36:28,768.768 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:36:28,773.773 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:36:30,815.815 INFO    ] ================================================
[2026-08-31 09:36:30,830.830 INFO    ] Launching Daemon at Mon Aug 31 09:36:30 IST 2026
[2026-08-31 09:36:30,841.841 INFO    ] ================================================
[2026-08-31 09:36:31,406.406 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:36:31
[2026-08-31 09:36:32,017.017 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:36:32,283.283 INFO    ] Initializing speech engine...
[2026-08-31 09:36:32,299.299 INFO    ] 2026-08-31 09:36:32
[2026-08-31 09:36:32,580.580 INFO    ] 2026-08-31 09:36:32
[2026-08-31 09:36:32,617.617 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:36:32,877.877 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:36:32,887.887 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:36:33,035.035 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:36:33,077.077 INFO    ] time= 31/08/2026 09:36:33
[2026-08-31 09:36:33,152.152 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:36:33,171.171 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:36:33,301.301 INFO    ] No existing commands found in stream
[2026-08-31 09:36:38,322.322 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:36:38,325.325 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-08-31 09:36:42,252.252 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 09:36:42,255.255 INFO    ] Checking for system updates...
[2026-08-31 09:36:42,290.290 INFO    ] 200
[2026-08-31 09:36:42,292.292 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:36:42,343.343 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:36:42,346.346 INFO    ] No update needed
[2026-08-31 09:36:42,348.348 INFO    ] Checking for camera pi updates...
[2026-08-31 09:36:42,382.382 INFO    ] 200
[2026-08-31 09:36:42,384.384 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:36:42,430.430 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:36:42,512.512 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:36:42,514.514 INFO    ] No camera update needed
[2026-08-31 09:36:42,517.517 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:36:42,519.519 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:36:42,524.524 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:36:42,530.530 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:36:44,569.569 INFO    ] ================================================
[2026-08-31 09:36:44,584.584 INFO    ] Launching Daemon at Mon Aug 31 09:36:44 IST 2026
[2026-08-31 09:36:44,595.595 INFO    ] ================================================
[2026-08-31 09:36:45,167.167 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:36:45
[2026-08-31 09:36:45,752.752 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:36:46,020.020 INFO    ] Initializing speech engine...
[2026-08-31 09:36:46,029.029 INFO    ] 2026-08-31 09:36:46
[2026-08-31 09:36:46,275.275 INFO    ] 2026-08-31 09:36:46
[2026-08-31 09:36:46,310.310 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:36:46,563.563 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:36:46,573.573 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:36:46,703.703 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:36:46,750.750 INFO    ] time= 31/08/2026 09:36:46
[2026-08-31 09:36:46,799.799 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:36:46,838.838 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:36:46,980.980 INFO    ] No existing commands found in stream
[2026-08-31 09:36:51,996.996 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:36:51,999.999 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-08-31 09:36:55,660.660 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 09:36:55,662.662 INFO    ] Checking for system updates...
[2026-08-31 09:36:55,698.698 INFO    ] 200
[2026-08-31 09:36:55,700.700 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:36:55,752.752 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:36:55,754.754 INFO    ] No update needed
[2026-08-31 09:36:55,756.756 INFO    ] Checking for camera pi updates...
[2026-08-31 09:36:55,789.789 INFO    ] 200
[2026-08-31 09:36:55,792.792 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:36:55,832.832 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:36:55,929.929 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:36:55,932.932 INFO    ] No camera update needed
[2026-08-31 09:36:55,934.934 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:36:55,936.936 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:36:55,942.942 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:36:55,947.947 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:36:57,989.989 INFO    ] ================================================
[2026-08-31 09:36:58,004.004 INFO    ] Launching Daemon at Mon Aug 31 09:36:57 IST 2026
[2026-08-31 09:36:58,015.015 INFO    ] ================================================
[2026-08-31 09:36:58,670.670 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:36:58
[2026-08-31 09:36:59,253.253 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:36:59,519.519 INFO    ] Initializing speech engine...
[2026-08-31 09:36:59,532.532 INFO    ] 2026-08-31 09:36:59
[2026-08-31 09:36:59,781.781 INFO    ] 2026-08-31 09:36:59
[2026-08-31 09:36:59,815.815 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:37:00,018.018 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:37:00,074.074 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:37:00,221.221 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:37:00,260.260 INFO    ] time= 31/08/2026 09:37:00
[2026-08-31 09:37:00,315.315 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:37:00,355.355 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:37:00,493.493 INFO    ] No existing commands found in stream
[2026-08-31 09:37:05,514.514 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:37:05,516.516 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-08-31 09:37:06,670.670 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 09:37:06,673.673 INFO    ] Checking for system updates...
[2026-08-31 09:37:06,708.708 INFO    ] 200
[2026-08-31 09:37:06,710.710 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:37:06,761.761 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:37:06,764.764 INFO    ] No update needed
[2026-08-31 09:37:06,766.766 INFO    ] Checking for camera pi updates...
[2026-08-31 09:37:06,799.799 INFO    ] 200
[2026-08-31 09:37:06,802.802 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:37:06,841.841 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:37:06,945.945 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:37:06,947.947 INFO    ] No camera update needed
[2026-08-31 09:37:06,950.950 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:37:06,952.952 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:37:06,957.957 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:37:06,962.962 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:37:09,004.004 INFO    ] ================================================
[2026-08-31 09:37:09,019.019 INFO    ] Launching Daemon at Mon Aug 31 09:37:09 IST 2026
[2026-08-31 09:37:09,031.031 INFO    ] ================================================
[2026-08-31 09:37:09,602.602 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:37:09
[2026-08-31 09:37:10,185.185 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:37:10,435.435 INFO    ] Initializing speech engine...
[2026-08-31 09:37:10,443.443 INFO    ] 2026-08-31 09:37:10
[2026-08-31 09:37:10,742.742 INFO    ] 2026-08-31 09:37:10
[2026-08-31 09:37:10,767.767 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:37:10,979.979 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:37:10,985.985 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:37:11,140.140 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:37:11,163.163 INFO    ] time= 31/08/2026 09:37:11
[2026-08-31 09:37:11,172.172 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:37:11,179.179 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:37:11,255.255 INFO    ] No existing commands found in stream
[2026-08-31 09:37:16,286.286 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:37:16,289.289 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-08-31 09:37:20,271.271 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 09:37:20,274.274 INFO    ] Checking for system updates...
[2026-08-31 09:37:20,310.310 INFO    ] 200
[2026-08-31 09:37:20,313.313 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:37:20,371.371 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:37:20,374.374 INFO    ] No update needed
[2026-08-31 09:37:20,376.376 INFO    ] Checking for camera pi updates...
[2026-08-31 09:37:20,409.409 INFO    ] 200
[2026-08-31 09:37:20,412.412 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:37:20,452.452 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:37:20,543.543 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:37:20,546.546 INFO    ] No camera update needed
[2026-08-31 09:37:20,548.548 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:37:20,550.550 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:37:20,556.556 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:37:20,561.561 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:37:22,600.600 INFO    ] ================================================
[2026-08-31 09:37:22,615.615 INFO    ] Launching Daemon at Mon Aug 31 09:37:22 IST 2026
[2026-08-31 09:37:22,626.626 INFO    ] ================================================
[2026-08-31 09:37:23,197.197 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:37:23
[2026-08-31 09:37:23,785.785 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:37:24,058.058 INFO    ] Initializing speech engine...
[2026-08-31 09:37:24,068.068 INFO    ] 2026-08-31 09:37:24
[2026-08-31 09:37:24,324.324 INFO    ] 2026-08-31 09:37:24
[2026-08-31 09:37:24,360.360 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:37:24,618.618 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:37:24,627.627 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:37:24,782.782 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:37:24,785.785 INFO    ] time= 31/08/2026 09:37:24
[2026-08-31 09:37:24,793.793 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:37:24,852.852 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:37:24,936.936 INFO    ] No existing commands found in stream
[2026-08-31 09:37:29,948.948 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:37:29,951.951 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-08-31 09:37:32,318.318 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 09:37:32,322.322 INFO    ] Checking for system updates...
[2026-08-31 09:37:32,370.370 INFO    ] 200
[2026-08-31 09:37:32,373.373 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:37:32,436.436 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:37:32,440.440 INFO    ] No update needed
[2026-08-31 09:37:32,443.443 INFO    ] Checking for camera pi updates...
[2026-08-31 09:37:32,485.485 INFO    ] 200
[2026-08-31 09:37:32,488.488 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:37:32,545.545 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:37:32,617.617 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:37:32,621.621 INFO    ] No camera update needed
[2026-08-31 09:37:32,624.624 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:37:32,627.627 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:37:32,634.634 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:37:32,641.641 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:37:34,684.684 INFO    ] ================================================
[2026-08-31 09:37:34,699.699 INFO    ] Launching Daemon at Mon Aug 31 09:37:34 IST 2026
[2026-08-31 09:37:34,710.710 INFO    ] ================================================
[2026-08-31 09:37:35,307.307 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:37:35
[2026-08-31 09:37:35,961.961 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:37:36,272.272 INFO    ] Initializing speech engine...
[2026-08-31 09:37:36,284.284 INFO    ] 2026-08-31 09:37:36
[2026-08-31 09:37:36,562.562 INFO    ] 2026-08-31 09:37:36
[2026-08-31 09:37:36,617.617 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:37:36,931.931 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:37:36,937.937 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:37:37,134.134 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:37:37,150.150 INFO    ] time= 31/08/2026 09:37:37
[2026-08-31 09:37:37,169.169 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:37:37,199.199 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:37:37,319.319 INFO    ] No existing commands found in stream
[2026-08-31 09:37:42,350.350 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:37:42,354.354 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-08-31 09:37:43,499.499 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 09:37:43,502.502 INFO    ] Checking for system updates...
[2026-08-31 09:37:43,539.539 INFO    ] 200
[2026-08-31 09:37:43,542.542 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:37:43,596.596 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:37:43,598.598 INFO    ] No update needed
[2026-08-31 09:37:43,601.601 INFO    ] Checking for camera pi updates...
[2026-08-31 09:37:43,640.640 INFO    ] 200
[2026-08-31 09:37:43,643.643 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:37:43,689.689 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:37:43,775.775 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:37:43,778.778 INFO    ] No camera update needed
[2026-08-31 09:37:43,781.781 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:37:43,783.783 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:37:43,790.790 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:37:43,796.796 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:37:45,837.837 INFO    ] ================================================
[2026-08-31 09:37:45,852.852 INFO    ] Launching Daemon at Mon Aug 31 09:37:45 IST 2026
[2026-08-31 09:37:45,863.863 INFO    ] ================================================
[2026-08-31 09:37:46,429.429 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:37:46
[2026-08-31 09:37:47,010.010 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:37:47,284.284 INFO    ] Initializing speech engine...
[2026-08-31 09:37:47,290.290 INFO    ] 2026-08-31 09:37:47
[2026-08-31 09:37:47,550.550 INFO    ] 2026-08-31 09:37:47
[2026-08-31 09:37:47,604.604 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:37:47,849.849 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:37:47,854.854 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:37:48,048.048 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:37:48,086.086 INFO    ] time= 31/08/2026 09:37:48
[2026-08-31 09:37:48,092.092 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:37:48,110.110 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:37:48,278.278 INFO    ] No existing commands found in stream
[2026-08-31 09:37:53,304.304 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:37:53,306.306 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-08-31 09:37:54,366.366 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 09:37:54,369.369 INFO    ] Checking for system updates...
[2026-08-31 09:37:54,410.410 INFO    ] 200
[2026-08-31 09:37:54,412.412 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:37:54,464.464 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:37:54,466.466 INFO    ] No update needed
[2026-08-31 09:37:54,468.468 INFO    ] Checking for camera pi updates...
[2026-08-31 09:37:54,503.503 INFO    ] 200
[2026-08-31 09:37:54,505.505 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:37:54,546.546 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:37:54,631.631 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:37:54,634.634 INFO    ] No camera update needed
[2026-08-31 09:37:54,636.636 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:37:54,638.638 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:37:54,644.644 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:37:54,649.649 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:37:56,689.689 INFO    ] ================================================
[2026-08-31 09:37:56,704.704 INFO    ] Launching Daemon at Mon Aug 31 09:37:56 IST 2026
[2026-08-31 09:37:56,715.715 INFO    ] ================================================
[2026-08-31 09:37:57,283.283 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:37:57
[2026-08-31 09:37:57,866.866 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:37:58,135.135 INFO    ] Initializing speech engine...
[2026-08-31 09:37:58,144.144 INFO    ] 2026-08-31 09:37:58
[2026-08-31 09:37:58,391.391 INFO    ] 2026-08-31 09:37:58
[2026-08-31 09:37:58,427.427 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:37:58,678.678 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:37:58,687.687 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:37:58,985.985 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:37:58,993.993 INFO    ] time= 31/08/2026 09:37:58
[2026-08-31 09:37:59,000.000 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:37:59,029.029 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:37:59,164.164 INFO    ] No existing commands found in stream
[2026-08-31 09:38:04,190.190 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:38:04,192.192 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-08-31 09:38:06,548.548 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 09:38:06,550.550 INFO    ] Checking for system updates...
[2026-08-31 09:38:06,586.586 INFO    ] 200
[2026-08-31 09:38:06,589.589 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:38:06,648.648 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:38:06,650.650 INFO    ] No update needed
[2026-08-31 09:38:06,653.653 INFO    ] Checking for camera pi updates...
[2026-08-31 09:38:06,685.685 INFO    ] 200
[2026-08-31 09:38:06,688.688 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:38:06,727.727 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:38:06,814.814 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:38:06,817.817 INFO    ] No camera update needed
[2026-08-31 09:38:06,819.819 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:38:06,821.821 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:38:06,827.827 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:38:06,832.832 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:38:08,873.873 INFO    ] ================================================
[2026-08-31 09:38:08,889.889 INFO    ] Launching Daemon at Mon Aug 31 09:38:08 IST 2026
[2026-08-31 09:38:08,899.899 INFO    ] ================================================
[2026-08-31 09:38:09,477.477 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:38:09
[2026-08-31 09:38:10,063.063 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:38:10,316.316 INFO    ] Initializing speech engine...
[2026-08-31 09:38:10,325.325 INFO    ] 2026-08-31 09:38:10
[2026-08-31 09:38:10,624.624 INFO    ] 2026-08-31 09:38:10
[2026-08-31 09:38:10,658.658 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:38:10,860.860 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:38:10,875.875 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:38:11,036.036 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:38:11,045.045 INFO    ] time= 31/08/2026 09:38:11
[2026-08-31 09:38:11,053.053 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:38:11,100.100 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:38:11,261.261 INFO    ] No existing commands found in stream
[2026-08-31 09:38:16,281.281 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:38:16,284.284 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-08-31 09:38:19,745.745 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 09:38:19,749.749 INFO    ] Checking for system updates...
[2026-08-31 09:38:19,785.785 INFO    ] 200
[2026-08-31 09:38:19,788.788 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:38:19,849.849 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:38:19,852.852 INFO    ] No update needed
[2026-08-31 09:38:19,855.855 INFO    ] Checking for camera pi updates...
[2026-08-31 09:38:19,889.889 INFO    ] 200
[2026-08-31 09:38:19,892.892 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:38:19,934.934 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:38:20,128.128 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:38:20,131.131 INFO    ] No camera update needed
[2026-08-31 09:38:20,134.134 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:38:20,137.137 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:38:20,143.143 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:38:20,149.149 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:38:22,189.189 INFO    ] ================================================
[2026-08-31 09:38:22,205.205 INFO    ] Launching Daemon at Mon Aug 31 09:38:22 IST 2026
[2026-08-31 09:38:22,215.215 INFO    ] ================================================
[2026-08-31 09:38:22,779.779 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:38:22
[2026-08-31 09:38:23,362.362 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:38:23,630.630 INFO    ] Initializing speech engine...
[2026-08-31 09:38:23,640.640 INFO    ] 2026-08-31 09:38:23
[2026-08-31 09:38:23,885.885 INFO    ] 2026-08-31 09:38:23
[2026-08-31 09:38:23,921.921 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:38:24,160.160 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:38:24,181.181 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:38:24,378.378 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:38:24,428.428 INFO    ] time= 31/08/2026 09:38:24
[2026-08-31 09:38:24,446.446 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:38:24,465.465 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:38:24,608.608 INFO    ] No existing commands found in stream
[2026-08-31 09:38:29,634.634 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:38:29,637.637 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-08-31 09:38:32,887.887 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 09:38:32,890.890 INFO    ] Checking for system updates...
[2026-08-31 09:38:32,925.925 INFO    ] 200
[2026-08-31 09:38:32,927.927 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:38:32,986.986 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:38:32,989.989 INFO    ] No update needed
[2026-08-31 09:38:32,993.993 INFO    ] Checking for camera pi updates...
[2026-08-31 09:38:33,028.028 INFO    ] 200
[2026-08-31 09:38:33,031.031 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:38:33,071.071 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:38:33,154.154 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:38:33,156.156 INFO    ] No camera update needed
[2026-08-31 09:38:33,158.158 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:38:33,161.161 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:38:33,166.166 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:38:33,171.171 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:38:35,214.214 INFO    ] ================================================
[2026-08-31 09:38:35,230.230 INFO    ] Launching Daemon at Mon Aug 31 09:38:35 IST 2026
[2026-08-31 09:38:35,241.241 INFO    ] ================================================
[2026-08-31 09:38:35,856.856 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:38:35
[2026-08-31 09:38:36,438.438 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:38:36,704.704 INFO    ] Initializing speech engine...
[2026-08-31 09:38:36,713.713 INFO    ] 2026-08-31 09:38:36
[2026-08-31 09:38:36,961.961 INFO    ] 2026-08-31 09:38:36
[2026-08-31 09:38:36,995.995 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:38:37,188.188 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:38:37,210.210 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:38:37,465.465 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:38:37,511.511 INFO    ] time= 31/08/2026 09:38:37
[2026-08-31 09:38:37,517.517 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:38:37,535.535 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:38:37,650.650 INFO    ] No existing commands found in stream
[2026-08-31 09:38:42,674.674 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:38:42,677.677 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-08-31 09:38:45,698.698 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 09:38:45,701.701 INFO    ] Checking for system updates...
[2026-08-31 09:38:45,740.740 INFO    ] 200
[2026-08-31 09:38:45,742.742 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:38:45,795.795 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:38:45,797.797 INFO    ] No update needed
[2026-08-31 09:38:45,800.800 INFO    ] Checking for camera pi updates...
[2026-08-31 09:38:45,837.837 INFO    ] 200
[2026-08-31 09:38:45,840.840 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:38:45,880.880 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:38:45,962.962 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:38:45,964.964 INFO    ] No camera update needed
[2026-08-31 09:38:45,966.966 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:38:45,969.969 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:38:45,974.974 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:38:45,979.979 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:38:48,021.021 INFO    ] ================================================
[2026-08-31 09:38:48,036.036 INFO    ] Launching Daemon at Mon Aug 31 09:38:48 IST 2026
[2026-08-31 09:38:48,046.046 INFO    ] ================================================
[2026-08-31 09:38:48,648.648 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:38:48
[2026-08-31 09:38:49,321.321 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:38:49,622.622 INFO    ] Initializing speech engine...
[2026-08-31 09:38:49,635.635 INFO    ] 2026-08-31 09:38:49
[2026-08-31 09:38:49,917.917 INFO    ] 2026-08-31 09:38:49
[2026-08-31 09:38:49,961.961 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:38:50,244.244 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:38:50,250.250 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:38:50,453.453 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:38:50,503.503 INFO    ] time= 31/08/2026 09:38:50
[2026-08-31 09:38:50,522.522 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:38:50,529.529 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:38:50,654.654 INFO    ] No existing commands found in stream
[2026-08-31 09:38:55,663.663 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:38:55,666.666 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-08-31 09:38:59,896.896 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 09:38:59,899.899 INFO    ] Checking for system updates...
[2026-08-31 09:38:59,934.934 INFO    ] 200
[2026-08-31 09:38:59,937.937 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:38:59,989.989 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:38:59,992.992 INFO    ] No update needed
[2026-08-31 09:38:59,994.994 INFO    ] Checking for camera pi updates...
[2026-08-31 09:39:00,028.028 INFO    ] 200
[2026-08-31 09:39:00,031.031 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:39:00,071.071 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:39:00,142.142 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:39:00,145.145 INFO    ] No camera update needed
[2026-08-31 09:39:00,147.147 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:39:00,149.149 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:39:00,154.154 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:39:00,159.159 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:39:02,203.203 INFO    ] ================================================
[2026-08-31 09:39:02,223.223 INFO    ] Launching Daemon at Mon Aug 31 09:39:02 IST 2026
[2026-08-31 09:39:02,238.238 INFO    ] ================================================
[2026-08-31 09:39:02,895.895 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:39:02
[2026-08-31 09:39:03,540.540 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:39:03,813.813 INFO    ] Initializing speech engine...
[2026-08-31 09:39:03,820.820 INFO    ] 2026-08-31 09:39:03
[2026-08-31 09:39:04,065.065 INFO    ] 2026-08-31 09:39:04
[2026-08-31 09:39:04,101.101 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:39:04,358.358 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:39:04,362.362 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:39:04,579.579 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:39:04,621.621 INFO    ] time= 31/08/2026 09:39:04
[2026-08-31 09:39:04,627.627 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:39:04,644.644 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:39:04,774.774 INFO    ] No existing commands found in stream
[2026-08-31 09:39:09,787.787 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:39:09,790.790 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-08-31 09:39:12,814.814 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 09:39:12,816.816 INFO    ] Checking for system updates...
[2026-08-31 09:39:12,854.854 INFO    ] 200
[2026-08-31 09:39:12,856.856 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:39:12,911.911 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:39:12,914.914 INFO    ] No update needed
[2026-08-31 09:39:12,917.917 INFO    ] Checking for camera pi updates...
[2026-08-31 09:39:12,952.952 INFO    ] 200
[2026-08-31 09:39:12,955.955 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:39:13,003.003 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:39:13,086.086 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:39:13,089.089 INFO    ] No camera update needed
[2026-08-31 09:39:13,091.091 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:39:13,093.093 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:39:13,099.099 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:39:13,104.104 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:39:15,144.144 INFO    ] ================================================
[2026-08-31 09:39:15,160.160 INFO    ] Launching Daemon at Mon Aug 31 09:39:15 IST 2026
[2026-08-31 09:39:15,172.172 INFO    ] ================================================
[2026-08-31 09:39:15,738.738 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:39:15
[2026-08-31 09:39:16,323.323 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:39:16,581.581 INFO    ] Initializing speech engine...
[2026-08-31 09:39:16,587.587 INFO    ] 2026-08-31 09:39:16
[2026-08-31 09:39:16,890.890 INFO    ] 2026-08-31 09:39:16
[2026-08-31 09:39:16,915.915 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:39:17,158.158 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:39:17,182.182 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:39:17,367.367 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:39:17,437.437 INFO    ] time= 31/08/2026 09:39:17
[2026-08-31 09:39:17,494.494 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:39:17,500.500 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:39:17,667.667 INFO    ] No existing commands found in stream
[2026-08-31 09:39:22,698.698 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:39:22,701.701 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-08-31 09:39:26,210.210 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 09:39:26,214.214 INFO    ] Checking for system updates...
[2026-08-31 09:39:26,252.252 INFO    ] 200
[2026-08-31 09:39:26,255.255 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:39:26,319.319 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:39:26,322.322 INFO    ] No update needed
[2026-08-31 09:39:26,325.325 INFO    ] Checking for camera pi updates...
[2026-08-31 09:39:26,358.358 INFO    ] 200
[2026-08-31 09:39:26,361.361 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:39:26,402.402 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:39:26,492.492 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:39:26,494.494 INFO    ] No camera update needed
[2026-08-31 09:39:26,497.497 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:39:26,499.499 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:39:26,504.504 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:39:26,509.509 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:39:28,549.549 INFO    ] ================================================
[2026-08-31 09:39:28,565.565 INFO    ] Launching Daemon at Mon Aug 31 09:39:28 IST 2026
[2026-08-31 09:39:28,576.576 INFO    ] ================================================
[2026-08-31 09:39:29,255.255 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:39:29
[2026-08-31 09:39:29,950.950 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:39:30,262.262 INFO    ] Initializing speech engine...
[2026-08-31 09:39:30,274.274 INFO    ] 2026-08-31 09:39:30
[2026-08-31 09:39:30,588.588 INFO    ] 2026-08-31 09:39:30
[2026-08-31 09:39:30,674.674 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:39:30,893.893 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:39:30,900.900 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:39:31,043.043 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:39:31,046.046 INFO    ] time= 31/08/2026 09:39:31
[2026-08-31 09:39:31,101.101 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:39:31,120.120 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:39:31,261.261 INFO    ] No existing commands found in stream
[2026-08-31 09:39:36,278.278 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:39:36,282.282 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-08-31 09:39:37,129.129 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 09:39:37,132.132 INFO    ] Checking for system updates...
[2026-08-31 09:39:37,176.176 INFO    ] 200
[2026-08-31 09:39:37,179.179 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:39:37,234.234 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:39:37,237.237 INFO    ] No update needed
[2026-08-31 09:39:37,240.240 INFO    ] Checking for camera pi updates...
[2026-08-31 09:39:37,274.274 INFO    ] 200
[2026-08-31 09:39:37,277.277 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:39:37,318.318 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:39:37,396.396 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:39:37,399.399 INFO    ] No camera update needed
[2026-08-31 09:39:37,401.401 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:39:37,404.404 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:39:37,409.409 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:39:37,414.414 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:39:39,455.455 INFO    ] ================================================
[2026-08-31 09:39:39,470.470 INFO    ] Launching Daemon at Mon Aug 31 09:39:39 IST 2026
[2026-08-31 09:39:39,482.482 INFO    ] ================================================
[2026-08-31 09:39:40,154.154 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:39:40
[2026-08-31 09:39:40,858.858 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:39:41,172.172 INFO    ] Initializing speech engine...
[2026-08-31 09:39:41,183.183 INFO    ] 2026-08-31 09:39:41
[2026-08-31 09:39:41,498.498 INFO    ] 2026-08-31 09:39:41
[2026-08-31 09:39:41,584.584 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:39:41,862.862 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:39:41,915.915 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:39:42,145.145 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:39:42,229.229 INFO    ] time= 31/08/2026 09:39:42
[2026-08-31 09:39:42,258.258 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:39:42,322.322 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:39:42,444.444 INFO    ] No existing commands found in stream
[2026-08-31 09:39:47,461.461 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:39:47,465.465 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-08-31 09:39:48,058.058 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 09:39:48,061.061 INFO    ] Checking for system updates...
[2026-08-31 09:39:48,096.096 INFO    ] 200
[2026-08-31 09:39:48,099.099 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:39:48,157.157 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:39:48,160.160 INFO    ] No update needed
[2026-08-31 09:39:48,162.162 INFO    ] Checking for camera pi updates...
[2026-08-31 09:39:48,196.196 INFO    ] 200
[2026-08-31 09:39:48,198.198 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:39:48,238.238 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:39:48,338.338 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:39:48,341.341 INFO    ] No camera update needed
[2026-08-31 09:39:48,343.343 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:39:48,345.345 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:39:48,351.351 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:39:48,356.356 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:39:50,397.397 INFO    ] ================================================
[2026-08-31 09:39:50,413.413 INFO    ] Launching Daemon at Mon Aug 31 09:39:50 IST 2026
[2026-08-31 09:39:50,424.424 INFO    ] ================================================
[2026-08-31 09:39:50,993.993 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:39:50
[2026-08-31 09:39:51,583.583 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:39:51,850.850 INFO    ] Initializing speech engine...
[2026-08-31 09:39:51,859.859 INFO    ] 2026-08-31 09:39:51
[2026-08-31 09:39:52,105.105 INFO    ] 2026-08-31 09:39:52
[2026-08-31 09:39:52,140.140 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:39:52,391.391 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:39:52,401.401 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:39:52,617.617 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:39:52,659.659 INFO    ] time= 31/08/2026 09:39:52
[2026-08-31 09:39:52,680.680 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:39:52,703.703 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:39:52,813.813 INFO    ] No existing commands found in stream
[2026-08-31 09:39:57,827.827 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:39:57,830.830 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-08-31 09:40:00,998.998 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 09:40:01,001.001 INFO    ] Checking for system updates...
[2026-08-31 09:40:01,045.045 INFO    ] 200
[2026-08-31 09:40:01,048.048 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:40:01,109.109 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:40:01,112.112 INFO    ] No update needed
[2026-08-31 09:40:01,115.115 INFO    ] Checking for camera pi updates...
[2026-08-31 09:40:01,149.149 INFO    ] 200
[2026-08-31 09:40:01,151.151 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:40:01,191.191 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:40:01,291.291 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:40:01,293.293 INFO    ] No camera update needed
[2026-08-31 09:40:01,296.296 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:40:01,298.298 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:40:01,303.303 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:40:01,309.309 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:40:03,375.375 INFO    ] ================================================
[2026-08-31 09:40:03,408.408 INFO    ] Launching Daemon at Mon Aug 31 09:40:03 IST 2026
[2026-08-31 09:40:03,426.426 INFO    ] ================================================
[2026-08-31 09:40:04,046.046 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:40:04
[2026-08-31 09:40:04,632.632 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:40:04,901.901 INFO    ] Initializing speech engine...
[2026-08-31 09:40:04,911.911 INFO    ] 2026-08-31 09:40:04
[2026-08-31 09:40:05,156.156 INFO    ] 2026-08-31 09:40:05
[2026-08-31 09:40:05,191.191 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:40:05,572.572 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:40:05,616.616 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:40:05,852.852 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:40:05,922.922 INFO    ] time= 31/08/2026 09:40:05
[2026-08-31 09:40:05,962.962 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:40:06,026.026 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:40:06,252.252 INFO    ] No existing commands found in stream
[2026-08-31 09:40:11,287.287 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:40:11,291.291 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-08-31 09:40:11,994.994 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 09:40:11,998.998 INFO    ] Checking for system updates...
[2026-08-31 09:40:12,036.036 INFO    ] 200
[2026-08-31 09:40:12,039.039 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:40:12,100.100 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:40:12,103.103 INFO    ] No update needed
[2026-08-31 09:40:12,105.105 INFO    ] Checking for camera pi updates...
[2026-08-31 09:40:12,139.139 INFO    ] 200
[2026-08-31 09:40:12,142.142 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:40:12,183.183 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:40:12,277.277 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:40:12,279.279 INFO    ] No camera update needed
[2026-08-31 09:40:12,282.282 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:40:12,284.284 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:40:12,290.290 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:40:12,295.295 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:40:14,335.335 INFO    ] ================================================
[2026-08-31 09:40:14,350.350 INFO    ] Launching Daemon at Mon Aug 31 09:40:14 IST 2026
[2026-08-31 09:40:14,362.362 INFO    ] ================================================
[2026-08-31 09:40:15,042.042 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:40:15
[2026-08-31 09:40:15,744.744 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:40:16,068.068 INFO    ] Initializing speech engine...
[2026-08-31 09:40:16,077.077 INFO    ] 2026-08-31 09:40:16
[2026-08-31 09:40:16,389.389 INFO    ] 2026-08-31 09:40:16
[2026-08-31 09:40:16,481.481 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:40:16,767.767 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:40:16,773.773 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:40:16,927.927 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:40:16,955.955 INFO    ] time= 31/08/2026 09:40:16
[2026-08-31 09:40:16,967.967 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:40:16,974.974 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:40:17,103.103 INFO    ] No existing commands found in stream
[2026-08-31 09:40:22,134.134 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:40:22,138.138 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-08-31 09:40:25,407.407 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 09:40:25,410.410 INFO    ] Checking for system updates...
[2026-08-31 09:40:25,450.450 INFO    ] 200
[2026-08-31 09:40:25,452.452 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:40:25,513.513 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:40:25,516.516 INFO    ] No update needed
[2026-08-31 09:40:25,518.518 INFO    ] Checking for camera pi updates...
[2026-08-31 09:40:25,557.557 INFO    ] 200
[2026-08-31 09:40:25,560.560 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:40:25,600.600 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:40:25,786.786 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:40:25,789.789 INFO    ] No camera update needed
[2026-08-31 09:40:25,791.791 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:40:25,793.793 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:40:25,799.799 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:40:25,804.804 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:40:27,844.844 INFO    ] ================================================
[2026-08-31 09:40:27,860.860 INFO    ] Launching Daemon at Mon Aug 31 09:40:27 IST 2026
[2026-08-31 09:40:27,872.872 INFO    ] ================================================
[2026-08-31 09:40:28,547.547 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:40:28
[2026-08-31 09:40:29,245.245 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:40:29,559.559 INFO    ] Initializing speech engine...
[2026-08-31 09:40:29,573.573 INFO    ] 2026-08-31 09:40:29
[2026-08-31 09:40:29,861.861 INFO    ] 2026-08-31 09:40:29
[2026-08-31 09:40:29,906.906 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:40:30,189.189 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:40:30,198.198 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:40:30,396.396 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:40:30,416.416 INFO    ] time= 31/08/2026 09:40:30
[2026-08-31 09:40:30,446.446 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:40:30,454.454 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:40:30,556.556 INFO    ] No existing commands found in stream
[2026-08-31 09:40:35,582.582 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:40:35,586.586 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-08-31 09:40:38,784.784 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 09:40:38,788.788 INFO    ] Checking for system updates...
[2026-08-31 09:40:38,837.837 INFO    ] 200
[2026-08-31 09:40:38,842.842 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:40:38,928.928 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:40:38,933.933 INFO    ] No update needed
[2026-08-31 09:40:38,936.936 INFO    ] Checking for camera pi updates...
[2026-08-31 09:40:38,976.976 INFO    ] 200
[2026-08-31 09:40:38,980.980 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:40:39,051.051 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:40:39,129.129 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:40:39,131.131 INFO    ] No camera update needed
[2026-08-31 09:40:39,134.134 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:40:39,136.136 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:40:39,142.142 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:40:39,147.147 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:40:41,188.188 INFO    ] ================================================
[2026-08-31 09:40:41,204.204 INFO    ] Launching Daemon at Mon Aug 31 09:40:41 IST 2026
[2026-08-31 09:40:41,215.215 INFO    ] ================================================
[2026-08-31 09:40:41,787.787 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:40:41
[2026-08-31 09:40:42,377.377 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:40:42,647.647 INFO    ] Initializing speech engine...
[2026-08-31 09:40:42,656.656 INFO    ] 2026-08-31 09:40:42
[2026-08-31 09:40:42,924.924 INFO    ] 2026-08-31 09:40:42
[2026-08-31 09:40:42,988.988 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:40:43,277.277 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:40:43,287.287 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:40:43,458.458 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:40:43,492.492 INFO    ] time= 31/08/2026 09:40:43
[2026-08-31 09:40:43,499.499 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:40:43,521.521 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:40:43,691.691 INFO    ] No existing commands found in stream
[2026-08-31 09:40:48,717.717 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:40:48,721.721 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-08-31 09:40:51,370.370 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 09:40:51,374.374 INFO    ] Checking for system updates...
[2026-08-31 09:40:51,418.418 INFO    ] 200
[2026-08-31 09:40:51,421.421 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:40:51,483.483 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:40:51,486.486 INFO    ] No update needed
[2026-08-31 09:40:51,489.489 INFO    ] Checking for camera pi updates...
[2026-08-31 09:40:51,527.527 INFO    ] 200
[2026-08-31 09:40:51,530.530 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:40:51,571.571 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:40:51,671.671 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:40:51,674.674 INFO    ] No camera update needed
[2026-08-31 09:40:51,676.676 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:40:51,678.678 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:40:51,684.684 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:40:51,689.689 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:40:53,729.729 INFO    ] ================================================
[2026-08-31 09:40:53,744.744 INFO    ] Launching Daemon at Mon Aug 31 09:40:53 IST 2026
[2026-08-31 09:40:53,754.754 INFO    ] ================================================
[2026-08-31 09:40:54,325.325 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:40:54
[2026-08-31 09:40:54,908.908 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:40:55,176.176 INFO    ] Initializing speech engine...
[2026-08-31 09:40:55,185.185 INFO    ] 2026-08-31 09:40:55
[2026-08-31 09:40:55,433.433 INFO    ] 2026-08-31 09:40:55
[2026-08-31 09:40:55,468.468 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:40:55,664.664 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:40:55,721.721 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:40:55,936.936 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:40:55,986.986 INFO    ] time= 31/08/2026 09:40:55
[2026-08-31 09:40:55,992.992 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:40:56,010.010 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:40:56,138.138 INFO    ] No existing commands found in stream
[2026-08-31 09:41:01,152.152 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:41:01,155.155 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-08-31 09:41:05,355.355 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 09:41:05,358.358 INFO    ] Checking for system updates...
[2026-08-31 09:41:05,393.393 INFO    ] 200
[2026-08-31 09:41:05,396.396 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:41:05,454.454 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:41:05,457.457 INFO    ] No update needed
[2026-08-31 09:41:05,459.459 INFO    ] Checking for camera pi updates...
[2026-08-31 09:41:05,497.497 INFO    ] 200
[2026-08-31 09:41:05,499.499 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:41:05,539.539 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:41:05,621.621 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:41:05,624.624 INFO    ] No camera update needed
[2026-08-31 09:41:05,626.626 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:41:05,628.628 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:41:05,633.633 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:41:05,639.639 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:41:07,679.679 INFO    ] ================================================
[2026-08-31 09:41:07,694.694 INFO    ] Launching Daemon at Mon Aug 31 09:41:07 IST 2026
[2026-08-31 09:41:07,705.705 INFO    ] ================================================
[2026-08-31 09:41:08,272.272 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:41:08
[2026-08-31 09:41:08,854.854 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:41:09,122.122 INFO    ] Initializing speech engine...
[2026-08-31 09:41:09,131.131 INFO    ] 2026-08-31 09:41:09
[2026-08-31 09:41:09,379.379 INFO    ] 2026-08-31 09:41:09
[2026-08-31 09:41:09,413.413 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:41:09,668.668 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:41:09,674.674 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:41:09,807.807 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:41:09,867.867 INFO    ] time= 31/08/2026 09:41:09
[2026-08-31 09:41:09,921.921 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:41:09,940.940 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:41:10,065.065 INFO    ] No existing commands found in stream
[2026-08-31 09:41:15,090.090 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:41:15,093.093 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-08-31 09:41:18,188.188 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 09:41:18,191.191 INFO    ] Checking for system updates...
[2026-08-31 09:41:18,226.226 INFO    ] 200
[2026-08-31 09:41:18,229.229 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:41:18,288.288 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:41:18,291.291 INFO    ] No update needed
[2026-08-31 09:41:18,293.293 INFO    ] Checking for camera pi updates...
[2026-08-31 09:41:18,330.330 INFO    ] 200
[2026-08-31 09:41:18,332.332 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:41:18,374.374 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:41:18,479.479 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:41:18,482.482 INFO    ] No camera update needed
[2026-08-31 09:41:18,484.484 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:41:18,487.487 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:41:18,493.493 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:41:18,499.499 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:41:20,541.541 INFO    ] ================================================
[2026-08-31 09:41:20,556.556 INFO    ] Launching Daemon at Mon Aug 31 09:41:20 IST 2026
[2026-08-31 09:41:20,566.566 INFO    ] ================================================
[2026-08-31 09:41:21,135.135 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:41:21
[2026-08-31 09:41:21,722.722 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:41:21,980.980 INFO    ] Initializing speech engine...
[2026-08-31 09:41:21,995.995 INFO    ] 2026-08-31 09:41:21
[2026-08-31 09:41:22,280.280 INFO    ] 2026-08-31 09:41:22
[2026-08-31 09:41:22,315.315 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:41:22,516.516 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:41:22,532.532 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:41:22,657.657 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:41:22,663.663 INFO    ] time= 31/08/2026 09:41:22
[2026-08-31 09:41:22,677.677 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:41:22,706.706 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:41:22,788.788 INFO    ] No existing commands found in stream
[2026-08-31 09:41:27,800.800 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:41:27,803.803 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-08-31 09:41:29,489.489 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 09:41:29,492.492 INFO    ] Checking for system updates...
[2026-08-31 09:41:29,532.532 INFO    ] 200
[2026-08-31 09:41:29,535.535 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:41:29,601.601 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:41:29,604.604 INFO    ] No update needed
[2026-08-31 09:41:29,607.607 INFO    ] Checking for camera pi updates...
[2026-08-31 09:41:29,645.645 INFO    ] 200
[2026-08-31 09:41:29,648.648 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:41:29,700.700 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:41:29,781.781 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:41:29,783.783 INFO    ] No camera update needed
[2026-08-31 09:41:29,786.786 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:41:29,788.788 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:41:29,793.793 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:41:29,798.798 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:41:31,839.839 INFO    ] ================================================
[2026-08-31 09:41:31,854.854 INFO    ] Launching Daemon at Mon Aug 31 09:41:31 IST 2026
[2026-08-31 09:41:31,865.865 INFO    ] ================================================
[2026-08-31 09:41:32,461.461 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:41:32
[2026-08-31 09:41:33,077.077 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:41:33,392.392 INFO    ] Initializing speech engine...
[2026-08-31 09:41:33,402.402 INFO    ] 2026-08-31 09:41:33
[2026-08-31 09:41:33,666.666 INFO    ] 2026-08-31 09:41:33
[2026-08-31 09:41:33,708.708 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:41:33,963.963 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:41:33,974.974 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:41:34,126.126 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:41:34,174.174 INFO    ] time= 31/08/2026 09:41:34
[2026-08-31 09:41:34,213.213 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:41:34,247.247 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:41:34,338.338 INFO    ] No existing commands found in stream
[2026-08-31 09:41:39,350.350 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:41:39,353.353 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-08-31 09:41:41,432.432 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 09:41:41,435.435 INFO    ] Checking for system updates...
[2026-08-31 09:41:41,475.475 INFO    ] 200
[2026-08-31 09:41:41,477.477 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:41:41,536.536 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:41:41,539.539 INFO    ] No update needed
[2026-08-31 09:41:41,541.541 INFO    ] Checking for camera pi updates...
[2026-08-31 09:41:41,578.578 INFO    ] 200
[2026-08-31 09:41:41,581.581 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:41:41,626.626 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:41:41,700.700 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:41:41,703.703 INFO    ] No camera update needed
[2026-08-31 09:41:41,705.705 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:41:41,707.707 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:41:41,713.713 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:41:41,718.718 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:41:43,762.762 INFO    ] ================================================
[2026-08-31 09:41:43,778.778 INFO    ] Launching Daemon at Mon Aug 31 09:41:43 IST 2026
[2026-08-31 09:41:43,789.789 INFO    ] ================================================
[2026-08-31 09:41:44,354.354 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:41:44
[2026-08-31 09:41:44,936.936 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:41:45,205.205 INFO    ] Initializing speech engine...
[2026-08-31 09:41:45,215.215 INFO    ] 2026-08-31 09:41:45
[2026-08-31 09:41:45,466.466 INFO    ] 2026-08-31 09:41:45
[2026-08-31 09:41:45,501.501 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:41:45,757.757 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:41:45,766.766 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:41:45,978.978 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:41:46,029.029 INFO    ] time= 31/08/2026 09:41:45
[2026-08-31 09:41:46,036.036 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:41:46,054.054 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:41:46,184.184 INFO    ] No existing commands found in stream
[2026-08-31 09:41:51,198.198 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:41:51,201.201 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-08-31 09:41:54,984.984 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 09:41:54,986.986 INFO    ] Checking for system updates...
[2026-08-31 09:41:55,023.023 INFO    ] 200
[2026-08-31 09:41:55,025.025 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:41:55,077.077 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:41:55,080.080 INFO    ] No update needed
[2026-08-31 09:41:55,082.082 INFO    ] Checking for camera pi updates...
[2026-08-31 09:41:55,120.120 INFO    ] 200
[2026-08-31 09:41:55,122.122 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:41:55,168.168 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:41:55,269.269 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:41:55,271.271 INFO    ] No camera update needed
[2026-08-31 09:41:55,274.274 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:41:55,276.276 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:41:55,281.281 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:41:55,286.286 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:41:57,327.327 INFO    ] ================================================
[2026-08-31 09:41:57,342.342 INFO    ] Launching Daemon at Mon Aug 31 09:41:57 IST 2026
[2026-08-31 09:41:57,354.354 INFO    ] ================================================
[2026-08-31 09:41:58,009.009 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:41:58
[2026-08-31 09:41:58,683.683 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:41:58,992.992 INFO    ] Initializing speech engine...
[2026-08-31 09:41:59,004.004 INFO    ] 2026-08-31 09:41:58
[2026-08-31 09:41:59,315.315 INFO    ] 2026-08-31 09:41:59
[2026-08-31 09:41:59,389.389 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:41:59,610.610 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:41:59,614.614 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:41:59,800.800 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:41:59,816.816 INFO    ] time= 31/08/2026 09:41:59
[2026-08-31 09:41:59,831.831 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:41:59,840.840 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:41:59,962.962 INFO    ] No existing commands found in stream
[2026-08-31 09:42:04,978.978 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:42:04,981.981 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-08-31 09:42:06,933.933 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 09:42:06,936.936 INFO    ] Checking for system updates...
[2026-08-31 09:42:06,973.973 INFO    ] 200
[2026-08-31 09:42:06,975.975 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:42:07,037.037 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:42:07,039.039 INFO    ] No update needed
[2026-08-31 09:42:07,042.042 INFO    ] Checking for camera pi updates...
[2026-08-31 09:42:07,078.078 INFO    ] 200
[2026-08-31 09:42:07,081.081 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:42:07,125.125 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:42:07,213.213 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:42:07,215.215 INFO    ] No camera update needed
[2026-08-31 09:42:07,217.217 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:42:07,220.220 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:42:07,225.225 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:42:07,230.230 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:42:09,269.269 INFO    ] ================================================
[2026-08-31 09:42:09,284.284 INFO    ] Launching Daemon at Mon Aug 31 09:42:09 IST 2026
[2026-08-31 09:42:09,295.295 INFO    ] ================================================
[2026-08-31 09:42:09,867.867 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:42:09
[2026-08-31 09:42:10,450.450 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:42:10,705.705 INFO    ] Initializing speech engine...
[2026-08-31 09:42:10,713.713 INFO    ] 2026-08-31 09:42:10
[2026-08-31 09:42:11,005.005 INFO    ] 2026-08-31 09:42:10
[2026-08-31 09:42:11,039.039 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:42:11,268.268 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:42:11,303.303 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:42:11,492.492 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:42:11,522.522 INFO    ] time= 31/08/2026 09:42:11
[2026-08-31 09:42:11,576.576 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:42:11,636.636 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:42:11,772.772 INFO    ] No existing commands found in stream
[2026-08-31 09:42:16,790.790 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:42:16,793.793 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-08-31 09:42:19,421.421 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 09:42:19,423.423 INFO    ] Checking for system updates...
[2026-08-31 09:42:19,462.462 INFO    ] 200
[2026-08-31 09:42:19,465.465 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:42:19,523.523 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:42:19,525.525 INFO    ] No update needed
[2026-08-31 09:42:19,528.528 INFO    ] Checking for camera pi updates...
[2026-08-31 09:42:19,564.564 INFO    ] 200
[2026-08-31 09:42:19,567.567 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:42:19,608.608 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:42:19,702.702 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:42:19,705.705 INFO    ] No camera update needed
[2026-08-31 09:42:19,707.707 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:42:19,709.709 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:42:19,714.714 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:42:19,719.719 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:42:21,760.760 INFO    ] ================================================
[2026-08-31 09:42:21,775.775 INFO    ] Launching Daemon at Mon Aug 31 09:42:21 IST 2026
[2026-08-31 09:42:21,786.786 INFO    ] ================================================
[2026-08-31 09:42:22,428.428 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:42:22
[2026-08-31 09:42:23,093.093 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:42:23,392.392 INFO    ] Initializing speech engine...
[2026-08-31 09:42:23,402.402 INFO    ] 2026-08-31 09:42:23
[2026-08-31 09:42:23,679.679 INFO    ] 2026-08-31 09:42:23
[2026-08-31 09:42:23,733.733 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:42:23,986.986 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:42:23,993.993 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:42:24,221.221 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:42:24,251.251 INFO    ] time= 31/08/2026 09:42:24
[2026-08-31 09:42:24,258.258 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:42:24,280.280 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:42:24,411.411 INFO    ] No existing commands found in stream
[2026-08-31 09:42:29,427.427 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:42:29,430.430 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-08-31 09:42:33,127.127 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 09:42:33,130.130 INFO    ] Checking for system updates...
[2026-08-31 09:42:33,169.169 INFO    ] 200
[2026-08-31 09:42:33,171.171 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:42:33,229.229 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:42:33,231.231 INFO    ] No update needed
[2026-08-31 09:42:33,234.234 INFO    ] Checking for camera pi updates...
[2026-08-31 09:42:33,270.270 INFO    ] 200
[2026-08-31 09:42:33,273.273 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:42:33,313.313 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:42:33,364.364 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:42:33,366.366 INFO    ] No camera update needed
[2026-08-31 09:42:33,369.369 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:42:33,371.371 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:42:33,376.376 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:42:33,381.381 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:42:35,421.421 INFO    ] ================================================
[2026-08-31 09:42:35,436.436 INFO    ] Launching Daemon at Mon Aug 31 09:42:35 IST 2026
[2026-08-31 09:42:35,446.446 INFO    ] ================================================
[2026-08-31 09:42:36,013.013 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:42:36
[2026-08-31 09:42:36,615.615 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:42:36,906.906 INFO    ] Initializing speech engine...
[2026-08-31 09:42:36,915.915 INFO    ] 2026-08-31 09:42:36
[2026-08-31 09:42:37,170.170 INFO    ] 2026-08-31 09:42:37
[2026-08-31 09:42:37,205.205 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:42:37,454.454 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:42:37,457.457 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:42:37,765.765 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:42:37,771.771 INFO    ] time= 31/08/2026 09:42:37
[2026-08-31 09:42:37,788.788 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:42:37,794.794 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:42:37,902.902 INFO    ] No existing commands found in stream
[2026-08-31 09:42:42,921.921 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:42:42,924.924 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-08-31 09:42:45,188.188 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 09:42:45,191.191 INFO    ] Checking for system updates...
[2026-08-31 09:42:45,230.230 INFO    ] 200
[2026-08-31 09:42:45,233.233 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:42:45,285.285 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:42:45,287.287 INFO    ] No update needed
[2026-08-31 09:42:45,290.290 INFO    ] Checking for camera pi updates...
[2026-08-31 09:42:45,331.331 INFO    ] 200
[2026-08-31 09:42:45,334.334 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:42:45,379.379 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:42:45,476.476 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:42:45,479.479 INFO    ] No camera update needed
[2026-08-31 09:42:45,481.481 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:42:45,484.484 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:42:45,489.489 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:42:45,494.494 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:42:47,535.535 INFO    ] ================================================
[2026-08-31 09:42:47,550.550 INFO    ] Launching Daemon at Mon Aug 31 09:42:47 IST 2026
[2026-08-31 09:42:47,561.561 INFO    ] ================================================
[2026-08-31 09:42:48,141.141 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:42:48
[2026-08-31 09:42:48,743.743 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:42:49,020.020 INFO    ] Initializing speech engine...
[2026-08-31 09:42:49,028.028 INFO    ] 2026-08-31 09:42:49
[2026-08-31 09:42:49,288.288 INFO    ] 2026-08-31 09:42:49
[2026-08-31 09:42:49,343.343 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:42:49,563.563 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:42:49,573.573 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:42:49,704.704 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:42:49,747.747 INFO    ] time= 31/08/2026 09:42:49
[2026-08-31 09:42:49,807.807 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:42:49,838.838 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:42:49,975.975 INFO    ] No existing commands found in stream
[2026-08-31 09:42:54,995.995 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:42:54,998.998 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-08-31 09:42:57,034.034 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 09:42:57,036.036 INFO    ] Checking for system updates...
[2026-08-31 09:42:57,076.076 INFO    ] 200
[2026-08-31 09:42:57,079.079 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:42:57,138.138 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:42:57,140.140 INFO    ] No update needed
[2026-08-31 09:42:57,143.143 INFO    ] Checking for camera pi updates...
[2026-08-31 09:42:57,179.179 INFO    ] 200
[2026-08-31 09:42:57,182.182 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:42:57,226.226 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:42:57,310.310 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:42:57,312.312 INFO    ] No camera update needed
[2026-08-31 09:42:57,315.315 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:42:57,317.317 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:42:57,322.322 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:42:57,327.327 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:42:59,368.368 INFO    ] ================================================
[2026-08-31 09:42:59,383.383 INFO    ] Launching Daemon at Mon Aug 31 09:42:59 IST 2026
[2026-08-31 09:42:59,394.394 INFO    ] ================================================
[2026-08-31 09:42:59,973.973 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:42:59
[2026-08-31 09:43:00,570.570 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:43:00,843.843 INFO    ] Initializing speech engine...
[2026-08-31 09:43:00,850.850 INFO    ] 2026-08-31 09:43:00
[2026-08-31 09:43:01,112.112 INFO    ] 2026-08-31 09:43:01
[2026-08-31 09:43:01,146.146 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:43:01,389.389 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:43:01,399.399 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:43:01,609.609 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:43:01,655.655 INFO    ] time= 31/08/2026 09:43:01
[2026-08-31 09:43:01,661.661 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:43:01,679.679 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:43:01,811.811 INFO    ] No existing commands found in stream
[2026-08-31 09:43:06,839.839 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:43:06,842.842 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-08-31 09:43:10,778.778 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 09:43:10,781.781 INFO    ] Checking for system updates...
[2026-08-31 09:43:10,820.820 INFO    ] 200
[2026-08-31 09:43:10,823.823 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:43:10,880.880 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:43:10,883.883 INFO    ] No update needed
[2026-08-31 09:43:10,885.885 INFO    ] Checking for camera pi updates...
[2026-08-31 09:43:10,919.919 INFO    ] 200
[2026-08-31 09:43:10,922.922 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:43:10,970.970 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:43:11,060.060 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:43:11,062.062 INFO    ] No camera update needed
[2026-08-31 09:43:11,064.064 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:43:11,067.067 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:43:11,072.072 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:43:11,077.077 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:43:13,118.118 INFO    ] ================================================
[2026-08-31 09:43:13,133.133 INFO    ] Launching Daemon at Mon Aug 31 09:43:13 IST 2026
[2026-08-31 09:43:13,144.144 INFO    ] ================================================
[2026-08-31 09:43:13,725.725 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:43:13
[2026-08-31 09:43:14,316.316 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:43:14,585.585 INFO    ] Initializing speech engine...
[2026-08-31 09:43:14,594.594 INFO    ] 2026-08-31 09:43:14
[2026-08-31 09:43:14,853.853 INFO    ] 2026-08-31 09:43:14
[2026-08-31 09:43:14,905.905 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:43:15,131.131 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:43:15,136.136 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:43:15,333.333 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:43:15,387.387 INFO    ] time= 31/08/2026 09:43:15
[2026-08-31 09:43:15,398.398 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:43:15,416.416 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:43:15,531.531 INFO    ] No existing commands found in stream
[2026-08-31 09:43:20,555.555 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:43:20,559.559 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-08-31 09:43:24,349.349 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 09:43:24,352.352 INFO    ] Checking for system updates...
[2026-08-31 09:43:24,394.394 INFO    ] 200
[2026-08-31 09:43:24,396.396 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:43:24,454.454 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:43:24,457.457 INFO    ] No update needed
[2026-08-31 09:43:24,459.459 INFO    ] Checking for camera pi updates...
[2026-08-31 09:43:24,496.496 INFO    ] 200
[2026-08-31 09:43:24,498.498 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:43:24,542.542 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:43:24,624.624 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:43:24,627.627 INFO    ] No camera update needed
[2026-08-31 09:43:24,629.629 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:43:24,631.631 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:43:24,637.637 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:43:24,642.642 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:43:26,682.682 INFO    ] ================================================
[2026-08-31 09:43:26,697.697 INFO    ] Launching Daemon at Mon Aug 31 09:43:26 IST 2026
[2026-08-31 09:43:26,708.708 INFO    ] ================================================
[2026-08-31 09:43:27,338.338 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:43:27
[2026-08-31 09:43:27,996.996 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:43:28,295.295 INFO    ] Initializing speech engine...
[2026-08-31 09:43:28,303.303 INFO    ] 2026-08-31 09:43:28
[2026-08-31 09:43:28,578.578 INFO    ] 2026-08-31 09:43:28
[2026-08-31 09:43:28,633.633 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:43:28,863.863 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:43:28,869.869 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:43:29,098.098 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:43:29,126.126 INFO    ] time= 31/08/2026 09:43:29
[2026-08-31 09:43:29,144.144 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:43:29,154.154 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:43:29,306.306 INFO    ] No existing commands found in stream
[2026-08-31 09:43:34,332.332 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:43:34,335.335 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-08-31 09:43:35,768.768 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 09:43:35,771.771 INFO    ] Checking for system updates...
[2026-08-31 09:43:35,812.812 INFO    ] 200
[2026-08-31 09:43:35,815.815 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:43:35,874.874 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:43:35,877.877 INFO    ] No update needed
[2026-08-31 09:43:35,880.880 INFO    ] Checking for camera pi updates...
[2026-08-31 09:43:35,923.923 INFO    ] 200
[2026-08-31 09:43:35,927.927 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:43:35,981.981 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:43:36,081.081 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:43:36,084.084 INFO    ] No camera update needed
[2026-08-31 09:43:36,086.086 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:43:36,089.089 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:43:36,094.094 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:43:36,099.099 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:43:38,140.140 INFO    ] ================================================
[2026-08-31 09:43:38,155.155 INFO    ] Launching Daemon at Mon Aug 31 09:43:38 IST 2026
[2026-08-31 09:43:38,166.166 INFO    ] ================================================
[2026-08-31 09:43:38,741.741 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:43:38
[2026-08-31 09:43:39,328.328 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:43:39,572.572 INFO    ] Initializing speech engine...
[2026-08-31 09:43:39,586.586 INFO    ] 2026-08-31 09:43:39
[2026-08-31 09:43:39,846.846 INFO    ] 2026-08-31 09:43:39
[2026-08-31 09:43:39,882.882 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:43:40,136.136 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:43:40,141.141 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:43:40,271.271 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:43:40,308.308 INFO    ] time= 31/08/2026 09:43:40
[2026-08-31 09:43:40,362.362 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:43:40,403.403 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:43:40,535.535 INFO    ] No existing commands found in stream
[2026-08-31 09:43:45,557.557 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:43:45,560.560 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-08-31 09:43:46,187.187 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 09:43:46,189.189 INFO    ] Checking for system updates...
[2026-08-31 09:43:46,229.229 INFO    ] 200
[2026-08-31 09:43:46,232.232 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:43:46,290.290 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:43:46,293.293 INFO    ] No update needed
[2026-08-31 09:43:46,295.295 INFO    ] Checking for camera pi updates...
[2026-08-31 09:43:46,332.332 INFO    ] 200
[2026-08-31 09:43:46,334.334 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:43:46,374.374 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:43:46,474.474 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:43:46,476.476 INFO    ] No camera update needed
[2026-08-31 09:43:46,479.479 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:43:46,481.481 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:43:46,486.486 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:43:46,491.491 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:43:48,532.532 INFO    ] ================================================
[2026-08-31 09:43:48,548.548 INFO    ] Launching Daemon at Mon Aug 31 09:43:48 IST 2026
[2026-08-31 09:43:48,558.558 INFO    ] ================================================
[2026-08-31 09:43:49,123.123 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:43:49
[2026-08-31 09:43:49,705.705 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:43:49,956.956 INFO    ] Initializing speech engine...
[2026-08-31 09:43:49,979.979 INFO    ] 2026-08-31 09:43:49
[2026-08-31 09:43:50,234.234 INFO    ] 2026-08-31 09:43:50
[2026-08-31 09:43:50,269.269 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:43:50,527.527 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:43:50,536.536 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:43:50,674.674 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:43:50,739.739 INFO    ] time= 31/08/2026 09:43:50
[2026-08-31 09:43:50,788.788 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:43:50,808.808 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:43:50,938.938 INFO    ] No existing commands found in stream
[2026-08-31 09:43:55,963.963 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:43:55,966.966 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-08-31 09:43:57,846.846 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 09:43:57,849.849 INFO    ] Checking for system updates...
[2026-08-31 09:43:57,890.890 INFO    ] 200
[2026-08-31 09:43:57,893.893 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:43:57,957.957 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:43:57,961.961 INFO    ] No update needed
[2026-08-31 09:43:57,964.964 INFO    ] Checking for camera pi updates...
[2026-08-31 09:43:58,002.002 INFO    ] 200
[2026-08-31 09:43:58,005.005 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:43:58,057.057 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:43:58,144.144 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:43:58,147.147 INFO    ] No camera update needed
[2026-08-31 09:43:58,150.150 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:43:58,153.153 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:43:58,159.159 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:43:58,165.165 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:44:00,207.207 INFO    ] ================================================
[2026-08-31 09:44:00,222.222 INFO    ] Launching Daemon at Mon Aug 31 09:44:00 IST 2026
[2026-08-31 09:44:00,233.233 INFO    ] ================================================
[2026-08-31 09:44:00,814.814 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:44:00
[2026-08-31 09:44:01,412.412 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:44:01,686.686 INFO    ] Initializing speech engine...
[2026-08-31 09:44:01,695.695 INFO    ] 2026-08-31 09:44:01
[2026-08-31 09:44:01,943.943 INFO    ] 2026-08-31 09:44:01
[2026-08-31 09:44:01,993.993 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:44:02,217.217 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:44:02,240.240 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:44:02,422.422 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:44:02,438.438 INFO    ] time= 31/08/2026 09:44:02
[2026-08-31 09:44:02,449.449 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:44:02,453.453 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:44:02,526.526 INFO    ] No existing commands found in stream
[2026-08-31 09:44:07,536.536 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:44:07,539.539 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-08-31 09:44:11,865.865 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 09:44:11,867.867 INFO    ] Checking for system updates...
[2026-08-31 09:44:11,903.903 INFO    ] 200
[2026-08-31 09:44:11,905.905 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:44:11,960.960 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:44:11,963.963 INFO    ] No update needed
[2026-08-31 09:44:11,965.965 INFO    ] Checking for camera pi updates...
[2026-08-31 09:44:11,998.998 INFO    ] 200
[2026-08-31 09:44:12,001.001 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:44:12,041.041 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:44:12,127.127 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:44:12,130.130 INFO    ] No camera update needed
[2026-08-31 09:44:12,132.132 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:44:12,134.134 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:44:12,140.140 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:44:12,144.144 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:44:14,185.185 INFO    ] ================================================
[2026-08-31 09:44:14,200.200 INFO    ] Launching Daemon at Mon Aug 31 09:44:14 IST 2026
[2026-08-31 09:44:14,211.211 INFO    ] ================================================
[2026-08-31 09:44:14,783.783 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:44:14
[2026-08-31 09:44:15,367.367 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:44:15,633.633 INFO    ] Initializing speech engine...
[2026-08-31 09:44:15,641.641 INFO    ] 2026-08-31 09:44:15
[2026-08-31 09:44:15,895.895 INFO    ] 2026-08-31 09:44:15
[2026-08-31 09:44:15,953.953 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:44:16,176.176 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:44:16,185.185 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:44:16,334.334 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:44:16,404.404 INFO    ] time= 31/08/2026 09:44:16
[2026-08-31 09:44:16,445.445 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:44:16,451.451 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:44:16,609.609 INFO    ] No existing commands found in stream
[2026-08-31 09:44:21,636.636 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:44:21,639.639 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-08-31 09:44:25,408.408 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 09:44:25,410.410 INFO    ] Checking for system updates...
[2026-08-31 09:44:25,449.449 INFO    ] 200
[2026-08-31 09:44:25,451.451 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:44:25,509.509 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:44:25,512.512 INFO    ] No update needed
[2026-08-31 09:44:25,514.514 INFO    ] Checking for camera pi updates...
[2026-08-31 09:44:25,548.548 INFO    ] 200
[2026-08-31 09:44:25,551.551 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:44:25,595.595 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:44:25,690.690 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:44:25,692.692 INFO    ] No camera update needed
[2026-08-31 09:44:25,695.695 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:44:25,697.697 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:44:25,709.709 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:44:25,715.715 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:44:27,756.756 INFO    ] ================================================
[2026-08-31 09:44:27,771.771 INFO    ] Launching Daemon at Mon Aug 31 09:44:27 IST 2026
[2026-08-31 09:44:27,783.783 INFO    ] ================================================
[2026-08-31 09:44:28,347.347 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:44:28
[2026-08-31 09:44:28,930.930 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:44:29,198.198 INFO    ] Initializing speech engine...
[2026-08-31 09:44:29,207.207 INFO    ] 2026-08-31 09:44:29
[2026-08-31 09:44:29,452.452 INFO    ] 2026-08-31 09:44:29
[2026-08-31 09:44:29,488.488 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:44:29,735.735 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:44:29,742.742 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:44:29,944.944 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:44:30,005.005 INFO    ] time= 31/08/2026 09:44:29
[2026-08-31 09:44:30,011.011 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:44:30,029.029 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:44:30,157.157 INFO    ] No existing commands found in stream
[2026-08-31 09:44:35,171.171 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:44:35,174.174 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-08-31 09:44:35,735.735 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 09:44:35,738.738 INFO    ] Checking for system updates...
[2026-08-31 09:44:35,773.773 INFO    ] 200
[2026-08-31 09:44:35,775.775 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:44:35,836.836 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:44:35,838.838 INFO    ] No update needed
[2026-08-31 09:44:35,841.841 INFO    ] Checking for camera pi updates...
[2026-08-31 09:44:35,873.873 INFO    ] 200
[2026-08-31 09:44:35,876.876 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:44:35,920.920 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:44:36,099.099 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:44:36,101.101 INFO    ] No camera update needed
[2026-08-31 09:44:36,103.103 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:44:36,106.106 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:44:36,111.111 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:44:36,116.116 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:44:38,158.158 INFO    ] ================================================
[2026-08-31 09:44:38,173.173 INFO    ] Launching Daemon at Mon Aug 31 09:44:38 IST 2026
[2026-08-31 09:44:38,184.184 INFO    ] ================================================
[2026-08-31 09:44:38,837.837 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:44:38
[2026-08-31 09:44:39,514.514 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:44:39,830.830 INFO    ] Initializing speech engine...
[2026-08-31 09:44:39,835.835 INFO    ] 2026-08-31 09:44:39
[2026-08-31 09:44:40,104.104 INFO    ] 2026-08-31 09:44:40
[2026-08-31 09:44:40,159.159 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:44:40,408.408 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:44:40,414.414 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:44:40,618.618 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:44:40,648.648 INFO    ] time= 31/08/2026 09:44:40
[2026-08-31 09:44:40,667.667 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:44:40,699.699 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:44:40,806.806 INFO    ] No existing commands found in stream
[2026-08-31 09:44:45,822.822 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:44:45,825.825 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-08-31 09:44:49,938.938 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 09:44:49,941.941 INFO    ] Checking for system updates...
[2026-08-31 09:44:49,978.978 INFO    ] 200
[2026-08-31 09:44:49,981.981 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:44:50,035.035 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:44:50,038.038 INFO    ] No update needed
[2026-08-31 09:44:50,041.041 INFO    ] Checking for camera pi updates...
[2026-08-31 09:44:50,075.075 INFO    ] 200
[2026-08-31 09:44:50,078.078 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:44:50,119.119 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:44:50,201.201 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:44:50,204.204 INFO    ] No camera update needed
[2026-08-31 09:44:50,207.207 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:44:50,209.209 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:44:50,216.216 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:44:50,221.221 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:44:52,264.264 INFO    ] ================================================
[2026-08-31 09:44:52,282.282 INFO    ] Launching Daemon at Mon Aug 31 09:44:52 IST 2026
[2026-08-31 09:44:52,293.293 INFO    ] ================================================
[2026-08-31 09:44:52,872.872 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:44:52
[2026-08-31 09:44:53,469.469 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:44:53,740.740 INFO    ] Initializing speech engine...
[2026-08-31 09:44:53,751.751 INFO    ] 2026-08-31 09:44:53
[2026-08-31 09:44:53,997.997 INFO    ] 2026-08-31 09:44:53
[2026-08-31 09:44:54,032.032 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:44:54,223.223 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:44:54,269.269 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:44:54,505.505 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:44:54,552.552 INFO    ] time= 31/08/2026 09:44:54
[2026-08-31 09:44:54,558.558 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:44:54,573.573 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:44:54,691.691 INFO    ] No existing commands found in stream
[2026-08-31 09:44:59,716.716 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:44:59,719.719 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-08-31 09:45:01,457.457 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 09:45:01,460.460 INFO    ] Checking for system updates...
[2026-08-31 09:45:01,500.500 INFO    ] 200
[2026-08-31 09:45:01,503.503 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:45:01,563.563 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:45:01,566.566 INFO    ] No update needed
[2026-08-31 09:45:01,569.569 INFO    ] Checking for camera pi updates...
[2026-08-31 09:45:01,607.607 INFO    ] 200
[2026-08-31 09:45:01,610.610 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:45:01,656.656 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:45:02,224.224 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:45:02,238.238 INFO    ] No camera update needed
[2026-08-31 09:45:02,243.243 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:45:02,260.260 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:45:02,271.271 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:45:02,301.301 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:45:04,357.357 INFO    ] ================================================
[2026-08-31 09:45:04,373.373 INFO    ] Launching Daemon at Mon Aug 31 09:45:04 IST 2026
[2026-08-31 09:45:04,384.384 INFO    ] ================================================
[2026-08-31 09:45:04,964.964 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:45:04
[2026-08-31 09:45:05,563.563 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:45:05,826.826 INFO    ] Initializing speech engine...
[2026-08-31 09:45:05,842.842 INFO    ] 2026-08-31 09:45:05
[2026-08-31 09:45:06,130.130 INFO    ] 2026-08-31 09:45:06
[2026-08-31 09:45:06,165.165 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:45:06,352.352 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:45:06,371.371 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:45:06,536.536 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:45:06,553.553 INFO    ] time= 31/08/2026 09:45:06
[2026-08-31 09:45:06,563.563 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:45:06,569.569 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:45:06,682.682 INFO    ] No existing commands found in stream
[2026-08-31 09:45:11,707.707 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:45:11,710.710 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-08-31 09:45:15,504.504 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 09:45:15,508.508 INFO    ] Checking for system updates...
[2026-08-31 09:45:15,549.549 INFO    ] 200
[2026-08-31 09:45:15,551.551 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:45:15,612.612 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:45:15,615.615 INFO    ] No update needed
[2026-08-31 09:45:15,618.618 INFO    ] Checking for camera pi updates...
[2026-08-31 09:45:15,652.652 INFO    ] 200
[2026-08-31 09:45:15,655.655 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:45:15,697.697 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:45:15,772.772 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:45:15,775.775 INFO    ] No camera update needed
[2026-08-31 09:45:15,778.778 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:45:15,781.781 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:45:15,787.787 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:45:15,793.793 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:45:17,835.835 INFO    ] ================================================
[2026-08-31 09:45:17,850.850 INFO    ] Launching Daemon at Mon Aug 31 09:45:17 IST 2026
[2026-08-31 09:45:17,860.860 INFO    ] ================================================
[2026-08-31 09:45:18,529.529 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:45:18
[2026-08-31 09:45:19,213.213 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:45:19,527.527 INFO    ] Initializing speech engine...
[2026-08-31 09:45:19,540.540 INFO    ] 2026-08-31 09:45:19
[2026-08-31 09:45:19,816.816 INFO    ] 2026-08-31 09:45:19
[2026-08-31 09:45:19,872.872 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:45:20,129.129 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:45:20,150.150 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:45:20,371.371 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:45:20,379.379 INFO    ] time= 31/08/2026 09:45:20
[2026-08-31 09:45:20,399.399 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:45:20,429.429 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:45:20,563.563 INFO    ] No existing commands found in stream
[2026-08-31 09:45:25,589.589 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:45:25,592.592 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-08-31 09:45:26,406.406 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 09:45:26,409.409 INFO    ] Checking for system updates...
[2026-08-31 09:45:26,446.446 INFO    ] 200
[2026-08-31 09:45:26,449.449 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:45:26,504.504 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:45:26,506.506 INFO    ] No update needed
[2026-08-31 09:45:26,509.509 INFO    ] Checking for camera pi updates...
[2026-08-31 09:45:26,542.542 INFO    ] 200
[2026-08-31 09:45:26,545.545 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:45:26,585.585 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:45:26,674.674 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:45:26,677.677 INFO    ] No camera update needed
[2026-08-31 09:45:26,680.680 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:45:26,682.682 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:45:26,687.687 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:45:26,692.692 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:45:28,732.732 INFO    ] ================================================
[2026-08-31 09:45:28,748.748 INFO    ] Launching Daemon at Mon Aug 31 09:45:28 IST 2026
[2026-08-31 09:45:28,759.759 INFO    ] ================================================
[2026-08-31 09:45:29,422.422 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:45:29
[2026-08-31 09:45:30,105.105 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:45:30,428.428 INFO    ] Initializing speech engine...
[2026-08-31 09:45:30,436.436 INFO    ] 2026-08-31 09:45:30
[2026-08-31 09:45:30,744.744 INFO    ] 2026-08-31 09:45:30
[2026-08-31 09:45:30,832.832 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:45:31,108.108 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:45:31,120.120 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:45:31,462.462 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:45:31,492.492 INFO    ] time= 31/08/2026 09:45:31
[2026-08-31 09:45:31,546.546 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:45:31,601.601 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:45:31,798.798 INFO    ] No existing commands found in stream
[2026-08-31 09:45:36,829.829 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:45:36,833.833 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-08-31 09:45:39,465.465 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 09:45:39,469.469 INFO    ] Checking for system updates...
[2026-08-31 09:45:39,504.504 INFO    ] 200
[2026-08-31 09:45:39,507.507 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:45:39,559.559 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:45:39,562.562 INFO    ] No update needed
[2026-08-31 09:45:39,564.564 INFO    ] Checking for camera pi updates...
[2026-08-31 09:45:39,598.598 INFO    ] 200
[2026-08-31 09:45:39,600.600 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:45:39,640.640 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:45:39,721.721 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:45:39,723.723 INFO    ] No camera update needed
[2026-08-31 09:45:39,726.726 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:45:39,728.728 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:45:39,733.733 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:45:39,738.738 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:45:41,779.779 INFO    ] ================================================
[2026-08-31 09:45:41,794.794 INFO    ] Launching Daemon at Mon Aug 31 09:45:41 IST 2026
[2026-08-31 09:45:41,805.805 INFO    ] ================================================
[2026-08-31 09:45:42,374.374 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:45:42
[2026-08-31 09:45:43,023.023 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:45:43,341.341 INFO    ] Initializing speech engine...
[2026-08-31 09:45:43,350.350 INFO    ] 2026-08-31 09:45:43
[2026-08-31 09:45:43,660.660 INFO    ] 2026-08-31 09:45:43
[2026-08-31 09:45:43,743.743 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:45:43,924.924 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:45:43,942.942 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:45:44,161.161 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:45:44,179.179 INFO    ] time= 31/08/2026 09:45:44
[2026-08-31 09:45:44,210.210 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:45:44,220.220 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:45:44,324.324 INFO    ] No existing commands found in stream
[2026-08-31 09:45:49,359.359 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:45:49,362.362 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-08-31 09:45:53,417.417 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 09:45:53,420.420 INFO    ] Checking for system updates...
[2026-08-31 09:45:53,456.456 INFO    ] 200
[2026-08-31 09:45:53,459.459 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:45:53,511.511 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:45:53,514.514 INFO    ] No update needed
[2026-08-31 09:45:53,517.517 INFO    ] Checking for camera pi updates...
[2026-08-31 09:45:53,551.551 INFO    ] 200
[2026-08-31 09:45:53,553.553 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:45:53,593.593 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:45:53,675.675 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:45:53,678.678 INFO    ] No camera update needed
[2026-08-31 09:45:53,680.680 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:45:53,682.682 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:45:53,688.688 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:45:53,693.693 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:45:55,732.732 INFO    ] ================================================
[2026-08-31 09:45:55,748.748 INFO    ] Launching Daemon at Mon Aug 31 09:45:55 IST 2026
[2026-08-31 09:45:55,759.759 INFO    ] ================================================
[2026-08-31 09:45:56,411.411 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:45:56
[2026-08-31 09:45:57,094.094 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:45:57,404.404 INFO    ] Initializing speech engine...
[2026-08-31 09:45:57,416.416 INFO    ] 2026-08-31 09:45:57
[2026-08-31 09:45:57,690.690 INFO    ] 2026-08-31 09:45:57
[2026-08-31 09:45:57,724.724 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:45:57,983.983 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:45:57,988.988 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:45:58,125.125 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:45:58,191.191 INFO    ] time= 31/08/2026 09:45:58
[2026-08-31 09:45:58,251.251 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:45:58,263.263 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:45:58,412.412 INFO    ] No existing commands found in stream
[2026-08-31 09:46:03,426.426 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:46:03,430.430 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-08-31 09:46:05,646.646 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 09:46:05,649.649 INFO    ] Checking for system updates...
[2026-08-31 09:46:05,685.685 INFO    ] 200
[2026-08-31 09:46:05,687.687 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:46:05,746.746 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:46:05,749.749 INFO    ] No update needed
[2026-08-31 09:46:05,751.751 INFO    ] Checking for camera pi updates...
[2026-08-31 09:46:05,785.785 INFO    ] 200
[2026-08-31 09:46:05,787.787 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:46:05,828.828 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:46:05,912.912 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:46:05,914.914 INFO    ] No camera update needed
[2026-08-31 09:46:05,916.916 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:46:05,919.919 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:46:05,924.924 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:46:05,929.929 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:46:07,971.971 INFO    ] ================================================
[2026-08-31 09:46:07,986.986 INFO    ] Launching Daemon at Mon Aug 31 09:46:07 IST 2026
[2026-08-31 09:46:08,996.996 INFO    ] ================================================
[2026-08-31 09:46:08,568.568 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:46:08
[2026-08-31 09:46:09,155.155 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:46:09,424.424 INFO    ] Initializing speech engine...
[2026-08-31 09:46:09,433.433 INFO    ] 2026-08-31 09:46:09
[2026-08-31 09:46:09,680.680 INFO    ] 2026-08-31 09:46:09
[2026-08-31 09:46:09,715.715 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:46:09,966.966 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:46:09,976.976 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:46:10,249.249 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:46:10,275.275 INFO    ] time= 31/08/2026 09:46:10
[2026-08-31 09:46:10,282.282 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:46:10,290.290 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:46:10,402.402 INFO    ] No existing commands found in stream
[2026-08-31 09:46:15,432.432 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:46:15,435.435 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-08-31 09:46:19,457.457 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 09:46:19,459.459 INFO    ] Checking for system updates...
[2026-08-31 09:46:19,495.495 INFO    ] 200
[2026-08-31 09:46:19,497.497 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:46:19,549.549 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:46:19,551.551 INFO    ] No update needed
[2026-08-31 09:46:19,554.554 INFO    ] Checking for camera pi updates...
[2026-08-31 09:46:19,591.591 INFO    ] 200
[2026-08-31 09:46:19,594.594 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:46:19,634.634 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:46:19,727.727 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:46:19,729.729 INFO    ] No camera update needed
[2026-08-31 09:46:19,732.732 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:46:19,734.734 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:46:19,739.739 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:46:19,744.744 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:46:21,788.788 INFO    ] ================================================
[2026-08-31 09:46:21,805.805 INFO    ] Launching Daemon at Mon Aug 31 09:46:21 IST 2026
[2026-08-31 09:46:21,816.816 INFO    ] ================================================
[2026-08-31 09:46:22,483.483 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:46:22
[2026-08-31 09:46:23,169.169 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:46:24,795.795 INFO    ] Initializing speech engine...
[2026-08-31 09:46:24,799.799 INFO    ] 2026-08-31 09:46:24
[2026-08-31 09:46:25,079.079 INFO    ] 2026-08-31 09:46:25
[2026-08-31 09:46:25,106.106 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:46:25,722.722 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:46:25,746.746 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:46:25,877.877 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:46:25,881.881 INFO    ] time= 31/08/2026 09:46:25
[2026-08-31 09:46:25,886.886 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:46:25,891.891 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:46:25,999.999 INFO    ] No existing commands found in stream
[2026-08-31 09:46:31,008.008 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:46:31,011.011 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-08-31 09:46:33,535.535 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 09:46:33,538.538 INFO    ] Checking for system updates...
[2026-08-31 09:46:33,575.575 INFO    ] 200
[2026-08-31 09:46:33,578.578 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:46:33,631.631 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:46:33,633.633 INFO    ] No update needed
[2026-08-31 09:46:33,636.636 INFO    ] Checking for camera pi updates...
[2026-08-31 09:46:33,669.669 INFO    ] 200
[2026-08-31 09:46:33,672.672 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:46:33,712.712 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:46:33,810.810 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:46:33,812.812 INFO    ] No camera update needed
[2026-08-31 09:46:33,815.815 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:46:33,817.817 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:46:33,823.823 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:46:33,828.828 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:46:35,868.868 INFO    ] ================================================
[2026-08-31 09:46:35,884.884 INFO    ] Launching Daemon at Mon Aug 31 09:46:35 IST 2026
[2026-08-31 09:46:35,895.895 INFO    ] ================================================
[2026-08-31 09:46:36,463.463 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:46:36
[2026-08-31 09:46:37,048.048 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:46:37,299.299 INFO    ] Initializing speech engine...
[2026-08-31 09:46:37,312.312 INFO    ] 2026-08-31 09:46:37
[2026-08-31 09:46:37,579.579 INFO    ] 2026-08-31 09:46:37
[2026-08-31 09:46:37,615.615 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:46:37,814.814 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:46:37,854.854 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:46:38,019.019 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:46:38,063.063 INFO    ] time= 31/08/2026 09:46:38
[2026-08-31 09:46:38,127.127 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:46:38,158.158 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:46:38,283.283 INFO    ] No existing commands found in stream
[2026-08-31 09:46:43,308.308 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:46:43,311.311 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-08-31 09:46:46,545.545 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 09:46:46,548.548 INFO    ] Checking for system updates...
[2026-08-31 09:46:46,590.590 INFO    ] 200
[2026-08-31 09:46:46,592.592 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:46:46,644.644 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:46:46,646.646 INFO    ] No update needed
[2026-08-31 09:46:46,649.649 INFO    ] Checking for camera pi updates...
[2026-08-31 09:46:46,683.683 INFO    ] 200
[2026-08-31 09:46:46,685.685 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:46:46,725.725 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:46:46,931.931 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:46:46,933.933 INFO    ] No camera update needed
[2026-08-31 09:46:46,935.935 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:46:46,938.938 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:46:46,943.943 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:46:46,948.948 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:46:48,989.989 INFO    ] ================================================
[2026-08-31 09:46:49,004.004 INFO    ] Launching Daemon at Mon Aug 31 09:46:48 IST 2026
[2026-08-31 09:46:49,015.015 INFO    ] ================================================
[2026-08-31 09:46:49,630.630 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:46:49
[2026-08-31 09:46:50,281.281 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:46:50,538.538 INFO    ] Initializing speech engine...
[2026-08-31 09:46:50,546.546 INFO    ] 2026-08-31 09:46:50
[2026-08-31 09:46:50,843.843 INFO    ] 2026-08-31 09:46:50
[2026-08-31 09:46:50,878.878 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:46:51,084.084 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:46:51,143.143 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:46:51,375.375 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:46:51,414.414 INFO    ] time= 31/08/2026 09:46:51
[2026-08-31 09:46:51,420.420 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:46:51,437.437 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:46:51,573.573 INFO    ] No existing commands found in stream
[2026-08-31 09:46:56,591.591 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:46:56,594.594 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-08-31 09:46:57,093.093 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 09:46:57,096.096 INFO    ] Checking for system updates...
[2026-08-31 09:46:57,131.131 INFO    ] 200
[2026-08-31 09:46:57,134.134 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:46:57,185.185 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:46:57,188.188 INFO    ] No update needed
[2026-08-31 09:46:57,190.190 INFO    ] Checking for camera pi updates...
[2026-08-31 09:46:57,228.228 INFO    ] 200
[2026-08-31 09:46:57,230.230 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:46:57,275.275 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:46:57,359.359 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:46:57,362.362 INFO    ] No camera update needed
[2026-08-31 09:46:57,364.364 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:46:57,366.366 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:46:57,371.371 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:46:57,376.376 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:46:59,417.417 INFO    ] ================================================
[2026-08-31 09:46:59,433.433 INFO    ] Launching Daemon at Mon Aug 31 09:46:59 IST 2026
[2026-08-31 09:46:59,445.445 INFO    ] ================================================
[2026-08-31 09:47:00,025.025 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:47:00
[2026-08-31 09:47:00,622.622 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:47:00,894.894 INFO    ] Initializing speech engine...
[2026-08-31 09:47:00,904.904 INFO    ] 2026-08-31 09:47:00
[2026-08-31 09:47:01,151.151 INFO    ] 2026-08-31 09:47:01
[2026-08-31 09:47:01,216.216 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:47:01,442.442 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:47:01,448.448 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:47:01,636.636 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:47:01,643.643 INFO    ] time= 31/08/2026 09:47:01
[2026-08-31 09:47:01,660.660 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:47:01,666.666 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:47:01,764.764 INFO    ] No existing commands found in stream
[2026-08-31 09:47:06,774.774 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:47:06,777.777 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-08-31 09:47:09,249.249 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 09:47:09,252.252 INFO    ] Checking for system updates...
[2026-08-31 09:47:09,287.287 INFO    ] 200
[2026-08-31 09:47:09,289.289 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:47:09,345.345 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:47:09,348.348 INFO    ] No update needed
[2026-08-31 09:47:09,350.350 INFO    ] Checking for camera pi updates...
[2026-08-31 09:47:09,384.384 INFO    ] 200
[2026-08-31 09:47:09,387.387 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:47:09,433.433 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:47:09,531.531 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:47:09,534.534 INFO    ] No camera update needed
[2026-08-31 09:47:09,536.536 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:47:09,539.539 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:47:09,544.544 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:47:09,549.549 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:47:11,593.593 INFO    ] ================================================
[2026-08-31 09:47:11,609.609 INFO    ] Launching Daemon at Mon Aug 31 09:47:11 IST 2026
[2026-08-31 09:47:11,619.619 INFO    ] ================================================
[2026-08-31 09:47:12,190.190 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:47:12
[2026-08-31 09:47:12,777.777 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:47:13,033.033 INFO    ] Initializing speech engine...
[2026-08-31 09:47:13,042.042 INFO    ] 2026-08-31 09:47:13
[2026-08-31 09:47:13,313.313 INFO    ] 2026-08-31 09:47:13
[2026-08-31 09:47:13,349.349 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:47:13,599.599 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:47:13,608.608 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:47:13,856.856 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:47:13,868.868 INFO    ] time= 31/08/2026 09:47:13
[2026-08-31 09:47:13,884.884 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:47:13,893.893 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:47:14,045.045 INFO    ] No existing commands found in stream
[2026-08-31 09:47:19,080.080 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:47:19,083.083 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-08-31 09:47:20,856.856 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 09:47:20,859.859 INFO    ] Checking for system updates...
[2026-08-31 09:47:20,894.894 INFO    ] 200
[2026-08-31 09:47:20,897.897 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:47:20,950.950 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:47:20,952.952 INFO    ] No update needed
[2026-08-31 09:47:20,955.955 INFO    ] Checking for camera pi updates...
[2026-08-31 09:47:20,992.992 INFO    ] 200
[2026-08-31 09:47:20,995.995 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:47:21,034.034 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:47:21,113.113 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:47:21,115.115 INFO    ] No camera update needed
[2026-08-31 09:47:21,118.118 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:47:21,120.120 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:47:21,125.125 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:47:21,130.130 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:47:23,175.175 INFO    ] ================================================
[2026-08-31 09:47:23,191.191 INFO    ] Launching Daemon at Mon Aug 31 09:47:23 IST 2026
[2026-08-31 09:47:23,202.202 INFO    ] ================================================
[2026-08-31 09:47:23,775.775 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:47:23
[2026-08-31 09:47:24,357.357 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:47:24,626.626 INFO    ] Initializing speech engine...
[2026-08-31 09:47:24,635.635 INFO    ] 2026-08-31 09:47:24
[2026-08-31 09:47:24,901.901 INFO    ] 2026-08-31 09:47:24
[2026-08-31 09:47:24,936.936 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:47:25,138.138 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:47:25,152.152 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:47:25,315.315 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:47:25,322.322 INFO    ] time= 31/08/2026 09:47:25
[2026-08-31 09:47:25,329.329 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:47:25,382.382 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:47:25,500.500 INFO    ] No existing commands found in stream
[2026-08-31 09:47:30,525.525 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:47:30,528.528 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-08-31 09:47:32,132.132 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 09:47:32,136.136 INFO    ] Checking for system updates...
[2026-08-31 09:47:32,193.193 INFO    ] 200
[2026-08-31 09:47:32,196.196 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:47:32,283.283 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:47:32,285.285 INFO    ] No update needed
[2026-08-31 09:47:32,288.288 INFO    ] Checking for camera pi updates...
[2026-08-31 09:47:32,333.333 INFO    ] 200
[2026-08-31 09:47:32,336.336 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:47:32,382.382 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:47:32,471.471 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:47:32,474.474 INFO    ] No camera update needed
[2026-08-31 09:47:32,476.476 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:47:32,480.480 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:47:32,486.486 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:47:32,492.492 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:47:34,535.535 INFO    ] ================================================
[2026-08-31 09:47:34,551.551 INFO    ] Launching Daemon at Mon Aug 31 09:47:34 IST 2026
[2026-08-31 09:47:34,562.562 INFO    ] ================================================
[2026-08-31 09:47:35,254.254 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:47:35
[2026-08-31 09:47:35,847.847 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:47:36,115.115 INFO    ] Initializing speech engine...
[2026-08-31 09:47:36,124.124 INFO    ] 2026-08-31 09:47:36
[2026-08-31 09:47:36,377.377 INFO    ] 2026-08-31 09:47:36
[2026-08-31 09:47:36,436.436 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:47:36,686.686 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:47:36,691.691 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:47:36,900.900 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:47:36,926.926 INFO    ] time= 31/08/2026 09:47:36
[2026-08-31 09:47:36,931.931 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:47:36,952.952 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:47:37,081.081 INFO    ] No existing commands found in stream
[2026-08-31 09:47:42,095.095 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:47:42,098.098 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-08-31 09:47:42,944.944 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 09:47:42,946.946 INFO    ] Checking for system updates...
[2026-08-31 09:47:42,982.982 INFO    ] 200
[2026-08-31 09:47:42,985.985 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:47:43,038.038 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:47:43,040.040 INFO    ] No update needed
[2026-08-31 09:47:43,042.042 INFO    ] Checking for camera pi updates...
[2026-08-31 09:47:43,081.081 INFO    ] 200
[2026-08-31 09:47:43,083.083 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:47:43,123.123 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:47:43,219.219 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:47:43,222.222 INFO    ] No camera update needed
[2026-08-31 09:47:43,224.224 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:47:43,226.226 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:47:43,232.232 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:47:43,236.236 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:47:45,278.278 INFO    ] ================================================
[2026-08-31 09:47:45,294.294 INFO    ] Launching Daemon at Mon Aug 31 09:47:45 IST 2026
[2026-08-31 09:47:45,305.305 INFO    ] ================================================
[2026-08-31 09:47:45,872.872 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:47:45
[2026-08-31 09:47:46,455.455 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:47:46,713.713 INFO    ] Initializing speech engine...
[2026-08-31 09:47:46,732.732 INFO    ] 2026-08-31 09:47:46
[2026-08-31 09:47:46,979.979 INFO    ] 2026-08-31 09:47:46
[2026-08-31 09:47:47,014.014 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:47:47,265.265 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:47:47,274.274 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:47:47,491.491 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:47:47,533.533 INFO    ] time= 31/08/2026 09:47:47
[2026-08-31 09:47:47,538.538 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:47:47,553.553 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:47:47,689.689 INFO    ] No existing commands found in stream
[2026-08-31 09:47:52,711.711 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:47:52,713.713 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-08-31 09:47:53,413.413 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 09:47:53,416.416 INFO    ] Checking for system updates...
[2026-08-31 09:47:53,456.456 INFO    ] 200
[2026-08-31 09:47:53,458.458 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:47:53,510.510 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:47:53,513.513 INFO    ] No update needed
[2026-08-31 09:47:53,515.515 INFO    ] Checking for camera pi updates...
[2026-08-31 09:47:53,552.552 INFO    ] 200
[2026-08-31 09:47:53,555.555 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:47:53,600.600 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:47:53,679.679 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:47:53,682.682 INFO    ] No camera update needed
[2026-08-31 09:47:53,684.684 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:47:53,686.686 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:47:53,692.692 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:47:53,697.697 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:47:55,738.738 INFO    ] ================================================
[2026-08-31 09:47:55,753.753 INFO    ] Launching Daemon at Mon Aug 31 09:47:55 IST 2026
[2026-08-31 09:47:55,764.764 INFO    ] ================================================
[2026-08-31 09:47:56,331.331 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:47:56
[2026-08-31 09:47:56,912.912 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:47:57,185.185 INFO    ] Initializing speech engine...
[2026-08-31 09:47:57,194.194 INFO    ] 2026-08-31 09:47:57
[2026-08-31 09:47:57,454.454 INFO    ] 2026-08-31 09:47:57
[2026-08-31 09:47:57,519.519 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:47:57,740.740 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:47:57,749.749 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:47:57,889.889 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:47:57,928.928 INFO    ] time= 31/08/2026 09:47:57
[2026-08-31 09:47:57,982.982 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:47:58,019.019 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:47:58,151.151 INFO    ] No existing commands found in stream
[2026-08-31 09:48:03,175.175 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:48:03,178.178 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-08-31 09:48:04,411.411 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 09:48:04,414.414 INFO    ] Checking for system updates...
[2026-08-31 09:48:04,449.449 INFO    ] 200
[2026-08-31 09:48:04,452.452 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:48:04,504.504 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:48:04,506.506 INFO    ] No update needed
[2026-08-31 09:48:04,509.509 INFO    ] Checking for camera pi updates...
[2026-08-31 09:48:04,542.542 INFO    ] 200
[2026-08-31 09:48:04,544.544 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:48:04,584.584 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:48:04,668.668 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:48:04,670.670 INFO    ] No camera update needed
[2026-08-31 09:48:04,672.672 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:48:04,675.675 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:48:04,680.680 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:48:04,685.685 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:48:06,727.727 INFO    ] ================================================
[2026-08-31 09:48:06,743.743 INFO    ] Launching Daemon at Mon Aug 31 09:48:06 IST 2026
[2026-08-31 09:48:06,754.754 INFO    ] ================================================
[2026-08-31 09:48:07,319.319 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:48:07
[2026-08-31 09:48:07,900.900 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:48:08,157.157 INFO    ] Initializing speech engine...
[2026-08-31 09:48:08,162.162 INFO    ] 2026-08-31 09:48:08
[2026-08-31 09:48:08,456.456 INFO    ] 2026-08-31 09:48:08
[2026-08-31 09:48:08,494.494 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:48:08,692.692 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:48:08,708.708 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:48:08,830.830 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:48:08,837.837 INFO    ] time= 31/08/2026 09:48:08
[2026-08-31 09:48:08,851.851 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:48:08,871.871 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:48:08,963.963 INFO    ] No existing commands found in stream
[2026-08-31 09:48:13,994.994 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:48:13,996.996 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-08-31 09:48:15,503.503 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 09:48:15,505.505 INFO    ] Checking for system updates...
[2026-08-31 09:48:15,544.544 INFO    ] 200
[2026-08-31 09:48:15,547.547 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:48:15,599.599 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:48:15,601.601 INFO    ] No update needed
[2026-08-31 09:48:15,604.604 INFO    ] Checking for camera pi updates...
[2026-08-31 09:48:15,640.640 INFO    ] 200
[2026-08-31 09:48:15,643.643 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:48:15,688.688 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:48:15,765.765 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:48:15,767.767 INFO    ] No camera update needed
[2026-08-31 09:48:15,770.770 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:48:15,772.772 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:48:15,777.777 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:48:15,782.782 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:48:17,824.824 INFO    ] ================================================
[2026-08-31 09:48:17,840.840 INFO    ] Launching Daemon at Mon Aug 31 09:48:17 IST 2026
[2026-08-31 09:48:17,851.851 INFO    ] ================================================
[2026-08-31 09:48:18,415.415 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:48:18
[2026-08-31 09:48:18,998.998 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:48:19,265.265 INFO    ] Initializing speech engine...
[2026-08-31 09:48:19,274.274 INFO    ] 2026-08-31 09:48:19
[2026-08-31 09:48:19,520.520 INFO    ] 2026-08-31 09:48:19
[2026-08-31 09:48:19,555.555 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:48:19,809.809 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:48:19,814.814 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:48:19,953.953 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:48:19,995.995 INFO    ] time= 31/08/2026 09:48:19
[2026-08-31 09:48:20,044.044 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:48:20,090.090 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:48:20,244.244 INFO    ] No existing commands found in stream
[2026-08-31 09:48:25,266.266 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:48:25,269.269 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-08-31 09:48:29,581.581 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 09:48:29,584.584 INFO    ] Checking for system updates...
[2026-08-31 09:48:29,622.622 INFO    ] 200
[2026-08-31 09:48:29,625.625 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:48:29,682.682 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:48:29,685.685 INFO    ] No update needed
[2026-08-31 09:48:29,687.687 INFO    ] Checking for camera pi updates...
[2026-08-31 09:48:29,723.723 INFO    ] 200
[2026-08-31 09:48:29,726.726 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:48:29,770.770 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:48:29,872.872 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:48:29,874.874 INFO    ] No camera update needed
[2026-08-31 09:48:29,877.877 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:48:29,879.879 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:48:29,884.884 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:48:29,889.889 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:48:31,932.932 INFO    ] ================================================
[2026-08-31 09:48:31,948.948 INFO    ] Launching Daemon at Mon Aug 31 09:48:31 IST 2026
[2026-08-31 09:48:31,961.961 INFO    ] ================================================
[2026-08-31 09:48:32,564.564 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:48:32
[2026-08-31 09:48:33,170.170 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:48:33,440.440 INFO    ] Initializing speech engine...
[2026-08-31 09:48:33,445.445 INFO    ] 2026-08-31 09:48:33
[2026-08-31 09:48:33,691.691 INFO    ] 2026-08-31 09:48:33
[2026-08-31 09:48:33,725.725 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:48:33,981.981 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:48:33,985.985 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:48:34,196.196 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:48:34,244.244 INFO    ] time= 31/08/2026 09:48:34
[2026-08-31 09:48:34,250.250 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:48:34,268.268 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:48:34,397.397 INFO    ] No existing commands found in stream
[2026-08-31 09:48:39,410.410 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:48:39,413.413 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-08-31 09:48:43,486.486 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 09:48:43,489.489 INFO    ] Checking for system updates...
[2026-08-31 09:48:43,525.525 INFO    ] 200
[2026-08-31 09:48:43,527.527 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:48:43,580.580 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:48:43,582.582 INFO    ] No update needed
[2026-08-31 09:48:43,584.584 INFO    ] Checking for camera pi updates...
[2026-08-31 09:48:43,618.618 INFO    ] 200
[2026-08-31 09:48:43,620.620 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:48:43,660.660 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:48:43,759.759 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:48:43,761.761 INFO    ] No camera update needed
[2026-08-31 09:48:43,764.764 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:48:43,766.766 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:48:43,772.772 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:48:43,776.776 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:48:45,818.818 INFO    ] ================================================
[2026-08-31 09:48:45,834.834 INFO    ] Launching Daemon at Mon Aug 31 09:48:45 IST 2026
[2026-08-31 09:48:45,845.845 INFO    ] ================================================
[2026-08-31 09:48:46,412.412 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:48:46
[2026-08-31 09:48:46,995.995 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:48:47,263.263 INFO    ] Initializing speech engine...
[2026-08-31 09:48:47,272.272 INFO    ] 2026-08-31 09:48:47
[2026-08-31 09:48:47,519.519 INFO    ] 2026-08-31 09:48:47
[2026-08-31 09:48:47,555.555 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:48:47,726.726 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:48:47,738.738 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:48:47,882.882 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:48:47,886.886 INFO    ] time= 31/08/2026 09:48:47
[2026-08-31 09:48:47,892.892 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:48:47,943.943 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:48:48,070.070 INFO    ] No existing commands found in stream
[2026-08-31 09:48:53,093.093 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:48:53,096.096 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-08-31 09:48:56,743.743 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 09:48:56,746.746 INFO    ] Checking for system updates...
[2026-08-31 09:48:56,785.785 INFO    ] 200
[2026-08-31 09:48:56,788.788 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:48:56,847.847 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:48:56,849.849 INFO    ] No update needed
[2026-08-31 09:48:56,851.851 INFO    ] Checking for camera pi updates...
[2026-08-31 09:48:56,885.885 INFO    ] 200
[2026-08-31 09:48:56,888.888 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:48:56,933.933 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:48:57,115.115 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:48:57,118.118 INFO    ] No camera update needed
[2026-08-31 09:48:57,120.120 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:48:57,123.123 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:48:57,128.128 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:48:57,133.133 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:48:59,173.173 INFO    ] ================================================
[2026-08-31 09:48:59,189.189 INFO    ] Launching Daemon at Mon Aug 31 09:48:59 IST 2026
[2026-08-31 09:48:59,200.200 INFO    ] ================================================
[2026-08-31 09:48:59,854.854 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:48:59
[2026-08-31 09:49:00,528.528 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:49:00,832.832 INFO    ] Initializing speech engine...
[2026-08-31 09:49:00,845.845 INFO    ] 2026-08-31 09:49:00
[2026-08-31 09:49:01,159.159 INFO    ] 2026-08-31 09:49:01
[2026-08-31 09:49:01,242.242 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:49:01,470.470 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:49:01,492.492 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:49:01,742.742 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:49:01,751.751 INFO    ] time= 31/08/2026 09:49:01
[2026-08-31 09:49:01,754.754 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:49:01,757.757 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:49:01,850.850 INFO    ] No existing commands found in stream
[2026-08-31 09:49:06,860.860 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:49:06,863.863 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-08-31 09:49:09,225.225 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 09:49:09,228.228 INFO    ] Checking for system updates...
[2026-08-31 09:49:09,269.269 INFO    ] 200
[2026-08-31 09:49:09,272.272 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:49:09,333.333 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:49:09,335.335 INFO    ] No update needed
[2026-08-31 09:49:09,338.338 INFO    ] Checking for camera pi updates...
[2026-08-31 09:49:09,376.376 INFO    ] 200
[2026-08-31 09:49:09,379.379 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:49:09,420.420 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:49:09,502.502 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:49:09,505.505 INFO    ] No camera update needed
[2026-08-31 09:49:09,507.507 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:49:09,510.510 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:49:09,515.515 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:49:09,520.520 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:49:11,559.559 INFO    ] ================================================
[2026-08-31 09:49:11,574.574 INFO    ] Launching Daemon at Mon Aug 31 09:49:11 IST 2026
[2026-08-31 09:49:11,585.585 INFO    ] ================================================
[2026-08-31 09:49:12,264.264 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:49:12
[2026-08-31 09:49:12,953.953 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:49:13,263.263 INFO    ] Initializing speech engine...
[2026-08-31 09:49:13,271.271 INFO    ] 2026-08-31 09:49:13
[2026-08-31 09:49:13,595.595 INFO    ] 2026-08-31 09:49:13
[2026-08-31 09:49:13,678.678 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:49:13,892.892 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:49:13,899.899 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:49:14,093.093 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:49:14,112.112 INFO    ] time= 31/08/2026 09:49:14
[2026-08-31 09:49:14,138.138 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:49:14,152.152 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:49:14,257.257 INFO    ] No existing commands found in stream
[2026-08-31 09:49:19,298.298 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:49:19,301.301 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-08-31 09:49:21,868.868 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 09:49:21,871.871 INFO    ] Checking for system updates...
[2026-08-31 09:49:21,908.908 INFO    ] 200
[2026-08-31 09:49:21,911.911 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:49:21,963.963 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:49:21,966.966 INFO    ] No update needed
[2026-08-31 09:49:21,968.968 INFO    ] Checking for camera pi updates...
[2026-08-31 09:49:22,007.007 INFO    ] 200
[2026-08-31 09:49:22,009.009 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:49:22,056.056 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:49:22,155.155 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:49:22,158.158 INFO    ] No camera update needed
[2026-08-31 09:49:22,160.160 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:49:22,163.163 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:49:22,168.168 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:49:22,173.173 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:49:24,213.213 INFO    ] ================================================
[2026-08-31 09:49:24,228.228 INFO    ] Launching Daemon at Mon Aug 31 09:49:24 IST 2026
[2026-08-31 09:49:24,239.239 INFO    ] ================================================
[2026-08-31 09:49:24,916.916 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:49:24
[2026-08-31 09:49:25,613.613 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:49:25,922.922 INFO    ] Initializing speech engine...
[2026-08-31 09:49:25,936.936 INFO    ] 2026-08-31 09:49:25
[2026-08-31 09:49:26,250.250 INFO    ] 2026-08-31 09:49:26
[2026-08-31 09:49:26,339.339 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:49:26,589.589 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:49:26,622.622 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:49:26,803.803 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:49:26,812.812 INFO    ] time= 31/08/2026 09:49:26
[2026-08-31 09:49:26,844.844 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:49:26,887.887 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:49:27,018.018 INFO    ] No existing commands found in stream
[2026-08-31 09:49:32,053.053 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:49:32,057.057 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-08-31 09:49:32,670.670 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 09:49:32,674.674 INFO    ] Checking for system updates...
[2026-08-31 09:49:32,722.722 INFO    ] 200
[2026-08-31 09:49:32,726.726 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:49:32,791.791 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:49:32,794.794 INFO    ] No update needed
[2026-08-31 09:49:32,798.798 INFO    ] Checking for camera pi updates...
[2026-08-31 09:49:32,836.836 INFO    ] 200
[2026-08-31 09:49:32,839.839 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:49:32,880.880 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:49:32,961.961 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:49:32,963.963 INFO    ] No camera update needed
[2026-08-31 09:49:32,965.965 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:49:32,968.968 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:49:32,973.973 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:49:32,978.978 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:49:35,019.019 INFO    ] ================================================
[2026-08-31 09:49:35,034.034 INFO    ] Launching Daemon at Mon Aug 31 09:49:35 IST 2026
[2026-08-31 09:49:35,044.044 INFO    ] ================================================
[2026-08-31 09:49:35,611.611 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:49:35
[2026-08-31 09:49:36,197.197 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:49:36,452.452 INFO    ] Initializing speech engine...
[2026-08-31 09:49:36,458.458 INFO    ] 2026-08-31 09:49:36
[2026-08-31 09:49:36,760.760 INFO    ] 2026-08-31 09:49:36
[2026-08-31 09:49:36,794.794 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:49:37,000.000 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:49:37,059.059 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:49:37,244.244 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:49:37,289.289 INFO    ] time= 31/08/2026 09:49:37
[2026-08-31 09:49:37,334.334 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:49:37,340.340 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:49:37,455.455 INFO    ] No existing commands found in stream
[2026-08-31 09:49:42,486.486 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:49:42,489.489 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-08-31 09:49:47,022.022 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 09:49:47,025.025 INFO    ] Checking for system updates...
[2026-08-31 09:49:47,065.065 INFO    ] 200
[2026-08-31 09:49:47,068.068 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:49:47,130.130 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:49:47,132.132 INFO    ] No update needed
[2026-08-31 09:49:47,134.134 INFO    ] Checking for camera pi updates...
[2026-08-31 09:49:47,173.173 INFO    ] 200
[2026-08-31 09:49:47,176.176 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:49:47,217.217 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:49:47,296.296 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:49:47,299.299 INFO    ] No camera update needed
[2026-08-31 09:49:47,301.301 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:49:47,303.303 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:49:47,309.309 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:49:47,313.313 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:49:49,353.353 INFO    ] ================================================
[2026-08-31 09:49:49,368.368 INFO    ] Launching Daemon at Mon Aug 31 09:49:49 IST 2026
[2026-08-31 09:49:49,378.378 INFO    ] ================================================
[2026-08-31 09:49:50,044.044 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:49:50
[2026-08-31 09:49:50,678.678 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:49:50,934.934 INFO    ] Initializing speech engine...
[2026-08-31 09:49:50,941.941 INFO    ] 2026-08-31 09:49:50
[2026-08-31 09:49:51,235.235 INFO    ] 2026-08-31 09:49:51
[2026-08-31 09:49:51,270.270 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:49:51,484.484 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:49:51,501.501 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:49:51,720.720 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:49:51,736.736 INFO    ] time= 31/08/2026 09:49:51
[2026-08-31 09:49:51,790.790 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:49:51,850.850 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:49:51,941.941 INFO    ] No existing commands found in stream
[2026-08-31 09:49:56,953.953 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:49:56,956.956 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-08-31 09:49:57,819.819 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 09:49:57,822.822 INFO    ] Checking for system updates...
[2026-08-31 09:49:57,863.863 INFO    ] 200
[2026-08-31 09:49:57,866.866 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:49:57,930.930 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:49:57,932.932 INFO    ] No update needed
[2026-08-31 09:49:57,937.937 INFO    ] Checking for camera pi updates...
[2026-08-31 09:49:57,975.975 INFO    ] 200
[2026-08-31 09:49:57,978.978 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:49:58,018.018 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:49:58,095.095 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:49:58,098.098 INFO    ] No camera update needed
[2026-08-31 09:49:58,101.101 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:49:58,103.103 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:49:58,108.108 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:49:58,114.114 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:50:00,154.154 INFO    ] ================================================
[2026-08-31 09:50:00,169.169 INFO    ] Launching Daemon at Mon Aug 31 09:50:00 IST 2026
[2026-08-31 09:50:00,180.180 INFO    ] ================================================
[2026-08-31 09:50:00,758.758 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:50:00
[2026-08-31 09:50:01,353.353 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:50:02,154.154 INFO    ] Initializing speech engine...
[2026-08-31 09:50:02,173.173 INFO    ] 2026-08-31 09:50:02
[2026-08-31 09:50:02,673.673 INFO    ] 2026-08-31 09:50:02
[2026-08-31 09:50:02,723.723 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:50:02,927.927 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:50:02,930.930 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:50:03,096.096 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:50:03,100.100 INFO    ] time= 31/08/2026 09:50:03
[2026-08-31 09:50:03,103.103 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:50:03,105.105 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:50:03,210.210 INFO    ] No existing commands found in stream
[2026-08-31 09:50:08,220.220 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:50:08,223.223 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-08-31 09:50:11,458.458 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 09:50:11,460.460 INFO    ] Checking for system updates...
[2026-08-31 09:50:11,501.501 INFO    ] 200
[2026-08-31 09:50:11,503.503 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:50:11,563.563 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:50:11,565.565 INFO    ] No update needed
[2026-08-31 09:50:11,568.568 INFO    ] Checking for camera pi updates...
[2026-08-31 09:50:11,605.605 INFO    ] 200
[2026-08-31 09:50:11,608.608 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:50:11,649.649 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:50:11,752.752 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:50:11,754.754 INFO    ] No camera update needed
[2026-08-31 09:50:11,757.757 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:50:11,759.759 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:50:11,764.764 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:50:11,769.769 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:50:13,808.808 INFO    ] ================================================
[2026-08-31 09:50:13,823.823 INFO    ] Launching Daemon at Mon Aug 31 09:50:13 IST 2026
[2026-08-31 09:50:13,834.834 INFO    ] ================================================
[2026-08-31 09:50:14,400.400 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:50:14
[2026-08-31 09:50:14,985.985 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:50:15,256.256 INFO    ] Initializing speech engine...
[2026-08-31 09:50:15,266.266 INFO    ] 2026-08-31 09:50:15
[2026-08-31 09:50:15,517.517 INFO    ] 2026-08-31 09:50:15
[2026-08-31 09:50:15,553.553 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:50:15,827.827 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:50:15,837.837 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:50:16,032.032 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:50:16,093.093 INFO    ] time= 31/08/2026 09:50:16
[2026-08-31 09:50:16,145.145 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:50:16,153.153 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:50:16,286.286 INFO    ] No existing commands found in stream
[2026-08-31 09:50:21,299.299 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:50:21,302.302 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-08-31 09:50:23,454.454 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 09:50:23,456.456 INFO    ] Checking for system updates...
[2026-08-31 09:50:23,492.492 INFO    ] 200
[2026-08-31 09:50:23,494.494 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:50:23,546.546 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:50:23,549.549 INFO    ] No update needed
[2026-08-31 09:50:23,551.551 INFO    ] Checking for camera pi updates...
[2026-08-31 09:50:23,585.585 INFO    ] 200
[2026-08-31 09:50:23,588.588 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:50:23,635.635 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:50:23,711.711 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:50:23,713.713 INFO    ] No camera update needed
[2026-08-31 09:50:23,716.716 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:50:23,718.718 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:50:23,723.723 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:50:23,728.728 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:50:25,770.770 INFO    ] ================================================
[2026-08-31 09:50:25,785.785 INFO    ] Launching Daemon at Mon Aug 31 09:50:25 IST 2026
[2026-08-31 09:50:25,796.796 INFO    ] ================================================
[2026-08-31 09:50:26,468.468 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:50:26
[2026-08-31 09:50:27,163.163 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:50:27,471.471 INFO    ] Initializing speech engine...
[2026-08-31 09:50:27,479.479 INFO    ] 2026-08-31 09:50:27
[2026-08-31 09:50:27,769.769 INFO    ] 2026-08-31 09:50:27
[2026-08-31 09:50:27,815.815 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:50:28,162.162 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:50:28,205.205 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:50:28,418.418 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:50:28,460.460 INFO    ] time= 31/08/2026 09:50:28
[2026-08-31 09:50:28,514.514 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:50:28,557.557 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:50:28,694.694 INFO    ] No existing commands found in stream
[2026-08-31 09:50:33,716.716 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:50:33,720.720 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-08-31 09:50:38,218.218 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 09:50:38,221.221 INFO    ] Checking for system updates...
[2026-08-31 09:50:38,263.263 INFO    ] 200
[2026-08-31 09:50:38,265.265 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:50:38,326.326 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:50:38,330.330 INFO    ] No update needed
[2026-08-31 09:50:38,333.333 INFO    ] Checking for camera pi updates...
[2026-08-31 09:50:38,368.368 INFO    ] 200
[2026-08-31 09:50:38,371.371 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:50:38,418.418 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:50:38,508.508 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:50:38,510.510 INFO    ] No camera update needed
[2026-08-31 09:50:38,513.513 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:50:38,515.515 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:50:38,521.521 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:50:38,526.526 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:50:40,565.565 INFO    ] ================================================
[2026-08-31 09:50:40,580.580 INFO    ] Launching Daemon at Mon Aug 31 09:50:40 IST 2026
[2026-08-31 09:50:40,591.591 INFO    ] ================================================
[2026-08-31 09:50:41,172.172 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:50:41
[2026-08-31 09:50:41,770.770 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:50:42,047.047 INFO    ] Initializing speech engine...
[2026-08-31 09:50:42,053.053 INFO    ] 2026-08-31 09:50:42
[2026-08-31 09:50:42,316.316 INFO    ] 2026-08-31 09:50:42
[2026-08-31 09:50:42,370.370 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:50:42,620.620 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:50:42,624.624 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:50:42,843.843 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:50:42,861.861 INFO    ] time= 31/08/2026 09:50:42
[2026-08-31 09:50:42,879.879 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:50:42,907.907 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:50:43,064.064 INFO    ] No existing commands found in stream
[2026-08-31 09:50:48,089.089 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:50:48,092.092 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-08-31 09:50:49,336.336 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 09:50:49,339.339 INFO    ] Checking for system updates...
[2026-08-31 09:50:49,374.374 INFO    ] 200
[2026-08-31 09:50:49,376.376 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:50:49,436.436 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:50:49,439.439 INFO    ] No update needed
[2026-08-31 09:50:49,441.441 INFO    ] Checking for camera pi updates...
[2026-08-31 09:50:49,479.479 INFO    ] 200
[2026-08-31 09:50:49,481.481 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:50:49,528.528 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:50:49,635.635 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:50:49,637.637 INFO    ] No camera update needed
[2026-08-31 09:50:49,640.640 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:50:49,642.642 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:50:49,647.647 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:50:49,652.652 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:50:51,692.692 INFO    ] ================================================
[2026-08-31 09:50:51,707.707 INFO    ] Launching Daemon at Mon Aug 31 09:50:51 IST 2026
[2026-08-31 09:50:51,718.718 INFO    ] ================================================
[2026-08-31 09:50:52,303.303 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:50:52
[2026-08-31 09:50:52,884.884 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:50:53,156.156 INFO    ] Initializing speech engine...
[2026-08-31 09:50:53,162.162 INFO    ] 2026-08-31 09:50:53
[2026-08-31 09:50:53,421.421 INFO    ] 2026-08-31 09:50:53
[2026-08-31 09:50:53,450.450 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:50:53,640.640 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:50:53,696.696 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:50:53,893.893 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:50:53,948.948 INFO    ] time= 31/08/2026 09:50:53
[2026-08-31 09:50:53,965.965 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:50:53,971.971 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:50:54,117.117 INFO    ] No existing commands found in stream
[2026-08-31 09:50:59,139.139 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:50:59,141.141 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-08-31 09:51:02,609.609 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 09:51:02,612.612 INFO    ] Checking for system updates...
[2026-08-31 09:51:02,659.659 INFO    ] 200
[2026-08-31 09:51:02,662.662 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:51:02,741.741 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:51:02,744.744 INFO    ] No update needed
[2026-08-31 09:51:02,748.748 INFO    ] Checking for camera pi updates...
[2026-08-31 09:51:02,794.794 INFO    ] 200
[2026-08-31 09:51:02,797.797 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:51:02,852.852 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:51:02,909.909 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:51:02,912.912 INFO    ] No camera update needed
[2026-08-31 09:51:02,915.915 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:51:02,918.918 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:51:02,925.925 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:51:02,932.932 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:51:04,973.973 INFO    ] ================================================
[2026-08-31 09:51:04,988.988 INFO    ] Launching Daemon at Mon Aug 31 09:51:04 IST 2026
[2026-08-31 09:51:05,000.000 INFO    ] ================================================
[2026-08-31 09:51:05,573.573 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:51:05
[2026-08-31 09:51:06,163.163 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:51:06,418.418 INFO    ] Initializing speech engine...
[2026-08-31 09:51:06,425.425 INFO    ] 2026-08-31 09:51:06
[2026-08-31 09:51:06,719.719 INFO    ] 2026-08-31 09:51:06
[2026-08-31 09:51:06,756.756 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:51:06,970.970 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:51:06,984.984 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:51:07,147.147 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:51:07,153.153 INFO    ] time= 31/08/2026 09:51:07
[2026-08-31 09:51:07,159.159 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:51:07,164.164 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:51:07,301.301 INFO    ] No existing commands found in stream
[2026-08-31 09:51:12,331.331 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:51:12,334.334 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-08-31 09:51:13,861.861 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 09:51:13,863.863 INFO    ] Checking for system updates...
[2026-08-31 09:51:13,899.899 INFO    ] 200
[2026-08-31 09:51:13,902.902 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:51:13,954.954 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:51:13,957.957 INFO    ] No update needed
[2026-08-31 09:51:13,959.959 INFO    ] Checking for camera pi updates...
[2026-08-31 09:51:13,996.996 INFO    ] 200
[2026-08-31 09:51:13,998.998 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:51:14,039.039 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:51:14,093.093 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:51:14,095.095 INFO    ] No camera update needed
[2026-08-31 09:51:14,097.097 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:51:14,100.100 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:51:14,105.105 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:51:14,110.110 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:51:16,150.150 INFO    ] ================================================
[2026-08-31 09:51:16,165.165 INFO    ] Launching Daemon at Mon Aug 31 09:51:16 IST 2026
[2026-08-31 09:51:16,176.176 INFO    ] ================================================
[2026-08-31 09:51:16,742.742 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:51:16
[2026-08-31 09:51:17,326.326 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:51:17,579.579 INFO    ] Initializing speech engine...
[2026-08-31 09:51:17,588.588 INFO    ] 2026-08-31 09:51:17
[2026-08-31 09:51:17,878.878 INFO    ] 2026-08-31 09:51:17
[2026-08-31 09:51:17,916.916 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:51:18,135.135 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:51:18,143.143 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:51:18,360.360 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:51:18,367.367 INFO    ] time= 31/08/2026 09:51:18
[2026-08-31 09:51:18,436.436 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:51:18,486.486 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:51:18,647.647 INFO    ] No existing commands found in stream
[2026-08-31 09:51:23,673.673 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:51:23,675.675 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-08-31 09:51:26,503.503 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 09:51:26,505.505 INFO    ] Checking for system updates...
[2026-08-31 09:51:26,544.544 INFO    ] 200
[2026-08-31 09:51:26,547.547 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:51:26,604.604 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:51:26,607.607 INFO    ] No update needed
[2026-08-31 09:51:26,609.609 INFO    ] Checking for camera pi updates...
[2026-08-31 09:51:26,645.645 INFO    ] 200
[2026-08-31 09:51:26,648.648 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:51:26,689.689 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:51:26,758.758 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:51:26,760.760 INFO    ] No camera update needed
[2026-08-31 09:51:26,763.763 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:51:26,765.765 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:51:26,770.770 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:51:26,775.775 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:51:28,818.818 INFO    ] ================================================
[2026-08-31 09:51:28,833.833 INFO    ] Launching Daemon at Mon Aug 31 09:51:28 IST 2026
[2026-08-31 09:51:28,843.843 INFO    ] ================================================
[2026-08-31 09:51:29,483.483 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:51:29
[2026-08-31 09:51:30,142.142 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:51:30,435.435 INFO    ] Initializing speech engine...
[2026-08-31 09:51:30,447.447 INFO    ] 2026-08-31 09:51:30
[2026-08-31 09:51:30,720.720 INFO    ] 2026-08-31 09:51:30
[2026-08-31 09:51:30,775.775 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:51:31,072.072 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:51:31,081.081 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:51:31,258.258 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:51:31,281.281 INFO    ] time= 31/08/2026 09:51:31
[2026-08-31 09:51:31,299.299 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:51:31,308.308 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:51:31,438.438 INFO    ] No existing commands found in stream
[2026-08-31 09:51:36,466.466 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:51:36,470.470 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-08-31 09:51:40,737.737 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 09:51:40,740.740 INFO    ] Checking for system updates...
[2026-08-31 09:51:40,778.778 INFO    ] 200
[2026-08-31 09:51:40,781.781 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:51:40,834.834 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:51:40,837.837 INFO    ] No update needed
[2026-08-31 09:51:40,840.840 INFO    ] Checking for camera pi updates...
[2026-08-31 09:51:40,884.884 INFO    ] 200
[2026-08-31 09:51:40,887.887 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:51:40,929.929 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:51:41,018.018 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:51:41,021.021 INFO    ] No camera update needed
[2026-08-31 09:51:41,023.023 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:51:41,025.025 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:51:41,030.030 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:51:41,035.035 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:51:43,076.076 INFO    ] ================================================
[2026-08-31 09:51:43,091.091 INFO    ] Launching Daemon at Mon Aug 31 09:51:43 IST 2026
[2026-08-31 09:51:43,102.102 INFO    ] ================================================
[2026-08-31 09:51:43,690.690 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:51:43
[2026-08-31 09:51:44,279.279 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:51:44,536.536 INFO    ] Initializing speech engine...
[2026-08-31 09:51:44,544.544 INFO    ] 2026-08-31 09:51:44
[2026-08-31 09:51:44,840.840 INFO    ] 2026-08-31 09:51:44
[2026-08-31 09:51:44,877.877 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:51:45,086.086 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:51:45,104.104 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:51:45,332.332 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:51:45,387.387 INFO    ] time= 31/08/2026 09:51:45
[2026-08-31 09:51:45,431.431 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:51:45,481.481 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:51:45,615.615 INFO    ] No existing commands found in stream
[2026-08-31 09:51:50,632.632 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:51:50,635.635 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-08-31 09:51:54,165.165 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 09:51:54,168.168 INFO    ] Checking for system updates...
[2026-08-31 09:51:54,225.225 INFO    ] 200
[2026-08-31 09:51:54,228.228 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-08-31 09:51:54,231.231 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-08-31 09:51:54,233.233 INFO    ] Checking for camera pi updates...
[2026-08-31 09:51:54,283.283 INFO    ] 200
[2026-08-31 09:51:54,286.286 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-08-31 09:51:54,289.289 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-08-31 09:51:54,291.291 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:51:54,294.294 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:51:54,300.300 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:51:54,306.306 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:51:56,348.348 INFO    ] ================================================
[2026-08-31 09:51:56,363.363 INFO    ] Launching Daemon at Mon Aug 31 09:51:56 IST 2026
[2026-08-31 09:51:56,373.373 INFO    ] ================================================
[2026-08-31 09:51:56,940.940 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:51:56
[2026-08-31 09:51:57,523.523 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:51:57,784.784 INFO    ] Initializing speech engine...
[2026-08-31 09:51:57,800.800 INFO    ] 2026-08-31 09:51:57
[2026-08-31 09:51:58,089.089 INFO    ] 2026-08-31 09:51:58
[2026-08-31 09:51:58,124.124 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:51:58,341.341 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:51:58,359.359 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:51:58,501.501 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:51:58,517.517 INFO    ] time= 31/08/2026 09:51:58
[2026-08-31 09:51:58,522.522 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:51:58,529.529 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:51:58,616.616 INFO    ] No existing commands found in stream
[2026-08-31 09:52:03,649.649 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:52:03,652.652 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-08-31 09:52:05,645.645 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 09:52:05,648.648 INFO    ] Checking for system updates...
[2026-08-31 09:52:05,683.683 INFO    ] 200
[2026-08-31 09:52:05,686.686 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:52:05,738.738 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:52:05,740.740 INFO    ] No update needed
[2026-08-31 09:52:05,742.742 INFO    ] Checking for camera pi updates...
[2026-08-31 09:52:05,775.775 INFO    ] 200
[2026-08-31 09:52:05,778.778 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:52:05,818.818 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:52:05,910.910 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:52:05,912.912 INFO    ] No camera update needed
[2026-08-31 09:52:05,914.914 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:52:05,917.917 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:52:05,922.922 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:52:05,927.927 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:52:07,969.969 INFO    ] ================================================
[2026-08-31 09:52:07,984.984 INFO    ] Launching Daemon at Mon Aug 31 09:52:07 IST 2026
[2026-08-31 09:52:07,994.994 INFO    ] ================================================
[2026-08-31 09:52:08,633.633 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:52:08
[2026-08-31 09:52:09,291.291 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:52:09,590.590 INFO    ] Initializing speech engine...
[2026-08-31 09:52:09,604.604 INFO    ] 2026-08-31 09:52:09
[2026-08-31 09:52:09,889.889 INFO    ] 2026-08-31 09:52:09
[2026-08-31 09:52:09,927.927 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:52:10,165.165 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:52:10,172.172 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:52:10,410.410 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:52:10,435.435 INFO    ] time= 31/08/2026 09:52:10
[2026-08-31 09:52:10,453.453 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:52:10,483.483 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:52:10,604.604 INFO    ] No existing commands found in stream
[2026-08-31 09:52:15,629.629 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:52:15,633.633 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-08-31 09:52:18,705.705 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 09:52:18,708.708 INFO    ] Checking for system updates...
[2026-08-31 09:52:18,744.744 INFO    ] 200
[2026-08-31 09:52:18,747.747 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:52:18,800.800 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:52:18,802.802 INFO    ] No update needed
[2026-08-31 09:52:18,805.805 INFO    ] Checking for camera pi updates...
[2026-08-31 09:52:18,842.842 INFO    ] 200
[2026-08-31 09:52:18,845.845 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:52:18,887.887 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:52:18,988.988 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:52:18,990.990 INFO    ] No camera update needed
[2026-08-31 09:52:18,993.993 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:52:18,996.996 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:52:19,002.002 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:52:19,008.008 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:52:21,048.048 INFO    ] ================================================
[2026-08-31 09:52:21,063.063 INFO    ] Launching Daemon at Mon Aug 31 09:52:21 IST 2026
[2026-08-31 09:52:21,073.073 INFO    ] ================================================
[2026-08-31 09:52:21,654.654 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:52:21
[2026-08-31 09:52:22,253.253 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:52:22,525.525 INFO    ] Initializing speech engine...
[2026-08-31 09:52:22,541.541 INFO    ] 2026-08-31 09:52:22
[2026-08-31 09:52:22,813.813 INFO    ] 2026-08-31 09:52:22
[2026-08-31 09:52:22,851.851 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:52:23,079.079 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:52:23,139.139 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:52:23,373.373 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:52:23,427.427 INFO    ] time= 31/08/2026 09:52:23
[2026-08-31 09:52:23,449.449 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:52:23,465.465 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:52:23,557.557 INFO    ] No existing commands found in stream
[2026-08-31 09:52:28,583.583 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:52:28,585.585 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-08-31 09:52:30,311.311 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 09:52:30,314.314 INFO    ] Checking for system updates...
[2026-08-31 09:52:30,349.349 INFO    ] 200
[2026-08-31 09:52:30,352.352 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:52:30,403.403 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:52:30,406.406 INFO    ] No update needed
[2026-08-31 09:52:30,408.408 INFO    ] Checking for camera pi updates...
[2026-08-31 09:52:30,445.445 INFO    ] 200
[2026-08-31 09:52:30,448.448 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:52:30,496.496 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:52:30,587.587 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:52:30,590.590 INFO    ] No camera update needed
[2026-08-31 09:52:30,592.592 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:52:30,594.594 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:52:30,599.599 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:52:30,604.604 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:52:32,645.645 INFO    ] ================================================
[2026-08-31 09:52:32,660.660 INFO    ] Launching Daemon at Mon Aug 31 09:52:32 IST 2026
[2026-08-31 09:52:32,671.671 INFO    ] ================================================
[2026-08-31 09:52:33,264.264 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:52:33
[2026-08-31 09:52:33,892.892 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:52:34,189.189 INFO    ] Initializing speech engine...
[2026-08-31 09:52:34,203.203 INFO    ] 2026-08-31 09:52:34
[2026-08-31 09:52:34,522.522 INFO    ] 2026-08-31 09:52:34
[2026-08-31 09:52:34,607.607 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:52:34,764.764 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:52:34,770.770 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:52:35,015.015 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:52:35,035.035 INFO    ] time= 31/08/2026 09:52:35
[2026-08-31 09:52:35,054.054 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:52:35,092.092 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:52:35,196.196 INFO    ] No existing commands found in stream
[2026-08-31 09:52:40,209.209 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:52:40,212.212 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-08-31 09:52:43,410.410 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 09:52:43,413.413 INFO    ] Checking for system updates...
[2026-08-31 09:52:43,449.449 INFO    ] 200
[2026-08-31 09:52:43,452.452 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:52:43,504.504 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:52:43,507.507 INFO    ] No update needed
[2026-08-31 09:52:43,510.510 INFO    ] Checking for camera pi updates...
[2026-08-31 09:52:43,544.544 INFO    ] 200
[2026-08-31 09:52:43,547.547 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:52:43,592.592 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:52:43,696.696 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:52:43,699.699 INFO    ] No camera update needed
[2026-08-31 09:52:43,701.701 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:52:43,704.704 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:52:43,710.710 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:52:43,717.717 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:52:45,758.758 INFO    ] ================================================
[2026-08-31 09:52:45,773.773 INFO    ] Launching Daemon at Mon Aug 31 09:52:45 IST 2026
[2026-08-31 09:52:45,784.784 INFO    ] ================================================
[2026-08-31 09:52:46,354.354 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:52:46
[2026-08-31 09:52:46,942.942 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:52:47,213.213 INFO    ] Initializing speech engine...
[2026-08-31 09:52:47,228.228 INFO    ] 2026-08-31 09:52:47
[2026-08-31 09:52:47,499.499 INFO    ] 2026-08-31 09:52:47
[2026-08-31 09:52:47,537.537 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:52:47,761.761 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:52:47,820.820 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:52:47,981.981 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:52:48,023.023 INFO    ] time= 31/08/2026 09:52:47
[2026-08-31 09:52:48,072.072 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:52:48,130.130 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:52:48,255.255 INFO    ] No existing commands found in stream
[2026-08-31 09:52:53,273.273 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:52:53,276.276 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-08-31 09:52:57,613.613 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 09:52:57,616.616 INFO    ] Checking for system updates...
[2026-08-31 09:52:57,652.652 INFO    ] 200
[2026-08-31 09:52:57,654.654 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:52:57,705.705 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:52:57,708.708 INFO    ] No update needed
[2026-08-31 09:52:57,710.710 INFO    ] Checking for camera pi updates...
[2026-08-31 09:52:57,743.743 INFO    ] 200
[2026-08-31 09:52:57,748.748 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:52:57,790.790 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:52:57,881.881 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:52:57,883.883 INFO    ] No camera update needed
[2026-08-31 09:52:57,886.886 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:52:57,889.889 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:52:57,895.895 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:52:57,900.900 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:52:59,940.940 INFO    ] ================================================
[2026-08-31 09:52:59,956.956 INFO    ] Launching Daemon at Mon Aug 31 09:52:59 IST 2026
[2026-08-31 09:52:59,966.966 INFO    ] ================================================
[2026-08-31 09:53:00,531.531 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:53:00
[2026-08-31 09:53:01,114.114 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:53:01,368.368 INFO    ] Initializing speech engine...
[2026-08-31 09:53:01,377.377 INFO    ] 2026-08-31 09:53:01
[2026-08-31 09:53:01,667.667 INFO    ] 2026-08-31 09:53:01
[2026-08-31 09:53:01,704.704 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:53:01,926.926 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:53:01,980.980 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:53:02,158.158 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:53:02,216.216 INFO    ] time= 31/08/2026 09:53:02
[2026-08-31 09:53:02,232.232 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:53:02,243.243 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:53:02,366.366 INFO    ] No existing commands found in stream
[2026-08-31 09:53:07,376.376 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:53:07,379.379 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-08-31 09:53:08,503.503 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 09:53:08,505.505 INFO    ] Checking for system updates...
[2026-08-31 09:53:08,542.542 INFO    ] 200
[2026-08-31 09:53:08,545.545 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:53:08,606.606 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:53:08,609.609 INFO    ] No update needed
[2026-08-31 09:53:08,611.611 INFO    ] Checking for camera pi updates...
[2026-08-31 09:53:08,646.646 INFO    ] 200
[2026-08-31 09:53:08,649.649 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:53:08,691.691 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:53:08,880.880 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:53:08,883.883 INFO    ] No camera update needed
[2026-08-31 09:53:08,885.885 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:53:08,888.888 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:53:08,894.894 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:53:08,900.900 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:53:10,942.942 INFO    ] ================================================
[2026-08-31 09:53:10,958.958 INFO    ] Launching Daemon at Mon Aug 31 09:53:10 IST 2026
[2026-08-31 09:53:10,969.969 INFO    ] ================================================
[2026-08-31 09:53:11,536.536 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:53:11
[2026-08-31 09:53:12,119.119 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:53:12,365.365 INFO    ] Initializing speech engine...
[2026-08-31 09:53:12,373.373 INFO    ] 2026-08-31 09:53:12
[2026-08-31 09:53:12,647.647 INFO    ] 2026-08-31 09:53:12
[2026-08-31 09:53:12,681.681 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:53:12,944.944 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:53:12,951.951 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:53:13,164.164 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:53:13,212.212 INFO    ] time= 31/08/2026 09:53:13
[2026-08-31 09:53:13,219.219 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:53:13,236.236 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:53:13,752.752 INFO    ] No existing commands found in stream
[2026-08-31 09:53:18,778.778 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:53:18,780.780 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-08-31 09:53:22,295.295 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 09:53:22,298.298 INFO    ] Checking for system updates...
[2026-08-31 09:53:22,334.334 INFO    ] 200
[2026-08-31 09:53:22,337.337 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:53:22,390.390 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:53:22,393.393 INFO    ] No update needed
[2026-08-31 09:53:22,395.395 INFO    ] Checking for camera pi updates...
[2026-08-31 09:53:22,430.430 INFO    ] 200
[2026-08-31 09:53:22,432.432 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:53:22,479.479 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:53:22,563.563 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:53:22,565.565 INFO    ] No camera update needed
[2026-08-31 09:53:22,568.568 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:53:22,571.571 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:53:22,577.577 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:53:22,583.583 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:53:24,626.626 INFO    ] ================================================
[2026-08-31 09:53:24,642.642 INFO    ] Launching Daemon at Mon Aug 31 09:53:24 IST 2026
[2026-08-31 09:53:24,653.653 INFO    ] ================================================
[2026-08-31 09:53:25,234.234 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:53:25
[2026-08-31 09:53:25,833.833 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:53:26,106.106 INFO    ] Initializing speech engine...
[2026-08-31 09:53:26,115.115 INFO    ] 2026-08-31 09:53:26
[2026-08-31 09:53:26,378.378 INFO    ] 2026-08-31 09:53:26
[2026-08-31 09:53:26,435.435 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:53:26,716.716 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:53:26,724.724 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:53:26,922.922 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:53:26,928.928 INFO    ] time= 31/08/2026 09:53:26
[2026-08-31 09:53:26,946.946 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:53:26,974.974 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:53:27,117.117 INFO    ] No existing commands found in stream
[2026-08-31 09:53:32,147.147 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:53:32,150.150 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-08-31 09:53:33,742.742 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 09:53:33,745.745 INFO    ] Checking for system updates...
[2026-08-31 09:53:33,780.780 INFO    ] 200
[2026-08-31 09:53:33,783.783 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:53:33,836.836 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:53:33,839.839 INFO    ] No update needed
[2026-08-31 09:53:33,841.841 INFO    ] Checking for camera pi updates...
[2026-08-31 09:53:33,875.875 INFO    ] 200
[2026-08-31 09:53:33,878.878 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:53:33,919.919 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:53:34,025.025 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:53:34,028.028 INFO    ] No camera update needed
[2026-08-31 09:53:34,030.030 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:53:34,033.033 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:53:34,038.038 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:53:34,043.043 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:53:36,083.083 INFO    ] ================================================
[2026-08-31 09:53:36,099.099 INFO    ] Launching Daemon at Mon Aug 31 09:53:36 IST 2026
[2026-08-31 09:53:36,110.110 INFO    ] ================================================
[2026-08-31 09:53:36,766.766 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:53:36
[2026-08-31 09:53:37,440.440 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:53:37,754.754 INFO    ] Initializing speech engine...
[2026-08-31 09:53:37,759.759 INFO    ] 2026-08-31 09:53:37
[2026-08-31 09:53:38,038.038 INFO    ] 2026-08-31 09:53:38
[2026-08-31 09:53:38,082.082 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:53:38,364.364 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:53:38,372.372 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:53:38,568.568 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:53:38,575.575 INFO    ] time= 31/08/2026 09:53:38
[2026-08-31 09:53:38,594.594 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:53:38,622.622 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:53:38,759.759 INFO    ] No existing commands found in stream
[2026-08-31 09:53:43,790.790 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:53:43,794.794 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-08-31 09:53:46,894.894 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 09:53:46,897.897 INFO    ] Checking for system updates...
[2026-08-31 09:53:46,933.933 INFO    ] 200
[2026-08-31 09:53:46,936.936 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:53:46,990.990 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:53:46,993.993 INFO    ] No update needed
[2026-08-31 09:53:46,996.996 INFO    ] Checking for camera pi updates...
[2026-08-31 09:53:47,030.030 INFO    ] 200
[2026-08-31 09:53:47,033.033 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:53:47,076.076 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:53:47,178.178 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:53:47,181.181 INFO    ] No camera update needed
[2026-08-31 09:53:47,183.183 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:53:47,186.186 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:53:47,192.192 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:53:47,198.198 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:53:49,239.239 INFO    ] ================================================
[2026-08-31 09:53:49,255.255 INFO    ] Launching Daemon at Mon Aug 31 09:53:49 IST 2026
[2026-08-31 09:53:49,265.265 INFO    ] ================================================
[2026-08-31 09:53:49,834.834 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:53:49
[2026-08-31 09:53:50,418.418 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:53:50,691.691 INFO    ] Initializing speech engine...
[2026-08-31 09:53:50,699.699 INFO    ] 2026-08-31 09:53:50
[2026-08-31 09:53:50,945.945 INFO    ] 2026-08-31 09:53:50
[2026-08-31 09:53:50,980.980 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:53:51,220.220 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:53:51,247.247 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:53:51,448.448 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:53:51,503.503 INFO    ] time= 31/08/2026 09:53:51
[2026-08-31 09:53:51,522.522 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:53:51,546.546 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:53:51,669.669 INFO    ] No existing commands found in stream
[2026-08-31 09:53:56,688.688 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:53:56,692.692 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-08-31 09:53:58,724.724 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 09:53:58,728.728 INFO    ] Checking for system updates...
[2026-08-31 09:53:58,764.764 INFO    ] 200
[2026-08-31 09:53:58,767.767 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:53:58,820.820 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:53:58,823.823 INFO    ] No update needed
[2026-08-31 09:53:58,826.826 INFO    ] Checking for camera pi updates...
[2026-08-31 09:53:58,860.860 INFO    ] 200
[2026-08-31 09:53:58,863.863 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:53:58,906.906 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:53:58,990.990 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:53:58,993.993 INFO    ] No camera update needed
[2026-08-31 09:53:58,996.996 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:53:58,999.999 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:53:59,005.005 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:53:59,011.011 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:54:01,070.070 INFO    ] ================================================
[2026-08-31 09:54:01,144.144 INFO    ] Launching Daemon at Mon Aug 31 09:54:01 IST 2026
[2026-08-31 09:54:01,171.171 INFO    ] ================================================
[2026-08-31 09:54:01,911.911 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:54:01
[2026-08-31 09:54:02,572.572 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:54:02,899.899 INFO    ] Initializing speech engine...
[2026-08-31 09:54:02,912.912 INFO    ] 2026-08-31 09:54:02
[2026-08-31 09:54:03,200.200 INFO    ] 2026-08-31 09:54:03
[2026-08-31 09:54:03,245.245 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:54:03,494.494 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:54:03,500.500 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:54:03,731.731 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:54:03,739.739 INFO    ] time= 31/08/2026 09:54:03
[2026-08-31 09:54:03,760.760 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:54:03,786.786 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:54:03,917.917 INFO    ] No existing commands found in stream
[2026-08-31 09:54:08,948.948 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:54:08,951.951 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-08-31 09:54:13,415.415 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 09:54:13,419.419 INFO    ] Checking for system updates...
[2026-08-31 09:54:13,456.456 INFO    ] 200
[2026-08-31 09:54:13,459.459 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:54:13,520.520 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:54:13,522.522 INFO    ] No update needed
[2026-08-31 09:54:13,528.528 INFO    ] Checking for camera pi updates...
[2026-08-31 09:54:13,567.567 INFO    ] 200
[2026-08-31 09:54:13,569.569 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:54:13,609.609 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:54:13,689.689 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:54:13,691.691 INFO    ] No camera update needed
[2026-08-31 09:54:13,693.693 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:54:13,696.696 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:54:13,701.701 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:54:13,706.706 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:54:15,747.747 INFO    ] ================================================
[2026-08-31 09:54:15,763.763 INFO    ] Launching Daemon at Mon Aug 31 09:54:15 IST 2026
[2026-08-31 09:54:15,774.774 INFO    ] ================================================
[2026-08-31 09:54:16,435.435 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:54:16
[2026-08-31 09:54:17,119.119 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:54:17,425.425 INFO    ] Initializing speech engine...
[2026-08-31 09:54:17,439.439 INFO    ] 2026-08-31 09:54:17
[2026-08-31 09:54:17,754.754 INFO    ] 2026-08-31 09:54:17
[2026-08-31 09:54:17,836.836 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:54:18,015.015 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:54:18,021.021 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:54:18,248.248 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:54:18,271.271 INFO    ] time= 31/08/2026 09:54:18
[2026-08-31 09:54:18,281.281 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:54:18,310.310 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:54:18,415.415 INFO    ] No existing commands found in stream
[2026-08-31 09:54:23,441.441 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:54:23,444.444 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-08-31 09:54:25,211.211 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 09:54:25,214.214 INFO    ] Checking for system updates...
[2026-08-31 09:54:25,251.251 INFO    ] 200
[2026-08-31 09:54:25,254.254 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:54:25,308.308 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:54:25,310.310 INFO    ] No update needed
[2026-08-31 09:54:25,313.313 INFO    ] Checking for camera pi updates...
[2026-08-31 09:54:25,348.348 INFO    ] 200
[2026-08-31 09:54:25,351.351 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:54:25,393.393 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:54:25,471.471 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:54:25,474.474 INFO    ] No camera update needed
[2026-08-31 09:54:25,477.477 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:54:25,479.479 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:54:25,486.486 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:54:25,492.492 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:54:27,533.533 INFO    ] ================================================
[2026-08-31 09:54:27,548.548 INFO    ] Launching Daemon at Mon Aug 31 09:54:27 IST 2026
[2026-08-31 09:54:27,559.559 INFO    ] ================================================
[2026-08-31 09:54:28,216.216 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:54:28
[2026-08-31 09:54:28,893.893 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:54:29,201.201 INFO    ] Initializing speech engine...
[2026-08-31 09:54:29,215.215 INFO    ] 2026-08-31 09:54:29
[2026-08-31 09:54:29,498.498 INFO    ] 2026-08-31 09:54:29
[2026-08-31 09:54:29,542.542 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:54:29,894.894 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:54:29,941.941 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:54:30,172.172 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:54:30,220.220 INFO    ] time= 31/08/2026 09:54:30
[2026-08-31 09:54:30,281.281 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:54:30,321.321 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:54:30,411.411 INFO    ] No existing commands found in stream
[2026-08-31 09:54:35,421.421 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:54:35,425.425 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-08-31 09:54:38,535.535 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 09:54:38,538.538 INFO    ] Checking for system updates...
[2026-08-31 09:54:38,574.574 INFO    ] 200
[2026-08-31 09:54:38,577.577 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:54:38,631.631 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:54:38,634.634 INFO    ] No update needed
[2026-08-31 09:54:38,636.636 INFO    ] Checking for camera pi updates...
[2026-08-31 09:54:38,671.671 INFO    ] 200
[2026-08-31 09:54:38,674.674 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:54:38,715.715 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:54:38,797.797 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:54:38,800.800 INFO    ] No camera update needed
[2026-08-31 09:54:38,803.803 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:54:38,805.805 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:54:38,812.812 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:54:38,817.817 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:54:40,860.860 INFO    ] ================================================
[2026-08-31 09:54:40,876.876 INFO    ] Launching Daemon at Mon Aug 31 09:54:40 IST 2026
[2026-08-31 09:54:40,887.887 INFO    ] ================================================
[2026-08-31 09:54:41,459.459 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:54:41
[2026-08-31 09:54:42,045.045 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:54:42,313.313 INFO    ] Initializing speech engine...
[2026-08-31 09:54:42,323.323 INFO    ] 2026-08-31 09:54:42
[2026-08-31 09:54:42,573.573 INFO    ] 2026-08-31 09:54:42
[2026-08-31 09:54:42,609.609 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:54:42,866.866 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:54:42,875.875 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:54:43,133.133 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:54:43,140.140 INFO    ] time= 31/08/2026 09:54:43
[2026-08-31 09:54:43,158.158 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:54:43,175.175 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:54:43,315.315 INFO    ] No existing commands found in stream
[2026-08-31 09:54:48,345.345 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:54:48,348.348 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-08-31 09:54:52,109.109 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 09:54:52,112.112 INFO    ] Checking for system updates...
[2026-08-31 09:54:52,147.147 INFO    ] 200
[2026-08-31 09:54:52,149.149 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:54:52,205.205 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:54:52,208.208 INFO    ] No update needed
[2026-08-31 09:54:52,210.210 INFO    ] Checking for camera pi updates...
[2026-08-31 09:54:52,248.248 INFO    ] 200
[2026-08-31 09:54:52,251.251 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:54:52,296.296 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:54:52,389.389 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:54:52,391.391 INFO    ] No camera update needed
[2026-08-31 09:54:52,393.393 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:54:52,396.396 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:54:52,401.401 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:54:52,406.406 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:54:54,448.448 INFO    ] ================================================
[2026-08-31 09:54:54,464.464 INFO    ] Launching Daemon at Mon Aug 31 09:54:54 IST 2026
[2026-08-31 09:54:54,474.474 INFO    ] ================================================
[2026-08-31 09:54:55,054.054 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:54:55
[2026-08-31 09:54:55,639.639 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:54:55,942.942 INFO    ] Initializing speech engine...
[2026-08-31 09:54:55,951.951 INFO    ] 2026-08-31 09:54:55
[2026-08-31 09:54:56,225.225 INFO    ] 2026-08-31 09:54:56
[2026-08-31 09:54:56,280.280 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:54:56,631.631 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:54:56,658.658 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:54:56,898.898 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:54:56,946.946 INFO    ] time= 31/08/2026 09:54:56
[2026-08-31 09:54:57,011.011 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:54:57,048.048 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:54:57,208.208 INFO    ] No existing commands found in stream
[2026-08-31 09:55:02,229.229 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:55:02,233.233 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-08-31 09:55:03,338.338 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 09:55:03,341.341 INFO    ] Checking for system updates...
[2026-08-31 09:55:03,378.378 INFO    ] 200
[2026-08-31 09:55:03,381.381 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:55:03,434.434 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:55:03,436.436 INFO    ] No update needed
[2026-08-31 09:55:03,439.439 INFO    ] Checking for camera pi updates...
[2026-08-31 09:55:03,474.474 INFO    ] 200
[2026-08-31 09:55:03,476.476 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:55:03,518.518 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:55:03,600.600 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:55:03,602.602 INFO    ] No camera update needed
[2026-08-31 09:55:03,605.605 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:55:03,607.607 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:55:03,612.612 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:55:03,617.617 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:55:05,658.658 INFO    ] ================================================
[2026-08-31 09:55:05,674.674 INFO    ] Launching Daemon at Mon Aug 31 09:55:05 IST 2026
[2026-08-31 09:55:05,685.685 INFO    ] ================================================
[2026-08-31 09:55:06,275.275 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:55:06
[2026-08-31 09:55:06,857.857 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:55:07,126.126 INFO    ] Initializing speech engine...
[2026-08-31 09:55:07,135.135 INFO    ] 2026-08-31 09:55:07
[2026-08-31 09:55:07,381.381 INFO    ] 2026-08-31 09:55:07
[2026-08-31 09:55:07,444.444 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:55:07,671.671 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:55:07,677.677 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:55:07,889.889 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:55:07,931.931 INFO    ] time= 31/08/2026 09:55:07
[2026-08-31 09:55:07,937.937 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:55:07,955.955 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:55:08,086.086 INFO    ] No existing commands found in stream
[2026-08-31 09:55:13,105.105 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:55:13,108.108 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-08-31 09:55:17,494.494 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 09:55:17,497.497 INFO    ] Checking for system updates...
[2026-08-31 09:55:17,536.536 INFO    ] 200
[2026-08-31 09:55:17,539.539 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:55:17,597.597 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:55:17,600.600 INFO    ] No update needed
[2026-08-31 09:55:17,602.602 INFO    ] Checking for camera pi updates...
[2026-08-31 09:55:17,635.635 INFO    ] 200
[2026-08-31 09:55:17,638.638 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:55:17,684.684 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:55:17,867.867 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:55:17,870.870 INFO    ] No camera update needed
[2026-08-31 09:55:17,872.872 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:55:17,874.874 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:55:17,879.879 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:55:17,884.884 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:55:19,924.924 INFO    ] ================================================
[2026-08-31 09:55:19,939.939 INFO    ] Launching Daemon at Mon Aug 31 09:55:19 IST 2026
[2026-08-31 09:55:19,949.949 INFO    ] ================================================
[2026-08-31 09:55:20,600.600 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:55:20
[2026-08-31 09:55:21,272.272 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:55:21,581.581 INFO    ] Initializing speech engine...
[2026-08-31 09:55:21,593.593 INFO    ] 2026-08-31 09:55:21
[2026-08-31 09:55:21,906.906 INFO    ] 2026-08-31 09:55:21
[2026-08-31 09:55:21,993.993 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:55:22,212.212 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:55:22,222.222 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:55:22,420.420 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:55:22,440.440 INFO    ] time= 31/08/2026 09:55:22
[2026-08-31 09:55:22,469.469 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:55:22,479.479 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:55:22,583.583 INFO    ] No existing commands found in stream
[2026-08-31 09:55:27,608.608 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:55:27,611.611 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-08-31 09:55:31,618.618 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 09:55:31,622.622 INFO    ] Checking for system updates...
[2026-08-31 09:55:31,662.662 INFO    ] 200
[2026-08-31 09:55:31,665.665 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:55:31,721.721 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:55:31,724.724 INFO    ] No update needed
[2026-08-31 09:55:31,727.727 INFO    ] Checking for camera pi updates...
[2026-08-31 09:55:31,764.764 INFO    ] 200
[2026-08-31 09:55:31,766.766 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:55:31,811.811 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:55:31,876.876 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:55:31,879.879 INFO    ] No camera update needed
[2026-08-31 09:55:31,882.882 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:55:31,885.885 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:55:31,891.891 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:55:31,896.896 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:55:33,939.939 INFO    ] ================================================
[2026-08-31 09:55:33,954.954 INFO    ] Launching Daemon at Mon Aug 31 09:55:33 IST 2026
[2026-08-31 09:55:33,964.964 INFO    ] ================================================
[2026-08-31 09:55:34,534.534 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:55:34
[2026-08-31 09:55:35,116.116 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:55:35,372.372 INFO    ] Initializing speech engine...
[2026-08-31 09:55:35,380.380 INFO    ] 2026-08-31 09:55:35
[2026-08-31 09:55:35,672.672 INFO    ] 2026-08-31 09:55:35
[2026-08-31 09:55:35,709.709 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:55:36,000.000 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:55:36,009.009 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:55:36,164.164 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:55:36,218.218 INFO    ] time= 31/08/2026 09:55:36
[2026-08-31 09:55:36,272.272 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:55:36,312.312 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:55:36,451.451 INFO    ] No existing commands found in stream
[2026-08-31 09:55:41,476.476 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:55:41,479.479 INFO    ] Waiting 0.00 seconds before fallback handling...
[2026-08-31 09:55:42,014.014 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 09:55:42,022.022 INFO    ] Checking for system updates...
[2026-08-31 09:55:42,061.061 INFO    ] 200
[2026-08-31 09:55:42,064.064 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:55:42,117.117 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:55:42,119.119 INFO    ] No update needed
[2026-08-31 09:55:42,121.121 INFO    ] Checking for camera pi updates...
[2026-08-31 09:55:42,155.155 INFO    ] 200
[2026-08-31 09:55:42,158.158 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:55:42,203.203 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:55:42,313.313 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:55:42,315.315 INFO    ] No camera update needed
[2026-08-31 09:55:42,318.318 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:55:42,320.320 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:55:42,325.325 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:55:42,330.330 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:55:44,370.370 INFO    ] ================================================
[2026-08-31 09:55:44,385.385 INFO    ] Launching Daemon at Mon Aug 31 09:55:44 IST 2026
[2026-08-31 09:55:44,396.396 INFO    ] ================================================
[2026-08-31 09:55:44,962.962 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:55:44
[2026-08-31 09:55:45,543.543 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:55:45,792.792 INFO    ] Initializing speech engine...
[2026-08-31 09:55:45,805.805 INFO    ] 2026-08-31 09:55:45
[2026-08-31 09:55:46,070.070 INFO    ] 2026-08-31 09:55:46
[2026-08-31 09:55:46,106.106 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:55:46,307.307 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:55:46,365.365 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:55:46,524.524 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:55:46,595.595 INFO    ] time= 31/08/2026 09:55:46
[2026-08-31 09:55:46,640.640 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:55:46,646.646 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:55:46,783.783 INFO    ] No existing commands found in stream
[2026-08-31 09:55:51,804.804 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:55:51,807.807 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-08-31 09:55:55,368.368 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 09:55:55,371.371 INFO    ] Checking for system updates...
[2026-08-31 09:55:55,411.411 INFO    ] 200
[2026-08-31 09:55:55,414.414 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:55:55,475.475 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:55:55,478.478 INFO    ] No update needed
[2026-08-31 09:55:55,481.481 INFO    ] Checking for camera pi updates...
[2026-08-31 09:55:55,519.519 INFO    ] 200
[2026-08-31 09:55:55,522.522 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:55:55,563.563 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:55:55,644.644 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:55:55,647.647 INFO    ] No camera update needed
[2026-08-31 09:55:55,650.650 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:55:55,652.652 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:55:55,658.658 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:55:55,664.664 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:55:57,707.707 INFO    ] ================================================
[2026-08-31 09:55:57,722.722 INFO    ] Launching Daemon at Mon Aug 31 09:55:57 IST 2026
[2026-08-31 09:55:57,733.733 INFO    ] ================================================
[2026-08-31 09:55:58,300.300 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:55:58
[2026-08-31 09:55:58,882.882 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:55:59,148.148 INFO    ] Initializing speech engine...
[2026-08-31 09:55:59,157.157 INFO    ] 2026-08-31 09:55:59
[2026-08-31 09:55:59,403.403 INFO    ] 2026-08-31 09:55:59
[2026-08-31 09:55:59,438.438 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:55:59,693.693 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:55:59,716.716 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:55:59,919.919 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:55:59,956.956 INFO    ] time= 31/08/2026 09:55:59
[2026-08-31 09:55:59,973.973 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:55:59,982.982 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:56:00,106.106 INFO    ] No existing commands found in stream
[2026-08-31 09:56:05,121.121 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:56:05,124.124 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-08-31 09:56:09,296.296 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 09:56:09,298.298 INFO    ] Checking for system updates...
[2026-08-31 09:56:09,334.334 INFO    ] 200
[2026-08-31 09:56:09,336.336 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:56:09,388.388 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:56:09,391.391 INFO    ] No update needed
[2026-08-31 09:56:09,393.393 INFO    ] Checking for camera pi updates...
[2026-08-31 09:56:09,429.429 INFO    ] 200
[2026-08-31 09:56:09,431.431 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:56:09,474.474 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:56:09,572.572 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:56:09,574.574 INFO    ] No camera update needed
[2026-08-31 09:56:09,577.577 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:56:09,580.580 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:56:09,586.586 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:56:09,592.592 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:56:11,634.634 INFO    ] ================================================
[2026-08-31 09:56:11,649.649 INFO    ] Launching Daemon at Mon Aug 31 09:56:11 IST 2026
[2026-08-31 09:56:11,660.660 INFO    ] ================================================
[2026-08-31 09:56:12,247.247 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:56:12
[2026-08-31 09:56:12,849.849 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:56:13,112.112 INFO    ] Initializing speech engine...
[2026-08-31 09:56:13,128.128 INFO    ] 2026-08-31 09:56:13
[2026-08-31 09:56:13,414.414 INFO    ] 2026-08-31 09:56:13
[2026-08-31 09:56:13,439.439 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:56:13,653.653 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:56:13,665.665 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:56:13,830.830 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:56:13,839.839 INFO    ] time= 31/08/2026 09:56:13
[2026-08-31 09:56:13,846.846 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:56:13,890.890 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:56:14,026.026 INFO    ] No existing commands found in stream
[2026-08-31 09:56:19,050.050 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:56:19,052.052 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-08-31 09:56:22,059.059 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 09:56:22,062.062 INFO    ] Checking for system updates...
[2026-08-31 09:56:22,098.098 INFO    ] 200
[2026-08-31 09:56:22,100.100 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:56:22,153.153 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:56:22,155.155 INFO    ] No update needed
[2026-08-31 09:56:22,158.158 INFO    ] Checking for camera pi updates...
[2026-08-31 09:56:22,195.195 INFO    ] 200
[2026-08-31 09:56:22,199.199 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:56:22,256.256 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:56:22,358.358 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:56:22,360.360 INFO    ] No camera update needed
[2026-08-31 09:56:22,362.362 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:56:22,365.365 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:56:22,370.370 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:56:22,375.375 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:56:24,414.414 INFO    ] ================================================
[2026-08-31 09:56:24,430.430 INFO    ] Launching Daemon at Mon Aug 31 09:56:24 IST 2026
[2026-08-31 09:56:24,441.441 INFO    ] ================================================
[2026-08-31 09:56:25,014.014 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:56:25
[2026-08-31 09:56:25,682.682 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:56:25,984.984 INFO    ] Initializing speech engine...
[2026-08-31 09:56:25,994.994 INFO    ] 2026-08-31 09:56:25
[2026-08-31 09:56:26,268.268 INFO    ] 2026-08-31 09:56:26
[2026-08-31 09:56:26,323.323 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:56:26,674.674 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:56:26,732.732 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:56:26,934.934 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:56:26,965.965 INFO    ] time= 31/08/2026 09:56:26
[2026-08-31 09:56:27,020.020 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:56:27,067.067 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:56:27,188.188 INFO    ] No existing commands found in stream
[2026-08-31 09:56:32,220.220 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:56:32,228.228 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-08-31 09:56:33,622.622 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 09:56:33,625.625 INFO    ] Checking for system updates...
[2026-08-31 09:56:33,663.663 INFO    ] 200
[2026-08-31 09:56:33,665.665 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:56:33,718.718 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:56:33,720.720 INFO    ] No update needed
[2026-08-31 09:56:33,723.723 INFO    ] Checking for camera pi updates...
[2026-08-31 09:56:33,756.756 INFO    ] 200
[2026-08-31 09:56:33,759.759 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:56:33,800.800 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:56:33,887.887 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:56:33,889.889 INFO    ] No camera update needed
[2026-08-31 09:56:33,892.892 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:56:33,894.894 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:56:33,899.899 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:56:33,904.904 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:56:35,944.944 INFO    ] ================================================
[2026-08-31 09:56:35,960.960 INFO    ] Launching Daemon at Mon Aug 31 09:56:35 IST 2026
[2026-08-31 09:56:35,970.970 INFO    ] ================================================
[2026-08-31 09:56:36,537.537 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:56:36
[2026-08-31 09:56:37,196.196 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:56:37,456.456 INFO    ] Initializing speech engine...
[2026-08-31 09:56:37,472.472 INFO    ] 2026-08-31 09:56:37
[2026-08-31 09:56:37,756.756 INFO    ] 2026-08-31 09:56:37
[2026-08-31 09:56:37,791.791 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:56:38,089.089 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:56:38,099.099 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:56:38,258.258 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:56:38,283.283 INFO    ] time= 31/08/2026 09:56:38
[2026-08-31 09:56:38,337.337 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:56:38,386.386 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:56:38,502.502 INFO    ] No existing commands found in stream
[2026-08-31 09:56:43,529.529 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:56:43,532.532 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-08-31 09:56:47,281.281 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 09:56:47,284.284 INFO    ] Checking for system updates...
[2026-08-31 09:56:47,322.322 INFO    ] 200
[2026-08-31 09:56:47,325.325 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:56:47,384.384 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:56:47,386.386 INFO    ] No update needed
[2026-08-31 09:56:47,389.389 INFO    ] Checking for camera pi updates...
[2026-08-31 09:56:47,422.422 INFO    ] 200
[2026-08-31 09:56:47,424.424 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:56:47,470.470 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:56:47,567.567 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:56:47,569.569 INFO    ] No camera update needed
[2026-08-31 09:56:47,572.572 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:56:47,574.574 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:56:47,579.579 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:56:47,584.584 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:56:49,623.623 INFO    ] ================================================
[2026-08-31 09:56:49,639.639 INFO    ] Launching Daemon at Mon Aug 31 09:56:49 IST 2026
[2026-08-31 09:56:49,650.650 INFO    ] ================================================
[2026-08-31 09:56:50,215.215 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:56:50
[2026-08-31 09:56:50,795.795 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:56:51,065.065 INFO    ] Initializing speech engine...
[2026-08-31 09:56:51,072.072 INFO    ] 2026-08-31 09:56:51
[2026-08-31 09:56:51,330.330 INFO    ] 2026-08-31 09:56:51
[2026-08-31 09:56:51,384.384 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:56:51,609.609 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:56:51,613.613 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:56:51,746.746 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:56:51,791.791 INFO    ] time= 31/08/2026 09:56:51
[2026-08-31 09:56:51,835.835 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:56:51,876.876 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:56:52,013.013 INFO    ] No existing commands found in stream
[2026-08-31 09:56:57,031.031 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:56:57,034.034 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-08-31 09:57:00,901.901 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 09:57:00,903.903 INFO    ] Checking for system updates...
[2026-08-31 09:57:00,939.939 INFO    ] 200
[2026-08-31 09:57:00,942.942 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:57:00,994.994 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:57:00,997.997 INFO    ] No update needed
[2026-08-31 09:57:00,999.999 INFO    ] Checking for camera pi updates...
[2026-08-31 09:57:01,033.033 INFO    ] 200
[2026-08-31 09:57:01,035.035 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:57:01,081.081 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:57:01,164.164 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:57:01,166.166 INFO    ] No camera update needed
[2026-08-31 09:57:01,169.169 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:57:01,171.171 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:57:01,176.176 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:57:01,181.181 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:57:03,222.222 INFO    ] ================================================
[2026-08-31 09:57:03,237.237 INFO    ] Launching Daemon at Mon Aug 31 09:57:03 IST 2026
[2026-08-31 09:57:03,248.248 INFO    ] ================================================
[2026-08-31 09:57:03,813.813 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:57:03
[2026-08-31 09:57:04,395.395 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:57:04,665.665 INFO    ] Initializing speech engine...
[2026-08-31 09:57:04,675.675 INFO    ] 2026-08-31 09:57:04
[2026-08-31 09:57:04,926.926 INFO    ] 2026-08-31 09:57:04
[2026-08-31 09:57:04,961.961 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:57:05,163.163 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:57:05,222.222 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:57:05,417.417 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:57:05,456.456 INFO    ] time= 31/08/2026 09:57:05
[2026-08-31 09:57:05,496.496 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:57:05,503.503 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:57:05,621.621 INFO    ] No existing commands found in stream
[2026-08-31 09:57:10,651.651 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:57:10,654.654 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-08-31 09:57:12,443.443 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 09:57:12,451.451 INFO    ] Checking for system updates...
[2026-08-31 09:57:12,499.499 INFO    ] 200
[2026-08-31 09:57:12,502.502 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:57:12,567.567 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:57:12,570.570 INFO    ] No update needed
[2026-08-31 09:57:12,573.573 INFO    ] Checking for camera pi updates...
[2026-08-31 09:57:12,608.608 INFO    ] 200
[2026-08-31 09:57:12,611.611 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:57:12,653.653 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:57:12,759.759 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:57:12,762.762 INFO    ] No camera update needed
[2026-08-31 09:57:12,765.765 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:57:12,768.768 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:57:12,774.774 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:57:12,780.780 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:57:14,822.822 INFO    ] ================================================
[2026-08-31 09:57:14,838.838 INFO    ] Launching Daemon at Mon Aug 31 09:57:14 IST 2026
[2026-08-31 09:57:14,849.849 INFO    ] ================================================
[2026-08-31 09:57:15,457.457 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:57:15
[2026-08-31 09:57:16,040.040 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:57:16,307.307 INFO    ] Initializing speech engine...
[2026-08-31 09:57:16,316.316 INFO    ] 2026-08-31 09:57:16
[2026-08-31 09:57:16,563.563 INFO    ] 2026-08-31 09:57:16
[2026-08-31 09:57:16,597.597 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:57:16,853.853 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:57:16,859.859 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:57:17,058.058 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:57:17,114.114 INFO    ] time= 31/08/2026 09:57:17
[2026-08-31 09:57:17,120.120 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:57:17,139.139 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:57:17,265.265 INFO    ] No existing commands found in stream
[2026-08-31 09:57:22,279.279 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:57:22,282.282 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-08-31 09:57:23,742.742 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 09:57:23,744.744 INFO    ] Checking for system updates...
[2026-08-31 09:57:23,781.781 INFO    ] 200
[2026-08-31 09:57:23,784.784 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:57:23,836.836 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:57:23,840.840 INFO    ] No update needed
[2026-08-31 09:57:23,842.842 INFO    ] Checking for camera pi updates...
[2026-08-31 09:57:23,881.881 INFO    ] 200
[2026-08-31 09:57:23,884.884 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:57:23,926.926 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:57:24,107.107 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:57:24,110.110 INFO    ] No camera update needed
[2026-08-31 09:57:24,113.113 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:57:24,115.115 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:57:24,121.121 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:57:24,127.127 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:57:26,169.169 INFO    ] ================================================
[2026-08-31 09:57:26,185.185 INFO    ] Launching Daemon at Mon Aug 31 09:57:26 IST 2026
[2026-08-31 09:57:26,196.196 INFO    ] ================================================
[2026-08-31 09:57:26,779.779 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:57:26
[2026-08-31 09:57:27,378.378 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:57:27,658.658 INFO    ] Initializing speech engine...
[2026-08-31 09:57:27,667.667 INFO    ] 2026-08-31 09:57:27
[2026-08-31 09:57:27,927.927 INFO    ] 2026-08-31 09:57:27
[2026-08-31 09:57:27,957.957 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:57:28,202.202 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:57:28,213.213 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:57:28,411.411 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:57:28,470.470 INFO    ] time= 31/08/2026 09:57:28
[2026-08-31 09:57:28,477.477 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:57:28,495.495 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:57:28,610.610 INFO    ] No existing commands found in stream
[2026-08-31 09:57:33,634.634 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:57:33,637.637 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-08-31 09:57:37,182.182 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 09:57:37,185.185 INFO    ] Checking for system updates...
[2026-08-31 09:57:37,227.227 INFO    ] 200
[2026-08-31 09:57:37,234.234 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:57:37,289.289 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:57:37,292.292 INFO    ] No update needed
[2026-08-31 09:57:37,294.294 INFO    ] Checking for camera pi updates...
[2026-08-31 09:57:37,333.333 INFO    ] 200
[2026-08-31 09:57:37,336.336 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:57:37,379.379 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:57:37,461.461 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:57:37,464.464 INFO    ] No camera update needed
[2026-08-31 09:57:37,467.467 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:57:37,470.470 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:57:37,476.476 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:57:37,482.482 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:57:39,524.524 INFO    ] ================================================
[2026-08-31 09:57:39,540.540 INFO    ] Launching Daemon at Mon Aug 31 09:57:39 IST 2026
[2026-08-31 09:57:39,551.551 INFO    ] ================================================
[2026-08-31 09:57:40,117.117 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:57:40
[2026-08-31 09:57:40,700.700 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:57:40,968.968 INFO    ] Initializing speech engine...
[2026-08-31 09:57:40,980.980 INFO    ] 2026-08-31 09:57:40
[2026-08-31 09:57:41,231.231 INFO    ] 2026-08-31 09:57:41
[2026-08-31 09:57:41,266.266 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:57:41,522.522 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:57:41,532.532 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:57:41,728.728 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:57:41,773.773 INFO    ] time= 31/08/2026 09:57:41
[2026-08-31 09:57:41,801.801 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:57:41,807.807 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:57:41,935.935 INFO    ] No existing commands found in stream
[2026-08-31 09:57:46,965.965 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:57:46,968.968 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-08-31 09:57:48,187.187 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 09:57:48,190.190 INFO    ] Checking for system updates...
[2026-08-31 09:57:48,225.225 INFO    ] 200
[2026-08-31 09:57:48,228.228 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:57:48,287.287 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:57:48,289.289 INFO    ] No update needed
[2026-08-31 09:57:48,292.292 INFO    ] Checking for camera pi updates...
[2026-08-31 09:57:48,324.324 INFO    ] 200
[2026-08-31 09:57:48,327.327 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:57:48,367.367 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:57:48,452.452 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:57:48,454.454 INFO    ] No camera update needed
[2026-08-31 09:57:48,456.456 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:57:48,459.459 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:57:48,464.464 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:57:48,469.469 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:57:50,509.509 INFO    ] ================================================
[2026-08-31 09:57:50,525.525 INFO    ] Launching Daemon at Mon Aug 31 09:57:50 IST 2026
[2026-08-31 09:57:50,535.535 INFO    ] ================================================
[2026-08-31 09:57:51,101.101 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:57:51
[2026-08-31 09:57:51,685.685 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:57:51,951.951 INFO    ] Initializing speech engine...
[2026-08-31 09:57:51,961.961 INFO    ] 2026-08-31 09:57:51
[2026-08-31 09:57:52,205.205 INFO    ] 2026-08-31 09:57:52
[2026-08-31 09:57:52,240.240 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:57:52,473.473 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:57:52,499.499 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:57:52,687.687 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:57:52,742.742 INFO    ] time= 31/08/2026 09:57:52
[2026-08-31 09:57:52,763.763 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:57:52,779.779 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:57:52,987.987 INFO    ] No existing commands found in stream
[2026-08-31 09:57:58,018.018 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:57:58,021.021 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-08-31 09:58:02,805.805 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 09:58:02,809.809 INFO    ] Checking for system updates...
[2026-08-31 09:58:02,845.845 INFO    ] 200
[2026-08-31 09:58:02,848.848 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:58:02,915.915 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:58:02,918.918 INFO    ] No update needed
[2026-08-31 09:58:02,920.920 INFO    ] Checking for camera pi updates...
[2026-08-31 09:58:02,955.955 INFO    ] 200
[2026-08-31 09:58:02,957.957 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:58:03,010.010 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:58:03,071.071 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:58:03,073.073 INFO    ] No camera update needed
[2026-08-31 09:58:03,075.075 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:58:03,078.078 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:58:03,083.083 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:58:03,088.088 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:58:05,133.133 INFO    ] ================================================
[2026-08-31 09:58:05,149.149 INFO    ] Launching Daemon at Mon Aug 31 09:58:05 IST 2026
[2026-08-31 09:58:05,160.160 INFO    ] ================================================
[2026-08-31 09:58:05,807.807 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:58:05
[2026-08-31 09:58:06,409.409 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:58:06,664.664 INFO    ] Initializing speech engine...
[2026-08-31 09:58:06,682.682 INFO    ] 2026-08-31 09:58:06
[2026-08-31 09:58:06,963.963 INFO    ] 2026-08-31 09:58:06
[2026-08-31 09:58:06,998.998 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:58:07,250.250 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:58:07,259.259 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:58:07,461.461 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:58:07,516.516 INFO    ] time= 31/08/2026 09:58:07
[2026-08-31 09:58:07,525.525 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:58:07,543.543 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:58:07,679.679 INFO    ] No existing commands found in stream
[2026-08-31 09:58:12,709.709 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:58:12,712.712 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-08-31 09:58:14,549.549 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 09:58:14,551.551 INFO    ] Checking for system updates...
[2026-08-31 09:58:14,587.587 INFO    ] 200
[2026-08-31 09:58:14,590.590 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:58:14,643.643 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:58:14,645.645 INFO    ] No update needed
[2026-08-31 09:58:14,647.647 INFO    ] Checking for camera pi updates...
[2026-08-31 09:58:14,681.681 INFO    ] 200
[2026-08-31 09:58:14,683.683 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:58:14,723.723 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:58:14,803.803 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:58:14,805.805 INFO    ] No camera update needed
[2026-08-31 09:58:14,808.808 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:58:14,810.810 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:58:14,815.815 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:58:14,821.821 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:58:16,860.860 INFO    ] ================================================
[2026-08-31 09:58:16,875.875 INFO    ] Launching Daemon at Mon Aug 31 09:58:16 IST 2026
[2026-08-31 09:58:16,886.886 INFO    ] ================================================
[2026-08-31 09:58:17,458.458 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:58:17
[2026-08-31 09:58:18,055.055 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:58:18,332.332 INFO    ] Initializing speech engine...
[2026-08-31 09:58:18,338.338 INFO    ] 2026-08-31 09:58:18
[2026-08-31 09:58:18,586.586 INFO    ] 2026-08-31 09:58:18
[2026-08-31 09:58:18,651.651 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:58:18,936.936 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:58:18,941.941 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:58:19,135.135 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:58:19,141.141 INFO    ] time= 31/08/2026 09:58:19
[2026-08-31 09:58:19,159.159 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:58:19,181.181 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:58:19,293.293 INFO    ] No existing commands found in stream
[2026-08-31 09:58:24,304.304 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:58:24,307.307 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-08-31 09:58:27,644.644 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 09:58:27,647.647 INFO    ] Checking for system updates...
[2026-08-31 09:58:27,687.687 INFO    ] 200
[2026-08-31 09:58:27,690.690 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:58:27,745.745 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:58:27,748.748 INFO    ] No update needed
[2026-08-31 09:58:27,750.750 INFO    ] Checking for camera pi updates...
[2026-08-31 09:58:27,784.784 INFO    ] 200
[2026-08-31 09:58:27,790.790 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:58:27,843.843 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:58:27,951.951 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:58:27,953.953 INFO    ] No camera update needed
[2026-08-31 09:58:27,955.955 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:58:27,958.958 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:58:27,963.963 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:58:27,968.968 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:58:30,008.008 INFO    ] ================================================
[2026-08-31 09:58:30,023.023 INFO    ] Launching Daemon at Mon Aug 31 09:58:30 IST 2026
[2026-08-31 09:58:30,035.035 INFO    ] ================================================
[2026-08-31 09:58:30,606.606 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:58:30
[2026-08-31 09:58:31,188.188 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:58:31,465.465 INFO    ] Initializing speech engine...
[2026-08-31 09:58:31,482.482 INFO    ] 2026-08-31 09:58:31
[2026-08-31 09:58:31,753.753 INFO    ] 2026-08-31 09:58:31
[2026-08-31 09:58:31,788.788 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:58:32,063.063 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:58:32,073.073 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:58:32,232.232 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:58:32,260.260 INFO    ] time= 31/08/2026 09:58:32
[2026-08-31 09:58:32,315.315 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:58:32,370.370 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:58:32,533.533 INFO    ] No existing commands found in stream
[2026-08-31 09:58:37,558.558 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:58:37,561.561 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-08-31 09:58:39,105.105 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 09:58:39,108.108 INFO    ] Checking for system updates...
[2026-08-31 09:58:39,143.143 INFO    ] 200
[2026-08-31 09:58:39,145.145 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:58:39,197.197 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:58:39,200.200 INFO    ] No update needed
[2026-08-31 09:58:39,202.202 INFO    ] Checking for camera pi updates...
[2026-08-31 09:58:39,235.235 INFO    ] 200
[2026-08-31 09:58:39,238.238 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:58:39,277.277 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:58:39,368.368 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:58:39,371.371 INFO    ] No camera update needed
[2026-08-31 09:58:39,373.373 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:58:39,375.375 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:58:39,381.381 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:58:39,385.385 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:58:41,427.427 INFO    ] ================================================
[2026-08-31 09:58:41,443.443 INFO    ] Launching Daemon at Mon Aug 31 09:58:41 IST 2026
[2026-08-31 09:58:41,454.454 INFO    ] ================================================
[2026-08-31 09:58:42,021.021 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:58:42
[2026-08-31 09:58:42,603.603 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:58:42,860.860 INFO    ] Initializing speech engine...
[2026-08-31 09:58:42,876.876 INFO    ] 2026-08-31 09:58:42
[2026-08-31 09:58:43,187.187 INFO    ] 2026-08-31 09:58:43
[2026-08-31 09:58:43,228.228 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:58:43,462.462 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:58:43,472.472 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:58:43,703.703 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:58:43,730.730 INFO    ] time= 31/08/2026 09:58:43
[2026-08-31 09:58:43,749.749 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:58:43,769.769 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:58:43,891.891 INFO    ] No existing commands found in stream
[2026-08-31 09:58:48,922.922 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:58:48,925.925 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-08-31 09:58:53,264.264 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 09:58:53,267.267 INFO    ] Checking for system updates...
[2026-08-31 09:58:53,308.308 INFO    ] 200
[2026-08-31 09:58:53,312.312 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:58:53,366.366 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:58:53,369.369 INFO    ] No update needed
[2026-08-31 09:58:53,372.372 INFO    ] Checking for camera pi updates...
[2026-08-31 09:58:53,408.408 INFO    ] 200
[2026-08-31 09:58:53,410.410 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:58:53,452.452 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:58:53,533.533 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:58:53,535.535 INFO    ] No camera update needed
[2026-08-31 09:58:53,538.538 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:58:53,541.541 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:58:53,547.547 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:58:53,553.553 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:58:55,597.597 INFO    ] ================================================
[2026-08-31 09:58:55,614.614 INFO    ] Launching Daemon at Mon Aug 31 09:58:55 IST 2026
[2026-08-31 09:58:55,625.625 INFO    ] ================================================
[2026-08-31 09:58:56,282.282 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:58:56
[2026-08-31 09:58:56,959.959 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:58:57,262.262 INFO    ] Initializing speech engine...
[2026-08-31 09:58:57,271.271 INFO    ] 2026-08-31 09:58:57
[2026-08-31 09:58:57,545.545 INFO    ] 2026-08-31 09:58:57
[2026-08-31 09:58:57,602.602 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:58:57,852.852 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:58:57,859.859 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:58:58,087.087 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:58:58,095.095 INFO    ] time= 31/08/2026 09:58:58
[2026-08-31 09:58:58,116.116 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:58:58,142.142 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:58:58,250.250 INFO    ] No existing commands found in stream
[2026-08-31 09:59:03,279.279 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:59:03,282.282 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-08-31 09:59:07,648.648 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 09:59:07,651.651 INFO    ] Checking for system updates...
[2026-08-31 09:59:07,687.687 INFO    ] 200
[2026-08-31 09:59:07,690.690 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:59:07,743.743 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:59:07,745.745 INFO    ] No update needed
[2026-08-31 09:59:07,747.747 INFO    ] Checking for camera pi updates...
[2026-08-31 09:59:07,781.781 INFO    ] 200
[2026-08-31 09:59:07,784.784 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:59:07,824.824 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:59:07,905.905 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:59:07,907.907 INFO    ] No camera update needed
[2026-08-31 09:59:07,910.910 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:59:07,912.912 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:59:07,917.917 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:59:07,922.922 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:59:09,964.964 INFO    ] ================================================
[2026-08-31 09:59:09,979.979 INFO    ] Launching Daemon at Mon Aug 31 09:59:09 IST 2026
[2026-08-31 09:59:09,990.990 INFO    ] ================================================
[2026-08-31 09:59:10,565.565 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:59:10
[2026-08-31 09:59:11,152.152 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:59:11,419.419 INFO    ] Initializing speech engine...
[2026-08-31 09:59:11,428.428 INFO    ] 2026-08-31 09:59:11
[2026-08-31 09:59:11,675.675 INFO    ] 2026-08-31 09:59:11
[2026-08-31 09:59:11,739.739 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:59:11,965.965 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:59:11,971.971 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:59:12,169.169 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:59:12,223.223 INFO    ] time= 31/08/2026 09:59:12
[2026-08-31 09:59:12,236.236 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:59:12,254.254 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:59:12,369.369 INFO    ] No existing commands found in stream
[2026-08-31 09:59:17,391.391 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:59:17,394.394 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-08-31 09:59:18,086.086 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 09:59:18,088.088 INFO    ] Checking for system updates...
[2026-08-31 09:59:18,125.125 INFO    ] 200
[2026-08-31 09:59:18,128.128 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:59:18,188.188 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:59:18,192.192 INFO    ] No update needed
[2026-08-31 09:59:18,194.194 INFO    ] Checking for camera pi updates...
[2026-08-31 09:59:18,233.233 INFO    ] 200
[2026-08-31 09:59:18,235.235 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:59:18,288.288 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:59:18,356.356 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:59:18,359.359 INFO    ] No camera update needed
[2026-08-31 09:59:18,361.361 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:59:18,364.364 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:59:18,370.370 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:59:18,376.376 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:59:20,419.419 INFO    ] ================================================
[2026-08-31 09:59:20,435.435 INFO    ] Launching Daemon at Mon Aug 31 09:59:20 IST 2026
[2026-08-31 09:59:20,446.446 INFO    ] ================================================
[2026-08-31 09:59:21,015.015 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:59:21
[2026-08-31 09:59:21,596.596 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:59:21,858.858 INFO    ] Initializing speech engine...
[2026-08-31 09:59:21,872.872 INFO    ] 2026-08-31 09:59:21
[2026-08-31 09:59:22,119.119 INFO    ] 2026-08-31 09:59:22
[2026-08-31 09:59:22,183.183 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:59:22,346.346 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:59:22,395.395 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:59:22,628.628 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:59:22,672.672 INFO    ] time= 31/08/2026 09:59:22
[2026-08-31 09:59:22,679.679 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:59:22,696.696 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:59:22,840.840 INFO    ] No existing commands found in stream
[2026-08-31 09:59:27,866.866 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:59:27,869.869 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-08-31 09:59:28,762.762 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 09:59:28,765.765 INFO    ] Checking for system updates...
[2026-08-31 09:59:28,802.802 INFO    ] 200
[2026-08-31 09:59:28,804.804 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:59:28,859.859 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:59:28,861.861 INFO    ] No update needed
[2026-08-31 09:59:28,864.864 INFO    ] Checking for camera pi updates...
[2026-08-31 09:59:28,899.899 INFO    ] 200
[2026-08-31 09:59:28,902.902 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:59:28,947.947 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:59:29,128.128 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 09:59:29,131.131 INFO    ] No camera update needed
[2026-08-31 09:59:29,133.133 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:59:29,136.136 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:59:29,142.142 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:59:29,148.148 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:59:31,191.191 INFO    ] ================================================
[2026-08-31 09:59:31,206.206 INFO    ] Launching Daemon at Mon Aug 31 09:59:31 IST 2026
[2026-08-31 09:59:31,216.216 INFO    ] ================================================
[2026-08-31 09:59:31,920.920 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:59:31
[2026-08-31 09:59:32,627.627 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:59:32,931.931 INFO    ] Initializing speech engine...
[2026-08-31 09:59:32,941.941 INFO    ] 2026-08-31 09:59:32
[2026-08-31 09:59:33,216.216 INFO    ] 2026-08-31 09:59:33
[2026-08-31 09:59:33,270.270 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:59:33,499.499 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:59:33,506.506 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:59:33,724.724 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:59:33,765.765 INFO    ] time= 31/08/2026 09:59:33
[2026-08-31 09:59:33,771.771 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:59:33,793.793 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:59:33,923.923 INFO    ] No existing commands found in stream
[2026-08-31 09:59:38,935.935 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:59:38,939.939 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-08-31 09:59:41,855.855 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 09:59:41,858.858 INFO    ] Checking for system updates...
[2026-08-31 09:59:41,899.899 INFO    ] 200
[2026-08-31 09:59:41,901.901 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:59:41,962.962 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:59:41,965.965 INFO    ] No update needed
[2026-08-31 09:59:41,968.968 INFO    ] Checking for camera pi updates...
[2026-08-31 09:59:42,003.003 INFO    ] 200
[2026-08-31 09:59:42,006.006 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:59:42,047.047 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:59:42,101.101 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:59:42,104.104 INFO    ] No camera update needed
[2026-08-31 09:59:42,106.106 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:59:42,108.108 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:59:42,114.114 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:59:42,119.119 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:59:44,159.159 INFO    ] ================================================
[2026-08-31 09:59:44,174.174 INFO    ] Launching Daemon at Mon Aug 31 09:59:44 IST 2026
[2026-08-31 09:59:44,184.184 INFO    ] ================================================
[2026-08-31 09:59:44,811.811 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:59:44
[2026-08-31 09:59:45,470.470 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:59:45,767.767 INFO    ] Initializing speech engine...
[2026-08-31 09:59:45,773.773 INFO    ] 2026-08-31 09:59:45
[2026-08-31 09:59:46,050.050 INFO    ] 2026-08-31 09:59:46
[2026-08-31 09:59:46,103.103 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 09:59:46,324.324 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 09:59:46,335.335 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 09:59:46,469.469 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 09:59:46,529.529 INFO    ] time= 31/08/2026 09:59:46
[2026-08-31 09:59:46,594.594 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 09:59:46,603.603 INFO    ] Checking for existing commands in stream...
[2026-08-31 09:59:46,739.739 INFO    ] No existing commands found in stream
[2026-08-31 09:59:51,761.761 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 09:59:51,764.764 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-08-31 09:59:55,751.751 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 09:59:55,754.754 INFO    ] Checking for system updates...
[2026-08-31 09:59:55,791.791 INFO    ] 200
[2026-08-31 09:59:55,794.794 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:59:55,846.846 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:59:55,849.849 INFO    ] No update needed
[2026-08-31 09:59:55,851.851 INFO    ] Checking for camera pi updates...
[2026-08-31 09:59:55,884.884 INFO    ] 200
[2026-08-31 09:59:55,887.887 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 09:59:55,932.932 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 09:59:56,021.021 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 09:59:56,023.023 INFO    ] No camera update needed
[2026-08-31 09:59:56,026.026 INFO    ] Script finished. Safe exiting...
[2026-08-31 09:59:56,028.028 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 09:59:56,033.033 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 09:59:56,038.038 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 09:59:58,077.077 INFO    ] ================================================
[2026-08-31 09:59:58,092.092 INFO    ] Launching Daemon at Mon Aug 31 09:59:58 IST 2026
[2026-08-31 09:59:58,102.102 INFO    ] ================================================
[2026-08-31 09:59:58,678.678 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 09:59:58
[2026-08-31 09:59:59,264.264 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 09:59:59,533.533 INFO    ] Initializing speech engine...
[2026-08-31 09:59:59,552.552 INFO    ] 2026-08-31 09:59:59
[2026-08-31 09:59:59,817.817 INFO    ] 2026-08-31 09:59:59
[2026-08-31 09:59:59,855.855 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:00:00,051.051 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:00:00,064.064 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:00:00,299.299 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:00:00,311.311 INFO    ] time= 31/08/2026 10:00:00
[2026-08-31 10:00:00,350.350 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:00:00,399.399 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:00:00,504.504 INFO    ] No existing commands found in stream
[2026-08-31 10:00:05,524.524 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:00:05,528.528 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-08-31 10:00:09,546.546 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 10:00:09,549.549 INFO    ] Checking for system updates...
[2026-08-31 10:00:09,585.585 INFO    ] 200
[2026-08-31 10:00:09,588.588 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:00:09,640.640 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:00:09,643.643 INFO    ] No update needed
[2026-08-31 10:00:09,645.645 INFO    ] Checking for camera pi updates...
[2026-08-31 10:00:09,679.679 INFO    ] 200
[2026-08-31 10:00:09,681.681 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:00:09,721.721 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:00:09,801.801 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:00:09,803.803 INFO    ] No camera update needed
[2026-08-31 10:00:09,806.806 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:00:09,808.808 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:00:09,813.813 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:00:09,818.818 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:00:11,860.860 INFO    ] ================================================
[2026-08-31 10:00:11,875.875 INFO    ] Launching Daemon at Mon Aug 31 10:00:11 IST 2026
[2026-08-31 10:00:11,886.886 INFO    ] ================================================
[2026-08-31 10:00:12,468.468 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:00:12
[2026-08-31 10:00:13,067.067 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:00:13,338.338 INFO    ] Initializing speech engine...
[2026-08-31 10:00:13,354.354 INFO    ] 2026-08-31 10:00:13
[2026-08-31 10:00:13,610.610 INFO    ] 2026-08-31 10:00:13
[2026-08-31 10:00:13,645.645 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:00:13,842.842 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:00:13,900.900 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:00:14,106.106 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:00:14,165.165 INFO    ] time= 31/08/2026 10:00:14
[2026-08-31 10:00:14,172.172 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:00:14,190.190 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:00:14,321.321 INFO    ] No existing commands found in stream
[2026-08-31 10:00:19,336.336 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:00:19,339.339 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-08-31 10:00:23,443.443 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 10:00:23,445.445 INFO    ] Checking for system updates...
[2026-08-31 10:00:23,481.481 INFO    ] 200
[2026-08-31 10:00:23,484.484 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:00:23,541.541 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:00:23,543.543 INFO    ] No update needed
[2026-08-31 10:00:23,545.545 INFO    ] Checking for camera pi updates...
[2026-08-31 10:00:23,578.578 INFO    ] 200
[2026-08-31 10:00:23,581.581 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:00:23,622.622 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:00:23,701.701 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:00:23,704.704 INFO    ] No camera update needed
[2026-08-31 10:00:23,706.706 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:00:23,708.708 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:00:23,714.714 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:00:23,719.719 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:00:25,760.760 INFO    ] ================================================
[2026-08-31 10:00:25,776.776 INFO    ] Launching Daemon at Mon Aug 31 10:00:25 IST 2026
[2026-08-31 10:00:25,786.786 INFO    ] ================================================
[2026-08-31 10:00:26,412.412 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:00:26
[2026-08-31 10:00:27,059.059 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:00:27,351.351 INFO    ] Initializing speech engine...
[2026-08-31 10:00:27,364.364 INFO    ] 2026-08-31 10:00:27
[2026-08-31 10:00:27,671.671 INFO    ] 2026-08-31 10:00:27
[2026-08-31 10:00:27,755.755 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:00:28,031.031 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:00:28,092.092 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:00:28,236.236 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:00:28,299.299 INFO    ] time= 31/08/2026 10:00:28
[2026-08-31 10:00:28,326.326 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:00:28,380.380 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:00:28,483.483 INFO    ] No existing commands found in stream
[2026-08-31 10:00:33,493.493 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:00:33,496.496 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-08-31 10:00:34,286.286 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 10:00:34,289.289 INFO    ] Checking for system updates...
[2026-08-31 10:00:34,328.328 INFO    ] 200
[2026-08-31 10:00:34,331.331 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:00:34,383.383 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:00:34,386.386 INFO    ] No update needed
[2026-08-31 10:00:34,389.389 INFO    ] Checking for camera pi updates...
[2026-08-31 10:00:34,423.423 INFO    ] 200
[2026-08-31 10:00:34,425.425 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:00:34,467.467 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:00:34,551.551 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:00:34,554.554 INFO    ] No camera update needed
[2026-08-31 10:00:34,557.557 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:00:34,559.559 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:00:34,565.565 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:00:34,571.571 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:00:36,613.613 INFO    ] ================================================
[2026-08-31 10:00:36,629.629 INFO    ] Launching Daemon at Mon Aug 31 10:00:36 IST 2026
[2026-08-31 10:00:36,639.639 INFO    ] ================================================
[2026-08-31 10:00:37,283.283 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:00:37
[2026-08-31 10:00:37,913.913 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:00:38,160.160 INFO    ] Initializing speech engine...
[2026-08-31 10:00:38,181.181 INFO    ] 2026-08-31 10:00:38
[2026-08-31 10:00:38,433.433 INFO    ] 2026-08-31 10:00:38
[2026-08-31 10:00:38,463.463 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:00:38,657.657 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:00:38,670.670 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:00:38,817.817 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:00:38,822.822 INFO    ] time= 31/08/2026 10:00:38
[2026-08-31 10:00:38,828.828 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:00:38,874.874 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:00:39,011.011 INFO    ] No existing commands found in stream
[2026-08-31 10:00:44,033.033 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:00:44,036.036 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-08-31 10:00:44,814.814 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 10:00:44,816.816 INFO    ] Checking for system updates...
[2026-08-31 10:00:44,852.852 INFO    ] 200
[2026-08-31 10:00:44,854.854 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:00:44,913.913 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:00:44,916.916 INFO    ] No update needed
[2026-08-31 10:00:44,919.919 INFO    ] Checking for camera pi updates...
[2026-08-31 10:00:44,952.952 INFO    ] 200
[2026-08-31 10:00:44,955.955 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:00:44,996.996 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:00:45,080.080 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:00:45,082.082 INFO    ] No camera update needed
[2026-08-31 10:00:45,085.085 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:00:45,087.087 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:00:45,092.092 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:00:45,097.097 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:00:47,140.140 INFO    ] ================================================
[2026-08-31 10:00:47,156.156 INFO    ] Launching Daemon at Mon Aug 31 10:00:47 IST 2026
[2026-08-31 10:00:47,167.167 INFO    ] ================================================
[2026-08-31 10:00:47,786.786 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:00:47
[2026-08-31 10:00:48,409.409 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:00:48,697.697 INFO    ] Initializing speech engine...
[2026-08-31 10:00:48,700.700 INFO    ] 2026-08-31 10:00:48
[2026-08-31 10:00:48,990.990 INFO    ] 2026-08-31 10:00:48
[2026-08-31 10:00:49,027.027 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:00:49,290.290 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:00:49,297.297 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:00:49,528.528 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:00:49,559.559 INFO    ] time= 31/08/2026 10:00:49
[2026-08-31 10:00:49,577.577 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:00:49,586.586 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:00:49,687.687 INFO    ] No existing commands found in stream
[2026-08-31 10:00:54,718.718 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:00:54,723.723 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-08-31 10:00:55,424.424 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 10:00:55,428.428 INFO    ] Checking for system updates...
[2026-08-31 10:00:55,469.469 INFO    ] 200
[2026-08-31 10:00:55,472.472 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:00:55,539.539 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:00:55,542.542 INFO    ] No update needed
[2026-08-31 10:00:55,545.545 INFO    ] Checking for camera pi updates...
[2026-08-31 10:00:55,582.582 INFO    ] 200
[2026-08-31 10:00:55,586.586 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:00:55,638.638 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:00:55,728.728 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:00:55,731.731 INFO    ] No camera update needed
[2026-08-31 10:00:55,734.734 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:00:55,736.736 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:00:55,743.743 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:00:55,749.749 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:00:57,793.793 INFO    ] ================================================
[2026-08-31 10:00:57,808.808 INFO    ] Launching Daemon at Mon Aug 31 10:00:57 IST 2026
[2026-08-31 10:00:57,819.819 INFO    ] ================================================
[2026-08-31 10:00:58,411.411 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:00:58
[2026-08-31 10:00:59,011.011 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:00:59,284.284 INFO    ] Initializing speech engine...
[2026-08-31 10:00:59,293.293 INFO    ] 2026-08-31 10:00:59
[2026-08-31 10:00:59,544.544 INFO    ] 2026-08-31 10:00:59
[2026-08-31 10:00:59,581.581 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:00:59,840.840 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:00:59,849.849 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:01:00,062.062 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:01:00,114.114 INFO    ] time= 31/08/2026 10:01:00
[2026-08-31 10:01:00,122.122 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:01:00,143.143 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:01:00,251.251 INFO    ] No existing commands found in stream
[2026-08-31 10:01:05,287.287 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:01:05,290.290 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-08-31 10:01:09,214.214 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 10:01:09,216.216 INFO    ] Checking for system updates...
[2026-08-31 10:01:09,252.252 INFO    ] 200
[2026-08-31 10:01:09,254.254 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:01:09,306.306 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:01:09,308.308 INFO    ] No update needed
[2026-08-31 10:01:09,311.311 INFO    ] Checking for camera pi updates...
[2026-08-31 10:01:09,345.345 INFO    ] 200
[2026-08-31 10:01:09,347.347 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:01:09,392.392 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:01:09,483.483 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:01:09,485.485 INFO    ] No camera update needed
[2026-08-31 10:01:09,488.488 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:01:09,490.490 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:01:09,495.495 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:01:09,501.501 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:01:11,543.543 INFO    ] ================================================
[2026-08-31 10:01:11,558.558 INFO    ] Launching Daemon at Mon Aug 31 10:01:11 IST 2026
[2026-08-31 10:01:11,569.569 INFO    ] ================================================
[2026-08-31 10:01:12,134.134 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:01:12
[2026-08-31 10:01:12,719.719 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:01:12,990.990 INFO    ] Initializing speech engine...
[2026-08-31 10:01:12,999.999 INFO    ] 2026-08-31 10:01:12
[2026-08-31 10:01:13,255.255 INFO    ] 2026-08-31 10:01:13
[2026-08-31 10:01:13,284.284 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:01:13,534.534 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:01:13,540.540 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:01:13,753.753 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:01:13,803.803 INFO    ] time= 31/08/2026 10:01:13
[2026-08-31 10:01:13,839.839 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:01:13,846.846 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:01:13,968.968 INFO    ] No existing commands found in stream
[2026-08-31 10:01:18,986.986 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:01:18,989.989 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-08-31 10:01:22,045.045 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 10:01:22,047.047 INFO    ] Checking for system updates...
[2026-08-31 10:01:22,083.083 INFO    ] 200
[2026-08-31 10:01:22,085.085 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:01:22,137.137 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:01:22,140.140 INFO    ] No update needed
[2026-08-31 10:01:22,142.142 INFO    ] Checking for camera pi updates...
[2026-08-31 10:01:22,176.176 INFO    ] 200
[2026-08-31 10:01:22,179.179 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:01:22,219.219 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:01:22,313.313 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:01:22,316.316 INFO    ] No camera update needed
[2026-08-31 10:01:22,318.318 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:01:22,321.321 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:01:22,326.326 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:01:22,331.331 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:01:24,372.372 INFO    ] ================================================
[2026-08-31 10:01:24,387.387 INFO    ] Launching Daemon at Mon Aug 31 10:01:24 IST 2026
[2026-08-31 10:01:24,398.398 INFO    ] ================================================
[2026-08-31 10:01:24,970.970 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:01:24
[2026-08-31 10:01:25,559.559 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:01:25,823.823 INFO    ] Initializing speech engine...
[2026-08-31 10:01:25,837.837 INFO    ] 2026-08-31 10:01:25
[2026-08-31 10:01:26,122.122 INFO    ] 2026-08-31 10:01:26
[2026-08-31 10:01:26,157.157 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:01:26,352.352 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:01:26,359.359 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:01:26,533.533 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:01:26,540.540 INFO    ] time= 31/08/2026 10:01:26
[2026-08-31 10:01:26,545.545 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:01:26,568.568 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:01:26,718.718 INFO    ] No existing commands found in stream
[2026-08-31 10:01:31,748.748 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:01:31,751.751 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-08-31 10:01:33,984.984 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 10:01:33,987.987 INFO    ] Checking for system updates...
[2026-08-31 10:01:34,026.026 INFO    ] 200
[2026-08-31 10:01:34,028.028 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:01:34,081.081 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:01:34,083.083 INFO    ] No update needed
[2026-08-31 10:01:34,086.086 INFO    ] Checking for camera pi updates...
[2026-08-31 10:01:34,119.119 INFO    ] 200
[2026-08-31 10:01:34,121.121 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:01:34,165.165 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:01:34,258.258 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:01:34,261.261 INFO    ] No camera update needed
[2026-08-31 10:01:34,263.263 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:01:34,265.265 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:01:34,271.271 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:01:34,275.275 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:01:36,316.316 INFO    ] ================================================
[2026-08-31 10:01:36,331.331 INFO    ] Launching Daemon at Mon Aug 31 10:01:36 IST 2026
[2026-08-31 10:01:36,342.342 INFO    ] ================================================
[2026-08-31 10:01:36,921.921 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:01:36
[2026-08-31 10:01:37,522.522 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:01:37,797.797 INFO    ] Initializing speech engine...
[2026-08-31 10:01:37,818.818 INFO    ] 2026-08-31 10:01:37
[2026-08-31 10:01:38,090.090 INFO    ] 2026-08-31 10:01:38
[2026-08-31 10:01:38,125.125 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:01:38,323.323 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:01:38,336.336 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:01:38,500.500 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:01:38,509.509 INFO    ] time= 31/08/2026 10:01:38
[2026-08-31 10:01:38,516.516 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:01:38,539.539 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:01:38,673.673 INFO    ] No existing commands found in stream
[2026-08-31 10:01:43,693.693 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:01:43,696.696 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-08-31 10:01:47,501.501 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 10:01:47,503.503 INFO    ] Checking for system updates...
[2026-08-31 10:01:47,540.540 INFO    ] 200
[2026-08-31 10:01:47,543.543 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:01:47,597.597 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:01:47,600.600 INFO    ] No update needed
[2026-08-31 10:01:47,602.602 INFO    ] Checking for camera pi updates...
[2026-08-31 10:01:47,637.637 INFO    ] 200
[2026-08-31 10:01:47,640.640 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:01:47,681.681 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:01:47,766.766 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:01:47,769.769 INFO    ] No camera update needed
[2026-08-31 10:01:47,772.772 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:01:47,774.774 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:01:47,780.780 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:01:47,786.786 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:01:49,829.829 INFO    ] ================================================
[2026-08-31 10:01:49,851.851 INFO    ] Launching Daemon at Mon Aug 31 10:01:49 IST 2026
[2026-08-31 10:01:49,862.862 INFO    ] ================================================
[2026-08-31 10:01:50,431.431 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:01:50
[2026-08-31 10:01:51,018.018 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:01:51,277.277 INFO    ] Initializing speech engine...
[2026-08-31 10:01:51,283.283 INFO    ] 2026-08-31 10:01:51
[2026-08-31 10:01:51,573.573 INFO    ] 2026-08-31 10:01:51
[2026-08-31 10:01:51,609.609 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:01:51,807.807 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:01:51,819.819 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:01:51,982.982 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:01:51,991.991 INFO    ] time= 31/08/2026 10:01:51
[2026-08-31 10:01:51,998.998 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:01:52,057.057 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:01:52,211.211 INFO    ] No existing commands found in stream
[2026-08-31 10:01:57,219.219 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:01:57,222.222 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-08-31 10:01:58,283.283 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 10:01:58,286.286 INFO    ] Checking for system updates...
[2026-08-31 10:01:58,329.329 INFO    ] 200
[2026-08-31 10:01:58,331.331 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-08-31 10:01:58,334.334 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-08-31 10:01:58,336.336 INFO    ] Checking for camera pi updates...
[2026-08-31 10:01:58,369.369 INFO    ] 200
[2026-08-31 10:01:58,372.372 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-08-31 10:01:58,375.375 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-08-31 10:01:58,377.377 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:01:58,379.379 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:01:58,385.385 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:01:58,389.389 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:02:00,431.431 INFO    ] ================================================
[2026-08-31 10:02:00,447.447 INFO    ] Launching Daemon at Mon Aug 31 10:02:00 IST 2026
[2026-08-31 10:02:00,459.459 INFO    ] ================================================
[2026-08-31 10:02:01,126.126 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:02:01
[2026-08-31 10:02:01,813.813 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:02:02,411.411 INFO    ] Initializing speech engine...
[2026-08-31 10:02:02,415.415 INFO    ] 2026-08-31 10:02:02
[2026-08-31 10:02:02,784.784 INFO    ] 2026-08-31 10:02:02
[2026-08-31 10:02:02,824.824 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:02:03,097.097 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:02:03,164.164 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:02:03,388.388 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:02:03,456.456 INFO    ] time= 31/08/2026 10:02:03
[2026-08-31 10:02:03,497.497 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:02:03,534.534 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:02:03,684.684 INFO    ] No existing commands found in stream
[2026-08-31 10:02:08,698.698 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:02:08,700.700 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-08-31 10:02:12,052.052 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 10:02:12,055.055 INFO    ] Checking for system updates...
[2026-08-31 10:02:12,090.090 INFO    ] 200
[2026-08-31 10:02:12,093.093 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:02:12,145.145 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:02:12,148.148 INFO    ] No update needed
[2026-08-31 10:02:12,151.151 INFO    ] Checking for camera pi updates...
[2026-08-31 10:02:12,184.184 INFO    ] 200
[2026-08-31 10:02:12,186.186 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:02:12,226.226 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:02:12,315.315 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:02:12,318.318 INFO    ] No camera update needed
[2026-08-31 10:02:12,320.320 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:02:12,323.323 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:02:12,328.328 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:02:12,333.333 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:02:14,373.373 INFO    ] ================================================
[2026-08-31 10:02:14,389.389 INFO    ] Launching Daemon at Mon Aug 31 10:02:14 IST 2026
[2026-08-31 10:02:14,400.400 INFO    ] ================================================
[2026-08-31 10:02:14,991.991 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:02:14
[2026-08-31 10:02:15,664.664 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:02:15,974.974 INFO    ] Initializing speech engine...
[2026-08-31 10:02:15,985.985 INFO    ] 2026-08-31 10:02:15
[2026-08-31 10:02:16,295.295 INFO    ] 2026-08-31 10:02:16
[2026-08-31 10:02:16,381.381 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:02:16,596.596 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:02:16,611.611 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:02:16,798.798 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:02:16,820.820 INFO    ] time= 31/08/2026 10:02:16
[2026-08-31 10:02:16,846.846 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:02:16,854.854 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:02:16,976.976 INFO    ] No existing commands found in stream
[2026-08-31 10:02:22,007.007 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:02:22,010.010 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-08-31 10:02:26,149.149 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 10:02:26,152.152 INFO    ] Checking for system updates...
[2026-08-31 10:02:26,190.190 INFO    ] 200
[2026-08-31 10:02:26,193.193 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:02:26,246.246 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:02:26,248.248 INFO    ] No update needed
[2026-08-31 10:02:26,251.251 INFO    ] Checking for camera pi updates...
[2026-08-31 10:02:26,284.284 INFO    ] 200
[2026-08-31 10:02:26,286.286 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:02:26,327.327 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:02:26,407.407 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:02:26,410.410 INFO    ] No camera update needed
[2026-08-31 10:02:26,412.412 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:02:26,414.414 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:02:26,420.420 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:02:26,425.425 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:02:28,466.466 INFO    ] ================================================
[2026-08-31 10:02:28,482.482 INFO    ] Launching Daemon at Mon Aug 31 10:02:28 IST 2026
[2026-08-31 10:02:28,493.493 INFO    ] ================================================
[2026-08-31 10:02:29,076.076 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:02:29
[2026-08-31 10:02:29,677.677 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:02:29,955.955 INFO    ] Initializing speech engine...
[2026-08-31 10:02:29,961.961 INFO    ] 2026-08-31 10:02:29
[2026-08-31 10:02:30,212.212 INFO    ] 2026-08-31 10:02:30
[2026-08-31 10:02:30,247.247 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:02:30,563.563 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:02:30,568.568 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:02:30,762.762 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:02:30,770.770 INFO    ] time= 31/08/2026 10:02:30
[2026-08-31 10:02:30,787.787 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:02:30,816.816 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:02:30,920.920 INFO    ] No existing commands found in stream
[2026-08-31 10:02:35,934.934 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:02:35,937.937 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-08-31 10:02:39,104.104 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 10:02:39,107.107 INFO    ] Checking for system updates...
[2026-08-31 10:02:39,143.143 INFO    ] 200
[2026-08-31 10:02:39,146.146 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:02:39,199.199 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:02:39,201.201 INFO    ] No update needed
[2026-08-31 10:02:39,204.204 INFO    ] Checking for camera pi updates...
[2026-08-31 10:02:39,238.238 INFO    ] 200
[2026-08-31 10:02:39,241.241 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:02:39,283.283 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:02:39,392.392 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:02:39,395.395 INFO    ] No camera update needed
[2026-08-31 10:02:39,397.397 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:02:39,400.400 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:02:39,405.405 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:02:39,410.410 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:02:41,450.450 INFO    ] ================================================
[2026-08-31 10:02:41,465.465 INFO    ] Launching Daemon at Mon Aug 31 10:02:41 IST 2026
[2026-08-31 10:02:41,476.476 INFO    ] ================================================
[2026-08-31 10:02:42,139.139 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:02:42
[2026-08-31 10:02:42,822.822 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:02:43,132.132 INFO    ] Initializing speech engine...
[2026-08-31 10:02:43,140.140 INFO    ] 2026-08-31 10:02:43
[2026-08-31 10:02:43,432.432 INFO    ] 2026-08-31 10:02:43
[2026-08-31 10:02:43,478.478 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:02:43,731.731 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:02:43,738.738 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:02:43,940.940 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:02:43,980.980 INFO    ] time= 31/08/2026 10:02:43
[2026-08-31 10:02:43,986.986 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:02:44,009.009 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:02:44,138.138 INFO    ] No existing commands found in stream
[2026-08-31 10:02:49,152.152 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:02:49,155.155 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-08-31 10:02:53,571.571 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 10:02:53,574.574 INFO    ] Checking for system updates...
[2026-08-31 10:02:53,616.616 INFO    ] 200
[2026-08-31 10:02:53,619.619 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:02:53,671.671 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:02:53,673.673 INFO    ] No update needed
[2026-08-31 10:02:53,676.676 INFO    ] Checking for camera pi updates...
[2026-08-31 10:02:53,709.709 INFO    ] 200
[2026-08-31 10:02:53,711.711 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:02:53,751.751 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:02:53,853.853 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:02:53,856.856 INFO    ] No camera update needed
[2026-08-31 10:02:53,858.858 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:02:53,861.861 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:02:53,866.866 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:02:53,871.871 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:02:55,913.913 INFO    ] ================================================
[2026-08-31 10:02:55,929.929 INFO    ] Launching Daemon at Mon Aug 31 10:02:55 IST 2026
[2026-08-31 10:02:55,940.940 INFO    ] ================================================
[2026-08-31 10:02:56,508.508 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:02:56
[2026-08-31 10:02:57,093.093 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:02:57,354.354 INFO    ] Initializing speech engine...
[2026-08-31 10:02:57,372.372 INFO    ] 2026-08-31 10:02:57
[2026-08-31 10:02:57,624.624 INFO    ] 2026-08-31 10:02:57
[2026-08-31 10:02:57,690.690 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:02:57,921.921 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:02:57,928.928 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:02:58,064.064 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:02:58,098.098 INFO    ] time= 31/08/2026 10:02:58
[2026-08-31 10:02:58,147.147 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:02:58,196.196 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:02:58,333.333 INFO    ] No existing commands found in stream
[2026-08-31 10:03:03,358.358 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:03:03,361.361 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-08-31 10:03:07,698.698 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 10:03:07,701.701 INFO    ] Checking for system updates...
[2026-08-31 10:03:07,737.737 INFO    ] 200
[2026-08-31 10:03:07,739.739 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:03:07,793.793 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:03:07,795.795 INFO    ] No update needed
[2026-08-31 10:03:07,797.797 INFO    ] Checking for camera pi updates...
[2026-08-31 10:03:07,835.835 INFO    ] 200
[2026-08-31 10:03:07,838.838 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:03:07,878.878 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:03:07,960.960 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:03:07,963.963 INFO    ] No camera update needed
[2026-08-31 10:03:07,965.965 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:03:07,967.967 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:03:07,973.973 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:03:07,978.978 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:03:10,021.021 INFO    ] ================================================
[2026-08-31 10:03:10,037.037 INFO    ] Launching Daemon at Mon Aug 31 10:03:10 IST 2026
[2026-08-31 10:03:10,048.048 INFO    ] ================================================
[2026-08-31 10:03:10,631.631 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:03:10
[2026-08-31 10:03:11,232.232 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:03:11,511.511 INFO    ] Initializing speech engine...
[2026-08-31 10:03:11,517.517 INFO    ] 2026-08-31 10:03:11
[2026-08-31 10:03:11,778.778 INFO    ] 2026-08-31 10:03:11
[2026-08-31 10:03:11,834.834 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:03:12,060.060 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:03:12,066.066 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:03:12,300.300 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:03:12,325.325 INFO    ] time= 31/08/2026 10:03:12
[2026-08-31 10:03:12,341.341 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:03:12,351.351 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:03:12,483.483 INFO    ] No existing commands found in stream
[2026-08-31 10:03:17,499.499 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:03:17,501.501 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-08-31 10:03:19,549.549 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 10:03:19,551.551 INFO    ] Checking for system updates...
[2026-08-31 10:03:19,588.588 INFO    ] 200
[2026-08-31 10:03:19,591.591 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:03:19,654.654 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:03:19,657.657 INFO    ] No update needed
[2026-08-31 10:03:19,660.660 INFO    ] Checking for camera pi updates...
[2026-08-31 10:03:19,699.699 INFO    ] 200
[2026-08-31 10:03:19,702.702 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:03:19,744.744 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:03:19,842.842 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:03:19,845.845 INFO    ] No camera update needed
[2026-08-31 10:03:19,848.848 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:03:19,851.851 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:03:19,857.857 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:03:19,863.863 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:03:21,906.906 INFO    ] ================================================
[2026-08-31 10:03:21,921.921 INFO    ] Launching Daemon at Mon Aug 31 10:03:21 IST 2026
[2026-08-31 10:03:21,932.932 INFO    ] ================================================
[2026-08-31 10:03:22,504.504 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:03:22
[2026-08-31 10:03:23,084.084 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:03:23,370.370 INFO    ] Initializing speech engine...
[2026-08-31 10:03:23,384.384 INFO    ] 2026-08-31 10:03:23
[2026-08-31 10:03:23,697.697 INFO    ] 2026-08-31 10:03:23
[2026-08-31 10:03:23,779.779 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:03:24,056.056 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:03:24,111.111 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:03:24,358.358 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:03:24,419.419 INFO    ] time= 31/08/2026 10:03:24
[2026-08-31 10:03:24,476.476 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:03:24,532.532 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:03:24,665.665 INFO    ] No existing commands found in stream
[2026-08-31 10:03:29,680.680 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:03:29,683.683 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-08-31 10:03:31,144.144 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 10:03:31,147.147 INFO    ] Checking for system updates...
[2026-08-31 10:03:31,193.193 INFO    ] 200
[2026-08-31 10:03:31,196.196 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:03:31,261.261 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:03:31,264.264 INFO    ] No update needed
[2026-08-31 10:03:31,267.267 INFO    ] Checking for camera pi updates...
[2026-08-31 10:03:31,304.304 INFO    ] 200
[2026-08-31 10:03:31,307.307 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:03:31,353.353 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:03:31,465.465 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:03:31,468.468 INFO    ] No camera update needed
[2026-08-31 10:03:31,471.471 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:03:31,474.474 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:03:31,480.480 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:03:31,486.486 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:03:33,526.526 INFO    ] ================================================
[2026-08-31 10:03:33,542.542 INFO    ] Launching Daemon at Mon Aug 31 10:03:33 IST 2026
[2026-08-31 10:03:33,553.553 INFO    ] ================================================
[2026-08-31 10:03:34,119.119 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:03:34
[2026-08-31 10:03:34,710.710 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:03:34,970.970 INFO    ] Initializing speech engine...
[2026-08-31 10:03:34,985.985 INFO    ] 2026-08-31 10:03:34
[2026-08-31 10:03:35,270.270 INFO    ] 2026-08-31 10:03:35
[2026-08-31 10:03:35,314.314 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:03:35,522.522 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:03:35,540.540 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:03:35,689.689 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:03:35,696.696 INFO    ] time= 31/08/2026 10:03:35
[2026-08-31 10:03:35,705.705 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:03:35,712.712 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:03:35,785.785 INFO    ] No existing commands found in stream
[2026-08-31 10:03:40,797.797 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:03:40,800.800 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-08-31 10:03:41,529.529 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 10:03:41,532.532 INFO    ] Checking for system updates...
[2026-08-31 10:03:41,567.567 INFO    ] 200
[2026-08-31 10:03:41,569.569 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:03:41,621.621 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:03:41,623.623 INFO    ] No update needed
[2026-08-31 10:03:41,626.626 INFO    ] Checking for camera pi updates...
[2026-08-31 10:03:41,659.659 INFO    ] 200
[2026-08-31 10:03:41,661.661 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:03:41,701.701 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:03:41,886.886 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:03:41,889.889 INFO    ] No camera update needed
[2026-08-31 10:03:41,891.891 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:03:41,894.894 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:03:41,899.899 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:03:41,904.904 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:03:43,946.946 INFO    ] ================================================
[2026-08-31 10:03:43,962.962 INFO    ] Launching Daemon at Mon Aug 31 10:03:43 IST 2026
[2026-08-31 10:03:43,973.973 INFO    ] ================================================
[2026-08-31 10:03:44,562.562 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:03:44
[2026-08-31 10:03:45,179.179 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:03:45,485.485 INFO    ] Initializing speech engine...
[2026-08-31 10:03:45,495.495 INFO    ] 2026-08-31 10:03:45
[2026-08-31 10:03:45,770.770 INFO    ] 2026-08-31 10:03:45
[2026-08-31 10:03:45,828.828 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:03:46,060.060 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:03:46,067.067 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:03:46,282.282 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:03:46,329.329 INFO    ] time= 31/08/2026 10:03:46
[2026-08-31 10:03:46,335.335 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:03:46,354.354 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:03:46,485.485 INFO    ] No existing commands found in stream
[2026-08-31 10:03:51,505.505 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:03:51,508.508 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-08-31 10:03:55,451.451 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 10:03:55,454.454 INFO    ] Checking for system updates...
[2026-08-31 10:03:55,491.491 INFO    ] 200
[2026-08-31 10:03:55,493.493 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:03:55,548.548 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:03:55,550.550 INFO    ] No update needed
[2026-08-31 10:03:55,553.553 INFO    ] Checking for camera pi updates...
[2026-08-31 10:03:55,588.588 INFO    ] 200
[2026-08-31 10:03:55,591.591 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:03:55,633.633 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:03:55,714.714 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:03:55,717.717 INFO    ] No camera update needed
[2026-08-31 10:03:55,720.720 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:03:55,723.723 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:03:55,729.729 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:03:55,735.735 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:03:57,776.776 INFO    ] ================================================
[2026-08-31 10:03:57,791.791 INFO    ] Launching Daemon at Mon Aug 31 10:03:57 IST 2026
[2026-08-31 10:03:57,803.803 INFO    ] ================================================
[2026-08-31 10:03:58,380.380 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:03:58
[2026-08-31 10:03:58,983.983 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:03:59,244.244 INFO    ] Initializing speech engine...
[2026-08-31 10:03:59,268.268 INFO    ] 2026-08-31 10:03:59
[2026-08-31 10:03:59,552.552 INFO    ] 2026-08-31 10:03:59
[2026-08-31 10:03:59,588.588 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:03:59,812.812 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:03:59,862.862 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:04:00,042.042 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:04:00,049.049 INFO    ] time= 31/08/2026 10:04:00
[2026-08-31 10:04:00,110.110 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:04:00,159.159 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:04:00,312.312 INFO    ] No existing commands found in stream
[2026-08-31 10:04:05,338.338 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:04:05,341.341 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-08-31 10:04:09,017.017 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 10:04:09,020.020 INFO    ] Checking for system updates...
[2026-08-31 10:04:09,056.056 INFO    ] 200
[2026-08-31 10:04:09,059.059 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:04:09,118.118 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:04:09,121.121 INFO    ] No update needed
[2026-08-31 10:04:09,123.123 INFO    ] Checking for camera pi updates...
[2026-08-31 10:04:09,160.160 INFO    ] 200
[2026-08-31 10:04:09,163.163 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:04:09,204.204 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:04:09,304.304 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:04:09,306.306 INFO    ] No camera update needed
[2026-08-31 10:04:09,309.309 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:04:09,311.311 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:04:09,317.317 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:04:09,322.322 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:04:11,363.363 INFO    ] ================================================
[2026-08-31 10:04:11,380.380 INFO    ] Launching Daemon at Mon Aug 31 10:04:11 IST 2026
[2026-08-31 10:04:11,393.393 INFO    ] ================================================
[2026-08-31 10:04:11,960.960 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:04:11
[2026-08-31 10:04:12,543.543 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:04:12,815.815 INFO    ] Initializing speech engine...
[2026-08-31 10:04:12,824.824 INFO    ] 2026-08-31 10:04:12
[2026-08-31 10:04:13,075.075 INFO    ] 2026-08-31 10:04:13
[2026-08-31 10:04:13,142.142 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:04:13,372.372 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:04:13,376.376 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:04:13,512.512 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:04:13,559.559 INFO    ] time= 31/08/2026 10:04:13
[2026-08-31 10:04:13,618.618 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:04:13,649.649 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:04:13,770.770 INFO    ] No existing commands found in stream
[2026-08-31 10:04:18,796.796 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:04:18,799.799 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-08-31 10:04:19,296.296 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 10:04:19,299.299 INFO    ] Checking for system updates...
[2026-08-31 10:04:19,338.338 INFO    ] 200
[2026-08-31 10:04:19,341.341 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:04:19,393.393 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:04:19,397.397 INFO    ] No update needed
[2026-08-31 10:04:19,400.400 INFO    ] Checking for camera pi updates...
[2026-08-31 10:04:19,446.446 INFO    ] 200
[2026-08-31 10:04:19,449.449 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:04:19,494.494 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:04:19,584.584 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:04:19,587.587 INFO    ] No camera update needed
[2026-08-31 10:04:19,589.589 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:04:19,592.592 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:04:19,597.597 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:04:19,602.602 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:04:21,643.643 INFO    ] ================================================
[2026-08-31 10:04:21,659.659 INFO    ] Launching Daemon at Mon Aug 31 10:04:21 IST 2026
[2026-08-31 10:04:21,670.670 INFO    ] ================================================
[2026-08-31 10:04:22,324.324 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:04:22
[2026-08-31 10:04:22,999.999 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:04:23,303.303 INFO    ] Initializing speech engine...
[2026-08-31 10:04:23,312.312 INFO    ] 2026-08-31 10:04:23
[2026-08-31 10:04:23,591.591 INFO    ] 2026-08-31 10:04:23
[2026-08-31 10:04:23,645.645 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:04:23,880.880 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:04:23,885.885 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:04:24,022.022 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:04:24,093.093 INFO    ] time= 31/08/2026 10:04:24
[2026-08-31 10:04:24,148.148 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:04:24,160.160 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:04:24,299.299 INFO    ] No existing commands found in stream
[2026-08-31 10:04:29,321.321 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:04:29,324.324 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-08-31 10:04:32,284.284 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 10:04:32,287.287 INFO    ] Checking for system updates...
[2026-08-31 10:04:32,330.330 INFO    ] 200
[2026-08-31 10:04:32,333.333 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:04:32,390.390 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:04:32,392.392 INFO    ] No update needed
[2026-08-31 10:04:32,395.395 INFO    ] Checking for camera pi updates...
[2026-08-31 10:04:32,431.431 INFO    ] 200
[2026-08-31 10:04:32,434.434 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:04:32,477.477 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:04:32,526.526 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:04:32,529.529 INFO    ] No camera update needed
[2026-08-31 10:04:32,532.532 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:04:32,534.534 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:04:32,540.540 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:04:32,546.546 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:04:34,587.587 INFO    ] ================================================
[2026-08-31 10:04:34,603.603 INFO    ] Launching Daemon at Mon Aug 31 10:04:34 IST 2026
[2026-08-31 10:04:34,614.614 INFO    ] ================================================
[2026-08-31 10:04:35,180.180 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:04:35
[2026-08-31 10:04:35,762.762 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:04:36,008.008 INFO    ] Initializing speech engine...
[2026-08-31 10:04:36,021.021 INFO    ] 2026-08-31 10:04:36
[2026-08-31 10:04:36,288.288 INFO    ] 2026-08-31 10:04:36
[2026-08-31 10:04:36,322.322 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:04:36,525.525 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:04:36,583.583 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:04:36,725.725 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:04:36,732.732 INFO    ] time= 31/08/2026 10:04:36
[2026-08-31 10:04:36,792.792 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:04:36,825.825 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:04:36,916.916 INFO    ] No existing commands found in stream
[2026-08-31 10:04:41,929.929 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:04:41,931.931 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-08-31 10:04:43,830.830 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 10:04:43,833.833 INFO    ] Checking for system updates...
[2026-08-31 10:04:43,876.876 INFO    ] 200
[2026-08-31 10:04:43,879.879 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:04:43,939.939 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:04:43,942.942 INFO    ] No update needed
[2026-08-31 10:04:43,945.945 INFO    ] Checking for camera pi updates...
[2026-08-31 10:04:43,979.979 INFO    ] 200
[2026-08-31 10:04:43,982.982 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:04:44,028.028 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:04:44,129.129 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:04:44,131.131 INFO    ] No camera update needed
[2026-08-31 10:04:44,134.134 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:04:44,136.136 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:04:44,141.141 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:04:44,146.146 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:04:46,186.186 INFO    ] ================================================
[2026-08-31 10:04:46,201.201 INFO    ] Launching Daemon at Mon Aug 31 10:04:46 IST 2026
[2026-08-31 10:04:46,212.212 INFO    ] ================================================
[2026-08-31 10:04:46,866.866 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:04:46
[2026-08-31 10:04:47,540.540 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:04:47,844.844 INFO    ] Initializing speech engine...
[2026-08-31 10:04:47,851.851 INFO    ] 2026-08-31 10:04:47
[2026-08-31 10:04:48,142.142 INFO    ] 2026-08-31 10:04:48
[2026-08-31 10:04:48,182.182 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:04:48,528.528 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:04:48,551.551 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:04:48,778.778 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:04:48,818.818 INFO    ] time= 31/08/2026 10:04:48
[2026-08-31 10:04:48,866.866 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:04:48,924.924 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:04:49,082.082 INFO    ] No existing commands found in stream
[2026-08-31 10:04:54,120.120 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:04:54,123.123 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-08-31 10:04:58,325.325 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 10:04:58,329.329 INFO    ] Checking for system updates...
[2026-08-31 10:04:58,370.370 INFO    ] 200
[2026-08-31 10:04:58,373.373 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:04:58,438.438 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:04:58,441.441 INFO    ] No update needed
[2026-08-31 10:04:58,444.444 INFO    ] Checking for camera pi updates...
[2026-08-31 10:04:58,479.479 INFO    ] 200
[2026-08-31 10:04:58,482.482 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:04:58,523.523 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:04:58,590.590 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:04:58,593.593 INFO    ] No camera update needed
[2026-08-31 10:04:58,596.596 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:04:58,599.599 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:04:58,605.605 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:04:58,611.611 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:05:00,653.653 INFO    ] ================================================
[2026-08-31 10:05:00,668.668 INFO    ] Launching Daemon at Mon Aug 31 10:05:00 IST 2026
[2026-08-31 10:05:00,679.679 INFO    ] ================================================
[2026-08-31 10:05:01,250.250 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:05:01
[2026-08-31 10:05:01,833.833 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:05:02,536.536 INFO    ] Initializing speech engine...
[2026-08-31 10:05:02,540.540 INFO    ] 2026-08-31 10:05:02
[2026-08-31 10:05:02,891.891 INFO    ] 2026-08-31 10:05:02
[2026-08-31 10:05:02,968.968 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:05:03,220.220 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:05:03,237.237 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:05:03,411.411 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:05:03,421.421 INFO    ] time= 31/08/2026 10:05:03
[2026-08-31 10:05:03,443.443 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:05:03,501.501 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:05:03,557.557 INFO    ] No existing commands found in stream
[2026-08-31 10:05:08,586.586 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:05:08,590.590 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-08-31 10:05:10,165.165 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 10:05:10,168.168 INFO    ] Checking for system updates...
[2026-08-31 10:05:10,205.205 INFO    ] 200
[2026-08-31 10:05:10,208.208 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:05:10,260.260 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:05:10,263.263 INFO    ] No update needed
[2026-08-31 10:05:10,266.266 INFO    ] Checking for camera pi updates...
[2026-08-31 10:05:10,300.300 INFO    ] 200
[2026-08-31 10:05:10,303.303 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:05:10,350.350 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:05:10,433.433 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:05:10,436.436 INFO    ] No camera update needed
[2026-08-31 10:05:10,439.439 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:05:10,441.441 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:05:10,448.448 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:05:10,454.454 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:05:12,494.494 INFO    ] ================================================
[2026-08-31 10:05:12,509.509 INFO    ] Launching Daemon at Mon Aug 31 10:05:12 IST 2026
[2026-08-31 10:05:12,519.519 INFO    ] ================================================
[2026-08-31 10:05:13,085.085 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:05:13
[2026-08-31 10:05:13,670.670 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:05:13,920.920 INFO    ] Initializing speech engine...
[2026-08-31 10:05:13,927.927 INFO    ] 2026-08-31 10:05:13
[2026-08-31 10:05:14,226.226 INFO    ] 2026-08-31 10:05:14
[2026-08-31 10:05:14,251.251 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:05:14,458.458 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:05:14,474.474 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:05:14,632.632 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:05:14,643.643 INFO    ] time= 31/08/2026 10:05:14
[2026-08-31 10:05:14,648.648 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:05:14,683.683 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:05:14,802.802 INFO    ] No existing commands found in stream
[2026-08-31 10:05:19,827.827 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:05:19,830.830 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-08-31 10:05:21,614.614 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 10:05:21,617.617 INFO    ] Checking for system updates...
[2026-08-31 10:05:21,653.653 INFO    ] 200
[2026-08-31 10:05:21,655.655 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:05:21,710.710 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:05:21,713.713 INFO    ] No update needed
[2026-08-31 10:05:21,715.715 INFO    ] Checking for camera pi updates...
[2026-08-31 10:05:21,756.756 INFO    ] 200
[2026-08-31 10:05:21,758.758 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:05:21,799.799 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:05:21,881.881 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:05:21,883.883 INFO    ] No camera update needed
[2026-08-31 10:05:21,885.885 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:05:21,888.888 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:05:21,893.893 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:05:21,898.898 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:05:23,938.938 INFO    ] ================================================
[2026-08-31 10:05:23,953.953 INFO    ] Launching Daemon at Mon Aug 31 10:05:23 IST 2026
[2026-08-31 10:05:23,964.964 INFO    ] ================================================
[2026-08-31 10:05:24,536.536 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:05:24
[2026-08-31 10:05:25,131.131 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:05:25,438.438 INFO    ] Initializing speech engine...
[2026-08-31 10:05:25,446.446 INFO    ] 2026-08-31 10:05:25
[2026-08-31 10:05:25,726.726 INFO    ] 2026-08-31 10:05:25
[2026-08-31 10:05:25,782.782 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:05:26,036.036 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:05:26,043.043 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:05:26,272.272 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:05:26,300.300 INFO    ] time= 31/08/2026 10:05:26
[2026-08-31 10:05:26,311.311 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:05:26,340.340 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:05:26,458.458 INFO    ] No existing commands found in stream
[2026-08-31 10:05:31,479.479 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:05:31,482.482 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-08-31 10:05:35,662.662 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 10:05:35,665.665 INFO    ] Checking for system updates...
[2026-08-31 10:05:35,702.702 INFO    ] 200
[2026-08-31 10:05:35,705.705 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:05:35,759.759 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:05:35,762.762 INFO    ] No update needed
[2026-08-31 10:05:35,764.764 INFO    ] Checking for camera pi updates...
[2026-08-31 10:05:35,803.803 INFO    ] 200
[2026-08-31 10:05:35,806.806 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:05:35,848.848 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:05:35,928.928 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:05:35,931.931 INFO    ] No camera update needed
[2026-08-31 10:05:35,933.933 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:05:35,936.936 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:05:35,942.942 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:05:35,948.948 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:05:37,990.990 INFO    ] ================================================
[2026-08-31 10:05:38,005.005 INFO    ] Launching Daemon at Mon Aug 31 10:05:37 IST 2026
[2026-08-31 10:05:38,015.015 INFO    ] ================================================
[2026-08-31 10:05:38,581.581 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:05:38
[2026-08-31 10:05:39,162.162 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:05:39,432.432 INFO    ] Initializing speech engine...
[2026-08-31 10:05:39,440.440 INFO    ] 2026-08-31 10:05:39
[2026-08-31 10:05:39,692.692 INFO    ] 2026-08-31 10:05:39
[2026-08-31 10:05:39,727.727 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:05:39,903.903 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:05:39,915.915 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:05:40,058.058 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:05:40,066.066 INFO    ] time= 31/08/2026 10:05:40
[2026-08-31 10:05:40,073.073 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:05:40,114.114 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:05:40,243.243 INFO    ] No existing commands found in stream
[2026-08-31 10:05:45,273.273 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:05:45,276.276 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-08-31 10:05:46,609.609 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 10:05:46,611.611 INFO    ] Checking for system updates...
[2026-08-31 10:05:46,651.651 INFO    ] 200
[2026-08-31 10:05:46,654.654 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:05:46,711.711 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:05:46,713.713 INFO    ] No update needed
[2026-08-31 10:05:46,716.716 INFO    ] Checking for camera pi updates...
[2026-08-31 10:05:46,752.752 INFO    ] 200
[2026-08-31 10:05:46,757.757 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:05:46,803.803 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:05:46,975.975 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:05:46,978.978 INFO    ] No camera update needed
[2026-08-31 10:05:46,981.981 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:05:46,983.983 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:05:46,989.989 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:05:46,995.995 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:05:49,036.036 INFO    ] ================================================
[2026-08-31 10:05:49,052.052 INFO    ] Launching Daemon at Mon Aug 31 10:05:49 IST 2026
[2026-08-31 10:05:49,063.063 INFO    ] ================================================
[2026-08-31 10:05:49,629.629 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:05:49
[2026-08-31 10:05:50,233.233 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:05:50,533.533 INFO    ] Initializing speech engine...
[2026-08-31 10:05:50,542.542 INFO    ] 2026-08-31 10:05:50
[2026-08-31 10:05:50,817.817 INFO    ] 2026-08-31 10:05:50
[2026-08-31 10:05:50,876.876 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:05:51,132.132 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:05:51,139.139 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:05:51,327.327 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:05:51,373.373 INFO    ] time= 31/08/2026 10:05:51
[2026-08-31 10:05:51,386.386 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:05:51,408.408 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:05:51,542.542 INFO    ] No existing commands found in stream
[2026-08-31 10:05:56,560.560 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:05:56,564.564 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-08-31 10:05:59,812.812 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 10:05:59,815.815 INFO    ] Checking for system updates...
[2026-08-31 10:05:59,854.854 INFO    ] 200
[2026-08-31 10:05:59,857.857 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:05:59,915.915 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:05:59,918.918 INFO    ] No update needed
[2026-08-31 10:05:59,921.921 INFO    ] Checking for camera pi updates...
[2026-08-31 10:05:59,955.955 INFO    ] 200
[2026-08-31 10:05:59,957.957 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:05:59,999.999 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:06:00,087.087 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:06:00,090.090 INFO    ] No camera update needed
[2026-08-31 10:06:00,092.092 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:06:00,094.094 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:06:00,100.100 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:06:00,105.105 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:06:02,148.148 INFO    ] ================================================
[2026-08-31 10:06:02,165.165 INFO    ] Launching Daemon at Mon Aug 31 10:06:02 IST 2026
[2026-08-31 10:06:02,177.177 INFO    ] ================================================
[2026-08-31 10:06:02,816.816 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:06:02
[2026-08-31 10:06:03,440.440 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:06:03,702.702 INFO    ] Initializing speech engine...
[2026-08-31 10:06:03,709.709 INFO    ] 2026-08-31 10:06:03
[2026-08-31 10:06:04,005.005 INFO    ] 2026-08-31 10:06:03
[2026-08-31 10:06:04,044.044 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:06:04,240.240 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:06:04,254.254 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:06:04,414.414 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:06:04,423.423 INFO    ] time= 31/08/2026 10:06:04
[2026-08-31 10:06:04,432.432 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:06:04,479.479 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:06:04,598.598 INFO    ] No existing commands found in stream
[2026-08-31 10:06:09,633.633 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:06:09,636.636 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-08-31 10:06:11,122.122 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 10:06:11,124.124 INFO    ] Checking for system updates...
[2026-08-31 10:06:11,160.160 INFO    ] 200
[2026-08-31 10:06:11,162.162 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:06:11,214.214 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:06:11,217.217 INFO    ] No update needed
[2026-08-31 10:06:11,219.219 INFO    ] Checking for camera pi updates...
[2026-08-31 10:06:11,253.253 INFO    ] 200
[2026-08-31 10:06:11,255.255 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:06:11,297.297 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:06:11,398.398 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:06:11,401.401 INFO    ] No camera update needed
[2026-08-31 10:06:11,404.404 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:06:11,406.406 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:06:11,413.413 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:06:11,419.419 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:06:13,460.460 INFO    ] ================================================
[2026-08-31 10:06:13,475.475 INFO    ] Launching Daemon at Mon Aug 31 10:06:13 IST 2026
[2026-08-31 10:06:13,485.485 INFO    ] ================================================
[2026-08-31 10:06:14,064.064 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:06:14
[2026-08-31 10:06:14,660.660 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:06:14,938.938 INFO    ] Initializing speech engine...
[2026-08-31 10:06:14,948.948 INFO    ] 2026-08-31 10:06:14
[2026-08-31 10:06:15,206.206 INFO    ] 2026-08-31 10:06:15
[2026-08-31 10:06:15,260.260 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:06:15,481.481 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:06:15,491.491 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:06:15,694.694 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:06:15,747.747 INFO    ] time= 31/08/2026 10:06:15
[2026-08-31 10:06:15,753.753 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:06:15,772.772 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:06:15,891.891 INFO    ] No existing commands found in stream
[2026-08-31 10:06:20,912.912 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:06:20,915.915 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-08-31 10:06:24,980.980 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 10:06:24,984.984 INFO    ] Checking for system updates...
[2026-08-31 10:06:25,024.024 INFO    ] 200
[2026-08-31 10:06:25,027.027 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:06:25,080.080 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:06:25,082.082 INFO    ] No update needed
[2026-08-31 10:06:25,085.085 INFO    ] Checking for camera pi updates...
[2026-08-31 10:06:25,122.122 INFO    ] 200
[2026-08-31 10:06:25,124.124 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:06:25,163.163 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:06:25,253.253 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:06:25,256.256 INFO    ] No camera update needed
[2026-08-31 10:06:25,258.258 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:06:25,261.261 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:06:25,266.266 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:06:25,271.271 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:06:27,312.312 INFO    ] ================================================
[2026-08-31 10:06:27,327.327 INFO    ] Launching Daemon at Mon Aug 31 10:06:27 IST 2026
[2026-08-31 10:06:27,338.338 INFO    ] ================================================
[2026-08-31 10:06:27,905.905 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:06:27
[2026-08-31 10:06:28,488.488 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:06:28,761.761 INFO    ] Initializing speech engine...
[2026-08-31 10:06:28,770.770 INFO    ] 2026-08-31 10:06:28
[2026-08-31 10:06:29,020.020 INFO    ] 2026-08-31 10:06:29
[2026-08-31 10:06:29,054.054 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:06:29,252.252 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:06:29,297.297 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:06:29,457.457 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:06:29,500.500 INFO    ] time= 31/08/2026 10:06:29
[2026-08-31 10:06:29,564.564 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:06:29,594.594 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:06:29,741.741 INFO    ] No existing commands found in stream
[2026-08-31 10:06:34,758.758 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:06:34,761.761 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-08-31 10:06:35,411.411 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 10:06:35,414.414 INFO    ] Checking for system updates...
[2026-08-31 10:06:35,449.449 INFO    ] 200
[2026-08-31 10:06:35,451.451 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:06:35,510.510 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:06:35,512.512 INFO    ] No update needed
[2026-08-31 10:06:35,514.514 INFO    ] Checking for camera pi updates...
[2026-08-31 10:06:35,548.548 INFO    ] 200
[2026-08-31 10:06:35,551.551 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:06:35,591.591 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:06:35,675.675 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:06:35,677.677 INFO    ] No camera update needed
[2026-08-31 10:06:35,680.680 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:06:35,682.682 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:06:35,687.687 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:06:35,692.692 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:06:37,734.734 INFO    ] ================================================
[2026-08-31 10:06:37,750.750 INFO    ] Launching Daemon at Mon Aug 31 10:06:37 IST 2026
[2026-08-31 10:06:37,761.761 INFO    ] ================================================
[2026-08-31 10:06:38,327.327 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:06:38
[2026-08-31 10:06:38,910.910 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:06:39,176.176 INFO    ] Initializing speech engine...
[2026-08-31 10:06:39,185.185 INFO    ] 2026-08-31 10:06:39
[2026-08-31 10:06:39,446.446 INFO    ] 2026-08-31 10:06:39
[2026-08-31 10:06:39,498.498 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:06:39,725.725 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:06:39,731.731 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:06:39,860.860 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:06:39,902.902 INFO    ] time= 31/08/2026 10:06:39
[2026-08-31 10:06:39,962.962 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:06:39,996.996 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:06:40,135.135 INFO    ] No existing commands found in stream
[2026-08-31 10:06:45,161.161 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:06:45,163.163 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-08-31 10:06:45,782.782 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 10:06:45,784.784 INFO    ] Checking for system updates...
[2026-08-31 10:06:45,820.820 INFO    ] 200
[2026-08-31 10:06:45,822.822 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:06:45,874.874 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:06:45,876.876 INFO    ] No update needed
[2026-08-31 10:06:45,879.879 INFO    ] Checking for camera pi updates...
[2026-08-31 10:06:45,912.912 INFO    ] 200
[2026-08-31 10:06:45,914.914 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:06:45,954.954 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:06:46,041.041 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:06:46,044.044 INFO    ] No camera update needed
[2026-08-31 10:06:46,046.046 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:06:46,048.048 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:06:46,054.054 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:06:46,059.059 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:06:48,099.099 INFO    ] ================================================
[2026-08-31 10:06:48,114.114 INFO    ] Launching Daemon at Mon Aug 31 10:06:48 IST 2026
[2026-08-31 10:06:48,126.126 INFO    ] ================================================
[2026-08-31 10:06:48,690.690 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:06:48
[2026-08-31 10:06:49,272.272 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:06:49,525.525 INFO    ] Initializing speech engine...
[2026-08-31 10:06:49,540.540 INFO    ] 2026-08-31 10:06:49
[2026-08-31 10:06:49,805.805 INFO    ] 2026-08-31 10:06:49
[2026-08-31 10:06:49,840.840 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:06:50,041.041 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:06:50,100.100 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:06:50,245.245 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:06:50,300.300 INFO    ] time= 31/08/2026 10:06:50
[2026-08-31 10:06:50,354.354 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:06:50,378.378 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:06:50,481.481 INFO    ] No existing commands found in stream
[2026-08-31 10:06:55,499.499 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:06:55,502.502 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-08-31 10:06:59,699.699 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 10:06:59,701.701 INFO    ] Checking for system updates...
[2026-08-31 10:06:59,737.737 INFO    ] 200
[2026-08-31 10:06:59,740.740 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:06:59,803.803 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:06:59,806.806 INFO    ] No update needed
[2026-08-31 10:06:59,808.808 INFO    ] Checking for camera pi updates...
[2026-08-31 10:06:59,846.846 INFO    ] 200
[2026-08-31 10:06:59,849.849 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:06:59,888.888 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:06:59,969.969 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:06:59,972.972 INFO    ] No camera update needed
[2026-08-31 10:06:59,974.974 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:06:59,976.976 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:06:59,982.982 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:06:59,986.986 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:07:02,035.035 INFO    ] ================================================
[2026-08-31 10:07:02,059.059 INFO    ] Launching Daemon at Mon Aug 31 10:07:02 IST 2026
[2026-08-31 10:07:02,076.076 INFO    ] ================================================
[2026-08-31 10:07:02,847.847 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:07:02
[2026-08-31 10:07:03,451.451 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:07:03,725.725 INFO    ] Initializing speech engine...
[2026-08-31 10:07:03,731.731 INFO    ] 2026-08-31 10:07:03
[2026-08-31 10:07:03,995.995 INFO    ] 2026-08-31 10:07:03
[2026-08-31 10:07:04,049.049 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:07:04,269.269 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:07:04,279.279 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:07:04,493.493 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:07:04,536.536 INFO    ] time= 31/08/2026 10:07:04
[2026-08-31 10:07:04,542.542 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:07:04,560.560 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:07:04,691.691 INFO    ] No existing commands found in stream
[2026-08-31 10:07:09,703.703 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:07:09,705.705 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-08-31 10:07:13,022.022 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 10:07:13,029.029 INFO    ] Checking for system updates...
[2026-08-31 10:07:13,065.065 INFO    ] 200
[2026-08-31 10:07:13,067.067 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:07:13,119.119 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:07:13,121.121 INFO    ] No update needed
[2026-08-31 10:07:13,123.123 INFO    ] Checking for camera pi updates...
[2026-08-31 10:07:13,156.156 INFO    ] 200
[2026-08-31 10:07:13,159.159 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:07:13,199.199 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:07:13,290.290 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:07:13,293.293 INFO    ] No camera update needed
[2026-08-31 10:07:13,295.295 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:07:13,297.297 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:07:13,303.303 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:07:13,307.307 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:07:15,349.349 INFO    ] ================================================
[2026-08-31 10:07:15,364.364 INFO    ] Launching Daemon at Mon Aug 31 10:07:15 IST 2026
[2026-08-31 10:07:15,375.375 INFO    ] ================================================
[2026-08-31 10:07:15,942.942 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:07:15
[2026-08-31 10:07:16,526.526 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:07:16,787.787 INFO    ] Initializing speech engine...
[2026-08-31 10:07:16,812.812 INFO    ] 2026-08-31 10:07:16
[2026-08-31 10:07:17,085.085 INFO    ] 2026-08-31 10:07:17
[2026-08-31 10:07:17,122.122 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:07:17,280.280 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:07:17,317.317 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:07:17,463.463 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:07:17,484.484 INFO    ] time= 31/08/2026 10:07:17
[2026-08-31 10:07:17,509.509 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:07:17,515.515 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:07:17,604.604 INFO    ] No existing commands found in stream
[2026-08-31 10:07:22,639.639 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:07:22,642.642 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-08-31 10:07:26,489.489 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 10:07:26,491.491 INFO    ] Checking for system updates...
[2026-08-31 10:07:26,527.527 INFO    ] 200
[2026-08-31 10:07:26,529.529 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:07:26,582.582 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:07:26,584.584 INFO    ] No update needed
[2026-08-31 10:07:26,586.586 INFO    ] Checking for camera pi updates...
[2026-08-31 10:07:26,620.620 INFO    ] 200
[2026-08-31 10:07:26,622.622 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:07:26,668.668 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:07:26,753.753 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:07:26,755.755 INFO    ] No camera update needed
[2026-08-31 10:07:26,758.758 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:07:26,760.760 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:07:26,765.765 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:07:26,770.770 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:07:28,810.810 INFO    ] ================================================
[2026-08-31 10:07:28,825.825 INFO    ] Launching Daemon at Mon Aug 31 10:07:28 IST 2026
[2026-08-31 10:07:28,836.836 INFO    ] ================================================
[2026-08-31 10:07:29,426.426 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:07:29
[2026-08-31 10:07:30,031.031 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:07:30,298.298 INFO    ] Initializing speech engine...
[2026-08-31 10:07:30,305.305 INFO    ] 2026-08-31 10:07:30
[2026-08-31 10:07:30,600.600 INFO    ] 2026-08-31 10:07:30
[2026-08-31 10:07:30,639.639 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:07:30,847.847 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:07:30,864.864 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:07:31,008.008 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:07:31,019.019 INFO    ] time= 31/08/2026 10:07:31
[2026-08-31 10:07:31,025.025 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:07:31,031.031 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:07:31,104.104 INFO    ] No existing commands found in stream
[2026-08-31 10:07:36,116.116 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:07:36,119.119 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-08-31 10:07:39,170.170 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 10:07:39,172.172 INFO    ] Checking for system updates...
[2026-08-31 10:07:39,213.213 INFO    ] 200
[2026-08-31 10:07:39,215.215 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:07:39,281.281 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:07:39,284.284 INFO    ] No update needed
[2026-08-31 10:07:39,286.286 INFO    ] Checking for camera pi updates...
[2026-08-31 10:07:39,321.321 INFO    ] 200
[2026-08-31 10:07:39,324.324 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:07:39,365.365 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:07:39,448.448 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:07:39,451.451 INFO    ] No camera update needed
[2026-08-31 10:07:39,454.454 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:07:39,456.456 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:07:39,463.463 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:07:39,468.468 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:07:41,510.510 INFO    ] ================================================
[2026-08-31 10:07:41,525.525 INFO    ] Launching Daemon at Mon Aug 31 10:07:41 IST 2026
[2026-08-31 10:07:41,536.536 INFO    ] ================================================
[2026-08-31 10:07:42,196.196 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:07:42
[2026-08-31 10:07:42,877.877 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:07:43,186.186 INFO    ] Initializing speech engine...
[2026-08-31 10:07:43,194.194 INFO    ] 2026-08-31 10:07:43
[2026-08-31 10:07:43,471.471 INFO    ] 2026-08-31 10:07:43
[2026-08-31 10:07:43,531.531 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:07:43,764.764 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:07:43,771.771 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:07:43,917.917 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:07:43,992.992 INFO    ] time= 31/08/2026 10:07:43
[2026-08-31 10:07:44,038.038 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:07:44,045.045 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:07:44,174.174 INFO    ] No existing commands found in stream
[2026-08-31 10:07:49,203.203 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:07:49,206.206 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-08-31 10:07:51,940.940 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 10:07:51,943.943 INFO    ] Checking for system updates...
[2026-08-31 10:07:51,981.981 INFO    ] 200
[2026-08-31 10:07:51,984.984 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:07:52,038.038 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:07:52,041.041 INFO    ] No update needed
[2026-08-31 10:07:52,043.043 INFO    ] Checking for camera pi updates...
[2026-08-31 10:07:52,078.078 INFO    ] 200
[2026-08-31 10:07:52,081.081 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:07:52,122.122 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:07:52,295.295 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:07:52,299.299 INFO    ] No camera update needed
[2026-08-31 10:07:52,301.301 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:07:52,304.304 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:07:52,310.310 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:07:52,316.316 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:07:54,358.358 INFO    ] ================================================
[2026-08-31 10:07:54,373.373 INFO    ] Launching Daemon at Mon Aug 31 10:07:54 IST 2026
[2026-08-31 10:07:54,384.384 INFO    ] ================================================
[2026-08-31 10:07:54,963.963 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:07:54
[2026-08-31 10:07:55,565.565 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:07:55,850.850 INFO    ] Initializing speech engine...
[2026-08-31 10:07:55,862.862 INFO    ] 2026-08-31 10:07:55
[2026-08-31 10:07:56,135.135 INFO    ] 2026-08-31 10:07:56
[2026-08-31 10:07:56,172.172 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:07:56,465.465 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:07:56,474.474 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:07:56,628.628 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:07:56,650.650 INFO    ] time= 31/08/2026 10:07:56
[2026-08-31 10:07:56,699.699 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:07:56,740.740 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:07:56,835.835 INFO    ] No existing commands found in stream
[2026-08-31 10:08:01,847.847 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:08:01,850.850 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-08-31 10:08:05,942.942 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 10:08:05,945.945 INFO    ] Checking for system updates...
[2026-08-31 10:08:05,982.982 INFO    ] 200
[2026-08-31 10:08:05,984.984 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:08:06,036.036 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:08:06,039.039 INFO    ] No update needed
[2026-08-31 10:08:06,041.041 INFO    ] Checking for camera pi updates...
[2026-08-31 10:08:06,083.083 INFO    ] 200
[2026-08-31 10:08:06,085.085 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:08:06,125.125 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:08:06,212.212 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:08:06,214.214 INFO    ] No camera update needed
[2026-08-31 10:08:06,216.216 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:08:06,219.219 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:08:06,226.226 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:08:06,233.233 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:08:08,276.276 INFO    ] ================================================
[2026-08-31 10:08:08,291.291 INFO    ] Launching Daemon at Mon Aug 31 10:08:08 IST 2026
[2026-08-31 10:08:08,302.302 INFO    ] ================================================
[2026-08-31 10:08:08,968.968 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:08:08
[2026-08-31 10:08:09,654.654 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:08:09,967.967 INFO    ] Initializing speech engine...
[2026-08-31 10:08:09,979.979 INFO    ] 2026-08-31 10:08:09
[2026-08-31 10:08:10,298.298 INFO    ] 2026-08-31 10:08:10
[2026-08-31 10:08:10,383.383 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:08:10,609.609 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:08:10,615.615 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:08:10,817.817 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:08:10,837.837 INFO    ] time= 31/08/2026 10:08:10
[2026-08-31 10:08:10,857.857 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:08:10,879.879 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:08:11,015.015 INFO    ] No existing commands found in stream
[2026-08-31 10:08:16,046.046 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:08:16,050.050 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-08-31 10:08:17,931.931 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 10:08:17,934.934 INFO    ] Checking for system updates...
[2026-08-31 10:08:17,971.971 INFO    ] 200
[2026-08-31 10:08:17,974.974 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:08:18,038.038 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:08:18,041.041 INFO    ] No update needed
[2026-08-31 10:08:18,043.043 INFO    ] Checking for camera pi updates...
[2026-08-31 10:08:18,083.083 INFO    ] 200
[2026-08-31 10:08:18,086.086 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:08:18,128.128 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:08:18,217.217 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:08:18,220.220 INFO    ] No camera update needed
[2026-08-31 10:08:18,223.223 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:08:18,226.226 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:08:18,232.232 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:08:18,238.238 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:08:20,279.279 INFO    ] ================================================
[2026-08-31 10:08:20,294.294 INFO    ] Launching Daemon at Mon Aug 31 10:08:20 IST 2026
[2026-08-31 10:08:20,305.305 INFO    ] ================================================
[2026-08-31 10:08:20,979.979 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:08:20
[2026-08-31 10:08:21,674.674 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:08:21,990.990 INFO    ] Initializing speech engine...
[2026-08-31 10:08:22,003.003 INFO    ] 2026-08-31 10:08:21
[2026-08-31 10:08:22,288.288 INFO    ] 2026-08-31 10:08:22
[2026-08-31 10:08:22,335.335 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:08:22,607.607 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:08:22,627.627 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:08:22,835.835 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:08:22,851.851 INFO    ] time= 31/08/2026 10:08:22
[2026-08-31 10:08:22,863.863 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:08:22,894.894 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:08:23,011.011 INFO    ] No existing commands found in stream
[2026-08-31 10:08:28,041.041 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:08:28,044.044 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-08-31 10:08:29,211.211 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 10:08:29,214.214 INFO    ] Checking for system updates...
[2026-08-31 10:08:29,251.251 INFO    ] 200
[2026-08-31 10:08:29,254.254 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:08:29,308.308 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:08:29,310.310 INFO    ] No update needed
[2026-08-31 10:08:29,313.313 INFO    ] Checking for camera pi updates...
[2026-08-31 10:08:29,348.348 INFO    ] 200
[2026-08-31 10:08:29,351.351 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:08:29,393.393 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:08:29,495.495 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:08:29,498.498 INFO    ] No camera update needed
[2026-08-31 10:08:29,501.501 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:08:29,504.504 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:08:29,510.510 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:08:29,516.516 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:08:31,560.560 INFO    ] ================================================
[2026-08-31 10:08:31,576.576 INFO    ] Launching Daemon at Mon Aug 31 10:08:31 IST 2026
[2026-08-31 10:08:31,587.587 INFO    ] ================================================
[2026-08-31 10:08:32,179.179 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:08:32
[2026-08-31 10:08:32,800.800 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:08:33,052.052 INFO    ] Initializing speech engine...
[2026-08-31 10:08:33,058.058 INFO    ] 2026-08-31 10:08:33
[2026-08-31 10:08:33,329.329 INFO    ] 2026-08-31 10:08:33
[2026-08-31 10:08:33,363.363 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:08:33,622.622 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:08:33,628.628 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:08:33,857.857 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:08:33,884.884 INFO    ] time= 31/08/2026 10:08:33
[2026-08-31 10:08:33,901.901 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:08:33,909.909 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:08:34,038.038 INFO    ] No existing commands found in stream
[2026-08-31 10:08:39,053.053 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:08:39,056.056 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-08-31 10:08:41,430.430 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 10:08:41,432.432 INFO    ] Checking for system updates...
[2026-08-31 10:08:41,468.468 INFO    ] 200
[2026-08-31 10:08:41,471.471 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:08:41,530.530 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:08:41,533.533 INFO    ] No update needed
[2026-08-31 10:08:41,535.535 INFO    ] Checking for camera pi updates...
[2026-08-31 10:08:41,569.569 INFO    ] 200
[2026-08-31 10:08:41,572.572 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:08:41,617.617 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:08:41,702.702 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:08:41,704.704 INFO    ] No camera update needed
[2026-08-31 10:08:41,706.706 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:08:41,709.709 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:08:41,714.714 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:08:41,719.719 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:08:43,761.761 INFO    ] ================================================
[2026-08-31 10:08:43,776.776 INFO    ] Launching Daemon at Mon Aug 31 10:08:43 IST 2026
[2026-08-31 10:08:43,787.787 INFO    ] ================================================
[2026-08-31 10:08:44,361.361 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:08:44
[2026-08-31 10:08:44,965.965 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:08:45,235.235 INFO    ] Initializing speech engine...
[2026-08-31 10:08:45,245.245 INFO    ] 2026-08-31 10:08:45
[2026-08-31 10:08:45,495.495 INFO    ] 2026-08-31 10:08:45
[2026-08-31 10:08:45,530.530 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:08:45,807.807 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:08:45,817.817 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:08:45,973.973 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:08:45,980.980 INFO    ] time= 31/08/2026 10:08:45
[2026-08-31 10:08:46,014.014 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:08:46,074.074 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:08:46,175.175 INFO    ] No existing commands found in stream
[2026-08-31 10:08:51,195.195 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:08:51,198.198 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-08-31 10:08:53,025.025 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 10:08:53,028.028 INFO    ] Checking for system updates...
[2026-08-31 10:08:53,066.066 INFO    ] 200
[2026-08-31 10:08:53,069.069 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:08:53,123.123 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:08:53,126.126 INFO    ] No update needed
[2026-08-31 10:08:53,129.129 INFO    ] Checking for camera pi updates...
[2026-08-31 10:08:53,163.163 INFO    ] 200
[2026-08-31 10:08:53,166.166 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:08:53,206.206 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:08:53,296.296 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:08:53,298.298 INFO    ] No camera update needed
[2026-08-31 10:08:53,301.301 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:08:53,303.303 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:08:53,309.309 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:08:53,314.314 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:08:55,357.357 INFO    ] ================================================
[2026-08-31 10:08:55,373.373 INFO    ] Launching Daemon at Mon Aug 31 10:08:55 IST 2026
[2026-08-31 10:08:55,384.384 INFO    ] ================================================
[2026-08-31 10:08:56,009.009 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:08:56
[2026-08-31 10:08:56,705.705 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:08:57,028.028 INFO    ] Initializing speech engine...
[2026-08-31 10:08:57,035.035 INFO    ] 2026-08-31 10:08:57
[2026-08-31 10:08:57,322.322 INFO    ] 2026-08-31 10:08:57
[2026-08-31 10:08:57,368.368 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:08:57,657.657 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:08:57,666.666 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:08:57,854.854 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:08:57,871.871 INFO    ] time= 31/08/2026 10:08:57
[2026-08-31 10:08:57,891.891 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:08:57,917.917 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:08:58,044.044 INFO    ] No existing commands found in stream
[2026-08-31 10:09:03,085.085 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:09:03,089.089 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-08-31 10:09:06,659.659 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 10:09:06,662.662 INFO    ] Checking for system updates...
[2026-08-31 10:09:06,698.698 INFO    ] 200
[2026-08-31 10:09:06,700.700 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:09:06,760.760 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:09:06,762.762 INFO    ] No update needed
[2026-08-31 10:09:06,765.765 INFO    ] Checking for camera pi updates...
[2026-08-31 10:09:06,798.798 INFO    ] 200
[2026-08-31 10:09:06,800.800 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:09:06,846.846 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:09:06,928.928 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:09:06,931.931 INFO    ] No camera update needed
[2026-08-31 10:09:06,933.933 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:09:06,935.935 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:09:06,941.941 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:09:06,946.946 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:09:08,988.988 INFO    ] ================================================
[2026-08-31 10:09:09,003.003 INFO    ] Launching Daemon at Mon Aug 31 10:09:08 IST 2026
[2026-08-31 10:09:09,013.013 INFO    ] ================================================
[2026-08-31 10:09:09,678.678 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:09:09
[2026-08-31 10:09:10,331.331 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:09:10,601.601 INFO    ] Initializing speech engine...
[2026-08-31 10:09:10,610.610 INFO    ] 2026-08-31 10:09:10
[2026-08-31 10:09:10,860.860 INFO    ] 2026-08-31 10:09:10
[2026-08-31 10:09:10,895.895 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:09:11,153.153 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:09:11,163.163 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:09:11,385.385 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:09:11,427.427 INFO    ] time= 31/08/2026 10:09:11
[2026-08-31 10:09:11,433.433 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:09:11,454.454 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:09:11,569.569 INFO    ] No existing commands found in stream
[2026-08-31 10:09:16,594.594 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:09:16,596.596 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-08-31 10:09:17,269.269 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 10:09:17,272.272 INFO    ] Checking for system updates...
[2026-08-31 10:09:17,309.309 INFO    ] 200
[2026-08-31 10:09:17,312.312 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:09:17,369.369 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:09:17,372.372 INFO    ] No update needed
[2026-08-31 10:09:17,375.375 INFO    ] Checking for camera pi updates...
[2026-08-31 10:09:17,410.410 INFO    ] 200
[2026-08-31 10:09:17,413.413 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:09:17,454.454 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:09:17,535.535 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:09:17,538.538 INFO    ] No camera update needed
[2026-08-31 10:09:17,541.541 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:09:17,544.544 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:09:17,550.550 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:09:17,556.556 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:09:19,597.597 INFO    ] ================================================
[2026-08-31 10:09:19,612.612 INFO    ] Launching Daemon at Mon Aug 31 10:09:19 IST 2026
[2026-08-31 10:09:19,623.623 INFO    ] ================================================
[2026-08-31 10:09:20,206.206 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:09:20
[2026-08-31 10:09:20,799.799 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:09:21,065.065 INFO    ] Initializing speech engine...
[2026-08-31 10:09:21,072.072 INFO    ] 2026-08-31 10:09:21
[2026-08-31 10:09:21,378.378 INFO    ] 2026-08-31 10:09:21
[2026-08-31 10:09:21,415.415 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:09:21,617.617 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:09:21,623.623 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:09:21,757.757 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:09:21,762.762 INFO    ] time= 31/08/2026 10:09:21
[2026-08-31 10:09:21,769.769 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:09:21,801.801 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:09:21,877.877 INFO    ] No existing commands found in stream
[2026-08-31 10:09:26,912.912 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:09:26,915.915 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-08-31 10:09:27,573.573 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 10:09:27,576.576 INFO    ] Checking for system updates...
[2026-08-31 10:09:27,613.613 INFO    ] 200
[2026-08-31 10:09:27,616.616 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:09:27,669.669 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:09:27,672.672 INFO    ] No update needed
[2026-08-31 10:09:27,675.675 INFO    ] Checking for camera pi updates...
[2026-08-31 10:09:27,714.714 INFO    ] 200
[2026-08-31 10:09:27,717.717 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:09:27,768.768 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:09:27,856.856 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:09:27,859.859 INFO    ] No camera update needed
[2026-08-31 10:09:27,862.862 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:09:27,864.864 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:09:27,871.871 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:09:27,876.876 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:09:29,917.917 INFO    ] ================================================
[2026-08-31 10:09:29,932.932 INFO    ] Launching Daemon at Mon Aug 31 10:09:29 IST 2026
[2026-08-31 10:09:29,942.942 INFO    ] ================================================
[2026-08-31 10:09:30,526.526 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:09:30
[2026-08-31 10:09:31,129.129 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:09:31,398.398 INFO    ] Initializing speech engine...
[2026-08-31 10:09:31,412.412 INFO    ] 2026-08-31 10:09:31
[2026-08-31 10:09:31,707.707 INFO    ] 2026-08-31 10:09:31
[2026-08-31 10:09:31,745.745 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:09:31,933.933 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:09:31,954.954 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:09:32,160.160 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:09:32,188.188 INFO    ] time= 31/08/2026 10:09:32
[2026-08-31 10:09:32,239.239 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:09:32,294.294 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:09:32,421.421 INFO    ] No existing commands found in stream
[2026-08-31 10:09:37,448.448 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:09:37,451.451 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-08-31 10:09:37,966.966 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 10:09:37,969.969 INFO    ] Checking for system updates...
[2026-08-31 10:09:38,005.005 INFO    ] 200
[2026-08-31 10:09:38,008.008 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:09:38,060.060 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:09:38,062.062 INFO    ] No update needed
[2026-08-31 10:09:38,065.065 INFO    ] Checking for camera pi updates...
[2026-08-31 10:09:38,102.102 INFO    ] 200
[2026-08-31 10:09:38,105.105 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:09:38,145.145 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:09:38,225.225 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:09:38,228.228 INFO    ] No camera update needed
[2026-08-31 10:09:38,230.230 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:09:38,232.232 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:09:38,237.237 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:09:38,242.242 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:09:40,281.281 INFO    ] ================================================
[2026-08-31 10:09:40,296.296 INFO    ] Launching Daemon at Mon Aug 31 10:09:40 IST 2026
[2026-08-31 10:09:40,307.307 INFO    ] ================================================
[2026-08-31 10:09:40,876.876 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:09:40
[2026-08-31 10:09:41,460.460 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:09:41,728.728 INFO    ] Initializing speech engine...
[2026-08-31 10:09:41,737.737 INFO    ] 2026-08-31 10:09:41
[2026-08-31 10:09:41,981.981 INFO    ] 2026-08-31 10:09:41
[2026-08-31 10:09:42,017.017 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:09:42,268.268 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:09:42,277.277 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:09:42,486.486 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:09:42,534.534 INFO    ] time= 31/08/2026 10:09:42
[2026-08-31 10:09:42,541.541 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:09:42,558.558 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:09:42,686.686 INFO    ] No existing commands found in stream
[2026-08-31 10:09:47,700.700 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:09:47,703.703 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-08-31 10:09:51,491.491 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 10:09:51,494.494 INFO    ] Checking for system updates...
[2026-08-31 10:09:51,531.531 INFO    ] 200
[2026-08-31 10:09:51,533.533 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:09:51,587.587 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:09:51,589.589 INFO    ] No update needed
[2026-08-31 10:09:51,592.592 INFO    ] Checking for camera pi updates...
[2026-08-31 10:09:51,626.626 INFO    ] 200
[2026-08-31 10:09:51,628.628 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:09:51,670.670 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:09:51,772.772 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:09:51,774.774 INFO    ] No camera update needed
[2026-08-31 10:09:51,777.777 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:09:51,779.779 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:09:51,784.784 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:09:51,789.789 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:09:53,830.830 INFO    ] ================================================
[2026-08-31 10:09:53,846.846 INFO    ] Launching Daemon at Mon Aug 31 10:09:53 IST 2026
[2026-08-31 10:09:53,856.856 INFO    ] ================================================
[2026-08-31 10:09:54,423.423 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:09:54
[2026-08-31 10:09:55,005.005 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:09:55,272.272 INFO    ] Initializing speech engine...
[2026-08-31 10:09:55,281.281 INFO    ] 2026-08-31 10:09:55
[2026-08-31 10:09:55,548.548 INFO    ] 2026-08-31 10:09:55
[2026-08-31 10:09:55,601.601 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:09:55,850.850 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:09:55,856.856 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:09:55,960.960 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:09:55,963.963 INFO    ] time= 31/08/2026 10:09:55
[2026-08-31 10:09:55,974.974 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:09:56,022.022 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:09:56,127.127 INFO    ] No existing commands found in stream
[2026-08-31 10:10:01,138.138 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:10:01,141.141 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-08-31 10:10:08,815.815 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 10:10:08,818.818 INFO    ] Checking for system updates...
[2026-08-31 10:10:08,853.853 INFO    ] 200
[2026-08-31 10:10:08,856.856 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:10:08,909.909 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:10:08,912.912 INFO    ] No update needed
[2026-08-31 10:10:08,914.914 INFO    ] Checking for camera pi updates...
[2026-08-31 10:10:08,948.948 INFO    ] 200
[2026-08-31 10:10:08,951.951 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:10:08,996.996 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:10:09,103.103 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:10:09,106.106 INFO    ] No camera update needed
[2026-08-31 10:10:09,108.108 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:10:09,110.110 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:10:09,116.116 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:10:09,121.121 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:10:11,163.163 INFO    ] ================================================
[2026-08-31 10:10:11,177.177 INFO    ] Launching Daemon at Mon Aug 31 10:10:11 IST 2026
[2026-08-31 10:10:11,188.188 INFO    ] ================================================
[2026-08-31 10:10:11,838.838 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:10:11
[2026-08-31 10:10:12,506.506 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:10:12,812.812 INFO    ] Initializing speech engine...
[2026-08-31 10:10:12,824.824 INFO    ] 2026-08-31 10:10:12
[2026-08-31 10:10:13,106.106 INFO    ] 2026-08-31 10:10:13
[2026-08-31 10:10:13,152.152 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:10:13,384.384 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:10:13,390.390 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:10:13,636.636 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:10:13,654.654 INFO    ] time= 31/08/2026 10:10:13
[2026-08-31 10:10:13,673.673 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:10:13,688.688 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:10:13,829.829 INFO    ] No existing commands found in stream
[2026-08-31 10:10:18,861.861 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:10:18,864.864 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-08-31 10:10:21,539.539 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 10:10:21,542.542 INFO    ] Checking for system updates...
[2026-08-31 10:10:21,583.583 INFO    ] 200
[2026-08-31 10:10:21,586.586 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:10:21,648.648 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:10:21,651.651 INFO    ] No update needed
[2026-08-31 10:10:21,654.654 INFO    ] Checking for camera pi updates...
[2026-08-31 10:10:21,689.689 INFO    ] 200
[2026-08-31 10:10:21,692.692 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:10:21,733.733 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:10:21,820.820 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:10:21,822.822 INFO    ] No camera update needed
[2026-08-31 10:10:21,825.825 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:10:21,828.828 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:10:21,834.834 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:10:21,840.840 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:10:23,881.881 INFO    ] ================================================
[2026-08-31 10:10:23,896.896 INFO    ] Launching Daemon at Mon Aug 31 10:10:23 IST 2026
[2026-08-31 10:10:23,906.906 INFO    ] ================================================
[2026-08-31 10:10:24,473.473 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:10:24
[2026-08-31 10:10:25,056.056 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:10:25,316.316 INFO    ] Initializing speech engine...
[2026-08-31 10:10:25,333.333 INFO    ] 2026-08-31 10:10:25
[2026-08-31 10:10:25,586.586 INFO    ] 2026-08-31 10:10:25
[2026-08-31 10:10:25,620.620 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:10:25,879.879 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:10:25,889.889 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:10:26,023.023 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:10:26,069.069 INFO    ] time= 31/08/2026 10:10:26
[2026-08-31 10:10:26,118.118 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:10:26,160.160 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:10:26,291.291 INFO    ] No existing commands found in stream
[2026-08-31 10:10:31,316.316 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:10:31,319.319 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-08-31 10:10:34,171.171 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 10:10:34,174.174 INFO    ] Checking for system updates...
[2026-08-31 10:10:34,210.210 INFO    ] 200
[2026-08-31 10:10:34,212.212 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:10:34,264.264 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:10:34,266.266 INFO    ] No update needed
[2026-08-31 10:10:34,269.269 INFO    ] Checking for camera pi updates...
[2026-08-31 10:10:34,306.306 INFO    ] 200
[2026-08-31 10:10:34,309.309 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:10:34,350.350 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:10:34,429.429 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:10:34,431.431 INFO    ] No camera update needed
[2026-08-31 10:10:34,434.434 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:10:34,436.436 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:10:34,441.441 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:10:34,446.446 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:10:36,488.488 INFO    ] ================================================
[2026-08-31 10:10:36,503.503 INFO    ] Launching Daemon at Mon Aug 31 10:10:36 IST 2026
[2026-08-31 10:10:36,514.514 INFO    ] ================================================
[2026-08-31 10:10:37,093.093 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:10:37
[2026-08-31 10:10:37,689.689 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:10:37,964.964 INFO    ] Initializing speech engine...
[2026-08-31 10:10:37,971.971 INFO    ] 2026-08-31 10:10:37
[2026-08-31 10:10:38,232.232 INFO    ] 2026-08-31 10:10:38
[2026-08-31 10:10:38,285.285 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:10:38,532.532 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:10:38,540.540 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:10:38,728.728 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:10:38,773.773 INFO    ] time= 31/08/2026 10:10:38
[2026-08-31 10:10:38,779.779 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:10:38,800.800 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:10:38,927.927 INFO    ] No existing commands found in stream
[2026-08-31 10:10:43,939.939 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:10:43,942.942 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-08-31 10:10:47,978.978 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 10:10:47,981.981 INFO    ] Checking for system updates...
[2026-08-31 10:10:48,017.017 INFO    ] 200
[2026-08-31 10:10:48,019.019 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:10:48,071.071 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:10:48,074.074 INFO    ] No update needed
[2026-08-31 10:10:48,076.076 INFO    ] Checking for camera pi updates...
[2026-08-31 10:10:48,113.113 INFO    ] 200
[2026-08-31 10:10:48,116.116 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:10:48,156.156 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:10:48,227.227 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:10:48,229.229 INFO    ] No camera update needed
[2026-08-31 10:10:48,232.232 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:10:48,234.234 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:10:48,240.240 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:10:48,245.245 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:10:50,286.286 INFO    ] ================================================
[2026-08-31 10:10:50,301.301 INFO    ] Launching Daemon at Mon Aug 31 10:10:50 IST 2026
[2026-08-31 10:10:50,312.312 INFO    ] ================================================
[2026-08-31 10:10:50,963.963 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:10:50
[2026-08-31 10:10:51,632.632 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:10:51,936.936 INFO    ] Initializing speech engine...
[2026-08-31 10:10:51,950.950 INFO    ] 2026-08-31 10:10:51
[2026-08-31 10:10:52,261.261 INFO    ] 2026-08-31 10:10:52
[2026-08-31 10:10:52,346.346 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:10:52,563.563 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:10:52,601.601 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:10:52,784.784 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:10:52,813.813 INFO    ] time= 31/08/2026 10:10:52
[2026-08-31 10:10:52,822.822 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:10:52,834.834 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:10:52,945.945 INFO    ] No existing commands found in stream
[2026-08-31 10:10:57,971.971 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:10:57,974.974 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-08-31 10:11:01,471.471 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 10:11:01,474.474 INFO    ] Checking for system updates...
[2026-08-31 10:11:01,514.514 INFO    ] 200
[2026-08-31 10:11:01,517.517 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:11:01,570.570 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:11:01,574.574 INFO    ] No update needed
[2026-08-31 10:11:01,577.577 INFO    ] Checking for camera pi updates...
[2026-08-31 10:11:01,611.611 INFO    ] 200
[2026-08-31 10:11:01,614.614 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:11:01,656.656 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:11:01,822.822 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:11:01,827.827 INFO    ] No camera update needed
[2026-08-31 10:11:01,843.843 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:11:01,848.848 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:11:01,856.856 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:11:01,866.866 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:11:03,911.911 INFO    ] ================================================
[2026-08-31 10:11:03,926.926 INFO    ] Launching Daemon at Mon Aug 31 10:11:03 IST 2026
[2026-08-31 10:11:03,937.937 INFO    ] ================================================
[2026-08-31 10:11:04,507.507 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:11:04
[2026-08-31 10:11:05,091.091 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:11:05,346.346 INFO    ] Initializing speech engine...
[2026-08-31 10:11:05,355.355 INFO    ] 2026-08-31 10:11:05
[2026-08-31 10:11:05,650.650 INFO    ] 2026-08-31 10:11:05
[2026-08-31 10:11:05,689.689 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:11:05,977.977 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:11:05,987.987 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:11:06,141.141 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:11:06,163.163 INFO    ] time= 31/08/2026 10:11:06
[2026-08-31 10:11:06,213.213 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:11:06,257.257 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:11:06,410.410 INFO    ] No existing commands found in stream
[2026-08-31 10:11:11,440.440 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:11:11,443.443 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-08-31 10:11:15,548.548 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 10:11:15,551.551 INFO    ] Checking for system updates...
[2026-08-31 10:11:15,590.590 INFO    ] 200
[2026-08-31 10:11:15,592.592 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:11:15,651.651 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:11:15,654.654 INFO    ] No update needed
[2026-08-31 10:11:15,656.656 INFO    ] Checking for camera pi updates...
[2026-08-31 10:11:15,689.689 INFO    ] 200
[2026-08-31 10:11:15,692.692 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:11:15,733.733 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:11:15,814.814 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:11:15,817.817 INFO    ] No camera update needed
[2026-08-31 10:11:15,820.820 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:11:15,823.823 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:11:15,830.830 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:11:15,835.835 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:11:17,877.877 INFO    ] ================================================
[2026-08-31 10:11:17,891.891 INFO    ] Launching Daemon at Mon Aug 31 10:11:17 IST 2026
[2026-08-31 10:11:17,902.902 INFO    ] ================================================
[2026-08-31 10:11:18,486.486 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:11:18
[2026-08-31 10:11:19,082.082 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:11:19,359.359 INFO    ] Initializing speech engine...
[2026-08-31 10:11:19,365.365 INFO    ] 2026-08-31 10:11:19
[2026-08-31 10:11:19,626.626 INFO    ] 2026-08-31 10:11:19
[2026-08-31 10:11:19,656.656 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:11:19,925.925 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:11:19,933.933 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:11:20,156.156 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:11:20,168.168 INFO    ] time= 31/08/2026 10:11:20
[2026-08-31 10:11:20,186.186 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:11:20,215.215 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:11:20,317.317 INFO    ] No existing commands found in stream
[2026-08-31 10:11:25,331.331 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:11:25,334.334 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-08-31 10:11:28,921.921 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 10:11:28,923.923 INFO    ] Checking for system updates...
[2026-08-31 10:11:28,959.959 INFO    ] 200
[2026-08-31 10:11:28,961.961 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:11:29,021.021 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:11:29,023.023 INFO    ] No update needed
[2026-08-31 10:11:29,025.025 INFO    ] Checking for camera pi updates...
[2026-08-31 10:11:29,060.060 INFO    ] 200
[2026-08-31 10:11:29,063.063 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:11:29,109.109 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:11:29,189.189 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:11:29,192.192 INFO    ] No camera update needed
[2026-08-31 10:11:29,195.195 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:11:29,198.198 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:11:29,204.204 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:11:29,210.210 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:11:31,252.252 INFO    ] ================================================
[2026-08-31 10:11:31,268.268 INFO    ] Launching Daemon at Mon Aug 31 10:11:31 IST 2026
[2026-08-31 10:11:31,278.278 INFO    ] ================================================
[2026-08-31 10:11:31,957.957 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:11:31
[2026-08-31 10:11:32,676.676 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:11:32,995.995 INFO    ] Initializing speech engine...
[2026-08-31 10:11:33,004.004 INFO    ] 2026-08-31 10:11:32
[2026-08-31 10:11:33,275.275 INFO    ] 2026-08-31 10:11:33
[2026-08-31 10:11:33,313.313 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:11:33,540.540 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:11:33,548.548 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:11:33,705.705 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:11:33,775.775 INFO    ] time= 31/08/2026 10:11:33
[2026-08-31 10:11:33,782.782 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:11:33,857.857 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:11:33,932.932 INFO    ] No existing commands found in stream
[2026-08-31 10:11:38,943.943 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:11:38,945.945 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-08-31 10:11:42,723.723 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 10:11:42,726.726 INFO    ] Checking for system updates...
[2026-08-31 10:11:42,762.762 INFO    ] 200
[2026-08-31 10:11:42,765.765 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:11:42,818.818 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:11:42,821.821 INFO    ] No update needed
[2026-08-31 10:11:42,824.824 INFO    ] Checking for camera pi updates...
[2026-08-31 10:11:42,859.859 INFO    ] 200
[2026-08-31 10:11:42,862.862 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:11:42,906.906 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:11:42,976.976 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:11:42,980.980 INFO    ] No camera update needed
[2026-08-31 10:11:42,982.982 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:11:42,985.985 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:11:42,991.991 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:11:42,997.997 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:11:45,039.039 INFO    ] ================================================
[2026-08-31 10:11:45,054.054 INFO    ] Launching Daemon at Mon Aug 31 10:11:45 IST 2026
[2026-08-31 10:11:45,064.064 INFO    ] ================================================
[2026-08-31 10:11:45,644.644 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:11:45
[2026-08-31 10:11:46,240.240 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:11:46,524.524 INFO    ] Initializing speech engine...
[2026-08-31 10:11:46,530.530 INFO    ] 2026-08-31 10:11:46
[2026-08-31 10:11:46,820.820 INFO    ] 2026-08-31 10:11:46
[2026-08-31 10:11:46,866.866 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:11:47,151.151 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:11:47,156.156 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:11:47,352.352 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:11:47,371.371 INFO    ] time= 31/08/2026 10:11:47
[2026-08-31 10:11:47,380.380 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:11:47,407.407 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:11:47,514.514 INFO    ] No existing commands found in stream
[2026-08-31 10:11:52,526.526 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:11:52,530.530 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-08-31 10:11:56,861.861 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 10:11:56,864.864 INFO    ] Checking for system updates...
[2026-08-31 10:11:56,902.902 INFO    ] 200
[2026-08-31 10:11:56,905.905 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:11:56,965.965 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:11:56,968.968 INFO    ] No update needed
[2026-08-31 10:11:56,971.971 INFO    ] Checking for camera pi updates...
[2026-08-31 10:11:57,008.008 INFO    ] 200
[2026-08-31 10:11:57,011.011 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:11:57,051.051 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:11:57,129.129 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:11:57,131.131 INFO    ] No camera update needed
[2026-08-31 10:11:57,133.133 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:11:57,136.136 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:11:57,141.141 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:11:57,146.146 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:11:59,186.186 INFO    ] ================================================
[2026-08-31 10:11:59,201.201 INFO    ] Launching Daemon at Mon Aug 31 10:11:59 IST 2026
[2026-08-31 10:11:59,212.212 INFO    ] ================================================
[2026-08-31 10:11:59,795.795 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:11:59
[2026-08-31 10:12:00,395.395 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:12:00,673.673 INFO    ] Initializing speech engine...
[2026-08-31 10:12:00,680.680 INFO    ] 2026-08-31 10:12:00
[2026-08-31 10:12:00,938.938 INFO    ] 2026-08-31 10:12:00
[2026-08-31 10:12:00,972.972 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:12:01,217.217 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:12:01,227.227 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:12:01,366.366 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:12:01,443.443 INFO    ] time= 31/08/2026 10:12:01
[2026-08-31 10:12:01,488.488 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:12:01,495.495 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:12:01,625.625 INFO    ] No existing commands found in stream
[2026-08-31 10:12:06,644.644 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:12:06,647.647 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-08-31 10:12:08,057.057 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 10:12:08,060.060 INFO    ] Checking for system updates...
[2026-08-31 10:12:08,099.099 INFO    ] 200
[2026-08-31 10:12:08,102.102 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:12:08,155.155 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:12:08,158.158 INFO    ] No update needed
[2026-08-31 10:12:08,161.161 INFO    ] Checking for camera pi updates...
[2026-08-31 10:12:08,194.194 INFO    ] 200
[2026-08-31 10:12:08,196.196 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:12:08,238.238 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:12:08,423.423 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:12:08,426.426 INFO    ] No camera update needed
[2026-08-31 10:12:08,428.428 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:12:08,431.431 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:12:08,437.437 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:12:08,443.443 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:12:10,484.484 INFO    ] ================================================
[2026-08-31 10:12:10,500.500 INFO    ] Launching Daemon at Mon Aug 31 10:12:10 IST 2026
[2026-08-31 10:12:10,512.512 INFO    ] ================================================
[2026-08-31 10:12:11,077.077 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:12:11
[2026-08-31 10:12:11,663.663 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:12:11,914.914 INFO    ] Initializing speech engine...
[2026-08-31 10:12:11,926.926 INFO    ] 2026-08-31 10:12:11
[2026-08-31 10:12:12,193.193 INFO    ] 2026-08-31 10:12:12
[2026-08-31 10:12:12,228.228 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:12:12,491.491 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:12:12,497.497 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:12:12,674.674 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:12:12,729.729 INFO    ] time= 31/08/2026 10:12:12
[2026-08-31 10:12:12,764.764 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:12:12,770.770 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:12:12,916.916 INFO    ] No existing commands found in stream
[2026-08-31 10:12:17,933.933 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:12:17,936.936 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-08-31 10:12:21,388.388 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 10:12:21,390.390 INFO    ] Checking for system updates...
[2026-08-31 10:12:21,425.425 INFO    ] 200
[2026-08-31 10:12:21,428.428 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:12:21,481.481 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:12:21,483.483 INFO    ] No update needed
[2026-08-31 10:12:21,486.486 INFO    ] Checking for camera pi updates...
[2026-08-31 10:12:21,528.528 INFO    ] 200
[2026-08-31 10:12:21,531.531 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:12:21,573.573 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:12:21,650.650 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:12:21,653.653 INFO    ] No camera update needed
[2026-08-31 10:12:21,655.655 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:12:21,657.657 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:12:21,663.663 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:12:21,668.668 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:12:23,709.709 INFO    ] ================================================
[2026-08-31 10:12:23,725.725 INFO    ] Launching Daemon at Mon Aug 31 10:12:23 IST 2026
[2026-08-31 10:12:23,736.736 INFO    ] ================================================
[2026-08-31 10:12:24,329.329 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:12:24
[2026-08-31 10:12:24,928.928 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:12:25,192.192 INFO    ] Initializing speech engine...
[2026-08-31 10:12:25,211.211 INFO    ] 2026-08-31 10:12:25
[2026-08-31 10:12:25,475.475 INFO    ] 2026-08-31 10:12:25
[2026-08-31 10:12:25,513.513 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:12:25,724.724 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:12:25,741.741 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:12:25,896.896 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:12:25,902.902 INFO    ] time= 31/08/2026 10:12:25
[2026-08-31 10:12:25,909.909 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:12:25,962.962 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:12:26,097.097 INFO    ] No existing commands found in stream
[2026-08-31 10:12:31,128.128 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:12:31,130.130 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-08-31 10:12:34,019.019 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 10:12:34,022.022 INFO    ] Checking for system updates...
[2026-08-31 10:12:34,061.061 INFO    ] 200
[2026-08-31 10:12:34,064.064 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:12:34,122.122 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:12:34,125.125 INFO    ] No update needed
[2026-08-31 10:12:34,127.127 INFO    ] Checking for camera pi updates...
[2026-08-31 10:12:34,160.160 INFO    ] 200
[2026-08-31 10:12:34,163.163 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:12:34,203.203 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:12:34,284.284 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:12:34,286.286 INFO    ] No camera update needed
[2026-08-31 10:12:34,289.289 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:12:34,291.291 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:12:34,296.296 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:12:34,301.301 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:12:36,341.341 INFO    ] ================================================
[2026-08-31 10:12:36,356.356 INFO    ] Launching Daemon at Mon Aug 31 10:12:36 IST 2026
[2026-08-31 10:12:36,367.367 INFO    ] ================================================
[2026-08-31 10:12:37,027.027 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:12:37
[2026-08-31 10:12:37,696.696 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:12:38,012.012 INFO    ] Initializing speech engine...
[2026-08-31 10:12:38,018.018 INFO    ] 2026-08-31 10:12:38
[2026-08-31 10:12:38,326.326 INFO    ] 2026-08-31 10:12:38
[2026-08-31 10:12:38,412.412 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:12:38,688.688 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:12:38,736.736 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:12:38,951.951 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:12:38,997.997 INFO    ] time= 31/08/2026 10:12:38
[2026-08-31 10:12:39,047.047 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:12:39,079.079 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:12:39,213.213 INFO    ] No existing commands found in stream
[2026-08-31 10:12:44,234.234 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:12:44,238.238 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-08-31 10:12:45,251.251 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 10:12:45,253.253 INFO    ] Checking for system updates...
[2026-08-31 10:12:45,290.290 INFO    ] 200
[2026-08-31 10:12:45,293.293 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:12:45,353.353 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:12:45,356.356 INFO    ] No update needed
[2026-08-31 10:12:45,359.359 INFO    ] Checking for camera pi updates...
[2026-08-31 10:12:45,397.397 INFO    ] 200
[2026-08-31 10:12:45,400.400 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:12:45,445.445 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:12:45,531.531 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:12:45,534.534 INFO    ] No camera update needed
[2026-08-31 10:12:45,537.537 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:12:45,539.539 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:12:45,546.546 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:12:45,552.552 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:12:47,595.595 INFO    ] ================================================
[2026-08-31 10:12:47,610.610 INFO    ] Launching Daemon at Mon Aug 31 10:12:47 IST 2026
[2026-08-31 10:12:47,621.621 INFO    ] ================================================
[2026-08-31 10:12:48,276.276 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:12:48
[2026-08-31 10:12:48,949.949 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:12:49,255.255 INFO    ] Initializing speech engine...
[2026-08-31 10:12:49,269.269 INFO    ] 2026-08-31 10:12:49
[2026-08-31 10:12:49,553.553 INFO    ] 2026-08-31 10:12:49
[2026-08-31 10:12:49,662.662 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:12:49,843.843 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:12:49,868.868 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:12:50,046.046 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:12:50,084.084 INFO    ] time= 31/08/2026 10:12:50
[2026-08-31 10:12:50,100.100 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:12:50,109.109 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:12:50,243.243 INFO    ] No existing commands found in stream
[2026-08-31 10:12:55,266.266 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:12:55,269.269 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-08-31 10:12:58,691.691 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 10:12:58,694.694 INFO    ] Checking for system updates...
[2026-08-31 10:12:58,731.731 INFO    ] 200
[2026-08-31 10:12:58,733.733 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:12:58,786.786 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:12:58,789.789 INFO    ] No update needed
[2026-08-31 10:12:58,792.792 INFO    ] Checking for camera pi updates...
[2026-08-31 10:12:58,827.827 INFO    ] 200
[2026-08-31 10:12:58,830.830 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:12:58,876.876 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:12:58,958.958 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:12:58,960.960 INFO    ] No camera update needed
[2026-08-31 10:12:58,963.963 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:12:58,966.966 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:12:58,972.972 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:12:58,978.978 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:13:01,019.019 INFO    ] ================================================
[2026-08-31 10:13:01,034.034 INFO    ] Launching Daemon at Mon Aug 31 10:13:01 IST 2026
[2026-08-31 10:13:01,046.046 INFO    ] ================================================
[2026-08-31 10:13:01,700.700 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:13:01
[2026-08-31 10:13:02,506.506 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:13:02,806.806 INFO    ] Initializing speech engine...
[2026-08-31 10:13:02,826.826 INFO    ] 2026-08-31 10:13:02
[2026-08-31 10:13:03,113.113 INFO    ] 2026-08-31 10:13:03
[2026-08-31 10:13:03,228.228 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:13:03,451.451 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:13:03,463.463 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:13:03,608.608 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:13:03,660.660 INFO    ] time= 31/08/2026 10:13:03
[2026-08-31 10:13:03,725.725 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:13:03,749.749 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:13:03,809.809 INFO    ] No existing commands found in stream
[2026-08-31 10:13:08,821.821 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:13:08,823.823 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-08-31 10:13:11,577.577 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 10:13:11,580.580 INFO    ] Checking for system updates...
[2026-08-31 10:13:11,620.620 INFO    ] 200
[2026-08-31 10:13:11,622.622 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:13:11,684.684 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:13:11,686.686 INFO    ] No update needed
[2026-08-31 10:13:11,689.689 INFO    ] Checking for camera pi updates...
[2026-08-31 10:13:11,726.726 INFO    ] 200
[2026-08-31 10:13:11,729.729 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:13:11,780.780 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:13:11,859.859 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:13:11,861.861 INFO    ] No camera update needed
[2026-08-31 10:13:11,864.864 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:13:11,866.866 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:13:11,871.871 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:13:11,876.876 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:13:13,918.918 INFO    ] ================================================
[2026-08-31 10:13:13,933.933 INFO    ] Launching Daemon at Mon Aug 31 10:13:13 IST 2026
[2026-08-31 10:13:13,945.945 INFO    ] ================================================
[2026-08-31 10:13:14,564.564 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:13:14
[2026-08-31 10:13:15,204.204 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:13:15,501.501 INFO    ] Initializing speech engine...
[2026-08-31 10:13:15,515.515 INFO    ] 2026-08-31 10:13:15
[2026-08-31 10:13:15,777.777 INFO    ] 2026-08-31 10:13:15
[2026-08-31 10:13:15,829.829 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:13:16,079.079 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:13:16,083.083 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:13:16,299.299 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:13:16,322.322 INFO    ] time= 31/08/2026 10:13:16
[2026-08-31 10:13:16,339.339 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:13:16,370.370 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:13:16,478.478 INFO    ] No existing commands found in stream
[2026-08-31 10:13:21,512.512 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:13:21,515.515 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-08-31 10:13:25,652.652 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 10:13:25,655.655 INFO    ] Checking for system updates...
[2026-08-31 10:13:25,691.691 INFO    ] 200
[2026-08-31 10:13:25,693.693 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:13:25,746.746 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:13:25,749.749 INFO    ] No update needed
[2026-08-31 10:13:25,752.752 INFO    ] Checking for camera pi updates...
[2026-08-31 10:13:25,785.785 INFO    ] 200
[2026-08-31 10:13:25,788.788 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:13:25,829.829 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:13:25,918.918 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:13:25,921.921 INFO    ] No camera update needed
[2026-08-31 10:13:25,924.924 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:13:25,926.926 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:13:25,932.932 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:13:25,937.937 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:13:27,977.977 INFO    ] ================================================
[2026-08-31 10:13:27,993.993 INFO    ] Launching Daemon at Mon Aug 31 10:13:27 IST 2026
[2026-08-31 10:13:28,004.004 INFO    ] ================================================
[2026-08-31 10:13:28,571.571 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:13:28
[2026-08-31 10:13:29,157.157 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:13:29,435.435 INFO    ] Initializing speech engine...
[2026-08-31 10:13:29,445.445 INFO    ] 2026-08-31 10:13:29
[2026-08-31 10:13:29,702.702 INFO    ] 2026-08-31 10:13:29
[2026-08-31 10:13:29,739.739 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:13:29,928.928 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:13:29,942.942 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:13:30,172.172 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:13:30,178.178 INFO    ] time= 31/08/2026 10:13:30
[2026-08-31 10:13:30,224.224 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:13:30,267.267 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:13:30,372.372 INFO    ] No existing commands found in stream
[2026-08-31 10:13:35,383.383 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:13:35,386.386 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-08-31 10:13:38,387.387 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 10:13:38,389.389 INFO    ] Checking for system updates...
[2026-08-31 10:13:38,425.425 INFO    ] 200
[2026-08-31 10:13:38,427.427 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:13:38,480.480 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:13:38,482.482 INFO    ] No update needed
[2026-08-31 10:13:38,485.485 INFO    ] Checking for camera pi updates...
[2026-08-31 10:13:38,518.518 INFO    ] 200
[2026-08-31 10:13:38,520.520 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:13:38,560.560 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:13:38,645.645 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:13:38,648.648 INFO    ] No camera update needed
[2026-08-31 10:13:38,650.650 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:13:38,652.652 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:13:38,658.658 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:13:38,663.663 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:13:40,702.702 INFO    ] ================================================
[2026-08-31 10:13:40,717.717 INFO    ] Launching Daemon at Mon Aug 31 10:13:40 IST 2026
[2026-08-31 10:13:40,728.728 INFO    ] ================================================
[2026-08-31 10:13:41,318.318 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:13:41
[2026-08-31 10:13:41,915.915 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:13:42,189.189 INFO    ] Initializing speech engine...
[2026-08-31 10:13:42,200.200 INFO    ] 2026-08-31 10:13:42
[2026-08-31 10:13:42,447.447 INFO    ] 2026-08-31 10:13:42
[2026-08-31 10:13:42,481.481 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:13:42,732.732 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:13:42,742.742 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:13:42,875.875 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:13:42,915.915 INFO    ] time= 31/08/2026 10:13:42
[2026-08-31 10:13:42,969.969 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:13:43,006.006 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:13:43,124.124 INFO    ] No existing commands found in stream
[2026-08-31 10:13:48,149.149 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:13:48,152.152 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-08-31 10:13:49,859.859 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 10:13:49,862.862 INFO    ] Checking for system updates...
[2026-08-31 10:13:49,904.904 INFO    ] 200
[2026-08-31 10:13:49,906.906 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:13:49,966.966 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:13:49,969.969 INFO    ] No update needed
[2026-08-31 10:13:49,971.971 INFO    ] Checking for camera pi updates...
[2026-08-31 10:13:50,007.007 INFO    ] 200
[2026-08-31 10:13:50,010.010 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:13:50,054.054 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:13:50,132.132 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:13:50,135.135 INFO    ] No camera update needed
[2026-08-31 10:13:50,137.137 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:13:50,139.139 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:13:50,145.145 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:13:50,150.150 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:13:52,190.190 INFO    ] ================================================
[2026-08-31 10:13:52,206.206 INFO    ] Launching Daemon at Mon Aug 31 10:13:52 IST 2026
[2026-08-31 10:13:52,217.217 INFO    ] ================================================
[2026-08-31 10:13:52,788.788 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:13:52
[2026-08-31 10:13:53,371.371 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:13:53,640.640 INFO    ] Initializing speech engine...
[2026-08-31 10:13:53,649.649 INFO    ] 2026-08-31 10:13:53
[2026-08-31 10:13:53,910.910 INFO    ] 2026-08-31 10:13:53
[2026-08-31 10:13:53,963.963 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:13:54,209.209 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:13:54,216.216 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:13:54,408.408 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:13:54,452.452 INFO    ] time= 31/08/2026 10:13:54
[2026-08-31 10:13:54,458.458 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:13:54,476.476 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:13:54,607.607 INFO    ] No existing commands found in stream
[2026-08-31 10:13:59,619.619 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:13:59,621.621 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-08-31 10:14:00,614.614 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 10:14:00,617.617 INFO    ] Checking for system updates...
[2026-08-31 10:14:00,652.652 INFO    ] 200
[2026-08-31 10:14:00,655.655 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:14:00,710.710 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:14:00,713.713 INFO    ] No update needed
[2026-08-31 10:14:00,716.716 INFO    ] Checking for camera pi updates...
[2026-08-31 10:14:00,749.749 INFO    ] 200
[2026-08-31 10:14:00,751.751 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:14:00,795.795 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:14:00,885.885 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:14:00,887.887 INFO    ] No camera update needed
[2026-08-31 10:14:00,890.890 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:14:00,892.892 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:14:00,897.897 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:14:00,902.902 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:14:02,966.966 INFO    ] ================================================
[2026-08-31 10:14:02,987.987 INFO    ] Launching Daemon at Mon Aug 31 10:14:02 IST 2026
[2026-08-31 10:14:03,004.004 INFO    ] ================================================
[2026-08-31 10:14:03,658.658 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:14:03
[2026-08-31 10:14:04,241.241 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:14:04,490.490 INFO    ] Initializing speech engine...
[2026-08-31 10:14:04,512.512 INFO    ] 2026-08-31 10:14:04
[2026-08-31 10:14:04,765.765 INFO    ] 2026-08-31 10:14:04
[2026-08-31 10:14:04,799.799 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:14:05,000.000 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:14:05,051.051 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:14:05,289.289 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:14:05,327.327 INFO    ] time= 31/08/2026 10:14:05
[2026-08-31 10:14:05,333.333 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:14:05,351.351 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:14:05,485.485 INFO    ] No existing commands found in stream
[2026-08-31 10:14:10,499.499 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:14:10,502.502 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-08-31 10:14:13,523.523 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 10:14:13,526.526 INFO    ] Checking for system updates...
[2026-08-31 10:14:13,561.561 INFO    ] 200
[2026-08-31 10:14:13,564.564 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:14:13,615.615 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:14:13,617.617 INFO    ] No update needed
[2026-08-31 10:14:13,620.620 INFO    ] Checking for camera pi updates...
[2026-08-31 10:14:13,653.653 INFO    ] 200
[2026-08-31 10:14:13,655.655 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:14:13,699.699 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:14:13,881.881 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:14:13,884.884 INFO    ] No camera update needed
[2026-08-31 10:14:13,886.886 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:14:13,888.888 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:14:13,893.893 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:14:13,898.898 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:14:15,941.941 INFO    ] ================================================
[2026-08-31 10:14:15,956.956 INFO    ] Launching Daemon at Mon Aug 31 10:14:15 IST 2026
[2026-08-31 10:14:15,968.968 INFO    ] ================================================
[2026-08-31 10:14:16,578.578 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:14:16
[2026-08-31 10:14:17,162.162 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:14:17,410.410 INFO    ] Initializing speech engine...
[2026-08-31 10:14:17,433.433 INFO    ] 2026-08-31 10:14:17
[2026-08-31 10:14:17,688.688 INFO    ] 2026-08-31 10:14:17
[2026-08-31 10:14:17,723.723 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:14:17,978.978 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:14:17,987.987 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:14:18,123.123 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:14:18,173.173 INFO    ] time= 31/08/2026 10:14:18
[2026-08-31 10:14:18,216.216 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:14:18,255.255 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:14:18,376.376 INFO    ] No existing commands found in stream
[2026-08-31 10:14:23,406.406 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:14:23,409.409 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-08-31 10:14:26,123.123 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 10:14:26,125.125 INFO    ] Checking for system updates...
[2026-08-31 10:14:26,161.161 INFO    ] 200
[2026-08-31 10:14:26,163.163 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:14:26,215.215 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:14:26,217.217 INFO    ] No update needed
[2026-08-31 10:14:26,220.220 INFO    ] Checking for camera pi updates...
[2026-08-31 10:14:26,255.255 INFO    ] 200
[2026-08-31 10:14:26,258.258 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:14:26,298.298 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:14:26,386.386 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:14:26,389.389 INFO    ] No camera update needed
[2026-08-31 10:14:26,391.391 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:14:26,394.394 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:14:26,399.399 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:14:26,404.404 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:14:28,444.444 INFO    ] ================================================
[2026-08-31 10:14:28,459.459 INFO    ] Launching Daemon at Mon Aug 31 10:14:28 IST 2026
[2026-08-31 10:14:28,470.470 INFO    ] ================================================
[2026-08-31 10:14:29,048.048 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:14:29
[2026-08-31 10:14:29,642.642 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:14:29,903.903 INFO    ] Initializing speech engine...
[2026-08-31 10:14:29,917.917 INFO    ] 2026-08-31 10:14:29
[2026-08-31 10:14:30,172.172 INFO    ] 2026-08-31 10:14:30
[2026-08-31 10:14:30,206.206 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:14:30,458.458 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:14:30,467.467 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:14:30,607.607 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:14:30,667.667 INFO    ] time= 31/08/2026 10:14:30
[2026-08-31 10:14:30,721.721 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:14:30,735.735 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:14:30,884.884 INFO    ] No existing commands found in stream
[2026-08-31 10:14:35,894.894 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:14:35,896.896 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-08-31 10:14:40,412.412 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 10:14:40,414.414 INFO    ] Checking for system updates...
[2026-08-31 10:14:40,449.449 INFO    ] 200
[2026-08-31 10:14:40,452.452 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:14:40,515.515 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:14:40,518.518 INFO    ] No update needed
[2026-08-31 10:14:40,520.520 INFO    ] Checking for camera pi updates...
[2026-08-31 10:14:40,554.554 INFO    ] 200
[2026-08-31 10:14:40,556.556 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:14:40,598.598 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:14:40,649.649 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:14:40,651.651 INFO    ] No camera update needed
[2026-08-31 10:14:40,654.654 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:14:40,658.658 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:14:40,664.664 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:14:40,670.670 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:14:42,713.713 INFO    ] ================================================
[2026-08-31 10:14:42,728.728 INFO    ] Launching Daemon at Mon Aug 31 10:14:42 IST 2026
[2026-08-31 10:14:42,739.739 INFO    ] ================================================
[2026-08-31 10:14:43,375.375 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:14:43
[2026-08-31 10:14:44,016.016 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:14:44,298.298 INFO    ] Initializing speech engine...
[2026-08-31 10:14:44,306.306 INFO    ] 2026-08-31 10:14:44
[2026-08-31 10:14:44,569.569 INFO    ] 2026-08-31 10:14:44
[2026-08-31 10:14:44,598.598 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:14:44,847.847 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:14:44,853.853 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:14:45,068.068 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:14:45,110.110 INFO    ] time= 31/08/2026 10:14:45
[2026-08-31 10:14:45,116.116 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:14:45,134.134 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:14:45,243.243 INFO    ] No existing commands found in stream
[2026-08-31 10:14:50,271.271 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:14:50,273.273 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-08-31 10:14:54,621.621 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 10:14:54,624.624 INFO    ] Checking for system updates...
[2026-08-31 10:14:54,659.659 INFO    ] 200
[2026-08-31 10:14:54,662.662 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:14:54,713.713 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:14:54,715.715 INFO    ] No update needed
[2026-08-31 10:14:54,718.718 INFO    ] Checking for camera pi updates...
[2026-08-31 10:14:54,755.755 INFO    ] 200
[2026-08-31 10:14:54,757.757 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:14:54,800.800 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:14:54,888.888 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:14:54,891.891 INFO    ] No camera update needed
[2026-08-31 10:14:54,893.893 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:14:54,895.895 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:14:54,901.901 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:14:54,906.906 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:14:56,946.946 INFO    ] ================================================
[2026-08-31 10:14:56,962.962 INFO    ] Launching Daemon at Mon Aug 31 10:14:56 IST 2026
[2026-08-31 10:14:56,972.972 INFO    ] ================================================
[2026-08-31 10:14:57,553.553 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:14:57
[2026-08-31 10:14:58,149.149 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:14:58,420.420 INFO    ] Initializing speech engine...
[2026-08-31 10:14:58,430.430 INFO    ] 2026-08-31 10:14:58
[2026-08-31 10:14:58,692.692 INFO    ] 2026-08-31 10:14:58
[2026-08-31 10:14:58,722.722 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:14:58,966.966 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:14:58,976.976 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:14:59,179.179 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:14:59,232.232 INFO    ] time= 31/08/2026 10:14:59
[2026-08-31 10:14:59,238.238 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:14:59,256.256 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:14:59,387.387 INFO    ] No existing commands found in stream
[2026-08-31 10:15:04,414.414 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:15:04,417.417 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-08-31 10:15:08,208.208 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 10:15:08,211.211 INFO    ] Checking for system updates...
[2026-08-31 10:15:08,246.246 INFO    ] 200
[2026-08-31 10:15:08,249.249 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:15:08,300.300 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:15:08,303.303 INFO    ] No update needed
[2026-08-31 10:15:08,305.305 INFO    ] Checking for camera pi updates...
[2026-08-31 10:15:08,342.342 INFO    ] 200
[2026-08-31 10:15:08,344.344 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:15:08,384.384 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:15:08,479.479 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:15:08,482.482 INFO    ] No camera update needed
[2026-08-31 10:15:08,484.484 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:15:08,486.486 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:15:08,492.492 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:15:08,497.497 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:15:10,538.538 INFO    ] ================================================
[2026-08-31 10:15:10,553.553 INFO    ] Launching Daemon at Mon Aug 31 10:15:10 IST 2026
[2026-08-31 10:15:10,564.564 INFO    ] ================================================
[2026-08-31 10:15:11,134.134 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:15:11
[2026-08-31 10:15:11,719.719 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:15:11,978.978 INFO    ] Initializing speech engine...
[2026-08-31 10:15:11,992.992 INFO    ] 2026-08-31 10:15:11
[2026-08-31 10:15:12,270.270 INFO    ] 2026-08-31 10:15:12
[2026-08-31 10:15:12,308.308 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:15:12,566.566 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:15:12,576.576 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:15:12,711.711 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:15:12,732.732 INFO    ] time= 31/08/2026 10:15:12
[2026-08-31 10:15:12,792.792 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:15:12,847.847 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:15:12,987.987 INFO    ] No existing commands found in stream
[2026-08-31 10:15:18,005.005 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:15:18,008.008 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-08-31 10:15:20,849.849 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 10:15:20,852.852 INFO    ] Checking for system updates...
[2026-08-31 10:15:20,891.891 INFO    ] 200
[2026-08-31 10:15:20,894.894 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:15:20,947.947 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:15:20,950.950 INFO    ] No update needed
[2026-08-31 10:15:20,952.952 INFO    ] Checking for camera pi updates...
[2026-08-31 10:15:20,985.985 INFO    ] 200
[2026-08-31 10:15:20,988.988 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:15:21,029.029 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:15:21,113.113 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:15:21,115.115 INFO    ] No camera update needed
[2026-08-31 10:15:21,118.118 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:15:21,120.120 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:15:21,125.125 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:15:21,130.130 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:15:23,172.172 INFO    ] ================================================
[2026-08-31 10:15:23,186.186 INFO    ] Launching Daemon at Mon Aug 31 10:15:23 IST 2026
[2026-08-31 10:15:23,198.198 INFO    ] ================================================
[2026-08-31 10:15:23,768.768 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:15:23
[2026-08-31 10:15:24,352.352 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:15:24,603.603 INFO    ] Initializing speech engine...
[2026-08-31 10:15:24,628.628 INFO    ] 2026-08-31 10:15:24
[2026-08-31 10:15:24,880.880 INFO    ] 2026-08-31 10:15:24
[2026-08-31 10:15:24,915.915 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:15:25,153.153 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:15:25,175.175 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:15:25,349.349 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:15:25,409.409 INFO    ] time= 31/08/2026 10:15:25
[2026-08-31 10:15:25,450.450 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:15:25,456.456 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:15:25,584.584 INFO    ] No existing commands found in stream
[2026-08-31 10:15:30,609.609 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:15:30,612.612 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-08-31 10:15:32,067.067 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 10:15:32,070.070 INFO    ] Checking for system updates...
[2026-08-31 10:15:32,110.110 INFO    ] 200
[2026-08-31 10:15:32,112.112 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:15:32,172.172 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:15:32,174.174 INFO    ] No update needed
[2026-08-31 10:15:32,177.177 INFO    ] Checking for camera pi updates...
[2026-08-31 10:15:32,213.213 INFO    ] 200
[2026-08-31 10:15:32,216.216 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:15:32,276.276 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:15:32,336.336 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:15:32,339.339 INFO    ] No camera update needed
[2026-08-31 10:15:32,342.342 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:15:32,344.344 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:15:32,350.350 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:15:32,356.356 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:15:34,402.402 INFO    ] ================================================
[2026-08-31 10:15:34,417.417 INFO    ] Launching Daemon at Mon Aug 31 10:15:34 IST 2026
[2026-08-31 10:15:34,428.428 INFO    ] ================================================
[2026-08-31 10:15:35,000.000 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:15:34
[2026-08-31 10:15:35,592.592 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:15:35,865.865 INFO    ] Initializing speech engine...
[2026-08-31 10:15:35,871.871 INFO    ] 2026-08-31 10:15:35
[2026-08-31 10:15:36,132.132 INFO    ] 2026-08-31 10:15:36
[2026-08-31 10:15:36,186.186 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:15:36,437.437 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:15:36,442.442 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:15:36,651.651 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:15:36,679.679 INFO    ] time= 31/08/2026 10:15:36
[2026-08-31 10:15:36,695.695 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:15:36,704.704 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:15:36,818.818 INFO    ] No existing commands found in stream
[2026-08-31 10:15:41,843.843 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:15:41,846.846 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-08-31 10:15:45,244.244 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 10:15:45,247.247 INFO    ] Checking for system updates...
[2026-08-31 10:15:45,288.288 INFO    ] 200
[2026-08-31 10:15:45,290.290 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:15:45,342.342 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:15:45,345.345 INFO    ] No update needed
[2026-08-31 10:15:45,347.347 INFO    ] Checking for camera pi updates...
[2026-08-31 10:15:45,381.381 INFO    ] 200
[2026-08-31 10:15:45,383.383 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:15:45,429.429 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:15:45,508.508 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:15:45,511.511 INFO    ] No camera update needed
[2026-08-31 10:15:45,513.513 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:15:45,516.516 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:15:45,521.521 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:15:45,526.526 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:15:47,566.566 INFO    ] ================================================
[2026-08-31 10:15:47,581.581 INFO    ] Launching Daemon at Mon Aug 31 10:15:47 IST 2026
[2026-08-31 10:15:47,591.591 INFO    ] ================================================
[2026-08-31 10:15:48,171.171 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:15:48
[2026-08-31 10:15:48,769.769 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:15:49,048.048 INFO    ] Initializing speech engine...
[2026-08-31 10:15:49,053.053 INFO    ] 2026-08-31 10:15:49
[2026-08-31 10:15:49,316.316 INFO    ] 2026-08-31 10:15:49
[2026-08-31 10:15:49,368.368 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:15:49,592.592 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:15:49,601.601 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:15:49,735.735 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:15:49,795.795 INFO    ] time= 31/08/2026 10:15:49
[2026-08-31 10:15:49,844.844 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:15:49,866.866 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:15:49,936.936 INFO    ] No existing commands found in stream
[2026-08-31 10:15:54,973.973 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:15:54,975.975 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-08-31 10:15:58,202.202 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 10:15:58,205.205 INFO    ] Checking for system updates...
[2026-08-31 10:15:58,250.250 INFO    ] 200
[2026-08-31 10:15:58,253.253 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:15:58,310.310 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:15:58,313.313 INFO    ] No update needed
[2026-08-31 10:15:58,316.316 INFO    ] Checking for camera pi updates...
[2026-08-31 10:15:58,352.352 INFO    ] 200
[2026-08-31 10:15:58,355.355 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:15:58,405.405 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:15:58,508.508 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:15:58,511.511 INFO    ] No camera update needed
[2026-08-31 10:15:58,514.514 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:15:58,516.516 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:15:58,523.523 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:15:58,529.529 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:16:00,570.570 INFO    ] ================================================
[2026-08-31 10:16:00,585.585 INFO    ] Launching Daemon at Mon Aug 31 10:16:00 IST 2026
[2026-08-31 10:16:00,596.596 INFO    ] ================================================
[2026-08-31 10:16:01,163.163 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:16:01
[2026-08-31 10:16:01,883.883 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:16:02,198.198 INFO    ] Initializing speech engine...
[2026-08-31 10:16:02,206.206 INFO    ] 2026-08-31 10:16:02
[2026-08-31 10:16:02,497.497 INFO    ] 2026-08-31 10:16:02
[2026-08-31 10:16:02,539.539 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:16:02,723.723 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:16:02,726.726 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:16:02,883.883 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:16:02,918.918 INFO    ] time= 31/08/2026 10:16:02
[2026-08-31 10:16:02,925.925 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:16:02,941.941 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:16:03,014.014 INFO    ] No existing commands found in stream
[2026-08-31 10:16:08,028.028 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:16:08,031.031 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-08-31 10:16:09,853.853 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 10:16:09,857.857 INFO    ] Checking for system updates...
[2026-08-31 10:16:09,898.898 INFO    ] 200
[2026-08-31 10:16:09,900.900 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:16:09,960.960 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:16:09,963.963 INFO    ] No update needed
[2026-08-31 10:16:09,966.966 INFO    ] Checking for camera pi updates...
[2026-08-31 10:16:10,005.005 INFO    ] 200
[2026-08-31 10:16:10,008.008 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:16:10,049.049 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:16:10,129.129 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:16:10,132.132 INFO    ] No camera update needed
[2026-08-31 10:16:10,134.134 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:16:10,137.137 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:16:10,144.144 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:16:10,150.150 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:16:12,192.192 INFO    ] ================================================
[2026-08-31 10:16:12,208.208 INFO    ] Launching Daemon at Mon Aug 31 10:16:12 IST 2026
[2026-08-31 10:16:12,223.223 INFO    ] ================================================
[2026-08-31 10:16:12,805.805 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:16:12
[2026-08-31 10:16:13,402.402 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:16:13,674.674 INFO    ] Initializing speech engine...
[2026-08-31 10:16:13,684.684 INFO    ] 2026-08-31 10:16:13
[2026-08-31 10:16:13,946.946 INFO    ] 2026-08-31 10:16:13
[2026-08-31 10:16:14,000.000 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:16:14,245.245 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:16:14,253.253 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:16:14,464.464 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:16:14,492.492 INFO    ] time= 31/08/2026 10:16:14
[2026-08-31 10:16:14,498.498 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:16:14,515.515 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:16:14,648.648 INFO    ] No existing commands found in stream
[2026-08-31 10:16:19,669.669 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:16:19,672.672 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-08-31 10:16:22,574.574 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 10:16:22,576.576 INFO    ] Checking for system updates...
[2026-08-31 10:16:22,616.616 INFO    ] 200
[2026-08-31 10:16:22,618.618 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:16:22,682.682 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:16:22,684.684 INFO    ] No update needed
[2026-08-31 10:16:22,687.687 INFO    ] Checking for camera pi updates...
[2026-08-31 10:16:22,722.722 INFO    ] 200
[2026-08-31 10:16:22,724.724 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:16:22,770.770 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:16:22,960.960 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:16:22,963.963 INFO    ] No camera update needed
[2026-08-31 10:16:22,965.965 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:16:22,967.967 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:16:22,973.973 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:16:22,978.978 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:16:25,018.018 INFO    ] ================================================
[2026-08-31 10:16:25,033.033 INFO    ] Launching Daemon at Mon Aug 31 10:16:25 IST 2026
[2026-08-31 10:16:25,044.044 INFO    ] ================================================
[2026-08-31 10:16:25,624.624 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:16:25
[2026-08-31 10:16:26,222.222 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:16:26,495.495 INFO    ] Initializing speech engine...
[2026-08-31 10:16:26,504.504 INFO    ] 2026-08-31 10:16:26
[2026-08-31 10:16:26,753.753 INFO    ] 2026-08-31 10:16:26
[2026-08-31 10:16:26,790.790 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:16:26,987.987 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:16:27,044.044 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:16:27,249.249 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:16:27,309.309 INFO    ] time= 31/08/2026 10:16:27
[2026-08-31 10:16:27,316.316 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:16:27,334.334 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:16:27,465.465 INFO    ] No existing commands found in stream
[2026-08-31 10:16:32,488.488 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:16:32,492.492 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-08-31 10:16:35,026.026 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 10:16:35,029.029 INFO    ] Checking for system updates...
[2026-08-31 10:16:35,065.065 INFO    ] 200
[2026-08-31 10:16:35,067.067 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:16:35,119.119 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:16:35,121.121 INFO    ] No update needed
[2026-08-31 10:16:35,124.124 INFO    ] Checking for camera pi updates...
[2026-08-31 10:16:35,161.161 INFO    ] 200
[2026-08-31 10:16:35,164.164 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:16:35,212.212 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:16:35,293.293 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:16:35,295.295 INFO    ] No camera update needed
[2026-08-31 10:16:35,298.298 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:16:35,300.300 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:16:35,306.306 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:16:35,311.311 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:16:37,352.352 INFO    ] ================================================
[2026-08-31 10:16:37,367.367 INFO    ] Launching Daemon at Mon Aug 31 10:16:37 IST 2026
[2026-08-31 10:16:37,378.378 INFO    ] ================================================
[2026-08-31 10:16:37,944.944 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:16:37
[2026-08-31 10:16:38,524.524 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:16:38,787.787 INFO    ] Initializing speech engine...
[2026-08-31 10:16:38,800.800 INFO    ] 2026-08-31 10:16:38
[2026-08-31 10:16:39,054.054 INFO    ] 2026-08-31 10:16:39
[2026-08-31 10:16:39,112.112 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:16:39,320.320 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:16:39,342.342 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:16:39,476.476 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:16:39,552.552 INFO    ] time= 31/08/2026 10:16:39
[2026-08-31 10:16:39,603.603 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:16:39,610.610 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:16:39,757.757 INFO    ] No existing commands found in stream
[2026-08-31 10:16:44,784.784 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:16:44,787.787 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-08-31 10:16:47,743.743 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 10:16:47,745.745 INFO    ] Checking for system updates...
[2026-08-31 10:16:47,780.780 INFO    ] 200
[2026-08-31 10:16:47,783.783 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:16:47,860.860 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:16:47,862.862 INFO    ] No update needed
[2026-08-31 10:16:47,865.865 INFO    ] Checking for camera pi updates...
[2026-08-31 10:16:47,898.898 INFO    ] 200
[2026-08-31 10:16:47,900.900 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:16:47,944.944 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:16:48,037.037 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:16:48,040.040 INFO    ] No camera update needed
[2026-08-31 10:16:48,042.042 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:16:48,044.044 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:16:48,050.050 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:16:48,054.054 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:16:50,095.095 INFO    ] ================================================
[2026-08-31 10:16:50,110.110 INFO    ] Launching Daemon at Mon Aug 31 10:16:50 IST 2026
[2026-08-31 10:16:50,121.121 INFO    ] ================================================
[2026-08-31 10:16:50,686.686 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:16:50
[2026-08-31 10:16:51,269.269 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:16:51,517.517 INFO    ] Initializing speech engine...
[2026-08-31 10:16:51,540.540 INFO    ] 2026-08-31 10:16:51
[2026-08-31 10:16:51,797.797 INFO    ] 2026-08-31 10:16:51
[2026-08-31 10:16:51,832.832 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:16:52,090.090 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:16:52,099.099 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:16:52,242.242 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:16:52,307.307 INFO    ] time= 31/08/2026 10:16:52
[2026-08-31 10:16:52,366.366 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:16:52,373.373 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:16:52,524.524 INFO    ] No existing commands found in stream
[2026-08-31 10:16:57,552.552 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:16:57,554.554 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-08-31 10:16:58,852.852 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 10:16:58,855.855 INFO    ] Checking for system updates...
[2026-08-31 10:16:58,891.891 INFO    ] 200
[2026-08-31 10:16:58,893.893 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:16:58,951.951 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:16:58,953.953 INFO    ] No update needed
[2026-08-31 10:16:58,956.956 INFO    ] Checking for camera pi updates...
[2026-08-31 10:16:58,989.989 INFO    ] 200
[2026-08-31 10:16:58,992.992 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:16:59,031.031 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:16:59,120.120 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:16:59,123.123 INFO    ] No camera update needed
[2026-08-31 10:16:59,125.125 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:16:59,128.128 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:16:59,133.133 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:16:59,139.139 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:17:01,180.180 INFO    ] ================================================
[2026-08-31 10:17:01,197.197 INFO    ] Launching Daemon at Mon Aug 31 10:17:01 IST 2026
[2026-08-31 10:17:01,209.209 INFO    ] ================================================
[2026-08-31 10:17:02,079.079 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:17:02
[2026-08-31 10:17:02,795.795 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:17:03,169.169 INFO    ] Initializing speech engine...
[2026-08-31 10:17:03,181.181 INFO    ] 2026-08-31 10:17:03
[2026-08-31 10:17:03,453.453 INFO    ] 2026-08-31 10:17:03
[2026-08-31 10:17:03,495.495 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:17:03,691.691 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:17:03,736.736 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:17:03,973.973 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:17:04,019.019 INFO    ] time= 31/08/2026 10:17:03
[2026-08-31 10:17:04,035.035 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:17:04,045.045 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:17:04,168.168 INFO    ] No existing commands found in stream
[2026-08-31 10:17:09,184.184 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:17:09,187.187 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-08-31 10:17:11,312.312 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 10:17:11,315.315 INFO    ] Checking for system updates...
[2026-08-31 10:17:11,353.353 INFO    ] 200
[2026-08-31 10:17:11,356.356 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:17:11,415.415 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:17:11,419.419 INFO    ] No update needed
[2026-08-31 10:17:11,422.422 INFO    ] Checking for camera pi updates...
[2026-08-31 10:17:11,456.456 INFO    ] 200
[2026-08-31 10:17:11,459.459 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:17:11,501.501 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:17:11,585.585 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:17:11,588.588 INFO    ] No camera update needed
[2026-08-31 10:17:11,591.591 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:17:11,593.593 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:17:11,599.599 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:17:11,605.605 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:17:13,648.648 INFO    ] ================================================
[2026-08-31 10:17:13,664.664 INFO    ] Launching Daemon at Mon Aug 31 10:17:13 IST 2026
[2026-08-31 10:17:13,675.675 INFO    ] ================================================
[2026-08-31 10:17:14,365.365 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:17:14
[2026-08-31 10:17:14,995.995 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:17:15,281.281 INFO    ] Initializing speech engine...
[2026-08-31 10:17:15,290.290 INFO    ] 2026-08-31 10:17:15
[2026-08-31 10:17:15,559.559 INFO    ] 2026-08-31 10:17:15
[2026-08-31 10:17:15,594.594 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:17:15,875.875 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:17:15,885.885 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:17:16,043.043 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:17:16,060.060 INFO    ] time= 31/08/2026 10:17:16
[2026-08-31 10:17:16,148.148 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:17:16,190.190 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:17:16,310.310 INFO    ] No existing commands found in stream
[2026-08-31 10:17:21,338.338 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:17:21,341.341 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-08-31 10:17:24,414.414 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 10:17:24,416.416 INFO    ] Checking for system updates...
[2026-08-31 10:17:24,452.452 INFO    ] 200
[2026-08-31 10:17:24,455.455 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:17:24,507.507 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:17:24,509.509 INFO    ] No update needed
[2026-08-31 10:17:24,512.512 INFO    ] Checking for camera pi updates...
[2026-08-31 10:17:24,552.552 INFO    ] 200
[2026-08-31 10:17:24,554.554 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:17:24,600.600 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:17:24,680.680 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:17:24,683.683 INFO    ] No camera update needed
[2026-08-31 10:17:24,685.685 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:17:24,687.687 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:17:24,693.693 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:17:24,698.698 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:17:26,740.740 INFO    ] ================================================
[2026-08-31 10:17:26,754.754 INFO    ] Launching Daemon at Mon Aug 31 10:17:26 IST 2026
[2026-08-31 10:17:26,765.765 INFO    ] ================================================
[2026-08-31 10:17:27,345.345 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:17:27
[2026-08-31 10:17:27,941.941 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:17:28,214.214 INFO    ] Initializing speech engine...
[2026-08-31 10:17:28,223.223 INFO    ] 2026-08-31 10:17:28
[2026-08-31 10:17:28,486.486 INFO    ] 2026-08-31 10:17:28
[2026-08-31 10:17:28,539.539 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:17:28,825.825 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:17:28,829.829 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:17:29,013.013 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:17:29,033.033 INFO    ] time= 31/08/2026 10:17:29
[2026-08-31 10:17:29,049.049 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:17:29,069.069 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:17:29,187.187 INFO    ] No existing commands found in stream
[2026-08-31 10:17:34,207.207 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:17:34,210.210 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-08-31 10:17:37,896.896 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 10:17:37,898.898 INFO    ] Checking for system updates...
[2026-08-31 10:17:37,934.934 INFO    ] 200
[2026-08-31 10:17:37,937.937 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:17:37,997.997 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:17:38,000.000 INFO    ] No update needed
[2026-08-31 10:17:38,006.006 INFO    ] Checking for camera pi updates...
[2026-08-31 10:17:38,056.056 INFO    ] 200
[2026-08-31 10:17:38,059.059 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:17:38,099.099 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:17:38,185.185 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:17:38,188.188 INFO    ] No camera update needed
[2026-08-31 10:17:38,190.190 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:17:38,192.192 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:17:38,198.198 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:17:38,203.203 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:17:40,242.242 INFO    ] ================================================
[2026-08-31 10:17:40,258.258 INFO    ] Launching Daemon at Mon Aug 31 10:17:40 IST 2026
[2026-08-31 10:17:40,268.268 INFO    ] ================================================
[2026-08-31 10:17:40,879.879 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:17:40
[2026-08-31 10:17:41,541.541 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:17:41,806.806 INFO    ] Initializing speech engine...
[2026-08-31 10:17:41,818.818 INFO    ] 2026-08-31 10:17:41
[2026-08-31 10:17:42,068.068 INFO    ] 2026-08-31 10:17:42
[2026-08-31 10:17:42,102.102 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:17:42,302.302 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:17:42,309.309 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:17:42,504.504 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:17:42,526.526 INFO    ] time= 31/08/2026 10:17:42
[2026-08-31 10:17:42,586.586 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:17:42,640.640 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:17:42,772.772 INFO    ] No existing commands found in stream
[2026-08-31 10:17:47,800.800 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:17:47,802.802 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-08-31 10:17:49,860.860 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 10:17:49,864.864 INFO    ] Checking for system updates...
[2026-08-31 10:17:49,900.900 INFO    ] 200
[2026-08-31 10:17:49,902.902 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:17:49,955.955 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:17:49,957.957 INFO    ] No update needed
[2026-08-31 10:17:49,960.960 INFO    ] Checking for camera pi updates...
[2026-08-31 10:17:49,993.993 INFO    ] 200
[2026-08-31 10:17:49,995.995 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:17:50,036.036 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:17:50,136.136 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:17:50,138.138 INFO    ] No camera update needed
[2026-08-31 10:17:50,141.141 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:17:50,143.143 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:17:50,148.148 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:17:50,153.153 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:17:52,197.197 INFO    ] ================================================
[2026-08-31 10:17:52,212.212 INFO    ] Launching Daemon at Mon Aug 31 10:17:52 IST 2026
[2026-08-31 10:17:52,223.223 INFO    ] ================================================
[2026-08-31 10:17:52,810.810 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:17:52
[2026-08-31 10:17:53,411.411 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:17:53,687.687 INFO    ] Initializing speech engine...
[2026-08-31 10:17:53,696.696 INFO    ] 2026-08-31 10:17:53
[2026-08-31 10:17:53,955.955 INFO    ] 2026-08-31 10:17:53
[2026-08-31 10:17:54,006.006 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:17:54,230.230 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:17:54,239.239 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:17:54,454.454 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:17:54,499.499 INFO    ] time= 31/08/2026 10:17:54
[2026-08-31 10:17:54,505.505 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:17:54,524.524 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:17:54,630.630 INFO    ] No existing commands found in stream
[2026-08-31 10:17:59,663.663 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:17:59,666.666 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-08-31 10:18:02,823.823 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 10:18:02,826.826 INFO    ] Checking for system updates...
[2026-08-31 10:18:02,870.870 INFO    ] 200
[2026-08-31 10:18:02,873.873 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:18:02,945.945 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:18:02,948.948 INFO    ] No update needed
[2026-08-31 10:18:02,952.952 INFO    ] Checking for camera pi updates...
[2026-08-31 10:18:02,999.999 INFO    ] 200
[2026-08-31 10:18:03,003.003 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:18:03,061.061 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:18:03,180.180 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:18:03,183.183 INFO    ] No camera update needed
[2026-08-31 10:18:03,187.187 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:18:03,190.190 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:18:03,197.197 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:18:03,203.203 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:18:05,248.248 INFO    ] ================================================
[2026-08-31 10:18:05,263.263 INFO    ] Launching Daemon at Mon Aug 31 10:18:05 IST 2026
[2026-08-31 10:18:05,274.274 INFO    ] ================================================
[2026-08-31 10:18:05,838.838 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:18:05
[2026-08-31 10:18:06,421.421 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:18:06,748.748 INFO    ] Initializing speech engine...
[2026-08-31 10:18:06,760.760 INFO    ] 2026-08-31 10:18:06
[2026-08-31 10:18:07,074.074 INFO    ] 2026-08-31 10:18:07
[2026-08-31 10:18:07,156.156 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:18:07,372.372 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:18:07,379.379 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:18:07,576.576 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:18:07,594.594 INFO    ] time= 31/08/2026 10:18:07
[2026-08-31 10:18:07,625.625 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:18:07,635.635 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:18:07,760.760 INFO    ] No existing commands found in stream
[2026-08-31 10:18:12,791.791 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:18:12,794.794 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-08-31 10:18:16,069.069 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 10:18:16,072.072 INFO    ] Checking for system updates...
[2026-08-31 10:18:16,115.115 INFO    ] 200
[2026-08-31 10:18:16,118.118 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:18:16,176.176 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:18:16,179.179 INFO    ] No update needed
[2026-08-31 10:18:16,182.182 INFO    ] Checking for camera pi updates...
[2026-08-31 10:18:16,220.220 INFO    ] 200
[2026-08-31 10:18:16,223.223 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:18:16,267.267 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:18:16,343.343 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:18:16,346.346 INFO    ] No camera update needed
[2026-08-31 10:18:16,348.348 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:18:16,351.351 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:18:16,356.356 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:18:16,361.361 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:18:18,401.401 INFO    ] ================================================
[2026-08-31 10:18:18,416.416 INFO    ] Launching Daemon at Mon Aug 31 10:18:18 IST 2026
[2026-08-31 10:18:18,427.427 INFO    ] ================================================
[2026-08-31 10:18:18,999.999 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:18:18
[2026-08-31 10:18:19,588.588 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:18:19,858.858 INFO    ] Initializing speech engine...
[2026-08-31 10:18:19,869.869 INFO    ] 2026-08-31 10:18:19
[2026-08-31 10:18:20,115.115 INFO    ] 2026-08-31 10:18:20
[2026-08-31 10:18:20,149.149 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:18:20,401.401 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:18:20,410.410 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:18:20,621.621 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:18:20,669.669 INFO    ] time= 31/08/2026 10:18:20
[2026-08-31 10:18:20,676.676 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:18:20,696.696 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:18:20,838.838 INFO    ] No existing commands found in stream
[2026-08-31 10:18:25,864.864 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:18:25,867.867 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-08-31 10:18:28,947.947 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 10:18:28,949.949 INFO    ] Checking for system updates...
[2026-08-31 10:18:28,985.985 INFO    ] 200
[2026-08-31 10:18:28,987.987 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:18:29,039.039 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:18:29,041.041 INFO    ] No update needed
[2026-08-31 10:18:29,044.044 INFO    ] Checking for camera pi updates...
[2026-08-31 10:18:29,077.077 INFO    ] 200
[2026-08-31 10:18:29,080.080 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:18:29,127.127 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:18:29,331.331 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:18:29,333.333 INFO    ] No camera update needed
[2026-08-31 10:18:29,336.336 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:18:29,338.338 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:18:29,343.343 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:18:29,348.348 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:18:31,389.389 INFO    ] ================================================
[2026-08-31 10:18:31,405.405 INFO    ] Launching Daemon at Mon Aug 31 10:18:31 IST 2026
[2026-08-31 10:18:31,415.415 INFO    ] ================================================
[2026-08-31 10:18:32,011.011 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:18:32
[2026-08-31 10:18:32,633.633 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:18:32,916.916 INFO    ] Initializing speech engine...
[2026-08-31 10:18:32,936.936 INFO    ] 2026-08-31 10:18:32
[2026-08-31 10:18:33,210.210 INFO    ] 2026-08-31 10:18:33
[2026-08-31 10:18:33,280.280 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:18:33,502.502 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:18:33,511.511 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:18:33,727.727 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:18:33,768.768 INFO    ] time= 31/08/2026 10:18:33
[2026-08-31 10:18:33,774.774 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:18:33,791.791 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:18:33,922.922 INFO    ] No existing commands found in stream
[2026-08-31 10:18:38,936.936 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:18:38,939.939 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-08-31 10:18:39,620.620 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 10:18:39,623.623 INFO    ] Checking for system updates...
[2026-08-31 10:18:39,658.658 INFO    ] 200
[2026-08-31 10:18:39,661.661 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:18:39,717.717 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:18:39,719.719 INFO    ] No update needed
[2026-08-31 10:18:39,721.721 INFO    ] Checking for camera pi updates...
[2026-08-31 10:18:39,755.755 INFO    ] 200
[2026-08-31 10:18:39,757.757 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:18:39,801.801 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:18:39,888.888 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:18:39,890.890 INFO    ] No camera update needed
[2026-08-31 10:18:39,893.893 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:18:39,895.895 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:18:39,900.900 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:18:39,905.905 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:18:41,954.954 INFO    ] ================================================
[2026-08-31 10:18:41,969.969 INFO    ] Launching Daemon at Mon Aug 31 10:18:41 IST 2026
[2026-08-31 10:18:41,979.979 INFO    ] ================================================
[2026-08-31 10:18:42,557.557 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:18:42
[2026-08-31 10:18:43,142.142 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:18:43,418.418 INFO    ] Initializing speech engine...
[2026-08-31 10:18:43,424.424 INFO    ] 2026-08-31 10:18:43
[2026-08-31 10:18:43,671.671 INFO    ] 2026-08-31 10:18:43
[2026-08-31 10:18:43,708.708 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:18:43,966.966 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:18:43,976.976 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:18:44,179.179 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:18:44,238.238 INFO    ] time= 31/08/2026 10:18:44
[2026-08-31 10:18:44,245.245 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:18:44,261.261 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:18:44,398.398 INFO    ] No existing commands found in stream
[2026-08-31 10:18:49,427.427 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:18:49,430.430 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-08-31 10:18:51,972.972 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 10:18:51,975.975 INFO    ] Checking for system updates...
[2026-08-31 10:18:52,012.012 INFO    ] 200
[2026-08-31 10:18:52,015.015 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:18:52,076.076 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:18:52,079.079 INFO    ] No update needed
[2026-08-31 10:18:52,082.082 INFO    ] Checking for camera pi updates...
[2026-08-31 10:18:52,118.118 INFO    ] 200
[2026-08-31 10:18:52,121.121 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:18:52,163.163 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:18:52,245.245 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:18:52,249.249 INFO    ] No camera update needed
[2026-08-31 10:18:52,251.251 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:18:52,254.254 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:18:52,260.260 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:18:52,266.266 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:18:54,310.310 INFO    ] ================================================
[2026-08-31 10:18:54,325.325 INFO    ] Launching Daemon at Mon Aug 31 10:18:54 IST 2026
[2026-08-31 10:18:54,336.336 INFO    ] ================================================
[2026-08-31 10:18:54,921.921 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:18:54
[2026-08-31 10:18:55,519.519 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:18:55,792.792 INFO    ] Initializing speech engine...
[2026-08-31 10:18:55,802.802 INFO    ] 2026-08-31 10:18:55
[2026-08-31 10:18:56,063.063 INFO    ] 2026-08-31 10:18:56
[2026-08-31 10:18:56,118.118 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:18:56,368.368 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:18:56,392.392 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:18:56,602.602 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:18:56,609.609 INFO    ] time= 31/08/2026 10:18:56
[2026-08-31 10:18:56,629.629 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:18:56,655.655 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:18:56,781.781 INFO    ] No existing commands found in stream
[2026-08-31 10:19:01,810.810 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:19:01,814.814 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-08-31 10:19:03,614.614 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 10:19:03,617.617 INFO    ] Checking for system updates...
[2026-08-31 10:19:03,653.653 INFO    ] 200
[2026-08-31 10:19:03,655.655 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:19:03,709.709 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:19:03,711.711 INFO    ] No update needed
[2026-08-31 10:19:03,713.713 INFO    ] Checking for camera pi updates...
[2026-08-31 10:19:03,751.751 INFO    ] 200
[2026-08-31 10:19:03,753.753 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:19:03,799.799 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:19:03,866.866 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:19:03,868.868 INFO    ] No camera update needed
[2026-08-31 10:19:03,871.871 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:19:03,873.873 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:19:03,878.878 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:19:03,883.883 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:19:05,924.924 INFO    ] ================================================
[2026-08-31 10:19:05,939.939 INFO    ] Launching Daemon at Mon Aug 31 10:19:05 IST 2026
[2026-08-31 10:19:05,949.949 INFO    ] ================================================
[2026-08-31 10:19:06,546.546 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:19:06
[2026-08-31 10:19:07,169.169 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:19:07,437.437 INFO    ] Initializing speech engine...
[2026-08-31 10:19:07,446.446 INFO    ] 2026-08-31 10:19:07
[2026-08-31 10:19:07,696.696 INFO    ] 2026-08-31 10:19:07
[2026-08-31 10:19:07,731.731 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:19:07,990.990 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:19:07,999.999 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:19:08,218.218 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:19:08,262.262 INFO    ] time= 31/08/2026 10:19:08
[2026-08-31 10:19:08,269.269 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:19:08,283.283 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:19:08,394.394 INFO    ] No existing commands found in stream
[2026-08-31 10:19:13,428.428 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:19:13,436.436 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-08-31 10:19:14,665.665 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 10:19:14,668.668 INFO    ] Checking for system updates...
[2026-08-31 10:19:14,703.703 INFO    ] 200
[2026-08-31 10:19:14,705.705 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:19:14,757.757 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:19:14,759.759 INFO    ] No update needed
[2026-08-31 10:19:14,762.762 INFO    ] Checking for camera pi updates...
[2026-08-31 10:19:14,795.795 INFO    ] 200
[2026-08-31 10:19:14,798.798 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:19:14,843.843 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:19:14,937.937 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:19:14,939.939 INFO    ] No camera update needed
[2026-08-31 10:19:14,942.942 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:19:14,944.944 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:19:14,949.949 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:19:14,954.954 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:19:17,997.997 INFO    ] ================================================
[2026-08-31 10:19:17,012.012 INFO    ] Launching Daemon at Mon Aug 31 10:19:17 IST 2026
[2026-08-31 10:19:17,023.023 INFO    ] ================================================
[2026-08-31 10:19:17,590.590 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:19:17
[2026-08-31 10:19:18,173.173 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:19:18,443.443 INFO    ] Initializing speech engine...
[2026-08-31 10:19:18,455.455 INFO    ] 2026-08-31 10:19:18
[2026-08-31 10:19:18,713.713 INFO    ] 2026-08-31 10:19:18
[2026-08-31 10:19:18,748.748 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:19:18,926.926 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:19:18,942.942 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:19:19,076.076 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:19:19,081.081 INFO    ] time= 31/08/2026 10:19:19
[2026-08-31 10:19:19,087.087 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:19:19,133.133 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:19:19,260.260 INFO    ] No existing commands found in stream
[2026-08-31 10:19:24,290.290 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:19:24,293.293 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-08-31 10:19:27,854.854 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 10:19:27,856.856 INFO    ] Checking for system updates...
[2026-08-31 10:19:27,893.893 INFO    ] 200
[2026-08-31 10:19:27,896.896 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:19:27,949.949 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:19:27,951.951 INFO    ] No update needed
[2026-08-31 10:19:27,954.954 INFO    ] Checking for camera pi updates...
[2026-08-31 10:19:27,987.987 INFO    ] 200
[2026-08-31 10:19:27,990.990 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:19:28,031.031 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:19:28,114.114 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:19:28,116.116 INFO    ] No camera update needed
[2026-08-31 10:19:28,119.119 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:19:28,121.121 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:19:28,126.126 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:19:28,132.132 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:19:30,174.174 INFO    ] ================================================
[2026-08-31 10:19:30,189.189 INFO    ] Launching Daemon at Mon Aug 31 10:19:30 IST 2026
[2026-08-31 10:19:30,199.199 INFO    ] ================================================
[2026-08-31 10:19:30,868.868 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:19:30
[2026-08-31 10:19:31,557.557 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:19:31,907.907 INFO    ] Initializing speech engine...
[2026-08-31 10:19:31,914.914 INFO    ] 2026-08-31 10:19:31
[2026-08-31 10:19:32,222.222 INFO    ] 2026-08-31 10:19:32
[2026-08-31 10:19:32,339.339 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:19:32,570.570 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:19:32,587.587 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:19:32,780.780 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:19:32,803.803 INFO    ] time= 31/08/2026 10:19:32
[2026-08-31 10:19:32,832.832 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:19:32,845.845 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:19:32,985.985 INFO    ] No existing commands found in stream
[2026-08-31 10:19:38,002.002 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:19:38,005.005 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-08-31 10:19:40,180.180 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 10:19:40,183.183 INFO    ] Checking for system updates...
[2026-08-31 10:19:40,223.223 INFO    ] 200
[2026-08-31 10:19:40,225.225 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:19:40,283.283 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:19:40,286.286 INFO    ] No update needed
[2026-08-31 10:19:40,288.288 INFO    ] Checking for camera pi updates...
[2026-08-31 10:19:40,324.324 INFO    ] 200
[2026-08-31 10:19:40,327.327 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:19:40,378.378 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:19:40,459.459 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:19:40,463.463 INFO    ] No camera update needed
[2026-08-31 10:19:40,465.465 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:19:40,468.468 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:19:40,474.474 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:19:40,479.479 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:19:42,520.520 INFO    ] ================================================
[2026-08-31 10:19:42,535.535 INFO    ] Launching Daemon at Mon Aug 31 10:19:42 IST 2026
[2026-08-31 10:19:42,546.546 INFO    ] ================================================
[2026-08-31 10:19:43,220.220 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:19:43
[2026-08-31 10:19:43,932.932 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:19:44,221.221 INFO    ] Initializing speech engine...
[2026-08-31 10:19:44,227.227 INFO    ] 2026-08-31 10:19:44
[2026-08-31 10:19:44,472.472 INFO    ] 2026-08-31 10:19:44
[2026-08-31 10:19:44,510.510 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:19:44,713.713 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:19:44,765.765 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:19:44,895.895 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:19:44,919.919 INFO    ] time= 31/08/2026 10:19:44
[2026-08-31 10:19:44,947.947 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:19:44,953.953 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:19:45,099.099 INFO    ] No existing commands found in stream
[2026-08-31 10:19:50,111.111 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:19:50,114.114 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-08-31 10:19:50,932.932 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 10:19:50,935.935 INFO    ] Checking for system updates...
[2026-08-31 10:19:50,970.970 INFO    ] 200
[2026-08-31 10:19:50,973.973 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:19:51,024.024 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:19:51,027.027 INFO    ] No update needed
[2026-08-31 10:19:51,029.029 INFO    ] Checking for camera pi updates...
[2026-08-31 10:19:51,062.062 INFO    ] 200
[2026-08-31 10:19:51,065.065 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:19:51,105.105 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:19:51,180.180 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:19:51,182.182 INFO    ] No camera update needed
[2026-08-31 10:19:51,185.185 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:19:51,187.187 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:19:51,192.192 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:19:51,198.198 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:19:53,239.239 INFO    ] ================================================
[2026-08-31 10:19:53,254.254 INFO    ] Launching Daemon at Mon Aug 31 10:19:53 IST 2026
[2026-08-31 10:19:53,264.264 INFO    ] ================================================
[2026-08-31 10:19:53,922.922 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:19:53
[2026-08-31 10:19:54,593.593 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:19:54,898.898 INFO    ] Initializing speech engine...
[2026-08-31 10:19:54,913.913 INFO    ] 2026-08-31 10:19:54
[2026-08-31 10:19:55,183.183 INFO    ] 2026-08-31 10:19:55
[2026-08-31 10:19:55,240.240 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:19:55,465.465 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:19:55,472.472 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:19:55,703.703 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:19:55,735.735 INFO    ] time= 31/08/2026 10:19:55
[2026-08-31 10:19:55,752.752 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:19:55,777.777 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:19:55,890.890 INFO    ] No existing commands found in stream
[2026-08-31 10:20:00,915.915 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:20:00,918.918 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-08-31 10:20:02,979.979 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 10:20:02,982.982 INFO    ] Checking for system updates...
[2026-08-31 10:20:03,029.029 INFO    ] 200
[2026-08-31 10:20:03,032.032 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:20:03,095.095 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:20:03,098.098 INFO    ] No update needed
[2026-08-31 10:20:03,101.101 INFO    ] Checking for camera pi updates...
[2026-08-31 10:20:03,146.146 INFO    ] 200
[2026-08-31 10:20:03,150.150 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:20:03,212.212 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:20:03,292.292 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:20:03,295.295 INFO    ] No camera update needed
[2026-08-31 10:20:03,303.303 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:20:03,306.306 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:20:03,313.313 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:20:03,328.328 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:20:05,373.373 INFO    ] ================================================
[2026-08-31 10:20:05,388.388 INFO    ] Launching Daemon at Mon Aug 31 10:20:05 IST 2026
[2026-08-31 10:20:05,398.398 INFO    ] ================================================
[2026-08-31 10:20:05,979.979 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:20:05
[2026-08-31 10:20:06,581.581 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:20:06,870.870 INFO    ] Initializing speech engine...
[2026-08-31 10:20:06,891.891 INFO    ] 2026-08-31 10:20:06
[2026-08-31 10:20:07,146.146 INFO    ] 2026-08-31 10:20:07
[2026-08-31 10:20:07,181.181 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:20:07,432.432 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:20:07,441.441 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:20:07,573.573 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:20:07,615.615 INFO    ] time= 31/08/2026 10:20:07
[2026-08-31 10:20:07,664.664 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:20:07,706.706 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:20:07,763.763 INFO    ] No existing commands found in stream
[2026-08-31 10:20:12,775.775 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:20:12,778.778 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-08-31 10:20:13,309.309 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 10:20:13,312.312 INFO    ] Checking for system updates...
[2026-08-31 10:20:13,351.351 INFO    ] 200
[2026-08-31 10:20:13,353.353 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:20:13,412.412 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:20:13,414.414 INFO    ] No update needed
[2026-08-31 10:20:13,417.417 INFO    ] Checking for camera pi updates...
[2026-08-31 10:20:13,453.453 INFO    ] 200
[2026-08-31 10:20:13,456.456 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:20:13,495.495 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:20:13,621.621 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:20:13,624.624 INFO    ] No camera update needed
[2026-08-31 10:20:13,626.626 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:20:13,628.628 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:20:13,633.633 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:20:13,638.638 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:20:15,679.679 INFO    ] ================================================
[2026-08-31 10:20:15,694.694 INFO    ] Launching Daemon at Mon Aug 31 10:20:15 IST 2026
[2026-08-31 10:20:15,705.705 INFO    ] ================================================
[2026-08-31 10:20:16,286.286 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:20:16
[2026-08-31 10:20:16,886.886 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:20:17,162.162 INFO    ] Initializing speech engine...
[2026-08-31 10:20:17,171.171 INFO    ] 2026-08-31 10:20:17
[2026-08-31 10:20:17,429.429 INFO    ] 2026-08-31 10:20:17
[2026-08-31 10:20:17,459.459 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:20:17,708.708 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:20:17,714.714 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:20:17,964.964 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:20:17,971.971 INFO    ] time= 31/08/2026 10:20:17
[2026-08-31 10:20:17,989.989 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:20:18,018.018 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:20:18,168.168 INFO    ] No existing commands found in stream
[2026-08-31 10:20:23,193.193 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:20:23,196.196 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-08-31 10:20:24,986.986 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 10:20:24,989.989 INFO    ] Checking for system updates...
[2026-08-31 10:20:25,025.025 INFO    ] 200
[2026-08-31 10:20:25,027.027 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:20:25,081.081 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:20:25,084.084 INFO    ] No update needed
[2026-08-31 10:20:25,087.087 INFO    ] Checking for camera pi updates...
[2026-08-31 10:20:25,121.121 INFO    ] 200
[2026-08-31 10:20:25,124.124 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:20:25,169.169 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:20:25,236.236 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:20:25,239.239 INFO    ] No camera update needed
[2026-08-31 10:20:25,242.242 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:20:25,244.244 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:20:25,250.250 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:20:25,256.256 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:20:27,296.296 INFO    ] ================================================
[2026-08-31 10:20:27,311.311 INFO    ] Launching Daemon at Mon Aug 31 10:20:27 IST 2026
[2026-08-31 10:20:27,321.321 INFO    ] ================================================
[2026-08-31 10:20:27,885.885 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:20:27
[2026-08-31 10:20:28,468.468 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:20:28,720.720 INFO    ] Initializing speech engine...
[2026-08-31 10:20:28,736.736 INFO    ] 2026-08-31 10:20:28
[2026-08-31 10:20:29,022.022 INFO    ] 2026-08-31 10:20:28
[2026-08-31 10:20:29,057.057 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:20:29,320.320 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:20:29,350.350 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:20:29,501.501 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:20:29,507.507 INFO    ] time= 31/08/2026 10:20:29
[2026-08-31 10:20:29,551.551 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:20:29,585.585 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:20:29,699.699 INFO    ] No existing commands found in stream
[2026-08-31 10:20:34,712.712 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:20:34,715.715 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-08-31 10:20:38,418.418 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 10:20:38,421.421 INFO    ] Checking for system updates...
[2026-08-31 10:20:38,456.456 INFO    ] 200
[2026-08-31 10:20:38,458.458 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:20:38,512.512 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:20:38,514.514 INFO    ] No update needed
[2026-08-31 10:20:38,516.516 INFO    ] Checking for camera pi updates...
[2026-08-31 10:20:38,549.549 INFO    ] 200
[2026-08-31 10:20:38,551.551 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:20:38,592.592 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:20:38,689.689 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:20:38,692.692 INFO    ] No camera update needed
[2026-08-31 10:20:38,694.694 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:20:38,696.696 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:20:38,702.702 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:20:38,706.706 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:20:40,748.748 INFO    ] ================================================
[2026-08-31 10:20:40,763.763 INFO    ] Launching Daemon at Mon Aug 31 10:20:40 IST 2026
[2026-08-31 10:20:40,774.774 INFO    ] ================================================
[2026-08-31 10:20:41,346.346 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:20:41
[2026-08-31 10:20:41,930.930 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:20:42,187.187 INFO    ] Initializing speech engine...
[2026-08-31 10:20:42,200.200 INFO    ] 2026-08-31 10:20:42
[2026-08-31 10:20:42,480.480 INFO    ] 2026-08-31 10:20:42
[2026-08-31 10:20:42,518.518 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:20:42,724.724 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:20:42,742.742 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:20:42,886.886 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:20:42,895.895 INFO    ] time= 31/08/2026 10:20:42
[2026-08-31 10:20:42,902.902 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:20:42,924.924 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:20:43,054.054 INFO    ] No existing commands found in stream
[2026-08-31 10:20:48,079.079 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:20:48,082.082 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-08-31 10:20:52,468.468 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 10:20:52,470.470 INFO    ] Checking for system updates...
[2026-08-31 10:20:52,506.506 INFO    ] 200
[2026-08-31 10:20:52,509.509 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:20:52,567.567 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:20:52,569.569 INFO    ] No update needed
[2026-08-31 10:20:52,572.572 INFO    ] Checking for camera pi updates...
[2026-08-31 10:20:52,608.608 INFO    ] 200
[2026-08-31 10:20:52,611.611 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:20:52,657.657 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:20:52,741.741 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:20:52,744.744 INFO    ] No camera update needed
[2026-08-31 10:20:52,746.746 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:20:52,748.748 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:20:52,754.754 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:20:52,759.759 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:20:54,799.799 INFO    ] ================================================
[2026-08-31 10:20:54,813.813 INFO    ] Launching Daemon at Mon Aug 31 10:20:54 IST 2026
[2026-08-31 10:20:54,824.824 INFO    ] ================================================
[2026-08-31 10:20:55,467.467 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:20:55
[2026-08-31 10:20:56,129.129 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:20:56,430.430 INFO    ] Initializing speech engine...
[2026-08-31 10:20:56,444.444 INFO    ] 2026-08-31 10:20:56
[2026-08-31 10:20:56,755.755 INFO    ] 2026-08-31 10:20:56
[2026-08-31 10:20:56,837.837 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:20:57,050.050 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:20:57,055.055 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:20:57,249.249 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:20:57,268.268 INFO    ] time= 31/08/2026 10:20:57
[2026-08-31 10:20:57,278.278 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:20:57,307.307 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:20:57,421.421 INFO    ] No existing commands found in stream
[2026-08-31 10:21:02,456.456 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:21:02,460.460 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-08-31 10:21:05,538.538 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 10:21:05,541.541 INFO    ] Checking for system updates...
[2026-08-31 10:21:05,578.578 INFO    ] 200
[2026-08-31 10:21:05,580.580 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:21:05,632.632 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:21:05,635.635 INFO    ] No update needed
[2026-08-31 10:21:05,637.637 INFO    ] Checking for camera pi updates...
[2026-08-31 10:21:05,672.672 INFO    ] 200
[2026-08-31 10:21:05,674.674 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:21:05,715.715 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:21:05,815.815 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:21:05,818.818 INFO    ] No camera update needed
[2026-08-31 10:21:05,820.820 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:21:05,822.822 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:21:05,827.827 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:21:05,832.832 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:21:07,878.878 INFO    ] ================================================
[2026-08-31 10:21:07,893.893 INFO    ] Launching Daemon at Mon Aug 31 10:21:07 IST 2026
[2026-08-31 10:21:07,904.904 INFO    ] ================================================
[2026-08-31 10:21:08,470.470 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:21:08
[2026-08-31 10:21:09,056.056 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:21:09,315.315 INFO    ] Initializing speech engine...
[2026-08-31 10:21:09,328.328 INFO    ] 2026-08-31 10:21:09
[2026-08-31 10:21:09,616.616 INFO    ] 2026-08-31 10:21:09
[2026-08-31 10:21:09,651.651 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:21:09,921.921 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:21:09,951.951 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:21:10,165.165 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:21:10,210.210 INFO    ] time= 31/08/2026 10:21:10
[2026-08-31 10:21:10,258.258 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:21:10,265.265 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:21:10,330.330 INFO    ] No existing commands found in stream
[2026-08-31 10:21:15,344.344 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:21:15,347.347 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-08-31 10:21:17,699.699 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 10:21:17,701.701 INFO    ] Checking for system updates...
[2026-08-31 10:21:17,738.738 INFO    ] 200
[2026-08-31 10:21:17,741.741 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:21:17,794.794 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:21:17,797.797 INFO    ] No update needed
[2026-08-31 10:21:17,800.800 INFO    ] Checking for camera pi updates...
[2026-08-31 10:21:17,835.835 INFO    ] 200
[2026-08-31 10:21:17,838.838 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:21:17,879.879 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:21:17,960.960 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:21:17,963.963 INFO    ] No camera update needed
[2026-08-31 10:21:17,965.965 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:21:17,968.968 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:21:17,974.974 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:21:17,980.980 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:21:20,021.021 INFO    ] ================================================
[2026-08-31 10:21:20,036.036 INFO    ] Launching Daemon at Mon Aug 31 10:21:20 IST 2026
[2026-08-31 10:21:20,047.047 INFO    ] ================================================
[2026-08-31 10:21:20,633.633 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:21:20
[2026-08-31 10:21:21,241.241 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:21:21,520.520 INFO    ] Initializing speech engine...
[2026-08-31 10:21:21,529.529 INFO    ] 2026-08-31 10:21:21
[2026-08-31 10:21:21,790.790 INFO    ] 2026-08-31 10:21:21
[2026-08-31 10:21:21,844.844 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:21:22,092.092 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:21:22,098.098 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:21:22,300.300 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:21:22,336.336 INFO    ] time= 31/08/2026 10:21:22
[2026-08-31 10:21:22,343.343 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:21:22,363.363 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:21:22,486.486 INFO    ] No existing commands found in stream
[2026-08-31 10:21:27,502.502 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:21:27,505.505 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-08-31 10:21:31,421.421 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 10:21:31,424.424 INFO    ] Checking for system updates...
[2026-08-31 10:21:31,465.465 INFO    ] 200
[2026-08-31 10:21:31,469.469 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:21:31,530.530 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:21:31,532.532 INFO    ] No update needed
[2026-08-31 10:21:31,535.535 INFO    ] Checking for camera pi updates...
[2026-08-31 10:21:31,577.577 INFO    ] 200
[2026-08-31 10:21:31,580.580 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:21:31,627.627 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:21:31,702.702 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:21:31,705.705 INFO    ] No camera update needed
[2026-08-31 10:21:31,708.708 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:21:31,710.710 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:21:31,717.717 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:21:31,723.723 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:21:33,766.766 INFO    ] ================================================
[2026-08-31 10:21:33,781.781 INFO    ] Launching Daemon at Mon Aug 31 10:21:33 IST 2026
[2026-08-31 10:21:33,791.791 INFO    ] ================================================
[2026-08-31 10:21:34,360.360 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:21:34
[2026-08-31 10:21:34,941.941 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:21:35,188.188 INFO    ] Initializing speech engine...
[2026-08-31 10:21:35,209.209 INFO    ] 2026-08-31 10:21:35
[2026-08-31 10:21:35,470.470 INFO    ] 2026-08-31 10:21:35
[2026-08-31 10:21:35,504.504 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:21:35,682.682 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:21:35,694.694 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:21:35,844.844 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:21:35,852.852 INFO    ] time= 31/08/2026 10:21:35
[2026-08-31 10:21:35,913.913 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:21:35,920.920 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:21:36,039.039 INFO    ] No existing commands found in stream
[2026-08-31 10:21:41,058.058 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:21:41,060.060 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-08-31 10:21:44,466.466 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 10:21:44,468.468 INFO    ] Checking for system updates...
[2026-08-31 10:21:44,504.504 INFO    ] 200
[2026-08-31 10:21:44,506.506 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:21:44,563.563 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:21:44,565.565 INFO    ] No update needed
[2026-08-31 10:21:44,568.568 INFO    ] Checking for camera pi updates...
[2026-08-31 10:21:44,602.602 INFO    ] 200
[2026-08-31 10:21:44,605.605 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:21:44,645.645 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:21:44,743.743 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:21:44,745.745 INFO    ] No camera update needed
[2026-08-31 10:21:44,748.748 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:21:44,750.750 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:21:44,756.756 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:21:44,761.761 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:21:46,803.803 INFO    ] ================================================
[2026-08-31 10:21:46,818.818 INFO    ] Launching Daemon at Mon Aug 31 10:21:46 IST 2026
[2026-08-31 10:21:46,829.829 INFO    ] ================================================
[2026-08-31 10:21:47,423.423 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:21:47
[2026-08-31 10:21:48,037.037 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:21:48,298.298 INFO    ] Initializing speech engine...
[2026-08-31 10:21:48,305.305 INFO    ] 2026-08-31 10:21:48
[2026-08-31 10:21:48,603.603 INFO    ] 2026-08-31 10:21:48
[2026-08-31 10:21:48,638.638 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:21:48,840.840 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:21:48,856.856 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:21:49,020.020 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:21:49,029.029 INFO    ] time= 31/08/2026 10:21:49
[2026-08-31 10:21:49,037.037 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:21:49,063.063 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:21:49,238.238 INFO    ] No existing commands found in stream
[2026-08-31 10:21:54,263.263 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:21:54,266.266 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-08-31 10:21:56,650.650 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 10:21:56,652.652 INFO    ] Checking for system updates...
[2026-08-31 10:21:56,687.687 INFO    ] 200
[2026-08-31 10:21:56,690.690 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:21:56,743.743 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:21:56,745.745 INFO    ] No update needed
[2026-08-31 10:21:56,748.748 INFO    ] Checking for camera pi updates...
[2026-08-31 10:21:56,781.781 INFO    ] 200
[2026-08-31 10:21:56,784.784 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:21:56,824.824 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:21:56,904.904 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:21:56,907.907 INFO    ] No camera update needed
[2026-08-31 10:21:56,909.909 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:21:56,912.912 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:21:56,917.917 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:21:56,922.922 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:21:58,962.962 INFO    ] ================================================
[2026-08-31 10:21:58,977.977 INFO    ] Launching Daemon at Mon Aug 31 10:21:58 IST 2026
[2026-08-31 10:21:58,988.988 INFO    ] ================================================
[2026-08-31 10:21:59,633.633 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:21:59
[2026-08-31 10:22:00,318.318 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:22:00,623.623 INFO    ] Initializing speech engine...
[2026-08-31 10:22:00,631.631 INFO    ] 2026-08-31 10:22:00
[2026-08-31 10:22:00,952.952 INFO    ] 2026-08-31 10:22:00
[2026-08-31 10:22:01,037.037 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:22:01,252.252 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:22:01,261.261 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:22:01,453.453 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:22:01,471.471 INFO    ] time= 31/08/2026 10:22:01
[2026-08-31 10:22:01,502.502 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:22:01,510.510 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:22:01,653.653 INFO    ] No existing commands found in stream
[2026-08-31 10:22:06,684.684 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:22:06,687.687 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-08-31 10:22:10,874.874 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 10:22:10,877.877 INFO    ] Checking for system updates...
[2026-08-31 10:22:10,913.913 INFO    ] 200
[2026-08-31 10:22:10,916.916 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:22:10,969.969 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:22:10,972.972 INFO    ] No update needed
[2026-08-31 10:22:10,974.974 INFO    ] Checking for camera pi updates...
[2026-08-31 10:22:11,007.007 INFO    ] 200
[2026-08-31 10:22:11,010.010 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:22:11,050.050 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:22:11,134.134 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:22:11,136.136 INFO    ] No camera update needed
[2026-08-31 10:22:11,138.138 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:22:11,141.141 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:22:11,146.146 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:22:11,151.151 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:22:13,190.190 INFO    ] ================================================
[2026-08-31 10:22:13,206.206 INFO    ] Launching Daemon at Mon Aug 31 10:22:13 IST 2026
[2026-08-31 10:22:13,217.217 INFO    ] ================================================
[2026-08-31 10:22:13,799.799 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:22:13
[2026-08-31 10:22:14,401.401 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:22:14,677.677 INFO    ] Initializing speech engine...
[2026-08-31 10:22:14,684.684 INFO    ] 2026-08-31 10:22:14
[2026-08-31 10:22:14,931.931 INFO    ] 2026-08-31 10:22:14
[2026-08-31 10:22:14,998.998 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:22:15,225.225 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:22:15,231.231 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:22:15,462.462 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:22:15,489.489 INFO    ] time= 31/08/2026 10:22:15
[2026-08-31 10:22:15,503.503 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:22:15,512.512 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:22:15,641.641 INFO    ] No existing commands found in stream
[2026-08-31 10:22:20,653.653 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:22:20,656.656 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-08-31 10:22:22,923.923 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 10:22:22,926.926 INFO    ] Checking for system updates...
[2026-08-31 10:22:22,961.961 INFO    ] 200
[2026-08-31 10:22:22,964.964 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:22:23,021.021 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:22:23,023.023 INFO    ] No update needed
[2026-08-31 10:22:23,025.025 INFO    ] Checking for camera pi updates...
[2026-08-31 10:22:23,059.059 INFO    ] 200
[2026-08-31 10:22:23,061.061 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:22:23,102.102 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:22:23,205.205 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:22:23,207.207 INFO    ] No camera update needed
[2026-08-31 10:22:23,210.210 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:22:23,212.212 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:22:23,217.217 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:22:23,222.222 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:22:25,264.264 INFO    ] ================================================
[2026-08-31 10:22:25,280.280 INFO    ] Launching Daemon at Mon Aug 31 10:22:25 IST 2026
[2026-08-31 10:22:25,290.290 INFO    ] ================================================
[2026-08-31 10:22:25,857.857 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:22:25
[2026-08-31 10:22:26,440.440 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:22:26,688.688 INFO    ] Initializing speech engine...
[2026-08-31 10:22:26,710.710 INFO    ] 2026-08-31 10:22:26
[2026-08-31 10:22:26,961.961 INFO    ] 2026-08-31 10:22:26
[2026-08-31 10:22:26,995.995 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:22:27,197.197 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:22:27,249.249 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:22:27,460.460 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:22:27,514.514 INFO    ] time= 31/08/2026 10:22:27
[2026-08-31 10:22:27,520.520 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:22:27,536.536 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:22:27,659.659 INFO    ] No existing commands found in stream
[2026-08-31 10:22:32,680.680 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:22:32,683.683 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-08-31 10:22:35,657.657 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 10:22:35,660.660 INFO    ] Checking for system updates...
[2026-08-31 10:22:35,708.708 INFO    ] 200
[2026-08-31 10:22:35,710.710 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:22:35,763.763 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:22:35,766.766 INFO    ] No update needed
[2026-08-31 10:22:35,768.768 INFO    ] Checking for camera pi updates...
[2026-08-31 10:22:35,806.806 INFO    ] 200
[2026-08-31 10:22:35,808.808 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:22:35,855.855 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:22:36,035.035 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:22:36,038.038 INFO    ] No camera update needed
[2026-08-31 10:22:36,040.040 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:22:36,043.043 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:22:36,048.048 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:22:36,053.053 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:22:38,095.095 INFO    ] ================================================
[2026-08-31 10:22:38,110.110 INFO    ] Launching Daemon at Mon Aug 31 10:22:38 IST 2026
[2026-08-31 10:22:38,121.121 INFO    ] ================================================
[2026-08-31 10:22:38,685.685 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:22:38
[2026-08-31 10:22:39,267.267 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:22:39,528.528 INFO    ] Initializing speech engine...
[2026-08-31 10:22:39,545.545 INFO    ] 2026-08-31 10:22:39
[2026-08-31 10:22:39,832.832 INFO    ] 2026-08-31 10:22:39
[2026-08-31 10:22:39,870.870 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:22:40,096.096 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:22:40,104.104 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:22:40,327.327 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:22:40,335.335 INFO    ] time= 31/08/2026 10:22:40
[2026-08-31 10:22:40,390.390 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:22:40,434.434 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:22:40,541.541 INFO    ] No existing commands found in stream
[2026-08-31 10:22:45,553.553 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:22:45,556.556 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-08-31 10:22:46,470.470 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 10:22:46,472.472 INFO    ] Checking for system updates...
[2026-08-31 10:22:46,516.516 INFO    ] 200
[2026-08-31 10:22:46,519.519 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:22:46,583.583 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:22:46,586.586 INFO    ] No update needed
[2026-08-31 10:22:46,589.589 INFO    ] Checking for camera pi updates...
[2026-08-31 10:22:46,624.624 INFO    ] 200
[2026-08-31 10:22:46,626.626 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:22:46,670.670 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:22:46,758.758 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:22:46,760.760 INFO    ] No camera update needed
[2026-08-31 10:22:46,762.762 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:22:46,765.765 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:22:46,770.770 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:22:46,775.775 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:22:48,815.815 INFO    ] ================================================
[2026-08-31 10:22:48,830.830 INFO    ] Launching Daemon at Mon Aug 31 10:22:48 IST 2026
[2026-08-31 10:22:48,841.841 INFO    ] ================================================
[2026-08-31 10:22:49,408.408 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:22:49
[2026-08-31 10:22:49,993.993 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:22:50,248.248 INFO    ] Initializing speech engine...
[2026-08-31 10:22:50,254.254 INFO    ] 2026-08-31 10:22:50
[2026-08-31 10:22:50,553.553 INFO    ] 2026-08-31 10:22:50
[2026-08-31 10:22:50,592.592 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:22:50,817.817 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:22:50,840.840 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:22:51,050.050 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:22:51,057.057 INFO    ] time= 31/08/2026 10:22:51
[2026-08-31 10:22:51,122.122 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:22:51,155.155 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:22:51,335.335 INFO    ] No existing commands found in stream
[2026-08-31 10:22:56,350.350 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:22:56,353.353 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-08-31 10:22:59,309.309 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 10:22:59,311.311 INFO    ] Checking for system updates...
[2026-08-31 10:22:59,350.350 INFO    ] 200
[2026-08-31 10:22:59,352.352 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:22:59,423.423 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:22:59,426.426 INFO    ] No update needed
[2026-08-31 10:22:59,428.428 INFO    ] Checking for camera pi updates...
[2026-08-31 10:22:59,463.463 INFO    ] 200
[2026-08-31 10:22:59,466.466 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:22:59,510.510 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:22:59,623.623 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:22:59,625.625 INFO    ] No camera update needed
[2026-08-31 10:22:59,628.628 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:22:59,630.630 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:22:59,636.636 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:22:59,641.641 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:23:01,682.682 INFO    ] ================================================
[2026-08-31 10:23:01,699.699 INFO    ] Launching Daemon at Mon Aug 31 10:23:01 IST 2026
[2026-08-31 10:23:01,711.711 INFO    ] ================================================
[2026-08-31 10:23:02,458.458 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:23:02
[2026-08-31 10:23:03,181.181 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:23:03,486.486 INFO    ] Initializing speech engine...
[2026-08-31 10:23:03,506.506 INFO    ] 2026-08-31 10:23:03
[2026-08-31 10:23:03,838.838 INFO    ] 2026-08-31 10:23:03
[2026-08-31 10:23:03,878.878 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:23:04,151.151 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:23:04,162.162 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:23:04,380.380 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:23:04,411.411 INFO    ] time= 31/08/2026 10:23:04
[2026-08-31 10:23:04,425.425 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:23:04,434.434 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:23:04,552.552 INFO    ] No existing commands found in stream
[2026-08-31 10:23:09,562.562 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:23:09,565.565 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-08-31 10:23:10,172.172 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 10:23:10,175.175 INFO    ] Checking for system updates...
[2026-08-31 10:23:10,213.213 INFO    ] 200
[2026-08-31 10:23:10,216.216 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:23:10,269.269 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:23:10,272.272 INFO    ] No update needed
[2026-08-31 10:23:10,275.275 INFO    ] Checking for camera pi updates...
[2026-08-31 10:23:10,309.309 INFO    ] 200
[2026-08-31 10:23:10,312.312 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:23:10,354.354 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:23:10,426.426 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:23:10,429.429 INFO    ] No camera update needed
[2026-08-31 10:23:10,432.432 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:23:10,434.434 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:23:10,441.441 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:23:10,446.446 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:23:12,488.488 INFO    ] ================================================
[2026-08-31 10:23:12,503.503 INFO    ] Launching Daemon at Mon Aug 31 10:23:12 IST 2026
[2026-08-31 10:23:12,514.514 INFO    ] ================================================
[2026-08-31 10:23:13,101.101 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:23:13
[2026-08-31 10:23:13,741.741 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:23:14,053.053 INFO    ] Initializing speech engine...
[2026-08-31 10:23:14,065.065 INFO    ] 2026-08-31 10:23:14
[2026-08-31 10:23:14,386.386 INFO    ] 2026-08-31 10:23:14
[2026-08-31 10:23:14,475.475 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:23:14,700.700 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:23:14,708.708 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:23:14,878.878 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:23:14,915.915 INFO    ] time= 31/08/2026 10:23:14
[2026-08-31 10:23:14,935.935 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:23:14,958.958 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:23:15,155.155 INFO    ] No existing commands found in stream
[2026-08-31 10:23:20,187.187 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:23:20,191.191 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-08-31 10:23:21,375.375 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 10:23:21,378.378 INFO    ] Checking for system updates...
[2026-08-31 10:23:21,419.419 INFO    ] 200
[2026-08-31 10:23:21,422.422 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:23:21,483.483 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:23:21,486.486 INFO    ] No update needed
[2026-08-31 10:23:21,489.489 INFO    ] Checking for camera pi updates...
[2026-08-31 10:23:21,524.524 INFO    ] 200
[2026-08-31 10:23:21,527.527 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:23:21,574.574 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:23:21,659.659 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:23:21,662.662 INFO    ] No camera update needed
[2026-08-31 10:23:21,664.664 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:23:21,666.666 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:23:21,672.672 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:23:21,677.677 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:23:23,718.718 INFO    ] ================================================
[2026-08-31 10:23:23,733.733 INFO    ] Launching Daemon at Mon Aug 31 10:23:23 IST 2026
[2026-08-31 10:23:23,744.744 INFO    ] ================================================
[2026-08-31 10:23:24,415.415 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:23:24
[2026-08-31 10:23:25,102.102 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:23:25,409.409 INFO    ] Initializing speech engine...
[2026-08-31 10:23:25,414.414 INFO    ] 2026-08-31 10:23:25
[2026-08-31 10:23:25,672.672 INFO    ] 2026-08-31 10:23:25
[2026-08-31 10:23:25,728.728 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:23:25,976.976 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:23:25,980.980 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:23:26,178.178 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:23:26,223.223 INFO    ] time= 31/08/2026 10:23:26
[2026-08-31 10:23:26,229.229 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:23:26,248.248 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:23:26,375.375 INFO    ] No existing commands found in stream
[2026-08-31 10:23:31,392.392 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:23:31,395.395 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-08-31 10:23:34,815.815 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 10:23:34,818.818 INFO    ] Checking for system updates...
[2026-08-31 10:23:34,860.860 INFO    ] 200
[2026-08-31 10:23:34,864.864 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:23:34,925.925 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:23:34,928.928 INFO    ] No update needed
[2026-08-31 10:23:34,931.931 INFO    ] Checking for camera pi updates...
[2026-08-31 10:23:34,966.966 INFO    ] 200
[2026-08-31 10:23:34,969.969 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:23:35,011.011 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:23:35,098.098 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:23:35,101.101 INFO    ] No camera update needed
[2026-08-31 10:23:35,103.103 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:23:35,106.106 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:23:35,112.112 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:23:35,118.118 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:23:37,161.161 INFO    ] ================================================
[2026-08-31 10:23:37,176.176 INFO    ] Launching Daemon at Mon Aug 31 10:23:37 IST 2026
[2026-08-31 10:23:37,187.187 INFO    ] ================================================
[2026-08-31 10:23:37,854.854 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:23:37
[2026-08-31 10:23:38,539.539 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:23:38,853.853 INFO    ] Initializing speech engine...
[2026-08-31 10:23:38,860.860 INFO    ] 2026-08-31 10:23:38
[2026-08-31 10:23:39,143.143 INFO    ] 2026-08-31 10:23:39
[2026-08-31 10:23:39,211.211 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:23:39,494.494 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:23:39,500.500 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:23:39,700.700 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:23:39,708.708 INFO    ] time= 31/08/2026 10:23:39
[2026-08-31 10:23:39,728.728 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:23:39,757.757 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:23:39,889.889 INFO    ] No existing commands found in stream
[2026-08-31 10:23:44,920.920 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:23:44,923.923 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-08-31 10:23:47,766.766 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 10:23:47,770.770 INFO    ] Checking for system updates...
[2026-08-31 10:23:47,806.806 INFO    ] 200
[2026-08-31 10:23:47,809.809 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:23:47,862.862 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:23:47,865.865 INFO    ] No update needed
[2026-08-31 10:23:47,867.867 INFO    ] Checking for camera pi updates...
[2026-08-31 10:23:47,901.901 INFO    ] 200
[2026-08-31 10:23:47,904.904 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:23:47,944.944 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:23:48,036.036 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:23:48,038.038 INFO    ] No camera update needed
[2026-08-31 10:23:48,041.041 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:23:48,043.043 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:23:48,048.048 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:23:48,053.053 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:23:50,094.094 INFO    ] ================================================
[2026-08-31 10:23:50,109.109 INFO    ] Launching Daemon at Mon Aug 31 10:23:50 IST 2026
[2026-08-31 10:23:50,120.120 INFO    ] ================================================
[2026-08-31 10:23:50,688.688 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:23:50
[2026-08-31 10:23:51,272.272 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:23:51,548.548 INFO    ] Initializing speech engine...
[2026-08-31 10:23:51,554.554 INFO    ] 2026-08-31 10:23:51
[2026-08-31 10:23:51,827.827 INFO    ] 2026-08-31 10:23:51
[2026-08-31 10:23:51,895.895 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:23:52,119.119 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:23:52,125.125 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:23:52,351.351 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:23:52,363.363 INFO    ] time= 31/08/2026 10:23:52
[2026-08-31 10:23:52,381.381 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:23:52,409.409 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:23:52,521.521 INFO    ] No existing commands found in stream
[2026-08-31 10:23:57,539.539 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:23:57,542.542 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-08-31 10:23:58,251.251 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 10:23:58,254.254 INFO    ] Checking for system updates...
[2026-08-31 10:23:58,290.290 INFO    ] 200
[2026-08-31 10:23:58,293.293 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:23:58,346.346 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:23:58,349.349 INFO    ] No update needed
[2026-08-31 10:23:58,352.352 INFO    ] Checking for camera pi updates...
[2026-08-31 10:23:58,389.389 INFO    ] 200
[2026-08-31 10:23:58,392.392 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:23:58,437.437 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:23:58,520.520 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:23:58,523.523 INFO    ] No camera update needed
[2026-08-31 10:23:58,525.525 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:23:58,527.527 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:23:58,533.533 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:23:58,538.538 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:24:00,578.578 INFO    ] ================================================
[2026-08-31 10:24:00,593.593 INFO    ] Launching Daemon at Mon Aug 31 10:24:00 IST 2026
[2026-08-31 10:24:00,604.604 INFO    ] ================================================
[2026-08-31 10:24:01,241.241 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:24:01
[2026-08-31 10:24:01,910.910 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:24:02,250.250 INFO    ] Initializing speech engine...
[2026-08-31 10:24:02,263.263 INFO    ] 2026-08-31 10:24:02
[2026-08-31 10:24:02,595.595 INFO    ] 2026-08-31 10:24:02
[2026-08-31 10:24:02,667.667 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:24:02,911.911 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:24:02,923.923 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:24:03,064.064 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:24:03,125.125 INFO    ] time= 31/08/2026 10:24:03
[2026-08-31 10:24:03,195.195 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:24:03,202.202 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:24:03,348.348 INFO    ] No existing commands found in stream
[2026-08-31 10:24:08,364.364 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:24:08,367.367 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-08-31 10:24:12,486.486 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 10:24:12,488.488 INFO    ] Checking for system updates...
[2026-08-31 10:24:12,523.523 INFO    ] 200
[2026-08-31 10:24:12,526.526 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:24:12,578.578 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:24:12,581.581 INFO    ] No update needed
[2026-08-31 10:24:12,583.583 INFO    ] Checking for camera pi updates...
[2026-08-31 10:24:12,620.620 INFO    ] 200
[2026-08-31 10:24:12,622.622 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:24:12,666.666 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:24:12,771.771 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:24:12,773.773 INFO    ] No camera update needed
[2026-08-31 10:24:12,775.775 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:24:12,778.778 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:24:12,783.783 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:24:12,788.788 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:24:14,827.827 INFO    ] ================================================
[2026-08-31 10:24:14,842.842 INFO    ] Launching Daemon at Mon Aug 31 10:24:14 IST 2026
[2026-08-31 10:24:14,852.852 INFO    ] ================================================
[2026-08-31 10:24:15,417.417 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:24:15
[2026-08-31 10:24:16,004.004 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:24:16,265.265 INFO    ] Initializing speech engine...
[2026-08-31 10:24:16,284.284 INFO    ] 2026-08-31 10:24:16
[2026-08-31 10:24:16,533.533 INFO    ] 2026-08-31 10:24:16
[2026-08-31 10:24:16,569.569 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:24:16,825.825 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:24:16,835.835 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:24:17,057.057 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:24:17,097.097 INFO    ] time= 31/08/2026 10:24:17
[2026-08-31 10:24:17,104.104 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:24:17,122.122 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:24:17,249.249 INFO    ] No existing commands found in stream
[2026-08-31 10:24:22,266.266 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:24:22,269.269 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-08-31 10:24:25,131.131 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 10:24:25,134.134 INFO    ] Checking for system updates...
[2026-08-31 10:24:25,178.178 INFO    ] 200
[2026-08-31 10:24:25,180.180 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:24:25,237.237 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:24:25,239.239 INFO    ] No update needed
[2026-08-31 10:24:25,242.242 INFO    ] Checking for camera pi updates...
[2026-08-31 10:24:25,279.279 INFO    ] 200
[2026-08-31 10:24:25,282.282 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:24:25,326.326 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:24:25,404.404 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:24:25,407.407 INFO    ] No camera update needed
[2026-08-31 10:24:25,409.409 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:24:25,412.412 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:24:25,417.417 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:24:25,422.422 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:24:27,461.461 INFO    ] ================================================
[2026-08-31 10:24:27,476.476 INFO    ] Launching Daemon at Mon Aug 31 10:24:27 IST 2026
[2026-08-31 10:24:27,487.487 INFO    ] ================================================
[2026-08-31 10:24:28,069.069 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:24:28
[2026-08-31 10:24:28,655.655 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:24:28,929.929 INFO    ] Initializing speech engine...
[2026-08-31 10:24:28,935.935 INFO    ] 2026-08-31 10:24:28
[2026-08-31 10:24:29,193.193 INFO    ] 2026-08-31 10:24:29
[2026-08-31 10:24:29,223.223 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:24:29,466.466 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:24:29,475.475 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:24:29,696.696 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:24:29,731.731 INFO    ] time= 31/08/2026 10:24:29
[2026-08-31 10:24:29,737.737 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:24:29,755.755 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:24:29,886.886 INFO    ] No existing commands found in stream
[2026-08-31 10:24:34,901.901 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:24:34,904.904 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-08-31 10:24:38,821.821 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 10:24:38,824.824 INFO    ] Checking for system updates...
[2026-08-31 10:24:38,863.863 INFO    ] 200
[2026-08-31 10:24:38,866.866 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:24:38,918.918 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:24:38,920.920 INFO    ] No update needed
[2026-08-31 10:24:38,923.923 INFO    ] Checking for camera pi updates...
[2026-08-31 10:24:38,956.956 INFO    ] 200
[2026-08-31 10:24:38,959.959 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:24:39,000.000 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:24:39,183.183 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:24:39,185.185 INFO    ] No camera update needed
[2026-08-31 10:24:39,188.188 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:24:39,190.190 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:24:39,195.195 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:24:39,200.200 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:24:41,240.240 INFO    ] ================================================
[2026-08-31 10:24:41,255.255 INFO    ] Launching Daemon at Mon Aug 31 10:24:41 IST 2026
[2026-08-31 10:24:41,265.265 INFO    ] ================================================
[2026-08-31 10:24:41,830.830 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:24:41
[2026-08-31 10:24:42,415.415 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:24:42,684.684 INFO    ] Initializing speech engine...
[2026-08-31 10:24:42,692.692 INFO    ] 2026-08-31 10:24:42
[2026-08-31 10:24:42,944.944 INFO    ] 2026-08-31 10:24:42
[2026-08-31 10:24:42,979.979 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:24:43,241.241 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:24:43,247.247 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:24:43,451.451 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:24:43,510.510 INFO    ] time= 31/08/2026 10:24:43
[2026-08-31 10:24:43,517.517 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:24:43,535.535 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:24:43,638.638 INFO    ] No existing commands found in stream
[2026-08-31 10:24:48,663.663 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:24:48,666.666 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-08-31 10:24:54,126.126 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 10:24:54,129.129 INFO    ] Checking for system updates...
[2026-08-31 10:24:54,165.165 INFO    ] 200
[2026-08-31 10:24:54,168.168 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:24:54,220.220 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:24:54,222.222 INFO    ] No update needed
[2026-08-31 10:24:54,225.225 INFO    ] Checking for camera pi updates...
[2026-08-31 10:24:54,258.258 INFO    ] 200
[2026-08-31 10:24:54,261.261 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:24:54,305.305 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:24:54,388.388 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:24:54,390.390 INFO    ] No camera update needed
[2026-08-31 10:24:54,393.393 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:24:54,395.395 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:24:54,400.400 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:24:54,405.405 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:24:56,449.449 INFO    ] ================================================
[2026-08-31 10:24:56,464.464 INFO    ] Launching Daemon at Mon Aug 31 10:24:56 IST 2026
[2026-08-31 10:24:56,475.475 INFO    ] ================================================
[2026-08-31 10:24:57,042.042 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:24:57
[2026-08-31 10:24:57,627.627 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:24:57,895.895 INFO    ] Initializing speech engine...
[2026-08-31 10:24:57,904.904 INFO    ] 2026-08-31 10:24:57
[2026-08-31 10:24:58,164.164 INFO    ] 2026-08-31 10:24:58
[2026-08-31 10:24:58,218.218 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:24:58,467.467 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:24:58,471.471 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:24:58,696.696 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:24:58,707.707 INFO    ] time= 31/08/2026 10:24:58
[2026-08-31 10:24:58,728.728 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:24:58,753.753 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:24:58,932.932 INFO    ] No existing commands found in stream
[2026-08-31 10:25:03,963.963 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:25:03,966.966 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-08-31 10:25:07,663.663 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 10:25:07,666.666 INFO    ] Checking for system updates...
[2026-08-31 10:25:07,706.706 INFO    ] 200
[2026-08-31 10:25:07,709.709 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:25:07,769.769 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:25:07,772.772 INFO    ] No update needed
[2026-08-31 10:25:07,774.774 INFO    ] Checking for camera pi updates...
[2026-08-31 10:25:07,812.812 INFO    ] 200
[2026-08-31 10:25:07,814.814 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:25:07,860.860 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:25:07,938.938 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:25:07,940.940 INFO    ] No camera update needed
[2026-08-31 10:25:07,943.943 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:25:07,945.945 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:25:07,951.951 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:25:07,956.956 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:25:10,998.998 INFO    ] ================================================
[2026-08-31 10:25:10,013.013 INFO    ] Launching Daemon at Mon Aug 31 10:25:10 IST 2026
[2026-08-31 10:25:10,025.025 INFO    ] ================================================
[2026-08-31 10:25:10,594.594 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:25:10
[2026-08-31 10:25:11,180.180 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:25:11,450.450 INFO    ] Initializing speech engine...
[2026-08-31 10:25:11,459.459 INFO    ] 2026-08-31 10:25:11
[2026-08-31 10:25:11,706.706 INFO    ] 2026-08-31 10:25:11
[2026-08-31 10:25:11,770.770 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:25:11,992.992 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:25:12,001.001 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:25:12,214.214 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:25:12,260.260 INFO    ] time= 31/08/2026 10:25:12
[2026-08-31 10:25:12,266.266 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:25:12,283.283 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:25:12,413.413 INFO    ] No existing commands found in stream
[2026-08-31 10:25:17,425.425 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:25:17,428.428 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-08-31 10:25:20,244.244 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 10:25:20,247.247 INFO    ] Checking for system updates...
[2026-08-31 10:25:20,284.284 INFO    ] 200
[2026-08-31 10:25:20,287.287 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:25:20,342.342 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:25:20,345.345 INFO    ] No update needed
[2026-08-31 10:25:20,347.347 INFO    ] Checking for camera pi updates...
[2026-08-31 10:25:20,382.382 INFO    ] 200
[2026-08-31 10:25:20,385.385 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:25:20,426.426 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:25:20,490.490 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:25:20,493.493 INFO    ] No camera update needed
[2026-08-31 10:25:20,499.499 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:25:20,502.502 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:25:20,508.508 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:25:20,513.513 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:25:22,553.553 INFO    ] ================================================
[2026-08-31 10:25:22,569.569 INFO    ] Launching Daemon at Mon Aug 31 10:25:22 IST 2026
[2026-08-31 10:25:22,580.580 INFO    ] ================================================
[2026-08-31 10:25:23,161.161 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:25:23
[2026-08-31 10:25:23,760.760 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:25:24,033.033 INFO    ] Initializing speech engine...
[2026-08-31 10:25:24,042.042 INFO    ] 2026-08-31 10:25:24
[2026-08-31 10:25:24,291.291 INFO    ] 2026-08-31 10:25:24
[2026-08-31 10:25:24,325.325 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:25:24,581.581 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:25:24,585.585 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:25:24,810.810 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:25:24,842.842 INFO    ] time= 31/08/2026 10:25:24
[2026-08-31 10:25:24,849.849 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:25:24,866.866 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:25:25,022.022 INFO    ] No existing commands found in stream
[2026-08-31 10:25:30,052.052 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:25:30,055.055 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-08-31 10:25:32,303.303 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 10:25:32,306.306 INFO    ] Checking for system updates...
[2026-08-31 10:25:32,350.350 INFO    ] 200
[2026-08-31 10:25:32,352.352 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:25:32,412.412 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:25:32,414.414 INFO    ] No update needed
[2026-08-31 10:25:32,417.417 INFO    ] Checking for camera pi updates...
[2026-08-31 10:25:32,454.454 INFO    ] 200
[2026-08-31 10:25:32,459.459 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:25:32,507.507 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:25:32,588.588 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:25:32,590.590 INFO    ] No camera update needed
[2026-08-31 10:25:32,593.593 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:25:32,595.595 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:25:32,600.600 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:25:32,605.605 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:25:34,646.646 INFO    ] ================================================
[2026-08-31 10:25:34,661.661 INFO    ] Launching Daemon at Mon Aug 31 10:25:34 IST 2026
[2026-08-31 10:25:34,672.672 INFO    ] ================================================
[2026-08-31 10:25:35,255.255 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:25:35
[2026-08-31 10:25:35,853.853 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:25:36,132.132 INFO    ] Initializing speech engine...
[2026-08-31 10:25:36,138.138 INFO    ] 2026-08-31 10:25:36
[2026-08-31 10:25:36,386.386 INFO    ] 2026-08-31 10:25:36
[2026-08-31 10:25:36,421.421 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:25:36,679.679 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:25:36,684.684 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:25:36,816.816 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:25:36,875.875 INFO    ] time= 31/08/2026 10:25:36
[2026-08-31 10:25:36,935.935 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:25:36,945.945 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:25:37,090.090 INFO    ] No existing commands found in stream
[2026-08-31 10:25:42,105.105 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:25:42,108.108 INFO    ] Waiting 4.00 seconds before fallback handling...
[2026-08-31 10:25:46,622.622 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 10:25:46,624.624 INFO    ] Checking for system updates...
[2026-08-31 10:25:46,664.664 INFO    ] 200
[2026-08-31 10:25:46,667.667 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:25:46,727.727 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:25:46,730.730 INFO    ] No update needed
[2026-08-31 10:25:46,732.732 INFO    ] Checking for camera pi updates...
[2026-08-31 10:25:46,770.770 INFO    ] 200
[2026-08-31 10:25:46,772.772 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:25:46,817.817 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:25:46,891.891 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:25:46,894.894 INFO    ] No camera update needed
[2026-08-31 10:25:46,896.896 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:25:46,898.898 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:25:46,904.904 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:25:46,909.909 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:25:48,950.950 INFO    ] ================================================
[2026-08-31 10:25:48,965.965 INFO    ] Launching Daemon at Mon Aug 31 10:25:48 IST 2026
[2026-08-31 10:25:48,976.976 INFO    ] ================================================
[2026-08-31 10:25:49,560.560 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:25:49
[2026-08-31 10:25:50,160.160 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:25:50,432.432 INFO    ] Initializing speech engine...
[2026-08-31 10:25:50,443.443 INFO    ] 2026-08-31 10:25:50
[2026-08-31 10:25:50,691.691 INFO    ] 2026-08-31 10:25:50
[2026-08-31 10:25:50,726.726 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:25:50,978.978 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:25:50,989.989 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:25:51,122.122 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:25:51,186.186 INFO    ] time= 31/08/2026 10:25:51
[2026-08-31 10:25:51,248.248 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:25:51,255.255 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:25:51,401.401 INFO    ] No existing commands found in stream
[2026-08-31 10:25:56,427.427 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:25:56,430.430 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-08-31 10:26:00,101.101 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 10:26:00,104.104 INFO    ] Checking for system updates...
[2026-08-31 10:26:00,144.144 INFO    ] 200
[2026-08-31 10:26:00,147.147 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:26:00,213.213 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:26:00,216.216 INFO    ] No update needed
[2026-08-31 10:26:00,219.219 INFO    ] Checking for camera pi updates...
[2026-08-31 10:26:00,253.253 INFO    ] 200
[2026-08-31 10:26:00,255.255 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:26:00,296.296 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:26:00,378.378 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:26:00,380.380 INFO    ] No camera update needed
[2026-08-31 10:26:00,382.382 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:26:00,385.385 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:26:00,390.390 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:26:00,395.395 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:26:02,443.443 INFO    ] ================================================
[2026-08-31 10:26:02,464.464 INFO    ] Launching Daemon at Mon Aug 31 10:26:02 IST 2026
[2026-08-31 10:26:02,483.483 INFO    ] ================================================
[2026-08-31 10:26:03,133.133 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:26:03
[2026-08-31 10:26:03,729.729 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:26:03,981.981 INFO    ] Initializing speech engine...
[2026-08-31 10:26:03,994.994 INFO    ] 2026-08-31 10:26:03
[2026-08-31 10:26:04,270.270 INFO    ] 2026-08-31 10:26:04
[2026-08-31 10:26:04,308.308 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:26:04,536.536 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:26:04,544.544 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:26:04,768.768 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:26:04,774.774 INFO    ] time= 31/08/2026 10:26:04
[2026-08-31 10:26:04,808.808 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:26:04,837.837 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:26:04,928.928 INFO    ] No existing commands found in stream
[2026-08-31 10:26:09,950.950 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:26:09,953.953 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-08-31 10:26:13,503.503 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 10:26:13,506.506 INFO    ] Checking for system updates...
[2026-08-31 10:26:13,545.545 INFO    ] 200
[2026-08-31 10:26:13,548.548 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:26:13,601.601 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:26:13,604.604 INFO    ] No update needed
[2026-08-31 10:26:13,606.606 INFO    ] Checking for camera pi updates...
[2026-08-31 10:26:13,640.640 INFO    ] 200
[2026-08-31 10:26:13,643.643 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:26:13,683.683 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:26:13,770.770 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:26:13,772.772 INFO    ] No camera update needed
[2026-08-31 10:26:13,775.775 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:26:13,777.777 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:26:13,783.783 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:26:13,788.788 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:26:15,831.831 INFO    ] ================================================
[2026-08-31 10:26:15,847.847 INFO    ] Launching Daemon at Mon Aug 31 10:26:15 IST 2026
[2026-08-31 10:26:15,858.858 INFO    ] ================================================
[2026-08-31 10:26:16,519.519 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:26:16
[2026-08-31 10:26:17,199.199 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:26:17,512.512 INFO    ] Initializing speech engine...
[2026-08-31 10:26:17,519.519 INFO    ] 2026-08-31 10:26:17
[2026-08-31 10:26:17,827.827 INFO    ] 2026-08-31 10:26:17
[2026-08-31 10:26:17,916.916 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:26:18,128.128 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:26:18,134.134 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:26:18,308.308 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:26:18,335.335 INFO    ] time= 31/08/2026 10:26:18
[2026-08-31 10:26:18,355.355 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:26:18,378.378 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:26:18,493.493 INFO    ] No existing commands found in stream
[2026-08-31 10:26:23,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:26:23,520.520 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-08-31 10:26:25,283.283 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 10:26:25,286.286 INFO    ] Checking for system updates...
[2026-08-31 10:26:25,337.337 INFO    ] 200
[2026-08-31 10:26:25,340.340 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:26:25,399.399 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:26:25,401.401 INFO    ] No update needed
[2026-08-31 10:26:25,403.403 INFO    ] Checking for camera pi updates...
[2026-08-31 10:26:25,437.437 INFO    ] 200
[2026-08-31 10:26:25,439.439 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:26:25,490.490 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:26:25,570.570 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:26:25,573.573 INFO    ] No camera update needed
[2026-08-31 10:26:25,575.575 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:26:25,577.577 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:26:25,583.583 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:26:25,588.588 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:26:27,628.628 INFO    ] ================================================
[2026-08-31 10:26:27,644.644 INFO    ] Launching Daemon at Mon Aug 31 10:26:27 IST 2026
[2026-08-31 10:26:27,655.655 INFO    ] ================================================
[2026-08-31 10:26:28,224.224 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:26:28
[2026-08-31 10:26:28,808.808 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:26:29,065.065 INFO    ] Initializing speech engine...
[2026-08-31 10:26:29,081.081 INFO    ] 2026-08-31 10:26:29
[2026-08-31 10:26:29,365.365 INFO    ] 2026-08-31 10:26:29
[2026-08-31 10:26:29,400.400 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:26:29,602.602 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:26:29,617.617 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:26:29,778.778 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:26:29,787.787 INFO    ] time= 31/08/2026 10:26:29
[2026-08-31 10:26:29,793.793 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:26:29,800.800 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:26:29,920.920 INFO    ] No existing commands found in stream
[2026-08-31 10:26:34,945.945 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:26:34,948.948 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-08-31 10:26:36,249.249 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 10:26:36,252.252 INFO    ] Checking for system updates...
[2026-08-31 10:26:36,293.293 INFO    ] 200
[2026-08-31 10:26:36,296.296 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:26:36,357.357 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:26:36,360.360 INFO    ] No update needed
[2026-08-31 10:26:36,363.363 INFO    ] Checking for camera pi updates...
[2026-08-31 10:26:36,402.402 INFO    ] 200
[2026-08-31 10:26:36,405.405 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:26:36,456.456 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:26:36,543.543 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:26:36,546.546 INFO    ] No camera update needed
[2026-08-31 10:26:36,549.549 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:26:36,551.551 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:26:36,558.558 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:26:36,563.563 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:26:38,605.605 INFO    ] ================================================
[2026-08-31 10:26:38,621.621 INFO    ] Launching Daemon at Mon Aug 31 10:26:38 IST 2026
[2026-08-31 10:26:38,632.632 INFO    ] ================================================
[2026-08-31 10:26:39,198.198 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:26:39
[2026-08-31 10:26:39,785.785 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:26:40,054.054 INFO    ] Initializing speech engine...
[2026-08-31 10:26:40,070.070 INFO    ] 2026-08-31 10:26:40
[2026-08-31 10:26:40,351.351 INFO    ] 2026-08-31 10:26:40
[2026-08-31 10:26:40,403.403 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:26:40,722.722 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:26:40,742.742 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:26:40,962.962 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:26:40,998.998 INFO    ] time= 31/08/2026 10:26:40
[2026-08-31 10:26:41,004.004 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:26:41,022.022 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:26:41,161.161 INFO    ] No existing commands found in stream
[2026-08-31 10:26:46,172.172 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:26:46,175.175 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-08-31 10:26:48,270.270 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 10:26:48,273.273 INFO    ] Checking for system updates...
[2026-08-31 10:26:48,309.309 INFO    ] 200
[2026-08-31 10:26:48,312.312 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:26:48,372.372 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:26:48,374.374 INFO    ] No update needed
[2026-08-31 10:26:48,377.377 INFO    ] Checking for camera pi updates...
[2026-08-31 10:26:48,414.414 INFO    ] 200
[2026-08-31 10:26:48,417.417 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:26:48,457.457 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:26:48,646.646 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:26:48,648.648 INFO    ] No camera update needed
[2026-08-31 10:26:48,651.651 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:26:48,653.653 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:26:48,658.658 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:26:48,664.664 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:26:50,705.705 INFO    ] ================================================
[2026-08-31 10:26:50,721.721 INFO    ] Launching Daemon at Mon Aug 31 10:26:50 IST 2026
[2026-08-31 10:26:50,732.732 INFO    ] ================================================
[2026-08-31 10:26:51,353.353 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:26:51
[2026-08-31 10:26:51,954.954 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:26:52,230.230 INFO    ] Initializing speech engine...
[2026-08-31 10:26:52,236.236 INFO    ] 2026-08-31 10:26:52
[2026-08-31 10:26:52,483.483 INFO    ] 2026-08-31 10:26:52
[2026-08-31 10:26:52,520.520 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:26:52,775.775 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:26:52,779.779 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:26:52,970.970 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:26:53,030.030 INFO    ] time= 31/08/2026 10:26:52
[2026-08-31 10:26:53,042.042 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:26:53,061.061 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:26:53,193.193 INFO    ] No existing commands found in stream
[2026-08-31 10:26:58,214.214 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:26:58,217.217 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-08-31 10:27:01,396.396 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 10:27:01,401.401 INFO    ] Checking for system updates...
[2026-08-31 10:27:01,485.485 INFO    ] 200
[2026-08-31 10:27:01,488.488 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:27:01,620.620 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:27:01,623.623 INFO    ] No update needed
[2026-08-31 10:27:01,626.626 INFO    ] Checking for camera pi updates...
[2026-08-31 10:27:01,680.680 INFO    ] 200
[2026-08-31 10:27:01,683.683 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:27:01,740.740 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:27:01,831.831 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:27:01,834.834 INFO    ] No camera update needed
[2026-08-31 10:27:01,837.837 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:27:01,840.840 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:27:01,846.846 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:27:01,852.852 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:27:03,896.896 INFO    ] ================================================
[2026-08-31 10:27:03,912.912 INFO    ] Launching Daemon at Mon Aug 31 10:27:03 IST 2026
[2026-08-31 10:27:03,923.923 INFO    ] ================================================
[2026-08-31 10:27:04,491.491 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:27:04
[2026-08-31 10:27:05,072.072 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:27:05,321.321 INFO    ] Initializing speech engine...
[2026-08-31 10:27:05,329.329 INFO    ] 2026-08-31 10:27:05
[2026-08-31 10:27:05,623.623 INFO    ] 2026-08-31 10:27:05
[2026-08-31 10:27:05,648.648 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:27:05,854.854 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:27:05,867.867 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:27:06,103.103 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:27:06,125.125 INFO    ] time= 31/08/2026 10:27:06
[2026-08-31 10:27:06,179.179 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:27:06,239.239 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:27:06,355.355 INFO    ] No existing commands found in stream
[2026-08-31 10:27:11,375.375 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:27:11,378.378 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-08-31 10:27:15,861.861 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 10:27:15,863.863 INFO    ] Checking for system updates...
[2026-08-31 10:27:15,899.899 INFO    ] 200
[2026-08-31 10:27:15,902.902 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:27:15,958.958 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:27:15,961.961 INFO    ] No update needed
[2026-08-31 10:27:15,963.963 INFO    ] Checking for camera pi updates...
[2026-08-31 10:27:15,998.998 INFO    ] 200
[2026-08-31 10:27:16,000.000 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:27:16,044.044 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:27:16,124.124 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:27:16,126.126 INFO    ] No camera update needed
[2026-08-31 10:27:16,129.129 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:27:16,131.131 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:27:16,136.136 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:27:16,141.141 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:27:18,182.182 INFO    ] ================================================
[2026-08-31 10:27:18,197.197 INFO    ] Launching Daemon at Mon Aug 31 10:27:18 IST 2026
[2026-08-31 10:27:18,207.207 INFO    ] ================================================
[2026-08-31 10:27:18,791.791 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:27:18
[2026-08-31 10:27:19,385.385 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:27:19,655.655 INFO    ] Initializing speech engine...
[2026-08-31 10:27:19,665.665 INFO    ] 2026-08-31 10:27:19
[2026-08-31 10:27:19,915.915 INFO    ] 2026-08-31 10:27:19
[2026-08-31 10:27:19,950.950 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:27:20,148.148 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:27:20,193.193 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:27:20,352.352 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:27:20,389.389 INFO    ] time= 31/08/2026 10:27:20
[2026-08-31 10:27:20,438.438 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:27:20,488.488 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:27:20,609.609 INFO    ] No existing commands found in stream
[2026-08-31 10:27:25,631.631 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:27:25,633.633 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-08-31 10:27:29,145.145 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 10:27:29,147.147 INFO    ] Checking for system updates...
[2026-08-31 10:27:29,187.187 INFO    ] 200
[2026-08-31 10:27:29,190.190 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:27:29,249.249 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:27:29,251.251 INFO    ] No update needed
[2026-08-31 10:27:29,254.254 INFO    ] Checking for camera pi updates...
[2026-08-31 10:27:29,287.287 INFO    ] 200
[2026-08-31 10:27:29,289.289 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:27:29,333.333 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:27:29,418.418 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:27:29,421.421 INFO    ] No camera update needed
[2026-08-31 10:27:29,423.423 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:27:29,425.425 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:27:29,431.431 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:27:29,436.436 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:27:31,478.478 INFO    ] ================================================
[2026-08-31 10:27:31,494.494 INFO    ] Launching Daemon at Mon Aug 31 10:27:31 IST 2026
[2026-08-31 10:27:31,505.505 INFO    ] ================================================
[2026-08-31 10:27:32,132.132 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:27:32
[2026-08-31 10:27:32,812.812 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:27:33,097.097 INFO    ] Initializing speech engine...
[2026-08-31 10:27:33,111.111 INFO    ] 2026-08-31 10:27:33
[2026-08-31 10:27:33,382.382 INFO    ] 2026-08-31 10:27:33
[2026-08-31 10:27:33,420.420 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:27:33,618.618 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:27:33,633.633 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:27:33,795.795 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:27:33,805.805 INFO    ] time= 31/08/2026 10:27:33
[2026-08-31 10:27:33,812.812 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:27:33,865.865 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:27:34,030.030 INFO    ] No existing commands found in stream
[2026-08-31 10:27:39,041.041 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:27:39,043.043 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-08-31 10:27:43,364.364 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 10:27:43,367.367 INFO    ] Checking for system updates...
[2026-08-31 10:27:43,403.403 INFO    ] 200
[2026-08-31 10:27:43,405.405 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:27:43,457.457 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:27:43,460.460 INFO    ] No update needed
[2026-08-31 10:27:43,462.462 INFO    ] Checking for camera pi updates...
[2026-08-31 10:27:43,500.500 INFO    ] 200
[2026-08-31 10:27:43,503.503 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:27:43,542.542 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:27:43,632.632 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:27:43,635.635 INFO    ] No camera update needed
[2026-08-31 10:27:43,637.637 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:27:43,641.641 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:27:43,646.646 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:27:43,651.651 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:27:45,693.693 INFO    ] ================================================
[2026-08-31 10:27:45,708.708 INFO    ] Launching Daemon at Mon Aug 31 10:27:45 IST 2026
[2026-08-31 10:27:45,719.719 INFO    ] ================================================
[2026-08-31 10:27:46,297.297 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:27:46
[2026-08-31 10:27:46,951.951 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:27:47,263.263 INFO    ] Initializing speech engine...
[2026-08-31 10:27:47,272.272 INFO    ] 2026-08-31 10:27:47
[2026-08-31 10:27:47,594.594 INFO    ] 2026-08-31 10:27:47
[2026-08-31 10:27:47,684.684 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:27:47,903.903 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:27:47,908.908 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:27:48,104.104 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:27:48,116.116 INFO    ] time= 31/08/2026 10:27:48
[2026-08-31 10:27:48,137.137 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:27:48,164.164 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:27:48,274.274 INFO    ] No existing commands found in stream
[2026-08-31 10:27:53,286.286 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:27:53,290.290 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-08-31 10:27:55,854.854 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 10:27:55,856.856 INFO    ] Checking for system updates...
[2026-08-31 10:27:55,892.892 INFO    ] 200
[2026-08-31 10:27:55,895.895 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:27:55,948.948 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:27:55,951.951 INFO    ] No update needed
[2026-08-31 10:27:55,954.954 INFO    ] Checking for camera pi updates...
[2026-08-31 10:27:55,989.989 INFO    ] 200
[2026-08-31 10:27:55,992.992 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:27:56,033.033 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:27:56,121.121 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:27:56,124.124 INFO    ] No camera update needed
[2026-08-31 10:27:56,126.126 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:27:56,129.129 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:27:56,136.136 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:27:56,141.141 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:27:58,183.183 INFO    ] ================================================
[2026-08-31 10:27:58,199.199 INFO    ] Launching Daemon at Mon Aug 31 10:27:58 IST 2026
[2026-08-31 10:27:58,210.210 INFO    ] ================================================
[2026-08-31 10:27:58,793.793 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:27:58
[2026-08-31 10:27:59,393.393 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:27:59,668.668 INFO    ] Initializing speech engine...
[2026-08-31 10:27:59,678.678 INFO    ] 2026-08-31 10:27:59
[2026-08-31 10:27:59,933.933 INFO    ] 2026-08-31 10:27:59
[2026-08-31 10:27:59,996.996 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:28:00,253.253 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:28:00,261.261 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:28:00,452.452 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:28:00,507.507 INFO    ] time= 31/08/2026 10:28:00
[2026-08-31 10:28:00,541.541 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:28:00,548.548 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:28:00,688.688 INFO    ] No existing commands found in stream
[2026-08-31 10:28:05,719.719 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:28:05,722.722 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-08-31 10:28:07,684.684 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 10:28:07,687.687 INFO    ] Checking for system updates...
[2026-08-31 10:28:07,730.730 INFO    ] 200
[2026-08-31 10:28:07,733.733 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:28:07,792.792 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:28:07,795.795 INFO    ] No update needed
[2026-08-31 10:28:07,797.797 INFO    ] Checking for camera pi updates...
[2026-08-31 10:28:07,830.830 INFO    ] 200
[2026-08-31 10:28:07,832.832 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:28:07,873.873 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:28:07,969.969 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:28:07,971.971 INFO    ] No camera update needed
[2026-08-31 10:28:07,974.974 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:28:07,976.976 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:28:07,981.981 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:28:07,986.986 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:28:10,028.028 INFO    ] ================================================
[2026-08-31 10:28:10,044.044 INFO    ] Launching Daemon at Mon Aug 31 10:28:10 IST 2026
[2026-08-31 10:28:10,055.055 INFO    ] ================================================
[2026-08-31 10:28:10,692.692 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:28:10
[2026-08-31 10:28:11,298.298 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:28:11,603.603 INFO    ] Initializing speech engine...
[2026-08-31 10:28:11,616.616 INFO    ] 2026-08-31 10:28:11
[2026-08-31 10:28:11,906.906 INFO    ] 2026-08-31 10:28:11
[2026-08-31 10:28:11,945.945 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:28:12,211.211 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:28:12,234.234 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:28:12,431.431 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:28:12,452.452 INFO    ] time= 31/08/2026 10:28:12
[2026-08-31 10:28:12,482.482 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:28:12,490.490 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:28:12,572.572 INFO    ] No existing commands found in stream
[2026-08-31 10:28:17,583.583 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:28:17,586.586 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-08-31 10:28:20,053.053 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 10:28:20,056.056 INFO    ] Checking for system updates...
[2026-08-31 10:28:20,092.092 INFO    ] 200
[2026-08-31 10:28:20,094.094 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:28:20,147.147 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:28:20,149.149 INFO    ] No update needed
[2026-08-31 10:28:20,152.152 INFO    ] Checking for camera pi updates...
[2026-08-31 10:28:20,185.185 INFO    ] 200
[2026-08-31 10:28:20,187.187 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:28:20,229.229 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:28:20,322.322 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:28:20,324.324 INFO    ] No camera update needed
[2026-08-31 10:28:20,327.327 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:28:20,329.329 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:28:20,334.334 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:28:20,339.339 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:28:22,378.378 INFO    ] ================================================
[2026-08-31 10:28:22,393.393 INFO    ] Launching Daemon at Mon Aug 31 10:28:22 IST 2026
[2026-08-31 10:28:22,404.404 INFO    ] ================================================
[2026-08-31 10:28:22,971.971 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:28:22
[2026-08-31 10:28:23,552.552 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:28:23,804.804 INFO    ] Initializing speech engine...
[2026-08-31 10:28:23,827.827 INFO    ] 2026-08-31 10:28:23
[2026-08-31 10:28:24,081.081 INFO    ] 2026-08-31 10:28:24
[2026-08-31 10:28:24,115.115 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:28:24,293.293 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:28:24,305.305 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:28:24,521.521 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:28:24,561.561 INFO    ] time= 31/08/2026 10:28:24
[2026-08-31 10:28:24,605.605 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:28:24,655.655 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:28:24,787.787 INFO    ] No existing commands found in stream
[2026-08-31 10:28:29,817.817 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:28:29,820.820 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-08-31 10:28:31,169.169 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 10:28:31,172.172 INFO    ] Checking for system updates...
[2026-08-31 10:28:31,207.207 INFO    ] 200
[2026-08-31 10:28:31,210.210 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:28:31,271.271 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:28:31,275.275 INFO    ] No update needed
[2026-08-31 10:28:31,277.277 INFO    ] Checking for camera pi updates...
[2026-08-31 10:28:31,329.329 INFO    ] 200
[2026-08-31 10:28:31,332.332 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:28:31,391.391 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:28:31,479.479 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:28:31,482.482 INFO    ] No camera update needed
[2026-08-31 10:28:31,485.485 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:28:31,487.487 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:28:31,493.493 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:28:31,500.500 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:28:33,544.544 INFO    ] ================================================
[2026-08-31 10:28:33,559.559 INFO    ] Launching Daemon at Mon Aug 31 10:28:33 IST 2026
[2026-08-31 10:28:33,569.569 INFO    ] ================================================
[2026-08-31 10:28:34,152.152 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:28:34
[2026-08-31 10:28:34,754.754 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:28:35,031.031 INFO    ] Initializing speech engine...
[2026-08-31 10:28:35,040.040 INFO    ] 2026-08-31 10:28:35
[2026-08-31 10:28:35,299.299 INFO    ] 2026-08-31 10:28:35
[2026-08-31 10:28:35,353.353 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:28:35,639.639 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:28:35,647.647 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:28:35,851.851 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:28:35,880.880 INFO    ] time= 31/08/2026 10:28:35
[2026-08-31 10:28:35,907.907 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:28:35,917.917 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:28:36,028.028 INFO    ] No existing commands found in stream
[2026-08-31 10:28:41,052.052 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:28:41,055.055 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-08-31 10:28:43,632.632 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 10:28:43,634.634 INFO    ] Checking for system updates...
[2026-08-31 10:28:43,674.674 INFO    ] 200
[2026-08-31 10:28:43,676.676 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:28:43,728.728 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:28:43,731.731 INFO    ] No update needed
[2026-08-31 10:28:43,733.733 INFO    ] Checking for camera pi updates...
[2026-08-31 10:28:43,766.766 INFO    ] 200
[2026-08-31 10:28:43,769.769 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:28:43,813.813 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:28:43,887.887 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:28:43,889.889 INFO    ] No camera update needed
[2026-08-31 10:28:43,892.892 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:28:43,894.894 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:28:43,900.900 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:28:43,904.904 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:28:45,945.945 INFO    ] ================================================
[2026-08-31 10:28:45,960.960 INFO    ] Launching Daemon at Mon Aug 31 10:28:45 IST 2026
[2026-08-31 10:28:45,971.971 INFO    ] ================================================
[2026-08-31 10:28:46,541.541 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:28:46
[2026-08-31 10:28:47,200.200 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:28:47,511.511 INFO    ] Initializing speech engine...
[2026-08-31 10:28:47,525.525 INFO    ] 2026-08-31 10:28:47
[2026-08-31 10:28:47,844.844 INFO    ] 2026-08-31 10:28:47
[2026-08-31 10:28:47,928.928 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:28:48,086.086 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:28:48,092.092 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:28:48,310.310 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:28:48,355.355 INFO    ] time= 31/08/2026 10:28:48
[2026-08-31 10:28:48,374.374 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:28:48,383.383 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:28:48,488.488 INFO    ] No existing commands found in stream
[2026-08-31 10:28:53,514.514 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:28:53,517.517 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-08-31 10:28:58,005.005 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 10:28:58,009.009 INFO    ] Checking for system updates...
[2026-08-31 10:28:58,050.050 INFO    ] 200
[2026-08-31 10:28:58,052.052 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:28:58,117.117 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:28:58,121.121 INFO    ] No update needed
[2026-08-31 10:28:58,124.124 INFO    ] Checking for camera pi updates...
[2026-08-31 10:28:58,158.158 INFO    ] 200
[2026-08-31 10:28:58,161.161 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:28:58,207.207 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:28:58,391.391 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:28:58,394.394 INFO    ] No camera update needed
[2026-08-31 10:28:58,397.397 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:28:58,400.400 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:28:58,406.406 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:28:58,412.412 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:29:00,453.453 INFO    ] ================================================
[2026-08-31 10:29:00,469.469 INFO    ] Launching Daemon at Mon Aug 31 10:29:00 IST 2026
[2026-08-31 10:29:00,479.479 INFO    ] ================================================
[2026-08-31 10:29:01,073.073 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:29:01
[2026-08-31 10:29:01,800.800 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:29:02,087.087 INFO    ] Initializing speech engine...
[2026-08-31 10:29:02,104.104 INFO    ] 2026-08-31 10:29:02
[2026-08-31 10:29:02,401.401 INFO    ] 2026-08-31 10:29:02
[2026-08-31 10:29:02,440.440 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:29:02,668.668 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:29:02,688.688 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:29:02,887.887 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:29:02,915.915 INFO    ] time= 31/08/2026 10:29:02
[2026-08-31 10:29:02,970.970 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:29:03,023.023 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:29:03,123.123 INFO    ] No existing commands found in stream
[2026-08-31 10:29:08,146.146 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:29:08,149.149 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-08-31 10:29:08,746.746 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 10:29:08,748.748 INFO    ] Checking for system updates...
[2026-08-31 10:29:08,788.788 INFO    ] 200
[2026-08-31 10:29:08,791.791 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:29:08,850.850 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:29:08,852.852 INFO    ] No update needed
[2026-08-31 10:29:08,854.854 INFO    ] Checking for camera pi updates...
[2026-08-31 10:29:08,892.892 INFO    ] 200
[2026-08-31 10:29:08,894.894 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:29:08,935.935 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:29:09,014.014 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:29:09,017.017 INFO    ] No camera update needed
[2026-08-31 10:29:09,019.019 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:29:09,022.022 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:29:09,027.027 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:29:09,032.032 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:29:11,072.072 INFO    ] ================================================
[2026-08-31 10:29:11,087.087 INFO    ] Launching Daemon at Mon Aug 31 10:29:11 IST 2026
[2026-08-31 10:29:11,098.098 INFO    ] ================================================
[2026-08-31 10:29:11,686.686 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:29:11
[2026-08-31 10:29:12,285.285 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:29:12,562.562 INFO    ] Initializing speech engine...
[2026-08-31 10:29:12,568.568 INFO    ] 2026-08-31 10:29:12
[2026-08-31 10:29:12,831.831 INFO    ] 2026-08-31 10:29:12
[2026-08-31 10:29:12,885.885 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:29:13,136.136 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:29:13,140.140 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:29:13,348.348 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:29:13,374.374 INFO    ] time= 31/08/2026 10:29:13
[2026-08-31 10:29:13,380.380 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:29:13,401.401 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:29:13,525.525 INFO    ] No existing commands found in stream
[2026-08-31 10:29:18,540.540 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:29:18,543.543 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-08-31 10:29:21,885.885 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 10:29:21,888.888 INFO    ] Checking for system updates...
[2026-08-31 10:29:21,923.923 INFO    ] 200
[2026-08-31 10:29:21,926.926 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:29:21,985.985 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:29:21,987.987 INFO    ] No update needed
[2026-08-31 10:29:21,990.990 INFO    ] Checking for camera pi updates...
[2026-08-31 10:29:22,023.023 INFO    ] 200
[2026-08-31 10:29:22,026.026 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:29:22,066.066 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:29:22,160.160 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:29:22,163.163 INFO    ] No camera update needed
[2026-08-31 10:29:22,165.165 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:29:22,167.167 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:29:22,173.173 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:29:22,178.178 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:29:24,219.219 INFO    ] ================================================
[2026-08-31 10:29:24,235.235 INFO    ] Launching Daemon at Mon Aug 31 10:29:24 IST 2026
[2026-08-31 10:29:24,246.246 INFO    ] ================================================
[2026-08-31 10:29:24,908.908 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:29:24
[2026-08-31 10:29:25,585.585 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:29:25,894.894 INFO    ] Initializing speech engine...
[2026-08-31 10:29:25,905.905 INFO    ] 2026-08-31 10:29:25
[2026-08-31 10:29:26,193.193 INFO    ] 2026-08-31 10:29:26
[2026-08-31 10:29:26,303.303 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:29:26,518.518 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:29:26,524.524 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:29:26,715.715 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:29:26,732.732 INFO    ] time= 31/08/2026 10:29:26
[2026-08-31 10:29:26,740.740 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:29:26,766.766 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:29:26,873.873 INFO    ] No existing commands found in stream
[2026-08-31 10:29:31,897.897 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:29:31,900.900 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-08-31 10:29:33,744.744 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 10:29:33,746.746 INFO    ] Checking for system updates...
[2026-08-31 10:29:33,781.781 INFO    ] 200
[2026-08-31 10:29:33,784.784 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:29:33,836.836 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:29:33,838.838 INFO    ] No update needed
[2026-08-31 10:29:33,841.841 INFO    ] Checking for camera pi updates...
[2026-08-31 10:29:33,879.879 INFO    ] 200
[2026-08-31 10:29:33,881.881 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:29:33,921.921 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:29:34,004.004 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:29:34,007.007 INFO    ] No camera update needed
[2026-08-31 10:29:34,009.009 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:29:34,011.011 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:29:34,017.017 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:29:34,022.022 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:29:36,061.061 INFO    ] ================================================
[2026-08-31 10:29:36,076.076 INFO    ] Launching Daemon at Mon Aug 31 10:29:36 IST 2026
[2026-08-31 10:29:36,087.087 INFO    ] ================================================
[2026-08-31 10:29:36,749.749 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:29:36
[2026-08-31 10:29:37,430.430 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:29:37,732.732 INFO    ] Initializing speech engine...
[2026-08-31 10:29:37,740.740 INFO    ] 2026-08-31 10:29:37
[2026-08-31 10:29:38,017.017 INFO    ] 2026-08-31 10:29:38
[2026-08-31 10:29:38,074.074 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:29:38,330.330 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:29:38,334.334 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:29:38,526.526 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:29:38,574.574 INFO    ] time= 31/08/2026 10:29:38
[2026-08-31 10:29:38,580.580 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:29:38,597.597 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:29:38,727.727 INFO    ] No existing commands found in stream
[2026-08-31 10:29:43,739.739 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:29:43,742.742 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-08-31 10:29:47,850.850 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 10:29:47,853.853 INFO    ] Checking for system updates...
[2026-08-31 10:29:47,888.888 INFO    ] 200
[2026-08-31 10:29:47,891.891 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:29:47,950.950 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:29:47,953.953 INFO    ] No update needed
[2026-08-31 10:29:47,955.955 INFO    ] Checking for camera pi updates...
[2026-08-31 10:29:47,992.992 INFO    ] 200
[2026-08-31 10:29:47,995.995 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:29:48,040.040 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:29:48,120.120 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:29:48,122.122 INFO    ] No camera update needed
[2026-08-31 10:29:48,125.125 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:29:48,127.127 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:29:48,132.132 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:29:48,137.137 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:29:50,178.178 INFO    ] ================================================
[2026-08-31 10:29:50,194.194 INFO    ] Launching Daemon at Mon Aug 31 10:29:50 IST 2026
[2026-08-31 10:29:50,204.204 INFO    ] ================================================
[2026-08-31 10:29:50,837.837 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:29:50
[2026-08-31 10:29:51,515.515 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:29:51,820.820 INFO    ] Initializing speech engine...
[2026-08-31 10:29:51,834.834 INFO    ] 2026-08-31 10:29:51
[2026-08-31 10:29:52,105.105 INFO    ] 2026-08-31 10:29:52
[2026-08-31 10:29:52,160.160 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:29:52,587.587 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:29:52,635.635 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:29:52,927.927 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:29:52,992.992 INFO    ] time= 31/08/2026 10:29:52
[2026-08-31 10:29:53,039.039 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:29:53,081.081 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:29:53,212.212 INFO    ] No existing commands found in stream
[2026-08-31 10:29:58,226.226 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:29:58,229.229 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-08-31 10:30:00,980.980 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 10:30:00,983.983 INFO    ] Checking for system updates...
[2026-08-31 10:30:01,022.022 INFO    ] 200
[2026-08-31 10:30:01,025.025 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:30:01,076.076 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:30:01,078.078 INFO    ] No update needed
[2026-08-31 10:30:01,081.081 INFO    ] Checking for camera pi updates...
[2026-08-31 10:30:01,118.118 INFO    ] 200
[2026-08-31 10:30:01,121.121 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:30:01,161.161 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:30:01,247.247 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:30:01,250.250 INFO    ] No camera update needed
[2026-08-31 10:30:01,252.252 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:30:01,254.254 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:30:01,260.260 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:30:01,266.266 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:30:03,346.346 INFO    ] ================================================
[2026-08-31 10:30:03,367.367 INFO    ] Launching Daemon at Mon Aug 31 10:30:03 IST 2026
[2026-08-31 10:30:03,380.380 INFO    ] ================================================
[2026-08-31 10:30:03,991.991 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:30:03
[2026-08-31 10:30:04,574.574 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:30:04,836.836 INFO    ] Initializing speech engine...
[2026-08-31 10:30:04,861.861 INFO    ] 2026-08-31 10:30:04
[2026-08-31 10:30:05,133.133 INFO    ] 2026-08-31 10:30:05
[2026-08-31 10:30:05,167.167 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:30:05,366.366 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:30:05,379.379 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:30:05,546.546 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:30:05,554.554 INFO    ] time= 31/08/2026 10:30:05
[2026-08-31 10:30:05,601.601 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:30:05,630.630 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:30:05,722.722 INFO    ] No existing commands found in stream
[2026-08-31 10:30:10,752.752 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:30:10,755.755 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-08-31 10:30:11,368.368 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 10:30:11,371.371 INFO    ] Checking for system updates...
[2026-08-31 10:30:11,410.410 INFO    ] 200
[2026-08-31 10:30:11,413.413 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:30:11,465.465 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:30:11,467.467 INFO    ] No update needed
[2026-08-31 10:30:11,470.470 INFO    ] Checking for camera pi updates...
[2026-08-31 10:30:11,503.503 INFO    ] 200
[2026-08-31 10:30:11,505.505 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:30:11,551.551 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:30:11,640.640 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:30:11,642.642 INFO    ] No camera update needed
[2026-08-31 10:30:11,644.644 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:30:11,647.647 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:30:11,652.652 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:30:11,657.657 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:30:13,697.697 INFO    ] ================================================
[2026-08-31 10:30:13,712.712 INFO    ] Launching Daemon at Mon Aug 31 10:30:13 IST 2026
[2026-08-31 10:30:13,723.723 INFO    ] ================================================
[2026-08-31 10:30:14,380.380 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:30:14
[2026-08-31 10:30:15,055.055 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:30:15,360.360 INFO    ] Initializing speech engine...
[2026-08-31 10:30:15,374.374 INFO    ] 2026-08-31 10:30:15
[2026-08-31 10:30:15,645.645 INFO    ] 2026-08-31 10:30:15
[2026-08-31 10:30:15,700.700 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:30:15,927.927 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:30:15,933.933 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:30:16,187.187 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:30:16,204.204 INFO    ] time= 31/08/2026 10:30:16
[2026-08-31 10:30:16,215.215 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:30:16,242.242 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:30:16,358.358 INFO    ] No existing commands found in stream
[2026-08-31 10:30:21,389.389 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:30:21,394.394 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-08-31 10:30:23,976.976 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 10:30:23,980.980 INFO    ] Checking for system updates...
[2026-08-31 10:30:24,024.024 INFO    ] 200
[2026-08-31 10:30:24,027.027 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:30:24,100.100 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:30:24,104.104 INFO    ] No update needed
[2026-08-31 10:30:24,108.108 INFO    ] Checking for camera pi updates...
[2026-08-31 10:30:24,156.156 INFO    ] 200
[2026-08-31 10:30:24,160.160 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:30:24,208.208 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:30:24,292.292 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:30:24,295.295 INFO    ] No camera update needed
[2026-08-31 10:30:24,298.298 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:30:24,301.301 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:30:24,307.307 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:30:24,313.313 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:30:26,355.355 INFO    ] ================================================
[2026-08-31 10:30:26,371.371 INFO    ] Launching Daemon at Mon Aug 31 10:30:26 IST 2026
[2026-08-31 10:30:26,382.382 INFO    ] ================================================
[2026-08-31 10:30:26,986.986 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:30:26
[2026-08-31 10:30:27,614.614 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:30:27,912.912 INFO    ] Initializing speech engine...
[2026-08-31 10:30:27,923.923 INFO    ] 2026-08-31 10:30:27
[2026-08-31 10:30:28,184.184 INFO    ] 2026-08-31 10:30:28
[2026-08-31 10:30:28,222.222 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:30:28,445.445 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:30:28,488.488 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:30:28,712.712 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:30:28,765.765 INFO    ] time= 31/08/2026 10:30:28
[2026-08-31 10:30:28,772.772 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:30:28,790.790 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:30:28,901.901 INFO    ] No existing commands found in stream
[2026-08-31 10:30:33,932.932 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:30:33,934.934 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-08-31 10:30:36,313.313 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 10:30:36,315.315 INFO    ] Checking for system updates...
[2026-08-31 10:30:36,351.351 INFO    ] 200
[2026-08-31 10:30:36,353.353 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:30:36,407.407 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:30:36,410.410 INFO    ] No update needed
[2026-08-31 10:30:36,412.412 INFO    ] Checking for camera pi updates...
[2026-08-31 10:30:36,464.464 INFO    ] 200
[2026-08-31 10:30:36,467.467 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:30:36,507.507 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:30:36,588.588 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:30:36,590.590 INFO    ] No camera update needed
[2026-08-31 10:30:36,592.592 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:30:36,595.595 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:30:36,600.600 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:30:36,605.605 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:30:38,646.646 INFO    ] ================================================
[2026-08-31 10:30:38,661.661 INFO    ] Launching Daemon at Mon Aug 31 10:30:38 IST 2026
[2026-08-31 10:30:38,672.672 INFO    ] ================================================
[2026-08-31 10:30:39,236.236 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:30:39
[2026-08-31 10:30:39,820.820 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:30:40,074.074 INFO    ] Initializing speech engine...
[2026-08-31 10:30:40,081.081 INFO    ] 2026-08-31 10:30:40
[2026-08-31 10:30:40,378.378 INFO    ] 2026-08-31 10:30:40
[2026-08-31 10:30:40,414.414 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:30:40,615.615 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:30:40,631.631 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:30:40,759.759 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:30:40,779.779 INFO    ] time= 31/08/2026 10:30:40
[2026-08-31 10:30:40,799.799 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:30:40,810.810 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:30:40,892.892 INFO    ] No existing commands found in stream
[2026-08-31 10:30:45,922.922 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:30:45,925.925 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-08-31 10:30:46,660.660 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 10:30:46,662.662 INFO    ] Checking for system updates...
[2026-08-31 10:30:46,701.701 INFO    ] 200
[2026-08-31 10:30:46,704.704 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:30:46,763.763 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:30:46,765.765 INFO    ] No update needed
[2026-08-31 10:30:46,768.768 INFO    ] Checking for camera pi updates...
[2026-08-31 10:30:46,801.801 INFO    ] 200
[2026-08-31 10:30:46,803.803 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:30:46,844.844 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:30:46,932.932 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:30:46,935.935 INFO    ] No camera update needed
[2026-08-31 10:30:46,937.937 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:30:46,940.940 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:30:46,945.945 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:30:46,950.950 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:30:48,990.990 INFO    ] ================================================
[2026-08-31 10:30:49,005.005 INFO    ] Launching Daemon at Mon Aug 31 10:30:49 IST 2026
[2026-08-31 10:30:49,016.016 INFO    ] ================================================
[2026-08-31 10:30:49,597.597 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:30:49
[2026-08-31 10:30:50,195.195 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:30:50,473.473 INFO    ] Initializing speech engine...
[2026-08-31 10:30:50,479.479 INFO    ] 2026-08-31 10:30:50
[2026-08-31 10:30:50,727.727 INFO    ] 2026-08-31 10:30:50
[2026-08-31 10:30:50,762.762 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:30:51,016.016 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:30:51,022.022 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:30:51,207.207 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:30:51,257.257 INFO    ] time= 31/08/2026 10:30:51
[2026-08-31 10:30:51,285.285 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:30:51,291.291 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:30:51,411.411 INFO    ] No existing commands found in stream
[2026-08-31 10:30:56,442.442 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:30:56,445.445 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-08-31 10:30:59,452.452 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 10:30:59,454.454 INFO    ] Checking for system updates...
[2026-08-31 10:30:59,494.494 INFO    ] 200
[2026-08-31 10:30:59,496.496 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:30:59,554.554 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:30:59,557.557 INFO    ] No update needed
[2026-08-31 10:30:59,559.559 INFO    ] Checking for camera pi updates...
[2026-08-31 10:30:59,593.593 INFO    ] 200
[2026-08-31 10:30:59,595.595 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:30:59,636.636 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:30:59,721.721 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:30:59,724.724 INFO    ] No camera update needed
[2026-08-31 10:30:59,726.726 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:30:59,728.728 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:30:59,734.734 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:30:59,739.739 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:31:01,780.780 INFO    ] ================================================
[2026-08-31 10:31:01,795.795 INFO    ] Launching Daemon at Mon Aug 31 10:31:01 IST 2026
[2026-08-31 10:31:01,806.806 INFO    ] ================================================
[2026-08-31 10:31:02,494.494 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:31:02
[2026-08-31 10:31:03,138.138 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:31:03,471.471 INFO    ] Initializing speech engine...
[2026-08-31 10:31:03,482.482 INFO    ] 2026-08-31 10:31:03
[2026-08-31 10:31:03,792.792 INFO    ] 2026-08-31 10:31:03
[2026-08-31 10:31:03,852.852 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:31:04,085.085 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:31:04,094.094 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:31:04,230.230 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:31:04,290.290 INFO    ] time= 31/08/2026 10:31:04
[2026-08-31 10:31:04,355.355 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:31:04,365.365 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:31:04,531.531 INFO    ] No existing commands found in stream
[2026-08-31 10:31:09,557.557 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:31:09,560.560 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-08-31 10:31:12,125.125 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 10:31:12,129.129 INFO    ] Checking for system updates...
[2026-08-31 10:31:12,167.167 INFO    ] 200
[2026-08-31 10:31:12,170.170 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:31:12,226.226 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:31:12,229.229 INFO    ] No update needed
[2026-08-31 10:31:12,231.231 INFO    ] Checking for camera pi updates...
[2026-08-31 10:31:12,265.265 INFO    ] 200
[2026-08-31 10:31:12,267.267 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:31:12,312.312 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:31:12,399.399 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:31:12,401.401 INFO    ] No camera update needed
[2026-08-31 10:31:12,404.404 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:31:12,406.406 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:31:12,411.411 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:31:12,416.416 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:31:14,457.457 INFO    ] ================================================
[2026-08-31 10:31:14,473.473 INFO    ] Launching Daemon at Mon Aug 31 10:31:14 IST 2026
[2026-08-31 10:31:14,483.483 INFO    ] ================================================
[2026-08-31 10:31:15,106.106 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:31:15
[2026-08-31 10:31:15,746.746 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:31:16,040.040 INFO    ] Initializing speech engine...
[2026-08-31 10:31:16,046.046 INFO    ] 2026-08-31 10:31:16
[2026-08-31 10:31:16,316.316 INFO    ] 2026-08-31 10:31:16
[2026-08-31 10:31:16,375.375 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:31:16,606.606 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:31:16,616.616 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:31:16,801.801 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:31:16,861.861 INFO    ] time= 31/08/2026 10:31:16
[2026-08-31 10:31:16,890.890 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:31:16,908.908 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:31:17,033.033 INFO    ] No existing commands found in stream
[2026-08-31 10:31:22,050.050 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:31:22,053.053 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-08-31 10:31:24,737.737 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 10:31:24,740.740 INFO    ] Checking for system updates...
[2026-08-31 10:31:24,776.776 INFO    ] 200
[2026-08-31 10:31:24,779.779 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:31:24,836.836 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:31:24,839.839 INFO    ] No update needed
[2026-08-31 10:31:24,842.842 INFO    ] Checking for camera pi updates...
[2026-08-31 10:31:24,879.879 INFO    ] 200
[2026-08-31 10:31:24,881.881 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:31:24,926.926 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:31:25,010.010 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:31:25,012.012 INFO    ] No camera update needed
[2026-08-31 10:31:25,015.015 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:31:25,017.017 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:31:25,023.023 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:31:25,028.028 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:31:27,067.067 INFO    ] ================================================
[2026-08-31 10:31:27,082.082 INFO    ] Launching Daemon at Mon Aug 31 10:31:27 IST 2026
[2026-08-31 10:31:27,093.093 INFO    ] ================================================
[2026-08-31 10:31:27,736.736 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:31:27
[2026-08-31 10:31:28,398.398 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:31:28,701.701 INFO    ] Initializing speech engine...
[2026-08-31 10:31:28,706.706 INFO    ] 2026-08-31 10:31:28
[2026-08-31 10:31:28,980.980 INFO    ] 2026-08-31 10:31:28
[2026-08-31 10:31:29,016.016 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:31:29,269.269 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:31:29,278.278 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:31:29,504.504 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:31:29,545.545 INFO    ] time= 31/08/2026 10:31:29
[2026-08-31 10:31:29,552.552 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:31:29,574.574 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:31:29,726.726 INFO    ] No existing commands found in stream
[2026-08-31 10:31:34,757.757 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:31:34,760.760 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-08-31 10:31:35,488.488 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 10:31:35,491.491 INFO    ] Checking for system updates...
[2026-08-31 10:31:35,528.528 INFO    ] 200
[2026-08-31 10:31:35,531.531 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:31:35,584.584 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:31:35,587.587 INFO    ] No update needed
[2026-08-31 10:31:35,590.590 INFO    ] Checking for camera pi updates...
[2026-08-31 10:31:35,628.628 INFO    ] 200
[2026-08-31 10:31:35,631.631 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:31:35,672.672 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:31:35,760.760 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:31:35,762.762 INFO    ] No camera update needed
[2026-08-31 10:31:35,765.765 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:31:35,769.769 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:31:35,775.775 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:31:35,781.781 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:31:37,820.820 INFO    ] ================================================
[2026-08-31 10:31:37,835.835 INFO    ] Launching Daemon at Mon Aug 31 10:31:37 IST 2026
[2026-08-31 10:31:37,846.846 INFO    ] ================================================
[2026-08-31 10:31:38,489.489 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:31:38
[2026-08-31 10:31:39,155.155 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:31:39,461.461 INFO    ] Initializing speech engine...
[2026-08-31 10:31:39,472.472 INFO    ] 2026-08-31 10:31:39
[2026-08-31 10:31:39,736.736 INFO    ] 2026-08-31 10:31:39
[2026-08-31 10:31:39,799.799 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:31:39,979.979 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:31:40,028.028 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:31:40,180.180 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:31:40,235.235 INFO    ] time= 31/08/2026 10:31:40
[2026-08-31 10:31:40,299.299 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:31:40,313.313 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:31:40,455.455 INFO    ] No existing commands found in stream
[2026-08-31 10:31:45,470.470 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:31:45,473.473 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-08-31 10:31:48,930.930 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 10:31:48,932.932 INFO    ] Checking for system updates...
[2026-08-31 10:31:48,972.972 INFO    ] 200
[2026-08-31 10:31:48,974.974 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:31:49,034.034 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:31:49,037.037 INFO    ] No update needed
[2026-08-31 10:31:49,040.040 INFO    ] Checking for camera pi updates...
[2026-08-31 10:31:49,073.073 INFO    ] 200
[2026-08-31 10:31:49,076.076 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:31:49,115.115 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:31:49,212.212 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:31:49,214.214 INFO    ] No camera update needed
[2026-08-31 10:31:49,216.216 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:31:49,219.219 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:31:49,224.224 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:31:49,229.229 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:31:51,269.269 INFO    ] ================================================
[2026-08-31 10:31:51,284.284 INFO    ] Launching Daemon at Mon Aug 31 10:31:51 IST 2026
[2026-08-31 10:31:51,295.295 INFO    ] ================================================
[2026-08-31 10:31:51,941.941 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:31:51
[2026-08-31 10:31:52,526.526 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:31:52,781.781 INFO    ] Initializing speech engine...
[2026-08-31 10:31:52,798.798 INFO    ] 2026-08-31 10:31:52
[2026-08-31 10:31:53,085.085 INFO    ] 2026-08-31 10:31:53
[2026-08-31 10:31:53,123.123 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:31:53,321.321 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:31:53,336.336 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:31:53,502.502 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:31:53,507.507 INFO    ] time= 31/08/2026 10:31:53
[2026-08-31 10:31:53,514.514 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:31:53,536.536 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:31:53,659.659 INFO    ] No existing commands found in stream
[2026-08-31 10:31:58,684.684 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:31:58,686.686 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-08-31 10:32:01,736.736 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 10:32:01,739.739 INFO    ] Checking for system updates...
[2026-08-31 10:32:01,774.774 INFO    ] 200
[2026-08-31 10:32:01,776.776 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:32:01,829.829 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:32:01,832.832 INFO    ] No update needed
[2026-08-31 10:32:01,837.837 INFO    ] Checking for camera pi updates...
[2026-08-31 10:32:01,888.888 INFO    ] 200
[2026-08-31 10:32:01,890.890 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:32:01,930.930 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:32:01,982.982 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:32:01,984.984 INFO    ] No camera update needed
[2026-08-31 10:32:01,987.987 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:32:01,989.989 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:32:01,995.995 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:32:02,003.003 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:32:04,048.048 INFO    ] ================================================
[2026-08-31 10:32:04,063.063 INFO    ] Launching Daemon at Mon Aug 31 10:32:04 IST 2026
[2026-08-31 10:32:04,073.073 INFO    ] ================================================
[2026-08-31 10:32:04,697.697 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:32:04
[2026-08-31 10:32:05,340.340 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:32:05,607.607 INFO    ] Initializing speech engine...
[2026-08-31 10:32:05,616.616 INFO    ] 2026-08-31 10:32:05
[2026-08-31 10:32:05,894.894 INFO    ] 2026-08-31 10:32:05
[2026-08-31 10:32:05,931.931 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:32:06,198.198 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:32:06,208.208 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:32:06,359.359 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:32:06,414.414 INFO    ] time= 31/08/2026 10:32:06
[2026-08-31 10:32:06,470.470 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:32:06,496.496 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:32:06,597.597 INFO    ] No existing commands found in stream
[2026-08-31 10:32:11,631.631 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:32:11,634.634 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-08-31 10:32:12,377.377 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 10:32:12,380.380 INFO    ] Checking for system updates...
[2026-08-31 10:32:12,415.415 INFO    ] 200
[2026-08-31 10:32:12,418.418 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:32:12,469.469 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:32:12,472.472 INFO    ] No update needed
[2026-08-31 10:32:12,474.474 INFO    ] Checking for camera pi updates...
[2026-08-31 10:32:12,509.509 INFO    ] 200
[2026-08-31 10:32:12,512.512 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:32:12,552.552 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:32:12,634.634 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:32:12,636.636 INFO    ] No camera update needed
[2026-08-31 10:32:12,639.639 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:32:12,641.641 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:32:12,646.646 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:32:12,651.651 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:32:14,693.693 INFO    ] ================================================
[2026-08-31 10:32:14,713.713 INFO    ] Launching Daemon at Mon Aug 31 10:32:14 IST 2026
[2026-08-31 10:32:14,725.725 INFO    ] ================================================
[2026-08-31 10:32:15,289.289 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:32:15
[2026-08-31 10:32:15,884.884 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:32:16,188.188 INFO    ] Initializing speech engine...
[2026-08-31 10:32:16,196.196 INFO    ] 2026-08-31 10:32:16
[2026-08-31 10:32:16,461.461 INFO    ] 2026-08-31 10:32:16
[2026-08-31 10:32:16,516.516 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:32:16,739.739 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:32:16,748.748 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:32:16,883.883 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:32:16,943.943 INFO    ] time= 31/08/2026 10:32:16
[2026-08-31 10:32:16,998.998 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:32:17,017.017 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:32:17,163.163 INFO    ] No existing commands found in stream
[2026-08-31 10:32:22,176.176 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:32:22,180.180 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-08-31 10:32:23,852.852 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 10:32:23,855.855 INFO    ] Checking for system updates...
[2026-08-31 10:32:23,892.892 INFO    ] 200
[2026-08-31 10:32:23,894.894 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:32:23,953.953 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:32:23,956.956 INFO    ] No update needed
[2026-08-31 10:32:23,958.958 INFO    ] Checking for camera pi updates...
[2026-08-31 10:32:23,992.992 INFO    ] 200
[2026-08-31 10:32:23,995.995 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:32:24,035.035 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:32:24,127.127 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:32:24,131.131 INFO    ] No camera update needed
[2026-08-31 10:32:24,133.133 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:32:24,136.136 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:32:24,143.143 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:32:24,149.149 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:32:26,192.192 INFO    ] ================================================
[2026-08-31 10:32:26,206.206 INFO    ] Launching Daemon at Mon Aug 31 10:32:26 IST 2026
[2026-08-31 10:32:26,217.217 INFO    ] ================================================
[2026-08-31 10:32:26,795.795 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:32:26
[2026-08-31 10:32:27,391.391 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:32:27,664.664 INFO    ] Initializing speech engine...
[2026-08-31 10:32:27,673.673 INFO    ] 2026-08-31 10:32:27
[2026-08-31 10:32:27,920.920 INFO    ] 2026-08-31 10:32:27
[2026-08-31 10:32:27,963.963 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:32:28,206.206 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:32:28,215.215 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:32:28,416.416 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:32:28,470.470 INFO    ] time= 31/08/2026 10:32:28
[2026-08-31 10:32:28,479.479 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:32:28,497.497 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:32:28,629.629 INFO    ] No existing commands found in stream
[2026-08-31 10:32:33,651.651 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:32:33,654.654 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-08-31 10:32:35,291.291 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 10:32:35,294.294 INFO    ] Checking for system updates...
[2026-08-31 10:32:35,332.332 INFO    ] 200
[2026-08-31 10:32:35,334.334 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:32:35,386.386 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:32:35,389.389 INFO    ] No update needed
[2026-08-31 10:32:35,391.391 INFO    ] Checking for camera pi updates...
[2026-08-31 10:32:35,425.425 INFO    ] 200
[2026-08-31 10:32:35,428.428 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:32:35,468.468 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:32:35,567.567 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:32:35,570.570 INFO    ] No camera update needed
[2026-08-31 10:32:35,573.573 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:32:35,575.575 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:32:35,580.580 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:32:35,586.586 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:32:37,627.627 INFO    ] ================================================
[2026-08-31 10:32:37,642.642 INFO    ] Launching Daemon at Mon Aug 31 10:32:37 IST 2026
[2026-08-31 10:32:37,653.653 INFO    ] ================================================
[2026-08-31 10:32:38,220.220 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:32:38
[2026-08-31 10:32:38,803.803 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:32:39,063.063 INFO    ] Initializing speech engine...
[2026-08-31 10:32:39,082.082 INFO    ] 2026-08-31 10:32:39
[2026-08-31 10:32:39,333.333 INFO    ] 2026-08-31 10:32:39
[2026-08-31 10:32:39,368.368 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:32:39,631.631 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:32:39,636.636 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:32:39,773.773 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:32:39,828.828 INFO    ] time= 31/08/2026 10:32:39
[2026-08-31 10:32:39,877.877 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:32:39,910.910 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:32:40,049.049 INFO    ] No existing commands found in stream
[2026-08-31 10:32:45,070.070 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:32:45,073.073 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-08-31 10:32:47,185.185 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 10:32:47,188.188 INFO    ] Checking for system updates...
[2026-08-31 10:32:47,223.223 INFO    ] 200
[2026-08-31 10:32:47,225.225 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:32:47,282.282 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:32:47,284.284 INFO    ] No update needed
[2026-08-31 10:32:47,287.287 INFO    ] Checking for camera pi updates...
[2026-08-31 10:32:47,320.320 INFO    ] 200
[2026-08-31 10:32:47,322.322 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:32:47,366.366 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:32:47,452.452 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:32:47,454.454 INFO    ] No camera update needed
[2026-08-31 10:32:47,456.456 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:32:47,459.459 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:32:47,464.464 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:32:47,469.469 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:32:49,510.510 INFO    ] ================================================
[2026-08-31 10:32:49,524.524 INFO    ] Launching Daemon at Mon Aug 31 10:32:49 IST 2026
[2026-08-31 10:32:49,535.535 INFO    ] ================================================
[2026-08-31 10:32:50,168.168 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:32:50
[2026-08-31 10:32:50,822.822 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:32:51,123.123 INFO    ] Initializing speech engine...
[2026-08-31 10:32:51,138.138 INFO    ] 2026-08-31 10:32:51
[2026-08-31 10:32:51,406.406 INFO    ] 2026-08-31 10:32:51
[2026-08-31 10:32:51,462.462 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:32:51,721.721 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:32:51,726.726 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:32:51,931.931 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:32:51,968.968 INFO    ] time= 31/08/2026 10:32:51
[2026-08-31 10:32:51,974.974 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:32:51,991.991 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:32:52,114.114 INFO    ] No existing commands found in stream
[2026-08-31 10:32:57,140.140 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:32:57,143.143 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-08-31 10:33:00,137.137 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 10:33:00,140.140 INFO    ] Checking for system updates...
[2026-08-31 10:33:00,179.179 INFO    ] 200
[2026-08-31 10:33:00,182.182 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:33:00,239.239 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:33:00,242.242 INFO    ] No update needed
[2026-08-31 10:33:00,244.244 INFO    ] Checking for camera pi updates...
[2026-08-31 10:33:00,279.279 INFO    ] 200
[2026-08-31 10:33:00,282.282 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:33:00,322.322 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:33:00,405.405 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:33:00,408.408 INFO    ] No camera update needed
[2026-08-31 10:33:00,411.411 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:33:00,414.414 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:33:00,420.420 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:33:00,425.425 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:33:02,469.469 INFO    ] ================================================
[2026-08-31 10:33:02,492.492 INFO    ] Launching Daemon at Mon Aug 31 10:33:02 IST 2026
[2026-08-31 10:33:02,508.508 INFO    ] ================================================
[2026-08-31 10:33:03,146.146 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:33:03
[2026-08-31 10:33:03,827.827 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:33:04,126.126 INFO    ] Initializing speech engine...
[2026-08-31 10:33:04,134.134 INFO    ] 2026-08-31 10:33:04
[2026-08-31 10:33:04,405.405 INFO    ] 2026-08-31 10:33:04
[2026-08-31 10:33:04,462.462 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:33:04,683.683 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:33:04,693.693 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:33:04,819.819 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:33:04,822.822 INFO    ] time= 31/08/2026 10:33:04
[2026-08-31 10:33:04,839.839 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:33:04,893.893 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:33:05,018.018 INFO    ] No existing commands found in stream
[2026-08-31 10:33:10,030.030 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:33:10,034.034 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-08-31 10:33:13,007.007 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 10:33:13,010.010 INFO    ] Checking for system updates...
[2026-08-31 10:33:13,046.046 INFO    ] 200
[2026-08-31 10:33:13,049.049 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:33:13,107.107 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:33:13,110.110 INFO    ] No update needed
[2026-08-31 10:33:13,113.113 INFO    ] Checking for camera pi updates...
[2026-08-31 10:33:13,147.147 INFO    ] 200
[2026-08-31 10:33:13,150.150 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:33:13,195.195 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:33:13,375.375 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:33:13,378.378 INFO    ] No camera update needed
[2026-08-31 10:33:13,381.381 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:33:13,383.383 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:33:13,389.389 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:33:13,395.395 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:33:15,439.439 INFO    ] ================================================
[2026-08-31 10:33:15,455.455 INFO    ] Launching Daemon at Mon Aug 31 10:33:15 IST 2026
[2026-08-31 10:33:15,467.467 INFO    ] ================================================
[2026-08-31 10:33:16,131.131 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:33:16
[2026-08-31 10:33:16,749.749 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:33:17,027.027 INFO    ] Initializing speech engine...
[2026-08-31 10:33:17,036.036 INFO    ] 2026-08-31 10:33:17
[2026-08-31 10:33:17,301.301 INFO    ] 2026-08-31 10:33:17
[2026-08-31 10:33:17,356.356 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:33:17,581.581 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:33:17,588.588 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:33:17,812.812 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:33:17,847.847 INFO    ] time= 31/08/2026 10:33:17
[2026-08-31 10:33:17,854.854 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:33:17,874.874 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:33:17,978.978 INFO    ] No existing commands found in stream
[2026-08-31 10:33:23,008.008 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:33:23,011.011 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-08-31 10:33:24,866.866 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 10:33:24,869.869 INFO    ] Checking for system updates...
[2026-08-31 10:33:24,906.906 INFO    ] 200
[2026-08-31 10:33:24,909.909 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:33:24,965.965 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:33:24,968.968 INFO    ] No update needed
[2026-08-31 10:33:24,971.971 INFO    ] Checking for camera pi updates...
[2026-08-31 10:33:25,008.008 INFO    ] 200
[2026-08-31 10:33:25,011.011 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:33:25,056.056 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:33:25,162.162 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:33:25,165.165 INFO    ] No camera update needed
[2026-08-31 10:33:25,168.168 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:33:25,170.170 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:33:25,176.176 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:33:25,182.182 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:33:27,226.226 INFO    ] ================================================
[2026-08-31 10:33:27,240.240 INFO    ] Launching Daemon at Mon Aug 31 10:33:27 IST 2026
[2026-08-31 10:33:27,251.251 INFO    ] ================================================
[2026-08-31 10:33:27,816.816 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:33:27
[2026-08-31 10:33:28,397.397 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:33:28,676.676 INFO    ] Initializing speech engine...
[2026-08-31 10:33:28,685.685 INFO    ] 2026-08-31 10:33:28
[2026-08-31 10:33:28,949.949 INFO    ] 2026-08-31 10:33:28
[2026-08-31 10:33:28,984.984 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:33:29,208.208 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:33:29,273.273 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:33:29,429.429 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:33:29,451.451 INFO    ] time= 31/08/2026 10:33:29
[2026-08-31 10:33:29,501.501 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:33:29,550.550 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:33:29,641.641 INFO    ] No existing commands found in stream
[2026-08-31 10:33:34,651.651 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:33:34,654.654 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-08-31 10:33:38,132.132 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 10:33:38,134.134 INFO    ] Checking for system updates...
[2026-08-31 10:33:38,169.169 INFO    ] 200
[2026-08-31 10:33:38,172.172 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:33:38,224.224 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:33:38,226.226 INFO    ] No update needed
[2026-08-31 10:33:38,229.229 INFO    ] Checking for camera pi updates...
[2026-08-31 10:33:38,262.262 INFO    ] 200
[2026-08-31 10:33:38,264.264 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:33:38,309.309 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:33:38,381.381 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:33:38,383.383 INFO    ] No camera update needed
[2026-08-31 10:33:38,386.386 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:33:38,388.388 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:33:38,393.393 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:33:38,398.398 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:33:40,438.438 INFO    ] ================================================
[2026-08-31 10:33:40,454.454 INFO    ] Launching Daemon at Mon Aug 31 10:33:40 IST 2026
[2026-08-31 10:33:40,464.464 INFO    ] ================================================
[2026-08-31 10:33:41,045.045 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:33:41
[2026-08-31 10:33:41,642.642 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:33:41,918.918 INFO    ] Initializing speech engine...
[2026-08-31 10:33:41,923.923 INFO    ] 2026-08-31 10:33:41
[2026-08-31 10:33:42,185.185 INFO    ] 2026-08-31 10:33:42
[2026-08-31 10:33:42,239.239 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:33:42,470.470 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:33:42,475.475 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:33:42,708.708 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:33:42,742.742 INFO    ] time= 31/08/2026 10:33:42
[2026-08-31 10:33:42,759.759 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:33:42,767.767 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:33:42,893.893 INFO    ] No existing commands found in stream
[2026-08-31 10:33:47,907.907 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:33:47,911.911 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-08-31 10:33:49,526.526 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 10:33:49,529.529 INFO    ] Checking for system updates...
[2026-08-31 10:33:49,569.569 INFO    ] 200
[2026-08-31 10:33:49,572.572 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:33:49,630.630 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:33:49,632.632 INFO    ] No update needed
[2026-08-31 10:33:49,635.635 INFO    ] Checking for camera pi updates...
[2026-08-31 10:33:49,673.673 INFO    ] 200
[2026-08-31 10:33:49,676.676 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:33:49,717.717 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:33:49,789.789 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:33:49,791.791 INFO    ] No camera update needed
[2026-08-31 10:33:49,794.794 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:33:49,796.796 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:33:49,803.803 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:33:49,808.808 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:33:51,850.850 INFO    ] ================================================
[2026-08-31 10:33:51,865.865 INFO    ] Launching Daemon at Mon Aug 31 10:33:51 IST 2026
[2026-08-31 10:33:51,876.876 INFO    ] ================================================
[2026-08-31 10:33:52,454.454 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:33:52
[2026-08-31 10:33:53,051.051 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:33:53,324.324 INFO    ] Initializing speech engine...
[2026-08-31 10:33:53,335.335 INFO    ] 2026-08-31 10:33:53
[2026-08-31 10:33:53,582.582 INFO    ] 2026-08-31 10:33:53
[2026-08-31 10:33:53,618.618 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:33:53,869.869 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:33:53,878.878 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:33:54,011.011 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:33:54,081.081 INFO    ] time= 31/08/2026 10:33:54
[2026-08-31 10:33:54,136.136 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:33:54,145.145 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:33:54,292.292 INFO    ] No existing commands found in stream
[2026-08-31 10:33:59,314.314 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:33:59,317.317 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-08-31 10:34:03,342.342 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 10:34:03,347.347 INFO    ] Checking for system updates...
[2026-08-31 10:34:03,391.391 INFO    ] 200
[2026-08-31 10:34:03,394.394 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:34:03,455.455 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:34:03,458.458 INFO    ] No update needed
[2026-08-31 10:34:03,461.461 INFO    ] Checking for camera pi updates...
[2026-08-31 10:34:03,496.496 INFO    ] 200
[2026-08-31 10:34:03,505.505 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:34:03,560.560 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:34:03,646.646 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:34:03,649.649 INFO    ] No camera update needed
[2026-08-31 10:34:03,651.651 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:34:03,653.653 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:34:03,659.659 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:34:03,664.664 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:34:05,705.705 INFO    ] ================================================
[2026-08-31 10:34:05,720.720 INFO    ] Launching Daemon at Mon Aug 31 10:34:05 IST 2026
[2026-08-31 10:34:05,731.731 INFO    ] ================================================
[2026-08-31 10:34:06,314.314 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:34:06
[2026-08-31 10:34:06,934.934 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:34:07,188.188 INFO    ] Initializing speech engine...
[2026-08-31 10:34:07,195.195 INFO    ] 2026-08-31 10:34:07
[2026-08-31 10:34:07,497.497 INFO    ] 2026-08-31 10:34:07
[2026-08-31 10:34:07,535.535 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:34:07,730.730 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:34:07,744.744 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:34:07,906.906 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:34:07,914.914 INFO    ] time= 31/08/2026 10:34:07
[2026-08-31 10:34:07,922.922 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:34:07,935.935 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:34:08,109.109 INFO    ] No existing commands found in stream
[2026-08-31 10:34:13,140.140 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:34:13,142.142 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-08-31 10:34:15,655.655 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 10:34:15,658.658 INFO    ] Checking for system updates...
[2026-08-31 10:34:15,696.696 INFO    ] 200
[2026-08-31 10:34:15,699.699 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:34:15,752.752 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:34:15,755.755 INFO    ] No update needed
[2026-08-31 10:34:15,757.757 INFO    ] Checking for camera pi updates...
[2026-08-31 10:34:15,795.795 INFO    ] 200
[2026-08-31 10:34:15,798.798 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:34:15,838.838 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:34:15,915.915 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:34:15,918.918 INFO    ] No camera update needed
[2026-08-31 10:34:15,920.920 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:34:15,923.923 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:34:15,928.928 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:34:15,933.933 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:34:17,973.973 INFO    ] ================================================
[2026-08-31 10:34:17,988.988 INFO    ] Launching Daemon at Mon Aug 31 10:34:17 IST 2026
[2026-08-31 10:34:18,999.999 INFO    ] ================================================
[2026-08-31 10:34:18,638.638 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:34:18
[2026-08-31 10:34:19,293.293 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:34:19,588.588 INFO    ] Initializing speech engine...
[2026-08-31 10:34:19,597.597 INFO    ] 2026-08-31 10:34:19
[2026-08-31 10:34:19,881.881 INFO    ] 2026-08-31 10:34:19
[2026-08-31 10:34:19,926.926 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:34:20,175.175 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:34:20,194.194 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:34:20,410.410 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:34:20,429.429 INFO    ] time= 31/08/2026 10:34:20
[2026-08-31 10:34:20,438.438 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:34:20,466.466 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:34:20,571.571 INFO    ] No existing commands found in stream
[2026-08-31 10:34:25,591.591 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:34:25,594.594 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-08-31 10:34:26,332.332 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 10:34:26,335.335 INFO    ] Checking for system updates...
[2026-08-31 10:34:26,371.371 INFO    ] 200
[2026-08-31 10:34:26,374.374 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:34:26,427.427 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:34:26,430.430 INFO    ] No update needed
[2026-08-31 10:34:26,432.432 INFO    ] Checking for camera pi updates...
[2026-08-31 10:34:26,468.468 INFO    ] 200
[2026-08-31 10:34:26,470.470 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:34:26,513.513 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:34:26,595.595 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:34:26,598.598 INFO    ] No camera update needed
[2026-08-31 10:34:26,601.601 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:34:26,603.603 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:34:26,610.610 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:34:26,617.617 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:34:28,658.658 INFO    ] ================================================
[2026-08-31 10:34:28,673.673 INFO    ] Launching Daemon at Mon Aug 31 10:34:28 IST 2026
[2026-08-31 10:34:28,684.684 INFO    ] ================================================
[2026-08-31 10:34:29,251.251 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:34:29
[2026-08-31 10:34:29,835.835 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:34:30,105.105 INFO    ] Initializing speech engine...
[2026-08-31 10:34:30,120.120 INFO    ] 2026-08-31 10:34:30
[2026-08-31 10:34:30,395.395 INFO    ] 2026-08-31 10:34:30
[2026-08-31 10:34:30,430.430 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:34:30,651.651 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:34:30,660.660 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:34:30,854.854 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:34:30,881.881 INFO    ] time= 31/08/2026 10:34:30
[2026-08-31 10:34:30,898.898 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:34:30,952.952 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:34:31,054.054 INFO    ] No existing commands found in stream
[2026-08-31 10:34:36,064.064 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:34:36,067.067 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-08-31 10:34:40,269.269 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 10:34:40,272.272 INFO    ] Checking for system updates...
[2026-08-31 10:34:40,307.307 INFO    ] 200
[2026-08-31 10:34:40,309.309 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:34:40,361.361 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:34:40,363.363 INFO    ] No update needed
[2026-08-31 10:34:40,366.366 INFO    ] Checking for camera pi updates...
[2026-08-31 10:34:40,399.399 INFO    ] 200
[2026-08-31 10:34:40,402.402 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:34:40,445.445 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:34:40,526.526 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:34:40,528.528 INFO    ] No camera update needed
[2026-08-31 10:34:40,531.531 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:34:40,533.533 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:34:40,538.538 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:34:40,543.543 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:34:42,585.585 INFO    ] ================================================
[2026-08-31 10:34:42,600.600 INFO    ] Launching Daemon at Mon Aug 31 10:34:42 IST 2026
[2026-08-31 10:34:42,611.611 INFO    ] ================================================
[2026-08-31 10:34:43,193.193 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:34:43
[2026-08-31 10:34:43,791.791 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:34:44,063.063 INFO    ] Initializing speech engine...
[2026-08-31 10:34:44,072.072 INFO    ] 2026-08-31 10:34:44
[2026-08-31 10:34:44,329.329 INFO    ] 2026-08-31 10:34:44
[2026-08-31 10:34:44,388.388 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:34:44,613.613 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:34:44,620.620 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:34:44,838.838 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:34:44,875.875 INFO    ] time= 31/08/2026 10:34:44
[2026-08-31 10:34:44,881.881 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:34:44,901.901 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:34:45,030.030 INFO    ] No existing commands found in stream
[2026-08-31 10:34:50,052.052 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:34:50,055.055 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-08-31 10:34:53,180.180 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 10:34:53,183.183 INFO    ] Checking for system updates...
[2026-08-31 10:34:53,219.219 INFO    ] 200
[2026-08-31 10:34:53,221.221 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:34:53,280.280 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:34:53,283.283 INFO    ] No update needed
[2026-08-31 10:34:53,285.285 INFO    ] Checking for camera pi updates...
[2026-08-31 10:34:53,319.319 INFO    ] 200
[2026-08-31 10:34:53,322.322 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:34:53,369.369 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:34:53,443.443 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:34:53,445.445 INFO    ] No camera update needed
[2026-08-31 10:34:53,448.448 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:34:53,451.451 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:34:53,457.457 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:34:53,463.463 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:34:55,503.503 INFO    ] ================================================
[2026-08-31 10:34:55,519.519 INFO    ] Launching Daemon at Mon Aug 31 10:34:55 IST 2026
[2026-08-31 10:34:55,529.529 INFO    ] ================================================
[2026-08-31 10:34:56,148.148 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:34:56
[2026-08-31 10:34:56,769.769 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:34:57,072.072 INFO    ] Initializing speech engine...
[2026-08-31 10:34:57,081.081 INFO    ] 2026-08-31 10:34:57
[2026-08-31 10:34:57,398.398 INFO    ] 2026-08-31 10:34:57
[2026-08-31 10:34:57,484.484 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:34:57,679.679 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:34:57,682.682 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:34:57,894.894 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:34:57,923.923 INFO    ] time= 31/08/2026 10:34:57
[2026-08-31 10:34:57,929.929 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:34:57,948.948 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:34:58,068.068 INFO    ] No existing commands found in stream
[2026-08-31 10:35:03,090.090 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:35:03,094.094 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-08-31 10:35:07,389.389 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 10:35:07,392.392 INFO    ] Checking for system updates...
[2026-08-31 10:35:07,429.429 INFO    ] 200
[2026-08-31 10:35:07,432.432 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:35:07,484.484 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:35:07,487.487 INFO    ] No update needed
[2026-08-31 10:35:07,490.490 INFO    ] Checking for camera pi updates...
[2026-08-31 10:35:07,526.526 INFO    ] 200
[2026-08-31 10:35:07,528.528 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:35:07,570.570 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:35:07,640.640 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:35:07,643.643 INFO    ] No camera update needed
[2026-08-31 10:35:07,645.645 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:35:07,648.648 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:35:07,654.654 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:35:07,660.660 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:35:09,702.702 INFO    ] ================================================
[2026-08-31 10:35:09,717.717 INFO    ] Launching Daemon at Mon Aug 31 10:35:09 IST 2026
[2026-08-31 10:35:09,728.728 INFO    ] ================================================
[2026-08-31 10:35:10,398.398 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:35:10
[2026-08-31 10:35:11,071.071 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:35:11,382.382 INFO    ] Initializing speech engine...
[2026-08-31 10:35:11,390.390 INFO    ] 2026-08-31 10:35:11
[2026-08-31 10:35:11,715.715 INFO    ] 2026-08-31 10:35:11
[2026-08-31 10:35:11,805.805 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:35:12,024.024 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:35:12,030.030 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:35:12,217.217 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:35:12,238.238 INFO    ] time= 31/08/2026 10:35:12
[2026-08-31 10:35:12,256.256 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:35:12,265.265 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:35:12,400.400 INFO    ] No existing commands found in stream
[2026-08-31 10:35:17,425.425 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:35:17,428.428 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-08-31 10:35:18,172.172 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 10:35:18,175.175 INFO    ] Checking for system updates...
[2026-08-31 10:35:18,212.212 INFO    ] 200
[2026-08-31 10:35:18,215.215 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:35:18,276.276 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:35:18,279.279 INFO    ] No update needed
[2026-08-31 10:35:18,282.282 INFO    ] Checking for camera pi updates...
[2026-08-31 10:35:18,316.316 INFO    ] 200
[2026-08-31 10:35:18,319.319 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:35:18,370.370 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:35:18,552.552 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:35:18,555.555 INFO    ] No camera update needed
[2026-08-31 10:35:18,557.557 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:35:18,560.560 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:35:18,565.565 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:35:18,571.571 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:35:20,611.611 INFO    ] ================================================
[2026-08-31 10:35:20,627.627 INFO    ] Launching Daemon at Mon Aug 31 10:35:20 IST 2026
[2026-08-31 10:35:20,638.638 INFO    ] ================================================
[2026-08-31 10:35:21,291.291 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:35:21
[2026-08-31 10:35:21,964.964 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:35:22,265.265 INFO    ] Initializing speech engine...
[2026-08-31 10:35:22,274.274 INFO    ] 2026-08-31 10:35:22
[2026-08-31 10:35:22,587.587 INFO    ] 2026-08-31 10:35:22
[2026-08-31 10:35:22,675.675 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:35:22,891.891 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:35:22,901.901 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:35:23,094.094 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:35:23,111.111 INFO    ] time= 31/08/2026 10:35:23
[2026-08-31 10:35:23,131.131 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:35:23,150.150 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:35:23,289.289 INFO    ] No existing commands found in stream
[2026-08-31 10:35:28,320.320 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:35:28,323.323 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-08-31 10:35:30,168.168 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 10:35:30,172.172 INFO    ] Checking for system updates...
[2026-08-31 10:35:30,208.208 INFO    ] 200
[2026-08-31 10:35:30,211.211 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:35:30,265.265 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:35:30,268.268 INFO    ] No update needed
[2026-08-31 10:35:30,271.271 INFO    ] Checking for camera pi updates...
[2026-08-31 10:35:30,306.306 INFO    ] 200
[2026-08-31 10:35:30,309.309 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:35:30,350.350 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:35:30,429.429 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:35:30,432.432 INFO    ] No camera update needed
[2026-08-31 10:35:30,434.434 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:35:30,436.436 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:35:30,442.442 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:35:30,447.447 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:35:32,489.489 INFO    ] ================================================
[2026-08-31 10:35:32,507.507 INFO    ] Launching Daemon at Mon Aug 31 10:35:32 IST 2026
[2026-08-31 10:35:32,519.519 INFO    ] ================================================
[2026-08-31 10:35:33,168.168 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:35:33
[2026-08-31 10:35:33,776.776 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:35:34,046.046 INFO    ] Initializing speech engine...
[2026-08-31 10:35:34,056.056 INFO    ] 2026-08-31 10:35:34
[2026-08-31 10:35:34,307.307 INFO    ] 2026-08-31 10:35:34
[2026-08-31 10:35:34,343.343 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:35:34,600.600 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:35:34,610.610 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:35:34,745.745 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:35:34,782.782 INFO    ] time= 31/08/2026 10:35:34
[2026-08-31 10:35:34,841.841 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:35:34,882.882 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:35:35,013.013 INFO    ] No existing commands found in stream
[2026-08-31 10:35:40,041.041 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:35:40,043.043 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-08-31 10:35:41,822.822 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 10:35:41,825.825 INFO    ] Checking for system updates...
[2026-08-31 10:35:41,861.861 INFO    ] 200
[2026-08-31 10:35:41,863.863 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:35:41,915.915 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:35:41,917.917 INFO    ] No update needed
[2026-08-31 10:35:41,920.920 INFO    ] Checking for camera pi updates...
[2026-08-31 10:35:41,953.953 INFO    ] 200
[2026-08-31 10:35:41,955.955 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:35:41,995.995 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:35:42,080.080 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:35:42,083.083 INFO    ] No camera update needed
[2026-08-31 10:35:42,085.085 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:35:42,088.088 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:35:42,093.093 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:35:42,098.098 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:35:44,139.139 INFO    ] ================================================
[2026-08-31 10:35:44,155.155 INFO    ] Launching Daemon at Mon Aug 31 10:35:44 IST 2026
[2026-08-31 10:35:44,166.166 INFO    ] ================================================
[2026-08-31 10:35:44,840.840 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:35:44
[2026-08-31 10:35:45,467.467 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:35:45,782.782 INFO    ] Initializing speech engine...
[2026-08-31 10:35:45,794.794 INFO    ] 2026-08-31 10:35:45
[2026-08-31 10:35:46,107.107 INFO    ] 2026-08-31 10:35:46
[2026-08-31 10:35:46,193.193 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:35:46,412.412 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:35:46,421.421 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:35:46,614.614 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:35:46,634.634 INFO    ] time= 31/08/2026 10:35:46
[2026-08-31 10:35:46,643.643 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:35:46,670.670 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:35:46,779.779 INFO    ] No existing commands found in stream
[2026-08-31 10:35:51,803.803 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:35:51,806.806 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-08-31 10:35:53,706.706 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 10:35:53,709.709 INFO    ] Checking for system updates...
[2026-08-31 10:35:53,751.751 INFO    ] 200
[2026-08-31 10:35:53,754.754 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:35:53,816.816 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:35:53,819.819 INFO    ] No update needed
[2026-08-31 10:35:53,822.822 INFO    ] Checking for camera pi updates...
[2026-08-31 10:35:53,857.857 INFO    ] 200
[2026-08-31 10:35:53,860.860 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:35:53,901.901 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:35:54,003.003 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:35:54,006.006 INFO    ] No camera update needed
[2026-08-31 10:35:54,009.009 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:35:54,012.012 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:35:54,018.018 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:35:54,024.024 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:35:56,066.066 INFO    ] ================================================
[2026-08-31 10:35:56,081.081 INFO    ] Launching Daemon at Mon Aug 31 10:35:56 IST 2026
[2026-08-31 10:35:56,092.092 INFO    ] ================================================
[2026-08-31 10:35:56,681.681 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:35:56
[2026-08-31 10:35:57,284.284 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:35:57,566.566 INFO    ] Initializing speech engine...
[2026-08-31 10:35:57,571.571 INFO    ] 2026-08-31 10:35:57
[2026-08-31 10:35:57,834.834 INFO    ] 2026-08-31 10:35:57
[2026-08-31 10:35:57,865.865 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:35:58,114.114 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:35:58,119.119 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:35:58,332.332 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:35:58,379.379 INFO    ] time= 31/08/2026 10:35:58
[2026-08-31 10:35:58,385.385 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:35:58,402.402 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:35:58,534.534 INFO    ] No existing commands found in stream
[2026-08-31 10:36:03,549.549 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:36:03,552.552 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-08-31 10:36:07,943.943 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 10:36:07,945.945 INFO    ] Checking for system updates...
[2026-08-31 10:36:07,981.981 INFO    ] 200
[2026-08-31 10:36:07,984.984 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:36:08,037.037 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:36:08,040.040 INFO    ] No update needed
[2026-08-31 10:36:08,042.042 INFO    ] Checking for camera pi updates...
[2026-08-31 10:36:08,084.084 INFO    ] 200
[2026-08-31 10:36:08,087.087 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:36:08,128.128 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:36:08,213.213 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:36:08,215.215 INFO    ] No camera update needed
[2026-08-31 10:36:08,218.218 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:36:08,220.220 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:36:08,226.226 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:36:08,231.231 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:36:10,273.273 INFO    ] ================================================
[2026-08-31 10:36:10,288.288 INFO    ] Launching Daemon at Mon Aug 31 10:36:10 IST 2026
[2026-08-31 10:36:10,299.299 INFO    ] ================================================
[2026-08-31 10:36:10,958.958 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:36:10
[2026-08-31 10:36:11,636.636 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:36:11,946.946 INFO    ] Initializing speech engine...
[2026-08-31 10:36:11,953.953 INFO    ] 2026-08-31 10:36:11
[2026-08-31 10:36:12,242.242 INFO    ] 2026-08-31 10:36:12
[2026-08-31 10:36:12,290.290 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:36:12,522.522 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:36:12,543.543 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:36:12,740.740 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:36:12,790.790 INFO    ] time= 31/08/2026 10:36:12
[2026-08-31 10:36:12,797.797 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:36:12,816.816 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:36:12,953.953 INFO    ] No existing commands found in stream
[2026-08-31 10:36:17,966.966 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:36:17,969.969 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-08-31 10:36:21,096.096 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 10:36:21,099.099 INFO    ] Checking for system updates...
[2026-08-31 10:36:21,136.136 INFO    ] 200
[2026-08-31 10:36:21,139.139 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:36:21,191.191 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:36:21,193.193 INFO    ] No update needed
[2026-08-31 10:36:21,196.196 INFO    ] Checking for camera pi updates...
[2026-08-31 10:36:21,229.229 INFO    ] 200
[2026-08-31 10:36:21,232.232 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:36:21,271.271 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:36:21,358.358 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:36:21,360.360 INFO    ] No camera update needed
[2026-08-31 10:36:21,363.363 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:36:21,366.366 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:36:21,371.371 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:36:21,376.376 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:36:23,417.417 INFO    ] ================================================
[2026-08-31 10:36:23,432.432 INFO    ] Launching Daemon at Mon Aug 31 10:36:23 IST 2026
[2026-08-31 10:36:23,444.444 INFO    ] ================================================
[2026-08-31 10:36:24,060.060 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:36:24
[2026-08-31 10:36:24,660.660 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:36:24,924.924 INFO    ] Initializing speech engine...
[2026-08-31 10:36:24,942.942 INFO    ] 2026-08-31 10:36:24
[2026-08-31 10:36:25,193.193 INFO    ] 2026-08-31 10:36:25
[2026-08-31 10:36:25,260.260 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:36:25,545.545 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:36:25,551.551 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:36:25,744.744 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:36:25,751.751 INFO    ] time= 31/08/2026 10:36:25
[2026-08-31 10:36:25,768.768 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:36:25,786.786 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:36:25,901.901 INFO    ] No existing commands found in stream
[2026-08-31 10:36:30,914.914 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:36:30,917.917 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-08-31 10:36:33,086.086 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 10:36:33,089.089 INFO    ] Checking for system updates...
[2026-08-31 10:36:33,125.125 INFO    ] 200
[2026-08-31 10:36:33,127.127 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:36:33,180.180 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:36:33,182.182 INFO    ] No update needed
[2026-08-31 10:36:33,184.184 INFO    ] Checking for camera pi updates...
[2026-08-31 10:36:33,218.218 INFO    ] 200
[2026-08-31 10:36:33,221.221 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:36:33,266.266 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:36:33,360.360 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:36:33,363.363 INFO    ] No camera update needed
[2026-08-31 10:36:33,365.365 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:36:33,368.368 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:36:33,373.373 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:36:33,378.378 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:36:35,418.418 INFO    ] ================================================
[2026-08-31 10:36:35,434.434 INFO    ] Launching Daemon at Mon Aug 31 10:36:35 IST 2026
[2026-08-31 10:36:35,445.445 INFO    ] ================================================
[2026-08-31 10:36:36,016.016 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:36:36
[2026-08-31 10:36:36,597.597 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:36:36,848.848 INFO    ] Initializing speech engine...
[2026-08-31 10:36:36,856.856 INFO    ] 2026-08-31 10:36:36
[2026-08-31 10:36:37,150.150 INFO    ] 2026-08-31 10:36:37
[2026-08-31 10:36:37,187.187 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:36:37,383.383 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:36:37,397.397 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:36:37,560.560 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:36:37,569.569 INFO    ] time= 31/08/2026 10:36:37
[2026-08-31 10:36:37,577.577 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:36:37,609.609 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:36:37,725.725 INFO    ] No existing commands found in stream
[2026-08-31 10:36:42,750.750 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:36:42,753.753 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-08-31 10:36:46,537.537 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 10:36:46,540.540 INFO    ] Checking for system updates...
[2026-08-31 10:36:46,580.580 INFO    ] 200
[2026-08-31 10:36:46,583.583 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:36:46,636.636 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:36:46,639.639 INFO    ] No update needed
[2026-08-31 10:36:46,641.641 INFO    ] Checking for camera pi updates...
[2026-08-31 10:36:46,678.678 INFO    ] 200
[2026-08-31 10:36:46,681.681 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:36:46,725.725 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:36:46,809.809 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:36:46,811.811 INFO    ] No camera update needed
[2026-08-31 10:36:46,813.813 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:36:46,815.815 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:36:46,821.821 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:36:46,826.826 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:36:48,866.866 INFO    ] ================================================
[2026-08-31 10:36:48,882.882 INFO    ] Launching Daemon at Mon Aug 31 10:36:48 IST 2026
[2026-08-31 10:36:48,893.893 INFO    ] ================================================
[2026-08-31 10:36:49,528.528 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:36:49
[2026-08-31 10:36:50,116.116 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:36:50,390.390 INFO    ] Initializing speech engine...
[2026-08-31 10:36:50,399.399 INFO    ] 2026-08-31 10:36:50
[2026-08-31 10:36:50,661.661 INFO    ] 2026-08-31 10:36:50
[2026-08-31 10:36:50,715.715 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:36:50,941.941 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:36:50,947.947 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:36:51,175.175 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:36:51,205.205 INFO    ] time= 31/08/2026 10:36:51
[2026-08-31 10:36:51,211.211 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:36:51,229.229 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:36:51,344.344 INFO    ] No existing commands found in stream
[2026-08-31 10:36:56,368.368 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:36:56,371.371 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-08-31 10:37:00,182.182 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 10:37:00,184.184 INFO    ] Checking for system updates...
[2026-08-31 10:37:00,221.221 INFO    ] 200
[2026-08-31 10:37:00,224.224 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:37:00,277.277 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:37:00,280.280 INFO    ] No update needed
[2026-08-31 10:37:00,283.283 INFO    ] Checking for camera pi updates...
[2026-08-31 10:37:00,317.317 INFO    ] 200
[2026-08-31 10:37:00,320.320 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:37:00,366.366 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:37:00,444.444 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:37:00,446.446 INFO    ] No camera update needed
[2026-08-31 10:37:00,449.449 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:37:00,451.451 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:37:00,457.457 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:37:00,462.462 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:37:02,505.505 INFO    ] ================================================
[2026-08-31 10:37:02,525.525 INFO    ] Launching Daemon at Mon Aug 31 10:37:02 IST 2026
[2026-08-31 10:37:02,541.541 INFO    ] ================================================
[2026-08-31 10:37:03,194.194 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:37:03
[2026-08-31 10:37:03,850.850 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:37:04,130.130 INFO    ] Initializing speech engine...
[2026-08-31 10:37:04,141.141 INFO    ] 2026-08-31 10:37:04
[2026-08-31 10:37:04,415.415 INFO    ] 2026-08-31 10:37:04
[2026-08-31 10:37:04,471.471 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:37:04,719.719 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:37:04,725.725 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:37:04,860.860 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:37:04,902.902 INFO    ] time= 31/08/2026 10:37:04
[2026-08-31 10:37:04,962.962 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:37:04,999.999 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:37:05,136.136 INFO    ] No existing commands found in stream
[2026-08-31 10:37:10,169.169 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:37:10,172.172 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-08-31 10:37:11,807.807 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 10:37:11,810.810 INFO    ] Checking for system updates...
[2026-08-31 10:37:11,852.852 INFO    ] 200
[2026-08-31 10:37:11,854.854 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:37:11,912.912 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:37:11,915.915 INFO    ] No update needed
[2026-08-31 10:37:11,918.918 INFO    ] Checking for camera pi updates...
[2026-08-31 10:37:11,957.957 INFO    ] 200
[2026-08-31 10:37:11,960.960 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:37:12,006.006 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:37:12,062.062 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:37:12,064.064 INFO    ] No camera update needed
[2026-08-31 10:37:12,067.067 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:37:12,070.070 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:37:12,076.076 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:37:12,082.082 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:37:14,123.123 INFO    ] ================================================
[2026-08-31 10:37:14,139.139 INFO    ] Launching Daemon at Mon Aug 31 10:37:14 IST 2026
[2026-08-31 10:37:14,150.150 INFO    ] ================================================
[2026-08-31 10:37:14,802.802 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:37:14
[2026-08-31 10:37:15,476.476 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:37:15,783.783 INFO    ] Initializing speech engine...
[2026-08-31 10:37:15,795.795 INFO    ] 2026-08-31 10:37:15
[2026-08-31 10:37:16,081.081 INFO    ] 2026-08-31 10:37:16
[2026-08-31 10:37:16,191.191 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:37:16,405.405 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:37:16,414.414 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:37:16,605.605 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:37:16,612.612 INFO    ] time= 31/08/2026 10:37:16
[2026-08-31 10:37:16,633.633 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:37:16,661.661 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:37:16,778.778 INFO    ] No existing commands found in stream
[2026-08-31 10:37:21,808.808 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:37:21,811.811 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-08-31 10:37:25,413.413 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 10:37:25,417.417 INFO    ] Checking for system updates...
[2026-08-31 10:37:25,458.458 INFO    ] 200
[2026-08-31 10:37:25,460.460 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:37:25,518.518 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:37:25,521.521 INFO    ] No update needed
[2026-08-31 10:37:25,524.524 INFO    ] Checking for camera pi updates...
[2026-08-31 10:37:25,559.559 INFO    ] 200
[2026-08-31 10:37:25,562.562 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:37:25,603.603 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:37:25,785.785 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:37:25,788.788 INFO    ] No camera update needed
[2026-08-31 10:37:25,791.791 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:37:25,794.794 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:37:25,800.800 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:37:25,806.806 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:37:27,848.848 INFO    ] ================================================
[2026-08-31 10:37:27,863.863 INFO    ] Launching Daemon at Mon Aug 31 10:37:27 IST 2026
[2026-08-31 10:37:27,874.874 INFO    ] ================================================
[2026-08-31 10:37:28,537.537 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:37:28
[2026-08-31 10:37:29,220.220 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:37:29,527.527 INFO    ] Initializing speech engine...
[2026-08-31 10:37:29,535.535 INFO    ] 2026-08-31 10:37:29
[2026-08-31 10:37:29,827.827 INFO    ] 2026-08-31 10:37:29
[2026-08-31 10:37:29,867.867 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:37:30,150.150 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:37:30,159.159 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:37:30,355.355 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:37:30,373.373 INFO    ] time= 31/08/2026 10:37:30
[2026-08-31 10:37:30,398.398 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:37:30,412.412 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:37:30,535.535 INFO    ] No existing commands found in stream
[2026-08-31 10:37:35,571.571 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:37:35,574.574 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-08-31 10:37:37,502.502 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 10:37:37,505.505 INFO    ] Checking for system updates...
[2026-08-31 10:37:37,546.546 INFO    ] 200
[2026-08-31 10:37:37,549.549 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:37:37,610.610 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:37:37,613.613 INFO    ] No update needed
[2026-08-31 10:37:37,615.615 INFO    ] Checking for camera pi updates...
[2026-08-31 10:37:37,650.650 INFO    ] 200
[2026-08-31 10:37:37,653.653 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:37:37,695.695 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:37:37,774.774 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:37:37,777.777 INFO    ] No camera update needed
[2026-08-31 10:37:37,779.779 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:37:37,782.782 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:37:37,788.788 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:37:37,794.794 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:37:39,834.834 INFO    ] ================================================
[2026-08-31 10:37:39,850.850 INFO    ] Launching Daemon at Mon Aug 31 10:37:39 IST 2026
[2026-08-31 10:37:39,860.860 INFO    ] ================================================
[2026-08-31 10:37:40,432.432 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:37:40
[2026-08-31 10:37:41,021.021 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:37:41,289.289 INFO    ] Initializing speech engine...
[2026-08-31 10:37:41,298.298 INFO    ] 2026-08-31 10:37:41
[2026-08-31 10:37:41,544.544 INFO    ] 2026-08-31 10:37:41
[2026-08-31 10:37:41,580.580 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:37:41,856.856 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:37:41,864.864 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:37:42,057.057 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:37:42,098.098 INFO    ] time= 31/08/2026 10:37:42
[2026-08-31 10:37:42,103.103 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:37:42,121.121 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:37:42,252.252 INFO    ] No existing commands found in stream
[2026-08-31 10:37:47,266.266 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:37:47,269.269 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-08-31 10:37:49,030.030 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 10:37:49,033.033 INFO    ] Checking for system updates...
[2026-08-31 10:37:49,068.068 INFO    ] 200
[2026-08-31 10:37:49,071.071 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:37:49,131.131 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:37:49,133.133 INFO    ] No update needed
[2026-08-31 10:37:49,136.136 INFO    ] Checking for camera pi updates...
[2026-08-31 10:37:49,169.169 INFO    ] 200
[2026-08-31 10:37:49,171.171 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:37:49,221.221 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:37:49,308.308 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:37:49,310.310 INFO    ] No camera update needed
[2026-08-31 10:37:49,312.312 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:37:49,315.315 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:37:49,320.320 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:37:49,325.325 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:37:51,366.366 INFO    ] ================================================
[2026-08-31 10:37:51,382.382 INFO    ] Launching Daemon at Mon Aug 31 10:37:51 IST 2026
[2026-08-31 10:37:51,394.394 INFO    ] ================================================
[2026-08-31 10:37:52,052.052 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:37:52
[2026-08-31 10:37:52,734.734 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:37:53,037.037 INFO    ] Initializing speech engine...
[2026-08-31 10:37:53,045.045 INFO    ] 2026-08-31 10:37:53
[2026-08-31 10:37:53,322.322 INFO    ] 2026-08-31 10:37:53
[2026-08-31 10:37:53,383.383 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:37:53,621.621 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:37:53,627.627 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:37:53,860.860 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:37:53,890.890 INFO    ] time= 31/08/2026 10:37:53
[2026-08-31 10:37:53,907.907 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:37:53,927.927 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:37:54,046.046 INFO    ] No existing commands found in stream
[2026-08-31 10:37:59,067.067 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:37:59,070.070 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-08-31 10:38:00,987.987 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 10:38:00,990.990 INFO    ] Checking for system updates...
[2026-08-31 10:38:01,032.032 INFO    ] 200
[2026-08-31 10:38:01,035.035 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:38:01,101.101 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:38:01,104.104 INFO    ] No update needed
[2026-08-31 10:38:01,107.107 INFO    ] Checking for camera pi updates...
[2026-08-31 10:38:01,192.192 INFO    ] 200
[2026-08-31 10:38:01,206.206 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:38:01,293.293 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:38:01,388.388 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:38:01,392.392 INFO    ] No camera update needed
[2026-08-31 10:38:01,395.395 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:38:01,399.399 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:38:01,406.406 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:38:01,413.413 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:38:03,460.460 INFO    ] ================================================
[2026-08-31 10:38:03,476.476 INFO    ] Launching Daemon at Mon Aug 31 10:38:03 IST 2026
[2026-08-31 10:38:03,487.487 INFO    ] ================================================
[2026-08-31 10:38:04,139.139 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:38:04
[2026-08-31 10:38:04,812.812 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:38:05,111.111 INFO    ] Initializing speech engine...
[2026-08-31 10:38:05,118.118 INFO    ] 2026-08-31 10:38:05
[2026-08-31 10:38:05,396.396 INFO    ] 2026-08-31 10:38:05
[2026-08-31 10:38:05,451.451 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:38:05,734.734 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:38:05,740.740 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:38:05,934.934 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:38:05,963.963 INFO    ] time= 31/08/2026 10:38:05
[2026-08-31 10:38:05,999.999 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:38:06,012.012 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:38:06,130.130 INFO    ] No existing commands found in stream
[2026-08-31 10:38:11,156.156 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:38:11,159.159 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-08-31 10:38:13,418.418 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 10:38:13,421.421 INFO    ] Checking for system updates...
[2026-08-31 10:38:13,458.458 INFO    ] 200
[2026-08-31 10:38:13,461.461 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:38:13,514.514 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:38:13,517.517 INFO    ] No update needed
[2026-08-31 10:38:13,519.519 INFO    ] Checking for camera pi updates...
[2026-08-31 10:38:13,553.553 INFO    ] 200
[2026-08-31 10:38:13,555.555 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:38:13,595.595 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:38:13,696.696 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:38:13,699.699 INFO    ] No camera update needed
[2026-08-31 10:38:13,701.701 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:38:13,704.704 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:38:13,709.709 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:38:13,714.714 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:38:15,755.755 INFO    ] ================================================
[2026-08-31 10:38:15,770.770 INFO    ] Launching Daemon at Mon Aug 31 10:38:15 IST 2026
[2026-08-31 10:38:15,781.781 INFO    ] ================================================
[2026-08-31 10:38:16,348.348 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:38:16
[2026-08-31 10:38:16,973.973 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:38:17,282.282 INFO    ] Initializing speech engine...
[2026-08-31 10:38:17,297.297 INFO    ] 2026-08-31 10:38:17
[2026-08-31 10:38:17,612.612 INFO    ] 2026-08-31 10:38:17
[2026-08-31 10:38:17,695.695 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:38:17,908.908 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:38:17,917.917 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:38:18,116.116 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:38:18,136.136 INFO    ] time= 31/08/2026 10:38:18
[2026-08-31 10:38:18,160.160 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:38:18,174.174 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:38:18,284.284 INFO    ] No existing commands found in stream
[2026-08-31 10:38:23,309.309 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:38:23,312.312 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-08-31 10:38:27,466.466 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 10:38:27,470.470 INFO    ] Checking for system updates...
[2026-08-31 10:38:27,512.512 INFO    ] 200
[2026-08-31 10:38:27,515.515 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:38:27,569.569 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:38:27,572.572 INFO    ] No update needed
[2026-08-31 10:38:27,574.574 INFO    ] Checking for camera pi updates...
[2026-08-31 10:38:27,618.618 INFO    ] 200
[2026-08-31 10:38:27,621.621 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:38:27,663.663 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:38:27,764.764 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:38:27,767.767 INFO    ] No camera update needed
[2026-08-31 10:38:27,770.770 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:38:27,773.773 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:38:27,780.780 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:38:27,786.786 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:38:29,828.828 INFO    ] ================================================
[2026-08-31 10:38:29,844.844 INFO    ] Launching Daemon at Mon Aug 31 10:38:29 IST 2026
[2026-08-31 10:38:29,856.856 INFO    ] ================================================
[2026-08-31 10:38:30,439.439 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:38:30
[2026-08-31 10:38:31,041.041 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:38:31,332.332 INFO    ] Initializing speech engine...
[2026-08-31 10:38:31,344.344 INFO    ] 2026-08-31 10:38:31
[2026-08-31 10:38:31,607.607 INFO    ] 2026-08-31 10:38:31
[2026-08-31 10:38:31,675.675 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:38:31,934.934 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:38:31,943.943 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:38:32,131.131 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:38:32,192.192 INFO    ] time= 31/08/2026 10:38:32
[2026-08-31 10:38:32,232.232 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:38:32,239.239 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:38:32,377.377 INFO    ] No existing commands found in stream
[2026-08-31 10:38:37,395.395 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:38:37,398.398 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-08-31 10:38:41,085.085 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 10:38:41,088.088 INFO    ] Checking for system updates...
[2026-08-31 10:38:41,130.130 INFO    ] 200
[2026-08-31 10:38:41,133.133 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-08-31 10:38:41,135.135 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-08-31 10:38:41,138.138 INFO    ] Checking for camera pi updates...
[2026-08-31 10:38:41,181.181 INFO    ] 200
[2026-08-31 10:38:41,184.184 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-08-31 10:38:41,187.187 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-08-31 10:38:41,190.190 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:38:41,192.192 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:38:41,198.198 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:38:41,203.203 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:38:43,244.244 INFO    ] ================================================
[2026-08-31 10:38:43,263.263 INFO    ] Launching Daemon at Mon Aug 31 10:38:43 IST 2026
[2026-08-31 10:38:43,275.275 INFO    ] ================================================
[2026-08-31 10:38:43,843.843 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:38:43
[2026-08-31 10:38:44,432.432 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:38:44,684.684 INFO    ] Initializing speech engine...
[2026-08-31 10:38:44,705.705 INFO    ] 2026-08-31 10:38:44
[2026-08-31 10:38:44,964.964 INFO    ] 2026-08-31 10:38:44
[2026-08-31 10:38:44,998.998 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:38:45,203.203 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:38:45,263.263 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:38:45,408.408 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:38:45,474.474 INFO    ] time= 31/08/2026 10:38:45
[2026-08-31 10:38:45,539.539 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:38:45,545.545 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:38:45,663.663 INFO    ] No existing commands found in stream
[2026-08-31 10:38:50,685.685 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:38:50,688.688 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-08-31 10:38:54,493.493 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 10:38:54,496.496 INFO    ] Checking for system updates...
[2026-08-31 10:38:54,531.531 INFO    ] 200
[2026-08-31 10:38:54,534.534 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:38:54,594.594 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:38:54,596.596 INFO    ] No update needed
[2026-08-31 10:38:54,599.599 INFO    ] Checking for camera pi updates...
[2026-08-31 10:38:54,636.636 INFO    ] 200
[2026-08-31 10:38:54,639.639 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:38:54,679.679 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:38:54,758.758 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:38:54,760.760 INFO    ] No camera update needed
[2026-08-31 10:38:54,763.763 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:38:54,765.765 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:38:54,771.771 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:38:54,776.776 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:38:56,818.818 INFO    ] ================================================
[2026-08-31 10:38:56,834.834 INFO    ] Launching Daemon at Mon Aug 31 10:38:56 IST 2026
[2026-08-31 10:38:56,846.846 INFO    ] ================================================
[2026-08-31 10:38:57,427.427 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:38:57
[2026-08-31 10:38:58,025.025 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:38:58,273.273 INFO    ] Initializing speech engine...
[2026-08-31 10:38:58,279.279 INFO    ] 2026-08-31 10:38:58
[2026-08-31 10:38:58,553.553 INFO    ] 2026-08-31 10:38:58
[2026-08-31 10:38:58,588.588 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:38:58,813.813 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:38:58,822.822 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:38:58,972.972 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:38:58,977.977 INFO    ] time= 31/08/2026 10:38:58
[2026-08-31 10:38:58,984.984 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:38:59,018.018 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:38:59,142.142 INFO    ] No existing commands found in stream
[2026-08-31 10:39:04,172.172 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:39:04,175.175 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-08-31 10:39:06,585.585 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 10:39:06,587.587 INFO    ] Checking for system updates...
[2026-08-31 10:39:06,623.623 INFO    ] 200
[2026-08-31 10:39:06,625.625 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:39:06,677.677 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:39:06,679.679 INFO    ] No update needed
[2026-08-31 10:39:06,682.682 INFO    ] Checking for camera pi updates...
[2026-08-31 10:39:06,719.719 INFO    ] 200
[2026-08-31 10:39:06,722.722 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:39:06,767.767 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:39:06,863.863 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:39:06,865.865 INFO    ] No camera update needed
[2026-08-31 10:39:06,868.868 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:39:06,870.870 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:39:06,875.875 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:39:06,880.880 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:39:08,921.921 INFO    ] ================================================
[2026-08-31 10:39:08,937.937 INFO    ] Launching Daemon at Mon Aug 31 10:39:08 IST 2026
[2026-08-31 10:39:08,947.947 INFO    ] ================================================
[2026-08-31 10:39:09,533.533 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:39:09
[2026-08-31 10:39:10,135.135 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:39:10,400.400 INFO    ] Initializing speech engine...
[2026-08-31 10:39:10,425.425 INFO    ] 2026-08-31 10:39:10
[2026-08-31 10:39:10,702.702 INFO    ] 2026-08-31 10:39:10
[2026-08-31 10:39:10,739.739 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:39:10,947.947 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:39:10,967.967 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:39:11,187.187 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:39:11,195.195 INFO    ] time= 31/08/2026 10:39:11
[2026-08-31 10:39:11,255.255 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:39:11,299.299 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:39:11,379.379 INFO    ] No existing commands found in stream
[2026-08-31 10:39:16,403.403 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:39:16,406.406 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-08-31 10:39:20,295.295 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 10:39:20,297.297 INFO    ] Checking for system updates...
[2026-08-31 10:39:20,334.334 INFO    ] 200
[2026-08-31 10:39:20,336.336 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:39:20,390.390 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:39:20,392.392 INFO    ] No update needed
[2026-08-31 10:39:20,395.395 INFO    ] Checking for camera pi updates...
[2026-08-31 10:39:20,428.428 INFO    ] 200
[2026-08-31 10:39:20,430.430 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:39:20,471.471 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:39:20,551.551 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:39:20,554.554 INFO    ] No camera update needed
[2026-08-31 10:39:20,556.556 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:39:20,559.559 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:39:20,564.564 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:39:20,569.569 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:39:22,611.611 INFO    ] ================================================
[2026-08-31 10:39:22,627.627 INFO    ] Launching Daemon at Mon Aug 31 10:39:22 IST 2026
[2026-08-31 10:39:22,638.638 INFO    ] ================================================
[2026-08-31 10:39:23,211.211 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:39:23
[2026-08-31 10:39:23,801.801 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:39:24,061.061 INFO    ] Initializing speech engine...
[2026-08-31 10:39:24,076.076 INFO    ] 2026-08-31 10:39:24
[2026-08-31 10:39:24,360.360 INFO    ] 2026-08-31 10:39:24
[2026-08-31 10:39:24,387.387 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:39:24,595.595 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:39:24,601.601 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:39:24,777.777 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:39:24,783.783 INFO    ] time= 31/08/2026 10:39:24
[2026-08-31 10:39:24,788.788 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:39:24,794.794 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:39:24,925.925 INFO    ] No existing commands found in stream
[2026-08-31 10:39:29,950.950 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:39:29,953.953 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-08-31 10:39:32,860.860 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 10:39:32,863.863 INFO    ] Checking for system updates...
[2026-08-31 10:39:32,902.902 INFO    ] 200
[2026-08-31 10:39:32,905.905 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:39:32,963.963 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:39:32,965.965 INFO    ] No update needed
[2026-08-31 10:39:32,968.968 INFO    ] Checking for camera pi updates...
[2026-08-31 10:39:33,002.002 INFO    ] 200
[2026-08-31 10:39:33,005.005 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:39:33,051.051 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:39:33,278.278 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:39:33,280.280 INFO    ] No camera update needed
[2026-08-31 10:39:33,283.283 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:39:33,286.286 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:39:33,292.292 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:39:33,298.298 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:39:35,340.340 INFO    ] ================================================
[2026-08-31 10:39:35,355.355 INFO    ] Launching Daemon at Mon Aug 31 10:39:35 IST 2026
[2026-08-31 10:39:35,366.366 INFO    ] ================================================
[2026-08-31 10:39:36,038.038 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:39:36
[2026-08-31 10:39:36,724.724 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:39:37,027.027 INFO    ] Initializing speech engine...
[2026-08-31 10:39:37,035.035 INFO    ] 2026-08-31 10:39:37
[2026-08-31 10:39:37,352.352 INFO    ] 2026-08-31 10:39:37
[2026-08-31 10:39:37,439.439 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:39:37,653.653 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:39:37,658.658 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:39:37,853.853 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:39:37,861.861 INFO    ] time= 31/08/2026 10:39:37
[2026-08-31 10:39:37,879.879 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:39:37,908.908 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:39:38,055.055 INFO    ] No existing commands found in stream
[2026-08-31 10:39:43,091.091 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:39:43,094.094 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-08-31 10:39:44,582.582 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 10:39:44,585.585 INFO    ] Checking for system updates...
[2026-08-31 10:39:44,622.622 INFO    ] 200
[2026-08-31 10:39:44,625.625 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:39:44,676.676 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:39:44,679.679 INFO    ] No update needed
[2026-08-31 10:39:44,681.681 INFO    ] Checking for camera pi updates...
[2026-08-31 10:39:44,715.715 INFO    ] 200
[2026-08-31 10:39:44,717.717 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:39:44,757.757 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:39:44,823.823 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:39:44,826.826 INFO    ] No camera update needed
[2026-08-31 10:39:44,828.828 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:39:44,831.831 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:39:44,836.836 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:39:44,842.842 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:39:46,882.882 INFO    ] ================================================
[2026-08-31 10:39:46,897.897 INFO    ] Launching Daemon at Mon Aug 31 10:39:46 IST 2026
[2026-08-31 10:39:46,908.908 INFO    ] ================================================
[2026-08-31 10:39:47,564.564 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:39:47
[2026-08-31 10:39:48,240.240 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:39:48,542.542 INFO    ] Initializing speech engine...
[2026-08-31 10:39:48,551.551 INFO    ] 2026-08-31 10:39:48
[2026-08-31 10:39:48,869.869 INFO    ] 2026-08-31 10:39:48
[2026-08-31 10:39:48,954.954 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:39:49,167.167 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:39:49,173.173 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:39:49,366.366 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:39:49,375.375 INFO    ] time= 31/08/2026 10:39:49
[2026-08-31 10:39:49,393.393 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:39:49,406.406 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:39:49,530.530 INFO    ] No existing commands found in stream
[2026-08-31 10:39:54,560.560 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:39:54,563.563 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-08-31 10:39:57,566.566 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 10:39:57,570.570 INFO    ] Checking for system updates...
[2026-08-31 10:39:57,611.611 INFO    ] 200
[2026-08-31 10:39:57,613.613 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:39:57,673.673 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:39:57,676.676 INFO    ] No update needed
[2026-08-31 10:39:57,678.678 INFO    ] Checking for camera pi updates...
[2026-08-31 10:39:57,712.712 INFO    ] 200
[2026-08-31 10:39:57,715.715 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:39:57,755.755 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:39:57,826.826 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:39:57,829.829 INFO    ] No camera update needed
[2026-08-31 10:39:57,831.831 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:39:57,834.834 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:39:57,839.839 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:39:57,844.844 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:39:59,890.890 INFO    ] ================================================
[2026-08-31 10:39:59,906.906 INFO    ] Launching Daemon at Mon Aug 31 10:39:59 IST 2026
[2026-08-31 10:39:59,917.917 INFO    ] ================================================
[2026-08-31 10:40:00,582.582 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:40:00
[2026-08-31 10:40:01,557.557 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:40:02,195.195 INFO    ] Initializing speech engine...
[2026-08-31 10:40:02,199.199 INFO    ] 2026-08-31 10:40:02
[2026-08-31 10:40:02,534.534 INFO    ] 2026-08-31 10:40:02
[2026-08-31 10:40:02,575.575 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:40:02,764.764 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:40:02,769.769 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:40:02,992.992 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:40:03,052.052 INFO    ] time= 31/08/2026 10:40:02
[2026-08-31 10:40:03,095.095 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:40:03,120.120 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:40:03,282.282 INFO    ] No existing commands found in stream
[2026-08-31 10:40:08,306.306 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:40:08,309.309 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-08-31 10:40:12,150.150 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 10:40:12,153.153 INFO    ] Checking for system updates...
[2026-08-31 10:40:12,188.188 INFO    ] 200
[2026-08-31 10:40:12,191.191 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:40:12,243.243 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:40:12,246.246 INFO    ] No update needed
[2026-08-31 10:40:12,248.248 INFO    ] Checking for camera pi updates...
[2026-08-31 10:40:12,283.283 INFO    ] 200
[2026-08-31 10:40:12,286.286 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:40:12,328.328 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:40:12,411.411 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:40:12,413.413 INFO    ] No camera update needed
[2026-08-31 10:40:12,416.416 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:40:12,418.418 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:40:12,424.424 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:40:12,429.429 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:40:14,470.470 INFO    ] ================================================
[2026-08-31 10:40:14,485.485 INFO    ] Launching Daemon at Mon Aug 31 10:40:14 IST 2026
[2026-08-31 10:40:14,496.496 INFO    ] ================================================
[2026-08-31 10:40:15,136.136 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:40:15
[2026-08-31 10:40:15,796.796 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:40:16,099.099 INFO    ] Initializing speech engine...
[2026-08-31 10:40:16,113.113 INFO    ] 2026-08-31 10:40:16
[2026-08-31 10:40:16,421.421 INFO    ] 2026-08-31 10:40:16
[2026-08-31 10:40:16,506.506 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:40:16,720.720 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:40:16,729.729 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:40:16,923.923 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:40:16,942.942 INFO    ] time= 31/08/2026 10:40:16
[2026-08-31 10:40:16,965.965 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:40:16,979.979 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:40:17,080.080 INFO    ] No existing commands found in stream
[2026-08-31 10:40:22,093.093 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:40:22,096.096 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-08-31 10:40:24,911.911 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 10:40:24,914.914 INFO    ] Checking for system updates...
[2026-08-31 10:40:24,950.950 INFO    ] 200
[2026-08-31 10:40:24,953.953 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:40:25,004.004 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:40:25,007.007 INFO    ] No update needed
[2026-08-31 10:40:25,009.009 INFO    ] Checking for camera pi updates...
[2026-08-31 10:40:25,047.047 INFO    ] 200
[2026-08-31 10:40:25,049.049 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:40:25,099.099 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:40:25,174.174 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:40:25,177.177 INFO    ] No camera update needed
[2026-08-31 10:40:25,179.179 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:40:25,182.182 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:40:25,187.187 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:40:25,192.192 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:40:27,232.232 INFO    ] ================================================
[2026-08-31 10:40:27,248.248 INFO    ] Launching Daemon at Mon Aug 31 10:40:27 IST 2026
[2026-08-31 10:40:27,259.259 INFO    ] ================================================
[2026-08-31 10:40:27,834.834 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:40:27
[2026-08-31 10:40:28,415.415 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:40:28,682.682 INFO    ] Initializing speech engine...
[2026-08-31 10:40:28,691.691 INFO    ] 2026-08-31 10:40:28
[2026-08-31 10:40:28,960.960 INFO    ] 2026-08-31 10:40:28
[2026-08-31 10:40:28,995.995 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:40:29,198.198 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:40:29,243.243 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:40:29,405.405 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:40:29,465.465 INFO    ] time= 31/08/2026 10:40:29
[2026-08-31 10:40:29,514.514 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:40:29,531.531 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:40:29,663.663 INFO    ] No existing commands found in stream
[2026-08-31 10:40:34,688.688 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:40:34,690.690 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-08-31 10:40:38,844.844 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 10:40:38,847.847 INFO    ] Checking for system updates...
[2026-08-31 10:40:38,882.882 INFO    ] 200
[2026-08-31 10:40:38,885.885 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:40:38,936.936 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:40:38,939.939 INFO    ] No update needed
[2026-08-31 10:40:38,941.941 INFO    ] Checking for camera pi updates...
[2026-08-31 10:40:38,975.975 INFO    ] 200
[2026-08-31 10:40:38,978.978 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:40:39,020.020 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:40:39,111.111 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:40:39,113.113 INFO    ] No camera update needed
[2026-08-31 10:40:39,115.115 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:40:39,118.118 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:40:39,123.123 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:40:39,128.128 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:40:41,170.170 INFO    ] ================================================
[2026-08-31 10:40:41,186.186 INFO    ] Launching Daemon at Mon Aug 31 10:40:41 IST 2026
[2026-08-31 10:40:41,196.196 INFO    ] ================================================
[2026-08-31 10:40:41,845.845 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:40:41
[2026-08-31 10:40:42,516.516 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:40:42,823.823 INFO    ] Initializing speech engine...
[2026-08-31 10:40:42,828.828 INFO    ] 2026-08-31 10:40:42
[2026-08-31 10:40:43,107.107 INFO    ] 2026-08-31 10:40:43
[2026-08-31 10:40:43,167.167 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:40:43,401.401 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:40:43,407.407 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:40:43,544.544 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:40:43,599.599 INFO    ] time= 31/08/2026 10:40:43
[2026-08-31 10:40:43,659.659 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:40:43,680.680 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:40:43,807.807 INFO    ] No existing commands found in stream
[2026-08-31 10:40:48,838.838 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:40:48,842.842 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-08-31 10:40:50,611.611 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 10:40:50,614.614 INFO    ] Checking for system updates...
[2026-08-31 10:40:50,652.652 INFO    ] 200
[2026-08-31 10:40:50,655.655 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:40:50,709.709 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:40:50,712.712 INFO    ] No update needed
[2026-08-31 10:40:50,714.714 INFO    ] Checking for camera pi updates...
[2026-08-31 10:40:50,748.748 INFO    ] 200
[2026-08-31 10:40:50,751.751 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:40:50,791.791 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:40:50,882.882 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:40:50,885.885 INFO    ] No camera update needed
[2026-08-31 10:40:50,887.887 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:40:50,890.890 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:40:50,895.895 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:40:50,900.900 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:40:52,940.940 INFO    ] ================================================
[2026-08-31 10:40:52,955.955 INFO    ] Launching Daemon at Mon Aug 31 10:40:52 IST 2026
[2026-08-31 10:40:52,966.966 INFO    ] ================================================
[2026-08-31 10:40:53,547.547 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:40:53
[2026-08-31 10:40:54,145.145 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:40:54,424.424 INFO    ] Initializing speech engine...
[2026-08-31 10:40:54,432.432 INFO    ] 2026-08-31 10:40:54
[2026-08-31 10:40:54,694.694 INFO    ] 2026-08-31 10:40:54
[2026-08-31 10:40:54,747.747 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:40:55,030.030 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:40:55,039.039 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:40:55,228.228 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:40:55,234.234 INFO    ] time= 31/08/2026 10:40:55
[2026-08-31 10:40:55,255.255 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:40:55,281.281 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:40:55,411.411 INFO    ] No existing commands found in stream
[2026-08-31 10:41:00,442.442 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:41:00,445.445 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-08-31 10:41:04,084.084 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 10:41:04,087.087 INFO    ] Checking for system updates...
[2026-08-31 10:41:04,123.123 INFO    ] 200
[2026-08-31 10:41:04,126.126 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:41:04,190.190 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:41:04,193.193 INFO    ] No update needed
[2026-08-31 10:41:04,196.196 INFO    ] Checking for camera pi updates...
[2026-08-31 10:41:04,238.238 INFO    ] 200
[2026-08-31 10:41:04,240.240 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:41:04,281.281 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:41:04,360.360 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:41:04,363.363 INFO    ] No camera update needed
[2026-08-31 10:41:04,365.365 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:41:04,368.368 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:41:04,373.373 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:41:04,378.378 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:41:06,421.421 INFO    ] ================================================
[2026-08-31 10:41:06,437.437 INFO    ] Launching Daemon at Mon Aug 31 10:41:06 IST 2026
[2026-08-31 10:41:06,447.447 INFO    ] ================================================
[2026-08-31 10:41:07,091.091 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:41:07
[2026-08-31 10:41:07,756.756 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:41:08,055.055 INFO    ] Initializing speech engine...
[2026-08-31 10:41:08,063.063 INFO    ] 2026-08-31 10:41:08
[2026-08-31 10:41:08,332.332 INFO    ] 2026-08-31 10:41:08
[2026-08-31 10:41:08,387.387 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:41:08,641.641 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:41:08,646.646 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:41:08,862.862 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:41:08,882.882 INFO    ] time= 31/08/2026 10:41:08
[2026-08-31 10:41:08,900.900 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:41:08,920.920 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:41:09,049.049 INFO    ] No existing commands found in stream
[2026-08-31 10:41:14,079.079 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:41:14,082.082 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-08-31 10:41:15,285.285 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 10:41:15,288.288 INFO    ] Checking for system updates...
[2026-08-31 10:41:15,325.325 INFO    ] 200
[2026-08-31 10:41:15,327.327 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:41:15,379.379 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:41:15,382.382 INFO    ] No update needed
[2026-08-31 10:41:15,384.384 INFO    ] Checking for camera pi updates...
[2026-08-31 10:41:15,417.417 INFO    ] 200
[2026-08-31 10:41:15,420.420 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:41:15,462.462 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:41:15,543.543 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:41:15,545.545 INFO    ] No camera update needed
[2026-08-31 10:41:15,547.547 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:41:15,550.550 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:41:15,555.555 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:41:15,560.560 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:41:17,600.600 INFO    ] ================================================
[2026-08-31 10:41:17,616.616 INFO    ] Launching Daemon at Mon Aug 31 10:41:17 IST 2026
[2026-08-31 10:41:17,626.626 INFO    ] ================================================
[2026-08-31 10:41:18,283.283 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:41:18
[2026-08-31 10:41:18,959.959 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:41:19,265.265 INFO    ] Initializing speech engine...
[2026-08-31 10:41:19,282.282 INFO    ] 2026-08-31 10:41:19
[2026-08-31 10:41:19,597.597 INFO    ] 2026-08-31 10:41:19
[2026-08-31 10:41:19,684.684 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:41:19,900.900 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:41:19,910.910 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:41:20,092.092 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:41:20,113.113 INFO    ] time= 31/08/2026 10:41:20
[2026-08-31 10:41:20,119.119 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:41:20,141.141 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:41:20,266.266 INFO    ] No existing commands found in stream
[2026-08-31 10:41:25,284.284 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:41:25,287.287 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-08-31 10:41:28,736.736 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 10:41:28,740.740 INFO    ] Checking for system updates...
[2026-08-31 10:41:28,776.776 INFO    ] 200
[2026-08-31 10:41:28,779.779 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:41:28,830.830 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:41:28,833.833 INFO    ] No update needed
[2026-08-31 10:41:28,842.842 INFO    ] Checking for camera pi updates...
[2026-08-31 10:41:28,875.875 INFO    ] 200
[2026-08-31 10:41:28,878.878 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:41:28,918.918 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:41:28,998.998 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:41:29,001.001 INFO    ] No camera update needed
[2026-08-31 10:41:29,003.003 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:41:29,005.005 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:41:29,010.010 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:41:29,015.015 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:41:31,056.056 INFO    ] ================================================
[2026-08-31 10:41:31,072.072 INFO    ] Launching Daemon at Mon Aug 31 10:41:31 IST 2026
[2026-08-31 10:41:31,083.083 INFO    ] ================================================
[2026-08-31 10:41:31,706.706 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:41:31
[2026-08-31 10:41:32,428.428 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:41:32,713.713 INFO    ] Initializing speech engine...
[2026-08-31 10:41:32,720.720 INFO    ] 2026-08-31 10:41:32
[2026-08-31 10:41:32,995.995 INFO    ] 2026-08-31 10:41:32
[2026-08-31 10:41:33,030.030 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:41:33,282.282 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:41:33,291.291 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:41:33,425.425 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:41:33,470.470 INFO    ] time= 31/08/2026 10:41:33
[2026-08-31 10:41:33,514.514 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:41:33,555.555 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:41:33,707.707 INFO    ] No existing commands found in stream
[2026-08-31 10:41:38,719.719 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:41:38,722.722 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-08-31 10:41:40,125.125 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 10:41:40,127.127 INFO    ] Checking for system updates...
[2026-08-31 10:41:40,168.168 INFO    ] 200
[2026-08-31 10:41:40,170.170 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:41:40,230.230 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:41:40,232.232 INFO    ] No update needed
[2026-08-31 10:41:40,234.234 INFO    ] Checking for camera pi updates...
[2026-08-31 10:41:40,268.268 INFO    ] 200
[2026-08-31 10:41:40,270.270 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:41:40,316.316 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:41:40,496.496 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:41:40,499.499 INFO    ] No camera update needed
[2026-08-31 10:41:40,501.501 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:41:40,503.503 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:41:40,509.509 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:41:40,514.514 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:41:42,556.556 INFO    ] ================================================
[2026-08-31 10:41:42,571.571 INFO    ] Launching Daemon at Mon Aug 31 10:41:42 IST 2026
[2026-08-31 10:41:42,581.581 INFO    ] ================================================
[2026-08-31 10:41:43,155.155 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:41:43
[2026-08-31 10:41:43,739.739 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:41:43,992.992 INFO    ] Initializing speech engine...
[2026-08-31 10:41:44,000.000 INFO    ] 2026-08-31 10:41:43
[2026-08-31 10:41:44,296.296 INFO    ] 2026-08-31 10:41:44
[2026-08-31 10:41:44,334.334 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:41:44,537.537 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:41:44,551.551 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:41:44,720.720 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:41:44,724.724 INFO    ] time= 31/08/2026 10:41:44
[2026-08-31 10:41:44,731.731 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:41:44,784.784 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:41:44,942.942 INFO    ] No existing commands found in stream
[2026-08-31 10:41:49,962.962 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:41:49,965.965 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-08-31 10:41:52,792.792 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 10:41:52,794.794 INFO    ] Checking for system updates...
[2026-08-31 10:41:52,830.830 INFO    ] 200
[2026-08-31 10:41:52,833.833 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:41:52,894.894 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:41:52,896.896 INFO    ] No update needed
[2026-08-31 10:41:52,899.899 INFO    ] Checking for camera pi updates...
[2026-08-31 10:41:52,932.932 INFO    ] 200
[2026-08-31 10:41:52,935.935 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:41:52,980.980 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:41:53,057.057 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:41:53,059.059 INFO    ] No camera update needed
[2026-08-31 10:41:53,061.061 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:41:53,064.064 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:41:53,069.069 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:41:53,074.074 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:41:55,120.120 INFO    ] ================================================
[2026-08-31 10:41:55,135.135 INFO    ] Launching Daemon at Mon Aug 31 10:41:55 IST 2026
[2026-08-31 10:41:55,146.146 INFO    ] ================================================
[2026-08-31 10:41:55,805.805 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:41:55
[2026-08-31 10:41:56,483.483 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:41:56,791.791 INFO    ] Initializing speech engine...
[2026-08-31 10:41:56,798.798 INFO    ] 2026-08-31 10:41:56
[2026-08-31 10:41:57,079.079 INFO    ] 2026-08-31 10:41:57
[2026-08-31 10:41:57,133.133 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:41:57,369.369 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:41:57,381.381 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:41:57,581.581 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:41:57,641.641 INFO    ] time= 31/08/2026 10:41:57
[2026-08-31 10:41:57,647.647 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:41:57,670.670 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:41:57,804.804 INFO    ] No existing commands found in stream
[2026-08-31 10:42:02,839.839 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:42:02,842.842 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-08-31 10:42:06,460.460 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 10:42:06,708.708 INFO    ] Checking for system updates...
[2026-08-31 10:42:06,743.743 INFO    ] 200
[2026-08-31 10:42:06,746.746 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:42:07,471.471 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:42:07,477.477 INFO    ] No update needed
[2026-08-31 10:42:07,480.480 INFO    ] Checking for camera pi updates...
[2026-08-31 10:42:07,513.513 INFO    ] 200
[2026-08-31 10:42:07,515.515 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:42:07,556.556 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:42:07,641.641 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:42:07,644.644 INFO    ] No camera update needed
[2026-08-31 10:42:07,646.646 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:42:07,649.649 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:42:07,654.654 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:42:07,659.659 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:42:09,699.699 INFO    ] ================================================
[2026-08-31 10:42:09,714.714 INFO    ] Launching Daemon at Mon Aug 31 10:42:09 IST 2026
[2026-08-31 10:42:09,725.725 INFO    ] ================================================
[2026-08-31 10:42:10,288.288 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:42:10
[2026-08-31 10:42:10,867.867 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:42:11,117.117 INFO    ] Initializing speech engine...
[2026-08-31 10:42:11,140.140 INFO    ] 2026-08-31 10:42:11
[2026-08-31 10:42:11,395.395 INFO    ] 2026-08-31 10:42:11
[2026-08-31 10:42:11,430.430 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:42:11,686.686 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:42:11,695.695 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:42:11,881.881 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:42:11,947.947 INFO    ] time= 31/08/2026 10:42:11
[2026-08-31 10:42:11,962.962 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:42:11,967.967 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:42:12,095.095 INFO    ] No existing commands found in stream
[2026-08-31 10:42:17,120.120 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:42:17,123.123 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-08-31 10:42:19,334.334 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 10:42:19,337.337 INFO    ] Checking for system updates...
[2026-08-31 10:42:19,379.379 INFO    ] 200
[2026-08-31 10:42:19,382.382 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:42:19,434.434 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:42:19,437.437 INFO    ] No update needed
[2026-08-31 10:42:19,440.440 INFO    ] Checking for camera pi updates...
[2026-08-31 10:42:19,478.478 INFO    ] 200
[2026-08-31 10:42:19,480.480 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:42:19,525.525 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:42:19,630.630 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:42:19,633.633 INFO    ] No camera update needed
[2026-08-31 10:42:19,694.694 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:42:19,696.696 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:42:19,703.703 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:42:19,709.709 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:42:21,750.750 INFO    ] ================================================
[2026-08-31 10:42:21,766.766 INFO    ] Launching Daemon at Mon Aug 31 10:42:21 IST 2026
[2026-08-31 10:42:21,777.777 INFO    ] ================================================
[2026-08-31 10:42:22,356.356 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:42:22
[2026-08-31 10:42:22,952.952 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:42:23,225.225 INFO    ] Initializing speech engine...
[2026-08-31 10:42:23,252.252 INFO    ] 2026-08-31 10:42:23
[2026-08-31 10:42:23,523.523 INFO    ] 2026-08-31 10:42:23
[2026-08-31 10:42:23,558.558 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:42:23,811.811 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:42:23,820.820 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:42:24,031.031 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:42:24,081.081 INFO    ] time= 31/08/2026 10:42:24
[2026-08-31 10:42:24,088.088 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:42:24,105.105 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:42:24,174.174 INFO    ] No existing commands found in stream
[2026-08-31 10:42:29,180.180 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:42:29,182.182 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-08-31 10:42:30,765.765 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 10:42:30,768.768 INFO    ] Checking for system updates...
[2026-08-31 10:42:30,808.808 INFO    ] 200
[2026-08-31 10:42:30,810.810 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:42:30,869.869 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:42:30,871.871 INFO    ] No update needed
[2026-08-31 10:42:30,873.873 INFO    ] Checking for camera pi updates...
[2026-08-31 10:42:30,907.907 INFO    ] 200
[2026-08-31 10:42:30,909.909 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:42:30,950.950 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:42:31,029.029 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:42:31,032.032 INFO    ] No camera update needed
[2026-08-31 10:42:31,034.034 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:42:31,036.036 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:42:31,042.042 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:42:31,047.047 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:42:33,088.088 INFO    ] ================================================
[2026-08-31 10:42:33,104.104 INFO    ] Launching Daemon at Mon Aug 31 10:42:33 IST 2026
[2026-08-31 10:42:33,114.114 INFO    ] ================================================
[2026-08-31 10:42:33,820.820 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:42:33
[2026-08-31 10:42:34,430.430 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:42:34,726.726 INFO    ] Initializing speech engine...
[2026-08-31 10:42:34,734.734 INFO    ] 2026-08-31 10:42:34
[2026-08-31 10:42:35,031.031 INFO    ] 2026-08-31 10:42:35
[2026-08-31 10:42:35,070.070 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:42:35,336.336 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:42:35,359.359 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:42:35,560.560 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:42:35,575.575 INFO    ] time= 31/08/2026 10:42:35
[2026-08-31 10:42:35,596.596 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:42:35,623.623 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:42:35,732.732 INFO    ] No existing commands found in stream
[2026-08-31 10:42:40,749.749 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:42:40,752.752 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-08-31 10:42:41,901.901 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 10:42:41,904.904 INFO    ] Checking for system updates...
[2026-08-31 10:42:41,944.944 INFO    ] 200
[2026-08-31 10:42:41,947.947 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:42:41,999.999 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:42:42,001.001 INFO    ] No update needed
[2026-08-31 10:42:42,003.003 INFO    ] Checking for camera pi updates...
[2026-08-31 10:42:42,036.036 INFO    ] 200
[2026-08-31 10:42:42,039.039 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:42:42,084.084 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:42:42,165.165 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:42:42,167.167 INFO    ] No camera update needed
[2026-08-31 10:42:42,170.170 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:42:42,172.172 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:42:42,177.177 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:42:42,182.182 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:42:44,222.222 INFO    ] ================================================
[2026-08-31 10:42:44,237.237 INFO    ] Launching Daemon at Mon Aug 31 10:42:44 IST 2026
[2026-08-31 10:42:44,247.247 INFO    ] ================================================
[2026-08-31 10:42:44,901.901 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:42:44
[2026-08-31 10:42:45,576.576 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:42:45,882.882 INFO    ] Initializing speech engine...
[2026-08-31 10:42:45,893.893 INFO    ] 2026-08-31 10:42:45
[2026-08-31 10:42:46,159.159 INFO    ] 2026-08-31 10:42:46
[2026-08-31 10:42:46,214.214 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:42:46,442.442 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:42:46,448.448 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:42:46,658.658 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:42:46,704.704 INFO    ] time= 31/08/2026 10:42:46
[2026-08-31 10:42:46,722.722 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:42:46,732.732 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:42:46,888.888 INFO    ] No existing commands found in stream
[2026-08-31 10:42:51,914.914 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:42:51,917.917 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-08-31 10:42:55,289.289 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 10:42:55,292.292 INFO    ] Checking for system updates...
[2026-08-31 10:42:55,328.328 INFO    ] 200
[2026-08-31 10:42:55,330.330 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:42:55,390.390 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:42:55,392.392 INFO    ] No update needed
[2026-08-31 10:42:55,395.395 INFO    ] Checking for camera pi updates...
[2026-08-31 10:42:55,428.428 INFO    ] 200
[2026-08-31 10:42:55,431.431 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:42:55,477.477 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:42:55,551.551 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:42:55,554.554 INFO    ] No camera update needed
[2026-08-31 10:42:55,556.556 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:42:55,559.559 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:42:55,564.564 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:42:55,569.569 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:42:57,609.609 INFO    ] ================================================
[2026-08-31 10:42:57,624.624 INFO    ] Launching Daemon at Mon Aug 31 10:42:57 IST 2026
[2026-08-31 10:42:57,635.635 INFO    ] ================================================
[2026-08-31 10:42:58,205.205 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:42:58
[2026-08-31 10:42:58,804.804 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:42:59,075.075 INFO    ] Initializing speech engine...
[2026-08-31 10:42:59,084.084 INFO    ] 2026-08-31 10:42:59
[2026-08-31 10:42:59,334.334 INFO    ] 2026-08-31 10:42:59
[2026-08-31 10:42:59,369.369 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:42:59,624.624 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:42:59,629.629 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:42:59,768.768 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:42:59,833.833 INFO    ] time= 31/08/2026 10:42:59
[2026-08-31 10:42:59,889.889 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:42:59,896.896 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:43:00,042.042 INFO    ] No existing commands found in stream
[2026-08-31 10:43:05,061.061 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:43:05,064.064 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-08-31 10:43:05,773.773 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 10:43:05,775.775 INFO    ] Checking for system updates...
[2026-08-31 10:43:05,815.815 INFO    ] 200
[2026-08-31 10:43:05,817.817 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:43:05,870.870 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:43:05,872.872 INFO    ] No update needed
[2026-08-31 10:43:05,875.875 INFO    ] Checking for camera pi updates...
[2026-08-31 10:43:05,908.908 INFO    ] 200
[2026-08-31 10:43:05,910.910 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:43:05,951.951 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:43:06,026.026 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:43:06,029.029 INFO    ] No camera update needed
[2026-08-31 10:43:06,031.031 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:43:06,034.034 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:43:06,039.039 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:43:06,044.044 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:43:08,087.087 INFO    ] ================================================
[2026-08-31 10:43:08,102.102 INFO    ] Launching Daemon at Mon Aug 31 10:43:08 IST 2026
[2026-08-31 10:43:08,113.113 INFO    ] ================================================
[2026-08-31 10:43:08,679.679 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:43:08
[2026-08-31 10:43:09,262.262 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:43:09,529.529 INFO    ] Initializing speech engine...
[2026-08-31 10:43:09,538.538 INFO    ] 2026-08-31 10:43:09
[2026-08-31 10:43:09,789.789 INFO    ] 2026-08-31 10:43:09
[2026-08-31 10:43:09,849.849 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:43:10,069.069 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:43:10,078.078 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:43:10,221.221 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:43:10,248.248 INFO    ] time= 31/08/2026 10:43:10
[2026-08-31 10:43:10,282.282 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:43:10,285.285 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:43:10,368.368 INFO    ] No existing commands found in stream
[2026-08-31 10:43:15,389.389 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:43:15,391.391 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-08-31 10:43:17,147.147 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 10:43:17,150.150 INFO    ] Checking for system updates...
[2026-08-31 10:43:17,185.185 INFO    ] 200
[2026-08-31 10:43:17,187.187 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:43:17,240.240 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:43:17,242.242 INFO    ] No update needed
[2026-08-31 10:43:17,244.244 INFO    ] Checking for camera pi updates...
[2026-08-31 10:43:17,282.282 INFO    ] 200
[2026-08-31 10:43:17,285.285 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:43:17,325.325 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:43:17,410.410 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:43:17,412.412 INFO    ] No camera update needed
[2026-08-31 10:43:17,414.414 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:43:17,417.417 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:43:17,422.422 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:43:17,427.427 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:43:19,468.468 INFO    ] ================================================
[2026-08-31 10:43:19,484.484 INFO    ] Launching Daemon at Mon Aug 31 10:43:19 IST 2026
[2026-08-31 10:43:19,494.494 INFO    ] ================================================
[2026-08-31 10:43:20,145.145 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:43:20
[2026-08-31 10:43:20,818.818 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:43:21,124.124 INFO    ] Initializing speech engine...
[2026-08-31 10:43:21,136.136 INFO    ] 2026-08-31 10:43:21
[2026-08-31 10:43:21,445.445 INFO    ] 2026-08-31 10:43:21
[2026-08-31 10:43:21,530.530 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:43:21,744.744 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:43:21,750.750 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:43:21,930.930 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:43:21,954.954 INFO    ] time= 31/08/2026 10:43:21
[2026-08-31 10:43:21,973.973 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:43:22,003.003 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:43:22,144.144 INFO    ] No existing commands found in stream
[2026-08-31 10:43:27,181.181 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:43:27,184.184 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-08-31 10:43:28,607.607 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 10:43:28,610.610 INFO    ] Checking for system updates...
[2026-08-31 10:43:28,650.650 INFO    ] 200
[2026-08-31 10:43:28,653.653 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:43:28,706.706 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:43:28,709.709 INFO    ] No update needed
[2026-08-31 10:43:28,712.712 INFO    ] Checking for camera pi updates...
[2026-08-31 10:43:28,750.750 INFO    ] 200
[2026-08-31 10:43:28,753.753 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:43:28,799.799 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:43:28,911.911 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:43:28,914.914 INFO    ] No camera update needed
[2026-08-31 10:43:28,917.917 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:43:28,919.919 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:43:28,926.926 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:43:28,931.931 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:43:30,972.972 INFO    ] ================================================
[2026-08-31 10:43:30,987.987 INFO    ] Launching Daemon at Mon Aug 31 10:43:30 IST 2026
[2026-08-31 10:43:31,998.998 INFO    ] ================================================
[2026-08-31 10:43:31,583.583 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:43:31
[2026-08-31 10:43:32,224.224 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:43:32,562.562 INFO    ] Initializing speech engine...
[2026-08-31 10:43:32,569.569 INFO    ] 2026-08-31 10:43:32
[2026-08-31 10:43:32,860.860 INFO    ] 2026-08-31 10:43:32
[2026-08-31 10:43:32,895.895 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:43:33,089.089 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:43:33,148.148 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:43:33,304.304 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:43:33,370.370 INFO    ] time= 31/08/2026 10:43:33
[2026-08-31 10:43:33,418.418 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:43:33,436.436 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:43:33,569.569 INFO    ] No existing commands found in stream
[2026-08-31 10:43:38,586.586 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:43:38,589.589 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-08-31 10:43:39,875.875 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 10:43:39,878.878 INFO    ] Checking for system updates...
[2026-08-31 10:43:39,919.919 INFO    ] 200
[2026-08-31 10:43:39,922.922 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:43:39,989.989 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:43:39,992.992 INFO    ] No update needed
[2026-08-31 10:43:39,995.995 INFO    ] Checking for camera pi updates...
[2026-08-31 10:43:40,030.030 INFO    ] 200
[2026-08-31 10:43:40,033.033 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:43:40,074.074 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:43:40,159.159 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:43:40,162.162 INFO    ] No camera update needed
[2026-08-31 10:43:40,165.165 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:43:40,167.167 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:43:40,174.174 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:43:40,180.180 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:43:42,222.222 INFO    ] ================================================
[2026-08-31 10:43:42,237.237 INFO    ] Launching Daemon at Mon Aug 31 10:43:42 IST 2026
[2026-08-31 10:43:42,248.248 INFO    ] ================================================
[2026-08-31 10:43:42,830.830 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:43:42
[2026-08-31 10:43:43,429.429 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:43:43,698.698 INFO    ] Initializing speech engine...
[2026-08-31 10:43:43,714.714 INFO    ] 2026-08-31 10:43:43
[2026-08-31 10:43:43,994.994 INFO    ] 2026-08-31 10:43:43
[2026-08-31 10:43:44,036.036 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:43:44,225.225 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:43:44,242.242 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:43:44,411.411 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:43:44,419.419 INFO    ] time= 31/08/2026 10:43:44
[2026-08-31 10:43:44,425.425 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:43:44,492.492 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:43:44,632.632 INFO    ] No existing commands found in stream
[2026-08-31 10:43:49,653.653 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:43:49,655.655 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-08-31 10:43:53,007.007 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 10:43:53,010.010 INFO    ] Checking for system updates...
[2026-08-31 10:43:53,045.045 INFO    ] 200
[2026-08-31 10:43:53,048.048 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:43:53,108.108 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:43:53,110.110 INFO    ] No update needed
[2026-08-31 10:43:53,113.113 INFO    ] Checking for camera pi updates...
[2026-08-31 10:43:53,147.147 INFO    ] 200
[2026-08-31 10:43:53,150.150 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:43:53,197.197 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:43:53,376.376 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:43:53,378.378 INFO    ] No camera update needed
[2026-08-31 10:43:53,381.381 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:43:53,383.383 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:43:53,389.389 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:43:53,394.394 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:43:55,435.435 INFO    ] ================================================
[2026-08-31 10:43:55,450.450 INFO    ] Launching Daemon at Mon Aug 31 10:43:55 IST 2026
[2026-08-31 10:43:55,461.461 INFO    ] ================================================
[2026-08-31 10:43:56,119.119 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:43:56
[2026-08-31 10:43:56,794.794 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:43:57,103.103 INFO    ] Initializing speech engine...
[2026-08-31 10:43:57,114.114 INFO    ] 2026-08-31 10:43:57
[2026-08-31 10:43:57,395.395 INFO    ] 2026-08-31 10:43:57
[2026-08-31 10:43:57,439.439 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:43:57,689.689 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:43:57,709.709 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:43:57,925.925 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:43:57,933.933 INFO    ] time= 31/08/2026 10:43:57
[2026-08-31 10:43:57,951.951 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:43:57,969.969 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:43:58,103.103 INFO    ] No existing commands found in stream
[2026-08-31 10:44:03,130.130 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:44:03,133.133 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-08-31 10:44:06,134.134 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 10:44:06,137.137 INFO    ] Checking for system updates...
[2026-08-31 10:44:06,174.174 INFO    ] 200
[2026-08-31 10:44:06,177.177 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:44:06,235.235 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:44:06,238.238 INFO    ] No update needed
[2026-08-31 10:44:06,241.241 INFO    ] Checking for camera pi updates...
[2026-08-31 10:44:06,294.294 INFO    ] 200
[2026-08-31 10:44:06,297.297 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:44:06,356.356 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:44:06,453.453 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:44:06,455.455 INFO    ] No camera update needed
[2026-08-31 10:44:06,458.458 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:44:06,460.460 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:44:06,465.465 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:44:06,470.470 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:44:08,510.510 INFO    ] ================================================
[2026-08-31 10:44:08,525.525 INFO    ] Launching Daemon at Mon Aug 31 10:44:08 IST 2026
[2026-08-31 10:44:08,536.536 INFO    ] ================================================
[2026-08-31 10:44:09,167.167 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:44:09
[2026-08-31 10:44:09,817.817 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:44:10,113.113 INFO    ] Initializing speech engine...
[2026-08-31 10:44:10,127.127 INFO    ] 2026-08-31 10:44:10
[2026-08-31 10:44:10,391.391 INFO    ] 2026-08-31 10:44:10
[2026-08-31 10:44:10,445.445 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:44:10,669.669 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:44:10,679.679 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:44:10,897.897 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:44:10,942.942 INFO    ] time= 31/08/2026 10:44:10
[2026-08-31 10:44:10,949.949 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:44:10,967.967 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:44:11,099.099 INFO    ] No existing commands found in stream
[2026-08-31 10:44:16,112.112 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:44:16,115.115 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-08-31 10:44:17,064.064 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 10:44:17,067.067 INFO    ] Checking for system updates...
[2026-08-31 10:44:17,103.103 INFO    ] 200
[2026-08-31 10:44:17,105.105 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:44:17,158.158 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:44:17,160.160 INFO    ] No update needed
[2026-08-31 10:44:17,163.163 INFO    ] Checking for camera pi updates...
[2026-08-31 10:44:17,198.198 INFO    ] 200
[2026-08-31 10:44:17,200.200 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:44:17,245.245 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:44:17,348.348 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:44:17,350.350 INFO    ] No camera update needed
[2026-08-31 10:44:17,353.353 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:44:17,355.355 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:44:17,360.360 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:44:17,365.365 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:44:19,406.406 INFO    ] ================================================
[2026-08-31 10:44:19,421.421 INFO    ] Launching Daemon at Mon Aug 31 10:44:19 IST 2026
[2026-08-31 10:44:19,431.431 INFO    ] ================================================
[2026-08-31 10:44:19,998.998 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:44:19
[2026-08-31 10:44:20,584.584 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:44:20,861.861 INFO    ] Initializing speech engine...
[2026-08-31 10:44:20,867.867 INFO    ] 2026-08-31 10:44:20
[2026-08-31 10:44:21,115.115 INFO    ] 2026-08-31 10:44:21
[2026-08-31 10:44:21,150.150 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:44:21,327.327 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:44:21,339.339 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:44:21,552.552 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:44:21,574.574 INFO    ] time= 31/08/2026 10:44:21
[2026-08-31 10:44:21,628.628 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:44:21,677.677 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:44:21,820.820 INFO    ] No existing commands found in stream
[2026-08-31 10:44:26,840.840 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:44:26,843.843 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-08-31 10:44:29,586.586 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 10:44:29,589.589 INFO    ] Checking for system updates...
[2026-08-31 10:44:29,628.628 INFO    ] 200
[2026-08-31 10:44:29,630.630 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:44:29,688.688 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:44:29,691.691 INFO    ] No update needed
[2026-08-31 10:44:29,693.693 INFO    ] Checking for camera pi updates...
[2026-08-31 10:44:29,729.729 INFO    ] 200
[2026-08-31 10:44:29,732.732 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:44:29,771.771 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:44:29,873.873 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:44:29,875.875 INFO    ] No camera update needed
[2026-08-31 10:44:29,878.878 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:44:29,880.880 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:44:29,885.885 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:44:29,890.890 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:44:31,934.934 INFO    ] ================================================
[2026-08-31 10:44:31,950.950 INFO    ] Launching Daemon at Mon Aug 31 10:44:31 IST 2026
[2026-08-31 10:44:31,961.961 INFO    ] ================================================
[2026-08-31 10:44:32,562.562 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:44:32
[2026-08-31 10:44:33,213.213 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:44:33,507.507 INFO    ] Initializing speech engine...
[2026-08-31 10:44:33,515.515 INFO    ] 2026-08-31 10:44:33
[2026-08-31 10:44:33,784.784 INFO    ] 2026-08-31 10:44:33
[2026-08-31 10:44:33,838.838 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:44:34,062.062 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:44:34,072.072 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:44:34,216.216 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:44:34,282.282 INFO    ] time= 31/08/2026 10:44:34
[2026-08-31 10:44:34,333.333 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:44:34,340.340 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:44:34,454.454 INFO    ] No existing commands found in stream
[2026-08-31 10:44:39,482.482 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:44:39,485.485 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-08-31 10:44:43,407.407 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 10:44:43,410.410 INFO    ] Checking for system updates...
[2026-08-31 10:44:43,450.450 INFO    ] 200
[2026-08-31 10:44:43,453.453 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:44:43,506.506 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:44:43,508.508 INFO    ] No update needed
[2026-08-31 10:44:43,511.511 INFO    ] Checking for camera pi updates...
[2026-08-31 10:44:43,545.545 INFO    ] 200
[2026-08-31 10:44:43,547.547 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:44:43,588.588 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:44:43,670.670 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:44:43,673.673 INFO    ] No camera update needed
[2026-08-31 10:44:43,675.675 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:44:43,677.677 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:44:43,683.683 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:44:43,688.688 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:44:45,727.727 INFO    ] ================================================
[2026-08-31 10:44:45,743.743 INFO    ] Launching Daemon at Mon Aug 31 10:44:45 IST 2026
[2026-08-31 10:44:45,754.754 INFO    ] ================================================
[2026-08-31 10:44:46,325.325 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:44:46
[2026-08-31 10:44:46,955.955 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:44:47,249.249 INFO    ] Initializing speech engine...
[2026-08-31 10:44:47,257.257 INFO    ] 2026-08-31 10:44:47
[2026-08-31 10:44:47,539.539 INFO    ] 2026-08-31 10:44:47
[2026-08-31 10:44:47,583.583 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:44:47,864.864 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:44:47,875.875 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:44:48,068.068 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:44:48,086.086 INFO    ] time= 31/08/2026 10:44:48
[2026-08-31 10:44:48,097.097 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:44:48,122.122 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:44:48,229.229 INFO    ] No existing commands found in stream
[2026-08-31 10:44:53,253.253 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:44:53,256.256 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-08-31 10:44:56,907.907 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 10:44:56,910.910 INFO    ] Checking for system updates...
[2026-08-31 10:44:56,947.947 INFO    ] 200
[2026-08-31 10:44:56,950.950 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:44:57,002.002 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:44:57,004.004 INFO    ] No update needed
[2026-08-31 10:44:57,006.006 INFO    ] Checking for camera pi updates...
[2026-08-31 10:44:57,042.042 INFO    ] 200
[2026-08-31 10:44:57,045.045 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:44:57,088.088 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:44:57,169.169 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 10:44:57,172.172 INFO    ] No camera update needed
[2026-08-31 10:44:57,174.174 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:44:57,176.176 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:44:57,182.182 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:44:57,186.186 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:44:59,226.226 INFO    ] ================================================
[2026-08-31 10:44:59,241.241 INFO    ] Launching Daemon at Mon Aug 31 10:44:59 IST 2026
[2026-08-31 10:44:59,252.252 INFO    ] ================================================
[2026-08-31 10:44:59,830.830 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:44:59
[2026-08-31 10:45:00,427.427 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:45:00,717.717 INFO    ] Initializing speech engine...
[2026-08-31 10:45:00,722.722 INFO    ] 2026-08-31 10:45:00
[2026-08-31 10:45:00,988.988 INFO    ] 2026-08-31 10:45:00
[2026-08-31 10:45:01,024.024 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:45:01,218.218 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:45:01,230.230 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:45:01,397.397 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:45:01,409.409 INFO    ] time= 31/08/2026 10:45:01
[2026-08-31 10:45:01,424.424 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:45:01,435.435 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:45:01,538.538 INFO    ] No existing commands found in stream
[2026-08-31 10:45:06,559.559 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:45:06,562.562 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-08-31 10:45:10,845.845 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 10:45:10,848.848 INFO    ] Checking for system updates...
[2026-08-31 10:45:10,884.884 INFO    ] 200
[2026-08-31 10:45:10,886.886 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:45:10,944.944 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:45:10,946.946 INFO    ] No update needed
[2026-08-31 10:45:10,949.949 INFO    ] Checking for camera pi updates...
[2026-08-31 10:45:10,983.983 INFO    ] 200
[2026-08-31 10:45:10,986.986 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:45:11,032.032 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:45:11,111.111 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:45:11,114.114 INFO    ] No camera update needed
[2026-08-31 10:45:11,117.117 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:45:11,120.120 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:45:11,126.126 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:45:11,132.132 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:45:13,172.172 INFO    ] ================================================
[2026-08-31 10:45:13,188.188 INFO    ] Launching Daemon at Mon Aug 31 10:45:13 IST 2026
[2026-08-31 10:45:13,199.199 INFO    ] ================================================
[2026-08-31 10:45:13,837.837 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:45:13
[2026-08-31 10:45:14,488.488 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:45:14,786.786 INFO    ] Initializing speech engine...
[2026-08-31 10:45:14,800.800 INFO    ] 2026-08-31 10:45:14
[2026-08-31 10:45:15,107.107 INFO    ] 2026-08-31 10:45:15
[2026-08-31 10:45:15,192.192 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:45:15,405.405 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:45:15,413.413 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:45:15,580.580 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:45:15,611.611 INFO    ] time= 31/08/2026 10:45:15
[2026-08-31 10:45:15,628.628 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:45:15,638.638 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:45:15,763.763 INFO    ] No existing commands found in stream
[2026-08-31 10:45:17,435.435 INFO    ] Received new command: ID=1788153317355-0
[2026-08-31 10:45:17,447.447 INFO    ] process_and_cleanup_command: msg_id=1788153317355-0
[2026-08-31 10:45:17,468.468 INFO    ] is_command_expired: timestamp=2026-08-31T05:15:15.706Z, expiry=30s
[2026-08-31 10:45:17,572.572 INFO    ] Command removed from stream: 1788153317355-0. returning for processing...
[2026-08-31 10:45:17,597.597 INFO    ] ***** get_valid_command
[2026-08-31 10:45:17,644.644 INFO    ] {'timestamp': '2026-08-31T05:15:15.706Z', 'command': 'start-order', 'source': 'webapp', 'data': '{"request_id":"start-order-1788153315706-o7o4cqs7w","orderId":"TM08202202260831104507468","is_vending":false}', 'timeout': '10'}
[2026-08-31 10:45:17,682.682 INFO    ] ***** Parsed command data: {'request_id': 'start-order-1788153315706-o7o4cqs7w', 'is_vending': False, 'orderId': 'TM08202202260831104507468'}
[2026-08-31 10:45:17,692.692 INFO    ] Handling start order...
[2026-08-31 10:45:17,701.701 INFO    ] handle_start_order_command
[2026-08-31 10:45:17,743.743 INFO    ] _send_start_order_success: request_id=start-order-1788153315706-o7o4cqs7w, order_id=TM08202202260831104507468
[2026-08-31 10:45:17,754.754 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM08202202
[2026-08-31 10:45:17,918.918 INFO    ] [_send_start_order_success] Message added to stream with ID: 1788153317818-0
[2026-08-31 10:45:17,975.975 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-08-31 10:45:17,987.987 INFO    ] Checking for system updates...
[2026-08-31 10:45:18,057.057 INFO    ] 200
[2026-08-31 10:45:18,066.066 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:45:18,120.120 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:45:18,123.123 INFO    ] No update needed
[2026-08-31 10:45:18,126.126 INFO    ] Checking for camera pi updates...
[2026-08-31 10:45:18,160.160 INFO    ] 200
[2026-08-31 10:45:18,163.163 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:45:18,204.204 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 10:45:18,273.273 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 10:45:18,276.276 INFO    ] No camera update needed
[2026-08-31 10:45:18,279.279 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:45:18,282.282 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:45:18,288.288 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:45:18,293.293 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:45:20,334.334 INFO    ] ================================================
[2026-08-31 10:45:20,350.350 INFO    ] Launching Daemon at Mon Aug 31 10:45:20 IST 2026
[2026-08-31 10:45:20,360.360 INFO    ] ================================================
[2026-08-31 10:45:20,927.927 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:45:20
[2026-08-31 10:45:21,530.530 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:45:21,809.809 INFO    ] Initializing speech engine...
[2026-08-31 10:45:21,824.824 INFO    ] 2026-08-31 10:45:21
[2026-08-31 10:45:22,089.089 INFO    ] 2026-08-31 10:45:22
[2026-08-31 10:45:22,125.125 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:45:22,326.326 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:45:22,336.336 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:45:22,491.491 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:45:22,496.496 INFO    ] time= 31/08/2026 10:45:22
[2026-08-31 10:45:22,502.502 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:45:22,524.524 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:45:22,660.660 INFO    ] Found 2 existing command(s) in stream
[2026-08-31 10:45:22,719.719 INFO    ] Checking historical command: ID=1788153317818-0
[2026-08-31 10:45:22,726.726 INFO    ] process_and_cleanup_command: msg_id=1788153317818-0
[2026-08-31 10:45:22,743.743 INFO    ] is_command_expired: timestamp=2026-08-31T05:15:17.749386Z, expiry=30s
[2026-08-31 10:45:22,920.920 INFO    ] Command removed from stream: 1788153317818-0. returning for processing...
[2026-08-31 10:45:22,963.963 INFO    ] ***** get_valid_command
[2026-08-31 10:45:23,023.023 INFO    ] {'metadata_order_id': 'TM08202202260831104507468', 'status': 'success', 'message_type': 'command_response', 'message': 'start-order success', 'imei': 'TM08202202', 'metadata_request_id': 'start-order-1788153315706-o7o4cqs7w', 'timestamp': '2026-08-31T05:15:17.749386Z'}
[2026-08-31 10:45:23,054.054 INFO    ] Checking historical command: ID=1788153319333-0
[2026-08-31 10:45:23,110.110 INFO    ] process_and_cleanup_command: msg_id=1788153319333-0
[2026-08-31 10:45:23,164.164 INFO    ] is_command_expired: timestamp=2026-08-31T05:15:17.747Z, expiry=30s
[2026-08-31 10:45:23,265.265 INFO    ] Command removed from stream: 1788153319333-0. returning for processing...
[2026-08-31 10:45:23,268.268 INFO    ] ***** get_valid_command
[2026-08-31 10:45:23,271.271 INFO    ] {'data': '{"request_id":"process-order-1788153317747-6lxdvaf1o","orderId":"TM08202202260831104507468","is_vending":false,"accessCode":"95061276"}', 'timeout': '60', 'source': 'webapp', 'timestamp': '2026-08-31T05:15:17.747Z', 'command': 'process-order'}
[2026-08-31 10:45:23,274.274 INFO    ] ***** Parsed command data: {'orderId': 'TM08202202260831104507468', 'accessCode': '95061276', 'request_id': 'process-order-1788153317747-6lxdvaf1o', 'is_vending': False}
[2026-08-31 10:45:23,277.277 INFO    ] Handling process order...
[2026-08-31 10:45:23,332.332 INFO    ] Processing process-order command...
[2026-08-31 10:45:23,416.416 INFO    ] 🔍 Lock file Order ID: TM08202202260831104507468, TS: 2026-08-31 10:45:17
[2026-08-31 10:45:23,439.439 INFO    ] ✅ Order lock valid for TM08202202260831104507468
[2026-08-31 10:45:23,443.443 INFO    ] Received access code in process-order, skipping PHP API call
[2026-08-31 10:45:23,481.481 INFO    ] processing access code 95061276 for order TM08202202260831104507468
[2026-08-31 10:45:23,502.502 INFO    ] 🔍 Lock file Order ID: TM08202202260831104507468, TS: 2026-08-31 10:45:17
[2026-08-31 10:45:23,506.506 INFO    ] ✅ Order lock valid for TM08202202260831104507468
[2026-08-31 10:45:23,560.560 INFO    ] 2026-08-31 10:45:23
[2026-08-31 10:45:23,614.614 INFO    ] 200
[2026-08-31 10:45:23,617.617 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 10:45:23,620.620 INFO    ] 95061276
[2026-08-31 10:45:23,623.623 INFO    ] 2026-08-31 10:45:23
[2026-08-31 10:45:23,682.682 INFO    ] session id :104065343
[2026-08-31 10:45:23,726.726 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=95061276&imei=TM08202202&session_id=104065343
[2026-08-31 10:45:24,940.940 INFO    ] 200
[2026-08-31 10:45:24,977.977 INFO    ] {"msg": "Order Data", "data": {"access_code": "95061276", "invoice_bill": "10", "mobile": "9900883623", "order_id": "TM08202202260831104507468", "bill_amount": "10", "proposed_sku_json": [{"qty": 1, "offer_desc": "", "image_url": "https://images.tinymart.in/product/4500709-2651.webp", "sku_total": 10, "mrp": "10", "tray_id": "20", "name": "McVities Butter Jeera Cookies58gm", "offer_id": "", "skuid": "4500709", "unit_price": 10, "door_id": "1"}]}, "status": true, "rstatus": true}
[2026-08-31 10:45:24,982.982 INFO    ] 10
[2026-08-31 10:45:24,991.991 INFO    ] TM08202202260831104507468
[2026-08-31 10:45:25,001.001 INFO    ] 9900883623
[2026-08-31 10:45:25,012.012 INFO    ] 2026-08-31 10:45:25
[2026-08-31 10:45:25,019.019 INFO    ] Door Opening for user mobile ending with  three six two three 
[2026-08-31 10:45:25,052.052 INFO    ] Door Opening for user mobile ending with  three six two three 
[2026-08-31 10:45:25,060.060 INFO    ] 7d4435c8ba53f98ea5108ccb5c26864b
[2026-08-31 10:45:25,083.083 INFO    ] 2026-08-31 10:45:25
[2026-08-31 10:45:25,090.090 INFO    ] playing audio file
[2026-08-31 10:45:25,112.112 INFO    ] 2026-08-31 10:45:25
[2026-08-31 10:45:25,122.122 INFO    ] 2026-08-31 10:45:25
[2026-08-31 10:45:25,131.131 INFO    ] publish_status: order_id=TM08202202260831104507468
[2026-08-31 10:45:25,158.158 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831104507468
[2026-08-31 10:45:25,285.285 INFO    ] [publish_status] Message added to stream with ID: 1788153325194-0
[2026-08-31 10:45:25,320.320 INFO    ] Published to order:TM08202202260831104507468: {'order_id': 'TM08202202260831104507468', 'server_response': '{"rstatus": true, "data": {"bill_amount": "10", "proposed_sku_json": [{"name": "McVities Butter Jeera Cookies58gm", "offer_id": "", "skuid": "4500709", "unit_price": 10, "image_url": "https://images.tinymart.in/product/4500709-2651.webp", "door_id": "1", "tray_id": "20", "offer_desc": "", "sku_total": 10, "qty": 1, "mrp": "10"}], "invoice_bill": "10", "order_id": "TM08202202260831104507468", "mobile": "9900883623", "access_code": "95061276"}, "msg": "Order Data", "status": true}', 'timestamp': '2026-08-31T05:15:25.125681Z', 'server_status': 'order-started'} (ID: 1788153325194-0)
[2026-08-31 10:45:25,859.859 INFO    ] {'order_id': 'TM08202202260831104507468', 'server_response': {'rstatus': True, 'data': {'bill_amount': '10', 'proposed_sku_json': [{'name': 'McVities Butter Jeera Cookies58gm', 'offer_id': '', 'skuid': '4500709', 'unit_price': 10, 'image_url': 'https://images.tinymart.in/product/4500709-2651.webp', 'door_id': '1', 'tray_id': '20', 'offer_desc': '', 'sku_total': 10, 'qty': 1, 'mrp': '10'}], 'invoice_bill': '10', 'order_id': 'TM08202202260831104507468', 'mobile': '9900883623', 'access_code': '95061276'}, 'msg': 'Order Data', 'status': True}, 'server_status': 'order-started'}
[2026-08-31 10:45:25,862.862 INFO    ] 200
[2026-08-31 10:45:25,864.864 INFO    ] {"data":{"order_id":"TM08202202260831104507468","server_response":{"rstatus":true,"data":{"bill_amount":"10","proposed_sku_json":[{"name":"McVities Butter Jeera Cookies58gm","offer_id":"","skuid":"4500709","unit_price":10,"image_url":"https:\/\/images.tinymart.in\/product\/4500709-2651.webp","door_id":"1","tray_id":"20","offer_desc":"","sku_total":10,"qty":1,"mrp":"10"}],"invoice_bill":"10","order_id":"TM08202202260831104507468","mobile":"9900883623","access_code":"95061276"},"msg":"Order Data","status":true},"server_status":"order-started"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 10:45:25,867.867 INFO    ] {'data': {'order_id': 'TM08202202260831104507468', 'server_response': {'msg': 'Order Data', 'data': {'bill_amount': '10', 'proposed_sku_json': [{'name': 'McVities Butter Jeera Cookies58gm', 'offer_id': '', 'mrp': '10', 'qty': 1, 'image_url': 'https://images.tinymart.in/product/4500709-2651.webp', 'door_id': '1', 'tray_id': '20', 'offer_desc': '', 'sku_total': 10, 'skuid': '4500709', 'unit_price': 10}], 'invoice_bill': '10', 'order_id': 'TM08202202260831104507468', 'mobile': '9900883623', 'access_code': '95061276'}, 'rstatus': True, 'status': True}, 'server_status': 'order-started'}, 'response': {'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'status': True}}
[2026-08-31 10:45:25,870.870 INFO    ] 2026-08-31 10:45:25
[2026-08-31 10:45:25,920.920 INFO    ] 200
[2026-08-31 10:45:25,923.923 INFO    ] True
[2026-08-31 10:45:26,099.099 INFO    ] 200
[2026-08-31 10:45:26,102.102 INFO    ] {"SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "voiceNote": "Please Wait", "SectionMain": {"Header": "Processing Order"}, "SectionStatus": {"Note": "", "UI_Header": "", "SubHeader": "Please wait while we process your order", "Header": " Your order is under process  "}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 10:45:26,106.106 INFO    ] {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'SectionMain': {'Header': 'Processing Order'}, 'voiceNote': 'Please Wait', 'SectionStatus': {'Header': ' Your order is under process  ', 'UI_Header': '', 'Note': '', 'SubHeader': 'Please wait while we process your order'}}
[2026-08-31 10:45:26,109.109 INFO    ] *** process_order ***
[2026-08-31 10:45:27,285.285 INFO    ] 200
[2026-08-31 10:45:27,288.288 INFO    ] {"SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "voiceNote": "Please Wait", "SectionMain": {"Header": "Processing Order"}, "SectionStatus": {"Note": "", "UI_Header": "", "SubHeader": "Please wait while we process your order", "Header": " Your order is under process  "}, "delay": 0, "status": "True", "rstatus": true}
[2026-08-31 10:45:27,293.293 INFO    ] {'delay': 0, 'rstatus': True, 'status': 'True', 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'SectionMain': {'Header': 'Processing Order'}, 'voiceNote': 'Please Wait', 'SectionStatus': {'Header': ' Your order is under process  ', 'UI_Header': '', 'Note': '', 'SubHeader': 'Please wait while we process your order'}}
[2026-08-31 10:45:27,295.295 INFO    ] *** process_order ***
[2026-08-31 10:45:27,298.298 INFO    ] publish_status: order_id=TM08202202260831104507468
[2026-08-31 10:45:27,301.301 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831104507468
[2026-08-31 10:45:27,396.396 INFO    ] [publish_status] Message added to stream with ID: 1788153327336-0
[2026-08-31 10:45:27,399.399 INFO    ] Published to order:TM08202202260831104507468: {'order_id': 'TM08202202260831104507468', 'server_response': '{"delay": 0, "rstatus": true, "status": "True", "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "SectionStatus": {"Header": " Your order is under process  ", "UI_Header": "", "Note": "", "SubHeader": "You can pull the door now."}, "voiceNote": "Door is open...", "SectionMain": {"Header": "Processing Order"}}', 'server_status': 'doorOpened'} (ID: 1788153327336-0)
[2026-08-31 10:45:28,464.464 INFO    ] 2026-08-31 10:45:28
[2026-08-31 10:45:28,468.468 INFO    ] publish_status: order_id=TM08202202260831104507468
[2026-08-31 10:45:28,471.471 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831104507468
[2026-08-31 10:45:28,568.568 INFO    ] [publish_status] Message added to stream with ID: 1788153328520-0
[2026-08-31 10:45:28,571.571 INFO    ] Published to order:TM08202202260831104507468: {'order_id': 'TM08202202260831104507468', 'server_response': '{"delay": 0, "rstatus": true, "status": "True", "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "SectionMain": {"Header": "Processing Order"}, "voiceNote": "Please Wait", "SectionStatus": {"Header": " Your order is under process  ", "UI_Header": "", "Note": "", "SubHeader": "Please wait while we process your order"}}', 'timestamp': '2026-08-31T05:15:28.465997Z', 'server_status': 'processOrder'} (ID: 1788153328520-0)
[2026-08-31 10:45:28,740.740 INFO    ] {'order_id': 'TM08202202260831104507468', 'server_response': {'delay': 0, 'rstatus': True, 'status': 'True', 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'SectionMain': {'Header': 'Processing Order'}, 'voiceNote': 'Please Wait', 'SectionStatus': {'Header': ' Your order is under process  ', 'UI_Header': '', 'Note': '', 'SubHeader': 'Please wait while we process your order'}}, 'server_status': 'processOrder'}
[2026-08-31 10:45:28,743.743 INFO    ] 200
[2026-08-31 10:45:28,745.745 INFO    ] {"data":{"order_id":"TM08202202260831104507468","server_response":{"delay":0,"rstatus":true,"status":"true","SectionSKU":{"Header":"Thank you for bearing with us :)","skus":[]},"SectionMain":{"Header":"Processing Order"},"voiceNote":"Please Wait","SectionStatus":{"Header":" Your order is under process  ","UI_Header":"","Note":"","SubHeader":"Please wait while we process your order"}},"server_status":"processOrder"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 10:45:28,749.749 INFO    ] {'data': {'order_id': 'TM08202202260831104507468', 'server_response': {'delay': 0, 'rstatus': True, 'status': 'true', 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'SectionStatus': {'Header': ' Your order is under process  ', 'UI_Header': '', 'Note': '', 'SubHeader': 'Please wait while we process your order'}, 'voiceNote': 'Please Wait', 'SectionMain': {'Header': 'Processing Order'}}, 'server_status': 'processOrder'}, 'response': {'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'status': True}}
[2026-08-31 10:45:28,753.753 INFO    ] 2026-08-31 10:45:28
[2026-08-31 10:45:28,756.756 INFO    ] None
[2026-08-31 10:45:28,760.760 INFO    ] Opening Door now
[2026-08-31 10:45:28,763.763 INFO    ] Opening Door now
[2026-08-31 10:45:28,767.767 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-08-31 10:45:28,770.770 INFO    ] 2026-08-31 10:45:28
[2026-08-31 10:45:28,773.773 INFO    ] playing audio file
[2026-08-31 10:45:28,793.793 INFO    ] 2026-08-31 10:45:28
[2026-08-31 10:45:28,797.797 INFO    ] 2026-08-31 10:45:28
[2026-08-31 10:45:31,874.874 INFO    ] 200
[2026-08-31 10:45:31,878.878 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Door 1 is open now", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 10:45:31,882.882 INFO    ] {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Door 1 is open now', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}
[2026-08-31 10:45:34,973.973 INFO    ] 200
[2026-08-31 10:45:34,977.977 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 10:45:34,981.981 INFO    ] {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}
[2026-08-31 10:45:38,043.043 INFO    ] 200
[2026-08-31 10:45:38,046.046 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 10:45:38,049.049 INFO    ] Please close door 1
[2026-08-31 10:45:38,052.052 INFO    ] Please close door 1
[2026-08-31 10:45:38,056.056 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-08-31 10:45:38,059.059 INFO    ] 2026-08-31 10:45:38
[2026-08-31 10:45:38,061.061 INFO    ] playing audio file
[2026-08-31 10:45:38,080.080 INFO    ] 2026-08-31 10:45:38
[2026-08-31 10:45:38,084.084 INFO    ] publish_status: order_id=TM08202202260831104507468
[2026-08-31 10:45:38,087.087 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831104507468
[2026-08-31 10:45:38,196.196 INFO    ] [publish_status] Message added to stream with ID: 1788153338138-0
[2026-08-31 10:45:38,199.199 INFO    ] Published to order:TM08202202260831104507468: {'order_id': 'TM08202202260831104507468', 'server_response': '{"rstatus": false, "status": "False", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "McVities Butter Jeera Cookies58gm", "qty": 1}]}, "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 1", "SectionStatus": {"Header": "Please Close Door 1", "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"}}', 'timestamp': '2026-08-31T05:15:38.081948Z', 'server_status': 'OrderStatus'} (ID: 1788153338138-0)
[2026-08-31 10:45:38,825.825 INFO    ] {'order_id': 'TM08202202260831104507468', 'server_response': {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}, 'server_status': 'OrderStatus'}
[2026-08-31 10:45:38,827.827 INFO    ] 200
[2026-08-31 10:45:38,830.830 INFO    ] {"data":{"order_id":"TM08202202260831104507468","server_response":{"rstatus":false,"status":"false","error":{"data":[],"code":20001,"umessage":"In Progress","tmessage":"In Progress"},"SectionSKU":{"Header":"Pick the below items from the door","skus":[{"name":"McVities Butter Jeera Cookies58gm","qty":1}]},"SectionMain":{"Header":"Door Open"},"voiceNote":"Please close door 1","SectionStatus":{"Header":"Please Close Door 1","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"}},"server_status":"OrderStatus"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 10:45:38,833.833 INFO    ] {'data': {'order_id': 'TM08202202260831104507468', 'server_response': {'rstatus': False, 'status': 'false', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'error': {'data': [], 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionStatus': {'Header': 'Please Close Door 1', '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'}, 'voiceNote': 'Please close door 1', 'SectionMain': {'Header': 'Door Open'}}, 'server_status': 'OrderStatus'}, 'response': {'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'status': True}}
[2026-08-31 10:45:38,836.836 INFO    ] {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}
[2026-08-31 10:45:41,899.899 INFO    ] 200
[2026-08-31 10:45:41,902.902 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 10:45:41,905.905 INFO    ] {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}
[2026-08-31 10:45:45,030.030 INFO    ] 200
[2026-08-31 10:45:45,032.032 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 10:45:45,035.035 INFO    ] {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}
[2026-08-31 10:45:48,096.096 INFO    ] 200
[2026-08-31 10:45:48,099.099 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 10:45:48,102.102 INFO    ] Please close door 1
[2026-08-31 10:45:48,104.104 INFO    ] Please close door 1
[2026-08-31 10:45:48,106.106 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-08-31 10:45:48,109.109 INFO    ] 2026-08-31 10:45:48
[2026-08-31 10:45:48,111.111 INFO    ] playing audio file
[2026-08-31 10:45:48,129.129 INFO    ] 2026-08-31 10:45:48
[2026-08-31 10:45:48,132.132 INFO    ] publish_status: order_id=TM08202202260831104507468
[2026-08-31 10:45:48,135.135 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831104507468
[2026-08-31 10:45:48,235.235 INFO    ] [publish_status] Message added to stream with ID: 1788153348177-0
[2026-08-31 10:45:48,239.239 INFO    ] Published to order:TM08202202260831104507468: {'order_id': 'TM08202202260831104507468', 'server_response': '{"rstatus": false, "status": "False", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "McVities Butter Jeera Cookies58gm", "qty": 1}]}, "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 1", "SectionStatus": {"Header": "Please Close Door 1", "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"}}', 'timestamp': '2026-08-31T05:15:48.130843Z', 'server_status': 'OrderStatus'} (ID: 1788153348177-0)
[2026-08-31 10:45:48,812.812 INFO    ] {'order_id': 'TM08202202260831104507468', 'server_response': {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}, 'server_status': 'OrderStatus'}
[2026-08-31 10:45:48,815.815 INFO    ] 200
[2026-08-31 10:45:48,818.818 INFO    ] {"data":{"order_id":"TM08202202260831104507468","server_response":{"rstatus":false,"status":"false","error":{"data":[],"code":20001,"umessage":"In Progress","tmessage":"In Progress"},"SectionSKU":{"Header":"Pick the below items from the door","skus":[{"name":"McVities Butter Jeera Cookies58gm","qty":1}]},"SectionMain":{"Header":"Door Open"},"voiceNote":"Please close door 1","SectionStatus":{"Header":"Please Close Door 1","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"}},"server_status":"OrderStatus"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 10:45:48,821.821 INFO    ] {'data': {'order_id': 'TM08202202260831104507468', 'server_response': {'rstatus': False, 'status': 'false', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'error': {'data': [], 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionStatus': {'Header': 'Please Close Door 1', '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'}, 'voiceNote': 'Please close door 1', 'SectionMain': {'Header': 'Door Open'}}, 'server_status': 'OrderStatus'}, 'response': {'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'status': True}}
[2026-08-31 10:45:48,824.824 INFO    ] {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}
[2026-08-31 10:45:51,936.936 INFO    ] 200
[2026-08-31 10:45:51,939.939 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 10:45:51,942.942 INFO    ] {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}
[2026-08-31 10:45:55,017.017 INFO    ] 200
[2026-08-31 10:45:55,020.020 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 10:45:55,023.023 INFO    ] {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}
[2026-08-31 10:45:58,112.112 INFO    ] 200
[2026-08-31 10:45:58,115.115 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 10:45:58,118.118 INFO    ] Please close door 1
[2026-08-31 10:45:58,120.120 INFO    ] Please close door 1
[2026-08-31 10:45:58,123.123 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-08-31 10:45:58,126.126 INFO    ] 2026-08-31 10:45:58
[2026-08-31 10:45:58,128.128 INFO    ] playing audio file
[2026-08-31 10:45:58,146.146 INFO    ] 2026-08-31 10:45:58
[2026-08-31 10:45:58,149.149 INFO    ] publish_status: order_id=TM08202202260831104507468
[2026-08-31 10:45:58,152.152 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831104507468
[2026-08-31 10:45:58,274.274 INFO    ] [publish_status] Message added to stream with ID: 1788153358224-0
[2026-08-31 10:45:58,283.283 INFO    ] Published to order:TM08202202260831104507468: {'order_id': 'TM08202202260831104507468', 'server_response': '{"rstatus": false, "status": "False", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "McVities Butter Jeera Cookies58gm", "qty": 1}]}, "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 1", "SectionStatus": {"Header": "Please Close Door 1", "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"}}', 'timestamp': '2026-08-31T05:15:58.147762Z', 'server_status': 'OrderStatus'} (ID: 1788153358224-0)
[2026-08-31 10:45:58,856.856 INFO    ] {'order_id': 'TM08202202260831104507468', 'server_response': {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}, 'server_status': 'OrderStatus'}
[2026-08-31 10:45:58,860.860 INFO    ] 200
[2026-08-31 10:45:58,862.862 INFO    ] {"data":{"order_id":"TM08202202260831104507468","server_response":{"rstatus":false,"status":"false","error":{"data":[],"code":20001,"umessage":"In Progress","tmessage":"In Progress"},"SectionSKU":{"Header":"Pick the below items from the door","skus":[{"name":"McVities Butter Jeera Cookies58gm","qty":1}]},"SectionMain":{"Header":"Door Open"},"voiceNote":"Please close door 1","SectionStatus":{"Header":"Please Close Door 1","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"}},"server_status":"OrderStatus"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 10:45:58,865.865 INFO    ] {'data': {'order_id': 'TM08202202260831104507468', 'server_response': {'rstatus': False, 'status': 'false', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'error': {'data': [], 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionStatus': {'Header': 'Please Close Door 1', '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'}, 'voiceNote': 'Please close door 1', 'SectionMain': {'Header': 'Door Open'}}, 'server_status': 'OrderStatus'}, 'response': {'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'status': True}}
[2026-08-31 10:45:58,868.868 INFO    ] {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}
[2026-08-31 10:46:01,999.999 INFO    ] 200
[2026-08-31 10:46:02,003.003 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 10:46:02,036.036 INFO    ] {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}
[2026-08-31 10:46:05,156.156 INFO    ] 200
[2026-08-31 10:46:05,159.159 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 10:46:05,163.163 INFO    ] {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}
[2026-08-31 10:46:08,366.366 INFO    ] 200
[2026-08-31 10:46:08,369.369 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 10:46:08,372.372 INFO    ] Please close door 1
[2026-08-31 10:46:08,374.374 INFO    ] Please close door 1
[2026-08-31 10:46:08,377.377 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-08-31 10:46:08,380.380 INFO    ] 2026-08-31 10:46:08
[2026-08-31 10:46:08,383.383 INFO    ] playing audio file
[2026-08-31 10:46:08,400.400 INFO    ] 2026-08-31 10:46:08
[2026-08-31 10:46:08,404.404 INFO    ] publish_status: order_id=TM08202202260831104507468
[2026-08-31 10:46:08,407.407 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831104507468
[2026-08-31 10:46:08,490.490 INFO    ] [publish_status] Message added to stream with ID: 1788153368434-0
[2026-08-31 10:46:08,492.492 INFO    ] Published to order:TM08202202260831104507468: {'order_id': 'TM08202202260831104507468', 'server_response': '{"rstatus": false, "status": "False", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "McVities Butter Jeera Cookies58gm", "qty": 1}]}, "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 1", "SectionStatus": {"Header": "Please Close Door 1", "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"}}', 'timestamp': '2026-08-31T05:16:08.402045Z', 'server_status': 'OrderStatus'} (ID: 1788153368434-0)
[2026-08-31 10:46:09,091.091 INFO    ] {'order_id': 'TM08202202260831104507468', 'server_response': {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}, 'server_status': 'OrderStatus'}
[2026-08-31 10:46:09,094.094 INFO    ] 200
[2026-08-31 10:46:09,097.097 INFO    ] {"data":{"order_id":"TM08202202260831104507468","server_response":{"rstatus":false,"status":"false","error":{"data":[],"code":20001,"umessage":"In Progress","tmessage":"In Progress"},"SectionSKU":{"Header":"Pick the below items from the door","skus":[{"name":"McVities Butter Jeera Cookies58gm","qty":1}]},"SectionMain":{"Header":"Door Open"},"voiceNote":"Please close door 1","SectionStatus":{"Header":"Please Close Door 1","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"}},"server_status":"OrderStatus"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 10:46:09,100.100 INFO    ] {'data': {'order_id': 'TM08202202260831104507468', 'server_response': {'rstatus': False, 'status': 'false', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'error': {'data': [], 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionStatus': {'Header': 'Please Close Door 1', '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'}, 'voiceNote': 'Please close door 1', 'SectionMain': {'Header': 'Door Open'}}, 'server_status': 'OrderStatus'}, 'response': {'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'status': True}}
[2026-08-31 10:46:09,104.104 INFO    ] {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}
[2026-08-31 10:46:12,167.167 INFO    ] 200
[2026-08-31 10:46:12,170.170 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 10:46:12,173.173 INFO    ] {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}
[2026-08-31 10:46:15,223.223 INFO    ] 200
[2026-08-31 10:46:15,225.225 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 10:46:15,228.228 INFO    ] {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}
[2026-08-31 10:46:18,283.283 INFO    ] 200
[2026-08-31 10:46:18,285.285 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 10:46:18,288.288 INFO    ] Please close door 1
[2026-08-31 10:46:18,291.291 INFO    ] Please close door 1
[2026-08-31 10:46:18,293.293 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-08-31 10:46:18,302.302 INFO    ] 2026-08-31 10:46:18
[2026-08-31 10:46:18,305.305 INFO    ] playing audio file
[2026-08-31 10:46:18,339.339 INFO    ] 2026-08-31 10:46:18
[2026-08-31 10:46:18,342.342 INFO    ] publish_status: order_id=TM08202202260831104507468
[2026-08-31 10:46:18,345.345 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831104507468
[2026-08-31 10:46:18,443.443 INFO    ] [publish_status] Message added to stream with ID: 1788153378387-0
[2026-08-31 10:46:18,447.447 INFO    ] Published to order:TM08202202260831104507468: {'order_id': 'TM08202202260831104507468', 'server_response': '{"rstatus": false, "status": "False", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "McVities Butter Jeera Cookies58gm", "qty": 1}]}, "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 1", "SectionStatus": {"Header": "Please Close Door 1", "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"}}', 'timestamp': '2026-08-31T05:16:18.341162Z', 'server_status': 'OrderStatus'} (ID: 1788153378387-0)
[2026-08-31 10:46:19,009.009 INFO    ] {'order_id': 'TM08202202260831104507468', 'server_response': {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}, 'server_status': 'OrderStatus'}
[2026-08-31 10:46:19,012.012 INFO    ] 200
[2026-08-31 10:46:19,015.015 INFO    ] {"data":{"order_id":"TM08202202260831104507468","server_response":{"rstatus":false,"status":"false","error":{"data":[],"code":20001,"umessage":"In Progress","tmessage":"In Progress"},"SectionSKU":{"Header":"Pick the below items from the door","skus":[{"name":"McVities Butter Jeera Cookies58gm","qty":1}]},"SectionMain":{"Header":"Door Open"},"voiceNote":"Please close door 1","SectionStatus":{"Header":"Please Close Door 1","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"}},"server_status":"OrderStatus"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 10:46:19,023.023 INFO    ] {'data': {'order_id': 'TM08202202260831104507468', 'server_response': {'rstatus': False, 'status': 'false', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'error': {'data': [], 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionStatus': {'Header': 'Please Close Door 1', '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'}, 'voiceNote': 'Please close door 1', 'SectionMain': {'Header': 'Door Open'}}, 'server_status': 'OrderStatus'}, 'response': {'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'status': True}}
[2026-08-31 10:46:19,026.026 INFO    ] {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}
[2026-08-31 10:46:22,089.089 INFO    ] 200
[2026-08-31 10:46:22,092.092 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 10:46:22,096.096 INFO    ] {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}
[2026-08-31 10:46:25,166.166 INFO    ] 200
[2026-08-31 10:46:25,170.170 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 10:46:25,173.173 INFO    ] {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}
[2026-08-31 10:46:28,293.293 INFO    ] 200
[2026-08-31 10:46:28,296.296 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 10:46:28,299.299 INFO    ] Please close door 1
[2026-08-31 10:46:28,302.302 INFO    ] Please close door 1
[2026-08-31 10:46:28,304.304 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-08-31 10:46:28,308.308 INFO    ] 2026-08-31 10:46:28
[2026-08-31 10:46:28,310.310 INFO    ] playing audio file
[2026-08-31 10:46:28,328.328 INFO    ] 2026-08-31 10:46:28
[2026-08-31 10:46:28,333.333 INFO    ] publish_status: order_id=TM08202202260831104507468
[2026-08-31 10:46:28,341.341 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831104507468
[2026-08-31 10:46:29,645.645 INFO    ] [publish_status] Message added to stream with ID: 1788153389596-0
[2026-08-31 10:46:29,648.648 INFO    ] Published to order:TM08202202260831104507468: {'order_id': 'TM08202202260831104507468', 'server_response': '{"rstatus": false, "status": "False", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "McVities Butter Jeera Cookies58gm", "qty": 1}]}, "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 1", "SectionStatus": {"Header": "Please Close Door 1", "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"}}', 'timestamp': '2026-08-31T05:16:28.330252Z', 'server_status': 'OrderStatus'} (ID: 1788153389596-0)
[2026-08-31 10:46:30,256.256 INFO    ] {'order_id': 'TM08202202260831104507468', 'server_response': {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}, 'server_status': 'OrderStatus'}
[2026-08-31 10:46:30,259.259 INFO    ] 200
[2026-08-31 10:46:30,262.262 INFO    ] {"data":{"order_id":"TM08202202260831104507468","server_response":{"rstatus":false,"status":"false","error":{"data":[],"code":20001,"umessage":"In Progress","tmessage":"In Progress"},"SectionSKU":{"Header":"Pick the below items from the door","skus":[{"name":"McVities Butter Jeera Cookies58gm","qty":1}]},"SectionMain":{"Header":"Door Open"},"voiceNote":"Please close door 1","SectionStatus":{"Header":"Please Close Door 1","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"}},"server_status":"OrderStatus"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 10:46:30,265.265 INFO    ] {'data': {'order_id': 'TM08202202260831104507468', 'server_response': {'rstatus': False, 'status': 'false', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'error': {'data': [], 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionStatus': {'Header': 'Please Close Door 1', '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'}, 'voiceNote': 'Please close door 1', 'SectionMain': {'Header': 'Door Open'}}, 'server_status': 'OrderStatus'}, 'response': {'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'status': True}}
[2026-08-31 10:46:30,268.268 INFO    ] {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}
[2026-08-31 10:46:33,337.337 INFO    ] 200
[2026-08-31 10:46:33,340.340 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 10:46:33,343.343 INFO    ] {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}
[2026-08-31 10:46:36,393.393 INFO    ] 200
[2026-08-31 10:46:36,396.396 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 10:46:36,399.399 INFO    ] {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}
[2026-08-31 10:46:39,452.452 INFO    ] 200
[2026-08-31 10:46:39,454.454 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 10:46:39,457.457 INFO    ] Please close door 1
[2026-08-31 10:46:39,459.459 INFO    ] Please close door 1
[2026-08-31 10:46:39,462.462 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-08-31 10:46:39,464.464 INFO    ] 2026-08-31 10:46:39
[2026-08-31 10:46:39,466.466 INFO    ] playing audio file
[2026-08-31 10:46:39,484.484 INFO    ] 2026-08-31 10:46:39
[2026-08-31 10:46:39,487.487 INFO    ] publish_status: order_id=TM08202202260831104507468
[2026-08-31 10:46:39,490.490 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831104507468
[2026-08-31 10:46:39,614.614 INFO    ] [publish_status] Message added to stream with ID: 1788153399567-0
[2026-08-31 10:46:39,617.617 INFO    ] Published to order:TM08202202260831104507468: {'order_id': 'TM08202202260831104507468', 'server_response': '{"rstatus": false, "status": "False", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "McVities Butter Jeera Cookies58gm", "qty": 1}]}, "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 1", "SectionStatus": {"Header": "Please Close Door 1", "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"}}', 'timestamp': '2026-08-31T05:16:39.485921Z', 'server_status': 'OrderStatus'} (ID: 1788153399567-0)
[2026-08-31 10:46:42,805.805 INFO    ] {'order_id': 'TM08202202260831104507468', 'server_response': {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}, 'server_status': 'OrderStatus'}
[2026-08-31 10:46:42,808.808 INFO    ] 200
[2026-08-31 10:46:42,811.811 INFO    ] {"data":{"order_id":"TM08202202260831104507468","server_response":{"rstatus":false,"status":"false","error":{"data":[],"code":20001,"umessage":"In Progress","tmessage":"In Progress"},"SectionSKU":{"Header":"Pick the below items from the door","skus":[{"name":"McVities Butter Jeera Cookies58gm","qty":1}]},"SectionMain":{"Header":"Door Open"},"voiceNote":"Please close door 1","SectionStatus":{"Header":"Please Close Door 1","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"}},"server_status":"OrderStatus"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 10:46:42,815.815 INFO    ] {'data': {'order_id': 'TM08202202260831104507468', 'server_response': {'rstatus': False, 'status': 'false', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'error': {'data': [], 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionStatus': {'Header': 'Please Close Door 1', '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'}, 'voiceNote': 'Please close door 1', 'SectionMain': {'Header': 'Door Open'}}, 'server_status': 'OrderStatus'}, 'response': {'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'status': True}}
[2026-08-31 10:46:42,818.818 INFO    ] {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}
[2026-08-31 10:46:45,903.903 INFO    ] 200
[2026-08-31 10:46:45,907.907 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 10:46:45,911.911 INFO    ] {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}
[2026-08-31 10:46:48,978.978 INFO    ] 200
[2026-08-31 10:46:48,981.981 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 10:46:48,984.984 INFO    ] {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}
[2026-08-31 10:46:52,041.041 INFO    ] 200
[2026-08-31 10:46:52,044.044 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 10:46:52,047.047 INFO    ] Please close door 1
[2026-08-31 10:46:52,050.050 INFO    ] Please close door 1
[2026-08-31 10:46:52,053.053 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-08-31 10:46:52,056.056 INFO    ] 2026-08-31 10:46:52
[2026-08-31 10:46:52,059.059 INFO    ] playing audio file
[2026-08-31 10:46:52,077.077 INFO    ] 2026-08-31 10:46:52
[2026-08-31 10:46:52,081.081 INFO    ] publish_status: order_id=TM08202202260831104507468
[2026-08-31 10:46:52,084.084 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831104507468
[2026-08-31 10:46:52,174.174 INFO    ] [publish_status] Message added to stream with ID: 1788153412125-0
[2026-08-31 10:46:52,178.178 INFO    ] Published to order:TM08202202260831104507468: {'order_id': 'TM08202202260831104507468', 'server_response': '{"rstatus": false, "status": "False", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "McVities Butter Jeera Cookies58gm", "qty": 1}]}, "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 1", "SectionStatus": {"Header": "Please Close Door 1", "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"}}', 'timestamp': '2026-08-31T05:16:52.079456Z', 'server_status': 'OrderStatus'} (ID: 1788153412125-0)
[2026-08-31 10:46:52,774.774 INFO    ] {'order_id': 'TM08202202260831104507468', 'server_response': {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}, 'server_status': 'OrderStatus'}
[2026-08-31 10:46:52,777.777 INFO    ] 200
[2026-08-31 10:46:52,780.780 INFO    ] {"data":{"order_id":"TM08202202260831104507468","server_response":{"rstatus":false,"status":"false","error":{"data":[],"code":20001,"umessage":"In Progress","tmessage":"In Progress"},"SectionSKU":{"Header":"Pick the below items from the door","skus":[{"name":"McVities Butter Jeera Cookies58gm","qty":1}]},"SectionMain":{"Header":"Door Open"},"voiceNote":"Please close door 1","SectionStatus":{"Header":"Please Close Door 1","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"}},"server_status":"OrderStatus"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 10:46:52,784.784 INFO    ] {'data': {'order_id': 'TM08202202260831104507468', 'server_response': {'rstatus': False, 'status': 'false', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'error': {'data': [], 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionStatus': {'Header': 'Please Close Door 1', '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'}, 'voiceNote': 'Please close door 1', 'SectionMain': {'Header': 'Door Open'}}, 'server_status': 'OrderStatus'}, 'response': {'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'status': True}}
[2026-08-31 10:46:52,787.787 INFO    ] {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}
[2026-08-31 10:46:55,872.872 INFO    ] 200
[2026-08-31 10:46:55,875.875 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 10:46:55,879.879 INFO    ] {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}
[2026-08-31 10:46:58,944.944 INFO    ] 200
[2026-08-31 10:46:58,947.947 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 10:46:58,951.951 INFO    ] {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}
[2026-08-31 10:47:02,051.051 INFO    ] 200
[2026-08-31 10:47:02,055.055 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 10:47:02,059.059 INFO    ] Please close door 1
[2026-08-31 10:47:02,063.063 INFO    ] Please close door 1
[2026-08-31 10:47:02,066.066 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-08-31 10:47:02,071.071 INFO    ] 2026-08-31 10:47:02
[2026-08-31 10:47:02,075.075 INFO    ] playing audio file
[2026-08-31 10:47:02,099.099 INFO    ] 2026-08-31 10:47:02
[2026-08-31 10:47:02,104.104 INFO    ] publish_status: order_id=TM08202202260831104507468
[2026-08-31 10:47:02,118.118 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831104507468
[2026-08-31 10:47:02,213.213 INFO    ] [publish_status] Message added to stream with ID: 1788153422162-0
[2026-08-31 10:47:02,217.217 INFO    ] Published to order:TM08202202260831104507468: {'order_id': 'TM08202202260831104507468', 'server_response': '{"rstatus": false, "status": "False", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "McVities Butter Jeera Cookies58gm", "qty": 1}]}, "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 1", "SectionStatus": {"Header": "Please Close Door 1", "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"}}', 'timestamp': '2026-08-31T05:17:02.101634Z', 'server_status': 'OrderStatus'} (ID: 1788153422162-0)
[2026-08-31 10:47:02,900.900 INFO    ] {'order_id': 'TM08202202260831104507468', 'server_response': {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}, 'server_status': 'OrderStatus'}
[2026-08-31 10:47:02,903.903 INFO    ] 200
[2026-08-31 10:47:02,907.907 INFO    ] {"data":{"order_id":"TM08202202260831104507468","server_response":{"rstatus":false,"status":"false","error":{"data":[],"code":20001,"umessage":"In Progress","tmessage":"In Progress"},"SectionSKU":{"Header":"Pick the below items from the door","skus":[{"name":"McVities Butter Jeera Cookies58gm","qty":1}]},"SectionMain":{"Header":"Door Open"},"voiceNote":"Please close door 1","SectionStatus":{"Header":"Please Close Door 1","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"}},"server_status":"OrderStatus"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 10:47:02,911.911 INFO    ] {'data': {'order_id': 'TM08202202260831104507468', 'server_response': {'rstatus': False, 'status': 'false', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'error': {'data': [], 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionStatus': {'Header': 'Please Close Door 1', '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'}, 'voiceNote': 'Please close door 1', 'SectionMain': {'Header': 'Door Open'}}, 'server_status': 'OrderStatus'}, 'response': {'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'status': True}}
[2026-08-31 10:47:02,915.915 INFO    ] {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}
[2026-08-31 10:47:05,973.973 INFO    ] 200
[2026-08-31 10:47:05,975.975 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 10:47:05,978.978 INFO    ] {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}
[2026-08-31 10:47:09,091.091 INFO    ] 200
[2026-08-31 10:47:09,094.094 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 10:47:09,096.096 INFO    ] {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}
[2026-08-31 10:47:12,181.181 INFO    ] 200
[2026-08-31 10:47:12,184.184 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 10:47:12,187.187 INFO    ] Please close door 1
[2026-08-31 10:47:12,190.190 INFO    ] Please close door 1
[2026-08-31 10:47:12,192.192 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-08-31 10:47:12,195.195 INFO    ] 2026-08-31 10:47:12
[2026-08-31 10:47:12,198.198 INFO    ] playing audio file
[2026-08-31 10:47:12,216.216 INFO    ] 2026-08-31 10:47:12
[2026-08-31 10:47:12,221.221 INFO    ] publish_status: order_id=TM08202202260831104507468
[2026-08-31 10:47:12,223.223 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831104507468
[2026-08-31 10:47:12,318.318 INFO    ] [publish_status] Message added to stream with ID: 1788153432270-0
[2026-08-31 10:47:12,320.320 INFO    ] Published to order:TM08202202260831104507468: {'order_id': 'TM08202202260831104507468', 'server_response': '{"rstatus": false, "status": "False", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "McVities Butter Jeera Cookies58gm", "qty": 1}]}, "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 1", "SectionStatus": {"Header": "Please Close Door 1", "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"}}', 'timestamp': '2026-08-31T05:17:12.219013Z', 'server_status': 'OrderStatus'} (ID: 1788153432270-0)
[2026-08-31 10:47:12,901.901 INFO    ] {'order_id': 'TM08202202260831104507468', 'server_response': {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}, 'server_status': 'OrderStatus'}
[2026-08-31 10:47:12,906.906 INFO    ] 200
[2026-08-31 10:47:12,909.909 INFO    ] {"data":{"order_id":"TM08202202260831104507468","server_response":{"rstatus":false,"status":"false","error":{"data":[],"code":20001,"umessage":"In Progress","tmessage":"In Progress"},"SectionSKU":{"Header":"Pick the below items from the door","skus":[{"name":"McVities Butter Jeera Cookies58gm","qty":1}]},"SectionMain":{"Header":"Door Open"},"voiceNote":"Please close door 1","SectionStatus":{"Header":"Please Close Door 1","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"}},"server_status":"OrderStatus"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 10:47:12,912.912 INFO    ] {'data': {'order_id': 'TM08202202260831104507468', 'server_response': {'rstatus': False, 'status': 'false', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'error': {'data': [], 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionStatus': {'Header': 'Please Close Door 1', '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'}, 'voiceNote': 'Please close door 1', 'SectionMain': {'Header': 'Door Open'}}, 'server_status': 'OrderStatus'}, 'response': {'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'status': True}}
[2026-08-31 10:47:12,915.915 INFO    ] {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}
[2026-08-31 10:47:16,075.075 INFO    ] 200
[2026-08-31 10:47:16,078.078 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 10:47:16,081.081 INFO    ] {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}
[2026-08-31 10:47:19,140.140 INFO    ] 200
[2026-08-31 10:47:19,142.142 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 10:47:19,145.145 INFO    ] {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}
[2026-08-31 10:47:22,225.225 INFO    ] 200
[2026-08-31 10:47:22,228.228 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 10:47:22,232.232 INFO    ] Please close door 1
[2026-08-31 10:47:22,234.234 INFO    ] Please close door 1
[2026-08-31 10:47:22,237.237 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-08-31 10:47:22,240.240 INFO    ] 2026-08-31 10:47:22
[2026-08-31 10:47:22,242.242 INFO    ] playing audio file
[2026-08-31 10:47:22,260.260 INFO    ] 2026-08-31 10:47:22
[2026-08-31 10:47:22,264.264 INFO    ] publish_status: order_id=TM08202202260831104507468
[2026-08-31 10:47:22,269.269 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831104507468
[2026-08-31 10:47:22,364.364 INFO    ] [publish_status] Message added to stream with ID: 1788153442311-0
[2026-08-31 10:47:22,367.367 INFO    ] Published to order:TM08202202260831104507468: {'order_id': 'TM08202202260831104507468', 'server_response': '{"rstatus": false, "status": "False", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "McVities Butter Jeera Cookies58gm", "qty": 1}]}, "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 1", "SectionStatus": {"Header": "Please Close Door 1", "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"}}', 'timestamp': '2026-08-31T05:17:22.262340Z', 'server_status': 'OrderStatus'} (ID: 1788153442311-0)
[2026-08-31 10:47:22,963.963 INFO    ] {'order_id': 'TM08202202260831104507468', 'server_response': {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}, 'server_status': 'OrderStatus'}
[2026-08-31 10:47:22,966.966 INFO    ] 200
[2026-08-31 10:47:22,970.970 INFO    ] {"data":{"order_id":"TM08202202260831104507468","server_response":{"rstatus":false,"status":"false","error":{"data":[],"code":20001,"umessage":"In Progress","tmessage":"In Progress"},"SectionSKU":{"Header":"Pick the below items from the door","skus":[{"name":"McVities Butter Jeera Cookies58gm","qty":1}]},"SectionMain":{"Header":"Door Open"},"voiceNote":"Please close door 1","SectionStatus":{"Header":"Please Close Door 1","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"}},"server_status":"OrderStatus"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 10:47:22,973.973 INFO    ] {'data': {'order_id': 'TM08202202260831104507468', 'server_response': {'rstatus': False, 'status': 'false', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'error': {'data': [], 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionStatus': {'Header': 'Please Close Door 1', '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'}, 'voiceNote': 'Please close door 1', 'SectionMain': {'Header': 'Door Open'}}, 'server_status': 'OrderStatus'}, 'response': {'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'status': True}}
[2026-08-31 10:47:22,977.977 INFO    ] {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}
[2026-08-31 10:47:26,102.102 INFO    ] 200
[2026-08-31 10:47:26,106.106 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 10:47:26,109.109 INFO    ] {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}
[2026-08-31 10:47:29,166.166 INFO    ] 200
[2026-08-31 10:47:29,169.169 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 10:47:29,173.173 INFO    ] {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}
[2026-08-31 10:47:32,249.249 INFO    ] 200
[2026-08-31 10:47:32,253.253 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 10:47:32,263.263 INFO    ] Please close door 1
[2026-08-31 10:47:32,267.267 INFO    ] Please close door 1
[2026-08-31 10:47:32,271.271 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-08-31 10:47:32,275.275 INFO    ] 2026-08-31 10:47:32
[2026-08-31 10:47:32,280.280 INFO    ] playing audio file
[2026-08-31 10:47:32,300.300 INFO    ] 2026-08-31 10:47:32
[2026-08-31 10:47:32,305.305 INFO    ] publish_status: order_id=TM08202202260831104507468
[2026-08-31 10:47:32,310.310 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831104507468
[2026-08-31 10:47:32,400.400 INFO    ] [publish_status] Message added to stream with ID: 1788153452351-0
[2026-08-31 10:47:32,403.403 INFO    ] Published to order:TM08202202260831104507468: {'order_id': 'TM08202202260831104507468', 'server_response': '{"rstatus": false, "status": "False", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "McVities Butter Jeera Cookies58gm", "qty": 1}]}, "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 1", "SectionStatus": {"Header": "Please Close Door 1", "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"}}', 'timestamp': '2026-08-31T05:17:32.303033Z', 'server_status': 'OrderStatus'} (ID: 1788153452351-0)
[2026-08-31 10:47:32,981.981 INFO    ] {'order_id': 'TM08202202260831104507468', 'server_response': {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}, 'server_status': 'OrderStatus'}
[2026-08-31 10:47:32,984.984 INFO    ] 200
[2026-08-31 10:47:32,987.987 INFO    ] {"data":{"order_id":"TM08202202260831104507468","server_response":{"rstatus":false,"status":"false","error":{"data":[],"code":20001,"umessage":"In Progress","tmessage":"In Progress"},"SectionSKU":{"Header":"Pick the below items from the door","skus":[{"name":"McVities Butter Jeera Cookies58gm","qty":1}]},"SectionMain":{"Header":"Door Open"},"voiceNote":"Please close door 1","SectionStatus":{"Header":"Please Close Door 1","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"}},"server_status":"OrderStatus"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 10:47:32,990.990 INFO    ] {'data': {'order_id': 'TM08202202260831104507468', 'server_response': {'rstatus': False, 'status': 'false', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'error': {'data': [], 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionStatus': {'Header': 'Please Close Door 1', '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'}, 'voiceNote': 'Please close door 1', 'SectionMain': {'Header': 'Door Open'}}, 'server_status': 'OrderStatus'}, 'response': {'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'status': True}}
[2026-08-31 10:47:32,992.992 INFO    ] {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}
[2026-08-31 10:47:36,180.180 INFO    ] 200
[2026-08-31 10:47:36,183.183 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 10:47:36,186.186 INFO    ] {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}
[2026-08-31 10:47:39,253.253 INFO    ] 200
[2026-08-31 10:47:39,256.256 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 10:47:39,259.259 INFO    ] {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}
[2026-08-31 10:47:42,309.309 INFO    ] 200
[2026-08-31 10:47:42,312.312 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 10:47:42,315.315 INFO    ] Please close door 1
[2026-08-31 10:47:42,317.317 INFO    ] Please close door 1
[2026-08-31 10:47:42,319.319 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-08-31 10:47:42,322.322 INFO    ] 2026-08-31 10:47:42
[2026-08-31 10:47:42,324.324 INFO    ] playing audio file
[2026-08-31 10:47:42,343.343 INFO    ] 2026-08-31 10:47:42
[2026-08-31 10:47:42,347.347 INFO    ] publish_status: order_id=TM08202202260831104507468
[2026-08-31 10:47:42,350.350 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831104507468
[2026-08-31 10:47:42,444.444 INFO    ] [publish_status] Message added to stream with ID: 1788153462392-0
[2026-08-31 10:47:42,446.446 INFO    ] Published to order:TM08202202260831104507468: {'order_id': 'TM08202202260831104507468', 'server_response': '{"rstatus": false, "status": "False", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "McVities Butter Jeera Cookies58gm", "qty": 1}]}, "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 1", "SectionStatus": {"Header": "Please Close Door 1", "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"}}', 'timestamp': '2026-08-31T05:17:42.345390Z', 'server_status': 'OrderStatus'} (ID: 1788153462392-0)
[2026-08-31 10:47:43,065.065 INFO    ] {'order_id': 'TM08202202260831104507468', 'server_response': {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}, 'server_status': 'OrderStatus'}
[2026-08-31 10:47:43,068.068 INFO    ] 200
[2026-08-31 10:47:43,071.071 INFO    ] {"data":{"order_id":"TM08202202260831104507468","server_response":{"rstatus":false,"status":"false","error":{"data":[],"code":20001,"umessage":"In Progress","tmessage":"In Progress"},"SectionSKU":{"Header":"Pick the below items from the door","skus":[{"name":"McVities Butter Jeera Cookies58gm","qty":1}]},"SectionMain":{"Header":"Door Open"},"voiceNote":"Please close door 1","SectionStatus":{"Header":"Please Close Door 1","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"}},"server_status":"OrderStatus"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 10:47:43,076.076 INFO    ] {'data': {'order_id': 'TM08202202260831104507468', 'server_response': {'rstatus': False, 'status': 'false', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'error': {'data': [], 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionStatus': {'Header': 'Please Close Door 1', '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'}, 'voiceNote': 'Please close door 1', 'SectionMain': {'Header': 'Door Open'}}, 'server_status': 'OrderStatus'}, 'response': {'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'status': True}}
[2026-08-31 10:47:43,079.079 INFO    ] {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}
[2026-08-31 10:47:46,131.131 INFO    ] 200
[2026-08-31 10:47:46,134.134 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 10:47:46,137.137 INFO    ] {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}
[2026-08-31 10:47:49,400.400 INFO    ] 200
[2026-08-31 10:47:49,403.403 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 10:47:49,407.407 INFO    ] {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}
[2026-08-31 10:47:52,557.557 INFO    ] 200
[2026-08-31 10:47:52,561.561 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 10:47:52,565.565 INFO    ] Please close door 1
[2026-08-31 10:47:52,568.568 INFO    ] Please close door 1
[2026-08-31 10:47:52,572.572 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-08-31 10:47:52,575.575 INFO    ] 2026-08-31 10:47:52
[2026-08-31 10:47:52,579.579 INFO    ] playing audio file
[2026-08-31 10:47:52,609.609 INFO    ] 2026-08-31 10:47:52
[2026-08-31 10:47:52,614.614 INFO    ] publish_status: order_id=TM08202202260831104507468
[2026-08-31 10:47:52,618.618 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831104507468
[2026-08-31 10:47:52,735.735 INFO    ] [publish_status] Message added to stream with ID: 1788153472645-0
[2026-08-31 10:47:52,739.739 INFO    ] Published to order:TM08202202260831104507468: {'order_id': 'TM08202202260831104507468', 'server_response': '{"rstatus": false, "status": "False", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "McVities Butter Jeera Cookies58gm", "qty": 1}]}, "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 1", "SectionStatus": {"Header": "Please Close Door 1", "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"}}', 'timestamp': '2026-08-31T05:17:52.611581Z', 'server_status': 'OrderStatus'} (ID: 1788153472645-0)
[2026-08-31 10:47:54,573.573 INFO    ] {'order_id': 'TM08202202260831104507468', 'server_response': {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}, 'server_status': 'OrderStatus'}
[2026-08-31 10:47:54,576.576 INFO    ] 200
[2026-08-31 10:47:54,579.579 INFO    ] {"data":{"order_id":"TM08202202260831104507468","server_response":{"rstatus":false,"status":"false","error":{"data":[],"code":20001,"umessage":"In Progress","tmessage":"In Progress"},"SectionSKU":{"Header":"Pick the below items from the door","skus":[{"name":"McVities Butter Jeera Cookies58gm","qty":1}]},"SectionMain":{"Header":"Door Open"},"voiceNote":"Please close door 1","SectionStatus":{"Header":"Please Close Door 1","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"}},"server_status":"OrderStatus"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 10:47:54,583.583 INFO    ] {'data': {'order_id': 'TM08202202260831104507468', 'server_response': {'rstatus': False, 'status': 'false', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'error': {'data': [], 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionStatus': {'Header': 'Please Close Door 1', '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'}, 'voiceNote': 'Please close door 1', 'SectionMain': {'Header': 'Door Open'}}, 'server_status': 'OrderStatus'}, 'response': {'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'status': True}}
[2026-08-31 10:47:54,587.587 INFO    ] {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}
[2026-08-31 10:47:57,661.661 INFO    ] 200
[2026-08-31 10:47:57,665.665 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 10:47:57,671.671 INFO    ] {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}
[2026-08-31 10:48:00,725.725 INFO    ] 200
[2026-08-31 10:48:00,727.727 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 10:48:00,731.731 INFO    ] {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}
[2026-08-31 10:48:03,910.910 INFO    ] 200
[2026-08-31 10:48:03,914.914 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 10:48:03,917.917 INFO    ] Please close door 1
[2026-08-31 10:48:03,923.923 INFO    ] Please close door 1
[2026-08-31 10:48:03,927.927 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-08-31 10:48:03,931.931 INFO    ] 2026-08-31 10:48:03
[2026-08-31 10:48:03,935.935 INFO    ] playing audio file
[2026-08-31 10:48:03,957.957 INFO    ] 2026-08-31 10:48:03
[2026-08-31 10:48:03,962.962 INFO    ] publish_status: order_id=TM08202202260831104507468
[2026-08-31 10:48:03,965.965 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831104507468
[2026-08-31 10:48:04,041.041 INFO    ] [publish_status] Message added to stream with ID: 1788153483993-0
[2026-08-31 10:48:04,044.044 INFO    ] Published to order:TM08202202260831104507468: {'order_id': 'TM08202202260831104507468', 'server_response': '{"rstatus": false, "status": "False", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "McVities Butter Jeera Cookies58gm", "qty": 1}]}, "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 1", "SectionStatus": {"Header": "Please Close Door 1", "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"}}', 'timestamp': '2026-08-31T05:18:03.959074Z', 'server_status': 'OrderStatus'} (ID: 1788153483993-0)
[2026-08-31 10:48:04,820.820 INFO    ] {'order_id': 'TM08202202260831104507468', 'server_response': {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}, 'server_status': 'OrderStatus'}
[2026-08-31 10:48:04,823.823 INFO    ] 200
[2026-08-31 10:48:04,825.825 INFO    ] {"data":{"order_id":"TM08202202260831104507468","server_response":{"rstatus":false,"status":"false","error":{"data":[],"code":20001,"umessage":"In Progress","tmessage":"In Progress"},"SectionSKU":{"Header":"Pick the below items from the door","skus":[{"name":"McVities Butter Jeera Cookies58gm","qty":1}]},"SectionMain":{"Header":"Door Open"},"voiceNote":"Please close door 1","SectionStatus":{"Header":"Please Close Door 1","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"}},"server_status":"OrderStatus"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 10:48:04,829.829 INFO    ] {'data': {'order_id': 'TM08202202260831104507468', 'server_response': {'rstatus': False, 'status': 'false', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'error': {'data': [], 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionStatus': {'Header': 'Please Close Door 1', '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'}, 'voiceNote': 'Please close door 1', 'SectionMain': {'Header': 'Door Open'}}, 'server_status': 'OrderStatus'}, 'response': {'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'status': True}}
[2026-08-31 10:48:04,831.831 INFO    ] {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}
[2026-08-31 10:48:07,904.904 INFO    ] 200
[2026-08-31 10:48:07,907.907 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 10:48:07,910.910 INFO    ] {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}
[2026-08-31 10:48:10,991.991 INFO    ] 200
[2026-08-31 10:48:10,993.993 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 10:48:10,997.997 INFO    ] {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}
[2026-08-31 10:48:14,069.069 INFO    ] 200
[2026-08-31 10:48:14,071.071 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 10:48:14,074.074 INFO    ] Please close door 1
[2026-08-31 10:48:14,082.082 INFO    ] Please close door 1
[2026-08-31 10:48:14,084.084 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-08-31 10:48:14,087.087 INFO    ] 2026-08-31 10:48:14
[2026-08-31 10:48:14,090.090 INFO    ] playing audio file
[2026-08-31 10:48:14,107.107 INFO    ] 2026-08-31 10:48:14
[2026-08-31 10:48:14,111.111 INFO    ] publish_status: order_id=TM08202202260831104507468
[2026-08-31 10:48:14,114.114 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831104507468
[2026-08-31 10:48:14,219.219 INFO    ] [publish_status] Message added to stream with ID: 1788153494168-0
[2026-08-31 10:48:14,223.223 INFO    ] Published to order:TM08202202260831104507468: {'order_id': 'TM08202202260831104507468', 'server_response': '{"rstatus": false, "status": "False", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "McVities Butter Jeera Cookies58gm", "qty": 1}]}, "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 1", "SectionStatus": {"Header": "Please Close Door 1", "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"}}', 'timestamp': '2026-08-31T05:18:14.109453Z', 'server_status': 'OrderStatus'} (ID: 1788153494168-0)
[2026-08-31 10:48:14,808.808 INFO    ] {'order_id': 'TM08202202260831104507468', 'server_response': {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}, 'server_status': 'OrderStatus'}
[2026-08-31 10:48:14,812.812 INFO    ] 200
[2026-08-31 10:48:14,815.815 INFO    ] {"data":{"order_id":"TM08202202260831104507468","server_response":{"rstatus":false,"status":"false","error":{"data":[],"code":20001,"umessage":"In Progress","tmessage":"In Progress"},"SectionSKU":{"Header":"Pick the below items from the door","skus":[{"name":"McVities Butter Jeera Cookies58gm","qty":1}]},"SectionMain":{"Header":"Door Open"},"voiceNote":"Please close door 1","SectionStatus":{"Header":"Please Close Door 1","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"}},"server_status":"OrderStatus"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 10:48:14,820.820 INFO    ] {'data': {'order_id': 'TM08202202260831104507468', 'server_response': {'rstatus': False, 'status': 'false', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'error': {'data': [], 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionStatus': {'Header': 'Please Close Door 1', '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'}, 'voiceNote': 'Please close door 1', 'SectionMain': {'Header': 'Door Open'}}, 'server_status': 'OrderStatus'}, 'response': {'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'status': True}}
[2026-08-31 10:48:14,823.823 INFO    ] {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}
[2026-08-31 10:48:17,943.943 INFO    ] 200
[2026-08-31 10:48:17,947.947 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 10:48:17,950.950 INFO    ] {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}
[2026-08-31 10:48:21,261.261 INFO    ] 200
[2026-08-31 10:48:21,264.264 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 10:48:21,268.268 INFO    ] {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}
[2026-08-31 10:48:24,348.348 INFO    ] 200
[2026-08-31 10:48:24,351.351 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 10:48:24,355.355 INFO    ] Please close door 1
[2026-08-31 10:48:24,358.358 INFO    ] Please close door 1
[2026-08-31 10:48:24,361.361 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-08-31 10:48:24,364.364 INFO    ] 2026-08-31 10:48:24
[2026-08-31 10:48:24,367.367 INFO    ] playing audio file
[2026-08-31 10:48:24,385.385 INFO    ] 2026-08-31 10:48:24
[2026-08-31 10:48:24,389.389 INFO    ] publish_status: order_id=TM08202202260831104507468
[2026-08-31 10:48:24,393.393 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831104507468
[2026-08-31 10:48:24,528.528 INFO    ] [publish_status] Message added to stream with ID: 1788153504468-0
[2026-08-31 10:48:24,531.531 INFO    ] Published to order:TM08202202260831104507468: {'order_id': 'TM08202202260831104507468', 'server_response': '{"rstatus": false, "status": "False", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "McVities Butter Jeera Cookies58gm", "qty": 1}]}, "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 1", "SectionStatus": {"Header": "Please Close Door 1", "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"}}', 'timestamp': '2026-08-31T05:18:24.387232Z', 'server_status': 'OrderStatus'} (ID: 1788153504468-0)
[2026-08-31 10:48:25,133.133 INFO    ] {'order_id': 'TM08202202260831104507468', 'server_response': {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}, 'server_status': 'OrderStatus'}
[2026-08-31 10:48:25,137.137 INFO    ] 200
[2026-08-31 10:48:25,140.140 INFO    ] {"data":{"order_id":"TM08202202260831104507468","server_response":{"rstatus":false,"status":"false","error":{"data":[],"code":20001,"umessage":"In Progress","tmessage":"In Progress"},"SectionSKU":{"Header":"Pick the below items from the door","skus":[{"name":"McVities Butter Jeera Cookies58gm","qty":1}]},"SectionMain":{"Header":"Door Open"},"voiceNote":"Please close door 1","SectionStatus":{"Header":"Please Close Door 1","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"}},"server_status":"OrderStatus"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 10:48:25,144.144 INFO    ] {'data': {'order_id': 'TM08202202260831104507468', 'server_response': {'rstatus': False, 'status': 'false', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'error': {'data': [], 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionStatus': {'Header': 'Please Close Door 1', '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'}, 'voiceNote': 'Please close door 1', 'SectionMain': {'Header': 'Door Open'}}, 'server_status': 'OrderStatus'}, 'response': {'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'status': True}}
[2026-08-31 10:48:25,148.148 INFO    ] {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}
[2026-08-31 10:48:28,223.223 INFO    ] 200
[2026-08-31 10:48:28,226.226 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 10:48:28,229.229 INFO    ] {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}
[2026-08-31 10:48:31,299.299 INFO    ] 200
[2026-08-31 10:48:31,303.303 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 10:48:31,309.309 INFO    ] {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}
[2026-08-31 10:48:34,397.397 INFO    ] 200
[2026-08-31 10:48:34,400.400 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 10:48:34,403.403 INFO    ] Please close door 1
[2026-08-31 10:48:34,405.405 INFO    ] Please close door 1
[2026-08-31 10:48:34,408.408 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-08-31 10:48:34,411.411 INFO    ] 2026-08-31 10:48:34
[2026-08-31 10:48:34,413.413 INFO    ] playing audio file
[2026-08-31 10:48:34,431.431 INFO    ] 2026-08-31 10:48:34
[2026-08-31 10:48:34,434.434 INFO    ] publish_status: order_id=TM08202202260831104507468
[2026-08-31 10:48:34,437.437 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831104507468
[2026-08-31 10:48:34,534.534 INFO    ] [publish_status] Message added to stream with ID: 1788153514483-0
[2026-08-31 10:48:34,537.537 INFO    ] Published to order:TM08202202260831104507468: {'order_id': 'TM08202202260831104507468', 'server_response': '{"rstatus": false, "status": "False", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "McVities Butter Jeera Cookies58gm", "qty": 1}]}, "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 1", "SectionStatus": {"Header": "Please Close Door 1", "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"}}', 'timestamp': '2026-08-31T05:18:34.433099Z', 'server_status': 'OrderStatus'} (ID: 1788153514483-0)
[2026-08-31 10:48:35,165.165 INFO    ] {'order_id': 'TM08202202260831104507468', 'server_response': {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}, 'server_status': 'OrderStatus'}
[2026-08-31 10:48:35,168.168 INFO    ] 200
[2026-08-31 10:48:35,171.171 INFO    ] {"data":{"order_id":"TM08202202260831104507468","server_response":{"rstatus":false,"status":"false","error":{"data":[],"code":20001,"umessage":"In Progress","tmessage":"In Progress"},"SectionSKU":{"Header":"Pick the below items from the door","skus":[{"name":"McVities Butter Jeera Cookies58gm","qty":1}]},"SectionMain":{"Header":"Door Open"},"voiceNote":"Please close door 1","SectionStatus":{"Header":"Please Close Door 1","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"}},"server_status":"OrderStatus"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 10:48:35,175.175 INFO    ] {'data': {'order_id': 'TM08202202260831104507468', 'server_response': {'rstatus': False, 'status': 'false', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'error': {'data': [], 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionStatus': {'Header': 'Please Close Door 1', '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'}, 'voiceNote': 'Please close door 1', 'SectionMain': {'Header': 'Door Open'}}, 'server_status': 'OrderStatus'}, 'response': {'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'status': True}}
[2026-08-31 10:48:35,178.178 INFO    ] {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}
[2026-08-31 10:48:38,302.302 INFO    ] 200
[2026-08-31 10:48:38,305.305 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 10:48:38,309.309 INFO    ] {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}
[2026-08-31 10:48:41,388.388 INFO    ] 200
[2026-08-31 10:48:41,391.391 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 10:48:41,395.395 INFO    ] {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}
[2026-08-31 10:48:44,448.448 INFO    ] 200
[2026-08-31 10:48:44,450.450 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 10:48:44,454.454 INFO    ] Please close door 1
[2026-08-31 10:48:44,456.456 INFO    ] Please close door 1
[2026-08-31 10:48:44,459.459 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-08-31 10:48:44,462.462 INFO    ] 2026-08-31 10:48:44
[2026-08-31 10:48:44,465.465 INFO    ] playing audio file
[2026-08-31 10:48:44,483.483 INFO    ] 2026-08-31 10:48:44
[2026-08-31 10:48:44,487.487 INFO    ] publish_status: order_id=TM08202202260831104507468
[2026-08-31 10:48:44,490.490 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831104507468
[2026-08-31 10:48:44,597.597 INFO    ] [publish_status] Message added to stream with ID: 1788153524550-0
[2026-08-31 10:48:44,600.600 INFO    ] Published to order:TM08202202260831104507468: {'order_id': 'TM08202202260831104507468', 'server_response': '{"rstatus": false, "status": "False", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "McVities Butter Jeera Cookies58gm", "qty": 1}]}, "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 1", "SectionStatus": {"Header": "Please Close Door 1", "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"}}', 'timestamp': '2026-08-31T05:18:44.485131Z', 'server_status': 'OrderStatus'} (ID: 1788153524550-0)
[2026-08-31 10:48:45,229.229 INFO    ] {'order_id': 'TM08202202260831104507468', 'server_response': {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}, 'server_status': 'OrderStatus'}
[2026-08-31 10:48:45,232.232 INFO    ] 200
[2026-08-31 10:48:45,236.236 INFO    ] {"data":{"order_id":"TM08202202260831104507468","server_response":{"rstatus":false,"status":"false","error":{"data":[],"code":20001,"umessage":"In Progress","tmessage":"In Progress"},"SectionSKU":{"Header":"Pick the below items from the door","skus":[{"name":"McVities Butter Jeera Cookies58gm","qty":1}]},"SectionMain":{"Header":"Door Open"},"voiceNote":"Please close door 1","SectionStatus":{"Header":"Please Close Door 1","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"}},"server_status":"OrderStatus"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 10:48:45,240.240 INFO    ] {'data': {'order_id': 'TM08202202260831104507468', 'server_response': {'rstatus': False, 'status': 'false', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'error': {'data': [], 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionStatus': {'Header': 'Please Close Door 1', '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'}, 'voiceNote': 'Please close door 1', 'SectionMain': {'Header': 'Door Open'}}, 'server_status': 'OrderStatus'}, 'response': {'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'status': True}}
[2026-08-31 10:48:45,244.244 INFO    ] {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}
[2026-08-31 10:48:48,305.305 INFO    ] 200
[2026-08-31 10:48:48,308.308 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 10:48:48,312.312 INFO    ] {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}
[2026-08-31 10:48:51,363.363 INFO    ] 200
[2026-08-31 10:48:51,366.366 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 10:48:51,369.369 INFO    ] {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}
[2026-08-31 10:48:54,455.455 INFO    ] 200
[2026-08-31 10:48:54,458.458 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 10:48:54,461.461 INFO    ] Please close door 1
[2026-08-31 10:48:54,464.464 INFO    ] Please close door 1
[2026-08-31 10:48:54,467.467 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-08-31 10:48:54,471.471 INFO    ] 2026-08-31 10:48:54
[2026-08-31 10:48:54,474.474 INFO    ] playing audio file
[2026-08-31 10:48:54,492.492 INFO    ] 2026-08-31 10:48:54
[2026-08-31 10:48:54,497.497 INFO    ] publish_status: order_id=TM08202202260831104507468
[2026-08-31 10:48:54,500.500 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831104507468
[2026-08-31 10:48:54,600.600 INFO    ] [publish_status] Message added to stream with ID: 1788153534552-0
[2026-08-31 10:48:54,604.604 INFO    ] Published to order:TM08202202260831104507468: {'order_id': 'TM08202202260831104507468', 'server_response': '{"rstatus": false, "status": "False", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "McVities Butter Jeera Cookies58gm", "qty": 1}]}, "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 1", "SectionStatus": {"Header": "Please Close Door 1", "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"}}', 'timestamp': '2026-08-31T05:18:54.494734Z', 'server_status': 'OrderStatus'} (ID: 1788153534552-0)
[2026-08-31 10:48:55,225.225 INFO    ] {'order_id': 'TM08202202260831104507468', 'server_response': {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}, 'server_status': 'OrderStatus'}
[2026-08-31 10:48:55,228.228 INFO    ] 200
[2026-08-31 10:48:55,233.233 INFO    ] {"data":{"order_id":"TM08202202260831104507468","server_response":{"rstatus":false,"status":"false","error":{"data":[],"code":20001,"umessage":"In Progress","tmessage":"In Progress"},"SectionSKU":{"Header":"Pick the below items from the door","skus":[{"name":"McVities Butter Jeera Cookies58gm","qty":1}]},"SectionMain":{"Header":"Door Open"},"voiceNote":"Please close door 1","SectionStatus":{"Header":"Please Close Door 1","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"}},"server_status":"OrderStatus"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 10:48:55,239.239 INFO    ] {'data': {'order_id': 'TM08202202260831104507468', 'server_response': {'rstatus': False, 'status': 'false', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'error': {'data': [], 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionStatus': {'Header': 'Please Close Door 1', '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'}, 'voiceNote': 'Please close door 1', 'SectionMain': {'Header': 'Door Open'}}, 'server_status': 'OrderStatus'}, 'response': {'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'status': True}}
[2026-08-31 10:48:55,245.245 INFO    ] {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}
[2026-08-31 10:48:58,508.508 INFO    ] 200
[2026-08-31 10:48:58,511.511 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 10:48:58,515.515 INFO    ] {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}
[2026-08-31 10:49:01,743.743 INFO    ] 200
[2026-08-31 10:49:01,746.746 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 10:49:01,750.750 INFO    ] {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}
[2026-08-31 10:49:04,802.802 INFO    ] 200
[2026-08-31 10:49:04,804.804 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 10:49:04,808.808 INFO    ] Please close door 1
[2026-08-31 10:49:04,811.811 INFO    ] Please close door 1
[2026-08-31 10:49:04,813.813 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-08-31 10:49:04,816.816 INFO    ] 2026-08-31 10:49:04
[2026-08-31 10:49:04,819.819 INFO    ] playing audio file
[2026-08-31 10:49:04,839.839 INFO    ] 2026-08-31 10:49:04
[2026-08-31 10:49:04,843.843 INFO    ] publish_status: order_id=TM08202202260831104507468
[2026-08-31 10:49:04,846.846 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831104507468
[2026-08-31 10:49:04,956.956 INFO    ] [publish_status] Message added to stream with ID: 1788153544908-0
[2026-08-31 10:49:04,960.960 INFO    ] Published to order:TM08202202260831104507468: {'order_id': 'TM08202202260831104507468', 'server_response': '{"rstatus": false, "status": "False", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "McVities Butter Jeera Cookies58gm", "qty": 1}]}, "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 1", "SectionStatus": {"Header": "Please Close Door 1", "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"}}', 'timestamp': '2026-08-31T05:19:04.841070Z', 'server_status': 'OrderStatus'} (ID: 1788153544908-0)
[2026-08-31 10:49:05,588.588 INFO    ] {'order_id': 'TM08202202260831104507468', 'server_response': {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}, 'server_status': 'OrderStatus'}
[2026-08-31 10:49:05,591.591 INFO    ] 200
[2026-08-31 10:49:05,594.594 INFO    ] {"data":{"order_id":"TM08202202260831104507468","server_response":{"rstatus":false,"status":"false","error":{"data":[],"code":20001,"umessage":"In Progress","tmessage":"In Progress"},"SectionSKU":{"Header":"Pick the below items from the door","skus":[{"name":"McVities Butter Jeera Cookies58gm","qty":1}]},"SectionMain":{"Header":"Door Open"},"voiceNote":"Please close door 1","SectionStatus":{"Header":"Please Close Door 1","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"}},"server_status":"OrderStatus"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 10:49:05,598.598 INFO    ] {'data': {'order_id': 'TM08202202260831104507468', 'server_response': {'rstatus': False, 'status': 'false', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'error': {'data': [], 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionStatus': {'Header': 'Please Close Door 1', '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'}, 'voiceNote': 'Please close door 1', 'SectionMain': {'Header': 'Door Open'}}, 'server_status': 'OrderStatus'}, 'response': {'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'status': True}}
[2026-08-31 10:49:05,601.601 INFO    ] {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}
[2026-08-31 10:49:08,654.654 INFO    ] 200
[2026-08-31 10:49:08,656.656 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 10:49:08,660.660 INFO    ] {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}
[2026-08-31 10:49:11,799.799 INFO    ] 200
[2026-08-31 10:49:11,802.802 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 10:49:11,806.806 INFO    ] {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}
[2026-08-31 10:49:14,887.887 INFO    ] 200
[2026-08-31 10:49:14,891.891 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 10:49:14,895.895 INFO    ] Please close door 1
[2026-08-31 10:49:14,898.898 INFO    ] Please close door 1
[2026-08-31 10:49:14,902.902 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-08-31 10:49:14,905.905 INFO    ] 2026-08-31 10:49:14
[2026-08-31 10:49:14,908.908 INFO    ] playing audio file
[2026-08-31 10:49:14,928.928 INFO    ] 2026-08-31 10:49:14
[2026-08-31 10:49:14,933.933 INFO    ] publish_status: order_id=TM08202202260831104507468
[2026-08-31 10:49:14,937.937 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831104507468
[2026-08-31 10:49:15,007.007 INFO    ] [publish_status] Message added to stream with ID: 1788153554960-0
[2026-08-31 10:49:15,010.010 INFO    ] Published to order:TM08202202260831104507468: {'order_id': 'TM08202202260831104507468', 'server_response': '{"rstatus": false, "status": "False", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "McVities Butter Jeera Cookies58gm", "qty": 1}]}, "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 1", "SectionStatus": {"Header": "Please Close Door 1", "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"}}', 'timestamp': '2026-08-31T05:19:14.931255Z', 'server_status': 'OrderStatus'} (ID: 1788153554960-0)
[2026-08-31 10:49:15,623.623 INFO    ] {'order_id': 'TM08202202260831104507468', 'server_response': {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}, 'server_status': 'OrderStatus'}
[2026-08-31 10:49:15,626.626 INFO    ] 200
[2026-08-31 10:49:15,630.630 INFO    ] {"data":{"order_id":"TM08202202260831104507468","server_response":{"rstatus":false,"status":"false","error":{"data":[],"code":20001,"umessage":"In Progress","tmessage":"In Progress"},"SectionSKU":{"Header":"Pick the below items from the door","skus":[{"name":"McVities Butter Jeera Cookies58gm","qty":1}]},"SectionMain":{"Header":"Door Open"},"voiceNote":"Please close door 1","SectionStatus":{"Header":"Please Close Door 1","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"}},"server_status":"OrderStatus"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 10:49:15,633.633 INFO    ] {'data': {'order_id': 'TM08202202260831104507468', 'server_response': {'rstatus': False, 'status': 'false', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'error': {'data': [], 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionStatus': {'Header': 'Please Close Door 1', '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'}, 'voiceNote': 'Please close door 1', 'SectionMain': {'Header': 'Door Open'}}, 'server_status': 'OrderStatus'}, 'response': {'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'status': True}}
[2026-08-31 10:49:15,637.637 INFO    ] {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}
[2026-08-31 10:49:18,701.701 INFO    ] 200
[2026-08-31 10:49:18,704.704 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 10:49:18,709.709 INFO    ] {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}
[2026-08-31 10:49:21,784.784 INFO    ] 200
[2026-08-31 10:49:21,787.787 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 10:49:21,791.791 INFO    ] {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}
[2026-08-31 10:49:25,017.017 INFO    ] 200
[2026-08-31 10:49:25,020.020 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 10:49:25,024.024 INFO    ] Please close door 1
[2026-08-31 10:49:25,027.027 INFO    ] Please close door 1
[2026-08-31 10:49:25,030.030 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-08-31 10:49:25,033.033 INFO    ] 2026-08-31 10:49:25
[2026-08-31 10:49:25,036.036 INFO    ] playing audio file
[2026-08-31 10:49:25,055.055 INFO    ] 2026-08-31 10:49:25
[2026-08-31 10:49:25,059.059 INFO    ] publish_status: order_id=TM08202202260831104507468
[2026-08-31 10:49:25,063.063 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831104507468
[2026-08-31 10:49:25,158.158 INFO    ] [publish_status] Message added to stream with ID: 1788153565108-0
[2026-08-31 10:49:25,161.161 INFO    ] Published to order:TM08202202260831104507468: {'order_id': 'TM08202202260831104507468', 'server_response': '{"rstatus": false, "status": "False", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "McVities Butter Jeera Cookies58gm", "qty": 1}]}, "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 1", "SectionStatus": {"Header": "Please Close Door 1", "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"}}', 'timestamp': '2026-08-31T05:19:25.057719Z', 'server_status': 'OrderStatus'} (ID: 1788153565108-0)
[2026-08-31 10:49:25,773.773 INFO    ] {'order_id': 'TM08202202260831104507468', 'server_response': {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}, 'server_status': 'OrderStatus'}
[2026-08-31 10:49:25,776.776 INFO    ] 200
[2026-08-31 10:49:25,781.781 INFO    ] {"data":{"order_id":"TM08202202260831104507468","server_response":{"rstatus":false,"status":"false","error":{"data":[],"code":20001,"umessage":"In Progress","tmessage":"In Progress"},"SectionSKU":{"Header":"Pick the below items from the door","skus":[{"name":"McVities Butter Jeera Cookies58gm","qty":1}]},"SectionMain":{"Header":"Door Open"},"voiceNote":"Please close door 1","SectionStatus":{"Header":"Please Close Door 1","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"}},"server_status":"OrderStatus"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 10:49:25,792.792 INFO    ] {'data': {'order_id': 'TM08202202260831104507468', 'server_response': {'rstatus': False, 'status': 'false', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'error': {'data': [], 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionStatus': {'Header': 'Please Close Door 1', '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'}, 'voiceNote': 'Please close door 1', 'SectionMain': {'Header': 'Door Open'}}, 'server_status': 'OrderStatus'}, 'response': {'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'status': True}}
[2026-08-31 10:49:25,796.796 INFO    ] {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}
[2026-08-31 10:49:28,849.849 INFO    ] 200
[2026-08-31 10:49:28,852.852 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 10:49:28,856.856 INFO    ] {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}
[2026-08-31 10:49:31,936.936 INFO    ] 200
[2026-08-31 10:49:31,939.939 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 10:49:31,943.943 INFO    ] {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}
[2026-08-31 10:49:35,005.005 INFO    ] 200
[2026-08-31 10:49:35,009.009 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 10:49:35,013.013 INFO    ] Please close door 1
[2026-08-31 10:49:35,016.016 INFO    ] Please close door 1
[2026-08-31 10:49:35,019.019 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-08-31 10:49:35,023.023 INFO    ] 2026-08-31 10:49:35
[2026-08-31 10:49:35,025.025 INFO    ] playing audio file
[2026-08-31 10:49:35,044.044 INFO    ] 2026-08-31 10:49:35
[2026-08-31 10:49:35,048.048 INFO    ] publish_status: order_id=TM08202202260831104507468
[2026-08-31 10:49:35,052.052 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831104507468
[2026-08-31 10:49:35,134.134 INFO    ] [publish_status] Message added to stream with ID: 1788153575086-0
[2026-08-31 10:49:35,138.138 INFO    ] Published to order:TM08202202260831104507468: {'order_id': 'TM08202202260831104507468', 'server_response': '{"rstatus": false, "status": "False", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "McVities Butter Jeera Cookies58gm", "qty": 1}]}, "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 1", "SectionStatus": {"Header": "Please Close Door 1", "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"}}', 'timestamp': '2026-08-31T05:19:35.046384Z', 'server_status': 'OrderStatus'} (ID: 1788153575086-0)
[2026-08-31 10:49:35,778.778 INFO    ] {'order_id': 'TM08202202260831104507468', 'server_response': {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}, 'server_status': 'OrderStatus'}
[2026-08-31 10:49:35,781.781 INFO    ] 200
[2026-08-31 10:49:35,784.784 INFO    ] {"data":{"order_id":"TM08202202260831104507468","server_response":{"rstatus":false,"status":"false","error":{"data":[],"code":20001,"umessage":"In Progress","tmessage":"In Progress"},"SectionSKU":{"Header":"Pick the below items from the door","skus":[{"name":"McVities Butter Jeera Cookies58gm","qty":1}]},"SectionMain":{"Header":"Door Open"},"voiceNote":"Please close door 1","SectionStatus":{"Header":"Please Close Door 1","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"}},"server_status":"OrderStatus"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 10:49:35,788.788 INFO    ] {'data': {'order_id': 'TM08202202260831104507468', 'server_response': {'rstatus': False, 'status': 'false', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'error': {'data': [], 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionStatus': {'Header': 'Please Close Door 1', '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'}, 'voiceNote': 'Please close door 1', 'SectionMain': {'Header': 'Door Open'}}, 'server_status': 'OrderStatus'}, 'response': {'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'status': True}}
[2026-08-31 10:49:35,792.792 INFO    ] {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}
[2026-08-31 10:49:38,928.928 INFO    ] 200
[2026-08-31 10:49:38,931.931 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 10:49:38,935.935 INFO    ] {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}
[2026-08-31 10:49:41,996.996 INFO    ] 200
[2026-08-31 10:49:42,000.000 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 10:49:42,004.004 INFO    ] {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}
[2026-08-31 10:49:45,061.061 INFO    ] 200
[2026-08-31 10:49:45,064.064 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 10:49:45,070.070 INFO    ] Please close door 1
[2026-08-31 10:49:45,073.073 INFO    ] Please close door 1
[2026-08-31 10:49:45,075.075 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-08-31 10:49:45,077.077 INFO    ] 2026-08-31 10:49:45
[2026-08-31 10:49:45,080.080 INFO    ] playing audio file
[2026-08-31 10:49:45,097.097 INFO    ] 2026-08-31 10:49:45
[2026-08-31 10:49:45,100.100 INFO    ] publish_status: order_id=TM08202202260831104507468
[2026-08-31 10:49:45,103.103 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831104507468
[2026-08-31 10:49:45,196.196 INFO    ] [publish_status] Message added to stream with ID: 1788153585150-0
[2026-08-31 10:49:45,199.199 INFO    ] Published to order:TM08202202260831104507468: {'order_id': 'TM08202202260831104507468', 'server_response': '{"rstatus": false, "status": "False", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "McVities Butter Jeera Cookies58gm", "qty": 1}]}, "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 1", "SectionStatus": {"Header": "Please Close Door 1", "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"}}', 'timestamp': '2026-08-31T05:19:45.098925Z', 'server_status': 'OrderStatus'} (ID: 1788153585150-0)
[2026-08-31 10:49:45,809.809 INFO    ] {'order_id': 'TM08202202260831104507468', 'server_response': {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}, 'server_status': 'OrderStatus'}
[2026-08-31 10:49:45,811.811 INFO    ] 200
[2026-08-31 10:49:45,814.814 INFO    ] {"data":{"order_id":"TM08202202260831104507468","server_response":{"rstatus":false,"status":"false","error":{"data":[],"code":20001,"umessage":"In Progress","tmessage":"In Progress"},"SectionSKU":{"Header":"Pick the below items from the door","skus":[{"name":"McVities Butter Jeera Cookies58gm","qty":1}]},"SectionMain":{"Header":"Door Open"},"voiceNote":"Please close door 1","SectionStatus":{"Header":"Please Close Door 1","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"}},"server_status":"OrderStatus"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 10:49:45,817.817 INFO    ] {'data': {'order_id': 'TM08202202260831104507468', 'server_response': {'rstatus': False, 'status': 'false', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'error': {'data': [], 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionStatus': {'Header': 'Please Close Door 1', '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'}, 'voiceNote': 'Please close door 1', 'SectionMain': {'Header': 'Door Open'}}, 'server_status': 'OrderStatus'}, 'response': {'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'status': True}}
[2026-08-31 10:49:45,826.826 INFO    ] {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}
[2026-08-31 10:49:48,876.876 INFO    ] 200
[2026-08-31 10:49:48,878.878 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 10:49:48,881.881 INFO    ] {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}
[2026-08-31 10:49:51,989.989 INFO    ] 200
[2026-08-31 10:49:51,991.991 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 10:49:51,994.994 INFO    ] {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}
[2026-08-31 10:49:55,103.103 INFO    ] 200
[2026-08-31 10:49:55,106.106 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 10:49:55,109.109 INFO    ] Please close door 1
[2026-08-31 10:49:55,112.112 INFO    ] Please close door 1
[2026-08-31 10:49:55,114.114 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-08-31 10:49:55,117.117 INFO    ] 2026-08-31 10:49:55
[2026-08-31 10:49:55,119.119 INFO    ] playing audio file
[2026-08-31 10:49:55,137.137 INFO    ] 2026-08-31 10:49:55
[2026-08-31 10:49:55,141.141 INFO    ] publish_status: order_id=TM08202202260831104507468
[2026-08-31 10:49:55,144.144 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831104507468
[2026-08-31 10:49:55,236.236 INFO    ] [publish_status] Message added to stream with ID: 1788153595189-0
[2026-08-31 10:49:55,239.239 INFO    ] Published to order:TM08202202260831104507468: {'order_id': 'TM08202202260831104507468', 'server_response': '{"rstatus": false, "status": "False", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "McVities Butter Jeera Cookies58gm", "qty": 1}]}, "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 1", "SectionStatus": {"Header": "Please Close Door 1", "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"}}', 'timestamp': '2026-08-31T05:19:55.139028Z', 'server_status': 'OrderStatus'} (ID: 1788153595189-0)
[2026-08-31 10:49:55,849.849 INFO    ] {'order_id': 'TM08202202260831104507468', 'server_response': {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}, 'server_status': 'OrderStatus'}
[2026-08-31 10:49:55,851.851 INFO    ] 200
[2026-08-31 10:49:55,854.854 INFO    ] {"data":{"order_id":"TM08202202260831104507468","server_response":{"rstatus":false,"status":"false","error":{"data":[],"code":20001,"umessage":"In Progress","tmessage":"In Progress"},"SectionSKU":{"Header":"Pick the below items from the door","skus":[{"name":"McVities Butter Jeera Cookies58gm","qty":1}]},"SectionMain":{"Header":"Door Open"},"voiceNote":"Please close door 1","SectionStatus":{"Header":"Please Close Door 1","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"}},"server_status":"OrderStatus"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 10:49:55,857.857 INFO    ] {'data': {'order_id': 'TM08202202260831104507468', 'server_response': {'rstatus': False, 'status': 'false', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'error': {'data': [], 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionStatus': {'Header': 'Please Close Door 1', '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'}, 'voiceNote': 'Please close door 1', 'SectionMain': {'Header': 'Door Open'}}, 'server_status': 'OrderStatus'}, 'response': {'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'status': True}}
[2026-08-31 10:49:55,860.860 INFO    ] {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}
[2026-08-31 10:49:58,935.935 INFO    ] 200
[2026-08-31 10:49:58,938.938 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 10:49:58,941.941 INFO    ] {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}
[2026-08-31 10:50:02,393.393 INFO    ] 200
[2026-08-31 10:50:02,438.438 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 10:50:02,441.441 INFO    ] {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}
[2026-08-31 10:50:05,553.553 INFO    ] 200
[2026-08-31 10:50:05,556.556 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 10:50:05,559.559 INFO    ] Please close door 1
[2026-08-31 10:50:05,562.562 INFO    ] Please close door 1
[2026-08-31 10:50:05,564.564 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-08-31 10:50:05,568.568 INFO    ] 2026-08-31 10:50:05
[2026-08-31 10:50:05,571.571 INFO    ] playing audio file
[2026-08-31 10:50:05,588.588 INFO    ] 2026-08-31 10:50:05
[2026-08-31 10:50:05,592.592 INFO    ] publish_status: order_id=TM08202202260831104507468
[2026-08-31 10:50:05,595.595 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831104507468
[2026-08-31 10:50:05,687.687 INFO    ] [publish_status] Message added to stream with ID: 1788153605631-0
[2026-08-31 10:50:05,689.689 INFO    ] Published to order:TM08202202260831104507468: {'order_id': 'TM08202202260831104507468', 'server_response': '{"rstatus": false, "status": "False", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "McVities Butter Jeera Cookies58gm", "qty": 1}]}, "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 1", "SectionStatus": {"Header": "Please Close Door 1", "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"}}', 'timestamp': '2026-08-31T05:20:05.590424Z', 'server_status': 'OrderStatus'} (ID: 1788153605631-0)
[2026-08-31 10:50:08,383.383 INFO    ] {'order_id': 'TM08202202260831104507468', 'server_response': {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}, 'server_status': 'OrderStatus'}
[2026-08-31 10:50:08,386.386 INFO    ] 200
[2026-08-31 10:50:08,389.389 INFO    ] {"data":{"order_id":"TM08202202260831104507468","server_response":{"rstatus":false,"status":"false","error":{"data":[],"code":20001,"umessage":"In Progress","tmessage":"In Progress"},"SectionSKU":{"Header":"Pick the below items from the door","skus":[{"name":"McVities Butter Jeera Cookies58gm","qty":1}]},"SectionMain":{"Header":"Door Open"},"voiceNote":"Please close door 1","SectionStatus":{"Header":"Please Close Door 1","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"}},"server_status":"OrderStatus"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 10:50:08,392.392 INFO    ] {'data': {'order_id': 'TM08202202260831104507468', 'server_response': {'rstatus': False, 'status': 'false', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'error': {'data': [], 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionStatus': {'Header': 'Please Close Door 1', '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'}, 'voiceNote': 'Please close door 1', 'SectionMain': {'Header': 'Door Open'}}, 'server_status': 'OrderStatus'}, 'response': {'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'status': True}}
[2026-08-31 10:50:08,395.395 INFO    ] {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}
[2026-08-31 10:50:11,462.462 INFO    ] 200
[2026-08-31 10:50:11,464.464 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 10:50:11,468.468 INFO    ] {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}
[2026-08-31 10:50:14,545.545 INFO    ] 200
[2026-08-31 10:50:14,548.548 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 10:50:14,551.551 INFO    ] {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}
[2026-08-31 10:50:17,668.668 INFO    ] 200
[2026-08-31 10:50:17,671.671 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 10:50:17,675.675 INFO    ] Please close door 1
[2026-08-31 10:50:17,678.678 INFO    ] Please close door 1
[2026-08-31 10:50:17,680.680 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-08-31 10:50:17,683.683 INFO    ] 2026-08-31 10:50:17
[2026-08-31 10:50:17,686.686 INFO    ] playing audio file
[2026-08-31 10:50:17,704.704 INFO    ] 2026-08-31 10:50:17
[2026-08-31 10:50:17,709.709 INFO    ] publish_status: order_id=TM08202202260831104507468
[2026-08-31 10:50:17,712.712 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831104507468
[2026-08-31 10:50:17,795.795 INFO    ] [publish_status] Message added to stream with ID: 1788153617742-0
[2026-08-31 10:50:17,798.798 INFO    ] Published to order:TM08202202260831104507468: {'order_id': 'TM08202202260831104507468', 'server_response': '{"rstatus": false, "status": "False", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "McVities Butter Jeera Cookies58gm", "qty": 1}]}, "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 1", "SectionStatus": {"Header": "Please Close Door 1", "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"}}', 'timestamp': '2026-08-31T05:20:17.706719Z', 'server_status': 'OrderStatus'} (ID: 1788153617742-0)
[2026-08-31 10:50:18,415.415 INFO    ] {'order_id': 'TM08202202260831104507468', 'server_response': {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}, 'server_status': 'OrderStatus'}
[2026-08-31 10:50:18,418.418 INFO    ] 200
[2026-08-31 10:50:18,421.421 INFO    ] {"data":{"order_id":"TM08202202260831104507468","server_response":{"rstatus":false,"status":"false","error":{"data":[],"code":20001,"umessage":"In Progress","tmessage":"In Progress"},"SectionSKU":{"Header":"Pick the below items from the door","skus":[{"name":"McVities Butter Jeera Cookies58gm","qty":1}]},"SectionMain":{"Header":"Door Open"},"voiceNote":"Please close door 1","SectionStatus":{"Header":"Please Close Door 1","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"}},"server_status":"OrderStatus"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 10:50:18,424.424 INFO    ] {'data': {'order_id': 'TM08202202260831104507468', 'server_response': {'rstatus': False, 'status': 'false', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'error': {'data': [], 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionStatus': {'Header': 'Please Close Door 1', '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'}, 'voiceNote': 'Please close door 1', 'SectionMain': {'Header': 'Door Open'}}, 'server_status': 'OrderStatus'}, 'response': {'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'status': True}}
[2026-08-31 10:50:18,427.427 INFO    ] {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}
[2026-08-31 10:50:21,485.485 INFO    ] 200
[2026-08-31 10:50:21,487.487 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 10:50:21,491.491 INFO    ] {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}
[2026-08-31 10:50:24,590.590 INFO    ] 200
[2026-08-31 10:50:24,593.593 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 10:50:24,596.596 INFO    ] {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}
[2026-08-31 10:50:27,654.654 INFO    ] 200
[2026-08-31 10:50:27,657.657 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 10:50:27,660.660 INFO    ] Please close door 1
[2026-08-31 10:50:27,662.662 INFO    ] Please close door 1
[2026-08-31 10:50:27,665.665 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-08-31 10:50:27,668.668 INFO    ] 2026-08-31 10:50:27
[2026-08-31 10:50:27,670.670 INFO    ] playing audio file
[2026-08-31 10:50:27,687.687 INFO    ] 2026-08-31 10:50:27
[2026-08-31 10:50:27,691.691 INFO    ] publish_status: order_id=TM08202202260831104507468
[2026-08-31 10:50:27,694.694 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831104507468
[2026-08-31 10:50:27,799.799 INFO    ] [publish_status] Message added to stream with ID: 1788153627751-0
[2026-08-31 10:50:27,802.802 INFO    ] Published to order:TM08202202260831104507468: {'order_id': 'TM08202202260831104507468', 'server_response': '{"rstatus": false, "status": "False", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "McVities Butter Jeera Cookies58gm", "qty": 1}]}, "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 1", "SectionStatus": {"Header": "Please Close Door 1", "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"}}', 'timestamp': '2026-08-31T05:20:27.689635Z', 'server_status': 'OrderStatus'} (ID: 1788153627751-0)
[2026-08-31 10:50:28,530.530 INFO    ] {'order_id': 'TM08202202260831104507468', 'server_response': {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}, 'server_status': 'OrderStatus'}
[2026-08-31 10:50:28,533.533 INFO    ] 200
[2026-08-31 10:50:28,536.536 INFO    ] {"data":{"order_id":"TM08202202260831104507468","server_response":{"rstatus":false,"status":"false","error":{"data":[],"code":20001,"umessage":"In Progress","tmessage":"In Progress"},"SectionSKU":{"Header":"Pick the below items from the door","skus":[{"name":"McVities Butter Jeera Cookies58gm","qty":1}]},"SectionMain":{"Header":"Door Open"},"voiceNote":"Please close door 1","SectionStatus":{"Header":"Please Close Door 1","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"}},"server_status":"OrderStatus"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 10:50:28,539.539 INFO    ] {'data': {'order_id': 'TM08202202260831104507468', 'server_response': {'rstatus': False, 'status': 'false', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'error': {'data': [], 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionStatus': {'Header': 'Please Close Door 1', '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'}, 'voiceNote': 'Please close door 1', 'SectionMain': {'Header': 'Door Open'}}, 'server_status': 'OrderStatus'}, 'response': {'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'status': True}}
[2026-08-31 10:50:28,542.542 INFO    ] {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}
[2026-08-31 10:50:31,597.597 INFO    ] 200
[2026-08-31 10:50:31,599.599 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 10:50:31,602.602 INFO    ] {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}
[2026-08-31 10:50:34,933.933 INFO    ] 200
[2026-08-31 10:50:34,935.935 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 10:50:34,939.939 INFO    ] {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}
[2026-08-31 10:50:38,050.050 INFO    ] 200
[2026-08-31 10:50:38,053.053 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 10:50:38,056.056 INFO    ] Please close door 1
[2026-08-31 10:50:38,059.059 INFO    ] Please close door 1
[2026-08-31 10:50:38,061.061 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-08-31 10:50:38,064.064 INFO    ] 2026-08-31 10:50:38
[2026-08-31 10:50:38,067.067 INFO    ] playing audio file
[2026-08-31 10:50:38,085.085 INFO    ] 2026-08-31 10:50:38
[2026-08-31 10:50:38,089.089 INFO    ] publish_status: order_id=TM08202202260831104507468
[2026-08-31 10:50:38,092.092 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831104507468
[2026-08-31 10:50:38,198.198 INFO    ] [publish_status] Message added to stream with ID: 1788153638143-0
[2026-08-31 10:50:38,201.201 INFO    ] Published to order:TM08202202260831104507468: {'order_id': 'TM08202202260831104507468', 'server_response': '{"rstatus": false, "status": "False", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "McVities Butter Jeera Cookies58gm", "qty": 1}]}, "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 1", "SectionStatus": {"Header": "Please Close Door 1", "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"}}', 'timestamp': '2026-08-31T05:20:38.087597Z', 'server_status': 'OrderStatus'} (ID: 1788153638143-0)
[2026-08-31 10:50:38,800.800 INFO    ] {'order_id': 'TM08202202260831104507468', 'server_response': {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}, 'server_status': 'OrderStatus'}
[2026-08-31 10:50:38,803.803 INFO    ] 200
[2026-08-31 10:50:38,805.805 INFO    ] {"data":{"order_id":"TM08202202260831104507468","server_response":{"rstatus":false,"status":"false","error":{"data":[],"code":20001,"umessage":"In Progress","tmessage":"In Progress"},"SectionSKU":{"Header":"Pick the below items from the door","skus":[{"name":"McVities Butter Jeera Cookies58gm","qty":1}]},"SectionMain":{"Header":"Door Open"},"voiceNote":"Please close door 1","SectionStatus":{"Header":"Please Close Door 1","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"}},"server_status":"OrderStatus"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 10:50:38,808.808 INFO    ] {'data': {'order_id': 'TM08202202260831104507468', 'server_response': {'rstatus': False, 'status': 'false', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'error': {'data': [], 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionStatus': {'Header': 'Please Close Door 1', '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'}, 'voiceNote': 'Please close door 1', 'SectionMain': {'Header': 'Door Open'}}, 'server_status': 'OrderStatus'}, 'response': {'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'status': True}}
[2026-08-31 10:50:38,811.811 INFO    ] {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}
[2026-08-31 10:50:41,867.867 INFO    ] 200
[2026-08-31 10:50:41,870.870 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 10:50:41,873.873 INFO    ] {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}
[2026-08-31 10:50:44,945.945 INFO    ] 200
[2026-08-31 10:50:44,948.948 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 10:50:44,950.950 INFO    ] {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}
[2026-08-31 10:50:48,000.000 INFO    ] 200
[2026-08-31 10:50:48,002.002 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 10:50:48,005.005 INFO    ] Please close door 1
[2026-08-31 10:50:48,007.007 INFO    ] Please close door 1
[2026-08-31 10:50:48,009.009 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-08-31 10:50:48,012.012 INFO    ] 2026-08-31 10:50:48
[2026-08-31 10:50:48,014.014 INFO    ] playing audio file
[2026-08-31 10:50:48,032.032 INFO    ] 2026-08-31 10:50:48
[2026-08-31 10:50:48,035.035 INFO    ] publish_status: order_id=TM08202202260831104507468
[2026-08-31 10:50:48,038.038 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831104507468
[2026-08-31 10:50:48,163.163 INFO    ] [publish_status] Message added to stream with ID: 1788153648116-0
[2026-08-31 10:50:48,166.166 INFO    ] Published to order:TM08202202260831104507468: {'order_id': 'TM08202202260831104507468', 'server_response': '{"rstatus": false, "status": "False", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "McVities Butter Jeera Cookies58gm", "qty": 1}]}, "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 1", "SectionStatus": {"Header": "Please Close Door 1", "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"}}', 'timestamp': '2026-08-31T05:20:48.034199Z', 'server_status': 'OrderStatus'} (ID: 1788153648116-0)
[2026-08-31 10:50:48,762.762 INFO    ] {'order_id': 'TM08202202260831104507468', 'server_response': {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}, 'server_status': 'OrderStatus'}
[2026-08-31 10:50:48,765.765 INFO    ] 200
[2026-08-31 10:50:48,768.768 INFO    ] {"data":{"order_id":"TM08202202260831104507468","server_response":{"rstatus":false,"status":"false","error":{"data":[],"code":20001,"umessage":"In Progress","tmessage":"In Progress"},"SectionSKU":{"Header":"Pick the below items from the door","skus":[{"name":"McVities Butter Jeera Cookies58gm","qty":1}]},"SectionMain":{"Header":"Door Open"},"voiceNote":"Please close door 1","SectionStatus":{"Header":"Please Close Door 1","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"}},"server_status":"OrderStatus"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 10:50:48,771.771 INFO    ] {'data': {'order_id': 'TM08202202260831104507468', 'server_response': {'rstatus': False, 'status': 'false', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'error': {'data': [], 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionStatus': {'Header': 'Please Close Door 1', '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'}, 'voiceNote': 'Please close door 1', 'SectionMain': {'Header': 'Door Open'}}, 'server_status': 'OrderStatus'}, 'response': {'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'status': True}}
[2026-08-31 10:50:48,774.774 INFO    ] {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}
[2026-08-31 10:50:51,829.829 INFO    ] 200
[2026-08-31 10:50:51,831.831 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 10:50:51,834.834 INFO    ] {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}
[2026-08-31 10:50:54,901.901 INFO    ] 200
[2026-08-31 10:50:54,904.904 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 10:50:54,907.907 INFO    ] {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}
[2026-08-31 10:50:57,972.972 INFO    ] 200
[2026-08-31 10:50:57,974.974 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 10:50:57,977.977 INFO    ] Please close door 1
[2026-08-31 10:50:57,980.980 INFO    ] Please close door 1
[2026-08-31 10:50:57,982.982 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-08-31 10:50:57,985.985 INFO    ] 2026-08-31 10:50:57
[2026-08-31 10:50:57,988.988 INFO    ] playing audio file
[2026-08-31 10:50:58,010.010 INFO    ] 2026-08-31 10:50:58
[2026-08-31 10:50:58,014.014 INFO    ] publish_status: order_id=TM08202202260831104507468
[2026-08-31 10:50:58,016.016 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831104507468
[2026-08-31 10:50:58,096.096 INFO    ] [publish_status] Message added to stream with ID: 1788153658048-0
[2026-08-31 10:50:58,099.099 INFO    ] Published to order:TM08202202260831104507468: {'order_id': 'TM08202202260831104507468', 'server_response': '{"rstatus": false, "status": "False", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "McVities Butter Jeera Cookies58gm", "qty": 1}]}, "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 1", "SectionStatus": {"Header": "Please Close Door 1", "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"}}', 'timestamp': '2026-08-31T05:20:58.012086Z', 'server_status': 'OrderStatus'} (ID: 1788153658048-0)
[2026-08-31 10:50:58,705.705 INFO    ] {'order_id': 'TM08202202260831104507468', 'server_response': {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}, 'server_status': 'OrderStatus'}
[2026-08-31 10:50:58,708.708 INFO    ] 200
[2026-08-31 10:50:58,711.711 INFO    ] {"data":{"order_id":"TM08202202260831104507468","server_response":{"rstatus":false,"status":"false","error":{"data":[],"code":20001,"umessage":"In Progress","tmessage":"In Progress"},"SectionSKU":{"Header":"Pick the below items from the door","skus":[{"name":"McVities Butter Jeera Cookies58gm","qty":1}]},"SectionMain":{"Header":"Door Open"},"voiceNote":"Please close door 1","SectionStatus":{"Header":"Please Close Door 1","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"}},"server_status":"OrderStatus"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 10:50:58,714.714 INFO    ] {'data': {'order_id': 'TM08202202260831104507468', 'server_response': {'rstatus': False, 'status': 'false', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'error': {'data': [], 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionStatus': {'Header': 'Please Close Door 1', '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'}, 'voiceNote': 'Please close door 1', 'SectionMain': {'Header': 'Door Open'}}, 'server_status': 'OrderStatus'}, 'response': {'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'status': True}}
[2026-08-31 10:50:58,717.717 INFO    ] {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}
[2026-08-31 10:51:01,774.774 INFO    ] 200
[2026-08-31 10:51:01,776.776 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 10:51:01,780.780 INFO    ] {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}
[2026-08-31 10:51:04,840.840 INFO    ] 200
[2026-08-31 10:51:04,843.843 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 10:51:04,846.846 INFO    ] {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}
[2026-08-31 10:51:08,033.033 INFO    ] 200
[2026-08-31 10:51:08,036.036 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 10:51:08,040.040 INFO    ] Please close door 1
[2026-08-31 10:51:08,043.043 INFO    ] Please close door 1
[2026-08-31 10:51:08,045.045 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-08-31 10:51:08,048.048 INFO    ] 2026-08-31 10:51:08
[2026-08-31 10:51:08,051.051 INFO    ] playing audio file
[2026-08-31 10:51:08,071.071 INFO    ] 2026-08-31 10:51:08
[2026-08-31 10:51:08,075.075 INFO    ] publish_status: order_id=TM08202202260831104507468
[2026-08-31 10:51:08,078.078 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831104507468
[2026-08-31 10:51:08,283.283 INFO    ] [publish_status] Message added to stream with ID: 1788153668236-0
[2026-08-31 10:51:08,286.286 INFO    ] Published to order:TM08202202260831104507468: {'order_id': 'TM08202202260831104507468', 'server_response': '{"rstatus": false, "status": "False", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "McVities Butter Jeera Cookies58gm", "qty": 1}]}, "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 1", "SectionStatus": {"Header": "Please Close Door 1", "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"}}', 'timestamp': '2026-08-31T05:21:08.073075Z', 'server_status': 'OrderStatus'} (ID: 1788153668236-0)
[2026-08-31 10:51:08,930.930 INFO    ] {'order_id': 'TM08202202260831104507468', 'server_response': {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}, 'server_status': 'OrderStatus'}
[2026-08-31 10:51:08,932.932 INFO    ] 200
[2026-08-31 10:51:08,934.934 INFO    ] {"data":{"order_id":"TM08202202260831104507468","server_response":{"rstatus":false,"status":"false","error":{"data":[],"code":20001,"umessage":"In Progress","tmessage":"In Progress"},"SectionSKU":{"Header":"Pick the below items from the door","skus":[{"name":"McVities Butter Jeera Cookies58gm","qty":1}]},"SectionMain":{"Header":"Door Open"},"voiceNote":"Please close door 1","SectionStatus":{"Header":"Please Close Door 1","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"}},"server_status":"OrderStatus"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 10:51:08,937.937 INFO    ] {'data': {'order_id': 'TM08202202260831104507468', 'server_response': {'rstatus': False, 'status': 'false', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'error': {'data': [], 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionStatus': {'Header': 'Please Close Door 1', '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'}, 'voiceNote': 'Please close door 1', 'SectionMain': {'Header': 'Door Open'}}, 'server_status': 'OrderStatus'}, 'response': {'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'status': True}}
[2026-08-31 10:51:08,940.940 INFO    ] {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}
[2026-08-31 10:51:12,067.067 INFO    ] 200
[2026-08-31 10:51:12,070.070 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 10:51:12,073.073 INFO    ] {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}
[2026-08-31 10:51:12,076.076 INFO    ] 2026-08-31 10:51:12
[2026-08-31 10:51:12,079.079 INFO    ] Order Completed 
[2026-08-31 10:51:12,082.082 INFO    ] Order Completed 
[2026-08-31 10:51:12,085.085 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-08-31 10:51:12,088.088 INFO    ] 2026-08-31 10:51:12
[2026-08-31 10:51:12,090.090 INFO    ] playing audio file
[2026-08-31 10:51:12,109.109 INFO    ] 2026-08-31 10:51:12
[2026-08-31 10:51:12,113.113 INFO    ] publish_status: order_id=TM08202202260831104507468
[2026-08-31 10:51:12,116.116 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831104507468
[2026-08-31 10:51:12,211.211 INFO    ] [publish_status] Message added to stream with ID: 1788153672161-0
[2026-08-31 10:51:12,213.213 INFO    ] Published to order:TM08202202260831104507468: {'order_id': 'TM08202202260831104507468', 'server_response': '{"rstatus": false, "status": "False", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "McVities Butter Jeera Cookies58gm", "qty": 1}]}, "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 1", "SectionStatus": {"Header": "Please Close Door 1", "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"}}', 'timestamp': '2026-08-31T05:21:12.111426Z', 'server_status': 'Timeout'} (ID: 1788153672161-0)
[2026-08-31 10:51:12,429.429 INFO    ] {'order_id': 'TM08202202260831104507468', 'server_response': {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}, 'server_status': 'Timeout'}
[2026-08-31 10:51:12,431.431 INFO    ] 200
[2026-08-31 10:51:12,434.434 INFO    ] {"data":{"order_id":"TM08202202260831104507468","server_response":{"rstatus":false,"status":"false","error":{"data":[],"code":20001,"umessage":"In Progress","tmessage":"In Progress"},"SectionSKU":{"Header":"Pick the below items from the door","skus":[{"name":"McVities Butter Jeera Cookies58gm","qty":1}]},"SectionMain":{"Header":"Door Open"},"voiceNote":"Please close door 1","SectionStatus":{"Header":"Please Close Door 1","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"}},"server_status":"Timeout"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 10:51:12,438.438 INFO    ] {'data': {'order_id': 'TM08202202260831104507468', 'server_response': {'rstatus': False, 'status': 'false', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'error': {'data': [], 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionStatus': {'Header': 'Please Close Door 1', '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'}, 'voiceNote': 'Please close door 1', 'SectionMain': {'Header': 'Door Open'}}, 'server_status': 'Timeout'}, 'response': {'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'status': True}}
[2026-08-31 10:51:12,441.441 INFO    ] {'rstatus': False, 'status': 'False', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', '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'}}
[2026-08-31 10:51:12,444.444 INFO    ] 2026-08-31 10:51:12
[2026-08-31 10:51:28,320.320 INFO    ] 200
[2026-08-31 10:51:28,324.324 INFO    ] the JSON object must be str, not 'dict'
[2026-08-31 10:51:28,328.328 INFO    ] <class 'json.decoder.JSONDecodeError'>
[2026-08-31 10:51:28,350.350 INFO    ] ('Expecting value: line 1 column 1 (char 0)',)
[2026-08-31 10:51:28,360.360 INFO    ] Expecting value: line 1 column 1 (char 0)
[2026-08-31 10:51:28,376.376 INFO    ] None
[2026-08-31 10:51:44,196.196 INFO    ] 200
[2026-08-31 10:51:44,199.199 INFO    ] the JSON object must be str, not 'dict'
[2026-08-31 10:51:44,201.201 INFO    ] <class 'json.decoder.JSONDecodeError'>
[2026-08-31 10:51:44,208.208 INFO    ] ('Expecting value: line 1 column 1 (char 0)',)
[2026-08-31 10:51:44,215.215 INFO    ] Expecting value: line 1 column 1 (char 0)
[2026-08-31 10:51:44,222.222 INFO    ] None
[2026-08-31 10:52:02,798.798 INFO    ] 200
[2026-08-31 10:52:02,801.801 INFO    ] the JSON object must be str, not 'dict'
[2026-08-31 10:52:02,805.805 INFO    ] <class 'json.decoder.JSONDecodeError'>
[2026-08-31 10:52:02,813.813 INFO    ] ('Expecting value: line 1 column 1 (char 0)',)
[2026-08-31 10:52:02,821.821 INFO    ] Expecting value: line 1 column 1 (char 0)
[2026-08-31 10:52:02,829.829 INFO    ] None
[2026-08-31 10:52:21,404.404 INFO    ] 200
[2026-08-31 10:52:21,407.407 INFO    ] the JSON object must be str, not 'dict'
[2026-08-31 10:52:21,410.410 INFO    ] <class 'json.decoder.JSONDecodeError'>
[2026-08-31 10:52:21,416.416 INFO    ] ('Expecting value: line 1 column 1 (char 0)',)
[2026-08-31 10:52:21,423.423 INFO    ] Expecting value: line 1 column 1 (char 0)
[2026-08-31 10:52:21,430.430 INFO    ] None
[2026-08-31 10:52:39,982.982 INFO    ] 200
[2026-08-31 10:52:39,985.985 INFO    ] the JSON object must be str, not 'dict'
[2026-08-31 10:52:39,988.988 INFO    ] <class 'json.decoder.JSONDecodeError'>
[2026-08-31 10:52:39,995.995 INFO    ] ('Expecting value: line 1 column 1 (char 0)',)
[2026-08-31 10:52:40,002.002 INFO    ] Expecting value: line 1 column 1 (char 0)
[2026-08-31 10:52:40,009.009 INFO    ] None
[2026-08-31 10:52:43,015.015 INFO    ] 2026-08-31 10:52:43
[2026-08-31 10:52:43,018.018 INFO    ] 2026-08-31 10:52:43
[2026-08-31 10:52:43,021.021 INFO    ] 10
[2026-08-31 10:52:43,023.023 INFO    ] 2026-08-31 10:52:43
[2026-08-31 10:52:43,026.026 INFO    ] 2026-08-31 10:52:43
[2026-08-31 10:52:43,028.028 INFO    ] 
[2026-08-31 10:52:43,031.031 INFO    ] 2026-08-31 10:52:43
[2026-08-31 10:52:43,034.034 INFO    ] publish_status: order_id=TM08202202260831104507468
[2026-08-31 10:52:43,036.036 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831104507468
[2026-08-31 10:52:43,128.128 INFO    ] [publish_status] Message added to stream with ID: 1788153763073-0
[2026-08-31 10:52:43,131.131 INFO    ] Published to order:TM08202202260831104507468: {'order_id': 'TM08202202260831104507468', 'server_response': 'null', 'timestamp': '2026-08-31T05:22:43.032534Z', 'server_status': 'invoiceOrder'} (ID: 1788153763073-0)
[2026-08-31 10:52:43,771.771 INFO    ] {'order_id': 'TM08202202260831104507468', 'server_response': None, 'server_status': 'invoiceOrder'}
[2026-08-31 10:52:43,773.773 INFO    ] 200
[2026-08-31 10:52:43,775.775 INFO    ] {"data":{"order_id":"TM08202202260831104507468","server_response":null,"server_status":"invoiceOrder"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 10:52:43,778.778 INFO    ] {'data': {'order_id': 'TM08202202260831104507468', 'server_response': None, 'server_status': 'invoiceOrder'}, 'response': {'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'status': True}}
[2026-08-31 10:52:43,780.780 INFO    ] {'data': {'order_id': 'TM08202202260831104507468', 'server_response': None, 'server_status': 'invoiceOrder'}, 'response': {'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'status': True}}
[2026-08-31 10:52:43,783.783 INFO    ] 2026-08-31 10:52:43
[2026-08-31 10:52:45,274.274 INFO    ] 200
[2026-08-31 10:52:45,276.276 INFO    ] {"tray_sync": [], "order_items": [], "orders_data": [], "orders_synced": [], "tray_synced": ["no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry"], "orders_data_synced": [], "status": true, "order_items_synced": [], "orders": []}
[2026-08-31 10:52:45,280.280 INFO    ] 2026-08-31 10:52:45
[2026-08-31 10:52:45,540.540 INFO    ] 200
[2026-08-31 10:52:45,543.543 INFO    ] True
[2026-08-31 10:52:45,545.545 INFO    ] cleanup_start_order_file_after_processing: order_id=TM08202202260831104507468
[2026-08-31 10:52:45,549.549 INFO    ] start order file deleted
[2026-08-31 10:52:45,552.552 INFO    ] Checking for system updates...
[2026-08-31 10:52:45,597.597 INFO    ] 200
[2026-08-31 10:52:45,600.600 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_ORDER"}
[2026-08-31 10:52:45,603.603 INFO    ] Machine not idle (state: STATE_ORDER), skipping update check
[2026-08-31 10:52:45,605.605 INFO    ] Checking for camera pi updates...
[2026-08-31 10:52:45,648.648 INFO    ] 200
[2026-08-31 10:52:45,651.651 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_ORDER"}
[2026-08-31 10:52:45,654.654 INFO    ] Machine not idle (state: STATE_ORDER), skipping camera update check
[2026-08-31 10:52:45,656.656 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:52:45,660.660 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:52:45,666.666 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:52:45,671.671 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:52:47,717.717 INFO    ] ================================================
[2026-08-31 10:52:47,733.733 INFO    ] Launching Daemon at Mon Aug 31 10:52:47 IST 2026
[2026-08-31 10:52:47,748.748 INFO    ] ================================================
[2026-08-31 10:52:48,356.356 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:52:48
[2026-08-31 10:52:48,975.975 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:52:49,252.252 INFO    ] Initializing speech engine...
[2026-08-31 10:52:49,272.272 INFO    ] 2026-08-31 10:52:49
[2026-08-31 10:52:49,562.562 INFO    ] 2026-08-31 10:52:49
[2026-08-31 10:52:49,600.600 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:52:49,870.870 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:52:49,875.875 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:52:50,096.096 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:52:50,140.140 INFO    ] time= 31/08/2026 10:52:50
[2026-08-31 10:52:50,147.147 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:52:50,168.168 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:52:50,333.333 INFO    ] No existing commands found in stream
[2026-08-31 10:52:55,370.370 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:52:55,373.373 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-08-31 10:52:59,225.225 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 10:52:59,246.246 INFO    ] Checking for system updates...
[2026-08-31 10:52:59,292.292 INFO    ] 200
[2026-08-31 10:52:59,295.295 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_ORDER"}
[2026-08-31 10:52:59,298.298 INFO    ] Machine not idle (state: STATE_ORDER), skipping update check
[2026-08-31 10:52:59,301.301 INFO    ] Checking for camera pi updates...
[2026-08-31 10:52:59,379.379 INFO    ] 200
[2026-08-31 10:52:59,381.381 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_ORDER"}
[2026-08-31 10:52:59,384.384 INFO    ] Machine not idle (state: STATE_ORDER), skipping camera update check
[2026-08-31 10:52:59,387.387 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:52:59,390.390 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:52:59,396.396 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:52:59,402.402 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:53:01,444.444 INFO    ] ================================================
[2026-08-31 10:53:01,461.461 INFO    ] Launching Daemon at Mon Aug 31 10:53:01 IST 2026
[2026-08-31 10:53:01,473.473 INFO    ] ================================================
[2026-08-31 10:53:02,319.319 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:53:02
[2026-08-31 10:53:03,026.026 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:53:03,544.544 INFO    ] Initializing speech engine...
[2026-08-31 10:53:03,549.549 INFO    ] 2026-08-31 10:53:03
[2026-08-31 10:53:03,848.848 INFO    ] 2026-08-31 10:53:03
[2026-08-31 10:53:03,913.913 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:53:04,179.179 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:53:04,220.220 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:53:04,373.373 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:53:04,376.376 INFO    ] time= 31/08/2026 10:53:04
[2026-08-31 10:53:04,415.415 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:53:04,450.450 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:53:04,534.534 INFO    ] No existing commands found in stream
[2026-08-31 10:53:09,559.559 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:53:09,562.562 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-08-31 10:53:10,490.490 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 10:53:10,493.493 INFO    ] Checking for system updates...
[2026-08-31 10:53:10,555.555 INFO    ] 200
[2026-08-31 10:53:10,558.558 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_ORDER"}
[2026-08-31 10:53:10,561.561 INFO    ] Machine not idle (state: STATE_ORDER), skipping update check
[2026-08-31 10:53:10,563.563 INFO    ] Checking for camera pi updates...
[2026-08-31 10:53:10,606.606 INFO    ] 200
[2026-08-31 10:53:10,609.609 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_ORDER"}
[2026-08-31 10:53:10,611.611 INFO    ] Machine not idle (state: STATE_ORDER), skipping camera update check
[2026-08-31 10:53:10,614.614 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:53:10,616.616 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:53:10,622.622 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:53:10,627.627 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:53:12,673.673 INFO    ] ================================================
[2026-08-31 10:53:12,690.690 INFO    ] Launching Daemon at Mon Aug 31 10:53:12 IST 2026
[2026-08-31 10:53:12,702.702 INFO    ] ================================================
[2026-08-31 10:53:13,301.301 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:53:13
[2026-08-31 10:53:13,933.933 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:53:14,210.210 INFO    ] Initializing speech engine...
[2026-08-31 10:53:14,228.228 INFO    ] 2026-08-31 10:53:14
[2026-08-31 10:53:14,512.512 INFO    ] 2026-08-31 10:53:14
[2026-08-31 10:53:14,583.583 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:53:14,830.830 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:53:14,837.837 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:53:15,001.001 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:53:15,019.019 INFO    ] time= 31/08/2026 10:53:15
[2026-08-31 10:53:15,073.073 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:53:15,118.118 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:53:15,216.216 INFO    ] No existing commands found in stream
[2026-08-31 10:53:20,229.229 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:53:20,232.232 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-08-31 10:53:23,890.890 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 10:53:23,893.893 INFO    ] Checking for system updates...
[2026-08-31 10:53:23,952.952 INFO    ] 200
[2026-08-31 10:53:23,955.955 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_ORDER"}
[2026-08-31 10:53:23,958.958 INFO    ] Machine not idle (state: STATE_ORDER), skipping update check
[2026-08-31 10:53:23,961.961 INFO    ] Checking for camera pi updates...
[2026-08-31 10:53:24,020.020 INFO    ] 200
[2026-08-31 10:53:24,023.023 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_ORDER"}
[2026-08-31 10:53:24,026.026 INFO    ] Machine not idle (state: STATE_ORDER), skipping camera update check
[2026-08-31 10:53:24,029.029 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:53:24,032.032 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:53:24,038.038 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:53:24,044.044 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:53:26,089.089 INFO    ] ================================================
[2026-08-31 10:53:26,107.107 INFO    ] Launching Daemon at Mon Aug 31 10:53:26 IST 2026
[2026-08-31 10:53:26,127.127 INFO    ] ================================================
[2026-08-31 10:53:26,716.716 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:53:26
[2026-08-31 10:53:27,353.353 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:53:27,655.655 INFO    ] Initializing speech engine...
[2026-08-31 10:53:27,662.662 INFO    ] 2026-08-31 10:53:27
[2026-08-31 10:53:27,922.922 INFO    ] 2026-08-31 10:53:27
[2026-08-31 10:53:27,968.968 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:53:28,235.235 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:53:28,244.244 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:53:28,386.386 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:53:28,436.436 INFO    ] time= 31/08/2026 10:53:28
[2026-08-31 10:53:28,505.505 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:53:28,524.524 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:53:28,651.651 INFO    ] No existing commands found in stream
[2026-08-31 10:53:33,660.660 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:53:33,662.662 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-08-31 10:53:35,770.770 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 10:53:35,773.773 INFO    ] Checking for system updates...
[2026-08-31 10:53:35,826.826 INFO    ] 200
[2026-08-31 10:53:35,829.829 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_ORDER"}
[2026-08-31 10:53:35,833.833 INFO    ] Machine not idle (state: STATE_ORDER), skipping update check
[2026-08-31 10:53:35,836.836 INFO    ] Checking for camera pi updates...
[2026-08-31 10:53:35,951.951 INFO    ] 200
[2026-08-31 10:53:35,955.955 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_ORDER"}
[2026-08-31 10:53:35,962.962 INFO    ] Machine not idle (state: STATE_ORDER), skipping camera update check
[2026-08-31 10:53:35,965.965 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:53:35,976.976 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:53:35,983.983 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:53:35,992.992 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:53:38,044.044 INFO    ] ================================================
[2026-08-31 10:53:38,063.063 INFO    ] Launching Daemon at Mon Aug 31 10:53:38 IST 2026
[2026-08-31 10:53:38,083.083 INFO    ] ================================================
[2026-08-31 10:53:38,708.708 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:53:38
[2026-08-31 10:53:39,367.367 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:53:39,640.640 INFO    ] Initializing speech engine...
[2026-08-31 10:53:39,662.662 INFO    ] 2026-08-31 10:53:39
[2026-08-31 10:53:39,961.961 INFO    ] 2026-08-31 10:53:39
[2026-08-31 10:53:39,999.999 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:53:40,315.315 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:53:40,324.324 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:53:40,458.458 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:53:40,472.472 INFO    ] time= 31/08/2026 10:53:40
[2026-08-31 10:53:40,474.474 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:53:40,476.476 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:53:40,615.615 INFO    ] No existing commands found in stream
[2026-08-31 10:53:45,646.646 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:53:45,698.698 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-08-31 10:53:48,347.347 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 10:53:48,351.351 INFO    ] Checking for system updates...
[2026-08-31 10:53:48,396.396 INFO    ] 200
[2026-08-31 10:53:48,399.399 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_ORDER"}
[2026-08-31 10:53:48,403.403 INFO    ] Machine not idle (state: STATE_ORDER), skipping update check
[2026-08-31 10:53:48,406.406 INFO    ] Checking for camera pi updates...
[2026-08-31 10:53:48,529.529 INFO    ] 200
[2026-08-31 10:53:48,532.532 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_ORDER"}
[2026-08-31 10:53:48,535.535 INFO    ] Machine not idle (state: STATE_ORDER), skipping camera update check
[2026-08-31 10:53:48,538.538 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:53:48,541.541 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:53:48,548.548 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:53:48,555.555 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:53:50,601.601 INFO    ] ================================================
[2026-08-31 10:53:50,626.626 INFO    ] Launching Daemon at Mon Aug 31 10:53:50 IST 2026
[2026-08-31 10:53:50,643.643 INFO    ] ================================================
[2026-08-31 10:53:51,250.250 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:53:51
[2026-08-31 10:53:51,890.890 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:53:52,177.177 INFO    ] Initializing speech engine...
[2026-08-31 10:53:52,185.185 INFO    ] 2026-08-31 10:53:52
[2026-08-31 10:53:52,480.480 INFO    ] 2026-08-31 10:53:52
[2026-08-31 10:53:52,517.517 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:53:52,739.739 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:53:52,800.800 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:53:52,948.948 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:53:52,999.999 INFO    ] time= 31/08/2026 10:53:52
[2026-08-31 10:53:53,073.073 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:53:53,086.086 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:53:53,199.199 INFO    ] No existing commands found in stream
[2026-08-31 10:53:58,223.223 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:53:58,226.226 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-08-31 10:54:00,310.310 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 10:54:00,313.313 INFO    ] Checking for system updates...
[2026-08-31 10:54:00,364.364 INFO    ] 200
[2026-08-31 10:54:00,367.367 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_ORDER"}
[2026-08-31 10:54:00,370.370 INFO    ] Machine not idle (state: STATE_ORDER), skipping update check
[2026-08-31 10:54:00,373.373 INFO    ] Checking for camera pi updates...
[2026-08-31 10:54:00,430.430 INFO    ] 200
[2026-08-31 10:54:00,433.433 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_ORDER"}
[2026-08-31 10:54:00,436.436 INFO    ] Machine not idle (state: STATE_ORDER), skipping camera update check
[2026-08-31 10:54:00,438.438 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:54:00,441.441 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:54:00,447.447 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:54:00,452.452 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:54:02,508.508 INFO    ] ================================================
[2026-08-31 10:54:02,543.543 INFO    ] Launching Daemon at Mon Aug 31 10:54:02 IST 2026
[2026-08-31 10:54:02,572.572 INFO    ] ================================================
[2026-08-31 10:54:03,243.243 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:54:03
[2026-08-31 10:54:03,920.920 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:54:04,234.234 INFO    ] Initializing speech engine...
[2026-08-31 10:54:04,245.245 INFO    ] 2026-08-31 10:54:04
[2026-08-31 10:54:04,532.532 INFO    ] 2026-08-31 10:54:04
[2026-08-31 10:54:04,586.586 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:54:04,732.732 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:54:04,745.745 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:54:04,895.895 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:54:04,904.904 INFO    ] time= 31/08/2026 10:54:04
[2026-08-31 10:54:04,910.910 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:54:04,956.956 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:54:05,090.090 INFO    ] No existing commands found in stream
[2026-08-31 10:54:10,113.113 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:54:10,116.116 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-08-31 10:54:14,008.008 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 10:54:14,012.012 INFO    ] Checking for system updates...
[2026-08-31 10:54:14,066.066 INFO    ] 200
[2026-08-31 10:54:14,070.070 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_ORDER"}
[2026-08-31 10:54:14,073.073 INFO    ] Machine not idle (state: STATE_ORDER), skipping update check
[2026-08-31 10:54:14,076.076 INFO    ] Checking for camera pi updates...
[2026-08-31 10:54:14,132.132 INFO    ] 200
[2026-08-31 10:54:14,135.135 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_ORDER"}
[2026-08-31 10:54:14,139.139 INFO    ] Machine not idle (state: STATE_ORDER), skipping camera update check
[2026-08-31 10:54:14,142.142 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:54:14,145.145 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:54:14,152.152 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:54:14,158.158 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:54:16,199.199 INFO    ] ================================================
[2026-08-31 10:54:16,215.215 INFO    ] Launching Daemon at Mon Aug 31 10:54:16 IST 2026
[2026-08-31 10:54:16,227.227 INFO    ] ================================================
[2026-08-31 10:54:16,853.853 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:54:16
[2026-08-31 10:54:17,485.485 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:54:17,836.836 INFO    ] Initializing speech engine...
[2026-08-31 10:54:17,845.845 INFO    ] 2026-08-31 10:54:17
[2026-08-31 10:54:18,137.137 INFO    ] 2026-08-31 10:54:18
[2026-08-31 10:54:18,187.187 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:54:18,489.489 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:54:18,497.497 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:54:18,691.691 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:54:18,726.726 INFO    ] time= 31/08/2026 10:54:18
[2026-08-31 10:54:18,740.740 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:54:18,751.751 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:54:18,820.820 INFO    ] No existing commands found in stream
[2026-08-31 10:54:23,854.854 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:54:23,857.857 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-08-31 10:54:27,140.140 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 10:54:27,143.143 INFO    ] Checking for system updates...
[2026-08-31 10:54:27,180.180 INFO    ] 200
[2026-08-31 10:54:27,182.182 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_ORDER"}
[2026-08-31 10:54:27,185.185 INFO    ] Machine not idle (state: STATE_ORDER), skipping update check
[2026-08-31 10:54:27,188.188 INFO    ] Checking for camera pi updates...
[2026-08-31 10:54:27,235.235 INFO    ] 200
[2026-08-31 10:54:27,238.238 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_ORDER"}
[2026-08-31 10:54:27,242.242 INFO    ] Machine not idle (state: STATE_ORDER), skipping camera update check
[2026-08-31 10:54:27,244.244 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:54:27,247.247 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:54:27,255.255 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:54:27,261.261 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:54:29,306.306 INFO    ] ================================================
[2026-08-31 10:54:29,333.333 INFO    ] Launching Daemon at Mon Aug 31 10:54:29 IST 2026
[2026-08-31 10:54:29,349.349 INFO    ] ================================================
[2026-08-31 10:54:30,040.040 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:54:30
[2026-08-31 10:54:30,721.721 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:54:31,032.032 INFO    ] Initializing speech engine...
[2026-08-31 10:54:31,039.039 INFO    ] 2026-08-31 10:54:31
[2026-08-31 10:54:31,379.379 INFO    ] 2026-08-31 10:54:31
[2026-08-31 10:54:31,469.469 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:54:31,676.676 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:54:31,703.703 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:54:31,898.898 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:54:31,940.940 INFO    ] time= 31/08/2026 10:54:31
[2026-08-31 10:54:31,954.954 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:54:31,958.958 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:54:32,055.055 INFO    ] No existing commands found in stream
[2026-08-31 10:54:37,092.092 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:54:37,095.095 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-08-31 10:54:38,111.111 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 10:54:38,114.114 INFO    ] Checking for system updates...
[2026-08-31 10:54:38,172.172 INFO    ] 200
[2026-08-31 10:54:38,175.175 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_ORDER"}
[2026-08-31 10:54:38,179.179 INFO    ] Machine not idle (state: STATE_ORDER), skipping update check
[2026-08-31 10:54:38,181.181 INFO    ] Checking for camera pi updates...
[2026-08-31 10:54:38,228.228 INFO    ] 200
[2026-08-31 10:54:38,231.231 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_ORDER"}
[2026-08-31 10:54:38,234.234 INFO    ] Machine not idle (state: STATE_ORDER), skipping camera update check
[2026-08-31 10:54:38,236.236 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:54:38,242.242 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:54:38,259.259 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:54:38,274.274 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:54:40,342.342 INFO    ] ================================================
[2026-08-31 10:54:40,373.373 INFO    ] Launching Daemon at Mon Aug 31 10:54:40 IST 2026
[2026-08-31 10:54:40,390.390 INFO    ] ================================================
[2026-08-31 10:54:41,032.032 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:54:41
[2026-08-31 10:54:41,660.660 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:54:41,948.948 INFO    ] Initializing speech engine...
[2026-08-31 10:54:41,968.968 INFO    ] 2026-08-31 10:54:41
[2026-08-31 10:54:42,236.236 INFO    ] 2026-08-31 10:54:42
[2026-08-31 10:54:42,277.277 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:54:42,562.562 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:54:42,569.569 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:54:42,778.778 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:54:42,781.781 INFO    ] time= 31/08/2026 10:54:42
[2026-08-31 10:54:42,784.784 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:54:42,813.813 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:54:42,918.918 INFO    ] No existing commands found in stream
[2026-08-31 10:54:47,929.929 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:54:47,932.932 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-08-31 10:54:51,021.021 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 10:54:51,024.024 INFO    ] Checking for system updates...
[2026-08-31 10:54:51,104.104 INFO    ] 200
[2026-08-31 10:54:51,106.106 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_ORDER"}
[2026-08-31 10:54:51,110.110 INFO    ] Machine not idle (state: STATE_ORDER), skipping update check
[2026-08-31 10:54:51,113.113 INFO    ] Checking for camera pi updates...
[2026-08-31 10:54:51,177.177 INFO    ] 200
[2026-08-31 10:54:51,181.181 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_ORDER"}
[2026-08-31 10:54:51,185.185 INFO    ] Machine not idle (state: STATE_ORDER), skipping camera update check
[2026-08-31 10:54:51,188.188 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:54:51,191.191 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:54:51,198.198 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:54:51,205.205 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:54:53,247.247 INFO    ] ================================================
[2026-08-31 10:54:53,262.262 INFO    ] Launching Daemon at Mon Aug 31 10:54:53 IST 2026
[2026-08-31 10:54:53,274.274 INFO    ] ================================================
[2026-08-31 10:54:53,917.917 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:54:53
[2026-08-31 10:54:54,592.592 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:54:54,939.939 INFO    ] Initializing speech engine...
[2026-08-31 10:54:54,946.946 INFO    ] 2026-08-31 10:54:54
[2026-08-31 10:54:55,236.236 INFO    ] 2026-08-31 10:54:55
[2026-08-31 10:54:55,325.325 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:54:55,600.600 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:54:55,608.608 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:54:55,806.806 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:54:55,824.824 INFO    ] time= 31/08/2026 10:54:55
[2026-08-31 10:54:55,842.842 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:54:55,860.860 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:54:55,981.981 INFO    ] No existing commands found in stream
[2026-08-31 10:55:01,015.015 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:55:01,018.018 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-08-31 10:55:03,334.334 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 10:55:03,337.337 INFO    ] Checking for system updates...
[2026-08-31 10:55:03,395.395 INFO    ] 200
[2026-08-31 10:55:03,398.398 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_ORDER"}
[2026-08-31 10:55:03,401.401 INFO    ] Machine not idle (state: STATE_ORDER), skipping update check
[2026-08-31 10:55:03,406.406 INFO    ] Checking for camera pi updates...
[2026-08-31 10:55:03,458.458 INFO    ] 200
[2026-08-31 10:55:03,462.462 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_ORDER"}
[2026-08-31 10:55:03,465.465 INFO    ] Machine not idle (state: STATE_ORDER), skipping camera update check
[2026-08-31 10:55:03,468.468 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:55:03,476.476 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:55:03,484.484 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:55:03,491.491 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:55:05,534.534 INFO    ] ================================================
[2026-08-31 10:55:05,554.554 INFO    ] Launching Daemon at Mon Aug 31 10:55:05 IST 2026
[2026-08-31 10:55:05,566.566 INFO    ] ================================================
[2026-08-31 10:55:06,291.291 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:55:06
[2026-08-31 10:55:06,953.953 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:55:07,291.291 INFO    ] Initializing speech engine...
[2026-08-31 10:55:07,300.300 INFO    ] 2026-08-31 10:55:07
[2026-08-31 10:55:07,587.587 INFO    ] 2026-08-31 10:55:07
[2026-08-31 10:55:07,612.612 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:55:07,823.823 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:55:07,837.837 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:55:08,046.046 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:55:08,049.049 INFO    ] time= 31/08/2026 10:55:08
[2026-08-31 10:55:08,062.062 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:55:08,065.065 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:55:08,208.208 INFO    ] No existing commands found in stream
[2026-08-31 10:55:13,219.219 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:55:13,222.222 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-08-31 10:55:14,026.026 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 10:55:14,029.029 INFO    ] Checking for system updates...
[2026-08-31 10:55:14,090.090 INFO    ] 200
[2026-08-31 10:55:14,094.094 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_ORDER"}
[2026-08-31 10:55:14,096.096 INFO    ] Machine not idle (state: STATE_ORDER), skipping update check
[2026-08-31 10:55:14,099.099 INFO    ] Checking for camera pi updates...
[2026-08-31 10:55:14,211.211 INFO    ] 200
[2026-08-31 10:55:14,214.214 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_ORDER"}
[2026-08-31 10:55:14,216.216 INFO    ] Machine not idle (state: STATE_ORDER), skipping camera update check
[2026-08-31 10:55:14,228.228 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:55:14,231.231 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:55:14,237.237 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:55:14,243.243 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:55:16,287.287 INFO    ] ================================================
[2026-08-31 10:55:16,302.302 INFO    ] Launching Daemon at Mon Aug 31 10:55:16 IST 2026
[2026-08-31 10:55:16,313.313 INFO    ] ================================================
[2026-08-31 10:55:16,922.922 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:55:16
[2026-08-31 10:55:17,542.542 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:55:17,807.807 INFO    ] Initializing speech engine...
[2026-08-31 10:55:17,823.823 INFO    ] 2026-08-31 10:55:17
[2026-08-31 10:55:18,112.112 INFO    ] 2026-08-31 10:55:18
[2026-08-31 10:55:18,171.171 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:55:18,388.388 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:55:18,412.412 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:55:18,554.554 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:55:18,557.557 INFO    ] time= 31/08/2026 10:55:18
[2026-08-31 10:55:18,568.568 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:55:18,598.598 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:55:18,728.728 INFO    ] No existing commands found in stream
[2026-08-31 10:55:23,753.753 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:55:23,756.756 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-08-31 10:55:24,424.424 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 10:55:24,427.427 INFO    ] Checking for system updates...
[2026-08-31 10:55:24,484.484 INFO    ] 200
[2026-08-31 10:55:24,486.486 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_ORDER"}
[2026-08-31 10:55:24,490.490 INFO    ] Machine not idle (state: STATE_ORDER), skipping update check
[2026-08-31 10:55:24,492.492 INFO    ] Checking for camera pi updates...
[2026-08-31 10:55:24,542.542 INFO    ] 200
[2026-08-31 10:55:24,544.544 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_ORDER"}
[2026-08-31 10:55:24,547.547 INFO    ] Machine not idle (state: STATE_ORDER), skipping camera update check
[2026-08-31 10:55:24,550.550 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:55:24,552.552 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:55:24,560.560 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:55:24,570.570 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:55:26,613.613 INFO    ] ================================================
[2026-08-31 10:55:26,632.632 INFO    ] Launching Daemon at Mon Aug 31 10:55:26 IST 2026
[2026-08-31 10:55:26,644.644 INFO    ] ================================================
[2026-08-31 10:55:27,345.345 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:55:27
[2026-08-31 10:55:28,059.059 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:55:28,357.357 INFO    ] Initializing speech engine...
[2026-08-31 10:55:28,373.373 INFO    ] 2026-08-31 10:55:28
[2026-08-31 10:55:28,674.674 INFO    ] 2026-08-31 10:55:28
[2026-08-31 10:55:28,716.716 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:55:28,951.951 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:55:29,015.015 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:55:29,180.180 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:55:29,235.235 INFO    ] time= 31/08/2026 10:55:29
[2026-08-31 10:55:29,284.284 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:55:29,298.298 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:55:29,387.387 INFO    ] No existing commands found in stream
[2026-08-31 10:55:34,419.419 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:55:34,422.422 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-08-31 10:55:37,014.014 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 10:55:37,017.017 INFO    ] Checking for system updates...
[2026-08-31 10:55:37,090.090 INFO    ] 200
[2026-08-31 10:55:37,093.093 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_ORDER"}
[2026-08-31 10:55:37,096.096 INFO    ] Machine not idle (state: STATE_ORDER), skipping update check
[2026-08-31 10:55:37,098.098 INFO    ] Checking for camera pi updates...
[2026-08-31 10:55:37,135.135 INFO    ] 200
[2026-08-31 10:55:37,137.137 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_ORDER"}
[2026-08-31 10:55:37,140.140 INFO    ] Machine not idle (state: STATE_ORDER), skipping camera update check
[2026-08-31 10:55:37,142.142 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:55:37,144.144 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:55:37,150.150 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:55:37,155.155 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:55:39,198.198 INFO    ] ================================================
[2026-08-31 10:55:39,213.213 INFO    ] Launching Daemon at Mon Aug 31 10:55:39 IST 2026
[2026-08-31 10:55:39,224.224 INFO    ] ================================================
[2026-08-31 10:55:39,912.912 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:55:39
[2026-08-31 10:55:40,609.609 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:55:40,890.890 INFO    ] Initializing speech engine...
[2026-08-31 10:55:40,900.900 INFO    ] 2026-08-31 10:55:40
[2026-08-31 10:55:41,197.197 INFO    ] 2026-08-31 10:55:41
[2026-08-31 10:55:41,236.236 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:55:41,452.452 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:55:41,510.510 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:55:41,675.675 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:55:41,742.742 INFO    ] time= 31/08/2026 10:55:41
[2026-08-31 10:55:41,792.792 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:55:41,807.807 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:55:41,948.948 INFO    ] No existing commands found in stream
[2026-08-31 10:55:46,970.970 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:55:46,973.973 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-08-31 10:55:50,625.625 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 10:55:50,628.628 INFO    ] Checking for system updates...
[2026-08-31 10:55:50,919.919 INFO    ] 200
[2026-08-31 10:55:50,923.923 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-08-31 10:55:50,928.928 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-08-31 10:55:50,933.933 INFO    ] Checking for camera pi updates...
[2026-08-31 10:55:50,994.994 INFO    ] 200
[2026-08-31 10:55:51,000.000 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-08-31 10:55:51,003.003 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-08-31 10:55:51,005.005 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:55:51,008.008 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:55:51,015.015 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:55:51,021.021 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:55:53,068.068 INFO    ] ================================================
[2026-08-31 10:55:53,085.085 INFO    ] Launching Daemon at Mon Aug 31 10:55:53 IST 2026
[2026-08-31 10:55:53,097.097 INFO    ] ================================================
[2026-08-31 10:55:53,681.681 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:55:53
[2026-08-31 10:55:54,270.270 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:55:54,524.524 INFO    ] Initializing speech engine...
[2026-08-31 10:55:54,530.530 INFO    ] 2026-08-31 10:55:54
[2026-08-31 10:55:54,841.841 INFO    ] 2026-08-31 10:55:54
[2026-08-31 10:55:54,871.871 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:55:56,355.355 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:55:56,363.363 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:55:58,441.441 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:55:58,444.444 INFO    ] time= 31/08/2026 10:55:58
[2026-08-31 10:55:58,447.447 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:55:58,449.449 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:56:01,127.127 INFO    ] No existing commands found in stream
[2026-08-31 10:56:06,137.137 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:56:06,140.140 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-08-31 10:56:28,454.454 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 10:56:28,456.456 INFO    ] Checking for system updates...
[2026-08-31 10:56:28,492.492 INFO    ] 200
[2026-08-31 10:56:28,495.495 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_ON_BATTERY"}
[2026-08-31 10:56:28,497.497 INFO    ] Machine not idle (state: STATE_ON_BATTERY), skipping update check
[2026-08-31 10:56:28,500.500 INFO    ] Checking for camera pi updates...
[2026-08-31 10:56:28,534.534 INFO    ] 200
[2026-08-31 10:56:28,536.536 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_ON_BATTERY"}
[2026-08-31 10:56:28,539.539 INFO    ] Machine not idle (state: STATE_ON_BATTERY), skipping camera update check
[2026-08-31 10:56:28,541.541 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:56:28,544.544 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:56:28,549.549 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:56:28,554.554 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:56:30,597.597 INFO    ] ================================================
[2026-08-31 10:56:31,035.035 INFO    ] Launching Daemon at Mon Aug 31 10:56:31 IST 2026
[2026-08-31 10:56:31,047.047 INFO    ] ================================================
[2026-08-31 10:56:31,654.654 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:56:31
[2026-08-31 10:56:32,269.269 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:56:32,560.560 INFO    ] Initializing speech engine...
[2026-08-31 10:56:32,568.568 INFO    ] 2026-08-31 10:56:32
[2026-08-31 10:56:32,816.816 INFO    ] 2026-08-31 10:56:32
[2026-08-31 10:56:32,851.851 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:56:33,108.108 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:56:33,112.112 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:56:33,251.251 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:56:33,311.311 INFO    ] time= 31/08/2026 10:56:33
[2026-08-31 10:56:33,373.373 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:56:33,380.380 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:56:33,523.523 INFO    ] No existing commands found in stream
[2026-08-31 10:56:38,536.536 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:56:38,539.539 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-08-31 10:56:42,431.431 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 10:56:42,433.433 INFO    ] Checking for system updates...
[2026-08-31 10:56:42,469.469 INFO    ] 200
[2026-08-31 10:56:42,471.471 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_ON_BATTERY"}
[2026-08-31 10:56:42,474.474 INFO    ] Machine not idle (state: STATE_ON_BATTERY), skipping update check
[2026-08-31 10:56:42,476.476 INFO    ] Checking for camera pi updates...
[2026-08-31 10:56:42,510.510 INFO    ] 200
[2026-08-31 10:56:42,512.512 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_ON_BATTERY"}
[2026-08-31 10:56:42,515.515 INFO    ] Machine not idle (state: STATE_ON_BATTERY), skipping camera update check
[2026-08-31 10:56:42,517.517 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:56:42,519.519 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:56:42,525.525 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:56:42,530.530 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:56:44,568.568 INFO    ] ================================================
[2026-08-31 10:56:44,583.583 INFO    ] Launching Daemon at Mon Aug 31 10:56:44 IST 2026
[2026-08-31 10:56:44,594.594 INFO    ] ================================================
[2026-08-31 10:56:45,159.159 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:56:45
[2026-08-31 10:56:45,741.741 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:56:45,998.998 INFO    ] Initializing speech engine...
[2026-08-31 10:56:46,017.017 INFO    ] 2026-08-31 10:56:46
[2026-08-31 10:56:46,264.264 INFO    ] 2026-08-31 10:56:46
[2026-08-31 10:56:46,300.300 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:56:46,551.551 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:56:46,560.560 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:56:46,765.765 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:56:46,819.819 INFO    ] time= 31/08/2026 10:56:46
[2026-08-31 10:56:46,825.825 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:56:46,843.843 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:56:46,970.970 INFO    ] No existing commands found in stream
[2026-08-31 10:56:51,984.984 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:56:51,988.988 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-08-31 10:56:52,499.499 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 10:56:52,502.502 INFO    ] Checking for system updates...
[2026-08-31 10:56:52,541.541 INFO    ] 200
[2026-08-31 10:56:52,544.544 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_ON_BATTERY"}
[2026-08-31 10:56:52,546.546 INFO    ] Machine not idle (state: STATE_ON_BATTERY), skipping update check
[2026-08-31 10:56:52,549.549 INFO    ] Checking for camera pi updates...
[2026-08-31 10:56:52,583.583 INFO    ] 200
[2026-08-31 10:56:52,586.586 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_ON_BATTERY"}
[2026-08-31 10:56:52,589.589 INFO    ] Machine not idle (state: STATE_ON_BATTERY), skipping camera update check
[2026-08-31 10:56:52,591.591 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:56:52,593.593 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:56:52,599.599 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:56:52,604.604 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:56:54,644.644 INFO    ] ================================================
[2026-08-31 10:56:54,659.659 INFO    ] Launching Daemon at Mon Aug 31 10:56:54 IST 2026
[2026-08-31 10:56:54,670.670 INFO    ] ================================================
[2026-08-31 10:56:55,327.327 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:56:55
[2026-08-31 10:56:56,003.003 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:56:56,290.290 INFO    ] Initializing speech engine...
[2026-08-31 10:56:56,298.298 INFO    ] 2026-08-31 10:56:56
[2026-08-31 10:56:56,543.543 INFO    ] 2026-08-31 10:56:56
[2026-08-31 10:56:56,577.577 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:56:56,829.829 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:56:56,838.838 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:56:57,050.050 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:56:57,093.093 INFO    ] time= 31/08/2026 10:56:57
[2026-08-31 10:56:57,100.100 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:56:57,118.118 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:56:57,243.243 INFO    ] No existing commands found in stream
[2026-08-31 10:57:02,258.258 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:57:02,261.261 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-08-31 10:57:05,895.895 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 10:57:05,898.898 INFO    ] Checking for system updates...
[2026-08-31 10:57:05,933.933 INFO    ] 200
[2026-08-31 10:57:05,936.936 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_ON_BATTERY"}
[2026-08-31 10:57:05,939.939 INFO    ] Machine not idle (state: STATE_ON_BATTERY), skipping update check
[2026-08-31 10:57:05,942.942 INFO    ] Checking for camera pi updates...
[2026-08-31 10:57:05,975.975 INFO    ] 200
[2026-08-31 10:57:05,978.978 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_ON_BATTERY"}
[2026-08-31 10:57:05,980.980 INFO    ] Machine not idle (state: STATE_ON_BATTERY), skipping camera update check
[2026-08-31 10:57:05,982.982 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:57:05,984.984 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:57:05,994.994 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:57:05,999.999 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:57:08,040.040 INFO    ] ================================================
[2026-08-31 10:57:08,054.054 INFO    ] Launching Daemon at Mon Aug 31 10:57:08 IST 2026
[2026-08-31 10:57:08,065.065 INFO    ] ================================================
[2026-08-31 10:57:08,665.665 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:57:08
[2026-08-31 10:57:09,246.246 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:57:09,514.514 INFO    ] Initializing speech engine...
[2026-08-31 10:57:09,523.523 INFO    ] 2026-08-31 10:57:09
[2026-08-31 10:57:09,772.772 INFO    ] 2026-08-31 10:57:09
[2026-08-31 10:57:09,806.806 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:57:10,061.061 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:57:10,070.070 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:57:10,203.203 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:57:10,268.268 INFO    ] time= 31/08/2026 10:57:10
[2026-08-31 10:57:10,328.328 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:57:10,336.336 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:57:10,466.466 INFO    ] No existing commands found in stream
[2026-08-31 10:57:15,491.491 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:57:15,493.493 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-08-31 10:57:18,368.368 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 10:57:18,371.371 INFO    ] Checking for system updates...
[2026-08-31 10:57:18,410.410 INFO    ] 200
[2026-08-31 10:57:18,413.413 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_ON_BATTERY"}
[2026-08-31 10:57:18,415.415 INFO    ] Machine not idle (state: STATE_ON_BATTERY), skipping update check
[2026-08-31 10:57:18,417.417 INFO    ] Checking for camera pi updates...
[2026-08-31 10:57:18,455.455 INFO    ] 200
[2026-08-31 10:57:18,458.458 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_ON_BATTERY"}
[2026-08-31 10:57:18,460.460 INFO    ] Machine not idle (state: STATE_ON_BATTERY), skipping camera update check
[2026-08-31 10:57:18,462.462 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:57:18,465.465 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:57:18,470.470 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:57:18,475.475 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:57:20,515.515 INFO    ] ================================================
[2026-08-31 10:57:20,530.530 INFO    ] Launching Daemon at Mon Aug 31 10:57:20 IST 2026
[2026-08-31 10:57:20,541.541 INFO    ] ================================================
[2026-08-31 10:57:21,118.118 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:57:21
[2026-08-31 10:57:21,715.715 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:57:21,974.974 INFO    ] Initializing speech engine...
[2026-08-31 10:57:21,983.983 INFO    ] 2026-08-31 10:57:21
[2026-08-31 10:57:22,280.280 INFO    ] 2026-08-31 10:57:22
[2026-08-31 10:57:22,316.316 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:57:22,525.525 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:57:22,542.542 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:57:22,692.692 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:57:22,698.698 INFO    ] time= 31/08/2026 10:57:22
[2026-08-31 10:57:22,704.704 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:57:22,710.710 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:57:22,847.847 INFO    ] No existing commands found in stream
[2026-08-31 10:57:27,867.867 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:57:27,870.870 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-08-31 10:57:30,170.170 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 10:57:30,173.173 INFO    ] Checking for system updates...
[2026-08-31 10:57:30,210.210 INFO    ] 200
[2026-08-31 10:57:30,212.212 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_ON_BATTERY"}
[2026-08-31 10:57:30,215.215 INFO    ] Machine not idle (state: STATE_ON_BATTERY), skipping update check
[2026-08-31 10:57:30,217.217 INFO    ] Checking for camera pi updates...
[2026-08-31 10:57:30,251.251 INFO    ] 200
[2026-08-31 10:57:30,253.253 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_ON_BATTERY"}
[2026-08-31 10:57:30,255.255 INFO    ] Machine not idle (state: STATE_ON_BATTERY), skipping camera update check
[2026-08-31 10:57:30,258.258 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:57:30,260.260 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:57:30,265.265 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:57:30,270.270 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:57:32,311.311 INFO    ] ================================================
[2026-08-31 10:57:32,327.327 INFO    ] Launching Daemon at Mon Aug 31 10:57:32 IST 2026
[2026-08-31 10:57:32,339.339 INFO    ] ================================================
[2026-08-31 10:57:32,973.973 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:57:32
[2026-08-31 10:57:33,559.559 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:57:33,812.812 INFO    ] Initializing speech engine...
[2026-08-31 10:57:33,821.821 INFO    ] 2026-08-31 10:57:33
[2026-08-31 10:57:34,116.116 INFO    ] 2026-08-31 10:57:34
[2026-08-31 10:57:34,154.154 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:57:34,376.376 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:57:34,383.383 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:57:34,603.603 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:57:34,609.609 INFO    ] time= 31/08/2026 10:57:34
[2026-08-31 10:57:34,659.659 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:57:34,707.707 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:57:34,814.814 INFO    ] No existing commands found in stream
[2026-08-31 10:57:39,826.826 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:57:39,829.829 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-08-31 10:57:42,014.014 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 10:57:42,017.017 INFO    ] Checking for system updates...
[2026-08-31 10:57:42,058.058 INFO    ] 200
[2026-08-31 10:57:42,061.061 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_ON_BATTERY"}
[2026-08-31 10:57:42,064.064 INFO    ] Machine not idle (state: STATE_ON_BATTERY), skipping update check
[2026-08-31 10:57:42,066.066 INFO    ] Checking for camera pi updates...
[2026-08-31 10:57:42,100.100 INFO    ] 200
[2026-08-31 10:57:42,102.102 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_ON_BATTERY"}
[2026-08-31 10:57:42,105.105 INFO    ] Machine not idle (state: STATE_ON_BATTERY), skipping camera update check
[2026-08-31 10:57:42,107.107 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:57:42,109.109 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:57:42,115.115 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:57:42,120.120 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:57:44,160.160 INFO    ] ================================================
[2026-08-31 10:57:44,176.176 INFO    ] Launching Daemon at Mon Aug 31 10:57:44 IST 2026
[2026-08-31 10:57:44,186.186 INFO    ] ================================================
[2026-08-31 10:57:44,762.762 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:57:44
[2026-08-31 10:57:45,358.358 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:57:45,614.614 INFO    ] Initializing speech engine...
[2026-08-31 10:57:45,623.623 INFO    ] 2026-08-31 10:57:45
[2026-08-31 10:57:45,923.923 INFO    ] 2026-08-31 10:57:45
[2026-08-31 10:57:45,962.962 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:57:46,161.161 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:57:46,176.176 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:57:46,341.341 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:57:46,346.346 INFO    ] time= 31/08/2026 10:57:46
[2026-08-31 10:57:46,353.353 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:57:46,380.380 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:57:46,445.445 INFO    ] No existing commands found in stream
[2026-08-31 10:57:51,449.449 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:57:51,452.452 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-08-31 10:57:54,567.567 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 10:57:54,570.570 INFO    ] Checking for system updates...
[2026-08-31 10:57:54,608.608 INFO    ] 200
[2026-08-31 10:57:54,611.611 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_ON_BATTERY"}
[2026-08-31 10:57:54,613.613 INFO    ] Machine not idle (state: STATE_ON_BATTERY), skipping update check
[2026-08-31 10:57:54,616.616 INFO    ] Checking for camera pi updates...
[2026-08-31 10:57:54,650.650 INFO    ] 200
[2026-08-31 10:57:54,653.653 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_ON_BATTERY"}
[2026-08-31 10:57:54,656.656 INFO    ] Machine not idle (state: STATE_ON_BATTERY), skipping camera update check
[2026-08-31 10:57:54,659.659 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:57:54,661.661 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:57:54,668.668 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:57:54,673.673 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:57:56,714.714 INFO    ] ================================================
[2026-08-31 10:57:56,729.729 INFO    ] Launching Daemon at Mon Aug 31 10:57:56 IST 2026
[2026-08-31 10:57:56,741.741 INFO    ] ================================================
[2026-08-31 10:57:57,308.308 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:57:57
[2026-08-31 10:57:57,892.892 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:57:58,146.146 INFO    ] Initializing speech engine...
[2026-08-31 10:57:58,152.152 INFO    ] 2026-08-31 10:57:58
[2026-08-31 10:57:58,449.449 INFO    ] 2026-08-31 10:57:58
[2026-08-31 10:57:58,484.484 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:57:58,684.684 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:57:58,696.696 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:57:58,858.858 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:57:58,868.868 INFO    ] time= 31/08/2026 10:57:58
[2026-08-31 10:57:58,875.875 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:57:58,881.881 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:57:59,016.016 INFO    ] No existing commands found in stream
[2026-08-31 10:58:04,036.036 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:58:04,039.039 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-08-31 10:58:05,579.579 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 10:58:05,581.581 INFO    ] Checking for system updates...
[2026-08-31 10:58:05,617.617 INFO    ] 200
[2026-08-31 10:58:05,619.619 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_ON_BATTERY"}
[2026-08-31 10:58:05,622.622 INFO    ] Machine not idle (state: STATE_ON_BATTERY), skipping update check
[2026-08-31 10:58:05,624.624 INFO    ] Checking for camera pi updates...
[2026-08-31 10:58:05,657.657 INFO    ] 200
[2026-08-31 10:58:05,660.660 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_ON_BATTERY"}
[2026-08-31 10:58:05,662.662 INFO    ] Machine not idle (state: STATE_ON_BATTERY), skipping camera update check
[2026-08-31 10:58:05,665.665 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:58:05,667.667 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:58:05,672.672 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:58:05,677.677 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:58:07,717.717 INFO    ] ================================================
[2026-08-31 10:58:07,733.733 INFO    ] Launching Daemon at Mon Aug 31 10:58:07 IST 2026
[2026-08-31 10:58:07,743.743 INFO    ] ================================================
[2026-08-31 10:58:08,307.307 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:58:08
[2026-08-31 10:58:08,893.893 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:58:09,146.146 INFO    ] Initializing speech engine...
[2026-08-31 10:58:09,162.162 INFO    ] 2026-08-31 10:58:09
[2026-08-31 10:58:09,444.444 INFO    ] 2026-08-31 10:58:09
[2026-08-31 10:58:09,479.479 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:58:09,699.699 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:58:09,708.708 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:58:09,923.923 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:58:09,941.941 INFO    ] time= 31/08/2026 10:58:09
[2026-08-31 10:58:09,995.995 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:58:10,039.039 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:58:10,132.132 INFO    ] No existing commands found in stream
[2026-08-31 10:58:15,143.143 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:58:15,146.146 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-08-31 10:58:17,967.967 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 10:58:17,969.969 INFO    ] Checking for system updates...
[2026-08-31 10:58:18,009.009 INFO    ] 200
[2026-08-31 10:58:18,011.011 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_ON_BATTERY"}
[2026-08-31 10:58:18,014.014 INFO    ] Machine not idle (state: STATE_ON_BATTERY), skipping update check
[2026-08-31 10:58:18,016.016 INFO    ] Checking for camera pi updates...
[2026-08-31 10:58:18,049.049 INFO    ] 200
[2026-08-31 10:58:18,051.051 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_ON_BATTERY"}
[2026-08-31 10:58:18,054.054 INFO    ] Machine not idle (state: STATE_ON_BATTERY), skipping camera update check
[2026-08-31 10:58:18,056.056 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:58:18,058.058 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:58:18,064.064 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:58:18,068.068 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:58:20,110.110 INFO    ] ================================================
[2026-08-31 10:58:20,125.125 INFO    ] Launching Daemon at Mon Aug 31 10:58:20 IST 2026
[2026-08-31 10:58:20,136.136 INFO    ] ================================================
[2026-08-31 10:58:20,712.712 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:58:20
[2026-08-31 10:58:21,309.309 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:58:21,587.587 INFO    ] Initializing speech engine...
[2026-08-31 10:58:21,596.596 INFO    ] 2026-08-31 10:58:21
[2026-08-31 10:58:21,846.846 INFO    ] 2026-08-31 10:58:21
[2026-08-31 10:58:21,880.880 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:58:22,136.136 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:58:22,142.142 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:58:22,341.341 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:58:22,391.391 INFO    ] time= 31/08/2026 10:58:22
[2026-08-31 10:58:22,404.404 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:58:22,419.419 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:58:22,526.526 INFO    ] No existing commands found in stream
[2026-08-31 10:58:27,556.556 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:58:27,559.559 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-08-31 10:58:31,302.302 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 10:58:31,306.306 INFO    ] Checking for system updates...
[2026-08-31 10:58:31,355.355 INFO    ] 200
[2026-08-31 10:58:31,359.359 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_ON_BATTERY"}
[2026-08-31 10:58:31,363.363 INFO    ] Machine not idle (state: STATE_ON_BATTERY), skipping update check
[2026-08-31 10:58:31,366.366 INFO    ] Checking for camera pi updates...
[2026-08-31 10:58:31,402.402 INFO    ] 200
[2026-08-31 10:58:31,404.404 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_ON_BATTERY"}
[2026-08-31 10:58:31,407.407 INFO    ] Machine not idle (state: STATE_ON_BATTERY), skipping camera update check
[2026-08-31 10:58:31,410.410 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:58:31,413.413 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:58:31,419.419 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:58:31,425.425 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:58:33,467.467 INFO    ] ================================================
[2026-08-31 10:58:33,483.483 INFO    ] Launching Daemon at Mon Aug 31 10:58:33 IST 2026
[2026-08-31 10:58:33,493.493 INFO    ] ================================================
[2026-08-31 10:58:34,071.071 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:58:34
[2026-08-31 10:58:34,665.665 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:58:34,936.936 INFO    ] Initializing speech engine...
[2026-08-31 10:58:34,946.946 INFO    ] 2026-08-31 10:58:34
[2026-08-31 10:58:35,207.207 INFO    ] 2026-08-31 10:58:35
[2026-08-31 10:58:35,237.237 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:58:35,481.481 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:58:35,490.490 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:58:35,623.623 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:58:35,668.668 INFO    ] time= 31/08/2026 10:58:35
[2026-08-31 10:58:35,702.702 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:58:35,752.752 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:58:35,812.812 INFO    ] No existing commands found in stream
[2026-08-31 10:58:40,837.837 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:58:40,840.840 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-08-31 10:58:41,939.939 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 10:58:41,942.942 INFO    ] Checking for system updates...
[2026-08-31 10:58:41,980.980 INFO    ] 200
[2026-08-31 10:58:41,982.982 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_ON_BATTERY"}
[2026-08-31 10:58:41,985.985 INFO    ] Machine not idle (state: STATE_ON_BATTERY), skipping update check
[2026-08-31 10:58:41,988.988 INFO    ] Checking for camera pi updates...
[2026-08-31 10:58:42,026.026 INFO    ] 200
[2026-08-31 10:58:42,029.029 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_ON_BATTERY"}
[2026-08-31 10:58:42,033.033 INFO    ] Machine not idle (state: STATE_ON_BATTERY), skipping camera update check
[2026-08-31 10:58:42,035.035 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:58:42,038.038 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:58:42,044.044 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:58:42,050.050 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:58:44,091.091 INFO    ] ================================================
[2026-08-31 10:58:44,106.106 INFO    ] Launching Daemon at Mon Aug 31 10:58:44 IST 2026
[2026-08-31 10:58:44,118.118 INFO    ] ================================================
[2026-08-31 10:58:44,703.703 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:58:44
[2026-08-31 10:58:45,306.306 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:58:45,581.581 INFO    ] Initializing speech engine...
[2026-08-31 10:58:45,592.592 INFO    ] 2026-08-31 10:58:45
[2026-08-31 10:58:45,851.851 INFO    ] 2026-08-31 10:58:45
[2026-08-31 10:58:45,905.905 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:58:46,132.132 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:58:46,137.137 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:58:46,388.388 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:58:46,395.395 INFO    ] time= 31/08/2026 10:58:46
[2026-08-31 10:58:46,413.413 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:58:46,430.430 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:58:46,563.563 INFO    ] No existing commands found in stream
[2026-08-31 10:58:51,593.593 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:58:51,596.596 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-08-31 10:58:54,352.352 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 10:58:54,354.354 INFO    ] Checking for system updates...
[2026-08-31 10:58:54,391.391 INFO    ] 200
[2026-08-31 10:58:54,394.394 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_ON_BATTERY"}
[2026-08-31 10:58:54,396.396 INFO    ] Machine not idle (state: STATE_ON_BATTERY), skipping update check
[2026-08-31 10:58:54,399.399 INFO    ] Checking for camera pi updates...
[2026-08-31 10:58:54,434.434 INFO    ] 200
[2026-08-31 10:58:54,437.437 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_ON_BATTERY"}
[2026-08-31 10:58:54,440.440 INFO    ] Machine not idle (state: STATE_ON_BATTERY), skipping camera update check
[2026-08-31 10:58:54,443.443 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:58:54,445.445 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:58:54,452.452 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:58:54,458.458 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:58:56,500.500 INFO    ] ================================================
[2026-08-31 10:58:56,516.516 INFO    ] Launching Daemon at Mon Aug 31 10:58:56 IST 2026
[2026-08-31 10:58:56,526.526 INFO    ] ================================================
[2026-08-31 10:58:57,094.094 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:58:57
[2026-08-31 10:58:57,676.676 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:58:57,926.926 INFO    ] Initializing speech engine...
[2026-08-31 10:58:57,933.933 INFO    ] 2026-08-31 10:58:57
[2026-08-31 10:58:58,207.207 INFO    ] 2026-08-31 10:58:58
[2026-08-31 10:58:58,244.244 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:58:58,466.466 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:58:58,474.474 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:58:58,623.623 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:58:58,629.629 INFO    ] time= 31/08/2026 10:58:58
[2026-08-31 10:58:58,636.636 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:58:58,642.642 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:58:58,778.778 INFO    ] No existing commands found in stream
[2026-08-31 10:59:03,803.803 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:59:03,806.806 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-08-31 10:59:06,375.375 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 10:59:06,378.378 INFO    ] Checking for system updates...
[2026-08-31 10:59:06,413.413 INFO    ] 200
[2026-08-31 10:59:06,415.415 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_ON_BATTERY"}
[2026-08-31 10:59:06,418.418 INFO    ] Machine not idle (state: STATE_ON_BATTERY), skipping update check
[2026-08-31 10:59:06,421.421 INFO    ] Checking for camera pi updates...
[2026-08-31 10:59:06,457.457 INFO    ] 200
[2026-08-31 10:59:06,460.460 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_ON_BATTERY"}
[2026-08-31 10:59:06,462.462 INFO    ] Machine not idle (state: STATE_ON_BATTERY), skipping camera update check
[2026-08-31 10:59:06,464.464 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:59:06,466.466 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:59:06,472.472 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:59:06,477.477 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:59:08,518.518 INFO    ] ================================================
[2026-08-31 10:59:08,534.534 INFO    ] Launching Daemon at Mon Aug 31 10:59:08 IST 2026
[2026-08-31 10:59:08,545.545 INFO    ] ================================================
[2026-08-31 10:59:09,114.114 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:59:09
[2026-08-31 10:59:09,697.697 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:59:09,946.946 INFO    ] Initializing speech engine...
[2026-08-31 10:59:09,969.969 INFO    ] 2026-08-31 10:59:09
[2026-08-31 10:59:10,223.223 INFO    ] 2026-08-31 10:59:10
[2026-08-31 10:59:10,259.259 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:59:10,515.515 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:59:10,524.524 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:59:10,661.661 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:59:10,701.701 INFO    ] time= 31/08/2026 10:59:10
[2026-08-31 10:59:10,771.771 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:59:10,796.796 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:59:10,927.927 INFO    ] No existing commands found in stream
[2026-08-31 10:59:15,955.955 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:59:15,958.958 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-08-31 10:59:16,511.511 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 10:59:16,513.513 INFO    ] Checking for system updates...
[2026-08-31 10:59:16,554.554 INFO    ] 200
[2026-08-31 10:59:16,557.557 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_ON_BATTERY"}
[2026-08-31 10:59:16,560.560 INFO    ] Machine not idle (state: STATE_ON_BATTERY), skipping update check
[2026-08-31 10:59:16,563.563 INFO    ] Checking for camera pi updates...
[2026-08-31 10:59:16,602.602 INFO    ] 200
[2026-08-31 10:59:16,605.605 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_ON_BATTERY"}
[2026-08-31 10:59:16,608.608 INFO    ] Machine not idle (state: STATE_ON_BATTERY), skipping camera update check
[2026-08-31 10:59:16,611.611 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:59:16,613.613 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:59:16,620.620 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:59:16,625.625 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:59:18,668.668 INFO    ] ================================================
[2026-08-31 10:59:18,684.684 INFO    ] Launching Daemon at Mon Aug 31 10:59:18 IST 2026
[2026-08-31 10:59:18,695.695 INFO    ] ================================================
[2026-08-31 10:59:19,357.357 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:59:19
[2026-08-31 10:59:20,046.046 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:59:20,357.357 INFO    ] Initializing speech engine...
[2026-08-31 10:59:20,369.369 INFO    ] 2026-08-31 10:59:20
[2026-08-31 10:59:20,683.683 INFO    ] 2026-08-31 10:59:20
[2026-08-31 10:59:20,765.765 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:59:20,979.979 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:59:20,984.984 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:59:21,179.179 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:59:21,187.187 INFO    ] time= 31/08/2026 10:59:21
[2026-08-31 10:59:21,208.208 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:59:21,236.236 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:59:21,343.343 INFO    ] No existing commands found in stream
[2026-08-31 10:59:26,378.378 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:59:26,381.381 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-08-31 10:59:28,392.392 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 10:59:28,396.396 INFO    ] Checking for system updates...
[2026-08-31 10:59:28,433.433 INFO    ] 200
[2026-08-31 10:59:28,436.436 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_ON_BATTERY"}
[2026-08-31 10:59:28,439.439 INFO    ] Machine not idle (state: STATE_ON_BATTERY), skipping update check
[2026-08-31 10:59:28,442.442 INFO    ] Checking for camera pi updates...
[2026-08-31 10:59:28,476.476 INFO    ] 200
[2026-08-31 10:59:28,480.480 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_ON_BATTERY"}
[2026-08-31 10:59:28,482.482 INFO    ] Machine not idle (state: STATE_ON_BATTERY), skipping camera update check
[2026-08-31 10:59:28,485.485 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:59:28,488.488 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:59:28,494.494 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:59:28,500.500 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:59:30,541.541 INFO    ] ================================================
[2026-08-31 10:59:30,556.556 INFO    ] Launching Daemon at Mon Aug 31 10:59:30 IST 2026
[2026-08-31 10:59:30,567.567 INFO    ] ================================================
[2026-08-31 10:59:31,233.233 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:59:31
[2026-08-31 10:59:31,879.879 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:59:32,189.189 INFO    ] Initializing speech engine...
[2026-08-31 10:59:32,200.200 INFO    ] 2026-08-31 10:59:32
[2026-08-31 10:59:32,494.494 INFO    ] 2026-08-31 10:59:32
[2026-08-31 10:59:32,540.540 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:59:32,746.746 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:59:32,751.751 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:59:32,908.908 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:59:32,935.935 INFO    ] time= 31/08/2026 10:59:32
[2026-08-31 10:59:32,940.940 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:59:32,946.946 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:59:33,020.020 INFO    ] No existing commands found in stream
[2026-08-31 10:59:38,033.033 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:59:38,035.035 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-08-31 10:59:40,183.183 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 10:59:40,186.186 INFO    ] Checking for system updates...
[2026-08-31 10:59:40,222.222 INFO    ] 200
[2026-08-31 10:59:40,224.224 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_ON_BATTERY"}
[2026-08-31 10:59:40,227.227 INFO    ] Machine not idle (state: STATE_ON_BATTERY), skipping update check
[2026-08-31 10:59:40,230.230 INFO    ] Checking for camera pi updates...
[2026-08-31 10:59:40,263.263 INFO    ] 200
[2026-08-31 10:59:40,265.265 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_ON_BATTERY"}
[2026-08-31 10:59:40,268.268 INFO    ] Machine not idle (state: STATE_ON_BATTERY), skipping camera update check
[2026-08-31 10:59:40,270.270 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:59:40,273.273 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:59:40,278.278 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:59:40,283.283 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:59:42,327.327 INFO    ] ================================================
[2026-08-31 10:59:42,343.343 INFO    ] Launching Daemon at Mon Aug 31 10:59:42 IST 2026
[2026-08-31 10:59:42,354.354 INFO    ] ================================================
[2026-08-31 10:59:42,919.919 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:59:42
[2026-08-31 10:59:43,501.501 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:59:43,749.749 INFO    ] Initializing speech engine...
[2026-08-31 10:59:43,762.762 INFO    ] 2026-08-31 10:59:43
[2026-08-31 10:59:44,023.023 INFO    ] 2026-08-31 10:59:44
[2026-08-31 10:59:44,058.058 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:59:44,312.312 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:59:44,317.317 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:59:44,530.530 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:59:44,576.576 INFO    ] time= 31/08/2026 10:59:44
[2026-08-31 10:59:44,582.582 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:59:44,599.599 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:59:44,731.731 INFO    ] No existing commands found in stream
[2026-08-31 10:59:49,746.746 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 10:59:49,749.749 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-08-31 10:59:51,671.671 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 10:59:51,674.674 INFO    ] Checking for system updates...
[2026-08-31 10:59:51,710.710 INFO    ] 200
[2026-08-31 10:59:51,713.713 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_ON_BATTERY"}
[2026-08-31 10:59:51,715.715 INFO    ] Machine not idle (state: STATE_ON_BATTERY), skipping update check
[2026-08-31 10:59:51,717.717 INFO    ] Checking for camera pi updates...
[2026-08-31 10:59:51,751.751 INFO    ] 200
[2026-08-31 10:59:51,753.753 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_ON_BATTERY"}
[2026-08-31 10:59:51,756.756 INFO    ] Machine not idle (state: STATE_ON_BATTERY), skipping camera update check
[2026-08-31 10:59:51,758.758 INFO    ] Script finished. Safe exiting...
[2026-08-31 10:59:51,760.760 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 10:59:51,766.766 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 10:59:51,771.771 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 10:59:53,817.817 INFO    ] ================================================
[2026-08-31 10:59:53,838.838 INFO    ] Launching Daemon at Mon Aug 31 10:59:53 IST 2026
[2026-08-31 10:59:53,854.854 INFO    ] ================================================
[2026-08-31 10:59:54,452.452 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 10:59:54
[2026-08-31 10:59:55,036.036 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 10:59:55,304.304 INFO    ] Initializing speech engine...
[2026-08-31 10:59:55,313.313 INFO    ] 2026-08-31 10:59:55
[2026-08-31 10:59:55,561.561 INFO    ] 2026-08-31 10:59:55
[2026-08-31 10:59:55,595.595 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 10:59:55,848.848 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 10:59:55,857.857 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 10:59:55,993.993 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 10:59:56,027.027 INFO    ] time= 31/08/2026 10:59:55
[2026-08-31 10:59:56,091.091 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 10:59:56,124.124 INFO    ] Checking for existing commands in stream...
[2026-08-31 10:59:56,271.271 INFO    ] No existing commands found in stream
[2026-08-31 11:00:01,281.281 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:00:01,285.285 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-08-31 11:00:03,199.199 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 11:00:03,248.248 INFO    ] Checking for system updates...
[2026-08-31 11:00:03,562.562 INFO    ] 200
[2026-08-31 11:00:03,590.590 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:00:03,964.964 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:00:03,978.978 INFO    ] No update needed
[2026-08-31 11:00:03,982.982 INFO    ] Checking for camera pi updates...
[2026-08-31 11:00:04,250.250 INFO    ] 200
[2026-08-31 11:00:04,253.253 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:00:04,523.523 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:00:05,566.566 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:00:05,570.570 INFO    ] No camera update needed
[2026-08-31 11:00:05,576.576 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:00:05,580.580 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:00:05,588.588 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:00:05,596.596 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:00:07,639.639 INFO    ] ================================================
[2026-08-31 11:00:07,654.654 INFO    ] Launching Daemon at Mon Aug 31 11:00:07 IST 2026
[2026-08-31 11:00:07,665.665 INFO    ] ================================================
[2026-08-31 11:00:08,231.231 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:00:08
[2026-08-31 11:00:08,817.817 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:00:09,124.124 INFO    ] Initializing speech engine...
[2026-08-31 11:00:09,130.130 INFO    ] 2026-08-31 11:00:09
[2026-08-31 11:00:09,415.415 INFO    ] 2026-08-31 11:00:09
[2026-08-31 11:00:09,451.451 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:00:09,676.676 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:00:09,683.683 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:00:09,900.900 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:00:09,942.942 INFO    ] time= 31/08/2026 11:00:09
[2026-08-31 11:00:09,948.948 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:00:09,965.965 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:00:10,095.095 INFO    ] No existing commands found in stream
[2026-08-31 11:00:15,109.109 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:00:15,112.112 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-08-31 11:00:15,885.885 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 11:00:15,888.888 INFO    ] Checking for system updates...
[2026-08-31 11:00:15,925.925 INFO    ] 200
[2026-08-31 11:00:15,927.927 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:00:15,983.983 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:00:15,985.985 INFO    ] No update needed
[2026-08-31 11:00:15,988.988 INFO    ] Checking for camera pi updates...
[2026-08-31 11:00:16,024.024 INFO    ] 200
[2026-08-31 11:00:16,026.026 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:00:16,066.066 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:00:16,190.190 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:00:16,192.192 INFO    ] No camera update needed
[2026-08-31 11:00:16,195.195 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:00:16,197.197 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:00:16,202.202 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:00:16,207.207 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:00:18,251.251 INFO    ] ================================================
[2026-08-31 11:00:18,266.266 INFO    ] Launching Daemon at Mon Aug 31 11:00:18 IST 2026
[2026-08-31 11:00:18,277.277 INFO    ] ================================================
[2026-08-31 11:00:18,915.915 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:00:18
[2026-08-31 11:00:19,571.571 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:00:19,833.833 INFO    ] Initializing speech engine...
[2026-08-31 11:00:19,858.858 INFO    ] 2026-08-31 11:00:19
[2026-08-31 11:00:20,131.131 INFO    ] 2026-08-31 11:00:20
[2026-08-31 11:00:20,166.166 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:00:20,360.360 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:00:20,373.373 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:00:20,532.532 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:00:20,542.542 INFO    ] time= 31/08/2026 11:00:20
[2026-08-31 11:00:20,548.548 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:00:20,585.585 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:00:20,711.711 INFO    ] No existing commands found in stream
[2026-08-31 11:00:25,736.736 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:00:25,739.739 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-08-31 11:00:26,860.860 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 11:00:26,862.862 INFO    ] Checking for system updates...
[2026-08-31 11:00:26,898.898 INFO    ] 200
[2026-08-31 11:00:26,900.900 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:00:26,957.957 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:00:26,959.959 INFO    ] No update needed
[2026-08-31 11:00:26,962.962 INFO    ] Checking for camera pi updates...
[2026-08-31 11:00:26,999.999 INFO    ] 200
[2026-08-31 11:00:27,001.001 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:00:27,042.042 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:00:27,183.183 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:00:27,185.185 INFO    ] No camera update needed
[2026-08-31 11:00:27,188.188 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:00:27,190.190 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:00:27,195.195 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:00:27,200.200 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:00:29,240.240 INFO    ] ================================================
[2026-08-31 11:00:29,256.256 INFO    ] Launching Daemon at Mon Aug 31 11:00:29 IST 2026
[2026-08-31 11:00:29,267.267 INFO    ] ================================================
[2026-08-31 11:00:29,906.906 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:00:29
[2026-08-31 11:00:30,565.565 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:00:30,865.865 INFO    ] Initializing speech engine...
[2026-08-31 11:00:30,871.871 INFO    ] 2026-08-31 11:00:30
[2026-08-31 11:00:31,143.143 INFO    ] 2026-08-31 11:00:31
[2026-08-31 11:00:31,178.178 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:00:31,430.430 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:00:31,441.441 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:00:31,661.661 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:00:31,706.706 INFO    ] time= 31/08/2026 11:00:31
[2026-08-31 11:00:31,724.724 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:00:31,734.734 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:00:31,907.907 INFO    ] No existing commands found in stream
[2026-08-31 11:00:36,944.944 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:00:36,948.948 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-08-31 11:00:39,426.426 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 11:00:39,430.430 INFO    ] Checking for system updates...
[2026-08-31 11:00:39,466.466 INFO    ] 200
[2026-08-31 11:00:39,469.469 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:00:39,524.524 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:00:39,527.527 INFO    ] No update needed
[2026-08-31 11:00:39,530.530 INFO    ] Checking for camera pi updates...
[2026-08-31 11:00:39,565.565 INFO    ] 200
[2026-08-31 11:00:39,568.568 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:00:39,615.615 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:00:39,736.736 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:00:39,739.739 INFO    ] No camera update needed
[2026-08-31 11:00:39,742.742 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:00:39,744.744 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:00:39,751.751 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:00:39,756.756 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:00:41,796.796 INFO    ] ================================================
[2026-08-31 11:00:41,811.811 INFO    ] Launching Daemon at Mon Aug 31 11:00:41 IST 2026
[2026-08-31 11:00:41,822.822 INFO    ] ================================================
[2026-08-31 11:00:42,387.387 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:00:42
[2026-08-31 11:00:42,974.974 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:00:43,226.226 INFO    ] Initializing speech engine...
[2026-08-31 11:00:43,234.234 INFO    ] 2026-08-31 11:00:43
[2026-08-31 11:00:43,529.529 INFO    ] 2026-08-31 11:00:43
[2026-08-31 11:00:43,554.554 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:00:43,763.763 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:00:43,777.777 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:00:43,940.940 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:00:43,948.948 INFO    ] time= 31/08/2026 11:00:43
[2026-08-31 11:00:43,955.955 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:00:43,962.962 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:00:44,107.107 INFO    ] No existing commands found in stream
[2026-08-31 11:00:49,132.132 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:00:49,135.135 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-08-31 11:00:51,380.380 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 11:00:51,383.383 INFO    ] Checking for system updates...
[2026-08-31 11:00:51,420.420 INFO    ] 200
[2026-08-31 11:00:51,423.423 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:00:51,483.483 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:00:51,486.486 INFO    ] No update needed
[2026-08-31 11:00:51,488.488 INFO    ] Checking for camera pi updates...
[2026-08-31 11:00:51,527.527 INFO    ] 200
[2026-08-31 11:00:51,530.530 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:00:51,576.576 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:00:51,685.685 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:00:51,688.688 INFO    ] No camera update needed
[2026-08-31 11:00:51,691.691 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:00:51,693.693 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:00:51,699.699 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:00:51,705.705 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:00:53,748.748 INFO    ] ================================================
[2026-08-31 11:00:53,763.763 INFO    ] Launching Daemon at Mon Aug 31 11:00:53 IST 2026
[2026-08-31 11:00:53,775.775 INFO    ] ================================================
[2026-08-31 11:00:54,341.341 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:00:54
[2026-08-31 11:00:54,923.923 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:00:55,190.190 INFO    ] Initializing speech engine...
[2026-08-31 11:00:55,199.199 INFO    ] 2026-08-31 11:00:55
[2026-08-31 11:00:55,446.446 INFO    ] 2026-08-31 11:00:55
[2026-08-31 11:00:55,481.481 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:00:55,678.678 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:00:55,736.736 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:00:55,876.876 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:00:55,932.932 INFO    ] time= 31/08/2026 11:00:55
[2026-08-31 11:00:55,986.986 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:00:56,009.009 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:00:56,139.139 INFO    ] No existing commands found in stream
[2026-08-31 11:01:01,161.161 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:01:01,168.168 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-08-31 11:01:05,411.411 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 11:01:05,414.414 INFO    ] Checking for system updates...
[2026-08-31 11:01:05,449.449 INFO    ] 200
[2026-08-31 11:01:05,452.452 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:01:05,508.508 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:01:05,511.511 INFO    ] No update needed
[2026-08-31 11:01:05,513.513 INFO    ] Checking for camera pi updates...
[2026-08-31 11:01:05,547.547 INFO    ] 200
[2026-08-31 11:01:05,549.549 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:01:05,589.589 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:01:05,675.675 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:01:05,677.677 INFO    ] No camera update needed
[2026-08-31 11:01:05,680.680 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:01:05,682.682 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:01:05,687.687 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:01:05,692.692 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:01:07,732.732 INFO    ] ================================================
[2026-08-31 11:01:07,748.748 INFO    ] Launching Daemon at Mon Aug 31 11:01:07 IST 2026
[2026-08-31 11:01:07,758.758 INFO    ] ================================================
[2026-08-31 11:01:08,378.378 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:01:08
[2026-08-31 11:01:09,017.017 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:01:09,309.309 INFO    ] Initializing speech engine...
[2026-08-31 11:01:09,323.323 INFO    ] 2026-08-31 11:01:09
[2026-08-31 11:01:09,602.602 INFO    ] 2026-08-31 11:01:09
[2026-08-31 11:01:09,641.641 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:01:09,914.914 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:01:09,928.928 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:01:10,104.104 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:01:10,128.128 INFO    ] time= 31/08/2026 11:01:10
[2026-08-31 11:01:10,134.134 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:01:10,153.153 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:01:10,268.268 INFO    ] No existing commands found in stream
[2026-08-31 11:01:15,291.291 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:01:15,294.294 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-08-31 11:01:16,336.336 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 11:01:16,339.339 INFO    ] Checking for system updates...
[2026-08-31 11:01:16,374.374 INFO    ] 200
[2026-08-31 11:01:16,377.377 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:01:16,430.430 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:01:16,432.432 INFO    ] No update needed
[2026-08-31 11:01:16,435.435 INFO    ] Checking for camera pi updates...
[2026-08-31 11:01:16,468.468 INFO    ] 200
[2026-08-31 11:01:16,471.471 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:01:16,511.511 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:01:16,597.597 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:01:16,599.599 INFO    ] No camera update needed
[2026-08-31 11:01:16,602.602 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:01:16,604.604 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:01:16,609.609 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:01:16,614.614 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:01:18,655.655 INFO    ] ================================================
[2026-08-31 11:01:18,670.670 INFO    ] Launching Daemon at Mon Aug 31 11:01:18 IST 2026
[2026-08-31 11:01:18,681.681 INFO    ] ================================================
[2026-08-31 11:01:19,257.257 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:01:19
[2026-08-31 11:01:19,853.853 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:01:20,123.123 INFO    ] Initializing speech engine...
[2026-08-31 11:01:20,143.143 INFO    ] 2026-08-31 11:01:20
[2026-08-31 11:01:20,409.409 INFO    ] 2026-08-31 11:01:20
[2026-08-31 11:01:20,445.445 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:01:20,636.636 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:01:20,649.649 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:01:20,810.810 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:01:20,815.815 INFO    ] time= 31/08/2026 11:01:20
[2026-08-31 11:01:20,822.822 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:01:20,869.869 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:01:21,014.014 INFO    ] No existing commands found in stream
[2026-08-31 11:01:26,039.039 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:01:26,042.042 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-08-31 11:01:30,149.149 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 11:01:30,152.152 INFO    ] Checking for system updates...
[2026-08-31 11:01:30,187.187 INFO    ] 200
[2026-08-31 11:01:30,190.190 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:01:30,247.247 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:01:30,249.249 INFO    ] No update needed
[2026-08-31 11:01:30,252.252 INFO    ] Checking for camera pi updates...
[2026-08-31 11:01:30,285.285 INFO    ] 200
[2026-08-31 11:01:30,288.288 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:01:30,328.328 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:01:30,428.428 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:01:30,430.430 INFO    ] No camera update needed
[2026-08-31 11:01:30,432.432 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:01:30,435.435 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:01:30,440.440 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:01:30,445.445 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:01:32,494.494 INFO    ] ================================================
[2026-08-31 11:01:32,510.510 INFO    ] Launching Daemon at Mon Aug 31 11:01:32 IST 2026
[2026-08-31 11:01:32,522.522 INFO    ] ================================================
[2026-08-31 11:01:33,101.101 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:01:33
[2026-08-31 11:01:33,695.695 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:01:33,964.964 INFO    ] Initializing speech engine...
[2026-08-31 11:01:33,978.978 INFO    ] 2026-08-31 11:01:33
[2026-08-31 11:01:34,252.252 INFO    ] 2026-08-31 11:01:34
[2026-08-31 11:01:34,288.288 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:01:34,481.481 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:01:34,495.495 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:01:34,646.646 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:01:34,678.678 INFO    ] time= 31/08/2026 11:01:34
[2026-08-31 11:01:34,688.688 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:01:34,695.695 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:01:34,783.783 INFO    ] No existing commands found in stream
[2026-08-31 11:01:39,819.819 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:01:39,822.822 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-08-31 11:01:42,221.221 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 11:01:42,223.223 INFO    ] Checking for system updates...
[2026-08-31 11:01:42,260.260 INFO    ] 200
[2026-08-31 11:01:42,262.262 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:01:42,319.319 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:01:42,321.321 INFO    ] No update needed
[2026-08-31 11:01:42,323.323 INFO    ] Checking for camera pi updates...
[2026-08-31 11:01:42,358.358 INFO    ] 200
[2026-08-31 11:01:42,360.360 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:01:42,401.401 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:01:42,518.518 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:01:42,520.520 INFO    ] No camera update needed
[2026-08-31 11:01:42,523.523 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:01:42,525.525 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:01:42,530.530 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:01:42,535.535 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:01:44,575.575 INFO    ] ================================================
[2026-08-31 11:01:44,591.591 INFO    ] Launching Daemon at Mon Aug 31 11:01:44 IST 2026
[2026-08-31 11:01:44,601.601 INFO    ] ================================================
[2026-08-31 11:01:45,180.180 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:01:45
[2026-08-31 11:01:45,768.768 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:01:46,025.025 INFO    ] Initializing speech engine...
[2026-08-31 11:01:46,031.031 INFO    ] 2026-08-31 11:01:46
[2026-08-31 11:01:46,328.328 INFO    ] 2026-08-31 11:01:46
[2026-08-31 11:01:46,363.363 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:01:46,564.564 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:01:46,578.578 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:01:46,746.746 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:01:46,752.752 INFO    ] time= 31/08/2026 11:01:46
[2026-08-31 11:01:46,758.758 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:01:46,800.800 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:01:46,925.925 INFO    ] No existing commands found in stream
[2026-08-31 11:01:51,950.950 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:01:51,953.953 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-08-31 11:01:53,026.026 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 11:01:53,029.029 INFO    ] Checking for system updates...
[2026-08-31 11:01:53,064.064 INFO    ] 200
[2026-08-31 11:01:53,066.066 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:01:53,125.125 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:01:53,128.128 INFO    ] No update needed
[2026-08-31 11:01:53,130.130 INFO    ] Checking for camera pi updates...
[2026-08-31 11:01:53,163.163 INFO    ] 200
[2026-08-31 11:01:53,166.166 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:01:53,206.206 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:01:53,258.258 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:01:53,260.260 INFO    ] No camera update needed
[2026-08-31 11:01:53,262.262 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:01:53,265.265 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:01:53,270.270 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:01:53,275.275 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:01:55,315.315 INFO    ] ================================================
[2026-08-31 11:01:55,331.331 INFO    ] Launching Daemon at Mon Aug 31 11:01:55 IST 2026
[2026-08-31 11:01:55,341.341 INFO    ] ================================================
[2026-08-31 11:01:55,920.920 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:01:55
[2026-08-31 11:01:56,516.516 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:01:56,789.789 INFO    ] Initializing speech engine...
[2026-08-31 11:01:56,798.798 INFO    ] 2026-08-31 11:01:56
[2026-08-31 11:01:57,061.061 INFO    ] 2026-08-31 11:01:57
[2026-08-31 11:01:57,115.115 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:01:57,396.396 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:01:57,405.405 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:01:57,599.599 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:01:57,605.605 INFO    ] time= 31/08/2026 11:01:57
[2026-08-31 11:01:57,626.626 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:01:57,652.652 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:01:57,777.777 INFO    ] No existing commands found in stream
[2026-08-31 11:02:02,807.807 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:02:02,811.811 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-08-31 11:02:07,183.183 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 11:02:07,185.185 INFO    ] Checking for system updates...
[2026-08-31 11:02:07,221.221 INFO    ] 200
[2026-08-31 11:02:07,224.224 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:02:07,277.277 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:02:07,280.280 INFO    ] No update needed
[2026-08-31 11:02:07,283.283 INFO    ] Checking for camera pi updates...
[2026-08-31 11:02:07,316.316 INFO    ] 200
[2026-08-31 11:02:07,319.319 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:02:07,359.359 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:02:07,556.556 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:02:07,559.559 INFO    ] No camera update needed
[2026-08-31 11:02:07,561.561 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:02:07,563.563 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:02:07,569.569 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:02:07,574.574 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:02:09,615.615 INFO    ] ================================================
[2026-08-31 11:02:09,630.630 INFO    ] Launching Daemon at Mon Aug 31 11:02:09 IST 2026
[2026-08-31 11:02:09,641.641 INFO    ] ================================================
[2026-08-31 11:02:10,208.208 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:02:10
[2026-08-31 11:02:10,795.795 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:02:11,058.058 INFO    ] Initializing speech engine...
[2026-08-31 11:02:11,065.065 INFO    ] 2026-08-31 11:02:11
[2026-08-31 11:02:11,370.370 INFO    ] 2026-08-31 11:02:11
[2026-08-31 11:02:11,396.396 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:02:11,616.616 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:02:11,623.623 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:02:11,757.757 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:02:11,764.764 INFO    ] time= 31/08/2026 11:02:11
[2026-08-31 11:02:11,785.785 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:02:11,806.806 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:02:11,893.893 INFO    ] No existing commands found in stream
[2026-08-31 11:02:16,909.909 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:02:16,912.912 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-08-31 11:02:20,822.822 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 11:02:20,824.824 INFO    ] Checking for system updates...
[2026-08-31 11:02:20,860.860 INFO    ] 200
[2026-08-31 11:02:20,862.862 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:02:20,922.922 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:02:20,924.924 INFO    ] No update needed
[2026-08-31 11:02:20,927.927 INFO    ] Checking for camera pi updates...
[2026-08-31 11:02:20,960.960 INFO    ] 200
[2026-08-31 11:02:20,963.963 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:02:21,003.003 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:02:21,106.106 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:02:21,108.108 INFO    ] No camera update needed
[2026-08-31 11:02:21,111.111 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:02:21,114.114 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:02:21,119.119 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:02:21,124.124 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:02:23,167.167 INFO    ] ================================================
[2026-08-31 11:02:23,183.183 INFO    ] Launching Daemon at Mon Aug 31 11:02:23 IST 2026
[2026-08-31 11:02:23,195.195 INFO    ] ================================================
[2026-08-31 11:02:23,863.863 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:02:23
[2026-08-31 11:02:24,564.564 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:02:24,885.885 INFO    ] Initializing speech engine...
[2026-08-31 11:02:24,893.893 INFO    ] 2026-08-31 11:02:24
[2026-08-31 11:02:25,165.165 INFO    ] 2026-08-31 11:02:25
[2026-08-31 11:02:25,222.222 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:02:25,521.521 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:02:25,560.560 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:02:25,735.735 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:02:25,746.746 INFO    ] time= 31/08/2026 11:02:25
[2026-08-31 11:02:25,775.775 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:02:25,784.784 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:02:25,886.886 INFO    ] No existing commands found in stream
[2026-08-31 11:02:30,923.923 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:02:30,926.926 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-08-31 11:02:33,741.741 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 11:02:33,744.744 INFO    ] Checking for system updates...
[2026-08-31 11:02:33,781.781 INFO    ] 200
[2026-08-31 11:02:33,784.784 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:02:33,838.838 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:02:33,841.841 INFO    ] No update needed
[2026-08-31 11:02:33,844.844 INFO    ] Checking for camera pi updates...
[2026-08-31 11:02:33,879.879 INFO    ] 200
[2026-08-31 11:02:33,882.882 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:02:33,929.929 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:02:34,027.027 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:02:34,030.030 INFO    ] No camera update needed
[2026-08-31 11:02:34,033.033 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:02:34,035.035 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:02:34,042.042 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:02:34,048.048 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:02:36,090.090 INFO    ] ================================================
[2026-08-31 11:02:36,106.106 INFO    ] Launching Daemon at Mon Aug 31 11:02:36 IST 2026
[2026-08-31 11:02:36,117.117 INFO    ] ================================================
[2026-08-31 11:02:36,695.695 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:02:36
[2026-08-31 11:02:37,325.325 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:02:37,603.603 INFO    ] Initializing speech engine...
[2026-08-31 11:02:37,613.613 INFO    ] 2026-08-31 11:02:37
[2026-08-31 11:02:37,862.862 INFO    ] 2026-08-31 11:02:37
[2026-08-31 11:02:37,897.897 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:02:38,093.093 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:02:38,096.096 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:02:38,254.254 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:02:38,260.260 INFO    ] time= 31/08/2026 11:02:38
[2026-08-31 11:02:38,266.266 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:02:38,280.280 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:02:38,440.440 INFO    ] No existing commands found in stream
[2026-08-31 11:02:43,470.470 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:02:43,473.473 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-08-31 11:02:47,935.935 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 11:02:47,938.938 INFO    ] Checking for system updates...
[2026-08-31 11:02:47,974.974 INFO    ] 200
[2026-08-31 11:02:47,977.977 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:02:48,042.042 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:02:48,045.045 INFO    ] No update needed
[2026-08-31 11:02:48,047.047 INFO    ] Checking for camera pi updates...
[2026-08-31 11:02:48,081.081 INFO    ] 200
[2026-08-31 11:02:48,083.083 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:02:48,123.123 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:02:48,205.205 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:02:48,207.207 INFO    ] No camera update needed
[2026-08-31 11:02:48,210.210 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:02:48,212.212 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:02:48,217.217 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:02:48,222.222 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:02:50,263.263 INFO    ] ================================================
[2026-08-31 11:02:50,278.278 INFO    ] Launching Daemon at Mon Aug 31 11:02:50 IST 2026
[2026-08-31 11:02:50,289.289 INFO    ] ================================================
[2026-08-31 11:02:50,862.862 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:02:50
[2026-08-31 11:02:51,453.453 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:02:51,713.713 INFO    ] Initializing speech engine...
[2026-08-31 11:02:51,732.732 INFO    ] 2026-08-31 11:02:51
[2026-08-31 11:02:51,981.981 INFO    ] 2026-08-31 11:02:51
[2026-08-31 11:02:52,016.016 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:02:52,267.267 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:02:52,276.276 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:02:52,495.495 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:02:52,535.535 INFO    ] time= 31/08/2026 11:02:52
[2026-08-31 11:02:52,541.541 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:02:52,559.559 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:02:52,692.692 INFO    ] No existing commands found in stream
[2026-08-31 11:02:57,713.713 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:02:57,716.716 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-08-31 11:02:58,854.854 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 11:02:58,857.857 INFO    ] Checking for system updates...
[2026-08-31 11:02:58,898.898 INFO    ] 200
[2026-08-31 11:02:58,900.900 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:02:58,953.953 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:02:58,956.956 INFO    ] No update needed
[2026-08-31 11:02:58,958.958 INFO    ] Checking for camera pi updates...
[2026-08-31 11:02:58,993.993 INFO    ] 200
[2026-08-31 11:02:58,995.995 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:02:59,039.039 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:02:59,156.156 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:02:59,158.158 INFO    ] No camera update needed
[2026-08-31 11:02:59,161.161 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:02:59,163.163 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:02:59,168.168 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:02:59,173.173 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:03:01,221.221 INFO    ] ================================================
[2026-08-31 11:03:01,237.237 INFO    ] Launching Daemon at Mon Aug 31 11:03:01 IST 2026
[2026-08-31 11:03:01,248.248 INFO    ] ================================================
[2026-08-31 11:03:01,974.974 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:03:01
[2026-08-31 11:03:02,823.823 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:03:03,179.179 INFO    ] Initializing speech engine...
[2026-08-31 11:03:03,192.192 INFO    ] 2026-08-31 11:03:03
[2026-08-31 11:03:03,588.588 INFO    ] 2026-08-31 11:03:03
[2026-08-31 11:03:03,669.669 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:03:03,861.861 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:03:03,865.865 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:03:04,018.018 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:03:04,078.078 INFO    ] time= 31/08/2026 11:03:04
[2026-08-31 11:03:04,122.122 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:03:04,166.166 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:03:04,300.300 INFO    ] No existing commands found in stream
[2026-08-31 11:03:09,330.330 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:03:09,333.333 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-08-31 11:03:10,207.207 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 11:03:10,209.209 INFO    ] Checking for system updates...
[2026-08-31 11:03:10,245.245 INFO    ] 200
[2026-08-31 11:03:10,247.247 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:03:10,300.300 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:03:10,302.302 INFO    ] No update needed
[2026-08-31 11:03:10,305.305 INFO    ] Checking for camera pi updates...
[2026-08-31 11:03:10,339.339 INFO    ] 200
[2026-08-31 11:03:10,341.341 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:03:10,382.382 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:03:10,482.482 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:03:10,484.484 INFO    ] No camera update needed
[2026-08-31 11:03:10,486.486 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:03:10,489.489 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:03:10,494.494 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:03:10,499.499 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:03:12,540.540 INFO    ] ================================================
[2026-08-31 11:03:12,555.555 INFO    ] Launching Daemon at Mon Aug 31 11:03:12 IST 2026
[2026-08-31 11:03:12,567.567 INFO    ] ================================================
[2026-08-31 11:03:13,178.178 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:03:13
[2026-08-31 11:03:13,839.839 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:03:14,140.140 INFO    ] Initializing speech engine...
[2026-08-31 11:03:14,150.150 INFO    ] 2026-08-31 11:03:14
[2026-08-31 11:03:14,425.425 INFO    ] 2026-08-31 11:03:14
[2026-08-31 11:03:14,483.483 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:03:14,735.735 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:03:14,741.741 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:03:14,954.954 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:03:14,985.985 INFO    ] time= 31/08/2026 11:03:14
[2026-08-31 11:03:15,003.003 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:03:15,035.035 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:03:15,163.163 INFO    ] No existing commands found in stream
[2026-08-31 11:03:20,190.190 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:03:20,194.194 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-08-31 11:03:21,328.328 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 11:03:21,331.331 INFO    ] Checking for system updates...
[2026-08-31 11:03:21,368.368 INFO    ] 200
[2026-08-31 11:03:21,371.371 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:03:21,424.424 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:03:21,427.427 INFO    ] No update needed
[2026-08-31 11:03:21,430.430 INFO    ] Checking for camera pi updates...
[2026-08-31 11:03:21,468.468 INFO    ] 200
[2026-08-31 11:03:21,470.470 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:03:21,520.520 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:03:21,621.621 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:03:21,623.623 INFO    ] No camera update needed
[2026-08-31 11:03:21,625.625 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:03:21,628.628 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:03:21,633.633 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:03:21,638.638 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:03:23,681.681 INFO    ] ================================================
[2026-08-31 11:03:23,697.697 INFO    ] Launching Daemon at Mon Aug 31 11:03:23 IST 2026
[2026-08-31 11:03:23,708.708 INFO    ] ================================================
[2026-08-31 11:03:24,281.281 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:03:24
[2026-08-31 11:03:24,869.869 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:03:25,124.124 INFO    ] Initializing speech engine...
[2026-08-31 11:03:25,133.133 INFO    ] 2026-08-31 11:03:25
[2026-08-31 11:03:25,424.424 INFO    ] 2026-08-31 11:03:25
[2026-08-31 11:03:25,463.463 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:03:25,656.656 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:03:25,670.670 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:03:25,827.827 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:03:25,835.835 INFO    ] time= 31/08/2026 11:03:25
[2026-08-31 11:03:25,840.840 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:03:25,846.846 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:03:25,993.993 INFO    ] No existing commands found in stream
[2026-08-31 11:03:31,018.018 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:03:31,021.021 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-08-31 11:03:35,444.444 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 11:03:35,447.447 INFO    ] Checking for system updates...
[2026-08-31 11:03:35,483.483 INFO    ] 200
[2026-08-31 11:03:35,485.485 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:03:35,538.538 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:03:35,541.541 INFO    ] No update needed
[2026-08-31 11:03:35,543.543 INFO    ] Checking for camera pi updates...
[2026-08-31 11:03:35,577.577 INFO    ] 200
[2026-08-31 11:03:35,580.580 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:03:35,621.621 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:03:35,721.721 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:03:35,723.723 INFO    ] No camera update needed
[2026-08-31 11:03:35,725.725 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:03:35,728.728 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:03:35,733.733 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:03:35,738.738 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:03:37,779.779 INFO    ] ================================================
[2026-08-31 11:03:37,794.794 INFO    ] Launching Daemon at Mon Aug 31 11:03:37 IST 2026
[2026-08-31 11:03:37,805.805 INFO    ] ================================================
[2026-08-31 11:03:38,384.384 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:03:38
[2026-08-31 11:03:38,970.970 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:03:39,222.222 INFO    ] Initializing speech engine...
[2026-08-31 11:03:39,230.230 INFO    ] 2026-08-31 11:03:39
[2026-08-31 11:03:39,521.521 INFO    ] 2026-08-31 11:03:39
[2026-08-31 11:03:39,557.557 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:03:39,776.776 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:03:39,784.784 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:03:40,000.000 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:03:40,007.007 INFO    ] time= 31/08/2026 11:03:40
[2026-08-31 11:03:40,066.066 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:03:40,115.115 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:03:40,208.208 INFO    ] No existing commands found in stream
[2026-08-31 11:03:45,220.220 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:03:45,222.222 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-08-31 11:03:47,263.263 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 11:03:47,266.266 INFO    ] Checking for system updates...
[2026-08-31 11:03:47,302.302 INFO    ] 200
[2026-08-31 11:03:47,305.305 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:03:47,364.364 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:03:47,367.367 INFO    ] No update needed
[2026-08-31 11:03:47,370.370 INFO    ] Checking for camera pi updates...
[2026-08-31 11:03:47,404.404 INFO    ] 200
[2026-08-31 11:03:47,407.407 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:03:47,449.449 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:03:47,532.532 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:03:47,535.535 INFO    ] No camera update needed
[2026-08-31 11:03:47,538.538 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:03:47,541.541 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:03:47,547.547 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:03:47,552.552 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:03:49,595.595 INFO    ] ================================================
[2026-08-31 11:03:49,610.610 INFO    ] Launching Daemon at Mon Aug 31 11:03:49 IST 2026
[2026-08-31 11:03:49,621.621 INFO    ] ================================================
[2026-08-31 11:03:50,263.263 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:03:50
[2026-08-31 11:03:50,921.921 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:03:51,221.221 INFO    ] Initializing speech engine...
[2026-08-31 11:03:51,229.229 INFO    ] 2026-08-31 11:03:51
[2026-08-31 11:03:51,503.503 INFO    ] 2026-08-31 11:03:51
[2026-08-31 11:03:51,561.561 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:03:51,803.803 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:03:51,819.819 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:03:52,031.031 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:03:52,065.065 INFO    ] time= 31/08/2026 11:03:52
[2026-08-31 11:03:52,084.084 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:03:52,115.115 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:03:52,242.242 INFO    ] No existing commands found in stream
[2026-08-31 11:03:57,275.275 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:03:57,278.278 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-08-31 11:03:58,098.098 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 11:03:58,101.101 INFO    ] Checking for system updates...
[2026-08-31 11:03:58,139.139 INFO    ] 200
[2026-08-31 11:03:58,141.141 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:03:58,195.195 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:03:58,198.198 INFO    ] No update needed
[2026-08-31 11:03:58,201.201 INFO    ] Checking for camera pi updates...
[2026-08-31 11:03:58,236.236 INFO    ] 200
[2026-08-31 11:03:58,239.239 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:03:58,284.284 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:03:58,381.381 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:03:58,384.384 INFO    ] No camera update needed
[2026-08-31 11:03:58,387.387 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:03:58,389.389 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:03:58,395.395 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:03:58,401.401 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:04:00,443.443 INFO    ] ================================================
[2026-08-31 11:04:00,458.458 INFO    ] Launching Daemon at Mon Aug 31 11:04:00 IST 2026
[2026-08-31 11:04:00,470.470 INFO    ] ================================================
[2026-08-31 11:04:01,178.178 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:04:01
[2026-08-31 11:04:01,853.853 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:04:02,374.374 INFO    ] Initializing speech engine...
[2026-08-31 11:04:02,382.382 INFO    ] 2026-08-31 11:04:02
[2026-08-31 11:04:02,746.746 INFO    ] 2026-08-31 11:04:02
[2026-08-31 11:04:02,790.790 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:04:02,985.985 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:04:03,002.002 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:04:03,255.255 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:04:03,274.274 INFO    ] time= 31/08/2026 11:04:03
[2026-08-31 11:04:03,322.322 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:04:03,362.362 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:04:03,502.502 INFO    ] No existing commands found in stream
[2026-08-31 11:04:08,516.516 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:04:08,519.519 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-08-31 11:04:12,100.100 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 11:04:12,102.102 INFO    ] Checking for system updates...
[2026-08-31 11:04:12,139.139 INFO    ] 200
[2026-08-31 11:04:12,142.142 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:04:12,195.195 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:04:12,198.198 INFO    ] No update needed
[2026-08-31 11:04:12,200.200 INFO    ] Checking for camera pi updates...
[2026-08-31 11:04:12,233.233 INFO    ] 200
[2026-08-31 11:04:12,236.236 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:04:12,276.276 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:04:12,453.453 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:04:12,456.456 INFO    ] No camera update needed
[2026-08-31 11:04:12,458.458 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:04:12,460.460 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:04:12,466.466 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:04:12,471.471 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:04:14,510.510 INFO    ] ================================================
[2026-08-31 11:04:14,526.526 INFO    ] Launching Daemon at Mon Aug 31 11:04:14 IST 2026
[2026-08-31 11:04:14,537.537 INFO    ] ================================================
[2026-08-31 11:04:15,121.121 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:04:15
[2026-08-31 11:04:15,719.719 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:04:15,980.980 INFO    ] Initializing speech engine...
[2026-08-31 11:04:16,001.001 INFO    ] 2026-08-31 11:04:15
[2026-08-31 11:04:16,273.273 INFO    ] 2026-08-31 11:04:16
[2026-08-31 11:04:16,310.310 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:04:16,527.527 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:04:16,590.590 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:04:16,743.743 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:04:16,750.750 INFO    ] time= 31/08/2026 11:04:16
[2026-08-31 11:04:16,809.809 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:04:16,864.864 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:04:17,018.018 INFO    ] No existing commands found in stream
[2026-08-31 11:04:22,046.046 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:04:22,049.049 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-08-31 11:04:25,581.581 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 11:04:25,584.584 INFO    ] Checking for system updates...
[2026-08-31 11:04:25,620.620 INFO    ] 200
[2026-08-31 11:04:25,622.622 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:04:25,679.679 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:04:25,681.681 INFO    ] No update needed
[2026-08-31 11:04:25,684.684 INFO    ] Checking for camera pi updates...
[2026-08-31 11:04:25,717.717 INFO    ] 200
[2026-08-31 11:04:25,719.719 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:04:25,764.764 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:04:25,852.852 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:04:25,854.854 INFO    ] No camera update needed
[2026-08-31 11:04:25,857.857 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:04:25,859.859 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:04:25,864.864 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:04:25,869.869 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:04:27,910.910 INFO    ] ================================================
[2026-08-31 11:04:27,926.926 INFO    ] Launching Daemon at Mon Aug 31 11:04:27 IST 2026
[2026-08-31 11:04:27,937.937 INFO    ] ================================================
[2026-08-31 11:04:28,559.559 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:04:28
[2026-08-31 11:04:29,201.201 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:04:29,493.493 INFO    ] Initializing speech engine...
[2026-08-31 11:04:29,500.500 INFO    ] 2026-08-31 11:04:29
[2026-08-31 11:04:29,756.756 INFO    ] 2026-08-31 11:04:29
[2026-08-31 11:04:29,799.799 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:04:30,051.051 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:04:30,058.058 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:04:30,304.304 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:04:30,317.317 INFO    ] time= 31/08/2026 11:04:30
[2026-08-31 11:04:30,338.338 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:04:30,365.365 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:04:30,485.485 INFO    ] No existing commands found in stream
[2026-08-31 11:04:35,516.516 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:04:35,519.519 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-08-31 11:04:37,008.008 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 11:04:37,011.011 INFO    ] Checking for system updates...
[2026-08-31 11:04:37,049.049 INFO    ] 200
[2026-08-31 11:04:37,052.052 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:04:37,104.104 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:04:37,106.106 INFO    ] No update needed
[2026-08-31 11:04:37,109.109 INFO    ] Checking for camera pi updates...
[2026-08-31 11:04:37,143.143 INFO    ] 200
[2026-08-31 11:04:37,145.145 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:04:37,190.190 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:04:37,299.299 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:04:37,301.301 INFO    ] No camera update needed
[2026-08-31 11:04:37,304.304 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:04:37,306.306 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:04:37,312.312 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:04:37,317.317 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:04:39,356.356 INFO    ] ================================================
[2026-08-31 11:04:39,372.372 INFO    ] Launching Daemon at Mon Aug 31 11:04:39 IST 2026
[2026-08-31 11:04:39,383.383 INFO    ] ================================================
[2026-08-31 11:04:39,965.965 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:04:39
[2026-08-31 11:04:40,564.564 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:04:40,848.848 INFO    ] Initializing speech engine...
[2026-08-31 11:04:40,859.859 INFO    ] 2026-08-31 11:04:40
[2026-08-31 11:04:41,124.124 INFO    ] 2026-08-31 11:04:41
[2026-08-31 11:04:41,160.160 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:04:41,377.377 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:04:41,400.400 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:04:41,600.600 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:04:41,606.606 INFO    ] time= 31/08/2026 11:04:41
[2026-08-31 11:04:41,666.666 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:04:41,721.721 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:04:41,804.804 INFO    ] No existing commands found in stream
[2026-08-31 11:04:46,817.817 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:04:46,820.820 INFO    ] Waiting 0.00 seconds before fallback handling...
[2026-08-31 11:04:47,322.322 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 11:04:47,325.325 INFO    ] Checking for system updates...
[2026-08-31 11:04:47,362.362 INFO    ] 200
[2026-08-31 11:04:47,364.364 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:04:47,419.419 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:04:47,421.421 INFO    ] No update needed
[2026-08-31 11:04:47,424.424 INFO    ] Checking for camera pi updates...
[2026-08-31 11:04:47,459.459 INFO    ] 200
[2026-08-31 11:04:47,461.461 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:04:47,503.503 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:04:47,602.602 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:04:47,605.605 INFO    ] No camera update needed
[2026-08-31 11:04:47,608.608 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:04:47,610.610 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:04:47,616.616 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:04:47,622.622 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:04:49,663.663 INFO    ] ================================================
[2026-08-31 11:04:49,678.678 INFO    ] Launching Daemon at Mon Aug 31 11:04:49 IST 2026
[2026-08-31 11:04:49,690.690 INFO    ] ================================================
[2026-08-31 11:04:50,253.253 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:04:50
[2026-08-31 11:04:50,844.844 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:04:51,093.093 INFO    ] Initializing speech engine...
[2026-08-31 11:04:51,115.115 INFO    ] 2026-08-31 11:04:51
[2026-08-31 11:04:51,368.368 INFO    ] 2026-08-31 11:04:51
[2026-08-31 11:04:51,403.403 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:04:51,603.603 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:04:51,659.659 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:04:51,802.802 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:04:51,824.824 INFO    ] time= 31/08/2026 11:04:51
[2026-08-31 11:04:51,895.895 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:04:51,938.938 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:04:52,069.069 INFO    ] No existing commands found in stream
[2026-08-31 11:04:57,096.096 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:04:57,099.099 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-08-31 11:04:57,820.820 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 11:04:57,822.822 INFO    ] Checking for system updates...
[2026-08-31 11:04:57,858.858 INFO    ] 200
[2026-08-31 11:04:57,860.860 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:04:57,913.913 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:04:57,916.916 INFO    ] No update needed
[2026-08-31 11:04:57,920.920 INFO    ] Checking for camera pi updates...
[2026-08-31 11:04:57,955.955 INFO    ] 200
[2026-08-31 11:04:57,958.958 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:04:57,999.999 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:04:58,111.111 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:04:58,114.114 INFO    ] No camera update needed
[2026-08-31 11:04:58,116.116 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:04:58,119.119 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:04:58,125.125 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:04:58,130.130 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:05:00,172.172 INFO    ] ================================================
[2026-08-31 11:05:00,188.188 INFO    ] Launching Daemon at Mon Aug 31 11:05:00 IST 2026
[2026-08-31 11:05:00,198.198 INFO    ] ================================================
[2026-08-31 11:05:00,766.766 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:05:00
[2026-08-31 11:05:01,613.613 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:05:01,965.965 INFO    ] Initializing speech engine...
[2026-08-31 11:05:01,976.976 INFO    ] 2026-08-31 11:05:01
[2026-08-31 11:05:02,256.256 INFO    ] 2026-08-31 11:05:02
[2026-08-31 11:05:02,323.323 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:05:02,508.508 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:05:02,564.564 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:05:02,717.717 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:05:02,743.743 INFO    ] time= 31/08/2026 11:05:02
[2026-08-31 11:05:02,779.779 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:05:02,830.830 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:05:02,923.923 INFO    ] No existing commands found in stream
[2026-08-31 11:05:07,936.936 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:05:07,939.939 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-08-31 11:05:11,737.737 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 11:05:11,739.739 INFO    ] Checking for system updates...
[2026-08-31 11:05:11,778.778 INFO    ] 200
[2026-08-31 11:05:11,781.781 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:05:11,833.833 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:05:11,835.835 INFO    ] No update needed
[2026-08-31 11:05:11,838.838 INFO    ] Checking for camera pi updates...
[2026-08-31 11:05:11,872.872 INFO    ] 200
[2026-08-31 11:05:11,874.874 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:05:11,914.914 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:05:12,045.045 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:05:12,048.048 INFO    ] No camera update needed
[2026-08-31 11:05:12,050.050 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:05:12,053.053 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:05:12,058.058 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:05:12,063.063 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:05:14,102.102 INFO    ] ================================================
[2026-08-31 11:05:14,123.123 INFO    ] Launching Daemon at Mon Aug 31 11:05:14 IST 2026
[2026-08-31 11:05:14,135.135 INFO    ] ================================================
[2026-08-31 11:05:14,701.701 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:05:14
[2026-08-31 11:05:15,284.284 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:05:15,551.551 INFO    ] Initializing speech engine...
[2026-08-31 11:05:15,561.561 INFO    ] 2026-08-31 11:05:15
[2026-08-31 11:05:15,806.806 INFO    ] 2026-08-31 11:05:15
[2026-08-31 11:05:15,841.841 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:05:16,094.094 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:05:16,103.103 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:05:16,238.238 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:05:16,308.308 INFO    ] time= 31/08/2026 11:05:16
[2026-08-31 11:05:16,362.362 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:05:16,373.373 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:05:16,523.523 INFO    ] No existing commands found in stream
[2026-08-31 11:05:21,549.549 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:05:21,552.552 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-08-31 11:05:25,890.890 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 11:05:25,892.892 INFO    ] Checking for system updates...
[2026-08-31 11:05:25,928.928 INFO    ] 200
[2026-08-31 11:05:25,930.930 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:05:25,982.982 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:05:25,985.985 INFO    ] No update needed
[2026-08-31 11:05:25,987.987 INFO    ] Checking for camera pi updates...
[2026-08-31 11:05:26,023.023 INFO    ] 200
[2026-08-31 11:05:26,025.025 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:05:26,065.065 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:05:26,164.164 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:05:26,166.166 INFO    ] No camera update needed
[2026-08-31 11:05:26,169.169 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:05:26,171.171 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:05:26,176.176 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:05:26,181.181 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:05:28,222.222 INFO    ] ================================================
[2026-08-31 11:05:28,238.238 INFO    ] Launching Daemon at Mon Aug 31 11:05:28 IST 2026
[2026-08-31 11:05:28,249.249 INFO    ] ================================================
[2026-08-31 11:05:28,824.824 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:05:28
[2026-08-31 11:05:29,426.426 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:05:29,703.703 INFO    ] Initializing speech engine...
[2026-08-31 11:05:29,715.715 INFO    ] 2026-08-31 11:05:29
[2026-08-31 11:05:29,978.978 INFO    ] 2026-08-31 11:05:29
[2026-08-31 11:05:30,013.013 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:05:30,289.289 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:05:30,299.299 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:05:30,447.447 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:05:30,482.482 INFO    ] time= 31/08/2026 11:05:30
[2026-08-31 11:05:30,531.531 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:05:30,585.585 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:05:30,749.749 INFO    ] No existing commands found in stream
[2026-08-31 11:05:35,764.764 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:05:35,767.767 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-08-31 11:05:37,426.426 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 11:05:37,429.429 INFO    ] Checking for system updates...
[2026-08-31 11:05:37,464.464 INFO    ] 200
[2026-08-31 11:05:37,466.466 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:05:37,520.520 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:05:37,522.522 INFO    ] No update needed
[2026-08-31 11:05:37,524.524 INFO    ] Checking for camera pi updates...
[2026-08-31 11:05:37,564.564 INFO    ] 200
[2026-08-31 11:05:37,567.567 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:05:37,619.619 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:05:37,710.710 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:05:37,712.712 INFO    ] No camera update needed
[2026-08-31 11:05:37,715.715 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:05:37,717.717 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:05:37,723.723 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:05:37,729.729 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:05:39,770.770 INFO    ] ================================================
[2026-08-31 11:05:39,786.786 INFO    ] Launching Daemon at Mon Aug 31 11:05:39 IST 2026
[2026-08-31 11:05:39,798.798 INFO    ] ================================================
[2026-08-31 11:05:40,367.367 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:05:40
[2026-08-31 11:05:40,947.947 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:05:41,203.203 INFO    ] Initializing speech engine...
[2026-08-31 11:05:41,217.217 INFO    ] 2026-08-31 11:05:41
[2026-08-31 11:05:41,493.493 INFO    ] 2026-08-31 11:05:41
[2026-08-31 11:05:41,528.528 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:05:41,806.806 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:05:41,815.815 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:05:41,967.967 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:05:42,022.022 INFO    ] time= 31/08/2026 11:05:41
[2026-08-31 11:05:42,071.071 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:05:42,104.104 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:05:42,195.195 INFO    ] No existing commands found in stream
[2026-08-31 11:05:47,226.226 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:05:47,229.229 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-08-31 11:05:50,124.124 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 11:05:50,127.127 INFO    ] Checking for system updates...
[2026-08-31 11:05:50,163.163 INFO    ] 200
[2026-08-31 11:05:50,165.165 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:05:50,218.218 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:05:50,221.221 INFO    ] No update needed
[2026-08-31 11:05:50,223.223 INFO    ] Checking for camera pi updates...
[2026-08-31 11:05:50,257.257 INFO    ] 200
[2026-08-31 11:05:50,259.259 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:05:50,300.300 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:05:50,384.384 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:05:50,387.387 INFO    ] No camera update needed
[2026-08-31 11:05:50,389.389 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:05:50,392.392 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:05:50,397.397 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:05:50,402.402 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:05:52,442.442 INFO    ] ================================================
[2026-08-31 11:05:52,456.456 INFO    ] Launching Daemon at Mon Aug 31 11:05:52 IST 2026
[2026-08-31 11:05:52,468.468 INFO    ] ================================================
[2026-08-31 11:05:53,032.032 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:05:53
[2026-08-31 11:05:53,614.614 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:05:53,869.869 INFO    ] Initializing speech engine...
[2026-08-31 11:05:53,882.882 INFO    ] 2026-08-31 11:05:53
[2026-08-31 11:05:54,163.163 INFO    ] 2026-08-31 11:05:54
[2026-08-31 11:05:54,200.200 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:05:54,414.414 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:05:54,423.423 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:05:54,631.631 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:05:54,645.645 INFO    ] time= 31/08/2026 11:05:54
[2026-08-31 11:05:54,710.710 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:05:54,764.764 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:05:54,900.900 INFO    ] No existing commands found in stream
[2026-08-31 11:05:59,915.915 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:05:59,918.918 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-08-31 11:06:03,664.664 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 11:06:03,666.666 INFO    ] Checking for system updates...
[2026-08-31 11:06:03,702.702 INFO    ] 200
[2026-08-31 11:06:03,705.705 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:06:03,759.759 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:06:03,761.761 INFO    ] No update needed
[2026-08-31 11:06:03,764.764 INFO    ] Checking for camera pi updates...
[2026-08-31 11:06:03,801.801 INFO    ] 200
[2026-08-31 11:06:03,804.804 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:06:03,845.845 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:06:03,970.970 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:06:03,972.972 INFO    ] No camera update needed
[2026-08-31 11:06:03,975.975 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:06:03,977.977 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:06:03,982.982 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:06:03,987.987 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:06:06,028.028 INFO    ] ================================================
[2026-08-31 11:06:06,043.043 INFO    ] Launching Daemon at Mon Aug 31 11:06:06 IST 2026
[2026-08-31 11:06:06,053.053 INFO    ] ================================================
[2026-08-31 11:06:06,642.642 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:06:06
[2026-08-31 11:06:07,226.226 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:06:07,505.505 INFO    ] Initializing speech engine...
[2026-08-31 11:06:07,515.515 INFO    ] 2026-08-31 11:06:07
[2026-08-31 11:06:07,770.770 INFO    ] 2026-08-31 11:06:07
[2026-08-31 11:06:07,805.805 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:06:08,011.011 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:06:08,064.064 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:06:08,278.278 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:06:08,332.332 INFO    ] time= 31/08/2026 11:06:08
[2026-08-31 11:06:08,339.339 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:06:08,354.354 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:06:08,492.492 INFO    ] No existing commands found in stream
[2026-08-31 11:06:13,507.507 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:06:13,510.510 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-08-31 11:06:16,863.863 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 11:06:16,865.865 INFO    ] Checking for system updates...
[2026-08-31 11:06:16,902.902 INFO    ] 200
[2026-08-31 11:06:16,905.905 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:06:16,962.962 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:06:16,964.964 INFO    ] No update needed
[2026-08-31 11:06:16,967.967 INFO    ] Checking for camera pi updates...
[2026-08-31 11:06:17,001.001 INFO    ] 200
[2026-08-31 11:06:17,003.003 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:06:17,044.044 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:06:17,226.226 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:06:17,229.229 INFO    ] No camera update needed
[2026-08-31 11:06:17,231.231 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:06:17,233.233 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:06:17,239.239 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:06:17,244.244 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:06:19,285.285 INFO    ] ================================================
[2026-08-31 11:06:19,300.300 INFO    ] Launching Daemon at Mon Aug 31 11:06:19 IST 2026
[2026-08-31 11:06:19,311.311 INFO    ] ================================================
[2026-08-31 11:06:19,891.891 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:06:19
[2026-08-31 11:06:20,485.485 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:06:20,763.763 INFO    ] Initializing speech engine...
[2026-08-31 11:06:20,771.771 INFO    ] 2026-08-31 11:06:20
[2026-08-31 11:06:21,030.030 INFO    ] 2026-08-31 11:06:21
[2026-08-31 11:06:21,083.083 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:06:21,336.336 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:06:21,354.354 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:06:21,570.570 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:06:21,576.576 INFO    ] time= 31/08/2026 11:06:21
[2026-08-31 11:06:21,595.595 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:06:21,625.625 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:06:21,770.770 INFO    ] No existing commands found in stream
[2026-08-31 11:06:26,800.800 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:06:26,803.803 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-08-31 11:06:28,734.734 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 11:06:28,737.737 INFO    ] Checking for system updates...
[2026-08-31 11:06:28,773.773 INFO    ] 200
[2026-08-31 11:06:28,775.775 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:06:28,831.831 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:06:28,834.834 INFO    ] No update needed
[2026-08-31 11:06:28,836.836 INFO    ] Checking for camera pi updates...
[2026-08-31 11:06:28,874.874 INFO    ] 200
[2026-08-31 11:06:28,876.876 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:06:28,923.923 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:06:29,025.025 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:06:29,027.027 INFO    ] No camera update needed
[2026-08-31 11:06:29,030.030 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:06:29,032.032 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:06:29,038.038 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:06:29,043.043 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:06:31,083.083 INFO    ] ================================================
[2026-08-31 11:06:31,098.098 INFO    ] Launching Daemon at Mon Aug 31 11:06:31 IST 2026
[2026-08-31 11:06:31,109.109 INFO    ] ================================================
[2026-08-31 11:06:31,697.697 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:06:31
[2026-08-31 11:06:32,314.314 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:06:32,604.604 INFO    ] Initializing speech engine...
[2026-08-31 11:06:32,610.610 INFO    ] 2026-08-31 11:06:32
[2026-08-31 11:06:32,915.915 INFO    ] 2026-08-31 11:06:32
[2026-08-31 11:06:32,957.957 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:06:33,204.204 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:06:33,209.209 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:06:33,418.418 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:06:33,441.441 INFO    ] time= 31/08/2026 11:06:33
[2026-08-31 11:06:33,446.446 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:06:33,464.464 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:06:33,589.589 INFO    ] No existing commands found in stream
[2026-08-31 11:06:38,605.605 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:06:38,608.608 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-08-31 11:06:39,585.585 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 11:06:39,588.588 INFO    ] Checking for system updates...
[2026-08-31 11:06:39,624.624 INFO    ] 200
[2026-08-31 11:06:39,626.626 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:06:39,679.679 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:06:39,682.682 INFO    ] No update needed
[2026-08-31 11:06:39,684.684 INFO    ] Checking for camera pi updates...
[2026-08-31 11:06:39,719.719 INFO    ] 200
[2026-08-31 11:06:39,721.721 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:06:39,763.763 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:06:39,887.887 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:06:39,889.889 INFO    ] No camera update needed
[2026-08-31 11:06:39,892.892 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:06:39,894.894 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:06:39,899.899 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:06:39,904.904 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:06:41,945.945 INFO    ] ================================================
[2026-08-31 11:06:41,960.960 INFO    ] Launching Daemon at Mon Aug 31 11:06:41 IST 2026
[2026-08-31 11:06:41,971.971 INFO    ] ================================================
[2026-08-31 11:06:42,535.535 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:06:42
[2026-08-31 11:06:43,116.116 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:06:43,383.383 INFO    ] Initializing speech engine...
[2026-08-31 11:06:43,403.403 INFO    ] 2026-08-31 11:06:43
[2026-08-31 11:06:43,666.666 INFO    ] 2026-08-31 11:06:43
[2026-08-31 11:06:43,702.702 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:06:43,895.895 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:06:43,908.908 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:06:44,064.064 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:06:44,073.073 INFO    ] time= 31/08/2026 11:06:44
[2026-08-31 11:06:44,078.078 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:06:44,086.086 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:06:44,230.230 INFO    ] No existing commands found in stream
[2026-08-31 11:06:49,255.255 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:06:49,258.258 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-08-31 11:06:52,389.389 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 11:06:52,391.391 INFO    ] Checking for system updates...
[2026-08-31 11:06:52,430.430 INFO    ] 200
[2026-08-31 11:06:52,433.433 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:06:52,486.486 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:06:52,488.488 INFO    ] No update needed
[2026-08-31 11:06:52,491.491 INFO    ] Checking for camera pi updates...
[2026-08-31 11:06:52,525.525 INFO    ] 200
[2026-08-31 11:06:52,527.527 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:06:52,568.568 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:06:52,650.650 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:06:52,653.653 INFO    ] No camera update needed
[2026-08-31 11:06:52,655.655 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:06:52,658.658 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:06:52,663.663 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:06:52,668.668 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:06:54,709.709 INFO    ] ================================================
[2026-08-31 11:06:54,724.724 INFO    ] Launching Daemon at Mon Aug 31 11:06:54 IST 2026
[2026-08-31 11:06:54,734.734 INFO    ] ================================================
[2026-08-31 11:06:55,364.364 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:06:55
[2026-08-31 11:06:56,014.014 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:06:56,313.313 INFO    ] Initializing speech engine...
[2026-08-31 11:06:56,320.320 INFO    ] 2026-08-31 11:06:56
[2026-08-31 11:06:56,606.606 INFO    ] 2026-08-31 11:06:56
[2026-08-31 11:06:56,651.651 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:06:56,881.881 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:06:56,902.902 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:06:57,111.111 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:06:57,148.148 INFO    ] time= 31/08/2026 11:06:57
[2026-08-31 11:06:57,154.154 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:06:57,173.173 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:06:57,290.290 INFO    ] No existing commands found in stream
[2026-08-31 11:07:02,310.310 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:07:02,314.314 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-08-31 11:07:06,847.847 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 11:07:06,850.850 INFO    ] Checking for system updates...
[2026-08-31 11:07:06,891.891 INFO    ] 200
[2026-08-31 11:07:06,893.893 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:07:06,946.946 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:07:06,949.949 INFO    ] No update needed
[2026-08-31 11:07:06,952.952 INFO    ] Checking for camera pi updates...
[2026-08-31 11:07:06,985.985 INFO    ] 200
[2026-08-31 11:07:06,987.987 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:07:07,031.031 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:07:07,145.145 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:07:07,148.148 INFO    ] No camera update needed
[2026-08-31 11:07:07,150.150 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:07:07,152.152 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:07:07,158.158 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:07:07,162.162 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:07:09,203.203 INFO    ] ================================================
[2026-08-31 11:07:09,219.219 INFO    ] Launching Daemon at Mon Aug 31 11:07:09 IST 2026
[2026-08-31 11:07:09,229.229 INFO    ] ================================================
[2026-08-31 11:07:09,835.835 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:07:09
[2026-08-31 11:07:10,421.421 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:07:10,668.668 INFO    ] Initializing speech engine...
[2026-08-31 11:07:10,682.682 INFO    ] 2026-08-31 11:07:10
[2026-08-31 11:07:10,947.947 INFO    ] 2026-08-31 11:07:10
[2026-08-31 11:07:10,983.983 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:07:11,240.240 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:07:11,249.249 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:07:11,383.383 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:07:11,420.420 INFO    ] time= 31/08/2026 11:07:11
[2026-08-31 11:07:11,485.485 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:07:11,520.520 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:07:11,665.665 INFO    ] No existing commands found in stream
[2026-08-31 11:07:16,679.679 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:07:16,682.682 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-08-31 11:07:19,889.889 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 11:07:19,892.892 INFO    ] Checking for system updates...
[2026-08-31 11:07:19,927.927 INFO    ] 200
[2026-08-31 11:07:19,930.930 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:07:19,989.989 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:07:19,991.991 INFO    ] No update needed
[2026-08-31 11:07:19,993.993 INFO    ] Checking for camera pi updates...
[2026-08-31 11:07:20,031.031 INFO    ] 200
[2026-08-31 11:07:20,033.033 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:07:20,074.074 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:07:20,187.187 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:07:20,190.190 INFO    ] No camera update needed
[2026-08-31 11:07:20,192.192 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:07:20,194.194 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:07:20,200.200 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:07:20,205.205 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:07:22,249.249 INFO    ] ================================================
[2026-08-31 11:07:22,265.265 INFO    ] Launching Daemon at Mon Aug 31 11:07:22 IST 2026
[2026-08-31 11:07:22,275.275 INFO    ] ================================================
[2026-08-31 11:07:22,917.917 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:07:22
[2026-08-31 11:07:23,587.587 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:07:23,898.898 INFO    ] Initializing speech engine...
[2026-08-31 11:07:23,907.907 INFO    ] 2026-08-31 11:07:23
[2026-08-31 11:07:24,190.190 INFO    ] 2026-08-31 11:07:24
[2026-08-31 11:07:24,244.244 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:07:24,478.478 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:07:24,489.489 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:07:24,684.684 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:07:24,735.735 INFO    ] time= 31/08/2026 11:07:24
[2026-08-31 11:07:24,749.749 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:07:24,752.752 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:07:24,840.840 INFO    ] No existing commands found in stream
[2026-08-31 11:07:29,852.852 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:07:29,855.855 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-08-31 11:07:30,408.408 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 11:07:30,411.411 INFO    ] Checking for system updates...
[2026-08-31 11:07:30,446.446 INFO    ] 200
[2026-08-31 11:07:30,449.449 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:07:30,502.502 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:07:30,504.504 INFO    ] No update needed
[2026-08-31 11:07:30,506.506 INFO    ] Checking for camera pi updates...
[2026-08-31 11:07:30,539.539 INFO    ] 200
[2026-08-31 11:07:30,542.542 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:07:30,583.583 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:07:30,718.718 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:07:30,720.720 INFO    ] No camera update needed
[2026-08-31 11:07:30,722.722 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:07:30,725.725 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:07:30,730.730 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:07:30,735.735 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:07:32,778.778 INFO    ] ================================================
[2026-08-31 11:07:32,792.792 INFO    ] Launching Daemon at Mon Aug 31 11:07:32 IST 2026
[2026-08-31 11:07:32,803.803 INFO    ] ================================================
[2026-08-31 11:07:33,380.380 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:07:33
[2026-08-31 11:07:33,976.976 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:07:34,251.251 INFO    ] Initializing speech engine...
[2026-08-31 11:07:34,257.257 INFO    ] 2026-08-31 11:07:34
[2026-08-31 11:07:34,512.512 INFO    ] 2026-08-31 11:07:34
[2026-08-31 11:07:34,571.571 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:07:34,819.819 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:07:34,826.826 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:07:35,015.015 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:07:35,061.061 INFO    ] time= 31/08/2026 11:07:35
[2026-08-31 11:07:35,067.067 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:07:35,086.086 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:07:35,213.213 INFO    ] No existing commands found in stream
[2026-08-31 11:07:40,228.228 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:07:40,231.231 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-08-31 11:07:43,151.151 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 11:07:43,153.153 INFO    ] Checking for system updates...
[2026-08-31 11:07:43,189.189 INFO    ] 200
[2026-08-31 11:07:43,191.191 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:07:43,245.245 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:07:43,247.247 INFO    ] No update needed
[2026-08-31 11:07:43,250.250 INFO    ] Checking for camera pi updates...
[2026-08-31 11:07:43,283.283 INFO    ] 200
[2026-08-31 11:07:43,286.286 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:07:43,330.330 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:07:43,410.410 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:07:43,413.413 INFO    ] No camera update needed
[2026-08-31 11:07:43,415.415 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:07:43,418.418 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:07:43,423.423 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:07:43,428.428 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:07:45,468.468 INFO    ] ================================================
[2026-08-31 11:07:45,483.483 INFO    ] Launching Daemon at Mon Aug 31 11:07:45 IST 2026
[2026-08-31 11:07:45,494.494 INFO    ] ================================================
[2026-08-31 11:07:46,097.097 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:07:46
[2026-08-31 11:07:46,682.682 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:07:46,953.953 INFO    ] Initializing speech engine...
[2026-08-31 11:07:46,962.962 INFO    ] 2026-08-31 11:07:46
[2026-08-31 11:07:47,219.219 INFO    ] 2026-08-31 11:07:47
[2026-08-31 11:07:47,249.249 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:07:47,498.498 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:07:47,501.501 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:07:47,699.699 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:07:47,759.759 INFO    ] time= 31/08/2026 11:07:47
[2026-08-31 11:07:47,766.766 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:07:47,784.784 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:07:47,894.894 INFO    ] No existing commands found in stream
[2026-08-31 11:07:52,921.921 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:07:52,923.923 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-08-31 11:07:54,824.824 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 11:07:54,826.826 INFO    ] Checking for system updates...
[2026-08-31 11:07:54,863.863 INFO    ] 200
[2026-08-31 11:07:54,865.865 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:07:54,932.932 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:07:54,934.934 INFO    ] No update needed
[2026-08-31 11:07:54,937.937 INFO    ] Checking for camera pi updates...
[2026-08-31 11:07:54,975.975 INFO    ] 200
[2026-08-31 11:07:54,978.978 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:07:55,022.022 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:07:55,149.149 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:07:55,152.152 INFO    ] No camera update needed
[2026-08-31 11:07:55,154.154 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:07:55,156.156 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:07:55,162.162 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:07:55,167.167 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:07:57,206.206 INFO    ] ================================================
[2026-08-31 11:07:57,221.221 INFO    ] Launching Daemon at Mon Aug 31 11:07:57 IST 2026
[2026-08-31 11:07:57,232.232 INFO    ] ================================================
[2026-08-31 11:07:57,797.797 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:07:57
[2026-08-31 11:07:58,381.381 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:07:58,650.650 INFO    ] Initializing speech engine...
[2026-08-31 11:07:58,659.659 INFO    ] 2026-08-31 11:07:58
[2026-08-31 11:07:58,905.905 INFO    ] 2026-08-31 11:07:58
[2026-08-31 11:07:58,940.940 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:07:59,197.197 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:07:59,202.202 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:07:59,431.431 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:07:59,458.458 INFO    ] time= 31/08/2026 11:07:59
[2026-08-31 11:07:59,464.464 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:07:59,482.482 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:07:59,613.613 INFO    ] No existing commands found in stream
[2026-08-31 11:08:04,628.628 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:08:04,631.631 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-08-31 11:08:06,244.244 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 11:08:06,247.247 INFO    ] Checking for system updates...
[2026-08-31 11:08:06,283.283 INFO    ] 200
[2026-08-31 11:08:06,286.286 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:08:06,337.337 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:08:06,340.340 INFO    ] No update needed
[2026-08-31 11:08:06,342.342 INFO    ] Checking for camera pi updates...
[2026-08-31 11:08:06,379.379 INFO    ] 200
[2026-08-31 11:08:06,382.382 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:08:06,426.426 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:08:06,533.533 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:08:06,535.535 INFO    ] No camera update needed
[2026-08-31 11:08:06,538.538 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:08:06,540.540 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:08:06,545.545 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:08:06,550.550 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:08:08,591.591 INFO    ] ================================================
[2026-08-31 11:08:08,606.606 INFO    ] Launching Daemon at Mon Aug 31 11:08:08 IST 2026
[2026-08-31 11:08:08,618.618 INFO    ] ================================================
[2026-08-31 11:08:09,242.242 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:08:09
[2026-08-31 11:08:09,900.900 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:08:10,177.177 INFO    ] Initializing speech engine...
[2026-08-31 11:08:10,183.183 INFO    ] 2026-08-31 11:08:10
[2026-08-31 11:08:10,435.435 INFO    ] 2026-08-31 11:08:10
[2026-08-31 11:08:10,495.495 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:08:10,718.718 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:08:10,729.729 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:08:10,878.878 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:08:10,934.934 INFO    ] time= 31/08/2026 11:08:10
[2026-08-31 11:08:11,000.000 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:08:11,017.017 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:08:11,173.173 INFO    ] No existing commands found in stream
[2026-08-31 11:08:16,206.206 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:08:16,209.209 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-08-31 11:08:20,734.734 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 11:08:20,737.737 INFO    ] Checking for system updates...
[2026-08-31 11:08:20,776.776 INFO    ] 200
[2026-08-31 11:08:20,779.779 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:08:20,842.842 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:08:20,845.845 INFO    ] No update needed
[2026-08-31 11:08:20,847.847 INFO    ] Checking for camera pi updates...
[2026-08-31 11:08:20,882.882 INFO    ] 200
[2026-08-31 11:08:20,885.885 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:08:20,926.926 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:08:21,174.174 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:08:21,178.178 INFO    ] No camera update needed
[2026-08-31 11:08:21,181.181 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:08:21,185.185 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:08:21,192.192 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:08:21,199.199 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:08:23,240.240 INFO    ] ================================================
[2026-08-31 11:08:23,255.255 INFO    ] Launching Daemon at Mon Aug 31 11:08:23 IST 2026
[2026-08-31 11:08:23,265.265 INFO    ] ================================================
[2026-08-31 11:08:23,845.845 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:08:23
[2026-08-31 11:08:24,443.443 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:08:24,719.719 INFO    ] Initializing speech engine...
[2026-08-31 11:08:24,725.725 INFO    ] 2026-08-31 11:08:24
[2026-08-31 11:08:24,988.988 INFO    ] 2026-08-31 11:08:24
[2026-08-31 11:08:25,042.042 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:08:25,289.289 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:08:25,297.297 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:08:25,487.487 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:08:25,530.530 INFO    ] time= 31/08/2026 11:08:25
[2026-08-31 11:08:25,536.536 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:08:25,554.554 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:08:25,683.683 INFO    ] No existing commands found in stream
[2026-08-31 11:08:30,697.697 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:08:30,700.700 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-08-31 11:08:33,817.817 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 11:08:33,820.820 INFO    ] Checking for system updates...
[2026-08-31 11:08:33,860.860 INFO    ] 200
[2026-08-31 11:08:33,863.863 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:08:33,922.922 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:08:33,924.924 INFO    ] No update needed
[2026-08-31 11:08:33,926.926 INFO    ] Checking for camera pi updates...
[2026-08-31 11:08:33,963.963 INFO    ] 200
[2026-08-31 11:08:33,966.966 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:08:34,008.008 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:08:34,090.090 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:08:34,093.093 INFO    ] No camera update needed
[2026-08-31 11:08:34,095.095 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:08:34,098.098 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:08:34,104.104 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:08:34,110.110 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:08:36,152.152 INFO    ] ================================================
[2026-08-31 11:08:36,167.167 INFO    ] Launching Daemon at Mon Aug 31 11:08:36 IST 2026
[2026-08-31 11:08:36,177.177 INFO    ] ================================================
[2026-08-31 11:08:36,785.785 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:08:36
[2026-08-31 11:08:37,451.451 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:08:37,759.759 INFO    ] Initializing speech engine...
[2026-08-31 11:08:37,770.770 INFO    ] 2026-08-31 11:08:37
[2026-08-31 11:08:38,053.053 INFO    ] 2026-08-31 11:08:38
[2026-08-31 11:08:38,164.164 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:08:38,376.376 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:08:38,386.386 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:08:38,578.578 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:08:38,597.597 INFO    ] time= 31/08/2026 11:08:38
[2026-08-31 11:08:38,627.627 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:08:38,636.636 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:08:38,795.795 INFO    ] No existing commands found in stream
[2026-08-31 11:08:43,820.820 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:08:43,823.823 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-08-31 11:08:47,265.265 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 11:08:47,268.268 INFO    ] Checking for system updates...
[2026-08-31 11:08:47,304.304 INFO    ] 200
[2026-08-31 11:08:47,307.307 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:08:47,362.362 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:08:47,365.365 INFO    ] No update needed
[2026-08-31 11:08:47,368.368 INFO    ] Checking for camera pi updates...
[2026-08-31 11:08:47,401.401 INFO    ] 200
[2026-08-31 11:08:47,404.404 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:08:47,444.444 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:08:47,548.548 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:08:47,550.550 INFO    ] No camera update needed
[2026-08-31 11:08:47,553.553 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:08:47,555.555 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:08:47,560.560 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:08:47,565.565 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:08:49,605.605 INFO    ] ================================================
[2026-08-31 11:08:49,620.620 INFO    ] Launching Daemon at Mon Aug 31 11:08:49 IST 2026
[2026-08-31 11:08:49,631.631 INFO    ] ================================================
[2026-08-31 11:08:50,213.213 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:08:50
[2026-08-31 11:08:50,809.809 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:08:51,080.080 INFO    ] Initializing speech engine...
[2026-08-31 11:08:51,090.090 INFO    ] 2026-08-31 11:08:51
[2026-08-31 11:08:51,351.351 INFO    ] 2026-08-31 11:08:51
[2026-08-31 11:08:51,404.404 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:08:51,650.650 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:08:51,658.658 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:08:51,844.844 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:08:51,889.889 INFO    ] time= 31/08/2026 11:08:51
[2026-08-31 11:08:51,896.896 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:08:51,914.914 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:08:52,045.045 INFO    ] No existing commands found in stream
[2026-08-31 11:08:57,063.063 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:08:57,067.067 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-08-31 11:08:58,098.098 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 11:08:58,101.101 INFO    ] Checking for system updates...
[2026-08-31 11:08:58,137.137 INFO    ] 200
[2026-08-31 11:08:58,140.140 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:08:58,199.199 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:08:58,201.201 INFO    ] No update needed
[2026-08-31 11:08:58,204.204 INFO    ] Checking for camera pi updates...
[2026-08-31 11:08:58,241.241 INFO    ] 200
[2026-08-31 11:08:58,243.243 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:08:58,288.288 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:08:58,372.372 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:08:58,375.375 INFO    ] No camera update needed
[2026-08-31 11:08:58,377.377 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:08:58,380.380 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:08:58,386.386 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:08:58,392.392 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:09:00,433.433 INFO    ] ================================================
[2026-08-31 11:09:00,449.449 INFO    ] Launching Daemon at Mon Aug 31 11:09:00 IST 2026
[2026-08-31 11:09:00,460.460 INFO    ] ================================================
[2026-08-31 11:09:01,110.110 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:09:01
[2026-08-31 11:09:01,964.964 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:09:02,282.282 INFO    ] Initializing speech engine...
[2026-08-31 11:09:02,308.308 INFO    ] 2026-08-31 11:09:02
[2026-08-31 11:09:02,582.582 INFO    ] 2026-08-31 11:09:02
[2026-08-31 11:09:02,623.623 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:09:02,857.857 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:09:02,895.895 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:09:03,066.066 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:09:03,119.119 INFO    ] time= 31/08/2026 11:09:03
[2026-08-31 11:09:03,184.184 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:09:03,216.216 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:09:03,319.319 INFO    ] No existing commands found in stream
[2026-08-31 11:09:08,353.353 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:09:08,356.356 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-08-31 11:09:11,448.448 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 11:09:11,450.450 INFO    ] Checking for system updates...
[2026-08-31 11:09:11,491.491 INFO    ] 200
[2026-08-31 11:09:11,493.493 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:09:11,553.553 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:09:11,556.556 INFO    ] No update needed
[2026-08-31 11:09:11,558.558 INFO    ] Checking for camera pi updates...
[2026-08-31 11:09:11,593.593 INFO    ] 200
[2026-08-31 11:09:11,595.595 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:09:11,639.639 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:09:11,771.771 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:09:11,773.773 INFO    ] No camera update needed
[2026-08-31 11:09:11,775.775 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:09:11,778.778 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:09:11,783.783 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:09:11,788.788 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:09:13,827.827 INFO    ] ================================================
[2026-08-31 11:09:13,842.842 INFO    ] Launching Daemon at Mon Aug 31 11:09:13 IST 2026
[2026-08-31 11:09:13,852.852 INFO    ] ================================================
[2026-08-31 11:09:14,443.443 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:09:14
[2026-08-31 11:09:15,055.055 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:09:15,337.337 INFO    ] Initializing speech engine...
[2026-08-31 11:09:15,347.347 INFO    ] 2026-08-31 11:09:15
[2026-08-31 11:09:15,601.601 INFO    ] 2026-08-31 11:09:15
[2026-08-31 11:09:15,638.638 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:09:15,881.881 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:09:15,902.902 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:09:16,102.102 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:09:16,160.160 INFO    ] time= 31/08/2026 11:09:16
[2026-08-31 11:09:16,171.171 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:09:16,189.189 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:09:16,317.317 INFO    ] No existing commands found in stream
[2026-08-31 11:09:21,336.336 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:09:21,339.339 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-08-31 11:09:21,949.949 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 11:09:21,951.951 INFO    ] Checking for system updates...
[2026-08-31 11:09:21,988.988 INFO    ] 200
[2026-08-31 11:09:21,991.991 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:09:22,045.045 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:09:22,048.048 INFO    ] No update needed
[2026-08-31 11:09:22,051.051 INFO    ] Checking for camera pi updates...
[2026-08-31 11:09:22,087.087 INFO    ] 200
[2026-08-31 11:09:22,090.090 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:09:22,142.142 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:09:22,280.280 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:09:22,283.283 INFO    ] No camera update needed
[2026-08-31 11:09:22,285.285 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:09:22,288.288 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:09:22,293.293 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:09:22,298.298 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:09:24,342.342 INFO    ] ================================================
[2026-08-31 11:09:24,358.358 INFO    ] Launching Daemon at Mon Aug 31 11:09:24 IST 2026
[2026-08-31 11:09:24,369.369 INFO    ] ================================================
[2026-08-31 11:09:24,962.962 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:09:24
[2026-08-31 11:09:25,575.575 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:09:25,851.851 INFO    ] Initializing speech engine...
[2026-08-31 11:09:25,859.859 INFO    ] 2026-08-31 11:09:25
[2026-08-31 11:09:26,117.117 INFO    ] 2026-08-31 11:09:26
[2026-08-31 11:09:26,170.170 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:09:26,341.341 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:09:26,353.353 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:09:26,729.729 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:09:26,750.750 INFO    ] time= 31/08/2026 11:09:26
[2026-08-31 11:09:26,754.754 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:09:26,774.774 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:09:27,041.041 INFO    ] No existing commands found in stream
[2026-08-31 11:09:32,050.050 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:09:32,053.053 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-08-31 11:09:32,811.811 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 11:09:32,814.814 INFO    ] Checking for system updates...
[2026-08-31 11:09:32,854.854 INFO    ] 200
[2026-08-31 11:09:32,856.856 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:09:32,916.916 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:09:32,918.918 INFO    ] No update needed
[2026-08-31 11:09:32,921.921 INFO    ] Checking for camera pi updates...
[2026-08-31 11:09:32,972.972 INFO    ] 200
[2026-08-31 11:09:32,975.975 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:09:33,023.023 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:09:33,124.124 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:09:33,127.127 INFO    ] No camera update needed
[2026-08-31 11:09:33,130.130 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:09:33,132.132 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:09:33,137.137 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:09:33,142.142 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:09:35,181.181 INFO    ] ================================================
[2026-08-31 11:09:35,197.197 INFO    ] Launching Daemon at Mon Aug 31 11:09:35 IST 2026
[2026-08-31 11:09:35,208.208 INFO    ] ================================================
[2026-08-31 11:09:35,801.801 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:09:35
[2026-08-31 11:09:36,383.383 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:09:36,639.639 INFO    ] Initializing speech engine...
[2026-08-31 11:09:36,647.647 INFO    ] 2026-08-31 11:09:36
[2026-08-31 11:09:36,944.944 INFO    ] 2026-08-31 11:09:36
[2026-08-31 11:09:36,983.983 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:09:37,214.214 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:09:37,274.274 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:09:37,528.528 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:09:37,568.568 INFO    ] time= 31/08/2026 11:09:37
[2026-08-31 11:09:37,594.594 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:09:37,611.611 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:09:37,769.769 INFO    ] No existing commands found in stream
[2026-08-31 11:09:42,794.794 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:09:42,796.796 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-08-31 11:09:43,853.853 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 11:09:43,856.856 INFO    ] Checking for system updates...
[2026-08-31 11:09:43,896.896 INFO    ] 200
[2026-08-31 11:09:43,899.899 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:09:43,952.952 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:09:43,955.955 INFO    ] No update needed
[2026-08-31 11:09:43,957.957 INFO    ] Checking for camera pi updates...
[2026-08-31 11:09:43,990.990 INFO    ] 200
[2026-08-31 11:09:43,993.993 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:09:44,033.033 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:09:44,138.138 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:09:44,140.140 INFO    ] No camera update needed
[2026-08-31 11:09:44,143.143 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:09:44,145.145 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:09:44,150.150 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:09:44,155.155 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:09:46,195.195 INFO    ] ================================================
[2026-08-31 11:09:46,211.211 INFO    ] Launching Daemon at Mon Aug 31 11:09:46 IST 2026
[2026-08-31 11:09:46,222.222 INFO    ] ================================================
[2026-08-31 11:09:46,884.884 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:09:46
[2026-08-31 11:09:47,567.567 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:09:47,880.880 INFO    ] Initializing speech engine...
[2026-08-31 11:09:47,893.893 INFO    ] 2026-08-31 11:09:47
[2026-08-31 11:09:48,212.212 INFO    ] 2026-08-31 11:09:48
[2026-08-31 11:09:48,296.296 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:09:48,513.513 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:09:48,521.521 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:09:48,745.745 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:09:48,772.772 INFO    ] time= 31/08/2026 11:09:48
[2026-08-31 11:09:48,781.781 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:09:48,790.790 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:09:48,940.940 INFO    ] No existing commands found in stream
[2026-08-31 11:09:53,966.966 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:09:53,970.970 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-08-31 11:09:58,402.402 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 11:09:58,405.405 INFO    ] Checking for system updates...
[2026-08-31 11:09:58,441.441 INFO    ] 200
[2026-08-31 11:09:58,443.443 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:09:58,496.496 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:09:58,499.499 INFO    ] No update needed
[2026-08-31 11:09:58,501.501 INFO    ] Checking for camera pi updates...
[2026-08-31 11:09:58,539.539 INFO    ] 200
[2026-08-31 11:09:58,542.542 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:09:58,582.582 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:09:58,664.664 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:09:58,666.666 INFO    ] No camera update needed
[2026-08-31 11:09:58,669.669 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:09:58,671.671 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:09:58,677.677 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:09:58,682.682 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:10:00,723.723 INFO    ] ================================================
[2026-08-31 11:10:00,738.738 INFO    ] Launching Daemon at Mon Aug 31 11:10:00 IST 2026
[2026-08-31 11:10:00,750.750 INFO    ] ================================================
[2026-08-31 11:10:01,322.322 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:10:01
[2026-08-31 11:10:02,020.020 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:10:02,852.852 INFO    ] Initializing speech engine...
[2026-08-31 11:10:02,856.856 INFO    ] 2026-08-31 11:10:02
[2026-08-31 11:10:03,288.288 INFO    ] 2026-08-31 11:10:03
[2026-08-31 11:10:03,363.363 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:10:03,595.595 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:10:03,632.632 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:10:03,864.864 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:10:03,881.881 INFO    ] time= 31/08/2026 11:10:03
[2026-08-31 11:10:03,904.904 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:10:03,928.928 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:10:04,052.052 INFO    ] No existing commands found in stream
[2026-08-31 11:10:09,070.070 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:10:09,073.073 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-08-31 11:10:11,503.503 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 11:10:11,505.505 INFO    ] Checking for system updates...
[2026-08-31 11:10:11,541.541 INFO    ] 200
[2026-08-31 11:10:11,543.543 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:10:11,616.616 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:10:11,618.618 INFO    ] No update needed
[2026-08-31 11:10:11,621.621 INFO    ] Checking for camera pi updates...
[2026-08-31 11:10:11,659.659 INFO    ] 200
[2026-08-31 11:10:11,661.661 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:10:11,703.703 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:10:11,808.808 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:10:11,811.811 INFO    ] No camera update needed
[2026-08-31 11:10:11,813.813 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:10:11,815.815 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:10:11,821.821 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:10:11,825.825 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:10:13,866.866 INFO    ] ================================================
[2026-08-31 11:10:13,882.882 INFO    ] Launching Daemon at Mon Aug 31 11:10:13 IST 2026
[2026-08-31 11:10:13,893.893 INFO    ] ================================================
[2026-08-31 11:10:14,475.475 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:10:14
[2026-08-31 11:10:15,074.074 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:10:15,352.352 INFO    ] Initializing speech engine...
[2026-08-31 11:10:15,358.358 INFO    ] 2026-08-31 11:10:15
[2026-08-31 11:10:15,621.621 INFO    ] 2026-08-31 11:10:15
[2026-08-31 11:10:15,650.650 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:10:16,145.145 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:10:16,163.163 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:10:16,541.541 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:10:16,587.587 INFO    ] time= 31/08/2026 11:10:16
[2026-08-31 11:10:16,590.590 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:10:16,592.592 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:10:16,834.834 INFO    ] No existing commands found in stream
[2026-08-31 11:10:21,843.843 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:10:21,846.846 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-08-31 11:10:25,705.705 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 11:10:25,707.707 INFO    ] Checking for system updates...
[2026-08-31 11:10:25,747.747 INFO    ] 200
[2026-08-31 11:10:25,750.750 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:10:25,810.810 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:10:25,812.812 INFO    ] No update needed
[2026-08-31 11:10:25,814.814 INFO    ] Checking for camera pi updates...
[2026-08-31 11:10:25,848.848 INFO    ] 200
[2026-08-31 11:10:25,850.850 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:10:25,891.891 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:10:26,075.075 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:10:26,077.077 INFO    ] No camera update needed
[2026-08-31 11:10:26,080.080 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:10:26,082.082 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:10:26,088.088 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:10:26,093.093 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:10:28,137.137 INFO    ] ================================================
[2026-08-31 11:10:28,152.152 INFO    ] Launching Daemon at Mon Aug 31 11:10:28 IST 2026
[2026-08-31 11:10:28,163.163 INFO    ] ================================================
[2026-08-31 11:10:28,747.747 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:10:28
[2026-08-31 11:10:29,346.346 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:10:29,619.619 INFO    ] Initializing speech engine...
[2026-08-31 11:10:29,628.628 INFO    ] 2026-08-31 11:10:29
[2026-08-31 11:10:29,877.877 INFO    ] 2026-08-31 11:10:29
[2026-08-31 11:10:29,912.912 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:10:30,170.170 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:10:30,175.175 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:10:30,308.308 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:10:30,362.362 INFO    ] time= 31/08/2026 11:10:30
[2026-08-31 11:10:30,427.427 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:10:30,441.441 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:10:30,604.604 INFO    ] No existing commands found in stream
[2026-08-31 11:10:35,635.635 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:10:35,638.638 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-08-31 11:10:38,743.743 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 11:10:38,745.745 INFO    ] Checking for system updates...
[2026-08-31 11:10:38,781.781 INFO    ] 200
[2026-08-31 11:10:38,783.783 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:10:38,843.843 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:10:38,846.846 INFO    ] No update needed
[2026-08-31 11:10:38,848.848 INFO    ] Checking for camera pi updates...
[2026-08-31 11:10:38,886.886 INFO    ] 200
[2026-08-31 11:10:38,889.889 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:10:38,931.931 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:10:39,032.032 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:10:39,034.034 INFO    ] No camera update needed
[2026-08-31 11:10:39,036.036 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:10:39,039.039 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:10:39,044.044 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:10:39,050.050 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:10:41,092.092 INFO    ] ================================================
[2026-08-31 11:10:41,107.107 INFO    ] Launching Daemon at Mon Aug 31 11:10:41 IST 2026
[2026-08-31 11:10:41,118.118 INFO    ] ================================================
[2026-08-31 11:10:41,684.684 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:10:41
[2026-08-31 11:10:42,369.369 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:10:42,683.683 INFO    ] Initializing speech engine...
[2026-08-31 11:10:42,688.688 INFO    ] 2026-08-31 11:10:42
[2026-08-31 11:10:43,001.001 INFO    ] 2026-08-31 11:10:42
[2026-08-31 11:10:43,086.086 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:10:43,249.249 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:10:43,264.264 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:10:43,498.498 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:10:43,506.506 INFO    ] time= 31/08/2026 11:10:43
[2026-08-31 11:10:43,524.524 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:10:43,547.547 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:10:43,670.670 INFO    ] No existing commands found in stream
[2026-08-31 11:10:48,705.705 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:10:48,708.708 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-08-31 11:10:52,527.527 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 11:10:52,530.530 INFO    ] Checking for system updates...
[2026-08-31 11:10:52,566.566 INFO    ] 200
[2026-08-31 11:10:52,569.569 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:10:52,621.621 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:10:52,623.623 INFO    ] No update needed
[2026-08-31 11:10:52,626.626 INFO    ] Checking for camera pi updates...
[2026-08-31 11:10:52,664.664 INFO    ] 200
[2026-08-31 11:10:52,666.666 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:10:52,712.712 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:10:52,820.820 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:10:52,822.822 INFO    ] No camera update needed
[2026-08-31 11:10:52,825.825 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:10:52,827.827 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:10:52,832.832 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:10:52,837.837 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:10:54,878.878 INFO    ] ================================================
[2026-08-31 11:10:54,892.892 INFO    ] Launching Daemon at Mon Aug 31 11:10:54 IST 2026
[2026-08-31 11:10:54,903.903 INFO    ] ================================================
[2026-08-31 11:10:55,487.487 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:10:55
[2026-08-31 11:10:56,087.087 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:10:56,361.361 INFO    ] Initializing speech engine...
[2026-08-31 11:10:56,372.372 INFO    ] 2026-08-31 11:10:56
[2026-08-31 11:10:56,620.620 INFO    ] 2026-08-31 11:10:56
[2026-08-31 11:10:56,655.655 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:10:56,965.965 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:10:56,977.977 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:10:57,177.177 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:10:57,185.185 INFO    ] time= 31/08/2026 11:10:57
[2026-08-31 11:10:57,206.206 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:10:57,232.232 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:10:57,357.357 INFO    ] No existing commands found in stream
[2026-08-31 11:11:02,393.393 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:11:02,396.396 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-08-31 11:11:05,170.170 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 11:11:05,172.172 INFO    ] Checking for system updates...
[2026-08-31 11:11:05,212.212 INFO    ] 200
[2026-08-31 11:11:05,215.215 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:11:05,267.267 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:11:05,270.270 INFO    ] No update needed
[2026-08-31 11:11:05,272.272 INFO    ] Checking for camera pi updates...
[2026-08-31 11:11:05,305.305 INFO    ] 200
[2026-08-31 11:11:05,308.308 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:11:05,354.354 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:11:05,442.442 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:11:05,445.445 INFO    ] No camera update needed
[2026-08-31 11:11:05,447.447 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:11:05,449.449 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:11:05,455.455 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:11:05,460.460 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:11:07,502.502 INFO    ] ================================================
[2026-08-31 11:11:07,518.518 INFO    ] Launching Daemon at Mon Aug 31 11:11:07 IST 2026
[2026-08-31 11:11:07,528.528 INFO    ] ================================================
[2026-08-31 11:11:08,113.113 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:11:08
[2026-08-31 11:11:08,745.745 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:11:09,050.050 INFO    ] Initializing speech engine...
[2026-08-31 11:11:09,065.065 INFO    ] 2026-08-31 11:11:09
[2026-08-31 11:11:09,348.348 INFO    ] 2026-08-31 11:11:09
[2026-08-31 11:11:09,390.390 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:11:09,640.640 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:11:09,645.645 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:11:09,855.855 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:11:09,882.882 INFO    ] time= 31/08/2026 11:11:09
[2026-08-31 11:11:09,888.888 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:11:09,906.906 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:11:10,039.039 INFO    ] No existing commands found in stream
[2026-08-31 11:11:15,057.057 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:11:15,060.060 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-08-31 11:11:18,911.911 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 11:11:18,914.914 INFO    ] Checking for system updates...
[2026-08-31 11:11:18,954.954 INFO    ] 200
[2026-08-31 11:11:18,956.956 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:11:19,016.016 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:11:19,018.018 INFO    ] No update needed
[2026-08-31 11:11:19,021.021 INFO    ] Checking for camera pi updates...
[2026-08-31 11:11:19,059.059 INFO    ] 200
[2026-08-31 11:11:19,061.061 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:11:19,101.101 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:11:19,222.222 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:11:19,224.224 INFO    ] No camera update needed
[2026-08-31 11:11:19,226.226 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:11:19,229.229 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:11:19,234.234 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:11:19,240.240 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:11:21,283.283 INFO    ] ================================================
[2026-08-31 11:11:21,298.298 INFO    ] Launching Daemon at Mon Aug 31 11:11:21 IST 2026
[2026-08-31 11:11:21,308.308 INFO    ] ================================================
[2026-08-31 11:11:21,872.872 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:11:21
[2026-08-31 11:11:22,455.455 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:11:22,723.723 INFO    ] Initializing speech engine...
[2026-08-31 11:11:22,731.731 INFO    ] 2026-08-31 11:11:22
[2026-08-31 11:11:22,982.982 INFO    ] 2026-08-31 11:11:22
[2026-08-31 11:11:23,016.016 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:11:23,303.303 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:11:23,308.308 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:11:23,529.529 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:11:23,546.546 INFO    ] time= 31/08/2026 11:11:23
[2026-08-31 11:11:23,552.552 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:11:23,571.571 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:11:23,694.694 INFO    ] No existing commands found in stream
[2026-08-31 11:11:28,713.713 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:11:28,716.716 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-08-31 11:11:31,842.842 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 11:11:31,845.845 INFO    ] Checking for system updates...
[2026-08-31 11:11:31,883.883 INFO    ] 200
[2026-08-31 11:11:31,886.886 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:11:31,979.979 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:11:31,982.982 INFO    ] No update needed
[2026-08-31 11:11:31,986.986 INFO    ] Checking for camera pi updates...
[2026-08-31 11:11:32,028.028 INFO    ] 200
[2026-08-31 11:11:32,031.031 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:11:32,075.075 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:11:32,195.195 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:11:32,198.198 INFO    ] No camera update needed
[2026-08-31 11:11:32,200.200 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:11:32,203.203 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:11:32,209.209 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:11:32,215.215 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:11:34,256.256 INFO    ] ================================================
[2026-08-31 11:11:34,272.272 INFO    ] Launching Daemon at Mon Aug 31 11:11:34 IST 2026
[2026-08-31 11:11:34,284.284 INFO    ] ================================================
[2026-08-31 11:11:34,918.918 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:11:34
[2026-08-31 11:11:35,591.591 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:11:35,889.889 INFO    ] Initializing speech engine...
[2026-08-31 11:11:35,900.900 INFO    ] 2026-08-31 11:11:35
[2026-08-31 11:11:36,178.178 INFO    ] 2026-08-31 11:11:36
[2026-08-31 11:11:36,235.235 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:11:36,457.457 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:11:36,467.467 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:11:36,678.678 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:11:36,725.725 INFO    ] time= 31/08/2026 11:11:36
[2026-08-31 11:11:36,732.732 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:11:36,759.759 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:11:36,883.883 INFO    ] No existing commands found in stream
[2026-08-31 11:11:41,903.903 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:11:41,906.906 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-08-31 11:11:44,869.869 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 11:11:44,871.871 INFO    ] Checking for system updates...
[2026-08-31 11:11:44,911.911 INFO    ] 200
[2026-08-31 11:11:44,914.914 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:11:44,973.973 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:11:44,975.975 INFO    ] No update needed
[2026-08-31 11:11:44,978.978 INFO    ] Checking for camera pi updates...
[2026-08-31 11:11:45,011.011 INFO    ] 200
[2026-08-31 11:11:45,014.014 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:11:45,054.054 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:11:45,180.180 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:11:45,182.182 INFO    ] No camera update needed
[2026-08-31 11:11:45,184.184 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:11:45,187.187 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:11:45,192.192 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:11:45,197.197 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:11:47,237.237 INFO    ] ================================================
[2026-08-31 11:11:47,252.252 INFO    ] Launching Daemon at Mon Aug 31 11:11:47 IST 2026
[2026-08-31 11:11:47,263.263 INFO    ] ================================================
[2026-08-31 11:11:47,829.829 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:11:47
[2026-08-31 11:11:48,415.415 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:11:48,685.685 INFO    ] Initializing speech engine...
[2026-08-31 11:11:48,694.694 INFO    ] 2026-08-31 11:11:48
[2026-08-31 11:11:48,948.948 INFO    ] 2026-08-31 11:11:48
[2026-08-31 11:11:48,984.984 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:11:49,185.185 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:11:49,198.198 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:11:49,366.366 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:11:49,372.372 INFO    ] time= 31/08/2026 11:11:49
[2026-08-31 11:11:49,378.378 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:11:49,428.428 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:11:49,566.566 INFO    ] No existing commands found in stream
[2026-08-31 11:11:54,596.596 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:11:54,599.599 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-08-31 11:11:56,707.707 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 11:11:56,710.710 INFO    ] Checking for system updates...
[2026-08-31 11:11:56,745.745 INFO    ] 200
[2026-08-31 11:11:56,748.748 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:11:56,807.807 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:11:56,810.810 INFO    ] No update needed
[2026-08-31 11:11:56,812.812 INFO    ] Checking for camera pi updates...
[2026-08-31 11:11:56,849.849 INFO    ] 200
[2026-08-31 11:11:56,852.852 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:11:56,898.898 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:11:57,000.000 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:11:57,002.002 INFO    ] No camera update needed
[2026-08-31 11:11:57,005.005 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:11:57,007.007 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:11:57,018.018 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:11:57,023.023 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:11:59,064.064 INFO    ] ================================================
[2026-08-31 11:11:59,079.079 INFO    ] Launching Daemon at Mon Aug 31 11:11:59 IST 2026
[2026-08-31 11:11:59,090.090 INFO    ] ================================================
[2026-08-31 11:11:59,674.674 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:11:59
[2026-08-31 11:12:00,263.263 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:12:00,518.518 INFO    ] Initializing speech engine...
[2026-08-31 11:12:00,526.526 INFO    ] 2026-08-31 11:12:00
[2026-08-31 11:12:00,821.821 INFO    ] 2026-08-31 11:12:00
[2026-08-31 11:12:00,846.846 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:12:01,056.056 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:12:01,070.070 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:12:01,213.213 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:12:01,221.221 INFO    ] time= 31/08/2026 11:12:01
[2026-08-31 11:12:01,257.257 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:12:01,287.287 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:12:01,424.424 INFO    ] No existing commands found in stream
[2026-08-31 11:12:06,445.445 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:12:06,448.448 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-08-31 11:12:09,149.149 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 11:12:09,151.151 INFO    ] Checking for system updates...
[2026-08-31 11:12:09,192.192 INFO    ] 200
[2026-08-31 11:12:09,194.194 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:12:09,255.255 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:12:09,257.257 INFO    ] No update needed
[2026-08-31 11:12:09,260.260 INFO    ] Checking for camera pi updates...
[2026-08-31 11:12:09,294.294 INFO    ] 200
[2026-08-31 11:12:09,296.296 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:12:09,343.343 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:12:09,460.460 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:12:09,462.462 INFO    ] No camera update needed
[2026-08-31 11:12:09,465.465 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:12:09,467.467 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:12:09,472.472 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:12:09,478.478 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:12:11,519.519 INFO    ] ================================================
[2026-08-31 11:12:11,534.534 INFO    ] Launching Daemon at Mon Aug 31 11:12:11 IST 2026
[2026-08-31 11:12:11,545.545 INFO    ] ================================================
[2026-08-31 11:12:12,117.117 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:12:12
[2026-08-31 11:12:12,699.699 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:12:12,966.966 INFO    ] Initializing speech engine...
[2026-08-31 11:12:12,975.975 INFO    ] 2026-08-31 11:12:12
[2026-08-31 11:12:13,222.222 INFO    ] 2026-08-31 11:12:13
[2026-08-31 11:12:13,256.256 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:12:13,495.495 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:12:13,511.511 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:12:13,651.651 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:12:13,715.715 INFO    ] time= 31/08/2026 11:12:13
[2026-08-31 11:12:13,775.775 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:12:13,784.784 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:12:13,914.914 INFO    ] No existing commands found in stream
[2026-08-31 11:12:18,938.938 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:12:18,941.941 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-08-31 11:12:22,297.297 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 11:12:22,300.300 INFO    ] Checking for system updates...
[2026-08-31 11:12:22,343.343 INFO    ] 200
[2026-08-31 11:12:22,346.346 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:12:22,402.402 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:12:22,404.404 INFO    ] No update needed
[2026-08-31 11:12:22,407.407 INFO    ] Checking for camera pi updates...
[2026-08-31 11:12:22,441.441 INFO    ] 200
[2026-08-31 11:12:22,443.443 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:12:22,489.489 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:12:22,597.597 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:12:22,600.600 INFO    ] No camera update needed
[2026-08-31 11:12:22,602.602 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:12:22,604.604 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:12:22,610.610 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:12:22,615.615 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:12:24,657.657 INFO    ] ================================================
[2026-08-31 11:12:24,673.673 INFO    ] Launching Daemon at Mon Aug 31 11:12:24 IST 2026
[2026-08-31 11:12:24,685.685 INFO    ] ================================================
[2026-08-31 11:12:25,263.263 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:12:25
[2026-08-31 11:12:25,849.849 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:12:26,094.094 INFO    ] Initializing speech engine...
[2026-08-31 11:12:26,109.109 INFO    ] 2026-08-31 11:12:26
[2026-08-31 11:12:26,372.372 INFO    ] 2026-08-31 11:12:26
[2026-08-31 11:12:26,407.407 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:12:26,665.665 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:12:26,671.671 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:12:26,903.903 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:12:26,928.928 INFO    ] time= 31/08/2026 11:12:26
[2026-08-31 11:12:26,943.943 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:12:26,951.951 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:12:27,099.099 INFO    ] No existing commands found in stream
[2026-08-31 11:12:32,129.129 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:12:32,133.133 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-08-31 11:12:35,710.710 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 11:12:35,713.713 INFO    ] Checking for system updates...
[2026-08-31 11:12:35,764.764 INFO    ] 200
[2026-08-31 11:12:35,767.767 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:12:35,829.829 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:12:35,831.831 INFO    ] No update needed
[2026-08-31 11:12:35,834.834 INFO    ] Checking for camera pi updates...
[2026-08-31 11:12:35,872.872 INFO    ] 200
[2026-08-31 11:12:35,874.874 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:12:35,915.915 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:12:36,049.049 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:12:36,052.052 INFO    ] No camera update needed
[2026-08-31 11:12:36,054.054 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:12:36,056.056 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:12:36,062.062 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:12:36,066.066 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:12:38,108.108 INFO    ] ================================================
[2026-08-31 11:12:38,124.124 INFO    ] Launching Daemon at Mon Aug 31 11:12:38 IST 2026
[2026-08-31 11:12:38,135.135 INFO    ] ================================================
[2026-08-31 11:12:38,788.788 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:12:38
[2026-08-31 11:12:39,372.372 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:12:39,641.641 INFO    ] Initializing speech engine...
[2026-08-31 11:12:39,650.650 INFO    ] 2026-08-31 11:12:39
[2026-08-31 11:12:39,900.900 INFO    ] 2026-08-31 11:12:39
[2026-08-31 11:12:39,935.935 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:12:40,186.186 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:12:40,195.195 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:12:40,431.431 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:12:40,457.457 INFO    ] time= 31/08/2026 11:12:40
[2026-08-31 11:12:40,472.472 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:12:40,481.481 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:12:40,611.611 INFO    ] No existing commands found in stream
[2026-08-31 11:12:45,638.638 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:12:45,641.641 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-08-31 11:12:48,162.162 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 11:12:48,164.164 INFO    ] Checking for system updates...
[2026-08-31 11:12:48,201.201 INFO    ] 200
[2026-08-31 11:12:48,203.203 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:12:48,266.266 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:12:48,269.269 INFO    ] No update needed
[2026-08-31 11:12:48,271.271 INFO    ] Checking for camera pi updates...
[2026-08-31 11:12:48,309.309 INFO    ] 200
[2026-08-31 11:12:48,312.312 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:12:48,352.352 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:12:48,434.434 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:12:48,437.437 INFO    ] No camera update needed
[2026-08-31 11:12:48,439.439 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:12:48,442.442 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:12:48,447.447 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:12:48,452.452 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:12:50,494.494 INFO    ] ================================================
[2026-08-31 11:12:50,510.510 INFO    ] Launching Daemon at Mon Aug 31 11:12:50 IST 2026
[2026-08-31 11:12:50,521.521 INFO    ] ================================================
[2026-08-31 11:12:51,091.091 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:12:51
[2026-08-31 11:12:51,710.710 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:12:52,002.002 INFO    ] Initializing speech engine...
[2026-08-31 11:12:52,010.010 INFO    ] 2026-08-31 11:12:52
[2026-08-31 11:12:52,256.256 INFO    ] 2026-08-31 11:12:52
[2026-08-31 11:12:52,304.304 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:12:52,577.577 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:12:52,596.596 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:12:52,734.734 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:12:52,737.737 INFO    ] time= 31/08/2026 11:12:52
[2026-08-31 11:12:52,786.786 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:12:52,823.823 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:12:52,937.937 INFO    ] No existing commands found in stream
[2026-08-31 11:12:57,959.959 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:12:57,962.962 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-08-31 11:12:58,644.644 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 11:12:58,647.647 INFO    ] Checking for system updates...
[2026-08-31 11:12:58,690.690 INFO    ] 200
[2026-08-31 11:12:58,693.693 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:12:58,748.748 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:12:58,750.750 INFO    ] No update needed
[2026-08-31 11:12:58,753.753 INFO    ] Checking for camera pi updates...
[2026-08-31 11:12:58,788.788 INFO    ] 200
[2026-08-31 11:12:58,791.791 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:12:58,833.833 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:12:58,934.934 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:12:58,937.937 INFO    ] No camera update needed
[2026-08-31 11:12:58,940.940 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:12:58,942.942 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:12:58,949.949 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:12:58,954.954 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:13:01,997.997 INFO    ] ================================================
[2026-08-31 11:13:01,013.013 INFO    ] Launching Daemon at Mon Aug 31 11:13:01 IST 2026
[2026-08-31 11:13:01,024.024 INFO    ] ================================================
[2026-08-31 11:13:01,755.755 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:13:01
[2026-08-31 11:13:02,555.555 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:13:02,921.921 INFO    ] Initializing speech engine...
[2026-08-31 11:13:02,926.926 INFO    ] 2026-08-31 11:13:02
[2026-08-31 11:13:03,211.211 INFO    ] 2026-08-31 11:13:03
[2026-08-31 11:13:03,246.246 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:13:03,520.520 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:13:03,523.523 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:13:03,734.734 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:13:03,772.772 INFO    ] time= 31/08/2026 11:13:03
[2026-08-31 11:13:03,778.778 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:13:03,800.800 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:13:03,906.906 INFO    ] No existing commands found in stream
[2026-08-31 11:13:08,926.926 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:13:08,929.929 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-08-31 11:13:10,901.901 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 11:13:10,904.904 INFO    ] Checking for system updates...
[2026-08-31 11:13:10,943.943 INFO    ] 200
[2026-08-31 11:13:10,946.946 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:13:11,005.005 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:13:11,008.008 INFO    ] No update needed
[2026-08-31 11:13:11,010.010 INFO    ] Checking for camera pi updates...
[2026-08-31 11:13:11,044.044 INFO    ] 200
[2026-08-31 11:13:11,047.047 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:13:11,092.092 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:13:11,179.179 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:13:11,181.181 INFO    ] No camera update needed
[2026-08-31 11:13:11,184.184 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:13:11,186.186 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:13:11,191.191 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:13:11,196.196 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:13:13,238.238 INFO    ] ================================================
[2026-08-31 11:13:13,254.254 INFO    ] Launching Daemon at Mon Aug 31 11:13:13 IST 2026
[2026-08-31 11:13:13,265.265 INFO    ] ================================================
[2026-08-31 11:13:13,828.828 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:13:13
[2026-08-31 11:13:14,411.411 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:13:14,661.661 INFO    ] Initializing speech engine...
[2026-08-31 11:13:14,684.684 INFO    ] 2026-08-31 11:13:14
[2026-08-31 11:13:14,940.940 INFO    ] 2026-08-31 11:13:14
[2026-08-31 11:13:14,975.975 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:13:15,224.224 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:13:15,241.241 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:13:15,496.496 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:13:15,508.508 INFO    ] time= 31/08/2026 11:13:15
[2026-08-31 11:13:15,522.522 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:13:15,532.532 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:13:15,762.762 INFO    ] No existing commands found in stream
[2026-08-31 11:13:20,787.787 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:13:20,790.790 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-08-31 11:13:24,454.454 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 11:13:24,457.457 INFO    ] Checking for system updates...
[2026-08-31 11:13:24,499.499 INFO    ] 200
[2026-08-31 11:13:24,502.502 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:13:24,568.568 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:13:24,571.571 INFO    ] No update needed
[2026-08-31 11:13:24,574.574 INFO    ] Checking for camera pi updates...
[2026-08-31 11:13:24,613.613 INFO    ] 200
[2026-08-31 11:13:24,616.616 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:13:24,662.662 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:13:24,791.791 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:13:24,794.794 INFO    ] No camera update needed
[2026-08-31 11:13:24,797.797 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:13:24,799.799 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:13:24,806.806 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:13:24,812.812 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:13:26,853.853 INFO    ] ================================================
[2026-08-31 11:13:26,869.869 INFO    ] Launching Daemon at Mon Aug 31 11:13:26 IST 2026
[2026-08-31 11:13:26,880.880 INFO    ] ================================================
[2026-08-31 11:13:27,547.547 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:13:27
[2026-08-31 11:13:28,135.135 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:13:28,401.401 INFO    ] Initializing speech engine...
[2026-08-31 11:13:28,411.411 INFO    ] 2026-08-31 11:13:28
[2026-08-31 11:13:28,658.658 INFO    ] 2026-08-31 11:13:28
[2026-08-31 11:13:28,693.693 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:13:28,875.875 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:13:28,889.889 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:13:29,091.091 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:13:29,117.117 INFO    ] time= 31/08/2026 11:13:29
[2026-08-31 11:13:29,180.180 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:13:29,226.226 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:13:29,282.282 INFO    ] No existing commands found in stream
[2026-08-31 11:13:34,294.294 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:13:34,297.297 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-08-31 11:13:37,582.582 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 11:13:37,585.585 INFO    ] Checking for system updates...
[2026-08-31 11:13:37,620.620 INFO    ] 200
[2026-08-31 11:13:37,623.623 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:13:37,675.675 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:13:37,678.678 INFO    ] No update needed
[2026-08-31 11:13:37,680.680 INFO    ] Checking for camera pi updates...
[2026-08-31 11:13:37,714.714 INFO    ] 200
[2026-08-31 11:13:37,716.716 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:13:37,762.762 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:13:37,848.848 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:13:37,850.850 INFO    ] No camera update needed
[2026-08-31 11:13:37,853.853 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:13:37,855.855 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:13:37,860.860 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:13:37,865.865 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:13:39,907.907 INFO    ] ================================================
[2026-08-31 11:13:39,922.922 INFO    ] Launching Daemon at Mon Aug 31 11:13:39 IST 2026
[2026-08-31 11:13:39,933.933 INFO    ] ================================================
[2026-08-31 11:13:40,513.513 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:13:40
[2026-08-31 11:13:41,101.101 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:13:41,375.375 INFO    ] Initializing speech engine...
[2026-08-31 11:13:41,381.381 INFO    ] 2026-08-31 11:13:41
[2026-08-31 11:13:41,629.629 INFO    ] 2026-08-31 11:13:41
[2026-08-31 11:13:41,664.664 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:13:41,839.839 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:13:41,851.851 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:13:41,999.999 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:13:42,004.004 INFO    ] time= 31/08/2026 11:13:42
[2026-08-31 11:13:42,010.010 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:13:42,056.056 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:13:42,207.207 INFO    ] No existing commands found in stream
[2026-08-31 11:13:47,228.228 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:13:47,231.231 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-08-31 11:13:48,402.402 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 11:13:48,405.405 INFO    ] Checking for system updates...
[2026-08-31 11:13:48,441.441 INFO    ] 200
[2026-08-31 11:13:48,444.444 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:13:48,503.503 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:13:48,506.506 INFO    ] No update needed
[2026-08-31 11:13:48,508.508 INFO    ] Checking for camera pi updates...
[2026-08-31 11:13:48,546.546 INFO    ] 200
[2026-08-31 11:13:48,549.549 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:13:48,589.589 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:13:48,661.661 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:13:48,663.663 INFO    ] No camera update needed
[2026-08-31 11:13:48,666.666 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:13:48,668.668 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:13:48,673.673 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:13:48,678.678 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:13:50,718.718 INFO    ] ================================================
[2026-08-31 11:13:50,733.733 INFO    ] Launching Daemon at Mon Aug 31 11:13:50 IST 2026
[2026-08-31 11:13:50,744.744 INFO    ] ================================================
[2026-08-31 11:13:51,308.308 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:13:51
[2026-08-31 11:13:51,892.892 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:13:52,142.142 INFO    ] Initializing speech engine...
[2026-08-31 11:13:52,165.165 INFO    ] 2026-08-31 11:13:52
[2026-08-31 11:13:52,420.420 INFO    ] 2026-08-31 11:13:52
[2026-08-31 11:13:52,455.455 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:13:52,719.719 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:13:52,723.723 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:13:52,946.946 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:13:52,985.985 INFO    ] time= 31/08/2026 11:13:52
[2026-08-31 11:13:52,991.991 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:13:53,009.009 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:13:53,213.213 INFO    ] No existing commands found in stream
[2026-08-31 11:13:58,238.238 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:13:58,241.241 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-08-31 11:13:59,706.706 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 11:13:59,709.709 INFO    ] Checking for system updates...
[2026-08-31 11:13:59,746.746 INFO    ] 200
[2026-08-31 11:13:59,749.749 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:13:59,810.810 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:13:59,813.813 INFO    ] No update needed
[2026-08-31 11:13:59,816.816 INFO    ] Checking for camera pi updates...
[2026-08-31 11:13:59,850.850 INFO    ] 200
[2026-08-31 11:13:59,853.853 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:13:59,895.895 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:14:00,013.013 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:14:00,016.016 INFO    ] No camera update needed
[2026-08-31 11:14:00,019.019 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:14:00,022.022 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:14:00,028.028 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:14:00,041.041 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:14:02,085.085 INFO    ] ================================================
[2026-08-31 11:14:02,105.105 INFO    ] Launching Daemon at Mon Aug 31 11:14:02 IST 2026
[2026-08-31 11:14:02,121.121 INFO    ] ================================================
[2026-08-31 11:14:02,919.919 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:14:02
[2026-08-31 11:14:03,653.653 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:14:03,969.969 INFO    ] Initializing speech engine...
[2026-08-31 11:14:03,979.979 INFO    ] 2026-08-31 11:14:03
[2026-08-31 11:14:04,285.285 INFO    ] 2026-08-31 11:14:04
[2026-08-31 11:14:04,371.371 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:14:04,665.665 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:14:04,725.725 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:14:04,930.930 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:14:04,999.999 INFO    ] time= 31/08/2026 11:14:04
[2026-08-31 11:14:05,036.036 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:14:05,101.101 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:14:05,228.228 INFO    ] No existing commands found in stream
[2026-08-31 11:14:10,244.244 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:14:10,247.247 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-08-31 11:14:13,300.300 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 11:14:13,303.303 INFO    ] Checking for system updates...
[2026-08-31 11:14:13,344.344 INFO    ] 200
[2026-08-31 11:14:13,347.347 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:14:13,401.401 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:14:13,404.404 INFO    ] No update needed
[2026-08-31 11:14:13,407.407 INFO    ] Checking for camera pi updates...
[2026-08-31 11:14:13,446.446 INFO    ] 200
[2026-08-31 11:14:13,449.449 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:14:13,490.490 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:14:13,578.578 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:14:13,581.581 INFO    ] No camera update needed
[2026-08-31 11:14:13,583.583 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:14:13,586.586 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:14:13,592.592 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:14:13,598.598 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:14:15,639.639 INFO    ] ================================================
[2026-08-31 11:14:15,655.655 INFO    ] Launching Daemon at Mon Aug 31 11:14:15 IST 2026
[2026-08-31 11:14:15,665.665 INFO    ] ================================================
[2026-08-31 11:14:16,252.252 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:14:16
[2026-08-31 11:14:16,855.855 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:14:17,130.130 INFO    ] Initializing speech engine...
[2026-08-31 11:14:17,140.140 INFO    ] 2026-08-31 11:14:17
[2026-08-31 11:14:17,404.404 INFO    ] 2026-08-31 11:14:17
[2026-08-31 11:14:17,462.462 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:14:17,696.696 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:14:17,700.700 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:14:17,834.834 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:14:17,861.861 INFO    ] time= 31/08/2026 11:14:17
[2026-08-31 11:14:17,920.920 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:14:17,970.970 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:14:18,101.101 INFO    ] No existing commands found in stream
[2026-08-31 11:14:23,127.127 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:14:23,130.130 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-08-31 11:14:26,322.322 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 11:14:26,325.325 INFO    ] Checking for system updates...
[2026-08-31 11:14:26,364.364 INFO    ] 200
[2026-08-31 11:14:26,366.366 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:14:26,425.425 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:14:26,428.428 INFO    ] No update needed
[2026-08-31 11:14:26,431.431 INFO    ] Checking for camera pi updates...
[2026-08-31 11:14:26,464.464 INFO    ] 200
[2026-08-31 11:14:26,466.466 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:14:26,515.515 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:14:26,618.618 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:14:26,620.620 INFO    ] No camera update needed
[2026-08-31 11:14:26,623.623 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:14:26,625.625 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:14:26,630.630 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:14:26,635.635 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:14:28,677.677 INFO    ] ================================================
[2026-08-31 11:14:28,691.691 INFO    ] Launching Daemon at Mon Aug 31 11:14:28 IST 2026
[2026-08-31 11:14:28,702.702 INFO    ] ================================================
[2026-08-31 11:14:29,359.359 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:14:29
[2026-08-31 11:14:30,035.035 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:14:30,342.342 INFO    ] Initializing speech engine...
[2026-08-31 11:14:30,351.351 INFO    ] 2026-08-31 11:14:30
[2026-08-31 11:14:30,633.633 INFO    ] 2026-08-31 11:14:30
[2026-08-31 11:14:30,691.691 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:14:30,944.944 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:14:30,952.952 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:14:31,191.191 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:14:31,209.209 INFO    ] time= 31/08/2026 11:14:31
[2026-08-31 11:14:31,233.233 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:14:31,248.248 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:14:31,450.450 INFO    ] No existing commands found in stream
[2026-08-31 11:14:36,464.464 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:14:36,467.467 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-08-31 11:14:39,991.991 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 11:14:39,994.994 INFO    ] Checking for system updates...
[2026-08-31 11:14:40,032.032 INFO    ] 200
[2026-08-31 11:14:40,035.035 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:14:40,087.087 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:14:40,090.090 INFO    ] No update needed
[2026-08-31 11:14:40,093.093 INFO    ] Checking for camera pi updates...
[2026-08-31 11:14:40,126.126 INFO    ] 200
[2026-08-31 11:14:40,129.129 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:14:40,169.169 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:14:40,382.382 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:14:40,384.384 INFO    ] No camera update needed
[2026-08-31 11:14:40,386.386 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:14:40,389.389 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:14:40,394.394 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:14:40,399.399 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:14:42,439.439 INFO    ] ================================================
[2026-08-31 11:14:42,454.454 INFO    ] Launching Daemon at Mon Aug 31 11:14:42 IST 2026
[2026-08-31 11:14:42,465.465 INFO    ] ================================================
[2026-08-31 11:14:43,047.047 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:14:43
[2026-08-31 11:14:43,646.646 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:14:43,925.925 INFO    ] Initializing speech engine...
[2026-08-31 11:14:43,933.933 INFO    ] 2026-08-31 11:14:43
[2026-08-31 11:14:44,192.192 INFO    ] 2026-08-31 11:14:44
[2026-08-31 11:14:44,246.246 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:14:44,474.474 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:14:44,479.479 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:14:44,734.734 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:14:44,749.749 INFO    ] time= 31/08/2026 11:14:44
[2026-08-31 11:14:44,758.758 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:14:44,784.784 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:14:44,900.900 INFO    ] No existing commands found in stream
[2026-08-31 11:14:49,930.930 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:14:49,932.932 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-08-31 11:14:51,696.696 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 11:14:51,700.700 INFO    ] Checking for system updates...
[2026-08-31 11:14:51,742.742 INFO    ] 200
[2026-08-31 11:14:51,745.745 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:14:51,805.805 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:14:51,808.808 INFO    ] No update needed
[2026-08-31 11:14:51,811.811 INFO    ] Checking for camera pi updates...
[2026-08-31 11:14:51,846.846 INFO    ] 200
[2026-08-31 11:14:51,849.849 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:14:51,891.891 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:14:51,954.954 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:14:51,956.956 INFO    ] No camera update needed
[2026-08-31 11:14:51,959.959 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:14:51,961.961 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:14:51,967.967 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:14:51,972.972 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:14:54,014.014 INFO    ] ================================================
[2026-08-31 11:14:54,028.028 INFO    ] Launching Daemon at Mon Aug 31 11:14:54 IST 2026
[2026-08-31 11:14:54,039.039 INFO    ] ================================================
[2026-08-31 11:14:54,680.680 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:14:54
[2026-08-31 11:14:55,354.354 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:14:55,661.661 INFO    ] Initializing speech engine...
[2026-08-31 11:14:55,670.670 INFO    ] 2026-08-31 11:14:55
[2026-08-31 11:14:55,962.962 INFO    ] 2026-08-31 11:14:55
[2026-08-31 11:14:56,009.009 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:14:56,263.263 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:14:56,288.288 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:14:56,548.548 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:14:56,557.557 INFO    ] time= 31/08/2026 11:14:56
[2026-08-31 11:14:56,572.572 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:14:56,624.624 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:14:56,758.758 INFO    ] No existing commands found in stream
[2026-08-31 11:15:01,781.781 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:15:01,798.798 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-08-31 11:15:05,016.016 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 11:15:05,020.020 INFO    ] Checking for system updates...
[2026-08-31 11:15:05,067.067 INFO    ] 200
[2026-08-31 11:15:05,074.074 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:15:05,129.129 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:15:05,132.132 INFO    ] No update needed
[2026-08-31 11:15:05,134.134 INFO    ] Checking for camera pi updates...
[2026-08-31 11:15:05,169.169 INFO    ] 200
[2026-08-31 11:15:05,172.172 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:15:05,219.219 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:15:05,311.311 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:15:05,314.314 INFO    ] No camera update needed
[2026-08-31 11:15:05,316.316 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:15:05,319.319 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:15:05,325.325 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:15:05,330.330 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:15:07,370.370 INFO    ] ================================================
[2026-08-31 11:15:07,385.385 INFO    ] Launching Daemon at Mon Aug 31 11:15:07 IST 2026
[2026-08-31 11:15:07,396.396 INFO    ] ================================================
[2026-08-31 11:15:07,965.965 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:15:07
[2026-08-31 11:15:08,547.547 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:15:08,822.822 INFO    ] Initializing speech engine...
[2026-08-31 11:15:08,828.828 INFO    ] 2026-08-31 11:15:08
[2026-08-31 11:15:09,077.077 INFO    ] 2026-08-31 11:15:09
[2026-08-31 11:15:09,113.113 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:15:09,438.438 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:15:09,482.482 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:15:09,912.912 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:15:09,967.967 INFO    ] time= 31/08/2026 11:15:09
[2026-08-31 11:15:10,026.026 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:15:10,049.049 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:15:10,319.319 INFO    ] No existing commands found in stream
[2026-08-31 11:15:15,332.332 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:15:15,334.334 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-08-31 11:15:19,336.336 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 11:15:19,338.338 INFO    ] Checking for system updates...
[2026-08-31 11:15:19,379.379 INFO    ] 200
[2026-08-31 11:15:19,381.381 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:15:19,435.435 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:15:19,439.439 INFO    ] No update needed
[2026-08-31 11:15:19,442.442 INFO    ] Checking for camera pi updates...
[2026-08-31 11:15:19,480.480 INFO    ] 200
[2026-08-31 11:15:19,483.483 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:15:19,530.530 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:15:19,614.614 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:15:19,617.617 INFO    ] No camera update needed
[2026-08-31 11:15:19,620.620 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:15:19,622.622 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:15:19,629.629 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:15:19,635.635 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:15:21,678.678 INFO    ] ================================================
[2026-08-31 11:15:21,693.693 INFO    ] Launching Daemon at Mon Aug 31 11:15:21 IST 2026
[2026-08-31 11:15:21,704.704 INFO    ] ================================================
[2026-08-31 11:15:22,399.399 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:15:22
[2026-08-31 11:15:23,131.131 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:15:23,477.477 INFO    ] Initializing speech engine...
[2026-08-31 11:15:23,483.483 INFO    ] 2026-08-31 11:15:23
[2026-08-31 11:15:23,749.749 INFO    ] 2026-08-31 11:15:23
[2026-08-31 11:15:23,807.807 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:15:24,035.035 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:15:24,044.044 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:15:24,275.275 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:15:24,311.311 INFO    ] time= 31/08/2026 11:15:24
[2026-08-31 11:15:24,317.317 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:15:24,335.335 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:15:24,471.471 INFO    ] No existing commands found in stream
[2026-08-31 11:15:29,495.495 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:15:29,498.498 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-08-31 11:15:31,812.812 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 11:15:31,815.815 INFO    ] Checking for system updates...
[2026-08-31 11:15:31,856.856 INFO    ] 200
[2026-08-31 11:15:31,860.860 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:15:31,922.922 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:15:31,925.925 INFO    ] No update needed
[2026-08-31 11:15:31,928.928 INFO    ] Checking for camera pi updates...
[2026-08-31 11:15:31,970.970 INFO    ] 200
[2026-08-31 11:15:31,973.973 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:15:32,038.038 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:15:32,170.170 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:15:32,173.173 INFO    ] No camera update needed
[2026-08-31 11:15:32,177.177 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:15:32,180.180 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:15:32,187.187 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:15:32,194.194 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:15:34,240.240 INFO    ] ================================================
[2026-08-31 11:15:34,255.255 INFO    ] Launching Daemon at Mon Aug 31 11:15:34 IST 2026
[2026-08-31 11:15:34,266.266 INFO    ] ================================================
[2026-08-31 11:15:34,841.841 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:15:34
[2026-08-31 11:15:35,428.428 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:15:35,683.683 INFO    ] Initializing speech engine...
[2026-08-31 11:15:35,691.691 INFO    ] 2026-08-31 11:15:35
[2026-08-31 11:15:35,990.990 INFO    ] 2026-08-31 11:15:35
[2026-08-31 11:15:36,031.031 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:15:36,237.237 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:15:36,243.243 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:15:36,403.403 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:15:36,425.425 INFO    ] time= 31/08/2026 11:15:36
[2026-08-31 11:15:36,434.434 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:15:36,443.443 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:15:36,520.520 INFO    ] No existing commands found in stream
[2026-08-31 11:15:41,545.545 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:15:41,548.548 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-08-31 11:15:45,588.588 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 11:15:45,591.591 INFO    ] Checking for system updates...
[2026-08-31 11:15:45,633.633 INFO    ] 200
[2026-08-31 11:15:45,636.636 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:15:45,690.690 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:15:45,693.693 INFO    ] No update needed
[2026-08-31 11:15:45,696.696 INFO    ] Checking for camera pi updates...
[2026-08-31 11:15:45,735.735 INFO    ] 200
[2026-08-31 11:15:45,738.738 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:15:45,785.785 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:15:45,871.871 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:15:45,874.874 INFO    ] No camera update needed
[2026-08-31 11:15:45,877.877 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:15:45,879.879 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:15:45,886.886 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:15:45,892.892 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:15:47,934.934 INFO    ] ================================================
[2026-08-31 11:15:47,949.949 INFO    ] Launching Daemon at Mon Aug 31 11:15:47 IST 2026
[2026-08-31 11:15:47,961.961 INFO    ] ================================================
[2026-08-31 11:15:48,625.625 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:15:48
[2026-08-31 11:15:49,318.318 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:15:49,628.628 INFO    ] Initializing speech engine...
[2026-08-31 11:15:49,643.643 INFO    ] 2026-08-31 11:15:49
[2026-08-31 11:15:49,918.918 INFO    ] 2026-08-31 11:15:49
[2026-08-31 11:15:49,975.975 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:15:50,225.225 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:15:50,245.245 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:15:50,450.450 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:15:50,469.469 INFO    ] time= 31/08/2026 11:15:50
[2026-08-31 11:15:50,490.490 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:15:50,518.518 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:15:50,648.648 INFO    ] No existing commands found in stream
[2026-08-31 11:15:55,673.673 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:15:55,677.677 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-08-31 11:15:56,737.737 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 11:15:56,741.741 INFO    ] Checking for system updates...
[2026-08-31 11:15:56,779.779 INFO    ] 200
[2026-08-31 11:15:56,782.782 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:15:56,835.835 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:15:56,839.839 INFO    ] No update needed
[2026-08-31 11:15:56,841.841 INFO    ] Checking for camera pi updates...
[2026-08-31 11:15:56,876.876 INFO    ] 200
[2026-08-31 11:15:56,879.879 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:15:56,927.927 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:15:57,051.051 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:15:57,053.053 INFO    ] No camera update needed
[2026-08-31 11:15:57,055.055 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:15:57,058.058 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:15:57,063.063 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:15:57,068.068 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:15:59,111.111 INFO    ] ================================================
[2026-08-31 11:15:59,126.126 INFO    ] Launching Daemon at Mon Aug 31 11:15:59 IST 2026
[2026-08-31 11:15:59,140.140 INFO    ] ================================================
[2026-08-31 11:15:59,712.712 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:15:59
[2026-08-31 11:16:00,304.304 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:16:00,589.589 INFO    ] Initializing speech engine...
[2026-08-31 11:16:00,601.601 INFO    ] 2026-08-31 11:16:00
[2026-08-31 11:16:00,875.875 INFO    ] 2026-08-31 11:16:00
[2026-08-31 11:16:00,911.911 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:16:01,143.143 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:16:01,146.146 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:16:01,295.295 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:16:01,298.298 INFO    ] time= 31/08/2026 11:16:01
[2026-08-31 11:16:01,302.302 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:16:01,304.304 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:16:01,432.432 INFO    ] No existing commands found in stream
[2026-08-31 11:16:06,465.465 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:16:06,469.469 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-08-31 11:16:09,143.143 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 11:16:09,146.146 INFO    ] Checking for system updates...
[2026-08-31 11:16:09,183.183 INFO    ] 200
[2026-08-31 11:16:09,186.186 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:16:09,246.246 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:16:09,249.249 INFO    ] No update needed
[2026-08-31 11:16:09,251.251 INFO    ] Checking for camera pi updates...
[2026-08-31 11:16:09,285.285 INFO    ] 200
[2026-08-31 11:16:09,288.288 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:16:09,329.329 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:16:09,440.440 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:16:09,443.443 INFO    ] No camera update needed
[2026-08-31 11:16:09,446.446 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:16:09,448.448 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:16:09,454.454 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:16:09,460.460 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:16:11,500.500 INFO    ] ================================================
[2026-08-31 11:16:11,515.515 INFO    ] Launching Daemon at Mon Aug 31 11:16:11 IST 2026
[2026-08-31 11:16:11,526.526 INFO    ] ================================================
[2026-08-31 11:16:12,114.114 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:16:12
[2026-08-31 11:16:12,717.717 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:16:12,996.996 INFO    ] Initializing speech engine...
[2026-08-31 11:16:13,003.003 INFO    ] 2026-08-31 11:16:12
[2026-08-31 11:16:13,264.264 INFO    ] 2026-08-31 11:16:13
[2026-08-31 11:16:13,320.320 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:16:13,570.570 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:16:13,575.575 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:16:13,774.774 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:16:13,808.808 INFO    ] time= 31/08/2026 11:16:13
[2026-08-31 11:16:13,814.814 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:16:13,832.832 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:16:13,969.969 INFO    ] No existing commands found in stream
[2026-08-31 11:16:18,995.995 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:16:18,998.998 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-08-31 11:16:20,043.043 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 11:16:20,046.046 INFO    ] Checking for system updates...
[2026-08-31 11:16:20,082.082 INFO    ] 200
[2026-08-31 11:16:20,084.084 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:16:20,143.143 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:16:20,145.145 INFO    ] No update needed
[2026-08-31 11:16:20,148.148 INFO    ] Checking for camera pi updates...
[2026-08-31 11:16:20,182.182 INFO    ] 200
[2026-08-31 11:16:20,184.184 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:16:20,225.225 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:16:20,379.379 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:16:20,381.381 INFO    ] No camera update needed
[2026-08-31 11:16:20,384.384 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:16:20,386.386 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:16:20,392.392 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:16:20,397.397 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:16:22,437.437 INFO    ] ================================================
[2026-08-31 11:16:22,453.453 INFO    ] Launching Daemon at Mon Aug 31 11:16:22 IST 2026
[2026-08-31 11:16:22,464.464 INFO    ] ================================================
[2026-08-31 11:16:23,032.032 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:16:23
[2026-08-31 11:16:23,618.618 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:16:23,898.898 INFO    ] Initializing speech engine...
[2026-08-31 11:16:23,907.907 INFO    ] 2026-08-31 11:16:23
[2026-08-31 11:16:24,175.175 INFO    ] 2026-08-31 11:16:24
[2026-08-31 11:16:24,210.210 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:16:24,427.427 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:16:24,437.437 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:16:24,653.653 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:16:24,665.665 INFO    ] time= 31/08/2026 11:16:24
[2026-08-31 11:16:24,719.719 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:16:24,773.773 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:16:24,934.934 INFO    ] No existing commands found in stream
[2026-08-31 11:16:29,962.962 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:16:29,964.964 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-08-31 11:16:33,967.967 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 11:16:33,969.969 INFO    ] Checking for system updates...
[2026-08-31 11:16:34,005.005 INFO    ] 200
[2026-08-31 11:16:34,008.008 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:16:34,066.066 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:16:34,069.069 INFO    ] No update needed
[2026-08-31 11:16:34,071.071 INFO    ] Checking for camera pi updates...
[2026-08-31 11:16:34,108.108 INFO    ] 200
[2026-08-31 11:16:34,111.111 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:16:34,155.155 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:16:34,239.239 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:16:34,241.241 INFO    ] No camera update needed
[2026-08-31 11:16:34,244.244 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:16:34,246.246 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:16:34,251.251 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:16:34,256.256 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:16:36,296.296 INFO    ] ================================================
[2026-08-31 11:16:36,311.311 INFO    ] Launching Daemon at Mon Aug 31 11:16:36 IST 2026
[2026-08-31 11:16:36,323.323 INFO    ] ================================================
[2026-08-31 11:16:36,891.891 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:16:36
[2026-08-31 11:16:37,473.473 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:16:37,721.721 INFO    ] Initializing speech engine...
[2026-08-31 11:16:37,736.736 INFO    ] 2026-08-31 11:16:37
[2026-08-31 11:16:38,003.003 INFO    ] 2026-08-31 11:16:37
[2026-08-31 11:16:38,039.039 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:16:38,223.223 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:16:38,240.240 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:16:38,443.443 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:16:38,477.477 INFO    ] time= 31/08/2026 11:16:38
[2026-08-31 11:16:38,531.531 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:16:38,577.577 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:16:38,642.642 INFO    ] No existing commands found in stream
[2026-08-31 11:16:43,674.674 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:16:43,676.676 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-08-31 11:16:48,081.081 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 11:16:48,083.083 INFO    ] Checking for system updates...
[2026-08-31 11:16:48,119.119 INFO    ] 200
[2026-08-31 11:16:48,122.122 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:16:48,175.175 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:16:48,178.178 INFO    ] No update needed
[2026-08-31 11:16:48,180.180 INFO    ] Checking for camera pi updates...
[2026-08-31 11:16:48,214.214 INFO    ] 200
[2026-08-31 11:16:48,217.217 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:16:48,257.257 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:16:48,477.477 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:16:48,479.479 INFO    ] No camera update needed
[2026-08-31 11:16:48,482.482 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:16:48,484.484 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:16:48,489.489 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:16:48,494.494 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:16:50,535.535 INFO    ] ================================================
[2026-08-31 11:16:50,550.550 INFO    ] Launching Daemon at Mon Aug 31 11:16:50 IST 2026
[2026-08-31 11:16:50,561.561 INFO    ] ================================================
[2026-08-31 11:16:51,162.162 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:16:51
[2026-08-31 11:16:51,782.782 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:16:52,052.052 INFO    ] Initializing speech engine...
[2026-08-31 11:16:52,068.068 INFO    ] 2026-08-31 11:16:52
[2026-08-31 11:16:52,316.316 INFO    ] 2026-08-31 11:16:52
[2026-08-31 11:16:52,351.351 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:16:52,609.609 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:16:52,618.618 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:16:52,752.752 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:16:52,795.795 INFO    ] time= 31/08/2026 11:16:52
[2026-08-31 11:16:52,844.844 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:16:52,883.883 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:16:52,991.991 INFO    ] No existing commands found in stream
[2026-08-31 11:16:58,029.029 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:16:58,032.032 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-08-31 11:17:03,108.108 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 11:17:03,111.111 INFO    ] Checking for system updates...
[2026-08-31 11:17:03,155.155 INFO    ] 200
[2026-08-31 11:17:03,158.158 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:17:03,219.219 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:17:03,222.222 INFO    ] No update needed
[2026-08-31 11:17:03,226.226 INFO    ] Checking for camera pi updates...
[2026-08-31 11:17:03,262.262 INFO    ] 200
[2026-08-31 11:17:03,264.264 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:17:03,313.313 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:17:03,417.417 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:17:03,420.420 INFO    ] No camera update needed
[2026-08-31 11:17:03,422.422 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:17:03,424.424 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:17:03,430.430 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:17:03,435.435 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:17:05,475.475 INFO    ] ================================================
[2026-08-31 11:17:05,492.492 INFO    ] Launching Daemon at Mon Aug 31 11:17:05 IST 2026
[2026-08-31 11:17:05,503.503 INFO    ] ================================================
[2026-08-31 11:17:06,082.082 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:17:06
[2026-08-31 11:17:06,695.695 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:17:06,977.977 INFO    ] Initializing speech engine...
[2026-08-31 11:17:06,988.988 INFO    ] 2026-08-31 11:17:06
[2026-08-31 11:17:07,257.257 INFO    ] 2026-08-31 11:17:07
[2026-08-31 11:17:07,318.318 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:17:07,555.555 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:17:07,576.576 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:17:07,763.763 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:17:07,818.818 INFO    ] time= 31/08/2026 11:17:07
[2026-08-31 11:17:07,830.830 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:17:07,849.849 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:17:07,971.971 INFO    ] No existing commands found in stream
[2026-08-31 11:17:12,992.992 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:17:12,995.995 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-08-31 11:17:17,012.012 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 11:17:17,015.015 INFO    ] Checking for system updates...
[2026-08-31 11:17:17,055.055 INFO    ] 200
[2026-08-31 11:17:17,058.058 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:17:17,116.116 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:17:17,119.119 INFO    ] No update needed
[2026-08-31 11:17:17,122.122 INFO    ] Checking for camera pi updates...
[2026-08-31 11:17:17,159.159 INFO    ] 200
[2026-08-31 11:17:17,162.162 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:17:17,208.208 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:17:17,328.328 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:17:17,331.331 INFO    ] No camera update needed
[2026-08-31 11:17:17,333.333 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:17:17,335.335 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:17:17,340.340 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:17:17,345.345 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:17:19,385.385 INFO    ] ================================================
[2026-08-31 11:17:19,401.401 INFO    ] Launching Daemon at Mon Aug 31 11:17:19 IST 2026
[2026-08-31 11:17:19,412.412 INFO    ] ================================================
[2026-08-31 11:17:19,981.981 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:17:19
[2026-08-31 11:17:20,578.578 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:17:20,858.858 INFO    ] Initializing speech engine...
[2026-08-31 11:17:20,867.867 INFO    ] 2026-08-31 11:17:20
[2026-08-31 11:17:21,139.139 INFO    ] 2026-08-31 11:17:21
[2026-08-31 11:17:21,174.174 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:17:21,383.383 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:17:21,404.404 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:17:21,545.545 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:17:21,554.554 INFO    ] time= 31/08/2026 11:17:21
[2026-08-31 11:17:21,562.562 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:17:21,589.589 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:17:21,729.729 INFO    ] No existing commands found in stream
[2026-08-31 11:17:26,760.760 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:17:26,763.763 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-08-31 11:17:29,148.148 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 11:17:29,151.151 INFO    ] Checking for system updates...
[2026-08-31 11:17:29,189.189 INFO    ] 200
[2026-08-31 11:17:29,192.192 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:17:29,244.244 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:17:29,247.247 INFO    ] No update needed
[2026-08-31 11:17:29,249.249 INFO    ] Checking for camera pi updates...
[2026-08-31 11:17:29,283.283 INFO    ] 200
[2026-08-31 11:17:29,285.285 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:17:29,330.330 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:17:29,426.426 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:17:29,428.428 INFO    ] No camera update needed
[2026-08-31 11:17:29,431.431 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:17:29,433.433 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:17:29,438.438 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:17:29,443.443 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:17:31,483.483 INFO    ] ================================================
[2026-08-31 11:17:31,500.500 INFO    ] Launching Daemon at Mon Aug 31 11:17:31 IST 2026
[2026-08-31 11:17:31,511.511 INFO    ] ================================================
[2026-08-31 11:17:32,166.166 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:17:32
[2026-08-31 11:17:32,815.815 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:17:33,115.115 INFO    ] Initializing speech engine...
[2026-08-31 11:17:33,126.126 INFO    ] 2026-08-31 11:17:33
[2026-08-31 11:17:33,417.417 INFO    ] 2026-08-31 11:17:33
[2026-08-31 11:17:33,531.531 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:17:33,691.691 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:17:33,702.702 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:17:33,957.957 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:17:33,965.965 INFO    ] time= 31/08/2026 11:17:33
[2026-08-31 11:17:33,988.988 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:17:34,017.017 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:17:34,146.146 INFO    ] No existing commands found in stream
[2026-08-31 11:17:39,182.182 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:17:39,185.185 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-08-31 11:17:41,180.180 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 11:17:41,183.183 INFO    ] Checking for system updates...
[2026-08-31 11:17:41,225.225 INFO    ] 200
[2026-08-31 11:17:41,228.228 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:17:41,289.289 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:17:41,292.292 INFO    ] No update needed
[2026-08-31 11:17:41,294.294 INFO    ] Checking for camera pi updates...
[2026-08-31 11:17:41,329.329 INFO    ] 200
[2026-08-31 11:17:41,332.332 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:17:41,373.373 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:17:41,484.484 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:17:41,487.487 INFO    ] No camera update needed
[2026-08-31 11:17:41,490.490 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:17:41,493.493 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:17:41,499.499 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:17:41,505.505 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:17:43,549.549 INFO    ] ================================================
[2026-08-31 11:17:43,567.567 INFO    ] Launching Daemon at Mon Aug 31 11:17:43 IST 2026
[2026-08-31 11:17:43,583.583 INFO    ] ================================================
[2026-08-31 11:17:44,148.148 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:17:44
[2026-08-31 11:17:44,731.731 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:17:44,994.994 INFO    ] Initializing speech engine...
[2026-08-31 11:17:45,017.017 INFO    ] 2026-08-31 11:17:45
[2026-08-31 11:17:45,274.274 INFO    ] 2026-08-31 11:17:45
[2026-08-31 11:17:45,308.308 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:17:45,499.499 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:17:45,515.515 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:17:45,710.710 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:17:45,752.752 INFO    ] time= 31/08/2026 11:17:45
[2026-08-31 11:17:45,801.801 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:17:45,842.842 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:17:45,971.971 INFO    ] No existing commands found in stream
[2026-08-31 11:17:50,999.999 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:17:51,002.002 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-08-31 11:17:51,654.654 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 11:17:51,657.657 INFO    ] Checking for system updates...
[2026-08-31 11:17:51,693.693 INFO    ] 200
[2026-08-31 11:17:51,695.695 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:17:51,748.748 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:17:51,750.750 INFO    ] No update needed
[2026-08-31 11:17:51,753.753 INFO    ] Checking for camera pi updates...
[2026-08-31 11:17:51,790.790 INFO    ] 200
[2026-08-31 11:17:51,793.793 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:17:51,833.833 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:17:51,915.915 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:17:51,917.917 INFO    ] No camera update needed
[2026-08-31 11:17:51,920.920 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:17:51,922.922 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:17:51,927.927 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:17:51,932.932 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:17:53,973.973 INFO    ] ================================================
[2026-08-31 11:17:53,989.989 INFO    ] Launching Daemon at Mon Aug 31 11:17:53 IST 2026
[2026-08-31 11:17:54,999.999 INFO    ] ================================================
[2026-08-31 11:17:54,569.569 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:17:54
[2026-08-31 11:17:55,162.162 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:17:55,416.416 INFO    ] Initializing speech engine...
[2026-08-31 11:17:55,422.422 INFO    ] 2026-08-31 11:17:55
[2026-08-31 11:17:55,718.718 INFO    ] 2026-08-31 11:17:55
[2026-08-31 11:17:55,756.756 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:17:55,954.954 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:17:55,960.960 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:17:56,213.213 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:17:56,245.245 INFO    ] time= 31/08/2026 11:17:56
[2026-08-31 11:17:56,295.295 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:17:56,349.349 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:17:56,447.447 INFO    ] No existing commands found in stream
[2026-08-31 11:18:01,478.478 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:18:01,483.483 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-08-31 11:18:05,454.454 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 11:18:05,457.457 INFO    ] Checking for system updates...
[2026-08-31 11:18:05,495.495 INFO    ] 200
[2026-08-31 11:18:05,498.498 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:18:05,550.550 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:18:05,553.553 INFO    ] No update needed
[2026-08-31 11:18:05,555.555 INFO    ] Checking for camera pi updates...
[2026-08-31 11:18:05,589.589 INFO    ] 200
[2026-08-31 11:18:05,591.591 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:18:05,632.632 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:18:05,741.741 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:18:05,744.744 INFO    ] No camera update needed
[2026-08-31 11:18:05,746.746 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:18:05,748.748 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:18:05,754.754 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:18:05,758.758 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:18:07,798.798 INFO    ] ================================================
[2026-08-31 11:18:07,813.813 INFO    ] Launching Daemon at Mon Aug 31 11:18:07 IST 2026
[2026-08-31 11:18:07,824.824 INFO    ] ================================================
[2026-08-31 11:18:08,391.391 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:18:08
[2026-08-31 11:18:08,974.974 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:18:09,246.246 INFO    ] Initializing speech engine...
[2026-08-31 11:18:09,255.255 INFO    ] 2026-08-31 11:18:09
[2026-08-31 11:18:09,505.505 INFO    ] 2026-08-31 11:18:09
[2026-08-31 11:18:09,540.540 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:18:09,724.724 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:18:09,743.743 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:18:09,893.893 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:18:09,944.944 INFO    ] time= 31/08/2026 11:18:09
[2026-08-31 11:18:09,965.965 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:18:10,019.019 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:18:10,095.095 INFO    ] No existing commands found in stream
[2026-08-31 11:18:15,106.106 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:18:15,109.109 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-08-31 11:18:17,729.729 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 11:18:17,732.732 INFO    ] Checking for system updates...
[2026-08-31 11:18:17,771.771 INFO    ] 200
[2026-08-31 11:18:17,774.774 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:18:17,826.826 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:18:17,829.829 INFO    ] No update needed
[2026-08-31 11:18:17,831.831 INFO    ] Checking for camera pi updates...
[2026-08-31 11:18:17,866.866 INFO    ] 200
[2026-08-31 11:18:17,869.869 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:18:17,909.909 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:18:18,014.014 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:18:18,016.016 INFO    ] No camera update needed
[2026-08-31 11:18:18,019.019 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:18:18,021.021 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:18:18,026.026 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:18:18,031.031 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:18:20,072.072 INFO    ] ================================================
[2026-08-31 11:18:20,087.087 INFO    ] Launching Daemon at Mon Aug 31 11:18:20 IST 2026
[2026-08-31 11:18:20,098.098 INFO    ] ================================================
[2026-08-31 11:18:20,677.677 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:18:20
[2026-08-31 11:18:21,270.270 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:18:21,552.552 INFO    ] Initializing speech engine...
[2026-08-31 11:18:21,564.564 INFO    ] 2026-08-31 11:18:21
[2026-08-31 11:18:21,818.818 INFO    ] 2026-08-31 11:18:21
[2026-08-31 11:18:21,853.853 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:18:22,044.044 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:18:22,057.057 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:18:22,270.270 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:18:22,273.273 INFO    ] time= 31/08/2026 11:18:22
[2026-08-31 11:18:22,276.276 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:18:22,325.325 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:18:22,414.414 INFO    ] No existing commands found in stream
[2026-08-31 11:18:27,427.427 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:18:27,430.430 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-08-31 11:18:28,786.786 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 11:18:28,789.789 INFO    ] Checking for system updates...
[2026-08-31 11:18:28,824.824 INFO    ] 200
[2026-08-31 11:18:28,827.827 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:18:28,888.888 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:18:28,891.891 INFO    ] No update needed
[2026-08-31 11:18:28,893.893 INFO    ] Checking for camera pi updates...
[2026-08-31 11:18:28,926.926 INFO    ] 200
[2026-08-31 11:18:28,929.929 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:18:28,970.970 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:18:29,069.069 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:18:29,071.071 INFO    ] No camera update needed
[2026-08-31 11:18:29,074.074 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:18:29,076.076 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:18:29,082.082 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:18:29,087.087 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:18:31,128.128 INFO    ] ================================================
[2026-08-31 11:18:31,143.143 INFO    ] Launching Daemon at Mon Aug 31 11:18:31 IST 2026
[2026-08-31 11:18:31,153.153 INFO    ] ================================================
[2026-08-31 11:18:31,758.758 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:18:31
[2026-08-31 11:18:32,393.393 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:18:32,676.676 INFO    ] Initializing speech engine...
[2026-08-31 11:18:32,691.691 INFO    ] 2026-08-31 11:18:32
[2026-08-31 11:18:33,001.001 INFO    ] 2026-08-31 11:18:32
[2026-08-31 11:18:33,036.036 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:18:33,237.237 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:18:33,244.244 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:18:33,498.498 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:18:33,506.506 INFO    ] time= 31/08/2026 11:18:33
[2026-08-31 11:18:33,540.540 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:18:33,594.594 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:18:33,678.678 INFO    ] No existing commands found in stream
[2026-08-31 11:18:38,691.691 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:18:38,694.694 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-08-31 11:18:39,989.989 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 11:18:39,991.991 INFO    ] Checking for system updates...
[2026-08-31 11:18:40,027.027 INFO    ] 200
[2026-08-31 11:18:40,029.029 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:18:40,082.082 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:18:40,085.085 INFO    ] No update needed
[2026-08-31 11:18:40,087.087 INFO    ] Checking for camera pi updates...
[2026-08-31 11:18:40,122.122 INFO    ] 200
[2026-08-31 11:18:40,125.125 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:18:40,165.165 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:18:40,269.269 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:18:40,271.271 INFO    ] No camera update needed
[2026-08-31 11:18:40,274.274 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:18:40,276.276 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:18:40,282.282 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:18:40,287.287 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:18:42,326.326 INFO    ] ================================================
[2026-08-31 11:18:42,341.341 INFO    ] Launching Daemon at Mon Aug 31 11:18:42 IST 2026
[2026-08-31 11:18:42,352.352 INFO    ] ================================================
[2026-08-31 11:18:42,931.931 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:18:42
[2026-08-31 11:18:43,530.530 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:18:43,803.803 INFO    ] Initializing speech engine...
[2026-08-31 11:18:43,813.813 INFO    ] 2026-08-31 11:18:43
[2026-08-31 11:18:44,077.077 INFO    ] 2026-08-31 11:18:44
[2026-08-31 11:18:44,132.132 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:18:44,481.481 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:18:44,508.508 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:18:44,735.735 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:18:44,768.768 INFO    ] time= 31/08/2026 11:18:44
[2026-08-31 11:18:44,821.821 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:18:44,872.872 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:18:45,018.018 INFO    ] No existing commands found in stream
[2026-08-31 11:18:50,032.032 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:18:50,034.034 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-08-31 11:18:51,562.562 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 11:18:51,565.565 INFO    ] Checking for system updates...
[2026-08-31 11:18:51,601.601 INFO    ] 200
[2026-08-31 11:18:51,603.603 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:18:51,663.663 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:18:51,666.666 INFO    ] No update needed
[2026-08-31 11:18:51,668.668 INFO    ] Checking for camera pi updates...
[2026-08-31 11:18:51,703.703 INFO    ] 200
[2026-08-31 11:18:51,705.705 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:18:51,751.751 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:18:51,950.950 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:18:51,953.953 INFO    ] No camera update needed
[2026-08-31 11:18:51,955.955 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:18:51,958.958 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:18:51,963.963 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:18:51,968.968 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:18:54,009.009 INFO    ] ================================================
[2026-08-31 11:18:54,024.024 INFO    ] Launching Daemon at Mon Aug 31 11:18:54 IST 2026
[2026-08-31 11:18:54,035.035 INFO    ] ================================================
[2026-08-31 11:18:54,615.615 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:18:54
[2026-08-31 11:18:55,213.213 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:18:55,472.472 INFO    ] Initializing speech engine...
[2026-08-31 11:18:55,481.481 INFO    ] 2026-08-31 11:18:55
[2026-08-31 11:18:55,778.778 INFO    ] 2026-08-31 11:18:55
[2026-08-31 11:18:55,814.814 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:18:56,017.017 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:18:56,033.033 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:18:56,205.205 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:18:56,238.238 INFO    ] time= 31/08/2026 11:18:56
[2026-08-31 11:18:56,282.282 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:18:56,298.298 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:18:56,433.433 INFO    ] No existing commands found in stream
[2026-08-31 11:19:01,446.446 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:19:01,449.449 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-08-31 11:19:03,100.100 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 11:19:03,103.103 INFO    ] Checking for system updates...
[2026-08-31 11:19:03,144.144 INFO    ] 200
[2026-08-31 11:19:03,146.146 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:19:03,224.224 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:19:03,227.227 INFO    ] No update needed
[2026-08-31 11:19:03,229.229 INFO    ] Checking for camera pi updates...
[2026-08-31 11:19:03,268.268 INFO    ] 200
[2026-08-31 11:19:03,271.271 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:19:03,321.321 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:19:03,496.496 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:19:03,499.499 INFO    ] No camera update needed
[2026-08-31 11:19:03,502.502 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:19:03,505.505 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:19:03,511.511 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:19:03,517.517 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:19:05,557.557 INFO    ] ================================================
[2026-08-31 11:19:05,572.572 INFO    ] Launching Daemon at Mon Aug 31 11:19:05 IST 2026
[2026-08-31 11:19:05,583.583 INFO    ] ================================================
[2026-08-31 11:19:06,165.165 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:19:06
[2026-08-31 11:19:06,823.823 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:19:07,129.129 INFO    ] Initializing speech engine...
[2026-08-31 11:19:07,136.136 INFO    ] 2026-08-31 11:19:07
[2026-08-31 11:19:07,424.424 INFO    ] 2026-08-31 11:19:07
[2026-08-31 11:19:07,480.480 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:19:07,774.774 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:19:07,784.784 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:19:07,981.981 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:19:07,999.999 INFO    ] time= 31/08/2026 11:19:07
[2026-08-31 11:19:08,031.031 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:19:08,039.039 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:19:08,159.159 INFO    ] No existing commands found in stream
[2026-08-31 11:19:13,190.190 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:19:13,194.194 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-08-31 11:19:14,391.391 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 11:19:14,395.395 INFO    ] Checking for system updates...
[2026-08-31 11:19:14,432.432 INFO    ] 200
[2026-08-31 11:19:14,434.434 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:19:14,495.495 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:19:14,497.497 INFO    ] No update needed
[2026-08-31 11:19:14,500.500 INFO    ] Checking for camera pi updates...
[2026-08-31 11:19:14,538.538 INFO    ] 200
[2026-08-31 11:19:14,540.540 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:19:14,586.586 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:19:14,675.675 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:19:14,677.677 INFO    ] No camera update needed
[2026-08-31 11:19:14,680.680 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:19:14,682.682 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:19:14,687.687 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:19:14,692.692 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:19:16,732.732 INFO    ] ================================================
[2026-08-31 11:19:16,748.748 INFO    ] Launching Daemon at Mon Aug 31 11:19:16 IST 2026
[2026-08-31 11:19:16,759.759 INFO    ] ================================================
[2026-08-31 11:19:17,426.426 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:19:17
[2026-08-31 11:19:18,055.055 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:19:18,302.302 INFO    ] Initializing speech engine...
[2026-08-31 11:19:18,317.317 INFO    ] 2026-08-31 11:19:18
[2026-08-31 11:19:18,582.582 INFO    ] 2026-08-31 11:19:18
[2026-08-31 11:19:18,618.618 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:19:18,803.803 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:19:18,819.819 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:19:18,955.955 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:19:18,963.963 INFO    ] time= 31/08/2026 11:19:18
[2026-08-31 11:19:19,008.008 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:19:19,032.032 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:19:19,141.141 INFO    ] No existing commands found in stream
[2026-08-31 11:19:24,166.166 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:19:24,169.169 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-08-31 11:19:27,980.980 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 11:19:27,983.983 INFO    ] Checking for system updates...
[2026-08-31 11:19:28,019.019 INFO    ] 200
[2026-08-31 11:19:28,021.021 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:19:28,078.078 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:19:28,081.081 INFO    ] No update needed
[2026-08-31 11:19:28,083.083 INFO    ] Checking for camera pi updates...
[2026-08-31 11:19:28,122.122 INFO    ] 200
[2026-08-31 11:19:28,124.124 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:19:28,165.165 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:19:28,274.274 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:19:28,276.276 INFO    ] No camera update needed
[2026-08-31 11:19:28,279.279 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:19:28,281.281 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:19:28,286.286 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:19:28,291.291 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:19:30,334.334 INFO    ] ================================================
[2026-08-31 11:19:30,349.349 INFO    ] Launching Daemon at Mon Aug 31 11:19:30 IST 2026
[2026-08-31 11:19:30,360.360 INFO    ] ================================================
[2026-08-31 11:19:31,041.041 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:19:31
[2026-08-31 11:19:31,758.758 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:19:32,103.103 INFO    ] Initializing speech engine...
[2026-08-31 11:19:32,113.113 INFO    ] 2026-08-31 11:19:32
[2026-08-31 11:19:32,416.416 INFO    ] 2026-08-31 11:19:32
[2026-08-31 11:19:32,466.466 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:19:32,706.706 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:19:32,714.714 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:19:32,948.948 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:19:33,000.000 INFO    ] time= 31/08/2026 11:19:32
[2026-08-31 11:19:33,006.006 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:19:33,026.026 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:19:33,163.163 INFO    ] No existing commands found in stream
[2026-08-31 11:19:38,194.194 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:19:38,197.197 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-08-31 11:19:40,243.243 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 11:19:40,245.245 INFO    ] Checking for system updates...
[2026-08-31 11:19:40,286.286 INFO    ] 200
[2026-08-31 11:19:40,288.288 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:19:40,342.342 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:19:40,345.345 INFO    ] No update needed
[2026-08-31 11:19:40,348.348 INFO    ] Checking for camera pi updates...
[2026-08-31 11:19:40,387.387 INFO    ] 200
[2026-08-31 11:19:40,390.390 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:19:40,438.438 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:19:40,532.532 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:19:40,535.535 INFO    ] No camera update needed
[2026-08-31 11:19:40,538.538 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:19:40,541.541 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:19:40,547.547 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:19:40,553.553 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:19:42,595.595 INFO    ] ================================================
[2026-08-31 11:19:42,611.611 INFO    ] Launching Daemon at Mon Aug 31 11:19:42 IST 2026
[2026-08-31 11:19:42,623.623 INFO    ] ================================================
[2026-08-31 11:19:43,202.202 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:19:43
[2026-08-31 11:19:43,799.799 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:19:44,077.077 INFO    ] Initializing speech engine...
[2026-08-31 11:19:44,087.087 INFO    ] 2026-08-31 11:19:44
[2026-08-31 11:19:44,347.347 INFO    ] 2026-08-31 11:19:44
[2026-08-31 11:19:44,398.398 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:19:44,625.625 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:19:44,631.631 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:19:44,824.824 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:19:44,874.874 INFO    ] time= 31/08/2026 11:19:44
[2026-08-31 11:19:44,892.892 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:19:44,906.906 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:19:45,040.040 INFO    ] No existing commands found in stream
[2026-08-31 11:19:50,059.059 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:19:50,062.062 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-08-31 11:19:54,023.023 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 11:19:54,026.026 INFO    ] Checking for system updates...
[2026-08-31 11:19:54,061.061 INFO    ] 200
[2026-08-31 11:19:54,063.063 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:19:54,119.119 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:19:54,122.122 INFO    ] No update needed
[2026-08-31 11:19:54,126.126 INFO    ] Checking for camera pi updates...
[2026-08-31 11:19:54,178.178 INFO    ] 200
[2026-08-31 11:19:54,180.180 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:19:54,227.227 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:19:54,297.297 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:19:54,299.299 INFO    ] No camera update needed
[2026-08-31 11:19:54,302.302 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:19:54,304.304 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:19:54,310.310 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:19:54,315.315 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:19:56,357.357 INFO    ] ================================================
[2026-08-31 11:19:56,373.373 INFO    ] Launching Daemon at Mon Aug 31 11:19:56 IST 2026
[2026-08-31 11:19:56,384.384 INFO    ] ================================================
[2026-08-31 11:19:57,052.052 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:19:57
[2026-08-31 11:19:57,742.742 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:19:58,051.051 INFO    ] Initializing speech engine...
[2026-08-31 11:19:58,064.064 INFO    ] 2026-08-31 11:19:58
[2026-08-31 11:19:58,377.377 INFO    ] 2026-08-31 11:19:58
[2026-08-31 11:19:58,463.463 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:19:58,674.674 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:19:58,682.682 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:19:58,880.880 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:19:58,897.897 INFO    ] time= 31/08/2026 11:19:58
[2026-08-31 11:19:58,906.906 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:19:58,916.916 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:19:59,045.045 INFO    ] No existing commands found in stream
[2026-08-31 11:20:04,085.085 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:20:04,088.088 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-08-31 11:20:08,204.204 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 11:20:08,207.207 INFO    ] Checking for system updates...
[2026-08-31 11:20:08,248.248 INFO    ] 200
[2026-08-31 11:20:08,251.251 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:20:08,305.305 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:20:08,308.308 INFO    ] No update needed
[2026-08-31 11:20:08,311.311 INFO    ] Checking for camera pi updates...
[2026-08-31 11:20:08,349.349 INFO    ] 200
[2026-08-31 11:20:08,351.351 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:20:08,391.391 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:20:08,485.485 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:20:08,487.487 INFO    ] No camera update needed
[2026-08-31 11:20:08,490.490 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:20:08,492.492 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:20:08,498.498 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:20:08,503.503 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:20:10,545.545 INFO    ] ================================================
[2026-08-31 11:20:10,561.561 INFO    ] Launching Daemon at Mon Aug 31 11:20:10 IST 2026
[2026-08-31 11:20:10,573.573 INFO    ] ================================================
[2026-08-31 11:20:11,139.139 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:20:11
[2026-08-31 11:20:11,722.722 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:20:11,980.980 INFO    ] Initializing speech engine...
[2026-08-31 11:20:11,986.986 INFO    ] 2026-08-31 11:20:11
[2026-08-31 11:20:12,283.283 INFO    ] 2026-08-31 11:20:12
[2026-08-31 11:20:12,317.317 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:20:12,528.528 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:20:12,545.545 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:20:12,694.694 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:20:12,699.699 INFO    ] time= 31/08/2026 11:20:12
[2026-08-31 11:20:12,705.705 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:20:12,711.711 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:20:12,849.849 INFO    ] No existing commands found in stream
[2026-08-31 11:20:17,874.874 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:20:17,877.877 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-08-31 11:20:20,409.409 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 11:20:20,412.412 INFO    ] Checking for system updates...
[2026-08-31 11:20:20,448.448 INFO    ] 200
[2026-08-31 11:20:20,450.450 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:20:20,502.502 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:20:20,505.505 INFO    ] No update needed
[2026-08-31 11:20:20,507.507 INFO    ] Checking for camera pi updates...
[2026-08-31 11:20:20,540.540 INFO    ] 200
[2026-08-31 11:20:20,543.543 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:20:20,590.590 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:20:20,709.709 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:20:20,711.711 INFO    ] No camera update needed
[2026-08-31 11:20:20,713.713 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:20:20,716.716 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:20:20,721.721 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:20:20,726.726 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:20:22,768.768 INFO    ] ================================================
[2026-08-31 11:20:22,783.783 INFO    ] Launching Daemon at Mon Aug 31 11:20:22 IST 2026
[2026-08-31 11:20:22,794.794 INFO    ] ================================================
[2026-08-31 11:20:23,362.362 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:20:23
[2026-08-31 11:20:23,945.945 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:20:24,216.216 INFO    ] Initializing speech engine...
[2026-08-31 11:20:24,225.225 INFO    ] 2026-08-31 11:20:24
[2026-08-31 11:20:24,477.477 INFO    ] 2026-08-31 11:20:24
[2026-08-31 11:20:24,512.512 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:20:24,770.770 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:20:24,779.779 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:20:25,005.005 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:20:25,044.044 INFO    ] time= 31/08/2026 11:20:25
[2026-08-31 11:20:25,050.050 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:20:25,069.069 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:20:25,181.181 INFO    ] No existing commands found in stream
[2026-08-31 11:20:30,206.206 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:20:30,209.209 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-08-31 11:20:33,017.017 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 11:20:33,020.020 INFO    ] Checking for system updates...
[2026-08-31 11:20:33,055.055 INFO    ] 200
[2026-08-31 11:20:33,058.058 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:20:33,121.121 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:20:33,123.123 INFO    ] No update needed
[2026-08-31 11:20:33,125.125 INFO    ] Checking for camera pi updates...
[2026-08-31 11:20:33,159.159 INFO    ] 200
[2026-08-31 11:20:33,161.161 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:20:33,206.206 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:20:33,326.326 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:20:33,329.329 INFO    ] No camera update needed
[2026-08-31 11:20:33,332.332 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:20:33,334.334 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:20:33,340.340 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:20:33,346.346 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:20:35,387.387 INFO    ] ================================================
[2026-08-31 11:20:35,402.402 INFO    ] Launching Daemon at Mon Aug 31 11:20:35 IST 2026
[2026-08-31 11:20:35,414.414 INFO    ] ================================================
[2026-08-31 11:20:35,987.987 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:20:35
[2026-08-31 11:20:36,570.570 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:20:36,821.821 INFO    ] Initializing speech engine...
[2026-08-31 11:20:36,827.827 INFO    ] 2026-08-31 11:20:36
[2026-08-31 11:20:37,127.127 INFO    ] 2026-08-31 11:20:37
[2026-08-31 11:20:37,165.165 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:20:37,393.393 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:20:37,438.438 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:20:37,618.618 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:20:37,655.655 INFO    ] time= 31/08/2026 11:20:37
[2026-08-31 11:20:37,705.705 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:20:37,754.754 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:20:37,925.925 INFO    ] No existing commands found in stream
[2026-08-31 11:20:42,951.951 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:20:42,953.953 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-08-31 11:20:46,252.252 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 11:20:46,255.255 INFO    ] Checking for system updates...
[2026-08-31 11:20:46,290.290 INFO    ] 200
[2026-08-31 11:20:46,293.293 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:20:46,353.353 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:20:46,355.355 INFO    ] No update needed
[2026-08-31 11:20:46,358.358 INFO    ] Checking for camera pi updates...
[2026-08-31 11:20:46,391.391 INFO    ] 200
[2026-08-31 11:20:46,393.393 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:20:46,433.433 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:20:46,563.563 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:20:46,566.566 INFO    ] No camera update needed
[2026-08-31 11:20:46,568.568 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:20:46,570.570 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:20:46,576.576 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:20:46,581.581 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:20:48,621.621 INFO    ] ================================================
[2026-08-31 11:20:48,637.637 INFO    ] Launching Daemon at Mon Aug 31 11:20:48 IST 2026
[2026-08-31 11:20:48,648.648 INFO    ] ================================================
[2026-08-31 11:20:49,309.309 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:20:49
[2026-08-31 11:20:49,918.918 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:20:50,195.195 INFO    ] Initializing speech engine...
[2026-08-31 11:20:50,201.201 INFO    ] 2026-08-31 11:20:50
[2026-08-31 11:20:50,450.450 INFO    ] 2026-08-31 11:20:50
[2026-08-31 11:20:50,485.485 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:20:50,691.691 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:20:50,700.700 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:20:50,850.850 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:20:50,855.855 INFO    ] time= 31/08/2026 11:20:50
[2026-08-31 11:20:50,863.863 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:20:50,902.902 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:20:51,035.035 INFO    ] No existing commands found in stream
[2026-08-31 11:20:56,060.060 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:20:56,063.063 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-08-31 11:21:00,427.427 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 11:21:00,430.430 INFO    ] Checking for system updates...
[2026-08-31 11:21:00,466.466 INFO    ] 200
[2026-08-31 11:21:00,469.469 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:21:00,530.530 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:21:00,534.534 INFO    ] No update needed
[2026-08-31 11:21:00,536.536 INFO    ] Checking for camera pi updates...
[2026-08-31 11:21:00,571.571 INFO    ] 200
[2026-08-31 11:21:00,574.574 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:21:00,615.615 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:21:00,817.817 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:21:00,820.820 INFO    ] No camera update needed
[2026-08-31 11:21:00,823.823 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:21:00,826.826 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:21:00,832.832 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:21:00,838.838 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:21:02,884.884 INFO    ] ================================================
[2026-08-31 11:21:02,905.905 INFO    ] Launching Daemon at Mon Aug 31 11:21:02 IST 2026
[2026-08-31 11:21:02,922.922 INFO    ] ================================================
[2026-08-31 11:21:03,565.565 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:21:03
[2026-08-31 11:21:04,184.184 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:21:04,443.443 INFO    ] Initializing speech engine...
[2026-08-31 11:21:04,452.452 INFO    ] 2026-08-31 11:21:04
[2026-08-31 11:21:04,744.744 INFO    ] 2026-08-31 11:21:04
[2026-08-31 11:21:04,787.787 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:21:05,035.035 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:21:05,046.046 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:21:05,196.196 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:21:05,267.267 INFO    ] time= 31/08/2026 11:21:05
[2026-08-31 11:21:05,310.310 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:21:05,328.328 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:21:05,452.452 INFO    ] No existing commands found in stream
[2026-08-31 11:21:10,472.472 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:21:10,475.475 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-08-31 11:21:13,129.129 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 11:21:13,132.132 INFO    ] Checking for system updates...
[2026-08-31 11:21:13,169.169 INFO    ] 200
[2026-08-31 11:21:13,172.172 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:21:13,225.225 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:21:13,228.228 INFO    ] No update needed
[2026-08-31 11:21:13,231.231 INFO    ] Checking for camera pi updates...
[2026-08-31 11:21:13,269.269 INFO    ] 200
[2026-08-31 11:21:13,272.272 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:21:13,313.313 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:21:13,397.397 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:21:13,400.400 INFO    ] No camera update needed
[2026-08-31 11:21:13,403.403 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:21:13,405.405 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:21:13,411.411 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:21:13,417.417 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:21:15,458.458 INFO    ] ================================================
[2026-08-31 11:21:15,473.473 INFO    ] Launching Daemon at Mon Aug 31 11:21:15 IST 2026
[2026-08-31 11:21:15,483.483 INFO    ] ================================================
[2026-08-31 11:21:16,054.054 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:21:16
[2026-08-31 11:21:16,638.638 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:21:16,896.896 INFO    ] Initializing speech engine...
[2026-08-31 11:21:16,921.921 INFO    ] 2026-08-31 11:21:16
[2026-08-31 11:21:17,194.194 INFO    ] 2026-08-31 11:21:17
[2026-08-31 11:21:17,229.229 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:21:17,423.423 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:21:17,438.438 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:21:17,602.602 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:21:17,607.607 INFO    ] time= 31/08/2026 11:21:17
[2026-08-31 11:21:17,613.613 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:21:17,635.635 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:21:17,776.776 INFO    ] No existing commands found in stream
[2026-08-31 11:21:22,797.797 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:21:22,800.800 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-08-31 11:21:26,662.662 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 11:21:26,665.665 INFO    ] Checking for system updates...
[2026-08-31 11:21:26,704.704 INFO    ] 200
[2026-08-31 11:21:26,706.706 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:21:26,768.768 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:21:26,771.771 INFO    ] No update needed
[2026-08-31 11:21:26,773.773 INFO    ] Checking for camera pi updates...
[2026-08-31 11:21:26,806.806 INFO    ] 200
[2026-08-31 11:21:26,809.809 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:21:26,849.849 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:21:26,938.938 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:21:26,940.940 INFO    ] No camera update needed
[2026-08-31 11:21:26,943.943 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:21:26,946.946 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:21:26,952.952 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:21:26,957.957 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:21:29,998.998 INFO    ] ================================================
[2026-08-31 11:21:29,013.013 INFO    ] Launching Daemon at Mon Aug 31 11:21:29 IST 2026
[2026-08-31 11:21:29,024.024 INFO    ] ================================================
[2026-08-31 11:21:29,608.608 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:21:29
[2026-08-31 11:21:30,210.210 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:21:30,487.487 INFO    ] Initializing speech engine...
[2026-08-31 11:21:30,496.496 INFO    ] 2026-08-31 11:21:30
[2026-08-31 11:21:30,754.754 INFO    ] 2026-08-31 11:21:30
[2026-08-31 11:21:30,784.784 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:21:31,034.034 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:21:31,039.039 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:21:31,234.234 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:21:31,300.300 INFO    ] time= 31/08/2026 11:21:31
[2026-08-31 11:21:31,307.307 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:21:31,325.325 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:21:31,452.452 INFO    ] No existing commands found in stream
[2026-08-31 11:21:36,467.467 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:21:36,470.470 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-08-31 11:21:39,415.415 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 11:21:39,417.417 INFO    ] Checking for system updates...
[2026-08-31 11:21:39,453.453 INFO    ] 200
[2026-08-31 11:21:39,455.455 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:21:39,507.507 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:21:39,509.509 INFO    ] No update needed
[2026-08-31 11:21:39,512.512 INFO    ] Checking for camera pi updates...
[2026-08-31 11:21:39,549.549 INFO    ] 200
[2026-08-31 11:21:39,551.551 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:21:39,592.592 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:21:39,707.707 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:21:39,709.709 INFO    ] No camera update needed
[2026-08-31 11:21:39,712.712 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:21:39,715.715 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:21:39,721.721 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:21:39,727.727 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:21:41,769.769 INFO    ] ================================================
[2026-08-31 11:21:41,784.784 INFO    ] Launching Daemon at Mon Aug 31 11:21:41 IST 2026
[2026-08-31 11:21:41,795.795 INFO    ] ================================================
[2026-08-31 11:21:42,378.378 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:21:42
[2026-08-31 11:21:42,978.978 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:21:43,255.255 INFO    ] Initializing speech engine...
[2026-08-31 11:21:43,262.262 INFO    ] 2026-08-31 11:21:43
[2026-08-31 11:21:43,523.523 INFO    ] 2026-08-31 11:21:43
[2026-08-31 11:21:43,578.578 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:21:43,806.806 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:21:43,811.811 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:21:44,034.034 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:21:44,068.068 INFO    ] time= 31/08/2026 11:21:44
[2026-08-31 11:21:44,074.074 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:21:44,091.091 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:21:44,216.216 INFO    ] No existing commands found in stream
[2026-08-31 11:21:49,233.233 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:21:49,236.236 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-08-31 11:21:51,575.575 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 11:21:51,578.578 INFO    ] Checking for system updates...
[2026-08-31 11:21:51,614.614 INFO    ] 200
[2026-08-31 11:21:51,617.617 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:21:51,670.670 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:21:51,672.672 INFO    ] No update needed
[2026-08-31 11:21:51,674.674 INFO    ] Checking for camera pi updates...
[2026-08-31 11:21:51,709.709 INFO    ] 200
[2026-08-31 11:21:51,712.712 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:21:51,757.757 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:21:51,847.847 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:21:51,850.850 INFO    ] No camera update needed
[2026-08-31 11:21:51,852.852 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:21:51,855.855 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:21:51,860.860 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:21:51,865.865 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:21:53,907.907 INFO    ] ================================================
[2026-08-31 11:21:53,922.922 INFO    ] Launching Daemon at Mon Aug 31 11:21:53 IST 2026
[2026-08-31 11:21:53,933.933 INFO    ] ================================================
[2026-08-31 11:21:54,590.590 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:21:54
[2026-08-31 11:21:55,269.269 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:21:55,574.574 INFO    ] Initializing speech engine...
[2026-08-31 11:21:55,583.583 INFO    ] 2026-08-31 11:21:55
[2026-08-31 11:21:55,873.873 INFO    ] 2026-08-31 11:21:55
[2026-08-31 11:21:55,921.921 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:21:56,276.276 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:21:56,288.288 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:21:56,460.460 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:21:56,469.469 INFO    ] time= 31/08/2026 11:21:56
[2026-08-31 11:21:56,478.478 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:21:56,494.494 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:21:56,628.628 INFO    ] No existing commands found in stream
[2026-08-31 11:22:01,653.653 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:22:01,657.657 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-08-31 11:22:06,214.214 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 11:22:06,217.217 INFO    ] Checking for system updates...
[2026-08-31 11:22:06,254.254 INFO    ] 200
[2026-08-31 11:22:06,257.257 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:22:06,316.316 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:22:06,319.319 INFO    ] No update needed
[2026-08-31 11:22:06,322.322 INFO    ] Checking for camera pi updates...
[2026-08-31 11:22:06,357.357 INFO    ] 200
[2026-08-31 11:22:06,360.360 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:22:06,401.401 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:22:06,516.516 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:22:06,519.519 INFO    ] No camera update needed
[2026-08-31 11:22:06,522.522 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:22:06,524.524 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:22:06,531.531 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:22:06,536.536 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:22:08,577.577 INFO    ] ================================================
[2026-08-31 11:22:08,593.593 INFO    ] Launching Daemon at Mon Aug 31 11:22:08 IST 2026
[2026-08-31 11:22:08,603.603 INFO    ] ================================================
[2026-08-31 11:22:09,249.249 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:22:09
[2026-08-31 11:22:09,915.915 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:22:10,218.218 INFO    ] Initializing speech engine...
[2026-08-31 11:22:10,227.227 INFO    ] 2026-08-31 11:22:10
[2026-08-31 11:22:10,505.505 INFO    ] 2026-08-31 11:22:10
[2026-08-31 11:22:10,563.563 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:22:10,793.793 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:22:10,799.799 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:22:11,005.005 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:22:11,064.064 INFO    ] time= 31/08/2026 11:22:11
[2026-08-31 11:22:11,071.071 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:22:11,090.090 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:22:11,202.202 INFO    ] No existing commands found in stream
[2026-08-31 11:22:16,231.231 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:22:16,234.234 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-08-31 11:22:19,976.976 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 11:22:19,979.979 INFO    ] Checking for system updates...
[2026-08-31 11:22:20,016.016 INFO    ] 200
[2026-08-31 11:22:20,019.019 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:22:20,073.073 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:22:20,076.076 INFO    ] No update needed
[2026-08-31 11:22:20,079.079 INFO    ] Checking for camera pi updates...
[2026-08-31 11:22:20,117.117 INFO    ] 200
[2026-08-31 11:22:20,120.120 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:22:20,161.161 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:22:20,250.250 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:22:20,253.253 INFO    ] No camera update needed
[2026-08-31 11:22:20,255.255 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:22:20,258.258 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:22:20,264.264 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:22:20,270.270 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:22:22,310.310 INFO    ] ================================================
[2026-08-31 11:22:22,325.325 INFO    ] Launching Daemon at Mon Aug 31 11:22:22 IST 2026
[2026-08-31 11:22:22,335.335 INFO    ] ================================================
[2026-08-31 11:22:22,905.905 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:22:22
[2026-08-31 11:22:23,503.503 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:22:23,778.778 INFO    ] Initializing speech engine...
[2026-08-31 11:22:23,796.796 INFO    ] 2026-08-31 11:22:23
[2026-08-31 11:22:24,067.067 INFO    ] 2026-08-31 11:22:24
[2026-08-31 11:22:24,103.103 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:22:24,332.332 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:22:24,397.397 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:22:24,555.555 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:22:24,562.562 INFO    ] time= 31/08/2026 11:22:24
[2026-08-31 11:22:24,622.622 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:22:24,671.671 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:22:24,822.822 INFO    ] No existing commands found in stream
[2026-08-31 11:22:29,849.849 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:22:29,851.851 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-08-31 11:22:32,490.490 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 11:22:32,493.493 INFO    ] Checking for system updates...
[2026-08-31 11:22:32,532.532 INFO    ] 200
[2026-08-31 11:22:32,534.534 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:22:32,593.593 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:22:32,596.596 INFO    ] No update needed
[2026-08-31 11:22:32,599.599 INFO    ] Checking for camera pi updates...
[2026-08-31 11:22:32,639.639 INFO    ] 200
[2026-08-31 11:22:32,642.642 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:22:32,686.686 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:22:32,808.808 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:22:32,811.811 INFO    ] No camera update needed
[2026-08-31 11:22:32,813.813 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:22:32,816.816 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:22:32,822.822 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:22:32,829.829 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:22:34,870.870 INFO    ] ================================================
[2026-08-31 11:22:34,891.891 INFO    ] Launching Daemon at Mon Aug 31 11:22:34 IST 2026
[2026-08-31 11:22:34,908.908 INFO    ] ================================================
[2026-08-31 11:22:35,490.490 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:22:35
[2026-08-31 11:22:36,088.088 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:22:36,361.361 INFO    ] Initializing speech engine...
[2026-08-31 11:22:36,371.371 INFO    ] 2026-08-31 11:22:36
[2026-08-31 11:22:36,633.633 INFO    ] 2026-08-31 11:22:36
[2026-08-31 11:22:36,687.687 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:22:36,908.908 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:22:36,918.918 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:22:37,129.129 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:22:37,175.175 INFO    ] time= 31/08/2026 11:22:37
[2026-08-31 11:22:37,181.181 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:22:37,199.199 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:22:37,327.327 INFO    ] No existing commands found in stream
[2026-08-31 11:22:42,342.342 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:22:42,345.345 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-08-31 11:22:46,309.309 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 11:22:46,311.311 INFO    ] Checking for system updates...
[2026-08-31 11:22:46,347.347 INFO    ] 200
[2026-08-31 11:22:46,350.350 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:22:46,402.402 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:22:46,405.405 INFO    ] No update needed
[2026-08-31 11:22:46,407.407 INFO    ] Checking for camera pi updates...
[2026-08-31 11:22:46,441.441 INFO    ] 200
[2026-08-31 11:22:46,443.443 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:22:46,488.488 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:22:46,574.574 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:22:46,577.577 INFO    ] No camera update needed
[2026-08-31 11:22:46,579.579 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:22:46,582.582 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:22:46,587.587 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:22:46,592.592 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:22:48,634.634 INFO    ] ================================================
[2026-08-31 11:22:48,649.649 INFO    ] Launching Daemon at Mon Aug 31 11:22:48 IST 2026
[2026-08-31 11:22:48,659.659 INFO    ] ================================================
[2026-08-31 11:22:49,225.225 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:22:49
[2026-08-31 11:22:49,828.828 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:22:50,092.092 INFO    ] Initializing speech engine...
[2026-08-31 11:22:50,099.099 INFO    ] 2026-08-31 11:22:50
[2026-08-31 11:22:50,396.396 INFO    ] 2026-08-31 11:22:50
[2026-08-31 11:22:50,434.434 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:22:50,652.652 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:22:50,670.670 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:22:50,855.855 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:22:50,910.910 INFO    ] time= 31/08/2026 11:22:50
[2026-08-31 11:22:50,913.913 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:22:50,916.916 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:22:51,012.012 INFO    ] No existing commands found in stream
[2026-08-31 11:22:56,028.028 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:22:56,031.031 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-08-31 11:22:58,645.645 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 11:22:58,648.648 INFO    ] Checking for system updates...
[2026-08-31 11:22:58,685.685 INFO    ] 200
[2026-08-31 11:22:58,687.687 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:22:58,745.745 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:22:58,748.748 INFO    ] No update needed
[2026-08-31 11:22:58,750.750 INFO    ] Checking for camera pi updates...
[2026-08-31 11:22:58,784.784 INFO    ] 200
[2026-08-31 11:22:58,786.786 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:22:58,827.827 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:22:58,927.927 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:22:58,930.930 INFO    ] No camera update needed
[2026-08-31 11:22:58,933.933 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:22:58,935.935 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:22:58,941.941 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:22:58,946.946 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:23:00,985.985 INFO    ] ================================================
[2026-08-31 11:23:01,000.000 INFO    ] Launching Daemon at Mon Aug 31 11:23:00 IST 2026
[2026-08-31 11:23:01,010.010 INFO    ] ================================================
[2026-08-31 11:23:01,581.581 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:23:01
[2026-08-31 11:23:02,332.332 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:23:02,665.665 INFO    ] Initializing speech engine...
[2026-08-31 11:23:02,681.681 INFO    ] 2026-08-31 11:23:02
[2026-08-31 11:23:03,018.018 INFO    ] 2026-08-31 11:23:03
[2026-08-31 11:23:03,060.060 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:23:03,327.327 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:23:03,358.358 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:23:03,553.553 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:23:03,570.570 INFO    ] time= 31/08/2026 11:23:03
[2026-08-31 11:23:03,630.630 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:23:03,679.679 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:23:03,771.771 INFO    ] No existing commands found in stream
[2026-08-31 11:23:08,804.804 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:23:08,806.806 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-08-31 11:23:12,846.846 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 11:23:12,848.848 INFO    ] Checking for system updates...
[2026-08-31 11:23:12,884.884 INFO    ] 200
[2026-08-31 11:23:12,886.886 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:23:12,941.941 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:23:12,943.943 INFO    ] No update needed
[2026-08-31 11:23:12,946.946 INFO    ] Checking for camera pi updates...
[2026-08-31 11:23:12,982.982 INFO    ] 200
[2026-08-31 11:23:12,984.984 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:23:13,029.029 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:23:13,118.118 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:23:13,120.120 INFO    ] No camera update needed
[2026-08-31 11:23:13,123.123 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:23:13,125.125 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:23:13,131.131 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:23:13,136.136 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:23:15,176.176 INFO    ] ================================================
[2026-08-31 11:23:15,191.191 INFO    ] Launching Daemon at Mon Aug 31 11:23:15 IST 2026
[2026-08-31 11:23:15,202.202 INFO    ] ================================================
[2026-08-31 11:23:15,856.856 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:23:15
[2026-08-31 11:23:16,522.522 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:23:16,821.821 INFO    ] Initializing speech engine...
[2026-08-31 11:23:16,828.828 INFO    ] 2026-08-31 11:23:16
[2026-08-31 11:23:17,102.102 INFO    ] 2026-08-31 11:23:17
[2026-08-31 11:23:17,159.159 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:23:17,411.411 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:23:17,431.431 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:23:17,633.633 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:23:17,655.655 INFO    ] time= 31/08/2026 11:23:17
[2026-08-31 11:23:17,677.677 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:23:17,703.703 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:23:17,835.835 INFO    ] No existing commands found in stream
[2026-08-31 11:23:22,866.866 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:23:22,869.869 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-08-31 11:23:26,587.587 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 11:23:26,590.590 INFO    ] Checking for system updates...
[2026-08-31 11:23:26,628.628 INFO    ] 200
[2026-08-31 11:23:26,631.631 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:23:26,684.684 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:23:26,686.686 INFO    ] No update needed
[2026-08-31 11:23:26,689.689 INFO    ] Checking for camera pi updates...
[2026-08-31 11:23:26,727.727 INFO    ] 200
[2026-08-31 11:23:26,730.730 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:23:26,776.776 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:23:26,846.846 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:23:26,849.849 INFO    ] No camera update needed
[2026-08-31 11:23:26,852.852 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:23:26,854.854 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:23:26,861.861 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:23:26,867.867 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:23:28,909.909 INFO    ] ================================================
[2026-08-31 11:23:28,924.924 INFO    ] Launching Daemon at Mon Aug 31 11:23:28 IST 2026
[2026-08-31 11:23:28,935.935 INFO    ] ================================================
[2026-08-31 11:23:29,580.580 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:23:29
[2026-08-31 11:23:30,245.245 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:23:30,544.544 INFO    ] Initializing speech engine...
[2026-08-31 11:23:30,551.551 INFO    ] 2026-08-31 11:23:30
[2026-08-31 11:23:30,839.839 INFO    ] 2026-08-31 11:23:30
[2026-08-31 11:23:30,884.884 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:23:31,109.109 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:23:31,115.115 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:23:31,344.344 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:23:31,373.373 INFO    ] time= 31/08/2026 11:23:31
[2026-08-31 11:23:31,390.390 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:23:31,415.415 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:23:31,572.572 INFO    ] No existing commands found in stream
[2026-08-31 11:23:36,600.600 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:23:36,603.603 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-08-31 11:23:38,903.903 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 11:23:38,906.906 INFO    ] Checking for system updates...
[2026-08-31 11:23:38,947.947 INFO    ] 200
[2026-08-31 11:23:38,950.950 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:23:39,007.007 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:23:39,010.010 INFO    ] No update needed
[2026-08-31 11:23:39,013.013 INFO    ] Checking for camera pi updates...
[2026-08-31 11:23:39,051.051 INFO    ] 200
[2026-08-31 11:23:39,053.053 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:23:39,104.104 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:23:39,173.173 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:23:39,175.175 INFO    ] No camera update needed
[2026-08-31 11:23:39,178.178 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:23:39,181.181 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:23:39,187.187 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:23:39,193.193 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:23:41,233.233 INFO    ] ================================================
[2026-08-31 11:23:41,248.248 INFO    ] Launching Daemon at Mon Aug 31 11:23:41 IST 2026
[2026-08-31 11:23:41,259.259 INFO    ] ================================================
[2026-08-31 11:23:41,906.906 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:23:41
[2026-08-31 11:23:42,573.573 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:23:42,874.874 INFO    ] Initializing speech engine...
[2026-08-31 11:23:42,887.887 INFO    ] 2026-08-31 11:23:42
[2026-08-31 11:23:43,198.198 INFO    ] 2026-08-31 11:23:43
[2026-08-31 11:23:43,280.280 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:23:43,493.493 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:23:43,498.498 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:23:43,692.692 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:23:43,711.711 INFO    ] time= 31/08/2026 11:23:43
[2026-08-31 11:23:43,742.742 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:23:43,751.751 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:23:43,852.852 INFO    ] No existing commands found in stream
[2026-08-31 11:23:48,877.877 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:23:48,880.880 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-08-31 11:23:53,172.172 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 11:23:53,174.174 INFO    ] Checking for system updates...
[2026-08-31 11:23:53,209.209 INFO    ] 200
[2026-08-31 11:23:53,212.212 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:23:53,272.272 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:23:53,274.274 INFO    ] No update needed
[2026-08-31 11:23:53,277.277 INFO    ] Checking for camera pi updates...
[2026-08-31 11:23:53,313.313 INFO    ] 200
[2026-08-31 11:23:53,316.316 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:23:53,360.360 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:23:53,430.430 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:23:53,433.433 INFO    ] No camera update needed
[2026-08-31 11:23:53,435.435 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:23:53,437.437 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:23:53,443.443 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:23:53,447.447 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:23:55,486.486 INFO    ] ================================================
[2026-08-31 11:23:55,501.501 INFO    ] Launching Daemon at Mon Aug 31 11:23:55 IST 2026
[2026-08-31 11:23:55,512.512 INFO    ] ================================================
[2026-08-31 11:23:56,077.077 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:23:56
[2026-08-31 11:23:56,661.661 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:23:56,907.907 INFO    ] Initializing speech engine...
[2026-08-31 11:23:56,915.915 INFO    ] 2026-08-31 11:23:56
[2026-08-31 11:23:57,191.191 INFO    ] 2026-08-31 11:23:57
[2026-08-31 11:23:57,225.225 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:23:57,424.424 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:23:57,447.447 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:23:57,565.565 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:23:57,571.571 INFO    ] time= 31/08/2026 11:23:57
[2026-08-31 11:23:57,617.617 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:23:57,639.639 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:23:57,770.770 INFO    ] No existing commands found in stream
[2026-08-31 11:24:02,780.780 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:24:02,783.783 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-08-31 11:24:04,043.043 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 11:24:04,046.046 INFO    ] Checking for system updates...
[2026-08-31 11:24:04,081.081 INFO    ] 200
[2026-08-31 11:24:04,083.083 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:24:04,142.142 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:24:04,144.144 INFO    ] No update needed
[2026-08-31 11:24:04,146.146 INFO    ] Checking for camera pi updates...
[2026-08-31 11:24:04,180.180 INFO    ] 200
[2026-08-31 11:24:04,182.182 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:24:04,223.223 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:24:04,316.316 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:24:04,319.319 INFO    ] No camera update needed
[2026-08-31 11:24:04,321.321 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:24:04,323.323 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:24:04,329.329 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:24:04,334.334 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:24:06,377.377 INFO    ] ================================================
[2026-08-31 11:24:06,392.392 INFO    ] Launching Daemon at Mon Aug 31 11:24:06 IST 2026
[2026-08-31 11:24:06,403.403 INFO    ] ================================================
[2026-08-31 11:24:06,984.984 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:24:06
[2026-08-31 11:24:07,567.567 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:24:07,838.838 INFO    ] Initializing speech engine...
[2026-08-31 11:24:07,843.843 INFO    ] 2026-08-31 11:24:07
[2026-08-31 11:24:08,089.089 INFO    ] 2026-08-31 11:24:08
[2026-08-31 11:24:08,123.123 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:24:08,378.378 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:24:08,383.383 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:24:08,515.515 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:24:08,580.580 INFO    ] time= 31/08/2026 11:24:08
[2026-08-31 11:24:08,641.641 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:24:08,648.648 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:24:08,788.788 INFO    ] No existing commands found in stream
[2026-08-31 11:24:13,803.803 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:24:13,806.806 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-08-31 11:24:14,828.828 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 11:24:14,831.831 INFO    ] Checking for system updates...
[2026-08-31 11:24:14,868.868 INFO    ] 200
[2026-08-31 11:24:14,870.870 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:24:14,929.929 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:24:14,932.932 INFO    ] No update needed
[2026-08-31 11:24:14,934.934 INFO    ] Checking for camera pi updates...
[2026-08-31 11:24:14,972.972 INFO    ] 200
[2026-08-31 11:24:14,974.974 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:24:15,020.020 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:24:15,137.137 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:24:15,140.140 INFO    ] No camera update needed
[2026-08-31 11:24:15,142.142 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:24:15,144.144 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:24:15,150.150 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:24:15,155.155 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:24:17,196.196 INFO    ] ================================================
[2026-08-31 11:24:17,210.210 INFO    ] Launching Daemon at Mon Aug 31 11:24:17 IST 2026
[2026-08-31 11:24:17,221.221 INFO    ] ================================================
[2026-08-31 11:24:17,787.787 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:24:17
[2026-08-31 11:24:18,370.370 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:24:18,637.637 INFO    ] Initializing speech engine...
[2026-08-31 11:24:18,646.646 INFO    ] 2026-08-31 11:24:18
[2026-08-31 11:24:18,890.890 INFO    ] 2026-08-31 11:24:18
[2026-08-31 11:24:18,926.926 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:24:19,176.176 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:24:19,185.185 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:24:19,319.319 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:24:19,379.379 INFO    ] time= 31/08/2026 11:24:19
[2026-08-31 11:24:19,433.433 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:24:19,449.449 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:24:19,596.596 INFO    ] No existing commands found in stream
[2026-08-31 11:24:24,609.609 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:24:24,612.612 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-08-31 11:24:27,186.186 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 11:24:27,188.188 INFO    ] Checking for system updates...
[2026-08-31 11:24:27,228.228 INFO    ] 200
[2026-08-31 11:24:27,230.230 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:24:27,288.288 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:24:27,291.291 INFO    ] No update needed
[2026-08-31 11:24:27,293.293 INFO    ] Checking for camera pi updates...
[2026-08-31 11:24:27,331.331 INFO    ] 200
[2026-08-31 11:24:27,333.333 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:24:27,379.379 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:24:27,480.480 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:24:27,482.482 INFO    ] No camera update needed
[2026-08-31 11:24:27,485.485 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:24:27,487.487 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:24:27,493.493 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:24:27,498.498 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:24:29,538.538 INFO    ] ================================================
[2026-08-31 11:24:29,553.553 INFO    ] Launching Daemon at Mon Aug 31 11:24:29 IST 2026
[2026-08-31 11:24:29,567.567 INFO    ] ================================================
[2026-08-31 11:24:30,132.132 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:24:30
[2026-08-31 11:24:30,728.728 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:24:30,988.988 INFO    ] Initializing speech engine...
[2026-08-31 11:24:30,995.995 INFO    ] 2026-08-31 11:24:30
[2026-08-31 11:24:31,289.289 INFO    ] 2026-08-31 11:24:31
[2026-08-31 11:24:31,328.328 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:24:31,534.534 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:24:31,551.551 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:24:31,755.755 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:24:31,790.790 INFO    ] time= 31/08/2026 11:24:31
[2026-08-31 11:24:31,845.845 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:24:31,892.892 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:24:32,010.010 INFO    ] No existing commands found in stream
[2026-08-31 11:24:37,051.051 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:24:37,055.055 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-08-31 11:24:39,687.687 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 11:24:39,691.691 INFO    ] Checking for system updates...
[2026-08-31 11:24:39,734.734 INFO    ] 200
[2026-08-31 11:24:39,737.737 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:24:39,792.792 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:24:39,795.795 INFO    ] No update needed
[2026-08-31 11:24:39,798.798 INFO    ] Checking for camera pi updates...
[2026-08-31 11:24:39,838.838 INFO    ] 200
[2026-08-31 11:24:39,840.840 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:24:39,883.883 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:24:39,975.975 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:24:39,978.978 INFO    ] No camera update needed
[2026-08-31 11:24:39,980.980 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:24:39,983.983 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:24:39,990.990 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:24:39,995.995 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:24:42,038.038 INFO    ] ================================================
[2026-08-31 11:24:42,054.054 INFO    ] Launching Daemon at Mon Aug 31 11:24:42 IST 2026
[2026-08-31 11:24:42,065.065 INFO    ] ================================================
[2026-08-31 11:24:42,710.710 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:24:42
[2026-08-31 11:24:43,336.336 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:24:43,629.629 INFO    ] Initializing speech engine...
[2026-08-31 11:24:43,638.638 INFO    ] 2026-08-31 11:24:43
[2026-08-31 11:24:43,905.905 INFO    ] 2026-08-31 11:24:43
[2026-08-31 11:24:43,940.940 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:24:44,850.850 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:24:44,875.875 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:24:45,369.369 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:24:45,377.377 INFO    ] time= 31/08/2026 11:24:45
[2026-08-31 11:24:45,383.383 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:24:45,391.391 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:24:47,316.316 INFO    ] No existing commands found in stream
[2026-08-31 11:24:52,325.325 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:24:52,328.328 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-08-31 11:24:52,869.869 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 11:24:52,872.872 INFO    ] Checking for system updates...
[2026-08-31 11:24:52,912.912 INFO    ] 200
[2026-08-31 11:24:52,914.914 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:24:52,974.974 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:24:52,977.977 INFO    ] No update needed
[2026-08-31 11:24:52,979.979 INFO    ] Checking for camera pi updates...
[2026-08-31 11:24:53,017.017 INFO    ] 200
[2026-08-31 11:24:53,020.020 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:24:53,066.066 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:24:53,157.157 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:24:53,160.160 INFO    ] No camera update needed
[2026-08-31 11:24:53,162.162 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:24:53,164.164 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:24:53,170.170 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:24:53,175.175 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:24:55,216.216 INFO    ] ================================================
[2026-08-31 11:24:55,231.231 INFO    ] Launching Daemon at Mon Aug 31 11:24:55 IST 2026
[2026-08-31 11:24:55,242.242 INFO    ] ================================================
[2026-08-31 11:24:55,807.807 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:24:55
[2026-08-31 11:24:56,389.389 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:24:56,655.655 INFO    ] Initializing speech engine...
[2026-08-31 11:24:56,664.664 INFO    ] 2026-08-31 11:24:56
[2026-08-31 11:24:56,914.914 INFO    ] 2026-08-31 11:24:56
[2026-08-31 11:24:56,948.948 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:24:57,198.198 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:24:57,207.207 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:24:57,413.413 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:24:57,468.468 INFO    ] time= 31/08/2026 11:24:57
[2026-08-31 11:24:57,474.474 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:24:57,492.492 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:24:57,635.635 INFO    ] No existing commands found in stream
[2026-08-31 11:25:02,667.667 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:25:02,670.670 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-08-31 11:25:04,651.651 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 11:25:04,654.654 INFO    ] Checking for system updates...
[2026-08-31 11:25:04,694.694 INFO    ] 200
[2026-08-31 11:25:04,696.696 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:25:04,749.749 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:25:04,751.751 INFO    ] No update needed
[2026-08-31 11:25:04,753.753 INFO    ] Checking for camera pi updates...
[2026-08-31 11:25:04,787.787 INFO    ] 200
[2026-08-31 11:25:04,790.790 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:25:04,831.831 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:25:05,026.026 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:25:05,029.029 INFO    ] No camera update needed
[2026-08-31 11:25:05,031.031 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:25:05,033.033 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:25:05,039.039 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:25:05,044.044 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:25:07,085.085 INFO    ] ================================================
[2026-08-31 11:25:07,100.100 INFO    ] Launching Daemon at Mon Aug 31 11:25:07 IST 2026
[2026-08-31 11:25:07,111.111 INFO    ] ================================================
[2026-08-31 11:25:07,680.680 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:25:07
[2026-08-31 11:25:08,266.266 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:25:08,515.515 INFO    ] Initializing speech engine...
[2026-08-31 11:25:08,536.536 INFO    ] 2026-08-31 11:25:08
[2026-08-31 11:25:08,797.797 INFO    ] 2026-08-31 11:25:08
[2026-08-31 11:25:08,832.832 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:25:09,067.067 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:25:09,095.095 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:25:09,244.244 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:25:09,314.314 INFO    ] time= 31/08/2026 11:25:09
[2026-08-31 11:25:09,371.371 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:25:09,377.377 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:25:09,526.526 INFO    ] No existing commands found in stream
[2026-08-31 11:25:14,539.539 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:25:14,542.542 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-08-31 11:25:18,028.028 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 11:25:18,031.031 INFO    ] Checking for system updates...
[2026-08-31 11:25:18,066.066 INFO    ] 200
[2026-08-31 11:25:18,069.069 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:25:18,122.122 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:25:18,124.124 INFO    ] No update needed
[2026-08-31 11:25:18,127.127 INFO    ] Checking for camera pi updates...
[2026-08-31 11:25:18,164.164 INFO    ] 200
[2026-08-31 11:25:18,167.167 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:25:18,212.212 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:25:18,331.331 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:25:18,334.334 INFO    ] No camera update needed
[2026-08-31 11:25:18,336.336 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:25:18,338.338 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:25:18,344.344 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:25:18,349.349 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:25:20,391.391 INFO    ] ================================================
[2026-08-31 11:25:20,406.406 INFO    ] Launching Daemon at Mon Aug 31 11:25:20 IST 2026
[2026-08-31 11:25:20,416.416 INFO    ] ================================================
[2026-08-31 11:25:21,026.026 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:25:21
[2026-08-31 11:25:21,614.614 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:25:21,887.887 INFO    ] Initializing speech engine...
[2026-08-31 11:25:21,896.896 INFO    ] 2026-08-31 11:25:21
[2026-08-31 11:25:22,142.142 INFO    ] 2026-08-31 11:25:22
[2026-08-31 11:25:22,178.178 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:25:22,378.378 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:25:22,419.419 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:25:22,581.581 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:25:22,625.625 INFO    ] time= 31/08/2026 11:25:22
[2026-08-31 11:25:22,684.684 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:25:22,713.713 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:25:22,839.839 INFO    ] No existing commands found in stream
[2026-08-31 11:25:27,869.869 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:25:27,872.872 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-08-31 11:25:28,765.765 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 11:25:28,767.767 INFO    ] Checking for system updates...
[2026-08-31 11:25:28,807.807 INFO    ] 200
[2026-08-31 11:25:28,809.809 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:25:28,869.869 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:25:28,872.872 INFO    ] No update needed
[2026-08-31 11:25:28,874.874 INFO    ] Checking for camera pi updates...
[2026-08-31 11:25:28,911.911 INFO    ] 200
[2026-08-31 11:25:28,914.914 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:25:28,954.954 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:25:29,046.046 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:25:29,049.049 INFO    ] No camera update needed
[2026-08-31 11:25:29,051.051 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:25:29,053.053 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:25:29,059.059 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:25:29,064.064 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:25:31,104.104 INFO    ] ================================================
[2026-08-31 11:25:31,120.120 INFO    ] Launching Daemon at Mon Aug 31 11:25:31 IST 2026
[2026-08-31 11:25:31,131.131 INFO    ] ================================================
[2026-08-31 11:25:31,695.695 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:25:31
[2026-08-31 11:25:32,310.310 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:25:32,596.596 INFO    ] Initializing speech engine...
[2026-08-31 11:25:32,616.616 INFO    ] 2026-08-31 11:25:32
[2026-08-31 11:25:32,904.904 INFO    ] 2026-08-31 11:25:32
[2026-08-31 11:25:32,930.930 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:25:33,133.133 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:25:33,148.148 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:25:33,370.370 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:25:33,376.376 INFO    ] time= 31/08/2026 11:25:33
[2026-08-31 11:25:33,447.447 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:25:33,505.505 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:25:33,640.640 INFO    ] No existing commands found in stream
[2026-08-31 11:25:38,667.667 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:25:38,670.670 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-08-31 11:25:39,610.610 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 11:25:39,613.613 INFO    ] Checking for system updates...
[2026-08-31 11:25:39,649.649 INFO    ] 200
[2026-08-31 11:25:39,652.652 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:25:39,711.711 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:25:39,714.714 INFO    ] No update needed
[2026-08-31 11:25:39,716.716 INFO    ] Checking for camera pi updates...
[2026-08-31 11:25:39,749.749 INFO    ] 200
[2026-08-31 11:25:39,752.752 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:25:39,793.793 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:25:39,923.923 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:25:39,926.926 INFO    ] No camera update needed
[2026-08-31 11:25:39,928.928 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:25:39,930.930 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:25:39,935.935 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:25:39,940.940 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:25:41,981.981 INFO    ] ================================================
[2026-08-31 11:25:42,996.996 INFO    ] Launching Daemon at Mon Aug 31 11:25:41 IST 2026
[2026-08-31 11:25:42,007.007 INFO    ] ================================================
[2026-08-31 11:25:42,572.572 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:25:42
[2026-08-31 11:25:43,153.153 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:25:43,413.413 INFO    ] Initializing speech engine...
[2026-08-31 11:25:43,437.437 INFO    ] 2026-08-31 11:25:43
[2026-08-31 11:25:43,712.712 INFO    ] 2026-08-31 11:25:43
[2026-08-31 11:25:43,748.748 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:25:43,943.943 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:25:43,950.950 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:25:44,084.084 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:25:44,091.091 INFO    ] time= 31/08/2026 11:25:44
[2026-08-31 11:25:44,112.112 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:25:44,134.134 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:25:44,211.211 INFO    ] No existing commands found in stream
[2026-08-31 11:25:49,246.246 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:25:49,249.249 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-08-31 11:25:49,784.784 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 11:25:49,787.787 INFO    ] Checking for system updates...
[2026-08-31 11:25:49,824.824 INFO    ] 200
[2026-08-31 11:25:49,826.826 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:25:49,881.881 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:25:49,883.883 INFO    ] No update needed
[2026-08-31 11:25:49,886.886 INFO    ] Checking for camera pi updates...
[2026-08-31 11:25:49,923.923 INFO    ] 200
[2026-08-31 11:25:49,925.925 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:25:49,970.970 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:25:50,070.070 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:25:50,072.072 INFO    ] No camera update needed
[2026-08-31 11:25:50,074.074 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:25:50,076.076 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:25:50,082.082 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:25:50,087.087 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:25:52,126.126 INFO    ] ================================================
[2026-08-31 11:25:52,141.141 INFO    ] Launching Daemon at Mon Aug 31 11:25:52 IST 2026
[2026-08-31 11:25:52,152.152 INFO    ] ================================================
[2026-08-31 11:25:52,733.733 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:25:52
[2026-08-31 11:25:53,332.332 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:25:53,610.610 INFO    ] Initializing speech engine...
[2026-08-31 11:25:53,617.617 INFO    ] 2026-08-31 11:25:53
[2026-08-31 11:25:53,880.880 INFO    ] 2026-08-31 11:25:53
[2026-08-31 11:25:53,910.910 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:25:54,155.155 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:25:54,165.165 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:25:54,378.378 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:25:54,424.424 INFO    ] time= 31/08/2026 11:25:54
[2026-08-31 11:25:54,430.430 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:25:54,450.450 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:25:54,603.603 INFO    ] No existing commands found in stream
[2026-08-31 11:25:59,633.633 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:25:59,636.636 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-08-31 11:26:03,423.423 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 11:26:03,426.426 INFO    ] Checking for system updates...
[2026-08-31 11:26:03,470.470 INFO    ] 200
[2026-08-31 11:26:03,473.473 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:26:03,535.535 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:26:03,538.538 INFO    ] No update needed
[2026-08-31 11:26:03,541.541 INFO    ] Checking for camera pi updates...
[2026-08-31 11:26:03,574.574 INFO    ] 200
[2026-08-31 11:26:03,576.576 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:26:03,630.630 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:26:03,735.735 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:26:03,737.737 INFO    ] No camera update needed
[2026-08-31 11:26:03,740.740 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:26:03,742.742 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:26:03,747.747 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:26:03,752.752 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:26:05,792.792 INFO    ] ================================================
[2026-08-31 11:26:05,807.807 INFO    ] Launching Daemon at Mon Aug 31 11:26:05 IST 2026
[2026-08-31 11:26:05,818.818 INFO    ] ================================================
[2026-08-31 11:26:06,391.391 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:26:06
[2026-08-31 11:26:06,991.991 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:26:07,265.265 INFO    ] Initializing speech engine...
[2026-08-31 11:26:07,275.275 INFO    ] 2026-08-31 11:26:07
[2026-08-31 11:26:07,523.523 INFO    ] 2026-08-31 11:26:07
[2026-08-31 11:26:07,558.558 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:26:07,816.816 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:26:07,825.825 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:26:07,962.962 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:26:08,022.022 INFO    ] time= 31/08/2026 11:26:07
[2026-08-31 11:26:08,071.071 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:26:08,097.097 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:26:08,226.226 INFO    ] No existing commands found in stream
[2026-08-31 11:26:13,254.254 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:26:13,257.257 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-08-31 11:26:15,729.729 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 11:26:15,732.732 INFO    ] Checking for system updates...
[2026-08-31 11:26:15,770.770 INFO    ] 200
[2026-08-31 11:26:15,772.772 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:26:15,830.830 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:26:15,832.832 INFO    ] No update needed
[2026-08-31 11:26:15,835.835 INFO    ] Checking for camera pi updates...
[2026-08-31 11:26:15,868.868 INFO    ] 200
[2026-08-31 11:26:15,871.871 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:26:15,911.911 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:26:16,034.034 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:26:16,036.036 INFO    ] No camera update needed
[2026-08-31 11:26:16,039.039 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:26:16,041.041 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:26:16,046.046 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:26:16,051.051 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:26:18,092.092 INFO    ] ================================================
[2026-08-31 11:26:18,107.107 INFO    ] Launching Daemon at Mon Aug 31 11:26:18 IST 2026
[2026-08-31 11:26:18,118.118 INFO    ] ================================================
[2026-08-31 11:26:18,681.681 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:26:18
[2026-08-31 11:26:19,261.261 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:26:19,528.528 INFO    ] Initializing speech engine...
[2026-08-31 11:26:19,537.537 INFO    ] 2026-08-31 11:26:19
[2026-08-31 11:26:19,781.781 INFO    ] 2026-08-31 11:26:19
[2026-08-31 11:26:19,815.815 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:26:20,011.011 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:26:20,068.068 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:26:20,290.290 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:26:20,332.332 INFO    ] time= 31/08/2026 11:26:20
[2026-08-31 11:26:20,339.339 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:26:20,356.356 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:26:20,487.487 INFO    ] No existing commands found in stream
[2026-08-31 11:26:25,506.506 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:26:25,509.509 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-08-31 11:26:27,691.691 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 11:26:27,694.694 INFO    ] Checking for system updates...
[2026-08-31 11:26:27,732.732 INFO    ] 200
[2026-08-31 11:26:27,735.735 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:26:27,787.787 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:26:27,790.790 INFO    ] No update needed
[2026-08-31 11:26:27,792.792 INFO    ] Checking for camera pi updates...
[2026-08-31 11:26:27,829.829 INFO    ] 200
[2026-08-31 11:26:27,831.831 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:26:27,876.876 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:26:27,999.999 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:26:28,001.001 INFO    ] No camera update needed
[2026-08-31 11:26:28,004.004 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:26:28,006.006 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:26:28,011.011 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:26:28,016.016 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:26:30,057.057 INFO    ] ================================================
[2026-08-31 11:26:30,072.072 INFO    ] Launching Daemon at Mon Aug 31 11:26:30 IST 2026
[2026-08-31 11:26:30,082.082 INFO    ] ================================================
[2026-08-31 11:26:30,732.732 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:26:30
[2026-08-31 11:26:31,368.368 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:26:31,644.644 INFO    ] Initializing speech engine...
[2026-08-31 11:26:31,651.651 INFO    ] 2026-08-31 11:26:31
[2026-08-31 11:26:31,917.917 INFO    ] 2026-08-31 11:26:31
[2026-08-31 11:26:31,974.974 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:26:32,212.212 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:26:32,222.222 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:26:32,361.361 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:26:32,436.436 INFO    ] time= 31/08/2026 11:26:32
[2026-08-31 11:26:32,492.492 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:26:32,498.498 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:26:32,648.648 INFO    ] No existing commands found in stream
[2026-08-31 11:26:37,673.673 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:26:37,675.675 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-08-31 11:26:39,760.760 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 11:26:39,763.763 INFO    ] Checking for system updates...
[2026-08-31 11:26:39,801.801 INFO    ] 200
[2026-08-31 11:26:39,803.803 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:26:39,856.856 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:26:39,859.859 INFO    ] No update needed
[2026-08-31 11:26:39,861.861 INFO    ] Checking for camera pi updates...
[2026-08-31 11:26:39,894.894 INFO    ] 200
[2026-08-31 11:26:39,897.897 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:26:39,937.937 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:26:40,122.122 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:26:40,124.124 INFO    ] No camera update needed
[2026-08-31 11:26:40,126.126 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:26:40,129.129 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:26:40,134.134 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:26:40,139.139 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:26:42,181.181 INFO    ] ================================================
[2026-08-31 11:26:42,196.196 INFO    ] Launching Daemon at Mon Aug 31 11:26:42 IST 2026
[2026-08-31 11:26:42,206.206 INFO    ] ================================================
[2026-08-31 11:26:42,794.794 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:26:42
[2026-08-31 11:26:43,400.400 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:26:43,672.672 INFO    ] Initializing speech engine...
[2026-08-31 11:26:43,681.681 INFO    ] 2026-08-31 11:26:43
[2026-08-31 11:26:43,929.929 INFO    ] 2026-08-31 11:26:43
[2026-08-31 11:26:43,964.964 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:26:44,216.216 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:26:44,225.225 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:26:44,455.455 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:26:44,483.483 INFO    ] time= 31/08/2026 11:26:44
[2026-08-31 11:26:44,489.489 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:26:44,509.509 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:26:44,632.632 INFO    ] No existing commands found in stream
[2026-08-31 11:26:49,648.648 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:26:49,650.650 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-08-31 11:26:53,845.845 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 11:26:53,848.848 INFO    ] Checking for system updates...
[2026-08-31 11:26:53,886.886 INFO    ] 200
[2026-08-31 11:26:53,889.889 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:26:53,949.949 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:26:53,951.951 INFO    ] No update needed
[2026-08-31 11:26:53,954.954 INFO    ] Checking for camera pi updates...
[2026-08-31 11:26:53,991.991 INFO    ] 200
[2026-08-31 11:26:53,993.993 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:26:54,034.034 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:26:54,165.165 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:26:54,168.168 INFO    ] No camera update needed
[2026-08-31 11:26:54,171.171 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:26:54,174.174 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:26:54,180.180 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:26:54,185.185 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:26:56,228.228 INFO    ] ================================================
[2026-08-31 11:26:56,243.243 INFO    ] Launching Daemon at Mon Aug 31 11:26:56 IST 2026
[2026-08-31 11:26:56,254.254 INFO    ] ================================================
[2026-08-31 11:26:56,824.824 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:26:56
[2026-08-31 11:26:57,412.412 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:26:57,670.670 INFO    ] Initializing speech engine...
[2026-08-31 11:26:57,676.676 INFO    ] 2026-08-31 11:26:57
[2026-08-31 11:26:57,969.969 INFO    ] 2026-08-31 11:26:57
[2026-08-31 11:26:58,006.006 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:26:58,259.259 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:26:58,299.299 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:26:58,459.459 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:26:58,479.479 INFO    ] time= 31/08/2026 11:26:58
[2026-08-31 11:26:58,523.523 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:26:58,577.577 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:26:58,682.682 INFO    ] No existing commands found in stream
[2026-08-31 11:27:03,714.714 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:27:03,717.717 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-08-31 11:27:04,864.864 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 11:27:04,867.867 INFO    ] Checking for system updates...
[2026-08-31 11:27:04,903.903 INFO    ] 200
[2026-08-31 11:27:04,905.905 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:27:04,963.963 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:27:04,965.965 INFO    ] No update needed
[2026-08-31 11:27:04,968.968 INFO    ] Checking for camera pi updates...
[2026-08-31 11:27:05,005.005 INFO    ] 200
[2026-08-31 11:27:05,007.007 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:27:05,052.052 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:27:05,237.237 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:27:05,239.239 INFO    ] No camera update needed
[2026-08-31 11:27:05,241.241 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:27:05,244.244 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:27:05,249.249 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:27:05,254.254 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:27:07,294.294 INFO    ] ================================================
[2026-08-31 11:27:07,309.309 INFO    ] Launching Daemon at Mon Aug 31 11:27:07 IST 2026
[2026-08-31 11:27:07,320.320 INFO    ] ================================================
[2026-08-31 11:27:07,963.963 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:27:07
[2026-08-31 11:27:08,625.625 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:27:08,923.923 INFO    ] Initializing speech engine...
[2026-08-31 11:27:08,936.936 INFO    ] 2026-08-31 11:27:08
[2026-08-31 11:27:09,216.216 INFO    ] 2026-08-31 11:27:09
[2026-08-31 11:27:09,260.260 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:27:09,527.527 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:27:09,554.554 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:27:09,752.752 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:27:09,771.771 INFO    ] time= 31/08/2026 11:27:09
[2026-08-31 11:27:09,800.800 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:27:09,808.808 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:27:09,929.929 INFO    ] No existing commands found in stream
[2026-08-31 11:27:14,965.965 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:27:14,969.969 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-08-31 11:27:17,891.891 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 11:27:17,893.893 INFO    ] Checking for system updates...
[2026-08-31 11:27:17,931.931 INFO    ] 200
[2026-08-31 11:27:17,933.933 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:27:17,993.993 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:27:17,996.996 INFO    ] No update needed
[2026-08-31 11:27:17,999.999 INFO    ] Checking for camera pi updates...
[2026-08-31 11:27:18,033.033 INFO    ] 200
[2026-08-31 11:27:18,036.036 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:27:18,076.076 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:27:18,265.265 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:27:18,268.268 INFO    ] No camera update needed
[2026-08-31 11:27:18,270.270 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:27:18,272.272 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:27:18,278.278 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:27:18,283.283 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:27:20,321.321 INFO    ] ================================================
[2026-08-31 11:27:20,336.336 INFO    ] Launching Daemon at Mon Aug 31 11:27:20 IST 2026
[2026-08-31 11:27:20,346.346 INFO    ] ================================================
[2026-08-31 11:27:20,928.928 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:27:20
[2026-08-31 11:27:21,529.529 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:27:21,805.805 INFO    ] Initializing speech engine...
[2026-08-31 11:27:21,811.811 INFO    ] 2026-08-31 11:27:21
[2026-08-31 11:27:22,059.059 INFO    ] 2026-08-31 11:27:22
[2026-08-31 11:27:22,094.094 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:27:22,344.344 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:27:22,354.354 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:27:22,571.571 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:27:22,611.611 INFO    ] time= 31/08/2026 11:27:22
[2026-08-31 11:27:22,618.618 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:27:22,639.639 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:27:22,767.767 INFO    ] No existing commands found in stream
[2026-08-31 11:27:27,796.796 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:27:27,799.799 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-08-31 11:27:32,048.048 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 11:27:32,051.051 INFO    ] Checking for system updates...
[2026-08-31 11:27:32,098.098 INFO    ] 200
[2026-08-31 11:27:32,102.102 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:27:32,173.173 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:27:32,176.176 INFO    ] No update needed
[2026-08-31 11:27:32,180.180 INFO    ] Checking for camera pi updates...
[2026-08-31 11:27:32,218.218 INFO    ] 200
[2026-08-31 11:27:32,221.221 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:27:32,266.266 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:27:32,446.446 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:27:32,450.450 INFO    ] No camera update needed
[2026-08-31 11:27:32,453.453 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:27:32,456.456 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:27:32,464.464 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:27:32,470.470 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:27:34,515.515 INFO    ] ================================================
[2026-08-31 11:27:34,530.530 INFO    ] Launching Daemon at Mon Aug 31 11:27:34 IST 2026
[2026-08-31 11:27:34,541.541 INFO    ] ================================================
[2026-08-31 11:27:35,105.105 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:27:35
[2026-08-31 11:27:35,685.685 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:27:35,956.956 INFO    ] Initializing speech engine...
[2026-08-31 11:27:35,963.963 INFO    ] 2026-08-31 11:27:35
[2026-08-31 11:27:36,221.221 INFO    ] 2026-08-31 11:27:36
[2026-08-31 11:27:36,273.273 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:27:36,520.520 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:27:36,528.528 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:27:36,755.755 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:27:36,762.762 INFO    ] time= 31/08/2026 11:27:36
[2026-08-31 11:27:36,780.780 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:27:36,802.802 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:27:36,915.915 INFO    ] No existing commands found in stream
[2026-08-31 11:27:41,939.939 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:27:41,942.942 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-08-31 11:27:45,064.064 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 11:27:45,067.067 INFO    ] Checking for system updates...
[2026-08-31 11:27:45,102.102 INFO    ] 200
[2026-08-31 11:27:45,105.105 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:27:45,160.160 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:27:45,162.162 INFO    ] No update needed
[2026-08-31 11:27:45,165.165 INFO    ] Checking for camera pi updates...
[2026-08-31 11:27:45,202.202 INFO    ] 200
[2026-08-31 11:27:45,204.204 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:27:45,251.251 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:27:45,353.353 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:27:45,356.356 INFO    ] No camera update needed
[2026-08-31 11:27:45,358.358 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:27:45,360.360 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:27:45,366.366 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:27:45,371.371 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:27:47,414.414 INFO    ] ================================================
[2026-08-31 11:27:47,429.429 INFO    ] Launching Daemon at Mon Aug 31 11:27:47 IST 2026
[2026-08-31 11:27:47,439.439 INFO    ] ================================================
[2026-08-31 11:27:48,058.058 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:27:48
[2026-08-31 11:27:48,646.646 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:27:48,915.915 INFO    ] Initializing speech engine...
[2026-08-31 11:27:48,924.924 INFO    ] 2026-08-31 11:27:48
[2026-08-31 11:27:49,169.169 INFO    ] 2026-08-31 11:27:49
[2026-08-31 11:27:49,203.203 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:27:49,455.455 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:27:49,464.464 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:27:49,602.602 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:27:49,652.652 INFO    ] time= 31/08/2026 11:27:49
[2026-08-31 11:27:49,701.701 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:27:49,737.737 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:27:49,890.890 INFO    ] No existing commands found in stream
[2026-08-31 11:27:54,904.904 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:27:54,907.907 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-08-31 11:27:56,174.174 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 11:27:56,176.176 INFO    ] Checking for system updates...
[2026-08-31 11:27:56,212.212 INFO    ] 200
[2026-08-31 11:27:56,215.215 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:27:56,267.267 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:27:56,269.269 INFO    ] No update needed
[2026-08-31 11:27:56,272.272 INFO    ] Checking for camera pi updates...
[2026-08-31 11:27:56,305.305 INFO    ] 200
[2026-08-31 11:27:56,308.308 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:27:56,356.356 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:27:56,513.513 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:27:56,515.515 INFO    ] No camera update needed
[2026-08-31 11:27:56,517.517 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:27:56,520.520 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:27:56,525.525 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:27:56,530.530 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:27:58,571.571 INFO    ] ================================================
[2026-08-31 11:27:58,586.586 INFO    ] Launching Daemon at Mon Aug 31 11:27:58 IST 2026
[2026-08-31 11:27:58,596.596 INFO    ] ================================================
[2026-08-31 11:27:59,172.172 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:27:59
[2026-08-31 11:27:59,763.763 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:28:00,032.032 INFO    ] Initializing speech engine...
[2026-08-31 11:28:00,052.052 INFO    ] 2026-08-31 11:28:00
[2026-08-31 11:28:00,320.320 INFO    ] 2026-08-31 11:28:00
[2026-08-31 11:28:00,356.356 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:28:00,582.582 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:28:00,642.642 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:28:00,805.805 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:28:00,827.827 INFO    ] time= 31/08/2026 11:28:00
[2026-08-31 11:28:00,881.881 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:28:00,936.936 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:28:01,082.082 INFO    ] No existing commands found in stream
[2026-08-31 11:28:06,098.098 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:28:06,101.101 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-08-31 11:28:10,493.493 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 11:28:10,496.496 INFO    ] Checking for system updates...
[2026-08-31 11:28:10,533.533 INFO    ] 200
[2026-08-31 11:28:10,536.536 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:28:10,596.596 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:28:10,599.599 INFO    ] No update needed
[2026-08-31 11:28:10,602.602 INFO    ] Checking for camera pi updates...
[2026-08-31 11:28:10,641.641 INFO    ] 200
[2026-08-31 11:28:10,644.644 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:28:10,686.686 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:28:10,768.768 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:28:10,770.770 INFO    ] No camera update needed
[2026-08-31 11:28:10,773.773 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:28:10,776.776 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:28:10,782.782 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:28:10,788.788 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:28:12,830.830 INFO    ] ================================================
[2026-08-31 11:28:12,845.845 INFO    ] Launching Daemon at Mon Aug 31 11:28:12 IST 2026
[2026-08-31 11:28:12,856.856 INFO    ] ================================================
[2026-08-31 11:28:13,422.422 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:28:13
[2026-08-31 11:28:14,003.003 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:28:14,247.247 INFO    ] Initializing speech engine...
[2026-08-31 11:28:14,255.255 INFO    ] 2026-08-31 11:28:14
[2026-08-31 11:28:14,526.526 INFO    ] 2026-08-31 11:28:14
[2026-08-31 11:28:14,561.561 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:28:14,758.758 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:28:14,813.813 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:28:14,956.956 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:28:15,025.025 INFO    ] time= 31/08/2026 11:28:14
[2026-08-31 11:28:15,082.082 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:28:15,088.088 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:28:15,233.233 INFO    ] No existing commands found in stream
[2026-08-31 11:28:20,245.245 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:28:20,248.248 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-08-31 11:28:23,164.164 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 11:28:23,167.167 INFO    ] Checking for system updates...
[2026-08-31 11:28:23,206.206 INFO    ] 200
[2026-08-31 11:28:23,209.209 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:28:23,268.268 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:28:23,270.270 INFO    ] No update needed
[2026-08-31 11:28:23,273.273 INFO    ] Checking for camera pi updates...
[2026-08-31 11:28:23,310.310 INFO    ] 200
[2026-08-31 11:28:23,312.312 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:28:23,353.353 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:28:23,477.477 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:28:23,479.479 INFO    ] No camera update needed
[2026-08-31 11:28:23,482.482 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:28:23,484.484 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:28:23,489.489 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:28:23,494.494 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:28:25,534.534 INFO    ] ================================================
[2026-08-31 11:28:25,549.549 INFO    ] Launching Daemon at Mon Aug 31 11:28:25 IST 2026
[2026-08-31 11:28:25,560.560 INFO    ] ================================================
[2026-08-31 11:28:26,152.152 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:28:26
[2026-08-31 11:28:26,734.734 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:28:27,000.000 INFO    ] Initializing speech engine...
[2026-08-31 11:28:27,008.008 INFO    ] 2026-08-31 11:28:27
[2026-08-31 11:28:27,254.254 INFO    ] 2026-08-31 11:28:27
[2026-08-31 11:28:27,288.288 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:28:27,538.538 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:28:27,547.547 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:28:27,774.774 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:28:27,803.803 INFO    ] time= 31/08/2026 11:28:27
[2026-08-31 11:28:27,809.809 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:28:27,826.826 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:28:27,957.957 INFO    ] No existing commands found in stream
[2026-08-31 11:28:32,975.975 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:28:32,978.978 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-08-31 11:28:34,052.052 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 11:28:34,055.055 INFO    ] Checking for system updates...
[2026-08-31 11:28:34,092.092 INFO    ] 200
[2026-08-31 11:28:34,094.094 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:28:34,147.147 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:28:34,149.149 INFO    ] No update needed
[2026-08-31 11:28:34,152.152 INFO    ] Checking for camera pi updates...
[2026-08-31 11:28:34,190.190 INFO    ] 200
[2026-08-31 11:28:34,192.192 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:28:34,232.232 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:28:34,407.407 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:28:34,410.410 INFO    ] No camera update needed
[2026-08-31 11:28:34,412.412 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:28:34,414.414 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:28:34,420.420 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:28:34,425.425 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:28:36,465.465 INFO    ] ================================================
[2026-08-31 11:28:36,481.481 INFO    ] Launching Daemon at Mon Aug 31 11:28:36 IST 2026
[2026-08-31 11:28:36,491.491 INFO    ] ================================================
[2026-08-31 11:28:37,059.059 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:28:37
[2026-08-31 11:28:37,641.641 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:28:37,908.908 INFO    ] Initializing speech engine...
[2026-08-31 11:28:37,916.916 INFO    ] 2026-08-31 11:28:37
[2026-08-31 11:28:38,174.174 INFO    ] 2026-08-31 11:28:38
[2026-08-31 11:28:38,230.230 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:28:38,453.453 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:28:38,462.462 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:28:38,692.692 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:28:38,722.722 INFO    ] time= 31/08/2026 11:28:38
[2026-08-31 11:28:38,728.728 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:28:38,746.746 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:28:38,877.877 INFO    ] No existing commands found in stream
[2026-08-31 11:28:43,892.892 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:28:43,895.895 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-08-31 11:28:46,118.118 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 11:28:46,121.121 INFO    ] Checking for system updates...
[2026-08-31 11:28:46,156.156 INFO    ] 200
[2026-08-31 11:28:46,159.159 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:28:46,212.212 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:28:46,215.215 INFO    ] No update needed
[2026-08-31 11:28:46,217.217 INFO    ] Checking for camera pi updates...
[2026-08-31 11:28:46,251.251 INFO    ] 200
[2026-08-31 11:28:46,253.253 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:28:46,293.293 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:28:46,382.382 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:28:46,384.384 INFO    ] No camera update needed
[2026-08-31 11:28:46,387.387 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:28:46,389.389 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:28:46,395.395 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:28:46,400.400 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:28:48,440.440 INFO    ] ================================================
[2026-08-31 11:28:48,455.455 INFO    ] Launching Daemon at Mon Aug 31 11:28:48 IST 2026
[2026-08-31 11:28:48,466.466 INFO    ] ================================================
[2026-08-31 11:28:49,142.142 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:28:49
[2026-08-31 11:28:49,829.829 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:28:50,140.140 INFO    ] Initializing speech engine...
[2026-08-31 11:28:50,152.152 INFO    ] 2026-08-31 11:28:50
[2026-08-31 11:28:50,464.464 INFO    ] 2026-08-31 11:28:50
[2026-08-31 11:28:50,549.549 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:28:50,765.765 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:28:50,771.771 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:28:50,964.964 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:28:50,983.983 INFO    ] time= 31/08/2026 11:28:50
[2026-08-31 11:28:50,992.992 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:28:51,021.021 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:28:51,125.125 INFO    ] No existing commands found in stream
[2026-08-31 11:28:56,161.161 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:28:56,164.164 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-08-31 11:28:59,336.336 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 11:28:59,339.339 INFO    ] Checking for system updates...
[2026-08-31 11:28:59,381.381 INFO    ] 200
[2026-08-31 11:28:59,384.384 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:28:59,447.447 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:28:59,450.450 INFO    ] No update needed
[2026-08-31 11:28:59,458.458 INFO    ] Checking for camera pi updates...
[2026-08-31 11:28:59,497.497 INFO    ] 200
[2026-08-31 11:28:59,501.501 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:28:59,549.549 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:28:59,628.628 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:28:59,631.631 INFO    ] No camera update needed
[2026-08-31 11:28:59,634.634 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:28:59,637.637 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:28:59,643.643 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:28:59,650.650 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:29:01,691.691 INFO    ] ================================================
[2026-08-31 11:29:01,708.708 INFO    ] Launching Daemon at Mon Aug 31 11:29:01 IST 2026
[2026-08-31 11:29:01,720.720 INFO    ] ================================================
[2026-08-31 11:29:02,457.457 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:29:02
[2026-08-31 11:29:03,108.108 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:29:03,455.455 INFO    ] Initializing speech engine...
[2026-08-31 11:29:03,466.466 INFO    ] 2026-08-31 11:29:03
[2026-08-31 11:29:03,746.746 INFO    ] 2026-08-31 11:29:03
[2026-08-31 11:29:03,786.786 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:29:04,005.005 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:29:04,025.025 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:29:04,179.179 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:29:04,188.188 INFO    ] time= 31/08/2026 11:29:04
[2026-08-31 11:29:04,196.196 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:29:04,240.240 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:29:04,358.358 INFO    ] No existing commands found in stream
[2026-08-31 11:29:09,389.389 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:29:09,391.391 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-08-31 11:29:10,653.653 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 11:29:10,656.656 INFO    ] Checking for system updates...
[2026-08-31 11:29:10,693.693 INFO    ] 200
[2026-08-31 11:29:10,695.695 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:29:10,755.755 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:29:10,758.758 INFO    ] No update needed
[2026-08-31 11:29:10,760.760 INFO    ] Checking for camera pi updates...
[2026-08-31 11:29:10,793.793 INFO    ] 200
[2026-08-31 11:29:10,796.796 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:29:10,836.836 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:29:10,911.911 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:29:10,914.914 INFO    ] No camera update needed
[2026-08-31 11:29:10,917.917 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:29:10,920.920 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:29:10,926.926 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:29:10,932.932 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:29:12,975.975 INFO    ] ================================================
[2026-08-31 11:29:12,990.990 INFO    ] Launching Daemon at Mon Aug 31 11:29:12 IST 2026
[2026-08-31 11:29:13,001.001 INFO    ] ================================================
[2026-08-31 11:29:13,669.669 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:29:13
[2026-08-31 11:29:14,362.362 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:29:14,674.674 INFO    ] Initializing speech engine...
[2026-08-31 11:29:14,688.688 INFO    ] 2026-08-31 11:29:14
[2026-08-31 11:29:15,007.007 INFO    ] 2026-08-31 11:29:14
[2026-08-31 11:29:15,088.088 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:29:15,299.299 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:29:15,308.308 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:29:15,506.506 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:29:15,528.528 INFO    ] time= 31/08/2026 11:29:15
[2026-08-31 11:29:15,556.556 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:29:15,566.566 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:29:15,679.679 INFO    ] No existing commands found in stream
[2026-08-31 11:29:20,705.705 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:29:20,709.709 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-08-31 11:29:23,519.519 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 11:29:23,522.522 INFO    ] Checking for system updates...
[2026-08-31 11:29:23,560.560 INFO    ] 200
[2026-08-31 11:29:23,563.563 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:29:23,617.617 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:29:23,620.620 INFO    ] No update needed
[2026-08-31 11:29:23,622.622 INFO    ] Checking for camera pi updates...
[2026-08-31 11:29:23,661.661 INFO    ] 200
[2026-08-31 11:29:23,663.663 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:29:23,705.705 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:29:23,884.884 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:29:23,887.887 INFO    ] No camera update needed
[2026-08-31 11:29:23,889.889 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:29:23,892.892 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:29:23,897.897 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:29:23,902.902 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:29:25,942.942 INFO    ] ================================================
[2026-08-31 11:29:25,958.958 INFO    ] Launching Daemon at Mon Aug 31 11:29:25 IST 2026
[2026-08-31 11:29:25,970.970 INFO    ] ================================================
[2026-08-31 11:29:26,645.645 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:29:26
[2026-08-31 11:29:27,346.346 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:29:27,652.652 INFO    ] Initializing speech engine...
[2026-08-31 11:29:27,664.664 INFO    ] 2026-08-31 11:29:27
[2026-08-31 11:29:27,953.953 INFO    ] 2026-08-31 11:29:27
[2026-08-31 11:29:28,014.014 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:29:28,296.296 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:29:28,307.307 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:29:28,504.504 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:29:28,523.523 INFO    ] time= 31/08/2026 11:29:28
[2026-08-31 11:29:28,554.554 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:29:28,566.566 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:29:28,732.732 INFO    ] No existing commands found in stream
[2026-08-31 11:29:33,759.759 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:29:33,763.763 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-08-31 11:29:34,839.839 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 11:29:34,842.842 INFO    ] Checking for system updates...
[2026-08-31 11:29:34,885.885 INFO    ] 200
[2026-08-31 11:29:34,889.889 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:29:34,941.941 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:29:34,944.944 INFO    ] No update needed
[2026-08-31 11:29:34,947.947 INFO    ] Checking for camera pi updates...
[2026-08-31 11:29:34,980.980 INFO    ] 200
[2026-08-31 11:29:34,983.983 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:29:35,024.024 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:29:35,103.103 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:29:35,106.106 INFO    ] No camera update needed
[2026-08-31 11:29:35,109.109 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:29:35,111.111 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:29:35,116.116 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:29:35,121.121 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:29:37,162.162 INFO    ] ================================================
[2026-08-31 11:29:37,178.178 INFO    ] Launching Daemon at Mon Aug 31 11:29:37 IST 2026
[2026-08-31 11:29:37,189.189 INFO    ] ================================================
[2026-08-31 11:29:37,871.871 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:29:37
[2026-08-31 11:29:38,573.573 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:29:38,897.897 INFO    ] Initializing speech engine...
[2026-08-31 11:29:38,906.906 INFO    ] 2026-08-31 11:29:38
[2026-08-31 11:29:39,218.218 INFO    ] 2026-08-31 11:29:39
[2026-08-31 11:29:39,304.304 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:29:39,520.520 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:29:39,536.536 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:29:39,721.721 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:29:39,744.744 INFO    ] time= 31/08/2026 11:29:39
[2026-08-31 11:29:39,772.772 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:29:39,782.782 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:29:39,940.940 INFO    ] No existing commands found in stream
[2026-08-31 11:29:44,971.971 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:29:44,974.974 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-08-31 11:29:46,965.965 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 11:29:46,968.968 INFO    ] Checking for system updates...
[2026-08-31 11:29:47,010.010 INFO    ] 200
[2026-08-31 11:29:47,012.012 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:29:47,076.076 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:29:47,079.079 INFO    ] No update needed
[2026-08-31 11:29:47,082.082 INFO    ] Checking for camera pi updates...
[2026-08-31 11:29:47,120.120 INFO    ] 200
[2026-08-31 11:29:47,122.122 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:29:47,165.165 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:29:47,258.258 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:29:47,260.260 INFO    ] No camera update needed
[2026-08-31 11:29:47,262.262 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:29:47,265.265 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:29:47,270.270 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:29:47,275.275 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:29:49,314.314 INFO    ] ================================================
[2026-08-31 11:29:49,330.330 INFO    ] Launching Daemon at Mon Aug 31 11:29:49 IST 2026
[2026-08-31 11:29:49,341.341 INFO    ] ================================================
[2026-08-31 11:29:49,990.990 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:29:49
[2026-08-31 11:29:50,687.687 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:29:51,009.009 INFO    ] Initializing speech engine...
[2026-08-31 11:29:51,016.016 INFO    ] 2026-08-31 11:29:51
[2026-08-31 11:29:51,332.332 INFO    ] 2026-08-31 11:29:51
[2026-08-31 11:29:51,418.418 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:29:51,638.638 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:29:51,698.698 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:29:51,851.851 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:29:51,879.879 INFO    ] time= 31/08/2026 11:29:51
[2026-08-31 11:29:51,888.888 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:29:51,896.896 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:29:51,998.998 INFO    ] No existing commands found in stream
[2026-08-31 11:29:57,023.023 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:29:57,026.026 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-08-31 11:30:00,529.529 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 11:30:00,532.532 INFO    ] Checking for system updates...
[2026-08-31 11:30:00,570.570 INFO    ] 200
[2026-08-31 11:30:00,572.572 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:30:00,626.626 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:30:00,629.629 INFO    ] No update needed
[2026-08-31 11:30:00,631.631 INFO    ] Checking for camera pi updates...
[2026-08-31 11:30:00,670.670 INFO    ] 200
[2026-08-31 11:30:00,672.672 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:30:00,719.719 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:30:00,803.803 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:30:00,805.805 INFO    ] No camera update needed
[2026-08-31 11:30:00,808.808 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:30:00,810.810 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:30:00,816.816 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:30:00,821.821 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:30:02,965.965 INFO    ] ================================================
[2026-08-31 11:30:03,008.008 INFO    ] Launching Daemon at Mon Aug 31 11:30:02 IST 2026
[2026-08-31 11:30:03,029.029 INFO    ] ================================================
[2026-08-31 11:30:03,724.724 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:30:03
[2026-08-31 11:30:04,408.408 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:30:04,706.706 INFO    ] Initializing speech engine...
[2026-08-31 11:30:04,713.713 INFO    ] 2026-08-31 11:30:04
[2026-08-31 11:30:04,972.972 INFO    ] 2026-08-31 11:30:04
[2026-08-31 11:30:05,025.025 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:30:05,253.253 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:30:05,260.260 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:30:05,493.493 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:30:05,519.519 INFO    ] time= 31/08/2026 11:30:05
[2026-08-31 11:30:05,533.533 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:30:05,542.542 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:30:05,655.655 INFO    ] No existing commands found in stream
[2026-08-31 11:30:10,679.679 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:30:10,682.682 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-08-31 11:30:15,095.095 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 11:30:15,098.098 INFO    ] Checking for system updates...
[2026-08-31 11:30:15,151.151 INFO    ] 200
[2026-08-31 11:30:15,154.154 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:30:15,224.224 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:30:15,228.228 INFO    ] No update needed
[2026-08-31 11:30:15,231.231 INFO    ] Checking for camera pi updates...
[2026-08-31 11:30:15,269.269 INFO    ] 200
[2026-08-31 11:30:15,271.271 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:30:15,324.324 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:30:15,432.432 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:30:15,435.435 INFO    ] No camera update needed
[2026-08-31 11:30:15,439.439 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:30:15,442.442 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:30:15,449.449 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:30:15,456.456 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:30:17,499.499 INFO    ] ================================================
[2026-08-31 11:30:17,514.514 INFO    ] Launching Daemon at Mon Aug 31 11:30:17 IST 2026
[2026-08-31 11:30:17,525.525 INFO    ] ================================================
[2026-08-31 11:30:18,089.089 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:30:18
[2026-08-31 11:30:18,671.671 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:30:18,930.930 INFO    ] Initializing speech engine...
[2026-08-31 11:30:18,949.949 INFO    ] 2026-08-31 11:30:18
[2026-08-31 11:30:19,200.200 INFO    ] 2026-08-31 11:30:19
[2026-08-31 11:30:19,234.234 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:30:19,438.438 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:30:19,452.452 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:30:19,623.623 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:30:19,628.628 INFO    ] time= 31/08/2026 11:30:19
[2026-08-31 11:30:19,635.635 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:30:19,664.664 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:30:19,815.815 INFO    ] No existing commands found in stream
[2026-08-31 11:30:24,835.835 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:30:24,838.838 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-08-31 11:30:26,056.056 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 11:30:26,059.059 INFO    ] Checking for system updates...
[2026-08-31 11:30:26,099.099 INFO    ] 200
[2026-08-31 11:30:26,102.102 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:30:26,155.155 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:30:26,158.158 INFO    ] No update needed
[2026-08-31 11:30:26,160.160 INFO    ] Checking for camera pi updates...
[2026-08-31 11:30:26,193.193 INFO    ] 200
[2026-08-31 11:30:26,196.196 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:30:26,245.245 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:30:26,353.353 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:30:26,356.356 INFO    ] No camera update needed
[2026-08-31 11:30:26,358.358 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:30:26,361.361 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:30:26,366.366 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:30:26,371.371 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:30:28,413.413 INFO    ] ================================================
[2026-08-31 11:30:28,428.428 INFO    ] Launching Daemon at Mon Aug 31 11:30:28 IST 2026
[2026-08-31 11:30:28,439.439 INFO    ] ================================================
[2026-08-31 11:30:29,026.026 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:30:29
[2026-08-31 11:30:29,682.682 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:30:29,987.987 INFO    ] Initializing speech engine...
[2026-08-31 11:30:30,002.002 INFO    ] 2026-08-31 11:30:29
[2026-08-31 11:30:30,274.274 INFO    ] 2026-08-31 11:30:30
[2026-08-31 11:30:30,340.340 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:30:30,557.557 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:30:30,563.563 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:30:30,769.769 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:30:30,822.822 INFO    ] time= 31/08/2026 11:30:30
[2026-08-31 11:30:30,838.838 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:30:30,848.848 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:30:30,977.977 INFO    ] No existing commands found in stream
[2026-08-31 11:30:36,006.006 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:30:36,010.010 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-08-31 11:30:40,412.412 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 11:30:40,415.415 INFO    ] Checking for system updates...
[2026-08-31 11:30:40,452.452 INFO    ] 200
[2026-08-31 11:30:40,455.455 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:30:40,508.508 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:30:40,510.510 INFO    ] No update needed
[2026-08-31 11:30:40,513.513 INFO    ] Checking for camera pi updates...
[2026-08-31 11:30:40,547.547 INFO    ] 200
[2026-08-31 11:30:40,549.549 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:30:40,595.595 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:30:40,674.674 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:30:40,677.677 INFO    ] No camera update needed
[2026-08-31 11:30:40,679.679 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:30:40,682.682 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:30:40,687.687 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:30:40,692.692 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:30:42,730.730 INFO    ] ================================================
[2026-08-31 11:30:42,745.745 INFO    ] Launching Daemon at Mon Aug 31 11:30:42 IST 2026
[2026-08-31 11:30:42,756.756 INFO    ] ================================================
[2026-08-31 11:30:43,322.322 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:30:43
[2026-08-31 11:30:43,906.906 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:30:44,182.182 INFO    ] Initializing speech engine...
[2026-08-31 11:30:44,188.188 INFO    ] 2026-08-31 11:30:44
[2026-08-31 11:30:44,446.446 INFO    ] 2026-08-31 11:30:44
[2026-08-31 11:30:44,480.480 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:30:44,731.731 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:30:44,741.741 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:30:44,971.971 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:30:45,008.008 INFO    ] time= 31/08/2026 11:30:44
[2026-08-31 11:30:45,013.013 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:30:45,031.031 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:30:45,159.159 INFO    ] No existing commands found in stream
[2026-08-31 11:30:50,174.174 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:30:50,177.177 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-08-31 11:30:50,900.900 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 11:30:50,903.903 INFO    ] Checking for system updates...
[2026-08-31 11:30:50,938.938 INFO    ] 200
[2026-08-31 11:30:50,941.941 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:30:50,993.993 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:30:50,995.995 INFO    ] No update needed
[2026-08-31 11:30:50,998.998 INFO    ] Checking for camera pi updates...
[2026-08-31 11:30:51,036.036 INFO    ] 200
[2026-08-31 11:30:51,039.039 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:30:51,084.084 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:30:51,188.188 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:30:51,191.191 INFO    ] No camera update needed
[2026-08-31 11:30:51,193.193 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:30:51,195.195 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:30:51,200.200 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:30:51,205.205 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:30:53,244.244 INFO    ] ================================================
[2026-08-31 11:30:53,260.260 INFO    ] Launching Daemon at Mon Aug 31 11:30:53 IST 2026
[2026-08-31 11:30:53,270.270 INFO    ] ================================================
[2026-08-31 11:30:53,858.858 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:30:53
[2026-08-31 11:30:54,456.456 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:30:54,735.735 INFO    ] Initializing speech engine...
[2026-08-31 11:30:54,741.741 INFO    ] 2026-08-31 11:30:54
[2026-08-31 11:30:55,001.001 INFO    ] 2026-08-31 11:30:54
[2026-08-31 11:30:55,031.031 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:30:55,281.281 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:30:55,286.286 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:30:55,519.519 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:30:55,543.543 INFO    ] time= 31/08/2026 11:30:55
[2026-08-31 11:30:55,549.549 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:30:55,570.570 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:30:55,695.695 INFO    ] No existing commands found in stream
[2026-08-31 11:31:00,711.711 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:31:00,714.714 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-08-31 11:31:04,843.843 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 11:31:04,845.845 INFO    ] Checking for system updates...
[2026-08-31 11:31:04,882.882 INFO    ] 200
[2026-08-31 11:31:04,884.884 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:31:04,944.944 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:31:04,946.946 INFO    ] No update needed
[2026-08-31 11:31:04,949.949 INFO    ] Checking for camera pi updates...
[2026-08-31 11:31:04,987.987 INFO    ] 200
[2026-08-31 11:31:04,989.989 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:31:05,030.030 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:31:05,113.113 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:31:05,115.115 INFO    ] No camera update needed
[2026-08-31 11:31:05,118.118 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:31:05,120.120 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:31:05,125.125 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:31:05,131.131 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:31:07,170.170 INFO    ] ================================================
[2026-08-31 11:31:07,185.185 INFO    ] Launching Daemon at Mon Aug 31 11:31:07 IST 2026
[2026-08-31 11:31:07,196.196 INFO    ] ================================================
[2026-08-31 11:31:07,839.839 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:31:07
[2026-08-31 11:31:08,501.501 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:31:08,802.802 INFO    ] Initializing speech engine...
[2026-08-31 11:31:08,817.817 INFO    ] 2026-08-31 11:31:08
[2026-08-31 11:31:09,086.086 INFO    ] 2026-08-31 11:31:09
[2026-08-31 11:31:09,142.142 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:31:09,378.378 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:31:09,384.384 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:31:09,616.616 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:31:09,649.649 INFO    ] time= 31/08/2026 11:31:09
[2026-08-31 11:31:09,668.668 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:31:09,698.698 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:31:09,826.826 INFO    ] No existing commands found in stream
[2026-08-31 11:31:14,850.850 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:31:14,853.853 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-08-31 11:31:16,581.581 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 11:31:16,584.584 INFO    ] Checking for system updates...
[2026-08-31 11:31:16,625.625 INFO    ] 200
[2026-08-31 11:31:16,628.628 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:31:16,686.686 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:31:16,689.689 INFO    ] No update needed
[2026-08-31 11:31:16,692.692 INFO    ] Checking for camera pi updates...
[2026-08-31 11:31:16,730.730 INFO    ] 200
[2026-08-31 11:31:16,733.733 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:31:16,784.784 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:31:16,864.864 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:31:16,866.866 INFO    ] No camera update needed
[2026-08-31 11:31:16,869.869 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:31:16,872.872 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:31:16,878.878 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:31:16,884.884 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:31:18,927.927 INFO    ] ================================================
[2026-08-31 11:31:18,942.942 INFO    ] Launching Daemon at Mon Aug 31 11:31:18 IST 2026
[2026-08-31 11:31:18,953.953 INFO    ] ================================================
[2026-08-31 11:31:19,532.532 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:31:19
[2026-08-31 11:31:20,133.133 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:31:20,411.411 INFO    ] Initializing speech engine...
[2026-08-31 11:31:20,419.419 INFO    ] 2026-08-31 11:31:20
[2026-08-31 11:31:20,680.680 INFO    ] 2026-08-31 11:31:20
[2026-08-31 11:31:20,732.732 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:31:20,955.955 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:31:20,966.966 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:31:21,184.184 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:31:21,223.223 INFO    ] time= 31/08/2026 11:31:21
[2026-08-31 11:31:21,229.229 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:31:21,249.249 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:31:21,357.357 INFO    ] No existing commands found in stream
[2026-08-31 11:31:26,384.384 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:31:26,387.387 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-08-31 11:31:29,451.451 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 11:31:29,454.454 INFO    ] Checking for system updates...
[2026-08-31 11:31:29,492.492 INFO    ] 200
[2026-08-31 11:31:29,495.495 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:31:29,554.554 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:31:29,556.556 INFO    ] No update needed
[2026-08-31 11:31:29,559.559 INFO    ] Checking for camera pi updates...
[2026-08-31 11:31:29,597.597 INFO    ] 200
[2026-08-31 11:31:29,600.600 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:31:29,645.645 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:31:29,830.830 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:31:29,833.833 INFO    ] No camera update needed
[2026-08-31 11:31:29,835.835 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:31:29,837.837 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:31:29,843.843 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:31:29,848.848 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:31:31,892.892 INFO    ] ================================================
[2026-08-31 11:31:31,908.908 INFO    ] Launching Daemon at Mon Aug 31 11:31:31 IST 2026
[2026-08-31 11:31:31,920.920 INFO    ] ================================================
[2026-08-31 11:31:32,512.512 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:31:32
[2026-08-31 11:31:33,124.124 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:31:33,398.398 INFO    ] Initializing speech engine...
[2026-08-31 11:31:33,421.421 INFO    ] 2026-08-31 11:31:33
[2026-08-31 11:31:33,678.678 INFO    ] 2026-08-31 11:31:33
[2026-08-31 11:31:33,713.713 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:31:33,920.920 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:31:33,973.973 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:31:34,139.139 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:31:34,203.203 INFO    ] time= 31/08/2026 11:31:34
[2026-08-31 11:31:34,249.249 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:31:34,255.255 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:31:34,387.387 INFO    ] No existing commands found in stream
[2026-08-31 11:31:39,412.412 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:31:39,415.415 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-08-31 11:31:42,283.283 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 11:31:42,286.286 INFO    ] Checking for system updates...
[2026-08-31 11:31:42,326.326 INFO    ] 200
[2026-08-31 11:31:42,328.328 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:31:42,381.381 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:31:42,384.384 INFO    ] No update needed
[2026-08-31 11:31:42,386.386 INFO    ] Checking for camera pi updates...
[2026-08-31 11:31:42,419.419 INFO    ] 200
[2026-08-31 11:31:42,421.421 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:31:42,466.466 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:31:42,569.569 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:31:42,572.572 INFO    ] No camera update needed
[2026-08-31 11:31:42,577.577 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:31:42,580.580 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:31:42,586.586 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:31:42,591.591 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:31:44,631.631 INFO    ] ================================================
[2026-08-31 11:31:44,646.646 INFO    ] Launching Daemon at Mon Aug 31 11:31:44 IST 2026
[2026-08-31 11:31:44,656.656 INFO    ] ================================================
[2026-08-31 11:31:45,222.222 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:31:45
[2026-08-31 11:31:45,803.803 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:31:46,057.057 INFO    ] Initializing speech engine...
[2026-08-31 11:31:46,066.066 INFO    ] 2026-08-31 11:31:46
[2026-08-31 11:31:46,359.359 INFO    ] 2026-08-31 11:31:46
[2026-08-31 11:31:46,396.396 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:31:46,591.591 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:31:46,604.604 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:31:46,765.765 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:31:46,773.773 INFO    ] time= 31/08/2026 11:31:46
[2026-08-31 11:31:46,781.781 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:31:46,808.808 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:31:46,953.953 INFO    ] No existing commands found in stream
[2026-08-31 11:31:51,978.978 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:31:51,981.981 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-08-31 11:31:54,719.719 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 11:31:54,722.722 INFO    ] Checking for system updates...
[2026-08-31 11:31:54,757.757 INFO    ] 200
[2026-08-31 11:31:54,760.760 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:31:54,812.812 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:31:54,814.814 INFO    ] No update needed
[2026-08-31 11:31:54,816.816 INFO    ] Checking for camera pi updates...
[2026-08-31 11:31:54,856.856 INFO    ] 200
[2026-08-31 11:31:54,858.858 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:31:54,899.899 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:31:55,000.000 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:31:55,003.003 INFO    ] No camera update needed
[2026-08-31 11:31:55,005.005 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:31:55,007.007 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:31:55,012.012 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:31:55,017.017 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:31:57,061.061 INFO    ] ================================================
[2026-08-31 11:31:57,076.076 INFO    ] Launching Daemon at Mon Aug 31 11:31:57 IST 2026
[2026-08-31 11:31:57,086.086 INFO    ] ================================================
[2026-08-31 11:31:57,654.654 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:31:57
[2026-08-31 11:31:58,241.241 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:31:58,502.502 INFO    ] Initializing speech engine...
[2026-08-31 11:31:58,526.526 INFO    ] 2026-08-31 11:31:58
[2026-08-31 11:31:58,798.798 INFO    ] 2026-08-31 11:31:58
[2026-08-31 11:31:58,837.837 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:31:59,041.041 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:31:59,063.063 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:31:59,213.213 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:31:59,219.219 INFO    ] time= 31/08/2026 11:31:59
[2026-08-31 11:31:59,225.225 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:31:59,252.252 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:31:59,367.367 INFO    ] No existing commands found in stream
[2026-08-31 11:32:04,398.398 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:32:04,401.401 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-08-31 11:32:08,880.880 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 11:32:08,883.883 INFO    ] Checking for system updates...
[2026-08-31 11:32:08,924.924 INFO    ] 200
[2026-08-31 11:32:08,926.926 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:32:08,980.980 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:32:08,982.982 INFO    ] No update needed
[2026-08-31 11:32:08,985.985 INFO    ] Checking for camera pi updates...
[2026-08-31 11:32:09,025.025 INFO    ] 200
[2026-08-31 11:32:09,027.027 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:32:09,073.073 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:32:09,141.141 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:32:09,143.143 INFO    ] No camera update needed
[2026-08-31 11:32:09,146.146 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:32:09,148.148 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:32:09,153.153 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:32:09,159.159 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:32:11,200.200 INFO    ] ================================================
[2026-08-31 11:32:11,215.215 INFO    ] Launching Daemon at Mon Aug 31 11:32:11 IST 2026
[2026-08-31 11:32:11,226.226 INFO    ] ================================================
[2026-08-31 11:32:11,792.792 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:32:11
[2026-08-31 11:32:12,375.375 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:32:12,635.635 INFO    ] Initializing speech engine...
[2026-08-31 11:32:12,661.661 INFO    ] 2026-08-31 11:32:12
[2026-08-31 11:32:12,935.935 INFO    ] 2026-08-31 11:32:12
[2026-08-31 11:32:12,972.972 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:32:13,199.199 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:32:13,259.259 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:32:13,422.422 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:32:13,429.429 INFO    ] time= 31/08/2026 11:32:13
[2026-08-31 11:32:13,462.462 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:32:13,512.512 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:32:13,627.627 INFO    ] No existing commands found in stream
[2026-08-31 11:32:18,637.637 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:32:18,640.640 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-08-31 11:32:21,094.094 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 11:32:21,096.096 INFO    ] Checking for system updates...
[2026-08-31 11:32:21,143.143 INFO    ] 200
[2026-08-31 11:32:21,145.145 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:32:21,201.201 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:32:21,203.203 INFO    ] No update needed
[2026-08-31 11:32:21,206.206 INFO    ] Checking for camera pi updates...
[2026-08-31 11:32:21,248.248 INFO    ] 200
[2026-08-31 11:32:21,251.251 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:32:21,300.300 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:32:21,393.393 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:32:21,395.395 INFO    ] No camera update needed
[2026-08-31 11:32:21,398.398 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:32:21,400.400 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:32:21,406.406 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:32:21,412.412 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:32:23,453.453 INFO    ] ================================================
[2026-08-31 11:32:23,468.468 INFO    ] Launching Daemon at Mon Aug 31 11:32:23 IST 2026
[2026-08-31 11:32:23,479.479 INFO    ] ================================================
[2026-08-31 11:32:24,064.064 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:32:24
[2026-08-31 11:32:24,720.720 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:32:25,050.050 INFO    ] Initializing speech engine...
[2026-08-31 11:32:25,059.059 INFO    ] 2026-08-31 11:32:25
[2026-08-31 11:32:25,356.356 INFO    ] 2026-08-31 11:32:25
[2026-08-31 11:32:25,477.477 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:32:25,676.676 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:32:25,698.698 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:32:25,882.882 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:32:25,918.918 INFO    ] time= 31/08/2026 11:32:25
[2026-08-31 11:32:25,924.924 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:32:25,945.945 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:32:26,048.048 INFO    ] No existing commands found in stream
[2026-08-31 11:32:31,078.078 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:32:31,081.081 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-08-31 11:32:35,494.494 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 11:32:35,497.497 INFO    ] Checking for system updates...
[2026-08-31 11:32:35,536.536 INFO    ] 200
[2026-08-31 11:32:35,539.539 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:32:35,592.592 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:32:35,594.594 INFO    ] No update needed
[2026-08-31 11:32:35,597.597 INFO    ] Checking for camera pi updates...
[2026-08-31 11:32:35,634.634 INFO    ] 200
[2026-08-31 11:32:35,636.636 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:32:35,681.681 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:32:35,779.779 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:32:35,782.782 INFO    ] No camera update needed
[2026-08-31 11:32:35,784.784 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:32:35,786.786 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:32:35,792.792 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:32:35,797.797 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:32:37,837.837 INFO    ] ================================================
[2026-08-31 11:32:37,853.853 INFO    ] Launching Daemon at Mon Aug 31 11:32:37 IST 2026
[2026-08-31 11:32:37,864.864 INFO    ] ================================================
[2026-08-31 11:32:38,515.515 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:32:38
[2026-08-31 11:32:39,187.187 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:32:39,490.490 INFO    ] Initializing speech engine...
[2026-08-31 11:32:39,499.499 INFO    ] 2026-08-31 11:32:39
[2026-08-31 11:32:39,817.817 INFO    ] 2026-08-31 11:32:39
[2026-08-31 11:32:39,906.906 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:32:41,230.230 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:32:41,237.237 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:32:42,716.716 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:32:42,720.720 INFO    ] time= 31/08/2026 11:32:42
[2026-08-31 11:32:42,723.723 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:32:42,725.725 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:32:44,602.602 INFO    ] No existing commands found in stream
[2026-08-31 11:32:49,612.612 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:32:49,616.616 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-08-31 11:32:53,335.335 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 11:32:53,337.337 INFO    ] Checking for system updates...
[2026-08-31 11:32:53,373.373 INFO    ] 200
[2026-08-31 11:32:53,375.375 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:32:53,435.435 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:32:53,437.437 INFO    ] No update needed
[2026-08-31 11:32:53,440.440 INFO    ] Checking for camera pi updates...
[2026-08-31 11:32:53,478.478 INFO    ] 200
[2026-08-31 11:32:53,480.480 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:32:53,525.525 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:32:53,606.606 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:32:53,609.609 INFO    ] No camera update needed
[2026-08-31 11:32:53,611.611 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:32:53,613.613 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:32:53,619.619 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:32:53,624.624 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:32:55,666.666 INFO    ] ================================================
[2026-08-31 11:32:55,682.682 INFO    ] Launching Daemon at Mon Aug 31 11:32:55 IST 2026
[2026-08-31 11:32:55,693.693 INFO    ] ================================================
[2026-08-31 11:32:56,288.288 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:32:56
[2026-08-31 11:32:56,973.973 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:32:57,305.305 INFO    ] Initializing speech engine...
[2026-08-31 11:32:57,318.318 INFO    ] 2026-08-31 11:32:57
[2026-08-31 11:32:57,620.620 INFO    ] 2026-08-31 11:32:57
[2026-08-31 11:32:57,667.667 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:32:57,971.971 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:32:57,978.978 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:32:58,335.335 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:32:58,401.401 INFO    ] time= 31/08/2026 11:32:58
[2026-08-31 11:32:58,448.448 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:32:58,484.484 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:32:59,031.031 INFO    ] No existing commands found in stream
[2026-08-31 11:33:04,044.044 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:33:04,047.047 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-08-31 11:33:07,540.540 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 11:33:07,543.543 INFO    ] Checking for system updates...
[2026-08-31 11:33:07,583.583 INFO    ] 200
[2026-08-31 11:33:07,586.586 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:33:07,640.640 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:33:07,643.643 INFO    ] No update needed
[2026-08-31 11:33:07,646.646 INFO    ] Checking for camera pi updates...
[2026-08-31 11:33:07,683.683 INFO    ] 200
[2026-08-31 11:33:07,686.686 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:33:07,731.731 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:33:07,835.835 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:33:07,838.838 INFO    ] No camera update needed
[2026-08-31 11:33:07,841.841 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:33:07,844.844 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:33:07,850.850 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:33:07,856.856 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:33:09,898.898 INFO    ] ================================================
[2026-08-31 11:33:09,912.912 INFO    ] Launching Daemon at Mon Aug 31 11:33:09 IST 2026
[2026-08-31 11:33:09,923.923 INFO    ] ================================================
[2026-08-31 11:33:10,569.569 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:33:10
[2026-08-31 11:33:11,231.231 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:33:11,529.529 INFO    ] Initializing speech engine...
[2026-08-31 11:33:11,536.536 INFO    ] 2026-08-31 11:33:11
[2026-08-31 11:33:11,810.810 INFO    ] 2026-08-31 11:33:11
[2026-08-31 11:33:11,865.865 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:33:12,089.089 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:33:12,099.099 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:33:12,349.349 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:33:12,360.360 INFO    ] time= 31/08/2026 11:33:12
[2026-08-31 11:33:12,381.381 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:33:12,407.407 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:33:12,574.574 INFO    ] No existing commands found in stream
[2026-08-31 11:33:17,610.610 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:33:17,614.614 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-08-31 11:33:22,021.021 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 11:33:22,024.024 INFO    ] Checking for system updates...
[2026-08-31 11:33:22,065.065 INFO    ] 200
[2026-08-31 11:33:22,069.069 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:33:22,127.127 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:33:22,130.130 INFO    ] No update needed
[2026-08-31 11:33:22,132.132 INFO    ] Checking for camera pi updates...
[2026-08-31 11:33:22,167.167 INFO    ] 200
[2026-08-31 11:33:22,170.170 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:33:22,216.216 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:33:22,309.309 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:33:22,311.311 INFO    ] No camera update needed
[2026-08-31 11:33:22,314.314 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:33:22,317.317 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:33:22,323.323 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:33:22,330.330 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:33:24,370.370 INFO    ] ================================================
[2026-08-31 11:33:24,385.385 INFO    ] Launching Daemon at Mon Aug 31 11:33:24 IST 2026
[2026-08-31 11:33:24,396.396 INFO    ] ================================================
[2026-08-31 11:33:25,047.047 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:33:25
[2026-08-31 11:33:25,712.712 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:33:26,012.012 INFO    ] Initializing speech engine...
[2026-08-31 11:33:26,023.023 INFO    ] 2026-08-31 11:33:26
[2026-08-31 11:33:26,328.328 INFO    ] 2026-08-31 11:33:26
[2026-08-31 11:33:26,418.418 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:33:26,571.571 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:33:26,577.577 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:33:26,816.816 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:33:26,833.833 INFO    ] time= 31/08/2026 11:33:26
[2026-08-31 11:33:26,851.851 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:33:26,861.861 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:33:26,990.990 INFO    ] No existing commands found in stream
[2026-08-31 11:33:32,014.014 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:33:32,017.017 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-08-31 11:33:32,877.877 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 11:33:32,880.880 INFO    ] Checking for system updates...
[2026-08-31 11:33:32,917.917 INFO    ] 200
[2026-08-31 11:33:32,920.920 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:33:32,974.974 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:33:32,976.976 INFO    ] No update needed
[2026-08-31 11:33:32,979.979 INFO    ] Checking for camera pi updates...
[2026-08-31 11:33:33,014.014 INFO    ] 200
[2026-08-31 11:33:33,017.017 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:33:33,063.063 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:33:33,170.170 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:33:33,174.174 INFO    ] No camera update needed
[2026-08-31 11:33:33,177.177 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:33:33,180.180 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:33:33,187.187 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:33:33,193.193 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:33:35,234.234 INFO    ] ================================================
[2026-08-31 11:33:35,250.250 INFO    ] Launching Daemon at Mon Aug 31 11:33:35 IST 2026
[2026-08-31 11:33:35,261.261 INFO    ] ================================================
[2026-08-31 11:33:35,842.842 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:33:35
[2026-08-31 11:33:36,460.460 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:33:36,712.712 INFO    ] Initializing speech engine...
[2026-08-31 11:33:36,721.721 INFO    ] 2026-08-31 11:33:36
[2026-08-31 11:33:37,018.018 INFO    ] 2026-08-31 11:33:36
[2026-08-31 11:33:37,058.058 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:33:37,246.246 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:33:37,259.259 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:33:37,484.484 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:33:37,501.501 INFO    ] time= 31/08/2026 11:33:37
[2026-08-31 11:33:37,562.562 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:33:37,627.627 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:33:37,761.761 INFO    ] No existing commands found in stream
[2026-08-31 11:33:42,778.778 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:33:42,782.782 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-08-31 11:33:46,453.453 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 11:33:46,456.456 INFO    ] Checking for system updates...
[2026-08-31 11:33:46,495.495 INFO    ] 200
[2026-08-31 11:33:46,497.497 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:33:46,550.550 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:33:46,553.553 INFO    ] No update needed
[2026-08-31 11:33:46,555.555 INFO    ] Checking for camera pi updates...
[2026-08-31 11:33:46,589.589 INFO    ] 200
[2026-08-31 11:33:46,591.591 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:33:46,635.635 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:33:46,718.718 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:33:46,720.720 INFO    ] No camera update needed
[2026-08-31 11:33:46,723.723 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:33:46,725.725 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:33:46,730.730 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:33:46,735.735 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:33:48,777.777 INFO    ] ================================================
[2026-08-31 11:33:48,792.792 INFO    ] Launching Daemon at Mon Aug 31 11:33:48 IST 2026
[2026-08-31 11:33:48,803.803 INFO    ] ================================================
[2026-08-31 11:33:49,389.389 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:33:49
[2026-08-31 11:33:49,989.989 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:33:50,270.270 INFO    ] Initializing speech engine...
[2026-08-31 11:33:50,283.283 INFO    ] 2026-08-31 11:33:50
[2026-08-31 11:33:50,556.556 INFO    ] 2026-08-31 11:33:50
[2026-08-31 11:33:50,664.664 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:33:50,924.924 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:33:50,945.945 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:33:51,222.222 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:33:51,270.270 INFO    ] time= 31/08/2026 11:33:51
[2026-08-31 11:33:51,328.328 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:33:51,367.367 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:33:51,621.621 INFO    ] No existing commands found in stream
[2026-08-31 11:33:56,646.646 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:33:56,649.649 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-08-31 11:33:59,873.873 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 11:33:59,876.876 INFO    ] Checking for system updates...
[2026-08-31 11:33:59,915.915 INFO    ] 200
[2026-08-31 11:33:59,918.918 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:33:59,977.977 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:33:59,980.980 INFO    ] No update needed
[2026-08-31 11:33:59,982.982 INFO    ] Checking for camera pi updates...
[2026-08-31 11:34:00,015.015 INFO    ] 200
[2026-08-31 11:34:00,018.018 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:34:00,058.058 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:34:00,145.145 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:34:00,148.148 INFO    ] No camera update needed
[2026-08-31 11:34:00,150.150 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:34:00,153.153 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:34:00,158.158 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:34:00,163.163 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:34:02,210.210 INFO    ] ================================================
[2026-08-31 11:34:02,228.228 INFO    ] Launching Daemon at Mon Aug 31 11:34:02 IST 2026
[2026-08-31 11:34:02,242.242 INFO    ] ================================================
[2026-08-31 11:34:02,876.876 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:34:02
[2026-08-31 11:34:03,592.592 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:34:03,905.905 INFO    ] Initializing speech engine...
[2026-08-31 11:34:03,916.916 INFO    ] 2026-08-31 11:34:03
[2026-08-31 11:34:04,230.230 INFO    ] 2026-08-31 11:34:04
[2026-08-31 11:34:04,315.315 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:34:04,597.597 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:34:04,642.642 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:34:04,884.884 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:34:04,944.944 INFO    ] time= 31/08/2026 11:34:04
[2026-08-31 11:34:04,994.994 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:34:05,050.050 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:34:05,197.197 INFO    ] No existing commands found in stream
[2026-08-31 11:34:10,211.211 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:34:10,214.214 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-08-31 11:34:11,804.804 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 11:34:11,808.808 INFO    ] Checking for system updates...
[2026-08-31 11:34:11,845.845 INFO    ] 200
[2026-08-31 11:34:11,848.848 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:34:11,901.901 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:34:11,903.903 INFO    ] No update needed
[2026-08-31 11:34:11,906.906 INFO    ] Checking for camera pi updates...
[2026-08-31 11:34:11,939.939 INFO    ] 200
[2026-08-31 11:34:11,942.942 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:34:11,982.982 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:34:12,054.054 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:34:12,056.056 INFO    ] No camera update needed
[2026-08-31 11:34:12,059.059 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:34:12,061.061 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:34:12,066.066 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:34:12,071.071 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:34:14,111.111 INFO    ] ================================================
[2026-08-31 11:34:14,127.127 INFO    ] Launching Daemon at Mon Aug 31 11:34:14 IST 2026
[2026-08-31 11:34:14,138.138 INFO    ] ================================================
[2026-08-31 11:34:14,799.799 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:34:14
[2026-08-31 11:34:15,477.477 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:34:15,784.784 INFO    ] Initializing speech engine...
[2026-08-31 11:34:15,798.798 INFO    ] 2026-08-31 11:34:15
[2026-08-31 11:34:16,113.113 INFO    ] 2026-08-31 11:34:16
[2026-08-31 11:34:16,195.195 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:34:16,406.406 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:34:16,416.416 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:34:16,612.612 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:34:16,631.631 INFO    ] time= 31/08/2026 11:34:16
[2026-08-31 11:34:16,659.659 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:34:16,668.668 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:34:16,770.770 INFO    ] No existing commands found in stream
[2026-08-31 11:34:21,786.786 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:34:21,789.789 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-08-31 11:34:23,220.220 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 11:34:23,223.223 INFO    ] Checking for system updates...
[2026-08-31 11:34:23,261.261 INFO    ] 200
[2026-08-31 11:34:23,264.264 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:34:23,318.318 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:34:23,321.321 INFO    ] No update needed
[2026-08-31 11:34:23,323.323 INFO    ] Checking for camera pi updates...
[2026-08-31 11:34:23,361.361 INFO    ] 200
[2026-08-31 11:34:23,426.426 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:34:23,486.486 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:34:23,645.645 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:34:23,647.647 INFO    ] No camera update needed
[2026-08-31 11:34:23,650.650 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:34:23,652.652 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:34:23,658.658 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:34:23,663.663 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:34:25,703.703 INFO    ] ================================================
[2026-08-31 11:34:25,719.719 INFO    ] Launching Daemon at Mon Aug 31 11:34:25 IST 2026
[2026-08-31 11:34:25,729.729 INFO    ] ================================================
[2026-08-31 11:34:26,394.394 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:34:26
[2026-08-31 11:34:27,080.080 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:34:27,388.388 INFO    ] Initializing speech engine...
[2026-08-31 11:34:27,402.402 INFO    ] 2026-08-31 11:34:27
[2026-08-31 11:34:27,715.715 INFO    ] 2026-08-31 11:34:27
[2026-08-31 11:34:27,800.800 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:34:27,955.955 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:34:27,961.961 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:34:28,105.105 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:34:28,161.161 INFO    ] time= 31/08/2026 11:34:28
[2026-08-31 11:34:28,221.221 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:34:28,230.230 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:34:28,366.366 INFO    ] No existing commands found in stream
[2026-08-31 11:34:33,467.467 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:34:33,470.470 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-08-31 11:34:38,055.055 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 11:34:38,059.059 INFO    ] Checking for system updates...
[2026-08-31 11:34:38,096.096 INFO    ] 200
[2026-08-31 11:34:38,099.099 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:34:38,152.152 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:34:38,155.155 INFO    ] No update needed
[2026-08-31 11:34:38,158.158 INFO    ] Checking for camera pi updates...
[2026-08-31 11:34:38,195.195 INFO    ] 200
[2026-08-31 11:34:38,198.198 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:34:38,244.244 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:34:38,333.333 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:34:38,335.335 INFO    ] No camera update needed
[2026-08-31 11:34:38,338.338 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:34:38,340.340 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:34:38,345.345 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:34:38,350.350 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:34:40,392.392 INFO    ] ================================================
[2026-08-31 11:34:40,408.408 INFO    ] Launching Daemon at Mon Aug 31 11:34:40 IST 2026
[2026-08-31 11:34:40,419.419 INFO    ] ================================================
[2026-08-31 11:34:41,070.070 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:34:41
[2026-08-31 11:34:41,740.740 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:34:42,044.044 INFO    ] Initializing speech engine...
[2026-08-31 11:34:42,052.052 INFO    ] 2026-08-31 11:34:42
[2026-08-31 11:34:42,326.326 INFO    ] 2026-08-31 11:34:42
[2026-08-31 11:34:42,378.378 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:34:42,602.602 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:34:42,612.612 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:34:42,874.874 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:34:42,880.880 INFO    ] time= 31/08/2026 11:34:42
[2026-08-31 11:34:42,896.896 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:34:42,905.905 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:34:43,107.107 INFO    ] No existing commands found in stream
[2026-08-31 11:34:48,138.138 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:34:48,141.141 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-08-31 11:34:49,699.699 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 11:34:49,702.702 INFO    ] Checking for system updates...
[2026-08-31 11:34:49,742.742 INFO    ] 200
[2026-08-31 11:34:49,744.744 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:34:49,803.803 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:34:49,805.805 INFO    ] No update needed
[2026-08-31 11:34:49,808.808 INFO    ] Checking for camera pi updates...
[2026-08-31 11:34:49,841.841 INFO    ] 200
[2026-08-31 11:34:49,843.843 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:34:49,890.890 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:34:49,991.991 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:34:49,993.993 INFO    ] No camera update needed
[2026-08-31 11:34:49,996.996 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:34:49,998.998 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:34:50,003.003 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:34:50,008.008 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:34:52,048.048 INFO    ] ================================================
[2026-08-31 11:34:52,063.063 INFO    ] Launching Daemon at Mon Aug 31 11:34:52 IST 2026
[2026-08-31 11:34:52,073.073 INFO    ] ================================================
[2026-08-31 11:34:52,648.648 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:34:52
[2026-08-31 11:34:53,236.236 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:34:53,510.510 INFO    ] Initializing speech engine...
[2026-08-31 11:34:53,518.518 INFO    ] 2026-08-31 11:34:53
[2026-08-31 11:34:53,774.774 INFO    ] 2026-08-31 11:34:53
[2026-08-31 11:34:53,808.808 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:34:54,053.053 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:34:54,063.063 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:34:54,317.317 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:34:54,324.324 INFO    ] time= 31/08/2026 11:34:54
[2026-08-31 11:34:54,342.342 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:34:54,359.359 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:34:54,476.476 INFO    ] No existing commands found in stream
[2026-08-31 11:34:59,488.488 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:34:59,491.491 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-08-31 11:35:00,778.778 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 11:35:00,781.781 INFO    ] Checking for system updates...
[2026-08-31 11:35:00,818.818 INFO    ] 200
[2026-08-31 11:35:00,821.821 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:35:00,881.881 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:35:00,883.883 INFO    ] No update needed
[2026-08-31 11:35:00,885.885 INFO    ] Checking for camera pi updates...
[2026-08-31 11:35:00,923.923 INFO    ] 200
[2026-08-31 11:35:00,925.925 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:35:00,971.971 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:35:01,208.208 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:35:01,211.211 INFO    ] No camera update needed
[2026-08-31 11:35:01,213.213 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:35:01,215.215 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:35:01,221.221 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:35:01,226.226 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:35:03,270.270 INFO    ] ================================================
[2026-08-31 11:35:03,285.285 INFO    ] Launching Daemon at Mon Aug 31 11:35:03 IST 2026
[2026-08-31 11:35:03,295.295 INFO    ] ================================================
[2026-08-31 11:35:03,887.887 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:35:03
[2026-08-31 11:35:04,472.472 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:35:04,743.743 INFO    ] Initializing speech engine...
[2026-08-31 11:35:04,752.752 INFO    ] 2026-08-31 11:35:04
[2026-08-31 11:35:05,003.003 INFO    ] 2026-08-31 11:35:04
[2026-08-31 11:35:05,038.038 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:35:05,239.239 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:35:05,298.298 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:35:05,524.524 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:35:05,569.569 INFO    ] time= 31/08/2026 11:35:05
[2026-08-31 11:35:05,575.575 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:35:05,596.596 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:35:05,825.825 INFO    ] No existing commands found in stream
[2026-08-31 11:35:10,835.835 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:35:10,838.838 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-08-31 11:35:14,818.818 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 11:35:14,820.820 INFO    ] Checking for system updates...
[2026-08-31 11:35:14,859.859 INFO    ] 200
[2026-08-31 11:35:14,862.862 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:35:14,913.913 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:35:14,916.916 INFO    ] No update needed
[2026-08-31 11:35:14,918.918 INFO    ] Checking for camera pi updates...
[2026-08-31 11:35:14,955.955 INFO    ] 200
[2026-08-31 11:35:14,957.957 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:35:15,001.001 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:35:15,052.052 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:35:15,054.054 INFO    ] No camera update needed
[2026-08-31 11:35:15,056.056 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:35:15,059.059 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:35:15,064.064 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:35:15,069.069 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:35:17,110.110 INFO    ] ================================================
[2026-08-31 11:35:17,125.125 INFO    ] Launching Daemon at Mon Aug 31 11:35:17 IST 2026
[2026-08-31 11:35:17,135.135 INFO    ] ================================================
[2026-08-31 11:35:17,705.705 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:35:17
[2026-08-31 11:35:18,288.288 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:35:18,557.557 INFO    ] Initializing speech engine...
[2026-08-31 11:35:18,565.565 INFO    ] 2026-08-31 11:35:18
[2026-08-31 11:35:18,817.817 INFO    ] 2026-08-31 11:35:18
[2026-08-31 11:35:18,852.852 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:35:19,051.051 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:35:19,078.078 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:35:19,335.335 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:35:19,385.385 INFO    ] time= 31/08/2026 11:35:19
[2026-08-31 11:35:19,391.391 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:35:19,409.409 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:35:19,624.624 INFO    ] No existing commands found in stream
[2026-08-31 11:35:24,651.651 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:35:24,654.654 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-08-31 11:35:29,129.129 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 11:35:29,131.131 INFO    ] Checking for system updates...
[2026-08-31 11:35:29,170.170 INFO    ] 200
[2026-08-31 11:35:29,173.173 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:35:29,226.226 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:35:29,228.228 INFO    ] No update needed
[2026-08-31 11:35:29,231.231 INFO    ] Checking for camera pi updates...
[2026-08-31 11:35:29,263.263 INFO    ] 200
[2026-08-31 11:35:29,266.266 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:35:29,313.313 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:35:29,395.395 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:35:29,398.398 INFO    ] No camera update needed
[2026-08-31 11:35:29,400.400 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:35:29,403.403 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:35:29,408.408 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:35:29,413.413 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:35:31,453.453 INFO    ] ================================================
[2026-08-31 11:35:31,468.468 INFO    ] Launching Daemon at Mon Aug 31 11:35:31 IST 2026
[2026-08-31 11:35:31,479.479 INFO    ] ================================================
[2026-08-31 11:35:32,086.086 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:35:32
[2026-08-31 11:35:32,712.712 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:35:33,011.011 INFO    ] Initializing speech engine...
[2026-08-31 11:35:33,019.019 INFO    ] 2026-08-31 11:35:33
[2026-08-31 11:35:33,288.288 INFO    ] 2026-08-31 11:35:33
[2026-08-31 11:35:33,343.343 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:35:33,564.564 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:35:33,566.566 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:35:33,821.821 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:35:33,835.835 INFO    ] time= 31/08/2026 11:35:33
[2026-08-31 11:35:33,851.851 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:35:33,860.860 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:35:34,252.252 INFO    ] No existing commands found in stream
[2026-08-31 11:35:39,260.260 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:35:39,263.263 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-08-31 11:35:41,614.614 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 11:35:41,616.616 INFO    ] Checking for system updates...
[2026-08-31 11:35:41,652.652 INFO    ] 200
[2026-08-31 11:35:41,654.654 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:35:41,707.707 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:35:41,709.709 INFO    ] No update needed
[2026-08-31 11:35:41,712.712 INFO    ] Checking for camera pi updates...
[2026-08-31 11:35:41,748.748 INFO    ] 200
[2026-08-31 11:35:41,751.751 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:35:41,795.795 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:35:41,993.993 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:35:41,996.996 INFO    ] No camera update needed
[2026-08-31 11:35:41,999.999 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:35:42,001.001 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:35:42,006.006 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:35:42,012.012 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:35:44,051.051 INFO    ] ================================================
[2026-08-31 11:35:44,068.068 INFO    ] Launching Daemon at Mon Aug 31 11:35:44 IST 2026
[2026-08-31 11:35:44,080.080 INFO    ] ================================================
[2026-08-31 11:35:44,645.645 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:35:44
[2026-08-31 11:35:45,228.228 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:35:45,499.499 INFO    ] Initializing speech engine...
[2026-08-31 11:35:45,509.509 INFO    ] 2026-08-31 11:35:45
[2026-08-31 11:35:45,789.789 INFO    ] 2026-08-31 11:35:45
[2026-08-31 11:35:45,846.846 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:35:46,135.135 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:35:46,144.144 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:35:46,345.345 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:35:46,364.364 INFO    ] time= 31/08/2026 11:35:46
[2026-08-31 11:35:46,395.395 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:35:46,403.403 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:35:46,568.568 INFO    ] No existing commands found in stream
[2026-08-31 11:35:51,594.594 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:35:51,597.597 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-08-31 11:35:54,134.134 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 11:35:54,136.136 INFO    ] Checking for system updates...
[2026-08-31 11:35:54,177.177 INFO    ] 200
[2026-08-31 11:35:54,180.180 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:35:54,240.240 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:35:54,243.243 INFO    ] No update needed
[2026-08-31 11:35:54,246.246 INFO    ] Checking for camera pi updates...
[2026-08-31 11:35:54,284.284 INFO    ] 200
[2026-08-31 11:35:54,286.286 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:35:54,332.332 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:35:54,431.431 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:35:54,434.434 INFO    ] No camera update needed
[2026-08-31 11:35:54,436.436 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:35:54,439.439 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:35:54,446.446 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:35:54,451.451 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:35:56,492.492 INFO    ] ================================================
[2026-08-31 11:35:56,507.507 INFO    ] Launching Daemon at Mon Aug 31 11:35:56 IST 2026
[2026-08-31 11:35:56,518.518 INFO    ] ================================================
[2026-08-31 11:35:57,094.094 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:35:57
[2026-08-31 11:35:57,689.689 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:35:57,965.965 INFO    ] Initializing speech engine...
[2026-08-31 11:35:57,974.974 INFO    ] 2026-08-31 11:35:57
[2026-08-31 11:35:58,234.234 INFO    ] 2026-08-31 11:35:58
[2026-08-31 11:35:58,288.288 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:35:58,507.507 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:35:58,517.517 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:35:58,767.767 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:35:58,776.776 INFO    ] time= 31/08/2026 11:35:58
[2026-08-31 11:35:58,794.794 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:35:58,811.811 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:35:59,025.025 INFO    ] No existing commands found in stream
[2026-08-31 11:36:04,050.050 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:36:04,052.052 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-08-31 11:36:04,601.601 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 11:36:04,604.604 INFO    ] Checking for system updates...
[2026-08-31 11:36:04,643.643 INFO    ] 200
[2026-08-31 11:36:04,645.645 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:36:04,705.705 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:36:04,708.708 INFO    ] No update needed
[2026-08-31 11:36:04,711.711 INFO    ] Checking for camera pi updates...
[2026-08-31 11:36:04,748.748 INFO    ] 200
[2026-08-31 11:36:04,751.751 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:36:04,791.791 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:36:04,936.936 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:36:04,938.938 INFO    ] No camera update needed
[2026-08-31 11:36:04,941.941 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:36:04,943.943 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:36:04,949.949 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:36:04,954.954 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:36:07,996.996 INFO    ] ================================================
[2026-08-31 11:36:07,011.011 INFO    ] Launching Daemon at Mon Aug 31 11:36:07 IST 2026
[2026-08-31 11:36:07,022.022 INFO    ] ================================================
[2026-08-31 11:36:07,588.588 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:36:07
[2026-08-31 11:36:08,171.171 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:36:08,424.424 INFO    ] Initializing speech engine...
[2026-08-31 11:36:08,430.430 INFO    ] 2026-08-31 11:36:08
[2026-08-31 11:36:08,727.727 INFO    ] 2026-08-31 11:36:08
[2026-08-31 11:36:08,754.754 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:36:08,963.963 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:36:08,978.978 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:36:09,213.213 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:36:09,230.230 INFO    ] time= 31/08/2026 11:36:09
[2026-08-31 11:36:09,244.244 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:36:09,288.288 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:36:09,376.376 INFO    ] No existing commands found in stream
[2026-08-31 11:36:14,400.400 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:36:14,403.403 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-08-31 11:36:17,075.075 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 11:36:17,078.078 INFO    ] Checking for system updates...
[2026-08-31 11:36:17,114.114 INFO    ] 200
[2026-08-31 11:36:17,116.116 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:36:17,175.175 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:36:17,177.177 INFO    ] No update needed
[2026-08-31 11:36:17,180.180 INFO    ] Checking for camera pi updates...
[2026-08-31 11:36:17,217.217 INFO    ] 200
[2026-08-31 11:36:17,220.220 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:36:17,264.264 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:36:17,352.352 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:36:17,354.354 INFO    ] No camera update needed
[2026-08-31 11:36:17,356.356 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:36:17,359.359 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:36:17,364.364 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:36:17,369.369 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:36:19,409.409 INFO    ] ================================================
[2026-08-31 11:36:19,425.425 INFO    ] Launching Daemon at Mon Aug 31 11:36:19 IST 2026
[2026-08-31 11:36:19,436.436 INFO    ] ================================================
[2026-08-31 11:36:20,086.086 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:36:20
[2026-08-31 11:36:20,756.756 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:36:21,057.057 INFO    ] Initializing speech engine...
[2026-08-31 11:36:21,065.065 INFO    ] 2026-08-31 11:36:21
[2026-08-31 11:36:21,340.340 INFO    ] 2026-08-31 11:36:21
[2026-08-31 11:36:21,395.395 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:36:22,224.224 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:36:22,253.253 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:36:23,072.072 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:36:23,077.077 INFO    ] time= 31/08/2026 11:36:23
[2026-08-31 11:36:23,081.081 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:36:23,085.085 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:36:23,831.831 INFO    ] No existing commands found in stream
[2026-08-31 11:36:28,842.842 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:36:28,845.845 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-08-31 11:36:32,369.369 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 11:36:32,372.372 INFO    ] Checking for system updates...
[2026-08-31 11:36:32,416.416 INFO    ] 200
[2026-08-31 11:36:32,419.419 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:36:32,485.485 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:36:32,488.488 INFO    ] No update needed
[2026-08-31 11:36:32,490.490 INFO    ] Checking for camera pi updates...
[2026-08-31 11:36:32,528.528 INFO    ] 200
[2026-08-31 11:36:32,531.531 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:36:32,579.579 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:36:32,642.642 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:36:32,644.644 INFO    ] No camera update needed
[2026-08-31 11:36:32,647.647 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:36:32,650.650 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:36:32,656.656 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:36:32,662.662 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:36:34,702.702 INFO    ] ================================================
[2026-08-31 11:36:34,718.718 INFO    ] Launching Daemon at Mon Aug 31 11:36:34 IST 2026
[2026-08-31 11:36:34,728.728 INFO    ] ================================================
[2026-08-31 11:36:35,310.310 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:36:35
[2026-08-31 11:36:35,906.906 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:36:36,182.182 INFO    ] Initializing speech engine...
[2026-08-31 11:36:36,189.189 INFO    ] 2026-08-31 11:36:36
[2026-08-31 11:36:36,450.450 INFO    ] 2026-08-31 11:36:36
[2026-08-31 11:36:36,503.503 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:36:36,752.752 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:36:36,758.758 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:36:36,969.969 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:36:36,997.997 INFO    ] time= 31/08/2026 11:36:36
[2026-08-31 11:36:37,003.003 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:36:37,024.024 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:36:37,216.216 INFO    ] No existing commands found in stream
[2026-08-31 11:36:42,246.246 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:36:42,249.249 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-08-31 11:36:43,372.372 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 11:36:43,374.374 INFO    ] Checking for system updates...
[2026-08-31 11:36:43,415.415 INFO    ] 200
[2026-08-31 11:36:43,418.418 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:36:43,479.479 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:36:43,482.482 INFO    ] No update needed
[2026-08-31 11:36:43,485.485 INFO    ] Checking for camera pi updates...
[2026-08-31 11:36:43,523.523 INFO    ] 200
[2026-08-31 11:36:43,525.525 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:36:43,572.572 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:36:43,653.653 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:36:43,656.656 INFO    ] No camera update needed
[2026-08-31 11:36:43,659.659 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:36:43,662.662 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:36:43,668.668 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:36:43,674.674 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:36:45,715.715 INFO    ] ================================================
[2026-08-31 11:36:45,731.731 INFO    ] Launching Daemon at Mon Aug 31 11:36:45 IST 2026
[2026-08-31 11:36:45,742.742 INFO    ] ================================================
[2026-08-31 11:36:46,308.308 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:36:46
[2026-08-31 11:36:46,892.892 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:36:47,161.161 INFO    ] Initializing speech engine...
[2026-08-31 11:36:47,171.171 INFO    ] 2026-08-31 11:36:47
[2026-08-31 11:36:47,421.421 INFO    ] 2026-08-31 11:36:47
[2026-08-31 11:36:47,456.456 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:36:47,654.654 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:36:47,672.672 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:36:47,860.860 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:36:47,902.902 INFO    ] time= 31/08/2026 11:36:47
[2026-08-31 11:36:47,956.956 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:36:47,997.997 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:36:48,116.116 INFO    ] No existing commands found in stream
[2026-08-31 11:36:53,143.143 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:36:53,146.146 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-08-31 11:36:54,692.692 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 11:36:54,695.695 INFO    ] Checking for system updates...
[2026-08-31 11:36:54,730.730 INFO    ] 200
[2026-08-31 11:36:54,732.732 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:36:54,786.786 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:36:54,789.789 INFO    ] No update needed
[2026-08-31 11:36:54,791.791 INFO    ] Checking for camera pi updates...
[2026-08-31 11:36:54,828.828 INFO    ] 200
[2026-08-31 11:36:54,831.831 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:36:54,876.876 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:36:54,959.959 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:36:54,961.961 INFO    ] No camera update needed
[2026-08-31 11:36:54,963.963 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:36:54,965.965 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:36:54,971.971 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:36:54,976.976 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:36:57,017.017 INFO    ] ================================================
[2026-08-31 11:36:57,032.032 INFO    ] Launching Daemon at Mon Aug 31 11:36:57 IST 2026
[2026-08-31 11:36:57,043.043 INFO    ] ================================================
[2026-08-31 11:36:57,608.608 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:36:57
[2026-08-31 11:36:58,191.191 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:36:58,462.462 INFO    ] Initializing speech engine...
[2026-08-31 11:36:58,470.470 INFO    ] 2026-08-31 11:36:58
[2026-08-31 11:36:58,727.727 INFO    ] 2026-08-31 11:36:58
[2026-08-31 11:36:58,756.756 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:36:59,009.009 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:36:59,014.014 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:36:59,250.250 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:36:59,270.270 INFO    ] time= 31/08/2026 11:36:59
[2026-08-31 11:36:59,276.276 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:36:59,294.294 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:36:59,414.414 INFO    ] No existing commands found in stream
[2026-08-31 11:37:04,438.438 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:37:04,441.441 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-08-31 11:37:06,014.014 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 11:37:06,016.016 INFO    ] Checking for system updates...
[2026-08-31 11:37:06,055.055 INFO    ] 200
[2026-08-31 11:37:06,057.057 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:37:06,111.111 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:37:06,113.113 INFO    ] No update needed
[2026-08-31 11:37:06,115.115 INFO    ] Checking for camera pi updates...
[2026-08-31 11:37:06,151.151 INFO    ] 200
[2026-08-31 11:37:06,153.153 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:37:06,205.205 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:37:06,302.302 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:37:06,305.305 INFO    ] No camera update needed
[2026-08-31 11:37:06,307.307 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:37:06,309.309 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:37:06,315.315 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:37:06,320.320 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:37:08,360.360 INFO    ] ================================================
[2026-08-31 11:37:08,375.375 INFO    ] Launching Daemon at Mon Aug 31 11:37:08 IST 2026
[2026-08-31 11:37:08,386.386 INFO    ] ================================================
[2026-08-31 11:37:08,967.967 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:37:08
[2026-08-31 11:37:09,568.568 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:37:09,823.823 INFO    ] Initializing speech engine...
[2026-08-31 11:37:09,836.836 INFO    ] 2026-08-31 11:37:09
[2026-08-31 11:37:10,098.098 INFO    ] 2026-08-31 11:37:10
[2026-08-31 11:37:10,134.134 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:37:10,330.330 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:37:10,370.370 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:37:10,529.529 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:37:10,573.573 INFO    ] time= 31/08/2026 11:37:10
[2026-08-31 11:37:10,631.631 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:37:10,662.662 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:37:10,778.778 INFO    ] No existing commands found in stream
[2026-08-31 11:37:15,809.809 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:37:15,811.811 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-08-31 11:37:19,893.893 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 11:37:19,896.896 INFO    ] Checking for system updates...
[2026-08-31 11:37:19,932.932 INFO    ] 200
[2026-08-31 11:37:19,934.934 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:37:19,987.987 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:37:19,990.990 INFO    ] No update needed
[2026-08-31 11:37:19,993.993 INFO    ] Checking for camera pi updates...
[2026-08-31 11:37:20,026.026 INFO    ] 200
[2026-08-31 11:37:20,029.029 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:37:20,070.070 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:37:20,129.129 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:37:20,132.132 INFO    ] No camera update needed
[2026-08-31 11:37:20,134.134 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:37:20,137.137 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:37:20,143.143 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:37:20,149.149 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:37:22,189.189 INFO    ] ================================================
[2026-08-31 11:37:22,204.204 INFO    ] Launching Daemon at Mon Aug 31 11:37:22 IST 2026
[2026-08-31 11:37:22,215.215 INFO    ] ================================================
[2026-08-31 11:37:22,804.804 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:37:22
[2026-08-31 11:37:23,415.415 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:37:23,683.683 INFO    ] Initializing speech engine...
[2026-08-31 11:37:23,692.692 INFO    ] 2026-08-31 11:37:23
[2026-08-31 11:37:23,942.942 INFO    ] 2026-08-31 11:37:23
[2026-08-31 11:37:23,976.976 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:37:24,156.156 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:37:24,171.171 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:37:24,304.304 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:37:24,311.311 INFO    ] time= 31/08/2026 11:37:24
[2026-08-31 11:37:24,342.342 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:37:24,377.377 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:37:24,504.504 INFO    ] No existing commands found in stream
[2026-08-31 11:37:29,514.514 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:37:29,517.517 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-08-31 11:37:32,201.201 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 11:37:32,204.204 INFO    ] Checking for system updates...
[2026-08-31 11:37:32,259.259 INFO    ] 200
[2026-08-31 11:37:32,262.262 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:37:32,326.326 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:37:32,329.329 INFO    ] No update needed
[2026-08-31 11:37:32,332.332 INFO    ] Checking for camera pi updates...
[2026-08-31 11:37:32,372.372 INFO    ] 200
[2026-08-31 11:37:32,375.375 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:37:32,428.428 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:37:32,542.542 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:37:32,545.545 INFO    ] No camera update needed
[2026-08-31 11:37:32,548.548 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:37:32,551.551 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:37:32,559.559 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:37:32,566.566 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:37:34,612.612 INFO    ] ================================================
[2026-08-31 11:37:34,628.628 INFO    ] Launching Daemon at Mon Aug 31 11:37:34 IST 2026
[2026-08-31 11:37:34,638.638 INFO    ] ================================================
[2026-08-31 11:37:35,236.236 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:37:35
[2026-08-31 11:37:35,817.817 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:37:36,064.064 INFO    ] Initializing speech engine...
[2026-08-31 11:37:36,078.078 INFO    ] 2026-08-31 11:37:36
[2026-08-31 11:37:36,340.340 INFO    ] 2026-08-31 11:37:36
[2026-08-31 11:37:36,374.374 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:37:36,630.630 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:37:36,634.634 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:37:36,768.768 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:37:36,807.807 INFO    ] time= 31/08/2026 11:37:36
[2026-08-31 11:37:36,872.872 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:37:36,900.900 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:37:36,951.951 INFO    ] No existing commands found in stream
[2026-08-31 11:37:41,963.963 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:37:41,965.965 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-08-31 11:37:45,248.248 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 11:37:45,251.251 INFO    ] Checking for system updates...
[2026-08-31 11:37:45,289.289 INFO    ] 200
[2026-08-31 11:37:45,292.292 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:37:45,349.349 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:37:45,351.351 INFO    ] No update needed
[2026-08-31 11:37:45,354.354 INFO    ] Checking for camera pi updates...
[2026-08-31 11:37:45,388.388 INFO    ] 200
[2026-08-31 11:37:45,390.390 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:37:45,433.433 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:37:45,635.635 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:37:45,637.637 INFO    ] No camera update needed
[2026-08-31 11:37:45,640.640 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:37:45,642.642 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:37:45,648.648 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:37:45,653.653 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:37:47,693.693 INFO    ] ================================================
[2026-08-31 11:37:47,709.709 INFO    ] Launching Daemon at Mon Aug 31 11:37:47 IST 2026
[2026-08-31 11:37:47,719.719 INFO    ] ================================================
[2026-08-31 11:37:48,368.368 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:37:48
[2026-08-31 11:37:49,023.023 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:37:49,299.299 INFO    ] Initializing speech engine...
[2026-08-31 11:37:49,309.309 INFO    ] 2026-08-31 11:37:49
[2026-08-31 11:37:49,572.572 INFO    ] 2026-08-31 11:37:49
[2026-08-31 11:37:49,625.625 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:37:49,922.922 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:37:49,928.928 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:37:50,131.131 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:37:50,148.148 INFO    ] time= 31/08/2026 11:37:50
[2026-08-31 11:37:50,154.154 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:37:50,174.174 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:37:50,284.284 INFO    ] No existing commands found in stream
[2026-08-31 11:37:55,308.308 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:37:55,311.311 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-08-31 11:37:56,757.757 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 11:37:56,760.760 INFO    ] Checking for system updates...
[2026-08-31 11:37:56,795.795 INFO    ] 200
[2026-08-31 11:37:56,798.798 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:37:56,850.850 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:37:56,853.853 INFO    ] No update needed
[2026-08-31 11:37:56,855.855 INFO    ] Checking for camera pi updates...
[2026-08-31 11:37:56,891.891 INFO    ] 200
[2026-08-31 11:37:56,893.893 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:37:56,933.933 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:37:57,029.029 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:37:57,032.032 INFO    ] No camera update needed
[2026-08-31 11:37:57,034.034 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:37:57,036.036 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:37:57,042.042 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:37:57,047.047 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:37:59,086.086 INFO    ] ================================================
[2026-08-31 11:37:59,102.102 INFO    ] Launching Daemon at Mon Aug 31 11:37:59 IST 2026
[2026-08-31 11:37:59,119.119 INFO    ] ================================================
[2026-08-31 11:37:59,697.697 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:37:59
[2026-08-31 11:38:00,293.293 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:38:00,568.568 INFO    ] Initializing speech engine...
[2026-08-31 11:38:00,578.578 INFO    ] 2026-08-31 11:38:00
[2026-08-31 11:38:00,839.839 INFO    ] 2026-08-31 11:38:00
[2026-08-31 11:38:00,892.892 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:38:01,122.122 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:38:01,143.143 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:38:01,358.358 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:38:01,389.389 INFO    ] time= 31/08/2026 11:38:01
[2026-08-31 11:38:01,404.404 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:38:01,412.412 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:38:01,556.556 INFO    ] No existing commands found in stream
[2026-08-31 11:38:06,583.583 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:38:06,586.586 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-08-31 11:38:09,433.433 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 11:38:09,436.436 INFO    ] Checking for system updates...
[2026-08-31 11:38:09,474.474 INFO    ] 200
[2026-08-31 11:38:09,476.476 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:38:09,537.537 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:38:09,540.540 INFO    ] No update needed
[2026-08-31 11:38:09,543.543 INFO    ] Checking for camera pi updates...
[2026-08-31 11:38:09,578.578 INFO    ] 200
[2026-08-31 11:38:09,581.581 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:38:09,621.621 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:38:09,692.692 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:38:09,694.694 INFO    ] No camera update needed
[2026-08-31 11:38:09,697.697 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:38:09,699.699 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:38:09,705.705 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:38:09,710.710 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:38:11,751.751 INFO    ] ================================================
[2026-08-31 11:38:11,767.767 INFO    ] Launching Daemon at Mon Aug 31 11:38:11 IST 2026
[2026-08-31 11:38:11,779.779 INFO    ] ================================================
[2026-08-31 11:38:12,389.389 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:38:12
[2026-08-31 11:38:12,988.988 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:38:13,250.250 INFO    ] Initializing speech engine...
[2026-08-31 11:38:13,255.255 INFO    ] 2026-08-31 11:38:13
[2026-08-31 11:38:13,531.531 INFO    ] 2026-08-31 11:38:13
[2026-08-31 11:38:13,600.600 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:38:13,821.821 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:38:13,830.830 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:38:14,055.055 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:38:14,091.091 INFO    ] time= 31/08/2026 11:38:14
[2026-08-31 11:38:14,096.096 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:38:14,115.115 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:38:14,242.242 INFO    ] No existing commands found in stream
[2026-08-31 11:38:19,258.258 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:38:19,261.261 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-08-31 11:38:21,055.055 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 11:38:21,058.058 INFO    ] Checking for system updates...
[2026-08-31 11:38:21,098.098 INFO    ] 200
[2026-08-31 11:38:21,101.101 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:38:21,154.154 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:38:21,157.157 INFO    ] No update needed
[2026-08-31 11:38:21,160.160 INFO    ] Checking for camera pi updates...
[2026-08-31 11:38:21,198.198 INFO    ] 200
[2026-08-31 11:38:21,200.200 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:38:21,246.246 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:38:21,365.365 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:38:21,368.368 INFO    ] No camera update needed
[2026-08-31 11:38:21,371.371 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:38:21,373.373 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:38:21,378.378 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:38:21,383.383 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:38:23,425.425 INFO    ] ================================================
[2026-08-31 11:38:23,441.441 INFO    ] Launching Daemon at Mon Aug 31 11:38:23 IST 2026
[2026-08-31 11:38:23,451.451 INFO    ] ================================================
[2026-08-31 11:38:24,023.023 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:38:24
[2026-08-31 11:38:24,607.607 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:38:24,883.883 INFO    ] Initializing speech engine...
[2026-08-31 11:38:24,889.889 INFO    ] 2026-08-31 11:38:24
[2026-08-31 11:38:25,149.149 INFO    ] 2026-08-31 11:38:25
[2026-08-31 11:38:25,209.209 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:38:25,437.437 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:38:25,446.446 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:38:25,584.584 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:38:25,600.600 INFO    ] time= 31/08/2026 11:38:25
[2026-08-31 11:38:25,660.660 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:38:25,720.720 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:38:25,819.819 INFO    ] No existing commands found in stream
[2026-08-31 11:38:30,849.849 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:38:30,852.852 INFO    ] Waiting 0.00 seconds before fallback handling...
[2026-08-31 11:38:31,351.351 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 11:38:31,353.353 INFO    ] Checking for system updates...
[2026-08-31 11:38:31,393.393 INFO    ] 200
[2026-08-31 11:38:31,396.396 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:38:31,456.456 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:38:31,459.459 INFO    ] No update needed
[2026-08-31 11:38:31,461.461 INFO    ] Checking for camera pi updates...
[2026-08-31 11:38:31,499.499 INFO    ] 200
[2026-08-31 11:38:31,502.502 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:38:31,542.542 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:38:31,627.627 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:38:31,630.630 INFO    ] No camera update needed
[2026-08-31 11:38:31,632.632 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:38:31,634.634 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:38:31,640.640 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:38:31,645.645 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:38:33,684.684 INFO    ] ================================================
[2026-08-31 11:38:33,699.699 INFO    ] Launching Daemon at Mon Aug 31 11:38:33 IST 2026
[2026-08-31 11:38:33,710.710 INFO    ] ================================================
[2026-08-31 11:38:34,324.324 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:38:34
[2026-08-31 11:38:34,911.911 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:38:35,182.182 INFO    ] Initializing speech engine...
[2026-08-31 11:38:35,191.191 INFO    ] 2026-08-31 11:38:35
[2026-08-31 11:38:35,442.442 INFO    ] 2026-08-31 11:38:35
[2026-08-31 11:38:35,478.478 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:38:35,676.676 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:38:35,704.704 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:38:35,968.968 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:38:36,010.010 INFO    ] time= 31/08/2026 11:38:35
[2026-08-31 11:38:36,016.016 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:38:36,035.035 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:38:36,171.171 INFO    ] No existing commands found in stream
[2026-08-31 11:38:41,193.193 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:38:41,195.195 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-08-31 11:38:43,798.798 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 11:38:43,800.800 INFO    ] Checking for system updates...
[2026-08-31 11:38:43,840.840 INFO    ] 200
[2026-08-31 11:38:43,843.843 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:38:43,896.896 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:38:43,899.899 INFO    ] No update needed
[2026-08-31 11:38:43,901.901 INFO    ] Checking for camera pi updates...
[2026-08-31 11:38:43,939.939 INFO    ] 200
[2026-08-31 11:38:43,942.942 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:38:43,987.987 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:38:44,072.072 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:38:44,074.074 INFO    ] No camera update needed
[2026-08-31 11:38:44,077.077 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:38:44,079.079 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:38:44,084.084 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:38:44,089.089 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:38:46,130.130 INFO    ] ================================================
[2026-08-31 11:38:46,145.145 INFO    ] Launching Daemon at Mon Aug 31 11:38:46 IST 2026
[2026-08-31 11:38:46,155.155 INFO    ] ================================================
[2026-08-31 11:38:46,733.733 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:38:46
[2026-08-31 11:38:47,329.329 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:38:47,600.600 INFO    ] Initializing speech engine...
[2026-08-31 11:38:47,609.609 INFO    ] 2026-08-31 11:38:47
[2026-08-31 11:38:47,870.870 INFO    ] 2026-08-31 11:38:47
[2026-08-31 11:38:47,922.922 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:38:48,204.204 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:38:48,212.212 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:38:48,404.404 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:38:48,411.411 INFO    ] time= 31/08/2026 11:38:48
[2026-08-31 11:38:48,429.429 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:38:48,447.447 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:38:48,564.564 INFO    ] No existing commands found in stream
[2026-08-31 11:38:53,585.585 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:38:53,588.588 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-08-31 11:38:55,368.368 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 11:38:55,371.371 INFO    ] Checking for system updates...
[2026-08-31 11:38:55,411.411 INFO    ] 200
[2026-08-31 11:38:55,413.413 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:38:55,474.474 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:38:55,477.477 INFO    ] No update needed
[2026-08-31 11:38:55,479.479 INFO    ] Checking for camera pi updates...
[2026-08-31 11:38:55,517.517 INFO    ] 200
[2026-08-31 11:38:55,520.520 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:38:55,565.565 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:38:55,650.650 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:38:55,653.653 INFO    ] No camera update needed
[2026-08-31 11:38:55,655.655 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:38:55,658.658 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:38:55,663.663 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:38:55,668.668 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:38:57,708.708 INFO    ] ================================================
[2026-08-31 11:38:57,723.723 INFO    ] Launching Daemon at Mon Aug 31 11:38:57 IST 2026
[2026-08-31 11:38:57,734.734 INFO    ] ================================================
[2026-08-31 11:38:58,303.303 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:38:58
[2026-08-31 11:38:58,885.885 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:38:59,155.155 INFO    ] Initializing speech engine...
[2026-08-31 11:38:59,164.164 INFO    ] 2026-08-31 11:38:59
[2026-08-31 11:38:59,416.416 INFO    ] 2026-08-31 11:38:59
[2026-08-31 11:38:59,451.451 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:38:59,636.636 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:38:59,653.653 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:38:59,789.789 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:38:59,795.795 INFO    ] time= 31/08/2026 11:38:59
[2026-08-31 11:38:59,815.815 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:38:59,862.862 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:38:59,992.992 INFO    ] No existing commands found in stream
[2026-08-31 11:39:05,003.003 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:39:05,006.006 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-08-31 11:39:07,534.534 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 11:39:07,536.536 INFO    ] Checking for system updates...
[2026-08-31 11:39:07,576.576 INFO    ] 200
[2026-08-31 11:39:07,579.579 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:39:07,632.632 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:39:07,634.634 INFO    ] No update needed
[2026-08-31 11:39:07,636.636 INFO    ] Checking for camera pi updates...
[2026-08-31 11:39:07,679.679 INFO    ] 200
[2026-08-31 11:39:07,681.681 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:39:07,723.723 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:39:07,821.821 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:39:07,824.824 INFO    ] No camera update needed
[2026-08-31 11:39:07,826.826 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:39:07,828.828 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:39:07,834.834 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:39:07,839.839 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:39:09,882.882 INFO    ] ================================================
[2026-08-31 11:39:09,897.897 INFO    ] Launching Daemon at Mon Aug 31 11:39:09 IST 2026
[2026-08-31 11:39:09,908.908 INFO    ] ================================================
[2026-08-31 11:39:10,486.486 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:39:10
[2026-08-31 11:39:11,083.083 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:39:11,360.360 INFO    ] Initializing speech engine...
[2026-08-31 11:39:11,367.367 INFO    ] 2026-08-31 11:39:11
[2026-08-31 11:39:11,629.629 INFO    ] 2026-08-31 11:39:11
[2026-08-31 11:39:11,658.658 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:39:11,904.904 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:39:11,913.913 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:39:12,127.127 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:39:12,175.175 INFO    ] time= 31/08/2026 11:39:12
[2026-08-31 11:39:12,182.182 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:39:12,201.201 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:39:12,360.360 INFO    ] No existing commands found in stream
[2026-08-31 11:39:17,390.390 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:39:17,393.393 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-08-31 11:39:18,937.937 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 11:39:18,939.939 INFO    ] Checking for system updates...
[2026-08-31 11:39:18,975.975 INFO    ] 200
[2026-08-31 11:39:18,978.978 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:39:19,038.038 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:39:19,040.040 INFO    ] No update needed
[2026-08-31 11:39:19,042.042 INFO    ] Checking for camera pi updates...
[2026-08-31 11:39:19,080.080 INFO    ] 200
[2026-08-31 11:39:19,082.082 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:39:19,122.122 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:39:19,206.206 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:39:19,208.208 INFO    ] No camera update needed
[2026-08-31 11:39:19,211.211 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:39:19,213.213 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:39:19,218.218 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:39:19,223.223 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:39:21,264.264 INFO    ] ================================================
[2026-08-31 11:39:21,279.279 INFO    ] Launching Daemon at Mon Aug 31 11:39:21 IST 2026
[2026-08-31 11:39:21,290.290 INFO    ] ================================================
[2026-08-31 11:39:21,863.863 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:39:21
[2026-08-31 11:39:22,460.460 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:39:22,719.719 INFO    ] Initializing speech engine...
[2026-08-31 11:39:22,736.736 INFO    ] 2026-08-31 11:39:22
[2026-08-31 11:39:23,025.025 INFO    ] 2026-08-31 11:39:22
[2026-08-31 11:39:23,063.063 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:39:23,292.292 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:39:23,359.359 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:39:23,600.600 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:39:23,650.650 INFO    ] time= 31/08/2026 11:39:23
[2026-08-31 11:39:23,666.666 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:39:23,672.672 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:39:23,803.803 INFO    ] No existing commands found in stream
[2026-08-31 11:39:28,826.826 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:39:28,829.829 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-08-31 11:39:32,934.934 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 11:39:32,938.938 INFO    ] Checking for system updates...
[2026-08-31 11:39:32,982.982 INFO    ] 200
[2026-08-31 11:39:32,985.985 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:39:33,060.060 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:39:33,065.065 INFO    ] No update needed
[2026-08-31 11:39:33,070.070 INFO    ] Checking for camera pi updates...
[2026-08-31 11:39:33,117.117 INFO    ] 200
[2026-08-31 11:39:33,120.120 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:39:33,167.167 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:39:33,274.274 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:39:33,276.276 INFO    ] No camera update needed
[2026-08-31 11:39:33,279.279 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:39:33,281.281 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:39:33,286.286 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:39:33,291.291 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:39:35,331.331 INFO    ] ================================================
[2026-08-31 11:39:35,347.347 INFO    ] Launching Daemon at Mon Aug 31 11:39:35 IST 2026
[2026-08-31 11:39:35,358.358 INFO    ] ================================================
[2026-08-31 11:39:35,939.939 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:39:35
[2026-08-31 11:39:36,538.538 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:39:36,802.802 INFO    ] Initializing speech engine...
[2026-08-31 11:39:36,811.811 INFO    ] 2026-08-31 11:39:36
[2026-08-31 11:39:37,109.109 INFO    ] 2026-08-31 11:39:37
[2026-08-31 11:39:37,145.145 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:39:37,330.330 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:39:37,349.349 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:39:37,506.506 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:39:37,510.510 INFO    ] time= 31/08/2026 11:39:37
[2026-08-31 11:39:37,518.518 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:39:37,566.566 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:39:37,709.709 INFO    ] No existing commands found in stream
[2026-08-31 11:39:42,719.719 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:39:42,722.722 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-08-31 11:39:43,566.566 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 11:39:43,569.569 INFO    ] Checking for system updates...
[2026-08-31 11:39:43,609.609 INFO    ] 200
[2026-08-31 11:39:43,611.611 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:39:43,671.671 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:39:43,673.673 INFO    ] No update needed
[2026-08-31 11:39:43,675.675 INFO    ] Checking for camera pi updates...
[2026-08-31 11:39:43,708.708 INFO    ] 200
[2026-08-31 11:39:43,711.711 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:39:43,756.756 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:39:43,825.825 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:39:43,827.827 INFO    ] No camera update needed
[2026-08-31 11:39:43,830.830 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:39:43,832.832 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:39:43,837.837 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:39:43,842.842 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:39:45,882.882 INFO    ] ================================================
[2026-08-31 11:39:45,897.897 INFO    ] Launching Daemon at Mon Aug 31 11:39:45 IST 2026
[2026-08-31 11:39:45,907.907 INFO    ] ================================================
[2026-08-31 11:39:46,488.488 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:39:46
[2026-08-31 11:39:47,088.088 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:39:47,360.360 INFO    ] Initializing speech engine...
[2026-08-31 11:39:47,369.369 INFO    ] 2026-08-31 11:39:47
[2026-08-31 11:39:47,626.626 INFO    ] 2026-08-31 11:39:47
[2026-08-31 11:39:47,686.686 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:39:47,857.857 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:39:47,910.910 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:39:48,127.127 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:39:48,175.175 INFO    ] time= 31/08/2026 11:39:48
[2026-08-31 11:39:48,181.181 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:39:48,199.199 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:39:48,339.339 INFO    ] No existing commands found in stream
[2026-08-31 11:39:53,365.365 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:39:53,368.368 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-08-31 11:39:56,884.884 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 11:39:56,887.887 INFO    ] Checking for system updates...
[2026-08-31 11:39:56,929.929 INFO    ] 200
[2026-08-31 11:39:56,932.932 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:39:56,986.986 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:39:56,989.989 INFO    ] No update needed
[2026-08-31 11:39:56,992.992 INFO    ] Checking for camera pi updates...
[2026-08-31 11:39:57,033.033 INFO    ] 200
[2026-08-31 11:39:57,036.036 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:39:57,082.082 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:39:57,250.250 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:39:57,253.253 INFO    ] No camera update needed
[2026-08-31 11:39:57,256.256 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:39:57,259.259 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:39:57,265.265 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:39:57,271.271 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:39:59,313.313 INFO    ] ================================================
[2026-08-31 11:39:59,328.328 INFO    ] Launching Daemon at Mon Aug 31 11:39:59 IST 2026
[2026-08-31 11:39:59,338.338 INFO    ] ================================================
[2026-08-31 11:39:59,909.909 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:39:59
[2026-08-31 11:40:00,493.493 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:40:00,764.764 INFO    ] Initializing speech engine...
[2026-08-31 11:40:00,773.773 INFO    ] 2026-08-31 11:40:00
[2026-08-31 11:40:01,022.022 INFO    ] 2026-08-31 11:40:01
[2026-08-31 11:40:01,058.058 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:40:01,255.255 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:40:01,300.300 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:40:01,464.464 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:40:01,511.511 INFO    ] time= 31/08/2026 11:40:01
[2026-08-31 11:40:01,570.570 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:40:01,600.600 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:40:01,713.713 INFO    ] No existing commands found in stream
[2026-08-31 11:40:06,735.735 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:40:06,738.738 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-08-31 11:40:08,471.471 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 11:40:08,474.474 INFO    ] Checking for system updates...
[2026-08-31 11:40:08,513.513 INFO    ] 200
[2026-08-31 11:40:08,516.516 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:40:08,571.571 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:40:08,573.573 INFO    ] No update needed
[2026-08-31 11:40:08,576.576 INFO    ] Checking for camera pi updates...
[2026-08-31 11:40:08,614.614 INFO    ] 200
[2026-08-31 11:40:08,617.617 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:40:08,663.663 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:40:08,769.769 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:40:08,772.772 INFO    ] No camera update needed
[2026-08-31 11:40:08,774.774 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:40:08,777.777 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:40:08,783.783 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:40:08,788.788 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:40:10,829.829 INFO    ] ================================================
[2026-08-31 11:40:10,844.844 INFO    ] Launching Daemon at Mon Aug 31 11:40:10 IST 2026
[2026-08-31 11:40:10,854.854 INFO    ] ================================================
[2026-08-31 11:40:11,432.432 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:40:11
[2026-08-31 11:40:12,020.020 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:40:12,294.294 INFO    ] Initializing speech engine...
[2026-08-31 11:40:12,300.300 INFO    ] 2026-08-31 11:40:12
[2026-08-31 11:40:12,552.552 INFO    ] 2026-08-31 11:40:12
[2026-08-31 11:40:12,610.610 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:40:12,832.832 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:40:12,841.841 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:40:13,065.065 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:40:13,100.100 INFO    ] time= 31/08/2026 11:40:13
[2026-08-31 11:40:13,106.106 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:40:13,123.123 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:40:13,238.238 INFO    ] No existing commands found in stream
[2026-08-31 11:40:18,260.260 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:40:18,263.263 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-08-31 11:40:20,082.082 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 11:40:20,084.084 INFO    ] Checking for system updates...
[2026-08-31 11:40:20,123.123 INFO    ] 200
[2026-08-31 11:40:20,126.126 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:40:20,179.179 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:40:20,181.181 INFO    ] No update needed
[2026-08-31 11:40:20,183.183 INFO    ] Checking for camera pi updates...
[2026-08-31 11:40:20,217.217 INFO    ] 200
[2026-08-31 11:40:20,220.220 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:40:20,261.261 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:40:20,327.327 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:40:20,329.329 INFO    ] No camera update needed
[2026-08-31 11:40:20,332.332 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:40:20,334.334 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:40:20,339.339 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:40:20,344.344 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:40:22,386.386 INFO    ] ================================================
[2026-08-31 11:40:22,401.401 INFO    ] Launching Daemon at Mon Aug 31 11:40:22 IST 2026
[2026-08-31 11:40:22,412.412 INFO    ] ================================================
[2026-08-31 11:40:23,065.065 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:40:23
[2026-08-31 11:40:23,736.736 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:40:24,031.031 INFO    ] Initializing speech engine...
[2026-08-31 11:40:24,041.041 INFO    ] 2026-08-31 11:40:24
[2026-08-31 11:40:24,331.331 INFO    ] 2026-08-31 11:40:24
[2026-08-31 11:40:24,377.377 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:40:24,602.602 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:40:24,608.608 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:40:24,874.874 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:40:24,885.885 INFO    ] time= 31/08/2026 11:40:24
[2026-08-31 11:40:24,914.914 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:40:24,923.923 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:40:25,023.023 INFO    ] No existing commands found in stream
[2026-08-31 11:40:30,043.043 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:40:30,046.046 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-08-31 11:40:30,690.690 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 11:40:30,693.693 INFO    ] Checking for system updates...
[2026-08-31 11:40:30,730.730 INFO    ] 200
[2026-08-31 11:40:30,733.733 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:40:30,786.786 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:40:30,789.789 INFO    ] No update needed
[2026-08-31 11:40:30,792.792 INFO    ] Checking for camera pi updates...
[2026-08-31 11:40:30,831.831 INFO    ] 200
[2026-08-31 11:40:30,834.834 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:40:30,880.880 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:40:30,986.986 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:40:30,989.989 INFO    ] No camera update needed
[2026-08-31 11:40:30,991.991 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:40:30,993.993 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:40:30,998.998 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:40:31,003.003 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:40:33,045.045 INFO    ] ================================================
[2026-08-31 11:40:33,062.062 INFO    ] Launching Daemon at Mon Aug 31 11:40:33 IST 2026
[2026-08-31 11:40:33,075.075 INFO    ] ================================================
[2026-08-31 11:40:33,687.687 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:40:33
[2026-08-31 11:40:34,337.337 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:40:34,638.638 INFO    ] Initializing speech engine...
[2026-08-31 11:40:34,652.652 INFO    ] 2026-08-31 11:40:34
[2026-08-31 11:40:34,933.933 INFO    ] 2026-08-31 11:40:34
[2026-08-31 11:40:34,979.979 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:40:35,250.250 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:40:35,269.269 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:40:35,448.448 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:40:35,470.470 INFO    ] time= 31/08/2026 11:40:35
[2026-08-31 11:40:35,497.497 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:40:35,517.517 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:40:35,637.637 INFO    ] No existing commands found in stream
[2026-08-31 11:40:40,666.666 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:40:40,670.670 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-08-31 11:40:44,352.352 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 11:40:44,354.354 INFO    ] Checking for system updates...
[2026-08-31 11:40:44,395.395 INFO    ] 200
[2026-08-31 11:40:44,398.398 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:40:44,453.453 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:40:44,456.456 INFO    ] No update needed
[2026-08-31 11:40:44,459.459 INFO    ] Checking for camera pi updates...
[2026-08-31 11:40:44,494.494 INFO    ] 200
[2026-08-31 11:40:44,497.497 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:40:44,539.539 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:40:44,620.620 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:40:44,623.623 INFO    ] No camera update needed
[2026-08-31 11:40:44,625.625 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:40:44,628.628 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:40:44,634.634 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:40:44,640.640 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:40:46,682.682 INFO    ] ================================================
[2026-08-31 11:40:46,698.698 INFO    ] Launching Daemon at Mon Aug 31 11:40:46 IST 2026
[2026-08-31 11:40:46,710.710 INFO    ] ================================================
[2026-08-31 11:40:47,276.276 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:40:47
[2026-08-31 11:40:47,857.857 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:40:48,125.125 INFO    ] Initializing speech engine...
[2026-08-31 11:40:48,134.134 INFO    ] 2026-08-31 11:40:48
[2026-08-31 11:40:48,380.380 INFO    ] 2026-08-31 11:40:48
[2026-08-31 11:40:48,415.415 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:40:48,611.611 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:40:48,668.668 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:40:48,894.894 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:40:48,933.933 INFO    ] time= 31/08/2026 11:40:48
[2026-08-31 11:40:48,939.939 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:40:48,956.956 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:40:49,076.076 INFO    ] No existing commands found in stream
[2026-08-31 11:40:54,097.097 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:40:54,100.100 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-08-31 11:40:56,959.959 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 11:40:56,961.961 INFO    ] Checking for system updates...
[2026-08-31 11:40:56,997.997 INFO    ] 200
[2026-08-31 11:40:57,000.000 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:40:57,061.061 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:40:57,063.063 INFO    ] No update needed
[2026-08-31 11:40:57,068.068 INFO    ] Checking for camera pi updates...
[2026-08-31 11:40:57,102.102 INFO    ] 200
[2026-08-31 11:40:57,104.104 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:40:57,145.145 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:40:57,227.227 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:40:57,229.229 INFO    ] No camera update needed
[2026-08-31 11:40:57,232.232 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:40:57,234.234 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:40:57,239.239 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:40:57,244.244 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:40:59,286.286 INFO    ] ================================================
[2026-08-31 11:40:59,301.301 INFO    ] Launching Daemon at Mon Aug 31 11:40:59 IST 2026
[2026-08-31 11:40:59,312.312 INFO    ] ================================================
[2026-08-31 11:40:59,879.879 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:40:59
[2026-08-31 11:41:00,464.464 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:41:00,723.723 INFO    ] Initializing speech engine...
[2026-08-31 11:41:00,742.742 INFO    ] 2026-08-31 11:41:00
[2026-08-31 11:41:00,989.989 INFO    ] 2026-08-31 11:41:00
[2026-08-31 11:41:01,024.024 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:41:01,275.275 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:41:01,285.285 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:41:01,473.473 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:41:01,477.477 INFO    ] time= 31/08/2026 11:41:01
[2026-08-31 11:41:01,487.487 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:41:01,490.490 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:41:01,569.569 INFO    ] No existing commands found in stream
[2026-08-31 11:41:06,580.580 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:41:06,582.582 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-08-31 11:41:10,568.568 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 11:41:10,571.571 INFO    ] Checking for system updates...
[2026-08-31 11:41:10,606.606 INFO    ] 200
[2026-08-31 11:41:10,609.609 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:41:10,661.661 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:41:10,663.663 INFO    ] No update needed
[2026-08-31 11:41:10,666.666 INFO    ] Checking for camera pi updates...
[2026-08-31 11:41:10,703.703 INFO    ] 200
[2026-08-31 11:41:10,708.708 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:41:10,762.762 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:41:10,853.853 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:41:10,856.856 INFO    ] No camera update needed
[2026-08-31 11:41:10,859.859 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:41:10,861.861 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:41:10,868.868 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:41:10,873.873 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:41:12,916.916 INFO    ] ================================================
[2026-08-31 11:41:12,932.932 INFO    ] Launching Daemon at Mon Aug 31 11:41:12 IST 2026
[2026-08-31 11:41:12,943.943 INFO    ] ================================================
[2026-08-31 11:41:13,508.508 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:41:13
[2026-08-31 11:41:14,095.095 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:41:14,349.349 INFO    ] Initializing speech engine...
[2026-08-31 11:41:14,358.358 INFO    ] 2026-08-31 11:41:14
[2026-08-31 11:41:14,653.653 INFO    ] 2026-08-31 11:41:14
[2026-08-31 11:41:14,679.679 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:41:14,844.844 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:41:14,860.860 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:41:15,041.041 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:41:15,064.064 INFO    ] time= 31/08/2026 11:41:15
[2026-08-31 11:41:15,069.069 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:41:15,074.074 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:41:15,219.219 INFO    ] No existing commands found in stream
[2026-08-31 11:41:20,249.249 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:41:20,252.252 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-08-31 11:41:22,436.436 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 11:41:22,439.439 INFO    ] Checking for system updates...
[2026-08-31 11:41:22,475.475 INFO    ] 200
[2026-08-31 11:41:22,477.477 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:41:22,531.531 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:41:22,533.533 INFO    ] No update needed
[2026-08-31 11:41:22,535.535 INFO    ] Checking for camera pi updates...
[2026-08-31 11:41:22,569.569 INFO    ] 200
[2026-08-31 11:41:22,572.572 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:41:22,613.613 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:41:22,693.693 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:41:22,695.695 INFO    ] No camera update needed
[2026-08-31 11:41:22,698.698 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:41:22,700.700 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:41:22,705.705 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:41:22,710.710 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:41:24,750.750 INFO    ] ================================================
[2026-08-31 11:41:24,766.766 INFO    ] Launching Daemon at Mon Aug 31 11:41:24 IST 2026
[2026-08-31 11:41:24,776.776 INFO    ] ================================================
[2026-08-31 11:41:25,363.363 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:41:25
[2026-08-31 11:41:25,965.965 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:41:26,245.245 INFO    ] Initializing speech engine...
[2026-08-31 11:41:26,252.252 INFO    ] 2026-08-31 11:41:26
[2026-08-31 11:41:26,513.513 INFO    ] 2026-08-31 11:41:26
[2026-08-31 11:41:26,543.543 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:41:26,730.730 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:41:26,773.773 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:41:26,931.931 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:41:26,976.976 INFO    ] time= 31/08/2026 11:41:26
[2026-08-31 11:41:27,040.040 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:41:27,062.062 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:41:27,200.200 INFO    ] No existing commands found in stream
[2026-08-31 11:41:32,220.220 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:41:32,223.223 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-08-31 11:41:35,527.527 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 11:41:35,530.530 INFO    ] Checking for system updates...
[2026-08-31 11:41:35,569.569 INFO    ] 200
[2026-08-31 11:41:35,572.572 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:41:35,626.626 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:41:35,629.629 INFO    ] No update needed
[2026-08-31 11:41:35,631.631 INFO    ] Checking for camera pi updates...
[2026-08-31 11:41:35,670.670 INFO    ] 200
[2026-08-31 11:41:35,673.673 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:41:35,715.715 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:41:35,815.815 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:41:35,818.818 INFO    ] No camera update needed
[2026-08-31 11:41:35,823.823 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:41:35,825.825 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:41:35,832.832 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:41:35,838.838 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:41:37,881.881 INFO    ] ================================================
[2026-08-31 11:41:37,898.898 INFO    ] Launching Daemon at Mon Aug 31 11:41:37 IST 2026
[2026-08-31 11:41:37,909.909 INFO    ] ================================================
[2026-08-31 11:41:38,552.552 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:41:38
[2026-08-31 11:41:39,224.224 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:41:39,529.529 INFO    ] Initializing speech engine...
[2026-08-31 11:41:39,543.543 INFO    ] 2026-08-31 11:41:39
[2026-08-31 11:41:39,828.828 INFO    ] 2026-08-31 11:41:39
[2026-08-31 11:41:39,869.869 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:41:40,152.152 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:41:40,161.161 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:41:40,356.356 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:41:40,363.363 INFO    ] time= 31/08/2026 11:41:40
[2026-08-31 11:41:40,384.384 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:41:40,412.412 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:41:40,558.558 INFO    ] No existing commands found in stream
[2026-08-31 11:41:45,594.594 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:41:45,597.597 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-08-31 11:41:48,774.774 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 11:41:48,777.777 INFO    ] Checking for system updates...
[2026-08-31 11:41:48,814.814 INFO    ] 200
[2026-08-31 11:41:48,816.816 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:41:48,870.870 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:41:48,873.873 INFO    ] No update needed
[2026-08-31 11:41:48,876.876 INFO    ] Checking for camera pi updates...
[2026-08-31 11:41:48,911.911 INFO    ] 200
[2026-08-31 11:41:48,914.914 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:41:48,960.960 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:41:49,041.041 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:41:49,044.044 INFO    ] No camera update needed
[2026-08-31 11:41:49,046.046 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:41:49,049.049 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:41:49,055.055 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:41:49,061.061 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:41:51,101.101 INFO    ] ================================================
[2026-08-31 11:41:51,117.117 INFO    ] Launching Daemon at Mon Aug 31 11:41:51 IST 2026
[2026-08-31 11:41:51,128.128 INFO    ] ================================================
[2026-08-31 11:41:51,778.778 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:41:51
[2026-08-31 11:41:52,449.449 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:41:52,762.762 INFO    ] Initializing speech engine...
[2026-08-31 11:41:52,767.767 INFO    ] 2026-08-31 11:41:52
[2026-08-31 11:41:53,052.052 INFO    ] 2026-08-31 11:41:53
[2026-08-31 11:41:53,163.163 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:41:53,355.355 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:41:53,378.378 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:41:53,573.573 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:41:53,581.581 INFO    ] time= 31/08/2026 11:41:53
[2026-08-31 11:41:53,600.600 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:41:53,627.627 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:41:53,736.736 INFO    ] No existing commands found in stream
[2026-08-31 11:41:58,757.757 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:41:58,760.760 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-08-31 11:42:01,810.810 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 11:42:01,814.814 INFO    ] Checking for system updates...
[2026-08-31 11:42:01,867.867 INFO    ] 200
[2026-08-31 11:42:01,870.870 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:42:01,932.932 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:42:01,935.935 INFO    ] No update needed
[2026-08-31 11:42:01,938.938 INFO    ] Checking for camera pi updates...
[2026-08-31 11:42:01,976.976 INFO    ] 200
[2026-08-31 11:42:01,979.979 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:42:02,029.029 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:42:02,213.213 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:42:02,216.216 INFO    ] No camera update needed
[2026-08-31 11:42:02,226.226 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:42:02,229.229 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:42:02,236.236 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:42:02,244.244 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:42:04,289.289 INFO    ] ================================================
[2026-08-31 11:42:04,305.305 INFO    ] Launching Daemon at Mon Aug 31 11:42:04 IST 2026
[2026-08-31 11:42:04,315.315 INFO    ] ================================================
[2026-08-31 11:42:04,903.903 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:42:04
[2026-08-31 11:42:05,508.508 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:42:05,799.799 INFO    ] Initializing speech engine...
[2026-08-31 11:42:05,812.812 INFO    ] 2026-08-31 11:42:05
[2026-08-31 11:42:06,097.097 INFO    ] 2026-08-31 11:42:06
[2026-08-31 11:42:06,141.141 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:42:06,369.369 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:42:06,376.376 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:42:06,591.591 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:42:06,641.641 INFO    ] time= 31/08/2026 11:42:06
[2026-08-31 11:42:06,689.689 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:42:06,696.696 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:42:06,824.824 INFO    ] No existing commands found in stream
[2026-08-31 11:42:11,841.841 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:42:11,844.844 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-08-31 11:42:14,843.843 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 11:42:14,845.845 INFO    ] Checking for system updates...
[2026-08-31 11:42:14,881.881 INFO    ] 200
[2026-08-31 11:42:14,884.884 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:42:14,938.938 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:42:14,941.941 INFO    ] No update needed
[2026-08-31 11:42:14,943.943 INFO    ] Checking for camera pi updates...
[2026-08-31 11:42:14,977.977 INFO    ] 200
[2026-08-31 11:42:14,980.980 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:42:15,020.020 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:42:15,097.097 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:42:15,099.099 INFO    ] No camera update needed
[2026-08-31 11:42:15,102.102 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:42:15,104.104 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:42:15,109.109 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:42:15,114.114 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:42:17,156.156 INFO    ] ================================================
[2026-08-31 11:42:17,171.171 INFO    ] Launching Daemon at Mon Aug 31 11:42:17 IST 2026
[2026-08-31 11:42:17,182.182 INFO    ] ================================================
[2026-08-31 11:42:17,813.813 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:42:17
[2026-08-31 11:42:18,411.411 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:42:18,686.686 INFO    ] Initializing speech engine...
[2026-08-31 11:42:18,696.696 INFO    ] 2026-08-31 11:42:18
[2026-08-31 11:42:18,944.944 INFO    ] 2026-08-31 11:42:18
[2026-08-31 11:42:18,979.979 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:42:19,172.172 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:42:19,200.200 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:42:19,371.371 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:42:19,408.408 INFO    ] time= 31/08/2026 11:42:19
[2026-08-31 11:42:19,462.462 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:42:19,505.505 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:42:19,643.643 INFO    ] No existing commands found in stream
[2026-08-31 11:42:24,660.660 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:42:24,662.662 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-08-31 11:42:28,526.526 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 11:42:28,528.528 INFO    ] Checking for system updates...
[2026-08-31 11:42:28,565.565 INFO    ] 200
[2026-08-31 11:42:28,568.568 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:42:28,621.621 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:42:28,624.624 INFO    ] No update needed
[2026-08-31 11:42:28,626.626 INFO    ] Checking for camera pi updates...
[2026-08-31 11:42:28,662.662 INFO    ] 200
[2026-08-31 11:42:28,665.665 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:42:28,705.705 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:42:28,786.786 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:42:28,789.789 INFO    ] No camera update needed
[2026-08-31 11:42:28,791.791 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:42:28,793.793 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:42:28,799.799 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:42:28,804.804 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:42:30,845.845 INFO    ] ================================================
[2026-08-31 11:42:30,861.861 INFO    ] Launching Daemon at Mon Aug 31 11:42:30 IST 2026
[2026-08-31 11:42:30,872.872 INFO    ] ================================================
[2026-08-31 11:42:31,447.447 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:42:31
[2026-08-31 11:42:32,074.074 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:42:32,373.373 INFO    ] Initializing speech engine...
[2026-08-31 11:42:32,389.389 INFO    ] 2026-08-31 11:42:32
[2026-08-31 11:42:32,689.689 INFO    ] 2026-08-31 11:42:32
[2026-08-31 11:42:32,724.724 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:42:32,916.916 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:42:32,929.929 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:42:33,082.082 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:42:33,136.136 INFO    ] time= 31/08/2026 11:42:33
[2026-08-31 11:42:33,157.157 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:42:33,216.216 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:42:33,320.320 INFO    ] No existing commands found in stream
[2026-08-31 11:42:38,337.337 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:42:38,340.340 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-08-31 11:42:39,046.046 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 11:42:39,048.048 INFO    ] Checking for system updates...
[2026-08-31 11:42:39,087.087 INFO    ] 200
[2026-08-31 11:42:39,090.090 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:42:39,142.142 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:42:39,144.144 INFO    ] No update needed
[2026-08-31 11:42:39,146.146 INFO    ] Checking for camera pi updates...
[2026-08-31 11:42:39,183.183 INFO    ] 200
[2026-08-31 11:42:39,186.186 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:42:39,231.231 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:42:39,314.314 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:42:39,316.316 INFO    ] No camera update needed
[2026-08-31 11:42:39,319.319 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:42:39,321.321 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:42:39,326.326 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:42:39,331.331 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:42:41,372.372 INFO    ] ================================================
[2026-08-31 11:42:41,387.387 INFO    ] Launching Daemon at Mon Aug 31 11:42:41 IST 2026
[2026-08-31 11:42:41,398.398 INFO    ] ================================================
[2026-08-31 11:42:41,981.981 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:42:41
[2026-08-31 11:42:42,577.577 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:42:42,827.827 INFO    ] Initializing speech engine...
[2026-08-31 11:42:42,834.834 INFO    ] 2026-08-31 11:42:42
[2026-08-31 11:42:43,124.124 INFO    ] 2026-08-31 11:42:43
[2026-08-31 11:42:43,160.160 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:42:43,357.357 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:42:43,371.371 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:42:43,532.532 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:42:43,540.540 INFO    ] time= 31/08/2026 11:42:43
[2026-08-31 11:42:43,548.548 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:42:43,596.596 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:42:43,716.716 INFO    ] No existing commands found in stream
[2026-08-31 11:42:48,742.742 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:42:48,745.745 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-08-31 11:42:52,812.812 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 11:42:52,815.815 INFO    ] Checking for system updates...
[2026-08-31 11:42:52,851.851 INFO    ] 200
[2026-08-31 11:42:52,854.854 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:42:52,907.907 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:42:52,910.910 INFO    ] No update needed
[2026-08-31 11:42:52,913.913 INFO    ] Checking for camera pi updates...
[2026-08-31 11:42:52,946.946 INFO    ] 200
[2026-08-31 11:42:52,949.949 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:42:52,989.989 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:42:53,070.070 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:42:53,072.072 INFO    ] No camera update needed
[2026-08-31 11:42:53,074.074 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:42:53,077.077 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:42:53,082.082 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:42:53,087.087 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:42:55,127.127 INFO    ] ================================================
[2026-08-31 11:42:55,142.142 INFO    ] Launching Daemon at Mon Aug 31 11:42:55 IST 2026
[2026-08-31 11:42:55,153.153 INFO    ] ================================================
[2026-08-31 11:42:55,721.721 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:42:55
[2026-08-31 11:42:56,312.312 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:42:56,561.561 INFO    ] Initializing speech engine...
[2026-08-31 11:42:56,583.583 INFO    ] 2026-08-31 11:42:56
[2026-08-31 11:42:56,836.836 INFO    ] 2026-08-31 11:42:56
[2026-08-31 11:42:56,877.877 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:42:57,122.122 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:42:57,131.131 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:42:57,386.386 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:42:57,392.392 INFO    ] time= 31/08/2026 11:42:57
[2026-08-31 11:42:57,413.413 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:42:57,442.442 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:42:57,545.545 INFO    ] No existing commands found in stream
[2026-08-31 11:43:02,559.559 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:43:02,563.563 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-08-31 11:43:04,409.409 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 11:43:04,412.412 INFO    ] Checking for system updates...
[2026-08-31 11:43:04,449.449 INFO    ] 200
[2026-08-31 11:43:04,451.451 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:43:04,504.504 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:43:04,506.506 INFO    ] No update needed
[2026-08-31 11:43:04,509.509 INFO    ] Checking for camera pi updates...
[2026-08-31 11:43:04,542.542 INFO    ] 200
[2026-08-31 11:43:04,544.544 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:43:04,585.585 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:43:04,688.688 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:43:04,691.691 INFO    ] No camera update needed
[2026-08-31 11:43:04,693.693 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:43:04,695.695 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:43:04,701.701 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:43:04,705.705 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:43:06,748.748 INFO    ] ================================================
[2026-08-31 11:43:06,763.763 INFO    ] Launching Daemon at Mon Aug 31 11:43:06 IST 2026
[2026-08-31 11:43:06,774.774 INFO    ] ================================================
[2026-08-31 11:43:07,384.384 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:43:07
[2026-08-31 11:43:08,053.053 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:43:08,358.358 INFO    ] Initializing speech engine...
[2026-08-31 11:43:08,367.367 INFO    ] 2026-08-31 11:43:08
[2026-08-31 11:43:08,656.656 INFO    ] 2026-08-31 11:43:08
[2026-08-31 11:43:08,701.701 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:43:08,932.932 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:43:08,937.937 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:43:09,172.172 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:43:09,204.204 INFO    ] time= 31/08/2026 11:43:09
[2026-08-31 11:43:09,222.222 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:43:09,232.232 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:43:09,364.364 INFO    ] No existing commands found in stream
[2026-08-31 11:43:14,380.380 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:43:14,383.383 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-08-31 11:43:16,692.692 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 11:43:16,695.695 INFO    ] Checking for system updates...
[2026-08-31 11:43:16,732.732 INFO    ] 200
[2026-08-31 11:43:16,734.734 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:43:16,795.795 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:43:16,797.797 INFO    ] No update needed
[2026-08-31 11:43:16,800.800 INFO    ] Checking for camera pi updates...
[2026-08-31 11:43:16,833.833 INFO    ] 200
[2026-08-31 11:43:16,836.836 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:43:16,877.877 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:43:16,983.983 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:43:16,985.985 INFO    ] No camera update needed
[2026-08-31 11:43:16,988.988 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:43:16,990.990 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:43:16,995.995 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:43:17,000.000 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:43:19,039.039 INFO    ] ================================================
[2026-08-31 11:43:19,054.054 INFO    ] Launching Daemon at Mon Aug 31 11:43:19 IST 2026
[2026-08-31 11:43:19,065.065 INFO    ] ================================================
[2026-08-31 11:43:19,629.629 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:43:19
[2026-08-31 11:43:20,211.211 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:43:20,471.471 INFO    ] Initializing speech engine...
[2026-08-31 11:43:20,489.489 INFO    ] 2026-08-31 11:43:20
[2026-08-31 11:43:20,740.740 INFO    ] 2026-08-31 11:43:20
[2026-08-31 11:43:20,774.774 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:43:21,033.033 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:43:21,042.042 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:43:21,181.181 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:43:21,226.226 INFO    ] time= 31/08/2026 11:43:21
[2026-08-31 11:43:21,264.264 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:43:21,316.316 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:43:21,470.470 INFO    ] No existing commands found in stream
[2026-08-31 11:43:26,490.490 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:43:26,493.493 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-08-31 11:43:29,159.159 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 11:43:29,162.162 INFO    ] Checking for system updates...
[2026-08-31 11:43:29,198.198 INFO    ] 200
[2026-08-31 11:43:29,201.201 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:43:29,253.253 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:43:29,255.255 INFO    ] No update needed
[2026-08-31 11:43:29,258.258 INFO    ] Checking for camera pi updates...
[2026-08-31 11:43:29,292.292 INFO    ] 200
[2026-08-31 11:43:29,294.294 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:43:29,334.334 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:43:29,416.416 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:43:29,418.418 INFO    ] No camera update needed
[2026-08-31 11:43:29,421.421 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:43:29,423.423 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:43:29,428.428 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:43:29,433.433 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:43:31,474.474 INFO    ] ================================================
[2026-08-31 11:43:31,490.490 INFO    ] Launching Daemon at Mon Aug 31 11:43:31 IST 2026
[2026-08-31 11:43:31,500.500 INFO    ] ================================================
[2026-08-31 11:43:32,202.202 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:43:32
[2026-08-31 11:43:32,928.928 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:43:33,232.232 INFO    ] Initializing speech engine...
[2026-08-31 11:43:33,245.245 INFO    ] 2026-08-31 11:43:33
[2026-08-31 11:43:33,529.529 INFO    ] 2026-08-31 11:43:33
[2026-08-31 11:43:33,573.573 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:43:33,855.855 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:43:33,864.864 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:43:34,063.063 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:43:34,081.081 INFO    ] time= 31/08/2026 11:43:34
[2026-08-31 11:43:34,094.094 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:43:34,120.120 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:43:34,262.262 INFO    ] No existing commands found in stream
[2026-08-31 11:43:39,288.288 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:43:39,291.291 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-08-31 11:43:43,410.410 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 11:43:43,413.413 INFO    ] Checking for system updates...
[2026-08-31 11:43:43,448.448 INFO    ] 200
[2026-08-31 11:43:43,451.451 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:43:43,506.506 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:43:43,509.509 INFO    ] No update needed
[2026-08-31 11:43:43,512.512 INFO    ] Checking for camera pi updates...
[2026-08-31 11:43:43,545.545 INFO    ] 200
[2026-08-31 11:43:43,548.548 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:43:43,589.589 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:43:43,672.672 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:43:43,674.674 INFO    ] No camera update needed
[2026-08-31 11:43:43,676.676 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:43:43,679.679 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:43:43,684.684 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:43:43,689.689 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:43:45,730.730 INFO    ] ================================================
[2026-08-31 11:43:45,745.745 INFO    ] Launching Daemon at Mon Aug 31 11:43:45 IST 2026
[2026-08-31 11:43:45,755.755 INFO    ] ================================================
[2026-08-31 11:43:46,320.320 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:43:46
[2026-08-31 11:43:46,919.919 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:43:47,196.196 INFO    ] Initializing speech engine...
[2026-08-31 11:43:47,202.202 INFO    ] 2026-08-31 11:43:47
[2026-08-31 11:43:47,462.462 INFO    ] 2026-08-31 11:43:47
[2026-08-31 11:43:47,515.515 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:43:47,765.765 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:43:47,770.770 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:43:47,961.961 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:43:48,002.002 INFO    ] time= 31/08/2026 11:43:47
[2026-08-31 11:43:48,009.009 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:43:48,029.029 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:43:48,157.157 INFO    ] No existing commands found in stream
[2026-08-31 11:43:53,177.177 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:43:53,180.180 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-08-31 11:43:56,149.149 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 11:43:56,151.151 INFO    ] Checking for system updates...
[2026-08-31 11:43:56,191.191 INFO    ] 200
[2026-08-31 11:43:56,194.194 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:43:56,253.253 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:43:56,256.256 INFO    ] No update needed
[2026-08-31 11:43:56,259.259 INFO    ] Checking for camera pi updates...
[2026-08-31 11:43:56,296.296 INFO    ] 200
[2026-08-31 11:43:56,299.299 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:43:56,345.345 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:43:56,425.425 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:43:56,428.428 INFO    ] No camera update needed
[2026-08-31 11:43:56,430.430 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:43:56,433.433 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:43:56,438.438 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:43:56,443.443 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:43:58,484.484 INFO    ] ================================================
[2026-08-31 11:43:58,499.499 INFO    ] Launching Daemon at Mon Aug 31 11:43:58 IST 2026
[2026-08-31 11:43:58,509.509 INFO    ] ================================================
[2026-08-31 11:43:59,079.079 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:43:59
[2026-08-31 11:43:59,660.660 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:43:59,926.926 INFO    ] Initializing speech engine...
[2026-08-31 11:43:59,935.935 INFO    ] 2026-08-31 11:43:59
[2026-08-31 11:44:00,194.194 INFO    ] 2026-08-31 11:44:00
[2026-08-31 11:44:00,247.247 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:44:00,467.467 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:44:00,476.476 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:44:00,728.728 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:44:00,734.734 INFO    ] time= 31/08/2026 11:44:00
[2026-08-31 11:44:00,752.752 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:44:00,780.780 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:44:00,885.885 INFO    ] No existing commands found in stream
[2026-08-31 11:44:05,897.897 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:44:05,900.900 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-08-31 11:44:06,842.842 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 11:44:06,845.845 INFO    ] Checking for system updates...
[2026-08-31 11:44:06,880.880 INFO    ] 200
[2026-08-31 11:44:06,882.882 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:44:06,934.934 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:44:06,937.937 INFO    ] No update needed
[2026-08-31 11:44:06,939.939 INFO    ] Checking for camera pi updates...
[2026-08-31 11:44:06,976.976 INFO    ] 200
[2026-08-31 11:44:06,979.979 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:44:07,019.019 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:44:07,100.100 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:44:07,102.102 INFO    ] No camera update needed
[2026-08-31 11:44:07,105.105 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:44:07,107.107 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:44:07,114.114 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:44:07,119.119 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:44:09,159.159 INFO    ] ================================================
[2026-08-31 11:44:09,174.174 INFO    ] Launching Daemon at Mon Aug 31 11:44:09 IST 2026
[2026-08-31 11:44:09,185.185 INFO    ] ================================================
[2026-08-31 11:44:09,755.755 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:44:09
[2026-08-31 11:44:10,339.339 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:44:10,589.589 INFO    ] Initializing speech engine...
[2026-08-31 11:44:10,611.611 INFO    ] 2026-08-31 11:44:10
[2026-08-31 11:44:10,866.866 INFO    ] 2026-08-31 11:44:10
[2026-08-31 11:44:10,901.901 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:44:11,084.084 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:44:11,099.099 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:44:11,298.298 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:44:11,350.350 INFO    ] time= 31/08/2026 11:44:11
[2026-08-31 11:44:11,419.419 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:44:11,434.434 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:44:11,588.588 INFO    ] No existing commands found in stream
[2026-08-31 11:44:16,606.606 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:44:16,609.609 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-08-31 11:44:18,548.548 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 11:44:18,551.551 INFO    ] Checking for system updates...
[2026-08-31 11:44:18,591.591 INFO    ] 200
[2026-08-31 11:44:18,593.593 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:44:18,646.646 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:44:18,649.649 INFO    ] No update needed
[2026-08-31 11:44:18,651.651 INFO    ] Checking for camera pi updates...
[2026-08-31 11:44:18,685.685 INFO    ] 200
[2026-08-31 11:44:18,688.688 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:44:18,732.732 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:44:18,838.838 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:44:18,841.841 INFO    ] No camera update needed
[2026-08-31 11:44:18,843.843 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:44:18,845.845 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:44:18,851.851 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:44:18,856.856 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:44:20,896.896 INFO    ] ================================================
[2026-08-31 11:44:20,911.911 INFO    ] Launching Daemon at Mon Aug 31 11:44:20 IST 2026
[2026-08-31 11:44:20,922.922 INFO    ] ================================================
[2026-08-31 11:44:21,526.526 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:44:21
[2026-08-31 11:44:22,207.207 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:44:22,506.506 INFO    ] Initializing speech engine...
[2026-08-31 11:44:22,513.513 INFO    ] 2026-08-31 11:44:22
[2026-08-31 11:44:22,770.770 INFO    ] 2026-08-31 11:44:22
[2026-08-31 11:44:22,804.804 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:44:23,084.084 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:44:23,089.089 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:44:23,285.285 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:44:23,328.328 INFO    ] time= 31/08/2026 11:44:23
[2026-08-31 11:44:23,335.335 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:44:23,351.351 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:44:23,511.511 INFO    ] No existing commands found in stream
[2026-08-31 11:44:28,531.531 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:44:28,534.534 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-08-31 11:44:29,485.485 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 11:44:29,488.488 INFO    ] Checking for system updates...
[2026-08-31 11:44:29,529.529 INFO    ] 200
[2026-08-31 11:44:29,532.532 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:44:29,592.592 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:44:29,595.595 INFO    ] No update needed
[2026-08-31 11:44:29,598.598 INFO    ] Checking for camera pi updates...
[2026-08-31 11:44:29,637.637 INFO    ] 200
[2026-08-31 11:44:29,640.640 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:44:29,688.688 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:44:29,771.771 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:44:29,773.773 INFO    ] No camera update needed
[2026-08-31 11:44:29,776.776 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:44:29,779.779 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:44:29,785.785 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:44:29,791.791 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:44:31,834.834 INFO    ] ================================================
[2026-08-31 11:44:31,850.850 INFO    ] Launching Daemon at Mon Aug 31 11:44:31 IST 2026
[2026-08-31 11:44:31,862.862 INFO    ] ================================================
[2026-08-31 11:44:32,511.511 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:44:32
[2026-08-31 11:44:33,130.130 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:44:33,397.397 INFO    ] Initializing speech engine...
[2026-08-31 11:44:33,407.407 INFO    ] 2026-08-31 11:44:33
[2026-08-31 11:44:33,656.656 INFO    ] 2026-08-31 11:44:33
[2026-08-31 11:44:33,715.715 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:44:33,887.887 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:44:33,940.940 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:44:34,217.217 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:44:34,243.243 INFO    ] time= 31/08/2026 11:44:34
[2026-08-31 11:44:34,252.252 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:44:34,259.259 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:44:34,409.409 INFO    ] No existing commands found in stream
[2026-08-31 11:44:39,430.430 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:44:39,432.432 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-08-31 11:44:40,282.282 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 11:44:40,284.284 INFO    ] Checking for system updates...
[2026-08-31 11:44:40,319.319 INFO    ] 200
[2026-08-31 11:44:40,322.322 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:44:40,380.380 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:44:40,383.383 INFO    ] No update needed
[2026-08-31 11:44:40,385.385 INFO    ] Checking for camera pi updates...
[2026-08-31 11:44:40,418.418 INFO    ] 200
[2026-08-31 11:44:40,421.421 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:44:40,461.461 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:44:40,556.556 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:44:40,559.559 INFO    ] No camera update needed
[2026-08-31 11:44:40,561.561 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:44:40,563.563 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:44:40,569.569 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:44:40,573.573 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:44:42,613.613 INFO    ] ================================================
[2026-08-31 11:44:42,628.628 INFO    ] Launching Daemon at Mon Aug 31 11:44:42 IST 2026
[2026-08-31 11:44:42,639.639 INFO    ] ================================================
[2026-08-31 11:44:43,246.246 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:44:43
[2026-08-31 11:44:43,829.829 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:44:44,097.097 INFO    ] Initializing speech engine...
[2026-08-31 11:44:44,107.107 INFO    ] 2026-08-31 11:44:44
[2026-08-31 11:44:44,366.366 INFO    ] 2026-08-31 11:44:44
[2026-08-31 11:44:44,396.396 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:44:44,641.641 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:44:44,650.650 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:44:44,888.888 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:44:44,910.910 INFO    ] time= 31/08/2026 11:44:44
[2026-08-31 11:44:44,924.924 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:44:44,934.934 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:44:45,082.082 INFO    ] No existing commands found in stream
[2026-08-31 11:44:50,117.117 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:44:50,120.120 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-08-31 11:44:52,399.399 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 11:44:52,402.402 INFO    ] Checking for system updates...
[2026-08-31 11:44:52,438.438 INFO    ] 200
[2026-08-31 11:44:52,440.440 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:44:52,493.493 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:44:52,496.496 INFO    ] No update needed
[2026-08-31 11:44:52,498.498 INFO    ] Checking for camera pi updates...
[2026-08-31 11:44:52,532.532 INFO    ] 200
[2026-08-31 11:44:52,535.535 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:44:52,580.580 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:44:52,659.659 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:44:52,661.661 INFO    ] No camera update needed
[2026-08-31 11:44:52,663.663 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:44:52,666.666 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:44:52,671.671 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:44:52,676.676 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:44:54,718.718 INFO    ] ================================================
[2026-08-31 11:44:54,733.733 INFO    ] Launching Daemon at Mon Aug 31 11:44:54 IST 2026
[2026-08-31 11:44:54,743.743 INFO    ] ================================================
[2026-08-31 11:44:55,325.325 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:44:55
[2026-08-31 11:44:55,922.922 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:44:56,175.175 INFO    ] Initializing speech engine...
[2026-08-31 11:44:56,198.198 INFO    ] 2026-08-31 11:44:56
[2026-08-31 11:44:56,453.453 INFO    ] 2026-08-31 11:44:56
[2026-08-31 11:44:56,519.519 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:44:56,741.741 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:44:56,751.751 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:44:56,996.996 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:44:57,009.009 INFO    ] time= 31/08/2026 11:44:57
[2026-08-31 11:44:57,026.026 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:44:57,034.034 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:44:57,141.141 INFO    ] No existing commands found in stream
[2026-08-31 11:45:02,170.170 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:45:02,174.174 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-08-31 11:45:06,568.568 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 11:45:06,570.570 INFO    ] Checking for system updates...
[2026-08-31 11:45:06,611.611 INFO    ] 200
[2026-08-31 11:45:06,613.613 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:45:06,666.666 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:45:06,668.668 INFO    ] No update needed
[2026-08-31 11:45:06,671.671 INFO    ] Checking for camera pi updates...
[2026-08-31 11:45:06,705.705 INFO    ] 200
[2026-08-31 11:45:06,707.707 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:45:06,765.765 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:45:06,862.862 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:45:06,864.864 INFO    ] No camera update needed
[2026-08-31 11:45:06,867.867 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:45:06,869.869 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:45:06,875.875 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:45:06,880.880 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:45:08,920.920 INFO    ] ================================================
[2026-08-31 11:45:08,935.935 INFO    ] Launching Daemon at Mon Aug 31 11:45:08 IST 2026
[2026-08-31 11:45:08,946.946 INFO    ] ================================================
[2026-08-31 11:45:09,513.513 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:45:09
[2026-08-31 11:45:10,095.095 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:45:10,363.363 INFO    ] Initializing speech engine...
[2026-08-31 11:45:10,372.372 INFO    ] 2026-08-31 11:45:10
[2026-08-31 11:45:10,617.617 INFO    ] 2026-08-31 11:45:10
[2026-08-31 11:45:10,653.653 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:45:10,846.846 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:45:10,889.889 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:45:11,045.045 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:45:11,082.082 INFO    ] time= 31/08/2026 11:45:11
[2026-08-31 11:45:11,136.136 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:45:11,179.179 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:45:11,328.328 INFO    ] No existing commands found in stream
[2026-08-31 11:45:16,342.342 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:45:16,344.344 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-08-31 11:45:18,433.433 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 11:45:18,436.436 INFO    ] Checking for system updates...
[2026-08-31 11:45:18,473.473 INFO    ] 200
[2026-08-31 11:45:18,476.476 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:45:18,531.531 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:45:18,533.533 INFO    ] No update needed
[2026-08-31 11:45:18,536.536 INFO    ] Checking for camera pi updates...
[2026-08-31 11:45:18,571.571 INFO    ] 200
[2026-08-31 11:45:18,574.574 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:45:18,616.616 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:45:18,703.703 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:45:18,706.706 INFO    ] No camera update needed
[2026-08-31 11:45:18,709.709 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:45:18,712.712 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:45:18,718.718 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:45:18,724.724 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:45:20,766.766 INFO    ] ================================================
[2026-08-31 11:45:20,782.782 INFO    ] Launching Daemon at Mon Aug 31 11:45:20 IST 2026
[2026-08-31 11:45:20,792.792 INFO    ] ================================================
[2026-08-31 11:45:21,369.369 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:45:21
[2026-08-31 11:45:21,993.993 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:45:22,245.245 INFO    ] Initializing speech engine...
[2026-08-31 11:45:22,267.267 INFO    ] 2026-08-31 11:45:22
[2026-08-31 11:45:22,523.523 INFO    ] 2026-08-31 11:45:22
[2026-08-31 11:45:22,558.558 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:45:22,755.755 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:45:22,763.763 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:45:22,959.959 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:45:22,966.966 INFO    ] time= 31/08/2026 11:45:22
[2026-08-31 11:45:23,036.036 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:45:23,096.096 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:45:23,245.245 INFO    ] No existing commands found in stream
[2026-08-31 11:45:28,257.257 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:45:28,260.260 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-08-31 11:45:32,200.200 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 11:45:32,203.203 INFO    ] Checking for system updates...
[2026-08-31 11:45:32,254.254 INFO    ] 200
[2026-08-31 11:45:32,256.256 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:45:32,314.314 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:45:32,317.317 INFO    ] No update needed
[2026-08-31 11:45:32,320.320 INFO    ] Checking for camera pi updates...
[2026-08-31 11:45:32,356.356 INFO    ] 200
[2026-08-31 11:45:32,359.359 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:45:32,411.411 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:45:32,466.466 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:45:32,469.469 INFO    ] No camera update needed
[2026-08-31 11:45:32,472.472 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:45:32,474.474 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:45:32,481.481 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:45:32,486.486 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:45:34,526.526 INFO    ] ================================================
[2026-08-31 11:45:34,541.541 INFO    ] Launching Daemon at Mon Aug 31 11:45:34 IST 2026
[2026-08-31 11:45:34,552.552 INFO    ] ================================================
[2026-08-31 11:45:35,130.130 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:45:35
[2026-08-31 11:45:35,714.714 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:45:35,972.972 INFO    ] Initializing speech engine...
[2026-08-31 11:45:35,981.981 INFO    ] 2026-08-31 11:45:35
[2026-08-31 11:45:36,280.280 INFO    ] 2026-08-31 11:45:36
[2026-08-31 11:45:36,314.314 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:45:36,523.523 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:45:36,541.541 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:45:36,753.753 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:45:36,770.770 INFO    ] time= 31/08/2026 11:45:36
[2026-08-31 11:45:36,819.819 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:45:36,868.868 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:45:36,974.974 INFO    ] No existing commands found in stream
[2026-08-31 11:45:41,987.987 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:45:41,990.990 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-08-31 11:45:45,535.535 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 11:45:45,538.538 INFO    ] Checking for system updates...
[2026-08-31 11:45:45,573.573 INFO    ] 200
[2026-08-31 11:45:45,576.576 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:45:45,636.636 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:45:45,638.638 INFO    ] No update needed
[2026-08-31 11:45:45,641.641 INFO    ] Checking for camera pi updates...
[2026-08-31 11:45:45,674.674 INFO    ] 200
[2026-08-31 11:45:45,676.676 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:45:45,716.716 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:45:45,778.778 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:45:45,780.780 INFO    ] No camera update needed
[2026-08-31 11:45:45,783.783 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:45:45,785.785 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:45:45,790.790 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:45:45,795.795 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:45:47,835.835 INFO    ] ================================================
[2026-08-31 11:45:47,850.850 INFO    ] Launching Daemon at Mon Aug 31 11:45:47 IST 2026
[2026-08-31 11:45:47,860.860 INFO    ] ================================================
[2026-08-31 11:45:48,427.427 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:45:48
[2026-08-31 11:45:49,009.009 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:45:49,260.260 INFO    ] Initializing speech engine...
[2026-08-31 11:45:49,283.283 INFO    ] 2026-08-31 11:45:49
[2026-08-31 11:45:49,538.538 INFO    ] 2026-08-31 11:45:49
[2026-08-31 11:45:49,573.573 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:45:49,758.758 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:45:49,777.777 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:45:49,973.973 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:45:50,026.026 INFO    ] time= 31/08/2026 11:45:49
[2026-08-31 11:45:50,075.075 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:45:50,109.109 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:45:50,289.289 INFO    ] No existing commands found in stream
[2026-08-31 11:45:55,319.319 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:45:55,322.322 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-08-31 11:45:58,896.896 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 11:45:58,899.899 INFO    ] Checking for system updates...
[2026-08-31 11:45:58,938.938 INFO    ] 200
[2026-08-31 11:45:58,940.940 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:45:58,992.992 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:45:58,994.994 INFO    ] No update needed
[2026-08-31 11:45:58,997.997 INFO    ] Checking for camera pi updates...
[2026-08-31 11:45:59,031.031 INFO    ] 200
[2026-08-31 11:45:59,034.034 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:45:59,075.075 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:45:59,139.139 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:45:59,141.141 INFO    ] No camera update needed
[2026-08-31 11:45:59,144.144 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:45:59,146.146 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:45:59,151.151 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:45:59,156.156 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:46:01,203.203 INFO    ] ================================================
[2026-08-31 11:46:01,240.240 INFO    ] Launching Daemon at Mon Aug 31 11:46:01 IST 2026
[2026-08-31 11:46:01,273.273 INFO    ] ================================================
[2026-08-31 11:46:01,986.986 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:46:01
[2026-08-31 11:46:02,641.641 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:46:02,963.963 INFO    ] Initializing speech engine...
[2026-08-31 11:46:02,976.976 INFO    ] 2026-08-31 11:46:02
[2026-08-31 11:46:03,278.278 INFO    ] 2026-08-31 11:46:03
[2026-08-31 11:46:03,316.316 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:46:03,544.544 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:46:03,610.610 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:46:03,909.909 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:46:03,917.917 INFO    ] time= 31/08/2026 11:46:03
[2026-08-31 11:46:03,936.936 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:46:03,944.944 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:46:04,103.103 INFO    ] No existing commands found in stream
[2026-08-31 11:46:09,124.124 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:46:09,126.126 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-08-31 11:46:16,148.148 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 11:46:16,151.151 INFO    ] Checking for system updates...
[2026-08-31 11:46:16,187.187 INFO    ] 200
[2026-08-31 11:46:16,190.190 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:46:16,242.242 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:46:16,245.245 INFO    ] No update needed
[2026-08-31 11:46:16,247.247 INFO    ] Checking for camera pi updates...
[2026-08-31 11:46:16,285.285 INFO    ] 200
[2026-08-31 11:46:16,287.287 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:46:16,328.328 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:46:16,510.510 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:46:16,512.512 INFO    ] No camera update needed
[2026-08-31 11:46:16,515.515 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:46:16,517.517 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:46:16,522.522 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:46:16,527.527 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:46:18,568.568 INFO    ] ================================================
[2026-08-31 11:46:18,583.583 INFO    ] Launching Daemon at Mon Aug 31 11:46:18 IST 2026
[2026-08-31 11:46:18,593.593 INFO    ] ================================================
[2026-08-31 11:46:19,242.242 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:46:19
[2026-08-31 11:46:19,909.909 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:46:20,212.212 INFO    ] Initializing speech engine...
[2026-08-31 11:46:20,220.220 INFO    ] 2026-08-31 11:46:20
[2026-08-31 11:46:20,496.496 INFO    ] 2026-08-31 11:46:20
[2026-08-31 11:46:20,540.540 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:46:20,791.791 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:46:20,796.796 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:46:21,015.015 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:46:21,033.033 INFO    ] time= 31/08/2026 11:46:21
[2026-08-31 11:46:21,039.039 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:46:21,057.057 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:46:21,287.287 INFO    ] No existing commands found in stream
[2026-08-31 11:46:26,301.301 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:46:26,304.304 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-08-31 11:46:28,415.415 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 11:46:28,418.418 INFO    ] Checking for system updates...
[2026-08-31 11:46:28,457.457 INFO    ] 200
[2026-08-31 11:46:28,460.460 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:46:28,512.512 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:46:28,514.514 INFO    ] No update needed
[2026-08-31 11:46:28,516.516 INFO    ] Checking for camera pi updates...
[2026-08-31 11:46:28,550.550 INFO    ] 200
[2026-08-31 11:46:28,553.553 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:46:28,598.598 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:46:28,704.704 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:46:28,706.706 INFO    ] No camera update needed
[2026-08-31 11:46:28,709.709 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:46:28,711.711 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:46:28,716.716 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:46:28,721.721 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:46:30,765.765 INFO    ] ================================================
[2026-08-31 11:46:30,782.782 INFO    ] Launching Daemon at Mon Aug 31 11:46:30 IST 2026
[2026-08-31 11:46:30,796.796 INFO    ] ================================================
[2026-08-31 11:46:31,430.430 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:46:31
[2026-08-31 11:46:32,186.186 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:46:32,562.562 INFO    ] Initializing speech engine...
[2026-08-31 11:46:32,577.577 INFO    ] 2026-08-31 11:46:32
[2026-08-31 11:46:32,840.840 INFO    ] 2026-08-31 11:46:32
[2026-08-31 11:46:32,876.876 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:46:33,086.086 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:46:33,141.141 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:46:33,288.288 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:46:33,330.330 INFO    ] time= 31/08/2026 11:46:33
[2026-08-31 11:46:33,380.380 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:46:33,428.428 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:46:33,550.550 INFO    ] No existing commands found in stream
[2026-08-31 11:46:38,578.578 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:46:38,581.581 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-08-31 11:46:42,737.737 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 11:46:42,740.740 INFO    ] Checking for system updates...
[2026-08-31 11:46:42,778.778 INFO    ] 200
[2026-08-31 11:46:42,781.781 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:46:42,839.839 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:46:42,841.841 INFO    ] No update needed
[2026-08-31 11:46:42,844.844 INFO    ] Checking for camera pi updates...
[2026-08-31 11:46:42,880.880 INFO    ] 200
[2026-08-31 11:46:42,883.883 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:46:42,934.934 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:46:43,039.039 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:46:43,042.042 INFO    ] No camera update needed
[2026-08-31 11:46:43,044.044 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:46:43,047.047 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:46:43,053.053 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:46:43,058.058 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:46:45,099.099 INFO    ] ================================================
[2026-08-31 11:46:45,114.114 INFO    ] Launching Daemon at Mon Aug 31 11:46:45 IST 2026
[2026-08-31 11:46:45,124.124 INFO    ] ================================================
[2026-08-31 11:46:45,713.713 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:46:45
[2026-08-31 11:46:46,306.306 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:46:46,579.579 INFO    ] Initializing speech engine...
[2026-08-31 11:46:46,588.588 INFO    ] 2026-08-31 11:46:46
[2026-08-31 11:46:46,840.840 INFO    ] 2026-08-31 11:46:46
[2026-08-31 11:46:46,875.875 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:46:47,361.361 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:46:47,398.398 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:46:47,641.641 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:46:47,659.659 INFO    ] time= 31/08/2026 11:46:47
[2026-08-31 11:46:47,713.713 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:46:47,767.767 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:46:47,868.868 INFO    ] Found 1 existing command(s) in stream
[2026-08-31 11:46:47,873.873 INFO    ] Checking historical command: ID=1788157006941-0
[2026-08-31 11:46:47,876.876 INFO    ] process_and_cleanup_command: msg_id=1788157006941-0
[2026-08-31 11:46:47,879.879 INFO    ] is_command_expired: timestamp=2026-08-31T06:16:45.439Z, expiry=30s
[2026-08-31 11:46:48,136.136 INFO    ] Command removed from stream: 1788157006941-0. returning for processing...
[2026-08-31 11:46:48,142.142 INFO    ] ***** get_valid_command
[2026-08-31 11:46:48,147.147 INFO    ] {'data': '{"request_id":"start-order-1788157005439-vlt8vwok6","orderId":"TM08202202260831114637009","is_vending":false}', 'timeout': '10', 'timestamp': '2026-08-31T06:16:45.439Z', 'command': 'start-order', 'source': 'webapp'}
[2026-08-31 11:46:48,152.152 INFO    ] ***** Parsed command data: {'is_vending': False, 'orderId': 'TM08202202260831114637009', 'request_id': 'start-order-1788157005439-vlt8vwok6'}
[2026-08-31 11:46:48,156.156 INFO    ] Handling start order...
[2026-08-31 11:46:48,161.161 INFO    ] handle_start_order_command
[2026-08-31 11:46:48,172.172 INFO    ] _send_start_order_success: request_id=start-order-1788157005439-vlt8vwok6, order_id=TM08202202260831114637009
[2026-08-31 11:46:48,176.176 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM08202202
[2026-08-31 11:46:48,309.309 INFO    ] [_send_start_order_success] Message added to stream with ID: 1788157008229-0
[2026-08-31 11:46:48,315.315 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-08-31 11:46:48,320.320 INFO    ] Checking for system updates...
[2026-08-31 11:46:48,377.377 INFO    ] 200
[2026-08-31 11:46:48,386.386 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:46:48,446.446 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:46:48,452.452 INFO    ] No update needed
[2026-08-31 11:46:48,457.457 INFO    ] Checking for camera pi updates...
[2026-08-31 11:46:48,495.495 INFO    ] 200
[2026-08-31 11:46:48,500.500 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:46:48,557.557 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:46:48,694.694 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:46:48,742.742 INFO    ] No camera update needed
[2026-08-31 11:46:48,748.748 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:46:48,766.766 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:46:48,806.806 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:46:48,862.862 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-31 11:46:48,871.871 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:46:50,919.919 INFO    ] ================================================
[2026-08-31 11:46:50,935.935 INFO    ] Launching Daemon at Mon Aug 31 11:46:50 IST 2026
[2026-08-31 11:46:50,945.945 INFO    ] ================================================
[2026-08-31 11:46:51,524.524 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:46:51
[2026-08-31 11:46:52,122.122 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:46:52,376.376 INFO    ] Initializing speech engine...
[2026-08-31 11:46:52,398.398 INFO    ] 2026-08-31 11:46:52
[2026-08-31 11:46:52,653.653 INFO    ] 2026-08-31 11:46:52
[2026-08-31 11:46:52,688.688 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:46:52,967.967 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:46:52,973.973 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:46:53,203.203 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:46:53,210.210 INFO    ] time= 31/08/2026 11:46:53
[2026-08-31 11:46:53,229.229 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:46:53,257.257 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:46:53,364.364 INFO    ] Found 2 existing command(s) in stream
[2026-08-31 11:46:53,410.410 INFO    ] Checking historical command: ID=1788157008229-0
[2026-08-31 11:46:53,470.470 INFO    ] process_and_cleanup_command: msg_id=1788157008229-0
[2026-08-31 11:46:53,510.510 INFO    ] is_command_expired: timestamp=2026-08-31T06:16:48.174006Z, expiry=30s
[2026-08-31 11:46:53,773.773 INFO    ] Command removed from stream: 1788157008229-0. returning for processing...
[2026-08-31 11:46:53,823.823 INFO    ] ***** get_valid_command
[2026-08-31 11:46:53,829.829 INFO    ] {'timestamp': '2026-08-31T06:16:48.174006Z', 'metadata_request_id': 'start-order-1788157005439-vlt8vwok6', 'metadata_order_id': 'TM08202202260831114637009', 'message_type': 'command_response', 'imei': 'TM08202202', 'status': 'success', 'message': 'start-order success'}
[2026-08-31 11:46:53,832.832 INFO    ] Checking historical command: ID=1788157009788-0
[2026-08-31 11:46:53,881.881 INFO    ] process_and_cleanup_command: msg_id=1788157009788-0
[2026-08-31 11:46:53,885.885 INFO    ] is_command_expired: timestamp=2026-08-31T06:16:48.189Z, expiry=30s
[2026-08-31 11:46:54,049.049 INFO    ] Command removed from stream: 1788157009788-0. returning for processing...
[2026-08-31 11:46:54,078.078 INFO    ] ***** get_valid_command
[2026-08-31 11:46:54,083.083 INFO    ] {'command': 'process-order', 'timestamp': '2026-08-31T06:16:48.189Z', 'timeout': '60', 'source': 'webapp', 'data': '{"request_id":"process-order-1788157008188-6sb58nyfz","orderId":"TM08202202260831114637009","is_vending":false,"accessCode":"51302459"}'}
[2026-08-31 11:46:54,088.088 INFO    ] ***** Parsed command data: {'orderId': 'TM08202202260831114637009', 'is_vending': False, 'request_id': 'process-order-1788157008188-6sb58nyfz', 'accessCode': '51302459'}
[2026-08-31 11:46:54,097.097 INFO    ] Handling process order...
[2026-08-31 11:46:54,105.105 INFO    ] Processing process-order command...
[2026-08-31 11:46:54,110.110 INFO    ] 🔍 Lock file Order ID: TM08202202260831114637009, TS: 2026-08-31 11:46:48
[2026-08-31 11:46:54,128.128 INFO    ] ✅ Order lock valid for TM08202202260831114637009
[2026-08-31 11:46:54,132.132 INFO    ] Received access code in process-order, skipping PHP API call
[2026-08-31 11:46:54,137.137 INFO    ] processing access code 51302459 for order TM08202202260831114637009
[2026-08-31 11:46:54,144.144 INFO    ] 🔍 Lock file Order ID: TM08202202260831114637009, TS: 2026-08-31 11:46:48
[2026-08-31 11:46:54,151.151 INFO    ] ✅ Order lock valid for TM08202202260831114637009
[2026-08-31 11:46:54,157.157 INFO    ] 2026-08-31 11:46:54
[2026-08-31 11:46:54,208.208 INFO    ] 200
[2026-08-31 11:46:54,213.213 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:46:54,219.219 INFO    ] 51302459
[2026-08-31 11:46:54,225.225 INFO    ] 2026-08-31 11:46:54
[2026-08-31 11:46:54,230.230 INFO    ] session id :589575693
[2026-08-31 11:46:54,234.234 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=51302459&imei=TM08202202&session_id=589575693
[2026-08-31 11:46:57,311.311 INFO    ] 200
[2026-08-31 11:46:57,313.313 INFO    ] {"msg": "Order Data", "data": {"access_code": "51302459", "invoice_bill": "10", "mobile": "9900883623", "order_id": "TM08202202260831114637009", "bill_amount": "10", "proposed_sku_json": [{"qty": 1, "offer_desc": "", "image_url": "https://images.tinymart.in/product/186096-4254.jpg", "sku_total": 10, "mrp": "10", "tray_id": "44", "name": "Maaza Tetra 135ml", "offer_id": "", "skuid": "186096", "unit_price": 10, "door_id": "2"}]}, "status": true, "rstatus": true}
[2026-08-31 11:46:57,316.316 INFO    ] 10
[2026-08-31 11:46:57,319.319 INFO    ] TM08202202260831114637009
[2026-08-31 11:46:57,322.322 INFO    ] 9900883623
[2026-08-31 11:46:57,325.325 INFO    ] 2026-08-31 11:46:57
[2026-08-31 11:46:57,327.327 INFO    ] Door Opening for user mobile ending with  three six two three 
[2026-08-31 11:46:57,330.330 INFO    ] Door Opening for user mobile ending with  three six two three 
[2026-08-31 11:46:57,333.333 INFO    ] 7d4435c8ba53f98ea5108ccb5c26864b
[2026-08-31 11:46:57,335.335 INFO    ] 2026-08-31 11:46:57
[2026-08-31 11:46:57,338.338 INFO    ] playing audio file
[2026-08-31 11:46:57,356.356 INFO    ] 2026-08-31 11:46:57
[2026-08-31 11:46:57,360.360 INFO    ] 2026-08-31 11:46:57
[2026-08-31 11:46:57,363.363 INFO    ] publish_status: order_id=TM08202202260831114637009
[2026-08-31 11:46:57,367.367 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831114637009
[2026-08-31 11:46:57,461.461 INFO    ] [publish_status] Message added to stream with ID: 1788157017431-0
[2026-08-31 11:46:57,464.464 INFO    ] Published to order:TM08202202260831114637009: {'order_id': 'TM08202202260831114637009', 'timestamp': '2026-08-31T06:16:57.362048Z', 'server_status': 'order-started', 'server_response': '{"status": true, "rstatus": true, "msg": "Order Data", "data": {"order_id": "TM08202202260831114637009", "mobile": "9900883623", "access_code": "51302459", "proposed_sku_json": [{"offer_id": "", "qty": 1, "name": "Maaza Tetra 135ml", "mrp": "10", "sku_total": 10, "offer_desc": "", "door_id": "2", "skuid": "186096", "tray_id": "44", "unit_price": 10, "image_url": "https://images.tinymart.in/product/186096-4254.jpg"}], "bill_amount": "10", "invoice_bill": "10"}}'} (ID: 1788157017431-0)
[2026-08-31 11:46:58,045.045 INFO    ] {'order_id': 'TM08202202260831114637009', 'server_status': 'order-started', 'server_response': {'status': True, 'rstatus': True, 'msg': 'Order Data', 'data': {'order_id': 'TM08202202260831114637009', 'mobile': '9900883623', 'access_code': '51302459', 'proposed_sku_json': [{'offer_id': '', 'qty': 1, 'name': 'Maaza Tetra 135ml', 'mrp': '10', 'sku_total': 10, 'offer_desc': '', 'door_id': '2', 'skuid': '186096', 'tray_id': '44', 'unit_price': 10, 'image_url': 'https://images.tinymart.in/product/186096-4254.jpg'}], 'bill_amount': '10', 'invoice_bill': '10'}}}
[2026-08-31 11:46:58,048.048 INFO    ] 200
[2026-08-31 11:46:58,050.050 INFO    ] {"data":{"order_id":"TM08202202260831114637009","server_status":"order-started","server_response":{"status":true,"rstatus":true,"msg":"Order Data","data":{"order_id":"TM08202202260831114637009","mobile":"9900883623","access_code":"51302459","proposed_sku_json":[{"offer_id":"","qty":1,"name":"Maaza Tetra 135ml","mrp":"10","sku_total":10,"offer_desc":"","door_id":"2","skuid":"186096","tray_id":"44","unit_price":10,"image_url":"https:\/\/images.tinymart.in\/product\/186096-4254.jpg"}],"bill_amount":"10","invoice_bill":"10"}}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 11:46:58,053.053 INFO    ] {'response': {'status': True, 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'data': 'order updated successfully'}, 'data': {'order_id': 'TM08202202260831114637009', 'server_status': 'order-started', 'server_response': {'status': True, 'rstatus': True, 'msg': 'Order Data', 'data': {'order_id': 'TM08202202260831114637009', 'mobile': '9900883623', 'access_code': '51302459', 'proposed_sku_json': [{'offer_id': '', 'qty': 1, 'name': 'Maaza Tetra 135ml', 'mrp': '10', 'sku_total': 10, 'offer_desc': '', 'door_id': '2', 'skuid': '186096', 'tray_id': '44', 'unit_price': 10, 'image_url': 'https://images.tinymart.in/product/186096-4254.jpg'}], 'bill_amount': '10', 'invoice_bill': '10'}}}}
[2026-08-31 11:46:58,056.056 INFO    ] 2026-08-31 11:46:58
[2026-08-31 11:46:58,110.110 INFO    ] 200
[2026-08-31 11:46:58,112.112 INFO    ] True
[2026-08-31 11:46:58,260.260 INFO    ] 200
[2026-08-31 11:46:58,263.263 INFO    ] {"SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "voiceNote": "Please Wait", "SectionMain": {"Header": "Processing Order"}, "SectionStatus": {"Note": "", "UI_Header": "", "SubHeader": "Please wait while we process your order", "Header": " Your order is under process  "}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 11:46:58,266.266 INFO    ] {'SectionStatus': {'Header': ' Your order is under process  ', 'Note': '', 'UI_Header': '', 'SubHeader': 'Please wait while we process your order'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Processing Order'}, 'status': 'False', 'voiceNote': 'Please Wait', 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}}
[2026-08-31 11:46:58,269.269 INFO    ] *** process_order ***
[2026-08-31 11:46:59,390.390 INFO    ] 200
[2026-08-31 11:46:59,393.393 INFO    ] {"SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "voiceNote": "Please Wait", "SectionMain": {"Header": "Processing Order"}, "SectionStatus": {"Note": "", "UI_Header": "", "SubHeader": "Please wait while we process your order", "Header": " Your order is under process  "}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 11:46:59,396.396 INFO    ] {'SectionStatus': {'Header': ' Your order is under process  ', 'Note': '', 'UI_Header': '', 'SubHeader': 'Please wait while we process your order'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Processing Order'}, 'status': 'False', 'voiceNote': 'Please Wait', 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}}
[2026-08-31 11:46:59,399.399 INFO    ] *** process_order ***
[2026-08-31 11:47:00,516.516 INFO    ] 200
[2026-08-31 11:47:00,519.519 INFO    ] {"SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "voiceNote": "Please Wait", "SectionMain": {"Header": "Processing Order"}, "SectionStatus": {"Note": "", "UI_Header": "", "SubHeader": "Please wait while we process your order", "Header": " Your order is under process  "}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 11:47:00,522.522 INFO    ] {'SectionStatus': {'Header': ' Your order is under process  ', 'Note': '', 'UI_Header': '', 'SubHeader': 'Please wait while we process your order'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Processing Order'}, 'status': 'False', 'voiceNote': 'Please Wait', 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}}
[2026-08-31 11:47:00,525.525 INFO    ] *** process_order ***
[2026-08-31 11:47:01,820.820 INFO    ] 200
[2026-08-31 11:47:01,826.826 INFO    ] {"SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "voiceNote": "Please Wait", "SectionMain": {"Header": "Processing Order"}, "SectionStatus": {"Note": "", "UI_Header": "", "SubHeader": "Please wait while we process your order", "Header": " Your order is under process  "}, "delay": 0, "status": "True", "rstatus": true}
[2026-08-31 11:47:01,833.833 INFO    ] {'SectionStatus': {'Header': ' Your order is under process  ', 'Note': '', 'UI_Header': '', 'SubHeader': 'Please wait while we process your order'}, 'rstatus': True, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'SectionMain': {'Header': 'Processing Order'}, 'status': 'True', 'voiceNote': 'Please Wait', 'delay': 0}
[2026-08-31 11:47:01,836.836 INFO    ] *** process_order ***
[2026-08-31 11:47:01,840.840 INFO    ] publish_status: order_id=TM08202202260831114637009
[2026-08-31 11:47:01,843.843 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831114637009
[2026-08-31 11:47:01,917.917 INFO    ] [publish_status] Message added to stream with ID: 1788157021885-0
[2026-08-31 11:47:01,920.920 INFO    ] Published to order:TM08202202260831114637009: {'order_id': 'TM08202202260831114637009', 'server_status': 'doorOpened', 'server_response': '{"SectionStatus": {"Header": " Your order is under process  ", "Note": "", "UI_Header": "", "SubHeader": "You can pull the door now."}, "rstatus": true, "delay": 0, "SectionMain": {"Header": "Processing Order"}, "status": "True", "voiceNote": "Door is open...", "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}}'} (ID: 1788157021885-0)
[2026-08-31 11:47:02,991.991 INFO    ] 2026-08-31 11:47:02
[2026-08-31 11:47:02,998.998 INFO    ] publish_status: order_id=TM08202202260831114637009
[2026-08-31 11:47:03,001.001 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831114637009
[2026-08-31 11:47:03,079.079 INFO    ] [publish_status] Message added to stream with ID: 1788157023048-0
[2026-08-31 11:47:03,083.083 INFO    ] Published to order:TM08202202260831114637009: {'order_id': 'TM08202202260831114637009', 'timestamp': '2026-08-31T06:17:02.992984Z', 'server_status': 'processOrder', 'server_response': '{"SectionStatus": {"Header": " Your order is under process  ", "Note": "", "UI_Header": "", "SubHeader": "Please wait while we process your order"}, "rstatus": true, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "SectionMain": {"Header": "Processing Order"}, "status": "True", "voiceNote": "Please Wait", "delay": 0}'} (ID: 1788157023048-0)
[2026-08-31 11:47:03,730.730 INFO    ] {'order_id': 'TM08202202260831114637009', 'server_status': 'processOrder', 'server_response': {'SectionStatus': {'Header': ' Your order is under process  ', 'Note': '', 'UI_Header': '', 'SubHeader': 'Please wait while we process your order'}, 'rstatus': True, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'SectionMain': {'Header': 'Processing Order'}, 'status': 'True', 'voiceNote': 'Please Wait', 'delay': 0}}
[2026-08-31 11:47:03,733.733 INFO    ] 200
[2026-08-31 11:47:03,736.736 INFO    ] {"data":{"order_id":"TM08202202260831114637009","server_status":"processOrder","server_response":{"SectionStatus":{"Header":" Your order is under process  ","Note":"","UI_Header":"","SubHeader":"Please wait while we process your order"},"rstatus":true,"SectionSKU":{"Header":"Thank you for bearing with us :)","skus":[]},"SectionMain":{"Header":"Processing Order"},"status":"true","voiceNote":"Please Wait","delay":0}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 11:47:03,739.739 INFO    ] {'response': {'status': True, 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'data': 'order updated successfully'}, 'data': {'order_id': 'TM08202202260831114637009', 'server_status': 'processOrder', 'server_response': {'SectionStatus': {'Header': ' Your order is under process  ', 'Note': '', 'UI_Header': '', 'SubHeader': 'Please wait while we process your order'}, 'status': 'true', 'delay': 0, 'SectionMain': {'Header': 'Processing Order'}, 'rstatus': True, 'voiceNote': 'Please Wait', 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}}}}
[2026-08-31 11:47:03,742.742 INFO    ] 2026-08-31 11:47:03
[2026-08-31 11:47:03,745.745 INFO    ] None
[2026-08-31 11:47:03,747.747 INFO    ] Opening Door now
[2026-08-31 11:47:03,750.750 INFO    ] Opening Door now
[2026-08-31 11:47:03,753.753 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-08-31 11:47:03,756.756 INFO    ] 2026-08-31 11:47:03
[2026-08-31 11:47:03,759.759 INFO    ] playing audio file
[2026-08-31 11:47:03,777.777 INFO    ] 2026-08-31 11:47:03
[2026-08-31 11:47:03,780.780 INFO    ] 2026-08-31 11:47:03
[2026-08-31 11:47:06,920.920 INFO    ] 200
[2026-08-31 11:47:06,923.923 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}], "Header": "Pick the below items from the door"}, "voiceNote": "Door 2 is open now", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 11:47:06,927.927 INFO    ] {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Door 2 is open now', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}
[2026-08-31 11:47:09,981.981 INFO    ] 200
[2026-08-31 11:47:09,984.984 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 11:47:09,988.988 INFO    ] {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}
[2026-08-31 11:47:13,038.038 INFO    ] 200
[2026-08-31 11:47:13,040.040 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 11:47:13,043.043 INFO    ] Please close door 2
[2026-08-31 11:47:13,045.045 INFO    ] Please close door 2
[2026-08-31 11:47:13,048.048 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-08-31 11:47:13,050.050 INFO    ] 2026-08-31 11:47:13
[2026-08-31 11:47:13,053.053 INFO    ] playing audio file
[2026-08-31 11:47:13,069.069 INFO    ] 2026-08-31 11:47:13
[2026-08-31 11:47:13,073.073 INFO    ] publish_status: order_id=TM08202202260831114637009
[2026-08-31 11:47:13,076.076 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831114637009
[2026-08-31 11:47:13,163.163 INFO    ] [publish_status] Message added to stream with ID: 1788157033131-0
[2026-08-31 11:47:13,166.166 INFO    ] Published to order:TM08202202260831114637009: {'order_id': 'TM08202202260831114637009', 'timestamp': '2026-08-31T06:17:13.071679Z', 'server_status': 'OrderStatus', 'server_response': '{"SectionStatus": {"Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\\nIS \\nOPEN \\nNOW", "SubHeader": "Please Pick the Products and close the door"}, "rstatus": false, "error": {"tmessage": "In Progress", "code": 20001, "umessage": "In Progress", "data": {}}, "SectionMain": {"Header": "Door Open"}, "status": "False", "voiceNote": "Please close door 2", "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}]}}'} (ID: 1788157033131-0)
[2026-08-31 11:47:13,847.847 INFO    ] {'order_id': 'TM08202202260831114637009', 'server_status': 'OrderStatus', 'server_response': {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}}
[2026-08-31 11:47:13,850.850 INFO    ] 200
[2026-08-31 11:47:13,852.852 INFO    ] {"data":{"order_id":"TM08202202260831114637009","server_status":"OrderStatus","server_response":{"SectionStatus":{"Header":"Please Close Door 2","Note":"Please Close the door after picking up products","UI_Header":"DOOR 2\nIS \nOPEN \nNOW","SubHeader":"Please Pick the Products and close the door"},"rstatus":false,"error":{"tmessage":"In Progress","code":20001,"umessage":"In Progress","data":[]},"SectionMain":{"Header":"Door Open"},"status":"false","voiceNote":"Please close door 2","SectionSKU":{"Header":"Pick the below items from the door","skus":[{"qty":1,"name":"Maaza Tetra 135ml"}]}}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 11:47:13,856.856 INFO    ] {'response': {'status': True, 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'data': 'order updated successfully'}, 'data': {'order_id': 'TM08202202260831114637009', 'server_status': 'OrderStatus', 'server_response': {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'status': 'false', 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': []}, 'SectionMain': {'Header': 'Door Open'}, 'rstatus': False, 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}}}
[2026-08-31 11:47:13,859.859 INFO    ] {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}
[2026-08-31 11:47:16,936.936 INFO    ] 200
[2026-08-31 11:47:16,938.938 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 11:47:16,941.941 INFO    ] {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}
[2026-08-31 11:47:20,010.010 INFO    ] 200
[2026-08-31 11:47:20,013.013 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 11:47:20,016.016 INFO    ] {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}
[2026-08-31 11:47:23,070.070 INFO    ] 200
[2026-08-31 11:47:23,073.073 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 11:47:23,076.076 INFO    ] Please close door 2
[2026-08-31 11:47:23,079.079 INFO    ] Please close door 2
[2026-08-31 11:47:23,082.082 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-08-31 11:47:23,085.085 INFO    ] 2026-08-31 11:47:23
[2026-08-31 11:47:23,088.088 INFO    ] playing audio file
[2026-08-31 11:47:23,106.106 INFO    ] 2026-08-31 11:47:23
[2026-08-31 11:47:23,110.110 INFO    ] publish_status: order_id=TM08202202260831114637009
[2026-08-31 11:47:23,113.113 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831114637009
[2026-08-31 11:47:23,204.204 INFO    ] [publish_status] Message added to stream with ID: 1788157043170-0
[2026-08-31 11:47:23,208.208 INFO    ] Published to order:TM08202202260831114637009: {'order_id': 'TM08202202260831114637009', 'timestamp': '2026-08-31T06:17:23.108054Z', 'server_status': 'OrderStatus', 'server_response': '{"SectionStatus": {"Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\\nIS \\nOPEN \\nNOW", "SubHeader": "Please Pick the Products and close the door"}, "rstatus": false, "error": {"tmessage": "In Progress", "code": 20001, "umessage": "In Progress", "data": {}}, "SectionMain": {"Header": "Door Open"}, "status": "False", "voiceNote": "Please close door 2", "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}]}}'} (ID: 1788157043170-0)
[2026-08-31 11:47:23,846.846 INFO    ] {'order_id': 'TM08202202260831114637009', 'server_status': 'OrderStatus', 'server_response': {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}}
[2026-08-31 11:47:23,850.850 INFO    ] 200
[2026-08-31 11:47:23,853.853 INFO    ] {"data":{"order_id":"TM08202202260831114637009","server_status":"OrderStatus","server_response":{"SectionStatus":{"Header":"Please Close Door 2","Note":"Please Close the door after picking up products","UI_Header":"DOOR 2\nIS \nOPEN \nNOW","SubHeader":"Please Pick the Products and close the door"},"rstatus":false,"error":{"tmessage":"In Progress","code":20001,"umessage":"In Progress","data":[]},"SectionMain":{"Header":"Door Open"},"status":"false","voiceNote":"Please close door 2","SectionSKU":{"Header":"Pick the below items from the door","skus":[{"qty":1,"name":"Maaza Tetra 135ml"}]}}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 11:47:23,857.857 INFO    ] {'response': {'status': True, 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'data': 'order updated successfully'}, 'data': {'order_id': 'TM08202202260831114637009', 'server_status': 'OrderStatus', 'server_response': {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'status': 'false', 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': []}, 'SectionMain': {'Header': 'Door Open'}, 'rstatus': False, 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}}}
[2026-08-31 11:47:23,860.860 INFO    ] {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}
[2026-08-31 11:47:26,935.935 INFO    ] 200
[2026-08-31 11:47:26,938.938 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 11:47:26,942.942 INFO    ] {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}
[2026-08-31 11:47:30,004.004 INFO    ] 200
[2026-08-31 11:47:30,008.008 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 11:47:30,011.011 INFO    ] {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}
[2026-08-31 11:47:33,062.062 INFO    ] 200
[2026-08-31 11:47:33,065.065 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 11:47:33,069.069 INFO    ] Please close door 2
[2026-08-31 11:47:33,072.072 INFO    ] Please close door 2
[2026-08-31 11:47:33,074.074 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-08-31 11:47:33,077.077 INFO    ] 2026-08-31 11:47:33
[2026-08-31 11:47:33,080.080 INFO    ] playing audio file
[2026-08-31 11:47:33,100.100 INFO    ] 2026-08-31 11:47:33
[2026-08-31 11:47:33,103.103 INFO    ] publish_status: order_id=TM08202202260831114637009
[2026-08-31 11:47:33,107.107 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831114637009
[2026-08-31 11:47:33,236.236 INFO    ] [publish_status] Message added to stream with ID: 1788157053200-0
[2026-08-31 11:47:33,239.239 INFO    ] Published to order:TM08202202260831114637009: {'order_id': 'TM08202202260831114637009', 'timestamp': '2026-08-31T06:17:33.101891Z', 'server_status': 'OrderStatus', 'server_response': '{"SectionStatus": {"Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\\nIS \\nOPEN \\nNOW", "SubHeader": "Please Pick the Products and close the door"}, "rstatus": false, "error": {"tmessage": "In Progress", "code": 20001, "umessage": "In Progress", "data": {}}, "SectionMain": {"Header": "Door Open"}, "status": "False", "voiceNote": "Please close door 2", "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}]}}'} (ID: 1788157053200-0)
[2026-08-31 11:47:33,882.882 INFO    ] {'order_id': 'TM08202202260831114637009', 'server_status': 'OrderStatus', 'server_response': {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}}
[2026-08-31 11:47:33,885.885 INFO    ] 200
[2026-08-31 11:47:33,888.888 INFO    ] {"data":{"order_id":"TM08202202260831114637009","server_status":"OrderStatus","server_response":{"SectionStatus":{"Header":"Please Close Door 2","Note":"Please Close the door after picking up products","UI_Header":"DOOR 2\nIS \nOPEN \nNOW","SubHeader":"Please Pick the Products and close the door"},"rstatus":false,"error":{"tmessage":"In Progress","code":20001,"umessage":"In Progress","data":[]},"SectionMain":{"Header":"Door Open"},"status":"false","voiceNote":"Please close door 2","SectionSKU":{"Header":"Pick the below items from the door","skus":[{"qty":1,"name":"Maaza Tetra 135ml"}]}}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 11:47:33,892.892 INFO    ] {'response': {'status': True, 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'data': 'order updated successfully'}, 'data': {'order_id': 'TM08202202260831114637009', 'server_status': 'OrderStatus', 'server_response': {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'status': 'false', 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': []}, 'SectionMain': {'Header': 'Door Open'}, 'rstatus': False, 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}}}
[2026-08-31 11:47:33,895.895 INFO    ] {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}
[2026-08-31 11:47:37,011.011 INFO    ] 200
[2026-08-31 11:47:37,014.014 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 11:47:37,018.018 INFO    ] {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}
[2026-08-31 11:47:40,091.091 INFO    ] 200
[2026-08-31 11:47:40,094.094 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 11:47:40,097.097 INFO    ] {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}
[2026-08-31 11:47:43,164.164 INFO    ] 200
[2026-08-31 11:47:43,167.167 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 11:47:43,170.170 INFO    ] Please close door 2
[2026-08-31 11:47:43,173.173 INFO    ] Please close door 2
[2026-08-31 11:47:43,176.176 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-08-31 11:47:43,179.179 INFO    ] 2026-08-31 11:47:43
[2026-08-31 11:47:43,182.182 INFO    ] playing audio file
[2026-08-31 11:47:43,204.204 INFO    ] 2026-08-31 11:47:43
[2026-08-31 11:47:43,208.208 INFO    ] publish_status: order_id=TM08202202260831114637009
[2026-08-31 11:47:43,211.211 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831114637009
[2026-08-31 11:47:43,303.303 INFO    ] [publish_status] Message added to stream with ID: 1788157063270-0
[2026-08-31 11:47:43,306.306 INFO    ] Published to order:TM08202202260831114637009: {'order_id': 'TM08202202260831114637009', 'timestamp': '2026-08-31T06:17:43.206210Z', 'server_status': 'OrderStatus', 'server_response': '{"SectionStatus": {"Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\\nIS \\nOPEN \\nNOW", "SubHeader": "Please Pick the Products and close the door"}, "rstatus": false, "error": {"tmessage": "In Progress", "code": 20001, "umessage": "In Progress", "data": {}}, "SectionMain": {"Header": "Door Open"}, "status": "False", "voiceNote": "Please close door 2", "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}]}}'} (ID: 1788157063270-0)
[2026-08-31 11:47:43,864.864 INFO    ] {'order_id': 'TM08202202260831114637009', 'server_status': 'OrderStatus', 'server_response': {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}}
[2026-08-31 11:47:43,867.867 INFO    ] 200
[2026-08-31 11:47:43,869.869 INFO    ] {"data":{"order_id":"TM08202202260831114637009","server_status":"OrderStatus","server_response":{"SectionStatus":{"Header":"Please Close Door 2","Note":"Please Close the door after picking up products","UI_Header":"DOOR 2\nIS \nOPEN \nNOW","SubHeader":"Please Pick the Products and close the door"},"rstatus":false,"error":{"tmessage":"In Progress","code":20001,"umessage":"In Progress","data":[]},"SectionMain":{"Header":"Door Open"},"status":"false","voiceNote":"Please close door 2","SectionSKU":{"Header":"Pick the below items from the door","skus":[{"qty":1,"name":"Maaza Tetra 135ml"}]}}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 11:47:43,872.872 INFO    ] {'response': {'status': True, 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'data': 'order updated successfully'}, 'data': {'order_id': 'TM08202202260831114637009', 'server_status': 'OrderStatus', 'server_response': {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'status': 'false', 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': []}, 'SectionMain': {'Header': 'Door Open'}, 'rstatus': False, 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}}}
[2026-08-31 11:47:43,875.875 INFO    ] {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}
[2026-08-31 11:47:46,961.961 INFO    ] 200
[2026-08-31 11:47:46,963.963 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 11:47:46,966.966 INFO    ] {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}
[2026-08-31 11:47:50,017.017 INFO    ] 200
[2026-08-31 11:47:50,019.019 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 11:47:50,022.022 INFO    ] {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}
[2026-08-31 11:47:53,094.094 INFO    ] 200
[2026-08-31 11:47:53,098.098 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 11:47:53,101.101 INFO    ] Please close door 2
[2026-08-31 11:47:53,104.104 INFO    ] Please close door 2
[2026-08-31 11:47:53,106.106 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-08-31 11:47:53,109.109 INFO    ] 2026-08-31 11:47:53
[2026-08-31 11:47:53,112.112 INFO    ] playing audio file
[2026-08-31 11:47:53,129.129 INFO    ] 2026-08-31 11:47:53
[2026-08-31 11:47:53,133.133 INFO    ] publish_status: order_id=TM08202202260831114637009
[2026-08-31 11:47:53,136.136 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831114637009
[2026-08-31 11:47:53,219.219 INFO    ] [publish_status] Message added to stream with ID: 1788157073185-0
[2026-08-31 11:47:53,222.222 INFO    ] Published to order:TM08202202260831114637009: {'order_id': 'TM08202202260831114637009', 'timestamp': '2026-08-31T06:17:53.131502Z', 'server_status': 'OrderStatus', 'server_response': '{"SectionStatus": {"Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\\nIS \\nOPEN \\nNOW", "SubHeader": "Please Pick the Products and close the door"}, "rstatus": false, "error": {"tmessage": "In Progress", "code": 20001, "umessage": "In Progress", "data": {}}, "SectionMain": {"Header": "Door Open"}, "status": "False", "voiceNote": "Please close door 2", "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}]}}'} (ID: 1788157073185-0)
[2026-08-31 11:47:53,866.866 INFO    ] {'order_id': 'TM08202202260831114637009', 'server_status': 'OrderStatus', 'server_response': {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}}
[2026-08-31 11:47:53,868.868 INFO    ] 200
[2026-08-31 11:47:53,871.871 INFO    ] {"data":{"order_id":"TM08202202260831114637009","server_status":"OrderStatus","server_response":{"SectionStatus":{"Header":"Please Close Door 2","Note":"Please Close the door after picking up products","UI_Header":"DOOR 2\nIS \nOPEN \nNOW","SubHeader":"Please Pick the Products and close the door"},"rstatus":false,"error":{"tmessage":"In Progress","code":20001,"umessage":"In Progress","data":[]},"SectionMain":{"Header":"Door Open"},"status":"false","voiceNote":"Please close door 2","SectionSKU":{"Header":"Pick the below items from the door","skus":[{"qty":1,"name":"Maaza Tetra 135ml"}]}}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 11:47:53,874.874 INFO    ] {'response': {'status': True, 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'data': 'order updated successfully'}, 'data': {'order_id': 'TM08202202260831114637009', 'server_status': 'OrderStatus', 'server_response': {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'status': 'false', 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': []}, 'SectionMain': {'Header': 'Door Open'}, 'rstatus': False, 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}}}
[2026-08-31 11:47:53,877.877 INFO    ] {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}
[2026-08-31 11:47:56,927.927 INFO    ] 200
[2026-08-31 11:47:56,930.930 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 11:47:56,934.934 INFO    ] {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}
[2026-08-31 11:47:59,984.984 INFO    ] 200
[2026-08-31 11:47:59,987.987 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 11:47:59,991.991 INFO    ] {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}
[2026-08-31 11:48:03,094.094 INFO    ] 200
[2026-08-31 11:48:03,097.097 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 11:48:03,100.100 INFO    ] Please close door 2
[2026-08-31 11:48:03,103.103 INFO    ] Please close door 2
[2026-08-31 11:48:03,106.106 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-08-31 11:48:03,109.109 INFO    ] 2026-08-31 11:48:03
[2026-08-31 11:48:03,111.111 INFO    ] playing audio file
[2026-08-31 11:48:03,129.129 INFO    ] 2026-08-31 11:48:03
[2026-08-31 11:48:03,133.133 INFO    ] publish_status: order_id=TM08202202260831114637009
[2026-08-31 11:48:03,136.136 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831114637009
[2026-08-31 11:48:03,225.225 INFO    ] [publish_status] Message added to stream with ID: 1788157083194-0
[2026-08-31 11:48:03,228.228 INFO    ] Published to order:TM08202202260831114637009: {'order_id': 'TM08202202260831114637009', 'timestamp': '2026-08-31T06:18:03.131460Z', 'server_status': 'OrderStatus', 'server_response': '{"SectionStatus": {"Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\\nIS \\nOPEN \\nNOW", "SubHeader": "Please Pick the Products and close the door"}, "rstatus": false, "error": {"tmessage": "In Progress", "code": 20001, "umessage": "In Progress", "data": {}}, "SectionMain": {"Header": "Door Open"}, "status": "False", "voiceNote": "Please close door 2", "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}]}}'} (ID: 1788157083194-0)
[2026-08-31 11:48:03,794.794 INFO    ] {'order_id': 'TM08202202260831114637009', 'server_status': 'OrderStatus', 'server_response': {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}}
[2026-08-31 11:48:03,798.798 INFO    ] 200
[2026-08-31 11:48:03,801.801 INFO    ] {"data":{"order_id":"TM08202202260831114637009","server_status":"OrderStatus","server_response":{"SectionStatus":{"Header":"Please Close Door 2","Note":"Please Close the door after picking up products","UI_Header":"DOOR 2\nIS \nOPEN \nNOW","SubHeader":"Please Pick the Products and close the door"},"rstatus":false,"error":{"tmessage":"In Progress","code":20001,"umessage":"In Progress","data":[]},"SectionMain":{"Header":"Door Open"},"status":"false","voiceNote":"Please close door 2","SectionSKU":{"Header":"Pick the below items from the door","skus":[{"qty":1,"name":"Maaza Tetra 135ml"}]}}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 11:48:03,804.804 INFO    ] {'response': {'status': True, 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'data': 'order updated successfully'}, 'data': {'order_id': 'TM08202202260831114637009', 'server_status': 'OrderStatus', 'server_response': {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'status': 'false', 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': []}, 'SectionMain': {'Header': 'Door Open'}, 'rstatus': False, 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}}}
[2026-08-31 11:48:03,807.807 INFO    ] {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}
[2026-08-31 11:48:06,910.910 INFO    ] 200
[2026-08-31 11:48:06,913.913 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 11:48:06,917.917 INFO    ] {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}
[2026-08-31 11:48:09,977.977 INFO    ] 200
[2026-08-31 11:48:09,980.980 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 11:48:09,984.984 INFO    ] {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}
[2026-08-31 11:48:13,046.046 INFO    ] 200
[2026-08-31 11:48:13,058.058 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 11:48:13,061.061 INFO    ] Please close door 2
[2026-08-31 11:48:13,064.064 INFO    ] Please close door 2
[2026-08-31 11:48:13,067.067 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-08-31 11:48:13,070.070 INFO    ] 2026-08-31 11:48:13
[2026-08-31 11:48:13,073.073 INFO    ] playing audio file
[2026-08-31 11:48:13,092.092 INFO    ] 2026-08-31 11:48:13
[2026-08-31 11:48:13,096.096 INFO    ] publish_status: order_id=TM08202202260831114637009
[2026-08-31 11:48:13,100.100 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831114637009
[2026-08-31 11:48:13,191.191 INFO    ] [publish_status] Message added to stream with ID: 1788157093160-0
[2026-08-31 11:48:13,195.195 INFO    ] Published to order:TM08202202260831114637009: {'order_id': 'TM08202202260831114637009', 'timestamp': '2026-08-31T06:18:13.094205Z', 'server_status': 'OrderStatus', 'server_response': '{"SectionStatus": {"Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\\nIS \\nOPEN \\nNOW", "SubHeader": "Please Pick the Products and close the door"}, "rstatus": false, "error": {"tmessage": "In Progress", "code": 20001, "umessage": "In Progress", "data": {}}, "SectionMain": {"Header": "Door Open"}, "status": "False", "voiceNote": "Please close door 2", "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}]}}'} (ID: 1788157093160-0)
[2026-08-31 11:48:13,865.865 INFO    ] {'order_id': 'TM08202202260831114637009', 'server_status': 'OrderStatus', 'server_response': {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}}
[2026-08-31 11:48:13,869.869 INFO    ] 200
[2026-08-31 11:48:13,872.872 INFO    ] {"data":{"order_id":"TM08202202260831114637009","server_status":"OrderStatus","server_response":{"SectionStatus":{"Header":"Please Close Door 2","Note":"Please Close the door after picking up products","UI_Header":"DOOR 2\nIS \nOPEN \nNOW","SubHeader":"Please Pick the Products and close the door"},"rstatus":false,"error":{"tmessage":"In Progress","code":20001,"umessage":"In Progress","data":[]},"SectionMain":{"Header":"Door Open"},"status":"false","voiceNote":"Please close door 2","SectionSKU":{"Header":"Pick the below items from the door","skus":[{"qty":1,"name":"Maaza Tetra 135ml"}]}}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 11:48:13,875.875 INFO    ] {'response': {'status': True, 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'data': 'order updated successfully'}, 'data': {'order_id': 'TM08202202260831114637009', 'server_status': 'OrderStatus', 'server_response': {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'status': 'false', 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': []}, 'SectionMain': {'Header': 'Door Open'}, 'rstatus': False, 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}}}
[2026-08-31 11:48:13,879.879 INFO    ] {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}
[2026-08-31 11:48:16,953.953 INFO    ] 200
[2026-08-31 11:48:16,956.956 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 11:48:16,960.960 INFO    ] {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}
[2026-08-31 11:48:20,016.016 INFO    ] 200
[2026-08-31 11:48:20,019.019 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 11:48:20,023.023 INFO    ] {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}
[2026-08-31 11:48:23,076.076 INFO    ] 200
[2026-08-31 11:48:23,079.079 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 11:48:23,083.083 INFO    ] Please close door 2
[2026-08-31 11:48:23,086.086 INFO    ] Please close door 2
[2026-08-31 11:48:23,089.089 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-08-31 11:48:23,093.093 INFO    ] 2026-08-31 11:48:23
[2026-08-31 11:48:23,096.096 INFO    ] playing audio file
[2026-08-31 11:48:23,115.115 INFO    ] 2026-08-31 11:48:23
[2026-08-31 11:48:23,120.120 INFO    ] publish_status: order_id=TM08202202260831114637009
[2026-08-31 11:48:23,123.123 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831114637009
[2026-08-31 11:48:23,228.228 INFO    ] [publish_status] Message added to stream with ID: 1788157103187-0
[2026-08-31 11:48:23,231.231 INFO    ] Published to order:TM08202202260831114637009: {'order_id': 'TM08202202260831114637009', 'timestamp': '2026-08-31T06:18:23.118172Z', 'server_status': 'OrderStatus', 'server_response': '{"SectionStatus": {"Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\\nIS \\nOPEN \\nNOW", "SubHeader": "Please Pick the Products and close the door"}, "rstatus": false, "error": {"tmessage": "In Progress", "code": 20001, "umessage": "In Progress", "data": {}}, "SectionMain": {"Header": "Door Open"}, "status": "False", "voiceNote": "Please close door 2", "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}]}}'} (ID: 1788157103187-0)
[2026-08-31 11:48:23,984.984 INFO    ] {'order_id': 'TM08202202260831114637009', 'server_status': 'OrderStatus', 'server_response': {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}}
[2026-08-31 11:48:23,986.986 INFO    ] 200
[2026-08-31 11:48:23,989.989 INFO    ] {"data":{"order_id":"TM08202202260831114637009","server_status":"OrderStatus","server_response":{"SectionStatus":{"Header":"Please Close Door 2","Note":"Please Close the door after picking up products","UI_Header":"DOOR 2\nIS \nOPEN \nNOW","SubHeader":"Please Pick the Products and close the door"},"rstatus":false,"error":{"tmessage":"In Progress","code":20001,"umessage":"In Progress","data":[]},"SectionMain":{"Header":"Door Open"},"status":"false","voiceNote":"Please close door 2","SectionSKU":{"Header":"Pick the below items from the door","skus":[{"qty":1,"name":"Maaza Tetra 135ml"}]}}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 11:48:23,992.992 INFO    ] {'response': {'status': True, 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'data': 'order updated successfully'}, 'data': {'order_id': 'TM08202202260831114637009', 'server_status': 'OrderStatus', 'server_response': {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'status': 'false', 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': []}, 'SectionMain': {'Header': 'Door Open'}, 'rstatus': False, 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}}}
[2026-08-31 11:48:23,995.995 INFO    ] {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}
[2026-08-31 11:48:27,071.071 INFO    ] 200
[2026-08-31 11:48:27,074.074 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 11:48:27,077.077 INFO    ] {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}
[2026-08-31 11:48:30,128.128 INFO    ] 200
[2026-08-31 11:48:30,130.130 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 11:48:30,134.134 INFO    ] {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}
[2026-08-31 11:48:33,206.206 INFO    ] 200
[2026-08-31 11:48:33,209.209 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 11:48:33,212.212 INFO    ] Please close door 2
[2026-08-31 11:48:33,215.215 INFO    ] Please close door 2
[2026-08-31 11:48:33,219.219 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-08-31 11:48:33,223.223 INFO    ] 2026-08-31 11:48:33
[2026-08-31 11:48:33,226.226 INFO    ] playing audio file
[2026-08-31 11:48:33,246.246 INFO    ] 2026-08-31 11:48:33
[2026-08-31 11:48:33,250.250 INFO    ] publish_status: order_id=TM08202202260831114637009
[2026-08-31 11:48:33,254.254 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831114637009
[2026-08-31 11:48:33,313.313 INFO    ] [publish_status] Message added to stream with ID: 1788157113282-0
[2026-08-31 11:48:33,316.316 INFO    ] Published to order:TM08202202260831114637009: {'order_id': 'TM08202202260831114637009', 'timestamp': '2026-08-31T06:18:33.248416Z', 'server_status': 'OrderStatus', 'server_response': '{"SectionStatus": {"Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\\nIS \\nOPEN \\nNOW", "SubHeader": "Please Pick the Products and close the door"}, "rstatus": false, "error": {"tmessage": "In Progress", "code": 20001, "umessage": "In Progress", "data": {}}, "SectionMain": {"Header": "Door Open"}, "status": "False", "voiceNote": "Please close door 2", "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}]}}'} (ID: 1788157113282-0)
[2026-08-31 11:48:34,082.082 INFO    ] {'order_id': 'TM08202202260831114637009', 'server_status': 'OrderStatus', 'server_response': {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}}
[2026-08-31 11:48:34,085.085 INFO    ] 200
[2026-08-31 11:48:34,089.089 INFO    ] {"data":{"order_id":"TM08202202260831114637009","server_status":"OrderStatus","server_response":{"SectionStatus":{"Header":"Please Close Door 2","Note":"Please Close the door after picking up products","UI_Header":"DOOR 2\nIS \nOPEN \nNOW","SubHeader":"Please Pick the Products and close the door"},"rstatus":false,"error":{"tmessage":"In Progress","code":20001,"umessage":"In Progress","data":[]},"SectionMain":{"Header":"Door Open"},"status":"false","voiceNote":"Please close door 2","SectionSKU":{"Header":"Pick the below items from the door","skus":[{"qty":1,"name":"Maaza Tetra 135ml"}]}}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 11:48:34,093.093 INFO    ] {'response': {'status': True, 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'data': 'order updated successfully'}, 'data': {'order_id': 'TM08202202260831114637009', 'server_status': 'OrderStatus', 'server_response': {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'status': 'false', 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': []}, 'SectionMain': {'Header': 'Door Open'}, 'rstatus': False, 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}}}
[2026-08-31 11:48:34,096.096 INFO    ] {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}
[2026-08-31 11:48:37,163.163 INFO    ] 200
[2026-08-31 11:48:37,165.165 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 11:48:37,168.168 INFO    ] {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}
[2026-08-31 11:48:40,236.236 INFO    ] 200
[2026-08-31 11:48:40,239.239 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 11:48:40,242.242 INFO    ] {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}
[2026-08-31 11:48:43,301.301 INFO    ] 200
[2026-08-31 11:48:43,303.303 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 11:48:43,306.306 INFO    ] Please close door 2
[2026-08-31 11:48:43,309.309 INFO    ] Please close door 2
[2026-08-31 11:48:43,311.311 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-08-31 11:48:43,314.314 INFO    ] 2026-08-31 11:48:43
[2026-08-31 11:48:43,316.316 INFO    ] playing audio file
[2026-08-31 11:48:43,341.341 INFO    ] 2026-08-31 11:48:43
[2026-08-31 11:48:43,345.345 INFO    ] publish_status: order_id=TM08202202260831114637009
[2026-08-31 11:48:43,348.348 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831114637009
[2026-08-31 11:48:43,468.468 INFO    ] [publish_status] Message added to stream with ID: 1788157123423-0
[2026-08-31 11:48:43,479.479 INFO    ] Published to order:TM08202202260831114637009: {'order_id': 'TM08202202260831114637009', 'timestamp': '2026-08-31T06:18:43.343114Z', 'server_status': 'OrderStatus', 'server_response': '{"SectionStatus": {"Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\\nIS \\nOPEN \\nNOW", "SubHeader": "Please Pick the Products and close the door"}, "rstatus": false, "error": {"tmessage": "In Progress", "code": 20001, "umessage": "In Progress", "data": {}}, "SectionMain": {"Header": "Door Open"}, "status": "False", "voiceNote": "Please close door 2", "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}]}}'} (ID: 1788157123423-0)
[2026-08-31 11:48:44,165.165 INFO    ] {'order_id': 'TM08202202260831114637009', 'server_status': 'OrderStatus', 'server_response': {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}}
[2026-08-31 11:48:44,168.168 INFO    ] 200
[2026-08-31 11:48:44,171.171 INFO    ] {"data":{"order_id":"TM08202202260831114637009","server_status":"OrderStatus","server_response":{"SectionStatus":{"Header":"Please Close Door 2","Note":"Please Close the door after picking up products","UI_Header":"DOOR 2\nIS \nOPEN \nNOW","SubHeader":"Please Pick the Products and close the door"},"rstatus":false,"error":{"tmessage":"In Progress","code":20001,"umessage":"In Progress","data":[]},"SectionMain":{"Header":"Door Open"},"status":"false","voiceNote":"Please close door 2","SectionSKU":{"Header":"Pick the below items from the door","skus":[{"qty":1,"name":"Maaza Tetra 135ml"}]}}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 11:48:44,174.174 INFO    ] {'response': {'status': True, 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'data': 'order updated successfully'}, 'data': {'order_id': 'TM08202202260831114637009', 'server_status': 'OrderStatus', 'server_response': {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'status': 'false', 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': []}, 'SectionMain': {'Header': 'Door Open'}, 'rstatus': False, 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}}}
[2026-08-31 11:48:44,176.176 INFO    ] {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}
[2026-08-31 11:48:47,252.252 INFO    ] 200
[2026-08-31 11:48:47,255.255 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 11:48:47,258.258 INFO    ] {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}
[2026-08-31 11:48:50,313.313 INFO    ] 200
[2026-08-31 11:48:50,316.316 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 11:48:50,319.319 INFO    ] {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}
[2026-08-31 11:48:53,368.368 INFO    ] 200
[2026-08-31 11:48:53,371.371 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 11:48:53,373.373 INFO    ] Please close door 2
[2026-08-31 11:48:53,376.376 INFO    ] Please close door 2
[2026-08-31 11:48:53,379.379 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-08-31 11:48:53,382.382 INFO    ] 2026-08-31 11:48:53
[2026-08-31 11:48:53,384.384 INFO    ] playing audio file
[2026-08-31 11:48:53,402.402 INFO    ] 2026-08-31 11:48:53
[2026-08-31 11:48:53,405.405 INFO    ] publish_status: order_id=TM08202202260831114637009
[2026-08-31 11:48:53,408.408 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831114637009
[2026-08-31 11:48:53,500.500 INFO    ] [publish_status] Message added to stream with ID: 1788157133464-0
[2026-08-31 11:48:53,503.503 INFO    ] Published to order:TM08202202260831114637009: {'order_id': 'TM08202202260831114637009', 'timestamp': '2026-08-31T06:18:53.404138Z', 'server_status': 'OrderStatus', 'server_response': '{"SectionStatus": {"Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\\nIS \\nOPEN \\nNOW", "SubHeader": "Please Pick the Products and close the door"}, "rstatus": false, "error": {"tmessage": "In Progress", "code": 20001, "umessage": "In Progress", "data": {}}, "SectionMain": {"Header": "Door Open"}, "status": "False", "voiceNote": "Please close door 2", "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}]}}'} (ID: 1788157133464-0)
[2026-08-31 11:48:54,114.114 INFO    ] {'order_id': 'TM08202202260831114637009', 'server_status': 'OrderStatus', 'server_response': {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}}
[2026-08-31 11:48:54,116.116 INFO    ] 200
[2026-08-31 11:48:54,119.119 INFO    ] {"data":{"order_id":"TM08202202260831114637009","server_status":"OrderStatus","server_response":{"SectionStatus":{"Header":"Please Close Door 2","Note":"Please Close the door after picking up products","UI_Header":"DOOR 2\nIS \nOPEN \nNOW","SubHeader":"Please Pick the Products and close the door"},"rstatus":false,"error":{"tmessage":"In Progress","code":20001,"umessage":"In Progress","data":[]},"SectionMain":{"Header":"Door Open"},"status":"false","voiceNote":"Please close door 2","SectionSKU":{"Header":"Pick the below items from the door","skus":[{"qty":1,"name":"Maaza Tetra 135ml"}]}}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 11:48:54,122.122 INFO    ] {'response': {'status': True, 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'data': 'order updated successfully'}, 'data': {'order_id': 'TM08202202260831114637009', 'server_status': 'OrderStatus', 'server_response': {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'status': 'false', 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': []}, 'SectionMain': {'Header': 'Door Open'}, 'rstatus': False, 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}}}
[2026-08-31 11:48:54,125.125 INFO    ] {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}
[2026-08-31 11:48:57,176.176 INFO    ] 200
[2026-08-31 11:48:57,178.178 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 11:48:57,181.181 INFO    ] {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}
[2026-08-31 11:49:00,266.266 INFO    ] 200
[2026-08-31 11:49:00,268.268 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 11:49:00,272.272 INFO    ] {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}
[2026-08-31 11:49:03,361.361 INFO    ] 200
[2026-08-31 11:49:03,364.364 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 11:49:03,367.367 INFO    ] Please close door 2
[2026-08-31 11:49:03,370.370 INFO    ] Please close door 2
[2026-08-31 11:49:03,375.375 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-08-31 11:49:03,379.379 INFO    ] 2026-08-31 11:49:03
[2026-08-31 11:49:03,385.385 INFO    ] playing audio file
[2026-08-31 11:49:03,404.404 INFO    ] 2026-08-31 11:49:03
[2026-08-31 11:49:03,408.408 INFO    ] publish_status: order_id=TM08202202260831114637009
[2026-08-31 11:49:03,411.411 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831114637009
[2026-08-31 11:49:03,506.506 INFO    ] [publish_status] Message added to stream with ID: 1788157143473-0
[2026-08-31 11:49:03,509.509 INFO    ] Published to order:TM08202202260831114637009: {'order_id': 'TM08202202260831114637009', 'timestamp': '2026-08-31T06:19:03.406547Z', 'server_status': 'OrderStatus', 'server_response': '{"SectionStatus": {"Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\\nIS \\nOPEN \\nNOW", "SubHeader": "Please Pick the Products and close the door"}, "rstatus": false, "error": {"tmessage": "In Progress", "code": 20001, "umessage": "In Progress", "data": {}}, "SectionMain": {"Header": "Door Open"}, "status": "False", "voiceNote": "Please close door 2", "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}]}}'} (ID: 1788157143473-0)
[2026-08-31 11:49:04,169.169 INFO    ] {'order_id': 'TM08202202260831114637009', 'server_status': 'OrderStatus', 'server_response': {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}}
[2026-08-31 11:49:04,172.172 INFO    ] 200
[2026-08-31 11:49:04,175.175 INFO    ] {"data":{"order_id":"TM08202202260831114637009","server_status":"OrderStatus","server_response":{"SectionStatus":{"Header":"Please Close Door 2","Note":"Please Close the door after picking up products","UI_Header":"DOOR 2\nIS \nOPEN \nNOW","SubHeader":"Please Pick the Products and close the door"},"rstatus":false,"error":{"tmessage":"In Progress","code":20001,"umessage":"In Progress","data":[]},"SectionMain":{"Header":"Door Open"},"status":"false","voiceNote":"Please close door 2","SectionSKU":{"Header":"Pick the below items from the door","skus":[{"qty":1,"name":"Maaza Tetra 135ml"}]}}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 11:49:04,178.178 INFO    ] {'response': {'status': True, 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'data': 'order updated successfully'}, 'data': {'order_id': 'TM08202202260831114637009', 'server_status': 'OrderStatus', 'server_response': {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'status': 'false', 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': []}, 'SectionMain': {'Header': 'Door Open'}, 'rstatus': False, 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}}}
[2026-08-31 11:49:04,182.182 INFO    ] {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}
[2026-08-31 11:49:07,262.262 INFO    ] 200
[2026-08-31 11:49:07,265.265 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 11:49:07,269.269 INFO    ] {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}
[2026-08-31 11:49:10,341.341 INFO    ] 200
[2026-08-31 11:49:10,343.343 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 11:49:10,346.346 INFO    ] {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}
[2026-08-31 11:49:13,399.399 INFO    ] 200
[2026-08-31 11:49:13,402.402 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 11:49:13,405.405 INFO    ] Please close door 2
[2026-08-31 11:49:13,409.409 INFO    ] Please close door 2
[2026-08-31 11:49:13,412.412 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-08-31 11:49:13,415.415 INFO    ] 2026-08-31 11:49:13
[2026-08-31 11:49:13,417.417 INFO    ] playing audio file
[2026-08-31 11:49:13,434.434 INFO    ] 2026-08-31 11:49:13
[2026-08-31 11:49:13,438.438 INFO    ] publish_status: order_id=TM08202202260831114637009
[2026-08-31 11:49:13,441.441 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831114637009
[2026-08-31 11:49:13,520.520 INFO    ] [publish_status] Message added to stream with ID: 1788157153488-0
[2026-08-31 11:49:13,523.523 INFO    ] Published to order:TM08202202260831114637009: {'order_id': 'TM08202202260831114637009', 'timestamp': '2026-08-31T06:19:13.436625Z', 'server_status': 'OrderStatus', 'server_response': '{"SectionStatus": {"Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\\nIS \\nOPEN \\nNOW", "SubHeader": "Please Pick the Products and close the door"}, "rstatus": false, "error": {"tmessage": "In Progress", "code": 20001, "umessage": "In Progress", "data": {}}, "SectionMain": {"Header": "Door Open"}, "status": "False", "voiceNote": "Please close door 2", "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}]}}'} (ID: 1788157153488-0)
[2026-08-31 11:49:14,116.116 INFO    ] {'order_id': 'TM08202202260831114637009', 'server_status': 'OrderStatus', 'server_response': {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}}
[2026-08-31 11:49:14,118.118 INFO    ] 200
[2026-08-31 11:49:14,121.121 INFO    ] {"data":{"order_id":"TM08202202260831114637009","server_status":"OrderStatus","server_response":{"SectionStatus":{"Header":"Please Close Door 2","Note":"Please Close the door after picking up products","UI_Header":"DOOR 2\nIS \nOPEN \nNOW","SubHeader":"Please Pick the Products and close the door"},"rstatus":false,"error":{"tmessage":"In Progress","code":20001,"umessage":"In Progress","data":[]},"SectionMain":{"Header":"Door Open"},"status":"false","voiceNote":"Please close door 2","SectionSKU":{"Header":"Pick the below items from the door","skus":[{"qty":1,"name":"Maaza Tetra 135ml"}]}}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 11:49:14,124.124 INFO    ] {'response': {'status': True, 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'data': 'order updated successfully'}, 'data': {'order_id': 'TM08202202260831114637009', 'server_status': 'OrderStatus', 'server_response': {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'status': 'false', 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': []}, 'SectionMain': {'Header': 'Door Open'}, 'rstatus': False, 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}}}
[2026-08-31 11:49:14,127.127 INFO    ] {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}
[2026-08-31 11:49:17,177.177 INFO    ] 200
[2026-08-31 11:49:17,180.180 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 11:49:17,183.183 INFO    ] {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}
[2026-08-31 11:49:20,288.288 INFO    ] 200
[2026-08-31 11:49:20,290.290 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 11:49:20,293.293 INFO    ] {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}
[2026-08-31 11:49:23,510.510 INFO    ] 200
[2026-08-31 11:49:23,512.512 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 11:49:23,515.515 INFO    ] Please close door 2
[2026-08-31 11:49:23,520.520 INFO    ] Please close door 2
[2026-08-31 11:49:23,523.523 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-08-31 11:49:23,529.529 INFO    ] 2026-08-31 11:49:23
[2026-08-31 11:49:23,535.535 INFO    ] playing audio file
[2026-08-31 11:49:23,560.560 INFO    ] 2026-08-31 11:49:23
[2026-08-31 11:49:23,564.564 INFO    ] publish_status: order_id=TM08202202260831114637009
[2026-08-31 11:49:23,567.567 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831114637009
[2026-08-31 11:49:23,624.624 INFO    ] [publish_status] Message added to stream with ID: 1788157163592-0
[2026-08-31 11:49:23,627.627 INFO    ] Published to order:TM08202202260831114637009: {'order_id': 'TM08202202260831114637009', 'timestamp': '2026-08-31T06:19:23.562287Z', 'server_status': 'OrderStatus', 'server_response': '{"SectionStatus": {"Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\\nIS \\nOPEN \\nNOW", "SubHeader": "Please Pick the Products and close the door"}, "rstatus": false, "error": {"tmessage": "In Progress", "code": 20001, "umessage": "In Progress", "data": {}}, "SectionMain": {"Header": "Door Open"}, "status": "False", "voiceNote": "Please close door 2", "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}]}}'} (ID: 1788157163592-0)
[2026-08-31 11:49:24,801.801 INFO    ] {'order_id': 'TM08202202260831114637009', 'server_status': 'OrderStatus', 'server_response': {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}}
[2026-08-31 11:49:24,804.804 INFO    ] 200
[2026-08-31 11:49:24,807.807 INFO    ] {"data":{"order_id":"TM08202202260831114637009","server_status":"OrderStatus","server_response":{"SectionStatus":{"Header":"Please Close Door 2","Note":"Please Close the door after picking up products","UI_Header":"DOOR 2\nIS \nOPEN \nNOW","SubHeader":"Please Pick the Products and close the door"},"rstatus":false,"error":{"tmessage":"In Progress","code":20001,"umessage":"In Progress","data":[]},"SectionMain":{"Header":"Door Open"},"status":"false","voiceNote":"Please close door 2","SectionSKU":{"Header":"Pick the below items from the door","skus":[{"qty":1,"name":"Maaza Tetra 135ml"}]}}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 11:49:24,810.810 INFO    ] {'response': {'status': True, 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'data': 'order updated successfully'}, 'data': {'order_id': 'TM08202202260831114637009', 'server_status': 'OrderStatus', 'server_response': {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'status': 'false', 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': []}, 'SectionMain': {'Header': 'Door Open'}, 'rstatus': False, 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}}}
[2026-08-31 11:49:24,814.814 INFO    ] {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}
[2026-08-31 11:49:27,891.891 INFO    ] 200
[2026-08-31 11:49:27,894.894 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 11:49:27,897.897 INFO    ] {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}
[2026-08-31 11:49:31,004.004 INFO    ] 200
[2026-08-31 11:49:31,007.007 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 11:49:31,010.010 INFO    ] {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}
[2026-08-31 11:49:34,081.081 INFO    ] 200
[2026-08-31 11:49:34,084.084 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 11:49:34,087.087 INFO    ] Please close door 2
[2026-08-31 11:49:34,089.089 INFO    ] Please close door 2
[2026-08-31 11:49:34,092.092 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-08-31 11:49:34,095.095 INFO    ] 2026-08-31 11:49:34
[2026-08-31 11:49:34,098.098 INFO    ] playing audio file
[2026-08-31 11:49:34,115.115 INFO    ] 2026-08-31 11:49:34
[2026-08-31 11:49:34,119.119 INFO    ] publish_status: order_id=TM08202202260831114637009
[2026-08-31 11:49:34,121.121 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831114637009
[2026-08-31 11:49:35,058.058 INFO    ] [publish_status] Message added to stream with ID: 1788157175012-0
[2026-08-31 11:49:35,061.061 INFO    ] Published to order:TM08202202260831114637009: {'order_id': 'TM08202202260831114637009', 'timestamp': '2026-08-31T06:19:34.117243Z', 'server_status': 'OrderStatus', 'server_response': '{"SectionStatus": {"Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\\nIS \\nOPEN \\nNOW", "SubHeader": "Please Pick the Products and close the door"}, "rstatus": false, "error": {"tmessage": "In Progress", "code": 20001, "umessage": "In Progress", "data": {}}, "SectionMain": {"Header": "Door Open"}, "status": "False", "voiceNote": "Please close door 2", "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}]}}'} (ID: 1788157175012-0)
[2026-08-31 11:49:41,904.904 INFO    ] {'order_id': 'TM08202202260831114637009', 'server_status': 'OrderStatus', 'server_response': {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}}
[2026-08-31 11:49:41,907.907 INFO    ] 200
[2026-08-31 11:49:41,910.910 INFO    ] {"data":{"order_id":"TM08202202260831114637009","server_status":"OrderStatus","server_response":{"SectionStatus":{"Header":"Please Close Door 2","Note":"Please Close the door after picking up products","UI_Header":"DOOR 2\nIS \nOPEN \nNOW","SubHeader":"Please Pick the Products and close the door"},"rstatus":false,"error":{"tmessage":"In Progress","code":20001,"umessage":"In Progress","data":[]},"SectionMain":{"Header":"Door Open"},"status":"false","voiceNote":"Please close door 2","SectionSKU":{"Header":"Pick the below items from the door","skus":[{"qty":1,"name":"Maaza Tetra 135ml"}]}}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 11:49:41,913.913 INFO    ] {'response': {'status': True, 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'data': 'order updated successfully'}, 'data': {'order_id': 'TM08202202260831114637009', 'server_status': 'OrderStatus', 'server_response': {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'status': 'false', 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': []}, 'SectionMain': {'Header': 'Door Open'}, 'rstatus': False, 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}}}
[2026-08-31 11:49:41,916.916 INFO    ] {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}
[2026-08-31 11:49:45,076.076 INFO    ] 200
[2026-08-31 11:49:45,079.079 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 11:49:45,082.082 INFO    ] {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}
[2026-08-31 11:49:48,171.171 INFO    ] 200
[2026-08-31 11:49:48,174.174 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 11:49:48,179.179 INFO    ] {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}
[2026-08-31 11:49:51,268.268 INFO    ] 200
[2026-08-31 11:49:51,272.272 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 11:49:51,276.276 INFO    ] Please close door 2
[2026-08-31 11:49:51,279.279 INFO    ] Please close door 2
[2026-08-31 11:49:51,283.283 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-08-31 11:49:51,286.286 INFO    ] 2026-08-31 11:49:51
[2026-08-31 11:49:51,290.290 INFO    ] playing audio file
[2026-08-31 11:49:51,309.309 INFO    ] 2026-08-31 11:49:51
[2026-08-31 11:49:51,314.314 INFO    ] publish_status: order_id=TM08202202260831114637009
[2026-08-31 11:49:51,318.318 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831114637009
[2026-08-31 11:49:51,442.442 INFO    ] [publish_status] Message added to stream with ID: 1788157191403-0
[2026-08-31 11:49:51,445.445 INFO    ] Published to order:TM08202202260831114637009: {'order_id': 'TM08202202260831114637009', 'timestamp': '2026-08-31T06:19:51.312210Z', 'server_status': 'OrderStatus', 'server_response': '{"SectionStatus": {"Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\\nIS \\nOPEN \\nNOW", "SubHeader": "Please Pick the Products and close the door"}, "rstatus": false, "error": {"tmessage": "In Progress", "code": 20001, "umessage": "In Progress", "data": {}}, "SectionMain": {"Header": "Door Open"}, "status": "False", "voiceNote": "Please close door 2", "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}]}}'} (ID: 1788157191403-0)
[2026-08-31 11:49:52,064.064 INFO    ] {'order_id': 'TM08202202260831114637009', 'server_status': 'OrderStatus', 'server_response': {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}}
[2026-08-31 11:49:52,067.067 INFO    ] 200
[2026-08-31 11:49:52,069.069 INFO    ] {"data":{"order_id":"TM08202202260831114637009","server_status":"OrderStatus","server_response":{"SectionStatus":{"Header":"Please Close Door 2","Note":"Please Close the door after picking up products","UI_Header":"DOOR 2\nIS \nOPEN \nNOW","SubHeader":"Please Pick the Products and close the door"},"rstatus":false,"error":{"tmessage":"In Progress","code":20001,"umessage":"In Progress","data":[]},"SectionMain":{"Header":"Door Open"},"status":"false","voiceNote":"Please close door 2","SectionSKU":{"Header":"Pick the below items from the door","skus":[{"qty":1,"name":"Maaza Tetra 135ml"}]}}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 11:49:52,073.073 INFO    ] {'response': {'status': True, 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'data': 'order updated successfully'}, 'data': {'order_id': 'TM08202202260831114637009', 'server_status': 'OrderStatus', 'server_response': {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'status': 'false', 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': []}, 'SectionMain': {'Header': 'Door Open'}, 'rstatus': False, 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}}}
[2026-08-31 11:49:52,076.076 INFO    ] {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}
[2026-08-31 11:49:55,181.181 INFO    ] 200
[2026-08-31 11:49:55,184.184 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 11:49:55,187.187 INFO    ] {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}
[2026-08-31 11:49:58,250.250 INFO    ] 200
[2026-08-31 11:49:58,252.252 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 11:49:58,255.255 INFO    ] {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}
[2026-08-31 11:50:01,377.377 INFO    ] 200
[2026-08-31 11:50:01,380.380 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 11:50:01,383.383 INFO    ] Please close door 2
[2026-08-31 11:50:01,386.386 INFO    ] Please close door 2
[2026-08-31 11:50:01,389.389 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-08-31 11:50:01,392.392 INFO    ] 2026-08-31 11:50:01
[2026-08-31 11:50:01,394.394 INFO    ] playing audio file
[2026-08-31 11:50:01,420.420 INFO    ] 2026-08-31 11:50:01
[2026-08-31 11:50:01,424.424 INFO    ] publish_status: order_id=TM08202202260831114637009
[2026-08-31 11:50:01,427.427 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831114637009
[2026-08-31 11:50:01,508.508 INFO    ] [publish_status] Message added to stream with ID: 1788157201477-0
[2026-08-31 11:50:01,512.512 INFO    ] Published to order:TM08202202260831114637009: {'order_id': 'TM08202202260831114637009', 'timestamp': '2026-08-31T06:20:01.422261Z', 'server_status': 'OrderStatus', 'server_response': '{"SectionStatus": {"Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\\nIS \\nOPEN \\nNOW", "SubHeader": "Please Pick the Products and close the door"}, "rstatus": false, "error": {"tmessage": "In Progress", "code": 20001, "umessage": "In Progress", "data": {}}, "SectionMain": {"Header": "Door Open"}, "status": "False", "voiceNote": "Please close door 2", "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}]}}'} (ID: 1788157201477-0)
[2026-08-31 11:50:02,526.526 INFO    ] {'order_id': 'TM08202202260831114637009', 'server_status': 'OrderStatus', 'server_response': {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}}
[2026-08-31 11:50:02,550.550 INFO    ] 200
[2026-08-31 11:50:02,590.590 INFO    ] {"data":{"order_id":"TM08202202260831114637009","server_status":"OrderStatus","server_response":{"SectionStatus":{"Header":"Please Close Door 2","Note":"Please Close the door after picking up products","UI_Header":"DOOR 2\nIS \nOPEN \nNOW","SubHeader":"Please Pick the Products and close the door"},"rstatus":false,"error":{"tmessage":"In Progress","code":20001,"umessage":"In Progress","data":[]},"SectionMain":{"Header":"Door Open"},"status":"false","voiceNote":"Please close door 2","SectionSKU":{"Header":"Pick the below items from the door","skus":[{"qty":1,"name":"Maaza Tetra 135ml"}]}}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 11:50:02,594.594 INFO    ] {'response': {'status': True, 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'data': 'order updated successfully'}, 'data': {'order_id': 'TM08202202260831114637009', 'server_status': 'OrderStatus', 'server_response': {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'status': 'false', 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': []}, 'SectionMain': {'Header': 'Door Open'}, 'rstatus': False, 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}}}
[2026-08-31 11:50:02,625.625 INFO    ] {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}
[2026-08-31 11:50:05,721.721 INFO    ] 200
[2026-08-31 11:50:05,724.724 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 11:50:05,727.727 INFO    ] {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}
[2026-08-31 11:50:08,778.778 INFO    ] 200
[2026-08-31 11:50:08,780.780 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 11:50:08,783.783 INFO    ] {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}
[2026-08-31 11:50:11,862.862 INFO    ] 200
[2026-08-31 11:50:11,865.865 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 11:50:11,868.868 INFO    ] Please close door 2
[2026-08-31 11:50:11,871.871 INFO    ] Please close door 2
[2026-08-31 11:50:11,874.874 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-08-31 11:50:11,877.877 INFO    ] 2026-08-31 11:50:11
[2026-08-31 11:50:11,880.880 INFO    ] playing audio file
[2026-08-31 11:50:11,898.898 INFO    ] 2026-08-31 11:50:11
[2026-08-31 11:50:11,901.901 INFO    ] publish_status: order_id=TM08202202260831114637009
[2026-08-31 11:50:11,904.904 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831114637009
[2026-08-31 11:50:12,023.023 INFO    ] [publish_status] Message added to stream with ID: 1788157211991-0
[2026-08-31 11:50:12,026.026 INFO    ] Published to order:TM08202202260831114637009: {'order_id': 'TM08202202260831114637009', 'timestamp': '2026-08-31T06:20:11.899987Z', 'server_status': 'OrderStatus', 'server_response': '{"SectionStatus": {"Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\\nIS \\nOPEN \\nNOW", "SubHeader": "Please Pick the Products and close the door"}, "rstatus": false, "error": {"tmessage": "In Progress", "code": 20001, "umessage": "In Progress", "data": {}}, "SectionMain": {"Header": "Door Open"}, "status": "False", "voiceNote": "Please close door 2", "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}]}}'} (ID: 1788157211991-0)
[2026-08-31 11:50:12,719.719 INFO    ] {'order_id': 'TM08202202260831114637009', 'server_status': 'OrderStatus', 'server_response': {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}}
[2026-08-31 11:50:12,722.722 INFO    ] 200
[2026-08-31 11:50:12,725.725 INFO    ] {"data":{"order_id":"TM08202202260831114637009","server_status":"OrderStatus","server_response":{"SectionStatus":{"Header":"Please Close Door 2","Note":"Please Close the door after picking up products","UI_Header":"DOOR 2\nIS \nOPEN \nNOW","SubHeader":"Please Pick the Products and close the door"},"rstatus":false,"error":{"tmessage":"In Progress","code":20001,"umessage":"In Progress","data":[]},"SectionMain":{"Header":"Door Open"},"status":"false","voiceNote":"Please close door 2","SectionSKU":{"Header":"Pick the below items from the door","skus":[{"qty":1,"name":"Maaza Tetra 135ml"}]}}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 11:50:12,729.729 INFO    ] {'response': {'status': True, 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'data': 'order updated successfully'}, 'data': {'order_id': 'TM08202202260831114637009', 'server_status': 'OrderStatus', 'server_response': {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'status': 'false', 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': []}, 'SectionMain': {'Header': 'Door Open'}, 'rstatus': False, 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}}}
[2026-08-31 11:50:12,732.732 INFO    ] {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}
[2026-08-31 11:50:15,878.878 INFO    ] 200
[2026-08-31 11:50:15,881.881 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 11:50:15,885.885 INFO    ] {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}
[2026-08-31 11:50:18,973.973 INFO    ] 200
[2026-08-31 11:50:18,976.976 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 11:50:18,980.980 INFO    ] {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}
[2026-08-31 11:50:22,042.042 INFO    ] 200
[2026-08-31 11:50:22,046.046 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 11:50:22,049.049 INFO    ] Please close door 2
[2026-08-31 11:50:22,052.052 INFO    ] Please close door 2
[2026-08-31 11:50:22,055.055 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-08-31 11:50:22,059.059 INFO    ] 2026-08-31 11:50:22
[2026-08-31 11:50:22,061.061 INFO    ] playing audio file
[2026-08-31 11:50:22,081.081 INFO    ] 2026-08-31 11:50:22
[2026-08-31 11:50:22,085.085 INFO    ] publish_status: order_id=TM08202202260831114637009
[2026-08-31 11:50:22,089.089 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831114637009
[2026-08-31 11:50:22,190.190 INFO    ] [publish_status] Message added to stream with ID: 1788157222151-0
[2026-08-31 11:50:22,193.193 INFO    ] Published to order:TM08202202260831114637009: {'order_id': 'TM08202202260831114637009', 'timestamp': '2026-08-31T06:20:22.083365Z', 'server_status': 'OrderStatus', 'server_response': '{"SectionStatus": {"Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\\nIS \\nOPEN \\nNOW", "SubHeader": "Please Pick the Products and close the door"}, "rstatus": false, "error": {"tmessage": "In Progress", "code": 20001, "umessage": "In Progress", "data": {}}, "SectionMain": {"Header": "Door Open"}, "status": "False", "voiceNote": "Please close door 2", "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}]}}'} (ID: 1788157222151-0)
[2026-08-31 11:50:22,865.865 INFO    ] {'order_id': 'TM08202202260831114637009', 'server_status': 'OrderStatus', 'server_response': {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}}
[2026-08-31 11:50:22,868.868 INFO    ] 200
[2026-08-31 11:50:22,870.870 INFO    ] {"data":{"order_id":"TM08202202260831114637009","server_status":"OrderStatus","server_response":{"SectionStatus":{"Header":"Please Close Door 2","Note":"Please Close the door after picking up products","UI_Header":"DOOR 2\nIS \nOPEN \nNOW","SubHeader":"Please Pick the Products and close the door"},"rstatus":false,"error":{"tmessage":"In Progress","code":20001,"umessage":"In Progress","data":[]},"SectionMain":{"Header":"Door Open"},"status":"false","voiceNote":"Please close door 2","SectionSKU":{"Header":"Pick the below items from the door","skus":[{"qty":1,"name":"Maaza Tetra 135ml"}]}}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 11:50:22,873.873 INFO    ] {'response': {'status': True, 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'data': 'order updated successfully'}, 'data': {'order_id': 'TM08202202260831114637009', 'server_status': 'OrderStatus', 'server_response': {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'status': 'false', 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': []}, 'SectionMain': {'Header': 'Door Open'}, 'rstatus': False, 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}}}
[2026-08-31 11:50:22,876.876 INFO    ] {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}
[2026-08-31 11:50:25,933.933 INFO    ] 200
[2026-08-31 11:50:25,936.936 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 11:50:25,939.939 INFO    ] {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}
[2026-08-31 11:50:29,002.002 INFO    ] 200
[2026-08-31 11:50:29,005.005 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 11:50:29,008.008 INFO    ] {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}
[2026-08-31 11:50:32,067.067 INFO    ] 200
[2026-08-31 11:50:32,070.070 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 11:50:32,073.073 INFO    ] Please close door 2
[2026-08-31 11:50:32,076.076 INFO    ] Please close door 2
[2026-08-31 11:50:32,080.080 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-08-31 11:50:32,083.083 INFO    ] 2026-08-31 11:50:32
[2026-08-31 11:50:32,086.086 INFO    ] playing audio file
[2026-08-31 11:50:32,107.107 INFO    ] 2026-08-31 11:50:32
[2026-08-31 11:50:32,110.110 INFO    ] publish_status: order_id=TM08202202260831114637009
[2026-08-31 11:50:32,117.117 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831114637009
[2026-08-31 11:50:32,192.192 INFO    ] [publish_status] Message added to stream with ID: 1788157232161-0
[2026-08-31 11:50:32,196.196 INFO    ] Published to order:TM08202202260831114637009: {'order_id': 'TM08202202260831114637009', 'timestamp': '2026-08-31T06:20:32.108966Z', 'server_status': 'OrderStatus', 'server_response': '{"SectionStatus": {"Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\\nIS \\nOPEN \\nNOW", "SubHeader": "Please Pick the Products and close the door"}, "rstatus": false, "error": {"tmessage": "In Progress", "code": 20001, "umessage": "In Progress", "data": {}}, "SectionMain": {"Header": "Door Open"}, "status": "False", "voiceNote": "Please close door 2", "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}]}}'} (ID: 1788157232161-0)
[2026-08-31 11:50:32,865.865 INFO    ] {'order_id': 'TM08202202260831114637009', 'server_status': 'OrderStatus', 'server_response': {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}}
[2026-08-31 11:50:32,868.868 INFO    ] 200
[2026-08-31 11:50:32,871.871 INFO    ] {"data":{"order_id":"TM08202202260831114637009","server_status":"OrderStatus","server_response":{"SectionStatus":{"Header":"Please Close Door 2","Note":"Please Close the door after picking up products","UI_Header":"DOOR 2\nIS \nOPEN \nNOW","SubHeader":"Please Pick the Products and close the door"},"rstatus":false,"error":{"tmessage":"In Progress","code":20001,"umessage":"In Progress","data":[]},"SectionMain":{"Header":"Door Open"},"status":"false","voiceNote":"Please close door 2","SectionSKU":{"Header":"Pick the below items from the door","skus":[{"qty":1,"name":"Maaza Tetra 135ml"}]}}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 11:50:32,874.874 INFO    ] {'response': {'status': True, 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'data': 'order updated successfully'}, 'data': {'order_id': 'TM08202202260831114637009', 'server_status': 'OrderStatus', 'server_response': {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'status': 'false', 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': []}, 'SectionMain': {'Header': 'Door Open'}, 'rstatus': False, 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}}}
[2026-08-31 11:50:32,878.878 INFO    ] {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}
[2026-08-31 11:50:35,973.973 INFO    ] 200
[2026-08-31 11:50:35,976.976 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 11:50:35,980.980 INFO    ] {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}
[2026-08-31 11:50:39,037.037 INFO    ] 200
[2026-08-31 11:50:39,040.040 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 11:50:39,043.043 INFO    ] {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}
[2026-08-31 11:50:42,131.131 INFO    ] 200
[2026-08-31 11:50:42,134.134 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 11:50:42,138.138 INFO    ] Please close door 2
[2026-08-31 11:50:42,140.140 INFO    ] Please close door 2
[2026-08-31 11:50:42,143.143 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-08-31 11:50:42,146.146 INFO    ] 2026-08-31 11:50:42
[2026-08-31 11:50:42,149.149 INFO    ] playing audio file
[2026-08-31 11:50:42,168.168 INFO    ] 2026-08-31 11:50:42
[2026-08-31 11:50:42,172.172 INFO    ] publish_status: order_id=TM08202202260831114637009
[2026-08-31 11:50:42,175.175 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831114637009
[2026-08-31 11:50:42,297.297 INFO    ] [publish_status] Message added to stream with ID: 1788157242249-0
[2026-08-31 11:50:42,300.300 INFO    ] Published to order:TM08202202260831114637009: {'order_id': 'TM08202202260831114637009', 'timestamp': '2026-08-31T06:20:42.170730Z', 'server_status': 'OrderStatus', 'server_response': '{"SectionStatus": {"Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\\nIS \\nOPEN \\nNOW", "SubHeader": "Please Pick the Products and close the door"}, "rstatus": false, "error": {"tmessage": "In Progress", "code": 20001, "umessage": "In Progress", "data": {}}, "SectionMain": {"Header": "Door Open"}, "status": "False", "voiceNote": "Please close door 2", "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}]}}'} (ID: 1788157242249-0)
[2026-08-31 11:50:42,966.966 INFO    ] {'order_id': 'TM08202202260831114637009', 'server_status': 'OrderStatus', 'server_response': {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}}
[2026-08-31 11:50:42,971.971 INFO    ] 200
[2026-08-31 11:50:42,975.975 INFO    ] {"data":{"order_id":"TM08202202260831114637009","server_status":"OrderStatus","server_response":{"SectionStatus":{"Header":"Please Close Door 2","Note":"Please Close the door after picking up products","UI_Header":"DOOR 2\nIS \nOPEN \nNOW","SubHeader":"Please Pick the Products and close the door"},"rstatus":false,"error":{"tmessage":"In Progress","code":20001,"umessage":"In Progress","data":[]},"SectionMain":{"Header":"Door Open"},"status":"false","voiceNote":"Please close door 2","SectionSKU":{"Header":"Pick the below items from the door","skus":[{"qty":1,"name":"Maaza Tetra 135ml"}]}}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 11:50:42,979.979 INFO    ] {'response': {'status': True, 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'data': 'order updated successfully'}, 'data': {'order_id': 'TM08202202260831114637009', 'server_status': 'OrderStatus', 'server_response': {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'status': 'false', 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': []}, 'SectionMain': {'Header': 'Door Open'}, 'rstatus': False, 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}}}
[2026-08-31 11:50:42,983.983 INFO    ] {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}
[2026-08-31 11:50:46,132.132 INFO    ] 200
[2026-08-31 11:50:46,136.136 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 11:50:46,142.142 INFO    ] {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}
[2026-08-31 11:50:49,203.203 INFO    ] 200
[2026-08-31 11:50:49,207.207 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 11:50:49,211.211 INFO    ] {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}
[2026-08-31 11:50:52,283.283 INFO    ] 200
[2026-08-31 11:50:52,287.287 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 11:50:52,291.291 INFO    ] Please close door 2
[2026-08-31 11:50:52,294.294 INFO    ] Please close door 2
[2026-08-31 11:50:52,297.297 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-08-31 11:50:52,301.301 INFO    ] 2026-08-31 11:50:52
[2026-08-31 11:50:52,304.304 INFO    ] playing audio file
[2026-08-31 11:50:52,328.328 INFO    ] 2026-08-31 11:50:52
[2026-08-31 11:50:52,333.333 INFO    ] publish_status: order_id=TM08202202260831114637009
[2026-08-31 11:50:52,336.336 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831114637009
[2026-08-31 11:50:52,421.421 INFO    ] [publish_status] Message added to stream with ID: 1788157252385-0
[2026-08-31 11:50:52,424.424 INFO    ] Published to order:TM08202202260831114637009: {'order_id': 'TM08202202260831114637009', 'timestamp': '2026-08-31T06:20:52.330346Z', 'server_status': 'OrderStatus', 'server_response': '{"SectionStatus": {"Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\\nIS \\nOPEN \\nNOW", "SubHeader": "Please Pick the Products and close the door"}, "rstatus": false, "error": {"tmessage": "In Progress", "code": 20001, "umessage": "In Progress", "data": {}}, "SectionMain": {"Header": "Door Open"}, "status": "False", "voiceNote": "Please close door 2", "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}]}}'} (ID: 1788157252385-0)
[2026-08-31 11:50:53,118.118 INFO    ] {'order_id': 'TM08202202260831114637009', 'server_status': 'OrderStatus', 'server_response': {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}}
[2026-08-31 11:50:53,122.122 INFO    ] 200
[2026-08-31 11:50:53,125.125 INFO    ] {"data":{"order_id":"TM08202202260831114637009","server_status":"OrderStatus","server_response":{"SectionStatus":{"Header":"Please Close Door 2","Note":"Please Close the door after picking up products","UI_Header":"DOOR 2\nIS \nOPEN \nNOW","SubHeader":"Please Pick the Products and close the door"},"rstatus":false,"error":{"tmessage":"In Progress","code":20001,"umessage":"In Progress","data":[]},"SectionMain":{"Header":"Door Open"},"status":"false","voiceNote":"Please close door 2","SectionSKU":{"Header":"Pick the below items from the door","skus":[{"qty":1,"name":"Maaza Tetra 135ml"}]}}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 11:50:53,129.129 INFO    ] {'response': {'status': True, 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'data': 'order updated successfully'}, 'data': {'order_id': 'TM08202202260831114637009', 'server_status': 'OrderStatus', 'server_response': {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'status': 'false', 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': []}, 'SectionMain': {'Header': 'Door Open'}, 'rstatus': False, 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}}}
[2026-08-31 11:50:53,133.133 INFO    ] {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}
[2026-08-31 11:50:56,296.296 INFO    ] 200
[2026-08-31 11:50:56,299.299 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 11:50:56,302.302 INFO    ] {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}
[2026-08-31 11:50:59,423.423 INFO    ] 200
[2026-08-31 11:50:59,426.426 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 11:50:59,430.430 INFO    ] {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}
[2026-08-31 11:51:02,486.486 INFO    ] 200
[2026-08-31 11:51:02,489.489 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 11:51:02,492.492 INFO    ] Please close door 2
[2026-08-31 11:51:02,495.495 INFO    ] Please close door 2
[2026-08-31 11:51:02,498.498 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-08-31 11:51:02,501.501 INFO    ] 2026-08-31 11:51:02
[2026-08-31 11:51:02,504.504 INFO    ] playing audio file
[2026-08-31 11:51:02,540.540 INFO    ] 2026-08-31 11:51:02
[2026-08-31 11:51:02,545.545 INFO    ] publish_status: order_id=TM08202202260831114637009
[2026-08-31 11:51:02,560.560 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831114637009
[2026-08-31 11:51:02,679.679 INFO    ] [publish_status] Message added to stream with ID: 1788157262647-0
[2026-08-31 11:51:02,691.691 INFO    ] Published to order:TM08202202260831114637009: {'order_id': 'TM08202202260831114637009', 'timestamp': '2026-08-31T06:21:02.541884Z', 'server_status': 'OrderStatus', 'server_response': '{"SectionStatus": {"Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\\nIS \\nOPEN \\nNOW", "SubHeader": "Please Pick the Products and close the door"}, "rstatus": false, "error": {"tmessage": "In Progress", "code": 20001, "umessage": "In Progress", "data": {}}, "SectionMain": {"Header": "Door Open"}, "status": "False", "voiceNote": "Please close door 2", "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}]}}'} (ID: 1788157262647-0)
[2026-08-31 11:51:03,391.391 INFO    ] {'order_id': 'TM08202202260831114637009', 'server_status': 'OrderStatus', 'server_response': {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}}
[2026-08-31 11:51:03,394.394 INFO    ] 200
[2026-08-31 11:51:03,397.397 INFO    ] {"data":{"order_id":"TM08202202260831114637009","server_status":"OrderStatus","server_response":{"SectionStatus":{"Header":"Please Close Door 2","Note":"Please Close the door after picking up products","UI_Header":"DOOR 2\nIS \nOPEN \nNOW","SubHeader":"Please Pick the Products and close the door"},"rstatus":false,"error":{"tmessage":"In Progress","code":20001,"umessage":"In Progress","data":[]},"SectionMain":{"Header":"Door Open"},"status":"false","voiceNote":"Please close door 2","SectionSKU":{"Header":"Pick the below items from the door","skus":[{"qty":1,"name":"Maaza Tetra 135ml"}]}}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 11:51:03,406.406 INFO    ] {'response': {'status': True, 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'data': 'order updated successfully'}, 'data': {'order_id': 'TM08202202260831114637009', 'server_status': 'OrderStatus', 'server_response': {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'status': 'false', 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': []}, 'SectionMain': {'Header': 'Door Open'}, 'rstatus': False, 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}}}
[2026-08-31 11:51:03,413.413 INFO    ] {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}
[2026-08-31 11:51:06,463.463 INFO    ] 200
[2026-08-31 11:51:06,465.465 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 11:51:06,468.468 INFO    ] {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}
[2026-08-31 11:51:09,581.581 INFO    ] 200
[2026-08-31 11:51:09,584.584 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 11:51:09,587.587 INFO    ] {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}
[2026-08-31 11:51:12,663.663 INFO    ] 200
[2026-08-31 11:51:12,666.666 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 11:51:12,669.669 INFO    ] Please close door 2
[2026-08-31 11:51:12,672.672 INFO    ] Please close door 2
[2026-08-31 11:51:12,674.674 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-08-31 11:51:12,677.677 INFO    ] 2026-08-31 11:51:12
[2026-08-31 11:51:12,680.680 INFO    ] playing audio file
[2026-08-31 11:51:12,699.699 INFO    ] 2026-08-31 11:51:12
[2026-08-31 11:51:12,702.702 INFO    ] publish_status: order_id=TM08202202260831114637009
[2026-08-31 11:51:12,705.705 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831114637009
[2026-08-31 11:51:12,789.789 INFO    ] [publish_status] Message added to stream with ID: 1788157272760-0
[2026-08-31 11:51:12,792.792 INFO    ] Published to order:TM08202202260831114637009: {'order_id': 'TM08202202260831114637009', 'timestamp': '2026-08-31T06:21:12.701023Z', 'server_status': 'OrderStatus', 'server_response': '{"SectionStatus": {"Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\\nIS \\nOPEN \\nNOW", "SubHeader": "Please Pick the Products and close the door"}, "rstatus": false, "error": {"tmessage": "In Progress", "code": 20001, "umessage": "In Progress", "data": {}}, "SectionMain": {"Header": "Door Open"}, "status": "False", "voiceNote": "Please close door 2", "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}]}}'} (ID: 1788157272760-0)
[2026-08-31 11:51:13,428.428 INFO    ] {'order_id': 'TM08202202260831114637009', 'server_status': 'OrderStatus', 'server_response': {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}}
[2026-08-31 11:51:13,430.430 INFO    ] 200
[2026-08-31 11:51:13,433.433 INFO    ] {"data":{"order_id":"TM08202202260831114637009","server_status":"OrderStatus","server_response":{"SectionStatus":{"Header":"Please Close Door 2","Note":"Please Close the door after picking up products","UI_Header":"DOOR 2\nIS \nOPEN \nNOW","SubHeader":"Please Pick the Products and close the door"},"rstatus":false,"error":{"tmessage":"In Progress","code":20001,"umessage":"In Progress","data":[]},"SectionMain":{"Header":"Door Open"},"status":"false","voiceNote":"Please close door 2","SectionSKU":{"Header":"Pick the below items from the door","skus":[{"qty":1,"name":"Maaza Tetra 135ml"}]}}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 11:51:13,436.436 INFO    ] {'response': {'status': True, 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'data': 'order updated successfully'}, 'data': {'order_id': 'TM08202202260831114637009', 'server_status': 'OrderStatus', 'server_response': {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'status': 'false', 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': []}, 'SectionMain': {'Header': 'Door Open'}, 'rstatus': False, 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}}}
[2026-08-31 11:51:13,438.438 INFO    ] {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}
[2026-08-31 11:51:16,618.618 INFO    ] 200
[2026-08-31 11:51:17,077.077 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 11:51:17,081.081 INFO    ] {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}
[2026-08-31 11:51:20,153.153 INFO    ] 200
[2026-08-31 11:51:20,156.156 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 11:51:20,160.160 INFO    ] {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}
[2026-08-31 11:51:23,295.295 INFO    ] 200
[2026-08-31 11:51:23,299.299 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 11:51:23,302.302 INFO    ] Please close door 2
[2026-08-31 11:51:23,305.305 INFO    ] Please close door 2
[2026-08-31 11:51:23,309.309 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-08-31 11:51:23,312.312 INFO    ] 2026-08-31 11:51:23
[2026-08-31 11:51:23,315.315 INFO    ] playing audio file
[2026-08-31 11:51:23,333.333 INFO    ] 2026-08-31 11:51:23
[2026-08-31 11:51:23,338.338 INFO    ] publish_status: order_id=TM08202202260831114637009
[2026-08-31 11:51:23,342.342 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831114637009
[2026-08-31 11:51:23,423.423 INFO    ] [publish_status] Message added to stream with ID: 1788157283391-0
[2026-08-31 11:51:23,427.427 INFO    ] Published to order:TM08202202260831114637009: {'order_id': 'TM08202202260831114637009', 'timestamp': '2026-08-31T06:21:23.335568Z', 'server_status': 'OrderStatus', 'server_response': '{"SectionStatus": {"Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\\nIS \\nOPEN \\nNOW", "SubHeader": "Please Pick the Products and close the door"}, "rstatus": false, "error": {"tmessage": "In Progress", "code": 20001, "umessage": "In Progress", "data": {}}, "SectionMain": {"Header": "Door Open"}, "status": "False", "voiceNote": "Please close door 2", "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}]}}'} (ID: 1788157283391-0)
[2026-08-31 11:51:24,103.103 INFO    ] {'order_id': 'TM08202202260831114637009', 'server_status': 'OrderStatus', 'server_response': {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}}
[2026-08-31 11:51:24,105.105 INFO    ] 200
[2026-08-31 11:51:24,108.108 INFO    ] {"data":{"order_id":"TM08202202260831114637009","server_status":"OrderStatus","server_response":{"SectionStatus":{"Header":"Please Close Door 2","Note":"Please Close the door after picking up products","UI_Header":"DOOR 2\nIS \nOPEN \nNOW","SubHeader":"Please Pick the Products and close the door"},"rstatus":false,"error":{"tmessage":"In Progress","code":20001,"umessage":"In Progress","data":[]},"SectionMain":{"Header":"Door Open"},"status":"false","voiceNote":"Please close door 2","SectionSKU":{"Header":"Pick the below items from the door","skus":[{"qty":1,"name":"Maaza Tetra 135ml"}]}}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 11:51:24,111.111 INFO    ] {'response': {'status': True, 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'data': 'order updated successfully'}, 'data': {'order_id': 'TM08202202260831114637009', 'server_status': 'OrderStatus', 'server_response': {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'status': 'false', 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': []}, 'SectionMain': {'Header': 'Door Open'}, 'rstatus': False, 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}}}
[2026-08-31 11:51:24,114.114 INFO    ] {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}
[2026-08-31 11:51:27,243.243 INFO    ] 200
[2026-08-31 11:51:27,246.246 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 11:51:27,249.249 INFO    ] {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}
[2026-08-31 11:51:30,300.300 INFO    ] 200
[2026-08-31 11:51:30,302.302 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 11:51:30,305.305 INFO    ] {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}
[2026-08-31 11:51:33,389.389 INFO    ] 200
[2026-08-31 11:51:33,391.391 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 11:51:33,395.395 INFO    ] Please close door 2
[2026-08-31 11:51:33,397.397 INFO    ] Please close door 2
[2026-08-31 11:51:33,400.400 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-08-31 11:51:33,403.403 INFO    ] 2026-08-31 11:51:33
[2026-08-31 11:51:33,406.406 INFO    ] playing audio file
[2026-08-31 11:51:33,426.426 INFO    ] 2026-08-31 11:51:33
[2026-08-31 11:51:33,430.430 INFO    ] publish_status: order_id=TM08202202260831114637009
[2026-08-31 11:51:33,433.433 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831114637009
[2026-08-31 11:51:33,522.522 INFO    ] [publish_status] Message added to stream with ID: 1788157293484-0
[2026-08-31 11:51:33,525.525 INFO    ] Published to order:TM08202202260831114637009: {'order_id': 'TM08202202260831114637009', 'timestamp': '2026-08-31T06:21:33.428493Z', 'server_status': 'OrderStatus', 'server_response': '{"SectionStatus": {"Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\\nIS \\nOPEN \\nNOW", "SubHeader": "Please Pick the Products and close the door"}, "rstatus": false, "error": {"tmessage": "In Progress", "code": 20001, "umessage": "In Progress", "data": {}}, "SectionMain": {"Header": "Door Open"}, "status": "False", "voiceNote": "Please close door 2", "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}]}}'} (ID: 1788157293484-0)
[2026-08-31 11:51:34,150.150 INFO    ] {'order_id': 'TM08202202260831114637009', 'server_status': 'OrderStatus', 'server_response': {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}}
[2026-08-31 11:51:34,153.153 INFO    ] 200
[2026-08-31 11:51:34,156.156 INFO    ] {"data":{"order_id":"TM08202202260831114637009","server_status":"OrderStatus","server_response":{"SectionStatus":{"Header":"Please Close Door 2","Note":"Please Close the door after picking up products","UI_Header":"DOOR 2\nIS \nOPEN \nNOW","SubHeader":"Please Pick the Products and close the door"},"rstatus":false,"error":{"tmessage":"In Progress","code":20001,"umessage":"In Progress","data":[]},"SectionMain":{"Header":"Door Open"},"status":"false","voiceNote":"Please close door 2","SectionSKU":{"Header":"Pick the below items from the door","skus":[{"qty":1,"name":"Maaza Tetra 135ml"}]}}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 11:51:34,159.159 INFO    ] {'response': {'status': True, 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'data': 'order updated successfully'}, 'data': {'order_id': 'TM08202202260831114637009', 'server_status': 'OrderStatus', 'server_response': {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'status': 'false', 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': []}, 'SectionMain': {'Header': 'Door Open'}, 'rstatus': False, 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}}}
[2026-08-31 11:51:34,163.163 INFO    ] {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}
[2026-08-31 11:51:37,256.256 INFO    ] 200
[2026-08-31 11:51:37,259.259 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 11:51:37,262.262 INFO    ] {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}
[2026-08-31 11:51:40,325.325 INFO    ] 200
[2026-08-31 11:51:40,328.328 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 11:51:40,331.331 INFO    ] {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}
[2026-08-31 11:51:43,411.411 INFO    ] 200
[2026-08-31 11:51:43,414.414 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 11:51:43,417.417 INFO    ] Please close door 2
[2026-08-31 11:51:43,420.420 INFO    ] Please close door 2
[2026-08-31 11:51:43,422.422 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-08-31 11:51:43,425.425 INFO    ] 2026-08-31 11:51:43
[2026-08-31 11:51:43,428.428 INFO    ] playing audio file
[2026-08-31 11:51:43,446.446 INFO    ] 2026-08-31 11:51:43
[2026-08-31 11:51:43,450.450 INFO    ] publish_status: order_id=TM08202202260831114637009
[2026-08-31 11:51:43,453.453 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831114637009
[2026-08-31 11:51:43,551.551 INFO    ] [publish_status] Message added to stream with ID: 1788157303521-0
[2026-08-31 11:51:43,554.554 INFO    ] Published to order:TM08202202260831114637009: {'order_id': 'TM08202202260831114637009', 'timestamp': '2026-08-31T06:21:43.448850Z', 'server_status': 'OrderStatus', 'server_response': '{"SectionStatus": {"Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\\nIS \\nOPEN \\nNOW", "SubHeader": "Please Pick the Products and close the door"}, "rstatus": false, "error": {"tmessage": "In Progress", "code": 20001, "umessage": "In Progress", "data": {}}, "SectionMain": {"Header": "Door Open"}, "status": "False", "voiceNote": "Please close door 2", "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}]}}'} (ID: 1788157303521-0)
[2026-08-31 11:51:44,144.144 INFO    ] {'order_id': 'TM08202202260831114637009', 'server_status': 'OrderStatus', 'server_response': {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}}
[2026-08-31 11:51:44,147.147 INFO    ] 200
[2026-08-31 11:51:44,150.150 INFO    ] {"data":{"order_id":"TM08202202260831114637009","server_status":"OrderStatus","server_response":{"SectionStatus":{"Header":"Please Close Door 2","Note":"Please Close the door after picking up products","UI_Header":"DOOR 2\nIS \nOPEN \nNOW","SubHeader":"Please Pick the Products and close the door"},"rstatus":false,"error":{"tmessage":"In Progress","code":20001,"umessage":"In Progress","data":[]},"SectionMain":{"Header":"Door Open"},"status":"false","voiceNote":"Please close door 2","SectionSKU":{"Header":"Pick the below items from the door","skus":[{"qty":1,"name":"Maaza Tetra 135ml"}]}}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 11:51:44,153.153 INFO    ] {'response': {'status': True, 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'data': 'order updated successfully'}, 'data': {'order_id': 'TM08202202260831114637009', 'server_status': 'OrderStatus', 'server_response': {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'status': 'false', 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': []}, 'SectionMain': {'Header': 'Door Open'}, 'rstatus': False, 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}}}
[2026-08-31 11:51:44,156.156 INFO    ] {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}
[2026-08-31 11:51:47,203.203 INFO    ] 200
[2026-08-31 11:51:47,205.205 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 11:51:47,208.208 INFO    ] {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}
[2026-08-31 11:51:50,334.334 INFO    ] 200
[2026-08-31 11:51:50,338.338 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 11:51:50,341.341 INFO    ] {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}
[2026-08-31 11:51:53,424.424 INFO    ] 200
[2026-08-31 11:51:53,427.427 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 11:51:53,430.430 INFO    ] Please close door 2
[2026-08-31 11:51:53,433.433 INFO    ] Please close door 2
[2026-08-31 11:51:53,436.436 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-08-31 11:51:53,439.439 INFO    ] 2026-08-31 11:51:53
[2026-08-31 11:51:53,441.441 INFO    ] playing audio file
[2026-08-31 11:51:53,460.460 INFO    ] 2026-08-31 11:51:53
[2026-08-31 11:51:53,463.463 INFO    ] publish_status: order_id=TM08202202260831114637009
[2026-08-31 11:51:53,466.466 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831114637009
[2026-08-31 11:51:53,548.548 INFO    ] [publish_status] Message added to stream with ID: 1788157313516-0
[2026-08-31 11:51:53,551.551 INFO    ] Published to order:TM08202202260831114637009: {'order_id': 'TM08202202260831114637009', 'timestamp': '2026-08-31T06:21:53.462051Z', 'server_status': 'OrderStatus', 'server_response': '{"SectionStatus": {"Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\\nIS \\nOPEN \\nNOW", "SubHeader": "Please Pick the Products and close the door"}, "rstatus": false, "error": {"tmessage": "In Progress", "code": 20001, "umessage": "In Progress", "data": {}}, "SectionMain": {"Header": "Door Open"}, "status": "False", "voiceNote": "Please close door 2", "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}]}}'} (ID: 1788157313516-0)
[2026-08-31 11:51:54,200.200 INFO    ] {'order_id': 'TM08202202260831114637009', 'server_status': 'OrderStatus', 'server_response': {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}}
[2026-08-31 11:51:54,203.203 INFO    ] 200
[2026-08-31 11:51:54,205.205 INFO    ] {"data":{"order_id":"TM08202202260831114637009","server_status":"OrderStatus","server_response":{"SectionStatus":{"Header":"Please Close Door 2","Note":"Please Close the door after picking up products","UI_Header":"DOOR 2\nIS \nOPEN \nNOW","SubHeader":"Please Pick the Products and close the door"},"rstatus":false,"error":{"tmessage":"In Progress","code":20001,"umessage":"In Progress","data":[]},"SectionMain":{"Header":"Door Open"},"status":"false","voiceNote":"Please close door 2","SectionSKU":{"Header":"Pick the below items from the door","skus":[{"qty":1,"name":"Maaza Tetra 135ml"}]}}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 11:51:54,209.209 INFO    ] {'response': {'status': True, 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'data': 'order updated successfully'}, 'data': {'order_id': 'TM08202202260831114637009', 'server_status': 'OrderStatus', 'server_response': {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'status': 'false', 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': []}, 'SectionMain': {'Header': 'Door Open'}, 'rstatus': False, 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}}}
[2026-08-31 11:51:54,212.212 INFO    ] {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}
[2026-08-31 11:51:57,364.364 INFO    ] 200
[2026-08-31 11:51:57,367.367 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 11:51:57,370.370 INFO    ] {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}
[2026-08-31 11:52:00,465.465 INFO    ] 200
[2026-08-31 11:52:00,468.468 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 11:52:00,471.471 INFO    ] {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}
[2026-08-31 11:52:03,540.540 INFO    ] 200
[2026-08-31 11:52:03,542.542 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 11:52:03,545.545 INFO    ] Please close door 2
[2026-08-31 11:52:03,548.548 INFO    ] Please close door 2
[2026-08-31 11:52:03,551.551 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-08-31 11:52:03,554.554 INFO    ] 2026-08-31 11:52:03
[2026-08-31 11:52:03,557.557 INFO    ] playing audio file
[2026-08-31 11:52:03,576.576 INFO    ] 2026-08-31 11:52:03
[2026-08-31 11:52:03,580.580 INFO    ] publish_status: order_id=TM08202202260831114637009
[2026-08-31 11:52:03,583.583 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831114637009
[2026-08-31 11:52:03,672.672 INFO    ] [publish_status] Message added to stream with ID: 1788157323641-0
[2026-08-31 11:52:03,674.674 INFO    ] Published to order:TM08202202260831114637009: {'order_id': 'TM08202202260831114637009', 'timestamp': '2026-08-31T06:22:03.578996Z', 'server_status': 'OrderStatus', 'server_response': '{"SectionStatus": {"Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\\nIS \\nOPEN \\nNOW", "SubHeader": "Please Pick the Products and close the door"}, "rstatus": false, "error": {"tmessage": "In Progress", "code": 20001, "umessage": "In Progress", "data": {}}, "SectionMain": {"Header": "Door Open"}, "status": "False", "voiceNote": "Please close door 2", "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}]}}'} (ID: 1788157323641-0)
[2026-08-31 11:52:04,320.320 INFO    ] {'order_id': 'TM08202202260831114637009', 'server_status': 'OrderStatus', 'server_response': {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}}
[2026-08-31 11:52:04,322.322 INFO    ] 200
[2026-08-31 11:52:04,325.325 INFO    ] {"data":{"order_id":"TM08202202260831114637009","server_status":"OrderStatus","server_response":{"SectionStatus":{"Header":"Please Close Door 2","Note":"Please Close the door after picking up products","UI_Header":"DOOR 2\nIS \nOPEN \nNOW","SubHeader":"Please Pick the Products and close the door"},"rstatus":false,"error":{"tmessage":"In Progress","code":20001,"umessage":"In Progress","data":[]},"SectionMain":{"Header":"Door Open"},"status":"false","voiceNote":"Please close door 2","SectionSKU":{"Header":"Pick the below items from the door","skus":[{"qty":1,"name":"Maaza Tetra 135ml"}]}}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 11:52:04,328.328 INFO    ] {'response': {'status': True, 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'data': 'order updated successfully'}, 'data': {'order_id': 'TM08202202260831114637009', 'server_status': 'OrderStatus', 'server_response': {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'status': 'false', 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': []}, 'SectionMain': {'Header': 'Door Open'}, 'rstatus': False, 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}}}
[2026-08-31 11:52:04,331.331 INFO    ] {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}
[2026-08-31 11:52:07,415.415 INFO    ] 200
[2026-08-31 11:52:07,418.418 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 11:52:07,421.421 INFO    ] {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}
[2026-08-31 11:52:10,476.476 INFO    ] 200
[2026-08-31 11:52:10,478.478 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 11:52:10,481.481 INFO    ] {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}
[2026-08-31 11:52:13,545.545 INFO    ] 200
[2026-08-31 11:52:13,548.548 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 11:52:13,551.551 INFO    ] Please close door 2
[2026-08-31 11:52:13,554.554 INFO    ] Please close door 2
[2026-08-31 11:52:13,556.556 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-08-31 11:52:13,559.559 INFO    ] 2026-08-31 11:52:13
[2026-08-31 11:52:13,561.561 INFO    ] playing audio file
[2026-08-31 11:52:13,578.578 INFO    ] 2026-08-31 11:52:13
[2026-08-31 11:52:13,582.582 INFO    ] publish_status: order_id=TM08202202260831114637009
[2026-08-31 11:52:13,585.585 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831114637009
[2026-08-31 11:52:13,683.683 INFO    ] [publish_status] Message added to stream with ID: 1788157333650-0
[2026-08-31 11:52:13,686.686 INFO    ] Published to order:TM08202202260831114637009: {'order_id': 'TM08202202260831114637009', 'timestamp': '2026-08-31T06:22:13.580774Z', 'server_status': 'OrderStatus', 'server_response': '{"SectionStatus": {"Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\\nIS \\nOPEN \\nNOW", "SubHeader": "Please Pick the Products and close the door"}, "rstatus": false, "error": {"tmessage": "In Progress", "code": 20001, "umessage": "In Progress", "data": {}}, "SectionMain": {"Header": "Door Open"}, "status": "False", "voiceNote": "Please close door 2", "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}]}}'} (ID: 1788157333650-0)
[2026-08-31 11:52:14,324.324 INFO    ] {'order_id': 'TM08202202260831114637009', 'server_status': 'OrderStatus', 'server_response': {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}}
[2026-08-31 11:52:14,327.327 INFO    ] 200
[2026-08-31 11:52:14,329.329 INFO    ] {"data":{"order_id":"TM08202202260831114637009","server_status":"OrderStatus","server_response":{"SectionStatus":{"Header":"Please Close Door 2","Note":"Please Close the door after picking up products","UI_Header":"DOOR 2\nIS \nOPEN \nNOW","SubHeader":"Please Pick the Products and close the door"},"rstatus":false,"error":{"tmessage":"In Progress","code":20001,"umessage":"In Progress","data":[]},"SectionMain":{"Header":"Door Open"},"status":"false","voiceNote":"Please close door 2","SectionSKU":{"Header":"Pick the below items from the door","skus":[{"qty":1,"name":"Maaza Tetra 135ml"}]}}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 11:52:14,333.333 INFO    ] {'response': {'status': True, 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'data': 'order updated successfully'}, 'data': {'order_id': 'TM08202202260831114637009', 'server_status': 'OrderStatus', 'server_response': {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'status': 'false', 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': []}, 'SectionMain': {'Header': 'Door Open'}, 'rstatus': False, 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}}}
[2026-08-31 11:52:14,336.336 INFO    ] {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}
[2026-08-31 11:52:17,400.400 INFO    ] 200
[2026-08-31 11:52:17,403.403 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 11:52:17,406.406 INFO    ] {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}
[2026-08-31 11:52:20,502.502 INFO    ] 200
[2026-08-31 11:52:20,505.505 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "Maaza Tetra 135ml"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 11:52:20,508.508 INFO    ] {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maaza Tetra 135ml'}]}}
[2026-08-31 11:52:23,568.568 INFO    ] 200
[2026-08-31 11:52:23,571.571 INFO    ] {"SectionSKU": {"skus": [], "Header": "If you like us, tell others... else tell us"}, "voiceNote": "Transaction Completed", "SectionMain": {"Header": "Door Closed"}, "SectionStatus": {"Note": "If any due amount, clear at https://go.tinymart.in", "UI_Header": "", "SubHeader": "Please wait for invoice to generate", "Header": " Order is complete "}, "delay": 100, "status": "True", "rstatus": true}
[2026-08-31 11:52:23,574.574 INFO    ] publish_status: order_id=TM08202202260831114637009
[2026-08-31 11:52:23,577.577 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831114637009
[2026-08-31 11:52:23,667.667 INFO    ] [publish_status] Message added to stream with ID: 1788157343636-0
[2026-08-31 11:52:23,670.670 INFO    ] Published to order:TM08202202260831114637009: {'order_id': 'TM08202202260831114637009', 'timestamp': '2026-08-31T06:22:23.573123Z', 'server_status': 'OrderStatus', 'server_response': '{"SectionStatus": {"Header": " Order is complete ", "Note": "If any due amount, clear at https://go.tinymart.in", "UI_Header": "", "SubHeader": "Please wait for invoice to generate"}, "rstatus": true, "SectionSKU": {"Header": "If you like us, tell others... else tell us", "skus": []}, "SectionMain": {"Header": "Door Closed"}, "status": "True", "voiceNote": "Transaction Completed", "delay": 100}'} (ID: 1788157343636-0)
[2026-08-31 11:52:24,277.277 INFO    ] {'order_id': 'TM08202202260831114637009', 'server_status': 'OrderStatus', 'server_response': {'SectionStatus': {'Header': ' Order is complete ', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'UI_Header': '', 'SubHeader': 'Please wait for invoice to generate'}, 'rstatus': True, 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'SectionMain': {'Header': 'Door Closed'}, 'status': 'True', 'voiceNote': 'Transaction Completed', 'delay': 100}}
[2026-08-31 11:52:24,280.280 INFO    ] 200
[2026-08-31 11:52:24,283.283 INFO    ] {"data":{"order_id":"TM08202202260831114637009","server_status":"OrderStatus","server_response":{"SectionStatus":{"Header":" Order is complete ","Note":"If any due amount, clear at https:\/\/go.tinymart.in","UI_Header":"","SubHeader":"Please wait for invoice to generate"},"rstatus":true,"SectionSKU":{"Header":"If you like us, tell others... else tell us","skus":[]},"SectionMain":{"Header":"Door Closed"},"status":"true","voiceNote":"Transaction Completed","delay":100}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 11:52:24,286.286 INFO    ] {'response': {'status': True, 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'data': 'order updated successfully'}, 'data': {'order_id': 'TM08202202260831114637009', 'server_status': 'OrderStatus', 'server_response': {'SectionStatus': {'Header': ' Order is complete ', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'UI_Header': '', 'SubHeader': 'Please wait for invoice to generate'}, 'status': 'true', 'delay': 100, 'SectionMain': {'Header': 'Door Closed'}, 'rstatus': True, 'voiceNote': 'Transaction Completed', 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}}}}
[2026-08-31 11:52:24,289.289 INFO    ] {'SectionStatus': {'Header': ' Order is complete ', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'UI_Header': '', 'SubHeader': 'Please wait for invoice to generate'}, 'rstatus': True, 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'SectionMain': {'Header': 'Door Closed'}, 'status': 'True', 'voiceNote': 'Transaction Completed', 'delay': 100}
[2026-08-31 11:52:24,292.292 INFO    ] 2026-08-31 11:52:24
[2026-08-31 11:52:24,294.294 INFO    ] Order Completed 
[2026-08-31 11:52:24,297.297 INFO    ] Order Completed 
[2026-08-31 11:52:24,299.299 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-08-31 11:52:24,302.302 INFO    ] 2026-08-31 11:52:24
[2026-08-31 11:52:24,305.305 INFO    ] playing audio file
[2026-08-31 11:52:24,322.322 INFO    ] 2026-08-31 11:52:24
[2026-08-31 11:52:24,326.326 INFO    ] {'SectionStatus': {'Header': ' Order is complete ', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'UI_Header': '', 'SubHeader': 'Please wait for invoice to generate'}, 'rstatus': True, 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'SectionMain': {'Header': 'Door Closed'}, 'status': 'True', 'voiceNote': 'Transaction Completed', 'delay': 100}
[2026-08-31 11:52:24,329.329 INFO    ] 2026-08-31 11:52:24
[2026-08-31 11:52:24,851.851 INFO    ] 200
[2026-08-31 11:52:24,855.855 INFO    ] {"skus": [], "anomaly": 3, "orderId": "TM08202202260831114637009", "res": "True", "logic": "WBL", "total_amount": 0, "rstatus": true}
[2026-08-31 11:52:24,858.858 INFO    ] {'orderId': 'TM08202202260831114637009', 'anomaly': 3, 'res': 'True', 'rstatus': True, 'logic': 'WBL', 'total_amount': 0, 'skus': []}
[2026-08-31 11:52:24,861.861 INFO    ] {'orderId': 'TM08202202260831114637009', 'anomaly': 3, 'res': 'True', 'rstatus': True, 'logic': 'WBL', 'total_amount': 0, 'skus': []}
[2026-08-31 11:52:24,864.864 INFO    ] 2026-08-31 11:52:24
[2026-08-31 11:52:24,866.866 INFO    ] 2026-08-31 11:52:24
[2026-08-31 11:52:24,869.869 INFO    ] 10
[2026-08-31 11:52:24,872.872 INFO    ] 2026-08-31 11:52:24
[2026-08-31 11:52:24,874.874 INFO    ] 2026-08-31 11:52:24
[2026-08-31 11:52:24,877.877 INFO    ] Items Miss placed Your Bill Amount is 0
[2026-08-31 11:52:24,880.880 INFO    ] Items Miss placed Your Bill Amount is 0
[2026-08-31 11:52:24,883.883 INFO    ] 08154cb661aec67c072cbedd72f7c603
[2026-08-31 11:52:24,886.886 INFO    ] 2026-08-31 11:52:24
[2026-08-31 11:52:24,889.889 INFO    ] playing audio file
[2026-08-31 11:52:24,907.907 INFO    ] 2026-08-31 11:52:24
[2026-08-31 11:52:24,910.910 INFO    ] 2026-08-31 11:52:24
[2026-08-31 11:52:24,914.914 INFO    ] publish_status: order_id=TM08202202260831114637009
[2026-08-31 11:52:24,917.917 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831114637009
[2026-08-31 11:52:25,017.017 INFO    ] [publish_status] Message added to stream with ID: 1788157344983-0
[2026-08-31 11:52:25,020.020 INFO    ] Published to order:TM08202202260831114637009: {'order_id': 'TM08202202260831114637009', 'timestamp': '2026-08-31T06:22:24.912204Z', 'server_status': 'invoiceOrder', 'server_response': '{"orderId": "TM08202202260831114637009", "anomaly": 3, "res": "True", "rstatus": true, "logic": "WBL", "total_amount": 0, "skus": []}'} (ID: 1788157344983-0)
[2026-08-31 11:52:25,222.222 INFO    ] {'order_id': 'TM08202202260831114637009', 'server_status': 'invoiceOrder', 'server_response': {'orderId': 'TM08202202260831114637009', 'anomaly': 3, 'res': 'True', 'rstatus': True, 'logic': 'WBL', 'total_amount': 0, 'skus': []}}
[2026-08-31 11:52:25,224.224 INFO    ] 200
[2026-08-31 11:52:25,227.227 INFO    ] {"data":{"order_id":"TM08202202260831114637009","server_status":"invoiceOrder","server_response":{"orderId":"TM08202202260831114637009","anomaly":3,"res":"true","rstatus":true,"logic":"WBL","total_amount":0,"skus":[]}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 11:52:25,231.231 INFO    ] {'response': {'status': True, 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'data': 'order updated successfully'}, 'data': {'order_id': 'TM08202202260831114637009', 'server_status': 'invoiceOrder', 'server_response': {'orderId': 'TM08202202260831114637009', 'anomaly': 3, 'res': 'true', 'rstatus': True, 'logic': 'WBL', 'total_amount': 0, 'skus': []}}}
[2026-08-31 11:52:25,233.233 INFO    ] {'response': {'status': True, 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'data': 'order updated successfully'}, 'data': {'order_id': 'TM08202202260831114637009', 'server_status': 'invoiceOrder', 'server_response': {'orderId': 'TM08202202260831114637009', 'anomaly': 3, 'res': 'true', 'rstatus': True, 'logic': 'WBL', 'total_amount': 0, 'skus': []}}}
[2026-08-31 11:52:25,236.236 INFO    ] 2026-08-31 11:52:25
[2026-08-31 11:52:27,498.498 INFO    ] 200
[2026-08-31 11:52:27,501.501 INFO    ] {"tray_sync": [], "order_items": [], "orders_data": [], "orders_synced": [], "tray_synced": ["TM08202202260831114637009", "TM08202202260831114637009", "TM08202202260831114637009", "TM08202202260831114637009", "TM08202202260831114637009", "TM08202202260831114637009", "TM08202202260831114637009", "TM08202202260831114637009", "TM08202202260831114637009", "TM08202202260831114637009", "TM08202202260831114637009", "TM08202202260831114637009", "TM08202202260831114637009", "TM08202202260831114637009", "TM08202202260831114637009", "TM08202202260831114637009", "TM08202202260831114637009", "TM08202202260831114637009", "TM08202202260831114637009", "TM08202202260831114637009", "TM08202202260831114637009", "TM08202202260831114637009", "TM08202202260831114637009", "TM08202202260831114637009", "TM08202202260831114637009", "TM08202202260831114637009", "TM08202202260831114637009", "TM08202202260831114637009", "TM08202202260831114637009", "TM08202202260831114637009", "TM08202202260831114637009", "TM08202202260831114637009"], "orders_data_synced": [], "status": true, "order_items_synced": [], "orders": []}
[2026-08-31 11:52:27,504.504 INFO    ] 2026-08-31 11:52:27
[2026-08-31 11:52:27,758.758 INFO    ] 200
[2026-08-31 11:52:27,760.760 INFO    ] True
[2026-08-31 11:52:27,763.763 INFO    ] cleanup_start_order_file_after_processing: order_id=TM08202202260831114637009
[2026-08-31 11:52:27,766.766 INFO    ] start order file deleted
[2026-08-31 11:52:27,769.769 INFO    ] Checking for system updates...
[2026-08-31 11:52:27,808.808 INFO    ] 200
[2026-08-31 11:52:27,811.811 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:52:27,870.870 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:52:27,872.872 INFO    ] No update needed
[2026-08-31 11:52:27,875.875 INFO    ] Checking for camera pi updates...
[2026-08-31 11:52:27,916.916 INFO    ] 200
[2026-08-31 11:52:27,919.919 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:52:27,960.960 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:52:28,070.070 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:52:28,072.072 INFO    ] No camera update needed
[2026-08-31 11:52:28,075.075 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:52:28,077.077 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:52:28,083.083 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:52:28,088.088 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:52:30,129.129 INFO    ] ================================================
[2026-08-31 11:52:30,145.145 INFO    ] Launching Daemon at Mon Aug 31 11:52:30 IST 2026
[2026-08-31 11:52:30,155.155 INFO    ] ================================================
[2026-08-31 11:52:30,770.770 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:52:30
[2026-08-31 11:52:31,372.372 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:52:31,684.684 INFO    ] Initializing speech engine...
[2026-08-31 11:52:31,694.694 INFO    ] 2026-08-31 11:52:31
[2026-08-31 11:52:31,965.965 INFO    ] 2026-08-31 11:52:31
[2026-08-31 11:52:32,017.017 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:52:33,060.060 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:52:33,099.099 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:52:34,729.729 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:52:34,794.794 INFO    ] time= 31/08/2026 11:52:34
[2026-08-31 11:52:34,809.809 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:52:34,823.823 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:52:35,764.764 INFO    ] No existing commands found in stream
[2026-08-31 11:52:40,770.770 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:52:40,772.772 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-08-31 11:52:42,443.443 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 11:52:42,446.446 INFO    ] Checking for system updates...
[2026-08-31 11:52:42,486.486 INFO    ] 200
[2026-08-31 11:52:42,489.489 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:52:42,542.542 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:52:42,545.545 INFO    ] No update needed
[2026-08-31 11:52:42,547.547 INFO    ] Checking for camera pi updates...
[2026-08-31 11:52:42,580.580 INFO    ] 200
[2026-08-31 11:52:42,583.583 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:52:42,628.628 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:52:42,774.774 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:52:42,777.777 INFO    ] No camera update needed
[2026-08-31 11:52:42,780.780 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:52:42,782.782 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:52:42,787.787 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:52:42,793.793 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:52:44,834.834 INFO    ] ================================================
[2026-08-31 11:52:44,849.849 INFO    ] Launching Daemon at Mon Aug 31 11:52:44 IST 2026
[2026-08-31 11:52:44,860.860 INFO    ] ================================================
[2026-08-31 11:52:45,435.435 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:52:45
[2026-08-31 11:52:46,033.033 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:52:46,288.288 INFO    ] Initializing speech engine...
[2026-08-31 11:52:46,295.295 INFO    ] 2026-08-31 11:52:46
[2026-08-31 11:52:46,597.597 INFO    ] 2026-08-31 11:52:46
[2026-08-31 11:52:46,622.622 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:52:46,832.832 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:52:46,849.849 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:52:47,091.091 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:52:47,140.140 INFO    ] time= 31/08/2026 11:52:47
[2026-08-31 11:52:47,205.205 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:52:47,241.241 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:52:47,303.303 INFO    ] No existing commands found in stream
[2026-08-31 11:52:52,315.315 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:52:52,318.318 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-08-31 11:52:54,996.996 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 11:52:54,998.998 INFO    ] Checking for system updates...
[2026-08-31 11:52:55,033.033 INFO    ] 200
[2026-08-31 11:52:55,036.036 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:52:55,095.095 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:52:55,097.097 INFO    ] No update needed
[2026-08-31 11:52:55,100.100 INFO    ] Checking for camera pi updates...
[2026-08-31 11:52:55,134.134 INFO    ] 200
[2026-08-31 11:52:55,136.136 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:52:55,177.177 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:52:55,267.267 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:52:55,269.269 INFO    ] No camera update needed
[2026-08-31 11:52:55,272.272 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:52:55,274.274 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:52:55,279.279 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:52:55,284.284 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:52:57,325.325 INFO    ] ================================================
[2026-08-31 11:52:57,340.340 INFO    ] Launching Daemon at Mon Aug 31 11:52:57 IST 2026
[2026-08-31 11:52:57,350.350 INFO    ] ================================================
[2026-08-31 11:52:57,919.919 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:52:57
[2026-08-31 11:52:58,505.505 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:52:58,762.762 INFO    ] Initializing speech engine...
[2026-08-31 11:52:58,769.769 INFO    ] 2026-08-31 11:52:58
[2026-08-31 11:52:59,064.064 INFO    ] 2026-08-31 11:52:59
[2026-08-31 11:52:59,090.090 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:52:59,590.590 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:52:59,603.603 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:52:59,814.814 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:52:59,852.852 INFO    ] time= 31/08/2026 11:52:59
[2026-08-31 11:52:59,900.900 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:52:59,949.949 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:53:00,094.094 INFO    ] No existing commands found in stream
[2026-08-31 11:53:05,111.111 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:53:05,114.114 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-08-31 11:53:08,401.401 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 11:53:08,403.403 INFO    ] Checking for system updates...
[2026-08-31 11:53:08,439.439 INFO    ] 200
[2026-08-31 11:53:08,442.442 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:53:08,493.493 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:53:08,495.495 INFO    ] No update needed
[2026-08-31 11:53:08,498.498 INFO    ] Checking for camera pi updates...
[2026-08-31 11:53:08,535.535 INFO    ] 200
[2026-08-31 11:53:08,538.538 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:53:08,579.579 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:53:08,781.781 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:53:08,783.783 INFO    ] No camera update needed
[2026-08-31 11:53:08,786.786 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:53:08,788.788 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:53:08,793.793 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:53:08,798.798 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:53:10,839.839 INFO    ] ================================================
[2026-08-31 11:53:10,855.855 INFO    ] Launching Daemon at Mon Aug 31 11:53:10 IST 2026
[2026-08-31 11:53:10,865.865 INFO    ] ================================================
[2026-08-31 11:53:11,444.444 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:53:11
[2026-08-31 11:53:12,034.034 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:53:12,295.295 INFO    ] Initializing speech engine...
[2026-08-31 11:53:12,320.320 INFO    ] 2026-08-31 11:53:12
[2026-08-31 11:53:12,594.594 INFO    ] 2026-08-31 11:53:12
[2026-08-31 11:53:12,631.631 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:53:12,921.921 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:53:12,926.926 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:53:13,122.122 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:53:13,166.166 INFO    ] time= 31/08/2026 11:53:13
[2026-08-31 11:53:13,221.221 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:53:13,227.227 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:53:13,356.356 INFO    ] No existing commands found in stream
[2026-08-31 11:53:18,379.379 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:53:18,382.382 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-08-31 11:53:20,348.348 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 11:53:20,351.351 INFO    ] Checking for system updates...
[2026-08-31 11:53:20,388.388 INFO    ] 200
[2026-08-31 11:53:20,390.390 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:53:20,451.451 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:53:20,453.453 INFO    ] No update needed
[2026-08-31 11:53:20,456.456 INFO    ] Checking for camera pi updates...
[2026-08-31 11:53:20,490.490 INFO    ] 200
[2026-08-31 11:53:20,492.492 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:53:20,533.533 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:53:20,617.617 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:53:20,620.620 INFO    ] No camera update needed
[2026-08-31 11:53:20,622.622 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:53:20,624.624 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:53:20,630.630 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:53:20,635.635 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:53:22,674.674 INFO    ] ================================================
[2026-08-31 11:53:22,690.690 INFO    ] Launching Daemon at Mon Aug 31 11:53:22 IST 2026
[2026-08-31 11:53:22,701.701 INFO    ] ================================================
[2026-08-31 11:53:23,340.340 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:53:23
[2026-08-31 11:53:23,999.999 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:53:24,303.303 INFO    ] Initializing speech engine...
[2026-08-31 11:53:24,314.314 INFO    ] 2026-08-31 11:53:24
[2026-08-31 11:53:24,591.591 INFO    ] 2026-08-31 11:53:24
[2026-08-31 11:53:24,635.635 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:53:24,865.865 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:53:24,886.886 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:53:25,098.098 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:53:25,129.129 INFO    ] time= 31/08/2026 11:53:25
[2026-08-31 11:53:25,147.147 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:53:25,176.176 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:53:25,292.292 INFO    ] No existing commands found in stream
[2026-08-31 11:53:30,313.313 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:53:30,316.316 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-08-31 11:53:31,790.790 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 11:53:31,793.793 INFO    ] Checking for system updates...
[2026-08-31 11:53:31,833.833 INFO    ] 200
[2026-08-31 11:53:31,835.835 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:53:31,898.898 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:53:31,901.901 INFO    ] No update needed
[2026-08-31 11:53:31,904.904 INFO    ] Checking for camera pi updates...
[2026-08-31 11:53:31,943.943 INFO    ] 200
[2026-08-31 11:53:31,945.945 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:53:31,989.989 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:53:32,105.105 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:53:32,108.108 INFO    ] No camera update needed
[2026-08-31 11:53:32,111.111 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:53:32,114.114 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:53:32,120.120 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:53:32,126.126 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:53:34,168.168 INFO    ] ================================================
[2026-08-31 11:53:34,183.183 INFO    ] Launching Daemon at Mon Aug 31 11:53:34 IST 2026
[2026-08-31 11:53:34,195.195 INFO    ] ================================================
[2026-08-31 11:53:34,902.902 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:53:34
[2026-08-31 11:53:35,615.615 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:53:35,876.876 INFO    ] Initializing speech engine...
[2026-08-31 11:53:35,885.885 INFO    ] 2026-08-31 11:53:35
[2026-08-31 11:53:36,196.196 INFO    ] 2026-08-31 11:53:36
[2026-08-31 11:53:36,233.233 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:53:36,478.478 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:53:36,538.538 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:53:36,771.771 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:53:36,831.831 INFO    ] time= 31/08/2026 11:53:36
[2026-08-31 11:53:36,849.849 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:53:36,855.855 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:53:37,006.006 INFO    ] No existing commands found in stream
[2026-08-31 11:53:42,029.029 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:53:42,031.031 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-08-31 11:53:45,549.549 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 11:53:45,552.552 INFO    ] Checking for system updates...
[2026-08-31 11:53:45,588.588 INFO    ] 200
[2026-08-31 11:53:45,590.590 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:53:45,642.642 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:53:45,645.645 INFO    ] No update needed
[2026-08-31 11:53:45,647.647 INFO    ] Checking for camera pi updates...
[2026-08-31 11:53:45,684.684 INFO    ] 200
[2026-08-31 11:53:45,686.686 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:53:45,726.726 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:53:45,818.818 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:53:45,821.821 INFO    ] No camera update needed
[2026-08-31 11:53:45,824.824 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:53:45,827.827 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:53:45,832.832 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:53:45,837.837 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:53:47,878.878 INFO    ] ================================================
[2026-08-31 11:53:47,893.893 INFO    ] Launching Daemon at Mon Aug 31 11:53:47 IST 2026
[2026-08-31 11:53:47,904.904 INFO    ] ================================================
[2026-08-31 11:53:48,468.468 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:53:48
[2026-08-31 11:53:49,050.050 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:53:49,302.302 INFO    ] Initializing speech engine...
[2026-08-31 11:53:49,311.311 INFO    ] 2026-08-31 11:53:49
[2026-08-31 11:53:49,605.605 INFO    ] 2026-08-31 11:53:49
[2026-08-31 11:53:49,630.630 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:53:49,841.841 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:53:49,846.846 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:53:50,017.017 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:53:50,028.028 INFO    ] time= 31/08/2026 11:53:50
[2026-08-31 11:53:50,033.033 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:53:50,039.039 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:53:50,147.147 INFO    ] No existing commands found in stream
[2026-08-31 11:53:55,172.172 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:53:55,174.174 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-08-31 11:53:58,919.919 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 11:53:58,922.922 INFO    ] Checking for system updates...
[2026-08-31 11:53:58,958.958 INFO    ] 200
[2026-08-31 11:53:58,961.961 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:53:59,014.014 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:53:59,016.016 INFO    ] No update needed
[2026-08-31 11:53:59,019.019 INFO    ] Checking for camera pi updates...
[2026-08-31 11:53:59,058.058 INFO    ] 200
[2026-08-31 11:53:59,061.061 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:53:59,108.108 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:53:59,197.197 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:53:59,200.200 INFO    ] No camera update needed
[2026-08-31 11:53:59,203.203 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:53:59,205.205 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:53:59,211.211 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:53:59,217.217 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:54:01,260.260 INFO    ] ================================================
[2026-08-31 11:54:01,276.276 INFO    ] Launching Daemon at Mon Aug 31 11:54:01 IST 2026
[2026-08-31 11:54:01,288.288 INFO    ] ================================================
[2026-08-31 11:54:01,969.969 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:54:01
[2026-08-31 11:54:02,631.631 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:54:02,994.994 INFO    ] Initializing speech engine...
[2026-08-31 11:54:03,010.010 INFO    ] 2026-08-31 11:54:02
[2026-08-31 11:54:03,306.306 INFO    ] 2026-08-31 11:54:03
[2026-08-31 11:54:03,372.372 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:54:03,646.646 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:54:03,664.664 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:54:03,885.885 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:54:03,893.893 INFO    ] time= 31/08/2026 11:54:03
[2026-08-31 11:54:03,915.915 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:54:03,944.944 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:54:04,077.077 INFO    ] No existing commands found in stream
[2026-08-31 11:54:09,100.100 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:54:09,103.103 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-08-31 11:54:12,909.909 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 11:54:12,912.912 INFO    ] Checking for system updates...
[2026-08-31 11:54:12,948.948 INFO    ] 200
[2026-08-31 11:54:12,951.951 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:54:13,010.010 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:54:13,013.013 INFO    ] No update needed
[2026-08-31 11:54:13,016.016 INFO    ] Checking for camera pi updates...
[2026-08-31 11:54:13,051.051 INFO    ] 200
[2026-08-31 11:54:13,053.053 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:54:13,096.096 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:54:13,180.180 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:54:13,182.182 INFO    ] No camera update needed
[2026-08-31 11:54:13,185.185 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:54:13,188.188 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:54:13,194.194 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:54:13,199.199 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:54:15,241.241 INFO    ] ================================================
[2026-08-31 11:54:15,256.256 INFO    ] Launching Daemon at Mon Aug 31 11:54:15 IST 2026
[2026-08-31 11:54:15,267.267 INFO    ] ================================================
[2026-08-31 11:54:15,837.837 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:54:15
[2026-08-31 11:54:16,421.421 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:54:16,690.690 INFO    ] Initializing speech engine...
[2026-08-31 11:54:16,701.701 INFO    ] 2026-08-31 11:54:16
[2026-08-31 11:54:16,949.949 INFO    ] 2026-08-31 11:54:16
[2026-08-31 11:54:16,985.985 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:54:17,247.247 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:54:17,253.253 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:54:17,461.461 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:54:17,513.513 INFO    ] time= 31/08/2026 11:54:17
[2026-08-31 11:54:17,520.520 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:54:17,538.538 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:54:17,677.677 INFO    ] No existing commands found in stream
[2026-08-31 11:54:22,703.703 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:54:22,705.705 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-08-31 11:54:25,905.905 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 11:54:25,908.908 INFO    ] Checking for system updates...
[2026-08-31 11:54:25,947.947 INFO    ] 200
[2026-08-31 11:54:25,950.950 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:54:26,002.002 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:54:26,005.005 INFO    ] No update needed
[2026-08-31 11:54:26,007.007 INFO    ] Checking for camera pi updates...
[2026-08-31 11:54:26,044.044 INFO    ] 200
[2026-08-31 11:54:26,046.046 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:54:26,087.087 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:54:26,166.166 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:54:26,169.169 INFO    ] No camera update needed
[2026-08-31 11:54:26,171.171 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:54:26,173.173 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:54:26,179.179 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:54:26,184.184 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:54:28,224.224 INFO    ] ================================================
[2026-08-31 11:54:28,240.240 INFO    ] Launching Daemon at Mon Aug 31 11:54:28 IST 2026
[2026-08-31 11:54:28,251.251 INFO    ] ================================================
[2026-08-31 11:54:28,819.819 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:54:28
[2026-08-31 11:54:29,405.405 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:54:29,673.673 INFO    ] Initializing speech engine...
[2026-08-31 11:54:29,682.682 INFO    ] 2026-08-31 11:54:29
[2026-08-31 11:54:29,930.930 INFO    ] 2026-08-31 11:54:29
[2026-08-31 11:54:29,966.966 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:54:30,192.192 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:54:30,247.247 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:54:30,406.406 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:54:30,454.454 INFO    ] time= 31/08/2026 11:54:30
[2026-08-31 11:54:30,503.503 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:54:30,540.540 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:54:30,664.664 INFO    ] No existing commands found in stream
[2026-08-31 11:54:35,694.694 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:54:35,697.697 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-08-31 11:54:36,485.485 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 11:54:36,488.488 INFO    ] Checking for system updates...
[2026-08-31 11:54:36,523.523 INFO    ] 200
[2026-08-31 11:54:36,525.525 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:54:36,579.579 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:54:36,581.581 INFO    ] No update needed
[2026-08-31 11:54:36,583.583 INFO    ] Checking for camera pi updates...
[2026-08-31 11:54:36,618.618 INFO    ] 200
[2026-08-31 11:54:36,620.620 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:54:36,660.660 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:54:36,764.764 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:54:36,766.766 INFO    ] No camera update needed
[2026-08-31 11:54:36,769.769 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:54:36,771.771 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:54:36,776.776 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:54:36,781.781 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:54:38,821.821 INFO    ] ================================================
[2026-08-31 11:54:38,836.836 INFO    ] Launching Daemon at Mon Aug 31 11:54:38 IST 2026
[2026-08-31 11:54:38,847.847 INFO    ] ================================================
[2026-08-31 11:54:39,491.491 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:54:39
[2026-08-31 11:54:40,167.167 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:54:40,462.462 INFO    ] Initializing speech engine...
[2026-08-31 11:54:40,472.472 INFO    ] 2026-08-31 11:54:40
[2026-08-31 11:54:40,751.751 INFO    ] 2026-08-31 11:54:40
[2026-08-31 11:54:40,811.811 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:54:41,018.018 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:54:41,040.040 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:54:41,280.280 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:54:41,308.308 INFO    ] time= 31/08/2026 11:54:41
[2026-08-31 11:54:41,314.314 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:54:41,335.335 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:54:41,489.489 INFO    ] No existing commands found in stream
[2026-08-31 11:54:46,520.520 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:54:46,522.522 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-08-31 11:54:49,810.810 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 11:54:49,813.813 INFO    ] Checking for system updates...
[2026-08-31 11:54:49,848.848 INFO    ] 200
[2026-08-31 11:54:49,851.851 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:54:49,903.903 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:54:49,906.906 INFO    ] No update needed
[2026-08-31 11:54:49,908.908 INFO    ] Checking for camera pi updates...
[2026-08-31 11:54:49,942.942 INFO    ] 200
[2026-08-31 11:54:49,944.944 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:54:49,989.989 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:54:50,052.052 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:54:50,054.054 INFO    ] No camera update needed
[2026-08-31 11:54:50,057.057 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:54:50,059.059 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:54:50,064.064 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:54:50,070.070 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:54:52,112.112 INFO    ] ================================================
[2026-08-31 11:54:52,127.127 INFO    ] Launching Daemon at Mon Aug 31 11:54:52 IST 2026
[2026-08-31 11:54:52,138.138 INFO    ] ================================================
[2026-08-31 11:54:52,781.781 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:54:52
[2026-08-31 11:54:53,372.372 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:54:53,645.645 INFO    ] Initializing speech engine...
[2026-08-31 11:54:53,651.651 INFO    ] 2026-08-31 11:54:53
[2026-08-31 11:54:53,900.900 INFO    ] 2026-08-31 11:54:53
[2026-08-31 11:54:53,935.935 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:54:54,193.193 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:54:54,203.203 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:54:54,416.416 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:54:54,467.467 INFO    ] time= 31/08/2026 11:54:54
[2026-08-31 11:54:54,473.473 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:54:54,492.492 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:54:54,604.604 INFO    ] No existing commands found in stream
[2026-08-31 11:54:59,632.632 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:54:59,635.635 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-08-31 11:55:01,268.268 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 11:55:01,271.271 INFO    ] Checking for system updates...
[2026-08-31 11:55:01,307.307 INFO    ] 200
[2026-08-31 11:55:01,309.309 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:55:01,362.362 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:55:01,365.365 INFO    ] No update needed
[2026-08-31 11:55:01,367.367 INFO    ] Checking for camera pi updates...
[2026-08-31 11:55:01,400.400 INFO    ] 200
[2026-08-31 11:55:01,403.403 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:55:01,443.443 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:55:01,583.583 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:55:01,585.585 INFO    ] No camera update needed
[2026-08-31 11:55:01,588.588 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:55:01,590.590 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:55:01,596.596 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:55:01,601.601 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:55:03,646.646 INFO    ] ================================================
[2026-08-31 11:55:03,663.663 INFO    ] Launching Daemon at Mon Aug 31 11:55:03 IST 2026
[2026-08-31 11:55:03,676.676 INFO    ] ================================================
[2026-08-31 11:55:04,334.334 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:55:04
[2026-08-31 11:55:05,008.008 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:55:05,321.321 INFO    ] Initializing speech engine...
[2026-08-31 11:55:05,327.327 INFO    ] 2026-08-31 11:55:05
[2026-08-31 11:55:05,635.635 INFO    ] 2026-08-31 11:55:05
[2026-08-31 11:55:05,722.722 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:55:05,929.929 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:55:05,938.938 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:55:06,123.123 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:55:06,142.142 INFO    ] time= 31/08/2026 11:55:06
[2026-08-31 11:55:06,163.163 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:55:06,189.189 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:55:06,325.325 INFO    ] No existing commands found in stream
[2026-08-31 11:55:11,350.350 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:55:11,353.353 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-08-31 11:55:15,565.565 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 11:55:15,569.569 INFO    ] Checking for system updates...
[2026-08-31 11:55:15,610.610 INFO    ] 200
[2026-08-31 11:55:15,613.613 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:55:15,668.668 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:55:15,671.671 INFO    ] No update needed
[2026-08-31 11:55:15,673.673 INFO    ] Checking for camera pi updates...
[2026-08-31 11:55:15,708.708 INFO    ] 200
[2026-08-31 11:55:15,711.711 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:55:15,757.757 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:55:15,956.956 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:55:15,959.959 INFO    ] No camera update needed
[2026-08-31 11:55:15,961.961 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:55:15,964.964 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:55:15,970.970 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:55:15,976.976 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:55:18,017.017 INFO    ] ================================================
[2026-08-31 11:55:18,033.033 INFO    ] Launching Daemon at Mon Aug 31 11:55:18 IST 2026
[2026-08-31 11:55:18,044.044 INFO    ] ================================================
[2026-08-31 11:55:18,610.610 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:55:18
[2026-08-31 11:55:19,194.194 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:55:19,451.451 INFO    ] Initializing speech engine...
[2026-08-31 11:55:19,457.457 INFO    ] 2026-08-31 11:55:19
[2026-08-31 11:55:19,752.752 INFO    ] 2026-08-31 11:55:19
[2026-08-31 11:55:19,777.777 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:55:20,069.069 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:55:20,089.089 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:55:20,314.314 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:55:20,353.353 INFO    ] time= 31/08/2026 11:55:20
[2026-08-31 11:55:20,393.393 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:55:20,399.399 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:55:20,529.529 INFO    ] No existing commands found in stream
[2026-08-31 11:55:25,547.547 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:55:25,550.550 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-08-31 11:55:26,586.586 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 11:55:26,589.589 INFO    ] Checking for system updates...
[2026-08-31 11:55:26,625.625 INFO    ] 200
[2026-08-31 11:55:26,627.627 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:55:26,687.687 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:55:26,689.689 INFO    ] No update needed
[2026-08-31 11:55:26,691.691 INFO    ] Checking for camera pi updates...
[2026-08-31 11:55:26,725.725 INFO    ] 200
[2026-08-31 11:55:26,728.728 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:55:26,768.768 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:55:26,850.850 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:55:26,852.852 INFO    ] No camera update needed
[2026-08-31 11:55:26,855.855 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:55:26,857.857 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:55:26,862.862 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:55:26,867.867 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:55:28,909.909 INFO    ] ================================================
[2026-08-31 11:55:28,925.925 INFO    ] Launching Daemon at Mon Aug 31 11:55:28 IST 2026
[2026-08-31 11:55:28,936.936 INFO    ] ================================================
[2026-08-31 11:55:29,512.512 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:55:29
[2026-08-31 11:55:30,111.111 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:55:30,375.375 INFO    ] Initializing speech engine...
[2026-08-31 11:55:30,383.383 INFO    ] 2026-08-31 11:55:30
[2026-08-31 11:55:30,675.675 INFO    ] 2026-08-31 11:55:30
[2026-08-31 11:55:30,712.712 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:55:30,910.910 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:55:30,967.967 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:55:31,159.159 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:55:31,219.219 INFO    ] time= 31/08/2026 11:55:31
[2026-08-31 11:55:31,237.237 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:55:31,243.243 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:55:31,389.389 INFO    ] No existing commands found in stream
[2026-08-31 11:55:36,402.402 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:55:36,405.405 INFO    ] Waiting 0.00 seconds before fallback handling...
[2026-08-31 11:55:36,848.848 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 11:55:36,851.851 INFO    ] Checking for system updates...
[2026-08-31 11:55:36,887.887 INFO    ] 200
[2026-08-31 11:55:36,890.890 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:55:36,943.943 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:55:36,945.945 INFO    ] No update needed
[2026-08-31 11:55:36,947.947 INFO    ] Checking for camera pi updates...
[2026-08-31 11:55:36,981.981 INFO    ] 200
[2026-08-31 11:55:36,983.983 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:55:37,023.023 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:55:37,106.106 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:55:37,109.109 INFO    ] No camera update needed
[2026-08-31 11:55:37,111.111 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:55:37,113.113 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:55:37,119.119 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:55:37,124.124 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:55:39,164.164 INFO    ] ================================================
[2026-08-31 11:55:39,180.180 INFO    ] Launching Daemon at Mon Aug 31 11:55:39 IST 2026
[2026-08-31 11:55:39,191.191 INFO    ] ================================================
[2026-08-31 11:55:39,771.771 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:55:39
[2026-08-31 11:55:40,353.353 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:55:40,665.665 INFO    ] Initializing speech engine...
[2026-08-31 11:55:40,676.676 INFO    ] 2026-08-31 11:55:40
[2026-08-31 11:55:40,932.932 INFO    ] 2026-08-31 11:55:40
[2026-08-31 11:55:40,985.985 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:55:41,224.224 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:55:41,229.229 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:55:41,388.388 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:55:41,405.405 INFO    ] time= 31/08/2026 11:55:41
[2026-08-31 11:55:41,460.460 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:55:41,514.514 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:55:41,601.601 INFO    ] No existing commands found in stream
[2026-08-31 11:55:46,613.613 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:55:46,616.616 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-08-31 11:55:49,451.451 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 11:55:49,454.454 INFO    ] Checking for system updates...
[2026-08-31 11:55:49,490.490 INFO    ] 200
[2026-08-31 11:55:49,492.492 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:55:49,553.553 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:55:49,555.555 INFO    ] No update needed
[2026-08-31 11:55:49,558.558 INFO    ] Checking for camera pi updates...
[2026-08-31 11:55:49,592.592 INFO    ] 200
[2026-08-31 11:55:49,595.595 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:55:49,636.636 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:55:49,717.717 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:55:49,720.720 INFO    ] No camera update needed
[2026-08-31 11:55:49,722.722 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:55:49,725.725 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:55:49,731.731 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:55:49,736.736 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:55:51,778.778 INFO    ] ================================================
[2026-08-31 11:55:51,794.794 INFO    ] Launching Daemon at Mon Aug 31 11:55:51 IST 2026
[2026-08-31 11:55:51,804.804 INFO    ] ================================================
[2026-08-31 11:55:52,371.371 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:55:52
[2026-08-31 11:55:52,955.955 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:55:53,212.212 INFO    ] Initializing speech engine...
[2026-08-31 11:55:53,217.217 INFO    ] 2026-08-31 11:55:53
[2026-08-31 11:55:53,519.519 INFO    ] 2026-08-31 11:55:53
[2026-08-31 11:55:53,548.548 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:55:53,764.764 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:55:53,778.778 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:55:53,944.944 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:55:53,952.952 INFO    ] time= 31/08/2026 11:55:53
[2026-08-31 11:55:53,957.957 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:55:53,964.964 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:55:54,083.083 INFO    ] No existing commands found in stream
[2026-08-31 11:55:59,108.108 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:55:59,111.111 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-08-31 11:56:01,873.873 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 11:56:01,879.879 INFO    ] Checking for system updates...
[2026-08-31 11:56:01,968.968 INFO    ] 200
[2026-08-31 11:56:01,978.978 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:56:02,050.050 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:56:02,054.054 INFO    ] No update needed
[2026-08-31 11:56:02,060.060 INFO    ] Checking for camera pi updates...
[2026-08-31 11:56:02,136.136 INFO    ] 200
[2026-08-31 11:56:02,140.140 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:56:02,195.195 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:56:02,289.289 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:56:02,298.298 INFO    ] No camera update needed
[2026-08-31 11:56:02,301.301 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:56:02,304.304 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:56:02,313.313 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:56:02,320.320 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:56:04,365.365 INFO    ] ================================================
[2026-08-31 11:56:04,380.380 INFO    ] Launching Daemon at Mon Aug 31 11:56:04 IST 2026
[2026-08-31 11:56:04,392.392 INFO    ] ================================================
[2026-08-31 11:56:04,974.974 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:56:04
[2026-08-31 11:56:05,574.574 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:56:05,841.841 INFO    ] Initializing speech engine...
[2026-08-31 11:56:05,857.857 INFO    ] 2026-08-31 11:56:05
[2026-08-31 11:56:06,110.110 INFO    ] 2026-08-31 11:56:06
[2026-08-31 11:56:06,146.146 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:56:06,397.397 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:56:06,407.407 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:56:06,613.613 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:56:06,662.662 INFO    ] time= 31/08/2026 11:56:06
[2026-08-31 11:56:06,669.669 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:56:06,687.687 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:56:06,801.801 INFO    ] No existing commands found in stream
[2026-08-31 11:56:11,826.826 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:56:11,829.829 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-08-31 11:56:13,445.445 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 11:56:13,448.448 INFO    ] Checking for system updates...
[2026-08-31 11:56:13,484.484 INFO    ] 200
[2026-08-31 11:56:13,487.487 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:56:13,540.540 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:56:13,543.543 INFO    ] No update needed
[2026-08-31 11:56:13,545.545 INFO    ] Checking for camera pi updates...
[2026-08-31 11:56:13,583.583 INFO    ] 200
[2026-08-31 11:56:13,586.586 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:56:13,627.627 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:56:13,706.706 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:56:13,709.709 INFO    ] No camera update needed
[2026-08-31 11:56:13,711.711 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:56:13,713.713 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:56:13,719.719 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:56:13,724.724 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:56:15,765.765 INFO    ] ================================================
[2026-08-31 11:56:15,781.781 INFO    ] Launching Daemon at Mon Aug 31 11:56:15 IST 2026
[2026-08-31 11:56:15,796.796 INFO    ] ================================================
[2026-08-31 11:56:16,470.470 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:56:16
[2026-08-31 11:56:17,162.162 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:56:17,486.486 INFO    ] Initializing speech engine...
[2026-08-31 11:56:17,495.495 INFO    ] 2026-08-31 11:56:17
[2026-08-31 11:56:17,784.784 INFO    ] 2026-08-31 11:56:17
[2026-08-31 11:56:17,896.896 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:56:18,079.079 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:56:18,085.085 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:56:18,322.322 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:56:18,330.330 INFO    ] time= 31/08/2026 11:56:18
[2026-08-31 11:56:18,350.350 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:56:18,379.379 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:56:18,487.487 INFO    ] No existing commands found in stream
[2026-08-31 11:56:23,511.511 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:56:23,515.515 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-08-31 11:56:26,153.153 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 11:56:26,156.156 INFO    ] Checking for system updates...
[2026-08-31 11:56:26,196.196 INFO    ] 200
[2026-08-31 11:56:26,199.199 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:56:26,251.251 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:56:26,254.254 INFO    ] No update needed
[2026-08-31 11:56:26,256.256 INFO    ] Checking for camera pi updates...
[2026-08-31 11:56:26,294.294 INFO    ] 200
[2026-08-31 11:56:26,296.296 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:56:26,336.336 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:56:26,429.429 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:56:26,432.432 INFO    ] No camera update needed
[2026-08-31 11:56:26,434.434 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:56:26,436.436 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:56:26,442.442 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:56:26,447.447 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:56:28,488.488 INFO    ] ================================================
[2026-08-31 11:56:28,503.503 INFO    ] Launching Daemon at Mon Aug 31 11:56:28 IST 2026
[2026-08-31 11:56:28,514.514 INFO    ] ================================================
[2026-08-31 11:56:29,181.181 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:56:29
[2026-08-31 11:56:29,868.868 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:56:30,176.176 INFO    ] Initializing speech engine...
[2026-08-31 11:56:30,189.189 INFO    ] 2026-08-31 11:56:30
[2026-08-31 11:56:30,476.476 INFO    ] 2026-08-31 11:56:30
[2026-08-31 11:56:30,517.517 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:56:30,745.745 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:56:30,751.751 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:56:30,899.899 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:56:30,964.964 INFO    ] time= 31/08/2026 11:56:30
[2026-08-31 11:56:31,011.011 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:56:31,029.029 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:56:31,174.174 INFO    ] No existing commands found in stream
[2026-08-31 11:56:36,215.215 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:56:36,219.219 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-08-31 11:56:36,973.973 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 11:56:36,976.976 INFO    ] Checking for system updates...
[2026-08-31 11:56:37,015.015 INFO    ] 200
[2026-08-31 11:56:37,018.018 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:56:37,073.073 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:56:37,076.076 INFO    ] No update needed
[2026-08-31 11:56:37,079.079 INFO    ] Checking for camera pi updates...
[2026-08-31 11:56:37,115.115 INFO    ] 200
[2026-08-31 11:56:37,118.118 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:56:37,161.161 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:56:37,245.245 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:56:37,248.248 INFO    ] No camera update needed
[2026-08-31 11:56:37,251.251 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:56:37,253.253 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:56:37,260.260 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:56:37,266.266 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:56:39,309.309 INFO    ] ================================================
[2026-08-31 11:56:39,324.324 INFO    ] Launching Daemon at Mon Aug 31 11:56:39 IST 2026
[2026-08-31 11:56:39,335.335 INFO    ] ================================================
[2026-08-31 11:56:39,903.903 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:56:39
[2026-08-31 11:56:40,484.484 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:56:40,756.756 INFO    ] Initializing speech engine...
[2026-08-31 11:56:40,766.766 INFO    ] 2026-08-31 11:56:40
[2026-08-31 11:56:41,014.014 INFO    ] 2026-08-31 11:56:41
[2026-08-31 11:56:41,050.050 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:56:41,250.250 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:56:41,294.294 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:56:41,543.543 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:56:41,583.583 INFO    ] time= 31/08/2026 11:56:41
[2026-08-31 11:56:41,589.589 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:56:41,608.608 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:56:41,741.741 INFO    ] No existing commands found in stream
[2026-08-31 11:56:46,753.753 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:56:46,755.755 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-08-31 11:56:48,708.708 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 11:56:48,711.711 INFO    ] Checking for system updates...
[2026-08-31 11:56:48,749.749 INFO    ] 200
[2026-08-31 11:56:48,752.752 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:56:48,814.814 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:56:48,817.817 INFO    ] No update needed
[2026-08-31 11:56:48,820.820 INFO    ] Checking for camera pi updates...
[2026-08-31 11:56:48,860.860 INFO    ] 200
[2026-08-31 11:56:48,863.863 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:56:48,911.911 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:56:48,999.999 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:56:49,001.001 INFO    ] No camera update needed
[2026-08-31 11:56:49,003.003 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:56:49,006.006 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:56:49,011.011 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:56:49,016.016 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:56:51,056.056 INFO    ] ================================================
[2026-08-31 11:56:51,073.073 INFO    ] Launching Daemon at Mon Aug 31 11:56:51 IST 2026
[2026-08-31 11:56:51,085.085 INFO    ] ================================================
[2026-08-31 11:56:51,650.650 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:56:51
[2026-08-31 11:56:52,234.234 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:56:52,500.500 INFO    ] Initializing speech engine...
[2026-08-31 11:56:52,514.514 INFO    ] 2026-08-31 11:56:52
[2026-08-31 11:56:52,764.764 INFO    ] 2026-08-31 11:56:52
[2026-08-31 11:56:52,830.830 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:56:53,061.061 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:56:53,066.066 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:56:53,291.291 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:56:53,331.331 INFO    ] time= 31/08/2026 11:56:53
[2026-08-31 11:56:53,337.337 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:56:53,354.354 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:56:53,478.478 INFO    ] No existing commands found in stream
[2026-08-31 11:56:58,501.501 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:56:58,503.503 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-08-31 11:57:00,467.467 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 11:57:00,469.469 INFO    ] Checking for system updates...
[2026-08-31 11:57:00,505.505 INFO    ] 200
[2026-08-31 11:57:00,508.508 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:57:00,569.569 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:57:00,571.571 INFO    ] No update needed
[2026-08-31 11:57:00,573.573 INFO    ] Checking for camera pi updates...
[2026-08-31 11:57:00,607.607 INFO    ] 200
[2026-08-31 11:57:00,609.609 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:57:00,650.650 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:57:00,751.751 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:57:00,756.756 INFO    ] No camera update needed
[2026-08-31 11:57:00,759.759 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:57:00,761.761 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:57:00,767.767 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:57:00,772.772 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:57:02,815.815 INFO    ] ================================================
[2026-08-31 11:57:02,835.835 INFO    ] Launching Daemon at Mon Aug 31 11:57:02 IST 2026
[2026-08-31 11:57:02,848.848 INFO    ] ================================================
[2026-08-31 11:57:03,558.558 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:57:03
[2026-08-31 11:57:04,173.173 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:57:04,454.454 INFO    ] Initializing speech engine...
[2026-08-31 11:57:04,467.467 INFO    ] 2026-08-31 11:57:04
[2026-08-31 11:57:04,734.734 INFO    ] 2026-08-31 11:57:04
[2026-08-31 11:57:04,770.770 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:57:05,055.055 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:57:05,065.065 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:57:05,275.275 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:57:05,335.335 INFO    ] time= 31/08/2026 11:57:05
[2026-08-31 11:57:05,361.361 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:57:05,367.367 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:57:05,506.506 INFO    ] No existing commands found in stream
[2026-08-31 11:57:10,537.537 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:57:10,540.540 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-08-31 11:57:12,387.387 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 11:57:12,390.390 INFO    ] Checking for system updates...
[2026-08-31 11:57:12,426.426 INFO    ] 200
[2026-08-31 11:57:12,429.429 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:57:12,482.482 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:57:12,485.485 INFO    ] No update needed
[2026-08-31 11:57:12,487.487 INFO    ] Checking for camera pi updates...
[2026-08-31 11:57:12,521.521 INFO    ] 200
[2026-08-31 11:57:12,524.524 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:57:12,564.564 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:57:12,668.668 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:57:12,670.670 INFO    ] No camera update needed
[2026-08-31 11:57:12,673.673 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:57:12,675.675 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:57:12,681.681 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:57:12,686.686 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:57:14,727.727 INFO    ] ================================================
[2026-08-31 11:57:14,743.743 INFO    ] Launching Daemon at Mon Aug 31 11:57:14 IST 2026
[2026-08-31 11:57:14,755.755 INFO    ] ================================================
[2026-08-31 11:57:15,337.337 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:57:15
[2026-08-31 11:57:15,938.938 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:57:16,215.215 INFO    ] Initializing speech engine...
[2026-08-31 11:57:16,221.221 INFO    ] 2026-08-31 11:57:16
[2026-08-31 11:57:16,483.483 INFO    ] 2026-08-31 11:57:16
[2026-08-31 11:57:16,534.534 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:57:16,759.759 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:57:16,769.769 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:57:17,020.020 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:57:17,028.028 INFO    ] time= 31/08/2026 11:57:17
[2026-08-31 11:57:17,042.042 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:57:17,051.051 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:57:17,277.277 INFO    ] No existing commands found in stream
[2026-08-31 11:57:22,287.287 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:57:22,290.290 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-08-31 11:57:26,233.233 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 11:57:26,235.235 INFO    ] Checking for system updates...
[2026-08-31 11:57:26,271.271 INFO    ] 200
[2026-08-31 11:57:26,274.274 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:57:26,327.327 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:57:26,330.330 INFO    ] No update needed
[2026-08-31 11:57:26,332.332 INFO    ] Checking for camera pi updates...
[2026-08-31 11:57:26,370.370 INFO    ] 200
[2026-08-31 11:57:26,372.372 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:57:26,412.412 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:57:26,598.598 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:57:26,600.600 INFO    ] No camera update needed
[2026-08-31 11:57:26,603.603 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:57:26,605.605 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:57:26,610.610 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:57:26,615.615 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:57:28,658.658 INFO    ] ================================================
[2026-08-31 11:57:28,674.674 INFO    ] Launching Daemon at Mon Aug 31 11:57:28 IST 2026
[2026-08-31 11:57:28,685.685 INFO    ] ================================================
[2026-08-31 11:57:29,255.255 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:57:29
[2026-08-31 11:57:29,852.852 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:57:30,112.112 INFO    ] Initializing speech engine...
[2026-08-31 11:57:30,128.128 INFO    ] 2026-08-31 11:57:30
[2026-08-31 11:57:30,412.412 INFO    ] 2026-08-31 11:57:30
[2026-08-31 11:57:30,450.450 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:57:30,734.734 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:57:30,744.744 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:57:30,985.985 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:57:31,035.035 INFO    ] time= 31/08/2026 11:57:30
[2026-08-31 11:57:31,044.044 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:57:31,061.061 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:57:31,178.178 INFO    ] No existing commands found in stream
[2026-08-31 11:57:36,214.214 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:57:36,217.217 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-08-31 11:57:38,307.307 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 11:57:38,310.310 INFO    ] Checking for system updates...
[2026-08-31 11:57:38,350.350 INFO    ] 200
[2026-08-31 11:57:38,352.352 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:57:38,405.405 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:57:38,407.407 INFO    ] No update needed
[2026-08-31 11:57:38,410.410 INFO    ] Checking for camera pi updates...
[2026-08-31 11:57:38,444.444 INFO    ] 200
[2026-08-31 11:57:38,446.446 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:57:38,488.488 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:57:38,576.576 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:57:38,579.579 INFO    ] No camera update needed
[2026-08-31 11:57:38,581.581 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:57:38,583.583 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:57:38,589.589 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:57:38,594.594 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:57:40,634.634 INFO    ] ================================================
[2026-08-31 11:57:40,649.649 INFO    ] Launching Daemon at Mon Aug 31 11:57:40 IST 2026
[2026-08-31 11:57:40,660.660 INFO    ] ================================================
[2026-08-31 11:57:41,243.243 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:57:41
[2026-08-31 11:57:41,841.841 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:57:42,098.098 INFO    ] Initializing speech engine...
[2026-08-31 11:57:42,107.107 INFO    ] 2026-08-31 11:57:42
[2026-08-31 11:57:42,400.400 INFO    ] 2026-08-31 11:57:42
[2026-08-31 11:57:42,438.438 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:57:42,635.635 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:57:42,648.648 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:57:42,979.979 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:57:43,023.023 INFO    ] time= 31/08/2026 11:57:42
[2026-08-31 11:57:43,030.030 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:57:43,048.048 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:57:43,193.193 INFO    ] No existing commands found in stream
[2026-08-31 11:57:48,209.209 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:57:48,211.211 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-08-31 11:57:51,369.369 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 11:57:51,372.372 INFO    ] Checking for system updates...
[2026-08-31 11:57:51,408.408 INFO    ] 200
[2026-08-31 11:57:51,410.410 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:57:51,468.468 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:57:51,471.471 INFO    ] No update needed
[2026-08-31 11:57:51,473.473 INFO    ] Checking for camera pi updates...
[2026-08-31 11:57:51,506.506 INFO    ] 200
[2026-08-31 11:57:51,509.509 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:57:51,553.553 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:57:51,638.638 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:57:51,640.640 INFO    ] No camera update needed
[2026-08-31 11:57:51,643.643 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:57:51,645.645 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:57:51,651.651 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:57:51,655.655 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:57:53,696.696 INFO    ] ================================================
[2026-08-31 11:57:53,712.712 INFO    ] Launching Daemon at Mon Aug 31 11:57:53 IST 2026
[2026-08-31 11:57:53,723.723 INFO    ] ================================================
[2026-08-31 11:57:54,302.302 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:57:54
[2026-08-31 11:57:54,900.900 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:57:55,157.157 INFO    ] Initializing speech engine...
[2026-08-31 11:57:55,164.164 INFO    ] 2026-08-31 11:57:55
[2026-08-31 11:57:55,458.458 INFO    ] 2026-08-31 11:57:55
[2026-08-31 11:57:55,497.497 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:57:55,719.719 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:57:55,780.780 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:57:55,936.936 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:57:55,999.999 INFO    ] time= 31/08/2026 11:57:55
[2026-08-31 11:57:56,051.051 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:57:56,058.058 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:57:56,201.201 INFO    ] No existing commands found in stream
[2026-08-31 11:58:01,215.215 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:58:01,218.218 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-08-31 11:58:04,228.228 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 11:58:04,231.231 INFO    ] Checking for system updates...
[2026-08-31 11:58:04,267.267 INFO    ] 200
[2026-08-31 11:58:04,269.269 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:58:04,323.323 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:58:04,325.325 INFO    ] No update needed
[2026-08-31 11:58:04,328.328 INFO    ] Checking for camera pi updates...
[2026-08-31 11:58:04,366.366 INFO    ] 200
[2026-08-31 11:58:04,368.368 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:58:04,408.408 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:58:04,495.495 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:58:04,497.497 INFO    ] No camera update needed
[2026-08-31 11:58:04,500.500 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:58:04,502.502 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:58:04,508.508 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:58:04,513.513 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:58:06,554.554 INFO    ] ================================================
[2026-08-31 11:58:06,570.570 INFO    ] Launching Daemon at Mon Aug 31 11:58:06 IST 2026
[2026-08-31 11:58:06,582.582 INFO    ] ================================================
[2026-08-31 11:58:07,179.179 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:58:07
[2026-08-31 11:58:07,774.774 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:58:08,051.051 INFO    ] Initializing speech engine...
[2026-08-31 11:58:08,058.058 INFO    ] 2026-08-31 11:58:08
[2026-08-31 11:58:08,320.320 INFO    ] 2026-08-31 11:58:08
[2026-08-31 11:58:08,373.373 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:58:08,599.599 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:58:08,604.604 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:58:08,828.828 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:58:08,863.863 INFO    ] time= 31/08/2026 11:58:08
[2026-08-31 11:58:08,878.878 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:58:08,887.887 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:58:08,982.982 INFO    ] No existing commands found in stream
[2026-08-31 11:58:14,009.009 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:58:14,012.012 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-08-31 11:58:17,288.288 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 11:58:17,290.290 INFO    ] Checking for system updates...
[2026-08-31 11:58:17,326.326 INFO    ] 200
[2026-08-31 11:58:17,329.329 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:58:17,381.381 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:58:17,384.384 INFO    ] No update needed
[2026-08-31 11:58:17,386.386 INFO    ] Checking for camera pi updates...
[2026-08-31 11:58:17,420.420 INFO    ] 200
[2026-08-31 11:58:17,422.422 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:58:17,467.467 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:58:17,572.572 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:58:17,574.574 INFO    ] No camera update needed
[2026-08-31 11:58:17,577.577 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:58:17,579.579 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:58:17,584.584 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:58:17,589.589 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:58:19,631.631 INFO    ] ================================================
[2026-08-31 11:58:19,647.647 INFO    ] Launching Daemon at Mon Aug 31 11:58:19 IST 2026
[2026-08-31 11:58:19,658.658 INFO    ] ================================================
[2026-08-31 11:58:20,228.228 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:58:20
[2026-08-31 11:58:20,812.812 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:58:21,083.083 INFO    ] Initializing speech engine...
[2026-08-31 11:58:21,093.093 INFO    ] 2026-08-31 11:58:21
[2026-08-31 11:58:21,344.344 INFO    ] 2026-08-31 11:58:21
[2026-08-31 11:58:21,379.379 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:58:21,636.636 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:58:21,646.646 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:58:21,783.783 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:58:21,848.848 INFO    ] time= 31/08/2026 11:58:21
[2026-08-31 11:58:21,897.897 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:58:21,919.919 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:58:22,070.070 INFO    ] No existing commands found in stream
[2026-08-31 11:58:27,085.085 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:58:27,088.088 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-08-31 11:58:31,507.507 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 11:58:31,510.510 INFO    ] Checking for system updates...
[2026-08-31 11:58:31,546.546 INFO    ] 200
[2026-08-31 11:58:31,548.548 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:58:31,601.601 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:58:31,603.603 INFO    ] No update needed
[2026-08-31 11:58:31,605.605 INFO    ] Checking for camera pi updates...
[2026-08-31 11:58:31,639.639 INFO    ] 200
[2026-08-31 11:58:31,641.641 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:58:31,689.689 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:58:31,748.748 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:58:31,750.750 INFO    ] No camera update needed
[2026-08-31 11:58:31,752.752 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:58:31,755.755 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:58:31,760.760 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:58:31,765.765 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:58:33,806.806 INFO    ] ================================================
[2026-08-31 11:58:33,822.822 INFO    ] Launching Daemon at Mon Aug 31 11:58:33 IST 2026
[2026-08-31 11:58:33,833.833 INFO    ] ================================================
[2026-08-31 11:58:34,396.396 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:58:34
[2026-08-31 11:58:34,978.978 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:58:35,244.244 INFO    ] Initializing speech engine...
[2026-08-31 11:58:35,253.253 INFO    ] 2026-08-31 11:58:35
[2026-08-31 11:58:35,498.498 INFO    ] 2026-08-31 11:58:35
[2026-08-31 11:58:35,562.562 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:58:35,784.784 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:58:35,794.794 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:58:36,049.049 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:58:36,066.066 INFO    ] time= 31/08/2026 11:58:36
[2026-08-31 11:58:36,089.089 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:58:36,102.102 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:58:36,230.230 INFO    ] No existing commands found in stream
[2026-08-31 11:58:41,255.255 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:58:41,257.257 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-08-31 11:58:41,896.896 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 11:58:41,899.899 INFO    ] Checking for system updates...
[2026-08-31 11:58:41,937.937 INFO    ] 200
[2026-08-31 11:58:41,940.940 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:58:41,997.997 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:58:41,999.999 INFO    ] No update needed
[2026-08-31 11:58:42,002.002 INFO    ] Checking for camera pi updates...
[2026-08-31 11:58:42,035.035 INFO    ] 200
[2026-08-31 11:58:42,037.037 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:58:42,077.077 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:58:42,169.169 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:58:42,172.172 INFO    ] No camera update needed
[2026-08-31 11:58:42,174.174 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:58:42,176.176 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:58:42,182.182 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:58:42,187.187 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:58:44,228.228 INFO    ] ================================================
[2026-08-31 11:58:44,243.243 INFO    ] Launching Daemon at Mon Aug 31 11:58:44 IST 2026
[2026-08-31 11:58:44,254.254 INFO    ] ================================================
[2026-08-31 11:58:44,834.834 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:58:44
[2026-08-31 11:58:45,432.432 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:58:45,708.708 INFO    ] Initializing speech engine...
[2026-08-31 11:58:45,717.717 INFO    ] 2026-08-31 11:58:45
[2026-08-31 11:58:45,976.976 INFO    ] 2026-08-31 11:58:45
[2026-08-31 11:58:46,030.030 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:58:46,281.281 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:58:46,286.286 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:58:46,530.530 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:58:46,539.539 INFO    ] time= 31/08/2026 11:58:46
[2026-08-31 11:58:46,566.566 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:58:46,573.573 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:58:46,675.675 INFO    ] No existing commands found in stream
[2026-08-31 11:58:51,696.696 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:58:51,699.699 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-08-31 11:58:55,431.431 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 11:58:55,434.434 INFO    ] Checking for system updates...
[2026-08-31 11:58:55,473.473 INFO    ] 200
[2026-08-31 11:58:55,475.475 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:58:55,527.527 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:58:55,530.530 INFO    ] No update needed
[2026-08-31 11:58:55,532.532 INFO    ] Checking for camera pi updates...
[2026-08-31 11:58:55,569.569 INFO    ] 200
[2026-08-31 11:58:55,571.571 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:58:55,612.612 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:58:55,699.699 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:58:55,701.701 INFO    ] No camera update needed
[2026-08-31 11:58:55,704.704 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:58:55,706.706 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:58:55,712.712 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:58:55,717.717 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:58:57,757.757 INFO    ] ================================================
[2026-08-31 11:58:57,773.773 INFO    ] Launching Daemon at Mon Aug 31 11:58:57 IST 2026
[2026-08-31 11:58:57,784.784 INFO    ] ================================================
[2026-08-31 11:58:58,373.373 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:58:58
[2026-08-31 11:58:58,969.969 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:58:59,244.244 INFO    ] Initializing speech engine...
[2026-08-31 11:58:59,253.253 INFO    ] 2026-08-31 11:58:59
[2026-08-31 11:58:59,510.510 INFO    ] 2026-08-31 11:58:59
[2026-08-31 11:58:59,540.540 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:58:59,809.809 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:58:59,816.816 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:59:00,046.046 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:59:00,053.053 INFO    ] time= 31/08/2026 11:59:00
[2026-08-31 11:59:00,070.070 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:59:00,093.093 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:59:00,293.293 INFO    ] No existing commands found in stream
[2026-08-31 11:59:05,311.311 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:59:05,314.314 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-08-31 11:59:09,488.488 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 11:59:09,491.491 INFO    ] Checking for system updates...
[2026-08-31 11:59:09,531.531 INFO    ] 200
[2026-08-31 11:59:09,534.534 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:59:09,586.586 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:59:09,589.589 INFO    ] No update needed
[2026-08-31 11:59:09,591.591 INFO    ] Checking for camera pi updates...
[2026-08-31 11:59:09,629.629 INFO    ] 200
[2026-08-31 11:59:09,632.632 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:59:09,672.672 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:59:09,752.752 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:59:09,755.755 INFO    ] No camera update needed
[2026-08-31 11:59:09,757.757 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:59:09,760.760 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:59:09,765.765 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:59:09,770.770 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:59:11,810.810 INFO    ] ================================================
[2026-08-31 11:59:11,826.826 INFO    ] Launching Daemon at Mon Aug 31 11:59:11 IST 2026
[2026-08-31 11:59:11,837.837 INFO    ] ================================================
[2026-08-31 11:59:12,496.496 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:59:12
[2026-08-31 11:59:13,101.101 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:59:13,348.348 INFO    ] Initializing speech engine...
[2026-08-31 11:59:13,369.369 INFO    ] 2026-08-31 11:59:13
[2026-08-31 11:59:13,627.627 INFO    ] 2026-08-31 11:59:13
[2026-08-31 11:59:13,662.662 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:59:13,919.919 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:59:13,928.928 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:59:14,188.188 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:59:14,195.195 INFO    ] time= 31/08/2026 11:59:14
[2026-08-31 11:59:14,212.212 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:59:14,236.236 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:59:14,345.345 INFO    ] No existing commands found in stream
[2026-08-31 11:59:19,362.362 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:59:19,365.365 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-08-31 11:59:20,010.010 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 11:59:20,012.012 INFO    ] Checking for system updates...
[2026-08-31 11:59:20,052.052 INFO    ] 200
[2026-08-31 11:59:20,055.055 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:59:20,114.114 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:59:20,116.116 INFO    ] No update needed
[2026-08-31 11:59:20,119.119 INFO    ] Checking for camera pi updates...
[2026-08-31 11:59:20,152.152 INFO    ] 200
[2026-08-31 11:59:20,155.155 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:59:20,194.194 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:59:20,276.276 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:59:20,278.278 INFO    ] No camera update needed
[2026-08-31 11:59:20,281.281 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:59:20,283.283 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:59:20,288.288 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:59:20,293.293 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:59:22,340.340 INFO    ] ================================================
[2026-08-31 11:59:22,364.364 INFO    ] Launching Daemon at Mon Aug 31 11:59:22 IST 2026
[2026-08-31 11:59:22,378.378 INFO    ] ================================================
[2026-08-31 11:59:22,946.946 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:59:22
[2026-08-31 11:59:23,527.527 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:59:23,793.793 INFO    ] Initializing speech engine...
[2026-08-31 11:59:23,803.803 INFO    ] 2026-08-31 11:59:23
[2026-08-31 11:59:24,049.049 INFO    ] 2026-08-31 11:59:24
[2026-08-31 11:59:24,112.112 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:59:24,361.361 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:59:24,365.365 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:59:24,593.593 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:59:24,600.600 INFO    ] time= 31/08/2026 11:59:24
[2026-08-31 11:59:24,619.619 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:59:24,649.649 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:59:24,753.753 INFO    ] No existing commands found in stream
[2026-08-31 11:59:29,768.768 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:59:29,771.771 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-08-31 11:59:31,847.847 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 11:59:31,850.850 INFO    ] Checking for system updates...
[2026-08-31 11:59:31,885.885 INFO    ] 200
[2026-08-31 11:59:31,888.888 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:59:31,944.944 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:59:31,951.951 INFO    ] No update needed
[2026-08-31 11:59:31,954.954 INFO    ] Checking for camera pi updates...
[2026-08-31 11:59:31,994.994 INFO    ] 200
[2026-08-31 11:59:31,996.996 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:59:32,046.046 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:59:32,211.211 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:59:32,213.213 INFO    ] No camera update needed
[2026-08-31 11:59:32,216.216 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:59:32,219.219 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:59:32,225.225 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:59:32,232.232 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:59:34,276.276 INFO    ] ================================================
[2026-08-31 11:59:34,292.292 INFO    ] Launching Daemon at Mon Aug 31 11:59:34 IST 2026
[2026-08-31 11:59:34,303.303 INFO    ] ================================================
[2026-08-31 11:59:34,871.871 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:59:34
[2026-08-31 11:59:35,456.456 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:59:35,712.712 INFO    ] Initializing speech engine...
[2026-08-31 11:59:35,721.721 INFO    ] 2026-08-31 11:59:35
[2026-08-31 11:59:36,017.017 INFO    ] 2026-08-31 11:59:35
[2026-08-31 11:59:36,053.053 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:59:36,267.267 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:59:36,288.288 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:59:36,433.433 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:59:36,446.446 INFO    ] time= 31/08/2026 11:59:36
[2026-08-31 11:59:36,456.456 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:59:36,517.517 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:59:36,630.630 INFO    ] No existing commands found in stream
[2026-08-31 11:59:41,656.656 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:59:41,659.659 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-08-31 11:59:44,520.520 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 11:59:44,523.523 INFO    ] Checking for system updates...
[2026-08-31 11:59:44,559.559 INFO    ] 200
[2026-08-31 11:59:44,561.561 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:59:44,621.621 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 11:59:44,623.623 INFO    ] No update needed
[2026-08-31 11:59:44,625.625 INFO    ] Checking for camera pi updates...
[2026-08-31 11:59:44,664.664 INFO    ] 200
[2026-08-31 11:59:44,666.666 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:59:44,712.712 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:59:44,817.817 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:59:44,820.820 INFO    ] No camera update needed
[2026-08-31 11:59:44,822.822 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:59:44,825.825 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:59:44,830.830 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:59:44,836.836 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 11:59:46,878.878 INFO    ] ================================================
[2026-08-31 11:59:46,893.893 INFO    ] Launching Daemon at Mon Aug 31 11:59:46 IST 2026
[2026-08-31 11:59:46,904.904 INFO    ] ================================================
[2026-08-31 11:59:47,565.565 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 11:59:47
[2026-08-31 11:59:48,244.244 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 11:59:48,543.543 INFO    ] Initializing speech engine...
[2026-08-31 11:59:48,553.553 INFO    ] 2026-08-31 11:59:48
[2026-08-31 11:59:48,833.833 INFO    ] 2026-08-31 11:59:48
[2026-08-31 11:59:48,893.893 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 11:59:49,146.146 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 11:59:49,156.156 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 11:59:49,426.426 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 11:59:49,449.449 INFO    ] time= 31/08/2026 11:59:49
[2026-08-31 11:59:49,462.462 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 11:59:49,478.478 INFO    ] Checking for existing commands in stream...
[2026-08-31 11:59:49,596.596 INFO    ] No existing commands found in stream
[2026-08-31 11:59:54,629.629 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 11:59:54,632.632 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-08-31 11:59:58,212.212 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 11:59:58,214.214 INFO    ] Checking for system updates...
[2026-08-31 11:59:58,251.251 INFO    ] 200
[2026-08-31 11:59:58,254.254 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:59:58,315.315 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:59:58,319.319 INFO    ] No update needed
[2026-08-31 11:59:58,323.323 INFO    ] Checking for camera pi updates...
[2026-08-31 11:59:58,359.359 INFO    ] 200
[2026-08-31 11:59:58,362.362 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 11:59:58,408.408 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 11:59:58,491.491 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 11:59:58,494.494 INFO    ] No camera update needed
[2026-08-31 11:59:58,496.496 INFO    ] Script finished. Safe exiting...
[2026-08-31 11:59:58,499.499 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 11:59:58,504.504 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 11:59:58,509.509 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:00:00,551.551 INFO    ] ================================================
[2026-08-31 12:00:00,566.566 INFO    ] Launching Daemon at Mon Aug 31 12:00:00 IST 2026
[2026-08-31 12:00:00,576.576 INFO    ] ================================================
[2026-08-31 12:00:01,168.168 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:00:01
[2026-08-31 12:00:01,768.768 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:00:02,229.229 INFO    ] Initializing speech engine...
[2026-08-31 12:00:02,238.238 INFO    ] 2026-08-31 12:00:02
[2026-08-31 12:00:03,223.223 INFO    ] 2026-08-31 12:00:03
[2026-08-31 12:00:03,469.469 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:00:03,880.880 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:00:03,883.883 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:00:04,259.259 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:00:04,263.263 INFO    ] time= 31/08/2026 12:00:04
[2026-08-31 12:00:04,266.266 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:00:04,319.319 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:00:04,444.444 INFO    ] No existing commands found in stream
[2026-08-31 12:00:09,454.454 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:00:09,457.457 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-08-31 12:00:10,907.907 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 12:00:10,910.910 INFO    ] Checking for system updates...
[2026-08-31 12:00:10,945.945 INFO    ] 200
[2026-08-31 12:00:10,948.948 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:00:11,000.000 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:00:11,003.003 INFO    ] No update needed
[2026-08-31 12:00:11,005.005 INFO    ] Checking for camera pi updates...
[2026-08-31 12:00:11,038.038 INFO    ] 200
[2026-08-31 12:00:11,041.041 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:00:11,089.089 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:00:11,146.146 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:00:11,149.149 INFO    ] No camera update needed
[2026-08-31 12:00:11,151.151 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:00:11,154.154 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:00:11,159.159 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:00:11,164.164 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:00:13,204.204 INFO    ] ================================================
[2026-08-31 12:00:13,219.219 INFO    ] Launching Daemon at Mon Aug 31 12:00:13 IST 2026
[2026-08-31 12:00:13,230.230 INFO    ] ================================================
[2026-08-31 12:00:13,796.796 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:00:13
[2026-08-31 12:00:14,376.376 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:00:14,646.646 INFO    ] Initializing speech engine...
[2026-08-31 12:00:14,655.655 INFO    ] 2026-08-31 12:00:14
[2026-08-31 12:00:14,904.904 INFO    ] 2026-08-31 12:00:14
[2026-08-31 12:00:14,940.940 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:00:15,137.137 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:00:15,144.144 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:00:15,343.343 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:00:15,384.384 INFO    ] time= 31/08/2026 12:00:15
[2026-08-31 12:00:15,443.443 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:00:15,478.478 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:00:15,630.630 INFO    ] No existing commands found in stream
[2026-08-31 12:00:20,645.645 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:00:20,648.648 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-08-31 12:00:21,327.327 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 12:00:21,330.330 INFO    ] Checking for system updates...
[2026-08-31 12:00:21,368.368 INFO    ] 200
[2026-08-31 12:00:21,371.371 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:00:21,422.422 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:00:21,425.425 INFO    ] No update needed
[2026-08-31 12:00:21,427.427 INFO    ] Checking for camera pi updates...
[2026-08-31 12:00:21,463.463 INFO    ] 200
[2026-08-31 12:00:21,466.466 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:00:21,508.508 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:00:21,592.592 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:00:21,594.594 INFO    ] No camera update needed
[2026-08-31 12:00:21,597.597 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:00:21,599.599 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:00:21,604.604 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:00:21,609.609 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:00:23,651.651 INFO    ] ================================================
[2026-08-31 12:00:23,666.666 INFO    ] Launching Daemon at Mon Aug 31 12:00:23 IST 2026
[2026-08-31 12:00:23,677.677 INFO    ] ================================================
[2026-08-31 12:00:24,320.320 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:00:24
[2026-08-31 12:00:24,981.981 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:00:25,279.279 INFO    ] Initializing speech engine...
[2026-08-31 12:00:25,289.289 INFO    ] 2026-08-31 12:00:25
[2026-08-31 12:00:25,562.562 INFO    ] 2026-08-31 12:00:25
[2026-08-31 12:00:25,620.620 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:00:25,848.848 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:00:25,854.854 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:00:26,088.088 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:00:26,112.112 INFO    ] time= 31/08/2026 12:00:26
[2026-08-31 12:00:26,131.131 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:00:26,151.151 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:00:26,317.317 INFO    ] No existing commands found in stream
[2026-08-31 12:00:31,348.348 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:00:31,351.351 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-08-31 12:00:33,570.570 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 12:00:33,573.573 INFO    ] Checking for system updates...
[2026-08-31 12:00:33,623.623 INFO    ] 200
[2026-08-31 12:00:33,627.627 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:00:33,697.697 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:00:33,701.701 INFO    ] No update needed
[2026-08-31 12:00:33,704.704 INFO    ] Checking for camera pi updates...
[2026-08-31 12:00:33,747.747 INFO    ] 200
[2026-08-31 12:00:33,750.750 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:00:33,791.791 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:00:33,889.889 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:00:33,891.891 INFO    ] No camera update needed
[2026-08-31 12:00:33,893.893 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:00:33,896.896 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:00:33,901.901 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:00:33,906.906 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:00:35,947.947 INFO    ] ================================================
[2026-08-31 12:00:35,961.961 INFO    ] Launching Daemon at Mon Aug 31 12:00:35 IST 2026
[2026-08-31 12:00:35,972.972 INFO    ] ================================================
[2026-08-31 12:00:36,555.555 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:00:36
[2026-08-31 12:00:37,156.156 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:00:37,430.430 INFO    ] Initializing speech engine...
[2026-08-31 12:00:37,441.441 INFO    ] 2026-08-31 12:00:37
[2026-08-31 12:00:37,702.702 INFO    ] 2026-08-31 12:00:37
[2026-08-31 12:00:37,755.755 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:00:38,005.005 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:00:38,010.010 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:00:38,199.199 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:00:38,243.243 INFO    ] time= 31/08/2026 12:00:38
[2026-08-31 12:00:38,250.250 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:00:38,265.265 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:00:38,399.399 INFO    ] No existing commands found in stream
[2026-08-31 12:00:43,422.422 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:00:43,425.425 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-08-31 12:00:46,283.283 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 12:00:46,285.285 INFO    ] Checking for system updates...
[2026-08-31 12:00:46,321.321 INFO    ] 200
[2026-08-31 12:00:46,324.324 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:00:46,375.375 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:00:46,378.378 INFO    ] No update needed
[2026-08-31 12:00:46,381.381 INFO    ] Checking for camera pi updates...
[2026-08-31 12:00:46,414.414 INFO    ] 200
[2026-08-31 12:00:46,417.417 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:00:46,459.459 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:00:46,549.549 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:00:46,552.552 INFO    ] No camera update needed
[2026-08-31 12:00:46,554.554 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:00:46,556.556 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:00:46,562.562 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:00:46,567.567 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:00:48,609.609 INFO    ] ================================================
[2026-08-31 12:00:48,624.624 INFO    ] Launching Daemon at Mon Aug 31 12:00:48 IST 2026
[2026-08-31 12:00:48,635.635 INFO    ] ================================================
[2026-08-31 12:00:49,215.215 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:00:49
[2026-08-31 12:00:49,812.812 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:00:50,090.090 INFO    ] Initializing speech engine...
[2026-08-31 12:00:50,096.096 INFO    ] 2026-08-31 12:00:50
[2026-08-31 12:00:50,356.356 INFO    ] 2026-08-31 12:00:50
[2026-08-31 12:00:50,410.410 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:00:50,637.637 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:00:50,643.643 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:00:50,890.890 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:00:50,900.900 INFO    ] time= 31/08/2026 12:00:50
[2026-08-31 12:00:50,918.918 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:00:50,947.947 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:00:51,067.067 INFO    ] No existing commands found in stream
[2026-08-31 12:00:56,097.097 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:00:56,100.100 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-08-31 12:00:57,049.049 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 12:00:57,052.052 INFO    ] Checking for system updates...
[2026-08-31 12:00:57,088.088 INFO    ] 200
[2026-08-31 12:00:57,090.090 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:00:57,150.150 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:00:57,152.152 INFO    ] No update needed
[2026-08-31 12:00:57,154.154 INFO    ] Checking for camera pi updates...
[2026-08-31 12:00:57,192.192 INFO    ] 200
[2026-08-31 12:00:57,194.194 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:00:57,235.235 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:00:57,322.322 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:00:57,324.324 INFO    ] No camera update needed
[2026-08-31 12:00:57,327.327 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:00:57,329.329 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:00:57,334.334 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:00:57,340.340 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:00:59,379.379 INFO    ] ================================================
[2026-08-31 12:00:59,394.394 INFO    ] Launching Daemon at Mon Aug 31 12:00:59 IST 2026
[2026-08-31 12:00:59,404.404 INFO    ] ================================================
[2026-08-31 12:00:59,985.985 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:00:59
[2026-08-31 12:01:00,582.582 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:01:00,859.859 INFO    ] Initializing speech engine...
[2026-08-31 12:01:00,868.868 INFO    ] 2026-08-31 12:01:00
[2026-08-31 12:01:01,127.127 INFO    ] 2026-08-31 12:01:01
[2026-08-31 12:01:01,157.157 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:01:01,408.408 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:01:01,413.413 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:01:01,636.636 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:01:01,670.670 INFO    ] time= 31/08/2026 12:01:01
[2026-08-31 12:01:01,675.675 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:01:01,693.693 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:01:01,824.824 INFO    ] No existing commands found in stream
[2026-08-31 12:01:06,839.839 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:01:06,843.843 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-08-31 12:01:08,716.716 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 12:01:08,719.719 INFO    ] Checking for system updates...
[2026-08-31 12:01:08,754.754 INFO    ] 200
[2026-08-31 12:01:08,757.757 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:01:08,810.810 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:01:08,812.812 INFO    ] No update needed
[2026-08-31 12:01:08,815.815 INFO    ] Checking for camera pi updates...
[2026-08-31 12:01:08,848.848 INFO    ] 200
[2026-08-31 12:01:08,851.851 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:01:08,893.893 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:01:08,964.964 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:01:08,967.967 INFO    ] No camera update needed
[2026-08-31 12:01:08,969.969 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:01:08,972.972 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:01:08,977.977 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:01:08,982.982 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:01:11,024.024 INFO    ] ================================================
[2026-08-31 12:01:11,039.039 INFO    ] Launching Daemon at Mon Aug 31 12:01:11 IST 2026
[2026-08-31 12:01:11,050.050 INFO    ] ================================================
[2026-08-31 12:01:11,632.632 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:01:11
[2026-08-31 12:01:12,233.233 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:01:12,510.510 INFO    ] Initializing speech engine...
[2026-08-31 12:01:12,517.517 INFO    ] 2026-08-31 12:01:12
[2026-08-31 12:01:12,765.765 INFO    ] 2026-08-31 12:01:12
[2026-08-31 12:01:12,827.827 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:01:13,081.081 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:01:13,085.085 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:01:13,315.315 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:01:13,322.322 INFO    ] time= 31/08/2026 12:01:13
[2026-08-31 12:01:13,340.340 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:01:13,370.370 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:01:13,489.489 INFO    ] No existing commands found in stream
[2026-08-31 12:01:18,520.520 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:01:18,523.523 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-08-31 12:01:20,971.971 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 12:01:20,974.974 INFO    ] Checking for system updates...
[2026-08-31 12:01:21,009.009 INFO    ] 200
[2026-08-31 12:01:21,011.011 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:01:21,064.064 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:01:21,066.066 INFO    ] No update needed
[2026-08-31 12:01:21,069.069 INFO    ] Checking for camera pi updates...
[2026-08-31 12:01:21,103.103 INFO    ] 200
[2026-08-31 12:01:21,106.106 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:01:21,153.153 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:01:21,236.236 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:01:21,238.238 INFO    ] No camera update needed
[2026-08-31 12:01:21,241.241 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:01:21,243.243 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:01:21,249.249 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:01:21,254.254 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:01:23,294.294 INFO    ] ================================================
[2026-08-31 12:01:23,310.310 INFO    ] Launching Daemon at Mon Aug 31 12:01:23 IST 2026
[2026-08-31 12:01:23,320.320 INFO    ] ================================================
[2026-08-31 12:01:23,887.887 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:01:23
[2026-08-31 12:01:24,470.470 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:01:24,741.741 INFO    ] Initializing speech engine...
[2026-08-31 12:01:24,750.750 INFO    ] 2026-08-31 12:01:24
[2026-08-31 12:01:25,001.001 INFO    ] 2026-08-31 12:01:24
[2026-08-31 12:01:25,036.036 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:01:25,426.426 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:01:25,468.468 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:01:25,706.706 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:01:25,738.738 INFO    ] time= 31/08/2026 12:01:25
[2026-08-31 12:01:25,792.792 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:01:25,826.826 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:01:25,979.979 INFO    ] No existing commands found in stream
[2026-08-31 12:01:30,992.992 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:01:30,994.994 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-08-31 12:01:31,559.559 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 12:01:31,562.562 INFO    ] Checking for system updates...
[2026-08-31 12:01:31,602.602 INFO    ] 200
[2026-08-31 12:01:31,604.604 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:01:31,664.664 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:01:31,666.666 INFO    ] No update needed
[2026-08-31 12:01:31,669.669 INFO    ] Checking for camera pi updates...
[2026-08-31 12:01:31,702.702 INFO    ] 200
[2026-08-31 12:01:31,704.704 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:01:31,749.749 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:01:31,832.832 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:01:31,835.835 INFO    ] No camera update needed
[2026-08-31 12:01:31,837.837 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:01:31,839.839 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:01:31,845.845 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:01:31,850.850 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:01:33,891.891 INFO    ] ================================================
[2026-08-31 12:01:33,907.907 INFO    ] Launching Daemon at Mon Aug 31 12:01:33 IST 2026
[2026-08-31 12:01:33,918.918 INFO    ] ================================================
[2026-08-31 12:01:34,488.488 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:01:34
[2026-08-31 12:01:35,088.088 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:01:35,339.339 INFO    ] Initializing speech engine...
[2026-08-31 12:01:35,358.358 INFO    ] 2026-08-31 12:01:35
[2026-08-31 12:01:35,619.619 INFO    ] 2026-08-31 12:01:35
[2026-08-31 12:01:35,655.655 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:01:35,913.913 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:01:35,923.923 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:01:36,134.134 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:01:36,190.190 INFO    ] time= 31/08/2026 12:01:36
[2026-08-31 12:01:36,196.196 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:01:36,212.212 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:01:36,332.332 INFO    ] No existing commands found in stream
[2026-08-31 12:01:41,357.357 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:01:41,360.360 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-08-31 12:01:45,616.616 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 12:01:45,619.619 INFO    ] Checking for system updates...
[2026-08-31 12:01:45,659.659 INFO    ] 200
[2026-08-31 12:01:45,661.661 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:01:45,714.714 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:01:45,717.717 INFO    ] No update needed
[2026-08-31 12:01:45,720.720 INFO    ] Checking for camera pi updates...
[2026-08-31 12:01:45,755.755 INFO    ] 200
[2026-08-31 12:01:45,758.758 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:01:45,800.800 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:01:45,979.979 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:01:45,982.982 INFO    ] No camera update needed
[2026-08-31 12:01:45,985.985 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:01:45,988.988 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:01:45,994.994 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:01:46,000.000 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:01:48,042.042 INFO    ] ================================================
[2026-08-31 12:01:48,057.057 INFO    ] Launching Daemon at Mon Aug 31 12:01:48 IST 2026
[2026-08-31 12:01:48,068.068 INFO    ] ================================================
[2026-08-31 12:01:48,732.732 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:01:48
[2026-08-31 12:01:49,417.417 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:01:49,725.725 INFO    ] Initializing speech engine...
[2026-08-31 12:01:49,734.734 INFO    ] 2026-08-31 12:01:49
[2026-08-31 12:01:50,036.036 INFO    ] 2026-08-31 12:01:50
[2026-08-31 12:01:50,076.076 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:01:50,308.308 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:01:50,332.332 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:01:50,575.575 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:01:50,597.597 INFO    ] time= 31/08/2026 12:01:50
[2026-08-31 12:01:50,608.608 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:01:50,634.634 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:01:50,743.743 INFO    ] No existing commands found in stream
[2026-08-31 12:01:55,758.758 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:01:55,761.761 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-08-31 12:01:59,396.396 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 12:01:59,399.399 INFO    ] Checking for system updates...
[2026-08-31 12:01:59,436.436 INFO    ] 200
[2026-08-31 12:01:59,439.439 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:01:59,492.492 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:01:59,495.495 INFO    ] No update needed
[2026-08-31 12:01:59,498.498 INFO    ] Checking for camera pi updates...
[2026-08-31 12:01:59,536.536 INFO    ] 200
[2026-08-31 12:01:59,539.539 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:01:59,581.581 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:01:59,666.666 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:01:59,669.669 INFO    ] No camera update needed
[2026-08-31 12:01:59,672.672 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:01:59,674.674 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:01:59,680.680 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:01:59,686.686 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:02:01,729.729 INFO    ] ================================================
[2026-08-31 12:02:01,743.743 INFO    ] Launching Daemon at Mon Aug 31 12:02:01 IST 2026
[2026-08-31 12:02:01,754.754 INFO    ] ================================================
[2026-08-31 12:02:02,463.463 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:02:02
[2026-08-31 12:02:03,121.121 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:02:03,478.478 INFO    ] Initializing speech engine...
[2026-08-31 12:02:03,496.496 INFO    ] 2026-08-31 12:02:03
[2026-08-31 12:02:03,797.797 INFO    ] 2026-08-31 12:02:03
[2026-08-31 12:02:03,861.861 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:02:04,276.276 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:02:04,332.332 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:02:04,738.738 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:02:04,793.793 INFO    ] time= 31/08/2026 12:02:04
[2026-08-31 12:02:04,824.824 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:02:04,848.848 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:02:04,985.985 INFO    ] No existing commands found in stream
[2026-08-31 12:02:09,999.999 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:02:10,002.002 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-08-31 12:02:13,333.333 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 12:02:13,336.336 INFO    ] Checking for system updates...
[2026-08-31 12:02:13,376.376 INFO    ] 200
[2026-08-31 12:02:13,379.379 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:02:13,433.433 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:02:13,436.436 INFO    ] No update needed
[2026-08-31 12:02:13,439.439 INFO    ] Checking for camera pi updates...
[2026-08-31 12:02:13,474.474 INFO    ] 200
[2026-08-31 12:02:13,477.477 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:02:13,519.519 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:02:13,648.648 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:02:13,651.651 INFO    ] No camera update needed
[2026-08-31 12:02:13,653.653 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:02:13,656.656 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:02:13,662.662 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:02:13,668.668 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:02:15,710.710 INFO    ] ================================================
[2026-08-31 12:02:15,726.726 INFO    ] Launching Daemon at Mon Aug 31 12:02:15 IST 2026
[2026-08-31 12:02:15,737.737 INFO    ] ================================================
[2026-08-31 12:02:16,308.308 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:02:16
[2026-08-31 12:02:16,896.896 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:02:17,151.151 INFO    ] Initializing speech engine...
[2026-08-31 12:02:17,157.157 INFO    ] 2026-08-31 12:02:17
[2026-08-31 12:02:17,458.458 INFO    ] 2026-08-31 12:02:17
[2026-08-31 12:02:17,496.496 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:02:17,721.721 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:02:17,786.786 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:02:18,078.078 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:02:18,085.085 INFO    ] time= 31/08/2026 12:02:18
[2026-08-31 12:02:18,102.102 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:02:18,133.133 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:02:18,238.238 INFO    ] No existing commands found in stream
[2026-08-31 12:02:23,265.265 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:02:23,268.268 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-08-31 12:02:25,108.108 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 12:02:25,110.110 INFO    ] Checking for system updates...
[2026-08-31 12:02:25,145.145 INFO    ] 200
[2026-08-31 12:02:25,148.148 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:02:25,201.201 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:02:25,203.203 INFO    ] No update needed
[2026-08-31 12:02:25,206.206 INFO    ] Checking for camera pi updates...
[2026-08-31 12:02:25,242.242 INFO    ] 200
[2026-08-31 12:02:25,244.244 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:02:25,284.284 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:02:25,344.344 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:02:25,346.346 INFO    ] No camera update needed
[2026-08-31 12:02:25,348.348 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:02:25,351.351 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:02:25,356.356 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:02:25,361.361 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:02:27,402.402 INFO    ] ================================================
[2026-08-31 12:02:27,417.417 INFO    ] Launching Daemon at Mon Aug 31 12:02:27 IST 2026
[2026-08-31 12:02:27,429.429 INFO    ] ================================================
[2026-08-31 12:02:28,072.072 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:02:28
[2026-08-31 12:02:28,734.734 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:02:29,035.035 INFO    ] Initializing speech engine...
[2026-08-31 12:02:29,050.050 INFO    ] 2026-08-31 12:02:29
[2026-08-31 12:02:29,363.363 INFO    ] 2026-08-31 12:02:29
[2026-08-31 12:02:29,449.449 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:02:29,663.663 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:02:29,671.671 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:02:29,904.904 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:02:29,915.915 INFO    ] time= 31/08/2026 12:02:29
[2026-08-31 12:02:29,924.924 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:02:29,960.960 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:02:30,085.085 INFO    ] No existing commands found in stream
[2026-08-31 12:02:35,122.122 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:02:35,125.125 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-08-31 12:02:36,635.635 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 12:02:36,638.638 INFO    ] Checking for system updates...
[2026-08-31 12:02:36,676.676 INFO    ] 200
[2026-08-31 12:02:36,679.679 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:02:36,739.739 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:02:36,742.742 INFO    ] No update needed
[2026-08-31 12:02:36,744.744 INFO    ] Checking for camera pi updates...
[2026-08-31 12:02:36,777.777 INFO    ] 200
[2026-08-31 12:02:36,780.780 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:02:36,826.826 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:02:36,909.909 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:02:36,912.912 INFO    ] No camera update needed
[2026-08-31 12:02:36,914.914 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:02:36,916.916 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:02:36,922.922 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:02:36,927.927 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:02:38,969.969 INFO    ] ================================================
[2026-08-31 12:02:38,985.985 INFO    ] Launching Daemon at Mon Aug 31 12:02:38 IST 2026
[2026-08-31 12:02:39,996.996 INFO    ] ================================================
[2026-08-31 12:02:39,645.645 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:02:39
[2026-08-31 12:02:40,372.372 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:02:40,673.673 INFO    ] Initializing speech engine...
[2026-08-31 12:02:40,687.687 INFO    ] 2026-08-31 12:02:40
[2026-08-31 12:02:40,969.969 INFO    ] 2026-08-31 12:02:40
[2026-08-31 12:02:41,014.014 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:02:41,242.242 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:02:41,247.247 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:02:41,507.507 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:02:41,528.528 INFO    ] time= 31/08/2026 12:02:41
[2026-08-31 12:02:41,555.555 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:02:41,565.565 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:02:41,665.665 INFO    ] No existing commands found in stream
[2026-08-31 12:02:46,691.691 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:02:46,694.694 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-08-31 12:02:47,564.564 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 12:02:47,567.567 INFO    ] Checking for system updates...
[2026-08-31 12:02:47,603.603 INFO    ] 200
[2026-08-31 12:02:47,606.606 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:02:47,658.658 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:02:47,660.660 INFO    ] No update needed
[2026-08-31 12:02:47,662.662 INFO    ] Checking for camera pi updates...
[2026-08-31 12:02:47,696.696 INFO    ] 200
[2026-08-31 12:02:47,699.699 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:02:47,739.739 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:02:47,848.848 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:02:47,850.850 INFO    ] No camera update needed
[2026-08-31 12:02:47,852.852 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:02:47,854.854 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:02:47,860.860 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:02:47,865.865 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:02:49,905.905 INFO    ] ================================================
[2026-08-31 12:02:49,921.921 INFO    ] Launching Daemon at Mon Aug 31 12:02:49 IST 2026
[2026-08-31 12:02:49,931.931 INFO    ] ================================================
[2026-08-31 12:02:50,510.510 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:02:50
[2026-08-31 12:02:51,111.111 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:02:51,386.386 INFO    ] Initializing speech engine...
[2026-08-31 12:02:51,395.395 INFO    ] 2026-08-31 12:02:51
[2026-08-31 12:02:51,643.643 INFO    ] 2026-08-31 12:02:51
[2026-08-31 12:02:51,671.671 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:02:51,893.893 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:02:51,899.899 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:02:52,265.265 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:02:52,309.309 INFO    ] time= 31/08/2026 12:02:52
[2026-08-31 12:02:52,315.315 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:02:52,333.333 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:02:52,779.779 INFO    ] No existing commands found in stream
[2026-08-31 12:02:57,799.799 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:02:57,801.801 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-08-31 12:03:01,669.669 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 12:03:01,673.673 INFO    ] Checking for system updates...
[2026-08-31 12:03:01,750.750 INFO    ] 200
[2026-08-31 12:03:01,753.753 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:03:01,850.850 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:03:01,853.853 INFO    ] No update needed
[2026-08-31 12:03:01,856.856 INFO    ] Checking for camera pi updates...
[2026-08-31 12:03:01,922.922 INFO    ] 200
[2026-08-31 12:03:01,925.925 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:03:02,011.011 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:03:02,087.087 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:03:02,090.090 INFO    ] No camera update needed
[2026-08-31 12:03:02,093.093 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:03:02,096.096 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:03:02,102.102 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:03:02,108.108 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:03:04,152.152 INFO    ] ================================================
[2026-08-31 12:03:04,168.168 INFO    ] Launching Daemon at Mon Aug 31 12:03:04 IST 2026
[2026-08-31 12:03:04,179.179 INFO    ] ================================================
[2026-08-31 12:03:04,757.757 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:03:04
[2026-08-31 12:03:05,370.370 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:03:05,629.629 INFO    ] Initializing speech engine...
[2026-08-31 12:03:05,634.634 INFO    ] 2026-08-31 12:03:05
[2026-08-31 12:03:05,929.929 INFO    ] 2026-08-31 12:03:05
[2026-08-31 12:03:05,963.963 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:03:09,222.222 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:03:09,224.224 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:03:11,217.217 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:03:11,220.220 INFO    ] time= 31/08/2026 12:03:11
[2026-08-31 12:03:11,223.223 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:03:11,225.225 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:03:13,183.183 INFO    ] No existing commands found in stream
[2026-08-31 12:03:18,192.192 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:03:18,195.195 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-08-31 12:03:25,641.641 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 12:03:25,643.643 INFO    ] Checking for system updates...
[2026-08-31 12:03:25,683.683 INFO    ] 200
[2026-08-31 12:03:25,686.686 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:03:25,751.751 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:03:25,754.754 INFO    ] No update needed
[2026-08-31 12:03:25,757.757 INFO    ] Checking for camera pi updates...
[2026-08-31 12:03:25,795.795 INFO    ] 200
[2026-08-31 12:03:25,798.798 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:03:25,844.844 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:03:25,930.930 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:03:25,932.932 INFO    ] No camera update needed
[2026-08-31 12:03:25,935.935 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:03:25,938.938 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:03:25,944.944 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:03:25,950.950 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:03:27,991.991 INFO    ] ================================================
[2026-08-31 12:03:28,007.007 INFO    ] Launching Daemon at Mon Aug 31 12:03:28 IST 2026
[2026-08-31 12:03:28,018.018 INFO    ] ================================================
[2026-08-31 12:03:28,585.585 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:03:28
[2026-08-31 12:03:29,169.169 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:03:29,418.418 INFO    ] Initializing speech engine...
[2026-08-31 12:03:29,432.432 INFO    ] 2026-08-31 12:03:29
[2026-08-31 12:03:29,730.730 INFO    ] 2026-08-31 12:03:29
[2026-08-31 12:03:29,766.766 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:03:30,427.427 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:03:30,473.473 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:03:30,988.988 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:03:30,994.994 INFO    ] time= 31/08/2026 12:03:30
[2026-08-31 12:03:30,997.997 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:03:30,999.999 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:03:31,441.441 INFO    ] No existing commands found in stream
[2026-08-31 12:03:36,451.451 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:03:36,454.454 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-08-31 12:03:39,525.525 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 12:03:39,528.528 INFO    ] Checking for system updates...
[2026-08-31 12:03:39,568.568 INFO    ] 200
[2026-08-31 12:03:39,571.571 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:03:39,631.631 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:03:39,633.633 INFO    ] No update needed
[2026-08-31 12:03:39,636.636 INFO    ] Checking for camera pi updates...
[2026-08-31 12:03:39,681.681 INFO    ] 200
[2026-08-31 12:03:39,684.684 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:03:39,725.725 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:03:39,825.825 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:03:39,828.828 INFO    ] No camera update needed
[2026-08-31 12:03:39,831.831 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:03:39,834.834 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:03:39,840.840 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:03:39,845.845 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:03:41,887.887 INFO    ] ================================================
[2026-08-31 12:03:41,903.903 INFO    ] Launching Daemon at Mon Aug 31 12:03:41 IST 2026
[2026-08-31 12:03:41,914.914 INFO    ] ================================================
[2026-08-31 12:03:42,495.495 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:03:42
[2026-08-31 12:03:43,092.092 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:03:43,369.369 INFO    ] Initializing speech engine...
[2026-08-31 12:03:43,377.377 INFO    ] 2026-08-31 12:03:43
[2026-08-31 12:03:43,648.648 INFO    ] 2026-08-31 12:03:43
[2026-08-31 12:03:43,691.691 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:03:43,909.909 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:03:43,919.919 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:03:44,123.123 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:03:44,168.168 INFO    ] time= 31/08/2026 12:03:44
[2026-08-31 12:03:44,182.182 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:03:44,200.200 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:03:44,310.310 INFO    ] No existing commands found in stream
[2026-08-31 12:03:49,335.335 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:03:49,338.338 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-08-31 12:03:53,655.655 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 12:03:53,658.658 INFO    ] Checking for system updates...
[2026-08-31 12:03:53,693.693 INFO    ] 200
[2026-08-31 12:03:53,696.696 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:03:53,754.754 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:03:53,756.756 INFO    ] No update needed
[2026-08-31 12:03:53,759.759 INFO    ] Checking for camera pi updates...
[2026-08-31 12:03:53,793.793 INFO    ] 200
[2026-08-31 12:03:53,796.796 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:03:53,836.836 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:03:54,026.026 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:03:54,029.029 INFO    ] No camera update needed
[2026-08-31 12:03:54,031.031 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:03:54,033.033 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:03:54,039.039 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:03:54,044.044 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:03:56,083.083 INFO    ] ================================================
[2026-08-31 12:03:56,099.099 INFO    ] Launching Daemon at Mon Aug 31 12:03:56 IST 2026
[2026-08-31 12:03:56,110.110 INFO    ] ================================================
[2026-08-31 12:03:56,728.728 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:03:56
[2026-08-31 12:03:57,313.313 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:03:57,583.583 INFO    ] Initializing speech engine...
[2026-08-31 12:03:57,603.603 INFO    ] 2026-08-31 12:03:57
[2026-08-31 12:03:57,869.869 INFO    ] 2026-08-31 12:03:57
[2026-08-31 12:03:57,905.905 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:03:58,137.137 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:03:58,189.189 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:03:58,444.444 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:03:58,456.456 INFO    ] time= 31/08/2026 12:03:58
[2026-08-31 12:03:58,473.473 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:03:58,491.491 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:03:58,633.633 INFO    ] No existing commands found in stream
[2026-08-31 12:04:03,658.658 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:04:03,661.661 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-08-31 12:04:05,840.840 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 12:04:05,843.843 INFO    ] Checking for system updates...
[2026-08-31 12:04:05,878.878 INFO    ] 200
[2026-08-31 12:04:05,881.881 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:04:05,937.937 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:04:05,940.940 INFO    ] No update needed
[2026-08-31 12:04:05,942.942 INFO    ] Checking for camera pi updates...
[2026-08-31 12:04:05,976.976 INFO    ] 200
[2026-08-31 12:04:05,978.978 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:04:06,019.019 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:04:06,102.102 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:04:06,104.104 INFO    ] No camera update needed
[2026-08-31 12:04:06,106.106 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:04:06,109.109 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:04:06,114.114 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:04:06,119.119 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:04:08,161.161 INFO    ] ================================================
[2026-08-31 12:04:08,176.176 INFO    ] Launching Daemon at Mon Aug 31 12:04:08 IST 2026
[2026-08-31 12:04:08,186.186 INFO    ] ================================================
[2026-08-31 12:04:08,829.829 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:04:08
[2026-08-31 12:04:09,444.444 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:04:09,721.721 INFO    ] Initializing speech engine...
[2026-08-31 12:04:09,730.730 INFO    ] 2026-08-31 12:04:09
[2026-08-31 12:04:09,989.989 INFO    ] 2026-08-31 12:04:09
[2026-08-31 12:04:10,042.042 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:04:10,264.264 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:04:10,275.275 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:04:10,482.482 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:04:10,527.527 INFO    ] time= 31/08/2026 12:04:10
[2026-08-31 12:04:10,537.537 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:04:10,555.555 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:04:10,713.713 INFO    ] No existing commands found in stream
[2026-08-31 12:04:15,744.744 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:04:15,747.747 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-08-31 12:04:17,476.476 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 12:04:17,479.479 INFO    ] Checking for system updates...
[2026-08-31 12:04:17,515.515 INFO    ] 200
[2026-08-31 12:04:17,518.518 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:04:17,569.569 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:04:17,572.572 INFO    ] No update needed
[2026-08-31 12:04:17,574.574 INFO    ] Checking for camera pi updates...
[2026-08-31 12:04:17,610.610 INFO    ] 200
[2026-08-31 12:04:17,612.612 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:04:17,653.653 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:04:17,769.769 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:04:17,772.772 INFO    ] No camera update needed
[2026-08-31 12:04:17,775.775 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:04:17,777.777 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:04:17,783.783 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:04:17,788.788 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:04:19,828.828 INFO    ] ================================================
[2026-08-31 12:04:19,843.843 INFO    ] Launching Daemon at Mon Aug 31 12:04:19 IST 2026
[2026-08-31 12:04:19,854.854 INFO    ] ================================================
[2026-08-31 12:04:20,439.439 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:04:20
[2026-08-31 12:04:21,037.037 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:04:21,310.310 INFO    ] Initializing speech engine...
[2026-08-31 12:04:21,320.320 INFO    ] 2026-08-31 12:04:21
[2026-08-31 12:04:21,568.568 INFO    ] 2026-08-31 12:04:21
[2026-08-31 12:04:21,604.604 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:04:21,863.863 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:04:21,868.868 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:04:22,083.083 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:04:22,125.125 INFO    ] time= 31/08/2026 12:04:22
[2026-08-31 12:04:22,131.131 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:04:22,148.148 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:04:22,278.278 INFO    ] No existing commands found in stream
[2026-08-31 12:04:27,292.292 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:04:27,294.294 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-08-31 12:04:28,243.243 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 12:04:28,246.246 INFO    ] Checking for system updates...
[2026-08-31 12:04:28,285.285 INFO    ] 200
[2026-08-31 12:04:28,287.287 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:04:28,345.345 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:04:28,348.348 INFO    ] No update needed
[2026-08-31 12:04:28,351.351 INFO    ] Checking for camera pi updates...
[2026-08-31 12:04:28,384.384 INFO    ] 200
[2026-08-31 12:04:28,386.386 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:04:28,427.427 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:04:28,485.485 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:04:28,488.488 INFO    ] No camera update needed
[2026-08-31 12:04:28,490.490 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:04:28,492.492 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:04:28,498.498 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:04:28,503.503 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:04:30,542.542 INFO    ] ================================================
[2026-08-31 12:04:30,557.557 INFO    ] Launching Daemon at Mon Aug 31 12:04:30 IST 2026
[2026-08-31 12:04:30,568.568 INFO    ] ================================================
[2026-08-31 12:04:31,220.220 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:04:31
[2026-08-31 12:04:31,864.864 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:04:32,153.153 INFO    ] Initializing speech engine...
[2026-08-31 12:04:32,161.161 INFO    ] 2026-08-31 12:04:32
[2026-08-31 12:04:32,423.423 INFO    ] 2026-08-31 12:04:32
[2026-08-31 12:04:32,490.490 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:04:32,739.739 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:04:32,745.745 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:04:32,996.996 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:04:33,004.004 INFO    ] time= 31/08/2026 12:04:32
[2026-08-31 12:04:33,024.024 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:04:33,051.051 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:04:33,180.180 INFO    ] No existing commands found in stream
[2026-08-31 12:04:38,205.205 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:04:38,208.208 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-08-31 12:04:39,723.723 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 12:04:39,726.726 INFO    ] Checking for system updates...
[2026-08-31 12:04:39,767.767 INFO    ] 200
[2026-08-31 12:04:39,770.770 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:04:39,830.830 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:04:39,833.833 INFO    ] No update needed
[2026-08-31 12:04:39,836.836 INFO    ] Checking for camera pi updates...
[2026-08-31 12:04:39,871.871 INFO    ] 200
[2026-08-31 12:04:39,874.874 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:04:39,915.915 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:04:39,999.999 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:04:40,002.002 INFO    ] No camera update needed
[2026-08-31 12:04:40,004.004 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:04:40,007.007 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:04:40,013.013 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:04:40,019.019 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:04:42,061.061 INFO    ] ================================================
[2026-08-31 12:04:42,076.076 INFO    ] Launching Daemon at Mon Aug 31 12:04:42 IST 2026
[2026-08-31 12:04:42,087.087 INFO    ] ================================================
[2026-08-31 12:04:42,734.734 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:04:42
[2026-08-31 12:04:43,353.353 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:04:43,650.650 INFO    ] Initializing speech engine...
[2026-08-31 12:04:43,663.663 INFO    ] 2026-08-31 12:04:43
[2026-08-31 12:04:43,933.933 INFO    ] 2026-08-31 12:04:43
[2026-08-31 12:04:43,987.987 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:04:44,273.273 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:04:44,280.280 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:04:44,486.486 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:04:44,495.495 INFO    ] time= 31/08/2026 12:04:44
[2026-08-31 12:04:44,522.522 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:04:44,533.533 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:04:44,643.643 INFO    ] No existing commands found in stream
[2026-08-31 12:04:49,668.668 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:04:49,672.672 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-08-31 12:04:52,322.322 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 12:04:52,325.325 INFO    ] Checking for system updates...
[2026-08-31 12:04:52,361.361 INFO    ] 200
[2026-08-31 12:04:52,364.364 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:04:52,424.424 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:04:52,427.427 INFO    ] No update needed
[2026-08-31 12:04:52,430.430 INFO    ] Checking for camera pi updates...
[2026-08-31 12:04:52,468.468 INFO    ] 200
[2026-08-31 12:04:52,471.471 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:04:52,516.516 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:04:52,617.617 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:04:52,620.620 INFO    ] No camera update needed
[2026-08-31 12:04:52,623.623 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:04:52,626.626 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:04:52,632.632 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:04:52,637.637 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:04:54,679.679 INFO    ] ================================================
[2026-08-31 12:04:54,695.695 INFO    ] Launching Daemon at Mon Aug 31 12:04:54 IST 2026
[2026-08-31 12:04:54,706.706 INFO    ] ================================================
[2026-08-31 12:04:55,271.271 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:04:55
[2026-08-31 12:04:55,853.853 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:04:56,121.121 INFO    ] Initializing speech engine...
[2026-08-31 12:04:56,130.130 INFO    ] 2026-08-31 12:04:56
[2026-08-31 12:04:56,377.377 INFO    ] 2026-08-31 12:04:56
[2026-08-31 12:04:56,412.412 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:04:56,711.711 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:04:56,747.747 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:04:57,147.147 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:04:57,192.192 INFO    ] time= 31/08/2026 12:04:57
[2026-08-31 12:04:57,219.219 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:04:57,288.288 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:04:57,550.550 INFO    ] No existing commands found in stream
[2026-08-31 12:05:02,560.560 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:05:02,562.562 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-08-31 12:05:05,947.947 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 12:05:05,950.950 INFO    ] Checking for system updates...
[2026-08-31 12:05:05,986.986 INFO    ] 200
[2026-08-31 12:05:05,988.988 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:05:06,042.042 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:05:06,044.044 INFO    ] No update needed
[2026-08-31 12:05:06,046.046 INFO    ] Checking for camera pi updates...
[2026-08-31 12:05:06,080.080 INFO    ] 200
[2026-08-31 12:05:06,083.083 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:05:06,123.123 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:05:06,222.222 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:05:06,225.225 INFO    ] No camera update needed
[2026-08-31 12:05:06,227.227 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:05:06,229.229 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:05:06,235.235 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:05:06,240.240 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:05:08,281.281 INFO    ] ================================================
[2026-08-31 12:05:08,296.296 INFO    ] Launching Daemon at Mon Aug 31 12:05:08 IST 2026
[2026-08-31 12:05:08,308.308 INFO    ] ================================================
[2026-08-31 12:05:08,919.919 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:05:08
[2026-08-31 12:05:09,512.512 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:05:09,783.783 INFO    ] Initializing speech engine...
[2026-08-31 12:05:09,792.792 INFO    ] 2026-08-31 12:05:09
[2026-08-31 12:05:10,040.040 INFO    ] 2026-08-31 12:05:10
[2026-08-31 12:05:10,075.075 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:05:10,353.353 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:05:10,359.359 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:05:10,633.633 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:05:10,641.641 INFO    ] time= 31/08/2026 12:05:10
[2026-08-31 12:05:10,652.652 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:05:10,709.709 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:05:10,926.926 INFO    ] No existing commands found in stream
[2026-08-31 12:05:15,957.957 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:05:15,960.960 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-08-31 12:05:18,308.308 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 12:05:18,311.311 INFO    ] Checking for system updates...
[2026-08-31 12:05:18,352.352 INFO    ] 200
[2026-08-31 12:05:18,354.354 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:05:18,406.406 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:05:18,408.408 INFO    ] No update needed
[2026-08-31 12:05:18,411.411 INFO    ] Checking for camera pi updates...
[2026-08-31 12:05:18,444.444 INFO    ] 200
[2026-08-31 12:05:18,447.447 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:05:18,487.487 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:05:18,573.573 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:05:18,575.575 INFO    ] No camera update needed
[2026-08-31 12:05:18,578.578 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:05:18,580.580 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:05:18,585.585 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:05:18,591.591 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:05:20,631.631 INFO    ] ================================================
[2026-08-31 12:05:20,647.647 INFO    ] Launching Daemon at Mon Aug 31 12:05:20 IST 2026
[2026-08-31 12:05:20,658.658 INFO    ] ================================================
[2026-08-31 12:05:21,240.240 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:05:21
[2026-08-31 12:05:21,836.836 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:05:22,113.113 INFO    ] Initializing speech engine...
[2026-08-31 12:05:22,120.120 INFO    ] 2026-08-31 12:05:22
[2026-08-31 12:05:22,381.381 INFO    ] 2026-08-31 12:05:22
[2026-08-31 12:05:22,434.434 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:05:22,661.661 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:05:22,666.666 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:05:22,919.919 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:05:22,925.925 INFO    ] time= 31/08/2026 12:05:22
[2026-08-31 12:05:22,946.946 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:05:22,971.971 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:05:23,175.175 INFO    ] No existing commands found in stream
[2026-08-31 12:05:28,199.199 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:05:28,202.202 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-08-31 12:05:31,972.972 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 12:05:31,977.977 INFO    ] Checking for system updates...
[2026-08-31 12:05:32,018.018 INFO    ] 200
[2026-08-31 12:05:32,021.021 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:05:32,079.079 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:05:32,082.082 INFO    ] No update needed
[2026-08-31 12:05:32,084.084 INFO    ] Checking for camera pi updates...
[2026-08-31 12:05:32,121.121 INFO    ] 200
[2026-08-31 12:05:32,123.123 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:05:32,178.178 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:05:32,288.288 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:05:32,291.291 INFO    ] No camera update needed
[2026-08-31 12:05:32,293.293 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:05:32,296.296 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:05:32,302.302 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:05:32,308.308 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:05:34,349.349 INFO    ] ================================================
[2026-08-31 12:05:34,364.364 INFO    ] Launching Daemon at Mon Aug 31 12:05:34 IST 2026
[2026-08-31 12:05:34,375.375 INFO    ] ================================================
[2026-08-31 12:05:34,956.956 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:05:34
[2026-08-31 12:05:35,554.554 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:05:35,831.831 INFO    ] Initializing speech engine...
[2026-08-31 12:05:35,839.839 INFO    ] 2026-08-31 12:05:35
[2026-08-31 12:05:36,097.097 INFO    ] 2026-08-31 12:05:36
[2026-08-31 12:05:36,127.127 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:05:36,498.498 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:05:36,535.535 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:05:36,773.773 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:05:36,801.801 INFO    ] time= 31/08/2026 12:05:36
[2026-08-31 12:05:36,866.866 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:05:36,894.894 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:05:37,032.032 INFO    ] No existing commands found in stream
[2026-08-31 12:05:42,045.045 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:05:42,048.048 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-08-31 12:05:43,449.449 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 12:05:43,451.451 INFO    ] Checking for system updates...
[2026-08-31 12:05:43,488.488 INFO    ] 200
[2026-08-31 12:05:43,490.490 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:05:43,543.543 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:05:43,546.546 INFO    ] No update needed
[2026-08-31 12:05:43,549.549 INFO    ] Checking for camera pi updates...
[2026-08-31 12:05:43,586.586 INFO    ] 200
[2026-08-31 12:05:43,589.589 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:05:43,629.629 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:05:43,713.713 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:05:43,716.716 INFO    ] No camera update needed
[2026-08-31 12:05:43,718.718 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:05:43,721.721 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:05:43,726.726 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:05:43,731.731 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:05:45,771.771 INFO    ] ================================================
[2026-08-31 12:05:45,787.787 INFO    ] Launching Daemon at Mon Aug 31 12:05:45 IST 2026
[2026-08-31 12:05:45,798.798 INFO    ] ================================================
[2026-08-31 12:05:46,368.368 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:05:46
[2026-08-31 12:05:46,954.954 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:05:47,226.226 INFO    ] Initializing speech engine...
[2026-08-31 12:05:47,236.236 INFO    ] 2026-08-31 12:05:47
[2026-08-31 12:05:47,495.495 INFO    ] 2026-08-31 12:05:47
[2026-08-31 12:05:47,552.552 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:05:48,033.033 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:05:48,040.040 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:05:48,468.468 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:05:48,483.483 INFO    ] time= 31/08/2026 12:05:48
[2026-08-31 12:05:48,493.493 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:05:48,496.496 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:05:48,739.739 INFO    ] No existing commands found in stream
[2026-08-31 12:05:53,749.749 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:05:53,752.752 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-08-31 12:05:56,748.748 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 12:05:56,751.751 INFO    ] Checking for system updates...
[2026-08-31 12:05:56,786.786 INFO    ] 200
[2026-08-31 12:05:56,788.788 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:05:56,841.841 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:05:56,844.844 INFO    ] No update needed
[2026-08-31 12:05:56,846.846 INFO    ] Checking for camera pi updates...
[2026-08-31 12:05:56,880.880 INFO    ] 200
[2026-08-31 12:05:56,882.882 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:05:56,927.927 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:05:57,130.130 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:05:57,133.133 INFO    ] No camera update needed
[2026-08-31 12:05:57,135.135 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:05:57,138.138 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:05:57,144.144 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:05:57,150.150 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:05:59,191.191 INFO    ] ================================================
[2026-08-31 12:05:59,207.207 INFO    ] Launching Daemon at Mon Aug 31 12:05:59 IST 2026
[2026-08-31 12:05:59,219.219 INFO    ] ================================================
[2026-08-31 12:05:59,792.792 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:05:59
[2026-08-31 12:06:00,377.377 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:06:00,632.632 INFO    ] Initializing speech engine...
[2026-08-31 12:06:00,640.640 INFO    ] 2026-08-31 12:06:00
[2026-08-31 12:06:00,934.934 INFO    ] 2026-08-31 12:06:00
[2026-08-31 12:06:00,969.969 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:06:01,166.166 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:06:01,182.182 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:06:01,417.417 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:06:01,429.429 INFO    ] time= 31/08/2026 12:06:01
[2026-08-31 12:06:01,488.488 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:06:01,532.532 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:06:01,720.720 INFO    ] No existing commands found in stream
[2026-08-31 12:06:06,730.730 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:06:06,744.744 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-08-31 12:06:07,372.372 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 12:06:07,375.375 INFO    ] Checking for system updates...
[2026-08-31 12:06:07,410.410 INFO    ] 200
[2026-08-31 12:06:07,413.413 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:06:07,471.471 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:06:07,474.474 INFO    ] No update needed
[2026-08-31 12:06:07,476.476 INFO    ] Checking for camera pi updates...
[2026-08-31 12:06:07,509.509 INFO    ] 200
[2026-08-31 12:06:07,512.512 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:06:07,557.557 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:06:07,644.644 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:06:07,663.663 INFO    ] No camera update needed
[2026-08-31 12:06:07,665.665 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:06:07,668.668 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:06:07,674.674 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:06:07,680.680 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:06:09,720.720 INFO    ] ================================================
[2026-08-31 12:06:09,736.736 INFO    ] Launching Daemon at Mon Aug 31 12:06:09 IST 2026
[2026-08-31 12:06:09,747.747 INFO    ] ================================================
[2026-08-31 12:06:10,331.331 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:06:10
[2026-08-31 12:06:10,933.933 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:06:11,213.213 INFO    ] Initializing speech engine...
[2026-08-31 12:06:11,220.220 INFO    ] 2026-08-31 12:06:11
[2026-08-31 12:06:11,482.482 INFO    ] 2026-08-31 12:06:11
[2026-08-31 12:06:11,512.512 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:06:11,763.763 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:06:11,768.768 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:06:12,010.010 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:06:12,027.027 INFO    ] time= 31/08/2026 12:06:12
[2026-08-31 12:06:12,045.045 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:06:12,057.057 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:06:12,181.181 INFO    ] No existing commands found in stream
[2026-08-31 12:06:17,205.205 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:06:17,208.208 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-08-31 12:06:20,216.216 INFO    ] {'return_odoo_transaction': None, 'slot': 'morning-1', 'user_id': '', 'refill_started': None, 'tray_json': '[{"tray_id":"12","door_id":"1","tray_weight":"99999","sku_json":"4500605-10","org_sku":"4500605","active":"1","created_at":"2026-08-31 12:04:43","modified_at":"2026-08-31 12:04:43"},{"tray_id":"13","door_id":"1","tray_weight":"99999","sku_json":"4500722-10","org_sku":"4500722","active":"1","created_at":"2026-08-31 12:04:43","modified_at":"2026-08-31 12:04:43"},{"tray_id":"14","door_id":"1","tray_weight":"99999","sku_json":"4500714-15","org_sku":"4500714","active":"1","created_at":"2026-08-31 12:04:43","modified_at":"2026-08-31 12:04:43"},{"tray_id":"17","door_id":"1","tray_weight":"99999","sku_json":"4500708-12","org_sku":"4500708","active":"1","created_at":"2026-08-31 12:04:43","modified_at":"2026-08-31 12:04:43"},{"tray_id":"23","door_id":"1","tray_weight":"99999","sku_json":"4500723-12","org_sku":"4500723","active":"1","created_at":"2026-08-31 12:04:43","modified_at":"2026-08-31 12:04:43"},{"tray_id":"24","door_id":"1","tray_weight":"99999","sku_json":"4500672-12","org_sku":"4500672","active":"1","created_at":"2026-08-31 12:04:43","modified_at":"2026-08-31 12:04:43"},{"tray_id":"26","door_id":"1","tray_weight":"99999","sku_json":"4500726-12","org_sku":"4500726","active":"1","created_at":"2026-08-31 12:04:43","modified_at":"2026-08-31 12:04:43"}]', 'odoo_posting_status': None, 'refilled_by': None, 'refill_odoo_transaction': None, 'transport_odoo_transaction': None, 'command_todo': 'interactive-refill', 'command_for': 'server', 'server_response': '', 'last_modified_at': '2026-08-31 12:04:43', 'command_request_data': '{"user":"server","action":"get_user_mobile_no","action_name":"Get User Mobile no","request_data":""}', 'retrun_odoo_allocation': None, 'reallocation_odoo_transaction': None, 'accept_reject_timestamp': None, 'total_picking_qty': None, 'reason_for_refill': None, 'refill_id': '9690357', 'type_of_order': 'refill', 'actual_return_json': None, 'status': 'active', 'imei': 'TM08202202', 'refilled_at': None, 'created_at': '2026-08-31 12:06:18', 'refill_group': None, 'date_of_refill': '2026-08-31', 'delivery_cluster': None, 'pickup_status': None, 'edited_by': 'Barun', 'total_quantity': '83', 'response': {'msg': 'order updated', 'status': True, 'data': 'order updated'}, 'compelete_refill': [{'sku_name': 'Ongibytes Garlic Muruku ', 'quantity_in_db': '10', 'check_enabled': True, 'tray_id': '12', 'sku_id': '4500605', 'quantity_on_tray': '10'}, {'sku_name': 'MaxVita Rice Kodubale 30gm', 'quantity_in_db': '10', 'check_enabled': True, 'tray_id': '13', 'sku_id': '4500722', 'quantity_on_tray': '10'}, {'sku_name': 'McVities Triple Nut Cookies 58gm', 'quantity_in_db': '15', 'check_enabled': True, 'tray_id': '14', 'sku_id': '4500714', 'quantity_on_tray': '15'}, {'sku_name': 'Modern Kitchen Masala Peanut 28gm', 'quantity_in_db': '12', 'check_enabled': True, 'tray_id': '17', 'sku_id': '4500708', 'quantity_on_tray': '12'}, {'sku_name': 'MaxVita Moong daal 25gm', 'quantity_in_db': '12', 'check_enabled': True, 'tray_id': '23', 'sku_id': '4500723', 'quantity_on_tray': '12'}, {'sku_name': 'Modern kitchens Garlic Mixture 26gm', 'quantity_in_db': '12', 'check_enabled': True, 'tray_id': '24', 'sku_id': '4500672', 'quantity_on_tray': '12'}, {'sku_name': 'MaxVita Crunchy Indian Mixture 30gm', 'quantity_in_db': '12', 'check_enabled': True, 'tray_id': '26', 'sku_id': '4500726', 'quantity_on_tray': '12'}], 'expected_return_qty': None, 'reject_reason': None, 'cleaning_needed': None, 'order_id': '9690357', 'vm_id': '1660749537502', 'modified_at': '2026-08-31 12:06:18', 'refill_tool_version': None, 'expected_return_json': None, 'detailed_trays_json': '{"12":{"picking_quantity":10,"refill_quantity":"10","refill_qty":"10"},"13":{"picking_quantity":10,"refill_quantity":"10","refill_qty":"10"},"14":{"picking_quantity":15,"refill_quantity":"15","refill_qty":"15"},"17":{"picking_quantity":12,"refill_quantity":"12","refill_qty":"12"},"23":{"picking_quantity":12,"refill_quantity":"12","refill_qty":"12"},"24":{"picking_quantity":12,"refill_quantity":"12","refill_qty":"12"},"26":{"picking_quantity":12,"refill_quantity":"12","refill_qty":"12"}}', 'time_of_refill': None, 'allocation_odoo_transaction': None, 'server_status': 'in-progress', 'last_command_response': None, 'all_command_response': None, 'acceptance': None, 'atcual_return_qty': None, 'vendor_id': ''}
[2026-08-31 12:06:20,218.218 INFO    ] processing refill code 9690357
[2026-08-31 12:06:20,258.258 INFO    ] 200
[2026-08-31 12:06:20,260.260 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:06:20,263.263 INFO    ] in-progress
[2026-08-31 12:06:20,266.266 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:06:20
[2026-08-31 12:06:20,351.351 INFO    ] 
inside get

[2026-08-31 12:06:20,354.354 INFO    ] 200
[2026-08-31 12:06:20,356.356 INFO    ] waiting for server
[2026-08-31 12:06:23,363.363 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:06:23
[2026-08-31 12:06:23,683.683 INFO    ] 
inside get

[2026-08-31 12:06:23,685.685 INFO    ] 200
[2026-08-31 12:06:23,688.688 INFO    ] waiting for server
[2026-08-31 12:06:26,695.695 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:06:26
[2026-08-31 12:06:26,781.781 INFO    ] 
inside get

[2026-08-31 12:06:26,784.784 INFO    ] 200
[2026-08-31 12:06:26,786.786 INFO    ] waiting for server
[2026-08-31 12:06:29,794.794 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:06:29
[2026-08-31 12:06:29,913.913 INFO    ] 
inside get

[2026-08-31 12:06:29,916.916 INFO    ] 200
[2026-08-31 12:06:29,919.919 INFO    ] waiting for server
[2026-08-31 12:06:32,926.926 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:06:32
[2026-08-31 12:06:33,009.009 INFO    ] 
inside get

[2026-08-31 12:06:33,012.012 INFO    ] 200
[2026-08-31 12:06:33,015.015 INFO    ] waiting for server
[2026-08-31 12:06:36,022.022 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:06:36
[2026-08-31 12:06:36,131.131 INFO    ] 
inside get

[2026-08-31 12:06:36,133.133 INFO    ] 200
[2026-08-31 12:06:36,136.136 INFO    ] processing machine command
[2026-08-31 12:06:36,138.138 INFO    ] {"user":"machine","action":"machine_mobile_otp_request","action_name":"Waiting for Machine to send OTP","request_data":{"user_id":9036356553,"txnType":"refill"}}
[2026-08-31 12:06:36,141.141 INFO    ] 9036356553
[2026-08-31 12:06:36,677.677 INFO    ] <__main__.ResponseWrapper object at 0x73cda890>
[2026-08-31 12:06:37,717.717 INFO    ] {"allowed": "1", "otp": "3715", "refill_id": ["9690357"], "success": "true"}
[2026-08-31 12:06:37,720.720 INFO    ] {"allowed": "1", "otp": "3715", "refill_id": ["9690357"], "success": "true"}
[2026-08-31 12:06:37,926.926 INFO    ] 
inside post

[2026-08-31 12:06:37,928.928 INFO    ] 200
[2026-08-31 12:06:37,931.931 INFO    ] {"order_id":"9690357","vm_id":"1660749537502","user_id":"9036356553","status":"active","server_status":"in-progress","server_response":"","command_todo":"interactive-refill","last_command_response":"{\"allowed\":\"1\",\"refill_id\":\"9690357\",\"success\":\"true\",\"user_id\":9036356553,\"otp\":\"3715\",\"user\":\"machine\"}","all_command_response":"[{\"action\":\"get_user_mobile_no\",\"mobile_no\":\"9036356553\",\"command_for\":\"server\"},{\"allowed\":\"1\",\"refill_id\":\"9690357\",\"success\":\"true\",\"user_id\":9036356553,\"otp\":\"3715\",\"user\":\"machine\"}]","type_of_order":"refill","command_request_data":"{\"user\":\"server\",\"request_data\":{\"allowed\":\"1\",\"refill_id\":\"9690357\",\"success\":\"true\",\"user_id\":9036356553,\"otp\":\"3715\"},\"action_name\":\"Enter OTP\",\"action\":\"get_mobile_otp\"}","command_for":"server","created_at":"2026-08-31 12:06:18","modified_at":"2026-08-31 12:06:37"}
[2026-08-31 12:06:37,934.934 INFO    ] {'vm_id': '1660749537502', 'created_at': '2026-08-31 12:06:18', 'user_id': '9036356553', 'server_status': 'in-progress', 'last_command_response': '{"allowed":"1","refill_id":"9690357","success":"true","user_id":9036356553,"otp":"3715","user":"machine"}', 'modified_at': '2026-08-31 12:06:37', 'type_of_order': 'refill', 'command_todo': 'interactive-refill', 'server_response': '', 'command_for': 'server', 'order_id': '9690357', 'status': 'active', 'command_request_data': '{"user":"server","request_data":{"allowed":"1","refill_id":"9690357","success":"true","user_id":9036356553,"otp":"3715"},"action_name":"Enter OTP","action":"get_mobile_otp"}', 'all_command_response': '[{"action":"get_user_mobile_no","mobile_no":"9036356553","command_for":"server"},{"allowed":"1","refill_id":"9690357","success":"true","user_id":9036356553,"otp":"3715","user":"machine"}]'}
[2026-08-31 12:06:37,937.937 INFO    ] in main while loops
[2026-08-31 12:06:40,944.944 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:06:40
[2026-08-31 12:06:41,224.224 INFO    ] 
inside get

[2026-08-31 12:06:41,227.227 INFO    ] 200
[2026-08-31 12:06:41,230.230 INFO    ] waiting for server
[2026-08-31 12:06:44,237.237 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:06:44
[2026-08-31 12:06:44,325.325 INFO    ] 
inside get

[2026-08-31 12:06:44,328.328 INFO    ] 200
[2026-08-31 12:06:44,331.331 INFO    ] waiting for server
[2026-08-31 12:06:47,338.338 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:06:47
[2026-08-31 12:06:47,560.560 INFO    ] 
inside get

[2026-08-31 12:06:47,562.562 INFO    ] 200
[2026-08-31 12:06:47,565.565 INFO    ] waiting for server
[2026-08-31 12:06:50,572.572 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:06:50
[2026-08-31 12:06:51,009.009 INFO    ] 
inside get

[2026-08-31 12:06:51,012.012 INFO    ] 200
[2026-08-31 12:06:51,015.015 INFO    ] processing machine command
[2026-08-31 12:06:51,017.017 INFO    ] {"user":"machine","action":"machine_auth_complete","action_name":"Waiting for Machine to Open Door","request_data":{"user_id":9036356553,"txnType":"refill"}}
[2026-08-31 12:06:51,020.020 INFO    ] 9036356553
[2026-08-31 12:06:51,319.319 INFO    ] 200
[2026-08-31 12:06:51,322.322 INFO    ] {"door_size": 2, "active_doors": ["1", "2"], "order_id": "TM08202202_refill_260831120651", "status": "True", "rstatus": true, "active_payment_gateways": "[{\"payments\": [{\"label\": \"PayTM\", \"name\": \"PayTM\", \"active\": 1}, {\"label\": \"PhonePe\", \"name\": \"PhonePe\", \"active\": 1}, {\"label\": \"Google Pay\", \"name\": \"GooglePay\", \"active\": 1}, {\"label\": \"BHIM UPI\", \"name\": \"BHIM\", \"active\": 1}], \"header\": \"QR Payments\"}, {\"payments\": [{\"label\": \"Sodexo Card\", \"name\": \"Sodexo\", \"active\": 1}, {\"label\": \"Credit/Debit Card\", \"name\": \"Card\", \"active\": 1}, {\"label\": \"QwikCilver\", \"name\": \"Qwikcilver\", \"active\": 0}], \"header\": \"Card Payments\"}, {\"payments\": [{\"label\": \"LazyPay\", \"name\": \"LazyPay\", \"active\": 1}, {\"label\": \"OLA Money\", \"name\": \"Ola\", \"active\": 0}, {\"label\": \"Tiny Wallet\", \"name\": \"Neuu\", \"active\": 0}], \"header\": \"Wallet Payments\"}]"}
[2026-08-31 12:06:51,325.325 INFO    ] TM08202202_refill_260831120651
[2026-08-31 12:06:51,328.328 INFO    ] {'return_odoo_transaction': None, 'slot': 'morning-1', 'user_id': '', 'refill_started': None, 'tray_json': '[{"tray_id":"12","door_id":"1","tray_weight":"99999","sku_json":"4500605-10","org_sku":"4500605","active":"1","created_at":"2026-08-31 12:04:43","modified_at":"2026-08-31 12:04:43"},{"tray_id":"13","door_id":"1","tray_weight":"99999","sku_json":"4500722-10","org_sku":"4500722","active":"1","created_at":"2026-08-31 12:04:43","modified_at":"2026-08-31 12:04:43"},{"tray_id":"14","door_id":"1","tray_weight":"99999","sku_json":"4500714-15","org_sku":"4500714","active":"1","created_at":"2026-08-31 12:04:43","modified_at":"2026-08-31 12:04:43"},{"tray_id":"17","door_id":"1","tray_weight":"99999","sku_json":"4500708-12","org_sku":"4500708","active":"1","created_at":"2026-08-31 12:04:43","modified_at":"2026-08-31 12:04:43"},{"tray_id":"23","door_id":"1","tray_weight":"99999","sku_json":"4500723-12","org_sku":"4500723","active":"1","created_at":"2026-08-31 12:04:43","modified_at":"2026-08-31 12:04:43"},{"tray_id":"24","door_id":"1","tray_weight":"99999","sku_json":"4500672-12","org_sku":"4500672","active":"1","created_at":"2026-08-31 12:04:43","modified_at":"2026-08-31 12:04:43"},{"tray_id":"26","door_id":"1","tray_weight":"99999","sku_json":"4500726-12","org_sku":"4500726","active":"1","created_at":"2026-08-31 12:04:43","modified_at":"2026-08-31 12:04:43"}]', 'odoo_posting_status': None, 'refilled_by': None, 'refill_odoo_transaction': None, 'transport_odoo_transaction': None, 'command_todo': 'interactive-refill', 'command_for': 'server', 'server_response': '', 'last_modified_at': '2026-08-31 12:04:43', 'command_request_data': '{"user":"server","action":"get_user_mobile_no","action_name":"Get User Mobile no","request_data":""}', 'retrun_odoo_allocation': None, 'reallocation_odoo_transaction': None, 'accept_reject_timestamp': None, 'total_picking_qty': None, 'reason_for_refill': None, 'refill_id': '9690357', 'type_of_order': 'refill', 'actual_return_json': None, 'status': 'active', 'imei': 'TM08202202', 'refilled_at': None, 'created_at': '2026-08-31 12:06:18', 'refill_group': None, 'date_of_refill': '2026-08-31', 'delivery_cluster': None, 'pickup_status': None, 'edited_by': 'Barun', 'total_quantity': '83', 'response': {'msg': 'order updated', 'status': True, 'data': 'order updated'}, 'compelete_refill': [{'sku_name': 'Ongibytes Garlic Muruku ', 'quantity_in_db': '10', 'check_enabled': True, 'tray_id': '12', 'sku_id': '4500605', 'quantity_on_tray': '10'}, {'sku_name': 'MaxVita Rice Kodubale 30gm', 'quantity_in_db': '10', 'check_enabled': True, 'tray_id': '13', 'sku_id': '4500722', 'quantity_on_tray': '10'}, {'sku_name': 'McVities Triple Nut Cookies 58gm', 'quantity_in_db': '15', 'check_enabled': True, 'tray_id': '14', 'sku_id': '4500714', 'quantity_on_tray': '15'}, {'sku_name': 'Modern Kitchen Masala Peanut 28gm', 'quantity_in_db': '12', 'check_enabled': True, 'tray_id': '17', 'sku_id': '4500708', 'quantity_on_tray': '12'}, {'sku_name': 'MaxVita Moong daal 25gm', 'quantity_in_db': '12', 'check_enabled': True, 'tray_id': '23', 'sku_id': '4500723', 'quantity_on_tray': '12'}, {'sku_name': 'Modern kitchens Garlic Mixture 26gm', 'quantity_in_db': '12', 'check_enabled': True, 'tray_id': '24', 'sku_id': '4500672', 'quantity_on_tray': '12'}, {'sku_name': 'MaxVita Crunchy Indian Mixture 30gm', 'quantity_in_db': '12', 'check_enabled': True, 'tray_id': '26', 'sku_id': '4500726', 'quantity_on_tray': '12'}], 'expected_return_qty': None, 'reject_reason': None, 'cleaning_needed': None, 'order_id': 'TM08202202_refill_260831120651', 'vm_id': '1660749537502', 'modified_at': '2026-08-31 12:06:18', 'refill_tool_version': None, 'expected_return_json': None, 'detailed_trays_json': '{"12":{"picking_quantity":10,"refill_quantity":"10","refill_qty":"10"},"13":{"picking_quantity":10,"refill_quantity":"10","refill_qty":"10"},"14":{"picking_quantity":15,"refill_quantity":"15","refill_qty":"15"},"17":{"picking_quantity":12,"refill_quantity":"12","refill_qty":"12"},"23":{"picking_quantity":12,"refill_quantity":"12","refill_qty":"12"},"24":{"picking_quantity":12,"refill_quantity":"12","refill_qty":"12"},"26":{"picking_quantity":12,"refill_quantity":"12","refill_qty":"12"}}', 'time_of_refill': None, 'allocation_odoo_transaction': None, 'server_status': 'in-progress', 'last_command_response': None, 'all_command_response': None, 'acceptance': None, 'atcual_return_qty': None, 'vendor_id': ''}
[2026-08-31 12:06:51,428.428 INFO    ] {"data": {}, "status": "True", "rstatus": true}
[2026-08-31 12:06:51,430.430 INFO    ] {'status': 'True', 'rstatus': True, 'data': {}}
[2026-08-31 12:06:51,433.433 INFO    ] {'status': 'True', 'rstatus': True, 'data': {}}
[2026-08-31 12:06:51,912.912 INFO    ] 
inside post

[2026-08-31 12:06:51,915.915 INFO    ] 200
[2026-08-31 12:06:51,917.917 INFO    ] {"order_id":"9690357","vm_id":"1660749537502","user_id":"9036356553","status":"active","server_status":"in-progress","server_response":"","command_todo":"interactive-refill","last_command_response":"{\"refill_id\":\"9690357\",\"status\":\"True\",\"user_id\":9036356553,\"active_payment_gateways\":\"[{\\\"payments\\\": [{\\\"label\\\": \\\"PayTM\\\", \\\"name\\\": \\\"PayTM\\\", \\\"active\\\": 1}, {\\\"label\\\": \\\"PhonePe\\\", \\\"name\\\": \\\"PhonePe\\\", \\\"active\\\": 1}, {\\\"label\\\": \\\"Google Pay\\\", \\\"name\\\": \\\"GooglePay\\\", \\\"active\\\": 1}, {\\\"label\\\": \\\"BHIM UPI\\\", \\\"name\\\": \\\"BHIM\\\", \\\"active\\\": 1}], \\\"header\\\": \\\"QR Payments\\\"}, {\\\"payments\\\": [{\\\"label\\\": \\\"Sodexo Card\\\", \\\"name\\\": \\\"Sodexo\\\", \\\"active\\\": 1}, {\\\"label\\\": \\\"Credit\\\/Debit Card\\\", \\\"name\\\": \\\"Card\\\", \\\"active\\\": 1}, {\\\"label\\\": \\\"QwikCilver\\\", \\\"name\\\": \\\"Qwikcilver\\\", \\\"active\\\": 0}], \\\"header\\\": \\\"Card Payments\\\"}, {\\\"payments\\\": [{\\\"label\\\": \\\"LazyPay\\\", \\\"name\\\": \\\"LazyPay\\\", \\\"active\\\": 1}, {\\\"label\\\": \\\"OLA Money\\\", \\\"name\\\": \\\"Ola\\\", \\\"active\\\": 0}, {\\\"label\\\": \\\"Tiny Wallet\\\", \\\"name\\\": \\\"Neuu\\\", \\\"active\\\": 0}], \\\"header\\\": \\\"Wallet Payments\\\"}]\",\"refill_order_id\":\"TM08202202_refill_260831120651\",\"order_id\":\"TM08202202_refill_260831120651\",\"door_size\":2,\"rstatus\":true,\"active_doors\":[\"1\",\"2\"],\"user\":\"machine\"}","all_command_response":"[{\"action\":\"get_user_mobile_no\",\"mobile_no\":\"9036356553\",\"command_for\":\"server\"},{\"allowed\":\"1\",\"refill_id\":\"9690357\",\"success\":\"true\",\"user_id\":9036356553,\"otp\":\"3715\",\"user\":\"machine\"},{\"action\":\"get_mobile_otp\",\"mobile_no\":\"9036356553\",\"otp\":\"3715\",\"command_for\":\"server\"},{\"refill_id\":\"9690357\",\"status\":\"True\",\"user_id\":9036356553,\"active_payment_gateways\":\"[{\\\"payments\\\": [{\\\"label\\\": \\\"PayTM\\\", \\\"name\\\": \\\"PayTM\\\", \\\"active\\\": 1}, {\\\"label\\\": \\\"PhonePe\\\", \\\"name\\\": \\\"PhonePe\\\", \\\"active\\\": 1}, {\\\"label\\\": \\\"Google Pay\\\", \\\"name\\\": \\\"GooglePay\\\", \\\"active\\\": 1}, {\\\"label\\\": \\\"BHIM UPI\\\", \\\"name\\\": \\\"BHIM\\\", \\\"active\\\": 1}], \\\"header\\\": \\\"QR Payments\\\"}, {\\\"payments\\\": [{\\\"label\\\": \\\"Sodexo Card\\\", \\\"name\\\": \\\"Sodexo\\\", \\\"active\\\": 1}, {\\\"label\\\": \\\"Credit\\\/Debit Card\\\", \\\"name\\\": \\\"Card\\\", \\\"active\\\": 1}, {\\\"label\\\": \\\"QwikCilver\\\", \\\"name\\\": \\\"Qwikcilver\\\", \\\"active\\\": 0}], \\\"header\\\": \\\"Card Payments\\\"}, {\\\"payments\\\": [{\\\"label\\\": \\\"LazyPay\\\", \\\"name\\\": \\\"LazyPay\\\", \\\"active\\\": 1}, {\\\"label\\\": \\\"OLA Money\\\", \\\"name\\\": \\\"Ola\\\", \\\"active\\\": 0}, {\\\"label\\\": \\\"Tiny Wallet\\\", \\\"name\\\": \\\"Neuu\\\", \\\"active\\\": 0}], \\\"header\\\": \\\"Wallet Payments\\\"}]\",\"refill_order_id\":\"TM08202202_refill_260831120651\",\"order_id\":\"TM08202202_refill_260831120651\",\"door_size\":2,\"rstatus\":true,\"active_doors\":[\"1\",\"2\"],\"user\":\"machine\"}]","type_of_order":"refill","command_request_data":"{\"user\":\"server\",\"request_data\":{\"refill_id\":\"9690357\",\"status\":\"True\",\"user_id\":9036356553,\"active_payment_gateways\":\"[{\\\"payments\\\": [{\\\"label\\\": \\\"PayTM\\\", \\\"name\\\": \\\"PayTM\\\", \\\"active\\\": 1}, {\\\"label\\\": \\\"PhonePe\\\", \\\"name\\\": \\\"PhonePe\\\", \\\"active\\\": 1}, {\\\"label\\\": \\\"Google Pay\\\", \\\"name\\\": \\\"GooglePay\\\", \\\"active\\\": 1}, {\\\"label\\\": \\\"BHIM UPI\\\", \\\"name\\\": \\\"BHIM\\\", \\\"active\\\": 1}], \\\"header\\\": \\\"QR Payments\\\"}, {\\\"payments\\\": [{\\\"label\\\": \\\"Sodexo Card\\\", \\\"name\\\": \\\"Sodexo\\\", \\\"active\\\": 1}, {\\\"label\\\": \\\"Credit\\\/Debit Card\\\", \\\"name\\\": \\\"Card\\\", \\\"active\\\": 1}, {\\\"label\\\": \\\"QwikCilver\\\", \\\"name\\\": \\\"Qwikcilver\\\", \\\"active\\\": 0}], \\\"header\\\": \\\"Card Payments\\\"}, {\\\"payments\\\": [{\\\"label\\\": \\\"LazyPay\\\", \\\"name\\\": \\\"LazyPay\\\", \\\"active\\\": 1}, {\\\"label\\\": \\\"OLA Money\\\", \\\"name\\\": \\\"Ola\\\", \\\"active\\\": 0}, {\\\"label\\\": \\\"Tiny Wallet\\\", \\\"name\\\": \\\"Neuu\\\", \\\"active\\\": 0}], \\\"header\\\": \\\"Wallet Payments\\\"}]\",\"refill_order_id\":\"TM08202202_refill_260831120651\",\"order_id\":\"TM08202202_refill_260831120651\",\"door_size\":2,\"rstatus\":true,\"active_doors\":[\"1\",\"2\"]},\"action_name\":\"Select Door to Open\",\"action\":\"open_door_process\",\"refill_order_id\":\"TM08202202_refill_260831120651\",\"active_doors\":[\"1\",\"2\"]}","command_for":"server","created_at":"2026-08-31 12:06:18","modified_at":"2026-08-31 12:06:51"}
[2026-08-31 12:06:51,921.921 INFO    ] {'vm_id': '1660749537502', 'created_at': '2026-08-31 12:06:18', 'user_id': '9036356553', 'server_status': 'in-progress', 'last_command_response': '{"refill_id":"9690357","status":"True","user_id":9036356553,"active_payment_gateways":"[{\\"payments\\": [{\\"label\\": \\"PayTM\\", \\"name\\": \\"PayTM\\", \\"active\\": 1}, {\\"label\\": \\"PhonePe\\", \\"name\\": \\"PhonePe\\", \\"active\\": 1}, {\\"label\\": \\"Google Pay\\", \\"name\\": \\"GooglePay\\", \\"active\\": 1}, {\\"label\\": \\"BHIM UPI\\", \\"name\\": \\"BHIM\\", \\"active\\": 1}], \\"header\\": \\"QR Payments\\"}, {\\"payments\\": [{\\"label\\": \\"Sodexo Card\\", \\"name\\": \\"Sodexo\\", \\"active\\": 1}, {\\"label\\": \\"Credit\\/Debit Card\\", \\"name\\": \\"Card\\", \\"active\\": 1}, {\\"label\\": \\"QwikCilver\\", \\"name\\": \\"Qwikcilver\\", \\"active\\": 0}], \\"header\\": \\"Card Payments\\"}, {\\"payments\\": [{\\"label\\": \\"LazyPay\\", \\"name\\": \\"LazyPay\\", \\"active\\": 1}, {\\"label\\": \\"OLA Money\\", \\"name\\": \\"Ola\\", \\"active\\": 0}, {\\"label\\": \\"Tiny Wallet\\", \\"name\\": \\"Neuu\\", \\"active\\": 0}], \\"header\\": \\"Wallet Payments\\"}]","refill_order_id":"TM08202202_refill_260831120651","order_id":"TM08202202_refill_260831120651","door_size":2,"rstatus":true,"active_doors":["1","2"],"user":"machine"}', 'modified_at': '2026-08-31 12:06:51', 'type_of_order': 'refill', 'command_todo': 'interactive-refill', 'server_response': '', 'command_for': 'server', 'order_id': '9690357', 'status': 'active', 'command_request_data': '{"user":"server","request_data":{"refill_id":"9690357","status":"True","user_id":9036356553,"active_payment_gateways":"[{\\"payments\\": [{\\"label\\": \\"PayTM\\", \\"name\\": \\"PayTM\\", \\"active\\": 1}, {\\"label\\": \\"PhonePe\\", \\"name\\": \\"PhonePe\\", \\"active\\": 1}, {\\"label\\": \\"Google Pay\\", \\"name\\": \\"GooglePay\\", \\"active\\": 1}, {\\"label\\": \\"BHIM UPI\\", \\"name\\": \\"BHIM\\", \\"active\\": 1}], \\"header\\": \\"QR Payments\\"}, {\\"payments\\": [{\\"label\\": \\"Sodexo Card\\", \\"name\\": \\"Sodexo\\", \\"active\\": 1}, {\\"label\\": \\"Credit\\/Debit Card\\", \\"name\\": \\"Card\\", \\"active\\": 1}, {\\"label\\": \\"QwikCilver\\", \\"name\\": \\"Qwikcilver\\", \\"active\\": 0}], \\"header\\": \\"Card Payments\\"}, {\\"payments\\": [{\\"label\\": \\"LazyPay\\", \\"name\\": \\"LazyPay\\", \\"active\\": 1}, {\\"label\\": \\"OLA Money\\", \\"name\\": \\"Ola\\", \\"active\\": 0}, {\\"label\\": \\"Tiny Wallet\\", \\"name\\": \\"Neuu\\", \\"active\\": 0}], \\"header\\": \\"Wallet Payments\\"}]","refill_order_id":"TM08202202_refill_260831120651","order_id":"TM08202202_refill_260831120651","door_size":2,"rstatus":true,"active_doors":["1","2"]},"action_name":"Select Door to Open","action":"open_door_process","refill_order_id":"TM08202202_refill_260831120651","active_doors":["1","2"]}', 'all_command_response': '[{"action":"get_user_mobile_no","mobile_no":"9036356553","command_for":"server"},{"allowed":"1","refill_id":"9690357","success":"true","user_id":9036356553,"otp":"3715","user":"machine"},{"action":"get_mobile_otp","mobile_no":"9036356553","otp":"3715","command_for":"server"},{"refill_id":"9690357","status":"True","user_id":9036356553,"active_payment_gateways":"[{\\"payments\\": [{\\"label\\": \\"PayTM\\", \\"name\\": \\"PayTM\\", \\"active\\": 1}, {\\"label\\": \\"PhonePe\\", \\"name\\": \\"PhonePe\\", \\"active\\": 1}, {\\"label\\": \\"Google Pay\\", \\"name\\": \\"GooglePay\\", \\"active\\": 1}, {\\"label\\": \\"BHIM UPI\\", \\"name\\": \\"BHIM\\", \\"active\\": 1}], \\"header\\": \\"QR Payments\\"}, {\\"payments\\": [{\\"label\\": \\"Sodexo Card\\", \\"name\\": \\"Sodexo\\", \\"active\\": 1}, {\\"label\\": \\"Credit\\/Debit Card\\", \\"name\\": \\"Card\\", \\"active\\": 1}, {\\"label\\": \\"QwikCilver\\", \\"name\\": \\"Qwikcilver\\", \\"active\\": 0}], \\"header\\": \\"Card Payments\\"}, {\\"payments\\": [{\\"label\\": \\"LazyPay\\", \\"name\\": \\"LazyPay\\", \\"active\\": 1}, {\\"label\\": \\"OLA Money\\", \\"name\\": \\"Ola\\", \\"active\\": 0}, {\\"label\\": \\"Tiny Wallet\\", \\"name\\": \\"Neuu\\", \\"active\\": 0}], \\"header\\": \\"Wallet Payments\\"}]","refill_order_id":"TM08202202_refill_260831120651","order_id":"TM08202202_refill_260831120651","door_size":2,"rstatus":true,"active_doors":["1","2"],"user":"machine"}]'}
[2026-08-31 12:06:51,924.924 INFO    ] in main while loops
[2026-08-31 12:06:54,931.931 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:06:54
[2026-08-31 12:06:55,102.102 INFO    ] 
inside get

[2026-08-31 12:06:55,105.105 INFO    ] 200
[2026-08-31 12:06:55,109.109 INFO    ] waiting for server
[2026-08-31 12:06:58,115.115 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:06:58
[2026-08-31 12:06:58,203.203 INFO    ] 
inside get

[2026-08-31 12:06:58,205.205 INFO    ] 200
[2026-08-31 12:06:58,209.209 INFO    ] waiting for server
[2026-08-31 12:07:01,216.216 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:07:01
[2026-08-31 12:07:02,877.877 INFO    ] 
inside get

[2026-08-31 12:07:02,880.880 INFO    ] 200
[2026-08-31 12:07:02,892.892 INFO    ] processing machine command
[2026-08-31 12:07:02,895.895 INFO    ] {"user":"machine","request_data":{"order_id":"TM08202202_refill_260831120651","door_id":[1],"txnType":"refill","door_open_init":false},"action_name":"Waiting for Machine to Complete Refill","action":"complete_refill","refill_order_id":"TM08202202_refill_260831120651","active_doors":["1","2"],"sub-action":"complete_refill"}
[2026-08-31 12:07:02,899.899 INFO    ] {'txnType': 'refill', 'order_id': 'TM08202202_refill_260831120651', 'door_id': [1], 'door_open_init': False}
[2026-08-31 12:07:19,058.058 INFO    ] {"tray_mismatches": [{"sku_name": "Town Bus Soya Stick ,35g", "quantity_on_tray": "14", "tray_id": "11", "quantity_in_db": "0", "sku_id": "165143"}, {"sku_name": "Ongibytes Garlic Muruku ", "quantity_on_tray": "10", "tray_id": "12", "quantity_in_db": "10", "sku_id": "4500605"}, {"sku_name": "MaxVita Rice Kodubale 30gm", "quantity_on_tray": "11", "tray_id": "13", "quantity_in_db": "10", "sku_id": "4500722"}, {"sku_name": "McVities Triple Nut Cookies 58gm", "quantity_on_tray": "24", "tray_id": "14", "quantity_in_db": "15", "sku_id": "4500714"}, {"sku_name": "MaxVita Premium crunch Rusk 51gm", "quantity_on_tray": "11", "tray_id": "15", "quantity_in_db": "0", "sku_id": "4500710"}, {"sku_name": "McVities Orange Cream Biscuts 61gm", "quantity_on_tray": "17", "tray_id": "16", "quantity_in_db": "0", "sku_id": "4500681"}, {"sku_name": "Modern Kitchen Masala Peanut 28gm", "quantity_on_tray": "16", "tray_id": "17", "quantity_in_db": "12", "sku_id": "4500708"}, {"sku_name": "Modern kitchens Salted Peanuts 25gm", "quantity_on_tray": "11", "tray_id": "18", "quantity_in_db": "0", "sku_id": "4500673"}, {"sku_name": "Townbus Green Masala Peas 28g ", "quantity_on_tray": "15", "tray_id": "19", "quantity_in_db": "0", "sku_id": "186042"}, {"sku_name": "McVities Butter Jeera Cookies58gm", "quantity_on_tray": "10", "tray_id": "20", "quantity_in_db": "0", "sku_id": "4500709"}, {"sku_name": "Farmely Peri Peri Makhana 14gm", "quantity_on_tray": "7", "tray_id": "21", "quantity_in_db": "0", "sku_id": "4500665"}, {"sku_name": "Modern kitchens Banana Chips 21gm", "quantity_on_tray": "8", "tray_id": "22", "quantity_in_db": "0", "sku_id": "4500648"}, {"sku_name": "MaxVita Moong daal 25gm", "quantity_on_tray": "17", "tray_id": "23", "quantity_in_db": "12", "sku_id": "4500723"}, {"sku_name": "Modern kitchens Garlic Mixture 26gm", "quantity_on_tray": "22", "tray_id": "24", "quantity_in_db": "12", "sku_id": "4500672"}, {"sku_name": "Too Yumm Crea onion 33gm", "quantity_on_tray": "5", "tray_id": "25", "quantity_in_db": "0", "sku_id": "186100"}, {"sku_name": "MaxVita Crunchy Indian Mixture 30gm", "quantity_on_tray": "20", "tray_id": "26", "quantity_in_db": "12", "sku_id": "4500726"}, {"sku_name": "Cavins Belgian chocolate 170ml spl pack", "quantity_on_tray": "3", "tray_id": "31", "quantity_in_db": "0", "sku_id": "4500643"}, {"sku_name": "Nescafe Choco Mocha Cold Coffee 180ml", "quantity_on_tray": "2", "tray_id": "32", "quantity_in_db": "0", "sku_id": "185994"}, {"sku_name": "Heritage Badam Milk 165ml", "quantity_on_tray": "1", "tray_id": "33", "quantity_in_db": "0", "sku_id": "4500724"}, {"sku_name": "Heritage A1 Spiced Butter Milk180ml", "quantity_on_tray": "11", "tray_id": "34", "quantity_in_db": "0", "sku_id": "4500499"}, {"sku_name": "Madmix Anardana Raisins 11gm", "quantity_on_tray": "8", "tray_id": "35", "quantity_in_db": "0", "sku_id": "4500701"}, {"sku_name": "Paper boat Aam Panna 150ml", "quantity_on_tray": "5", "tray_id": "36", "quantity_in_db": "0", "sku_id": "186078"}, {"sku_name": "Paper boat Alphonso Mango 160ml", "quantity_on_tray": "4", "tray_id": "37", "quantity_in_db": "0", "sku_id": "4500407"}, {"sku_name": "Eat Bit Peanut  Chikki 32gm", "quantity_on_tray": "6", "tray_id": "38", "quantity_in_db": "0", "sku_id": "4500677"}, {"sku_name": "Farmely Classic date Bites 20gm", "quantity_on_tray": "6", "tray_id": "39", "quantity_in_db": "0", "sku_id": "4500667"}, {"sku_name": "Epigamia Chocolate Milkshake 200g", "quantity_on_tray": "4", "tray_id": "40", "quantity_in_db": "0", "sku_id": "166327"}, {"sku_name": "Eat Bit Sesame  Chikki 32gm", "quantity_on_tray": "39", "tray_id": "41", "quantity_in_db": "0", "sku_id": "4500678"}, {"sku_name": "KITKAT Nestle 4 Finger Chocolate 38g", "quantity_on_tray": "4", "tray_id": "42", "quantity_in_db": "0", "sku_id": "186084"}, {"sku_name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g", "quantity_on_tray": "25", "tray_id": "43", "quantity_in_db": "0", "sku_id": "185993"}, {"sku_name": "Maaza Tetra 135ml", "quantity_on_tray": "34", "tray_id": "44", "quantity_in_db": "0", "sku_id": "186096"}, {"sku_name": "Bindu Fizz Jeera Masala 250 ML", "quantity_on_tray": "9", "tray_id": "45", "quantity_in_db": "0", "sku_id": "186043"}, {"sku_name": "Pepsi ZeroSugar  300ml", "quantity_on_tray": "7", "tray_id": "46", "quantity_in_db": "0", "sku_id": "186059"}], "message": "Tray mismatches found.", "success": true}
[2026-08-31 12:07:19,062.062 INFO    ] {'success': True, 'tray_mismatches': [{'sku_name': 'Town Bus Soya Stick ,35g', 'tray_id': '11', 'quantity_in_db': '0', 'sku_id': '165143', 'quantity_on_tray': '14'}, {'sku_name': 'Ongibytes Garlic Muruku ', 'tray_id': '12', 'quantity_in_db': '10', 'sku_id': '4500605', 'quantity_on_tray': '10'}, {'sku_name': 'MaxVita Rice Kodubale 30gm', 'tray_id': '13', 'quantity_in_db': '10', 'sku_id': '4500722', 'quantity_on_tray': '11'}, {'sku_name': 'McVities Triple Nut Cookies 58gm', 'tray_id': '14', 'quantity_in_db': '15', 'sku_id': '4500714', 'quantity_on_tray': '24'}, {'sku_name': 'MaxVita Premium crunch Rusk 51gm', 'tray_id': '15', 'quantity_in_db': '0', 'sku_id': '4500710', 'quantity_on_tray': '11'}, {'sku_name': 'McVities Orange Cream Biscuts 61gm', 'tray_id': '16', 'quantity_in_db': '0', 'sku_id': '4500681', 'quantity_on_tray': '17'}, {'sku_name': 'Modern Kitchen Masala Peanut 28gm', 'tray_id': '17', 'quantity_in_db': '12', 'sku_id': '4500708', 'quantity_on_tray': '16'}, {'sku_name': 'Modern kitchens Salted Peanuts 25gm', 'tray_id': '18', 'quantity_in_db': '0', 'sku_id': '4500673', 'quantity_on_tray': '11'}, {'sku_name': 'Townbus Green Masala Peas 28g ', 'tray_id': '19', 'quantity_in_db': '0', 'sku_id': '186042', 'quantity_on_tray': '15'}, {'sku_name': 'McVities Butter Jeera Cookies58gm', 'tray_id': '20', 'quantity_in_db': '0', 'sku_id': '4500709', 'quantity_on_tray': '10'}, {'sku_name': 'Farmely Peri Peri Makhana 14gm', 'tray_id': '21', 'quantity_in_db': '0', 'sku_id': '4500665', 'quantity_on_tray': '7'}, {'sku_name': 'Modern kitchens Banana Chips 21gm', 'tray_id': '22', 'quantity_in_db': '0', 'sku_id': '4500648', 'quantity_on_tray': '8'}, {'sku_name': 'MaxVita Moong daal 25gm', 'tray_id': '23', 'quantity_in_db': '12', 'sku_id': '4500723', 'quantity_on_tray': '17'}, {'sku_name': 'Modern kitchens Garlic Mixture 26gm', 'tray_id': '24', 'quantity_in_db': '12', 'sku_id': '4500672', 'quantity_on_tray': '22'}, {'sku_name': 'Too Yumm Crea onion 33gm', 'tray_id': '25', 'quantity_in_db': '0', 'sku_id': '186100', 'quantity_on_tray': '5'}, {'sku_name': 'MaxVita Crunchy Indian Mixture 30gm', 'tray_id': '26', 'quantity_in_db': '12', 'sku_id': '4500726', 'quantity_on_tray': '20'}, {'sku_name': 'Cavins Belgian chocolate 170ml spl pack', 'tray_id': '31', 'quantity_in_db': '0', 'sku_id': '4500643', 'quantity_on_tray': '3'}, {'sku_name': 'Nescafe Choco Mocha Cold Coffee 180ml', 'tray_id': '32', 'quantity_in_db': '0', 'sku_id': '185994', 'quantity_on_tray': '2'}, {'sku_name': 'Heritage Badam Milk 165ml', 'tray_id': '33', 'quantity_in_db': '0', 'sku_id': '4500724', 'quantity_on_tray': '1'}, {'sku_name': 'Heritage A1 Spiced Butter Milk180ml', 'tray_id': '34', 'quantity_in_db': '0', 'sku_id': '4500499', 'quantity_on_tray': '11'}, {'sku_name': 'Madmix Anardana Raisins 11gm', 'tray_id': '35', 'quantity_in_db': '0', 'sku_id': '4500701', 'quantity_on_tray': '8'}, {'sku_name': 'Paper boat Aam Panna 150ml', 'tray_id': '36', 'quantity_in_db': '0', 'sku_id': '186078', 'quantity_on_tray': '5'}, {'sku_name': 'Paper boat Alphonso Mango 160ml', 'tray_id': '37', 'quantity_in_db': '0', 'sku_id': '4500407', 'quantity_on_tray': '4'}, {'sku_name': 'Eat Bit Peanut  Chikki 32gm', 'tray_id': '38', 'quantity_in_db': '0', 'sku_id': '4500677', 'quantity_on_tray': '6'}, {'sku_name': 'Farmely Classic date Bites 20gm', 'tray_id': '39', 'quantity_in_db': '0', 'sku_id': '4500667', 'quantity_on_tray': '6'}, {'sku_name': 'Epigamia Chocolate Milkshake 200g', 'tray_id': '40', 'quantity_in_db': '0', 'sku_id': '166327', 'quantity_on_tray': '4'}, {'sku_name': 'Eat Bit Sesame  Chikki 32gm', 'tray_id': '41', 'quantity_in_db': '0', 'sku_id': '4500678', 'quantity_on_tray': '39'}, {'sku_name': 'KITKAT Nestle 4 Finger Chocolate 38g', 'tray_id': '42', 'quantity_in_db': '0', 'sku_id': '186084', 'quantity_on_tray': '4'}, {'sku_name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'tray_id': '43', 'quantity_in_db': '0', 'sku_id': '185993', 'quantity_on_tray': '25'}, {'sku_name': 'Maaza Tetra 135ml', 'tray_id': '44', 'quantity_in_db': '0', 'sku_id': '186096', 'quantity_on_tray': '34'}, {'sku_name': 'Bindu Fizz Jeera Masala 250 ML', 'tray_id': '45', 'quantity_in_db': '0', 'sku_id': '186043', 'quantity_on_tray': '9'}, {'sku_name': 'Pepsi ZeroSugar  300ml', 'tray_id': '46', 'quantity_in_db': '0', 'sku_id': '186059', 'quantity_on_tray': '7'}], 'message': 'Tray mismatches found.'}
[2026-08-31 12:07:29,566.566 INFO    ] <class 'urllib3.exceptions.MaxRetryError'>
[2026-08-31 12:07:29,594.594 INFO    ] ('HTTPSConnectionPool(host=\'neuustore.com\', port=443): Max retries exceeded with url: /tm/process-order/update-refill-command/9690357 (Caused by ReadTimeoutError("HTTPSConnectionPool(host=\'neuustore.com\', port=443): Read timed out. (read timeout=5)",))',)
[2026-08-31 12:07:29,603.603 INFO    ] HTTPSConnectionPool(host='neuustore.com', port=443): Max retries exceeded with url: /tm/process-order/update-refill-command/9690357 (Caused by ReadTimeoutError("HTTPSConnectionPool(host='neuustore.com', port=443): Read timed out. (read timeout=5)",))
[2026-08-31 12:07:29,624.624 INFO    ] None
[2026-08-31 12:07:29,626.626 INFO    ] in main while loops
[2026-08-31 12:07:32,633.633 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:07:32
[2026-08-31 12:07:43,090.090 INFO    ] <class 'urllib3.exceptions.MaxRetryError'>
[2026-08-31 12:07:43,099.099 INFO    ] ('HTTPSConnectionPool(host=\'neuustore.com\', port=443): Max retries exceeded with url: /tm/process-order/get-refill-command (Caused by ReadTimeoutError("HTTPSConnectionPool(host=\'neuustore.com\', port=443): Read timed out. (read timeout=5)",))',)
[2026-08-31 12:07:43,108.108 INFO    ] HTTPSConnectionPool(host='neuustore.com', port=443): Max retries exceeded with url: /tm/process-order/get-refill-command (Caused by ReadTimeoutError("HTTPSConnectionPool(host='neuustore.com', port=443): Read timed out. (read timeout=5)",))
[2026-08-31 12:07:46,132.132 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:07:46
[2026-08-31 12:07:56,508.508 INFO    ] <class 'urllib3.exceptions.MaxRetryError'>
[2026-08-31 12:07:56,517.517 INFO    ] ('HTTPSConnectionPool(host=\'neuustore.com\', port=443): Max retries exceeded with url: /tm/process-order/get-refill-command (Caused by ReadTimeoutError("HTTPSConnectionPool(host=\'neuustore.com\', port=443): Read timed out. (read timeout=5)",))',)
[2026-08-31 12:07:56,526.526 INFO    ] HTTPSConnectionPool(host='neuustore.com', port=443): Max retries exceeded with url: /tm/process-order/get-refill-command (Caused by ReadTimeoutError("HTTPSConnectionPool(host='neuustore.com', port=443): Read timed out. (read timeout=5)",))
[2026-08-31 12:07:59,549.549 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:07:59
[2026-08-31 12:08:10,170.170 INFO    ] <class 'urllib3.exceptions.MaxRetryError'>
[2026-08-31 12:08:10,179.179 INFO    ] ('HTTPSConnectionPool(host=\'neuustore.com\', port=443): Max retries exceeded with url: /tm/process-order/get-refill-command (Caused by ReadTimeoutError("HTTPSConnectionPool(host=\'neuustore.com\', port=443): Read timed out. (read timeout=5)",))',)
[2026-08-31 12:08:10,188.188 INFO    ] HTTPSConnectionPool(host='neuustore.com', port=443): Max retries exceeded with url: /tm/process-order/get-refill-command (Caused by ReadTimeoutError("HTTPSConnectionPool(host='neuustore.com', port=443): Read timed out. (read timeout=5)",))
[2026-08-31 12:08:13,212.212 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:08:13
[2026-08-31 12:08:23,660.660 INFO    ] <class 'urllib3.exceptions.MaxRetryError'>
[2026-08-31 12:08:23,670.670 INFO    ] ('HTTPSConnectionPool(host=\'neuustore.com\', port=443): Max retries exceeded with url: /tm/process-order/get-refill-command (Caused by ReadTimeoutError("HTTPSConnectionPool(host=\'neuustore.com\', port=443): Read timed out. (read timeout=5)",))',)
[2026-08-31 12:08:23,680.680 INFO    ] HTTPSConnectionPool(host='neuustore.com', port=443): Max retries exceeded with url: /tm/process-order/get-refill-command (Caused by ReadTimeoutError("HTTPSConnectionPool(host='neuustore.com', port=443): Read timed out. (read timeout=5)",))
[2026-08-31 12:08:26,704.704 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:08:26
[2026-08-31 12:08:37,163.163 INFO    ] <class 'urllib3.exceptions.MaxRetryError'>
[2026-08-31 12:08:37,172.172 INFO    ] ('HTTPSConnectionPool(host=\'neuustore.com\', port=443): Max retries exceeded with url: /tm/process-order/get-refill-command (Caused by ReadTimeoutError("HTTPSConnectionPool(host=\'neuustore.com\', port=443): Read timed out. (read timeout=5)",))',)
[2026-08-31 12:08:37,181.181 INFO    ] HTTPSConnectionPool(host='neuustore.com', port=443): Max retries exceeded with url: /tm/process-order/get-refill-command (Caused by ReadTimeoutError("HTTPSConnectionPool(host='neuustore.com', port=443): Read timed out. (read timeout=5)",))
[2026-08-31 12:08:40,206.206 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:08:40
[2026-08-31 12:08:48,544.544 INFO    ] 
inside get

[2026-08-31 12:08:48,547.547 INFO    ] 200
[2026-08-31 12:08:48,558.558 INFO    ] processing machine command
[2026-08-31 12:08:48,560.560 INFO    ] {"user":"machine","request_data":{"order_id":"TM08202202_refill_260831120651","door_id":[1],"txnType":"refill","door_open_init":false},"action_name":"Waiting for Machine to Complete Refill","action":"complete_refill","refill_order_id":"TM08202202_refill_260831120651","active_doors":["1","2"],"sub-action":"complete_refill"}
[2026-08-31 12:08:48,563.563 INFO    ] {'txnType': 'refill', 'order_id': 'TM08202202_refill_260831120651', 'door_id': [1], 'door_open_init': False}
[2026-08-31 12:09:38,709.709 INFO    ] <class 'urllib3.exceptions.MaxRetryError'>
[2026-08-31 12:09:38,723.723 INFO    ] ('HTTPConnectionPool(host=\'localhost\', port=5000): Max retries exceeded with url: /completeOrder (Caused by ReadTimeoutError("HTTPConnectionPool(host=\'localhost\', port=5000): Read timed out. (read timeout=25)",))',)
[2026-08-31 12:09:38,732.732 INFO    ] HTTPConnectionPool(host='localhost', port=5000): Max retries exceeded with url: /completeOrder (Caused by ReadTimeoutError("HTTPConnectionPool(host='localhost', port=5000): Read timed out. (read timeout=25)",))
[2026-08-31 12:10:28,800.800 INFO    ] <class 'urllib3.exceptions.MaxRetryError'>
[2026-08-31 12:10:28,809.809 INFO    ] ('HTTPConnectionPool(host=\'localhost\', port=5000): Max retries exceeded with url: /completeOrder (Caused by ReadTimeoutError("HTTPConnectionPool(host=\'localhost\', port=5000): Read timed out. (read timeout=25)",))',)
[2026-08-31 12:10:28,818.818 INFO    ] HTTPConnectionPool(host='localhost', port=5000): Max retries exceeded with url: /completeOrder (Caused by ReadTimeoutError("HTTPConnectionPool(host='localhost', port=5000): Read timed out. (read timeout=25)",))
[2026-08-31 12:10:28,827.827 INFO    ] None
[2026-08-31 12:11:21,893.893 INFO    ] <class 'urllib3.exceptions.MaxRetryError'>
[2026-08-31 12:11:21,903.903 INFO    ] ('HTTPConnectionPool(host=\'localhost\', port=5000): Max retries exceeded with url: /completeOrder (Caused by ReadTimeoutError("HTTPConnectionPool(host=\'localhost\', port=5000): Read timed out. (read timeout=25)",))',)
[2026-08-31 12:11:21,912.912 INFO    ] HTTPConnectionPool(host='localhost', port=5000): Max retries exceeded with url: /completeOrder (Caused by ReadTimeoutError("HTTPConnectionPool(host='localhost', port=5000): Read timed out. (read timeout=25)",))
[2026-08-31 12:11:21,921.921 INFO    ] None
[2026-08-31 12:11:41,432.432 INFO    ] {"tray_mismatches": [{"sku_name": "Town Bus Soya Stick ,35g", "quantity_on_tray": "14", "tray_id": "11", "quantity_in_db": "0", "sku_id": "165143"}, {"sku_name": "Ongibytes Garlic Muruku ", "quantity_on_tray": "10", "tray_id": "12", "quantity_in_db": "10", "sku_id": "4500605"}, {"sku_name": "MaxVita Rice Kodubale 30gm", "quantity_on_tray": "11", "tray_id": "13", "quantity_in_db": "10", "sku_id": "4500722"}, {"sku_name": "McVities Triple Nut Cookies 58gm", "quantity_on_tray": "24", "tray_id": "14", "quantity_in_db": "15", "sku_id": "4500714"}, {"sku_name": "MaxVita Premium crunch Rusk 51gm", "quantity_on_tray": "11", "tray_id": "15", "quantity_in_db": "0", "sku_id": "4500710"}, {"sku_name": "McVities Orange Cream Biscuts 61gm", "quantity_on_tray": "17", "tray_id": "16", "quantity_in_db": "0", "sku_id": "4500681"}, {"sku_name": "Modern Kitchen Masala Peanut 28gm", "quantity_on_tray": "16", "tray_id": "17", "quantity_in_db": "12", "sku_id": "4500708"}, {"sku_name": "Modern kitchens Salted Peanuts 25gm", "quantity_on_tray": "11", "tray_id": "18", "quantity_in_db": "0", "sku_id": "4500673"}, {"sku_name": "Townbus Green Masala Peas 28g ", "quantity_on_tray": "15", "tray_id": "19", "quantity_in_db": "0", "sku_id": "186042"}, {"sku_name": "McVities Butter Jeera Cookies58gm", "quantity_on_tray": "10", "tray_id": "20", "quantity_in_db": "0", "sku_id": "4500709"}, {"sku_name": "Farmely Peri Peri Makhana 14gm", "quantity_on_tray": "7", "tray_id": "21", "quantity_in_db": "0", "sku_id": "4500665"}, {"sku_name": "Modern kitchens Banana Chips 21gm", "quantity_on_tray": "8", "tray_id": "22", "quantity_in_db": "0", "sku_id": "4500648"}, {"sku_name": "MaxVita Moong daal 25gm", "quantity_on_tray": "17", "tray_id": "23", "quantity_in_db": "12", "sku_id": "4500723"}, {"sku_name": "Modern kitchens Garlic Mixture 26gm", "quantity_on_tray": "22", "tray_id": "24", "quantity_in_db": "12", "sku_id": "4500672"}, {"sku_name": "Too Yumm Crea onion 33gm", "quantity_on_tray": "5", "tray_id": "25", "quantity_in_db": "0", "sku_id": "186100"}, {"sku_name": "MaxVita Crunchy Indian Mixture 30gm", "quantity_on_tray": "20", "tray_id": "26", "quantity_in_db": "12", "sku_id": "4500726"}, {"sku_name": "Cavins Belgian chocolate 170ml spl pack", "quantity_on_tray": "3", "tray_id": "31", "quantity_in_db": "0", "sku_id": "4500643"}, {"sku_name": "Nescafe Choco Mocha Cold Coffee 180ml", "quantity_on_tray": "2", "tray_id": "32", "quantity_in_db": "0", "sku_id": "185994"}, {"sku_name": "Heritage Badam Milk 165ml", "quantity_on_tray": "1", "tray_id": "33", "quantity_in_db": "0", "sku_id": "4500724"}, {"sku_name": "Heritage A1 Spiced Butter Milk180ml", "quantity_on_tray": "11", "tray_id": "34", "quantity_in_db": "0", "sku_id": "4500499"}, {"sku_name": "Madmix Anardana Raisins 11gm", "quantity_on_tray": "8", "tray_id": "35", "quantity_in_db": "0", "sku_id": "4500701"}, {"sku_name": "Paper boat Aam Panna 150ml", "quantity_on_tray": "5", "tray_id": "36", "quantity_in_db": "0", "sku_id": "186078"}, {"sku_name": "Paper boat Alphonso Mango 160ml", "quantity_on_tray": "4", "tray_id": "37", "quantity_in_db": "0", "sku_id": "4500407"}, {"sku_name": "Eat Bit Peanut  Chikki 32gm", "quantity_on_tray": "6", "tray_id": "38", "quantity_in_db": "0", "sku_id": "4500677"}, {"sku_name": "Farmely Classic date Bites 20gm", "quantity_on_tray": "6", "tray_id": "39", "quantity_in_db": "0", "sku_id": "4500667"}, {"sku_name": "Epigamia Chocolate Milkshake 200g", "quantity_on_tray": "4", "tray_id": "40", "quantity_in_db": "0", "sku_id": "166327"}, {"sku_name": "Eat Bit Sesame  Chikki 32gm", "quantity_on_tray": "39", "tray_id": "41", "quantity_in_db": "0", "sku_id": "4500678"}, {"sku_name": "KITKAT Nestle 4 Finger Chocolate 38g", "quantity_on_tray": "4", "tray_id": "42", "quantity_in_db": "0", "sku_id": "186084"}, {"sku_name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g", "quantity_on_tray": "25", "tray_id": "43", "quantity_in_db": "0", "sku_id": "185993"}, {"sku_name": "Maaza Tetra 135ml", "quantity_on_tray": "34", "tray_id": "44", "quantity_in_db": "0", "sku_id": "186096"}, {"sku_name": "Bindu Fizz Jeera Masala 250 ML", "quantity_on_tray": "9", "tray_id": "45", "quantity_in_db": "0", "sku_id": "186043"}, {"sku_name": "Pepsi ZeroSugar  300ml", "quantity_on_tray": "7", "tray_id": "46", "quantity_in_db": "0", "sku_id": "186059"}], "message": "Tray mismatches found.", "success": true}
[2026-08-31 12:11:41,436.436 INFO    ] {'success': True, 'tray_mismatches': [{'sku_name': 'Town Bus Soya Stick ,35g', 'tray_id': '11', 'quantity_in_db': '0', 'sku_id': '165143', 'quantity_on_tray': '14'}, {'sku_name': 'Ongibytes Garlic Muruku ', 'tray_id': '12', 'quantity_in_db': '10', 'sku_id': '4500605', 'quantity_on_tray': '10'}, {'sku_name': 'MaxVita Rice Kodubale 30gm', 'tray_id': '13', 'quantity_in_db': '10', 'sku_id': '4500722', 'quantity_on_tray': '11'}, {'sku_name': 'McVities Triple Nut Cookies 58gm', 'tray_id': '14', 'quantity_in_db': '15', 'sku_id': '4500714', 'quantity_on_tray': '24'}, {'sku_name': 'MaxVita Premium crunch Rusk 51gm', 'tray_id': '15', 'quantity_in_db': '0', 'sku_id': '4500710', 'quantity_on_tray': '11'}, {'sku_name': 'McVities Orange Cream Biscuts 61gm', 'tray_id': '16', 'quantity_in_db': '0', 'sku_id': '4500681', 'quantity_on_tray': '17'}, {'sku_name': 'Modern Kitchen Masala Peanut 28gm', 'tray_id': '17', 'quantity_in_db': '12', 'sku_id': '4500708', 'quantity_on_tray': '16'}, {'sku_name': 'Modern kitchens Salted Peanuts 25gm', 'tray_id': '18', 'quantity_in_db': '0', 'sku_id': '4500673', 'quantity_on_tray': '11'}, {'sku_name': 'Townbus Green Masala Peas 28g ', 'tray_id': '19', 'quantity_in_db': '0', 'sku_id': '186042', 'quantity_on_tray': '15'}, {'sku_name': 'McVities Butter Jeera Cookies58gm', 'tray_id': '20', 'quantity_in_db': '0', 'sku_id': '4500709', 'quantity_on_tray': '10'}, {'sku_name': 'Farmely Peri Peri Makhana 14gm', 'tray_id': '21', 'quantity_in_db': '0', 'sku_id': '4500665', 'quantity_on_tray': '7'}, {'sku_name': 'Modern kitchens Banana Chips 21gm', 'tray_id': '22', 'quantity_in_db': '0', 'sku_id': '4500648', 'quantity_on_tray': '8'}, {'sku_name': 'MaxVita Moong daal 25gm', 'tray_id': '23', 'quantity_in_db': '12', 'sku_id': '4500723', 'quantity_on_tray': '17'}, {'sku_name': 'Modern kitchens Garlic Mixture 26gm', 'tray_id': '24', 'quantity_in_db': '12', 'sku_id': '4500672', 'quantity_on_tray': '22'}, {'sku_name': 'Too Yumm Crea onion 33gm', 'tray_id': '25', 'quantity_in_db': '0', 'sku_id': '186100', 'quantity_on_tray': '5'}, {'sku_name': 'MaxVita Crunchy Indian Mixture 30gm', 'tray_id': '26', 'quantity_in_db': '12', 'sku_id': '4500726', 'quantity_on_tray': '20'}, {'sku_name': 'Cavins Belgian chocolate 170ml spl pack', 'tray_id': '31', 'quantity_in_db': '0', 'sku_id': '4500643', 'quantity_on_tray': '3'}, {'sku_name': 'Nescafe Choco Mocha Cold Coffee 180ml', 'tray_id': '32', 'quantity_in_db': '0', 'sku_id': '185994', 'quantity_on_tray': '2'}, {'sku_name': 'Heritage Badam Milk 165ml', 'tray_id': '33', 'quantity_in_db': '0', 'sku_id': '4500724', 'quantity_on_tray': '1'}, {'sku_name': 'Heritage A1 Spiced Butter Milk180ml', 'tray_id': '34', 'quantity_in_db': '0', 'sku_id': '4500499', 'quantity_on_tray': '11'}, {'sku_name': 'Madmix Anardana Raisins 11gm', 'tray_id': '35', 'quantity_in_db': '0', 'sku_id': '4500701', 'quantity_on_tray': '8'}, {'sku_name': 'Paper boat Aam Panna 150ml', 'tray_id': '36', 'quantity_in_db': '0', 'sku_id': '186078', 'quantity_on_tray': '5'}, {'sku_name': 'Paper boat Alphonso Mango 160ml', 'tray_id': '37', 'quantity_in_db': '0', 'sku_id': '4500407', 'quantity_on_tray': '4'}, {'sku_name': 'Eat Bit Peanut  Chikki 32gm', 'tray_id': '38', 'quantity_in_db': '0', 'sku_id': '4500677', 'quantity_on_tray': '6'}, {'sku_name': 'Farmely Classic date Bites 20gm', 'tray_id': '39', 'quantity_in_db': '0', 'sku_id': '4500667', 'quantity_on_tray': '6'}, {'sku_name': 'Epigamia Chocolate Milkshake 200g', 'tray_id': '40', 'quantity_in_db': '0', 'sku_id': '166327', 'quantity_on_tray': '4'}, {'sku_name': 'Eat Bit Sesame  Chikki 32gm', 'tray_id': '41', 'quantity_in_db': '0', 'sku_id': '4500678', 'quantity_on_tray': '39'}, {'sku_name': 'KITKAT Nestle 4 Finger Chocolate 38g', 'tray_id': '42', 'quantity_in_db': '0', 'sku_id': '186084', 'quantity_on_tray': '4'}, {'sku_name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'tray_id': '43', 'quantity_in_db': '0', 'sku_id': '185993', 'quantity_on_tray': '25'}, {'sku_name': 'Maaza Tetra 135ml', 'tray_id': '44', 'quantity_in_db': '0', 'sku_id': '186096', 'quantity_on_tray': '34'}, {'sku_name': 'Bindu Fizz Jeera Masala 250 ML', 'tray_id': '45', 'quantity_in_db': '0', 'sku_id': '186043', 'quantity_on_tray': '9'}, {'sku_name': 'Pepsi ZeroSugar  300ml', 'tray_id': '46', 'quantity_in_db': '0', 'sku_id': '186059', 'quantity_on_tray': '7'}], 'message': 'Tray mismatches found.'}
[2026-08-31 12:11:41,440.440 INFO    ] {'success': True, 'tray_mismatches': [{'sku_name': 'Town Bus Soya Stick ,35g', 'tray_id': '11', 'quantity_in_db': '0', 'sku_id': '165143', 'quantity_on_tray': '14'}, {'sku_name': 'Ongibytes Garlic Muruku ', 'tray_id': '12', 'quantity_in_db': '10', 'sku_id': '4500605', 'quantity_on_tray': '10'}, {'sku_name': 'MaxVita Rice Kodubale 30gm', 'tray_id': '13', 'quantity_in_db': '10', 'sku_id': '4500722', 'quantity_on_tray': '11'}, {'sku_name': 'McVities Triple Nut Cookies 58gm', 'tray_id': '14', 'quantity_in_db': '15', 'sku_id': '4500714', 'quantity_on_tray': '24'}, {'sku_name': 'MaxVita Premium crunch Rusk 51gm', 'tray_id': '15', 'quantity_in_db': '0', 'sku_id': '4500710', 'quantity_on_tray': '11'}, {'sku_name': 'McVities Orange Cream Biscuts 61gm', 'tray_id': '16', 'quantity_in_db': '0', 'sku_id': '4500681', 'quantity_on_tray': '17'}, {'sku_name': 'Modern Kitchen Masala Peanut 28gm', 'tray_id': '17', 'quantity_in_db': '12', 'sku_id': '4500708', 'quantity_on_tray': '16'}, {'sku_name': 'Modern kitchens Salted Peanuts 25gm', 'tray_id': '18', 'quantity_in_db': '0', 'sku_id': '4500673', 'quantity_on_tray': '11'}, {'sku_name': 'Townbus Green Masala Peas 28g ', 'tray_id': '19', 'quantity_in_db': '0', 'sku_id': '186042', 'quantity_on_tray': '15'}, {'sku_name': 'McVities Butter Jeera Cookies58gm', 'tray_id': '20', 'quantity_in_db': '0', 'sku_id': '4500709', 'quantity_on_tray': '10'}, {'sku_name': 'Farmely Peri Peri Makhana 14gm', 'tray_id': '21', 'quantity_in_db': '0', 'sku_id': '4500665', 'quantity_on_tray': '7'}, {'sku_name': 'Modern kitchens Banana Chips 21gm', 'tray_id': '22', 'quantity_in_db': '0', 'sku_id': '4500648', 'quantity_on_tray': '8'}, {'sku_name': 'MaxVita Moong daal 25gm', 'tray_id': '23', 'quantity_in_db': '12', 'sku_id': '4500723', 'quantity_on_tray': '17'}, {'sku_name': 'Modern kitchens Garlic Mixture 26gm', 'tray_id': '24', 'quantity_in_db': '12', 'sku_id': '4500672', 'quantity_on_tray': '22'}, {'sku_name': 'Too Yumm Crea onion 33gm', 'tray_id': '25', 'quantity_in_db': '0', 'sku_id': '186100', 'quantity_on_tray': '5'}, {'sku_name': 'MaxVita Crunchy Indian Mixture 30gm', 'tray_id': '26', 'quantity_in_db': '12', 'sku_id': '4500726', 'quantity_on_tray': '20'}, {'sku_name': 'Cavins Belgian chocolate 170ml spl pack', 'tray_id': '31', 'quantity_in_db': '0', 'sku_id': '4500643', 'quantity_on_tray': '3'}, {'sku_name': 'Nescafe Choco Mocha Cold Coffee 180ml', 'tray_id': '32', 'quantity_in_db': '0', 'sku_id': '185994', 'quantity_on_tray': '2'}, {'sku_name': 'Heritage Badam Milk 165ml', 'tray_id': '33', 'quantity_in_db': '0', 'sku_id': '4500724', 'quantity_on_tray': '1'}, {'sku_name': 'Heritage A1 Spiced Butter Milk180ml', 'tray_id': '34', 'quantity_in_db': '0', 'sku_id': '4500499', 'quantity_on_tray': '11'}, {'sku_name': 'Madmix Anardana Raisins 11gm', 'tray_id': '35', 'quantity_in_db': '0', 'sku_id': '4500701', 'quantity_on_tray': '8'}, {'sku_name': 'Paper boat Aam Panna 150ml', 'tray_id': '36', 'quantity_in_db': '0', 'sku_id': '186078', 'quantity_on_tray': '5'}, {'sku_name': 'Paper boat Alphonso Mango 160ml', 'tray_id': '37', 'quantity_in_db': '0', 'sku_id': '4500407', 'quantity_on_tray': '4'}, {'sku_name': 'Eat Bit Peanut  Chikki 32gm', 'tray_id': '38', 'quantity_in_db': '0', 'sku_id': '4500677', 'quantity_on_tray': '6'}, {'sku_name': 'Farmely Classic date Bites 20gm', 'tray_id': '39', 'quantity_in_db': '0', 'sku_id': '4500667', 'quantity_on_tray': '6'}, {'sku_name': 'Epigamia Chocolate Milkshake 200g', 'tray_id': '40', 'quantity_in_db': '0', 'sku_id': '166327', 'quantity_on_tray': '4'}, {'sku_name': 'Eat Bit Sesame  Chikki 32gm', 'tray_id': '41', 'quantity_in_db': '0', 'sku_id': '4500678', 'quantity_on_tray': '39'}, {'sku_name': 'KITKAT Nestle 4 Finger Chocolate 38g', 'tray_id': '42', 'quantity_in_db': '0', 'sku_id': '186084', 'quantity_on_tray': '4'}, {'sku_name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'tray_id': '43', 'quantity_in_db': '0', 'sku_id': '185993', 'quantity_on_tray': '25'}, {'sku_name': 'Maaza Tetra 135ml', 'tray_id': '44', 'quantity_in_db': '0', 'sku_id': '186096', 'quantity_on_tray': '34'}, {'sku_name': 'Bindu Fizz Jeera Masala 250 ML', 'tray_id': '45', 'quantity_in_db': '0', 'sku_id': '186043', 'quantity_on_tray': '9'}, {'sku_name': 'Pepsi ZeroSugar  300ml', 'tray_id': '46', 'quantity_in_db': '0', 'sku_id': '186059', 'quantity_on_tray': '7'}], 'message': 'Tray mismatches found.'}
[2026-08-31 12:11:54,838.838 INFO    ] <class 'urllib3.exceptions.MaxRetryError'>
[2026-08-31 12:11:54,847.847 INFO    ] ('HTTPSConnectionPool(host=\'neuustore.com\', port=443): Max retries exceeded with url: /tm/process-order/update-refill-command/9690357 (Caused by ReadTimeoutError("HTTPSConnectionPool(host=\'neuustore.com\', port=443): Read timed out. (read timeout=5)",))',)
[2026-08-31 12:11:54,856.856 INFO    ] HTTPSConnectionPool(host='neuustore.com', port=443): Max retries exceeded with url: /tm/process-order/update-refill-command/9690357 (Caused by ReadTimeoutError("HTTPSConnectionPool(host='neuustore.com', port=443): Read timed out. (read timeout=5)",))
[2026-08-31 12:11:54,876.876 INFO    ] None
[2026-08-31 12:11:54,878.878 INFO    ] in main while loops
[2026-08-31 12:11:57,885.885 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:11:57
[2026-08-31 12:12:04,792.792 INFO    ] 
inside get

[2026-08-31 12:12:04,795.795 INFO    ] 200
[2026-08-31 12:12:04,806.806 INFO    ] processing machine command
[2026-08-31 12:12:04,809.809 INFO    ] {"user":"machine","request_data":{"order_id":"TM08202202_refill_260831120651","door_id":[1],"txnType":"refill","door_open_init":false},"action_name":"Waiting for Machine to Complete Refill","action":"complete_refill","refill_order_id":"TM08202202_refill_260831120651","active_doors":["1","2"],"sub-action":"complete_refill"}
[2026-08-31 12:12:04,812.812 INFO    ] {'txnType': 'refill', 'order_id': 'TM08202202_refill_260831120651', 'door_id': [1], 'door_open_init': False}
[2026-08-31 12:12:27,971.971 INFO    ] {"tray_mismatches": [{"sku_name": "Town Bus Soya Stick ,35g", "quantity_on_tray": "14", "tray_id": "11", "quantity_in_db": "0", "sku_id": "165143"}, {"sku_name": "Ongibytes Garlic Muruku ", "quantity_on_tray": "10", "tray_id": "12", "quantity_in_db": "10", "sku_id": "4500605"}, {"sku_name": "MaxVita Rice Kodubale 30gm", "quantity_on_tray": "11", "tray_id": "13", "quantity_in_db": "10", "sku_id": "4500722"}, {"sku_name": "McVities Triple Nut Cookies 58gm", "quantity_on_tray": "24", "tray_id": "14", "quantity_in_db": "15", "sku_id": "4500714"}, {"sku_name": "MaxVita Premium crunch Rusk 51gm", "quantity_on_tray": "11", "tray_id": "15", "quantity_in_db": "0", "sku_id": "4500710"}, {"sku_name": "McVities Orange Cream Biscuts 61gm", "quantity_on_tray": "17", "tray_id": "16", "quantity_in_db": "0", "sku_id": "4500681"}, {"sku_name": "Modern Kitchen Masala Peanut 28gm", "quantity_on_tray": "16", "tray_id": "17", "quantity_in_db": "12", "sku_id": "4500708"}, {"sku_name": "Modern kitchens Salted Peanuts 25gm", "quantity_on_tray": "11", "tray_id": "18", "quantity_in_db": "0", "sku_id": "4500673"}, {"sku_name": "Townbus Green Masala Peas 28g ", "quantity_on_tray": "15", "tray_id": "19", "quantity_in_db": "0", "sku_id": "186042"}, {"sku_name": "McVities Butter Jeera Cookies58gm", "quantity_on_tray": "10", "tray_id": "20", "quantity_in_db": "0", "sku_id": "4500709"}, {"sku_name": "Farmely Peri Peri Makhana 14gm", "quantity_on_tray": "7", "tray_id": "21", "quantity_in_db": "0", "sku_id": "4500665"}, {"sku_name": "Modern kitchens Banana Chips 21gm", "quantity_on_tray": "8", "tray_id": "22", "quantity_in_db": "0", "sku_id": "4500648"}, {"sku_name": "MaxVita Moong daal 25gm", "quantity_on_tray": "17", "tray_id": "23", "quantity_in_db": "12", "sku_id": "4500723"}, {"sku_name": "Modern kitchens Garlic Mixture 26gm", "quantity_on_tray": "23", "tray_id": "24", "quantity_in_db": "12", "sku_id": "4500672"}, {"sku_name": "Too Yumm Crea onion 33gm", "quantity_on_tray": "5", "tray_id": "25", "quantity_in_db": "0", "sku_id": "186100"}, {"sku_name": "MaxVita Crunchy Indian Mixture 30gm", "quantity_on_tray": "20", "tray_id": "26", "quantity_in_db": "12", "sku_id": "4500726"}, {"sku_name": "Cavins Belgian chocolate 170ml spl pack", "quantity_on_tray": "3", "tray_id": "31", "quantity_in_db": "0", "sku_id": "4500643"}, {"sku_name": "Nescafe Choco Mocha Cold Coffee 180ml", "quantity_on_tray": "2", "tray_id": "32", "quantity_in_db": "0", "sku_id": "185994"}, {"sku_name": "Heritage Badam Milk 165ml", "quantity_on_tray": "1", "tray_id": "33", "quantity_in_db": "0", "sku_id": "4500724"}, {"sku_name": "Heritage A1 Spiced Butter Milk180ml", "quantity_on_tray": "11", "tray_id": "34", "quantity_in_db": "0", "sku_id": "4500499"}, {"sku_name": "Madmix Anardana Raisins 11gm", "quantity_on_tray": "8", "tray_id": "35", "quantity_in_db": "0", "sku_id": "4500701"}, {"sku_name": "Paper boat Aam Panna 150ml", "quantity_on_tray": "5", "tray_id": "36", "quantity_in_db": "0", "sku_id": "186078"}, {"sku_name": "Paper boat Alphonso Mango 160ml", "quantity_on_tray": "4", "tray_id": "37", "quantity_in_db": "0", "sku_id": "4500407"}, {"sku_name": "Eat Bit Peanut  Chikki 32gm", "quantity_on_tray": "6", "tray_id": "38", "quantity_in_db": "0", "sku_id": "4500677"}, {"sku_name": "Farmely Classic date Bites 20gm", "quantity_on_tray": "6", "tray_id": "39", "quantity_in_db": "0", "sku_id": "4500667"}, {"sku_name": "Epigamia Chocolate Milkshake 200g", "quantity_on_tray": "4", "tray_id": "40", "quantity_in_db": "0", "sku_id": "166327"}, {"sku_name": "Eat Bit Sesame  Chikki 32gm", "quantity_on_tray": "39", "tray_id": "41", "quantity_in_db": "0", "sku_id": "4500678"}, {"sku_name": "KITKAT Nestle 4 Finger Chocolate 38g", "quantity_on_tray": "4", "tray_id": "42", "quantity_in_db": "0", "sku_id": "186084"}, {"sku_name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g", "quantity_on_tray": "25", "tray_id": "43", "quantity_in_db": "0", "sku_id": "185993"}, {"sku_name": "Maaza Tetra 135ml", "quantity_on_tray": "34", "tray_id": "44", "quantity_in_db": "0", "sku_id": "186096"}, {"sku_name": "Bindu Fizz Jeera Masala 250 ML", "quantity_on_tray": "9", "tray_id": "45", "quantity_in_db": "0", "sku_id": "186043"}, {"sku_name": "Pepsi ZeroSugar  300ml", "quantity_on_tray": "7", "tray_id": "46", "quantity_in_db": "0", "sku_id": "186059"}], "message": "Tray mismatches found.", "success": true}
[2026-08-31 12:12:27,975.975 INFO    ] {'success': True, 'tray_mismatches': [{'sku_name': 'Town Bus Soya Stick ,35g', 'tray_id': '11', 'quantity_in_db': '0', 'sku_id': '165143', 'quantity_on_tray': '14'}, {'sku_name': 'Ongibytes Garlic Muruku ', 'tray_id': '12', 'quantity_in_db': '10', 'sku_id': '4500605', 'quantity_on_tray': '10'}, {'sku_name': 'MaxVita Rice Kodubale 30gm', 'tray_id': '13', 'quantity_in_db': '10', 'sku_id': '4500722', 'quantity_on_tray': '11'}, {'sku_name': 'McVities Triple Nut Cookies 58gm', 'tray_id': '14', 'quantity_in_db': '15', 'sku_id': '4500714', 'quantity_on_tray': '24'}, {'sku_name': 'MaxVita Premium crunch Rusk 51gm', 'tray_id': '15', 'quantity_in_db': '0', 'sku_id': '4500710', 'quantity_on_tray': '11'}, {'sku_name': 'McVities Orange Cream Biscuts 61gm', 'tray_id': '16', 'quantity_in_db': '0', 'sku_id': '4500681', 'quantity_on_tray': '17'}, {'sku_name': 'Modern Kitchen Masala Peanut 28gm', 'tray_id': '17', 'quantity_in_db': '12', 'sku_id': '4500708', 'quantity_on_tray': '16'}, {'sku_name': 'Modern kitchens Salted Peanuts 25gm', 'tray_id': '18', 'quantity_in_db': '0', 'sku_id': '4500673', 'quantity_on_tray': '11'}, {'sku_name': 'Townbus Green Masala Peas 28g ', 'tray_id': '19', 'quantity_in_db': '0', 'sku_id': '186042', 'quantity_on_tray': '15'}, {'sku_name': 'McVities Butter Jeera Cookies58gm', 'tray_id': '20', 'quantity_in_db': '0', 'sku_id': '4500709', 'quantity_on_tray': '10'}, {'sku_name': 'Farmely Peri Peri Makhana 14gm', 'tray_id': '21', 'quantity_in_db': '0', 'sku_id': '4500665', 'quantity_on_tray': '7'}, {'sku_name': 'Modern kitchens Banana Chips 21gm', 'tray_id': '22', 'quantity_in_db': '0', 'sku_id': '4500648', 'quantity_on_tray': '8'}, {'sku_name': 'MaxVita Moong daal 25gm', 'tray_id': '23', 'quantity_in_db': '12', 'sku_id': '4500723', 'quantity_on_tray': '17'}, {'sku_name': 'Modern kitchens Garlic Mixture 26gm', 'tray_id': '24', 'quantity_in_db': '12', 'sku_id': '4500672', 'quantity_on_tray': '23'}, {'sku_name': 'Too Yumm Crea onion 33gm', 'tray_id': '25', 'quantity_in_db': '0', 'sku_id': '186100', 'quantity_on_tray': '5'}, {'sku_name': 'MaxVita Crunchy Indian Mixture 30gm', 'tray_id': '26', 'quantity_in_db': '12', 'sku_id': '4500726', 'quantity_on_tray': '20'}, {'sku_name': 'Cavins Belgian chocolate 170ml spl pack', 'tray_id': '31', 'quantity_in_db': '0', 'sku_id': '4500643', 'quantity_on_tray': '3'}, {'sku_name': 'Nescafe Choco Mocha Cold Coffee 180ml', 'tray_id': '32', 'quantity_in_db': '0', 'sku_id': '185994', 'quantity_on_tray': '2'}, {'sku_name': 'Heritage Badam Milk 165ml', 'tray_id': '33', 'quantity_in_db': '0', 'sku_id': '4500724', 'quantity_on_tray': '1'}, {'sku_name': 'Heritage A1 Spiced Butter Milk180ml', 'tray_id': '34', 'quantity_in_db': '0', 'sku_id': '4500499', 'quantity_on_tray': '11'}, {'sku_name': 'Madmix Anardana Raisins 11gm', 'tray_id': '35', 'quantity_in_db': '0', 'sku_id': '4500701', 'quantity_on_tray': '8'}, {'sku_name': 'Paper boat Aam Panna 150ml', 'tray_id': '36', 'quantity_in_db': '0', 'sku_id': '186078', 'quantity_on_tray': '5'}, {'sku_name': 'Paper boat Alphonso Mango 160ml', 'tray_id': '37', 'quantity_in_db': '0', 'sku_id': '4500407', 'quantity_on_tray': '4'}, {'sku_name': 'Eat Bit Peanut  Chikki 32gm', 'tray_id': '38', 'quantity_in_db': '0', 'sku_id': '4500677', 'quantity_on_tray': '6'}, {'sku_name': 'Farmely Classic date Bites 20gm', 'tray_id': '39', 'quantity_in_db': '0', 'sku_id': '4500667', 'quantity_on_tray': '6'}, {'sku_name': 'Epigamia Chocolate Milkshake 200g', 'tray_id': '40', 'quantity_in_db': '0', 'sku_id': '166327', 'quantity_on_tray': '4'}, {'sku_name': 'Eat Bit Sesame  Chikki 32gm', 'tray_id': '41', 'quantity_in_db': '0', 'sku_id': '4500678', 'quantity_on_tray': '39'}, {'sku_name': 'KITKAT Nestle 4 Finger Chocolate 38g', 'tray_id': '42', 'quantity_in_db': '0', 'sku_id': '186084', 'quantity_on_tray': '4'}, {'sku_name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'tray_id': '43', 'quantity_in_db': '0', 'sku_id': '185993', 'quantity_on_tray': '25'}, {'sku_name': 'Maaza Tetra 135ml', 'tray_id': '44', 'quantity_in_db': '0', 'sku_id': '186096', 'quantity_on_tray': '34'}, {'sku_name': 'Bindu Fizz Jeera Masala 250 ML', 'tray_id': '45', 'quantity_in_db': '0', 'sku_id': '186043', 'quantity_on_tray': '9'}, {'sku_name': 'Pepsi ZeroSugar  300ml', 'tray_id': '46', 'quantity_in_db': '0', 'sku_id': '186059', 'quantity_on_tray': '7'}], 'message': 'Tray mismatches found.'}
[2026-08-31 12:12:34,991.991 INFO    ] 
inside post

[2026-08-31 12:12:34,994.994 INFO    ] 200
[2026-08-31 12:12:34,997.997 INFO    ] {"order_id":"9690357","vm_id":"1660749537502","user_id":"9036356553","status":"active","server_status":"in-progress","server_response":"","command_todo":"interactive-refill","last_command_response":"{\"success\":true,\"tray_mismatches\":[{\"sku_name\":\"Town Bus Soya Stick ,35g\",\"tray_id\":\"11\",\"quantity_in_db\":\"0\",\"sku_id\":\"165143\",\"quantity_on_tray\":\"14\"},{\"sku_name\":\"Ongibytes Garlic Muruku \",\"tray_id\":\"12\",\"quantity_in_db\":\"10\",\"sku_id\":\"4500605\",\"quantity_on_tray\":\"10\"},{\"sku_name\":\"MaxVita Rice Kodubale 30gm\",\"tray_id\":\"13\",\"quantity_in_db\":\"10\",\"sku_id\":\"4500722\",\"quantity_on_tray\":\"11\"},{\"sku_name\":\"McVities Triple Nut Cookies 58gm\",\"tray_id\":\"14\",\"quantity_in_db\":\"15\",\"sku_id\":\"4500714\",\"quantity_on_tray\":\"24\"},{\"sku_name\":\"MaxVita Premium crunch Rusk 51gm\",\"tray_id\":\"15\",\"quantity_in_db\":\"0\",\"sku_id\":\"4500710\",\"quantity_on_tray\":\"11\"},{\"sku_name\":\"McVities Orange Cream Biscuts 61gm\",\"tray_id\":\"16\",\"quantity_in_db\":\"0\",\"sku_id\":\"4500681\",\"quantity_on_tray\":\"17\"},{\"sku_name\":\"Modern Kitchen Masala Peanut 28gm\",\"tray_id\":\"17\",\"quantity_in_db\":\"12\",\"sku_id\":\"4500708\",\"quantity_on_tray\":\"16\"},{\"sku_name\":\"Modern kitchens Salted Peanuts 25gm\",\"tray_id\":\"18\",\"quantity_in_db\":\"0\",\"sku_id\":\"4500673\",\"quantity_on_tray\":\"11\"},{\"sku_name\":\"Townbus Green Masala Peas 28g \",\"tray_id\":\"19\",\"quantity_in_db\":\"0\",\"sku_id\":\"186042\",\"quantity_on_tray\":\"15\"},{\"sku_name\":\"McVities Butter Jeera Cookies58gm\",\"tray_id\":\"20\",\"quantity_in_db\":\"0\",\"sku_id\":\"4500709\",\"quantity_on_tray\":\"10\"},{\"sku_name\":\"Farmely Peri Peri Makhana 14gm\",\"tray_id\":\"21\",\"quantity_in_db\":\"0\",\"sku_id\":\"4500665\",\"quantity_on_tray\":\"7\"},{\"sku_name\":\"Modern kitchens Banana Chips 21gm\",\"tray_id\":\"22\",\"quantity_in_db\":\"0\",\"sku_id\":\"4500648\",\"quantity_on_tray\":\"8\"},{\"sku_name\":\"MaxVita Moong daal 25gm\",\"tray_id\":\"23\",\"quantity_in_db\":\"12\",\"sku_id\":\"4500723\",\"quantity_on_tray\":\"17\"},{\"sku_name\":\"Modern kitchens Garlic Mixture 26gm\",\"tray_id\":\"24\",\"quantity_in_db\":\"12\",\"sku_id\":\"4500672\",\"quantity_on_tray\":\"23\"},{\"sku_name\":\"Too Yumm Crea onion 33gm\",\"tray_id\":\"25\",\"quantity_in_db\":\"0\",\"sku_id\":\"186100\",\"quantity_on_tray\":\"5\"},{\"sku_name\":\"MaxVita Crunchy Indian Mixture 30gm\",\"tray_id\":\"26\",\"quantity_in_db\":\"12\",\"sku_id\":\"4500726\",\"quantity_on_tray\":\"20\"},{\"sku_name\":\"Cavins Belgian chocolate 170ml spl pack\",\"tray_id\":\"31\",\"quantity_in_db\":\"0\",\"sku_id\":\"4500643\",\"quantity_on_tray\":\"3\"},{\"sku_name\":\"Nescafe Choco Mocha Cold Coffee 180ml\",\"tray_id\":\"32\",\"quantity_in_db\":\"0\",\"sku_id\":\"185994\",\"quantity_on_tray\":\"2\"},{\"sku_name\":\"Heritage Badam Milk 165ml\",\"tray_id\":\"33\",\"quantity_in_db\":\"0\",\"sku_id\":\"4500724\",\"quantity_on_tray\":\"1\"},{\"sku_name\":\"Heritage A1 Spiced Butter Milk180ml\",\"tray_id\":\"34\",\"quantity_in_db\":\"0\",\"sku_id\":\"4500499\",\"quantity_on_tray\":\"11\"},{\"sku_name\":\"Madmix Anardana Raisins 11gm\",\"tray_id\":\"35\",\"quantity_in_db\":\"0\",\"sku_id\":\"4500701\",\"quantity_on_tray\":\"8\"},{\"sku_name\":\"Paper boat Aam Panna 150ml\",\"tray_id\":\"36\",\"quantity_in_db\":\"0\",\"sku_id\":\"186078\",\"quantity_on_tray\":\"5\"},{\"sku_name\":\"Paper boat Alphonso Mango 160ml\",\"tray_id\":\"37\",\"quantity_in_db\":\"0\",\"sku_id\":\"4500407\",\"quantity_on_tray\":\"4\"},{\"sku_name\":\"Eat Bit Peanut  Chikki 32gm\",\"tray_id\":\"38\",\"quantity_in_db\":\"0\",\"sku_id\":\"4500677\",\"quantity_on_tray\":\"6\"},{\"sku_name\":\"Farmely Classic date Bites 20gm\",\"tray_id\":\"39\",\"quantity_in_db\":\"0\",\"sku_id\":\"4500667\",\"quantity_on_tray\":\"6\"},{\"sku_name\":\"Epigamia Chocolate Milkshake 200g\",\"tray_id\":\"40\",\"quantity_in_db\":\"0\",\"sku_id\":\"166327\",\"quantity_on_tray\":\"4\"},{\"sku_name\":\"Eat Bit Sesame  Chikki 32gm\",\"tray_id\":\"41\",\"quantity_in_db\":\"0\",\"sku_id\":\"4500678\",\"quantity_on_tray\":\"39\"},{\"sku_name\":\"KITKAT Nestle 4 Finger Chocolate 38g\",\"tray_id\":\"42\",\"quantity_in_db\":\"0\",\"sku_id\":\"186084\",\"quantity_on_tray\":\"4\"},{\"sku_name\":\"NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g\",\"tray_id\":\"43\",\"quantity_in_db\":\"0\",\"sku_id\":\"185993\",\"quantity_on_tray\":\"25\"},{\"sku_name\":\"Maaza Tetra 135ml\",\"tray_id\":\"44\",\"quantity_in_db\":\"0\",\"sku_id\":\"186096\",\"quantity_on_tray\":\"34\"},{\"sku_name\":\"Bindu Fizz Jeera Masala 250 ML\",\"tray_id\":\"45\",\"quantity_in_db\":\"0\",\"sku_id\":\"186043\",\"quantity_on_tray\":\"9\"},{\"sku_name\":\"Pepsi ZeroSugar  300ml\",\"tray_id\":\"46\",\"quantity_in_db\":\"0\",\"sku_id\":\"186059\",\"quantity_on_tray\":\"7\"}],\"message\":\"Tray mismatches found.\",\"user\":\"machine\"}","all_command_response":"[{\"action\":\"get_user_mobile_no\",\"mobile_no\":\"9036356553\",\"command_for\":\"server\"},{\"allowed\":\"1\",\"refill_id\":\"9690357\",\"success\":\"true\",\"user_id\":9036356553,\"otp\":\"3715\",\"user\":\"machine\"},{\"action\":\"get_mobile_otp\",\"mobile_no\":\"9036356553\",\"otp\":\"3715\",\"command_for\":\"server\"},{\"refill_id\":\"9690357\",\"status\":\"True\",\"user_id\":9036356553,\"active_payment_gateways\":\"[{\\\"payments\\\": [{\\\"label\\\": \\\"PayTM\\\", \\\"name\\\": \\\"PayTM\\\", \\\"active\\\": 1}, {\\\"label\\\": \\\"PhonePe\\\", \\\"name\\\": \\\"PhonePe\\\", \\\"active\\\": 1}, {\\\"label\\\": \\\"Google Pay\\\", \\\"name\\\": \\\"GooglePay\\\", \\\"active\\\": 1}, {\\\"label\\\": \\\"BHIM UPI\\\", \\\"name\\\": \\\"BHIM\\\", \\\"active\\\": 1}], \\\"header\\\": \\\"QR Payments\\\"}, {\\\"payments\\\": [{\\\"label\\\": \\\"Sodexo Card\\\", \\\"name\\\": \\\"Sodexo\\\", \\\"active\\\": 1}, {\\\"label\\\": \\\"Credit\\\/Debit Card\\\", \\\"name\\\": \\\"Card\\\", \\\"active\\\": 1}, {\\\"label\\\": \\\"QwikCilver\\\", \\\"name\\\": \\\"Qwikcilver\\\", \\\"active\\\": 0}], \\\"header\\\": \\\"Card Payments\\\"}, {\\\"payments\\\": [{\\\"label\\\": \\\"LazyPay\\\", \\\"name\\\": \\\"LazyPay\\\", \\\"active\\\": 1}, {\\\"label\\\": \\\"OLA Money\\\", \\\"name\\\": \\\"Ola\\\", \\\"active\\\": 0}, {\\\"label\\\": \\\"Tiny Wallet\\\", \\\"name\\\": \\\"Neuu\\\", \\\"active\\\": 0}], \\\"header\\\": \\\"Wallet Payments\\\"}]\",\"refill_order_id\":\"TM08202202_refill_260831120651\",\"order_id\":\"TM08202202_refill_260831120651\",\"door_size\":2,\"rstatus\":true,\"active_doors\":[\"1\",\"2\"],\"user\":\"machine\"},{\"action\":\"complete_refill\",\"trays\":{\"11\":{\"id\":\"11\",\"tray_id\":\"11\",\"door_id\":\"1\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/165143-5076.png\",\"name\":\"Town Bus Soya Stick ,35g\",\"mrp\":\"10\",\"weight\":\"33\",\"qty\":0,\"org_sku\":\"165143\",\"p_sku\":\"165143\",\"p_qty\":0,\"l_sku\":\"165143\",\"l_qty\":\"2\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"sku_json\":\"165143-0\",\"tray_weight\":\"99999\",\"modified_at\":\"2026-08-31 12:06:53\",\"created_at\":\"2026-08-31 12:06:53\"},\"12\":{\"tray_id\":\"12\",\"door_id\":\"1\",\"tray_weight\":\"99999\",\"sku_json\":\"4500605-10\",\"org_sku\":\"4500605\",\"active\":\"1\",\"created_at\":\"2026-08-31 12:04:43\",\"modified_at\":\"2026-08-31 12:04:43\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500605-6297.png\",\"name\":\"Ongibytes Garlic Muruku \",\"mrp\":\"20\",\"weight\":\"42\",\"qty\":\"10\",\"id\":\"12\",\"p_sku\":\"4500605\",\"p_qty\":\"10\",\"p_return_sku\":\"4500708\",\"p_return_qty\":\"0\",\"return_sku\":\"4500708\",\"return_qty\":\"0\",\"return_image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500708-7901.webp\",\"l_sku\":\"4500708\",\"l_qty\":\"0\"},\"13\":{\"tray_id\":\"13\",\"door_id\":\"1\",\"tray_weight\":\"99999\",\"sku_json\":\"4500722-10\",\"org_sku\":\"4500722\",\"active\":\"1\",\"created_at\":\"2026-08-31 12:04:43\",\"modified_at\":\"2026-08-31 12:04:43\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500722-2079.jpeg\",\"name\":\"MaxVita Rice Kodubale 30gm\",\"mrp\":\"10\",\"weight\":\"35\",\"qty\":\"10\",\"id\":\"13\",\"p_sku\":\"4500722\",\"p_qty\":\"10\",\"p_return_sku\":\"4500605\",\"p_return_qty\":\"0\",\"return_sku\":\"4500605\",\"return_qty\":\"0\",\"return_image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500605-6297.png\",\"l_sku\":\"4500605\",\"l_qty\":\"0\"},\"14\":{\"tray_id\":\"14\",\"door_id\":\"1\",\"tray_weight\":\"99999\",\"sku_json\":\"4500714-15\",\"org_sku\":\"4500714\",\"active\":\"1\",\"created_at\":\"2026-08-31 12:04:43\",\"modified_at\":\"2026-08-31 12:04:43\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500714-2989.png\",\"name\":\"McVities Triple Nut Cookies 58gm\",\"mrp\":\"10\",\"weight\":\"58\",\"qty\":\"15\",\"id\":\"14\",\"p_sku\":\"4500714\",\"p_qty\":\"15\",\"p_return_sku\":\"4500723\",\"p_return_qty\":\"0\",\"return_sku\":\"4500723\",\"return_qty\":\"0\",\"return_image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500723-3888.png\",\"l_sku\":\"4500723\",\"l_qty\":\"0\"},\"15\":{\"id\":\"15\",\"tray_id\":\"15\",\"door_id\":\"1\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500710-1463.png\",\"name\":\"MaxVita Premium crunch Rusk 51gm\",\"mrp\":\"10\",\"weight\":\"55\",\"qty\":0,\"org_sku\":\"4500710\",\"p_sku\":\"4500710\",\"p_qty\":0,\"l_sku\":\"4500710\",\"l_qty\":\"11\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"sku_json\":\"4500710-0\",\"tray_weight\":\"99999\",\"modified_at\":\"2026-08-31 12:06:53\",\"created_at\":\"2026-08-31 12:06:53\"},\"16\":{\"id\":\"16\",\"tray_id\":\"16\",\"door_id\":\"1\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500681-9948.webp\",\"name\":\"McVities Orange Cream Biscuts 61gm\",\"mrp\":\"10\",\"weight\":\"64\",\"qty\":0,\"org_sku\":\"4500681\",\"p_sku\":\"4500681\",\"p_qty\":0,\"l_sku\":\"4500681\",\"l_qty\":\"5\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"sku_json\":\"4500681-0\",\"tray_weight\":\"99999\",\"modified_at\":\"2026-08-31 12:06:53\",\"created_at\":\"2026-08-31 12:06:53\"},\"17\":{\"tray_id\":\"17\",\"door_id\":\"1\",\"tray_weight\":\"99999\",\"sku_json\":\"4500708-12\",\"org_sku\":\"4500708\",\"active\":\"1\",\"created_at\":\"2026-08-31 12:04:43\",\"modified_at\":\"2026-08-31 12:04:43\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500708-7901.webp\",\"name\":\"Modern Kitchen Masala Peanut 28gm\",\"mrp\":\"10\",\"weight\":\"31\",\"qty\":\"12\",\"id\":\"17\",\"p_sku\":\"4500708\",\"p_qty\":\"12\",\"p_return_sku\":\"4500722\",\"p_return_qty\":\"0\",\"return_sku\":\"4500722\",\"return_qty\":\"0\",\"return_image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500722-2079.jpeg\",\"l_sku\":\"4500722\",\"l_qty\":\"0\"},\"18\":{\"id\":\"18\",\"tray_id\":\"18\",\"door_id\":\"1\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500673-8519.webp\",\"name\":\"Modern kitchens Salted Peanuts 25gm\",\"mrp\":\"10\",\"weight\":\"28\",\"qty\":0,\"org_sku\":\"4500673\",\"p_sku\":\"4500673\",\"p_qty\":0,\"l_sku\":\"4500673\",\"l_qty\":\"2\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"sku_json\":\"4500673-0\",\"tray_weight\":\"99999\",\"modified_at\":\"2026-08-31 12:06:53\",\"created_at\":\"2026-08-31 12:06:53\"},\"19\":{\"id\":\"19\",\"tray_id\":\"19\",\"door_id\":\"1\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/186042-4971.jpg\",\"name\":\"Townbus Green Masala Peas 28g \",\"mrp\":\"10\",\"weight\":\"31\",\"qty\":0,\"org_sku\":\"186042\",\"p_sku\":\"186042\",\"p_qty\":0,\"l_sku\":\"186042\",\"l_qty\":\"11\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"sku_json\":\"186042-0\",\"tray_weight\":\"99999\",\"modified_at\":\"2026-08-31 12:06:53\",\"created_at\":\"2026-08-31 12:06:53\"},\"20\":{\"id\":\"20\",\"tray_id\":\"20\",\"door_id\":\"1\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500709-2651.webp\",\"name\":\"McVities Butter Jeera Cookies58gm\",\"mrp\":\"10\",\"weight\":\"61\",\"qty\":0,\"org_sku\":\"4500709\",\"p_sku\":\"4500709\",\"p_qty\":0,\"l_sku\":\"4500709\",\"l_qty\":\"10\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"sku_json\":\"4500709-0\",\"tray_weight\":\"99999\",\"modified_at\":\"2026-08-31 12:06:53\",\"created_at\":\"2026-08-31 12:06:53\"},\"21\":{\"id\":\"21\",\"tray_id\":\"21\",\"door_id\":\"1\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500665-172.jpg\",\"name\":\"Farmely Peri Peri Makhana 14gm\",\"mrp\":\"30\",\"weight\":\"22\",\"qty\":0,\"org_sku\":\"4500665\",\"p_sku\":\"4500665\",\"p_qty\":0,\"l_sku\":\"4500665\",\"l_qty\":\"7\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"sku_json\":\"4500665-0\",\"tray_weight\":\"99999\",\"modified_at\":\"2026-08-31 12:06:53\",\"created_at\":\"2026-08-31 12:06:53\"},\"22\":{\"id\":\"22\",\"tray_id\":\"22\",\"door_id\":\"1\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500648-25.webp\",\"name\":\"Modern kitchens Banana Chips 21gm\",\"mrp\":\"10\",\"weight\":\"25\",\"qty\":0,\"org_sku\":\"4500648\",\"p_sku\":\"4500648\",\"p_qty\":0,\"l_sku\":\"4500648\",\"l_qty\":\"8\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"sku_json\":\"4500648-0\",\"tray_weight\":\"99999\",\"modified_at\":\"2026-08-31 12:06:53\",\"created_at\":\"2026-08-31 12:06:53\"},\"23\":{\"tray_id\":\"23\",\"door_id\":\"1\",\"tray_weight\":\"99999\",\"sku_json\":\"4500723-12\",\"org_sku\":\"4500723\",\"active\":\"1\",\"created_at\":\"2026-08-31 12:04:43\",\"modified_at\":\"2026-08-31 12:04:43\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500723-3888.png\",\"name\":\"MaxVita Moong daal 25gm\",\"mrp\":\"10\",\"weight\":\"28\",\"qty\":\"12\",\"id\":\"23\",\"p_sku\":\"4500723\",\"p_qty\":\"12\",\"p_return_sku\":\"4500726\",\"p_return_qty\":\"1\",\"return_sku\":\"4500726\",\"return_qty\":\"1\",\"return_image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500726-818.jpeg\",\"l_sku\":\"4500726\",\"l_qty\":\"1\"},\"24\":{\"tray_id\":\"24\",\"door_id\":\"1\",\"tray_weight\":\"99999\",\"sku_json\":\"4500672-12\",\"org_sku\":\"4500672\",\"active\":\"1\",\"created_at\":\"2026-08-31 12:04:43\",\"modified_at\":\"2026-08-31 12:04:43\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500672-7226.webp\",\"name\":\"Modern kitchens Garlic Mixture 26gm\",\"mrp\":\"10\",\"weight\":\"29\",\"qty\":\"12\",\"id\":\"24\",\"p_sku\":\"4500672\",\"p_qty\":\"12\",\"p_return_sku\":\"4500712\",\"p_return_qty\":\"1\",\"return_sku\":\"4500712\",\"return_qty\":\"1\",\"return_image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500712-3453.png\",\"l_sku\":\"4500712\",\"l_qty\":\"1\"},\"25\":{\"id\":\"25\",\"tray_id\":\"25\",\"door_id\":\"1\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/186100-6904.jpg\",\"name\":\"Too Yumm Crea onion 33gm\",\"mrp\":\"20\",\"weight\":\"36\",\"qty\":0,\"org_sku\":\"186100\",\"p_sku\":\"186100\",\"p_qty\":0,\"l_sku\":\"186100\",\"l_qty\":\"5\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"sku_json\":\"186100-0\",\"tray_weight\":\"99999\",\"modified_at\":\"2026-08-31 12:06:53\",\"created_at\":\"2026-08-31 12:06:53\"},\"26\":{\"tray_id\":\"26\",\"door_id\":\"1\",\"tray_weight\":\"99999\",\"sku_json\":\"4500726-12\",\"org_sku\":\"4500726\",\"active\":\"1\",\"created_at\":\"2026-08-31 12:04:43\",\"modified_at\":\"2026-08-31 12:04:43\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500726-818.jpeg\",\"name\":\"MaxVita Crunchy Indian Mixture 30gm\",\"mrp\":\"10\",\"weight\":\"35\",\"qty\":\"12\",\"id\":\"26\",\"p_sku\":\"4500726\",\"p_qty\":\"12\",\"p_return_sku\":\"4500711\",\"p_return_qty\":\"0\",\"return_sku\":\"4500711\",\"return_qty\":\"0\",\"return_image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500711-9290.png\",\"l_sku\":\"4500711\",\"l_qty\":\"0\"},\"31\":{\"id\":\"31\",\"tray_id\":\"31\",\"door_id\":\"2\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500643-6170.webp\",\"name\":\"Cavins Belgian chocolate 170ml spl pack\",\"mrp\":\"40\",\"weight\":\"191\",\"qty\":0,\"org_sku\":\"4500643\",\"p_sku\":\"4500643\",\"p_qty\":0,\"l_sku\":\"4500643\",\"l_qty\":\"3\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"sku_json\":\"4500643-0\",\"tray_weight\":\"99999\",\"modified_at\":\"2026-08-31 12:06:53\",\"created_at\":\"2026-08-31 12:06:53\"},\"32\":{\"id\":\"32\",\"tray_id\":\"32\",\"door_id\":\"2\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/185994-2558.webp\",\"name\":\"Nescafe Choco Mocha Cold Coffee 180ml\",\"mrp\":\"45\",\"weight\":\"200\",\"qty\":0,\"org_sku\":\"185994\",\"p_sku\":\"185994\",\"p_qty\":0,\"l_sku\":\"185994\",\"l_qty\":\"2\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"sku_json\":\"185994-0\",\"tray_weight\":\"99999\",\"modified_at\":\"2026-08-31 12:06:53\",\"created_at\":\"2026-08-31 12:06:53\"},\"33\":{\"id\":\"33\",\"tray_id\":\"33\",\"door_id\":\"2\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500724-9570.jpg\",\"name\":\"Heritage Badam Milk 165ml\",\"mrp\":\"35\",\"weight\":\"202\",\"qty\":0,\"org_sku\":\"4500724\",\"p_sku\":\"4500724\",\"p_qty\":0,\"l_sku\":\"4500724\",\"l_qty\":\"1\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"sku_json\":\"4500724-0\",\"tray_weight\":\"99999\",\"modified_at\":\"2026-08-31 12:06:53\",\"created_at\":\"2026-08-31 12:06:53\"},\"34\":{\"id\":\"34\",\"tray_id\":\"34\",\"door_id\":\"2\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500499-5719.webp\",\"name\":\"Heritage A1 Spiced Butter Milk180ml\",\"mrp\":\"20\",\"weight\":\"192\",\"qty\":0,\"org_sku\":\"4500499\",\"p_sku\":\"4500499\",\"p_qty\":0,\"l_sku\":\"4500499\",\"l_qty\":\"11\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"sku_json\":\"4500499-0\",\"tray_weight\":\"99999\",\"modified_at\":\"2026-08-31 12:06:53\",\"created_at\":\"2026-08-31 12:06:53\"},\"35\":{\"id\":\"35\",\"tray_id\":\"35\",\"door_id\":\"2\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500701-4864.webp\",\"name\":\"Madmix Anardana Raisins 11gm\",\"mrp\":\"20\",\"weight\":\"13\",\"qty\":0,\"org_sku\":\"4500701\",\"p_sku\":\"4500701\",\"p_qty\":0,\"l_sku\":\"4500701\",\"l_qty\":\"8\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"sku_json\":\"4500701-0\",\"tray_weight\":\"99999\",\"modified_at\":\"2026-08-31 12:06:53\",\"created_at\":\"2026-08-31 12:06:53\"},\"36\":{\"id\":\"36\",\"tray_id\":\"36\",\"door_id\":\"2\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/186078-2883.png\",\"name\":\"Paper boat Aam Panna 150ml\",\"mrp\":\"25\",\"weight\":\"166\",\"qty\":0,\"org_sku\":\"186078\",\"p_sku\":\"186078\",\"p_qty\":0,\"l_sku\":\"186078\",\"l_qty\":\"5\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"sku_json\":\"186078-0\",\"tray_weight\":\"99999\",\"modified_at\":\"2026-08-31 12:06:53\",\"created_at\":\"2026-08-31 12:06:53\"},\"37\":{\"id\":\"37\",\"tray_id\":\"37\",\"door_id\":\"2\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500407-2060.jpg\",\"name\":\"Paper boat Alphonso Mango 160ml\",\"mrp\":\"25\",\"weight\":\"175\",\"qty\":0,\"org_sku\":\"4500407\",\"p_sku\":\"4500407\",\"p_qty\":0,\"l_sku\":\"4500407\",\"l_qty\":\"4\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"sku_json\":\"4500407-0\",\"tray_weight\":\"99999\",\"modified_at\":\"2026-08-31 12:06:53\",\"created_at\":\"2026-08-31 12:06:53\"},\"38\":{\"id\":\"38\",\"tray_id\":\"38\",\"door_id\":\"2\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500677-4669.png\",\"name\":\"Eat Bit Peanut  Chikki 32gm\",\"mrp\":\"10\",\"weight\":\"33\",\"qty\":0,\"org_sku\":\"4500677\",\"p_sku\":\"4500677\",\"p_qty\":0,\"l_sku\":\"4500677\",\"l_qty\":\"0\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"sku_json\":\"4500677-0\",\"tray_weight\":\"99999\",\"modified_at\":\"2026-08-31 12:06:53\",\"created_at\":\"2026-08-31 12:06:53\"},\"39\":{\"id\":\"39\",\"tray_id\":\"39\",\"door_id\":\"2\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500667-4339.webp\",\"name\":\"Farmely Classic date Bites 20gm\",\"mrp\":\"40\",\"weight\":\"23\",\"qty\":0,\"org_sku\":\"4500667\",\"p_sku\":\"4500667\",\"p_qty\":0,\"l_sku\":\"4500667\",\"l_qty\":\"6\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"sku_json\":\"4500667-0\",\"tray_weight\":\"99999\",\"modified_at\":\"2026-08-31 12:06:53\",\"created_at\":\"2026-08-31 12:06:53\"},\"40\":{\"id\":\"40\",\"tray_id\":\"40\",\"door_id\":\"2\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/166327-5644.jpg\",\"name\":\"Epigamia Chocolate Milkshake 200g\",\"mrp\":\"38\",\"weight\":\"210\",\"qty\":0,\"org_sku\":\"166327\",\"p_sku\":\"166327\",\"p_qty\":0,\"l_sku\":\"166327\",\"l_qty\":\"4\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"sku_json\":\"166327-0\",\"tray_weight\":\"99999\",\"modified_at\":\"2026-08-31 12:06:53\",\"created_at\":\"2026-08-31 12:06:53\"},\"41\":{\"id\":\"41\",\"tray_id\":\"41\",\"door_id\":\"2\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500678-5296.png\",\"name\":\"Eat Bit Sesame  Chikki 32gm\",\"mrp\":\"10\",\"weight\":\"33\",\"qty\":0,\"org_sku\":\"4500678\",\"p_sku\":\"4500678\",\"p_qty\":0,\"l_sku\":\"4500678\",\"l_qty\":\"39\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"sku_json\":\"4500678-0\",\"tray_weight\":\"99999\",\"modified_at\":\"2026-08-31 12:06:53\",\"created_at\":\"2026-08-31 12:06:53\"},\"42\":{\"id\":\"42\",\"tray_id\":\"42\",\"door_id\":\"2\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/186084-5395.png\",\"name\":\"KITKAT Nestle 4 Finger Chocolate 38g\",\"mrp\":\"30\",\"weight\":\"41\",\"qty\":0,\"org_sku\":\"186084\",\"p_sku\":\"186084\",\"p_qty\":0,\"l_sku\":\"186084\",\"l_qty\":\"0\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"sku_json\":\"186084-0\",\"tray_weight\":\"99999\",\"modified_at\":\"2026-08-31 12:06:53\",\"created_at\":\"2026-08-31 12:06:53\"},\"43\":{\"id\":\"43\",\"tray_id\":\"43\",\"door_id\":\"2\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/185993-3509.webp\",\"name\":\"NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g\",\"mrp\":\"20\",\"weight\":\"42\",\"qty\":0,\"org_sku\":\"185993\",\"p_sku\":\"185993\",\"p_qty\":0,\"l_sku\":\"185993\",\"l_qty\":\"0\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"sku_json\":\"185993-0\",\"tray_weight\":\"99999\",\"modified_at\":\"2026-08-31 12:06:53\",\"created_at\":\"2026-08-31 12:06:53\"},\"44\":{\"id\":\"44\",\"tray_id\":\"44\",\"door_id\":\"2\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/186096-4254.jpg\",\"name\":\"Maaza Tetra 135ml\",\"mrp\":\"10\",\"weight\":\"150\",\"qty\":0,\"org_sku\":\"186096\",\"p_sku\":\"186096\",\"p_qty\":0,\"l_sku\":\"186096\",\"l_qty\":\"34\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"sku_json\":\"186096-0\",\"tray_weight\":\"99999\",\"modified_at\":\"2026-08-31 12:06:53\",\"created_at\":\"2026-08-31 12:06:53\"},\"45\":{\"id\":\"45\",\"tray_id\":\"45\",\"door_id\":\"2\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/186043-5089.png\",\"name\":\"Bindu Fizz Jeera Masala 250 ML\",\"mrp\":\"20\",\"weight\":\"295\",\"qty\":0,\"org_sku\":\"186043\",\"p_sku\":\"186043\",\"p_qty\":0,\"l_sku\":\"186043\",\"l_qty\":\"9\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"sku_json\":\"186043-0\",\"tray_weight\":\"99999\",\"modified_at\":\"2026-08-31 12:06:53\",\"created_at\":\"2026-08-31 12:06:53\"},\"46\":{\"id\":\"46\",\"tray_id\":\"46\",\"door_id\":\"2\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/186059-5330.png\",\"name\":\"Pepsi ZeroSugar  300ml\",\"mrp\":\"40\",\"weight\":\"310\",\"qty\":0,\"org_sku\":\"186059\",\"p_sku\":\"186059\",\"p_qty\":0,\"l_sku\":\"186059\",\"l_qty\":\"7\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"sku_json\":\"186059-0\",\"tray_weight\":\"99999\",\"modified_at\":\"2026-08-31 12:06:53\",\"created_at\":\"2026-08-31 12:06:53\"}},\"command_for\":\"server\"},{\"success\":true,\"tray_mismatches\":[{\"sku_name\":\"Town Bus Soya Stick ,35g\",\"tray_id\":\"11\",\"quantity_in_db\":\"0\",\"sku_id\":\"165143\",\"quantity_on_tray\":\"14\"},{\"sku_name\":\"Ongibytes Garlic Muruku \",\"tray_id\":\"12\",\"quantity_in_db\":\"10\",\"sku_id\":\"4500605\",\"quantity_on_tray\":\"10\"},{\"sku_name\":\"MaxVita Rice Kodubale 30gm\",\"tray_id\":\"13\",\"quantity_in_db\":\"10\",\"sku_id\":\"4500722\",\"quantity_on_tray\":\"11\"},{\"sku_name\":\"McVities Triple Nut Cookies 58gm\",\"tray_id\":\"14\",\"quantity_in_db\":\"15\",\"sku_id\":\"4500714\",\"quantity_on_tray\":\"24\"},{\"sku_name\":\"MaxVita Premium crunch Rusk 51gm\",\"tray_id\":\"15\",\"quantity_in_db\":\"0\",\"sku_id\":\"4500710\",\"quantity_on_tray\":\"11\"},{\"sku_name\":\"McVities Orange Cream Biscuts 61gm\",\"tray_id\":\"16\",\"quantity_in_db\":\"0\",\"sku_id\":\"4500681\",\"quantity_on_tray\":\"17\"},{\"sku_name\":\"Modern Kitchen Masala Peanut 28gm\",\"tray_id\":\"17\",\"quantity_in_db\":\"12\",\"sku_id\":\"4500708\",\"quantity_on_tray\":\"16\"},{\"sku_name\":\"Modern kitchens Salted Peanuts 25gm\",\"tray_id\":\"18\",\"quantity_in_db\":\"0\",\"sku_id\":\"4500673\",\"quantity_on_tray\":\"11\"},{\"sku_name\":\"Townbus Green Masala Peas 28g \",\"tray_id\":\"19\",\"quantity_in_db\":\"0\",\"sku_id\":\"186042\",\"quantity_on_tray\":\"15\"},{\"sku_name\":\"McVities Butter Jeera Cookies58gm\",\"tray_id\":\"20\",\"quantity_in_db\":\"0\",\"sku_id\":\"4500709\",\"quantity_on_tray\":\"10\"},{\"sku_name\":\"Farmely Peri Peri Makhana 14gm\",\"tray_id\":\"21\",\"quantity_in_db\":\"0\",\"sku_id\":\"4500665\",\"quantity_on_tray\":\"7\"},{\"sku_name\":\"Modern kitchens Banana Chips 21gm\",\"tray_id\":\"22\",\"quantity_in_db\":\"0\",\"sku_id\":\"4500648\",\"quantity_on_tray\":\"8\"},{\"sku_name\":\"MaxVita Moong daal 25gm\",\"tray_id\":\"23\",\"quantity_in_db\":\"12\",\"sku_id\":\"4500723\",\"quantity_on_tray\":\"17\"},{\"sku_name\":\"Modern kitchens Garlic Mixture 26gm\",\"tray_id\":\"24\",\"quantity_in_db\":\"12\",\"sku_id\":\"4500672\",\"quantity_on_tray\":\"23\"},{\"sku_name\":\"Too Yumm Crea onion 33gm\",\"tray_id\":\"25\",\"quantity_in_db\":\"0\",\"sku_id\":\"186100\",\"quantity_on_tray\":\"5\"},{\"sku_name\":\"MaxVita Crunchy Indian Mixture 30gm\",\"tray_id\":\"26\",\"quantity_in_db\":\"12\",\"sku_id\":\"4500726\",\"quantity_on_tray\":\"20\"},{\"sku_name\":\"Cavins Belgian chocolate 170ml spl pack\",\"tray_id\":\"31\",\"quantity_in_db\":\"0\",\"sku_id\":\"4500643\",\"quantity_on_tray\":\"3\"},{\"sku_name\":\"Nescafe Choco Mocha Cold Coffee 180ml\",\"tray_id\":\"32\",\"quantity_in_db\":\"0\",\"sku_id\":\"185994\",\"quantity_on_tray\":\"2\"},{\"sku_name\":\"Heritage Badam Milk 165ml\",\"tray_id\":\"33\",\"quantity_in_db\":\"0\",\"sku_id\":\"4500724\",\"quantity_on_tray\":\"1\"},{\"sku_name\":\"Heritage A1 Spiced Butter Milk180ml\",\"tray_id\":\"34\",\"quantity_in_db\":\"0\",\"sku_id\":\"4500499\",\"quantity_on_tray\":\"11\"},{\"sku_name\":\"Madmix Anardana Raisins 11gm\",\"tray_id\":\"35\",\"quantity_in_db\":\"0\",\"sku_id\":\"4500701\",\"quantity_on_tray\":\"8\"},{\"sku_name\":\"Paper boat Aam Panna 150ml\",\"tray_id\":\"36\",\"quantity_in_db\":\"0\",\"sku_id\":\"186078\",\"quantity_on_tray\":\"5\"},{\"sku_name\":\"Paper boat Alphonso Mango 160ml\",\"tray_id\":\"37\",\"quantity_in_db\":\"0\",\"sku_id\":\"4500407\",\"quantity_on_tray\":\"4\"},{\"sku_name\":\"Eat Bit Peanut  Chikki 32gm\",\"tray_id\":\"38\",\"quantity_in_db\":\"0\",\"sku_id\":\"4500677\",\"quantity_on_tray\":\"6\"},{\"sku_name\":\"Farmely Classic date Bites 20gm\",\"tray_id\":\"39\",\"quantity_in_db\":\"0\",\"sku_id\":\"4500667\",\"quantity_on_tray\":\"6\"},{\"sku_name\":\"Epigamia Chocolate Milkshake 200g\",\"tray_id\":\"40\",\"quantity_in_db\":\"0\",\"sku_id\":\"166327\",\"quantity_on_tray\":\"4\"},{\"sku_name\":\"Eat Bit Sesame  Chikki 32gm\",\"tray_id\":\"41\",\"quantity_in_db\":\"0\",\"sku_id\":\"4500678\",\"quantity_on_tray\":\"39\"},{\"sku_name\":\"KITKAT Nestle 4 Finger Chocolate 38g\",\"tray_id\":\"42\",\"quantity_in_db\":\"0\",\"sku_id\":\"186084\",\"quantity_on_tray\":\"4\"},{\"sku_name\":\"NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g\",\"tray_id\":\"43\",\"quantity_in_db\":\"0\",\"sku_id\":\"185993\",\"quantity_on_tray\":\"25\"},{\"sku_name\":\"Maaza Tetra 135ml\",\"tray_id\":\"44\",\"quantity_in_db\":\"0\",\"sku_id\":\"186096\",\"quantity_on_tray\":\"34\"},{\"sku_name\":\"Bindu Fizz Jeera Masala 250 ML\",\"tray_id\":\"45\",\"quantity_in_db\":\"0\",\"sku_id\":\"186043\",\"quantity_on_tray\":\"9\"},{\"sku_name\":\"Pepsi ZeroSugar  300ml\",\"tray_id\":\"46\",\"quantity_in_db\":\"0\",\"sku_id\":\"186059\",\"quantity_on_tray\":\"7\"}],\"message\":\"Tray mismatches found.\",\"user\":\"machine\"}]","type_of_order":"refill","command_request_data":"{\"request_data\":{\"success\":true,\"tray_mismatches\":[{\"sku_name\":\"Town Bus Soya Stick ,35g\",\"tray_id\":\"11\",\"quantity_in_db\":\"0\",\"sku_id\":\"165143\",\"quantity_on_tray\":\"14\"},{\"sku_name\":\"Ongibytes Garlic Muruku \",\"tray_id\":\"12\",\"quantity_in_db\":\"10\",\"sku_id\":\"4500605\",\"quantity_on_tray\":\"10\"},{\"sku_name\":\"MaxVita Rice Kodubale 30gm\",\"tray_id\":\"13\",\"quantity_in_db\":\"10\",\"sku_id\":\"4500722\",\"quantity_on_tray\":\"11\"},{\"sku_name\":\"McVities Triple Nut Cookies 58gm\",\"tray_id\":\"14\",\"quantity_in_db\":\"15\",\"sku_id\":\"4500714\",\"quantity_on_tray\":\"24\"},{\"sku_name\":\"MaxVita Premium crunch Rusk 51gm\",\"tray_id\":\"15\",\"quantity_in_db\":\"0\",\"sku_id\":\"4500710\",\"quantity_on_tray\":\"11\"},{\"sku_name\":\"McVities Orange Cream Biscuts 61gm\",\"tray_id\":\"16\",\"quantity_in_db\":\"0\",\"sku_id\":\"4500681\",\"quantity_on_tray\":\"17\"},{\"sku_name\":\"Modern Kitchen Masala Peanut 28gm\",\"tray_id\":\"17\",\"quantity_in_db\":\"12\",\"sku_id\":\"4500708\",\"quantity_on_tray\":\"16\"},{\"sku_name\":\"Modern kitchens Salted Peanuts 25gm\",\"tray_id\":\"18\",\"quantity_in_db\":\"0\",\"sku_id\":\"4500673\",\"quantity_on_tray\":\"11\"},{\"sku_name\":\"Townbus Green Masala Peas 28g \",\"tray_id\":\"19\",\"quantity_in_db\":\"0\",\"sku_id\":\"186042\",\"quantity_on_tray\":\"15\"},{\"sku_name\":\"McVities Butter Jeera Cookies58gm\",\"tray_id\":\"20\",\"quantity_in_db\":\"0\",\"sku_id\":\"4500709\",\"quantity_on_tray\":\"10\"},{\"sku_name\":\"Farmely Peri Peri Makhana 14gm\",\"tray_id\":\"21\",\"quantity_in_db\":\"0\",\"sku_id\":\"4500665\",\"quantity_on_tray\":\"7\"},{\"sku_name\":\"Modern kitchens Banana Chips 21gm\",\"tray_id\":\"22\",\"quantity_in_db\":\"0\",\"sku_id\":\"4500648\",\"quantity_on_tray\":\"8\"},{\"sku_name\":\"MaxVita Moong daal 25gm\",\"tray_id\":\"23\",\"quantity_in_db\":\"12\",\"sku_id\":\"4500723\",\"quantity_on_tray\":\"17\"},{\"sku_name\":\"Modern kitchens Garlic Mixture 26gm\",\"tray_id\":\"24\",\"quantity_in_db\":\"12\",\"sku_id\":\"4500672\",\"quantity_on_tray\":\"23\"},{\"sku_name\":\"Too Yumm Crea onion 33gm\",\"tray_id\":\"25\",\"quantity_in_db\":\"0\",\"sku_id\":\"186100\",\"quantity_on_tray\":\"5\"},{\"sku_name\":\"MaxVita Crunchy Indian Mixture 30gm\",\"tray_id\":\"26\",\"quantity_in_db\":\"12\",\"sku_id\":\"4500726\",\"quantity_on_tray\":\"20\"},{\"sku_name\":\"Cavins Belgian chocolate 170ml spl pack\",\"tray_id\":\"31\",\"quantity_in_db\":\"0\",\"sku_id\":\"4500643\",\"quantity_on_tray\":\"3\"},{\"sku_name\":\"Nescafe Choco Mocha Cold Coffee 180ml\",\"tray_id\":\"32\",\"quantity_in_db\":\"0\",\"sku_id\":\"185994\",\"quantity_on_tray\":\"2\"},{\"sku_name\":\"Heritage Badam Milk 165ml\",\"tray_id\":\"33\",\"quantity_in_db\":\"0\",\"sku_id\":\"4500724\",\"quantity_on_tray\":\"1\"},{\"sku_name\":\"Heritage A1 Spiced Butter Milk180ml\",\"tray_id\":\"34\",\"quantity_in_db\":\"0\",\"sku_id\":\"4500499\",\"quantity_on_tray\":\"11\"},{\"sku_name\":\"Madmix Anardana Raisins 11gm\",\"tray_id\":\"35\",\"quantity_in_db\":\"0\",\"sku_id\":\"4500701\",\"quantity_on_tray\":\"8\"},{\"sku_name\":\"Paper boat Aam Panna 150ml\",\"tray_id\":\"36\",\"quantity_in_db\":\"0\",\"sku_id\":\"186078\",\"quantity_on_tray\":\"5\"},{\"sku_name\":\"Paper boat Alphonso Mango 160ml\",\"tray_id\":\"37\",\"quantity_in_db\":\"0\",\"sku_id\":\"4500407\",\"quantity_on_tray\":\"4\"},{\"sku_name\":\"Eat Bit Peanut  Chikki 32gm\",\"tray_id\":\"38\",\"quantity_in_db\":\"0\",\"sku_id\":\"4500677\",\"quantity_on_tray\":\"6\"},{\"sku_name\":\"Farmely Classic date Bites 20gm\",\"tray_id\":\"39\",\"quantity_in_db\":\"0\",\"sku_id\":\"4500667\",\"quantity_on_tray\":\"6\"},{\"sku_name\":\"Epigamia Chocolate Milkshake 200g\",\"tray_id\":\"40\",\"quantity_in_db\":\"0\",\"sku_id\":\"166327\",\"quantity_on_tray\":\"4\"},{\"sku_name\":\"Eat Bit Sesame  Chikki 32gm\",\"tray_id\":\"41\",\"quantity_in_db\":\"0\",\"sku_id\":\"4500678\",\"quantity_on_tray\":\"39\"},{\"sku_name\":\"KITKAT Nestle 4 Finger Chocolate 38g\",\"tray_id\":\"42\",\"quantity_in_db\":\"0\",\"sku_id\":\"186084\",\"quantity_on_tray\":\"4\"},{\"sku_name\":\"NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g\",\"tray_id\":\"43\",\"quantity_in_db\":\"0\",\"sku_id\":\"185993\",\"quantity_on_tray\":\"25\"},{\"sku_name\":\"Maaza Tetra 135ml\",\"tray_id\":\"44\",\"quantity_in_db\":\"0\",\"sku_id\":\"186096\",\"quantity_on_tray\":\"34\"},{\"sku_name\":\"Bindu Fizz Jeera Masala 250 ML\",\"tray_id\":\"45\",\"quantity_in_db\":\"0\",\"sku_id\":\"186043\",\"quantity_on_tray\":\"9\"},{\"sku_name\":\"Pepsi ZeroSugar  300ml\",\"tray_id\":\"46\",\"quantity_in_db\":\"0\",\"sku_id\":\"186059\",\"quantity_on_tray\":\"7\"}],\"message\":\"Tray mismatches found.\"},\"action_name\":\"verify refill Qty\",\"refill_order_id\":\"TM08202202_refill_260831120651\",\"action\":\"open_door_process\",\"sub-action\":\"verify-refill\",\"user\":\"server\",\"response_data\":{\"success\":true,\"tray_mismatches\":[{\"sku_name\":\"Town Bus Soya Stick ,35g\",\"tray_id\":\"11\",\"quantity_in_db\":\"0\",\"sku_id\":\"165143\",\"quantity_on_tray\":\"14\"},{\"sku_name\":\"Ongibytes Garlic Muruku \",\"tray_id\":\"12\",\"quantity_in_db\":\"10\",\"sku_id\":\"4500605\",\"quantity_on_tray\":\"10\"},{\"sku_name\":\"MaxVita Rice Kodubale 30gm\",\"tray_id\":\"13\",\"quantity_in_db\":\"10\",\"sku_id\":\"4500722\",\"quantity_on_tray\":\"11\"},{\"sku_name\":\"McVities Triple Nut Cookies 58gm\",\"tray_id\":\"14\",\"quantity_in_db\":\"15\",\"sku_id\":\"4500714\",\"quantity_on_tray\":\"24\"},{\"sku_name\":\"MaxVita Premium crunch Rusk 51gm\",\"tray_id\":\"15\",\"quantity_in_db\":\"0\",\"sku_id\":\"4500710\",\"quantity_on_tray\":\"11\"},{\"sku_name\":\"McVities Orange Cream Biscuts 61gm\",\"tray_id\":\"16\",\"quantity_in_db\":\"0\",\"sku_id\":\"4500681\",\"quantity_on_tray\":\"17\"},{\"sku_name\":\"Modern Kitchen Masala Peanut 28gm\",\"tray_id\":\"17\",\"quantity_in_db\":\"12\",\"sku_id\":\"4500708\",\"quantity_on_tray\":\"16\"},{\"sku_name\":\"Modern kitchens Salted Peanuts 25gm\",\"tray_id\":\"18\",\"quantity_in_db\":\"0\",\"sku_id\":\"4500673\",\"quantity_on_tray\":\"11\"},{\"sku_name\":\"Townbus Green Masala Peas 28g \",\"tray_id\":\"19\",\"quantity_in_db\":\"0\",\"sku_id\":\"186042\",\"quantity_on_tray\":\"15\"},{\"sku_name\":\"McVities Butter Jeera Cookies58gm\",\"tray_id\":\"20\",\"quantity_in_db\":\"0\",\"sku_id\":\"4500709\",\"quantity_on_tray\":\"10\"},{\"sku_name\":\"Farmely Peri Peri Makhana 14gm\",\"tray_id\":\"21\",\"quantity_in_db\":\"0\",\"sku_id\":\"4500665\",\"quantity_on_tray\":\"7\"},{\"sku_name\":\"Modern kitchens Banana Chips 21gm\",\"tray_id\":\"22\",\"quantity_in_db\":\"0\",\"sku_id\":\"4500648\",\"quantity_on_tray\":\"8\"},{\"sku_name\":\"MaxVita Moong daal 25gm\",\"tray_id\":\"23\",\"quantity_in_db\":\"12\",\"sku_id\":\"4500723\",\"quantity_on_tray\":\"17\"},{\"sku_name\":\"Modern kitchens Garlic Mixture 26gm\",\"tray_id\":\"24\",\"quantity_in_db\":\"12\",\"sku_id\":\"4500672\",\"quantity_on_tray\":\"23\"},{\"sku_name\":\"Too Yumm Crea onion 33gm\",\"tray_id\":\"25\",\"quantity_in_db\":\"0\",\"sku_id\":\"186100\",\"quantity_on_tray\":\"5\"},{\"sku_name\":\"MaxVita Crunchy Indian Mixture 30gm\",\"tray_id\":\"26\",\"quantity_in_db\":\"12\",\"sku_id\":\"4500726\",\"quantity_on_tray\":\"20\"},{\"sku_name\":\"Cavins Belgian chocolate 170ml spl pack\",\"tray_id\":\"31\",\"quantity_in_db\":\"0\",\"sku_id\":\"4500643\",\"quantity_on_tray\":\"3\"},{\"sku_name\":\"Nescafe Choco Mocha Cold Coffee 180ml\",\"tray_id\":\"32\",\"quantity_in_db\":\"0\",\"sku_id\":\"185994\",\"quantity_on_tray\":\"2\"},{\"sku_name\":\"Heritage Badam Milk 165ml\",\"tray_id\":\"33\",\"quantity_in_db\":\"0\",\"sku_id\":\"4500724\",\"quantity_on_tray\":\"1\"},{\"sku_name\":\"Heritage A1 Spiced Butter Milk180ml\",\"tray_id\":\"34\",\"quantity_in_db\":\"0\",\"sku_id\":\"4500499\",\"quantity_on_tray\":\"11\"},{\"sku_name\":\"Madmix Anardana Raisins 11gm\",\"tray_id\":\"35\",\"quantity_in_db\":\"0\",\"sku_id\":\"4500701\",\"quantity_on_tray\":\"8\"},{\"sku_name\":\"Paper boat Aam Panna 150ml\",\"tray_id\":\"36\",\"quantity_in_db\":\"0\",\"sku_id\":\"186078\",\"quantity_on_tray\":\"5\"},{\"sku_name\":\"Paper boat Alphonso Mango 160ml\",\"tray_id\":\"37\",\"quantity_in_db\":\"0\",\"sku_id\":\"4500407\",\"quantity_on_tray\":\"4\"},{\"sku_name\":\"Eat Bit Peanut  Chikki 32gm\",\"tray_id\":\"38\",\"quantity_in_db\":\"0\",\"sku_id\":\"4500677\",\"quantity_on_tray\":\"6\"},{\"sku_name\":\"Farmely Classic date Bites 20gm\",\"tray_id\":\"39\",\"quantity_in_db\":\"0\",\"sku_id\":\"4500667\",\"quantity_on_tray\":\"6\"},{\"sku_name\":\"Epigamia Chocolate Milkshake 200g\",\"tray_id\":\"40\",\"quantity_in_db\":\"0\",\"sku_id\":\"166327\",\"quantity_on_tray\":\"4\"},{\"sku_name\":\"Eat Bit Sesame  Chikki 32gm\",\"tray_id\":\"41\",\"quantity_in_db\":\"0\",\"sku_id\":\"4500678\",\"quantity_on_tray\":\"39\"},{\"sku_name\":\"KITKAT Nestle 4 Finger Chocolate 38g\",\"tray_id\":\"42\",\"quantity_in_db\":\"0\",\"sku_id\":\"186084\",\"quantity_on_tray\":\"4\"},{\"sku_name\":\"NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g\",\"tray_id\":\"43\",\"quantity_in_db\":\"0\",\"sku_id\":\"185993\",\"quantity_on_tray\":\"25\"},{\"sku_name\":\"Maaza Tetra 135ml\",\"tray_id\":\"44\",\"quantity_in_db\":\"0\",\"sku_id\":\"186096\",\"quantity_on_tray\":\"34\"},{\"sku_name\":\"Bindu Fizz Jeera Masala 250 ML\",\"tray_id\":\"45\",\"quantity_in_db\":\"0\",\"sku_id\":\"186043\",\"quantity_on_tray\":\"9\"},{\"sku_name\":\"Pepsi ZeroSugar  300ml\",\"tray_id\":\"46\",\"quantity_in_db\":\"0\",\"sku_id\":\"186059\",\"quantity_on_tray\":\"7\"}],\"message\":\"Tray mismatches found.\"},\"active_doors\":[\"1\",\"2\"]}","command_for":"server","created_at":"2026-08-31 12:06:18","modified_at":"2026-08-31 12:12:34"}
[2026-08-31 12:12:35,015.015 INFO    ] {'vm_id': '1660749537502', 'created_at': '2026-08-31 12:06:18', 'user_id': '9036356553', 'server_status': 'in-progress', 'last_command_response': '{"success":true,"tray_mismatches":[{"sku_name":"Town Bus Soya Stick ,35g","tray_id":"11","quantity_in_db":"0","sku_id":"165143","quantity_on_tray":"14"},{"sku_name":"Ongibytes Garlic Muruku ","tray_id":"12","quantity_in_db":"10","sku_id":"4500605","quantity_on_tray":"10"},{"sku_name":"MaxVita Rice Kodubale 30gm","tray_id":"13","quantity_in_db":"10","sku_id":"4500722","quantity_on_tray":"11"},{"sku_name":"McVities Triple Nut Cookies 58gm","tray_id":"14","quantity_in_db":"15","sku_id":"4500714","quantity_on_tray":"24"},{"sku_name":"MaxVita Premium crunch Rusk 51gm","tray_id":"15","quantity_in_db":"0","sku_id":"4500710","quantity_on_tray":"11"},{"sku_name":"McVities Orange Cream Biscuts 61gm","tray_id":"16","quantity_in_db":"0","sku_id":"4500681","quantity_on_tray":"17"},{"sku_name":"Modern Kitchen Masala Peanut 28gm","tray_id":"17","quantity_in_db":"12","sku_id":"4500708","quantity_on_tray":"16"},{"sku_name":"Modern kitchens Salted Peanuts 25gm","tray_id":"18","quantity_in_db":"0","sku_id":"4500673","quantity_on_tray":"11"},{"sku_name":"Townbus Green Masala Peas 28g ","tray_id":"19","quantity_in_db":"0","sku_id":"186042","quantity_on_tray":"15"},{"sku_name":"McVities Butter Jeera Cookies58gm","tray_id":"20","quantity_in_db":"0","sku_id":"4500709","quantity_on_tray":"10"},{"sku_name":"Farmely Peri Peri Makhana 14gm","tray_id":"21","quantity_in_db":"0","sku_id":"4500665","quantity_on_tray":"7"},{"sku_name":"Modern kitchens Banana Chips 21gm","tray_id":"22","quantity_in_db":"0","sku_id":"4500648","quantity_on_tray":"8"},{"sku_name":"MaxVita Moong daal 25gm","tray_id":"23","quantity_in_db":"12","sku_id":"4500723","quantity_on_tray":"17"},{"sku_name":"Modern kitchens Garlic Mixture 26gm","tray_id":"24","quantity_in_db":"12","sku_id":"4500672","quantity_on_tray":"23"},{"sku_name":"Too Yumm Crea onion 33gm","tray_id":"25","quantity_in_db":"0","sku_id":"186100","quantity_on_tray":"5"},{"sku_name":"MaxVita Crunchy Indian Mixture 30gm","tray_id":"26","quantity_in_db":"12","sku_id":"4500726","quantity_on_tray":"20"},{"sku_name":"Cavins Belgian chocolate 170ml spl pack","tray_id":"31","quantity_in_db":"0","sku_id":"4500643","quantity_on_tray":"3"},{"sku_name":"Nescafe Choco Mocha Cold Coffee 180ml","tray_id":"32","quantity_in_db":"0","sku_id":"185994","quantity_on_tray":"2"},{"sku_name":"Heritage Badam Milk 165ml","tray_id":"33","quantity_in_db":"0","sku_id":"4500724","quantity_on_tray":"1"},{"sku_name":"Heritage A1 Spiced Butter Milk180ml","tray_id":"34","quantity_in_db":"0","sku_id":"4500499","quantity_on_tray":"11"},{"sku_name":"Madmix Anardana Raisins 11gm","tray_id":"35","quantity_in_db":"0","sku_id":"4500701","quantity_on_tray":"8"},{"sku_name":"Paper boat Aam Panna 150ml","tray_id":"36","quantity_in_db":"0","sku_id":"186078","quantity_on_tray":"5"},{"sku_name":"Paper boat Alphonso Mango 160ml","tray_id":"37","quantity_in_db":"0","sku_id":"4500407","quantity_on_tray":"4"},{"sku_name":"Eat Bit Peanut  Chikki 32gm","tray_id":"38","quantity_in_db":"0","sku_id":"4500677","quantity_on_tray":"6"},{"sku_name":"Farmely Classic date Bites 20gm","tray_id":"39","quantity_in_db":"0","sku_id":"4500667","quantity_on_tray":"6"},{"sku_name":"Epigamia Chocolate Milkshake 200g","tray_id":"40","quantity_in_db":"0","sku_id":"166327","quantity_on_tray":"4"},{"sku_name":"Eat Bit Sesame  Chikki 32gm","tray_id":"41","quantity_in_db":"0","sku_id":"4500678","quantity_on_tray":"39"},{"sku_name":"KITKAT Nestle 4 Finger Chocolate 38g","tray_id":"42","quantity_in_db":"0","sku_id":"186084","quantity_on_tray":"4"},{"sku_name":"NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g","tray_id":"43","quantity_in_db":"0","sku_id":"185993","quantity_on_tray":"25"},{"sku_name":"Maaza Tetra 135ml","tray_id":"44","quantity_in_db":"0","sku_id":"186096","quantity_on_tray":"34"},{"sku_name":"Bindu Fizz Jeera Masala 250 ML","tray_id":"45","quantity_in_db":"0","sku_id":"186043","quantity_on_tray":"9"},{"sku_name":"Pepsi ZeroSugar  300ml","tray_id":"46","quantity_in_db":"0","sku_id":"186059","quantity_on_tray":"7"}],"message":"Tray mismatches found.","user":"machine"}', 'modified_at': '2026-08-31 12:12:34', 'type_of_order': 'refill', 'command_todo': 'interactive-refill', 'server_response': '', 'command_for': 'server', 'order_id': '9690357', 'status': 'active', 'command_request_data': '{"request_data":{"success":true,"tray_mismatches":[{"sku_name":"Town Bus Soya Stick ,35g","tray_id":"11","quantity_in_db":"0","sku_id":"165143","quantity_on_tray":"14"},{"sku_name":"Ongibytes Garlic Muruku ","tray_id":"12","quantity_in_db":"10","sku_id":"4500605","quantity_on_tray":"10"},{"sku_name":"MaxVita Rice Kodubale 30gm","tray_id":"13","quantity_in_db":"10","sku_id":"4500722","quantity_on_tray":"11"},{"sku_name":"McVities Triple Nut Cookies 58gm","tray_id":"14","quantity_in_db":"15","sku_id":"4500714","quantity_on_tray":"24"},{"sku_name":"MaxVita Premium crunch Rusk 51gm","tray_id":"15","quantity_in_db":"0","sku_id":"4500710","quantity_on_tray":"11"},{"sku_name":"McVities Orange Cream Biscuts 61gm","tray_id":"16","quantity_in_db":"0","sku_id":"4500681","quantity_on_tray":"17"},{"sku_name":"Modern Kitchen Masala Peanut 28gm","tray_id":"17","quantity_in_db":"12","sku_id":"4500708","quantity_on_tray":"16"},{"sku_name":"Modern kitchens Salted Peanuts 25gm","tray_id":"18","quantity_in_db":"0","sku_id":"4500673","quantity_on_tray":"11"},{"sku_name":"Townbus Green Masala Peas 28g ","tray_id":"19","quantity_in_db":"0","sku_id":"186042","quantity_on_tray":"15"},{"sku_name":"McVities Butter Jeera Cookies58gm","tray_id":"20","quantity_in_db":"0","sku_id":"4500709","quantity_on_tray":"10"},{"sku_name":"Farmely Peri Peri Makhana 14gm","tray_id":"21","quantity_in_db":"0","sku_id":"4500665","quantity_on_tray":"7"},{"sku_name":"Modern kitchens Banana Chips 21gm","tray_id":"22","quantity_in_db":"0","sku_id":"4500648","quantity_on_tray":"8"},{"sku_name":"MaxVita Moong daal 25gm","tray_id":"23","quantity_in_db":"12","sku_id":"4500723","quantity_on_tray":"17"},{"sku_name":"Modern kitchens Garlic Mixture 26gm","tray_id":"24","quantity_in_db":"12","sku_id":"4500672","quantity_on_tray":"23"},{"sku_name":"Too Yumm Crea onion 33gm","tray_id":"25","quantity_in_db":"0","sku_id":"186100","quantity_on_tray":"5"},{"sku_name":"MaxVita Crunchy Indian Mixture 30gm","tray_id":"26","quantity_in_db":"12","sku_id":"4500726","quantity_on_tray":"20"},{"sku_name":"Cavins Belgian chocolate 170ml spl pack","tray_id":"31","quantity_in_db":"0","sku_id":"4500643","quantity_on_tray":"3"},{"sku_name":"Nescafe Choco Mocha Cold Coffee 180ml","tray_id":"32","quantity_in_db":"0","sku_id":"185994","quantity_on_tray":"2"},{"sku_name":"Heritage Badam Milk 165ml","tray_id":"33","quantity_in_db":"0","sku_id":"4500724","quantity_on_tray":"1"},{"sku_name":"Heritage A1 Spiced Butter Milk180ml","tray_id":"34","quantity_in_db":"0","sku_id":"4500499","quantity_on_tray":"11"},{"sku_name":"Madmix Anardana Raisins 11gm","tray_id":"35","quantity_in_db":"0","sku_id":"4500701","quantity_on_tray":"8"},{"sku_name":"Paper boat Aam Panna 150ml","tray_id":"36","quantity_in_db":"0","sku_id":"186078","quantity_on_tray":"5"},{"sku_name":"Paper boat Alphonso Mango 160ml","tray_id":"37","quantity_in_db":"0","sku_id":"4500407","quantity_on_tray":"4"},{"sku_name":"Eat Bit Peanut  Chikki 32gm","tray_id":"38","quantity_in_db":"0","sku_id":"4500677","quantity_on_tray":"6"},{"sku_name":"Farmely Classic date Bites 20gm","tray_id":"39","quantity_in_db":"0","sku_id":"4500667","quantity_on_tray":"6"},{"sku_name":"Epigamia Chocolate Milkshake 200g","tray_id":"40","quantity_in_db":"0","sku_id":"166327","quantity_on_tray":"4"},{"sku_name":"Eat Bit Sesame  Chikki 32gm","tray_id":"41","quantity_in_db":"0","sku_id":"4500678","quantity_on_tray":"39"},{"sku_name":"KITKAT Nestle 4 Finger Chocolate 38g","tray_id":"42","quantity_in_db":"0","sku_id":"186084","quantity_on_tray":"4"},{"sku_name":"NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g","tray_id":"43","quantity_in_db":"0","sku_id":"185993","quantity_on_tray":"25"},{"sku_name":"Maaza Tetra 135ml","tray_id":"44","quantity_in_db":"0","sku_id":"186096","quantity_on_tray":"34"},{"sku_name":"Bindu Fizz Jeera Masala 250 ML","tray_id":"45","quantity_in_db":"0","sku_id":"186043","quantity_on_tray":"9"},{"sku_name":"Pepsi ZeroSugar  300ml","tray_id":"46","quantity_in_db":"0","sku_id":"186059","quantity_on_tray":"7"}],"message":"Tray mismatches found."},"action_name":"verify refill Qty","refill_order_id":"TM08202202_refill_260831120651","action":"open_door_process","sub-action":"verify-refill","user":"server","response_data":{"success":true,"tray_mismatches":[{"sku_name":"Town Bus Soya Stick ,35g","tray_id":"11","quantity_in_db":"0","sku_id":"165143","quantity_on_tray":"14"},{"sku_name":"Ongibytes Garlic Muruku ","tray_id":"12","quantity_in_db":"10","sku_id":"4500605","quantity_on_tray":"10"},{"sku_name":"MaxVita Rice Kodubale 30gm","tray_id":"13","quantity_in_db":"10","sku_id":"4500722","quantity_on_tray":"11"},{"sku_name":"McVities Triple Nut Cookies 58gm","tray_id":"14","quantity_in_db":"15","sku_id":"4500714","quantity_on_tray":"24"},{"sku_name":"MaxVita Premium crunch Rusk 51gm","tray_id":"15","quantity_in_db":"0","sku_id":"4500710","quantity_on_tray":"11"},{"sku_name":"McVities Orange Cream Biscuts 61gm","tray_id":"16","quantity_in_db":"0","sku_id":"4500681","quantity_on_tray":"17"},{"sku_name":"Modern Kitchen Masala Peanut 28gm","tray_id":"17","quantity_in_db":"12","sku_id":"4500708","quantity_on_tray":"16"},{"sku_name":"Modern kitchens Salted Peanuts 25gm","tray_id":"18","quantity_in_db":"0","sku_id":"4500673","quantity_on_tray":"11"},{"sku_name":"Townbus Green Masala Peas 28g ","tray_id":"19","quantity_in_db":"0","sku_id":"186042","quantity_on_tray":"15"},{"sku_name":"McVities Butter Jeera Cookies58gm","tray_id":"20","quantity_in_db":"0","sku_id":"4500709","quantity_on_tray":"10"},{"sku_name":"Farmely Peri Peri Makhana 14gm","tray_id":"21","quantity_in_db":"0","sku_id":"4500665","quantity_on_tray":"7"},{"sku_name":"Modern kitchens Banana Chips 21gm","tray_id":"22","quantity_in_db":"0","sku_id":"4500648","quantity_on_tray":"8"},{"sku_name":"MaxVita Moong daal 25gm","tray_id":"23","quantity_in_db":"12","sku_id":"4500723","quantity_on_tray":"17"},{"sku_name":"Modern kitchens Garlic Mixture 26gm","tray_id":"24","quantity_in_db":"12","sku_id":"4500672","quantity_on_tray":"23"},{"sku_name":"Too Yumm Crea onion 33gm","tray_id":"25","quantity_in_db":"0","sku_id":"186100","quantity_on_tray":"5"},{"sku_name":"MaxVita Crunchy Indian Mixture 30gm","tray_id":"26","quantity_in_db":"12","sku_id":"4500726","quantity_on_tray":"20"},{"sku_name":"Cavins Belgian chocolate 170ml spl pack","tray_id":"31","quantity_in_db":"0","sku_id":"4500643","quantity_on_tray":"3"},{"sku_name":"Nescafe Choco Mocha Cold Coffee 180ml","tray_id":"32","quantity_in_db":"0","sku_id":"185994","quantity_on_tray":"2"},{"sku_name":"Heritage Badam Milk 165ml","tray_id":"33","quantity_in_db":"0","sku_id":"4500724","quantity_on_tray":"1"},{"sku_name":"Heritage A1 Spiced Butter Milk180ml","tray_id":"34","quantity_in_db":"0","sku_id":"4500499","quantity_on_tray":"11"},{"sku_name":"Madmix Anardana Raisins 11gm","tray_id":"35","quantity_in_db":"0","sku_id":"4500701","quantity_on_tray":"8"},{"sku_name":"Paper boat Aam Panna 150ml","tray_id":"36","quantity_in_db":"0","sku_id":"186078","quantity_on_tray":"5"},{"sku_name":"Paper boat Alphonso Mango 160ml","tray_id":"37","quantity_in_db":"0","sku_id":"4500407","quantity_on_tray":"4"},{"sku_name":"Eat Bit Peanut  Chikki 32gm","tray_id":"38","quantity_in_db":"0","sku_id":"4500677","quantity_on_tray":"6"},{"sku_name":"Farmely Classic date Bites 20gm","tray_id":"39","quantity_in_db":"0","sku_id":"4500667","quantity_on_tray":"6"},{"sku_name":"Epigamia Chocolate Milkshake 200g","tray_id":"40","quantity_in_db":"0","sku_id":"166327","quantity_on_tray":"4"},{"sku_name":"Eat Bit Sesame  Chikki 32gm","tray_id":"41","quantity_in_db":"0","sku_id":"4500678","quantity_on_tray":"39"},{"sku_name":"KITKAT Nestle 4 Finger Chocolate 38g","tray_id":"42","quantity_in_db":"0","sku_id":"186084","quantity_on_tray":"4"},{"sku_name":"NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g","tray_id":"43","quantity_in_db":"0","sku_id":"185993","quantity_on_tray":"25"},{"sku_name":"Maaza Tetra 135ml","tray_id":"44","quantity_in_db":"0","sku_id":"186096","quantity_on_tray":"34"},{"sku_name":"Bindu Fizz Jeera Masala 250 ML","tray_id":"45","quantity_in_db":"0","sku_id":"186043","quantity_on_tray":"9"},{"sku_name":"Pepsi ZeroSugar  300ml","tray_id":"46","quantity_in_db":"0","sku_id":"186059","quantity_on_tray":"7"}],"message":"Tray mismatches found."},"active_doors":["1","2"]}', 'all_command_response': '[{"action":"get_user_mobile_no","mobile_no":"9036356553","command_for":"server"},{"allowed":"1","refill_id":"9690357","success":"true","user_id":9036356553,"otp":"3715","user":"machine"},{"action":"get_mobile_otp","mobile_no":"9036356553","otp":"3715","command_for":"server"},{"refill_id":"9690357","status":"True","user_id":9036356553,"active_payment_gateways":"[{\\"payments\\": [{\\"label\\": \\"PayTM\\", \\"name\\": \\"PayTM\\", \\"active\\": 1}, {\\"label\\": \\"PhonePe\\", \\"name\\": \\"PhonePe\\", \\"active\\": 1}, {\\"label\\": \\"Google Pay\\", \\"name\\": \\"GooglePay\\", \\"active\\": 1}, {\\"label\\": \\"BHIM UPI\\", \\"name\\": \\"BHIM\\", \\"active\\": 1}], \\"header\\": \\"QR Payments\\"}, {\\"payments\\": [{\\"label\\": \\"Sodexo Card\\", \\"name\\": \\"Sodexo\\", \\"active\\": 1}, {\\"label\\": \\"Credit\\/Debit Card\\", \\"name\\": \\"Card\\", \\"active\\": 1}, {\\"label\\": \\"QwikCilver\\", \\"name\\": \\"Qwikcilver\\", \\"active\\": 0}], \\"header\\": \\"Card Payments\\"}, {\\"payments\\": [{\\"label\\": \\"LazyPay\\", \\"name\\": \\"LazyPay\\", \\"active\\": 1}, {\\"label\\": \\"OLA Money\\", \\"name\\": \\"Ola\\", \\"active\\": 0}, {\\"label\\": \\"Tiny Wallet\\", \\"name\\": \\"Neuu\\", \\"active\\": 0}], \\"header\\": \\"Wallet Payments\\"}]","refill_order_id":"TM08202202_refill_260831120651","order_id":"TM08202202_refill_260831120651","door_size":2,"rstatus":true,"active_doors":["1","2"],"user":"machine"},{"action":"complete_refill","trays":{"11":{"id":"11","tray_id":"11","door_id":"1","image":"https:\\/\\/images.tinymart.in\\/product\\/165143-5076.png","name":"Town Bus Soya Stick ,35g","mrp":"10","weight":"33","qty":0,"org_sku":"165143","p_sku":"165143","p_qty":0,"l_sku":"165143","l_qty":"2","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"165143-0","tray_weight":"99999","modified_at":"2026-08-31 12:06:53","created_at":"2026-08-31 12:06:53"},"12":{"tray_id":"12","door_id":"1","tray_weight":"99999","sku_json":"4500605-10","org_sku":"4500605","active":"1","created_at":"2026-08-31 12:04:43","modified_at":"2026-08-31 12:04:43","image":"https:\\/\\/images.tinymart.in\\/product\\/4500605-6297.png","name":"Ongibytes Garlic Muruku ","mrp":"20","weight":"42","qty":"10","id":"12","p_sku":"4500605","p_qty":"10","p_return_sku":"4500708","p_return_qty":"0","return_sku":"4500708","return_qty":"0","return_image":"https:\\/\\/images.tinymart.in\\/product\\/4500708-7901.webp","l_sku":"4500708","l_qty":"0"},"13":{"tray_id":"13","door_id":"1","tray_weight":"99999","sku_json":"4500722-10","org_sku":"4500722","active":"1","created_at":"2026-08-31 12:04:43","modified_at":"2026-08-31 12:04:43","image":"https:\\/\\/images.tinymart.in\\/product\\/4500722-2079.jpeg","name":"MaxVita Rice Kodubale 30gm","mrp":"10","weight":"35","qty":"10","id":"13","p_sku":"4500722","p_qty":"10","p_return_sku":"4500605","p_return_qty":"0","return_sku":"4500605","return_qty":"0","return_image":"https:\\/\\/images.tinymart.in\\/product\\/4500605-6297.png","l_sku":"4500605","l_qty":"0"},"14":{"tray_id":"14","door_id":"1","tray_weight":"99999","sku_json":"4500714-15","org_sku":"4500714","active":"1","created_at":"2026-08-31 12:04:43","modified_at":"2026-08-31 12:04:43","image":"https:\\/\\/images.tinymart.in\\/product\\/4500714-2989.png","name":"McVities Triple Nut Cookies 58gm","mrp":"10","weight":"58","qty":"15","id":"14","p_sku":"4500714","p_qty":"15","p_return_sku":"4500723","p_return_qty":"0","return_sku":"4500723","return_qty":"0","return_image":"https:\\/\\/images.tinymart.in\\/product\\/4500723-3888.png","l_sku":"4500723","l_qty":"0"},"15":{"id":"15","tray_id":"15","door_id":"1","image":"https:\\/\\/images.tinymart.in\\/product\\/4500710-1463.png","name":"MaxVita Premium crunch Rusk 51gm","mrp":"10","weight":"55","qty":0,"org_sku":"4500710","p_sku":"4500710","p_qty":0,"l_sku":"4500710","l_qty":"11","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"4500710-0","tray_weight":"99999","modified_at":"2026-08-31 12:06:53","created_at":"2026-08-31 12:06:53"},"16":{"id":"16","tray_id":"16","door_id":"1","image":"https:\\/\\/images.tinymart.in\\/product\\/4500681-9948.webp","name":"McVities Orange Cream Biscuts 61gm","mrp":"10","weight":"64","qty":0,"org_sku":"4500681","p_sku":"4500681","p_qty":0,"l_sku":"4500681","l_qty":"5","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"4500681-0","tray_weight":"99999","modified_at":"2026-08-31 12:06:53","created_at":"2026-08-31 12:06:53"},"17":{"tray_id":"17","door_id":"1","tray_weight":"99999","sku_json":"4500708-12","org_sku":"4500708","active":"1","created_at":"2026-08-31 12:04:43","modified_at":"2026-08-31 12:04:43","image":"https:\\/\\/images.tinymart.in\\/product\\/4500708-7901.webp","name":"Modern Kitchen Masala Peanut 28gm","mrp":"10","weight":"31","qty":"12","id":"17","p_sku":"4500708","p_qty":"12","p_return_sku":"4500722","p_return_qty":"0","return_sku":"4500722","return_qty":"0","return_image":"https:\\/\\/images.tinymart.in\\/product\\/4500722-2079.jpeg","l_sku":"4500722","l_qty":"0"},"18":{"id":"18","tray_id":"18","door_id":"1","image":"https:\\/\\/images.tinymart.in\\/product\\/4500673-8519.webp","name":"Modern kitchens Salted Peanuts 25gm","mrp":"10","weight":"28","qty":0,"org_sku":"4500673","p_sku":"4500673","p_qty":0,"l_sku":"4500673","l_qty":"2","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"4500673-0","tray_weight":"99999","modified_at":"2026-08-31 12:06:53","created_at":"2026-08-31 12:06:53"},"19":{"id":"19","tray_id":"19","door_id":"1","image":"https:\\/\\/images.tinymart.in\\/product\\/186042-4971.jpg","name":"Townbus Green Masala Peas 28g ","mrp":"10","weight":"31","qty":0,"org_sku":"186042","p_sku":"186042","p_qty":0,"l_sku":"186042","l_qty":"11","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"186042-0","tray_weight":"99999","modified_at":"2026-08-31 12:06:53","created_at":"2026-08-31 12:06:53"},"20":{"id":"20","tray_id":"20","door_id":"1","image":"https:\\/\\/images.tinymart.in\\/product\\/4500709-2651.webp","name":"McVities Butter Jeera Cookies58gm","mrp":"10","weight":"61","qty":0,"org_sku":"4500709","p_sku":"4500709","p_qty":0,"l_sku":"4500709","l_qty":"10","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"4500709-0","tray_weight":"99999","modified_at":"2026-08-31 12:06:53","created_at":"2026-08-31 12:06:53"},"21":{"id":"21","tray_id":"21","door_id":"1","image":"https:\\/\\/images.tinymart.in\\/product\\/4500665-172.jpg","name":"Farmely Peri Peri Makhana 14gm","mrp":"30","weight":"22","qty":0,"org_sku":"4500665","p_sku":"4500665","p_qty":0,"l_sku":"4500665","l_qty":"7","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"4500665-0","tray_weight":"99999","modified_at":"2026-08-31 12:06:53","created_at":"2026-08-31 12:06:53"},"22":{"id":"22","tray_id":"22","door_id":"1","image":"https:\\/\\/images.tinymart.in\\/product\\/4500648-25.webp","name":"Modern kitchens Banana Chips 21gm","mrp":"10","weight":"25","qty":0,"org_sku":"4500648","p_sku":"4500648","p_qty":0,"l_sku":"4500648","l_qty":"8","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"4500648-0","tray_weight":"99999","modified_at":"2026-08-31 12:06:53","created_at":"2026-08-31 12:06:53"},"23":{"tray_id":"23","door_id":"1","tray_weight":"99999","sku_json":"4500723-12","org_sku":"4500723","active":"1","created_at":"2026-08-31 12:04:43","modified_at":"2026-08-31 12:04:43","image":"https:\\/\\/images.tinymart.in\\/product\\/4500723-3888.png","name":"MaxVita Moong daal 25gm","mrp":"10","weight":"28","qty":"12","id":"23","p_sku":"4500723","p_qty":"12","p_return_sku":"4500726","p_return_qty":"1","return_sku":"4500726","return_qty":"1","return_image":"https:\\/\\/images.tinymart.in\\/product\\/4500726-818.jpeg","l_sku":"4500726","l_qty":"1"},"24":{"tray_id":"24","door_id":"1","tray_weight":"99999","sku_json":"4500672-12","org_sku":"4500672","active":"1","created_at":"2026-08-31 12:04:43","modified_at":"2026-08-31 12:04:43","image":"https:\\/\\/images.tinymart.in\\/product\\/4500672-7226.webp","name":"Modern kitchens Garlic Mixture 26gm","mrp":"10","weight":"29","qty":"12","id":"24","p_sku":"4500672","p_qty":"12","p_return_sku":"4500712","p_return_qty":"1","return_sku":"4500712","return_qty":"1","return_image":"https:\\/\\/images.tinymart.in\\/product\\/4500712-3453.png","l_sku":"4500712","l_qty":"1"},"25":{"id":"25","tray_id":"25","door_id":"1","image":"https:\\/\\/images.tinymart.in\\/product\\/186100-6904.jpg","name":"Too Yumm Crea onion 33gm","mrp":"20","weight":"36","qty":0,"org_sku":"186100","p_sku":"186100","p_qty":0,"l_sku":"186100","l_qty":"5","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"186100-0","tray_weight":"99999","modified_at":"2026-08-31 12:06:53","created_at":"2026-08-31 12:06:53"},"26":{"tray_id":"26","door_id":"1","tray_weight":"99999","sku_json":"4500726-12","org_sku":"4500726","active":"1","created_at":"2026-08-31 12:04:43","modified_at":"2026-08-31 12:04:43","image":"https:\\/\\/images.tinymart.in\\/product\\/4500726-818.jpeg","name":"MaxVita Crunchy Indian Mixture 30gm","mrp":"10","weight":"35","qty":"12","id":"26","p_sku":"4500726","p_qty":"12","p_return_sku":"4500711","p_return_qty":"0","return_sku":"4500711","return_qty":"0","return_image":"https:\\/\\/images.tinymart.in\\/product\\/4500711-9290.png","l_sku":"4500711","l_qty":"0"},"31":{"id":"31","tray_id":"31","door_id":"2","image":"https:\\/\\/images.tinymart.in\\/product\\/4500643-6170.webp","name":"Cavins Belgian chocolate 170ml spl pack","mrp":"40","weight":"191","qty":0,"org_sku":"4500643","p_sku":"4500643","p_qty":0,"l_sku":"4500643","l_qty":"3","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"4500643-0","tray_weight":"99999","modified_at":"2026-08-31 12:06:53","created_at":"2026-08-31 12:06:53"},"32":{"id":"32","tray_id":"32","door_id":"2","image":"https:\\/\\/images.tinymart.in\\/product\\/185994-2558.webp","name":"Nescafe Choco Mocha Cold Coffee 180ml","mrp":"45","weight":"200","qty":0,"org_sku":"185994","p_sku":"185994","p_qty":0,"l_sku":"185994","l_qty":"2","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"185994-0","tray_weight":"99999","modified_at":"2026-08-31 12:06:53","created_at":"2026-08-31 12:06:53"},"33":{"id":"33","tray_id":"33","door_id":"2","image":"https:\\/\\/images.tinymart.in\\/product\\/4500724-9570.jpg","name":"Heritage Badam Milk 165ml","mrp":"35","weight":"202","qty":0,"org_sku":"4500724","p_sku":"4500724","p_qty":0,"l_sku":"4500724","l_qty":"1","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"4500724-0","tray_weight":"99999","modified_at":"2026-08-31 12:06:53","created_at":"2026-08-31 12:06:53"},"34":{"id":"34","tray_id":"34","door_id":"2","image":"https:\\/\\/images.tinymart.in\\/product\\/4500499-5719.webp","name":"Heritage A1 Spiced Butter Milk180ml","mrp":"20","weight":"192","qty":0,"org_sku":"4500499","p_sku":"4500499","p_qty":0,"l_sku":"4500499","l_qty":"11","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"4500499-0","tray_weight":"99999","modified_at":"2026-08-31 12:06:53","created_at":"2026-08-31 12:06:53"},"35":{"id":"35","tray_id":"35","door_id":"2","image":"https:\\/\\/images.tinymart.in\\/product\\/4500701-4864.webp","name":"Madmix Anardana Raisins 11gm","mrp":"20","weight":"13","qty":0,"org_sku":"4500701","p_sku":"4500701","p_qty":0,"l_sku":"4500701","l_qty":"8","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"4500701-0","tray_weight":"99999","modified_at":"2026-08-31 12:06:53","created_at":"2026-08-31 12:06:53"},"36":{"id":"36","tray_id":"36","door_id":"2","image":"https:\\/\\/images.tinymart.in\\/product\\/186078-2883.png","name":"Paper boat Aam Panna 150ml","mrp":"25","weight":"166","qty":0,"org_sku":"186078","p_sku":"186078","p_qty":0,"l_sku":"186078","l_qty":"5","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"186078-0","tray_weight":"99999","modified_at":"2026-08-31 12:06:53","created_at":"2026-08-31 12:06:53"},"37":{"id":"37","tray_id":"37","door_id":"2","image":"https:\\/\\/images.tinymart.in\\/product\\/4500407-2060.jpg","name":"Paper boat Alphonso Mango 160ml","mrp":"25","weight":"175","qty":0,"org_sku":"4500407","p_sku":"4500407","p_qty":0,"l_sku":"4500407","l_qty":"4","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"4500407-0","tray_weight":"99999","modified_at":"2026-08-31 12:06:53","created_at":"2026-08-31 12:06:53"},"38":{"id":"38","tray_id":"38","door_id":"2","image":"https:\\/\\/images.tinymart.in\\/product\\/4500677-4669.png","name":"Eat Bit Peanut  Chikki 32gm","mrp":"10","weight":"33","qty":0,"org_sku":"4500677","p_sku":"4500677","p_qty":0,"l_sku":"4500677","l_qty":"0","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"4500677-0","tray_weight":"99999","modified_at":"2026-08-31 12:06:53","created_at":"2026-08-31 12:06:53"},"39":{"id":"39","tray_id":"39","door_id":"2","image":"https:\\/\\/images.tinymart.in\\/product\\/4500667-4339.webp","name":"Farmely Classic date Bites 20gm","mrp":"40","weight":"23","qty":0,"org_sku":"4500667","p_sku":"4500667","p_qty":0,"l_sku":"4500667","l_qty":"6","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"4500667-0","tray_weight":"99999","modified_at":"2026-08-31 12:06:53","created_at":"2026-08-31 12:06:53"},"40":{"id":"40","tray_id":"40","door_id":"2","image":"https:\\/\\/images.tinymart.in\\/product\\/166327-5644.jpg","name":"Epigamia Chocolate Milkshake 200g","mrp":"38","weight":"210","qty":0,"org_sku":"166327","p_sku":"166327","p_qty":0,"l_sku":"166327","l_qty":"4","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"166327-0","tray_weight":"99999","modified_at":"2026-08-31 12:06:53","created_at":"2026-08-31 12:06:53"},"41":{"id":"41","tray_id":"41","door_id":"2","image":"https:\\/\\/images.tinymart.in\\/product\\/4500678-5296.png","name":"Eat Bit Sesame  Chikki 32gm","mrp":"10","weight":"33","qty":0,"org_sku":"4500678","p_sku":"4500678","p_qty":0,"l_sku":"4500678","l_qty":"39","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"4500678-0","tray_weight":"99999","modified_at":"2026-08-31 12:06:53","created_at":"2026-08-31 12:06:53"},"42":{"id":"42","tray_id":"42","door_id":"2","image":"https:\\/\\/images.tinymart.in\\/product\\/186084-5395.png","name":"KITKAT Nestle 4 Finger Chocolate 38g","mrp":"30","weight":"41","qty":0,"org_sku":"186084","p_sku":"186084","p_qty":0,"l_sku":"186084","l_qty":"0","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"186084-0","tray_weight":"99999","modified_at":"2026-08-31 12:06:53","created_at":"2026-08-31 12:06:53"},"43":{"id":"43","tray_id":"43","door_id":"2","image":"https:\\/\\/images.tinymart.in\\/product\\/185993-3509.webp","name":"NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g","mrp":"20","weight":"42","qty":0,"org_sku":"185993","p_sku":"185993","p_qty":0,"l_sku":"185993","l_qty":"0","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"185993-0","tray_weight":"99999","modified_at":"2026-08-31 12:06:53","created_at":"2026-08-31 12:06:53"},"44":{"id":"44","tray_id":"44","door_id":"2","image":"https:\\/\\/images.tinymart.in\\/product\\/186096-4254.jpg","name":"Maaza Tetra 135ml","mrp":"10","weight":"150","qty":0,"org_sku":"186096","p_sku":"186096","p_qty":0,"l_sku":"186096","l_qty":"34","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"186096-0","tray_weight":"99999","modified_at":"2026-08-31 12:06:53","created_at":"2026-08-31 12:06:53"},"45":{"id":"45","tray_id":"45","door_id":"2","image":"https:\\/\\/images.tinymart.in\\/product\\/186043-5089.png","name":"Bindu Fizz Jeera Masala 250 ML","mrp":"20","weight":"295","qty":0,"org_sku":"186043","p_sku":"186043","p_qty":0,"l_sku":"186043","l_qty":"9","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"186043-0","tray_weight":"99999","modified_at":"2026-08-31 12:06:53","created_at":"2026-08-31 12:06:53"},"46":{"id":"46","tray_id":"46","door_id":"2","image":"https:\\/\\/images.tinymart.in\\/product\\/186059-5330.png","name":"Pepsi ZeroSugar  300ml","mrp":"40","weight":"310","qty":0,"org_sku":"186059","p_sku":"186059","p_qty":0,"l_sku":"186059","l_qty":"7","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"186059-0","tray_weight":"99999","modified_at":"2026-08-31 12:06:53","created_at":"2026-08-31 12:06:53"}},"command_for":"server"},{"success":true,"tray_mismatches":[{"sku_name":"Town Bus Soya Stick ,35g","tray_id":"11","quantity_in_db":"0","sku_id":"165143","quantity_on_tray":"14"},{"sku_name":"Ongibytes Garlic Muruku ","tray_id":"12","quantity_in_db":"10","sku_id":"4500605","quantity_on_tray":"10"},{"sku_name":"MaxVita Rice Kodubale 30gm","tray_id":"13","quantity_in_db":"10","sku_id":"4500722","quantity_on_tray":"11"},{"sku_name":"McVities Triple Nut Cookies 58gm","tray_id":"14","quantity_in_db":"15","sku_id":"4500714","quantity_on_tray":"24"},{"sku_name":"MaxVita Premium crunch Rusk 51gm","tray_id":"15","quantity_in_db":"0","sku_id":"4500710","quantity_on_tray":"11"},{"sku_name":"McVities Orange Cream Biscuts 61gm","tray_id":"16","quantity_in_db":"0","sku_id":"4500681","quantity_on_tray":"17"},{"sku_name":"Modern Kitchen Masala Peanut 28gm","tray_id":"17","quantity_in_db":"12","sku_id":"4500708","quantity_on_tray":"16"},{"sku_name":"Modern kitchens Salted Peanuts 25gm","tray_id":"18","quantity_in_db":"0","sku_id":"4500673","quantity_on_tray":"11"},{"sku_name":"Townbus Green Masala Peas 28g ","tray_id":"19","quantity_in_db":"0","sku_id":"186042","quantity_on_tray":"15"},{"sku_name":"McVities Butter Jeera Cookies58gm","tray_id":"20","quantity_in_db":"0","sku_id":"4500709","quantity_on_tray":"10"},{"sku_name":"Farmely Peri Peri Makhana 14gm","tray_id":"21","quantity_in_db":"0","sku_id":"4500665","quantity_on_tray":"7"},{"sku_name":"Modern kitchens Banana Chips 21gm","tray_id":"22","quantity_in_db":"0","sku_id":"4500648","quantity_on_tray":"8"},{"sku_name":"MaxVita Moong daal 25gm","tray_id":"23","quantity_in_db":"12","sku_id":"4500723","quantity_on_tray":"17"},{"sku_name":"Modern kitchens Garlic Mixture 26gm","tray_id":"24","quantity_in_db":"12","sku_id":"4500672","quantity_on_tray":"23"},{"sku_name":"Too Yumm Crea onion 33gm","tray_id":"25","quantity_in_db":"0","sku_id":"186100","quantity_on_tray":"5"},{"sku_name":"MaxVita Crunchy Indian Mixture 30gm","tray_id":"26","quantity_in_db":"12","sku_id":"4500726","quantity_on_tray":"20"},{"sku_name":"Cavins Belgian chocolate 170ml spl pack","tray_id":"31","quantity_in_db":"0","sku_id":"4500643","quantity_on_tray":"3"},{"sku_name":"Nescafe Choco Mocha Cold Coffee 180ml","tray_id":"32","quantity_in_db":"0","sku_id":"185994","quantity_on_tray":"2"},{"sku_name":"Heritage Badam Milk 165ml","tray_id":"33","quantity_in_db":"0","sku_id":"4500724","quantity_on_tray":"1"},{"sku_name":"Heritage A1 Spiced Butter Milk180ml","tray_id":"34","quantity_in_db":"0","sku_id":"4500499","quantity_on_tray":"11"},{"sku_name":"Madmix Anardana Raisins 11gm","tray_id":"35","quantity_in_db":"0","sku_id":"4500701","quantity_on_tray":"8"},{"sku_name":"Paper boat Aam Panna 150ml","tray_id":"36","quantity_in_db":"0","sku_id":"186078","quantity_on_tray":"5"},{"sku_name":"Paper boat Alphonso Mango 160ml","tray_id":"37","quantity_in_db":"0","sku_id":"4500407","quantity_on_tray":"4"},{"sku_name":"Eat Bit Peanut  Chikki 32gm","tray_id":"38","quantity_in_db":"0","sku_id":"4500677","quantity_on_tray":"6"},{"sku_name":"Farmely Classic date Bites 20gm","tray_id":"39","quantity_in_db":"0","sku_id":"4500667","quantity_on_tray":"6"},{"sku_name":"Epigamia Chocolate Milkshake 200g","tray_id":"40","quantity_in_db":"0","sku_id":"166327","quantity_on_tray":"4"},{"sku_name":"Eat Bit Sesame  Chikki 32gm","tray_id":"41","quantity_in_db":"0","sku_id":"4500678","quantity_on_tray":"39"},{"sku_name":"KITKAT Nestle 4 Finger Chocolate 38g","tray_id":"42","quantity_in_db":"0","sku_id":"186084","quantity_on_tray":"4"},{"sku_name":"NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g","tray_id":"43","quantity_in_db":"0","sku_id":"185993","quantity_on_tray":"25"},{"sku_name":"Maaza Tetra 135ml","tray_id":"44","quantity_in_db":"0","sku_id":"186096","quantity_on_tray":"34"},{"sku_name":"Bindu Fizz Jeera Masala 250 ML","tray_id":"45","quantity_in_db":"0","sku_id":"186043","quantity_on_tray":"9"},{"sku_name":"Pepsi ZeroSugar  300ml","tray_id":"46","quantity_in_db":"0","sku_id":"186059","quantity_on_tray":"7"}],"message":"Tray mismatches found.","user":"machine"}]'}
[2026-08-31 12:12:35,020.020 INFO    ] {'vm_id': '1660749537502', 'created_at': '2026-08-31 12:06:18', 'user_id': '9036356553', 'server_status': 'in-progress', 'last_command_response': '{"success":true,"tray_mismatches":[{"sku_name":"Town Bus Soya Stick ,35g","tray_id":"11","quantity_in_db":"0","sku_id":"165143","quantity_on_tray":"14"},{"sku_name":"Ongibytes Garlic Muruku ","tray_id":"12","quantity_in_db":"10","sku_id":"4500605","quantity_on_tray":"10"},{"sku_name":"MaxVita Rice Kodubale 30gm","tray_id":"13","quantity_in_db":"10","sku_id":"4500722","quantity_on_tray":"11"},{"sku_name":"McVities Triple Nut Cookies 58gm","tray_id":"14","quantity_in_db":"15","sku_id":"4500714","quantity_on_tray":"24"},{"sku_name":"MaxVita Premium crunch Rusk 51gm","tray_id":"15","quantity_in_db":"0","sku_id":"4500710","quantity_on_tray":"11"},{"sku_name":"McVities Orange Cream Biscuts 61gm","tray_id":"16","quantity_in_db":"0","sku_id":"4500681","quantity_on_tray":"17"},{"sku_name":"Modern Kitchen Masala Peanut 28gm","tray_id":"17","quantity_in_db":"12","sku_id":"4500708","quantity_on_tray":"16"},{"sku_name":"Modern kitchens Salted Peanuts 25gm","tray_id":"18","quantity_in_db":"0","sku_id":"4500673","quantity_on_tray":"11"},{"sku_name":"Townbus Green Masala Peas 28g ","tray_id":"19","quantity_in_db":"0","sku_id":"186042","quantity_on_tray":"15"},{"sku_name":"McVities Butter Jeera Cookies58gm","tray_id":"20","quantity_in_db":"0","sku_id":"4500709","quantity_on_tray":"10"},{"sku_name":"Farmely Peri Peri Makhana 14gm","tray_id":"21","quantity_in_db":"0","sku_id":"4500665","quantity_on_tray":"7"},{"sku_name":"Modern kitchens Banana Chips 21gm","tray_id":"22","quantity_in_db":"0","sku_id":"4500648","quantity_on_tray":"8"},{"sku_name":"MaxVita Moong daal 25gm","tray_id":"23","quantity_in_db":"12","sku_id":"4500723","quantity_on_tray":"17"},{"sku_name":"Modern kitchens Garlic Mixture 26gm","tray_id":"24","quantity_in_db":"12","sku_id":"4500672","quantity_on_tray":"23"},{"sku_name":"Too Yumm Crea onion 33gm","tray_id":"25","quantity_in_db":"0","sku_id":"186100","quantity_on_tray":"5"},{"sku_name":"MaxVita Crunchy Indian Mixture 30gm","tray_id":"26","quantity_in_db":"12","sku_id":"4500726","quantity_on_tray":"20"},{"sku_name":"Cavins Belgian chocolate 170ml spl pack","tray_id":"31","quantity_in_db":"0","sku_id":"4500643","quantity_on_tray":"3"},{"sku_name":"Nescafe Choco Mocha Cold Coffee 180ml","tray_id":"32","quantity_in_db":"0","sku_id":"185994","quantity_on_tray":"2"},{"sku_name":"Heritage Badam Milk 165ml","tray_id":"33","quantity_in_db":"0","sku_id":"4500724","quantity_on_tray":"1"},{"sku_name":"Heritage A1 Spiced Butter Milk180ml","tray_id":"34","quantity_in_db":"0","sku_id":"4500499","quantity_on_tray":"11"},{"sku_name":"Madmix Anardana Raisins 11gm","tray_id":"35","quantity_in_db":"0","sku_id":"4500701","quantity_on_tray":"8"},{"sku_name":"Paper boat Aam Panna 150ml","tray_id":"36","quantity_in_db":"0","sku_id":"186078","quantity_on_tray":"5"},{"sku_name":"Paper boat Alphonso Mango 160ml","tray_id":"37","quantity_in_db":"0","sku_id":"4500407","quantity_on_tray":"4"},{"sku_name":"Eat Bit Peanut  Chikki 32gm","tray_id":"38","quantity_in_db":"0","sku_id":"4500677","quantity_on_tray":"6"},{"sku_name":"Farmely Classic date Bites 20gm","tray_id":"39","quantity_in_db":"0","sku_id":"4500667","quantity_on_tray":"6"},{"sku_name":"Epigamia Chocolate Milkshake 200g","tray_id":"40","quantity_in_db":"0","sku_id":"166327","quantity_on_tray":"4"},{"sku_name":"Eat Bit Sesame  Chikki 32gm","tray_id":"41","quantity_in_db":"0","sku_id":"4500678","quantity_on_tray":"39"},{"sku_name":"KITKAT Nestle 4 Finger Chocolate 38g","tray_id":"42","quantity_in_db":"0","sku_id":"186084","quantity_on_tray":"4"},{"sku_name":"NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g","tray_id":"43","quantity_in_db":"0","sku_id":"185993","quantity_on_tray":"25"},{"sku_name":"Maaza Tetra 135ml","tray_id":"44","quantity_in_db":"0","sku_id":"186096","quantity_on_tray":"34"},{"sku_name":"Bindu Fizz Jeera Masala 250 ML","tray_id":"45","quantity_in_db":"0","sku_id":"186043","quantity_on_tray":"9"},{"sku_name":"Pepsi ZeroSugar  300ml","tray_id":"46","quantity_in_db":"0","sku_id":"186059","quantity_on_tray":"7"}],"message":"Tray mismatches found.","user":"machine"}', 'modified_at': '2026-08-31 12:12:34', 'type_of_order': 'refill', 'command_todo': 'interactive-refill', 'server_response': '', 'command_for': 'server', 'order_id': '9690357', 'status': 'active', 'command_request_data': '{"request_data":{"success":true,"tray_mismatches":[{"sku_name":"Town Bus Soya Stick ,35g","tray_id":"11","quantity_in_db":"0","sku_id":"165143","quantity_on_tray":"14"},{"sku_name":"Ongibytes Garlic Muruku ","tray_id":"12","quantity_in_db":"10","sku_id":"4500605","quantity_on_tray":"10"},{"sku_name":"MaxVita Rice Kodubale 30gm","tray_id":"13","quantity_in_db":"10","sku_id":"4500722","quantity_on_tray":"11"},{"sku_name":"McVities Triple Nut Cookies 58gm","tray_id":"14","quantity_in_db":"15","sku_id":"4500714","quantity_on_tray":"24"},{"sku_name":"MaxVita Premium crunch Rusk 51gm","tray_id":"15","quantity_in_db":"0","sku_id":"4500710","quantity_on_tray":"11"},{"sku_name":"McVities Orange Cream Biscuts 61gm","tray_id":"16","quantity_in_db":"0","sku_id":"4500681","quantity_on_tray":"17"},{"sku_name":"Modern Kitchen Masala Peanut 28gm","tray_id":"17","quantity_in_db":"12","sku_id":"4500708","quantity_on_tray":"16"},{"sku_name":"Modern kitchens Salted Peanuts 25gm","tray_id":"18","quantity_in_db":"0","sku_id":"4500673","quantity_on_tray":"11"},{"sku_name":"Townbus Green Masala Peas 28g ","tray_id":"19","quantity_in_db":"0","sku_id":"186042","quantity_on_tray":"15"},{"sku_name":"McVities Butter Jeera Cookies58gm","tray_id":"20","quantity_in_db":"0","sku_id":"4500709","quantity_on_tray":"10"},{"sku_name":"Farmely Peri Peri Makhana 14gm","tray_id":"21","quantity_in_db":"0","sku_id":"4500665","quantity_on_tray":"7"},{"sku_name":"Modern kitchens Banana Chips 21gm","tray_id":"22","quantity_in_db":"0","sku_id":"4500648","quantity_on_tray":"8"},{"sku_name":"MaxVita Moong daal 25gm","tray_id":"23","quantity_in_db":"12","sku_id":"4500723","quantity_on_tray":"17"},{"sku_name":"Modern kitchens Garlic Mixture 26gm","tray_id":"24","quantity_in_db":"12","sku_id":"4500672","quantity_on_tray":"23"},{"sku_name":"Too Yumm Crea onion 33gm","tray_id":"25","quantity_in_db":"0","sku_id":"186100","quantity_on_tray":"5"},{"sku_name":"MaxVita Crunchy Indian Mixture 30gm","tray_id":"26","quantity_in_db":"12","sku_id":"4500726","quantity_on_tray":"20"},{"sku_name":"Cavins Belgian chocolate 170ml spl pack","tray_id":"31","quantity_in_db":"0","sku_id":"4500643","quantity_on_tray":"3"},{"sku_name":"Nescafe Choco Mocha Cold Coffee 180ml","tray_id":"32","quantity_in_db":"0","sku_id":"185994","quantity_on_tray":"2"},{"sku_name":"Heritage Badam Milk 165ml","tray_id":"33","quantity_in_db":"0","sku_id":"4500724","quantity_on_tray":"1"},{"sku_name":"Heritage A1 Spiced Butter Milk180ml","tray_id":"34","quantity_in_db":"0","sku_id":"4500499","quantity_on_tray":"11"},{"sku_name":"Madmix Anardana Raisins 11gm","tray_id":"35","quantity_in_db":"0","sku_id":"4500701","quantity_on_tray":"8"},{"sku_name":"Paper boat Aam Panna 150ml","tray_id":"36","quantity_in_db":"0","sku_id":"186078","quantity_on_tray":"5"},{"sku_name":"Paper boat Alphonso Mango 160ml","tray_id":"37","quantity_in_db":"0","sku_id":"4500407","quantity_on_tray":"4"},{"sku_name":"Eat Bit Peanut  Chikki 32gm","tray_id":"38","quantity_in_db":"0","sku_id":"4500677","quantity_on_tray":"6"},{"sku_name":"Farmely Classic date Bites 20gm","tray_id":"39","quantity_in_db":"0","sku_id":"4500667","quantity_on_tray":"6"},{"sku_name":"Epigamia Chocolate Milkshake 200g","tray_id":"40","quantity_in_db":"0","sku_id":"166327","quantity_on_tray":"4"},{"sku_name":"Eat Bit Sesame  Chikki 32gm","tray_id":"41","quantity_in_db":"0","sku_id":"4500678","quantity_on_tray":"39"},{"sku_name":"KITKAT Nestle 4 Finger Chocolate 38g","tray_id":"42","quantity_in_db":"0","sku_id":"186084","quantity_on_tray":"4"},{"sku_name":"NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g","tray_id":"43","quantity_in_db":"0","sku_id":"185993","quantity_on_tray":"25"},{"sku_name":"Maaza Tetra 135ml","tray_id":"44","quantity_in_db":"0","sku_id":"186096","quantity_on_tray":"34"},{"sku_name":"Bindu Fizz Jeera Masala 250 ML","tray_id":"45","quantity_in_db":"0","sku_id":"186043","quantity_on_tray":"9"},{"sku_name":"Pepsi ZeroSugar  300ml","tray_id":"46","quantity_in_db":"0","sku_id":"186059","quantity_on_tray":"7"}],"message":"Tray mismatches found."},"action_name":"verify refill Qty","refill_order_id":"TM08202202_refill_260831120651","action":"open_door_process","sub-action":"verify-refill","user":"server","response_data":{"success":true,"tray_mismatches":[{"sku_name":"Town Bus Soya Stick ,35g","tray_id":"11","quantity_in_db":"0","sku_id":"165143","quantity_on_tray":"14"},{"sku_name":"Ongibytes Garlic Muruku ","tray_id":"12","quantity_in_db":"10","sku_id":"4500605","quantity_on_tray":"10"},{"sku_name":"MaxVita Rice Kodubale 30gm","tray_id":"13","quantity_in_db":"10","sku_id":"4500722","quantity_on_tray":"11"},{"sku_name":"McVities Triple Nut Cookies 58gm","tray_id":"14","quantity_in_db":"15","sku_id":"4500714","quantity_on_tray":"24"},{"sku_name":"MaxVita Premium crunch Rusk 51gm","tray_id":"15","quantity_in_db":"0","sku_id":"4500710","quantity_on_tray":"11"},{"sku_name":"McVities Orange Cream Biscuts 61gm","tray_id":"16","quantity_in_db":"0","sku_id":"4500681","quantity_on_tray":"17"},{"sku_name":"Modern Kitchen Masala Peanut 28gm","tray_id":"17","quantity_in_db":"12","sku_id":"4500708","quantity_on_tray":"16"},{"sku_name":"Modern kitchens Salted Peanuts 25gm","tray_id":"18","quantity_in_db":"0","sku_id":"4500673","quantity_on_tray":"11"},{"sku_name":"Townbus Green Masala Peas 28g ","tray_id":"19","quantity_in_db":"0","sku_id":"186042","quantity_on_tray":"15"},{"sku_name":"McVities Butter Jeera Cookies58gm","tray_id":"20","quantity_in_db":"0","sku_id":"4500709","quantity_on_tray":"10"},{"sku_name":"Farmely Peri Peri Makhana 14gm","tray_id":"21","quantity_in_db":"0","sku_id":"4500665","quantity_on_tray":"7"},{"sku_name":"Modern kitchens Banana Chips 21gm","tray_id":"22","quantity_in_db":"0","sku_id":"4500648","quantity_on_tray":"8"},{"sku_name":"MaxVita Moong daal 25gm","tray_id":"23","quantity_in_db":"12","sku_id":"4500723","quantity_on_tray":"17"},{"sku_name":"Modern kitchens Garlic Mixture 26gm","tray_id":"24","quantity_in_db":"12","sku_id":"4500672","quantity_on_tray":"23"},{"sku_name":"Too Yumm Crea onion 33gm","tray_id":"25","quantity_in_db":"0","sku_id":"186100","quantity_on_tray":"5"},{"sku_name":"MaxVita Crunchy Indian Mixture 30gm","tray_id":"26","quantity_in_db":"12","sku_id":"4500726","quantity_on_tray":"20"},{"sku_name":"Cavins Belgian chocolate 170ml spl pack","tray_id":"31","quantity_in_db":"0","sku_id":"4500643","quantity_on_tray":"3"},{"sku_name":"Nescafe Choco Mocha Cold Coffee 180ml","tray_id":"32","quantity_in_db":"0","sku_id":"185994","quantity_on_tray":"2"},{"sku_name":"Heritage Badam Milk 165ml","tray_id":"33","quantity_in_db":"0","sku_id":"4500724","quantity_on_tray":"1"},{"sku_name":"Heritage A1 Spiced Butter Milk180ml","tray_id":"34","quantity_in_db":"0","sku_id":"4500499","quantity_on_tray":"11"},{"sku_name":"Madmix Anardana Raisins 11gm","tray_id":"35","quantity_in_db":"0","sku_id":"4500701","quantity_on_tray":"8"},{"sku_name":"Paper boat Aam Panna 150ml","tray_id":"36","quantity_in_db":"0","sku_id":"186078","quantity_on_tray":"5"},{"sku_name":"Paper boat Alphonso Mango 160ml","tray_id":"37","quantity_in_db":"0","sku_id":"4500407","quantity_on_tray":"4"},{"sku_name":"Eat Bit Peanut  Chikki 32gm","tray_id":"38","quantity_in_db":"0","sku_id":"4500677","quantity_on_tray":"6"},{"sku_name":"Farmely Classic date Bites 20gm","tray_id":"39","quantity_in_db":"0","sku_id":"4500667","quantity_on_tray":"6"},{"sku_name":"Epigamia Chocolate Milkshake 200g","tray_id":"40","quantity_in_db":"0","sku_id":"166327","quantity_on_tray":"4"},{"sku_name":"Eat Bit Sesame  Chikki 32gm","tray_id":"41","quantity_in_db":"0","sku_id":"4500678","quantity_on_tray":"39"},{"sku_name":"KITKAT Nestle 4 Finger Chocolate 38g","tray_id":"42","quantity_in_db":"0","sku_id":"186084","quantity_on_tray":"4"},{"sku_name":"NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g","tray_id":"43","quantity_in_db":"0","sku_id":"185993","quantity_on_tray":"25"},{"sku_name":"Maaza Tetra 135ml","tray_id":"44","quantity_in_db":"0","sku_id":"186096","quantity_on_tray":"34"},{"sku_name":"Bindu Fizz Jeera Masala 250 ML","tray_id":"45","quantity_in_db":"0","sku_id":"186043","quantity_on_tray":"9"},{"sku_name":"Pepsi ZeroSugar  300ml","tray_id":"46","quantity_in_db":"0","sku_id":"186059","quantity_on_tray":"7"}],"message":"Tray mismatches found."},"active_doors":["1","2"]}', 'all_command_response': '[{"action":"get_user_mobile_no","mobile_no":"9036356553","command_for":"server"},{"allowed":"1","refill_id":"9690357","success":"true","user_id":9036356553,"otp":"3715","user":"machine"},{"action":"get_mobile_otp","mobile_no":"9036356553","otp":"3715","command_for":"server"},{"refill_id":"9690357","status":"True","user_id":9036356553,"active_payment_gateways":"[{\\"payments\\": [{\\"label\\": \\"PayTM\\", \\"name\\": \\"PayTM\\", \\"active\\": 1}, {\\"label\\": \\"PhonePe\\", \\"name\\": \\"PhonePe\\", \\"active\\": 1}, {\\"label\\": \\"Google Pay\\", \\"name\\": \\"GooglePay\\", \\"active\\": 1}, {\\"label\\": \\"BHIM UPI\\", \\"name\\": \\"BHIM\\", \\"active\\": 1}], \\"header\\": \\"QR Payments\\"}, {\\"payments\\": [{\\"label\\": \\"Sodexo Card\\", \\"name\\": \\"Sodexo\\", \\"active\\": 1}, {\\"label\\": \\"Credit\\/Debit Card\\", \\"name\\": \\"Card\\", \\"active\\": 1}, {\\"label\\": \\"QwikCilver\\", \\"name\\": \\"Qwikcilver\\", \\"active\\": 0}], \\"header\\": \\"Card Payments\\"}, {\\"payments\\": [{\\"label\\": \\"LazyPay\\", \\"name\\": \\"LazyPay\\", \\"active\\": 1}, {\\"label\\": \\"OLA Money\\", \\"name\\": \\"Ola\\", \\"active\\": 0}, {\\"label\\": \\"Tiny Wallet\\", \\"name\\": \\"Neuu\\", \\"active\\": 0}], \\"header\\": \\"Wallet Payments\\"}]","refill_order_id":"TM08202202_refill_260831120651","order_id":"TM08202202_refill_260831120651","door_size":2,"rstatus":true,"active_doors":["1","2"],"user":"machine"},{"action":"complete_refill","trays":{"11":{"id":"11","tray_id":"11","door_id":"1","image":"https:\\/\\/images.tinymart.in\\/product\\/165143-5076.png","name":"Town Bus Soya Stick ,35g","mrp":"10","weight":"33","qty":0,"org_sku":"165143","p_sku":"165143","p_qty":0,"l_sku":"165143","l_qty":"2","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"165143-0","tray_weight":"99999","modified_at":"2026-08-31 12:06:53","created_at":"2026-08-31 12:06:53"},"12":{"tray_id":"12","door_id":"1","tray_weight":"99999","sku_json":"4500605-10","org_sku":"4500605","active":"1","created_at":"2026-08-31 12:04:43","modified_at":"2026-08-31 12:04:43","image":"https:\\/\\/images.tinymart.in\\/product\\/4500605-6297.png","name":"Ongibytes Garlic Muruku ","mrp":"20","weight":"42","qty":"10","id":"12","p_sku":"4500605","p_qty":"10","p_return_sku":"4500708","p_return_qty":"0","return_sku":"4500708","return_qty":"0","return_image":"https:\\/\\/images.tinymart.in\\/product\\/4500708-7901.webp","l_sku":"4500708","l_qty":"0"},"13":{"tray_id":"13","door_id":"1","tray_weight":"99999","sku_json":"4500722-10","org_sku":"4500722","active":"1","created_at":"2026-08-31 12:04:43","modified_at":"2026-08-31 12:04:43","image":"https:\\/\\/images.tinymart.in\\/product\\/4500722-2079.jpeg","name":"MaxVita Rice Kodubale 30gm","mrp":"10","weight":"35","qty":"10","id":"13","p_sku":"4500722","p_qty":"10","p_return_sku":"4500605","p_return_qty":"0","return_sku":"4500605","return_qty":"0","return_image":"https:\\/\\/images.tinymart.in\\/product\\/4500605-6297.png","l_sku":"4500605","l_qty":"0"},"14":{"tray_id":"14","door_id":"1","tray_weight":"99999","sku_json":"4500714-15","org_sku":"4500714","active":"1","created_at":"2026-08-31 12:04:43","modified_at":"2026-08-31 12:04:43","image":"https:\\/\\/images.tinymart.in\\/product\\/4500714-2989.png","name":"McVities Triple Nut Cookies 58gm","mrp":"10","weight":"58","qty":"15","id":"14","p_sku":"4500714","p_qty":"15","p_return_sku":"4500723","p_return_qty":"0","return_sku":"4500723","return_qty":"0","return_image":"https:\\/\\/images.tinymart.in\\/product\\/4500723-3888.png","l_sku":"4500723","l_qty":"0"},"15":{"id":"15","tray_id":"15","door_id":"1","image":"https:\\/\\/images.tinymart.in\\/product\\/4500710-1463.png","name":"MaxVita Premium crunch Rusk 51gm","mrp":"10","weight":"55","qty":0,"org_sku":"4500710","p_sku":"4500710","p_qty":0,"l_sku":"4500710","l_qty":"11","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"4500710-0","tray_weight":"99999","modified_at":"2026-08-31 12:06:53","created_at":"2026-08-31 12:06:53"},"16":{"id":"16","tray_id":"16","door_id":"1","image":"https:\\/\\/images.tinymart.in\\/product\\/4500681-9948.webp","name":"McVities Orange Cream Biscuts 61gm","mrp":"10","weight":"64","qty":0,"org_sku":"4500681","p_sku":"4500681","p_qty":0,"l_sku":"4500681","l_qty":"5","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"4500681-0","tray_weight":"99999","modified_at":"2026-08-31 12:06:53","created_at":"2026-08-31 12:06:53"},"17":{"tray_id":"17","door_id":"1","tray_weight":"99999","sku_json":"4500708-12","org_sku":"4500708","active":"1","created_at":"2026-08-31 12:04:43","modified_at":"2026-08-31 12:04:43","image":"https:\\/\\/images.tinymart.in\\/product\\/4500708-7901.webp","name":"Modern Kitchen Masala Peanut 28gm","mrp":"10","weight":"31","qty":"12","id":"17","p_sku":"4500708","p_qty":"12","p_return_sku":"4500722","p_return_qty":"0","return_sku":"4500722","return_qty":"0","return_image":"https:\\/\\/images.tinymart.in\\/product\\/4500722-2079.jpeg","l_sku":"4500722","l_qty":"0"},"18":{"id":"18","tray_id":"18","door_id":"1","image":"https:\\/\\/images.tinymart.in\\/product\\/4500673-8519.webp","name":"Modern kitchens Salted Peanuts 25gm","mrp":"10","weight":"28","qty":0,"org_sku":"4500673","p_sku":"4500673","p_qty":0,"l_sku":"4500673","l_qty":"2","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"4500673-0","tray_weight":"99999","modified_at":"2026-08-31 12:06:53","created_at":"2026-08-31 12:06:53"},"19":{"id":"19","tray_id":"19","door_id":"1","image":"https:\\/\\/images.tinymart.in\\/product\\/186042-4971.jpg","name":"Townbus Green Masala Peas 28g ","mrp":"10","weight":"31","qty":0,"org_sku":"186042","p_sku":"186042","p_qty":0,"l_sku":"186042","l_qty":"11","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"186042-0","tray_weight":"99999","modified_at":"2026-08-31 12:06:53","created_at":"2026-08-31 12:06:53"},"20":{"id":"20","tray_id":"20","door_id":"1","image":"https:\\/\\/images.tinymart.in\\/product\\/4500709-2651.webp","name":"McVities Butter Jeera Cookies58gm","mrp":"10","weight":"61","qty":0,"org_sku":"4500709","p_sku":"4500709","p_qty":0,"l_sku":"4500709","l_qty":"10","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"4500709-0","tray_weight":"99999","modified_at":"2026-08-31 12:06:53","created_at":"2026-08-31 12:06:53"},"21":{"id":"21","tray_id":"21","door_id":"1","image":"https:\\/\\/images.tinymart.in\\/product\\/4500665-172.jpg","name":"Farmely Peri Peri Makhana 14gm","mrp":"30","weight":"22","qty":0,"org_sku":"4500665","p_sku":"4500665","p_qty":0,"l_sku":"4500665","l_qty":"7","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"4500665-0","tray_weight":"99999","modified_at":"2026-08-31 12:06:53","created_at":"2026-08-31 12:06:53"},"22":{"id":"22","tray_id":"22","door_id":"1","image":"https:\\/\\/images.tinymart.in\\/product\\/4500648-25.webp","name":"Modern kitchens Banana Chips 21gm","mrp":"10","weight":"25","qty":0,"org_sku":"4500648","p_sku":"4500648","p_qty":0,"l_sku":"4500648","l_qty":"8","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"4500648-0","tray_weight":"99999","modified_at":"2026-08-31 12:06:53","created_at":"2026-08-31 12:06:53"},"23":{"tray_id":"23","door_id":"1","tray_weight":"99999","sku_json":"4500723-12","org_sku":"4500723","active":"1","created_at":"2026-08-31 12:04:43","modified_at":"2026-08-31 12:04:43","image":"https:\\/\\/images.tinymart.in\\/product\\/4500723-3888.png","name":"MaxVita Moong daal 25gm","mrp":"10","weight":"28","qty":"12","id":"23","p_sku":"4500723","p_qty":"12","p_return_sku":"4500726","p_return_qty":"1","return_sku":"4500726","return_qty":"1","return_image":"https:\\/\\/images.tinymart.in\\/product\\/4500726-818.jpeg","l_sku":"4500726","l_qty":"1"},"24":{"tray_id":"24","door_id":"1","tray_weight":"99999","sku_json":"4500672-12","org_sku":"4500672","active":"1","created_at":"2026-08-31 12:04:43","modified_at":"2026-08-31 12:04:43","image":"https:\\/\\/images.tinymart.in\\/product\\/4500672-7226.webp","name":"Modern kitchens Garlic Mixture 26gm","mrp":"10","weight":"29","qty":"12","id":"24","p_sku":"4500672","p_qty":"12","p_return_sku":"4500712","p_return_qty":"1","return_sku":"4500712","return_qty":"1","return_image":"https:\\/\\/images.tinymart.in\\/product\\/4500712-3453.png","l_sku":"4500712","l_qty":"1"},"25":{"id":"25","tray_id":"25","door_id":"1","image":"https:\\/\\/images.tinymart.in\\/product\\/186100-6904.jpg","name":"Too Yumm Crea onion 33gm","mrp":"20","weight":"36","qty":0,"org_sku":"186100","p_sku":"186100","p_qty":0,"l_sku":"186100","l_qty":"5","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"186100-0","tray_weight":"99999","modified_at":"2026-08-31 12:06:53","created_at":"2026-08-31 12:06:53"},"26":{"tray_id":"26","door_id":"1","tray_weight":"99999","sku_json":"4500726-12","org_sku":"4500726","active":"1","created_at":"2026-08-31 12:04:43","modified_at":"2026-08-31 12:04:43","image":"https:\\/\\/images.tinymart.in\\/product\\/4500726-818.jpeg","name":"MaxVita Crunchy Indian Mixture 30gm","mrp":"10","weight":"35","qty":"12","id":"26","p_sku":"4500726","p_qty":"12","p_return_sku":"4500711","p_return_qty":"0","return_sku":"4500711","return_qty":"0","return_image":"https:\\/\\/images.tinymart.in\\/product\\/4500711-9290.png","l_sku":"4500711","l_qty":"0"},"31":{"id":"31","tray_id":"31","door_id":"2","image":"https:\\/\\/images.tinymart.in\\/product\\/4500643-6170.webp","name":"Cavins Belgian chocolate 170ml spl pack","mrp":"40","weight":"191","qty":0,"org_sku":"4500643","p_sku":"4500643","p_qty":0,"l_sku":"4500643","l_qty":"3","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"4500643-0","tray_weight":"99999","modified_at":"2026-08-31 12:06:53","created_at":"2026-08-31 12:06:53"},"32":{"id":"32","tray_id":"32","door_id":"2","image":"https:\\/\\/images.tinymart.in\\/product\\/185994-2558.webp","name":"Nescafe Choco Mocha Cold Coffee 180ml","mrp":"45","weight":"200","qty":0,"org_sku":"185994","p_sku":"185994","p_qty":0,"l_sku":"185994","l_qty":"2","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"185994-0","tray_weight":"99999","modified_at":"2026-08-31 12:06:53","created_at":"2026-08-31 12:06:53"},"33":{"id":"33","tray_id":"33","door_id":"2","image":"https:\\/\\/images.tinymart.in\\/product\\/4500724-9570.jpg","name":"Heritage Badam Milk 165ml","mrp":"35","weight":"202","qty":0,"org_sku":"4500724","p_sku":"4500724","p_qty":0,"l_sku":"4500724","l_qty":"1","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"4500724-0","tray_weight":"99999","modified_at":"2026-08-31 12:06:53","created_at":"2026-08-31 12:06:53"},"34":{"id":"34","tray_id":"34","door_id":"2","image":"https:\\/\\/images.tinymart.in\\/product\\/4500499-5719.webp","name":"Heritage A1 Spiced Butter Milk180ml","mrp":"20","weight":"192","qty":0,"org_sku":"4500499","p_sku":"4500499","p_qty":0,"l_sku":"4500499","l_qty":"11","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"4500499-0","tray_weight":"99999","modified_at":"2026-08-31 12:06:53","created_at":"2026-08-31 12:06:53"},"35":{"id":"35","tray_id":"35","door_id":"2","image":"https:\\/\\/images.tinymart.in\\/product\\/4500701-4864.webp","name":"Madmix Anardana Raisins 11gm","mrp":"20","weight":"13","qty":0,"org_sku":"4500701","p_sku":"4500701","p_qty":0,"l_sku":"4500701","l_qty":"8","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"4500701-0","tray_weight":"99999","modified_at":"2026-08-31 12:06:53","created_at":"2026-08-31 12:06:53"},"36":{"id":"36","tray_id":"36","door_id":"2","image":"https:\\/\\/images.tinymart.in\\/product\\/186078-2883.png","name":"Paper boat Aam Panna 150ml","mrp":"25","weight":"166","qty":0,"org_sku":"186078","p_sku":"186078","p_qty":0,"l_sku":"186078","l_qty":"5","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"186078-0","tray_weight":"99999","modified_at":"2026-08-31 12:06:53","created_at":"2026-08-31 12:06:53"},"37":{"id":"37","tray_id":"37","door_id":"2","image":"https:\\/\\/images.tinymart.in\\/product\\/4500407-2060.jpg","name":"Paper boat Alphonso Mango 160ml","mrp":"25","weight":"175","qty":0,"org_sku":"4500407","p_sku":"4500407","p_qty":0,"l_sku":"4500407","l_qty":"4","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"4500407-0","tray_weight":"99999","modified_at":"2026-08-31 12:06:53","created_at":"2026-08-31 12:06:53"},"38":{"id":"38","tray_id":"38","door_id":"2","image":"https:\\/\\/images.tinymart.in\\/product\\/4500677-4669.png","name":"Eat Bit Peanut  Chikki 32gm","mrp":"10","weight":"33","qty":0,"org_sku":"4500677","p_sku":"4500677","p_qty":0,"l_sku":"4500677","l_qty":"0","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"4500677-0","tray_weight":"99999","modified_at":"2026-08-31 12:06:53","created_at":"2026-08-31 12:06:53"},"39":{"id":"39","tray_id":"39","door_id":"2","image":"https:\\/\\/images.tinymart.in\\/product\\/4500667-4339.webp","name":"Farmely Classic date Bites 20gm","mrp":"40","weight":"23","qty":0,"org_sku":"4500667","p_sku":"4500667","p_qty":0,"l_sku":"4500667","l_qty":"6","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"4500667-0","tray_weight":"99999","modified_at":"2026-08-31 12:06:53","created_at":"2026-08-31 12:06:53"},"40":{"id":"40","tray_id":"40","door_id":"2","image":"https:\\/\\/images.tinymart.in\\/product\\/166327-5644.jpg","name":"Epigamia Chocolate Milkshake 200g","mrp":"38","weight":"210","qty":0,"org_sku":"166327","p_sku":"166327","p_qty":0,"l_sku":"166327","l_qty":"4","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"166327-0","tray_weight":"99999","modified_at":"2026-08-31 12:06:53","created_at":"2026-08-31 12:06:53"},"41":{"id":"41","tray_id":"41","door_id":"2","image":"https:\\/\\/images.tinymart.in\\/product\\/4500678-5296.png","name":"Eat Bit Sesame  Chikki 32gm","mrp":"10","weight":"33","qty":0,"org_sku":"4500678","p_sku":"4500678","p_qty":0,"l_sku":"4500678","l_qty":"39","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"4500678-0","tray_weight":"99999","modified_at":"2026-08-31 12:06:53","created_at":"2026-08-31 12:06:53"},"42":{"id":"42","tray_id":"42","door_id":"2","image":"https:\\/\\/images.tinymart.in\\/product\\/186084-5395.png","name":"KITKAT Nestle 4 Finger Chocolate 38g","mrp":"30","weight":"41","qty":0,"org_sku":"186084","p_sku":"186084","p_qty":0,"l_sku":"186084","l_qty":"0","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"186084-0","tray_weight":"99999","modified_at":"2026-08-31 12:06:53","created_at":"2026-08-31 12:06:53"},"43":{"id":"43","tray_id":"43","door_id":"2","image":"https:\\/\\/images.tinymart.in\\/product\\/185993-3509.webp","name":"NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g","mrp":"20","weight":"42","qty":0,"org_sku":"185993","p_sku":"185993","p_qty":0,"l_sku":"185993","l_qty":"0","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"185993-0","tray_weight":"99999","modified_at":"2026-08-31 12:06:53","created_at":"2026-08-31 12:06:53"},"44":{"id":"44","tray_id":"44","door_id":"2","image":"https:\\/\\/images.tinymart.in\\/product\\/186096-4254.jpg","name":"Maaza Tetra 135ml","mrp":"10","weight":"150","qty":0,"org_sku":"186096","p_sku":"186096","p_qty":0,"l_sku":"186096","l_qty":"34","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"186096-0","tray_weight":"99999","modified_at":"2026-08-31 12:06:53","created_at":"2026-08-31 12:06:53"},"45":{"id":"45","tray_id":"45","door_id":"2","image":"https:\\/\\/images.tinymart.in\\/product\\/186043-5089.png","name":"Bindu Fizz Jeera Masala 250 ML","mrp":"20","weight":"295","qty":0,"org_sku":"186043","p_sku":"186043","p_qty":0,"l_sku":"186043","l_qty":"9","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"186043-0","tray_weight":"99999","modified_at":"2026-08-31 12:06:53","created_at":"2026-08-31 12:06:53"},"46":{"id":"46","tray_id":"46","door_id":"2","image":"https:\\/\\/images.tinymart.in\\/product\\/186059-5330.png","name":"Pepsi ZeroSugar  300ml","mrp":"40","weight":"310","qty":0,"org_sku":"186059","p_sku":"186059","p_qty":0,"l_sku":"186059","l_qty":"7","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"186059-0","tray_weight":"99999","modified_at":"2026-08-31 12:06:53","created_at":"2026-08-31 12:06:53"}},"command_for":"server"},{"success":true,"tray_mismatches":[{"sku_name":"Town Bus Soya Stick ,35g","tray_id":"11","quantity_in_db":"0","sku_id":"165143","quantity_on_tray":"14"},{"sku_name":"Ongibytes Garlic Muruku ","tray_id":"12","quantity_in_db":"10","sku_id":"4500605","quantity_on_tray":"10"},{"sku_name":"MaxVita Rice Kodubale 30gm","tray_id":"13","quantity_in_db":"10","sku_id":"4500722","quantity_on_tray":"11"},{"sku_name":"McVities Triple Nut Cookies 58gm","tray_id":"14","quantity_in_db":"15","sku_id":"4500714","quantity_on_tray":"24"},{"sku_name":"MaxVita Premium crunch Rusk 51gm","tray_id":"15","quantity_in_db":"0","sku_id":"4500710","quantity_on_tray":"11"},{"sku_name":"McVities Orange Cream Biscuts 61gm","tray_id":"16","quantity_in_db":"0","sku_id":"4500681","quantity_on_tray":"17"},{"sku_name":"Modern Kitchen Masala Peanut 28gm","tray_id":"17","quantity_in_db":"12","sku_id":"4500708","quantity_on_tray":"16"},{"sku_name":"Modern kitchens Salted Peanuts 25gm","tray_id":"18","quantity_in_db":"0","sku_id":"4500673","quantity_on_tray":"11"},{"sku_name":"Townbus Green Masala Peas 28g ","tray_id":"19","quantity_in_db":"0","sku_id":"186042","quantity_on_tray":"15"},{"sku_name":"McVities Butter Jeera Cookies58gm","tray_id":"20","quantity_in_db":"0","sku_id":"4500709","quantity_on_tray":"10"},{"sku_name":"Farmely Peri Peri Makhana 14gm","tray_id":"21","quantity_in_db":"0","sku_id":"4500665","quantity_on_tray":"7"},{"sku_name":"Modern kitchens Banana Chips 21gm","tray_id":"22","quantity_in_db":"0","sku_id":"4500648","quantity_on_tray":"8"},{"sku_name":"MaxVita Moong daal 25gm","tray_id":"23","quantity_in_db":"12","sku_id":"4500723","quantity_on_tray":"17"},{"sku_name":"Modern kitchens Garlic Mixture 26gm","tray_id":"24","quantity_in_db":"12","sku_id":"4500672","quantity_on_tray":"23"},{"sku_name":"Too Yumm Crea onion 33gm","tray_id":"25","quantity_in_db":"0","sku_id":"186100","quantity_on_tray":"5"},{"sku_name":"MaxVita Crunchy Indian Mixture 30gm","tray_id":"26","quantity_in_db":"12","sku_id":"4500726","quantity_on_tray":"20"},{"sku_name":"Cavins Belgian chocolate 170ml spl pack","tray_id":"31","quantity_in_db":"0","sku_id":"4500643","quantity_on_tray":"3"},{"sku_name":"Nescafe Choco Mocha Cold Coffee 180ml","tray_id":"32","quantity_in_db":"0","sku_id":"185994","quantity_on_tray":"2"},{"sku_name":"Heritage Badam Milk 165ml","tray_id":"33","quantity_in_db":"0","sku_id":"4500724","quantity_on_tray":"1"},{"sku_name":"Heritage A1 Spiced Butter Milk180ml","tray_id":"34","quantity_in_db":"0","sku_id":"4500499","quantity_on_tray":"11"},{"sku_name":"Madmix Anardana Raisins 11gm","tray_id":"35","quantity_in_db":"0","sku_id":"4500701","quantity_on_tray":"8"},{"sku_name":"Paper boat Aam Panna 150ml","tray_id":"36","quantity_in_db":"0","sku_id":"186078","quantity_on_tray":"5"},{"sku_name":"Paper boat Alphonso Mango 160ml","tray_id":"37","quantity_in_db":"0","sku_id":"4500407","quantity_on_tray":"4"},{"sku_name":"Eat Bit Peanut  Chikki 32gm","tray_id":"38","quantity_in_db":"0","sku_id":"4500677","quantity_on_tray":"6"},{"sku_name":"Farmely Classic date Bites 20gm","tray_id":"39","quantity_in_db":"0","sku_id":"4500667","quantity_on_tray":"6"},{"sku_name":"Epigamia Chocolate Milkshake 200g","tray_id":"40","quantity_in_db":"0","sku_id":"166327","quantity_on_tray":"4"},{"sku_name":"Eat Bit Sesame  Chikki 32gm","tray_id":"41","quantity_in_db":"0","sku_id":"4500678","quantity_on_tray":"39"},{"sku_name":"KITKAT Nestle 4 Finger Chocolate 38g","tray_id":"42","quantity_in_db":"0","sku_id":"186084","quantity_on_tray":"4"},{"sku_name":"NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g","tray_id":"43","quantity_in_db":"0","sku_id":"185993","quantity_on_tray":"25"},{"sku_name":"Maaza Tetra 135ml","tray_id":"44","quantity_in_db":"0","sku_id":"186096","quantity_on_tray":"34"},{"sku_name":"Bindu Fizz Jeera Masala 250 ML","tray_id":"45","quantity_in_db":"0","sku_id":"186043","quantity_on_tray":"9"},{"sku_name":"Pepsi ZeroSugar  300ml","tray_id":"46","quantity_in_db":"0","sku_id":"186059","quantity_on_tray":"7"}],"message":"Tray mismatches found.","user":"machine"}]'}
[2026-08-31 12:12:35,024.024 INFO    ] in main while loops
[2026-08-31 12:12:38,032.032 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:12:38
[2026-08-31 12:12:45,083.083 INFO    ] 
inside get

[2026-08-31 12:12:45,086.086 INFO    ] 200
[2026-08-31 12:12:45,099.099 INFO    ] waiting for server
[2026-08-31 12:12:48,107.107 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:12:48
[2026-08-31 12:12:49,823.823 INFO    ] 
inside get

[2026-08-31 12:12:49,829.829 INFO    ] 200
[2026-08-31 12:12:49,842.842 INFO    ] waiting for server
[2026-08-31 12:12:52,849.849 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:12:52
[2026-08-31 12:12:54,112.112 INFO    ] 
inside get

[2026-08-31 12:12:54,114.114 INFO    ] 200
[2026-08-31 12:12:54,126.126 INFO    ] waiting for server
[2026-08-31 12:12:57,133.133 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:12:57
[2026-08-31 12:13:03,765.765 INFO    ] 
inside get

[2026-08-31 12:13:03,767.767 INFO    ] 200
[2026-08-31 12:13:03,778.778 INFO    ] waiting for server
[2026-08-31 12:13:06,785.785 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:13:06
[2026-08-31 12:13:12,443.443 INFO    ] 
inside get

[2026-08-31 12:13:12,445.445 INFO    ] 200
[2026-08-31 12:13:12,456.456 INFO    ] waiting for server
[2026-08-31 12:13:15,463.463 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:13:15
[2026-08-31 12:13:17,300.300 INFO    ] 
inside get

[2026-08-31 12:13:17,303.303 INFO    ] 200
[2026-08-31 12:13:17,313.313 INFO    ] waiting for server
[2026-08-31 12:13:20,320.320 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:13:20
[2026-08-31 12:13:21,548.548 INFO    ] 
inside get

[2026-08-31 12:13:21,551.551 INFO    ] 200
[2026-08-31 12:13:21,561.561 INFO    ] waiting for server
[2026-08-31 12:13:24,568.568 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:13:24
[2026-08-31 12:13:26,635.635 INFO    ] 
inside get

[2026-08-31 12:13:26,637.637 INFO    ] 200
[2026-08-31 12:13:26,648.648 INFO    ] processing machine command
[2026-08-31 12:13:26,651.651 INFO    ] {"request_data":{"order_id":"TM08202202_refill_260831120651","door_id":[1],"txnType":"refill","door_open_init":true,"refill_id":"9690357","content":[{"sku_name":"Town Bus Soya Stick ,35g","tray_id":"11","quantity_in_db":"0","sku_id":"165143","quantity_on_tray":"14","check_enabled":true},{"sku_name":"Ongibytes Garlic Muruku ","tray_id":"12","quantity_in_db":"10","sku_id":"4500605","quantity_on_tray":"10","check_enabled":true},{"sku_name":"MaxVita Rice Kodubale 30gm","tray_id":"13","quantity_in_db":"10","sku_id":"4500722","quantity_on_tray":"11","check_enabled":true},{"sku_name":"McVities Triple Nut Cookies 58gm","tray_id":"14","quantity_in_db":"15","sku_id":"4500714","quantity_on_tray":"24","check_enabled":true},{"sku_name":"MaxVita Premium crunch Rusk 51gm","tray_id":"15","quantity_in_db":"0","sku_id":"4500710","quantity_on_tray":"11","check_enabled":true},{"sku_name":"McVities Orange Cream Biscuts 61gm","tray_id":"16","quantity_in_db":"0","sku_id":"4500681","quantity_on_tray":"17","check_enabled":true},{"sku_name":"Modern Kitchen Masala Peanut 28gm","tray_id":"17","quantity_in_db":"12","sku_id":"4500708","quantity_on_tray":"16","check_enabled":true},{"sku_name":"Modern kitchens Salted Peanuts 25gm","tray_id":"18","quantity_in_db":"0","sku_id":"4500673","quantity_on_tray":"11","check_enabled":true},{"sku_name":"Townbus Green Masala Peas 28g ","tray_id":"19","quantity_in_db":"0","sku_id":"186042","quantity_on_tray":"15","check_enabled":true},{"sku_name":"McVities Butter Jeera Cookies58gm","tray_id":"20","quantity_in_db":"0","sku_id":"4500709","quantity_on_tray":"10","check_enabled":true},{"sku_name":"Farmely Peri Peri Makhana 14gm","tray_id":"21","quantity_in_db":"0","sku_id":"4500665","quantity_on_tray":"7","check_enabled":true},{"sku_name":"Modern kitchens Banana Chips 21gm","tray_id":"22","quantity_in_db":"0","sku_id":"4500648","quantity_on_tray":"8","check_enabled":true},{"sku_name":"MaxVita Moong daal 25gm","tray_id":"23","quantity_in_db":"12","sku_id":"4500723","quantity_on_tray":"17","check_enabled":true},{"sku_name":"Modern kitchens Garlic Mixture 26gm","tray_id":"24","quantity_in_db":"12","sku_id":"4500672","quantity_on_tray":"23","check_enabled":true},{"sku_name":"Too Yumm Crea onion 33gm","tray_id":"25","quantity_in_db":"0","sku_id":"186100","quantity_on_tray":"5","check_enabled":true},{"sku_name":"MaxVita Crunchy Indian Mixture 30gm","tray_id":"26","quantity_in_db":"12","sku_id":"4500726","quantity_on_tray":"20","check_enabled":true},{"sku_name":"Cavins Belgian chocolate 170ml spl pack","tray_id":"31","quantity_in_db":"0","sku_id":"4500643","quantity_on_tray":"3","check_enabled":true},{"sku_name":"Nescafe Choco Mocha Cold Coffee 180ml","tray_id":"32","quantity_in_db":"0","sku_id":"185994","quantity_on_tray":"2","check_enabled":true},{"sku_name":"Heritage Badam Milk 165ml","tray_id":"33","quantity_in_db":"0","sku_id":"4500724","quantity_on_tray":"1","check_enabled":true},{"sku_name":"Heritage A1 Spiced Butter Milk180ml","tray_id":"34","quantity_in_db":"0","sku_id":"4500499","quantity_on_tray":"11","check_enabled":true},{"sku_name":"Madmix Anardana Raisins 11gm","tray_id":"35","quantity_in_db":"0","sku_id":"4500701","quantity_on_tray":"8","check_enabled":true},{"sku_name":"Paper boat Aam Panna 150ml","tray_id":"36","quantity_in_db":"0","sku_id":"186078","quantity_on_tray":"5","check_enabled":true},{"sku_name":"Paper boat Alphonso Mango 160ml","tray_id":"37","quantity_in_db":"0","sku_id":"4500407","quantity_on_tray":"4","check_enabled":true},{"sku_name":"Eat Bit Peanut  Chikki 32gm","tray_id":"38","quantity_in_db":"0","sku_id":"4500677","quantity_on_tray":"6","check_enabled":true},{"sku_name":"Farmely Classic date Bites 20gm","tray_id":"39","quantity_in_db":"0","sku_id":"4500667","quantity_on_tray":"6","check_enabled":true},{"sku_name":"Epigamia Chocolate Milkshake 200g","tray_id":"40","quantity_in_db":"0","sku_id":"166327","quantity_on_tray":"4","check_enabled":true},{"sku_name":"Eat Bit Sesame  Chikki 32gm","tray_id":"41","quantity_in_db":"0","sku_id":"4500678","quantity_on_tray":"39","check_enabled":true},{"sku_name":"KITKAT Nestle 4 Finger Chocolate 38g","tray_id":"42","quantity_in_db":"0","sku_id":"186084","quantity_on_tray":"4","check_enabled":true},{"sku_name":"NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g","tray_id":"43","quantity_in_db":"0","sku_id":"185993","quantity_on_tray":"25","check_enabled":true},{"sku_name":"Maaza Tetra 135ml","tray_id":"44","quantity_in_db":"0","sku_id":"186096","quantity_on_tray":"34","check_enabled":true},{"sku_name":"Bindu Fizz Jeera Masala 250 ML","tray_id":"45","quantity_in_db":"0","sku_id":"186043","quantity_on_tray":"9","check_enabled":true},{"sku_name":"Pepsi ZeroSugar  300ml","tray_id":"46","quantity_in_db":"0","sku_id":"186059","quantity_on_tray":"7","check_enabled":true}]},"action_name":"Waiting for Machine to Complete Verify Refill","refill_order_id":"TM08202202_refill_260831120651","action":"invoice_refill","sub-action":"invoice_refill","user":"machine","response_data":{"success":true,"tray_mismatches":[{"sku_name":"Town Bus Soya Stick ,35g","tray_id":"11","quantity_in_db":"0","sku_id":"165143","quantity_on_tray":"14"},{"sku_name":"Ongibytes Garlic Muruku ","tray_id":"12","quantity_in_db":"10","sku_id":"4500605","quantity_on_tray":"10"},{"sku_name":"MaxVita Rice Kodubale 30gm","tray_id":"13","quantity_in_db":"10","sku_id":"4500722","quantity_on_tray":"11"},{"sku_name":"McVities Triple Nut Cookies 58gm","tray_id":"14","quantity_in_db":"15","sku_id":"4500714","quantity_on_tray":"24"},{"sku_name":"MaxVita Premium crunch Rusk 51gm","tray_id":"15","quantity_in_db":"0","sku_id":"4500710","quantity_on_tray":"11"},{"sku_name":"McVities Orange Cream Biscuts 61gm","tray_id":"16","quantity_in_db":"0","sku_id":"4500681","quantity_on_tray":"17"},{"sku_name":"Modern Kitchen Masala Peanut 28gm","tray_id":"17","quantity_in_db":"12","sku_id":"4500708","quantity_on_tray":"16"},{"sku_name":"Modern kitchens Salted Peanuts 25gm","tray_id":"18","quantity_in_db":"0","sku_id":"4500673","quantity_on_tray":"11"},{"sku_name":"Townbus Green Masala Peas 28g ","tray_id":"19","quantity_in_db":"0","sku_id":"186042","quantity_on_tray":"15"},{"sku_name":"McVities Butter Jeera Cookies58gm","tray_id":"20","quantity_in_db":"0","sku_id":"4500709","quantity_on_tray":"10"},{"sku_name":"Farmely Peri Peri Makhana 14gm","tray_id":"21","quantity_in_db":"0","sku_id":"4500665","quantity_on_tray":"7"},{"sku_name":"Modern kitchens Banana Chips 21gm","tray_id":"22","quantity_in_db":"0","sku_id":"4500648","quantity_on_tray":"8"},{"sku_name":"MaxVita Moong daal 25gm","tray_id":"23","quantity_in_db":"12","sku_id":"4500723","quantity_on_tray":"17"},{"sku_name":"Modern kitchens Garlic Mixture 26gm","tray_id":"24","quantity_in_db":"12","sku_id":"4500672","quantity_on_tray":"23"},{"sku_name":"Too Yumm Crea onion 33gm","tray_id":"25","quantity_in_db":"0","sku_id":"186100","quantity_on_tray":"5"},{"sku_name":"MaxVita Crunchy Indian Mixture 30gm","tray_id":"26","quantity_in_db":"12","sku_id":"4500726","quantity_on_tray":"20"},{"sku_name":"Cavins Belgian chocolate 170ml spl pack","tray_id":"31","quantity_in_db":"0","sku_id":"4500643","quantity_on_tray":"3"},{"sku_name":"Nescafe Choco Mocha Cold Coffee 180ml","tray_id":"32","quantity_in_db":"0","sku_id":"185994","quantity_on_tray":"2"},{"sku_name":"Heritage Badam Milk 165ml","tray_id":"33","quantity_in_db":"0","sku_id":"4500724","quantity_on_tray":"1"},{"sku_name":"Heritage A1 Spiced Butter Milk180ml","tray_id":"34","quantity_in_db":"0","sku_id":"4500499","quantity_on_tray":"11"},{"sku_name":"Madmix Anardana Raisins 11gm","tray_id":"35","quantity_in_db":"0","sku_id":"4500701","quantity_on_tray":"8"},{"sku_name":"Paper boat Aam Panna 150ml","tray_id":"36","quantity_in_db":"0","sku_id":"186078","quantity_on_tray":"5"},{"sku_name":"Paper boat Alphonso Mango 160ml","tray_id":"37","quantity_in_db":"0","sku_id":"4500407","quantity_on_tray":"4"},{"sku_name":"Eat Bit Peanut  Chikki 32gm","tray_id":"38","quantity_in_db":"0","sku_id":"4500677","quantity_on_tray":"6"},{"sku_name":"Farmely Classic date Bites 20gm","tray_id":"39","quantity_in_db":"0","sku_id":"4500667","quantity_on_tray":"6"},{"sku_name":"Epigamia Chocolate Milkshake 200g","tray_id":"40","quantity_in_db":"0","sku_id":"166327","quantity_on_tray":"4"},{"sku_name":"Eat Bit Sesame  Chikki 32gm","tray_id":"41","quantity_in_db":"0","sku_id":"4500678","quantity_on_tray":"39"},{"sku_name":"KITKAT Nestle 4 Finger Chocolate 38g","tray_id":"42","quantity_in_db":"0","sku_id":"186084","quantity_on_tray":"4"},{"sku_name":"NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g","tray_id":"43","quantity_in_db":"0","sku_id":"185993","quantity_on_tray":"25"},{"sku_name":"Maaza Tetra 135ml","tray_id":"44","quantity_in_db":"0","sku_id":"186096","quantity_on_tray":"34"},{"sku_name":"Bindu Fizz Jeera Masala 250 ML","tray_id":"45","quantity_in_db":"0","sku_id":"186043","quantity_on_tray":"9"},{"sku_name":"Pepsi ZeroSugar  300ml","tray_id":"46","quantity_in_db":"0","sku_id":"186059","quantity_on_tray":"7"}],"message":"Tray mismatches found."},"active_doors":["1","2"]}
[2026-08-31 12:13:36,911.911 INFO    ] {"success": true}
[2026-08-31 12:13:36,914.914 INFO    ] {"success": true}
[2026-08-31 12:13:40,194.194 INFO    ] 
inside post

[2026-08-31 12:13:40,196.196 INFO    ] 200
[2026-08-31 12:13:40,199.199 INFO    ] {"order_id":"9690357","vm_id":"1660749537502","user_id":"9036356553","status":"active","server_status":"completed","server_response":"","command_todo":"interactive-refill","last_command_response":"{\"success\":true,\"user\":\"machine\"}","all_command_response":"[{\"action\":\"get_user_mobile_no\",\"mobile_no\":\"9036356553\",\"command_for\":\"server\"},{\"allowed\":\"1\",\"refill_id\":\"9690357\",\"success\":\"true\",\"user_id\":9036356553,\"otp\":\"3715\",\"user\":\"machine\"},{\"action\":\"get_mobile_otp\",\"mobile_no\":\"9036356553\",\"otp\":\"3715\",\"command_for\":\"server\"},{\"refill_id\":\"9690357\",\"status\":\"True\",\"user_id\":9036356553,\"active_payment_gateways\":\"[{\\\"payments\\\": [{\\\"label\\\": \\\"PayTM\\\", \\\"name\\\": \\\"PayTM\\\", \\\"active\\\": 1}, {\\\"label\\\": \\\"PhonePe\\\", \\\"name\\\": \\\"PhonePe\\\", \\\"active\\\": 1}, {\\\"label\\\": \\\"Google Pay\\\", \\\"name\\\": \\\"GooglePay\\\", \\\"active\\\": 1}, {\\\"label\\\": \\\"BHIM UPI\\\", \\\"name\\\": \\\"BHIM\\\", \\\"active\\\": 1}], \\\"header\\\": \\\"QR Payments\\\"}, {\\\"payments\\\": [{\\\"label\\\": \\\"Sodexo Card\\\", \\\"name\\\": \\\"Sodexo\\\", \\\"active\\\": 1}, {\\\"label\\\": \\\"Credit\\\/Debit Card\\\", \\\"name\\\": \\\"Card\\\", \\\"active\\\": 1}, {\\\"label\\\": \\\"QwikCilver\\\", \\\"name\\\": \\\"Qwikcilver\\\", \\\"active\\\": 0}], \\\"header\\\": \\\"Card Payments\\\"}, {\\\"payments\\\": [{\\\"label\\\": \\\"LazyPay\\\", \\\"name\\\": \\\"LazyPay\\\", \\\"active\\\": 1}, {\\\"label\\\": \\\"OLA Money\\\", \\\"name\\\": \\\"Ola\\\", \\\"active\\\": 0}, {\\\"label\\\": \\\"Tiny Wallet\\\", \\\"name\\\": \\\"Neuu\\\", \\\"active\\\": 0}], \\\"header\\\": \\\"Wallet Payments\\\"}]\",\"refill_order_id\":\"TM08202202_refill_260831120651\",\"order_id\":\"TM08202202_refill_260831120651\",\"door_size\":2,\"rstatus\":true,\"active_doors\":[\"1\",\"2\"],\"user\":\"machine\"},{\"action\":\"complete_refill\",\"trays\":{\"11\":{\"id\":\"11\",\"tray_id\":\"11\",\"door_id\":\"1\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/165143-5076.png\",\"name\":\"Town Bus Soya Stick ,35g\",\"mrp\":\"10\",\"weight\":\"33\",\"qty\":0,\"org_sku\":\"165143\",\"p_sku\":\"165143\",\"p_qty\":0,\"l_sku\":\"165143\",\"l_qty\":\"2\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"sku_json\":\"165143-0\",\"tray_weight\":\"99999\",\"modified_at\":\"2026-08-31 12:06:53\",\"created_at\":\"2026-08-31 12:06:53\"},\"12\":{\"tray_id\":\"12\",\"door_id\":\"1\",\"tray_weight\":\"99999\",\"sku_json\":\"4500605-10\",\"org_sku\":\"4500605\",\"active\":\"1\",\"created_at\":\"2026-08-31 12:04:43\",\"modified_at\":\"2026-08-31 12:04:43\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500605-6297.png\",\"name\":\"Ongibytes Garlic Muruku \",\"mrp\":\"20\",\"weight\":\"42\",\"qty\":\"10\",\"id\":\"12\",\"p_sku\":\"4500605\",\"p_qty\":\"10\",\"p_return_sku\":\"4500708\",\"p_return_qty\":\"0\",\"return_sku\":\"4500708\",\"return_qty\":\"0\",\"return_image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500708-7901.webp\",\"l_sku\":\"4500708\",\"l_qty\":\"0\"},\"13\":{\"tray_id\":\"13\",\"door_id\":\"1\",\"tray_weight\":\"99999\",\"sku_json\":\"4500722-10\",\"org_sku\":\"4500722\",\"active\":\"1\",\"created_at\":\"2026-08-31 12:04:43\",\"modified_at\":\"2026-08-31 12:04:43\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500722-2079.jpeg\",\"name\":\"MaxVita Rice Kodubale 30gm\",\"mrp\":\"10\",\"weight\":\"35\",\"qty\":\"10\",\"id\":\"13\",\"p_sku\":\"4500722\",\"p_qty\":\"10\",\"p_return_sku\":\"4500605\",\"p_return_qty\":\"0\",\"return_sku\":\"4500605\",\"return_qty\":\"0\",\"return_image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500605-6297.png\",\"l_sku\":\"4500605\",\"l_qty\":\"0\"},\"14\":{\"tray_id\":\"14\",\"door_id\":\"1\",\"tray_weight\":\"99999\",\"sku_json\":\"4500714-15\",\"org_sku\":\"4500714\",\"active\":\"1\",\"created_at\":\"2026-08-31 12:04:43\",\"modified_at\":\"2026-08-31 12:04:43\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500714-2989.png\",\"name\":\"McVities Triple Nut Cookies 58gm\",\"mrp\":\"10\",\"weight\":\"58\",\"qty\":\"15\",\"id\":\"14\",\"p_sku\":\"4500714\",\"p_qty\":\"15\",\"p_return_sku\":\"4500723\",\"p_return_qty\":\"0\",\"return_sku\":\"4500723\",\"return_qty\":\"0\",\"return_image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500723-3888.png\",\"l_sku\":\"4500723\",\"l_qty\":\"0\"},\"15\":{\"id\":\"15\",\"tray_id\":\"15\",\"door_id\":\"1\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500710-1463.png\",\"name\":\"MaxVita Premium crunch Rusk 51gm\",\"mrp\":\"10\",\"weight\":\"55\",\"qty\":0,\"org_sku\":\"4500710\",\"p_sku\":\"4500710\",\"p_qty\":0,\"l_sku\":\"4500710\",\"l_qty\":\"11\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"sku_json\":\"4500710-0\",\"tray_weight\":\"99999\",\"modified_at\":\"2026-08-31 12:06:53\",\"created_at\":\"2026-08-31 12:06:53\"},\"16\":{\"id\":\"16\",\"tray_id\":\"16\",\"door_id\":\"1\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500681-9948.webp\",\"name\":\"McVities Orange Cream Biscuts 61gm\",\"mrp\":\"10\",\"weight\":\"64\",\"qty\":0,\"org_sku\":\"4500681\",\"p_sku\":\"4500681\",\"p_qty\":0,\"l_sku\":\"4500681\",\"l_qty\":\"5\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"sku_json\":\"4500681-0\",\"tray_weight\":\"99999\",\"modified_at\":\"2026-08-31 12:06:53\",\"created_at\":\"2026-08-31 12:06:53\"},\"17\":{\"tray_id\":\"17\",\"door_id\":\"1\",\"tray_weight\":\"99999\",\"sku_json\":\"4500708-12\",\"org_sku\":\"4500708\",\"active\":\"1\",\"created_at\":\"2026-08-31 12:04:43\",\"modified_at\":\"2026-08-31 12:04:43\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500708-7901.webp\",\"name\":\"Modern Kitchen Masala Peanut 28gm\",\"mrp\":\"10\",\"weight\":\"31\",\"qty\":\"12\",\"id\":\"17\",\"p_sku\":\"4500708\",\"p_qty\":\"12\",\"p_return_sku\":\"4500722\",\"p_return_qty\":\"0\",\"return_sku\":\"4500722\",\"return_qty\":\"0\",\"return_image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500722-2079.jpeg\",\"l_sku\":\"4500722\",\"l_qty\":\"0\"},\"18\":{\"id\":\"18\",\"tray_id\":\"18\",\"door_id\":\"1\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500673-8519.webp\",\"name\":\"Modern kitchens Salted Peanuts 25gm\",\"mrp\":\"10\",\"weight\":\"28\",\"qty\":0,\"org_sku\":\"4500673\",\"p_sku\":\"4500673\",\"p_qty\":0,\"l_sku\":\"4500673\",\"l_qty\":\"2\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"sku_json\":\"4500673-0\",\"tray_weight\":\"99999\",\"modified_at\":\"2026-08-31 12:06:53\",\"created_at\":\"2026-08-31 12:06:53\"},\"19\":{\"id\":\"19\",\"tray_id\":\"19\",\"door_id\":\"1\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/186042-4971.jpg\",\"name\":\"Townbus Green Masala Peas 28g \",\"mrp\":\"10\",\"weight\":\"31\",\"qty\":0,\"org_sku\":\"186042\",\"p_sku\":\"186042\",\"p_qty\":0,\"l_sku\":\"186042\",\"l_qty\":\"11\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"sku_json\":\"186042-0\",\"tray_weight\":\"99999\",\"modified_at\":\"2026-08-31 12:06:53\",\"created_at\":\"2026-08-31 12:06:53\"},\"20\":{\"id\":\"20\",\"tray_id\":\"20\",\"door_id\":\"1\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500709-2651.webp\",\"name\":\"McVities Butter Jeera Cookies58gm\",\"mrp\":\"10\",\"weight\":\"61\",\"qty\":0,\"org_sku\":\"4500709\",\"p_sku\":\"4500709\",\"p_qty\":0,\"l_sku\":\"4500709\",\"l_qty\":\"10\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"sku_json\":\"4500709-0\",\"tray_weight\":\"99999\",\"modified_at\":\"2026-08-31 12:06:53\",\"created_at\":\"2026-08-31 12:06:53\"},\"21\":{\"id\":\"21\",\"tray_id\":\"21\",\"door_id\":\"1\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500665-172.jpg\",\"name\":\"Farmely Peri Peri Makhana 14gm\",\"mrp\":\"30\",\"weight\":\"22\",\"qty\":0,\"org_sku\":\"4500665\",\"p_sku\":\"4500665\",\"p_qty\":0,\"l_sku\":\"4500665\",\"l_qty\":\"7\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"sku_json\":\"4500665-0\",\"tray_weight\":\"99999\",\"modified_at\":\"2026-08-31 12:06:53\",\"created_at\":\"2026-08-31 12:06:53\"},\"22\":{\"id\":\"22\",\"tray_id\":\"22\",\"door_id\":\"1\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500648-25.webp\",\"name\":\"Modern kitchens Banana Chips 21gm\",\"mrp\":\"10\",\"weight\":\"25\",\"qty\":0,\"org_sku\":\"4500648\",\"p_sku\":\"4500648\",\"p_qty\":0,\"l_sku\":\"4500648\",\"l_qty\":\"8\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"sku_json\":\"4500648-0\",\"tray_weight\":\"99999\",\"modified_at\":\"2026-08-31 12:06:53\",\"created_at\":\"2026-08-31 12:06:53\"},\"23\":{\"tray_id\":\"23\",\"door_id\":\"1\",\"tray_weight\":\"99999\",\"sku_json\":\"4500723-12\",\"org_sku\":\"4500723\",\"active\":\"1\",\"created_at\":\"2026-08-31 12:04:43\",\"modified_at\":\"2026-08-31 12:04:43\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500723-3888.png\",\"name\":\"MaxVita Moong daal 25gm\",\"mrp\":\"10\",\"weight\":\"28\",\"qty\":\"12\",\"id\":\"23\",\"p_sku\":\"4500723\",\"p_qty\":\"12\",\"p_return_sku\":\"4500726\",\"p_return_qty\":\"1\",\"return_sku\":\"4500726\",\"return_qty\":\"1\",\"return_image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500726-818.jpeg\",\"l_sku\":\"4500726\",\"l_qty\":\"1\"},\"24\":{\"tray_id\":\"24\",\"door_id\":\"1\",\"tray_weight\":\"99999\",\"sku_json\":\"4500672-12\",\"org_sku\":\"4500672\",\"active\":\"1\",\"created_at\":\"2026-08-31 12:04:43\",\"modified_at\":\"2026-08-31 12:04:43\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500672-7226.webp\",\"name\":\"Modern kitchens Garlic Mixture 26gm\",\"mrp\":\"10\",\"weight\":\"29\",\"qty\":\"12\",\"id\":\"24\",\"p_sku\":\"4500672\",\"p_qty\":\"12\",\"p_return_sku\":\"4500712\",\"p_return_qty\":\"1\",\"return_sku\":\"4500712\",\"return_qty\":\"1\",\"return_image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500712-3453.png\",\"l_sku\":\"4500712\",\"l_qty\":\"1\"},\"25\":{\"id\":\"25\",\"tray_id\":\"25\",\"door_id\":\"1\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/186100-6904.jpg\",\"name\":\"Too Yumm Crea onion 33gm\",\"mrp\":\"20\",\"weight\":\"36\",\"qty\":0,\"org_sku\":\"186100\",\"p_sku\":\"186100\",\"p_qty\":0,\"l_sku\":\"186100\",\"l_qty\":\"5\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"sku_json\":\"186100-0\",\"tray_weight\":\"99999\",\"modified_at\":\"2026-08-31 12:06:53\",\"created_at\":\"2026-08-31 12:06:53\"},\"26\":{\"tray_id\":\"26\",\"door_id\":\"1\",\"tray_weight\":\"99999\",\"sku_json\":\"4500726-12\",\"org_sku\":\"4500726\",\"active\":\"1\",\"created_at\":\"2026-08-31 12:04:43\",\"modified_at\":\"2026-08-31 12:04:43\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500726-818.jpeg\",\"name\":\"MaxVita Crunchy Indian Mixture 30gm\",\"mrp\":\"10\",\"weight\":\"35\",\"qty\":\"12\",\"id\":\"26\",\"p_sku\":\"4500726\",\"p_qty\":\"12\",\"p_return_sku\":\"4500711\",\"p_return_qty\":\"0\",\"return_sku\":\"4500711\",\"return_qty\":\"0\",\"return_image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500711-9290.png\",\"l_sku\":\"4500711\",\"l_qty\":\"0\"},\"31\":{\"id\":\"31\",\"tray_id\":\"31\",\"door_id\":\"2\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500643-6170.webp\",\"name\":\"Cavins Belgian chocolate 170ml spl pack\",\"mrp\":\"40\",\"weight\":\"191\",\"qty\":0,\"org_sku\":\"4500643\",\"p_sku\":\"4500643\",\"p_qty\":0,\"l_sku\":\"4500643\",\"l_qty\":\"3\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"sku_json\":\"4500643-0\",\"tray_weight\":\"99999\",\"modified_at\":\"2026-08-31 12:06:53\",\"created_at\":\"2026-08-31 12:06:53\"},\"32\":{\"id\":\"32\",\"tray_id\":\"32\",\"door_id\":\"2\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/185994-2558.webp\",\"name\":\"Nescafe Choco Mocha Cold Coffee 180ml\",\"mrp\":\"45\",\"weight\":\"200\",\"qty\":0,\"org_sku\":\"185994\",\"p_sku\":\"185994\",\"p_qty\":0,\"l_sku\":\"185994\",\"l_qty\":\"2\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"sku_json\":\"185994-0\",\"tray_weight\":\"99999\",\"modified_at\":\"2026-08-31 12:06:53\",\"created_at\":\"2026-08-31 12:06:53\"},\"33\":{\"id\":\"33\",\"tray_id\":\"33\",\"door_id\":\"2\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500724-9570.jpg\",\"name\":\"Heritage Badam Milk 165ml\",\"mrp\":\"35\",\"weight\":\"202\",\"qty\":0,\"org_sku\":\"4500724\",\"p_sku\":\"4500724\",\"p_qty\":0,\"l_sku\":\"4500724\",\"l_qty\":\"1\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"sku_json\":\"4500724-0\",\"tray_weight\":\"99999\",\"modified_at\":\"2026-08-31 12:06:53\",\"created_at\":\"2026-08-31 12:06:53\"},\"34\":{\"id\":\"34\",\"tray_id\":\"34\",\"door_id\":\"2\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500499-5719.webp\",\"name\":\"Heritage A1 Spiced Butter Milk180ml\",\"mrp\":\"20\",\"weight\":\"192\",\"qty\":0,\"org_sku\":\"4500499\",\"p_sku\":\"4500499\",\"p_qty\":0,\"l_sku\":\"4500499\",\"l_qty\":\"11\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"sku_json\":\"4500499-0\",\"tray_weight\":\"99999\",\"modified_at\":\"2026-08-31 12:06:53\",\"created_at\":\"2026-08-31 12:06:53\"},\"35\":{\"id\":\"35\",\"tray_id\":\"35\",\"door_id\":\"2\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500701-4864.webp\",\"name\":\"Madmix Anardana Raisins 11gm\",\"mrp\":\"20\",\"weight\":\"13\",\"qty\":0,\"org_sku\":\"4500701\",\"p_sku\":\"4500701\",\"p_qty\":0,\"l_sku\":\"4500701\",\"l_qty\":\"8\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"sku_json\":\"4500701-0\",\"tray_weight\":\"99999\",\"modified_at\":\"2026-08-31 12:06:53\",\"created_at\":\"2026-08-31 12:06:53\"},\"36\":{\"id\":\"36\",\"tray_id\":\"36\",\"door_id\":\"2\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/186078-2883.png\",\"name\":\"Paper boat Aam Panna 150ml\",\"mrp\":\"25\",\"weight\":\"166\",\"qty\":0,\"org_sku\":\"186078\",\"p_sku\":\"186078\",\"p_qty\":0,\"l_sku\":\"186078\",\"l_qty\":\"5\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"sku_json\":\"186078-0\",\"tray_weight\":\"99999\",\"modified_at\":\"2026-08-31 12:06:53\",\"created_at\":\"2026-08-31 12:06:53\"},\"37\":{\"id\":\"37\",\"tray_id\":\"37\",\"door_id\":\"2\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500407-2060.jpg\",\"name\":\"Paper boat Alphonso Mango 160ml\",\"mrp\":\"25\",\"weight\":\"175\",\"qty\":0,\"org_sku\":\"4500407\",\"p_sku\":\"4500407\",\"p_qty\":0,\"l_sku\":\"4500407\",\"l_qty\":\"4\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"sku_json\":\"4500407-0\",\"tray_weight\":\"99999\",\"modified_at\":\"2026-08-31 12:06:53\",\"created_at\":\"2026-08-31 12:06:53\"},\"38\":{\"id\":\"38\",\"tray_id\":\"38\",\"door_id\":\"2\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500677-4669.png\",\"name\":\"Eat Bit Peanut  Chikki 32gm\",\"mrp\":\"10\",\"weight\":\"33\",\"qty\":0,\"org_sku\":\"4500677\",\"p_sku\":\"4500677\",\"p_qty\":0,\"l_sku\":\"4500677\",\"l_qty\":\"0\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"sku_json\":\"4500677-0\",\"tray_weight\":\"99999\",\"modified_at\":\"2026-08-31 12:06:53\",\"created_at\":\"2026-08-31 12:06:53\"},\"39\":{\"id\":\"39\",\"tray_id\":\"39\",\"door_id\":\"2\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500667-4339.webp\",\"name\":\"Farmely Classic date Bites 20gm\",\"mrp\":\"40\",\"weight\":\"23\",\"qty\":0,\"org_sku\":\"4500667\",\"p_sku\":\"4500667\",\"p_qty\":0,\"l_sku\":\"4500667\",\"l_qty\":\"6\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"sku_json\":\"4500667-0\",\"tray_weight\":\"99999\",\"modified_at\":\"2026-08-31 12:06:53\",\"created_at\":\"2026-08-31 12:06:53\"},\"40\":{\"id\":\"40\",\"tray_id\":\"40\",\"door_id\":\"2\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/166327-5644.jpg\",\"name\":\"Epigamia Chocolate Milkshake 200g\",\"mrp\":\"38\",\"weight\":\"210\",\"qty\":0,\"org_sku\":\"166327\",\"p_sku\":\"166327\",\"p_qty\":0,\"l_sku\":\"166327\",\"l_qty\":\"4\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"sku_json\":\"166327-0\",\"tray_weight\":\"99999\",\"modified_at\":\"2026-08-31 12:06:53\",\"created_at\":\"2026-08-31 12:06:53\"},\"41\":{\"id\":\"41\",\"tray_id\":\"41\",\"door_id\":\"2\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500678-5296.png\",\"name\":\"Eat Bit Sesame  Chikki 32gm\",\"mrp\":\"10\",\"weight\":\"33\",\"qty\":0,\"org_sku\":\"4500678\",\"p_sku\":\"4500678\",\"p_qty\":0,\"l_sku\":\"4500678\",\"l_qty\":\"39\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"sku_json\":\"4500678-0\",\"tray_weight\":\"99999\",\"modified_at\":\"2026-08-31 12:06:53\",\"created_at\":\"2026-08-31 12:06:53\"},\"42\":{\"id\":\"42\",\"tray_id\":\"42\",\"door_id\":\"2\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/186084-5395.png\",\"name\":\"KITKAT Nestle 4 Finger Chocolate 38g\",\"mrp\":\"30\",\"weight\":\"41\",\"qty\":0,\"org_sku\":\"186084\",\"p_sku\":\"186084\",\"p_qty\":0,\"l_sku\":\"186084\",\"l_qty\":\"0\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"sku_json\":\"186084-0\",\"tray_weight\":\"99999\",\"modified_at\":\"2026-08-31 12:06:53\",\"created_at\":\"2026-08-31 12:06:53\"},\"43\":{\"id\":\"43\",\"tray_id\":\"43\",\"door_id\":\"2\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/185993-3509.webp\",\"name\":\"NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g\",\"mrp\":\"20\",\"weight\":\"42\",\"qty\":0,\"org_sku\":\"185993\",\"p_sku\":\"185993\",\"p_qty\":0,\"l_sku\":\"185993\",\"l_qty\":\"0\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"sku_json\":\"185993-0\",\"tray_weight\":\"99999\",\"modified_at\":\"2026-08-31 12:06:53\",\"created_at\":\"2026-08-31 12:06:53\"},\"44\":{\"id\":\"44\",\"tray_id\":\"44\",\"door_id\":\"2\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/186096-4254.jpg\",\"name\":\"Maaza Tetra 135ml\",\"mrp\":\"10\",\"weight\":\"150\",\"qty\":0,\"org_sku\":\"186096\",\"p_sku\":\"186096\",\"p_qty\":0,\"l_sku\":\"186096\",\"l_qty\":\"34\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"sku_json\":\"186096-0\",\"tray_weight\":\"99999\",\"modified_at\":\"2026-08-31 12:06:53\",\"created_at\":\"2026-08-31 12:06:53\"},\"45\":{\"id\":\"45\",\"tray_id\":\"45\",\"door_id\":\"2\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/186043-5089.png\",\"name\":\"Bindu Fizz Jeera Masala 250 ML\",\"mrp\":\"20\",\"weight\":\"295\",\"qty\":0,\"org_sku\":\"186043\",\"p_sku\":\"186043\",\"p_qty\":0,\"l_sku\":\"186043\",\"l_qty\":\"9\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"sku_json\":\"186043-0\",\"tray_weight\":\"99999\",\"modified_at\":\"2026-08-31 12:06:53\",\"created_at\":\"2026-08-31 12:06:53\"},\"46\":{\"id\":\"46\",\"tray_id\":\"46\",\"door_id\":\"2\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/186059-5330.png\",\"name\":\"Pepsi ZeroSugar  300ml\",\"mrp\":\"40\",\"weight\":\"310\",\"qty\":0,\"org_sku\":\"186059\",\"p_sku\":\"186059\",\"p_qty\":0,\"l_sku\":\"186059\",\"l_qty\":\"7\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"sku_json\":\"186059-0\",\"tray_weight\":\"99999\",\"modified_at\":\"2026-08-31 12:06:53\",\"created_at\":\"2026-08-31 12:06:53\"}},\"command_for\":\"server\"},{\"success\":true,\"tray_mismatches\":[{\"sku_name\":\"Town Bus Soya Stick ,35g\",\"tray_id\":\"11\",\"quantity_in_db\":\"0\",\"sku_id\":\"165143\",\"quantity_on_tray\":\"14\"},{\"sku_name\":\"Ongibytes Garlic Muruku \",\"tray_id\":\"12\",\"quantity_in_db\":\"10\",\"sku_id\":\"4500605\",\"quantity_on_tray\":\"10\"},{\"sku_name\":\"MaxVita Rice Kodubale 30gm\",\"tray_id\":\"13\",\"quantity_in_db\":\"10\",\"sku_id\":\"4500722\",\"quantity_on_tray\":\"11\"},{\"sku_name\":\"McVities Triple Nut Cookies 58gm\",\"tray_id\":\"14\",\"quantity_in_db\":\"15\",\"sku_id\":\"4500714\",\"quantity_on_tray\":\"24\"},{\"sku_name\":\"MaxVita Premium crunch Rusk 51gm\",\"tray_id\":\"15\",\"quantity_in_db\":\"0\",\"sku_id\":\"4500710\",\"quantity_on_tray\":\"11\"},{\"sku_name\":\"McVities Orange Cream Biscuts 61gm\",\"tray_id\":\"16\",\"quantity_in_db\":\"0\",\"sku_id\":\"4500681\",\"quantity_on_tray\":\"17\"},{\"sku_name\":\"Modern Kitchen Masala Peanut 28gm\",\"tray_id\":\"17\",\"quantity_in_db\":\"12\",\"sku_id\":\"4500708\",\"quantity_on_tray\":\"16\"},{\"sku_name\":\"Modern kitchens Salted Peanuts 25gm\",\"tray_id\":\"18\",\"quantity_in_db\":\"0\",\"sku_id\":\"4500673\",\"quantity_on_tray\":\"11\"},{\"sku_name\":\"Townbus Green Masala Peas 28g \",\"tray_id\":\"19\",\"quantity_in_db\":\"0\",\"sku_id\":\"186042\",\"quantity_on_tray\":\"15\"},{\"sku_name\":\"McVities Butter Jeera Cookies58gm\",\"tray_id\":\"20\",\"quantity_in_db\":\"0\",\"sku_id\":\"4500709\",\"quantity_on_tray\":\"10\"},{\"sku_name\":\"Farmely Peri Peri Makhana 14gm\",\"tray_id\":\"21\",\"quantity_in_db\":\"0\",\"sku_id\":\"4500665\",\"quantity_on_tray\":\"7\"},{\"sku_name\":\"Modern kitchens Banana Chips 21gm\",\"tray_id\":\"22\",\"quantity_in_db\":\"0\",\"sku_id\":\"4500648\",\"quantity_on_tray\":\"8\"},{\"sku_name\":\"MaxVita Moong daal 25gm\",\"tray_id\":\"23\",\"quantity_in_db\":\"12\",\"sku_id\":\"4500723\",\"quantity_on_tray\":\"17\"},{\"sku_name\":\"Modern kitchens Garlic Mixture 26gm\",\"tray_id\":\"24\",\"quantity_in_db\":\"12\",\"sku_id\":\"4500672\",\"quantity_on_tray\":\"23\"},{\"sku_name\":\"Too Yumm Crea onion 33gm\",\"tray_id\":\"25\",\"quantity_in_db\":\"0\",\"sku_id\":\"186100\",\"quantity_on_tray\":\"5\"},{\"sku_name\":\"MaxVita Crunchy Indian Mixture 30gm\",\"tray_id\":\"26\",\"quantity_in_db\":\"12\",\"sku_id\":\"4500726\",\"quantity_on_tray\":\"20\"},{\"sku_name\":\"Cavins Belgian chocolate 170ml spl pack\",\"tray_id\":\"31\",\"quantity_in_db\":\"0\",\"sku_id\":\"4500643\",\"quantity_on_tray\":\"3\"},{\"sku_name\":\"Nescafe Choco Mocha Cold Coffee 180ml\",\"tray_id\":\"32\",\"quantity_in_db\":\"0\",\"sku_id\":\"185994\",\"quantity_on_tray\":\"2\"},{\"sku_name\":\"Heritage Badam Milk 165ml\",\"tray_id\":\"33\",\"quantity_in_db\":\"0\",\"sku_id\":\"4500724\",\"quantity_on_tray\":\"1\"},{\"sku_name\":\"Heritage A1 Spiced Butter Milk180ml\",\"tray_id\":\"34\",\"quantity_in_db\":\"0\",\"sku_id\":\"4500499\",\"quantity_on_tray\":\"11\"},{\"sku_name\":\"Madmix Anardana Raisins 11gm\",\"tray_id\":\"35\",\"quantity_in_db\":\"0\",\"sku_id\":\"4500701\",\"quantity_on_tray\":\"8\"},{\"sku_name\":\"Paper boat Aam Panna 150ml\",\"tray_id\":\"36\",\"quantity_in_db\":\"0\",\"sku_id\":\"186078\",\"quantity_on_tray\":\"5\"},{\"sku_name\":\"Paper boat Alphonso Mango 160ml\",\"tray_id\":\"37\",\"quantity_in_db\":\"0\",\"sku_id\":\"4500407\",\"quantity_on_tray\":\"4\"},{\"sku_name\":\"Eat Bit Peanut  Chikki 32gm\",\"tray_id\":\"38\",\"quantity_in_db\":\"0\",\"sku_id\":\"4500677\",\"quantity_on_tray\":\"6\"},{\"sku_name\":\"Farmely Classic date Bites 20gm\",\"tray_id\":\"39\",\"quantity_in_db\":\"0\",\"sku_id\":\"4500667\",\"quantity_on_tray\":\"6\"},{\"sku_name\":\"Epigamia Chocolate Milkshake 200g\",\"tray_id\":\"40\",\"quantity_in_db\":\"0\",\"sku_id\":\"166327\",\"quantity_on_tray\":\"4\"},{\"sku_name\":\"Eat Bit Sesame  Chikki 32gm\",\"tray_id\":\"41\",\"quantity_in_db\":\"0\",\"sku_id\":\"4500678\",\"quantity_on_tray\":\"39\"},{\"sku_name\":\"KITKAT Nestle 4 Finger Chocolate 38g\",\"tray_id\":\"42\",\"quantity_in_db\":\"0\",\"sku_id\":\"186084\",\"quantity_on_tray\":\"4\"},{\"sku_name\":\"NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g\",\"tray_id\":\"43\",\"quantity_in_db\":\"0\",\"sku_id\":\"185993\",\"quantity_on_tray\":\"25\"},{\"sku_name\":\"Maaza Tetra 135ml\",\"tray_id\":\"44\",\"quantity_in_db\":\"0\",\"sku_id\":\"186096\",\"quantity_on_tray\":\"34\"},{\"sku_name\":\"Bindu Fizz Jeera Masala 250 ML\",\"tray_id\":\"45\",\"quantity_in_db\":\"0\",\"sku_id\":\"186043\",\"quantity_on_tray\":\"9\"},{\"sku_name\":\"Pepsi ZeroSugar  300ml\",\"tray_id\":\"46\",\"quantity_in_db\":\"0\",\"sku_id\":\"186059\",\"quantity_on_tray\":\"7\"}],\"message\":\"Tray mismatches found.\",\"user\":\"machine\"},{\"action\":\"verify_refill\",\"quantity_on_tray_11\":\"14\",\"confirmed_11\":\"on\",\"quantity_on_tray_12\":\"10\",\"confirmed_12\":\"on\",\"quantity_on_tray_13\":\"11\",\"confirmed_13\":\"on\",\"quantity_on_tray_14\":\"24\",\"confirmed_14\":\"on\",\"quantity_on_tray_15\":\"11\",\"confirmed_15\":\"on\",\"quantity_on_tray_16\":\"17\",\"confirmed_16\":\"on\",\"quantity_on_tray_17\":\"16\",\"confirmed_17\":\"on\",\"quantity_on_tray_18\":\"11\",\"confirmed_18\":\"on\",\"quantity_on_tray_19\":\"15\",\"confirmed_19\":\"on\",\"quantity_on_tray_20\":\"10\",\"confirmed_20\":\"on\",\"quantity_on_tray_21\":\"7\",\"confirmed_21\":\"on\",\"quantity_on_tray_22\":\"8\",\"confirmed_22\":\"on\",\"quantity_on_tray_23\":\"17\",\"confirmed_23\":\"on\",\"quantity_on_tray_24\":\"23\",\"confirmed_24\":\"on\",\"quantity_on_tray_25\":\"5\",\"confirmed_25\":\"on\",\"quantity_on_tray_26\":\"20\",\"confirmed_26\":\"on\",\"quantity_on_tray_31\":\"3\",\"confirmed_31\":\"on\",\"quantity_on_tray_32\":\"2\",\"confirmed_32\":\"on\",\"quantity_on_tray_33\":\"1\",\"confirmed_33\":\"on\",\"quantity_on_tray_34\":\"11\",\"confirmed_34\":\"on\",\"quantity_on_tray_35\":\"8\",\"confirmed_35\":\"on\",\"quantity_on_tray_36\":\"5\",\"confirmed_36\":\"on\",\"quantity_on_tray_37\":\"4\",\"confirmed_37\":\"on\",\"quantity_on_tray_38\":\"6\",\"confirmed_38\":\"on\",\"quantity_on_tray_39\":\"6\",\"confirmed_39\":\"on\",\"quantity_on_tray_40\":\"4\",\"confirmed_40\":\"on\",\"quantity_on_tray_41\":\"39\",\"confirmed_41\":\"on\",\"quantity_on_tray_42\":\"4\",\"confirmed_42\":\"on\",\"quantity_on_tray_43\":\"25\",\"confirmed_43\":\"on\",\"quantity_on_tray_44\":\"34\",\"confirmed_44\":\"on\",\"quantity_on_tray_45\":\"9\",\"confirmed_45\":\"on\",\"quantity_on_tray_46\":\"7\",\"confirmed_46\":\"on\",\"command_for\":\"server\"},{\"success\":true,\"user\":\"machine\"}]","type_of_order":"refill","command_request_data":"{\"request_data\":{\"content\":[{\"sku_name\":\"Town Bus Soya Stick ,35g\",\"quantity_in_db\":\"0\",\"check_enabled\":true,\"tray_id\":\"11\",\"sku_id\":\"165143\",\"quantity_on_tray\":\"14\"},{\"sku_name\":\"Ongibytes Garlic Muruku \",\"quantity_in_db\":\"10\",\"check_enabled\":true,\"tray_id\":\"12\",\"sku_id\":\"4500605\",\"quantity_on_tray\":\"10\"},{\"sku_name\":\"MaxVita Rice Kodubale 30gm\",\"quantity_in_db\":\"10\",\"check_enabled\":true,\"tray_id\":\"13\",\"sku_id\":\"4500722\",\"quantity_on_tray\":\"11\"},{\"sku_name\":\"McVities Triple Nut Cookies 58gm\",\"quantity_in_db\":\"15\",\"check_enabled\":true,\"tray_id\":\"14\",\"sku_id\":\"4500714\",\"quantity_on_tray\":\"24\"},{\"sku_name\":\"MaxVita Premium crunch Rusk 51gm\",\"quantity_in_db\":\"0\",\"check_enabled\":true,\"tray_id\":\"15\",\"sku_id\":\"4500710\",\"quantity_on_tray\":\"11\"},{\"sku_name\":\"McVities Orange Cream Biscuts 61gm\",\"quantity_in_db\":\"0\",\"check_enabled\":true,\"tray_id\":\"16\",\"sku_id\":\"4500681\",\"quantity_on_tray\":\"17\"},{\"sku_name\":\"Modern Kitchen Masala Peanut 28gm\",\"quantity_in_db\":\"12\",\"check_enabled\":true,\"tray_id\":\"17\",\"sku_id\":\"4500708\",\"quantity_on_tray\":\"16\"},{\"sku_name\":\"Modern kitchens Salted Peanuts 25gm\",\"quantity_in_db\":\"0\",\"check_enabled\":true,\"tray_id\":\"18\",\"sku_id\":\"4500673\",\"quantity_on_tray\":\"11\"},{\"sku_name\":\"Townbus Green Masala Peas 28g \",\"quantity_in_db\":\"0\",\"check_enabled\":true,\"tray_id\":\"19\",\"sku_id\":\"186042\",\"quantity_on_tray\":\"15\"},{\"sku_name\":\"McVities Butter Jeera Cookies58gm\",\"quantity_in_db\":\"0\",\"check_enabled\":true,\"tray_id\":\"20\",\"sku_id\":\"4500709\",\"quantity_on_tray\":\"10\"},{\"sku_name\":\"Farmely Peri Peri Makhana 14gm\",\"quantity_in_db\":\"0\",\"check_enabled\":true,\"tray_id\":\"21\",\"sku_id\":\"4500665\",\"quantity_on_tray\":\"7\"},{\"sku_name\":\"Modern kitchens Banana Chips 21gm\",\"quantity_in_db\":\"0\",\"check_enabled\":true,\"tray_id\":\"22\",\"sku_id\":\"4500648\",\"quantity_on_tray\":\"8\"},{\"sku_name\":\"MaxVita Moong daal 25gm\",\"quantity_in_db\":\"12\",\"check_enabled\":true,\"tray_id\":\"23\",\"sku_id\":\"4500723\",\"quantity_on_tray\":\"17\"},{\"sku_name\":\"Modern kitchens Garlic Mixture 26gm\",\"quantity_in_db\":\"12\",\"check_enabled\":true,\"tray_id\":\"24\",\"sku_id\":\"4500672\",\"quantity_on_tray\":\"23\"},{\"sku_name\":\"Too Yumm Crea onion 33gm\",\"quantity_in_db\":\"0\",\"check_enabled\":true,\"tray_id\":\"25\",\"sku_id\":\"186100\",\"quantity_on_tray\":\"5\"},{\"sku_name\":\"MaxVita Crunchy Indian Mixture 30gm\",\"quantity_in_db\":\"12\",\"check_enabled\":true,\"tray_id\":\"26\",\"sku_id\":\"4500726\",\"quantity_on_tray\":\"20\"},{\"sku_name\":\"Cavins Belgian chocolate 170ml spl pack\",\"quantity_in_db\":\"0\",\"check_enabled\":true,\"tray_id\":\"31\",\"sku_id\":\"4500643\",\"quantity_on_tray\":\"3\"},{\"sku_name\":\"Nescafe Choco Mocha Cold Coffee 180ml\",\"quantity_in_db\":\"0\",\"check_enabled\":true,\"tray_id\":\"32\",\"sku_id\":\"185994\",\"quantity_on_tray\":\"2\"},{\"sku_name\":\"Heritage Badam Milk 165ml\",\"quantity_in_db\":\"0\",\"check_enabled\":true,\"tray_id\":\"33\",\"sku_id\":\"4500724\",\"quantity_on_tray\":\"1\"},{\"sku_name\":\"Heritage A1 Spiced Butter Milk180ml\",\"quantity_in_db\":\"0\",\"check_enabled\":true,\"tray_id\":\"34\",\"sku_id\":\"4500499\",\"quantity_on_tray\":\"11\"},{\"sku_name\":\"Madmix Anardana Raisins 11gm\",\"quantity_in_db\":\"0\",\"check_enabled\":true,\"tray_id\":\"35\",\"sku_id\":\"4500701\",\"quantity_on_tray\":\"8\"},{\"sku_name\":\"Paper boat Aam Panna 150ml\",\"quantity_in_db\":\"0\",\"check_enabled\":true,\"tray_id\":\"36\",\"sku_id\":\"186078\",\"quantity_on_tray\":\"5\"},{\"sku_name\":\"Paper boat Alphonso Mango 160ml\",\"quantity_in_db\":\"0\",\"check_enabled\":true,\"tray_id\":\"37\",\"sku_id\":\"4500407\",\"quantity_on_tray\":\"4\"},{\"sku_name\":\"Eat Bit Peanut  Chikki 32gm\",\"quantity_in_db\":\"0\",\"check_enabled\":true,\"tray_id\":\"38\",\"sku_id\":\"4500677\",\"quantity_on_tray\":\"6\"},{\"sku_name\":\"Farmely Classic date Bites 20gm\",\"quantity_in_db\":\"0\",\"check_enabled\":true,\"tray_id\":\"39\",\"sku_id\":\"4500667\",\"quantity_on_tray\":\"6\"},{\"sku_name\":\"Epigamia Chocolate Milkshake 200g\",\"quantity_in_db\":\"0\",\"check_enabled\":true,\"tray_id\":\"40\",\"sku_id\":\"166327\",\"quantity_on_tray\":\"4\"},{\"sku_name\":\"Eat Bit Sesame  Chikki 32gm\",\"quantity_in_db\":\"0\",\"check_enabled\":true,\"tray_id\":\"41\",\"sku_id\":\"4500678\",\"quantity_on_tray\":\"39\"},{\"sku_name\":\"KITKAT Nestle 4 Finger Chocolate 38g\",\"quantity_in_db\":\"0\",\"check_enabled\":true,\"tray_id\":\"42\",\"sku_id\":\"186084\",\"quantity_on_tray\":\"4\"},{\"sku_name\":\"NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g\",\"quantity_in_db\":\"0\",\"check_enabled\":true,\"tray_id\":\"43\",\"sku_id\":\"185993\",\"quantity_on_tray\":\"25\"},{\"sku_name\":\"Maaza Tetra 135ml\",\"quantity_in_db\":\"0\",\"check_enabled\":true,\"tray_id\":\"44\",\"sku_id\":\"186096\",\"quantity_on_tray\":\"34\"},{\"sku_name\":\"Bindu Fizz Jeera Masala 250 ML\",\"quantity_in_db\":\"0\",\"check_enabled\":true,\"tray_id\":\"45\",\"sku_id\":\"186043\",\"quantity_on_tray\":\"9\"},{\"sku_name\":\"Pepsi ZeroSugar  300ml\",\"quantity_in_db\":\"0\",\"check_enabled\":true,\"tray_id\":\"46\",\"sku_id\":\"186059\",\"quantity_on_tray\":\"7\"}],\"refill_id\":\"9690357\",\"txnType\":\"refill\",\"door_id\":[1],\"order_id\":\"TM08202202_refill_260831120651\",\"door_open_init\":true},\"action_name\":\"completed\",\"refill_order_id\":\"TM08202202_refill_260831120651\",\"action\":\"completed\",\"sub-action\":\"completed\",\"user\":\"machine\",\"response_data\":{\"success\":true},\"active_doors\":[\"1\",\"2\"]}","command_for":"server","created_at":"2026-08-31 12:06:18","modified_at":"2026-08-31 12:13:40"}
[2026-08-31 12:13:40,210.210 INFO    ] {'vm_id': '1660749537502', 'created_at': '2026-08-31 12:06:18', 'user_id': '9036356553', 'server_status': 'completed', 'last_command_response': '{"success":true,"user":"machine"}', 'modified_at': '2026-08-31 12:13:40', 'type_of_order': 'refill', 'command_todo': 'interactive-refill', 'server_response': '', 'command_for': 'server', 'order_id': '9690357', 'status': 'active', 'command_request_data': '{"request_data":{"content":[{"sku_name":"Town Bus Soya Stick ,35g","quantity_in_db":"0","check_enabled":true,"tray_id":"11","sku_id":"165143","quantity_on_tray":"14"},{"sku_name":"Ongibytes Garlic Muruku ","quantity_in_db":"10","check_enabled":true,"tray_id":"12","sku_id":"4500605","quantity_on_tray":"10"},{"sku_name":"MaxVita Rice Kodubale 30gm","quantity_in_db":"10","check_enabled":true,"tray_id":"13","sku_id":"4500722","quantity_on_tray":"11"},{"sku_name":"McVities Triple Nut Cookies 58gm","quantity_in_db":"15","check_enabled":true,"tray_id":"14","sku_id":"4500714","quantity_on_tray":"24"},{"sku_name":"MaxVita Premium crunch Rusk 51gm","quantity_in_db":"0","check_enabled":true,"tray_id":"15","sku_id":"4500710","quantity_on_tray":"11"},{"sku_name":"McVities Orange Cream Biscuts 61gm","quantity_in_db":"0","check_enabled":true,"tray_id":"16","sku_id":"4500681","quantity_on_tray":"17"},{"sku_name":"Modern Kitchen Masala Peanut 28gm","quantity_in_db":"12","check_enabled":true,"tray_id":"17","sku_id":"4500708","quantity_on_tray":"16"},{"sku_name":"Modern kitchens Salted Peanuts 25gm","quantity_in_db":"0","check_enabled":true,"tray_id":"18","sku_id":"4500673","quantity_on_tray":"11"},{"sku_name":"Townbus Green Masala Peas 28g ","quantity_in_db":"0","check_enabled":true,"tray_id":"19","sku_id":"186042","quantity_on_tray":"15"},{"sku_name":"McVities Butter Jeera Cookies58gm","quantity_in_db":"0","check_enabled":true,"tray_id":"20","sku_id":"4500709","quantity_on_tray":"10"},{"sku_name":"Farmely Peri Peri Makhana 14gm","quantity_in_db":"0","check_enabled":true,"tray_id":"21","sku_id":"4500665","quantity_on_tray":"7"},{"sku_name":"Modern kitchens Banana Chips 21gm","quantity_in_db":"0","check_enabled":true,"tray_id":"22","sku_id":"4500648","quantity_on_tray":"8"},{"sku_name":"MaxVita Moong daal 25gm","quantity_in_db":"12","check_enabled":true,"tray_id":"23","sku_id":"4500723","quantity_on_tray":"17"},{"sku_name":"Modern kitchens Garlic Mixture 26gm","quantity_in_db":"12","check_enabled":true,"tray_id":"24","sku_id":"4500672","quantity_on_tray":"23"},{"sku_name":"Too Yumm Crea onion 33gm","quantity_in_db":"0","check_enabled":true,"tray_id":"25","sku_id":"186100","quantity_on_tray":"5"},{"sku_name":"MaxVita Crunchy Indian Mixture 30gm","quantity_in_db":"12","check_enabled":true,"tray_id":"26","sku_id":"4500726","quantity_on_tray":"20"},{"sku_name":"Cavins Belgian chocolate 170ml spl pack","quantity_in_db":"0","check_enabled":true,"tray_id":"31","sku_id":"4500643","quantity_on_tray":"3"},{"sku_name":"Nescafe Choco Mocha Cold Coffee 180ml","quantity_in_db":"0","check_enabled":true,"tray_id":"32","sku_id":"185994","quantity_on_tray":"2"},{"sku_name":"Heritage Badam Milk 165ml","quantity_in_db":"0","check_enabled":true,"tray_id":"33","sku_id":"4500724","quantity_on_tray":"1"},{"sku_name":"Heritage A1 Spiced Butter Milk180ml","quantity_in_db":"0","check_enabled":true,"tray_id":"34","sku_id":"4500499","quantity_on_tray":"11"},{"sku_name":"Madmix Anardana Raisins 11gm","quantity_in_db":"0","check_enabled":true,"tray_id":"35","sku_id":"4500701","quantity_on_tray":"8"},{"sku_name":"Paper boat Aam Panna 150ml","quantity_in_db":"0","check_enabled":true,"tray_id":"36","sku_id":"186078","quantity_on_tray":"5"},{"sku_name":"Paper boat Alphonso Mango 160ml","quantity_in_db":"0","check_enabled":true,"tray_id":"37","sku_id":"4500407","quantity_on_tray":"4"},{"sku_name":"Eat Bit Peanut  Chikki 32gm","quantity_in_db":"0","check_enabled":true,"tray_id":"38","sku_id":"4500677","quantity_on_tray":"6"},{"sku_name":"Farmely Classic date Bites 20gm","quantity_in_db":"0","check_enabled":true,"tray_id":"39","sku_id":"4500667","quantity_on_tray":"6"},{"sku_name":"Epigamia Chocolate Milkshake 200g","quantity_in_db":"0","check_enabled":true,"tray_id":"40","sku_id":"166327","quantity_on_tray":"4"},{"sku_name":"Eat Bit Sesame  Chikki 32gm","quantity_in_db":"0","check_enabled":true,"tray_id":"41","sku_id":"4500678","quantity_on_tray":"39"},{"sku_name":"KITKAT Nestle 4 Finger Chocolate 38g","quantity_in_db":"0","check_enabled":true,"tray_id":"42","sku_id":"186084","quantity_on_tray":"4"},{"sku_name":"NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g","quantity_in_db":"0","check_enabled":true,"tray_id":"43","sku_id":"185993","quantity_on_tray":"25"},{"sku_name":"Maaza Tetra 135ml","quantity_in_db":"0","check_enabled":true,"tray_id":"44","sku_id":"186096","quantity_on_tray":"34"},{"sku_name":"Bindu Fizz Jeera Masala 250 ML","quantity_in_db":"0","check_enabled":true,"tray_id":"45","sku_id":"186043","quantity_on_tray":"9"},{"sku_name":"Pepsi ZeroSugar  300ml","quantity_in_db":"0","check_enabled":true,"tray_id":"46","sku_id":"186059","quantity_on_tray":"7"}],"refill_id":"9690357","txnType":"refill","door_id":[1],"order_id":"TM08202202_refill_260831120651","door_open_init":true},"action_name":"completed","refill_order_id":"TM08202202_refill_260831120651","action":"completed","sub-action":"completed","user":"machine","response_data":{"success":true},"active_doors":["1","2"]}', 'all_command_response': '[{"action":"get_user_mobile_no","mobile_no":"9036356553","command_for":"server"},{"allowed":"1","refill_id":"9690357","success":"true","user_id":9036356553,"otp":"3715","user":"machine"},{"action":"get_mobile_otp","mobile_no":"9036356553","otp":"3715","command_for":"server"},{"refill_id":"9690357","status":"True","user_id":9036356553,"active_payment_gateways":"[{\\"payments\\": [{\\"label\\": \\"PayTM\\", \\"name\\": \\"PayTM\\", \\"active\\": 1}, {\\"label\\": \\"PhonePe\\", \\"name\\": \\"PhonePe\\", \\"active\\": 1}, {\\"label\\": \\"Google Pay\\", \\"name\\": \\"GooglePay\\", \\"active\\": 1}, {\\"label\\": \\"BHIM UPI\\", \\"name\\": \\"BHIM\\", \\"active\\": 1}], \\"header\\": \\"QR Payments\\"}, {\\"payments\\": [{\\"label\\": \\"Sodexo Card\\", \\"name\\": \\"Sodexo\\", \\"active\\": 1}, {\\"label\\": \\"Credit\\/Debit Card\\", \\"name\\": \\"Card\\", \\"active\\": 1}, {\\"label\\": \\"QwikCilver\\", \\"name\\": \\"Qwikcilver\\", \\"active\\": 0}], \\"header\\": \\"Card Payments\\"}, {\\"payments\\": [{\\"label\\": \\"LazyPay\\", \\"name\\": \\"LazyPay\\", \\"active\\": 1}, {\\"label\\": \\"OLA Money\\", \\"name\\": \\"Ola\\", \\"active\\": 0}, {\\"label\\": \\"Tiny Wallet\\", \\"name\\": \\"Neuu\\", \\"active\\": 0}], \\"header\\": \\"Wallet Payments\\"}]","refill_order_id":"TM08202202_refill_260831120651","order_id":"TM08202202_refill_260831120651","door_size":2,"rstatus":true,"active_doors":["1","2"],"user":"machine"},{"action":"complete_refill","trays":{"11":{"id":"11","tray_id":"11","door_id":"1","image":"https:\\/\\/images.tinymart.in\\/product\\/165143-5076.png","name":"Town Bus Soya Stick ,35g","mrp":"10","weight":"33","qty":0,"org_sku":"165143","p_sku":"165143","p_qty":0,"l_sku":"165143","l_qty":"2","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"165143-0","tray_weight":"99999","modified_at":"2026-08-31 12:06:53","created_at":"2026-08-31 12:06:53"},"12":{"tray_id":"12","door_id":"1","tray_weight":"99999","sku_json":"4500605-10","org_sku":"4500605","active":"1","created_at":"2026-08-31 12:04:43","modified_at":"2026-08-31 12:04:43","image":"https:\\/\\/images.tinymart.in\\/product\\/4500605-6297.png","name":"Ongibytes Garlic Muruku ","mrp":"20","weight":"42","qty":"10","id":"12","p_sku":"4500605","p_qty":"10","p_return_sku":"4500708","p_return_qty":"0","return_sku":"4500708","return_qty":"0","return_image":"https:\\/\\/images.tinymart.in\\/product\\/4500708-7901.webp","l_sku":"4500708","l_qty":"0"},"13":{"tray_id":"13","door_id":"1","tray_weight":"99999","sku_json":"4500722-10","org_sku":"4500722","active":"1","created_at":"2026-08-31 12:04:43","modified_at":"2026-08-31 12:04:43","image":"https:\\/\\/images.tinymart.in\\/product\\/4500722-2079.jpeg","name":"MaxVita Rice Kodubale 30gm","mrp":"10","weight":"35","qty":"10","id":"13","p_sku":"4500722","p_qty":"10","p_return_sku":"4500605","p_return_qty":"0","return_sku":"4500605","return_qty":"0","return_image":"https:\\/\\/images.tinymart.in\\/product\\/4500605-6297.png","l_sku":"4500605","l_qty":"0"},"14":{"tray_id":"14","door_id":"1","tray_weight":"99999","sku_json":"4500714-15","org_sku":"4500714","active":"1","created_at":"2026-08-31 12:04:43","modified_at":"2026-08-31 12:04:43","image":"https:\\/\\/images.tinymart.in\\/product\\/4500714-2989.png","name":"McVities Triple Nut Cookies 58gm","mrp":"10","weight":"58","qty":"15","id":"14","p_sku":"4500714","p_qty":"15","p_return_sku":"4500723","p_return_qty":"0","return_sku":"4500723","return_qty":"0","return_image":"https:\\/\\/images.tinymart.in\\/product\\/4500723-3888.png","l_sku":"4500723","l_qty":"0"},"15":{"id":"15","tray_id":"15","door_id":"1","image":"https:\\/\\/images.tinymart.in\\/product\\/4500710-1463.png","name":"MaxVita Premium crunch Rusk 51gm","mrp":"10","weight":"55","qty":0,"org_sku":"4500710","p_sku":"4500710","p_qty":0,"l_sku":"4500710","l_qty":"11","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"4500710-0","tray_weight":"99999","modified_at":"2026-08-31 12:06:53","created_at":"2026-08-31 12:06:53"},"16":{"id":"16","tray_id":"16","door_id":"1","image":"https:\\/\\/images.tinymart.in\\/product\\/4500681-9948.webp","name":"McVities Orange Cream Biscuts 61gm","mrp":"10","weight":"64","qty":0,"org_sku":"4500681","p_sku":"4500681","p_qty":0,"l_sku":"4500681","l_qty":"5","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"4500681-0","tray_weight":"99999","modified_at":"2026-08-31 12:06:53","created_at":"2026-08-31 12:06:53"},"17":{"tray_id":"17","door_id":"1","tray_weight":"99999","sku_json":"4500708-12","org_sku":"4500708","active":"1","created_at":"2026-08-31 12:04:43","modified_at":"2026-08-31 12:04:43","image":"https:\\/\\/images.tinymart.in\\/product\\/4500708-7901.webp","name":"Modern Kitchen Masala Peanut 28gm","mrp":"10","weight":"31","qty":"12","id":"17","p_sku":"4500708","p_qty":"12","p_return_sku":"4500722","p_return_qty":"0","return_sku":"4500722","return_qty":"0","return_image":"https:\\/\\/images.tinymart.in\\/product\\/4500722-2079.jpeg","l_sku":"4500722","l_qty":"0"},"18":{"id":"18","tray_id":"18","door_id":"1","image":"https:\\/\\/images.tinymart.in\\/product\\/4500673-8519.webp","name":"Modern kitchens Salted Peanuts 25gm","mrp":"10","weight":"28","qty":0,"org_sku":"4500673","p_sku":"4500673","p_qty":0,"l_sku":"4500673","l_qty":"2","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"4500673-0","tray_weight":"99999","modified_at":"2026-08-31 12:06:53","created_at":"2026-08-31 12:06:53"},"19":{"id":"19","tray_id":"19","door_id":"1","image":"https:\\/\\/images.tinymart.in\\/product\\/186042-4971.jpg","name":"Townbus Green Masala Peas 28g ","mrp":"10","weight":"31","qty":0,"org_sku":"186042","p_sku":"186042","p_qty":0,"l_sku":"186042","l_qty":"11","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"186042-0","tray_weight":"99999","modified_at":"2026-08-31 12:06:53","created_at":"2026-08-31 12:06:53"},"20":{"id":"20","tray_id":"20","door_id":"1","image":"https:\\/\\/images.tinymart.in\\/product\\/4500709-2651.webp","name":"McVities Butter Jeera Cookies58gm","mrp":"10","weight":"61","qty":0,"org_sku":"4500709","p_sku":"4500709","p_qty":0,"l_sku":"4500709","l_qty":"10","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"4500709-0","tray_weight":"99999","modified_at":"2026-08-31 12:06:53","created_at":"2026-08-31 12:06:53"},"21":{"id":"21","tray_id":"21","door_id":"1","image":"https:\\/\\/images.tinymart.in\\/product\\/4500665-172.jpg","name":"Farmely Peri Peri Makhana 14gm","mrp":"30","weight":"22","qty":0,"org_sku":"4500665","p_sku":"4500665","p_qty":0,"l_sku":"4500665","l_qty":"7","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"4500665-0","tray_weight":"99999","modified_at":"2026-08-31 12:06:53","created_at":"2026-08-31 12:06:53"},"22":{"id":"22","tray_id":"22","door_id":"1","image":"https:\\/\\/images.tinymart.in\\/product\\/4500648-25.webp","name":"Modern kitchens Banana Chips 21gm","mrp":"10","weight":"25","qty":0,"org_sku":"4500648","p_sku":"4500648","p_qty":0,"l_sku":"4500648","l_qty":"8","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"4500648-0","tray_weight":"99999","modified_at":"2026-08-31 12:06:53","created_at":"2026-08-31 12:06:53"},"23":{"tray_id":"23","door_id":"1","tray_weight":"99999","sku_json":"4500723-12","org_sku":"4500723","active":"1","created_at":"2026-08-31 12:04:43","modified_at":"2026-08-31 12:04:43","image":"https:\\/\\/images.tinymart.in\\/product\\/4500723-3888.png","name":"MaxVita Moong daal 25gm","mrp":"10","weight":"28","qty":"12","id":"23","p_sku":"4500723","p_qty":"12","p_return_sku":"4500726","p_return_qty":"1","return_sku":"4500726","return_qty":"1","return_image":"https:\\/\\/images.tinymart.in\\/product\\/4500726-818.jpeg","l_sku":"4500726","l_qty":"1"},"24":{"tray_id":"24","door_id":"1","tray_weight":"99999","sku_json":"4500672-12","org_sku":"4500672","active":"1","created_at":"2026-08-31 12:04:43","modified_at":"2026-08-31 12:04:43","image":"https:\\/\\/images.tinymart.in\\/product\\/4500672-7226.webp","name":"Modern kitchens Garlic Mixture 26gm","mrp":"10","weight":"29","qty":"12","id":"24","p_sku":"4500672","p_qty":"12","p_return_sku":"4500712","p_return_qty":"1","return_sku":"4500712","return_qty":"1","return_image":"https:\\/\\/images.tinymart.in\\/product\\/4500712-3453.png","l_sku":"4500712","l_qty":"1"},"25":{"id":"25","tray_id":"25","door_id":"1","image":"https:\\/\\/images.tinymart.in\\/product\\/186100-6904.jpg","name":"Too Yumm Crea onion 33gm","mrp":"20","weight":"36","qty":0,"org_sku":"186100","p_sku":"186100","p_qty":0,"l_sku":"186100","l_qty":"5","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"186100-0","tray_weight":"99999","modified_at":"2026-08-31 12:06:53","created_at":"2026-08-31 12:06:53"},"26":{"tray_id":"26","door_id":"1","tray_weight":"99999","sku_json":"4500726-12","org_sku":"4500726","active":"1","created_at":"2026-08-31 12:04:43","modified_at":"2026-08-31 12:04:43","image":"https:\\/\\/images.tinymart.in\\/product\\/4500726-818.jpeg","name":"MaxVita Crunchy Indian Mixture 30gm","mrp":"10","weight":"35","qty":"12","id":"26","p_sku":"4500726","p_qty":"12","p_return_sku":"4500711","p_return_qty":"0","return_sku":"4500711","return_qty":"0","return_image":"https:\\/\\/images.tinymart.in\\/product\\/4500711-9290.png","l_sku":"4500711","l_qty":"0"},"31":{"id":"31","tray_id":"31","door_id":"2","image":"https:\\/\\/images.tinymart.in\\/product\\/4500643-6170.webp","name":"Cavins Belgian chocolate 170ml spl pack","mrp":"40","weight":"191","qty":0,"org_sku":"4500643","p_sku":"4500643","p_qty":0,"l_sku":"4500643","l_qty":"3","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"4500643-0","tray_weight":"99999","modified_at":"2026-08-31 12:06:53","created_at":"2026-08-31 12:06:53"},"32":{"id":"32","tray_id":"32","door_id":"2","image":"https:\\/\\/images.tinymart.in\\/product\\/185994-2558.webp","name":"Nescafe Choco Mocha Cold Coffee 180ml","mrp":"45","weight":"200","qty":0,"org_sku":"185994","p_sku":"185994","p_qty":0,"l_sku":"185994","l_qty":"2","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"185994-0","tray_weight":"99999","modified_at":"2026-08-31 12:06:53","created_at":"2026-08-31 12:06:53"},"33":{"id":"33","tray_id":"33","door_id":"2","image":"https:\\/\\/images.tinymart.in\\/product\\/4500724-9570.jpg","name":"Heritage Badam Milk 165ml","mrp":"35","weight":"202","qty":0,"org_sku":"4500724","p_sku":"4500724","p_qty":0,"l_sku":"4500724","l_qty":"1","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"4500724-0","tray_weight":"99999","modified_at":"2026-08-31 12:06:53","created_at":"2026-08-31 12:06:53"},"34":{"id":"34","tray_id":"34","door_id":"2","image":"https:\\/\\/images.tinymart.in\\/product\\/4500499-5719.webp","name":"Heritage A1 Spiced Butter Milk180ml","mrp":"20","weight":"192","qty":0,"org_sku":"4500499","p_sku":"4500499","p_qty":0,"l_sku":"4500499","l_qty":"11","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"4500499-0","tray_weight":"99999","modified_at":"2026-08-31 12:06:53","created_at":"2026-08-31 12:06:53"},"35":{"id":"35","tray_id":"35","door_id":"2","image":"https:\\/\\/images.tinymart.in\\/product\\/4500701-4864.webp","name":"Madmix Anardana Raisins 11gm","mrp":"20","weight":"13","qty":0,"org_sku":"4500701","p_sku":"4500701","p_qty":0,"l_sku":"4500701","l_qty":"8","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"4500701-0","tray_weight":"99999","modified_at":"2026-08-31 12:06:53","created_at":"2026-08-31 12:06:53"},"36":{"id":"36","tray_id":"36","door_id":"2","image":"https:\\/\\/images.tinymart.in\\/product\\/186078-2883.png","name":"Paper boat Aam Panna 150ml","mrp":"25","weight":"166","qty":0,"org_sku":"186078","p_sku":"186078","p_qty":0,"l_sku":"186078","l_qty":"5","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"186078-0","tray_weight":"99999","modified_at":"2026-08-31 12:06:53","created_at":"2026-08-31 12:06:53"},"37":{"id":"37","tray_id":"37","door_id":"2","image":"https:\\/\\/images.tinymart.in\\/product\\/4500407-2060.jpg","name":"Paper boat Alphonso Mango 160ml","mrp":"25","weight":"175","qty":0,"org_sku":"4500407","p_sku":"4500407","p_qty":0,"l_sku":"4500407","l_qty":"4","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"4500407-0","tray_weight":"99999","modified_at":"2026-08-31 12:06:53","created_at":"2026-08-31 12:06:53"},"38":{"id":"38","tray_id":"38","door_id":"2","image":"https:\\/\\/images.tinymart.in\\/product\\/4500677-4669.png","name":"Eat Bit Peanut  Chikki 32gm","mrp":"10","weight":"33","qty":0,"org_sku":"4500677","p_sku":"4500677","p_qty":0,"l_sku":"4500677","l_qty":"0","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"4500677-0","tray_weight":"99999","modified_at":"2026-08-31 12:06:53","created_at":"2026-08-31 12:06:53"},"39":{"id":"39","tray_id":"39","door_id":"2","image":"https:\\/\\/images.tinymart.in\\/product\\/4500667-4339.webp","name":"Farmely Classic date Bites 20gm","mrp":"40","weight":"23","qty":0,"org_sku":"4500667","p_sku":"4500667","p_qty":0,"l_sku":"4500667","l_qty":"6","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"4500667-0","tray_weight":"99999","modified_at":"2026-08-31 12:06:53","created_at":"2026-08-31 12:06:53"},"40":{"id":"40","tray_id":"40","door_id":"2","image":"https:\\/\\/images.tinymart.in\\/product\\/166327-5644.jpg","name":"Epigamia Chocolate Milkshake 200g","mrp":"38","weight":"210","qty":0,"org_sku":"166327","p_sku":"166327","p_qty":0,"l_sku":"166327","l_qty":"4","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"166327-0","tray_weight":"99999","modified_at":"2026-08-31 12:06:53","created_at":"2026-08-31 12:06:53"},"41":{"id":"41","tray_id":"41","door_id":"2","image":"https:\\/\\/images.tinymart.in\\/product\\/4500678-5296.png","name":"Eat Bit Sesame  Chikki 32gm","mrp":"10","weight":"33","qty":0,"org_sku":"4500678","p_sku":"4500678","p_qty":0,"l_sku":"4500678","l_qty":"39","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"4500678-0","tray_weight":"99999","modified_at":"2026-08-31 12:06:53","created_at":"2026-08-31 12:06:53"},"42":{"id":"42","tray_id":"42","door_id":"2","image":"https:\\/\\/images.tinymart.in\\/product\\/186084-5395.png","name":"KITKAT Nestle 4 Finger Chocolate 38g","mrp":"30","weight":"41","qty":0,"org_sku":"186084","p_sku":"186084","p_qty":0,"l_sku":"186084","l_qty":"0","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"186084-0","tray_weight":"99999","modified_at":"2026-08-31 12:06:53","created_at":"2026-08-31 12:06:53"},"43":{"id":"43","tray_id":"43","door_id":"2","image":"https:\\/\\/images.tinymart.in\\/product\\/185993-3509.webp","name":"NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g","mrp":"20","weight":"42","qty":0,"org_sku":"185993","p_sku":"185993","p_qty":0,"l_sku":"185993","l_qty":"0","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"185993-0","tray_weight":"99999","modified_at":"2026-08-31 12:06:53","created_at":"2026-08-31 12:06:53"},"44":{"id":"44","tray_id":"44","door_id":"2","image":"https:\\/\\/images.tinymart.in\\/product\\/186096-4254.jpg","name":"Maaza Tetra 135ml","mrp":"10","weight":"150","qty":0,"org_sku":"186096","p_sku":"186096","p_qty":0,"l_sku":"186096","l_qty":"34","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"186096-0","tray_weight":"99999","modified_at":"2026-08-31 12:06:53","created_at":"2026-08-31 12:06:53"},"45":{"id":"45","tray_id":"45","door_id":"2","image":"https:\\/\\/images.tinymart.in\\/product\\/186043-5089.png","name":"Bindu Fizz Jeera Masala 250 ML","mrp":"20","weight":"295","qty":0,"org_sku":"186043","p_sku":"186043","p_qty":0,"l_sku":"186043","l_qty":"9","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"186043-0","tray_weight":"99999","modified_at":"2026-08-31 12:06:53","created_at":"2026-08-31 12:06:53"},"46":{"id":"46","tray_id":"46","door_id":"2","image":"https:\\/\\/images.tinymart.in\\/product\\/186059-5330.png","name":"Pepsi ZeroSugar  300ml","mrp":"40","weight":"310","qty":0,"org_sku":"186059","p_sku":"186059","p_qty":0,"l_sku":"186059","l_qty":"7","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"186059-0","tray_weight":"99999","modified_at":"2026-08-31 12:06:53","created_at":"2026-08-31 12:06:53"}},"command_for":"server"},{"success":true,"tray_mismatches":[{"sku_name":"Town Bus Soya Stick ,35g","tray_id":"11","quantity_in_db":"0","sku_id":"165143","quantity_on_tray":"14"},{"sku_name":"Ongibytes Garlic Muruku ","tray_id":"12","quantity_in_db":"10","sku_id":"4500605","quantity_on_tray":"10"},{"sku_name":"MaxVita Rice Kodubale 30gm","tray_id":"13","quantity_in_db":"10","sku_id":"4500722","quantity_on_tray":"11"},{"sku_name":"McVities Triple Nut Cookies 58gm","tray_id":"14","quantity_in_db":"15","sku_id":"4500714","quantity_on_tray":"24"},{"sku_name":"MaxVita Premium crunch Rusk 51gm","tray_id":"15","quantity_in_db":"0","sku_id":"4500710","quantity_on_tray":"11"},{"sku_name":"McVities Orange Cream Biscuts 61gm","tray_id":"16","quantity_in_db":"0","sku_id":"4500681","quantity_on_tray":"17"},{"sku_name":"Modern Kitchen Masala Peanut 28gm","tray_id":"17","quantity_in_db":"12","sku_id":"4500708","quantity_on_tray":"16"},{"sku_name":"Modern kitchens Salted Peanuts 25gm","tray_id":"18","quantity_in_db":"0","sku_id":"4500673","quantity_on_tray":"11"},{"sku_name":"Townbus Green Masala Peas 28g ","tray_id":"19","quantity_in_db":"0","sku_id":"186042","quantity_on_tray":"15"},{"sku_name":"McVities Butter Jeera Cookies58gm","tray_id":"20","quantity_in_db":"0","sku_id":"4500709","quantity_on_tray":"10"},{"sku_name":"Farmely Peri Peri Makhana 14gm","tray_id":"21","quantity_in_db":"0","sku_id":"4500665","quantity_on_tray":"7"},{"sku_name":"Modern kitchens Banana Chips 21gm","tray_id":"22","quantity_in_db":"0","sku_id":"4500648","quantity_on_tray":"8"},{"sku_name":"MaxVita Moong daal 25gm","tray_id":"23","quantity_in_db":"12","sku_id":"4500723","quantity_on_tray":"17"},{"sku_name":"Modern kitchens Garlic Mixture 26gm","tray_id":"24","quantity_in_db":"12","sku_id":"4500672","quantity_on_tray":"23"},{"sku_name":"Too Yumm Crea onion 33gm","tray_id":"25","quantity_in_db":"0","sku_id":"186100","quantity_on_tray":"5"},{"sku_name":"MaxVita Crunchy Indian Mixture 30gm","tray_id":"26","quantity_in_db":"12","sku_id":"4500726","quantity_on_tray":"20"},{"sku_name":"Cavins Belgian chocolate 170ml spl pack","tray_id":"31","quantity_in_db":"0","sku_id":"4500643","quantity_on_tray":"3"},{"sku_name":"Nescafe Choco Mocha Cold Coffee 180ml","tray_id":"32","quantity_in_db":"0","sku_id":"185994","quantity_on_tray":"2"},{"sku_name":"Heritage Badam Milk 165ml","tray_id":"33","quantity_in_db":"0","sku_id":"4500724","quantity_on_tray":"1"},{"sku_name":"Heritage A1 Spiced Butter Milk180ml","tray_id":"34","quantity_in_db":"0","sku_id":"4500499","quantity_on_tray":"11"},{"sku_name":"Madmix Anardana Raisins 11gm","tray_id":"35","quantity_in_db":"0","sku_id":"4500701","quantity_on_tray":"8"},{"sku_name":"Paper boat Aam Panna 150ml","tray_id":"36","quantity_in_db":"0","sku_id":"186078","quantity_on_tray":"5"},{"sku_name":"Paper boat Alphonso Mango 160ml","tray_id":"37","quantity_in_db":"0","sku_id":"4500407","quantity_on_tray":"4"},{"sku_name":"Eat Bit Peanut  Chikki 32gm","tray_id":"38","quantity_in_db":"0","sku_id":"4500677","quantity_on_tray":"6"},{"sku_name":"Farmely Classic date Bites 20gm","tray_id":"39","quantity_in_db":"0","sku_id":"4500667","quantity_on_tray":"6"},{"sku_name":"Epigamia Chocolate Milkshake 200g","tray_id":"40","quantity_in_db":"0","sku_id":"166327","quantity_on_tray":"4"},{"sku_name":"Eat Bit Sesame  Chikki 32gm","tray_id":"41","quantity_in_db":"0","sku_id":"4500678","quantity_on_tray":"39"},{"sku_name":"KITKAT Nestle 4 Finger Chocolate 38g","tray_id":"42","quantity_in_db":"0","sku_id":"186084","quantity_on_tray":"4"},{"sku_name":"NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g","tray_id":"43","quantity_in_db":"0","sku_id":"185993","quantity_on_tray":"25"},{"sku_name":"Maaza Tetra 135ml","tray_id":"44","quantity_in_db":"0","sku_id":"186096","quantity_on_tray":"34"},{"sku_name":"Bindu Fizz Jeera Masala 250 ML","tray_id":"45","quantity_in_db":"0","sku_id":"186043","quantity_on_tray":"9"},{"sku_name":"Pepsi ZeroSugar  300ml","tray_id":"46","quantity_in_db":"0","sku_id":"186059","quantity_on_tray":"7"}],"message":"Tray mismatches found.","user":"machine"},{"action":"verify_refill","quantity_on_tray_11":"14","confirmed_11":"on","quantity_on_tray_12":"10","confirmed_12":"on","quantity_on_tray_13":"11","confirmed_13":"on","quantity_on_tray_14":"24","confirmed_14":"on","quantity_on_tray_15":"11","confirmed_15":"on","quantity_on_tray_16":"17","confirmed_16":"on","quantity_on_tray_17":"16","confirmed_17":"on","quantity_on_tray_18":"11","confirmed_18":"on","quantity_on_tray_19":"15","confirmed_19":"on","quantity_on_tray_20":"10","confirmed_20":"on","quantity_on_tray_21":"7","confirmed_21":"on","quantity_on_tray_22":"8","confirmed_22":"on","quantity_on_tray_23":"17","confirmed_23":"on","quantity_on_tray_24":"23","confirmed_24":"on","quantity_on_tray_25":"5","confirmed_25":"on","quantity_on_tray_26":"20","confirmed_26":"on","quantity_on_tray_31":"3","confirmed_31":"on","quantity_on_tray_32":"2","confirmed_32":"on","quantity_on_tray_33":"1","confirmed_33":"on","quantity_on_tray_34":"11","confirmed_34":"on","quantity_on_tray_35":"8","confirmed_35":"on","quantity_on_tray_36":"5","confirmed_36":"on","quantity_on_tray_37":"4","confirmed_37":"on","quantity_on_tray_38":"6","confirmed_38":"on","quantity_on_tray_39":"6","confirmed_39":"on","quantity_on_tray_40":"4","confirmed_40":"on","quantity_on_tray_41":"39","confirmed_41":"on","quantity_on_tray_42":"4","confirmed_42":"on","quantity_on_tray_43":"25","confirmed_43":"on","quantity_on_tray_44":"34","confirmed_44":"on","quantity_on_tray_45":"9","confirmed_45":"on","quantity_on_tray_46":"7","confirmed_46":"on","command_for":"server"},{"success":true,"user":"machine"}]'}
[2026-08-31 12:13:40,213.213 INFO    ] refill verification completed 
[2026-08-31 12:13:44,233.233 INFO    ] 200
[2026-08-31 12:13:44,235.235 INFO    ] {"tray_sync": [], "order_items": [], "orders_data": [], "orders_synced": [], "tray_synced": ["no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry"], "orders_data_synced": [], "status": true, "order_items_synced": [], "orders": []}
[2026-08-31 12:13:44,238.238 INFO    ] Checking for system updates...
[2026-08-31 12:13:44,276.276 INFO    ] 200
[2026-08-31 12:13:44,278.278 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:13:44,330.330 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:13:44,333.333 INFO    ] No update needed
[2026-08-31 12:13:44,335.335 INFO    ] Checking for camera pi updates...
[2026-08-31 12:13:44,369.369 INFO    ] 200
[2026-08-31 12:13:44,371.371 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:13:44,411.411 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:13:44,537.537 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:13:44,540.540 INFO    ] No camera update needed
[2026-08-31 12:13:44,545.545 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:13:44,548.548 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:13:44,554.554 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:13:44,559.559 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:13:46,605.605 INFO    ] ================================================
[2026-08-31 12:13:46,621.621 INFO    ] Launching Daemon at Mon Aug 31 12:13:46 IST 2026
[2026-08-31 12:13:46,632.632 INFO    ] ================================================
[2026-08-31 12:13:47,235.235 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:13:47
[2026-08-31 12:13:47,840.840 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:13:48,118.118 INFO    ] Initializing speech engine...
[2026-08-31 12:13:48,127.127 INFO    ] 2026-08-31 12:13:48
[2026-08-31 12:13:48,388.388 INFO    ] 2026-08-31 12:13:48
[2026-08-31 12:13:48,421.421 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:13:49,502.502 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:13:49,505.505 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:13:50,810.810 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:13:50,828.828 INFO    ] time= 31/08/2026 12:13:50
[2026-08-31 12:13:50,834.834 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:13:50,842.842 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:13:51,822.822 INFO    ] No existing commands found in stream
[2026-08-31 12:13:56,829.829 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:13:56,833.833 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-08-31 12:14:02,598.598 INFO    ] {'response': {'data': 'order not active', 'status': False, 'msg': 'order not active '}}
[2026-08-31 12:14:02,601.601 INFO    ] Checking for system updates...
[2026-08-31 12:14:02,644.644 INFO    ] 200
[2026-08-31 12:14:02,647.647 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:14:02,717.717 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:14:02,721.721 INFO    ] No update needed
[2026-08-31 12:14:02,724.724 INFO    ] Checking for camera pi updates...
[2026-08-31 12:14:02,769.769 INFO    ] 200
[2026-08-31 12:14:02,772.772 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:14:02,836.836 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:14:02,982.982 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:14:02,984.984 INFO    ] No camera update needed
[2026-08-31 12:14:02,988.988 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:14:02,991.991 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:14:02,999.999 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:14:03,006.006 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:14:05,049.049 INFO    ] ================================================
[2026-08-31 12:14:05,063.063 INFO    ] Launching Daemon at Mon Aug 31 12:14:05 IST 2026
[2026-08-31 12:14:05,074.074 INFO    ] ================================================
[2026-08-31 12:14:05,642.642 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:14:05
[2026-08-31 12:14:06,225.225 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:14:06,477.477 INFO    ] Initializing speech engine...
[2026-08-31 12:14:06,489.489 INFO    ] 2026-08-31 12:14:06
[2026-08-31 12:14:06,762.762 INFO    ] 2026-08-31 12:14:06
[2026-08-31 12:14:06,797.797 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:14:08,846.846 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:14:08,866.866 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:14:10,257.257 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:14:10,260.260 INFO    ] time= 31/08/2026 12:14:10
[2026-08-31 12:14:10,263.263 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:14:10,265.265 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:14:11,033.033 INFO    ] No existing commands found in stream
[2026-08-31 12:14:16,042.042 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:14:16,045.045 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-08-31 12:14:23,714.714 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 12:14:23,717.717 INFO    ] Checking for system updates...
[2026-08-31 12:14:23,753.753 INFO    ] 200
[2026-08-31 12:14:23,755.755 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:14:23,810.810 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:14:23,813.813 INFO    ] No update needed
[2026-08-31 12:14:23,815.815 INFO    ] Checking for camera pi updates...
[2026-08-31 12:14:23,852.852 INFO    ] 200
[2026-08-31 12:14:23,854.854 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:14:23,895.895 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:14:23,980.980 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:14:23,982.982 INFO    ] No camera update needed
[2026-08-31 12:14:23,985.985 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:14:23,987.987 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:14:23,992.992 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:14:23,997.997 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:14:26,036.036 INFO    ] ================================================
[2026-08-31 12:14:26,051.051 INFO    ] Launching Daemon at Mon Aug 31 12:14:26 IST 2026
[2026-08-31 12:14:26,062.062 INFO    ] ================================================
[2026-08-31 12:14:26,629.629 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:14:26
[2026-08-31 12:14:27,211.211 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:14:27,482.482 INFO    ] Initializing speech engine...
[2026-08-31 12:14:27,491.491 INFO    ] 2026-08-31 12:14:27
[2026-08-31 12:14:27,738.738 INFO    ] 2026-08-31 12:14:27
[2026-08-31 12:14:27,772.772 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:14:28,932.932 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:14:28,942.942 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:14:30,154.154 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:14:30,162.162 INFO    ] time= 31/08/2026 12:14:30
[2026-08-31 12:14:30,166.166 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:14:30,176.176 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:14:31,111.111 INFO    ] No existing commands found in stream
[2026-08-31 12:14:36,120.120 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:14:36,123.123 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-08-31 12:14:39,406.406 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 12:14:39,408.408 INFO    ] Checking for system updates...
[2026-08-31 12:14:39,448.448 INFO    ] 200
[2026-08-31 12:14:39,451.451 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:14:39,504.504 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:14:39,506.506 INFO    ] No update needed
[2026-08-31 12:14:39,509.509 INFO    ] Checking for camera pi updates...
[2026-08-31 12:14:39,542.542 INFO    ] 200
[2026-08-31 12:14:39,545.545 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:14:39,584.584 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:14:39,667.667 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:14:39,669.669 INFO    ] No camera update needed
[2026-08-31 12:14:39,671.671 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:14:39,674.674 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:14:39,679.679 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:14:39,684.684 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:14:41,727.727 INFO    ] ================================================
[2026-08-31 12:14:41,742.742 INFO    ] Launching Daemon at Mon Aug 31 12:14:41 IST 2026
[2026-08-31 12:14:41,752.752 INFO    ] ================================================
[2026-08-31 12:14:42,316.316 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:14:42
[2026-08-31 12:14:42,902.902 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:14:43,156.156 INFO    ] Initializing speech engine...
[2026-08-31 12:14:43,165.165 INFO    ] 2026-08-31 12:14:43
[2026-08-31 12:14:43,459.459 INFO    ] 2026-08-31 12:14:43
[2026-08-31 12:14:43,484.484 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:14:44,351.351 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:14:44,368.368 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:14:45,323.323 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:14:45,332.332 INFO    ] time= 31/08/2026 12:14:45
[2026-08-31 12:14:45,376.376 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:14:45,382.382 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:14:46,581.581 INFO    ] No existing commands found in stream
[2026-08-31 12:14:51,590.590 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:14:51,593.593 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-08-31 12:14:55,629.629 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 12:14:55,631.631 INFO    ] Checking for system updates...
[2026-08-31 12:14:55,666.666 INFO    ] 200
[2026-08-31 12:14:55,669.669 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:14:55,720.720 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:14:55,723.723 INFO    ] No update needed
[2026-08-31 12:14:55,725.725 INFO    ] Checking for camera pi updates...
[2026-08-31 12:14:55,765.765 INFO    ] 200
[2026-08-31 12:14:55,768.768 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:14:55,808.808 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:14:55,906.906 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:14:55,909.909 INFO    ] No camera update needed
[2026-08-31 12:14:55,911.911 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:14:55,913.913 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:14:55,919.919 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:14:55,923.923 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:14:57,968.968 INFO    ] ================================================
[2026-08-31 12:14:57,983.983 INFO    ] Launching Daemon at Mon Aug 31 12:14:57 IST 2026
[2026-08-31 12:14:57,993.993 INFO    ] ================================================
[2026-08-31 12:14:58,565.565 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:14:58
[2026-08-31 12:14:59,148.148 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:14:59,400.400 INFO    ] Initializing speech engine...
[2026-08-31 12:14:59,423.423 INFO    ] 2026-08-31 12:14:59
[2026-08-31 12:14:59,680.680 INFO    ] 2026-08-31 12:14:59
[2026-08-31 12:14:59,715.715 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:15:00,902.902 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:15:00,906.906 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:15:02,184.184 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:15:02,190.190 INFO    ] time= 31/08/2026 12:15:02
[2026-08-31 12:15:02,194.194 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:15:02,244.244 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:15:03,637.637 INFO    ] No existing commands found in stream
[2026-08-31 12:15:08,647.647 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:15:08,650.650 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-08-31 12:15:17,799.799 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 12:15:17,802.802 INFO    ] Checking for system updates...
[2026-08-31 12:15:17,838.838 INFO    ] 200
[2026-08-31 12:15:17,840.840 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:15:17,893.893 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:15:17,895.895 INFO    ] No update needed
[2026-08-31 12:15:17,898.898 INFO    ] Checking for camera pi updates...
[2026-08-31 12:15:17,935.935 INFO    ] 200
[2026-08-31 12:15:17,937.937 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:15:17,978.978 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:15:18,163.163 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:15:18,165.165 INFO    ] No camera update needed
[2026-08-31 12:15:18,168.168 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:15:18,170.170 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:15:18,175.175 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:15:18,180.180 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:15:20,223.223 INFO    ] ================================================
[2026-08-31 12:15:20,239.239 INFO    ] Launching Daemon at Mon Aug 31 12:15:20 IST 2026
[2026-08-31 12:15:20,250.250 INFO    ] ================================================
[2026-08-31 12:15:20,908.908 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:15:20
[2026-08-31 12:15:21,587.587 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:15:21,892.892 INFO    ] Initializing speech engine...
[2026-08-31 12:15:21,905.905 INFO    ] 2026-08-31 12:15:21
[2026-08-31 12:15:22,188.188 INFO    ] 2026-08-31 12:15:22
[2026-08-31 12:15:22,236.236 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:15:23,391.391 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:15:23,397.397 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:15:24,426.426 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:15:24,441.441 INFO    ] time= 31/08/2026 12:15:24
[2026-08-31 12:15:24,465.465 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:15:24,506.506 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:15:25,547.547 INFO    ] No existing commands found in stream
[2026-08-31 12:15:30,558.558 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:15:30,561.561 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-08-31 12:15:35,044.044 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 12:15:35,047.047 INFO    ] Checking for system updates...
[2026-08-31 12:15:35,086.086 INFO    ] 200
[2026-08-31 12:15:35,093.093 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:15:35,154.154 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:15:35,156.156 INFO    ] No update needed
[2026-08-31 12:15:35,159.159 INFO    ] Checking for camera pi updates...
[2026-08-31 12:15:35,193.193 INFO    ] 200
[2026-08-31 12:15:35,195.195 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:15:35,235.235 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:15:35,335.335 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:15:35,338.338 INFO    ] No camera update needed
[2026-08-31 12:15:35,340.340 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:15:35,343.343 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:15:35,348.348 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:15:35,353.353 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:15:37,395.395 INFO    ] ================================================
[2026-08-31 12:15:37,411.411 INFO    ] Launching Daemon at Mon Aug 31 12:15:37 IST 2026
[2026-08-31 12:15:37,422.422 INFO    ] ================================================
[2026-08-31 12:15:37,987.987 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:15:37
[2026-08-31 12:15:38,581.581 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:15:38,832.832 INFO    ] Initializing speech engine...
[2026-08-31 12:15:38,842.842 INFO    ] 2026-08-31 12:15:38
[2026-08-31 12:15:39,114.114 INFO    ] 2026-08-31 12:15:39
[2026-08-31 12:15:39,150.150 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:15:41,356.356 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:15:41,366.366 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:15:43,346.346 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:15:43,349.349 INFO    ] time= 31/08/2026 12:15:43
[2026-08-31 12:15:43,351.351 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:15:43,353.353 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:15:45,061.061 INFO    ] No existing commands found in stream
[2026-08-31 12:15:50,070.070 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:15:50,073.073 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-08-31 12:15:56,707.707 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 12:15:56,710.710 INFO    ] Checking for system updates...
[2026-08-31 12:15:56,745.745 INFO    ] 200
[2026-08-31 12:15:56,748.748 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:15:56,800.800 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:15:56,803.803 INFO    ] No update needed
[2026-08-31 12:15:56,805.805 INFO    ] Checking for camera pi updates...
[2026-08-31 12:15:56,839.839 INFO    ] 200
[2026-08-31 12:15:56,842.842 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:15:56,888.888 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:15:56,976.976 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:15:56,978.978 INFO    ] No camera update needed
[2026-08-31 12:15:56,981.981 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:15:56,983.983 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:15:56,988.988 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:15:56,993.993 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:15:59,035.035 INFO    ] ================================================
[2026-08-31 12:15:59,051.051 INFO    ] Launching Daemon at Mon Aug 31 12:15:59 IST 2026
[2026-08-31 12:15:59,062.062 INFO    ] ================================================
[2026-08-31 12:15:59,631.631 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:15:59
[2026-08-31 12:16:00,214.214 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:16:00,482.482 INFO    ] Initializing speech engine...
[2026-08-31 12:16:00,492.492 INFO    ] 2026-08-31 12:16:00
[2026-08-31 12:16:00,739.739 INFO    ] 2026-08-31 12:16:00
[2026-08-31 12:16:00,775.775 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:16:01,830.830 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:16:01,856.856 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:16:03,346.346 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:16:03,362.362 INFO    ] time= 31/08/2026 12:16:03
[2026-08-31 12:16:03,377.377 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:16:03,384.384 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:16:05,697.697 INFO    ] No existing commands found in stream
[2026-08-31 12:16:10,707.707 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:16:10,710.710 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-08-31 12:16:14,148.148 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 12:16:14,151.151 INFO    ] Checking for system updates...
[2026-08-31 12:16:14,186.186 INFO    ] 200
[2026-08-31 12:16:14,189.189 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:16:14,242.242 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:16:14,244.244 INFO    ] No update needed
[2026-08-31 12:16:14,246.246 INFO    ] Checking for camera pi updates...
[2026-08-31 12:16:14,280.280 INFO    ] 200
[2026-08-31 12:16:14,282.282 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:16:14,349.349 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:16:14,430.430 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:16:14,432.432 INFO    ] No camera update needed
[2026-08-31 12:16:14,435.435 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:16:14,437.437 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:16:14,442.442 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:16:14,447.447 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:16:16,487.487 INFO    ] ================================================
[2026-08-31 12:16:16,502.502 INFO    ] Launching Daemon at Mon Aug 31 12:16:16 IST 2026
[2026-08-31 12:16:16,513.513 INFO    ] ================================================
[2026-08-31 12:16:17,091.091 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:16:17
[2026-08-31 12:16:17,680.680 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:16:17,929.929 INFO    ] Initializing speech engine...
[2026-08-31 12:16:17,943.943 INFO    ] 2026-08-31 12:16:17
[2026-08-31 12:16:18,204.204 INFO    ] 2026-08-31 12:16:18
[2026-08-31 12:16:18,239.239 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:16:18,491.491 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:16:18,500.500 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:16:18,753.753 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:16:18,760.760 INFO    ] time= 31/08/2026 12:16:18
[2026-08-31 12:16:18,777.777 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:16:18,800.800 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:16:18,942.942 INFO    ] No existing commands found in stream
[2026-08-31 12:16:23,972.972 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:16:23,975.975 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-08-31 12:16:24,732.732 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 12:16:24,735.735 INFO    ] Checking for system updates...
[2026-08-31 12:16:24,772.772 INFO    ] 200
[2026-08-31 12:16:24,774.774 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:16:24,835.835 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:16:24,838.838 INFO    ] No update needed
[2026-08-31 12:16:24,840.840 INFO    ] Checking for camera pi updates...
[2026-08-31 12:16:24,873.873 INFO    ] 200
[2026-08-31 12:16:24,876.876 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:16:24,916.916 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:16:24,995.995 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:16:24,998.998 INFO    ] No camera update needed
[2026-08-31 12:16:25,000.000 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:16:25,002.002 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:16:25,008.008 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:16:25,012.012 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:16:27,052.052 INFO    ] ================================================
[2026-08-31 12:16:27,067.067 INFO    ] Launching Daemon at Mon Aug 31 12:16:27 IST 2026
[2026-08-31 12:16:27,078.078 INFO    ] ================================================
[2026-08-31 12:16:27,732.732 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:16:27
[2026-08-31 12:16:28,330.330 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:16:28,585.585 INFO    ] Initializing speech engine...
[2026-08-31 12:16:28,590.590 INFO    ] 2026-08-31 12:16:28
[2026-08-31 12:16:28,884.884 INFO    ] 2026-08-31 12:16:28
[2026-08-31 12:16:28,920.920 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:16:29,120.120 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:16:29,177.177 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:16:29,403.403 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:16:29,443.443 INFO    ] time= 31/08/2026 12:16:29
[2026-08-31 12:16:29,449.449 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:16:29,468.468 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:16:29,600.600 INFO    ] No existing commands found in stream
[2026-08-31 12:16:34,619.619 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:16:34,622.622 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-08-31 12:16:38,684.684 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 12:16:38,687.687 INFO    ] Checking for system updates...
[2026-08-31 12:16:38,727.727 INFO    ] 200
[2026-08-31 12:16:38,730.730 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:16:38,782.782 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:16:38,784.784 INFO    ] No update needed
[2026-08-31 12:16:38,787.787 INFO    ] Checking for camera pi updates...
[2026-08-31 12:16:38,824.824 INFO    ] 200
[2026-08-31 12:16:38,827.827 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:16:38,868.868 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:16:38,964.964 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:16:38,967.967 INFO    ] No camera update needed
[2026-08-31 12:16:38,969.969 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:16:38,972.972 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:16:38,977.977 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:16:38,982.982 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:16:41,022.022 INFO    ] ================================================
[2026-08-31 12:16:41,037.037 INFO    ] Launching Daemon at Mon Aug 31 12:16:41 IST 2026
[2026-08-31 12:16:41,047.047 INFO    ] ================================================
[2026-08-31 12:16:41,628.628 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:16:41
[2026-08-31 12:16:42,224.224 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:16:42,497.497 INFO    ] Initializing speech engine...
[2026-08-31 12:16:42,505.505 INFO    ] 2026-08-31 12:16:42
[2026-08-31 12:16:42,758.758 INFO    ] 2026-08-31 12:16:42
[2026-08-31 12:16:42,818.818 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:16:43,043.043 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:16:43,047.047 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:16:43,186.186 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:16:43,246.246 INFO    ] time= 31/08/2026 12:16:43
[2026-08-31 12:16:43,305.305 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:16:43,315.315 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:16:43,461.461 INFO    ] No existing commands found in stream
[2026-08-31 12:16:48,483.483 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:16:48,486.486 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-08-31 12:16:51,570.570 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 12:16:51,573.573 INFO    ] Checking for system updates...
[2026-08-31 12:16:51,609.609 INFO    ] 200
[2026-08-31 12:16:51,611.611 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:16:51,665.665 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:16:51,667.667 INFO    ] No update needed
[2026-08-31 12:16:51,670.670 INFO    ] Checking for camera pi updates...
[2026-08-31 12:16:51,703.703 INFO    ] 200
[2026-08-31 12:16:51,705.705 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:16:51,752.752 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:16:51,849.849 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:16:51,852.852 INFO    ] No camera update needed
[2026-08-31 12:16:51,854.854 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:16:51,856.856 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:16:51,862.862 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:16:51,867.867 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:16:53,910.910 INFO    ] ================================================
[2026-08-31 12:16:53,925.925 INFO    ] Launching Daemon at Mon Aug 31 12:16:53 IST 2026
[2026-08-31 12:16:53,936.936 INFO    ] ================================================
[2026-08-31 12:16:54,523.523 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:16:54
[2026-08-31 12:16:55,129.129 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:16:55,409.409 INFO    ] Initializing speech engine...
[2026-08-31 12:16:55,419.419 INFO    ] 2026-08-31 12:16:55
[2026-08-31 12:16:55,670.670 INFO    ] 2026-08-31 12:16:55
[2026-08-31 12:16:55,706.706 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:16:55,962.962 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:16:55,967.967 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:16:56,184.184 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:16:56,227.227 INFO    ] time= 31/08/2026 12:16:56
[2026-08-31 12:16:56,233.233 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:16:56,250.250 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:16:56,371.371 INFO    ] No existing commands found in stream
[2026-08-31 12:17:01,391.391 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:17:01,394.394 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-08-31 12:17:04,593.593 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 12:17:04,596.596 INFO    ] Checking for system updates...
[2026-08-31 12:17:04,635.635 INFO    ] 200
[2026-08-31 12:17:04,637.637 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:17:04,696.696 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:17:04,699.699 INFO    ] No update needed
[2026-08-31 12:17:04,701.701 INFO    ] Checking for camera pi updates...
[2026-08-31 12:17:04,735.735 INFO    ] 200
[2026-08-31 12:17:04,737.737 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:17:04,778.778 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:17:04,861.861 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:17:04,864.864 INFO    ] No camera update needed
[2026-08-31 12:17:04,866.866 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:17:04,868.868 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:17:04,874.874 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:17:04,879.879 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:17:06,921.921 INFO    ] ================================================
[2026-08-31 12:17:06,936.936 INFO    ] Launching Daemon at Mon Aug 31 12:17:06 IST 2026
[2026-08-31 12:17:06,946.946 INFO    ] ================================================
[2026-08-31 12:17:07,528.528 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:17:07
[2026-08-31 12:17:08,124.124 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:17:08,402.402 INFO    ] Initializing speech engine...
[2026-08-31 12:17:08,410.410 INFO    ] 2026-08-31 12:17:08
[2026-08-31 12:17:08,682.682 INFO    ] 2026-08-31 12:17:08
[2026-08-31 12:17:08,723.723 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:17:08,948.948 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:17:08,953.953 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:17:09,178.178 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:17:09,209.209 INFO    ] time= 31/08/2026 12:17:09
[2026-08-31 12:17:09,215.215 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:17:09,236.236 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:17:09,352.352 INFO    ] No existing commands found in stream
[2026-08-31 12:17:14,372.372 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:17:14,375.375 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-08-31 12:17:15,445.445 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 12:17:15,448.448 INFO    ] Checking for system updates...
[2026-08-31 12:17:15,484.484 INFO    ] 200
[2026-08-31 12:17:15,487.487 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:17:15,539.539 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:17:15,541.541 INFO    ] No update needed
[2026-08-31 12:17:15,543.543 INFO    ] Checking for camera pi updates...
[2026-08-31 12:17:15,576.576 INFO    ] 200
[2026-08-31 12:17:15,579.579 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:17:15,619.619 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:17:15,669.669 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:17:15,671.671 INFO    ] No camera update needed
[2026-08-31 12:17:15,673.673 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:17:15,676.676 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:17:15,682.682 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:17:15,688.688 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:17:17,729.729 INFO    ] ================================================
[2026-08-31 12:17:17,744.744 INFO    ] Launching Daemon at Mon Aug 31 12:17:17 IST 2026
[2026-08-31 12:17:17,755.755 INFO    ] ================================================
[2026-08-31 12:17:18,327.327 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:17:18
[2026-08-31 12:17:18,910.910 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:17:19,180.180 INFO    ] Initializing speech engine...
[2026-08-31 12:17:19,189.189 INFO    ] 2026-08-31 12:17:19
[2026-08-31 12:17:19,438.438 INFO    ] 2026-08-31 12:17:19
[2026-08-31 12:17:19,473.473 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:17:19,670.670 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:17:19,715.715 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:17:19,876.876 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:17:19,911.911 INFO    ] time= 31/08/2026 12:17:19
[2026-08-31 12:17:19,970.970 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:17:20,010.010 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:17:20,141.141 INFO    ] No existing commands found in stream
[2026-08-31 12:17:25,166.166 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:17:25,169.169 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-08-31 12:17:29,309.309 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 12:17:29,312.312 INFO    ] Checking for system updates...
[2026-08-31 12:17:29,352.352 INFO    ] 200
[2026-08-31 12:17:29,355.355 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:17:29,411.411 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:17:29,413.413 INFO    ] No update needed
[2026-08-31 12:17:29,416.416 INFO    ] Checking for camera pi updates...
[2026-08-31 12:17:29,450.450 INFO    ] 200
[2026-08-31 12:17:29,453.453 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:17:29,495.495 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:17:29,676.676 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:17:29,679.679 INFO    ] No camera update needed
[2026-08-31 12:17:29,682.682 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:17:29,685.685 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:17:29,691.691 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:17:29,696.696 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:17:31,741.741 INFO    ] ================================================
[2026-08-31 12:17:31,759.759 INFO    ] Launching Daemon at Mon Aug 31 12:17:31 IST 2026
[2026-08-31 12:17:31,771.771 INFO    ] ================================================
[2026-08-31 12:17:32,485.485 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:17:32
[2026-08-31 12:17:33,126.126 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:17:33,387.387 INFO    ] Initializing speech engine...
[2026-08-31 12:17:33,400.400 INFO    ] 2026-08-31 12:17:33
[2026-08-31 12:17:33,687.687 INFO    ] 2026-08-31 12:17:33
[2026-08-31 12:17:33,727.727 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:17:33,959.959 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:17:34,015.015 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:17:34,247.247 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:17:34,297.297 INFO    ] time= 31/08/2026 12:17:34
[2026-08-31 12:17:34,329.329 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:17:34,335.335 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:17:34,467.467 INFO    ] No existing commands found in stream
[2026-08-31 12:17:39,488.488 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:17:39,490.490 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-08-31 12:17:41,121.121 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 12:17:41,124.124 INFO    ] Checking for system updates...
[2026-08-31 12:17:41,163.163 INFO    ] 200
[2026-08-31 12:17:41,166.166 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:17:41,220.220 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:17:41,222.222 INFO    ] No update needed
[2026-08-31 12:17:41,225.225 INFO    ] Checking for camera pi updates...
[2026-08-31 12:17:41,259.259 INFO    ] 200
[2026-08-31 12:17:41,262.262 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:17:41,307.307 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:17:41,391.391 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:17:41,393.393 INFO    ] No camera update needed
[2026-08-31 12:17:41,395.395 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:17:41,398.398 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:17:41,403.403 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:17:41,408.408 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:17:43,448.448 INFO    ] ================================================
[2026-08-31 12:17:43,463.463 INFO    ] Launching Daemon at Mon Aug 31 12:17:43 IST 2026
[2026-08-31 12:17:43,473.473 INFO    ] ================================================
[2026-08-31 12:17:44,052.052 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:17:44
[2026-08-31 12:17:44,649.649 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:17:44,926.926 INFO    ] Initializing speech engine...
[2026-08-31 12:17:44,933.933 INFO    ] 2026-08-31 12:17:44
[2026-08-31 12:17:45,206.206 INFO    ] 2026-08-31 12:17:45
[2026-08-31 12:17:45,249.249 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:17:45,530.530 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:17:45,538.538 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:17:45,733.733 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:17:45,751.751 INFO    ] time= 31/08/2026 12:17:45
[2026-08-31 12:17:45,761.761 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:17:45,790.790 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:17:45,900.900 INFO    ] No existing commands found in stream
[2026-08-31 12:17:50,919.919 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:17:50,923.923 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-08-31 12:17:53,880.880 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 12:17:53,883.883 INFO    ] Checking for system updates...
[2026-08-31 12:17:53,919.919 INFO    ] 200
[2026-08-31 12:17:53,921.921 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:17:53,980.980 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:17:53,983.983 INFO    ] No update needed
[2026-08-31 12:17:53,985.985 INFO    ] Checking for camera pi updates...
[2026-08-31 12:17:54,019.019 INFO    ] 200
[2026-08-31 12:17:54,021.021 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:17:54,062.062 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:17:54,144.144 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:17:54,147.147 INFO    ] No camera update needed
[2026-08-31 12:17:54,150.150 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:17:54,152.152 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:17:54,157.157 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:17:54,162.162 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:17:56,202.202 INFO    ] ================================================
[2026-08-31 12:17:56,218.218 INFO    ] Launching Daemon at Mon Aug 31 12:17:56 IST 2026
[2026-08-31 12:17:56,229.229 INFO    ] ================================================
[2026-08-31 12:17:56,884.884 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:17:56
[2026-08-31 12:17:57,468.468 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:17:57,742.742 INFO    ] Initializing speech engine...
[2026-08-31 12:17:57,749.749 INFO    ] 2026-08-31 12:17:57
[2026-08-31 12:17:57,998.998 INFO    ] 2026-08-31 12:17:57
[2026-08-31 12:17:58,033.033 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:17:58,289.289 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:17:58,299.299 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:17:58,539.539 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:17:58,566.566 INFO    ] time= 31/08/2026 12:17:58
[2026-08-31 12:17:58,581.581 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:17:58,597.597 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:17:58,732.732 INFO    ] No existing commands found in stream
[2026-08-31 12:18:03,758.758 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:18:03,761.761 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-08-31 12:18:07,116.116 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 12:18:07,119.119 INFO    ] Checking for system updates...
[2026-08-31 12:18:07,154.154 INFO    ] 200
[2026-08-31 12:18:07,157.157 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:18:07,208.208 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:18:07,211.211 INFO    ] No update needed
[2026-08-31 12:18:07,214.214 INFO    ] Checking for camera pi updates...
[2026-08-31 12:18:07,248.248 INFO    ] 200
[2026-08-31 12:18:07,250.250 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:18:07,295.295 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:18:07,390.390 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:18:07,392.392 INFO    ] No camera update needed
[2026-08-31 12:18:07,394.394 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:18:07,397.397 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:18:07,402.402 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:18:07,409.409 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:18:09,455.455 INFO    ] ================================================
[2026-08-31 12:18:09,471.471 INFO    ] Launching Daemon at Mon Aug 31 12:18:09 IST 2026
[2026-08-31 12:18:09,482.482 INFO    ] ================================================
[2026-08-31 12:18:10,047.047 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:18:10
[2026-08-31 12:18:10,630.630 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:18:10,896.896 INFO    ] Initializing speech engine...
[2026-08-31 12:18:10,908.908 INFO    ] 2026-08-31 12:18:10
[2026-08-31 12:18:11,160.160 INFO    ] 2026-08-31 12:18:11
[2026-08-31 12:18:11,228.228 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:18:11,516.516 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:18:11,524.524 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:18:11,713.713 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:18:11,730.730 INFO    ] time= 31/08/2026 12:18:11
[2026-08-31 12:18:11,748.748 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:18:11,766.766 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:18:11,888.888 INFO    ] No existing commands found in stream
[2026-08-31 12:18:16,909.909 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:18:16,911.911 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-08-31 12:18:21,053.053 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 12:18:21,061.061 INFO    ] Checking for system updates...
[2026-08-31 12:18:21,120.120 INFO    ] 200
[2026-08-31 12:18:21,122.122 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:18:21,189.189 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:18:21,191.191 INFO    ] No update needed
[2026-08-31 12:18:21,194.194 INFO    ] Checking for camera pi updates...
[2026-08-31 12:18:21,235.235 INFO    ] 200
[2026-08-31 12:18:21,237.237 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:18:21,281.281 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:18:21,373.373 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:18:21,376.376 INFO    ] No camera update needed
[2026-08-31 12:18:21,379.379 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:18:21,381.381 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:18:21,388.388 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:18:21,394.394 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:18:23,439.439 INFO    ] ================================================
[2026-08-31 12:18:23,456.456 INFO    ] Launching Daemon at Mon Aug 31 12:18:23 IST 2026
[2026-08-31 12:18:23,468.468 INFO    ] ================================================
[2026-08-31 12:18:24,069.069 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:18:24
[2026-08-31 12:18:24,686.686 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:18:24,966.966 INFO    ] Initializing speech engine...
[2026-08-31 12:18:24,983.983 INFO    ] 2026-08-31 12:18:24
[2026-08-31 12:18:25,281.281 INFO    ] 2026-08-31 12:18:25
[2026-08-31 12:18:25,318.318 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:18:25,505.505 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:18:25,530.530 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:18:25,714.714 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:18:25,720.720 INFO    ] time= 31/08/2026 12:18:25
[2026-08-31 12:18:25,726.726 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:18:25,732.732 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:18:25,892.892 INFO    ] No existing commands found in stream
[2026-08-31 12:18:30,913.913 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:18:30,916.916 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-08-31 12:18:33,226.226 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 12:18:33,229.229 INFO    ] Checking for system updates...
[2026-08-31 12:18:33,270.270 INFO    ] 200
[2026-08-31 12:18:33,273.273 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:18:33,336.336 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:18:33,339.339 INFO    ] No update needed
[2026-08-31 12:18:33,343.343 INFO    ] Checking for camera pi updates...
[2026-08-31 12:18:33,393.393 INFO    ] 200
[2026-08-31 12:18:33,398.398 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:18:33,443.443 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:18:33,531.531 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:18:33,534.534 INFO    ] No camera update needed
[2026-08-31 12:18:33,536.536 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:18:33,539.539 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:18:33,546.546 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:18:33,552.552 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:18:35,597.597 INFO    ] ================================================
[2026-08-31 12:18:35,613.613 INFO    ] Launching Daemon at Mon Aug 31 12:18:35 IST 2026
[2026-08-31 12:18:35,624.624 INFO    ] ================================================
[2026-08-31 12:18:36,190.190 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:18:36
[2026-08-31 12:18:36,771.771 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:18:37,020.020 INFO    ] Initializing speech engine...
[2026-08-31 12:18:37,033.033 INFO    ] 2026-08-31 12:18:37
[2026-08-31 12:18:37,298.298 INFO    ] 2026-08-31 12:18:37
[2026-08-31 12:18:37,333.333 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:18:37,590.590 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:18:37,599.599 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:18:37,734.734 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:18:37,781.781 INFO    ] time= 31/08/2026 12:18:37
[2026-08-31 12:18:37,830.830 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:18:37,869.869 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:18:37,999.999 INFO    ] No existing commands found in stream
[2026-08-31 12:18:43,025.025 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:18:43,027.027 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-08-31 12:18:43,868.868 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 12:18:43,871.871 INFO    ] Checking for system updates...
[2026-08-31 12:18:43,906.906 INFO    ] 200
[2026-08-31 12:18:43,909.909 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:18:43,969.969 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:18:43,971.971 INFO    ] No update needed
[2026-08-31 12:18:43,974.974 INFO    ] Checking for camera pi updates...
[2026-08-31 12:18:44,012.012 INFO    ] 200
[2026-08-31 12:18:44,014.014 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:18:44,055.055 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:18:44,136.136 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:18:44,138.138 INFO    ] No camera update needed
[2026-08-31 12:18:44,141.141 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:18:44,143.143 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:18:44,148.148 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:18:44,153.153 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:18:46,194.194 INFO    ] ================================================
[2026-08-31 12:18:46,210.210 INFO    ] Launching Daemon at Mon Aug 31 12:18:46 IST 2026
[2026-08-31 12:18:46,226.226 INFO    ] ================================================
[2026-08-31 12:18:46,798.798 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:18:46
[2026-08-31 12:18:47,380.380 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:18:47,626.626 INFO    ] Initializing speech engine...
[2026-08-31 12:18:47,639.639 INFO    ] 2026-08-31 12:18:47
[2026-08-31 12:18:47,901.901 INFO    ] 2026-08-31 12:18:47
[2026-08-31 12:18:47,936.936 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:18:48,186.186 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:18:48,195.195 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:18:48,336.336 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:18:48,407.407 INFO    ] time= 31/08/2026 12:18:48
[2026-08-31 12:18:48,458.458 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:18:48,464.464 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:18:48,609.609 INFO    ] No existing commands found in stream
[2026-08-31 12:18:53,624.624 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:18:53,626.626 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-08-31 12:18:57,855.855 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 12:18:57,857.857 INFO    ] Checking for system updates...
[2026-08-31 12:18:57,897.897 INFO    ] 200
[2026-08-31 12:18:57,900.900 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:18:57,968.968 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:18:57,970.970 INFO    ] No update needed
[2026-08-31 12:18:57,972.972 INFO    ] Checking for camera pi updates...
[2026-08-31 12:18:58,010.010 INFO    ] 200
[2026-08-31 12:18:58,013.013 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:18:58,059.059 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:18:58,144.144 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:18:58,147.147 INFO    ] No camera update needed
[2026-08-31 12:18:58,149.149 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:18:58,152.152 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:18:58,157.157 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:18:58,162.162 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:19:00,201.201 INFO    ] ================================================
[2026-08-31 12:19:00,216.216 INFO    ] Launching Daemon at Mon Aug 31 12:19:00 IST 2026
[2026-08-31 12:19:00,226.226 INFO    ] ================================================
[2026-08-31 12:19:00,791.791 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:19:00
[2026-08-31 12:19:01,373.373 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:19:01,872.872 INFO    ] Initializing speech engine...
[2026-08-31 12:19:01,903.903 INFO    ] 2026-08-31 12:19:01
[2026-08-31 12:19:02,454.454 INFO    ] 2026-08-31 12:19:02
[2026-08-31 12:19:02,491.491 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:19:02,754.754 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:19:02,779.779 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:19:03,024.024 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:19:03,076.076 INFO    ] time= 31/08/2026 12:19:03
[2026-08-31 12:19:03,101.101 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:19:03,143.143 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:19:03,277.277 INFO    ] No existing commands found in stream
[2026-08-31 12:19:08,292.292 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:19:08,295.295 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-08-31 12:19:09,249.249 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 12:19:09,251.251 INFO    ] Checking for system updates...
[2026-08-31 12:19:09,287.287 INFO    ] 200
[2026-08-31 12:19:09,289.289 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:19:09,342.342 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:19:09,344.344 INFO    ] No update needed
[2026-08-31 12:19:09,347.347 INFO    ] Checking for camera pi updates...
[2026-08-31 12:19:09,380.380 INFO    ] 200
[2026-08-31 12:19:09,382.382 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:19:09,428.428 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:19:09,519.519 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:19:09,521.521 INFO    ] No camera update needed
[2026-08-31 12:19:09,523.523 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:19:09,526.526 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:19:09,531.531 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:19:09,536.536 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:19:11,576.576 INFO    ] ================================================
[2026-08-31 12:19:11,591.591 INFO    ] Launching Daemon at Mon Aug 31 12:19:11 IST 2026
[2026-08-31 12:19:11,602.602 INFO    ] ================================================
[2026-08-31 12:19:12,166.166 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:19:12
[2026-08-31 12:19:12,748.748 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:19:13,020.020 INFO    ] Initializing speech engine...
[2026-08-31 12:19:13,028.028 INFO    ] 2026-08-31 12:19:13
[2026-08-31 12:19:13,283.283 INFO    ] 2026-08-31 12:19:13
[2026-08-31 12:19:13,313.313 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:19:13,556.556 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:19:13,566.566 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:19:13,773.773 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:19:13,823.823 INFO    ] time= 31/08/2026 12:19:13
[2026-08-31 12:19:13,829.829 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:19:13,846.846 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:19:13,977.977 INFO    ] No existing commands found in stream
[2026-08-31 12:19:18,992.992 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:19:18,994.994 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-08-31 12:19:20,044.044 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 12:19:20,046.046 INFO    ] Checking for system updates...
[2026-08-31 12:19:20,088.088 INFO    ] 200
[2026-08-31 12:19:20,091.091 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:19:20,152.152 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:19:20,155.155 INFO    ] No update needed
[2026-08-31 12:19:20,158.158 INFO    ] Checking for camera pi updates...
[2026-08-31 12:19:20,193.193 INFO    ] 200
[2026-08-31 12:19:20,196.196 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:19:20,243.243 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:19:20,323.323 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:19:20,326.326 INFO    ] No camera update needed
[2026-08-31 12:19:20,329.329 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:19:20,332.332 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:19:20,338.338 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:19:20,343.343 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:19:22,385.385 INFO    ] ================================================
[2026-08-31 12:19:22,400.400 INFO    ] Launching Daemon at Mon Aug 31 12:19:22 IST 2026
[2026-08-31 12:19:22,411.411 INFO    ] ================================================
[2026-08-31 12:19:23,058.058 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:19:23
[2026-08-31 12:19:23,641.641 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:19:23,909.909 INFO    ] Initializing speech engine...
[2026-08-31 12:19:23,918.918 INFO    ] 2026-08-31 12:19:23
[2026-08-31 12:19:24,165.165 INFO    ] 2026-08-31 12:19:24
[2026-08-31 12:19:24,200.200 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:19:24,451.451 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:19:24,460.460 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:19:24,672.672 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:19:24,716.716 INFO    ] time= 31/08/2026 12:19:24
[2026-08-31 12:19:24,722.722 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:19:24,739.739 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:19:24,868.868 INFO    ] No existing commands found in stream
[2026-08-31 12:19:29,881.881 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:19:29,883.883 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-08-31 12:19:32,016.016 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 12:19:32,019.019 INFO    ] Checking for system updates...
[2026-08-31 12:19:32,061.061 INFO    ] 200
[2026-08-31 12:19:32,063.063 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:19:32,125.125 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:19:32,128.128 INFO    ] No update needed
[2026-08-31 12:19:32,131.131 INFO    ] Checking for camera pi updates...
[2026-08-31 12:19:32,170.170 INFO    ] 200
[2026-08-31 12:19:32,173.173 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:19:32,216.216 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:19:32,310.310 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:19:32,313.313 INFO    ] No camera update needed
[2026-08-31 12:19:32,315.315 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:19:32,318.318 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:19:32,325.325 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:19:32,330.330 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:19:34,373.373 INFO    ] ================================================
[2026-08-31 12:19:34,388.388 INFO    ] Launching Daemon at Mon Aug 31 12:19:34 IST 2026
[2026-08-31 12:19:34,398.398 INFO    ] ================================================
[2026-08-31 12:19:34,965.965 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:19:34
[2026-08-31 12:19:35,545.545 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:19:35,812.812 INFO    ] Initializing speech engine...
[2026-08-31 12:19:35,820.820 INFO    ] 2026-08-31 12:19:35
[2026-08-31 12:19:36,067.067 INFO    ] 2026-08-31 12:19:36
[2026-08-31 12:19:36,103.103 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:19:36,358.358 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:19:36,362.362 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:19:36,565.565 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:19:36,620.620 INFO    ] time= 31/08/2026 12:19:36
[2026-08-31 12:19:36,628.628 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:19:36,645.645 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:19:36,760.760 INFO    ] No existing commands found in stream
[2026-08-31 12:19:41,784.784 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:19:41,787.787 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-08-31 12:19:46,359.359 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 12:19:46,362.362 INFO    ] Checking for system updates...
[2026-08-31 12:19:46,401.401 INFO    ] 200
[2026-08-31 12:19:46,404.404 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:19:46,463.463 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:19:46,472.472 INFO    ] No update needed
[2026-08-31 12:19:46,474.474 INFO    ] Checking for camera pi updates...
[2026-08-31 12:19:46,530.530 INFO    ] 200
[2026-08-31 12:19:46,532.532 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:19:46,576.576 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:19:46,660.660 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:19:46,663.663 INFO    ] No camera update needed
[2026-08-31 12:19:46,666.666 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:19:46,669.669 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:19:46,675.675 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:19:46,681.681 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:19:48,725.725 INFO    ] ================================================
[2026-08-31 12:19:48,741.741 INFO    ] Launching Daemon at Mon Aug 31 12:19:48 IST 2026
[2026-08-31 12:19:48,751.751 INFO    ] ================================================
[2026-08-31 12:19:49,390.390 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:19:49
[2026-08-31 12:19:50,049.049 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:19:50,344.344 INFO    ] Initializing speech engine...
[2026-08-31 12:19:50,352.352 INFO    ] 2026-08-31 12:19:50
[2026-08-31 12:19:50,628.628 INFO    ] 2026-08-31 12:19:50
[2026-08-31 12:19:50,683.683 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:19:50,916.916 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:19:50,943.943 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:19:51,151.151 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:19:51,205.205 INFO    ] time= 31/08/2026 12:19:51
[2026-08-31 12:19:51,212.212 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:19:51,234.234 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:19:51,401.401 INFO    ] No existing commands found in stream
[2026-08-31 12:19:56,438.438 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:19:56,441.441 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-08-31 12:19:57,911.911 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 12:19:57,914.914 INFO    ] Checking for system updates...
[2026-08-31 12:19:57,961.961 INFO    ] 200
[2026-08-31 12:19:57,964.964 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-08-31 12:19:57,968.968 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-08-31 12:19:57,971.971 INFO    ] Checking for camera pi updates...
[2026-08-31 12:19:58,019.019 INFO    ] 200
[2026-08-31 12:19:58,022.022 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-08-31 12:19:58,025.025 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-08-31 12:19:58,028.028 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:19:58,032.032 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:19:58,038.038 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:19:58,044.044 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:20:00,090.090 INFO    ] ================================================
[2026-08-31 12:20:00,105.105 INFO    ] Launching Daemon at Mon Aug 31 12:20:00 IST 2026
[2026-08-31 12:20:00,116.116 INFO    ] ================================================
[2026-08-31 12:20:00,694.694 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:20:00
[2026-08-31 12:20:01,297.297 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:20:01,704.704 INFO    ] Initializing speech engine...
[2026-08-31 12:20:01,709.709 INFO    ] 2026-08-31 12:20:01
[2026-08-31 12:20:02,447.447 INFO    ] 2026-08-31 12:20:02
[2026-08-31 12:20:02,505.505 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:20:02,751.751 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:20:02,754.754 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:20:02,933.933 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:20:02,937.937 INFO    ] time= 31/08/2026 12:20:02
[2026-08-31 12:20:02,940.940 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:20:02,943.943 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:20:03,065.065 INFO    ] No existing commands found in stream
[2026-08-31 12:20:08,075.075 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:20:08,078.078 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-08-31 12:20:12,554.554 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 12:20:12,557.557 INFO    ] Checking for system updates...
[2026-08-31 12:20:12,596.596 INFO    ] 200
[2026-08-31 12:20:12,599.599 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:20:12,651.651 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:20:12,653.653 INFO    ] No update needed
[2026-08-31 12:20:12,655.655 INFO    ] Checking for camera pi updates...
[2026-08-31 12:20:12,689.689 INFO    ] 200
[2026-08-31 12:20:12,692.692 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:20:12,736.736 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:20:12,816.816 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:20:12,819.819 INFO    ] No camera update needed
[2026-08-31 12:20:12,821.821 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:20:12,823.823 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:20:12,829.829 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:20:12,834.834 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:20:14,875.875 INFO    ] ================================================
[2026-08-31 12:20:14,890.890 INFO    ] Launching Daemon at Mon Aug 31 12:20:14 IST 2026
[2026-08-31 12:20:14,901.901 INFO    ] ================================================
[2026-08-31 12:20:15,540.540 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:20:15
[2026-08-31 12:20:16,200.200 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:20:16,498.498 INFO    ] Initializing speech engine...
[2026-08-31 12:20:16,512.512 INFO    ] 2026-08-31 12:20:16
[2026-08-31 12:20:16,793.793 INFO    ] 2026-08-31 12:20:16
[2026-08-31 12:20:16,836.836 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:20:17,122.122 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:20:17,128.128 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:20:17,325.325 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:20:17,343.343 INFO    ] time= 31/08/2026 12:20:17
[2026-08-31 12:20:17,353.353 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:20:17,380.380 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:20:17,500.500 INFO    ] No existing commands found in stream
[2026-08-31 12:20:22,531.531 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:20:22,534.534 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-08-31 12:20:23,808.808 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 12:20:23,811.811 INFO    ] Checking for system updates...
[2026-08-31 12:20:23,848.848 INFO    ] 200
[2026-08-31 12:20:23,850.850 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:20:23,905.905 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:20:23,908.908 INFO    ] No update needed
[2026-08-31 12:20:23,911.911 INFO    ] Checking for camera pi updates...
[2026-08-31 12:20:23,945.945 INFO    ] 200
[2026-08-31 12:20:23,948.948 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:20:23,989.989 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:20:24,076.076 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:20:24,079.079 INFO    ] No camera update needed
[2026-08-31 12:20:24,081.081 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:20:24,084.084 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:20:24,089.089 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:20:24,094.094 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:20:26,134.134 INFO    ] ================================================
[2026-08-31 12:20:26,149.149 INFO    ] Launching Daemon at Mon Aug 31 12:20:26 IST 2026
[2026-08-31 12:20:26,159.159 INFO    ] ================================================
[2026-08-31 12:20:26,739.739 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:20:26
[2026-08-31 12:20:27,344.344 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:20:27,603.603 INFO    ] Initializing speech engine...
[2026-08-31 12:20:27,612.612 INFO    ] 2026-08-31 12:20:27
[2026-08-31 12:20:27,906.906 INFO    ] 2026-08-31 12:20:27
[2026-08-31 12:20:27,944.944 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:20:28,168.168 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:20:28,176.176 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:20:28,395.395 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:20:28,417.417 INFO    ] time= 31/08/2026 12:20:28
[2026-08-31 12:20:28,466.466 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:20:28,515.515 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:20:28,609.609 INFO    ] No existing commands found in stream
[2026-08-31 12:20:33,621.621 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:20:33,624.624 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-08-31 12:20:37,476.476 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 12:20:37,479.479 INFO    ] Checking for system updates...
[2026-08-31 12:20:37,516.516 INFO    ] 200
[2026-08-31 12:20:37,518.518 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:20:37,577.577 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:20:37,580.580 INFO    ] No update needed
[2026-08-31 12:20:37,582.582 INFO    ] Checking for camera pi updates...
[2026-08-31 12:20:37,616.616 INFO    ] 200
[2026-08-31 12:20:37,618.618 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:20:37,663.663 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:20:37,746.746 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:20:37,748.748 INFO    ] No camera update needed
[2026-08-31 12:20:37,751.751 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:20:37,753.753 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:20:37,759.759 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:20:37,764.764 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:20:39,804.804 INFO    ] ================================================
[2026-08-31 12:20:39,819.819 INFO    ] Launching Daemon at Mon Aug 31 12:20:39 IST 2026
[2026-08-31 12:20:39,830.830 INFO    ] ================================================
[2026-08-31 12:20:40,405.405 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:20:40
[2026-08-31 12:20:41,003.003 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:20:41,276.276 INFO    ] Initializing speech engine...
[2026-08-31 12:20:41,287.287 INFO    ] 2026-08-31 12:20:41
[2026-08-31 12:20:41,534.534 INFO    ] 2026-08-31 12:20:41
[2026-08-31 12:20:41,569.569 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:20:41,765.765 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:20:41,823.823 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:20:41,965.965 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:20:42,030.030 INFO    ] time= 31/08/2026 12:20:41
[2026-08-31 12:20:42,084.084 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:20:42,096.096 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:20:42,229.229 INFO    ] No existing commands found in stream
[2026-08-31 12:20:47,251.251 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:20:47,254.254 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-08-31 12:20:50,127.127 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 12:20:50,130.130 INFO    ] Checking for system updates...
[2026-08-31 12:20:50,166.166 INFO    ] 200
[2026-08-31 12:20:50,169.169 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:20:50,229.229 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:20:50,232.232 INFO    ] No update needed
[2026-08-31 12:20:50,235.235 INFO    ] Checking for camera pi updates...
[2026-08-31 12:20:50,269.269 INFO    ] 200
[2026-08-31 12:20:50,271.271 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:20:50,317.317 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:20:50,399.399 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:20:50,402.402 INFO    ] No camera update needed
[2026-08-31 12:20:50,404.404 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:20:50,406.406 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:20:50,412.412 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:20:50,417.417 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:20:52,459.459 INFO    ] ================================================
[2026-08-31 12:20:52,474.474 INFO    ] Launching Daemon at Mon Aug 31 12:20:52 IST 2026
[2026-08-31 12:20:52,485.485 INFO    ] ================================================
[2026-08-31 12:20:53,051.051 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:20:53
[2026-08-31 12:20:53,633.633 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:20:53,904.904 INFO    ] Initializing speech engine...
[2026-08-31 12:20:53,912.912 INFO    ] 2026-08-31 12:20:53
[2026-08-31 12:20:54,163.163 INFO    ] 2026-08-31 12:20:54
[2026-08-31 12:20:54,198.198 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:20:54,395.395 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:20:54,408.408 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:20:54,606.606 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:20:54,672.672 INFO    ] time= 31/08/2026 12:20:54
[2026-08-31 12:20:54,731.731 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:20:54,738.738 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:20:54,885.885 INFO    ] No existing commands found in stream
[2026-08-31 12:20:59,899.899 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:20:59,901.901 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-08-31 12:21:03,917.917 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 12:21:03,919.919 INFO    ] Checking for system updates...
[2026-08-31 12:21:03,956.956 INFO    ] 200
[2026-08-31 12:21:03,959.959 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:21:04,018.018 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:21:04,021.021 INFO    ] No update needed
[2026-08-31 12:21:04,024.024 INFO    ] Checking for camera pi updates...
[2026-08-31 12:21:04,060.060 INFO    ] 200
[2026-08-31 12:21:04,063.063 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:21:04,124.124 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:21:04,208.208 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:21:04,210.210 INFO    ] No camera update needed
[2026-08-31 12:21:04,213.213 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:21:04,215.215 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:21:04,220.220 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:21:04,225.225 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:21:06,266.266 INFO    ] ================================================
[2026-08-31 12:21:06,281.281 INFO    ] Launching Daemon at Mon Aug 31 12:21:06 IST 2026
[2026-08-31 12:21:06,293.293 INFO    ] ================================================
[2026-08-31 12:21:06,867.867 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:21:06
[2026-08-31 12:21:07,489.489 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:21:07,786.786 INFO    ] Initializing speech engine...
[2026-08-31 12:21:07,796.796 INFO    ] 2026-08-31 12:21:07
[2026-08-31 12:21:08,077.077 INFO    ] 2026-08-31 12:21:08
[2026-08-31 12:21:08,130.130 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:21:08,365.365 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:21:08,377.377 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:21:08,598.598 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:21:08,636.636 INFO    ] time= 31/08/2026 12:21:08
[2026-08-31 12:21:08,643.643 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:21:08,666.666 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:21:08,799.799 INFO    ] No existing commands found in stream
[2026-08-31 12:21:13,818.818 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:21:13,821.821 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-08-31 12:21:17,776.776 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 12:21:17,779.779 INFO    ] Checking for system updates...
[2026-08-31 12:21:17,816.816 INFO    ] 200
[2026-08-31 12:21:17,819.819 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:21:17,878.878 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:21:17,881.881 INFO    ] No update needed
[2026-08-31 12:21:17,884.884 INFO    ] Checking for camera pi updates...
[2026-08-31 12:21:17,919.919 INFO    ] 200
[2026-08-31 12:21:17,921.921 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:21:17,966.966 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:21:18,065.065 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:21:18,068.068 INFO    ] No camera update needed
[2026-08-31 12:21:18,070.070 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:21:18,072.072 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:21:18,078.078 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:21:18,082.082 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:21:20,122.122 INFO    ] ================================================
[2026-08-31 12:21:20,138.138 INFO    ] Launching Daemon at Mon Aug 31 12:21:20 IST 2026
[2026-08-31 12:21:20,149.149 INFO    ] ================================================
[2026-08-31 12:21:20,728.728 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:21:20
[2026-08-31 12:21:21,326.326 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:21:21,603.603 INFO    ] Initializing speech engine...
[2026-08-31 12:21:21,610.610 INFO    ] 2026-08-31 12:21:21
[2026-08-31 12:21:21,871.871 INFO    ] 2026-08-31 12:21:21
[2026-08-31 12:21:21,901.901 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:21:22,152.152 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:21:22,158.158 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:21:22,392.392 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:21:22,416.416 INFO    ] time= 31/08/2026 12:21:22
[2026-08-31 12:21:22,431.431 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:21:22,440.440 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:21:22,548.548 INFO    ] No existing commands found in stream
[2026-08-31 12:21:27,573.573 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:21:27,576.576 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-08-31 12:21:30,804.804 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 12:21:30,806.806 INFO    ] Checking for system updates...
[2026-08-31 12:21:30,844.844 INFO    ] 200
[2026-08-31 12:21:30,846.846 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:21:30,898.898 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:21:30,900.900 INFO    ] No update needed
[2026-08-31 12:21:30,903.903 INFO    ] Checking for camera pi updates...
[2026-08-31 12:21:30,936.936 INFO    ] 200
[2026-08-31 12:21:30,939.939 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:21:30,982.982 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:21:31,077.077 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:21:31,080.080 INFO    ] No camera update needed
[2026-08-31 12:21:31,082.082 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:21:31,084.084 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:21:31,090.090 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:21:31,095.095 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:21:33,140.140 INFO    ] ================================================
[2026-08-31 12:21:33,157.157 INFO    ] Launching Daemon at Mon Aug 31 12:21:33 IST 2026
[2026-08-31 12:21:33,170.170 INFO    ] ================================================
[2026-08-31 12:21:33,759.759 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:21:33
[2026-08-31 12:21:34,358.358 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:21:34,630.630 INFO    ] Initializing speech engine...
[2026-08-31 12:21:34,639.639 INFO    ] 2026-08-31 12:21:34
[2026-08-31 12:21:34,887.887 INFO    ] 2026-08-31 12:21:34
[2026-08-31 12:21:34,953.953 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:21:35,181.181 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:21:35,186.186 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:21:35,402.402 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:21:35,441.441 INFO    ] time= 31/08/2026 12:21:35
[2026-08-31 12:21:35,447.447 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:21:35,462.462 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:21:35,593.593 INFO    ] No existing commands found in stream
[2026-08-31 12:21:40,607.607 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:21:40,610.610 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-08-31 12:21:41,675.675 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 12:21:41,678.678 INFO    ] Checking for system updates...
[2026-08-31 12:21:41,713.713 INFO    ] 200
[2026-08-31 12:21:41,715.715 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:21:41,773.773 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:21:41,775.775 INFO    ] No update needed
[2026-08-31 12:21:41,778.778 INFO    ] Checking for camera pi updates...
[2026-08-31 12:21:41,814.814 INFO    ] 200
[2026-08-31 12:21:41,817.817 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:21:41,857.857 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:21:42,038.038 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:21:42,040.040 INFO    ] No camera update needed
[2026-08-31 12:21:42,045.045 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:21:42,048.048 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:21:42,053.053 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:21:42,058.058 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:21:44,098.098 INFO    ] ================================================
[2026-08-31 12:21:44,114.114 INFO    ] Launching Daemon at Mon Aug 31 12:21:44 IST 2026
[2026-08-31 12:21:44,125.125 INFO    ] ================================================
[2026-08-31 12:21:44,763.763 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:21:44
[2026-08-31 12:21:45,360.360 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:21:45,632.632 INFO    ] Initializing speech engine...
[2026-08-31 12:21:45,641.641 INFO    ] 2026-08-31 12:21:45
[2026-08-31 12:21:45,889.889 INFO    ] 2026-08-31 12:21:45
[2026-08-31 12:21:45,924.924 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:21:46,175.175 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:21:46,184.184 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:21:46,399.399 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:21:46,443.443 INFO    ] time= 31/08/2026 12:21:46
[2026-08-31 12:21:46,449.449 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:21:46,467.467 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:21:46,597.597 INFO    ] No existing commands found in stream
[2026-08-31 12:21:51,609.609 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:21:51,612.612 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-08-31 12:21:55,805.805 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 12:21:55,808.808 INFO    ] Checking for system updates...
[2026-08-31 12:21:55,844.844 INFO    ] 200
[2026-08-31 12:21:55,846.846 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:21:55,901.901 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:21:55,903.903 INFO    ] No update needed
[2026-08-31 12:21:55,905.905 INFO    ] Checking for camera pi updates...
[2026-08-31 12:21:55,939.939 INFO    ] 200
[2026-08-31 12:21:55,941.941 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:21:55,982.982 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:21:56,080.080 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:21:56,082.082 INFO    ] No camera update needed
[2026-08-31 12:21:56,085.085 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:21:56,087.087 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:21:56,093.093 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:21:56,098.098 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:21:58,142.142 INFO    ] ================================================
[2026-08-31 12:21:58,158.158 INFO    ] Launching Daemon at Mon Aug 31 12:21:58 IST 2026
[2026-08-31 12:21:58,169.169 INFO    ] ================================================
[2026-08-31 12:21:58,772.772 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:21:58
[2026-08-31 12:21:59,370.370 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:21:59,649.649 INFO    ] Initializing speech engine...
[2026-08-31 12:21:59,656.656 INFO    ] 2026-08-31 12:21:59
[2026-08-31 12:21:59,917.917 INFO    ] 2026-08-31 12:21:59
[2026-08-31 12:21:59,971.971 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:22:00,256.256 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:22:00,264.264 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:22:00,459.459 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:22:00,466.466 INFO    ] time= 31/08/2026 12:22:00
[2026-08-31 12:22:00,484.484 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:22:00,496.496 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:22:00,620.620 INFO    ] No existing commands found in stream
[2026-08-31 12:22:05,640.640 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:22:05,643.643 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-08-31 12:22:07,406.406 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 12:22:07,409.409 INFO    ] Checking for system updates...
[2026-08-31 12:22:07,444.444 INFO    ] 200
[2026-08-31 12:22:07,447.447 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:22:07,500.500 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:22:07,503.503 INFO    ] No update needed
[2026-08-31 12:22:07,505.505 INFO    ] Checking for camera pi updates...
[2026-08-31 12:22:07,541.541 INFO    ] 200
[2026-08-31 12:22:07,544.544 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:22:07,585.585 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:22:07,638.638 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:22:07,640.640 INFO    ] No camera update needed
[2026-08-31 12:22:07,643.643 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:22:07,645.645 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:22:07,651.651 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:22:07,656.656 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:22:09,695.695 INFO    ] ================================================
[2026-08-31 12:22:09,710.710 INFO    ] Launching Daemon at Mon Aug 31 12:22:09 IST 2026
[2026-08-31 12:22:09,722.722 INFO    ] ================================================
[2026-08-31 12:22:10,340.340 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:22:10
[2026-08-31 12:22:10,979.979 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:22:11,278.278 INFO    ] Initializing speech engine...
[2026-08-31 12:22:11,290.290 INFO    ] 2026-08-31 12:22:11
[2026-08-31 12:22:11,560.560 INFO    ] 2026-08-31 12:22:11
[2026-08-31 12:22:11,611.611 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:22:11,844.844 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:22:11,849.849 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:22:12,053.053 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:22:12,112.112 INFO    ] time= 31/08/2026 12:22:12
[2026-08-31 12:22:12,119.119 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:22:12,137.137 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:22:12,274.274 INFO    ] No existing commands found in stream
[2026-08-31 12:22:17,288.288 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:22:17,291.291 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-08-31 12:22:21,668.668 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 12:22:21,671.671 INFO    ] Checking for system updates...
[2026-08-31 12:22:21,710.710 INFO    ] 200
[2026-08-31 12:22:21,713.713 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:22:21,771.771 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:22:21,773.773 INFO    ] No update needed
[2026-08-31 12:22:21,776.776 INFO    ] Checking for camera pi updates...
[2026-08-31 12:22:21,814.814 INFO    ] 200
[2026-08-31 12:22:21,817.817 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:22:21,862.862 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:22:21,953.953 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:22:21,955.955 INFO    ] No camera update needed
[2026-08-31 12:22:21,958.958 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:22:21,961.961 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:22:21,967.967 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:22:21,973.973 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:22:24,013.013 INFO    ] ================================================
[2026-08-31 12:22:24,029.029 INFO    ] Launching Daemon at Mon Aug 31 12:22:24 IST 2026
[2026-08-31 12:22:24,040.040 INFO    ] ================================================
[2026-08-31 12:22:24,605.605 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:22:24
[2026-08-31 12:22:25,223.223 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:22:25,505.505 INFO    ] Initializing speech engine...
[2026-08-31 12:22:25,514.514 INFO    ] 2026-08-31 12:22:25
[2026-08-31 12:22:25,780.780 INFO    ] 2026-08-31 12:22:25
[2026-08-31 12:22:25,843.843 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:22:26,110.110 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:22:26,116.116 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:22:26,338.338 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:22:26,360.360 INFO    ] time= 31/08/2026 12:22:26
[2026-08-31 12:22:26,366.366 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:22:26,387.387 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:22:26,599.599 INFO    ] No existing commands found in stream
[2026-08-31 12:22:31,627.627 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:22:31,631.631 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-08-31 12:22:34,210.210 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 12:22:34,213.213 INFO    ] Checking for system updates...
[2026-08-31 12:22:34,253.253 INFO    ] 200
[2026-08-31 12:22:34,256.256 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:22:34,316.316 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:22:34,319.319 INFO    ] No update needed
[2026-08-31 12:22:34,322.322 INFO    ] Checking for camera pi updates...
[2026-08-31 12:22:34,357.357 INFO    ] 200
[2026-08-31 12:22:34,360.360 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:22:34,401.401 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:22:34,488.488 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:22:34,491.491 INFO    ] No camera update needed
[2026-08-31 12:22:34,493.493 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:22:34,496.496 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:22:34,502.502 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:22:34,508.508 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:22:36,548.548 INFO    ] ================================================
[2026-08-31 12:22:36,563.563 INFO    ] Launching Daemon at Mon Aug 31 12:22:36 IST 2026
[2026-08-31 12:22:36,573.573 INFO    ] ================================================
[2026-08-31 12:22:37,149.149 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:22:37
[2026-08-31 12:22:37,749.749 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:22:38,000.000 INFO    ] Initializing speech engine...
[2026-08-31 12:22:38,009.009 INFO    ] 2026-08-31 12:22:38
[2026-08-31 12:22:38,297.297 INFO    ] 2026-08-31 12:22:38
[2026-08-31 12:22:38,332.332 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:22:38,611.611 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:22:38,621.621 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:22:38,864.864 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:22:38,905.905 INFO    ] time= 31/08/2026 12:22:38
[2026-08-31 12:22:38,911.911 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:22:38,929.929 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:22:39,085.085 INFO    ] No existing commands found in stream
[2026-08-31 12:22:44,100.100 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:22:44,103.103 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-08-31 12:22:46,649.649 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 12:22:46,652.652 INFO    ] Checking for system updates...
[2026-08-31 12:22:46,688.688 INFO    ] 200
[2026-08-31 12:22:46,690.690 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:22:46,746.746 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:22:46,749.749 INFO    ] No update needed
[2026-08-31 12:22:46,751.751 INFO    ] Checking for camera pi updates...
[2026-08-31 12:22:46,785.785 INFO    ] 200
[2026-08-31 12:22:46,788.788 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:22:46,829.829 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:22:46,979.979 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:22:46,981.981 INFO    ] No camera update needed
[2026-08-31 12:22:46,984.984 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:22:46,986.986 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:22:46,992.992 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:22:46,998.998 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:22:49,039.039 INFO    ] ================================================
[2026-08-31 12:22:49,053.053 INFO    ] Launching Daemon at Mon Aug 31 12:22:49 IST 2026
[2026-08-31 12:22:49,064.064 INFO    ] ================================================
[2026-08-31 12:22:49,684.684 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:22:49
[2026-08-31 12:22:50,320.320 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:22:50,610.610 INFO    ] Initializing speech engine...
[2026-08-31 12:22:50,617.617 INFO    ] 2026-08-31 12:22:50
[2026-08-31 12:22:50,886.886 INFO    ] 2026-08-31 12:22:50
[2026-08-31 12:22:50,942.942 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:22:51,164.164 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:22:51,174.174 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:22:51,324.324 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:22:51,384.384 INFO    ] time= 31/08/2026 12:22:51
[2026-08-31 12:22:51,435.435 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:22:51,442.442 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:22:51,592.592 INFO    ] No existing commands found in stream
[2026-08-31 12:22:56,623.623 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:22:56,626.626 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-08-31 12:22:59,067.067 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 12:22:59,070.070 INFO    ] Checking for system updates...
[2026-08-31 12:22:59,118.118 INFO    ] 200
[2026-08-31 12:22:59,121.121 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:22:59,184.184 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:22:59,187.187 INFO    ] No update needed
[2026-08-31 12:22:59,189.189 INFO    ] Checking for camera pi updates...
[2026-08-31 12:22:59,225.225 INFO    ] 200
[2026-08-31 12:22:59,228.228 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:22:59,269.269 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:22:59,370.370 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:22:59,372.372 INFO    ] No camera update needed
[2026-08-31 12:22:59,375.375 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:22:59,377.377 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:22:59,382.382 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:22:59,387.387 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:23:01,428.428 INFO    ] ================================================
[2026-08-31 12:23:01,443.443 INFO    ] Launching Daemon at Mon Aug 31 12:23:01 IST 2026
[2026-08-31 12:23:01,454.454 INFO    ] ================================================
[2026-08-31 12:23:02,178.178 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:23:02
[2026-08-31 12:23:02,908.908 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:23:03,301.301 INFO    ] Initializing speech engine...
[2026-08-31 12:23:03,312.312 INFO    ] 2026-08-31 12:23:03
[2026-08-31 12:23:03,638.638 INFO    ] 2026-08-31 12:23:03
[2026-08-31 12:23:03,728.728 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:23:03,901.901 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:23:03,908.908 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:23:04,153.153 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:23:04,173.173 INFO    ] time= 31/08/2026 12:23:04
[2026-08-31 12:23:04,188.188 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:23:04,197.197 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:23:04,324.324 INFO    ] No existing commands found in stream
[2026-08-31 12:23:09,338.338 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:23:09,340.340 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-08-31 12:23:13,970.970 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 12:23:13,973.973 INFO    ] Checking for system updates...
[2026-08-31 12:23:14,012.012 INFO    ] 200
[2026-08-31 12:23:14,015.015 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:23:14,068.068 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:23:14,070.070 INFO    ] No update needed
[2026-08-31 12:23:14,073.073 INFO    ] Checking for camera pi updates...
[2026-08-31 12:23:14,111.111 INFO    ] 200
[2026-08-31 12:23:14,113.113 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:23:14,159.159 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:23:14,242.242 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:23:14,245.245 INFO    ] No camera update needed
[2026-08-31 12:23:14,247.247 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:23:14,250.250 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:23:14,255.255 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:23:14,260.260 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:23:16,303.303 INFO    ] ================================================
[2026-08-31 12:23:16,318.318 INFO    ] Launching Daemon at Mon Aug 31 12:23:16 IST 2026
[2026-08-31 12:23:16,328.328 INFO    ] ================================================
[2026-08-31 12:23:16,997.997 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:23:16
[2026-08-31 12:23:17,670.670 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:23:17,974.974 INFO    ] Initializing speech engine...
[2026-08-31 12:23:17,988.988 INFO    ] 2026-08-31 12:23:17
[2026-08-31 12:23:18,301.301 INFO    ] 2026-08-31 12:23:18
[2026-08-31 12:23:18,384.384 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:23:18,599.599 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:23:18,608.608 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:23:18,793.793 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:23:18,806.806 INFO    ] time= 31/08/2026 12:23:18
[2026-08-31 12:23:18,824.824 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:23:18,847.847 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:23:19,005.005 INFO    ] No existing commands found in stream
[2026-08-31 12:23:24,031.031 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:23:24,034.034 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-08-31 12:23:28,424.424 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 12:23:28,427.427 INFO    ] Checking for system updates...
[2026-08-31 12:23:28,464.464 INFO    ] 200
[2026-08-31 12:23:28,466.466 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:23:28,527.527 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:23:28,530.530 INFO    ] No update needed
[2026-08-31 12:23:28,533.533 INFO    ] Checking for camera pi updates...
[2026-08-31 12:23:28,568.568 INFO    ] 200
[2026-08-31 12:23:28,571.571 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:23:28,614.614 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:23:28,698.698 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:23:28,701.701 INFO    ] No camera update needed
[2026-08-31 12:23:28,703.703 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:23:28,706.706 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:23:28,712.712 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:23:28,718.718 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:23:30,760.760 INFO    ] ================================================
[2026-08-31 12:23:30,775.775 INFO    ] Launching Daemon at Mon Aug 31 12:23:30 IST 2026
[2026-08-31 12:23:30,786.786 INFO    ] ================================================
[2026-08-31 12:23:31,349.349 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:23:31
[2026-08-31 12:23:31,930.930 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:23:32,220.220 INFO    ] Initializing speech engine...
[2026-08-31 12:23:32,243.243 INFO    ] 2026-08-31 12:23:32
[2026-08-31 12:23:32,544.544 INFO    ] 2026-08-31 12:23:32
[2026-08-31 12:23:32,582.582 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:23:32,822.822 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:23:32,829.829 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:23:33,018.018 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:23:33,031.031 INFO    ] time= 31/08/2026 12:23:33
[2026-08-31 12:23:33,035.035 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:23:33,042.042 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:23:33,125.125 INFO    ] No existing commands found in stream
[2026-08-31 12:23:38,144.144 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:23:38,147.147 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-08-31 12:23:42,402.402 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 12:23:42,405.405 INFO    ] Checking for system updates...
[2026-08-31 12:23:42,445.445 INFO    ] 200
[2026-08-31 12:23:42,447.447 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:23:42,500.500 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:23:42,502.502 INFO    ] No update needed
[2026-08-31 12:23:42,505.505 INFO    ] Checking for camera pi updates...
[2026-08-31 12:23:42,538.538 INFO    ] 200
[2026-08-31 12:23:42,541.541 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:23:42,580.580 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:23:42,667.667 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:23:42,670.670 INFO    ] No camera update needed
[2026-08-31 12:23:42,675.675 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:23:42,678.678 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:23:42,685.685 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:23:42,692.692 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:23:44,733.733 INFO    ] ================================================
[2026-08-31 12:23:44,748.748 INFO    ] Launching Daemon at Mon Aug 31 12:23:44 IST 2026
[2026-08-31 12:23:44,758.758 INFO    ] ================================================
[2026-08-31 12:23:45,440.440 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:23:45
[2026-08-31 12:23:46,139.139 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:23:46,456.456 INFO    ] Initializing speech engine...
[2026-08-31 12:23:46,462.462 INFO    ] 2026-08-31 12:23:46
[2026-08-31 12:23:46,744.744 INFO    ] 2026-08-31 12:23:46
[2026-08-31 12:23:46,789.789 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:23:47,015.015 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:23:47,022.022 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:23:47,243.243 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:23:47,282.282 INFO    ] time= 31/08/2026 12:23:47
[2026-08-31 12:23:47,302.302 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:23:47,331.331 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:23:47,431.431 INFO    ] No existing commands found in stream
[2026-08-31 12:23:52,448.448 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:23:52,452.452 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-08-31 12:23:53,287.287 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 12:23:53,290.290 INFO    ] Checking for system updates...
[2026-08-31 12:23:53,331.331 INFO    ] 200
[2026-08-31 12:23:53,334.334 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:23:53,394.394 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:23:53,396.396 INFO    ] No update needed
[2026-08-31 12:23:53,399.399 INFO    ] Checking for camera pi updates...
[2026-08-31 12:23:53,432.432 INFO    ] 200
[2026-08-31 12:23:53,434.434 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:23:53,476.476 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:23:53,680.680 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:23:53,683.683 INFO    ] No camera update needed
[2026-08-31 12:23:53,685.685 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:23:53,687.687 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:23:53,693.693 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:23:53,698.698 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:23:55,738.738 INFO    ] ================================================
[2026-08-31 12:23:55,753.753 INFO    ] Launching Daemon at Mon Aug 31 12:23:55 IST 2026
[2026-08-31 12:23:55,764.764 INFO    ] ================================================
[2026-08-31 12:23:56,330.330 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:23:56
[2026-08-31 12:23:56,912.912 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:23:57,172.172 INFO    ] Initializing speech engine...
[2026-08-31 12:23:57,178.178 INFO    ] 2026-08-31 12:23:57
[2026-08-31 12:23:57,476.476 INFO    ] 2026-08-31 12:23:57
[2026-08-31 12:23:57,502.502 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:23:57,716.716 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:23:57,733.733 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:23:57,898.898 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:23:57,907.907 INFO    ] time= 31/08/2026 12:23:57
[2026-08-31 12:23:57,915.915 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:23:57,948.948 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:23:58,082.082 INFO    ] No existing commands found in stream
[2026-08-31 12:24:03,118.118 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:24:03,120.120 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-08-31 12:24:06,312.312 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 12:24:06,315.315 INFO    ] Checking for system updates...
[2026-08-31 12:24:06,350.350 INFO    ] 200
[2026-08-31 12:24:06,352.352 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:24:06,404.404 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:24:06,407.407 INFO    ] No update needed
[2026-08-31 12:24:06,409.409 INFO    ] Checking for camera pi updates...
[2026-08-31 12:24:06,443.443 INFO    ] 200
[2026-08-31 12:24:06,446.446 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:24:06,487.487 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:24:06,561.561 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:24:06,563.563 INFO    ] No camera update needed
[2026-08-31 12:24:06,566.566 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:24:06,568.568 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:24:06,573.573 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:24:06,578.578 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:24:08,618.618 INFO    ] ================================================
[2026-08-31 12:24:08,634.634 INFO    ] Launching Daemon at Mon Aug 31 12:24:08 IST 2026
[2026-08-31 12:24:08,644.644 INFO    ] ================================================
[2026-08-31 12:24:09,231.231 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:24:09
[2026-08-31 12:24:09,839.839 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:24:10,118.118 INFO    ] Initializing speech engine...
[2026-08-31 12:24:10,126.126 INFO    ] 2026-08-31 12:24:10
[2026-08-31 12:24:10,390.390 INFO    ] 2026-08-31 12:24:10
[2026-08-31 12:24:10,425.425 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:24:10,671.671 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:24:10,681.681 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:24:10,844.844 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:24:10,909.909 INFO    ] time= 31/08/2026 12:24:10
[2026-08-31 12:24:10,963.963 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:24:10,989.989 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:24:11,124.124 INFO    ] No existing commands found in stream
[2026-08-31 12:24:16,152.152 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:24:16,155.155 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-08-31 12:24:20,051.051 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 12:24:20,053.053 INFO    ] Checking for system updates...
[2026-08-31 12:24:20,093.093 INFO    ] 200
[2026-08-31 12:24:20,096.096 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:24:20,147.147 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:24:20,150.150 INFO    ] No update needed
[2026-08-31 12:24:20,152.152 INFO    ] Checking for camera pi updates...
[2026-08-31 12:24:20,190.190 INFO    ] 200
[2026-08-31 12:24:20,193.193 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:24:20,233.233 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:24:20,286.286 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:24:20,288.288 INFO    ] No camera update needed
[2026-08-31 12:24:20,291.291 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:24:20,293.293 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:24:20,298.298 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:24:20,303.303 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:24:22,343.343 INFO    ] ================================================
[2026-08-31 12:24:22,358.358 INFO    ] Launching Daemon at Mon Aug 31 12:24:22 IST 2026
[2026-08-31 12:24:22,369.369 INFO    ] ================================================
[2026-08-31 12:24:23,044.044 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:24:23
[2026-08-31 12:24:23,738.738 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:24:24,050.050 INFO    ] Initializing speech engine...
[2026-08-31 12:24:24,061.061 INFO    ] 2026-08-31 12:24:24
[2026-08-31 12:24:24,374.374 INFO    ] 2026-08-31 12:24:24
[2026-08-31 12:24:24,459.459 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:24:24,674.674 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:24:24,683.683 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:24:24,874.874 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:24:24,881.881 INFO    ] time= 31/08/2026 12:24:24
[2026-08-31 12:24:24,899.899 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:24:24,929.929 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:24:25,033.033 INFO    ] No existing commands found in stream
[2026-08-31 12:24:30,047.047 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:24:30,050.050 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-08-31 12:24:30,866.866 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 12:24:30,870.870 INFO    ] Checking for system updates...
[2026-08-31 12:24:30,911.911 INFO    ] 200
[2026-08-31 12:24:30,914.914 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:24:30,968.968 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:24:30,971.971 INFO    ] No update needed
[2026-08-31 12:24:30,973.973 INFO    ] Checking for camera pi updates...
[2026-08-31 12:24:31,010.010 INFO    ] 200
[2026-08-31 12:24:31,013.013 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:24:31,060.060 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:24:31,143.143 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:24:31,146.146 INFO    ] No camera update needed
[2026-08-31 12:24:31,149.149 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:24:31,151.151 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:24:31,158.158 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:24:31,164.164 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:24:33,208.208 INFO    ] ================================================
[2026-08-31 12:24:33,224.224 INFO    ] Launching Daemon at Mon Aug 31 12:24:33 IST 2026
[2026-08-31 12:24:33,234.234 INFO    ] ================================================
[2026-08-31 12:24:33,901.901 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:24:33
[2026-08-31 12:24:34,587.587 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:24:34,898.898 INFO    ] Initializing speech engine...
[2026-08-31 12:24:34,910.910 INFO    ] 2026-08-31 12:24:34
[2026-08-31 12:24:35,220.220 INFO    ] 2026-08-31 12:24:35
[2026-08-31 12:24:35,308.308 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:24:35,520.520 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:24:35,535.535 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:24:35,765.765 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:24:35,777.777 INFO    ] time= 31/08/2026 12:24:35
[2026-08-31 12:24:35,854.854 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:24:35,920.920 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:24:36,038.038 INFO    ] No existing commands found in stream
[2026-08-31 12:24:41,064.064 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:24:41,068.068 INFO    ] Waiting 4.00 seconds before fallback handling...
[2026-08-31 12:24:45,601.601 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 12:24:45,604.604 INFO    ] Checking for system updates...
[2026-08-31 12:24:45,642.642 INFO    ] 200
[2026-08-31 12:24:45,645.645 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:24:45,697.697 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:24:45,700.700 INFO    ] No update needed
[2026-08-31 12:24:45,702.702 INFO    ] Checking for camera pi updates...
[2026-08-31 12:24:45,736.736 INFO    ] 200
[2026-08-31 12:24:45,739.739 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:24:45,780.780 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:24:45,865.865 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:24:45,868.868 INFO    ] No camera update needed
[2026-08-31 12:24:45,870.870 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:24:45,872.872 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:24:45,877.877 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:24:45,882.882 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:24:47,921.921 INFO    ] ================================================
[2026-08-31 12:24:47,937.937 INFO    ] Launching Daemon at Mon Aug 31 12:24:47 IST 2026
[2026-08-31 12:24:47,948.948 INFO    ] ================================================
[2026-08-31 12:24:48,625.625 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:24:48
[2026-08-31 12:24:49,299.299 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:24:49,614.614 INFO    ] Initializing speech engine...
[2026-08-31 12:24:49,626.626 INFO    ] 2026-08-31 12:24:49
[2026-08-31 12:24:49,918.918 INFO    ] 2026-08-31 12:24:49
[2026-08-31 12:24:49,955.955 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:24:50,185.185 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:24:50,191.191 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:24:50,328.328 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:24:50,389.389 INFO    ] time= 31/08/2026 12:24:50
[2026-08-31 12:24:50,448.448 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:24:50,464.464 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:24:50,618.618 INFO    ] No existing commands found in stream
[2026-08-31 12:24:55,632.632 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:24:55,635.635 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-08-31 12:24:56,348.348 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 12:24:56,350.350 INFO    ] Checking for system updates...
[2026-08-31 12:24:56,391.391 INFO    ] 200
[2026-08-31 12:24:56,393.393 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:24:56,454.454 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:24:56,456.456 INFO    ] No update needed
[2026-08-31 12:24:56,459.459 INFO    ] Checking for camera pi updates...
[2026-08-31 12:24:56,492.492 INFO    ] 200
[2026-08-31 12:24:56,494.494 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:24:56,540.540 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:24:56,625.625 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:24:56,628.628 INFO    ] No camera update needed
[2026-08-31 12:24:56,630.630 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:24:56,632.632 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:24:56,638.638 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:24:56,643.643 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:24:58,683.683 INFO    ] ================================================
[2026-08-31 12:24:58,698.698 INFO    ] Launching Daemon at Mon Aug 31 12:24:58 IST 2026
[2026-08-31 12:24:58,709.709 INFO    ] ================================================
[2026-08-31 12:24:59,299.299 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:24:59
[2026-08-31 12:24:59,900.900 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:25:00,178.178 INFO    ] Initializing speech engine...
[2026-08-31 12:25:00,186.186 INFO    ] 2026-08-31 12:25:00
[2026-08-31 12:25:00,446.446 INFO    ] 2026-08-31 12:25:00
[2026-08-31 12:25:00,500.500 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:25:00,727.727 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:25:00,733.733 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:25:00,865.865 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:25:00,931.931 INFO    ] time= 31/08/2026 12:25:00
[2026-08-31 12:25:00,985.985 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:25:00,999.999 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:25:01,130.130 INFO    ] No existing commands found in stream
[2026-08-31 12:25:06,154.154 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:25:06,157.157 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-08-31 12:25:07,042.042 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 12:25:07,045.045 INFO    ] Checking for system updates...
[2026-08-31 12:25:07,082.082 INFO    ] 200
[2026-08-31 12:25:07,085.085 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:25:07,144.144 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:25:07,147.147 INFO    ] No update needed
[2026-08-31 12:25:07,150.150 INFO    ] Checking for camera pi updates...
[2026-08-31 12:25:07,185.185 INFO    ] 200
[2026-08-31 12:25:07,188.188 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:25:07,235.235 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:25:07,323.323 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:25:07,326.326 INFO    ] No camera update needed
[2026-08-31 12:25:07,329.329 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:25:07,332.332 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:25:07,338.338 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:25:07,343.343 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:25:09,384.384 INFO    ] ================================================
[2026-08-31 12:25:09,399.399 INFO    ] Launching Daemon at Mon Aug 31 12:25:09 IST 2026
[2026-08-31 12:25:09,409.409 INFO    ] ================================================
[2026-08-31 12:25:09,996.996 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:25:09
[2026-08-31 12:25:10,600.600 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:25:10,883.883 INFO    ] Initializing speech engine...
[2026-08-31 12:25:10,891.891 INFO    ] 2026-08-31 12:25:10
[2026-08-31 12:25:11,164.164 INFO    ] 2026-08-31 12:25:11
[2026-08-31 12:25:11,216.216 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:25:11,446.446 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:25:11,452.452 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:25:11,690.690 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:25:11,713.713 INFO    ] time= 31/08/2026 12:25:11
[2026-08-31 12:25:11,732.732 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:25:11,760.760 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:25:11,867.867 INFO    ] No existing commands found in stream
[2026-08-31 12:25:16,889.889 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:25:16,892.892 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-08-31 12:25:19,919.919 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 12:25:19,922.922 INFO    ] Checking for system updates...
[2026-08-31 12:25:19,959.959 INFO    ] 200
[2026-08-31 12:25:19,961.961 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:25:20,021.021 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:25:20,023.023 INFO    ] No update needed
[2026-08-31 12:25:20,026.026 INFO    ] Checking for camera pi updates...
[2026-08-31 12:25:20,064.064 INFO    ] 200
[2026-08-31 12:25:20,067.067 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:25:20,113.113 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:25:20,216.216 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:25:20,219.219 INFO    ] No camera update needed
[2026-08-31 12:25:20,221.221 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:25:20,224.224 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:25:20,230.230 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:25:20,236.236 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:25:22,277.277 INFO    ] ================================================
[2026-08-31 12:25:22,293.293 INFO    ] Launching Daemon at Mon Aug 31 12:25:22 IST 2026
[2026-08-31 12:25:22,303.303 INFO    ] ================================================
[2026-08-31 12:25:22,946.946 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:25:22
[2026-08-31 12:25:23,608.608 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:25:23,911.911 INFO    ] Initializing speech engine...
[2026-08-31 12:25:23,923.923 INFO    ] 2026-08-31 12:25:23
[2026-08-31 12:25:24,231.231 INFO    ] 2026-08-31 12:25:24
[2026-08-31 12:25:24,314.314 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:25:24,524.524 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:25:24,532.532 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:25:24,720.720 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:25:24,733.733 INFO    ] time= 31/08/2026 12:25:24
[2026-08-31 12:25:24,751.751 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:25:24,761.761 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:25:24,891.891 INFO    ] No existing commands found in stream
[2026-08-31 12:25:29,930.930 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:25:29,934.934 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-08-31 12:25:31,283.283 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 12:25:31,288.288 INFO    ] Checking for system updates...
[2026-08-31 12:25:31,330.330 INFO    ] 200
[2026-08-31 12:25:31,333.333 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:25:31,398.398 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:25:31,401.401 INFO    ] No update needed
[2026-08-31 12:25:31,403.403 INFO    ] Checking for camera pi updates...
[2026-08-31 12:25:31,440.440 INFO    ] 200
[2026-08-31 12:25:31,442.442 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:25:31,486.486 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:25:31,574.574 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:25:31,577.577 INFO    ] No camera update needed
[2026-08-31 12:25:31,580.580 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:25:31,583.583 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:25:31,589.589 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:25:31,595.595 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:25:33,635.635 INFO    ] ================================================
[2026-08-31 12:25:33,650.650 INFO    ] Launching Daemon at Mon Aug 31 12:25:33 IST 2026
[2026-08-31 12:25:33,661.661 INFO    ] ================================================
[2026-08-31 12:25:34,226.226 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:25:34
[2026-08-31 12:25:34,809.809 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:25:35,062.062 INFO    ] Initializing speech engine...
[2026-08-31 12:25:35,071.071 INFO    ] 2026-08-31 12:25:35
[2026-08-31 12:25:35,362.362 INFO    ] 2026-08-31 12:25:35
[2026-08-31 12:25:35,399.399 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:25:35,687.687 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:25:35,699.699 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:25:35,939.939 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:25:35,990.990 INFO    ] time= 31/08/2026 12:25:35
[2026-08-31 12:25:35,997.997 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:25:36,013.013 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:25:36,130.130 INFO    ] No existing commands found in stream
[2026-08-31 12:25:41,152.152 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:25:41,155.155 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-08-31 12:25:42,552.552 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 12:25:42,555.555 INFO    ] Checking for system updates...
[2026-08-31 12:25:42,590.590 INFO    ] 200
[2026-08-31 12:25:42,593.593 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:25:42,646.646 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:25:42,649.649 INFO    ] No update needed
[2026-08-31 12:25:42,651.651 INFO    ] Checking for camera pi updates...
[2026-08-31 12:25:42,685.685 INFO    ] 200
[2026-08-31 12:25:42,687.687 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:25:42,728.728 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:25:42,809.809 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:25:42,811.811 INFO    ] No camera update needed
[2026-08-31 12:25:42,814.814 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:25:42,816.816 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:25:42,821.821 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:25:42,826.826 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:25:44,866.866 INFO    ] ================================================
[2026-08-31 12:25:44,881.881 INFO    ] Launching Daemon at Mon Aug 31 12:25:44 IST 2026
[2026-08-31 12:25:44,892.892 INFO    ] ================================================
[2026-08-31 12:25:45,532.532 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:25:45
[2026-08-31 12:25:46,190.190 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:25:46,492.492 INFO    ] Initializing speech engine...
[2026-08-31 12:25:46,503.503 INFO    ] 2026-08-31 12:25:46
[2026-08-31 12:25:46,814.814 INFO    ] 2026-08-31 12:25:46
[2026-08-31 12:25:46,896.896 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:25:47,074.074 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:25:47,079.079 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:25:47,310.310 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:25:47,328.328 INFO    ] time= 31/08/2026 12:25:47
[2026-08-31 12:25:47,336.336 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:25:47,364.364 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:25:47,467.467 INFO    ] No existing commands found in stream
[2026-08-31 12:25:52,480.480 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:25:52,483.483 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-08-31 12:25:57,006.006 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 12:25:57,009.009 INFO    ] Checking for system updates...
[2026-08-31 12:25:57,045.045 INFO    ] 200
[2026-08-31 12:25:57,048.048 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:25:57,100.100 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:25:57,102.102 INFO    ] No update needed
[2026-08-31 12:25:57,104.104 INFO    ] Checking for camera pi updates...
[2026-08-31 12:25:57,137.137 INFO    ] 200
[2026-08-31 12:25:57,140.140 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:25:57,181.181 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:25:57,364.364 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:25:57,366.366 INFO    ] No camera update needed
[2026-08-31 12:25:57,369.369 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:25:57,371.371 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:25:57,376.376 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:25:57,381.381 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:25:59,421.421 INFO    ] ================================================
[2026-08-31 12:25:59,435.435 INFO    ] Launching Daemon at Mon Aug 31 12:25:59 IST 2026
[2026-08-31 12:25:59,446.446 INFO    ] ================================================
[2026-08-31 12:26:00,016.016 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:26:00
[2026-08-31 12:26:00,597.597 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:26:00,864.864 INFO    ] Initializing speech engine...
[2026-08-31 12:26:00,874.874 INFO    ] 2026-08-31 12:26:00
[2026-08-31 12:26:01,119.119 INFO    ] 2026-08-31 12:26:01
[2026-08-31 12:26:01,153.153 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:26:01,409.409 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:26:01,413.413 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:26:01,607.607 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:26:01,611.611 INFO    ] time= 31/08/2026 12:26:01
[2026-08-31 12:26:01,620.620 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:26:01,630.630 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:26:01,721.721 INFO    ] No existing commands found in stream
[2026-08-31 12:26:06,731.731 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:26:06,733.733 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-08-31 12:26:10,906.906 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 12:26:10,909.909 INFO    ] Checking for system updates...
[2026-08-31 12:26:10,944.944 INFO    ] 200
[2026-08-31 12:26:10,947.947 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:26:11,000.000 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:26:11,003.003 INFO    ] No update needed
[2026-08-31 12:26:11,005.005 INFO    ] Checking for camera pi updates...
[2026-08-31 12:26:11,039.039 INFO    ] 200
[2026-08-31 12:26:11,042.042 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:26:11,082.082 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:26:11,168.168 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:26:11,170.170 INFO    ] No camera update needed
[2026-08-31 12:26:11,172.172 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:26:11,175.175 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:26:11,180.180 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:26:11,185.185 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:26:13,228.228 INFO    ] ================================================
[2026-08-31 12:26:13,243.243 INFO    ] Launching Daemon at Mon Aug 31 12:26:13 IST 2026
[2026-08-31 12:26:13,254.254 INFO    ] ================================================
[2026-08-31 12:26:13,825.825 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:26:13
[2026-08-31 12:26:14,409.409 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:26:14,679.679 INFO    ] Initializing speech engine...
[2026-08-31 12:26:14,688.688 INFO    ] 2026-08-31 12:26:14
[2026-08-31 12:26:14,934.934 INFO    ] 2026-08-31 12:26:14
[2026-08-31 12:26:14,969.969 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:26:15,278.278 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:26:15,286.286 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:26:15,482.482 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:26:15,497.497 INFO    ] time= 31/08/2026 12:26:15
[2026-08-31 12:26:15,505.505 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:26:15,531.531 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:26:15,656.656 INFO    ] No existing commands found in stream
[2026-08-31 12:26:20,686.686 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:26:20,689.689 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-08-31 12:26:23,411.411 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 12:26:23,414.414 INFO    ] Checking for system updates...
[2026-08-31 12:26:23,449.449 INFO    ] 200
[2026-08-31 12:26:23,452.452 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:26:23,505.505 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:26:23,507.507 INFO    ] No update needed
[2026-08-31 12:26:23,510.510 INFO    ] Checking for camera pi updates...
[2026-08-31 12:26:23,543.543 INFO    ] 200
[2026-08-31 12:26:23,546.546 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:26:23,586.586 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:26:23,648.648 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:26:23,651.651 INFO    ] No camera update needed
[2026-08-31 12:26:23,653.653 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:26:23,655.655 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:26:23,661.661 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:26:23,666.666 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:26:25,708.708 INFO    ] ================================================
[2026-08-31 12:26:25,723.723 INFO    ] Launching Daemon at Mon Aug 31 12:26:25 IST 2026
[2026-08-31 12:26:25,734.734 INFO    ] ================================================
[2026-08-31 12:26:26,371.371 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:26:26
[2026-08-31 12:26:27,027.027 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:26:27,315.315 INFO    ] Initializing speech engine...
[2026-08-31 12:26:27,328.328 INFO    ] 2026-08-31 12:26:27
[2026-08-31 12:26:27,616.616 INFO    ] 2026-08-31 12:26:27
[2026-08-31 12:26:27,661.661 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:26:28,006.006 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:26:28,044.044 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:26:28,283.283 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:26:28,322.322 INFO    ] time= 31/08/2026 12:26:28
[2026-08-31 12:26:28,372.372 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:26:28,472.472 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:26:28,588.588 INFO    ] No existing commands found in stream
[2026-08-31 12:26:33,599.599 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:26:33,602.602 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-08-31 12:26:38,048.048 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 12:26:38,051.051 INFO    ] Checking for system updates...
[2026-08-31 12:26:38,087.087 INFO    ] 200
[2026-08-31 12:26:38,089.089 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:26:38,141.141 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:26:38,144.144 INFO    ] No update needed
[2026-08-31 12:26:38,146.146 INFO    ] Checking for camera pi updates...
[2026-08-31 12:26:38,180.180 INFO    ] 200
[2026-08-31 12:26:38,182.182 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:26:38,222.222 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:26:38,324.324 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:26:38,327.327 INFO    ] No camera update needed
[2026-08-31 12:26:38,329.329 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:26:38,332.332 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:26:38,337.337 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:26:38,342.342 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:26:40,382.382 INFO    ] ================================================
[2026-08-31 12:26:40,397.397 INFO    ] Launching Daemon at Mon Aug 31 12:26:40 IST 2026
[2026-08-31 12:26:40,408.408 INFO    ] ================================================
[2026-08-31 12:26:40,981.981 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:26:40
[2026-08-31 12:26:41,563.563 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:26:41,813.813 INFO    ] Initializing speech engine...
[2026-08-31 12:26:41,836.836 INFO    ] 2026-08-31 12:26:41
[2026-08-31 12:26:42,092.092 INFO    ] 2026-08-31 12:26:42
[2026-08-31 12:26:42,127.127 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:26:42,321.321 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:26:42,327.327 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:26:42,474.474 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:26:42,482.482 INFO    ] time= 31/08/2026 12:26:42
[2026-08-31 12:26:42,490.490 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:26:42,495.495 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:26:42,618.618 INFO    ] No existing commands found in stream
[2026-08-31 12:26:47,643.643 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:26:47,646.646 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-08-31 12:26:48,598.598 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 12:26:48,600.600 INFO    ] Checking for system updates...
[2026-08-31 12:26:48,636.636 INFO    ] 200
[2026-08-31 12:26:48,638.638 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:26:48,691.691 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:26:48,693.693 INFO    ] No update needed
[2026-08-31 12:26:48,696.696 INFO    ] Checking for camera pi updates...
[2026-08-31 12:26:48,729.729 INFO    ] 200
[2026-08-31 12:26:48,732.732 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:26:48,772.772 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:26:48,853.853 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:26:48,855.855 INFO    ] No camera update needed
[2026-08-31 12:26:48,858.858 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:26:48,860.860 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:26:48,865.865 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:26:48,870.870 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:26:50,909.909 INFO    ] ================================================
[2026-08-31 12:26:50,925.925 INFO    ] Launching Daemon at Mon Aug 31 12:26:50 IST 2026
[2026-08-31 12:26:50,936.936 INFO    ] ================================================
[2026-08-31 12:26:51,566.566 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:26:51
[2026-08-31 12:26:52,149.149 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:26:52,397.397 INFO    ] Initializing speech engine...
[2026-08-31 12:26:52,420.420 INFO    ] 2026-08-31 12:26:52
[2026-08-31 12:26:52,673.673 INFO    ] 2026-08-31 12:26:52
[2026-08-31 12:26:52,708.708 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:26:52,964.964 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:26:52,968.968 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:26:53,107.107 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:26:53,172.172 INFO    ] time= 31/08/2026 12:26:53
[2026-08-31 12:26:53,228.228 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:26:53,234.234 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:26:53,359.359 INFO    ] No existing commands found in stream
[2026-08-31 12:26:58,386.386 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:26:58,389.389 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-08-31 12:27:00,593.593 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 12:27:00,596.596 INFO    ] Checking for system updates...
[2026-08-31 12:27:00,635.635 INFO    ] 200
[2026-08-31 12:27:00,638.638 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:27:00,690.690 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:27:00,693.693 INFO    ] No update needed
[2026-08-31 12:27:00,695.695 INFO    ] Checking for camera pi updates...
[2026-08-31 12:27:00,729.729 INFO    ] 200
[2026-08-31 12:27:00,731.731 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:27:00,772.772 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:27:00,864.864 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:27:00,866.866 INFO    ] No camera update needed
[2026-08-31 12:27:00,869.869 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:27:00,871.871 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:27:00,876.876 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:27:00,881.881 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:27:02,931.931 INFO    ] ================================================
[2026-08-31 12:27:02,950.950 INFO    ] Launching Daemon at Mon Aug 31 12:27:02 IST 2026
[2026-08-31 12:27:02,961.961 INFO    ] ================================================
[2026-08-31 12:27:03,593.593 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:27:03
[2026-08-31 12:27:04,174.174 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:27:04,453.453 INFO    ] Initializing speech engine...
[2026-08-31 12:27:04,462.462 INFO    ] 2026-08-31 12:27:04
[2026-08-31 12:27:04,713.713 INFO    ] 2026-08-31 12:27:04
[2026-08-31 12:27:04,739.739 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:27:04,914.914 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:27:04,925.925 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:27:05,144.144 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:27:05,151.151 INFO    ] time= 31/08/2026 12:27:05
[2026-08-31 12:27:05,157.157 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:27:05,216.216 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:27:05,353.353 INFO    ] No existing commands found in stream
[2026-08-31 12:27:10,378.378 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:27:10,381.381 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-08-31 12:27:15,945.945 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 12:27:15,947.947 INFO    ] Checking for system updates...
[2026-08-31 12:27:15,984.984 INFO    ] 200
[2026-08-31 12:27:15,987.987 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:27:16,041.041 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:27:16,044.044 INFO    ] No update needed
[2026-08-31 12:27:16,046.046 INFO    ] Checking for camera pi updates...
[2026-08-31 12:27:16,080.080 INFO    ] 200
[2026-08-31 12:27:16,083.083 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:27:16,124.124 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:27:16,206.206 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:27:16,209.209 INFO    ] No camera update needed
[2026-08-31 12:27:16,211.211 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:27:16,214.214 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:27:16,220.220 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:27:16,226.226 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:27:18,269.269 INFO    ] ================================================
[2026-08-31 12:27:18,285.285 INFO    ] Launching Daemon at Mon Aug 31 12:27:18 IST 2026
[2026-08-31 12:27:18,295.295 INFO    ] ================================================
[2026-08-31 12:27:18,861.861 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:27:18
[2026-08-31 12:27:19,443.443 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:27:19,688.688 INFO    ] Initializing speech engine...
[2026-08-31 12:27:19,702.702 INFO    ] 2026-08-31 12:27:19
[2026-08-31 12:27:19,961.961 INFO    ] 2026-08-31 12:27:19
[2026-08-31 12:27:19,996.996 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:27:20,246.246 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:27:20,255.255 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:27:20,493.493 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:27:20,513.513 INFO    ] time= 31/08/2026 12:27:20
[2026-08-31 12:27:20,519.519 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:27:20,536.536 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:27:20,692.692 INFO    ] No existing commands found in stream
[2026-08-31 12:27:25,722.722 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:27:25,725.725 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-08-31 12:27:27,728.728 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 12:27:27,731.731 INFO    ] Checking for system updates...
[2026-08-31 12:27:27,770.770 INFO    ] 200
[2026-08-31 12:27:27,772.772 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:27:27,825.825 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:27:27,828.828 INFO    ] No update needed
[2026-08-31 12:27:27,831.831 INFO    ] Checking for camera pi updates...
[2026-08-31 12:27:27,864.864 INFO    ] 200
[2026-08-31 12:27:27,867.867 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:27:27,908.908 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:27:27,994.994 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:27:27,996.996 INFO    ] No camera update needed
[2026-08-31 12:27:27,999.999 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:27:28,001.001 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:27:28,006.006 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:27:28,011.011 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:27:30,052.052 INFO    ] ================================================
[2026-08-31 12:27:30,067.067 INFO    ] Launching Daemon at Mon Aug 31 12:27:30 IST 2026
[2026-08-31 12:27:30,078.078 INFO    ] ================================================
[2026-08-31 12:27:30,688.688 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:27:30
[2026-08-31 12:27:31,283.283 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:27:31,558.558 INFO    ] Initializing speech engine...
[2026-08-31 12:27:31,567.567 INFO    ] 2026-08-31 12:27:31
[2026-08-31 12:27:31,896.896 INFO    ] 2026-08-31 12:27:31
[2026-08-31 12:27:31,981.981 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:27:32,274.274 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:27:32,345.345 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:27:32,654.654 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:27:32,680.680 INFO    ] time= 31/08/2026 12:27:32
[2026-08-31 12:27:32,741.741 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:27:32,807.807 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:27:33,014.014 INFO    ] No existing commands found in stream
[2026-08-31 12:27:38,027.027 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:27:38,030.030 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-08-31 12:27:42,290.290 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 12:27:42,293.293 INFO    ] Checking for system updates...
[2026-08-31 12:27:42,330.330 INFO    ] 200
[2026-08-31 12:27:42,333.333 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:27:42,387.387 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:27:42,390.390 INFO    ] No update needed
[2026-08-31 12:27:42,392.392 INFO    ] Checking for camera pi updates...
[2026-08-31 12:27:42,428.428 INFO    ] 200
[2026-08-31 12:27:42,431.431 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:27:42,472.472 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:27:42,555.555 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:27:42,557.557 INFO    ] No camera update needed
[2026-08-31 12:27:42,560.560 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:27:42,563.563 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:27:42,569.569 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:27:42,575.575 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:27:44,616.616 INFO    ] ================================================
[2026-08-31 12:27:44,632.632 INFO    ] Launching Daemon at Mon Aug 31 12:27:44 IST 2026
[2026-08-31 12:27:44,642.642 INFO    ] ================================================
[2026-08-31 12:27:45,294.294 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:27:45
[2026-08-31 12:27:45,966.966 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:27:46,271.271 INFO    ] Initializing speech engine...
[2026-08-31 12:27:46,279.279 INFO    ] 2026-08-31 12:27:46
[2026-08-31 12:27:46,556.556 INFO    ] 2026-08-31 12:27:46
[2026-08-31 12:27:46,612.612 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:27:48,927.927 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:27:48,941.941 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:27:51,672.672 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:27:51,675.675 INFO    ] time= 31/08/2026 12:27:51
[2026-08-31 12:27:51,678.678 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:27:51,681.681 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:27:53,896.896 INFO    ] No existing commands found in stream
[2026-08-31 12:27:58,907.907 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:27:58,910.910 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-08-31 12:28:08,030.030 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 12:28:08,033.033 INFO    ] Checking for system updates...
[2026-08-31 12:28:08,070.070 INFO    ] 200
[2026-08-31 12:28:08,073.073 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:28:08,126.126 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:28:08,129.129 INFO    ] No update needed
[2026-08-31 12:28:08,131.131 INFO    ] Checking for camera pi updates...
[2026-08-31 12:28:08,165.165 INFO    ] 200
[2026-08-31 12:28:08,168.168 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:28:08,209.209 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:28:08,278.278 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:28:08,281.281 INFO    ] No camera update needed
[2026-08-31 12:28:08,283.283 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:28:08,285.285 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:28:08,290.290 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:28:08,295.295 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:28:10,335.335 INFO    ] ================================================
[2026-08-31 12:28:10,350.350 INFO    ] Launching Daemon at Mon Aug 31 12:28:10 IST 2026
[2026-08-31 12:28:10,361.361 INFO    ] ================================================
[2026-08-31 12:28:10,932.932 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:28:10
[2026-08-31 12:28:11,516.516 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:28:11,783.783 INFO    ] Initializing speech engine...
[2026-08-31 12:28:11,792.792 INFO    ] 2026-08-31 12:28:11
[2026-08-31 12:28:12,037.037 INFO    ] 2026-08-31 12:28:12
[2026-08-31 12:28:12,071.071 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:28:13,111.111 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:28:13,141.141 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:28:14,640.640 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:28:14,652.652 INFO    ] time= 31/08/2026 12:28:14
[2026-08-31 12:28:14,661.661 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:28:14,676.676 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:28:16,512.512 INFO    ] No existing commands found in stream
[2026-08-31 12:28:21,521.521 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:28:21,524.524 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-08-31 12:28:35,239.239 INFO    ] <class 'urllib3.exceptions.MaxRetryError'>
[2026-08-31 12:28:35,266.266 INFO    ] ('HTTPSConnectionPool(host=\'neuustore.com\', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM08202202 (Caused by ReadTimeoutError("HTTPSConnectionPool(host=\'neuustore.com\', port=443): Read timed out. (read timeout=5)",))',)
[2026-08-31 12:28:35,276.276 INFO    ] HTTPSConnectionPool(host='neuustore.com', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM08202202 (Caused by ReadTimeoutError("HTTPSConnectionPool(host='neuustore.com', port=443): Read timed out. (read timeout=5)",))
[2026-08-31 12:28:35,296.296 INFO    ] None
[2026-08-31 12:28:35,298.298 INFO    ] Checking for system updates...
[2026-08-31 12:28:35,346.346 INFO    ] 200
[2026-08-31 12:28:35,349.349 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:28:35,408.408 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:28:35,410.410 INFO    ] No update needed
[2026-08-31 12:28:35,412.412 INFO    ] Checking for camera pi updates...
[2026-08-31 12:28:35,450.450 INFO    ] 200
[2026-08-31 12:28:35,452.452 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:28:35,493.493 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:28:35,591.591 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:28:35,594.594 INFO    ] No camera update needed
[2026-08-31 12:28:35,597.597 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:28:35,600.600 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:28:35,606.606 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:28:35,611.611 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:28:37,652.652 INFO    ] ================================================
[2026-08-31 12:28:37,667.667 INFO    ] Launching Daemon at Mon Aug 31 12:28:37 IST 2026
[2026-08-31 12:28:37,678.678 INFO    ] ================================================
[2026-08-31 12:28:38,341.341 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:28:38
[2026-08-31 12:28:38,958.958 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:28:39,245.245 INFO    ] Initializing speech engine...
[2026-08-31 12:28:39,259.259 INFO    ] 2026-08-31 12:28:39
[2026-08-31 12:28:39,532.532 INFO    ] 2026-08-31 12:28:39
[2026-08-31 12:28:39,600.600 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:28:42,788.788 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:28:42,791.791 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:28:44,279.279 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:28:44,282.282 INFO    ] time= 31/08/2026 12:28:44
[2026-08-31 12:28:44,285.285 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:28:44,288.288 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:28:44,868.868 INFO    ] No existing commands found in stream
[2026-08-31 12:28:49,878.878 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:28:49,881.881 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-08-31 12:28:57,615.615 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 12:28:57,618.618 INFO    ] Checking for system updates...
[2026-08-31 12:28:57,655.655 INFO    ] 200
[2026-08-31 12:28:57,658.658 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:28:57,713.713 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:28:57,716.716 INFO    ] No update needed
[2026-08-31 12:28:57,719.719 INFO    ] Checking for camera pi updates...
[2026-08-31 12:28:57,753.753 INFO    ] 200
[2026-08-31 12:28:57,756.756 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:28:57,798.798 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:28:57,899.899 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:28:57,902.902 INFO    ] No camera update needed
[2026-08-31 12:28:57,905.905 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:28:57,908.908 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:28:57,914.914 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:28:57,920.920 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:28:59,962.962 INFO    ] ================================================
[2026-08-31 12:28:59,977.977 INFO    ] Launching Daemon at Mon Aug 31 12:28:59 IST 2026
[2026-08-31 12:28:59,988.988 INFO    ] ================================================
[2026-08-31 12:29:00,553.553 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:29:00
[2026-08-31 12:29:01,135.135 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:29:01,401.401 INFO    ] Initializing speech engine...
[2026-08-31 12:29:01,414.414 INFO    ] 2026-08-31 12:29:01
[2026-08-31 12:29:01,682.682 INFO    ] 2026-08-31 12:29:01
[2026-08-31 12:29:01,720.720 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:29:03,831.831 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:29:03,860.860 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:29:06,618.618 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:29:06,621.621 INFO    ] time= 31/08/2026 12:29:06
[2026-08-31 12:29:06,623.623 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:29:06,625.625 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:29:08,976.976 INFO    ] No existing commands found in stream
[2026-08-31 12:29:13,985.985 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:29:13,988.988 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-08-31 12:29:20,443.443 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 12:29:20,446.446 INFO    ] Checking for system updates...
[2026-08-31 12:29:20,481.481 INFO    ] 200
[2026-08-31 12:29:20,484.484 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:29:20,535.535 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:29:20,538.538 INFO    ] No update needed
[2026-08-31 12:29:20,540.540 INFO    ] Checking for camera pi updates...
[2026-08-31 12:29:20,574.574 INFO    ] 200
[2026-08-31 12:29:20,576.576 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:29:20,622.622 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:29:20,717.717 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:29:20,720.720 INFO    ] No camera update needed
[2026-08-31 12:29:20,722.722 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:29:20,724.724 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:29:20,730.730 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:29:20,734.734 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:29:22,774.774 INFO    ] ================================================
[2026-08-31 12:29:22,789.789 INFO    ] Launching Daemon at Mon Aug 31 12:29:22 IST 2026
[2026-08-31 12:29:22,800.800 INFO    ] ================================================
[2026-08-31 12:29:23,362.362 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:29:23
[2026-08-31 12:29:23,943.943 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:29:24,220.220 INFO    ] Initializing speech engine...
[2026-08-31 12:29:24,227.227 INFO    ] 2026-08-31 12:29:24
[2026-08-31 12:29:24,505.505 INFO    ] 2026-08-31 12:29:24
[2026-08-31 12:29:24,563.563 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:29:26,370.370 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:29:26,375.375 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:29:28,028.028 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:29:28,030.030 INFO    ] time= 31/08/2026 12:29:28
[2026-08-31 12:29:28,033.033 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:29:28,035.035 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:29:30,023.023 INFO    ] No existing commands found in stream
[2026-08-31 12:29:35,032.032 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:29:35,035.035 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-08-31 12:29:40,600.600 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 12:29:40,603.603 INFO    ] Checking for system updates...
[2026-08-31 12:29:40,642.642 INFO    ] 200
[2026-08-31 12:29:40,644.644 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:29:40,703.703 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:29:40,706.706 INFO    ] No update needed
[2026-08-31 12:29:40,708.708 INFO    ] Checking for camera pi updates...
[2026-08-31 12:29:40,741.741 INFO    ] 200
[2026-08-31 12:29:40,744.744 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:29:40,785.785 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:29:40,879.879 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:29:40,881.881 INFO    ] No camera update needed
[2026-08-31 12:29:40,884.884 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:29:40,886.886 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:29:40,891.891 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:29:40,896.896 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:29:42,936.936 INFO    ] ================================================
[2026-08-31 12:29:42,951.951 INFO    ] Launching Daemon at Mon Aug 31 12:29:42 IST 2026
[2026-08-31 12:29:42,962.962 INFO    ] ================================================
[2026-08-31 12:29:43,526.526 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:29:43
[2026-08-31 12:29:44,107.107 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:29:44,381.381 INFO    ] Initializing speech engine...
[2026-08-31 12:29:44,391.391 INFO    ] 2026-08-31 12:29:44
[2026-08-31 12:29:44,656.656 INFO    ] 2026-08-31 12:29:44
[2026-08-31 12:29:44,691.691 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:29:45,630.630 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:29:45,679.679 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:29:46,043.043 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:29:46,048.048 INFO    ] time= 31/08/2026 12:29:46
[2026-08-31 12:29:46,053.053 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:29:46,059.059 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:29:46,215.215 INFO    ] No existing commands found in stream
[2026-08-31 12:29:51,226.226 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:29:51,229.229 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-08-31 12:29:53,184.184 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 12:29:53,187.187 INFO    ] Checking for system updates...
[2026-08-31 12:29:53,223.223 INFO    ] 200
[2026-08-31 12:29:53,225.225 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:29:53,278.278 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:29:53,281.281 INFO    ] No update needed
[2026-08-31 12:29:53,283.283 INFO    ] Checking for camera pi updates...
[2026-08-31 12:29:53,316.316 INFO    ] 200
[2026-08-31 12:29:53,319.319 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:29:53,361.361 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:29:53,448.448 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:29:53,450.450 INFO    ] No camera update needed
[2026-08-31 12:29:53,452.452 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:29:53,455.455 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:29:53,460.460 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:29:53,465.465 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:29:55,505.505 INFO    ] ================================================
[2026-08-31 12:29:55,520.520 INFO    ] Launching Daemon at Mon Aug 31 12:29:55 IST 2026
[2026-08-31 12:29:55,532.532 INFO    ] ================================================
[2026-08-31 12:29:56,100.100 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:29:56
[2026-08-31 12:29:56,684.684 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:29:56,952.952 INFO    ] Initializing speech engine...
[2026-08-31 12:29:56,962.962 INFO    ] 2026-08-31 12:29:56
[2026-08-31 12:29:57,208.208 INFO    ] 2026-08-31 12:29:57
[2026-08-31 12:29:57,244.244 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:29:57,440.440 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:29:57,497.497 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:29:57,643.643 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:29:57,698.698 INFO    ] time= 31/08/2026 12:29:57
[2026-08-31 12:29:57,758.758 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:29:57,769.769 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:29:57,949.949 INFO    ] No existing commands found in stream
[2026-08-31 12:30:02,980.980 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:30:02,984.984 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-08-31 12:30:11,425.425 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 12:30:11,428.428 INFO    ] Checking for system updates...
[2026-08-31 12:30:11,473.473 INFO    ] 200
[2026-08-31 12:30:11,475.475 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:30:11,533.533 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:30:11,535.535 INFO    ] No update needed
[2026-08-31 12:30:11,538.538 INFO    ] Checking for camera pi updates...
[2026-08-31 12:30:11,575.575 INFO    ] 200
[2026-08-31 12:30:11,578.578 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:30:11,619.619 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:30:11,720.720 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:30:11,723.723 INFO    ] No camera update needed
[2026-08-31 12:30:11,725.725 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:30:11,728.728 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:30:11,733.733 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:30:11,738.738 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:30:13,781.781 INFO    ] ================================================
[2026-08-31 12:30:13,797.797 INFO    ] Launching Daemon at Mon Aug 31 12:30:13 IST 2026
[2026-08-31 12:30:13,808.808 INFO    ] ================================================
[2026-08-31 12:30:14,462.462 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:30:14
[2026-08-31 12:30:15,126.126 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:30:15,426.426 INFO    ] Initializing speech engine...
[2026-08-31 12:30:15,434.434 INFO    ] 2026-08-31 12:30:15
[2026-08-31 12:30:15,751.751 INFO    ] 2026-08-31 12:30:15
[2026-08-31 12:30:15,834.834 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:30:17,205.205 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:30:17,215.215 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:30:18,636.636 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:30:18,639.639 INFO    ] time= 31/08/2026 12:30:18
[2026-08-31 12:30:18,642.642 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:30:18,644.644 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:30:20,341.341 INFO    ] No existing commands found in stream
[2026-08-31 12:30:25,350.350 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:30:25,353.353 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-08-31 12:30:32,157.157 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 12:30:32,160.160 INFO    ] Checking for system updates...
[2026-08-31 12:30:32,207.207 INFO    ] 200
[2026-08-31 12:30:32,210.210 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:30:32,275.275 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:30:32,278.278 INFO    ] No update needed
[2026-08-31 12:30:32,282.282 INFO    ] Checking for camera pi updates...
[2026-08-31 12:30:32,319.319 INFO    ] 200
[2026-08-31 12:30:32,322.322 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:30:32,370.370 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:30:32,465.465 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:30:32,468.468 INFO    ] No camera update needed
[2026-08-31 12:30:32,471.471 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:30:32,474.474 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:30:32,480.480 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:30:32,485.485 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:30:34,530.530 INFO    ] ================================================
[2026-08-31 12:30:34,546.546 INFO    ] Launching Daemon at Mon Aug 31 12:30:34 IST 2026
[2026-08-31 12:30:34,557.557 INFO    ] ================================================
[2026-08-31 12:30:35,138.138 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:30:35
[2026-08-31 12:30:35,808.808 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:30:36,110.110 INFO    ] Initializing speech engine...
[2026-08-31 12:30:36,118.118 INFO    ] 2026-08-31 12:30:36
[2026-08-31 12:30:36,435.435 INFO    ] 2026-08-31 12:30:36
[2026-08-31 12:30:36,521.521 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:30:38,477.477 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:30:38,485.485 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:30:40,297.297 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:30:40,301.301 INFO    ] time= 31/08/2026 12:30:40
[2026-08-31 12:30:40,303.303 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:30:40,306.306 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:30:42,433.433 INFO    ] No existing commands found in stream
[2026-08-31 12:30:47,443.443 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:30:47,446.446 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-08-31 12:30:55,485.485 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 12:30:55,488.488 INFO    ] Checking for system updates...
[2026-08-31 12:30:55,525.525 INFO    ] 200
[2026-08-31 12:30:55,528.528 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:30:55,581.581 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:30:55,584.584 INFO    ] No update needed
[2026-08-31 12:30:55,586.586 INFO    ] Checking for camera pi updates...
[2026-08-31 12:30:55,625.625 INFO    ] 200
[2026-08-31 12:30:55,628.628 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:30:55,679.679 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:30:55,794.794 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:30:55,796.796 INFO    ] No camera update needed
[2026-08-31 12:30:55,799.799 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:30:55,801.801 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:30:55,807.807 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:30:55,812.812 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:30:57,851.851 INFO    ] ================================================
[2026-08-31 12:30:57,867.867 INFO    ] Launching Daemon at Mon Aug 31 12:30:57 IST 2026
[2026-08-31 12:30:57,878.878 INFO    ] ================================================
[2026-08-31 12:30:58,447.447 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:30:58
[2026-08-31 12:30:59,031.031 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:30:59,294.294 INFO    ] Initializing speech engine...
[2026-08-31 12:30:59,308.308 INFO    ] 2026-08-31 12:30:59
[2026-08-31 12:30:59,562.562 INFO    ] 2026-08-31 12:30:59
[2026-08-31 12:30:59,597.597 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:31:02,820.820 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:31:02,822.822 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:31:07,296.296 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:31:07,299.299 INFO    ] time= 31/08/2026 12:31:07
[2026-08-31 12:31:07,302.302 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:31:07,304.304 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:31:10,629.629 INFO    ] No existing commands found in stream
[2026-08-31 12:31:15,639.639 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:31:15,642.642 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-08-31 12:31:29,044.044 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 12:31:29,047.047 INFO    ] Checking for system updates...
[2026-08-31 12:31:29,087.087 INFO    ] 200
[2026-08-31 12:31:29,090.090 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:31:29,144.144 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:31:29,148.148 INFO    ] No update needed
[2026-08-31 12:31:29,150.150 INFO    ] Checking for camera pi updates...
[2026-08-31 12:31:29,188.188 INFO    ] 200
[2026-08-31 12:31:29,191.191 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:31:29,233.233 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:31:29,327.327 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:31:29,329.329 INFO    ] No camera update needed
[2026-08-31 12:31:29,332.332 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:31:29,335.335 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:31:29,341.341 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:31:29,346.346 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:31:31,389.389 INFO    ] ================================================
[2026-08-31 12:31:31,405.405 INFO    ] Launching Daemon at Mon Aug 31 12:31:31 IST 2026
[2026-08-31 12:31:31,416.416 INFO    ] ================================================
[2026-08-31 12:31:32,020.020 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:31:32
[2026-08-31 12:31:32,635.635 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:31:32,906.906 INFO    ] Initializing speech engine...
[2026-08-31 12:31:32,912.912 INFO    ] 2026-08-31 12:31:32
[2026-08-31 12:31:33,157.157 INFO    ] 2026-08-31 12:31:33
[2026-08-31 12:31:33,192.192 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:31:35,233.233 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:31:35,239.239 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:31:37,820.820 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:31:37,823.823 INFO    ] time= 31/08/2026 12:31:37
[2026-08-31 12:31:37,825.825 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:31:37,828.828 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:31:38,630.630 INFO    ] No existing commands found in stream
[2026-08-31 12:31:43,640.640 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:31:43,642.642 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-08-31 12:31:49,170.170 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 12:31:49,173.173 INFO    ] Checking for system updates...
[2026-08-31 12:31:49,209.209 INFO    ] 200
[2026-08-31 12:31:49,212.212 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:31:49,266.266 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:31:49,269.269 INFO    ] No update needed
[2026-08-31 12:31:49,272.272 INFO    ] Checking for camera pi updates...
[2026-08-31 12:31:49,312.312 INFO    ] 200
[2026-08-31 12:31:49,316.316 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:31:49,362.362 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:31:49,462.462 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:31:49,465.465 INFO    ] No camera update needed
[2026-08-31 12:31:49,468.468 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:31:49,470.470 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:31:49,476.476 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:31:49,482.482 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:31:51,524.524 INFO    ] ================================================
[2026-08-31 12:31:51,540.540 INFO    ] Launching Daemon at Mon Aug 31 12:31:51 IST 2026
[2026-08-31 12:31:51,551.551 INFO    ] ================================================
[2026-08-31 12:31:52,132.132 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:31:52
[2026-08-31 12:31:52,720.720 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:31:52,973.973 INFO    ] Initializing speech engine...
[2026-08-31 12:31:52,982.982 INFO    ] 2026-08-31 12:31:52
[2026-08-31 12:31:53,273.273 INFO    ] 2026-08-31 12:31:53
[2026-08-31 12:31:53,308.308 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:31:54,958.958 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:31:54,966.966 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:31:56,343.343 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:31:56,386.386 INFO    ] time= 31/08/2026 12:31:56
[2026-08-31 12:31:56,412.412 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:31:56,423.423 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:31:57,633.633 INFO    ] No existing commands found in stream
[2026-08-31 12:32:02,641.641 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:32:02,645.645 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-08-31 12:32:10,905.905 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 12:32:10,907.907 INFO    ] Checking for system updates...
[2026-08-31 12:32:10,946.946 INFO    ] 200
[2026-08-31 12:32:10,948.948 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:32:11,005.005 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:32:11,008.008 INFO    ] No update needed
[2026-08-31 12:32:11,010.010 INFO    ] Checking for camera pi updates...
[2026-08-31 12:32:11,044.044 INFO    ] 200
[2026-08-31 12:32:11,046.046 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:32:11,087.087 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:32:11,154.154 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:32:11,157.157 INFO    ] No camera update needed
[2026-08-31 12:32:11,161.161 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:32:11,163.163 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:32:11,170.170 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:32:11,177.177 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:32:13,218.218 INFO    ] ================================================
[2026-08-31 12:32:13,234.234 INFO    ] Launching Daemon at Mon Aug 31 12:32:13 IST 2026
[2026-08-31 12:32:13,245.245 INFO    ] ================================================
[2026-08-31 12:32:13,886.886 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:32:13
[2026-08-31 12:32:14,546.546 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:32:14,848.848 INFO    ] Initializing speech engine...
[2026-08-31 12:32:14,856.856 INFO    ] 2026-08-31 12:32:14
[2026-08-31 12:32:15,134.134 INFO    ] 2026-08-31 12:32:15
[2026-08-31 12:32:15,198.198 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:32:17,237.237 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:32:17,250.250 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:32:19,298.298 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:32:19,302.302 INFO    ] time= 31/08/2026 12:32:19
[2026-08-31 12:32:19,304.304 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:32:19,307.307 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:32:20,064.064 INFO    ] No existing commands found in stream
[2026-08-31 12:32:21,954.954 INFO    ] Received new command: ID=1788159741924-0
[2026-08-31 12:32:21,956.956 INFO    ] process_and_cleanup_command: msg_id=1788159741924-0
[2026-08-31 12:32:21,959.959 INFO    ] is_command_expired: timestamp=2026-08-31T07:02:21.764Z, expiry=30s
[2026-08-31 12:32:22,455.455 INFO    ] Command removed from stream: 1788159741924-0. returning for processing...
[2026-08-31 12:32:22,458.458 INFO    ] ***** get_valid_command
[2026-08-31 12:32:22,461.461 INFO    ] {'data': '{"request_id":"start-order-1788159741763-zst42i82i","orderId":"TM08202202260831123127341","is_vending":false}', 'timestamp': '2026-08-31T07:02:21.764Z', 'timeout': '10', 'source': 'webapp', 'command': 'start-order'}
[2026-08-31 12:32:22,464.464 INFO    ] ***** Parsed command data: {'request_id': 'start-order-1788159741763-zst42i82i', 'is_vending': False, 'orderId': 'TM08202202260831123127341'}
[2026-08-31 12:32:22,467.467 INFO    ] Handling start order...
[2026-08-31 12:32:22,469.469 INFO    ] handle_start_order_command
[2026-08-31 12:32:22,476.476 INFO    ] _send_start_order_success: request_id=start-order-1788159741763-zst42i82i, order_id=TM08202202260831123127341
[2026-08-31 12:32:22,479.479 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM08202202
[2026-08-31 12:32:23,937.937 INFO    ] [_send_start_order_success] Message added to stream with ID: 1788159743908-0
[2026-08-31 12:32:23,940.940 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-08-31 12:32:23,943.943 INFO    ] Checking for system updates...
[2026-08-31 12:32:23,987.987 INFO    ] 200
[2026-08-31 12:32:23,990.990 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:32:24,044.044 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:32:24,047.047 INFO    ] No update needed
[2026-08-31 12:32:24,050.050 INFO    ] Checking for camera pi updates...
[2026-08-31 12:32:24,085.085 INFO    ] 200
[2026-08-31 12:32:24,088.088 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:32:24,134.134 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:32:24,220.220 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:32:24,223.223 INFO    ] No camera update needed
[2026-08-31 12:32:24,226.226 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:32:24,229.229 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:32:24,235.235 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:32:24,240.240 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:32:26,280.280 INFO    ] ================================================
[2026-08-31 12:32:26,296.296 INFO    ] Launching Daemon at Mon Aug 31 12:32:26 IST 2026
[2026-08-31 12:32:26,309.309 INFO    ] ================================================
[2026-08-31 12:32:26,889.889 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:32:26
[2026-08-31 12:32:27,494.494 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:32:27,768.768 INFO    ] Initializing speech engine...
[2026-08-31 12:32:27,774.774 INFO    ] 2026-08-31 12:32:27
[2026-08-31 12:32:28,034.034 INFO    ] 2026-08-31 12:32:28
[2026-08-31 12:32:28,064.064 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:32:28,674.674 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:32:28,720.720 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:32:30,424.424 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:32:30,435.435 INFO    ] time= 31/08/2026 12:32:30
[2026-08-31 12:32:30,453.453 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:32:30,460.460 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:32:31,797.797 INFO    ] Found 2 existing command(s) in stream
[2026-08-31 12:32:31,800.800 INFO    ] Checking historical command: ID=1788159743908-0
[2026-08-31 12:32:31,802.802 INFO    ] process_and_cleanup_command: msg_id=1788159743908-0
[2026-08-31 12:32:31,805.805 INFO    ] is_command_expired: timestamp=2026-08-31T07:02:22.477650Z, expiry=30s
[2026-08-31 12:32:32,835.835 INFO    ] Command removed from stream: 1788159743908-0. returning for processing...
[2026-08-31 12:32:32,837.837 INFO    ] ***** get_valid_command
[2026-08-31 12:32:32,840.840 INFO    ] {'metadata_request_id': 'start-order-1788159741763-zst42i82i', 'status': 'success', 'timestamp': '2026-08-31T07:02:22.477650Z', 'metadata_order_id': 'TM08202202260831123127341', 'message_type': 'command_response', 'imei': 'TM08202202', 'message': 'start-order success'}
[2026-08-31 12:32:32,842.842 INFO    ] Checking historical command: ID=1788159745434-0
[2026-08-31 12:32:32,844.844 INFO    ] process_and_cleanup_command: msg_id=1788159745434-0
[2026-08-31 12:32:32,847.847 INFO    ] is_command_expired: timestamp=2026-08-31T07:02:25.245Z, expiry=30s
[2026-08-31 12:32:33,238.238 INFO    ] Command removed from stream: 1788159745434-0. returning for processing...
[2026-08-31 12:32:33,240.240 INFO    ] ***** get_valid_command
[2026-08-31 12:32:33,242.242 INFO    ] {'command': 'process-order', 'timeout': '60', 'data': '{"request_id":"process-order-1788159745244-uojcq7t8x","orderId":"TM08202202260831123127341","is_vending":false,"accessCode":"67310882"}', 'timestamp': '2026-08-31T07:02:25.245Z', 'source': 'webapp'}
[2026-08-31 12:32:33,245.245 INFO    ] ***** Parsed command data: {'is_vending': False, 'accessCode': '67310882', 'request_id': 'process-order-1788159745244-uojcq7t8x', 'orderId': 'TM08202202260831123127341'}
[2026-08-31 12:32:33,247.247 INFO    ] Handling process order...
[2026-08-31 12:32:33,249.249 INFO    ] Processing process-order command...
[2026-08-31 12:32:33,252.252 INFO    ] 🔍 Lock file Order ID: TM08202202260831123127341, TS: 2026-08-31 12:32:22
[2026-08-31 12:32:33,265.265 INFO    ] ✅ Order lock valid for TM08202202260831123127341
[2026-08-31 12:32:33,267.267 INFO    ] Received access code in process-order, skipping PHP API call
[2026-08-31 12:32:33,269.269 INFO    ] processing access code 67310882 for order TM08202202260831123127341
[2026-08-31 12:32:33,273.273 INFO    ] 🔍 Lock file Order ID: TM08202202260831123127341, TS: 2026-08-31 12:32:22
[2026-08-31 12:32:33,276.276 INFO    ] ✅ Order lock valid for TM08202202260831123127341
[2026-08-31 12:32:33,278.278 INFO    ] 2026-08-31 12:32:33
[2026-08-31 12:32:33,320.320 INFO    ] 200
[2026-08-31 12:32:33,322.322 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:32:33,325.325 INFO    ] 67310882
[2026-08-31 12:32:33,327.327 INFO    ] 2026-08-31 12:32:33
[2026-08-31 12:32:33,330.330 INFO    ] session id :950699223
[2026-08-31 12:32:33,332.332 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=67310882&imei=TM08202202&session_id=950699223
[2026-08-31 12:32:37,830.830 INFO    ] 200
[2026-08-31 12:32:37,832.832 INFO    ] {"msg": "Order Data", "data": {"access_code": "67310882", "invoice_bill": "70", "mobile": "9986757783", "order_id": "TM08202202260831123127341", "bill_amount": "70", "proposed_sku_json": [{"qty": 2, "offer_desc": "", "image_url": "https://images.tinymart.in/product/4500677-4669.png", "sku_total": 20, "mrp": "10", "tray_id": "38", "name": "Eat Bit Peanut  Chikki 32gm", "offer_id": "", "skuid": "4500677", "unit_price": 10, "door_id": "2"}, {"qty": 2, "offer_desc": "", "image_url": "https://images.tinymart.in/product/4500723-3888.png", "sku_total": 20, "mrp": "10", "tray_id": "23", "name": "MaxVita Moong daal 25gm", "offer_id": "", "skuid": "4500723", "unit_price": 10, "door_id": "1"}, {"qty": 2, "offer_desc": "", "image_url": "https://images.tinymart.in/product/4500672-7226.webp", "sku_total": 20, "mrp": "10", "tray_id": "24", "name": "Modern kitchens Garlic Mixture 26gm", "offer_id": "", "skuid": "4500672", "unit_price": 10, "door_id": "1"}, {"qty": 1, "offer_desc": "", "image_url": "https://images.tinymart.in/product/4500708-7901.webp", "sku_total": 10, "mrp": "10", "tray_id": "17", "name": "Modern Kitchen Masala Peanut 28gm", "offer_id": "", "skuid": "4500708", "unit_price": 10, "door_id": "1"}]}, "status": true, "rstatus": true}
[2026-08-31 12:32:37,835.835 INFO    ] 70
[2026-08-31 12:32:37,837.837 INFO    ] TM08202202260831123127341
[2026-08-31 12:32:37,839.839 INFO    ] 9986757783
[2026-08-31 12:32:37,842.842 INFO    ] 2026-08-31 12:32:37
[2026-08-31 12:32:37,844.844 INFO    ] Door Opening for user mobile ending with  seven seven eight three 
[2026-08-31 12:32:37,846.846 INFO    ] Door Opening for user mobile ending with  seven seven eight three 
[2026-08-31 12:32:37,849.849 INFO    ] 6ba6b3f4dc81f128fe24ad0125206459
[2026-08-31 12:32:37,851.851 INFO    ] 2026-08-31 12:32:37
[2026-08-31 12:32:37,853.853 INFO    ] playing audio file
[2026-08-31 12:32:37,871.871 INFO    ] 2026-08-31 12:32:37
[2026-08-31 12:32:37,874.874 INFO    ] 2026-08-31 12:32:37
[2026-08-31 12:32:37,877.877 INFO    ] publish_status: order_id=TM08202202260831123127341
[2026-08-31 12:32:37,880.880 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831123127341
[2026-08-31 12:32:38,700.700 INFO    ] [publish_status] Message added to stream with ID: 1788159758672-0
[2026-08-31 12:32:38,702.702 INFO    ] Published to order:TM08202202260831123127341: {'server_response': '{"rstatus": true, "msg": "Order Data", "data": {"proposed_sku_json": [{"door_id": "2", "unit_price": 10, "sku_total": 20, "tray_id": "38", "name": "Eat Bit Peanut  Chikki 32gm", "image_url": "https://images.tinymart.in/product/4500677-4669.png", "offer_id": "", "mrp": "10", "qty": 2, "skuid": "4500677", "offer_desc": ""}, {"door_id": "1", "unit_price": 10, "sku_total": 20, "tray_id": "23", "name": "MaxVita Moong daal 25gm", "image_url": "https://images.tinymart.in/product/4500723-3888.png", "offer_id": "", "mrp": "10", "qty": 2, "skuid": "4500723", "offer_desc": ""}, {"door_id": "1", "unit_price": 10, "sku_total": 20, "tray_id": "24", "name": "Modern kitchens Garlic Mixture 26gm", "image_url": "https://images.tinymart.in/product/4500672-7226.webp", "offer_id": "", "mrp": "10", "qty": 2, "skuid": "4500672", "offer_desc": ""}, {"door_id": "1", "unit_price": 10, "sku_total": 10, "tray_id": "17", "name": "Modern Kitchen Masala Peanut 28gm", "image_url": "https://images.tinymart.in/product/4500708-7901.webp", "offer_id": "", "mrp": "10", "qty": 1, "skuid": "4500708", "offer_desc": ""}], "invoice_bill": "70", "mobile": "9986757783", "bill_amount": "70", "order_id": "TM08202202260831123127341", "access_code": "67310882"}, "status": true}', 'order_id': 'TM08202202260831123127341', 'timestamp': '2026-08-31T07:02:37.875604Z', 'server_status': 'order-started'} (ID: 1788159758672-0)
[2026-08-31 12:32:48,280.280 INFO    ] {'server_response': {'rstatus': True, 'msg': 'Order Data', 'data': {'proposed_sku_json': [{'door_id': '2', 'unit_price': 10, 'sku_total': 20, 'tray_id': '38', 'name': 'Eat Bit Peanut  Chikki 32gm', 'image_url': 'https://images.tinymart.in/product/4500677-4669.png', 'offer_id': '', 'mrp': '10', 'qty': 2, 'skuid': '4500677', 'offer_desc': ''}, {'door_id': '1', 'unit_price': 10, 'sku_total': 20, 'tray_id': '23', 'name': 'MaxVita Moong daal 25gm', 'image_url': 'https://images.tinymart.in/product/4500723-3888.png', 'offer_id': '', 'mrp': '10', 'qty': 2, 'skuid': '4500723', 'offer_desc': ''}, {'door_id': '1', 'unit_price': 10, 'sku_total': 20, 'tray_id': '24', 'name': 'Modern kitchens Garlic Mixture 26gm', 'image_url': 'https://images.tinymart.in/product/4500672-7226.webp', 'offer_id': '', 'mrp': '10', 'qty': 2, 'skuid': '4500672', 'offer_desc': ''}, {'door_id': '1', 'unit_price': 10, 'sku_total': 10, 'tray_id': '17', 'name': 'Modern Kitchen Masala Peanut 28gm', 'image_url': 'https://images.tinymart.in/product/4500708-7901.webp', 'offer_id': '', 'mrp': '10', 'qty': 1, 'skuid': '4500708', 'offer_desc': ''}], 'invoice_bill': '70', 'mobile': '9986757783', 'bill_amount': '70', 'order_id': 'TM08202202260831123127341', 'access_code': '67310882'}, 'status': True}, 'order_id': 'TM08202202260831123127341', 'server_status': 'order-started'}
[2026-08-31 12:32:48,283.283 INFO    ] 200
[2026-08-31 12:32:48,285.285 INFO    ] {"data":{"server_response":{"rstatus":true,"msg":"Order Data","data":{"proposed_sku_json":[{"door_id":"2","unit_price":10,"sku_total":20,"tray_id":"38","name":"Eat Bit Peanut  Chikki 32gm","image_url":"https:\/\/images.tinymart.in\/product\/4500677-4669.png","offer_id":"","mrp":"10","qty":2,"skuid":"4500677","offer_desc":""},{"door_id":"1","unit_price":10,"sku_total":20,"tray_id":"23","name":"MaxVita Moong daal 25gm","image_url":"https:\/\/images.tinymart.in\/product\/4500723-3888.png","offer_id":"","mrp":"10","qty":2,"skuid":"4500723","offer_desc":""},{"door_id":"1","unit_price":10,"sku_total":20,"tray_id":"24","name":"Modern kitchens Garlic Mixture 26gm","image_url":"https:\/\/images.tinymart.in\/product\/4500672-7226.webp","offer_id":"","mrp":"10","qty":2,"skuid":"4500672","offer_desc":""},{"door_id":"1","unit_price":10,"sku_total":10,"tray_id":"17","name":"Modern Kitchen Masala Peanut 28gm","image_url":"https:\/\/images.tinymart.in\/product\/4500708-7901.webp","offer_id":"","mrp":"10","qty":1,"skuid":"4500708","offer_desc":""}],"invoice_bill":"70","mobile":"9986757783","bill_amount":"70","order_id":"TM08202202260831123127341","access_code":"67310882"},"status":true},"order_id":"TM08202202260831123127341","server_status":"order-started"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 12:32:48,289.289 INFO    ] {'response': {'msg': 'order updated successfully', 'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True}, 'data': {'server_response': {'data': {'proposed_sku_json': [{'offer_desc': '', 'sku_total': 20, 'tray_id': '38', 'qty': 2, 'mrp': '10', 'image_url': 'https://images.tinymart.in/product/4500677-4669.png', 'door_id': '2', 'unit_price': 10, 'name': 'Eat Bit Peanut  Chikki 32gm', 'skuid': '4500677', 'offer_id': ''}, {'offer_desc': '', 'sku_total': 20, 'tray_id': '23', 'qty': 2, 'mrp': '10', 'image_url': 'https://images.tinymart.in/product/4500723-3888.png', 'door_id': '1', 'unit_price': 10, 'name': 'MaxVita Moong daal 25gm', 'skuid': '4500723', 'offer_id': ''}, {'offer_desc': '', 'sku_total': 20, 'tray_id': '24', 'qty': 2, 'mrp': '10', 'image_url': 'https://images.tinymart.in/product/4500672-7226.webp', 'door_id': '1', 'unit_price': 10, 'name': 'Modern kitchens Garlic Mixture 26gm', 'skuid': '4500672', 'offer_id': ''}, {'offer_desc': '', 'sku_total': 10, 'tray_id': '17', 'qty': 1, 'mrp': '10', 'image_url': 'https://images.tinymart.in/product/4500708-7901.webp', 'door_id': '1', 'unit_price': 10, 'name': 'Modern Kitchen Masala Peanut 28gm', 'skuid': '4500708', 'offer_id': ''}], 'invoice_bill': '70', 'mobile': '9986757783', 'bill_amount': '70', 'order_id': 'TM08202202260831123127341', 'access_code': '67310882'}, 'msg': 'Order Data', 'rstatus': True, 'status': True}, 'order_id': 'TM08202202260831123127341', 'server_status': 'order-started'}}
[2026-08-31 12:32:48,291.291 INFO    ] 2026-08-31 12:32:48
[2026-08-31 12:32:48,337.337 INFO    ] 200
[2026-08-31 12:32:48,340.340 INFO    ] True
[2026-08-31 12:32:48,504.504 INFO    ] 200
[2026-08-31 12:32:48,507.507 INFO    ] {"SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "voiceNote": "Please Wait", "SectionMain": {"Header": "Processing Order"}, "SectionStatus": {"Note": "", "UI_Header": "", "SubHeader": "Please wait while we process your order", "Header": " Your order is under process  "}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 12:32:48,510.510 INFO    ] {'voiceNote': 'Please Wait', 'SectionStatus': {'Header': ' Your order is under process  ', 'UI_Header': '', 'SubHeader': 'Please wait while we process your order', 'Note': ''}, 'rstatus': False, 'SectionMain': {'Header': 'Processing Order'}, 'status': 'False', 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}, 'code': 20001}}
[2026-08-31 12:32:48,513.513 INFO    ] *** process_order ***
[2026-08-31 12:32:49,627.627 INFO    ] 200
[2026-08-31 12:32:49,629.629 INFO    ] {"SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "voiceNote": "Please Wait", "SectionMain": {"Header": "Processing Order"}, "SectionStatus": {"Note": "", "UI_Header": "", "SubHeader": "Please wait while we process your order", "Header": " Your order is under process  "}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 12:32:49,632.632 INFO    ] {'voiceNote': 'Please Wait', 'SectionStatus': {'Header': ' Your order is under process  ', 'UI_Header': '', 'SubHeader': 'Please wait while we process your order', 'Note': ''}, 'rstatus': False, 'SectionMain': {'Header': 'Processing Order'}, 'status': 'False', 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}, 'code': 20001}}
[2026-08-31 12:32:49,635.635 INFO    ] *** process_order ***
[2026-08-31 12:32:50,776.776 INFO    ] 200
[2026-08-31 12:32:50,779.779 INFO    ] {"SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "voiceNote": "Please Wait", "SectionMain": {"Header": "Processing Order"}, "SectionStatus": {"Note": "", "UI_Header": "", "SubHeader": "Please wait while we process your order", "Header": " Your order is under process  "}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 12:32:50,782.782 INFO    ] {'voiceNote': 'Please Wait', 'SectionStatus': {'Header': ' Your order is under process  ', 'UI_Header': '', 'SubHeader': 'Please wait while we process your order', 'Note': ''}, 'rstatus': False, 'SectionMain': {'Header': 'Processing Order'}, 'status': 'False', 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}, 'code': 20001}}
[2026-08-31 12:32:50,785.785 INFO    ] *** process_order ***
[2026-08-31 12:32:52,017.017 INFO    ] 200
[2026-08-31 12:32:52,020.020 INFO    ] {"SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "voiceNote": "Please Wait", "SectionMain": {"Header": "Processing Order"}, "SectionStatus": {"Note": "", "UI_Header": "", "SubHeader": "Please wait while we process your order", "Header": " Your order is under process  "}, "delay": 0, "status": "True", "rstatus": true}
[2026-08-31 12:32:52,023.023 INFO    ] {'voiceNote': 'Please Wait', 'SectionStatus': {'Header': ' Your order is under process  ', 'UI_Header': '', 'SubHeader': 'Please wait while we process your order', 'Note': ''}, 'rstatus': True, 'status': 'True', 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'delay': 0, 'SectionMain': {'Header': 'Processing Order'}}
[2026-08-31 12:32:52,026.026 INFO    ] *** process_order ***
[2026-08-31 12:32:52,029.029 INFO    ] publish_status: order_id=TM08202202260831123127341
[2026-08-31 12:32:52,032.032 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831123127341
[2026-08-31 12:32:52,466.466 INFO    ] [publish_status] Message added to stream with ID: 1788159772436-0
[2026-08-31 12:32:52,469.469 INFO    ] Published to order:TM08202202260831123127341: {'server_response': '{"voiceNote": "Door is open...", "SectionStatus": {"Header": " Your order is under process  ", "UI_Header": "", "SubHeader": "You can pull the door now.", "Note": ""}, "rstatus": true, "status": "True", "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "delay": 0, "SectionMain": {"Header": "Processing Order"}}', 'order_id': 'TM08202202260831123127341', 'server_status': 'doorOpened'} (ID: 1788159772436-0)
[2026-08-31 12:32:54,201.201 INFO    ] 2026-08-31 12:32:54
[2026-08-31 12:32:54,204.204 INFO    ] publish_status: order_id=TM08202202260831123127341
[2026-08-31 12:32:54,208.208 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831123127341
[2026-08-31 12:32:55,062.062 INFO    ] [publish_status] Message added to stream with ID: 1788159775034-0
[2026-08-31 12:32:55,065.065 INFO    ] Published to order:TM08202202260831123127341: {'server_response': '{"voiceNote": "Please Wait", "SectionStatus": {"Header": " Your order is under process  ", "UI_Header": "", "SubHeader": "Please wait while we process your order", "Note": ""}, "rstatus": true, "status": "True", "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "delay": 0, "SectionMain": {"Header": "Processing Order"}}', 'order_id': 'TM08202202260831123127341', 'timestamp': '2026-08-31T07:02:54.202791Z', 'server_status': 'processOrder'} (ID: 1788159775034-0)
[2026-08-31 12:32:58,744.744 INFO    ] {'server_response': {'voiceNote': 'Please Wait', 'SectionStatus': {'Header': ' Your order is under process  ', 'UI_Header': '', 'SubHeader': 'Please wait while we process your order', 'Note': ''}, 'rstatus': True, 'status': 'True', 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'delay': 0, 'SectionMain': {'Header': 'Processing Order'}}, 'order_id': 'TM08202202260831123127341', 'server_status': 'processOrder'}
[2026-08-31 12:32:58,746.746 INFO    ] 200
[2026-08-31 12:32:58,750.750 INFO    ] {"data":{"server_response":{"voiceNote":"Please Wait","SectionStatus":{"Header":" Your order is under process  ","UI_Header":"","SubHeader":"Please wait while we process your order","Note":""},"rstatus":true,"status":"true","SectionSKU":{"Header":"Thank you for bearing with us :)","skus":[]},"delay":0,"SectionMain":{"Header":"Processing Order"}},"order_id":"TM08202202260831123127341","server_status":"processOrder"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 12:32:58,753.753 INFO    ] {'response': {'msg': 'order updated successfully', 'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True}, 'data': {'server_response': {'voiceNote': 'Please Wait', 'SectionStatus': {'Header': ' Your order is under process  ', 'Note': '', 'SubHeader': 'Please wait while we process your order', 'UI_Header': ''}, 'rstatus': True, 'status': 'true', 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'delay': 0, 'SectionMain': {'Header': 'Processing Order'}}, 'order_id': 'TM08202202260831123127341', 'server_status': 'processOrder'}}
[2026-08-31 12:32:58,756.756 INFO    ] 2026-08-31 12:32:58
[2026-08-31 12:32:58,760.760 INFO    ] None
[2026-08-31 12:32:58,762.762 INFO    ] Opening Door now
[2026-08-31 12:32:58,765.765 INFO    ] Opening Door now
[2026-08-31 12:32:58,776.776 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-08-31 12:32:58,779.779 INFO    ] 2026-08-31 12:32:58
[2026-08-31 12:32:58,782.782 INFO    ] playing audio file
[2026-08-31 12:32:58,800.800 INFO    ] 2026-08-31 12:32:58
[2026-08-31 12:32:58,803.803 INFO    ] 2026-08-31 12:32:58
[2026-08-31 12:33:01,951.951 INFO    ] 200
[2026-08-31 12:33:01,955.955 INFO    ] {"SectionSKU": {"skus": [{"qty": 2, "name": "MaxVita Moong daal 25gm"}, {"qty": 2, "name": "Modern kitchens Garlic Mixture 26gm"}, {"qty": 1, "name": "Modern Kitchen Masala Peanut 28gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 12:33:01,968.968 INFO    ] {'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products'}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 2, 'name': 'MaxVita Moong daal 25gm'}, {'qty': 2, 'name': 'Modern kitchens Garlic Mixture 26gm'}, {'qty': 1, 'name': 'Modern Kitchen Masala Peanut 28gm'}]}, 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}, 'code': 20001}}
[2026-08-31 12:33:05,045.045 INFO    ] 200
[2026-08-31 12:33:05,049.049 INFO    ] {"SectionSKU": {"skus": [{"qty": 2, "name": "MaxVita Moong daal 25gm"}, {"qty": 2, "name": "Modern kitchens Garlic Mixture 26gm"}, {"qty": 1, "name": "Modern Kitchen Masala Peanut 28gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 12:33:05,053.053 INFO    ] {'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products'}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 2, 'name': 'MaxVita Moong daal 25gm'}, {'qty': 2, 'name': 'Modern kitchens Garlic Mixture 26gm'}, {'qty': 1, 'name': 'Modern Kitchen Masala Peanut 28gm'}]}, 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}, 'code': 20001}}
[2026-08-31 12:33:08,127.127 INFO    ] 200
[2026-08-31 12:33:08,133.133 INFO    ] {"SectionSKU": {"skus": [{"qty": 2, "name": "MaxVita Moong daal 25gm"}, {"qty": 2, "name": "Modern kitchens Garlic Mixture 26gm"}, {"qty": 1, "name": "Modern Kitchen Masala Peanut 28gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 12:33:08,147.147 INFO    ] Please close door 1
[2026-08-31 12:33:08,152.152 INFO    ] Please close door 1
[2026-08-31 12:33:08,157.157 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-08-31 12:33:08,161.161 INFO    ] 2026-08-31 12:33:08
[2026-08-31 12:33:08,164.164 INFO    ] playing audio file
[2026-08-31 12:33:08,190.190 INFO    ] 2026-08-31 12:33:08
[2026-08-31 12:33:08,195.195 INFO    ] publish_status: order_id=TM08202202260831123127341
[2026-08-31 12:33:08,200.200 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831123127341
[2026-08-31 12:33:08,294.294 INFO    ] [publish_status] Message added to stream with ID: 1788159788263-0
[2026-08-31 12:33:08,298.298 INFO    ] Published to order:TM08202202260831123127341: {'server_response': '{"voiceNote": "Please close door 1", "SectionStatus": {"Header": "Please Close Door 1", "UI_Header": "DOOR 1\\nIS \\nOPEN \\nNOW", "SubHeader": "Please Pick the Products and close the door", "Note": "Please Close the door after picking up products"}, "rstatus": false, "SectionMain": {"Header": "Door Open"}, "status": "False", "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 2, "name": "MaxVita Moong daal 25gm"}, {"qty": 2, "name": "Modern kitchens Garlic Mixture 26gm"}, {"qty": 1, "name": "Modern Kitchen Masala Peanut 28gm"}]}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}}', 'order_id': 'TM08202202260831123127341', 'timestamp': '2026-08-31T07:03:08.192666Z', 'server_status': 'OrderStatus'} (ID: 1788159788263-0)
[2026-08-31 12:33:08,927.927 INFO    ] {'server_response': {'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products'}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 2, 'name': 'MaxVita Moong daal 25gm'}, {'qty': 2, 'name': 'Modern kitchens Garlic Mixture 26gm'}, {'qty': 1, 'name': 'Modern Kitchen Masala Peanut 28gm'}]}, 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}, 'code': 20001}}, 'order_id': 'TM08202202260831123127341', 'server_status': 'OrderStatus'}
[2026-08-31 12:33:08,930.930 INFO    ] 200
[2026-08-31 12:33:08,932.932 INFO    ] {"data":{"server_response":{"voiceNote":"Please close door 1","SectionStatus":{"Header":"Please Close Door 1","UI_Header":"DOOR 1\nIS \nOPEN \nNOW","SubHeader":"Please Pick the Products and close the door","Note":"Please Close the door after picking up products"},"rstatus":false,"SectionMain":{"Header":"Door Open"},"status":"false","SectionSKU":{"Header":"Pick the below items from the door","skus":[{"qty":2,"name":"MaxVita Moong daal 25gm"},{"qty":2,"name":"Modern kitchens Garlic Mixture 26gm"},{"qty":1,"name":"Modern Kitchen Masala Peanut 28gm"}]},"error":{"umessage":"In Progress","tmessage":"In Progress","data":[],"code":20001}},"order_id":"TM08202202260831123127341","server_status":"OrderStatus"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 12:33:08,935.935 INFO    ] {'response': {'msg': 'order updated successfully', 'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True}, 'data': {'server_response': {'voiceNote': 'Please close door 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'}, 'rstatus': False, 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': [], 'code': 20001}, 'status': 'false', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 2, 'name': 'MaxVita Moong daal 25gm'}, {'qty': 2, 'name': 'Modern kitchens Garlic Mixture 26gm'}, {'qty': 1, 'name': 'Modern Kitchen Masala Peanut 28gm'}]}, 'SectionMain': {'Header': 'Door Open'}}, 'order_id': 'TM08202202260831123127341', 'server_status': 'OrderStatus'}}
[2026-08-31 12:33:08,938.938 INFO    ] {'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products'}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 2, 'name': 'MaxVita Moong daal 25gm'}, {'qty': 2, 'name': 'Modern kitchens Garlic Mixture 26gm'}, {'qty': 1, 'name': 'Modern Kitchen Masala Peanut 28gm'}]}, 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}, 'code': 20001}}
[2026-08-31 12:33:12,020.020 INFO    ] 200
[2026-08-31 12:33:12,023.023 INFO    ] {"SectionSKU": {"skus": [{"qty": 2, "name": "MaxVita Moong daal 25gm"}, {"qty": 2, "name": "Modern kitchens Garlic Mixture 26gm"}, {"qty": 1, "name": "Modern Kitchen Masala Peanut 28gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 12:33:12,026.026 INFO    ] {'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products'}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 2, 'name': 'MaxVita Moong daal 25gm'}, {'qty': 2, 'name': 'Modern kitchens Garlic Mixture 26gm'}, {'qty': 1, 'name': 'Modern Kitchen Masala Peanut 28gm'}]}, 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}, 'code': 20001}}
[2026-08-31 12:33:15,127.127 INFO    ] 200
[2026-08-31 12:33:15,130.130 INFO    ] {"SectionSKU": {"skus": [{"qty": 2, "name": "MaxVita Moong daal 25gm"}, {"qty": 2, "name": "Modern kitchens Garlic Mixture 26gm"}, {"qty": 1, "name": "Modern Kitchen Masala Peanut 28gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 12:33:15,133.133 INFO    ] {'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products'}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 2, 'name': 'MaxVita Moong daal 25gm'}, {'qty': 2, 'name': 'Modern kitchens Garlic Mixture 26gm'}, {'qty': 1, 'name': 'Modern Kitchen Masala Peanut 28gm'}]}, 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}, 'code': 20001}}
[2026-08-31 12:33:18,193.193 INFO    ] 200
[2026-08-31 12:33:18,196.196 INFO    ] {"SectionSKU": {"skus": [{"qty": 2, "name": "MaxVita Moong daal 25gm"}, {"qty": 2, "name": "Modern kitchens Garlic Mixture 26gm"}, {"qty": 1, "name": "Modern Kitchen Masala Peanut 28gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 12:33:18,199.199 INFO    ] Please close door 1
[2026-08-31 12:33:18,201.201 INFO    ] Please close door 1
[2026-08-31 12:33:18,204.204 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-08-31 12:33:18,207.207 INFO    ] 2026-08-31 12:33:18
[2026-08-31 12:33:18,210.210 INFO    ] playing audio file
[2026-08-31 12:33:18,228.228 INFO    ] 2026-08-31 12:33:18
[2026-08-31 12:33:18,232.232 INFO    ] publish_status: order_id=TM08202202260831123127341
[2026-08-31 12:33:18,234.234 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831123127341
[2026-08-31 12:33:18,339.339 INFO    ] [publish_status] Message added to stream with ID: 1788159798311-0
[2026-08-31 12:33:18,342.342 INFO    ] Published to order:TM08202202260831123127341: {'server_response': '{"voiceNote": "Please close door 1", "SectionStatus": {"Header": "Please Close Door 1", "UI_Header": "DOOR 1\\nIS \\nOPEN \\nNOW", "SubHeader": "Please Pick the Products and close the door", "Note": "Please Close the door after picking up products"}, "rstatus": false, "SectionMain": {"Header": "Door Open"}, "status": "False", "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 2, "name": "MaxVita Moong daal 25gm"}, {"qty": 2, "name": "Modern kitchens Garlic Mixture 26gm"}, {"qty": 1, "name": "Modern Kitchen Masala Peanut 28gm"}]}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}}', 'order_id': 'TM08202202260831123127341', 'timestamp': '2026-08-31T07:03:18.230257Z', 'server_status': 'OrderStatus'} (ID: 1788159798311-0)
[2026-08-31 12:33:18,888.888 INFO    ] {'server_response': {'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products'}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 2, 'name': 'MaxVita Moong daal 25gm'}, {'qty': 2, 'name': 'Modern kitchens Garlic Mixture 26gm'}, {'qty': 1, 'name': 'Modern Kitchen Masala Peanut 28gm'}]}, 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}, 'code': 20001}}, 'order_id': 'TM08202202260831123127341', 'server_status': 'OrderStatus'}
[2026-08-31 12:33:18,891.891 INFO    ] 200
[2026-08-31 12:33:18,895.895 INFO    ] {"data":{"server_response":{"voiceNote":"Please close door 1","SectionStatus":{"Header":"Please Close Door 1","UI_Header":"DOOR 1\nIS \nOPEN \nNOW","SubHeader":"Please Pick the Products and close the door","Note":"Please Close the door after picking up products"},"rstatus":false,"SectionMain":{"Header":"Door Open"},"status":"false","SectionSKU":{"Header":"Pick the below items from the door","skus":[{"qty":2,"name":"MaxVita Moong daal 25gm"},{"qty":2,"name":"Modern kitchens Garlic Mixture 26gm"},{"qty":1,"name":"Modern Kitchen Masala Peanut 28gm"}]},"error":{"umessage":"In Progress","tmessage":"In Progress","data":[],"code":20001}},"order_id":"TM08202202260831123127341","server_status":"OrderStatus"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 12:33:18,899.899 INFO    ] {'response': {'msg': 'order updated successfully', 'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True}, 'data': {'server_response': {'voiceNote': 'Please close door 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'}, 'rstatus': False, 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': [], 'code': 20001}, 'status': 'false', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 2, 'name': 'MaxVita Moong daal 25gm'}, {'qty': 2, 'name': 'Modern kitchens Garlic Mixture 26gm'}, {'qty': 1, 'name': 'Modern Kitchen Masala Peanut 28gm'}]}, 'SectionMain': {'Header': 'Door Open'}}, 'order_id': 'TM08202202260831123127341', 'server_status': 'OrderStatus'}}
[2026-08-31 12:33:18,903.903 INFO    ] {'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products'}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 2, 'name': 'MaxVita Moong daal 25gm'}, {'qty': 2, 'name': 'Modern kitchens Garlic Mixture 26gm'}, {'qty': 1, 'name': 'Modern Kitchen Masala Peanut 28gm'}]}, 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}, 'code': 20001}}
[2026-08-31 12:33:22,095.095 INFO    ] 200
[2026-08-31 12:33:22,098.098 INFO    ] {"SectionSKU": {"skus": [{"qty": 2, "name": "MaxVita Moong daal 25gm"}, {"qty": 2, "name": "Modern kitchens Garlic Mixture 26gm"}, {"qty": 1, "name": "Modern Kitchen Masala Peanut 28gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 12:33:22,102.102 INFO    ] {'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products'}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 2, 'name': 'MaxVita Moong daal 25gm'}, {'qty': 2, 'name': 'Modern kitchens Garlic Mixture 26gm'}, {'qty': 1, 'name': 'Modern Kitchen Masala Peanut 28gm'}]}, 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}, 'code': 20001}}
[2026-08-31 12:33:25,201.201 INFO    ] 200
[2026-08-31 12:33:25,204.204 INFO    ] {"SectionSKU": {"skus": [{"qty": 2, "name": "MaxVita Moong daal 25gm"}, {"qty": 2, "name": "Modern kitchens Garlic Mixture 26gm"}, {"qty": 1, "name": "Modern Kitchen Masala Peanut 28gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 12:33:25,208.208 INFO    ] {'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products'}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 2, 'name': 'MaxVita Moong daal 25gm'}, {'qty': 2, 'name': 'Modern kitchens Garlic Mixture 26gm'}, {'qty': 1, 'name': 'Modern Kitchen Masala Peanut 28gm'}]}, 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}, 'code': 20001}}
[2026-08-31 12:33:28,283.283 INFO    ] 200
[2026-08-31 12:33:28,287.287 INFO    ] {"SectionSKU": {"skus": [{"qty": 2, "name": "MaxVita Moong daal 25gm"}, {"qty": 2, "name": "Modern kitchens Garlic Mixture 26gm"}, {"qty": 1, "name": "Modern Kitchen Masala Peanut 28gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 12:33:28,292.292 INFO    ] Please close door 1
[2026-08-31 12:33:28,298.298 INFO    ] Please close door 1
[2026-08-31 12:33:28,302.302 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-08-31 12:33:28,306.306 INFO    ] 2026-08-31 12:33:28
[2026-08-31 12:33:28,310.310 INFO    ] playing audio file
[2026-08-31 12:33:28,329.329 INFO    ] 2026-08-31 12:33:28
[2026-08-31 12:33:28,334.334 INFO    ] publish_status: order_id=TM08202202260831123127341
[2026-08-31 12:33:28,337.337 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831123127341
[2026-08-31 12:33:28,474.474 INFO    ] [publish_status] Message added to stream with ID: 1788159808447-0
[2026-08-31 12:33:28,477.477 INFO    ] Published to order:TM08202202260831123127341: {'server_response': '{"voiceNote": "Please close door 1", "SectionStatus": {"Header": "Please Close Door 1", "UI_Header": "DOOR 1\\nIS \\nOPEN \\nNOW", "SubHeader": "Please Pick the Products and close the door", "Note": "Please Close the door after picking up products"}, "rstatus": false, "SectionMain": {"Header": "Door Open"}, "status": "False", "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 2, "name": "MaxVita Moong daal 25gm"}, {"qty": 2, "name": "Modern kitchens Garlic Mixture 26gm"}, {"qty": 1, "name": "Modern Kitchen Masala Peanut 28gm"}]}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}}', 'order_id': 'TM08202202260831123127341', 'timestamp': '2026-08-31T07:03:28.331761Z', 'server_status': 'OrderStatus'} (ID: 1788159808447-0)
[2026-08-31 12:33:29,483.483 INFO    ] {'server_response': {'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products'}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 2, 'name': 'MaxVita Moong daal 25gm'}, {'qty': 2, 'name': 'Modern kitchens Garlic Mixture 26gm'}, {'qty': 1, 'name': 'Modern Kitchen Masala Peanut 28gm'}]}, 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}, 'code': 20001}}, 'order_id': 'TM08202202260831123127341', 'server_status': 'OrderStatus'}
[2026-08-31 12:33:29,485.485 INFO    ] 200
[2026-08-31 12:33:29,488.488 INFO    ] {"data":{"server_response":{"voiceNote":"Please close door 1","SectionStatus":{"Header":"Please Close Door 1","UI_Header":"DOOR 1\nIS \nOPEN \nNOW","SubHeader":"Please Pick the Products and close the door","Note":"Please Close the door after picking up products"},"rstatus":false,"SectionMain":{"Header":"Door Open"},"status":"false","SectionSKU":{"Header":"Pick the below items from the door","skus":[{"qty":2,"name":"MaxVita Moong daal 25gm"},{"qty":2,"name":"Modern kitchens Garlic Mixture 26gm"},{"qty":1,"name":"Modern Kitchen Masala Peanut 28gm"}]},"error":{"umessage":"In Progress","tmessage":"In Progress","data":[],"code":20001}},"order_id":"TM08202202260831123127341","server_status":"OrderStatus"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 12:33:29,491.491 INFO    ] {'response': {'msg': 'order updated successfully', 'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True}, 'data': {'server_response': {'voiceNote': 'Please close door 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'}, 'rstatus': False, 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': [], 'code': 20001}, 'status': 'false', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 2, 'name': 'MaxVita Moong daal 25gm'}, {'qty': 2, 'name': 'Modern kitchens Garlic Mixture 26gm'}, {'qty': 1, 'name': 'Modern Kitchen Masala Peanut 28gm'}]}, 'SectionMain': {'Header': 'Door Open'}}, 'order_id': 'TM08202202260831123127341', 'server_status': 'OrderStatus'}}
[2026-08-31 12:33:29,493.493 INFO    ] {'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products'}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 2, 'name': 'MaxVita Moong daal 25gm'}, {'qty': 2, 'name': 'Modern kitchens Garlic Mixture 26gm'}, {'qty': 1, 'name': 'Modern Kitchen Masala Peanut 28gm'}]}, 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}, 'code': 20001}}
[2026-08-31 12:33:32,756.756 INFO    ] 200
[2026-08-31 12:33:32,759.759 INFO    ] {"SectionSKU": {"skus": [{"qty": 2, "name": "MaxVita Moong daal 25gm"}, {"qty": 2, "name": "Modern kitchens Garlic Mixture 26gm"}, {"qty": 1, "name": "Modern Kitchen Masala Peanut 28gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 12:33:32,762.762 INFO    ] {'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products'}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 2, 'name': 'MaxVita Moong daal 25gm'}, {'qty': 2, 'name': 'Modern kitchens Garlic Mixture 26gm'}, {'qty': 1, 'name': 'Modern Kitchen Masala Peanut 28gm'}]}, 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}, 'code': 20001}}
[2026-08-31 12:33:35,821.821 INFO    ] 200
[2026-08-31 12:33:35,824.824 INFO    ] {"SectionSKU": {"skus": [{"qty": 2, "name": "MaxVita Moong daal 25gm"}, {"qty": 2, "name": "Modern kitchens Garlic Mixture 26gm"}, {"qty": 1, "name": "Modern Kitchen Masala Peanut 28gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 12:33:35,827.827 INFO    ] {'voiceNote': 'Please close door 1', 'SectionStatus': {'Header': 'Please Close Door 1', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products'}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 2, 'name': 'MaxVita Moong daal 25gm'}, {'qty': 2, 'name': 'Modern kitchens Garlic Mixture 26gm'}, {'qty': 1, 'name': 'Modern Kitchen Masala Peanut 28gm'}]}, 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}, 'code': 20001}}
[2026-08-31 12:33:38,877.877 INFO    ] 200
[2026-08-31 12:33:38,880.880 INFO    ] {"SectionSKU": {"skus": [{"qty": 2, "name": "MaxVita Moong daal 25gm"}, {"qty": 2, "name": "Modern kitchens Garlic Mixture 26gm"}, {"qty": 1, "name": "Modern Kitchen Masala Peanut 28gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Door 1 is closed now", "SectionMain": {"Header": "Door Close"}, "SectionStatus": {"Note": "If any due amount, clear at https://go.tinymart.in", "UI_Header": "DOOR 1\nIS \nCLOSED \nNOW", "SubHeader": "Please wait for invoice to generate", "Header": "Door 1 is closed now"}, "delay": 1000, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 12:33:38,882.882 INFO    ] Door 1 is closed now
[2026-08-31 12:33:38,884.884 INFO    ] Door 1 is closed now
[2026-08-31 12:33:38,887.887 INFO    ] 79348d1518d22771c2b1ed3008436097
[2026-08-31 12:33:38,889.889 INFO    ] 2026-08-31 12:33:38
[2026-08-31 12:33:38,892.892 INFO    ] playing audio file
[2026-08-31 12:33:38,908.908 INFO    ] 2026-08-31 12:33:38
[2026-08-31 12:33:38,912.912 INFO    ] publish_status: order_id=TM08202202260831123127341
[2026-08-31 12:33:38,915.915 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831123127341
[2026-08-31 12:33:39,039.039 INFO    ] [publish_status] Message added to stream with ID: 1788159819011-0
[2026-08-31 12:33:39,042.042 INFO    ] Published to order:TM08202202260831123127341: {'server_response': '{"voiceNote": "Door 1 is closed now", "SectionStatus": {"Header": "Door 1 is closed now", "UI_Header": "DOOR 1\\nIS \\nCLOSED \\nNOW", "SubHeader": "Please wait for invoice to generate", "Note": "If any due amount, clear at https://go.tinymart.in"}, "rstatus": false, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 2, "name": "MaxVita Moong daal 25gm"}, {"qty": 2, "name": "Modern kitchens Garlic Mixture 26gm"}, {"qty": 1, "name": "Modern Kitchen Masala Peanut 28gm"}]}, "delay": 1000, "SectionMain": {"Header": "Door Close"}}', 'order_id': 'TM08202202260831123127341', 'timestamp': '2026-08-31T07:03:38.910743Z', 'server_status': 'OrderStatus'} (ID: 1788159819011-0)
[2026-08-31 12:33:39,720.720 INFO    ] {'server_response': {'voiceNote': 'Door 1 is closed now', 'SectionStatus': {'Header': 'Door 1 is closed now', 'UI_Header': 'DOOR 1\nIS \nCLOSED \nNOW', 'SubHeader': 'Please wait for invoice to generate', 'Note': 'If any due amount, clear at https://go.tinymart.in'}, 'rstatus': False, 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}, 'code': 20001}, 'status': 'False', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 2, 'name': 'MaxVita Moong daal 25gm'}, {'qty': 2, 'name': 'Modern kitchens Garlic Mixture 26gm'}, {'qty': 1, 'name': 'Modern Kitchen Masala Peanut 28gm'}]}, 'delay': 1000, 'SectionMain': {'Header': 'Door Close'}}, 'order_id': 'TM08202202260831123127341', 'server_status': 'OrderStatus'}
[2026-08-31 12:33:39,723.723 INFO    ] 200
[2026-08-31 12:33:39,726.726 INFO    ] {"data":{"server_response":{"voiceNote":"Door 1 is closed now","SectionStatus":{"Header":"Door 1 is closed now","UI_Header":"DOOR 1\nIS \nCLOSED \nNOW","SubHeader":"Please wait for invoice to generate","Note":"If any due amount, clear at https:\/\/go.tinymart.in"},"rstatus":false,"error":{"umessage":"In Progress","tmessage":"In Progress","data":[],"code":20001},"status":"false","SectionSKU":{"Header":"Pick the below items from the door","skus":[{"qty":2,"name":"MaxVita Moong daal 25gm"},{"qty":2,"name":"Modern kitchens Garlic Mixture 26gm"},{"qty":1,"name":"Modern Kitchen Masala Peanut 28gm"}]},"delay":1000,"SectionMain":{"Header":"Door Close"}},"order_id":"TM08202202260831123127341","server_status":"OrderStatus"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 12:33:39,729.729 INFO    ] {'response': {'msg': 'order updated successfully', 'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True}, 'data': {'server_response': {'voiceNote': 'Door 1 is closed now', 'SectionStatus': {'Header': 'Door 1 is closed now', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'SubHeader': 'Please wait for invoice to generate', 'UI_Header': 'DOOR 1\nIS \nCLOSED \nNOW'}, 'rstatus': False, 'SectionMain': {'Header': 'Door Close'}, 'status': 'false', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 2, 'name': 'MaxVita Moong daal 25gm'}, {'qty': 2, 'name': 'Modern kitchens Garlic Mixture 26gm'}, {'qty': 1, 'name': 'Modern Kitchen Masala Peanut 28gm'}]}, 'delay': 1000, 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': [], 'code': 20001}}, 'order_id': 'TM08202202260831123127341', 'server_status': 'OrderStatus'}}
[2026-08-31 12:33:39,733.733 INFO    ] {'voiceNote': 'Door 1 is closed now', 'SectionStatus': {'Header': 'Door 1 is closed now', 'UI_Header': 'DOOR 1\nIS \nCLOSED \nNOW', 'SubHeader': 'Please wait for invoice to generate', 'Note': 'If any due amount, clear at https://go.tinymart.in'}, 'rstatus': False, 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}, 'code': 20001}, 'status': 'False', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 2, 'name': 'MaxVita Moong daal 25gm'}, {'qty': 2, 'name': 'Modern kitchens Garlic Mixture 26gm'}, {'qty': 1, 'name': 'Modern Kitchen Masala Peanut 28gm'}]}, 'delay': 1000, 'SectionMain': {'Header': 'Door Close'}}
[2026-08-31 12:33:42,838.838 INFO    ] 200
[2026-08-31 12:33:42,840.840 INFO    ] {"SectionSKU": {"skus": [{"qty": 2, "name": "Eat Bit Peanut  Chikki 32gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Door 2 is open now", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 12:33:42,843.843 INFO    ] {'voiceNote': 'Door 2 is open now', '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'}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 2, 'name': 'Eat Bit Peanut  Chikki 32gm'}]}, 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}, 'code': 20001}}
[2026-08-31 12:33:45,918.918 INFO    ] 200
[2026-08-31 12:33:45,920.920 INFO    ] {"SectionSKU": {"skus": [{"qty": 2, "name": "Eat Bit Peanut  Chikki 32gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 12:33:45,923.923 INFO    ] {'voiceNote': 'Please close door 2', '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'}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 2, 'name': 'Eat Bit Peanut  Chikki 32gm'}]}, 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}, 'code': 20001}}
[2026-08-31 12:33:49,005.005 INFO    ] 200
[2026-08-31 12:33:49,008.008 INFO    ] {"SectionSKU": {"skus": [{"qty": 2, "name": "Eat Bit Peanut  Chikki 32gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 12:33:49,011.011 INFO    ] Please close door 2
[2026-08-31 12:33:49,014.014 INFO    ] Please close door 2
[2026-08-31 12:33:49,016.016 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-08-31 12:33:49,019.019 INFO    ] 2026-08-31 12:33:49
[2026-08-31 12:33:49,021.021 INFO    ] playing audio file
[2026-08-31 12:33:49,038.038 INFO    ] 2026-08-31 12:33:49
[2026-08-31 12:33:49,042.042 INFO    ] publish_status: order_id=TM08202202260831123127341
[2026-08-31 12:33:49,045.045 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831123127341
[2026-08-31 12:33:49,269.269 INFO    ] [publish_status] Message added to stream with ID: 1788159829240-0
[2026-08-31 12:33:49,272.272 INFO    ] Published to order:TM08202202260831123127341: {'server_response': '{"voiceNote": "Please close door 2", "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"}, "rstatus": false, "SectionMain": {"Header": "Door Open"}, "status": "False", "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 2, "name": "Eat Bit Peanut  Chikki 32gm"}]}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}}', 'order_id': 'TM08202202260831123127341', 'timestamp': '2026-08-31T07:03:49.040613Z', 'server_status': 'OrderStatus'} (ID: 1788159829240-0)
[2026-08-31 12:33:50,041.041 INFO    ] {'server_response': {'voiceNote': 'Please close door 2', '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'}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 2, 'name': 'Eat Bit Peanut  Chikki 32gm'}]}, 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}, 'code': 20001}}, 'order_id': 'TM08202202260831123127341', 'server_status': 'OrderStatus'}
[2026-08-31 12:33:50,044.044 INFO    ] 200
[2026-08-31 12:33:50,046.046 INFO    ] {"data":{"server_response":{"voiceNote":"Please close door 2","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"},"rstatus":false,"SectionMain":{"Header":"Door Open"},"status":"false","SectionSKU":{"Header":"Pick the below items from the door","skus":[{"qty":2,"name":"Eat Bit Peanut  Chikki 32gm"}]},"error":{"umessage":"In Progress","tmessage":"In Progress","data":[],"code":20001}},"order_id":"TM08202202260831123127341","server_status":"OrderStatus"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 12:33:50,050.050 INFO    ] {'response': {'msg': 'order updated successfully', 'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True}, 'data': {'server_response': {'voiceNote': 'Please close door 2', 'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW'}, 'rstatus': False, 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': [], 'code': 20001}, 'status': 'false', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 2, 'name': 'Eat Bit Peanut  Chikki 32gm'}]}, 'SectionMain': {'Header': 'Door Open'}}, 'order_id': 'TM08202202260831123127341', 'server_status': 'OrderStatus'}}
[2026-08-31 12:33:50,053.053 INFO    ] {'voiceNote': 'Please close door 2', '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'}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 2, 'name': 'Eat Bit Peanut  Chikki 32gm'}]}, 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}, 'code': 20001}}
[2026-08-31 12:33:53,162.162 INFO    ] 200
[2026-08-31 12:33:53,165.165 INFO    ] {"SectionSKU": {"skus": [{"qty": 2, "name": "Eat Bit Peanut  Chikki 32gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 12:33:53,168.168 INFO    ] {'voiceNote': 'Please close door 2', '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'}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 2, 'name': 'Eat Bit Peanut  Chikki 32gm'}]}, 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}, 'code': 20001}}
[2026-08-31 12:33:56,219.219 INFO    ] 200
[2026-08-31 12:33:56,222.222 INFO    ] {"SectionSKU": {"skus": [], "Header": "If you like us, tell others... else tell us"}, "voiceNote": "Transaction Completed", "SectionMain": {"Header": "Door Closed"}, "SectionStatus": {"Note": "If any due amount, clear at https://go.tinymart.in", "UI_Header": "", "SubHeader": "Please wait for invoice to generate", "Header": " Order is complete "}, "delay": 100, "status": "True", "rstatus": true}
[2026-08-31 12:33:56,224.224 INFO    ] {'voiceNote': 'Transaction Completed', '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'}, 'rstatus': True, 'status': 'True', 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'delay': 100, 'SectionMain': {'Header': 'Door Closed'}}
[2026-08-31 12:33:56,227.227 INFO    ] 2026-08-31 12:33:56
[2026-08-31 12:33:56,229.229 INFO    ] Order Completed 
[2026-08-31 12:33:56,231.231 INFO    ] Order Completed 
[2026-08-31 12:33:56,234.234 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-08-31 12:33:56,236.236 INFO    ] 2026-08-31 12:33:56
[2026-08-31 12:33:56,238.238 INFO    ] playing audio file
[2026-08-31 12:33:56,255.255 INFO    ] 2026-08-31 12:33:56
[2026-08-31 12:33:56,258.258 INFO    ] {'voiceNote': 'Transaction Completed', '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'}, 'rstatus': True, 'status': 'True', 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'delay': 100, 'SectionMain': {'Header': 'Door Closed'}}
[2026-08-31 12:33:56,261.261 INFO    ] 2026-08-31 12:33:56
[2026-08-31 12:33:56,642.642 INFO    ] 200
[2026-08-31 12:33:56,645.645 INFO    ] {"skus": [{"qty": 1, "image_url": "https://images.tinymart.in/product/165143-5076.png", "sku_total": 10.0, "mrp": "10", "tray_id": "11", "name": "Town Bus Soya Stick ,35g per peice", "skuid": "165143", "unit_price": "10", "door_id": ""}, {"qty": 1, "image_url": "https://images.tinymart.in/product/4500708-7901.webp", "sku_total": 10.0, "mrp": "10", "tray_id": "17", "name": "Modern Kitchen Masala Peanut 28gm per peice", "skuid": "4500708", "unit_price": "10", "door_id": ""}, {"qty": 2, "image_url": "https://images.tinymart.in/product/4500723-3888.png", "sku_total": 20.0, "mrp": "10", "tray_id": "23", "name": "MaxVita Moong daal 25gm per peice", "skuid": "4500723", "unit_price": "10", "door_id": ""}, {"qty": 2, "image_url": "https://images.tinymart.in/product/4500672-7226.webp", "sku_total": 20.0, "mrp": "10", "tray_id": "24", "name": "Modern kitchens Garlic Mixture 26gm per peice", "skuid": "4500672", "unit_price": "10", "door_id": ""}, {"qty": 2, "image_url": "https://images.tinymart.in/product/4500677-4669.png", "sku_total": 20.0, "mrp": "10", "tray_id": "38", "name": "Eat Bit Peanut  Chikki 32gm per peice", "skuid": "4500677", "unit_price": "10", "door_id": ""}], "anomaly": 0, "orderId": "TM08202202260831123127341", "res": "True", "logic": "WBL", "total_amount": 80.0, "rstatus": true}
[2026-08-31 12:33:56,648.648 INFO    ] {'logic': 'WBL', 'anomaly': 0, 'rstatus': True, 'res': 'True', 'total_amount': 80.0, 'orderId': 'TM08202202260831123127341', 'skus': [{'sku_total': 10.0, 'tray_id': '11', 'unit_price': '10', 'image_url': 'https://images.tinymart.in/product/165143-5076.png', 'door_id': '', 'mrp': '10', 'qty': 1, 'skuid': '165143', 'name': 'Town Bus Soya Stick ,35g per peice'}, {'sku_total': 10.0, 'tray_id': '17', 'unit_price': '10', 'image_url': 'https://images.tinymart.in/product/4500708-7901.webp', 'door_id': '', 'mrp': '10', 'qty': 1, 'skuid': '4500708', 'name': 'Modern Kitchen Masala Peanut 28gm per peice'}, {'sku_total': 20.0, 'tray_id': '23', 'unit_price': '10', 'image_url': 'https://images.tinymart.in/product/4500723-3888.png', 'door_id': '', 'mrp': '10', 'qty': 2, 'skuid': '4500723', 'name': 'MaxVita Moong daal 25gm per peice'}, {'sku_total': 20.0, 'tray_id': '24', 'unit_price': '10', 'image_url': 'https://images.tinymart.in/product/4500672-7226.webp', 'door_id': '', 'mrp': '10', 'qty': 2, 'skuid': '4500672', 'name': 'Modern kitchens Garlic Mixture 26gm per peice'}, {'sku_total': 20.0, 'tray_id': '38', 'unit_price': '10', 'image_url': 'https://images.tinymart.in/product/4500677-4669.png', 'door_id': '', 'mrp': '10', 'qty': 2, 'skuid': '4500677', 'name': 'Eat Bit Peanut  Chikki 32gm per peice'}]}
[2026-08-31 12:33:56,651.651 INFO    ] {'logic': 'WBL', 'anomaly': 0, 'rstatus': True, 'res': 'True', 'total_amount': 80.0, 'orderId': 'TM08202202260831123127341', 'skus': [{'sku_total': 10.0, 'tray_id': '11', 'unit_price': '10', 'image_url': 'https://images.tinymart.in/product/165143-5076.png', 'door_id': '', 'mrp': '10', 'qty': 1, 'skuid': '165143', 'name': 'Town Bus Soya Stick ,35g per peice'}, {'sku_total': 10.0, 'tray_id': '17', 'unit_price': '10', 'image_url': 'https://images.tinymart.in/product/4500708-7901.webp', 'door_id': '', 'mrp': '10', 'qty': 1, 'skuid': '4500708', 'name': 'Modern Kitchen Masala Peanut 28gm per peice'}, {'sku_total': 20.0, 'tray_id': '23', 'unit_price': '10', 'image_url': 'https://images.tinymart.in/product/4500723-3888.png', 'door_id': '', 'mrp': '10', 'qty': 2, 'skuid': '4500723', 'name': 'MaxVita Moong daal 25gm per peice'}, {'sku_total': 20.0, 'tray_id': '24', 'unit_price': '10', 'image_url': 'https://images.tinymart.in/product/4500672-7226.webp', 'door_id': '', 'mrp': '10', 'qty': 2, 'skuid': '4500672', 'name': 'Modern kitchens Garlic Mixture 26gm per peice'}, {'sku_total': 20.0, 'tray_id': '38', 'unit_price': '10', 'image_url': 'https://images.tinymart.in/product/4500677-4669.png', 'door_id': '', 'mrp': '10', 'qty': 2, 'skuid': '4500677', 'name': 'Eat Bit Peanut  Chikki 32gm per peice'}]}
[2026-08-31 12:33:56,654.654 INFO    ] 2026-08-31 12:33:56
[2026-08-31 12:33:56,656.656 INFO    ] 2026-08-31 12:33:56
[2026-08-31 12:33:56,659.659 INFO    ] 70
[2026-08-31 12:33:56,661.661 INFO    ] 2026-08-31 12:33:56
[2026-08-31 12:33:56,663.663 INFO    ] 2026-08-31 12:33:56
[2026-08-31 12:33:56,666.666 INFO    ]  You had Picked Excess of 10 Your Bill Amount is 80
[2026-08-31 12:33:56,668.668 INFO    ]  You had Picked Excess of 10 Your Bill Amount is 80
[2026-08-31 12:33:56,670.670 INFO    ] e38af2f3ca3683945c8fbe4d29017eed
[2026-08-31 12:33:56,673.673 INFO    ] 2026-08-31 12:33:56
[2026-08-31 12:33:56,675.675 INFO    ] playing audio file
[2026-08-31 12:33:56,692.692 INFO    ] 2026-08-31 12:33:56
[2026-08-31 12:33:56,695.695 INFO    ] 2026-08-31 12:33:56
[2026-08-31 12:33:56,698.698 INFO    ] publish_status: order_id=TM08202202260831123127341
[2026-08-31 12:33:56,701.701 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831123127341
[2026-08-31 12:33:56,798.798 INFO    ] [publish_status] Message added to stream with ID: 1788159836765-0
[2026-08-31 12:33:56,801.801 INFO    ] Published to order:TM08202202260831123127341: {'server_response': '{"logic": "WBL", "anomaly": 0, "rstatus": true, "res": "True", "total_amount": 80.0, "orderId": "TM08202202260831123127341", "skus": [{"sku_total": 10.0, "tray_id": "11", "unit_price": "10", "image_url": "https://images.tinymart.in/product/165143-5076.png", "door_id": "", "mrp": "10", "qty": 1, "skuid": "165143", "name": "Town Bus Soya Stick ,35g per peice"}, {"sku_total": 10.0, "tray_id": "17", "unit_price": "10", "image_url": "https://images.tinymart.in/product/4500708-7901.webp", "door_id": "", "mrp": "10", "qty": 1, "skuid": "4500708", "name": "Modern Kitchen Masala Peanut 28gm per peice"}, {"sku_total": 20.0, "tray_id": "23", "unit_price": "10", "image_url": "https://images.tinymart.in/product/4500723-3888.png", "door_id": "", "mrp": "10", "qty": 2, "skuid": "4500723", "name": "MaxVita Moong daal 25gm per peice"}, {"sku_total": 20.0, "tray_id": "24", "unit_price": "10", "image_url": "https://images.tinymart.in/product/4500672-7226.webp", "door_id": "", "mrp": "10", "qty": 2, "skuid": "4500672", "name": "Modern kitchens Garlic Mixture 26gm per peice"}, {"sku_total": 20.0, "tray_id": "38", "unit_price": "10", "image_url": "https://images.tinymart.in/product/4500677-4669.png", "door_id": "", "mrp": "10", "qty": 2, "skuid": "4500677", "name": "Eat Bit Peanut  Chikki 32gm per peice"}]}', 'order_id': 'TM08202202260831123127341', 'timestamp': '2026-08-31T07:03:56.696843Z', 'server_status': 'invoiceOrder'} (ID: 1788159836765-0)
[2026-08-31 12:33:57,420.420 INFO    ] {'server_response': {'logic': 'WBL', 'anomaly': 0, 'rstatus': True, 'res': 'True', 'total_amount': 80.0, 'orderId': 'TM08202202260831123127341', 'skus': [{'sku_total': 10.0, 'tray_id': '11', 'unit_price': '10', 'image_url': 'https://images.tinymart.in/product/165143-5076.png', 'door_id': '', 'mrp': '10', 'qty': 1, 'skuid': '165143', 'name': 'Town Bus Soya Stick ,35g per peice'}, {'sku_total': 10.0, 'tray_id': '17', 'unit_price': '10', 'image_url': 'https://images.tinymart.in/product/4500708-7901.webp', 'door_id': '', 'mrp': '10', 'qty': 1, 'skuid': '4500708', 'name': 'Modern Kitchen Masala Peanut 28gm per peice'}, {'sku_total': 20.0, 'tray_id': '23', 'unit_price': '10', 'image_url': 'https://images.tinymart.in/product/4500723-3888.png', 'door_id': '', 'mrp': '10', 'qty': 2, 'skuid': '4500723', 'name': 'MaxVita Moong daal 25gm per peice'}, {'sku_total': 20.0, 'tray_id': '24', 'unit_price': '10', 'image_url': 'https://images.tinymart.in/product/4500672-7226.webp', 'door_id': '', 'mrp': '10', 'qty': 2, 'skuid': '4500672', 'name': 'Modern kitchens Garlic Mixture 26gm per peice'}, {'sku_total': 20.0, 'tray_id': '38', 'unit_price': '10', 'image_url': 'https://images.tinymart.in/product/4500677-4669.png', 'door_id': '', 'mrp': '10', 'qty': 2, 'skuid': '4500677', 'name': 'Eat Bit Peanut  Chikki 32gm per peice'}]}, 'order_id': 'TM08202202260831123127341', 'server_status': 'invoiceOrder'}
[2026-08-31 12:33:57,423.423 INFO    ] 200
[2026-08-31 12:33:57,425.425 INFO    ] {"data":{"server_response":{"logic":"WBL","anomaly":0,"rstatus":true,"res":"true","total_amount":80,"orderId":"TM08202202260831123127341","skus":[{"sku_total":10,"tray_id":"11","unit_price":"10","image_url":"https:\/\/images.tinymart.in\/product\/165143-5076.png","door_id":"","mrp":"10","qty":1,"skuid":"165143","name":"Town Bus Soya Stick ,35g per peice"},{"sku_total":10,"tray_id":"17","unit_price":"10","image_url":"https:\/\/images.tinymart.in\/product\/4500708-7901.webp","door_id":"","mrp":"10","qty":1,"skuid":"4500708","name":"Modern Kitchen Masala Peanut 28gm per peice"},{"sku_total":20,"tray_id":"23","unit_price":"10","image_url":"https:\/\/images.tinymart.in\/product\/4500723-3888.png","door_id":"","mrp":"10","qty":2,"skuid":"4500723","name":"MaxVita Moong daal 25gm per peice"},{"sku_total":20,"tray_id":"24","unit_price":"10","image_url":"https:\/\/images.tinymart.in\/product\/4500672-7226.webp","door_id":"","mrp":"10","qty":2,"skuid":"4500672","name":"Modern kitchens Garlic Mixture 26gm per peice"},{"sku_total":20,"tray_id":"38","unit_price":"10","image_url":"https:\/\/images.tinymart.in\/product\/4500677-4669.png","door_id":"","mrp":"10","qty":2,"skuid":"4500677","name":"Eat Bit Peanut  Chikki 32gm per peice"}]},"order_id":"TM08202202260831123127341","server_status":"invoiceOrder"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 12:33:57,429.429 INFO    ] {'response': {'msg': 'order updated successfully', 'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True}, 'data': {'server_response': {'logic': 'WBL', 'anomaly': 0, 'rstatus': True, 'res': 'true', 'total_amount': 80, 'orderId': 'TM08202202260831123127341', 'skus': [{'sku_total': 10, 'tray_id': '11', 'mrp': '10', 'image_url': 'https://images.tinymart.in/product/165143-5076.png', 'door_id': '', 'unit_price': '10', 'qty': 1, 'skuid': '165143', 'name': 'Town Bus Soya Stick ,35g per peice'}, {'sku_total': 10, 'tray_id': '17', 'mrp': '10', 'image_url': 'https://images.tinymart.in/product/4500708-7901.webp', 'door_id': '', 'unit_price': '10', 'qty': 1, 'skuid': '4500708', 'name': 'Modern Kitchen Masala Peanut 28gm per peice'}, {'sku_total': 20, 'tray_id': '23', 'mrp': '10', 'image_url': 'https://images.tinymart.in/product/4500723-3888.png', 'door_id': '', 'unit_price': '10', 'qty': 2, 'skuid': '4500723', 'name': 'MaxVita Moong daal 25gm per peice'}, {'sku_total': 20, 'tray_id': '24', 'mrp': '10', 'image_url': 'https://images.tinymart.in/product/4500672-7226.webp', 'door_id': '', 'unit_price': '10', 'qty': 2, 'skuid': '4500672', 'name': 'Modern kitchens Garlic Mixture 26gm per peice'}, {'sku_total': 20, 'tray_id': '38', 'mrp': '10', 'image_url': 'https://images.tinymart.in/product/4500677-4669.png', 'door_id': '', 'unit_price': '10', 'qty': 2, 'skuid': '4500677', 'name': 'Eat Bit Peanut  Chikki 32gm per peice'}]}, 'order_id': 'TM08202202260831123127341', 'server_status': 'invoiceOrder'}}
[2026-08-31 12:33:57,432.432 INFO    ] {'response': {'msg': 'order updated successfully', 'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True}, 'data': {'server_response': {'logic': 'WBL', 'anomaly': 0, 'rstatus': True, 'res': 'true', 'total_amount': 80, 'orderId': 'TM08202202260831123127341', 'skus': [{'sku_total': 10, 'tray_id': '11', 'mrp': '10', 'image_url': 'https://images.tinymart.in/product/165143-5076.png', 'door_id': '', 'unit_price': '10', 'qty': 1, 'skuid': '165143', 'name': 'Town Bus Soya Stick ,35g per peice'}, {'sku_total': 10, 'tray_id': '17', 'mrp': '10', 'image_url': 'https://images.tinymart.in/product/4500708-7901.webp', 'door_id': '', 'unit_price': '10', 'qty': 1, 'skuid': '4500708', 'name': 'Modern Kitchen Masala Peanut 28gm per peice'}, {'sku_total': 20, 'tray_id': '23', 'mrp': '10', 'image_url': 'https://images.tinymart.in/product/4500723-3888.png', 'door_id': '', 'unit_price': '10', 'qty': 2, 'skuid': '4500723', 'name': 'MaxVita Moong daal 25gm per peice'}, {'sku_total': 20, 'tray_id': '24', 'mrp': '10', 'image_url': 'https://images.tinymart.in/product/4500672-7226.webp', 'door_id': '', 'unit_price': '10', 'qty': 2, 'skuid': '4500672', 'name': 'Modern kitchens Garlic Mixture 26gm per peice'}, {'sku_total': 20, 'tray_id': '38', 'mrp': '10', 'image_url': 'https://images.tinymart.in/product/4500677-4669.png', 'door_id': '', 'unit_price': '10', 'qty': 2, 'skuid': '4500677', 'name': 'Eat Bit Peanut  Chikki 32gm per peice'}]}, 'order_id': 'TM08202202260831123127341', 'server_status': 'invoiceOrder'}}
[2026-08-31 12:33:57,434.434 INFO    ] 2026-08-31 12:33:57
[2026-08-31 12:33:59,793.793 INFO    ] 200
[2026-08-31 12:33:59,796.796 INFO    ] {"tray_sync": [], "order_items": [], "orders_data": [], "orders_synced": ["TM08202202260831114637009"], "tray_synced": ["TM08202202260831123127341", "TM08202202260831123127341", "TM08202202260831123127341", "TM08202202260831123127341", "TM08202202260831123127341", "TM08202202260831123127341", "TM08202202260831123127341", "TM08202202260831123127341", "TM08202202260831123127341", "TM08202202260831123127341", "TM08202202260831123127341", "TM08202202260831123127341", "TM08202202260831123127341", "TM08202202260831123127341", "TM08202202260831123127341", "TM08202202260831123127341", "TM08202202260831123127341", "TM08202202260831123127341", "TM08202202260831123127341", "TM08202202260831123127341", "TM08202202260831123127341", "TM08202202260831123127341", "TM08202202260831123127341", "TM08202202260831123127341", "TM08202202260831123127341", "TM08202202260831123127341", "TM08202202260831123127341", "TM08202202260831123127341", "TM08202202260831123127341", "TM08202202260831123127341", "TM08202202260831123127341", "TM08202202260831123127341"], "orders_data_synced": [], "status": true, "order_items_synced": ["TM08202202260831123127341_0", "TM08202202260831123127341_1", "TM08202202260831123127341_2", "TM08202202260831123127341_3", "TM08202202260831123127341_4"], "orders": []}
[2026-08-31 12:33:59,799.799 INFO    ] 2026-08-31 12:33:59
[2026-08-31 12:33:59,934.934 INFO    ] 200
[2026-08-31 12:33:59,937.937 INFO    ] True
[2026-08-31 12:33:59,939.939 INFO    ] cleanup_start_order_file_after_processing: order_id=TM08202202260831123127341
[2026-08-31 12:33:59,942.942 INFO    ] start order file deleted
[2026-08-31 12:33:59,945.945 INFO    ] Checking for system updates...
[2026-08-31 12:33:59,980.980 INFO    ] 200
[2026-08-31 12:33:59,982.982 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:34:00,035.035 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:34:00,038.038 INFO    ] No update needed
[2026-08-31 12:34:00,040.040 INFO    ] Checking for camera pi updates...
[2026-08-31 12:34:00,074.074 INFO    ] 200
[2026-08-31 12:34:00,077.077 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:34:00,133.133 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:34:00,295.295 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:34:00,298.298 INFO    ] No camera update needed
[2026-08-31 12:34:00,302.302 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:34:00,305.305 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:34:00,311.311 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:34:00,317.317 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:34:02,390.390 INFO    ] ================================================
[2026-08-31 12:34:02,410.410 INFO    ] Launching Daemon at Mon Aug 31 12:34:02 IST 2026
[2026-08-31 12:34:02,423.423 INFO    ] ================================================
[2026-08-31 12:34:03,081.081 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:34:03
[2026-08-31 12:34:03,692.692 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:34:03,940.940 INFO    ] Initializing speech engine...
[2026-08-31 12:34:03,955.955 INFO    ] 2026-08-31 12:34:03
[2026-08-31 12:34:04,220.220 INFO    ] 2026-08-31 12:34:04
[2026-08-31 12:34:04,257.257 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:34:04,648.648 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:34:04,670.670 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:34:04,835.835 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:34:04,843.843 INFO    ] time= 31/08/2026 12:34:04
[2026-08-31 12:34:04,853.853 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:34:04,912.912 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:34:05,131.131 INFO    ] No existing commands found in stream
[2026-08-31 12:34:10,156.156 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:34:10,159.159 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-08-31 12:34:11,984.984 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 12:34:11,987.987 INFO    ] Checking for system updates...
[2026-08-31 12:34:12,029.029 INFO    ] 200
[2026-08-31 12:34:12,032.032 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:34:12,092.092 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:34:12,094.094 INFO    ] No update needed
[2026-08-31 12:34:12,097.097 INFO    ] Checking for camera pi updates...
[2026-08-31 12:34:12,154.154 INFO    ] 200
[2026-08-31 12:34:12,157.157 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:34:12,225.225 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:34:12,314.314 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:34:12,316.316 INFO    ] No camera update needed
[2026-08-31 12:34:12,319.319 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:34:12,321.321 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:34:12,326.326 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:34:12,331.331 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:34:14,373.373 INFO    ] ================================================
[2026-08-31 12:34:14,389.389 INFO    ] Launching Daemon at Mon Aug 31 12:34:14 IST 2026
[2026-08-31 12:34:14,400.400 INFO    ] ================================================
[2026-08-31 12:34:15,051.051 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:34:15
[2026-08-31 12:34:15,739.739 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:34:16,052.052 INFO    ] Initializing speech engine...
[2026-08-31 12:34:16,061.061 INFO    ] 2026-08-31 12:34:16
[2026-08-31 12:34:16,337.337 INFO    ] 2026-08-31 12:34:16
[2026-08-31 12:34:16,397.397 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:34:16,633.633 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:34:16,639.639 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:34:16,845.845 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:34:16,905.905 INFO    ] time= 31/08/2026 12:34:16
[2026-08-31 12:34:16,912.912 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:34:16,932.932 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:34:17,060.060 INFO    ] No existing commands found in stream
[2026-08-31 12:34:22,078.078 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:34:22,082.082 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-08-31 12:34:24,731.731 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 12:34:24,734.734 INFO    ] Checking for system updates...
[2026-08-31 12:34:24,772.772 INFO    ] 200
[2026-08-31 12:34:24,775.775 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:34:24,828.828 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:34:24,831.831 INFO    ] No update needed
[2026-08-31 12:34:24,834.834 INFO    ] Checking for camera pi updates...
[2026-08-31 12:34:24,869.869 INFO    ] 200
[2026-08-31 12:34:24,871.871 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:34:24,913.913 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:34:25,017.017 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:34:25,020.020 INFO    ] No camera update needed
[2026-08-31 12:34:25,022.022 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:34:25,025.025 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:34:25,032.032 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:34:25,038.038 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:34:27,080.080 INFO    ] ================================================
[2026-08-31 12:34:27,153.153 INFO    ] Launching Daemon at Mon Aug 31 12:34:27 IST 2026
[2026-08-31 12:34:27,164.164 INFO    ] ================================================
[2026-08-31 12:34:27,807.807 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:34:27
[2026-08-31 12:34:28,430.430 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:34:28,693.693 INFO    ] Initializing speech engine...
[2026-08-31 12:34:28,700.700 INFO    ] 2026-08-31 12:34:28
[2026-08-31 12:34:29,000.000 INFO    ] 2026-08-31 12:34:28
[2026-08-31 12:34:29,026.026 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:34:29,279.279 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:34:29,342.342 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:34:29,515.515 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:34:29,538.538 INFO    ] time= 31/08/2026 12:34:29
[2026-08-31 12:34:29,592.592 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:34:29,626.626 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:34:29,753.753 INFO    ] No existing commands found in stream
[2026-08-31 12:34:34,778.778 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:34:34,781.781 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-08-31 12:34:36,984.984 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 12:34:36,987.987 INFO    ] Checking for system updates...
[2026-08-31 12:34:37,028.028 INFO    ] 200
[2026-08-31 12:34:37,030.030 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:34:37,090.090 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:34:37,092.092 INFO    ] No update needed
[2026-08-31 12:34:37,094.094 INFO    ] Checking for camera pi updates...
[2026-08-31 12:34:37,128.128 INFO    ] 200
[2026-08-31 12:34:37,130.130 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:34:37,170.170 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:34:37,276.276 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:34:37,279.279 INFO    ] No camera update needed
[2026-08-31 12:34:37,282.282 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:34:37,284.284 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:34:37,289.289 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:34:37,294.294 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:34:39,335.335 INFO    ] ================================================
[2026-08-31 12:34:39,351.351 INFO    ] Launching Daemon at Mon Aug 31 12:34:39 IST 2026
[2026-08-31 12:34:39,361.361 INFO    ] ================================================
[2026-08-31 12:34:39,930.930 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:34:39
[2026-08-31 12:34:40,511.511 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:34:40,756.756 INFO    ] Initializing speech engine...
[2026-08-31 12:34:40,765.765 INFO    ] 2026-08-31 12:34:40
[2026-08-31 12:34:41,036.036 INFO    ] 2026-08-31 12:34:41
[2026-08-31 12:34:41,072.072 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:34:41,270.270 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:34:41,329.329 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:34:41,470.470 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:34:41,535.535 INFO    ] time= 31/08/2026 12:34:41
[2026-08-31 12:34:41,595.595 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:34:41,604.604 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:34:41,751.751 INFO    ] No existing commands found in stream
[2026-08-31 12:34:46,770.770 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:34:46,772.772 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-08-31 12:34:50,829.829 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 12:34:50,832.832 INFO    ] Checking for system updates...
[2026-08-31 12:34:50,868.868 INFO    ] 200
[2026-08-31 12:34:50,870.870 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:34:50,922.922 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:34:50,924.924 INFO    ] No update needed
[2026-08-31 12:34:50,927.927 INFO    ] Checking for camera pi updates...
[2026-08-31 12:34:50,961.961 INFO    ] 200
[2026-08-31 12:34:50,963.963 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:34:51,008.008 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:34:51,189.189 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:34:51,191.191 INFO    ] No camera update needed
[2026-08-31 12:34:51,194.194 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:34:51,196.196 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:34:51,201.201 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:34:51,206.206 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:34:53,249.249 INFO    ] ================================================
[2026-08-31 12:34:53,264.264 INFO    ] Launching Daemon at Mon Aug 31 12:34:53 IST 2026
[2026-08-31 12:34:53,274.274 INFO    ] ================================================
[2026-08-31 12:34:53,860.860 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:34:53
[2026-08-31 12:34:54,445.445 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:34:54,712.712 INFO    ] Initializing speech engine...
[2026-08-31 12:34:54,721.721 INFO    ] 2026-08-31 12:34:54
[2026-08-31 12:34:54,968.968 INFO    ] 2026-08-31 12:34:54
[2026-08-31 12:34:55,003.003 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:34:55,280.280 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:34:55,287.287 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:34:55,563.563 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:34:55,573.573 INFO    ] time= 31/08/2026 12:34:55
[2026-08-31 12:34:55,588.588 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:34:55,655.655 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:34:55,818.818 INFO    ] No existing commands found in stream
[2026-08-31 12:35:00,843.843 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:35:00,846.846 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-08-31 12:35:04,588.588 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 12:35:04,590.590 INFO    ] Checking for system updates...
[2026-08-31 12:35:04,630.630 INFO    ] 200
[2026-08-31 12:35:04,633.633 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:35:04,690.690 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:35:04,692.692 INFO    ] No update needed
[2026-08-31 12:35:04,695.695 INFO    ] Checking for camera pi updates...
[2026-08-31 12:35:04,733.733 INFO    ] 200
[2026-08-31 12:35:04,736.736 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:35:04,778.778 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:35:04,866.866 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:35:04,869.869 INFO    ] No camera update needed
[2026-08-31 12:35:04,871.871 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:35:04,874.874 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:35:04,880.880 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:35:04,886.886 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:35:06,932.932 INFO    ] ================================================
[2026-08-31 12:35:06,947.947 INFO    ] Launching Daemon at Mon Aug 31 12:35:06 IST 2026
[2026-08-31 12:35:06,958.958 INFO    ] ================================================
[2026-08-31 12:35:07,552.552 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:35:07
[2026-08-31 12:35:08,213.213 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:35:08,518.518 INFO    ] Initializing speech engine...
[2026-08-31 12:35:08,532.532 INFO    ] 2026-08-31 12:35:08
[2026-08-31 12:35:08,805.805 INFO    ] 2026-08-31 12:35:08
[2026-08-31 12:35:08,865.865 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:35:09,189.189 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:35:09,222.222 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:35:09,594.594 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:35:09,630.630 INFO    ] time= 31/08/2026 12:35:09
[2026-08-31 12:35:09,685.685 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:35:09,744.744 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:35:09,916.916 INFO    ] No existing commands found in stream
[2026-08-31 12:35:14,937.937 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:35:14,940.940 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-08-31 12:35:18,928.928 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 12:35:18,931.931 INFO    ] Checking for system updates...
[2026-08-31 12:35:18,968.968 INFO    ] 200
[2026-08-31 12:35:18,971.971 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:35:19,030.030 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:35:19,033.033 INFO    ] No update needed
[2026-08-31 12:35:19,036.036 INFO    ] Checking for camera pi updates...
[2026-08-31 12:35:19,075.075 INFO    ] 200
[2026-08-31 12:35:19,078.078 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:35:19,121.121 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:35:19,211.211 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:35:19,214.214 INFO    ] No camera update needed
[2026-08-31 12:35:19,216.216 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:35:19,218.218 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:35:19,224.224 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:35:19,229.229 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:35:21,268.268 INFO    ] ================================================
[2026-08-31 12:35:21,283.283 INFO    ] Launching Daemon at Mon Aug 31 12:35:21 IST 2026
[2026-08-31 12:35:21,294.294 INFO    ] ================================================
[2026-08-31 12:35:21,859.859 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:35:21
[2026-08-31 12:35:22,440.440 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:35:22,707.707 INFO    ] Initializing speech engine...
[2026-08-31 12:35:22,716.716 INFO    ] 2026-08-31 12:35:22
[2026-08-31 12:35:22,961.961 INFO    ] 2026-08-31 12:35:22
[2026-08-31 12:35:22,996.996 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:35:23,188.188 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:35:23,216.216 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:35:23,512.512 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:35:23,530.530 INFO    ] time= 31/08/2026 12:35:23
[2026-08-31 12:35:23,557.557 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:35:23,565.565 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:35:23,734.734 INFO    ] No existing commands found in stream
[2026-08-31 12:35:28,759.759 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:35:28,762.762 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-08-31 12:35:32,545.545 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 12:35:32,548.548 INFO    ] Checking for system updates...
[2026-08-31 12:35:32,590.590 INFO    ] 200
[2026-08-31 12:35:32,593.593 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:35:32,659.659 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:35:32,662.662 INFO    ] No update needed
[2026-08-31 12:35:32,666.666 INFO    ] Checking for camera pi updates...
[2026-08-31 12:35:32,704.704 INFO    ] 200
[2026-08-31 12:35:32,707.707 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:35:32,760.760 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:35:32,860.860 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:35:32,863.863 INFO    ] No camera update needed
[2026-08-31 12:35:32,866.866 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:35:32,869.869 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:35:32,877.877 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:35:32,883.883 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:35:34,925.925 INFO    ] ================================================
[2026-08-31 12:35:34,940.940 INFO    ] Launching Daemon at Mon Aug 31 12:35:34 IST 2026
[2026-08-31 12:35:34,951.951 INFO    ] ================================================
[2026-08-31 12:35:35,578.578 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:35:35
[2026-08-31 12:35:36,250.250 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:35:36,555.555 INFO    ] Initializing speech engine...
[2026-08-31 12:35:36,563.563 INFO    ] 2026-08-31 12:35:36
[2026-08-31 12:35:36,879.879 INFO    ] 2026-08-31 12:35:36
[2026-08-31 12:35:36,964.964 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:35:37,976.976 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:35:38,020.020 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:35:39,629.629 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:35:39,646.646 INFO    ] time= 31/08/2026 12:35:39
[2026-08-31 12:35:39,659.659 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:35:39,666.666 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:35:41,186.186 INFO    ] No existing commands found in stream
[2026-08-31 12:35:46,196.196 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:35:46,199.199 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-08-31 12:35:50,346.346 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 12:35:50,349.349 INFO    ] Checking for system updates...
[2026-08-31 12:35:50,386.386 INFO    ] 200
[2026-08-31 12:35:50,389.389 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:35:50,446.446 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:35:50,449.449 INFO    ] No update needed
[2026-08-31 12:35:50,451.451 INFO    ] Checking for camera pi updates...
[2026-08-31 12:35:50,486.486 INFO    ] 200
[2026-08-31 12:35:50,490.490 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:35:50,536.536 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:35:50,637.637 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:35:50,639.639 INFO    ] No camera update needed
[2026-08-31 12:35:50,642.642 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:35:50,644.644 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:35:50,649.649 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:35:50,654.654 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:35:52,696.696 INFO    ] ================================================
[2026-08-31 12:35:52,711.711 INFO    ] Launching Daemon at Mon Aug 31 12:35:52 IST 2026
[2026-08-31 12:35:52,722.722 INFO    ] ================================================
[2026-08-31 12:35:53,323.323 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:35:53
[2026-08-31 12:35:53,912.912 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:35:54,167.167 INFO    ] Initializing speech engine...
[2026-08-31 12:35:54,191.191 INFO    ] 2026-08-31 12:35:54
[2026-08-31 12:35:54,466.466 INFO    ] 2026-08-31 12:35:54
[2026-08-31 12:35:54,505.505 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:35:55,520.520 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:35:55,523.523 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:35:56,385.385 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:35:56,398.398 INFO    ] time= 31/08/2026 12:35:56
[2026-08-31 12:35:56,450.450 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:35:56,457.457 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:35:57,163.163 INFO    ] No existing commands found in stream
[2026-08-31 12:36:02,170.170 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:36:02,173.173 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-08-31 12:36:05,630.630 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 12:36:05,635.635 INFO    ] Checking for system updates...
[2026-08-31 12:36:05,678.678 INFO    ] 200
[2026-08-31 12:36:05,681.681 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:36:05,734.734 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:36:05,737.737 INFO    ] No update needed
[2026-08-31 12:36:05,740.740 INFO    ] Checking for camera pi updates...
[2026-08-31 12:36:05,778.778 INFO    ] 200
[2026-08-31 12:36:05,781.781 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:36:05,823.823 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:36:05,922.922 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:36:05,924.924 INFO    ] No camera update needed
[2026-08-31 12:36:05,927.927 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:36:05,930.930 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:36:05,936.936 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:36:05,942.942 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:36:07,983.983 INFO    ] ================================================
[2026-08-31 12:36:08,999.999 INFO    ] Launching Daemon at Mon Aug 31 12:36:07 IST 2026
[2026-08-31 12:36:08,010.010 INFO    ] ================================================
[2026-08-31 12:36:08,642.642 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:36:08
[2026-08-31 12:36:09,264.264 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:36:09,530.530 INFO    ] Initializing speech engine...
[2026-08-31 12:36:09,538.538 INFO    ] 2026-08-31 12:36:09
[2026-08-31 12:36:09,784.784 INFO    ] 2026-08-31 12:36:09
[2026-08-31 12:36:09,820.820 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:36:10,747.747 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:36:10,750.750 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:36:11,955.955 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:36:11,974.974 INFO    ] time= 31/08/2026 12:36:11
[2026-08-31 12:36:11,988.988 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:36:11,995.995 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:36:13,175.175 INFO    ] No existing commands found in stream
[2026-08-31 12:36:18,179.179 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:36:18,182.182 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-08-31 12:36:22,277.277 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 12:36:22,279.279 INFO    ] Checking for system updates...
[2026-08-31 12:36:22,315.315 INFO    ] 200
[2026-08-31 12:36:22,318.318 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:36:22,371.371 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:36:22,374.374 INFO    ] No update needed
[2026-08-31 12:36:22,376.376 INFO    ] Checking for camera pi updates...
[2026-08-31 12:36:22,410.410 INFO    ] 200
[2026-08-31 12:36:22,412.412 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:36:22,453.453 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:36:22,561.561 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:36:22,563.563 INFO    ] No camera update needed
[2026-08-31 12:36:22,566.566 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:36:22,568.568 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:36:22,576.576 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:36:22,583.583 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:36:24,625.625 INFO    ] ================================================
[2026-08-31 12:36:24,640.640 INFO    ] Launching Daemon at Mon Aug 31 12:36:24 IST 2026
[2026-08-31 12:36:24,651.651 INFO    ] ================================================
[2026-08-31 12:36:25,216.216 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:36:25
[2026-08-31 12:36:25,801.801 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:36:26,053.053 INFO    ] Initializing speech engine...
[2026-08-31 12:36:26,061.061 INFO    ] 2026-08-31 12:36:26
[2026-08-31 12:36:26,357.357 INFO    ] 2026-08-31 12:36:26
[2026-08-31 12:36:26,395.395 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:36:26,615.615 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:36:26,660.660 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:36:26,920.920 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:36:26,958.958 INFO    ] time= 31/08/2026 12:36:26
[2026-08-31 12:36:26,965.965 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:36:26,984.984 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:36:27,108.108 INFO    ] No existing commands found in stream
[2026-08-31 12:36:32,130.130 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:36:32,133.133 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-08-31 12:36:36,078.078 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 12:36:36,081.081 INFO    ] Checking for system updates...
[2026-08-31 12:36:36,117.117 INFO    ] 200
[2026-08-31 12:36:36,119.119 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:36:36,172.172 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:36:36,174.174 INFO    ] No update needed
[2026-08-31 12:36:36,177.177 INFO    ] Checking for camera pi updates...
[2026-08-31 12:36:36,210.210 INFO    ] 200
[2026-08-31 12:36:36,212.212 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:36:36,252.252 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:36:36,335.335 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:36:36,338.338 INFO    ] No camera update needed
[2026-08-31 12:36:36,340.340 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:36:36,342.342 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:36:36,347.347 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:36:36,352.352 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:36:38,393.393 INFO    ] ================================================
[2026-08-31 12:36:38,408.408 INFO    ] Launching Daemon at Mon Aug 31 12:36:38 IST 2026
[2026-08-31 12:36:38,419.419 INFO    ] ================================================
[2026-08-31 12:36:39,012.012 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:36:39
[2026-08-31 12:36:39,598.598 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:36:39,852.852 INFO    ] Initializing speech engine...
[2026-08-31 12:36:39,868.868 INFO    ] 2026-08-31 12:36:39
[2026-08-31 12:36:40,158.158 INFO    ] 2026-08-31 12:36:40
[2026-08-31 12:36:40,193.193 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:36:40,505.505 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:36:40,511.511 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:36:40,811.811 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:36:40,819.819 INFO    ] time= 31/08/2026 12:36:40
[2026-08-31 12:36:40,836.836 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:36:40,843.843 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:36:41,114.114 INFO    ] No existing commands found in stream
[2026-08-31 12:36:46,125.125 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:36:46,128.128 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-08-31 12:36:46,763.763 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 12:36:46,766.766 INFO    ] Checking for system updates...
[2026-08-31 12:36:46,802.802 INFO    ] 200
[2026-08-31 12:36:46,805.805 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:36:46,860.860 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:36:46,862.862 INFO    ] No update needed
[2026-08-31 12:36:46,865.865 INFO    ] Checking for camera pi updates...
[2026-08-31 12:36:46,900.900 INFO    ] 200
[2026-08-31 12:36:46,903.903 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:36:46,946.946 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:36:47,038.038 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:36:47,041.041 INFO    ] No camera update needed
[2026-08-31 12:36:47,044.044 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:36:47,047.047 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:36:47,053.053 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:36:47,059.059 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:36:49,101.101 INFO    ] ================================================
[2026-08-31 12:36:49,117.117 INFO    ] Launching Daemon at Mon Aug 31 12:36:49 IST 2026
[2026-08-31 12:36:49,128.128 INFO    ] ================================================
[2026-08-31 12:36:49,703.703 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:36:49
[2026-08-31 12:36:50,285.285 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:36:50,539.539 INFO    ] Initializing speech engine...
[2026-08-31 12:36:50,548.548 INFO    ] 2026-08-31 12:36:50
[2026-08-31 12:36:50,846.846 INFO    ] 2026-08-31 12:36:50
[2026-08-31 12:36:50,872.872 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:36:51,087.087 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:36:51,101.101 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:36:51,349.349 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:36:51,398.398 INFO    ] time= 31/08/2026 12:36:51
[2026-08-31 12:36:51,452.452 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:36:51,500.500 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:36:51,686.686 INFO    ] No existing commands found in stream
[2026-08-31 12:36:56,717.717 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:36:56,719.719 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-08-31 12:36:58,520.520 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 12:36:58,522.522 INFO    ] Checking for system updates...
[2026-08-31 12:36:58,557.557 INFO    ] 200
[2026-08-31 12:36:58,560.560 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:36:58,612.612 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:36:58,614.614 INFO    ] No update needed
[2026-08-31 12:36:58,616.616 INFO    ] Checking for camera pi updates...
[2026-08-31 12:36:58,657.657 INFO    ] 200
[2026-08-31 12:36:58,661.661 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:36:58,703.703 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:36:58,895.895 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:36:58,898.898 INFO    ] No camera update needed
[2026-08-31 12:36:58,901.901 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:36:58,903.903 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:36:58,910.910 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:36:58,916.916 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:37:00,959.959 INFO    ] ================================================
[2026-08-31 12:37:00,974.974 INFO    ] Launching Daemon at Mon Aug 31 12:37:00 IST 2026
[2026-08-31 12:37:00,986.986 INFO    ] ================================================
[2026-08-31 12:37:01,569.569 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:37:01
[2026-08-31 12:37:02,383.383 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:37:02,717.717 INFO    ] Initializing speech engine...
[2026-08-31 12:37:02,729.729 INFO    ] 2026-08-31 12:37:02
[2026-08-31 12:37:03,015.015 INFO    ] 2026-08-31 12:37:03
[2026-08-31 12:37:03,071.071 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:37:03,299.299 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:37:03,301.301 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:37:03,495.495 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:37:03,522.522 INFO    ] time= 31/08/2026 12:37:03
[2026-08-31 12:37:03,551.551 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:37:03,560.560 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:37:03,695.695 INFO    ] No existing commands found in stream
[2026-08-31 12:37:08,706.706 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:37:08,709.709 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-08-31 12:37:13,968.968 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 12:37:13,971.971 INFO    ] Checking for system updates...
[2026-08-31 12:37:14,008.008 INFO    ] 200
[2026-08-31 12:37:14,011.011 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:37:14,063.063 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:37:14,066.066 INFO    ] No update needed
[2026-08-31 12:37:14,069.069 INFO    ] Checking for camera pi updates...
[2026-08-31 12:37:14,108.108 INFO    ] 200
[2026-08-31 12:37:14,111.111 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:37:14,157.157 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:37:14,242.242 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:37:14,245.245 INFO    ] No camera update needed
[2026-08-31 12:37:14,248.248 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:37:14,250.250 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:37:14,256.256 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:37:14,262.262 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:37:16,303.303 INFO    ] ================================================
[2026-08-31 12:37:16,318.318 INFO    ] Launching Daemon at Mon Aug 31 12:37:16 IST 2026
[2026-08-31 12:37:16,329.329 INFO    ] ================================================
[2026-08-31 12:37:16,983.983 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:37:16
[2026-08-31 12:37:17,572.572 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:37:17,818.818 INFO    ] Initializing speech engine...
[2026-08-31 12:37:17,826.826 INFO    ] 2026-08-31 12:37:17
[2026-08-31 12:37:18,102.102 INFO    ] 2026-08-31 12:37:18
[2026-08-31 12:37:18,137.137 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:37:18,612.612 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:37:18,650.650 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:37:19,020.020 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:37:19,053.053 INFO    ] time= 31/08/2026 12:37:19
[2026-08-31 12:37:19,093.093 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:37:19,101.101 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:37:19,220.220 INFO    ] No existing commands found in stream
[2026-08-31 12:37:24,240.240 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:37:24,243.243 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-08-31 12:37:30,546.546 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 12:37:30,549.549 INFO    ] Checking for system updates...
[2026-08-31 12:37:30,584.584 INFO    ] 200
[2026-08-31 12:37:30,586.586 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:37:30,639.639 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:37:30,642.642 INFO    ] No update needed
[2026-08-31 12:37:30,644.644 INFO    ] Checking for camera pi updates...
[2026-08-31 12:37:30,678.678 INFO    ] 200
[2026-08-31 12:37:30,681.681 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:37:30,720.720 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:37:30,817.817 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:37:30,819.819 INFO    ] No camera update needed
[2026-08-31 12:37:30,822.822 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:37:30,824.824 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:37:30,829.829 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:37:30,834.834 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:37:32,878.878 INFO    ] ================================================
[2026-08-31 12:37:32,895.895 INFO    ] Launching Daemon at Mon Aug 31 12:37:32 IST 2026
[2026-08-31 12:37:32,906.906 INFO    ] ================================================
[2026-08-31 12:37:33,532.532 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:37:33
[2026-08-31 12:37:34,135.135 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:37:34,430.430 INFO    ] Initializing speech engine...
[2026-08-31 12:37:34,437.437 INFO    ] 2026-08-31 12:37:34
[2026-08-31 12:37:34,721.721 INFO    ] 2026-08-31 12:37:34
[2026-08-31 12:37:34,768.768 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:37:34,994.994 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:37:34,999.999 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:37:35,218.218 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:37:35,261.261 INFO    ] time= 31/08/2026 12:37:35
[2026-08-31 12:37:35,278.278 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:37:35,288.288 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:37:35,425.425 INFO    ] No existing commands found in stream
[2026-08-31 12:37:40,452.452 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:37:40,455.455 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-08-31 12:37:43,242.242 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 12:37:43,245.245 INFO    ] Checking for system updates...
[2026-08-31 12:37:43,281.281 INFO    ] 200
[2026-08-31 12:37:43,284.284 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:37:43,343.343 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:37:43,346.346 INFO    ] No update needed
[2026-08-31 12:37:43,349.349 INFO    ] Checking for camera pi updates...
[2026-08-31 12:37:43,384.384 INFO    ] 200
[2026-08-31 12:37:43,386.386 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:37:43,432.432 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:37:43,539.539 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:37:43,541.541 INFO    ] No camera update needed
[2026-08-31 12:37:43,544.544 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:37:43,546.546 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:37:43,553.553 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:37:43,558.558 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:37:45,600.600 INFO    ] ================================================
[2026-08-31 12:37:45,615.615 INFO    ] Launching Daemon at Mon Aug 31 12:37:45 IST 2026
[2026-08-31 12:37:45,626.626 INFO    ] ================================================
[2026-08-31 12:37:46,211.211 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:37:46
[2026-08-31 12:37:46,810.810 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:37:47,071.071 INFO    ] Initializing speech engine...
[2026-08-31 12:37:47,087.087 INFO    ] 2026-08-31 12:37:47
[2026-08-31 12:37:47,351.351 INFO    ] 2026-08-31 12:37:47
[2026-08-31 12:37:47,410.410 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:37:48,311.311 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:37:48,317.317 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:37:49,195.195 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:37:49,228.228 INFO    ] time= 31/08/2026 12:37:49
[2026-08-31 12:37:49,234.234 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:37:49,239.239 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:37:49,861.861 INFO    ] No existing commands found in stream
[2026-08-31 12:37:54,873.873 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:37:54,876.876 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-08-31 12:37:57,447.447 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 12:37:57,450.450 INFO    ] Checking for system updates...
[2026-08-31 12:37:57,489.489 INFO    ] 200
[2026-08-31 12:37:57,492.492 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:37:57,545.545 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:37:57,547.547 INFO    ] No update needed
[2026-08-31 12:37:57,550.550 INFO    ] Checking for camera pi updates...
[2026-08-31 12:37:57,583.583 INFO    ] 200
[2026-08-31 12:37:57,586.586 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:37:57,631.631 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:37:57,714.714 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:37:57,716.716 INFO    ] No camera update needed
[2026-08-31 12:37:57,719.719 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:37:57,721.721 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:37:57,726.726 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:37:57,732.732 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:37:59,772.772 INFO    ] ================================================
[2026-08-31 12:37:59,788.788 INFO    ] Launching Daemon at Mon Aug 31 12:37:59 IST 2026
[2026-08-31 12:37:59,799.799 INFO    ] ================================================
[2026-08-31 12:38:00,423.423 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:38:00
[2026-08-31 12:38:01,004.004 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:38:01,274.274 INFO    ] Initializing speech engine...
[2026-08-31 12:38:01,280.280 INFO    ] 2026-08-31 12:38:01
[2026-08-31 12:38:01,526.526 INFO    ] 2026-08-31 12:38:01
[2026-08-31 12:38:01,590.590 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:38:01,963.963 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:38:01,969.969 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:38:02,159.159 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:38:02,163.163 INFO    ] time= 31/08/2026 12:38:02
[2026-08-31 12:38:02,182.182 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:38:02,185.185 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:38:02,288.288 INFO    ] No existing commands found in stream
[2026-08-31 12:38:07,299.299 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:38:07,301.301 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-08-31 12:38:09,287.287 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 12:38:09,289.289 INFO    ] Checking for system updates...
[2026-08-31 12:38:09,325.325 INFO    ] 200
[2026-08-31 12:38:09,328.328 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:38:09,387.387 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:38:09,390.390 INFO    ] No update needed
[2026-08-31 12:38:09,392.392 INFO    ] Checking for camera pi updates...
[2026-08-31 12:38:09,428.428 INFO    ] 200
[2026-08-31 12:38:09,431.431 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:38:09,475.475 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:38:09,545.545 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:38:09,547.547 INFO    ] No camera update needed
[2026-08-31 12:38:09,550.550 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:38:09,552.552 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:38:09,557.557 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:38:09,562.562 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:38:11,602.602 INFO    ] ================================================
[2026-08-31 12:38:11,617.617 INFO    ] Launching Daemon at Mon Aug 31 12:38:11 IST 2026
[2026-08-31 12:38:11,629.629 INFO    ] ================================================
[2026-08-31 12:38:12,277.277 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:38:12
[2026-08-31 12:38:12,959.959 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:38:13,258.258 INFO    ] Initializing speech engine...
[2026-08-31 12:38:13,266.266 INFO    ] 2026-08-31 12:38:13
[2026-08-31 12:38:13,584.584 INFO    ] 2026-08-31 12:38:13
[2026-08-31 12:38:13,667.667 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:38:13,881.881 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:38:13,889.889 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:38:14,084.084 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:38:14,103.103 INFO    ] time= 31/08/2026 12:38:14
[2026-08-31 12:38:14,132.132 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:38:14,139.139 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:38:14,281.281 INFO    ] No existing commands found in stream
[2026-08-31 12:38:19,307.307 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:38:19,310.310 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-08-31 12:38:22,090.090 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 12:38:22,093.093 INFO    ] Checking for system updates...
[2026-08-31 12:38:22,131.131 INFO    ] 200
[2026-08-31 12:38:22,133.133 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:38:22,192.192 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:38:22,194.194 INFO    ] No update needed
[2026-08-31 12:38:22,197.197 INFO    ] Checking for camera pi updates...
[2026-08-31 12:38:22,230.230 INFO    ] 200
[2026-08-31 12:38:22,233.233 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:38:22,274.274 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:38:22,337.337 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:38:22,340.340 INFO    ] No camera update needed
[2026-08-31 12:38:22,342.342 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:38:22,344.344 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:38:22,350.350 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:38:22,355.355 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:38:24,399.399 INFO    ] ================================================
[2026-08-31 12:38:24,414.414 INFO    ] Launching Daemon at Mon Aug 31 12:38:24 IST 2026
[2026-08-31 12:38:24,425.425 INFO    ] ================================================
[2026-08-31 12:38:25,066.066 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:38:25
[2026-08-31 12:38:25,727.727 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:38:26,028.028 INFO    ] Initializing speech engine...
[2026-08-31 12:38:26,041.041 INFO    ] 2026-08-31 12:38:26
[2026-08-31 12:38:26,350.350 INFO    ] 2026-08-31 12:38:26
[2026-08-31 12:38:26,435.435 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:38:26,648.648 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:38:26,653.653 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:38:26,849.849 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:38:26,857.857 INFO    ] time= 31/08/2026 12:38:26
[2026-08-31 12:38:26,875.875 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:38:26,904.904 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:38:27,021.021 INFO    ] No existing commands found in stream
[2026-08-31 12:38:32,046.046 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:38:32,050.050 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-08-31 12:38:35,487.487 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 12:38:35,490.490 INFO    ] Checking for system updates...
[2026-08-31 12:38:35,531.531 INFO    ] 200
[2026-08-31 12:38:35,534.534 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:38:35,587.587 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:38:35,590.590 INFO    ] No update needed
[2026-08-31 12:38:35,593.593 INFO    ] Checking for camera pi updates...
[2026-08-31 12:38:35,631.631 INFO    ] 200
[2026-08-31 12:38:35,633.633 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:38:35,674.674 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:38:35,777.777 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:38:35,779.779 INFO    ] No camera update needed
[2026-08-31 12:38:35,782.782 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:38:35,784.784 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:38:35,789.789 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:38:35,794.794 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:38:37,836.836 INFO    ] ================================================
[2026-08-31 12:38:37,852.852 INFO    ] Launching Daemon at Mon Aug 31 12:38:37 IST 2026
[2026-08-31 12:38:37,863.863 INFO    ] ================================================
[2026-08-31 12:38:38,488.488 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:38:38
[2026-08-31 12:38:39,151.151 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:38:39,448.448 INFO    ] Initializing speech engine...
[2026-08-31 12:38:39,459.459 INFO    ] 2026-08-31 12:38:39
[2026-08-31 12:38:39,741.741 INFO    ] 2026-08-31 12:38:39
[2026-08-31 12:38:39,784.784 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:38:40,011.011 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:38:40,017.017 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:38:40,392.392 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:38:40,429.429 INFO    ] time= 31/08/2026 12:38:40
[2026-08-31 12:38:40,484.484 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:38:40,526.526 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:38:40,705.705 INFO    ] No existing commands found in stream
[2026-08-31 12:38:45,725.725 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:38:45,729.729 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-08-31 12:38:47,967.967 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 12:38:47,971.971 INFO    ] Checking for system updates...
[2026-08-31 12:38:48,011.011 INFO    ] 200
[2026-08-31 12:38:48,015.015 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:38:48,074.074 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:38:48,077.077 INFO    ] No update needed
[2026-08-31 12:38:48,080.080 INFO    ] Checking for camera pi updates...
[2026-08-31 12:38:48,124.124 INFO    ] 200
[2026-08-31 12:38:48,126.126 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:38:48,183.183 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:38:48,273.273 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:38:48,276.276 INFO    ] No camera update needed
[2026-08-31 12:38:48,279.279 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:38:48,282.282 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:38:48,289.289 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:38:48,295.295 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:38:50,337.337 INFO    ] ================================================
[2026-08-31 12:38:50,356.356 INFO    ] Launching Daemon at Mon Aug 31 12:38:50 IST 2026
[2026-08-31 12:38:50,368.368 INFO    ] ================================================
[2026-08-31 12:38:50,950.950 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:38:50
[2026-08-31 12:38:51,554.554 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:38:51,843.843 INFO    ] Initializing speech engine...
[2026-08-31 12:38:51,849.849 INFO    ] 2026-08-31 12:38:51
[2026-08-31 12:38:52,118.118 INFO    ] 2026-08-31 12:38:52
[2026-08-31 12:38:52,170.170 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:38:52,522.522 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:38:52,593.593 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:38:52,801.801 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:38:52,829.829 INFO    ] time= 31/08/2026 12:38:52
[2026-08-31 12:38:52,911.911 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:38:52,948.948 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:38:53,071.071 INFO    ] No existing commands found in stream
[2026-08-31 12:38:58,087.087 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:38:58,090.090 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-08-31 12:39:00,433.433 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 12:39:00,435.435 INFO    ] Checking for system updates...
[2026-08-31 12:39:00,471.471 INFO    ] 200
[2026-08-31 12:39:00,474.474 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:39:00,527.527 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:39:00,530.530 INFO    ] No update needed
[2026-08-31 12:39:00,532.532 INFO    ] Checking for camera pi updates...
[2026-08-31 12:39:00,566.566 INFO    ] 200
[2026-08-31 12:39:00,568.568 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:39:00,613.613 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:39:00,819.819 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:39:00,821.821 INFO    ] No camera update needed
[2026-08-31 12:39:00,824.824 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:39:00,826.826 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:39:00,831.831 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:39:00,836.836 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:39:02,888.888 INFO    ] ================================================
[2026-08-31 12:39:02,909.909 INFO    ] Launching Daemon at Mon Aug 31 12:39:02 IST 2026
[2026-08-31 12:39:02,926.926 INFO    ] ================================================
[2026-08-31 12:39:03,587.587 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:39:03
[2026-08-31 12:39:04,279.279 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:39:04,580.580 INFO    ] Initializing speech engine...
[2026-08-31 12:39:04,588.588 INFO    ] 2026-08-31 12:39:04
[2026-08-31 12:39:04,865.865 INFO    ] 2026-08-31 12:39:04
[2026-08-31 12:39:04,919.919 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:39:05,267.267 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:39:05,299.299 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:39:05,546.546 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:39:05,588.588 INFO    ] time= 31/08/2026 12:39:05
[2026-08-31 12:39:05,638.638 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:39:05,679.679 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:39:05,792.792 INFO    ] No existing commands found in stream
[2026-08-31 12:39:10,802.802 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:39:10,805.805 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-08-31 12:39:15,199.199 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 12:39:15,202.202 INFO    ] Checking for system updates...
[2026-08-31 12:39:15,239.239 INFO    ] 200
[2026-08-31 12:39:15,242.242 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:39:15,294.294 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:39:15,296.296 INFO    ] No update needed
[2026-08-31 12:39:15,299.299 INFO    ] Checking for camera pi updates...
[2026-08-31 12:39:15,340.340 INFO    ] 200
[2026-08-31 12:39:15,342.342 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:39:15,383.383 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:39:15,469.469 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:39:15,471.471 INFO    ] No camera update needed
[2026-08-31 12:39:15,473.473 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:39:15,476.476 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:39:15,481.481 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:39:15,486.486 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:39:17,527.527 INFO    ] ================================================
[2026-08-31 12:39:17,543.543 INFO    ] Launching Daemon at Mon Aug 31 12:39:17 IST 2026
[2026-08-31 12:39:17,554.554 INFO    ] ================================================
[2026-08-31 12:39:18,120.120 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:39:18
[2026-08-31 12:39:18,703.703 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:39:18,951.951 INFO    ] Initializing speech engine...
[2026-08-31 12:39:18,974.974 INFO    ] 2026-08-31 12:39:18
[2026-08-31 12:39:19,225.225 INFO    ] 2026-08-31 12:39:19
[2026-08-31 12:39:19,270.270 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:39:19,465.465 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:39:19,525.525 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:39:19,781.781 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:39:19,814.814 INFO    ] time= 31/08/2026 12:39:19
[2026-08-31 12:39:19,830.830 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:39:19,838.838 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:39:19,988.988 INFO    ] No existing commands found in stream
[2026-08-31 12:39:25,007.007 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:39:25,010.010 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-08-31 12:39:28,113.113 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 12:39:28,116.116 INFO    ] Checking for system updates...
[2026-08-31 12:39:28,156.156 INFO    ] 200
[2026-08-31 12:39:28,158.158 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:39:28,216.216 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:39:28,219.219 INFO    ] No update needed
[2026-08-31 12:39:28,221.221 INFO    ] Checking for camera pi updates...
[2026-08-31 12:39:28,258.258 INFO    ] 200
[2026-08-31 12:39:28,260.260 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:39:28,301.301 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:39:28,382.382 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:39:28,385.385 INFO    ] No camera update needed
[2026-08-31 12:39:28,387.387 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:39:28,389.389 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:39:28,395.395 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:39:28,400.400 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:39:30,439.439 INFO    ] ================================================
[2026-08-31 12:39:30,455.455 INFO    ] Launching Daemon at Mon Aug 31 12:39:30 IST 2026
[2026-08-31 12:39:30,466.466 INFO    ] ================================================
[2026-08-31 12:39:31,034.034 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:39:31
[2026-08-31 12:39:31,614.614 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:39:31,884.884 INFO    ] Initializing speech engine...
[2026-08-31 12:39:31,893.893 INFO    ] 2026-08-31 12:39:31
[2026-08-31 12:39:32,162.162 INFO    ] 2026-08-31 12:39:32
[2026-08-31 12:39:32,205.205 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:39:32,411.411 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:39:32,441.441 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:39:32,651.651 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:39:32,712.712 INFO    ] time= 31/08/2026 12:39:32
[2026-08-31 12:39:32,762.762 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:39:32,781.781 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:39:32,909.909 INFO    ] No existing commands found in stream
[2026-08-31 12:39:37,933.933 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:39:37,936.936 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-08-31 12:39:40,452.452 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 12:39:40,455.455 INFO    ] Checking for system updates...
[2026-08-31 12:39:40,492.492 INFO    ] 200
[2026-08-31 12:39:40,495.495 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:39:40,549.549 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:39:40,552.552 INFO    ] No update needed
[2026-08-31 12:39:40,555.555 INFO    ] Checking for camera pi updates...
[2026-08-31 12:39:40,594.594 INFO    ] 200
[2026-08-31 12:39:40,597.597 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:39:40,639.639 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:39:40,713.713 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:39:40,716.716 INFO    ] No camera update needed
[2026-08-31 12:39:40,719.719 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:39:40,722.722 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:39:40,728.728 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:39:40,734.734 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:39:42,776.776 INFO    ] ================================================
[2026-08-31 12:39:42,792.792 INFO    ] Launching Daemon at Mon Aug 31 12:39:42 IST 2026
[2026-08-31 12:39:42,803.803 INFO    ] ================================================
[2026-08-31 12:39:43,371.371 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:39:43
[2026-08-31 12:39:43,958.958 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:39:44,224.224 INFO    ] Initializing speech engine...
[2026-08-31 12:39:44,233.233 INFO    ] 2026-08-31 12:39:44
[2026-08-31 12:39:44,498.498 INFO    ] 2026-08-31 12:39:44
[2026-08-31 12:39:44,560.560 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:39:44,845.845 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:39:44,854.854 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:39:45,049.049 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:39:45,056.056 INFO    ] time= 31/08/2026 12:39:45
[2026-08-31 12:39:45,078.078 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:39:45,105.105 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:39:45,225.225 INFO    ] No existing commands found in stream
[2026-08-31 12:39:50,251.251 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:39:50,254.254 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-08-31 12:39:51,274.274 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 12:39:51,277.277 INFO    ] Checking for system updates...
[2026-08-31 12:39:51,314.314 INFO    ] 200
[2026-08-31 12:39:51,317.317 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:39:51,371.371 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:39:51,374.374 INFO    ] No update needed
[2026-08-31 12:39:51,377.377 INFO    ] Checking for camera pi updates...
[2026-08-31 12:39:51,415.415 INFO    ] 200
[2026-08-31 12:39:51,420.420 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:39:51,461.461 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:39:51,542.542 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:39:51,545.545 INFO    ] No camera update needed
[2026-08-31 12:39:51,547.547 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:39:51,550.550 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:39:51,555.555 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:39:51,560.560 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:39:53,601.601 INFO    ] ================================================
[2026-08-31 12:39:53,616.616 INFO    ] Launching Daemon at Mon Aug 31 12:39:53 IST 2026
[2026-08-31 12:39:53,628.628 INFO    ] ================================================
[2026-08-31 12:39:54,275.275 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:39:54
[2026-08-31 12:39:54,943.943 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:39:55,252.252 INFO    ] Initializing speech engine...
[2026-08-31 12:39:55,264.264 INFO    ] 2026-08-31 12:39:55
[2026-08-31 12:39:55,571.571 INFO    ] 2026-08-31 12:39:55
[2026-08-31 12:39:55,656.656 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:39:55,874.874 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:39:55,880.880 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:39:56,081.081 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:39:56,089.089 INFO    ] time= 31/08/2026 12:39:56
[2026-08-31 12:39:56,110.110 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:39:56,137.137 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:39:56,313.313 INFO    ] No existing commands found in stream
[2026-08-31 12:40:01,343.343 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:40:01,357.357 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-08-31 12:40:08,555.555 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 12:40:08,558.558 INFO    ] Checking for system updates...
[2026-08-31 12:40:08,596.596 INFO    ] 200
[2026-08-31 12:40:08,599.599 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:40:08,653.653 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:40:08,656.656 INFO    ] No update needed
[2026-08-31 12:40:08,659.659 INFO    ] Checking for camera pi updates...
[2026-08-31 12:40:08,694.694 INFO    ] 200
[2026-08-31 12:40:08,697.697 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:40:08,740.740 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:40:08,845.845 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:40:08,848.848 INFO    ] No camera update needed
[2026-08-31 12:40:08,851.851 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:40:08,854.854 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:40:08,861.861 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:40:08,867.867 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:40:10,911.911 INFO    ] ================================================
[2026-08-31 12:40:10,927.927 INFO    ] Launching Daemon at Mon Aug 31 12:40:10 IST 2026
[2026-08-31 12:40:10,938.938 INFO    ] ================================================
[2026-08-31 12:40:11,618.618 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:40:11
[2026-08-31 12:40:12,318.318 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:40:12,634.634 INFO    ] Initializing speech engine...
[2026-08-31 12:40:12,648.648 INFO    ] 2026-08-31 12:40:12
[2026-08-31 12:40:12,938.938 INFO    ] 2026-08-31 12:40:12
[2026-08-31 12:40:12,984.984 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:40:13,270.270 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:40:13,278.278 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:40:13,457.457 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:40:13,478.478 INFO    ] time= 31/08/2026 12:40:13
[2026-08-31 12:40:13,497.497 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:40:13,525.525 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:40:13,634.634 INFO    ] No existing commands found in stream
[2026-08-31 12:40:18,664.664 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:40:18,667.667 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-08-31 12:40:19,363.363 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 12:40:19,366.366 INFO    ] Checking for system updates...
[2026-08-31 12:40:19,408.408 INFO    ] 200
[2026-08-31 12:40:19,411.411 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:40:19,468.468 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:40:19,471.471 INFO    ] No update needed
[2026-08-31 12:40:19,476.476 INFO    ] Checking for camera pi updates...
[2026-08-31 12:40:19,521.521 INFO    ] 200
[2026-08-31 12:40:19,524.524 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:40:19,571.571 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:40:19,708.708 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:40:19,710.710 INFO    ] No camera update needed
[2026-08-31 12:40:19,713.713 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:40:19,715.715 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:40:19,720.720 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:40:19,725.725 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:40:21,767.767 INFO    ] ================================================
[2026-08-31 12:40:21,784.784 INFO    ] Launching Daemon at Mon Aug 31 12:40:21 IST 2026
[2026-08-31 12:40:21,795.795 INFO    ] ================================================
[2026-08-31 12:40:22,365.365 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:40:22
[2026-08-31 12:40:22,953.953 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:40:23,222.222 INFO    ] Initializing speech engine...
[2026-08-31 12:40:23,232.232 INFO    ] 2026-08-31 12:40:23
[2026-08-31 12:40:23,477.477 INFO    ] 2026-08-31 12:40:23
[2026-08-31 12:40:23,511.511 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:40:23,710.710 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:40:23,767.767 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:40:23,909.909 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:40:23,974.974 INFO    ] time= 31/08/2026 12:40:23
[2026-08-31 12:40:24,034.034 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:40:24,042.042 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:40:24,109.109 INFO    ] No existing commands found in stream
[2026-08-31 12:40:29,145.145 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:40:29,148.148 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-08-31 12:40:33,191.191 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 12:40:33,193.193 INFO    ] Checking for system updates...
[2026-08-31 12:40:33,230.230 INFO    ] 200
[2026-08-31 12:40:33,233.233 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:40:33,288.288 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:40:33,291.291 INFO    ] No update needed
[2026-08-31 12:40:33,294.294 INFO    ] Checking for camera pi updates...
[2026-08-31 12:40:33,334.334 INFO    ] 200
[2026-08-31 12:40:33,338.338 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:40:33,392.392 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:40:33,482.482 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:40:33,485.485 INFO    ] No camera update needed
[2026-08-31 12:40:33,488.488 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:40:33,491.491 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:40:33,498.498 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:40:33,504.504 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:40:35,550.550 INFO    ] ================================================
[2026-08-31 12:40:35,565.565 INFO    ] Launching Daemon at Mon Aug 31 12:40:35 IST 2026
[2026-08-31 12:40:35,576.576 INFO    ] ================================================
[2026-08-31 12:40:36,260.260 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:40:36
[2026-08-31 12:40:36,963.963 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:40:37,277.277 INFO    ] Initializing speech engine...
[2026-08-31 12:40:37,292.292 INFO    ] 2026-08-31 12:40:37
[2026-08-31 12:40:37,570.570 INFO    ] 2026-08-31 12:40:37
[2026-08-31 12:40:37,626.626 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:40:37,854.854 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:40:37,864.864 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:40:38,009.009 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:40:38,080.080 INFO    ] time= 31/08/2026 12:40:38
[2026-08-31 12:40:38,135.135 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:40:38,143.143 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:40:38,282.282 INFO    ] No existing commands found in stream
[2026-08-31 12:40:43,305.305 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:40:43,309.309 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-08-31 12:40:47,680.680 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 12:40:47,683.683 INFO    ] Checking for system updates...
[2026-08-31 12:40:47,720.720 INFO    ] 200
[2026-08-31 12:40:47,723.723 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:40:47,777.777 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:40:47,780.780 INFO    ] No update needed
[2026-08-31 12:40:47,783.783 INFO    ] Checking for camera pi updates...
[2026-08-31 12:40:47,818.818 INFO    ] 200
[2026-08-31 12:40:47,821.821 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:40:47,863.863 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:40:47,954.954 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:40:47,957.957 INFO    ] No camera update needed
[2026-08-31 12:40:47,960.960 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:40:47,963.963 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:40:47,969.969 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:40:47,976.976 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:40:50,019.019 INFO    ] ================================================
[2026-08-31 12:40:50,034.034 INFO    ] Launching Daemon at Mon Aug 31 12:40:50 IST 2026
[2026-08-31 12:40:50,045.045 INFO    ] ================================================
[2026-08-31 12:40:50,667.667 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:40:50
[2026-08-31 12:40:51,364.364 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:40:51,676.676 INFO    ] Initializing speech engine...
[2026-08-31 12:40:51,683.683 INFO    ] 2026-08-31 12:40:51
[2026-08-31 12:40:52,000.000 INFO    ] 2026-08-31 12:40:51
[2026-08-31 12:40:52,089.089 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:40:52,309.309 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:40:52,321.321 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:40:52,526.526 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:40:52,556.556 INFO    ] time= 31/08/2026 12:40:52
[2026-08-31 12:40:52,583.583 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:40:52,596.596 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:40:52,752.752 INFO    ] No existing commands found in stream
[2026-08-31 12:40:57,763.763 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:40:57,766.766 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-08-31 12:41:00,991.991 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 12:41:00,994.994 INFO    ] Checking for system updates...
[2026-08-31 12:41:01,036.036 INFO    ] 200
[2026-08-31 12:41:01,039.039 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:41:01,105.105 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:41:01,108.108 INFO    ] No update needed
[2026-08-31 12:41:01,112.112 INFO    ] Checking for camera pi updates...
[2026-08-31 12:41:01,146.146 INFO    ] 200
[2026-08-31 12:41:01,150.150 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:41:01,192.192 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:41:01,274.274 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:41:01,277.277 INFO    ] No camera update needed
[2026-08-31 12:41:01,279.279 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:41:01,282.282 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:41:01,287.287 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:41:01,292.292 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:41:03,333.333 INFO    ] ================================================
[2026-08-31 12:41:03,348.348 INFO    ] Launching Daemon at Mon Aug 31 12:41:03 IST 2026
[2026-08-31 12:41:03,359.359 INFO    ] ================================================
[2026-08-31 12:41:03,925.925 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:41:03
[2026-08-31 12:41:04,508.508 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:41:04,768.768 INFO    ] Initializing speech engine...
[2026-08-31 12:41:04,774.774 INFO    ] 2026-08-31 12:41:04
[2026-08-31 12:41:05,070.070 INFO    ] 2026-08-31 12:41:05
[2026-08-31 12:41:05,105.105 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:41:05,306.306 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:41:05,322.322 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:41:05,478.478 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:41:05,494.494 INFO    ] time= 31/08/2026 12:41:05
[2026-08-31 12:41:05,499.499 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:41:05,506.506 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:41:05,649.649 INFO    ] No existing commands found in stream
[2026-08-31 12:41:10,679.679 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:41:10,682.682 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-08-31 12:41:14,966.966 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 12:41:14,969.969 INFO    ] Checking for system updates...
[2026-08-31 12:41:15,004.004 INFO    ] 200
[2026-08-31 12:41:15,007.007 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:41:15,059.059 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:41:15,061.061 INFO    ] No update needed
[2026-08-31 12:41:15,063.063 INFO    ] Checking for camera pi updates...
[2026-08-31 12:41:15,097.097 INFO    ] 200
[2026-08-31 12:41:15,100.100 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:41:15,140.140 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:41:15,221.221 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:41:15,224.224 INFO    ] No camera update needed
[2026-08-31 12:41:15,226.226 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:41:15,228.228 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:41:15,233.233 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:41:15,238.238 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:41:17,280.280 INFO    ] ================================================
[2026-08-31 12:41:17,295.295 INFO    ] Launching Daemon at Mon Aug 31 12:41:17 IST 2026
[2026-08-31 12:41:17,306.306 INFO    ] ================================================
[2026-08-31 12:41:17,885.885 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:41:17
[2026-08-31 12:41:18,479.479 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:41:18,752.752 INFO    ] Initializing speech engine...
[2026-08-31 12:41:18,759.759 INFO    ] 2026-08-31 12:41:18
[2026-08-31 12:41:19,006.006 INFO    ] 2026-08-31 12:41:19
[2026-08-31 12:41:19,040.040 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:41:19,238.238 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:41:19,274.274 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:41:19,442.442 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:41:19,502.502 INFO    ] time= 31/08/2026 12:41:19
[2026-08-31 12:41:19,556.556 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:41:19,570.570 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:41:19,715.715 INFO    ] No existing commands found in stream
[2026-08-31 12:41:24,734.734 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:41:24,737.737 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-08-31 12:41:25,640.640 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 12:41:25,643.643 INFO    ] Checking for system updates...
[2026-08-31 12:41:25,680.680 INFO    ] 200
[2026-08-31 12:41:25,682.682 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:41:25,741.741 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:41:25,744.744 INFO    ] No update needed
[2026-08-31 12:41:25,746.746 INFO    ] Checking for camera pi updates...
[2026-08-31 12:41:25,785.785 INFO    ] 200
[2026-08-31 12:41:25,788.788 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:41:25,834.834 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:41:25,916.916 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:41:25,919.919 INFO    ] No camera update needed
[2026-08-31 12:41:25,921.921 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:41:25,924.924 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:41:25,929.929 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:41:25,934.934 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:41:27,977.977 INFO    ] ================================================
[2026-08-31 12:41:27,992.992 INFO    ] Launching Daemon at Mon Aug 31 12:41:27 IST 2026
[2026-08-31 12:41:28,003.003 INFO    ] ================================================
[2026-08-31 12:41:28,658.658 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:41:28
[2026-08-31 12:41:29,334.334 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:41:29,648.648 INFO    ] Initializing speech engine...
[2026-08-31 12:41:29,655.655 INFO    ] 2026-08-31 12:41:29
[2026-08-31 12:41:29,941.941 INFO    ] 2026-08-31 12:41:29
[2026-08-31 12:41:30,052.052 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:41:30,265.265 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:41:30,272.272 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:41:30,466.466 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:41:30,485.485 INFO    ] time= 31/08/2026 12:41:30
[2026-08-31 12:41:30,508.508 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:41:30,522.522 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:41:30,669.669 INFO    ] No existing commands found in stream
[2026-08-31 12:41:35,705.705 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:41:35,709.709 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-08-31 12:41:40,084.084 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 12:41:40,087.087 INFO    ] Checking for system updates...
[2026-08-31 12:41:40,123.123 INFO    ] 200
[2026-08-31 12:41:40,126.126 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:41:40,180.180 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:41:40,183.183 INFO    ] No update needed
[2026-08-31 12:41:40,185.185 INFO    ] Checking for camera pi updates...
[2026-08-31 12:41:40,221.221 INFO    ] 200
[2026-08-31 12:41:40,223.223 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:41:40,270.270 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:41:40,327.327 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:41:40,330.330 INFO    ] No camera update needed
[2026-08-31 12:41:40,333.333 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:41:40,335.335 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:41:40,342.342 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:41:40,348.348 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:41:42,388.388 INFO    ] ================================================
[2026-08-31 12:41:42,404.404 INFO    ] Launching Daemon at Mon Aug 31 12:41:42 IST 2026
[2026-08-31 12:41:42,414.414 INFO    ] ================================================
[2026-08-31 12:41:42,997.997 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:41:42
[2026-08-31 12:41:43,580.580 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:41:43,829.829 INFO    ] Initializing speech engine...
[2026-08-31 12:41:43,835.835 INFO    ] 2026-08-31 12:41:43
[2026-08-31 12:41:44,140.140 INFO    ] 2026-08-31 12:41:44
[2026-08-31 12:41:44,179.179 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:41:44,388.388 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:41:44,406.406 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:41:44,540.540 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:41:44,548.548 INFO    ] time= 31/08/2026 12:41:44
[2026-08-31 12:41:44,556.556 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:41:44,562.562 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:41:44,706.706 INFO    ] No existing commands found in stream
[2026-08-31 12:41:49,731.731 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:41:49,733.733 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-08-31 12:41:50,369.369 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 12:41:50,372.372 INFO    ] Checking for system updates...
[2026-08-31 12:41:50,413.413 INFO    ] 200
[2026-08-31 12:41:50,416.416 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:41:50,469.469 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:41:50,472.472 INFO    ] No update needed
[2026-08-31 12:41:50,475.475 INFO    ] Checking for camera pi updates...
[2026-08-31 12:41:50,510.510 INFO    ] 200
[2026-08-31 12:41:50,513.513 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:41:50,554.554 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:41:50,619.619 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:41:50,622.622 INFO    ] No camera update needed
[2026-08-31 12:41:50,624.624 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:41:50,627.627 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:41:50,633.633 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:41:50,639.639 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:41:52,680.680 INFO    ] ================================================
[2026-08-31 12:41:52,696.696 INFO    ] Launching Daemon at Mon Aug 31 12:41:52 IST 2026
[2026-08-31 12:41:52,707.707 INFO    ] ================================================
[2026-08-31 12:41:53,278.278 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:41:53
[2026-08-31 12:41:53,868.868 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:41:54,125.125 INFO    ] Initializing speech engine...
[2026-08-31 12:41:54,134.134 INFO    ] 2026-08-31 12:41:54
[2026-08-31 12:41:54,430.430 INFO    ] 2026-08-31 12:41:54
[2026-08-31 12:41:54,468.468 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:41:54,668.668 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:41:54,682.682 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:41:54,843.843 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:41:54,854.854 INFO    ] time= 31/08/2026 12:41:54
[2026-08-31 12:41:54,859.859 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:41:54,865.865 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:41:54,942.942 INFO    ] No existing commands found in stream
[2026-08-31 12:41:59,977.977 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:41:59,980.980 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-08-31 12:42:02,907.907 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 12:42:02,910.910 INFO    ] Checking for system updates...
[2026-08-31 12:42:02,961.961 INFO    ] 200
[2026-08-31 12:42:02,965.965 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:42:03,032.032 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:42:03,034.034 INFO    ] No update needed
[2026-08-31 12:42:03,036.036 INFO    ] Checking for camera pi updates...
[2026-08-31 12:42:03,083.083 INFO    ] 200
[2026-08-31 12:42:03,086.086 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:42:03,137.137 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:42:03,225.225 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:42:03,228.228 INFO    ] No camera update needed
[2026-08-31 12:42:03,232.232 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:42:03,235.235 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:42:03,242.242 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:42:03,247.247 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:42:05,289.289 INFO    ] ================================================
[2026-08-31 12:42:05,304.304 INFO    ] Launching Daemon at Mon Aug 31 12:42:05 IST 2026
[2026-08-31 12:42:05,315.315 INFO    ] ================================================
[2026-08-31 12:42:05,993.993 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:42:05
[2026-08-31 12:42:06,699.699 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:42:07,016.016 INFO    ] Initializing speech engine...
[2026-08-31 12:42:07,028.028 INFO    ] 2026-08-31 12:42:07
[2026-08-31 12:42:07,347.347 INFO    ] 2026-08-31 12:42:07
[2026-08-31 12:42:07,430.430 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:42:07,635.635 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:42:07,652.652 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:42:07,852.852 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:42:07,871.871 INFO    ] time= 31/08/2026 12:42:07
[2026-08-31 12:42:07,881.881 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:42:07,909.909 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:42:08,015.015 INFO    ] No existing commands found in stream
[2026-08-31 12:42:13,045.045 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:42:13,048.048 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-08-31 12:42:15,691.691 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 12:42:15,694.694 INFO    ] Checking for system updates...
[2026-08-31 12:42:15,732.732 INFO    ] 200
[2026-08-31 12:42:15,734.734 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:42:15,791.791 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:42:15,794.794 INFO    ] No update needed
[2026-08-31 12:42:15,797.797 INFO    ] Checking for camera pi updates...
[2026-08-31 12:42:15,831.831 INFO    ] 200
[2026-08-31 12:42:15,834.834 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:42:15,876.876 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:42:15,953.953 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:42:15,956.956 INFO    ] No camera update needed
[2026-08-31 12:42:15,959.959 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:42:15,962.962 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:42:15,968.968 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:42:15,974.974 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:42:18,016.016 INFO    ] ================================================
[2026-08-31 12:42:18,032.032 INFO    ] Launching Daemon at Mon Aug 31 12:42:18 IST 2026
[2026-08-31 12:42:18,044.044 INFO    ] ================================================
[2026-08-31 12:42:18,618.618 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:42:18
[2026-08-31 12:42:19,206.206 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:42:19,455.455 INFO    ] Initializing speech engine...
[2026-08-31 12:42:19,468.468 INFO    ] 2026-08-31 12:42:19
[2026-08-31 12:42:19,730.730 INFO    ] 2026-08-31 12:42:19
[2026-08-31 12:42:19,766.766 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:42:20,022.022 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:42:20,027.027 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:42:20,161.161 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:42:20,211.211 INFO    ] time= 31/08/2026 12:42:20
[2026-08-31 12:42:20,270.270 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:42:20,293.293 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:42:20,420.420 INFO    ] No existing commands found in stream
[2026-08-31 12:42:25,446.446 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:42:25,449.449 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-08-31 12:42:28,306.306 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 12:42:28,309.309 INFO    ] Checking for system updates...
[2026-08-31 12:42:28,345.345 INFO    ] 200
[2026-08-31 12:42:28,348.348 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:42:28,402.402 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:42:28,405.405 INFO    ] No update needed
[2026-08-31 12:42:28,408.408 INFO    ] Checking for camera pi updates...
[2026-08-31 12:42:28,442.442 INFO    ] 200
[2026-08-31 12:42:28,445.445 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:42:28,487.487 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:42:28,581.581 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:42:28,584.584 INFO    ] No camera update needed
[2026-08-31 12:42:28,588.588 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:42:28,591.591 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:42:28,597.597 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:42:28,603.603 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:42:30,646.646 INFO    ] ================================================
[2026-08-31 12:42:30,662.662 INFO    ] Launching Daemon at Mon Aug 31 12:42:30 IST 2026
[2026-08-31 12:42:30,673.673 INFO    ] ================================================
[2026-08-31 12:42:31,246.246 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:42:31
[2026-08-31 12:42:31,872.872 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:42:32,174.174 INFO    ] Initializing speech engine...
[2026-08-31 12:42:32,182.182 INFO    ] 2026-08-31 12:42:32
[2026-08-31 12:42:32,478.478 INFO    ] 2026-08-31 12:42:32
[2026-08-31 12:42:32,517.517 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:42:32,783.783 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:42:32,824.824 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:42:33,015.015 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:42:33,038.038 INFO    ] time= 31/08/2026 12:42:33
[2026-08-31 12:42:33,053.053 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:42:33,062.062 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:42:33,191.191 INFO    ] No existing commands found in stream
[2026-08-31 12:42:38,210.210 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:42:38,213.213 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-08-31 12:42:41,286.286 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 12:42:41,289.289 INFO    ] Checking for system updates...
[2026-08-31 12:42:41,325.325 INFO    ] 200
[2026-08-31 12:42:41,327.327 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:42:41,388.388 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:42:41,390.390 INFO    ] No update needed
[2026-08-31 12:42:41,393.393 INFO    ] Checking for camera pi updates...
[2026-08-31 12:42:41,426.426 INFO    ] 200
[2026-08-31 12:42:41,428.428 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:42:41,474.474 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:42:41,557.557 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:42:41,559.559 INFO    ] No camera update needed
[2026-08-31 12:42:41,562.562 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:42:41,564.564 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:42:41,569.569 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:42:41,574.574 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:42:43,620.620 INFO    ] ================================================
[2026-08-31 12:42:43,638.638 INFO    ] Launching Daemon at Mon Aug 31 12:42:43 IST 2026
[2026-08-31 12:42:43,649.649 INFO    ] ================================================
[2026-08-31 12:42:44,242.242 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:42:44
[2026-08-31 12:42:44,850.850 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:42:45,123.123 INFO    ] Initializing speech engine...
[2026-08-31 12:42:45,134.134 INFO    ] 2026-08-31 12:42:45
[2026-08-31 12:42:45,382.382 INFO    ] 2026-08-31 12:42:45
[2026-08-31 12:42:45,418.418 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:42:45,719.719 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:42:45,729.729 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:42:45,886.886 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:42:45,898.898 INFO    ] time= 31/08/2026 12:42:45
[2026-08-31 12:42:45,952.952 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:42:45,997.997 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:42:46,098.098 INFO    ] No existing commands found in stream
[2026-08-31 12:42:51,110.110 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:42:51,113.113 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-08-31 12:42:55,391.391 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 12:42:55,394.394 INFO    ] Checking for system updates...
[2026-08-31 12:42:55,429.429 INFO    ] 200
[2026-08-31 12:42:55,431.431 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:42:55,484.484 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:42:55,487.487 INFO    ] No update needed
[2026-08-31 12:42:55,489.489 INFO    ] Checking for camera pi updates...
[2026-08-31 12:42:55,522.522 INFO    ] 200
[2026-08-31 12:42:55,525.525 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:42:55,565.565 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:42:55,671.671 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:42:55,674.674 INFO    ] No camera update needed
[2026-08-31 12:42:55,676.676 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:42:55,678.678 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:42:55,684.684 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:42:55,688.688 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:42:57,730.730 INFO    ] ================================================
[2026-08-31 12:42:57,746.746 INFO    ] Launching Daemon at Mon Aug 31 12:42:57 IST 2026
[2026-08-31 12:42:57,758.758 INFO    ] ================================================
[2026-08-31 12:42:58,332.332 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:42:58
[2026-08-31 12:42:58,916.916 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:42:59,172.172 INFO    ] Initializing speech engine...
[2026-08-31 12:42:59,178.178 INFO    ] 2026-08-31 12:42:59
[2026-08-31 12:42:59,478.478 INFO    ] 2026-08-31 12:42:59
[2026-08-31 12:42:59,513.513 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:42:59,676.676 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:42:59,709.709 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:42:59,882.882 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:42:59,909.909 INFO    ] time= 31/08/2026 12:42:59
[2026-08-31 12:42:59,914.914 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:42:59,920.920 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:42:59,997.997 INFO    ] No existing commands found in stream
[2026-08-31 12:43:05,012.012 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:43:05,015.015 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-08-31 12:43:08,360.360 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 12:43:08,363.363 INFO    ] Checking for system updates...
[2026-08-31 12:43:08,399.399 INFO    ] 200
[2026-08-31 12:43:08,401.401 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:43:08,453.453 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:43:08,455.455 INFO    ] No update needed
[2026-08-31 12:43:08,458.458 INFO    ] Checking for camera pi updates...
[2026-08-31 12:43:08,492.492 INFO    ] 200
[2026-08-31 12:43:08,494.494 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:43:08,540.540 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:43:08,718.718 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:43:08,721.721 INFO    ] No camera update needed
[2026-08-31 12:43:08,723.723 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:43:08,725.725 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:43:08,731.731 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:43:08,735.735 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:43:10,776.776 INFO    ] ================================================
[2026-08-31 12:43:10,792.792 INFO    ] Launching Daemon at Mon Aug 31 12:43:10 IST 2026
[2026-08-31 12:43:10,803.803 INFO    ] ================================================
[2026-08-31 12:43:11,369.369 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:43:11
[2026-08-31 12:43:11,951.951 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:43:12,223.223 INFO    ] Initializing speech engine...
[2026-08-31 12:43:12,229.229 INFO    ] 2026-08-31 12:43:12
[2026-08-31 12:43:12,474.474 INFO    ] 2026-08-31 12:43:12
[2026-08-31 12:43:12,508.508 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:43:12,760.760 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:43:12,769.769 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:43:12,979.979 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:43:13,025.025 INFO    ] time= 31/08/2026 12:43:12
[2026-08-31 12:43:13,032.032 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:43:13,050.050 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:43:13,179.179 INFO    ] No existing commands found in stream
[2026-08-31 12:43:18,192.192 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:43:18,195.195 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-08-31 12:43:21,989.989 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 12:43:21,991.991 INFO    ] Checking for system updates...
[2026-08-31 12:43:22,031.031 INFO    ] 200
[2026-08-31 12:43:22,034.034 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:43:22,085.085 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:43:22,088.088 INFO    ] No update needed
[2026-08-31 12:43:22,091.091 INFO    ] Checking for camera pi updates...
[2026-08-31 12:43:22,124.124 INFO    ] 200
[2026-08-31 12:43:22,126.126 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:43:22,166.166 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:43:22,253.253 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:43:22,255.255 INFO    ] No camera update needed
[2026-08-31 12:43:22,258.258 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:43:22,260.260 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:43:22,265.265 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:43:22,270.270 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:43:24,313.313 INFO    ] ================================================
[2026-08-31 12:43:24,330.330 INFO    ] Launching Daemon at Mon Aug 31 12:43:24 IST 2026
[2026-08-31 12:43:24,341.341 INFO    ] ================================================
[2026-08-31 12:43:24,907.907 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:43:24
[2026-08-31 12:43:25,493.493 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:43:25,804.804 INFO    ] Initializing speech engine...
[2026-08-31 12:43:25,819.819 INFO    ] 2026-08-31 12:43:25
[2026-08-31 12:43:26,135.135 INFO    ] 2026-08-31 12:43:26
[2026-08-31 12:43:26,220.220 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:43:26,434.434 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:43:26,439.439 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:43:26,633.633 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:43:26,640.640 INFO    ] time= 31/08/2026 12:43:26
[2026-08-31 12:43:26,662.662 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:43:26,691.691 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:43:26,791.791 INFO    ] No existing commands found in stream
[2026-08-31 12:43:31,808.808 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:43:31,811.811 INFO    ] Waiting 4.00 seconds before fallback handling...
[2026-08-31 12:43:36,330.330 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 12:43:36,333.333 INFO    ] Checking for system updates...
[2026-08-31 12:43:36,372.372 INFO    ] 200
[2026-08-31 12:43:36,375.375 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:43:36,430.430 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:43:36,433.433 INFO    ] No update needed
[2026-08-31 12:43:36,435.435 INFO    ] Checking for camera pi updates...
[2026-08-31 12:43:36,471.471 INFO    ] 200
[2026-08-31 12:43:36,474.474 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:43:36,515.515 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:43:36,590.590 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:43:36,593.593 INFO    ] No camera update needed
[2026-08-31 12:43:36,596.596 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:43:36,599.599 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:43:36,606.606 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:43:36,612.612 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:43:38,653.653 INFO    ] ================================================
[2026-08-31 12:43:38,669.669 INFO    ] Launching Daemon at Mon Aug 31 12:43:38 IST 2026
[2026-08-31 12:43:38,680.680 INFO    ] ================================================
[2026-08-31 12:43:39,355.355 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:43:39
[2026-08-31 12:43:40,050.050 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:43:40,370.370 INFO    ] Initializing speech engine...
[2026-08-31 12:43:40,381.381 INFO    ] 2026-08-31 12:43:40
[2026-08-31 12:43:40,700.700 INFO    ] 2026-08-31 12:43:40
[2026-08-31 12:43:40,789.789 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:43:41,005.005 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:43:41,015.015 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:43:41,219.219 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:43:41,235.235 INFO    ] time= 31/08/2026 12:43:41
[2026-08-31 12:43:41,268.268 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:43:41,278.278 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:43:41,383.383 INFO    ] No existing commands found in stream
[2026-08-31 12:43:46,414.414 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:43:46,417.417 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-08-31 12:43:48,745.745 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 12:43:48,748.748 INFO    ] Checking for system updates...
[2026-08-31 12:43:48,784.784 INFO    ] 200
[2026-08-31 12:43:48,787.787 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:43:48,842.842 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:43:48,845.845 INFO    ] No update needed
[2026-08-31 12:43:48,848.848 INFO    ] Checking for camera pi updates...
[2026-08-31 12:43:48,888.888 INFO    ] 200
[2026-08-31 12:43:48,891.891 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:43:48,934.934 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:43:49,020.020 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:43:49,023.023 INFO    ] No camera update needed
[2026-08-31 12:43:49,026.026 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:43:49,029.029 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:43:49,035.035 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:43:49,041.041 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:43:51,084.084 INFO    ] ================================================
[2026-08-31 12:43:51,100.100 INFO    ] Launching Daemon at Mon Aug 31 12:43:51 IST 2026
[2026-08-31 12:43:51,111.111 INFO    ] ================================================
[2026-08-31 12:43:51,697.697 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:43:51
[2026-08-31 12:43:52,390.390 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:43:52,701.701 INFO    ] Initializing speech engine...
[2026-08-31 12:43:52,715.715 INFO    ] 2026-08-31 12:43:52
[2026-08-31 12:43:53,003.003 INFO    ] 2026-08-31 12:43:52
[2026-08-31 12:43:53,061.061 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:43:53,283.283 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:43:53,290.290 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:43:53,524.524 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:43:53,556.556 INFO    ] time= 31/08/2026 12:43:53
[2026-08-31 12:43:53,574.574 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:43:53,585.585 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:43:53,733.733 INFO    ] No existing commands found in stream
[2026-08-31 12:43:58,770.770 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:43:58,774.774 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-08-31 12:44:00,053.053 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 12:44:00,056.056 INFO    ] Checking for system updates...
[2026-08-31 12:44:00,099.099 INFO    ] 200
[2026-08-31 12:44:00,102.102 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:44:00,169.169 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:44:00,172.172 INFO    ] No update needed
[2026-08-31 12:44:00,175.175 INFO    ] Checking for camera pi updates...
[2026-08-31 12:44:00,211.211 INFO    ] 200
[2026-08-31 12:44:00,214.214 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:44:00,262.262 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:44:00,351.351 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:44:00,353.353 INFO    ] No camera update needed
[2026-08-31 12:44:00,356.356 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:44:00,358.358 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:44:00,364.364 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:44:00,369.369 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:44:02,420.420 INFO    ] ================================================
[2026-08-31 12:44:02,442.442 INFO    ] Launching Daemon at Mon Aug 31 12:44:02 IST 2026
[2026-08-31 12:44:02,455.455 INFO    ] ================================================
[2026-08-31 12:44:03,183.183 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:44:03
[2026-08-31 12:44:03,867.867 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:44:04,171.171 INFO    ] Initializing speech engine...
[2026-08-31 12:44:04,182.182 INFO    ] 2026-08-31 12:44:04
[2026-08-31 12:44:04,490.490 INFO    ] 2026-08-31 12:44:04
[2026-08-31 12:44:04,574.574 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:44:04,788.788 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:44:04,797.797 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:44:04,991.991 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:44:05,009.009 INFO    ] time= 31/08/2026 12:44:04
[2026-08-31 12:44:05,032.032 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:44:05,045.045 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:44:05,150.150 INFO    ] No existing commands found in stream
[2026-08-31 12:44:10,184.184 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:44:10,187.187 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-08-31 12:44:13,234.234 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 12:44:13,240.240 INFO    ] Checking for system updates...
[2026-08-31 12:44:13,276.276 INFO    ] 200
[2026-08-31 12:44:13,279.279 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:44:13,337.337 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:44:13,340.340 INFO    ] No update needed
[2026-08-31 12:44:13,343.343 INFO    ] Checking for camera pi updates...
[2026-08-31 12:44:13,376.376 INFO    ] 200
[2026-08-31 12:44:13,378.378 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:44:13,418.418 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:44:13,501.501 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:44:13,503.503 INFO    ] No camera update needed
[2026-08-31 12:44:13,506.506 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:44:13,508.508 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:44:13,514.514 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:44:13,519.519 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:44:15,562.562 INFO    ] ================================================
[2026-08-31 12:44:15,577.577 INFO    ] Launching Daemon at Mon Aug 31 12:44:15 IST 2026
[2026-08-31 12:44:15,588.588 INFO    ] ================================================
[2026-08-31 12:44:16,181.181 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:44:16
[2026-08-31 12:44:16,778.778 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:44:17,050.050 INFO    ] Initializing speech engine...
[2026-08-31 12:44:17,060.060 INFO    ] 2026-08-31 12:44:17
[2026-08-31 12:44:17,310.310 INFO    ] 2026-08-31 12:44:17
[2026-08-31 12:44:17,345.345 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:44:17,596.596 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:44:17,605.605 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:44:17,809.809 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:44:17,862.862 INFO    ] time= 31/08/2026 12:44:17
[2026-08-31 12:44:17,869.869 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:44:17,887.887 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:44:18,008.008 INFO    ] No existing commands found in stream
[2026-08-31 12:44:23,029.029 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:44:23,031.031 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-08-31 12:44:24,282.282 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 12:44:24,286.286 INFO    ] Checking for system updates...
[2026-08-31 12:44:24,323.323 INFO    ] 200
[2026-08-31 12:44:24,326.326 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:44:24,381.381 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:44:24,384.384 INFO    ] No update needed
[2026-08-31 12:44:24,386.386 INFO    ] Checking for camera pi updates...
[2026-08-31 12:44:24,422.422 INFO    ] 200
[2026-08-31 12:44:24,424.424 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:44:24,475.475 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:44:24,560.560 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:44:24,563.563 INFO    ] No camera update needed
[2026-08-31 12:44:24,566.566 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:44:24,568.568 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:44:24,575.575 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:44:24,581.581 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:44:26,622.622 INFO    ] ================================================
[2026-08-31 12:44:26,638.638 INFO    ] Launching Daemon at Mon Aug 31 12:44:26 IST 2026
[2026-08-31 12:44:26,649.649 INFO    ] ================================================
[2026-08-31 12:44:27,315.315 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:44:27
[2026-08-31 12:44:27,953.953 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:44:28,226.226 INFO    ] Initializing speech engine...
[2026-08-31 12:44:28,235.235 INFO    ] 2026-08-31 12:44:28
[2026-08-31 12:44:28,485.485 INFO    ] 2026-08-31 12:44:28
[2026-08-31 12:44:28,520.520 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:44:28,782.782 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:44:28,792.792 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:44:28,948.948 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:44:29,013.013 INFO    ] time= 31/08/2026 12:44:28
[2026-08-31 12:44:29,067.067 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:44:29,084.084 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:44:29,206.206 INFO    ] No existing commands found in stream
[2026-08-31 12:44:34,237.237 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:44:34,240.240 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-08-31 12:44:37,567.567 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 12:44:37,570.570 INFO    ] Checking for system updates...
[2026-08-31 12:44:37,605.605 INFO    ] 200
[2026-08-31 12:44:37,607.607 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:44:37,660.660 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:44:37,662.662 INFO    ] No update needed
[2026-08-31 12:44:37,665.665 INFO    ] Checking for camera pi updates...
[2026-08-31 12:44:37,706.706 INFO    ] 200
[2026-08-31 12:44:37,708.708 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:44:37,748.748 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:44:37,800.800 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:44:37,802.802 INFO    ] No camera update needed
[2026-08-31 12:44:37,805.805 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:44:37,807.807 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:44:37,812.812 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:44:37,817.817 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:44:39,859.859 INFO    ] ================================================
[2026-08-31 12:44:39,874.874 INFO    ] Launching Daemon at Mon Aug 31 12:44:39 IST 2026
[2026-08-31 12:44:39,885.885 INFO    ] ================================================
[2026-08-31 12:44:40,453.453 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:44:40
[2026-08-31 12:44:41,038.038 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:44:41,287.287 INFO    ] Initializing speech engine...
[2026-08-31 12:44:41,300.300 INFO    ] 2026-08-31 12:44:41
[2026-08-31 12:44:41,567.567 INFO    ] 2026-08-31 12:44:41
[2026-08-31 12:44:41,603.603 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:44:41,860.860 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:44:41,869.869 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:44:42,004.004 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:44:42,046.046 INFO    ] time= 31/08/2026 12:44:42
[2026-08-31 12:44:42,105.105 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:44:42,141.141 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:44:42,282.282 INFO    ] No existing commands found in stream
[2026-08-31 12:44:47,303.303 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:44:47,306.306 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-08-31 12:44:49,485.485 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 12:44:49,488.488 INFO    ] Checking for system updates...
[2026-08-31 12:44:49,524.524 INFO    ] 200
[2026-08-31 12:44:49,526.526 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:44:49,579.579 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:44:49,582.582 INFO    ] No update needed
[2026-08-31 12:44:49,584.584 INFO    ] Checking for camera pi updates...
[2026-08-31 12:44:49,617.617 INFO    ] 200
[2026-08-31 12:44:49,620.620 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:44:49,661.661 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:44:49,744.744 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:44:49,747.747 INFO    ] No camera update needed
[2026-08-31 12:44:49,750.750 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:44:49,753.753 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:44:49,759.759 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:44:49,765.765 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:44:51,806.806 INFO    ] ================================================
[2026-08-31 12:44:51,821.821 INFO    ] Launching Daemon at Mon Aug 31 12:44:51 IST 2026
[2026-08-31 12:44:51,833.833 INFO    ] ================================================
[2026-08-31 12:44:52,397.397 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:44:52
[2026-08-31 12:44:52,980.980 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:44:53,227.227 INFO    ] Initializing speech engine...
[2026-08-31 12:44:53,234.234 INFO    ] 2026-08-31 12:44:53
[2026-08-31 12:44:53,508.508 INFO    ] 2026-08-31 12:44:53
[2026-08-31 12:44:53,544.544 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:44:53,802.802 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:44:53,812.812 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:44:53,966.966 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:44:53,994.994 INFO    ] time= 31/08/2026 12:44:53
[2026-08-31 12:44:54,043.043 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:44:54,087.087 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:44:54,181.181 INFO    ] No existing commands found in stream
[2026-08-31 12:44:59,193.193 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:44:59,195.195 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-08-31 12:45:02,201.201 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 12:45:02,205.205 INFO    ] Checking for system updates...
[2026-08-31 12:45:02,398.398 INFO    ] 200
[2026-08-31 12:45:02,402.402 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:45:02,574.574 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:45:02,619.619 INFO    ] No update needed
[2026-08-31 12:45:02,623.623 INFO    ] Checking for camera pi updates...
[2026-08-31 12:45:02,725.725 INFO    ] 200
[2026-08-31 12:45:02,730.730 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:45:02,826.826 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:45:02,965.965 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:45:02,968.968 INFO    ] No camera update needed
[2026-08-31 12:45:02,971.971 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:45:02,974.974 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:45:02,981.981 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:45:02,987.987 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:45:05,030.030 INFO    ] ================================================
[2026-08-31 12:45:05,046.046 INFO    ] Launching Daemon at Mon Aug 31 12:45:05 IST 2026
[2026-08-31 12:45:05,057.057 INFO    ] ================================================
[2026-08-31 12:45:05,713.713 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:45:05
[2026-08-31 12:45:06,389.389 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:45:06,704.704 INFO    ] Initializing speech engine...
[2026-08-31 12:45:06,714.714 INFO    ] 2026-08-31 12:45:06
[2026-08-31 12:45:07,020.020 INFO    ] 2026-08-31 12:45:06
[2026-08-31 12:45:07,100.100 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:45:07,278.278 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:45:07,285.285 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:45:07,421.421 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:45:07,423.423 INFO    ] time= 31/08/2026 12:45:07
[2026-08-31 12:45:07,426.426 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:45:07,428.428 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:45:07,554.554 INFO    ] No existing commands found in stream
[2026-08-31 12:45:12,565.565 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:45:12,568.568 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-08-31 12:45:14,689.689 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 12:45:14,692.692 INFO    ] Checking for system updates...
[2026-08-31 12:45:14,727.727 INFO    ] 200
[2026-08-31 12:45:14,730.730 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:45:14,781.781 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:45:14,784.784 INFO    ] No update needed
[2026-08-31 12:45:14,786.786 INFO    ] Checking for camera pi updates...
[2026-08-31 12:45:14,820.820 INFO    ] 200
[2026-08-31 12:45:14,822.822 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:45:14,863.863 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:45:15,044.044 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:45:15,046.046 INFO    ] No camera update needed
[2026-08-31 12:45:15,048.048 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:45:15,051.051 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:45:15,056.056 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:45:15,061.061 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:45:17,102.102 INFO    ] ================================================
[2026-08-31 12:45:17,118.118 INFO    ] Launching Daemon at Mon Aug 31 12:45:17 IST 2026
[2026-08-31 12:45:17,129.129 INFO    ] ================================================
[2026-08-31 12:45:17,783.783 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:45:17
[2026-08-31 12:45:18,459.459 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:45:18,773.773 INFO    ] Initializing speech engine...
[2026-08-31 12:45:18,780.780 INFO    ] 2026-08-31 12:45:18
[2026-08-31 12:45:19,089.089 INFO    ] 2026-08-31 12:45:19
[2026-08-31 12:45:19,176.176 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:45:19,389.389 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:45:19,398.398 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:45:19,590.590 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:45:19,610.610 INFO    ] time= 31/08/2026 12:45:19
[2026-08-31 12:45:19,639.639 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:45:19,648.648 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:45:19,773.773 INFO    ] No existing commands found in stream
[2026-08-31 12:45:24,809.809 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:45:24,813.813 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-08-31 12:45:27,728.728 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 12:45:27,731.731 INFO    ] Checking for system updates...
[2026-08-31 12:45:27,767.767 INFO    ] 200
[2026-08-31 12:45:27,770.770 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:45:27,822.822 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:45:27,825.825 INFO    ] No update needed
[2026-08-31 12:45:27,828.828 INFO    ] Checking for camera pi updates...
[2026-08-31 12:45:27,866.866 INFO    ] 200
[2026-08-31 12:45:27,869.869 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:45:27,910.910 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:45:27,998.998 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:45:28,001.001 INFO    ] No camera update needed
[2026-08-31 12:45:28,004.004 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:45:28,007.007 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:45:28,013.013 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:45:28,019.019 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:45:30,059.059 INFO    ] ================================================
[2026-08-31 12:45:30,075.075 INFO    ] Launching Daemon at Mon Aug 31 12:45:30 IST 2026
[2026-08-31 12:45:30,087.087 INFO    ] ================================================
[2026-08-31 12:45:30,665.665 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:45:30
[2026-08-31 12:45:31,256.256 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:45:31,530.530 INFO    ] Initializing speech engine...
[2026-08-31 12:45:31,534.534 INFO    ] 2026-08-31 12:45:31
[2026-08-31 12:45:31,782.782 INFO    ] 2026-08-31 12:45:31
[2026-08-31 12:45:31,817.817 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:45:32,073.073 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:45:32,077.077 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:45:32,211.211 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:45:32,250.250 INFO    ] time= 31/08/2026 12:45:32
[2026-08-31 12:45:32,310.310 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:45:32,346.346 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:45:32,551.551 INFO    ] No existing commands found in stream
[2026-08-31 12:45:37,583.583 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:45:37,586.586 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-08-31 12:45:42,912.912 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 12:45:42,915.915 INFO    ] Checking for system updates...
[2026-08-31 12:45:42,952.952 INFO    ] 200
[2026-08-31 12:45:42,955.955 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:45:43,013.013 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:45:43,016.016 INFO    ] No update needed
[2026-08-31 12:45:43,018.018 INFO    ] Checking for camera pi updates...
[2026-08-31 12:45:43,051.051 INFO    ] 200
[2026-08-31 12:45:43,054.054 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:45:43,094.094 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:45:43,178.178 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:45:43,180.180 INFO    ] No camera update needed
[2026-08-31 12:45:43,183.183 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:45:43,185.185 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:45:43,190.190 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:45:43,195.195 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:45:45,237.237 INFO    ] ================================================
[2026-08-31 12:45:45,253.253 INFO    ] Launching Daemon at Mon Aug 31 12:45:45 IST 2026
[2026-08-31 12:45:45,263.263 INFO    ] ================================================
[2026-08-31 12:45:45,829.829 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:45:45
[2026-08-31 12:45:46,414.414 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:45:46,660.660 INFO    ] Initializing speech engine...
[2026-08-31 12:45:46,668.668 INFO    ] 2026-08-31 12:45:46
[2026-08-31 12:45:46,941.941 INFO    ] 2026-08-31 12:45:46
[2026-08-31 12:45:46,977.977 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:45:47,236.236 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:45:47,245.245 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:45:47,383.383 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:45:47,442.442 INFO    ] time= 31/08/2026 12:45:47
[2026-08-31 12:45:47,507.507 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:45:47,520.520 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:45:47,669.669 INFO    ] No existing commands found in stream
[2026-08-31 12:45:52,684.684 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:45:52,687.687 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-08-31 12:45:53,311.311 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 12:45:53,314.314 INFO    ] Checking for system updates...
[2026-08-31 12:45:53,350.350 INFO    ] 200
[2026-08-31 12:45:53,353.353 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:45:53,405.405 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:45:53,408.408 INFO    ] No update needed
[2026-08-31 12:45:53,410.410 INFO    ] Checking for camera pi updates...
[2026-08-31 12:45:53,444.444 INFO    ] 200
[2026-08-31 12:45:53,446.446 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:45:53,487.487 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:45:53,588.588 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:45:53,591.591 INFO    ] No camera update needed
[2026-08-31 12:45:53,593.593 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:45:53,595.595 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:45:53,601.601 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:45:53,606.606 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:45:55,646.646 INFO    ] ================================================
[2026-08-31 12:45:55,661.661 INFO    ] Launching Daemon at Mon Aug 31 12:45:55 IST 2026
[2026-08-31 12:45:55,673.673 INFO    ] ================================================
[2026-08-31 12:45:56,241.241 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:45:56
[2026-08-31 12:45:56,824.824 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:45:57,096.096 INFO    ] Initializing speech engine...
[2026-08-31 12:45:57,102.102 INFO    ] 2026-08-31 12:45:57
[2026-08-31 12:45:57,362.362 INFO    ] 2026-08-31 12:45:57
[2026-08-31 12:45:57,416.416 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:45:57,643.643 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:45:57,646.646 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:45:57,781.781 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:45:57,840.840 INFO    ] time= 31/08/2026 12:45:57
[2026-08-31 12:45:57,894.894 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:45:57,912.912 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:45:58,035.035 INFO    ] No existing commands found in stream
[2026-08-31 12:46:03,060.060 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:46:03,063.063 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-08-31 12:46:06,486.486 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 12:46:06,490.490 INFO    ] Checking for system updates...
[2026-08-31 12:46:06,529.529 INFO    ] 200
[2026-08-31 12:46:06,531.531 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:46:06,585.585 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:46:06,587.587 INFO    ] No update needed
[2026-08-31 12:46:06,590.590 INFO    ] Checking for camera pi updates...
[2026-08-31 12:46:06,627.627 INFO    ] 200
[2026-08-31 12:46:06,629.629 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:46:06,674.674 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:46:06,749.749 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:46:06,751.751 INFO    ] No camera update needed
[2026-08-31 12:46:06,753.753 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:46:06,756.756 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:46:06,761.761 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:46:06,766.766 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:46:08,808.808 INFO    ] ================================================
[2026-08-31 12:46:08,824.824 INFO    ] Launching Daemon at Mon Aug 31 12:46:08 IST 2026
[2026-08-31 12:46:08,835.835 INFO    ] ================================================
[2026-08-31 12:46:09,401.401 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:46:09
[2026-08-31 12:46:09,983.983 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:46:10,250.250 INFO    ] Initializing speech engine...
[2026-08-31 12:46:10,260.260 INFO    ] 2026-08-31 12:46:10
[2026-08-31 12:46:10,506.506 INFO    ] 2026-08-31 12:46:10
[2026-08-31 12:46:10,541.541 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:46:10,913.913 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:46:10,926.926 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:46:11,108.108 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:46:11,169.169 INFO    ] time= 31/08/2026 12:46:11
[2026-08-31 12:46:11,206.206 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:46:11,255.255 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:46:11,396.396 INFO    ] No existing commands found in stream
[2026-08-31 12:46:16,411.411 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:46:16,423.423 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-08-31 12:46:18,165.165 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 12:46:18,168.168 INFO    ] Checking for system updates...
[2026-08-31 12:46:18,203.203 INFO    ] 200
[2026-08-31 12:46:18,206.206 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:46:18,258.258 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:46:18,261.261 INFO    ] No update needed
[2026-08-31 12:46:18,264.264 INFO    ] Checking for camera pi updates...
[2026-08-31 12:46:18,298.298 INFO    ] 200
[2026-08-31 12:46:18,301.301 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:46:18,342.342 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:46:18,422.422 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:46:18,425.425 INFO    ] No camera update needed
[2026-08-31 12:46:18,427.427 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:46:18,430.430 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:46:18,435.435 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:46:18,440.440 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:46:20,481.481 INFO    ] ================================================
[2026-08-31 12:46:20,497.497 INFO    ] Launching Daemon at Mon Aug 31 12:46:20 IST 2026
[2026-08-31 12:46:20,507.507 INFO    ] ================================================
[2026-08-31 12:46:21,084.084 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:46:21
[2026-08-31 12:46:21,671.671 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:46:21,920.920 INFO    ] Initializing speech engine...
[2026-08-31 12:46:21,926.926 INFO    ] 2026-08-31 12:46:21
[2026-08-31 12:46:22,213.213 INFO    ] 2026-08-31 12:46:22
[2026-08-31 12:46:22,248.248 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:46:22,453.453 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:46:22,512.512 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:46:22,655.655 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:46:22,689.689 INFO    ] time= 31/08/2026 12:46:22
[2026-08-31 12:46:22,748.748 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:46:22,788.788 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:46:22,936.936 INFO    ] No existing commands found in stream
[2026-08-31 12:46:27,951.951 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:46:27,954.954 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-08-31 12:46:28,679.679 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 12:46:28,682.682 INFO    ] Checking for system updates...
[2026-08-31 12:46:28,720.720 INFO    ] 200
[2026-08-31 12:46:28,723.723 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:46:28,781.781 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:46:28,783.783 INFO    ] No update needed
[2026-08-31 12:46:28,785.785 INFO    ] Checking for camera pi updates...
[2026-08-31 12:46:28,819.819 INFO    ] 200
[2026-08-31 12:46:28,821.821 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:46:28,862.862 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:46:28,941.941 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:46:28,943.943 INFO    ] No camera update needed
[2026-08-31 12:46:28,946.946 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:46:28,948.948 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:46:28,953.953 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:46:28,958.958 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:46:31,999.999 INFO    ] ================================================
[2026-08-31 12:46:31,014.014 INFO    ] Launching Daemon at Mon Aug 31 12:46:31 IST 2026
[2026-08-31 12:46:31,026.026 INFO    ] ================================================
[2026-08-31 12:46:31,682.682 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:46:31
[2026-08-31 12:46:32,299.299 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:46:32,570.570 INFO    ] Initializing speech engine...
[2026-08-31 12:46:32,576.576 INFO    ] 2026-08-31 12:46:32
[2026-08-31 12:46:32,889.889 INFO    ] 2026-08-31 12:46:32
[2026-08-31 12:46:32,914.914 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:46:33,121.121 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:46:33,136.136 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:46:33,300.300 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:46:33,305.305 INFO    ] time= 31/08/2026 12:46:33
[2026-08-31 12:46:33,311.311 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:46:33,344.344 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:46:33,466.466 INFO    ] No existing commands found in stream
[2026-08-31 12:46:38,491.491 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:46:38,493.493 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-08-31 12:46:40,036.036 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 12:46:40,039.039 INFO    ] Checking for system updates...
[2026-08-31 12:46:40,075.075 INFO    ] 200
[2026-08-31 12:46:40,077.077 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:46:40,135.135 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:46:40,138.138 INFO    ] No update needed
[2026-08-31 12:46:40,140.140 INFO    ] Checking for camera pi updates...
[2026-08-31 12:46:40,177.177 INFO    ] 200
[2026-08-31 12:46:40,179.179 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:46:40,219.219 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:46:40,305.305 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:46:40,308.308 INFO    ] No camera update needed
[2026-08-31 12:46:40,310.310 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:46:40,312.312 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:46:40,318.318 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:46:40,323.323 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:46:42,363.363 INFO    ] ================================================
[2026-08-31 12:46:42,378.378 INFO    ] Launching Daemon at Mon Aug 31 12:46:42 IST 2026
[2026-08-31 12:46:42,389.389 INFO    ] ================================================
[2026-08-31 12:46:42,969.969 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:46:42
[2026-08-31 12:46:43,553.553 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:46:43,815.815 INFO    ] Initializing speech engine...
[2026-08-31 12:46:43,834.834 INFO    ] 2026-08-31 12:46:43
[2026-08-31 12:46:44,081.081 INFO    ] 2026-08-31 12:46:44
[2026-08-31 12:46:44,115.115 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:46:44,371.371 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:46:44,376.376 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:46:44,624.624 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:46:44,633.633 INFO    ] time= 31/08/2026 12:46:44
[2026-08-31 12:46:44,652.652 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:46:44,680.680 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:46:44,786.786 INFO    ] No existing commands found in stream
[2026-08-31 12:46:49,806.806 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:46:49,809.809 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-08-31 12:46:52,760.760 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 12:46:52,763.763 INFO    ] Checking for system updates...
[2026-08-31 12:46:52,798.798 INFO    ] 200
[2026-08-31 12:46:52,801.801 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:46:52,852.852 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:46:52,855.855 INFO    ] No update needed
[2026-08-31 12:46:52,857.857 INFO    ] Checking for camera pi updates...
[2026-08-31 12:46:52,891.891 INFO    ] 200
[2026-08-31 12:46:52,894.894 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:46:52,934.934 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:46:53,005.005 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:46:53,007.007 INFO    ] No camera update needed
[2026-08-31 12:46:53,010.010 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:46:53,012.012 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:46:53,017.017 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:46:53,022.022 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:46:55,063.063 INFO    ] ================================================
[2026-08-31 12:46:55,079.079 INFO    ] Launching Daemon at Mon Aug 31 12:46:55 IST 2026
[2026-08-31 12:46:55,090.090 INFO    ] ================================================
[2026-08-31 12:46:55,716.716 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:46:55
[2026-08-31 12:46:56,374.374 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:46:56,674.674 INFO    ] Initializing speech engine...
[2026-08-31 12:46:56,687.687 INFO    ] 2026-08-31 12:46:56
[2026-08-31 12:46:56,995.995 INFO    ] 2026-08-31 12:46:56
[2026-08-31 12:46:57,080.080 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:46:57,355.355 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:46:57,373.373 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:46:57,542.542 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:46:57,549.549 INFO    ] time= 31/08/2026 12:46:57
[2026-08-31 12:46:57,604.604 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:46:57,648.648 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:46:57,750.750 INFO    ] No existing commands found in stream
[2026-08-31 12:47:02,770.770 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:47:02,774.774 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-08-31 12:47:07,087.087 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 12:47:07,090.090 INFO    ] Checking for system updates...
[2026-08-31 12:47:07,131.131 INFO    ] 200
[2026-08-31 12:47:07,134.134 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:47:07,188.188 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:47:07,191.191 INFO    ] No update needed
[2026-08-31 12:47:07,194.194 INFO    ] Checking for camera pi updates...
[2026-08-31 12:47:07,228.228 INFO    ] 200
[2026-08-31 12:47:07,231.231 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:47:07,272.272 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:47:07,371.371 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:47:07,374.374 INFO    ] No camera update needed
[2026-08-31 12:47:07,376.376 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:47:07,379.379 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:47:07,385.385 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:47:07,390.390 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:47:09,432.432 INFO    ] ================================================
[2026-08-31 12:47:09,448.448 INFO    ] Launching Daemon at Mon Aug 31 12:47:09 IST 2026
[2026-08-31 12:47:09,459.459 INFO    ] ================================================
[2026-08-31 12:47:10,035.035 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:47:10
[2026-08-31 12:47:10,624.624 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:47:10,878.878 INFO    ] Initializing speech engine...
[2026-08-31 12:47:10,887.887 INFO    ] 2026-08-31 12:47:10
[2026-08-31 12:47:11,177.177 INFO    ] 2026-08-31 12:47:11
[2026-08-31 12:47:11,214.214 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:47:11,439.439 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:47:11,504.504 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:47:11,709.709 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:47:11,774.774 INFO    ] time= 31/08/2026 12:47:11
[2026-08-31 12:47:11,809.809 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:47:11,815.815 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:47:11,942.942 INFO    ] No existing commands found in stream
[2026-08-31 12:47:16,964.964 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:47:16,967.967 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-08-31 12:47:19,189.189 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 12:47:19,192.192 INFO    ] Checking for system updates...
[2026-08-31 12:47:19,231.231 INFO    ] 200
[2026-08-31 12:47:19,233.233 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:47:19,286.286 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:47:19,289.289 INFO    ] No update needed
[2026-08-31 12:47:19,291.291 INFO    ] Checking for camera pi updates...
[2026-08-31 12:47:19,324.324 INFO    ] 200
[2026-08-31 12:47:19,326.326 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:47:19,366.366 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:47:19,542.542 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:47:19,545.545 INFO    ] No camera update needed
[2026-08-31 12:47:19,547.547 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:47:19,550.550 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:47:19,555.555 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:47:19,560.560 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:47:21,600.600 INFO    ] ================================================
[2026-08-31 12:47:21,616.616 INFO    ] Launching Daemon at Mon Aug 31 12:47:21 IST 2026
[2026-08-31 12:47:21,628.628 INFO    ] ================================================
[2026-08-31 12:47:22,195.195 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:47:22
[2026-08-31 12:47:22,778.778 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:47:23,050.050 INFO    ] Initializing speech engine...
[2026-08-31 12:47:23,055.055 INFO    ] 2026-08-31 12:47:23
[2026-08-31 12:47:23,300.300 INFO    ] 2026-08-31 12:47:23
[2026-08-31 12:47:23,335.335 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:47:23,586.586 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:47:23,595.595 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:47:23,726.726 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:47:23,768.768 INFO    ] time= 31/08/2026 12:47:23
[2026-08-31 12:47:23,822.822 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:47:23,860.860 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:47:23,988.988 INFO    ] No existing commands found in stream
[2026-08-31 12:47:29,015.015 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:47:29,018.018 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-08-31 12:47:32,799.799 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 12:47:32,803.803 INFO    ] Checking for system updates...
[2026-08-31 12:47:32,854.854 INFO    ] 200
[2026-08-31 12:47:32,858.858 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:47:32,935.935 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:47:32,939.939 INFO    ] No update needed
[2026-08-31 12:47:32,942.942 INFO    ] Checking for camera pi updates...
[2026-08-31 12:47:32,979.979 INFO    ] 200
[2026-08-31 12:47:32,982.982 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:47:33,033.033 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:47:33,121.121 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:47:33,124.124 INFO    ] No camera update needed
[2026-08-31 12:47:33,126.126 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:47:33,129.129 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:47:33,135.135 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:47:33,141.141 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:47:35,190.190 INFO    ] ================================================
[2026-08-31 12:47:35,208.208 INFO    ] Launching Daemon at Mon Aug 31 12:47:35 IST 2026
[2026-08-31 12:47:35,222.222 INFO    ] ================================================
[2026-08-31 12:47:35,835.835 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:47:35
[2026-08-31 12:47:36,444.444 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:47:36,714.714 INFO    ] Initializing speech engine...
[2026-08-31 12:47:36,724.724 INFO    ] 2026-08-31 12:47:36
[2026-08-31 12:47:37,012.012 INFO    ] 2026-08-31 12:47:36
[2026-08-31 12:47:37,046.046 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:47:37,273.273 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:47:37,338.338 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:47:37,496.496 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:47:37,518.518 INFO    ] time= 31/08/2026 12:47:37
[2026-08-31 12:47:37,582.582 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:47:37,642.642 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:47:37,746.746 INFO    ] No existing commands found in stream
[2026-08-31 12:47:42,779.779 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:47:42,781.781 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-08-31 12:47:44,991.991 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 12:47:44,993.993 INFO    ] Checking for system updates...
[2026-08-31 12:47:45,029.029 INFO    ] 200
[2026-08-31 12:47:45,031.031 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:47:45,090.090 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:47:45,093.093 INFO    ] No update needed
[2026-08-31 12:47:45,095.095 INFO    ] Checking for camera pi updates...
[2026-08-31 12:47:45,132.132 INFO    ] 200
[2026-08-31 12:47:45,134.134 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:47:45,175.175 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:47:45,258.258 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:47:45,261.261 INFO    ] No camera update needed
[2026-08-31 12:47:45,263.263 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:47:45,265.265 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:47:45,271.271 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:47:45,276.276 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:47:47,316.316 INFO    ] ================================================
[2026-08-31 12:47:47,332.332 INFO    ] Launching Daemon at Mon Aug 31 12:47:47 IST 2026
[2026-08-31 12:47:47,342.342 INFO    ] ================================================
[2026-08-31 12:47:47,922.922 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:47:47
[2026-08-31 12:47:48,519.519 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:47:48,783.783 INFO    ] Initializing speech engine...
[2026-08-31 12:47:48,799.799 INFO    ] 2026-08-31 12:47:48
[2026-08-31 12:47:49,085.085 INFO    ] 2026-08-31 12:47:49
[2026-08-31 12:47:49,119.119 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:47:49,348.348 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:47:49,408.408 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:47:49,571.571 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:47:49,578.578 INFO    ] time= 31/08/2026 12:47:49
[2026-08-31 12:47:49,632.632 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:47:49,676.676 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:47:49,804.804 INFO    ] No existing commands found in stream
[2026-08-31 12:47:54,842.842 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:47:54,844.844 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-08-31 12:47:55,543.543 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 12:47:55,546.546 INFO    ] Checking for system updates...
[2026-08-31 12:47:55,582.582 INFO    ] 200
[2026-08-31 12:47:55,584.584 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:47:55,637.637 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:47:55,639.639 INFO    ] No update needed
[2026-08-31 12:47:55,642.642 INFO    ] Checking for camera pi updates...
[2026-08-31 12:47:55,675.675 INFO    ] 200
[2026-08-31 12:47:55,678.678 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:47:55,722.722 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:47:55,820.820 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:47:55,822.822 INFO    ] No camera update needed
[2026-08-31 12:47:55,824.824 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:47:55,827.827 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:47:55,832.832 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:47:55,837.837 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:47:57,878.878 INFO    ] ================================================
[2026-08-31 12:47:57,893.893 INFO    ] Launching Daemon at Mon Aug 31 12:47:57 IST 2026
[2026-08-31 12:47:57,904.904 INFO    ] ================================================
[2026-08-31 12:47:58,479.479 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:47:58
[2026-08-31 12:47:59,066.066 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:47:59,317.317 INFO    ] Initializing speech engine...
[2026-08-31 12:47:59,325.325 INFO    ] 2026-08-31 12:47:59
[2026-08-31 12:47:59,622.622 INFO    ] 2026-08-31 12:47:59
[2026-08-31 12:47:59,656.656 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:47:59,880.880 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:47:59,889.889 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:48:00,098.098 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:48:00,113.113 INFO    ] time= 31/08/2026 12:48:00
[2026-08-31 12:48:00,135.135 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:48:00,184.184 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:48:00,265.265 INFO    ] No existing commands found in stream
[2026-08-31 12:48:05,278.278 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:48:05,280.280 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-08-31 12:48:08,031.031 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 12:48:08,034.034 INFO    ] Checking for system updates...
[2026-08-31 12:48:08,072.072 INFO    ] 200
[2026-08-31 12:48:08,074.074 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:48:08,127.127 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:48:08,130.130 INFO    ] No update needed
[2026-08-31 12:48:08,132.132 INFO    ] Checking for camera pi updates...
[2026-08-31 12:48:08,172.172 INFO    ] 200
[2026-08-31 12:48:08,175.175 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:48:08,218.218 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:48:08,311.311 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:48:08,313.313 INFO    ] No camera update needed
[2026-08-31 12:48:08,316.316 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:48:08,318.318 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:48:08,324.324 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:48:08,329.329 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:48:10,369.369 INFO    ] ================================================
[2026-08-31 12:48:10,384.384 INFO    ] Launching Daemon at Mon Aug 31 12:48:10 IST 2026
[2026-08-31 12:48:10,394.394 INFO    ] ================================================
[2026-08-31 12:48:10,975.975 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:48:10
[2026-08-31 12:48:11,576.576 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:48:11,861.861 INFO    ] Initializing speech engine...
[2026-08-31 12:48:11,871.871 INFO    ] 2026-08-31 12:48:11
[2026-08-31 12:48:12,150.150 INFO    ] 2026-08-31 12:48:12
[2026-08-31 12:48:12,214.214 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:48:12,461.461 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:48:12,467.467 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:48:12,609.609 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:48:12,657.657 INFO    ] time= 31/08/2026 12:48:12
[2026-08-31 12:48:12,718.718 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:48:12,757.757 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:48:12,819.819 INFO    ] No existing commands found in stream
[2026-08-31 12:48:17,831.831 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:48:17,833.833 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-08-31 12:48:19,749.749 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 12:48:19,752.752 INFO    ] Checking for system updates...
[2026-08-31 12:48:19,790.790 INFO    ] 200
[2026-08-31 12:48:19,792.792 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:48:19,849.849 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:48:19,851.851 INFO    ] No update needed
[2026-08-31 12:48:19,854.854 INFO    ] Checking for camera pi updates...
[2026-08-31 12:48:19,888.888 INFO    ] 200
[2026-08-31 12:48:19,890.890 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:48:19,934.934 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:48:20,017.017 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:48:20,020.020 INFO    ] No camera update needed
[2026-08-31 12:48:20,022.022 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:48:20,024.024 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:48:20,030.030 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:48:20,035.035 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:48:22,075.075 INFO    ] ================================================
[2026-08-31 12:48:22,090.090 INFO    ] Launching Daemon at Mon Aug 31 12:48:22 IST 2026
[2026-08-31 12:48:22,101.101 INFO    ] ================================================
[2026-08-31 12:48:22,681.681 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:48:22
[2026-08-31 12:48:23,278.278 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:48:23,549.549 INFO    ] Initializing speech engine...
[2026-08-31 12:48:23,568.568 INFO    ] 2026-08-31 12:48:23
[2026-08-31 12:48:23,830.830 INFO    ] 2026-08-31 12:48:23
[2026-08-31 12:48:23,866.866 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:48:24,065.065 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:48:24,085.085 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:48:24,226.226 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:48:24,234.234 INFO    ] time= 31/08/2026 12:48:24
[2026-08-31 12:48:24,281.281 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:48:24,306.306 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:48:24,440.440 INFO    ] No existing commands found in stream
[2026-08-31 12:48:29,454.454 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:48:29,457.457 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-08-31 12:48:32,668.668 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 12:48:32,671.671 INFO    ] Checking for system updates...
[2026-08-31 12:48:32,713.713 INFO    ] 200
[2026-08-31 12:48:32,716.716 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:48:32,777.777 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:48:32,780.780 INFO    ] No update needed
[2026-08-31 12:48:32,782.782 INFO    ] Checking for camera pi updates...
[2026-08-31 12:48:32,819.819 INFO    ] 200
[2026-08-31 12:48:32,821.821 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:48:32,861.861 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:48:32,941.941 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:48:32,943.943 INFO    ] No camera update needed
[2026-08-31 12:48:32,945.945 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:48:32,948.948 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:48:32,953.953 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:48:32,958.958 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:48:35,999.999 INFO    ] ================================================
[2026-08-31 12:48:35,014.014 INFO    ] Launching Daemon at Mon Aug 31 12:48:35 IST 2026
[2026-08-31 12:48:35,024.024 INFO    ] ================================================
[2026-08-31 12:48:35,589.589 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:48:35
[2026-08-31 12:48:36,171.171 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:48:36,425.425 INFO    ] Initializing speech engine...
[2026-08-31 12:48:36,440.440 INFO    ] 2026-08-31 12:48:36
[2026-08-31 12:48:36,719.719 INFO    ] 2026-08-31 12:48:36
[2026-08-31 12:48:36,754.754 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:48:36,945.945 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:48:36,958.958 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:48:37,120.120 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:48:37,125.125 INFO    ] time= 31/08/2026 12:48:37
[2026-08-31 12:48:37,133.133 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:48:37,179.179 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:48:37,317.317 INFO    ] No existing commands found in stream
[2026-08-31 12:48:42,347.347 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:48:42,350.350 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-08-31 12:48:45,876.876 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 12:48:45,879.879 INFO    ] Checking for system updates...
[2026-08-31 12:48:45,915.915 INFO    ] 200
[2026-08-31 12:48:45,918.918 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:48:45,976.976 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:48:45,979.979 INFO    ] No update needed
[2026-08-31 12:48:45,981.981 INFO    ] Checking for camera pi updates...
[2026-08-31 12:48:46,016.016 INFO    ] 200
[2026-08-31 12:48:46,019.019 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:48:46,063.063 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:48:46,148.148 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:48:46,151.151 INFO    ] No camera update needed
[2026-08-31 12:48:46,153.153 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:48:46,156.156 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:48:46,162.162 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:48:46,167.167 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:48:48,208.208 INFO    ] ================================================
[2026-08-31 12:48:48,223.223 INFO    ] Launching Daemon at Mon Aug 31 12:48:48 IST 2026
[2026-08-31 12:48:48,233.233 INFO    ] ================================================
[2026-08-31 12:48:48,796.796 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:48:48
[2026-08-31 12:48:49,378.378 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:48:49,628.628 INFO    ] Initializing speech engine...
[2026-08-31 12:48:49,650.650 INFO    ] 2026-08-31 12:48:49
[2026-08-31 12:48:49,904.904 INFO    ] 2026-08-31 12:48:49
[2026-08-31 12:48:49,943.943 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:48:50,145.145 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:48:50,196.196 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:48:50,349.349 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:48:50,392.392 INFO    ] time= 31/08/2026 12:48:50
[2026-08-31 12:48:50,451.451 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:48:50,486.486 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:48:50,550.550 INFO    ] No existing commands found in stream
[2026-08-31 12:48:55,582.582 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:48:55,585.585 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-08-31 12:48:56,985.985 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 12:48:56,988.988 INFO    ] Checking for system updates...
[2026-08-31 12:48:57,023.023 INFO    ] 200
[2026-08-31 12:48:57,026.026 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:48:57,083.083 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:48:57,085.085 INFO    ] No update needed
[2026-08-31 12:48:57,087.087 INFO    ] Checking for camera pi updates...
[2026-08-31 12:48:57,123.123 INFO    ] 200
[2026-08-31 12:48:57,125.125 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:48:57,167.167 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:48:57,247.247 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:48:57,250.250 INFO    ] No camera update needed
[2026-08-31 12:48:57,252.252 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:48:57,255.255 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:48:57,260.260 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:48:57,265.265 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:48:59,306.306 INFO    ] ================================================
[2026-08-31 12:48:59,321.321 INFO    ] Launching Daemon at Mon Aug 31 12:48:59 IST 2026
[2026-08-31 12:48:59,332.332 INFO    ] ================================================
[2026-08-31 12:48:59,898.898 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:48:59
[2026-08-31 12:49:00,481.481 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:49:00,731.731 INFO    ] Initializing speech engine...
[2026-08-31 12:49:00,755.755 INFO    ] 2026-08-31 12:49:00
[2026-08-31 12:49:01,008.008 INFO    ] 2026-08-31 12:49:01
[2026-08-31 12:49:01,042.042 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:49:01,276.276 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:49:01,303.303 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:49:01,493.493 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:49:01,528.528 INFO    ] time= 31/08/2026 12:49:01
[2026-08-31 12:49:01,555.555 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:49:01,559.559 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:49:01,639.639 INFO    ] No existing commands found in stream
[2026-08-31 12:49:06,652.652 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:49:06,655.655 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-08-31 12:49:08,920.920 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 12:49:08,923.923 INFO    ] Checking for system updates...
[2026-08-31 12:49:08,959.959 INFO    ] 200
[2026-08-31 12:49:08,962.962 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:49:09,019.019 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:49:09,022.022 INFO    ] No update needed
[2026-08-31 12:49:09,024.024 INFO    ] Checking for camera pi updates...
[2026-08-31 12:49:09,057.057 INFO    ] 200
[2026-08-31 12:49:09,060.060 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:49:09,101.101 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:49:09,185.185 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:49:09,188.188 INFO    ] No camera update needed
[2026-08-31 12:49:09,190.190 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:49:09,192.192 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:49:09,197.197 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:49:09,202.202 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:49:11,243.243 INFO    ] ================================================
[2026-08-31 12:49:11,259.259 INFO    ] Launching Daemon at Mon Aug 31 12:49:11 IST 2026
[2026-08-31 12:49:11,270.270 INFO    ] ================================================
[2026-08-31 12:49:11,851.851 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:49:11
[2026-08-31 12:49:12,452.452 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:49:12,702.702 INFO    ] Initializing speech engine...
[2026-08-31 12:49:12,710.710 INFO    ] 2026-08-31 12:49:12
[2026-08-31 12:49:13,008.008 INFO    ] 2026-08-31 12:49:12
[2026-08-31 12:49:13,045.045 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:49:13,287.287 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:49:13,320.320 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:49:13,464.464 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:49:13,529.529 INFO    ] time= 31/08/2026 12:49:13
[2026-08-31 12:49:13,583.583 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:49:13,592.592 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:49:13,739.739 INFO    ] No existing commands found in stream
[2026-08-31 12:49:18,761.761 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:49:18,764.764 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-08-31 12:49:19,756.756 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 12:49:19,759.759 INFO    ] Checking for system updates...
[2026-08-31 12:49:19,795.795 INFO    ] 200
[2026-08-31 12:49:19,798.798 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:49:19,850.850 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:49:19,853.853 INFO    ] No update needed
[2026-08-31 12:49:19,855.855 INFO    ] Checking for camera pi updates...
[2026-08-31 12:49:19,888.888 INFO    ] 200
[2026-08-31 12:49:19,891.891 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:49:19,939.939 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:49:20,021.021 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:49:20,024.024 INFO    ] No camera update needed
[2026-08-31 12:49:20,026.026 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:49:20,029.029 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:49:20,034.034 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:49:20,039.039 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:49:22,081.081 INFO    ] ================================================
[2026-08-31 12:49:22,097.097 INFO    ] Launching Daemon at Mon Aug 31 12:49:22 IST 2026
[2026-08-31 12:49:22,108.108 INFO    ] ================================================
[2026-08-31 12:49:22,680.680 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:49:22
[2026-08-31 12:49:23,269.269 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:49:23,540.540 INFO    ] Initializing speech engine...
[2026-08-31 12:49:23,560.560 INFO    ] 2026-08-31 12:49:23
[2026-08-31 12:49:23,830.830 INFO    ] 2026-08-31 12:49:23
[2026-08-31 12:49:23,865.865 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:49:24,061.061 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:49:24,074.074 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:49:24,235.235 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:49:24,244.244 INFO    ] time= 31/08/2026 12:49:24
[2026-08-31 12:49:24,251.251 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:49:24,278.278 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:49:24,426.426 INFO    ] No existing commands found in stream
[2026-08-31 12:49:29,451.451 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:49:29,453.453 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-08-31 12:49:31,745.745 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 12:49:31,749.749 INFO    ] Checking for system updates...
[2026-08-31 12:49:31,791.791 INFO    ] 200
[2026-08-31 12:49:31,793.793 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:49:31,856.856 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:49:31,859.859 INFO    ] No update needed
[2026-08-31 12:49:31,861.861 INFO    ] Checking for camera pi updates...
[2026-08-31 12:49:31,898.898 INFO    ] 200
[2026-08-31 12:49:31,901.901 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:49:31,943.943 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:49:32,096.096 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:49:32,099.099 INFO    ] No camera update needed
[2026-08-31 12:49:32,102.102 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:49:32,105.105 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:49:32,112.112 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:49:32,118.118 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:49:34,159.159 INFO    ] ================================================
[2026-08-31 12:49:34,176.176 INFO    ] Launching Daemon at Mon Aug 31 12:49:34 IST 2026
[2026-08-31 12:49:34,187.187 INFO    ] ================================================
[2026-08-31 12:49:34,757.757 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:49:34
[2026-08-31 12:49:35,345.345 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:49:35,601.601 INFO    ] Initializing speech engine...
[2026-08-31 12:49:35,617.617 INFO    ] 2026-08-31 12:49:35
[2026-08-31 12:49:35,902.902 INFO    ] 2026-08-31 12:49:35
[2026-08-31 12:49:35,937.937 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:49:36,156.156 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:49:36,164.164 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:49:36,368.368 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:49:36,386.386 INFO    ] time= 31/08/2026 12:49:36
[2026-08-31 12:49:36,428.428 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:49:36,473.473 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:49:36,588.588 INFO    ] No existing commands found in stream
[2026-08-31 12:49:41,601.601 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:49:41,603.603 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-08-31 12:49:42,625.625 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 12:49:42,628.628 INFO    ] Checking for system updates...
[2026-08-31 12:49:42,666.666 INFO    ] 200
[2026-08-31 12:49:42,669.669 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:49:42,722.722 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:49:42,724.724 INFO    ] No update needed
[2026-08-31 12:49:42,727.727 INFO    ] Checking for camera pi updates...
[2026-08-31 12:49:42,763.763 INFO    ] 200
[2026-08-31 12:49:42,765.765 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:49:42,805.805 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:49:42,875.875 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:49:42,878.878 INFO    ] No camera update needed
[2026-08-31 12:49:42,880.880 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:49:42,882.882 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:49:42,888.888 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:49:42,892.892 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:49:44,932.932 INFO    ] ================================================
[2026-08-31 12:49:44,948.948 INFO    ] Launching Daemon at Mon Aug 31 12:49:44 IST 2026
[2026-08-31 12:49:44,959.959 INFO    ] ================================================
[2026-08-31 12:49:45,540.540 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:49:45
[2026-08-31 12:49:46,124.124 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:49:46,394.394 INFO    ] Initializing speech engine...
[2026-08-31 12:49:46,414.414 INFO    ] 2026-08-31 12:49:46
[2026-08-31 12:49:46,679.679 INFO    ] 2026-08-31 12:49:46
[2026-08-31 12:49:46,717.717 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:49:46,938.938 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:49:46,946.946 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:49:47,086.086 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:49:47,096.096 INFO    ] time= 31/08/2026 12:49:47
[2026-08-31 12:49:47,104.104 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:49:47,129.129 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:49:47,297.297 INFO    ] No existing commands found in stream
[2026-08-31 12:49:52,322.322 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:49:52,324.324 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-08-31 12:49:53,473.473 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 12:49:53,476.476 INFO    ] Checking for system updates...
[2026-08-31 12:49:53,511.511 INFO    ] 200
[2026-08-31 12:49:53,514.514 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:49:53,570.570 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:49:53,572.572 INFO    ] No update needed
[2026-08-31 12:49:53,575.575 INFO    ] Checking for camera pi updates...
[2026-08-31 12:49:53,608.608 INFO    ] 200
[2026-08-31 12:49:53,611.611 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:49:53,651.651 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:49:53,695.695 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:49:53,698.698 INFO    ] No camera update needed
[2026-08-31 12:49:53,700.700 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:49:53,702.702 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:49:53,708.708 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:49:53,713.713 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:49:55,753.753 INFO    ] ================================================
[2026-08-31 12:49:55,769.769 INFO    ] Launching Daemon at Mon Aug 31 12:49:55 IST 2026
[2026-08-31 12:49:55,779.779 INFO    ] ================================================
[2026-08-31 12:49:56,348.348 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:49:56
[2026-08-31 12:49:56,936.936 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:49:57,191.191 INFO    ] Initializing speech engine...
[2026-08-31 12:49:57,198.198 INFO    ] 2026-08-31 12:49:57
[2026-08-31 12:49:57,489.489 INFO    ] 2026-08-31 12:49:57
[2026-08-31 12:49:57,529.529 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:49:57,728.728 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:49:57,740.740 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:49:57,904.904 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:49:57,909.909 INFO    ] time= 31/08/2026 12:49:57
[2026-08-31 12:49:57,914.914 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:49:57,921.921 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:49:58,071.071 INFO    ] No existing commands found in stream
[2026-08-31 12:50:03,098.098 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:50:03,101.101 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-08-31 12:50:07,266.266 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 12:50:07,269.269 INFO    ] Checking for system updates...
[2026-08-31 12:50:07,304.304 INFO    ] 200
[2026-08-31 12:50:07,306.306 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:50:07,361.361 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:50:07,363.363 INFO    ] No update needed
[2026-08-31 12:50:07,365.365 INFO    ] Checking for camera pi updates...
[2026-08-31 12:50:07,401.401 INFO    ] 200
[2026-08-31 12:50:07,404.404 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:50:07,444.444 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:50:07,508.508 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:50:07,510.510 INFO    ] No camera update needed
[2026-08-31 12:50:07,516.516 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:50:07,519.519 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:50:07,525.525 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:50:07,530.530 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:50:09,571.571 INFO    ] ================================================
[2026-08-31 12:50:09,586.586 INFO    ] Launching Daemon at Mon Aug 31 12:50:09 IST 2026
[2026-08-31 12:50:09,597.597 INFO    ] ================================================
[2026-08-31 12:50:10,241.241 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:50:10
[2026-08-31 12:50:10,904.904 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:50:11,205.205 INFO    ] Initializing speech engine...
[2026-08-31 12:50:11,220.220 INFO    ] 2026-08-31 12:50:11
[2026-08-31 12:50:11,531.531 INFO    ] 2026-08-31 12:50:11
[2026-08-31 12:50:11,626.626 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:50:11,867.867 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:50:11,873.873 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:50:12,076.076 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:50:12,096.096 INFO    ] time= 31/08/2026 12:50:12
[2026-08-31 12:50:12,108.108 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:50:12,123.123 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:50:12,190.190 INFO    ] No existing commands found in stream
[2026-08-31 12:50:17,200.200 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:50:17,204.204 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-08-31 12:50:18,126.126 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 12:50:18,129.129 INFO    ] Checking for system updates...
[2026-08-31 12:50:18,172.172 INFO    ] 200
[2026-08-31 12:50:18,175.175 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:50:18,228.228 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:50:18,231.231 INFO    ] No update needed
[2026-08-31 12:50:18,233.233 INFO    ] Checking for camera pi updates...
[2026-08-31 12:50:18,271.271 INFO    ] 200
[2026-08-31 12:50:18,273.273 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:50:18,314.314 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:50:18,402.402 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:50:18,405.405 INFO    ] No camera update needed
[2026-08-31 12:50:18,408.408 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:50:18,410.410 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:50:18,416.416 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:50:18,422.422 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:50:20,461.461 INFO    ] ================================================
[2026-08-31 12:50:20,476.476 INFO    ] Launching Daemon at Mon Aug 31 12:50:20 IST 2026
[2026-08-31 12:50:20,487.487 INFO    ] ================================================
[2026-08-31 12:50:21,120.120 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:50:21
[2026-08-31 12:50:21,772.772 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:50:22,069.069 INFO    ] Initializing speech engine...
[2026-08-31 12:50:22,075.075 INFO    ] 2026-08-31 12:50:22
[2026-08-31 12:50:22,348.348 INFO    ] 2026-08-31 12:50:22
[2026-08-31 12:50:22,402.402 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:50:22,683.683 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:50:22,692.692 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:50:22,885.885 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:50:22,905.905 INFO    ] time= 31/08/2026 12:50:22
[2026-08-31 12:50:22,915.915 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:50:22,942.942 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:50:23,058.058 INFO    ] No existing commands found in stream
[2026-08-31 12:50:28,083.083 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:50:28,086.086 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-08-31 12:50:30,829.829 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 12:50:30,831.831 INFO    ] Checking for system updates...
[2026-08-31 12:50:30,869.869 INFO    ] 200
[2026-08-31 12:50:30,872.872 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:50:30,924.924 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:50:30,927.927 INFO    ] No update needed
[2026-08-31 12:50:30,929.929 INFO    ] Checking for camera pi updates...
[2026-08-31 12:50:30,962.962 INFO    ] 200
[2026-08-31 12:50:30,965.965 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:50:31,010.010 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:50:31,109.109 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:50:31,111.111 INFO    ] No camera update needed
[2026-08-31 12:50:31,113.113 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:50:31,116.116 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:50:31,121.121 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:50:31,126.126 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:50:33,166.166 INFO    ] ================================================
[2026-08-31 12:50:33,181.181 INFO    ] Launching Daemon at Mon Aug 31 12:50:33 IST 2026
[2026-08-31 12:50:33,192.192 INFO    ] ================================================
[2026-08-31 12:50:33,765.765 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:50:33
[2026-08-31 12:50:34,347.347 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:50:34,600.600 INFO    ] Initializing speech engine...
[2026-08-31 12:50:34,606.606 INFO    ] 2026-08-31 12:50:34
[2026-08-31 12:50:34,896.896 INFO    ] 2026-08-31 12:50:34
[2026-08-31 12:50:34,935.935 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:50:35,155.155 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:50:35,168.168 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:50:35,349.349 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:50:35,379.379 INFO    ] time= 31/08/2026 12:50:35
[2026-08-31 12:50:35,420.420 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:50:35,484.484 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:50:35,645.645 INFO    ] No existing commands found in stream
[2026-08-31 12:50:40,661.661 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:50:40,664.664 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-08-31 12:50:42,955.955 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 12:50:42,957.957 INFO    ] Checking for system updates...
[2026-08-31 12:50:42,992.992 INFO    ] 200
[2026-08-31 12:50:42,995.995 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:50:43,053.053 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:50:43,056.056 INFO    ] No update needed
[2026-08-31 12:50:43,058.058 INFO    ] Checking for camera pi updates...
[2026-08-31 12:50:43,093.093 INFO    ] 200
[2026-08-31 12:50:43,095.095 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:50:43,137.137 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:50:43,224.224 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:50:43,226.226 INFO    ] No camera update needed
[2026-08-31 12:50:43,229.229 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:50:43,232.232 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:50:43,238.238 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:50:43,244.244 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:50:45,284.284 INFO    ] ================================================
[2026-08-31 12:50:45,299.299 INFO    ] Launching Daemon at Mon Aug 31 12:50:45 IST 2026
[2026-08-31 12:50:45,310.310 INFO    ] ================================================
[2026-08-31 12:50:45,946.946 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:50:45
[2026-08-31 12:50:46,600.600 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:50:46,872.872 INFO    ] Initializing speech engine...
[2026-08-31 12:50:46,885.885 INFO    ] 2026-08-31 12:50:46
[2026-08-31 12:50:47,169.169 INFO    ] 2026-08-31 12:50:47
[2026-08-31 12:50:47,238.238 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:50:47,491.491 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:50:47,499.499 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:50:47,724.724 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:50:47,743.743 INFO    ] time= 31/08/2026 12:50:47
[2026-08-31 12:50:47,760.760 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:50:47,775.775 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:50:47,918.918 INFO    ] No existing commands found in stream
[2026-08-31 12:50:52,949.949 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:50:52,952.952 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-08-31 12:50:55,449.449 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 12:50:55,452.452 INFO    ] Checking for system updates...
[2026-08-31 12:50:55,490.490 INFO    ] 200
[2026-08-31 12:50:55,493.493 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:50:55,546.546 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:50:55,549.549 INFO    ] No update needed
[2026-08-31 12:50:55,551.551 INFO    ] Checking for camera pi updates...
[2026-08-31 12:50:55,602.602 INFO    ] 200
[2026-08-31 12:50:55,605.605 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:50:55,648.648 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:50:55,736.736 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:50:55,739.739 INFO    ] No camera update needed
[2026-08-31 12:50:55,741.741 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:50:55,743.743 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:50:55,749.749 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:50:55,754.754 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:50:57,796.796 INFO    ] ================================================
[2026-08-31 12:50:57,813.813 INFO    ] Launching Daemon at Mon Aug 31 12:50:57 IST 2026
[2026-08-31 12:50:57,825.825 INFO    ] ================================================
[2026-08-31 12:50:58,421.421 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:50:58
[2026-08-31 12:50:59,032.032 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:50:59,309.309 INFO    ] Initializing speech engine...
[2026-08-31 12:50:59,324.324 INFO    ] 2026-08-31 12:50:59
[2026-08-31 12:50:59,622.622 INFO    ] 2026-08-31 12:50:59
[2026-08-31 12:50:59,660.660 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:50:59,863.863 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:50:59,880.880 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:51:00,045.045 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:51:00,054.054 INFO    ] time= 31/08/2026 12:51:00
[2026-08-31 12:51:00,059.059 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:51:00,066.066 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:51:00,142.142 INFO    ] No existing commands found in stream
[2026-08-31 12:51:05,152.152 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:51:05,154.154 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-08-31 12:51:09,243.243 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 12:51:09,245.245 INFO    ] Checking for system updates...
[2026-08-31 12:51:09,281.281 INFO    ] 200
[2026-08-31 12:51:09,283.283 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:51:09,335.335 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:51:09,338.338 INFO    ] No update needed
[2026-08-31 12:51:09,340.340 INFO    ] Checking for camera pi updates...
[2026-08-31 12:51:09,374.374 INFO    ] 200
[2026-08-31 12:51:09,376.376 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:51:09,421.421 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:51:09,501.501 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:51:09,504.504 INFO    ] No camera update needed
[2026-08-31 12:51:09,506.506 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:51:09,508.508 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:51:09,514.514 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:51:09,519.519 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:51:11,560.560 INFO    ] ================================================
[2026-08-31 12:51:11,575.575 INFO    ] Launching Daemon at Mon Aug 31 12:51:11 IST 2026
[2026-08-31 12:51:11,585.585 INFO    ] ================================================
[2026-08-31 12:51:12,201.201 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:51:12
[2026-08-31 12:51:12,863.863 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:51:13,163.163 INFO    ] Initializing speech engine...
[2026-08-31 12:51:13,176.176 INFO    ] 2026-08-31 12:51:13
[2026-08-31 12:51:13,461.461 INFO    ] 2026-08-31 12:51:13
[2026-08-31 12:51:13,500.500 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:51:13,749.749 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:51:13,767.767 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:51:13,983.983 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:51:14,001.001 INFO    ] time= 31/08/2026 12:51:13
[2026-08-31 12:51:14,011.011 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:51:14,040.040 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:51:14,145.145 INFO    ] No existing commands found in stream
[2026-08-31 12:51:19,162.162 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:51:19,165.165 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-08-31 12:51:21,886.886 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 12:51:21,889.889 INFO    ] Checking for system updates...
[2026-08-31 12:51:21,930.930 INFO    ] 200
[2026-08-31 12:51:21,933.933 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:51:21,987.987 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:51:21,990.990 INFO    ] No update needed
[2026-08-31 12:51:21,993.993 INFO    ] Checking for camera pi updates...
[2026-08-31 12:51:22,027.027 INFO    ] 200
[2026-08-31 12:51:22,029.029 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:51:22,073.073 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:51:22,154.154 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:51:22,156.156 INFO    ] No camera update needed
[2026-08-31 12:51:22,159.159 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:51:22,161.161 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:51:22,167.167 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:51:22,172.172 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:51:24,211.211 INFO    ] ================================================
[2026-08-31 12:51:24,227.227 INFO    ] Launching Daemon at Mon Aug 31 12:51:24 IST 2026
[2026-08-31 12:51:24,237.237 INFO    ] ================================================
[2026-08-31 12:51:24,802.802 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:51:24
[2026-08-31 12:51:25,384.384 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:51:25,651.651 INFO    ] Initializing speech engine...
[2026-08-31 12:51:25,659.659 INFO    ] 2026-08-31 12:51:25
[2026-08-31 12:51:25,905.905 INFO    ] 2026-08-31 12:51:25
[2026-08-31 12:51:25,940.940 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:51:26,191.191 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:51:26,200.200 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:51:26,402.402 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:51:26,446.446 INFO    ] time= 31/08/2026 12:51:26
[2026-08-31 12:51:26,463.463 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:51:26,481.481 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:51:26,600.600 INFO    ] No existing commands found in stream
[2026-08-31 12:51:31,620.620 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:51:31,623.623 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-08-31 12:51:35,525.525 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 12:51:35,528.528 INFO    ] Checking for system updates...
[2026-08-31 12:51:35,564.564 INFO    ] 200
[2026-08-31 12:51:35,566.566 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:51:35,618.618 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:51:35,621.621 INFO    ] No update needed
[2026-08-31 12:51:35,623.623 INFO    ] Checking for camera pi updates...
[2026-08-31 12:51:35,657.657 INFO    ] 200
[2026-08-31 12:51:35,660.660 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:51:35,700.700 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:51:35,869.869 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:51:35,872.872 INFO    ] No camera update needed
[2026-08-31 12:51:35,874.874 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:51:35,876.876 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:51:35,882.882 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:51:35,887.887 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:51:37,927.927 INFO    ] ================================================
[2026-08-31 12:51:37,942.942 INFO    ] Launching Daemon at Mon Aug 31 12:51:37 IST 2026
[2026-08-31 12:51:37,953.953 INFO    ] ================================================
[2026-08-31 12:51:38,522.522 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:51:38
[2026-08-31 12:51:39,103.103 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:51:39,374.374 INFO    ] Initializing speech engine...
[2026-08-31 12:51:39,381.381 INFO    ] 2026-08-31 12:51:39
[2026-08-31 12:51:39,626.626 INFO    ] 2026-08-31 12:51:39
[2026-08-31 12:51:39,661.661 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:51:39,919.919 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:51:39,924.924 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:51:40,132.132 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:51:40,176.176 INFO    ] time= 31/08/2026 12:51:40
[2026-08-31 12:51:40,187.187 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:51:40,205.205 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:51:40,329.329 INFO    ] No existing commands found in stream
[2026-08-31 12:51:45,346.346 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:51:45,349.349 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-08-31 12:51:46,896.896 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 12:51:46,899.899 INFO    ] Checking for system updates...
[2026-08-31 12:51:46,934.934 INFO    ] 200
[2026-08-31 12:51:46,937.937 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:51:46,991.991 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:51:46,993.993 INFO    ] No update needed
[2026-08-31 12:51:46,996.996 INFO    ] Checking for camera pi updates...
[2026-08-31 12:51:47,033.033 INFO    ] 200
[2026-08-31 12:51:47,035.035 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:51:47,075.075 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:51:47,175.175 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:51:47,178.178 INFO    ] No camera update needed
[2026-08-31 12:51:47,180.180 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:51:47,182.182 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:51:47,188.188 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:51:47,193.193 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:51:49,236.236 INFO    ] ================================================
[2026-08-31 12:51:49,251.251 INFO    ] Launching Daemon at Mon Aug 31 12:51:49 IST 2026
[2026-08-31 12:51:49,262.262 INFO    ] ================================================
[2026-08-31 12:51:49,825.825 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:51:49
[2026-08-31 12:51:50,405.405 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:51:50,672.672 INFO    ] Initializing speech engine...
[2026-08-31 12:51:50,682.682 INFO    ] 2026-08-31 12:51:50
[2026-08-31 12:51:50,926.926 INFO    ] 2026-08-31 12:51:50
[2026-08-31 12:51:50,961.961 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:51:51,209.209 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:51:51,219.219 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:51:51,439.439 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:51:51,499.499 INFO    ] time= 31/08/2026 12:51:51
[2026-08-31 12:51:51,507.507 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:51:51,523.523 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:51:51,643.643 INFO    ] No existing commands found in stream
[2026-08-31 12:51:56,673.673 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:51:56,676.676 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-08-31 12:52:01,016.016 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 12:52:01,019.019 INFO    ] Checking for system updates...
[2026-08-31 12:52:01,054.054 INFO    ] 200
[2026-08-31 12:52:01,057.057 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:52:01,112.112 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:52:01,114.114 INFO    ] No update needed
[2026-08-31 12:52:01,117.117 INFO    ] Checking for camera pi updates...
[2026-08-31 12:52:01,150.150 INFO    ] 200
[2026-08-31 12:52:01,152.152 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:52:01,193.193 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:52:01,276.276 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:52:01,278.278 INFO    ] No camera update needed
[2026-08-31 12:52:01,281.281 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:52:01,283.283 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:52:01,288.288 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:52:01,293.293 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:52:03,342.342 INFO    ] ================================================
[2026-08-31 12:52:03,363.363 INFO    ] Launching Daemon at Mon Aug 31 12:52:03 IST 2026
[2026-08-31 12:52:03,381.381 INFO    ] ================================================
[2026-08-31 12:52:04,021.021 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:52:04
[2026-08-31 12:52:04,631.631 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:52:04,896.896 INFO    ] Initializing speech engine...
[2026-08-31 12:52:04,921.921 INFO    ] 2026-08-31 12:52:04
[2026-08-31 12:52:05,195.195 INFO    ] 2026-08-31 12:52:05
[2026-08-31 12:52:05,233.233 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:52:05,426.426 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:52:05,440.440 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:52:05,600.600 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:52:05,605.605 INFO    ] time= 31/08/2026 12:52:05
[2026-08-31 12:52:05,612.612 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:52:05,654.654 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:52:05,791.791 INFO    ] No existing commands found in stream
[2026-08-31 12:52:10,822.822 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:52:10,824.824 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-08-31 12:52:12,919.919 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 12:52:12,922.922 INFO    ] Checking for system updates...
[2026-08-31 12:52:12,960.960 INFO    ] 200
[2026-08-31 12:52:12,963.963 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:52:13,016.016 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:52:13,018.018 INFO    ] No update needed
[2026-08-31 12:52:13,021.021 INFO    ] Checking for camera pi updates...
[2026-08-31 12:52:13,054.054 INFO    ] 200
[2026-08-31 12:52:13,056.056 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:52:13,101.101 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:52:13,172.172 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:52:13,174.174 INFO    ] No camera update needed
[2026-08-31 12:52:13,176.176 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:52:13,179.179 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:52:13,184.184 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:52:13,189.189 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:52:15,228.228 INFO    ] ================================================
[2026-08-31 12:52:15,243.243 INFO    ] Launching Daemon at Mon Aug 31 12:52:15 IST 2026
[2026-08-31 12:52:15,253.253 INFO    ] ================================================
[2026-08-31 12:52:15,818.818 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:52:15
[2026-08-31 12:52:16,400.400 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:52:16,668.668 INFO    ] Initializing speech engine...
[2026-08-31 12:52:16,677.677 INFO    ] 2026-08-31 12:52:16
[2026-08-31 12:52:16,925.925 INFO    ] 2026-08-31 12:52:16
[2026-08-31 12:52:16,959.959 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:52:17,213.213 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:52:17,219.219 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:52:17,450.450 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:52:17,476.476 INFO    ] time= 31/08/2026 12:52:17
[2026-08-31 12:52:17,482.482 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:52:17,499.499 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:52:17,626.626 INFO    ] No existing commands found in stream
[2026-08-31 12:52:22,641.641 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:52:22,644.644 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-08-31 12:52:25,808.808 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 12:52:25,811.811 INFO    ] Checking for system updates...
[2026-08-31 12:52:25,849.849 INFO    ] 200
[2026-08-31 12:52:25,852.852 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:52:25,910.910 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:52:25,913.913 INFO    ] No update needed
[2026-08-31 12:52:25,915.915 INFO    ] Checking for camera pi updates...
[2026-08-31 12:52:25,952.952 INFO    ] 200
[2026-08-31 12:52:25,954.954 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:52:25,995.995 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:52:26,078.078 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:52:26,080.080 INFO    ] No camera update needed
[2026-08-31 12:52:26,083.083 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:52:26,085.085 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:52:26,090.090 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:52:26,095.095 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:52:28,136.136 INFO    ] ================================================
[2026-08-31 12:52:28,151.151 INFO    ] Launching Daemon at Mon Aug 31 12:52:28 IST 2026
[2026-08-31 12:52:28,162.162 INFO    ] ================================================
[2026-08-31 12:52:28,744.744 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:52:28
[2026-08-31 12:52:29,359.359 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:52:29,633.633 INFO    ] Initializing speech engine...
[2026-08-31 12:52:29,641.641 INFO    ] 2026-08-31 12:52:29
[2026-08-31 12:52:29,891.891 INFO    ] 2026-08-31 12:52:29
[2026-08-31 12:52:29,927.927 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:52:30,179.179 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:52:30,189.189 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:52:30,323.323 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:52:30,388.388 INFO    ] time= 31/08/2026 12:52:30
[2026-08-31 12:52:30,450.450 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:52:30,457.457 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:52:30,598.598 INFO    ] No existing commands found in stream
[2026-08-31 12:52:35,614.614 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:52:35,617.617 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-08-31 12:52:39,966.966 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 12:52:39,969.969 INFO    ] Checking for system updates...
[2026-08-31 12:52:40,004.004 INFO    ] 200
[2026-08-31 12:52:40,007.007 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:52:40,060.060 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:52:40,063.063 INFO    ] No update needed
[2026-08-31 12:52:40,065.065 INFO    ] Checking for camera pi updates...
[2026-08-31 12:52:40,107.107 INFO    ] 200
[2026-08-31 12:52:40,109.109 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:52:40,155.155 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:52:40,206.206 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:52:40,209.209 INFO    ] No camera update needed
[2026-08-31 12:52:40,211.211 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:52:40,213.213 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:52:40,219.219 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:52:40,224.224 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:52:42,267.267 INFO    ] ================================================
[2026-08-31 12:52:42,282.282 INFO    ] Launching Daemon at Mon Aug 31 12:52:42 IST 2026
[2026-08-31 12:52:42,293.293 INFO    ] ================================================
[2026-08-31 12:52:42,915.915 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:52:42
[2026-08-31 12:52:43,574.574 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:52:43,877.877 INFO    ] Initializing speech engine...
[2026-08-31 12:52:43,889.889 INFO    ] 2026-08-31 12:52:43
[2026-08-31 12:52:44,164.164 INFO    ] 2026-08-31 12:52:44
[2026-08-31 12:52:44,220.220 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:52:44,473.473 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:52:44,481.481 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:52:44,682.682 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:52:44,716.716 INFO    ] time= 31/08/2026 12:52:44
[2026-08-31 12:52:44,722.722 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:52:44,738.738 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:52:44,872.872 INFO    ] No existing commands found in stream
[2026-08-31 12:52:49,901.901 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:52:49,904.904 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-08-31 12:52:52,673.673 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 12:52:52,676.676 INFO    ] Checking for system updates...
[2026-08-31 12:52:52,713.713 INFO    ] 200
[2026-08-31 12:52:52,716.716 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:52:52,770.770 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:52:52,773.773 INFO    ] No update needed
[2026-08-31 12:52:52,775.775 INFO    ] Checking for camera pi updates...
[2026-08-31 12:52:52,809.809 INFO    ] 200
[2026-08-31 12:52:52,812.812 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:52:52,861.861 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:52:52,949.949 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:52:52,951.951 INFO    ] No camera update needed
[2026-08-31 12:52:52,954.954 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:52:52,956.956 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:52:52,961.961 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:52:52,967.967 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:52:55,006.006 INFO    ] ================================================
[2026-08-31 12:52:55,021.021 INFO    ] Launching Daemon at Mon Aug 31 12:52:55 IST 2026
[2026-08-31 12:52:55,031.031 INFO    ] ================================================
[2026-08-31 12:52:55,673.673 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:52:55
[2026-08-31 12:52:56,336.336 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:52:56,637.637 INFO    ] Initializing speech engine...
[2026-08-31 12:52:56,652.652 INFO    ] 2026-08-31 12:52:56
[2026-08-31 12:52:56,933.933 INFO    ] 2026-08-31 12:52:56
[2026-08-31 12:52:56,982.982 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:52:57,232.232 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:52:57,265.265 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:52:57,466.466 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:52:57,473.473 INFO    ] time= 31/08/2026 12:52:57
[2026-08-31 12:52:57,491.491 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:52:57,520.520 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:52:57,627.627 INFO    ] No existing commands found in stream
[2026-08-31 12:53:02,657.657 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:53:02,661.661 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-08-31 12:53:05,882.882 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 12:53:05,885.885 INFO    ] Checking for system updates...
[2026-08-31 12:53:05,922.922 INFO    ] 200
[2026-08-31 12:53:05,925.925 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:53:05,978.978 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:53:05,981.981 INFO    ] No update needed
[2026-08-31 12:53:05,984.984 INFO    ] Checking for camera pi updates...
[2026-08-31 12:53:06,019.019 INFO    ] 200
[2026-08-31 12:53:06,022.022 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:53:06,065.065 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:53:06,167.167 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:53:06,170.170 INFO    ] No camera update needed
[2026-08-31 12:53:06,173.173 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:53:06,176.176 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:53:06,182.182 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:53:06,188.188 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:53:08,229.229 INFO    ] ================================================
[2026-08-31 12:53:08,245.245 INFO    ] Launching Daemon at Mon Aug 31 12:53:08 IST 2026
[2026-08-31 12:53:08,255.255 INFO    ] ================================================
[2026-08-31 12:53:08,838.838 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:53:08
[2026-08-31 12:53:09,455.455 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:53:09,765.765 INFO    ] Initializing speech engine...
[2026-08-31 12:53:09,784.784 INFO    ] 2026-08-31 12:53:09
[2026-08-31 12:53:10,049.049 INFO    ] 2026-08-31 12:53:10
[2026-08-31 12:53:10,092.092 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:53:25,324.324 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:53:25,327.327 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:53:30,559.559 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:53:30,562.562 INFO    ] time= 31/08/2026 12:53:30
[2026-08-31 12:53:30,564.564 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:53:30,566.566 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:53:30,700.700 INFO    ] No existing commands found in stream
[2026-08-31 12:53:35,709.709 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:53:35,712.712 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-08-31 12:53:37,119.119 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 12:53:37,121.121 INFO    ] Checking for system updates...
[2026-08-31 12:53:37,158.158 INFO    ] 200
[2026-08-31 12:53:37,161.161 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:53:37,221.221 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:53:37,224.224 INFO    ] No update needed
[2026-08-31 12:53:37,227.227 INFO    ] Checking for camera pi updates...
[2026-08-31 12:53:37,263.263 INFO    ] 200
[2026-08-31 12:53:37,266.266 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:53:37,308.308 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:53:37,394.394 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:53:37,397.397 INFO    ] No camera update needed
[2026-08-31 12:53:37,400.400 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:53:37,403.403 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:53:37,409.409 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:53:37,416.416 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:53:39,458.458 INFO    ] ================================================
[2026-08-31 12:53:39,473.473 INFO    ] Launching Daemon at Mon Aug 31 12:53:39 IST 2026
[2026-08-31 12:53:39,484.484 INFO    ] ================================================
[2026-08-31 12:53:40,140.140 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:53:40
[2026-08-31 12:53:40,818.818 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:53:41,125.125 INFO    ] Initializing speech engine...
[2026-08-31 12:53:41,133.133 INFO    ] 2026-08-31 12:53:41
[2026-08-31 12:53:41,413.413 INFO    ] 2026-08-31 12:53:41
[2026-08-31 12:53:41,470.470 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:53:41,762.762 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:53:41,767.767 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:53:41,967.967 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:53:41,986.986 INFO    ] time= 31/08/2026 12:53:41
[2026-08-31 12:53:41,993.993 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:53:42,023.023 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:53:42,132.132 INFO    ] No existing commands found in stream
[2026-08-31 12:53:47,150.150 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:53:47,153.153 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-08-31 12:53:49,893.893 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 12:53:49,896.896 INFO    ] Checking for system updates...
[2026-08-31 12:53:49,937.937 INFO    ] 200
[2026-08-31 12:53:49,940.940 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:53:49,999.999 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:53:50,001.001 INFO    ] No update needed
[2026-08-31 12:53:50,004.004 INFO    ] Checking for camera pi updates...
[2026-08-31 12:53:50,042.042 INFO    ] 200
[2026-08-31 12:53:50,044.044 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:53:50,084.084 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:53:50,262.262 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:53:50,264.264 INFO    ] No camera update needed
[2026-08-31 12:53:50,266.266 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:53:50,269.269 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:53:50,274.274 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:53:50,279.279 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:53:52,320.320 INFO    ] ================================================
[2026-08-31 12:53:52,335.335 INFO    ] Launching Daemon at Mon Aug 31 12:53:52 IST 2026
[2026-08-31 12:53:52,346.346 INFO    ] ================================================
[2026-08-31 12:53:52,917.917 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:53:52
[2026-08-31 12:53:53,502.502 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:53:53,758.758 INFO    ] Initializing speech engine...
[2026-08-31 12:53:53,781.781 INFO    ] 2026-08-31 12:53:53
[2026-08-31 12:53:54,031.031 INFO    ] 2026-08-31 12:53:54
[2026-08-31 12:53:54,066.066 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:53:54,262.262 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:53:54,318.318 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:53:54,535.535 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:53:54,583.583 INFO    ] time= 31/08/2026 12:53:54
[2026-08-31 12:53:54,589.589 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:53:54,607.607 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:53:54,725.725 INFO    ] No existing commands found in stream
[2026-08-31 12:53:59,749.749 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:53:59,752.752 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-08-31 12:54:03,580.580 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 12:54:03,584.584 INFO    ] Checking for system updates...
[2026-08-31 12:54:03,636.636 INFO    ] 200
[2026-08-31 12:54:03,639.639 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:54:03,692.692 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:54:03,694.694 INFO    ] No update needed
[2026-08-31 12:54:03,697.697 INFO    ] Checking for camera pi updates...
[2026-08-31 12:54:03,730.730 INFO    ] 200
[2026-08-31 12:54:03,732.732 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:54:03,773.773 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:54:03,855.855 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:54:03,857.857 INFO    ] No camera update needed
[2026-08-31 12:54:03,860.860 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:54:03,862.862 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:54:03,867.867 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:54:03,872.872 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:54:05,913.913 INFO    ] ================================================
[2026-08-31 12:54:05,928.928 INFO    ] Launching Daemon at Mon Aug 31 12:54:05 IST 2026
[2026-08-31 12:54:05,939.939 INFO    ] ================================================
[2026-08-31 12:54:06,513.513 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:54:06
[2026-08-31 12:54:07,135.135 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:54:07,388.388 INFO    ] Initializing speech engine...
[2026-08-31 12:54:07,395.395 INFO    ] 2026-08-31 12:54:07
[2026-08-31 12:54:07,698.698 INFO    ] 2026-08-31 12:54:07
[2026-08-31 12:54:07,732.732 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:54:08,002.002 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:54:08,021.021 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:54:08,239.239 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:54:08,299.299 INFO    ] time= 31/08/2026 12:54:08
[2026-08-31 12:54:08,324.324 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:54:08,330.330 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:54:08,459.459 INFO    ] No existing commands found in stream
[2026-08-31 12:54:13,489.489 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:54:13,492.492 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-08-31 12:54:15,036.036 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 12:54:15,038.038 INFO    ] Checking for system updates...
[2026-08-31 12:54:15,073.073 INFO    ] 200
[2026-08-31 12:54:15,076.076 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:54:15,130.130 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:54:15,132.132 INFO    ] No update needed
[2026-08-31 12:54:15,135.135 INFO    ] Checking for camera pi updates...
[2026-08-31 12:54:15,168.168 INFO    ] 200
[2026-08-31 12:54:15,171.171 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:54:15,212.212 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:54:15,289.289 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:54:15,291.291 INFO    ] No camera update needed
[2026-08-31 12:54:15,293.293 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:54:15,295.295 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:54:15,301.301 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:54:15,306.306 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:54:17,345.345 INFO    ] ================================================
[2026-08-31 12:54:17,360.360 INFO    ] Launching Daemon at Mon Aug 31 12:54:17 IST 2026
[2026-08-31 12:54:17,371.371 INFO    ] ================================================
[2026-08-31 12:54:17,938.938 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:54:17
[2026-08-31 12:54:18,522.522 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:54:18,795.795 INFO    ] Initializing speech engine...
[2026-08-31 12:54:18,804.804 INFO    ] 2026-08-31 12:54:18
[2026-08-31 12:54:19,052.052 INFO    ] 2026-08-31 12:54:19
[2026-08-31 12:54:19,086.086 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:54:19,339.339 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:54:19,349.349 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:54:19,604.604 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:54:19,610.610 INFO    ] time= 31/08/2026 12:54:19
[2026-08-31 12:54:19,628.628 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:54:19,650.650 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:54:19,760.760 INFO    ] No existing commands found in stream
[2026-08-31 12:54:24,773.773 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:54:24,775.775 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-08-31 12:54:28,593.593 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 12:54:28,595.595 INFO    ] Checking for system updates...
[2026-08-31 12:54:28,634.634 INFO    ] 200
[2026-08-31 12:54:28,636.636 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:54:28,695.695 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:54:28,697.697 INFO    ] No update needed
[2026-08-31 12:54:28,700.700 INFO    ] Checking for camera pi updates...
[2026-08-31 12:54:28,737.737 INFO    ] 200
[2026-08-31 12:54:28,740.740 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:54:28,788.788 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:54:28,849.849 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:54:28,851.851 INFO    ] No camera update needed
[2026-08-31 12:54:28,853.853 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:54:28,856.856 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:54:28,861.861 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:54:28,866.866 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:54:30,909.909 INFO    ] ================================================
[2026-08-31 12:54:30,924.924 INFO    ] Launching Daemon at Mon Aug 31 12:54:30 IST 2026
[2026-08-31 12:54:30,934.934 INFO    ] ================================================
[2026-08-31 12:54:31,583.583 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:54:31
[2026-08-31 12:54:32,282.282 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:54:32,614.614 INFO    ] Initializing speech engine...
[2026-08-31 12:54:32,626.626 INFO    ] 2026-08-31 12:54:32
[2026-08-31 12:54:32,950.950 INFO    ] 2026-08-31 12:54:32
[2026-08-31 12:54:33,043.043 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:54:33,240.240 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:54:33,242.242 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:54:33,436.436 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:54:33,482.482 INFO    ] time= 31/08/2026 12:54:33
[2026-08-31 12:54:33,500.500 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:54:33,510.510 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:54:33,634.634 INFO    ] No existing commands found in stream
[2026-08-31 12:54:38,650.650 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:54:38,653.653 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-08-31 12:54:42,357.357 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 12:54:42,361.361 INFO    ] Checking for system updates...
[2026-08-31 12:54:42,407.407 INFO    ] 200
[2026-08-31 12:54:42,411.411 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:54:42,486.486 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:54:42,489.489 INFO    ] No update needed
[2026-08-31 12:54:42,492.492 INFO    ] Checking for camera pi updates...
[2026-08-31 12:54:42,525.525 INFO    ] 200
[2026-08-31 12:54:42,528.528 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:54:42,570.570 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:54:42,652.652 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:54:42,654.654 INFO    ] No camera update needed
[2026-08-31 12:54:42,657.657 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:54:42,659.659 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:54:42,664.664 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:54:42,669.669 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:54:44,708.708 INFO    ] ================================================
[2026-08-31 12:54:44,723.723 INFO    ] Launching Daemon at Mon Aug 31 12:54:44 IST 2026
[2026-08-31 12:54:44,734.734 INFO    ] ================================================
[2026-08-31 12:54:45,313.313 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:54:45
[2026-08-31 12:54:45,910.910 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:54:46,171.171 INFO    ] Initializing speech engine...
[2026-08-31 12:54:46,178.178 INFO    ] 2026-08-31 12:54:46
[2026-08-31 12:54:46,472.472 INFO    ] 2026-08-31 12:54:46
[2026-08-31 12:54:46,512.512 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:54:46,737.737 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:54:46,786.786 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:54:47,149.149 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:54:47,158.158 INFO    ] time= 31/08/2026 12:54:47
[2026-08-31 12:54:47,166.166 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:54:47,201.201 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:54:47,538.538 INFO    ] No existing commands found in stream
[2026-08-31 12:54:52,563.563 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:54:52,566.566 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-08-31 12:54:55,912.912 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 12:54:55,915.915 INFO    ] Checking for system updates...
[2026-08-31 12:54:55,951.951 INFO    ] 200
[2026-08-31 12:54:55,954.954 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:54:56,019.019 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:54:56,022.022 INFO    ] No update needed
[2026-08-31 12:54:56,024.024 INFO    ] Checking for camera pi updates...
[2026-08-31 12:54:56,062.062 INFO    ] 200
[2026-08-31 12:54:56,064.064 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:54:56,109.109 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:54:56,193.193 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:54:56,195.195 INFO    ] No camera update needed
[2026-08-31 12:54:56,198.198 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:54:56,200.200 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:54:56,206.206 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:54:56,211.211 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:54:58,250.250 INFO    ] ================================================
[2026-08-31 12:54:58,265.265 INFO    ] Launching Daemon at Mon Aug 31 12:54:58 IST 2026
[2026-08-31 12:54:58,276.276 INFO    ] ================================================
[2026-08-31 12:54:58,844.844 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:54:58
[2026-08-31 12:54:59,441.441 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:54:59,708.708 INFO    ] Initializing speech engine...
[2026-08-31 12:54:59,717.717 INFO    ] 2026-08-31 12:54:59
[2026-08-31 12:54:59,963.963 INFO    ] 2026-08-31 12:54:59
[2026-08-31 12:54:59,998.998 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:55:00,248.248 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:55:00,258.258 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:55:00,391.391 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:55:00,445.445 INFO    ] time= 31/08/2026 12:55:00
[2026-08-31 12:55:00,494.494 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:55:00,524.524 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:55:00,670.670 INFO    ] No existing commands found in stream
[2026-08-31 12:55:05,688.688 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:55:05,691.691 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-08-31 12:55:07,517.517 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 12:55:07,520.520 INFO    ] Checking for system updates...
[2026-08-31 12:55:07,555.555 INFO    ] 200
[2026-08-31 12:55:07,557.557 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:55:07,609.609 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:55:07,611.611 INFO    ] No update needed
[2026-08-31 12:55:07,613.613 INFO    ] Checking for camera pi updates...
[2026-08-31 12:55:07,652.652 INFO    ] 200
[2026-08-31 12:55:07,654.654 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:55:07,695.695 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:55:07,779.779 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:55:07,781.781 INFO    ] No camera update needed
[2026-08-31 12:55:07,783.783 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:55:07,786.786 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:55:07,791.791 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:55:07,796.796 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:55:09,838.838 INFO    ] ================================================
[2026-08-31 12:55:09,853.853 INFO    ] Launching Daemon at Mon Aug 31 12:55:09 IST 2026
[2026-08-31 12:55:09,863.863 INFO    ] ================================================
[2026-08-31 12:55:10,504.504 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:55:10
[2026-08-31 12:55:11,163.163 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:55:11,468.468 INFO    ] Initializing speech engine...
[2026-08-31 12:55:11,479.479 INFO    ] 2026-08-31 12:55:11
[2026-08-31 12:55:11,790.790 INFO    ] 2026-08-31 12:55:11
[2026-08-31 12:55:11,876.876 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:55:12,084.084 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:55:12,093.093 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:55:12,292.292 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:55:12,312.312 INFO    ] time= 31/08/2026 12:55:12
[2026-08-31 12:55:12,341.341 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:55:12,349.349 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:55:12,471.471 INFO    ] No existing commands found in stream
[2026-08-31 12:55:17,502.502 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:55:17,505.505 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-08-31 12:55:19,855.855 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 12:55:19,858.858 INFO    ] Checking for system updates...
[2026-08-31 12:55:19,895.895 INFO    ] 200
[2026-08-31 12:55:19,898.898 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:55:19,951.951 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:55:19,953.953 INFO    ] No update needed
[2026-08-31 12:55:19,956.956 INFO    ] Checking for camera pi updates...
[2026-08-31 12:55:19,993.993 INFO    ] 200
[2026-08-31 12:55:19,995.995 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:55:20,040.040 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:55:20,129.129 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:55:20,131.131 INFO    ] No camera update needed
[2026-08-31 12:55:20,133.133 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:55:20,136.136 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:55:20,141.141 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:55:20,146.146 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:55:22,185.185 INFO    ] ================================================
[2026-08-31 12:55:22,201.201 INFO    ] Launching Daemon at Mon Aug 31 12:55:22 IST 2026
[2026-08-31 12:55:22,211.211 INFO    ] ================================================
[2026-08-31 12:55:22,783.783 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:55:22
[2026-08-31 12:55:23,365.365 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:55:23,633.633 INFO    ] Initializing speech engine...
[2026-08-31 12:55:23,642.642 INFO    ] 2026-08-31 12:55:23
[2026-08-31 12:55:23,887.887 INFO    ] 2026-08-31 12:55:23
[2026-08-31 12:55:23,923.923 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:55:24,118.118 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:55:24,168.168 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:55:24,327.327 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:55:24,377.377 INFO    ] time= 31/08/2026 12:55:24
[2026-08-31 12:55:24,436.436 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:55:24,461.461 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:55:24,611.611 INFO    ] No existing commands found in stream
[2026-08-31 12:55:29,636.636 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:55:29,639.639 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-08-31 12:55:31,100.100 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 12:55:31,102.102 INFO    ] Checking for system updates...
[2026-08-31 12:55:31,141.141 INFO    ] 200
[2026-08-31 12:55:31,143.143 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:55:31,196.196 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:55:31,199.199 INFO    ] No update needed
[2026-08-31 12:55:31,201.201 INFO    ] Checking for camera pi updates...
[2026-08-31 12:55:31,235.235 INFO    ] 200
[2026-08-31 12:55:31,238.238 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:55:31,282.282 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:55:31,362.362 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:55:31,365.365 INFO    ] No camera update needed
[2026-08-31 12:55:31,367.367 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:55:31,370.370 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:55:31,375.375 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:55:31,380.380 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:55:33,422.422 INFO    ] ================================================
[2026-08-31 12:55:33,437.437 INFO    ] Launching Daemon at Mon Aug 31 12:55:33 IST 2026
[2026-08-31 12:55:33,448.448 INFO    ] ================================================
[2026-08-31 12:55:34,015.015 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:55:34
[2026-08-31 12:55:34,600.600 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:55:34,850.850 INFO    ] Initializing speech engine...
[2026-08-31 12:55:34,872.872 INFO    ] 2026-08-31 12:55:34
[2026-08-31 12:55:35,127.127 INFO    ] 2026-08-31 12:55:35
[2026-08-31 12:55:35,161.161 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:55:35,424.424 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:55:35,429.429 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:55:35,646.646 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:55:35,693.693 INFO    ] time= 31/08/2026 12:55:35
[2026-08-31 12:55:35,699.699 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:55:35,718.718 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:55:35,836.836 INFO    ] No existing commands found in stream
[2026-08-31 12:55:40,861.861 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:55:40,864.864 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-08-31 12:55:42,379.379 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 12:55:42,381.381 INFO    ] Checking for system updates...
[2026-08-31 12:55:42,416.416 INFO    ] 200
[2026-08-31 12:55:42,419.419 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:55:42,470.470 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:55:42,473.473 INFO    ] No update needed
[2026-08-31 12:55:42,475.475 INFO    ] Checking for camera pi updates...
[2026-08-31 12:55:42,512.512 INFO    ] 200
[2026-08-31 12:55:42,514.514 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:55:42,555.555 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:55:42,636.636 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:55:42,639.639 INFO    ] No camera update needed
[2026-08-31 12:55:42,641.641 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:55:42,643.643 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:55:42,649.649 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:55:42,653.653 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:55:44,694.694 INFO    ] ================================================
[2026-08-31 12:55:44,709.709 INFO    ] Launching Daemon at Mon Aug 31 12:55:44 IST 2026
[2026-08-31 12:55:44,720.720 INFO    ] ================================================
[2026-08-31 12:55:45,284.284 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:55:45
[2026-08-31 12:55:45,867.867 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:55:46,119.119 INFO    ] Initializing speech engine...
[2026-08-31 12:55:46,128.128 INFO    ] 2026-08-31 12:55:46
[2026-08-31 12:55:46,417.417 INFO    ] 2026-08-31 12:55:46
[2026-08-31 12:55:46,454.454 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:55:46,649.649 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:55:46,662.662 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:55:46,822.822 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:55:46,830.830 INFO    ] time= 31/08/2026 12:55:46
[2026-08-31 12:55:46,839.839 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:55:46,880.880 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:55:47,019.019 INFO    ] No existing commands found in stream
[2026-08-31 12:55:52,049.049 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:55:52,052.052 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-08-31 12:55:53,953.953 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 12:55:53,956.956 INFO    ] Checking for system updates...
[2026-08-31 12:55:53,995.995 INFO    ] 200
[2026-08-31 12:55:53,997.997 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:55:54,050.050 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:55:54,052.052 INFO    ] No update needed
[2026-08-31 12:55:54,055.055 INFO    ] Checking for camera pi updates...
[2026-08-31 12:55:54,091.091 INFO    ] 200
[2026-08-31 12:55:54,095.095 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:55:54,151.151 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:55:54,340.340 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:55:54,342.342 INFO    ] No camera update needed
[2026-08-31 12:55:54,344.344 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:55:54,346.346 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:55:54,352.352 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:55:54,357.357 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:55:56,398.398 INFO    ] ================================================
[2026-08-31 12:55:56,413.413 INFO    ] Launching Daemon at Mon Aug 31 12:55:56 IST 2026
[2026-08-31 12:55:56,423.423 INFO    ] ================================================
[2026-08-31 12:55:57,067.067 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:55:57
[2026-08-31 12:55:57,728.728 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:55:58,026.026 INFO    ] Initializing speech engine...
[2026-08-31 12:55:58,034.034 INFO    ] 2026-08-31 12:55:58
[2026-08-31 12:55:58,306.306 INFO    ] 2026-08-31 12:55:58
[2026-08-31 12:55:58,362.362 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:55:58,589.589 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:55:58,611.611 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:55:58,841.841 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:55:58,854.854 INFO    ] time= 31/08/2026 12:55:58
[2026-08-31 12:55:58,873.873 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:55:58,903.903 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:55:59,010.010 INFO    ] No existing commands found in stream
[2026-08-31 12:56:04,045.045 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:56:04,048.048 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-08-31 12:56:05,143.143 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 12:56:05,146.146 INFO    ] Checking for system updates...
[2026-08-31 12:56:05,183.183 INFO    ] 200
[2026-08-31 12:56:05,185.185 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:56:05,240.240 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:56:05,242.242 INFO    ] No update needed
[2026-08-31 12:56:05,245.245 INFO    ] Checking for camera pi updates...
[2026-08-31 12:56:05,282.282 INFO    ] 200
[2026-08-31 12:56:05,285.285 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:56:05,329.329 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:56:05,430.430 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:56:05,433.433 INFO    ] No camera update needed
[2026-08-31 12:56:05,435.435 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:56:05,438.438 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:56:05,444.444 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:56:05,450.450 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:56:07,489.489 INFO    ] ================================================
[2026-08-31 12:56:07,504.504 INFO    ] Launching Daemon at Mon Aug 31 12:56:07 IST 2026
[2026-08-31 12:56:07,515.515 INFO    ] ================================================
[2026-08-31 12:56:08,156.156 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:56:08
[2026-08-31 12:56:08,819.819 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:56:09,118.118 INFO    ] Initializing speech engine...
[2026-08-31 12:56:09,129.129 INFO    ] 2026-08-31 12:56:09
[2026-08-31 12:56:09,403.403 INFO    ] 2026-08-31 12:56:09
[2026-08-31 12:56:09,467.467 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:56:09,695.695 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:56:09,701.701 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:56:09,939.939 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:56:09,959.959 INFO    ] time= 31/08/2026 12:56:09
[2026-08-31 12:56:09,966.966 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:56:09,987.987 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:56:10,117.117 INFO    ] No existing commands found in stream
[2026-08-31 12:56:15,151.151 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:56:15,154.154 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-08-31 12:56:19,565.565 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 12:56:19,568.568 INFO    ] Checking for system updates...
[2026-08-31 12:56:19,605.605 INFO    ] 200
[2026-08-31 12:56:19,608.608 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:56:19,662.662 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:56:19,665.665 INFO    ] No update needed
[2026-08-31 12:56:19,668.668 INFO    ] Checking for camera pi updates...
[2026-08-31 12:56:19,702.702 INFO    ] 200
[2026-08-31 12:56:19,704.704 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:56:19,745.745 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:56:19,839.839 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:56:19,842.842 INFO    ] No camera update needed
[2026-08-31 12:56:19,844.844 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:56:19,846.846 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:56:19,852.852 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:56:19,857.857 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:56:21,896.896 INFO    ] ================================================
[2026-08-31 12:56:21,910.910 INFO    ] Launching Daemon at Mon Aug 31 12:56:21 IST 2026
[2026-08-31 12:56:21,921.921 INFO    ] ================================================
[2026-08-31 12:56:22,558.558 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:56:22
[2026-08-31 12:56:23,212.212 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:56:23,510.510 INFO    ] Initializing speech engine...
[2026-08-31 12:56:23,519.519 INFO    ] 2026-08-31 12:56:23
[2026-08-31 12:56:23,789.789 INFO    ] 2026-08-31 12:56:23
[2026-08-31 12:56:23,848.848 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:56:24,079.079 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:56:24,084.084 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:56:24,218.218 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:56:24,294.294 INFO    ] time= 31/08/2026 12:56:24
[2026-08-31 12:56:24,345.345 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:56:24,352.352 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:56:24,506.506 INFO    ] No existing commands found in stream
[2026-08-31 12:56:29,538.538 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:56:29,541.541 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-08-31 12:56:30,918.918 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 12:56:30,921.921 INFO    ] Checking for system updates...
[2026-08-31 12:56:30,957.957 INFO    ] 200
[2026-08-31 12:56:30,960.960 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:56:31,019.019 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:56:31,021.021 INFO    ] No update needed
[2026-08-31 12:56:31,023.023 INFO    ] Checking for camera pi updates...
[2026-08-31 12:56:31,058.058 INFO    ] 200
[2026-08-31 12:56:31,061.061 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:56:31,105.105 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:56:31,185.185 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:56:31,187.187 INFO    ] No camera update needed
[2026-08-31 12:56:31,190.190 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:56:31,192.192 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:56:31,198.198 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:56:31,203.203 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:56:33,242.242 INFO    ] ================================================
[2026-08-31 12:56:33,256.256 INFO    ] Launching Daemon at Mon Aug 31 12:56:33 IST 2026
[2026-08-31 12:56:33,267.267 INFO    ] ================================================
[2026-08-31 12:56:33,836.836 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:56:33
[2026-08-31 12:56:34,447.447 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:56:34,741.741 INFO    ] Initializing speech engine...
[2026-08-31 12:56:34,749.749 INFO    ] 2026-08-31 12:56:34
[2026-08-31 12:56:35,031.031 INFO    ] 2026-08-31 12:56:35
[2026-08-31 12:56:35,075.075 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:56:35,320.320 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:56:35,327.327 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:56:35,512.512 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:56:35,560.560 INFO    ] time= 31/08/2026 12:56:35
[2026-08-31 12:56:35,567.567 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:56:35,586.586 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:56:35,716.716 INFO    ] No existing commands found in stream
[2026-08-31 12:56:40,745.745 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:56:40,749.749 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-08-31 12:56:42,023.023 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 12:56:42,026.026 INFO    ] Checking for system updates...
[2026-08-31 12:56:42,067.067 INFO    ] 200
[2026-08-31 12:56:42,070.070 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:56:42,124.124 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:56:42,127.127 INFO    ] No update needed
[2026-08-31 12:56:42,130.130 INFO    ] Checking for camera pi updates...
[2026-08-31 12:56:42,165.165 INFO    ] 200
[2026-08-31 12:56:42,167.167 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:56:42,212.212 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:56:42,279.279 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:56:42,282.282 INFO    ] No camera update needed
[2026-08-31 12:56:42,284.284 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:56:42,287.287 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:56:42,292.292 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:56:42,297.297 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:56:44,341.341 INFO    ] ================================================
[2026-08-31 12:56:44,356.356 INFO    ] Launching Daemon at Mon Aug 31 12:56:44 IST 2026
[2026-08-31 12:56:44,367.367 INFO    ] ================================================
[2026-08-31 12:56:44,932.932 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:56:44
[2026-08-31 12:56:45,516.516 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:56:45,798.798 INFO    ] Initializing speech engine...
[2026-08-31 12:56:45,804.804 INFO    ] 2026-08-31 12:56:45
[2026-08-31 12:56:46,065.065 INFO    ] 2026-08-31 12:56:46
[2026-08-31 12:56:46,102.102 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:56:46,386.386 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:56:46,396.396 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:56:46,543.543 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:56:46,570.570 INFO    ] time= 31/08/2026 12:56:46
[2026-08-31 12:56:46,619.619 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:56:46,669.669 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:56:46,840.840 INFO    ] No existing commands found in stream
[2026-08-31 12:56:51,866.866 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:56:51,869.869 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-08-31 12:56:55,006.006 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 12:56:55,009.009 INFO    ] Checking for system updates...
[2026-08-31 12:56:55,045.045 INFO    ] 200
[2026-08-31 12:56:55,048.048 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:56:55,107.107 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:56:55,110.110 INFO    ] No update needed
[2026-08-31 12:56:55,113.113 INFO    ] Checking for camera pi updates...
[2026-08-31 12:56:55,148.148 INFO    ] 200
[2026-08-31 12:56:55,151.151 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:56:55,192.192 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:56:55,271.271 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:56:55,274.274 INFO    ] No camera update needed
[2026-08-31 12:56:55,277.277 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:56:55,279.279 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:56:55,285.285 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:56:55,291.291 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:56:57,332.332 INFO    ] ================================================
[2026-08-31 12:56:57,347.347 INFO    ] Launching Daemon at Mon Aug 31 12:56:57 IST 2026
[2026-08-31 12:56:57,358.358 INFO    ] ================================================
[2026-08-31 12:56:57,922.922 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:56:57
[2026-08-31 12:56:58,503.503 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:56:58,751.751 INFO    ] Initializing speech engine...
[2026-08-31 12:56:58,759.759 INFO    ] 2026-08-31 12:56:58
[2026-08-31 12:56:59,047.047 INFO    ] 2026-08-31 12:56:59
[2026-08-31 12:56:59,071.071 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:56:59,299.299 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:56:59,349.349 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:56:59,524.524 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:56:59,531.531 INFO    ] time= 31/08/2026 12:56:59
[2026-08-31 12:56:59,569.569 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:56:59,619.619 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:56:59,798.798 INFO    ] No existing commands found in stream
[2026-08-31 12:57:04,821.821 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:57:04,823.823 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-08-31 12:57:08,218.218 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 12:57:08,220.220 INFO    ] Checking for system updates...
[2026-08-31 12:57:08,259.259 INFO    ] 200
[2026-08-31 12:57:08,261.261 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:57:08,313.313 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:57:08,315.315 INFO    ] No update needed
[2026-08-31 12:57:08,317.317 INFO    ] Checking for camera pi updates...
[2026-08-31 12:57:08,355.355 INFO    ] 200
[2026-08-31 12:57:08,358.358 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:57:08,398.398 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:57:08,487.487 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:57:08,490.490 INFO    ] No camera update needed
[2026-08-31 12:57:08,492.492 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:57:08,494.494 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:57:08,499.499 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:57:08,504.504 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:57:10,545.545 INFO    ] ================================================
[2026-08-31 12:57:10,560.560 INFO    ] Launching Daemon at Mon Aug 31 12:57:10 IST 2026
[2026-08-31 12:57:10,570.570 INFO    ] ================================================
[2026-08-31 12:57:11,136.136 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:57:11
[2026-08-31 12:57:11,720.720 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:57:11,976.976 INFO    ] Initializing speech engine...
[2026-08-31 12:57:11,982.982 INFO    ] 2026-08-31 12:57:11
[2026-08-31 12:57:12,269.269 INFO    ] 2026-08-31 12:57:12
[2026-08-31 12:57:12,305.305 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:57:12,553.553 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:57:12,570.570 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:57:12,785.785 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:57:12,844.844 INFO    ] time= 31/08/2026 12:57:12
[2026-08-31 12:57:12,851.851 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:57:12,869.869 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:57:13,004.004 INFO    ] No existing commands found in stream
[2026-08-31 12:57:18,022.022 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:57:18,025.025 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-08-31 12:57:22,456.456 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 12:57:22,459.459 INFO    ] Checking for system updates...
[2026-08-31 12:57:22,497.497 INFO    ] 200
[2026-08-31 12:57:22,500.500 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:57:22,553.553 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:57:22,555.555 INFO    ] No update needed
[2026-08-31 12:57:22,558.558 INFO    ] Checking for camera pi updates...
[2026-08-31 12:57:22,592.592 INFO    ] 200
[2026-08-31 12:57:22,594.594 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:57:22,638.638 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:57:22,740.740 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:57:22,743.743 INFO    ] No camera update needed
[2026-08-31 12:57:22,746.746 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:57:22,749.749 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:57:22,755.755 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:57:22,760.760 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:57:24,799.799 INFO    ] ================================================
[2026-08-31 12:57:24,815.815 INFO    ] Launching Daemon at Mon Aug 31 12:57:24 IST 2026
[2026-08-31 12:57:24,827.827 INFO    ] ================================================
[2026-08-31 12:57:25,396.396 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:57:25
[2026-08-31 12:57:25,984.984 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:57:26,252.252 INFO    ] Initializing speech engine...
[2026-08-31 12:57:26,268.268 INFO    ] 2026-08-31 12:57:26
[2026-08-31 12:57:26,536.536 INFO    ] 2026-08-31 12:57:26
[2026-08-31 12:57:26,572.572 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:57:26,766.766 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:57:26,781.781 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:57:26,937.937 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:57:26,949.949 INFO    ] time= 31/08/2026 12:57:26
[2026-08-31 12:57:26,953.953 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:57:26,959.959 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:57:27,070.070 INFO    ] No existing commands found in stream
[2026-08-31 12:57:32,095.095 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:57:32,099.099 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-08-31 12:57:34,118.118 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 12:57:34,120.120 INFO    ] Checking for system updates...
[2026-08-31 12:57:34,157.157 INFO    ] 200
[2026-08-31 12:57:34,160.160 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:57:34,213.213 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:57:34,215.215 INFO    ] No update needed
[2026-08-31 12:57:34,218.218 INFO    ] Checking for camera pi updates...
[2026-08-31 12:57:34,255.255 INFO    ] 200
[2026-08-31 12:57:34,258.258 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:57:34,302.302 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:57:34,391.391 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:57:34,393.393 INFO    ] No camera update needed
[2026-08-31 12:57:34,396.396 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:57:34,398.398 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:57:34,405.405 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:57:34,410.410 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:57:36,451.451 INFO    ] ================================================
[2026-08-31 12:57:36,467.467 INFO    ] Launching Daemon at Mon Aug 31 12:57:36 IST 2026
[2026-08-31 12:57:36,478.478 INFO    ] ================================================
[2026-08-31 12:57:37,115.115 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:57:37
[2026-08-31 12:57:37,772.772 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:57:38,072.072 INFO    ] Initializing speech engine...
[2026-08-31 12:57:38,080.080 INFO    ] 2026-08-31 12:57:38
[2026-08-31 12:57:38,356.356 INFO    ] 2026-08-31 12:57:38
[2026-08-31 12:57:38,409.409 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:57:38,643.643 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:57:38,649.649 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:57:38,862.862 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:57:38,912.912 INFO    ] time= 31/08/2026 12:57:38
[2026-08-31 12:57:38,931.931 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:57:38,961.961 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:57:39,073.073 INFO    ] No existing commands found in stream
[2026-08-31 12:57:44,100.100 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:57:44,103.103 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-08-31 12:57:48,220.220 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 12:57:48,223.223 INFO    ] Checking for system updates...
[2026-08-31 12:57:48,260.260 INFO    ] 200
[2026-08-31 12:57:48,263.263 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:57:48,316.316 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:57:48,318.318 INFO    ] No update needed
[2026-08-31 12:57:48,321.321 INFO    ] Checking for camera pi updates...
[2026-08-31 12:57:48,356.356 INFO    ] 200
[2026-08-31 12:57:48,358.358 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:57:48,400.400 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:57:48,487.487 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:57:48,489.489 INFO    ] No camera update needed
[2026-08-31 12:57:48,492.492 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:57:48,494.494 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:57:48,500.500 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:57:48,505.505 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:57:50,544.544 INFO    ] ================================================
[2026-08-31 12:57:50,560.560 INFO    ] Launching Daemon at Mon Aug 31 12:57:50 IST 2026
[2026-08-31 12:57:50,571.571 INFO    ] ================================================
[2026-08-31 12:57:51,137.137 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:57:51
[2026-08-31 12:57:51,719.719 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:57:51,967.967 INFO    ] Initializing speech engine...
[2026-08-31 12:57:51,989.989 INFO    ] 2026-08-31 12:57:51
[2026-08-31 12:57:52,245.245 INFO    ] 2026-08-31 12:57:52
[2026-08-31 12:57:52,288.288 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:57:52,538.538 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:57:52,547.547 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:57:52,771.771 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:57:52,809.809 INFO    ] time= 31/08/2026 12:57:52
[2026-08-31 12:57:52,815.815 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:57:52,835.835 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:57:52,967.967 INFO    ] No existing commands found in stream
[2026-08-31 12:57:57,981.981 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:57:57,984.984 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-08-31 12:58:00,238.238 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 12:58:00,240.240 INFO    ] Checking for system updates...
[2026-08-31 12:58:00,276.276 INFO    ] 200
[2026-08-31 12:58:00,279.279 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:58:00,331.331 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:58:00,333.333 INFO    ] No update needed
[2026-08-31 12:58:00,335.335 INFO    ] Checking for camera pi updates...
[2026-08-31 12:58:00,368.368 INFO    ] 200
[2026-08-31 12:58:00,371.371 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:58:00,411.411 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:58:00,593.593 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:58:00,595.595 INFO    ] No camera update needed
[2026-08-31 12:58:00,597.597 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:58:00,600.600 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:58:00,605.605 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:58:00,610.610 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:58:02,656.656 INFO    ] ================================================
[2026-08-31 12:58:02,674.674 INFO    ] Launching Daemon at Mon Aug 31 12:58:02 IST 2026
[2026-08-31 12:58:02,689.689 INFO    ] ================================================
[2026-08-31 12:58:03,332.332 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:58:03
[2026-08-31 12:58:03,938.938 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:58:04,212.212 INFO    ] Initializing speech engine...
[2026-08-31 12:58:04,217.217 INFO    ] 2026-08-31 12:58:04
[2026-08-31 12:58:04,477.477 INFO    ] 2026-08-31 12:58:04
[2026-08-31 12:58:04,536.536 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:58:04,768.768 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:58:04,774.774 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:58:04,975.975 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:58:05,036.036 INFO    ] time= 31/08/2026 12:58:04
[2026-08-31 12:58:05,043.043 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:58:05,061.061 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:58:05,188.188 INFO    ] No existing commands found in stream
[2026-08-31 12:58:10,205.205 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:58:10,208.208 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-08-31 12:58:13,065.065 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 12:58:13,068.068 INFO    ] Checking for system updates...
[2026-08-31 12:58:13,109.109 INFO    ] 200
[2026-08-31 12:58:13,111.111 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:58:13,170.170 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:58:13,173.173 INFO    ] No update needed
[2026-08-31 12:58:13,175.175 INFO    ] Checking for camera pi updates...
[2026-08-31 12:58:13,208.208 INFO    ] 200
[2026-08-31 12:58:13,211.211 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:58:13,255.255 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:58:13,353.353 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:58:13,355.355 INFO    ] No camera update needed
[2026-08-31 12:58:13,357.357 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:58:13,360.360 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:58:13,365.365 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:58:13,370.370 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:58:15,412.412 INFO    ] ================================================
[2026-08-31 12:58:15,428.428 INFO    ] Launching Daemon at Mon Aug 31 12:58:15 IST 2026
[2026-08-31 12:58:15,439.439 INFO    ] ================================================
[2026-08-31 12:58:16,078.078 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:58:16
[2026-08-31 12:58:16,740.740 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:58:17,041.041 INFO    ] Initializing speech engine...
[2026-08-31 12:58:17,054.054 INFO    ] 2026-08-31 12:58:17
[2026-08-31 12:58:17,334.334 INFO    ] 2026-08-31 12:58:17
[2026-08-31 12:58:17,381.381 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:58:17,633.633 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:58:17,640.640 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:58:17,839.839 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:58:17,881.881 INFO    ] time= 31/08/2026 12:58:17
[2026-08-31 12:58:17,900.900 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:58:17,920.920 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:58:18,036.036 INFO    ] No existing commands found in stream
[2026-08-31 12:58:23,051.051 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:58:23,055.055 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-08-31 12:58:27,525.525 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 12:58:27,528.528 INFO    ] Checking for system updates...
[2026-08-31 12:58:27,564.564 INFO    ] 200
[2026-08-31 12:58:27,566.566 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:58:27,628.628 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:58:27,631.631 INFO    ] No update needed
[2026-08-31 12:58:27,633.633 INFO    ] Checking for camera pi updates...
[2026-08-31 12:58:27,670.670 INFO    ] 200
[2026-08-31 12:58:27,672.672 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:58:27,716.716 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:58:27,773.773 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:58:27,775.775 INFO    ] No camera update needed
[2026-08-31 12:58:27,778.778 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:58:27,780.780 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:58:27,785.785 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:58:27,790.790 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:58:29,830.830 INFO    ] ================================================
[2026-08-31 12:58:29,845.845 INFO    ] Launching Daemon at Mon Aug 31 12:58:29 IST 2026
[2026-08-31 12:58:29,857.857 INFO    ] ================================================
[2026-08-31 12:58:30,421.421 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:58:30
[2026-08-31 12:58:31,004.004 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:58:31,249.249 INFO    ] Initializing speech engine...
[2026-08-31 12:58:31,257.257 INFO    ] 2026-08-31 12:58:31
[2026-08-31 12:58:31,531.531 INFO    ] 2026-08-31 12:58:31
[2026-08-31 12:58:31,566.566 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:58:31,821.821 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:58:31,831.831 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:58:32,049.049 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:58:32,105.105 INFO    ] time= 31/08/2026 12:58:32
[2026-08-31 12:58:32,120.120 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:58:32,144.144 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:58:32,282.282 INFO    ] No existing commands found in stream
[2026-08-31 12:58:37,306.306 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:58:37,309.309 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-08-31 12:58:40,060.060 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 12:58:40,063.063 INFO    ] Checking for system updates...
[2026-08-31 12:58:40,098.098 INFO    ] 200
[2026-08-31 12:58:40,101.101 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:58:40,157.157 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:58:40,160.160 INFO    ] No update needed
[2026-08-31 12:58:40,163.163 INFO    ] Checking for camera pi updates...
[2026-08-31 12:58:40,197.197 INFO    ] 200
[2026-08-31 12:58:40,199.199 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:58:40,239.239 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:58:40,323.323 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:58:40,325.325 INFO    ] No camera update needed
[2026-08-31 12:58:40,328.328 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:58:40,330.330 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:58:40,335.335 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:58:40,340.340 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:58:42,385.385 INFO    ] ================================================
[2026-08-31 12:58:42,400.400 INFO    ] Launching Daemon at Mon Aug 31 12:58:42 IST 2026
[2026-08-31 12:58:42,411.411 INFO    ] ================================================
[2026-08-31 12:58:42,978.978 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:58:42
[2026-08-31 12:58:43,561.561 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:58:43,806.806 INFO    ] Initializing speech engine...
[2026-08-31 12:58:43,814.814 INFO    ] 2026-08-31 12:58:43
[2026-08-31 12:58:44,088.088 INFO    ] 2026-08-31 12:58:44
[2026-08-31 12:58:44,123.123 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:58:44,398.398 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:58:44,409.409 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:58:44,595.595 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:58:44,640.640 INFO    ] time= 31/08/2026 12:58:44
[2026-08-31 12:58:44,689.689 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:58:44,699.699 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:58:44,850.850 INFO    ] No existing commands found in stream
[2026-08-31 12:58:49,869.869 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:58:49,872.872 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-08-31 12:58:52,584.584 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 12:58:52,587.587 INFO    ] Checking for system updates...
[2026-08-31 12:58:52,627.627 INFO    ] 200
[2026-08-31 12:58:52,629.629 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:58:52,689.689 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:58:52,691.691 INFO    ] No update needed
[2026-08-31 12:58:52,693.693 INFO    ] Checking for camera pi updates...
[2026-08-31 12:58:52,731.731 INFO    ] 200
[2026-08-31 12:58:52,733.733 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:58:52,779.779 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:58:52,885.885 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:58:52,888.888 INFO    ] No camera update needed
[2026-08-31 12:58:52,890.890 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:58:52,892.892 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:58:52,898.898 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:58:52,902.902 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:58:54,943.943 INFO    ] ================================================
[2026-08-31 12:58:54,959.959 INFO    ] Launching Daemon at Mon Aug 31 12:58:54 IST 2026
[2026-08-31 12:58:54,970.970 INFO    ] ================================================
[2026-08-31 12:58:55,634.634 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:58:55
[2026-08-31 12:58:56,314.314 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:58:56,631.631 INFO    ] Initializing speech engine...
[2026-08-31 12:58:56,637.637 INFO    ] 2026-08-31 12:58:56
[2026-08-31 12:58:56,947.947 INFO    ] 2026-08-31 12:58:56
[2026-08-31 12:58:57,032.032 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:58:57,244.244 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:58:57,249.249 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:58:57,443.443 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:58:57,450.450 INFO    ] time= 31/08/2026 12:58:57
[2026-08-31 12:58:57,472.472 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:58:57,500.500 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:58:57,638.638 INFO    ] No existing commands found in stream
[2026-08-31 12:59:02,669.669 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:59:02,673.673 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-08-31 12:59:05,541.541 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 12:59:05,543.543 INFO    ] Checking for system updates...
[2026-08-31 12:59:05,583.583 INFO    ] 200
[2026-08-31 12:59:05,586.586 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:59:05,647.647 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:59:05,650.650 INFO    ] No update needed
[2026-08-31 12:59:05,653.653 INFO    ] Checking for camera pi updates...
[2026-08-31 12:59:05,690.690 INFO    ] 200
[2026-08-31 12:59:05,693.693 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:59:05,734.734 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:59:05,839.839 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:59:05,841.841 INFO    ] No camera update needed
[2026-08-31 12:59:05,844.844 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:59:05,847.847 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:59:05,853.853 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:59:05,858.858 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:59:07,899.899 INFO    ] ================================================
[2026-08-31 12:59:07,914.914 INFO    ] Launching Daemon at Mon Aug 31 12:59:07 IST 2026
[2026-08-31 12:59:07,924.924 INFO    ] ================================================
[2026-08-31 12:59:08,505.505 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:59:08
[2026-08-31 12:59:09,106.106 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:59:09,376.376 INFO    ] Initializing speech engine...
[2026-08-31 12:59:09,394.394 INFO    ] 2026-08-31 12:59:09
[2026-08-31 12:59:09,666.666 INFO    ] 2026-08-31 12:59:09
[2026-08-31 12:59:09,702.702 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:59:09,895.895 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:59:09,909.909 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:59:10,072.072 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:59:10,077.077 INFO    ] time= 31/08/2026 12:59:10
[2026-08-31 12:59:10,084.084 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:59:10,106.106 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:59:10,244.244 INFO    ] No existing commands found in stream
[2026-08-31 12:59:15,274.274 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:59:15,276.276 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-08-31 12:59:17,403.403 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 12:59:17,406.406 INFO    ] Checking for system updates...
[2026-08-31 12:59:17,445.445 INFO    ] 200
[2026-08-31 12:59:17,447.447 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:59:17,501.501 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:59:17,503.503 INFO    ] No update needed
[2026-08-31 12:59:17,505.505 INFO    ] Checking for camera pi updates...
[2026-08-31 12:59:17,538.538 INFO    ] 200
[2026-08-31 12:59:17,541.541 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:59:17,586.586 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:59:17,668.668 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:59:17,670.670 INFO    ] No camera update needed
[2026-08-31 12:59:17,673.673 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:59:17,675.675 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:59:17,680.680 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:59:17,685.685 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:59:19,725.725 INFO    ] ================================================
[2026-08-31 12:59:19,740.740 INFO    ] Launching Daemon at Mon Aug 31 12:59:19 IST 2026
[2026-08-31 12:59:19,751.751 INFO    ] ================================================
[2026-08-31 12:59:20,326.326 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:59:20
[2026-08-31 12:59:20,910.910 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:59:21,162.162 INFO    ] Initializing speech engine...
[2026-08-31 12:59:21,171.171 INFO    ] 2026-08-31 12:59:21
[2026-08-31 12:59:21,460.460 INFO    ] 2026-08-31 12:59:21
[2026-08-31 12:59:21,485.485 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:59:21,689.689 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:59:21,695.695 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:59:21,866.866 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:59:21,874.874 INFO    ] time= 31/08/2026 12:59:21
[2026-08-31 12:59:21,879.879 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:59:21,885.885 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:59:21,960.960 INFO    ] No existing commands found in stream
[2026-08-31 12:59:26,975.975 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:59:26,978.978 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-08-31 12:59:30,050.050 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 12:59:30,053.053 INFO    ] Checking for system updates...
[2026-08-31 12:59:30,153.153 INFO    ] 200
[2026-08-31 12:59:30,156.156 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:59:30,213.213 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:59:30,216.216 INFO    ] No update needed
[2026-08-31 12:59:30,218.218 INFO    ] Checking for camera pi updates...
[2026-08-31 12:59:30,255.255 INFO    ] 200
[2026-08-31 12:59:30,257.257 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:59:30,303.303 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:59:30,394.394 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:59:30,396.396 INFO    ] No camera update needed
[2026-08-31 12:59:30,399.399 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:59:30,401.401 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:59:30,406.406 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:59:30,411.411 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:59:32,452.452 INFO    ] ================================================
[2026-08-31 12:59:32,469.469 INFO    ] Launching Daemon at Mon Aug 31 12:59:32 IST 2026
[2026-08-31 12:59:32,480.480 INFO    ] ================================================
[2026-08-31 12:59:33,174.174 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:59:33
[2026-08-31 12:59:33,851.851 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:59:34,153.153 INFO    ] Initializing speech engine...
[2026-08-31 12:59:34,166.166 INFO    ] 2026-08-31 12:59:34
[2026-08-31 12:59:34,476.476 INFO    ] 2026-08-31 12:59:34
[2026-08-31 12:59:34,561.561 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:59:34,776.776 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:59:34,784.784 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:59:34,981.981 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:59:35,002.002 INFO    ] time= 31/08/2026 12:59:34
[2026-08-31 12:59:35,030.030 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:59:35,038.038 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:59:35,160.160 INFO    ] No existing commands found in stream
[2026-08-31 12:59:40,191.191 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:59:40,194.194 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-08-31 12:59:41,298.298 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 12:59:41,301.301 INFO    ] Checking for system updates...
[2026-08-31 12:59:41,337.337 INFO    ] 200
[2026-08-31 12:59:41,339.339 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:59:41,391.391 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:59:41,394.394 INFO    ] No update needed
[2026-08-31 12:59:41,396.396 INFO    ] Checking for camera pi updates...
[2026-08-31 12:59:41,429.429 INFO    ] 200
[2026-08-31 12:59:41,432.432 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:59:41,471.471 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:59:41,535.535 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 12:59:41,538.538 INFO    ] No camera update needed
[2026-08-31 12:59:41,540.540 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:59:41,542.542 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:59:41,548.548 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:59:41,553.553 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:59:43,592.592 INFO    ] ================================================
[2026-08-31 12:59:43,607.607 INFO    ] Launching Daemon at Mon Aug 31 12:59:43 IST 2026
[2026-08-31 12:59:43,618.618 INFO    ] ================================================
[2026-08-31 12:59:44,195.195 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:59:44
[2026-08-31 12:59:44,846.846 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:59:45,145.145 INFO    ] Initializing speech engine...
[2026-08-31 12:59:45,154.154 INFO    ] 2026-08-31 12:59:45
[2026-08-31 12:59:45,415.415 INFO    ] 2026-08-31 12:59:45
[2026-08-31 12:59:45,466.466 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:59:45,690.690 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:59:45,696.696 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:59:45,905.905 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:59:45,952.952 INFO    ] time= 31/08/2026 12:59:45
[2026-08-31 12:59:45,959.959 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:59:45,976.976 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:59:46,109.109 INFO    ] No existing commands found in stream
[2026-08-31 12:59:51,131.131 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 12:59:51,134.134 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-08-31 12:59:55,010.010 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 12:59:55,012.012 INFO    ] Checking for system updates...
[2026-08-31 12:59:55,047.047 INFO    ] 200
[2026-08-31 12:59:55,050.050 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:59:55,107.107 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:59:55,110.110 INFO    ] No update needed
[2026-08-31 12:59:55,112.112 INFO    ] Checking for camera pi updates...
[2026-08-31 12:59:55,153.153 INFO    ] 200
[2026-08-31 12:59:55,155.155 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 12:59:55,195.195 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 12:59:55,278.278 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 12:59:55,281.281 INFO    ] No camera update needed
[2026-08-31 12:59:55,283.283 INFO    ] Script finished. Safe exiting...
[2026-08-31 12:59:55,285.285 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 12:59:55,291.291 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 12:59:55,295.295 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 12:59:57,338.338 INFO    ] ================================================
[2026-08-31 12:59:57,354.354 INFO    ] Launching Daemon at Mon Aug 31 12:59:57 IST 2026
[2026-08-31 12:59:57,364.364 INFO    ] ================================================
[2026-08-31 12:59:57,931.931 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 12:59:57
[2026-08-31 12:59:58,513.513 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 12:59:58,781.781 INFO    ] Initializing speech engine...
[2026-08-31 12:59:58,790.790 INFO    ] 2026-08-31 12:59:58
[2026-08-31 12:59:59,036.036 INFO    ] 2026-08-31 12:59:59
[2026-08-31 12:59:59,071.071 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 12:59:59,327.327 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 12:59:59,331.331 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 12:59:59,536.536 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 12:59:59,590.590 INFO    ] time= 31/08/2026 12:59:59
[2026-08-31 12:59:59,596.596 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 12:59:59,614.614 INFO    ] Checking for existing commands in stream...
[2026-08-31 12:59:59,740.740 INFO    ] No existing commands found in stream
[2026-08-31 13:00:04,750.750 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:00:04,754.754 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-08-31 13:00:08,867.867 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 13:00:08,870.870 INFO    ] Checking for system updates...
[2026-08-31 13:00:08,910.910 INFO    ] 200
[2026-08-31 13:00:08,913.913 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:00:08,964.964 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:00:08,966.966 INFO    ] No update needed
[2026-08-31 13:00:08,969.969 INFO    ] Checking for camera pi updates...
[2026-08-31 13:00:09,005.005 INFO    ] 200
[2026-08-31 13:00:09,008.008 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:00:09,048.048 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:00:09,148.148 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:00:09,151.151 INFO    ] No camera update needed
[2026-08-31 13:00:09,154.154 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:00:09,157.157 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:00:09,164.164 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:00:09,170.170 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:00:11,215.215 INFO    ] ================================================
[2026-08-31 13:00:11,230.230 INFO    ] Launching Daemon at Mon Aug 31 13:00:11 IST 2026
[2026-08-31 13:00:11,241.241 INFO    ] ================================================
[2026-08-31 13:00:11,806.806 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:00:11
[2026-08-31 13:00:12,394.394 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:00:12,664.664 INFO    ] Initializing speech engine...
[2026-08-31 13:00:12,674.674 INFO    ] 2026-08-31 13:00:12
[2026-08-31 13:00:12,924.924 INFO    ] 2026-08-31 13:00:12
[2026-08-31 13:00:12,995.995 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:00:13,203.203 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:00:13,205.205 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:00:13,380.380 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:00:13,451.451 INFO    ] time= 31/08/2026 13:00:13
[2026-08-31 13:00:13,515.515 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:00:13,521.521 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:00:13,639.639 INFO    ] No existing commands found in stream
[2026-08-31 13:00:18,662.662 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:00:18,665.665 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-08-31 13:00:21,103.103 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 13:00:21,106.106 INFO    ] Checking for system updates...
[2026-08-31 13:00:21,144.144 INFO    ] 200
[2026-08-31 13:00:21,147.147 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:00:21,204.204 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:00:21,206.206 INFO    ] No update needed
[2026-08-31 13:00:21,209.209 INFO    ] Checking for camera pi updates...
[2026-08-31 13:00:21,243.243 INFO    ] 200
[2026-08-31 13:00:21,245.245 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:00:21,286.286 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:00:21,381.381 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:00:21,383.383 INFO    ] No camera update needed
[2026-08-31 13:00:21,385.385 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:00:21,388.388 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:00:21,393.393 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:00:21,398.398 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:00:23,438.438 INFO    ] ================================================
[2026-08-31 13:00:23,452.452 INFO    ] Launching Daemon at Mon Aug 31 13:00:23 IST 2026
[2026-08-31 13:00:23,463.463 INFO    ] ================================================
[2026-08-31 13:00:24,083.083 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:00:24
[2026-08-31 13:00:24,706.706 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:00:24,961.961 INFO    ] Initializing speech engine...
[2026-08-31 13:00:24,974.974 INFO    ] 2026-08-31 13:00:24
[2026-08-31 13:00:25,254.254 INFO    ] 2026-08-31 13:00:25
[2026-08-31 13:00:25,290.290 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:00:25,482.482 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:00:25,496.496 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:00:25,655.655 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:00:25,661.661 INFO    ] time= 31/08/2026 13:00:25
[2026-08-31 13:00:25,667.667 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:00:25,672.672 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:00:25,805.805 INFO    ] No existing commands found in stream
[2026-08-31 13:00:30,825.825 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:00:30,828.828 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-08-31 13:00:34,090.090 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 13:00:34,092.092 INFO    ] Checking for system updates...
[2026-08-31 13:00:34,131.131 INFO    ] 200
[2026-08-31 13:00:34,133.133 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:00:34,190.190 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:00:34,192.192 INFO    ] No update needed
[2026-08-31 13:00:34,194.194 INFO    ] Checking for camera pi updates...
[2026-08-31 13:00:34,230.230 INFO    ] 200
[2026-08-31 13:00:34,232.232 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:00:34,272.272 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:00:34,374.374 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:00:34,377.377 INFO    ] No camera update needed
[2026-08-31 13:00:34,379.379 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:00:34,381.381 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:00:34,387.387 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:00:34,392.392 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:00:36,431.431 INFO    ] ================================================
[2026-08-31 13:00:36,452.452 INFO    ] Launching Daemon at Mon Aug 31 13:00:36 IST 2026
[2026-08-31 13:00:36,462.462 INFO    ] ================================================
[2026-08-31 13:00:37,026.026 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:00:37
[2026-08-31 13:00:37,609.609 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:00:37,866.866 INFO    ] Initializing speech engine...
[2026-08-31 13:00:37,882.882 INFO    ] 2026-08-31 13:00:37
[2026-08-31 13:00:38,161.161 INFO    ] 2026-08-31 13:00:38
[2026-08-31 13:00:38,200.200 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:00:38,482.482 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:00:38,492.492 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:00:38,714.714 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:00:38,759.759 INFO    ] time= 31/08/2026 13:00:38
[2026-08-31 13:00:38,788.788 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:00:38,794.794 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:00:38,921.921 INFO    ] No existing commands found in stream
[2026-08-31 13:00:43,938.938 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:00:43,941.941 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-08-31 13:00:46,683.683 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 13:00:46,686.686 INFO    ] Checking for system updates...
[2026-08-31 13:00:46,722.722 INFO    ] 200
[2026-08-31 13:00:46,725.725 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:00:46,782.782 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:00:46,784.784 INFO    ] No update needed
[2026-08-31 13:00:46,787.787 INFO    ] Checking for camera pi updates...
[2026-08-31 13:00:46,820.820 INFO    ] 200
[2026-08-31 13:00:46,822.822 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:00:46,863.863 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:00:46,945.945 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:00:46,947.947 INFO    ] No camera update needed
[2026-08-31 13:00:46,950.950 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:00:46,952.952 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:00:46,957.957 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:00:46,962.962 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:00:49,001.001 INFO    ] ================================================
[2026-08-31 13:00:49,016.016 INFO    ] Launching Daemon at Mon Aug 31 13:00:49 IST 2026
[2026-08-31 13:00:49,027.027 INFO    ] ================================================
[2026-08-31 13:00:49,619.619 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:00:49
[2026-08-31 13:00:50,208.208 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:00:50,474.474 INFO    ] Initializing speech engine...
[2026-08-31 13:00:50,484.484 INFO    ] 2026-08-31 13:00:50
[2026-08-31 13:00:50,745.745 INFO    ] 2026-08-31 13:00:50
[2026-08-31 13:00:50,803.803 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:00:51,025.025 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:00:51,035.035 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:00:51,250.250 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:00:51,291.291 INFO    ] time= 31/08/2026 13:00:51
[2026-08-31 13:00:51,297.297 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:00:51,318.318 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:00:51,514.514 INFO    ] No existing commands found in stream
[2026-08-31 13:00:56,539.539 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:00:56,542.542 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-08-31 13:00:58,000.000 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 13:00:58,003.003 INFO    ] Checking for system updates...
[2026-08-31 13:00:58,042.042 INFO    ] 200
[2026-08-31 13:00:58,044.044 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:00:58,100.100 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:00:58,103.103 INFO    ] No update needed
[2026-08-31 13:00:58,106.106 INFO    ] Checking for camera pi updates...
[2026-08-31 13:00:58,142.142 INFO    ] 200
[2026-08-31 13:00:58,144.144 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:00:58,190.190 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:00:58,258.258 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:00:58,260.260 INFO    ] No camera update needed
[2026-08-31 13:00:58,263.263 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:00:58,265.265 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:00:58,271.271 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:00:58,276.276 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:01:00,320.320 INFO    ] ================================================
[2026-08-31 13:01:00,335.335 INFO    ] Launching Daemon at Mon Aug 31 13:01:00 IST 2026
[2026-08-31 13:01:00,346.346 INFO    ] ================================================
[2026-08-31 13:01:00,962.962 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:01:00
[2026-08-31 13:01:01,785.785 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:01:02,163.163 INFO    ] Initializing speech engine...
[2026-08-31 13:01:02,175.175 INFO    ] 2026-08-31 13:01:02
[2026-08-31 13:01:02,461.461 INFO    ] 2026-08-31 13:01:02
[2026-08-31 13:01:02,504.504 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:01:02,712.712 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:01:02,729.729 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:01:02,899.899 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:01:02,910.910 INFO    ] time= 31/08/2026 13:01:02
[2026-08-31 13:01:02,959.959 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:01:02,983.983 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:01:03,089.089 INFO    ] No existing commands found in stream
[2026-08-31 13:01:08,125.125 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:01:08,128.128 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-08-31 13:01:09,816.816 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 13:01:09,819.819 INFO    ] Checking for system updates...
[2026-08-31 13:01:09,860.860 INFO    ] 200
[2026-08-31 13:01:09,863.863 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:01:09,922.922 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:01:09,924.924 INFO    ] No update needed
[2026-08-31 13:01:09,927.927 INFO    ] Checking for camera pi updates...
[2026-08-31 13:01:09,961.961 INFO    ] 200
[2026-08-31 13:01:09,963.963 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:01:10,008.008 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:01:10,113.113 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:01:10,115.115 INFO    ] No camera update needed
[2026-08-31 13:01:10,118.118 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:01:10,120.120 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:01:10,125.125 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:01:10,131.131 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:01:12,172.172 INFO    ] ================================================
[2026-08-31 13:01:12,188.188 INFO    ] Launching Daemon at Mon Aug 31 13:01:12 IST 2026
[2026-08-31 13:01:12,200.200 INFO    ] ================================================
[2026-08-31 13:01:12,766.766 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:01:12
[2026-08-31 13:01:13,350.350 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:01:13,604.604 INFO    ] Initializing speech engine...
[2026-08-31 13:01:13,611.611 INFO    ] 2026-08-31 13:01:13
[2026-08-31 13:01:13,910.910 INFO    ] 2026-08-31 13:01:13
[2026-08-31 13:01:13,937.937 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:01:14,175.175 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:01:14,185.185 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:01:14,409.409 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:01:14,426.426 INFO    ] time= 31/08/2026 13:01:14
[2026-08-31 13:01:14,475.475 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:01:14,514.514 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:01:14,621.621 INFO    ] No existing commands found in stream
[2026-08-31 13:01:19,634.634 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:01:19,636.636 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-08-31 13:01:23,929.929 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 13:01:23,932.932 INFO    ] Checking for system updates...
[2026-08-31 13:01:23,972.972 INFO    ] 200
[2026-08-31 13:01:23,974.974 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:01:24,026.026 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:01:24,029.029 INFO    ] No update needed
[2026-08-31 13:01:24,032.032 INFO    ] Checking for camera pi updates...
[2026-08-31 13:01:24,065.065 INFO    ] 200
[2026-08-31 13:01:24,068.068 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:01:24,117.117 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:01:24,196.196 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:01:24,199.199 INFO    ] No camera update needed
[2026-08-31 13:01:24,201.201 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:01:24,203.203 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:01:24,209.209 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:01:24,214.214 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:01:26,253.253 INFO    ] ================================================
[2026-08-31 13:01:26,269.269 INFO    ] Launching Daemon at Mon Aug 31 13:01:26 IST 2026
[2026-08-31 13:01:26,280.280 INFO    ] ================================================
[2026-08-31 13:01:26,846.846 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:01:26
[2026-08-31 13:01:27,429.429 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:01:27,687.687 INFO    ] Initializing speech engine...
[2026-08-31 13:01:27,693.693 INFO    ] 2026-08-31 13:01:27
[2026-08-31 13:01:27,969.969 INFO    ] 2026-08-31 13:01:27
[2026-08-31 13:01:28,004.004 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:01:28,261.261 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:01:28,266.266 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:01:28,397.397 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:01:28,451.451 INFO    ] time= 31/08/2026 13:01:28
[2026-08-31 13:01:28,500.500 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:01:28,527.527 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:01:28,670.670 INFO    ] No existing commands found in stream
[2026-08-31 13:01:33,686.686 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:01:33,689.689 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-08-31 13:01:35,845.845 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 13:01:35,848.848 INFO    ] Checking for system updates...
[2026-08-31 13:01:35,884.884 INFO    ] 200
[2026-08-31 13:01:35,887.887 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:01:35,940.940 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:01:35,943.943 INFO    ] No update needed
[2026-08-31 13:01:35,945.945 INFO    ] Checking for camera pi updates...
[2026-08-31 13:01:35,983.983 INFO    ] 200
[2026-08-31 13:01:35,985.985 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:01:36,032.032 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:01:36,100.100 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:01:36,103.103 INFO    ] No camera update needed
[2026-08-31 13:01:36,105.105 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:01:36,107.107 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:01:36,113.113 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:01:36,118.118 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:01:38,158.158 INFO    ] ================================================
[2026-08-31 13:01:38,174.174 INFO    ] Launching Daemon at Mon Aug 31 13:01:38 IST 2026
[2026-08-31 13:01:38,186.186 INFO    ] ================================================
[2026-08-31 13:01:38,767.767 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:01:38
[2026-08-31 13:01:39,409.409 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:01:39,711.711 INFO    ] Initializing speech engine...
[2026-08-31 13:01:39,725.725 INFO    ] 2026-08-31 13:01:39
[2026-08-31 13:01:39,997.997 INFO    ] 2026-08-31 13:01:39
[2026-08-31 13:01:40,040.040 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:01:40,288.288 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:01:40,294.294 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:01:40,491.491 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:01:40,526.526 INFO    ] time= 31/08/2026 13:01:40
[2026-08-31 13:01:40,532.532 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:01:40,553.553 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:01:40,678.678 INFO    ] No existing commands found in stream
[2026-08-31 13:01:45,692.692 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:01:45,695.695 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-08-31 13:01:47,026.026 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 13:01:47,029.029 INFO    ] Checking for system updates...
[2026-08-31 13:01:47,069.069 INFO    ] 200
[2026-08-31 13:01:47,071.071 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:01:47,123.123 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:01:47,126.126 INFO    ] No update needed
[2026-08-31 13:01:47,128.128 INFO    ] Checking for camera pi updates...
[2026-08-31 13:01:47,166.166 INFO    ] 200
[2026-08-31 13:01:47,169.169 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:01:47,214.214 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:01:47,317.317 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:01:47,319.319 INFO    ] No camera update needed
[2026-08-31 13:01:47,322.322 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:01:47,324.324 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:01:47,329.329 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:01:47,334.334 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:01:49,376.376 INFO    ] ================================================
[2026-08-31 13:01:49,391.391 INFO    ] Launching Daemon at Mon Aug 31 13:01:49 IST 2026
[2026-08-31 13:01:49,402.402 INFO    ] ================================================
[2026-08-31 13:01:49,973.973 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:01:49
[2026-08-31 13:01:50,557.557 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:01:50,820.820 INFO    ] Initializing speech engine...
[2026-08-31 13:01:50,833.833 INFO    ] 2026-08-31 13:01:50
[2026-08-31 13:01:51,112.112 INFO    ] 2026-08-31 13:01:51
[2026-08-31 13:01:51,156.156 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:01:51,409.409 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:01:51,415.415 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:01:51,665.665 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:01:51,672.672 INFO    ] time= 31/08/2026 13:01:51
[2026-08-31 13:01:51,694.694 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:01:51,721.721 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:01:51,867.867 INFO    ] No existing commands found in stream
[2026-08-31 13:01:56,892.892 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:01:56,896.896 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-08-31 13:01:58,738.738 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 13:01:58,742.742 INFO    ] Checking for system updates...
[2026-08-31 13:01:58,784.784 INFO    ] 200
[2026-08-31 13:01:58,786.786 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:01:58,841.841 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:01:58,844.844 INFO    ] No update needed
[2026-08-31 13:01:58,847.847 INFO    ] Checking for camera pi updates...
[2026-08-31 13:01:58,886.886 INFO    ] 200
[2026-08-31 13:01:58,889.889 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:01:58,934.934 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:01:59,034.034 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:01:59,037.037 INFO    ] No camera update needed
[2026-08-31 13:01:59,039.039 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:01:59,042.042 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:01:59,047.047 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:01:59,053.053 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:02:01,094.094 INFO    ] ================================================
[2026-08-31 13:02:01,109.109 INFO    ] Launching Daemon at Mon Aug 31 13:02:01 IST 2026
[2026-08-31 13:02:01,120.120 INFO    ] ================================================
[2026-08-31 13:02:01,841.841 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:02:01
[2026-08-31 13:02:02,600.600 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:02:02,949.949 INFO    ] Initializing speech engine...
[2026-08-31 13:02:02,959.959 INFO    ] 2026-08-31 13:02:02
[2026-08-31 13:02:03,243.243 INFO    ] 2026-08-31 13:02:03
[2026-08-31 13:02:03,278.278 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:02:03,483.483 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:02:03,542.542 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:02:03,691.691 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:02:03,751.751 INFO    ] time= 31/08/2026 13:02:03
[2026-08-31 13:02:03,806.806 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:02:03,822.822 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:02:03,948.948 INFO    ] No existing commands found in stream
[2026-08-31 13:02:08,971.971 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:02:08,974.974 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-08-31 13:02:12,147.147 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 13:02:12,149.149 INFO    ] Checking for system updates...
[2026-08-31 13:02:12,189.189 INFO    ] 200
[2026-08-31 13:02:12,191.191 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:02:12,248.248 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:02:12,251.251 INFO    ] No update needed
[2026-08-31 13:02:12,253.253 INFO    ] Checking for camera pi updates...
[2026-08-31 13:02:12,287.287 INFO    ] 200
[2026-08-31 13:02:12,290.290 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:02:12,331.331 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:02:12,512.512 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:02:12,515.515 INFO    ] No camera update needed
[2026-08-31 13:02:12,517.517 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:02:12,519.519 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:02:12,525.525 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:02:12,529.529 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:02:14,569.569 INFO    ] ================================================
[2026-08-31 13:02:14,584.584 INFO    ] Launching Daemon at Mon Aug 31 13:02:14 IST 2026
[2026-08-31 13:02:14,595.595 INFO    ] ================================================
[2026-08-31 13:02:15,191.191 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:02:15
[2026-08-31 13:02:15,845.845 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:02:16,127.127 INFO    ] Initializing speech engine...
[2026-08-31 13:02:16,138.138 INFO    ] 2026-08-31 13:02:16
[2026-08-31 13:02:16,402.402 INFO    ] 2026-08-31 13:02:16
[2026-08-31 13:02:16,443.443 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:02:16,685.685 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:02:16,693.693 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:02:16,922.922 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:02:16,938.938 INFO    ] time= 31/08/2026 13:02:16
[2026-08-31 13:02:16,947.947 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:02:16,973.973 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:02:17,077.077 INFO    ] No existing commands found in stream
[2026-08-31 13:02:22,090.090 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:02:22,093.093 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-08-31 13:02:25,493.493 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 13:02:25,495.495 INFO    ] Checking for system updates...
[2026-08-31 13:02:25,531.531 INFO    ] 200
[2026-08-31 13:02:25,534.534 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:02:25,592.592 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:02:25,594.594 INFO    ] No update needed
[2026-08-31 13:02:25,597.597 INFO    ] Checking for camera pi updates...
[2026-08-31 13:02:25,633.633 INFO    ] 200
[2026-08-31 13:02:25,635.635 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:02:25,679.679 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:02:25,761.761 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:02:25,763.763 INFO    ] No camera update needed
[2026-08-31 13:02:25,765.765 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:02:25,768.768 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:02:25,773.773 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:02:25,778.778 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:02:27,819.819 INFO    ] ================================================
[2026-08-31 13:02:27,834.834 INFO    ] Launching Daemon at Mon Aug 31 13:02:27 IST 2026
[2026-08-31 13:02:27,845.845 INFO    ] ================================================
[2026-08-31 13:02:28,409.409 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:02:28
[2026-08-31 13:02:28,989.989 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:02:29,264.264 INFO    ] Initializing speech engine...
[2026-08-31 13:02:29,275.275 INFO    ] 2026-08-31 13:02:29
[2026-08-31 13:02:29,537.537 INFO    ] 2026-08-31 13:02:29
[2026-08-31 13:02:29,582.582 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:02:29,837.837 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:02:29,857.857 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:02:30,093.093 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:02:30,100.100 INFO    ] time= 31/08/2026 13:02:30
[2026-08-31 13:02:30,127.127 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:02:30,152.152 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:02:30,279.279 INFO    ] No existing commands found in stream
[2026-08-31 13:02:35,305.305 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:02:35,308.308 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-08-31 13:02:39,610.610 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 13:02:39,613.613 INFO    ] Checking for system updates...
[2026-08-31 13:02:39,650.650 INFO    ] 200
[2026-08-31 13:02:39,653.653 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:02:39,711.711 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:02:39,714.714 INFO    ] No update needed
[2026-08-31 13:02:39,717.717 INFO    ] Checking for camera pi updates...
[2026-08-31 13:02:39,754.754 INFO    ] 200
[2026-08-31 13:02:39,757.757 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:02:39,800.800 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:02:39,899.899 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:02:39,902.902 INFO    ] No camera update needed
[2026-08-31 13:02:39,905.905 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:02:39,907.907 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:02:39,913.913 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:02:39,919.919 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:02:41,961.961 INFO    ] ================================================
[2026-08-31 13:02:41,976.976 INFO    ] Launching Daemon at Mon Aug 31 13:02:41 IST 2026
[2026-08-31 13:02:41,986.986 INFO    ] ================================================
[2026-08-31 13:02:42,552.552 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:02:42
[2026-08-31 13:02:43,136.136 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:02:43,390.390 INFO    ] Initializing speech engine...
[2026-08-31 13:02:43,399.399 INFO    ] 2026-08-31 13:02:43
[2026-08-31 13:02:43,682.682 INFO    ] 2026-08-31 13:02:43
[2026-08-31 13:02:43,716.716 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:02:43,917.917 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:02:43,977.977 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:02:44,177.177 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:02:44,237.237 INFO    ] time= 31/08/2026 13:02:44
[2026-08-31 13:02:44,249.249 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:02:44,266.266 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:02:44,401.401 INFO    ] No existing commands found in stream
[2026-08-31 13:02:49,428.428 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:02:49,431.431 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-08-31 13:02:52,146.146 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 13:02:52,149.149 INFO    ] Checking for system updates...
[2026-08-31 13:02:52,188.188 INFO    ] 200
[2026-08-31 13:02:52,190.190 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:02:52,248.248 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:02:52,251.251 INFO    ] No update needed
[2026-08-31 13:02:52,253.253 INFO    ] Checking for camera pi updates...
[2026-08-31 13:02:52,290.290 INFO    ] 200
[2026-08-31 13:02:52,292.292 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:02:52,332.332 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:02:52,405.405 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:02:52,407.407 INFO    ] No camera update needed
[2026-08-31 13:02:52,410.410 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:02:52,412.412 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:02:52,418.418 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:02:52,423.423 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:02:54,463.463 INFO    ] ================================================
[2026-08-31 13:02:54,478.478 INFO    ] Launching Daemon at Mon Aug 31 13:02:54 IST 2026
[2026-08-31 13:02:54,489.489 INFO    ] ================================================
[2026-08-31 13:02:55,136.136 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:02:55
[2026-08-31 13:02:55,801.801 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:02:56,104.104 INFO    ] Initializing speech engine...
[2026-08-31 13:02:56,110.110 INFO    ] 2026-08-31 13:02:56
[2026-08-31 13:02:56,358.358 INFO    ] 2026-08-31 13:02:56
[2026-08-31 13:02:56,394.394 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:02:56,578.578 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:02:56,597.597 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:02:56,811.811 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:02:56,871.871 INFO    ] time= 31/08/2026 13:02:56
[2026-08-31 13:02:56,925.925 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:02:56,935.935 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:02:57,085.085 INFO    ] No existing commands found in stream
[2026-08-31 13:03:02,100.100 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:03:02,103.103 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-08-31 13:03:06,658.658 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 13:03:06,661.661 INFO    ] Checking for system updates...
[2026-08-31 13:03:06,701.701 INFO    ] 200
[2026-08-31 13:03:06,704.704 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:03:06,763.763 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:03:06,766.766 INFO    ] No update needed
[2026-08-31 13:03:06,768.768 INFO    ] Checking for camera pi updates...
[2026-08-31 13:03:06,806.806 INFO    ] 200
[2026-08-31 13:03:06,809.809 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:03:06,853.853 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:03:06,936.936 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:03:06,939.939 INFO    ] No camera update needed
[2026-08-31 13:03:06,941.941 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:03:06,944.944 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:03:06,950.950 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:03:06,956.956 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:03:09,996.996 INFO    ] ================================================
[2026-08-31 13:03:09,012.012 INFO    ] Launching Daemon at Mon Aug 31 13:03:09 IST 2026
[2026-08-31 13:03:09,023.023 INFO    ] ================================================
[2026-08-31 13:03:09,591.591 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:03:09
[2026-08-31 13:03:10,174.174 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:03:10,456.456 INFO    ] Initializing speech engine...
[2026-08-31 13:03:10,466.466 INFO    ] 2026-08-31 13:03:10
[2026-08-31 13:03:10,728.728 INFO    ] 2026-08-31 13:03:10
[2026-08-31 13:03:10,765.765 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:03:11,050.050 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:03:11,060.060 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:03:11,276.276 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:03:11,330.330 INFO    ] time= 31/08/2026 13:03:11
[2026-08-31 13:03:11,339.339 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:03:11,356.356 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:03:11,492.492 INFO    ] No existing commands found in stream
[2026-08-31 13:03:16,507.507 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:03:16,510.510 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-08-31 13:03:17,982.982 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 13:03:17,985.985 INFO    ] Checking for system updates...
[2026-08-31 13:03:18,022.022 INFO    ] 200
[2026-08-31 13:03:18,024.024 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:03:18,077.077 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:03:18,080.080 INFO    ] No update needed
[2026-08-31 13:03:18,083.083 INFO    ] Checking for camera pi updates...
[2026-08-31 13:03:18,118.118 INFO    ] 200
[2026-08-31 13:03:18,121.121 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:03:18,161.161 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:03:18,260.260 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:03:18,263.263 INFO    ] No camera update needed
[2026-08-31 13:03:18,266.266 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:03:18,268.268 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:03:18,275.275 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:03:18,281.281 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:03:20,323.323 INFO    ] ================================================
[2026-08-31 13:03:20,339.339 INFO    ] Launching Daemon at Mon Aug 31 13:03:20 IST 2026
[2026-08-31 13:03:20,351.351 INFO    ] ================================================
[2026-08-31 13:03:20,990.990 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:03:20
[2026-08-31 13:03:21,606.606 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:03:21,865.865 INFO    ] Initializing speech engine...
[2026-08-31 13:03:21,880.880 INFO    ] 2026-08-31 13:03:21
[2026-08-31 13:03:22,136.136 INFO    ] 2026-08-31 13:03:22
[2026-08-31 13:03:22,171.171 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:03:22,370.370 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:03:22,385.385 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:03:22,543.543 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:03:22,552.552 INFO    ] time= 31/08/2026 13:03:22
[2026-08-31 13:03:22,590.590 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:03:22,624.624 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:03:22,760.760 INFO    ] No existing commands found in stream
[2026-08-31 13:03:27,773.773 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:03:27,777.777 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-08-31 13:03:31,630.630 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 13:03:31,633.633 INFO    ] Checking for system updates...
[2026-08-31 13:03:31,673.673 INFO    ] 200
[2026-08-31 13:03:31,676.676 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:03:31,736.736 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:03:31,740.740 INFO    ] No update needed
[2026-08-31 13:03:31,743.743 INFO    ] Checking for camera pi updates...
[2026-08-31 13:03:31,785.785 INFO    ] 200
[2026-08-31 13:03:31,788.788 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:03:31,843.843 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:03:31,955.955 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:03:31,959.959 INFO    ] No camera update needed
[2026-08-31 13:03:31,962.962 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:03:31,966.966 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:03:31,973.973 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:03:31,981.981 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:03:34,027.027 INFO    ] ================================================
[2026-08-31 13:03:34,043.043 INFO    ] Launching Daemon at Mon Aug 31 13:03:34 IST 2026
[2026-08-31 13:03:34,054.054 INFO    ] ================================================
[2026-08-31 13:03:34,727.727 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:03:34
[2026-08-31 13:03:35,408.408 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:03:35,717.717 INFO    ] Initializing speech engine...
[2026-08-31 13:03:35,729.729 INFO    ] 2026-08-31 13:03:35
[2026-08-31 13:03:36,039.039 INFO    ] 2026-08-31 13:03:36
[2026-08-31 13:03:36,124.124 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:03:36,339.339 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:03:36,348.348 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:03:36,541.541 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:03:36,562.562 INFO    ] time= 31/08/2026 13:03:36
[2026-08-31 13:03:36,589.589 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:03:36,599.599 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:03:36,719.719 INFO    ] No existing commands found in stream
[2026-08-31 13:03:41,745.745 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:03:41,748.748 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-08-31 13:03:42,403.403 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 13:03:42,406.406 INFO    ] Checking for system updates...
[2026-08-31 13:03:42,443.443 INFO    ] 200
[2026-08-31 13:03:42,446.446 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:03:42,501.501 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:03:42,507.507 INFO    ] No update needed
[2026-08-31 13:03:42,511.511 INFO    ] Checking for camera pi updates...
[2026-08-31 13:03:42,546.546 INFO    ] 200
[2026-08-31 13:03:42,549.549 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:03:42,589.589 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:03:42,678.678 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:03:42,681.681 INFO    ] No camera update needed
[2026-08-31 13:03:42,683.683 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:03:42,685.685 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:03:42,691.691 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:03:42,696.696 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:03:44,736.736 INFO    ] ================================================
[2026-08-31 13:03:44,752.752 INFO    ] Launching Daemon at Mon Aug 31 13:03:44 IST 2026
[2026-08-31 13:03:44,763.763 INFO    ] ================================================
[2026-08-31 13:03:45,330.330 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:03:45
[2026-08-31 13:03:45,913.913 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:03:46,186.186 INFO    ] Initializing speech engine...
[2026-08-31 13:03:46,193.193 INFO    ] 2026-08-31 13:03:46
[2026-08-31 13:03:46,439.439 INFO    ] 2026-08-31 13:03:46
[2026-08-31 13:03:46,474.474 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:03:46,730.730 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:03:46,747.747 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:03:46,978.978 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:03:47,018.018 INFO    ] time= 31/08/2026 13:03:46
[2026-08-31 13:03:47,025.025 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:03:47,044.044 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:03:47,160.160 INFO    ] No existing commands found in stream
[2026-08-31 13:03:52,193.193 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:03:52,195.195 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-08-31 13:03:55,366.366 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 13:03:55,369.369 INFO    ] Checking for system updates...
[2026-08-31 13:03:55,404.404 INFO    ] 200
[2026-08-31 13:03:55,406.406 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:03:55,467.467 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:03:55,470.470 INFO    ] No update needed
[2026-08-31 13:03:55,472.472 INFO    ] Checking for camera pi updates...
[2026-08-31 13:03:55,510.510 INFO    ] 200
[2026-08-31 13:03:55,512.512 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:03:55,558.558 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:03:55,636.636 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:03:55,639.639 INFO    ] No camera update needed
[2026-08-31 13:03:55,641.641 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:03:55,644.644 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:03:55,649.649 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:03:55,654.654 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:03:57,695.695 INFO    ] ================================================
[2026-08-31 13:03:57,710.710 INFO    ] Launching Daemon at Mon Aug 31 13:03:57 IST 2026
[2026-08-31 13:03:57,721.721 INFO    ] ================================================
[2026-08-31 13:03:58,286.286 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:03:58
[2026-08-31 13:03:58,867.867 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:03:59,133.133 INFO    ] Initializing speech engine...
[2026-08-31 13:03:59,142.142 INFO    ] 2026-08-31 13:03:59
[2026-08-31 13:03:59,389.389 INFO    ] 2026-08-31 13:03:59
[2026-08-31 13:03:59,453.453 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:03:59,675.675 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:03:59,685.685 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:03:59,816.816 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:03:59,859.859 INFO    ] time= 31/08/2026 13:03:59
[2026-08-31 13:03:59,903.903 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:03:59,950.950 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:04:00,074.074 INFO    ] No existing commands found in stream
[2026-08-31 13:04:05,104.104 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:04:05,107.107 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-08-31 13:04:07,287.287 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 13:04:07,290.290 INFO    ] Checking for system updates...
[2026-08-31 13:04:07,325.325 INFO    ] 200
[2026-08-31 13:04:07,327.327 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:04:07,381.381 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:04:07,384.384 INFO    ] No update needed
[2026-08-31 13:04:07,386.386 INFO    ] Checking for camera pi updates...
[2026-08-31 13:04:07,419.419 INFO    ] 200
[2026-08-31 13:04:07,422.422 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:04:07,464.464 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:04:07,546.546 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:04:07,549.549 INFO    ] No camera update needed
[2026-08-31 13:04:07,551.551 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:04:07,553.553 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:04:07,559.559 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:04:07,563.563 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:04:09,604.604 INFO    ] ================================================
[2026-08-31 13:04:09,619.619 INFO    ] Launching Daemon at Mon Aug 31 13:04:09 IST 2026
[2026-08-31 13:04:09,629.629 INFO    ] ================================================
[2026-08-31 13:04:10,218.218 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:04:10
[2026-08-31 13:04:10,879.879 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:04:11,181.181 INFO    ] Initializing speech engine...
[2026-08-31 13:04:11,194.194 INFO    ] 2026-08-31 13:04:11
[2026-08-31 13:04:11,480.480 INFO    ] 2026-08-31 13:04:11
[2026-08-31 13:04:11,590.590 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:04:11,766.766 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:04:11,773.773 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:04:11,982.982 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:04:12,011.011 INFO    ] time= 31/08/2026 13:04:11
[2026-08-31 13:04:12,031.031 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:04:12,061.061 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:04:12,221.221 INFO    ] No existing commands found in stream
[2026-08-31 13:04:17,247.247 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:04:17,250.250 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-08-31 13:04:20,482.482 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 13:04:20,486.486 INFO    ] Checking for system updates...
[2026-08-31 13:04:20,522.522 INFO    ] 200
[2026-08-31 13:04:20,525.525 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:04:20,578.578 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:04:20,580.580 INFO    ] No update needed
[2026-08-31 13:04:20,583.583 INFO    ] Checking for camera pi updates...
[2026-08-31 13:04:20,617.617 INFO    ] 200
[2026-08-31 13:04:20,620.620 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:04:20,663.663 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:04:20,861.861 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:04:20,864.864 INFO    ] No camera update needed
[2026-08-31 13:04:20,867.867 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:04:20,870.870 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:04:20,876.876 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:04:20,881.881 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:04:22,921.921 INFO    ] ================================================
[2026-08-31 13:04:22,936.936 INFO    ] Launching Daemon at Mon Aug 31 13:04:22 IST 2026
[2026-08-31 13:04:22,947.947 INFO    ] ================================================
[2026-08-31 13:04:23,530.530 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:04:23
[2026-08-31 13:04:24,112.112 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:04:24,383.383 INFO    ] Initializing speech engine...
[2026-08-31 13:04:24,389.389 INFO    ] 2026-08-31 13:04:24
[2026-08-31 13:04:24,635.635 INFO    ] 2026-08-31 13:04:24
[2026-08-31 13:04:24,700.700 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:04:24,925.925 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:04:24,931.931 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:04:25,150.150 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:04:25,189.189 INFO    ] time= 31/08/2026 13:04:25
[2026-08-31 13:04:25,203.203 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:04:25,212.212 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:04:25,325.325 INFO    ] No existing commands found in stream
[2026-08-31 13:04:30,349.349 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:04:30,351.351 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-08-31 13:04:34,658.658 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 13:04:34,661.661 INFO    ] Checking for system updates...
[2026-08-31 13:04:34,700.700 INFO    ] 200
[2026-08-31 13:04:34,703.703 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:04:34,755.755 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:04:34,758.758 INFO    ] No update needed
[2026-08-31 13:04:34,761.761 INFO    ] Checking for camera pi updates...
[2026-08-31 13:04:34,799.799 INFO    ] 200
[2026-08-31 13:04:34,802.802 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:04:34,851.851 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:04:34,938.938 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:04:34,940.940 INFO    ] No camera update needed
[2026-08-31 13:04:34,943.943 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:04:34,945.945 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:04:34,950.950 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:04:34,955.955 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:04:37,997.997 INFO    ] ================================================
[2026-08-31 13:04:37,014.014 INFO    ] Launching Daemon at Mon Aug 31 13:04:37 IST 2026
[2026-08-31 13:04:37,025.025 INFO    ] ================================================
[2026-08-31 13:04:37,657.657 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:04:37
[2026-08-31 13:04:38,377.377 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:04:38,701.701 INFO    ] Initializing speech engine...
[2026-08-31 13:04:38,710.710 INFO    ] 2026-08-31 13:04:38
[2026-08-31 13:04:39,022.022 INFO    ] 2026-08-31 13:04:39
[2026-08-31 13:04:39,136.136 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:04:39,446.446 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:04:39,450.450 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:04:39,716.716 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:04:39,746.746 INFO    ] time= 31/08/2026 13:04:39
[2026-08-31 13:04:39,807.807 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:04:39,847.847 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:04:39,971.971 INFO    ] No existing commands found in stream
[2026-08-31 13:04:45,003.003 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:04:45,006.006 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-08-31 13:04:47,787.787 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 13:04:47,790.790 INFO    ] Checking for system updates...
[2026-08-31 13:04:47,827.827 INFO    ] 200
[2026-08-31 13:04:47,830.830 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:04:47,884.884 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:04:47,887.887 INFO    ] No update needed
[2026-08-31 13:04:47,890.890 INFO    ] Checking for camera pi updates...
[2026-08-31 13:04:47,924.924 INFO    ] 200
[2026-08-31 13:04:47,927.927 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:04:47,973.973 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:04:48,056.056 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:04:48,059.059 INFO    ] No camera update needed
[2026-08-31 13:04:48,062.062 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:04:48,064.064 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:04:48,071.071 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:04:48,076.076 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:04:50,119.119 INFO    ] ================================================
[2026-08-31 13:04:50,134.134 INFO    ] Launching Daemon at Mon Aug 31 13:04:50 IST 2026
[2026-08-31 13:04:50,145.145 INFO    ] ================================================
[2026-08-31 13:04:50,712.712 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:04:50
[2026-08-31 13:04:51,295.295 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:04:51,565.565 INFO    ] Initializing speech engine...
[2026-08-31 13:04:51,575.575 INFO    ] 2026-08-31 13:04:51
[2026-08-31 13:04:51,821.821 INFO    ] 2026-08-31 13:04:51
[2026-08-31 13:04:51,856.856 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:04:52,108.108 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:04:52,117.117 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:04:52,342.342 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:04:52,374.374 INFO    ] time= 31/08/2026 13:04:52
[2026-08-31 13:04:52,380.380 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:04:52,398.398 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:04:52,530.530 INFO    ] No existing commands found in stream
[2026-08-31 13:04:57,548.548 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:04:57,551.551 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-08-31 13:05:01,873.873 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 13:05:01,877.877 INFO    ] Checking for system updates...
[2026-08-31 13:05:01,959.959 INFO    ] 200
[2026-08-31 13:05:01,963.963 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:05:02,040.040 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:05:02,044.044 INFO    ] No update needed
[2026-08-31 13:05:02,048.048 INFO    ] Checking for camera pi updates...
[2026-08-31 13:05:02,091.091 INFO    ] 200
[2026-08-31 13:05:02,094.094 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:05:02,146.146 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:05:02,395.395 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:05:02,399.399 INFO    ] No camera update needed
[2026-08-31 13:05:02,402.402 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:05:02,406.406 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:05:02,413.413 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:05:02,421.421 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:05:04,463.463 INFO    ] ================================================
[2026-08-31 13:05:04,478.478 INFO    ] Launching Daemon at Mon Aug 31 13:05:04 IST 2026
[2026-08-31 13:05:04,488.488 INFO    ] ================================================
[2026-08-31 13:05:05,116.116 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:05:05
[2026-08-31 13:05:05,777.777 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:05:06,078.078 INFO    ] Initializing speech engine...
[2026-08-31 13:05:06,090.090 INFO    ] 2026-08-31 13:05:06
[2026-08-31 13:05:06,360.360 INFO    ] 2026-08-31 13:05:06
[2026-08-31 13:05:06,425.425 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:05:06,656.656 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:05:06,663.663 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:05:06,900.900 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:05:06,921.921 INFO    ] time= 31/08/2026 13:05:06
[2026-08-31 13:05:06,939.939 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:05:06,957.957 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:05:07,100.100 INFO    ] No existing commands found in stream
[2026-08-31 13:05:12,126.126 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:05:12,129.129 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-08-31 13:05:16,110.110 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 13:05:16,113.113 INFO    ] Checking for system updates...
[2026-08-31 13:05:16,153.153 INFO    ] 200
[2026-08-31 13:05:16,156.156 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:05:16,211.211 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:05:16,214.214 INFO    ] No update needed
[2026-08-31 13:05:16,216.216 INFO    ] Checking for camera pi updates...
[2026-08-31 13:05:16,251.251 INFO    ] 200
[2026-08-31 13:05:16,254.254 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:05:16,295.295 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:05:16,376.376 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:05:16,379.379 INFO    ] No camera update needed
[2026-08-31 13:05:16,382.382 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:05:16,384.384 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:05:16,391.391 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:05:16,396.396 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:05:18,439.439 INFO    ] ================================================
[2026-08-31 13:05:18,454.454 INFO    ] Launching Daemon at Mon Aug 31 13:05:18 IST 2026
[2026-08-31 13:05:18,465.465 INFO    ] ================================================
[2026-08-31 13:05:19,032.032 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:05:19
[2026-08-31 13:05:19,615.615 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:05:19,885.885 INFO    ] Initializing speech engine...
[2026-08-31 13:05:19,891.891 INFO    ] 2026-08-31 13:05:19
[2026-08-31 13:05:20,137.137 INFO    ] 2026-08-31 13:05:20
[2026-08-31 13:05:20,173.173 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:05:20,423.423 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:05:20,432.432 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:05:20,667.667 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:05:20,690.690 INFO    ] time= 31/08/2026 13:05:20
[2026-08-31 13:05:20,696.696 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:05:20,716.716 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:05:20,842.842 INFO    ] No existing commands found in stream
[2026-08-31 13:05:25,856.856 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:05:25,859.859 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-08-31 13:05:30,213.213 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 13:05:30,215.215 INFO    ] Checking for system updates...
[2026-08-31 13:05:30,251.251 INFO    ] 200
[2026-08-31 13:05:30,254.254 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:05:30,305.305 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:05:30,308.308 INFO    ] No update needed
[2026-08-31 13:05:30,310.310 INFO    ] Checking for camera pi updates...
[2026-08-31 13:05:30,344.344 INFO    ] 200
[2026-08-31 13:05:30,346.346 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:05:30,387.387 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:05:30,439.439 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:05:30,441.441 INFO    ] No camera update needed
[2026-08-31 13:05:30,443.443 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:05:30,446.446 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:05:30,451.451 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:05:30,456.456 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:05:32,501.501 INFO    ] ================================================
[2026-08-31 13:05:32,517.517 INFO    ] Launching Daemon at Mon Aug 31 13:05:32 IST 2026
[2026-08-31 13:05:32,528.528 INFO    ] ================================================
[2026-08-31 13:05:33,119.119 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:05:33
[2026-08-31 13:05:33,700.700 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:05:33,969.969 INFO    ] Initializing speech engine...
[2026-08-31 13:05:33,975.975 INFO    ] 2026-08-31 13:05:33
[2026-08-31 13:05:34,219.219 INFO    ] 2026-08-31 13:05:34
[2026-08-31 13:05:34,253.253 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:05:34,504.504 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:05:34,513.513 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:05:34,739.739 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:05:34,769.769 INFO    ] time= 31/08/2026 13:05:34
[2026-08-31 13:05:34,774.774 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:05:34,795.795 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:05:34,923.923 INFO    ] No existing commands found in stream
[2026-08-31 13:05:39,938.938 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:05:39,941.941 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-08-31 13:05:41,934.934 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 13:05:41,937.937 INFO    ] Checking for system updates...
[2026-08-31 13:05:41,973.973 INFO    ] 200
[2026-08-31 13:05:41,975.975 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:05:42,030.030 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:05:42,033.033 INFO    ] No update needed
[2026-08-31 13:05:42,035.035 INFO    ] Checking for camera pi updates...
[2026-08-31 13:05:42,082.082 INFO    ] 200
[2026-08-31 13:05:42,085.085 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:05:42,124.124 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:05:42,209.209 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:05:42,212.212 INFO    ] No camera update needed
[2026-08-31 13:05:42,214.214 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:05:42,216.216 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:05:42,222.222 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:05:42,227.227 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:05:44,268.268 INFO    ] ================================================
[2026-08-31 13:05:44,283.283 INFO    ] Launching Daemon at Mon Aug 31 13:05:44 IST 2026
[2026-08-31 13:05:44,293.293 INFO    ] ================================================
[2026-08-31 13:05:44,936.936 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:05:44
[2026-08-31 13:05:45,597.597 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:05:45,897.897 INFO    ] Initializing speech engine...
[2026-08-31 13:05:45,910.910 INFO    ] 2026-08-31 13:05:45
[2026-08-31 13:05:46,220.220 INFO    ] 2026-08-31 13:05:46
[2026-08-31 13:05:46,305.305 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:05:46,521.521 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:05:46,527.527 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:05:46,722.722 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:05:46,739.739 INFO    ] time= 31/08/2026 13:05:46
[2026-08-31 13:05:46,770.770 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:05:46,779.779 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:05:46,883.883 INFO    ] No existing commands found in stream
[2026-08-31 13:05:51,913.913 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:05:51,916.916 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-08-31 13:05:53,406.406 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 13:05:53,409.409 INFO    ] Checking for system updates...
[2026-08-31 13:05:53,445.445 INFO    ] 200
[2026-08-31 13:05:53,447.447 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:05:53,501.501 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:05:53,503.503 INFO    ] No update needed
[2026-08-31 13:05:53,506.506 INFO    ] Checking for camera pi updates...
[2026-08-31 13:05:53,540.540 INFO    ] 200
[2026-08-31 13:05:53,542.542 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:05:53,582.582 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:05:53,645.645 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:05:53,648.648 INFO    ] No camera update needed
[2026-08-31 13:05:53,650.650 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:05:53,652.652 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:05:53,658.658 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:05:53,662.662 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:05:55,703.703 INFO    ] ================================================
[2026-08-31 13:05:55,718.718 INFO    ] Launching Daemon at Mon Aug 31 13:05:55 IST 2026
[2026-08-31 13:05:55,728.728 INFO    ] ================================================
[2026-08-31 13:05:56,336.336 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:05:56
[2026-08-31 13:05:56,994.994 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:05:57,279.279 INFO    ] Initializing speech engine...
[2026-08-31 13:05:57,296.296 INFO    ] 2026-08-31 13:05:57
[2026-08-31 13:05:57,572.572 INFO    ] 2026-08-31 13:05:57
[2026-08-31 13:05:57,628.628 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:05:57,855.855 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:05:57,861.861 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:05:58,113.113 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:05:58,121.121 INFO    ] time= 31/08/2026 13:05:58
[2026-08-31 13:05:58,140.140 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:05:58,169.169 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:05:58,339.339 INFO    ] No existing commands found in stream
[2026-08-31 13:06:03,370.370 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:06:03,373.373 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-08-31 13:06:06,664.664 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 13:06:06,667.667 INFO    ] Checking for system updates...
[2026-08-31 13:06:06,707.707 INFO    ] 200
[2026-08-31 13:06:06,710.710 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:06:06,763.763 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:06:06,765.765 INFO    ] No update needed
[2026-08-31 13:06:06,768.768 INFO    ] Checking for camera pi updates...
[2026-08-31 13:06:06,802.802 INFO    ] 200
[2026-08-31 13:06:06,804.804 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:06:06,847.847 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:06:06,926.926 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:06:06,929.929 INFO    ] No camera update needed
[2026-08-31 13:06:06,931.931 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:06:06,934.934 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:06:06,939.939 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:06:06,944.944 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:06:08,983.983 INFO    ] ================================================
[2026-08-31 13:06:09,998.998 INFO    ] Launching Daemon at Mon Aug 31 13:06:08 IST 2026
[2026-08-31 13:06:09,008.008 INFO    ] ================================================
[2026-08-31 13:06:09,582.582 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:06:09
[2026-08-31 13:06:10,165.165 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:06:10,433.433 INFO    ] Initializing speech engine...
[2026-08-31 13:06:10,442.442 INFO    ] 2026-08-31 13:06:10
[2026-08-31 13:06:10,692.692 INFO    ] 2026-08-31 13:06:10
[2026-08-31 13:06:10,726.726 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:06:10,998.998 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:06:11,008.008 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:06:11,190.190 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:06:11,250.250 INFO    ] time= 31/08/2026 13:06:11
[2026-08-31 13:06:11,293.293 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:06:11,299.299 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:06:11,423.423 INFO    ] No existing commands found in stream
[2026-08-31 13:06:16,450.450 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:06:16,453.453 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-08-31 13:06:19,789.789 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 13:06:19,792.792 INFO    ] Checking for system updates...
[2026-08-31 13:06:19,830.830 INFO    ] 200
[2026-08-31 13:06:19,832.832 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:06:19,884.884 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:06:19,887.887 INFO    ] No update needed
[2026-08-31 13:06:19,889.889 INFO    ] Checking for camera pi updates...
[2026-08-31 13:06:19,925.925 INFO    ] 200
[2026-08-31 13:06:19,927.927 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:06:19,967.967 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:06:20,050.050 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:06:20,053.053 INFO    ] No camera update needed
[2026-08-31 13:06:20,055.055 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:06:20,057.057 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:06:20,062.062 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:06:20,067.067 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:06:22,107.107 INFO    ] ================================================
[2026-08-31 13:06:22,122.122 INFO    ] Launching Daemon at Mon Aug 31 13:06:22 IST 2026
[2026-08-31 13:06:22,133.133 INFO    ] ================================================
[2026-08-31 13:06:22,720.720 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:06:22
[2026-08-31 13:06:23,320.320 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:06:23,591.591 INFO    ] Initializing speech engine...
[2026-08-31 13:06:23,602.602 INFO    ] 2026-08-31 13:06:23
[2026-08-31 13:06:23,864.864 INFO    ] 2026-08-31 13:06:23
[2026-08-31 13:06:23,918.918 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:06:24,203.203 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:06:24,210.210 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:06:24,399.399 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:06:24,406.406 INFO    ] time= 31/08/2026 13:06:24
[2026-08-31 13:06:24,423.423 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:06:24,446.446 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:06:24,559.559 INFO    ] No existing commands found in stream
[2026-08-31 13:06:29,589.589 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:06:29,592.592 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-08-31 13:06:33,124.124 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 13:06:33,126.126 INFO    ] Checking for system updates...
[2026-08-31 13:06:33,163.163 INFO    ] 200
[2026-08-31 13:06:33,166.166 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:06:33,219.219 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:06:33,222.222 INFO    ] No update needed
[2026-08-31 13:06:33,224.224 INFO    ] Checking for camera pi updates...
[2026-08-31 13:06:33,261.261 INFO    ] 200
[2026-08-31 13:06:33,264.264 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:06:33,308.308 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:06:33,388.388 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:06:33,391.391 INFO    ] No camera update needed
[2026-08-31 13:06:33,393.393 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:06:33,395.395 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:06:33,400.400 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:06:33,405.405 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:06:35,447.447 INFO    ] ================================================
[2026-08-31 13:06:35,462.462 INFO    ] Launching Daemon at Mon Aug 31 13:06:35 IST 2026
[2026-08-31 13:06:35,472.472 INFO    ] ================================================
[2026-08-31 13:06:36,049.049 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:06:36
[2026-08-31 13:06:36,629.629 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:06:36,878.878 INFO    ] Initializing speech engine...
[2026-08-31 13:06:36,901.901 INFO    ] 2026-08-31 13:06:36
[2026-08-31 13:06:37,170.170 INFO    ] 2026-08-31 13:06:37
[2026-08-31 13:06:37,204.204 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:06:37,483.483 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:06:37,492.492 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:06:37,686.686 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:06:37,735.735 INFO    ] time= 31/08/2026 13:06:37
[2026-08-31 13:06:37,778.778 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:06:37,784.784 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:06:37,929.929 INFO    ] No existing commands found in stream
[2026-08-31 13:06:42,953.953 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:06:42,956.956 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-08-31 13:06:46,164.164 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 13:06:46,168.168 INFO    ] Checking for system updates...
[2026-08-31 13:06:46,206.206 INFO    ] 200
[2026-08-31 13:06:46,209.209 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:06:46,263.263 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:06:46,265.265 INFO    ] No update needed
[2026-08-31 13:06:46,268.268 INFO    ] Checking for camera pi updates...
[2026-08-31 13:06:46,304.304 INFO    ] 200
[2026-08-31 13:06:46,307.307 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:06:46,350.350 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:06:46,462.462 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:06:46,465.465 INFO    ] No camera update needed
[2026-08-31 13:06:46,467.467 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:06:46,470.470 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:06:46,476.476 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:06:46,481.481 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:06:48,522.522 INFO    ] ================================================
[2026-08-31 13:06:48,538.538 INFO    ] Launching Daemon at Mon Aug 31 13:06:48 IST 2026
[2026-08-31 13:06:48,548.548 INFO    ] ================================================
[2026-08-31 13:06:49,168.168 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:06:49
[2026-08-31 13:06:49,805.805 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:06:50,095.095 INFO    ] Initializing speech engine...
[2026-08-31 13:06:50,102.102 INFO    ] 2026-08-31 13:06:50
[2026-08-31 13:06:50,384.384 INFO    ] 2026-08-31 13:06:50
[2026-08-31 13:06:50,431.431 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:06:50,712.712 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:06:50,720.720 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:06:50,917.917 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:06:50,935.935 INFO    ] time= 31/08/2026 13:06:50
[2026-08-31 13:06:50,944.944 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:06:50,971.971 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:06:51,079.079 INFO    ] No existing commands found in stream
[2026-08-31 13:06:56,108.108 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:06:56,111.111 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-08-31 13:06:59,365.365 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 13:06:59,368.368 INFO    ] Checking for system updates...
[2026-08-31 13:06:59,407.407 INFO    ] 200
[2026-08-31 13:06:59,410.410 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:06:59,464.464 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:06:59,467.467 INFO    ] No update needed
[2026-08-31 13:06:59,470.470 INFO    ] Checking for camera pi updates...
[2026-08-31 13:06:59,504.504 INFO    ] 200
[2026-08-31 13:06:59,506.506 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:06:59,548.548 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:06:59,632.632 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:06:59,634.634 INFO    ] No camera update needed
[2026-08-31 13:06:59,637.637 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:06:59,640.640 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:06:59,646.646 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:06:59,651.651 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:07:01,693.693 INFO    ] ================================================
[2026-08-31 13:07:01,712.712 INFO    ] Launching Daemon at Mon Aug 31 13:07:01 IST 2026
[2026-08-31 13:07:01,729.729 INFO    ] ================================================
[2026-08-31 13:07:02,407.407 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:07:02
[2026-08-31 13:07:03,153.153 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:07:03,452.452 INFO    ] Initializing speech engine...
[2026-08-31 13:07:03,461.461 INFO    ] 2026-08-31 13:07:03
[2026-08-31 13:07:03,735.735 INFO    ] 2026-08-31 13:07:03
[2026-08-31 13:07:03,788.788 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:07:04,017.017 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:07:04,027.027 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:07:04,164.164 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:07:04,229.229 INFO    ] time= 31/08/2026 13:07:04
[2026-08-31 13:07:04,295.295 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:07:04,302.302 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:07:04,447.447 INFO    ] No existing commands found in stream
[2026-08-31 13:07:09,462.462 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:07:09,466.466 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-08-31 13:07:11,050.050 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 13:07:11,053.053 INFO    ] Checking for system updates...
[2026-08-31 13:07:11,089.089 INFO    ] 200
[2026-08-31 13:07:11,092.092 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:07:11,144.144 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:07:11,147.147 INFO    ] No update needed
[2026-08-31 13:07:11,150.150 INFO    ] Checking for camera pi updates...
[2026-08-31 13:07:11,184.184 INFO    ] 200
[2026-08-31 13:07:11,186.186 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:07:11,228.228 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:07:11,309.309 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:07:11,311.311 INFO    ] No camera update needed
[2026-08-31 13:07:11,313.313 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:07:11,316.316 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:07:11,321.321 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:07:11,326.326 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:07:13,367.367 INFO    ] ================================================
[2026-08-31 13:07:13,382.382 INFO    ] Launching Daemon at Mon Aug 31 13:07:13 IST 2026
[2026-08-31 13:07:13,393.393 INFO    ] ================================================
[2026-08-31 13:07:13,970.970 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:07:13
[2026-08-31 13:07:14,564.564 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:07:14,839.839 INFO    ] Initializing speech engine...
[2026-08-31 13:07:14,846.846 INFO    ] 2026-08-31 13:07:14
[2026-08-31 13:07:15,106.106 INFO    ] 2026-08-31 13:07:15
[2026-08-31 13:07:15,160.160 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:07:15,381.381 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:07:15,390.390 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:07:15,575.575 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:07:15,629.629 INFO    ] time= 31/08/2026 13:07:15
[2026-08-31 13:07:15,652.652 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:07:15,667.667 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:07:15,800.800 INFO    ] No existing commands found in stream
[2026-08-31 13:07:20,815.815 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:07:20,818.818 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-08-31 13:07:23,445.445 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 13:07:23,447.447 INFO    ] Checking for system updates...
[2026-08-31 13:07:23,484.484 INFO    ] 200
[2026-08-31 13:07:23,486.486 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:07:23,540.540 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:07:23,542.542 INFO    ] No update needed
[2026-08-31 13:07:23,545.545 INFO    ] Checking for camera pi updates...
[2026-08-31 13:07:23,578.578 INFO    ] 200
[2026-08-31 13:07:23,580.580 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:07:23,620.620 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:07:23,703.703 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:07:23,706.706 INFO    ] No camera update needed
[2026-08-31 13:07:23,708.708 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:07:23,711.711 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:07:23,716.716 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:07:23,721.721 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:07:25,761.761 INFO    ] ================================================
[2026-08-31 13:07:25,776.776 INFO    ] Launching Daemon at Mon Aug 31 13:07:25 IST 2026
[2026-08-31 13:07:25,787.787 INFO    ] ================================================
[2026-08-31 13:07:26,413.413 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:07:26
[2026-08-31 13:07:27,059.059 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:07:27,350.350 INFO    ] Initializing speech engine...
[2026-08-31 13:07:27,357.357 INFO    ] 2026-08-31 13:07:27
[2026-08-31 13:07:27,634.634 INFO    ] 2026-08-31 13:07:27
[2026-08-31 13:07:27,688.688 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:07:27,918.918 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:07:27,923.923 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:07:28,125.125 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:07:28,179.179 INFO    ] time= 31/08/2026 13:07:28
[2026-08-31 13:07:28,190.190 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:07:28,204.204 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:07:28,321.321 INFO    ] No existing commands found in stream
[2026-08-31 13:07:33,346.346 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:07:33,349.349 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-08-31 13:07:35,164.164 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 13:07:35,166.166 INFO    ] Checking for system updates...
[2026-08-31 13:07:35,202.202 INFO    ] 200
[2026-08-31 13:07:35,205.205 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:07:35,257.257 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:07:35,259.259 INFO    ] No update needed
[2026-08-31 13:07:35,261.261 INFO    ] Checking for camera pi updates...
[2026-08-31 13:07:35,295.295 INFO    ] 200
[2026-08-31 13:07:35,297.297 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:07:35,337.337 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:07:35,403.403 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:07:35,406.406 INFO    ] No camera update needed
[2026-08-31 13:07:35,408.408 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:07:35,410.410 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:07:35,416.416 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:07:35,420.420 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:07:37,460.460 INFO    ] ================================================
[2026-08-31 13:07:37,475.475 INFO    ] Launching Daemon at Mon Aug 31 13:07:37 IST 2026
[2026-08-31 13:07:37,486.486 INFO    ] ================================================
[2026-08-31 13:07:38,069.069 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:07:38
[2026-08-31 13:07:38,662.662 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:07:38,934.934 INFO    ] Initializing speech engine...
[2026-08-31 13:07:38,944.944 INFO    ] 2026-08-31 13:07:38
[2026-08-31 13:07:39,205.205 INFO    ] 2026-08-31 13:07:39
[2026-08-31 13:07:39,259.259 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:07:39,540.540 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:07:39,549.549 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:07:39,737.737 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:07:39,748.748 INFO    ] time= 31/08/2026 13:07:39
[2026-08-31 13:07:39,766.766 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:07:39,795.795 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:07:39,916.916 INFO    ] No existing commands found in stream
[2026-08-31 13:07:44,946.946 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:07:44,949.949 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-08-31 13:07:45,544.544 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 13:07:45,547.547 INFO    ] Checking for system updates...
[2026-08-31 13:07:45,582.582 INFO    ] 200
[2026-08-31 13:07:45,585.585 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:07:45,637.637 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:07:45,639.639 INFO    ] No update needed
[2026-08-31 13:07:45,642.642 INFO    ] Checking for camera pi updates...
[2026-08-31 13:07:45,675.675 INFO    ] 200
[2026-08-31 13:07:45,678.678 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:07:45,718.718 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:07:45,796.796 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:07:45,799.799 INFO    ] No camera update needed
[2026-08-31 13:07:45,801.801 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:07:45,804.804 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:07:45,809.809 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:07:45,814.814 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:07:47,854.854 INFO    ] ================================================
[2026-08-31 13:07:47,869.869 INFO    ] Launching Daemon at Mon Aug 31 13:07:47 IST 2026
[2026-08-31 13:07:47,880.880 INFO    ] ================================================
[2026-08-31 13:07:48,501.501 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:07:48
[2026-08-31 13:07:49,086.086 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:07:49,360.360 INFO    ] Initializing speech engine...
[2026-08-31 13:07:49,366.366 INFO    ] 2026-08-31 13:07:49
[2026-08-31 13:07:49,626.626 INFO    ] 2026-08-31 13:07:49
[2026-08-31 13:07:49,656.656 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:07:49,904.904 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:07:49,908.908 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:07:50,083.083 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:07:50,127.127 INFO    ] time= 31/08/2026 13:07:50
[2026-08-31 13:07:50,171.171 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:07:50,176.176 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:07:50,324.324 INFO    ] No existing commands found in stream
[2026-08-31 13:07:55,342.342 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:07:55,345.345 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-08-31 13:07:58,135.135 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 13:07:58,137.137 INFO    ] Checking for system updates...
[2026-08-31 13:07:58,174.174 INFO    ] 200
[2026-08-31 13:07:58,176.176 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:07:58,228.228 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:07:58,230.230 INFO    ] No update needed
[2026-08-31 13:07:58,233.233 INFO    ] Checking for camera pi updates...
[2026-08-31 13:07:58,266.266 INFO    ] 200
[2026-08-31 13:07:58,268.268 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:07:58,308.308 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:07:58,389.389 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:07:58,392.392 INFO    ] No camera update needed
[2026-08-31 13:07:58,394.394 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:07:58,396.396 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:07:58,402.402 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:07:58,406.406 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:08:00,447.447 INFO    ] ================================================
[2026-08-31 13:08:00,462.462 INFO    ] Launching Daemon at Mon Aug 31 13:08:00 IST 2026
[2026-08-31 13:08:00,473.473 INFO    ] ================================================
[2026-08-31 13:08:01,053.053 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:08:01
[2026-08-31 13:08:01,825.825 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:08:02,194.194 INFO    ] Initializing speech engine...
[2026-08-31 13:08:02,199.199 INFO    ] 2026-08-31 13:08:02
[2026-08-31 13:08:02,546.546 INFO    ] 2026-08-31 13:08:02
[2026-08-31 13:08:02,630.630 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:08:02,845.845 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:08:02,852.852 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:08:03,011.011 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:08:03,082.082 INFO    ] time= 31/08/2026 13:08:03
[2026-08-31 13:08:03,141.141 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:08:03,148.148 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:08:03,292.292 INFO    ] No existing commands found in stream
[2026-08-31 13:08:08,308.308 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:08:08,311.311 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-08-31 13:08:10,352.352 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 13:08:10,355.355 INFO    ] Checking for system updates...
[2026-08-31 13:08:10,392.392 INFO    ] 200
[2026-08-31 13:08:10,394.394 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:08:10,449.449 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:08:10,452.452 INFO    ] No update needed
[2026-08-31 13:08:10,454.454 INFO    ] Checking for camera pi updates...
[2026-08-31 13:08:10,487.487 INFO    ] 200
[2026-08-31 13:08:10,490.490 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:08:10,536.536 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:08:10,619.619 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:08:10,621.621 INFO    ] No camera update needed
[2026-08-31 13:08:10,624.624 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:08:10,626.626 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:08:10,631.631 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:08:10,636.636 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:08:12,676.676 INFO    ] ================================================
[2026-08-31 13:08:12,692.692 INFO    ] Launching Daemon at Mon Aug 31 13:08:12 IST 2026
[2026-08-31 13:08:12,703.703 INFO    ] ================================================
[2026-08-31 13:08:13,288.288 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:08:13
[2026-08-31 13:08:13,887.887 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:08:14,163.163 INFO    ] Initializing speech engine...
[2026-08-31 13:08:14,170.170 INFO    ] 2026-08-31 13:08:14
[2026-08-31 13:08:14,428.428 INFO    ] 2026-08-31 13:08:14
[2026-08-31 13:08:14,486.486 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:08:14,733.733 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:08:14,740.740 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:08:14,939.939 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:08:14,974.974 INFO    ] time= 31/08/2026 13:08:14
[2026-08-31 13:08:14,992.992 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:08:15,001.001 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:08:15,129.129 INFO    ] No existing commands found in stream
[2026-08-31 13:08:20,143.143 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:08:20,146.146 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-08-31 13:08:23,816.816 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 13:08:23,818.818 INFO    ] Checking for system updates...
[2026-08-31 13:08:23,854.854 INFO    ] 200
[2026-08-31 13:08:23,856.856 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:08:23,908.908 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:08:23,910.910 INFO    ] No update needed
[2026-08-31 13:08:23,912.912 INFO    ] Checking for camera pi updates...
[2026-08-31 13:08:23,945.945 INFO    ] 200
[2026-08-31 13:08:23,948.948 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:08:23,988.988 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:08:24,076.076 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:08:24,079.079 INFO    ] No camera update needed
[2026-08-31 13:08:24,081.081 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:08:24,083.083 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:08:24,088.088 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:08:24,093.093 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:08:26,132.132 INFO    ] ================================================
[2026-08-31 13:08:26,147.147 INFO    ] Launching Daemon at Mon Aug 31 13:08:26 IST 2026
[2026-08-31 13:08:26,157.157 INFO    ] ================================================
[2026-08-31 13:08:26,822.822 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:08:26
[2026-08-31 13:08:27,505.505 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:08:27,817.817 INFO    ] Initializing speech engine...
[2026-08-31 13:08:27,831.831 INFO    ] 2026-08-31 13:08:27
[2026-08-31 13:08:28,153.153 INFO    ] 2026-08-31 13:08:28
[2026-08-31 13:08:28,240.240 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:08:28,459.459 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:08:28,467.467 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:08:28,632.632 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:08:28,681.681 INFO    ] time= 31/08/2026 13:08:28
[2026-08-31 13:08:28,700.700 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:08:28,710.710 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:08:28,821.821 INFO    ] No existing commands found in stream
[2026-08-31 13:08:33,850.850 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:08:33,853.853 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-08-31 13:08:34,571.571 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 13:08:34,574.574 INFO    ] Checking for system updates...
[2026-08-31 13:08:34,611.611 INFO    ] 200
[2026-08-31 13:08:34,614.614 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:08:34,667.667 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:08:34,670.670 INFO    ] No update needed
[2026-08-31 13:08:34,672.672 INFO    ] Checking for camera pi updates...
[2026-08-31 13:08:34,706.706 INFO    ] 200
[2026-08-31 13:08:34,709.709 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:08:34,749.749 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:08:34,921.921 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:08:34,924.924 INFO    ] No camera update needed
[2026-08-31 13:08:34,926.926 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:08:34,929.929 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:08:34,934.934 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:08:34,939.939 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:08:36,979.979 INFO    ] ================================================
[2026-08-31 13:08:36,993.993 INFO    ] Launching Daemon at Mon Aug 31 13:08:36 IST 2026
[2026-08-31 13:08:37,004.004 INFO    ] ================================================
[2026-08-31 13:08:37,707.707 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:08:37
[2026-08-31 13:08:38,308.308 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:08:38,571.571 INFO    ] Initializing speech engine...
[2026-08-31 13:08:38,577.577 INFO    ] 2026-08-31 13:08:38
[2026-08-31 13:08:38,878.878 INFO    ] 2026-08-31 13:08:38
[2026-08-31 13:08:38,914.914 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:08:39,124.124 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:08:39,176.176 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:08:39,358.358 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:08:39,408.408 INFO    ] time= 31/08/2026 13:08:39
[2026-08-31 13:08:39,445.445 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:08:39,462.462 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:08:39,597.597 INFO    ] No existing commands found in stream
[2026-08-31 13:08:44,619.619 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:08:44,622.622 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-08-31 13:08:45,139.139 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 13:08:45,141.141 INFO    ] Checking for system updates...
[2026-08-31 13:08:45,178.178 INFO    ] 200
[2026-08-31 13:08:45,181.181 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:08:45,233.233 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:08:45,236.236 INFO    ] No update needed
[2026-08-31 13:08:45,238.238 INFO    ] Checking for camera pi updates...
[2026-08-31 13:08:45,277.277 INFO    ] 200
[2026-08-31 13:08:45,279.279 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:08:45,320.320 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:08:45,406.406 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:08:45,408.408 INFO    ] No camera update needed
[2026-08-31 13:08:45,411.411 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:08:45,413.413 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:08:45,419.419 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:08:45,424.424 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:08:47,466.466 INFO    ] ================================================
[2026-08-31 13:08:47,481.481 INFO    ] Launching Daemon at Mon Aug 31 13:08:47 IST 2026
[2026-08-31 13:08:47,492.492 INFO    ] ================================================
[2026-08-31 13:08:48,080.080 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:08:48
[2026-08-31 13:08:48,687.687 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:08:48,974.974 INFO    ] Initializing speech engine...
[2026-08-31 13:08:48,986.986 INFO    ] 2026-08-31 13:08:48
[2026-08-31 13:08:49,263.263 INFO    ] 2026-08-31 13:08:49
[2026-08-31 13:08:49,300.300 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:08:49,500.500 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:08:49,514.514 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:08:49,661.661 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:08:49,683.683 INFO    ] time= 31/08/2026 13:08:49
[2026-08-31 13:08:49,691.691 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:08:49,697.697 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:08:49,782.782 INFO    ] No existing commands found in stream
[2026-08-31 13:08:54,812.812 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:08:54,815.815 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-08-31 13:08:58,501.501 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 13:08:58,503.503 INFO    ] Checking for system updates...
[2026-08-31 13:08:58,543.543 INFO    ] 200
[2026-08-31 13:08:58,546.546 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:08:58,600.600 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:08:58,603.603 INFO    ] No update needed
[2026-08-31 13:08:58,605.605 INFO    ] Checking for camera pi updates...
[2026-08-31 13:08:58,644.644 INFO    ] 200
[2026-08-31 13:08:58,647.647 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:08:58,689.689 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:08:58,769.769 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:08:58,772.772 INFO    ] No camera update needed
[2026-08-31 13:08:58,775.775 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:08:58,777.777 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:08:58,784.784 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:08:58,790.790 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:09:00,830.830 INFO    ] ================================================
[2026-08-31 13:09:00,845.845 INFO    ] Launching Daemon at Mon Aug 31 13:09:00 IST 2026
[2026-08-31 13:09:00,856.856 INFO    ] ================================================
[2026-08-31 13:09:01,511.511 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:09:01
[2026-08-31 13:09:02,227.227 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:09:02,606.606 INFO    ] Initializing speech engine...
[2026-08-31 13:09:02,618.618 INFO    ] 2026-08-31 13:09:02
[2026-08-31 13:09:02,945.945 INFO    ] 2026-08-31 13:09:02
[2026-08-31 13:09:03,057.057 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:09:03,247.247 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:09:03,252.252 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:09:03,408.408 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:09:03,464.464 INFO    ] time= 31/08/2026 13:09:03
[2026-08-31 13:09:03,507.507 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:09:03,548.548 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:09:03,647.647 INFO    ] No existing commands found in stream
[2026-08-31 13:09:08,683.683 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:09:08,686.686 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-08-31 13:09:09,216.216 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 13:09:09,219.219 INFO    ] Checking for system updates...
[2026-08-31 13:09:09,254.254 INFO    ] 200
[2026-08-31 13:09:09,256.256 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:09:09,314.314 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:09:09,316.316 INFO    ] No update needed
[2026-08-31 13:09:09,319.319 INFO    ] Checking for camera pi updates...
[2026-08-31 13:09:09,355.355 INFO    ] 200
[2026-08-31 13:09:09,358.358 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:09:09,398.398 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:09:09,482.482 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:09:09,484.484 INFO    ] No camera update needed
[2026-08-31 13:09:09,487.487 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:09:09,489.489 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:09:09,494.494 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:09:09,499.499 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:09:11,540.540 INFO    ] ================================================
[2026-08-31 13:09:11,555.555 INFO    ] Launching Daemon at Mon Aug 31 13:09:11 IST 2026
[2026-08-31 13:09:11,566.566 INFO    ] ================================================
[2026-08-31 13:09:12,210.210 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:09:12
[2026-08-31 13:09:12,876.876 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:09:13,176.176 INFO    ] Initializing speech engine...
[2026-08-31 13:09:13,186.186 INFO    ] 2026-08-31 13:09:13
[2026-08-31 13:09:13,462.462 INFO    ] 2026-08-31 13:09:13
[2026-08-31 13:09:13,517.517 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:09:13,747.747 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:09:13,753.753 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:09:13,980.980 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:09:14,012.012 INFO    ] time= 31/08/2026 13:09:13
[2026-08-31 13:09:14,029.029 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:09:14,038.038 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:09:14,225.225 INFO    ] No existing commands found in stream
[2026-08-31 13:09:19,250.250 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:09:19,254.254 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-08-31 13:09:23,141.141 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 13:09:23,144.144 INFO    ] Checking for system updates...
[2026-08-31 13:09:23,180.180 INFO    ] 200
[2026-08-31 13:09:23,183.183 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:09:23,236.236 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:09:23,239.239 INFO    ] No update needed
[2026-08-31 13:09:23,241.241 INFO    ] Checking for camera pi updates...
[2026-08-31 13:09:23,275.275 INFO    ] 200
[2026-08-31 13:09:23,278.278 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:09:23,319.319 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:09:23,391.391 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:09:23,393.393 INFO    ] No camera update needed
[2026-08-31 13:09:23,396.396 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:09:23,399.399 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:09:23,405.405 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:09:23,410.410 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:09:25,450.450 INFO    ] ================================================
[2026-08-31 13:09:25,464.464 INFO    ] Launching Daemon at Mon Aug 31 13:09:25 IST 2026
[2026-08-31 13:09:25,475.475 INFO    ] ================================================
[2026-08-31 13:09:26,063.063 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:09:26
[2026-08-31 13:09:26,664.664 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:09:26,936.936 INFO    ] Initializing speech engine...
[2026-08-31 13:09:26,946.946 INFO    ] 2026-08-31 13:09:26
[2026-08-31 13:09:27,195.195 INFO    ] 2026-08-31 13:09:27
[2026-08-31 13:09:27,230.230 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:09:27,480.480 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:09:27,490.490 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:09:27,713.713 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:09:27,747.747 INFO    ] time= 31/08/2026 13:09:27
[2026-08-31 13:09:27,753.753 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:09:27,772.772 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:09:27,902.902 INFO    ] No existing commands found in stream
[2026-08-31 13:09:32,913.913 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:09:32,916.916 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-08-31 13:09:34,671.671 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 13:09:34,674.674 INFO    ] Checking for system updates...
[2026-08-31 13:09:34,709.709 INFO    ] 200
[2026-08-31 13:09:34,712.712 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:09:34,763.763 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:09:34,766.766 INFO    ] No update needed
[2026-08-31 13:09:34,768.768 INFO    ] Checking for camera pi updates...
[2026-08-31 13:09:34,802.802 INFO    ] 200
[2026-08-31 13:09:34,804.804 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:09:34,849.849 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:09:34,929.929 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:09:34,931.931 INFO    ] No camera update needed
[2026-08-31 13:09:34,933.933 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:09:34,935.935 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:09:34,941.941 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:09:34,946.946 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:09:36,985.985 INFO    ] ================================================
[2026-08-31 13:09:37,000.000 INFO    ] Launching Daemon at Mon Aug 31 13:09:36 IST 2026
[2026-08-31 13:09:37,011.011 INFO    ] ================================================
[2026-08-31 13:09:37,654.654 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:09:37
[2026-08-31 13:09:38,300.300 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:09:38,574.574 INFO    ] Initializing speech engine...
[2026-08-31 13:09:38,580.580 INFO    ] 2026-08-31 13:09:38
[2026-08-31 13:09:38,842.842 INFO    ] 2026-08-31 13:09:38
[2026-08-31 13:09:38,895.895 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:09:39,176.176 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:09:39,184.184 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:09:39,369.369 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:09:39,385.385 INFO    ] time= 31/08/2026 13:09:39
[2026-08-31 13:09:39,403.403 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:09:39,415.415 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:09:39,538.538 INFO    ] No existing commands found in stream
[2026-08-31 13:09:44,561.561 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:09:44,564.564 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-08-31 13:09:45,701.701 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 13:09:45,703.703 INFO    ] Checking for system updates...
[2026-08-31 13:09:45,743.743 INFO    ] 200
[2026-08-31 13:09:45,746.746 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:09:45,804.804 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:09:45,808.808 INFO    ] No update needed
[2026-08-31 13:09:45,811.811 INFO    ] Checking for camera pi updates...
[2026-08-31 13:09:45,849.849 INFO    ] 200
[2026-08-31 13:09:45,852.852 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:09:45,898.898 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:09:45,974.974 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:09:45,976.976 INFO    ] No camera update needed
[2026-08-31 13:09:45,979.979 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:09:45,981.981 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:09:45,986.986 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:09:45,991.991 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:09:48,032.032 INFO    ] ================================================
[2026-08-31 13:09:48,048.048 INFO    ] Launching Daemon at Mon Aug 31 13:09:48 IST 2026
[2026-08-31 13:09:48,059.059 INFO    ] ================================================
[2026-08-31 13:09:48,628.628 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:09:48
[2026-08-31 13:09:49,208.208 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:09:49,463.463 INFO    ] Initializing speech engine...
[2026-08-31 13:09:49,470.470 INFO    ] 2026-08-31 13:09:49
[2026-08-31 13:09:49,762.762 INFO    ] 2026-08-31 13:09:49
[2026-08-31 13:09:49,797.797 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:09:50,084.084 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:09:50,093.093 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:09:50,247.247 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:09:50,307.307 INFO    ] time= 31/08/2026 13:09:50
[2026-08-31 13:09:50,361.361 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:09:50,393.393 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:09:50,526.526 INFO    ] No existing commands found in stream
[2026-08-31 13:09:55,551.551 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:09:55,554.554 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-08-31 13:09:56,472.472 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 13:09:56,475.475 INFO    ] Checking for system updates...
[2026-08-31 13:09:56,513.513 INFO    ] 200
[2026-08-31 13:09:56,516.516 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:09:56,567.567 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:09:56,570.570 INFO    ] No update needed
[2026-08-31 13:09:56,573.573 INFO    ] Checking for camera pi updates...
[2026-08-31 13:09:56,606.606 INFO    ] 200
[2026-08-31 13:09:56,608.608 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:09:56,650.650 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:09:56,734.734 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:09:56,737.737 INFO    ] No camera update needed
[2026-08-31 13:09:56,739.739 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:09:56,742.742 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:09:56,747.747 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:09:56,752.752 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:09:58,792.792 INFO    ] ================================================
[2026-08-31 13:09:58,807.807 INFO    ] Launching Daemon at Mon Aug 31 13:09:58 IST 2026
[2026-08-31 13:09:58,818.818 INFO    ] ================================================
[2026-08-31 13:09:59,461.461 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:09:59
[2026-08-31 13:10:00,123.123 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:10:00,421.421 INFO    ] Initializing speech engine...
[2026-08-31 13:10:00,428.428 INFO    ] 2026-08-31 13:10:00
[2026-08-31 13:10:00,701.701 INFO    ] 2026-08-31 13:10:00
[2026-08-31 13:10:00,756.756 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:10:00,984.984 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:10:00,991.991 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:10:01,213.213 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:10:01,233.233 INFO    ] time= 31/08/2026 13:10:01
[2026-08-31 13:10:01,271.271 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:10:01,291.291 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:10:01,420.420 INFO    ] No existing commands found in stream
[2026-08-31 13:10:06,430.430 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:10:06,433.433 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-08-31 13:10:08,810.810 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 13:10:08,814.814 INFO    ] Checking for system updates...
[2026-08-31 13:10:08,858.858 INFO    ] 200
[2026-08-31 13:10:08,861.861 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:10:08,915.915 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:10:08,918.918 INFO    ] No update needed
[2026-08-31 13:10:08,921.921 INFO    ] Checking for camera pi updates...
[2026-08-31 13:10:08,960.960 INFO    ] 200
[2026-08-31 13:10:08,962.962 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:10:09,008.008 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:10:09,104.104 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:10:09,107.107 INFO    ] No camera update needed
[2026-08-31 13:10:09,110.110 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:10:09,113.113 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:10:09,119.119 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:10:09,125.125 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:10:11,166.166 INFO    ] ================================================
[2026-08-31 13:10:11,181.181 INFO    ] Launching Daemon at Mon Aug 31 13:10:11 IST 2026
[2026-08-31 13:10:11,191.191 INFO    ] ================================================
[2026-08-31 13:10:11,772.772 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:10:11
[2026-08-31 13:10:12,374.374 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:10:12,623.623 INFO    ] Initializing speech engine...
[2026-08-31 13:10:12,646.646 INFO    ] 2026-08-31 13:10:12
[2026-08-31 13:10:12,901.901 INFO    ] 2026-08-31 13:10:12
[2026-08-31 13:10:12,934.934 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:10:13,262.262 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:10:13,271.271 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:10:13,466.466 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:10:13,484.484 INFO    ] time= 31/08/2026 13:10:13
[2026-08-31 13:10:13,494.494 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:10:13,520.520 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:10:13,688.688 INFO    ] No existing commands found in stream
[2026-08-31 13:10:18,713.713 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:10:18,715.715 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-08-31 13:10:20,526.526 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 13:10:20,529.529 INFO    ] Checking for system updates...
[2026-08-31 13:10:20,570.570 INFO    ] 200
[2026-08-31 13:10:20,573.573 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:10:20,627.627 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:10:20,630.630 INFO    ] No update needed
[2026-08-31 13:10:20,633.633 INFO    ] Checking for camera pi updates...
[2026-08-31 13:10:20,671.671 INFO    ] 200
[2026-08-31 13:10:20,674.674 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:10:20,720.720 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:10:20,826.826 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:10:20,828.828 INFO    ] No camera update needed
[2026-08-31 13:10:20,831.831 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:10:20,833.833 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:10:20,838.838 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:10:20,843.843 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:10:22,883.883 INFO    ] ================================================
[2026-08-31 13:10:22,898.898 INFO    ] Launching Daemon at Mon Aug 31 13:10:22 IST 2026
[2026-08-31 13:10:22,910.910 INFO    ] ================================================
[2026-08-31 13:10:23,534.534 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:10:23
[2026-08-31 13:10:24,118.118 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:10:24,368.368 INFO    ] Initializing speech engine...
[2026-08-31 13:10:24,389.389 INFO    ] 2026-08-31 13:10:24
[2026-08-31 13:10:24,649.649 INFO    ] 2026-08-31 13:10:24
[2026-08-31 13:10:24,685.685 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:10:24,947.947 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:10:24,956.956 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:10:25,183.183 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:10:25,220.220 INFO    ] time= 31/08/2026 13:10:25
[2026-08-31 13:10:25,238.238 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:10:25,247.247 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:10:25,402.402 INFO    ] No existing commands found in stream
[2026-08-31 13:10:30,432.432 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:10:30,435.435 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-08-31 13:10:33,631.631 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 13:10:33,634.634 INFO    ] Checking for system updates...
[2026-08-31 13:10:33,669.669 INFO    ] 200
[2026-08-31 13:10:33,671.671 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:10:33,723.723 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:10:33,725.725 INFO    ] No update needed
[2026-08-31 13:10:33,728.728 INFO    ] Checking for camera pi updates...
[2026-08-31 13:10:33,762.762 INFO    ] 200
[2026-08-31 13:10:33,765.765 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:10:33,805.805 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:10:33,888.888 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:10:33,891.891 INFO    ] No camera update needed
[2026-08-31 13:10:33,893.893 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:10:33,895.895 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:10:33,901.901 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:10:33,906.906 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:10:35,948.948 INFO    ] ================================================
[2026-08-31 13:10:35,963.963 INFO    ] Launching Daemon at Mon Aug 31 13:10:35 IST 2026
[2026-08-31 13:10:35,974.974 INFO    ] ================================================
[2026-08-31 13:10:36,592.592 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:10:36
[2026-08-31 13:10:37,269.269 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:10:37,581.581 INFO    ] Initializing speech engine...
[2026-08-31 13:10:37,592.592 INFO    ] 2026-08-31 13:10:37
[2026-08-31 13:10:37,904.904 INFO    ] 2026-08-31 13:10:37
[2026-08-31 13:10:37,990.990 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:10:38,146.146 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:10:38,152.152 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:10:38,375.375 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:10:38,457.457 INFO    ] time= 31/08/2026 13:10:38
[2026-08-31 13:10:38,466.466 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:10:38,510.510 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:10:38,667.667 INFO    ] No existing commands found in stream
[2026-08-31 13:10:43,679.679 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:10:43,682.682 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-08-31 13:10:46,407.407 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 13:10:46,411.411 INFO    ] Checking for system updates...
[2026-08-31 13:10:46,448.448 INFO    ] 200
[2026-08-31 13:10:46,451.451 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:10:46,503.503 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:10:46,506.506 INFO    ] No update needed
[2026-08-31 13:10:46,508.508 INFO    ] Checking for camera pi updates...
[2026-08-31 13:10:46,543.543 INFO    ] 200
[2026-08-31 13:10:46,545.545 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:10:46,592.592 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:10:46,774.774 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:10:46,777.777 INFO    ] No camera update needed
[2026-08-31 13:10:46,779.779 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:10:46,782.782 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:10:46,787.787 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:10:46,792.792 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:10:48,834.834 INFO    ] ================================================
[2026-08-31 13:10:48,850.850 INFO    ] Launching Daemon at Mon Aug 31 13:10:48 IST 2026
[2026-08-31 13:10:48,861.861 INFO    ] ================================================
[2026-08-31 13:10:49,425.425 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:10:49
[2026-08-31 13:10:50,009.009 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:10:50,274.274 INFO    ] Initializing speech engine...
[2026-08-31 13:10:50,287.287 INFO    ] 2026-08-31 13:10:50
[2026-08-31 13:10:50,535.535 INFO    ] 2026-08-31 13:10:50
[2026-08-31 13:10:50,569.569 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:10:50,827.827 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:10:50,836.836 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:10:51,037.037 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:10:51,092.092 INFO    ] time= 31/08/2026 13:10:51
[2026-08-31 13:10:51,105.105 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:10:51,120.120 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:10:51,257.257 INFO    ] No existing commands found in stream
[2026-08-31 13:10:56,269.269 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:10:56,272.272 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-08-31 13:11:00,691.691 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 13:11:00,694.694 INFO    ] Checking for system updates...
[2026-08-31 13:11:00,731.731 INFO    ] 200
[2026-08-31 13:11:00,733.733 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:11:00,787.787 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:11:00,790.790 INFO    ] No update needed
[2026-08-31 13:11:00,793.793 INFO    ] Checking for camera pi updates...
[2026-08-31 13:11:00,828.828 INFO    ] 200
[2026-08-31 13:11:00,831.831 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:11:00,872.872 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:11:00,958.958 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:11:00,961.961 INFO    ] No camera update needed
[2026-08-31 13:11:00,964.964 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:11:00,966.966 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:11:00,973.973 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:11:00,979.979 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:11:03,036.036 INFO    ] ================================================
[2026-08-31 13:11:03,059.059 INFO    ] Launching Daemon at Mon Aug 31 13:11:03 IST 2026
[2026-08-31 13:11:03,074.074 INFO    ] ================================================
[2026-08-31 13:11:03,752.752 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:11:03
[2026-08-31 13:11:04,357.357 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:11:04,619.619 INFO    ] Initializing speech engine...
[2026-08-31 13:11:04,633.633 INFO    ] 2026-08-31 13:11:04
[2026-08-31 13:11:04,890.890 INFO    ] 2026-08-31 13:11:04
[2026-08-31 13:11:04,924.924 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:11:05,182.182 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:11:05,192.192 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:11:05,329.329 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:11:05,399.399 INFO    ] time= 31/08/2026 13:11:05
[2026-08-31 13:11:05,454.454 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:11:05,466.466 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:11:05,617.617 INFO    ] No existing commands found in stream
[2026-08-31 13:11:10,631.631 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:11:10,634.634 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-08-31 13:11:11,790.790 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 13:11:11,793.793 INFO    ] Checking for system updates...
[2026-08-31 13:11:11,832.832 INFO    ] 200
[2026-08-31 13:11:11,834.834 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:11:11,887.887 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:11:11,890.890 INFO    ] No update needed
[2026-08-31 13:11:11,892.892 INFO    ] Checking for camera pi updates...
[2026-08-31 13:11:11,926.926 INFO    ] 200
[2026-08-31 13:11:11,929.929 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:11:11,974.974 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:11:12,045.045 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:11:12,047.047 INFO    ] No camera update needed
[2026-08-31 13:11:12,050.050 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:11:12,052.052 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:11:12,057.057 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:11:12,062.062 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:11:14,102.102 INFO    ] ================================================
[2026-08-31 13:11:14,118.118 INFO    ] Launching Daemon at Mon Aug 31 13:11:14 IST 2026
[2026-08-31 13:11:14,129.129 INFO    ] ================================================
[2026-08-31 13:11:14,709.709 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:11:14
[2026-08-31 13:11:15,298.298 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:11:15,569.569 INFO    ] Initializing speech engine...
[2026-08-31 13:11:15,575.575 INFO    ] 2026-08-31 13:11:15
[2026-08-31 13:11:15,818.818 INFO    ] 2026-08-31 13:11:15
[2026-08-31 13:11:15,882.882 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:11:16,108.108 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:11:16,114.114 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:11:16,332.332 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:11:16,369.369 INFO    ] time= 31/08/2026 13:11:16
[2026-08-31 13:11:16,375.375 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:11:16,393.393 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:11:16,524.524 INFO    ] No existing commands found in stream
[2026-08-31 13:11:21,538.538 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:11:21,541.541 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-08-31 13:11:24,965.965 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 13:11:24,968.968 INFO    ] Checking for system updates...
[2026-08-31 13:11:25,003.003 INFO    ] 200
[2026-08-31 13:11:25,006.006 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:11:25,059.059 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:11:25,062.062 INFO    ] No update needed
[2026-08-31 13:11:25,064.064 INFO    ] Checking for camera pi updates...
[2026-08-31 13:11:25,101.101 INFO    ] 200
[2026-08-31 13:11:25,103.103 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:11:25,143.143 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:11:25,230.230 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:11:25,232.232 INFO    ] No camera update needed
[2026-08-31 13:11:25,235.235 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:11:25,237.237 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:11:25,242.242 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:11:25,247.247 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:11:27,287.287 INFO    ] ================================================
[2026-08-31 13:11:27,304.304 INFO    ] Launching Daemon at Mon Aug 31 13:11:27 IST 2026
[2026-08-31 13:11:27,315.315 INFO    ] ================================================
[2026-08-31 13:11:27,881.881 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:11:27
[2026-08-31 13:11:28,469.469 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:11:28,743.743 INFO    ] Initializing speech engine...
[2026-08-31 13:11:28,762.762 INFO    ] 2026-08-31 13:11:28
[2026-08-31 13:11:29,028.028 INFO    ] 2026-08-31 13:11:29
[2026-08-31 13:11:29,074.074 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:11:29,326.326 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:11:29,337.337 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:11:29,556.556 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:11:29,602.602 INFO    ] time= 31/08/2026 13:11:29
[2026-08-31 13:11:29,621.621 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:11:29,631.631 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:11:29,764.764 INFO    ] No existing commands found in stream
[2026-08-31 13:11:34,783.783 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:11:34,786.786 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-08-31 13:11:36,809.809 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 13:11:36,812.812 INFO    ] Checking for system updates...
[2026-08-31 13:11:36,849.849 INFO    ] 200
[2026-08-31 13:11:36,852.852 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:11:36,907.907 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:11:36,909.909 INFO    ] No update needed
[2026-08-31 13:11:36,912.912 INFO    ] Checking for camera pi updates...
[2026-08-31 13:11:36,946.946 INFO    ] 200
[2026-08-31 13:11:36,948.948 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:11:36,988.988 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:11:37,073.073 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:11:37,075.075 INFO    ] No camera update needed
[2026-08-31 13:11:37,078.078 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:11:37,080.080 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:11:37,086.086 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:11:37,091.091 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:11:39,132.132 INFO    ] ================================================
[2026-08-31 13:11:39,147.147 INFO    ] Launching Daemon at Mon Aug 31 13:11:39 IST 2026
[2026-08-31 13:11:39,158.158 INFO    ] ================================================
[2026-08-31 13:11:39,805.805 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:11:39
[2026-08-31 13:11:40,470.470 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:11:40,766.766 INFO    ] Initializing speech engine...
[2026-08-31 13:11:40,776.776 INFO    ] 2026-08-31 13:11:40
[2026-08-31 13:11:41,051.051 INFO    ] 2026-08-31 13:11:41
[2026-08-31 13:11:41,111.111 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:11:41,409.409 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:11:41,414.414 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:11:41,618.618 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:11:41,628.628 INFO    ] time= 31/08/2026 13:11:41
[2026-08-31 13:11:41,647.647 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:11:41,676.676 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:11:41,837.837 INFO    ] No existing commands found in stream
[2026-08-31 13:11:46,863.863 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:11:46,866.866 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-08-31 13:11:51,030.030 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 13:11:51,033.033 INFO    ] Checking for system updates...
[2026-08-31 13:11:51,074.074 INFO    ] 200
[2026-08-31 13:11:51,077.077 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:11:51,139.139 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:11:51,142.142 INFO    ] No update needed
[2026-08-31 13:11:51,145.145 INFO    ] Checking for camera pi updates...
[2026-08-31 13:11:51,180.180 INFO    ] 200
[2026-08-31 13:11:51,183.183 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:11:51,224.224 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:11:51,303.303 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:11:51,305.305 INFO    ] No camera update needed
[2026-08-31 13:11:51,308.308 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:11:51,310.310 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:11:51,316.316 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:11:51,321.321 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:11:53,362.362 INFO    ] ================================================
[2026-08-31 13:11:53,377.377 INFO    ] Launching Daemon at Mon Aug 31 13:11:53 IST 2026
[2026-08-31 13:11:53,388.388 INFO    ] ================================================
[2026-08-31 13:11:53,992.992 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:11:53
[2026-08-31 13:11:54,579.579 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:11:54,846.846 INFO    ] Initializing speech engine...
[2026-08-31 13:11:54,855.855 INFO    ] 2026-08-31 13:11:54
[2026-08-31 13:11:55,117.117 INFO    ] 2026-08-31 13:11:55
[2026-08-31 13:11:55,169.169 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:11:55,390.390 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:11:55,399.399 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:11:55,622.622 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:11:55,656.656 INFO    ] time= 31/08/2026 13:11:55
[2026-08-31 13:11:55,662.662 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:11:55,678.678 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:11:55,805.805 INFO    ] No existing commands found in stream
[2026-08-31 13:12:00,821.821 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:12:00,824.824 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-08-31 13:12:04,911.911 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 13:12:04,913.913 INFO    ] Checking for system updates...
[2026-08-31 13:12:04,949.949 INFO    ] 200
[2026-08-31 13:12:04,952.952 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:12:05,010.010 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:12:05,012.012 INFO    ] No update needed
[2026-08-31 13:12:05,014.014 INFO    ] Checking for camera pi updates...
[2026-08-31 13:12:05,047.047 INFO    ] 200
[2026-08-31 13:12:05,050.050 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:12:05,090.090 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:12:05,179.179 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:12:05,181.181 INFO    ] No camera update needed
[2026-08-31 13:12:05,183.183 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:12:05,185.185 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:12:05,191.191 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:12:05,196.196 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:12:07,236.236 INFO    ] ================================================
[2026-08-31 13:12:07,251.251 INFO    ] Launching Daemon at Mon Aug 31 13:12:07 IST 2026
[2026-08-31 13:12:07,262.262 INFO    ] ================================================
[2026-08-31 13:12:07,827.827 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:12:07
[2026-08-31 13:12:08,409.409 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:12:08,660.660 INFO    ] Initializing speech engine...
[2026-08-31 13:12:08,666.666 INFO    ] 2026-08-31 13:12:08
[2026-08-31 13:12:08,950.950 INFO    ] 2026-08-31 13:12:08
[2026-08-31 13:12:08,986.986 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:12:09,184.184 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:12:09,191.191 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:12:09,392.392 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:12:09,452.452 INFO    ] time= 31/08/2026 13:12:09
[2026-08-31 13:12:09,501.501 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:12:09,525.525 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:12:09,677.677 INFO    ] No existing commands found in stream
[2026-08-31 13:12:14,696.696 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:12:14,699.699 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-08-31 13:12:16,246.246 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 13:12:16,249.249 INFO    ] Checking for system updates...
[2026-08-31 13:12:16,288.288 INFO    ] 200
[2026-08-31 13:12:16,290.290 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:12:16,342.342 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:12:16,345.345 INFO    ] No update needed
[2026-08-31 13:12:16,347.347 INFO    ] Checking for camera pi updates...
[2026-08-31 13:12:16,380.380 INFO    ] 200
[2026-08-31 13:12:16,383.383 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:12:16,422.422 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:12:16,507.507 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:12:16,509.509 INFO    ] No camera update needed
[2026-08-31 13:12:16,512.512 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:12:16,514.514 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:12:16,519.519 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:12:16,524.524 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:12:18,573.573 INFO    ] ================================================
[2026-08-31 13:12:18,588.588 INFO    ] Launching Daemon at Mon Aug 31 13:12:18 IST 2026
[2026-08-31 13:12:18,599.599 INFO    ] ================================================
[2026-08-31 13:12:19,182.182 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:12:19
[2026-08-31 13:12:19,778.778 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:12:20,045.045 INFO    ] Initializing speech engine...
[2026-08-31 13:12:20,055.055 INFO    ] 2026-08-31 13:12:20
[2026-08-31 13:12:20,316.316 INFO    ] 2026-08-31 13:12:20
[2026-08-31 13:12:20,370.370 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:12:20,655.655 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:12:20,664.664 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:12:20,856.856 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:12:20,877.877 INFO    ] time= 31/08/2026 13:12:20
[2026-08-31 13:12:20,903.903 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:12:20,911.911 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:12:21,042.042 INFO    ] No existing commands found in stream
[2026-08-31 13:12:26,072.072 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:12:26,075.075 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-08-31 13:12:28,248.248 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 13:12:28,250.250 INFO    ] Checking for system updates...
[2026-08-31 13:12:28,287.287 INFO    ] 200
[2026-08-31 13:12:28,290.290 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:12:28,344.344 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:12:28,346.346 INFO    ] No update needed
[2026-08-31 13:12:28,349.349 INFO    ] Checking for camera pi updates...
[2026-08-31 13:12:28,387.387 INFO    ] 200
[2026-08-31 13:12:28,389.389 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:12:28,435.435 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:12:28,520.520 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:12:28,522.522 INFO    ] No camera update needed
[2026-08-31 13:12:28,524.524 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:12:28,527.527 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:12:28,532.532 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:12:28,537.537 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:12:30,579.579 INFO    ] ================================================
[2026-08-31 13:12:30,594.594 INFO    ] Launching Daemon at Mon Aug 31 13:12:30 IST 2026
[2026-08-31 13:12:30,606.606 INFO    ] ================================================
[2026-08-31 13:12:31,244.244 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:12:31
[2026-08-31 13:12:31,903.903 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:12:32,236.236 INFO    ] Initializing speech engine...
[2026-08-31 13:12:32,249.249 INFO    ] 2026-08-31 13:12:32
[2026-08-31 13:12:32,515.515 INFO    ] 2026-08-31 13:12:32
[2026-08-31 13:12:32,552.552 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:12:32,765.765 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:12:32,779.779 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:12:32,952.952 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:12:32,958.958 INFO    ] time= 31/08/2026 13:12:32
[2026-08-31 13:12:32,965.965 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:12:32,988.988 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:12:33,056.056 INFO    ] No existing commands found in stream
[2026-08-31 13:12:38,076.076 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:12:38,079.079 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-08-31 13:12:44,188.188 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 13:12:44,190.190 INFO    ] Checking for system updates...
[2026-08-31 13:12:44,231.231 INFO    ] 200
[2026-08-31 13:12:44,233.233 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:12:44,287.287 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:12:44,290.290 INFO    ] No update needed
[2026-08-31 13:12:44,292.292 INFO    ] Checking for camera pi updates...
[2026-08-31 13:12:44,328.328 INFO    ] 200
[2026-08-31 13:12:44,331.331 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:12:44,372.372 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:12:44,458.458 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:12:44,461.461 INFO    ] No camera update needed
[2026-08-31 13:12:44,463.463 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:12:44,465.465 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:12:44,470.470 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:12:44,475.475 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:12:46,515.515 INFO    ] ================================================
[2026-08-31 13:12:46,530.530 INFO    ] Launching Daemon at Mon Aug 31 13:12:46 IST 2026
[2026-08-31 13:12:46,541.541 INFO    ] ================================================
[2026-08-31 13:12:47,171.171 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:12:47
[2026-08-31 13:12:47,819.819 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:12:48,114.114 INFO    ] Initializing speech engine...
[2026-08-31 13:12:48,127.127 INFO    ] 2026-08-31 13:12:48
[2026-08-31 13:12:48,434.434 INFO    ] 2026-08-31 13:12:48
[2026-08-31 13:12:48,508.508 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:12:48,730.730 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:12:48,738.738 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:12:48,920.920 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:12:48,937.937 INFO    ] time= 31/08/2026 13:12:48
[2026-08-31 13:12:48,959.959 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:12:48,984.984 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:12:49,116.116 INFO    ] No existing commands found in stream
[2026-08-31 13:12:54,142.142 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:12:54,145.145 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-08-31 13:12:56,806.806 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 13:12:56,809.809 INFO    ] Checking for system updates...
[2026-08-31 13:12:56,845.845 INFO    ] 200
[2026-08-31 13:12:56,848.848 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:12:56,906.906 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:12:56,909.909 INFO    ] No update needed
[2026-08-31 13:12:56,912.912 INFO    ] Checking for camera pi updates...
[2026-08-31 13:12:56,946.946 INFO    ] 200
[2026-08-31 13:12:56,949.949 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:12:56,989.989 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:12:57,169.169 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:12:57,172.172 INFO    ] No camera update needed
[2026-08-31 13:12:57,174.174 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:12:57,177.177 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:12:57,183.183 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:12:57,188.188 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:12:59,229.229 INFO    ] ================================================
[2026-08-31 13:12:59,245.245 INFO    ] Launching Daemon at Mon Aug 31 13:12:59 IST 2026
[2026-08-31 13:12:59,255.255 INFO    ] ================================================
[2026-08-31 13:12:59,839.839 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:12:59
[2026-08-31 13:13:00,422.422 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:13:00,690.690 INFO    ] Initializing speech engine...
[2026-08-31 13:13:00,710.710 INFO    ] 2026-08-31 13:13:00
[2026-08-31 13:13:00,972.972 INFO    ] 2026-08-31 13:13:00
[2026-08-31 13:13:01,008.008 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:13:01,224.224 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:13:01,232.232 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:13:01,445.445 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:13:01,452.452 INFO    ] time= 31/08/2026 13:13:01
[2026-08-31 13:13:01,506.506 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:13:01,560.560 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:13:01,715.715 INFO    ] No existing commands found in stream
[2026-08-31 13:13:06,738.738 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:13:06,741.741 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-08-31 13:13:09,772.772 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 13:13:09,774.774 INFO    ] Checking for system updates...
[2026-08-31 13:13:09,811.811 INFO    ] 200
[2026-08-31 13:13:09,813.813 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:13:09,865.865 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:13:09,867.867 INFO    ] No update needed
[2026-08-31 13:13:09,869.869 INFO    ] Checking for camera pi updates...
[2026-08-31 13:13:09,905.905 INFO    ] 200
[2026-08-31 13:13:09,908.908 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:13:09,949.949 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:13:10,050.050 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:13:10,052.052 INFO    ] No camera update needed
[2026-08-31 13:13:10,054.054 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:13:10,057.057 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:13:10,062.062 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:13:10,067.067 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:13:12,107.107 INFO    ] ================================================
[2026-08-31 13:13:12,123.123 INFO    ] Launching Daemon at Mon Aug 31 13:13:12 IST 2026
[2026-08-31 13:13:12,133.133 INFO    ] ================================================
[2026-08-31 13:13:12,696.696 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:13:12
[2026-08-31 13:13:13,278.278 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:13:13,536.536 INFO    ] Initializing speech engine...
[2026-08-31 13:13:13,555.555 INFO    ] 2026-08-31 13:13:13
[2026-08-31 13:13:13,804.804 INFO    ] 2026-08-31 13:13:13
[2026-08-31 13:13:13,838.838 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:13:14,087.087 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:13:14,104.104 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:13:14,341.341 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:13:14,373.373 INFO    ] time= 31/08/2026 13:13:14
[2026-08-31 13:13:14,387.387 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:13:14,397.397 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:13:14,507.507 INFO    ] No existing commands found in stream
[2026-08-31 13:13:19,534.534 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:13:19,537.537 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-08-31 13:13:21,267.267 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 13:13:21,269.269 INFO    ] Checking for system updates...
[2026-08-31 13:13:21,305.305 INFO    ] 200
[2026-08-31 13:13:21,307.307 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:13:21,364.364 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:13:21,367.367 INFO    ] No update needed
[2026-08-31 13:13:21,369.369 INFO    ] Checking for camera pi updates...
[2026-08-31 13:13:21,403.403 INFO    ] 200
[2026-08-31 13:13:21,405.405 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:13:21,445.445 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:13:21,550.550 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:13:21,553.553 INFO    ] No camera update needed
[2026-08-31 13:13:21,555.555 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:13:21,557.557 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:13:21,563.563 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:13:21,567.567 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:13:23,608.608 INFO    ] ================================================
[2026-08-31 13:13:23,623.623 INFO    ] Launching Daemon at Mon Aug 31 13:13:23 IST 2026
[2026-08-31 13:13:23,634.634 INFO    ] ================================================
[2026-08-31 13:13:24,222.222 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:13:24
[2026-08-31 13:13:24,821.821 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:13:25,073.073 INFO    ] Initializing speech engine...
[2026-08-31 13:13:25,082.082 INFO    ] 2026-08-31 13:13:25
[2026-08-31 13:13:25,374.374 INFO    ] 2026-08-31 13:13:25
[2026-08-31 13:13:25,410.410 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:13:25,611.611 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:13:25,629.629 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:13:25,846.846 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:13:25,868.868 INFO    ] time= 31/08/2026 13:13:25
[2026-08-31 13:13:25,922.922 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:13:25,987.987 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:13:26,125.125 INFO    ] No existing commands found in stream
[2026-08-31 13:13:31,150.150 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:13:31,153.153 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-08-31 13:13:32,584.584 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 13:13:32,588.588 INFO    ] Checking for system updates...
[2026-08-31 13:13:32,626.626 INFO    ] 200
[2026-08-31 13:13:32,629.629 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:13:32,686.686 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:13:32,688.688 INFO    ] No update needed
[2026-08-31 13:13:32,691.691 INFO    ] Checking for camera pi updates...
[2026-08-31 13:13:32,730.730 INFO    ] 200
[2026-08-31 13:13:32,733.733 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:13:32,782.782 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:13:32,862.862 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:13:32,865.865 INFO    ] No camera update needed
[2026-08-31 13:13:32,867.867 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:13:32,870.870 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:13:32,876.876 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:13:32,881.881 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:13:34,921.921 INFO    ] ================================================
[2026-08-31 13:13:34,936.936 INFO    ] Launching Daemon at Mon Aug 31 13:13:34 IST 2026
[2026-08-31 13:13:34,946.946 INFO    ] ================================================
[2026-08-31 13:13:35,522.522 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:13:35
[2026-08-31 13:13:36,115.115 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:13:36,389.389 INFO    ] Initializing speech engine...
[2026-08-31 13:13:36,393.393 INFO    ] 2026-08-31 13:13:36
[2026-08-31 13:13:36,653.653 INFO    ] 2026-08-31 13:13:36
[2026-08-31 13:13:36,708.708 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:13:36,988.988 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:13:36,996.996 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:13:37,234.234 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:13:37,242.242 INFO    ] time= 31/08/2026 13:13:37
[2026-08-31 13:13:37,250.250 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:13:37,299.299 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:13:37,431.431 INFO    ] No existing commands found in stream
[2026-08-31 13:13:42,453.453 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:13:42,456.456 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-08-31 13:13:44,528.528 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 13:13:44,531.531 INFO    ] Checking for system updates...
[2026-08-31 13:13:44,566.566 INFO    ] 200
[2026-08-31 13:13:44,569.569 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:13:44,621.621 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:13:44,623.623 INFO    ] No update needed
[2026-08-31 13:13:44,626.626 INFO    ] Checking for camera pi updates...
[2026-08-31 13:13:44,659.659 INFO    ] 200
[2026-08-31 13:13:44,662.662 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:13:44,705.705 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:13:44,779.779 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:13:44,782.782 INFO    ] No camera update needed
[2026-08-31 13:13:44,784.784 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:13:44,786.786 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:13:44,792.792 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:13:44,797.797 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:13:46,837.837 INFO    ] ================================================
[2026-08-31 13:13:46,852.852 INFO    ] Launching Daemon at Mon Aug 31 13:13:46 IST 2026
[2026-08-31 13:13:46,863.863 INFO    ] ================================================
[2026-08-31 13:13:47,481.481 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:13:47
[2026-08-31 13:13:48,120.120 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:13:48,405.405 INFO    ] Initializing speech engine...
[2026-08-31 13:13:48,414.414 INFO    ] 2026-08-31 13:13:48
[2026-08-31 13:13:48,675.675 INFO    ] 2026-08-31 13:13:48
[2026-08-31 13:13:48,737.737 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:13:48,985.985 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:13:48,990.990 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:13:49,217.217 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:13:49,225.225 INFO    ] time= 31/08/2026 13:13:49
[2026-08-31 13:13:49,246.246 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:13:49,300.300 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:13:49,468.468 INFO    ] No existing commands found in stream
[2026-08-31 13:13:54,486.486 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:13:54,489.489 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-08-31 13:13:56,529.529 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 13:13:56,532.532 INFO    ] Checking for system updates...
[2026-08-31 13:13:56,571.571 INFO    ] 200
[2026-08-31 13:13:56,573.573 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:13:56,631.631 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:13:56,634.634 INFO    ] No update needed
[2026-08-31 13:13:56,637.637 INFO    ] Checking for camera pi updates...
[2026-08-31 13:13:56,673.673 INFO    ] 200
[2026-08-31 13:13:56,676.676 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:13:56,721.721 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:13:56,817.817 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:13:56,820.820 INFO    ] No camera update needed
[2026-08-31 13:13:56,822.822 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:13:56,825.825 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:13:56,831.831 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:13:56,836.836 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:13:58,876.876 INFO    ] ================================================
[2026-08-31 13:13:58,891.891 INFO    ] Launching Daemon at Mon Aug 31 13:13:58 IST 2026
[2026-08-31 13:13:58,902.902 INFO    ] ================================================
[2026-08-31 13:13:59,467.467 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:13:59
[2026-08-31 13:14:00,058.058 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:14:00,326.326 INFO    ] Initializing speech engine...
[2026-08-31 13:14:00,332.332 INFO    ] 2026-08-31 13:14:00
[2026-08-31 13:14:00,576.576 INFO    ] 2026-08-31 13:14:00
[2026-08-31 13:14:00,611.611 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:14:00,860.860 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:14:00,869.869 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:14:01,007.007 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:14:01,076.076 INFO    ] time= 31/08/2026 13:14:01
[2026-08-31 13:14:01,128.128 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:14:01,134.134 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:14:01,280.280 INFO    ] No existing commands found in stream
[2026-08-31 13:14:06,298.298 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:14:06,301.301 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-08-31 13:14:07,614.614 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 13:14:07,616.616 INFO    ] Checking for system updates...
[2026-08-31 13:14:07,652.652 INFO    ] 200
[2026-08-31 13:14:07,654.654 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:14:07,710.710 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:14:07,713.713 INFO    ] No update needed
[2026-08-31 13:14:07,715.715 INFO    ] Checking for camera pi updates...
[2026-08-31 13:14:07,750.750 INFO    ] 200
[2026-08-31 13:14:07,753.753 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:14:07,793.793 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:14:07,877.877 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:14:07,879.879 INFO    ] No camera update needed
[2026-08-31 13:14:07,881.881 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:14:07,884.884 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:14:07,889.889 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:14:07,894.894 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:14:09,933.933 INFO    ] ================================================
[2026-08-31 13:14:09,948.948 INFO    ] Launching Daemon at Mon Aug 31 13:14:09 IST 2026
[2026-08-31 13:14:09,959.959 INFO    ] ================================================
[2026-08-31 13:14:10,538.538 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:14:10
[2026-08-31 13:14:11,134.134 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:14:11,418.418 INFO    ] Initializing speech engine...
[2026-08-31 13:14:11,426.426 INFO    ] 2026-08-31 13:14:11
[2026-08-31 13:14:11,689.689 INFO    ] 2026-08-31 13:14:11
[2026-08-31 13:14:11,726.726 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:14:11,943.943 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:14:11,966.966 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:14:12,168.168 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:14:12,209.209 INFO    ] time= 31/08/2026 13:14:12
[2026-08-31 13:14:12,243.243 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:14:12,292.292 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:14:12,372.372 INFO    ] No existing commands found in stream
[2026-08-31 13:14:17,384.384 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:14:17,387.387 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-08-31 13:14:19,730.730 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 13:14:19,733.733 INFO    ] Checking for system updates...
[2026-08-31 13:14:19,769.769 INFO    ] 200
[2026-08-31 13:14:19,772.772 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:14:19,825.825 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:14:19,828.828 INFO    ] No update needed
[2026-08-31 13:14:19,831.831 INFO    ] Checking for camera pi updates...
[2026-08-31 13:14:19,868.868 INFO    ] 200
[2026-08-31 13:14:19,871.871 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:14:19,913.913 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:14:20,016.016 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:14:20,019.019 INFO    ] No camera update needed
[2026-08-31 13:14:20,022.022 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:14:20,024.024 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:14:20,031.031 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:14:20,036.036 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:14:22,077.077 INFO    ] ================================================
[2026-08-31 13:14:22,092.092 INFO    ] Launching Daemon at Mon Aug 31 13:14:22 IST 2026
[2026-08-31 13:14:22,103.103 INFO    ] ================================================
[2026-08-31 13:14:22,677.677 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:14:22
[2026-08-31 13:14:23,275.275 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:14:23,545.545 INFO    ] Initializing speech engine...
[2026-08-31 13:14:23,562.562 INFO    ] 2026-08-31 13:14:23
[2026-08-31 13:14:23,831.831 INFO    ] 2026-08-31 13:14:23
[2026-08-31 13:14:23,867.867 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:14:24,150.150 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:14:24,160.160 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:14:24,382.382 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:14:24,443.443 INFO    ] time= 31/08/2026 13:14:24
[2026-08-31 13:14:24,456.456 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:14:24,475.475 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:14:24,619.619 INFO    ] No existing commands found in stream
[2026-08-31 13:14:29,637.637 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:14:29,640.640 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-08-31 13:14:33,409.409 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 13:14:33,411.411 INFO    ] Checking for system updates...
[2026-08-31 13:14:33,448.448 INFO    ] 200
[2026-08-31 13:14:33,451.451 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:14:33,508.508 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:14:33,510.510 INFO    ] No update needed
[2026-08-31 13:14:33,513.513 INFO    ] Checking for camera pi updates...
[2026-08-31 13:14:33,547.547 INFO    ] 200
[2026-08-31 13:14:33,549.549 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:14:33,589.589 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:14:33,695.695 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:14:33,698.698 INFO    ] No camera update needed
[2026-08-31 13:14:33,700.700 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:14:33,703.703 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:14:33,708.708 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:14:33,713.713 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:14:35,754.754 INFO    ] ================================================
[2026-08-31 13:14:35,769.769 INFO    ] Launching Daemon at Mon Aug 31 13:14:35 IST 2026
[2026-08-31 13:14:35,780.780 INFO    ] ================================================
[2026-08-31 13:14:36,364.364 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:14:36
[2026-08-31 13:14:36,961.961 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:14:37,233.233 INFO    ] Initializing speech engine...
[2026-08-31 13:14:37,252.252 INFO    ] 2026-08-31 13:14:37
[2026-08-31 13:14:37,516.516 INFO    ] 2026-08-31 13:14:37
[2026-08-31 13:14:37,554.554 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:14:37,773.773 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:14:37,837.837 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:14:38,077.077 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:14:38,131.131 INFO    ] time= 31/08/2026 13:14:38
[2026-08-31 13:14:38,137.137 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:14:38,153.153 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:14:38,294.294 INFO    ] No existing commands found in stream
[2026-08-31 13:14:43,314.314 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:14:43,316.316 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-08-31 13:14:47,048.048 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 13:14:47,050.050 INFO    ] Checking for system updates...
[2026-08-31 13:14:47,086.086 INFO    ] 200
[2026-08-31 13:14:47,089.089 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:14:47,141.141 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:14:47,143.143 INFO    ] No update needed
[2026-08-31 13:14:47,145.145 INFO    ] Checking for camera pi updates...
[2026-08-31 13:14:47,182.182 INFO    ] 200
[2026-08-31 13:14:47,184.184 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:14:47,228.228 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:14:47,304.304 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:14:47,307.307 INFO    ] No camera update needed
[2026-08-31 13:14:47,309.309 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:14:47,312.312 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:14:47,317.317 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:14:47,322.322 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:14:49,363.363 INFO    ] ================================================
[2026-08-31 13:14:49,378.378 INFO    ] Launching Daemon at Mon Aug 31 13:14:49 IST 2026
[2026-08-31 13:14:49,389.389 INFO    ] ================================================
[2026-08-31 13:14:49,968.968 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:14:49
[2026-08-31 13:14:50,563.563 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:14:50,858.858 INFO    ] Initializing speech engine...
[2026-08-31 13:14:50,868.868 INFO    ] 2026-08-31 13:14:50
[2026-08-31 13:14:51,136.136 INFO    ] 2026-08-31 13:14:51
[2026-08-31 13:14:51,171.171 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:14:51,454.454 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:14:51,459.459 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:14:51,661.661 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:14:51,701.701 INFO    ] time= 31/08/2026 13:14:51
[2026-08-31 13:14:51,707.707 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:14:51,730.730 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:14:51,925.925 INFO    ] No existing commands found in stream
[2026-08-31 13:14:56,951.951 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:14:56,954.954 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-08-31 13:14:58,729.729 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 13:14:58,732.732 INFO    ] Checking for system updates...
[2026-08-31 13:14:58,768.768 INFO    ] 200
[2026-08-31 13:14:58,771.771 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:14:58,823.823 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:14:58,826.826 INFO    ] No update needed
[2026-08-31 13:14:58,828.828 INFO    ] Checking for camera pi updates...
[2026-08-31 13:14:58,862.862 INFO    ] 200
[2026-08-31 13:14:58,864.864 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:14:58,905.905 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:14:59,090.090 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:14:59,092.092 INFO    ] No camera update needed
[2026-08-31 13:14:59,094.094 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:14:59,097.097 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:14:59,102.102 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:14:59,107.107 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:15:01,148.148 INFO    ] ================================================
[2026-08-31 13:15:01,163.163 INFO    ] Launching Daemon at Mon Aug 31 13:15:01 IST 2026
[2026-08-31 13:15:01,174.174 INFO    ] ================================================
[2026-08-31 13:15:02,262.262 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:15:02
[2026-08-31 13:15:03,063.063 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:15:03,435.435 INFO    ] Initializing speech engine...
[2026-08-31 13:15:03,447.447 INFO    ] 2026-08-31 13:15:03
[2026-08-31 13:15:03,735.735 INFO    ] 2026-08-31 13:15:03
[2026-08-31 13:15:03,795.795 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:15:04,024.024 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:15:04,030.030 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:15:04,263.263 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:15:04,291.291 INFO    ] time= 31/08/2026 13:15:04
[2026-08-31 13:15:04,309.309 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:15:04,327.327 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:15:04,448.448 INFO    ] No existing commands found in stream
[2026-08-31 13:15:09,477.477 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:15:09,481.481 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-08-31 13:15:11,179.179 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 13:15:11,182.182 INFO    ] Checking for system updates...
[2026-08-31 13:15:11,219.219 INFO    ] 200
[2026-08-31 13:15:11,221.221 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:15:11,273.273 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:15:11,276.276 INFO    ] No update needed
[2026-08-31 13:15:11,278.278 INFO    ] Checking for camera pi updates...
[2026-08-31 13:15:11,312.312 INFO    ] 200
[2026-08-31 13:15:11,314.314 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:15:11,354.354 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:15:11,457.457 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:15:11,459.459 INFO    ] No camera update needed
[2026-08-31 13:15:11,462.462 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:15:11,464.464 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:15:11,470.470 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:15:11,475.475 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:15:13,515.515 INFO    ] ================================================
[2026-08-31 13:15:13,530.530 INFO    ] Launching Daemon at Mon Aug 31 13:15:13 IST 2026
[2026-08-31 13:15:13,540.540 INFO    ] ================================================
[2026-08-31 13:15:14,104.104 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:15:14
[2026-08-31 13:15:14,704.704 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:15:14,987.987 INFO    ] Initializing speech engine...
[2026-08-31 13:15:14,997.997 INFO    ] 2026-08-31 13:15:14
[2026-08-31 13:15:15,258.258 INFO    ] 2026-08-31 13:15:15
[2026-08-31 13:15:15,293.293 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:15:15,496.496 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:15:15,514.514 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:15:15,731.731 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:15:15,738.738 INFO    ] time= 31/08/2026 13:15:15
[2026-08-31 13:15:15,797.797 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:15:15,846.846 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:15:15,935.935 INFO    ] No existing commands found in stream
[2026-08-31 13:15:20,947.947 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:15:20,950.950 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-08-31 13:15:23,820.820 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 13:15:23,823.823 INFO    ] Checking for system updates...
[2026-08-31 13:15:23,858.858 INFO    ] 200
[2026-08-31 13:15:23,861.861 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:15:23,913.913 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:15:23,915.915 INFO    ] No update needed
[2026-08-31 13:15:23,918.918 INFO    ] Checking for camera pi updates...
[2026-08-31 13:15:23,951.951 INFO    ] 200
[2026-08-31 13:15:23,954.954 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:15:23,994.994 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:15:24,068.068 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:15:24,070.070 INFO    ] No camera update needed
[2026-08-31 13:15:24,072.072 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:15:24,075.075 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:15:24,080.080 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:15:24,085.085 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:15:26,126.126 INFO    ] ================================================
[2026-08-31 13:15:26,141.141 INFO    ] Launching Daemon at Mon Aug 31 13:15:26 IST 2026
[2026-08-31 13:15:26,152.152 INFO    ] ================================================
[2026-08-31 13:15:26,733.733 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:15:26
[2026-08-31 13:15:27,372.372 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:15:27,668.668 INFO    ] Initializing speech engine...
[2026-08-31 13:15:27,677.677 INFO    ] 2026-08-31 13:15:27
[2026-08-31 13:15:27,950.950 INFO    ] 2026-08-31 13:15:27
[2026-08-31 13:15:28,009.009 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:15:28,361.361 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:15:28,414.414 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:15:28,620.620 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:15:28,651.651 INFO    ] time= 31/08/2026 13:15:28
[2026-08-31 13:15:28,686.686 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:15:28,757.757 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:15:28,910.910 INFO    ] No existing commands found in stream
[2026-08-31 13:15:33,933.933 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:15:33,936.936 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-08-31 13:15:36,778.778 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 13:15:36,781.781 INFO    ] Checking for system updates...
[2026-08-31 13:15:36,816.816 INFO    ] 200
[2026-08-31 13:15:36,819.819 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:15:36,871.871 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:15:36,873.873 INFO    ] No update needed
[2026-08-31 13:15:36,876.876 INFO    ] Checking for camera pi updates...
[2026-08-31 13:15:36,909.909 INFO    ] 200
[2026-08-31 13:15:36,912.912 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:15:36,952.952 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:15:37,041.041 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:15:37,044.044 INFO    ] No camera update needed
[2026-08-31 13:15:37,046.046 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:15:37,049.049 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:15:37,055.055 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:15:37,061.061 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:15:39,101.101 INFO    ] ================================================
[2026-08-31 13:15:39,116.116 INFO    ] Launching Daemon at Mon Aug 31 13:15:39 IST 2026
[2026-08-31 13:15:39,127.127 INFO    ] ================================================
[2026-08-31 13:15:39,708.708 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:15:39
[2026-08-31 13:15:40,295.295 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:15:40,566.566 INFO    ] Initializing speech engine...
[2026-08-31 13:15:40,573.573 INFO    ] 2026-08-31 13:15:40
[2026-08-31 13:15:40,826.826 INFO    ] 2026-08-31 13:15:40
[2026-08-31 13:15:40,886.886 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:15:41,131.131 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:15:41,139.139 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:15:41,339.339 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:15:41,371.371 INFO    ] time= 31/08/2026 13:15:41
[2026-08-31 13:15:41,377.377 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:15:41,395.395 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:15:41,526.526 INFO    ] No existing commands found in stream
[2026-08-31 13:15:46,545.545 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:15:46,548.548 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-08-31 13:15:47,249.249 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 13:15:47,252.252 INFO    ] Checking for system updates...
[2026-08-31 13:15:47,292.292 INFO    ] 200
[2026-08-31 13:15:47,294.294 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:15:47,346.346 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:15:47,349.349 INFO    ] No update needed
[2026-08-31 13:15:47,351.351 INFO    ] Checking for camera pi updates...
[2026-08-31 13:15:47,384.384 INFO    ] 200
[2026-08-31 13:15:47,387.387 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:15:47,427.427 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:15:47,498.498 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:15:47,501.501 INFO    ] No camera update needed
[2026-08-31 13:15:47,503.503 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:15:47,505.505 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:15:47,510.510 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:15:47,516.516 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:15:49,557.557 INFO    ] ================================================
[2026-08-31 13:15:49,572.572 INFO    ] Launching Daemon at Mon Aug 31 13:15:49 IST 2026
[2026-08-31 13:15:49,584.584 INFO    ] ================================================
[2026-08-31 13:15:50,160.160 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:15:50
[2026-08-31 13:15:50,742.742 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:15:50,990.990 INFO    ] Initializing speech engine...
[2026-08-31 13:15:51,003.003 INFO    ] 2026-08-31 13:15:50
[2026-08-31 13:15:51,264.264 INFO    ] 2026-08-31 13:15:51
[2026-08-31 13:15:51,299.299 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:15:51,558.558 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:15:51,564.564 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:15:51,786.786 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:15:51,824.824 INFO    ] time= 31/08/2026 13:15:51
[2026-08-31 13:15:51,830.830 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:15:51,845.845 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:15:51,969.969 INFO    ] No existing commands found in stream
[2026-08-31 13:15:56,994.994 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:15:56,996.996 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-08-31 13:16:00,086.086 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 13:16:00,089.089 INFO    ] Checking for system updates...
[2026-08-31 13:16:00,125.125 INFO    ] 200
[2026-08-31 13:16:00,127.127 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:16:00,181.181 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:16:00,184.184 INFO    ] No update needed
[2026-08-31 13:16:00,186.186 INFO    ] Checking for camera pi updates...
[2026-08-31 13:16:00,224.224 INFO    ] 200
[2026-08-31 13:16:00,226.226 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:16:00,267.267 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:16:00,369.369 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:16:00,371.371 INFO    ] No camera update needed
[2026-08-31 13:16:00,374.374 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:16:00,376.376 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:16:00,382.382 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:16:00,387.387 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:16:02,431.431 INFO    ] ================================================
[2026-08-31 13:16:02,455.455 INFO    ] Launching Daemon at Mon Aug 31 13:16:02 IST 2026
[2026-08-31 13:16:02,473.473 INFO    ] ================================================
[2026-08-31 13:16:03,105.105 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:16:03
[2026-08-31 13:16:03,743.743 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:16:04,014.014 INFO    ] Initializing speech engine...
[2026-08-31 13:16:04,023.023 INFO    ] 2026-08-31 13:16:04
[2026-08-31 13:16:04,272.272 INFO    ] 2026-08-31 13:16:04
[2026-08-31 13:16:04,308.308 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:16:04,565.565 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:16:04,574.574 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:16:04,716.716 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:16:04,776.776 INFO    ] time= 31/08/2026 13:16:04
[2026-08-31 13:16:04,825.825 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:16:04,848.848 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:16:04,977.977 INFO    ] No existing commands found in stream
[2026-08-31 13:16:09,999.999 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:16:10,002.002 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-08-31 13:16:11,888.888 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 13:16:11,890.890 INFO    ] Checking for system updates...
[2026-08-31 13:16:11,927.927 INFO    ] 200
[2026-08-31 13:16:11,929.929 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:16:11,982.982 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:16:11,984.984 INFO    ] No update needed
[2026-08-31 13:16:11,987.987 INFO    ] Checking for camera pi updates...
[2026-08-31 13:16:12,021.021 INFO    ] 200
[2026-08-31 13:16:12,023.023 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:16:12,069.069 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:16:12,166.166 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:16:12,169.169 INFO    ] No camera update needed
[2026-08-31 13:16:12,171.171 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:16:12,173.173 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:16:12,179.179 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:16:12,184.184 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:16:14,222.222 INFO    ] ================================================
[2026-08-31 13:16:14,238.238 INFO    ] Launching Daemon at Mon Aug 31 13:16:14 IST 2026
[2026-08-31 13:16:14,248.248 INFO    ] ================================================
[2026-08-31 13:16:14,819.819 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:16:14
[2026-08-31 13:16:15,419.419 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:16:15,693.693 INFO    ] Initializing speech engine...
[2026-08-31 13:16:15,703.703 INFO    ] 2026-08-31 13:16:15
[2026-08-31 13:16:15,966.966 INFO    ] 2026-08-31 13:16:15
[2026-08-31 13:16:16,022.022 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:16:16,248.248 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:16:16,253.253 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:16:16,386.386 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:16:16,430.430 INFO    ] time= 31/08/2026 13:16:16
[2026-08-31 13:16:16,479.479 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:16:16,518.518 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:16:16,665.665 INFO    ] No existing commands found in stream
[2026-08-31 13:16:21,679.679 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:16:21,682.682 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-08-31 13:16:24,730.730 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 13:16:24,732.732 INFO    ] Checking for system updates...
[2026-08-31 13:16:24,768.768 INFO    ] 200
[2026-08-31 13:16:24,770.770 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:16:24,823.823 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:16:24,825.825 INFO    ] No update needed
[2026-08-31 13:16:24,828.828 INFO    ] Checking for camera pi updates...
[2026-08-31 13:16:24,861.861 INFO    ] 200
[2026-08-31 13:16:24,864.864 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:16:24,906.906 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:16:24,991.991 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:16:24,993.993 INFO    ] No camera update needed
[2026-08-31 13:16:24,995.995 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:16:24,998.998 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:16:25,003.003 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:16:25,009.009 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:16:27,051.051 INFO    ] ================================================
[2026-08-31 13:16:27,066.066 INFO    ] Launching Daemon at Mon Aug 31 13:16:27 IST 2026
[2026-08-31 13:16:27,077.077 INFO    ] ================================================
[2026-08-31 13:16:27,643.643 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:16:27
[2026-08-31 13:16:28,226.226 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:16:28,494.494 INFO    ] Initializing speech engine...
[2026-08-31 13:16:28,503.503 INFO    ] 2026-08-31 13:16:28
[2026-08-31 13:16:28,750.750 INFO    ] 2026-08-31 13:16:28
[2026-08-31 13:16:28,785.785 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:16:29,036.036 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:16:29,045.045 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:16:29,267.267 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:16:29,303.303 INFO    ] time= 31/08/2026 13:16:29
[2026-08-31 13:16:29,309.309 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:16:29,327.327 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:16:29,496.496 INFO    ] No existing commands found in stream
[2026-08-31 13:16:34,526.526 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:16:34,529.529 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-08-31 13:16:35,535.535 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 13:16:35,538.538 INFO    ] Checking for system updates...
[2026-08-31 13:16:35,578.578 INFO    ] 200
[2026-08-31 13:16:35,580.580 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:16:35,640.640 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:16:35,642.642 INFO    ] No update needed
[2026-08-31 13:16:35,644.644 INFO    ] Checking for camera pi updates...
[2026-08-31 13:16:35,678.678 INFO    ] 200
[2026-08-31 13:16:35,680.680 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:16:35,720.720 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:16:35,779.779 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:16:35,781.781 INFO    ] No camera update needed
[2026-08-31 13:16:35,783.783 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:16:35,785.785 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:16:35,791.791 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:16:35,796.796 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:16:37,835.835 INFO    ] ================================================
[2026-08-31 13:16:37,850.850 INFO    ] Launching Daemon at Mon Aug 31 13:16:37 IST 2026
[2026-08-31 13:16:37,861.861 INFO    ] ================================================
[2026-08-31 13:16:38,440.440 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:16:38
[2026-08-31 13:16:39,036.036 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:16:39,313.313 INFO    ] Initializing speech engine...
[2026-08-31 13:16:39,321.321 INFO    ] 2026-08-31 13:16:39
[2026-08-31 13:16:39,593.593 INFO    ] 2026-08-31 13:16:39
[2026-08-31 13:16:39,635.635 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:16:39,980.980 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:16:40,009.009 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:16:40,164.164 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:16:40,172.172 INFO    ] time= 31/08/2026 13:16:40
[2026-08-31 13:16:40,202.202 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:16:40,243.243 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:16:40,372.372 INFO    ] No existing commands found in stream
[2026-08-31 13:16:45,391.391 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:16:45,393.393 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-08-31 13:16:47,473.473 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 13:16:47,476.476 INFO    ] Checking for system updates...
[2026-08-31 13:16:47,516.516 INFO    ] 200
[2026-08-31 13:16:47,519.519 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:16:47,572.572 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:16:47,575.575 INFO    ] No update needed
[2026-08-31 13:16:47,577.577 INFO    ] Checking for camera pi updates...
[2026-08-31 13:16:47,611.611 INFO    ] 200
[2026-08-31 13:16:47,613.613 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:16:47,655.655 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:16:47,737.737 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:16:47,739.739 INFO    ] No camera update needed
[2026-08-31 13:16:47,742.742 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:16:47,744.744 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:16:47,749.749 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:16:47,754.754 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:16:49,793.793 INFO    ] ================================================
[2026-08-31 13:16:49,808.808 INFO    ] Launching Daemon at Mon Aug 31 13:16:49 IST 2026
[2026-08-31 13:16:49,819.819 INFO    ] ================================================
[2026-08-31 13:16:50,446.446 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:16:50
[2026-08-31 13:16:51,121.121 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:16:51,421.421 INFO    ] Initializing speech engine...
[2026-08-31 13:16:51,429.429 INFO    ] 2026-08-31 13:16:51
[2026-08-31 13:16:51,745.745 INFO    ] 2026-08-31 13:16:51
[2026-08-31 13:16:51,832.832 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:16:52,109.109 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:16:52,115.115 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:16:52,296.296 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:16:52,335.335 INFO    ] time= 31/08/2026 13:16:52
[2026-08-31 13:16:52,377.377 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:16:52,417.417 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:16:52,576.576 INFO    ] No existing commands found in stream
[2026-08-31 13:16:57,613.613 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:16:57,616.616 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-08-31 13:17:01,538.538 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 13:17:01,541.541 INFO    ] Checking for system updates...
[2026-08-31 13:17:01,577.577 INFO    ] 200
[2026-08-31 13:17:01,580.580 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:17:01,632.632 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:17:01,634.634 INFO    ] No update needed
[2026-08-31 13:17:01,637.637 INFO    ] Checking for camera pi updates...
[2026-08-31 13:17:01,671.671 INFO    ] 200
[2026-08-31 13:17:01,674.674 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:17:01,718.718 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:17:01,937.937 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:17:01,940.940 INFO    ] No camera update needed
[2026-08-31 13:17:01,943.943 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:17:01,949.949 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:17:01,960.960 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:17:01,974.974 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:17:04,021.021 INFO    ] ================================================
[2026-08-31 13:17:04,038.038 INFO    ] Launching Daemon at Mon Aug 31 13:17:04 IST 2026
[2026-08-31 13:17:04,050.050 INFO    ] ================================================
[2026-08-31 13:17:04,764.764 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:17:04
[2026-08-31 13:17:05,438.438 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:17:05,738.738 INFO    ] Initializing speech engine...
[2026-08-31 13:17:05,752.752 INFO    ] 2026-08-31 13:17:05
[2026-08-31 13:17:06,063.063 INFO    ] 2026-08-31 13:17:06
[2026-08-31 13:17:06,145.145 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:17:06,358.358 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:17:06,362.362 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:17:06,558.558 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:17:06,575.575 INFO    ] time= 31/08/2026 13:17:06
[2026-08-31 13:17:06,584.584 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:17:06,611.611 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:17:06,743.743 INFO    ] No existing commands found in stream
[2026-08-31 13:17:11,779.779 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:17:11,782.782 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-08-31 13:17:16,050.050 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 13:17:16,053.053 INFO    ] Checking for system updates...
[2026-08-31 13:17:16,090.090 INFO    ] 200
[2026-08-31 13:17:16,093.093 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:17:16,155.155 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:17:16,157.157 INFO    ] No update needed
[2026-08-31 13:17:16,160.160 INFO    ] Checking for camera pi updates...
[2026-08-31 13:17:16,196.196 INFO    ] 200
[2026-08-31 13:17:16,199.199 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:17:16,244.244 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:17:16,319.319 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:17:16,321.321 INFO    ] No camera update needed
[2026-08-31 13:17:16,323.323 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:17:16,326.326 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:17:16,331.331 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:17:16,336.336 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:17:18,375.375 INFO    ] ================================================
[2026-08-31 13:17:18,391.391 INFO    ] Launching Daemon at Mon Aug 31 13:17:18 IST 2026
[2026-08-31 13:17:18,402.402 INFO    ] ================================================
[2026-08-31 13:17:18,967.967 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:17:18
[2026-08-31 13:17:19,549.549 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:17:19,796.796 INFO    ] Initializing speech engine...
[2026-08-31 13:17:19,819.819 INFO    ] 2026-08-31 13:17:19
[2026-08-31 13:17:20,070.070 INFO    ] 2026-08-31 13:17:20
[2026-08-31 13:17:20,105.105 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:17:20,294.294 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:17:20,306.306 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:17:20,465.465 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:17:20,475.475 INFO    ] time= 31/08/2026 13:17:20
[2026-08-31 13:17:20,481.481 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:17:20,504.504 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:17:20,648.648 INFO    ] No existing commands found in stream
[2026-08-31 13:17:25,673.673 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:17:25,676.676 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-08-31 13:17:29,110.110 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 13:17:29,112.112 INFO    ] Checking for system updates...
[2026-08-31 13:17:29,149.149 INFO    ] 200
[2026-08-31 13:17:29,151.151 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:17:29,209.209 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:17:29,211.211 INFO    ] No update needed
[2026-08-31 13:17:29,214.214 INFO    ] Checking for camera pi updates...
[2026-08-31 13:17:29,247.247 INFO    ] 200
[2026-08-31 13:17:29,250.250 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:17:29,290.290 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:17:29,372.372 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:17:29,374.374 INFO    ] No camera update needed
[2026-08-31 13:17:29,376.376 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:17:29,379.379 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:17:29,384.384 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:17:29,389.389 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:17:31,432.432 INFO    ] ================================================
[2026-08-31 13:17:31,447.447 INFO    ] Launching Daemon at Mon Aug 31 13:17:31 IST 2026
[2026-08-31 13:17:31,457.457 INFO    ] ================================================
[2026-08-31 13:17:32,043.043 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:17:32
[2026-08-31 13:17:32,656.656 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:17:32,943.943 INFO    ] Initializing speech engine...
[2026-08-31 13:17:32,952.952 INFO    ] 2026-08-31 13:17:32
[2026-08-31 13:17:33,227.227 INFO    ] 2026-08-31 13:17:33
[2026-08-31 13:17:33,282.282 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:17:33,566.566 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:17:33,574.574 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:17:33,773.773 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:17:33,790.790 INFO    ] time= 31/08/2026 13:17:33
[2026-08-31 13:17:33,801.801 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:17:33,828.828 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:17:33,927.927 INFO    ] No existing commands found in stream
[2026-08-31 13:17:38,940.940 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:17:38,943.943 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-08-31 13:17:43,156.156 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 13:17:43,159.159 INFO    ] Checking for system updates...
[2026-08-31 13:17:43,195.195 INFO    ] 200
[2026-08-31 13:17:43,198.198 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:17:43,252.252 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:17:43,254.254 INFO    ] No update needed
[2026-08-31 13:17:43,257.257 INFO    ] Checking for camera pi updates...
[2026-08-31 13:17:43,292.292 INFO    ] 200
[2026-08-31 13:17:43,295.295 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:17:43,338.338 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:17:43,421.421 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:17:43,423.423 INFO    ] No camera update needed
[2026-08-31 13:17:43,426.426 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:17:43,428.428 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:17:43,433.433 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:17:43,438.438 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:17:45,481.481 INFO    ] ================================================
[2026-08-31 13:17:45,496.496 INFO    ] Launching Daemon at Mon Aug 31 13:17:45 IST 2026
[2026-08-31 13:17:45,506.506 INFO    ] ================================================
[2026-08-31 13:17:46,072.072 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:17:46
[2026-08-31 13:17:46,656.656 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:17:46,924.924 INFO    ] Initializing speech engine...
[2026-08-31 13:17:46,933.933 INFO    ] 2026-08-31 13:17:46
[2026-08-31 13:17:47,178.178 INFO    ] 2026-08-31 13:17:47
[2026-08-31 13:17:47,214.214 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:17:47,465.465 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:17:47,474.474 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:17:47,692.692 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:17:47,732.732 INFO    ] time= 31/08/2026 13:17:47
[2026-08-31 13:17:47,739.739 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:17:47,756.756 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:17:47,881.881 INFO    ] No existing commands found in stream
[2026-08-31 13:17:52,898.898 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:17:52,901.901 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-08-31 13:17:55,350.350 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 13:17:55,352.352 INFO    ] Checking for system updates...
[2026-08-31 13:17:55,394.394 INFO    ] 200
[2026-08-31 13:17:55,396.396 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:17:55,449.449 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:17:55,451.451 INFO    ] No update needed
[2026-08-31 13:17:55,453.453 INFO    ] Checking for camera pi updates...
[2026-08-31 13:17:55,489.489 INFO    ] 200
[2026-08-31 13:17:55,492.492 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:17:55,534.534 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:17:55,625.625 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:17:55,627.627 INFO    ] No camera update needed
[2026-08-31 13:17:55,630.630 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:17:55,632.632 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:17:55,638.638 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:17:55,642.642 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:17:57,681.681 INFO    ] ================================================
[2026-08-31 13:17:57,696.696 INFO    ] Launching Daemon at Mon Aug 31 13:17:57 IST 2026
[2026-08-31 13:17:57,706.706 INFO    ] ================================================
[2026-08-31 13:17:58,272.272 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:17:58
[2026-08-31 13:17:58,853.853 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:17:59,121.121 INFO    ] Initializing speech engine...
[2026-08-31 13:17:59,131.131 INFO    ] 2026-08-31 13:17:59
[2026-08-31 13:17:59,374.374 INFO    ] 2026-08-31 13:17:59
[2026-08-31 13:17:59,416.416 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:17:59,606.606 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:17:59,663.663 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:17:59,803.803 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:17:59,873.873 INFO    ] time= 31/08/2026 13:17:59
[2026-08-31 13:17:59,931.931 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:17:59,937.937 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:18:00,077.077 INFO    ] No existing commands found in stream
[2026-08-31 13:18:05,092.092 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:18:05,095.095 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-08-31 13:18:07,734.734 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 13:18:07,737.737 INFO    ] Checking for system updates...
[2026-08-31 13:18:07,775.775 INFO    ] 200
[2026-08-31 13:18:07,778.778 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:18:07,836.836 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:18:07,838.838 INFO    ] No update needed
[2026-08-31 13:18:07,841.841 INFO    ] Checking for camera pi updates...
[2026-08-31 13:18:07,875.875 INFO    ] 200
[2026-08-31 13:18:07,877.877 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:18:07,921.921 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:18:08,003.003 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:18:08,006.006 INFO    ] No camera update needed
[2026-08-31 13:18:08,008.008 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:18:08,010.010 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:18:08,015.015 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:18:08,020.020 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:18:10,060.060 INFO    ] ================================================
[2026-08-31 13:18:10,075.075 INFO    ] Launching Daemon at Mon Aug 31 13:18:10 IST 2026
[2026-08-31 13:18:10,086.086 INFO    ] ================================================
[2026-08-31 13:18:10,671.671 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:18:10
[2026-08-31 13:18:11,255.255 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:18:11,526.526 INFO    ] Initializing speech engine...
[2026-08-31 13:18:11,535.535 INFO    ] 2026-08-31 13:18:11
[2026-08-31 13:18:11,790.790 INFO    ] 2026-08-31 13:18:11
[2026-08-31 13:18:11,820.820 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:18:12,067.067 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:18:12,073.073 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:18:12,299.299 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:18:12,329.329 INFO    ] time= 31/08/2026 13:18:12
[2026-08-31 13:18:12,334.334 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:18:12,355.355 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:18:12,564.564 INFO    ] No existing commands found in stream
[2026-08-31 13:18:17,588.588 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:18:17,591.591 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-08-31 13:18:21,310.310 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 13:18:21,313.313 INFO    ] Checking for system updates...
[2026-08-31 13:18:21,349.349 INFO    ] 200
[2026-08-31 13:18:21,352.352 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:18:21,411.411 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:18:21,414.414 INFO    ] No update needed
[2026-08-31 13:18:21,417.417 INFO    ] Checking for camera pi updates...
[2026-08-31 13:18:21,455.455 INFO    ] 200
[2026-08-31 13:18:21,458.458 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:18:21,509.509 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:18:21,599.599 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:18:21,602.602 INFO    ] No camera update needed
[2026-08-31 13:18:21,605.605 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:18:21,607.607 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:18:21,614.614 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:18:21,620.620 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:18:23,662.662 INFO    ] ================================================
[2026-08-31 13:18:23,678.678 INFO    ] Launching Daemon at Mon Aug 31 13:18:23 IST 2026
[2026-08-31 13:18:23,690.690 INFO    ] ================================================
[2026-08-31 13:18:24,335.335 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:18:24
[2026-08-31 13:18:25,003.003 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:18:25,309.309 INFO    ] Initializing speech engine...
[2026-08-31 13:18:25,323.323 INFO    ] 2026-08-31 13:18:25
[2026-08-31 13:18:25,636.636 INFO    ] 2026-08-31 13:18:25
[2026-08-31 13:18:25,717.717 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:18:25,943.943 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:18:25,993.993 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:18:26,187.187 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:18:26,196.196 INFO    ] time= 31/08/2026 13:18:26
[2026-08-31 13:18:26,202.202 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:18:26,231.231 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:18:26,400.400 INFO    ] No existing commands found in stream
[2026-08-31 13:18:31,410.410 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:18:31,412.412 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-08-31 13:18:35,032.032 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 13:18:35,035.035 INFO    ] Checking for system updates...
[2026-08-31 13:18:35,072.072 INFO    ] 200
[2026-08-31 13:18:35,075.075 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:18:35,137.137 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:18:35,141.141 INFO    ] No update needed
[2026-08-31 13:18:35,144.144 INFO    ] Checking for camera pi updates...
[2026-08-31 13:18:35,182.182 INFO    ] 200
[2026-08-31 13:18:35,185.185 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:18:35,232.232 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:18:35,316.316 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:18:35,318.318 INFO    ] No camera update needed
[2026-08-31 13:18:35,321.321 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:18:35,323.323 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:18:35,329.329 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:18:35,333.333 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:18:37,372.372 INFO    ] ================================================
[2026-08-31 13:18:37,388.388 INFO    ] Launching Daemon at Mon Aug 31 13:18:37 IST 2026
[2026-08-31 13:18:37,399.399 INFO    ] ================================================
[2026-08-31 13:18:38,057.057 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:18:38
[2026-08-31 13:18:38,734.734 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:18:39,041.041 INFO    ] Initializing speech engine...
[2026-08-31 13:18:39,055.055 INFO    ] 2026-08-31 13:18:39
[2026-08-31 13:18:39,347.347 INFO    ] 2026-08-31 13:18:39
[2026-08-31 13:18:39,459.459 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:18:39,679.679 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:18:39,683.683 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:18:39,883.883 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:18:39,903.903 INFO    ] time= 31/08/2026 13:18:39
[2026-08-31 13:18:39,912.912 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:18:39,939.939 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:18:40,049.049 INFO    ] No existing commands found in stream
[2026-08-31 13:18:45,069.069 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:18:45,072.072 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-08-31 13:18:46,858.858 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 13:18:46,861.861 INFO    ] Checking for system updates...
[2026-08-31 13:18:46,898.898 INFO    ] 200
[2026-08-31 13:18:46,901.901 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:18:46,960.960 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:18:46,963.963 INFO    ] No update needed
[2026-08-31 13:18:46,965.965 INFO    ] Checking for camera pi updates...
[2026-08-31 13:18:47,005.005 INFO    ] 200
[2026-08-31 13:18:47,007.007 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:18:47,049.049 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:18:47,139.139 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:18:47,142.142 INFO    ] No camera update needed
[2026-08-31 13:18:47,144.144 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:18:47,147.147 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:18:47,154.154 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:18:47,159.159 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:18:49,202.202 INFO    ] ================================================
[2026-08-31 13:18:49,218.218 INFO    ] Launching Daemon at Mon Aug 31 13:18:49 IST 2026
[2026-08-31 13:18:49,229.229 INFO    ] ================================================
[2026-08-31 13:18:49,815.815 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:18:49
[2026-08-31 13:18:50,421.421 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:18:50,682.682 INFO    ] Initializing speech engine...
[2026-08-31 13:18:50,698.698 INFO    ] 2026-08-31 13:18:50
[2026-08-31 13:18:50,995.995 INFO    ] 2026-08-31 13:18:50
[2026-08-31 13:18:51,022.022 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:18:51,253.253 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:18:51,305.305 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:18:51,464.464 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:18:51,514.514 INFO    ] time= 31/08/2026 13:18:51
[2026-08-31 13:18:51,558.558 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:18:51,599.599 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:18:51,723.723 INFO    ] No existing commands found in stream
[2026-08-31 13:18:56,750.750 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:18:56,753.753 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-08-31 13:18:58,930.930 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 13:18:58,932.932 INFO    ] Checking for system updates...
[2026-08-31 13:18:58,968.968 INFO    ] 200
[2026-08-31 13:18:58,971.971 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:18:59,031.031 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:18:59,033.033 INFO    ] No update needed
[2026-08-31 13:18:59,036.036 INFO    ] Checking for camera pi updates...
[2026-08-31 13:18:59,070.070 INFO    ] 200
[2026-08-31 13:18:59,072.072 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:18:59,117.117 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:18:59,215.215 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:18:59,218.218 INFO    ] No camera update needed
[2026-08-31 13:18:59,221.221 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:18:59,223.223 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:18:59,228.228 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:18:59,233.233 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:19:01,310.310 INFO    ] ================================================
[2026-08-31 13:19:01,359.359 INFO    ] Launching Daemon at Mon Aug 31 13:19:01 IST 2026
[2026-08-31 13:19:01,374.374 INFO    ] ================================================
[2026-08-31 13:19:02,042.042 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:19:02
[2026-08-31 13:19:02,717.717 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:19:02,992.992 INFO    ] Initializing speech engine...
[2026-08-31 13:19:03,011.011 INFO    ] 2026-08-31 13:19:03
[2026-08-31 13:19:03,261.261 INFO    ] 2026-08-31 13:19:03
[2026-08-31 13:19:03,296.296 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:19:03,553.553 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:19:03,562.562 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:19:03,779.779 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:19:03,826.826 INFO    ] time= 31/08/2026 13:19:03
[2026-08-31 13:19:03,833.833 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:19:03,852.852 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:19:03,964.964 INFO    ] No existing commands found in stream
[2026-08-31 13:19:08,989.989 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:19:08,992.992 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-08-31 13:19:13,309.309 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 13:19:13,311.311 INFO    ] Checking for system updates...
[2026-08-31 13:19:13,351.351 INFO    ] 200
[2026-08-31 13:19:13,354.354 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:19:13,413.413 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:19:13,416.416 INFO    ] No update needed
[2026-08-31 13:19:13,419.419 INFO    ] Checking for camera pi updates...
[2026-08-31 13:19:13,454.454 INFO    ] 200
[2026-08-31 13:19:13,457.457 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:19:13,502.502 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:19:13,692.692 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:19:13,694.694 INFO    ] No camera update needed
[2026-08-31 13:19:13,697.697 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:19:13,700.700 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:19:13,706.706 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:19:13,712.712 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:19:15,755.755 INFO    ] ================================================
[2026-08-31 13:19:15,770.770 INFO    ] Launching Daemon at Mon Aug 31 13:19:15 IST 2026
[2026-08-31 13:19:15,780.780 INFO    ] ================================================
[2026-08-31 13:19:16,351.351 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:19:16
[2026-08-31 13:19:16,938.938 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:19:17,206.206 INFO    ] Initializing speech engine...
[2026-08-31 13:19:17,215.215 INFO    ] 2026-08-31 13:19:17
[2026-08-31 13:19:17,461.461 INFO    ] 2026-08-31 13:19:17
[2026-08-31 13:19:17,497.497 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:19:17,743.743 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:19:17,757.757 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:19:17,963.963 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:19:18,012.012 INFO    ] time= 31/08/2026 13:19:17
[2026-08-31 13:19:18,052.052 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:19:18,059.059 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:19:18,222.222 INFO    ] No existing commands found in stream
[2026-08-31 13:19:23,235.235 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:19:23,239.239 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-08-31 13:19:24,494.494 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 13:19:24,496.496 INFO    ] Checking for system updates...
[2026-08-31 13:19:24,532.532 INFO    ] 200
[2026-08-31 13:19:24,534.534 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:19:24,592.592 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:19:24,594.594 INFO    ] No update needed
[2026-08-31 13:19:24,597.597 INFO    ] Checking for camera pi updates...
[2026-08-31 13:19:24,630.630 INFO    ] 200
[2026-08-31 13:19:24,633.633 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:19:24,677.677 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:19:24,760.760 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:19:24,762.762 INFO    ] No camera update needed
[2026-08-31 13:19:24,764.764 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:19:24,767.767 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:19:24,772.772 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:19:24,777.777 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:19:26,819.819 INFO    ] ================================================
[2026-08-31 13:19:26,834.834 INFO    ] Launching Daemon at Mon Aug 31 13:19:26 IST 2026
[2026-08-31 13:19:26,844.844 INFO    ] ================================================
[2026-08-31 13:19:27,453.453 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:19:27
[2026-08-31 13:19:28,053.053 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:19:28,326.326 INFO    ] Initializing speech engine...
[2026-08-31 13:19:28,337.337 INFO    ] 2026-08-31 13:19:28
[2026-08-31 13:19:28,591.591 INFO    ] 2026-08-31 13:19:28
[2026-08-31 13:19:28,649.649 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:19:28,871.871 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:19:28,880.880 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:19:29,093.093 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:19:29,138.138 INFO    ] time= 31/08/2026 13:19:29
[2026-08-31 13:19:29,155.155 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:19:29,164.164 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:19:29,292.292 INFO    ] No existing commands found in stream
[2026-08-31 13:19:34,306.306 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:19:34,309.309 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-08-31 13:19:38,155.155 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 13:19:38,158.158 INFO    ] Checking for system updates...
[2026-08-31 13:19:38,197.197 INFO    ] 200
[2026-08-31 13:19:38,199.199 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:19:38,252.252 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:19:38,255.255 INFO    ] No update needed
[2026-08-31 13:19:38,257.257 INFO    ] Checking for camera pi updates...
[2026-08-31 13:19:38,294.294 INFO    ] 200
[2026-08-31 13:19:38,297.297 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:19:38,338.338 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:19:38,423.423 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:19:38,425.425 INFO    ] No camera update needed
[2026-08-31 13:19:38,428.428 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:19:38,430.430 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:19:38,436.436 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:19:38,441.441 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:19:40,482.482 INFO    ] ================================================
[2026-08-31 13:19:40,497.497 INFO    ] Launching Daemon at Mon Aug 31 13:19:40 IST 2026
[2026-08-31 13:19:40,507.507 INFO    ] ================================================
[2026-08-31 13:19:41,089.089 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:19:41
[2026-08-31 13:19:41,690.690 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:19:41,953.953 INFO    ] Initializing speech engine...
[2026-08-31 13:19:41,960.960 INFO    ] 2026-08-31 13:19:41
[2026-08-31 13:19:42,257.257 INFO    ] 2026-08-31 13:19:42
[2026-08-31 13:19:42,295.295 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:19:42,492.492 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:19:42,507.507 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:19:42,669.669 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:19:42,678.678 INFO    ] time= 31/08/2026 13:19:42
[2026-08-31 13:19:42,685.685 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:19:42,713.713 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:19:42,866.866 INFO    ] No existing commands found in stream
[2026-08-31 13:19:47,896.896 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:19:47,899.899 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-08-31 13:19:51,417.417 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 13:19:51,420.420 INFO    ] Checking for system updates...
[2026-08-31 13:19:51,456.456 INFO    ] 200
[2026-08-31 13:19:51,458.458 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:19:51,511.511 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:19:51,513.513 INFO    ] No update needed
[2026-08-31 13:19:51,516.516 INFO    ] Checking for camera pi updates...
[2026-08-31 13:19:51,549.549 INFO    ] 200
[2026-08-31 13:19:51,552.552 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:19:51,592.592 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:19:51,672.672 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:19:51,675.675 INFO    ] No camera update needed
[2026-08-31 13:19:51,677.677 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:19:51,680.680 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:19:51,685.685 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:19:51,690.690 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:19:53,731.731 INFO    ] ================================================
[2026-08-31 13:19:53,746.746 INFO    ] Launching Daemon at Mon Aug 31 13:19:53 IST 2026
[2026-08-31 13:19:53,756.756 INFO    ] ================================================
[2026-08-31 13:19:54,397.397 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:19:54
[2026-08-31 13:19:55,059.059 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:19:55,363.363 INFO    ] Initializing speech engine...
[2026-08-31 13:19:55,375.375 INFO    ] 2026-08-31 13:19:55
[2026-08-31 13:19:55,657.657 INFO    ] 2026-08-31 13:19:55
[2026-08-31 13:19:55,768.768 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:19:55,962.962 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:19:55,965.965 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:19:56,193.193 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:19:56,213.213 INFO    ] time= 31/08/2026 13:19:56
[2026-08-31 13:19:56,222.222 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:19:56,252.252 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:19:56,383.383 INFO    ] No existing commands found in stream
[2026-08-31 13:20:01,409.409 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:20:01,413.413 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-08-31 13:20:02,894.894 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 13:20:02,898.898 INFO    ] Checking for system updates...
[2026-08-31 13:20:02,951.951 INFO    ] 200
[2026-08-31 13:20:02,955.955 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:20:03,030.030 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:20:03,033.033 INFO    ] No update needed
[2026-08-31 13:20:03,040.040 INFO    ] Checking for camera pi updates...
[2026-08-31 13:20:03,086.086 INFO    ] 200
[2026-08-31 13:20:03,090.090 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:20:03,142.142 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:20:03,323.323 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:20:03,326.326 INFO    ] No camera update needed
[2026-08-31 13:20:03,329.329 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:20:03,332.332 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:20:03,339.339 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:20:03,346.346 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:20:05,389.389 INFO    ] ================================================
[2026-08-31 13:20:05,404.404 INFO    ] Launching Daemon at Mon Aug 31 13:20:05 IST 2026
[2026-08-31 13:20:05,415.415 INFO    ] ================================================
[2026-08-31 13:20:05,982.982 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:20:05
[2026-08-31 13:20:06,565.565 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:20:06,833.833 INFO    ] Initializing speech engine...
[2026-08-31 13:20:06,842.842 INFO    ] 2026-08-31 13:20:06
[2026-08-31 13:20:07,103.103 INFO    ] 2026-08-31 13:20:07
[2026-08-31 13:20:07,156.156 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:20:07,405.405 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:20:07,410.410 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:20:07,611.611 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:20:07,671.671 INFO    ] time= 31/08/2026 13:20:07
[2026-08-31 13:20:07,678.678 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:20:07,692.692 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:20:07,826.826 INFO    ] No existing commands found in stream
[2026-08-31 13:20:12,840.840 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:20:12,843.843 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-08-31 13:20:14,193.193 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 13:20:14,196.196 INFO    ] Checking for system updates...
[2026-08-31 13:20:14,232.232 INFO    ] 200
[2026-08-31 13:20:14,235.235 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:20:14,289.289 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:20:14,291.291 INFO    ] No update needed
[2026-08-31 13:20:14,294.294 INFO    ] Checking for camera pi updates...
[2026-08-31 13:20:14,328.328 INFO    ] 200
[2026-08-31 13:20:14,331.331 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:20:14,372.372 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:20:14,458.458 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:20:14,461.461 INFO    ] No camera update needed
[2026-08-31 13:20:14,463.463 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:20:14,466.466 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:20:14,472.472 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:20:14,477.477 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:20:16,518.518 INFO    ] ================================================
[2026-08-31 13:20:16,534.534 INFO    ] Launching Daemon at Mon Aug 31 13:20:16 IST 2026
[2026-08-31 13:20:16,545.545 INFO    ] ================================================
[2026-08-31 13:20:17,111.111 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:20:17
[2026-08-31 13:20:17,693.693 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:20:17,966.966 INFO    ] Initializing speech engine...
[2026-08-31 13:20:17,974.974 INFO    ] 2026-08-31 13:20:17
[2026-08-31 13:20:18,230.230 INFO    ] 2026-08-31 13:20:18
[2026-08-31 13:20:18,259.259 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:20:18,508.508 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:20:18,513.513 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:20:18,755.755 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:20:18,773.773 INFO    ] time= 31/08/2026 13:20:18
[2026-08-31 13:20:18,790.790 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:20:18,818.818 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:20:18,925.925 INFO    ] No existing commands found in stream
[2026-08-31 13:20:23,955.955 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:20:23,958.958 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-08-31 13:20:25,234.234 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 13:20:25,237.237 INFO    ] Checking for system updates...
[2026-08-31 13:20:25,272.272 INFO    ] 200
[2026-08-31 13:20:25,275.275 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:20:25,331.331 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:20:25,333.333 INFO    ] No update needed
[2026-08-31 13:20:25,335.335 INFO    ] Checking for camera pi updates...
[2026-08-31 13:20:25,378.378 INFO    ] 200
[2026-08-31 13:20:25,380.380 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:20:25,421.421 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:20:25,504.504 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:20:25,506.506 INFO    ] No camera update needed
[2026-08-31 13:20:25,509.509 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:20:25,511.511 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:20:25,516.516 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:20:25,521.521 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:20:27,562.562 INFO    ] ================================================
[2026-08-31 13:20:27,578.578 INFO    ] Launching Daemon at Mon Aug 31 13:20:27 IST 2026
[2026-08-31 13:20:27,590.590 INFO    ] ================================================
[2026-08-31 13:20:28,181.181 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:20:28
[2026-08-31 13:20:28,796.796 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:20:29,057.057 INFO    ] Initializing speech engine...
[2026-08-31 13:20:29,066.066 INFO    ] 2026-08-31 13:20:29
[2026-08-31 13:20:29,355.355 INFO    ] 2026-08-31 13:20:29
[2026-08-31 13:20:29,392.392 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:20:29,663.663 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:20:29,673.673 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:20:29,904.904 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:20:29,948.948 INFO    ] time= 31/08/2026 13:20:29
[2026-08-31 13:20:29,955.955 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:20:29,978.978 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:20:30,102.102 INFO    ] No existing commands found in stream
[2026-08-31 13:20:35,130.130 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:20:35,133.133 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-08-31 13:20:36,248.248 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 13:20:36,251.251 INFO    ] Checking for system updates...
[2026-08-31 13:20:36,287.287 INFO    ] 200
[2026-08-31 13:20:36,290.290 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:20:36,348.348 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:20:36,350.350 INFO    ] No update needed
[2026-08-31 13:20:36,352.352 INFO    ] Checking for camera pi updates...
[2026-08-31 13:20:36,386.386 INFO    ] 200
[2026-08-31 13:20:36,389.389 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:20:36,434.434 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:20:36,505.505 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:20:36,507.507 INFO    ] No camera update needed
[2026-08-31 13:20:36,510.510 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:20:36,512.512 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:20:36,517.517 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:20:36,522.522 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:20:38,563.563 INFO    ] ================================================
[2026-08-31 13:20:38,578.578 INFO    ] Launching Daemon at Mon Aug 31 13:20:38 IST 2026
[2026-08-31 13:20:38,589.589 INFO    ] ================================================
[2026-08-31 13:20:39,168.168 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:20:39
[2026-08-31 13:20:39,766.766 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:20:40,051.051 INFO    ] Initializing speech engine...
[2026-08-31 13:20:40,060.060 INFO    ] 2026-08-31 13:20:40
[2026-08-31 13:20:40,330.330 INFO    ] 2026-08-31 13:20:40
[2026-08-31 13:20:40,365.365 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:20:40,649.649 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:20:40,658.658 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:20:40,812.812 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:20:40,841.841 INFO    ] time= 31/08/2026 13:20:40
[2026-08-31 13:20:40,885.885 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:20:40,925.925 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:20:41,005.005 INFO    ] No existing commands found in stream
[2026-08-31 13:20:46,016.016 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:20:46,019.019 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-08-31 13:20:50,568.568 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 13:20:50,571.571 INFO    ] Checking for system updates...
[2026-08-31 13:20:50,607.607 INFO    ] 200
[2026-08-31 13:20:50,610.610 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:20:50,662.662 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:20:50,664.664 INFO    ] No update needed
[2026-08-31 13:20:50,667.667 INFO    ] Checking for camera pi updates...
[2026-08-31 13:20:50,700.700 INFO    ] 200
[2026-08-31 13:20:50,703.703 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:20:50,743.743 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:20:50,826.826 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:20:50,829.829 INFO    ] No camera update needed
[2026-08-31 13:20:50,831.831 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:20:50,834.834 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:20:50,839.839 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:20:50,844.844 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:20:52,884.884 INFO    ] ================================================
[2026-08-31 13:20:52,899.899 INFO    ] Launching Daemon at Mon Aug 31 13:20:52 IST 2026
[2026-08-31 13:20:52,910.910 INFO    ] ================================================
[2026-08-31 13:20:53,490.490 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:20:53
[2026-08-31 13:20:54,085.085 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:20:54,356.356 INFO    ] Initializing speech engine...
[2026-08-31 13:20:54,365.365 INFO    ] 2026-08-31 13:20:54
[2026-08-31 13:20:54,614.614 INFO    ] 2026-08-31 13:20:54
[2026-08-31 13:20:54,650.650 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:20:54,905.905 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:20:54,910.910 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:20:55,090.090 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:20:55,160.160 INFO    ] time= 31/08/2026 13:20:55
[2026-08-31 13:20:55,175.175 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:20:55,193.193 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:20:55,324.324 INFO    ] No existing commands found in stream
[2026-08-31 13:21:00,343.343 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:21:00,345.345 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-08-31 13:21:02,417.417 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 13:21:02,420.420 INFO    ] Checking for system updates...
[2026-08-31 13:21:02,461.461 INFO    ] 200
[2026-08-31 13:21:02,464.464 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:21:02,528.528 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:21:02,531.531 INFO    ] No update needed
[2026-08-31 13:21:02,534.534 INFO    ] Checking for camera pi updates...
[2026-08-31 13:21:02,570.570 INFO    ] 200
[2026-08-31 13:21:02,573.573 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:21:02,623.623 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:21:02,743.743 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:21:02,746.746 INFO    ] No camera update needed
[2026-08-31 13:21:02,752.752 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:21:02,755.755 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:21:02,765.765 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:21:02,775.775 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:21:04,820.820 INFO    ] ================================================
[2026-08-31 13:21:04,835.835 INFO    ] Launching Daemon at Mon Aug 31 13:21:04 IST 2026
[2026-08-31 13:21:04,846.846 INFO    ] ================================================
[2026-08-31 13:21:05,476.476 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:21:05
[2026-08-31 13:21:06,062.062 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:21:06,370.370 INFO    ] Initializing speech engine...
[2026-08-31 13:21:06,379.379 INFO    ] 2026-08-31 13:21:06
[2026-08-31 13:21:06,639.639 INFO    ] 2026-08-31 13:21:06
[2026-08-31 13:21:06,667.667 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:21:06,907.907 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:21:06,926.926 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:21:07,136.136 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:21:07,143.143 INFO    ] time= 31/08/2026 13:21:07
[2026-08-31 13:21:07,187.187 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:21:07,241.241 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:21:07,389.389 INFO    ] No existing commands found in stream
[2026-08-31 13:21:12,411.411 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:21:12,414.414 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-08-31 13:21:13,451.451 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 13:21:13,454.454 INFO    ] Checking for system updates...
[2026-08-31 13:21:13,493.493 INFO    ] 200
[2026-08-31 13:21:13,495.495 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:21:13,547.547 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:21:13,550.550 INFO    ] No update needed
[2026-08-31 13:21:13,552.552 INFO    ] Checking for camera pi updates...
[2026-08-31 13:21:13,590.590 INFO    ] 200
[2026-08-31 13:21:13,592.592 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:21:13,632.632 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:21:13,728.728 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:21:13,730.730 INFO    ] No camera update needed
[2026-08-31 13:21:13,732.732 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:21:13,735.735 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:21:13,740.740 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:21:13,745.745 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:21:15,784.784 INFO    ] ================================================
[2026-08-31 13:21:15,800.800 INFO    ] Launching Daemon at Mon Aug 31 13:21:15 IST 2026
[2026-08-31 13:21:15,812.812 INFO    ] ================================================
[2026-08-31 13:21:16,382.382 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:21:16
[2026-08-31 13:21:16,967.967 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:21:17,214.214 INFO    ] Initializing speech engine...
[2026-08-31 13:21:17,222.222 INFO    ] 2026-08-31 13:21:17
[2026-08-31 13:21:17,497.497 INFO    ] 2026-08-31 13:21:17
[2026-08-31 13:21:17,532.532 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:21:17,795.795 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:21:17,800.800 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:21:18,023.023 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:21:18,065.065 INFO    ] time= 31/08/2026 13:21:18
[2026-08-31 13:21:18,071.071 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:21:18,089.089 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:21:18,223.223 INFO    ] No existing commands found in stream
[2026-08-31 13:21:23,235.235 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:21:23,238.238 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-08-31 13:21:24,250.250 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 13:21:24,253.253 INFO    ] Checking for system updates...
[2026-08-31 13:21:24,289.289 INFO    ] 200
[2026-08-31 13:21:24,291.291 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:21:24,343.343 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:21:24,346.346 INFO    ] No update needed
[2026-08-31 13:21:24,348.348 INFO    ] Checking for camera pi updates...
[2026-08-31 13:21:24,381.381 INFO    ] 200
[2026-08-31 13:21:24,384.384 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:21:24,430.430 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:21:24,601.601 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:21:24,603.603 INFO    ] No camera update needed
[2026-08-31 13:21:24,605.605 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:21:24,608.608 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:21:24,613.613 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:21:24,618.618 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:21:26,661.661 INFO    ] ================================================
[2026-08-31 13:21:26,676.676 INFO    ] Launching Daemon at Mon Aug 31 13:21:26 IST 2026
[2026-08-31 13:21:26,687.687 INFO    ] ================================================
[2026-08-31 13:21:27,347.347 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:21:27
[2026-08-31 13:21:28,029.029 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:21:28,334.334 INFO    ] Initializing speech engine...
[2026-08-31 13:21:28,349.349 INFO    ] 2026-08-31 13:21:28
[2026-08-31 13:21:28,636.636 INFO    ] 2026-08-31 13:21:28
[2026-08-31 13:21:28,675.675 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:21:28,927.927 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:21:28,945.945 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:21:29,165.165 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:21:29,184.184 INFO    ] time= 31/08/2026 13:21:29
[2026-08-31 13:21:29,213.213 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:21:29,221.221 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:21:29,324.324 INFO    ] No existing commands found in stream
[2026-08-31 13:21:34,346.346 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:21:34,349.349 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-08-31 13:21:36,276.276 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 13:21:36,279.279 INFO    ] Checking for system updates...
[2026-08-31 13:21:36,317.317 INFO    ] 200
[2026-08-31 13:21:36,320.320 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:21:36,374.374 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:21:36,376.376 INFO    ] No update needed
[2026-08-31 13:21:36,385.385 INFO    ] Checking for camera pi updates...
[2026-08-31 13:21:36,433.433 INFO    ] 200
[2026-08-31 13:21:36,435.435 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:21:36,476.476 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:21:36,557.557 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:21:36,560.560 INFO    ] No camera update needed
[2026-08-31 13:21:36,562.562 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:21:36,564.564 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:21:36,570.570 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:21:36,575.575 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:21:38,615.615 INFO    ] ================================================
[2026-08-31 13:21:38,631.631 INFO    ] Launching Daemon at Mon Aug 31 13:21:38 IST 2026
[2026-08-31 13:21:38,643.643 INFO    ] ================================================
[2026-08-31 13:21:39,226.226 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:21:39
[2026-08-31 13:21:39,826.826 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:21:40,102.102 INFO    ] Initializing speech engine...
[2026-08-31 13:21:40,113.113 INFO    ] 2026-08-31 13:21:40
[2026-08-31 13:21:40,369.369 INFO    ] 2026-08-31 13:21:40
[2026-08-31 13:21:40,422.422 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:21:40,649.649 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:21:40,656.656 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:21:40,899.899 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:21:40,914.914 INFO    ] time= 31/08/2026 13:21:40
[2026-08-31 13:21:40,932.932 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:21:40,949.949 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:21:41,077.077 INFO    ] No existing commands found in stream
[2026-08-31 13:21:46,101.101 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:21:46,104.104 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-08-31 13:21:47,517.517 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 13:21:47,520.520 INFO    ] Checking for system updates...
[2026-08-31 13:21:47,563.563 INFO    ] 200
[2026-08-31 13:21:47,566.566 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:21:47,629.629 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:21:47,632.632 INFO    ] No update needed
[2026-08-31 13:21:47,634.634 INFO    ] Checking for camera pi updates...
[2026-08-31 13:21:47,668.668 INFO    ] 200
[2026-08-31 13:21:47,670.670 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:21:47,720.720 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:21:47,822.822 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:21:47,824.824 INFO    ] No camera update needed
[2026-08-31 13:21:47,826.826 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:21:47,829.829 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:21:47,834.834 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:21:47,839.839 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:21:49,883.883 INFO    ] ================================================
[2026-08-31 13:21:49,899.899 INFO    ] Launching Daemon at Mon Aug 31 13:21:49 IST 2026
[2026-08-31 13:21:49,909.909 INFO    ] ================================================
[2026-08-31 13:21:50,493.493 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:21:50
[2026-08-31 13:21:51,074.074 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:21:51,355.355 INFO    ] Initializing speech engine...
[2026-08-31 13:21:51,361.361 INFO    ] 2026-08-31 13:21:51
[2026-08-31 13:21:51,626.626 INFO    ] 2026-08-31 13:21:51
[2026-08-31 13:21:51,679.679 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:21:51,927.927 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:21:51,932.932 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:21:52,140.140 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:21:52,166.166 INFO    ] time= 31/08/2026 13:21:52
[2026-08-31 13:21:52,183.183 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:21:52,213.213 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:21:52,328.328 INFO    ] No existing commands found in stream
[2026-08-31 13:21:57,354.354 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:21:57,356.356 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-08-31 13:22:00,622.622 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 13:22:00,624.624 INFO    ] Checking for system updates...
[2026-08-31 13:22:00,664.664 INFO    ] 200
[2026-08-31 13:22:00,667.667 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:22:00,718.718 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:22:00,721.721 INFO    ] No update needed
[2026-08-31 13:22:00,723.723 INFO    ] Checking for camera pi updates...
[2026-08-31 13:22:00,756.756 INFO    ] 200
[2026-08-31 13:22:00,759.759 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:22:00,800.800 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:22:00,873.873 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:22:00,876.876 INFO    ] No camera update needed
[2026-08-31 13:22:00,878.878 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:22:00,880.880 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:22:00,886.886 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:22:00,891.891 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:22:02,933.933 INFO    ] ================================================
[2026-08-31 13:22:02,950.950 INFO    ] Launching Daemon at Mon Aug 31 13:22:02 IST 2026
[2026-08-31 13:22:02,964.964 INFO    ] ================================================
[2026-08-31 13:22:03,626.626 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:22:03
[2026-08-31 13:22:04,293.293 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:22:04,606.606 INFO    ] Initializing speech engine...
[2026-08-31 13:22:04,614.614 INFO    ] 2026-08-31 13:22:04
[2026-08-31 13:22:04,894.894 INFO    ] 2026-08-31 13:22:04
[2026-08-31 13:22:05,004.004 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:22:05,213.213 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:22:05,222.222 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:22:05,416.416 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:22:05,424.424 INFO    ] time= 31/08/2026 13:22:05
[2026-08-31 13:22:05,446.446 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:22:05,474.474 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:22:05,604.604 INFO    ] No existing commands found in stream
[2026-08-31 13:22:10,635.635 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:22:10,638.638 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-08-31 13:22:12,234.234 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 13:22:12,238.238 INFO    ] Checking for system updates...
[2026-08-31 13:22:12,274.274 INFO    ] 200
[2026-08-31 13:22:12,277.277 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:22:12,331.331 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:22:12,334.334 INFO    ] No update needed
[2026-08-31 13:22:12,336.336 INFO    ] Checking for camera pi updates...
[2026-08-31 13:22:12,371.371 INFO    ] 200
[2026-08-31 13:22:12,374.374 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:22:12,415.415 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:22:12,474.474 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:22:12,477.477 INFO    ] No camera update needed
[2026-08-31 13:22:12,480.480 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:22:12,482.482 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:22:12,488.488 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:22:12,494.494 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:22:14,536.536 INFO    ] ================================================
[2026-08-31 13:22:14,552.552 INFO    ] Launching Daemon at Mon Aug 31 13:22:14 IST 2026
[2026-08-31 13:22:14,563.563 INFO    ] ================================================
[2026-08-31 13:22:15,128.128 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:22:15
[2026-08-31 13:22:15,711.711 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:22:15,984.984 INFO    ] Initializing speech engine...
[2026-08-31 13:22:15,991.991 INFO    ] 2026-08-31 13:22:15
[2026-08-31 13:22:16,235.235 INFO    ] 2026-08-31 13:22:16
[2026-08-31 13:22:16,271.271 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:22:16,523.523 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:22:16,534.534 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:22:16,749.749 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:22:16,793.793 INFO    ] time= 31/08/2026 13:22:16
[2026-08-31 13:22:16,799.799 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:22:16,817.817 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:22:16,938.938 INFO    ] No existing commands found in stream
[2026-08-31 13:22:21,958.958 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:22:21,960.960 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-08-31 13:22:22,568.568 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 13:22:22,571.571 INFO    ] Checking for system updates...
[2026-08-31 13:22:22,610.610 INFO    ] 200
[2026-08-31 13:22:22,613.613 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:22:22,665.665 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:22:22,667.667 INFO    ] No update needed
[2026-08-31 13:22:22,670.670 INFO    ] Checking for camera pi updates...
[2026-08-31 13:22:22,707.707 INFO    ] 200
[2026-08-31 13:22:22,710.710 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:22:22,755.755 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:22:22,807.807 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:22:22,809.809 INFO    ] No camera update needed
[2026-08-31 13:22:22,812.812 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:22:22,814.814 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:22:22,819.819 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:22:22,824.824 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:22:24,866.866 INFO    ] ================================================
[2026-08-31 13:22:24,882.882 INFO    ] Launching Daemon at Mon Aug 31 13:22:24 IST 2026
[2026-08-31 13:22:24,892.892 INFO    ] ================================================
[2026-08-31 13:22:25,460.460 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:22:25
[2026-08-31 13:22:26,043.043 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:22:26,310.310 INFO    ] Initializing speech engine...
[2026-08-31 13:22:26,319.319 INFO    ] 2026-08-31 13:22:26
[2026-08-31 13:22:26,566.566 INFO    ] 2026-08-31 13:22:26
[2026-08-31 13:22:26,601.601 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:22:26,852.852 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:22:26,861.861 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:22:27,054.054 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:22:27,114.114 INFO    ] time= 31/08/2026 13:22:27
[2026-08-31 13:22:27,125.125 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:22:27,143.143 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:22:27,268.268 INFO    ] No existing commands found in stream
[2026-08-31 13:22:32,279.279 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:22:32,282.282 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-08-31 13:22:35,106.106 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 13:22:35,109.109 INFO    ] Checking for system updates...
[2026-08-31 13:22:35,144.144 INFO    ] 200
[2026-08-31 13:22:35,147.147 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:22:35,199.199 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:22:35,201.201 INFO    ] No update needed
[2026-08-31 13:22:35,203.203 INFO    ] Checking for camera pi updates...
[2026-08-31 13:22:35,237.237 INFO    ] 200
[2026-08-31 13:22:35,239.239 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:22:35,281.281 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:22:35,363.363 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:22:35,365.365 INFO    ] No camera update needed
[2026-08-31 13:22:35,368.368 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:22:35,370.370 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:22:35,376.376 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:22:35,381.381 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:22:37,423.423 INFO    ] ================================================
[2026-08-31 13:22:37,439.439 INFO    ] Launching Daemon at Mon Aug 31 13:22:37 IST 2026
[2026-08-31 13:22:37,451.451 INFO    ] ================================================
[2026-08-31 13:22:38,017.017 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:22:38
[2026-08-31 13:22:38,600.600 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:22:38,869.869 INFO    ] Initializing speech engine...
[2026-08-31 13:22:38,878.878 INFO    ] 2026-08-31 13:22:38
[2026-08-31 13:22:39,123.123 INFO    ] 2026-08-31 13:22:39
[2026-08-31 13:22:39,158.158 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:22:39,350.350 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:22:39,405.405 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:22:39,553.553 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:22:39,597.597 INFO    ] time= 31/08/2026 13:22:39
[2026-08-31 13:22:39,656.656 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:22:39,686.686 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:22:39,816.816 INFO    ] No existing commands found in stream
[2026-08-31 13:22:44,838.838 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:22:44,840.840 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-08-31 13:22:46,298.298 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 13:22:46,300.300 INFO    ] Checking for system updates...
[2026-08-31 13:22:46,337.337 INFO    ] 200
[2026-08-31 13:22:46,340.340 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:22:46,393.393 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:22:46,396.396 INFO    ] No update needed
[2026-08-31 13:22:46,398.398 INFO    ] Checking for camera pi updates...
[2026-08-31 13:22:46,432.432 INFO    ] 200
[2026-08-31 13:22:46,434.434 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:22:46,474.474 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:22:46,560.560 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:22:46,562.562 INFO    ] No camera update needed
[2026-08-31 13:22:46,564.564 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:22:46,567.567 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:22:46,572.572 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:22:46,577.577 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:22:48,617.617 INFO    ] ================================================
[2026-08-31 13:22:48,633.633 INFO    ] Launching Daemon at Mon Aug 31 13:22:48 IST 2026
[2026-08-31 13:22:48,645.645 INFO    ] ================================================
[2026-08-31 13:22:49,211.211 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:22:49
[2026-08-31 13:22:49,794.794 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:22:50,062.062 INFO    ] Initializing speech engine...
[2026-08-31 13:22:50,071.071 INFO    ] 2026-08-31 13:22:50
[2026-08-31 13:22:50,317.317 INFO    ] 2026-08-31 13:22:50
[2026-08-31 13:22:50,352.352 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:22:50,603.603 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:22:50,612.612 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:22:50,745.745 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:22:50,790.790 INFO    ] time= 31/08/2026 13:22:50
[2026-08-31 13:22:50,844.844 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:22:50,875.875 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:22:51,018.018 INFO    ] No existing commands found in stream
[2026-08-31 13:22:56,034.034 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:22:56,037.037 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-08-31 13:22:58,035.035 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 13:22:58,037.037 INFO    ] Checking for system updates...
[2026-08-31 13:22:58,073.073 INFO    ] 200
[2026-08-31 13:22:58,076.076 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:22:58,136.136 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:22:58,139.139 INFO    ] No update needed
[2026-08-31 13:22:58,141.141 INFO    ] Checking for camera pi updates...
[2026-08-31 13:22:58,180.180 INFO    ] 200
[2026-08-31 13:22:58,182.182 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:22:58,228.228 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:22:58,318.318 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:22:58,320.320 INFO    ] No camera update needed
[2026-08-31 13:22:58,322.322 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:22:58,324.324 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:22:58,330.330 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:22:58,335.335 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:23:00,377.377 INFO    ] ================================================
[2026-08-31 13:23:00,393.393 INFO    ] Launching Daemon at Mon Aug 31 13:23:00 IST 2026
[2026-08-31 13:23:00,404.404 INFO    ] ================================================
[2026-08-31 13:23:00,972.972 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:23:00
[2026-08-31 13:23:01,694.694 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:23:01,986.986 INFO    ] Initializing speech engine...
[2026-08-31 13:23:01,997.997 INFO    ] 2026-08-31 13:23:01
[2026-08-31 13:23:02,335.335 INFO    ] 2026-08-31 13:23:02
[2026-08-31 13:23:02,398.398 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:23:02,603.603 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:23:02,607.607 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:23:02,819.819 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:23:02,872.872 INFO    ] time= 31/08/2026 13:23:02
[2026-08-31 13:23:02,920.920 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:23:02,959.959 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:23:03,037.037 INFO    ] No existing commands found in stream
[2026-08-31 13:23:08,049.049 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:23:08,051.051 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-08-31 13:23:09,817.817 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 13:23:09,820.820 INFO    ] Checking for system updates...
[2026-08-31 13:23:09,856.856 INFO    ] 200
[2026-08-31 13:23:09,858.858 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:23:09,910.910 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:23:09,912.912 INFO    ] No update needed
[2026-08-31 13:23:09,915.915 INFO    ] Checking for camera pi updates...
[2026-08-31 13:23:09,952.952 INFO    ] 200
[2026-08-31 13:23:09,954.954 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:23:09,998.998 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:23:10,089.089 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:23:10,092.092 INFO    ] No camera update needed
[2026-08-31 13:23:10,094.094 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:23:10,096.096 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:23:10,102.102 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:23:10,107.107 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:23:12,148.148 INFO    ] ================================================
[2026-08-31 13:23:12,169.169 INFO    ] Launching Daemon at Mon Aug 31 13:23:12 IST 2026
[2026-08-31 13:23:12,180.180 INFO    ] ================================================
[2026-08-31 13:23:12,744.744 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:23:12
[2026-08-31 13:23:13,326.326 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:23:13,579.579 INFO    ] Initializing speech engine...
[2026-08-31 13:23:13,588.588 INFO    ] 2026-08-31 13:23:13
[2026-08-31 13:23:13,877.877 INFO    ] 2026-08-31 13:23:13
[2026-08-31 13:23:13,914.914 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:23:14,201.201 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:23:14,211.211 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:23:14,358.358 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:23:14,401.401 INFO    ] time= 31/08/2026 13:23:14
[2026-08-31 13:23:14,455.455 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:23:14,507.507 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:23:14,656.656 INFO    ] No existing commands found in stream
[2026-08-31 13:23:19,681.681 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:23:19,684.684 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-08-31 13:23:23,654.654 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 13:23:23,656.656 INFO    ] Checking for system updates...
[2026-08-31 13:23:23,691.691 INFO    ] 200
[2026-08-31 13:23:23,694.694 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:23:23,755.755 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:23:23,758.758 INFO    ] No update needed
[2026-08-31 13:23:23,760.760 INFO    ] Checking for camera pi updates...
[2026-08-31 13:23:23,804.804 INFO    ] 200
[2026-08-31 13:23:23,806.806 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:23:23,851.851 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:23:23,932.932 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:23:23,935.935 INFO    ] No camera update needed
[2026-08-31 13:23:23,937.937 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:23:23,939.939 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:23:23,945.945 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:23:23,950.950 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:23:25,991.991 INFO    ] ================================================
[2026-08-31 13:23:26,007.007 INFO    ] Launching Daemon at Mon Aug 31 13:23:26 IST 2026
[2026-08-31 13:23:26,019.019 INFO    ] ================================================
[2026-08-31 13:23:26,608.608 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:23:26
[2026-08-31 13:23:27,207.207 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:23:27,485.485 INFO    ] Initializing speech engine...
[2026-08-31 13:23:27,494.494 INFO    ] 2026-08-31 13:23:27
[2026-08-31 13:23:27,753.753 INFO    ] 2026-08-31 13:23:27
[2026-08-31 13:23:27,783.783 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:23:28,029.029 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:23:28,039.039 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:23:28,256.256 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:23:28,296.296 INFO    ] time= 31/08/2026 13:23:28
[2026-08-31 13:23:28,303.303 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:23:28,323.323 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:23:28,454.454 INFO    ] No existing commands found in stream
[2026-08-31 13:23:33,476.476 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:23:33,479.479 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-08-31 13:23:37,331.331 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 13:23:37,334.334 INFO    ] Checking for system updates...
[2026-08-31 13:23:37,373.373 INFO    ] 200
[2026-08-31 13:23:37,376.376 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:23:37,430.430 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:23:37,433.433 INFO    ] No update needed
[2026-08-31 13:23:37,435.435 INFO    ] Checking for camera pi updates...
[2026-08-31 13:23:37,468.468 INFO    ] 200
[2026-08-31 13:23:37,471.471 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:23:37,511.511 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:23:37,597.597 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:23:37,600.600 INFO    ] No camera update needed
[2026-08-31 13:23:37,602.602 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:23:37,604.604 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:23:37,610.610 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:23:37,615.615 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:23:39,657.657 INFO    ] ================================================
[2026-08-31 13:23:39,673.673 INFO    ] Launching Daemon at Mon Aug 31 13:23:39 IST 2026
[2026-08-31 13:23:39,684.684 INFO    ] ================================================
[2026-08-31 13:23:40,253.253 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:23:40
[2026-08-31 13:23:40,836.836 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:23:41,087.087 INFO    ] Initializing speech engine...
[2026-08-31 13:23:41,094.094 INFO    ] 2026-08-31 13:23:41
[2026-08-31 13:23:41,387.387 INFO    ] 2026-08-31 13:23:41
[2026-08-31 13:23:41,421.421 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:23:41,617.617 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:23:41,623.623 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:23:41,874.874 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:23:41,881.881 INFO    ] time= 31/08/2026 13:23:41
[2026-08-31 13:23:41,920.920 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:23:41,974.974 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:23:42,055.055 INFO    ] No existing commands found in stream
[2026-08-31 13:23:47,066.066 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:23:47,069.069 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-08-31 13:23:51,251.251 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 13:23:51,254.254 INFO    ] Checking for system updates...
[2026-08-31 13:23:51,289.289 INFO    ] 200
[2026-08-31 13:23:51,292.292 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:23:51,350.350 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:23:51,352.352 INFO    ] No update needed
[2026-08-31 13:23:51,355.355 INFO    ] Checking for camera pi updates...
[2026-08-31 13:23:51,391.391 INFO    ] 200
[2026-08-31 13:23:51,394.394 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:23:51,434.434 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:23:51,529.529 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:23:51,531.531 INFO    ] No camera update needed
[2026-08-31 13:23:51,533.533 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:23:51,536.536 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:23:51,541.541 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:23:51,546.546 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:23:53,587.587 INFO    ] ================================================
[2026-08-31 13:23:53,603.603 INFO    ] Launching Daemon at Mon Aug 31 13:23:53 IST 2026
[2026-08-31 13:23:53,614.614 INFO    ] ================================================
[2026-08-31 13:23:54,211.211 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:23:54
[2026-08-31 13:23:54,796.796 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:23:55,082.082 INFO    ] Initializing speech engine...
[2026-08-31 13:23:55,092.092 INFO    ] 2026-08-31 13:23:55
[2026-08-31 13:23:55,357.357 INFO    ] 2026-08-31 13:23:55
[2026-08-31 13:23:55,412.412 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:23:55,763.763 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:23:55,771.771 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:23:55,944.944 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:23:55,953.953 INFO    ] time= 31/08/2026 13:23:55
[2026-08-31 13:23:55,961.961 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:23:56,003.003 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:23:56,160.160 INFO    ] No existing commands found in stream
[2026-08-31 13:24:01,175.175 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:24:01,179.179 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-08-31 13:24:03,105.105 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 13:24:03,108.108 INFO    ] Checking for system updates...
[2026-08-31 13:24:03,145.145 INFO    ] 200
[2026-08-31 13:24:03,147.147 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:24:03,200.200 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:24:03,203.203 INFO    ] No update needed
[2026-08-31 13:24:03,205.205 INFO    ] Checking for camera pi updates...
[2026-08-31 13:24:03,243.243 INFO    ] 200
[2026-08-31 13:24:03,245.245 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:24:03,291.291 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:24:03,377.377 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:24:03,380.380 INFO    ] No camera update needed
[2026-08-31 13:24:03,382.382 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:24:03,385.385 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:24:03,391.391 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:24:03,397.397 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:24:05,438.438 INFO    ] ================================================
[2026-08-31 13:24:05,453.453 INFO    ] Launching Daemon at Mon Aug 31 13:24:05 IST 2026
[2026-08-31 13:24:05,463.463 INFO    ] ================================================
[2026-08-31 13:24:06,030.030 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:24:06
[2026-08-31 13:24:06,631.631 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:24:06,879.879 INFO    ] Initializing speech engine...
[2026-08-31 13:24:06,892.892 INFO    ] 2026-08-31 13:24:06
[2026-08-31 13:24:07,158.158 INFO    ] 2026-08-31 13:24:07
[2026-08-31 13:24:07,201.201 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:24:07,458.458 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:24:07,468.468 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:24:07,619.619 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:24:07,674.674 INFO    ] time= 31/08/2026 13:24:07
[2026-08-31 13:24:07,723.723 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:24:07,743.743 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:24:07,885.885 INFO    ] No existing commands found in stream
[2026-08-31 13:24:12,909.909 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:24:12,912.912 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-08-31 13:24:16,496.496 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 13:24:16,499.499 INFO    ] Checking for system updates...
[2026-08-31 13:24:16,539.539 INFO    ] 200
[2026-08-31 13:24:16,541.541 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:24:16,600.600 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:24:16,603.603 INFO    ] No update needed
[2026-08-31 13:24:16,605.605 INFO    ] Checking for camera pi updates...
[2026-08-31 13:24:16,640.640 INFO    ] 200
[2026-08-31 13:24:16,650.650 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:24:16,710.710 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:24:16,794.794 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:24:16,797.797 INFO    ] No camera update needed
[2026-08-31 13:24:16,800.800 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:24:16,803.803 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:24:16,810.810 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:24:16,821.821 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:24:18,861.861 INFO    ] ================================================
[2026-08-31 13:24:18,876.876 INFO    ] Launching Daemon at Mon Aug 31 13:24:18 IST 2026
[2026-08-31 13:24:18,887.887 INFO    ] ================================================
[2026-08-31 13:24:19,456.456 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:24:19
[2026-08-31 13:24:20,040.040 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:24:20,300.300 INFO    ] Initializing speech engine...
[2026-08-31 13:24:20,318.318 INFO    ] 2026-08-31 13:24:20
[2026-08-31 13:24:20,568.568 INFO    ] 2026-08-31 13:24:20
[2026-08-31 13:24:20,603.603 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:24:20,801.801 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:24:20,807.807 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:24:21,003.003 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:24:21,030.030 INFO    ] time= 31/08/2026 13:24:21
[2026-08-31 13:24:21,084.084 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:24:21,138.138 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:24:21,257.257 INFO    ] No existing commands found in stream
[2026-08-31 13:24:26,279.279 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:24:26,282.282 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-08-31 13:24:28,818.818 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 13:24:28,821.821 INFO    ] Checking for system updates...
[2026-08-31 13:24:28,860.860 INFO    ] 200
[2026-08-31 13:24:28,863.863 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:24:28,924.924 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:24:28,926.926 INFO    ] No update needed
[2026-08-31 13:24:28,930.930 INFO    ] Checking for camera pi updates...
[2026-08-31 13:24:28,965.965 INFO    ] 200
[2026-08-31 13:24:28,968.968 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:24:29,009.009 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:24:29,096.096 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:24:29,099.099 INFO    ] No camera update needed
[2026-08-31 13:24:29,102.102 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:24:29,104.104 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:24:29,110.110 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:24:29,116.116 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:24:31,161.161 INFO    ] ================================================
[2026-08-31 13:24:31,177.177 INFO    ] Launching Daemon at Mon Aug 31 13:24:31 IST 2026
[2026-08-31 13:24:31,187.187 INFO    ] ================================================
[2026-08-31 13:24:31,808.808 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:24:31
[2026-08-31 13:24:32,424.424 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:24:32,708.708 INFO    ] Initializing speech engine...
[2026-08-31 13:24:32,724.724 INFO    ] 2026-08-31 13:24:32
[2026-08-31 13:24:32,980.980 INFO    ] 2026-08-31 13:24:32
[2026-08-31 13:24:33,015.015 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:24:33,271.271 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:24:33,280.280 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:24:33,529.529 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:24:33,544.544 INFO    ] time= 31/08/2026 13:24:33
[2026-08-31 13:24:33,559.559 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:24:33,569.569 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:24:33,696.696 INFO    ] No existing commands found in stream
[2026-08-31 13:24:38,711.711 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:24:38,713.713 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-08-31 13:24:42,936.936 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 13:24:42,939.939 INFO    ] Checking for system updates...
[2026-08-31 13:24:42,974.974 INFO    ] 200
[2026-08-31 13:24:42,977.977 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:24:43,031.031 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:24:43,033.033 INFO    ] No update needed
[2026-08-31 13:24:43,035.035 INFO    ] Checking for camera pi updates...
[2026-08-31 13:24:43,068.068 INFO    ] 200
[2026-08-31 13:24:43,071.071 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:24:43,112.112 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:24:43,190.190 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:24:43,192.192 INFO    ] No camera update needed
[2026-08-31 13:24:43,195.195 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:24:43,197.197 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:24:43,202.202 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:24:43,207.207 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:24:45,248.248 INFO    ] ================================================
[2026-08-31 13:24:45,263.263 INFO    ] Launching Daemon at Mon Aug 31 13:24:45 IST 2026
[2026-08-31 13:24:45,274.274 INFO    ] ================================================
[2026-08-31 13:24:45,840.840 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:24:45
[2026-08-31 13:24:46,422.422 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:24:46,680.680 INFO    ] Initializing speech engine...
[2026-08-31 13:24:46,694.694 INFO    ] 2026-08-31 13:24:46
[2026-08-31 13:24:46,949.949 INFO    ] 2026-08-31 13:24:46
[2026-08-31 13:24:46,983.983 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:24:47,231.231 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:24:47,249.249 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:24:47,415.415 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:24:47,465.465 INFO    ] time= 31/08/2026 13:24:47
[2026-08-31 13:24:47,514.514 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:24:47,540.540 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:24:47,677.677 INFO    ] No existing commands found in stream
[2026-08-31 13:24:52,699.699 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:24:52,702.702 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-08-31 13:24:56,207.207 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 13:24:56,210.210 INFO    ] Checking for system updates...
[2026-08-31 13:24:56,249.249 INFO    ] 200
[2026-08-31 13:24:56,251.251 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:24:56,310.310 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:24:56,312.312 INFO    ] No update needed
[2026-08-31 13:24:56,314.314 INFO    ] Checking for camera pi updates...
[2026-08-31 13:24:56,351.351 INFO    ] 200
[2026-08-31 13:24:56,353.353 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:24:56,393.393 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:24:56,475.475 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:24:56,478.478 INFO    ] No camera update needed
[2026-08-31 13:24:56,480.480 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:24:56,482.482 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:24:56,488.488 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:24:56,493.493 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:24:58,533.533 INFO    ] ================================================
[2026-08-31 13:24:58,548.548 INFO    ] Launching Daemon at Mon Aug 31 13:24:58 IST 2026
[2026-08-31 13:24:58,559.559 INFO    ] ================================================
[2026-08-31 13:24:59,196.196 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:24:59
[2026-08-31 13:24:59,851.851 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:25:00,151.151 INFO    ] Initializing speech engine...
[2026-08-31 13:25:00,165.165 INFO    ] 2026-08-31 13:25:00
[2026-08-31 13:25:00,447.447 INFO    ] 2026-08-31 13:25:00
[2026-08-31 13:25:00,485.485 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:25:00,763.763 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:25:00,772.772 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:25:00,957.957 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:25:00,975.975 INFO    ] time= 31/08/2026 13:25:00
[2026-08-31 13:25:00,996.996 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:25:01,022.022 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:25:01,130.130 INFO    ] No existing commands found in stream
[2026-08-31 13:25:06,159.159 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:25:06,163.163 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-08-31 13:25:07,217.217 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 13:25:07,220.220 INFO    ] Checking for system updates...
[2026-08-31 13:25:07,258.258 INFO    ] 200
[2026-08-31 13:25:07,260.260 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:25:07,320.320 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:25:07,324.324 INFO    ] No update needed
[2026-08-31 13:25:07,326.326 INFO    ] Checking for camera pi updates...
[2026-08-31 13:25:07,365.365 INFO    ] 200
[2026-08-31 13:25:07,368.368 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:25:07,411.411 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:25:07,517.517 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:25:07,520.520 INFO    ] No camera update needed
[2026-08-31 13:25:07,522.522 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:25:07,525.525 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:25:07,530.530 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:25:07,536.536 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:25:09,578.578 INFO    ] ================================================
[2026-08-31 13:25:09,593.593 INFO    ] Launching Daemon at Mon Aug 31 13:25:09 IST 2026
[2026-08-31 13:25:09,604.604 INFO    ] ================================================
[2026-08-31 13:25:10,196.196 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:25:10
[2026-08-31 13:25:10,784.784 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:25:11,045.045 INFO    ] Initializing speech engine...
[2026-08-31 13:25:11,066.066 INFO    ] 2026-08-31 13:25:11
[2026-08-31 13:25:11,344.344 INFO    ] 2026-08-31 13:25:11
[2026-08-31 13:25:11,381.381 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:25:11,577.577 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:25:11,591.591 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:25:11,762.762 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:25:11,799.799 INFO    ] time= 31/08/2026 13:25:11
[2026-08-31 13:25:11,837.837 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:25:11,843.843 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:25:11,976.976 INFO    ] No existing commands found in stream
[2026-08-31 13:25:16,994.994 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:25:16,997.997 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-08-31 13:25:18,872.872 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 13:25:18,875.875 INFO    ] Checking for system updates...
[2026-08-31 13:25:18,912.912 INFO    ] 200
[2026-08-31 13:25:18,914.914 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:25:18,970.970 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:25:18,973.973 INFO    ] No update needed
[2026-08-31 13:25:18,975.975 INFO    ] Checking for camera pi updates...
[2026-08-31 13:25:19,012.012 INFO    ] 200
[2026-08-31 13:25:19,015.015 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:25:19,059.059 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:25:19,139.139 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:25:19,142.142 INFO    ] No camera update needed
[2026-08-31 13:25:19,144.144 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:25:19,146.146 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:25:19,152.152 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:25:19,157.157 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:25:21,198.198 INFO    ] ================================================
[2026-08-31 13:25:21,214.214 INFO    ] Launching Daemon at Mon Aug 31 13:25:21 IST 2026
[2026-08-31 13:25:21,225.225 INFO    ] ================================================
[2026-08-31 13:25:21,814.814 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:25:21
[2026-08-31 13:25:22,402.402 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:25:22,658.658 INFO    ] Initializing speech engine...
[2026-08-31 13:25:22,665.665 INFO    ] 2026-08-31 13:25:22
[2026-08-31 13:25:22,961.961 INFO    ] 2026-08-31 13:25:22
[2026-08-31 13:25:22,995.995 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:25:23,221.221 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:25:23,239.239 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:25:23,449.449 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:25:23,461.461 INFO    ] time= 31/08/2026 13:25:23
[2026-08-31 13:25:23,510.510 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:25:23,564.564 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:25:23,656.656 INFO    ] No existing commands found in stream
[2026-08-31 13:25:28,668.668 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:25:28,671.671 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-08-31 13:25:32,415.415 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 13:25:32,418.418 INFO    ] Checking for system updates...
[2026-08-31 13:25:32,459.459 INFO    ] 200
[2026-08-31 13:25:32,462.462 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:25:32,520.520 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:25:32,523.523 INFO    ] No update needed
[2026-08-31 13:25:32,525.525 INFO    ] Checking for camera pi updates...
[2026-08-31 13:25:32,574.574 INFO    ] 200
[2026-08-31 13:25:32,578.578 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:25:32,658.658 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:25:32,740.740 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:25:32,742.742 INFO    ] No camera update needed
[2026-08-31 13:25:32,744.744 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:25:32,747.747 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:25:32,752.752 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:25:32,757.757 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:25:34,798.798 INFO    ] ================================================
[2026-08-31 13:25:34,813.813 INFO    ] Launching Daemon at Mon Aug 31 13:25:34 IST 2026
[2026-08-31 13:25:34,824.824 INFO    ] ================================================
[2026-08-31 13:25:35,406.406 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:25:35
[2026-08-31 13:25:35,990.990 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:25:36,243.243 INFO    ] Initializing speech engine...
[2026-08-31 13:25:36,252.252 INFO    ] 2026-08-31 13:25:36
[2026-08-31 13:25:36,545.545 INFO    ] 2026-08-31 13:25:36
[2026-08-31 13:25:36,582.582 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:25:36,779.779 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:25:36,792.792 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:25:36,962.962 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:25:37,010.010 INFO    ] time= 31/08/2026 13:25:36
[2026-08-31 13:25:37,037.037 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:25:37,049.049 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:25:37,185.185 INFO    ] No existing commands found in stream
[2026-08-31 13:25:42,196.196 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:25:42,199.199 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-08-31 13:25:45,648.648 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 13:25:45,650.650 INFO    ] Checking for system updates...
[2026-08-31 13:25:45,688.688 INFO    ] 200
[2026-08-31 13:25:45,691.691 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:25:45,745.745 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:25:45,748.748 INFO    ] No update needed
[2026-08-31 13:25:45,751.751 INFO    ] Checking for camera pi updates...
[2026-08-31 13:25:45,786.786 INFO    ] 200
[2026-08-31 13:25:45,789.789 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:25:45,831.831 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:25:46,010.010 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:25:46,013.013 INFO    ] No camera update needed
[2026-08-31 13:25:46,015.015 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:25:46,018.018 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:25:46,024.024 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:25:46,030.030 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:25:48,073.073 INFO    ] ================================================
[2026-08-31 13:25:48,089.089 INFO    ] Launching Daemon at Mon Aug 31 13:25:48 IST 2026
[2026-08-31 13:25:48,100.100 INFO    ] ================================================
[2026-08-31 13:25:48,741.741 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:25:48
[2026-08-31 13:25:49,361.361 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:25:49,657.657 INFO    ] Initializing speech engine...
[2026-08-31 13:25:49,665.665 INFO    ] 2026-08-31 13:25:49
[2026-08-31 13:25:49,954.954 INFO    ] 2026-08-31 13:25:49
[2026-08-31 13:25:49,992.992 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:25:50,272.272 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:25:50,281.281 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:25:50,478.478 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:25:50,496.496 INFO    ] time= 31/08/2026 13:25:50
[2026-08-31 13:25:50,509.509 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:25:50,533.533 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:25:50,638.638 INFO    ] No existing commands found in stream
[2026-08-31 13:25:55,668.668 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:25:55,671.671 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-08-31 13:25:57,187.187 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 13:25:57,189.189 INFO    ] Checking for system updates...
[2026-08-31 13:25:57,228.228 INFO    ] 200
[2026-08-31 13:25:57,230.230 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:25:57,284.284 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:25:57,286.286 INFO    ] No update needed
[2026-08-31 13:25:57,289.289 INFO    ] Checking for camera pi updates...
[2026-08-31 13:25:57,322.322 INFO    ] 200
[2026-08-31 13:25:57,324.324 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:25:57,369.369 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:25:57,445.445 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:25:57,448.448 INFO    ] No camera update needed
[2026-08-31 13:25:57,450.450 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:25:57,452.452 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:25:57,458.458 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:25:57,463.463 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:25:59,503.503 INFO    ] ================================================
[2026-08-31 13:25:59,519.519 INFO    ] Launching Daemon at Mon Aug 31 13:25:59 IST 2026
[2026-08-31 13:25:59,530.530 INFO    ] ================================================
[2026-08-31 13:26:00,096.096 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:26:00
[2026-08-31 13:26:00,682.682 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:26:00,950.950 INFO    ] Initializing speech engine...
[2026-08-31 13:26:00,959.959 INFO    ] 2026-08-31 13:26:00
[2026-08-31 13:26:01,220.220 INFO    ] 2026-08-31 13:26:01
[2026-08-31 13:26:01,272.272 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:26:01,475.475 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:26:01,496.496 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:26:01,711.711 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:26:01,716.716 INFO    ] time= 31/08/2026 13:26:01
[2026-08-31 13:26:01,726.726 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:26:01,735.735 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:26:01,810.810 INFO    ] No existing commands found in stream
[2026-08-31 13:26:06,822.822 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:26:06,825.825 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-08-31 13:26:09,048.048 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 13:26:09,061.061 INFO    ] Checking for system updates...
[2026-08-31 13:26:09,098.098 INFO    ] 200
[2026-08-31 13:26:09,101.101 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:26:09,161.161 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:26:09,164.164 INFO    ] No update needed
[2026-08-31 13:26:09,167.167 INFO    ] Checking for camera pi updates...
[2026-08-31 13:26:09,201.201 INFO    ] 200
[2026-08-31 13:26:09,204.204 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:26:09,245.245 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:26:09,330.330 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:26:09,333.333 INFO    ] No camera update needed
[2026-08-31 13:26:09,335.335 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:26:09,337.337 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:26:09,342.342 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:26:09,347.347 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:26:11,389.389 INFO    ] ================================================
[2026-08-31 13:26:11,407.407 INFO    ] Launching Daemon at Mon Aug 31 13:26:11 IST 2026
[2026-08-31 13:26:11,418.418 INFO    ] ================================================
[2026-08-31 13:26:12,067.067 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:26:12
[2026-08-31 13:26:12,736.736 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:26:13,051.051 INFO    ] Initializing speech engine...
[2026-08-31 13:26:13,060.060 INFO    ] 2026-08-31 13:26:13
[2026-08-31 13:26:13,363.363 INFO    ] 2026-08-31 13:26:13
[2026-08-31 13:26:13,439.439 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:26:13,658.658 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:26:13,667.667 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:26:13,849.849 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:26:13,868.868 INFO    ] time= 31/08/2026 13:26:13
[2026-08-31 13:26:13,886.886 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:26:13,904.904 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:26:14,052.052 INFO    ] No existing commands found in stream
[2026-08-31 13:26:19,083.083 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:26:19,086.086 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-08-31 13:26:20,260.260 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 13:26:20,264.264 INFO    ] Checking for system updates...
[2026-08-31 13:26:20,301.301 INFO    ] 200
[2026-08-31 13:26:20,304.304 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:26:20,359.359 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:26:20,362.362 INFO    ] No update needed
[2026-08-31 13:26:20,365.365 INFO    ] Checking for camera pi updates...
[2026-08-31 13:26:20,399.399 INFO    ] 200
[2026-08-31 13:26:20,402.402 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:26:20,444.444 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:26:20,524.524 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:26:20,526.526 INFO    ] No camera update needed
[2026-08-31 13:26:20,529.529 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:26:20,531.531 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:26:20,536.536 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:26:20,542.542 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:26:22,582.582 INFO    ] ================================================
[2026-08-31 13:26:22,598.598 INFO    ] Launching Daemon at Mon Aug 31 13:26:22 IST 2026
[2026-08-31 13:26:22,608.608 INFO    ] ================================================
[2026-08-31 13:26:23,254.254 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:26:23
[2026-08-31 13:26:23,917.917 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:26:24,216.216 INFO    ] Initializing speech engine...
[2026-08-31 13:26:24,230.230 INFO    ] 2026-08-31 13:26:24
[2026-08-31 13:26:24,508.508 INFO    ] 2026-08-31 13:26:24
[2026-08-31 13:26:24,552.552 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:26:24,842.842 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:26:24,903.903 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:26:25,090.090 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:26:25,140.140 INFO    ] time= 31/08/2026 13:26:25
[2026-08-31 13:26:25,187.187 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:26:25,242.242 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:26:25,438.438 INFO    ] No existing commands found in stream
[2026-08-31 13:26:30,456.456 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:26:30,460.460 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-08-31 13:26:32,658.658 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 13:26:32,662.662 INFO    ] Checking for system updates...
[2026-08-31 13:26:32,703.703 INFO    ] 200
[2026-08-31 13:26:32,707.707 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:26:32,775.775 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:26:32,779.779 INFO    ] No update needed
[2026-08-31 13:26:32,782.782 INFO    ] Checking for camera pi updates...
[2026-08-31 13:26:32,820.820 INFO    ] 200
[2026-08-31 13:26:32,822.822 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:26:32,866.866 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:26:32,993.993 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:26:32,995.995 INFO    ] No camera update needed
[2026-08-31 13:26:32,997.997 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:26:33,000.000 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:26:33,005.005 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:26:33,010.010 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:26:35,050.050 INFO    ] ================================================
[2026-08-31 13:26:35,066.066 INFO    ] Launching Daemon at Mon Aug 31 13:26:35 IST 2026
[2026-08-31 13:26:35,076.076 INFO    ] ================================================
[2026-08-31 13:26:35,723.723 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:26:35
[2026-08-31 13:26:36,388.388 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:26:36,690.690 INFO    ] Initializing speech engine...
[2026-08-31 13:26:36,704.704 INFO    ] 2026-08-31 13:26:36
[2026-08-31 13:26:36,986.986 INFO    ] 2026-08-31 13:26:36
[2026-08-31 13:26:37,022.022 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:26:37,303.303 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:26:37,312.312 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:26:37,511.511 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:26:37,530.530 INFO    ] time= 31/08/2026 13:26:37
[2026-08-31 13:26:37,558.558 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:26:37,568.568 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:26:37,693.693 INFO    ] No existing commands found in stream
[2026-08-31 13:26:42,724.724 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:26:42,728.728 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-08-31 13:26:43,350.350 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 13:26:43,353.353 INFO    ] Checking for system updates...
[2026-08-31 13:26:43,390.390 INFO    ] 200
[2026-08-31 13:26:43,392.392 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:26:43,444.444 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:26:43,447.447 INFO    ] No update needed
[2026-08-31 13:26:43,450.450 INFO    ] Checking for camera pi updates...
[2026-08-31 13:26:43,486.486 INFO    ] 200
[2026-08-31 13:26:43,489.489 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:26:43,529.529 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:26:43,614.614 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:26:43,616.616 INFO    ] No camera update needed
[2026-08-31 13:26:43,618.618 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:26:43,621.621 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:26:43,626.626 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:26:43,631.631 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:26:45,671.671 INFO    ] ================================================
[2026-08-31 13:26:45,686.686 INFO    ] Launching Daemon at Mon Aug 31 13:26:45 IST 2026
[2026-08-31 13:26:45,697.697 INFO    ] ================================================
[2026-08-31 13:26:46,262.262 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:26:46
[2026-08-31 13:26:46,842.842 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:26:47,105.105 INFO    ] Initializing speech engine...
[2026-08-31 13:26:47,117.117 INFO    ] 2026-08-31 13:26:47
[2026-08-31 13:26:47,363.363 INFO    ] 2026-08-31 13:26:47
[2026-08-31 13:26:47,398.398 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:26:47,654.654 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:26:47,659.659 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:26:47,874.874 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:26:47,914.914 INFO    ] time= 31/08/2026 13:26:47
[2026-08-31 13:26:47,920.920 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:26:47,937.937 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:26:48,067.067 INFO    ] No existing commands found in stream
[2026-08-31 13:26:53,079.079 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:26:53,082.082 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-08-31 13:26:53,793.793 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 13:26:53,796.796 INFO    ] Checking for system updates...
[2026-08-31 13:26:53,832.832 INFO    ] 200
[2026-08-31 13:26:53,834.834 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:26:53,886.886 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:26:53,889.889 INFO    ] No update needed
[2026-08-31 13:26:53,891.891 INFO    ] Checking for camera pi updates...
[2026-08-31 13:26:53,929.929 INFO    ] 200
[2026-08-31 13:26:53,931.931 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:26:53,975.975 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:26:54,075.075 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:26:54,078.078 INFO    ] No camera update needed
[2026-08-31 13:26:54,080.080 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:26:54,082.082 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:26:54,088.088 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:26:54,092.092 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:26:56,133.133 INFO    ] ================================================
[2026-08-31 13:26:56,149.149 INFO    ] Launching Daemon at Mon Aug 31 13:26:56 IST 2026
[2026-08-31 13:26:56,159.159 INFO    ] ================================================
[2026-08-31 13:26:56,800.800 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:26:56
[2026-08-31 13:26:57,458.458 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:26:57,758.758 INFO    ] Initializing speech engine...
[2026-08-31 13:26:57,766.766 INFO    ] 2026-08-31 13:26:57
[2026-08-31 13:26:58,041.041 INFO    ] 2026-08-31 13:26:58
[2026-08-31 13:26:58,098.098 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:26:58,334.334 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:26:58,337.337 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:26:58,557.557 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:26:58,600.600 INFO    ] time= 31/08/2026 13:26:58
[2026-08-31 13:26:58,607.607 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:26:58,625.625 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:26:58,757.757 INFO    ] No existing commands found in stream
[2026-08-31 13:27:03,785.785 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:27:03,789.789 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-08-31 13:27:07,314.314 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 13:27:07,317.317 INFO    ] Checking for system updates...
[2026-08-31 13:27:07,353.353 INFO    ] 200
[2026-08-31 13:27:07,356.356 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:27:07,414.414 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:27:07,416.416 INFO    ] No update needed
[2026-08-31 13:27:07,419.419 INFO    ] Checking for camera pi updates...
[2026-08-31 13:27:07,456.456 INFO    ] 200
[2026-08-31 13:27:07,459.459 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:27:07,504.504 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:27:07,588.588 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:27:07,590.590 INFO    ] No camera update needed
[2026-08-31 13:27:07,593.593 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:27:07,595.595 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:27:07,601.601 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:27:07,607.607 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:27:09,647.647 INFO    ] ================================================
[2026-08-31 13:27:09,662.662 INFO    ] Launching Daemon at Mon Aug 31 13:27:09 IST 2026
[2026-08-31 13:27:09,672.672 INFO    ] ================================================
[2026-08-31 13:27:10,251.251 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:27:10
[2026-08-31 13:27:10,832.832 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:27:11,099.099 INFO    ] Initializing speech engine...
[2026-08-31 13:27:11,108.108 INFO    ] 2026-08-31 13:27:11
[2026-08-31 13:27:11,353.353 INFO    ] 2026-08-31 13:27:11
[2026-08-31 13:27:11,388.388 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:27:11,621.621 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:27:11,642.642 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:27:11,779.779 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:27:11,821.821 INFO    ] time= 31/08/2026 13:27:11
[2026-08-31 13:27:11,870.870 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:27:11,911.911 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:27:12,056.056 INFO    ] No existing commands found in stream
[2026-08-31 13:27:17,069.069 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:27:17,072.072 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-08-31 13:27:17,911.911 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 13:27:17,914.914 INFO    ] Checking for system updates...
[2026-08-31 13:27:17,952.952 INFO    ] 200
[2026-08-31 13:27:17,955.955 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:27:18,012.012 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:27:18,015.015 INFO    ] No update needed
[2026-08-31 13:27:18,017.017 INFO    ] Checking for camera pi updates...
[2026-08-31 13:27:18,050.050 INFO    ] 200
[2026-08-31 13:27:18,053.053 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:27:18,092.092 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:27:18,172.172 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:27:18,174.174 INFO    ] No camera update needed
[2026-08-31 13:27:18,177.177 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:27:18,179.179 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:27:18,184.184 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:27:18,189.189 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:27:20,231.231 INFO    ] ================================================
[2026-08-31 13:27:20,246.246 INFO    ] Launching Daemon at Mon Aug 31 13:27:20 IST 2026
[2026-08-31 13:27:20,256.256 INFO    ] ================================================
[2026-08-31 13:27:20,827.827 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:27:20
[2026-08-31 13:27:21,412.412 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:27:21,679.679 INFO    ] Initializing speech engine...
[2026-08-31 13:27:21,690.690 INFO    ] 2026-08-31 13:27:21
[2026-08-31 13:27:21,936.936 INFO    ] 2026-08-31 13:27:21
[2026-08-31 13:27:22,001.001 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:27:22,226.226 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:27:22,231.231 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:27:22,364.364 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:27:22,424.424 INFO    ] time= 31/08/2026 13:27:22
[2026-08-31 13:27:22,483.483 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:27:22,498.498 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:27:22,645.645 INFO    ] No existing commands found in stream
[2026-08-31 13:27:27,667.667 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:27:27,670.670 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-08-31 13:27:31,528.528 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 13:27:31,531.531 INFO    ] Checking for system updates...
[2026-08-31 13:27:31,568.568 INFO    ] 200
[2026-08-31 13:27:31,571.571 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:27:31,650.650 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:27:31,653.653 INFO    ] No update needed
[2026-08-31 13:27:31,658.658 INFO    ] Checking for camera pi updates...
[2026-08-31 13:27:31,700.700 INFO    ] 200
[2026-08-31 13:27:31,702.702 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:27:31,752.752 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:27:31,815.815 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:27:31,818.818 INFO    ] No camera update needed
[2026-08-31 13:27:31,821.821 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:27:31,824.824 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:27:31,831.831 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:27:31,837.837 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:27:33,879.879 INFO    ] ================================================
[2026-08-31 13:27:33,894.894 INFO    ] Launching Daemon at Mon Aug 31 13:27:33 IST 2026
[2026-08-31 13:27:33,905.905 INFO    ] ================================================
[2026-08-31 13:27:34,471.471 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:27:34
[2026-08-31 13:27:35,056.056 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:27:35,322.322 INFO    ] Initializing speech engine...
[2026-08-31 13:27:35,335.335 INFO    ] 2026-08-31 13:27:35
[2026-08-31 13:27:35,586.586 INFO    ] 2026-08-31 13:27:35
[2026-08-31 13:27:35,622.622 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:27:35,902.902 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:27:35,908.908 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:27:36,141.141 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:27:36,153.153 INFO    ] time= 31/08/2026 13:27:36
[2026-08-31 13:27:36,171.171 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:27:36,199.199 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:27:36,333.333 INFO    ] No existing commands found in stream
[2026-08-31 13:27:41,358.358 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:27:41,361.361 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-08-31 13:27:44,327.327 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 13:27:44,330.330 INFO    ] Checking for system updates...
[2026-08-31 13:27:44,365.365 INFO    ] 200
[2026-08-31 13:27:44,368.368 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:27:44,420.420 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:27:44,423.423 INFO    ] No update needed
[2026-08-31 13:27:44,425.425 INFO    ] Checking for camera pi updates...
[2026-08-31 13:27:44,459.459 INFO    ] 200
[2026-08-31 13:27:44,461.461 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:27:44,505.505 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:27:44,585.585 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:27:44,588.588 INFO    ] No camera update needed
[2026-08-31 13:27:44,590.590 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:27:44,593.593 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:27:44,598.598 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:27:44,603.603 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:27:46,645.645 INFO    ] ================================================
[2026-08-31 13:27:46,660.660 INFO    ] Launching Daemon at Mon Aug 31 13:27:46 IST 2026
[2026-08-31 13:27:46,671.671 INFO    ] ================================================
[2026-08-31 13:27:47,260.260 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:27:47
[2026-08-31 13:27:47,857.857 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:27:48,128.128 INFO    ] Initializing speech engine...
[2026-08-31 13:27:48,134.134 INFO    ] 2026-08-31 13:27:48
[2026-08-31 13:27:48,381.381 INFO    ] 2026-08-31 13:27:48
[2026-08-31 13:27:48,448.448 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:27:48,734.734 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:27:48,738.738 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:27:48,937.937 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:27:48,955.955 INFO    ] time= 31/08/2026 13:27:48
[2026-08-31 13:27:48,973.973 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:27:48,991.991 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:27:49,153.153 INFO    ] No existing commands found in stream
[2026-08-31 13:27:54,184.184 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:27:54,187.187 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-08-31 13:27:57,145.145 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 13:27:57,148.148 INFO    ] Checking for system updates...
[2026-08-31 13:27:57,183.183 INFO    ] 200
[2026-08-31 13:27:57,185.185 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:27:57,239.239 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:27:57,241.241 INFO    ] No update needed
[2026-08-31 13:27:57,243.243 INFO    ] Checking for camera pi updates...
[2026-08-31 13:27:57,281.281 INFO    ] 200
[2026-08-31 13:27:57,283.283 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:27:57,327.327 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:27:57,500.500 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:27:57,502.502 INFO    ] No camera update needed
[2026-08-31 13:27:57,504.504 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:27:57,506.506 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:27:57,512.512 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:27:57,517.517 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:27:59,558.558 INFO    ] ================================================
[2026-08-31 13:27:59,573.573 INFO    ] Launching Daemon at Mon Aug 31 13:27:59 IST 2026
[2026-08-31 13:27:59,584.584 INFO    ] ================================================
[2026-08-31 13:28:00,158.158 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:28:00
[2026-08-31 13:28:00,742.742 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:28:01,015.015 INFO    ] Initializing speech engine...
[2026-08-31 13:28:01,024.024 INFO    ] 2026-08-31 13:28:01
[2026-08-31 13:28:01,271.271 INFO    ] 2026-08-31 13:28:01
[2026-08-31 13:28:01,306.306 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:28:01,602.602 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:28:01,634.634 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:28:01,912.912 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:28:01,947.947 INFO    ] time= 31/08/2026 13:28:01
[2026-08-31 13:28:02,005.005 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:28:02,013.013 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:28:02,168.168 INFO    ] No existing commands found in stream
[2026-08-31 13:28:07,199.199 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:28:07,202.202 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-08-31 13:28:09,449.449 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 13:28:09,452.452 INFO    ] Checking for system updates...
[2026-08-31 13:28:09,487.487 INFO    ] 200
[2026-08-31 13:28:09,490.490 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:28:09,542.542 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:28:09,544.544 INFO    ] No update needed
[2026-08-31 13:28:09,546.546 INFO    ] Checking for camera pi updates...
[2026-08-31 13:28:09,583.583 INFO    ] 200
[2026-08-31 13:28:09,585.585 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:28:09,626.626 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:28:09,718.718 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:28:09,720.720 INFO    ] No camera update needed
[2026-08-31 13:28:09,723.723 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:28:09,725.725 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:28:09,730.730 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:28:09,735.735 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:28:11,778.778 INFO    ] ================================================
[2026-08-31 13:28:11,793.793 INFO    ] Launching Daemon at Mon Aug 31 13:28:11 IST 2026
[2026-08-31 13:28:11,804.804 INFO    ] ================================================
[2026-08-31 13:28:12,367.367 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:28:12
[2026-08-31 13:28:12,956.956 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:28:13,214.214 INFO    ] Initializing speech engine...
[2026-08-31 13:28:13,233.233 INFO    ] 2026-08-31 13:28:13
[2026-08-31 13:28:13,485.485 INFO    ] 2026-08-31 13:28:13
[2026-08-31 13:28:13,520.520 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:28:13,777.777 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:28:13,786.786 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:28:14,017.017 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:28:14,051.051 INFO    ] time= 31/08/2026 13:28:14
[2026-08-31 13:28:14,056.056 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:28:14,074.074 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:28:14,202.202 INFO    ] No existing commands found in stream
[2026-08-31 13:28:19,218.218 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:28:19,221.221 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-08-31 13:28:19,808.808 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 13:28:19,810.810 INFO    ] Checking for system updates...
[2026-08-31 13:28:19,845.845 INFO    ] 200
[2026-08-31 13:28:19,848.848 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:28:19,900.900 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:28:19,903.903 INFO    ] No update needed
[2026-08-31 13:28:19,905.905 INFO    ] Checking for camera pi updates...
[2026-08-31 13:28:19,942.942 INFO    ] 200
[2026-08-31 13:28:19,944.944 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:28:19,985.985 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:28:20,078.078 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:28:20,080.080 INFO    ] No camera update needed
[2026-08-31 13:28:20,083.083 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:28:20,085.085 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:28:20,090.090 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:28:20,095.095 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:28:22,134.134 INFO    ] ================================================
[2026-08-31 13:28:22,149.149 INFO    ] Launching Daemon at Mon Aug 31 13:28:22 IST 2026
[2026-08-31 13:28:22,160.160 INFO    ] ================================================
[2026-08-31 13:28:22,736.736 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:28:22
[2026-08-31 13:28:23,317.317 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:28:23,590.590 INFO    ] Initializing speech engine...
[2026-08-31 13:28:23,597.597 INFO    ] 2026-08-31 13:28:23
[2026-08-31 13:28:23,841.841 INFO    ] 2026-08-31 13:28:23
[2026-08-31 13:28:23,875.875 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:28:24,047.047 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:28:24,059.059 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:28:24,203.203 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:28:24,207.207 INFO    ] time= 31/08/2026 13:28:24
[2026-08-31 13:28:24,213.213 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:28:24,259.259 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:28:24,398.398 INFO    ] No existing commands found in stream
[2026-08-31 13:28:29,413.413 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:28:29,415.415 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-08-31 13:28:33,171.171 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 13:28:33,173.173 INFO    ] Checking for system updates...
[2026-08-31 13:28:33,212.212 INFO    ] 200
[2026-08-31 13:28:33,215.215 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:28:33,268.268 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:28:33,270.270 INFO    ] No update needed
[2026-08-31 13:28:33,273.273 INFO    ] Checking for camera pi updates...
[2026-08-31 13:28:33,309.309 INFO    ] 200
[2026-08-31 13:28:33,312.312 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:28:33,352.352 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:28:33,471.471 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:28:33,475.475 INFO    ] No camera update needed
[2026-08-31 13:28:33,478.478 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:28:33,481.481 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:28:33,486.486 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:28:33,491.491 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:28:35,532.532 INFO    ] ================================================
[2026-08-31 13:28:35,547.547 INFO    ] Launching Daemon at Mon Aug 31 13:28:35 IST 2026
[2026-08-31 13:28:35,558.558 INFO    ] ================================================
[2026-08-31 13:28:36,204.204 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:28:36
[2026-08-31 13:28:36,863.863 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:28:37,160.160 INFO    ] Initializing speech engine...
[2026-08-31 13:28:37,174.174 INFO    ] 2026-08-31 13:28:37
[2026-08-31 13:28:37,451.451 INFO    ] 2026-08-31 13:28:37
[2026-08-31 13:28:37,496.496 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:28:37,779.779 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:28:37,783.783 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:28:37,976.976 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:28:37,984.984 INFO    ] time= 31/08/2026 13:28:37
[2026-08-31 13:28:38,003.003 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:28:38,019.019 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:28:38,137.137 INFO    ] No existing commands found in stream
[2026-08-31 13:28:43,154.154 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:28:43,157.157 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-08-31 13:28:46,142.142 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 13:28:46,145.145 INFO    ] Checking for system updates...
[2026-08-31 13:28:46,182.182 INFO    ] 200
[2026-08-31 13:28:46,184.184 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:28:46,242.242 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:28:46,244.244 INFO    ] No update needed
[2026-08-31 13:28:46,247.247 INFO    ] Checking for camera pi updates...
[2026-08-31 13:28:46,280.280 INFO    ] 200
[2026-08-31 13:28:46,283.283 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:28:46,327.327 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:28:46,405.405 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:28:46,408.408 INFO    ] No camera update needed
[2026-08-31 13:28:46,410.410 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:28:46,413.413 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:28:46,418.418 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:28:46,423.423 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:28:48,462.462 INFO    ] ================================================
[2026-08-31 13:28:48,477.477 INFO    ] Launching Daemon at Mon Aug 31 13:28:48 IST 2026
[2026-08-31 13:28:48,488.488 INFO    ] ================================================
[2026-08-31 13:28:49,116.116 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:28:49
[2026-08-31 13:28:49,763.763 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:28:50,058.058 INFO    ] Initializing speech engine...
[2026-08-31 13:28:50,066.066 INFO    ] 2026-08-31 13:28:50
[2026-08-31 13:28:50,381.381 INFO    ] 2026-08-31 13:28:50
[2026-08-31 13:28:50,465.465 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:28:50,678.678 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:28:50,683.683 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:28:50,881.881 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:28:50,899.899 INFO    ] time= 31/08/2026 13:28:50
[2026-08-31 13:28:50,922.922 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:28:50,935.935 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:28:51,078.078 INFO    ] No existing commands found in stream
[2026-08-31 13:28:56,100.100 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:28:56,103.103 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-08-31 13:28:58,144.144 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 13:28:58,146.146 INFO    ] Checking for system updates...
[2026-08-31 13:28:58,182.182 INFO    ] 200
[2026-08-31 13:28:58,185.185 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:28:58,238.238 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:28:58,240.240 INFO    ] No update needed
[2026-08-31 13:28:58,243.243 INFO    ] Checking for camera pi updates...
[2026-08-31 13:28:58,276.276 INFO    ] 200
[2026-08-31 13:28:58,279.279 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:28:58,322.322 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:28:58,403.403 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:28:58,405.405 INFO    ] No camera update needed
[2026-08-31 13:28:58,407.407 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:28:58,410.410 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:28:58,415.415 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:28:58,420.420 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:29:00,462.462 INFO    ] ================================================
[2026-08-31 13:29:00,477.477 INFO    ] Launching Daemon at Mon Aug 31 13:29:00 IST 2026
[2026-08-31 13:29:00,488.488 INFO    ] ================================================
[2026-08-31 13:29:01,059.059 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:29:01
[2026-08-31 13:29:01,735.735 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:29:02,150.150 INFO    ] Initializing speech engine...
[2026-08-31 13:29:02,161.161 INFO    ] 2026-08-31 13:29:02
[2026-08-31 13:29:02,534.534 INFO    ] 2026-08-31 13:29:02
[2026-08-31 13:29:02,605.605 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:29:02,917.917 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:29:02,957.957 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:29:03,216.216 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:29:03,254.254 INFO    ] time= 31/08/2026 13:29:03
[2026-08-31 13:29:03,314.314 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:29:03,381.381 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:29:03,527.527 INFO    ] No existing commands found in stream
[2026-08-31 13:29:08,552.552 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:29:08,554.554 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-08-31 13:29:10,574.574 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 13:29:10,576.576 INFO    ] Checking for system updates...
[2026-08-31 13:29:10,612.612 INFO    ] 200
[2026-08-31 13:29:10,615.615 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:29:10,673.673 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:29:10,675.675 INFO    ] No update needed
[2026-08-31 13:29:10,678.678 INFO    ] Checking for camera pi updates...
[2026-08-31 13:29:10,711.711 INFO    ] 200
[2026-08-31 13:29:10,713.713 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:29:10,754.754 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:29:10,857.857 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:29:10,859.859 INFO    ] No camera update needed
[2026-08-31 13:29:10,862.862 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:29:10,864.864 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:29:10,869.869 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:29:10,874.874 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:29:12,914.914 INFO    ] ================================================
[2026-08-31 13:29:12,929.929 INFO    ] Launching Daemon at Mon Aug 31 13:29:12 IST 2026
[2026-08-31 13:29:12,940.940 INFO    ] ================================================
[2026-08-31 13:29:13,509.509 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:29:13
[2026-08-31 13:29:14,097.097 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:29:14,348.348 INFO    ] Initializing speech engine...
[2026-08-31 13:29:14,364.364 INFO    ] 2026-08-31 13:29:14
[2026-08-31 13:29:14,644.644 INFO    ] 2026-08-31 13:29:14
[2026-08-31 13:29:14,681.681 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:29:14,901.901 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:29:14,950.950 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:29:15,173.173 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:29:15,238.238 INFO    ] time= 31/08/2026 13:29:15
[2026-08-31 13:29:15,266.266 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:29:15,282.282 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:29:15,432.432 INFO    ] No existing commands found in stream
[2026-08-31 13:29:20,452.452 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:29:20,455.455 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-08-31 13:29:24,888.888 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 13:29:24,891.891 INFO    ] Checking for system updates...
[2026-08-31 13:29:24,930.930 INFO    ] 200
[2026-08-31 13:29:24,933.933 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:29:24,990.990 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:29:24,993.993 INFO    ] No update needed
[2026-08-31 13:29:24,995.995 INFO    ] Checking for camera pi updates...
[2026-08-31 13:29:25,032.032 INFO    ] 200
[2026-08-31 13:29:25,035.035 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:29:25,084.084 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:29:25,178.178 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:29:25,181.181 INFO    ] No camera update needed
[2026-08-31 13:29:25,183.183 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:29:25,186.186 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:29:25,192.192 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:29:25,198.198 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:29:27,240.240 INFO    ] ================================================
[2026-08-31 13:29:27,255.255 INFO    ] Launching Daemon at Mon Aug 31 13:29:27 IST 2026
[2026-08-31 13:29:27,265.265 INFO    ] ================================================
[2026-08-31 13:29:27,892.892 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:29:27
[2026-08-31 13:29:28,539.539 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:29:28,827.827 INFO    ] Initializing speech engine...
[2026-08-31 13:29:28,836.836 INFO    ] 2026-08-31 13:29:28
[2026-08-31 13:29:29,092.092 INFO    ] 2026-08-31 13:29:29
[2026-08-31 13:29:29,148.148 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:29:29,383.383 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:29:29,385.385 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:29:29,618.618 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:29:29,639.639 INFO    ] time= 31/08/2026 13:29:29
[2026-08-31 13:29:29,654.654 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:29:29,661.661 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:29:29,787.787 INFO    ] No existing commands found in stream
[2026-08-31 13:29:34,801.801 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:29:34,804.804 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-08-31 13:29:35,648.648 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 13:29:35,651.651 INFO    ] Checking for system updates...
[2026-08-31 13:29:35,687.687 INFO    ] 200
[2026-08-31 13:29:35,690.690 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:29:35,742.742 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:29:35,745.745 INFO    ] No update needed
[2026-08-31 13:29:35,748.748 INFO    ] Checking for camera pi updates...
[2026-08-31 13:29:35,786.786 INFO    ] 200
[2026-08-31 13:29:35,789.789 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:29:35,831.831 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:29:35,918.918 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:29:35,921.921 INFO    ] No camera update needed
[2026-08-31 13:29:35,923.923 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:29:35,926.926 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:29:35,932.932 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:29:35,938.938 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:29:37,979.979 INFO    ] ================================================
[2026-08-31 13:29:37,994.994 INFO    ] Launching Daemon at Mon Aug 31 13:29:37 IST 2026
[2026-08-31 13:29:38,005.005 INFO    ] ================================================
[2026-08-31 13:29:38,636.636 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:29:38
[2026-08-31 13:29:39,236.236 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:29:39,498.498 INFO    ] Initializing speech engine...
[2026-08-31 13:29:39,510.510 INFO    ] 2026-08-31 13:29:39
[2026-08-31 13:29:39,756.756 INFO    ] 2026-08-31 13:29:39
[2026-08-31 13:29:39,791.791 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:29:40,065.065 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:29:40,074.074 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:29:40,268.268 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:29:40,306.306 INFO    ] time= 31/08/2026 13:29:40
[2026-08-31 13:29:40,324.324 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:29:40,333.333 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:29:40,484.484 INFO    ] No existing commands found in stream
[2026-08-31 13:29:45,509.509 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:29:45,512.512 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-08-31 13:29:46,148.148 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 13:29:46,151.151 INFO    ] Checking for system updates...
[2026-08-31 13:29:46,191.191 INFO    ] 200
[2026-08-31 13:29:46,193.193 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:29:46,252.252 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:29:46,255.255 INFO    ] No update needed
[2026-08-31 13:29:46,258.258 INFO    ] Checking for camera pi updates...
[2026-08-31 13:29:46,295.295 INFO    ] 200
[2026-08-31 13:29:46,298.298 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:29:46,344.344 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:29:46,438.438 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:29:46,440.440 INFO    ] No camera update needed
[2026-08-31 13:29:46,443.443 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:29:46,446.446 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:29:46,452.452 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:29:46,458.458 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:29:48,500.500 INFO    ] ================================================
[2026-08-31 13:29:48,515.515 INFO    ] Launching Daemon at Mon Aug 31 13:29:48 IST 2026
[2026-08-31 13:29:48,526.526 INFO    ] ================================================
[2026-08-31 13:29:49,097.097 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:29:49
[2026-08-31 13:29:49,683.683 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:29:49,951.951 INFO    ] Initializing speech engine...
[2026-08-31 13:29:49,970.970 INFO    ] 2026-08-31 13:29:49
[2026-08-31 13:29:50,233.233 INFO    ] 2026-08-31 13:29:50
[2026-08-31 13:29:50,270.270 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:29:50,551.551 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:29:50,561.561 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:29:50,790.790 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:29:50,847.847 INFO    ] time= 31/08/2026 13:29:50
[2026-08-31 13:29:50,853.853 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:29:50,871.871 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:29:50,986.986 INFO    ] No existing commands found in stream
[2026-08-31 13:29:56,016.016 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:29:56,019.019 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-08-31 13:29:57,466.466 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 13:29:57,469.469 INFO    ] Checking for system updates...
[2026-08-31 13:29:57,504.504 INFO    ] 200
[2026-08-31 13:29:57,506.506 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:29:57,564.564 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:29:57,567.567 INFO    ] No update needed
[2026-08-31 13:29:57,569.569 INFO    ] Checking for camera pi updates...
[2026-08-31 13:29:57,603.603 INFO    ] 200
[2026-08-31 13:29:57,605.605 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:29:57,649.649 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:29:57,740.740 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:29:57,742.742 INFO    ] No camera update needed
[2026-08-31 13:29:57,745.745 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:29:57,747.747 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:29:57,752.752 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:29:57,757.757 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:29:59,797.797 INFO    ] ================================================
[2026-08-31 13:29:59,813.813 INFO    ] Launching Daemon at Mon Aug 31 13:29:59 IST 2026
[2026-08-31 13:29:59,824.824 INFO    ] ================================================
[2026-08-31 13:30:00,397.397 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:30:00
[2026-08-31 13:30:00,981.981 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:30:01,232.232 INFO    ] Initializing speech engine...
[2026-08-31 13:30:01,241.241 INFO    ] 2026-08-31 13:30:01
[2026-08-31 13:30:01,517.517 INFO    ] 2026-08-31 13:30:01
[2026-08-31 13:30:01,553.553 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:30:01,809.809 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:30:01,827.827 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:30:02,103.103 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:30:02,138.138 INFO    ] time= 31/08/2026 13:30:02
[2026-08-31 13:30:02,141.141 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:30:02,144.144 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:30:02,242.242 INFO    ] No existing commands found in stream
[2026-08-31 13:30:07,258.258 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:30:07,262.262 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-08-31 13:30:11,446.446 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 13:30:11,449.449 INFO    ] Checking for system updates...
[2026-08-31 13:30:11,485.485 INFO    ] 200
[2026-08-31 13:30:11,488.488 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:30:11,544.544 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:30:11,547.547 INFO    ] No update needed
[2026-08-31 13:30:11,549.549 INFO    ] Checking for camera pi updates...
[2026-08-31 13:30:11,591.591 INFO    ] 200
[2026-08-31 13:30:11,593.593 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:30:11,634.634 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:30:11,724.724 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:30:11,726.726 INFO    ] No camera update needed
[2026-08-31 13:30:11,729.729 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:30:11,731.731 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:30:11,736.736 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:30:11,741.741 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:30:13,782.782 INFO    ] ================================================
[2026-08-31 13:30:13,798.798 INFO    ] Launching Daemon at Mon Aug 31 13:30:13 IST 2026
[2026-08-31 13:30:13,809.809 INFO    ] ================================================
[2026-08-31 13:30:14,395.395 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:30:14
[2026-08-31 13:30:14,992.992 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:30:15,265.265 INFO    ] Initializing speech engine...
[2026-08-31 13:30:15,274.274 INFO    ] 2026-08-31 13:30:15
[2026-08-31 13:30:15,536.536 INFO    ] 2026-08-31 13:30:15
[2026-08-31 13:30:15,588.588 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:30:15,817.817 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:30:15,822.822 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:30:16,024.024 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:30:16,079.079 INFO    ] time= 31/08/2026 13:30:16
[2026-08-31 13:30:16,085.085 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:30:16,104.104 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:30:16,255.255 INFO    ] No existing commands found in stream
[2026-08-31 13:30:21,285.285 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:30:21,288.288 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-08-31 13:30:21,865.865 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 13:30:21,867.867 INFO    ] Checking for system updates...
[2026-08-31 13:30:21,904.904 INFO    ] 200
[2026-08-31 13:30:21,906.906 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:30:21,961.961 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:30:21,964.964 INFO    ] No update needed
[2026-08-31 13:30:21,967.967 INFO    ] Checking for camera pi updates...
[2026-08-31 13:30:22,001.001 INFO    ] 200
[2026-08-31 13:30:22,004.004 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:30:22,051.051 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:30:22,154.154 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:30:22,157.157 INFO    ] No camera update needed
[2026-08-31 13:30:22,160.160 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:30:22,163.163 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:30:22,169.169 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:30:22,175.175 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:30:24,218.218 INFO    ] ================================================
[2026-08-31 13:30:24,233.233 INFO    ] Launching Daemon at Mon Aug 31 13:30:24 IST 2026
[2026-08-31 13:30:24,245.245 INFO    ] ================================================
[2026-08-31 13:30:24,892.892 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:30:24
[2026-08-31 13:30:25,475.475 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:30:25,733.733 INFO    ] Initializing speech engine...
[2026-08-31 13:30:25,748.748 INFO    ] 2026-08-31 13:30:25
[2026-08-31 13:30:26,002.002 INFO    ] 2026-08-31 13:30:25
[2026-08-31 13:30:26,036.036 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:30:26,299.299 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:30:26,305.305 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:30:26,527.527 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:30:26,566.566 INFO    ] time= 31/08/2026 13:30:26
[2026-08-31 13:30:26,572.572 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:30:26,590.590 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:30:26,720.720 INFO    ] No existing commands found in stream
[2026-08-31 13:30:31,733.733 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:30:31,736.736 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-08-31 13:30:32,854.854 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 13:30:32,856.856 INFO    ] Checking for system updates...
[2026-08-31 13:30:32,895.895 INFO    ] 200
[2026-08-31 13:30:32,898.898 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:30:32,957.957 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:30:32,959.959 INFO    ] No update needed
[2026-08-31 13:30:32,962.962 INFO    ] Checking for camera pi updates...
[2026-08-31 13:30:33,002.002 INFO    ] 200
[2026-08-31 13:30:33,005.005 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:30:33,047.047 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:30:33,159.159 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:30:33,162.162 INFO    ] No camera update needed
[2026-08-31 13:30:33,165.165 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:30:33,168.168 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:30:33,174.174 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:30:33,181.181 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:30:35,223.223 INFO    ] ================================================
[2026-08-31 13:30:35,239.239 INFO    ] Launching Daemon at Mon Aug 31 13:30:35 IST 2026
[2026-08-31 13:30:35,250.250 INFO    ] ================================================
[2026-08-31 13:30:35,886.886 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:30:35
[2026-08-31 13:30:36,501.501 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:30:36,752.752 INFO    ] Initializing speech engine...
[2026-08-31 13:30:36,764.764 INFO    ] 2026-08-31 13:30:36
[2026-08-31 13:30:37,030.030 INFO    ] 2026-08-31 13:30:37
[2026-08-31 13:30:37,066.066 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:30:37,269.269 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:30:37,279.279 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:30:37,491.491 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:30:37,510.510 INFO    ] time= 31/08/2026 13:30:37
[2026-08-31 13:30:37,517.517 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:30:37,581.581 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:30:37,720.720 INFO    ] No existing commands found in stream
[2026-08-31 13:30:42,731.731 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:30:42,734.734 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-08-31 13:30:45,112.112 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 13:30:45,115.115 INFO    ] Checking for system updates...
[2026-08-31 13:30:45,151.151 INFO    ] 200
[2026-08-31 13:30:45,153.153 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:30:45,206.206 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:30:45,209.209 INFO    ] No update needed
[2026-08-31 13:30:45,211.211 INFO    ] Checking for camera pi updates...
[2026-08-31 13:30:45,246.246 INFO    ] 200
[2026-08-31 13:30:45,249.249 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:30:45,299.299 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:30:45,399.399 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:30:45,402.402 INFO    ] No camera update needed
[2026-08-31 13:30:45,404.404 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:30:45,406.406 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:30:45,412.412 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:30:45,417.417 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:30:47,457.457 INFO    ] ================================================
[2026-08-31 13:30:47,472.472 INFO    ] Launching Daemon at Mon Aug 31 13:30:47 IST 2026
[2026-08-31 13:30:47,484.484 INFO    ] ================================================
[2026-08-31 13:30:48,053.053 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:30:48
[2026-08-31 13:30:48,640.640 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:30:48,904.904 INFO    ] Initializing speech engine...
[2026-08-31 13:30:48,917.917 INFO    ] 2026-08-31 13:30:48
[2026-08-31 13:30:49,186.186 INFO    ] 2026-08-31 13:30:49
[2026-08-31 13:30:49,252.252 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:30:49,481.481 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:30:49,491.491 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:30:49,628.628 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:30:49,683.683 INFO    ] time= 31/08/2026 13:30:49
[2026-08-31 13:30:49,743.743 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:30:49,764.764 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:30:49,901.901 INFO    ] No existing commands found in stream
[2026-08-31 13:30:54,923.923 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:30:54,927.927 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-08-31 13:30:58,794.794 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 13:30:58,797.797 INFO    ] Checking for system updates...
[2026-08-31 13:30:58,840.840 INFO    ] 200
[2026-08-31 13:30:58,843.843 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:30:58,901.901 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:30:58,908.908 INFO    ] No update needed
[2026-08-31 13:30:58,911.911 INFO    ] Checking for camera pi updates...
[2026-08-31 13:30:58,947.947 INFO    ] 200
[2026-08-31 13:30:58,950.950 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:30:58,991.991 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:30:59,081.081 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:30:59,084.084 INFO    ] No camera update needed
[2026-08-31 13:30:59,089.089 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:30:59,091.091 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:30:59,096.096 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:30:59,102.102 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:31:01,143.143 INFO    ] ================================================
[2026-08-31 13:31:01,159.159 INFO    ] Launching Daemon at Mon Aug 31 13:31:01 IST 2026
[2026-08-31 13:31:01,170.170 INFO    ] ================================================
[2026-08-31 13:31:01,950.950 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:31:01
[2026-08-31 13:31:02,634.634 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:31:02,979.979 INFO    ] Initializing speech engine...
[2026-08-31 13:31:02,985.985 INFO    ] 2026-08-31 13:31:02
[2026-08-31 13:31:03,264.264 INFO    ] 2026-08-31 13:31:03
[2026-08-31 13:31:03,323.323 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:31:03,553.553 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:31:03,560.560 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:31:03,792.792 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:31:03,828.828 INFO    ] time= 31/08/2026 13:31:03
[2026-08-31 13:31:03,844.844 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:31:03,854.854 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:31:03,981.981 INFO    ] No existing commands found in stream
[2026-08-31 13:31:09,000.000 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:31:09,003.003 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-08-31 13:31:10,712.712 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 13:31:10,715.715 INFO    ] Checking for system updates...
[2026-08-31 13:31:10,752.752 INFO    ] 200
[2026-08-31 13:31:10,755.755 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:31:10,816.816 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:31:10,819.819 INFO    ] No update needed
[2026-08-31 13:31:10,822.822 INFO    ] Checking for camera pi updates...
[2026-08-31 13:31:10,861.861 INFO    ] 200
[2026-08-31 13:31:10,864.864 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:31:10,906.906 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:31:10,993.993 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:31:10,996.996 INFO    ] No camera update needed
[2026-08-31 13:31:10,999.999 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:31:11,002.002 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:31:11,008.008 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:31:11,014.014 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:31:13,058.058 INFO    ] ================================================
[2026-08-31 13:31:13,074.074 INFO    ] Launching Daemon at Mon Aug 31 13:31:13 IST 2026
[2026-08-31 13:31:13,085.085 INFO    ] ================================================
[2026-08-31 13:31:13,660.660 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:31:13
[2026-08-31 13:31:14,261.261 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:31:14,523.523 INFO    ] Initializing speech engine...
[2026-08-31 13:31:14,532.532 INFO    ] 2026-08-31 13:31:14
[2026-08-31 13:31:14,831.831 INFO    ] 2026-08-31 13:31:14
[2026-08-31 13:31:14,870.870 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:31:15,099.099 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:31:15,165.165 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:31:15,327.327 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:31:15,342.342 INFO    ] time= 31/08/2026 13:31:15
[2026-08-31 13:31:15,381.381 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:31:15,425.425 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:31:15,536.536 INFO    ] No existing commands found in stream
[2026-08-31 13:31:20,548.548 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:31:20,551.551 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-08-31 13:31:24,106.106 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 13:31:24,109.109 INFO    ] Checking for system updates...
[2026-08-31 13:31:24,149.149 INFO    ] 200
[2026-08-31 13:31:24,151.151 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:31:24,206.206 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:31:24,208.208 INFO    ] No update needed
[2026-08-31 13:31:24,211.211 INFO    ] Checking for camera pi updates...
[2026-08-31 13:31:24,261.261 INFO    ] 200
[2026-08-31 13:31:24,264.264 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:31:24,305.305 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:31:24,395.395 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:31:24,397.397 INFO    ] No camera update needed
[2026-08-31 13:31:24,400.400 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:31:24,402.402 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:31:24,408.408 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:31:24,413.413 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:31:26,454.454 INFO    ] ================================================
[2026-08-31 13:31:26,470.470 INFO    ] Launching Daemon at Mon Aug 31 13:31:26 IST 2026
[2026-08-31 13:31:26,481.481 INFO    ] ================================================
[2026-08-31 13:31:27,052.052 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:31:27
[2026-08-31 13:31:27,636.636 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:31:27,895.895 INFO    ] Initializing speech engine...
[2026-08-31 13:31:27,912.912 INFO    ] 2026-08-31 13:31:27
[2026-08-31 13:31:28,190.190 INFO    ] 2026-08-31 13:31:28
[2026-08-31 13:31:28,229.229 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:31:28,456.456 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:31:28,479.479 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:31:28,689.689 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:31:28,696.696 INFO    ] time= 31/08/2026 13:31:28
[2026-08-31 13:31:28,751.751 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:31:28,795.795 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:31:28,903.903 INFO    ] No existing commands found in stream
[2026-08-31 13:31:33,914.914 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:31:33,917.917 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-08-31 13:31:36,646.646 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 13:31:36,649.649 INFO    ] Checking for system updates...
[2026-08-31 13:31:36,685.685 INFO    ] 200
[2026-08-31 13:31:36,687.687 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:31:36,742.742 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:31:36,744.744 INFO    ] No update needed
[2026-08-31 13:31:36,748.748 INFO    ] Checking for camera pi updates...
[2026-08-31 13:31:36,786.786 INFO    ] 200
[2026-08-31 13:31:36,789.789 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:31:36,829.829 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:31:36,905.905 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:31:36,908.908 INFO    ] No camera update needed
[2026-08-31 13:31:36,910.910 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:31:36,913.913 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:31:36,918.918 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:31:36,923.923 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:31:38,966.966 INFO    ] ================================================
[2026-08-31 13:31:38,981.981 INFO    ] Launching Daemon at Mon Aug 31 13:31:38 IST 2026
[2026-08-31 13:31:38,993.993 INFO    ] ================================================
[2026-08-31 13:31:39,563.563 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:31:39
[2026-08-31 13:31:40,151.151 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:31:40,423.423 INFO    ] Initializing speech engine...
[2026-08-31 13:31:40,432.432 INFO    ] 2026-08-31 13:31:40
[2026-08-31 13:31:40,689.689 INFO    ] 2026-08-31 13:31:40
[2026-08-31 13:31:40,719.719 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:31:40,963.963 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:31:40,972.972 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:31:41,201.201 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:31:41,231.231 INFO    ] time= 31/08/2026 13:31:41
[2026-08-31 13:31:41,237.237 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:31:41,254.254 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:31:41,370.370 INFO    ] No existing commands found in stream
[2026-08-31 13:31:46,395.395 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:31:46,398.398 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-08-31 13:31:48,265.265 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 13:31:48,268.268 INFO    ] Checking for system updates...
[2026-08-31 13:31:48,305.305 INFO    ] 200
[2026-08-31 13:31:48,308.308 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:31:48,361.361 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:31:48,364.364 INFO    ] No update needed
[2026-08-31 13:31:48,366.366 INFO    ] Checking for camera pi updates...
[2026-08-31 13:31:48,400.400 INFO    ] 200
[2026-08-31 13:31:48,403.403 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:31:48,444.444 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:31:48,546.546 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:31:48,548.548 INFO    ] No camera update needed
[2026-08-31 13:31:48,551.551 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:31:48,553.553 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:31:48,558.558 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:31:48,563.563 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:31:50,607.607 INFO    ] ================================================
[2026-08-31 13:31:50,622.622 INFO    ] Launching Daemon at Mon Aug 31 13:31:50 IST 2026
[2026-08-31 13:31:50,634.634 INFO    ] ================================================
[2026-08-31 13:31:51,201.201 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:31:51
[2026-08-31 13:31:51,785.785 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:31:52,041.041 INFO    ] Initializing speech engine...
[2026-08-31 13:31:52,055.055 INFO    ] 2026-08-31 13:31:52
[2026-08-31 13:31:52,323.323 INFO    ] 2026-08-31 13:31:52
[2026-08-31 13:31:52,358.358 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:31:52,534.534 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:31:52,546.546 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:31:52,759.759 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:31:52,812.812 INFO    ] time= 31/08/2026 13:31:52
[2026-08-31 13:31:52,866.866 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:31:52,896.896 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:31:53,010.010 INFO    ] No existing commands found in stream
[2026-08-31 13:31:58,027.027 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:31:58,030.030 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-08-31 13:31:59,495.495 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 13:31:59,497.497 INFO    ] Checking for system updates...
[2026-08-31 13:31:59,533.533 INFO    ] 200
[2026-08-31 13:31:59,535.535 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:31:59,599.599 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:31:59,602.602 INFO    ] No update needed
[2026-08-31 13:31:59,604.604 INFO    ] Checking for camera pi updates...
[2026-08-31 13:31:59,638.638 INFO    ] 200
[2026-08-31 13:31:59,641.641 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:31:59,688.688 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:31:59,812.812 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:31:59,814.814 INFO    ] No camera update needed
[2026-08-31 13:31:59,817.817 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:31:59,820.820 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:31:59,826.826 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:31:59,832.832 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:32:01,876.876 INFO    ] ================================================
[2026-08-31 13:32:01,896.896 INFO    ] Launching Daemon at Mon Aug 31 13:32:01 IST 2026
[2026-08-31 13:32:01,912.912 INFO    ] ================================================
[2026-08-31 13:32:02,542.542 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:32:02
[2026-08-31 13:32:03,212.212 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:32:03,499.499 INFO    ] Initializing speech engine...
[2026-08-31 13:32:03,507.507 INFO    ] 2026-08-31 13:32:03
[2026-08-31 13:32:03,768.768 INFO    ] 2026-08-31 13:32:03
[2026-08-31 13:32:03,822.822 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:32:04,071.071 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:32:04,079.079 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:32:04,305.305 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:32:04,316.316 INFO    ] time= 31/08/2026 13:32:04
[2026-08-31 13:32:04,334.334 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:32:04,351.351 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:32:04,484.484 INFO    ] No existing commands found in stream
[2026-08-31 13:32:09,512.512 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:32:09,577.577 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-08-31 13:32:11,428.428 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 13:32:11,431.431 INFO    ] Checking for system updates...
[2026-08-31 13:32:11,467.467 INFO    ] 200
[2026-08-31 13:32:11,470.470 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:32:11,523.523 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:32:11,525.525 INFO    ] No update needed
[2026-08-31 13:32:11,528.528 INFO    ] Checking for camera pi updates...
[2026-08-31 13:32:11,561.561 INFO    ] 200
[2026-08-31 13:32:11,564.564 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:32:11,605.605 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:32:11,787.787 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:32:11,790.790 INFO    ] No camera update needed
[2026-08-31 13:32:11,792.792 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:32:11,794.794 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:32:11,800.800 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:32:11,805.805 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:32:13,847.847 INFO    ] ================================================
[2026-08-31 13:32:13,862.862 INFO    ] Launching Daemon at Mon Aug 31 13:32:13 IST 2026
[2026-08-31 13:32:13,873.873 INFO    ] ================================================
[2026-08-31 13:32:14,442.442 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:32:14
[2026-08-31 13:32:15,055.055 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:32:15,353.353 INFO    ] Initializing speech engine...
[2026-08-31 13:32:15,359.359 INFO    ] 2026-08-31 13:32:15
[2026-08-31 13:32:15,626.626 INFO    ] 2026-08-31 13:32:15
[2026-08-31 13:32:15,663.663 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:32:15,928.928 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:32:15,938.938 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:32:16,077.077 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:32:16,128.128 INFO    ] time= 31/08/2026 13:32:16
[2026-08-31 13:32:16,183.183 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:32:16,216.216 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:32:16,367.367 INFO    ] No existing commands found in stream
[2026-08-31 13:32:21,411.411 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:32:21,414.414 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-08-31 13:32:22,771.771 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 13:32:22,774.774 INFO    ] Checking for system updates...
[2026-08-31 13:32:22,811.811 INFO    ] 200
[2026-08-31 13:32:22,814.814 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:32:22,876.876 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:32:22,879.879 INFO    ] No update needed
[2026-08-31 13:32:22,881.881 INFO    ] Checking for camera pi updates...
[2026-08-31 13:32:22,919.919 INFO    ] 200
[2026-08-31 13:32:22,922.922 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:32:22,967.967 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:32:23,072.072 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:32:23,075.075 INFO    ] No camera update needed
[2026-08-31 13:32:23,077.077 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:32:23,080.080 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:32:23,085.085 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:32:23,090.090 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:32:25,133.133 INFO    ] ================================================
[2026-08-31 13:32:25,150.150 INFO    ] Launching Daemon at Mon Aug 31 13:32:25 IST 2026
[2026-08-31 13:32:25,162.162 INFO    ] ================================================
[2026-08-31 13:32:25,798.798 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:32:25
[2026-08-31 13:32:26,530.530 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:32:26,861.861 INFO    ] Initializing speech engine...
[2026-08-31 13:32:26,876.876 INFO    ] 2026-08-31 13:32:26
[2026-08-31 13:32:27,176.176 INFO    ] 2026-08-31 13:32:27
[2026-08-31 13:32:27,240.240 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:32:27,485.485 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:32:27,490.490 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:32:27,732.732 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:32:27,752.752 INFO    ] time= 31/08/2026 13:32:27
[2026-08-31 13:32:27,762.762 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:32:27,791.791 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:32:27,903.903 INFO    ] No existing commands found in stream
[2026-08-31 13:32:32,925.925 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:32:32,928.928 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-08-31 13:32:33,498.498 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 13:32:33,501.501 INFO    ] Checking for system updates...
[2026-08-31 13:32:33,541.541 INFO    ] 200
[2026-08-31 13:32:33,544.544 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:32:33,596.596 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:32:33,599.599 INFO    ] No update needed
[2026-08-31 13:32:33,602.602 INFO    ] Checking for camera pi updates...
[2026-08-31 13:32:33,645.645 INFO    ] 200
[2026-08-31 13:32:33,649.649 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:32:33,704.704 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:32:33,788.788 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:32:33,791.791 INFO    ] No camera update needed
[2026-08-31 13:32:33,794.794 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:32:33,796.796 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:32:33,802.802 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:32:33,808.808 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:32:35,850.850 INFO    ] ================================================
[2026-08-31 13:32:35,866.866 INFO    ] Launching Daemon at Mon Aug 31 13:32:35 IST 2026
[2026-08-31 13:32:35,877.877 INFO    ] ================================================
[2026-08-31 13:32:36,527.527 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:32:36
[2026-08-31 13:32:37,166.166 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:32:37,458.458 INFO    ] Initializing speech engine...
[2026-08-31 13:32:37,466.466 INFO    ] 2026-08-31 13:32:37
[2026-08-31 13:32:37,735.735 INFO    ] 2026-08-31 13:32:37
[2026-08-31 13:32:37,785.785 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:32:38,067.067 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:32:38,076.076 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:32:38,272.272 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:32:38,280.280 INFO    ] time= 31/08/2026 13:32:38
[2026-08-31 13:32:38,298.298 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:32:38,328.328 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:32:38,435.435 INFO    ] No existing commands found in stream
[2026-08-31 13:32:43,455.455 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:32:43,458.458 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-08-31 13:32:47,306.306 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 13:32:47,309.309 INFO    ] Checking for system updates...
[2026-08-31 13:32:47,344.344 INFO    ] 200
[2026-08-31 13:32:47,347.347 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:32:47,400.400 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:32:47,402.402 INFO    ] No update needed
[2026-08-31 13:32:47,405.405 INFO    ] Checking for camera pi updates...
[2026-08-31 13:32:47,438.438 INFO    ] 200
[2026-08-31 13:32:47,440.440 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:32:47,480.480 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:32:47,559.559 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:32:47,561.561 INFO    ] No camera update needed
[2026-08-31 13:32:47,564.564 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:32:47,566.566 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:32:47,571.571 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:32:47,576.576 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:32:49,616.616 INFO    ] ================================================
[2026-08-31 13:32:49,632.632 INFO    ] Launching Daemon at Mon Aug 31 13:32:49 IST 2026
[2026-08-31 13:32:49,643.643 INFO    ] ================================================
[2026-08-31 13:32:50,222.222 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:32:50
[2026-08-31 13:32:50,816.816 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:32:51,083.083 INFO    ] Initializing speech engine...
[2026-08-31 13:32:51,092.092 INFO    ] 2026-08-31 13:32:51
[2026-08-31 13:32:51,352.352 INFO    ] 2026-08-31 13:32:51
[2026-08-31 13:32:51,405.405 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:32:51,654.654 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:32:51,659.659 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:32:51,855.855 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:32:51,890.890 INFO    ] time= 31/08/2026 13:32:51
[2026-08-31 13:32:51,896.896 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:32:51,914.914 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:32:52,045.045 INFO    ] No existing commands found in stream
[2026-08-31 13:32:57,064.064 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:32:57,066.066 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-08-31 13:32:58,286.286 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 13:32:58,289.289 INFO    ] Checking for system updates...
[2026-08-31 13:32:58,325.325 INFO    ] 200
[2026-08-31 13:32:58,328.328 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:32:58,380.380 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:32:58,382.382 INFO    ] No update needed
[2026-08-31 13:32:58,385.385 INFO    ] Checking for camera pi updates...
[2026-08-31 13:32:58,422.422 INFO    ] 200
[2026-08-31 13:32:58,424.424 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:32:58,465.465 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:32:58,544.544 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:32:58,547.547 INFO    ] No camera update needed
[2026-08-31 13:32:58,550.550 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:32:58,552.552 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:32:58,558.558 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:32:58,564.564 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:33:00,607.607 INFO    ] ================================================
[2026-08-31 13:33:00,623.623 INFO    ] Launching Daemon at Mon Aug 31 13:33:00 IST 2026
[2026-08-31 13:33:00,635.635 INFO    ] ================================================
[2026-08-31 13:33:01,198.198 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:33:01
[2026-08-31 13:33:01,939.939 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:33:02,287.287 INFO    ] Initializing speech engine...
[2026-08-31 13:33:02,296.296 INFO    ] 2026-08-31 13:33:02
[2026-08-31 13:33:02,630.630 INFO    ] 2026-08-31 13:33:02
[2026-08-31 13:33:02,667.667 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:33:02,856.856 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:33:02,887.887 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:33:03,102.102 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:33:03,126.126 INFO    ] time= 31/08/2026 13:33:03
[2026-08-31 13:33:03,176.176 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:33:03,249.249 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:33:03,386.386 INFO    ] No existing commands found in stream
[2026-08-31 13:33:08,412.412 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:33:08,415.415 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-08-31 13:33:09,819.819 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 13:33:09,822.822 INFO    ] Checking for system updates...
[2026-08-31 13:33:09,866.866 INFO    ] 200
[2026-08-31 13:33:09,869.869 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:33:09,921.921 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:33:09,924.924 INFO    ] No update needed
[2026-08-31 13:33:09,926.926 INFO    ] Checking for camera pi updates...
[2026-08-31 13:33:09,960.960 INFO    ] 200
[2026-08-31 13:33:09,963.963 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:33:10,004.004 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:33:10,093.093 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:33:10,096.096 INFO    ] No camera update needed
[2026-08-31 13:33:10,098.098 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:33:10,101.101 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:33:10,106.106 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:33:10,111.111 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:33:12,150.150 INFO    ] ================================================
[2026-08-31 13:33:12,170.170 INFO    ] Launching Daemon at Mon Aug 31 13:33:12 IST 2026
[2026-08-31 13:33:12,181.181 INFO    ] ================================================
[2026-08-31 13:33:12,762.762 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:33:12
[2026-08-31 13:33:13,357.357 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:33:13,634.634 INFO    ] Initializing speech engine...
[2026-08-31 13:33:13,642.642 INFO    ] 2026-08-31 13:33:13
[2026-08-31 13:33:13,902.902 INFO    ] 2026-08-31 13:33:13
[2026-08-31 13:33:13,932.932 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:33:14,177.177 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:33:14,186.186 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:33:14,317.317 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:33:14,364.364 INFO    ] time= 31/08/2026 13:33:14
[2026-08-31 13:33:14,419.419 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:33:14,453.453 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:33:14,602.602 INFO    ] No existing commands found in stream
[2026-08-31 13:33:19,620.620 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:33:19,623.623 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-08-31 13:33:23,191.191 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 13:33:23,194.194 INFO    ] Checking for system updates...
[2026-08-31 13:33:23,229.229 INFO    ] 200
[2026-08-31 13:33:23,232.232 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:33:23,285.285 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:33:23,288.288 INFO    ] No update needed
[2026-08-31 13:33:23,291.291 INFO    ] Checking for camera pi updates...
[2026-08-31 13:33:23,324.324 INFO    ] 200
[2026-08-31 13:33:23,326.326 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:33:23,371.371 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:33:23,475.475 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:33:23,477.477 INFO    ] No camera update needed
[2026-08-31 13:33:23,480.480 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:33:23,482.482 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:33:23,488.488 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:33:23,493.493 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:33:25,533.533 INFO    ] ================================================
[2026-08-31 13:33:25,548.548 INFO    ] Launching Daemon at Mon Aug 31 13:33:25 IST 2026
[2026-08-31 13:33:25,559.559 INFO    ] ================================================
[2026-08-31 13:33:26,206.206 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:33:26
[2026-08-31 13:33:26,871.871 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:33:27,139.139 INFO    ] Initializing speech engine...
[2026-08-31 13:33:27,147.147 INFO    ] 2026-08-31 13:33:27
[2026-08-31 13:33:27,393.393 INFO    ] 2026-08-31 13:33:27
[2026-08-31 13:33:27,429.429 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:33:27,685.685 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:33:27,690.690 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:33:27,905.905 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:33:27,946.946 INFO    ] time= 31/08/2026 13:33:27
[2026-08-31 13:33:27,952.952 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:33:27,973.973 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:33:28,100.100 INFO    ] No existing commands found in stream
[2026-08-31 13:33:33,114.114 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:33:33,116.116 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-08-31 13:33:35,457.457 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 13:33:35,460.460 INFO    ] Checking for system updates...
[2026-08-31 13:33:35,497.497 INFO    ] 200
[2026-08-31 13:33:35,500.500 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:33:35,559.559 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:33:35,562.562 INFO    ] No update needed
[2026-08-31 13:33:35,565.565 INFO    ] Checking for camera pi updates...
[2026-08-31 13:33:35,603.603 INFO    ] 200
[2026-08-31 13:33:35,606.606 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:33:35,651.651 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:33:35,751.751 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:33:35,753.753 INFO    ] No camera update needed
[2026-08-31 13:33:35,756.756 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:33:35,759.759 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:33:35,765.765 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:33:35,771.771 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:33:37,813.813 INFO    ] ================================================
[2026-08-31 13:33:37,829.829 INFO    ] Launching Daemon at Mon Aug 31 13:33:37 IST 2026
[2026-08-31 13:33:37,840.840 INFO    ] ================================================
[2026-08-31 13:33:38,420.420 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:33:38
[2026-08-31 13:33:39,017.017 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:33:39,284.284 INFO    ] Initializing speech engine...
[2026-08-31 13:33:39,297.297 INFO    ] 2026-08-31 13:33:39
[2026-08-31 13:33:39,545.545 INFO    ] 2026-08-31 13:33:39
[2026-08-31 13:33:39,581.581 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:33:39,837.837 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:33:39,843.843 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:33:40,063.063 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:33:40,121.121 INFO    ] time= 31/08/2026 13:33:40
[2026-08-31 13:33:40,135.135 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:33:40,139.139 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:33:40,294.294 INFO    ] No existing commands found in stream
[2026-08-31 13:33:45,314.314 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:33:45,317.317 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-08-31 13:33:47,848.848 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 13:33:47,851.851 INFO    ] Checking for system updates...
[2026-08-31 13:33:47,887.887 INFO    ] 200
[2026-08-31 13:33:47,890.890 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:33:47,943.943 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:33:47,945.945 INFO    ] No update needed
[2026-08-31 13:33:47,948.948 INFO    ] Checking for camera pi updates...
[2026-08-31 13:33:47,981.981 INFO    ] 200
[2026-08-31 13:33:47,984.984 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:33:48,024.024 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:33:48,113.113 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:33:48,115.115 INFO    ] No camera update needed
[2026-08-31 13:33:48,118.118 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:33:48,124.124 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:33:48,130.130 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:33:48,135.135 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:33:50,176.176 INFO    ] ================================================
[2026-08-31 13:33:50,192.192 INFO    ] Launching Daemon at Mon Aug 31 13:33:50 IST 2026
[2026-08-31 13:33:50,203.203 INFO    ] ================================================
[2026-08-31 13:33:50,771.771 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:33:50
[2026-08-31 13:33:51,355.355 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:33:51,626.626 INFO    ] Initializing speech engine...
[2026-08-31 13:33:51,633.633 INFO    ] 2026-08-31 13:33:51
[2026-08-31 13:33:51,881.881 INFO    ] 2026-08-31 13:33:51
[2026-08-31 13:33:51,915.915 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:33:52,167.167 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:33:52,176.176 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:33:52,308.308 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:33:52,355.355 INFO    ] time= 31/08/2026 13:33:52
[2026-08-31 13:33:52,414.414 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:33:52,443.443 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:33:52,588.588 INFO    ] No existing commands found in stream
[2026-08-31 13:33:57,601.601 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:33:57,604.604 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-08-31 13:34:00,704.704 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 13:34:00,706.706 INFO    ] Checking for system updates...
[2026-08-31 13:34:00,742.742 INFO    ] 200
[2026-08-31 13:34:00,744.744 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:34:00,796.796 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:34:00,799.799 INFO    ] No update needed
[2026-08-31 13:34:00,801.801 INFO    ] Checking for camera pi updates...
[2026-08-31 13:34:00,834.834 INFO    ] 200
[2026-08-31 13:34:00,837.837 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:34:00,877.877 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:34:00,964.964 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:34:00,966.966 INFO    ] No camera update needed
[2026-08-31 13:34:00,969.969 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:34:00,971.971 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:34:00,976.976 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:34:00,981.981 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:34:03,029.029 INFO    ] ================================================
[2026-08-31 13:34:03,047.047 INFO    ] Launching Daemon at Mon Aug 31 13:34:03 IST 2026
[2026-08-31 13:34:03,065.065 INFO    ] ================================================
[2026-08-31 13:34:03,672.672 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:34:03
[2026-08-31 13:34:04,270.270 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:34:04,543.543 INFO    ] Initializing speech engine...
[2026-08-31 13:34:04,553.553 INFO    ] 2026-08-31 13:34:04
[2026-08-31 13:34:04,815.815 INFO    ] 2026-08-31 13:34:04
[2026-08-31 13:34:04,868.868 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:34:05,198.198 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:34:05,233.233 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:34:05,862.862 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:34:05,921.921 INFO    ] time= 31/08/2026 13:34:05
[2026-08-31 13:34:05,928.928 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:34:05,931.931 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:34:06,029.029 INFO    ] No existing commands found in stream
[2026-08-31 13:34:11,042.042 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:34:11,045.045 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-08-31 13:34:14,086.086 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 13:34:14,089.089 INFO    ] Checking for system updates...
[2026-08-31 13:34:14,125.125 INFO    ] 200
[2026-08-31 13:34:14,127.127 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:34:14,181.181 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:34:14,184.184 INFO    ] No update needed
[2026-08-31 13:34:14,186.186 INFO    ] Checking for camera pi updates...
[2026-08-31 13:34:14,220.220 INFO    ] 200
[2026-08-31 13:34:14,223.223 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:34:14,264.264 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:34:14,450.450 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:34:14,453.453 INFO    ] No camera update needed
[2026-08-31 13:34:14,455.455 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:34:14,458.458 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:34:14,463.463 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:34:14,468.468 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:34:16,508.508 INFO    ] ================================================
[2026-08-31 13:34:16,523.523 INFO    ] Launching Daemon at Mon Aug 31 13:34:16 IST 2026
[2026-08-31 13:34:16,533.533 INFO    ] ================================================
[2026-08-31 13:34:17,103.103 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:34:17
[2026-08-31 13:34:17,689.689 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:34:17,958.958 INFO    ] Initializing speech engine...
[2026-08-31 13:34:17,967.967 INFO    ] 2026-08-31 13:34:17
[2026-08-31 13:34:18,214.214 INFO    ] 2026-08-31 13:34:18
[2026-08-31 13:34:18,250.250 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:34:18,501.501 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:34:18,511.511 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:34:18,724.724 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:34:18,769.769 INFO    ] time= 31/08/2026 13:34:18
[2026-08-31 13:34:18,775.775 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:34:18,793.793 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:34:18,908.908 INFO    ] No existing commands found in stream
[2026-08-31 13:34:23,932.932 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:34:23,935.935 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-08-31 13:34:27,968.968 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 13:34:27,971.971 INFO    ] Checking for system updates...
[2026-08-31 13:34:28,008.008 INFO    ] 200
[2026-08-31 13:34:28,010.010 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:34:28,070.070 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:34:28,073.073 INFO    ] No update needed
[2026-08-31 13:34:28,075.075 INFO    ] Checking for camera pi updates...
[2026-08-31 13:34:28,113.113 INFO    ] 200
[2026-08-31 13:34:28,115.115 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:34:28,156.156 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:34:28,248.248 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:34:28,251.251 INFO    ] No camera update needed
[2026-08-31 13:34:28,253.253 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:34:28,255.255 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:34:28,261.261 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:34:28,265.265 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:34:30,306.306 INFO    ] ================================================
[2026-08-31 13:34:30,321.321 INFO    ] Launching Daemon at Mon Aug 31 13:34:30 IST 2026
[2026-08-31 13:34:30,332.332 INFO    ] ================================================
[2026-08-31 13:34:30,995.995 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:34:30
[2026-08-31 13:34:31,688.688 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:34:32,032.032 INFO    ] Initializing speech engine...
[2026-08-31 13:34:32,043.043 INFO    ] 2026-08-31 13:34:32
[2026-08-31 13:34:32,329.329 INFO    ] 2026-08-31 13:34:32
[2026-08-31 13:34:32,394.394 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:34:32,641.641 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:34:32,657.657 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:34:32,891.891 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:34:32,928.928 INFO    ] time= 31/08/2026 13:34:32
[2026-08-31 13:34:32,943.943 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:34:32,952.952 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:34:33,071.071 INFO    ] No existing commands found in stream
[2026-08-31 13:34:38,091.091 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:34:38,094.094 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-08-31 13:34:42,645.645 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 13:34:42,648.648 INFO    ] Checking for system updates...
[2026-08-31 13:34:42,685.685 INFO    ] 200
[2026-08-31 13:34:42,687.687 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:34:42,739.739 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:34:42,742.742 INFO    ] No update needed
[2026-08-31 13:34:42,744.744 INFO    ] Checking for camera pi updates...
[2026-08-31 13:34:42,783.783 INFO    ] 200
[2026-08-31 13:34:42,785.785 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:34:42,825.825 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:34:42,905.905 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:34:42,908.908 INFO    ] No camera update needed
[2026-08-31 13:34:42,910.910 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:34:42,913.913 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:34:42,918.918 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:34:42,923.923 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:34:44,965.965 INFO    ] ================================================
[2026-08-31 13:34:44,980.980 INFO    ] Launching Daemon at Mon Aug 31 13:34:44 IST 2026
[2026-08-31 13:34:44,991.991 INFO    ] ================================================
[2026-08-31 13:34:45,645.645 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:34:45
[2026-08-31 13:34:46,244.244 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:34:46,512.512 INFO    ] Initializing speech engine...
[2026-08-31 13:34:46,521.521 INFO    ] 2026-08-31 13:34:46
[2026-08-31 13:34:46,768.768 INFO    ] 2026-08-31 13:34:46
[2026-08-31 13:34:46,803.803 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:34:47,059.059 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:34:47,066.066 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:34:47,312.312 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:34:47,323.323 INFO    ] time= 31/08/2026 13:34:47
[2026-08-31 13:34:47,341.341 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:34:47,370.370 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:34:47,486.486 INFO    ] No existing commands found in stream
[2026-08-31 13:34:52,510.510 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:34:52,513.513 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-08-31 13:34:56,266.266 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 13:34:56,269.269 INFO    ] Checking for system updates...
[2026-08-31 13:34:56,305.305 INFO    ] 200
[2026-08-31 13:34:56,307.307 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:34:56,360.360 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:34:56,362.362 INFO    ] No update needed
[2026-08-31 13:34:56,365.365 INFO    ] Checking for camera pi updates...
[2026-08-31 13:34:56,402.402 INFO    ] 200
[2026-08-31 13:34:56,404.404 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:34:56,445.445 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:34:56,549.549 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:34:56,552.552 INFO    ] No camera update needed
[2026-08-31 13:34:56,555.555 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:34:56,557.557 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:34:56,563.563 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:34:56,569.569 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:34:58,611.611 INFO    ] ================================================
[2026-08-31 13:34:58,626.626 INFO    ] Launching Daemon at Mon Aug 31 13:34:58 IST 2026
[2026-08-31 13:34:58,637.637 INFO    ] ================================================
[2026-08-31 13:34:59,292.292 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:34:59
[2026-08-31 13:34:59,963.963 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:35:00,268.268 INFO    ] Initializing speech engine...
[2026-08-31 13:35:00,283.283 INFO    ] 2026-08-31 13:35:00
[2026-08-31 13:35:00,596.596 INFO    ] 2026-08-31 13:35:00
[2026-08-31 13:35:00,679.679 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:35:00,893.893 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:35:00,898.898 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:35:01,093.093 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:35:01,100.100 INFO    ] time= 31/08/2026 13:35:01
[2026-08-31 13:35:01,119.119 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:35:01,148.148 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:35:01,260.260 INFO    ] No existing commands found in stream
[2026-08-31 13:35:06,290.290 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:35:06,293.293 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-08-31 13:35:07,966.966 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 13:35:07,969.969 INFO    ] Checking for system updates...
[2026-08-31 13:35:08,006.006 INFO    ] 200
[2026-08-31 13:35:08,009.009 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:35:08,062.062 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:35:08,065.065 INFO    ] No update needed
[2026-08-31 13:35:08,067.067 INFO    ] Checking for camera pi updates...
[2026-08-31 13:35:08,102.102 INFO    ] 200
[2026-08-31 13:35:08,104.104 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:35:08,145.145 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:35:08,226.226 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:35:08,229.229 INFO    ] No camera update needed
[2026-08-31 13:35:08,231.231 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:35:08,234.234 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:35:08,240.240 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:35:08,245.245 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:35:10,285.285 INFO    ] ================================================
[2026-08-31 13:35:10,300.300 INFO    ] Launching Daemon at Mon Aug 31 13:35:10 IST 2026
[2026-08-31 13:35:10,310.310 INFO    ] ================================================
[2026-08-31 13:35:10,880.880 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:35:10
[2026-08-31 13:35:11,462.462 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:35:11,728.728 INFO    ] Initializing speech engine...
[2026-08-31 13:35:11,737.737 INFO    ] 2026-08-31 13:35:11
[2026-08-31 13:35:11,988.988 INFO    ] 2026-08-31 13:35:11
[2026-08-31 13:35:12,048.048 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:35:12,293.293 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:35:12,300.300 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:35:12,496.496 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:35:12,536.536 INFO    ] time= 31/08/2026 13:35:12
[2026-08-31 13:35:12,542.542 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:35:12,560.560 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:35:12,690.690 INFO    ] No existing commands found in stream
[2026-08-31 13:35:17,709.709 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:35:17,712.712 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-08-31 13:35:21,627.627 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 13:35:21,630.630 INFO    ] Checking for system updates...
[2026-08-31 13:35:21,665.665 INFO    ] 200
[2026-08-31 13:35:21,668.668 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:35:21,720.720 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:35:21,723.723 INFO    ] No update needed
[2026-08-31 13:35:21,725.725 INFO    ] Checking for camera pi updates...
[2026-08-31 13:35:21,759.759 INFO    ] 200
[2026-08-31 13:35:21,762.762 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:35:21,801.801 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:35:21,885.885 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:35:21,888.888 INFO    ] No camera update needed
[2026-08-31 13:35:21,890.890 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:35:21,892.892 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:35:21,898.898 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:35:21,903.903 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:35:23,943.943 INFO    ] ================================================
[2026-08-31 13:35:23,958.958 INFO    ] Launching Daemon at Mon Aug 31 13:35:23 IST 2026
[2026-08-31 13:35:23,969.969 INFO    ] ================================================
[2026-08-31 13:35:24,546.546 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:35:24
[2026-08-31 13:35:25,129.129 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:35:25,382.382 INFO    ] Initializing speech engine...
[2026-08-31 13:35:25,390.390 INFO    ] 2026-08-31 13:35:25
[2026-08-31 13:35:25,681.681 INFO    ] 2026-08-31 13:35:25
[2026-08-31 13:35:25,718.718 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:35:25,935.935 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:35:25,989.989 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:35:26,163.163 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:35:26,217.217 INFO    ] time= 31/08/2026 13:35:26
[2026-08-31 13:35:26,266.266 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:35:26,307.307 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:35:26,365.365 INFO    ] No existing commands found in stream
[2026-08-31 13:35:31,377.377 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:35:31,380.380 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-08-31 13:35:33,868.868 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 13:35:33,871.871 INFO    ] Checking for system updates...
[2026-08-31 13:35:33,907.907 INFO    ] 200
[2026-08-31 13:35:33,910.910 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:35:33,961.961 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:35:33,964.964 INFO    ] No update needed
[2026-08-31 13:35:33,966.966 INFO    ] Checking for camera pi updates...
[2026-08-31 13:35:34,000.000 INFO    ] 200
[2026-08-31 13:35:34,002.002 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:35:34,042.042 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:35:34,121.121 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:35:34,124.124 INFO    ] No camera update needed
[2026-08-31 13:35:34,126.126 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:35:34,128.128 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:35:34,133.133 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:35:34,138.138 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:35:36,178.178 INFO    ] ================================================
[2026-08-31 13:35:36,193.193 INFO    ] Launching Daemon at Mon Aug 31 13:35:36 IST 2026
[2026-08-31 13:35:36,204.204 INFO    ] ================================================
[2026-08-31 13:35:36,770.770 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:35:36
[2026-08-31 13:35:37,351.351 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:35:37,605.605 INFO    ] Initializing speech engine...
[2026-08-31 13:35:37,628.628 INFO    ] 2026-08-31 13:35:37
[2026-08-31 13:35:37,902.902 INFO    ] 2026-08-31 13:35:37
[2026-08-31 13:35:37,935.935 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:35:38,138.138 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:35:38,156.156 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:35:38,302.302 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:35:38,309.309 INFO    ] time= 31/08/2026 13:35:38
[2026-08-31 13:35:38,315.315 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:35:38,358.358 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:35:38,522.522 INFO    ] No existing commands found in stream
[2026-08-31 13:35:43,539.539 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:35:43,542.542 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-08-31 13:35:45,228.228 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 13:35:45,230.230 INFO    ] Checking for system updates...
[2026-08-31 13:35:45,268.268 INFO    ] 200
[2026-08-31 13:35:45,271.271 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:35:45,329.329 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:35:45,332.332 INFO    ] No update needed
[2026-08-31 13:35:45,334.334 INFO    ] Checking for camera pi updates...
[2026-08-31 13:35:45,368.368 INFO    ] 200
[2026-08-31 13:35:45,370.370 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:35:45,414.414 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:35:45,510.510 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:35:45,512.512 INFO    ] No camera update needed
[2026-08-31 13:35:45,515.515 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:35:45,517.517 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:35:45,522.522 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:35:45,527.527 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:35:47,568.568 INFO    ] ================================================
[2026-08-31 13:35:47,583.583 INFO    ] Launching Daemon at Mon Aug 31 13:35:47 IST 2026
[2026-08-31 13:35:47,594.594 INFO    ] ================================================
[2026-08-31 13:35:48,232.232 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:35:48
[2026-08-31 13:35:48,883.883 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:35:49,176.176 INFO    ] Initializing speech engine...
[2026-08-31 13:35:49,186.186 INFO    ] 2026-08-31 13:35:49
[2026-08-31 13:35:49,459.459 INFO    ] 2026-08-31 13:35:49
[2026-08-31 13:35:49,512.512 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:35:49,761.761 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:35:49,767.767 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:35:49,997.997 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:35:50,004.004 INFO    ] time= 31/08/2026 13:35:49
[2026-08-31 13:35:50,023.023 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:35:50,041.041 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:35:50,160.160 INFO    ] No existing commands found in stream
[2026-08-31 13:35:55,184.184 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:35:55,187.187 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-08-31 13:35:58,329.329 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 13:35:58,332.332 INFO    ] Checking for system updates...
[2026-08-31 13:35:58,372.372 INFO    ] 200
[2026-08-31 13:35:58,375.375 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:35:58,428.428 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:35:58,431.431 INFO    ] No update needed
[2026-08-31 13:35:58,433.433 INFO    ] Checking for camera pi updates...
[2026-08-31 13:35:58,476.476 INFO    ] 200
[2026-08-31 13:35:58,479.479 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:35:58,525.525 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:35:58,606.606 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:35:58,608.608 INFO    ] No camera update needed
[2026-08-31 13:35:58,611.611 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:35:58,613.613 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:35:58,618.618 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:35:58,623.623 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:36:00,666.666 INFO    ] ================================================
[2026-08-31 13:36:00,681.681 INFO    ] Launching Daemon at Mon Aug 31 13:36:00 IST 2026
[2026-08-31 13:36:00,691.691 INFO    ] ================================================
[2026-08-31 13:36:01,259.259 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:36:01
[2026-08-31 13:36:01,844.844 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:36:02,306.306 INFO    ] Initializing speech engine...
[2026-08-31 13:36:02,333.333 INFO    ] 2026-08-31 13:36:02
[2026-08-31 13:36:02,691.691 INFO    ] 2026-08-31 13:36:02
[2026-08-31 13:36:02,790.790 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:36:02,984.984 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:36:03,020.020 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:36:03,268.268 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:36:03,304.304 INFO    ] time= 31/08/2026 13:36:03
[2026-08-31 13:36:03,315.315 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:36:03,353.353 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:36:03,476.476 INFO    ] No existing commands found in stream
[2026-08-31 13:36:08,505.505 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:36:08,508.508 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-08-31 13:36:09,747.747 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 13:36:09,750.750 INFO    ] Checking for system updates...
[2026-08-31 13:36:09,786.786 INFO    ] 200
[2026-08-31 13:36:09,788.788 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:36:09,846.846 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:36:09,849.849 INFO    ] No update needed
[2026-08-31 13:36:09,851.851 INFO    ] Checking for camera pi updates...
[2026-08-31 13:36:09,887.887 INFO    ] 200
[2026-08-31 13:36:09,890.890 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:36:09,934.934 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:36:10,022.022 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:36:10,024.024 INFO    ] No camera update needed
[2026-08-31 13:36:10,026.026 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:36:10,029.029 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:36:10,034.034 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:36:10,039.039 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:36:12,080.080 INFO    ] ================================================
[2026-08-31 13:36:12,095.095 INFO    ] Launching Daemon at Mon Aug 31 13:36:12 IST 2026
[2026-08-31 13:36:12,105.105 INFO    ] ================================================
[2026-08-31 13:36:12,669.669 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:36:12
[2026-08-31 13:36:13,252.252 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:36:13,504.504 INFO    ] Initializing speech engine...
[2026-08-31 13:36:13,510.510 INFO    ] 2026-08-31 13:36:13
[2026-08-31 13:36:13,801.801 INFO    ] 2026-08-31 13:36:13
[2026-08-31 13:36:13,840.840 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:36:14,059.059 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:36:14,124.124 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:36:14,361.361 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:36:14,394.394 INFO    ] time= 31/08/2026 13:36:14
[2026-08-31 13:36:14,400.400 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:36:14,418.418 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:36:14,552.552 INFO    ] No existing commands found in stream
[2026-08-31 13:36:19,566.566 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:36:19,569.569 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-08-31 13:36:22,866.866 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 13:36:22,869.869 INFO    ] Checking for system updates...
[2026-08-31 13:36:22,905.905 INFO    ] 200
[2026-08-31 13:36:22,907.907 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:36:22,966.966 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:36:22,968.968 INFO    ] No update needed
[2026-08-31 13:36:22,972.972 INFO    ] Checking for camera pi updates...
[2026-08-31 13:36:23,006.006 INFO    ] 200
[2026-08-31 13:36:23,009.009 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:36:23,050.050 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:36:23,229.229 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:36:23,232.232 INFO    ] No camera update needed
[2026-08-31 13:36:23,234.234 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:36:23,237.237 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:36:23,243.243 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:36:23,249.249 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:36:25,288.288 INFO    ] ================================================
[2026-08-31 13:36:25,303.303 INFO    ] Launching Daemon at Mon Aug 31 13:36:25 IST 2026
[2026-08-31 13:36:25,314.314 INFO    ] ================================================
[2026-08-31 13:36:25,879.879 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:36:25
[2026-08-31 13:36:26,458.458 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:36:26,724.724 INFO    ] Initializing speech engine...
[2026-08-31 13:36:26,733.733 INFO    ] 2026-08-31 13:36:26
[2026-08-31 13:36:26,977.977 INFO    ] 2026-08-31 13:36:26
[2026-08-31 13:36:27,012.012 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:36:27,288.288 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:36:27,293.293 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:36:27,491.491 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:36:27,525.525 INFO    ] time= 31/08/2026 13:36:27
[2026-08-31 13:36:27,531.531 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:36:27,548.548 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:36:27,681.681 INFO    ] No existing commands found in stream
[2026-08-31 13:36:32,700.700 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:36:32,703.703 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-08-31 13:36:36,770.770 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 13:36:36,772.772 INFO    ] Checking for system updates...
[2026-08-31 13:36:36,810.810 INFO    ] 200
[2026-08-31 13:36:36,813.813 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:36:36,866.866 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:36:36,868.868 INFO    ] No update needed
[2026-08-31 13:36:36,871.871 INFO    ] Checking for camera pi updates...
[2026-08-31 13:36:36,904.904 INFO    ] 200
[2026-08-31 13:36:36,906.906 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:36:36,947.947 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:36:37,010.010 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:36:37,013.013 INFO    ] No camera update needed
[2026-08-31 13:36:37,015.015 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:36:37,017.017 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:36:37,022.022 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:36:37,027.027 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:36:39,068.068 INFO    ] ================================================
[2026-08-31 13:36:39,083.083 INFO    ] Launching Daemon at Mon Aug 31 13:36:39 IST 2026
[2026-08-31 13:36:39,094.094 INFO    ] ================================================
[2026-08-31 13:36:39,661.661 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:36:39
[2026-08-31 13:36:40,246.246 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:36:40,512.512 INFO    ] Initializing speech engine...
[2026-08-31 13:36:40,522.522 INFO    ] 2026-08-31 13:36:40
[2026-08-31 13:36:40,785.785 INFO    ] 2026-08-31 13:36:40
[2026-08-31 13:36:40,838.838 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:36:41,064.064 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:36:41,068.068 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:36:41,278.278 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:36:41,322.322 INFO    ] time= 31/08/2026 13:36:41
[2026-08-31 13:36:41,333.333 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:36:41,349.349 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:36:41,480.480 INFO    ] No existing commands found in stream
[2026-08-31 13:36:46,494.494 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:36:46,496.496 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-08-31 13:36:49,778.778 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 13:36:49,781.781 INFO    ] Checking for system updates...
[2026-08-31 13:36:49,821.821 INFO    ] 200
[2026-08-31 13:36:49,824.824 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:36:49,887.887 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:36:49,890.890 INFO    ] No update needed
[2026-08-31 13:36:49,893.893 INFO    ] Checking for camera pi updates...
[2026-08-31 13:36:49,930.930 INFO    ] 200
[2026-08-31 13:36:49,933.933 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:36:49,979.979 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:36:50,063.063 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:36:50,065.065 INFO    ] No camera update needed
[2026-08-31 13:36:50,068.068 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:36:50,071.071 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:36:50,077.077 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:36:50,083.083 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:36:52,122.122 INFO    ] ================================================
[2026-08-31 13:36:52,137.137 INFO    ] Launching Daemon at Mon Aug 31 13:36:52 IST 2026
[2026-08-31 13:36:52,148.148 INFO    ] ================================================
[2026-08-31 13:36:52,738.738 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:36:52
[2026-08-31 13:36:53,332.332 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:36:53,581.581 INFO    ] Initializing speech engine...
[2026-08-31 13:36:53,587.587 INFO    ] 2026-08-31 13:36:53
[2026-08-31 13:36:53,878.878 INFO    ] 2026-08-31 13:36:53
[2026-08-31 13:36:53,916.916 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:36:54,134.134 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:36:54,154.154 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:36:54,352.352 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:36:54,378.378 INFO    ] time= 31/08/2026 13:36:54
[2026-08-31 13:36:54,438.438 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:36:54,497.497 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:36:54,622.622 INFO    ] No existing commands found in stream
[2026-08-31 13:36:59,638.638 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:36:59,641.641 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-08-31 13:37:00,328.328 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 13:37:00,330.330 INFO    ] Checking for system updates...
[2026-08-31 13:37:00,367.367 INFO    ] 200
[2026-08-31 13:37:00,370.370 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:37:00,422.422 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:37:00,425.425 INFO    ] No update needed
[2026-08-31 13:37:00,428.428 INFO    ] Checking for camera pi updates...
[2026-08-31 13:37:00,462.462 INFO    ] 200
[2026-08-31 13:37:00,464.464 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:37:00,506.506 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:37:00,582.582 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:37:00,584.584 INFO    ] No camera update needed
[2026-08-31 13:37:00,587.587 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:37:00,590.590 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:37:00,597.597 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:37:00,603.603 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:37:02,646.646 INFO    ] ================================================
[2026-08-31 13:37:02,671.671 INFO    ] Launching Daemon at Mon Aug 31 13:37:02 IST 2026
[2026-08-31 13:37:02,685.685 INFO    ] ================================================
[2026-08-31 13:37:03,338.338 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:37:03
[2026-08-31 13:37:03,966.966 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:37:04,227.227 INFO    ] Initializing speech engine...
[2026-08-31 13:37:04,245.245 INFO    ] 2026-08-31 13:37:04
[2026-08-31 13:37:04,500.500 INFO    ] 2026-08-31 13:37:04
[2026-08-31 13:37:04,559.559 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:37:04,844.844 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:37:04,849.849 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:37:05,042.042 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:37:05,060.060 INFO    ] time= 31/08/2026 13:37:05
[2026-08-31 13:37:05,068.068 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:37:05,095.095 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:37:05,203.203 INFO    ] No existing commands found in stream
[2026-08-31 13:37:10,231.231 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:37:10,234.234 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-08-31 13:37:11,494.494 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 13:37:11,498.498 INFO    ] Checking for system updates...
[2026-08-31 13:37:11,534.534 INFO    ] 200
[2026-08-31 13:37:11,536.536 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:37:11,589.589 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:37:11,592.592 INFO    ] No update needed
[2026-08-31 13:37:11,594.594 INFO    ] Checking for camera pi updates...
[2026-08-31 13:37:11,627.627 INFO    ] 200
[2026-08-31 13:37:11,630.630 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:37:11,674.674 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:37:11,757.757 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:37:11,759.759 INFO    ] No camera update needed
[2026-08-31 13:37:11,762.762 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:37:11,764.764 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:37:11,769.769 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:37:11,774.774 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:37:13,816.816 INFO    ] ================================================
[2026-08-31 13:37:13,832.832 INFO    ] Launching Daemon at Mon Aug 31 13:37:13 IST 2026
[2026-08-31 13:37:13,843.843 INFO    ] ================================================
[2026-08-31 13:37:14,410.410 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:37:14
[2026-08-31 13:37:14,995.995 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:37:15,253.253 INFO    ] Initializing speech engine...
[2026-08-31 13:37:15,269.269 INFO    ] 2026-08-31 13:37:15
[2026-08-31 13:37:15,524.524 INFO    ] 2026-08-31 13:37:15
[2026-08-31 13:37:15,589.589 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:37:15,884.884 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:37:15,945.945 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:37:16,123.123 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:37:16,130.130 INFO    ] time= 31/08/2026 13:37:16
[2026-08-31 13:37:16,137.137 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:37:16,193.193 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:37:16,334.334 INFO    ] No existing commands found in stream
[2026-08-31 13:37:21,349.349 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:37:21,352.352 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-08-31 13:37:22,425.425 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 13:37:22,428.428 INFO    ] Checking for system updates...
[2026-08-31 13:37:22,464.464 INFO    ] 200
[2026-08-31 13:37:22,466.466 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:37:22,529.529 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:37:22,532.532 INFO    ] No update needed
[2026-08-31 13:37:22,534.534 INFO    ] Checking for camera pi updates...
[2026-08-31 13:37:22,568.568 INFO    ] 200
[2026-08-31 13:37:22,571.571 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:37:22,619.619 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:37:22,698.698 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:37:22,701.701 INFO    ] No camera update needed
[2026-08-31 13:37:22,703.703 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:37:22,706.706 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:37:22,711.711 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:37:22,716.716 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:37:24,758.758 INFO    ] ================================================
[2026-08-31 13:37:24,773.773 INFO    ] Launching Daemon at Mon Aug 31 13:37:24 IST 2026
[2026-08-31 13:37:24,784.784 INFO    ] ================================================
[2026-08-31 13:37:25,357.357 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:37:25
[2026-08-31 13:37:25,945.945 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:37:26,212.212 INFO    ] Initializing speech engine...
[2026-08-31 13:37:26,221.221 INFO    ] 2026-08-31 13:37:26
[2026-08-31 13:37:26,478.478 INFO    ] 2026-08-31 13:37:26
[2026-08-31 13:37:26,536.536 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:37:26,699.699 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:37:26,743.743 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:37:26,999.999 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:37:27,025.025 INFO    ] time= 31/08/2026 13:37:27
[2026-08-31 13:37:27,040.040 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:37:27,049.049 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:37:27,175.175 INFO    ] No existing commands found in stream
[2026-08-31 13:37:32,189.189 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:37:32,192.192 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-08-31 13:37:35,376.376 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 13:37:35,379.379 INFO    ] Checking for system updates...
[2026-08-31 13:37:35,415.415 INFO    ] 200
[2026-08-31 13:37:35,418.418 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:37:35,477.477 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:37:35,481.481 INFO    ] No update needed
[2026-08-31 13:37:35,484.484 INFO    ] Checking for camera pi updates...
[2026-08-31 13:37:35,519.519 INFO    ] 200
[2026-08-31 13:37:35,522.522 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:37:35,563.563 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:37:35,647.647 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:37:35,650.650 INFO    ] No camera update needed
[2026-08-31 13:37:35,653.653 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:37:35,655.655 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:37:35,661.661 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:37:35,667.667 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:37:37,710.710 INFO    ] ================================================
[2026-08-31 13:37:37,726.726 INFO    ] Launching Daemon at Mon Aug 31 13:37:37 IST 2026
[2026-08-31 13:37:37,736.736 INFO    ] ================================================
[2026-08-31 13:37:38,316.316 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:37:38
[2026-08-31 13:37:38,913.913 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:37:39,191.191 INFO    ] Initializing speech engine...
[2026-08-31 13:37:39,196.196 INFO    ] 2026-08-31 13:37:39
[2026-08-31 13:37:39,456.456 INFO    ] 2026-08-31 13:37:39
[2026-08-31 13:37:39,487.487 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:37:39,736.736 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:37:39,741.741 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:37:39,985.985 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:37:40,001.001 INFO    ] time= 31/08/2026 13:37:39
[2026-08-31 13:37:40,018.018 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:37:40,041.041 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:37:40,151.151 INFO    ] No existing commands found in stream
[2026-08-31 13:37:45,169.169 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:37:45,172.172 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-08-31 13:37:47,566.566 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 13:37:47,569.569 INFO    ] Checking for system updates...
[2026-08-31 13:37:47,608.608 INFO    ] 200
[2026-08-31 13:37:47,611.611 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:37:47,664.664 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:37:47,666.666 INFO    ] No update needed
[2026-08-31 13:37:47,669.669 INFO    ] Checking for camera pi updates...
[2026-08-31 13:37:47,703.703 INFO    ] 200
[2026-08-31 13:37:47,706.706 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:37:47,746.746 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:37:47,827.827 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:37:47,829.829 INFO    ] No camera update needed
[2026-08-31 13:37:47,832.832 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:37:47,834.834 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:37:47,840.840 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:37:47,845.845 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:37:49,888.888 INFO    ] ================================================
[2026-08-31 13:37:49,904.904 INFO    ] Launching Daemon at Mon Aug 31 13:37:49 IST 2026
[2026-08-31 13:37:49,916.916 INFO    ] ================================================
[2026-08-31 13:37:50,558.558 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:37:50
[2026-08-31 13:37:51,222.222 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:37:51,519.519 INFO    ] Initializing speech engine...
[2026-08-31 13:37:51,525.525 INFO    ] 2026-08-31 13:37:51
[2026-08-31 13:37:51,798.798 INFO    ] 2026-08-31 13:37:51
[2026-08-31 13:37:51,854.854 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:37:52,139.139 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:37:52,145.145 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:37:52,325.325 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:37:52,345.345 INFO    ] time= 31/08/2026 13:37:52
[2026-08-31 13:37:52,361.361 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:37:52,370.370 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:37:52,497.497 INFO    ] No existing commands found in stream
[2026-08-31 13:37:57,514.514 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:37:57,517.517 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-08-31 13:37:58,178.178 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 13:37:58,181.181 INFO    ] Checking for system updates...
[2026-08-31 13:37:58,219.219 INFO    ] 200
[2026-08-31 13:37:58,222.222 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:37:58,280.280 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:37:58,282.282 INFO    ] No update needed
[2026-08-31 13:37:58,285.285 INFO    ] Checking for camera pi updates...
[2026-08-31 13:37:58,325.325 INFO    ] 200
[2026-08-31 13:37:58,328.328 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:37:58,370.370 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:37:58,459.459 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:37:58,461.461 INFO    ] No camera update needed
[2026-08-31 13:37:58,464.464 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:37:58,466.466 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:37:58,471.471 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:37:58,477.477 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:38:00,517.517 INFO    ] ================================================
[2026-08-31 13:38:00,532.532 INFO    ] Launching Daemon at Mon Aug 31 13:38:00 IST 2026
[2026-08-31 13:38:00,544.544 INFO    ] ================================================
[2026-08-31 13:38:01,273.273 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:38:01
[2026-08-31 13:38:01,953.953 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:38:02,256.256 INFO    ] Initializing speech engine...
[2026-08-31 13:38:02,267.267 INFO    ] 2026-08-31 13:38:02
[2026-08-31 13:38:02,554.554 INFO    ] 2026-08-31 13:38:02
[2026-08-31 13:38:02,595.595 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:38:03,044.044 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:38:03,099.099 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:38:03,315.315 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:38:03,366.366 INFO    ] time= 31/08/2026 13:38:03
[2026-08-31 13:38:03,415.415 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:38:03,444.444 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:38:03,578.578 INFO    ] No existing commands found in stream
[2026-08-31 13:38:08,591.591 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:38:08,593.593 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-08-31 13:38:10,605.605 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 13:38:10,608.608 INFO    ] Checking for system updates...
[2026-08-31 13:38:10,643.643 INFO    ] 200
[2026-08-31 13:38:10,645.645 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:38:10,700.700 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:38:10,702.702 INFO    ] No update needed
[2026-08-31 13:38:10,704.704 INFO    ] Checking for camera pi updates...
[2026-08-31 13:38:10,737.737 INFO    ] 200
[2026-08-31 13:38:10,740.740 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:38:10,782.782 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:38:10,861.861 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:38:10,863.863 INFO    ] No camera update needed
[2026-08-31 13:38:10,865.865 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:38:10,868.868 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:38:10,873.873 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:38:10,878.878 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:38:12,920.920 INFO    ] ================================================
[2026-08-31 13:38:12,935.935 INFO    ] Launching Daemon at Mon Aug 31 13:38:12 IST 2026
[2026-08-31 13:38:12,946.946 INFO    ] ================================================
[2026-08-31 13:38:13,518.518 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:38:13
[2026-08-31 13:38:14,106.106 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:38:14,382.382 INFO    ] Initializing speech engine...
[2026-08-31 13:38:14,392.392 INFO    ] 2026-08-31 13:38:14
[2026-08-31 13:38:14,640.640 INFO    ] 2026-08-31 13:38:14
[2026-08-31 13:38:14,675.675 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:38:14,933.933 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:38:14,942.942 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:38:15,126.126 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:38:15,186.186 INFO    ] time= 31/08/2026 13:38:15
[2026-08-31 13:38:15,211.211 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:38:15,217.217 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:38:15,350.350 INFO    ] No existing commands found in stream
[2026-08-31 13:38:20,373.373 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:38:20,375.375 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-08-31 13:38:22,783.783 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 13:38:22,786.786 INFO    ] Checking for system updates...
[2026-08-31 13:38:22,828.828 INFO    ] 200
[2026-08-31 13:38:22,831.831 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:38:22,891.891 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:38:22,893.893 INFO    ] No update needed
[2026-08-31 13:38:22,896.896 INFO    ] Checking for camera pi updates...
[2026-08-31 13:38:22,930.930 INFO    ] 200
[2026-08-31 13:38:22,933.933 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:38:22,979.979 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:38:23,062.062 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:38:23,064.064 INFO    ] No camera update needed
[2026-08-31 13:38:23,067.067 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:38:23,070.070 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:38:23,076.076 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:38:23,082.082 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:38:25,126.126 INFO    ] ================================================
[2026-08-31 13:38:25,141.141 INFO    ] Launching Daemon at Mon Aug 31 13:38:25 IST 2026
[2026-08-31 13:38:25,152.152 INFO    ] ================================================
[2026-08-31 13:38:25,805.805 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:38:25
[2026-08-31 13:38:26,481.481 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:38:26,789.789 INFO    ] Initializing speech engine...
[2026-08-31 13:38:26,801.801 INFO    ] 2026-08-31 13:38:26
[2026-08-31 13:38:27,113.113 INFO    ] 2026-08-31 13:38:27
[2026-08-31 13:38:27,195.195 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:38:27,412.412 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:38:27,450.450 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:38:27,633.633 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:38:27,662.662 INFO    ] time= 31/08/2026 13:38:27
[2026-08-31 13:38:27,671.671 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:38:27,682.682 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:38:27,842.842 INFO    ] No existing commands found in stream
[2026-08-31 13:38:32,874.874 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:38:32,877.877 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-08-31 13:38:34,672.672 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 13:38:34,675.675 INFO    ] Checking for system updates...
[2026-08-31 13:38:34,712.712 INFO    ] 200
[2026-08-31 13:38:34,715.715 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:38:34,774.774 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:38:34,776.776 INFO    ] No update needed
[2026-08-31 13:38:34,779.779 INFO    ] Checking for camera pi updates...
[2026-08-31 13:38:34,812.812 INFO    ] 200
[2026-08-31 13:38:34,815.815 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:38:34,861.861 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:38:34,945.945 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:38:34,947.947 INFO    ] No camera update needed
[2026-08-31 13:38:34,950.950 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:38:34,952.952 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:38:34,958.958 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:38:34,963.963 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:38:37,004.004 INFO    ] ================================================
[2026-08-31 13:38:37,020.020 INFO    ] Launching Daemon at Mon Aug 31 13:38:37 IST 2026
[2026-08-31 13:38:37,031.031 INFO    ] ================================================
[2026-08-31 13:38:37,610.610 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:38:37
[2026-08-31 13:38:38,206.206 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:38:38,483.483 INFO    ] Initializing speech engine...
[2026-08-31 13:38:38,492.492 INFO    ] 2026-08-31 13:38:38
[2026-08-31 13:38:38,749.749 INFO    ] 2026-08-31 13:38:38
[2026-08-31 13:38:38,802.802 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:38:39,022.022 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:38:39,032.032 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:38:39,165.165 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:38:39,214.214 INFO    ] time= 31/08/2026 13:38:39
[2026-08-31 13:38:39,279.279 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:38:39,297.297 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:38:39,437.437 INFO    ] No existing commands found in stream
[2026-08-31 13:38:44,453.453 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:38:44,456.456 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-08-31 13:38:47,215.215 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 13:38:47,217.217 INFO    ] Checking for system updates...
[2026-08-31 13:38:47,253.253 INFO    ] 200
[2026-08-31 13:38:47,256.256 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:38:47,307.307 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:38:47,310.310 INFO    ] No update needed
[2026-08-31 13:38:47,312.312 INFO    ] Checking for camera pi updates...
[2026-08-31 13:38:47,347.347 INFO    ] 200
[2026-08-31 13:38:47,350.350 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:38:47,390.390 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:38:47,486.486 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:38:47,489.489 INFO    ] No camera update needed
[2026-08-31 13:38:47,491.491 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:38:47,493.493 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:38:47,499.499 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:38:47,504.504 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:38:49,545.545 INFO    ] ================================================
[2026-08-31 13:38:49,561.561 INFO    ] Launching Daemon at Mon Aug 31 13:38:49 IST 2026
[2026-08-31 13:38:49,571.571 INFO    ] ================================================
[2026-08-31 13:38:50,212.212 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:38:50
[2026-08-31 13:38:50,794.794 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:38:51,068.068 INFO    ] Initializing speech engine...
[2026-08-31 13:38:51,073.073 INFO    ] 2026-08-31 13:38:51
[2026-08-31 13:38:51,324.324 INFO    ] 2026-08-31 13:38:51
[2026-08-31 13:38:51,360.360 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:38:51,561.561 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:38:51,620.620 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:38:51,794.794 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:38:51,844.844 INFO    ] time= 31/08/2026 13:38:51
[2026-08-31 13:38:51,895.895 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:38:51,945.945 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:38:52,009.009 INFO    ] No existing commands found in stream
[2026-08-31 13:38:57,021.021 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:38:57,024.024 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-08-31 13:38:57,941.941 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 13:38:57,945.945 INFO    ] Checking for system updates...
[2026-08-31 13:38:57,983.983 INFO    ] 200
[2026-08-31 13:38:57,986.986 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:38:58,048.048 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:38:58,051.051 INFO    ] No update needed
[2026-08-31 13:38:58,054.054 INFO    ] Checking for camera pi updates...
[2026-08-31 13:38:58,089.089 INFO    ] 200
[2026-08-31 13:38:58,092.092 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:38:58,134.134 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:38:58,218.218 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:38:58,221.221 INFO    ] No camera update needed
[2026-08-31 13:38:58,224.224 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:38:58,226.226 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:38:58,233.233 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:38:58,239.239 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:39:00,281.281 INFO    ] ================================================
[2026-08-31 13:39:00,297.297 INFO    ] Launching Daemon at Mon Aug 31 13:39:00 IST 2026
[2026-08-31 13:39:00,308.308 INFO    ] ================================================
[2026-08-31 13:39:00,875.875 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:39:00
[2026-08-31 13:39:01,589.589 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:39:01,932.932 INFO    ] Initializing speech engine...
[2026-08-31 13:39:01,946.946 INFO    ] 2026-08-31 13:39:01
[2026-08-31 13:39:02,231.231 INFO    ] 2026-08-31 13:39:02
[2026-08-31 13:39:02,270.270 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:39:02,547.547 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:39:02,557.557 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:39:02,765.765 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:39:02,833.833 INFO    ] time= 31/08/2026 13:39:02
[2026-08-31 13:39:02,899.899 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:39:02,906.906 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:39:03,050.050 INFO    ] No existing commands found in stream
[2026-08-31 13:39:08,078.078 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:39:08,081.081 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-08-31 13:39:10,777.777 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 13:39:10,779.779 INFO    ] Checking for system updates...
[2026-08-31 13:39:10,820.820 INFO    ] 200
[2026-08-31 13:39:10,823.823 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:39:10,875.875 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:39:10,878.878 INFO    ] No update needed
[2026-08-31 13:39:10,881.881 INFO    ] Checking for camera pi updates...
[2026-08-31 13:39:10,915.915 INFO    ] 200
[2026-08-31 13:39:10,918.918 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:39:10,958.958 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:39:11,045.045 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:39:11,047.047 INFO    ] No camera update needed
[2026-08-31 13:39:11,050.050 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:39:11,052.052 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:39:11,058.058 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:39:11,063.063 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:39:13,103.103 INFO    ] ================================================
[2026-08-31 13:39:13,118.118 INFO    ] Launching Daemon at Mon Aug 31 13:39:13 IST 2026
[2026-08-31 13:39:13,129.129 INFO    ] ================================================
[2026-08-31 13:39:13,711.711 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:39:13
[2026-08-31 13:39:14,331.331 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:39:14,648.648 INFO    ] Initializing speech engine...
[2026-08-31 13:39:14,661.661 INFO    ] 2026-08-31 13:39:14
[2026-08-31 13:39:14,977.977 INFO    ] 2026-08-31 13:39:14
[2026-08-31 13:39:15,065.065 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:39:15,249.249 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:39:15,268.268 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:39:15,503.503 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:39:15,520.520 INFO    ] time= 31/08/2026 13:39:15
[2026-08-31 13:39:15,546.546 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:39:15,555.555 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:39:15,661.661 INFO    ] No existing commands found in stream
[2026-08-31 13:39:20,691.691 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:39:20,695.695 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-08-31 13:39:22,888.888 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 13:39:22,890.890 INFO    ] Checking for system updates...
[2026-08-31 13:39:22,926.926 INFO    ] 200
[2026-08-31 13:39:22,929.929 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:39:22,982.982 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:39:22,984.984 INFO    ] No update needed
[2026-08-31 13:39:22,987.987 INFO    ] Checking for camera pi updates...
[2026-08-31 13:39:23,025.025 INFO    ] 200
[2026-08-31 13:39:23,028.028 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:39:23,068.068 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:39:23,168.168 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:39:23,171.171 INFO    ] No camera update needed
[2026-08-31 13:39:23,173.173 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:39:23,175.175 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:39:23,181.181 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:39:23,186.186 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:39:25,228.228 INFO    ] ================================================
[2026-08-31 13:39:25,243.243 INFO    ] Launching Daemon at Mon Aug 31 13:39:25 IST 2026
[2026-08-31 13:39:25,254.254 INFO    ] ================================================
[2026-08-31 13:39:25,913.913 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:39:25
[2026-08-31 13:39:26,592.592 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:39:26,859.859 INFO    ] Initializing speech engine...
[2026-08-31 13:39:26,868.868 INFO    ] 2026-08-31 13:39:26
[2026-08-31 13:39:27,129.129 INFO    ] 2026-08-31 13:39:27
[2026-08-31 13:39:27,181.181 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:39:27,432.432 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:39:27,439.439 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:39:27,662.662 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:39:27,675.675 INFO    ] time= 31/08/2026 13:39:27
[2026-08-31 13:39:27,693.693 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:39:27,700.700 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:39:27,853.853 INFO    ] No existing commands found in stream
[2026-08-31 13:39:32,884.884 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:39:32,886.886 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-08-31 13:39:33,936.936 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 13:39:33,939.939 INFO    ] Checking for system updates...
[2026-08-31 13:39:33,974.974 INFO    ] 200
[2026-08-31 13:39:33,976.976 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:39:34,029.029 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:39:34,032.032 INFO    ] No update needed
[2026-08-31 13:39:34,034.034 INFO    ] Checking for camera pi updates...
[2026-08-31 13:39:34,072.072 INFO    ] 200
[2026-08-31 13:39:34,075.075 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:39:34,114.114 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:39:34,199.199 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:39:34,202.202 INFO    ] No camera update needed
[2026-08-31 13:39:34,204.204 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:39:34,206.206 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:39:34,212.212 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:39:34,217.217 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:39:36,258.258 INFO    ] ================================================
[2026-08-31 13:39:36,274.274 INFO    ] Launching Daemon at Mon Aug 31 13:39:36 IST 2026
[2026-08-31 13:39:36,285.285 INFO    ] ================================================
[2026-08-31 13:39:36,872.872 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:39:36
[2026-08-31 13:39:37,462.462 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:39:37,729.729 INFO    ] Initializing speech engine...
[2026-08-31 13:39:37,738.738 INFO    ] 2026-08-31 13:39:37
[2026-08-31 13:39:37,984.984 INFO    ] 2026-08-31 13:39:37
[2026-08-31 13:39:38,020.020 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:39:38,277.277 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:39:38,281.281 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:39:38,529.529 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:39:38,540.540 INFO    ] time= 31/08/2026 13:39:38
[2026-08-31 13:39:38,545.545 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:39:38,563.563 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:39:38,691.691 INFO    ] No existing commands found in stream
[2026-08-31 13:39:43,706.706 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:39:43,709.709 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-08-31 13:39:47,045.045 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 13:39:47,048.048 INFO    ] Checking for system updates...
[2026-08-31 13:39:47,083.083 INFO    ] 200
[2026-08-31 13:39:47,086.086 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:39:47,146.146 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:39:47,149.149 INFO    ] No update needed
[2026-08-31 13:39:47,151.151 INFO    ] Checking for camera pi updates...
[2026-08-31 13:39:47,185.185 INFO    ] 200
[2026-08-31 13:39:47,187.187 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:39:47,227.227 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:39:47,311.311 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:39:47,314.314 INFO    ] No camera update needed
[2026-08-31 13:39:47,316.316 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:39:47,319.319 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:39:47,324.324 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:39:47,329.329 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:39:49,370.370 INFO    ] ================================================
[2026-08-31 13:39:49,385.385 INFO    ] Launching Daemon at Mon Aug 31 13:39:49 IST 2026
[2026-08-31 13:39:49,401.401 INFO    ] ================================================
[2026-08-31 13:39:49,975.975 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:39:49
[2026-08-31 13:39:50,565.565 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:39:50,817.817 INFO    ] Initializing speech engine...
[2026-08-31 13:39:50,826.826 INFO    ] 2026-08-31 13:39:50
[2026-08-31 13:39:51,131.131 INFO    ] 2026-08-31 13:39:51
[2026-08-31 13:39:51,156.156 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:39:51,372.372 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:39:51,386.386 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:39:51,554.554 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:39:51,564.564 INFO    ] time= 31/08/2026 13:39:51
[2026-08-31 13:39:51,570.570 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:39:51,599.599 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:39:51,721.721 INFO    ] No existing commands found in stream
[2026-08-31 13:39:56,746.746 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:39:56,749.749 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-08-31 13:40:01,371.371 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 13:40:01,375.375 INFO    ] Checking for system updates...
[2026-08-31 13:40:01,450.450 INFO    ] 200
[2026-08-31 13:40:01,455.455 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:40:01,801.801 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:40:01,804.804 INFO    ] No update needed
[2026-08-31 13:40:01,818.818 INFO    ] Checking for camera pi updates...
[2026-08-31 13:40:01,983.983 INFO    ] 200
[2026-08-31 13:40:01,986.986 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:40:02,092.092 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:40:02,383.383 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:40:02,386.386 INFO    ] No camera update needed
[2026-08-31 13:40:02,392.392 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:40:02,396.396 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:40:02,405.405 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:40:02,412.412 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:40:04,459.459 INFO    ] ================================================
[2026-08-31 13:40:04,475.475 INFO    ] Launching Daemon at Mon Aug 31 13:40:04 IST 2026
[2026-08-31 13:40:04,486.486 INFO    ] ================================================
[2026-08-31 13:40:05,059.059 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:40:05
[2026-08-31 13:40:05,639.639 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:40:05,887.887 INFO    ] Initializing speech engine...
[2026-08-31 13:40:05,909.909 INFO    ] 2026-08-31 13:40:05
[2026-08-31 13:40:06,162.162 INFO    ] 2026-08-31 13:40:06
[2026-08-31 13:40:06,197.197 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:40:06,450.450 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:40:06,458.458 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:40:06,658.658 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:40:06,708.708 INFO    ] time= 31/08/2026 13:40:06
[2026-08-31 13:40:06,758.758 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:40:06,779.779 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:40:06,932.932 INFO    ] No existing commands found in stream
[2026-08-31 13:40:11,947.947 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:40:11,950.950 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-08-31 13:40:14,247.247 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 13:40:14,250.250 INFO    ] Checking for system updates...
[2026-08-31 13:40:14,286.286 INFO    ] 200
[2026-08-31 13:40:14,289.289 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:40:14,348.348 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:40:14,351.351 INFO    ] No update needed
[2026-08-31 13:40:14,353.353 INFO    ] Checking for camera pi updates...
[2026-08-31 13:40:14,386.386 INFO    ] 200
[2026-08-31 13:40:14,389.389 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:40:14,430.430 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:40:14,509.509 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:40:14,511.511 INFO    ] No camera update needed
[2026-08-31 13:40:14,514.514 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:40:14,516.516 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:40:14,521.521 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:40:14,526.526 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:40:16,568.568 INFO    ] ================================================
[2026-08-31 13:40:16,584.584 INFO    ] Launching Daemon at Mon Aug 31 13:40:16 IST 2026
[2026-08-31 13:40:16,595.595 INFO    ] ================================================
[2026-08-31 13:40:17,168.168 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:40:17
[2026-08-31 13:40:17,753.753 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:40:18,002.002 INFO    ] Initializing speech engine...
[2026-08-31 13:40:18,025.025 INFO    ] 2026-08-31 13:40:18
[2026-08-31 13:40:18,276.276 INFO    ] 2026-08-31 13:40:18
[2026-08-31 13:40:18,312.312 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:40:18,505.505 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:40:18,549.549 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:40:18,708.708 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:40:18,758.758 INFO    ] time= 31/08/2026 13:40:18
[2026-08-31 13:40:18,766.766 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:40:18,820.820 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:40:18,913.913 INFO    ] No existing commands found in stream
[2026-08-31 13:40:23,925.925 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:40:23,928.928 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-08-31 13:40:25,166.166 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 13:40:25,168.168 INFO    ] Checking for system updates...
[2026-08-31 13:40:25,204.204 INFO    ] 200
[2026-08-31 13:40:25,206.206 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:40:25,260.260 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:40:25,262.262 INFO    ] No update needed
[2026-08-31 13:40:25,264.264 INFO    ] Checking for camera pi updates...
[2026-08-31 13:40:25,298.298 INFO    ] 200
[2026-08-31 13:40:25,300.300 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:40:25,340.340 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:40:25,420.420 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:40:25,422.422 INFO    ] No camera update needed
[2026-08-31 13:40:25,424.424 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:40:25,426.426 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:40:25,432.432 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:40:25,437.437 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:40:27,478.478 INFO    ] ================================================
[2026-08-31 13:40:27,493.493 INFO    ] Launching Daemon at Mon Aug 31 13:40:27 IST 2026
[2026-08-31 13:40:27,508.508 INFO    ] ================================================
[2026-08-31 13:40:28,098.098 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:40:28
[2026-08-31 13:40:28,708.708 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:40:28,985.985 INFO    ] Initializing speech engine...
[2026-08-31 13:40:28,996.996 INFO    ] 2026-08-31 13:40:28
[2026-08-31 13:40:29,263.263 INFO    ] 2026-08-31 13:40:29
[2026-08-31 13:40:29,317.317 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:40:29,541.541 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:40:29,550.550 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:40:29,775.775 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:40:29,810.810 INFO    ] time= 31/08/2026 13:40:29
[2026-08-31 13:40:29,828.828 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:40:29,836.836 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:40:29,966.966 INFO    ] No existing commands found in stream
[2026-08-31 13:40:34,980.980 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:40:34,983.983 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-08-31 13:40:36,848.848 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 13:40:36,851.851 INFO    ] Checking for system updates...
[2026-08-31 13:40:36,891.891 INFO    ] 200
[2026-08-31 13:40:36,893.893 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:40:36,954.954 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:40:36,956.956 INFO    ] No update needed
[2026-08-31 13:40:36,959.959 INFO    ] Checking for camera pi updates...
[2026-08-31 13:40:36,992.992 INFO    ] 200
[2026-08-31 13:40:36,994.994 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:40:37,034.034 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:40:37,215.215 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:40:37,218.218 INFO    ] No camera update needed
[2026-08-31 13:40:37,220.220 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:40:37,223.223 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:40:37,228.228 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:40:37,233.233 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:40:39,274.274 INFO    ] ================================================
[2026-08-31 13:40:39,290.290 INFO    ] Launching Daemon at Mon Aug 31 13:40:39 IST 2026
[2026-08-31 13:40:39,302.302 INFO    ] ================================================
[2026-08-31 13:40:39,870.870 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:40:39
[2026-08-31 13:40:40,466.466 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:40:40,743.743 INFO    ] Initializing speech engine...
[2026-08-31 13:40:40,750.750 INFO    ] 2026-08-31 13:40:40
[2026-08-31 13:40:41,011.011 INFO    ] 2026-08-31 13:40:41
[2026-08-31 13:40:41,067.067 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:40:41,350.350 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:40:41,354.354 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:40:41,551.551 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:40:41,570.570 INFO    ] time= 31/08/2026 13:40:41
[2026-08-31 13:40:41,598.598 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:40:41,606.606 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:40:41,727.727 INFO    ] No existing commands found in stream
[2026-08-31 13:40:46,757.757 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:40:46,760.760 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-08-31 13:40:49,405.405 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 13:40:49,408.408 INFO    ] Checking for system updates...
[2026-08-31 13:40:49,445.445 INFO    ] 200
[2026-08-31 13:40:49,447.447 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:40:49,508.508 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:40:49,510.510 INFO    ] No update needed
[2026-08-31 13:40:49,513.513 INFO    ] Checking for camera pi updates...
[2026-08-31 13:40:49,551.551 INFO    ] 200
[2026-08-31 13:40:49,554.554 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:40:49,594.594 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:40:49,650.650 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:40:49,653.653 INFO    ] No camera update needed
[2026-08-31 13:40:49,655.655 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:40:49,658.658 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:40:49,663.663 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:40:49,668.668 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:40:51,711.711 INFO    ] ================================================
[2026-08-31 13:40:51,727.727 INFO    ] Launching Daemon at Mon Aug 31 13:40:51 IST 2026
[2026-08-31 13:40:51,739.739 INFO    ] ================================================
[2026-08-31 13:40:52,316.316 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:40:52
[2026-08-31 13:40:52,911.911 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:40:53,175.175 INFO    ] Initializing speech engine...
[2026-08-31 13:40:53,191.191 INFO    ] 2026-08-31 13:40:53
[2026-08-31 13:40:53,480.480 INFO    ] 2026-08-31 13:40:53
[2026-08-31 13:40:53,518.518 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:40:53,743.743 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:40:53,752.752 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:40:53,975.975 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:40:53,992.992 INFO    ] time= 31/08/2026 13:40:53
[2026-08-31 13:40:54,057.057 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:40:54,106.106 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:40:54,264.264 INFO    ] No existing commands found in stream
[2026-08-31 13:40:59,282.282 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:40:59,285.285 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-08-31 13:41:03,619.619 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 13:41:03,622.622 INFO    ] Checking for system updates...
[2026-08-31 13:41:03,658.658 INFO    ] 200
[2026-08-31 13:41:03,661.661 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:41:03,713.713 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:41:03,716.716 INFO    ] No update needed
[2026-08-31 13:41:03,718.718 INFO    ] Checking for camera pi updates...
[2026-08-31 13:41:03,751.751 INFO    ] 200
[2026-08-31 13:41:03,754.754 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:41:03,795.795 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:41:03,876.876 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:41:03,878.878 INFO    ] No camera update needed
[2026-08-31 13:41:03,881.881 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:41:03,883.883 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:41:03,888.888 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:41:03,894.894 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:41:05,933.933 INFO    ] ================================================
[2026-08-31 13:41:05,949.949 INFO    ] Launching Daemon at Mon Aug 31 13:41:05 IST 2026
[2026-08-31 13:41:05,959.959 INFO    ] ================================================
[2026-08-31 13:41:06,536.536 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:41:06
[2026-08-31 13:41:07,157.157 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:41:07,439.439 INFO    ] Initializing speech engine...
[2026-08-31 13:41:07,448.448 INFO    ] 2026-08-31 13:41:07
[2026-08-31 13:41:07,723.723 INFO    ] 2026-08-31 13:41:07
[2026-08-31 13:41:07,768.768 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:41:08,053.053 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:41:08,058.058 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:41:08,252.252 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:41:08,260.260 INFO    ] time= 31/08/2026 13:41:08
[2026-08-31 13:41:08,278.278 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:41:08,308.308 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:41:08,449.449 INFO    ] No existing commands found in stream
[2026-08-31 13:41:13,485.485 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:41:13,488.488 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-08-31 13:41:15,295.295 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 13:41:15,298.298 INFO    ] Checking for system updates...
[2026-08-31 13:41:15,338.338 INFO    ] 200
[2026-08-31 13:41:15,340.340 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:41:15,396.396 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:41:15,399.399 INFO    ] No update needed
[2026-08-31 13:41:15,401.401 INFO    ] Checking for camera pi updates...
[2026-08-31 13:41:15,436.436 INFO    ] 200
[2026-08-31 13:41:15,439.439 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:41:15,481.481 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:41:15,553.553 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:41:15,556.556 INFO    ] No camera update needed
[2026-08-31 13:41:15,558.558 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:41:15,561.561 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:41:15,568.568 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:41:15,574.574 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:41:17,614.614 INFO    ] ================================================
[2026-08-31 13:41:17,629.629 INFO    ] Launching Daemon at Mon Aug 31 13:41:17 IST 2026
[2026-08-31 13:41:17,640.640 INFO    ] ================================================
[2026-08-31 13:41:18,242.242 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:41:18
[2026-08-31 13:41:18,891.891 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:41:19,189.189 INFO    ] Initializing speech engine...
[2026-08-31 13:41:19,194.194 INFO    ] 2026-08-31 13:41:19
[2026-08-31 13:41:19,463.463 INFO    ] 2026-08-31 13:41:19
[2026-08-31 13:41:19,499.499 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:41:19,704.704 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:41:19,721.721 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:41:19,939.939 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:41:19,946.946 INFO    ] time= 31/08/2026 13:41:19
[2026-08-31 13:41:20,006.006 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:41:20,055.055 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:41:20,218.218 INFO    ] No existing commands found in stream
[2026-08-31 13:41:25,243.243 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:41:25,246.246 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-08-31 13:41:29,310.310 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 13:41:29,313.313 INFO    ] Checking for system updates...
[2026-08-31 13:41:29,353.353 INFO    ] 200
[2026-08-31 13:41:29,356.356 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:41:29,411.411 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:41:29,413.413 INFO    ] No update needed
[2026-08-31 13:41:29,416.416 INFO    ] Checking for camera pi updates...
[2026-08-31 13:41:29,453.453 INFO    ] 200
[2026-08-31 13:41:29,455.455 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:41:29,500.500 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:41:29,583.583 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:41:29,585.585 INFO    ] No camera update needed
[2026-08-31 13:41:29,588.588 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:41:29,590.590 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:41:29,595.595 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:41:29,600.600 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:41:31,641.641 INFO    ] ================================================
[2026-08-31 13:41:31,660.660 INFO    ] Launching Daemon at Mon Aug 31 13:41:31 IST 2026
[2026-08-31 13:41:31,670.670 INFO    ] ================================================
[2026-08-31 13:41:32,283.283 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:41:32
[2026-08-31 13:41:32,918.918 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:41:33,208.208 INFO    ] Initializing speech engine...
[2026-08-31 13:41:33,224.224 INFO    ] 2026-08-31 13:41:33
[2026-08-31 13:41:33,505.505 INFO    ] 2026-08-31 13:41:33
[2026-08-31 13:41:33,543.543 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:41:33,819.819 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:41:33,834.834 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:41:34,082.082 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:41:34,131.131 INFO    ] time= 31/08/2026 13:41:34
[2026-08-31 13:41:34,138.138 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:41:34,154.154 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:41:34,281.281 INFO    ] No existing commands found in stream
[2026-08-31 13:41:39,306.306 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:41:39,309.309 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-08-31 13:41:42,347.347 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 13:41:42,350.350 INFO    ] Checking for system updates...
[2026-08-31 13:41:42,390.390 INFO    ] 200
[2026-08-31 13:41:42,393.393 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:41:42,446.446 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:41:42,449.449 INFO    ] No update needed
[2026-08-31 13:41:42,452.452 INFO    ] Checking for camera pi updates...
[2026-08-31 13:41:42,492.492 INFO    ] 200
[2026-08-31 13:41:42,495.495 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:41:42,540.540 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:41:42,638.638 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:41:42,641.641 INFO    ] No camera update needed
[2026-08-31 13:41:42,644.644 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:41:42,646.646 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:41:42,652.652 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:41:42,658.658 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:41:44,700.700 INFO    ] ================================================
[2026-08-31 13:41:44,715.715 INFO    ] Launching Daemon at Mon Aug 31 13:41:44 IST 2026
[2026-08-31 13:41:44,726.726 INFO    ] ================================================
[2026-08-31 13:41:45,360.360 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:41:45
[2026-08-31 13:41:46,017.017 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:41:46,317.317 INFO    ] Initializing speech engine...
[2026-08-31 13:41:46,330.330 INFO    ] 2026-08-31 13:41:46
[2026-08-31 13:41:46,642.642 INFO    ] 2026-08-31 13:41:46
[2026-08-31 13:41:46,713.713 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:41:46,871.871 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:41:46,881.881 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:41:47,111.111 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:41:47,140.140 INFO    ] time= 31/08/2026 13:41:47
[2026-08-31 13:41:47,158.158 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:41:47,167.167 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:41:47,281.281 INFO    ] No existing commands found in stream
[2026-08-31 13:41:52,306.306 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:41:52,310.310 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-08-31 13:41:56,303.303 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 13:41:56,306.306 INFO    ] Checking for system updates...
[2026-08-31 13:41:56,343.343 INFO    ] 200
[2026-08-31 13:41:56,345.345 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:41:56,398.398 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:41:56,400.400 INFO    ] No update needed
[2026-08-31 13:41:56,403.403 INFO    ] Checking for camera pi updates...
[2026-08-31 13:41:56,440.440 INFO    ] 200
[2026-08-31 13:41:56,442.442 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:41:56,482.482 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:41:56,551.551 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:41:56,553.553 INFO    ] No camera update needed
[2026-08-31 13:41:56,556.556 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:41:56,558.558 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:41:56,563.563 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:41:56,568.568 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:41:58,608.608 INFO    ] ================================================
[2026-08-31 13:41:58,623.623 INFO    ] Launching Daemon at Mon Aug 31 13:41:58 IST 2026
[2026-08-31 13:41:58,634.634 INFO    ] ================================================
[2026-08-31 13:41:59,200.200 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:41:59
[2026-08-31 13:41:59,782.782 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:42:00,040.040 INFO    ] Initializing speech engine...
[2026-08-31 13:42:00,064.064 INFO    ] 2026-08-31 13:42:00
[2026-08-31 13:42:00,338.338 INFO    ] 2026-08-31 13:42:00
[2026-08-31 13:42:00,374.374 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:42:00,570.570 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:42:00,574.574 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:42:00,743.743 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:42:00,752.752 INFO    ] time= 31/08/2026 13:42:00
[2026-08-31 13:42:00,758.758 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:42:00,796.796 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:42:00,937.937 INFO    ] No existing commands found in stream
[2026-08-31 13:42:05,962.962 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:42:05,965.965 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-08-31 13:42:10,139.139 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 13:42:10,142.142 INFO    ] Checking for system updates...
[2026-08-31 13:42:10,181.181 INFO    ] 200
[2026-08-31 13:42:10,184.184 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:42:10,236.236 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:42:10,239.239 INFO    ] No update needed
[2026-08-31 13:42:10,241.241 INFO    ] Checking for camera pi updates...
[2026-08-31 13:42:10,275.275 INFO    ] 200
[2026-08-31 13:42:10,278.278 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:42:10,318.318 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:42:10,399.399 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:42:10,401.401 INFO    ] No camera update needed
[2026-08-31 13:42:10,403.403 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:42:10,406.406 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:42:10,411.411 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:42:10,416.416 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:42:12,456.456 INFO    ] ================================================
[2026-08-31 13:42:12,471.471 INFO    ] Launching Daemon at Mon Aug 31 13:42:12 IST 2026
[2026-08-31 13:42:12,482.482 INFO    ] ================================================
[2026-08-31 13:42:13,049.049 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:42:13
[2026-08-31 13:42:13,633.633 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:42:13,904.904 INFO    ] Initializing speech engine...
[2026-08-31 13:42:13,909.909 INFO    ] 2026-08-31 13:42:13
[2026-08-31 13:42:14,155.155 INFO    ] 2026-08-31 13:42:14
[2026-08-31 13:42:14,191.191 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:42:14,441.441 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:42:14,450.450 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:42:14,584.584 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:42:14,645.645 INFO    ] time= 31/08/2026 13:42:14
[2026-08-31 13:42:14,699.699 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:42:14,719.719 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:42:14,859.859 INFO    ] No existing commands found in stream
[2026-08-31 13:42:19,875.875 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:42:19,878.878 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-08-31 13:42:23,044.044 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 13:42:23,047.047 INFO    ] Checking for system updates...
[2026-08-31 13:42:23,082.082 INFO    ] 200
[2026-08-31 13:42:23,085.085 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:42:23,138.138 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:42:23,141.141 INFO    ] No update needed
[2026-08-31 13:42:23,143.143 INFO    ] Checking for camera pi updates...
[2026-08-31 13:42:23,176.176 INFO    ] 200
[2026-08-31 13:42:23,179.179 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:42:23,223.223 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:42:23,304.304 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:42:23,306.306 INFO    ] No camera update needed
[2026-08-31 13:42:23,309.309 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:42:23,311.311 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:42:23,316.316 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:42:23,321.321 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:42:25,361.361 INFO    ] ================================================
[2026-08-31 13:42:25,380.380 INFO    ] Launching Daemon at Mon Aug 31 13:42:25 IST 2026
[2026-08-31 13:42:25,393.393 INFO    ] ================================================
[2026-08-31 13:42:25,976.976 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:42:25
[2026-08-31 13:42:26,619.619 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:42:26,887.887 INFO    ] Initializing speech engine...
[2026-08-31 13:42:26,898.898 INFO    ] 2026-08-31 13:42:26
[2026-08-31 13:42:27,156.156 INFO    ] 2026-08-31 13:42:27
[2026-08-31 13:42:27,209.209 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:42:27,437.437 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:42:27,442.442 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:42:27,656.656 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:42:27,699.699 INFO    ] time= 31/08/2026 13:42:27
[2026-08-31 13:42:27,705.705 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:42:27,723.723 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:42:27,839.839 INFO    ] No existing commands found in stream
[2026-08-31 13:42:32,863.863 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:42:32,867.867 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-08-31 13:42:33,815.815 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 13:42:33,818.818 INFO    ] Checking for system updates...
[2026-08-31 13:42:33,856.856 INFO    ] 200
[2026-08-31 13:42:33,859.859 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:42:33,911.911 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:42:33,913.913 INFO    ] No update needed
[2026-08-31 13:42:33,916.916 INFO    ] Checking for camera pi updates...
[2026-08-31 13:42:33,949.949 INFO    ] 200
[2026-08-31 13:42:33,951.951 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:42:33,992.992 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:42:34,070.070 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:42:34,073.073 INFO    ] No camera update needed
[2026-08-31 13:42:34,075.075 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:42:34,077.077 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:42:34,083.083 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:42:34,088.088 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:42:36,129.129 INFO    ] ================================================
[2026-08-31 13:42:36,144.144 INFO    ] Launching Daemon at Mon Aug 31 13:42:36 IST 2026
[2026-08-31 13:42:36,155.155 INFO    ] ================================================
[2026-08-31 13:42:36,799.799 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:42:36
[2026-08-31 13:42:37,381.381 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:42:37,665.665 INFO    ] Initializing speech engine...
[2026-08-31 13:42:37,685.685 INFO    ] 2026-08-31 13:42:37
[2026-08-31 13:42:37,951.951 INFO    ] 2026-08-31 13:42:37
[2026-08-31 13:42:37,986.986 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:42:38,210.210 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:42:38,274.274 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:42:38,507.507 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:42:38,557.557 INFO    ] time= 31/08/2026 13:42:38
[2026-08-31 13:42:38,577.577 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:42:38,594.594 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:42:38,728.728 INFO    ] No existing commands found in stream
[2026-08-31 13:42:43,753.753 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:42:43,755.755 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-08-31 13:42:48,143.143 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 13:42:48,145.145 INFO    ] Checking for system updates...
[2026-08-31 13:42:48,181.181 INFO    ] 200
[2026-08-31 13:42:48,184.184 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:42:48,243.243 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:42:48,245.245 INFO    ] No update needed
[2026-08-31 13:42:48,248.248 INFO    ] Checking for camera pi updates...
[2026-08-31 13:42:48,281.281 INFO    ] 200
[2026-08-31 13:42:48,284.284 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:42:48,324.324 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:42:48,405.405 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:42:48,407.407 INFO    ] No camera update needed
[2026-08-31 13:42:48,409.409 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:42:48,412.412 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:42:48,417.417 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:42:48,422.422 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:42:50,462.462 INFO    ] ================================================
[2026-08-31 13:42:50,477.477 INFO    ] Launching Daemon at Mon Aug 31 13:42:50 IST 2026
[2026-08-31 13:42:50,487.487 INFO    ] ================================================
[2026-08-31 13:42:51,068.068 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:42:51
[2026-08-31 13:42:51,651.651 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:42:51,921.921 INFO    ] Initializing speech engine...
[2026-08-31 13:42:51,931.931 INFO    ] 2026-08-31 13:42:51
[2026-08-31 13:42:52,178.178 INFO    ] 2026-08-31 13:42:52
[2026-08-31 13:42:52,213.213 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:42:52,470.470 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:42:52,479.479 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:42:52,722.722 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:42:52,743.743 INFO    ] time= 31/08/2026 13:42:52
[2026-08-31 13:42:52,749.749 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:42:52,766.766 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:42:52,898.898 INFO    ] No existing commands found in stream
[2026-08-31 13:42:57,911.911 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:42:57,914.914 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-08-31 13:43:00,331.331 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 13:43:00,333.333 INFO    ] Checking for system updates...
[2026-08-31 13:43:00,372.372 INFO    ] 200
[2026-08-31 13:43:00,375.375 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:43:00,427.427 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:43:00,429.429 INFO    ] No update needed
[2026-08-31 13:43:00,432.432 INFO    ] Checking for camera pi updates...
[2026-08-31 13:43:00,466.466 INFO    ] 200
[2026-08-31 13:43:00,469.469 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:43:00,513.513 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:43:00,598.598 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:43:00,600.600 INFO    ] No camera update needed
[2026-08-31 13:43:00,603.603 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:43:00,605.605 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:43:00,610.610 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:43:00,615.615 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:43:02,683.683 INFO    ] ================================================
[2026-08-31 13:43:02,705.705 INFO    ] Launching Daemon at Mon Aug 31 13:43:02 IST 2026
[2026-08-31 13:43:02,718.718 INFO    ] ================================================
[2026-08-31 13:43:03,386.386 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:43:03
[2026-08-31 13:43:03,978.978 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:43:04,247.247 INFO    ] Initializing speech engine...
[2026-08-31 13:43:04,256.256 INFO    ] 2026-08-31 13:43:04
[2026-08-31 13:43:04,507.507 INFO    ] 2026-08-31 13:43:04
[2026-08-31 13:43:04,543.543 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:43:04,726.726 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:43:04,743.743 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:43:04,882.882 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:43:04,933.933 INFO    ] time= 31/08/2026 13:43:04
[2026-08-31 13:43:04,953.953 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:43:04,997.997 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:43:05,099.099 INFO    ] No existing commands found in stream
[2026-08-31 13:43:10,109.109 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:43:10,112.112 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-08-31 13:43:10,869.869 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 13:43:10,871.871 INFO    ] Checking for system updates...
[2026-08-31 13:43:10,907.907 INFO    ] 200
[2026-08-31 13:43:10,909.909 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:43:10,961.961 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:43:10,964.964 INFO    ] No update needed
[2026-08-31 13:43:10,966.966 INFO    ] Checking for camera pi updates...
[2026-08-31 13:43:11,000.000 INFO    ] 200
[2026-08-31 13:43:11,002.002 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:43:11,047.047 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:43:11,128.128 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:43:11,130.130 INFO    ] No camera update needed
[2026-08-31 13:43:11,133.133 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:43:11,135.135 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:43:11,141.141 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:43:11,146.146 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:43:13,188.188 INFO    ] ================================================
[2026-08-31 13:43:13,203.203 INFO    ] Launching Daemon at Mon Aug 31 13:43:13 IST 2026
[2026-08-31 13:43:13,214.214 INFO    ] ================================================
[2026-08-31 13:43:13,794.794 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:43:13
[2026-08-31 13:43:14,392.392 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:43:14,658.658 INFO    ] Initializing speech engine...
[2026-08-31 13:43:14,677.677 INFO    ] 2026-08-31 13:43:14
[2026-08-31 13:43:14,940.940 INFO    ] 2026-08-31 13:43:14
[2026-08-31 13:43:14,975.975 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:43:15,230.230 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:43:15,238.238 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:43:15,448.448 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:43:15,509.509 INFO    ] time= 31/08/2026 13:43:15
[2026-08-31 13:43:15,515.515 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:43:15,533.533 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:43:15,643.643 INFO    ] No existing commands found in stream
[2026-08-31 13:43:20,673.673 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:43:20,676.676 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-08-31 13:43:24,393.393 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 13:43:24,396.396 INFO    ] Checking for system updates...
[2026-08-31 13:43:24,436.436 INFO    ] 200
[2026-08-31 13:43:24,439.439 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:43:24,491.491 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:43:24,493.493 INFO    ] No update needed
[2026-08-31 13:43:24,496.496 INFO    ] Checking for camera pi updates...
[2026-08-31 13:43:24,533.533 INFO    ] 200
[2026-08-31 13:43:24,535.535 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:43:24,580.580 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:43:24,656.656 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:43:24,658.658 INFO    ] No camera update needed
[2026-08-31 13:43:24,661.661 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:43:24,663.663 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:43:24,669.669 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:43:24,674.674 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:43:26,714.714 INFO    ] ================================================
[2026-08-31 13:43:26,733.733 INFO    ] Launching Daemon at Mon Aug 31 13:43:26 IST 2026
[2026-08-31 13:43:26,744.744 INFO    ] ================================================
[2026-08-31 13:43:27,309.309 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:43:27
[2026-08-31 13:43:27,893.893 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:43:28,141.141 INFO    ] Initializing speech engine...
[2026-08-31 13:43:28,150.150 INFO    ] 2026-08-31 13:43:28
[2026-08-31 13:43:28,434.434 INFO    ] 2026-08-31 13:43:28
[2026-08-31 13:43:28,471.471 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:43:28,696.696 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:43:28,751.751 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:43:28,958.958 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:43:29,003.003 INFO    ] time= 31/08/2026 13:43:28
[2026-08-31 13:43:29,047.047 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:43:29,070.070 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:43:29,131.131 INFO    ] No existing commands found in stream
[2026-08-31 13:43:34,143.143 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:43:34,145.145 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-08-31 13:43:34,704.704 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 13:43:34,707.707 INFO    ] Checking for system updates...
[2026-08-31 13:43:34,746.746 INFO    ] 200
[2026-08-31 13:43:34,749.749 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:43:34,807.807 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:43:34,809.809 INFO    ] No update needed
[2026-08-31 13:43:34,812.812 INFO    ] Checking for camera pi updates...
[2026-08-31 13:43:34,849.849 INFO    ] 200
[2026-08-31 13:43:34,851.851 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:43:34,895.895 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:43:34,980.980 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:43:34,982.982 INFO    ] No camera update needed
[2026-08-31 13:43:34,984.984 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:43:34,987.987 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:43:34,992.992 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:43:34,997.997 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:43:37,036.036 INFO    ] ================================================
[2026-08-31 13:43:37,052.052 INFO    ] Launching Daemon at Mon Aug 31 13:43:37 IST 2026
[2026-08-31 13:43:37,062.062 INFO    ] ================================================
[2026-08-31 13:43:37,644.644 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:43:37
[2026-08-31 13:43:38,246.246 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:43:38,505.505 INFO    ] Initializing speech engine...
[2026-08-31 13:43:38,511.511 INFO    ] 2026-08-31 13:43:38
[2026-08-31 13:43:38,809.809 INFO    ] 2026-08-31 13:43:38
[2026-08-31 13:43:38,847.847 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:43:39,043.043 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:43:39,056.056 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:43:39,217.217 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:43:39,226.226 INFO    ] time= 31/08/2026 13:43:39
[2026-08-31 13:43:39,230.230 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:43:39,237.237 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:43:39,376.376 INFO    ] No existing commands found in stream
[2026-08-31 13:43:44,401.401 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:43:44,404.404 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-08-31 13:43:46,873.873 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 13:43:46,875.875 INFO    ] Checking for system updates...
[2026-08-31 13:43:46,910.910 INFO    ] 200
[2026-08-31 13:43:46,913.913 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:43:46,970.970 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:43:46,972.972 INFO    ] No update needed
[2026-08-31 13:43:46,974.974 INFO    ] Checking for camera pi updates...
[2026-08-31 13:43:47,011.011 INFO    ] 200
[2026-08-31 13:43:47,013.013 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:43:47,054.054 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:43:47,147.147 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:43:47,150.150 INFO    ] No camera update needed
[2026-08-31 13:43:47,152.152 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:43:47,155.155 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:43:47,160.160 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:43:47,165.165 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:43:49,206.206 INFO    ] ================================================
[2026-08-31 13:43:49,221.221 INFO    ] Launching Daemon at Mon Aug 31 13:43:49 IST 2026
[2026-08-31 13:43:49,232.232 INFO    ] ================================================
[2026-08-31 13:43:49,800.800 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:43:49
[2026-08-31 13:43:50,380.380 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:43:50,646.646 INFO    ] Initializing speech engine...
[2026-08-31 13:43:50,655.655 INFO    ] 2026-08-31 13:43:50
[2026-08-31 13:43:50,899.899 INFO    ] 2026-08-31 13:43:50
[2026-08-31 13:43:50,933.933 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:43:51,190.190 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:43:51,194.194 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:43:51,447.447 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:43:51,453.453 INFO    ] time= 31/08/2026 13:43:51
[2026-08-31 13:43:51,471.471 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:43:51,499.499 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:43:51,605.605 INFO    ] No existing commands found in stream
[2026-08-31 13:43:56,620.620 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:43:56,623.623 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-08-31 13:44:00,284.284 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 13:44:00,286.286 INFO    ] Checking for system updates...
[2026-08-31 13:44:00,322.322 INFO    ] 200
[2026-08-31 13:44:00,324.324 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:44:00,383.383 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:44:00,385.385 INFO    ] No update needed
[2026-08-31 13:44:00,387.387 INFO    ] Checking for camera pi updates...
[2026-08-31 13:44:00,422.422 INFO    ] 200
[2026-08-31 13:44:00,424.424 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:44:00,468.468 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:44:00,566.566 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:44:00,568.568 INFO    ] No camera update needed
[2026-08-31 13:44:00,571.571 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:44:00,573.573 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:44:00,578.578 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:44:00,583.583 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:44:02,645.645 INFO    ] ================================================
[2026-08-31 13:44:02,665.665 INFO    ] Launching Daemon at Mon Aug 31 13:44:02 IST 2026
[2026-08-31 13:44:02,680.680 INFO    ] ================================================
[2026-08-31 13:44:03,353.353 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:44:03
[2026-08-31 13:44:03,956.956 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:44:04,228.228 INFO    ] Initializing speech engine...
[2026-08-31 13:44:04,236.236 INFO    ] 2026-08-31 13:44:04
[2026-08-31 13:44:04,486.486 INFO    ] 2026-08-31 13:44:04
[2026-08-31 13:44:04,550.550 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:44:04,776.776 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:44:04,782.782 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:44:04,986.986 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:44:05,037.037 INFO    ] time= 31/08/2026 13:44:04
[2026-08-31 13:44:05,043.043 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:44:05,063.063 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:44:05,191.191 INFO    ] No existing commands found in stream
[2026-08-31 13:44:10,210.210 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:44:10,213.213 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-08-31 13:44:13,105.105 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 13:44:13,108.108 INFO    ] Checking for system updates...
[2026-08-31 13:44:13,147.147 INFO    ] 200
[2026-08-31 13:44:13,150.150 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:44:13,208.208 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:44:13,210.210 INFO    ] No update needed
[2026-08-31 13:44:13,212.212 INFO    ] Checking for camera pi updates...
[2026-08-31 13:44:13,249.249 INFO    ] 200
[2026-08-31 13:44:13,251.251 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:44:13,291.291 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:44:13,362.362 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:44:13,365.365 INFO    ] No camera update needed
[2026-08-31 13:44:13,367.367 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:44:13,369.369 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:44:13,375.375 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:44:13,380.380 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:44:15,421.421 INFO    ] ================================================
[2026-08-31 13:44:15,436.436 INFO    ] Launching Daemon at Mon Aug 31 13:44:15 IST 2026
[2026-08-31 13:44:15,447.447 INFO    ] ================================================
[2026-08-31 13:44:16,013.013 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:44:16
[2026-08-31 13:44:16,613.613 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:44:16,889.889 INFO    ] Initializing speech engine...
[2026-08-31 13:44:16,896.896 INFO    ] 2026-08-31 13:44:16
[2026-08-31 13:44:17,158.158 INFO    ] 2026-08-31 13:44:17
[2026-08-31 13:44:17,188.188 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:44:17,433.433 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:44:17,441.441 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:44:17,657.657 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:44:17,701.701 INFO    ] time= 31/08/2026 13:44:17
[2026-08-31 13:44:17,707.707 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:44:17,724.724 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:44:17,854.854 INFO    ] No existing commands found in stream
[2026-08-31 13:44:22,867.867 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:44:22,870.870 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-08-31 13:44:26,260.260 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 13:44:26,263.263 INFO    ] Checking for system updates...
[2026-08-31 13:44:26,300.300 INFO    ] 200
[2026-08-31 13:44:26,303.303 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:44:26,362.362 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:44:26,365.365 INFO    ] No update needed
[2026-08-31 13:44:26,369.369 INFO    ] Checking for camera pi updates...
[2026-08-31 13:44:26,403.403 INFO    ] 200
[2026-08-31 13:44:26,406.406 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:44:26,450.450 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:44:26,518.518 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:44:26,520.520 INFO    ] No camera update needed
[2026-08-31 13:44:26,523.523 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:44:26,525.525 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:44:26,530.530 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:44:26,535.535 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:44:28,575.575 INFO    ] ================================================
[2026-08-31 13:44:28,591.591 INFO    ] Launching Daemon at Mon Aug 31 13:44:28 IST 2026
[2026-08-31 13:44:28,602.602 INFO    ] ================================================
[2026-08-31 13:44:29,245.245 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:44:29
[2026-08-31 13:44:29,909.909 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:44:30,209.209 INFO    ] Initializing speech engine...
[2026-08-31 13:44:30,218.218 INFO    ] 2026-08-31 13:44:30
[2026-08-31 13:44:30,507.507 INFO    ] 2026-08-31 13:44:30
[2026-08-31 13:44:30,553.553 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:44:30,805.805 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:44:30,812.812 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:44:31,048.048 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:44:31,070.070 INFO    ] time= 31/08/2026 13:44:31
[2026-08-31 13:44:31,088.088 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:44:31,106.106 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:44:31,211.211 INFO    ] No existing commands found in stream
[2026-08-31 13:44:36,230.230 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:44:36,234.234 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-08-31 13:44:39,231.231 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 13:44:39,234.234 INFO    ] Checking for system updates...
[2026-08-31 13:44:39,274.274 INFO    ] 200
[2026-08-31 13:44:39,277.277 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:44:39,338.338 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:44:39,340.340 INFO    ] No update needed
[2026-08-31 13:44:39,343.343 INFO    ] Checking for camera pi updates...
[2026-08-31 13:44:39,380.380 INFO    ] 200
[2026-08-31 13:44:39,383.383 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:44:39,427.427 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:44:39,502.502 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:44:39,505.505 INFO    ] No camera update needed
[2026-08-31 13:44:39,507.507 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:44:39,509.509 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:44:39,515.515 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:44:39,520.520 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:44:41,560.560 INFO    ] ================================================
[2026-08-31 13:44:41,575.575 INFO    ] Launching Daemon at Mon Aug 31 13:44:41 IST 2026
[2026-08-31 13:44:41,586.586 INFO    ] ================================================
[2026-08-31 13:44:42,175.175 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:44:42
[2026-08-31 13:44:42,772.772 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:44:43,050.050 INFO    ] Initializing speech engine...
[2026-08-31 13:44:43,057.057 INFO    ] 2026-08-31 13:44:43
[2026-08-31 13:44:43,317.317 INFO    ] 2026-08-31 13:44:43
[2026-08-31 13:44:43,370.370 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:44:43,719.719 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:44:43,736.736 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:44:43,977.977 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:44:44,012.012 INFO    ] time= 31/08/2026 13:44:43
[2026-08-31 13:44:44,062.062 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:44:44,108.108 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:44:44,252.252 INFO    ] No existing commands found in stream
[2026-08-31 13:44:49,265.265 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:44:49,268.268 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-08-31 13:44:51,260.260 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 13:44:51,263.263 INFO    ] Checking for system updates...
[2026-08-31 13:44:51,302.302 INFO    ] 200
[2026-08-31 13:44:51,304.304 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:44:51,364.364 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:44:51,366.366 INFO    ] No update needed
[2026-08-31 13:44:51,369.369 INFO    ] Checking for camera pi updates...
[2026-08-31 13:44:51,407.407 INFO    ] 200
[2026-08-31 13:44:51,409.409 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:44:51,454.454 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:44:51,617.617 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:44:51,619.619 INFO    ] No camera update needed
[2026-08-31 13:44:51,622.622 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:44:51,624.624 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:44:51,630.630 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:44:51,635.635 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:44:53,677.677 INFO    ] ================================================
[2026-08-31 13:44:53,691.691 INFO    ] Launching Daemon at Mon Aug 31 13:44:53 IST 2026
[2026-08-31 13:44:53,702.702 INFO    ] ================================================
[2026-08-31 13:44:54,345.345 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:44:54
[2026-08-31 13:44:55,006.006 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:44:55,307.307 INFO    ] Initializing speech engine...
[2026-08-31 13:44:55,321.321 INFO    ] 2026-08-31 13:44:55
[2026-08-31 13:44:55,603.603 INFO    ] 2026-08-31 13:44:55
[2026-08-31 13:44:55,641.641 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:44:55,893.893 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:44:55,925.925 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:44:56,125.125 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:44:56,133.133 INFO    ] time= 31/08/2026 13:44:56
[2026-08-31 13:44:56,149.149 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:44:56,169.169 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:44:56,283.283 INFO    ] No existing commands found in stream
[2026-08-31 13:45:01,299.299 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:45:01,302.302 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-08-31 13:45:07,785.785 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 13:45:07,788.788 INFO    ] Checking for system updates...
[2026-08-31 13:45:07,827.827 INFO    ] 200
[2026-08-31 13:45:07,830.830 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:45:07,889.889 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:45:07,892.892 INFO    ] No update needed
[2026-08-31 13:45:07,895.895 INFO    ] Checking for camera pi updates...
[2026-08-31 13:45:07,935.935 INFO    ] 200
[2026-08-31 13:45:07,937.937 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:45:07,979.979 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:45:08,082.082 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:45:08,084.084 INFO    ] No camera update needed
[2026-08-31 13:45:08,087.087 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:45:08,090.090 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:45:08,096.096 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:45:08,101.101 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:45:10,142.142 INFO    ] ================================================
[2026-08-31 13:45:10,157.157 INFO    ] Launching Daemon at Mon Aug 31 13:45:10 IST 2026
[2026-08-31 13:45:10,171.171 INFO    ] ================================================
[2026-08-31 13:45:10,801.801 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:45:10
[2026-08-31 13:45:11,452.452 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:45:11,747.747 INFO    ] Initializing speech engine...
[2026-08-31 13:45:11,754.754 INFO    ] 2026-08-31 13:45:11
[2026-08-31 13:45:12,037.037 INFO    ] 2026-08-31 13:45:12
[2026-08-31 13:45:12,081.081 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:45:12,329.329 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:45:12,334.334 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:45:12,563.563 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:45:12,571.571 INFO    ] time= 31/08/2026 13:45:12
[2026-08-31 13:45:12,590.590 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:45:12,618.618 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:45:12,731.731 INFO    ] No existing commands found in stream
[2026-08-31 13:45:17,755.755 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:45:17,759.759 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-08-31 13:45:20,936.936 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 13:45:20,939.939 INFO    ] Checking for system updates...
[2026-08-31 13:45:20,979.979 INFO    ] 200
[2026-08-31 13:45:20,982.982 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:45:21,037.037 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:45:21,040.040 INFO    ] No update needed
[2026-08-31 13:45:21,043.043 INFO    ] Checking for camera pi updates...
[2026-08-31 13:45:21,084.084 INFO    ] 200
[2026-08-31 13:45:21,087.087 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:45:21,131.131 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:45:21,213.213 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:45:21,215.215 INFO    ] No camera update needed
[2026-08-31 13:45:21,218.218 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:45:21,220.220 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:45:21,225.225 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:45:21,230.230 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:45:23,270.270 INFO    ] ================================================
[2026-08-31 13:45:23,284.284 INFO    ] Launching Daemon at Mon Aug 31 13:45:23 IST 2026
[2026-08-31 13:45:23,295.295 INFO    ] ================================================
[2026-08-31 13:45:23,877.877 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:45:23
[2026-08-31 13:45:24,474.474 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:45:24,748.748 INFO    ] Initializing speech engine...
[2026-08-31 13:45:24,769.769 INFO    ] 2026-08-31 13:45:24
[2026-08-31 13:45:25,036.036 INFO    ] 2026-08-31 13:45:25
[2026-08-31 13:45:25,075.075 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:45:25,366.366 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:45:25,372.372 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:45:25,615.615 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:45:25,657.657 INFO    ] time= 31/08/2026 13:45:25
[2026-08-31 13:45:25,664.664 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:45:25,684.684 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:45:25,806.806 INFO    ] No existing commands found in stream
[2026-08-31 13:45:30,832.832 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:45:30,834.834 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-08-31 13:45:35,190.190 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 13:45:35,192.192 INFO    ] Checking for system updates...
[2026-08-31 13:45:35,232.232 INFO    ] 200
[2026-08-31 13:45:35,234.234 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:45:35,287.287 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:45:35,289.289 INFO    ] No update needed
[2026-08-31 13:45:35,292.292 INFO    ] Checking for camera pi updates...
[2026-08-31 13:45:35,329.329 INFO    ] 200
[2026-08-31 13:45:35,331.331 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:45:35,372.372 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:45:35,456.456 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:45:35,459.459 INFO    ] No camera update needed
[2026-08-31 13:45:35,461.461 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:45:35,463.463 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:45:35,469.469 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:45:35,474.474 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:45:37,514.514 INFO    ] ================================================
[2026-08-31 13:45:37,529.529 INFO    ] Launching Daemon at Mon Aug 31 13:45:37 IST 2026
[2026-08-31 13:45:37,539.539 INFO    ] ================================================
[2026-08-31 13:45:38,105.105 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:45:38
[2026-08-31 13:45:38,691.691 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:45:38,940.940 INFO    ] Initializing speech engine...
[2026-08-31 13:45:38,954.954 INFO    ] 2026-08-31 13:45:38
[2026-08-31 13:45:39,220.220 INFO    ] 2026-08-31 13:45:39
[2026-08-31 13:45:39,256.256 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:45:39,517.517 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:45:39,526.526 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:45:39,741.741 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:45:39,791.791 INFO    ] time= 31/08/2026 13:45:39
[2026-08-31 13:45:39,798.798 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:45:39,812.812 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:45:39,940.940 INFO    ] No existing commands found in stream
[2026-08-31 13:45:44,962.962 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:45:44,964.964 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-08-31 13:45:46,699.699 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 13:45:46,702.702 INFO    ] Checking for system updates...
[2026-08-31 13:45:46,740.740 INFO    ] 200
[2026-08-31 13:45:46,742.742 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:45:46,800.800 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:45:46,803.803 INFO    ] No update needed
[2026-08-31 13:45:46,805.805 INFO    ] Checking for camera pi updates...
[2026-08-31 13:45:46,842.842 INFO    ] 200
[2026-08-31 13:45:46,845.845 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:45:46,890.890 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:45:46,975.975 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:45:46,978.978 INFO    ] No camera update needed
[2026-08-31 13:45:46,980.980 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:45:46,983.983 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:45:46,988.988 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:45:46,993.993 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:45:49,035.035 INFO    ] ================================================
[2026-08-31 13:45:49,050.050 INFO    ] Launching Daemon at Mon Aug 31 13:45:49 IST 2026
[2026-08-31 13:45:49,061.061 INFO    ] ================================================
[2026-08-31 13:45:49,698.698 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:45:49
[2026-08-31 13:45:50,356.356 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:45:50,657.657 INFO    ] Initializing speech engine...
[2026-08-31 13:45:50,665.665 INFO    ] 2026-08-31 13:45:50
[2026-08-31 13:45:50,942.942 INFO    ] 2026-08-31 13:45:50
[2026-08-31 13:45:50,998.998 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:45:51,298.298 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:45:51,351.351 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:45:51,541.541 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:45:51,551.551 INFO    ] time= 31/08/2026 13:45:51
[2026-08-31 13:45:51,569.569 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:45:51,631.631 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:45:51,764.764 INFO    ] No existing commands found in stream
[2026-08-31 13:45:56,796.796 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:45:56,799.799 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-08-31 13:45:59,966.966 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 13:45:59,970.970 INFO    ] Checking for system updates...
[2026-08-31 13:46:00,011.011 INFO    ] 200
[2026-08-31 13:46:00,014.014 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:46:00,072.072 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:46:00,075.075 INFO    ] No update needed
[2026-08-31 13:46:00,078.078 INFO    ] Checking for camera pi updates...
[2026-08-31 13:46:00,112.112 INFO    ] 200
[2026-08-31 13:46:00,115.115 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:46:00,159.159 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:46:00,250.250 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:46:00,252.252 INFO    ] No camera update needed
[2026-08-31 13:46:00,254.254 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:46:00,257.257 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:46:00,262.262 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:46:00,267.267 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:46:02,322.322 INFO    ] ================================================
[2026-08-31 13:46:02,342.342 INFO    ] Launching Daemon at Mon Aug 31 13:46:02 IST 2026
[2026-08-31 13:46:02,359.359 INFO    ] ================================================
[2026-08-31 13:46:03,006.006 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:46:03
[2026-08-31 13:46:03,604.604 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:46:03,879.879 INFO    ] Initializing speech engine...
[2026-08-31 13:46:03,885.885 INFO    ] 2026-08-31 13:46:03
[2026-08-31 13:46:04,134.134 INFO    ] 2026-08-31 13:46:04
[2026-08-31 13:46:04,169.169 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:46:04,452.452 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:46:04,459.459 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:46:04,663.663 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:46:04,703.703 INFO    ] time= 31/08/2026 13:46:04
[2026-08-31 13:46:04,719.719 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:46:04,728.728 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:46:04,852.852 INFO    ] No existing commands found in stream
[2026-08-31 13:46:09,869.869 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:46:09,872.872 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-08-31 13:46:11,490.490 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 13:46:11,492.492 INFO    ] Checking for system updates...
[2026-08-31 13:46:11,530.530 INFO    ] 200
[2026-08-31 13:46:11,532.532 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:46:11,592.592 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:46:11,595.595 INFO    ] No update needed
[2026-08-31 13:46:11,597.597 INFO    ] Checking for camera pi updates...
[2026-08-31 13:46:11,630.630 INFO    ] 200
[2026-08-31 13:46:11,633.633 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:46:11,672.672 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:46:11,752.752 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:46:11,755.755 INFO    ] No camera update needed
[2026-08-31 13:46:11,757.757 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:46:11,759.759 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:46:11,765.765 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:46:11,769.769 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:46:13,810.810 INFO    ] ================================================
[2026-08-31 13:46:13,825.825 INFO    ] Launching Daemon at Mon Aug 31 13:46:13 IST 2026
[2026-08-31 13:46:13,836.836 INFO    ] ================================================
[2026-08-31 13:46:14,504.504 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:46:14
[2026-08-31 13:46:15,191.191 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:46:15,499.499 INFO    ] Initializing speech engine...
[2026-08-31 13:46:15,513.513 INFO    ] 2026-08-31 13:46:15
[2026-08-31 13:46:15,825.825 INFO    ] 2026-08-31 13:46:15
[2026-08-31 13:46:15,911.911 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:46:16,189.189 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:46:16,242.242 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:46:16,467.467 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:46:16,501.501 INFO    ] time= 31/08/2026 13:46:16
[2026-08-31 13:46:16,561.561 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:46:16,597.597 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:46:16,732.732 INFO    ] No existing commands found in stream
[2026-08-31 13:46:21,758.758 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:46:21,761.761 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-08-31 13:46:25,297.297 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 13:46:25,300.300 INFO    ] Checking for system updates...
[2026-08-31 13:46:25,337.337 INFO    ] 200
[2026-08-31 13:46:25,340.340 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:46:25,403.403 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:46:25,406.406 INFO    ] No update needed
[2026-08-31 13:46:25,409.409 INFO    ] Checking for camera pi updates...
[2026-08-31 13:46:25,449.449 INFO    ] 200
[2026-08-31 13:46:25,452.452 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:46:25,499.499 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:46:25,587.587 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:46:25,590.590 INFO    ] No camera update needed
[2026-08-31 13:46:25,592.592 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:46:25,595.595 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:46:25,601.601 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:46:25,608.608 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:46:27,650.650 INFO    ] ================================================
[2026-08-31 13:46:27,665.665 INFO    ] Launching Daemon at Mon Aug 31 13:46:27 IST 2026
[2026-08-31 13:46:27,676.676 INFO    ] ================================================
[2026-08-31 13:46:28,259.259 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:46:28
[2026-08-31 13:46:28,851.851 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:46:29,117.117 INFO    ] Initializing speech engine...
[2026-08-31 13:46:29,129.129 INFO    ] 2026-08-31 13:46:29
[2026-08-31 13:46:29,381.381 INFO    ] 2026-08-31 13:46:29
[2026-08-31 13:46:29,416.416 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:46:29,700.700 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:46:29,706.706 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:46:29,912.912 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:46:29,949.949 INFO    ] time= 31/08/2026 13:46:29
[2026-08-31 13:46:29,955.955 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:46:29,973.973 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:46:30,110.110 INFO    ] No existing commands found in stream
[2026-08-31 13:46:35,138.138 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:46:35,140.140 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-08-31 13:46:38,927.927 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 13:46:38,930.930 INFO    ] Checking for system updates...
[2026-08-31 13:46:38,966.966 INFO    ] 200
[2026-08-31 13:46:38,968.968 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:46:39,029.029 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:46:39,031.031 INFO    ] No update needed
[2026-08-31 13:46:39,034.034 INFO    ] Checking for camera pi updates...
[2026-08-31 13:46:39,072.072 INFO    ] 200
[2026-08-31 13:46:39,074.074 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:46:39,121.121 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:46:39,229.229 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:46:39,231.231 INFO    ] No camera update needed
[2026-08-31 13:46:39,234.234 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:46:39,236.236 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:46:39,241.241 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:46:39,246.246 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:46:41,286.286 INFO    ] ================================================
[2026-08-31 13:46:41,301.301 INFO    ] Launching Daemon at Mon Aug 31 13:46:41 IST 2026
[2026-08-31 13:46:41,312.312 INFO    ] ================================================
[2026-08-31 13:46:41,978.978 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:46:41
[2026-08-31 13:46:42,669.669 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:46:42,981.981 INFO    ] Initializing speech engine...
[2026-08-31 13:46:42,995.995 INFO    ] 2026-08-31 13:46:42
[2026-08-31 13:46:43,289.289 INFO    ] 2026-08-31 13:46:43
[2026-08-31 13:46:43,334.334 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:46:43,624.624 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:46:43,633.633 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:46:43,828.828 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:46:43,848.848 INFO    ] time= 31/08/2026 13:46:43
[2026-08-31 13:46:43,879.879 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:46:43,888.888 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:46:44,016.016 INFO    ] No existing commands found in stream
[2026-08-31 13:46:49,047.047 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:46:49,050.050 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-08-31 13:46:50,855.855 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 13:46:50,858.858 INFO    ] Checking for system updates...
[2026-08-31 13:46:50,897.897 INFO    ] 200
[2026-08-31 13:46:50,900.900 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:46:50,954.954 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:46:50,957.957 INFO    ] No update needed
[2026-08-31 13:46:50,960.960 INFO    ] Checking for camera pi updates...
[2026-08-31 13:46:51,000.000 INFO    ] 200
[2026-08-31 13:46:51,003.003 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:46:51,049.049 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:46:51,141.141 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:46:51,144.144 INFO    ] No camera update needed
[2026-08-31 13:46:51,147.147 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:46:51,150.150 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:46:51,156.156 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:46:51,163.163 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:46:53,205.205 INFO    ] ================================================
[2026-08-31 13:46:53,220.220 INFO    ] Launching Daemon at Mon Aug 31 13:46:53 IST 2026
[2026-08-31 13:46:53,231.231 INFO    ] ================================================
[2026-08-31 13:46:53,864.864 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:46:53
[2026-08-31 13:46:54,555.555 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:46:54,865.865 INFO    ] Initializing speech engine...
[2026-08-31 13:46:54,880.880 INFO    ] 2026-08-31 13:46:54
[2026-08-31 13:46:55,191.191 INFO    ] 2026-08-31 13:46:55
[2026-08-31 13:46:55,276.276 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:46:55,490.490 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:46:55,495.495 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:46:55,691.691 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:46:55,712.712 INFO    ] time= 31/08/2026 13:46:55
[2026-08-31 13:46:55,725.725 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:46:55,747.747 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:46:55,897.897 INFO    ] No existing commands found in stream
[2026-08-31 13:47:00,929.929 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:47:00,932.932 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-08-31 13:47:04,698.698 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 13:47:04,701.701 INFO    ] Checking for system updates...
[2026-08-31 13:47:04,739.739 INFO    ] 200
[2026-08-31 13:47:04,742.742 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:47:04,796.796 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:47:04,799.799 INFO    ] No update needed
[2026-08-31 13:47:04,801.801 INFO    ] Checking for camera pi updates...
[2026-08-31 13:47:04,835.835 INFO    ] 200
[2026-08-31 13:47:04,838.838 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:47:04,885.885 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:47:04,975.975 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:47:04,978.978 INFO    ] No camera update needed
[2026-08-31 13:47:04,980.980 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:47:04,982.982 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:47:04,988.988 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:47:04,993.993 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:47:07,034.034 INFO    ] ================================================
[2026-08-31 13:47:07,049.049 INFO    ] Launching Daemon at Mon Aug 31 13:47:07 IST 2026
[2026-08-31 13:47:07,059.059 INFO    ] ================================================
[2026-08-31 13:47:07,631.631 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:47:07
[2026-08-31 13:47:08,219.219 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:47:08,478.478 INFO    ] Initializing speech engine...
[2026-08-31 13:47:08,484.484 INFO    ] 2026-08-31 13:47:08
[2026-08-31 13:47:08,784.784 INFO    ] 2026-08-31 13:47:08
[2026-08-31 13:47:08,815.815 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:47:09,030.030 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:47:09,045.045 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:47:09,213.213 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:47:09,221.221 INFO    ] time= 31/08/2026 13:47:09
[2026-08-31 13:47:09,225.225 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:47:09,234.234 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:47:09,391.391 INFO    ] No existing commands found in stream
[2026-08-31 13:47:14,416.416 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:47:14,419.419 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-08-31 13:47:17,814.814 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 13:47:17,816.816 INFO    ] Checking for system updates...
[2026-08-31 13:47:17,856.856 INFO    ] 200
[2026-08-31 13:47:17,859.859 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:47:17,919.919 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:47:17,921.921 INFO    ] No update needed
[2026-08-31 13:47:17,923.923 INFO    ] Checking for camera pi updates...
[2026-08-31 13:47:17,961.961 INFO    ] 200
[2026-08-31 13:47:17,964.964 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:47:18,009.009 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:47:18,101.101 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:47:18,104.104 INFO    ] No camera update needed
[2026-08-31 13:47:18,106.106 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:47:18,109.109 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:47:18,114.114 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:47:18,119.119 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:47:20,159.159 INFO    ] ================================================
[2026-08-31 13:47:20,174.174 INFO    ] Launching Daemon at Mon Aug 31 13:47:20 IST 2026
[2026-08-31 13:47:20,185.185 INFO    ] ================================================
[2026-08-31 13:47:20,766.766 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:47:20
[2026-08-31 13:47:21,366.366 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:47:21,640.640 INFO    ] Initializing speech engine...
[2026-08-31 13:47:21,650.650 INFO    ] 2026-08-31 13:47:21
[2026-08-31 13:47:21,913.913 INFO    ] 2026-08-31 13:47:21
[2026-08-31 13:47:21,967.967 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:47:22,188.188 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:47:22,197.197 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:47:22,440.440 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:47:22,458.458 INFO    ] time= 31/08/2026 13:47:22
[2026-08-31 13:47:22,476.476 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:47:22,503.503 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:47:22,631.631 INFO    ] No existing commands found in stream
[2026-08-31 13:47:27,661.661 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:47:27,664.664 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-08-31 13:47:31,907.907 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 13:47:31,910.910 INFO    ] Checking for system updates...
[2026-08-31 13:47:31,952.952 INFO    ] 200
[2026-08-31 13:47:31,955.955 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:47:32,021.021 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:47:32,024.024 INFO    ] No update needed
[2026-08-31 13:47:32,027.027 INFO    ] Checking for camera pi updates...
[2026-08-31 13:47:32,063.063 INFO    ] 200
[2026-08-31 13:47:32,066.066 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:47:32,116.116 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:47:32,210.210 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:47:32,213.213 INFO    ] No camera update needed
[2026-08-31 13:47:32,215.215 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:47:32,218.218 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:47:32,224.224 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:47:32,230.230 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:47:34,273.273 INFO    ] ================================================
[2026-08-31 13:47:34,288.288 INFO    ] Launching Daemon at Mon Aug 31 13:47:34 IST 2026
[2026-08-31 13:47:34,299.299 INFO    ] ================================================
[2026-08-31 13:47:34,972.972 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:47:34
[2026-08-31 13:47:35,666.666 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:47:35,980.980 INFO    ] Initializing speech engine...
[2026-08-31 13:47:35,992.992 INFO    ] 2026-08-31 13:47:35
[2026-08-31 13:47:36,305.305 INFO    ] 2026-08-31 13:47:36
[2026-08-31 13:47:36,391.391 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:47:36,658.658 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:47:36,677.677 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:47:36,855.855 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:47:36,871.871 INFO    ] time= 31/08/2026 13:47:36
[2026-08-31 13:47:36,940.940 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:47:36,976.976 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:47:37,094.094 INFO    ] No existing commands found in stream
[2026-08-31 13:47:42,131.131 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:47:42,135.135 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-08-31 13:47:46,509.509 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 13:47:46,513.513 INFO    ] Checking for system updates...
[2026-08-31 13:47:46,551.551 INFO    ] 200
[2026-08-31 13:47:46,554.554 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:47:46,607.607 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:47:46,610.610 INFO    ] No update needed
[2026-08-31 13:47:46,613.613 INFO    ] Checking for camera pi updates...
[2026-08-31 13:47:46,648.648 INFO    ] 200
[2026-08-31 13:47:46,651.651 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:47:46,693.693 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:47:46,774.774 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:47:46,777.777 INFO    ] No camera update needed
[2026-08-31 13:47:46,780.780 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:47:46,782.782 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:47:46,789.789 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:47:46,795.795 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:47:48,840.840 INFO    ] ================================================
[2026-08-31 13:47:48,855.855 INFO    ] Launching Daemon at Mon Aug 31 13:47:48 IST 2026
[2026-08-31 13:47:48,867.867 INFO    ] ================================================
[2026-08-31 13:47:49,477.477 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:47:49
[2026-08-31 13:47:50,109.109 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:47:50,393.393 INFO    ] Initializing speech engine...
[2026-08-31 13:47:50,410.410 INFO    ] 2026-08-31 13:47:50
[2026-08-31 13:47:50,723.723 INFO    ] 2026-08-31 13:47:50
[2026-08-31 13:47:50,760.760 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:47:51,075.075 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:47:51,086.086 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:47:51,256.256 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:47:51,321.321 INFO    ] time= 31/08/2026 13:47:51
[2026-08-31 13:47:51,371.371 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:47:51,410.410 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:47:51,569.569 INFO    ] No existing commands found in stream
[2026-08-31 13:47:56,594.594 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:47:56,597.597 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-08-31 13:47:57,447.447 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 13:47:57,450.450 INFO    ] Checking for system updates...
[2026-08-31 13:47:57,491.491 INFO    ] 200
[2026-08-31 13:47:57,493.493 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:47:57,553.553 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:47:57,556.556 INFO    ] No update needed
[2026-08-31 13:47:57,558.558 INFO    ] Checking for camera pi updates...
[2026-08-31 13:47:57,596.596 INFO    ] 200
[2026-08-31 13:47:57,599.599 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:47:57,641.641 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:47:57,727.727 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:47:57,729.729 INFO    ] No camera update needed
[2026-08-31 13:47:57,732.732 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:47:57,734.734 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:47:57,740.740 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:47:57,745.745 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:47:59,788.788 INFO    ] ================================================
[2026-08-31 13:47:59,803.803 INFO    ] Launching Daemon at Mon Aug 31 13:47:59 IST 2026
[2026-08-31 13:47:59,814.814 INFO    ] ================================================
[2026-08-31 13:48:00,408.408 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:48:00
[2026-08-31 13:48:01,029.029 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:48:01,456.456 INFO    ] Initializing speech engine...
[2026-08-31 13:48:01,460.460 INFO    ] 2026-08-31 13:48:01
[2026-08-31 13:48:01,846.846 INFO    ] 2026-08-31 13:48:01
[2026-08-31 13:48:01,940.940 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:48:02,147.147 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:48:02,159.159 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:48:02,351.351 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:48:02,412.412 INFO    ] time= 31/08/2026 13:48:02
[2026-08-31 13:48:02,462.462 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:48:02,492.492 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:48:02,628.628 INFO    ] No existing commands found in stream
[2026-08-31 13:48:07,650.650 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:48:07,652.652 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-08-31 13:48:12,135.135 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 13:48:12,137.137 INFO    ] Checking for system updates...
[2026-08-31 13:48:12,172.172 INFO    ] 200
[2026-08-31 13:48:12,175.175 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:48:12,228.228 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:48:12,230.230 INFO    ] No update needed
[2026-08-31 13:48:12,233.233 INFO    ] Checking for camera pi updates...
[2026-08-31 13:48:12,266.266 INFO    ] 200
[2026-08-31 13:48:12,268.268 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:48:12,311.311 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:48:12,390.390 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:48:12,393.393 INFO    ] No camera update needed
[2026-08-31 13:48:12,395.395 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:48:12,397.397 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:48:12,402.402 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:48:12,407.407 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:48:14,448.448 INFO    ] ================================================
[2026-08-31 13:48:14,463.463 INFO    ] Launching Daemon at Mon Aug 31 13:48:14 IST 2026
[2026-08-31 13:48:14,474.474 INFO    ] ================================================
[2026-08-31 13:48:15,041.041 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:48:15
[2026-08-31 13:48:15,624.624 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:48:15,886.886 INFO    ] Initializing speech engine...
[2026-08-31 13:48:15,906.906 INFO    ] 2026-08-31 13:48:15
[2026-08-31 13:48:16,157.157 INFO    ] 2026-08-31 13:48:16
[2026-08-31 13:48:16,192.192 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:48:16,452.452 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:48:16,461.461 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:48:16,675.675 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:48:16,725.725 INFO    ] time= 31/08/2026 13:48:16
[2026-08-31 13:48:16,733.733 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:48:16,748.748 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:48:16,859.859 INFO    ] No existing commands found in stream
[2026-08-31 13:48:21,884.884 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:48:21,887.887 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-08-31 13:48:23,384.384 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 13:48:23,387.387 INFO    ] Checking for system updates...
[2026-08-31 13:48:23,422.422 INFO    ] 200
[2026-08-31 13:48:23,424.424 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:48:23,483.483 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:48:23,486.486 INFO    ] No update needed
[2026-08-31 13:48:23,488.488 INFO    ] Checking for camera pi updates...
[2026-08-31 13:48:23,526.526 INFO    ] 200
[2026-08-31 13:48:23,528.528 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:48:23,573.573 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:48:23,653.653 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:48:23,655.655 INFO    ] No camera update needed
[2026-08-31 13:48:23,658.658 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:48:23,660.660 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:48:23,665.665 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:48:23,670.670 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:48:25,712.712 INFO    ] ================================================
[2026-08-31 13:48:25,728.728 INFO    ] Launching Daemon at Mon Aug 31 13:48:25 IST 2026
[2026-08-31 13:48:25,740.740 INFO    ] ================================================
[2026-08-31 13:48:26,385.385 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:48:26
[2026-08-31 13:48:26,968.968 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:48:27,214.214 INFO    ] Initializing speech engine...
[2026-08-31 13:48:27,229.229 INFO    ] 2026-08-31 13:48:27
[2026-08-31 13:48:27,495.495 INFO    ] 2026-08-31 13:48:27
[2026-08-31 13:48:27,529.529 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:48:27,789.789 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:48:27,799.799 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:48:28,007.007 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:48:28,066.066 INFO    ] time= 31/08/2026 13:48:28
[2026-08-31 13:48:28,073.073 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:48:28,096.096 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:48:28,297.297 INFO    ] No existing commands found in stream
[2026-08-31 13:48:33,328.328 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:48:33,332.332 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-08-31 13:48:36,219.219 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 13:48:36,222.222 INFO    ] Checking for system updates...
[2026-08-31 13:48:36,270.270 INFO    ] 200
[2026-08-31 13:48:36,273.273 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:48:36,336.336 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:48:36,339.339 INFO    ] No update needed
[2026-08-31 13:48:36,342.342 INFO    ] Checking for camera pi updates...
[2026-08-31 13:48:36,377.377 INFO    ] 200
[2026-08-31 13:48:36,380.380 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:48:36,429.429 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:48:36,516.516 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:48:36,518.518 INFO    ] No camera update needed
[2026-08-31 13:48:36,521.521 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:48:36,523.523 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:48:36,528.528 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:48:36,533.533 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:48:38,577.577 INFO    ] ================================================
[2026-08-31 13:48:38,592.592 INFO    ] Launching Daemon at Mon Aug 31 13:48:38 IST 2026
[2026-08-31 13:48:38,604.604 INFO    ] ================================================
[2026-08-31 13:48:39,223.223 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:48:39
[2026-08-31 13:48:39,921.921 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:48:40,172.172 INFO    ] Initializing speech engine...
[2026-08-31 13:48:40,184.184 INFO    ] 2026-08-31 13:48:40
[2026-08-31 13:48:40,448.448 INFO    ] 2026-08-31 13:48:40
[2026-08-31 13:48:40,483.483 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:48:40,725.725 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:48:40,747.747 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:48:40,892.892 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:48:40,952.952 INFO    ] time= 31/08/2026 13:48:40
[2026-08-31 13:48:41,001.001 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:48:41,032.032 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:48:41,170.170 INFO    ] No existing commands found in stream
[2026-08-31 13:48:46,196.196 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:48:46,199.199 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-08-31 13:48:47,512.512 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 13:48:47,515.515 INFO    ] Checking for system updates...
[2026-08-31 13:48:47,555.555 INFO    ] 200
[2026-08-31 13:48:47,557.557 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:48:47,618.618 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:48:47,621.621 INFO    ] No update needed
[2026-08-31 13:48:47,623.623 INFO    ] Checking for camera pi updates...
[2026-08-31 13:48:47,685.685 INFO    ] 200
[2026-08-31 13:48:47,688.688 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:48:47,730.730 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:48:47,816.816 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:48:47,819.819 INFO    ] No camera update needed
[2026-08-31 13:48:47,821.821 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:48:47,824.824 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:48:47,829.829 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:48:47,834.834 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:48:49,876.876 INFO    ] ================================================
[2026-08-31 13:48:49,892.892 INFO    ] Launching Daemon at Mon Aug 31 13:48:49 IST 2026
[2026-08-31 13:48:49,904.904 INFO    ] ================================================
[2026-08-31 13:48:50,472.472 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:48:50
[2026-08-31 13:48:51,057.057 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:48:51,326.326 INFO    ] Initializing speech engine...
[2026-08-31 13:48:51,335.335 INFO    ] 2026-08-31 13:48:51
[2026-08-31 13:48:51,585.585 INFO    ] 2026-08-31 13:48:51
[2026-08-31 13:48:51,652.652 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:48:51,944.944 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:48:51,953.953 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:48:52,147.147 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:48:52,168.168 INFO    ] time= 31/08/2026 13:48:52
[2026-08-31 13:48:52,196.196 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:48:52,205.205 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:48:52,330.330 INFO    ] No existing commands found in stream
[2026-08-31 13:48:57,366.366 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:48:57,370.370 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-08-31 13:48:59,110.110 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 13:48:59,117.117 INFO    ] Checking for system updates...
[2026-08-31 13:48:59,160.160 INFO    ] 200
[2026-08-31 13:48:59,163.163 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:48:59,231.231 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:48:59,234.234 INFO    ] No update needed
[2026-08-31 13:48:59,237.237 INFO    ] Checking for camera pi updates...
[2026-08-31 13:48:59,276.276 INFO    ] 200
[2026-08-31 13:48:59,280.280 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:48:59,328.328 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:48:59,409.409 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:48:59,412.412 INFO    ] No camera update needed
[2026-08-31 13:48:59,415.415 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:48:59,418.418 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:48:59,424.424 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:48:59,431.431 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:49:01,481.481 INFO    ] ================================================
[2026-08-31 13:49:01,533.533 INFO    ] Launching Daemon at Mon Aug 31 13:49:01 IST 2026
[2026-08-31 13:49:01,569.569 INFO    ] ================================================
[2026-08-31 13:49:02,222.222 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:49:02
[2026-08-31 13:49:02,896.896 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:49:03,228.228 INFO    ] Initializing speech engine...
[2026-08-31 13:49:03,240.240 INFO    ] 2026-08-31 13:49:03
[2026-08-31 13:49:03,517.517 INFO    ] 2026-08-31 13:49:03
[2026-08-31 13:49:03,575.575 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:49:03,829.829 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:49:03,836.836 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:49:04,067.067 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:49:04,084.084 INFO    ] time= 31/08/2026 13:49:04
[2026-08-31 13:49:04,105.105 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:49:04,135.135 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:49:04,310.310 INFO    ] No existing commands found in stream
[2026-08-31 13:49:09,336.336 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:49:09,339.339 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-08-31 13:49:10,060.060 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 13:49:10,063.063 INFO    ] Checking for system updates...
[2026-08-31 13:49:10,104.104 INFO    ] 200
[2026-08-31 13:49:10,107.107 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:49:10,165.165 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:49:10,169.169 INFO    ] No update needed
[2026-08-31 13:49:10,172.172 INFO    ] Checking for camera pi updates...
[2026-08-31 13:49:10,207.207 INFO    ] 200
[2026-08-31 13:49:10,210.210 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:49:10,257.257 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:49:10,439.439 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:49:10,442.442 INFO    ] No camera update needed
[2026-08-31 13:49:10,444.444 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:49:10,447.447 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:49:10,452.452 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:49:10,457.457 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:49:12,498.498 INFO    ] ================================================
[2026-08-31 13:49:12,514.514 INFO    ] Launching Daemon at Mon Aug 31 13:49:12 IST 2026
[2026-08-31 13:49:12,525.525 INFO    ] ================================================
[2026-08-31 13:49:13,090.090 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:49:13
[2026-08-31 13:49:13,672.672 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:49:13,934.934 INFO    ] Initializing speech engine...
[2026-08-31 13:49:13,947.947 INFO    ] 2026-08-31 13:49:13
[2026-08-31 13:49:14,235.235 INFO    ] 2026-08-31 13:49:14
[2026-08-31 13:49:14,270.270 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:49:14,503.503 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:49:14,544.544 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:49:14,730.730 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:49:14,752.752 INFO    ] time= 31/08/2026 13:49:14
[2026-08-31 13:49:14,806.806 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:49:14,866.866 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:49:15,005.005 INFO    ] No existing commands found in stream
[2026-08-31 13:49:20,028.028 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:49:20,031.031 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-08-31 13:49:22,911.911 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 13:49:22,913.913 INFO    ] Checking for system updates...
[2026-08-31 13:49:22,949.949 INFO    ] 200
[2026-08-31 13:49:22,952.952 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:49:23,012.012 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:49:23,014.014 INFO    ] No update needed
[2026-08-31 13:49:23,017.017 INFO    ] Checking for camera pi updates...
[2026-08-31 13:49:23,055.055 INFO    ] 200
[2026-08-31 13:49:23,057.057 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:49:23,103.103 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:49:23,236.236 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:49:23,239.239 INFO    ] No camera update needed
[2026-08-31 13:49:23,241.241 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:49:23,243.243 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:49:23,249.249 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:49:23,254.254 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:49:25,293.293 INFO    ] ================================================
[2026-08-31 13:49:25,308.308 INFO    ] Launching Daemon at Mon Aug 31 13:49:25 IST 2026
[2026-08-31 13:49:25,320.320 INFO    ] ================================================
[2026-08-31 13:49:25,905.905 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:49:25
[2026-08-31 13:49:26,507.507 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:49:26,782.782 INFO    ] Initializing speech engine...
[2026-08-31 13:49:26,792.792 INFO    ] 2026-08-31 13:49:26
[2026-08-31 13:49:27,047.047 INFO    ] 2026-08-31 13:49:27
[2026-08-31 13:49:27,107.107 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:49:27,334.334 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:49:27,340.340 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:49:27,592.592 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:49:27,598.598 INFO    ] time= 31/08/2026 13:49:27
[2026-08-31 13:49:27,615.615 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:49:27,638.638 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:49:27,752.752 INFO    ] No existing commands found in stream
[2026-08-31 13:49:32,776.776 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:49:32,779.779 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-08-31 13:49:35,867.867 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 13:49:35,870.870 INFO    ] Checking for system updates...
[2026-08-31 13:49:35,906.906 INFO    ] 200
[2026-08-31 13:49:35,908.908 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:49:35,960.960 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:49:35,963.963 INFO    ] No update needed
[2026-08-31 13:49:35,965.965 INFO    ] Checking for camera pi updates...
[2026-08-31 13:49:36,003.003 INFO    ] 200
[2026-08-31 13:49:36,006.006 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:49:36,046.046 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:49:36,127.127 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:49:36,130.130 INFO    ] No camera update needed
[2026-08-31 13:49:36,132.132 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:49:36,134.134 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:49:36,140.140 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:49:36,145.145 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:49:38,187.187 INFO    ] ================================================
[2026-08-31 13:49:38,203.203 INFO    ] Launching Daemon at Mon Aug 31 13:49:38 IST 2026
[2026-08-31 13:49:38,215.215 INFO    ] ================================================
[2026-08-31 13:49:38,782.782 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:49:38
[2026-08-31 13:49:39,364.364 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:49:39,623.623 INFO    ] Initializing speech engine...
[2026-08-31 13:49:39,641.641 INFO    ] 2026-08-31 13:49:39
[2026-08-31 13:49:39,893.893 INFO    ] 2026-08-31 13:49:39
[2026-08-31 13:49:39,927.927 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:49:40,212.212 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:49:40,219.219 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:49:40,455.455 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:49:40,461.461 INFO    ] time= 31/08/2026 13:49:40
[2026-08-31 13:49:40,479.479 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:49:40,502.502 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:49:40,618.618 INFO    ] No existing commands found in stream
[2026-08-31 13:49:45,638.638 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:49:45,641.641 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-08-31 13:49:49,149.149 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 13:49:49,152.152 INFO    ] Checking for system updates...
[2026-08-31 13:49:49,188.188 INFO    ] 200
[2026-08-31 13:49:49,191.191 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:49:49,252.252 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:49:49,255.255 INFO    ] No update needed
[2026-08-31 13:49:49,257.257 INFO    ] Checking for camera pi updates...
[2026-08-31 13:49:49,291.291 INFO    ] 200
[2026-08-31 13:49:49,293.293 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:49:49,347.347 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:49:49,443.443 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:49:49,445.445 INFO    ] No camera update needed
[2026-08-31 13:49:49,448.448 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:49:49,450.450 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:49:49,456.456 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:49:49,461.461 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:49:51,502.502 INFO    ] ================================================
[2026-08-31 13:49:51,518.518 INFO    ] Launching Daemon at Mon Aug 31 13:49:51 IST 2026
[2026-08-31 13:49:51,529.529 INFO    ] ================================================
[2026-08-31 13:49:52,114.114 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:49:52
[2026-08-31 13:49:52,715.715 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:49:52,974.974 INFO    ] Initializing speech engine...
[2026-08-31 13:49:52,981.981 INFO    ] 2026-08-31 13:49:52
[2026-08-31 13:49:53,277.277 INFO    ] 2026-08-31 13:49:53
[2026-08-31 13:49:53,312.312 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:49:53,542.542 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:49:53,565.565 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:49:53,773.773 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:49:53,800.800 INFO    ] time= 31/08/2026 13:49:53
[2026-08-31 13:49:53,849.849 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:49:53,904.904 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:49:54,055.055 INFO    ] No existing commands found in stream
[2026-08-31 13:49:59,072.072 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:49:59,075.075 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-08-31 13:49:59,585.585 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 13:49:59,588.588 INFO    ] Checking for system updates...
[2026-08-31 13:49:59,628.628 INFO    ] 200
[2026-08-31 13:49:59,631.631 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:49:59,691.691 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:49:59,693.693 INFO    ] No update needed
[2026-08-31 13:49:59,695.695 INFO    ] Checking for camera pi updates...
[2026-08-31 13:49:59,733.733 INFO    ] 200
[2026-08-31 13:49:59,735.735 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:49:59,781.781 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:49:59,866.866 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:49:59,868.868 INFO    ] No camera update needed
[2026-08-31 13:49:59,871.871 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:49:59,873.873 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:49:59,878.878 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:49:59,883.883 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:50:01,947.947 INFO    ] ================================================
[2026-08-31 13:50:02,986.986 INFO    ] Launching Daemon at Mon Aug 31 13:50:01 IST 2026
[2026-08-31 13:50:02,033.033 INFO    ] ================================================
[2026-08-31 13:50:02,683.683 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:50:02
[2026-08-31 13:50:03,381.381 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:50:03,665.665 INFO    ] Initializing speech engine...
[2026-08-31 13:50:03,678.678 INFO    ] 2026-08-31 13:50:03
[2026-08-31 13:50:03,945.945 INFO    ] 2026-08-31 13:50:03
[2026-08-31 13:50:03,982.982 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:50:04,185.185 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:50:04,205.205 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:50:04,413.413 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:50:04,430.430 INFO    ] time= 31/08/2026 13:50:04
[2026-08-31 13:50:04,479.479 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:50:04,539.539 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:50:04,628.628 INFO    ] No existing commands found in stream
[2026-08-31 13:50:09,641.641 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:50:09,643.643 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-08-31 13:50:11,194.194 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 13:50:11,196.196 INFO    ] Checking for system updates...
[2026-08-31 13:50:11,233.233 INFO    ] 200
[2026-08-31 13:50:11,235.235 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:50:11,290.290 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:50:11,292.292 INFO    ] No update needed
[2026-08-31 13:50:11,295.295 INFO    ] Checking for camera pi updates...
[2026-08-31 13:50:11,329.329 INFO    ] 200
[2026-08-31 13:50:11,331.331 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:50:11,379.379 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:50:11,455.455 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:50:11,457.457 INFO    ] No camera update needed
[2026-08-31 13:50:11,460.460 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:50:11,462.462 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:50:11,468.468 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:50:11,473.473 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:50:13,514.514 INFO    ] ================================================
[2026-08-31 13:50:13,529.529 INFO    ] Launching Daemon at Mon Aug 31 13:50:13 IST 2026
[2026-08-31 13:50:13,540.540 INFO    ] ================================================
[2026-08-31 13:50:14,111.111 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:50:14
[2026-08-31 13:50:14,705.705 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:50:14,980.980 INFO    ] Initializing speech engine...
[2026-08-31 13:50:15,000.000 INFO    ] 2026-08-31 13:50:14
[2026-08-31 13:50:15,267.267 INFO    ] 2026-08-31 13:50:15
[2026-08-31 13:50:15,304.304 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:50:15,497.497 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:50:15,510.510 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:50:15,668.668 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:50:15,677.677 INFO    ] time= 31/08/2026 13:50:15
[2026-08-31 13:50:15,684.684 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:50:15,727.727 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:50:15,851.851 INFO    ] No existing commands found in stream
[2026-08-31 13:50:20,882.882 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:50:20,884.884 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-08-31 13:50:24,455.455 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 13:50:24,458.458 INFO    ] Checking for system updates...
[2026-08-31 13:50:24,507.507 INFO    ] 200
[2026-08-31 13:50:24,510.510 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:50:24,568.568 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:50:24,571.571 INFO    ] No update needed
[2026-08-31 13:50:24,573.573 INFO    ] Checking for camera pi updates...
[2026-08-31 13:50:24,609.609 INFO    ] 200
[2026-08-31 13:50:24,612.612 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:50:24,656.656 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:50:24,736.736 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:50:24,738.738 INFO    ] No camera update needed
[2026-08-31 13:50:24,741.741 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:50:24,743.743 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:50:24,749.749 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:50:24,754.754 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:50:26,795.795 INFO    ] ================================================
[2026-08-31 13:50:26,811.811 INFO    ] Launching Daemon at Mon Aug 31 13:50:26 IST 2026
[2026-08-31 13:50:26,822.822 INFO    ] ================================================
[2026-08-31 13:50:27,401.401 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:50:27
[2026-08-31 13:50:27,997.997 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:50:28,271.271 INFO    ] Initializing speech engine...
[2026-08-31 13:50:28,280.280 INFO    ] 2026-08-31 13:50:28
[2026-08-31 13:50:28,529.529 INFO    ] 2026-08-31 13:50:28
[2026-08-31 13:50:28,564.564 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:50:28,819.819 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:50:28,824.824 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:50:29,031.031 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:50:29,081.081 INFO    ] time= 31/08/2026 13:50:29
[2026-08-31 13:50:29,108.108 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:50:29,125.125 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:50:29,244.244 INFO    ] No existing commands found in stream
[2026-08-31 13:50:34,270.270 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:50:34,272.272 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-08-31 13:50:37,608.608 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 13:50:37,610.610 INFO    ] Checking for system updates...
[2026-08-31 13:50:37,649.649 INFO    ] 200
[2026-08-31 13:50:37,651.651 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:50:37,710.710 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:50:37,713.713 INFO    ] No update needed
[2026-08-31 13:50:37,715.715 INFO    ] Checking for camera pi updates...
[2026-08-31 13:50:37,753.753 INFO    ] 200
[2026-08-31 13:50:37,755.755 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:50:37,796.796 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:50:37,879.879 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:50:37,882.882 INFO    ] No camera update needed
[2026-08-31 13:50:37,884.884 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:50:37,887.887 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:50:37,893.893 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:50:37,899.899 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:50:39,941.941 INFO    ] ================================================
[2026-08-31 13:50:39,956.956 INFO    ] Launching Daemon at Mon Aug 31 13:50:39 IST 2026
[2026-08-31 13:50:39,968.968 INFO    ] ================================================
[2026-08-31 13:50:40,533.533 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:50:40
[2026-08-31 13:50:41,116.116 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:50:41,399.399 INFO    ] Initializing speech engine...
[2026-08-31 13:50:41,416.416 INFO    ] 2026-08-31 13:50:41
[2026-08-31 13:50:41,686.686 INFO    ] 2026-08-31 13:50:41
[2026-08-31 13:50:41,755.755 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:50:42,047.047 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:50:42,056.056 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:50:42,255.255 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:50:42,262.262 INFO    ] time= 31/08/2026 13:50:42
[2026-08-31 13:50:42,278.278 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:50:42,304.304 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:50:42,426.426 INFO    ] No existing commands found in stream
[2026-08-31 13:50:47,450.450 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:50:47,453.453 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-08-31 13:50:49,220.220 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 13:50:49,223.223 INFO    ] Checking for system updates...
[2026-08-31 13:50:49,260.260 INFO    ] 200
[2026-08-31 13:50:49,262.262 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:50:49,320.320 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:50:49,322.322 INFO    ] No update needed
[2026-08-31 13:50:49,324.324 INFO    ] Checking for camera pi updates...
[2026-08-31 13:50:49,361.361 INFO    ] 200
[2026-08-31 13:50:49,364.364 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:50:49,411.411 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:50:49,494.494 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:50:49,496.496 INFO    ] No camera update needed
[2026-08-31 13:50:49,499.499 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:50:49,501.501 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:50:49,506.506 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:50:49,511.511 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:50:51,552.552 INFO    ] ================================================
[2026-08-31 13:50:51,568.568 INFO    ] Launching Daemon at Mon Aug 31 13:50:51 IST 2026
[2026-08-31 13:50:51,579.579 INFO    ] ================================================
[2026-08-31 13:50:52,205.205 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:50:52
[2026-08-31 13:50:52,873.873 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:50:53,159.159 INFO    ] Initializing speech engine...
[2026-08-31 13:50:53,167.167 INFO    ] 2026-08-31 13:50:53
[2026-08-31 13:50:53,437.437 INFO    ] 2026-08-31 13:50:53
[2026-08-31 13:50:53,500.500 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:50:53,751.751 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:50:53,761.761 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:50:53,988.988 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:50:54,037.037 INFO    ] time= 31/08/2026 13:50:53
[2026-08-31 13:50:54,057.057 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:50:54,074.074 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:50:54,196.196 INFO    ] No existing commands found in stream
[2026-08-31 13:50:59,221.221 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:50:59,224.224 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-08-31 13:51:02,410.410 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 13:51:02,413.413 INFO    ] Checking for system updates...
[2026-08-31 13:51:02,463.463 INFO    ] 200
[2026-08-31 13:51:02,467.467 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:51:02,537.537 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:51:02,541.541 INFO    ] No update needed
[2026-08-31 13:51:02,545.545 INFO    ] Checking for camera pi updates...
[2026-08-31 13:51:02,587.587 INFO    ] 200
[2026-08-31 13:51:02,591.591 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:51:02,649.649 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:51:02,763.763 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:51:02,767.767 INFO    ] No camera update needed
[2026-08-31 13:51:02,770.770 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:51:02,773.773 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:51:02,780.780 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:51:02,788.788 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:51:04,831.831 INFO    ] ================================================
[2026-08-31 13:51:04,847.847 INFO    ] Launching Daemon at Mon Aug 31 13:51:04 IST 2026
[2026-08-31 13:51:04,858.858 INFO    ] ================================================
[2026-08-31 13:51:05,488.488 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:51:05
[2026-08-31 13:51:06,144.144 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:51:06,496.496 INFO    ] Initializing speech engine...
[2026-08-31 13:51:06,502.502 INFO    ] 2026-08-31 13:51:06
[2026-08-31 13:51:06,791.791 INFO    ] 2026-08-31 13:51:06
[2026-08-31 13:51:06,826.826 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:51:07,100.100 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:51:07,125.125 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:51:07,335.335 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:51:07,388.388 INFO    ] time= 31/08/2026 13:51:07
[2026-08-31 13:51:07,395.395 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:51:07,415.415 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:51:07,513.513 INFO    ] No existing commands found in stream
[2026-08-31 13:51:12,523.523 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:51:12,526.526 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-08-31 13:51:15,927.927 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 13:51:15,930.930 INFO    ] Checking for system updates...
[2026-08-31 13:51:15,967.967 INFO    ] 200
[2026-08-31 13:51:15,970.970 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:51:16,029.029 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:51:16,032.032 INFO    ] No update needed
[2026-08-31 13:51:16,034.034 INFO    ] Checking for camera pi updates...
[2026-08-31 13:51:16,072.072 INFO    ] 200
[2026-08-31 13:51:16,075.075 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:51:16,120.120 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:51:16,300.300 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:51:16,303.303 INFO    ] No camera update needed
[2026-08-31 13:51:16,305.305 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:51:16,308.308 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:51:16,313.313 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:51:16,318.318 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:51:18,358.358 INFO    ] ================================================
[2026-08-31 13:51:18,374.374 INFO    ] Launching Daemon at Mon Aug 31 13:51:18 IST 2026
[2026-08-31 13:51:18,384.384 INFO    ] ================================================
[2026-08-31 13:51:18,951.951 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:51:18
[2026-08-31 13:51:19,536.536 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:51:19,796.796 INFO    ] Initializing speech engine...
[2026-08-31 13:51:19,820.820 INFO    ] 2026-08-31 13:51:19
[2026-08-31 13:51:20,091.091 INFO    ] 2026-08-31 13:51:20
[2026-08-31 13:51:20,130.130 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:51:20,358.358 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:51:20,412.412 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:51:20,586.586 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:51:20,637.637 INFO    ] time= 31/08/2026 13:51:20
[2026-08-31 13:51:20,696.696 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:51:20,723.723 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:51:20,855.855 INFO    ] No existing commands found in stream
[2026-08-31 13:51:25,868.868 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:51:25,870.870 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-08-31 13:51:29,702.702 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 13:51:29,705.705 INFO    ] Checking for system updates...
[2026-08-31 13:51:29,744.744 INFO    ] 200
[2026-08-31 13:51:29,746.746 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:51:29,813.813 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:51:29,815.815 INFO    ] No update needed
[2026-08-31 13:51:29,818.818 INFO    ] Checking for camera pi updates...
[2026-08-31 13:51:29,854.854 INFO    ] 200
[2026-08-31 13:51:29,857.857 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:51:29,897.897 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:51:29,969.969 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:51:29,971.971 INFO    ] No camera update needed
[2026-08-31 13:51:29,974.974 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:51:29,976.976 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:51:29,981.981 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:51:29,986.986 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:51:32,030.030 INFO    ] ================================================
[2026-08-31 13:51:32,046.046 INFO    ] Launching Daemon at Mon Aug 31 13:51:32 IST 2026
[2026-08-31 13:51:32,058.058 INFO    ] ================================================
[2026-08-31 13:51:32,747.747 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:51:32
[2026-08-31 13:51:33,339.339 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:51:33,586.586 INFO    ] Initializing speech engine...
[2026-08-31 13:51:33,610.610 INFO    ] 2026-08-31 13:51:33
[2026-08-31 13:51:33,867.867 INFO    ] 2026-08-31 13:51:33
[2026-08-31 13:51:33,902.902 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:51:34,080.080 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:51:34,093.093 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:51:34,290.290 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:51:34,311.311 INFO    ] time= 31/08/2026 13:51:34
[2026-08-31 13:51:34,355.355 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:51:34,407.407 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:51:34,503.503 INFO    ] No existing commands found in stream
[2026-08-31 13:51:39,516.516 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:51:39,519.519 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-08-31 13:51:41,950.950 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 13:51:41,953.953 INFO    ] Checking for system updates...
[2026-08-31 13:51:41,991.991 INFO    ] 200
[2026-08-31 13:51:41,993.993 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:51:42,052.052 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:51:42,054.054 INFO    ] No update needed
[2026-08-31 13:51:42,057.057 INFO    ] Checking for camera pi updates...
[2026-08-31 13:51:42,092.092 INFO    ] 200
[2026-08-31 13:51:42,095.095 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:51:42,143.143 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:51:42,228.228 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:51:42,231.231 INFO    ] No camera update needed
[2026-08-31 13:51:42,233.233 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:51:42,236.236 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:51:42,242.242 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:51:42,247.247 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:51:44,292.292 INFO    ] ================================================
[2026-08-31 13:51:44,309.309 INFO    ] Launching Daemon at Mon Aug 31 13:51:44 IST 2026
[2026-08-31 13:51:44,321.321 INFO    ] ================================================
[2026-08-31 13:51:44,920.920 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:51:44
[2026-08-31 13:51:45,502.502 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:51:45,749.749 INFO    ] Initializing speech engine...
[2026-08-31 13:51:45,755.755 INFO    ] 2026-08-31 13:51:45
[2026-08-31 13:51:46,031.031 INFO    ] 2026-08-31 13:51:46
[2026-08-31 13:51:46,065.065 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:51:46,279.279 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:51:46,295.295 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:51:46,498.498 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:51:46,501.501 INFO    ] time= 31/08/2026 13:51:46
[2026-08-31 13:51:46,503.503 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:51:46,521.521 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:51:46,647.647 INFO    ] No existing commands found in stream
[2026-08-31 13:51:51,658.658 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:51:51,661.661 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-08-31 13:51:53,304.304 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 13:51:53,306.306 INFO    ] Checking for system updates...
[2026-08-31 13:51:53,343.343 INFO    ] 200
[2026-08-31 13:51:53,345.345 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:51:53,398.398 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:51:53,401.401 INFO    ] No update needed
[2026-08-31 13:51:53,404.404 INFO    ] Checking for camera pi updates...
[2026-08-31 13:51:53,442.442 INFO    ] 200
[2026-08-31 13:51:53,445.445 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:51:53,487.487 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:51:53,568.568 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:51:53,571.571 INFO    ] No camera update needed
[2026-08-31 13:51:53,573.573 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:51:53,576.576 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:51:53,582.582 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:51:53,588.588 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:51:55,630.630 INFO    ] ================================================
[2026-08-31 13:51:55,645.645 INFO    ] Launching Daemon at Mon Aug 31 13:51:55 IST 2026
[2026-08-31 13:51:55,656.656 INFO    ] ================================================
[2026-08-31 13:51:56,316.316 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:51:56
[2026-08-31 13:51:56,991.991 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:51:57,304.304 INFO    ] Initializing speech engine...
[2026-08-31 13:51:57,317.317 INFO    ] 2026-08-31 13:51:57
[2026-08-31 13:51:57,603.603 INFO    ] 2026-08-31 13:51:57
[2026-08-31 13:51:57,649.649 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:51:57,907.907 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:51:57,942.942 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:51:58,151.151 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:51:58,170.170 INFO    ] time= 31/08/2026 13:51:58
[2026-08-31 13:51:58,200.200 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:51:58,208.208 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:51:58,355.355 INFO    ] No existing commands found in stream
[2026-08-31 13:52:03,391.391 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:52:03,394.394 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-08-31 13:52:04,615.615 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 13:52:04,618.618 INFO    ] Checking for system updates...
[2026-08-31 13:52:04,654.654 INFO    ] 200
[2026-08-31 13:52:04,657.657 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:52:04,716.716 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:52:04,718.718 INFO    ] No update needed
[2026-08-31 13:52:04,720.720 INFO    ] Checking for camera pi updates...
[2026-08-31 13:52:04,757.757 INFO    ] 200
[2026-08-31 13:52:04,760.760 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:52:04,804.804 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:52:04,858.858 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:52:04,861.861 INFO    ] No camera update needed
[2026-08-31 13:52:04,863.863 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:52:04,865.865 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:52:04,870.870 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:52:04,875.875 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:52:06,916.916 INFO    ] ================================================
[2026-08-31 13:52:06,932.932 INFO    ] Launching Daemon at Mon Aug 31 13:52:06 IST 2026
[2026-08-31 13:52:06,943.943 INFO    ] ================================================
[2026-08-31 13:52:07,584.584 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:52:07
[2026-08-31 13:52:08,246.246 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:52:08,545.545 INFO    ] Initializing speech engine...
[2026-08-31 13:52:08,559.559 INFO    ] 2026-08-31 13:52:08
[2026-08-31 13:52:08,837.837 INFO    ] 2026-08-31 13:52:08
[2026-08-31 13:52:08,892.892 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:52:09,166.166 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:52:09,176.176 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:52:09,366.366 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:52:09,373.373 INFO    ] time= 31/08/2026 13:52:09
[2026-08-31 13:52:09,394.394 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:52:09,420.420 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:52:09,528.528 INFO    ] No existing commands found in stream
[2026-08-31 13:52:14,557.557 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:52:14,561.561 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-08-31 13:52:15,768.768 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 13:52:15,771.771 INFO    ] Checking for system updates...
[2026-08-31 13:52:15,809.809 INFO    ] 200
[2026-08-31 13:52:15,811.811 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:52:15,865.865 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:52:15,868.868 INFO    ] No update needed
[2026-08-31 13:52:15,870.870 INFO    ] Checking for camera pi updates...
[2026-08-31 13:52:15,908.908 INFO    ] 200
[2026-08-31 13:52:15,910.910 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:52:15,951.951 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:52:16,038.038 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:52:16,041.041 INFO    ] No camera update needed
[2026-08-31 13:52:16,043.043 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:52:16,045.045 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:52:16,051.051 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:52:16,056.056 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:52:18,097.097 INFO    ] ================================================
[2026-08-31 13:52:18,113.113 INFO    ] Launching Daemon at Mon Aug 31 13:52:18 IST 2026
[2026-08-31 13:52:18,124.124 INFO    ] ================================================
[2026-08-31 13:52:18,701.701 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:52:18
[2026-08-31 13:52:19,291.291 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:52:19,587.587 INFO    ] Initializing speech engine...
[2026-08-31 13:52:19,597.597 INFO    ] 2026-08-31 13:52:19
[2026-08-31 13:52:19,857.857 INFO    ] 2026-08-31 13:52:19
[2026-08-31 13:52:19,893.893 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:52:20,183.183 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:52:20,193.193 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:52:20,425.425 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:52:20,464.464 INFO    ] time= 31/08/2026 13:52:20
[2026-08-31 13:52:20,489.489 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:52:20,495.495 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:52:20,622.622 INFO    ] No existing commands found in stream
[2026-08-31 13:52:25,650.650 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:52:25,653.653 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-08-31 13:52:30,070.070 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 13:52:30,072.072 INFO    ] Checking for system updates...
[2026-08-31 13:52:30,108.108 INFO    ] 200
[2026-08-31 13:52:30,111.111 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:52:30,164.164 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:52:30,166.166 INFO    ] No update needed
[2026-08-31 13:52:30,169.169 INFO    ] Checking for camera pi updates...
[2026-08-31 13:52:30,202.202 INFO    ] 200
[2026-08-31 13:52:30,204.204 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:52:30,249.249 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:52:30,346.346 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:52:30,349.349 INFO    ] No camera update needed
[2026-08-31 13:52:30,351.351 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:52:30,353.353 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:52:30,359.359 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:52:30,364.364 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:52:32,408.408 INFO    ] ================================================
[2026-08-31 13:52:32,425.425 INFO    ] Launching Daemon at Mon Aug 31 13:52:32 IST 2026
[2026-08-31 13:52:32,453.453 INFO    ] ================================================
[2026-08-31 13:52:33,166.166 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:52:33
[2026-08-31 13:52:33,789.789 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:52:34,070.070 INFO    ] Initializing speech engine...
[2026-08-31 13:52:34,079.079 INFO    ] 2026-08-31 13:52:34
[2026-08-31 13:52:34,336.336 INFO    ] 2026-08-31 13:52:34
[2026-08-31 13:52:34,366.366 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:52:34,617.617 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:52:34,622.622 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:52:34,796.796 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:52:34,861.861 INFO    ] time= 31/08/2026 13:52:34
[2026-08-31 13:52:34,883.883 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:52:34,889.889 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:52:35,029.029 INFO    ] No existing commands found in stream
[2026-08-31 13:52:40,045.045 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:52:40,048.048 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-08-31 13:52:42,633.633 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 13:52:42,635.635 INFO    ] Checking for system updates...
[2026-08-31 13:52:42,680.680 INFO    ] 200
[2026-08-31 13:52:42,683.683 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:52:42,742.742 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:52:42,745.745 INFO    ] No update needed
[2026-08-31 13:52:42,749.749 INFO    ] Checking for camera pi updates...
[2026-08-31 13:52:42,788.788 INFO    ] 200
[2026-08-31 13:52:42,791.791 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:52:42,836.836 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:52:42,924.924 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:52:42,927.927 INFO    ] No camera update needed
[2026-08-31 13:52:42,930.930 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:52:42,932.932 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:52:42,938.938 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:52:42,943.943 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:52:44,987.987 INFO    ] ================================================
[2026-08-31 13:52:45,003.003 INFO    ] Launching Daemon at Mon Aug 31 13:52:44 IST 2026
[2026-08-31 13:52:45,014.014 INFO    ] ================================================
[2026-08-31 13:52:45,588.588 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:52:45
[2026-08-31 13:52:46,183.183 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:52:46,494.494 INFO    ] Initializing speech engine...
[2026-08-31 13:52:46,502.502 INFO    ] 2026-08-31 13:52:46
[2026-08-31 13:52:46,825.825 INFO    ] 2026-08-31 13:52:46
[2026-08-31 13:52:46,909.909 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:52:47,115.115 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:52:47,124.124 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:52:47,319.319 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:52:47,325.325 INFO    ] time= 31/08/2026 13:52:47
[2026-08-31 13:52:47,343.343 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:52:47,365.365 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:52:47,479.479 INFO    ] No existing commands found in stream
[2026-08-31 13:52:52,507.507 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:52:52,510.510 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-08-31 13:52:55,368.368 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 13:52:55,371.371 INFO    ] Checking for system updates...
[2026-08-31 13:52:55,408.408 INFO    ] 200
[2026-08-31 13:52:55,411.411 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:52:55,471.471 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:52:55,473.473 INFO    ] No update needed
[2026-08-31 13:52:55,475.475 INFO    ] Checking for camera pi updates...
[2026-08-31 13:52:55,509.509 INFO    ] 200
[2026-08-31 13:52:55,512.512 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:52:55,555.555 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:52:55,606.606 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:52:55,609.609 INFO    ] No camera update needed
[2026-08-31 13:52:55,611.611 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:52:55,614.614 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:52:55,619.619 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:52:55,624.624 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:52:57,665.665 INFO    ] ================================================
[2026-08-31 13:52:57,681.681 INFO    ] Launching Daemon at Mon Aug 31 13:52:57 IST 2026
[2026-08-31 13:52:57,692.692 INFO    ] ================================================
[2026-08-31 13:52:58,267.267 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:52:58
[2026-08-31 13:52:58,852.852 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:52:59,122.122 INFO    ] Initializing speech engine...
[2026-08-31 13:52:59,131.131 INFO    ] 2026-08-31 13:52:59
[2026-08-31 13:52:59,380.380 INFO    ] 2026-08-31 13:52:59
[2026-08-31 13:52:59,416.416 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:52:59,675.675 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:52:59,680.680 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:52:59,906.906 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:52:59,943.943 INFO    ] time= 31/08/2026 13:52:59
[2026-08-31 13:52:59,958.958 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:52:59,964.964 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:53:00,095.095 INFO    ] No existing commands found in stream
[2026-08-31 13:53:05,109.109 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:53:05,112.112 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-08-31 13:53:05,906.906 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 13:53:05,909.909 INFO    ] Checking for system updates...
[2026-08-31 13:53:05,949.949 INFO    ] 200
[2026-08-31 13:53:05,952.952 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:53:06,005.005 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:53:06,008.008 INFO    ] No update needed
[2026-08-31 13:53:06,010.010 INFO    ] Checking for camera pi updates...
[2026-08-31 13:53:06,048.048 INFO    ] 200
[2026-08-31 13:53:06,051.051 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:53:06,092.092 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:53:06,155.155 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:53:06,158.158 INFO    ] No camera update needed
[2026-08-31 13:53:06,160.160 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:53:06,163.163 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:53:06,168.168 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:53:06,173.173 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:53:08,215.215 INFO    ] ================================================
[2026-08-31 13:53:08,231.231 INFO    ] Launching Daemon at Mon Aug 31 13:53:08 IST 2026
[2026-08-31 13:53:08,242.242 INFO    ] ================================================
[2026-08-31 13:53:08,810.810 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:53:08
[2026-08-31 13:53:09,405.405 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:53:09,682.682 INFO    ] Initializing speech engine...
[2026-08-31 13:53:09,705.705 INFO    ] 2026-08-31 13:53:09
[2026-08-31 13:53:09,975.975 INFO    ] 2026-08-31 13:53:09
[2026-08-31 13:53:10,013.013 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:53:10,319.319 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:53:10,330.330 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:53:10,506.506 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:53:10,556.556 INFO    ] time= 31/08/2026 13:53:10
[2026-08-31 13:53:10,611.611 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:53:10,656.656 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:53:10,788.788 INFO    ] No existing commands found in stream
[2026-08-31 13:53:15,819.819 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:53:15,822.822 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-08-31 13:53:16,776.776 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 13:53:16,779.779 INFO    ] Checking for system updates...
[2026-08-31 13:53:16,815.815 INFO    ] 200
[2026-08-31 13:53:16,818.818 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:53:16,878.878 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:53:16,881.881 INFO    ] No update needed
[2026-08-31 13:53:16,883.883 INFO    ] Checking for camera pi updates...
[2026-08-31 13:53:16,916.916 INFO    ] 200
[2026-08-31 13:53:16,919.919 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:53:16,959.959 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:53:17,047.047 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:53:17,050.050 INFO    ] No camera update needed
[2026-08-31 13:53:17,052.052 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:53:17,054.054 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:53:17,060.060 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:53:17,065.065 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:53:19,106.106 INFO    ] ================================================
[2026-08-31 13:53:19,122.122 INFO    ] Launching Daemon at Mon Aug 31 13:53:19 IST 2026
[2026-08-31 13:53:19,133.133 INFO    ] ================================================
[2026-08-31 13:53:19,704.704 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:53:19
[2026-08-31 13:53:20,293.293 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:53:20,562.562 INFO    ] Initializing speech engine...
[2026-08-31 13:53:20,573.573 INFO    ] 2026-08-31 13:53:20
[2026-08-31 13:53:20,818.818 INFO    ] 2026-08-31 13:53:20
[2026-08-31 13:53:20,853.853 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:53:21,132.132 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:53:21,149.149 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:53:21,360.360 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:53:21,372.372 INFO    ] time= 31/08/2026 13:53:21
[2026-08-31 13:53:21,389.389 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:53:21,412.412 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:53:21,524.524 INFO    ] No existing commands found in stream
[2026-08-31 13:53:26,548.548 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:53:26,550.550 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-08-31 13:53:29,782.782 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 13:53:29,784.784 INFO    ] Checking for system updates...
[2026-08-31 13:53:29,825.825 INFO    ] 200
[2026-08-31 13:53:29,827.827 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:53:29,881.881 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:53:29,883.883 INFO    ] No update needed
[2026-08-31 13:53:29,885.885 INFO    ] Checking for camera pi updates...
[2026-08-31 13:53:29,923.923 INFO    ] 200
[2026-08-31 13:53:29,926.926 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:53:29,966.966 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:53:30,165.165 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:53:30,168.168 INFO    ] No camera update needed
[2026-08-31 13:53:30,170.170 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:53:30,172.172 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:53:30,178.178 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:53:30,183.183 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:53:32,225.225 INFO    ] ================================================
[2026-08-31 13:53:32,242.242 INFO    ] Launching Daemon at Mon Aug 31 13:53:32 IST 2026
[2026-08-31 13:53:32,255.255 INFO    ] ================================================
[2026-08-31 13:53:32,955.955 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:53:32
[2026-08-31 13:53:33,640.640 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:53:33,950.950 INFO    ] Initializing speech engine...
[2026-08-31 13:53:33,961.961 INFO    ] 2026-08-31 13:53:33
[2026-08-31 13:53:34,271.271 INFO    ] 2026-08-31 13:53:34
[2026-08-31 13:53:34,357.357 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:53:34,638.638 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:53:34,693.693 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:53:34,902.902 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:53:34,933.933 INFO    ] time= 31/08/2026 13:53:34
[2026-08-31 13:53:35,003.003 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:53:35,029.029 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:53:35,182.182 INFO    ] No existing commands found in stream
[2026-08-31 13:53:40,210.210 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:53:40,213.213 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-08-31 13:53:45,368.368 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 13:53:45,371.371 INFO    ] Checking for system updates...
[2026-08-31 13:53:45,428.428 INFO    ] 200
[2026-08-31 13:53:45,431.431 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:53:45,490.490 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:53:45,493.493 INFO    ] No update needed
[2026-08-31 13:53:45,495.495 INFO    ] Checking for camera pi updates...
[2026-08-31 13:53:45,529.529 INFO    ] 200
[2026-08-31 13:53:45,532.532 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:53:45,573.573 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:53:45,661.661 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:53:45,664.664 INFO    ] No camera update needed
[2026-08-31 13:53:45,666.666 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:53:45,669.669 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:53:45,674.674 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:53:45,679.679 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:53:47,719.719 INFO    ] ================================================
[2026-08-31 13:53:47,734.734 INFO    ] Launching Daemon at Mon Aug 31 13:53:47 IST 2026
[2026-08-31 13:53:47,744.744 INFO    ] ================================================
[2026-08-31 13:53:48,323.323 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:53:48
[2026-08-31 13:53:48,920.920 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:53:49,183.183 INFO    ] Initializing speech engine...
[2026-08-31 13:53:49,189.189 INFO    ] 2026-08-31 13:53:49
[2026-08-31 13:53:49,488.488 INFO    ] 2026-08-31 13:53:49
[2026-08-31 13:53:49,522.522 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:53:49,727.727 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:53:49,742.742 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:53:49,899.899 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:53:49,915.915 INFO    ] time= 31/08/2026 13:53:49
[2026-08-31 13:53:49,921.921 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:53:49,927.927 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:53:50,004.004 INFO    ] No existing commands found in stream
[2026-08-31 13:53:55,039.039 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:53:55,042.042 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-08-31 13:53:56,752.752 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 13:53:56,755.755 INFO    ] Checking for system updates...
[2026-08-31 13:53:56,794.794 INFO    ] 200
[2026-08-31 13:53:56,796.796 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:53:56,853.853 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:53:56,855.855 INFO    ] No update needed
[2026-08-31 13:53:56,858.858 INFO    ] Checking for camera pi updates...
[2026-08-31 13:53:56,891.891 INFO    ] 200
[2026-08-31 13:53:56,893.893 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:53:56,934.934 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:53:57,016.016 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:53:57,019.019 INFO    ] No camera update needed
[2026-08-31 13:53:57,021.021 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:53:57,023.023 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:53:57,029.029 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:53:57,035.035 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:53:59,075.075 INFO    ] ================================================
[2026-08-31 13:53:59,090.090 INFO    ] Launching Daemon at Mon Aug 31 13:53:59 IST 2026
[2026-08-31 13:53:59,101.101 INFO    ] ================================================
[2026-08-31 13:53:59,762.762 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:53:59
[2026-08-31 13:54:00,443.443 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:54:00,748.748 INFO    ] Initializing speech engine...
[2026-08-31 13:54:00,757.757 INFO    ] 2026-08-31 13:54:00
[2026-08-31 13:54:01,080.080 INFO    ] 2026-08-31 13:54:01
[2026-08-31 13:54:01,161.161 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:54:01,375.375 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:54:01,385.385 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:54:01,564.564 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:54:01,615.615 INFO    ] time= 31/08/2026 13:54:01
[2026-08-31 13:54:01,620.620 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:54:01,624.624 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:54:01,690.690 INFO    ] No existing commands found in stream
[2026-08-31 13:54:06,700.700 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:54:06,703.703 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-08-31 13:54:07,247.247 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 13:54:07,250.250 INFO    ] Checking for system updates...
[2026-08-31 13:54:07,286.286 INFO    ] 200
[2026-08-31 13:54:07,289.289 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:54:07,349.349 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:54:07,351.351 INFO    ] No update needed
[2026-08-31 13:54:07,353.353 INFO    ] Checking for camera pi updates...
[2026-08-31 13:54:07,388.388 INFO    ] 200
[2026-08-31 13:54:07,390.390 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:54:07,435.435 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:54:07,509.509 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:54:07,511.511 INFO    ] No camera update needed
[2026-08-31 13:54:07,514.514 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:54:07,516.516 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:54:07,521.521 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:54:07,526.526 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:54:09,567.567 INFO    ] ================================================
[2026-08-31 13:54:09,583.583 INFO    ] Launching Daemon at Mon Aug 31 13:54:09 IST 2026
[2026-08-31 13:54:09,593.593 INFO    ] ================================================
[2026-08-31 13:54:10,255.255 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:54:10
[2026-08-31 13:54:10,939.939 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:54:11,248.248 INFO    ] Initializing speech engine...
[2026-08-31 13:54:11,259.259 INFO    ] 2026-08-31 13:54:11
[2026-08-31 13:54:11,574.574 INFO    ] 2026-08-31 13:54:11
[2026-08-31 13:54:11,655.655 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:54:11,934.934 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:54:11,976.976 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:54:12,215.215 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:54:12,245.245 INFO    ] time= 31/08/2026 13:54:12
[2026-08-31 13:54:12,300.300 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:54:12,334.334 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:54:12,475.475 INFO    ] No existing commands found in stream
[2026-08-31 13:54:17,489.489 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:54:17,492.492 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-08-31 13:54:20,673.673 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 13:54:20,676.676 INFO    ] Checking for system updates...
[2026-08-31 13:54:20,718.718 INFO    ] 200
[2026-08-31 13:54:20,721.721 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:54:20,783.783 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:54:20,786.786 INFO    ] No update needed
[2026-08-31 13:54:20,789.789 INFO    ] Checking for camera pi updates...
[2026-08-31 13:54:20,824.824 INFO    ] 200
[2026-08-31 13:54:20,827.827 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:54:20,869.869 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:54:20,938.938 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:54:20,941.941 INFO    ] No camera update needed
[2026-08-31 13:54:20,944.944 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:54:20,946.946 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:54:20,953.953 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:54:20,959.959 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:54:23,000.000 INFO    ] ================================================
[2026-08-31 13:54:23,016.016 INFO    ] Launching Daemon at Mon Aug 31 13:54:23 IST 2026
[2026-08-31 13:54:23,027.027 INFO    ] ================================================
[2026-08-31 13:54:23,594.594 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:54:23
[2026-08-31 13:54:24,177.177 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:54:24,433.433 INFO    ] Initializing speech engine...
[2026-08-31 13:54:24,452.452 INFO    ] 2026-08-31 13:54:24
[2026-08-31 13:54:24,700.700 INFO    ] 2026-08-31 13:54:24
[2026-08-31 13:54:24,735.735 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:54:24,986.986 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:54:24,995.995 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:54:25,217.217 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:54:25,254.254 INFO    ] time= 31/08/2026 13:54:25
[2026-08-31 13:54:25,260.260 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:54:25,281.281 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:54:25,409.409 INFO    ] No existing commands found in stream
[2026-08-31 13:54:30,423.423 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:54:30,426.426 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-08-31 13:54:34,334.334 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 13:54:34,337.337 INFO    ] Checking for system updates...
[2026-08-31 13:54:34,372.372 INFO    ] 200
[2026-08-31 13:54:34,375.375 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:54:34,427.427 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:54:34,429.429 INFO    ] No update needed
[2026-08-31 13:54:34,432.432 INFO    ] Checking for camera pi updates...
[2026-08-31 13:54:34,465.465 INFO    ] 200
[2026-08-31 13:54:34,467.467 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:54:34,508.508 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:54:34,589.589 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:54:34,592.592 INFO    ] No camera update needed
[2026-08-31 13:54:34,594.594 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:54:34,596.596 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:54:34,602.602 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:54:34,607.607 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:54:36,653.653 INFO    ] ================================================
[2026-08-31 13:54:36,668.668 INFO    ] Launching Daemon at Mon Aug 31 13:54:36 IST 2026
[2026-08-31 13:54:36,679.679 INFO    ] ================================================
[2026-08-31 13:54:37,246.246 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:54:37
[2026-08-31 13:54:37,828.828 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:54:38,099.099 INFO    ] Initializing speech engine...
[2026-08-31 13:54:38,109.109 INFO    ] 2026-08-31 13:54:38
[2026-08-31 13:54:38,359.359 INFO    ] 2026-08-31 13:54:38
[2026-08-31 13:54:38,394.394 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:54:38,650.650 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:54:38,660.660 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:54:38,861.861 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:54:38,905.905 INFO    ] time= 31/08/2026 13:54:38
[2026-08-31 13:54:38,929.929 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:54:38,945.945 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:54:39,082.082 INFO    ] No existing commands found in stream
[2026-08-31 13:54:44,097.097 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:54:44,100.100 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-08-31 13:54:45,233.233 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 13:54:45,236.236 INFO    ] Checking for system updates...
[2026-08-31 13:54:45,280.280 INFO    ] 200
[2026-08-31 13:54:45,283.283 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:54:45,342.342 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:54:45,345.345 INFO    ] No update needed
[2026-08-31 13:54:45,348.348 INFO    ] Checking for camera pi updates...
[2026-08-31 13:54:45,386.386 INFO    ] 200
[2026-08-31 13:54:45,389.389 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:54:45,430.430 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:54:45,559.559 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:54:45,562.562 INFO    ] No camera update needed
[2026-08-31 13:54:45,564.564 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:54:45,566.566 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:54:45,572.572 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:54:45,577.577 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:54:47,616.616 INFO    ] ================================================
[2026-08-31 13:54:47,631.631 INFO    ] Launching Daemon at Mon Aug 31 13:54:47 IST 2026
[2026-08-31 13:54:47,642.642 INFO    ] ================================================
[2026-08-31 13:54:48,223.223 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:54:48
[2026-08-31 13:54:48,822.822 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:54:49,098.098 INFO    ] Initializing speech engine...
[2026-08-31 13:54:49,106.106 INFO    ] 2026-08-31 13:54:49
[2026-08-31 13:54:49,367.367 INFO    ] 2026-08-31 13:54:49
[2026-08-31 13:54:49,421.421 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:54:49,708.708 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:54:49,712.712 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:54:49,908.908 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:54:49,926.926 INFO    ] time= 31/08/2026 13:54:49
[2026-08-31 13:54:49,956.956 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:54:49,963.963 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:54:50,085.085 INFO    ] No existing commands found in stream
[2026-08-31 13:54:55,115.115 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:54:55,119.119 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-08-31 13:54:57,974.974 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 13:54:57,976.976 INFO    ] Checking for system updates...
[2026-08-31 13:54:58,017.017 INFO    ] 200
[2026-08-31 13:54:58,020.020 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:54:58,072.072 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:54:58,075.075 INFO    ] No update needed
[2026-08-31 13:54:58,077.077 INFO    ] Checking for camera pi updates...
[2026-08-31 13:54:58,111.111 INFO    ] 200
[2026-08-31 13:54:58,113.113 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:54:58,154.154 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:54:58,253.253 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:54:58,256.256 INFO    ] No camera update needed
[2026-08-31 13:54:58,258.258 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:54:58,261.261 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:54:58,266.266 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:54:58,272.272 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:55:00,314.314 INFO    ] ================================================
[2026-08-31 13:55:00,329.329 INFO    ] Launching Daemon at Mon Aug 31 13:55:00 IST 2026
[2026-08-31 13:55:00,339.339 INFO    ] ================================================
[2026-08-31 13:55:00,915.915 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:55:00
[2026-08-31 13:55:01,552.552 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:55:02,201.201 INFO    ] Initializing speech engine...
[2026-08-31 13:55:02,206.206 INFO    ] 2026-08-31 13:55:02
[2026-08-31 13:55:02,570.570 INFO    ] 2026-08-31 13:55:02
[2026-08-31 13:55:02,599.599 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:55:02,814.814 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:55:02,824.824 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:55:03,026.026 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:55:03,046.046 INFO    ] time= 31/08/2026 13:55:03
[2026-08-31 13:55:03,071.071 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:55:03,090.090 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:55:03,201.201 INFO    ] No existing commands found in stream
[2026-08-31 13:55:08,236.236 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:55:08,240.240 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-08-31 13:55:11,276.276 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 13:55:11,279.279 INFO    ] Checking for system updates...
[2026-08-31 13:55:11,316.316 INFO    ] 200
[2026-08-31 13:55:11,319.319 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:55:11,372.372 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:55:11,375.375 INFO    ] No update needed
[2026-08-31 13:55:11,377.377 INFO    ] Checking for camera pi updates...
[2026-08-31 13:55:11,414.414 INFO    ] 200
[2026-08-31 13:55:11,417.417 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:55:11,458.458 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:55:11,553.553 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:55:11,555.555 INFO    ] No camera update needed
[2026-08-31 13:55:11,558.558 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:55:11,560.560 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:55:11,565.565 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:55:11,571.571 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:55:13,609.609 INFO    ] ================================================
[2026-08-31 13:55:13,624.624 INFO    ] Launching Daemon at Mon Aug 31 13:55:13 IST 2026
[2026-08-31 13:55:13,635.635 INFO    ] ================================================
[2026-08-31 13:55:14,276.276 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:55:14
[2026-08-31 13:55:14,935.935 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:55:15,238.238 INFO    ] Initializing speech engine...
[2026-08-31 13:55:15,250.250 INFO    ] 2026-08-31 13:55:15
[2026-08-31 13:55:15,535.535 INFO    ] 2026-08-31 13:55:15
[2026-08-31 13:55:15,574.574 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:55:15,827.827 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:55:15,832.832 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:55:15,983.983 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:55:16,025.025 INFO    ] time= 31/08/2026 13:55:15
[2026-08-31 13:55:16,085.085 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:55:16,132.132 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:55:16,267.267 INFO    ] No existing commands found in stream
[2026-08-31 13:55:21,302.302 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:55:21,305.305 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-08-31 13:55:23,373.373 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 13:55:23,375.375 INFO    ] Checking for system updates...
[2026-08-31 13:55:23,411.411 INFO    ] 200
[2026-08-31 13:55:23,414.414 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:55:23,472.472 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:55:23,475.475 INFO    ] No update needed
[2026-08-31 13:55:23,477.477 INFO    ] Checking for camera pi updates...
[2026-08-31 13:55:23,514.514 INFO    ] 200
[2026-08-31 13:55:23,516.516 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:55:23,556.556 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:55:23,637.637 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:55:23,640.640 INFO    ] No camera update needed
[2026-08-31 13:55:23,642.642 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:55:23,644.644 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:55:23,650.650 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:55:23,655.655 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:55:25,696.696 INFO    ] ================================================
[2026-08-31 13:55:25,710.710 INFO    ] Launching Daemon at Mon Aug 31 13:55:25 IST 2026
[2026-08-31 13:55:25,721.721 INFO    ] ================================================
[2026-08-31 13:55:26,365.365 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:55:26
[2026-08-31 13:55:27,026.026 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:55:27,325.325 INFO    ] Initializing speech engine...
[2026-08-31 13:55:27,335.335 INFO    ] 2026-08-31 13:55:27
[2026-08-31 13:55:27,623.623 INFO    ] 2026-08-31 13:55:27
[2026-08-31 13:55:27,670.670 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:55:27,922.922 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:55:27,928.928 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:55:28,145.145 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:55:28,171.171 INFO    ] time= 31/08/2026 13:55:28
[2026-08-31 13:55:28,188.188 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:55:28,208.208 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:55:28,369.369 INFO    ] No existing commands found in stream
[2026-08-31 13:55:33,400.400 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:55:33,403.403 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-08-31 13:55:34,428.428 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 13:55:34,431.431 INFO    ] Checking for system updates...
[2026-08-31 13:55:34,469.469 INFO    ] 200
[2026-08-31 13:55:34,471.471 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:55:34,527.527 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:55:34,530.530 INFO    ] No update needed
[2026-08-31 13:55:34,532.532 INFO    ] Checking for camera pi updates...
[2026-08-31 13:55:34,565.565 INFO    ] 200
[2026-08-31 13:55:34,567.567 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:55:34,608.608 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:55:34,814.814 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:55:34,817.817 INFO    ] No camera update needed
[2026-08-31 13:55:34,819.819 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:55:34,821.821 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:55:34,827.827 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:55:34,832.832 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:55:36,872.872 INFO    ] ================================================
[2026-08-31 13:55:36,887.887 INFO    ] Launching Daemon at Mon Aug 31 13:55:36 IST 2026
[2026-08-31 13:55:36,898.898 INFO    ] ================================================
[2026-08-31 13:55:37,467.467 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:55:37
[2026-08-31 13:55:38,051.051 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:55:38,322.322 INFO    ] Initializing speech engine...
[2026-08-31 13:55:38,331.331 INFO    ] 2026-08-31 13:55:38
[2026-08-31 13:55:38,591.591 INFO    ] 2026-08-31 13:55:38
[2026-08-31 13:55:38,649.649 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:55:38,881.881 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:55:38,885.885 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:55:39,020.020 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:55:39,060.060 INFO    ] time= 31/08/2026 13:55:39
[2026-08-31 13:55:39,114.114 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:55:39,154.154 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:55:39,272.272 INFO    ] No existing commands found in stream
[2026-08-31 13:55:44,295.295 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:55:44,298.298 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-08-31 13:55:46,085.085 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 13:55:46,088.088 INFO    ] Checking for system updates...
[2026-08-31 13:55:46,123.123 INFO    ] 200
[2026-08-31 13:55:46,126.126 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:55:46,177.177 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:55:46,180.180 INFO    ] No update needed
[2026-08-31 13:55:46,182.182 INFO    ] Checking for camera pi updates...
[2026-08-31 13:55:46,219.219 INFO    ] 200
[2026-08-31 13:55:46,222.222 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:55:46,266.266 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:55:46,347.347 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:55:46,350.350 INFO    ] No camera update needed
[2026-08-31 13:55:46,352.352 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:55:46,354.354 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:55:46,359.359 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:55:46,364.364 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:55:48,405.405 INFO    ] ================================================
[2026-08-31 13:55:48,420.420 INFO    ] Launching Daemon at Mon Aug 31 13:55:48 IST 2026
[2026-08-31 13:55:48,431.431 INFO    ] ================================================
[2026-08-31 13:55:49,001.001 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:55:48
[2026-08-31 13:55:49,590.590 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:55:49,870.870 INFO    ] Initializing speech engine...
[2026-08-31 13:55:49,880.880 INFO    ] 2026-08-31 13:55:49
[2026-08-31 13:55:50,145.145 INFO    ] 2026-08-31 13:55:50
[2026-08-31 13:55:50,180.180 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:55:50,374.374 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:55:50,387.387 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:55:50,551.551 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:55:50,560.560 INFO    ] time= 31/08/2026 13:55:50
[2026-08-31 13:55:50,607.607 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:55:50,637.637 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:55:50,771.771 INFO    ] No existing commands found in stream
[2026-08-31 13:55:55,786.786 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:55:55,789.789 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-08-31 13:55:58,232.232 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 13:55:58,235.235 INFO    ] Checking for system updates...
[2026-08-31 13:55:58,273.273 INFO    ] 200
[2026-08-31 13:55:58,275.275 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:55:58,328.328 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:55:58,331.331 INFO    ] No update needed
[2026-08-31 13:55:58,333.333 INFO    ] Checking for camera pi updates...
[2026-08-31 13:55:58,369.369 INFO    ] 200
[2026-08-31 13:55:58,372.372 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:55:58,415.415 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:55:58,499.499 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:55:58,501.501 INFO    ] No camera update needed
[2026-08-31 13:55:58,503.503 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:55:58,506.506 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:55:58,511.511 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:55:58,517.517 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:56:00,558.558 INFO    ] ================================================
[2026-08-31 13:56:00,573.573 INFO    ] Launching Daemon at Mon Aug 31 13:56:00 IST 2026
[2026-08-31 13:56:00,583.583 INFO    ] ================================================
[2026-08-31 13:56:01,160.160 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:56:01
[2026-08-31 13:56:01,761.761 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:56:02,380.380 INFO    ] Initializing speech engine...
[2026-08-31 13:56:02,386.386 INFO    ] 2026-08-31 13:56:02
[2026-08-31 13:56:02,780.780 INFO    ] 2026-08-31 13:56:02
[2026-08-31 13:56:02,834.834 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:56:03,116.116 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:56:03,150.150 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:56:03,377.377 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:56:03,428.428 INFO    ] time= 31/08/2026 13:56:03
[2026-08-31 13:56:03,487.487 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:56:03,539.539 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:56:03,650.650 INFO    ] No existing commands found in stream
[2026-08-31 13:56:08,661.661 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:56:08,664.664 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-08-31 13:56:11,436.436 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 13:56:11,439.439 INFO    ] Checking for system updates...
[2026-08-31 13:56:11,475.475 INFO    ] 200
[2026-08-31 13:56:11,477.477 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:56:11,529.529 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:56:11,531.531 INFO    ] No update needed
[2026-08-31 13:56:11,533.533 INFO    ] Checking for camera pi updates...
[2026-08-31 13:56:11,566.566 INFO    ] 200
[2026-08-31 13:56:11,569.569 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:56:11,610.610 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:56:11,698.698 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:56:11,701.701 INFO    ] No camera update needed
[2026-08-31 13:56:11,703.703 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:56:11,705.705 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:56:11,711.711 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:56:11,715.715 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:56:13,757.757 INFO    ] ================================================
[2026-08-31 13:56:13,772.772 INFO    ] Launching Daemon at Mon Aug 31 13:56:13 IST 2026
[2026-08-31 13:56:13,782.782 INFO    ] ================================================
[2026-08-31 13:56:14,345.345 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:56:14
[2026-08-31 13:56:14,925.925 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:56:15,190.190 INFO    ] Initializing speech engine...
[2026-08-31 13:56:15,199.199 INFO    ] 2026-08-31 13:56:15
[2026-08-31 13:56:15,445.445 INFO    ] 2026-08-31 13:56:15
[2026-08-31 13:56:15,481.481 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:56:15,730.730 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:56:15,740.740 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:56:15,951.951 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:56:15,996.996 INFO    ] time= 31/08/2026 13:56:15
[2026-08-31 13:56:16,002.002 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:56:16,020.020 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:56:16,140.140 INFO    ] No existing commands found in stream
[2026-08-31 13:56:21,160.160 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:56:21,163.163 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-08-31 13:56:24,330.330 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 13:56:24,333.333 INFO    ] Checking for system updates...
[2026-08-31 13:56:24,371.371 INFO    ] 200
[2026-08-31 13:56:24,373.373 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:56:24,431.431 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:56:24,433.433 INFO    ] No update needed
[2026-08-31 13:56:24,435.435 INFO    ] Checking for camera pi updates...
[2026-08-31 13:56:24,472.472 INFO    ] 200
[2026-08-31 13:56:24,474.474 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:56:24,515.515 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:56:24,592.592 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:56:24,594.594 INFO    ] No camera update needed
[2026-08-31 13:56:24,597.597 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:56:24,599.599 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:56:24,604.604 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:56:24,609.609 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:56:26,650.650 INFO    ] ================================================
[2026-08-31 13:56:26,664.664 INFO    ] Launching Daemon at Mon Aug 31 13:56:26 IST 2026
[2026-08-31 13:56:26,675.675 INFO    ] ================================================
[2026-08-31 13:56:27,240.240 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:56:27
[2026-08-31 13:56:27,824.824 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:56:28,093.093 INFO    ] Initializing speech engine...
[2026-08-31 13:56:28,102.102 INFO    ] 2026-08-31 13:56:28
[2026-08-31 13:56:28,353.353 INFO    ] 2026-08-31 13:56:28
[2026-08-31 13:56:28,387.387 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:56:28,587.587 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:56:28,615.615 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:56:28,792.792 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:56:28,834.834 INFO    ] time= 31/08/2026 13:56:28
[2026-08-31 13:56:28,883.883 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:56:28,929.929 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:56:29,056.056 INFO    ] No existing commands found in stream
[2026-08-31 13:56:34,082.082 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:56:34,084.084 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-08-31 13:56:37,408.408 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 13:56:37,411.411 INFO    ] Checking for system updates...
[2026-08-31 13:56:37,451.451 INFO    ] 200
[2026-08-31 13:56:37,454.454 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:56:37,506.506 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:56:37,509.509 INFO    ] No update needed
[2026-08-31 13:56:37,512.512 INFO    ] Checking for camera pi updates...
[2026-08-31 13:56:37,546.546 INFO    ] 200
[2026-08-31 13:56:37,549.549 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:56:37,590.590 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:56:37,675.675 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:56:37,678.678 INFO    ] No camera update needed
[2026-08-31 13:56:37,681.681 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:56:37,683.683 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:56:37,690.690 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:56:37,695.695 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:56:39,735.735 INFO    ] ================================================
[2026-08-31 13:56:39,750.750 INFO    ] Launching Daemon at Mon Aug 31 13:56:39 IST 2026
[2026-08-31 13:56:39,760.760 INFO    ] ================================================
[2026-08-31 13:56:40,338.338 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:56:40
[2026-08-31 13:56:40,934.934 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:56:41,203.203 INFO    ] Initializing speech engine...
[2026-08-31 13:56:41,223.223 INFO    ] 2026-08-31 13:56:41
[2026-08-31 13:56:41,483.483 INFO    ] 2026-08-31 13:56:41
[2026-08-31 13:56:41,539.539 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:56:41,828.828 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:56:41,870.870 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:56:42,054.054 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:56:42,085.085 INFO    ] time= 31/08/2026 13:56:42
[2026-08-31 13:56:42,092.092 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:56:42,099.099 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:56:42,212.212 INFO    ] No existing commands found in stream
[2026-08-31 13:56:47,227.227 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:56:47,230.230 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-08-31 13:56:51,568.568 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 13:56:51,571.571 INFO    ] Checking for system updates...
[2026-08-31 13:56:51,606.606 INFO    ] 200
[2026-08-31 13:56:51,608.608 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:56:51,660.660 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:56:51,662.662 INFO    ] No update needed
[2026-08-31 13:56:51,665.665 INFO    ] Checking for camera pi updates...
[2026-08-31 13:56:51,699.699 INFO    ] 200
[2026-08-31 13:56:51,701.701 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:56:51,741.741 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:56:51,820.820 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:56:51,822.822 INFO    ] No camera update needed
[2026-08-31 13:56:51,825.825 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:56:51,827.827 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:56:51,832.832 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:56:51,837.837 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:56:53,879.879 INFO    ] ================================================
[2026-08-31 13:56:53,894.894 INFO    ] Launching Daemon at Mon Aug 31 13:56:53 IST 2026
[2026-08-31 13:56:53,904.904 INFO    ] ================================================
[2026-08-31 13:56:54,471.471 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:56:54
[2026-08-31 13:56:55,058.058 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:56:55,315.315 INFO    ] Initializing speech engine...
[2026-08-31 13:56:55,340.340 INFO    ] 2026-08-31 13:56:55
[2026-08-31 13:56:55,609.609 INFO    ] 2026-08-31 13:56:55
[2026-08-31 13:56:55,646.646 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:56:55,928.928 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:56:55,939.939 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:56:56,157.157 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:56:56,196.196 INFO    ] time= 31/08/2026 13:56:56
[2026-08-31 13:56:56,232.232 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:56:56,255.255 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:56:56,367.367 INFO    ] No existing commands found in stream
[2026-08-31 13:57:01,392.392 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:57:01,395.395 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-08-31 13:57:04,696.696 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 13:57:04,699.699 INFO    ] Checking for system updates...
[2026-08-31 13:57:04,739.739 INFO    ] 200
[2026-08-31 13:57:04,742.742 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:57:04,800.800 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:57:04,803.803 INFO    ] No update needed
[2026-08-31 13:57:04,805.805 INFO    ] Checking for camera pi updates...
[2026-08-31 13:57:04,842.842 INFO    ] 200
[2026-08-31 13:57:04,845.845 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:57:04,890.890 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:57:04,968.968 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:57:04,970.970 INFO    ] No camera update needed
[2026-08-31 13:57:04,972.972 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:57:04,975.975 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:57:04,980.980 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:57:04,985.985 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:57:07,025.025 INFO    ] ================================================
[2026-08-31 13:57:07,040.040 INFO    ] Launching Daemon at Mon Aug 31 13:57:07 IST 2026
[2026-08-31 13:57:07,050.050 INFO    ] ================================================
[2026-08-31 13:57:07,616.616 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:57:07
[2026-08-31 13:57:08,201.201 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:57:08,453.453 INFO    ] Initializing speech engine...
[2026-08-31 13:57:08,461.461 INFO    ] 2026-08-31 13:57:08
[2026-08-31 13:57:08,748.748 INFO    ] 2026-08-31 13:57:08
[2026-08-31 13:57:08,784.784 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:57:09,072.072 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:57:09,077.077 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:57:09,224.224 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:57:09,268.268 INFO    ] time= 31/08/2026 13:57:09
[2026-08-31 13:57:09,322.322 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:57:09,372.372 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:57:09,535.535 INFO    ] No existing commands found in stream
[2026-08-31 13:57:14,551.551 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:57:14,553.553 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-08-31 13:57:18,007.007 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 13:57:18,009.009 INFO    ] Checking for system updates...
[2026-08-31 13:57:18,045.045 INFO    ] 200
[2026-08-31 13:57:18,047.047 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:57:18,100.100 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:57:18,103.103 INFO    ] No update needed
[2026-08-31 13:57:18,105.105 INFO    ] Checking for camera pi updates...
[2026-08-31 13:57:18,139.139 INFO    ] 200
[2026-08-31 13:57:18,142.142 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:57:18,182.182 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:57:18,233.233 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:57:18,236.236 INFO    ] No camera update needed
[2026-08-31 13:57:18,239.239 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:57:18,241.241 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:57:18,247.247 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:57:18,253.253 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:57:20,292.292 INFO    ] ================================================
[2026-08-31 13:57:20,310.310 INFO    ] Launching Daemon at Mon Aug 31 13:57:20 IST 2026
[2026-08-31 13:57:20,321.321 INFO    ] ================================================
[2026-08-31 13:57:20,888.888 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:57:20
[2026-08-31 13:57:21,484.484 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:57:21,784.784 INFO    ] Initializing speech engine...
[2026-08-31 13:57:21,798.798 INFO    ] 2026-08-31 13:57:21
[2026-08-31 13:57:22,067.067 INFO    ] 2026-08-31 13:57:22
[2026-08-31 13:57:22,118.118 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:57:22,347.347 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:57:22,356.356 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:57:22,578.578 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:57:22,623.623 INFO    ] time= 31/08/2026 13:57:22
[2026-08-31 13:57:22,642.642 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:57:22,671.671 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:57:22,779.779 INFO    ] No existing commands found in stream
[2026-08-31 13:57:27,802.802 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:57:27,805.805 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-08-31 13:57:31,575.575 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 13:57:31,577.577 INFO    ] Checking for system updates...
[2026-08-31 13:57:31,613.613 INFO    ] 200
[2026-08-31 13:57:31,615.615 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:57:31,667.667 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:57:31,669.669 INFO    ] No update needed
[2026-08-31 13:57:31,672.672 INFO    ] Checking for camera pi updates...
[2026-08-31 13:57:31,705.705 INFO    ] 200
[2026-08-31 13:57:31,708.708 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:57:31,747.747 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:57:31,808.808 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:57:31,810.810 INFO    ] No camera update needed
[2026-08-31 13:57:31,813.813 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:57:31,815.815 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:57:31,820.820 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:57:31,825.825 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:57:33,868.868 INFO    ] ================================================
[2026-08-31 13:57:33,883.883 INFO    ] Launching Daemon at Mon Aug 31 13:57:33 IST 2026
[2026-08-31 13:57:33,894.894 INFO    ] ================================================
[2026-08-31 13:57:34,465.465 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:57:34
[2026-08-31 13:57:35,053.053 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:57:35,348.348 INFO    ] Initializing speech engine...
[2026-08-31 13:57:35,361.361 INFO    ] 2026-08-31 13:57:35
[2026-08-31 13:57:35,672.672 INFO    ] 2026-08-31 13:57:35
[2026-08-31 13:57:35,753.753 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:57:35,968.968 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:57:35,976.976 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:57:36,168.168 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:57:36,190.190 INFO    ] time= 31/08/2026 13:57:36
[2026-08-31 13:57:36,219.219 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:57:36,229.229 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:57:36,328.328 INFO    ] No existing commands found in stream
[2026-08-31 13:57:41,358.358 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:57:41,361.361 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-08-31 13:57:44,488.488 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 13:57:44,491.491 INFO    ] Checking for system updates...
[2026-08-31 13:57:44,527.527 INFO    ] 200
[2026-08-31 13:57:44,530.530 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:57:44,584.584 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:57:44,586.586 INFO    ] No update needed
[2026-08-31 13:57:44,589.589 INFO    ] Checking for camera pi updates...
[2026-08-31 13:57:44,626.626 INFO    ] 200
[2026-08-31 13:57:44,630.630 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:57:44,674.674 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:57:44,754.754 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:57:44,756.756 INFO    ] No camera update needed
[2026-08-31 13:57:44,758.758 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:57:44,761.761 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:57:44,767.767 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:57:44,772.772 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:57:46,812.812 INFO    ] ================================================
[2026-08-31 13:57:46,826.826 INFO    ] Launching Daemon at Mon Aug 31 13:57:46 IST 2026
[2026-08-31 13:57:46,838.838 INFO    ] ================================================
[2026-08-31 13:57:47,471.471 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:57:47
[2026-08-31 13:57:48,125.125 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:57:48,418.418 INFO    ] Initializing speech engine...
[2026-08-31 13:57:48,429.429 INFO    ] 2026-08-31 13:57:48
[2026-08-31 13:57:48,718.718 INFO    ] 2026-08-31 13:57:48
[2026-08-31 13:57:48,765.765 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:57:49,014.014 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:57:49,021.021 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:57:49,228.228 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:57:49,265.265 INFO    ] time= 31/08/2026 13:57:49
[2026-08-31 13:57:49,271.271 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:57:49,290.290 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:57:49,407.407 INFO    ] No existing commands found in stream
[2026-08-31 13:57:54,432.432 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:57:54,435.435 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-08-31 13:57:57,849.849 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 13:57:57,852.852 INFO    ] Checking for system updates...
[2026-08-31 13:57:57,889.889 INFO    ] 200
[2026-08-31 13:57:57,891.891 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:57:57,944.944 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:57:57,947.947 INFO    ] No update needed
[2026-08-31 13:57:57,950.950 INFO    ] Checking for camera pi updates...
[2026-08-31 13:57:57,983.983 INFO    ] 200
[2026-08-31 13:57:57,986.986 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:57:58,035.035 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:57:58,215.215 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:57:58,218.218 INFO    ] No camera update needed
[2026-08-31 13:57:58,221.221 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:57:58,223.223 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:57:58,230.230 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:57:58,235.235 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:58:00,276.276 INFO    ] ================================================
[2026-08-31 13:58:00,292.292 INFO    ] Launching Daemon at Mon Aug 31 13:58:00 IST 2026
[2026-08-31 13:58:00,303.303 INFO    ] ================================================
[2026-08-31 13:58:00,883.883 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:58:00
[2026-08-31 13:58:01,476.476 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:58:01,973.973 INFO    ] Initializing speech engine...
[2026-08-31 13:58:01,977.977 INFO    ] 2026-08-31 13:58:01
[2026-08-31 13:58:02,372.372 INFO    ] 2026-08-31 13:58:02
[2026-08-31 13:58:02,411.411 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:58:02,693.693 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:58:02,731.731 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:58:02,937.937 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:58:03,012.012 INFO    ] time= 31/08/2026 13:58:02
[2026-08-31 13:58:03,074.074 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:58:03,120.120 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:58:03,266.266 INFO    ] No existing commands found in stream
[2026-08-31 13:58:08,292.292 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:58:08,294.294 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-08-31 13:58:11,874.874 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 13:58:11,877.877 INFO    ] Checking for system updates...
[2026-08-31 13:58:11,912.912 INFO    ] 200
[2026-08-31 13:58:11,915.915 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:58:11,970.970 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:58:11,973.973 INFO    ] No update needed
[2026-08-31 13:58:11,975.975 INFO    ] Checking for camera pi updates...
[2026-08-31 13:58:12,011.011 INFO    ] 200
[2026-08-31 13:58:12,014.014 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:58:12,056.056 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:58:12,137.137 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:58:12,140.140 INFO    ] No camera update needed
[2026-08-31 13:58:12,142.142 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:58:12,144.144 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:58:12,150.150 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:58:12,155.155 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:58:14,195.195 INFO    ] ================================================
[2026-08-31 13:58:14,210.210 INFO    ] Launching Daemon at Mon Aug 31 13:58:14 IST 2026
[2026-08-31 13:58:14,221.221 INFO    ] ================================================
[2026-08-31 13:58:14,860.860 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:58:14
[2026-08-31 13:58:15,517.517 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:58:15,818.818 INFO    ] Initializing speech engine...
[2026-08-31 13:58:15,826.826 INFO    ] 2026-08-31 13:58:15
[2026-08-31 13:58:16,115.115 INFO    ] 2026-08-31 13:58:16
[2026-08-31 13:58:16,160.160 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:58:16,414.414 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:58:16,419.419 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:58:16,657.657 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:58:16,664.664 INFO    ] time= 31/08/2026 13:58:16
[2026-08-31 13:58:16,685.685 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:58:16,712.712 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:58:16,823.823 INFO    ] No existing commands found in stream
[2026-08-31 13:58:21,848.848 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:58:21,852.852 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-08-31 13:58:24,258.258 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 13:58:24,261.261 INFO    ] Checking for system updates...
[2026-08-31 13:58:24,298.298 INFO    ] 200
[2026-08-31 13:58:24,300.300 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:58:24,354.354 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:58:24,357.357 INFO    ] No update needed
[2026-08-31 13:58:24,360.360 INFO    ] Checking for camera pi updates...
[2026-08-31 13:58:24,398.398 INFO    ] 200
[2026-08-31 13:58:24,401.401 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:58:24,442.442 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:58:24,542.542 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:58:24,544.544 INFO    ] No camera update needed
[2026-08-31 13:58:24,547.547 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:58:24,550.550 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:58:24,556.556 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:58:24,562.562 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:58:26,603.603 INFO    ] ================================================
[2026-08-31 13:58:26,621.621 INFO    ] Launching Daemon at Mon Aug 31 13:58:26 IST 2026
[2026-08-31 13:58:26,632.632 INFO    ] ================================================
[2026-08-31 13:58:27,274.274 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:58:27
[2026-08-31 13:58:27,934.934 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:58:28,235.235 INFO    ] Initializing speech engine...
[2026-08-31 13:58:28,244.244 INFO    ] 2026-08-31 13:58:28
[2026-08-31 13:58:28,535.535 INFO    ] 2026-08-31 13:58:28
[2026-08-31 13:58:28,580.580 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:58:28,871.871 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:58:28,880.880 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:58:29,077.077 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:58:29,093.093 INFO    ] time= 31/08/2026 13:58:29
[2026-08-31 13:58:29,103.103 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:58:29,132.132 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:58:29,279.279 INFO    ] No existing commands found in stream
[2026-08-31 13:58:34,309.309 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:58:34,313.313 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-08-31 13:58:37,532.532 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 13:58:37,535.535 INFO    ] Checking for system updates...
[2026-08-31 13:58:37,571.571 INFO    ] 200
[2026-08-31 13:58:37,574.574 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:58:37,627.627 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:58:37,630.630 INFO    ] No update needed
[2026-08-31 13:58:37,633.633 INFO    ] Checking for camera pi updates...
[2026-08-31 13:58:37,671.671 INFO    ] 200
[2026-08-31 13:58:37,674.674 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:58:37,717.717 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:58:37,794.794 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:58:37,797.797 INFO    ] No camera update needed
[2026-08-31 13:58:37,800.800 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:58:37,802.802 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:58:37,809.809 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:58:37,814.814 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:58:39,855.855 INFO    ] ================================================
[2026-08-31 13:58:39,870.870 INFO    ] Launching Daemon at Mon Aug 31 13:58:39 IST 2026
[2026-08-31 13:58:39,881.881 INFO    ] ================================================
[2026-08-31 13:58:40,449.449 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:58:40
[2026-08-31 13:58:41,036.036 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:58:41,291.291 INFO    ] Initializing speech engine...
[2026-08-31 13:58:41,308.308 INFO    ] 2026-08-31 13:58:41
[2026-08-31 13:58:41,589.589 INFO    ] 2026-08-31 13:58:41
[2026-08-31 13:58:41,626.626 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:58:41,824.824 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:58:41,837.837 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:58:42,007.007 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:58:42,035.035 INFO    ] time= 31/08/2026 13:58:42
[2026-08-31 13:58:42,082.082 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:58:42,104.104 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:58:42,228.228 INFO    ] No existing commands found in stream
[2026-08-31 13:58:47,241.241 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:58:47,243.243 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-08-31 13:58:49,013.013 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 13:58:49,015.015 INFO    ] Checking for system updates...
[2026-08-31 13:58:49,051.051 INFO    ] 200
[2026-08-31 13:58:49,053.053 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:58:49,105.105 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:58:49,108.108 INFO    ] No update needed
[2026-08-31 13:58:49,110.110 INFO    ] Checking for camera pi updates...
[2026-08-31 13:58:49,144.144 INFO    ] 200
[2026-08-31 13:58:49,146.146 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:58:49,191.191 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:58:49,272.272 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:58:49,274.274 INFO    ] No camera update needed
[2026-08-31 13:58:49,277.277 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:58:49,279.279 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:58:49,284.284 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:58:49,290.290 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:58:51,330.330 INFO    ] ================================================
[2026-08-31 13:58:51,346.346 INFO    ] Launching Daemon at Mon Aug 31 13:58:51 IST 2026
[2026-08-31 13:58:51,357.357 INFO    ] ================================================
[2026-08-31 13:58:51,924.924 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:58:51
[2026-08-31 13:58:52,516.516 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:58:52,782.782 INFO    ] Initializing speech engine...
[2026-08-31 13:58:52,791.791 INFO    ] 2026-08-31 13:58:52
[2026-08-31 13:58:53,052.052 INFO    ] 2026-08-31 13:58:53
[2026-08-31 13:58:53,108.108 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:58:53,390.390 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:58:53,398.398 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:58:53,594.594 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:58:53,600.600 INFO    ] time= 31/08/2026 13:58:53
[2026-08-31 13:58:53,617.617 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:58:53,635.635 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:58:53,754.754 INFO    ] No existing commands found in stream
[2026-08-31 13:58:58,773.773 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:58:58,776.776 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-08-31 13:59:01,864.864 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 13:59:01,883.883 INFO    ] Checking for system updates...
[2026-08-31 13:59:01,946.946 INFO    ] 200
[2026-08-31 13:59:01,950.950 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:59:02,056.056 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:59:02,059.059 INFO    ] No update needed
[2026-08-31 13:59:02,063.063 INFO    ] Checking for camera pi updates...
[2026-08-31 13:59:02,134.134 INFO    ] 200
[2026-08-31 13:59:02,145.145 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:59:02,201.201 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:59:02,322.322 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:59:02,325.325 INFO    ] No camera update needed
[2026-08-31 13:59:02,328.328 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:59:02,331.331 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:59:02,337.337 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:59:02,343.343 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:59:04,386.386 INFO    ] ================================================
[2026-08-31 13:59:04,402.402 INFO    ] Launching Daemon at Mon Aug 31 13:59:04 IST 2026
[2026-08-31 13:59:04,413.413 INFO    ] ================================================
[2026-08-31 13:59:05,061.061 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:59:05
[2026-08-31 13:59:05,726.726 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:59:06,031.031 INFO    ] Initializing speech engine...
[2026-08-31 13:59:06,043.043 INFO    ] 2026-08-31 13:59:06
[2026-08-31 13:59:06,328.328 INFO    ] 2026-08-31 13:59:06
[2026-08-31 13:59:06,365.365 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:59:06,642.642 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:59:06,661.661 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:59:06,853.853 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:59:06,880.880 INFO    ] time= 31/08/2026 13:59:06
[2026-08-31 13:59:06,900.900 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:59:06,929.929 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:59:07,052.052 INFO    ] No existing commands found in stream
[2026-08-31 13:59:12,089.089 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:59:12,092.092 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-08-31 13:59:16,526.526 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 13:59:16,529.529 INFO    ] Checking for system updates...
[2026-08-31 13:59:16,565.565 INFO    ] 200
[2026-08-31 13:59:16,568.568 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:59:16,622.622 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:59:16,625.625 INFO    ] No update needed
[2026-08-31 13:59:16,628.628 INFO    ] Checking for camera pi updates...
[2026-08-31 13:59:16,663.663 INFO    ] 200
[2026-08-31 13:59:16,665.665 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:59:16,707.707 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:59:16,788.788 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:59:16,791.791 INFO    ] No camera update needed
[2026-08-31 13:59:16,793.793 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:59:16,796.796 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:59:16,802.802 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:59:16,808.808 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:59:18,848.848 INFO    ] ================================================
[2026-08-31 13:59:18,864.864 INFO    ] Launching Daemon at Mon Aug 31 13:59:18 IST 2026
[2026-08-31 13:59:18,876.876 INFO    ] ================================================
[2026-08-31 13:59:19,525.525 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:59:19
[2026-08-31 13:59:20,193.193 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:59:20,492.492 INFO    ] Initializing speech engine...
[2026-08-31 13:59:20,501.501 INFO    ] 2026-08-31 13:59:20
[2026-08-31 13:59:20,775.775 INFO    ] 2026-08-31 13:59:20
[2026-08-31 13:59:20,829.829 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:59:21,082.082 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:59:21,087.087 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:59:21,324.324 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:59:21,343.343 INFO    ] time= 31/08/2026 13:59:21
[2026-08-31 13:59:21,352.352 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:59:21,382.382 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:59:21,490.490 INFO    ] No existing commands found in stream
[2026-08-31 13:59:26,516.516 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:59:26,519.519 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-08-31 13:59:29,419.419 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 13:59:29,422.422 INFO    ] Checking for system updates...
[2026-08-31 13:59:29,459.459 INFO    ] 200
[2026-08-31 13:59:29,462.462 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:59:29,515.515 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:59:29,518.518 INFO    ] No update needed
[2026-08-31 13:59:29,521.521 INFO    ] Checking for camera pi updates...
[2026-08-31 13:59:29,559.559 INFO    ] 200
[2026-08-31 13:59:29,563.563 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:59:29,604.604 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:59:29,707.707 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:59:29,710.710 INFO    ] No camera update needed
[2026-08-31 13:59:29,712.712 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:59:29,715.715 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:59:29,721.721 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:59:29,727.727 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:59:31,769.769 INFO    ] ================================================
[2026-08-31 13:59:31,785.785 INFO    ] Launching Daemon at Mon Aug 31 13:59:31 IST 2026
[2026-08-31 13:59:31,796.796 INFO    ] ================================================
[2026-08-31 13:59:32,498.498 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:59:32
[2026-08-31 13:59:33,210.210 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:59:33,510.510 INFO    ] Initializing speech engine...
[2026-08-31 13:59:33,517.517 INFO    ] 2026-08-31 13:59:33
[2026-08-31 13:59:33,807.807 INFO    ] 2026-08-31 13:59:33
[2026-08-31 13:59:33,846.846 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:59:34,128.128 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:59:34,133.133 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:59:34,330.330 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:59:34,394.394 INFO    ] time= 31/08/2026 13:59:34
[2026-08-31 13:59:34,405.405 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:59:34,423.423 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:59:34,569.569 INFO    ] No existing commands found in stream
[2026-08-31 13:59:39,583.583 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:59:39,585.585 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-08-31 13:59:41,245.245 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 13:59:41,248.248 INFO    ] Checking for system updates...
[2026-08-31 13:59:41,287.287 INFO    ] 200
[2026-08-31 13:59:41,290.290 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:59:41,341.341 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:59:41,344.344 INFO    ] No update needed
[2026-08-31 13:59:41,346.346 INFO    ] Checking for camera pi updates...
[2026-08-31 13:59:41,379.379 INFO    ] 200
[2026-08-31 13:59:41,382.382 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:59:41,421.421 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:59:41,507.507 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 13:59:41,510.510 INFO    ] No camera update needed
[2026-08-31 13:59:41,512.512 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:59:41,514.514 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:59:41,519.519 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:59:41,524.524 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:59:43,565.565 INFO    ] ================================================
[2026-08-31 13:59:43,581.581 INFO    ] Launching Daemon at Mon Aug 31 13:59:43 IST 2026
[2026-08-31 13:59:43,592.592 INFO    ] ================================================
[2026-08-31 13:59:44,179.179 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:59:44
[2026-08-31 13:59:44,781.781 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:59:45,055.055 INFO    ] Initializing speech engine...
[2026-08-31 13:59:45,064.064 INFO    ] 2026-08-31 13:59:45
[2026-08-31 13:59:45,327.327 INFO    ] 2026-08-31 13:59:45
[2026-08-31 13:59:45,381.381 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:59:45,606.606 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:59:45,613.613 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:59:45,854.854 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:59:45,869.869 INFO    ] time= 31/08/2026 13:59:45
[2026-08-31 13:59:45,887.887 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:59:45,896.896 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:59:46,019.019 INFO    ] No existing commands found in stream
[2026-08-31 13:59:51,035.035 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 13:59:51,038.038 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-08-31 13:59:53,171.171 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 13:59:53,173.173 INFO    ] Checking for system updates...
[2026-08-31 13:59:53,209.209 INFO    ] 200
[2026-08-31 13:59:53,211.211 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:59:53,263.263 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:59:53,266.266 INFO    ] No update needed
[2026-08-31 13:59:53,268.268 INFO    ] Checking for camera pi updates...
[2026-08-31 13:59:53,302.302 INFO    ] 200
[2026-08-31 13:59:53,305.305 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 13:59:53,344.344 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 13:59:53,440.440 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 13:59:53,443.443 INFO    ] No camera update needed
[2026-08-31 13:59:53,445.445 INFO    ] Script finished. Safe exiting...
[2026-08-31 13:59:53,447.447 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 13:59:53,453.453 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 13:59:53,458.458 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 13:59:55,507.507 INFO    ] ================================================
[2026-08-31 13:59:55,523.523 INFO    ] Launching Daemon at Mon Aug 31 13:59:55 IST 2026
[2026-08-31 13:59:55,534.534 INFO    ] ================================================
[2026-08-31 13:59:56,116.116 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 13:59:56
[2026-08-31 13:59:56,717.717 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 13:59:56,991.991 INFO    ] Initializing speech engine...
[2026-08-31 13:59:57,001.001 INFO    ] 2026-08-31 13:59:56
[2026-08-31 13:59:57,266.266 INFO    ] 2026-08-31 13:59:57
[2026-08-31 13:59:57,320.320 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 13:59:57,789.789 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 13:59:57,795.795 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 13:59:58,030.030 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 13:59:58,061.061 INFO    ] time= 31/08/2026 13:59:58
[2026-08-31 13:59:58,122.122 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 13:59:58,172.172 INFO    ] Checking for existing commands in stream...
[2026-08-31 13:59:58,323.323 INFO    ] No existing commands found in stream
[2026-08-31 14:00:03,359.359 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:00:03,363.363 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-08-31 14:00:05,664.664 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 14:00:05,688.688 INFO    ] Checking for system updates...
[2026-08-31 14:00:05,837.837 INFO    ] 200
[2026-08-31 14:00:05,840.840 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:00:06,035.035 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:00:06,044.044 INFO    ] No update needed
[2026-08-31 14:00:06,048.048 INFO    ] Checking for camera pi updates...
[2026-08-31 14:00:06,192.192 INFO    ] 200
[2026-08-31 14:00:06,199.199 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:00:06,324.324 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:00:06,422.422 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:00:06,425.425 INFO    ] No camera update needed
[2026-08-31 14:00:06,429.429 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:00:06,432.432 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:00:06,441.441 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:00:06,447.447 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:00:08,490.490 INFO    ] ================================================
[2026-08-31 14:00:08,507.507 INFO    ] Launching Daemon at Mon Aug 31 14:00:08 IST 2026
[2026-08-31 14:00:08,518.518 INFO    ] ================================================
[2026-08-31 14:00:09,187.187 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:00:09
[2026-08-31 14:00:09,854.854 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:00:10,123.123 INFO    ] Initializing speech engine...
[2026-08-31 14:00:10,133.133 INFO    ] 2026-08-31 14:00:10
[2026-08-31 14:00:10,384.384 INFO    ] 2026-08-31 14:00:10
[2026-08-31 14:00:10,419.419 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:00:10,677.677 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:00:10,686.686 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:00:10,945.945 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:00:10,952.952 INFO    ] time= 31/08/2026 14:00:10
[2026-08-31 14:00:10,971.971 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:00:10,993.993 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:00:11,136.136 INFO    ] No existing commands found in stream
[2026-08-31 14:00:16,166.166 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:00:16,169.169 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-08-31 14:00:17,021.021 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 14:00:17,024.024 INFO    ] Checking for system updates...
[2026-08-31 14:00:17,060.060 INFO    ] 200
[2026-08-31 14:00:17,062.062 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:00:17,122.122 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:00:17,125.125 INFO    ] No update needed
[2026-08-31 14:00:17,129.129 INFO    ] Checking for camera pi updates...
[2026-08-31 14:00:17,165.165 INFO    ] 200
[2026-08-31 14:00:17,168.168 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:00:17,209.209 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:00:17,292.292 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:00:17,294.294 INFO    ] No camera update needed
[2026-08-31 14:00:17,297.297 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:00:17,299.299 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:00:17,304.304 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:00:17,309.309 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:00:19,356.356 INFO    ] ================================================
[2026-08-31 14:00:19,372.372 INFO    ] Launching Daemon at Mon Aug 31 14:00:19 IST 2026
[2026-08-31 14:00:19,384.384 INFO    ] ================================================
[2026-08-31 14:00:19,965.965 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:00:19
[2026-08-31 14:00:20,561.561 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:00:20,839.839 INFO    ] Initializing speech engine...
[2026-08-31 14:00:20,848.848 INFO    ] 2026-08-31 14:00:20
[2026-08-31 14:00:21,109.109 INFO    ] 2026-08-31 14:00:21
[2026-08-31 14:00:21,160.160 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:00:21,396.396 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:00:21,401.401 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:00:21,534.534 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:00:21,587.587 INFO    ] time= 31/08/2026 14:00:21
[2026-08-31 14:00:21,647.647 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:00:21,670.670 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:00:21,820.820 INFO    ] No existing commands found in stream
[2026-08-31 14:00:26,838.838 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:00:26,840.840 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-08-31 14:00:30,124.124 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 14:00:30,126.126 INFO    ] Checking for system updates...
[2026-08-31 14:00:30,162.162 INFO    ] 200
[2026-08-31 14:00:30,165.165 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:00:30,217.217 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:00:30,220.220 INFO    ] No update needed
[2026-08-31 14:00:30,222.222 INFO    ] Checking for camera pi updates...
[2026-08-31 14:00:30,256.256 INFO    ] 200
[2026-08-31 14:00:30,258.258 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:00:30,299.299 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:00:30,384.384 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:00:30,386.386 INFO    ] No camera update needed
[2026-08-31 14:00:30,389.389 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:00:30,391.391 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:00:30,397.397 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:00:30,402.402 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:00:32,445.445 INFO    ] ================================================
[2026-08-31 14:00:32,462.462 INFO    ] Launching Daemon at Mon Aug 31 14:00:32 IST 2026
[2026-08-31 14:00:32,473.473 INFO    ] ================================================
[2026-08-31 14:00:33,080.080 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:00:33
[2026-08-31 14:00:33,691.691 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:00:33,960.960 INFO    ] Initializing speech engine...
[2026-08-31 14:00:33,969.969 INFO    ] 2026-08-31 14:00:33
[2026-08-31 14:00:34,216.216 INFO    ] 2026-08-31 14:00:34
[2026-08-31 14:00:34,251.251 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:00:34,507.507 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:00:34,511.511 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:00:34,750.750 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:00:34,769.769 INFO    ] time= 31/08/2026 14:00:34
[2026-08-31 14:00:34,785.785 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:00:34,794.794 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:00:34,906.906 INFO    ] No existing commands found in stream
[2026-08-31 14:00:39,930.930 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:00:39,933.933 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-08-31 14:00:43,483.483 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 14:00:43,485.485 INFO    ] Checking for system updates...
[2026-08-31 14:00:43,520.520 INFO    ] 200
[2026-08-31 14:00:43,523.523 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:00:43,576.576 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:00:43,578.578 INFO    ] No update needed
[2026-08-31 14:00:43,581.581 INFO    ] Checking for camera pi updates...
[2026-08-31 14:00:43,616.616 INFO    ] 200
[2026-08-31 14:00:43,618.618 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:00:43,659.659 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:00:43,744.744 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:00:43,746.746 INFO    ] No camera update needed
[2026-08-31 14:00:43,749.749 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:00:43,751.751 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:00:43,756.756 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:00:43,761.761 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:00:45,810.810 INFO    ] ================================================
[2026-08-31 14:00:45,825.825 INFO    ] Launching Daemon at Mon Aug 31 14:00:45 IST 2026
[2026-08-31 14:00:45,836.836 INFO    ] ================================================
[2026-08-31 14:00:46,499.499 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:00:46
[2026-08-31 14:00:47,180.180 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:00:47,493.493 INFO    ] Initializing speech engine...
[2026-08-31 14:00:47,502.502 INFO    ] 2026-08-31 14:00:47
[2026-08-31 14:00:47,827.827 INFO    ] 2026-08-31 14:00:47
[2026-08-31 14:00:47,914.914 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:00:48,087.087 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:00:48,102.102 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:00:48,339.339 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:00:48,346.346 INFO    ] time= 31/08/2026 14:00:48
[2026-08-31 14:00:48,368.368 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:00:48,398.398 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:00:48,494.494 INFO    ] No existing commands found in stream
[2026-08-31 14:00:53,525.525 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:00:53,528.528 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-08-31 14:00:56,694.694 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 14:00:56,696.696 INFO    ] Checking for system updates...
[2026-08-31 14:00:56,736.736 INFO    ] 200
[2026-08-31 14:00:56,739.739 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:00:56,793.793 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:00:56,795.795 INFO    ] No update needed
[2026-08-31 14:00:56,797.797 INFO    ] Checking for camera pi updates...
[2026-08-31 14:00:56,832.832 INFO    ] 200
[2026-08-31 14:00:56,834.834 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:00:56,874.874 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:00:56,936.936 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:00:56,939.939 INFO    ] No camera update needed
[2026-08-31 14:00:56,941.941 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:00:56,943.943 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:00:56,949.949 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:00:56,954.954 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:00:58,993.993 INFO    ] ================================================
[2026-08-31 14:00:59,009.009 INFO    ] Launching Daemon at Mon Aug 31 14:00:59 IST 2026
[2026-08-31 14:00:59,020.020 INFO    ] ================================================
[2026-08-31 14:00:59,684.684 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:00:59
[2026-08-31 14:01:00,365.365 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:01:00,673.673 INFO    ] Initializing speech engine...
[2026-08-31 14:01:00,681.681 INFO    ] 2026-08-31 14:01:00
[2026-08-31 14:01:00,967.967 INFO    ] 2026-08-31 14:01:00
[2026-08-31 14:01:01,014.014 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:01:01,366.366 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:01:01,388.388 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:01:01,570.570 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:01:01,579.579 INFO    ] time= 31/08/2026 14:01:01
[2026-08-31 14:01:01,612.612 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:01:01,687.687 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:01:01,835.835 INFO    ] No existing commands found in stream
[2026-08-31 14:01:06,920.920 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:01:06,923.923 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-08-31 14:01:10,138.138 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 14:01:10,141.141 INFO    ] Checking for system updates...
[2026-08-31 14:01:10,177.177 INFO    ] 200
[2026-08-31 14:01:10,179.179 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:01:10,232.232 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:01:10,235.235 INFO    ] No update needed
[2026-08-31 14:01:10,237.237 INFO    ] Checking for camera pi updates...
[2026-08-31 14:01:10,270.270 INFO    ] 200
[2026-08-31 14:01:10,273.273 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:01:10,314.314 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:01:10,392.392 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:01:10,394.394 INFO    ] No camera update needed
[2026-08-31 14:01:10,396.396 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:01:10,399.399 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:01:10,404.404 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:01:10,409.409 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:01:12,450.450 INFO    ] ================================================
[2026-08-31 14:01:12,465.465 INFO    ] Launching Daemon at Mon Aug 31 14:01:12 IST 2026
[2026-08-31 14:01:12,476.476 INFO    ] ================================================
[2026-08-31 14:01:13,048.048 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:01:13
[2026-08-31 14:01:13,635.635 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:01:13,943.943 INFO    ] Initializing speech engine...
[2026-08-31 14:01:13,952.952 INFO    ] 2026-08-31 14:01:13
[2026-08-31 14:01:14,241.241 INFO    ] 2026-08-31 14:01:14
[2026-08-31 14:01:14,288.288 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:01:14,576.576 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:01:14,586.586 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:01:14,785.785 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:01:14,793.793 INFO    ] time= 31/08/2026 14:01:14
[2026-08-31 14:01:14,815.815 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:01:14,845.845 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:01:14,952.952 INFO    ] No existing commands found in stream
[2026-08-31 14:01:19,974.974 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:01:19,977.977 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-08-31 14:01:21,337.337 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 14:01:21,340.340 INFO    ] Checking for system updates...
[2026-08-31 14:01:21,382.382 INFO    ] 200
[2026-08-31 14:01:21,385.385 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:01:21,443.443 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:01:21,446.446 INFO    ] No update needed
[2026-08-31 14:01:21,448.448 INFO    ] Checking for camera pi updates...
[2026-08-31 14:01:21,482.482 INFO    ] 200
[2026-08-31 14:01:21,484.484 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:01:21,524.524 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:01:21,604.604 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:01:21,607.607 INFO    ] No camera update needed
[2026-08-31 14:01:21,610.610 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:01:21,612.612 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:01:21,618.618 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:01:21,623.623 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:01:23,662.662 INFO    ] ================================================
[2026-08-31 14:01:23,678.678 INFO    ] Launching Daemon at Mon Aug 31 14:01:23 IST 2026
[2026-08-31 14:01:23,693.693 INFO    ] ================================================
[2026-08-31 14:01:24,272.272 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:01:24
[2026-08-31 14:01:24,868.868 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:01:25,140.140 INFO    ] Initializing speech engine...
[2026-08-31 14:01:25,151.151 INFO    ] 2026-08-31 14:01:25
[2026-08-31 14:01:25,425.425 INFO    ] 2026-08-31 14:01:25
[2026-08-31 14:01:25,482.482 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:01:25,714.714 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:01:25,724.724 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:01:25,971.971 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:01:25,995.995 INFO    ] time= 31/08/2026 14:01:25
[2026-08-31 14:01:26,013.013 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:01:26,023.023 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:01:26,162.162 INFO    ] No existing commands found in stream
[2026-08-31 14:01:31,179.179 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:01:31,182.182 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-08-31 14:01:35,740.740 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 14:01:35,743.743 INFO    ] Checking for system updates...
[2026-08-31 14:01:35,781.781 INFO    ] 200
[2026-08-31 14:01:35,783.783 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:01:35,835.835 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:01:35,838.838 INFO    ] No update needed
[2026-08-31 14:01:35,840.840 INFO    ] Checking for camera pi updates...
[2026-08-31 14:01:35,874.874 INFO    ] 200
[2026-08-31 14:01:35,876.876 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:01:35,917.917 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:01:36,007.007 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:01:36,010.010 INFO    ] No camera update needed
[2026-08-31 14:01:36,012.012 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:01:36,014.014 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:01:36,019.019 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:01:36,024.024 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:01:38,065.065 INFO    ] ================================================
[2026-08-31 14:01:38,080.080 INFO    ] Launching Daemon at Mon Aug 31 14:01:38 IST 2026
[2026-08-31 14:01:38,091.091 INFO    ] ================================================
[2026-08-31 14:01:38,731.731 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:01:38
[2026-08-31 14:01:39,392.392 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:01:39,694.694 INFO    ] Initializing speech engine...
[2026-08-31 14:01:39,702.702 INFO    ] 2026-08-31 14:01:39
[2026-08-31 14:01:39,976.976 INFO    ] 2026-08-31 14:01:39
[2026-08-31 14:01:40,032.032 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:01:40,262.262 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:01:40,272.272 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:01:40,513.513 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:01:40,541.541 INFO    ] time= 31/08/2026 14:01:40
[2026-08-31 14:01:40,558.558 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:01:40,584.584 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:01:40,696.696 INFO    ] No existing commands found in stream
[2026-08-31 14:01:45,712.712 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:01:45,716.716 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-08-31 14:01:48,932.932 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 14:01:48,935.935 INFO    ] Checking for system updates...
[2026-08-31 14:01:48,972.972 INFO    ] 200
[2026-08-31 14:01:48,975.975 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:01:49,026.026 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:01:49,029.029 INFO    ] No update needed
[2026-08-31 14:01:49,032.032 INFO    ] Checking for camera pi updates...
[2026-08-31 14:01:49,066.066 INFO    ] 200
[2026-08-31 14:01:49,068.068 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:01:49,109.109 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:01:49,188.188 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:01:49,191.191 INFO    ] No camera update needed
[2026-08-31 14:01:49,193.193 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:01:49,196.196 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:01:49,201.201 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:01:49,206.206 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:01:51,245.245 INFO    ] ================================================
[2026-08-31 14:01:51,261.261 INFO    ] Launching Daemon at Mon Aug 31 14:01:51 IST 2026
[2026-08-31 14:01:51,271.271 INFO    ] ================================================
[2026-08-31 14:01:51,924.924 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:01:51
[2026-08-31 14:01:52,608.608 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:01:52,924.924 INFO    ] Initializing speech engine...
[2026-08-31 14:01:52,935.935 INFO    ] 2026-08-31 14:01:52
[2026-08-31 14:01:53,256.256 INFO    ] 2026-08-31 14:01:53
[2026-08-31 14:01:53,344.344 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:01:53,570.570 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:01:53,630.630 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:01:53,818.818 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:01:53,829.829 INFO    ] time= 31/08/2026 14:01:53
[2026-08-31 14:01:53,865.865 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:01:53,919.919 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:01:54,037.037 INFO    ] No existing commands found in stream
[2026-08-31 14:01:59,057.057 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:01:59,061.061 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-08-31 14:02:03,311.311 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 14:02:03,315.315 INFO    ] Checking for system updates...
[2026-08-31 14:02:03,360.360 INFO    ] 200
[2026-08-31 14:02:03,363.363 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:02:03,425.425 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:02:03,429.429 INFO    ] No update needed
[2026-08-31 14:02:03,432.432 INFO    ] Checking for camera pi updates...
[2026-08-31 14:02:03,468.468 INFO    ] 200
[2026-08-31 14:02:03,471.471 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:02:03,530.530 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:02:03,625.625 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:02:03,628.628 INFO    ] No camera update needed
[2026-08-31 14:02:03,630.630 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:02:03,633.633 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:02:03,639.639 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:02:03,645.645 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:02:05,688.688 INFO    ] ================================================
[2026-08-31 14:02:05,703.703 INFO    ] Launching Daemon at Mon Aug 31 14:02:05 IST 2026
[2026-08-31 14:02:05,714.714 INFO    ] ================================================
[2026-08-31 14:02:06,294.294 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:02:06
[2026-08-31 14:02:06,918.918 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:02:07,172.172 INFO    ] Initializing speech engine...
[2026-08-31 14:02:07,179.179 INFO    ] 2026-08-31 14:02:07
[2026-08-31 14:02:07,473.473 INFO    ] 2026-08-31 14:02:07
[2026-08-31 14:02:07,510.510 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:02:07,690.690 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:02:07,693.693 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:02:07,847.847 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:02:07,855.855 INFO    ] time= 31/08/2026 14:02:07
[2026-08-31 14:02:07,876.876 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:02:07,896.896 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:02:07,979.979 INFO    ] No existing commands found in stream
[2026-08-31 14:02:12,991.991 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:02:12,993.993 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-08-31 14:02:15,733.733 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 14:02:15,736.736 INFO    ] Checking for system updates...
[2026-08-31 14:02:15,771.771 INFO    ] 200
[2026-08-31 14:02:15,774.774 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:02:15,833.833 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:02:15,835.835 INFO    ] No update needed
[2026-08-31 14:02:15,838.838 INFO    ] Checking for camera pi updates...
[2026-08-31 14:02:15,872.872 INFO    ] 200
[2026-08-31 14:02:15,874.874 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:02:15,915.915 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:02:16,093.093 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:02:16,096.096 INFO    ] No camera update needed
[2026-08-31 14:02:16,098.098 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:02:16,101.101 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:02:16,106.106 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:02:16,111.111 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:02:18,150.150 INFO    ] ================================================
[2026-08-31 14:02:18,165.165 INFO    ] Launching Daemon at Mon Aug 31 14:02:18 IST 2026
[2026-08-31 14:02:18,176.176 INFO    ] ================================================
[2026-08-31 14:02:18,742.742 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:02:18
[2026-08-31 14:02:19,323.323 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:02:19,593.593 INFO    ] Initializing speech engine...
[2026-08-31 14:02:19,602.602 INFO    ] 2026-08-31 14:02:19
[2026-08-31 14:02:19,861.861 INFO    ] 2026-08-31 14:02:19
[2026-08-31 14:02:19,920.920 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:02:20,145.145 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:02:20,154.154 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:02:20,381.381 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:02:20,418.418 INFO    ] time= 31/08/2026 14:02:20
[2026-08-31 14:02:20,424.424 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:02:20,442.442 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:02:20,570.570 INFO    ] No existing commands found in stream
[2026-08-31 14:02:25,587.587 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:02:25,590.590 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-08-31 14:02:26,740.740 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 14:02:26,743.743 INFO    ] Checking for system updates...
[2026-08-31 14:02:26,785.785 INFO    ] 200
[2026-08-31 14:02:26,788.788 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:02:26,847.847 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:02:26,849.849 INFO    ] No update needed
[2026-08-31 14:02:26,852.852 INFO    ] Checking for camera pi updates...
[2026-08-31 14:02:26,889.889 INFO    ] 200
[2026-08-31 14:02:26,891.891 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:02:26,931.931 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:02:27,011.011 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:02:27,013.013 INFO    ] No camera update needed
[2026-08-31 14:02:27,016.016 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:02:27,018.018 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:02:27,023.023 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:02:27,035.035 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:02:29,076.076 INFO    ] ================================================
[2026-08-31 14:02:29,091.091 INFO    ] Launching Daemon at Mon Aug 31 14:02:29 IST 2026
[2026-08-31 14:02:29,101.101 INFO    ] ================================================
[2026-08-31 14:02:29,680.680 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:02:29
[2026-08-31 14:02:30,280.280 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:02:30,556.556 INFO    ] Initializing speech engine...
[2026-08-31 14:02:30,563.563 INFO    ] 2026-08-31 14:02:30
[2026-08-31 14:02:30,822.822 INFO    ] 2026-08-31 14:02:30
[2026-08-31 14:02:30,853.853 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:02:31,089.089 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:02:31,092.092 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:02:31,294.294 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:02:31,297.297 INFO    ] time= 31/08/2026 14:02:31
[2026-08-31 14:02:31,351.351 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:02:31,381.381 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:02:31,522.522 INFO    ] No existing commands found in stream
[2026-08-31 14:02:36,537.537 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:02:36,540.540 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-08-31 14:02:40,617.617 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 14:02:40,620.620 INFO    ] Checking for system updates...
[2026-08-31 14:02:40,656.656 INFO    ] 200
[2026-08-31 14:02:40,660.660 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:02:40,712.712 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:02:40,715.715 INFO    ] No update needed
[2026-08-31 14:02:40,717.717 INFO    ] Checking for camera pi updates...
[2026-08-31 14:02:40,750.750 INFO    ] 200
[2026-08-31 14:02:40,753.753 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:02:40,793.793 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:02:40,876.876 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:02:40,878.878 INFO    ] No camera update needed
[2026-08-31 14:02:40,881.881 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:02:40,883.883 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:02:40,889.889 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:02:40,894.894 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:02:42,935.935 INFO    ] ================================================
[2026-08-31 14:02:42,950.950 INFO    ] Launching Daemon at Mon Aug 31 14:02:42 IST 2026
[2026-08-31 14:02:42,960.960 INFO    ] ================================================
[2026-08-31 14:02:43,526.526 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:02:43
[2026-08-31 14:02:44,108.108 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:02:44,359.359 INFO    ] Initializing speech engine...
[2026-08-31 14:02:44,381.381 INFO    ] 2026-08-31 14:02:44
[2026-08-31 14:02:44,635.635 INFO    ] 2026-08-31 14:02:44
[2026-08-31 14:02:44,670.670 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:02:44,903.903 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:02:44,935.935 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:02:45,139.139 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:02:45,188.188 INFO    ] time= 31/08/2026 14:02:45
[2026-08-31 14:02:45,203.203 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:02:45,221.221 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:02:45,342.342 INFO    ] No existing commands found in stream
[2026-08-31 14:02:50,367.367 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:02:50,370.370 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-08-31 14:02:52,186.186 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 14:02:52,189.189 INFO    ] Checking for system updates...
[2026-08-31 14:02:52,225.225 INFO    ] 200
[2026-08-31 14:02:52,227.227 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:02:52,279.279 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:02:52,281.281 INFO    ] No update needed
[2026-08-31 14:02:52,284.284 INFO    ] Checking for camera pi updates...
[2026-08-31 14:02:52,321.321 INFO    ] 200
[2026-08-31 14:02:52,324.324 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:02:52,365.365 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:02:52,468.468 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:02:52,470.470 INFO    ] No camera update needed
[2026-08-31 14:02:52,473.473 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:02:52,475.475 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:02:52,480.480 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:02:52,485.485 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:02:54,527.527 INFO    ] ================================================
[2026-08-31 14:02:54,542.542 INFO    ] Launching Daemon at Mon Aug 31 14:02:54 IST 2026
[2026-08-31 14:02:54,553.553 INFO    ] ================================================
[2026-08-31 14:02:55,185.185 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:02:55
[2026-08-31 14:02:55,842.842 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:02:56,146.146 INFO    ] Initializing speech engine...
[2026-08-31 14:02:56,160.160 INFO    ] 2026-08-31 14:02:56
[2026-08-31 14:02:56,430.430 INFO    ] 2026-08-31 14:02:56
[2026-08-31 14:02:56,484.484 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:02:56,740.740 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:02:56,759.759 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:02:56,980.980 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:02:56,988.988 INFO    ] time= 31/08/2026 14:02:56
[2026-08-31 14:02:57,006.006 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:02:57,024.024 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:02:57,171.171 INFO    ] No existing commands found in stream
[2026-08-31 14:03:02,199.199 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:03:02,204.204 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-08-31 14:03:03,366.366 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 14:03:03,369.369 INFO    ] Checking for system updates...
[2026-08-31 14:03:03,416.416 INFO    ] 200
[2026-08-31 14:03:03,418.418 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:03:03,487.487 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:03:03,489.489 INFO    ] No update needed
[2026-08-31 14:03:03,492.492 INFO    ] Checking for camera pi updates...
[2026-08-31 14:03:03,526.526 INFO    ] 200
[2026-08-31 14:03:03,529.529 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:03:03,570.570 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:03:03,670.670 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:03:03,673.673 INFO    ] No camera update needed
[2026-08-31 14:03:03,675.675 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:03:03,677.677 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:03:03,683.683 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:03:03,687.687 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:03:05,727.727 INFO    ] ================================================
[2026-08-31 14:03:05,743.743 INFO    ] Launching Daemon at Mon Aug 31 14:03:05 IST 2026
[2026-08-31 14:03:05,753.753 INFO    ] ================================================
[2026-08-31 14:03:06,332.332 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:03:06
[2026-08-31 14:03:06,947.947 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:03:07,222.222 INFO    ] Initializing speech engine...
[2026-08-31 14:03:07,238.238 INFO    ] 2026-08-31 14:03:07
[2026-08-31 14:03:07,512.512 INFO    ] 2026-08-31 14:03:07
[2026-08-31 14:03:07,547.547 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:03:07,771.771 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:03:07,815.815 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:03:08,006.006 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:03:08,066.066 INFO    ] time= 31/08/2026 14:03:08
[2026-08-31 14:03:08,125.125 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:03:08,154.154 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:03:08,298.298 INFO    ] No existing commands found in stream
[2026-08-31 14:03:13,329.329 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:03:13,332.332 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-08-31 14:03:16,732.732 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 14:03:16,735.735 INFO    ] Checking for system updates...
[2026-08-31 14:03:16,772.772 INFO    ] 200
[2026-08-31 14:03:16,774.774 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:03:16,827.827 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:03:16,830.830 INFO    ] No update needed
[2026-08-31 14:03:16,833.833 INFO    ] Checking for camera pi updates...
[2026-08-31 14:03:16,866.866 INFO    ] 200
[2026-08-31 14:03:16,869.869 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:03:16,910.910 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:03:17,028.028 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:03:17,030.030 INFO    ] No camera update needed
[2026-08-31 14:03:17,033.033 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:03:17,035.035 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:03:17,040.040 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:03:17,045.045 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:03:19,085.085 INFO    ] ================================================
[2026-08-31 14:03:19,101.101 INFO    ] Launching Daemon at Mon Aug 31 14:03:19 IST 2026
[2026-08-31 14:03:19,111.111 INFO    ] ================================================
[2026-08-31 14:03:19,680.680 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:03:19
[2026-08-31 14:03:20,308.308 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:03:20,616.616 INFO    ] Initializing speech engine...
[2026-08-31 14:03:20,629.629 INFO    ] 2026-08-31 14:03:20
[2026-08-31 14:03:20,940.940 INFO    ] 2026-08-31 14:03:20
[2026-08-31 14:03:21,026.026 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:03:21,239.239 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:03:21,248.248 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:03:21,445.445 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:03:21,462.462 INFO    ] time= 31/08/2026 14:03:21
[2026-08-31 14:03:21,477.477 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:03:21,501.501 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:03:21,641.641 INFO    ] No existing commands found in stream
[2026-08-31 14:03:26,667.667 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:03:26,670.670 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-08-31 14:03:29,403.403 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 14:03:29,405.405 INFO    ] Checking for system updates...
[2026-08-31 14:03:29,442.442 INFO    ] 200
[2026-08-31 14:03:29,444.444 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:03:29,496.496 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:03:29,499.499 INFO    ] No update needed
[2026-08-31 14:03:29,501.501 INFO    ] Checking for camera pi updates...
[2026-08-31 14:03:29,539.539 INFO    ] 200
[2026-08-31 14:03:29,541.541 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:03:29,588.588 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:03:29,669.669 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:03:29,671.671 INFO    ] No camera update needed
[2026-08-31 14:03:29,674.674 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:03:29,676.676 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:03:29,681.681 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:03:29,686.686 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:03:31,726.726 INFO    ] ================================================
[2026-08-31 14:03:31,742.742 INFO    ] Launching Daemon at Mon Aug 31 14:03:31 IST 2026
[2026-08-31 14:03:31,753.753 INFO    ] ================================================
[2026-08-31 14:03:32,414.414 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:03:32
[2026-08-31 14:03:33,136.136 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:03:33,448.448 INFO    ] Initializing speech engine...
[2026-08-31 14:03:33,456.456 INFO    ] 2026-08-31 14:03:33
[2026-08-31 14:03:33,743.743 INFO    ] 2026-08-31 14:03:33
[2026-08-31 14:03:33,788.788 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:03:34,076.076 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:03:34,085.085 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:03:34,284.284 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:03:34,292.292 INFO    ] time= 31/08/2026 14:03:34
[2026-08-31 14:03:34,313.313 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:03:34,341.341 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:03:34,450.450 INFO    ] No existing commands found in stream
[2026-08-31 14:03:39,480.480 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:03:39,483.483 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-08-31 14:03:40,905.905 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 14:03:40,908.908 INFO    ] Checking for system updates...
[2026-08-31 14:03:40,946.946 INFO    ] 200
[2026-08-31 14:03:40,949.949 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:03:41,001.001 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:03:41,004.004 INFO    ] No update needed
[2026-08-31 14:03:41,006.006 INFO    ] Checking for camera pi updates...
[2026-08-31 14:03:41,041.041 INFO    ] 200
[2026-08-31 14:03:41,044.044 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:03:41,084.084 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:03:41,166.166 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:03:41,168.168 INFO    ] No camera update needed
[2026-08-31 14:03:41,171.171 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:03:41,173.173 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:03:41,178.178 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:03:41,183.183 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:03:43,226.226 INFO    ] ================================================
[2026-08-31 14:03:43,261.261 INFO    ] Launching Daemon at Mon Aug 31 14:03:43 IST 2026
[2026-08-31 14:03:43,272.272 INFO    ] ================================================
[2026-08-31 14:03:43,852.852 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:03:43
[2026-08-31 14:03:44,453.453 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:03:44,736.736 INFO    ] Initializing speech engine...
[2026-08-31 14:03:44,746.746 INFO    ] 2026-08-31 14:03:44
[2026-08-31 14:03:45,013.013 INFO    ] 2026-08-31 14:03:45
[2026-08-31 14:03:45,052.052 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:03:45,246.246 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:03:45,253.253 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:03:45,425.425 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:03:45,432.432 INFO    ] time= 31/08/2026 14:03:45
[2026-08-31 14:03:45,439.439 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:03:45,482.482 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:03:45,605.605 INFO    ] No existing commands found in stream
[2026-08-31 14:03:50,630.630 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:03:50,633.633 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-08-31 14:03:51,465.465 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 14:03:51,468.468 INFO    ] Checking for system updates...
[2026-08-31 14:03:51,504.504 INFO    ] 200
[2026-08-31 14:03:51,506.506 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:03:51,558.558 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:03:51,561.561 INFO    ] No update needed
[2026-08-31 14:03:51,563.563 INFO    ] Checking for camera pi updates...
[2026-08-31 14:03:51,596.596 INFO    ] 200
[2026-08-31 14:03:51,599.599 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:03:51,646.646 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:03:51,726.726 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:03:51,729.729 INFO    ] No camera update needed
[2026-08-31 14:03:51,731.731 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:03:51,733.733 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:03:51,739.739 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:03:51,744.744 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:03:53,784.784 INFO    ] ================================================
[2026-08-31 14:03:53,799.799 INFO    ] Launching Daemon at Mon Aug 31 14:03:53 IST 2026
[2026-08-31 14:03:53,810.810 INFO    ] ================================================
[2026-08-31 14:03:54,375.375 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:03:54
[2026-08-31 14:03:54,957.957 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:03:55,216.216 INFO    ] Initializing speech engine...
[2026-08-31 14:03:55,235.235 INFO    ] 2026-08-31 14:03:55
[2026-08-31 14:03:55,487.487 INFO    ] 2026-08-31 14:03:55
[2026-08-31 14:03:55,521.521 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:03:55,724.724 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:03:55,782.782 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:03:55,926.926 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:03:55,986.986 INFO    ] time= 31/08/2026 14:03:55
[2026-08-31 14:03:56,029.029 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:03:56,060.060 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:03:56,195.195 INFO    ] No existing commands found in stream
[2026-08-31 14:04:01,218.218 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:04:01,221.221 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-08-31 14:04:05,479.479 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 14:04:05,481.481 INFO    ] Checking for system updates...
[2026-08-31 14:04:05,516.516 INFO    ] 200
[2026-08-31 14:04:05,519.519 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:04:05,578.578 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:04:05,580.580 INFO    ] No update needed
[2026-08-31 14:04:05,582.582 INFO    ] Checking for camera pi updates...
[2026-08-31 14:04:05,619.619 INFO    ] 200
[2026-08-31 14:04:05,621.621 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:04:05,661.661 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:04:05,795.795 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:04:05,797.797 INFO    ] No camera update needed
[2026-08-31 14:04:05,800.800 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:04:05,802.802 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:04:05,807.807 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:04:05,812.812 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:04:07,853.853 INFO    ] ================================================
[2026-08-31 14:04:07,868.868 INFO    ] Launching Daemon at Mon Aug 31 14:04:07 IST 2026
[2026-08-31 14:04:07,879.879 INFO    ] ================================================
[2026-08-31 14:04:08,455.455 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:04:08
[2026-08-31 14:04:09,041.041 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:04:09,295.295 INFO    ] Initializing speech engine...
[2026-08-31 14:04:09,304.304 INFO    ] 2026-08-31 14:04:09
[2026-08-31 14:04:09,595.595 INFO    ] 2026-08-31 14:04:09
[2026-08-31 14:04:09,633.633 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:04:09,874.874 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:04:09,876.876 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:04:10,124.124 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:04:10,165.165 INFO    ] time= 31/08/2026 14:04:10
[2026-08-31 14:04:10,171.171 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:04:10,189.189 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:04:10,322.322 INFO    ] No existing commands found in stream
[2026-08-31 14:04:15,334.334 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:04:15,337.337 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-08-31 14:04:18,521.521 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 14:04:18,523.523 INFO    ] Checking for system updates...
[2026-08-31 14:04:18,558.558 INFO    ] 200
[2026-08-31 14:04:18,561.561 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:04:18,613.613 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:04:18,615.615 INFO    ] No update needed
[2026-08-31 14:04:18,618.618 INFO    ] Checking for camera pi updates...
[2026-08-31 14:04:18,651.651 INFO    ] 200
[2026-08-31 14:04:18,653.653 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:04:18,693.693 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:04:18,870.870 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:04:18,872.872 INFO    ] No camera update needed
[2026-08-31 14:04:18,874.874 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:04:18,877.877 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:04:18,882.882 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:04:18,887.887 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:04:20,928.928 INFO    ] ================================================
[2026-08-31 14:04:20,942.942 INFO    ] Launching Daemon at Mon Aug 31 14:04:20 IST 2026
[2026-08-31 14:04:20,953.953 INFO    ] ================================================
[2026-08-31 14:04:21,600.600 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:04:21
[2026-08-31 14:04:22,197.197 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:04:22,470.470 INFO    ] Initializing speech engine...
[2026-08-31 14:04:22,480.480 INFO    ] 2026-08-31 14:04:22
[2026-08-31 14:04:22,743.743 INFO    ] 2026-08-31 14:04:22
[2026-08-31 14:04:22,780.780 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:04:23,005.005 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:04:23,034.034 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:04:23,265.265 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:04:23,300.300 INFO    ] time= 31/08/2026 14:04:23
[2026-08-31 14:04:23,349.349 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:04:23,376.376 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:04:23,444.444 INFO    ] No existing commands found in stream
[2026-08-31 14:04:28,453.453 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:04:28,461.461 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-08-31 14:04:31,238.238 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 14:04:31,241.241 INFO    ] Checking for system updates...
[2026-08-31 14:04:31,276.276 INFO    ] 200
[2026-08-31 14:04:31,279.279 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:04:31,335.335 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:04:31,337.337 INFO    ] No update needed
[2026-08-31 14:04:31,340.340 INFO    ] Checking for camera pi updates...
[2026-08-31 14:04:31,376.376 INFO    ] 200
[2026-08-31 14:04:31,379.379 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:04:31,419.419 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:04:31,500.500 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:04:31,502.502 INFO    ] No camera update needed
[2026-08-31 14:04:31,504.504 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:04:31,506.506 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:04:31,512.512 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:04:31,517.517 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:04:33,559.559 INFO    ] ================================================
[2026-08-31 14:04:33,573.573 INFO    ] Launching Daemon at Mon Aug 31 14:04:33 IST 2026
[2026-08-31 14:04:33,584.584 INFO    ] ================================================
[2026-08-31 14:04:34,225.225 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:04:34
[2026-08-31 14:04:34,887.887 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:04:35,190.190 INFO    ] Initializing speech engine...
[2026-08-31 14:04:35,200.200 INFO    ] 2026-08-31 14:04:35
[2026-08-31 14:04:35,475.475 INFO    ] 2026-08-31 14:04:35
[2026-08-31 14:04:35,528.528 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:04:35,737.737 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:04:35,751.751 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:04:36,018.018 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:04:36,026.026 INFO    ] time= 31/08/2026 14:04:36
[2026-08-31 14:04:36,045.045 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:04:36,073.073 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:04:36,183.183 INFO    ] No existing commands found in stream
[2026-08-31 14:04:41,217.217 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:04:41,221.221 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-08-31 14:04:44,650.650 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 14:04:44,653.653 INFO    ] Checking for system updates...
[2026-08-31 14:04:44,696.696 INFO    ] 200
[2026-08-31 14:04:44,699.699 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:04:44,760.760 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:04:44,763.763 INFO    ] No update needed
[2026-08-31 14:04:44,768.768 INFO    ] Checking for camera pi updates...
[2026-08-31 14:04:44,806.806 INFO    ] 200
[2026-08-31 14:04:44,809.809 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:04:44,850.850 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:04:44,935.935 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:04:44,938.938 INFO    ] No camera update needed
[2026-08-31 14:04:44,940.940 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:04:44,942.942 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:04:44,948.948 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:04:44,953.953 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:04:46,994.994 INFO    ] ================================================
[2026-08-31 14:04:47,010.010 INFO    ] Launching Daemon at Mon Aug 31 14:04:47 IST 2026
[2026-08-31 14:04:47,021.021 INFO    ] ================================================
[2026-08-31 14:04:47,687.687 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:04:47
[2026-08-31 14:04:48,380.380 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:04:48,692.692 INFO    ] Initializing speech engine...
[2026-08-31 14:04:48,701.701 INFO    ] 2026-08-31 14:04:48
[2026-08-31 14:04:48,985.985 INFO    ] 2026-08-31 14:04:48
[2026-08-31 14:04:49,042.042 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:04:49,275.275 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:04:49,281.281 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:04:49,542.542 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:04:49,549.549 INFO    ] time= 31/08/2026 14:04:49
[2026-08-31 14:04:49,572.572 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:04:49,601.601 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:04:49,710.710 INFO    ] No existing commands found in stream
[2026-08-31 14:04:54,735.735 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:04:54,739.739 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-08-31 14:04:59,090.090 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 14:04:59,093.093 INFO    ] Checking for system updates...
[2026-08-31 14:04:59,130.130 INFO    ] 200
[2026-08-31 14:04:59,132.132 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:04:59,184.184 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:04:59,187.187 INFO    ] No update needed
[2026-08-31 14:04:59,190.190 INFO    ] Checking for camera pi updates...
[2026-08-31 14:04:59,223.223 INFO    ] 200
[2026-08-31 14:04:59,226.226 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:04:59,265.265 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:04:59,348.348 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:04:59,350.350 INFO    ] No camera update needed
[2026-08-31 14:04:59,353.353 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:04:59,355.355 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:04:59,360.360 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:04:59,365.365 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:05:01,405.405 INFO    ] ================================================
[2026-08-31 14:05:01,424.424 INFO    ] Launching Daemon at Mon Aug 31 14:05:01 IST 2026
[2026-08-31 14:05:01,435.435 INFO    ] ================================================
[2026-08-31 14:05:02,292.292 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:05:02
[2026-08-31 14:05:02,978.978 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:05:03,269.269 INFO    ] Initializing speech engine...
[2026-08-31 14:05:03,278.278 INFO    ] 2026-08-31 14:05:03
[2026-08-31 14:05:03,602.602 INFO    ] 2026-08-31 14:05:03
[2026-08-31 14:05:03,674.674 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:05:03,926.926 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:05:03,933.933 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:05:04,183.183 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:05:04,193.193 INFO    ] time= 31/08/2026 14:05:04
[2026-08-31 14:05:04,214.214 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:05:04,241.241 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:05:04,383.383 INFO    ] No existing commands found in stream
[2026-08-31 14:05:09,414.414 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:05:09,418.418 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-08-31 14:05:13,745.745 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 14:05:13,748.748 INFO    ] Checking for system updates...
[2026-08-31 14:05:13,786.786 INFO    ] 200
[2026-08-31 14:05:13,788.788 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:05:13,850.850 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:05:13,853.853 INFO    ] No update needed
[2026-08-31 14:05:13,855.855 INFO    ] Checking for camera pi updates...
[2026-08-31 14:05:13,894.894 INFO    ] 200
[2026-08-31 14:05:13,896.896 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:05:13,943.943 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:05:14,028.028 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:05:14,031.031 INFO    ] No camera update needed
[2026-08-31 14:05:14,033.033 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:05:14,035.035 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:05:14,041.041 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:05:14,046.046 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:05:16,087.087 INFO    ] ================================================
[2026-08-31 14:05:16,103.103 INFO    ] Launching Daemon at Mon Aug 31 14:05:16 IST 2026
[2026-08-31 14:05:16,115.115 INFO    ] ================================================
[2026-08-31 14:05:16,697.697 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:05:16
[2026-08-31 14:05:17,296.296 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:05:17,573.573 INFO    ] Initializing speech engine...
[2026-08-31 14:05:17,582.582 INFO    ] 2026-08-31 14:05:17
[2026-08-31 14:05:17,841.841 INFO    ] 2026-08-31 14:05:17
[2026-08-31 14:05:17,894.894 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:05:18,120.120 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:05:18,126.126 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:05:18,259.259 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:05:18,324.324 INFO    ] time= 31/08/2026 14:05:18
[2026-08-31 14:05:18,385.385 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:05:18,392.392 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:05:18,518.518 INFO    ] No existing commands found in stream
[2026-08-31 14:05:23,543.543 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:05:23,546.546 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-08-31 14:05:26,699.699 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 14:05:26,702.702 INFO    ] Checking for system updates...
[2026-08-31 14:05:26,743.743 INFO    ] 200
[2026-08-31 14:05:26,745.745 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:05:26,807.807 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:05:26,810.810 INFO    ] No update needed
[2026-08-31 14:05:26,812.812 INFO    ] Checking for camera pi updates...
[2026-08-31 14:05:26,851.851 INFO    ] 200
[2026-08-31 14:05:26,853.853 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:05:26,895.895 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:05:26,999.999 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:05:27,002.002 INFO    ] No camera update needed
[2026-08-31 14:05:27,004.004 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:05:27,006.006 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:05:27,012.012 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:05:27,017.017 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:05:29,058.058 INFO    ] ================================================
[2026-08-31 14:05:29,075.075 INFO    ] Launching Daemon at Mon Aug 31 14:05:29 IST 2026
[2026-08-31 14:05:29,087.087 INFO    ] ================================================
[2026-08-31 14:05:29,667.667 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:05:29
[2026-08-31 14:05:30,264.264 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:05:30,541.541 INFO    ] Initializing speech engine...
[2026-08-31 14:05:30,548.548 INFO    ] 2026-08-31 14:05:30
[2026-08-31 14:05:30,808.808 INFO    ] 2026-08-31 14:05:30
[2026-08-31 14:05:30,863.863 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:05:31,083.083 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:05:31,092.092 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:05:31,305.305 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:05:31,349.349 INFO    ] time= 31/08/2026 14:05:31
[2026-08-31 14:05:31,355.355 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:05:31,376.376 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:05:31,505.505 INFO    ] No existing commands found in stream
[2026-08-31 14:05:36,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:05:36,520.520 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-08-31 14:05:40,486.486 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 14:05:40,489.489 INFO    ] Checking for system updates...
[2026-08-31 14:05:40,524.524 INFO    ] 200
[2026-08-31 14:05:40,527.527 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:05:40,589.589 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:05:40,591.591 INFO    ] No update needed
[2026-08-31 14:05:40,593.593 INFO    ] Checking for camera pi updates...
[2026-08-31 14:05:40,628.628 INFO    ] 200
[2026-08-31 14:05:40,631.631 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:05:40,679.679 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:05:40,745.745 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:05:40,749.749 INFO    ] No camera update needed
[2026-08-31 14:05:40,751.751 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:05:40,754.754 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:05:40,761.761 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:05:40,767.767 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:05:42,808.808 INFO    ] ================================================
[2026-08-31 14:05:42,825.825 INFO    ] Launching Daemon at Mon Aug 31 14:05:42 IST 2026
[2026-08-31 14:05:42,836.836 INFO    ] ================================================
[2026-08-31 14:05:43,514.514 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:05:43
[2026-08-31 14:05:44,113.113 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:05:44,392.392 INFO    ] Initializing speech engine...
[2026-08-31 14:05:44,400.400 INFO    ] 2026-08-31 14:05:44
[2026-08-31 14:05:44,658.658 INFO    ] 2026-08-31 14:05:44
[2026-08-31 14:05:44,712.712 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:05:44,971.971 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:05:44,981.981 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:05:45,225.225 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:05:45,280.280 INFO    ] time= 31/08/2026 14:05:45
[2026-08-31 14:05:45,291.291 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:05:45,309.309 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:05:45,440.440 INFO    ] No existing commands found in stream
[2026-08-31 14:05:50,460.460 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:05:50,463.463 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-08-31 14:05:52,661.661 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 14:05:52,664.664 INFO    ] Checking for system updates...
[2026-08-31 14:05:52,700.700 INFO    ] 200
[2026-08-31 14:05:52,702.702 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:05:52,763.763 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:05:52,765.765 INFO    ] No update needed
[2026-08-31 14:05:52,772.772 INFO    ] Checking for camera pi updates...
[2026-08-31 14:05:52,810.810 INFO    ] 200
[2026-08-31 14:05:52,812.812 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:05:52,858.858 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:05:52,961.961 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:05:52,963.963 INFO    ] No camera update needed
[2026-08-31 14:05:52,966.966 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:05:52,968.968 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:05:52,973.973 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:05:52,978.978 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:05:55,020.020 INFO    ] ================================================
[2026-08-31 14:05:55,035.035 INFO    ] Launching Daemon at Mon Aug 31 14:05:55 IST 2026
[2026-08-31 14:05:55,046.046 INFO    ] ================================================
[2026-08-31 14:05:55,616.616 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:05:55
[2026-08-31 14:05:56,201.201 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:05:56,463.463 INFO    ] Initializing speech engine...
[2026-08-31 14:05:56,478.478 INFO    ] 2026-08-31 14:05:56
[2026-08-31 14:05:56,744.744 INFO    ] 2026-08-31 14:05:56
[2026-08-31 14:05:56,780.780 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:05:57,036.036 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:05:57,043.043 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:05:57,271.271 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:05:57,303.303 INFO    ] time= 31/08/2026 14:05:57
[2026-08-31 14:05:57,319.319 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:05:57,327.327 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:05:57,452.452 INFO    ] No existing commands found in stream
[2026-08-31 14:06:02,468.468 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:06:02,471.471 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-08-31 14:06:05,318.318 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 14:06:05,321.321 INFO    ] Checking for system updates...
[2026-08-31 14:06:05,361.361 INFO    ] 200
[2026-08-31 14:06:05,363.363 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:06:05,422.422 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:06:05,425.425 INFO    ] No update needed
[2026-08-31 14:06:05,427.427 INFO    ] Checking for camera pi updates...
[2026-08-31 14:06:05,464.464 INFO    ] 200
[2026-08-31 14:06:05,467.467 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:06:05,507.507 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:06:05,557.557 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:06:05,560.560 INFO    ] No camera update needed
[2026-08-31 14:06:05,562.562 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:06:05,565.565 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:06:05,570.570 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:06:05,575.575 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:06:07,616.616 INFO    ] ================================================
[2026-08-31 14:06:07,632.632 INFO    ] Launching Daemon at Mon Aug 31 14:06:07 IST 2026
[2026-08-31 14:06:07,643.643 INFO    ] ================================================
[2026-08-31 14:06:08,301.301 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:06:08
[2026-08-31 14:06:08,982.982 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:06:09,286.286 INFO    ] Initializing speech engine...
[2026-08-31 14:06:09,293.293 INFO    ] 2026-08-31 14:06:09
[2026-08-31 14:06:09,588.588 INFO    ] 2026-08-31 14:06:09
[2026-08-31 14:06:09,633.633 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:06:09,886.886 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:06:09,892.892 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:06:10,092.092 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:06:10,137.137 INFO    ] time= 31/08/2026 14:06:10
[2026-08-31 14:06:10,143.143 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:06:10,165.165 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:06:10,290.290 INFO    ] No existing commands found in stream
[2026-08-31 14:06:15,308.308 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:06:15,312.312 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-08-31 14:06:17,422.422 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 14:06:17,425.425 INFO    ] Checking for system updates...
[2026-08-31 14:06:17,466.466 INFO    ] 200
[2026-08-31 14:06:17,469.469 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:06:17,523.523 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:06:17,526.526 INFO    ] No update needed
[2026-08-31 14:06:17,529.529 INFO    ] Checking for camera pi updates...
[2026-08-31 14:06:17,563.563 INFO    ] 200
[2026-08-31 14:06:17,566.566 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:06:17,614.614 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:06:17,703.703 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:06:17,706.706 INFO    ] No camera update needed
[2026-08-31 14:06:17,708.708 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:06:17,710.710 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:06:17,716.716 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:06:17,721.721 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:06:19,762.762 INFO    ] ================================================
[2026-08-31 14:06:19,778.778 INFO    ] Launching Daemon at Mon Aug 31 14:06:19 IST 2026
[2026-08-31 14:06:19,789.789 INFO    ] ================================================
[2026-08-31 14:06:20,447.447 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:06:20
[2026-08-31 14:06:21,125.125 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:06:21,434.434 INFO    ] Initializing speech engine...
[2026-08-31 14:06:21,446.446 INFO    ] 2026-08-31 14:06:21
[2026-08-31 14:06:21,714.714 INFO    ] 2026-08-31 14:06:21
[2026-08-31 14:06:21,769.769 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:06:21,993.993 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:06:22,006.006 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:06:22,228.228 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:06:22,273.273 INFO    ] time= 31/08/2026 14:06:22
[2026-08-31 14:06:22,291.291 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:06:22,311.311 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:06:22,437.437 INFO    ] No existing commands found in stream
[2026-08-31 14:06:27,464.464 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:06:27,467.467 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-08-31 14:06:30,379.379 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 14:06:30,382.382 INFO    ] Checking for system updates...
[2026-08-31 14:06:30,423.423 INFO    ] 200
[2026-08-31 14:06:30,426.426 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:06:30,488.488 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:06:30,491.491 INFO    ] No update needed
[2026-08-31 14:06:30,494.494 INFO    ] Checking for camera pi updates...
[2026-08-31 14:06:30,534.534 INFO    ] 200
[2026-08-31 14:06:30,537.537 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:06:30,589.589 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:06:30,787.787 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:06:30,790.790 INFO    ] No camera update needed
[2026-08-31 14:06:30,793.793 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:06:30,796.796 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:06:30,802.802 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:06:30,808.808 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:06:32,851.851 INFO    ] ================================================
[2026-08-31 14:06:32,867.867 INFO    ] Launching Daemon at Mon Aug 31 14:06:32 IST 2026
[2026-08-31 14:06:32,878.878 INFO    ] ================================================
[2026-08-31 14:06:33,449.449 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:06:33
[2026-08-31 14:06:34,038.038 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:06:34,309.309 INFO    ] Initializing speech engine...
[2026-08-31 14:06:34,318.318 INFO    ] 2026-08-31 14:06:34
[2026-08-31 14:06:34,569.569 INFO    ] 2026-08-31 14:06:34
[2026-08-31 14:06:34,604.604 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:06:34,862.862 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:06:34,872.872 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:06:35,085.085 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:06:35,133.133 INFO    ] time= 31/08/2026 14:06:35
[2026-08-31 14:06:35,140.140 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:06:35,161.161 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:06:35,289.289 INFO    ] No existing commands found in stream
[2026-08-31 14:06:40,303.303 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:06:40,306.306 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-08-31 14:06:41,415.415 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 14:06:41,418.418 INFO    ] Checking for system updates...
[2026-08-31 14:06:41,457.457 INFO    ] 200
[2026-08-31 14:06:41,459.459 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:06:41,518.518 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:06:41,520.520 INFO    ] No update needed
[2026-08-31 14:06:41,523.523 INFO    ] Checking for camera pi updates...
[2026-08-31 14:06:41,556.556 INFO    ] 200
[2026-08-31 14:06:41,559.559 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:06:41,604.604 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:06:41,708.708 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:06:41,710.710 INFO    ] No camera update needed
[2026-08-31 14:06:41,713.713 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:06:41,715.715 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:06:41,720.720 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:06:41,725.725 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:06:43,768.768 INFO    ] ================================================
[2026-08-31 14:06:43,784.784 INFO    ] Launching Daemon at Mon Aug 31 14:06:43 IST 2026
[2026-08-31 14:06:43,795.795 INFO    ] ================================================
[2026-08-31 14:06:44,368.368 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:06:44
[2026-08-31 14:06:44,957.957 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:06:45,213.213 INFO    ] Initializing speech engine...
[2026-08-31 14:06:45,219.219 INFO    ] 2026-08-31 14:06:45
[2026-08-31 14:06:45,515.515 INFO    ] 2026-08-31 14:06:45
[2026-08-31 14:06:45,553.553 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:06:45,910.910 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:06:45,921.921 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:06:46,136.136 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:06:46,150.150 INFO    ] time= 31/08/2026 14:06:46
[2026-08-31 14:06:46,170.170 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:06:46,177.177 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:06:46,312.312 INFO    ] No existing commands found in stream
[2026-08-31 14:06:51,333.333 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:06:51,336.336 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-08-31 14:06:55,223.223 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 14:06:55,226.226 INFO    ] Checking for system updates...
[2026-08-31 14:06:55,262.262 INFO    ] 200
[2026-08-31 14:06:55,264.264 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:06:55,322.322 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:06:55,325.325 INFO    ] No update needed
[2026-08-31 14:06:55,327.327 INFO    ] Checking for camera pi updates...
[2026-08-31 14:06:55,360.360 INFO    ] 200
[2026-08-31 14:06:55,363.363 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:06:55,403.403 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:06:55,504.504 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:06:55,506.506 INFO    ] No camera update needed
[2026-08-31 14:06:55,508.508 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:06:55,511.511 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:06:55,516.516 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:06:55,521.521 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:06:57,560.560 INFO    ] ================================================
[2026-08-31 14:06:57,576.576 INFO    ] Launching Daemon at Mon Aug 31 14:06:57 IST 2026
[2026-08-31 14:06:57,588.588 INFO    ] ================================================
[2026-08-31 14:06:58,170.170 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:06:58
[2026-08-31 14:06:58,767.767 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:06:59,044.044 INFO    ] Initializing speech engine...
[2026-08-31 14:06:59,054.054 INFO    ] 2026-08-31 14:06:59
[2026-08-31 14:06:59,313.313 INFO    ] 2026-08-31 14:06:59
[2026-08-31 14:06:59,342.342 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:06:59,592.592 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:06:59,596.596 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:06:59,850.850 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:06:59,857.857 INFO    ] time= 31/08/2026 14:06:59
[2026-08-31 14:06:59,876.876 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:06:59,904.904 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:07:00,049.049 INFO    ] No existing commands found in stream
[2026-08-31 14:07:05,079.079 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:07:05,082.082 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-08-31 14:07:08,372.372 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 14:07:08,375.375 INFO    ] Checking for system updates...
[2026-08-31 14:07:08,411.411 INFO    ] 200
[2026-08-31 14:07:08,414.414 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:07:08,466.466 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:07:08,469.469 INFO    ] No update needed
[2026-08-31 14:07:08,471.471 INFO    ] Checking for camera pi updates...
[2026-08-31 14:07:08,512.512 INFO    ] 200
[2026-08-31 14:07:08,514.514 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:07:08,555.555 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:07:08,659.659 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:07:08,662.662 INFO    ] No camera update needed
[2026-08-31 14:07:08,664.664 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:07:08,666.666 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:07:08,671.671 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:07:08,676.676 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:07:10,719.719 INFO    ] ================================================
[2026-08-31 14:07:10,735.735 INFO    ] Launching Daemon at Mon Aug 31 14:07:10 IST 2026
[2026-08-31 14:07:10,747.747 INFO    ] ================================================
[2026-08-31 14:07:11,402.402 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:07:11
[2026-08-31 14:07:12,071.071 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:07:12,374.374 INFO    ] Initializing speech engine...
[2026-08-31 14:07:12,384.384 INFO    ] 2026-08-31 14:07:12
[2026-08-31 14:07:12,678.678 INFO    ] 2026-08-31 14:07:12
[2026-08-31 14:07:12,724.724 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:07:13,078.078 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:07:13,128.128 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:07:13,358.358 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:07:13,406.406 INFO    ] time= 31/08/2026 14:07:13
[2026-08-31 14:07:13,460.460 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:07:13,497.497 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:07:13,646.646 INFO    ] No existing commands found in stream
[2026-08-31 14:07:18,670.670 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:07:18,673.673 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-08-31 14:07:20,104.104 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 14:07:20,107.107 INFO    ] Checking for system updates...
[2026-08-31 14:07:20,146.146 INFO    ] 200
[2026-08-31 14:07:20,148.148 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:07:20,200.200 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:07:20,203.203 INFO    ] No update needed
[2026-08-31 14:07:20,205.205 INFO    ] Checking for camera pi updates...
[2026-08-31 14:07:20,239.239 INFO    ] 200
[2026-08-31 14:07:20,241.241 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:07:20,281.281 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:07:20,365.365 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:07:20,368.368 INFO    ] No camera update needed
[2026-08-31 14:07:20,370.370 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:07:20,372.372 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:07:20,378.378 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:07:20,382.382 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:07:22,423.423 INFO    ] ================================================
[2026-08-31 14:07:22,439.439 INFO    ] Launching Daemon at Mon Aug 31 14:07:22 IST 2026
[2026-08-31 14:07:22,450.450 INFO    ] ================================================
[2026-08-31 14:07:23,106.106 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:07:23
[2026-08-31 14:07:23,780.780 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:07:24,094.094 INFO    ] Initializing speech engine...
[2026-08-31 14:07:24,104.104 INFO    ] 2026-08-31 14:07:24
[2026-08-31 14:07:24,411.411 INFO    ] 2026-08-31 14:07:24
[2026-08-31 14:07:24,497.497 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:07:24,772.772 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:07:24,819.819 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:07:25,079.079 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:07:25,139.139 INFO    ] time= 31/08/2026 14:07:25
[2026-08-31 14:07:25,157.157 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:07:25,216.216 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:07:25,355.355 INFO    ] No existing commands found in stream
[2026-08-31 14:07:30,366.366 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:07:30,370.370 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-08-31 14:07:33,766.766 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 14:07:33,770.770 INFO    ] Checking for system updates...
[2026-08-31 14:07:33,812.812 INFO    ] 200
[2026-08-31 14:07:33,815.815 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:07:33,882.882 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:07:33,884.884 INFO    ] No update needed
[2026-08-31 14:07:33,889.889 INFO    ] Checking for camera pi updates...
[2026-08-31 14:07:33,930.930 INFO    ] 200
[2026-08-31 14:07:33,933.933 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:07:33,979.979 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:07:34,082.082 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:07:34,085.085 INFO    ] No camera update needed
[2026-08-31 14:07:34,088.088 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:07:34,090.090 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:07:34,097.097 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:07:34,102.102 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:07:36,145.145 INFO    ] ================================================
[2026-08-31 14:07:36,161.161 INFO    ] Launching Daemon at Mon Aug 31 14:07:36 IST 2026
[2026-08-31 14:07:36,172.172 INFO    ] ================================================
[2026-08-31 14:07:36,741.741 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:07:36
[2026-08-31 14:07:37,322.322 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:07:37,594.594 INFO    ] Initializing speech engine...
[2026-08-31 14:07:37,600.600 INFO    ] 2026-08-31 14:07:37
[2026-08-31 14:07:37,860.860 INFO    ] 2026-08-31 14:07:37
[2026-08-31 14:07:37,914.914 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:07:38,138.138 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:07:38,144.144 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:07:38,377.377 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:07:38,401.401 INFO    ] time= 31/08/2026 14:07:38
[2026-08-31 14:07:38,416.416 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:07:38,425.425 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:07:38,554.554 INFO    ] No existing commands found in stream
[2026-08-31 14:07:43,576.576 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:07:43,579.579 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-08-31 14:07:47,666.666 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 14:07:47,670.670 INFO    ] Checking for system updates...
[2026-08-31 14:07:47,708.708 INFO    ] 200
[2026-08-31 14:07:47,711.711 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:07:47,773.773 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:07:47,776.776 INFO    ] No update needed
[2026-08-31 14:07:47,779.779 INFO    ] Checking for camera pi updates...
[2026-08-31 14:07:47,813.813 INFO    ] 200
[2026-08-31 14:07:47,816.816 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:07:47,862.862 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:07:47,943.943 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:07:47,945.945 INFO    ] No camera update needed
[2026-08-31 14:07:47,948.948 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:07:47,950.950 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:07:47,955.955 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:07:47,961.961 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:07:50,005.005 INFO    ] ================================================
[2026-08-31 14:07:50,020.020 INFO    ] Launching Daemon at Mon Aug 31 14:07:50 IST 2026
[2026-08-31 14:07:50,031.031 INFO    ] ================================================
[2026-08-31 14:07:50,614.614 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:07:50
[2026-08-31 14:07:51,293.293 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:07:51,604.604 INFO    ] Initializing speech engine...
[2026-08-31 14:07:51,616.616 INFO    ] 2026-08-31 14:07:51
[2026-08-31 14:07:51,926.926 INFO    ] 2026-08-31 14:07:51
[2026-08-31 14:07:52,011.011 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:07:52,257.257 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:07:52,293.293 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:07:52,563.563 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:07:52,617.617 INFO    ] time= 31/08/2026 14:07:52
[2026-08-31 14:07:52,672.672 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:07:52,675.675 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:07:52,804.804 INFO    ] No existing commands found in stream
[2026-08-31 14:07:57,840.840 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:07:57,844.844 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-08-31 14:08:02,108.108 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 14:08:02,112.112 INFO    ] Checking for system updates...
[2026-08-31 14:08:02,164.164 INFO    ] 200
[2026-08-31 14:08:02,174.174 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:08:02,253.253 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:08:02,257.257 INFO    ] No update needed
[2026-08-31 14:08:02,260.260 INFO    ] Checking for camera pi updates...
[2026-08-31 14:08:02,315.315 INFO    ] 200
[2026-08-31 14:08:02,319.319 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:08:02,383.383 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:08:02,501.501 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:08:02,504.504 INFO    ] No camera update needed
[2026-08-31 14:08:02,507.507 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:08:02,510.510 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:08:02,517.517 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:08:02,524.524 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:08:04,567.567 INFO    ] ================================================
[2026-08-31 14:08:04,582.582 INFO    ] Launching Daemon at Mon Aug 31 14:08:04 IST 2026
[2026-08-31 14:08:04,593.593 INFO    ] ================================================
[2026-08-31 14:08:05,254.254 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:08:05
[2026-08-31 14:08:05,936.936 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:08:06,249.249 INFO    ] Initializing speech engine...
[2026-08-31 14:08:06,261.261 INFO    ] 2026-08-31 14:08:06
[2026-08-31 14:08:06,535.535 INFO    ] 2026-08-31 14:08:06
[2026-08-31 14:08:06,578.578 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:08:06,941.941 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:08:06,978.978 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:08:07,223.223 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:08:07,264.264 INFO    ] time= 31/08/2026 14:08:07
[2026-08-31 14:08:07,324.324 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:08:07,355.355 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:08:07,493.493 INFO    ] No existing commands found in stream
[2026-08-31 14:08:12,508.508 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:08:12,511.511 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-08-31 14:08:14,796.796 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 14:08:14,799.799 INFO    ] Checking for system updates...
[2026-08-31 14:08:14,834.834 INFO    ] 200
[2026-08-31 14:08:14,837.837 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:08:14,890.890 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:08:14,892.892 INFO    ] No update needed
[2026-08-31 14:08:14,894.894 INFO    ] Checking for camera pi updates...
[2026-08-31 14:08:14,928.928 INFO    ] 200
[2026-08-31 14:08:14,931.931 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:08:14,971.971 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:08:15,051.051 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:08:15,054.054 INFO    ] No camera update needed
[2026-08-31 14:08:15,056.056 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:08:15,059.059 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:08:15,064.064 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:08:15,076.076 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:08:17,119.119 INFO    ] ================================================
[2026-08-31 14:08:17,136.136 INFO    ] Launching Daemon at Mon Aug 31 14:08:17 IST 2026
[2026-08-31 14:08:17,146.146 INFO    ] ================================================
[2026-08-31 14:08:17,713.713 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:08:17
[2026-08-31 14:08:18,320.320 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:08:18,596.596 INFO    ] Initializing speech engine...
[2026-08-31 14:08:18,603.603 INFO    ] 2026-08-31 14:08:18
[2026-08-31 14:08:18,860.860 INFO    ] 2026-08-31 14:08:18
[2026-08-31 14:08:18,919.919 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:08:19,204.204 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:08:19,209.209 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:08:19,401.401 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:08:19,408.408 INFO    ] time= 31/08/2026 14:08:19
[2026-08-31 14:08:19,423.423 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:08:19,432.432 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:08:19,557.557 INFO    ] No existing commands found in stream
[2026-08-31 14:08:24,572.572 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:08:24,575.575 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-08-31 14:08:28,846.846 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 14:08:28,849.849 INFO    ] Checking for system updates...
[2026-08-31 14:08:28,889.889 INFO    ] 200
[2026-08-31 14:08:28,892.892 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:08:28,951.951 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:08:28,954.954 INFO    ] No update needed
[2026-08-31 14:08:28,957.957 INFO    ] Checking for camera pi updates...
[2026-08-31 14:08:28,995.995 INFO    ] 200
[2026-08-31 14:08:28,998.998 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:08:29,048.048 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:08:29,134.134 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:08:29,137.137 INFO    ] No camera update needed
[2026-08-31 14:08:29,140.140 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:08:29,143.143 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:08:29,149.149 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:08:29,154.154 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:08:31,198.198 INFO    ] ================================================
[2026-08-31 14:08:31,215.215 INFO    ] Launching Daemon at Mon Aug 31 14:08:31 IST 2026
[2026-08-31 14:08:31,227.227 INFO    ] ================================================
[2026-08-31 14:08:31,816.816 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:08:31
[2026-08-31 14:08:32,434.434 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:08:32,708.708 INFO    ] Initializing speech engine...
[2026-08-31 14:08:32,733.733 INFO    ] 2026-08-31 14:08:32
[2026-08-31 14:08:33,004.004 INFO    ] 2026-08-31 14:08:32
[2026-08-31 14:08:33,040.040 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:08:33,395.395 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:08:33,403.403 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:08:33,622.622 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:08:33,630.630 INFO    ] time= 31/08/2026 14:08:33
[2026-08-31 14:08:33,646.646 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:08:33,661.661 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:08:33,813.813 INFO    ] No existing commands found in stream
[2026-08-31 14:08:38,838.838 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:08:38,841.841 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-08-31 14:08:40,517.517 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 14:08:40,520.520 INFO    ] Checking for system updates...
[2026-08-31 14:08:40,560.560 INFO    ] 200
[2026-08-31 14:08:40,563.563 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:08:40,623.623 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:08:40,626.626 INFO    ] No update needed
[2026-08-31 14:08:40,628.628 INFO    ] Checking for camera pi updates...
[2026-08-31 14:08:40,666.666 INFO    ] 200
[2026-08-31 14:08:40,669.669 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:08:40,710.710 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:08:40,762.762 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:08:40,765.765 INFO    ] No camera update needed
[2026-08-31 14:08:40,768.768 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:08:40,770.770 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:08:40,776.776 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:08:40,782.782 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:08:42,822.822 INFO    ] ================================================
[2026-08-31 14:08:42,839.839 INFO    ] Launching Daemon at Mon Aug 31 14:08:42 IST 2026
[2026-08-31 14:08:42,849.849 INFO    ] ================================================
[2026-08-31 14:08:43,416.416 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:08:43
[2026-08-31 14:08:44,001.001 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:08:44,259.259 INFO    ] Initializing speech engine...
[2026-08-31 14:08:44,273.273 INFO    ] 2026-08-31 14:08:44
[2026-08-31 14:08:44,554.554 INFO    ] 2026-08-31 14:08:44
[2026-08-31 14:08:44,591.591 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:08:44,813.813 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:08:44,820.820 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:08:45,039.039 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:08:45,066.066 INFO    ] time= 31/08/2026 14:08:45
[2026-08-31 14:08:45,115.115 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:08:45,164.164 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:08:45,323.323 INFO    ] No existing commands found in stream
[2026-08-31 14:08:50,359.359 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:08:50,362.362 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-08-31 14:08:52,487.487 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 14:08:52,490.490 INFO    ] Checking for system updates...
[2026-08-31 14:08:52,528.528 INFO    ] 200
[2026-08-31 14:08:52,531.531 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:08:52,583.583 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:08:52,585.585 INFO    ] No update needed
[2026-08-31 14:08:52,587.587 INFO    ] Checking for camera pi updates...
[2026-08-31 14:08:52,620.620 INFO    ] 200
[2026-08-31 14:08:52,623.623 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:08:52,665.665 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:08:52,759.759 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:08:52,762.762 INFO    ] No camera update needed
[2026-08-31 14:08:52,764.764 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:08:52,766.766 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:08:52,772.772 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:08:52,777.777 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:08:54,819.819 INFO    ] ================================================
[2026-08-31 14:08:54,835.835 INFO    ] Launching Daemon at Mon Aug 31 14:08:54 IST 2026
[2026-08-31 14:08:54,846.846 INFO    ] ================================================
[2026-08-31 14:08:55,430.430 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:08:55
[2026-08-31 14:08:56,036.036 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:08:56,306.306 INFO    ] Initializing speech engine...
[2026-08-31 14:08:56,316.316 INFO    ] 2026-08-31 14:08:56
[2026-08-31 14:08:56,571.571 INFO    ] 2026-08-31 14:08:56
[2026-08-31 14:08:56,608.608 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:08:56,858.858 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:08:56,868.868 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:08:57,120.120 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:08:57,127.127 INFO    ] time= 31/08/2026 14:08:57
[2026-08-31 14:08:57,145.145 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:08:57,156.156 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:08:57,299.299 INFO    ] No existing commands found in stream
[2026-08-31 14:09:02,320.320 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:09:02,324.324 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-08-31 14:09:06,500.500 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 14:09:06,503.503 INFO    ] Checking for system updates...
[2026-08-31 14:09:06,539.539 INFO    ] 200
[2026-08-31 14:09:06,541.541 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:09:06,602.602 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:09:06,604.604 INFO    ] No update needed
[2026-08-31 14:09:06,607.607 INFO    ] Checking for camera pi updates...
[2026-08-31 14:09:06,640.640 INFO    ] 200
[2026-08-31 14:09:06,642.642 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:09:06,691.691 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:09:06,788.788 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:09:06,791.791 INFO    ] No camera update needed
[2026-08-31 14:09:06,793.793 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:09:06,797.797 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:09:06,803.803 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:09:06,809.809 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:09:08,851.851 INFO    ] ================================================
[2026-08-31 14:09:08,867.867 INFO    ] Launching Daemon at Mon Aug 31 14:09:08 IST 2026
[2026-08-31 14:09:08,878.878 INFO    ] ================================================
[2026-08-31 14:09:09,509.509 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:09:09
[2026-08-31 14:09:10,163.163 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:09:10,456.456 INFO    ] Initializing speech engine...
[2026-08-31 14:09:10,464.464 INFO    ] 2026-08-31 14:09:10
[2026-08-31 14:09:10,773.773 INFO    ] 2026-08-31 14:09:10
[2026-08-31 14:09:10,859.859 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:09:11,013.013 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:09:11,020.020 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:09:11,261.261 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:09:11,278.278 INFO    ] time= 31/08/2026 14:09:11
[2026-08-31 14:09:11,296.296 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:09:11,324.324 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:09:11,546.546 INFO    ] No existing commands found in stream
[2026-08-31 14:09:16,577.577 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:09:16,580.580 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-08-31 14:09:18,876.876 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 14:09:18,879.879 INFO    ] Checking for system updates...
[2026-08-31 14:09:18,915.915 INFO    ] 200
[2026-08-31 14:09:18,917.917 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:09:18,971.971 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:09:18,974.974 INFO    ] No update needed
[2026-08-31 14:09:18,976.976 INFO    ] Checking for camera pi updates...
[2026-08-31 14:09:19,013.013 INFO    ] 200
[2026-08-31 14:09:19,015.015 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:09:19,059.059 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:09:19,162.162 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:09:19,164.164 INFO    ] No camera update needed
[2026-08-31 14:09:19,167.167 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:09:19,169.169 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:09:19,175.175 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:09:19,181.181 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:09:21,220.220 INFO    ] ================================================
[2026-08-31 14:09:21,236.236 INFO    ] Launching Daemon at Mon Aug 31 14:09:21 IST 2026
[2026-08-31 14:09:21,247.247 INFO    ] ================================================
[2026-08-31 14:09:21,879.879 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:09:21
[2026-08-31 14:09:22,529.529 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:09:22,823.823 INFO    ] Initializing speech engine...
[2026-08-31 14:09:22,830.830 INFO    ] 2026-08-31 14:09:22
[2026-08-31 14:09:23,098.098 INFO    ] 2026-08-31 14:09:23
[2026-08-31 14:09:23,152.152 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:09:23,502.502 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:09:23,509.509 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:09:23,761.761 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:09:23,798.798 INFO    ] time= 31/08/2026 14:09:23
[2026-08-31 14:09:23,847.847 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:09:23,894.894 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:09:24,043.043 INFO    ] No existing commands found in stream
[2026-08-31 14:09:29,062.062 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:09:29,065.065 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-08-31 14:09:33,178.178 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 14:09:33,181.181 INFO    ] Checking for system updates...
[2026-08-31 14:09:33,220.220 INFO    ] 200
[2026-08-31 14:09:33,223.223 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:09:33,280.280 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:09:33,283.283 INFO    ] No update needed
[2026-08-31 14:09:33,285.285 INFO    ] Checking for camera pi updates...
[2026-08-31 14:09:33,324.324 INFO    ] 200
[2026-08-31 14:09:33,327.327 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:09:33,379.379 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:09:33,486.486 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:09:33,490.490 INFO    ] No camera update needed
[2026-08-31 14:09:33,495.495 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:09:33,500.500 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:09:33,509.509 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:09:33,518.518 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:09:35,563.563 INFO    ] ================================================
[2026-08-31 14:09:35,579.579 INFO    ] Launching Daemon at Mon Aug 31 14:09:35 IST 2026
[2026-08-31 14:09:35,590.590 INFO    ] ================================================
[2026-08-31 14:09:36,166.166 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:09:36
[2026-08-31 14:09:36,754.754 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:09:37,008.008 INFO    ] Initializing speech engine...
[2026-08-31 14:09:37,015.015 INFO    ] 2026-08-31 14:09:37
[2026-08-31 14:09:37,300.300 INFO    ] 2026-08-31 14:09:37
[2026-08-31 14:09:37,336.336 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:09:37,614.614 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:09:37,623.623 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:09:37,768.768 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:09:37,817.817 INFO    ] time= 31/08/2026 14:09:37
[2026-08-31 14:09:37,866.866 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:09:37,915.915 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:09:38,042.042 INFO    ] No existing commands found in stream
[2026-08-31 14:09:43,064.064 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:09:43,067.067 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-08-31 14:09:46,120.120 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 14:09:46,122.122 INFO    ] Checking for system updates...
[2026-08-31 14:09:46,160.160 INFO    ] 200
[2026-08-31 14:09:46,162.162 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:09:46,214.214 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:09:46,216.216 INFO    ] No update needed
[2026-08-31 14:09:46,218.218 INFO    ] Checking for camera pi updates...
[2026-08-31 14:09:46,252.252 INFO    ] 200
[2026-08-31 14:09:46,254.254 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:09:46,296.296 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:09:46,359.359 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:09:46,361.361 INFO    ] No camera update needed
[2026-08-31 14:09:46,364.364 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:09:46,366.366 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:09:46,371.371 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:09:46,376.376 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:09:48,418.418 INFO    ] ================================================
[2026-08-31 14:09:48,433.433 INFO    ] Launching Daemon at Mon Aug 31 14:09:48 IST 2026
[2026-08-31 14:09:48,444.444 INFO    ] ================================================
[2026-08-31 14:09:49,067.067 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:09:49
[2026-08-31 14:09:49,704.704 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:09:49,997.997 INFO    ] Initializing speech engine...
[2026-08-31 14:09:50,006.006 INFO    ] 2026-08-31 14:09:50
[2026-08-31 14:09:50,283.283 INFO    ] 2026-08-31 14:09:50
[2026-08-31 14:09:50,339.339 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:09:50,591.591 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:09:50,596.596 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:09:50,796.796 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:09:50,835.835 INFO    ] time= 31/08/2026 14:09:50
[2026-08-31 14:09:50,854.854 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:09:50,863.863 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:09:50,979.979 INFO    ] No existing commands found in stream
[2026-08-31 14:09:56,005.005 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:09:56,008.008 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-08-31 14:09:58,846.846 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 14:09:58,849.849 INFO    ] Checking for system updates...
[2026-08-31 14:09:58,886.886 INFO    ] 200
[2026-08-31 14:09:58,889.889 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:09:58,942.942 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:09:58,945.945 INFO    ] No update needed
[2026-08-31 14:09:58,947.947 INFO    ] Checking for camera pi updates...
[2026-08-31 14:09:58,982.982 INFO    ] 200
[2026-08-31 14:09:58,984.984 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:09:59,025.025 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:09:59,100.100 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:09:59,103.103 INFO    ] No camera update needed
[2026-08-31 14:09:59,106.106 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:09:59,108.108 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:09:59,114.114 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:09:59,120.120 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:10:01,162.162 INFO    ] ================================================
[2026-08-31 14:10:01,177.177 INFO    ] Launching Daemon at Mon Aug 31 14:10:01 IST 2026
[2026-08-31 14:10:01,188.188 INFO    ] ================================================
[2026-08-31 14:10:01,851.851 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:10:01
[2026-08-31 14:10:03,004.004 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:10:03,304.304 INFO    ] Initializing speech engine...
[2026-08-31 14:10:03,320.320 INFO    ] 2026-08-31 14:10:03
[2026-08-31 14:10:03,663.663 INFO    ] 2026-08-31 14:10:03
[2026-08-31 14:10:03,708.708 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:10:03,998.998 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:10:04,008.008 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:10:04,259.259 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:10:04,282.282 INFO    ] time= 31/08/2026 14:10:04
[2026-08-31 14:10:04,297.297 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:10:04,307.307 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:10:04,473.473 INFO    ] No existing commands found in stream
[2026-08-31 14:10:09,503.503 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:10:09,506.506 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-08-31 14:10:11,767.767 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 14:10:11,770.770 INFO    ] Checking for system updates...
[2026-08-31 14:10:11,805.805 INFO    ] 200
[2026-08-31 14:10:11,808.808 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:10:11,860.860 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:10:11,862.862 INFO    ] No update needed
[2026-08-31 14:10:11,865.865 INFO    ] Checking for camera pi updates...
[2026-08-31 14:10:11,901.901 INFO    ] 200
[2026-08-31 14:10:11,903.903 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:10:11,946.946 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:10:12,012.012 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:10:12,015.015 INFO    ] No camera update needed
[2026-08-31 14:10:12,017.017 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:10:12,020.020 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:10:12,025.025 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:10:12,030.030 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:10:14,072.072 INFO    ] ================================================
[2026-08-31 14:10:14,087.087 INFO    ] Launching Daemon at Mon Aug 31 14:10:14 IST 2026
[2026-08-31 14:10:14,097.097 INFO    ] ================================================
[2026-08-31 14:10:14,735.735 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:10:14
[2026-08-31 14:10:15,378.378 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:10:15,668.668 INFO    ] Initializing speech engine...
[2026-08-31 14:10:15,675.675 INFO    ] 2026-08-31 14:10:15
[2026-08-31 14:10:15,945.945 INFO    ] 2026-08-31 14:10:15
[2026-08-31 14:10:16,003.003 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:10:16,289.289 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:10:16,299.299 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:10:16,533.533 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:10:16,543.543 INFO    ] time= 31/08/2026 14:10:16
[2026-08-31 14:10:16,551.551 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:10:16,607.607 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:10:16,749.749 INFO    ] No existing commands found in stream
[2026-08-31 14:10:21,766.766 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:10:21,769.769 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-08-31 14:10:25,636.636 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 14:10:25,640.640 INFO    ] Checking for system updates...
[2026-08-31 14:10:25,676.676 INFO    ] 200
[2026-08-31 14:10:25,679.679 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:10:25,732.732 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:10:25,735.735 INFO    ] No update needed
[2026-08-31 14:10:25,737.737 INFO    ] Checking for camera pi updates...
[2026-08-31 14:10:25,772.772 INFO    ] 200
[2026-08-31 14:10:25,775.775 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:10:25,817.817 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:10:25,912.912 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:10:25,914.914 INFO    ] No camera update needed
[2026-08-31 14:10:25,917.917 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:10:25,920.920 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:10:25,925.925 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:10:25,931.931 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:10:27,972.972 INFO    ] ================================================
[2026-08-31 14:10:27,987.987 INFO    ] Launching Daemon at Mon Aug 31 14:10:27 IST 2026
[2026-08-31 14:10:28,999.999 INFO    ] ================================================
[2026-08-31 14:10:28,621.621 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:10:28
[2026-08-31 14:10:29,237.237 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:10:29,508.508 INFO    ] Initializing speech engine...
[2026-08-31 14:10:29,517.517 INFO    ] 2026-08-31 14:10:29
[2026-08-31 14:10:29,778.778 INFO    ] 2026-08-31 14:10:29
[2026-08-31 14:10:29,837.837 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:10:30,185.185 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:10:30,206.206 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:10:30,441.441 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:10:30,476.476 INFO    ] time= 31/08/2026 14:10:30
[2026-08-31 14:10:30,531.531 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:10:30,576.576 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:10:30,725.725 INFO    ] No existing commands found in stream
[2026-08-31 14:10:35,740.740 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:10:35,743.743 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-08-31 14:10:40,853.853 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 14:10:40,856.856 INFO    ] Checking for system updates...
[2026-08-31 14:10:40,891.891 INFO    ] 200
[2026-08-31 14:10:40,894.894 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:10:40,947.947 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:10:40,949.949 INFO    ] No update needed
[2026-08-31 14:10:40,952.952 INFO    ] Checking for camera pi updates...
[2026-08-31 14:10:40,988.988 INFO    ] 200
[2026-08-31 14:10:40,990.990 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:10:41,034.034 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:10:41,223.223 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:10:41,225.225 INFO    ] No camera update needed
[2026-08-31 14:10:41,228.228 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:10:41,230.230 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:10:41,236.236 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:10:41,242.242 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:10:43,284.284 INFO    ] ================================================
[2026-08-31 14:10:43,300.300 INFO    ] Launching Daemon at Mon Aug 31 14:10:43 IST 2026
[2026-08-31 14:10:43,310.310 INFO    ] ================================================
[2026-08-31 14:10:43,928.928 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:10:43
[2026-08-31 14:10:44,562.562 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:10:44,844.844 INFO    ] Initializing speech engine...
[2026-08-31 14:10:44,856.856 INFO    ] 2026-08-31 14:10:44
[2026-08-31 14:10:45,119.119 INFO    ] 2026-08-31 14:10:45
[2026-08-31 14:10:45,157.157 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:10:45,421.421 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:10:45,428.428 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:10:45,652.652 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:10:45,690.690 INFO    ] time= 31/08/2026 14:10:45
[2026-08-31 14:10:45,696.696 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:10:45,718.718 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:10:45,847.847 INFO    ] No existing commands found in stream
[2026-08-31 14:10:50,860.860 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:10:50,863.863 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-08-31 14:10:52,239.239 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 14:10:52,242.242 INFO    ] Checking for system updates...
[2026-08-31 14:10:52,279.279 INFO    ] 200
[2026-08-31 14:10:52,281.281 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:10:52,333.333 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:10:52,335.335 INFO    ] No update needed
[2026-08-31 14:10:52,337.337 INFO    ] Checking for camera pi updates...
[2026-08-31 14:10:52,375.375 INFO    ] 200
[2026-08-31 14:10:52,377.377 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:10:52,420.420 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:10:52,508.508 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:10:52,510.510 INFO    ] No camera update needed
[2026-08-31 14:10:52,513.513 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:10:52,515.515 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:10:52,520.520 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:10:52,526.526 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:10:54,566.566 INFO    ] ================================================
[2026-08-31 14:10:54,581.581 INFO    ] Launching Daemon at Mon Aug 31 14:10:54 IST 2026
[2026-08-31 14:10:54,592.592 INFO    ] ================================================
[2026-08-31 14:10:55,158.158 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:10:55
[2026-08-31 14:10:55,744.744 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:10:56,013.013 INFO    ] Initializing speech engine...
[2026-08-31 14:10:56,022.022 INFO    ] 2026-08-31 14:10:56
[2026-08-31 14:10:56,274.274 INFO    ] 2026-08-31 14:10:56
[2026-08-31 14:10:56,309.309 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:10:56,565.565 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:10:56,570.570 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:10:56,769.769 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:10:56,823.823 INFO    ] time= 31/08/2026 14:10:56
[2026-08-31 14:10:56,834.834 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:10:56,852.852 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:10:57,006.006 INFO    ] No existing commands found in stream
[2026-08-31 14:11:02,030.030 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:11:02,033.033 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-08-31 14:11:03,376.376 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 14:11:03,378.378 INFO    ] Checking for system updates...
[2026-08-31 14:11:03,414.414 INFO    ] 200
[2026-08-31 14:11:03,416.416 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:11:03,473.473 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:11:03,475.475 INFO    ] No update needed
[2026-08-31 14:11:03,478.478 INFO    ] Checking for camera pi updates...
[2026-08-31 14:11:03,511.511 INFO    ] 200
[2026-08-31 14:11:03,514.514 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:11:03,554.554 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:11:03,652.652 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:11:03,654.654 INFO    ] No camera update needed
[2026-08-31 14:11:03,657.657 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:11:03,659.659 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:11:03,664.664 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:11:03,669.669 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:11:05,710.710 INFO    ] ================================================
[2026-08-31 14:11:05,726.726 INFO    ] Launching Daemon at Mon Aug 31 14:11:05 IST 2026
[2026-08-31 14:11:05,737.737 INFO    ] ================================================
[2026-08-31 14:11:06,374.374 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:11:06
[2026-08-31 14:11:07,011.011 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:11:07,301.301 INFO    ] Initializing speech engine...
[2026-08-31 14:11:07,309.309 INFO    ] 2026-08-31 14:11:07
[2026-08-31 14:11:07,588.588 INFO    ] 2026-08-31 14:11:07
[2026-08-31 14:11:07,632.632 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:11:07,856.856 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:11:07,861.861 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:11:08,084.084 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:11:08,122.122 INFO    ] time= 31/08/2026 14:11:08
[2026-08-31 14:11:08,140.140 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:11:08,169.169 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:11:08,274.274 INFO    ] No existing commands found in stream
[2026-08-31 14:11:13,290.290 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:11:13,293.293 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-08-31 14:11:13,817.817 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 14:11:13,820.820 INFO    ] Checking for system updates...
[2026-08-31 14:11:13,856.856 INFO    ] 200
[2026-08-31 14:11:13,859.859 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:11:13,918.918 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:11:13,920.920 INFO    ] No update needed
[2026-08-31 14:11:13,923.923 INFO    ] Checking for camera pi updates...
[2026-08-31 14:11:13,958.958 INFO    ] 200
[2026-08-31 14:11:13,960.960 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:11:14,004.004 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:11:14,095.095 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:11:14,098.098 INFO    ] No camera update needed
[2026-08-31 14:11:14,100.100 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:11:14,102.102 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:11:14,108.108 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:11:14,113.113 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:11:16,155.155 INFO    ] ================================================
[2026-08-31 14:11:16,170.170 INFO    ] Launching Daemon at Mon Aug 31 14:11:16 IST 2026
[2026-08-31 14:11:16,180.180 INFO    ] ================================================
[2026-08-31 14:11:16,802.802 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:11:16
[2026-08-31 14:11:17,440.440 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:11:17,731.731 INFO    ] Initializing speech engine...
[2026-08-31 14:11:17,745.745 INFO    ] 2026-08-31 14:11:17
[2026-08-31 14:11:18,054.054 INFO    ] 2026-08-31 14:11:18
[2026-08-31 14:11:18,131.131 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:11:18,315.315 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:11:18,333.333 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:11:18,595.595 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:11:18,604.604 INFO    ] time= 31/08/2026 14:11:18
[2026-08-31 14:11:18,655.655 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:11:18,701.701 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:11:18,806.806 INFO    ] No existing commands found in stream
[2026-08-31 14:11:23,831.831 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:11:23,834.834 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-08-31 14:11:26,127.127 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 14:11:26,130.130 INFO    ] Checking for system updates...
[2026-08-31 14:11:26,165.165 INFO    ] 200
[2026-08-31 14:11:26,167.167 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:11:26,222.222 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:11:26,225.225 INFO    ] No update needed
[2026-08-31 14:11:26,227.227 INFO    ] Checking for camera pi updates...
[2026-08-31 14:11:26,263.263 INFO    ] 200
[2026-08-31 14:11:26,265.265 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:11:26,308.308 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:11:26,408.408 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:11:26,411.411 INFO    ] No camera update needed
[2026-08-31 14:11:26,413.413 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:11:26,416.416 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:11:26,421.421 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:11:26,427.427 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:11:28,468.468 INFO    ] ================================================
[2026-08-31 14:11:28,484.484 INFO    ] Launching Daemon at Mon Aug 31 14:11:28 IST 2026
[2026-08-31 14:11:28,495.495 INFO    ] ================================================
[2026-08-31 14:11:29,072.072 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:11:29
[2026-08-31 14:11:29,669.669 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:11:29,944.944 INFO    ] Initializing speech engine...
[2026-08-31 14:11:29,953.953 INFO    ] 2026-08-31 14:11:29
[2026-08-31 14:11:30,211.211 INFO    ] 2026-08-31 14:11:30
[2026-08-31 14:11:30,265.265 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:11:30,492.492 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:11:30,496.496 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:11:30,748.748 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:11:30,755.755 INFO    ] time= 31/08/2026 14:11:30
[2026-08-31 14:11:30,773.773 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:11:30,785.785 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:11:30,909.909 INFO    ] No existing commands found in stream
[2026-08-31 14:11:35,937.937 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:11:35,940.940 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-08-31 14:11:37,515.515 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 14:11:37,517.517 INFO    ] Checking for system updates...
[2026-08-31 14:11:37,554.554 INFO    ] 200
[2026-08-31 14:11:37,557.557 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:11:37,612.612 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:11:37,614.614 INFO    ] No update needed
[2026-08-31 14:11:37,617.617 INFO    ] Checking for camera pi updates...
[2026-08-31 14:11:37,652.652 INFO    ] 200
[2026-08-31 14:11:37,655.655 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:11:37,696.696 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:11:37,774.774 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:11:37,777.777 INFO    ] No camera update needed
[2026-08-31 14:11:37,780.780 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:11:37,783.783 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:11:37,789.789 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:11:37,794.794 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:11:39,836.836 INFO    ] ================================================
[2026-08-31 14:11:39,852.852 INFO    ] Launching Daemon at Mon Aug 31 14:11:39 IST 2026
[2026-08-31 14:11:39,863.863 INFO    ] ================================================
[2026-08-31 14:11:40,429.429 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:11:40
[2026-08-31 14:11:41,012.012 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:11:41,279.279 INFO    ] Initializing speech engine...
[2026-08-31 14:11:41,288.288 INFO    ] 2026-08-31 14:11:41
[2026-08-31 14:11:41,533.533 INFO    ] 2026-08-31 14:11:41
[2026-08-31 14:11:41,571.571 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:11:41,846.846 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:11:41,854.854 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:11:42,049.049 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:11:42,104.104 INFO    ] time= 31/08/2026 14:11:42
[2026-08-31 14:11:42,111.111 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:11:42,128.128 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:11:42,240.240 INFO    ] No existing commands found in stream
[2026-08-31 14:11:47,262.262 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:11:47,265.265 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-08-31 14:11:48,330.330 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 14:11:48,333.333 INFO    ] Checking for system updates...
[2026-08-31 14:11:48,368.368 INFO    ] 200
[2026-08-31 14:11:48,370.370 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:11:48,422.422 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:11:48,424.424 INFO    ] No update needed
[2026-08-31 14:11:48,426.426 INFO    ] Checking for camera pi updates...
[2026-08-31 14:11:48,462.462 INFO    ] 200
[2026-08-31 14:11:48,465.465 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:11:48,505.505 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:11:48,594.594 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:11:48,596.596 INFO    ] No camera update needed
[2026-08-31 14:11:48,599.599 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:11:48,601.601 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:11:48,606.606 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:11:48,611.611 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:11:50,655.655 INFO    ] ================================================
[2026-08-31 14:11:50,671.671 INFO    ] Launching Daemon at Mon Aug 31 14:11:50 IST 2026
[2026-08-31 14:11:50,686.686 INFO    ] ================================================
[2026-08-31 14:11:51,254.254 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:11:51
[2026-08-31 14:11:51,837.837 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:11:52,106.106 INFO    ] Initializing speech engine...
[2026-08-31 14:11:52,115.115 INFO    ] 2026-08-31 14:11:52
[2026-08-31 14:11:52,362.362 INFO    ] 2026-08-31 14:11:52
[2026-08-31 14:11:52,399.399 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:11:52,655.655 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:11:52,660.660 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:11:52,899.899 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:11:52,924.924 INFO    ] time= 31/08/2026 14:11:52
[2026-08-31 14:11:52,938.938 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:11:52,949.949 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:11:53,080.080 INFO    ] No existing commands found in stream
[2026-08-31 14:11:58,108.108 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:11:58,112.112 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-08-31 14:12:01,763.763 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 14:12:01,766.766 INFO    ] Checking for system updates...
[2026-08-31 14:12:01,808.808 INFO    ] 200
[2026-08-31 14:12:01,811.811 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:12:01,879.879 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:12:01,883.883 INFO    ] No update needed
[2026-08-31 14:12:01,886.886 INFO    ] Checking for camera pi updates...
[2026-08-31 14:12:01,930.930 INFO    ] 200
[2026-08-31 14:12:01,934.934 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:12:01,985.985 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:12:02,075.075 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:12:02,079.079 INFO    ] No camera update needed
[2026-08-31 14:12:02,082.082 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:12:02,086.086 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:12:02,094.094 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:12:02,102.102 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:12:04,147.147 INFO    ] ================================================
[2026-08-31 14:12:04,162.162 INFO    ] Launching Daemon at Mon Aug 31 14:12:04 IST 2026
[2026-08-31 14:12:04,173.173 INFO    ] ================================================
[2026-08-31 14:12:04,780.780 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:12:04
[2026-08-31 14:12:05,378.378 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:12:05,640.640 INFO    ] Initializing speech engine...
[2026-08-31 14:12:05,646.646 INFO    ] 2026-08-31 14:12:05
[2026-08-31 14:12:05,943.943 INFO    ] 2026-08-31 14:12:05
[2026-08-31 14:12:05,980.980 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:12:06,521.521 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:12:06,536.536 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:12:06,766.766 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:12:06,792.792 INFO    ] time= 31/08/2026 14:12:06
[2026-08-31 14:12:06,850.850 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:12:06,909.909 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:12:06,989.989 INFO    ] No existing commands found in stream
[2026-08-31 14:12:11,999.999 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:12:12,001.001 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-08-31 14:12:13,713.713 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 14:12:13,716.716 INFO    ] Checking for system updates...
[2026-08-31 14:12:13,753.753 INFO    ] 200
[2026-08-31 14:12:13,755.755 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:12:13,809.809 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:12:13,811.811 INFO    ] No update needed
[2026-08-31 14:12:13,814.814 INFO    ] Checking for camera pi updates...
[2026-08-31 14:12:13,850.850 INFO    ] 200
[2026-08-31 14:12:13,853.853 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:12:13,902.902 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:12:13,961.961 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:12:13,964.964 INFO    ] No camera update needed
[2026-08-31 14:12:13,967.967 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:12:13,970.970 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:12:13,977.977 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:12:13,983.983 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:12:16,024.024 INFO    ] ================================================
[2026-08-31 14:12:16,040.040 INFO    ] Launching Daemon at Mon Aug 31 14:12:16 IST 2026
[2026-08-31 14:12:16,051.051 INFO    ] ================================================
[2026-08-31 14:12:16,630.630 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:12:16
[2026-08-31 14:12:17,229.229 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:12:17,505.505 INFO    ] Initializing speech engine...
[2026-08-31 14:12:17,510.510 INFO    ] 2026-08-31 14:12:17
[2026-08-31 14:12:17,774.774 INFO    ] 2026-08-31 14:12:17
[2026-08-31 14:12:17,828.828 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:12:18,318.318 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:12:18,345.345 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:12:18,551.551 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:12:18,610.610 INFO    ] time= 31/08/2026 14:12:18
[2026-08-31 14:12:18,670.670 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:12:18,708.708 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:12:18,855.855 INFO    ] No existing commands found in stream
[2026-08-31 14:12:23,885.885 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:12:23,888.888 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-08-31 14:12:26,835.835 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 14:12:26,838.838 INFO    ] Checking for system updates...
[2026-08-31 14:12:26,873.873 INFO    ] 200
[2026-08-31 14:12:26,876.876 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:12:26,934.934 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:12:26,936.936 INFO    ] No update needed
[2026-08-31 14:12:26,939.939 INFO    ] Checking for camera pi updates...
[2026-08-31 14:12:26,974.974 INFO    ] 200
[2026-08-31 14:12:26,976.976 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:12:27,021.021 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:12:27,127.127 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:12:27,130.130 INFO    ] No camera update needed
[2026-08-31 14:12:27,132.132 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:12:27,134.134 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:12:27,140.140 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:12:27,145.145 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:12:29,184.184 INFO    ] ================================================
[2026-08-31 14:12:29,200.200 INFO    ] Launching Daemon at Mon Aug 31 14:12:29 IST 2026
[2026-08-31 14:12:29,210.210 INFO    ] ================================================
[2026-08-31 14:12:29,833.833 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:12:29
[2026-08-31 14:12:30,414.414 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:12:30,684.684 INFO    ] Initializing speech engine...
[2026-08-31 14:12:30,691.691 INFO    ] 2026-08-31 14:12:30
[2026-08-31 14:12:30,948.948 INFO    ] 2026-08-31 14:12:30
[2026-08-31 14:12:31,000.000 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:12:31,265.265 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:12:31,288.288 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:12:31,538.538 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:12:31,553.553 INFO    ] time= 31/08/2026 14:12:31
[2026-08-31 14:12:31,563.563 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:12:31,580.580 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:12:31,714.714 INFO    ] No existing commands found in stream
[2026-08-31 14:12:36,734.734 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:12:36,737.737 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-08-31 14:12:38,242.242 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 14:12:38,244.244 INFO    ] Checking for system updates...
[2026-08-31 14:12:38,279.279 INFO    ] 200
[2026-08-31 14:12:38,282.282 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:12:38,340.340 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:12:38,342.342 INFO    ] No update needed
[2026-08-31 14:12:38,345.345 INFO    ] Checking for camera pi updates...
[2026-08-31 14:12:38,378.378 INFO    ] 200
[2026-08-31 14:12:38,381.381 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:12:38,422.422 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:12:38,517.517 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:12:38,520.520 INFO    ] No camera update needed
[2026-08-31 14:12:38,522.522 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:12:38,524.524 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:12:38,530.530 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:12:38,535.535 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:12:40,575.575 INFO    ] ================================================
[2026-08-31 14:12:40,591.591 INFO    ] Launching Daemon at Mon Aug 31 14:12:40 IST 2026
[2026-08-31 14:12:40,603.603 INFO    ] ================================================
[2026-08-31 14:12:41,182.182 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:12:41
[2026-08-31 14:12:41,777.777 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:12:42,052.052 INFO    ] Initializing speech engine...
[2026-08-31 14:12:42,057.057 INFO    ] 2026-08-31 14:12:42
[2026-08-31 14:12:42,310.310 INFO    ] 2026-08-31 14:12:42
[2026-08-31 14:12:42,368.368 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:12:42,595.595 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:12:42,601.601 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:12:42,827.827 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:12:42,858.858 INFO    ] time= 31/08/2026 14:12:42
[2026-08-31 14:12:42,872.872 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:12:42,882.882 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:12:43,054.054 INFO    ] No existing commands found in stream
[2026-08-31 14:12:48,089.089 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:12:48,092.092 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-08-31 14:12:51,163.163 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 14:12:51,166.166 INFO    ] Checking for system updates...
[2026-08-31 14:12:51,202.202 INFO    ] 200
[2026-08-31 14:12:51,204.204 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:12:51,258.258 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:12:51,261.261 INFO    ] No update needed
[2026-08-31 14:12:51,264.264 INFO    ] Checking for camera pi updates...
[2026-08-31 14:12:51,297.297 INFO    ] 200
[2026-08-31 14:12:51,300.300 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:12:51,349.349 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:12:51,536.536 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:12:51,539.539 INFO    ] No camera update needed
[2026-08-31 14:12:51,541.541 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:12:51,543.543 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:12:51,549.549 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:12:51,554.554 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:12:53,596.596 INFO    ] ================================================
[2026-08-31 14:12:53,611.611 INFO    ] Launching Daemon at Mon Aug 31 14:12:53 IST 2026
[2026-08-31 14:12:53,622.622 INFO    ] ================================================
[2026-08-31 14:12:54,185.185 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:12:54
[2026-08-31 14:12:54,764.764 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:12:55,021.021 INFO    ] Initializing speech engine...
[2026-08-31 14:12:55,037.037 INFO    ] 2026-08-31 14:12:55
[2026-08-31 14:12:55,319.319 INFO    ] 2026-08-31 14:12:55
[2026-08-31 14:12:55,355.355 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:12:55,643.643 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:12:55,648.648 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:12:55,840.840 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:12:55,887.887 INFO    ] time= 31/08/2026 14:12:55
[2026-08-31 14:12:55,893.893 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:12:55,911.911 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:12:56,061.061 INFO    ] No existing commands found in stream
[2026-08-31 14:13:01,098.098 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:13:01,100.100 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-08-31 14:13:04,279.279 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 14:13:04,282.282 INFO    ] Checking for system updates...
[2026-08-31 14:13:04,320.320 INFO    ] 200
[2026-08-31 14:13:04,322.322 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:13:04,375.375 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:13:04,378.378 INFO    ] No update needed
[2026-08-31 14:13:04,380.380 INFO    ] Checking for camera pi updates...
[2026-08-31 14:13:04,413.413 INFO    ] 200
[2026-08-31 14:13:04,415.415 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:13:04,458.458 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:13:04,546.546 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:13:04,549.549 INFO    ] No camera update needed
[2026-08-31 14:13:04,551.551 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:13:04,553.553 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:13:04,559.559 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:13:04,571.571 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:13:06,611.611 INFO    ] ================================================
[2026-08-31 14:13:06,626.626 INFO    ] Launching Daemon at Mon Aug 31 14:13:06 IST 2026
[2026-08-31 14:13:06,637.637 INFO    ] ================================================
[2026-08-31 14:13:07,232.232 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:13:07
[2026-08-31 14:13:07,874.874 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:13:08,170.170 INFO    ] Initializing speech engine...
[2026-08-31 14:13:08,179.179 INFO    ] 2026-08-31 14:13:08
[2026-08-31 14:13:08,463.463 INFO    ] 2026-08-31 14:13:08
[2026-08-31 14:13:08,509.509 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:13:08,737.737 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:13:08,743.743 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:13:08,960.960 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:13:09,008.008 INFO    ] time= 31/08/2026 14:13:08
[2026-08-31 14:13:09,014.014 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:13:09,035.035 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:13:09,167.167 INFO    ] No existing commands found in stream
[2026-08-31 14:13:14,183.183 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:13:14,186.186 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-08-31 14:13:18,336.336 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 14:13:18,339.339 INFO    ] Checking for system updates...
[2026-08-31 14:13:18,380.380 INFO    ] 200
[2026-08-31 14:13:18,383.383 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:13:18,453.453 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:13:18,456.456 INFO    ] No update needed
[2026-08-31 14:13:18,459.459 INFO    ] Checking for camera pi updates...
[2026-08-31 14:13:18,527.527 INFO    ] 200
[2026-08-31 14:13:18,530.530 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:13:18,582.582 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:13:18,649.649 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:13:18,651.651 INFO    ] No camera update needed
[2026-08-31 14:13:18,653.653 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:13:18,656.656 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:13:18,661.661 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:13:18,666.666 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:13:20,706.706 INFO    ] ================================================
[2026-08-31 14:13:20,721.721 INFO    ] Launching Daemon at Mon Aug 31 14:13:20 IST 2026
[2026-08-31 14:13:20,733.733 INFO    ] ================================================
[2026-08-31 14:13:21,299.299 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:13:21
[2026-08-31 14:13:21,881.881 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:13:22,133.133 INFO    ] Initializing speech engine...
[2026-08-31 14:13:22,149.149 INFO    ] 2026-08-31 14:13:22
[2026-08-31 14:13:22,427.427 INFO    ] 2026-08-31 14:13:22
[2026-08-31 14:13:22,461.461 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:13:22,733.733 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:13:22,747.747 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:13:22,973.973 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:13:23,029.029 INFO    ] time= 31/08/2026 14:13:22
[2026-08-31 14:13:23,036.036 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:13:23,053.053 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:13:23,165.165 INFO    ] No existing commands found in stream
[2026-08-31 14:13:28,196.196 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:13:28,198.198 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-08-31 14:13:31,203.203 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 14:13:31,205.205 INFO    ] Checking for system updates...
[2026-08-31 14:13:31,241.241 INFO    ] 200
[2026-08-31 14:13:31,243.243 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:13:31,295.295 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:13:31,297.297 INFO    ] No update needed
[2026-08-31 14:13:31,300.300 INFO    ] Checking for camera pi updates...
[2026-08-31 14:13:31,336.336 INFO    ] 200
[2026-08-31 14:13:31,338.338 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:13:31,379.379 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:13:31,470.470 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:13:31,473.473 INFO    ] No camera update needed
[2026-08-31 14:13:31,477.477 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:13:31,480.480 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:13:31,487.487 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:13:31,493.493 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:13:33,538.538 INFO    ] ================================================
[2026-08-31 14:13:33,554.554 INFO    ] Launching Daemon at Mon Aug 31 14:13:33 IST 2026
[2026-08-31 14:13:33,565.565 INFO    ] ================================================
[2026-08-31 14:13:34,144.144 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:13:34
[2026-08-31 14:13:34,740.740 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:13:35,011.011 INFO    ] Initializing speech engine...
[2026-08-31 14:13:35,020.020 INFO    ] 2026-08-31 14:13:35
[2026-08-31 14:13:35,270.270 INFO    ] 2026-08-31 14:13:35
[2026-08-31 14:13:35,304.304 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:13:35,562.562 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:13:35,567.567 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:13:35,819.819 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:13:35,836.836 INFO    ] time= 31/08/2026 14:13:35
[2026-08-31 14:13:35,846.846 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:13:35,871.871 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:13:36,006.006 INFO    ] No existing commands found in stream
[2026-08-31 14:13:41,041.041 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:13:41,044.044 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-08-31 14:13:42,210.210 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 14:13:42,213.213 INFO    ] Checking for system updates...
[2026-08-31 14:13:42,249.249 INFO    ] 200
[2026-08-31 14:13:42,252.252 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:13:42,305.305 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:13:42,308.308 INFO    ] No update needed
[2026-08-31 14:13:42,311.311 INFO    ] Checking for camera pi updates...
[2026-08-31 14:13:42,349.349 INFO    ] 200
[2026-08-31 14:13:42,352.352 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:13:42,401.401 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:13:42,481.481 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:13:42,484.484 INFO    ] No camera update needed
[2026-08-31 14:13:42,486.486 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:13:42,489.489 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:13:42,496.496 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:13:42,502.502 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:13:44,545.545 INFO    ] ================================================
[2026-08-31 14:13:44,561.561 INFO    ] Launching Daemon at Mon Aug 31 14:13:44 IST 2026
[2026-08-31 14:13:44,572.572 INFO    ] ================================================
[2026-08-31 14:13:45,218.218 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:13:45
[2026-08-31 14:13:45,879.879 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:13:46,178.178 INFO    ] Initializing speech engine...
[2026-08-31 14:13:46,186.186 INFO    ] 2026-08-31 14:13:46
[2026-08-31 14:13:46,492.492 INFO    ] 2026-08-31 14:13:46
[2026-08-31 14:13:46,556.556 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:13:46,796.796 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:13:46,857.857 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:13:47,043.043 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:13:47,104.104 INFO    ] time= 31/08/2026 14:13:47
[2026-08-31 14:13:47,143.143 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:13:47,201.201 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:13:47,383.383 INFO    ] No existing commands found in stream
[2026-08-31 14:13:52,399.399 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:13:52,402.402 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-08-31 14:13:54,579.579 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 14:13:54,581.581 INFO    ] Checking for system updates...
[2026-08-31 14:13:54,617.617 INFO    ] 200
[2026-08-31 14:13:54,619.619 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:13:54,671.671 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:13:54,674.674 INFO    ] No update needed
[2026-08-31 14:13:54,676.676 INFO    ] Checking for camera pi updates...
[2026-08-31 14:13:54,709.709 INFO    ] 200
[2026-08-31 14:13:54,712.712 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:13:54,753.753 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:13:54,820.820 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:13:54,822.822 INFO    ] No camera update needed
[2026-08-31 14:13:54,825.825 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:13:54,827.827 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:13:54,832.832 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:13:54,837.837 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:13:56,876.876 INFO    ] ================================================
[2026-08-31 14:13:56,892.892 INFO    ] Launching Daemon at Mon Aug 31 14:13:56 IST 2026
[2026-08-31 14:13:56,902.902 INFO    ] ================================================
[2026-08-31 14:13:57,466.466 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:13:57
[2026-08-31 14:13:58,070.070 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:13:58,329.329 INFO    ] Initializing speech engine...
[2026-08-31 14:13:58,334.334 INFO    ] 2026-08-31 14:13:58
[2026-08-31 14:13:58,631.631 INFO    ] 2026-08-31 14:13:58
[2026-08-31 14:13:58,666.666 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:13:58,890.890 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:13:58,899.899 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:13:59,118.118 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:13:59,125.125 INFO    ] time= 31/08/2026 14:13:59
[2026-08-31 14:13:59,169.169 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:13:59,228.228 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:13:59,324.324 INFO    ] No existing commands found in stream
[2026-08-31 14:14:04,336.336 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:14:04,339.339 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-08-31 14:14:05,197.197 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 14:14:05,200.200 INFO    ] Checking for system updates...
[2026-08-31 14:14:05,240.240 INFO    ] 200
[2026-08-31 14:14:05,242.242 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:14:05,300.300 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:14:05,303.303 INFO    ] No update needed
[2026-08-31 14:14:05,305.305 INFO    ] Checking for camera pi updates...
[2026-08-31 14:14:05,339.339 INFO    ] 200
[2026-08-31 14:14:05,342.342 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:14:05,386.386 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:14:05,470.470 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:14:05,472.472 INFO    ] No camera update needed
[2026-08-31 14:14:05,475.475 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:14:05,477.477 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:14:05,483.483 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:14:05,488.488 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:14:07,531.531 INFO    ] ================================================
[2026-08-31 14:14:07,546.546 INFO    ] Launching Daemon at Mon Aug 31 14:14:07 IST 2026
[2026-08-31 14:14:07,557.557 INFO    ] ================================================
[2026-08-31 14:14:08,125.125 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:14:08
[2026-08-31 14:14:08,709.709 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:14:08,961.961 INFO    ] Initializing speech engine...
[2026-08-31 14:14:08,968.968 INFO    ] 2026-08-31 14:14:08
[2026-08-31 14:14:09,263.263 INFO    ] 2026-08-31 14:14:09
[2026-08-31 14:14:09,302.302 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:14:09,528.528 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:14:09,593.593 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:14:09,751.751 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:14:09,798.798 INFO    ] time= 31/08/2026 14:14:09
[2026-08-31 14:14:09,847.847 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:14:09,891.891 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:14:09,962.962 INFO    ] No existing commands found in stream
[2026-08-31 14:14:14,974.974 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:14:14,977.977 INFO    ] Waiting 4.00 seconds before fallback handling...
[2026-08-31 14:14:19,492.492 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 14:14:19,495.495 INFO    ] Checking for system updates...
[2026-08-31 14:14:19,530.530 INFO    ] 200
[2026-08-31 14:14:19,532.532 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:14:19,591.591 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:14:19,594.594 INFO    ] No update needed
[2026-08-31 14:14:19,596.596 INFO    ] Checking for camera pi updates...
[2026-08-31 14:14:19,630.630 INFO    ] 200
[2026-08-31 14:14:19,632.632 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:14:19,674.674 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:14:19,730.730 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:14:19,732.732 INFO    ] No camera update needed
[2026-08-31 14:14:19,734.734 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:14:19,737.737 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:14:19,742.742 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:14:19,747.747 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:14:21,786.786 INFO    ] ================================================
[2026-08-31 14:14:21,802.802 INFO    ] Launching Daemon at Mon Aug 31 14:14:21 IST 2026
[2026-08-31 14:14:21,813.813 INFO    ] ================================================
[2026-08-31 14:14:22,378.378 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:14:22
[2026-08-31 14:14:22,964.964 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:14:23,232.232 INFO    ] Initializing speech engine...
[2026-08-31 14:14:23,242.242 INFO    ] 2026-08-31 14:14:23
[2026-08-31 14:14:23,487.487 INFO    ] 2026-08-31 14:14:23
[2026-08-31 14:14:23,552.552 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:14:23,777.777 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:14:23,782.782 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:14:24,016.016 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:14:24,041.041 INFO    ] time= 31/08/2026 14:14:24
[2026-08-31 14:14:24,057.057 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:14:24,088.088 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:14:24,193.193 INFO    ] No existing commands found in stream
[2026-08-31 14:14:29,205.205 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:14:29,208.208 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-08-31 14:14:32,634.634 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 14:14:32,637.637 INFO    ] Checking for system updates...
[2026-08-31 14:14:32,674.674 INFO    ] 200
[2026-08-31 14:14:32,677.677 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:14:32,728.728 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:14:32,731.731 INFO    ] No update needed
[2026-08-31 14:14:32,734.734 INFO    ] Checking for camera pi updates...
[2026-08-31 14:14:32,768.768 INFO    ] 200
[2026-08-31 14:14:32,770.770 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:14:32,815.815 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:14:32,866.866 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:14:32,869.869 INFO    ] No camera update needed
[2026-08-31 14:14:32,871.871 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:14:32,873.873 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:14:32,878.878 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:14:32,883.883 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:14:34,924.924 INFO    ] ================================================
[2026-08-31 14:14:34,939.939 INFO    ] Launching Daemon at Mon Aug 31 14:14:34 IST 2026
[2026-08-31 14:14:34,949.949 INFO    ] ================================================
[2026-08-31 14:14:35,525.525 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:14:35
[2026-08-31 14:14:36,110.110 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:14:36,367.367 INFO    ] Initializing speech engine...
[2026-08-31 14:14:36,383.383 INFO    ] 2026-08-31 14:14:36
[2026-08-31 14:14:36,649.649 INFO    ] 2026-08-31 14:14:36
[2026-08-31 14:14:36,683.683 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:14:36,937.937 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:14:36,941.941 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:14:37,075.075 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:14:37,134.134 INFO    ] time= 31/08/2026 14:14:37
[2026-08-31 14:14:37,188.188 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:14:37,205.205 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:14:37,337.337 INFO    ] No existing commands found in stream
[2026-08-31 14:14:42,361.361 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:14:42,363.363 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-08-31 14:14:46,243.243 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 14:14:46,245.245 INFO    ] Checking for system updates...
[2026-08-31 14:14:46,281.281 INFO    ] 200
[2026-08-31 14:14:46,284.284 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:14:46,342.342 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:14:46,344.344 INFO    ] No update needed
[2026-08-31 14:14:46,346.346 INFO    ] Checking for camera pi updates...
[2026-08-31 14:14:46,383.383 INFO    ] 200
[2026-08-31 14:14:46,385.385 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:14:46,426.426 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:14:46,517.517 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:14:46,520.520 INFO    ] No camera update needed
[2026-08-31 14:14:46,522.522 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:14:46,524.524 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:14:46,530.530 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:14:46,535.535 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:14:48,575.575 INFO    ] ================================================
[2026-08-31 14:14:48,589.589 INFO    ] Launching Daemon at Mon Aug 31 14:14:48 IST 2026
[2026-08-31 14:14:48,600.600 INFO    ] ================================================
[2026-08-31 14:14:49,167.167 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:14:49
[2026-08-31 14:14:49,754.754 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:14:50,007.007 INFO    ] Initializing speech engine...
[2026-08-31 14:14:50,013.013 INFO    ] 2026-08-31 14:14:50
[2026-08-31 14:14:50,306.306 INFO    ] 2026-08-31 14:14:50
[2026-08-31 14:14:50,346.346 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:14:50,567.567 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:14:50,607.607 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:14:50,788.788 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:14:50,795.795 INFO    ] time= 31/08/2026 14:14:50
[2026-08-31 14:14:50,844.844 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:14:50,888.888 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:14:50,994.994 INFO    ] No existing commands found in stream
[2026-08-31 14:14:56,006.006 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:14:56,009.009 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-08-31 14:14:58,876.876 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 14:14:58,879.879 INFO    ] Checking for system updates...
[2026-08-31 14:14:58,914.914 INFO    ] 200
[2026-08-31 14:14:58,917.917 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:14:58,969.969 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:14:58,971.971 INFO    ] No update needed
[2026-08-31 14:14:58,973.973 INFO    ] Checking for camera pi updates...
[2026-08-31 14:14:59,010.010 INFO    ] 200
[2026-08-31 14:14:59,013.013 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:14:59,053.053 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:14:59,233.233 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:14:59,236.236 INFO    ] No camera update needed
[2026-08-31 14:14:59,239.239 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:14:59,242.242 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:14:59,247.247 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:14:59,252.252 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:15:01,292.292 INFO    ] ================================================
[2026-08-31 14:15:01,307.307 INFO    ] Launching Daemon at Mon Aug 31 14:15:01 IST 2026
[2026-08-31 14:15:01,317.317 INFO    ] ================================================
[2026-08-31 14:15:02,243.243 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:15:02
[2026-08-31 14:15:03,022.022 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:15:03,330.330 INFO    ] Initializing speech engine...
[2026-08-31 14:15:03,348.348 INFO    ] 2026-08-31 14:15:03
[2026-08-31 14:15:03,664.664 INFO    ] 2026-08-31 14:15:03
[2026-08-31 14:15:03,706.706 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:15:03,932.932 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:15:03,958.958 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:15:04,116.116 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:15:04,126.126 INFO    ] time= 31/08/2026 14:15:04
[2026-08-31 14:15:04,178.178 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:15:04,206.206 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:15:04,348.348 INFO    ] No existing commands found in stream
[2026-08-31 14:15:09,360.360 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:15:09,363.363 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-08-31 14:15:13,553.553 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 14:15:13,555.555 INFO    ] Checking for system updates...
[2026-08-31 14:15:13,594.594 INFO    ] 200
[2026-08-31 14:15:13,596.596 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:15:13,648.648 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:15:13,651.651 INFO    ] No update needed
[2026-08-31 14:15:13,654.654 INFO    ] Checking for camera pi updates...
[2026-08-31 14:15:13,689.689 INFO    ] 200
[2026-08-31 14:15:13,691.691 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:15:13,735.735 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:15:13,816.816 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:15:13,818.818 INFO    ] No camera update needed
[2026-08-31 14:15:13,821.821 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:15:13,823.823 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:15:13,828.828 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:15:13,833.833 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:15:15,874.874 INFO    ] ================================================
[2026-08-31 14:15:15,889.889 INFO    ] Launching Daemon at Mon Aug 31 14:15:15 IST 2026
[2026-08-31 14:15:15,900.900 INFO    ] ================================================
[2026-08-31 14:15:16,480.480 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:15:16
[2026-08-31 14:15:17,078.078 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:15:17,335.335 INFO    ] Initializing speech engine...
[2026-08-31 14:15:17,344.344 INFO    ] 2026-08-31 14:15:17
[2026-08-31 14:15:17,638.638 INFO    ] 2026-08-31 14:15:17
[2026-08-31 14:15:17,673.673 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:15:17,865.865 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:15:17,872.872 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:15:18,041.041 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:15:18,049.049 INFO    ] time= 31/08/2026 14:15:18
[2026-08-31 14:15:18,054.054 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:15:18,061.061 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:15:18,133.133 INFO    ] No existing commands found in stream
[2026-08-31 14:15:23,146.146 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:15:23,149.149 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-08-31 14:15:24,618.618 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 14:15:24,620.620 INFO    ] Checking for system updates...
[2026-08-31 14:15:24,656.656 INFO    ] 200
[2026-08-31 14:15:24,659.659 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:15:24,717.717 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:15:24,720.720 INFO    ] No update needed
[2026-08-31 14:15:24,722.722 INFO    ] Checking for camera pi updates...
[2026-08-31 14:15:24,756.756 INFO    ] 200
[2026-08-31 14:15:24,758.758 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:15:24,799.799 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:15:24,880.880 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:15:24,883.883 INFO    ] No camera update needed
[2026-08-31 14:15:24,885.885 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:15:24,888.888 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:15:24,894.894 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:15:24,899.899 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:15:26,938.938 INFO    ] ================================================
[2026-08-31 14:15:26,953.953 INFO    ] Launching Daemon at Mon Aug 31 14:15:26 IST 2026
[2026-08-31 14:15:26,964.964 INFO    ] ================================================
[2026-08-31 14:15:27,600.600 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:15:27
[2026-08-31 14:15:28,257.257 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:15:28,542.542 INFO    ] Initializing speech engine...
[2026-08-31 14:15:28,562.562 INFO    ] 2026-08-31 14:15:28
[2026-08-31 14:15:28,825.825 INFO    ] 2026-08-31 14:15:28
[2026-08-31 14:15:28,891.891 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:15:29,125.125 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:15:29,132.132 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:15:29,345.345 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:15:29,397.397 INFO    ] time= 31/08/2026 14:15:29
[2026-08-31 14:15:29,404.404 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:15:29,423.423 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:15:29,555.555 INFO    ] No existing commands found in stream
[2026-08-31 14:15:34,570.570 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:15:34,573.573 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-08-31 14:15:37,057.057 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 14:15:37,060.060 INFO    ] Checking for system updates...
[2026-08-31 14:15:37,096.096 INFO    ] 200
[2026-08-31 14:15:37,099.099 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:15:37,152.152 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:15:37,154.154 INFO    ] No update needed
[2026-08-31 14:15:37,156.156 INFO    ] Checking for camera pi updates...
[2026-08-31 14:15:37,190.190 INFO    ] 200
[2026-08-31 14:15:37,192.192 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:15:37,234.234 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:15:37,335.335 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:15:37,337.337 INFO    ] No camera update needed
[2026-08-31 14:15:37,340.340 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:15:37,342.342 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:15:37,347.347 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:15:37,352.352 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:15:39,392.392 INFO    ] ================================================
[2026-08-31 14:15:39,409.409 INFO    ] Launching Daemon at Mon Aug 31 14:15:39 IST 2026
[2026-08-31 14:15:39,420.420 INFO    ] ================================================
[2026-08-31 14:15:40,000.000 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:15:39
[2026-08-31 14:15:40,598.598 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:15:40,883.883 INFO    ] Initializing speech engine...
[2026-08-31 14:15:40,894.894 INFO    ] 2026-08-31 14:15:40
[2026-08-31 14:15:41,159.159 INFO    ] 2026-08-31 14:15:41
[2026-08-31 14:15:41,196.196 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:15:41,417.417 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:15:41,480.480 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:15:41,672.672 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:15:41,717.717 INFO    ] time= 31/08/2026 14:15:41
[2026-08-31 14:15:41,768.768 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:15:41,785.785 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:15:41,930.930 INFO    ] No existing commands found in stream
[2026-08-31 14:15:46,945.945 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:15:46,948.948 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-08-31 14:15:49,473.473 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 14:15:49,475.475 INFO    ] Checking for system updates...
[2026-08-31 14:15:49,512.512 INFO    ] 200
[2026-08-31 14:15:49,514.514 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:15:49,573.573 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:15:49,575.575 INFO    ] No update needed
[2026-08-31 14:15:49,578.578 INFO    ] Checking for camera pi updates...
[2026-08-31 14:15:49,612.612 INFO    ] 200
[2026-08-31 14:15:49,614.614 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:15:49,655.655 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:15:49,734.734 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:15:49,736.736 INFO    ] No camera update needed
[2026-08-31 14:15:49,739.739 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:15:49,741.741 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:15:49,747.747 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:15:49,752.752 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:15:51,792.792 INFO    ] ================================================
[2026-08-31 14:15:51,808.808 INFO    ] Launching Daemon at Mon Aug 31 14:15:51 IST 2026
[2026-08-31 14:15:51,820.820 INFO    ] ================================================
[2026-08-31 14:15:52,398.398 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:15:52
[2026-08-31 14:15:52,992.992 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:15:53,264.264 INFO    ] Initializing speech engine...
[2026-08-31 14:15:53,274.274 INFO    ] 2026-08-31 14:15:53
[2026-08-31 14:15:53,521.521 INFO    ] 2026-08-31 14:15:53
[2026-08-31 14:15:53,557.557 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:15:53,813.813 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:15:53,817.817 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:15:54,070.070 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:15:54,076.076 INFO    ] time= 31/08/2026 14:15:54
[2026-08-31 14:15:54,094.094 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:15:54,101.101 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:15:54,229.229 INFO    ] No existing commands found in stream
[2026-08-31 14:15:59,254.254 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:15:59,256.256 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-08-31 14:16:03,612.612 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 14:16:03,615.615 INFO    ] Checking for system updates...
[2026-08-31 14:16:03,653.653 INFO    ] 200
[2026-08-31 14:16:03,656.656 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:16:03,708.708 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:16:03,711.711 INFO    ] No update needed
[2026-08-31 14:16:03,713.713 INFO    ] Checking for camera pi updates...
[2026-08-31 14:16:03,747.747 INFO    ] 200
[2026-08-31 14:16:03,749.749 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:16:03,794.794 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:16:03,881.881 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:16:03,883.883 INFO    ] No camera update needed
[2026-08-31 14:16:03,885.885 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:16:03,888.888 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:16:03,893.893 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:16:03,898.898 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:16:05,939.939 INFO    ] ================================================
[2026-08-31 14:16:05,954.954 INFO    ] Launching Daemon at Mon Aug 31 14:16:05 IST 2026
[2026-08-31 14:16:05,965.965 INFO    ] ================================================
[2026-08-31 14:16:06,597.597 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:16:06
[2026-08-31 14:16:07,249.249 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:16:07,543.543 INFO    ] Initializing speech engine...
[2026-08-31 14:16:07,552.552 INFO    ] 2026-08-31 14:16:07
[2026-08-31 14:16:07,823.823 INFO    ] 2026-08-31 14:16:07
[2026-08-31 14:16:07,858.858 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:16:08,105.105 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:16:08,115.115 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:16:08,342.342 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:16:08,375.375 INFO    ] time= 31/08/2026 14:16:08
[2026-08-31 14:16:08,393.393 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:16:08,403.403 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:16:08,527.527 INFO    ] No existing commands found in stream
[2026-08-31 14:16:13,542.542 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:16:13,545.545 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-08-31 14:16:17,953.953 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 14:16:17,956.956 INFO    ] Checking for system updates...
[2026-08-31 14:16:17,993.993 INFO    ] 200
[2026-08-31 14:16:17,996.996 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:16:18,049.049 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:16:18,052.052 INFO    ] No update needed
[2026-08-31 14:16:18,054.054 INFO    ] Checking for camera pi updates...
[2026-08-31 14:16:18,089.089 INFO    ] 200
[2026-08-31 14:16:18,092.092 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:16:18,133.133 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:16:18,213.213 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:16:18,216.216 INFO    ] No camera update needed
[2026-08-31 14:16:18,219.219 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:16:18,221.221 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:16:18,228.228 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:16:18,234.234 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:16:20,275.275 INFO    ] ================================================
[2026-08-31 14:16:20,291.291 INFO    ] Launching Daemon at Mon Aug 31 14:16:20 IST 2026
[2026-08-31 14:16:20,302.302 INFO    ] ================================================
[2026-08-31 14:16:20,942.942 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:16:20
[2026-08-31 14:16:21,601.601 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:16:21,902.902 INFO    ] Initializing speech engine...
[2026-08-31 14:16:21,915.915 INFO    ] 2026-08-31 14:16:21
[2026-08-31 14:16:22,200.200 INFO    ] 2026-08-31 14:16:22
[2026-08-31 14:16:22,245.245 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:16:22,470.470 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:16:22,480.480 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:16:22,618.618 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:16:22,678.678 INFO    ] time= 31/08/2026 14:16:22
[2026-08-31 14:16:22,738.738 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:16:22,755.755 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:16:22,909.909 INFO    ] No existing commands found in stream
[2026-08-31 14:16:27,944.944 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:16:27,948.948 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-08-31 14:16:29,232.232 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 14:16:29,235.235 INFO    ] Checking for system updates...
[2026-08-31 14:16:29,273.273 INFO    ] 200
[2026-08-31 14:16:29,275.275 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:16:29,328.328 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:16:29,330.330 INFO    ] No update needed
[2026-08-31 14:16:29,333.333 INFO    ] Checking for camera pi updates...
[2026-08-31 14:16:29,366.366 INFO    ] 200
[2026-08-31 14:16:29,369.369 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:16:29,413.413 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:16:29,529.529 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:16:29,532.532 INFO    ] No camera update needed
[2026-08-31 14:16:29,534.534 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:16:29,536.536 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:16:29,542.542 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:16:29,547.547 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:16:31,589.589 INFO    ] ================================================
[2026-08-31 14:16:31,604.604 INFO    ] Launching Daemon at Mon Aug 31 14:16:31 IST 2026
[2026-08-31 14:16:31,615.615 INFO    ] ================================================
[2026-08-31 14:16:32,284.284 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:16:32
[2026-08-31 14:16:32,975.975 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:16:33,258.258 INFO    ] Initializing speech engine...
[2026-08-31 14:16:33,278.278 INFO    ] 2026-08-31 14:16:33
[2026-08-31 14:16:33,538.538 INFO    ] 2026-08-31 14:16:33
[2026-08-31 14:16:33,582.582 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:16:33,829.829 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:16:33,838.838 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:16:33,974.974 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:16:34,039.039 INFO    ] time= 31/08/2026 14:16:33
[2026-08-31 14:16:34,084.084 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:16:34,107.107 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:16:34,249.249 INFO    ] No existing commands found in stream
[2026-08-31 14:16:39,264.264 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:16:39,268.268 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-08-31 14:16:39,806.806 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 14:16:39,809.809 INFO    ] Checking for system updates...
[2026-08-31 14:16:39,845.845 INFO    ] 200
[2026-08-31 14:16:39,848.848 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:16:39,908.908 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:16:39,911.911 INFO    ] No update needed
[2026-08-31 14:16:39,914.914 INFO    ] Checking for camera pi updates...
[2026-08-31 14:16:39,951.951 INFO    ] 200
[2026-08-31 14:16:39,954.954 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:16:39,995.995 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:16:40,098.098 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:16:40,101.101 INFO    ] No camera update needed
[2026-08-31 14:16:40,103.103 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:16:40,106.106 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:16:40,112.112 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:16:40,118.118 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:16:42,158.158 INFO    ] ================================================
[2026-08-31 14:16:42,173.173 INFO    ] Launching Daemon at Mon Aug 31 14:16:42 IST 2026
[2026-08-31 14:16:42,184.184 INFO    ] ================================================
[2026-08-31 14:16:42,750.750 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:16:42
[2026-08-31 14:16:43,333.333 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:16:43,588.588 INFO    ] Initializing speech engine...
[2026-08-31 14:16:43,596.596 INFO    ] 2026-08-31 14:16:43
[2026-08-31 14:16:43,884.884 INFO    ] 2026-08-31 14:16:43
[2026-08-31 14:16:43,922.922 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:16:44,203.203 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:16:44,213.213 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:16:44,362.362 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:16:44,403.403 INFO    ] time= 31/08/2026 14:16:44
[2026-08-31 14:16:44,436.436 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:16:44,491.491 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:16:44,649.649 INFO    ] No existing commands found in stream
[2026-08-31 14:16:49,674.674 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:16:49,676.676 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-08-31 14:16:50,514.514 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 14:16:50,517.517 INFO    ] Checking for system updates...
[2026-08-31 14:16:50,553.553 INFO    ] 200
[2026-08-31 14:16:50,556.556 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:16:50,611.611 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:16:50,614.614 INFO    ] No update needed
[2026-08-31 14:16:50,616.616 INFO    ] Checking for camera pi updates...
[2026-08-31 14:16:50,650.650 INFO    ] 200
[2026-08-31 14:16:50,653.653 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:16:50,695.695 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:16:50,800.800 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:16:50,803.803 INFO    ] No camera update needed
[2026-08-31 14:16:50,805.805 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:16:50,808.808 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:16:50,814.814 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:16:50,820.820 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:16:52,862.862 INFO    ] ================================================
[2026-08-31 14:16:52,877.877 INFO    ] Launching Daemon at Mon Aug 31 14:16:52 IST 2026
[2026-08-31 14:16:52,888.888 INFO    ] ================================================
[2026-08-31 14:16:53,464.464 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:16:53
[2026-08-31 14:16:54,052.052 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:16:54,320.320 INFO    ] Initializing speech engine...
[2026-08-31 14:16:54,330.330 INFO    ] 2026-08-31 14:16:54
[2026-08-31 14:16:54,576.576 INFO    ] 2026-08-31 14:16:54
[2026-08-31 14:16:54,611.611 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:16:54,862.862 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:16:54,871.871 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:16:55,087.087 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:16:55,129.129 INFO    ] time= 31/08/2026 14:16:55
[2026-08-31 14:16:55,134.134 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:16:55,155.155 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:16:55,283.283 INFO    ] No existing commands found in stream
[2026-08-31 14:17:00,302.302 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:17:00,305.305 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-08-31 14:17:01,679.679 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 14:17:01,683.683 INFO    ] Checking for system updates...
[2026-08-31 14:17:01,736.736 INFO    ] 200
[2026-08-31 14:17:01,739.739 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:17:01,813.813 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:17:01,816.816 INFO    ] No update needed
[2026-08-31 14:17:01,819.819 INFO    ] Checking for camera pi updates...
[2026-08-31 14:17:01,863.863 INFO    ] 200
[2026-08-31 14:17:01,866.866 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:17:01,915.915 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:17:02,123.123 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:17:02,132.132 INFO    ] No camera update needed
[2026-08-31 14:17:02,136.136 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:17:02,139.139 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:17:02,145.145 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:17:02,152.152 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:17:04,193.193 INFO    ] ================================================
[2026-08-31 14:17:04,208.208 INFO    ] Launching Daemon at Mon Aug 31 14:17:04 IST 2026
[2026-08-31 14:17:04,219.219 INFO    ] ================================================
[2026-08-31 14:17:04,860.860 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:17:04
[2026-08-31 14:17:05,515.515 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:17:05,820.820 INFO    ] Initializing speech engine...
[2026-08-31 14:17:05,834.834 INFO    ] 2026-08-31 14:17:05
[2026-08-31 14:17:06,139.139 INFO    ] 2026-08-31 14:17:06
[2026-08-31 14:17:06,214.214 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:17:06,524.524 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:17:06,550.550 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:17:06,784.784 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:17:06,820.820 INFO    ] time= 31/08/2026 14:17:06
[2026-08-31 14:17:06,880.880 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:17:06,924.924 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:17:07,074.074 INFO    ] No existing commands found in stream
[2026-08-31 14:17:12,086.086 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:17:12,089.089 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-08-31 14:17:15,620.620 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 14:17:15,623.623 INFO    ] Checking for system updates...
[2026-08-31 14:17:15,660.660 INFO    ] 200
[2026-08-31 14:17:15,662.662 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:17:15,715.715 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:17:15,718.718 INFO    ] No update needed
[2026-08-31 14:17:15,720.720 INFO    ] Checking for camera pi updates...
[2026-08-31 14:17:15,754.754 INFO    ] 200
[2026-08-31 14:17:15,757.757 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:17:15,802.802 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:17:15,889.889 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:17:15,892.892 INFO    ] No camera update needed
[2026-08-31 14:17:15,894.894 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:17:15,896.896 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:17:15,902.902 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:17:15,907.907 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:17:17,947.947 INFO    ] ================================================
[2026-08-31 14:17:17,963.963 INFO    ] Launching Daemon at Mon Aug 31 14:17:17 IST 2026
[2026-08-31 14:17:17,973.973 INFO    ] ================================================
[2026-08-31 14:17:18,551.551 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:17:18
[2026-08-31 14:17:19,148.148 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:17:19,412.412 INFO    ] Initializing speech engine...
[2026-08-31 14:17:19,426.426 INFO    ] 2026-08-31 14:17:19
[2026-08-31 14:17:19,708.708 INFO    ] 2026-08-31 14:17:19
[2026-08-31 14:17:19,745.745 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:17:20,279.279 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:17:20,298.298 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:17:20,525.525 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:17:20,557.557 INFO    ] time= 31/08/2026 14:17:20
[2026-08-31 14:17:20,604.604 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:17:20,664.664 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:17:21,033.033 INFO    ] No existing commands found in stream
[2026-08-31 14:17:26,046.046 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:17:26,049.049 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-08-31 14:17:26,677.677 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 14:17:26,680.680 INFO    ] Checking for system updates...
[2026-08-31 14:17:26,728.728 INFO    ] 200
[2026-08-31 14:17:26,731.731 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:17:26,787.787 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:17:26,790.790 INFO    ] No update needed
[2026-08-31 14:17:26,793.793 INFO    ] Checking for camera pi updates...
[2026-08-31 14:17:26,828.828 INFO    ] 200
[2026-08-31 14:17:26,831.831 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:17:26,871.871 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:17:26,952.952 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:17:26,955.955 INFO    ] No camera update needed
[2026-08-31 14:17:26,957.957 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:17:26,959.959 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:17:26,965.965 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:17:26,970.970 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:17:29,011.011 INFO    ] ================================================
[2026-08-31 14:17:29,026.026 INFO    ] Launching Daemon at Mon Aug 31 14:17:29 IST 2026
[2026-08-31 14:17:29,036.036 INFO    ] ================================================
[2026-08-31 14:17:29,671.671 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:17:29
[2026-08-31 14:17:30,324.324 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:17:30,625.625 INFO    ] Initializing speech engine...
[2026-08-31 14:17:30,633.633 INFO    ] 2026-08-31 14:17:30
[2026-08-31 14:17:30,910.910 INFO    ] 2026-08-31 14:17:30
[2026-08-31 14:17:30,961.961 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:17:31,254.254 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:17:31,263.263 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:17:31,633.633 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:17:31,680.680 INFO    ] time= 31/08/2026 14:17:31
[2026-08-31 14:17:31,748.748 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:17:31,784.784 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:17:31,956.956 INFO    ] No existing commands found in stream
[2026-08-31 14:17:36,968.968 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:17:36,971.971 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-08-31 14:17:42,841.841 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 14:17:42,844.844 INFO    ] Checking for system updates...
[2026-08-31 14:17:42,884.884 INFO    ] 200
[2026-08-31 14:17:42,886.886 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:17:42,938.938 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:17:42,940.940 INFO    ] No update needed
[2026-08-31 14:17:42,942.942 INFO    ] Checking for camera pi updates...
[2026-08-31 14:17:42,975.975 INFO    ] 200
[2026-08-31 14:17:42,978.978 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:17:43,023.023 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:17:43,103.103 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:17:43,105.105 INFO    ] No camera update needed
[2026-08-31 14:17:43,108.108 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:17:43,110.110 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:17:43,115.115 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:17:43,120.120 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:17:45,160.160 INFO    ] ================================================
[2026-08-31 14:17:45,176.176 INFO    ] Launching Daemon at Mon Aug 31 14:17:45 IST 2026
[2026-08-31 14:17:45,186.186 INFO    ] ================================================
[2026-08-31 14:17:45,838.838 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:17:45
[2026-08-31 14:17:46,510.510 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:17:46,812.812 INFO    ] Initializing speech engine...
[2026-08-31 14:17:46,823.823 INFO    ] 2026-08-31 14:17:46
[2026-08-31 14:17:47,094.094 INFO    ] 2026-08-31 14:17:47
[2026-08-31 14:17:47,160.160 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:17:47,376.376 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:17:47,383.383 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:17:47,617.617 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:17:47,645.645 INFO    ] time= 31/08/2026 14:17:47
[2026-08-31 14:17:47,664.664 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:17:47,693.693 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:17:47,797.797 INFO    ] No existing commands found in stream
[2026-08-31 14:17:52,811.811 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:17:52,814.814 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-08-31 14:17:57,129.129 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 14:17:57,132.132 INFO    ] Checking for system updates...
[2026-08-31 14:17:57,168.168 INFO    ] 200
[2026-08-31 14:17:57,171.171 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:17:57,223.223 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:17:57,226.226 INFO    ] No update needed
[2026-08-31 14:17:57,229.229 INFO    ] Checking for camera pi updates...
[2026-08-31 14:17:57,267.267 INFO    ] 200
[2026-08-31 14:17:57,269.269 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:17:57,310.310 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:17:57,396.396 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:17:57,398.398 INFO    ] No camera update needed
[2026-08-31 14:17:57,401.401 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:17:57,403.403 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:17:57,408.408 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:17:57,413.413 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:17:59,455.455 INFO    ] ================================================
[2026-08-31 14:17:59,470.470 INFO    ] Launching Daemon at Mon Aug 31 14:17:59 IST 2026
[2026-08-31 14:17:59,481.481 INFO    ] ================================================
[2026-08-31 14:18:00,061.061 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:18:00
[2026-08-31 14:18:00,659.659 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:18:00,936.936 INFO    ] Initializing speech engine...
[2026-08-31 14:18:00,943.943 INFO    ] 2026-08-31 14:18:00
[2026-08-31 14:18:01,203.203 INFO    ] 2026-08-31 14:18:01
[2026-08-31 14:18:01,233.233 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:18:01,521.521 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:18:01,542.542 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:18:01,816.816 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:18:01,877.877 INFO    ] time= 31/08/2026 14:18:01
[2026-08-31 14:18:01,916.916 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:18:01,947.947 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:18:02,079.079 INFO    ] No existing commands found in stream
[2026-08-31 14:18:07,119.119 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:18:07,122.122 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-08-31 14:18:10,612.612 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 14:18:10,615.615 INFO    ] Checking for system updates...
[2026-08-31 14:18:10,652.652 INFO    ] 200
[2026-08-31 14:18:10,654.654 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:18:10,713.713 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:18:10,716.716 INFO    ] No update needed
[2026-08-31 14:18:10,719.719 INFO    ] Checking for camera pi updates...
[2026-08-31 14:18:10,757.757 INFO    ] 200
[2026-08-31 14:18:10,760.760 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:18:10,805.805 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:18:10,909.909 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:18:10,912.912 INFO    ] No camera update needed
[2026-08-31 14:18:10,915.915 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:18:10,917.917 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:18:10,923.923 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:18:10,929.929 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:18:12,971.971 INFO    ] ================================================
[2026-08-31 14:18:12,986.986 INFO    ] Launching Daemon at Mon Aug 31 14:18:12 IST 2026
[2026-08-31 14:18:13,997.997 INFO    ] ================================================
[2026-08-31 14:18:13,612.612 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:18:13
[2026-08-31 14:18:14,210.210 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:18:14,487.487 INFO    ] Initializing speech engine...
[2026-08-31 14:18:14,495.495 INFO    ] 2026-08-31 14:18:14
[2026-08-31 14:18:14,756.756 INFO    ] 2026-08-31 14:18:14
[2026-08-31 14:18:14,810.810 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:18:15,096.096 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:18:15,101.101 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:18:15,294.294 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:18:15,301.301 INFO    ] time= 31/08/2026 14:18:15
[2026-08-31 14:18:15,322.322 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:18:15,347.347 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:18:15,472.472 INFO    ] No existing commands found in stream
[2026-08-31 14:18:20,503.503 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:18:20,505.505 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-08-31 14:18:24,472.472 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 14:18:24,475.475 INFO    ] Checking for system updates...
[2026-08-31 14:18:24,511.511 INFO    ] 200
[2026-08-31 14:18:24,513.513 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:18:24,566.566 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:18:24,569.569 INFO    ] No update needed
[2026-08-31 14:18:24,571.571 INFO    ] Checking for camera pi updates...
[2026-08-31 14:18:24,605.605 INFO    ] 200
[2026-08-31 14:18:24,608.608 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:18:24,649.649 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:18:24,753.753 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:18:24,755.755 INFO    ] No camera update needed
[2026-08-31 14:18:24,758.758 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:18:24,760.760 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:18:24,766.766 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:18:24,771.771 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:18:26,811.811 INFO    ] ================================================
[2026-08-31 14:18:26,826.826 INFO    ] Launching Daemon at Mon Aug 31 14:18:26 IST 2026
[2026-08-31 14:18:26,837.837 INFO    ] ================================================
[2026-08-31 14:18:27,493.493 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:18:27
[2026-08-31 14:18:28,169.169 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:18:28,474.474 INFO    ] Initializing speech engine...
[2026-08-31 14:18:28,482.482 INFO    ] 2026-08-31 14:18:28
[2026-08-31 14:18:28,769.769 INFO    ] 2026-08-31 14:18:28
[2026-08-31 14:18:28,815.815 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:18:29,099.099 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:18:29,105.105 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:18:29,304.304 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:18:29,322.322 INFO    ] time= 31/08/2026 14:18:29
[2026-08-31 14:18:29,336.336 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:18:29,361.361 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:18:29,464.464 INFO    ] No existing commands found in stream
[2026-08-31 14:18:34,486.486 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:18:34,489.489 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-08-31 14:18:38,937.937 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 14:18:38,940.940 INFO    ] Checking for system updates...
[2026-08-31 14:18:38,979.979 INFO    ] 200
[2026-08-31 14:18:38,981.981 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:18:39,035.035 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:18:39,038.038 INFO    ] No update needed
[2026-08-31 14:18:39,040.040 INFO    ] Checking for camera pi updates...
[2026-08-31 14:18:39,074.074 INFO    ] 200
[2026-08-31 14:18:39,076.076 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:18:39,117.117 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:18:39,207.207 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:18:39,209.209 INFO    ] No camera update needed
[2026-08-31 14:18:39,212.212 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:18:39,214.214 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:18:39,219.219 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:18:39,224.224 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:18:41,264.264 INFO    ] ================================================
[2026-08-31 14:18:41,279.279 INFO    ] Launching Daemon at Mon Aug 31 14:18:41 IST 2026
[2026-08-31 14:18:41,290.290 INFO    ] ================================================
[2026-08-31 14:18:41,872.872 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:18:41
[2026-08-31 14:18:42,467.467 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:18:42,748.748 INFO    ] Initializing speech engine...
[2026-08-31 14:18:42,771.771 INFO    ] 2026-08-31 14:18:42
[2026-08-31 14:18:43,052.052 INFO    ] 2026-08-31 14:18:43
[2026-08-31 14:18:43,109.109 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:18:43,392.392 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:18:43,399.399 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:18:43,593.593 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:18:43,600.600 INFO    ] time= 31/08/2026 14:18:43
[2026-08-31 14:18:43,621.621 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:18:43,648.648 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:18:43,754.754 INFO    ] No existing commands found in stream
[2026-08-31 14:18:48,779.779 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:18:48,782.782 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-08-31 14:18:50,409.409 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 14:18:50,412.412 INFO    ] Checking for system updates...
[2026-08-31 14:18:50,449.449 INFO    ] 200
[2026-08-31 14:18:50,451.451 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:18:50,506.506 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:18:50,509.509 INFO    ] No update needed
[2026-08-31 14:18:50,511.511 INFO    ] Checking for camera pi updates...
[2026-08-31 14:18:50,548.548 INFO    ] 200
[2026-08-31 14:18:50,551.551 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:18:50,595.595 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:18:50,675.675 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:18:50,678.678 INFO    ] No camera update needed
[2026-08-31 14:18:50,680.680 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:18:50,682.682 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:18:50,688.688 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:18:50,692.692 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:18:52,733.733 INFO    ] ================================================
[2026-08-31 14:18:52,748.748 INFO    ] Launching Daemon at Mon Aug 31 14:18:52 IST 2026
[2026-08-31 14:18:52,758.758 INFO    ] ================================================
[2026-08-31 14:18:53,338.338 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:18:53
[2026-08-31 14:18:53,934.934 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:18:54,206.206 INFO    ] Initializing speech engine...
[2026-08-31 14:18:54,217.217 INFO    ] 2026-08-31 14:18:54
[2026-08-31 14:18:54,463.463 INFO    ] 2026-08-31 14:18:54
[2026-08-31 14:18:54,498.498 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:18:54,754.754 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:18:54,760.760 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:18:54,997.997 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:18:55,020.020 INFO    ] time= 31/08/2026 14:18:55
[2026-08-31 14:18:55,035.035 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:18:55,044.044 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:18:55,169.169 INFO    ] No existing commands found in stream
[2026-08-31 14:19:00,181.181 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:19:00,184.184 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-08-31 14:19:02,757.757 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 14:19:02,761.761 INFO    ] Checking for system updates...
[2026-08-31 14:19:02,817.817 INFO    ] 200
[2026-08-31 14:19:02,820.820 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:19:02,889.889 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:19:02,891.891 INFO    ] No update needed
[2026-08-31 14:19:02,894.894 INFO    ] Checking for camera pi updates...
[2026-08-31 14:19:02,928.928 INFO    ] 200
[2026-08-31 14:19:02,930.930 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:19:02,978.978 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:19:03,059.059 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:19:03,063.063 INFO    ] No camera update needed
[2026-08-31 14:19:03,066.066 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:19:03,069.069 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:19:03,076.076 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:19:03,083.083 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:19:05,126.126 INFO    ] ================================================
[2026-08-31 14:19:05,141.141 INFO    ] Launching Daemon at Mon Aug 31 14:19:05 IST 2026
[2026-08-31 14:19:05,152.152 INFO    ] ================================================
[2026-08-31 14:19:05,724.724 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:19:05
[2026-08-31 14:19:06,338.338 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:19:06,609.609 INFO    ] Initializing speech engine...
[2026-08-31 14:19:06,630.630 INFO    ] 2026-08-31 14:19:06
[2026-08-31 14:19:06,890.890 INFO    ] 2026-08-31 14:19:06
[2026-08-31 14:19:06,925.925 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:19:07,125.125 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:19:07,170.170 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:19:07,333.333 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:19:07,403.403 INFO    ] time= 31/08/2026 14:19:07
[2026-08-31 14:19:07,457.457 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:19:07,468.468 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:19:07,606.606 INFO    ] No existing commands found in stream
[2026-08-31 14:19:12,629.629 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:19:12,632.632 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-08-31 14:19:16,454.454 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 14:19:16,457.457 INFO    ] Checking for system updates...
[2026-08-31 14:19:16,499.499 INFO    ] 200
[2026-08-31 14:19:16,503.503 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:19:16,556.556 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:19:16,559.559 INFO    ] No update needed
[2026-08-31 14:19:16,562.562 INFO    ] Checking for camera pi updates...
[2026-08-31 14:19:16,596.596 INFO    ] 200
[2026-08-31 14:19:16,599.599 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:19:16,646.646 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:19:16,826.826 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:19:16,829.829 INFO    ] No camera update needed
[2026-08-31 14:19:16,831.831 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:19:16,833.833 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:19:16,839.839 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:19:16,843.843 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:19:18,884.884 INFO    ] ================================================
[2026-08-31 14:19:18,900.900 INFO    ] Launching Daemon at Mon Aug 31 14:19:18 IST 2026
[2026-08-31 14:19:18,911.911 INFO    ] ================================================
[2026-08-31 14:19:19,477.477 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:19:19
[2026-08-31 14:19:20,060.060 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:19:20,309.309 INFO    ] Initializing speech engine...
[2026-08-31 14:19:20,324.324 INFO    ] 2026-08-31 14:19:20
[2026-08-31 14:19:20,590.590 INFO    ] 2026-08-31 14:19:20
[2026-08-31 14:19:20,625.625 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:19:20,881.881 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:19:20,890.890 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:19:21,126.126 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:19:21,153.153 INFO    ] time= 31/08/2026 14:19:21
[2026-08-31 14:19:21,160.160 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:19:21,181.181 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:19:21,312.312 INFO    ] No existing commands found in stream
[2026-08-31 14:19:26,324.324 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:19:26,327.327 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-08-31 14:19:29,992.992 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 14:19:29,994.994 INFO    ] Checking for system updates...
[2026-08-31 14:19:30,031.031 INFO    ] 200
[2026-08-31 14:19:30,034.034 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:19:30,096.096 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:19:30,099.099 INFO    ] No update needed
[2026-08-31 14:19:30,102.102 INFO    ] Checking for camera pi updates...
[2026-08-31 14:19:30,142.142 INFO    ] 200
[2026-08-31 14:19:30,145.145 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:19:30,187.187 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:19:30,276.276 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:19:30,279.279 INFO    ] No camera update needed
[2026-08-31 14:19:30,282.282 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:19:30,285.285 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:19:30,291.291 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:19:30,297.297 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:19:32,342.342 INFO    ] ================================================
[2026-08-31 14:19:32,359.359 INFO    ] Launching Daemon at Mon Aug 31 14:19:32 IST 2026
[2026-08-31 14:19:32,371.371 INFO    ] ================================================
[2026-08-31 14:19:33,066.066 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:19:33
[2026-08-31 14:19:33,751.751 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:19:34,058.058 INFO    ] Initializing speech engine...
[2026-08-31 14:19:34,070.070 INFO    ] 2026-08-31 14:19:34
[2026-08-31 14:19:34,352.352 INFO    ] 2026-08-31 14:19:34
[2026-08-31 14:19:34,414.414 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:19:34,686.686 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:19:34,695.695 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:19:34,907.907 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:19:34,934.934 INFO    ] time= 31/08/2026 14:19:34
[2026-08-31 14:19:34,942.942 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:19:34,952.952 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:19:35,083.083 INFO    ] No existing commands found in stream
[2026-08-31 14:19:40,114.114 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:19:40,117.117 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-08-31 14:19:44,352.352 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 14:19:44,355.355 INFO    ] Checking for system updates...
[2026-08-31 14:19:44,395.395 INFO    ] 200
[2026-08-31 14:19:44,397.397 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:19:44,449.449 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:19:44,452.452 INFO    ] No update needed
[2026-08-31 14:19:44,455.455 INFO    ] Checking for camera pi updates...
[2026-08-31 14:19:44,488.488 INFO    ] 200
[2026-08-31 14:19:44,490.490 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:19:44,530.530 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:19:44,603.603 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:19:44,605.605 INFO    ] No camera update needed
[2026-08-31 14:19:44,608.608 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:19:44,610.610 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:19:44,615.615 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:19:44,620.620 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:19:46,660.660 INFO    ] ================================================
[2026-08-31 14:19:46,675.675 INFO    ] Launching Daemon at Mon Aug 31 14:19:46 IST 2026
[2026-08-31 14:19:46,686.686 INFO    ] ================================================
[2026-08-31 14:19:47,251.251 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:19:47
[2026-08-31 14:19:47,834.834 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:19:48,121.121 INFO    ] Initializing speech engine...
[2026-08-31 14:19:48,130.130 INFO    ] 2026-08-31 14:19:48
[2026-08-31 14:19:48,397.397 INFO    ] 2026-08-31 14:19:48
[2026-08-31 14:19:48,435.435 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:19:48,633.633 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:19:48,647.647 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:19:48,810.810 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:19:48,819.819 INFO    ] time= 31/08/2026 14:19:48
[2026-08-31 14:19:48,827.827 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:19:48,865.865 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:19:48,993.993 INFO    ] No existing commands found in stream
[2026-08-31 14:19:54,019.019 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:19:54,021.021 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-08-31 14:19:58,112.112 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 14:19:58,114.114 INFO    ] Checking for system updates...
[2026-08-31 14:19:58,150.150 INFO    ] 200
[2026-08-31 14:19:58,152.152 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:19:58,205.205 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:19:58,207.207 INFO    ] No update needed
[2026-08-31 14:19:58,210.210 INFO    ] Checking for camera pi updates...
[2026-08-31 14:19:58,243.243 INFO    ] 200
[2026-08-31 14:19:58,246.246 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:19:58,286.286 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:19:58,372.372 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:19:58,375.375 INFO    ] No camera update needed
[2026-08-31 14:19:58,377.377 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:19:58,380.380 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:19:58,385.385 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:19:58,390.390 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:20:00,430.430 INFO    ] ================================================
[2026-08-31 14:20:00,445.445 INFO    ] Launching Daemon at Mon Aug 31 14:20:00 IST 2026
[2026-08-31 14:20:00,455.455 INFO    ] ================================================
[2026-08-31 14:20:01,019.019 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:20:01
[2026-08-31 14:20:01,817.817 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:20:02,425.425 INFO    ] Initializing speech engine...
[2026-08-31 14:20:02,429.429 INFO    ] 2026-08-31 14:20:02
[2026-08-31 14:20:02,760.760 INFO    ] 2026-08-31 14:20:02
[2026-08-31 14:20:02,807.807 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:20:02,994.994 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:20:02,999.999 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:20:03,190.190 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:20:03,195.195 INFO    ] time= 31/08/2026 14:20:03
[2026-08-31 14:20:03,199.199 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:20:03,203.203 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:20:03,288.288 INFO    ] No existing commands found in stream
[2026-08-31 14:20:08,299.299 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:20:08,302.302 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-08-31 14:20:12,804.804 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 14:20:12,807.807 INFO    ] Checking for system updates...
[2026-08-31 14:20:12,844.844 INFO    ] 200
[2026-08-31 14:20:12,848.848 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:20:12,901.901 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:20:12,904.904 INFO    ] No update needed
[2026-08-31 14:20:12,907.907 INFO    ] Checking for camera pi updates...
[2026-08-31 14:20:12,947.947 INFO    ] 200
[2026-08-31 14:20:12,950.950 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:20:12,996.996 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:20:13,089.089 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:20:13,091.091 INFO    ] No camera update needed
[2026-08-31 14:20:13,093.093 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:20:13,096.096 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:20:13,101.101 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:20:13,106.106 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:20:15,145.145 INFO    ] ================================================
[2026-08-31 14:20:15,161.161 INFO    ] Launching Daemon at Mon Aug 31 14:20:15 IST 2026
[2026-08-31 14:20:15,172.172 INFO    ] ================================================
[2026-08-31 14:20:15,756.756 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:20:15
[2026-08-31 14:20:16,354.354 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:20:16,632.632 INFO    ] Initializing speech engine...
[2026-08-31 14:20:16,639.639 INFO    ] 2026-08-31 14:20:16
[2026-08-31 14:20:16,888.888 INFO    ] 2026-08-31 14:20:16
[2026-08-31 14:20:16,954.954 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:20:17,199.199 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:20:17,206.206 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:20:17,436.436 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:20:17,443.443 INFO    ] time= 31/08/2026 14:20:17
[2026-08-31 14:20:17,462.462 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:20:17,490.490 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:20:17,596.596 INFO    ] No existing commands found in stream
[2026-08-31 14:20:22,608.608 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:20:22,611.611 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-08-31 14:20:24,637.637 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 14:20:24,640.640 INFO    ] Checking for system updates...
[2026-08-31 14:20:24,680.680 INFO    ] 200
[2026-08-31 14:20:24,683.683 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:20:24,735.735 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:20:24,738.738 INFO    ] No update needed
[2026-08-31 14:20:24,740.740 INFO    ] Checking for camera pi updates...
[2026-08-31 14:20:24,774.774 INFO    ] 200
[2026-08-31 14:20:24,776.776 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:20:24,823.823 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:20:24,909.909 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:20:24,912.912 INFO    ] No camera update needed
[2026-08-31 14:20:24,914.914 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:20:24,916.916 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:20:24,922.922 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:20:24,927.927 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:20:26,967.967 INFO    ] ================================================
[2026-08-31 14:20:26,983.983 INFO    ] Launching Daemon at Mon Aug 31 14:20:26 IST 2026
[2026-08-31 14:20:27,995.995 INFO    ] ================================================
[2026-08-31 14:20:27,581.581 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:20:27
[2026-08-31 14:20:28,181.181 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:20:28,455.455 INFO    ] Initializing speech engine...
[2026-08-31 14:20:28,465.465 INFO    ] 2026-08-31 14:20:28
[2026-08-31 14:20:28,726.726 INFO    ] 2026-08-31 14:20:28
[2026-08-31 14:20:28,779.779 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:20:29,129.129 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:20:29,150.150 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:20:29,406.406 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:20:29,451.451 INFO    ] time= 31/08/2026 14:20:29
[2026-08-31 14:20:29,511.511 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:20:29,535.535 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:20:29,708.708 INFO    ] No existing commands found in stream
[2026-08-31 14:20:34,718.718 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:20:34,721.721 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-08-31 14:20:38,414.414 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 14:20:38,417.417 INFO    ] Checking for system updates...
[2026-08-31 14:20:38,461.461 INFO    ] 200
[2026-08-31 14:20:38,464.464 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:20:38,549.549 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:20:38,552.552 INFO    ] No update needed
[2026-08-31 14:20:38,554.554 INFO    ] Checking for camera pi updates...
[2026-08-31 14:20:38,588.588 INFO    ] 200
[2026-08-31 14:20:38,591.591 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:20:38,632.632 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:20:38,710.710 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:20:38,712.712 INFO    ] No camera update needed
[2026-08-31 14:20:38,715.715 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:20:38,717.717 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:20:38,722.722 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:20:38,728.728 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:20:40,769.769 INFO    ] ================================================
[2026-08-31 14:20:40,784.784 INFO    ] Launching Daemon at Mon Aug 31 14:20:40 IST 2026
[2026-08-31 14:20:40,794.794 INFO    ] ================================================
[2026-08-31 14:20:41,377.377 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:20:41
[2026-08-31 14:20:41,976.976 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:20:42,254.254 INFO    ] Initializing speech engine...
[2026-08-31 14:20:42,263.263 INFO    ] 2026-08-31 14:20:42
[2026-08-31 14:20:42,522.522 INFO    ] 2026-08-31 14:20:42
[2026-08-31 14:20:42,574.574 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:20:42,803.803 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:20:42,808.808 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:20:43,009.009 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:20:43,066.066 INFO    ] time= 31/08/2026 14:20:43
[2026-08-31 14:20:43,073.073 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:20:43,090.090 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:20:43,206.206 INFO    ] No existing commands found in stream
[2026-08-31 14:20:48,234.234 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:20:48,241.241 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-08-31 14:20:52,757.757 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 14:20:52,760.760 INFO    ] Checking for system updates...
[2026-08-31 14:20:52,795.795 INFO    ] 200
[2026-08-31 14:20:52,797.797 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:20:52,850.850 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:20:52,853.853 INFO    ] No update needed
[2026-08-31 14:20:52,855.855 INFO    ] Checking for camera pi updates...
[2026-08-31 14:20:52,894.894 INFO    ] 200
[2026-08-31 14:20:52,896.896 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:20:52,941.941 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:20:53,024.024 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:20:53,027.027 INFO    ] No camera update needed
[2026-08-31 14:20:53,029.029 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:20:53,032.032 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:20:53,037.037 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:20:53,042.042 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:20:55,084.084 INFO    ] ================================================
[2026-08-31 14:20:55,099.099 INFO    ] Launching Daemon at Mon Aug 31 14:20:55 IST 2026
[2026-08-31 14:20:55,110.110 INFO    ] ================================================
[2026-08-31 14:20:55,674.674 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:20:55
[2026-08-31 14:20:56,256.256 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:20:56,507.507 INFO    ] Initializing speech engine...
[2026-08-31 14:20:56,530.530 INFO    ] 2026-08-31 14:20:56
[2026-08-31 14:20:56,785.785 INFO    ] 2026-08-31 14:20:56
[2026-08-31 14:20:56,821.821 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:20:57,077.077 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:20:57,087.087 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:20:57,296.296 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:20:57,352.352 INFO    ] time= 31/08/2026 14:20:57
[2026-08-31 14:20:57,358.358 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:20:57,377.377 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:20:57,507.507 INFO    ] No existing commands found in stream
[2026-08-31 14:21:02,522.522 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:21:02,525.525 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-08-31 14:21:04,192.192 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 14:21:04,194.194 INFO    ] Checking for system updates...
[2026-08-31 14:21:04,229.229 INFO    ] 200
[2026-08-31 14:21:04,232.232 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:21:04,288.288 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:21:04,290.290 INFO    ] No update needed
[2026-08-31 14:21:04,292.292 INFO    ] Checking for camera pi updates...
[2026-08-31 14:21:04,325.325 INFO    ] 200
[2026-08-31 14:21:04,328.328 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:21:04,372.372 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:21:04,462.462 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:21:04,464.464 INFO    ] No camera update needed
[2026-08-31 14:21:04,466.466 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:21:04,469.469 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:21:04,474.474 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:21:04,479.479 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:21:06,521.521 INFO    ] ================================================
[2026-08-31 14:21:06,541.541 INFO    ] Launching Daemon at Mon Aug 31 14:21:06 IST 2026
[2026-08-31 14:21:06,552.552 INFO    ] ================================================
[2026-08-31 14:21:07,153.153 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:21:07
[2026-08-31 14:21:07,795.795 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:21:08,093.093 INFO    ] Initializing speech engine...
[2026-08-31 14:21:08,108.108 INFO    ] 2026-08-31 14:21:08
[2026-08-31 14:21:08,418.418 INFO    ] 2026-08-31 14:21:08
[2026-08-31 14:21:08,503.503 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:21:08,718.718 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:21:08,727.727 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:21:08,914.914 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:21:08,924.924 INFO    ] time= 31/08/2026 14:21:08
[2026-08-31 14:21:08,946.946 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:21:08,974.974 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:21:09,102.102 INFO    ] No existing commands found in stream
[2026-08-31 14:21:14,133.133 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:21:14,136.136 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-08-31 14:21:16,053.053 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 14:21:16,056.056 INFO    ] Checking for system updates...
[2026-08-31 14:21:16,096.096 INFO    ] 200
[2026-08-31 14:21:16,099.099 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:21:16,152.152 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:21:16,154.154 INFO    ] No update needed
[2026-08-31 14:21:16,157.157 INFO    ] Checking for camera pi updates...
[2026-08-31 14:21:16,191.191 INFO    ] 200
[2026-08-31 14:21:16,194.194 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:21:16,235.235 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:21:16,350.350 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:21:16,353.353 INFO    ] No camera update needed
[2026-08-31 14:21:16,355.355 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:21:16,358.358 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:21:16,364.364 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:21:16,370.370 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:21:18,411.411 INFO    ] ================================================
[2026-08-31 14:21:18,427.427 INFO    ] Launching Daemon at Mon Aug 31 14:21:18 IST 2026
[2026-08-31 14:21:18,438.438 INFO    ] ================================================
[2026-08-31 14:21:19,025.025 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:21:19
[2026-08-31 14:21:19,626.626 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:21:19,889.889 INFO    ] Initializing speech engine...
[2026-08-31 14:21:19,916.916 INFO    ] 2026-08-31 14:21:19
[2026-08-31 14:21:20,194.194 INFO    ] 2026-08-31 14:21:20
[2026-08-31 14:21:20,233.233 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:21:20,524.524 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:21:20,533.533 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:21:20,686.686 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:21:20,739.739 INFO    ] time= 31/08/2026 14:21:20
[2026-08-31 14:21:20,783.783 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:21:20,838.838 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:21:20,972.972 INFO    ] No existing commands found in stream
[2026-08-31 14:21:26,003.003 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:21:26,006.006 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-08-31 14:21:28,031.031 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 14:21:28,034.034 INFO    ] Checking for system updates...
[2026-08-31 14:21:28,073.073 INFO    ] 200
[2026-08-31 14:21:28,075.075 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:21:28,127.127 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:21:28,130.130 INFO    ] No update needed
[2026-08-31 14:21:28,132.132 INFO    ] Checking for camera pi updates...
[2026-08-31 14:21:28,170.170 INFO    ] 200
[2026-08-31 14:21:28,172.172 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:21:28,212.212 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:21:28,396.396 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:21:28,399.399 INFO    ] No camera update needed
[2026-08-31 14:21:28,404.404 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:21:28,407.407 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:21:28,412.412 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:21:28,418.418 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:21:30,459.459 INFO    ] ================================================
[2026-08-31 14:21:30,475.475 INFO    ] Launching Daemon at Mon Aug 31 14:21:30 IST 2026
[2026-08-31 14:21:30,487.487 INFO    ] ================================================
[2026-08-31 14:21:31,064.064 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:21:31
[2026-08-31 14:21:31,656.656 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:21:31,909.909 INFO    ] Initializing speech engine...
[2026-08-31 14:21:31,918.918 INFO    ] 2026-08-31 14:21:31
[2026-08-31 14:21:32,226.226 INFO    ] 2026-08-31 14:21:32
[2026-08-31 14:21:32,263.263 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:21:32,540.540 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:21:32,544.544 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:21:32,788.788 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:21:32,826.826 INFO    ] time= 31/08/2026 14:21:32
[2026-08-31 14:21:32,833.833 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:21:32,855.855 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:21:32,994.994 INFO    ] No existing commands found in stream
[2026-08-31 14:21:38,017.017 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:21:38,020.020 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-08-31 14:21:39,636.636 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 14:21:39,639.639 INFO    ] Checking for system updates...
[2026-08-31 14:21:39,674.674 INFO    ] 200
[2026-08-31 14:21:39,677.677 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:21:39,729.729 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:21:39,731.731 INFO    ] No update needed
[2026-08-31 14:21:39,734.734 INFO    ] Checking for camera pi updates...
[2026-08-31 14:21:39,771.771 INFO    ] 200
[2026-08-31 14:21:39,773.773 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:21:39,814.814 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:21:39,895.895 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:21:39,898.898 INFO    ] No camera update needed
[2026-08-31 14:21:39,900.900 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:21:39,903.903 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:21:39,908.908 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:21:39,913.913 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:21:41,954.954 INFO    ] ================================================
[2026-08-31 14:21:41,970.970 INFO    ] Launching Daemon at Mon Aug 31 14:21:41 IST 2026
[2026-08-31 14:21:41,981.981 INFO    ] ================================================
[2026-08-31 14:21:42,548.548 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:21:42
[2026-08-31 14:21:43,133.133 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:21:43,381.381 INFO    ] Initializing speech engine...
[2026-08-31 14:21:43,407.407 INFO    ] 2026-08-31 14:21:43
[2026-08-31 14:21:43,661.661 INFO    ] 2026-08-31 14:21:43
[2026-08-31 14:21:43,697.697 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:21:43,954.954 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:21:43,960.960 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:21:44,214.214 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:21:44,220.220 INFO    ] time= 31/08/2026 14:21:44
[2026-08-31 14:21:44,238.238 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:21:44,266.266 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:21:44,467.467 INFO    ] No existing commands found in stream
[2026-08-31 14:21:49,480.480 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:21:49,483.483 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-08-31 14:21:52,792.792 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 14:21:52,795.795 INFO    ] Checking for system updates...
[2026-08-31 14:21:52,831.831 INFO    ] 200
[2026-08-31 14:21:52,833.833 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:21:52,885.885 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:21:52,888.888 INFO    ] No update needed
[2026-08-31 14:21:52,890.890 INFO    ] Checking for camera pi updates...
[2026-08-31 14:21:52,924.924 INFO    ] 200
[2026-08-31 14:21:52,926.926 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:21:52,967.967 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:21:53,058.058 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:21:53,060.060 INFO    ] No camera update needed
[2026-08-31 14:21:53,063.063 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:21:53,065.065 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:21:53,071.071 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:21:53,076.076 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:21:55,120.120 INFO    ] ================================================
[2026-08-31 14:21:55,136.136 INFO    ] Launching Daemon at Mon Aug 31 14:21:55 IST 2026
[2026-08-31 14:21:55,146.146 INFO    ] ================================================
[2026-08-31 14:21:55,765.765 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:21:55
[2026-08-31 14:21:56,367.367 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:21:56,643.643 INFO    ] Initializing speech engine...
[2026-08-31 14:21:56,650.650 INFO    ] 2026-08-31 14:21:56
[2026-08-31 14:21:56,911.911 INFO    ] 2026-08-31 14:21:56
[2026-08-31 14:21:56,967.967 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:21:57,187.187 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:21:57,196.196 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:21:57,444.444 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:21:57,458.458 INFO    ] time= 31/08/2026 14:21:57
[2026-08-31 14:21:57,473.473 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:21:57,481.481 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:21:57,604.604 INFO    ] No existing commands found in stream
[2026-08-31 14:22:02,621.621 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:22:02,624.624 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-08-31 14:22:04,232.232 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 14:22:04,235.235 INFO    ] Checking for system updates...
[2026-08-31 14:22:04,273.273 INFO    ] 200
[2026-08-31 14:22:04,276.276 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:22:04,334.334 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:22:04,337.337 INFO    ] No update needed
[2026-08-31 14:22:04,339.339 INFO    ] Checking for camera pi updates...
[2026-08-31 14:22:04,376.376 INFO    ] 200
[2026-08-31 14:22:04,378.378 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:22:04,419.419 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:22:04,505.505 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:22:04,508.508 INFO    ] No camera update needed
[2026-08-31 14:22:04,510.510 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:22:04,513.513 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:22:04,518.518 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:22:04,523.523 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:22:06,564.564 INFO    ] ================================================
[2026-08-31 14:22:06,579.579 INFO    ] Launching Daemon at Mon Aug 31 14:22:06 IST 2026
[2026-08-31 14:22:06,589.589 INFO    ] ================================================
[2026-08-31 14:22:07,193.193 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:22:07
[2026-08-31 14:22:07,774.774 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:22:08,032.032 INFO    ] Initializing speech engine...
[2026-08-31 14:22:08,047.047 INFO    ] 2026-08-31 14:22:08
[2026-08-31 14:22:08,308.308 INFO    ] 2026-08-31 14:22:08
[2026-08-31 14:22:08,344.344 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:22:08,562.562 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:22:08,571.571 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:22:08,792.792 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:22:08,799.799 INFO    ] time= 31/08/2026 14:22:08
[2026-08-31 14:22:08,868.868 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:22:08,918.918 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:22:09,071.071 INFO    ] No existing commands found in stream
[2026-08-31 14:22:14,099.099 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:22:14,101.101 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-08-31 14:22:18,089.089 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 14:22:18,092.092 INFO    ] Checking for system updates...
[2026-08-31 14:22:18,127.127 INFO    ] 200
[2026-08-31 14:22:18,130.130 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:22:18,182.182 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:22:18,185.185 INFO    ] No update needed
[2026-08-31 14:22:18,187.187 INFO    ] Checking for camera pi updates...
[2026-08-31 14:22:18,220.220 INFO    ] 200
[2026-08-31 14:22:18,223.223 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:22:18,262.262 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:22:18,361.361 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:22:18,363.363 INFO    ] No camera update needed
[2026-08-31 14:22:18,365.365 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:22:18,368.368 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:22:18,373.373 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:22:18,378.378 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:22:20,418.418 INFO    ] ================================================
[2026-08-31 14:22:20,434.434 INFO    ] Launching Daemon at Mon Aug 31 14:22:20 IST 2026
[2026-08-31 14:22:20,445.445 INFO    ] ================================================
[2026-08-31 14:22:21,015.015 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:22:21
[2026-08-31 14:22:21,602.602 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:22:21,901.901 INFO    ] Initializing speech engine...
[2026-08-31 14:22:21,908.908 INFO    ] 2026-08-31 14:22:21
[2026-08-31 14:22:22,172.172 INFO    ] 2026-08-31 14:22:22
[2026-08-31 14:22:22,207.207 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:22:22,436.436 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:22:22,470.470 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:22:22,661.661 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:22:22,673.673 INFO    ] time= 31/08/2026 14:22:22
[2026-08-31 14:22:22,727.727 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:22:22,771.771 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:22:22,838.838 INFO    ] No existing commands found in stream
[2026-08-31 14:22:27,851.851 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:22:27,854.854 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-08-31 14:22:29,771.771 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 14:22:29,773.773 INFO    ] Checking for system updates...
[2026-08-31 14:22:29,810.810 INFO    ] 200
[2026-08-31 14:22:29,812.812 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:22:29,864.864 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:22:29,866.866 INFO    ] No update needed
[2026-08-31 14:22:29,869.869 INFO    ] Checking for camera pi updates...
[2026-08-31 14:22:29,902.902 INFO    ] 200
[2026-08-31 14:22:29,904.904 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:22:29,950.950 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:22:30,034.034 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:22:30,036.036 INFO    ] No camera update needed
[2026-08-31 14:22:30,039.039 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:22:30,041.041 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:22:30,046.046 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:22:30,051.051 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:22:32,091.091 INFO    ] ================================================
[2026-08-31 14:22:32,108.108 INFO    ] Launching Daemon at Mon Aug 31 14:22:32 IST 2026
[2026-08-31 14:22:32,120.120 INFO    ] ================================================
[2026-08-31 14:22:32,816.816 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:22:32
[2026-08-31 14:22:33,532.532 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:22:33,842.842 INFO    ] Initializing speech engine...
[2026-08-31 14:22:33,854.854 INFO    ] 2026-08-31 14:22:33
[2026-08-31 14:22:34,145.145 INFO    ] 2026-08-31 14:22:34
[2026-08-31 14:22:34,192.192 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:22:34,479.479 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:22:34,545.545 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:22:34,712.712 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:22:34,740.740 INFO    ] time= 31/08/2026 14:22:34
[2026-08-31 14:22:34,750.750 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:22:34,758.758 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:22:34,909.909 INFO    ] No existing commands found in stream
[2026-08-31 14:22:39,935.935 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:22:39,939.939 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-08-31 14:22:40,916.916 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 14:22:40,920.920 INFO    ] Checking for system updates...
[2026-08-31 14:22:40,961.961 INFO    ] 200
[2026-08-31 14:22:40,963.963 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:22:41,024.024 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:22:41,027.027 INFO    ] No update needed
[2026-08-31 14:22:41,029.029 INFO    ] Checking for camera pi updates...
[2026-08-31 14:22:41,068.068 INFO    ] 200
[2026-08-31 14:22:41,071.071 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:22:41,117.117 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:22:41,203.203 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:22:41,205.205 INFO    ] No camera update needed
[2026-08-31 14:22:41,208.208 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:22:41,210.210 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:22:41,216.216 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:22:41,221.221 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:22:43,261.261 INFO    ] ================================================
[2026-08-31 14:22:43,276.276 INFO    ] Launching Daemon at Mon Aug 31 14:22:43 IST 2026
[2026-08-31 14:22:43,288.288 INFO    ] ================================================
[2026-08-31 14:22:43,956.956 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:22:43
[2026-08-31 14:22:44,641.641 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:22:44,960.960 INFO    ] Initializing speech engine...
[2026-08-31 14:22:44,973.973 INFO    ] 2026-08-31 14:22:44
[2026-08-31 14:22:45,254.254 INFO    ] 2026-08-31 14:22:45
[2026-08-31 14:22:45,309.309 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:22:45,580.580 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:22:45,589.589 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:22:45,802.802 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:22:45,835.835 INFO    ] time= 31/08/2026 14:22:45
[2026-08-31 14:22:45,842.842 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:22:45,864.864 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:22:45,957.957 INFO    ] No existing commands found in stream
[2026-08-31 14:22:50,980.980 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:22:50,983.983 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-08-31 14:22:54,133.133 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 14:22:54,136.136 INFO    ] Checking for system updates...
[2026-08-31 14:22:54,172.172 INFO    ] 200
[2026-08-31 14:22:54,175.175 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:22:54,227.227 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:22:54,230.230 INFO    ] No update needed
[2026-08-31 14:22:54,233.233 INFO    ] Checking for camera pi updates...
[2026-08-31 14:22:54,267.267 INFO    ] 200
[2026-08-31 14:22:54,269.269 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:22:54,314.314 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:22:54,400.400 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:22:54,403.403 INFO    ] No camera update needed
[2026-08-31 14:22:54,405.405 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:22:54,407.407 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:22:54,413.413 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:22:54,418.418 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:22:56,459.459 INFO    ] ================================================
[2026-08-31 14:22:56,475.475 INFO    ] Launching Daemon at Mon Aug 31 14:22:56 IST 2026
[2026-08-31 14:22:56,486.486 INFO    ] ================================================
[2026-08-31 14:22:57,075.075 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:22:57
[2026-08-31 14:22:57,675.675 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:22:57,933.933 INFO    ] Initializing speech engine...
[2026-08-31 14:22:57,940.940 INFO    ] 2026-08-31 14:22:57
[2026-08-31 14:22:58,237.237 INFO    ] 2026-08-31 14:22:58
[2026-08-31 14:22:58,275.275 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:22:58,548.548 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:22:58,569.569 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:22:58,726.726 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:22:58,738.738 INFO    ] time= 31/08/2026 14:22:58
[2026-08-31 14:22:58,792.792 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:22:58,841.841 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:22:59,000.000 INFO    ] No existing commands found in stream
[2026-08-31 14:23:04,022.022 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:23:04,024.024 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-08-31 14:23:07,397.397 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 14:23:07,400.400 INFO    ] Checking for system updates...
[2026-08-31 14:23:07,439.439 INFO    ] 200
[2026-08-31 14:23:07,442.442 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:23:07,501.501 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:23:07,503.503 INFO    ] No update needed
[2026-08-31 14:23:07,506.506 INFO    ] Checking for camera pi updates...
[2026-08-31 14:23:07,543.543 INFO    ] 200
[2026-08-31 14:23:07,545.545 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:23:07,591.591 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:23:07,681.681 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:23:07,683.683 INFO    ] No camera update needed
[2026-08-31 14:23:07,686.686 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:23:07,688.688 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:23:07,693.693 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:23:07,698.698 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:23:09,741.741 INFO    ] ================================================
[2026-08-31 14:23:09,757.757 INFO    ] Launching Daemon at Mon Aug 31 14:23:09 IST 2026
[2026-08-31 14:23:09,769.769 INFO    ] ================================================
[2026-08-31 14:23:10,350.350 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:23:10
[2026-08-31 14:23:10,950.950 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:23:11,213.213 INFO    ] Initializing speech engine...
[2026-08-31 14:23:11,220.220 INFO    ] 2026-08-31 14:23:11
[2026-08-31 14:23:11,520.520 INFO    ] 2026-08-31 14:23:11
[2026-08-31 14:23:11,556.556 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:23:11,785.785 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:23:11,851.851 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:23:12,015.015 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:23:12,065.065 INFO    ] time= 31/08/2026 14:23:12
[2026-08-31 14:23:12,130.130 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:23:12,164.164 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:23:12,299.299 INFO    ] No existing commands found in stream
[2026-08-31 14:23:17,321.321 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:23:17,324.324 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-08-31 14:23:19,950.950 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 14:23:19,953.953 INFO    ] Checking for system updates...
[2026-08-31 14:23:19,992.992 INFO    ] 200
[2026-08-31 14:23:19,995.995 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:23:20,054.054 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:23:20,056.056 INFO    ] No update needed
[2026-08-31 14:23:20,059.059 INFO    ] Checking for camera pi updates...
[2026-08-31 14:23:20,093.093 INFO    ] 200
[2026-08-31 14:23:20,095.095 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:23:20,135.135 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:23:20,216.216 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:23:20,219.219 INFO    ] No camera update needed
[2026-08-31 14:23:20,221.221 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:23:20,223.223 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:23:20,229.229 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:23:20,234.234 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:23:22,274.274 INFO    ] ================================================
[2026-08-31 14:23:22,289.289 INFO    ] Launching Daemon at Mon Aug 31 14:23:22 IST 2026
[2026-08-31 14:23:22,300.300 INFO    ] ================================================
[2026-08-31 14:23:22,868.868 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:23:22
[2026-08-31 14:23:23,453.453 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:23:23,706.706 INFO    ] Initializing speech engine...
[2026-08-31 14:23:23,711.711 INFO    ] 2026-08-31 14:23:23
[2026-08-31 14:23:24,017.017 INFO    ] 2026-08-31 14:23:23
[2026-08-31 14:23:24,044.044 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:23:24,256.256 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:23:24,263.263 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:23:24,439.439 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:23:24,448.448 INFO    ] time= 31/08/2026 14:23:24
[2026-08-31 14:23:24,455.455 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:23:24,460.460 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:23:24,533.533 INFO    ] No existing commands found in stream
[2026-08-31 14:23:29,546.546 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:23:29,549.549 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-08-31 14:23:32,442.442 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 14:23:32,445.445 INFO    ] Checking for system updates...
[2026-08-31 14:23:32,501.501 INFO    ] 200
[2026-08-31 14:23:32,505.505 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:23:32,568.568 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:23:32,571.571 INFO    ] No update needed
[2026-08-31 14:23:32,575.575 INFO    ] Checking for camera pi updates...
[2026-08-31 14:23:32,618.618 INFO    ] 200
[2026-08-31 14:23:32,621.621 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:23:32,672.672 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:23:32,782.782 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:23:32,785.785 INFO    ] No camera update needed
[2026-08-31 14:23:32,789.789 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:23:32,792.792 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:23:32,799.799 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:23:32,806.806 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:23:34,848.848 INFO    ] ================================================
[2026-08-31 14:23:34,864.864 INFO    ] Launching Daemon at Mon Aug 31 14:23:34 IST 2026
[2026-08-31 14:23:34,881.881 INFO    ] ================================================
[2026-08-31 14:23:35,449.449 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:23:35
[2026-08-31 14:23:36,034.034 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:23:36,292.292 INFO    ] Initializing speech engine...
[2026-08-31 14:23:36,298.298 INFO    ] 2026-08-31 14:23:36
[2026-08-31 14:23:36,600.600 INFO    ] 2026-08-31 14:23:36
[2026-08-31 14:23:36,635.635 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:23:36,800.800 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:23:36,842.842 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:23:37,022.022 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:23:37,031.031 INFO    ] time= 31/08/2026 14:23:37
[2026-08-31 14:23:37,038.038 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:23:37,066.066 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:23:37,197.197 INFO    ] No existing commands found in stream
[2026-08-31 14:23:42,222.222 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:23:42,225.225 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-08-31 14:23:43,969.969 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 14:23:43,972.972 INFO    ] Checking for system updates...
[2026-08-31 14:23:44,009.009 INFO    ] 200
[2026-08-31 14:23:44,012.012 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:23:44,075.075 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:23:44,078.078 INFO    ] No update needed
[2026-08-31 14:23:44,081.081 INFO    ] Checking for camera pi updates...
[2026-08-31 14:23:44,119.119 INFO    ] 200
[2026-08-31 14:23:44,121.121 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:23:44,168.168 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:23:44,250.250 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:23:44,253.253 INFO    ] No camera update needed
[2026-08-31 14:23:44,255.255 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:23:44,258.258 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:23:44,263.263 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:23:44,268.268 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:23:46,310.310 INFO    ] ================================================
[2026-08-31 14:23:46,325.325 INFO    ] Launching Daemon at Mon Aug 31 14:23:46 IST 2026
[2026-08-31 14:23:46,336.336 INFO    ] ================================================
[2026-08-31 14:23:46,900.900 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:23:46
[2026-08-31 14:23:47,484.484 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:23:47,751.751 INFO    ] Initializing speech engine...
[2026-08-31 14:23:47,757.757 INFO    ] 2026-08-31 14:23:47
[2026-08-31 14:23:48,005.005 INFO    ] 2026-08-31 14:23:48
[2026-08-31 14:23:48,041.041 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:23:48,294.294 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:23:48,300.300 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:23:48,527.527 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:23:48,557.557 INFO    ] time= 31/08/2026 14:23:48
[2026-08-31 14:23:48,563.563 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:23:48,580.580 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:23:48,686.686 INFO    ] No existing commands found in stream
[2026-08-31 14:23:53,716.716 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:23:53,719.719 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-08-31 14:23:54,242.242 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 14:23:54,245.245 INFO    ] Checking for system updates...
[2026-08-31 14:23:54,300.300 INFO    ] 200
[2026-08-31 14:23:54,303.303 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:23:54,404.404 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:23:54,406.406 INFO    ] No update needed
[2026-08-31 14:23:54,409.409 INFO    ] Checking for camera pi updates...
[2026-08-31 14:23:54,442.442 INFO    ] 200
[2026-08-31 14:23:54,445.445 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:23:54,485.485 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:23:54,567.567 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:23:54,569.569 INFO    ] No camera update needed
[2026-08-31 14:23:54,572.572 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:23:54,574.574 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:23:54,579.579 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:23:54,585.585 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:23:56,628.628 INFO    ] ================================================
[2026-08-31 14:23:56,643.643 INFO    ] Launching Daemon at Mon Aug 31 14:23:56 IST 2026
[2026-08-31 14:23:56,654.654 INFO    ] ================================================
[2026-08-31 14:23:57,331.331 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:23:57
[2026-08-31 14:23:58,025.025 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:23:58,316.316 INFO    ] Initializing speech engine...
[2026-08-31 14:23:58,325.325 INFO    ] 2026-08-31 14:23:58
[2026-08-31 14:23:58,613.613 INFO    ] 2026-08-31 14:23:58
[2026-08-31 14:23:58,696.696 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:23:58,908.908 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:23:58,915.915 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:23:59,109.109 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:23:59,124.124 INFO    ] time= 31/08/2026 14:23:59
[2026-08-31 14:23:59,134.134 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:23:59,160.160 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:23:59,267.267 INFO    ] No existing commands found in stream
[2026-08-31 14:24:04,291.291 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:24:04,293.293 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-08-31 14:24:06,129.129 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 14:24:06,132.132 INFO    ] Checking for system updates...
[2026-08-31 14:24:06,169.169 INFO    ] 200
[2026-08-31 14:24:06,171.171 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:24:06,231.231 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:24:06,234.234 INFO    ] No update needed
[2026-08-31 14:24:06,236.236 INFO    ] Checking for camera pi updates...
[2026-08-31 14:24:06,270.270 INFO    ] 200
[2026-08-31 14:24:06,273.273 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:24:06,317.317 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:24:06,401.401 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:24:06,403.403 INFO    ] No camera update needed
[2026-08-31 14:24:06,405.405 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:24:06,408.408 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:24:06,413.413 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:24:06,418.418 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:24:08,460.460 INFO    ] ================================================
[2026-08-31 14:24:08,476.476 INFO    ] Launching Daemon at Mon Aug 31 14:24:08 IST 2026
[2026-08-31 14:24:08,487.487 INFO    ] ================================================
[2026-08-31 14:24:09,067.067 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:24:09
[2026-08-31 14:24:09,671.671 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:24:09,930.930 INFO    ] Initializing speech engine...
[2026-08-31 14:24:09,939.939 INFO    ] 2026-08-31 14:24:09
[2026-08-31 14:24:10,237.237 INFO    ] 2026-08-31 14:24:10
[2026-08-31 14:24:10,274.274 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:24:10,496.496 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:24:10,503.503 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:24:10,719.719 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:24:10,731.731 INFO    ] time= 31/08/2026 14:24:10
[2026-08-31 14:24:10,790.790 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:24:10,849.849 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:24:11,016.016 INFO    ] No existing commands found in stream
[2026-08-31 14:24:16,041.041 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:24:16,044.044 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-08-31 14:24:18,094.094 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 14:24:18,097.097 INFO    ] Checking for system updates...
[2026-08-31 14:24:18,136.136 INFO    ] 200
[2026-08-31 14:24:18,139.139 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:24:18,199.199 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:24:18,201.201 INFO    ] No update needed
[2026-08-31 14:24:18,204.204 INFO    ] Checking for camera pi updates...
[2026-08-31 14:24:18,237.237 INFO    ] 200
[2026-08-31 14:24:18,240.240 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:24:18,285.285 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:24:18,335.335 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:24:18,338.338 INFO    ] No camera update needed
[2026-08-31 14:24:18,340.340 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:24:18,343.343 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:24:18,348.348 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:24:18,353.353 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:24:20,394.394 INFO    ] ================================================
[2026-08-31 14:24:20,409.409 INFO    ] Launching Daemon at Mon Aug 31 14:24:20 IST 2026
[2026-08-31 14:24:20,420.420 INFO    ] ================================================
[2026-08-31 14:24:20,995.995 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:24:20
[2026-08-31 14:24:21,581.581 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:24:21,846.846 INFO    ] Initializing speech engine...
[2026-08-31 14:24:21,871.871 INFO    ] 2026-08-31 14:24:21
[2026-08-31 14:24:22,144.144 INFO    ] 2026-08-31 14:24:22
[2026-08-31 14:24:22,180.180 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:24:22,469.469 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:24:22,479.479 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:24:22,711.711 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:24:22,771.771 INFO    ] time= 31/08/2026 14:24:22
[2026-08-31 14:24:22,777.777 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:24:22,781.781 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:24:22,942.942 INFO    ] No existing commands found in stream
[2026-08-31 14:24:27,957.957 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:24:27,960.960 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-08-31 14:24:29,359.359 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 14:24:29,362.362 INFO    ] Checking for system updates...
[2026-08-31 14:24:29,397.397 INFO    ] 200
[2026-08-31 14:24:29,400.400 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:24:29,456.456 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:24:29,459.459 INFO    ] No update needed
[2026-08-31 14:24:29,461.461 INFO    ] Checking for camera pi updates...
[2026-08-31 14:24:29,498.498 INFO    ] 200
[2026-08-31 14:24:29,501.501 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:24:29,545.545 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:24:29,627.627 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:24:29,630.630 INFO    ] No camera update needed
[2026-08-31 14:24:29,632.632 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:24:29,634.634 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:24:29,640.640 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:24:29,645.645 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:24:31,685.685 INFO    ] ================================================
[2026-08-31 14:24:31,700.700 INFO    ] Launching Daemon at Mon Aug 31 14:24:31 IST 2026
[2026-08-31 14:24:31,711.711 INFO    ] ================================================
[2026-08-31 14:24:32,387.387 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:24:32
[2026-08-31 14:24:33,111.111 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:24:33,416.416 INFO    ] Initializing speech engine...
[2026-08-31 14:24:33,430.430 INFO    ] 2026-08-31 14:24:33
[2026-08-31 14:24:33,711.711 INFO    ] 2026-08-31 14:24:33
[2026-08-31 14:24:33,759.759 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:24:33,990.990 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:24:33,995.995 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:24:34,200.200 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:24:34,260.260 INFO    ] time= 31/08/2026 14:24:34
[2026-08-31 14:24:34,268.268 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:24:34,289.289 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:24:34,415.415 INFO    ] No existing commands found in stream
[2026-08-31 14:24:39,433.433 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:24:39,436.436 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-08-31 14:24:43,919.919 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 14:24:43,922.922 INFO    ] Checking for system updates...
[2026-08-31 14:24:43,970.970 INFO    ] 200
[2026-08-31 14:24:43,973.973 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:24:44,037.037 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:24:44,041.041 INFO    ] No update needed
[2026-08-31 14:24:44,045.045 INFO    ] Checking for camera pi updates...
[2026-08-31 14:24:44,089.089 INFO    ] 200
[2026-08-31 14:24:44,092.092 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:24:44,142.142 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:24:44,230.230 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:24:44,234.234 INFO    ] No camera update needed
[2026-08-31 14:24:44,238.238 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:24:44,241.241 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:24:44,248.248 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:24:44,255.255 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:24:46,304.304 INFO    ] ================================================
[2026-08-31 14:24:46,320.320 INFO    ] Launching Daemon at Mon Aug 31 14:24:46 IST 2026
[2026-08-31 14:24:46,331.331 INFO    ] ================================================
[2026-08-31 14:24:46,917.917 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:24:46
[2026-08-31 14:24:47,566.566 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:24:47,900.900 INFO    ] Initializing speech engine...
[2026-08-31 14:24:47,915.915 INFO    ] 2026-08-31 14:24:47
[2026-08-31 14:24:48,196.196 INFO    ] 2026-08-31 14:24:48
[2026-08-31 14:24:48,254.254 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:24:48,498.498 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:24:48,509.509 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:24:48,767.767 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:24:48,775.775 INFO    ] time= 31/08/2026 14:24:48
[2026-08-31 14:24:48,796.796 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:24:48,826.826 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:24:48,970.970 INFO    ] No existing commands found in stream
[2026-08-31 14:24:53,996.996 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:24:53,999.999 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-08-31 14:24:56,461.461 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 14:24:56,464.464 INFO    ] Checking for system updates...
[2026-08-31 14:24:56,506.506 INFO    ] 200
[2026-08-31 14:24:56,509.509 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:24:56,563.563 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:24:56,566.566 INFO    ] No update needed
[2026-08-31 14:24:56,568.568 INFO    ] Checking for camera pi updates...
[2026-08-31 14:24:56,607.607 INFO    ] 200
[2026-08-31 14:24:56,609.609 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:24:56,649.649 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:24:56,737.737 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:24:56,739.739 INFO    ] No camera update needed
[2026-08-31 14:24:56,741.741 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:24:56,744.744 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:24:56,749.749 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:24:56,754.754 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:24:58,793.793 INFO    ] ================================================
[2026-08-31 14:24:58,808.808 INFO    ] Launching Daemon at Mon Aug 31 14:24:58 IST 2026
[2026-08-31 14:24:58,819.819 INFO    ] ================================================
[2026-08-31 14:24:59,403.403 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:24:59
[2026-08-31 14:25:00,003.003 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:25:00,274.274 INFO    ] Initializing speech engine...
[2026-08-31 14:25:00,283.283 INFO    ] 2026-08-31 14:25:00
[2026-08-31 14:25:00,563.563 INFO    ] 2026-08-31 14:25:00
[2026-08-31 14:25:00,598.598 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:25:00,829.829 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:25:00,832.832 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:25:00,954.954 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:25:00,957.957 INFO    ] time= 31/08/2026 14:25:00
[2026-08-31 14:25:00,971.971 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:25:00,977.977 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:25:01,120.120 INFO    ] No existing commands found in stream
[2026-08-31 14:25:06,145.145 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:25:06,148.148 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-08-31 14:25:08,043.043 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 14:25:08,045.045 INFO    ] Checking for system updates...
[2026-08-31 14:25:08,081.081 INFO    ] 200
[2026-08-31 14:25:08,083.083 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:25:08,136.136 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:25:08,138.138 INFO    ] No update needed
[2026-08-31 14:25:08,141.141 INFO    ] Checking for camera pi updates...
[2026-08-31 14:25:08,179.179 INFO    ] 200
[2026-08-31 14:25:08,181.181 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:25:08,221.221 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:25:08,322.322 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:25:08,324.324 INFO    ] No camera update needed
[2026-08-31 14:25:08,326.326 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:25:08,329.329 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:25:08,335.335 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:25:08,340.340 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:25:10,382.382 INFO    ] ================================================
[2026-08-31 14:25:10,398.398 INFO    ] Launching Daemon at Mon Aug 31 14:25:10 IST 2026
[2026-08-31 14:25:10,409.409 INFO    ] ================================================
[2026-08-31 14:25:11,071.071 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:25:11
[2026-08-31 14:25:11,753.753 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:25:12,054.054 INFO    ] Initializing speech engine...
[2026-08-31 14:25:12,066.066 INFO    ] 2026-08-31 14:25:12
[2026-08-31 14:25:12,343.343 INFO    ] 2026-08-31 14:25:12
[2026-08-31 14:25:12,405.405 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:25:12,642.642 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:25:12,648.648 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:25:12,858.858 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:25:12,910.910 INFO    ] time= 31/08/2026 14:25:12
[2026-08-31 14:25:12,923.923 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:25:12,944.944 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:25:13,088.088 INFO    ] No existing commands found in stream
[2026-08-31 14:25:18,114.114 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:25:18,117.117 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-08-31 14:25:18,994.994 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 14:25:18,997.997 INFO    ] Checking for system updates...
[2026-08-31 14:25:19,033.033 INFO    ] 200
[2026-08-31 14:25:19,036.036 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:25:19,097.097 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:25:19,100.100 INFO    ] No update needed
[2026-08-31 14:25:19,103.103 INFO    ] Checking for camera pi updates...
[2026-08-31 14:25:19,141.141 INFO    ] 200
[2026-08-31 14:25:19,144.144 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:25:19,185.185 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:25:19,258.258 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:25:19,261.261 INFO    ] No camera update needed
[2026-08-31 14:25:19,263.263 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:25:19,266.266 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:25:19,273.273 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:25:19,278.278 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:25:21,319.319 INFO    ] ================================================
[2026-08-31 14:25:21,335.335 INFO    ] Launching Daemon at Mon Aug 31 14:25:21 IST 2026
[2026-08-31 14:25:21,346.346 INFO    ] ================================================
[2026-08-31 14:25:22,005.005 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:25:22
[2026-08-31 14:25:22,683.683 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:25:22,990.990 INFO    ] Initializing speech engine...
[2026-08-31 14:25:23,002.002 INFO    ] 2026-08-31 14:25:22
[2026-08-31 14:25:23,291.291 INFO    ] 2026-08-31 14:25:23
[2026-08-31 14:25:23,337.337 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:25:23,631.631 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:25:23,639.639 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:25:23,835.835 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:25:23,843.843 INFO    ] time= 31/08/2026 14:25:23
[2026-08-31 14:25:23,865.865 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:25:23,893.893 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:25:24,027.027 INFO    ] No existing commands found in stream
[2026-08-31 14:25:29,053.053 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:25:29,056.056 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-08-31 14:25:29,754.754 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 14:25:29,757.757 INFO    ] Checking for system updates...
[2026-08-31 14:25:29,794.794 INFO    ] 200
[2026-08-31 14:25:29,797.797 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:25:29,850.850 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:25:29,853.853 INFO    ] No update needed
[2026-08-31 14:25:29,856.856 INFO    ] Checking for camera pi updates...
[2026-08-31 14:25:29,891.891 INFO    ] 200
[2026-08-31 14:25:29,894.894 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:25:29,940.940 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:25:30,034.034 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:25:30,037.037 INFO    ] No camera update needed
[2026-08-31 14:25:30,040.040 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:25:30,042.042 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:25:30,048.048 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:25:30,053.053 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:25:32,096.096 INFO    ] ================================================
[2026-08-31 14:25:32,112.112 INFO    ] Launching Daemon at Mon Aug 31 14:25:32 IST 2026
[2026-08-31 14:25:32,124.124 INFO    ] ================================================
[2026-08-31 14:25:32,741.741 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:25:32
[2026-08-31 14:25:33,392.392 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:25:33,698.698 INFO    ] Initializing speech engine...
[2026-08-31 14:25:33,709.709 INFO    ] 2026-08-31 14:25:33
[2026-08-31 14:25:33,987.987 INFO    ] 2026-08-31 14:25:33
[2026-08-31 14:25:34,033.033 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:25:34,318.318 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:25:34,350.350 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:25:34,563.563 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:25:34,573.573 INFO    ] time= 31/08/2026 14:25:34
[2026-08-31 14:25:34,631.631 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:25:34,674.674 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:25:34,782.782 INFO    ] No existing commands found in stream
[2026-08-31 14:25:39,812.812 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:25:39,816.816 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-08-31 14:25:43,339.339 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 14:25:43,342.342 INFO    ] Checking for system updates...
[2026-08-31 14:25:43,378.378 INFO    ] 200
[2026-08-31 14:25:43,381.381 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:25:43,434.434 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:25:43,437.437 INFO    ] No update needed
[2026-08-31 14:25:43,439.439 INFO    ] Checking for camera pi updates...
[2026-08-31 14:25:43,473.473 INFO    ] 200
[2026-08-31 14:25:43,475.475 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:25:43,520.520 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:25:43,697.697 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:25:43,699.699 INFO    ] No camera update needed
[2026-08-31 14:25:43,702.702 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:25:43,704.704 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:25:43,709.709 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:25:43,714.714 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:25:45,754.754 INFO    ] ================================================
[2026-08-31 14:25:45,771.771 INFO    ] Launching Daemon at Mon Aug 31 14:25:45 IST 2026
[2026-08-31 14:25:45,782.782 INFO    ] ================================================
[2026-08-31 14:25:46,347.347 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:25:46
[2026-08-31 14:25:46,927.927 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:25:47,175.175 INFO    ] Initializing speech engine...
[2026-08-31 14:25:47,189.189 INFO    ] 2026-08-31 14:25:47
[2026-08-31 14:25:47,454.454 INFO    ] 2026-08-31 14:25:47
[2026-08-31 14:25:47,489.489 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:25:47,746.746 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:25:47,756.756 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:25:47,890.890 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:25:47,926.926 INFO    ] time= 31/08/2026 14:25:47
[2026-08-31 14:25:47,977.977 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:25:48,025.025 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:25:48,175.175 INFO    ] No existing commands found in stream
[2026-08-31 14:25:53,188.188 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:25:53,190.190 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-08-31 14:25:55,173.173 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 14:25:55,176.176 INFO    ] Checking for system updates...
[2026-08-31 14:25:55,216.216 INFO    ] 200
[2026-08-31 14:25:55,218.218 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:25:55,270.270 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:25:55,273.273 INFO    ] No update needed
[2026-08-31 14:25:55,275.275 INFO    ] Checking for camera pi updates...
[2026-08-31 14:25:55,309.309 INFO    ] 200
[2026-08-31 14:25:55,311.311 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:25:55,351.351 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:25:55,439.439 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:25:55,442.442 INFO    ] No camera update needed
[2026-08-31 14:25:55,444.444 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:25:55,446.446 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:25:55,452.452 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:25:55,457.457 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:25:57,498.498 INFO    ] ================================================
[2026-08-31 14:25:57,514.514 INFO    ] Launching Daemon at Mon Aug 31 14:25:57 IST 2026
[2026-08-31 14:25:57,524.524 INFO    ] ================================================
[2026-08-31 14:25:58,107.107 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:25:58
[2026-08-31 14:25:58,706.706 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:25:58,979.979 INFO    ] Initializing speech engine...
[2026-08-31 14:25:58,988.988 INFO    ] 2026-08-31 14:25:58
[2026-08-31 14:25:59,252.252 INFO    ] 2026-08-31 14:25:59
[2026-08-31 14:25:59,305.305 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:25:59,556.556 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:25:59,574.574 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:25:59,790.790 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:25:59,796.796 INFO    ] time= 31/08/2026 14:25:59
[2026-08-31 14:25:59,817.817 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:25:59,844.844 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:26:00,014.014 INFO    ] No existing commands found in stream
[2026-08-31 14:26:05,044.044 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:26:05,046.046 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-08-31 14:26:08,718.718 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 14:26:08,721.721 INFO    ] Checking for system updates...
[2026-08-31 14:26:08,758.758 INFO    ] 200
[2026-08-31 14:26:08,760.760 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:26:08,814.814 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:26:08,817.817 INFO    ] No update needed
[2026-08-31 14:26:08,824.824 INFO    ] Checking for camera pi updates...
[2026-08-31 14:26:08,862.862 INFO    ] 200
[2026-08-31 14:26:08,865.865 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:26:08,911.911 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:26:09,014.014 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:26:09,016.016 INFO    ] No camera update needed
[2026-08-31 14:26:09,019.019 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:26:09,021.021 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:26:09,027.027 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:26:09,032.032 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:26:11,073.073 INFO    ] ================================================
[2026-08-31 14:26:11,089.089 INFO    ] Launching Daemon at Mon Aug 31 14:26:11 IST 2026
[2026-08-31 14:26:11,100.100 INFO    ] ================================================
[2026-08-31 14:26:11,755.755 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:26:11
[2026-08-31 14:26:12,427.427 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:26:12,733.733 INFO    ] Initializing speech engine...
[2026-08-31 14:26:12,747.747 INFO    ] 2026-08-31 14:26:12
[2026-08-31 14:26:13,059.059 INFO    ] 2026-08-31 14:26:13
[2026-08-31 14:26:13,144.144 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:26:13,359.359 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:26:13,365.365 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:26:13,556.556 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:26:13,576.576 INFO    ] time= 31/08/2026 14:26:13
[2026-08-31 14:26:13,596.596 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:26:13,614.614 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:26:13,692.692 INFO    ] No existing commands found in stream
[2026-08-31 14:26:18,702.702 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:26:18,705.705 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-08-31 14:26:21,059.059 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 14:26:21,062.062 INFO    ] Checking for system updates...
[2026-08-31 14:26:21,099.099 INFO    ] 200
[2026-08-31 14:26:21,102.102 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:26:21,155.155 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:26:21,158.158 INFO    ] No update needed
[2026-08-31 14:26:21,160.160 INFO    ] Checking for camera pi updates...
[2026-08-31 14:26:21,199.199 INFO    ] 200
[2026-08-31 14:26:21,202.202 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:26:21,244.244 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:26:21,344.344 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:26:21,347.347 INFO    ] No camera update needed
[2026-08-31 14:26:21,350.350 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:26:21,353.353 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:26:21,359.359 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:26:21,365.365 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:26:23,407.407 INFO    ] ================================================
[2026-08-31 14:26:23,422.422 INFO    ] Launching Daemon at Mon Aug 31 14:26:23 IST 2026
[2026-08-31 14:26:23,433.433 INFO    ] ================================================
[2026-08-31 14:26:24,000.000 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:26:23
[2026-08-31 14:26:24,592.592 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:26:24,861.861 INFO    ] Initializing speech engine...
[2026-08-31 14:26:24,886.886 INFO    ] 2026-08-31 14:26:24
[2026-08-31 14:26:25,165.165 INFO    ] 2026-08-31 14:26:25
[2026-08-31 14:26:25,203.203 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:26:25,403.403 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:26:25,417.417 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:26:25,581.581 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:26:25,590.590 INFO    ] time= 31/08/2026 14:26:25
[2026-08-31 14:26:25,597.597 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:26:25,610.610 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:26:25,781.781 INFO    ] No existing commands found in stream
[2026-08-31 14:26:30,806.806 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:26:30,809.809 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-08-31 14:26:34,249.249 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 14:26:34,251.251 INFO    ] Checking for system updates...
[2026-08-31 14:26:34,292.292 INFO    ] 200
[2026-08-31 14:26:34,294.294 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:26:34,349.349 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:26:34,351.351 INFO    ] No update needed
[2026-08-31 14:26:34,354.354 INFO    ] Checking for camera pi updates...
[2026-08-31 14:26:34,387.387 INFO    ] 200
[2026-08-31 14:26:34,390.390 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:26:34,430.430 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:26:34,514.514 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:26:34,517.517 INFO    ] No camera update needed
[2026-08-31 14:26:34,520.520 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:26:34,522.522 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:26:34,527.527 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:26:34,533.533 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:26:36,575.575 INFO    ] ================================================
[2026-08-31 14:26:36,591.591 INFO    ] Launching Daemon at Mon Aug 31 14:26:36 IST 2026
[2026-08-31 14:26:36,601.601 INFO    ] ================================================
[2026-08-31 14:26:37,178.178 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:26:37
[2026-08-31 14:26:37,779.779 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:26:38,051.051 INFO    ] Initializing speech engine...
[2026-08-31 14:26:38,061.061 INFO    ] 2026-08-31 14:26:38
[2026-08-31 14:26:38,323.323 INFO    ] 2026-08-31 14:26:38
[2026-08-31 14:26:38,376.376 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:26:38,602.602 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:26:38,608.608 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:26:38,737.737 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:26:38,784.784 INFO    ] time= 31/08/2026 14:26:38
[2026-08-31 14:26:38,849.849 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:26:38,871.871 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:26:39,015.015 INFO    ] No existing commands found in stream
[2026-08-31 14:26:44,031.031 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:26:44,050.050 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-08-31 14:26:47,603.603 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 14:26:47,606.606 INFO    ] Checking for system updates...
[2026-08-31 14:26:47,649.649 INFO    ] 200
[2026-08-31 14:26:47,651.651 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:26:47,709.709 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:26:47,712.712 INFO    ] No update needed
[2026-08-31 14:26:47,715.715 INFO    ] Checking for camera pi updates...
[2026-08-31 14:26:47,751.751 INFO    ] 200
[2026-08-31 14:26:47,754.754 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:26:47,803.803 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:26:47,887.887 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:26:47,890.890 INFO    ] No camera update needed
[2026-08-31 14:26:47,892.892 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:26:47,895.895 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:26:47,900.900 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:26:47,905.905 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:26:49,950.950 INFO    ] ================================================
[2026-08-31 14:26:49,965.965 INFO    ] Launching Daemon at Mon Aug 31 14:26:49 IST 2026
[2026-08-31 14:26:49,976.976 INFO    ] ================================================
[2026-08-31 14:26:50,559.559 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:26:50
[2026-08-31 14:26:51,162.162 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:26:51,440.440 INFO    ] Initializing speech engine...
[2026-08-31 14:26:51,446.446 INFO    ] 2026-08-31 14:26:51
[2026-08-31 14:26:51,708.708 INFO    ] 2026-08-31 14:26:51
[2026-08-31 14:26:51,764.764 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:26:52,050.050 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:26:52,057.057 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:26:52,251.251 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:26:52,271.271 INFO    ] time= 31/08/2026 14:26:52
[2026-08-31 14:26:52,289.289 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:26:52,309.309 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:26:52,488.488 INFO    ] No existing commands found in stream
[2026-08-31 14:26:57,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:26:57,520.520 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-08-31 14:27:00,300.300 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 14:27:00,303.303 INFO    ] Checking for system updates...
[2026-08-31 14:27:00,340.340 INFO    ] 200
[2026-08-31 14:27:00,343.343 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:27:00,396.396 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:27:00,398.398 INFO    ] No update needed
[2026-08-31 14:27:00,401.401 INFO    ] Checking for camera pi updates...
[2026-08-31 14:27:00,434.434 INFO    ] 200
[2026-08-31 14:27:00,437.437 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:27:00,477.477 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:27:00,581.581 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:27:00,583.583 INFO    ] No camera update needed
[2026-08-31 14:27:00,586.586 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:27:00,588.588 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:27:00,593.593 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:27:00,598.598 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:27:02,642.642 INFO    ] ================================================
[2026-08-31 14:27:02,668.668 INFO    ] Launching Daemon at Mon Aug 31 14:27:02 IST 2026
[2026-08-31 14:27:02,680.680 INFO    ] ================================================
[2026-08-31 14:27:03,305.305 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:27:03
[2026-08-31 14:27:03,942.942 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:27:04,193.193 INFO    ] Initializing speech engine...
[2026-08-31 14:27:04,207.207 INFO    ] 2026-08-31 14:27:04
[2026-08-31 14:27:04,474.474 INFO    ] 2026-08-31 14:27:04
[2026-08-31 14:27:04,510.510 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:27:04,714.714 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:27:04,742.742 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:27:04,957.957 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:27:05,011.011 INFO    ] time= 31/08/2026 14:27:04
[2026-08-31 14:27:05,051.051 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:27:05,058.058 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:27:05,190.190 INFO    ] No existing commands found in stream
[2026-08-31 14:27:10,216.216 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:27:10,219.219 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-08-31 14:27:11,017.017 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 14:27:11,020.020 INFO    ] Checking for system updates...
[2026-08-31 14:27:11,055.055 INFO    ] 200
[2026-08-31 14:27:11,058.058 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:27:11,110.110 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:27:11,112.112 INFO    ] No update needed
[2026-08-31 14:27:11,114.114 INFO    ] Checking for camera pi updates...
[2026-08-31 14:27:11,148.148 INFO    ] 200
[2026-08-31 14:27:11,150.150 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:27:11,200.200 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:27:11,296.296 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:27:11,298.298 INFO    ] No camera update needed
[2026-08-31 14:27:11,301.301 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:27:11,303.303 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:27:11,308.308 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:27:11,313.313 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:27:13,355.355 INFO    ] ================================================
[2026-08-31 14:27:13,370.370 INFO    ] Launching Daemon at Mon Aug 31 14:27:13 IST 2026
[2026-08-31 14:27:13,382.382 INFO    ] ================================================
[2026-08-31 14:27:13,964.964 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:27:13
[2026-08-31 14:27:14,562.562 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:27:14,840.840 INFO    ] Initializing speech engine...
[2026-08-31 14:27:14,847.847 INFO    ] 2026-08-31 14:27:14
[2026-08-31 14:27:15,110.110 INFO    ] 2026-08-31 14:27:15
[2026-08-31 14:27:15,162.162 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:27:15,391.391 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:27:15,398.398 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:27:15,614.614 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:27:15,655.655 INFO    ] time= 31/08/2026 14:27:15
[2026-08-31 14:27:15,673.673 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:27:15,683.683 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:27:15,807.807 INFO    ] No existing commands found in stream
[2026-08-31 14:27:20,822.822 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:27:20,824.824 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-08-31 14:27:22,230.230 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 14:27:22,233.233 INFO    ] Checking for system updates...
[2026-08-31 14:27:22,269.269 INFO    ] 200
[2026-08-31 14:27:22,271.271 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:27:22,325.325 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:27:22,327.327 INFO    ] No update needed
[2026-08-31 14:27:22,330.330 INFO    ] Checking for camera pi updates...
[2026-08-31 14:27:22,368.368 INFO    ] 200
[2026-08-31 14:27:22,370.370 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:27:22,416.416 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:27:22,500.500 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:27:22,502.502 INFO    ] No camera update needed
[2026-08-31 14:27:22,505.505 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:27:22,507.507 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:27:22,512.512 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:27:22,518.518 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:27:24,559.559 INFO    ] ================================================
[2026-08-31 14:27:24,576.576 INFO    ] Launching Daemon at Mon Aug 31 14:27:24 IST 2026
[2026-08-31 14:27:24,586.586 INFO    ] ================================================
[2026-08-31 14:27:25,171.171 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:27:25
[2026-08-31 14:27:25,770.770 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:27:26,044.044 INFO    ] Initializing speech engine...
[2026-08-31 14:27:26,054.054 INFO    ] 2026-08-31 14:27:26
[2026-08-31 14:27:26,303.303 INFO    ] 2026-08-31 14:27:26
[2026-08-31 14:27:26,371.371 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:27:26,653.653 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:27:26,658.658 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:27:26,845.845 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:27:26,858.858 INFO    ] time= 31/08/2026 14:27:26
[2026-08-31 14:27:26,876.876 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:27:26,903.903 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:27:27,040.040 INFO    ] No existing commands found in stream
[2026-08-31 14:27:32,070.070 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:27:32,073.073 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-08-31 14:27:35,352.352 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 14:27:35,355.355 INFO    ] Checking for system updates...
[2026-08-31 14:27:35,395.395 INFO    ] 200
[2026-08-31 14:27:35,397.397 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:27:35,458.458 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:27:35,461.461 INFO    ] No update needed
[2026-08-31 14:27:35,464.464 INFO    ] Checking for camera pi updates...
[2026-08-31 14:27:35,497.497 INFO    ] 200
[2026-08-31 14:27:35,500.500 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:27:35,540.540 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:27:35,645.645 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:27:35,647.647 INFO    ] No camera update needed
[2026-08-31 14:27:35,650.650 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:27:35,652.652 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:27:35,658.658 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:27:35,663.663 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:27:37,707.707 INFO    ] ================================================
[2026-08-31 14:27:37,723.723 INFO    ] Launching Daemon at Mon Aug 31 14:27:37 IST 2026
[2026-08-31 14:27:37,735.735 INFO    ] ================================================
[2026-08-31 14:27:38,407.407 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:27:38
[2026-08-31 14:27:39,098.098 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:27:39,401.401 INFO    ] Initializing speech engine...
[2026-08-31 14:27:39,413.413 INFO    ] 2026-08-31 14:27:39
[2026-08-31 14:27:39,694.694 INFO    ] 2026-08-31 14:27:39
[2026-08-31 14:27:39,754.754 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:27:39,984.984 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:27:39,994.994 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:27:40,134.134 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:27:40,205.205 INFO    ] time= 31/08/2026 14:27:40
[2026-08-31 14:27:40,266.266 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:27:40,273.273 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:27:40,424.424 INFO    ] No existing commands found in stream
[2026-08-31 14:27:45,448.448 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:27:45,452.452 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-08-31 14:27:48,761.761 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 14:27:48,764.764 INFO    ] Checking for system updates...
[2026-08-31 14:27:48,801.801 INFO    ] 200
[2026-08-31 14:27:48,803.803 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:27:48,860.860 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:27:48,862.862 INFO    ] No update needed
[2026-08-31 14:27:48,864.864 INFO    ] Checking for camera pi updates...
[2026-08-31 14:27:48,898.898 INFO    ] 200
[2026-08-31 14:27:48,901.901 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:27:48,941.941 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:27:49,144.144 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:27:49,146.146 INFO    ] No camera update needed
[2026-08-31 14:27:49,149.149 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:27:49,151.151 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:27:49,156.156 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:27:49,162.162 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:27:51,203.203 INFO    ] ================================================
[2026-08-31 14:27:51,219.219 INFO    ] Launching Daemon at Mon Aug 31 14:27:51 IST 2026
[2026-08-31 14:27:51,230.230 INFO    ] ================================================
[2026-08-31 14:27:51,895.895 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:27:51
[2026-08-31 14:27:52,578.578 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:27:52,885.885 INFO    ] Initializing speech engine...
[2026-08-31 14:27:52,894.894 INFO    ] 2026-08-31 14:27:52
[2026-08-31 14:27:53,187.187 INFO    ] 2026-08-31 14:27:53
[2026-08-31 14:27:53,233.233 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:27:53,525.525 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:27:53,531.531 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:27:53,730.730 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:27:53,738.738 INFO    ] time= 31/08/2026 14:27:53
[2026-08-31 14:27:53,757.757 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:27:53,787.787 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:27:53,899.899 INFO    ] No existing commands found in stream
[2026-08-31 14:27:58,923.923 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:27:58,927.927 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-08-31 14:28:02,368.368 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 14:28:02,372.372 INFO    ] Checking for system updates...
[2026-08-31 14:28:02,432.432 INFO    ] 200
[2026-08-31 14:28:02,436.436 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:28:02,528.528 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:28:02,531.531 INFO    ] No update needed
[2026-08-31 14:28:02,533.533 INFO    ] Checking for camera pi updates...
[2026-08-31 14:28:02,576.576 INFO    ] 200
[2026-08-31 14:28:02,580.580 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:28:02,626.626 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:28:02,726.726 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:28:02,729.729 INFO    ] No camera update needed
[2026-08-31 14:28:02,732.732 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:28:02,735.735 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:28:02,742.742 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:28:02,748.748 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:28:04,793.793 INFO    ] ================================================
[2026-08-31 14:28:04,808.808 INFO    ] Launching Daemon at Mon Aug 31 14:28:04 IST 2026
[2026-08-31 14:28:04,819.819 INFO    ] ================================================
[2026-08-31 14:28:05,410.410 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:28:05
[2026-08-31 14:28:06,013.013 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:28:06,286.286 INFO    ] Initializing speech engine...
[2026-08-31 14:28:06,296.296 INFO    ] 2026-08-31 14:28:06
[2026-08-31 14:28:06,552.552 INFO    ] 2026-08-31 14:28:06
[2026-08-31 14:28:06,612.612 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:28:06,845.845 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:28:06,851.851 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:28:07,114.114 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:28:07,134.134 INFO    ] time= 31/08/2026 14:28:07
[2026-08-31 14:28:07,143.143 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:28:07,169.169 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:28:07,277.277 INFO    ] No existing commands found in stream
[2026-08-31 14:28:12,301.301 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:28:12,304.304 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-08-31 14:28:13,280.280 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 14:28:13,283.283 INFO    ] Checking for system updates...
[2026-08-31 14:28:13,324.324 INFO    ] 200
[2026-08-31 14:28:13,327.327 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:28:13,380.380 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:28:13,383.383 INFO    ] No update needed
[2026-08-31 14:28:13,386.386 INFO    ] Checking for camera pi updates...
[2026-08-31 14:28:13,420.420 INFO    ] 200
[2026-08-31 14:28:13,423.423 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:28:13,469.469 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:28:13,570.570 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:28:13,572.572 INFO    ] No camera update needed
[2026-08-31 14:28:13,575.575 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:28:13,578.578 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:28:13,584.584 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:28:13,590.590 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:28:15,633.633 INFO    ] ================================================
[2026-08-31 14:28:15,649.649 INFO    ] Launching Daemon at Mon Aug 31 14:28:15 IST 2026
[2026-08-31 14:28:15,660.660 INFO    ] ================================================
[2026-08-31 14:28:16,246.246 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:28:16
[2026-08-31 14:28:16,853.853 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:28:17,120.120 INFO    ] Initializing speech engine...
[2026-08-31 14:28:17,144.144 INFO    ] 2026-08-31 14:28:17
[2026-08-31 14:28:17,420.420 INFO    ] 2026-08-31 14:28:17
[2026-08-31 14:28:17,459.459 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:28:17,684.684 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:28:17,717.717 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:28:17,913.913 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:28:17,925.925 INFO    ] time= 31/08/2026 14:28:17
[2026-08-31 14:28:17,984.984 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:28:18,049.049 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:28:18,206.206 INFO    ] No existing commands found in stream
[2026-08-31 14:28:23,232.232 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:28:23,235.235 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-08-31 14:28:25,176.176 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 14:28:25,179.179 INFO    ] Checking for system updates...
[2026-08-31 14:28:25,215.215 INFO    ] 200
[2026-08-31 14:28:25,218.218 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:28:25,279.279 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:28:25,282.282 INFO    ] No update needed
[2026-08-31 14:28:25,284.284 INFO    ] Checking for camera pi updates...
[2026-08-31 14:28:25,331.331 INFO    ] 200
[2026-08-31 14:28:25,334.334 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:28:25,380.380 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:28:25,461.461 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:28:25,464.464 INFO    ] No camera update needed
[2026-08-31 14:28:25,467.467 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:28:25,470.470 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:28:25,476.476 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:28:25,482.482 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:28:27,523.523 INFO    ] ================================================
[2026-08-31 14:28:27,538.538 INFO    ] Launching Daemon at Mon Aug 31 14:28:27 IST 2026
[2026-08-31 14:28:27,549.549 INFO    ] ================================================
[2026-08-31 14:28:28,136.136 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:28:28
[2026-08-31 14:28:28,741.741 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:28:29,005.005 INFO    ] Initializing speech engine...
[2026-08-31 14:28:29,011.011 INFO    ] 2026-08-31 14:28:29
[2026-08-31 14:28:29,308.308 INFO    ] 2026-08-31 14:28:29
[2026-08-31 14:28:29,346.346 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:28:29,641.641 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:28:29,647.647 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:28:29,800.800 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:28:29,840.840 INFO    ] time= 31/08/2026 14:28:29
[2026-08-31 14:28:29,900.900 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:28:29,945.945 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:28:30,119.119 INFO    ] No existing commands found in stream
[2026-08-31 14:28:35,135.135 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:28:35,138.138 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-08-31 14:28:39,212.212 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 14:28:39,214.214 INFO    ] Checking for system updates...
[2026-08-31 14:28:39,255.255 INFO    ] 200
[2026-08-31 14:28:39,259.259 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:28:39,319.319 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:28:39,322.322 INFO    ] No update needed
[2026-08-31 14:28:39,325.325 INFO    ] Checking for camera pi updates...
[2026-08-31 14:28:39,360.360 INFO    ] 200
[2026-08-31 14:28:39,363.363 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:28:39,409.409 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:28:39,493.493 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:28:39,495.495 INFO    ] No camera update needed
[2026-08-31 14:28:39,498.498 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:28:39,501.501 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:28:39,507.507 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:28:39,513.513 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:28:41,555.555 INFO    ] ================================================
[2026-08-31 14:28:41,570.570 INFO    ] Launching Daemon at Mon Aug 31 14:28:41 IST 2026
[2026-08-31 14:28:41,582.582 INFO    ] ================================================
[2026-08-31 14:28:42,165.165 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:28:42
[2026-08-31 14:28:42,763.763 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:28:43,034.034 INFO    ] Initializing speech engine...
[2026-08-31 14:28:43,044.044 INFO    ] 2026-08-31 14:28:43
[2026-08-31 14:28:43,305.305 INFO    ] 2026-08-31 14:28:43
[2026-08-31 14:28:43,358.358 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:28:43,603.603 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:28:43,611.611 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:28:43,803.803 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:28:43,843.843 INFO    ] time= 31/08/2026 14:28:43
[2026-08-31 14:28:43,849.849 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:28:43,869.869 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:28:43,991.991 INFO    ] No existing commands found in stream
[2026-08-31 14:28:49,007.007 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:28:49,010.010 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-08-31 14:28:52,714.714 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 14:28:52,716.716 INFO    ] Checking for system updates...
[2026-08-31 14:28:52,752.752 INFO    ] 200
[2026-08-31 14:28:52,755.755 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:28:52,808.808 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:28:52,811.811 INFO    ] No update needed
[2026-08-31 14:28:52,813.813 INFO    ] Checking for camera pi updates...
[2026-08-31 14:28:52,849.849 INFO    ] 200
[2026-08-31 14:28:52,852.852 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:28:52,892.892 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:28:52,994.994 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:28:52,996.996 INFO    ] No camera update needed
[2026-08-31 14:28:52,999.999 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:28:53,001.001 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:28:53,006.006 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:28:53,011.011 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:28:55,055.055 INFO    ] ================================================
[2026-08-31 14:28:55,071.071 INFO    ] Launching Daemon at Mon Aug 31 14:28:55 IST 2026
[2026-08-31 14:28:55,082.082 INFO    ] ================================================
[2026-08-31 14:28:55,648.648 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:28:55
[2026-08-31 14:28:56,231.231 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:28:56,487.487 INFO    ] Initializing speech engine...
[2026-08-31 14:28:56,503.503 INFO    ] 2026-08-31 14:28:56
[2026-08-31 14:28:56,783.783 INFO    ] 2026-08-31 14:28:56
[2026-08-31 14:28:56,817.817 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:28:57,041.041 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:28:57,065.065 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:28:57,267.267 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:28:57,274.274 INFO    ] time= 31/08/2026 14:28:57
[2026-08-31 14:28:57,323.323 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:28:57,377.377 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:28:57,474.474 INFO    ] No existing commands found in stream
[2026-08-31 14:29:02,486.486 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:29:02,490.490 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-08-31 14:29:03,917.917 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 14:29:03,920.920 INFO    ] Checking for system updates...
[2026-08-31 14:29:03,956.956 INFO    ] 200
[2026-08-31 14:29:03,959.959 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:29:04,012.012 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:29:04,014.014 INFO    ] No update needed
[2026-08-31 14:29:04,016.016 INFO    ] Checking for camera pi updates...
[2026-08-31 14:29:04,050.050 INFO    ] 200
[2026-08-31 14:29:04,053.053 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:29:04,093.093 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:29:04,192.192 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:29:04,194.194 INFO    ] No camera update needed
[2026-08-31 14:29:04,197.197 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:29:04,199.199 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:29:04,204.204 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:29:04,209.209 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:29:06,249.249 INFO    ] ================================================
[2026-08-31 14:29:06,265.265 INFO    ] Launching Daemon at Mon Aug 31 14:29:06 IST 2026
[2026-08-31 14:29:06,276.276 INFO    ] ================================================
[2026-08-31 14:29:06,846.846 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:29:06
[2026-08-31 14:29:07,459.459 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:29:07,741.741 INFO    ] Initializing speech engine...
[2026-08-31 14:29:07,749.749 INFO    ] 2026-08-31 14:29:07
[2026-08-31 14:29:08,014.014 INFO    ] 2026-08-31 14:29:08
[2026-08-31 14:29:08,051.051 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:29:08,241.241 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:29:08,255.255 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:29:08,408.408 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:29:08,419.419 INFO    ] time= 31/08/2026 14:29:08
[2026-08-31 14:29:08,426.426 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:29:08,474.474 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:29:08,618.618 INFO    ] No existing commands found in stream
[2026-08-31 14:29:13,643.643 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:29:13,646.646 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-08-31 14:29:14,490.490 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 14:29:14,492.492 INFO    ] Checking for system updates...
[2026-08-31 14:29:14,528.528 INFO    ] 200
[2026-08-31 14:29:14,530.530 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:29:14,582.582 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:29:14,584.584 INFO    ] No update needed
[2026-08-31 14:29:14,587.587 INFO    ] Checking for camera pi updates...
[2026-08-31 14:29:14,620.620 INFO    ] 200
[2026-08-31 14:29:14,623.623 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:29:14,663.663 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:29:14,744.744 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:29:14,747.747 INFO    ] No camera update needed
[2026-08-31 14:29:14,749.749 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:29:14,752.752 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:29:14,757.757 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:29:14,762.762 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:29:16,803.803 INFO    ] ================================================
[2026-08-31 14:29:16,819.819 INFO    ] Launching Daemon at Mon Aug 31 14:29:16 IST 2026
[2026-08-31 14:29:16,830.830 INFO    ] ================================================
[2026-08-31 14:29:17,395.395 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:29:17
[2026-08-31 14:29:17,979.979 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:29:18,248.248 INFO    ] Initializing speech engine...
[2026-08-31 14:29:18,256.256 INFO    ] 2026-08-31 14:29:18
[2026-08-31 14:29:18,506.506 INFO    ] 2026-08-31 14:29:18
[2026-08-31 14:29:18,541.541 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:29:18,793.793 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:29:18,804.804 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:29:19,021.021 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:29:19,068.068 INFO    ] time= 31/08/2026 14:29:19
[2026-08-31 14:29:19,074.074 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:29:19,093.093 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:29:19,246.246 INFO    ] No existing commands found in stream
[2026-08-31 14:29:24,281.281 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:29:24,284.284 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-08-31 14:29:28,407.407 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 14:29:28,410.410 INFO    ] Checking for system updates...
[2026-08-31 14:29:28,445.445 INFO    ] 200
[2026-08-31 14:29:28,447.447 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:29:28,500.500 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:29:28,503.503 INFO    ] No update needed
[2026-08-31 14:29:28,505.505 INFO    ] Checking for camera pi updates...
[2026-08-31 14:29:28,539.539 INFO    ] 200
[2026-08-31 14:29:28,542.542 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:29:28,582.582 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:29:28,679.679 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:29:28,681.681 INFO    ] No camera update needed
[2026-08-31 14:29:28,683.683 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:29:28,686.686 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:29:28,691.691 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:29:28,696.696 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:29:30,739.739 INFO    ] ================================================
[2026-08-31 14:29:30,755.755 INFO    ] Launching Daemon at Mon Aug 31 14:29:30 IST 2026
[2026-08-31 14:29:30,766.766 INFO    ] ================================================
[2026-08-31 14:29:31,387.387 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:29:31
[2026-08-31 14:29:32,045.045 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:29:32,359.359 INFO    ] Initializing speech engine...
[2026-08-31 14:29:32,367.367 INFO    ] 2026-08-31 14:29:32
[2026-08-31 14:29:32,640.640 INFO    ] 2026-08-31 14:29:32
[2026-08-31 14:29:32,701.701 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:29:33,005.005 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:29:33,014.014 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:29:33,225.225 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:29:33,236.236 INFO    ] time= 31/08/2026 14:29:33
[2026-08-31 14:29:33,266.266 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:29:33,277.277 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:29:33,395.395 INFO    ] No existing commands found in stream
[2026-08-31 14:29:38,419.419 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:29:38,423.423 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-08-31 14:29:39,487.487 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 14:29:39,490.490 INFO    ] Checking for system updates...
[2026-08-31 14:29:39,525.525 INFO    ] 200
[2026-08-31 14:29:39,527.527 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:29:39,582.582 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:29:39,584.584 INFO    ] No update needed
[2026-08-31 14:29:39,586.586 INFO    ] Checking for camera pi updates...
[2026-08-31 14:29:39,620.620 INFO    ] 200
[2026-08-31 14:29:39,622.622 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:29:39,663.663 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:29:39,746.746 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:29:39,748.748 INFO    ] No camera update needed
[2026-08-31 14:29:39,751.751 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:29:39,753.753 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:29:39,758.758 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:29:39,763.763 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:29:41,803.803 INFO    ] ================================================
[2026-08-31 14:29:41,819.819 INFO    ] Launching Daemon at Mon Aug 31 14:29:41 IST 2026
[2026-08-31 14:29:41,829.829 INFO    ] ================================================
[2026-08-31 14:29:42,462.462 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:29:42
[2026-08-31 14:29:43,114.114 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:29:43,412.412 INFO    ] Initializing speech engine...
[2026-08-31 14:29:43,425.425 INFO    ] 2026-08-31 14:29:43
[2026-08-31 14:29:43,698.698 INFO    ] 2026-08-31 14:29:43
[2026-08-31 14:29:43,743.743 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:29:43,991.991 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:29:44,009.009 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:29:44,235.235 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:29:44,254.254 INFO    ] time= 31/08/2026 14:29:44
[2026-08-31 14:29:44,264.264 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:29:44,288.288 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:29:44,406.406 INFO    ] No existing commands found in stream
[2026-08-31 14:29:49,421.421 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:29:49,423.423 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-08-31 14:29:53,799.799 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 14:29:53,802.802 INFO    ] Checking for system updates...
[2026-08-31 14:29:53,837.837 INFO    ] 200
[2026-08-31 14:29:53,840.840 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:29:53,892.892 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:29:53,894.894 INFO    ] No update needed
[2026-08-31 14:29:53,897.897 INFO    ] Checking for camera pi updates...
[2026-08-31 14:29:53,930.930 INFO    ] 200
[2026-08-31 14:29:53,932.932 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:29:53,972.972 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:29:54,155.155 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:29:54,157.157 INFO    ] No camera update needed
[2026-08-31 14:29:54,160.160 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:29:54,162.162 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:29:54,168.168 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:29:54,174.174 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:29:56,216.216 INFO    ] ================================================
[2026-08-31 14:29:56,232.232 INFO    ] Launching Daemon at Mon Aug 31 14:29:56 IST 2026
[2026-08-31 14:29:56,243.243 INFO    ] ================================================
[2026-08-31 14:29:56,822.822 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:29:56
[2026-08-31 14:29:57,420.420 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:29:57,690.690 INFO    ] Initializing speech engine...
[2026-08-31 14:29:57,701.701 INFO    ] 2026-08-31 14:29:57
[2026-08-31 14:29:57,955.955 INFO    ] 2026-08-31 14:29:57
[2026-08-31 14:29:58,015.015 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:29:58,263.263 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:29:58,281.281 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:29:58,476.476 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:29:58,498.498 INFO    ] time= 31/08/2026 14:29:58
[2026-08-31 14:29:58,515.515 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:29:58,524.524 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:29:58,647.647 INFO    ] No existing commands found in stream
[2026-08-31 14:30:03,660.660 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:30:03,664.664 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-08-31 14:30:08,494.494 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 14:30:08,496.496 INFO    ] Checking for system updates...
[2026-08-31 14:30:08,532.532 INFO    ] 200
[2026-08-31 14:30:08,535.535 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:30:08,586.586 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:30:08,589.589 INFO    ] No update needed
[2026-08-31 14:30:08,592.592 INFO    ] Checking for camera pi updates...
[2026-08-31 14:30:08,630.630 INFO    ] 200
[2026-08-31 14:30:08,633.633 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:30:08,674.674 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:30:08,771.771 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:30:08,773.773 INFO    ] No camera update needed
[2026-08-31 14:30:08,775.775 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:30:08,778.778 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:30:08,783.783 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:30:08,788.788 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:30:10,829.829 INFO    ] ================================================
[2026-08-31 14:30:10,844.844 INFO    ] Launching Daemon at Mon Aug 31 14:30:10 IST 2026
[2026-08-31 14:30:10,856.856 INFO    ] ================================================
[2026-08-31 14:30:11,440.440 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:30:11
[2026-08-31 14:30:12,046.046 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:30:12,310.310 INFO    ] Initializing speech engine...
[2026-08-31 14:30:12,326.326 INFO    ] 2026-08-31 14:30:12
[2026-08-31 14:30:12,611.611 INFO    ] 2026-08-31 14:30:12
[2026-08-31 14:30:12,649.649 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:30:12,844.844 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:30:12,858.858 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:30:13,022.022 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:30:13,027.027 INFO    ] time= 31/08/2026 14:30:13
[2026-08-31 14:30:13,034.034 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:30:13,081.081 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:30:13,237.237 INFO    ] No existing commands found in stream
[2026-08-31 14:30:14,634.634 INFO    ] Received new command: ID=1788166814584-0
[2026-08-31 14:30:14,639.639 INFO    ] process_and_cleanup_command: msg_id=1788166814584-0
[2026-08-31 14:30:14,643.643 INFO    ] is_command_expired: timestamp=2026-08-31T09:00:12.907Z, expiry=30s
[2026-08-31 14:30:14,792.792 INFO    ] Command removed from stream: 1788166814584-0. returning for processing...
[2026-08-31 14:30:14,830.830 INFO    ] ***** get_valid_command
[2026-08-31 14:30:14,834.834 INFO    ] {'command': 'start-order', 'data': '{"request_id":"start-order-1788166812907-1c024w4fx","orderId":"TM08202202260831142851768","is_vending":false}', 'timestamp': '2026-08-31T09:00:12.907Z', 'timeout': '10', 'source': 'webapp'}
[2026-08-31 14:30:14,841.841 INFO    ] ***** Parsed command data: {'orderId': 'TM08202202260831142851768', 'is_vending': False, 'request_id': 'start-order-1788166812907-1c024w4fx'}
[2026-08-31 14:30:14,849.849 INFO    ] Handling start order...
[2026-08-31 14:30:14,855.855 INFO    ] handle_start_order_command
[2026-08-31 14:30:14,866.866 INFO    ] _send_start_order_success: request_id=start-order-1788166812907-1c024w4fx, order_id=TM08202202260831142851768
[2026-08-31 14:30:14,871.871 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM08202202
[2026-08-31 14:30:14,950.950 INFO    ] [_send_start_order_success] Message added to stream with ID: 1788166814914-0
[2026-08-31 14:30:14,955.955 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-08-31 14:30:14,960.960 INFO    ] Checking for system updates...
[2026-08-31 14:30:15,008.008 INFO    ] 200
[2026-08-31 14:30:15,014.014 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:30:15,140.140 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:30:15,154.154 INFO    ] No update needed
[2026-08-31 14:30:15,162.162 INFO    ] Checking for camera pi updates...
[2026-08-31 14:30:15,209.209 INFO    ] 200
[2026-08-31 14:30:15,214.214 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:30:15,261.261 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:30:15,419.419 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:30:15,424.424 INFO    ] No camera update needed
[2026-08-31 14:30:15,435.435 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:30:15,442.442 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:30:15,486.486 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:30:15,519.519 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-31 14:30:15,533.533 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:30:17,578.578 INFO    ] ================================================
[2026-08-31 14:30:17,593.593 INFO    ] Launching Daemon at Mon Aug 31 14:30:17 IST 2026
[2026-08-31 14:30:17,605.605 INFO    ] ================================================
[2026-08-31 14:30:18,178.178 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:30:18
[2026-08-31 14:30:18,759.759 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:30:19,026.026 INFO    ] Initializing speech engine...
[2026-08-31 14:30:19,036.036 INFO    ] 2026-08-31 14:30:19
[2026-08-31 14:30:19,281.281 INFO    ] 2026-08-31 14:30:19
[2026-08-31 14:30:19,316.316 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:30:19,584.584 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:30:19,593.593 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:30:19,811.811 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:30:19,865.865 INFO    ] time= 31/08/2026 14:30:19
[2026-08-31 14:30:19,888.888 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:30:19,894.894 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:30:20,036.036 INFO    ] Found 2 existing command(s) in stream
[2026-08-31 14:30:20,072.072 INFO    ] Checking historical command: ID=1788166814914-0
[2026-08-31 14:30:20,123.123 INFO    ] process_and_cleanup_command: msg_id=1788166814914-0
[2026-08-31 14:30:20,172.172 INFO    ] is_command_expired: timestamp=2026-08-31T09:00:14.868187Z, expiry=30s
[2026-08-31 14:30:20,375.375 INFO    ] Command removed from stream: 1788166814914-0. returning for processing...
[2026-08-31 14:30:20,415.415 INFO    ] ***** get_valid_command
[2026-08-31 14:30:20,432.432 INFO    ] {'metadata_order_id': 'TM08202202260831142851768', 'timestamp': '2026-08-31T09:00:14.868187Z', 'imei': 'TM08202202', 'status': 'success', 'message': 'start-order success', 'message_type': 'command_response', 'metadata_request_id': 'start-order-1788166812907-1c024w4fx'}
[2026-08-31 14:30:20,435.435 INFO    ] Checking historical command: ID=1788166817025-0
[2026-08-31 14:30:20,446.446 INFO    ] process_and_cleanup_command: msg_id=1788166817025-0
[2026-08-31 14:30:20,449.449 INFO    ] is_command_expired: timestamp=2026-08-31T09:00:15.226Z, expiry=30s
[2026-08-31 14:30:20,563.563 INFO    ] Command removed from stream: 1788166817025-0. returning for processing...
[2026-08-31 14:30:20,596.596 INFO    ] ***** get_valid_command
[2026-08-31 14:30:20,603.603 INFO    ] {'timeout': '60', 'data': '{"request_id":"process-order-1788166815226-fg537epn2","orderId":"TM08202202260831142851768","is_vending":false,"accessCode":"51943347"}', 'source': 'webapp', 'timestamp': '2026-08-31T09:00:15.226Z', 'command': 'process-order'}
[2026-08-31 14:30:20,606.606 INFO    ] ***** Parsed command data: {'accessCode': '51943347', 'is_vending': False, 'request_id': 'process-order-1788166815226-fg537epn2', 'orderId': 'TM08202202260831142851768'}
[2026-08-31 14:30:20,660.660 INFO    ] Handling process order...
[2026-08-31 14:30:20,666.666 INFO    ] Processing process-order command...
[2026-08-31 14:30:20,670.670 INFO    ] 🔍 Lock file Order ID: TM08202202260831142851768, TS: 2026-08-31 14:30:14
[2026-08-31 14:30:20,738.738 INFO    ] ✅ Order lock valid for TM08202202260831142851768
[2026-08-31 14:30:20,743.743 INFO    ] Received access code in process-order, skipping PHP API call
[2026-08-31 14:30:20,748.748 INFO    ] processing access code 51943347 for order TM08202202260831142851768
[2026-08-31 14:30:20,755.755 INFO    ] 🔍 Lock file Order ID: TM08202202260831142851768, TS: 2026-08-31 14:30:14
[2026-08-31 14:30:20,760.760 INFO    ] ✅ Order lock valid for TM08202202260831142851768
[2026-08-31 14:30:20,765.765 INFO    ] 2026-08-31 14:30:20
[2026-08-31 14:30:20,810.810 INFO    ] 200
[2026-08-31 14:30:20,814.814 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:30:20,891.891 INFO    ] 51943347
[2026-08-31 14:30:20,940.940 INFO    ] 2026-08-31 14:30:20
[2026-08-31 14:30:20,953.953 INFO    ] session id :814211712
[2026-08-31 14:30:20,959.959 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=51943347&imei=TM08202202&session_id=814211712
[2026-08-31 14:30:22,265.265 INFO    ] 200
[2026-08-31 14:30:22,274.274 INFO    ] {"msg": "Order Data", "data": {"access_code": "51943347", "invoice_bill": "30", "mobile": "9900883623", "order_id": "TM08202202260831142851768", "bill_amount": "30", "proposed_sku_json": [{"qty": 1, "offer_desc": "", "image_url": "https://images.tinymart.in/product/186084-5395.png", "sku_total": 30, "mrp": "30", "tray_id": "42", "name": "KITKAT Nestle 4 Finger Chocolate 38g", "offer_id": "", "skuid": "186084", "unit_price": 30, "door_id": "2"}]}, "status": true, "rstatus": true}
[2026-08-31 14:30:22,298.298 INFO    ] 30
[2026-08-31 14:30:22,304.304 INFO    ] TM08202202260831142851768
[2026-08-31 14:30:22,312.312 INFO    ] 9900883623
[2026-08-31 14:30:22,321.321 INFO    ] 2026-08-31 14:30:22
[2026-08-31 14:30:22,332.332 INFO    ] Door Opening for user mobile ending with  three six two three 
[2026-08-31 14:30:22,348.348 INFO    ] Door Opening for user mobile ending with  three six two three 
[2026-08-31 14:30:22,364.364 INFO    ] 7d4435c8ba53f98ea5108ccb5c26864b
[2026-08-31 14:30:22,386.386 INFO    ] 2026-08-31 14:30:22
[2026-08-31 14:30:22,426.426 INFO    ] playing audio file
[2026-08-31 14:30:22,486.486 INFO    ] 2026-08-31 14:30:22
[2026-08-31 14:30:22,538.538 INFO    ] 2026-08-31 14:30:22
[2026-08-31 14:30:22,562.562 INFO    ] publish_status: order_id=TM08202202260831142851768
[2026-08-31 14:30:22,573.573 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831142851768
[2026-08-31 14:30:22,674.674 INFO    ] [publish_status] Message added to stream with ID: 1788166822624-0
[2026-08-31 14:30:22,676.676 INFO    ] Published to order:TM08202202260831142851768: {'server_status': 'order-started', 'order_id': 'TM08202202260831142851768', 'timestamp': '2026-08-31T09:00:22.544606Z', 'server_response': '{"rstatus": true, "msg": "Order Data", "status": true, "data": {"proposed_sku_json": [{"offer_desc": "", "image_url": "https://images.tinymart.in/product/186084-5395.png", "offer_id": "", "qty": 1, "door_id": "2", "tray_id": "42", "name": "KITKAT Nestle 4 Finger Chocolate 38g", "mrp": "30", "skuid": "186084", "sku_total": 30, "unit_price": 30}], "bill_amount": "30", "mobile": "9900883623", "access_code": "51943347", "invoice_bill": "30", "order_id": "TM08202202260831142851768"}}'} (ID: 1788166822624-0)
[2026-08-31 14:30:23,334.334 INFO    ] {'server_status': 'order-started', 'order_id': 'TM08202202260831142851768', 'server_response': {'rstatus': True, 'msg': 'Order Data', 'status': True, 'data': {'proposed_sku_json': [{'offer_desc': '', 'image_url': 'https://images.tinymart.in/product/186084-5395.png', 'offer_id': '', 'qty': 1, 'door_id': '2', 'tray_id': '42', 'name': 'KITKAT Nestle 4 Finger Chocolate 38g', 'mrp': '30', 'skuid': '186084', 'sku_total': 30, 'unit_price': 30}], 'bill_amount': '30', 'mobile': '9900883623', 'access_code': '51943347', 'invoice_bill': '30', 'order_id': 'TM08202202260831142851768'}}}
[2026-08-31 14:30:23,337.337 INFO    ] 200
[2026-08-31 14:30:23,339.339 INFO    ] {"data":{"server_status":"order-started","order_id":"TM08202202260831142851768","server_response":{"rstatus":true,"msg":"Order Data","status":true,"data":{"proposed_sku_json":[{"offer_desc":"","image_url":"https:\/\/images.tinymart.in\/product\/186084-5395.png","offer_id":"","qty":1,"door_id":"2","tray_id":"42","name":"KITKAT Nestle 4 Finger Chocolate 38g","mrp":"30","skuid":"186084","sku_total":30,"unit_price":30}],"bill_amount":"30","mobile":"9900883623","access_code":"51943347","invoice_bill":"30","order_id":"TM08202202260831142851768"}}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 14:30:23,342.342 INFO    ] {'data': {'server_status': 'order-started', 'order_id': 'TM08202202260831142851768', 'server_response': {'rstatus': True, 'msg': 'Order Data', 'status': True, 'data': {'proposed_sku_json': [{'offer_desc': '', 'image_url': 'https://images.tinymart.in/product/186084-5395.png', 'offer_id': '', 'qty': 1, 'door_id': '2', 'tray_id': '42', 'name': 'KITKAT Nestle 4 Finger Chocolate 38g', 'mrp': '30', 'skuid': '186084', 'sku_total': 30, 'unit_price': 30}], 'bill_amount': '30', 'mobile': '9900883623', 'access_code': '51943347', 'invoice_bill': '30', 'order_id': 'TM08202202260831142851768'}}}, 'response': {'code': 'ORDER_EXISTS', 'status': True, 'data': 'order updated successfully', 'msg': 'order updated successfully'}}
[2026-08-31 14:30:23,345.345 INFO    ] 2026-08-31 14:30:23
[2026-08-31 14:30:23,390.390 INFO    ] 200
[2026-08-31 14:30:23,392.392 INFO    ] True
[2026-08-31 14:30:23,565.565 INFO    ] 200
[2026-08-31 14:30:23,568.568 INFO    ] {"SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "voiceNote": "Please Wait", "SectionMain": {"Header": "Processing Order"}, "SectionStatus": {"Note": "", "UI_Header": "", "SubHeader": "Please wait while we process your order", "Header": " Your order is under process  "}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 14:30:23,571.571 INFO    ] {'rstatus': False, 'voiceNote': 'Please Wait', 'error': {'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress', 'code': 20001}, 'status': 'False', 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'SectionMain': {'Header': 'Processing Order'}, 'SectionStatus': {'Header': ' Your order is under process  ', 'UI_Header': '', 'Note': '', 'SubHeader': 'Please wait while we process your order'}}
[2026-08-31 14:30:23,574.574 INFO    ] *** process_order ***
[2026-08-31 14:30:24,751.751 INFO    ] 200
[2026-08-31 14:30:24,754.754 INFO    ] {"SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "voiceNote": "Please Wait", "SectionMain": {"Header": "Processing Order"}, "SectionStatus": {"Note": "", "UI_Header": "", "SubHeader": "Please wait while we process your order", "Header": " Your order is under process  "}, "delay": 0, "status": "True", "rstatus": true}
[2026-08-31 14:30:24,756.756 INFO    ] {'rstatus': True, 'voiceNote': 'Please Wait', 'status': 'True', 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'SectionMain': {'Header': 'Processing Order'}, 'SectionStatus': {'Header': ' Your order is under process  ', 'UI_Header': '', 'Note': '', 'SubHeader': 'Please wait while we process your order'}, 'delay': 0}
[2026-08-31 14:30:24,759.759 INFO    ] *** process_order ***
[2026-08-31 14:30:24,762.762 INFO    ] publish_status: order_id=TM08202202260831142851768
[2026-08-31 14:30:24,764.764 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831142851768
[2026-08-31 14:30:24,885.885 INFO    ] [publish_status] Message added to stream with ID: 1788166824835-0
[2026-08-31 14:30:24,888.888 INFO    ] Published to order:TM08202202260831142851768: {'server_status': 'doorOpened', 'order_id': 'TM08202202260831142851768', 'server_response': '{"rstatus": true, "SectionStatus": {"Header": " Your order is under process  ", "UI_Header": "", "Note": "", "SubHeader": "You can pull the door now."}, "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "SectionMain": {"Header": "Processing Order"}, "status": "True", "voiceNote": "Door is open...", "delay": 0}'} (ID: 1788166824835-0)
[2026-08-31 14:30:25,955.955 INFO    ] 2026-08-31 14:30:25
[2026-08-31 14:30:25,959.959 INFO    ] publish_status: order_id=TM08202202260831142851768
[2026-08-31 14:30:25,961.961 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831142851768
[2026-08-31 14:30:26,101.101 INFO    ] [publish_status] Message added to stream with ID: 1788166826043-0
[2026-08-31 14:30:26,104.104 INFO    ] Published to order:TM08202202260831142851768: {'server_status': 'processOrder', 'order_id': 'TM08202202260831142851768', 'timestamp': '2026-08-31T09:00:25.956952Z', 'server_response': '{"rstatus": true, "voiceNote": "Please Wait", "status": "True", "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "SectionMain": {"Header": "Processing Order"}, "SectionStatus": {"Header": " Your order is under process  ", "UI_Header": "", "Note": "", "SubHeader": "Please wait while we process your order"}, "delay": 0}'} (ID: 1788166826043-0)
[2026-08-31 14:30:26,267.267 INFO    ] {'server_status': 'processOrder', 'order_id': 'TM08202202260831142851768', 'server_response': {'rstatus': True, 'voiceNote': 'Please Wait', 'status': 'True', 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'SectionMain': {'Header': 'Processing Order'}, 'SectionStatus': {'Header': ' Your order is under process  ', 'UI_Header': '', 'Note': '', 'SubHeader': 'Please wait while we process your order'}, 'delay': 0}}
[2026-08-31 14:30:26,270.270 INFO    ] 200
[2026-08-31 14:30:26,272.272 INFO    ] {"data":{"server_status":"processOrder","order_id":"TM08202202260831142851768","server_response":{"rstatus":true,"voiceNote":"Please Wait","status":"true","SectionSKU":{"skus":[],"Header":"Thank you for bearing with us :)"},"SectionMain":{"Header":"Processing Order"},"SectionStatus":{"Header":" Your order is under process  ","UI_Header":"","Note":"","SubHeader":"Please wait while we process your order"},"delay":0}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 14:30:26,275.275 INFO    ] {'data': {'server_status': 'processOrder', 'order_id': 'TM08202202260831142851768', 'server_response': {'rstatus': True, 'voiceNote': 'Please Wait', 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'SectionMain': {'Header': 'Processing Order'}, 'status': 'true', 'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  ', 'UI_Header': '', 'Note': ''}, 'delay': 0}}, 'response': {'code': 'ORDER_EXISTS', 'status': True, 'data': 'order updated successfully', 'msg': 'order updated successfully'}}
[2026-08-31 14:30:26,278.278 INFO    ] 2026-08-31 14:30:26
[2026-08-31 14:30:26,281.281 INFO    ] None
[2026-08-31 14:30:26,284.284 INFO    ] Opening Door now
[2026-08-31 14:30:26,286.286 INFO    ] Opening Door now
[2026-08-31 14:30:26,289.289 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-08-31 14:30:26,292.292 INFO    ] 2026-08-31 14:30:26
[2026-08-31 14:30:26,295.295 INFO    ] playing audio file
[2026-08-31 14:30:26,313.313 INFO    ] 2026-08-31 14:30:26
[2026-08-31 14:30:26,317.317 INFO    ] 2026-08-31 14:30:26
[2026-08-31 14:30:29,429.429 INFO    ] 200
[2026-08-31 14:30:29,432.432 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "KITKAT Nestle 4 Finger Chocolate 38g"}], "Header": "Pick the below items from the door"}, "voiceNote": "Door 2 is open now", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 14:30:29,435.435 INFO    ] {'rstatus': False, 'voiceNote': 'Door 2 is open now', 'error': {'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress', 'code': 20001}, 'status': 'False', 'SectionSKU': {'skus': [{'name': 'KITKAT Nestle 4 Finger Chocolate 38g', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'Header': 'Please Close Door 2', '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'}}
[2026-08-31 14:30:32,512.512 INFO    ] 200
[2026-08-31 14:30:32,514.514 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "KITKAT Nestle 4 Finger Chocolate 38g"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 14:30:32,518.518 INFO    ] {'rstatus': False, 'voiceNote': 'Please close door 2', 'error': {'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress', 'code': 20001}, 'status': 'False', 'SectionSKU': {'skus': [{'name': 'KITKAT Nestle 4 Finger Chocolate 38g', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'Header': 'Please Close Door 2', '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'}}
[2026-08-31 14:30:35,651.651 INFO    ] 200
[2026-08-31 14:30:35,654.654 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "KITKAT Nestle 4 Finger Chocolate 38g"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 14:30:35,657.657 INFO    ] Please close door 2
[2026-08-31 14:30:35,660.660 INFO    ] Please close door 2
[2026-08-31 14:30:35,662.662 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-08-31 14:30:35,665.665 INFO    ] 2026-08-31 14:30:35
[2026-08-31 14:30:35,668.668 INFO    ] playing audio file
[2026-08-31 14:30:35,686.686 INFO    ] 2026-08-31 14:30:35
[2026-08-31 14:30:35,691.691 INFO    ] publish_status: order_id=TM08202202260831142851768
[2026-08-31 14:30:35,694.694 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831142851768
[2026-08-31 14:30:35,789.789 INFO    ] [publish_status] Message added to stream with ID: 1788166835739-0
[2026-08-31 14:30:35,792.792 INFO    ] Published to order:TM08202202260831142851768: {'server_status': 'OrderStatus', 'order_id': 'TM08202202260831142851768', 'timestamp': '2026-08-31T09:00:35.689011Z', 'server_response': '{"rstatus": false, "voiceNote": "Please close door 2", "error": {"tmessage": "In Progress", "data": {}, "umessage": "In Progress", "code": 20001}, "status": "False", "SectionSKU": {"skus": [{"name": "KITKAT Nestle 4 Finger Chocolate 38g", "qty": 1}], "Header": "Pick the below items from the door"}, "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Header": "Please Close Door 2", "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"}}'} (ID: 1788166835739-0)
[2026-08-31 14:30:36,550.550 INFO    ] {'server_status': 'OrderStatus', 'order_id': 'TM08202202260831142851768', 'server_response': {'rstatus': False, 'voiceNote': 'Please close door 2', 'error': {'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress', 'code': 20001}, 'status': 'False', 'SectionSKU': {'skus': [{'name': 'KITKAT Nestle 4 Finger Chocolate 38g', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'Header': 'Please Close Door 2', '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'}}}
[2026-08-31 14:30:36,553.553 INFO    ] 200
[2026-08-31 14:30:36,556.556 INFO    ] {"data":{"server_status":"OrderStatus","order_id":"TM08202202260831142851768","server_response":{"rstatus":false,"voiceNote":"Please close door 2","error":{"tmessage":"In Progress","data":[],"umessage":"In Progress","code":20001},"status":"false","SectionSKU":{"skus":[{"name":"KITKAT Nestle 4 Finger Chocolate 38g","qty":1}],"Header":"Pick the below items from the door"},"SectionMain":{"Header":"Door Open"},"SectionStatus":{"Header":"Please Close Door 2","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"}}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 14:30:36,560.560 INFO    ] {'data': {'server_status': 'OrderStatus', 'order_id': 'TM08202202260831142851768', 'server_response': {'rstatus': False, 'voiceNote': 'Please close door 2', 'error': {'tmessage': 'In Progress', 'data': [], 'umessage': 'In Progress', 'code': 20001}, 'SectionSKU': {'skus': [{'qty': 1, 'name': 'KITKAT Nestle 4 Finger Chocolate 38g'}], 'Header': 'Pick the below items from the door'}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'false', 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products'}}}, 'response': {'code': 'ORDER_EXISTS', 'status': True, 'data': 'order updated successfully', 'msg': 'order updated successfully'}}
[2026-08-31 14:30:36,563.563 INFO    ] {'rstatus': False, 'voiceNote': 'Please close door 2', 'error': {'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress', 'code': 20001}, 'status': 'False', 'SectionSKU': {'skus': [{'name': 'KITKAT Nestle 4 Finger Chocolate 38g', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'Header': 'Please Close Door 2', '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'}}
[2026-08-31 14:30:39,626.626 INFO    ] 200
[2026-08-31 14:30:39,629.629 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "KITKAT Nestle 4 Finger Chocolate 38g"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 14:30:39,633.633 INFO    ] {'rstatus': False, 'voiceNote': 'Please close door 2', 'error': {'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress', 'code': 20001}, 'status': 'False', 'SectionSKU': {'skus': [{'name': 'KITKAT Nestle 4 Finger Chocolate 38g', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'Header': 'Please Close Door 2', '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'}}
[2026-08-31 14:30:42,725.725 INFO    ] 200
[2026-08-31 14:30:42,728.728 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "KITKAT Nestle 4 Finger Chocolate 38g"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 14:30:42,732.732 INFO    ] {'rstatus': False, 'voiceNote': 'Please close door 2', 'error': {'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress', 'code': 20001}, 'status': 'False', 'SectionSKU': {'skus': [{'name': 'KITKAT Nestle 4 Finger Chocolate 38g', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'Header': 'Please Close Door 2', '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'}}
[2026-08-31 14:30:45,825.825 INFO    ] 200
[2026-08-31 14:30:45,828.828 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "KITKAT Nestle 4 Finger Chocolate 38g"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 14:30:45,831.831 INFO    ] Please close door 2
[2026-08-31 14:30:45,834.834 INFO    ] Please close door 2
[2026-08-31 14:30:45,838.838 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-08-31 14:30:45,841.841 INFO    ] 2026-08-31 14:30:45
[2026-08-31 14:30:45,844.844 INFO    ] playing audio file
[2026-08-31 14:30:45,863.863 INFO    ] 2026-08-31 14:30:45
[2026-08-31 14:30:45,868.868 INFO    ] publish_status: order_id=TM08202202260831142851768
[2026-08-31 14:30:45,872.872 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831142851768
[2026-08-31 14:30:46,003.003 INFO    ] [publish_status] Message added to stream with ID: 1788166845953-0
[2026-08-31 14:30:46,006.006 INFO    ] Published to order:TM08202202260831142851768: {'server_status': 'OrderStatus', 'order_id': 'TM08202202260831142851768', 'timestamp': '2026-08-31T09:00:45.866015Z', 'server_response': '{"rstatus": false, "voiceNote": "Please close door 2", "error": {"tmessage": "In Progress", "data": {}, "umessage": "In Progress", "code": 20001}, "status": "False", "SectionSKU": {"skus": [{"name": "KITKAT Nestle 4 Finger Chocolate 38g", "qty": 1}], "Header": "Pick the below items from the door"}, "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Header": "Please Close Door 2", "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"}}'} (ID: 1788166845953-0)
[2026-08-31 14:30:46,759.759 INFO    ] {'server_status': 'OrderStatus', 'order_id': 'TM08202202260831142851768', 'server_response': {'rstatus': False, 'voiceNote': 'Please close door 2', 'error': {'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress', 'code': 20001}, 'status': 'False', 'SectionSKU': {'skus': [{'name': 'KITKAT Nestle 4 Finger Chocolate 38g', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'Header': 'Please Close Door 2', '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'}}}
[2026-08-31 14:30:46,763.763 INFO    ] 200
[2026-08-31 14:30:46,766.766 INFO    ] {"data":{"server_status":"OrderStatus","order_id":"TM08202202260831142851768","server_response":{"rstatus":false,"voiceNote":"Please close door 2","error":{"tmessage":"In Progress","data":[],"umessage":"In Progress","code":20001},"status":"false","SectionSKU":{"skus":[{"name":"KITKAT Nestle 4 Finger Chocolate 38g","qty":1}],"Header":"Pick the below items from the door"},"SectionMain":{"Header":"Door Open"},"SectionStatus":{"Header":"Please Close Door 2","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"}}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 14:30:46,770.770 INFO    ] {'data': {'server_status': 'OrderStatus', 'order_id': 'TM08202202260831142851768', 'server_response': {'rstatus': False, 'voiceNote': 'Please close door 2', 'error': {'tmessage': 'In Progress', 'data': [], 'umessage': 'In Progress', 'code': 20001}, 'SectionSKU': {'skus': [{'qty': 1, 'name': 'KITKAT Nestle 4 Finger Chocolate 38g'}], 'Header': 'Pick the below items from the door'}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'false', 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products'}}}, 'response': {'code': 'ORDER_EXISTS', 'status': True, 'data': 'order updated successfully', 'msg': 'order updated successfully'}}
[2026-08-31 14:30:46,774.774 INFO    ] {'rstatus': False, 'voiceNote': 'Please close door 2', 'error': {'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress', 'code': 20001}, 'status': 'False', 'SectionSKU': {'skus': [{'name': 'KITKAT Nestle 4 Finger Chocolate 38g', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'Header': 'Please Close Door 2', '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'}}
[2026-08-31 14:30:49,825.825 INFO    ] 200
[2026-08-31 14:30:49,829.829 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "KITKAT Nestle 4 Finger Chocolate 38g"}], "Header": "Pick the below items from the door"}, "voiceNote": "Door 2 is closed now", "SectionMain": {"Header": "Door Close"}, "SectionStatus": {"Note": "If any due amount, clear at https://go.tinymart.in", "UI_Header": "DOOR 2\nIS \nCLOSED \nNOW", "SubHeader": "Please wait for invoice to generate", "Header": "Door 2 is closed now"}, "delay": 1000, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 14:30:49,832.832 INFO    ] {'rstatus': False, 'voiceNote': 'Door 2 is closed now', 'error': {'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress', 'code': 20001}, 'status': 'False', 'SectionSKU': {'skus': [{'name': 'KITKAT Nestle 4 Finger Chocolate 38g', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'SectionMain': {'Header': 'Door Close'}, 'SectionStatus': {'Header': 'Door 2 is closed now', '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'}, 'delay': 1000}
[2026-08-31 14:30:52,912.912 INFO    ] 200
[2026-08-31 14:30:52,915.915 INFO    ] {"SectionSKU": {"skus": [], "Header": "If you like us, tell others... else tell us"}, "voiceNote": "Transaction Completed", "SectionMain": {"Header": "Door Closed"}, "SectionStatus": {"Note": "If any due amount, clear at https://go.tinymart.in", "UI_Header": "", "SubHeader": "Please wait for invoice to generate", "Header": " Order is complete "}, "delay": 100, "status": "True", "rstatus": true}
[2026-08-31 14:30:52,919.919 INFO    ] {'rstatus': True, 'voiceNote': 'Transaction Completed', 'status': 'True', 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'SectionMain': {'Header': 'Door Closed'}, 'SectionStatus': {'Header': ' Order is complete ', 'UI_Header': '', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'SubHeader': 'Please wait for invoice to generate'}, 'delay': 100}
[2026-08-31 14:30:52,922.922 INFO    ] 2026-08-31 14:30:52
[2026-08-31 14:30:52,926.926 INFO    ] Order Completed 
[2026-08-31 14:30:52,929.929 INFO    ] Order Completed 
[2026-08-31 14:30:52,933.933 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-08-31 14:30:52,936.936 INFO    ] 2026-08-31 14:30:52
[2026-08-31 14:30:52,940.940 INFO    ] playing audio file
[2026-08-31 14:30:52,960.960 INFO    ] 2026-08-31 14:30:52
[2026-08-31 14:30:52,964.964 INFO    ] {'rstatus': True, 'voiceNote': 'Transaction Completed', 'status': 'True', 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'SectionMain': {'Header': 'Door Closed'}, 'SectionStatus': {'Header': ' Order is complete ', 'UI_Header': '', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'SubHeader': 'Please wait for invoice to generate'}, 'delay': 100}
[2026-08-31 14:30:52,968.968 INFO    ] 2026-08-31 14:30:52
[2026-08-31 14:30:53,392.392 INFO    ] 200
[2026-08-31 14:30:53,395.395 INFO    ] {"skus": [{"qty": 1, "image_url": "https://images.tinymart.in/product/4500677-4669.png", "sku_total": 10.0, "mrp": "10", "tray_id": "38", "name": "Eat Bit Peanut  Chikki 32gm per peice", "skuid": "4500677", "unit_price": "10", "door_id": ""}, {"qty": 2, "image_url": "https://images.tinymart.in/product/186084-5395.png", "sku_total": 60.0, "mrp": "30", "tray_id": "42", "name": "KITKAT Nestle 4 Finger Chocolate 38g per peice", "skuid": "186084", "unit_price": "30", "door_id": ""}], "anomaly": 0, "orderId": "TM08202202260831142851768", "res": "True", "logic": "WBL", "total_amount": 70.0, "rstatus": true}
[2026-08-31 14:30:53,401.401 INFO    ] {'rstatus': True, 'orderId': 'TM08202202260831142851768', 'anomaly': 0, 'skus': [{'image_url': 'https://images.tinymart.in/product/4500677-4669.png', 'tray_id': '38', 'skuid': '4500677', 'qty': 1, 'door_id': '', 'unit_price': '10', 'name': 'Eat Bit Peanut  Chikki 32gm per peice', 'mrp': '10', 'sku_total': 10.0}, {'image_url': 'https://images.tinymart.in/product/186084-5395.png', 'tray_id': '42', 'skuid': '186084', 'qty': 2, 'door_id': '', 'unit_price': '30', 'name': 'KITKAT Nestle 4 Finger Chocolate 38g per peice', 'mrp': '30', 'sku_total': 60.0}], 'total_amount': 70.0, 'logic': 'WBL', 'res': 'True'}
[2026-08-31 14:30:53,404.404 INFO    ] {'rstatus': True, 'orderId': 'TM08202202260831142851768', 'anomaly': 0, 'skus': [{'image_url': 'https://images.tinymart.in/product/4500677-4669.png', 'tray_id': '38', 'skuid': '4500677', 'qty': 1, 'door_id': '', 'unit_price': '10', 'name': 'Eat Bit Peanut  Chikki 32gm per peice', 'mrp': '10', 'sku_total': 10.0}, {'image_url': 'https://images.tinymart.in/product/186084-5395.png', 'tray_id': '42', 'skuid': '186084', 'qty': 2, 'door_id': '', 'unit_price': '30', 'name': 'KITKAT Nestle 4 Finger Chocolate 38g per peice', 'mrp': '30', 'sku_total': 60.0}], 'total_amount': 70.0, 'logic': 'WBL', 'res': 'True'}
[2026-08-31 14:30:53,407.407 INFO    ] 2026-08-31 14:30:53
[2026-08-31 14:30:53,410.410 INFO    ] 2026-08-31 14:30:53
[2026-08-31 14:30:53,413.413 INFO    ] 30
[2026-08-31 14:30:53,415.415 INFO    ] 2026-08-31 14:30:53
[2026-08-31 14:30:53,418.418 INFO    ] 2026-08-31 14:30:53
[2026-08-31 14:30:53,421.421 INFO    ]  You had Picked Excess of 40 Your Bill Amount is 70
[2026-08-31 14:30:53,423.423 INFO    ]  You had Picked Excess of 40 Your Bill Amount is 70
[2026-08-31 14:30:53,426.426 INFO    ] ca122db57cfaaf450e70df0c8018e592
[2026-08-31 14:30:53,429.429 INFO    ] 2026-08-31 14:30:53
[2026-08-31 14:30:53,432.432 INFO    ] playing audio file
[2026-08-31 14:30:53,450.450 INFO    ] 2026-08-31 14:30:53
[2026-08-31 14:30:53,453.453 INFO    ] 2026-08-31 14:30:53
[2026-08-31 14:30:53,457.457 INFO    ] publish_status: order_id=TM08202202260831142851768
[2026-08-31 14:30:53,460.460 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831142851768
[2026-08-31 14:30:53,561.561 INFO    ] [publish_status] Message added to stream with ID: 1788166853508-0
[2026-08-31 14:30:53,564.564 INFO    ] Published to order:TM08202202260831142851768: {'server_status': 'invoiceOrder', 'order_id': 'TM08202202260831142851768', 'timestamp': '2026-08-31T09:00:53.455363Z', 'server_response': '{"rstatus": true, "orderId": "TM08202202260831142851768", "anomaly": 0, "skus": [{"image_url": "https://images.tinymart.in/product/4500677-4669.png", "tray_id": "38", "skuid": "4500677", "qty": 1, "door_id": "", "unit_price": "10", "name": "Eat Bit Peanut  Chikki 32gm per peice", "mrp": "10", "sku_total": 10.0}, {"image_url": "https://images.tinymart.in/product/186084-5395.png", "tray_id": "42", "skuid": "186084", "qty": 2, "door_id": "", "unit_price": "30", "name": "KITKAT Nestle 4 Finger Chocolate 38g per peice", "mrp": "30", "sku_total": 60.0}], "total_amount": 70.0, "logic": "WBL", "res": "True"}'} (ID: 1788166853508-0)
[2026-08-31 14:30:54,929.929 INFO    ] {'server_status': 'invoiceOrder', 'order_id': 'TM08202202260831142851768', 'server_response': {'rstatus': True, 'orderId': 'TM08202202260831142851768', 'anomaly': 0, 'skus': [{'image_url': 'https://images.tinymart.in/product/4500677-4669.png', 'tray_id': '38', 'skuid': '4500677', 'qty': 1, 'door_id': '', 'unit_price': '10', 'name': 'Eat Bit Peanut  Chikki 32gm per peice', 'mrp': '10', 'sku_total': 10.0}, {'image_url': 'https://images.tinymart.in/product/186084-5395.png', 'tray_id': '42', 'skuid': '186084', 'qty': 2, 'door_id': '', 'unit_price': '30', 'name': 'KITKAT Nestle 4 Finger Chocolate 38g per peice', 'mrp': '30', 'sku_total': 60.0}], 'total_amount': 70.0, 'logic': 'WBL', 'res': 'True'}}
[2026-08-31 14:30:54,932.932 INFO    ] 200
[2026-08-31 14:30:54,934.934 INFO    ] {"data":{"server_status":"invoiceOrder","order_id":"TM08202202260831142851768","server_response":{"rstatus":true,"orderId":"TM08202202260831142851768","anomaly":0,"skus":[{"image_url":"https:\/\/images.tinymart.in\/product\/4500677-4669.png","tray_id":"38","skuid":"4500677","qty":1,"door_id":"","unit_price":"10","name":"Eat Bit Peanut  Chikki 32gm per peice","mrp":"10","sku_total":10},{"image_url":"https:\/\/images.tinymart.in\/product\/186084-5395.png","tray_id":"42","skuid":"186084","qty":2,"door_id":"","unit_price":"30","name":"KITKAT Nestle 4 Finger Chocolate 38g per peice","mrp":"30","sku_total":60}],"total_amount":70,"logic":"WBL","res":"true"}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 14:30:54,937.937 INFO    ] {'data': {'server_status': 'invoiceOrder', 'order_id': 'TM08202202260831142851768', 'server_response': {'rstatus': True, 'orderId': 'TM08202202260831142851768', 'anomaly': 0, 'skus': [{'image_url': 'https://images.tinymart.in/product/4500677-4669.png', 'tray_id': '38', 'skuid': '4500677', 'qty': 1, 'door_id': '', 'name': 'Eat Bit Peanut  Chikki 32gm per peice', 'unit_price': '10', 'mrp': '10', 'sku_total': 10}, {'image_url': 'https://images.tinymart.in/product/186084-5395.png', 'tray_id': '42', 'skuid': '186084', 'qty': 2, 'door_id': '', 'name': 'KITKAT Nestle 4 Finger Chocolate 38g per peice', 'unit_price': '30', 'mrp': '30', 'sku_total': 60}], 'total_amount': 70, 'logic': 'WBL', 'res': 'true'}}, 'response': {'code': 'ORDER_EXISTS', 'status': True, 'data': 'order updated successfully', 'msg': 'order updated successfully'}}
[2026-08-31 14:30:54,940.940 INFO    ] {'data': {'server_status': 'invoiceOrder', 'order_id': 'TM08202202260831142851768', 'server_response': {'rstatus': True, 'orderId': 'TM08202202260831142851768', 'anomaly': 0, 'skus': [{'image_url': 'https://images.tinymart.in/product/4500677-4669.png', 'tray_id': '38', 'skuid': '4500677', 'qty': 1, 'door_id': '', 'name': 'Eat Bit Peanut  Chikki 32gm per peice', 'unit_price': '10', 'mrp': '10', 'sku_total': 10}, {'image_url': 'https://images.tinymart.in/product/186084-5395.png', 'tray_id': '42', 'skuid': '186084', 'qty': 2, 'door_id': '', 'name': 'KITKAT Nestle 4 Finger Chocolate 38g per peice', 'unit_price': '30', 'mrp': '30', 'sku_total': 60}], 'total_amount': 70, 'logic': 'WBL', 'res': 'true'}}, 'response': {'code': 'ORDER_EXISTS', 'status': True, 'data': 'order updated successfully', 'msg': 'order updated successfully'}}
[2026-08-31 14:30:54,942.942 INFO    ] 2026-08-31 14:30:54
[2026-08-31 14:30:57,780.780 INFO    ] 200
[2026-08-31 14:30:57,782.782 INFO    ] {"tray_sync": [], "order_items": [], "orders_data": [], "orders_synced": [], "tray_synced": ["TM08202202260831142851768", "TM08202202260831142851768", "TM08202202260831142851768", "TM08202202260831142851768", "TM08202202260831142851768", "TM08202202260831142851768", "TM08202202260831142851768", "TM08202202260831142851768", "TM08202202260831142851768", "TM08202202260831142851768", "TM08202202260831142851768", "TM08202202260831142851768", "TM08202202260831142851768", "TM08202202260831142851768", "TM08202202260831142851768", "TM08202202260831142851768", "TM08202202260831142851768", "TM08202202260831142851768", "TM08202202260831142851768", "TM08202202260831142851768", "TM08202202260831142851768", "TM08202202260831142851768", "TM08202202260831142851768", "TM08202202260831142851768", "TM08202202260831142851768", "TM08202202260831142851768", "TM08202202260831142851768", "TM08202202260831142851768", "TM08202202260831142851768", "TM08202202260831142851768", "TM08202202260831142851768", "TM08202202260831142851768"], "orders_data_synced": [], "status": true, "order_items_synced": ["TM08202202260831142851768_0", "TM08202202260831142851768_1"], "orders": []}
[2026-08-31 14:30:57,785.785 INFO    ] 2026-08-31 14:30:57
[2026-08-31 14:30:57,956.956 INFO    ] 200
[2026-08-31 14:30:57,960.960 INFO    ] True
[2026-08-31 14:30:57,963.963 INFO    ] cleanup_start_order_file_after_processing: order_id=TM08202202260831142851768
[2026-08-31 14:30:57,967.967 INFO    ] start order file deleted
[2026-08-31 14:30:57,970.970 INFO    ] Checking for system updates...
[2026-08-31 14:30:58,007.007 INFO    ] 200
[2026-08-31 14:30:58,010.010 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:30:58,068.068 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:30:58,071.071 INFO    ] No update needed
[2026-08-31 14:30:58,074.074 INFO    ] Checking for camera pi updates...
[2026-08-31 14:30:58,118.118 INFO    ] 200
[2026-08-31 14:30:58,120.120 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:30:58,174.174 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:30:58,355.355 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:30:58,358.358 INFO    ] No camera update needed
[2026-08-31 14:30:58,361.361 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:30:58,363.363 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:30:58,369.369 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:30:58,375.375 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:31:00,419.419 INFO    ] ================================================
[2026-08-31 14:31:00,435.435 INFO    ] Launching Daemon at Mon Aug 31 14:31:00 IST 2026
[2026-08-31 14:31:00,446.446 INFO    ] ================================================
[2026-08-31 14:31:01,021.021 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:31:01
[2026-08-31 14:31:01,619.619 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:31:02,055.055 INFO    ] Initializing speech engine...
[2026-08-31 14:31:02,068.068 INFO    ] 2026-08-31 14:31:02
[2026-08-31 14:31:02,413.413 INFO    ] 2026-08-31 14:31:02
[2026-08-31 14:31:02,459.459 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:31:02,718.718 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:31:02,741.741 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:31:02,970.970 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:31:03,000.000 INFO    ] time= 31/08/2026 14:31:02
[2026-08-31 14:31:03,019.019 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:31:03,029.029 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:31:03,180.180 INFO    ] No existing commands found in stream
[2026-08-31 14:31:08,201.201 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:31:08,204.204 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-08-31 14:31:10,056.056 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 14:31:10,058.058 INFO    ] Checking for system updates...
[2026-08-31 14:31:10,094.094 INFO    ] 200
[2026-08-31 14:31:10,097.097 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:31:10,158.158 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:31:10,161.161 INFO    ] No update needed
[2026-08-31 14:31:10,163.163 INFO    ] Checking for camera pi updates...
[2026-08-31 14:31:10,197.197 INFO    ] 200
[2026-08-31 14:31:10,200.200 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:31:10,240.240 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:31:10,339.339 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:31:10,341.341 INFO    ] No camera update needed
[2026-08-31 14:31:10,343.343 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:31:10,346.346 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:31:10,351.351 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:31:10,356.356 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:31:12,398.398 INFO    ] ================================================
[2026-08-31 14:31:12,413.413 INFO    ] Launching Daemon at Mon Aug 31 14:31:12 IST 2026
[2026-08-31 14:31:12,424.424 INFO    ] ================================================
[2026-08-31 14:31:12,989.989 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:31:12
[2026-08-31 14:31:13,570.570 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:31:13,821.821 INFO    ] Initializing speech engine...
[2026-08-31 14:31:13,843.843 INFO    ] 2026-08-31 14:31:13
[2026-08-31 14:31:14,096.096 INFO    ] 2026-08-31 14:31:14
[2026-08-31 14:31:14,138.138 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:31:14,384.384 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:31:14,394.394 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:31:14,606.606 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:31:14,657.657 INFO    ] time= 31/08/2026 14:31:14
[2026-08-31 14:31:14,663.663 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:31:14,682.682 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:31:14,810.810 INFO    ] No existing commands found in stream
[2026-08-31 14:31:19,827.827 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:31:19,830.830 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-08-31 14:31:22,687.687 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 14:31:22,689.689 INFO    ] Checking for system updates...
[2026-08-31 14:31:22,725.725 INFO    ] 200
[2026-08-31 14:31:22,727.727 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:31:22,780.780 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:31:22,782.782 INFO    ] No update needed
[2026-08-31 14:31:22,785.785 INFO    ] Checking for camera pi updates...
[2026-08-31 14:31:22,823.823 INFO    ] 200
[2026-08-31 14:31:22,825.825 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:31:22,865.865 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:31:22,951.951 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:31:22,953.953 INFO    ] No camera update needed
[2026-08-31 14:31:22,955.955 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:31:22,958.958 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:31:22,963.963 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:31:22,968.968 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:31:25,008.008 INFO    ] ================================================
[2026-08-31 14:31:25,023.023 INFO    ] Launching Daemon at Mon Aug 31 14:31:25 IST 2026
[2026-08-31 14:31:25,035.035 INFO    ] ================================================
[2026-08-31 14:31:25,602.602 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:31:25
[2026-08-31 14:31:26,185.185 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:31:26,458.458 INFO    ] Initializing speech engine...
[2026-08-31 14:31:26,467.467 INFO    ] 2026-08-31 14:31:26
[2026-08-31 14:31:26,716.716 INFO    ] 2026-08-31 14:31:26
[2026-08-31 14:31:26,751.751 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:31:27,011.011 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:31:27,020.020 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:31:27,242.242 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:31:27,284.284 INFO    ] time= 31/08/2026 14:31:27
[2026-08-31 14:31:27,291.291 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:31:27,309.309 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:31:27,457.457 INFO    ] No existing commands found in stream
[2026-08-31 14:31:32,489.489 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:31:32,492.492 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-08-31 14:31:34,259.259 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 14:31:34,262.262 INFO    ] Checking for system updates...
[2026-08-31 14:31:34,298.298 INFO    ] 200
[2026-08-31 14:31:34,301.301 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:31:34,360.360 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:31:34,362.362 INFO    ] No update needed
[2026-08-31 14:31:34,365.365 INFO    ] Checking for camera pi updates...
[2026-08-31 14:31:34,402.402 INFO    ] 200
[2026-08-31 14:31:34,404.404 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:31:34,449.449 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:31:34,542.542 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:31:34,544.544 INFO    ] No camera update needed
[2026-08-31 14:31:34,547.547 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:31:34,549.549 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:31:34,554.554 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:31:34,559.559 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:31:36,602.602 INFO    ] ================================================
[2026-08-31 14:31:36,618.618 INFO    ] Launching Daemon at Mon Aug 31 14:31:36 IST 2026
[2026-08-31 14:31:36,629.629 INFO    ] ================================================
[2026-08-31 14:31:37,290.290 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:31:37
[2026-08-31 14:31:37,972.972 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:31:38,280.280 INFO    ] Initializing speech engine...
[2026-08-31 14:31:38,294.294 INFO    ] 2026-08-31 14:31:38
[2026-08-31 14:31:38,565.565 INFO    ] 2026-08-31 14:31:38
[2026-08-31 14:31:38,621.621 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:31:38,925.925 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:31:38,975.975 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:31:39,168.168 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:31:39,227.227 INFO    ] time= 31/08/2026 14:31:39
[2026-08-31 14:31:39,263.263 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:31:39,313.313 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:31:39,468.468 INFO    ] No existing commands found in stream
[2026-08-31 14:31:44,499.499 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:31:44,503.503 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-08-31 14:31:48,450.450 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 14:31:48,454.454 INFO    ] Checking for system updates...
[2026-08-31 14:31:48,497.497 INFO    ] 200
[2026-08-31 14:31:48,500.500 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:31:48,555.555 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:31:48,558.558 INFO    ] No update needed
[2026-08-31 14:31:48,561.561 INFO    ] Checking for camera pi updates...
[2026-08-31 14:31:48,595.595 INFO    ] 200
[2026-08-31 14:31:48,599.599 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:31:48,641.641 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:31:48,718.718 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:31:48,721.721 INFO    ] No camera update needed
[2026-08-31 14:31:48,724.724 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:31:48,726.726 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:31:48,733.733 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:31:48,739.739 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:31:50,781.781 INFO    ] ================================================
[2026-08-31 14:31:50,797.797 INFO    ] Launching Daemon at Mon Aug 31 14:31:50 IST 2026
[2026-08-31 14:31:50,808.808 INFO    ] ================================================
[2026-08-31 14:31:51,406.406 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:31:51
[2026-08-31 14:31:52,101.101 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:31:52,426.426 INFO    ] Initializing speech engine...
[2026-08-31 14:31:52,434.434 INFO    ] 2026-08-31 14:31:52
[2026-08-31 14:31:52,747.747 INFO    ] 2026-08-31 14:31:52
[2026-08-31 14:31:52,838.838 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:31:53,038.038 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:31:53,062.062 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:31:53,286.286 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:31:53,314.314 INFO    ] time= 31/08/2026 14:31:53
[2026-08-31 14:31:53,324.324 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:31:53,333.333 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:31:53,475.475 INFO    ] No existing commands found in stream
[2026-08-31 14:31:58,512.512 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:31:58,515.515 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-08-31 14:32:02,971.971 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 14:32:02,975.975 INFO    ] Checking for system updates...
[2026-08-31 14:32:03,018.018 INFO    ] 200
[2026-08-31 14:32:03,021.021 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:32:03,094.094 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:32:03,097.097 INFO    ] No update needed
[2026-08-31 14:32:03,102.102 INFO    ] Checking for camera pi updates...
[2026-08-31 14:32:03,150.150 INFO    ] 200
[2026-08-31 14:32:03,153.153 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:32:03,217.217 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:32:03,320.320 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:32:03,324.324 INFO    ] No camera update needed
[2026-08-31 14:32:03,327.327 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:32:03,331.331 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:32:03,338.338 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:32:03,345.345 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:32:05,385.385 INFO    ] ================================================
[2026-08-31 14:32:05,401.401 INFO    ] Launching Daemon at Mon Aug 31 14:32:05 IST 2026
[2026-08-31 14:32:05,413.413 INFO    ] ================================================
[2026-08-31 14:32:05,994.994 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:32:05
[2026-08-31 14:32:06,595.595 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:32:06,871.871 INFO    ] Initializing speech engine...
[2026-08-31 14:32:06,882.882 INFO    ] 2026-08-31 14:32:06
[2026-08-31 14:32:07,165.165 INFO    ] 2026-08-31 14:32:07
[2026-08-31 14:32:07,218.218 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:32:08,203.203 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:32:08,247.247 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:32:08,569.569 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:32:08,575.575 INFO    ] time= 31/08/2026 14:32:08
[2026-08-31 14:32:08,579.579 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:32:08,585.585 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:32:08,716.716 INFO    ] No existing commands found in stream
[2026-08-31 14:32:13,726.726 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:32:13,729.729 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-08-31 14:32:22,916.916 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 14:32:22,918.918 INFO    ] Checking for system updates...
[2026-08-31 14:32:22,960.960 INFO    ] 200
[2026-08-31 14:32:22,962.962 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:32:23,014.014 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:32:23,017.017 INFO    ] No update needed
[2026-08-31 14:32:23,020.020 INFO    ] Checking for camera pi updates...
[2026-08-31 14:32:23,053.053 INFO    ] 200
[2026-08-31 14:32:23,056.056 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:32:23,102.102 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:32:23,184.184 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:32:23,186.186 INFO    ] No camera update needed
[2026-08-31 14:32:23,189.189 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:32:23,191.191 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:32:23,197.197 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:32:23,202.202 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:32:25,244.244 INFO    ] ================================================
[2026-08-31 14:32:25,260.260 INFO    ] Launching Daemon at Mon Aug 31 14:32:25 IST 2026
[2026-08-31 14:32:25,271.271 INFO    ] ================================================
[2026-08-31 14:32:25,858.858 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:32:25
[2026-08-31 14:32:26,453.453 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:32:26,726.726 INFO    ] Initializing speech engine...
[2026-08-31 14:32:26,734.734 INFO    ] 2026-08-31 14:32:26
[2026-08-31 14:32:26,988.988 INFO    ] 2026-08-31 14:32:26
[2026-08-31 14:32:27,023.023 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:32:29,719.719 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:32:29,729.729 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:32:31,541.541 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:32:31,544.544 INFO    ] time= 31/08/2026 14:32:31
[2026-08-31 14:32:31,546.546 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:32:31,549.549 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:32:32,955.955 INFO    ] No existing commands found in stream
[2026-08-31 14:32:37,965.965 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:32:37,968.968 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-08-31 14:32:40,871.871 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 14:32:40,873.873 INFO    ] Checking for system updates...
[2026-08-31 14:32:40,910.910 INFO    ] 200
[2026-08-31 14:32:40,912.912 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:32:40,969.969 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:32:40,971.971 INFO    ] No update needed
[2026-08-31 14:32:40,973.973 INFO    ] Checking for camera pi updates...
[2026-08-31 14:32:41,013.013 INFO    ] 200
[2026-08-31 14:32:41,015.015 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:32:41,060.060 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:32:41,150.150 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:32:41,152.152 INFO    ] No camera update needed
[2026-08-31 14:32:41,155.155 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:32:41,157.157 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:32:41,162.162 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:32:41,167.167 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:32:43,209.209 INFO    ] ================================================
[2026-08-31 14:32:43,225.225 INFO    ] Launching Daemon at Mon Aug 31 14:32:43 IST 2026
[2026-08-31 14:32:43,236.236 INFO    ] ================================================
[2026-08-31 14:32:43,826.826 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:32:43
[2026-08-31 14:32:44,431.431 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:32:44,710.710 INFO    ] Initializing speech engine...
[2026-08-31 14:32:44,719.719 INFO    ] 2026-08-31 14:32:44
[2026-08-31 14:32:44,980.980 INFO    ] 2026-08-31 14:32:44
[2026-08-31 14:32:45,010.010 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:32:45,254.254 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:32:45,263.263 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:32:45,483.483 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:32:45,522.522 INFO    ] time= 31/08/2026 14:32:45
[2026-08-31 14:32:45,540.540 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:32:45,549.549 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:32:45,672.672 INFO    ] No existing commands found in stream
[2026-08-31 14:32:50,689.689 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:32:50,691.691 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-08-31 14:32:53,654.654 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 14:32:53,657.657 INFO    ] Checking for system updates...
[2026-08-31 14:32:53,693.693 INFO    ] 200
[2026-08-31 14:32:53,695.695 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:32:53,748.748 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:32:53,750.750 INFO    ] No update needed
[2026-08-31 14:32:53,752.752 INFO    ] Checking for camera pi updates...
[2026-08-31 14:32:53,790.790 INFO    ] 200
[2026-08-31 14:32:53,792.792 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:32:53,837.837 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:32:53,912.912 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:32:53,915.915 INFO    ] No camera update needed
[2026-08-31 14:32:53,917.917 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:32:53,919.919 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:32:53,925.925 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:32:53,930.930 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:32:55,972.972 INFO    ] ================================================
[2026-08-31 14:32:55,988.988 INFO    ] Launching Daemon at Mon Aug 31 14:32:55 IST 2026
[2026-08-31 14:32:56,998.998 INFO    ] ================================================
[2026-08-31 14:32:56,649.649 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:32:56
[2026-08-31 14:32:57,237.237 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:32:57,495.495 INFO    ] Initializing speech engine...
[2026-08-31 14:32:57,511.511 INFO    ] 2026-08-31 14:32:57
[2026-08-31 14:32:57,794.794 INFO    ] 2026-08-31 14:32:57
[2026-08-31 14:32:57,830.830 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:32:58,121.121 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:32:58,131.131 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:32:58,285.285 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:32:58,335.335 INFO    ] time= 31/08/2026 14:32:58
[2026-08-31 14:32:58,384.384 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:32:58,434.434 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:32:58,567.567 INFO    ] No existing commands found in stream
[2026-08-31 14:33:03,589.589 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:33:03,592.592 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-08-31 14:33:07,455.455 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 14:33:07,458.458 INFO    ] Checking for system updates...
[2026-08-31 14:33:07,492.492 INFO    ] 200
[2026-08-31 14:33:07,495.495 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:33:07,547.547 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:33:07,550.550 INFO    ] No update needed
[2026-08-31 14:33:07,552.552 INFO    ] Checking for camera pi updates...
[2026-08-31 14:33:07,589.589 INFO    ] 200
[2026-08-31 14:33:07,591.591 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:33:07,631.631 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:33:07,724.724 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:33:07,727.727 INFO    ] No camera update needed
[2026-08-31 14:33:07,729.729 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:33:07,731.731 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:33:07,737.737 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:33:07,742.742 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:33:09,782.782 INFO    ] ================================================
[2026-08-31 14:33:09,797.797 INFO    ] Launching Daemon at Mon Aug 31 14:33:09 IST 2026
[2026-08-31 14:33:09,808.808 INFO    ] ================================================
[2026-08-31 14:33:10,382.382 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:33:10
[2026-08-31 14:33:10,966.966 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:33:11,240.240 INFO    ] Initializing speech engine...
[2026-08-31 14:33:11,248.248 INFO    ] 2026-08-31 14:33:11
[2026-08-31 14:33:11,520.520 INFO    ] 2026-08-31 14:33:11
[2026-08-31 14:33:11,562.562 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:33:11,788.788 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:33:11,793.793 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:33:11,926.926 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:33:11,980.980 INFO    ] time= 31/08/2026 14:33:11
[2026-08-31 14:33:12,034.034 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:33:12,061.061 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:33:12,206.206 INFO    ] No existing commands found in stream
[2026-08-31 14:33:17,226.226 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:33:17,229.229 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-08-31 14:33:21,593.593 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 14:33:21,596.596 INFO    ] Checking for system updates...
[2026-08-31 14:33:21,631.631 INFO    ] 200
[2026-08-31 14:33:21,634.634 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:33:21,701.701 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:33:21,704.704 INFO    ] No update needed
[2026-08-31 14:33:21,706.706 INFO    ] Checking for camera pi updates...
[2026-08-31 14:33:21,747.747 INFO    ] 200
[2026-08-31 14:33:21,750.750 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:33:21,790.790 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:33:21,871.871 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:33:21,875.875 INFO    ] No camera update needed
[2026-08-31 14:33:21,877.877 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:33:21,880.880 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:33:21,885.885 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:33:21,890.890 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:33:23,931.931 INFO    ] ================================================
[2026-08-31 14:33:23,946.946 INFO    ] Launching Daemon at Mon Aug 31 14:33:23 IST 2026
[2026-08-31 14:33:23,957.957 INFO    ] ================================================
[2026-08-31 14:33:24,604.604 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:33:24
[2026-08-31 14:33:25,269.269 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:33:25,569.569 INFO    ] Initializing speech engine...
[2026-08-31 14:33:25,578.578 INFO    ] 2026-08-31 14:33:25
[2026-08-31 14:33:25,868.868 INFO    ] 2026-08-31 14:33:25
[2026-08-31 14:33:25,907.907 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:33:26,136.136 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:33:26,143.143 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:33:26,361.361 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:33:26,402.402 INFO    ] time= 31/08/2026 14:33:26
[2026-08-31 14:33:26,418.418 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:33:26,428.428 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:33:26,579.579 INFO    ] No existing commands found in stream
[2026-08-31 14:33:31,610.610 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:33:31,614.614 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-08-31 14:33:34,116.116 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 14:33:34,120.120 INFO    ] Checking for system updates...
[2026-08-31 14:33:34,156.156 INFO    ] 200
[2026-08-31 14:33:34,159.159 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:33:34,220.220 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:33:34,222.222 INFO    ] No update needed
[2026-08-31 14:33:34,225.225 INFO    ] Checking for camera pi updates...
[2026-08-31 14:33:34,263.263 INFO    ] 200
[2026-08-31 14:33:34,266.266 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:33:34,312.312 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:33:34,397.397 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:33:34,400.400 INFO    ] No camera update needed
[2026-08-31 14:33:34,402.402 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:33:34,405.405 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:33:34,411.411 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:33:34,417.417 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:33:36,460.460 INFO    ] ================================================
[2026-08-31 14:33:36,475.475 INFO    ] Launching Daemon at Mon Aug 31 14:33:36 IST 2026
[2026-08-31 14:33:36,486.486 INFO    ] ================================================
[2026-08-31 14:33:37,063.063 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:33:37
[2026-08-31 14:33:37,658.658 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:33:37,910.910 INFO    ] Initializing speech engine...
[2026-08-31 14:33:37,940.940 INFO    ] 2026-08-31 14:33:37
[2026-08-31 14:33:38,197.197 INFO    ] 2026-08-31 14:33:38
[2026-08-31 14:33:38,232.232 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:33:38,433.433 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:33:38,493.493 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:33:38,678.678 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:33:38,724.724 INFO    ] time= 31/08/2026 14:33:38
[2026-08-31 14:33:38,768.768 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:33:38,774.774 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:33:38,886.886 INFO    ] No existing commands found in stream
[2026-08-31 14:33:43,908.908 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:33:43,910.910 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-08-31 14:33:48,236.236 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 14:33:48,238.238 INFO    ] Checking for system updates...
[2026-08-31 14:33:48,274.274 INFO    ] 200
[2026-08-31 14:33:48,277.277 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:33:48,329.329 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:33:48,332.332 INFO    ] No update needed
[2026-08-31 14:33:48,341.341 INFO    ] Checking for camera pi updates...
[2026-08-31 14:33:48,378.378 INFO    ] 200
[2026-08-31 14:33:48,380.380 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:33:48,425.425 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:33:48,526.526 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:33:48,529.529 INFO    ] No camera update needed
[2026-08-31 14:33:48,531.531 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:33:48,534.534 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:33:48,539.539 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:33:48,544.544 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:33:50,586.586 INFO    ] ================================================
[2026-08-31 14:33:50,602.602 INFO    ] Launching Daemon at Mon Aug 31 14:33:50 IST 2026
[2026-08-31 14:33:50,613.613 INFO    ] ================================================
[2026-08-31 14:33:51,258.258 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:33:51
[2026-08-31 14:33:51,919.919 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:33:52,223.223 INFO    ] Initializing speech engine...
[2026-08-31 14:33:52,237.237 INFO    ] 2026-08-31 14:33:52
[2026-08-31 14:33:52,511.511 INFO    ] 2026-08-31 14:33:52
[2026-08-31 14:33:52,566.566 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:33:52,818.818 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:33:52,824.824 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:33:53,053.053 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:33:53,071.071 INFO    ] time= 31/08/2026 14:33:53
[2026-08-31 14:33:53,093.093 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:33:53,120.120 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:33:53,255.255 INFO    ] No existing commands found in stream
[2026-08-31 14:33:58,291.291 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:33:58,294.294 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-08-31 14:33:58,958.958 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 14:33:58,961.961 INFO    ] Checking for system updates...
[2026-08-31 14:33:58,996.996 INFO    ] 200
[2026-08-31 14:33:58,998.998 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:33:59,053.053 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:33:59,056.056 INFO    ] No update needed
[2026-08-31 14:33:59,058.058 INFO    ] Checking for camera pi updates...
[2026-08-31 14:33:59,095.095 INFO    ] 200
[2026-08-31 14:33:59,097.097 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:33:59,142.142 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:33:59,236.236 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:33:59,239.239 INFO    ] No camera update needed
[2026-08-31 14:33:59,241.241 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:33:59,244.244 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:33:59,253.253 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:33:59,260.260 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:34:01,364.364 INFO    ] ================================================
[2026-08-31 14:34:01,394.394 INFO    ] Launching Daemon at Mon Aug 31 14:34:01 IST 2026
[2026-08-31 14:34:01,425.425 INFO    ] ================================================
[2026-08-31 14:34:02,201.201 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:34:02
[2026-08-31 14:34:02,968.968 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:34:03,276.276 INFO    ] Initializing speech engine...
[2026-08-31 14:34:03,288.288 INFO    ] 2026-08-31 14:34:03
[2026-08-31 14:34:03,597.597 INFO    ] 2026-08-31 14:34:03
[2026-08-31 14:34:03,682.682 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:34:03,901.901 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:34:03,963.963 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:34:04,116.116 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:34:04,146.146 INFO    ] time= 31/08/2026 14:34:04
[2026-08-31 14:34:04,155.155 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:34:04,166.166 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:34:04,319.319 INFO    ] No existing commands found in stream
[2026-08-31 14:34:09,350.350 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:34:09,353.353 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-08-31 14:34:16,238.238 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 14:34:16,241.241 INFO    ] Checking for system updates...
[2026-08-31 14:34:16,281.281 INFO    ] 200
[2026-08-31 14:34:16,284.284 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:34:16,351.351 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:34:16,355.355 INFO    ] No update needed
[2026-08-31 14:34:16,358.358 INFO    ] Checking for camera pi updates...
[2026-08-31 14:34:16,395.395 INFO    ] 200
[2026-08-31 14:34:16,398.398 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:34:16,449.449 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:34:16,683.683 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:34:16,685.685 INFO    ] No camera update needed
[2026-08-31 14:34:16,688.688 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:34:16,691.691 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:34:16,697.697 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:34:16,703.703 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:34:18,744.744 INFO    ] ================================================
[2026-08-31 14:34:18,759.759 INFO    ] Launching Daemon at Mon Aug 31 14:34:18 IST 2026
[2026-08-31 14:34:18,770.770 INFO    ] ================================================
[2026-08-31 14:34:19,362.362 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:34:19
[2026-08-31 14:34:19,975.975 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:34:20,246.246 INFO    ] Initializing speech engine...
[2026-08-31 14:34:20,261.261 INFO    ] 2026-08-31 14:34:20
[2026-08-31 14:34:20,529.529 INFO    ] 2026-08-31 14:34:20
[2026-08-31 14:34:20,564.564 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:34:22,307.307 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:34:22,312.312 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:34:24,839.839 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:34:24,841.841 INFO    ] time= 31/08/2026 14:34:24
[2026-08-31 14:34:24,844.844 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:34:24,846.846 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:34:26,313.313 INFO    ] No existing commands found in stream
[2026-08-31 14:34:31,319.319 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:34:31,322.322 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-08-31 14:34:32,718.718 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 14:34:32,721.721 INFO    ] Checking for system updates...
[2026-08-31 14:34:32,760.760 INFO    ] 200
[2026-08-31 14:34:32,763.763 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:34:32,816.816 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:34:32,819.819 INFO    ] No update needed
[2026-08-31 14:34:32,821.821 INFO    ] Checking for camera pi updates...
[2026-08-31 14:34:32,860.860 INFO    ] 200
[2026-08-31 14:34:32,863.863 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:34:32,909.909 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:34:33,011.011 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:34:33,014.014 INFO    ] No camera update needed
[2026-08-31 14:34:33,017.017 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:34:33,020.020 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:34:33,026.026 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:34:33,031.031 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:34:35,073.073 INFO    ] ================================================
[2026-08-31 14:34:35,088.088 INFO    ] Launching Daemon at Mon Aug 31 14:34:35 IST 2026
[2026-08-31 14:34:35,099.099 INFO    ] ================================================
[2026-08-31 14:34:35,742.742 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:34:35
[2026-08-31 14:34:36,400.400 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:34:36,704.704 INFO    ] Initializing speech engine...
[2026-08-31 14:34:36,711.711 INFO    ] 2026-08-31 14:34:36
[2026-08-31 14:34:36,982.982 INFO    ] 2026-08-31 14:34:36
[2026-08-31 14:34:37,039.039 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:34:37,266.266 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:34:37,271.271 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:34:37,497.497 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:34:37,530.530 INFO    ] time= 31/08/2026 14:34:37
[2026-08-31 14:34:37,549.549 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:34:37,569.569 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:34:37,698.698 INFO    ] No existing commands found in stream
[2026-08-31 14:34:42,729.729 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:34:42,733.733 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-08-31 14:34:44,903.903 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 14:34:44,906.906 INFO    ] Checking for system updates...
[2026-08-31 14:34:44,947.947 INFO    ] 200
[2026-08-31 14:34:44,949.949 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:34:45,007.007 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:34:45,010.010 INFO    ] No update needed
[2026-08-31 14:34:45,012.012 INFO    ] Checking for camera pi updates...
[2026-08-31 14:34:45,051.051 INFO    ] 200
[2026-08-31 14:34:45,054.054 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:34:45,100.100 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:34:45,199.199 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:34:45,202.202 INFO    ] No camera update needed
[2026-08-31 14:34:45,205.205 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:34:45,208.208 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:34:45,214.214 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:34:45,220.220 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:34:47,263.263 INFO    ] ================================================
[2026-08-31 14:34:47,279.279 INFO    ] Launching Daemon at Mon Aug 31 14:34:47 IST 2026
[2026-08-31 14:34:47,290.290 INFO    ] ================================================
[2026-08-31 14:34:47,858.858 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:34:47
[2026-08-31 14:34:48,439.439 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:34:48,690.690 INFO    ] Initializing speech engine...
[2026-08-31 14:34:48,703.703 INFO    ] 2026-08-31 14:34:48
[2026-08-31 14:34:48,969.969 INFO    ] 2026-08-31 14:34:48
[2026-08-31 14:34:49,005.005 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:34:49,288.288 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:34:49,295.295 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:34:49,526.526 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:34:49,536.536 INFO    ] time= 31/08/2026 14:34:49
[2026-08-31 14:34:49,554.554 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:34:49,561.561 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:34:49,712.712 INFO    ] No existing commands found in stream
[2026-08-31 14:34:54,748.748 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:34:54,750.750 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-08-31 14:34:56,200.200 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 14:34:56,203.203 INFO    ] Checking for system updates...
[2026-08-31 14:34:56,241.241 INFO    ] 200
[2026-08-31 14:34:56,244.244 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:34:56,296.296 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:34:56,299.299 INFO    ] No update needed
[2026-08-31 14:34:56,301.301 INFO    ] Checking for camera pi updates...
[2026-08-31 14:34:56,334.334 INFO    ] 200
[2026-08-31 14:34:56,337.337 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:34:56,378.378 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:34:56,464.464 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:34:56,466.466 INFO    ] No camera update needed
[2026-08-31 14:34:56,469.469 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:34:56,471.471 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:34:56,476.476 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:34:56,481.481 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:34:58,523.523 INFO    ] ================================================
[2026-08-31 14:34:58,539.539 INFO    ] Launching Daemon at Mon Aug 31 14:34:58 IST 2026
[2026-08-31 14:34:58,550.550 INFO    ] ================================================
[2026-08-31 14:34:59,201.201 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:34:59
[2026-08-31 14:34:59,875.875 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:35:00,179.179 INFO    ] Initializing speech engine...
[2026-08-31 14:35:00,188.188 INFO    ] 2026-08-31 14:35:00
[2026-08-31 14:35:00,464.464 INFO    ] 2026-08-31 14:35:00
[2026-08-31 14:35:00,521.521 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:35:00,757.757 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:35:00,762.762 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:35:01,019.019 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:35:01,031.031 INFO    ] time= 31/08/2026 14:35:01
[2026-08-31 14:35:01,051.051 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:35:01,068.068 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:35:01,192.192 INFO    ] No existing commands found in stream
[2026-08-31 14:35:06,216.216 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:35:06,220.220 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-08-31 14:35:08,918.918 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 14:35:08,921.921 INFO    ] Checking for system updates...
[2026-08-31 14:35:08,959.959 INFO    ] 200
[2026-08-31 14:35:08,962.962 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:35:09,015.015 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:35:09,018.018 INFO    ] No update needed
[2026-08-31 14:35:09,021.021 INFO    ] Checking for camera pi updates...
[2026-08-31 14:35:09,061.061 INFO    ] 200
[2026-08-31 14:35:09,064.064 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:35:09,110.110 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:35:09,218.218 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:35:09,221.221 INFO    ] No camera update needed
[2026-08-31 14:35:09,223.223 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:35:09,226.226 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:35:09,231.231 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:35:09,236.236 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:35:11,276.276 INFO    ] ================================================
[2026-08-31 14:35:11,292.292 INFO    ] Launching Daemon at Mon Aug 31 14:35:11 IST 2026
[2026-08-31 14:35:11,303.303 INFO    ] ================================================
[2026-08-31 14:35:11,872.872 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:35:11
[2026-08-31 14:35:12,503.503 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:35:12,815.815 INFO    ] Initializing speech engine...
[2026-08-31 14:35:12,826.826 INFO    ] 2026-08-31 14:35:12
[2026-08-31 14:35:13,142.142 INFO    ] 2026-08-31 14:35:13
[2026-08-31 14:35:13,225.225 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:35:13,441.441 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:35:13,449.449 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:35:13,643.643 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:35:13,660.660 INFO    ] time= 31/08/2026 14:35:13
[2026-08-31 14:35:13,670.670 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:35:13,696.696 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:35:13,800.800 INFO    ] No existing commands found in stream
[2026-08-31 14:35:18,818.818 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:35:18,822.822 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-08-31 14:35:21,664.664 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 14:35:21,667.667 INFO    ] Checking for system updates...
[2026-08-31 14:35:21,705.705 INFO    ] 200
[2026-08-31 14:35:21,708.708 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:35:21,768.768 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:35:21,771.771 INFO    ] No update needed
[2026-08-31 14:35:21,773.773 INFO    ] Checking for camera pi updates...
[2026-08-31 14:35:21,807.807 INFO    ] 200
[2026-08-31 14:35:21,809.809 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:35:21,850.850 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:35:21,953.953 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:35:21,956.956 INFO    ] No camera update needed
[2026-08-31 14:35:21,958.958 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:35:21,960.960 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:35:21,966.966 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:35:21,971.971 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:35:24,012.012 INFO    ] ================================================
[2026-08-31 14:35:24,028.028 INFO    ] Launching Daemon at Mon Aug 31 14:35:24 IST 2026
[2026-08-31 14:35:24,040.040 INFO    ] ================================================
[2026-08-31 14:35:24,708.708 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:35:24
[2026-08-31 14:35:25,394.394 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:35:25,709.709 INFO    ] Initializing speech engine...
[2026-08-31 14:35:25,715.715 INFO    ] 2026-08-31 14:35:25
[2026-08-31 14:35:26,010.010 INFO    ] 2026-08-31 14:35:25
[2026-08-31 14:35:26,119.119 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:35:26,287.287 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:35:26,299.299 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:35:26,437.437 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:35:26,507.507 INFO    ] time= 31/08/2026 14:35:26
[2026-08-31 14:35:26,572.572 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:35:26,578.578 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:35:26,730.730 INFO    ] No existing commands found in stream
[2026-08-31 14:35:31,752.752 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:35:31,755.755 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-08-31 14:35:35,285.285 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 14:35:35,289.289 INFO    ] Checking for system updates...
[2026-08-31 14:35:35,326.326 INFO    ] 200
[2026-08-31 14:35:35,329.329 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:35:35,391.391 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:35:35,394.394 INFO    ] No update needed
[2026-08-31 14:35:35,397.397 INFO    ] Checking for camera pi updates...
[2026-08-31 14:35:35,435.435 INFO    ] 200
[2026-08-31 14:35:35,438.438 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:35:35,479.479 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:35:35,572.572 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:35:35,574.574 INFO    ] No camera update needed
[2026-08-31 14:35:35,576.576 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:35:35,579.579 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:35:35,584.584 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:35:35,589.589 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:35:37,633.633 INFO    ] ================================================
[2026-08-31 14:35:37,648.648 INFO    ] Launching Daemon at Mon Aug 31 14:35:37 IST 2026
[2026-08-31 14:35:37,659.659 INFO    ] ================================================
[2026-08-31 14:35:38,313.313 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:35:38
[2026-08-31 14:35:38,990.990 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:35:39,300.300 INFO    ] Initializing speech engine...
[2026-08-31 14:35:39,315.315 INFO    ] 2026-08-31 14:35:39
[2026-08-31 14:35:39,598.598 INFO    ] 2026-08-31 14:35:39
[2026-08-31 14:35:39,642.642 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:35:39,898.898 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:35:39,903.903 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:35:40,140.140 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:35:40,159.159 INFO    ] time= 31/08/2026 14:35:40
[2026-08-31 14:35:40,169.169 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:35:40,199.199 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:35:40,336.336 INFO    ] No existing commands found in stream
[2026-08-31 14:35:45,362.362 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:35:45,365.365 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-08-31 14:35:47,358.358 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 14:35:47,361.361 INFO    ] Checking for system updates...
[2026-08-31 14:35:47,404.404 INFO    ] 200
[2026-08-31 14:35:47,406.406 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:35:47,471.471 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:35:47,474.474 INFO    ] No update needed
[2026-08-31 14:35:47,476.476 INFO    ] Checking for camera pi updates...
[2026-08-31 14:35:47,509.509 INFO    ] 200
[2026-08-31 14:35:47,512.512 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:35:47,557.557 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:35:47,659.659 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:35:47,662.662 INFO    ] No camera update needed
[2026-08-31 14:35:47,664.664 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:35:47,667.667 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:35:47,672.672 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:35:47,677.677 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:35:49,718.718 INFO    ] ================================================
[2026-08-31 14:35:49,733.733 INFO    ] Launching Daemon at Mon Aug 31 14:35:49 IST 2026
[2026-08-31 14:35:49,745.745 INFO    ] ================================================
[2026-08-31 14:35:50,313.313 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:35:50
[2026-08-31 14:35:50,896.896 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:35:51,151.151 INFO    ] Initializing speech engine...
[2026-08-31 14:35:51,160.160 INFO    ] 2026-08-31 14:35:51
[2026-08-31 14:35:51,453.453 INFO    ] 2026-08-31 14:35:51
[2026-08-31 14:35:51,491.491 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:35:51,686.686 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:35:51,699.699 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:35:51,858.858 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:35:51,868.868 INFO    ] time= 31/08/2026 14:35:51
[2026-08-31 14:35:51,873.873 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:35:51,879.879 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:35:51,955.955 INFO    ] No existing commands found in stream
[2026-08-31 14:35:56,985.985 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:35:56,988.988 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-08-31 14:35:58,370.370 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 14:35:58,373.373 INFO    ] Checking for system updates...
[2026-08-31 14:35:58,415.415 INFO    ] 200
[2026-08-31 14:35:58,418.418 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:35:58,476.476 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:35:58,479.479 INFO    ] No update needed
[2026-08-31 14:35:58,482.482 INFO    ] Checking for camera pi updates...
[2026-08-31 14:35:58,521.521 INFO    ] 200
[2026-08-31 14:35:58,523.523 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:35:58,569.569 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:35:58,665.665 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:35:58,668.668 INFO    ] No camera update needed
[2026-08-31 14:35:58,670.670 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:35:58,672.672 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:35:58,678.678 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:35:58,683.683 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:36:00,722.722 INFO    ] ================================================
[2026-08-31 14:36:00,738.738 INFO    ] Launching Daemon at Mon Aug 31 14:36:00 IST 2026
[2026-08-31 14:36:00,749.749 INFO    ] ================================================
[2026-08-31 14:36:01,351.351 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:36:01
[2026-08-31 14:36:02,129.129 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:36:02,453.453 INFO    ] Initializing speech engine...
[2026-08-31 14:36:02,466.466 INFO    ] 2026-08-31 14:36:02
[2026-08-31 14:36:02,752.752 INFO    ] 2026-08-31 14:36:02
[2026-08-31 14:36:02,792.792 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:36:03,009.009 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:36:03,032.032 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:36:03,191.191 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:36:03,194.194 INFO    ] time= 31/08/2026 14:36:03
[2026-08-31 14:36:03,196.196 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:36:03,237.237 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:36:03,369.369 INFO    ] No existing commands found in stream
[2026-08-31 14:36:08,379.379 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:36:08,382.382 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-08-31 14:36:10,155.155 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 14:36:10,158.158 INFO    ] Checking for system updates...
[2026-08-31 14:36:10,197.197 INFO    ] 200
[2026-08-31 14:36:10,200.200 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:36:10,253.253 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:36:10,256.256 INFO    ] No update needed
[2026-08-31 14:36:10,259.259 INFO    ] Checking for camera pi updates...
[2026-08-31 14:36:10,294.294 INFO    ] 200
[2026-08-31 14:36:10,296.296 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:36:10,339.339 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:36:10,423.423 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:36:10,425.425 INFO    ] No camera update needed
[2026-08-31 14:36:10,428.428 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:36:10,430.430 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:36:10,436.436 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:36:10,441.441 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:36:12,481.481 INFO    ] ================================================
[2026-08-31 14:36:12,501.501 INFO    ] Launching Daemon at Mon Aug 31 14:36:12 IST 2026
[2026-08-31 14:36:12,511.511 INFO    ] ================================================
[2026-08-31 14:36:13,096.096 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:36:13
[2026-08-31 14:36:13,692.692 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:36:13,952.952 INFO    ] Initializing speech engine...
[2026-08-31 14:36:13,968.968 INFO    ] 2026-08-31 14:36:13
[2026-08-31 14:36:14,251.251 INFO    ] 2026-08-31 14:36:14
[2026-08-31 14:36:14,286.286 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:36:14,492.492 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:36:14,508.508 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:36:14,726.726 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:36:14,743.743 INFO    ] time= 31/08/2026 14:36:14
[2026-08-31 14:36:14,792.792 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:36:14,841.841 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:36:14,928.928 INFO    ] No existing commands found in stream
[2026-08-31 14:36:19,940.940 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:36:19,942.942 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-08-31 14:36:23,423.423 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 14:36:23,426.426 INFO    ] Checking for system updates...
[2026-08-31 14:36:23,464.464 INFO    ] 200
[2026-08-31 14:36:23,467.467 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:36:23,519.519 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:36:23,522.522 INFO    ] No update needed
[2026-08-31 14:36:23,524.524 INFO    ] Checking for camera pi updates...
[2026-08-31 14:36:23,560.560 INFO    ] 200
[2026-08-31 14:36:23,563.563 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:36:23,603.603 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:36:23,783.783 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:36:23,785.785 INFO    ] No camera update needed
[2026-08-31 14:36:23,788.788 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:36:23,790.790 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:36:23,796.796 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:36:23,801.801 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:36:25,841.841 INFO    ] ================================================
[2026-08-31 14:36:25,856.856 INFO    ] Launching Daemon at Mon Aug 31 14:36:25 IST 2026
[2026-08-31 14:36:25,867.867 INFO    ] ================================================
[2026-08-31 14:36:26,447.447 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:36:26
[2026-08-31 14:36:27,041.041 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:36:27,313.313 INFO    ] Initializing speech engine...
[2026-08-31 14:36:27,323.323 INFO    ] 2026-08-31 14:36:27
[2026-08-31 14:36:27,601.601 INFO    ] 2026-08-31 14:36:27
[2026-08-31 14:36:27,643.643 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:36:27,929.929 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:36:27,937.937 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:36:28,129.129 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:36:28,148.148 INFO    ] time= 31/08/2026 14:36:28
[2026-08-31 14:36:28,177.177 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:36:28,184.184 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:36:28,336.336 INFO    ] No existing commands found in stream
[2026-08-31 14:36:33,366.366 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:36:33,369.369 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-08-31 14:36:36,173.173 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 14:36:36,175.175 INFO    ] Checking for system updates...
[2026-08-31 14:36:36,211.211 INFO    ] 200
[2026-08-31 14:36:36,214.214 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:36:36,272.272 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:36:36,274.274 INFO    ] No update needed
[2026-08-31 14:36:36,277.277 INFO    ] Checking for camera pi updates...
[2026-08-31 14:36:36,314.314 INFO    ] 200
[2026-08-31 14:36:36,316.316 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:36:36,362.362 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:36:36,448.448 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:36:36,451.451 INFO    ] No camera update needed
[2026-08-31 14:36:36,453.453 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:36:36,455.455 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:36:36,461.461 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:36:36,466.466 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:36:38,507.507 INFO    ] ================================================
[2026-08-31 14:36:38,522.522 INFO    ] Launching Daemon at Mon Aug 31 14:36:38 IST 2026
[2026-08-31 14:36:38,533.533 INFO    ] ================================================
[2026-08-31 14:36:39,096.096 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:36:39
[2026-08-31 14:36:39,681.681 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:36:39,936.936 INFO    ] Initializing speech engine...
[2026-08-31 14:36:39,951.951 INFO    ] 2026-08-31 14:36:39
[2026-08-31 14:36:40,235.235 INFO    ] 2026-08-31 14:36:40
[2026-08-31 14:36:40,271.271 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:36:40,492.492 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:36:40,535.535 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:36:40,730.730 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:36:40,790.790 INFO    ] time= 31/08/2026 14:36:40
[2026-08-31 14:36:40,829.829 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:36:40,867.867 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:36:41,014.014 INFO    ] No existing commands found in stream
[2026-08-31 14:36:46,040.040 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:36:46,043.043 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-08-31 14:36:48,759.759 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 14:36:48,762.762 INFO    ] Checking for system updates...
[2026-08-31 14:36:48,801.801 INFO    ] 200
[2026-08-31 14:36:48,803.803 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:36:48,862.862 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:36:48,864.864 INFO    ] No update needed
[2026-08-31 14:36:48,866.866 INFO    ] Checking for camera pi updates...
[2026-08-31 14:36:48,903.903 INFO    ] 200
[2026-08-31 14:36:48,905.905 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:36:48,946.946 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:36:49,027.027 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:36:49,029.029 INFO    ] No camera update needed
[2026-08-31 14:36:49,032.032 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:36:49,034.034 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:36:49,039.039 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:36:49,044.044 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:36:51,084.084 INFO    ] ================================================
[2026-08-31 14:36:51,099.099 INFO    ] Launching Daemon at Mon Aug 31 14:36:51 IST 2026
[2026-08-31 14:36:51,109.109 INFO    ] ================================================
[2026-08-31 14:36:51,691.691 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:36:51
[2026-08-31 14:36:52,291.291 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:36:52,571.571 INFO    ] Initializing speech engine...
[2026-08-31 14:36:52,579.579 INFO    ] 2026-08-31 14:36:52
[2026-08-31 14:36:52,852.852 INFO    ] 2026-08-31 14:36:52
[2026-08-31 14:36:52,890.890 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:36:53,167.167 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:36:53,176.176 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:36:53,326.326 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:36:53,379.379 INFO    ] time= 31/08/2026 14:36:53
[2026-08-31 14:36:53,433.433 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:36:53,476.476 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:36:53,615.615 INFO    ] No existing commands found in stream
[2026-08-31 14:36:58,635.635 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:36:58,639.639 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-08-31 14:37:01,446.446 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 14:37:01,454.454 INFO    ] Checking for system updates...
[2026-08-31 14:37:01,525.525 INFO    ] 200
[2026-08-31 14:37:01,530.530 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:37:01,633.633 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:37:01,650.650 INFO    ] No update needed
[2026-08-31 14:37:01,653.653 INFO    ] Checking for camera pi updates...
[2026-08-31 14:37:01,702.702 INFO    ] 200
[2026-08-31 14:37:01,705.705 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:37:01,787.787 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:37:01,915.915 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:37:01,918.918 INFO    ] No camera update needed
[2026-08-31 14:37:01,921.921 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:37:01,924.924 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:37:01,931.931 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:37:01,937.937 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:37:03,978.978 INFO    ] ================================================
[2026-08-31 14:37:03,993.993 INFO    ] Launching Daemon at Mon Aug 31 14:37:03 IST 2026
[2026-08-31 14:37:04,004.004 INFO    ] ================================================
[2026-08-31 14:37:04,570.570 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:37:04
[2026-08-31 14:37:05,152.152 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:37:05,419.419 INFO    ] Initializing speech engine...
[2026-08-31 14:37:05,427.427 INFO    ] 2026-08-31 14:37:05
[2026-08-31 14:37:05,682.682 INFO    ] 2026-08-31 14:37:05
[2026-08-31 14:37:05,748.748 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:37:05,975.975 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:37:05,984.984 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:37:06,152.152 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:37:06,213.213 INFO    ] time= 31/08/2026 14:37:06
[2026-08-31 14:37:06,233.233 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:37:06,261.261 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:37:06,437.437 INFO    ] No existing commands found in stream
[2026-08-31 14:37:11,468.468 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:37:11,471.471 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-08-31 14:37:13,803.803 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 14:37:13,806.806 INFO    ] Checking for system updates...
[2026-08-31 14:37:13,842.842 INFO    ] 200
[2026-08-31 14:37:13,844.844 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:37:13,906.906 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:37:13,909.909 INFO    ] No update needed
[2026-08-31 14:37:13,911.911 INFO    ] Checking for camera pi updates...
[2026-08-31 14:37:13,948.948 INFO    ] 200
[2026-08-31 14:37:13,951.951 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:37:13,996.996 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:37:14,100.100 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:37:14,103.103 INFO    ] No camera update needed
[2026-08-31 14:37:14,105.105 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:37:14,107.107 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:37:14,113.113 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:37:14,118.118 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:37:16,159.159 INFO    ] ================================================
[2026-08-31 14:37:16,174.174 INFO    ] Launching Daemon at Mon Aug 31 14:37:16 IST 2026
[2026-08-31 14:37:16,185.185 INFO    ] ================================================
[2026-08-31 14:37:16,768.768 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:37:16
[2026-08-31 14:37:17,368.368 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:37:17,640.640 INFO    ] Initializing speech engine...
[2026-08-31 14:37:17,650.650 INFO    ] 2026-08-31 14:37:17
[2026-08-31 14:37:17,929.929 INFO    ] 2026-08-31 14:37:17
[2026-08-31 14:37:17,974.974 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:37:18,256.256 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:37:18,266.266 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:37:18,461.461 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:37:18,479.479 INFO    ] time= 31/08/2026 14:37:18
[2026-08-31 14:37:18,494.494 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:37:18,517.517 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:37:18,645.645 INFO    ] No existing commands found in stream
[2026-08-31 14:37:23,671.671 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:37:23,675.675 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-08-31 14:37:24,488.488 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 14:37:24,491.491 INFO    ] Checking for system updates...
[2026-08-31 14:37:24,531.531 INFO    ] 200
[2026-08-31 14:37:24,534.534 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:37:24,595.595 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:37:24,598.598 INFO    ] No update needed
[2026-08-31 14:37:24,602.602 INFO    ] Checking for camera pi updates...
[2026-08-31 14:37:24,636.636 INFO    ] 200
[2026-08-31 14:37:24,639.639 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:37:24,684.684 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:37:24,773.773 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:37:24,776.776 INFO    ] No camera update needed
[2026-08-31 14:37:24,778.778 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:37:24,781.781 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:37:24,786.786 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:37:24,791.791 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:37:26,833.833 INFO    ] ================================================
[2026-08-31 14:37:26,849.849 INFO    ] Launching Daemon at Mon Aug 31 14:37:26 IST 2026
[2026-08-31 14:37:26,860.860 INFO    ] ================================================
[2026-08-31 14:37:27,500.500 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:37:27
[2026-08-31 14:37:28,164.164 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:37:28,465.465 INFO    ] Initializing speech engine...
[2026-08-31 14:37:28,477.477 INFO    ] 2026-08-31 14:37:28
[2026-08-31 14:37:28,759.759 INFO    ] 2026-08-31 14:37:28
[2026-08-31 14:37:28,868.868 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:37:29,144.144 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:37:29,152.152 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:37:29,331.331 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:37:29,341.341 INFO    ] time= 31/08/2026 14:37:29
[2026-08-31 14:37:29,379.379 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:37:29,448.448 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:37:29,560.560 INFO    ] No existing commands found in stream
[2026-08-31 14:37:34,585.585 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:37:34,589.589 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-08-31 14:37:37,919.919 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 14:37:37,922.922 INFO    ] Checking for system updates...
[2026-08-31 14:37:37,960.960 INFO    ] 200
[2026-08-31 14:37:37,962.962 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:37:38,021.021 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:37:38,024.024 INFO    ] No update needed
[2026-08-31 14:37:38,026.026 INFO    ] Checking for camera pi updates...
[2026-08-31 14:37:38,064.064 INFO    ] 200
[2026-08-31 14:37:38,066.066 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:37:38,112.112 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:37:38,196.196 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:37:38,198.198 INFO    ] No camera update needed
[2026-08-31 14:37:38,201.201 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:37:38,203.203 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:37:38,208.208 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:37:38,213.213 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:37:40,256.256 INFO    ] ================================================
[2026-08-31 14:37:40,271.271 INFO    ] Launching Daemon at Mon Aug 31 14:37:40 IST 2026
[2026-08-31 14:37:40,282.282 INFO    ] ================================================
[2026-08-31 14:37:40,855.855 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:37:40
[2026-08-31 14:37:41,440.440 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:37:41,699.699 INFO    ] Initializing speech engine...
[2026-08-31 14:37:41,713.713 INFO    ] 2026-08-31 14:37:41
[2026-08-31 14:37:41,995.995 INFO    ] 2026-08-31 14:37:41
[2026-08-31 14:37:42,031.031 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:37:42,233.233 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:37:42,247.247 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:37:42,414.414 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:37:42,419.419 INFO    ] time= 31/08/2026 14:37:42
[2026-08-31 14:37:42,426.426 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:37:42,473.473 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:37:42,616.616 INFO    ] No existing commands found in stream
[2026-08-31 14:37:47,647.647 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:37:47,650.650 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-08-31 14:37:51,970.970 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 14:37:51,973.973 INFO    ] Checking for system updates...
[2026-08-31 14:37:52,014.014 INFO    ] 200
[2026-08-31 14:37:52,016.016 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:37:52,078.078 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:37:52,081.081 INFO    ] No update needed
[2026-08-31 14:37:52,083.083 INFO    ] Checking for camera pi updates...
[2026-08-31 14:37:52,122.122 INFO    ] 200
[2026-08-31 14:37:52,125.125 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:37:52,170.170 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:37:52,248.248 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:37:52,251.251 INFO    ] No camera update needed
[2026-08-31 14:37:52,253.253 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:37:52,256.256 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:37:52,261.261 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:37:52,266.266 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:37:54,306.306 INFO    ] ================================================
[2026-08-31 14:37:54,321.321 INFO    ] Launching Daemon at Mon Aug 31 14:37:54 IST 2026
[2026-08-31 14:37:54,331.331 INFO    ] ================================================
[2026-08-31 14:37:54,984.984 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:37:54
[2026-08-31 14:37:55,657.657 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:37:55,960.960 INFO    ] Initializing speech engine...
[2026-08-31 14:37:55,974.974 INFO    ] 2026-08-31 14:37:55
[2026-08-31 14:37:56,289.289 INFO    ] 2026-08-31 14:37:56
[2026-08-31 14:37:56,371.371 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:37:56,585.585 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:37:56,595.595 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:37:56,854.854 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:37:56,907.907 INFO    ] time= 31/08/2026 14:37:56
[2026-08-31 14:37:56,957.957 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:37:57,012.012 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:37:57,184.184 INFO    ] No existing commands found in stream
[2026-08-31 14:38:02,199.199 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:38:02,203.203 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-08-31 14:38:03,294.294 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 14:38:03,297.297 INFO    ] Checking for system updates...
[2026-08-31 14:38:03,339.339 INFO    ] 200
[2026-08-31 14:38:03,342.342 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:38:03,396.396 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:38:03,399.399 INFO    ] No update needed
[2026-08-31 14:38:03,402.402 INFO    ] Checking for camera pi updates...
[2026-08-31 14:38:03,437.437 INFO    ] 200
[2026-08-31 14:38:03,440.440 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:38:03,482.482 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:38:03,565.565 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:38:03,568.568 INFO    ] No camera update needed
[2026-08-31 14:38:03,571.571 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:38:03,573.573 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:38:03,580.580 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:38:03,585.585 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:38:05,626.626 INFO    ] ================================================
[2026-08-31 14:38:05,642.642 INFO    ] Launching Daemon at Mon Aug 31 14:38:05 IST 2026
[2026-08-31 14:38:05,652.652 INFO    ] ================================================
[2026-08-31 14:38:06,231.231 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:38:06
[2026-08-31 14:38:06,833.833 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:38:07,082.082 INFO    ] Initializing speech engine...
[2026-08-31 14:38:07,088.088 INFO    ] 2026-08-31 14:38:07
[2026-08-31 14:38:07,359.359 INFO    ] 2026-08-31 14:38:07
[2026-08-31 14:38:07,400.400 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:38:07,649.649 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:38:07,655.655 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:38:07,896.896 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:38:07,912.912 INFO    ] time= 31/08/2026 14:38:07
[2026-08-31 14:38:07,926.926 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:38:07,935.935 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:38:08,011.011 INFO    ] No existing commands found in stream
[2026-08-31 14:38:13,037.037 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:38:13,043.043 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-08-31 14:38:14,701.701 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 14:38:14,703.703 INFO    ] Checking for system updates...
[2026-08-31 14:38:14,744.744 INFO    ] 200
[2026-08-31 14:38:14,746.746 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:38:14,807.807 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:38:14,810.810 INFO    ] No update needed
[2026-08-31 14:38:14,812.812 INFO    ] Checking for camera pi updates...
[2026-08-31 14:38:14,847.847 INFO    ] 200
[2026-08-31 14:38:14,850.850 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:38:14,898.898 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:38:15,003.003 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:38:15,005.005 INFO    ] No camera update needed
[2026-08-31 14:38:15,008.008 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:38:15,011.011 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:38:15,018.018 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:38:15,024.024 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:38:17,066.066 INFO    ] ================================================
[2026-08-31 14:38:17,082.082 INFO    ] Launching Daemon at Mon Aug 31 14:38:17 IST 2026
[2026-08-31 14:38:17,093.093 INFO    ] ================================================
[2026-08-31 14:38:17,657.657 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:38:17
[2026-08-31 14:38:18,245.245 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:38:18,499.499 INFO    ] Initializing speech engine...
[2026-08-31 14:38:18,506.506 INFO    ] 2026-08-31 14:38:18
[2026-08-31 14:38:18,807.807 INFO    ] 2026-08-31 14:38:18
[2026-08-31 14:38:18,832.832 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:38:19,144.144 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:38:19,154.154 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:38:19,423.423 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:38:19,459.459 INFO    ] time= 31/08/2026 14:38:19
[2026-08-31 14:38:19,465.465 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:38:19,483.483 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:38:19,601.601 INFO    ] No existing commands found in stream
[2026-08-31 14:38:24,623.623 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:38:24,626.626 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-08-31 14:38:25,926.926 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 14:38:25,929.929 INFO    ] Checking for system updates...
[2026-08-31 14:38:25,969.969 INFO    ] 200
[2026-08-31 14:38:25,972.972 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:38:26,025.025 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:38:26,028.028 INFO    ] No update needed
[2026-08-31 14:38:26,030.030 INFO    ] Checking for camera pi updates...
[2026-08-31 14:38:26,069.069 INFO    ] 200
[2026-08-31 14:38:26,071.071 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:38:26,111.111 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:38:26,268.268 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:38:26,271.271 INFO    ] No camera update needed
[2026-08-31 14:38:26,273.273 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:38:26,275.275 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:38:26,281.281 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:38:26,286.286 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:38:28,329.329 INFO    ] ================================================
[2026-08-31 14:38:28,344.344 INFO    ] Launching Daemon at Mon Aug 31 14:38:28 IST 2026
[2026-08-31 14:38:28,354.354 INFO    ] ================================================
[2026-08-31 14:38:28,935.935 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:38:28
[2026-08-31 14:38:29,535.535 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:38:29,800.800 INFO    ] Initializing speech engine...
[2026-08-31 14:38:29,807.807 INFO    ] 2026-08-31 14:38:29
[2026-08-31 14:38:30,080.080 INFO    ] 2026-08-31 14:38:30
[2026-08-31 14:38:30,116.116 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:38:30,368.368 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:38:30,378.378 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:38:30,603.603 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:38:30,635.635 INFO    ] time= 31/08/2026 14:38:30
[2026-08-31 14:38:30,652.652 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:38:30,662.662 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:38:30,788.788 INFO    ] No existing commands found in stream
[2026-08-31 14:38:35,801.801 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:38:35,804.804 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-08-31 14:38:40,142.142 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 14:38:40,145.145 INFO    ] Checking for system updates...
[2026-08-31 14:38:40,181.181 INFO    ] 200
[2026-08-31 14:38:40,183.183 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:38:40,236.236 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:38:40,239.239 INFO    ] No update needed
[2026-08-31 14:38:40,241.241 INFO    ] Checking for camera pi updates...
[2026-08-31 14:38:40,290.290 INFO    ] 200
[2026-08-31 14:38:40,292.292 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:38:40,339.339 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:38:40,480.480 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:38:40,483.483 INFO    ] No camera update needed
[2026-08-31 14:38:40,485.485 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:38:40,487.487 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:38:40,493.493 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:38:40,498.498 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:38:42,540.540 INFO    ] ================================================
[2026-08-31 14:38:42,555.555 INFO    ] Launching Daemon at Mon Aug 31 14:38:42 IST 2026
[2026-08-31 14:38:42,566.566 INFO    ] ================================================
[2026-08-31 14:38:43,132.132 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:38:43
[2026-08-31 14:38:43,736.736 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:38:43,994.994 INFO    ] Initializing speech engine...
[2026-08-31 14:38:44,003.003 INFO    ] 2026-08-31 14:38:43
[2026-08-31 14:38:44,302.302 INFO    ] 2026-08-31 14:38:44
[2026-08-31 14:38:44,328.328 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:38:44,643.643 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:38:44,653.653 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:38:44,904.904 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:38:44,958.958 INFO    ] time= 31/08/2026 14:38:44
[2026-08-31 14:38:44,965.965 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:38:44,981.981 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:38:45,079.079 INFO    ] No existing commands found in stream
[2026-08-31 14:38:50,105.105 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:38:50,108.108 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-08-31 14:38:51,520.520 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 14:38:51,523.523 INFO    ] Checking for system updates...
[2026-08-31 14:38:51,563.563 INFO    ] 200
[2026-08-31 14:38:51,566.566 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:38:51,620.620 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:38:51,623.623 INFO    ] No update needed
[2026-08-31 14:38:51,626.626 INFO    ] Checking for camera pi updates...
[2026-08-31 14:38:51,661.661 INFO    ] 200
[2026-08-31 14:38:51,664.664 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:38:51,705.705 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:38:51,801.801 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:38:51,804.804 INFO    ] No camera update needed
[2026-08-31 14:38:51,807.807 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:38:51,810.810 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:38:51,816.816 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:38:51,822.822 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:38:53,868.868 INFO    ] ================================================
[2026-08-31 14:38:53,884.884 INFO    ] Launching Daemon at Mon Aug 31 14:38:53 IST 2026
[2026-08-31 14:38:53,895.895 INFO    ] ================================================
[2026-08-31 14:38:54,461.461 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:38:54
[2026-08-31 14:38:55,043.043 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:38:55,311.311 INFO    ] Initializing speech engine...
[2026-08-31 14:38:55,322.322 INFO    ] 2026-08-31 14:38:55
[2026-08-31 14:38:55,567.567 INFO    ] 2026-08-31 14:38:55
[2026-08-31 14:38:55,632.632 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:38:55,853.853 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:38:55,862.862 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:38:56,116.116 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:38:56,123.123 INFO    ] time= 31/08/2026 14:38:56
[2026-08-31 14:38:56,141.141 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:38:56,147.147 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:38:56,277.277 INFO    ] No existing commands found in stream
[2026-08-31 14:39:01,296.296 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:39:01,301.301 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-08-31 14:39:03,565.565 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 14:39:03,568.568 INFO    ] Checking for system updates...
[2026-08-31 14:39:03,607.607 INFO    ] 200
[2026-08-31 14:39:03,609.609 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:39:03,662.662 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:39:03,664.664 INFO    ] No update needed
[2026-08-31 14:39:03,667.667 INFO    ] Checking for camera pi updates...
[2026-08-31 14:39:03,701.701 INFO    ] 200
[2026-08-31 14:39:03,703.703 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:39:03,749.749 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:39:03,849.849 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:39:03,852.852 INFO    ] No camera update needed
[2026-08-31 14:39:03,855.855 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:39:03,857.857 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:39:03,863.863 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:39:03,868.868 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:39:05,912.912 INFO    ] ================================================
[2026-08-31 14:39:05,927.927 INFO    ] Launching Daemon at Mon Aug 31 14:39:05 IST 2026
[2026-08-31 14:39:05,938.938 INFO    ] ================================================
[2026-08-31 14:39:06,535.535 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:39:06
[2026-08-31 14:39:07,122.122 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:39:07,422.422 INFO    ] Initializing speech engine...
[2026-08-31 14:39:07,431.431 INFO    ] 2026-08-31 14:39:07
[2026-08-31 14:39:07,719.719 INFO    ] 2026-08-31 14:39:07
[2026-08-31 14:39:07,759.759 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:39:07,973.973 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:39:07,988.988 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:39:08,341.341 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:39:08,387.387 INFO    ] time= 31/08/2026 14:39:08
[2026-08-31 14:39:08,408.408 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:39:08,418.418 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:39:08,554.554 INFO    ] No existing commands found in stream
[2026-08-31 14:39:13,600.600 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:39:13,603.603 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-08-31 14:39:16,080.080 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 14:39:16,082.082 INFO    ] Checking for system updates...
[2026-08-31 14:39:16,121.121 INFO    ] 200
[2026-08-31 14:39:16,124.124 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:39:16,176.176 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:39:16,178.178 INFO    ] No update needed
[2026-08-31 14:39:16,181.181 INFO    ] Checking for camera pi updates...
[2026-08-31 14:39:16,214.214 INFO    ] 200
[2026-08-31 14:39:16,216.216 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:39:16,266.266 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:39:16,349.349 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:39:16,352.352 INFO    ] No camera update needed
[2026-08-31 14:39:16,354.354 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:39:16,356.356 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:39:16,362.362 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:39:16,367.367 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:39:18,407.407 INFO    ] ================================================
[2026-08-31 14:39:18,422.422 INFO    ] Launching Daemon at Mon Aug 31 14:39:18 IST 2026
[2026-08-31 14:39:18,433.433 INFO    ] ================================================
[2026-08-31 14:39:18,996.996 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:39:18
[2026-08-31 14:39:19,615.615 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:39:19,921.921 INFO    ] Initializing speech engine...
[2026-08-31 14:39:19,932.932 INFO    ] 2026-08-31 14:39:19
[2026-08-31 14:39:20,241.241 INFO    ] 2026-08-31 14:39:20
[2026-08-31 14:39:20,329.329 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:39:20,539.539 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:39:20,547.547 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:39:20,742.742 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:39:20,761.761 INFO    ] time= 31/08/2026 14:39:20
[2026-08-31 14:39:20,771.771 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:39:20,799.799 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:39:20,927.927 INFO    ] No existing commands found in stream
[2026-08-31 14:39:25,959.959 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:39:25,962.962 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-08-31 14:39:28,880.880 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 14:39:28,883.883 INFO    ] Checking for system updates...
[2026-08-31 14:39:28,921.921 INFO    ] 200
[2026-08-31 14:39:28,924.924 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:39:28,976.976 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:39:28,979.979 INFO    ] No update needed
[2026-08-31 14:39:28,982.982 INFO    ] Checking for camera pi updates...
[2026-08-31 14:39:29,016.016 INFO    ] 200
[2026-08-31 14:39:29,019.019 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:39:29,061.061 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:39:29,153.153 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:39:29,156.156 INFO    ] No camera update needed
[2026-08-31 14:39:29,158.158 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:39:29,160.160 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:39:29,166.166 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:39:29,171.171 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:39:31,210.210 INFO    ] ================================================
[2026-08-31 14:39:31,225.225 INFO    ] Launching Daemon at Mon Aug 31 14:39:31 IST 2026
[2026-08-31 14:39:31,236.236 INFO    ] ================================================
[2026-08-31 14:39:31,848.848 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:39:31
[2026-08-31 14:39:32,482.482 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:39:32,784.784 INFO    ] Initializing speech engine...
[2026-08-31 14:39:32,792.792 INFO    ] 2026-08-31 14:39:32
[2026-08-31 14:39:33,056.056 INFO    ] 2026-08-31 14:39:33
[2026-08-31 14:39:33,110.110 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:39:33,336.336 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:39:33,342.342 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:39:33,555.555 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:39:33,600.600 INFO    ] time= 31/08/2026 14:39:33
[2026-08-31 14:39:33,617.617 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:39:33,624.624 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:39:33,751.751 INFO    ] No existing commands found in stream
[2026-08-31 14:39:38,767.767 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:39:38,771.771 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-08-31 14:39:40,008.008 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 14:39:40,011.011 INFO    ] Checking for system updates...
[2026-08-31 14:39:40,046.046 INFO    ] 200
[2026-08-31 14:39:40,048.048 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:39:40,102.102 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:39:40,104.104 INFO    ] No update needed
[2026-08-31 14:39:40,107.107 INFO    ] Checking for camera pi updates...
[2026-08-31 14:39:40,140.140 INFO    ] 200
[2026-08-31 14:39:40,142.142 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:39:40,187.187 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:39:40,279.279 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:39:40,282.282 INFO    ] No camera update needed
[2026-08-31 14:39:40,284.284 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:39:40,286.286 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:39:40,291.291 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:39:40,296.296 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:39:42,338.338 INFO    ] ================================================
[2026-08-31 14:39:42,353.353 INFO    ] Launching Daemon at Mon Aug 31 14:39:42 IST 2026
[2026-08-31 14:39:42,364.364 INFO    ] ================================================
[2026-08-31 14:39:43,011.011 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:39:43
[2026-08-31 14:39:43,686.686 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:39:43,988.988 INFO    ] Initializing speech engine...
[2026-08-31 14:39:44,002.002 INFO    ] 2026-08-31 14:39:43
[2026-08-31 14:39:44,313.313 INFO    ] 2026-08-31 14:39:44
[2026-08-31 14:39:44,401.401 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:39:44,613.613 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:39:44,622.622 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:39:44,821.821 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:39:44,842.842 INFO    ] time= 31/08/2026 14:39:44
[2026-08-31 14:39:44,870.870 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:39:44,879.879 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:39:45,004.004 INFO    ] No existing commands found in stream
[2026-08-31 14:39:50,035.035 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:39:50,039.039 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-08-31 14:39:53,523.523 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 14:39:53,530.530 INFO    ] Checking for system updates...
[2026-08-31 14:39:53,574.574 INFO    ] 200
[2026-08-31 14:39:53,577.577 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:39:53,637.637 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:39:53,640.640 INFO    ] No update needed
[2026-08-31 14:39:53,643.643 INFO    ] Checking for camera pi updates...
[2026-08-31 14:39:53,678.678 INFO    ] 200
[2026-08-31 14:39:53,681.681 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:39:53,722.722 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:39:53,774.774 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:39:53,776.776 INFO    ] No camera update needed
[2026-08-31 14:39:53,779.779 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:39:53,782.782 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:39:53,788.788 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:39:53,794.794 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:39:55,836.836 INFO    ] ================================================
[2026-08-31 14:39:55,851.851 INFO    ] Launching Daemon at Mon Aug 31 14:39:55 IST 2026
[2026-08-31 14:39:55,862.862 INFO    ] ================================================
[2026-08-31 14:39:56,508.508 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:39:56
[2026-08-31 14:39:57,175.175 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:39:57,478.478 INFO    ] Initializing speech engine...
[2026-08-31 14:39:57,490.490 INFO    ] 2026-08-31 14:39:57
[2026-08-31 14:39:57,768.768 INFO    ] 2026-08-31 14:39:57
[2026-08-31 14:39:57,812.812 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:39:58,159.159 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:39:58,212.212 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:39:58,444.444 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:39:58,504.504 INFO    ] time= 31/08/2026 14:39:58
[2026-08-31 14:39:58,546.546 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:39:58,628.628 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:39:58,764.764 INFO    ] No existing commands found in stream
[2026-08-31 14:40:03,783.783 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:40:03,786.786 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-08-31 14:40:08,534.534 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 14:40:08,536.536 INFO    ] Checking for system updates...
[2026-08-31 14:40:08,573.573 INFO    ] 200
[2026-08-31 14:40:08,575.575 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:40:08,645.645 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:40:08,648.648 INFO    ] No update needed
[2026-08-31 14:40:08,651.651 INFO    ] Checking for camera pi updates...
[2026-08-31 14:40:08,688.688 INFO    ] 200
[2026-08-31 14:40:08,692.692 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:40:08,737.737 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:40:08,821.821 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:40:08,824.824 INFO    ] No camera update needed
[2026-08-31 14:40:08,826.826 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:40:08,828.828 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:40:08,834.834 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:40:08,839.839 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:40:10,879.879 INFO    ] ================================================
[2026-08-31 14:40:10,894.894 INFO    ] Launching Daemon at Mon Aug 31 14:40:10 IST 2026
[2026-08-31 14:40:10,905.905 INFO    ] ================================================
[2026-08-31 14:40:11,472.472 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:40:11
[2026-08-31 14:40:12,060.060 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:40:12,337.337 INFO    ] Initializing speech engine...
[2026-08-31 14:40:12,344.344 INFO    ] 2026-08-31 14:40:12
[2026-08-31 14:40:12,622.622 INFO    ] 2026-08-31 14:40:12
[2026-08-31 14:40:12,665.665 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:40:12,948.948 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:40:12,953.953 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:40:13,149.149 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:40:13,166.166 INFO    ] time= 31/08/2026 14:40:13
[2026-08-31 14:40:13,176.176 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:40:13,202.202 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:40:13,323.323 INFO    ] No existing commands found in stream
[2026-08-31 14:40:18,353.353 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:40:18,356.356 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-08-31 14:40:20,603.603 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 14:40:20,606.606 INFO    ] Checking for system updates...
[2026-08-31 14:40:20,641.641 INFO    ] 200
[2026-08-31 14:40:20,643.643 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:40:20,695.695 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:40:20,697.697 INFO    ] No update needed
[2026-08-31 14:40:20,700.700 INFO    ] Checking for camera pi updates...
[2026-08-31 14:40:20,734.734 INFO    ] 200
[2026-08-31 14:40:20,736.736 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:40:20,781.781 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:40:20,886.886 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:40:20,889.889 INFO    ] No camera update needed
[2026-08-31 14:40:20,891.891 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:40:20,893.893 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:40:20,899.899 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:40:20,904.904 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:40:22,943.943 INFO    ] ================================================
[2026-08-31 14:40:22,959.959 INFO    ] Launching Daemon at Mon Aug 31 14:40:22 IST 2026
[2026-08-31 14:40:22,970.970 INFO    ] ================================================
[2026-08-31 14:40:23,578.578 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:40:23
[2026-08-31 14:40:24,180.180 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:40:24,456.456 INFO    ] Initializing speech engine...
[2026-08-31 14:40:24,463.463 INFO    ] 2026-08-31 14:40:24
[2026-08-31 14:40:24,736.736 INFO    ] 2026-08-31 14:40:24
[2026-08-31 14:40:24,781.781 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:40:25,003.003 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:40:25,009.009 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:40:25,218.218 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:40:25,266.266 INFO    ] time= 31/08/2026 14:40:25
[2026-08-31 14:40:25,283.283 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:40:25,303.303 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:40:25,435.435 INFO    ] No existing commands found in stream
[2026-08-31 14:40:30,466.466 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:40:30,469.469 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-08-31 14:40:32,184.184 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 14:40:32,187.187 INFO    ] Checking for system updates...
[2026-08-31 14:40:32,225.225 INFO    ] 200
[2026-08-31 14:40:32,228.228 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:40:32,284.284 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:40:32,287.287 INFO    ] No update needed
[2026-08-31 14:40:32,290.290 INFO    ] Checking for camera pi updates...
[2026-08-31 14:40:32,327.327 INFO    ] 200
[2026-08-31 14:40:32,329.329 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:40:32,378.378 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:40:32,572.572 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:40:32,575.575 INFO    ] No camera update needed
[2026-08-31 14:40:32,579.579 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:40:32,581.581 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:40:32,588.588 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:40:32,593.593 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:40:34,634.634 INFO    ] ================================================
[2026-08-31 14:40:34,650.650 INFO    ] Launching Daemon at Mon Aug 31 14:40:34 IST 2026
[2026-08-31 14:40:34,662.662 INFO    ] ================================================
[2026-08-31 14:40:35,298.298 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:40:35
[2026-08-31 14:40:35,954.954 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:40:36,261.261 INFO    ] Initializing speech engine...
[2026-08-31 14:40:36,272.272 INFO    ] 2026-08-31 14:40:36
[2026-08-31 14:40:36,535.535 INFO    ] 2026-08-31 14:40:36
[2026-08-31 14:40:36,596.596 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:40:36,883.883 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:40:36,890.890 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:40:37,081.081 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:40:37,088.088 INFO    ] time= 31/08/2026 14:40:37
[2026-08-31 14:40:37,106.106 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:40:37,135.135 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:40:37,261.261 INFO    ] No existing commands found in stream
[2026-08-31 14:40:42,297.297 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:40:42,301.301 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-08-31 14:40:46,386.386 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 14:40:46,389.389 INFO    ] Checking for system updates...
[2026-08-31 14:40:46,430.430 INFO    ] 200
[2026-08-31 14:40:46,432.432 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:40:46,490.490 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:40:46,493.493 INFO    ] No update needed
[2026-08-31 14:40:46,495.495 INFO    ] Checking for camera pi updates...
[2026-08-31 14:40:46,531.531 INFO    ] 200
[2026-08-31 14:40:46,533.533 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:40:46,575.575 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:40:46,655.655 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:40:46,658.658 INFO    ] No camera update needed
[2026-08-31 14:40:46,660.660 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:40:46,663.663 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:40:46,668.668 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:40:46,673.673 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:40:48,713.713 INFO    ] ================================================
[2026-08-31 14:40:48,728.728 INFO    ] Launching Daemon at Mon Aug 31 14:40:48 IST 2026
[2026-08-31 14:40:48,739.739 INFO    ] ================================================
[2026-08-31 14:40:49,321.321 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:40:49
[2026-08-31 14:40:49,919.919 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:40:50,195.195 INFO    ] Initializing speech engine...
[2026-08-31 14:40:50,203.203 INFO    ] 2026-08-31 14:40:50
[2026-08-31 14:40:50,461.461 INFO    ] 2026-08-31 14:40:50
[2026-08-31 14:40:50,515.515 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:40:50,742.742 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:40:50,747.747 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:40:50,975.975 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:40:51,006.006 INFO    ] time= 31/08/2026 14:40:50
[2026-08-31 14:40:51,021.021 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:40:51,030.030 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:40:51,168.168 INFO    ] No existing commands found in stream
[2026-08-31 14:40:56,193.193 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:40:56,196.196 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-08-31 14:40:58,588.588 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 14:40:58,591.591 INFO    ] Checking for system updates...
[2026-08-31 14:40:58,631.631 INFO    ] 200
[2026-08-31 14:40:58,633.633 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:40:58,685.685 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:40:58,687.687 INFO    ] No update needed
[2026-08-31 14:40:58,690.690 INFO    ] Checking for camera pi updates...
[2026-08-31 14:40:58,723.723 INFO    ] 200
[2026-08-31 14:40:58,726.726 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:40:58,766.766 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:40:58,849.849 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:40:58,852.852 INFO    ] No camera update needed
[2026-08-31 14:40:58,854.854 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:40:58,856.856 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:40:58,862.862 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:40:58,867.867 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:41:00,906.906 INFO    ] ================================================
[2026-08-31 14:41:00,922.922 INFO    ] Launching Daemon at Mon Aug 31 14:41:00 IST 2026
[2026-08-31 14:41:00,934.934 INFO    ] ================================================
[2026-08-31 14:41:01,641.641 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:41:01
[2026-08-31 14:41:02,423.423 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:41:02,778.778 INFO    ] Initializing speech engine...
[2026-08-31 14:41:02,790.790 INFO    ] 2026-08-31 14:41:02
[2026-08-31 14:41:03,100.100 INFO    ] 2026-08-31 14:41:03
[2026-08-31 14:41:03,169.169 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:41:03,419.419 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:41:03,430.430 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:41:03,661.661 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:41:03,698.698 INFO    ] time= 31/08/2026 14:41:03
[2026-08-31 14:41:03,718.718 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:41:03,738.738 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:41:03,865.865 INFO    ] No existing commands found in stream
[2026-08-31 14:41:08,886.886 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:41:08,889.889 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-08-31 14:41:11,021.021 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 14:41:11,023.023 INFO    ] Checking for system updates...
[2026-08-31 14:41:11,059.059 INFO    ] 200
[2026-08-31 14:41:11,062.062 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:41:11,119.119 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:41:11,121.121 INFO    ] No update needed
[2026-08-31 14:41:11,124.124 INFO    ] Checking for camera pi updates...
[2026-08-31 14:41:11,162.162 INFO    ] 200
[2026-08-31 14:41:11,164.164 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:41:11,210.210 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:41:11,292.292 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:41:11,295.295 INFO    ] No camera update needed
[2026-08-31 14:41:11,297.297 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:41:11,300.300 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:41:11,305.305 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:41:11,310.310 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:41:13,350.350 INFO    ] ================================================
[2026-08-31 14:41:13,366.366 INFO    ] Launching Daemon at Mon Aug 31 14:41:13 IST 2026
[2026-08-31 14:41:13,378.378 INFO    ] ================================================
[2026-08-31 14:41:13,971.971 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:41:13
[2026-08-31 14:41:14,659.659 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:41:14,972.972 INFO    ] Initializing speech engine...
[2026-08-31 14:41:14,986.986 INFO    ] 2026-08-31 14:41:14
[2026-08-31 14:41:15,308.308 INFO    ] 2026-08-31 14:41:15
[2026-08-31 14:41:15,392.392 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:41:15,612.612 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:41:15,617.617 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:41:15,817.817 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:41:15,825.825 INFO    ] time= 31/08/2026 14:41:15
[2026-08-31 14:41:15,845.845 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:41:15,877.877 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:41:16,015.015 INFO    ] No existing commands found in stream
[2026-08-31 14:41:21,050.050 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:41:21,053.053 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-08-31 14:41:25,468.468 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 14:41:25,471.471 INFO    ] Checking for system updates...
[2026-08-31 14:41:25,508.508 INFO    ] 200
[2026-08-31 14:41:25,511.511 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:41:25,567.567 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:41:25,570.570 INFO    ] No update needed
[2026-08-31 14:41:25,573.573 INFO    ] Checking for camera pi updates...
[2026-08-31 14:41:25,608.608 INFO    ] 200
[2026-08-31 14:41:25,611.611 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:41:25,658.658 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:41:25,757.757 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:41:25,760.760 INFO    ] No camera update needed
[2026-08-31 14:41:25,762.762 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:41:25,764.764 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:41:25,770.770 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:41:25,775.775 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:41:27,814.814 INFO    ] ================================================
[2026-08-31 14:41:27,833.833 INFO    ] Launching Daemon at Mon Aug 31 14:41:27 IST 2026
[2026-08-31 14:41:27,844.844 INFO    ] ================================================
[2026-08-31 14:41:28,508.508 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:41:28
[2026-08-31 14:41:29,171.171 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:41:29,422.422 INFO    ] Initializing speech engine...
[2026-08-31 14:41:29,446.446 INFO    ] 2026-08-31 14:41:29
[2026-08-31 14:41:29,704.704 INFO    ] 2026-08-31 14:41:29
[2026-08-31 14:41:29,739.739 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:41:29,998.998 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:41:30,005.005 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:41:30,259.259 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:41:30,274.274 INFO    ] time= 31/08/2026 14:41:30
[2026-08-31 14:41:30,288.288 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:41:30,298.298 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:41:30,419.419 INFO    ] No existing commands found in stream
[2026-08-31 14:41:35,440.440 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:41:35,443.443 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-08-31 14:41:37,374.374 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 14:41:37,377.377 INFO    ] Checking for system updates...
[2026-08-31 14:41:37,412.412 INFO    ] 200
[2026-08-31 14:41:37,415.415 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:41:37,475.475 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:41:37,477.477 INFO    ] No update needed
[2026-08-31 14:41:37,480.480 INFO    ] Checking for camera pi updates...
[2026-08-31 14:41:37,518.518 INFO    ] 200
[2026-08-31 14:41:37,520.520 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:41:37,560.560 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:41:37,663.663 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:41:37,666.666 INFO    ] No camera update needed
[2026-08-31 14:41:37,668.668 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:41:37,671.671 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:41:37,676.676 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:41:37,681.681 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:41:39,723.723 INFO    ] ================================================
[2026-08-31 14:41:39,739.739 INFO    ] Launching Daemon at Mon Aug 31 14:41:39 IST 2026
[2026-08-31 14:41:39,751.751 INFO    ] ================================================
[2026-08-31 14:41:40,335.335 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:41:40
[2026-08-31 14:41:40,932.932 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:41:41,186.186 INFO    ] Initializing speech engine...
[2026-08-31 14:41:41,209.209 INFO    ] 2026-08-31 14:41:41
[2026-08-31 14:41:41,467.467 INFO    ] 2026-08-31 14:41:41
[2026-08-31 14:41:41,502.502 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:41:41,761.761 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:41:41,781.781 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:41:42,016.016 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:41:42,023.023 INFO    ] time= 31/08/2026 14:41:42
[2026-08-31 14:41:42,041.041 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:41:42,070.070 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:41:42,219.219 INFO    ] No existing commands found in stream
[2026-08-31 14:41:47,244.244 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:41:47,247.247 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-08-31 14:41:50,003.003 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 14:41:50,005.005 INFO    ] Checking for system updates...
[2026-08-31 14:41:50,046.046 INFO    ] 200
[2026-08-31 14:41:50,049.049 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:41:50,101.101 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:41:50,104.104 INFO    ] No update needed
[2026-08-31 14:41:50,106.106 INFO    ] Checking for camera pi updates...
[2026-08-31 14:41:50,140.140 INFO    ] 200
[2026-08-31 14:41:50,143.143 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:41:50,190.190 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:41:50,292.292 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:41:50,294.294 INFO    ] No camera update needed
[2026-08-31 14:41:50,296.296 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:41:50,299.299 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:41:50,304.304 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:41:50,309.309 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:41:52,348.348 INFO    ] ================================================
[2026-08-31 14:41:52,364.364 INFO    ] Launching Daemon at Mon Aug 31 14:41:52 IST 2026
[2026-08-31 14:41:52,375.375 INFO    ] ================================================
[2026-08-31 14:41:52,942.942 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:41:52
[2026-08-31 14:41:53,533.533 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:41:53,805.805 INFO    ] Initializing speech engine...
[2026-08-31 14:41:53,812.812 INFO    ] 2026-08-31 14:41:53
[2026-08-31 14:41:54,073.073 INFO    ] 2026-08-31 14:41:54
[2026-08-31 14:41:54,102.102 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:41:54,350.350 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:41:54,360.360 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:41:54,592.592 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:41:54,619.619 INFO    ] time= 31/08/2026 14:41:54
[2026-08-31 14:41:54,634.634 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:41:54,641.641 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:41:54,769.769 INFO    ] No existing commands found in stream
[2026-08-31 14:41:59,782.782 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:41:59,785.785 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-08-31 14:42:00,763.763 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 14:42:00,766.766 INFO    ] Checking for system updates...
[2026-08-31 14:42:00,806.806 INFO    ] 200
[2026-08-31 14:42:00,809.809 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:42:00,862.862 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:42:00,864.864 INFO    ] No update needed
[2026-08-31 14:42:00,867.867 INFO    ] Checking for camera pi updates...
[2026-08-31 14:42:00,904.904 INFO    ] 200
[2026-08-31 14:42:00,907.907 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:42:00,947.947 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:42:01,019.019 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:42:01,022.022 INFO    ] No camera update needed
[2026-08-31 14:42:01,024.024 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:42:01,026.026 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:42:01,032.032 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:42:01,037.037 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:42:03,080.080 INFO    ] ================================================
[2026-08-31 14:42:03,096.096 INFO    ] Launching Daemon at Mon Aug 31 14:42:03 IST 2026
[2026-08-31 14:42:03,107.107 INFO    ] ================================================
[2026-08-31 14:42:03,710.710 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:42:03
[2026-08-31 14:42:04,294.294 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:42:04,540.540 INFO    ] Initializing speech engine...
[2026-08-31 14:42:04,548.548 INFO    ] 2026-08-31 14:42:04
[2026-08-31 14:42:04,824.824 INFO    ] 2026-08-31 14:42:04
[2026-08-31 14:42:04,859.859 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:42:05,035.035 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:42:05,048.048 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:42:05,198.198 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:42:05,206.206 INFO    ] time= 31/08/2026 14:42:05
[2026-08-31 14:42:05,252.252 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:42:05,274.274 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:42:05,404.404 INFO    ] No existing commands found in stream
[2026-08-31 14:42:10,415.415 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:42:10,418.418 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-08-31 14:42:12,604.604 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 14:42:12,606.606 INFO    ] Checking for system updates...
[2026-08-31 14:42:12,646.646 INFO    ] 200
[2026-08-31 14:42:12,649.649 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:42:12,710.710 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:42:12,712.712 INFO    ] No update needed
[2026-08-31 14:42:12,715.715 INFO    ] Checking for camera pi updates...
[2026-08-31 14:42:12,757.757 INFO    ] 200
[2026-08-31 14:42:12,759.759 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:42:12,800.800 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:42:12,899.899 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:42:12,901.901 INFO    ] No camera update needed
[2026-08-31 14:42:12,903.903 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:42:12,906.906 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:42:12,911.911 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:42:12,916.916 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:42:14,959.959 INFO    ] ================================================
[2026-08-31 14:42:14,975.975 INFO    ] Launching Daemon at Mon Aug 31 14:42:14 IST 2026
[2026-08-31 14:42:14,986.986 INFO    ] ================================================
[2026-08-31 14:42:15,653.653 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:42:15
[2026-08-31 14:42:16,350.350 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:42:16,658.658 INFO    ] Initializing speech engine...
[2026-08-31 14:42:16,670.670 INFO    ] 2026-08-31 14:42:16
[2026-08-31 14:42:16,961.961 INFO    ] 2026-08-31 14:42:16
[2026-08-31 14:42:17,000.000 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:42:17,256.256 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:42:17,276.276 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:42:17,500.500 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:42:17,508.508 INFO    ] time= 31/08/2026 14:42:17
[2026-08-31 14:42:17,533.533 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:42:17,566.566 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:42:17,740.740 INFO    ] No existing commands found in stream
[2026-08-31 14:42:22,772.772 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:42:22,775.775 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-08-31 14:42:25,545.545 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 14:42:25,548.548 INFO    ] Checking for system updates...
[2026-08-31 14:42:25,587.587 INFO    ] 200
[2026-08-31 14:42:25,590.590 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:42:25,651.651 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:42:25,653.653 INFO    ] No update needed
[2026-08-31 14:42:25,655.655 INFO    ] Checking for camera pi updates...
[2026-08-31 14:42:25,693.693 INFO    ] 200
[2026-08-31 14:42:25,696.696 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:42:25,742.742 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:42:25,828.828 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:42:25,831.831 INFO    ] No camera update needed
[2026-08-31 14:42:25,833.833 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:42:25,835.835 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:42:25,841.841 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:42:25,846.846 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:42:27,885.885 INFO    ] ================================================
[2026-08-31 14:42:27,901.901 INFO    ] Launching Daemon at Mon Aug 31 14:42:27 IST 2026
[2026-08-31 14:42:27,911.911 INFO    ] ================================================
[2026-08-31 14:42:28,495.495 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:42:28
[2026-08-31 14:42:29,094.094 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:42:29,379.379 INFO    ] Initializing speech engine...
[2026-08-31 14:42:29,389.389 INFO    ] 2026-08-31 14:42:29
[2026-08-31 14:42:29,638.638 INFO    ] 2026-08-31 14:42:29
[2026-08-31 14:42:29,712.712 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:42:29,942.942 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:42:29,948.948 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:42:30,181.181 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:42:30,207.207 INFO    ] time= 31/08/2026 14:42:30
[2026-08-31 14:42:30,222.222 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:42:30,231.231 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:42:30,348.348 INFO    ] No existing commands found in stream
[2026-08-31 14:42:35,373.373 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:42:35,376.376 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-08-31 14:42:38,309.309 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 14:42:38,312.312 INFO    ] Checking for system updates...
[2026-08-31 14:42:38,349.349 INFO    ] 200
[2026-08-31 14:42:38,352.352 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:42:38,405.405 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:42:38,408.408 INFO    ] No update needed
[2026-08-31 14:42:38,411.411 INFO    ] Checking for camera pi updates...
[2026-08-31 14:42:38,449.449 INFO    ] 200
[2026-08-31 14:42:38,452.452 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:42:38,503.503 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:42:38,688.688 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:42:38,691.691 INFO    ] No camera update needed
[2026-08-31 14:42:38,694.694 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:42:38,697.697 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:42:38,703.703 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:42:38,709.709 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:42:40,751.751 INFO    ] ================================================
[2026-08-31 14:42:40,767.767 INFO    ] Launching Daemon at Mon Aug 31 14:42:40 IST 2026
[2026-08-31 14:42:40,778.778 INFO    ] ================================================
[2026-08-31 14:42:41,446.446 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:42:41
[2026-08-31 14:42:42,057.057 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:42:42,326.326 INFO    ] Initializing speech engine...
[2026-08-31 14:42:42,335.335 INFO    ] 2026-08-31 14:42:42
[2026-08-31 14:42:42,582.582 INFO    ] 2026-08-31 14:42:42
[2026-08-31 14:42:42,617.617 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:42:42,870.870 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:42:42,879.879 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:42:43,084.084 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:42:43,133.133 INFO    ] time= 31/08/2026 14:42:43
[2026-08-31 14:42:43,144.144 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:42:43,159.159 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:42:43,294.294 INFO    ] No existing commands found in stream
[2026-08-31 14:42:48,321.321 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:42:48,324.324 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-08-31 14:42:49,305.305 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 14:42:49,307.307 INFO    ] Checking for system updates...
[2026-08-31 14:42:49,344.344 INFO    ] 200
[2026-08-31 14:42:49,347.347 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:42:49,436.436 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:42:49,439.439 INFO    ] No update needed
[2026-08-31 14:42:49,442.442 INFO    ] Checking for camera pi updates...
[2026-08-31 14:42:49,477.477 INFO    ] 200
[2026-08-31 14:42:49,480.480 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:42:49,526.526 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:42:49,621.621 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:42:49,624.624 INFO    ] No camera update needed
[2026-08-31 14:42:49,627.627 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:42:49,634.634 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:42:49,640.640 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:42:49,644.644 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:42:51,685.685 INFO    ] ================================================
[2026-08-31 14:42:51,701.701 INFO    ] Launching Daemon at Mon Aug 31 14:42:51 IST 2026
[2026-08-31 14:42:51,711.711 INFO    ] ================================================
[2026-08-31 14:42:52,290.290 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:42:52
[2026-08-31 14:42:52,888.888 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:42:53,161.161 INFO    ] Initializing speech engine...
[2026-08-31 14:42:53,171.171 INFO    ] 2026-08-31 14:42:53
[2026-08-31 14:42:53,431.431 INFO    ] 2026-08-31 14:42:53
[2026-08-31 14:42:53,486.486 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:42:53,713.713 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:42:53,717.717 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:42:53,934.934 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:42:53,975.975 INFO    ] time= 31/08/2026 14:42:53
[2026-08-31 14:42:53,981.981 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:42:53,999.999 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:42:54,130.130 INFO    ] No existing commands found in stream
[2026-08-31 14:42:59,149.149 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:42:59,152.152 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-08-31 14:43:01,025.025 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 14:43:01,028.028 INFO    ] Checking for system updates...
[2026-08-31 14:43:01,068.068 INFO    ] 200
[2026-08-31 14:43:01,070.070 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:43:01,130.130 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:43:01,133.133 INFO    ] No update needed
[2026-08-31 14:43:01,135.135 INFO    ] Checking for camera pi updates...
[2026-08-31 14:43:01,168.168 INFO    ] 200
[2026-08-31 14:43:01,171.171 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:43:01,217.217 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:43:01,309.309 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:43:01,312.312 INFO    ] No camera update needed
[2026-08-31 14:43:01,314.314 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:43:01,316.316 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:43:01,322.322 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:43:01,327.327 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:43:03,376.376 INFO    ] ================================================
[2026-08-31 14:43:03,392.392 INFO    ] Launching Daemon at Mon Aug 31 14:43:03 IST 2026
[2026-08-31 14:43:03,404.404 INFO    ] ================================================
[2026-08-31 14:43:03,968.968 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:43:03
[2026-08-31 14:43:04,552.552 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:43:04,822.822 INFO    ] Initializing speech engine...
[2026-08-31 14:43:04,831.831 INFO    ] 2026-08-31 14:43:04
[2026-08-31 14:43:05,081.081 INFO    ] 2026-08-31 14:43:05
[2026-08-31 14:43:05,116.116 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:43:05,375.375 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:43:05,384.384 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:43:05,643.643 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:43:05,651.651 INFO    ] time= 31/08/2026 14:43:05
[2026-08-31 14:43:05,670.670 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:43:05,687.687 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:43:05,808.808 INFO    ] No existing commands found in stream
[2026-08-31 14:43:10,829.829 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:43:10,832.832 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-08-31 14:43:15,353.353 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 14:43:15,356.356 INFO    ] Checking for system updates...
[2026-08-31 14:43:15,392.392 INFO    ] 200
[2026-08-31 14:43:15,395.395 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:43:15,448.448 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:43:15,450.450 INFO    ] No update needed
[2026-08-31 14:43:15,452.452 INFO    ] Checking for camera pi updates...
[2026-08-31 14:43:15,485.485 INFO    ] 200
[2026-08-31 14:43:15,488.488 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:43:15,534.534 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:43:15,612.612 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:43:15,615.615 INFO    ] No camera update needed
[2026-08-31 14:43:15,617.617 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:43:15,619.619 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:43:15,625.625 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:43:15,630.630 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:43:17,672.672 INFO    ] ================================================
[2026-08-31 14:43:17,687.687 INFO    ] Launching Daemon at Mon Aug 31 14:43:17 IST 2026
[2026-08-31 14:43:17,697.697 INFO    ] ================================================
[2026-08-31 14:43:18,264.264 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:43:18
[2026-08-31 14:43:18,850.850 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:43:19,096.096 INFO    ] Initializing speech engine...
[2026-08-31 14:43:19,104.104 INFO    ] 2026-08-31 14:43:19
[2026-08-31 14:43:19,379.379 INFO    ] 2026-08-31 14:43:19
[2026-08-31 14:43:19,415.415 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:43:19,678.678 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:43:19,683.683 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:43:19,906.906 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:43:19,947.947 INFO    ] time= 31/08/2026 14:43:19
[2026-08-31 14:43:19,953.953 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:43:19,974.974 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:43:20,094.094 INFO    ] No existing commands found in stream
[2026-08-31 14:43:25,116.116 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:43:25,119.119 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-08-31 14:43:26,178.178 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 14:43:26,181.181 INFO    ] Checking for system updates...
[2026-08-31 14:43:26,217.217 INFO    ] 200
[2026-08-31 14:43:26,220.220 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:43:26,272.272 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:43:26,275.275 INFO    ] No update needed
[2026-08-31 14:43:26,277.277 INFO    ] Checking for camera pi updates...
[2026-08-31 14:43:26,311.311 INFO    ] 200
[2026-08-31 14:43:26,313.313 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:43:26,363.363 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:43:26,450.450 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:43:26,453.453 INFO    ] No camera update needed
[2026-08-31 14:43:26,455.455 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:43:26,458.458 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:43:26,464.464 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:43:26,470.470 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:43:28,515.515 INFO    ] ================================================
[2026-08-31 14:43:28,534.534 INFO    ] Launching Daemon at Mon Aug 31 14:43:28 IST 2026
[2026-08-31 14:43:28,545.545 INFO    ] ================================================
[2026-08-31 14:43:29,110.110 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:43:29
[2026-08-31 14:43:29,695.695 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:43:29,967.967 INFO    ] Initializing speech engine...
[2026-08-31 14:43:29,976.976 INFO    ] 2026-08-31 14:43:29
[2026-08-31 14:43:30,226.226 INFO    ] 2026-08-31 14:43:30
[2026-08-31 14:43:30,260.260 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:43:30,523.523 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:43:30,529.529 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:43:30,662.662 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:43:30,709.709 INFO    ] time= 31/08/2026 14:43:30
[2026-08-31 14:43:30,769.769 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:43:30,800.800 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:43:30,945.945 INFO    ] No existing commands found in stream
[2026-08-31 14:43:35,963.963 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:43:35,965.965 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-08-31 14:43:37,257.257 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 14:43:37,260.260 INFO    ] Checking for system updates...
[2026-08-31 14:43:37,300.300 INFO    ] 200
[2026-08-31 14:43:37,303.303 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:43:37,355.355 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:43:37,357.357 INFO    ] No update needed
[2026-08-31 14:43:37,360.360 INFO    ] Checking for camera pi updates...
[2026-08-31 14:43:37,398.398 INFO    ] 200
[2026-08-31 14:43:37,401.401 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:43:37,441.441 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:43:37,524.524 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:43:37,526.526 INFO    ] No camera update needed
[2026-08-31 14:43:37,529.529 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:43:37,531.531 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:43:37,536.536 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:43:37,541.541 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:43:39,584.584 INFO    ] ================================================
[2026-08-31 14:43:39,601.601 INFO    ] Launching Daemon at Mon Aug 31 14:43:39 IST 2026
[2026-08-31 14:43:39,612.612 INFO    ] ================================================
[2026-08-31 14:43:40,195.195 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:43:40
[2026-08-31 14:43:40,792.792 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:43:41,068.068 INFO    ] Initializing speech engine...
[2026-08-31 14:43:41,077.077 INFO    ] 2026-08-31 14:43:41
[2026-08-31 14:43:41,337.337 INFO    ] 2026-08-31 14:43:41
[2026-08-31 14:43:41,392.392 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:43:41,615.615 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:43:41,620.620 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:43:41,754.754 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:43:41,803.803 INFO    ] time= 31/08/2026 14:43:41
[2026-08-31 14:43:41,868.868 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:43:41,888.888 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:43:42,007.007 INFO    ] No existing commands found in stream
[2026-08-31 14:43:47,033.033 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:43:47,035.035 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-08-31 14:43:50,381.381 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 14:43:50,384.384 INFO    ] Checking for system updates...
[2026-08-31 14:43:50,420.420 INFO    ] 200
[2026-08-31 14:43:50,423.423 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:43:50,483.483 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:43:50,486.486 INFO    ] No update needed
[2026-08-31 14:43:50,488.488 INFO    ] Checking for camera pi updates...
[2026-08-31 14:43:50,522.522 INFO    ] 200
[2026-08-31 14:43:50,524.524 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:43:50,564.564 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:43:50,644.644 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:43:50,646.646 INFO    ] No camera update needed
[2026-08-31 14:43:50,649.649 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:43:50,651.651 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:43:50,657.657 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:43:50,662.662 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:43:52,701.701 INFO    ] ================================================
[2026-08-31 14:43:52,716.716 INFO    ] Launching Daemon at Mon Aug 31 14:43:52 IST 2026
[2026-08-31 14:43:52,727.727 INFO    ] ================================================
[2026-08-31 14:43:53,384.384 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:43:53
[2026-08-31 14:43:54,036.036 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:43:54,308.308 INFO    ] Initializing speech engine...
[2026-08-31 14:43:54,315.315 INFO    ] 2026-08-31 14:43:54
[2026-08-31 14:43:54,577.577 INFO    ] 2026-08-31 14:43:54
[2026-08-31 14:43:54,615.615 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:43:54,818.818 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:43:54,821.821 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:43:55,020.020 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:43:55,027.027 INFO    ] time= 31/08/2026 14:43:55
[2026-08-31 14:43:55,081.081 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:43:55,140.140 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:43:55,287.287 INFO    ] No existing commands found in stream
[2026-08-31 14:44:00,311.311 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:44:00,314.314 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-08-31 14:44:04,705.705 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 14:44:04,707.707 INFO    ] Checking for system updates...
[2026-08-31 14:44:04,747.747 INFO    ] 200
[2026-08-31 14:44:04,750.750 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:44:04,820.820 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:44:04,822.822 INFO    ] No update needed
[2026-08-31 14:44:04,825.825 INFO    ] Checking for camera pi updates...
[2026-08-31 14:44:04,858.858 INFO    ] 200
[2026-08-31 14:44:04,861.861 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:44:04,907.907 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:44:04,972.972 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:44:04,975.975 INFO    ] No camera update needed
[2026-08-31 14:44:04,977.977 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:44:04,980.980 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:44:04,985.985 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:44:04,990.990 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:44:07,032.032 INFO    ] ================================================
[2026-08-31 14:44:07,048.048 INFO    ] Launching Daemon at Mon Aug 31 14:44:07 IST 2026
[2026-08-31 14:44:07,058.058 INFO    ] ================================================
[2026-08-31 14:44:07,622.622 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:44:07
[2026-08-31 14:44:08,209.209 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:44:08,514.514 INFO    ] Initializing speech engine...
[2026-08-31 14:44:08,528.528 INFO    ] 2026-08-31 14:44:08
[2026-08-31 14:44:08,809.809 INFO    ] 2026-08-31 14:44:08
[2026-08-31 14:44:08,853.853 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:44:09,137.137 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:44:09,142.142 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:44:09,336.336 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:44:09,344.344 INFO    ] time= 31/08/2026 14:44:09
[2026-08-31 14:44:09,362.362 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:44:09,391.391 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:44:09,496.496 INFO    ] No existing commands found in stream
[2026-08-31 14:44:14,510.510 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:44:14,513.513 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-08-31 14:44:15,168.168 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 14:44:15,171.171 INFO    ] Checking for system updates...
[2026-08-31 14:44:15,212.212 INFO    ] 200
[2026-08-31 14:44:15,215.215 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:44:15,276.276 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:44:15,279.279 INFO    ] No update needed
[2026-08-31 14:44:15,282.282 INFO    ] Checking for camera pi updates...
[2026-08-31 14:44:15,316.316 INFO    ] 200
[2026-08-31 14:44:15,319.319 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:44:15,365.365 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:44:15,451.451 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:44:15,453.453 INFO    ] No camera update needed
[2026-08-31 14:44:15,456.456 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:44:15,459.459 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:44:15,464.464 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:44:15,469.469 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:44:17,508.508 INFO    ] ================================================
[2026-08-31 14:44:17,523.523 INFO    ] Launching Daemon at Mon Aug 31 14:44:17 IST 2026
[2026-08-31 14:44:17,534.534 INFO    ] ================================================
[2026-08-31 14:44:18,100.100 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:44:18
[2026-08-31 14:44:18,684.684 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:44:18,951.951 INFO    ] Initializing speech engine...
[2026-08-31 14:44:18,960.960 INFO    ] 2026-08-31 14:44:18
[2026-08-31 14:44:19,210.210 INFO    ] 2026-08-31 14:44:19
[2026-08-31 14:44:19,244.244 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:44:19,500.500 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:44:19,505.505 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:44:19,654.654 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:44:19,704.704 INFO    ] time= 31/08/2026 14:44:19
[2026-08-31 14:44:19,753.753 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:44:19,803.803 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:44:19,936.936 INFO    ] No existing commands found in stream
[2026-08-31 14:44:24,958.958 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:44:24,961.961 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-08-31 14:44:27,527.527 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 14:44:27,529.529 INFO    ] Checking for system updates...
[2026-08-31 14:44:27,569.569 INFO    ] 200
[2026-08-31 14:44:27,571.571 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:44:27,623.623 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:44:27,625.625 INFO    ] No update needed
[2026-08-31 14:44:27,627.627 INFO    ] Checking for camera pi updates...
[2026-08-31 14:44:27,661.661 INFO    ] 200
[2026-08-31 14:44:27,663.663 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:44:27,708.708 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:44:27,791.791 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:44:27,794.794 INFO    ] No camera update needed
[2026-08-31 14:44:27,796.796 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:44:27,798.798 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:44:27,804.804 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:44:27,809.809 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:44:29,849.849 INFO    ] ================================================
[2026-08-31 14:44:29,864.864 INFO    ] Launching Daemon at Mon Aug 31 14:44:29 IST 2026
[2026-08-31 14:44:29,874.874 INFO    ] ================================================
[2026-08-31 14:44:30,440.440 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:44:30
[2026-08-31 14:44:31,022.022 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:44:31,271.271 INFO    ] Initializing speech engine...
[2026-08-31 14:44:31,283.283 INFO    ] 2026-08-31 14:44:31
[2026-08-31 14:44:31,548.548 INFO    ] 2026-08-31 14:44:31
[2026-08-31 14:44:31,584.584 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:44:31,862.862 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:44:31,875.875 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:44:32,142.142 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:44:32,151.151 INFO    ] time= 31/08/2026 14:44:32
[2026-08-31 14:44:32,169.169 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:44:32,198.198 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:44:32,319.319 INFO    ] No existing commands found in stream
[2026-08-31 14:44:37,363.363 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:44:37,365.365 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-08-31 14:44:38,843.843 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 14:44:38,845.845 INFO    ] Checking for system updates...
[2026-08-31 14:44:38,884.884 INFO    ] 200
[2026-08-31 14:44:38,886.886 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:44:38,944.944 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:44:38,946.946 INFO    ] No update needed
[2026-08-31 14:44:38,948.948 INFO    ] Checking for camera pi updates...
[2026-08-31 14:44:38,982.982 INFO    ] 200
[2026-08-31 14:44:38,984.984 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:44:39,024.024 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:44:39,125.125 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:44:39,127.127 INFO    ] No camera update needed
[2026-08-31 14:44:39,130.130 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:44:39,132.132 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:44:39,137.137 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:44:39,142.142 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:44:41,183.183 INFO    ] ================================================
[2026-08-31 14:44:41,198.198 INFO    ] Launching Daemon at Mon Aug 31 14:44:41 IST 2026
[2026-08-31 14:44:41,209.209 INFO    ] ================================================
[2026-08-31 14:44:41,790.790 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:44:41
[2026-08-31 14:44:42,390.390 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:44:42,667.667 INFO    ] Initializing speech engine...
[2026-08-31 14:44:42,675.675 INFO    ] 2026-08-31 14:44:42
[2026-08-31 14:44:42,937.937 INFO    ] 2026-08-31 14:44:42
[2026-08-31 14:44:42,989.989 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:44:43,337.337 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:44:43,379.379 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:44:43,614.614 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:44:43,649.649 INFO    ] time= 31/08/2026 14:44:43
[2026-08-31 14:44:43,709.709 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:44:43,729.729 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:44:43,911.911 INFO    ] No existing commands found in stream
[2026-08-31 14:44:48,929.929 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:44:48,932.932 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-08-31 14:44:52,567.567 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 14:44:52,570.570 INFO    ] Checking for system updates...
[2026-08-31 14:44:52,610.610 INFO    ] 200
[2026-08-31 14:44:52,613.613 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:44:52,668.668 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:44:52,670.670 INFO    ] No update needed
[2026-08-31 14:44:52,673.673 INFO    ] Checking for camera pi updates...
[2026-08-31 14:44:52,711.711 INFO    ] 200
[2026-08-31 14:44:52,713.713 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:44:52,765.765 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:44:52,946.946 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:44:52,949.949 INFO    ] No camera update needed
[2026-08-31 14:44:52,952.952 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:44:52,954.954 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:44:52,960.960 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:44:52,966.966 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:44:55,007.007 INFO    ] ================================================
[2026-08-31 14:44:55,027.027 INFO    ] Launching Daemon at Mon Aug 31 14:44:55 IST 2026
[2026-08-31 14:44:55,038.038 INFO    ] ================================================
[2026-08-31 14:44:55,624.624 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:44:55
[2026-08-31 14:44:56,226.226 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:44:56,500.500 INFO    ] Initializing speech engine...
[2026-08-31 14:44:56,510.510 INFO    ] 2026-08-31 14:44:56
[2026-08-31 14:44:56,772.772 INFO    ] 2026-08-31 14:44:56
[2026-08-31 14:44:56,825.825 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:44:57,052.052 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:44:57,057.057 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:44:57,279.279 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:44:57,314.314 INFO    ] time= 31/08/2026 14:44:57
[2026-08-31 14:44:57,320.320 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:44:57,339.339 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:44:57,448.448 INFO    ] No existing commands found in stream
[2026-08-31 14:45:02,478.478 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:45:02,482.482 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-08-31 14:45:03,765.765 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 14:45:03,768.768 INFO    ] Checking for system updates...
[2026-08-31 14:45:03,806.806 INFO    ] 200
[2026-08-31 14:45:03,809.809 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:45:03,871.871 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:45:03,873.873 INFO    ] No update needed
[2026-08-31 14:45:03,876.876 INFO    ] Checking for camera pi updates...
[2026-08-31 14:45:03,913.913 INFO    ] 200
[2026-08-31 14:45:03,915.915 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:45:03,960.960 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:45:04,040.040 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:45:04,042.042 INFO    ] No camera update needed
[2026-08-31 14:45:04,045.045 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:45:04,047.047 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:45:04,052.052 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:45:04,057.057 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:45:06,103.103 INFO    ] ================================================
[2026-08-31 14:45:06,118.118 INFO    ] Launching Daemon at Mon Aug 31 14:45:06 IST 2026
[2026-08-31 14:45:06,128.128 INFO    ] ================================================
[2026-08-31 14:45:06,713.713 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:45:06
[2026-08-31 14:45:07,325.325 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:45:07,591.591 INFO    ] Initializing speech engine...
[2026-08-31 14:45:07,603.603 INFO    ] 2026-08-31 14:45:07
[2026-08-31 14:45:07,856.856 INFO    ] 2026-08-31 14:45:07
[2026-08-31 14:45:07,891.891 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:45:08,150.150 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:45:08,160.160 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:45:08,298.298 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:45:08,343.343 INFO    ] time= 31/08/2026 14:45:08
[2026-08-31 14:45:08,402.402 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:45:08,434.434 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:45:08,570.570 INFO    ] No existing commands found in stream
[2026-08-31 14:45:13,596.596 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:45:13,599.599 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-08-31 14:45:16,684.684 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 14:45:16,687.687 INFO    ] Checking for system updates...
[2026-08-31 14:45:16,722.722 INFO    ] 200
[2026-08-31 14:45:16,725.725 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:45:16,783.783 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:45:16,786.786 INFO    ] No update needed
[2026-08-31 14:45:16,789.789 INFO    ] Checking for camera pi updates...
[2026-08-31 14:45:16,823.823 INFO    ] 200
[2026-08-31 14:45:16,826.826 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:45:16,872.872 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:45:16,963.963 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:45:16,965.965 INFO    ] No camera update needed
[2026-08-31 14:45:16,967.967 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:45:16,970.970 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:45:16,975.975 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:45:16,980.980 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:45:19,028.028 INFO    ] ================================================
[2026-08-31 14:45:19,042.042 INFO    ] Launching Daemon at Mon Aug 31 14:45:19 IST 2026
[2026-08-31 14:45:19,053.053 INFO    ] ================================================
[2026-08-31 14:45:19,620.620 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:45:19
[2026-08-31 14:45:20,229.229 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:45:20,491.491 INFO    ] Initializing speech engine...
[2026-08-31 14:45:20,506.506 INFO    ] 2026-08-31 14:45:20
[2026-08-31 14:45:20,791.791 INFO    ] 2026-08-31 14:45:20
[2026-08-31 14:45:20,829.829 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:45:21,053.053 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:45:21,097.097 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:45:21,268.268 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:45:21,285.285 INFO    ] time= 31/08/2026 14:45:21
[2026-08-31 14:45:21,334.334 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:45:21,399.399 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:45:21,539.539 INFO    ] No existing commands found in stream
[2026-08-31 14:45:26,559.559 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:45:26,561.561 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-08-31 14:45:27,364.364 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 14:45:27,367.367 INFO    ] Checking for system updates...
[2026-08-31 14:45:27,404.404 INFO    ] 200
[2026-08-31 14:45:27,407.407 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:45:27,468.468 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:45:27,471.471 INFO    ] No update needed
[2026-08-31 14:45:27,474.474 INFO    ] Checking for camera pi updates...
[2026-08-31 14:45:27,509.509 INFO    ] 200
[2026-08-31 14:45:27,511.511 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:45:27,553.553 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:45:27,635.635 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:45:27,639.639 INFO    ] No camera update needed
[2026-08-31 14:45:27,641.641 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:45:27,644.644 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:45:27,650.650 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:45:27,656.656 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:45:29,698.698 INFO    ] ================================================
[2026-08-31 14:45:29,713.713 INFO    ] Launching Daemon at Mon Aug 31 14:45:29 IST 2026
[2026-08-31 14:45:29,724.724 INFO    ] ================================================
[2026-08-31 14:45:30,294.294 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:45:30
[2026-08-31 14:45:30,894.894 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:45:31,167.167 INFO    ] Initializing speech engine...
[2026-08-31 14:45:31,178.178 INFO    ] 2026-08-31 14:45:31
[2026-08-31 14:45:31,425.425 INFO    ] 2026-08-31 14:45:31
[2026-08-31 14:45:31,460.460 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:45:31,710.710 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:45:31,719.719 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:45:31,931.931 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:45:31,989.989 INFO    ] time= 31/08/2026 14:45:31
[2026-08-31 14:45:31,997.997 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:45:32,016.016 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:45:32,155.155 INFO    ] No existing commands found in stream
[2026-08-31 14:45:37,179.179 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:45:37,182.182 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-08-31 14:45:38,415.415 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 14:45:38,418.418 INFO    ] Checking for system updates...
[2026-08-31 14:45:38,458.458 INFO    ] 200
[2026-08-31 14:45:38,461.461 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:45:38,523.523 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:45:38,526.526 INFO    ] No update needed
[2026-08-31 14:45:38,529.529 INFO    ] Checking for camera pi updates...
[2026-08-31 14:45:38,569.569 INFO    ] 200
[2026-08-31 14:45:38,572.572 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:45:38,613.613 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:45:38,714.714 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:45:38,716.716 INFO    ] No camera update needed
[2026-08-31 14:45:38,720.720 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:45:38,722.722 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:45:38,729.729 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:45:38,735.735 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:45:40,777.777 INFO    ] ================================================
[2026-08-31 14:45:40,793.793 INFO    ] Launching Daemon at Mon Aug 31 14:45:40 IST 2026
[2026-08-31 14:45:40,804.804 INFO    ] ================================================
[2026-08-31 14:45:41,370.370 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:45:41
[2026-08-31 14:45:41,952.952 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:45:42,220.220 INFO    ] Initializing speech engine...
[2026-08-31 14:45:42,229.229 INFO    ] 2026-08-31 14:45:42
[2026-08-31 14:45:42,488.488 INFO    ] 2026-08-31 14:45:42
[2026-08-31 14:45:42,540.540 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:45:42,786.786 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:45:42,793.793 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:45:43,013.013 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:45:43,031.031 INFO    ] time= 31/08/2026 14:45:43
[2026-08-31 14:45:43,048.048 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:45:43,071.071 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:45:43,183.183 INFO    ] No existing commands found in stream
[2026-08-31 14:45:48,203.203 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:45:48,206.206 INFO    ] Waiting 0.00 seconds before fallback handling...
[2026-08-31 14:45:48,804.804 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 14:45:48,807.807 INFO    ] Checking for system updates...
[2026-08-31 14:45:48,846.846 INFO    ] 200
[2026-08-31 14:45:48,849.849 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:45:48,902.902 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:45:48,905.905 INFO    ] No update needed
[2026-08-31 14:45:48,907.907 INFO    ] Checking for camera pi updates...
[2026-08-31 14:45:48,941.941 INFO    ] 200
[2026-08-31 14:45:48,943.943 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:45:48,983.983 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:45:49,072.072 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:45:49,075.075 INFO    ] No camera update needed
[2026-08-31 14:45:49,077.077 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:45:49,079.079 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:45:49,085.085 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:45:49,090.090 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:45:51,130.130 INFO    ] ================================================
[2026-08-31 14:45:51,146.146 INFO    ] Launching Daemon at Mon Aug 31 14:45:51 IST 2026
[2026-08-31 14:45:51,156.156 INFO    ] ================================================
[2026-08-31 14:45:51,722.722 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:45:51
[2026-08-31 14:45:52,304.304 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:45:52,551.551 INFO    ] Initializing speech engine...
[2026-08-31 14:45:52,565.565 INFO    ] 2026-08-31 14:45:52
[2026-08-31 14:45:52,826.826 INFO    ] 2026-08-31 14:45:52
[2026-08-31 14:45:52,862.862 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:45:53,119.119 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:45:53,124.124 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:45:53,341.341 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:45:53,380.380 INFO    ] time= 31/08/2026 14:45:53
[2026-08-31 14:45:53,386.386 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:45:53,406.406 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:45:53,547.547 INFO    ] No existing commands found in stream
[2026-08-31 14:45:58,579.579 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:45:58,582.582 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-08-31 14:46:00,299.299 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 14:46:00,301.301 INFO    ] Checking for system updates...
[2026-08-31 14:46:00,342.342 INFO    ] 200
[2026-08-31 14:46:00,347.347 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:46:00,417.417 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:46:00,420.420 INFO    ] No update needed
[2026-08-31 14:46:00,422.422 INFO    ] Checking for camera pi updates...
[2026-08-31 14:46:00,455.455 INFO    ] 200
[2026-08-31 14:46:00,458.458 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:46:00,498.498 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:46:00,573.573 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:46:00,576.576 INFO    ] No camera update needed
[2026-08-31 14:46:00,578.578 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:46:00,581.581 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:46:00,586.586 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:46:00,591.591 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:46:02,633.633 INFO    ] ================================================
[2026-08-31 14:46:02,656.656 INFO    ] Launching Daemon at Mon Aug 31 14:46:02 IST 2026
[2026-08-31 14:46:02,673.673 INFO    ] ================================================
[2026-08-31 14:46:03,310.310 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:46:03
[2026-08-31 14:46:04,017.017 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:46:04,291.291 INFO    ] Initializing speech engine...
[2026-08-31 14:46:04,295.295 INFO    ] 2026-08-31 14:46:04
[2026-08-31 14:46:04,556.556 INFO    ] 2026-08-31 14:46:04
[2026-08-31 14:46:04,594.594 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:46:04,792.792 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:46:04,848.848 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:46:05,068.068 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:46:05,117.117 INFO    ] time= 31/08/2026 14:46:05
[2026-08-31 14:46:05,124.124 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:46:05,142.142 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:46:05,257.257 INFO    ] No existing commands found in stream
[2026-08-31 14:46:10,287.287 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:46:10,290.290 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-08-31 14:46:13,930.930 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 14:46:13,933.933 INFO    ] Checking for system updates...
[2026-08-31 14:46:13,968.968 INFO    ] 200
[2026-08-31 14:46:13,970.970 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:46:14,022.022 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:46:14,025.025 INFO    ] No update needed
[2026-08-31 14:46:14,028.028 INFO    ] Checking for camera pi updates...
[2026-08-31 14:46:14,065.065 INFO    ] 200
[2026-08-31 14:46:14,067.067 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:46:14,107.107 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:46:14,205.205 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:46:14,208.208 INFO    ] No camera update needed
[2026-08-31 14:46:14,210.210 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:46:14,212.212 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:46:14,218.218 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:46:14,222.222 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:46:16,264.264 INFO    ] ================================================
[2026-08-31 14:46:16,280.280 INFO    ] Launching Daemon at Mon Aug 31 14:46:16 IST 2026
[2026-08-31 14:46:16,291.291 INFO    ] ================================================
[2026-08-31 14:46:16,858.858 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:46:16
[2026-08-31 14:46:17,443.443 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:46:17,712.712 INFO    ] Initializing speech engine...
[2026-08-31 14:46:17,721.721 INFO    ] 2026-08-31 14:46:17
[2026-08-31 14:46:17,988.988 INFO    ] 2026-08-31 14:46:17
[2026-08-31 14:46:18,024.024 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:46:18,321.321 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:46:18,330.330 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:46:18,487.487 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:46:18,541.541 INFO    ] time= 31/08/2026 14:46:18
[2026-08-31 14:46:18,585.585 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:46:18,634.634 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:46:18,770.770 INFO    ] No existing commands found in stream
[2026-08-31 14:46:23,788.788 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:46:23,791.791 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-08-31 14:46:28,303.303 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 14:46:28,306.306 INFO    ] Checking for system updates...
[2026-08-31 14:46:28,341.341 INFO    ] 200
[2026-08-31 14:46:28,344.344 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:46:28,404.404 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:46:28,406.406 INFO    ] No update needed
[2026-08-31 14:46:28,409.409 INFO    ] Checking for camera pi updates...
[2026-08-31 14:46:28,448.448 INFO    ] 200
[2026-08-31 14:46:28,450.450 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:46:28,496.496 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:46:28,578.578 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:46:28,580.580 INFO    ] No camera update needed
[2026-08-31 14:46:28,583.583 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:46:28,585.585 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:46:28,590.590 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:46:28,595.595 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:46:30,637.637 INFO    ] ================================================
[2026-08-31 14:46:30,653.653 INFO    ] Launching Daemon at Mon Aug 31 14:46:30 IST 2026
[2026-08-31 14:46:30,664.664 INFO    ] ================================================
[2026-08-31 14:46:31,232.232 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:46:31
[2026-08-31 14:46:31,814.814 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:46:32,096.096 INFO    ] Initializing speech engine...
[2026-08-31 14:46:32,102.102 INFO    ] 2026-08-31 14:46:32
[2026-08-31 14:46:32,372.372 INFO    ] 2026-08-31 14:46:32
[2026-08-31 14:46:32,441.441 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:46:32,654.654 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:46:32,684.684 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:46:32,856.856 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:46:32,890.890 INFO    ] time= 31/08/2026 14:46:32
[2026-08-31 14:46:32,960.960 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:46:33,015.015 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:46:33,151.151 INFO    ] No existing commands found in stream
[2026-08-31 14:46:38,168.168 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:46:38,171.171 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-08-31 14:46:38,885.885 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 14:46:38,888.888 INFO    ] Checking for system updates...
[2026-08-31 14:46:38,923.923 INFO    ] 200
[2026-08-31 14:46:38,926.926 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:46:38,978.978 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:46:38,981.981 INFO    ] No update needed
[2026-08-31 14:46:38,983.983 INFO    ] Checking for camera pi updates...
[2026-08-31 14:46:39,021.021 INFO    ] 200
[2026-08-31 14:46:39,024.024 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:46:39,067.067 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:46:39,149.149 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:46:39,152.152 INFO    ] No camera update needed
[2026-08-31 14:46:39,155.155 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:46:39,158.158 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:46:39,164.164 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:46:39,170.170 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:46:41,213.213 INFO    ] ================================================
[2026-08-31 14:46:41,228.228 INFO    ] Launching Daemon at Mon Aug 31 14:46:41 IST 2026
[2026-08-31 14:46:41,239.239 INFO    ] ================================================
[2026-08-31 14:46:41,824.824 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:46:41
[2026-08-31 14:46:42,493.493 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:46:42,781.781 INFO    ] Initializing speech engine...
[2026-08-31 14:46:42,789.789 INFO    ] 2026-08-31 14:46:42
[2026-08-31 14:46:43,049.049 INFO    ] 2026-08-31 14:46:43
[2026-08-31 14:46:43,079.079 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:46:43,324.324 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:46:43,333.333 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:46:43,557.557 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:46:43,593.593 INFO    ] time= 31/08/2026 14:46:43
[2026-08-31 14:46:43,610.610 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:46:43,616.616 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:46:43,745.745 INFO    ] No existing commands found in stream
[2026-08-31 14:46:48,759.759 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:46:48,761.761 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-08-31 14:46:52,151.151 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 14:46:52,153.153 INFO    ] Checking for system updates...
[2026-08-31 14:46:52,199.199 INFO    ] 200
[2026-08-31 14:46:52,201.201 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-08-31 14:46:52,204.204 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-08-31 14:46:52,207.207 INFO    ] Checking for camera pi updates...
[2026-08-31 14:46:52,248.248 INFO    ] 200
[2026-08-31 14:46:52,250.250 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-08-31 14:46:52,253.253 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-08-31 14:46:52,255.255 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:46:52,258.258 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:46:52,264.264 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:46:52,270.270 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:46:54,310.310 INFO    ] ================================================
[2026-08-31 14:46:54,325.325 INFO    ] Launching Daemon at Mon Aug 31 14:46:54 IST 2026
[2026-08-31 14:46:54,336.336 INFO    ] ================================================
[2026-08-31 14:46:54,955.955 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:46:54
[2026-08-31 14:46:55,550.550 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:46:55,825.825 INFO    ] Initializing speech engine...
[2026-08-31 14:46:55,836.836 INFO    ] 2026-08-31 14:46:55
[2026-08-31 14:46:56,096.096 INFO    ] 2026-08-31 14:46:56
[2026-08-31 14:46:56,150.150 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:46:56,438.438 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:46:56,443.443 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:46:56,616.616 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:46:56,645.645 INFO    ] time= 31/08/2026 14:46:56
[2026-08-31 14:46:56,652.652 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:46:56,671.671 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:46:56,793.793 INFO    ] No existing commands found in stream
[2026-08-31 14:47:01,819.819 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:47:01,822.822 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-08-31 14:47:02,528.528 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 14:47:02,532.532 INFO    ] Checking for system updates...
[2026-08-31 14:47:02,582.582 INFO    ] 200
[2026-08-31 14:47:02,585.585 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:47:02,640.640 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:47:02,644.644 INFO    ] No update needed
[2026-08-31 14:47:02,650.650 INFO    ] Checking for camera pi updates...
[2026-08-31 14:47:02,692.692 INFO    ] 200
[2026-08-31 14:47:02,694.694 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:47:02,744.744 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:47:02,879.879 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:47:02,882.882 INFO    ] No camera update needed
[2026-08-31 14:47:02,885.885 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:47:02,888.888 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:47:02,895.895 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:47:02,902.902 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:47:04,942.942 INFO    ] ================================================
[2026-08-31 14:47:04,957.957 INFO    ] Launching Daemon at Mon Aug 31 14:47:04 IST 2026
[2026-08-31 14:47:04,968.968 INFO    ] ================================================
[2026-08-31 14:47:05,552.552 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:47:05
[2026-08-31 14:47:06,188.188 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:47:06,463.463 INFO    ] Initializing speech engine...
[2026-08-31 14:47:06,468.468 INFO    ] 2026-08-31 14:47:06
[2026-08-31 14:47:06,718.718 INFO    ] 2026-08-31 14:47:06
[2026-08-31 14:47:06,753.753 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:47:07,010.010 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:47:07,018.018 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:47:07,154.154 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:47:07,202.202 INFO    ] time= 31/08/2026 14:47:07
[2026-08-31 14:47:07,267.267 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:47:07,292.292 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:47:07,406.406 INFO    ] No existing commands found in stream
[2026-08-31 14:47:12,428.428 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:47:12,431.431 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-08-31 14:47:12,987.987 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 14:47:12,990.990 INFO    ] Checking for system updates...
[2026-08-31 14:47:13,026.026 INFO    ] 200
[2026-08-31 14:47:13,028.028 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:47:13,089.089 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:47:13,091.091 INFO    ] No update needed
[2026-08-31 14:47:13,093.093 INFO    ] Checking for camera pi updates...
[2026-08-31 14:47:13,128.128 INFO    ] 200
[2026-08-31 14:47:13,131.131 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:47:13,177.177 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:47:13,263.263 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:47:13,266.266 INFO    ] No camera update needed
[2026-08-31 14:47:13,268.268 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:47:13,271.271 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:47:13,277.277 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:47:13,283.283 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:47:15,324.324 INFO    ] ================================================
[2026-08-31 14:47:15,340.340 INFO    ] Launching Daemon at Mon Aug 31 14:47:15 IST 2026
[2026-08-31 14:47:15,351.351 INFO    ] ================================================
[2026-08-31 14:47:15,920.920 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:47:15
[2026-08-31 14:47:16,502.502 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:47:16,764.764 INFO    ] Initializing speech engine...
[2026-08-31 14:47:16,779.779 INFO    ] 2026-08-31 14:47:16
[2026-08-31 14:47:17,057.057 INFO    ] 2026-08-31 14:47:17
[2026-08-31 14:47:17,093.093 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:47:17,321.321 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:47:17,329.329 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:47:17,510.510 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:47:17,549.549 INFO    ] time= 31/08/2026 14:47:17
[2026-08-31 14:47:17,561.561 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:47:17,601.601 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:47:17,709.709 INFO    ] No existing commands found in stream
[2026-08-31 14:47:22,722.722 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:47:22,724.724 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-08-31 14:47:24,703.703 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 14:47:24,705.705 INFO    ] Checking for system updates...
[2026-08-31 14:47:24,741.741 INFO    ] 200
[2026-08-31 14:47:24,743.743 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:47:24,797.797 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:47:24,799.799 INFO    ] No update needed
[2026-08-31 14:47:24,801.801 INFO    ] Checking for camera pi updates...
[2026-08-31 14:47:24,839.839 INFO    ] 200
[2026-08-31 14:47:24,841.841 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:47:24,881.881 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:47:24,966.966 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:47:24,969.969 INFO    ] No camera update needed
[2026-08-31 14:47:24,972.972 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:47:24,974.974 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:47:24,979.979 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:47:24,984.984 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:47:27,025.025 INFO    ] ================================================
[2026-08-31 14:47:27,040.040 INFO    ] Launching Daemon at Mon Aug 31 14:47:27 IST 2026
[2026-08-31 14:47:27,051.051 INFO    ] ================================================
[2026-08-31 14:47:27,630.630 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:47:27
[2026-08-31 14:47:28,227.227 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:47:28,503.503 INFO    ] Initializing speech engine...
[2026-08-31 14:47:28,512.512 INFO    ] 2026-08-31 14:47:28
[2026-08-31 14:47:28,772.772 INFO    ] 2026-08-31 14:47:28
[2026-08-31 14:47:28,824.824 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:47:29,051.051 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:47:29,058.058 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:47:29,308.308 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:47:29,315.315 INFO    ] time= 31/08/2026 14:47:29
[2026-08-31 14:47:29,335.335 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:47:29,362.362 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:47:29,497.497 INFO    ] No existing commands found in stream
[2026-08-31 14:47:34,527.527 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:47:34,530.530 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-08-31 14:47:35,953.953 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 14:47:35,955.955 INFO    ] Checking for system updates...
[2026-08-31 14:47:35,997.997 INFO    ] 200
[2026-08-31 14:47:36,000.000 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:47:36,053.053 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:47:36,056.056 INFO    ] No update needed
[2026-08-31 14:47:36,059.059 INFO    ] Checking for camera pi updates...
[2026-08-31 14:47:36,099.099 INFO    ] 200
[2026-08-31 14:47:36,102.102 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:47:36,149.149 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:47:36,242.242 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:47:36,245.245 INFO    ] No camera update needed
[2026-08-31 14:47:36,247.247 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:47:36,249.249 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:47:36,254.254 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:47:36,259.259 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:47:38,301.301 INFO    ] ================================================
[2026-08-31 14:47:38,317.317 INFO    ] Launching Daemon at Mon Aug 31 14:47:38 IST 2026
[2026-08-31 14:47:38,328.328 INFO    ] ================================================
[2026-08-31 14:47:38,997.997 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:47:38
[2026-08-31 14:47:39,683.683 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:47:39,996.996 INFO    ] Initializing speech engine...
[2026-08-31 14:47:40,008.008 INFO    ] 2026-08-31 14:47:39
[2026-08-31 14:47:40,325.325 INFO    ] 2026-08-31 14:47:40
[2026-08-31 14:47:40,413.413 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:47:40,630.630 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:47:40,638.638 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:47:40,816.816 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:47:40,845.845 INFO    ] time= 31/08/2026 14:47:40
[2026-08-31 14:47:40,862.862 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:47:40,893.893 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:47:41,024.024 INFO    ] No existing commands found in stream
[2026-08-31 14:47:46,060.060 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:47:46,063.063 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-08-31 14:47:47,408.408 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 14:47:47,411.411 INFO    ] Checking for system updates...
[2026-08-31 14:47:47,452.452 INFO    ] 200
[2026-08-31 14:47:47,455.455 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:47:47,515.515 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:47:47,518.518 INFO    ] No update needed
[2026-08-31 14:47:47,522.522 INFO    ] Checking for camera pi updates...
[2026-08-31 14:47:47,564.564 INFO    ] 200
[2026-08-31 14:47:47,568.568 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:47:47,617.617 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:47:47,716.716 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:47:47,720.720 INFO    ] No camera update needed
[2026-08-31 14:47:47,723.723 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:47:47,726.726 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:47:47,733.733 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:47:47,740.740 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:47:49,785.785 INFO    ] ================================================
[2026-08-31 14:47:49,802.802 INFO    ] Launching Daemon at Mon Aug 31 14:47:49 IST 2026
[2026-08-31 14:47:49,814.814 INFO    ] ================================================
[2026-08-31 14:47:50,503.503 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:47:50
[2026-08-31 14:47:51,221.221 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:47:51,548.548 INFO    ] Initializing speech engine...
[2026-08-31 14:47:51,556.556 INFO    ] 2026-08-31 14:47:51
[2026-08-31 14:47:51,897.897 INFO    ] 2026-08-31 14:47:51
[2026-08-31 14:47:51,991.991 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:47:52,222.222 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:47:52,234.234 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:47:52,484.484 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:47:52,495.495 INFO    ] time= 31/08/2026 14:47:52
[2026-08-31 14:47:52,509.509 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:47:52,571.571 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:47:52,720.720 INFO    ] No existing commands found in stream
[2026-08-31 14:47:57,736.736 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:47:57,739.739 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-08-31 14:47:59,872.872 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 14:47:59,875.875 INFO    ] Checking for system updates...
[2026-08-31 14:47:59,915.915 INFO    ] 200
[2026-08-31 14:47:59,918.918 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:47:59,972.972 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:47:59,974.974 INFO    ] No update needed
[2026-08-31 14:47:59,977.977 INFO    ] Checking for camera pi updates...
[2026-08-31 14:48:00,013.013 INFO    ] 200
[2026-08-31 14:48:00,016.016 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:48:00,062.062 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:48:00,150.150 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:48:00,152.152 INFO    ] No camera update needed
[2026-08-31 14:48:00,155.155 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:48:00,158.158 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:48:00,164.164 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:48:00,170.170 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:48:02,221.221 INFO    ] ================================================
[2026-08-31 14:48:02,244.244 INFO    ] Launching Daemon at Mon Aug 31 14:48:02 IST 2026
[2026-08-31 14:48:02,262.262 INFO    ] ================================================
[2026-08-31 14:48:02,928.928 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:48:02
[2026-08-31 14:48:03,510.510 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:48:03,777.777 INFO    ] Initializing speech engine...
[2026-08-31 14:48:03,786.786 INFO    ] 2026-08-31 14:48:03
[2026-08-31 14:48:04,039.039 INFO    ] 2026-08-31 14:48:04
[2026-08-31 14:48:04,075.075 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:48:04,246.246 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:48:04,258.258 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:48:04,465.465 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:48:04,491.491 INFO    ] time= 31/08/2026 14:48:04
[2026-08-31 14:48:04,551.551 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:48:04,597.597 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:48:04,742.742 INFO    ] No existing commands found in stream
[2026-08-31 14:48:09,758.758 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:48:09,761.761 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-08-31 14:48:13,288.288 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 14:48:13,480.480 INFO    ] Checking for system updates...
[2026-08-31 14:48:13,516.516 INFO    ] 200
[2026-08-31 14:48:13,519.519 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:48:13,571.571 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:48:13,574.574 INFO    ] No update needed
[2026-08-31 14:48:13,576.576 INFO    ] Checking for camera pi updates...
[2026-08-31 14:48:13,614.614 INFO    ] 200
[2026-08-31 14:48:13,617.617 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:48:13,658.658 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:48:13,738.738 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:48:13,740.740 INFO    ] No camera update needed
[2026-08-31 14:48:13,743.743 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:48:13,745.745 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:48:13,750.750 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:48:13,755.755 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:48:15,796.796 INFO    ] ================================================
[2026-08-31 14:48:15,811.811 INFO    ] Launching Daemon at Mon Aug 31 14:48:15 IST 2026
[2026-08-31 14:48:15,823.823 INFO    ] ================================================
[2026-08-31 14:48:16,393.393 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:48:16
[2026-08-31 14:48:16,989.989 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:48:17,286.286 INFO    ] Initializing speech engine...
[2026-08-31 14:48:17,298.298 INFO    ] 2026-08-31 14:48:17
[2026-08-31 14:48:17,589.589 INFO    ] 2026-08-31 14:48:17
[2026-08-31 14:48:17,634.634 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:48:17,920.920 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:48:17,926.926 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:48:18,123.123 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:48:18,141.141 INFO    ] time= 31/08/2026 14:48:18
[2026-08-31 14:48:18,152.152 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:48:18,179.179 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:48:18,285.285 INFO    ] No existing commands found in stream
[2026-08-31 14:48:23,302.302 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:48:23,306.306 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-08-31 14:48:24,066.066 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 14:48:24,069.069 INFO    ] Checking for system updates...
[2026-08-31 14:48:24,105.105 INFO    ] 200
[2026-08-31 14:48:24,108.108 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:48:24,160.160 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:48:24,162.162 INFO    ] No update needed
[2026-08-31 14:48:24,165.165 INFO    ] Checking for camera pi updates...
[2026-08-31 14:48:24,199.199 INFO    ] 200
[2026-08-31 14:48:24,201.201 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:48:24,242.242 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:48:24,328.328 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:48:24,331.331 INFO    ] No camera update needed
[2026-08-31 14:48:24,333.333 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:48:24,335.335 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:48:24,341.341 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:48:24,346.346 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:48:26,387.387 INFO    ] ================================================
[2026-08-31 14:48:26,403.403 INFO    ] Launching Daemon at Mon Aug 31 14:48:26 IST 2026
[2026-08-31 14:48:26,415.415 INFO    ] ================================================
[2026-08-31 14:48:27,000.000 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:48:26
[2026-08-31 14:48:27,601.601 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:48:27,879.879 INFO    ] Initializing speech engine...
[2026-08-31 14:48:27,886.886 INFO    ] 2026-08-31 14:48:27
[2026-08-31 14:48:28,149.149 INFO    ] 2026-08-31 14:48:28
[2026-08-31 14:48:28,203.203 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:48:28,485.485 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:48:28,494.494 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:48:28,674.674 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:48:28,694.694 INFO    ] time= 31/08/2026 14:48:28
[2026-08-31 14:48:28,710.710 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:48:28,741.741 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:48:28,848.848 INFO    ] No existing commands found in stream
[2026-08-31 14:48:33,868.868 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:48:33,871.871 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-08-31 14:48:35,985.985 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 14:48:35,988.988 INFO    ] Checking for system updates...
[2026-08-31 14:48:36,029.029 INFO    ] 200
[2026-08-31 14:48:36,032.032 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:48:36,094.094 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:48:36,096.096 INFO    ] No update needed
[2026-08-31 14:48:36,099.099 INFO    ] Checking for camera pi updates...
[2026-08-31 14:48:36,132.132 INFO    ] 200
[2026-08-31 14:48:36,135.135 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:48:36,176.176 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:48:36,265.265 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:48:36,268.268 INFO    ] No camera update needed
[2026-08-31 14:48:36,270.270 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:48:36,272.272 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:48:36,278.278 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:48:36,283.283 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:48:38,322.322 INFO    ] ================================================
[2026-08-31 14:48:38,339.339 INFO    ] Launching Daemon at Mon Aug 31 14:48:38 IST 2026
[2026-08-31 14:48:38,349.349 INFO    ] ================================================
[2026-08-31 14:48:39,018.018 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:48:39
[2026-08-31 14:48:39,705.705 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:48:40,016.016 INFO    ] Initializing speech engine...
[2026-08-31 14:48:40,024.024 INFO    ] 2026-08-31 14:48:40
[2026-08-31 14:48:40,299.299 INFO    ] 2026-08-31 14:48:40
[2026-08-31 14:48:40,360.360 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:48:40,614.614 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:48:40,622.622 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:48:40,862.862 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:48:40,881.881 INFO    ] time= 31/08/2026 14:48:40
[2026-08-31 14:48:40,891.891 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:48:40,918.918 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:48:41,030.030 INFO    ] No existing commands found in stream
[2026-08-31 14:48:46,054.054 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:48:46,057.057 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-08-31 14:48:47,829.829 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 14:48:47,832.832 INFO    ] Checking for system updates...
[2026-08-31 14:48:47,868.868 INFO    ] 200
[2026-08-31 14:48:47,871.871 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:48:47,932.932 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:48:47,935.935 INFO    ] No update needed
[2026-08-31 14:48:47,937.937 INFO    ] Checking for camera pi updates...
[2026-08-31 14:48:47,976.976 INFO    ] 200
[2026-08-31 14:48:47,978.978 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:48:48,018.018 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:48:48,068.068 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:48:48,070.070 INFO    ] No camera update needed
[2026-08-31 14:48:48,073.073 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:48:48,075.075 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:48:48,080.080 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:48:48,085.085 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:48:50,127.127 INFO    ] ================================================
[2026-08-31 14:48:50,143.143 INFO    ] Launching Daemon at Mon Aug 31 14:48:50 IST 2026
[2026-08-31 14:48:50,155.155 INFO    ] ================================================
[2026-08-31 14:48:50,816.816 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:48:50
[2026-08-31 14:48:51,498.498 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:48:51,810.810 INFO    ] Initializing speech engine...
[2026-08-31 14:48:51,822.822 INFO    ] 2026-08-31 14:48:51
[2026-08-31 14:48:52,139.139 INFO    ] 2026-08-31 14:48:52
[2026-08-31 14:48:52,224.224 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:48:52,502.502 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:48:52,545.545 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:48:52,686.686 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:48:52,696.696 INFO    ] time= 31/08/2026 14:48:52
[2026-08-31 14:48:52,738.738 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:48:52,793.793 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:48:52,929.929 INFO    ] No existing commands found in stream
[2026-08-31 14:48:57,960.960 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:48:57,963.963 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-08-31 14:48:59,172.172 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 14:48:59,175.175 INFO    ] Checking for system updates...
[2026-08-31 14:48:59,219.219 INFO    ] 200
[2026-08-31 14:48:59,221.221 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:48:59,288.288 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:48:59,291.291 INFO    ] No update needed
[2026-08-31 14:48:59,294.294 INFO    ] Checking for camera pi updates...
[2026-08-31 14:48:59,333.333 INFO    ] 200
[2026-08-31 14:48:59,336.336 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:48:59,378.378 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:48:59,481.481 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:48:59,483.483 INFO    ] No camera update needed
[2026-08-31 14:48:59,485.485 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:48:59,488.488 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:48:59,493.493 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:48:59,498.498 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:49:01,540.540 INFO    ] ================================================
[2026-08-31 14:49:01,555.555 INFO    ] Launching Daemon at Mon Aug 31 14:49:01 IST 2026
[2026-08-31 14:49:01,566.566 INFO    ] ================================================
[2026-08-31 14:49:02,220.220 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:49:02
[2026-08-31 14:49:02,953.953 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:49:03,323.323 INFO    ] Initializing speech engine...
[2026-08-31 14:49:03,337.337 INFO    ] 2026-08-31 14:49:03
[2026-08-31 14:49:03,654.654 INFO    ] 2026-08-31 14:49:03
[2026-08-31 14:49:03,697.697 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:49:03,938.938 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:49:03,951.951 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:49:04,085.085 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:49:04,155.155 INFO    ] time= 31/08/2026 14:49:04
[2026-08-31 14:49:04,212.212 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:49:04,219.219 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:49:04,353.353 INFO    ] No existing commands found in stream
[2026-08-31 14:49:09,372.372 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:49:09,375.375 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-08-31 14:49:13,290.290 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 14:49:13,293.293 INFO    ] Checking for system updates...
[2026-08-31 14:49:13,334.334 INFO    ] 200
[2026-08-31 14:49:13,336.336 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:49:13,389.389 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:49:13,392.392 INFO    ] No update needed
[2026-08-31 14:49:13,394.394 INFO    ] Checking for camera pi updates...
[2026-08-31 14:49:13,433.433 INFO    ] 200
[2026-08-31 14:49:13,435.435 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:49:13,475.475 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:49:13,670.670 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:49:13,672.672 INFO    ] No camera update needed
[2026-08-31 14:49:13,674.674 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:49:13,676.676 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:49:13,682.682 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:49:13,687.687 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:49:15,728.728 INFO    ] ================================================
[2026-08-31 14:49:15,744.744 INFO    ] Launching Daemon at Mon Aug 31 14:49:15 IST 2026
[2026-08-31 14:49:15,755.755 INFO    ] ================================================
[2026-08-31 14:49:16,319.319 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:49:16
[2026-08-31 14:49:16,901.901 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:49:17,178.178 INFO    ] Initializing speech engine...
[2026-08-31 14:49:17,185.185 INFO    ] 2026-08-31 14:49:17
[2026-08-31 14:49:17,446.446 INFO    ] 2026-08-31 14:49:17
[2026-08-31 14:49:17,500.500 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:49:17,784.784 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:49:17,789.789 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:49:17,984.984 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:49:17,999.999 INFO    ] time= 31/08/2026 14:49:17
[2026-08-31 14:49:18,008.008 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:49:18,034.034 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:49:18,160.160 INFO    ] No existing commands found in stream
[2026-08-31 14:49:23,185.185 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:49:23,188.188 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-08-31 14:49:25,915.915 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 14:49:25,917.917 INFO    ] Checking for system updates...
[2026-08-31 14:49:25,959.959 INFO    ] 200
[2026-08-31 14:49:25,963.963 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:49:26,025.025 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:49:26,028.028 INFO    ] No update needed
[2026-08-31 14:49:26,032.032 INFO    ] Checking for camera pi updates...
[2026-08-31 14:49:26,067.067 INFO    ] 200
[2026-08-31 14:49:26,070.070 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:49:26,113.113 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:49:26,220.220 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:49:26,223.223 INFO    ] No camera update needed
[2026-08-31 14:49:26,226.226 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:49:26,229.229 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:49:26,235.235 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:49:26,241.241 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:49:28,282.282 INFO    ] ================================================
[2026-08-31 14:49:28,299.299 INFO    ] Launching Daemon at Mon Aug 31 14:49:28 IST 2026
[2026-08-31 14:49:28,310.310 INFO    ] ================================================
[2026-08-31 14:49:28,976.976 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:49:28
[2026-08-31 14:49:29,662.662 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:49:29,968.968 INFO    ] Initializing speech engine...
[2026-08-31 14:49:29,982.982 INFO    ] 2026-08-31 14:49:29
[2026-08-31 14:49:30,270.270 INFO    ] 2026-08-31 14:49:30
[2026-08-31 14:49:30,307.307 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:49:30,560.560 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:49:30,564.564 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:49:30,785.785 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:49:30,805.805 INFO    ] time= 31/08/2026 14:49:30
[2026-08-31 14:49:30,821.821 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:49:30,828.828 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:49:30,961.961 INFO    ] No existing commands found in stream
[2026-08-31 14:49:35,973.973 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:49:35,976.976 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-08-31 14:49:38,768.768 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 14:49:38,771.771 INFO    ] Checking for system updates...
[2026-08-31 14:49:38,807.807 INFO    ] 200
[2026-08-31 14:49:38,809.809 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:49:38,861.861 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:49:38,864.864 INFO    ] No update needed
[2026-08-31 14:49:38,866.866 INFO    ] Checking for camera pi updates...
[2026-08-31 14:49:38,899.899 INFO    ] 200
[2026-08-31 14:49:38,902.902 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:49:38,943.943 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:49:39,030.030 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:49:39,033.033 INFO    ] No camera update needed
[2026-08-31 14:49:39,036.036 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:49:39,038.038 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:49:39,043.043 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:49:39,048.048 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:49:41,088.088 INFO    ] ================================================
[2026-08-31 14:49:41,103.103 INFO    ] Launching Daemon at Mon Aug 31 14:49:41 IST 2026
[2026-08-31 14:49:41,114.114 INFO    ] ================================================
[2026-08-31 14:49:41,688.688 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:49:41
[2026-08-31 14:49:42,284.284 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:49:42,561.561 INFO    ] Initializing speech engine...
[2026-08-31 14:49:42,568.568 INFO    ] 2026-08-31 14:49:42
[2026-08-31 14:49:42,830.830 INFO    ] 2026-08-31 14:49:42
[2026-08-31 14:49:42,883.883 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:49:43,106.106 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:49:43,116.116 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:49:43,356.356 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:49:43,373.373 INFO    ] time= 31/08/2026 14:49:43
[2026-08-31 14:49:43,380.380 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:49:43,400.400 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:49:43,524.524 INFO    ] No existing commands found in stream
[2026-08-31 14:49:48,539.539 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:49:48,542.542 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-08-31 14:49:52,551.551 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 14:49:52,554.554 INFO    ] Checking for system updates...
[2026-08-31 14:49:52,598.598 INFO    ] 200
[2026-08-31 14:49:52,600.600 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:49:52,666.666 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:49:52,668.668 INFO    ] No update needed
[2026-08-31 14:49:52,671.671 INFO    ] Checking for camera pi updates...
[2026-08-31 14:49:52,709.709 INFO    ] 200
[2026-08-31 14:49:52,711.711 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:49:52,757.757 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:49:52,862.862 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:49:52,864.864 INFO    ] No camera update needed
[2026-08-31 14:49:52,866.866 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:49:52,869.869 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:49:52,874.874 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:49:52,879.879 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:49:54,923.923 INFO    ] ================================================
[2026-08-31 14:49:54,938.938 INFO    ] Launching Daemon at Mon Aug 31 14:49:54 IST 2026
[2026-08-31 14:49:54,949.949 INFO    ] ================================================
[2026-08-31 14:49:55,531.531 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:49:55
[2026-08-31 14:49:56,129.129 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:49:56,406.406 INFO    ] Initializing speech engine...
[2026-08-31 14:49:56,414.414 INFO    ] 2026-08-31 14:49:56
[2026-08-31 14:49:56,674.674 INFO    ] 2026-08-31 14:49:56
[2026-08-31 14:49:56,730.730 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:49:56,979.979 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:49:56,984.984 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:49:57,213.213 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:49:57,219.219 INFO    ] time= 31/08/2026 14:49:57
[2026-08-31 14:49:57,237.237 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:49:57,266.266 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:49:57,367.367 INFO    ] No existing commands found in stream
[2026-08-31 14:50:02,380.380 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:50:02,383.383 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-08-31 14:50:07,015.015 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 14:50:07,018.018 INFO    ] Checking for system updates...
[2026-08-31 14:50:07,055.055 INFO    ] 200
[2026-08-31 14:50:07,058.058 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:50:07,119.119 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:50:07,122.122 INFO    ] No update needed
[2026-08-31 14:50:07,124.124 INFO    ] Checking for camera pi updates...
[2026-08-31 14:50:07,163.163 INFO    ] 200
[2026-08-31 14:50:07,165.165 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:50:07,206.206 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:50:07,290.290 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:50:07,293.293 INFO    ] No camera update needed
[2026-08-31 14:50:07,295.295 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:50:07,297.297 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:50:07,303.303 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:50:07,308.308 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:50:09,350.350 INFO    ] ================================================
[2026-08-31 14:50:09,365.365 INFO    ] Launching Daemon at Mon Aug 31 14:50:09 IST 2026
[2026-08-31 14:50:09,376.376 INFO    ] ================================================
[2026-08-31 14:50:10,047.047 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:50:10
[2026-08-31 14:50:10,740.740 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:50:11,052.052 INFO    ] Initializing speech engine...
[2026-08-31 14:50:11,063.063 INFO    ] 2026-08-31 14:50:11
[2026-08-31 14:50:11,367.367 INFO    ] 2026-08-31 14:50:11
[2026-08-31 14:50:11,446.446 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:50:11,659.659 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:50:11,668.668 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:50:11,839.839 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:50:11,873.873 INFO    ] time= 31/08/2026 14:50:11
[2026-08-31 14:50:11,879.879 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:50:11,896.896 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:50:12,022.022 INFO    ] No existing commands found in stream
[2026-08-31 14:50:17,052.052 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:50:17,055.055 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-08-31 14:50:17,782.782 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 14:50:17,785.785 INFO    ] Checking for system updates...
[2026-08-31 14:50:17,825.825 INFO    ] 200
[2026-08-31 14:50:17,828.828 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:50:17,888.888 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:50:17,891.891 INFO    ] No update needed
[2026-08-31 14:50:17,893.893 INFO    ] Checking for camera pi updates...
[2026-08-31 14:50:17,931.931 INFO    ] 200
[2026-08-31 14:50:17,933.933 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:50:17,979.979 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:50:18,059.059 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:50:18,061.061 INFO    ] No camera update needed
[2026-08-31 14:50:18,064.064 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:50:18,066.066 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:50:18,072.072 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:50:18,077.077 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:50:20,118.118 INFO    ] ================================================
[2026-08-31 14:50:20,133.133 INFO    ] Launching Daemon at Mon Aug 31 14:50:20 IST 2026
[2026-08-31 14:50:20,144.144 INFO    ] ================================================
[2026-08-31 14:50:20,710.710 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:50:20
[2026-08-31 14:50:21,293.293 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:50:21,561.561 INFO    ] Initializing speech engine...
[2026-08-31 14:50:21,571.571 INFO    ] 2026-08-31 14:50:21
[2026-08-31 14:50:21,829.829 INFO    ] 2026-08-31 14:50:21
[2026-08-31 14:50:21,885.885 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:50:22,136.136 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:50:22,143.143 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:50:22,375.375 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:50:22,383.383 INFO    ] time= 31/08/2026 14:50:22
[2026-08-31 14:50:22,406.406 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:50:22,432.432 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:50:22,532.532 INFO    ] No existing commands found in stream
[2026-08-31 14:50:27,549.549 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:50:27,552.552 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-08-31 14:50:28,657.657 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 14:50:28,661.661 INFO    ] Checking for system updates...
[2026-08-31 14:50:28,697.697 INFO    ] 200
[2026-08-31 14:50:28,700.700 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:50:28,762.762 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:50:28,766.766 INFO    ] No update needed
[2026-08-31 14:50:28,769.769 INFO    ] Checking for camera pi updates...
[2026-08-31 14:50:28,803.803 INFO    ] 200
[2026-08-31 14:50:28,806.806 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:50:28,848.848 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:50:28,931.931 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:50:28,934.934 INFO    ] No camera update needed
[2026-08-31 14:50:28,937.937 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:50:28,940.940 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:50:28,946.946 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:50:28,952.952 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:50:30,994.994 INFO    ] ================================================
[2026-08-31 14:50:31,009.009 INFO    ] Launching Daemon at Mon Aug 31 14:50:31 IST 2026
[2026-08-31 14:50:31,019.019 INFO    ] ================================================
[2026-08-31 14:50:31,706.706 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:50:31
[2026-08-31 14:50:32,331.331 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:50:32,613.613 INFO    ] Initializing speech engine...
[2026-08-31 14:50:32,638.638 INFO    ] 2026-08-31 14:50:32
[2026-08-31 14:50:32,917.917 INFO    ] 2026-08-31 14:50:32
[2026-08-31 14:50:32,955.955 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:50:33,153.153 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:50:33,160.160 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:50:33,338.338 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:50:33,342.342 INFO    ] time= 31/08/2026 14:50:33
[2026-08-31 14:50:33,349.349 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:50:33,382.382 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:50:33,533.533 INFO    ] No existing commands found in stream
[2026-08-31 14:50:38,568.568 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:50:38,571.571 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-08-31 14:50:42,566.566 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 14:50:42,569.569 INFO    ] Checking for system updates...
[2026-08-31 14:50:42,608.608 INFO    ] 200
[2026-08-31 14:50:42,611.611 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:50:42,670.670 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:50:42,672.672 INFO    ] No update needed
[2026-08-31 14:50:42,675.675 INFO    ] Checking for camera pi updates...
[2026-08-31 14:50:42,712.712 INFO    ] 200
[2026-08-31 14:50:42,714.714 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:50:42,755.755 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:50:42,828.828 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:50:42,831.831 INFO    ] No camera update needed
[2026-08-31 14:50:42,833.833 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:50:42,836.836 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:50:42,842.842 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:50:42,848.848 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:50:44,888.888 INFO    ] ================================================
[2026-08-31 14:50:44,903.903 INFO    ] Launching Daemon at Mon Aug 31 14:50:44 IST 2026
[2026-08-31 14:50:44,914.914 INFO    ] ================================================
[2026-08-31 14:50:45,481.481 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:50:45
[2026-08-31 14:50:46,064.064 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:50:46,332.332 INFO    ] Initializing speech engine...
[2026-08-31 14:50:46,342.342 INFO    ] 2026-08-31 14:50:46
[2026-08-31 14:50:46,594.594 INFO    ] 2026-08-31 14:50:46
[2026-08-31 14:50:46,653.653 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:50:46,899.899 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:50:46,907.907 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:50:47,094.094 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:50:47,145.145 INFO    ] time= 31/08/2026 14:50:47
[2026-08-31 14:50:47,163.163 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:50:47,171.171 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:50:47,325.325 INFO    ] No existing commands found in stream
[2026-08-31 14:50:52,356.356 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:50:52,360.360 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-08-31 14:50:55,619.619 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 14:50:55,626.626 INFO    ] Checking for system updates...
[2026-08-31 14:50:55,668.668 INFO    ] 200
[2026-08-31 14:50:55,672.672 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:50:55,733.733 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:50:55,736.736 INFO    ] No update needed
[2026-08-31 14:50:55,739.739 INFO    ] Checking for camera pi updates...
[2026-08-31 14:50:55,779.779 INFO    ] 200
[2026-08-31 14:50:55,782.782 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:50:55,833.833 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:50:55,928.928 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:50:55,930.930 INFO    ] No camera update needed
[2026-08-31 14:50:55,933.933 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:50:55,935.935 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:50:55,941.941 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:50:55,946.946 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:50:57,986.986 INFO    ] ================================================
[2026-08-31 14:50:58,001.001 INFO    ] Launching Daemon at Mon Aug 31 14:50:57 IST 2026
[2026-08-31 14:50:58,012.012 INFO    ] ================================================
[2026-08-31 14:50:58,588.588 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:50:58
[2026-08-31 14:50:59,171.171 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:50:59,443.443 INFO    ] Initializing speech engine...
[2026-08-31 14:50:59,452.452 INFO    ] 2026-08-31 14:50:59
[2026-08-31 14:50:59,704.704 INFO    ] 2026-08-31 14:50:59
[2026-08-31 14:50:59,738.738 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:50:59,937.937 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:50:59,965.965 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:51:00,140.140 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:51:00,177.177 INFO    ] time= 31/08/2026 14:51:00
[2026-08-31 14:51:00,242.242 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:51:00,277.277 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:51:00,402.402 INFO    ] No existing commands found in stream
[2026-08-31 14:51:05,435.435 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:51:05,438.438 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-08-31 14:51:07,137.137 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 14:51:07,140.140 INFO    ] Checking for system updates...
[2026-08-31 14:51:07,176.176 INFO    ] 200
[2026-08-31 14:51:07,179.179 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:51:07,240.240 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:51:07,243.243 INFO    ] No update needed
[2026-08-31 14:51:07,246.246 INFO    ] Checking for camera pi updates...
[2026-08-31 14:51:07,280.280 INFO    ] 200
[2026-08-31 14:51:07,283.283 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:51:07,330.330 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:51:07,415.415 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:51:07,418.418 INFO    ] No camera update needed
[2026-08-31 14:51:07,421.421 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:51:07,424.424 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:51:07,430.430 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:51:07,436.436 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:51:09,478.478 INFO    ] ================================================
[2026-08-31 14:51:09,494.494 INFO    ] Launching Daemon at Mon Aug 31 14:51:09 IST 2026
[2026-08-31 14:51:09,505.505 INFO    ] ================================================
[2026-08-31 14:51:10,072.072 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:51:10
[2026-08-31 14:51:10,655.655 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:51:10,916.916 INFO    ] Initializing speech engine...
[2026-08-31 14:51:10,930.930 INFO    ] 2026-08-31 14:51:10
[2026-08-31 14:51:11,214.214 INFO    ] 2026-08-31 14:51:11
[2026-08-31 14:51:11,251.251 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:51:11,452.452 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:51:11,467.467 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:51:11,629.629 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:51:11,638.638 INFO    ] time= 31/08/2026 14:51:11
[2026-08-31 14:51:11,643.643 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:51:11,649.649 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:51:11,726.726 INFO    ] No existing commands found in stream
[2026-08-31 14:51:16,741.741 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:51:16,744.744 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-08-31 14:51:20,008.008 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 14:51:20,011.011 INFO    ] Checking for system updates...
[2026-08-31 14:51:20,047.047 INFO    ] 200
[2026-08-31 14:51:20,049.049 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:51:20,110.110 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:51:20,113.113 INFO    ] No update needed
[2026-08-31 14:51:20,115.115 INFO    ] Checking for camera pi updates...
[2026-08-31 14:51:20,150.150 INFO    ] 200
[2026-08-31 14:51:20,152.152 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:51:20,194.194 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:51:20,373.373 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:51:20,376.376 INFO    ] No camera update needed
[2026-08-31 14:51:20,379.379 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:51:20,382.382 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:51:20,388.388 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:51:20,394.394 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:51:22,436.436 INFO    ] ================================================
[2026-08-31 14:51:22,451.451 INFO    ] Launching Daemon at Mon Aug 31 14:51:22 IST 2026
[2026-08-31 14:51:22,462.462 INFO    ] ================================================
[2026-08-31 14:51:23,045.045 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:51:23
[2026-08-31 14:51:23,642.642 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:51:23,920.920 INFO    ] Initializing speech engine...
[2026-08-31 14:51:23,928.928 INFO    ] 2026-08-31 14:51:23
[2026-08-31 14:51:24,186.186 INFO    ] 2026-08-31 14:51:24
[2026-08-31 14:51:24,240.240 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:51:24,492.492 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:51:24,497.497 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:51:24,724.724 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:51:24,731.731 INFO    ] time= 31/08/2026 14:51:24
[2026-08-31 14:51:24,748.748 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:51:24,771.771 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:51:24,894.894 INFO    ] No existing commands found in stream
[2026-08-31 14:51:29,919.919 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:51:29,921.921 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-08-31 14:51:31,769.769 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 14:51:31,772.772 INFO    ] Checking for system updates...
[2026-08-31 14:51:31,814.814 INFO    ] 200
[2026-08-31 14:51:31,817.817 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:51:31,873.873 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:51:31,876.876 INFO    ] No update needed
[2026-08-31 14:51:31,879.879 INFO    ] Checking for camera pi updates...
[2026-08-31 14:51:31,915.915 INFO    ] 200
[2026-08-31 14:51:31,918.918 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:51:31,966.966 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:51:32,065.065 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:51:32,068.068 INFO    ] No camera update needed
[2026-08-31 14:51:32,071.071 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:51:32,074.074 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:51:32,081.081 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:51:32,088.088 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:51:34,131.131 INFO    ] ================================================
[2026-08-31 14:51:34,147.147 INFO    ] Launching Daemon at Mon Aug 31 14:51:34 IST 2026
[2026-08-31 14:51:34,157.157 INFO    ] ================================================
[2026-08-31 14:51:34,744.744 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:51:34
[2026-08-31 14:51:35,350.350 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:51:35,614.614 INFO    ] Initializing speech engine...
[2026-08-31 14:51:35,620.620 INFO    ] 2026-08-31 14:51:35
[2026-08-31 14:51:35,921.921 INFO    ] 2026-08-31 14:51:35
[2026-08-31 14:51:35,960.960 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:51:36,159.159 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:51:36,175.175 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:51:36,341.341 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:51:36,349.349 INFO    ] time= 31/08/2026 14:51:36
[2026-08-31 14:51:36,357.357 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:51:36,370.370 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:51:36,506.506 INFO    ] No existing commands found in stream
[2026-08-31 14:51:41,532.532 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:51:41,534.534 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-08-31 14:51:44,751.751 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 14:51:44,754.754 INFO    ] Checking for system updates...
[2026-08-31 14:51:44,791.791 INFO    ] 200
[2026-08-31 14:51:44,793.793 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:51:44,847.847 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:51:44,850.850 INFO    ] No update needed
[2026-08-31 14:51:44,853.853 INFO    ] Checking for camera pi updates...
[2026-08-31 14:51:44,889.889 INFO    ] 200
[2026-08-31 14:51:44,892.892 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:51:44,938.938 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:51:45,031.031 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:51:45,033.033 INFO    ] No camera update needed
[2026-08-31 14:51:45,036.036 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:51:45,038.038 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:51:45,044.044 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:51:45,049.049 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:51:47,088.088 INFO    ] ================================================
[2026-08-31 14:51:47,104.104 INFO    ] Launching Daemon at Mon Aug 31 14:51:47 IST 2026
[2026-08-31 14:51:47,115.115 INFO    ] ================================================
[2026-08-31 14:51:47,775.775 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:51:47
[2026-08-31 14:51:48,451.451 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:51:48,757.757 INFO    ] Initializing speech engine...
[2026-08-31 14:51:48,771.771 INFO    ] 2026-08-31 14:51:48
[2026-08-31 14:51:49,087.087 INFO    ] 2026-08-31 14:51:49
[2026-08-31 14:51:49,170.170 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:51:49,383.383 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:51:49,389.389 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:51:49,604.604 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:51:49,632.632 INFO    ] time= 31/08/2026 14:51:49
[2026-08-31 14:51:49,642.642 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:51:49,664.664 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:51:49,824.824 INFO    ] No existing commands found in stream
[2026-08-31 14:51:54,850.850 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:51:54,853.853 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-08-31 14:51:56,036.036 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 14:51:56,039.039 INFO    ] Checking for system updates...
[2026-08-31 14:51:56,080.080 INFO    ] 200
[2026-08-31 14:51:56,083.083 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:51:56,137.137 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:51:56,139.139 INFO    ] No update needed
[2026-08-31 14:51:56,142.142 INFO    ] Checking for camera pi updates...
[2026-08-31 14:51:56,181.181 INFO    ] 200
[2026-08-31 14:51:56,184.184 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:51:56,224.224 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:51:56,306.306 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:51:56,308.308 INFO    ] No camera update needed
[2026-08-31 14:51:56,311.311 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:51:56,314.314 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:51:56,319.319 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:51:56,324.324 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:51:58,364.364 INFO    ] ================================================
[2026-08-31 14:51:58,379.379 INFO    ] Launching Daemon at Mon Aug 31 14:51:58 IST 2026
[2026-08-31 14:51:58,390.390 INFO    ] ================================================
[2026-08-31 14:51:59,051.051 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:51:59
[2026-08-31 14:51:59,732.732 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:52:00,043.043 INFO    ] Initializing speech engine...
[2026-08-31 14:52:00,055.055 INFO    ] 2026-08-31 14:52:00
[2026-08-31 14:52:00,341.341 INFO    ] 2026-08-31 14:52:00
[2026-08-31 14:52:00,381.381 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:52:00,794.794 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:52:00,844.844 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:52:01,107.107 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:52:01,154.154 INFO    ] time= 31/08/2026 14:52:01
[2026-08-31 14:52:01,214.214 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:52:01,269.269 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:52:01,440.440 INFO    ] No existing commands found in stream
[2026-08-31 14:52:06,452.452 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:52:06,455.455 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-08-31 14:52:08,550.550 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 14:52:08,553.553 INFO    ] Checking for system updates...
[2026-08-31 14:52:08,589.589 INFO    ] 200
[2026-08-31 14:52:08,592.592 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:52:08,645.645 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:52:08,648.648 INFO    ] No update needed
[2026-08-31 14:52:08,650.650 INFO    ] Checking for camera pi updates...
[2026-08-31 14:52:08,684.684 INFO    ] 200
[2026-08-31 14:52:08,686.686 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:52:08,727.727 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:52:08,797.797 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:52:08,799.799 INFO    ] No camera update needed
[2026-08-31 14:52:08,802.802 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:52:08,804.804 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:52:08,809.809 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:52:08,814.814 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:52:10,854.854 INFO    ] ================================================
[2026-08-31 14:52:10,869.869 INFO    ] Launching Daemon at Mon Aug 31 14:52:10 IST 2026
[2026-08-31 14:52:10,880.880 INFO    ] ================================================
[2026-08-31 14:52:11,468.468 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:52:11
[2026-08-31 14:52:12,075.075 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:52:12,338.338 INFO    ] Initializing speech engine...
[2026-08-31 14:52:12,344.344 INFO    ] 2026-08-31 14:52:12
[2026-08-31 14:52:12,653.653 INFO    ] 2026-08-31 14:52:12
[2026-08-31 14:52:12,679.679 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:52:12,925.925 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:52:12,960.960 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:52:13,090.090 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:52:13,148.148 INFO    ] time= 31/08/2026 14:52:13
[2026-08-31 14:52:13,165.165 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:52:13,208.208 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:52:13,340.340 INFO    ] No existing commands found in stream
[2026-08-31 14:52:18,353.353 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:52:18,356.356 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-08-31 14:52:19,303.303 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 14:52:19,306.306 INFO    ] Checking for system updates...
[2026-08-31 14:52:19,347.347 INFO    ] 200
[2026-08-31 14:52:19,349.349 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:52:19,409.409 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:52:19,412.412 INFO    ] No update needed
[2026-08-31 14:52:19,414.414 INFO    ] Checking for camera pi updates...
[2026-08-31 14:52:19,452.452 INFO    ] 200
[2026-08-31 14:52:19,454.454 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:52:19,495.495 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:52:19,569.569 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:52:19,572.572 INFO    ] No camera update needed
[2026-08-31 14:52:19,574.574 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:52:19,576.576 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:52:19,582.582 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:52:19,587.587 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:52:21,628.628 INFO    ] ================================================
[2026-08-31 14:52:21,644.644 INFO    ] Launching Daemon at Mon Aug 31 14:52:21 IST 2026
[2026-08-31 14:52:21,654.654 INFO    ] ================================================
[2026-08-31 14:52:22,230.230 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:52:22
[2026-08-31 14:52:22,919.919 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:52:23,233.233 INFO    ] Initializing speech engine...
[2026-08-31 14:52:23,245.245 INFO    ] 2026-08-31 14:52:23
[2026-08-31 14:52:23,537.537 INFO    ] 2026-08-31 14:52:23
[2026-08-31 14:52:23,650.650 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:52:23,866.866 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:52:23,875.875 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:52:24,079.079 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:52:24,096.096 INFO    ] time= 31/08/2026 14:52:24
[2026-08-31 14:52:24,106.106 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:52:24,136.136 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:52:24,244.244 INFO    ] No existing commands found in stream
[2026-08-31 14:52:29,264.264 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:52:29,268.268 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-08-31 14:52:32,108.108 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 14:52:32,111.111 INFO    ] Checking for system updates...
[2026-08-31 14:52:32,163.163 INFO    ] 200
[2026-08-31 14:52:32,167.167 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:52:32,244.244 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:52:32,248.248 INFO    ] No update needed
[2026-08-31 14:52:32,251.251 INFO    ] Checking for camera pi updates...
[2026-08-31 14:52:32,289.289 INFO    ] 200
[2026-08-31 14:52:32,291.291 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:52:32,343.343 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:52:32,455.455 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:52:32,458.458 INFO    ] No camera update needed
[2026-08-31 14:52:32,461.461 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:52:32,464.464 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:52:32,470.470 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:52:32,476.476 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:52:34,518.518 INFO    ] ================================================
[2026-08-31 14:52:34,534.534 INFO    ] Launching Daemon at Mon Aug 31 14:52:34 IST 2026
[2026-08-31 14:52:34,544.544 INFO    ] ================================================
[2026-08-31 14:52:35,133.133 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:52:35
[2026-08-31 14:52:35,721.721 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:52:35,992.992 INFO    ] Initializing speech engine...
[2026-08-31 14:52:36,001.001 INFO    ] 2026-08-31 14:52:35
[2026-08-31 14:52:36,262.262 INFO    ] 2026-08-31 14:52:36
[2026-08-31 14:52:36,318.318 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:52:36,597.597 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:52:36,605.605 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:52:36,800.800 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:52:36,806.806 INFO    ] time= 31/08/2026 14:52:36
[2026-08-31 14:52:36,824.824 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:52:36,852.852 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:52:36,959.959 INFO    ] No existing commands found in stream
[2026-08-31 14:52:41,988.988 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:52:41,991.991 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-08-31 14:52:45,248.248 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 14:52:45,250.250 INFO    ] Checking for system updates...
[2026-08-31 14:52:45,286.286 INFO    ] 200
[2026-08-31 14:52:45,289.289 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:52:45,342.342 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:52:45,344.344 INFO    ] No update needed
[2026-08-31 14:52:45,347.347 INFO    ] Checking for camera pi updates...
[2026-08-31 14:52:45,381.381 INFO    ] 200
[2026-08-31 14:52:45,383.383 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:52:45,424.424 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:52:45,506.506 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:52:45,508.508 INFO    ] No camera update needed
[2026-08-31 14:52:45,511.511 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:52:45,513.513 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:52:45,519.519 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:52:45,524.524 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:52:47,563.563 INFO    ] ================================================
[2026-08-31 14:52:47,578.578 INFO    ] Launching Daemon at Mon Aug 31 14:52:47 IST 2026
[2026-08-31 14:52:47,589.589 INFO    ] ================================================
[2026-08-31 14:52:48,177.177 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:52:48
[2026-08-31 14:52:48,775.775 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:52:49,048.048 INFO    ] Initializing speech engine...
[2026-08-31 14:52:49,058.058 INFO    ] 2026-08-31 14:52:49
[2026-08-31 14:52:49,306.306 INFO    ] 2026-08-31 14:52:49
[2026-08-31 14:52:49,371.371 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:52:49,663.663 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:52:49,711.711 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:52:49,901.901 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:52:49,910.910 INFO    ] time= 31/08/2026 14:52:49
[2026-08-31 14:52:49,917.917 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:52:49,962.962 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:52:50,104.104 INFO    ] No existing commands found in stream
[2026-08-31 14:52:55,124.124 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:52:55,126.126 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-08-31 14:52:57,355.355 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 14:52:57,357.357 INFO    ] Checking for system updates...
[2026-08-31 14:52:57,405.405 INFO    ] 200
[2026-08-31 14:52:57,408.408 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:52:57,471.471 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:52:57,474.474 INFO    ] No update needed
[2026-08-31 14:52:57,476.476 INFO    ] Checking for camera pi updates...
[2026-08-31 14:52:57,525.525 INFO    ] 200
[2026-08-31 14:52:57,528.528 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:52:57,576.576 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:52:57,658.658 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:52:57,661.661 INFO    ] No camera update needed
[2026-08-31 14:52:57,663.663 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:52:57,665.665 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:52:57,671.671 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:52:57,679.679 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:52:59,718.718 INFO    ] ================================================
[2026-08-31 14:52:59,734.734 INFO    ] Launching Daemon at Mon Aug 31 14:52:59 IST 2026
[2026-08-31 14:52:59,746.746 INFO    ] ================================================
[2026-08-31 14:53:00,327.327 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:53:00
[2026-08-31 14:53:00,926.926 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:53:01,192.192 INFO    ] Initializing speech engine...
[2026-08-31 14:53:01,209.209 INFO    ] 2026-08-31 14:53:01
[2026-08-31 14:53:01,502.502 INFO    ] 2026-08-31 14:53:01
[2026-08-31 14:53:01,541.541 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:53:01,786.786 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:53:01,818.818 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:53:02,008.008 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:53:02,011.011 INFO    ] time= 31/08/2026 14:53:02
[2026-08-31 14:53:02,014.014 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:53:02,018.018 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:53:02,095.095 INFO    ] No existing commands found in stream
[2026-08-31 14:53:07,105.105 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:53:07,107.107 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-08-31 14:53:09,010.010 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 14:53:09,012.012 INFO    ] Checking for system updates...
[2026-08-31 14:53:09,048.048 INFO    ] 200
[2026-08-31 14:53:09,050.050 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:53:09,101.101 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:53:09,104.104 INFO    ] No update needed
[2026-08-31 14:53:09,106.106 INFO    ] Checking for camera pi updates...
[2026-08-31 14:53:09,140.140 INFO    ] 200
[2026-08-31 14:53:09,143.143 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:53:09,184.184 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:53:09,279.279 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:53:09,281.281 INFO    ] No camera update needed
[2026-08-31 14:53:09,284.284 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:53:09,286.286 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:53:09,291.291 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:53:09,296.296 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:53:11,336.336 INFO    ] ================================================
[2026-08-31 14:53:11,351.351 INFO    ] Launching Daemon at Mon Aug 31 14:53:11 IST 2026
[2026-08-31 14:53:11,362.362 INFO    ] ================================================
[2026-08-31 14:53:11,984.984 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:53:11
[2026-08-31 14:53:12,642.642 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:53:12,929.929 INFO    ] Initializing speech engine...
[2026-08-31 14:53:12,936.936 INFO    ] 2026-08-31 14:53:12
[2026-08-31 14:53:13,193.193 INFO    ] 2026-08-31 14:53:13
[2026-08-31 14:53:13,228.228 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:53:13,543.543 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:53:13,548.548 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:53:13,730.730 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:53:13,750.750 INFO    ] time= 31/08/2026 14:53:13
[2026-08-31 14:53:13,756.756 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:53:13,774.774 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:53:13,901.901 INFO    ] No existing commands found in stream
[2026-08-31 14:53:18,918.918 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:53:18,921.921 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-08-31 14:53:21,849.849 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 14:53:21,851.851 INFO    ] Checking for system updates...
[2026-08-31 14:53:21,890.890 INFO    ] 200
[2026-08-31 14:53:21,893.893 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:53:21,951.951 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:53:21,953.953 INFO    ] No update needed
[2026-08-31 14:53:21,955.955 INFO    ] Checking for camera pi updates...
[2026-08-31 14:53:21,992.992 INFO    ] 200
[2026-08-31 14:53:21,994.994 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:53:22,035.035 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:53:22,125.125 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:53:22,128.128 INFO    ] No camera update needed
[2026-08-31 14:53:22,131.131 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:53:22,134.134 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:53:22,140.140 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:53:22,145.145 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:53:24,185.185 INFO    ] ================================================
[2026-08-31 14:53:24,200.200 INFO    ] Launching Daemon at Mon Aug 31 14:53:24 IST 2026
[2026-08-31 14:53:24,211.211 INFO    ] ================================================
[2026-08-31 14:53:24,791.791 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:53:24
[2026-08-31 14:53:25,388.388 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:53:25,667.667 INFO    ] Initializing speech engine...
[2026-08-31 14:53:25,673.673 INFO    ] 2026-08-31 14:53:25
[2026-08-31 14:53:25,932.932 INFO    ] 2026-08-31 14:53:25
[2026-08-31 14:53:25,986.986 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:53:26,212.212 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:53:26,217.217 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:53:26,349.349 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:53:26,391.391 INFO    ] time= 31/08/2026 14:53:26
[2026-08-31 14:53:26,445.445 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:53:26,483.483 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:53:26,625.625 INFO    ] No existing commands found in stream
[2026-08-31 14:53:31,642.642 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:53:31,644.644 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-08-31 14:53:33,987.987 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 14:53:33,989.989 INFO    ] Checking for system updates...
[2026-08-31 14:53:34,028.028 INFO    ] 200
[2026-08-31 14:53:34,031.031 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:53:34,083.083 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:53:34,085.085 INFO    ] No update needed
[2026-08-31 14:53:34,088.088 INFO    ] Checking for camera pi updates...
[2026-08-31 14:53:34,125.125 INFO    ] 200
[2026-08-31 14:53:34,127.127 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:53:34,171.171 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:53:34,252.252 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:53:34,254.254 INFO    ] No camera update needed
[2026-08-31 14:53:34,257.257 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:53:34,259.259 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:53:34,265.265 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:53:34,270.270 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:53:36,311.311 INFO    ] ================================================
[2026-08-31 14:53:36,326.326 INFO    ] Launching Daemon at Mon Aug 31 14:53:36 IST 2026
[2026-08-31 14:53:36,337.337 INFO    ] ================================================
[2026-08-31 14:53:36,970.970 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:53:36
[2026-08-31 14:53:37,622.622 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:53:37,908.908 INFO    ] Initializing speech engine...
[2026-08-31 14:53:37,922.922 INFO    ] 2026-08-31 14:53:37
[2026-08-31 14:53:38,184.184 INFO    ] 2026-08-31 14:53:38
[2026-08-31 14:53:38,219.219 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:53:38,418.418 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:53:38,440.440 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:53:38,560.560 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:53:38,606.606 INFO    ] time= 31/08/2026 14:53:38
[2026-08-31 14:53:38,628.628 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:53:38,670.670 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:53:38,764.764 INFO    ] No existing commands found in stream
[2026-08-31 14:53:43,785.785 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:53:43,788.788 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-08-31 14:53:45,940.940 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 14:53:45,943.943 INFO    ] Checking for system updates...
[2026-08-31 14:53:45,978.978 INFO    ] 200
[2026-08-31 14:53:45,980.980 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:53:46,033.033 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:53:46,036.036 INFO    ] No update needed
[2026-08-31 14:53:46,038.038 INFO    ] Checking for camera pi updates...
[2026-08-31 14:53:46,075.075 INFO    ] 200
[2026-08-31 14:53:46,078.078 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:53:46,122.122 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:53:46,225.225 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:53:46,228.228 INFO    ] No camera update needed
[2026-08-31 14:53:46,230.230 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:53:46,233.233 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:53:46,238.238 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:53:46,243.243 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:53:48,284.284 INFO    ] ================================================
[2026-08-31 14:53:48,299.299 INFO    ] Launching Daemon at Mon Aug 31 14:53:48 IST 2026
[2026-08-31 14:53:48,310.310 INFO    ] ================================================
[2026-08-31 14:53:48,954.954 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:53:48
[2026-08-31 14:53:49,624.624 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:53:49,938.938 INFO    ] Initializing speech engine...
[2026-08-31 14:53:49,944.944 INFO    ] 2026-08-31 14:53:49
[2026-08-31 14:53:50,233.233 INFO    ] 2026-08-31 14:53:50
[2026-08-31 14:53:50,344.344 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:53:50,630.630 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:53:50,690.690 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:53:50,932.932 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:53:50,993.993 INFO    ] time= 31/08/2026 14:53:50
[2026-08-31 14:53:51,023.023 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:53:51,058.058 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:53:51,181.181 INFO    ] No existing commands found in stream
[2026-08-31 14:53:56,199.199 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:53:56,203.203 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-08-31 14:53:58,626.626 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 14:53:58,629.629 INFO    ] Checking for system updates...
[2026-08-31 14:53:58,670.670 INFO    ] 200
[2026-08-31 14:53:58,673.673 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:53:58,732.732 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:53:58,735.735 INFO    ] No update needed
[2026-08-31 14:53:58,738.738 INFO    ] Checking for camera pi updates...
[2026-08-31 14:53:58,773.773 INFO    ] 200
[2026-08-31 14:53:58,775.775 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:53:58,821.821 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:53:58,904.904 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:53:58,906.906 INFO    ] No camera update needed
[2026-08-31 14:53:58,909.909 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:53:58,912.912 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:53:58,918.918 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:53:58,924.924 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:54:00,966.966 INFO    ] ================================================
[2026-08-31 14:54:00,981.981 INFO    ] Launching Daemon at Mon Aug 31 14:54:00 IST 2026
[2026-08-31 14:54:00,992.992 INFO    ] ================================================
[2026-08-31 14:54:01,573.573 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:54:01
[2026-08-31 14:54:02,330.330 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:54:02,635.635 INFO    ] Initializing speech engine...
[2026-08-31 14:54:02,641.641 INFO    ] 2026-08-31 14:54:02
[2026-08-31 14:54:02,936.936 INFO    ] 2026-08-31 14:54:02
[2026-08-31 14:54:02,975.975 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:54:03,237.237 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:54:03,267.267 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:54:03,376.376 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:54:03,383.383 INFO    ] time= 31/08/2026 14:54:03
[2026-08-31 14:54:03,389.389 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:54:03,435.435 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:54:03,590.590 INFO    ] No existing commands found in stream
[2026-08-31 14:54:08,619.619 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:54:08,622.622 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-08-31 14:54:10,249.249 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 14:54:10,252.252 INFO    ] Checking for system updates...
[2026-08-31 14:54:10,291.291 INFO    ] 200
[2026-08-31 14:54:10,294.294 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:54:10,346.346 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:54:10,349.349 INFO    ] No update needed
[2026-08-31 14:54:10,352.352 INFO    ] Checking for camera pi updates...
[2026-08-31 14:54:10,386.386 INFO    ] 200
[2026-08-31 14:54:10,388.388 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:54:10,430.430 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:54:10,519.519 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:54:10,522.522 INFO    ] No camera update needed
[2026-08-31 14:54:10,524.524 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:54:10,527.527 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:54:10,533.533 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:54:10,538.538 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:54:12,579.579 INFO    ] ================================================
[2026-08-31 14:54:12,593.593 INFO    ] Launching Daemon at Mon Aug 31 14:54:12 IST 2026
[2026-08-31 14:54:12,604.604 INFO    ] ================================================
[2026-08-31 14:54:13,201.201 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:54:13
[2026-08-31 14:54:13,854.854 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:54:14,148.148 INFO    ] Initializing speech engine...
[2026-08-31 14:54:14,157.157 INFO    ] 2026-08-31 14:54:14
[2026-08-31 14:54:14,431.431 INFO    ] 2026-08-31 14:54:14
[2026-08-31 14:54:14,485.485 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:54:14,775.775 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:54:14,785.785 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:54:14,980.980 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:54:15,002.002 INFO    ] time= 31/08/2026 14:54:14
[2026-08-31 14:54:15,030.030 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:54:15,040.040 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:54:15,175.175 INFO    ] No existing commands found in stream
[2026-08-31 14:54:20,206.206 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:54:20,210.210 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-08-31 14:54:20,778.778 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 14:54:20,781.781 INFO    ] Checking for system updates...
[2026-08-31 14:54:20,817.817 INFO    ] 200
[2026-08-31 14:54:20,820.820 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:54:20,880.880 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:54:20,882.882 INFO    ] No update needed
[2026-08-31 14:54:20,885.885 INFO    ] Checking for camera pi updates...
[2026-08-31 14:54:20,919.919 INFO    ] 200
[2026-08-31 14:54:20,922.922 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:54:20,961.961 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:54:21,050.050 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:54:21,052.052 INFO    ] No camera update needed
[2026-08-31 14:54:21,055.055 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:54:21,057.057 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:54:21,062.062 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:54:21,067.067 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:54:23,108.108 INFO    ] ================================================
[2026-08-31 14:54:23,125.125 INFO    ] Launching Daemon at Mon Aug 31 14:54:23 IST 2026
[2026-08-31 14:54:23,136.136 INFO    ] ================================================
[2026-08-31 14:54:23,700.700 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:54:23
[2026-08-31 14:54:24,310.310 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:54:24,600.600 INFO    ] Initializing speech engine...
[2026-08-31 14:54:24,606.606 INFO    ] 2026-08-31 14:54:24
[2026-08-31 14:54:24,877.877 INFO    ] 2026-08-31 14:54:24
[2026-08-31 14:54:24,934.934 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:54:25,216.216 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:54:25,222.222 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:54:25,417.417 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:54:25,424.424 INFO    ] time= 31/08/2026 14:54:25
[2026-08-31 14:54:25,440.440 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:54:25,449.449 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:54:25,576.576 INFO    ] No existing commands found in stream
[2026-08-31 14:54:30,600.600 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:54:30,603.603 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-08-31 14:54:31,461.461 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 14:54:31,464.464 INFO    ] Checking for system updates...
[2026-08-31 14:54:31,500.500 INFO    ] 200
[2026-08-31 14:54:31,502.502 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:54:31,560.560 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:54:31,562.562 INFO    ] No update needed
[2026-08-31 14:54:31,564.564 INFO    ] Checking for camera pi updates...
[2026-08-31 14:54:31,597.597 INFO    ] 200
[2026-08-31 14:54:31,600.600 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:54:31,643.643 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:54:31,722.722 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:54:31,725.725 INFO    ] No camera update needed
[2026-08-31 14:54:31,727.727 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:54:31,729.729 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:54:31,735.735 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:54:31,740.740 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:54:33,779.779 INFO    ] ================================================
[2026-08-31 14:54:33,794.794 INFO    ] Launching Daemon at Mon Aug 31 14:54:33 IST 2026
[2026-08-31 14:54:33,804.804 INFO    ] ================================================
[2026-08-31 14:54:34,431.431 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:54:34
[2026-08-31 14:54:35,080.080 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:54:35,374.374 INFO    ] Initializing speech engine...
[2026-08-31 14:54:35,382.382 INFO    ] 2026-08-31 14:54:35
[2026-08-31 14:54:35,695.695 INFO    ] 2026-08-31 14:54:35
[2026-08-31 14:54:35,781.781 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:54:36,076.076 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:54:36,151.151 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:54:36,335.335 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:54:36,376.376 INFO    ] time= 31/08/2026 14:54:36
[2026-08-31 14:54:36,436.436 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:54:36,462.462 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:54:36,606.606 INFO    ] No existing commands found in stream
[2026-08-31 14:54:41,639.639 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:54:41,642.642 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-08-31 14:54:43,693.693 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 14:54:43,696.696 INFO    ] Checking for system updates...
[2026-08-31 14:54:43,733.733 INFO    ] 200
[2026-08-31 14:54:43,736.736 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:54:43,796.796 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:54:43,799.799 INFO    ] No update needed
[2026-08-31 14:54:43,801.801 INFO    ] Checking for camera pi updates...
[2026-08-31 14:54:43,838.838 INFO    ] 200
[2026-08-31 14:54:43,840.840 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:54:43,880.880 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:54:43,971.971 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:54:43,973.973 INFO    ] No camera update needed
[2026-08-31 14:54:43,976.976 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:54:43,978.978 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:54:43,984.984 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:54:43,989.989 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:54:46,028.028 INFO    ] ================================================
[2026-08-31 14:54:46,043.043 INFO    ] Launching Daemon at Mon Aug 31 14:54:46 IST 2026
[2026-08-31 14:54:46,053.053 INFO    ] ================================================
[2026-08-31 14:54:46,633.633 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:54:46
[2026-08-31 14:54:47,229.229 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:54:47,505.505 INFO    ] Initializing speech engine...
[2026-08-31 14:54:47,512.512 INFO    ] 2026-08-31 14:54:47
[2026-08-31 14:54:47,771.771 INFO    ] 2026-08-31 14:54:47
[2026-08-31 14:54:47,824.824 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:54:48,050.050 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:54:48,055.055 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:54:48,207.207 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:54:48,252.252 INFO    ] time= 31/08/2026 14:54:48
[2026-08-31 14:54:48,313.313 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:54:48,320.320 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:54:48,460.460 INFO    ] No existing commands found in stream
[2026-08-31 14:54:53,475.475 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:54:53,478.478 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-08-31 14:54:55,248.248 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 14:54:55,251.251 INFO    ] Checking for system updates...
[2026-08-31 14:54:55,290.290 INFO    ] 200
[2026-08-31 14:54:55,293.293 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:54:55,351.351 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:54:55,353.353 INFO    ] No update needed
[2026-08-31 14:54:55,355.355 INFO    ] Checking for camera pi updates...
[2026-08-31 14:54:55,392.392 INFO    ] 200
[2026-08-31 14:54:55,395.395 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:54:55,435.435 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:54:55,517.517 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:54:55,520.520 INFO    ] No camera update needed
[2026-08-31 14:54:55,522.522 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:54:55,524.524 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:54:55,530.530 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:54:55,535.535 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:54:57,575.575 INFO    ] ================================================
[2026-08-31 14:54:57,590.590 INFO    ] Launching Daemon at Mon Aug 31 14:54:57 IST 2026
[2026-08-31 14:54:57,600.600 INFO    ] ================================================
[2026-08-31 14:54:58,171.171 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:54:58
[2026-08-31 14:54:58,758.758 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:54:59,038.038 INFO    ] Initializing speech engine...
[2026-08-31 14:54:59,044.044 INFO    ] 2026-08-31 14:54:59
[2026-08-31 14:54:59,321.321 INFO    ] 2026-08-31 14:54:59
[2026-08-31 14:54:59,375.375 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:54:59,609.609 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:54:59,614.614 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:54:59,837.837 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:54:59,877.877 INFO    ] time= 31/08/2026 14:54:59
[2026-08-31 14:54:59,883.883 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:54:59,905.905 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:55:00,032.032 INFO    ] No existing commands found in stream
[2026-08-31 14:55:05,048.048 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:55:05,051.051 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-08-31 14:55:06,955.955 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 14:55:06,958.958 INFO    ] Checking for system updates...
[2026-08-31 14:55:07,003.003 INFO    ] 200
[2026-08-31 14:55:07,006.006 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:55:07,073.073 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:55:07,075.075 INFO    ] No update needed
[2026-08-31 14:55:07,077.077 INFO    ] Checking for camera pi updates...
[2026-08-31 14:55:07,110.110 INFO    ] 200
[2026-08-31 14:55:07,113.113 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:55:07,157.157 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:55:07,238.238 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:55:07,240.240 INFO    ] No camera update needed
[2026-08-31 14:55:07,243.243 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:55:07,245.245 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:55:07,250.250 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:55:07,255.255 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:55:09,295.295 INFO    ] ================================================
[2026-08-31 14:55:09,310.310 INFO    ] Launching Daemon at Mon Aug 31 14:55:09 IST 2026
[2026-08-31 14:55:09,320.320 INFO    ] ================================================
[2026-08-31 14:55:09,889.889 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:55:09
[2026-08-31 14:55:10,541.541 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:55:10,840.840 INFO    ] Initializing speech engine...
[2026-08-31 14:55:10,853.853 INFO    ] 2026-08-31 14:55:10
[2026-08-31 14:55:11,116.116 INFO    ] 2026-08-31 14:55:11
[2026-08-31 14:55:11,176.176 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:55:11,405.405 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:55:11,415.415 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:55:11,655.655 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:55:11,682.682 INFO    ] time= 31/08/2026 14:55:11
[2026-08-31 14:55:11,700.700 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:55:11,730.730 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:55:11,841.841 INFO    ] No existing commands found in stream
[2026-08-31 14:55:16,869.869 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:55:16,873.873 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-08-31 14:55:18,254.254 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 14:55:18,257.257 INFO    ] Checking for system updates...
[2026-08-31 14:55:18,294.294 INFO    ] 200
[2026-08-31 14:55:18,297.297 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:55:18,370.370 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:55:18,372.372 INFO    ] No update needed
[2026-08-31 14:55:18,375.375 INFO    ] Checking for camera pi updates...
[2026-08-31 14:55:18,411.411 INFO    ] 200
[2026-08-31 14:55:18,414.414 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:55:18,457.457 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:55:18,529.529 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:55:18,531.531 INFO    ] No camera update needed
[2026-08-31 14:55:18,534.534 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:55:18,536.536 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:55:18,541.541 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:55:18,546.546 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:55:20,585.585 INFO    ] ================================================
[2026-08-31 14:55:20,601.601 INFO    ] Launching Daemon at Mon Aug 31 14:55:20 IST 2026
[2026-08-31 14:55:20,611.611 INFO    ] ================================================
[2026-08-31 14:55:21,181.181 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:55:21
[2026-08-31 14:55:21,773.773 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:55:22,047.047 INFO    ] Initializing speech engine...
[2026-08-31 14:55:22,057.057 INFO    ] 2026-08-31 14:55:22
[2026-08-31 14:55:22,311.311 INFO    ] 2026-08-31 14:55:22
[2026-08-31 14:55:22,370.370 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:55:22,616.616 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:55:22,622.622 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:55:22,822.822 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:55:22,859.859 INFO    ] time= 31/08/2026 14:55:22
[2026-08-31 14:55:22,876.876 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:55:22,885.885 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:55:23,014.014 INFO    ] No existing commands found in stream
[2026-08-31 14:55:28,032.032 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:55:28,035.035 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-08-31 14:55:33,057.057 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 14:55:33,060.060 INFO    ] Checking for system updates...
[2026-08-31 14:55:33,106.106 INFO    ] 200
[2026-08-31 14:55:33,109.109 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:55:33,173.173 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:55:33,177.177 INFO    ] No update needed
[2026-08-31 14:55:33,180.180 INFO    ] Checking for camera pi updates...
[2026-08-31 14:55:33,228.228 INFO    ] 200
[2026-08-31 14:55:33,230.230 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:55:33,270.270 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:55:33,373.373 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:55:33,375.375 INFO    ] No camera update needed
[2026-08-31 14:55:33,378.378 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:55:33,380.380 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:55:33,389.389 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:55:33,394.394 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:55:35,433.433 INFO    ] ================================================
[2026-08-31 14:55:35,449.449 INFO    ] Launching Daemon at Mon Aug 31 14:55:35 IST 2026
[2026-08-31 14:55:35,460.460 INFO    ] ================================================
[2026-08-31 14:55:36,030.030 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:55:36
[2026-08-31 14:55:36,617.617 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:55:36,871.871 INFO    ] Initializing speech engine...
[2026-08-31 14:55:36,879.879 INFO    ] 2026-08-31 14:55:36
[2026-08-31 14:55:37,174.174 INFO    ] 2026-08-31 14:55:37
[2026-08-31 14:55:37,211.211 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:55:37,498.498 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:55:37,509.509 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:55:37,662.662 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:55:37,722.722 INFO    ] time= 31/08/2026 14:55:37
[2026-08-31 14:55:37,782.782 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:55:37,809.809 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:55:37,962.962 INFO    ] No existing commands found in stream
[2026-08-31 14:55:42,983.983 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:55:42,985.985 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-08-31 14:55:43,648.648 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 14:55:43,651.651 INFO    ] Checking for system updates...
[2026-08-31 14:55:43,690.690 INFO    ] 200
[2026-08-31 14:55:43,692.692 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:55:43,744.744 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:55:43,747.747 INFO    ] No update needed
[2026-08-31 14:55:43,749.749 INFO    ] Checking for camera pi updates...
[2026-08-31 14:55:43,787.787 INFO    ] 200
[2026-08-31 14:55:43,790.790 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:55:43,836.836 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:55:44,020.020 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:55:44,023.023 INFO    ] No camera update needed
[2026-08-31 14:55:44,025.025 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:55:44,028.028 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:55:44,034.034 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:55:44,040.040 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:55:46,081.081 INFO    ] ================================================
[2026-08-31 14:55:46,096.096 INFO    ] Launching Daemon at Mon Aug 31 14:55:46 IST 2026
[2026-08-31 14:55:46,107.107 INFO    ] ================================================
[2026-08-31 14:55:46,759.759 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:55:46
[2026-08-31 14:55:47,397.397 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:55:47,664.664 INFO    ] Initializing speech engine...
[2026-08-31 14:55:47,671.671 INFO    ] 2026-08-31 14:55:47
[2026-08-31 14:55:47,926.926 INFO    ] 2026-08-31 14:55:47
[2026-08-31 14:55:47,983.983 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:55:48,205.205 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:55:48,214.214 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:55:48,419.419 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:55:48,472.472 INFO    ] time= 31/08/2026 14:55:48
[2026-08-31 14:55:48,496.496 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:55:48,522.522 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:55:48,659.659 INFO    ] No existing commands found in stream
[2026-08-31 14:55:53,689.689 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:55:53,692.692 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-08-31 14:55:54,729.729 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 14:55:54,732.732 INFO    ] Checking for system updates...
[2026-08-31 14:55:54,771.771 INFO    ] 200
[2026-08-31 14:55:54,774.774 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:55:54,825.825 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:55:54,828.828 INFO    ] No update needed
[2026-08-31 14:55:54,830.830 INFO    ] Checking for camera pi updates...
[2026-08-31 14:55:54,867.867 INFO    ] 200
[2026-08-31 14:55:54,870.870 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:55:54,914.914 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:55:54,997.997 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:55:54,999.999 INFO    ] No camera update needed
[2026-08-31 14:55:55,001.001 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:55:55,004.004 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:55:55,009.009 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:55:55,014.014 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:55:57,054.054 INFO    ] ================================================
[2026-08-31 14:55:57,070.070 INFO    ] Launching Daemon at Mon Aug 31 14:55:57 IST 2026
[2026-08-31 14:55:57,081.081 INFO    ] ================================================
[2026-08-31 14:55:57,647.647 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:55:57
[2026-08-31 14:55:58,229.229 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:55:58,477.477 INFO    ] Initializing speech engine...
[2026-08-31 14:55:58,500.500 INFO    ] 2026-08-31 14:55:58
[2026-08-31 14:55:58,752.752 INFO    ] 2026-08-31 14:55:58
[2026-08-31 14:55:58,788.788 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:55:58,968.968 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:55:58,987.987 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:55:59,180.180 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:55:59,222.222 INFO    ] time= 31/08/2026 14:55:59
[2026-08-31 14:55:59,271.271 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:55:59,314.314 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:55:59,399.399 INFO    ] No existing commands found in stream
[2026-08-31 14:56:04,436.436 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:56:04,439.439 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-08-31 14:56:05,416.416 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 14:56:05,419.419 INFO    ] Checking for system updates...
[2026-08-31 14:56:05,458.458 INFO    ] 200
[2026-08-31 14:56:05,461.461 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:56:05,518.518 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:56:05,520.520 INFO    ] No update needed
[2026-08-31 14:56:05,523.523 INFO    ] Checking for camera pi updates...
[2026-08-31 14:56:05,557.557 INFO    ] 200
[2026-08-31 14:56:05,559.559 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:56:05,601.601 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:56:05,686.686 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:56:05,689.689 INFO    ] No camera update needed
[2026-08-31 14:56:05,692.692 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:56:05,694.694 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:56:05,700.700 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:56:05,706.706 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:56:07,747.747 INFO    ] ================================================
[2026-08-31 14:56:07,763.763 INFO    ] Launching Daemon at Mon Aug 31 14:56:07 IST 2026
[2026-08-31 14:56:07,774.774 INFO    ] ================================================
[2026-08-31 14:56:08,339.339 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:56:08
[2026-08-31 14:56:08,934.934 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:56:09,210.210 INFO    ] Initializing speech engine...
[2026-08-31 14:56:09,219.219 INFO    ] 2026-08-31 14:56:09
[2026-08-31 14:56:09,478.478 INFO    ] 2026-08-31 14:56:09
[2026-08-31 14:56:09,528.528 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:56:09,751.751 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:56:09,760.760 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:56:09,989.989 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:56:10,017.017 INFO    ] time= 31/08/2026 14:56:09
[2026-08-31 14:56:10,023.023 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:56:10,044.044 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:56:10,173.173 INFO    ] No existing commands found in stream
[2026-08-31 14:56:15,195.195 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:56:15,198.198 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-08-31 14:56:17,269.269 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 14:56:17,272.272 INFO    ] Checking for system updates...
[2026-08-31 14:56:17,307.307 INFO    ] 200
[2026-08-31 14:56:17,310.310 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:56:17,362.362 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:56:17,364.364 INFO    ] No update needed
[2026-08-31 14:56:17,366.366 INFO    ] Checking for camera pi updates...
[2026-08-31 14:56:17,402.402 INFO    ] 200
[2026-08-31 14:56:17,404.404 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:56:17,448.448 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:56:17,543.543 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:56:17,546.546 INFO    ] No camera update needed
[2026-08-31 14:56:17,548.548 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:56:17,551.551 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:56:17,556.556 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:56:17,561.561 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:56:19,601.601 INFO    ] ================================================
[2026-08-31 14:56:19,616.616 INFO    ] Launching Daemon at Mon Aug 31 14:56:19 IST 2026
[2026-08-31 14:56:19,628.628 INFO    ] ================================================
[2026-08-31 14:56:20,206.206 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:56:20
[2026-08-31 14:56:20,803.803 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:56:21,078.078 INFO    ] Initializing speech engine...
[2026-08-31 14:56:21,086.086 INFO    ] 2026-08-31 14:56:21
[2026-08-31 14:56:21,356.356 INFO    ] 2026-08-31 14:56:21
[2026-08-31 14:56:21,400.400 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:56:21,648.648 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:56:21,667.667 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:56:21,866.866 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:56:21,885.885 INFO    ] time= 31/08/2026 14:56:21
[2026-08-31 14:56:21,903.903 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:56:21,910.910 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:56:22,015.015 INFO    ] No existing commands found in stream
[2026-08-31 14:56:27,040.040 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:56:27,043.043 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-08-31 14:56:29,355.355 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 14:56:29,358.358 INFO    ] Checking for system updates...
[2026-08-31 14:56:29,393.393 INFO    ] 200
[2026-08-31 14:56:29,396.396 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:56:29,452.452 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:56:29,455.455 INFO    ] No update needed
[2026-08-31 14:56:29,457.457 INFO    ] Checking for camera pi updates...
[2026-08-31 14:56:29,492.492 INFO    ] 200
[2026-08-31 14:56:29,495.495 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:56:29,538.538 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:56:29,620.620 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:56:29,623.623 INFO    ] No camera update needed
[2026-08-31 14:56:29,625.625 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:56:29,627.627 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:56:29,633.633 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:56:29,638.638 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:56:31,679.679 INFO    ] ================================================
[2026-08-31 14:56:31,695.695 INFO    ] Launching Daemon at Mon Aug 31 14:56:31 IST 2026
[2026-08-31 14:56:31,706.706 INFO    ] ================================================
[2026-08-31 14:56:32,303.303 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:56:32
[2026-08-31 14:56:32,903.903 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:56:33,171.171 INFO    ] Initializing speech engine...
[2026-08-31 14:56:33,182.182 INFO    ] 2026-08-31 14:56:33
[2026-08-31 14:56:33,439.439 INFO    ] 2026-08-31 14:56:33
[2026-08-31 14:56:33,473.473 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:56:33,724.724 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:56:33,733.733 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:56:33,866.866 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:56:33,904.904 INFO    ] time= 31/08/2026 14:56:33
[2026-08-31 14:56:33,978.978 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:56:34,003.003 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:56:34,153.153 INFO    ] No existing commands found in stream
[2026-08-31 14:56:39,166.166 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:56:39,169.169 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-08-31 14:56:40,614.614 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 14:56:40,616.616 INFO    ] Checking for system updates...
[2026-08-31 14:56:40,653.653 INFO    ] 200
[2026-08-31 14:56:40,655.655 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:56:40,713.713 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:56:40,716.716 INFO    ] No update needed
[2026-08-31 14:56:40,719.719 INFO    ] Checking for camera pi updates...
[2026-08-31 14:56:40,753.753 INFO    ] 200
[2026-08-31 14:56:40,755.755 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:56:40,796.796 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:56:40,885.885 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:56:40,888.888 INFO    ] No camera update needed
[2026-08-31 14:56:40,890.890 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:56:40,893.893 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:56:40,899.899 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:56:40,904.904 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:56:42,944.944 INFO    ] ================================================
[2026-08-31 14:56:42,960.960 INFO    ] Launching Daemon at Mon Aug 31 14:56:42 IST 2026
[2026-08-31 14:56:42,971.971 INFO    ] ================================================
[2026-08-31 14:56:43,534.534 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:56:43
[2026-08-31 14:56:44,116.116 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:56:44,363.363 INFO    ] Initializing speech engine...
[2026-08-31 14:56:44,382.382 INFO    ] 2026-08-31 14:56:44
[2026-08-31 14:56:44,641.641 INFO    ] 2026-08-31 14:56:44
[2026-08-31 14:56:44,676.676 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:56:44,851.851 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:56:44,863.863 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:56:45,076.076 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:56:45,118.118 INFO    ] time= 31/08/2026 14:56:45
[2026-08-31 14:56:45,182.182 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:56:45,212.212 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:56:45,347.347 INFO    ] No existing commands found in stream
[2026-08-31 14:56:50,372.372 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:56:50,375.375 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-08-31 14:56:54,729.729 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 14:56:54,731.731 INFO    ] Checking for system updates...
[2026-08-31 14:56:54,769.769 INFO    ] 200
[2026-08-31 14:56:54,772.772 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:56:54,824.824 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:56:54,826.826 INFO    ] No update needed
[2026-08-31 14:56:54,828.828 INFO    ] Checking for camera pi updates...
[2026-08-31 14:56:54,862.862 INFO    ] 200
[2026-08-31 14:56:54,864.864 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:56:54,907.907 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:56:54,988.988 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:56:54,991.991 INFO    ] No camera update needed
[2026-08-31 14:56:54,993.993 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:56:54,995.995 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:56:55,001.001 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:56:55,005.005 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:56:57,045.045 INFO    ] ================================================
[2026-08-31 14:56:57,061.061 INFO    ] Launching Daemon at Mon Aug 31 14:56:57 IST 2026
[2026-08-31 14:56:57,071.071 INFO    ] ================================================
[2026-08-31 14:56:57,636.636 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:56:57
[2026-08-31 14:56:58,280.280 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:56:58,577.577 INFO    ] Initializing speech engine...
[2026-08-31 14:56:58,585.585 INFO    ] 2026-08-31 14:56:58
[2026-08-31 14:56:58,870.870 INFO    ] 2026-08-31 14:56:58
[2026-08-31 14:56:58,917.917 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:56:59,210.210 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:56:59,217.217 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:56:59,415.415 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:56:59,433.433 INFO    ] time= 31/08/2026 14:56:59
[2026-08-31 14:56:59,442.442 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:56:59,470.470 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:56:59,579.579 INFO    ] No existing commands found in stream
[2026-08-31 14:57:04,600.600 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:57:04,603.603 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-08-31 14:57:08,379.379 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 14:57:08,382.382 INFO    ] Checking for system updates...
[2026-08-31 14:57:08,423.423 INFO    ] 200
[2026-08-31 14:57:08,425.425 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:57:08,486.486 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:57:08,489.489 INFO    ] No update needed
[2026-08-31 14:57:08,492.492 INFO    ] Checking for camera pi updates...
[2026-08-31 14:57:08,532.532 INFO    ] 200
[2026-08-31 14:57:08,535.535 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:57:08,582.582 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:57:08,688.688 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:57:08,691.691 INFO    ] No camera update needed
[2026-08-31 14:57:08,693.693 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:57:08,696.696 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:57:08,702.702 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:57:08,708.708 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:57:10,749.749 INFO    ] ================================================
[2026-08-31 14:57:10,764.764 INFO    ] Launching Daemon at Mon Aug 31 14:57:10 IST 2026
[2026-08-31 14:57:10,775.775 INFO    ] ================================================
[2026-08-31 14:57:11,417.417 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:57:11
[2026-08-31 14:57:12,094.094 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:57:12,404.404 INFO    ] Initializing speech engine...
[2026-08-31 14:57:12,416.416 INFO    ] 2026-08-31 14:57:12
[2026-08-31 14:57:12,691.691 INFO    ] 2026-08-31 14:57:12
[2026-08-31 14:57:12,747.747 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:57:13,004.004 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:57:13,024.024 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:57:13,245.245 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:57:13,253.253 INFO    ] time= 31/08/2026 14:57:13
[2026-08-31 14:57:13,275.275 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:57:13,303.303 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:57:13,411.411 INFO    ] No existing commands found in stream
[2026-08-31 14:57:18,428.428 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:57:18,431.431 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-08-31 14:57:22,300.300 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 14:57:22,303.303 INFO    ] Checking for system updates...
[2026-08-31 14:57:22,340.340 INFO    ] 200
[2026-08-31 14:57:22,343.343 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:57:22,396.396 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:57:22,399.399 INFO    ] No update needed
[2026-08-31 14:57:22,402.402 INFO    ] Checking for camera pi updates...
[2026-08-31 14:57:22,436.436 INFO    ] 200
[2026-08-31 14:57:22,439.439 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:57:22,482.482 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:57:22,574.574 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:57:22,577.577 INFO    ] No camera update needed
[2026-08-31 14:57:22,580.580 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:57:22,582.582 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:57:22,589.589 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:57:22,594.594 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:57:24,634.634 INFO    ] ================================================
[2026-08-31 14:57:24,808.808 INFO    ] Launching Daemon at Mon Aug 31 14:57:24 IST 2026
[2026-08-31 14:57:24,819.819 INFO    ] ================================================
[2026-08-31 14:57:25,397.397 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:57:25
[2026-08-31 14:57:27,167.167 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:57:27,472.472 INFO    ] Initializing speech engine...
[2026-08-31 14:57:27,485.485 INFO    ] 2026-08-31 14:57:27
[2026-08-31 14:57:27,795.795 INFO    ] 2026-08-31 14:57:27
[2026-08-31 14:57:27,880.880 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:57:28,093.093 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:57:28,099.099 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:57:28,295.295 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:57:28,314.314 INFO    ] time= 31/08/2026 14:57:28
[2026-08-31 14:57:28,345.345 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:57:28,357.357 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:57:28,493.493 INFO    ] No existing commands found in stream
[2026-08-31 14:57:33,530.530 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:57:33,533.533 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-08-31 14:57:34,577.577 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 14:57:34,580.580 INFO    ] Checking for system updates...
[2026-08-31 14:57:34,622.622 INFO    ] 200
[2026-08-31 14:57:34,625.625 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:57:34,677.677 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:57:34,679.679 INFO    ] No update needed
[2026-08-31 14:57:34,682.682 INFO    ] Checking for camera pi updates...
[2026-08-31 14:57:34,720.720 INFO    ] 200
[2026-08-31 14:57:34,722.722 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:57:34,768.768 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:57:34,849.849 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:57:34,852.852 INFO    ] No camera update needed
[2026-08-31 14:57:34,854.854 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:57:34,856.856 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:57:34,862.862 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:57:34,867.867 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:57:36,906.906 INFO    ] ================================================
[2026-08-31 14:57:36,921.921 INFO    ] Launching Daemon at Mon Aug 31 14:57:36 IST 2026
[2026-08-31 14:57:36,932.932 INFO    ] ================================================
[2026-08-31 14:57:37,498.498 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:57:37
[2026-08-31 14:57:38,082.082 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:57:38,352.352 INFO    ] Initializing speech engine...
[2026-08-31 14:57:38,361.361 INFO    ] 2026-08-31 14:57:38
[2026-08-31 14:57:38,611.611 INFO    ] 2026-08-31 14:57:38
[2026-08-31 14:57:38,645.645 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:57:38,907.907 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:57:38,913.913 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:57:39,121.121 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:57:39,178.178 INFO    ] time= 31/08/2026 14:57:39
[2026-08-31 14:57:39,184.184 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:57:39,202.202 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:57:39,324.324 INFO    ] No existing commands found in stream
[2026-08-31 14:57:44,344.344 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:57:44,346.346 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-08-31 14:57:46,410.410 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 14:57:46,412.412 INFO    ] Checking for system updates...
[2026-08-31 14:57:46,449.449 INFO    ] 200
[2026-08-31 14:57:46,452.452 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:57:48,147.147 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:57:48,150.150 INFO    ] No update needed
[2026-08-31 14:57:48,152.152 INFO    ] Checking for camera pi updates...
[2026-08-31 14:57:48,186.186 INFO    ] 200
[2026-08-31 14:57:48,188.188 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:57:48,235.235 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:57:48,424.424 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:57:48,427.427 INFO    ] No camera update needed
[2026-08-31 14:57:48,429.429 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:57:48,431.431 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:57:48,437.437 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:57:48,442.442 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:57:50,483.483 INFO    ] ================================================
[2026-08-31 14:57:50,499.499 INFO    ] Launching Daemon at Mon Aug 31 14:57:50 IST 2026
[2026-08-31 14:57:50,509.509 INFO    ] ================================================
[2026-08-31 14:57:51,157.157 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:57:51
[2026-08-31 14:57:51,831.831 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:57:52,142.142 INFO    ] Initializing speech engine...
[2026-08-31 14:57:52,154.154 INFO    ] 2026-08-31 14:57:52
[2026-08-31 14:57:52,470.470 INFO    ] 2026-08-31 14:57:52
[2026-08-31 14:57:52,552.552 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:57:52,776.776 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:57:52,782.782 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:57:52,980.980 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:57:52,999.999 INFO    ] time= 31/08/2026 14:57:52
[2026-08-31 14:57:53,030.030 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:57:53,039.039 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:57:53,214.214 INFO    ] No existing commands found in stream
[2026-08-31 14:57:58,240.240 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:57:58,243.243 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-08-31 14:58:01,907.907 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 14:58:01,913.913 INFO    ] Checking for system updates...
[2026-08-31 14:58:01,959.959 INFO    ] 200
[2026-08-31 14:58:01,963.963 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:58:02,026.026 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:58:02,029.029 INFO    ] No update needed
[2026-08-31 14:58:02,032.032 INFO    ] Checking for camera pi updates...
[2026-08-31 14:58:02,070.070 INFO    ] 200
[2026-08-31 14:58:02,073.073 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:58:02,128.128 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:58:02,219.219 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:58:02,222.222 INFO    ] No camera update needed
[2026-08-31 14:58:02,225.225 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:58:02,228.228 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:58:02,234.234 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:58:02,240.240 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:58:04,281.281 INFO    ] ================================================
[2026-08-31 14:58:04,296.296 INFO    ] Launching Daemon at Mon Aug 31 14:58:04 IST 2026
[2026-08-31 14:58:04,306.306 INFO    ] ================================================
[2026-08-31 14:58:05,374.374 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:58:04
[2026-08-31 14:58:05,954.954 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:58:06,284.284 INFO    ] Initializing speech engine...
[2026-08-31 14:58:06,294.294 INFO    ] 2026-08-31 14:58:06
[2026-08-31 14:58:06,595.595 INFO    ] 2026-08-31 14:58:06
[2026-08-31 14:58:06,685.685 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:58:06,883.883 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:58:06,888.888 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:58:07,101.101 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:58:07,152.152 INFO    ] time= 31/08/2026 14:58:07
[2026-08-31 14:58:07,158.158 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:58:07,175.175 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:58:07,289.289 INFO    ] No existing commands found in stream
[2026-08-31 14:58:12,311.311 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:58:12,314.314 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-08-31 14:58:16,411.411 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 14:58:16,414.414 INFO    ] Checking for system updates...
[2026-08-31 14:58:16,450.450 INFO    ] 200
[2026-08-31 14:58:16,452.452 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:58:16,511.511 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:58:16,513.513 INFO    ] No update needed
[2026-08-31 14:58:16,516.516 INFO    ] Checking for camera pi updates...
[2026-08-31 14:58:16,552.552 INFO    ] 200
[2026-08-31 14:58:16,555.555 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:58:16,599.599 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:58:16,678.678 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:58:16,681.681 INFO    ] No camera update needed
[2026-08-31 14:58:16,683.683 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:58:16,685.685 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:58:16,691.691 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:58:16,696.696 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:58:18,736.736 INFO    ] ================================================
[2026-08-31 14:58:18,751.751 INFO    ] Launching Daemon at Mon Aug 31 14:58:18 IST 2026
[2026-08-31 14:58:18,763.763 INFO    ] ================================================
[2026-08-31 14:58:19,327.327 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:58:19
[2026-08-31 14:58:19,909.909 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:58:20,199.199 INFO    ] Initializing speech engine...
[2026-08-31 14:58:20,207.207 INFO    ] 2026-08-31 14:58:20
[2026-08-31 14:58:20,482.482 INFO    ] 2026-08-31 14:58:20
[2026-08-31 14:58:20,538.538 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:58:20,826.826 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:58:20,836.836 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:58:21,054.054 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:58:21,087.087 INFO    ] time= 31/08/2026 14:58:21
[2026-08-31 14:58:21,098.098 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:58:21,154.154 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:58:21,310.310 INFO    ] No existing commands found in stream
[2026-08-31 14:58:26,341.341 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:58:26,345.345 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-08-31 14:58:29,133.133 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 14:58:29,136.136 INFO    ] Checking for system updates...
[2026-08-31 14:58:29,173.173 INFO    ] 200
[2026-08-31 14:58:29,175.175 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:58:29,228.228 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:58:29,230.230 INFO    ] No update needed
[2026-08-31 14:58:29,233.233 INFO    ] Checking for camera pi updates...
[2026-08-31 14:58:29,266.266 INFO    ] 200
[2026-08-31 14:58:29,268.268 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:58:29,309.309 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:58:29,388.388 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:58:29,391.391 INFO    ] No camera update needed
[2026-08-31 14:58:29,393.393 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:58:29,395.395 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:58:29,400.400 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:58:29,405.405 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:58:31,446.446 INFO    ] ================================================
[2026-08-31 14:58:31,464.464 INFO    ] Launching Daemon at Mon Aug 31 14:58:31 IST 2026
[2026-08-31 14:58:31,476.476 INFO    ] ================================================
[2026-08-31 14:58:32,087.087 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:58:32
[2026-08-31 14:58:32,703.703 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:58:32,970.970 INFO    ] Initializing speech engine...
[2026-08-31 14:58:32,979.979 INFO    ] 2026-08-31 14:58:32
[2026-08-31 14:58:33,231.231 INFO    ] 2026-08-31 14:58:33
[2026-08-31 14:58:33,288.288 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:58:33,508.508 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:58:33,518.518 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:58:33,756.756 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:58:33,775.775 INFO    ] time= 31/08/2026 14:58:33
[2026-08-31 14:58:33,792.792 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:58:33,800.800 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:58:33,918.918 INFO    ] No existing commands found in stream
[2026-08-31 14:58:38,939.939 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:58:38,942.942 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-08-31 14:58:40,854.854 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 14:58:40,856.856 INFO    ] Checking for system updates...
[2026-08-31 14:58:40,892.892 INFO    ] 200
[2026-08-31 14:58:40,894.894 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:58:40,946.946 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:58:40,949.949 INFO    ] No update needed
[2026-08-31 14:58:40,951.951 INFO    ] Checking for camera pi updates...
[2026-08-31 14:58:40,985.985 INFO    ] 200
[2026-08-31 14:58:40,988.988 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:58:41,028.028 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:58:41,105.105 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:58:41,107.107 INFO    ] No camera update needed
[2026-08-31 14:58:41,110.110 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:58:41,112.112 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:58:41,117.117 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:58:41,122.122 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:58:43,163.163 INFO    ] ================================================
[2026-08-31 14:58:43,178.178 INFO    ] Launching Daemon at Mon Aug 31 14:58:43 IST 2026
[2026-08-31 14:58:43,189.189 INFO    ] ================================================
[2026-08-31 14:58:43,763.763 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:58:43
[2026-08-31 14:58:44,372.372 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:58:44,653.653 INFO    ] Initializing speech engine...
[2026-08-31 14:58:44,661.661 INFO    ] 2026-08-31 14:58:44
[2026-08-31 14:58:44,921.921 INFO    ] 2026-08-31 14:58:44
[2026-08-31 14:58:44,954.954 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:58:45,144.144 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:58:45,166.166 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:58:45,380.380 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:58:45,440.440 INFO    ] time= 31/08/2026 14:58:45
[2026-08-31 14:58:45,471.471 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:58:45,477.477 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:58:45,635.635 INFO    ] No existing commands found in stream
[2026-08-31 14:58:50,667.667 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:58:50,670.670 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-08-31 14:58:52,338.338 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 14:58:52,340.340 INFO    ] Checking for system updates...
[2026-08-31 14:58:52,381.381 INFO    ] 200
[2026-08-31 14:58:52,384.384 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:58:52,443.443 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:58:52,445.445 INFO    ] No update needed
[2026-08-31 14:58:52,448.448 INFO    ] Checking for camera pi updates...
[2026-08-31 14:58:52,485.485 INFO    ] 200
[2026-08-31 14:58:52,488.488 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:58:52,529.529 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:58:52,612.612 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:58:52,614.614 INFO    ] No camera update needed
[2026-08-31 14:58:52,616.616 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:58:52,619.619 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:58:52,624.624 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:58:52,629.629 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:58:54,670.670 INFO    ] ================================================
[2026-08-31 14:58:54,686.686 INFO    ] Launching Daemon at Mon Aug 31 14:58:54 IST 2026
[2026-08-31 14:58:54,696.696 INFO    ] ================================================
[2026-08-31 14:58:55,349.349 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:58:55
[2026-08-31 14:58:56,023.023 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:58:56,322.322 INFO    ] Initializing speech engine...
[2026-08-31 14:58:56,331.331 INFO    ] 2026-08-31 14:58:56
[2026-08-31 14:58:56,615.615 INFO    ] 2026-08-31 14:58:56
[2026-08-31 14:58:56,661.661 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:58:56,944.944 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:58:56,951.951 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:58:57,159.159 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:58:57,183.183 INFO    ] time= 31/08/2026 14:58:57
[2026-08-31 14:58:57,198.198 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:58:57,209.209 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:58:57,304.304 INFO    ] No existing commands found in stream
[2026-08-31 14:59:02,334.334 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:59:02,338.338 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-08-31 14:59:06,419.419 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 14:59:06,422.422 INFO    ] Checking for system updates...
[2026-08-31 14:59:06,462.462 INFO    ] 200
[2026-08-31 14:59:06,464.464 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:59:06,516.516 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:59:06,519.519 INFO    ] No update needed
[2026-08-31 14:59:06,521.521 INFO    ] Checking for camera pi updates...
[2026-08-31 14:59:06,555.555 INFO    ] 200
[2026-08-31 14:59:06,557.557 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:59:06,607.607 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:59:06,696.696 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:59:06,698.698 INFO    ] No camera update needed
[2026-08-31 14:59:06,701.701 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:59:06,703.703 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:59:06,708.708 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:59:06,713.713 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:59:08,755.755 INFO    ] ================================================
[2026-08-31 14:59:08,771.771 INFO    ] Launching Daemon at Mon Aug 31 14:59:08 IST 2026
[2026-08-31 14:59:08,782.782 INFO    ] ================================================
[2026-08-31 14:59:09,425.425 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:59:09
[2026-08-31 14:59:10,088.088 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:59:10,387.387 INFO    ] Initializing speech engine...
[2026-08-31 14:59:10,404.404 INFO    ] 2026-08-31 14:59:10
[2026-08-31 14:59:10,656.656 INFO    ] 2026-08-31 14:59:10
[2026-08-31 14:59:10,691.691 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:59:10,886.886 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:59:10,901.901 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:59:11,065.065 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:59:11,070.070 INFO    ] time= 31/08/2026 14:59:11
[2026-08-31 14:59:11,076.076 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:59:11,082.082 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:59:11,236.236 INFO    ] No existing commands found in stream
[2026-08-31 14:59:16,261.261 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:59:16,264.264 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-08-31 14:59:17,569.569 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 14:59:17,571.571 INFO    ] Checking for system updates...
[2026-08-31 14:59:17,606.606 INFO    ] 200
[2026-08-31 14:59:17,609.609 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:59:17,670.670 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:59:17,673.673 INFO    ] No update needed
[2026-08-31 14:59:17,675.675 INFO    ] Checking for camera pi updates...
[2026-08-31 14:59:17,712.712 INFO    ] 200
[2026-08-31 14:59:17,714.714 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:59:17,754.754 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:59:17,840.840 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:59:17,843.843 INFO    ] No camera update needed
[2026-08-31 14:59:17,845.845 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:59:17,848.848 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:59:17,854.854 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:59:17,860.860 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:59:19,902.902 INFO    ] ================================================
[2026-08-31 14:59:19,918.918 INFO    ] Launching Daemon at Mon Aug 31 14:59:19 IST 2026
[2026-08-31 14:59:19,929.929 INFO    ] ================================================
[2026-08-31 14:59:20,517.517 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:59:20
[2026-08-31 14:59:21,146.146 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:59:21,446.446 INFO    ] Initializing speech engine...
[2026-08-31 14:59:21,452.452 INFO    ] 2026-08-31 14:59:21
[2026-08-31 14:59:21,743.743 INFO    ] 2026-08-31 14:59:21
[2026-08-31 14:59:21,806.806 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:59:22,071.071 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:59:22,080.080 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:59:22,274.274 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:59:22,281.281 INFO    ] time= 31/08/2026 14:59:22
[2026-08-31 14:59:22,303.303 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:59:22,329.329 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:59:22,506.506 INFO    ] No existing commands found in stream
[2026-08-31 14:59:27,543.543 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:59:27,546.546 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-08-31 14:59:30,600.600 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 14:59:30,603.603 INFO    ] Checking for system updates...
[2026-08-31 14:59:30,644.644 INFO    ] 200
[2026-08-31 14:59:30,648.648 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:59:30,710.710 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 14:59:30,713.713 INFO    ] No update needed
[2026-08-31 14:59:30,715.715 INFO    ] Checking for camera pi updates...
[2026-08-31 14:59:30,756.756 INFO    ] 200
[2026-08-31 14:59:30,759.759 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:59:30,799.799 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:59:30,878.878 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:59:30,880.880 INFO    ] No camera update needed
[2026-08-31 14:59:30,883.883 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:59:30,885.885 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:59:30,890.890 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:59:30,895.895 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:59:32,938.938 INFO    ] ================================================
[2026-08-31 14:59:32,954.954 INFO    ] Launching Daemon at Mon Aug 31 14:59:32 IST 2026
[2026-08-31 14:59:32,965.965 INFO    ] ================================================
[2026-08-31 14:59:33,535.535 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:59:33
[2026-08-31 14:59:34,164.164 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:59:34,475.475 INFO    ] Initializing speech engine...
[2026-08-31 14:59:34,481.481 INFO    ] 2026-08-31 14:59:34
[2026-08-31 14:59:34,730.730 INFO    ] 2026-08-31 14:59:34
[2026-08-31 14:59:34,765.765 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:59:34,973.973 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:59:35,041.041 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:59:35,262.262 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:59:35,307.307 INFO    ] time= 31/08/2026 14:59:35
[2026-08-31 14:59:35,359.359 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:59:35,365.365 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:59:35,498.498 INFO    ] No existing commands found in stream
[2026-08-31 14:59:40,523.523 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:59:40,526.526 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-08-31 14:59:44,107.107 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 14:59:44,109.109 INFO    ] Checking for system updates...
[2026-08-31 14:59:44,150.150 INFO    ] 200
[2026-08-31 14:59:44,152.152 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:59:44,212.212 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:59:44,214.214 INFO    ] No update needed
[2026-08-31 14:59:44,216.216 INFO    ] Checking for camera pi updates...
[2026-08-31 14:59:44,250.250 INFO    ] 200
[2026-08-31 14:59:44,252.252 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:59:44,293.293 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:59:44,379.379 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:59:44,381.381 INFO    ] No camera update needed
[2026-08-31 14:59:44,383.383 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:59:44,385.385 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:59:44,391.391 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:59:44,396.396 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:59:46,436.436 INFO    ] ================================================
[2026-08-31 14:59:46,451.451 INFO    ] Launching Daemon at Mon Aug 31 14:59:46 IST 2026
[2026-08-31 14:59:46,463.463 INFO    ] ================================================
[2026-08-31 14:59:47,141.141 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:59:47
[2026-08-31 14:59:47,741.741 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:59:48,003.003 INFO    ] Initializing speech engine...
[2026-08-31 14:59:48,018.018 INFO    ] 2026-08-31 14:59:48
[2026-08-31 14:59:48,273.273 INFO    ] 2026-08-31 14:59:48
[2026-08-31 14:59:48,308.308 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 14:59:48,560.560 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 14:59:48,568.568 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 14:59:48,792.792 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 14:59:48,829.829 INFO    ] time= 31/08/2026 14:59:48
[2026-08-31 14:59:48,844.844 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 14:59:48,853.853 INFO    ] Checking for existing commands in stream...
[2026-08-31 14:59:48,975.975 INFO    ] No existing commands found in stream
[2026-08-31 14:59:53,999.999 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 14:59:54,002.002 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-08-31 14:59:55,478.478 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 14:59:55,481.481 INFO    ] Checking for system updates...
[2026-08-31 14:59:55,518.518 INFO    ] 200
[2026-08-31 14:59:55,520.520 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:59:55,581.581 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:59:55,583.583 INFO    ] No update needed
[2026-08-31 14:59:55,585.585 INFO    ] Checking for camera pi updates...
[2026-08-31 14:59:55,623.623 INFO    ] 200
[2026-08-31 14:59:55,625.625 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 14:59:55,671.671 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 14:59:55,850.850 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 14:59:55,853.853 INFO    ] No camera update needed
[2026-08-31 14:59:55,855.855 INFO    ] Script finished. Safe exiting...
[2026-08-31 14:59:55,858.858 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 14:59:55,863.863 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 14:59:55,869.869 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 14:59:57,912.912 INFO    ] ================================================
[2026-08-31 14:59:57,927.927 INFO    ] Launching Daemon at Mon Aug 31 14:59:57 IST 2026
[2026-08-31 14:59:57,938.938 INFO    ] ================================================
[2026-08-31 14:59:58,604.604 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 14:59:58
[2026-08-31 14:59:59,207.207 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 14:59:59,480.480 INFO    ] Initializing speech engine...
[2026-08-31 14:59:59,489.489 INFO    ] 2026-08-31 14:59:59
[2026-08-31 14:59:59,745.745 INFO    ] 2026-08-31 14:59:59
[2026-08-31 14:59:59,781.781 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:00:00,015.015 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:00:00,056.056 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:00:00,171.171 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:00:00,180.180 INFO    ] time= 31/08/2026 15:00:00
[2026-08-31 15:00:00,206.206 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:00:00,255.255 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:00:00,403.403 INFO    ] No existing commands found in stream
[2026-08-31 15:00:05,413.413 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:00:05,447.447 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-08-31 15:00:09,545.545 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 15:00:09,548.548 INFO    ] Checking for system updates...
[2026-08-31 15:00:09,598.598 INFO    ] 200
[2026-08-31 15:00:09,601.601 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-08-31 15:00:09,604.604 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-08-31 15:00:09,606.606 INFO    ] Checking for camera pi updates...
[2026-08-31 15:00:09,658.658 INFO    ] 200
[2026-08-31 15:00:09,661.661 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-08-31 15:00:09,664.664 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-08-31 15:00:09,667.667 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:00:09,669.669 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:00:09,675.675 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:00:09,680.680 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:00:11,724.724 INFO    ] ================================================
[2026-08-31 15:00:11,739.739 INFO    ] Launching Daemon at Mon Aug 31 15:00:11 IST 2026
[2026-08-31 15:00:11,750.750 INFO    ] ================================================
[2026-08-31 15:00:12,317.317 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:00:12
[2026-08-31 15:00:12,910.910 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:00:13,166.166 INFO    ] Initializing speech engine...
[2026-08-31 15:00:13,190.190 INFO    ] 2026-08-31 15:00:13
[2026-08-31 15:00:13,444.444 INFO    ] 2026-08-31 15:00:13
[2026-08-31 15:00:13,480.480 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:00:13,731.731 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:00:13,740.740 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:00:13,950.950 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:00:14,000.000 INFO    ] time= 31/08/2026 15:00:13
[2026-08-31 15:00:14,006.006 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:00:14,027.027 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:00:14,140.140 INFO    ] No existing commands found in stream
[2026-08-31 15:00:19,161.161 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:00:19,164.164 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-08-31 15:00:20,530.530 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 15:00:20,533.533 INFO    ] Checking for system updates...
[2026-08-31 15:00:20,569.569 INFO    ] 200
[2026-08-31 15:00:20,571.571 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:00:20,634.634 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:00:20,636.636 INFO    ] No update needed
[2026-08-31 15:00:20,639.639 INFO    ] Checking for camera pi updates...
[2026-08-31 15:00:20,672.672 INFO    ] 200
[2026-08-31 15:00:20,675.675 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:00:20,720.720 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:00:20,809.809 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:00:20,811.811 INFO    ] No camera update needed
[2026-08-31 15:00:20,814.814 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:00:20,817.817 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:00:20,823.823 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:00:20,829.829 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:00:22,871.871 INFO    ] ================================================
[2026-08-31 15:00:22,886.886 INFO    ] Launching Daemon at Mon Aug 31 15:00:22 IST 2026
[2026-08-31 15:00:22,898.898 INFO    ] ================================================
[2026-08-31 15:00:23,565.565 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:00:23
[2026-08-31 15:00:24,273.273 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:00:24,612.612 INFO    ] Initializing speech engine...
[2026-08-31 15:00:24,622.622 INFO    ] 2026-08-31 15:00:24
[2026-08-31 15:00:24,886.886 INFO    ] 2026-08-31 15:00:24
[2026-08-31 15:00:24,930.930 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:00:25,296.296 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:00:25,340.340 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:00:25,545.545 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:00:25,586.586 INFO    ] time= 31/08/2026 15:00:25
[2026-08-31 15:00:25,630.630 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:00:25,679.679 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:00:25,824.824 INFO    ] No existing commands found in stream
[2026-08-31 15:00:30,850.850 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:00:30,853.853 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-08-31 15:00:34,650.650 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 15:00:34,653.653 INFO    ] Checking for system updates...
[2026-08-31 15:00:34,691.691 INFO    ] 200
[2026-08-31 15:00:34,694.694 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:00:34,752.752 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:00:34,754.754 INFO    ] No update needed
[2026-08-31 15:00:34,757.757 INFO    ] Checking for camera pi updates...
[2026-08-31 15:00:34,793.793 INFO    ] 200
[2026-08-31 15:00:34,796.796 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:00:34,840.840 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:00:34,930.930 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:00:34,932.932 INFO    ] No camera update needed
[2026-08-31 15:00:34,934.934 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:00:34,937.937 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:00:34,942.942 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:00:34,947.947 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:00:36,988.988 INFO    ] ================================================
[2026-08-31 15:00:37,003.003 INFO    ] Launching Daemon at Mon Aug 31 15:00:36 IST 2026
[2026-08-31 15:00:37,017.017 INFO    ] ================================================
[2026-08-31 15:00:37,584.584 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:00:37
[2026-08-31 15:00:38,168.168 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:00:38,441.441 INFO    ] Initializing speech engine...
[2026-08-31 15:00:38,450.450 INFO    ] 2026-08-31 15:00:38
[2026-08-31 15:00:38,703.703 INFO    ] 2026-08-31 15:00:38
[2026-08-31 15:00:38,738.738 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:00:38,939.939 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:00:38,998.998 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:00:39,236.236 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:00:39,275.275 INFO    ] time= 31/08/2026 15:00:39
[2026-08-31 15:00:39,291.291 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:00:39,299.299 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:00:39,430.430 INFO    ] No existing commands found in stream
[2026-08-31 15:00:44,446.446 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:00:44,449.449 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-08-31 15:00:46,957.957 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 15:00:46,960.960 INFO    ] Checking for system updates...
[2026-08-31 15:00:47,000.000 INFO    ] 200
[2026-08-31 15:00:47,002.002 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:00:47,055.055 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:00:47,058.058 INFO    ] No update needed
[2026-08-31 15:00:47,060.060 INFO    ] Checking for camera pi updates...
[2026-08-31 15:00:47,094.094 INFO    ] 200
[2026-08-31 15:00:47,096.096 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:00:47,141.141 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:00:47,222.222 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:00:47,224.224 INFO    ] No camera update needed
[2026-08-31 15:00:47,227.227 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:00:47,229.229 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:00:47,234.234 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:00:47,239.239 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:00:49,279.279 INFO    ] ================================================
[2026-08-31 15:00:49,301.301 INFO    ] Launching Daemon at Mon Aug 31 15:00:49 IST 2026
[2026-08-31 15:00:49,312.312 INFO    ] ================================================
[2026-08-31 15:00:49,875.875 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:00:49
[2026-08-31 15:00:50,498.498 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:00:50,800.800 INFO    ] Initializing speech engine...
[2026-08-31 15:00:50,813.813 INFO    ] 2026-08-31 15:00:50
[2026-08-31 15:00:51,105.105 INFO    ] 2026-08-31 15:00:51
[2026-08-31 15:00:51,215.215 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:00:51,431.431 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:00:51,439.439 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:00:51,643.643 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:00:51,662.662 INFO    ] time= 31/08/2026 15:00:51
[2026-08-31 15:00:51,671.671 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:00:51,698.698 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:00:51,801.801 INFO    ] No existing commands found in stream
[2026-08-31 15:00:56,819.819 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:00:56,822.822 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-08-31 15:00:59,359.359 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 15:00:59,361.361 INFO    ] Checking for system updates...
[2026-08-31 15:00:59,401.401 INFO    ] 200
[2026-08-31 15:00:59,404.404 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:00:59,473.473 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:00:59,475.475 INFO    ] No update needed
[2026-08-31 15:00:59,478.478 INFO    ] Checking for camera pi updates...
[2026-08-31 15:00:59,511.511 INFO    ] 200
[2026-08-31 15:00:59,514.514 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:00:59,554.554 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:00:59,649.649 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:00:59,651.651 INFO    ] No camera update needed
[2026-08-31 15:00:59,653.653 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:00:59,656.656 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:00:59,661.661 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:00:59,666.666 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:01:01,712.712 INFO    ] ================================================
[2026-08-31 15:01:01,734.734 INFO    ] Launching Daemon at Mon Aug 31 15:01:01 IST 2026
[2026-08-31 15:01:01,752.752 INFO    ] ================================================
[2026-08-31 15:01:02,396.396 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:01:02
[2026-08-31 15:01:03,049.049 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:01:03,325.325 INFO    ] Initializing speech engine...
[2026-08-31 15:01:03,334.334 INFO    ] 2026-08-31 15:01:03
[2026-08-31 15:01:03,588.588 INFO    ] 2026-08-31 15:01:03
[2026-08-31 15:01:03,623.623 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:01:03,827.827 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:01:03,836.836 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:01:04,048.048 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:01:04,075.075 INFO    ] time= 31/08/2026 15:01:04
[2026-08-31 15:01:04,134.134 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:01:04,184.184 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:01:04,262.262 INFO    ] No existing commands found in stream
[2026-08-31 15:01:09,300.300 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:01:09,303.303 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-08-31 15:01:10,972.972 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 15:01:10,975.975 INFO    ] Checking for system updates...
[2026-08-31 15:01:11,015.015 INFO    ] 200
[2026-08-31 15:01:11,017.017 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:01:11,076.076 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:01:11,079.079 INFO    ] No update needed
[2026-08-31 15:01:11,081.081 INFO    ] Checking for camera pi updates...
[2026-08-31 15:01:11,120.120 INFO    ] 200
[2026-08-31 15:01:11,122.122 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:01:11,164.164 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:01:11,246.246 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:01:11,249.249 INFO    ] No camera update needed
[2026-08-31 15:01:11,252.252 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:01:11,255.255 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:01:11,261.261 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:01:11,267.267 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:01:13,310.310 INFO    ] ================================================
[2026-08-31 15:01:13,326.326 INFO    ] Launching Daemon at Mon Aug 31 15:01:13 IST 2026
[2026-08-31 15:01:13,337.337 INFO    ] ================================================
[2026-08-31 15:01:14,012.012 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:01:14
[2026-08-31 15:01:14,704.704 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:01:15,023.023 INFO    ] Initializing speech engine...
[2026-08-31 15:01:15,033.033 INFO    ] 2026-08-31 15:01:15
[2026-08-31 15:01:15,346.346 INFO    ] 2026-08-31 15:01:15
[2026-08-31 15:01:15,434.434 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:01:15,587.587 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:01:15,598.598 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:01:15,832.832 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:01:15,866.866 INFO    ] time= 31/08/2026 15:01:15
[2026-08-31 15:01:15,886.886 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:01:15,903.903 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:01:16,050.050 INFO    ] No existing commands found in stream
[2026-08-31 15:01:21,081.081 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:01:21,084.084 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-08-31 15:01:24,361.361 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 15:01:24,364.364 INFO    ] Checking for system updates...
[2026-08-31 15:01:24,406.406 INFO    ] 200
[2026-08-31 15:01:24,409.409 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:01:24,485.485 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:01:24,488.488 INFO    ] No update needed
[2026-08-31 15:01:24,491.491 INFO    ] Checking for camera pi updates...
[2026-08-31 15:01:24,530.530 INFO    ] 200
[2026-08-31 15:01:24,534.534 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:01:24,575.575 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:01:24,660.660 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:01:24,663.663 INFO    ] No camera update needed
[2026-08-31 15:01:24,665.665 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:01:24,668.668 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:01:24,675.675 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:01:24,681.681 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:01:26,723.723 INFO    ] ================================================
[2026-08-31 15:01:26,739.739 INFO    ] Launching Daemon at Mon Aug 31 15:01:26 IST 2026
[2026-08-31 15:01:26,750.750 INFO    ] ================================================
[2026-08-31 15:01:27,323.323 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:01:27
[2026-08-31 15:01:27,915.915 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:01:28,172.172 INFO    ] Initializing speech engine...
[2026-08-31 15:01:28,181.181 INFO    ] 2026-08-31 15:01:28
[2026-08-31 15:01:28,479.479 INFO    ] 2026-08-31 15:01:28
[2026-08-31 15:01:28,504.504 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:01:28,745.745 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:01:28,752.752 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:01:29,036.036 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:01:29,101.101 INFO    ] time= 31/08/2026 15:01:29
[2026-08-31 15:01:29,128.128 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:01:29,134.134 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:01:29,273.273 INFO    ] No existing commands found in stream
[2026-08-31 15:01:34,298.298 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:01:34,301.301 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-08-31 15:01:36,451.451 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 15:01:36,454.454 INFO    ] Checking for system updates...
[2026-08-31 15:01:36,489.489 INFO    ] 200
[2026-08-31 15:01:36,492.492 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:01:36,545.545 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:01:36,548.548 INFO    ] No update needed
[2026-08-31 15:01:36,551.551 INFO    ] Checking for camera pi updates...
[2026-08-31 15:01:36,591.591 INFO    ] 200
[2026-08-31 15:01:36,594.594 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:01:36,645.645 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:01:36,730.730 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:01:36,733.733 INFO    ] No camera update needed
[2026-08-31 15:01:36,735.735 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:01:36,737.737 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:01:36,743.743 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:01:36,747.747 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:01:38,789.789 INFO    ] ================================================
[2026-08-31 15:01:38,804.804 INFO    ] Launching Daemon at Mon Aug 31 15:01:38 IST 2026
[2026-08-31 15:01:38,816.816 INFO    ] ================================================
[2026-08-31 15:01:39,388.388 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:01:39
[2026-08-31 15:01:39,980.980 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:01:40,235.235 INFO    ] Initializing speech engine...
[2026-08-31 15:01:40,244.244 INFO    ] 2026-08-31 15:01:40
[2026-08-31 15:01:40,540.540 INFO    ] 2026-08-31 15:01:40
[2026-08-31 15:01:40,579.579 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:01:40,778.778 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:01:40,791.791 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:01:40,937.937 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:01:40,957.957 INFO    ] time= 31/08/2026 15:01:40
[2026-08-31 15:01:40,968.968 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:01:40,976.976 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:01:41,054.054 INFO    ] No existing commands found in stream
[2026-08-31 15:01:46,073.073 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:01:46,076.076 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-08-31 15:01:47,131.131 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 15:01:47,133.133 INFO    ] Checking for system updates...
[2026-08-31 15:01:47,174.174 INFO    ] 200
[2026-08-31 15:01:47,176.176 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:01:47,237.237 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:01:47,239.239 INFO    ] No update needed
[2026-08-31 15:01:47,242.242 INFO    ] Checking for camera pi updates...
[2026-08-31 15:01:47,279.279 INFO    ] 200
[2026-08-31 15:01:47,282.282 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:01:47,328.328 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:01:47,411.411 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:01:47,414.414 INFO    ] No camera update needed
[2026-08-31 15:01:47,416.416 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:01:47,418.418 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:01:47,424.424 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:01:47,429.429 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:01:49,469.469 INFO    ] ================================================
[2026-08-31 15:01:49,485.485 INFO    ] Launching Daemon at Mon Aug 31 15:01:49 IST 2026
[2026-08-31 15:01:49,497.497 INFO    ] ================================================
[2026-08-31 15:01:50,074.074 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:01:50
[2026-08-31 15:01:50,760.760 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:01:51,068.068 INFO    ] Initializing speech engine...
[2026-08-31 15:01:51,082.082 INFO    ] 2026-08-31 15:01:51
[2026-08-31 15:01:51,400.400 INFO    ] 2026-08-31 15:01:51
[2026-08-31 15:01:51,490.490 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:01:51,711.711 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:01:51,717.717 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:01:51,916.916 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:01:51,936.936 INFO    ] time= 31/08/2026 15:01:51
[2026-08-31 15:01:51,965.965 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:01:51,974.974 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:01:52,099.099 INFO    ] No existing commands found in stream
[2026-08-31 15:01:57,130.130 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:01:57,133.133 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-08-31 15:01:58,228.228 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 15:01:58,231.231 INFO    ] Checking for system updates...
[2026-08-31 15:01:58,268.268 INFO    ] 200
[2026-08-31 15:01:58,271.271 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:01:58,324.324 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:01:58,327.327 INFO    ] No update needed
[2026-08-31 15:01:58,330.330 INFO    ] Checking for camera pi updates...
[2026-08-31 15:01:58,365.365 INFO    ] 200
[2026-08-31 15:01:58,368.368 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:01:58,411.411 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:01:58,585.585 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:01:58,588.588 INFO    ] No camera update needed
[2026-08-31 15:01:58,591.591 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:01:58,594.594 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:01:58,600.600 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:01:58,606.606 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:02:00,647.647 INFO    ] ================================================
[2026-08-31 15:02:00,662.662 INFO    ] Launching Daemon at Mon Aug 31 15:02:00 IST 2026
[2026-08-31 15:02:00,673.673 INFO    ] ================================================
[2026-08-31 15:02:01,427.427 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:02:01
[2026-08-31 15:02:02,134.134 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:02:02,450.450 INFO    ] Initializing speech engine...
[2026-08-31 15:02:02,459.459 INFO    ] 2026-08-31 15:02:02
[2026-08-31 15:02:02,768.768 INFO    ] 2026-08-31 15:02:02
[2026-08-31 15:02:02,805.805 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:02:03,016.016 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:02:03,073.073 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:02:03,303.303 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:02:03,337.337 INFO    ] time= 31/08/2026 15:02:03
[2026-08-31 15:02:03,343.343 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:02:03,364.364 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:02:03,492.492 INFO    ] No existing commands found in stream
[2026-08-31 15:02:08,510.510 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:02:08,513.513 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-08-31 15:02:09,630.630 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 15:02:09,633.633 INFO    ] Checking for system updates...
[2026-08-31 15:02:09,675.675 INFO    ] 200
[2026-08-31 15:02:09,677.677 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:02:09,742.742 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:02:09,744.744 INFO    ] No update needed
[2026-08-31 15:02:09,746.746 INFO    ] Checking for camera pi updates...
[2026-08-31 15:02:09,784.784 INFO    ] 200
[2026-08-31 15:02:09,786.786 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:02:09,831.831 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:02:09,930.930 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:02:09,933.933 INFO    ] No camera update needed
[2026-08-31 15:02:09,935.935 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:02:09,938.938 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:02:09,943.943 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:02:09,948.948 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:02:11,988.988 INFO    ] ================================================
[2026-08-31 15:02:12,004.004 INFO    ] Launching Daemon at Mon Aug 31 15:02:11 IST 2026
[2026-08-31 15:02:12,016.016 INFO    ] ================================================
[2026-08-31 15:02:12,589.589 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:02:12
[2026-08-31 15:02:13,173.173 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:02:13,442.442 INFO    ] Initializing speech engine...
[2026-08-31 15:02:13,451.451 INFO    ] 2026-08-31 15:02:13
[2026-08-31 15:02:13,700.700 INFO    ] 2026-08-31 15:02:13
[2026-08-31 15:02:13,768.768 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:02:13,993.993 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:02:14,003.003 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:02:14,222.222 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:02:14,267.267 INFO    ] time= 31/08/2026 15:02:14
[2026-08-31 15:02:14,274.274 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:02:14,291.291 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:02:14,423.423 INFO    ] No existing commands found in stream
[2026-08-31 15:02:19,436.436 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:02:19,439.439 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-08-31 15:02:22,290.290 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 15:02:22,293.293 INFO    ] Checking for system updates...
[2026-08-31 15:02:22,334.334 INFO    ] 200
[2026-08-31 15:02:22,336.336 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:02:22,392.392 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:02:22,395.395 INFO    ] No update needed
[2026-08-31 15:02:22,398.398 INFO    ] Checking for camera pi updates...
[2026-08-31 15:02:22,433.433 INFO    ] 200
[2026-08-31 15:02:22,436.436 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:02:22,484.484 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:02:22,557.557 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:02:22,559.559 INFO    ] No camera update needed
[2026-08-31 15:02:22,562.562 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:02:22,564.564 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:02:22,569.569 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:02:22,574.574 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:02:24,616.616 INFO    ] ================================================
[2026-08-31 15:02:24,632.632 INFO    ] Launching Daemon at Mon Aug 31 15:02:24 IST 2026
[2026-08-31 15:02:24,643.643 INFO    ] ================================================
[2026-08-31 15:02:25,268.268 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:02:25
[2026-08-31 15:02:25,951.951 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:02:26,262.262 INFO    ] Initializing speech engine...
[2026-08-31 15:02:26,271.271 INFO    ] 2026-08-31 15:02:26
[2026-08-31 15:02:26,548.548 INFO    ] 2026-08-31 15:02:26
[2026-08-31 15:02:26,604.604 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:02:26,871.871 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:02:26,901.901 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:02:27,107.107 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:02:27,115.115 INFO    ] time= 31/08/2026 15:02:27
[2026-08-31 15:02:27,138.138 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:02:27,168.168 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:02:27,320.320 INFO    ] No existing commands found in stream
[2026-08-31 15:02:32,358.358 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:02:32,361.361 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-08-31 15:02:35,662.662 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 15:02:35,665.665 INFO    ] Checking for system updates...
[2026-08-31 15:02:35,702.702 INFO    ] 200
[2026-08-31 15:02:35,705.705 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:02:35,766.766 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:02:35,770.770 INFO    ] No update needed
[2026-08-31 15:02:35,773.773 INFO    ] Checking for camera pi updates...
[2026-08-31 15:02:35,808.808 INFO    ] 200
[2026-08-31 15:02:35,811.811 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:02:35,853.853 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:02:35,936.936 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:02:35,939.939 INFO    ] No camera update needed
[2026-08-31 15:02:35,942.942 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:02:35,945.945 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:02:35,951.951 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:02:35,957.957 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:02:38,999.999 INFO    ] ================================================
[2026-08-31 15:02:38,015.015 INFO    ] Launching Daemon at Mon Aug 31 15:02:38 IST 2026
[2026-08-31 15:02:38,026.026 INFO    ] ================================================
[2026-08-31 15:02:38,708.708 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:02:38
[2026-08-31 15:02:39,310.310 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:02:39,583.583 INFO    ] Initializing speech engine...
[2026-08-31 15:02:39,590.590 INFO    ] 2026-08-31 15:02:39
[2026-08-31 15:02:39,856.856 INFO    ] 2026-08-31 15:02:39
[2026-08-31 15:02:39,890.890 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:02:40,136.136 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:02:40,145.145 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:02:40,261.261 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:02:40,264.264 INFO    ] time= 31/08/2026 15:02:40
[2026-08-31 15:02:40,266.266 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:02:40,286.286 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:02:40,414.414 INFO    ] No existing commands found in stream
[2026-08-31 15:02:45,423.423 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:02:45,426.426 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-08-31 15:02:47,558.558 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 15:02:47,560.560 INFO    ] Checking for system updates...
[2026-08-31 15:02:47,602.602 INFO    ] 200
[2026-08-31 15:02:47,605.605 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:02:47,665.665 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:02:47,668.668 INFO    ] No update needed
[2026-08-31 15:02:47,670.670 INFO    ] Checking for camera pi updates...
[2026-08-31 15:02:47,704.704 INFO    ] 200
[2026-08-31 15:02:47,706.706 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:02:47,753.753 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:02:47,826.826 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:02:47,828.828 INFO    ] No camera update needed
[2026-08-31 15:02:47,831.831 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:02:47,833.833 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:02:47,838.838 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:02:47,843.843 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:02:49,887.887 INFO    ] ================================================
[2026-08-31 15:02:49,908.908 INFO    ] Launching Daemon at Mon Aug 31 15:02:49 IST 2026
[2026-08-31 15:02:49,918.918 INFO    ] ================================================
[2026-08-31 15:02:50,585.585 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:02:50
[2026-08-31 15:02:51,267.267 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:02:51,578.578 INFO    ] Initializing speech engine...
[2026-08-31 15:02:51,591.591 INFO    ] 2026-08-31 15:02:51
[2026-08-31 15:02:51,860.860 INFO    ] 2026-08-31 15:02:51
[2026-08-31 15:02:51,921.921 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:02:52,181.181 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:02:52,187.187 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:02:52,383.383 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:02:52,429.429 INFO    ] time= 31/08/2026 15:02:52
[2026-08-31 15:02:52,436.436 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:02:52,459.459 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:02:52,598.598 INFO    ] No existing commands found in stream
[2026-08-31 15:02:57,630.630 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:02:57,633.633 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-08-31 15:02:59,630.630 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 15:02:59,633.633 INFO    ] Checking for system updates...
[2026-08-31 15:02:59,675.675 INFO    ] 200
[2026-08-31 15:02:59,678.678 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:02:59,731.731 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:02:59,734.734 INFO    ] No update needed
[2026-08-31 15:02:59,737.737 INFO    ] Checking for camera pi updates...
[2026-08-31 15:02:59,774.774 INFO    ] 200
[2026-08-31 15:02:59,777.777 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:02:59,820.820 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:02:59,904.904 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:02:59,907.907 INFO    ] No camera update needed
[2026-08-31 15:02:59,914.914 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:02:59,917.917 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:02:59,924.924 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:02:59,930.930 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:03:01,979.979 INFO    ] ================================================
[2026-08-31 15:03:02,996.996 INFO    ] Launching Daemon at Mon Aug 31 15:03:01 IST 2026
[2026-08-31 15:03:02,008.008 INFO    ] ================================================
[2026-08-31 15:03:02,678.678 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:03:02
[2026-08-31 15:03:03,283.283 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:03:03,540.540 INFO    ] Initializing speech engine...
[2026-08-31 15:03:03,555.555 INFO    ] 2026-08-31 15:03:03
[2026-08-31 15:03:03,841.841 INFO    ] 2026-08-31 15:03:03
[2026-08-31 15:03:03,879.879 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:03:04,103.103 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:03:04,110.110 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:03:04,332.332 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:03:04,339.339 INFO    ] time= 31/08/2026 15:03:04
[2026-08-31 15:03:04,388.388 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:03:04,427.427 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:03:04,543.543 INFO    ] No existing commands found in stream
[2026-08-31 15:03:09,555.555 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:03:09,558.558 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-08-31 15:03:10,132.132 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 15:03:10,134.134 INFO    ] Checking for system updates...
[2026-08-31 15:03:10,170.170 INFO    ] 200
[2026-08-31 15:03:10,173.173 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:03:10,232.232 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:03:10,234.234 INFO    ] No update needed
[2026-08-31 15:03:10,237.237 INFO    ] Checking for camera pi updates...
[2026-08-31 15:03:10,270.270 INFO    ] 200
[2026-08-31 15:03:10,273.273 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:03:10,313.313 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:03:10,393.393 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:03:10,396.396 INFO    ] No camera update needed
[2026-08-31 15:03:10,398.398 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:03:10,400.400 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:03:10,406.406 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:03:10,411.411 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:03:12,450.450 INFO    ] ================================================
[2026-08-31 15:03:12,465.465 INFO    ] Launching Daemon at Mon Aug 31 15:03:12 IST 2026
[2026-08-31 15:03:12,476.476 INFO    ] ================================================
[2026-08-31 15:03:13,041.041 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:03:13
[2026-08-31 15:03:13,626.626 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:03:13,893.893 INFO    ] Initializing speech engine...
[2026-08-31 15:03:13,911.911 INFO    ] 2026-08-31 15:03:13
[2026-08-31 15:03:14,188.188 INFO    ] 2026-08-31 15:03:14
[2026-08-31 15:03:14,235.235 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:03:14,508.508 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:03:14,516.516 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:03:14,661.661 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:03:14,711.711 INFO    ] time= 31/08/2026 15:03:14
[2026-08-31 15:03:14,761.761 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:03:14,772.772 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:03:14,904.904 INFO    ] No existing commands found in stream
[2026-08-31 15:03:19,930.930 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:03:19,933.933 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-08-31 15:03:20,580.580 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 15:03:20,583.583 INFO    ] Checking for system updates...
[2026-08-31 15:03:20,621.621 INFO    ] 200
[2026-08-31 15:03:20,623.623 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:03:20,676.676 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:03:20,678.678 INFO    ] No update needed
[2026-08-31 15:03:20,681.681 INFO    ] Checking for camera pi updates...
[2026-08-31 15:03:20,717.717 INFO    ] 200
[2026-08-31 15:03:20,720.720 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:03:20,766.766 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:03:20,870.870 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:03:20,873.873 INFO    ] No camera update needed
[2026-08-31 15:03:20,876.876 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:03:20,878.878 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:03:20,884.884 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:03:20,890.890 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:03:22,933.933 INFO    ] ================================================
[2026-08-31 15:03:22,949.949 INFO    ] Launching Daemon at Mon Aug 31 15:03:22 IST 2026
[2026-08-31 15:03:22,960.960 INFO    ] ================================================
[2026-08-31 15:03:23,572.572 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:03:23
[2026-08-31 15:03:24,205.205 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:03:24,485.485 INFO    ] Initializing speech engine...
[2026-08-31 15:03:24,495.495 INFO    ] 2026-08-31 15:03:24
[2026-08-31 15:03:24,811.811 INFO    ] 2026-08-31 15:03:24
[2026-08-31 15:03:24,855.855 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:03:25,238.238 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:03:25,245.245 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:03:25,458.458 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:03:25,480.480 INFO    ] time= 31/08/2026 15:03:25
[2026-08-31 15:03:25,487.487 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:03:25,508.508 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:03:25,616.616 INFO    ] No existing commands found in stream
[2026-08-31 15:03:30,639.639 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:03:30,642.642 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-08-31 15:03:34,982.982 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 15:03:34,984.984 INFO    ] Checking for system updates...
[2026-08-31 15:03:35,020.020 INFO    ] 200
[2026-08-31 15:03:35,022.022 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:03:35,083.083 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:03:35,086.086 INFO    ] No update needed
[2026-08-31 15:03:35,089.089 INFO    ] Checking for camera pi updates...
[2026-08-31 15:03:35,126.126 INFO    ] 200
[2026-08-31 15:03:35,128.128 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:03:35,169.169 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:03:35,254.254 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:03:35,256.256 INFO    ] No camera update needed
[2026-08-31 15:03:35,258.258 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:03:35,261.261 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:03:35,266.266 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:03:35,271.271 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:03:37,311.311 INFO    ] ================================================
[2026-08-31 15:03:37,327.327 INFO    ] Launching Daemon at Mon Aug 31 15:03:37 IST 2026
[2026-08-31 15:03:37,337.337 INFO    ] ================================================
[2026-08-31 15:03:37,907.907 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:03:37
[2026-08-31 15:03:38,496.496 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:03:38,752.752 INFO    ] Initializing speech engine...
[2026-08-31 15:03:38,761.761 INFO    ] 2026-08-31 15:03:38
[2026-08-31 15:03:39,055.055 INFO    ] 2026-08-31 15:03:39
[2026-08-31 15:03:39,093.093 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:03:39,290.290 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:03:39,303.303 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:03:39,466.466 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:03:39,474.474 INFO    ] time= 31/08/2026 15:03:39
[2026-08-31 15:03:39,481.481 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:03:39,488.488 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:03:39,638.638 INFO    ] No existing commands found in stream
[2026-08-31 15:03:44,668.668 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:03:44,671.671 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-08-31 15:03:49,050.050 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 15:03:49,053.053 INFO    ] Checking for system updates...
[2026-08-31 15:03:49,093.093 INFO    ] 200
[2026-08-31 15:03:49,096.096 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:03:49,148.148 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:03:49,150.150 INFO    ] No update needed
[2026-08-31 15:03:49,152.152 INFO    ] Checking for camera pi updates...
[2026-08-31 15:03:49,186.186 INFO    ] 200
[2026-08-31 15:03:49,188.188 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:03:49,228.228 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:03:49,279.279 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:03:49,281.281 INFO    ] No camera update needed
[2026-08-31 15:03:49,283.283 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:03:49,286.286 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:03:49,291.291 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:03:49,296.296 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:03:51,339.339 INFO    ] ================================================
[2026-08-31 15:03:51,354.354 INFO    ] Launching Daemon at Mon Aug 31 15:03:51 IST 2026
[2026-08-31 15:03:51,365.365 INFO    ] ================================================
[2026-08-31 15:03:51,937.937 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:03:51
[2026-08-31 15:03:52,524.524 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:03:52,783.783 INFO    ] Initializing speech engine...
[2026-08-31 15:03:52,801.801 INFO    ] 2026-08-31 15:03:52
[2026-08-31 15:03:53,049.049 INFO    ] 2026-08-31 15:03:53
[2026-08-31 15:03:53,083.083 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:03:53,340.340 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:03:53,346.346 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:03:53,541.541 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:03:53,600.600 INFO    ] time= 31/08/2026 15:03:53
[2026-08-31 15:03:53,607.607 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:03:53,625.625 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:03:53,753.753 INFO    ] No existing commands found in stream
[2026-08-31 15:03:58,767.767 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:03:58,770.770 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-08-31 15:03:59,815.815 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 15:03:59,818.818 INFO    ] Checking for system updates...
[2026-08-31 15:03:59,854.854 INFO    ] 200
[2026-08-31 15:03:59,857.857 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:03:59,911.911 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:03:59,914.914 INFO    ] No update needed
[2026-08-31 15:03:59,916.916 INFO    ] Checking for camera pi updates...
[2026-08-31 15:03:59,951.951 INFO    ] 200
[2026-08-31 15:03:59,953.953 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:03:59,994.994 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:04:00,077.077 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:04:00,080.080 INFO    ] No camera update needed
[2026-08-31 15:04:00,083.083 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:04:00,086.086 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:04:00,092.092 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:04:00,098.098 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:04:02,155.155 INFO    ] ================================================
[2026-08-31 15:04:02,175.175 INFO    ] Launching Daemon at Mon Aug 31 15:04:02 IST 2026
[2026-08-31 15:04:02,191.191 INFO    ] ================================================
[2026-08-31 15:04:02,871.871 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:04:02
[2026-08-31 15:04:03,556.556 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:04:03,863.863 INFO    ] Initializing speech engine...
[2026-08-31 15:04:03,875.875 INFO    ] 2026-08-31 15:04:03
[2026-08-31 15:04:04,148.148 INFO    ] 2026-08-31 15:04:04
[2026-08-31 15:04:04,203.203 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:04:04,429.429 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:04:04,436.436 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:04:04,665.665 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:04:04,695.695 INFO    ] time= 31/08/2026 15:04:04
[2026-08-31 15:04:04,713.713 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:04:04,744.744 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:04:04,851.851 INFO    ] No existing commands found in stream
[2026-08-31 15:04:09,879.879 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:04:09,882.882 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-08-31 15:04:13,256.256 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 15:04:13,259.259 INFO    ] Checking for system updates...
[2026-08-31 15:04:13,300.300 INFO    ] 200
[2026-08-31 15:04:13,303.303 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:04:13,370.370 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:04:13,373.373 INFO    ] No update needed
[2026-08-31 15:04:13,376.376 INFO    ] Checking for camera pi updates...
[2026-08-31 15:04:13,413.413 INFO    ] 200
[2026-08-31 15:04:13,416.416 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:04:13,457.457 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:04:13,540.540 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:04:13,542.542 INFO    ] No camera update needed
[2026-08-31 15:04:13,545.545 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:04:13,547.547 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:04:13,552.552 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:04:13,557.557 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:04:15,597.597 INFO    ] ================================================
[2026-08-31 15:04:15,613.613 INFO    ] Launching Daemon at Mon Aug 31 15:04:15 IST 2026
[2026-08-31 15:04:15,624.624 INFO    ] ================================================
[2026-08-31 15:04:16,188.188 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:04:16
[2026-08-31 15:04:16,770.770 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:04:17,043.043 INFO    ] Initializing speech engine...
[2026-08-31 15:04:17,050.050 INFO    ] 2026-08-31 15:04:17
[2026-08-31 15:04:17,298.298 INFO    ] 2026-08-31 15:04:17
[2026-08-31 15:04:17,333.333 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:04:17,535.535 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:04:17,594.594 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:04:17,734.734 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:04:17,771.771 INFO    ] time= 31/08/2026 15:04:17
[2026-08-31 15:04:17,841.841 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:04:17,871.871 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:04:18,026.026 INFO    ] No existing commands found in stream
[2026-08-31 15:04:23,044.044 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:04:23,047.047 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-08-31 15:04:23,891.891 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 15:04:23,893.893 INFO    ] Checking for system updates...
[2026-08-31 15:04:23,929.929 INFO    ] 200
[2026-08-31 15:04:23,932.932 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:04:23,992.992 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:04:23,994.994 INFO    ] No update needed
[2026-08-31 15:04:23,997.997 INFO    ] Checking for camera pi updates...
[2026-08-31 15:04:24,030.030 INFO    ] 200
[2026-08-31 15:04:24,033.033 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:04:24,078.078 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:04:24,162.162 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:04:24,164.164 INFO    ] No camera update needed
[2026-08-31 15:04:24,167.167 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:04:24,169.169 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:04:24,175.175 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:04:24,180.180 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:04:26,220.220 INFO    ] ================================================
[2026-08-31 15:04:26,235.235 INFO    ] Launching Daemon at Mon Aug 31 15:04:26 IST 2026
[2026-08-31 15:04:26,246.246 INFO    ] ================================================
[2026-08-31 15:04:26,842.842 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:04:26
[2026-08-31 15:04:27,438.438 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:04:27,715.715 INFO    ] Initializing speech engine...
[2026-08-31 15:04:27,722.722 INFO    ] 2026-08-31 15:04:27
[2026-08-31 15:04:27,983.983 INFO    ] 2026-08-31 15:04:27
[2026-08-31 15:04:28,037.037 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:04:28,257.257 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:04:28,266.266 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:04:28,400.400 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:04:28,439.439 INFO    ] time= 31/08/2026 15:04:28
[2026-08-31 15:04:28,488.488 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:04:28,529.529 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:04:28,656.656 INFO    ] No existing commands found in stream
[2026-08-31 15:04:33,683.683 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:04:33,686.686 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-08-31 15:04:35,136.136 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 15:04:35,139.139 INFO    ] Checking for system updates...
[2026-08-31 15:04:35,174.174 INFO    ] 200
[2026-08-31 15:04:35,177.177 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:04:35,231.231 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:04:35,233.233 INFO    ] No update needed
[2026-08-31 15:04:35,236.236 INFO    ] Checking for camera pi updates...
[2026-08-31 15:04:35,269.269 INFO    ] 200
[2026-08-31 15:04:35,272.272 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:04:35,313.313 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:04:35,389.389 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:04:35,391.391 INFO    ] No camera update needed
[2026-08-31 15:04:35,393.393 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:04:35,395.395 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:04:35,401.401 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:04:35,406.406 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:04:37,446.446 INFO    ] ================================================
[2026-08-31 15:04:37,461.461 INFO    ] Launching Daemon at Mon Aug 31 15:04:37 IST 2026
[2026-08-31 15:04:37,472.472 INFO    ] ================================================
[2026-08-31 15:04:38,038.038 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:04:38
[2026-08-31 15:04:38,619.619 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:04:38,888.888 INFO    ] Initializing speech engine...
[2026-08-31 15:04:38,898.898 INFO    ] 2026-08-31 15:04:38
[2026-08-31 15:04:39,147.147 INFO    ] 2026-08-31 15:04:39
[2026-08-31 15:04:39,182.182 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:04:39,383.383 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:04:39,442.442 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:04:39,663.663 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:04:39,713.713 INFO    ] time= 31/08/2026 15:04:39
[2026-08-31 15:04:39,719.719 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:04:39,736.736 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:04:39,868.868 INFO    ] No existing commands found in stream
[2026-08-31 15:04:44,882.882 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:04:44,885.885 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-08-31 15:04:45,730.730 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 15:04:45,733.733 INFO    ] Checking for system updates...
[2026-08-31 15:04:45,768.768 INFO    ] 200
[2026-08-31 15:04:45,771.771 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:04:45,830.830 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:04:45,832.832 INFO    ] No update needed
[2026-08-31 15:04:45,834.834 INFO    ] Checking for camera pi updates...
[2026-08-31 15:04:45,868.868 INFO    ] 200
[2026-08-31 15:04:45,870.870 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:04:45,911.911 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:04:46,012.012 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:04:46,015.015 INFO    ] No camera update needed
[2026-08-31 15:04:46,018.018 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:04:46,021.021 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:04:46,027.027 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:04:46,032.032 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:04:48,071.071 INFO    ] ================================================
[2026-08-31 15:04:48,086.086 INFO    ] Launching Daemon at Mon Aug 31 15:04:48 IST 2026
[2026-08-31 15:04:48,097.097 INFO    ] ================================================
[2026-08-31 15:04:48,676.676 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:04:48
[2026-08-31 15:04:49,273.273 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:04:49,545.545 INFO    ] Initializing speech engine...
[2026-08-31 15:04:49,555.555 INFO    ] 2026-08-31 15:04:49
[2026-08-31 15:04:49,816.816 INFO    ] 2026-08-31 15:04:49
[2026-08-31 15:04:49,870.870 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:04:50,155.155 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:04:50,163.163 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:04:50,353.353 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:04:50,371.371 INFO    ] time= 31/08/2026 15:04:50
[2026-08-31 15:04:50,380.380 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:04:50,406.406 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:04:50,525.525 INFO    ] No existing commands found in stream
[2026-08-31 15:04:55,549.549 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:04:55,552.552 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-08-31 15:04:58,747.747 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 15:04:58,750.750 INFO    ] Checking for system updates...
[2026-08-31 15:04:58,790.790 INFO    ] 200
[2026-08-31 15:04:58,793.793 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:04:58,844.844 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:04:58,847.847 INFO    ] No update needed
[2026-08-31 15:04:58,850.850 INFO    ] Checking for camera pi updates...
[2026-08-31 15:04:58,889.889 INFO    ] 200
[2026-08-31 15:04:58,892.892 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:04:58,932.932 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:04:59,018.018 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:04:59,020.020 INFO    ] No camera update needed
[2026-08-31 15:04:59,023.023 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:04:59,026.026 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:04:59,032.032 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:04:59,038.038 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:05:01,079.079 INFO    ] ================================================
[2026-08-31 15:05:01,095.095 INFO    ] Launching Daemon at Mon Aug 31 15:05:01 IST 2026
[2026-08-31 15:05:01,105.105 INFO    ] ================================================
[2026-08-31 15:05:01,676.676 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:05:01
[2026-08-31 15:05:02,537.537 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:05:02,935.935 INFO    ] Initializing speech engine...
[2026-08-31 15:05:02,944.944 INFO    ] 2026-08-31 15:05:02
[2026-08-31 15:05:03,228.228 INFO    ] 2026-08-31 15:05:03
[2026-08-31 15:05:03,294.294 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:05:03,548.548 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:05:03,556.556 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:05:03,833.833 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:05:03,877.877 INFO    ] time= 31/08/2026 15:05:03
[2026-08-31 15:05:03,898.898 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:05:03,908.908 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:05:04,016.016 INFO    ] No existing commands found in stream
[2026-08-31 15:05:09,041.041 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:05:09,044.044 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-08-31 15:05:12,631.631 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 15:05:12,634.634 INFO    ] Checking for system updates...
[2026-08-31 15:05:12,670.670 INFO    ] 200
[2026-08-31 15:05:12,672.672 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:05:12,732.732 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:05:12,734.734 INFO    ] No update needed
[2026-08-31 15:05:12,736.736 INFO    ] Checking for camera pi updates...
[2026-08-31 15:05:12,774.774 INFO    ] 200
[2026-08-31 15:05:12,776.776 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:05:12,821.821 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:05:12,901.901 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:05:12,903.903 INFO    ] No camera update needed
[2026-08-31 15:05:12,906.906 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:05:12,908.908 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:05:12,913.913 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:05:12,918.918 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:05:14,958.958 INFO    ] ================================================
[2026-08-31 15:05:14,972.972 INFO    ] Launching Daemon at Mon Aug 31 15:05:14 IST 2026
[2026-08-31 15:05:14,983.983 INFO    ] ================================================
[2026-08-31 15:05:15,563.563 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:05:15
[2026-08-31 15:05:16,171.171 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:05:16,442.442 INFO    ] Initializing speech engine...
[2026-08-31 15:05:16,453.453 INFO    ] 2026-08-31 15:05:16
[2026-08-31 15:05:16,700.700 INFO    ] 2026-08-31 15:05:16
[2026-08-31 15:05:16,735.735 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:05:16,986.986 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:05:16,997.997 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:05:17,141.141 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:05:17,200.200 INFO    ] time= 31/08/2026 15:05:17
[2026-08-31 15:05:17,255.255 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:05:17,264.264 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:05:17,408.408 INFO    ] No existing commands found in stream
[2026-08-31 15:05:22,425.425 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:05:22,428.428 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-08-31 15:05:23,933.933 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 15:05:23,935.935 INFO    ] Checking for system updates...
[2026-08-31 15:05:23,972.972 INFO    ] 200
[2026-08-31 15:05:23,974.974 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:05:24,036.036 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:05:24,039.039 INFO    ] No update needed
[2026-08-31 15:05:24,041.041 INFO    ] Checking for camera pi updates...
[2026-08-31 15:05:24,078.078 INFO    ] 200
[2026-08-31 15:05:24,081.081 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:05:24,122.122 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:05:24,216.216 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:05:24,219.219 INFO    ] No camera update needed
[2026-08-31 15:05:24,221.221 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:05:24,223.223 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:05:24,229.229 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:05:24,233.233 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:05:26,273.273 INFO    ] ================================================
[2026-08-31 15:05:26,288.288 INFO    ] Launching Daemon at Mon Aug 31 15:05:26 IST 2026
[2026-08-31 15:05:26,298.298 INFO    ] ================================================
[2026-08-31 15:05:26,967.967 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:05:26
[2026-08-31 15:05:27,640.640 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:05:27,923.923 INFO    ] Initializing speech engine...
[2026-08-31 15:05:27,936.936 INFO    ] 2026-08-31 15:05:27
[2026-08-31 15:05:28,209.209 INFO    ] 2026-08-31 15:05:28
[2026-08-31 15:05:28,245.245 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:05:28,471.471 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:05:28,499.499 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:05:28,701.701 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:05:28,734.734 INFO    ] time= 31/08/2026 15:05:28
[2026-08-31 15:05:28,798.798 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:05:28,854.854 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:05:28,996.996 INFO    ] No existing commands found in stream
[2026-08-31 15:05:34,016.016 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:05:34,019.019 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-08-31 15:05:37,662.662 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 15:05:37,665.665 INFO    ] Checking for system updates...
[2026-08-31 15:05:37,702.702 INFO    ] 200
[2026-08-31 15:05:37,704.704 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:05:37,766.766 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:05:37,769.769 INFO    ] No update needed
[2026-08-31 15:05:37,771.771 INFO    ] Checking for camera pi updates...
[2026-08-31 15:05:37,804.804 INFO    ] 200
[2026-08-31 15:05:37,806.806 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:05:37,846.846 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:05:37,934.934 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:05:37,937.937 INFO    ] No camera update needed
[2026-08-31 15:05:37,939.939 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:05:37,942.942 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:05:37,947.947 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:05:37,952.952 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:05:39,993.993 INFO    ] ================================================
[2026-08-31 15:05:40,008.008 INFO    ] Launching Daemon at Mon Aug 31 15:05:40 IST 2026
[2026-08-31 15:05:40,018.018 INFO    ] ================================================
[2026-08-31 15:05:40,642.642 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:05:40
[2026-08-31 15:05:41,279.279 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:05:41,586.586 INFO    ] Initializing speech engine...
[2026-08-31 15:05:41,596.596 INFO    ] 2026-08-31 15:05:41
[2026-08-31 15:05:41,882.882 INFO    ] 2026-08-31 15:05:41
[2026-08-31 15:05:41,922.922 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:05:42,203.203 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:05:42,213.213 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:05:42,409.409 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:05:42,426.426 INFO    ] time= 31/08/2026 15:05:42
[2026-08-31 15:05:42,446.446 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:05:42,465.465 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:05:42,589.589 INFO    ] No existing commands found in stream
[2026-08-31 15:05:47,620.620 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:05:47,623.623 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-08-31 15:05:51,275.275 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 15:05:51,278.278 INFO    ] Checking for system updates...
[2026-08-31 15:05:51,314.314 INFO    ] 200
[2026-08-31 15:05:51,317.317 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:05:51,370.370 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:05:51,372.372 INFO    ] No update needed
[2026-08-31 15:05:51,375.375 INFO    ] Checking for camera pi updates...
[2026-08-31 15:05:51,412.412 INFO    ] 200
[2026-08-31 15:05:51,414.414 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:05:51,455.455 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:05:51,529.529 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:05:51,531.531 INFO    ] No camera update needed
[2026-08-31 15:05:51,534.534 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:05:51,536.536 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:05:51,541.541 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:05:51,546.546 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:05:53,586.586 INFO    ] ================================================
[2026-08-31 15:05:53,601.601 INFO    ] Launching Daemon at Mon Aug 31 15:05:53 IST 2026
[2026-08-31 15:05:53,612.612 INFO    ] ================================================
[2026-08-31 15:05:54,267.267 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:05:54
[2026-08-31 15:05:54,940.940 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:05:55,248.248 INFO    ] Initializing speech engine...
[2026-08-31 15:05:55,262.262 INFO    ] 2026-08-31 15:05:55
[2026-08-31 15:05:55,541.541 INFO    ] 2026-08-31 15:05:55
[2026-08-31 15:05:55,606.606 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:05:55,793.793 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:05:55,796.796 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:05:56,007.007 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:05:56,053.053 INFO    ] time= 31/08/2026 15:05:56
[2026-08-31 15:05:56,113.113 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:05:56,143.143 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:05:56,293.293 INFO    ] No existing commands found in stream
[2026-08-31 15:06:01,311.311 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:06:01,314.314 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-08-31 15:06:04,991.991 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 15:06:04,994.994 INFO    ] Checking for system updates...
[2026-08-31 15:06:05,035.035 INFO    ] 200
[2026-08-31 15:06:05,038.038 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:06:05,096.096 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:06:05,099.099 INFO    ] No update needed
[2026-08-31 15:06:05,101.101 INFO    ] Checking for camera pi updates...
[2026-08-31 15:06:05,137.137 INFO    ] 200
[2026-08-31 15:06:05,140.140 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:06:05,183.183 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:06:05,241.241 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:06:05,243.243 INFO    ] No camera update needed
[2026-08-31 15:06:05,246.246 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:06:05,248.248 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:06:05,253.253 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:06:05,258.258 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:06:07,299.299 INFO    ] ================================================
[2026-08-31 15:06:07,314.314 INFO    ] Launching Daemon at Mon Aug 31 15:06:07 IST 2026
[2026-08-31 15:06:07,324.324 INFO    ] ================================================
[2026-08-31 15:06:07,892.892 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:06:07
[2026-08-31 15:06:08,472.472 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:06:08,739.739 INFO    ] Initializing speech engine...
[2026-08-31 15:06:08,758.758 INFO    ] 2026-08-31 15:06:08
[2026-08-31 15:06:09,022.022 INFO    ] 2026-08-31 15:06:09
[2026-08-31 15:06:09,058.058 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:06:09,340.340 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:06:09,350.350 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:06:09,578.578 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:06:09,623.623 INFO    ] time= 31/08/2026 15:06:09
[2026-08-31 15:06:09,641.641 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:06:09,647.647 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:06:09,805.805 INFO    ] No existing commands found in stream
[2026-08-31 15:06:14,821.821 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:06:14,824.824 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-08-31 15:06:17,359.359 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 15:06:17,361.361 INFO    ] Checking for system updates...
[2026-08-31 15:06:17,397.397 INFO    ] 200
[2026-08-31 15:06:17,399.399 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:06:17,462.462 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:06:17,465.465 INFO    ] No update needed
[2026-08-31 15:06:17,467.467 INFO    ] Checking for camera pi updates...
[2026-08-31 15:06:17,504.504 INFO    ] 200
[2026-08-31 15:06:17,506.506 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:06:17,547.547 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:06:17,728.728 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:06:17,730.730 INFO    ] No camera update needed
[2026-08-31 15:06:17,733.733 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:06:17,735.735 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:06:17,740.740 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:06:17,745.745 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:06:19,785.785 INFO    ] ================================================
[2026-08-31 15:06:19,800.800 INFO    ] Launching Daemon at Mon Aug 31 15:06:19 IST 2026
[2026-08-31 15:06:19,811.811 INFO    ] ================================================
[2026-08-31 15:06:20,444.444 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:06:20
[2026-08-31 15:06:21,046.046 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:06:21,346.346 INFO    ] Initializing speech engine...
[2026-08-31 15:06:21,355.355 INFO    ] 2026-08-31 15:06:21
[2026-08-31 15:06:21,628.628 INFO    ] 2026-08-31 15:06:21
[2026-08-31 15:06:21,683.683 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:06:21,964.964 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:06:21,972.972 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:06:22,169.169 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:06:22,187.187 INFO    ] time= 31/08/2026 15:06:22
[2026-08-31 15:06:22,196.196 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:06:22,223.223 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:06:22,330.330 INFO    ] No existing commands found in stream
[2026-08-31 15:06:27,347.347 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:06:27,350.350 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-08-31 15:06:29,934.934 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 15:06:29,937.937 INFO    ] Checking for system updates...
[2026-08-31 15:06:29,974.974 INFO    ] 200
[2026-08-31 15:06:29,976.976 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:06:30,035.035 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:06:30,038.038 INFO    ] No update needed
[2026-08-31 15:06:30,041.041 INFO    ] Checking for camera pi updates...
[2026-08-31 15:06:30,075.075 INFO    ] 200
[2026-08-31 15:06:30,079.079 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:06:30,125.125 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:06:30,209.209 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:06:30,211.211 INFO    ] No camera update needed
[2026-08-31 15:06:30,213.213 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:06:30,216.216 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:06:30,221.221 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:06:30,226.226 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:06:32,266.266 INFO    ] ================================================
[2026-08-31 15:06:32,283.283 INFO    ] Launching Daemon at Mon Aug 31 15:06:32 IST 2026
[2026-08-31 15:06:32,294.294 INFO    ] ================================================
[2026-08-31 15:06:32,968.968 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:06:32
[2026-08-31 15:06:33,623.623 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:06:33,922.922 INFO    ] Initializing speech engine...
[2026-08-31 15:06:33,933.933 INFO    ] 2026-08-31 15:06:33
[2026-08-31 15:06:34,198.198 INFO    ] 2026-08-31 15:06:34
[2026-08-31 15:06:34,255.255 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:06:34,538.538 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:06:34,544.544 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:06:34,737.737 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:06:34,744.744 INFO    ] time= 31/08/2026 15:06:34
[2026-08-31 15:06:34,765.765 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:06:34,793.793 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:06:34,921.921 INFO    ] No existing commands found in stream
[2026-08-31 15:06:39,947.947 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:06:39,950.950 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-08-31 15:06:41,452.452 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 15:06:41,455.455 INFO    ] Checking for system updates...
[2026-08-31 15:06:41,493.493 INFO    ] 200
[2026-08-31 15:06:41,495.495 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:06:41,553.553 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:06:41,556.556 INFO    ] No update needed
[2026-08-31 15:06:41,558.558 INFO    ] Checking for camera pi updates...
[2026-08-31 15:06:41,592.592 INFO    ] 200
[2026-08-31 15:06:41,595.595 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:06:41,638.638 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:06:41,719.719 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:06:41,721.721 INFO    ] No camera update needed
[2026-08-31 15:06:41,724.724 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:06:41,726.726 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:06:41,732.732 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:06:41,736.736 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:06:43,775.775 INFO    ] ================================================
[2026-08-31 15:06:43,791.791 INFO    ] Launching Daemon at Mon Aug 31 15:06:43 IST 2026
[2026-08-31 15:06:43,802.802 INFO    ] ================================================
[2026-08-31 15:06:44,439.439 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:06:44
[2026-08-31 15:06:45,095.095 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:06:45,396.396 INFO    ] Initializing speech engine...
[2026-08-31 15:06:45,410.410 INFO    ] 2026-08-31 15:06:45
[2026-08-31 15:06:45,709.709 INFO    ] 2026-08-31 15:06:45
[2026-08-31 15:06:45,788.788 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:06:46,069.069 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:06:46,080.080 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:06:46,259.259 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:06:46,320.320 INFO    ] time= 31/08/2026 15:06:46
[2026-08-31 15:06:46,359.359 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:06:46,412.412 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:06:46,551.551 INFO    ] No existing commands found in stream
[2026-08-31 15:06:51,578.578 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:06:51,581.581 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-08-31 15:06:54,719.719 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 15:06:54,722.722 INFO    ] Checking for system updates...
[2026-08-31 15:06:54,759.759 INFO    ] 200
[2026-08-31 15:06:54,762.762 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:06:54,814.814 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:06:54,816.816 INFO    ] No update needed
[2026-08-31 15:06:54,819.819 INFO    ] Checking for camera pi updates...
[2026-08-31 15:06:54,856.856 INFO    ] 200
[2026-08-31 15:06:54,859.859 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:06:54,902.902 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:06:54,977.977 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:06:54,980.980 INFO    ] No camera update needed
[2026-08-31 15:06:54,982.982 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:06:54,984.984 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:06:54,990.990 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:06:54,995.995 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:06:57,035.035 INFO    ] ================================================
[2026-08-31 15:06:57,051.051 INFO    ] Launching Daemon at Mon Aug 31 15:06:57 IST 2026
[2026-08-31 15:06:57,062.062 INFO    ] ================================================
[2026-08-31 15:06:57,697.697 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:06:57
[2026-08-31 15:06:58,350.350 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:06:58,643.643 INFO    ] Initializing speech engine...
[2026-08-31 15:06:58,652.652 INFO    ] 2026-08-31 15:06:58
[2026-08-31 15:06:58,921.921 INFO    ] 2026-08-31 15:06:58
[2026-08-31 15:06:58,976.976 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:06:59,226.226 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:06:59,234.234 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:06:59,463.463 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:06:59,470.470 INFO    ] time= 31/08/2026 15:06:59
[2026-08-31 15:06:59,489.489 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:06:59,517.517 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:06:59,659.659 INFO    ] No existing commands found in stream
[2026-08-31 15:07:04,689.689 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:07:04,692.692 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-08-31 15:07:09,034.034 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 15:07:09,037.037 INFO    ] Checking for system updates...
[2026-08-31 15:07:09,073.073 INFO    ] 200
[2026-08-31 15:07:09,076.076 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:07:09,132.132 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:07:09,134.134 INFO    ] No update needed
[2026-08-31 15:07:09,136.136 INFO    ] Checking for camera pi updates...
[2026-08-31 15:07:09,173.173 INFO    ] 200
[2026-08-31 15:07:09,176.176 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:07:09,220.220 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:07:09,322.322 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:07:09,324.324 INFO    ] No camera update needed
[2026-08-31 15:07:09,327.327 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:07:09,329.329 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:07:09,334.334 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:07:09,339.339 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:07:11,381.381 INFO    ] ================================================
[2026-08-31 15:07:11,397.397 INFO    ] Launching Daemon at Mon Aug 31 15:07:11 IST 2026
[2026-08-31 15:07:11,407.407 INFO    ] ================================================
[2026-08-31 15:07:11,973.973 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:07:11
[2026-08-31 15:07:12,556.556 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:07:12,828.828 INFO    ] Initializing speech engine...
[2026-08-31 15:07:12,837.837 INFO    ] 2026-08-31 15:07:12
[2026-08-31 15:07:13,092.092 INFO    ] 2026-08-31 15:07:13
[2026-08-31 15:07:13,122.122 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:07:13,390.390 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:07:13,397.397 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:07:13,620.620 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:07:13,634.634 INFO    ] time= 31/08/2026 15:07:13
[2026-08-31 15:07:13,652.652 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:07:13,680.680 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:07:13,795.795 INFO    ] No existing commands found in stream
[2026-08-31 15:07:18,815.815 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:07:18,818.818 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-08-31 15:07:21,953.953 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 15:07:21,956.956 INFO    ] Checking for system updates...
[2026-08-31 15:07:21,996.996 INFO    ] 200
[2026-08-31 15:07:21,998.998 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:07:22,060.060 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:07:22,063.063 INFO    ] No update needed
[2026-08-31 15:07:22,065.065 INFO    ] Checking for camera pi updates...
[2026-08-31 15:07:22,102.102 INFO    ] 200
[2026-08-31 15:07:22,105.105 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:07:22,150.150 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:07:22,209.209 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:07:22,212.212 INFO    ] No camera update needed
[2026-08-31 15:07:22,214.214 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:07:22,216.216 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:07:22,222.222 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:07:22,227.227 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:07:24,268.268 INFO    ] ================================================
[2026-08-31 15:07:24,283.283 INFO    ] Launching Daemon at Mon Aug 31 15:07:24 IST 2026
[2026-08-31 15:07:24,294.294 INFO    ] ================================================
[2026-08-31 15:07:24,864.864 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:07:24
[2026-08-31 15:07:25,448.448 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:07:25,694.694 INFO    ] Initializing speech engine...
[2026-08-31 15:07:25,708.708 INFO    ] 2026-08-31 15:07:25
[2026-08-31 15:07:25,970.970 INFO    ] 2026-08-31 15:07:25
[2026-08-31 15:07:26,005.005 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:07:26,256.256 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:07:26,265.265 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:07:26,469.469 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:07:26,519.519 INFO    ] time= 31/08/2026 15:07:26
[2026-08-31 15:07:26,531.531 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:07:26,548.548 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:07:26,679.679 INFO    ] No existing commands found in stream
[2026-08-31 15:07:31,698.698 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:07:31,700.700 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-08-31 15:07:32,213.213 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 15:07:32,216.216 INFO    ] Checking for system updates...
[2026-08-31 15:07:32,255.255 INFO    ] 200
[2026-08-31 15:07:32,258.258 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:07:32,315.315 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:07:32,318.318 INFO    ] No update needed
[2026-08-31 15:07:32,321.321 INFO    ] Checking for camera pi updates...
[2026-08-31 15:07:32,361.361 INFO    ] 200
[2026-08-31 15:07:32,363.363 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:07:32,409.409 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:07:32,496.496 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:07:32,499.499 INFO    ] No camera update needed
[2026-08-31 15:07:32,502.502 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:07:32,504.504 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:07:32,510.510 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:07:32,516.516 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:07:34,556.556 INFO    ] ================================================
[2026-08-31 15:07:34,572.572 INFO    ] Launching Daemon at Mon Aug 31 15:07:34 IST 2026
[2026-08-31 15:07:34,583.583 INFO    ] ================================================
[2026-08-31 15:07:35,150.150 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:07:35
[2026-08-31 15:07:35,733.733 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:07:35,978.978 INFO    ] Initializing speech engine...
[2026-08-31 15:07:35,986.986 INFO    ] 2026-08-31 15:07:35
[2026-08-31 15:07:36,259.259 INFO    ] 2026-08-31 15:07:36
[2026-08-31 15:07:36,296.296 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:07:36,554.554 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:07:36,564.564 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:07:36,786.786 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:07:36,826.826 INFO    ] time= 31/08/2026 15:07:36
[2026-08-31 15:07:36,832.832 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:07:36,852.852 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:07:36,981.981 INFO    ] No existing commands found in stream
[2026-08-31 15:07:41,996.996 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:07:41,999.999 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-08-31 15:07:43,554.554 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 15:07:43,557.557 INFO    ] Checking for system updates...
[2026-08-31 15:07:43,594.594 INFO    ] 200
[2026-08-31 15:07:43,597.597 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:07:43,651.651 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:07:43,654.654 INFO    ] No update needed
[2026-08-31 15:07:43,657.657 INFO    ] Checking for camera pi updates...
[2026-08-31 15:07:43,695.695 INFO    ] 200
[2026-08-31 15:07:43,698.698 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:07:43,738.738 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:07:43,819.819 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:07:43,822.822 INFO    ] No camera update needed
[2026-08-31 15:07:43,824.824 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:07:43,826.826 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:07:43,832.832 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:07:43,837.837 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:07:45,879.879 INFO    ] ================================================
[2026-08-31 15:07:45,895.895 INFO    ] Launching Daemon at Mon Aug 31 15:07:45 IST 2026
[2026-08-31 15:07:45,906.906 INFO    ] ================================================
[2026-08-31 15:07:46,488.488 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:07:46
[2026-08-31 15:07:47,083.083 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:07:47,355.355 INFO    ] Initializing speech engine...
[2026-08-31 15:07:47,365.365 INFO    ] 2026-08-31 15:07:47
[2026-08-31 15:07:47,626.626 INFO    ] 2026-08-31 15:07:47
[2026-08-31 15:07:47,679.679 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:07:47,905.905 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:07:47,910.910 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:07:48,041.041 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:07:48,088.088 INFO    ] time= 31/08/2026 15:07:48
[2026-08-31 15:07:48,148.148 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:07:48,175.175 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:07:48,333.333 INFO    ] No existing commands found in stream
[2026-08-31 15:07:53,357.357 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:07:53,360.360 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-08-31 15:07:54,898.898 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 15:07:54,901.901 INFO    ] Checking for system updates...
[2026-08-31 15:07:54,941.941 INFO    ] 200
[2026-08-31 15:07:54,943.943 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:07:54,996.996 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:07:54,999.999 INFO    ] No update needed
[2026-08-31 15:07:55,001.001 INFO    ] Checking for camera pi updates...
[2026-08-31 15:07:55,038.038 INFO    ] 200
[2026-08-31 15:07:55,041.041 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:07:55,082.082 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:07:55,160.160 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:07:55,163.163 INFO    ] No camera update needed
[2026-08-31 15:07:55,165.165 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:07:55,168.168 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:07:55,173.173 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:07:55,178.178 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:07:57,220.220 INFO    ] ================================================
[2026-08-31 15:07:57,236.236 INFO    ] Launching Daemon at Mon Aug 31 15:07:57 IST 2026
[2026-08-31 15:07:57,247.247 INFO    ] ================================================
[2026-08-31 15:07:57,901.901 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:07:57
[2026-08-31 15:07:58,576.576 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:07:58,876.876 INFO    ] Initializing speech engine...
[2026-08-31 15:07:58,885.885 INFO    ] 2026-08-31 15:07:58
[2026-08-31 15:07:59,161.161 INFO    ] 2026-08-31 15:07:59
[2026-08-31 15:07:59,219.219 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:07:59,467.467 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:07:59,472.472 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:07:59,703.703 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:07:59,710.710 INFO    ] time= 31/08/2026 15:07:59
[2026-08-31 15:07:59,728.728 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:07:59,751.751 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:07:59,870.870 INFO    ] No existing commands found in stream
[2026-08-31 15:08:04,900.900 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:08:04,903.903 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-08-31 15:08:06,336.336 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 15:08:06,340.340 INFO    ] Checking for system updates...
[2026-08-31 15:08:06,386.386 INFO    ] 200
[2026-08-31 15:08:06,389.389 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:08:06,460.460 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:08:06,462.462 INFO    ] No update needed
[2026-08-31 15:08:06,464.464 INFO    ] Checking for camera pi updates...
[2026-08-31 15:08:06,497.497 INFO    ] 200
[2026-08-31 15:08:06,500.500 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:08:06,542.542 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:08:06,641.641 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:08:06,644.644 INFO    ] No camera update needed
[2026-08-31 15:08:06,646.646 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:08:06,648.648 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:08:06,654.654 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:08:06,659.659 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:08:08,699.699 INFO    ] ================================================
[2026-08-31 15:08:08,715.715 INFO    ] Launching Daemon at Mon Aug 31 15:08:08 IST 2026
[2026-08-31 15:08:08,726.726 INFO    ] ================================================
[2026-08-31 15:08:09,296.296 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:08:09
[2026-08-31 15:08:09,881.881 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:08:10,141.141 INFO    ] Initializing speech engine...
[2026-08-31 15:08:10,161.161 INFO    ] 2026-08-31 15:08:10
[2026-08-31 15:08:10,411.411 INFO    ] 2026-08-31 15:08:10
[2026-08-31 15:08:10,447.447 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:08:10,705.705 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:08:10,714.714 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:08:10,921.921 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:08:10,976.976 INFO    ] time= 31/08/2026 15:08:10
[2026-08-31 15:08:10,985.985 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:08:11,000.000 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:08:11,111.111 INFO    ] No existing commands found in stream
[2026-08-31 15:08:16,142.142 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:08:16,145.145 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-08-31 15:08:19,387.387 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 15:08:19,390.390 INFO    ] Checking for system updates...
[2026-08-31 15:08:19,427.427 INFO    ] 200
[2026-08-31 15:08:19,430.430 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:08:19,994.994 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:08:19,997.997 INFO    ] No update needed
[2026-08-31 15:08:20,000.000 INFO    ] Checking for camera pi updates...
[2026-08-31 15:08:20,040.040 INFO    ] 200
[2026-08-31 15:08:20,043.043 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:08:20,091.091 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:08:20,273.273 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:08:20,276.276 INFO    ] No camera update needed
[2026-08-31 15:08:20,279.279 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:08:20,281.281 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:08:20,288.288 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:08:20,294.294 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:08:22,336.336 INFO    ] ================================================
[2026-08-31 15:08:22,352.352 INFO    ] Launching Daemon at Mon Aug 31 15:08:22 IST 2026
[2026-08-31 15:08:22,363.363 INFO    ] ================================================
[2026-08-31 15:08:22,947.947 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:08:22
[2026-08-31 15:08:23,548.548 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:08:23,827.827 INFO    ] Initializing speech engine...
[2026-08-31 15:08:23,834.834 INFO    ] 2026-08-31 15:08:23
[2026-08-31 15:08:24,097.097 INFO    ] 2026-08-31 15:08:24
[2026-08-31 15:08:24,127.127 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:08:24,380.380 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:08:24,386.386 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:08:24,620.620 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:08:24,644.644 INFO    ] time= 31/08/2026 15:08:24
[2026-08-31 15:08:24,650.650 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:08:24,671.671 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:08:24,801.801 INFO    ] No existing commands found in stream
[2026-08-31 15:08:29,819.819 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:08:29,822.822 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-08-31 15:08:32,527.527 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 15:08:32,530.530 INFO    ] Checking for system updates...
[2026-08-31 15:08:32,575.575 INFO    ] 200
[2026-08-31 15:08:32,578.578 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:08:32,642.642 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:08:32,645.645 INFO    ] No update needed
[2026-08-31 15:08:32,648.648 INFO    ] Checking for camera pi updates...
[2026-08-31 15:08:32,694.694 INFO    ] 200
[2026-08-31 15:08:32,698.698 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:08:32,777.777 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:08:32,871.871 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:08:32,874.874 INFO    ] No camera update needed
[2026-08-31 15:08:32,877.877 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:08:32,880.880 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:08:32,886.886 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:08:32,893.893 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:08:34,934.934 INFO    ] ================================================
[2026-08-31 15:08:34,950.950 INFO    ] Launching Daemon at Mon Aug 31 15:08:34 IST 2026
[2026-08-31 15:08:34,962.962 INFO    ] ================================================
[2026-08-31 15:08:35,533.533 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:08:35
[2026-08-31 15:08:36,117.117 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:08:36,385.385 INFO    ] Initializing speech engine...
[2026-08-31 15:08:36,394.394 INFO    ] 2026-08-31 15:08:36
[2026-08-31 15:08:36,643.643 INFO    ] 2026-08-31 15:08:36
[2026-08-31 15:08:36,707.707 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:08:36,933.933 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:08:36,939.939 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:08:37,073.073 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:08:37,113.113 INFO    ] time= 31/08/2026 15:08:37
[2026-08-31 15:08:37,172.172 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:08:37,206.206 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:08:37,347.347 INFO    ] No existing commands found in stream
[2026-08-31 15:08:42,363.363 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:08:42,365.365 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-08-31 15:08:45,491.491 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 15:08:45,494.494 INFO    ] Checking for system updates...
[2026-08-31 15:08:45,530.530 INFO    ] 200
[2026-08-31 15:08:45,532.532 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:08:45,586.586 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:08:45,589.589 INFO    ] No update needed
[2026-08-31 15:08:45,592.592 INFO    ] Checking for camera pi updates...
[2026-08-31 15:08:45,630.630 INFO    ] 200
[2026-08-31 15:08:45,632.632 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:08:45,678.678 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:08:45,767.767 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:08:45,770.770 INFO    ] No camera update needed
[2026-08-31 15:08:45,772.772 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:08:45,774.774 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:08:45,780.780 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:08:45,785.785 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:08:47,825.825 INFO    ] ================================================
[2026-08-31 15:08:47,841.841 INFO    ] Launching Daemon at Mon Aug 31 15:08:47 IST 2026
[2026-08-31 15:08:47,853.853 INFO    ] ================================================
[2026-08-31 15:08:48,434.434 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:08:48
[2026-08-31 15:08:49,032.032 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:08:49,304.304 INFO    ] Initializing speech engine...
[2026-08-31 15:08:49,313.313 INFO    ] 2026-08-31 15:08:49
[2026-08-31 15:08:49,564.564 INFO    ] 2026-08-31 15:08:49
[2026-08-31 15:08:49,599.599 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:08:49,852.852 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:08:49,861.861 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:08:50,053.053 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:08:50,117.117 INFO    ] time= 31/08/2026 15:08:50
[2026-08-31 15:08:50,124.124 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:08:50,137.137 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:08:50,273.273 INFO    ] No existing commands found in stream
[2026-08-31 15:08:55,296.296 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:08:55,299.299 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-08-31 15:08:58,933.933 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 15:08:58,936.936 INFO    ] Checking for system updates...
[2026-08-31 15:08:58,972.972 INFO    ] 200
[2026-08-31 15:08:58,974.974 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:08:59,034.034 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:08:59,037.037 INFO    ] No update needed
[2026-08-31 15:08:59,040.040 INFO    ] Checking for camera pi updates...
[2026-08-31 15:08:59,074.074 INFO    ] 200
[2026-08-31 15:08:59,076.076 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:08:59,123.123 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:08:59,205.205 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:08:59,207.207 INFO    ] No camera update needed
[2026-08-31 15:08:59,210.210 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:08:59,212.212 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:08:59,218.218 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:08:59,223.223 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:09:01,263.263 INFO    ] ================================================
[2026-08-31 15:09:01,279.279 INFO    ] Launching Daemon at Mon Aug 31 15:09:01 IST 2026
[2026-08-31 15:09:01,290.290 INFO    ] ================================================
[2026-08-31 15:09:01,988.988 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:09:01
[2026-08-31 15:09:02,629.629 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:09:02,957.957 INFO    ] Initializing speech engine...
[2026-08-31 15:09:02,963.963 INFO    ] 2026-08-31 15:09:02
[2026-08-31 15:09:03,267.267 INFO    ] 2026-08-31 15:09:03
[2026-08-31 15:09:03,322.322 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:09:03,573.573 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:09:03,581.581 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:09:03,843.843 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:09:03,851.851 INFO    ] time= 31/08/2026 15:09:03
[2026-08-31 15:09:03,869.869 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:09:03,886.886 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:09:04,007.007 INFO    ] No existing commands found in stream
[2026-08-31 15:09:09,019.019 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:09:09,021.021 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-08-31 15:09:13,493.493 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 15:09:13,496.496 INFO    ] Checking for system updates...
[2026-08-31 15:09:13,531.531 INFO    ] 200
[2026-08-31 15:09:13,534.534 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:09:13,586.586 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:09:13,589.589 INFO    ] No update needed
[2026-08-31 15:09:13,591.591 INFO    ] Checking for camera pi updates...
[2026-08-31 15:09:13,629.629 INFO    ] 200
[2026-08-31 15:09:13,631.631 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:09:13,672.672 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:09:13,754.754 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:09:13,756.756 INFO    ] No camera update needed
[2026-08-31 15:09:13,759.759 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:09:13,761.761 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:09:13,767.767 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:09:13,772.772 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:09:15,812.812 INFO    ] ================================================
[2026-08-31 15:09:15,827.827 INFO    ] Launching Daemon at Mon Aug 31 15:09:15 IST 2026
[2026-08-31 15:09:15,837.837 INFO    ] ================================================
[2026-08-31 15:09:16,410.410 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:09:16
[2026-08-31 15:09:17,001.001 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:09:17,248.248 INFO    ] Initializing speech engine...
[2026-08-31 15:09:17,256.256 INFO    ] 2026-08-31 15:09:17
[2026-08-31 15:09:17,531.531 INFO    ] 2026-08-31 15:09:17
[2026-08-31 15:09:17,567.567 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:09:17,825.825 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:09:17,833.833 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:09:17,972.972 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:09:18,032.032 INFO    ] time= 31/08/2026 15:09:17
[2026-08-31 15:09:18,082.082 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:09:18,109.109 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:09:18,258.258 INFO    ] No existing commands found in stream
[2026-08-31 15:09:23,272.272 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:09:23,275.275 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-08-31 15:09:26,005.005 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 15:09:26,008.008 INFO    ] Checking for system updates...
[2026-08-31 15:09:26,048.048 INFO    ] 200
[2026-08-31 15:09:26,050.050 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:09:26,110.110 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:09:26,113.113 INFO    ] No update needed
[2026-08-31 15:09:26,115.115 INFO    ] Checking for camera pi updates...
[2026-08-31 15:09:26,153.153 INFO    ] 200
[2026-08-31 15:09:26,155.155 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:09:26,195.195 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:09:26,299.299 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:09:26,308.308 INFO    ] No camera update needed
[2026-08-31 15:09:26,310.310 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:09:26,312.312 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:09:26,318.318 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:09:26,323.323 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:09:28,365.365 INFO    ] ================================================
[2026-08-31 15:09:28,380.380 INFO    ] Launching Daemon at Mon Aug 31 15:09:28 IST 2026
[2026-08-31 15:09:28,391.391 INFO    ] ================================================
[2026-08-31 15:09:29,058.058 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:09:29
[2026-08-31 15:09:29,745.745 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:09:30,058.058 INFO    ] Initializing speech engine...
[2026-08-31 15:09:30,066.066 INFO    ] 2026-08-31 15:09:30
[2026-08-31 15:09:30,349.349 INFO    ] 2026-08-31 15:09:30
[2026-08-31 15:09:30,405.405 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:09:30,658.658 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:09:30,665.665 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:09:30,890.890 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:09:30,906.906 INFO    ] time= 31/08/2026 15:09:30
[2026-08-31 15:09:30,926.926 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:09:30,958.958 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:09:31,078.078 INFO    ] No existing commands found in stream
[2026-08-31 15:09:36,114.114 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:09:36,117.117 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-08-31 15:09:39,460.460 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 15:09:39,463.463 INFO    ] Checking for system updates...
[2026-08-31 15:09:39,505.505 INFO    ] 200
[2026-08-31 15:09:39,508.508 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:09:39,575.575 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:09:39,578.578 INFO    ] No update needed
[2026-08-31 15:09:39,580.580 INFO    ] Checking for camera pi updates...
[2026-08-31 15:09:39,618.618 INFO    ] 200
[2026-08-31 15:09:39,621.621 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:09:39,662.662 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:09:39,747.747 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:09:39,750.750 INFO    ] No camera update needed
[2026-08-31 15:09:39,753.753 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:09:39,755.755 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:09:39,762.762 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:09:39,768.768 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:09:41,810.810 INFO    ] ================================================
[2026-08-31 15:09:41,825.825 INFO    ] Launching Daemon at Mon Aug 31 15:09:41 IST 2026
[2026-08-31 15:09:41,836.836 INFO    ] ================================================
[2026-08-31 15:09:42,411.411 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:09:42
[2026-08-31 15:09:42,994.994 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:09:43,240.240 INFO    ] Initializing speech engine...
[2026-08-31 15:09:43,248.248 INFO    ] 2026-08-31 15:09:43
[2026-08-31 15:09:43,523.523 INFO    ] 2026-08-31 15:09:43
[2026-08-31 15:09:43,565.565 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:09:43,816.816 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:09:43,825.825 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:09:44,014.014 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:09:44,069.069 INFO    ] time= 31/08/2026 15:09:44
[2026-08-31 15:09:44,094.094 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:09:44,100.100 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:09:44,250.250 INFO    ] No existing commands found in stream
[2026-08-31 15:09:49,272.272 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:09:49,275.275 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-08-31 15:09:49,952.952 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 15:09:49,955.955 INFO    ] Checking for system updates...
[2026-08-31 15:09:49,993.993 INFO    ] 200
[2026-08-31 15:09:49,996.996 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:09:50,050.050 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:09:50,052.052 INFO    ] No update needed
[2026-08-31 15:09:50,055.055 INFO    ] Checking for camera pi updates...
[2026-08-31 15:09:50,089.089 INFO    ] 200
[2026-08-31 15:09:50,092.092 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:09:50,138.138 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:09:50,219.219 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:09:50,221.221 INFO    ] No camera update needed
[2026-08-31 15:09:50,223.223 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:09:50,226.226 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:09:50,231.231 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:09:50,236.236 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:09:52,280.280 INFO    ] ================================================
[2026-08-31 15:09:52,295.295 INFO    ] Launching Daemon at Mon Aug 31 15:09:52 IST 2026
[2026-08-31 15:09:52,306.306 INFO    ] ================================================
[2026-08-31 15:09:52,977.977 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:09:52
[2026-08-31 15:09:53,666.666 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:09:53,978.978 INFO    ] Initializing speech engine...
[2026-08-31 15:09:53,990.990 INFO    ] 2026-08-31 15:09:53
[2026-08-31 15:09:54,266.266 INFO    ] 2026-08-31 15:09:54
[2026-08-31 15:09:54,321.321 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:09:54,550.550 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:09:54,556.556 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:09:54,779.779 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:09:54,816.816 INFO    ] time= 31/08/2026 15:09:54
[2026-08-31 15:09:54,835.835 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:09:54,848.848 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:09:54,960.960 INFO    ] No existing commands found in stream
[2026-08-31 15:09:59,983.983 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:09:59,987.987 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-08-31 15:10:02,745.745 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 15:10:02,749.749 INFO    ] Checking for system updates...
[2026-08-31 15:10:02,798.798 INFO    ] 200
[2026-08-31 15:10:02,801.801 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:10:02,865.865 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:10:02,868.868 INFO    ] No update needed
[2026-08-31 15:10:02,871.871 INFO    ] Checking for camera pi updates...
[2026-08-31 15:10:02,923.923 INFO    ] 200
[2026-08-31 15:10:02,927.927 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:10:02,979.979 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:10:03,304.304 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:10:03,308.308 INFO    ] No camera update needed
[2026-08-31 15:10:03,312.312 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:10:03,315.315 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:10:03,325.325 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:10:03,335.335 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:10:05,379.379 INFO    ] ================================================
[2026-08-31 15:10:05,396.396 INFO    ] Launching Daemon at Mon Aug 31 15:10:05 IST 2026
[2026-08-31 15:10:05,406.406 INFO    ] ================================================
[2026-08-31 15:10:05,992.992 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:10:05
[2026-08-31 15:10:06,605.605 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:10:06,931.931 INFO    ] Initializing speech engine...
[2026-08-31 15:10:06,943.943 INFO    ] 2026-08-31 15:10:06
[2026-08-31 15:10:07,229.229 INFO    ] 2026-08-31 15:10:07
[2026-08-31 15:10:07,273.273 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:10:07,496.496 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:10:07,505.505 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:10:07,704.704 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:10:07,764.764 INFO    ] time= 31/08/2026 15:10:07
[2026-08-31 15:10:07,774.774 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:10:07,780.780 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:10:07,898.898 INFO    ] No existing commands found in stream
[2026-08-31 15:10:12,928.928 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:10:12,931.931 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-08-31 15:10:14,527.527 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 15:10:14,530.530 INFO    ] Checking for system updates...
[2026-08-31 15:10:14,565.565 INFO    ] 200
[2026-08-31 15:10:14,568.568 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:10:14,620.620 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:10:14,623.623 INFO    ] No update needed
[2026-08-31 15:10:14,625.625 INFO    ] Checking for camera pi updates...
[2026-08-31 15:10:14,659.659 INFO    ] 200
[2026-08-31 15:10:14,661.661 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:10:14,701.701 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:10:14,796.796 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:10:14,799.799 INFO    ] No camera update needed
[2026-08-31 15:10:14,801.801 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:10:14,803.803 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:10:14,809.809 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:10:14,814.814 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:10:16,855.855 INFO    ] ================================================
[2026-08-31 15:10:16,871.871 INFO    ] Launching Daemon at Mon Aug 31 15:10:16 IST 2026
[2026-08-31 15:10:16,881.881 INFO    ] ================================================
[2026-08-31 15:10:17,489.489 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:10:17
[2026-08-31 15:10:18,085.085 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:10:18,333.333 INFO    ] Initializing speech engine...
[2026-08-31 15:10:18,346.346 INFO    ] 2026-08-31 15:10:18
[2026-08-31 15:10:18,613.613 INFO    ] 2026-08-31 15:10:18
[2026-08-31 15:10:18,655.655 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:10:18,910.910 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:10:18,915.915 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:10:19,138.138 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:10:19,179.179 INFO    ] time= 31/08/2026 15:10:19
[2026-08-31 15:10:19,185.185 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:10:19,203.203 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:10:19,337.337 INFO    ] No existing commands found in stream
[2026-08-31 15:10:24,352.352 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:10:24,354.354 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-08-31 15:10:26,166.166 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 15:10:26,169.169 INFO    ] Checking for system updates...
[2026-08-31 15:10:26,208.208 INFO    ] 200
[2026-08-31 15:10:26,211.211 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:10:26,263.263 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:10:26,265.265 INFO    ] No update needed
[2026-08-31 15:10:26,268.268 INFO    ] Checking for camera pi updates...
[2026-08-31 15:10:26,301.301 INFO    ] 200
[2026-08-31 15:10:26,303.303 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:10:26,349.349 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:10:26,503.503 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:10:26,505.505 INFO    ] No camera update needed
[2026-08-31 15:10:26,507.507 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:10:26,510.510 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:10:26,515.515 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:10:26,520.520 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:10:28,561.561 INFO    ] ================================================
[2026-08-31 15:10:28,576.576 INFO    ] Launching Daemon at Mon Aug 31 15:10:28 IST 2026
[2026-08-31 15:10:28,587.587 INFO    ] ================================================
[2026-08-31 15:10:29,248.248 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:10:29
[2026-08-31 15:10:29,923.923 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:10:30,228.228 INFO    ] Initializing speech engine...
[2026-08-31 15:10:30,243.243 INFO    ] 2026-08-31 15:10:30
[2026-08-31 15:10:30,527.527 INFO    ] 2026-08-31 15:10:30
[2026-08-31 15:10:30,567.567 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:10:30,812.812 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:10:30,820.820 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:10:31,037.037 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:10:31,057.057 INFO    ] time= 31/08/2026 15:10:31
[2026-08-31 15:10:31,075.075 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:10:31,105.105 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:10:31,211.211 INFO    ] No existing commands found in stream
[2026-08-31 15:10:36,226.226 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:10:36,230.230 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-08-31 15:10:39,416.416 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 15:10:39,419.419 INFO    ] Checking for system updates...
[2026-08-31 15:10:39,460.460 INFO    ] 200
[2026-08-31 15:10:39,463.463 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:10:39,521.521 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:10:39,524.524 INFO    ] No update needed
[2026-08-31 15:10:39,526.526 INFO    ] Checking for camera pi updates...
[2026-08-31 15:10:39,559.559 INFO    ] 200
[2026-08-31 15:10:39,562.562 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:10:39,602.602 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:10:39,652.652 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:10:39,655.655 INFO    ] No camera update needed
[2026-08-31 15:10:39,657.657 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:10:39,659.659 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:10:39,665.665 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:10:39,670.670 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:10:41,709.709 INFO    ] ================================================
[2026-08-31 15:10:41,724.724 INFO    ] Launching Daemon at Mon Aug 31 15:10:41 IST 2026
[2026-08-31 15:10:41,734.734 INFO    ] ================================================
[2026-08-31 15:10:42,316.316 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:10:42
[2026-08-31 15:10:42,914.914 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:10:43,186.186 INFO    ] Initializing speech engine...
[2026-08-31 15:10:43,195.195 INFO    ] 2026-08-31 15:10:43
[2026-08-31 15:10:43,459.459 INFO    ] 2026-08-31 15:10:43
[2026-08-31 15:10:43,512.512 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:10:43,738.738 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:10:43,742.742 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:10:43,951.951 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:10:43,999.999 INFO    ] time= 31/08/2026 15:10:43
[2026-08-31 15:10:44,005.005 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:10:44,024.024 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:10:44,139.139 INFO    ] No existing commands found in stream
[2026-08-31 15:10:49,160.160 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:10:49,163.163 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-08-31 15:10:52,592.592 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 15:10:52,595.595 INFO    ] Checking for system updates...
[2026-08-31 15:10:52,630.630 INFO    ] 200
[2026-08-31 15:10:52,633.633 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:10:52,685.685 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:10:52,688.688 INFO    ] No update needed
[2026-08-31 15:10:52,690.690 INFO    ] Checking for camera pi updates...
[2026-08-31 15:10:52,723.723 INFO    ] 200
[2026-08-31 15:10:52,726.726 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:10:52,766.766 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:10:52,867.867 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:10:52,869.869 INFO    ] No camera update needed
[2026-08-31 15:10:52,871.871 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:10:52,874.874 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:10:52,879.879 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:10:52,884.884 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:10:54,926.926 INFO    ] ================================================
[2026-08-31 15:10:54,941.941 INFO    ] Launching Daemon at Mon Aug 31 15:10:54 IST 2026
[2026-08-31 15:10:54,951.951 INFO    ] ================================================
[2026-08-31 15:10:55,532.532 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:10:55
[2026-08-31 15:10:56,129.129 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:10:56,380.380 INFO    ] Initializing speech engine...
[2026-08-31 15:10:56,403.403 INFO    ] 2026-08-31 15:10:56
[2026-08-31 15:10:56,657.657 INFO    ] 2026-08-31 15:10:56
[2026-08-31 15:10:56,692.692 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:10:56,947.947 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:10:56,951.951 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:10:57,120.120 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:10:57,174.174 INFO    ] time= 31/08/2026 15:10:57
[2026-08-31 15:10:57,211.211 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:10:57,228.228 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:10:57,332.332 INFO    ] No existing commands found in stream
[2026-08-31 15:11:02,360.360 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:11:02,364.364 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-08-31 15:11:05,496.496 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 15:11:05,499.499 INFO    ] Checking for system updates...
[2026-08-31 15:11:05,539.539 INFO    ] 200
[2026-08-31 15:11:05,542.542 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:11:05,599.599 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:11:05,602.602 INFO    ] No update needed
[2026-08-31 15:11:05,604.604 INFO    ] Checking for camera pi updates...
[2026-08-31 15:11:05,661.661 INFO    ] 200
[2026-08-31 15:11:05,663.663 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:11:05,714.714 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:11:05,811.811 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:11:05,814.814 INFO    ] No camera update needed
[2026-08-31 15:11:05,816.816 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:11:05,819.819 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:11:05,824.824 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:11:05,829.829 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:11:07,870.870 INFO    ] ================================================
[2026-08-31 15:11:07,885.885 INFO    ] Launching Daemon at Mon Aug 31 15:11:07 IST 2026
[2026-08-31 15:11:07,895.895 INFO    ] ================================================
[2026-08-31 15:11:08,560.560 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:11:08
[2026-08-31 15:11:09,237.237 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:11:09,547.547 INFO    ] Initializing speech engine...
[2026-08-31 15:11:09,559.559 INFO    ] 2026-08-31 15:11:09
[2026-08-31 15:11:09,868.868 INFO    ] 2026-08-31 15:11:09
[2026-08-31 15:11:09,950.950 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:11:10,170.170 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:11:10,176.176 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:11:10,372.372 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:11:10,395.395 INFO    ] time= 31/08/2026 15:11:10
[2026-08-31 15:11:10,422.422 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:11:10,431.431 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:11:10,531.531 INFO    ] No existing commands found in stream
[2026-08-31 15:11:15,567.567 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:11:15,570.570 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-08-31 15:11:18,628.628 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 15:11:18,631.631 INFO    ] Checking for system updates...
[2026-08-31 15:11:18,673.673 INFO    ] 200
[2026-08-31 15:11:18,676.676 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:11:18,729.729 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:11:18,732.732 INFO    ] No update needed
[2026-08-31 15:11:18,734.734 INFO    ] Checking for camera pi updates...
[2026-08-31 15:11:18,769.769 INFO    ] 200
[2026-08-31 15:11:18,772.772 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:11:18,819.819 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:11:18,900.900 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:11:18,903.903 INFO    ] No camera update needed
[2026-08-31 15:11:18,905.905 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:11:18,908.908 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:11:18,914.914 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:11:18,920.920 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:11:20,963.963 INFO    ] ================================================
[2026-08-31 15:11:20,978.978 INFO    ] Launching Daemon at Mon Aug 31 15:11:20 IST 2026
[2026-08-31 15:11:20,988.988 INFO    ] ================================================
[2026-08-31 15:11:21,571.571 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:11:21
[2026-08-31 15:11:22,166.166 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:11:22,443.443 INFO    ] Initializing speech engine...
[2026-08-31 15:11:22,452.452 INFO    ] 2026-08-31 15:11:22
[2026-08-31 15:11:22,714.714 INFO    ] 2026-08-31 15:11:22
[2026-08-31 15:11:22,768.768 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:11:22,989.989 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:11:22,999.999 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:11:23,226.226 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:11:23,255.255 INFO    ] time= 31/08/2026 15:11:23
[2026-08-31 15:11:23,273.273 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:11:23,282.282 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:11:23,410.410 INFO    ] No existing commands found in stream
[2026-08-31 15:11:28,425.425 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:11:28,429.429 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-08-31 15:11:32,871.871 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 15:11:32,874.874 INFO    ] Checking for system updates...
[2026-08-31 15:11:32,916.916 INFO    ] 200
[2026-08-31 15:11:32,919.919 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:11:32,971.971 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:11:32,974.974 INFO    ] No update needed
[2026-08-31 15:11:32,976.976 INFO    ] Checking for camera pi updates...
[2026-08-31 15:11:33,011.011 INFO    ] 200
[2026-08-31 15:11:33,015.015 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:11:33,076.076 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:11:33,167.167 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:11:33,170.170 INFO    ] No camera update needed
[2026-08-31 15:11:33,172.172 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:11:33,175.175 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:11:33,180.180 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:11:33,185.185 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:11:35,227.227 INFO    ] ================================================
[2026-08-31 15:11:35,242.242 INFO    ] Launching Daemon at Mon Aug 31 15:11:35 IST 2026
[2026-08-31 15:11:35,252.252 INFO    ] ================================================
[2026-08-31 15:11:35,832.832 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:11:35
[2026-08-31 15:11:36,430.430 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:11:36,693.693 INFO    ] Initializing speech engine...
[2026-08-31 15:11:36,699.699 INFO    ] 2026-08-31 15:11:36
[2026-08-31 15:11:36,995.995 INFO    ] 2026-08-31 15:11:36
[2026-08-31 15:11:37,033.033 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:11:37,259.259 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:11:37,299.299 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:11:37,495.495 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:11:37,501.501 INFO    ] time= 31/08/2026 15:11:37
[2026-08-31 15:11:37,528.528 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:11:37,588.588 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:11:37,658.658 INFO    ] No existing commands found in stream
[2026-08-31 15:11:42,690.690 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:11:42,693.693 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-08-31 15:11:45,469.469 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 15:11:45,472.472 INFO    ] Checking for system updates...
[2026-08-31 15:11:45,507.507 INFO    ] 200
[2026-08-31 15:11:45,510.510 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:11:45,570.570 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:11:45,572.572 INFO    ] No update needed
[2026-08-31 15:11:45,575.575 INFO    ] Checking for camera pi updates...
[2026-08-31 15:11:45,612.612 INFO    ] 200
[2026-08-31 15:11:45,615.615 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:11:45,660.660 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:11:45,752.752 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:11:45,754.754 INFO    ] No camera update needed
[2026-08-31 15:11:45,756.756 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:11:45,759.759 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:11:45,764.764 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:11:45,770.770 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:11:47,811.811 INFO    ] ================================================
[2026-08-31 15:11:47,827.827 INFO    ] Launching Daemon at Mon Aug 31 15:11:47 IST 2026
[2026-08-31 15:11:47,838.838 INFO    ] ================================================
[2026-08-31 15:11:48,495.495 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:11:48
[2026-08-31 15:11:49,169.169 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:11:49,476.476 INFO    ] Initializing speech engine...
[2026-08-31 15:11:49,490.490 INFO    ] 2026-08-31 15:11:49
[2026-08-31 15:11:49,764.764 INFO    ] 2026-08-31 15:11:49
[2026-08-31 15:11:49,819.819 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:11:50,111.111 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:11:50,119.119 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:11:50,314.314 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:11:50,333.333 INFO    ] time= 31/08/2026 15:11:50
[2026-08-31 15:11:50,343.343 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:11:50,370.370 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:11:50,480.480 INFO    ] No existing commands found in stream
[2026-08-31 15:11:55,510.510 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:11:55,513.513 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-08-31 15:11:57,808.808 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 15:11:57,811.811 INFO    ] Checking for system updates...
[2026-08-31 15:11:57,853.853 INFO    ] 200
[2026-08-31 15:11:57,856.856 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:11:57,923.923 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:11:57,926.926 INFO    ] No update needed
[2026-08-31 15:11:57,929.929 INFO    ] Checking for camera pi updates...
[2026-08-31 15:11:57,964.964 INFO    ] 200
[2026-08-31 15:11:57,967.967 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:11:58,008.008 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:11:58,109.109 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:11:58,111.111 INFO    ] No camera update needed
[2026-08-31 15:11:58,114.114 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:11:58,116.116 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:11:58,121.121 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:11:58,126.126 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:12:00,167.167 INFO    ] ================================================
[2026-08-31 15:12:00,182.182 INFO    ] Launching Daemon at Mon Aug 31 15:12:00 IST 2026
[2026-08-31 15:12:00,193.193 INFO    ] ================================================
[2026-08-31 15:12:00,775.775 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:12:00
[2026-08-31 15:12:01,374.374 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:12:01,720.720 INFO    ] Initializing speech engine...
[2026-08-31 15:12:01,723.723 INFO    ] 2026-08-31 15:12:01
[2026-08-31 15:12:02,170.170 INFO    ] 2026-08-31 15:12:02
[2026-08-31 15:12:02,268.268 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:12:02,511.511 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:12:02,522.522 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:12:02,715.715 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:12:02,738.738 INFO    ] time= 31/08/2026 15:12:02
[2026-08-31 15:12:02,761.761 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:12:02,789.789 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:12:02,930.930 INFO    ] No existing commands found in stream
[2026-08-31 15:12:07,961.961 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:12:07,964.964 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-08-31 15:12:09,621.621 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 15:12:09,624.624 INFO    ] Checking for system updates...
[2026-08-31 15:12:09,659.659 INFO    ] 200
[2026-08-31 15:12:09,662.662 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:12:09,714.714 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:12:09,717.717 INFO    ] No update needed
[2026-08-31 15:12:09,720.720 INFO    ] Checking for camera pi updates...
[2026-08-31 15:12:09,753.753 INFO    ] 200
[2026-08-31 15:12:09,755.755 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:12:09,801.801 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:12:09,882.882 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:12:09,884.884 INFO    ] No camera update needed
[2026-08-31 15:12:09,886.886 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:12:09,889.889 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:12:09,895.895 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:12:09,901.901 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:12:11,944.944 INFO    ] ================================================
[2026-08-31 15:12:11,959.959 INFO    ] Launching Daemon at Mon Aug 31 15:12:11 IST 2026
[2026-08-31 15:12:11,969.969 INFO    ] ================================================
[2026-08-31 15:12:12,537.537 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:12:12
[2026-08-31 15:12:13,125.125 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:12:13,374.374 INFO    ] Initializing speech engine...
[2026-08-31 15:12:13,380.380 INFO    ] 2026-08-31 15:12:13
[2026-08-31 15:12:13,655.655 INFO    ] 2026-08-31 15:12:13
[2026-08-31 15:12:13,691.691 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:12:13,946.946 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:12:13,955.955 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:12:14,191.191 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:12:14,218.218 INFO    ] time= 31/08/2026 15:12:14
[2026-08-31 15:12:14,224.224 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:12:14,242.242 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:12:14,373.373 INFO    ] No existing commands found in stream
[2026-08-31 15:12:19,387.387 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:12:19,390.390 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-08-31 15:12:21,992.992 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 15:12:21,994.994 INFO    ] Checking for system updates...
[2026-08-31 15:12:22,035.035 INFO    ] 200
[2026-08-31 15:12:22,038.038 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:12:22,099.099 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:12:22,102.102 INFO    ] No update needed
[2026-08-31 15:12:22,105.105 INFO    ] Checking for camera pi updates...
[2026-08-31 15:12:22,144.144 INFO    ] 200
[2026-08-31 15:12:22,147.147 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:12:22,195.195 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:12:22,276.276 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:12:22,279.279 INFO    ] No camera update needed
[2026-08-31 15:12:22,282.282 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:12:22,285.285 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:12:22,291.291 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:12:22,297.297 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:12:24,341.341 INFO    ] ================================================
[2026-08-31 15:12:24,357.357 INFO    ] Launching Daemon at Mon Aug 31 15:12:24 IST 2026
[2026-08-31 15:12:24,367.367 INFO    ] ================================================
[2026-08-31 15:12:24,938.938 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:12:24
[2026-08-31 15:12:25,526.526 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:12:25,801.801 INFO    ] Initializing speech engine...
[2026-08-31 15:12:25,810.810 INFO    ] 2026-08-31 15:12:25
[2026-08-31 15:12:26,061.061 INFO    ] 2026-08-31 15:12:26
[2026-08-31 15:12:26,086.086 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:12:26,312.312 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:12:26,328.328 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:12:26,498.498 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:12:26,504.504 INFO    ] time= 31/08/2026 15:12:26
[2026-08-31 15:12:26,510.510 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:12:26,544.544 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:12:26,677.677 INFO    ] No existing commands found in stream
[2026-08-31 15:12:31,703.703 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:12:31,707.707 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-08-31 15:12:32,889.889 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 15:12:32,894.894 INFO    ] Checking for system updates...
[2026-08-31 15:12:32,937.937 INFO    ] 200
[2026-08-31 15:12:32,940.940 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:12:32,994.994 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:12:32,996.996 INFO    ] No update needed
[2026-08-31 15:12:32,999.999 INFO    ] Checking for camera pi updates...
[2026-08-31 15:12:33,038.038 INFO    ] 200
[2026-08-31 15:12:33,041.041 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:12:33,083.083 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:12:33,192.192 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:12:33,195.195 INFO    ] No camera update needed
[2026-08-31 15:12:33,197.197 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:12:33,200.200 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:12:33,206.206 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:12:33,212.212 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:12:35,254.254 INFO    ] ================================================
[2026-08-31 15:12:35,269.269 INFO    ] Launching Daemon at Mon Aug 31 15:12:35 IST 2026
[2026-08-31 15:12:35,280.280 INFO    ] ================================================
[2026-08-31 15:12:35,850.850 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:12:35
[2026-08-31 15:12:36,532.532 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:12:36,852.852 INFO    ] Initializing speech engine...
[2026-08-31 15:12:36,864.864 INFO    ] 2026-08-31 15:12:36
[2026-08-31 15:12:37,113.113 INFO    ] 2026-08-31 15:12:37
[2026-08-31 15:12:37,148.148 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:12:38,159.159 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:12:38,208.208 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:12:38,463.463 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:12:38,470.470 INFO    ] time= 31/08/2026 15:12:38
[2026-08-31 15:12:38,476.476 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:12:38,482.482 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:12:38,584.584 INFO    ] No existing commands found in stream
[2026-08-31 15:12:43,595.595 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:12:43,598.598 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-08-31 15:12:48,055.055 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 15:12:48,058.058 INFO    ] Checking for system updates...
[2026-08-31 15:12:48,094.094 INFO    ] 200
[2026-08-31 15:12:48,096.096 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:12:48,150.150 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:12:48,153.153 INFO    ] No update needed
[2026-08-31 15:12:48,155.155 INFO    ] Checking for camera pi updates...
[2026-08-31 15:12:48,194.194 INFO    ] 200
[2026-08-31 15:12:48,197.197 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:12:48,243.243 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:12:48,333.333 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:12:48,337.337 INFO    ] No camera update needed
[2026-08-31 15:12:48,340.340 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:12:48,343.343 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:12:48,350.350 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:12:48,356.356 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:12:50,399.399 INFO    ] ================================================
[2026-08-31 15:12:50,418.418 INFO    ] Launching Daemon at Mon Aug 31 15:12:50 IST 2026
[2026-08-31 15:12:50,428.428 INFO    ] ================================================
[2026-08-31 15:12:51,094.094 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:12:51
[2026-08-31 15:12:51,777.777 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:12:52,062.062 INFO    ] Initializing speech engine...
[2026-08-31 15:12:52,079.079 INFO    ] 2026-08-31 15:12:52
[2026-08-31 15:12:52,361.361 INFO    ] 2026-08-31 15:12:52
[2026-08-31 15:12:52,397.397 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:12:52,589.589 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:12:52,601.601 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:12:52,775.775 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:12:52,785.785 INFO    ] time= 31/08/2026 15:12:52
[2026-08-31 15:12:52,794.794 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:12:52,843.843 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:12:52,980.980 INFO    ] No existing commands found in stream
[2026-08-31 15:12:57,999.999 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:12:58,002.002 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-08-31 15:13:01,128.128 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 15:13:01,131.131 INFO    ] Checking for system updates...
[2026-08-31 15:13:01,166.166 INFO    ] 200
[2026-08-31 15:13:01,169.169 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:13:01,221.221 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:13:01,224.224 INFO    ] No update needed
[2026-08-31 15:13:01,227.227 INFO    ] Checking for camera pi updates...
[2026-08-31 15:13:01,261.261 INFO    ] 200
[2026-08-31 15:13:01,263.263 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:13:01,309.309 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:13:01,412.412 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:13:01,415.415 INFO    ] No camera update needed
[2026-08-31 15:13:01,417.417 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:13:01,420.420 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:13:01,425.425 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:13:01,430.430 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:13:03,474.474 INFO    ] ================================================
[2026-08-31 15:13:03,489.489 INFO    ] Launching Daemon at Mon Aug 31 15:13:03 IST 2026
[2026-08-31 15:13:03,500.500 INFO    ] ================================================
[2026-08-31 15:13:04,072.072 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:13:04
[2026-08-31 15:13:04,660.660 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:13:04,912.912 INFO    ] Initializing speech engine...
[2026-08-31 15:13:04,924.924 INFO    ] 2026-08-31 15:13:04
[2026-08-31 15:13:05,192.192 INFO    ] 2026-08-31 15:13:05
[2026-08-31 15:13:05,227.227 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:13:05,484.484 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:13:05,494.494 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:13:05,630.630 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:13:05,673.673 INFO    ] time= 31/08/2026 15:13:05
[2026-08-31 15:13:05,727.727 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:13:05,767.767 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:13:05,916.916 INFO    ] No existing commands found in stream
[2026-08-31 15:13:10,931.931 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:13:10,933.933 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-08-31 15:13:11,505.505 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 15:13:11,507.507 INFO    ] Checking for system updates...
[2026-08-31 15:13:11,543.543 INFO    ] 200
[2026-08-31 15:13:11,546.546 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:13:11,605.605 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:13:11,607.607 INFO    ] No update needed
[2026-08-31 15:13:11,610.610 INFO    ] Checking for camera pi updates...
[2026-08-31 15:13:11,648.648 INFO    ] 200
[2026-08-31 15:13:11,650.650 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:13:11,690.690 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:13:11,772.772 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:13:11,775.775 INFO    ] No camera update needed
[2026-08-31 15:13:11,777.777 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:13:11,779.779 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:13:11,785.785 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:13:11,790.790 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:13:13,832.832 INFO    ] ================================================
[2026-08-31 15:13:13,848.848 INFO    ] Launching Daemon at Mon Aug 31 15:13:13 IST 2026
[2026-08-31 15:13:13,859.859 INFO    ] ================================================
[2026-08-31 15:13:14,429.429 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:13:14
[2026-08-31 15:13:15,018.018 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:13:15,267.267 INFO    ] Initializing speech engine...
[2026-08-31 15:13:15,282.282 INFO    ] 2026-08-31 15:13:15
[2026-08-31 15:13:15,549.549 INFO    ] 2026-08-31 15:13:15
[2026-08-31 15:13:15,584.584 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:13:15,842.842 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:13:15,851.851 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:13:15,989.989 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:13:16,023.023 INFO    ] time= 31/08/2026 15:13:15
[2026-08-31 15:13:16,092.092 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:13:16,123.123 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:13:16,259.259 INFO    ] No existing commands found in stream
[2026-08-31 15:13:21,284.284 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:13:21,287.287 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-08-31 15:13:24,926.926 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 15:13:24,930.930 INFO    ] Checking for system updates...
[2026-08-31 15:13:24,966.966 INFO    ] 200
[2026-08-31 15:13:24,970.970 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:13:25,031.031 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:13:25,034.034 INFO    ] No update needed
[2026-08-31 15:13:25,037.037 INFO    ] Checking for camera pi updates...
[2026-08-31 15:13:25,072.072 INFO    ] 200
[2026-08-31 15:13:25,075.075 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:13:25,116.116 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:13:25,211.211 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:13:25,214.214 INFO    ] No camera update needed
[2026-08-31 15:13:25,217.217 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:13:25,220.220 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:13:25,226.226 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:13:25,232.232 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:13:27,275.275 INFO    ] ================================================
[2026-08-31 15:13:27,291.291 INFO    ] Launching Daemon at Mon Aug 31 15:13:27 IST 2026
[2026-08-31 15:13:27,303.303 INFO    ] ================================================
[2026-08-31 15:13:27,869.869 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:13:27
[2026-08-31 15:13:28,455.455 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:13:28,726.726 INFO    ] Initializing speech engine...
[2026-08-31 15:13:28,735.735 INFO    ] 2026-08-31 15:13:28
[2026-08-31 15:13:28,984.984 INFO    ] 2026-08-31 15:13:28
[2026-08-31 15:13:29,020.020 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:13:29,278.278 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:13:29,287.287 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:13:29,510.510 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:13:29,552.552 INFO    ] time= 31/08/2026 15:13:29
[2026-08-31 15:13:29,558.558 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:13:29,578.578 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:13:29,715.715 INFO    ] No existing commands found in stream
[2026-08-31 15:13:34,741.741 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:13:34,744.744 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-08-31 15:13:39,023.023 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 15:13:39,025.025 INFO    ] Checking for system updates...
[2026-08-31 15:13:39,061.061 INFO    ] 200
[2026-08-31 15:13:39,063.063 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:13:39,115.115 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:13:39,118.118 INFO    ] No update needed
[2026-08-31 15:13:39,120.120 INFO    ] Checking for camera pi updates...
[2026-08-31 15:13:39,157.157 INFO    ] 200
[2026-08-31 15:13:39,160.160 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:13:39,201.201 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:13:39,292.292 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:13:39,294.294 INFO    ] No camera update needed
[2026-08-31 15:13:39,296.296 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:13:39,299.299 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:13:39,304.304 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:13:39,309.309 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:13:41,350.350 INFO    ] ================================================
[2026-08-31 15:13:41,366.366 INFO    ] Launching Daemon at Mon Aug 31 15:13:41 IST 2026
[2026-08-31 15:13:41,378.378 INFO    ] ================================================
[2026-08-31 15:13:41,946.946 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:13:41
[2026-08-31 15:13:42,546.546 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:13:42,801.801 INFO    ] Initializing speech engine...
[2026-08-31 15:13:42,810.810 INFO    ] 2026-08-31 15:13:42
[2026-08-31 15:13:43,105.105 INFO    ] 2026-08-31 15:13:43
[2026-08-31 15:13:43,144.144 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:13:43,322.322 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:13:43,325.325 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:13:43,485.485 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:13:43,493.493 INFO    ] time= 31/08/2026 15:13:43
[2026-08-31 15:13:43,548.548 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:13:43,562.562 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:13:43,688.688 INFO    ] No existing commands found in stream
[2026-08-31 15:13:48,699.699 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:13:48,702.702 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-08-31 15:13:52,575.575 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 15:13:52,577.577 INFO    ] Checking for system updates...
[2026-08-31 15:13:52,612.612 INFO    ] 200
[2026-08-31 15:13:52,615.615 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:13:52,668.668 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:13:52,670.670 INFO    ] No update needed
[2026-08-31 15:13:52,672.672 INFO    ] Checking for camera pi updates...
[2026-08-31 15:13:52,710.710 INFO    ] 200
[2026-08-31 15:13:52,712.712 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:13:52,758.758 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:13:52,838.838 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:13:52,841.841 INFO    ] No camera update needed
[2026-08-31 15:13:52,843.843 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:13:52,845.845 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:13:52,851.851 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:13:52,855.855 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:13:54,896.896 INFO    ] ================================================
[2026-08-31 15:13:54,912.912 INFO    ] Launching Daemon at Mon Aug 31 15:13:54 IST 2026
[2026-08-31 15:13:54,923.923 INFO    ] ================================================
[2026-08-31 15:13:55,582.582 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:13:55
[2026-08-31 15:13:56,205.205 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:13:56,479.479 INFO    ] Initializing speech engine...
[2026-08-31 15:13:56,484.484 INFO    ] 2026-08-31 15:13:56
[2026-08-31 15:13:56,746.746 INFO    ] 2026-08-31 15:13:56
[2026-08-31 15:13:56,801.801 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:13:57,021.021 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:13:57,030.030 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:13:57,169.169 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:13:57,238.238 INFO    ] time= 31/08/2026 15:13:57
[2026-08-31 15:13:57,290.290 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:13:57,296.296 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:13:57,437.437 INFO    ] No existing commands found in stream
[2026-08-31 15:14:02,450.450 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:14:02,453.453 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-08-31 15:14:06,177.177 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 15:14:06,180.180 INFO    ] Checking for system updates...
[2026-08-31 15:14:06,216.216 INFO    ] 200
[2026-08-31 15:14:06,218.218 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:14:06,270.270 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:14:06,272.272 INFO    ] No update needed
[2026-08-31 15:14:06,275.275 INFO    ] Checking for camera pi updates...
[2026-08-31 15:14:06,316.316 INFO    ] 200
[2026-08-31 15:14:06,319.319 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:14:06,366.366 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:14:06,449.449 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:14:06,451.451 INFO    ] No camera update needed
[2026-08-31 15:14:06,454.454 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:14:06,456.456 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:14:06,461.461 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:14:06,466.466 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:14:08,508.508 INFO    ] ================================================
[2026-08-31 15:14:08,524.524 INFO    ] Launching Daemon at Mon Aug 31 15:14:08 IST 2026
[2026-08-31 15:14:08,535.535 INFO    ] ================================================
[2026-08-31 15:14:09,170.170 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:14:09
[2026-08-31 15:14:09,826.826 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:14:10,121.121 INFO    ] Initializing speech engine...
[2026-08-31 15:14:10,132.132 INFO    ] 2026-08-31 15:14:10
[2026-08-31 15:14:10,405.405 INFO    ] 2026-08-31 15:14:10
[2026-08-31 15:14:10,440.440 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:14:10,693.693 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:14:10,703.703 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:14:10,862.862 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:14:10,922.922 INFO    ] time= 31/08/2026 15:14:10
[2026-08-31 15:14:10,973.973 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:14:10,979.979 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:14:11,129.129 INFO    ] No existing commands found in stream
[2026-08-31 15:14:16,146.146 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:14:16,149.149 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-08-31 15:14:19,006.006 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 15:14:19,010.010 INFO    ] Checking for system updates...
[2026-08-31 15:14:19,046.046 INFO    ] 200
[2026-08-31 15:14:19,049.049 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:14:19,108.108 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:14:19,111.111 INFO    ] No update needed
[2026-08-31 15:14:19,114.114 INFO    ] Checking for camera pi updates...
[2026-08-31 15:14:19,149.149 INFO    ] 200
[2026-08-31 15:14:19,151.151 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:14:19,193.193 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:14:19,264.264 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:14:19,266.266 INFO    ] No camera update needed
[2026-08-31 15:14:19,269.269 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:14:19,272.272 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:14:19,278.278 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:14:19,283.283 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:14:21,324.324 INFO    ] ================================================
[2026-08-31 15:14:21,339.339 INFO    ] Launching Daemon at Mon Aug 31 15:14:21 IST 2026
[2026-08-31 15:14:21,350.350 INFO    ] ================================================
[2026-08-31 15:14:21,930.930 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:14:21
[2026-08-31 15:14:22,530.530 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:14:22,779.779 INFO    ] Initializing speech engine...
[2026-08-31 15:14:22,792.792 INFO    ] 2026-08-31 15:14:22
[2026-08-31 15:14:23,058.058 INFO    ] 2026-08-31 15:14:23
[2026-08-31 15:14:23,094.094 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:14:23,345.345 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:14:23,355.355 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:14:23,580.580 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:14:23,615.615 INFO    ] time= 31/08/2026 15:14:23
[2026-08-31 15:14:23,621.621 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:14:23,638.638 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:14:23,770.770 INFO    ] No existing commands found in stream
[2026-08-31 15:14:28,785.785 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:14:28,788.788 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-08-31 15:14:29,605.605 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 15:14:29,607.607 INFO    ] Checking for system updates...
[2026-08-31 15:14:29,644.644 INFO    ] 200
[2026-08-31 15:14:29,646.646 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:14:29,709.709 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:14:29,711.711 INFO    ] No update needed
[2026-08-31 15:14:29,713.713 INFO    ] Checking for camera pi updates...
[2026-08-31 15:14:29,750.750 INFO    ] 200
[2026-08-31 15:14:29,752.752 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:14:29,792.792 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:14:29,872.872 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:14:29,874.874 INFO    ] No camera update needed
[2026-08-31 15:14:29,876.876 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:14:29,879.879 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:14:29,884.884 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:14:29,889.889 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:14:31,931.931 INFO    ] ================================================
[2026-08-31 15:14:31,947.947 INFO    ] Launching Daemon at Mon Aug 31 15:14:31 IST 2026
[2026-08-31 15:14:31,958.958 INFO    ] ================================================
[2026-08-31 15:14:32,567.567 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:14:32
[2026-08-31 15:14:33,203.203 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:14:33,480.480 INFO    ] Initializing speech engine...
[2026-08-31 15:14:33,486.486 INFO    ] 2026-08-31 15:14:33
[2026-08-31 15:14:33,746.746 INFO    ] 2026-08-31 15:14:33
[2026-08-31 15:14:33,776.776 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:14:34,027.027 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:14:34,032.032 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:14:34,262.262 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:14:34,292.292 INFO    ] time= 31/08/2026 15:14:34
[2026-08-31 15:14:34,307.307 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:14:34,314.314 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:14:34,444.444 INFO    ] No existing commands found in stream
[2026-08-31 15:14:39,463.463 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:14:39,466.466 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-08-31 15:14:42,063.063 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 15:14:42,065.065 INFO    ] Checking for system updates...
[2026-08-31 15:14:42,101.101 INFO    ] 200
[2026-08-31 15:14:42,104.104 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:14:42,155.155 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:14:42,158.158 INFO    ] No update needed
[2026-08-31 15:14:42,160.160 INFO    ] Checking for camera pi updates...
[2026-08-31 15:14:42,194.194 INFO    ] 200
[2026-08-31 15:14:42,196.196 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:14:42,236.236 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:14:42,438.438 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:14:42,440.440 INFO    ] No camera update needed
[2026-08-31 15:14:42,443.443 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:14:42,445.445 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:14:42,451.451 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:14:42,456.456 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:14:44,501.501 INFO    ] ================================================
[2026-08-31 15:14:44,516.516 INFO    ] Launching Daemon at Mon Aug 31 15:14:44 IST 2026
[2026-08-31 15:14:44,527.527 INFO    ] ================================================
[2026-08-31 15:14:45,183.183 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:14:45
[2026-08-31 15:14:45,854.854 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:14:46,109.109 INFO    ] Initializing speech engine...
[2026-08-31 15:14:46,121.121 INFO    ] 2026-08-31 15:14:46
[2026-08-31 15:14:46,386.386 INFO    ] 2026-08-31 15:14:46
[2026-08-31 15:14:46,422.422 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:14:46,698.698 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:14:46,706.706 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:14:46,937.937 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:14:46,943.943 INFO    ] time= 31/08/2026 15:14:46
[2026-08-31 15:14:46,962.962 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:14:46,990.990 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:14:47,116.116 INFO    ] No existing commands found in stream
[2026-08-31 15:14:52,147.147 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:14:52,150.150 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-08-31 15:14:54,405.405 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 15:14:54,407.407 INFO    ] Checking for system updates...
[2026-08-31 15:14:54,443.443 INFO    ] 200
[2026-08-31 15:14:54,445.445 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:14:54,502.502 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:14:54,505.505 INFO    ] No update needed
[2026-08-31 15:14:54,507.507 INFO    ] Checking for camera pi updates...
[2026-08-31 15:14:54,540.540 INFO    ] 200
[2026-08-31 15:14:54,543.543 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:14:54,588.588 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:14:54,677.677 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:14:54,680.680 INFO    ] No camera update needed
[2026-08-31 15:14:54,682.682 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:14:54,684.684 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:14:54,690.690 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:14:54,700.700 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:14:56,741.741 INFO    ] ================================================
[2026-08-31 15:14:56,757.757 INFO    ] Launching Daemon at Mon Aug 31 15:14:56 IST 2026
[2026-08-31 15:14:56,768.768 INFO    ] ================================================
[2026-08-31 15:14:57,417.417 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:14:57
[2026-08-31 15:14:58,086.086 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:14:58,390.390 INFO    ] Initializing speech engine...
[2026-08-31 15:14:58,403.403 INFO    ] 2026-08-31 15:14:58
[2026-08-31 15:14:58,684.684 INFO    ] 2026-08-31 15:14:58
[2026-08-31 15:14:58,721.721 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:14:59,000.000 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:14:59,008.008 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:14:59,164.164 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:14:59,224.224 INFO    ] time= 31/08/2026 15:14:59
[2026-08-31 15:14:59,288.288 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:14:59,314.314 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:14:59,395.395 INFO    ] No existing commands found in stream
[2026-08-31 15:15:04,431.431 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:15:04,434.434 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-08-31 15:15:07,844.844 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 15:15:07,846.846 INFO    ] Checking for system updates...
[2026-08-31 15:15:07,882.882 INFO    ] 200
[2026-08-31 15:15:07,885.885 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:15:07,938.938 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:15:07,941.941 INFO    ] No update needed
[2026-08-31 15:15:07,943.943 INFO    ] Checking for camera pi updates...
[2026-08-31 15:15:07,977.977 INFO    ] 200
[2026-08-31 15:15:07,979.979 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:15:08,019.019 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:15:08,099.099 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:15:08,101.101 INFO    ] No camera update needed
[2026-08-31 15:15:08,103.103 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:15:08,106.106 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:15:08,111.111 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:15:08,116.116 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:15:10,157.157 INFO    ] ================================================
[2026-08-31 15:15:10,173.173 INFO    ] Launching Daemon at Mon Aug 31 15:15:10 IST 2026
[2026-08-31 15:15:10,185.185 INFO    ] ================================================
[2026-08-31 15:15:10,752.752 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:15:10
[2026-08-31 15:15:11,337.337 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:15:11,606.606 INFO    ] Initializing speech engine...
[2026-08-31 15:15:11,616.616 INFO    ] 2026-08-31 15:15:11
[2026-08-31 15:15:11,862.862 INFO    ] 2026-08-31 15:15:11
[2026-08-31 15:15:11,897.897 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:15:12,148.148 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:15:12,158.158 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:15:12,364.364 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:15:12,415.415 INFO    ] time= 31/08/2026 15:15:12
[2026-08-31 15:15:12,422.422 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:15:12,440.440 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:15:12,567.567 INFO    ] No existing commands found in stream
[2026-08-31 15:15:17,582.582 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:15:17,585.585 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-08-31 15:15:21,789.789 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 15:15:21,792.792 INFO    ] Checking for system updates...
[2026-08-31 15:15:21,827.827 INFO    ] 200
[2026-08-31 15:15:21,830.830 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:15:21,882.882 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:15:21,884.884 INFO    ] No update needed
[2026-08-31 15:15:21,886.886 INFO    ] Checking for camera pi updates...
[2026-08-31 15:15:21,919.919 INFO    ] 200
[2026-08-31 15:15:21,922.922 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:15:21,968.968 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:15:22,047.047 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:15:22,050.050 INFO    ] No camera update needed
[2026-08-31 15:15:22,052.052 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:15:22,054.054 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:15:22,059.059 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:15:22,064.064 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:15:24,105.105 INFO    ] ================================================
[2026-08-31 15:15:24,120.120 INFO    ] Launching Daemon at Mon Aug 31 15:15:24 IST 2026
[2026-08-31 15:15:24,131.131 INFO    ] ================================================
[2026-08-31 15:15:24,714.714 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:15:24
[2026-08-31 15:15:25,308.308 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:15:25,576.576 INFO    ] Initializing speech engine...
[2026-08-31 15:15:25,585.585 INFO    ] 2026-08-31 15:15:25
[2026-08-31 15:15:25,831.831 INFO    ] 2026-08-31 15:15:25
[2026-08-31 15:15:25,866.866 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:15:26,117.117 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:15:26,126.126 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:15:26,265.265 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:15:26,330.330 INFO    ] time= 31/08/2026 15:15:26
[2026-08-31 15:15:26,386.386 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:15:26,393.393 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:15:26,536.536 INFO    ] No existing commands found in stream
[2026-08-31 15:15:31,549.549 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:15:31,552.552 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-08-31 15:15:33,964.964 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 15:15:33,967.967 INFO    ] Checking for system updates...
[2026-08-31 15:15:34,004.004 INFO    ] 200
[2026-08-31 15:15:34,006.006 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:15:34,059.059 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:15:34,061.061 INFO    ] No update needed
[2026-08-31 15:15:34,064.064 INFO    ] Checking for camera pi updates...
[2026-08-31 15:15:34,102.102 INFO    ] 200
[2026-08-31 15:15:34,104.104 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:15:34,145.145 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:15:34,204.204 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:15:34,207.207 INFO    ] No camera update needed
[2026-08-31 15:15:34,209.209 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:15:34,212.212 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:15:34,217.217 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:15:34,222.222 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:15:36,263.263 INFO    ] ================================================
[2026-08-31 15:15:36,278.278 INFO    ] Launching Daemon at Mon Aug 31 15:15:36 IST 2026
[2026-08-31 15:15:36,289.289 INFO    ] ================================================
[2026-08-31 15:15:36,861.861 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:15:36
[2026-08-31 15:15:37,449.449 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:15:37,723.723 INFO    ] Initializing speech engine...
[2026-08-31 15:15:37,730.730 INFO    ] 2026-08-31 15:15:37
[2026-08-31 15:15:37,975.975 INFO    ] 2026-08-31 15:15:37
[2026-08-31 15:15:38,011.011 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:15:38,268.268 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:15:38,274.274 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:15:38,500.500 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:15:38,530.530 INFO    ] time= 31/08/2026 15:15:38
[2026-08-31 15:15:38,536.536 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:15:38,554.554 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:15:38,686.686 INFO    ] No existing commands found in stream
[2026-08-31 15:15:43,705.705 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:15:43,708.708 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-08-31 15:15:44,935.935 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 15:15:44,937.937 INFO    ] Checking for system updates...
[2026-08-31 15:15:44,974.974 INFO    ] 200
[2026-08-31 15:15:44,977.977 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:15:45,038.038 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:15:45,041.041 INFO    ] No update needed
[2026-08-31 15:15:45,044.044 INFO    ] Checking for camera pi updates...
[2026-08-31 15:15:45,082.082 INFO    ] 200
[2026-08-31 15:15:45,085.085 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:15:45,126.126 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:15:45,181.181 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:15:45,184.184 INFO    ] No camera update needed
[2026-08-31 15:15:45,186.186 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:15:45,189.189 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:15:45,195.195 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:15:45,201.201 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:15:47,245.245 INFO    ] ================================================
[2026-08-31 15:15:47,260.260 INFO    ] Launching Daemon at Mon Aug 31 15:15:47 IST 2026
[2026-08-31 15:15:47,272.272 INFO    ] ================================================
[2026-08-31 15:15:47,838.838 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:15:47
[2026-08-31 15:15:48,422.422 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:15:48,693.693 INFO    ] Initializing speech engine...
[2026-08-31 15:15:48,702.702 INFO    ] 2026-08-31 15:15:48
[2026-08-31 15:15:48,960.960 INFO    ] 2026-08-31 15:15:48
[2026-08-31 15:15:49,000.000 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:15:49,244.244 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:15:49,270.270 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:15:49,484.484 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:15:49,534.534 INFO    ] time= 31/08/2026 15:15:49
[2026-08-31 15:15:49,554.554 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:15:49,574.574 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:15:49,694.694 INFO    ] No existing commands found in stream
[2026-08-31 15:15:54,719.719 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:15:54,722.722 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-08-31 15:15:58,814.814 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 15:15:58,818.818 INFO    ] Checking for system updates...
[2026-08-31 15:15:58,873.873 INFO    ] 200
[2026-08-31 15:15:58,877.877 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:15:58,947.947 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:15:58,950.950 INFO    ] No update needed
[2026-08-31 15:15:58,954.954 INFO    ] Checking for camera pi updates...
[2026-08-31 15:15:58,991.991 INFO    ] 200
[2026-08-31 15:15:58,994.994 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:15:59,038.038 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:15:59,180.180 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:15:59,183.183 INFO    ] No camera update needed
[2026-08-31 15:15:59,187.187 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:15:59,190.190 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:15:59,196.196 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:15:59,203.203 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:16:01,271.271 INFO    ] ================================================
[2026-08-31 15:16:01,311.311 INFO    ] Launching Daemon at Mon Aug 31 15:16:01 IST 2026
[2026-08-31 15:16:01,341.341 INFO    ] ================================================
[2026-08-31 15:16:02,181.181 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:16:02
[2026-08-31 15:16:02,908.908 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:16:03,186.186 INFO    ] Initializing speech engine...
[2026-08-31 15:16:03,212.212 INFO    ] 2026-08-31 15:16:03
[2026-08-31 15:16:03,491.491 INFO    ] 2026-08-31 15:16:03
[2026-08-31 15:16:03,525.525 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:16:03,729.729 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:16:03,743.743 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:16:03,979.979 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:16:03,997.997 INFO    ] time= 31/08/2026 15:16:03
[2026-08-31 15:16:04,041.041 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:16:04,096.096 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:16:04,190.190 INFO    ] No existing commands found in stream
[2026-08-31 15:16:09,210.210 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:16:09,213.213 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-08-31 15:16:10,542.542 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 15:16:10,545.545 INFO    ] Checking for system updates...
[2026-08-31 15:16:10,581.581 INFO    ] 200
[2026-08-31 15:16:10,584.584 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:16:10,640.640 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:16:10,643.643 INFO    ] No update needed
[2026-08-31 15:16:10,645.645 INFO    ] Checking for camera pi updates...
[2026-08-31 15:16:10,680.680 INFO    ] 200
[2026-08-31 15:16:10,682.682 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:16:10,722.722 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:16:10,810.810 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:16:10,812.812 INFO    ] No camera update needed
[2026-08-31 15:16:10,814.814 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:16:10,817.817 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:16:10,822.822 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:16:10,827.827 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:16:12,869.869 INFO    ] ================================================
[2026-08-31 15:16:12,885.885 INFO    ] Launching Daemon at Mon Aug 31 15:16:12 IST 2026
[2026-08-31 15:16:12,896.896 INFO    ] ================================================
[2026-08-31 15:16:13,460.460 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:16:13
[2026-08-31 15:16:14,047.047 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:16:14,299.299 INFO    ] Initializing speech engine...
[2026-08-31 15:16:14,322.322 INFO    ] 2026-08-31 15:16:14
[2026-08-31 15:16:14,576.576 INFO    ] 2026-08-31 15:16:14
[2026-08-31 15:16:14,610.610 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:16:14,810.810 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:16:14,817.817 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:16:15,014.014 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:16:15,057.057 INFO    ] time= 31/08/2026 15:16:15
[2026-08-31 15:16:15,106.106 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:16:15,151.151 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:16:15,210.210 INFO    ] No existing commands found in stream
[2026-08-31 15:16:20,222.222 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:16:20,224.224 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-08-31 15:16:22,964.964 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 15:16:22,968.968 INFO    ] Checking for system updates...
[2026-08-31 15:16:23,005.005 INFO    ] 200
[2026-08-31 15:16:23,008.008 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:16:23,068.068 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:16:23,071.071 INFO    ] No update needed
[2026-08-31 15:16:23,074.074 INFO    ] Checking for camera pi updates...
[2026-08-31 15:16:23,109.109 INFO    ] 200
[2026-08-31 15:16:23,112.112 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:16:23,153.153 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:16:23,234.234 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:16:23,236.236 INFO    ] No camera update needed
[2026-08-31 15:16:23,239.239 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:16:23,242.242 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:16:23,248.248 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:16:23,254.254 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:16:25,296.296 INFO    ] ================================================
[2026-08-31 15:16:25,311.311 INFO    ] Launching Daemon at Mon Aug 31 15:16:25 IST 2026
[2026-08-31 15:16:25,322.322 INFO    ] ================================================
[2026-08-31 15:16:25,964.964 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:16:25
[2026-08-31 15:16:26,555.555 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:16:26,831.831 INFO    ] Initializing speech engine...
[2026-08-31 15:16:26,836.836 INFO    ] 2026-08-31 15:16:26
[2026-08-31 15:16:27,103.103 INFO    ] 2026-08-31 15:16:27
[2026-08-31 15:16:27,165.165 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:16:27,394.394 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:16:27,404.404 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:16:27,629.629 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:16:27,670.670 INFO    ] time= 31/08/2026 15:16:27
[2026-08-31 15:16:27,687.687 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:16:27,698.698 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:16:27,809.809 INFO    ] No existing commands found in stream
[2026-08-31 15:16:32,837.837 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:16:32,840.840 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-08-31 15:16:36,163.163 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 15:16:36,166.166 INFO    ] Checking for system updates...
[2026-08-31 15:16:36,202.202 INFO    ] 200
[2026-08-31 15:16:36,205.205 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:16:36,264.264 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:16:36,266.266 INFO    ] No update needed
[2026-08-31 15:16:36,269.269 INFO    ] Checking for camera pi updates...
[2026-08-31 15:16:36,308.308 INFO    ] 200
[2026-08-31 15:16:36,311.311 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:16:36,356.356 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:16:36,440.440 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:16:36,443.443 INFO    ] No camera update needed
[2026-08-31 15:16:36,445.445 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:16:36,448.448 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:16:36,454.454 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:16:36,460.460 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:16:38,500.500 INFO    ] ================================================
[2026-08-31 15:16:38,514.514 INFO    ] Launching Daemon at Mon Aug 31 15:16:38 IST 2026
[2026-08-31 15:16:38,525.525 INFO    ] ================================================
[2026-08-31 15:16:39,103.103 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:16:39
[2026-08-31 15:16:39,698.698 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:16:39,970.970 INFO    ] Initializing speech engine...
[2026-08-31 15:16:39,979.979 INFO    ] 2026-08-31 15:16:39
[2026-08-31 15:16:40,231.231 INFO    ] 2026-08-31 15:16:40
[2026-08-31 15:16:40,266.266 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:16:40,523.523 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:16:40,528.528 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:16:40,740.740 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:16:40,786.786 INFO    ] time= 31/08/2026 15:16:40
[2026-08-31 15:16:40,793.793 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:16:40,832.832 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:16:40,966.966 INFO    ] No existing commands found in stream
[2026-08-31 15:16:45,989.989 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:16:45,992.992 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-08-31 15:16:47,291.291 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 15:16:47,294.294 INFO    ] Checking for system updates...
[2026-08-31 15:16:47,329.329 INFO    ] 200
[2026-08-31 15:16:47,331.331 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:16:47,385.385 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:16:47,387.387 INFO    ] No update needed
[2026-08-31 15:16:47,390.390 INFO    ] Checking for camera pi updates...
[2026-08-31 15:16:47,423.423 INFO    ] 200
[2026-08-31 15:16:47,425.425 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:16:47,465.465 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:16:47,532.532 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:16:47,535.535 INFO    ] No camera update needed
[2026-08-31 15:16:47,538.538 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:16:47,540.540 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:16:47,546.546 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:16:47,552.552 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:16:49,594.594 INFO    ] ================================================
[2026-08-31 15:16:49,609.609 INFO    ] Launching Daemon at Mon Aug 31 15:16:49 IST 2026
[2026-08-31 15:16:49,619.619 INFO    ] ================================================
[2026-08-31 15:16:50,187.187 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:16:50
[2026-08-31 15:16:50,769.769 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:16:51,040.040 INFO    ] Initializing speech engine...
[2026-08-31 15:16:51,050.050 INFO    ] 2026-08-31 15:16:51
[2026-08-31 15:16:51,301.301 INFO    ] 2026-08-31 15:16:51
[2026-08-31 15:16:51,336.336 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:16:51,593.593 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:16:51,603.603 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:16:51,738.738 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:16:51,764.764 INFO    ] time= 31/08/2026 15:16:51
[2026-08-31 15:16:51,819.819 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:16:51,874.874 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:16:51,936.936 INFO    ] No existing commands found in stream
[2026-08-31 15:16:56,966.966 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:16:56,969.969 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-08-31 15:16:57,670.670 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 15:16:57,673.673 INFO    ] Checking for system updates...
[2026-08-31 15:16:57,708.708 INFO    ] 200
[2026-08-31 15:16:57,710.710 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:16:57,762.762 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:16:57,765.765 INFO    ] No update needed
[2026-08-31 15:16:57,768.768 INFO    ] Checking for camera pi updates...
[2026-08-31 15:16:57,801.801 INFO    ] 200
[2026-08-31 15:16:57,804.804 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:16:57,843.843 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:16:58,035.035 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:16:58,037.037 INFO    ] No camera update needed
[2026-08-31 15:16:58,040.040 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:16:58,042.042 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:16:58,048.048 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:16:58,053.053 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:17:00,093.093 INFO    ] ================================================
[2026-08-31 15:17:00,108.108 INFO    ] Launching Daemon at Mon Aug 31 15:17:00 IST 2026
[2026-08-31 15:17:00,119.119 INFO    ] ================================================
[2026-08-31 15:17:00,763.763 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:17:00
[2026-08-31 15:17:01,514.514 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:17:01,870.870 INFO    ] Initializing speech engine...
[2026-08-31 15:17:01,879.879 INFO    ] 2026-08-31 15:17:01
[2026-08-31 15:17:02,169.169 INFO    ] 2026-08-31 15:17:02
[2026-08-31 15:17:02,239.239 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:17:02,482.482 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:17:02,489.489 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:17:02,638.638 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:17:02,656.656 INFO    ] time= 31/08/2026 15:17:02
[2026-08-31 15:17:02,717.717 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:17:02,767.767 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:17:02,852.852 INFO    ] No existing commands found in stream
[2026-08-31 15:17:07,864.864 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:17:07,867.867 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-08-31 15:17:11,930.930 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 15:17:11,933.933 INFO    ] Checking for system updates...
[2026-08-31 15:17:11,969.969 INFO    ] 200
[2026-08-31 15:17:11,971.971 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:17:12,023.023 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:17:12,025.025 INFO    ] No update needed
[2026-08-31 15:17:12,028.028 INFO    ] Checking for camera pi updates...
[2026-08-31 15:17:12,061.061 INFO    ] 200
[2026-08-31 15:17:12,064.064 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:17:12,105.105 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:17:12,189.189 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:17:12,192.192 INFO    ] No camera update needed
[2026-08-31 15:17:12,194.194 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:17:12,197.197 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:17:12,202.202 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:17:12,207.207 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:17:14,249.249 INFO    ] ================================================
[2026-08-31 15:17:14,269.269 INFO    ] Launching Daemon at Mon Aug 31 15:17:14 IST 2026
[2026-08-31 15:17:14,280.280 INFO    ] ================================================
[2026-08-31 15:17:14,863.863 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:17:14
[2026-08-31 15:17:15,467.467 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:17:15,743.743 INFO    ] Initializing speech engine...
[2026-08-31 15:17:15,759.759 INFO    ] 2026-08-31 15:17:15
[2026-08-31 15:17:16,025.025 INFO    ] 2026-08-31 15:17:16
[2026-08-31 15:17:16,061.061 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:17:16,324.324 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:17:16,330.330 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:17:16,558.558 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:17:16,596.596 INFO    ] time= 31/08/2026 15:17:16
[2026-08-31 15:17:16,614.614 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:17:16,641.641 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:17:16,795.795 INFO    ] No existing commands found in stream
[2026-08-31 15:17:21,832.832 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:17:21,835.835 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-08-31 15:17:26,326.326 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 15:17:26,329.329 INFO    ] Checking for system updates...
[2026-08-31 15:17:26,366.366 INFO    ] 200
[2026-08-31 15:17:26,369.369 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:17:26,429.429 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:17:26,432.432 INFO    ] No update needed
[2026-08-31 15:17:26,435.435 INFO    ] Checking for camera pi updates...
[2026-08-31 15:17:26,470.470 INFO    ] 200
[2026-08-31 15:17:26,473.473 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:17:26,514.514 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:17:26,599.599 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:17:26,602.602 INFO    ] No camera update needed
[2026-08-31 15:17:26,604.604 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:17:26,607.607 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:17:26,613.613 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:17:26,619.619 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:17:28,660.660 INFO    ] ================================================
[2026-08-31 15:17:28,676.676 INFO    ] Launching Daemon at Mon Aug 31 15:17:28 IST 2026
[2026-08-31 15:17:28,686.686 INFO    ] ================================================
[2026-08-31 15:17:29,259.259 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:17:29
[2026-08-31 15:17:29,874.874 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:17:30,119.119 INFO    ] Initializing speech engine...
[2026-08-31 15:17:30,134.134 INFO    ] 2026-08-31 15:17:30
[2026-08-31 15:17:30,402.402 INFO    ] 2026-08-31 15:17:30
[2026-08-31 15:17:30,438.438 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:17:30,613.613 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:17:30,625.625 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:17:30,772.772 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:17:30,777.777 INFO    ] time= 31/08/2026 15:17:30
[2026-08-31 15:17:30,783.783 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:17:30,829.829 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:17:30,978.978 INFO    ] No existing commands found in stream
[2026-08-31 15:17:35,989.989 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:17:35,991.991 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-08-31 15:17:37,934.934 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 15:17:37,937.937 INFO    ] Checking for system updates...
[2026-08-31 15:17:37,976.976 INFO    ] 200
[2026-08-31 15:17:37,979.979 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:17:38,032.032 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:17:38,035.035 INFO    ] No update needed
[2026-08-31 15:17:38,038.038 INFO    ] Checking for camera pi updates...
[2026-08-31 15:17:38,071.071 INFO    ] 200
[2026-08-31 15:17:38,074.074 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:17:38,113.113 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:17:38,200.200 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:17:38,202.202 INFO    ] No camera update needed
[2026-08-31 15:17:38,204.204 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:17:38,207.207 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:17:38,212.212 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:17:38,217.217 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:17:40,258.258 INFO    ] ================================================
[2026-08-31 15:17:40,274.274 INFO    ] Launching Daemon at Mon Aug 31 15:17:40 IST 2026
[2026-08-31 15:17:40,285.285 INFO    ] ================================================
[2026-08-31 15:17:40,863.863 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:17:40
[2026-08-31 15:17:41,445.445 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:17:41,697.697 INFO    ] Initializing speech engine...
[2026-08-31 15:17:41,706.706 INFO    ] 2026-08-31 15:17:41
[2026-08-31 15:17:42,001.001 INFO    ] 2026-08-31 15:17:41
[2026-08-31 15:17:42,039.039 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:17:42,322.322 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:17:42,332.332 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:17:42,497.497 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:17:42,536.536 INFO    ] time= 31/08/2026 15:17:42
[2026-08-31 15:17:42,601.601 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:17:42,627.627 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:17:42,763.763 INFO    ] No existing commands found in stream
[2026-08-31 15:17:47,788.788 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:17:47,791.791 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-08-31 15:17:50,868.868 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 15:17:50,871.871 INFO    ] Checking for system updates...
[2026-08-31 15:17:50,906.906 INFO    ] 200
[2026-08-31 15:17:50,908.908 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:17:50,961.961 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:17:50,964.964 INFO    ] No update needed
[2026-08-31 15:17:50,966.966 INFO    ] Checking for camera pi updates...
[2026-08-31 15:17:51,000.000 INFO    ] 200
[2026-08-31 15:17:51,002.002 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:17:51,043.043 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:17:51,129.129 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:17:51,131.131 INFO    ] No camera update needed
[2026-08-31 15:17:51,133.133 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:17:51,135.135 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:17:51,141.141 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:17:51,146.146 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:17:53,186.186 INFO    ] ================================================
[2026-08-31 15:17:53,201.201 INFO    ] Launching Daemon at Mon Aug 31 15:17:53 IST 2026
[2026-08-31 15:17:53,212.212 INFO    ] ================================================
[2026-08-31 15:17:53,776.776 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:17:53
[2026-08-31 15:17:54,359.359 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:17:54,646.646 INFO    ] Initializing speech engine...
[2026-08-31 15:17:54,656.656 INFO    ] 2026-08-31 15:17:54
[2026-08-31 15:17:54,938.938 INFO    ] 2026-08-31 15:17:54
[2026-08-31 15:17:54,980.980 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:17:55,259.259 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:17:55,266.266 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:17:55,448.448 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:17:55,465.465 INFO    ] time= 31/08/2026 15:17:55
[2026-08-31 15:17:55,471.471 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:17:55,489.489 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:17:55,619.619 INFO    ] No existing commands found in stream
[2026-08-31 15:18:00,632.632 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:18:00,635.635 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-08-31 15:18:03,830.830 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 15:18:03,832.832 INFO    ] Checking for system updates...
[2026-08-31 15:18:03,868.868 INFO    ] 200
[2026-08-31 15:18:03,871.871 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:18:03,923.923 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:18:03,925.925 INFO    ] No update needed
[2026-08-31 15:18:03,927.927 INFO    ] Checking for camera pi updates...
[2026-08-31 15:18:03,960.960 INFO    ] 200
[2026-08-31 15:18:03,963.963 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:18:04,003.003 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:18:04,085.085 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:18:04,088.088 INFO    ] No camera update needed
[2026-08-31 15:18:04,090.090 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:18:04,092.092 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:18:04,098.098 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:18:04,103.103 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:18:06,145.145 INFO    ] ================================================
[2026-08-31 15:18:06,161.161 INFO    ] Launching Daemon at Mon Aug 31 15:18:06 IST 2026
[2026-08-31 15:18:06,172.172 INFO    ] ================================================
[2026-08-31 15:18:06,810.810 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:18:06
[2026-08-31 15:18:07,406.406 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:18:07,687.687 INFO    ] Initializing speech engine...
[2026-08-31 15:18:07,697.697 INFO    ] 2026-08-31 15:18:07
[2026-08-31 15:18:07,993.993 INFO    ] 2026-08-31 15:18:07
[2026-08-31 15:18:08,077.077 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:18:08,304.304 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:18:08,313.313 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:18:08,529.529 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:18:08,544.544 INFO    ] time= 31/08/2026 15:18:08
[2026-08-31 15:18:08,551.551 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:18:08,571.571 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:18:08,693.693 INFO    ] No existing commands found in stream
[2026-08-31 15:18:13,719.719 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:18:13,722.722 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-08-31 15:18:15,531.531 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 15:18:15,533.533 INFO    ] Checking for system updates...
[2026-08-31 15:18:15,569.569 INFO    ] 200
[2026-08-31 15:18:15,571.571 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:18:15,624.624 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:18:15,626.626 INFO    ] No update needed
[2026-08-31 15:18:15,629.629 INFO    ] Checking for camera pi updates...
[2026-08-31 15:18:15,662.662 INFO    ] 200
[2026-08-31 15:18:15,664.664 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:18:15,707.707 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:18:15,795.795 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:18:15,798.798 INFO    ] No camera update needed
[2026-08-31 15:18:15,800.800 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:18:15,802.802 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:18:15,808.808 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:18:15,813.813 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:18:17,854.854 INFO    ] ================================================
[2026-08-31 15:18:17,870.870 INFO    ] Launching Daemon at Mon Aug 31 15:18:17 IST 2026
[2026-08-31 15:18:17,881.881 INFO    ] ================================================
[2026-08-31 15:18:18,446.446 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:18:18
[2026-08-31 15:18:19,028.028 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:18:19,304.304 INFO    ] Initializing speech engine...
[2026-08-31 15:18:19,308.308 INFO    ] 2026-08-31 15:18:19
[2026-08-31 15:18:19,558.558 INFO    ] 2026-08-31 15:18:19
[2026-08-31 15:18:19,594.594 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:18:19,856.856 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:18:19,861.861 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:18:20,093.093 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:18:20,123.123 INFO    ] time= 31/08/2026 15:18:20
[2026-08-31 15:18:20,139.139 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:18:20,146.146 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:18:20,258.258 INFO    ] No existing commands found in stream
[2026-08-31 15:18:25,286.286 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:18:25,289.289 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-08-31 15:18:27,820.820 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 15:18:27,822.822 INFO    ] Checking for system updates...
[2026-08-31 15:18:27,859.859 INFO    ] 200
[2026-08-31 15:18:27,861.861 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:18:27,914.914 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:18:27,916.916 INFO    ] No update needed
[2026-08-31 15:18:27,918.918 INFO    ] Checking for camera pi updates...
[2026-08-31 15:18:27,952.952 INFO    ] 200
[2026-08-31 15:18:27,954.954 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:18:27,995.995 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:18:28,074.074 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:18:28,076.076 INFO    ] No camera update needed
[2026-08-31 15:18:28,079.079 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:18:28,081.081 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:18:28,086.086 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:18:28,091.091 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:18:30,135.135 INFO    ] ================================================
[2026-08-31 15:18:30,150.150 INFO    ] Launching Daemon at Mon Aug 31 15:18:30 IST 2026
[2026-08-31 15:18:30,161.161 INFO    ] ================================================
[2026-08-31 15:18:30,729.729 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:18:30
[2026-08-31 15:18:31,320.320 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:18:31,599.599 INFO    ] Initializing speech engine...
[2026-08-31 15:18:31,609.609 INFO    ] 2026-08-31 15:18:31
[2026-08-31 15:18:31,918.918 INFO    ] 2026-08-31 15:18:31
[2026-08-31 15:18:31,951.951 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:18:32,176.176 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:18:32,194.194 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:18:32,367.367 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:18:32,376.376 INFO    ] time= 31/08/2026 15:18:32
[2026-08-31 15:18:32,415.415 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:18:32,424.424 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:18:32,477.477 INFO    ] No existing commands found in stream
[2026-08-31 15:18:37,508.508 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:18:37,511.511 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-08-31 15:18:41,744.744 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 15:18:41,747.747 INFO    ] Checking for system updates...
[2026-08-31 15:18:41,782.782 INFO    ] 200
[2026-08-31 15:18:41,785.785 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:18:41,838.838 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:18:41,840.840 INFO    ] No update needed
[2026-08-31 15:18:41,843.843 INFO    ] Checking for camera pi updates...
[2026-08-31 15:18:41,876.876 INFO    ] 200
[2026-08-31 15:18:41,879.879 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:18:41,923.923 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:18:42,008.008 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:18:42,011.011 INFO    ] No camera update needed
[2026-08-31 15:18:42,013.013 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:18:42,015.015 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:18:42,020.020 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:18:42,025.025 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:18:44,066.066 INFO    ] ================================================
[2026-08-31 15:18:44,082.082 INFO    ] Launching Daemon at Mon Aug 31 15:18:44 IST 2026
[2026-08-31 15:18:44,094.094 INFO    ] ================================================
[2026-08-31 15:18:44,676.676 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:18:44
[2026-08-31 15:18:45,276.276 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:18:45,552.552 INFO    ] Initializing speech engine...
[2026-08-31 15:18:45,562.562 INFO    ] 2026-08-31 15:18:45
[2026-08-31 15:18:45,823.823 INFO    ] 2026-08-31 15:18:45
[2026-08-31 15:18:45,877.877 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:18:46,104.104 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:18:46,108.108 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:18:46,316.316 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:18:46,367.367 INFO    ] time= 31/08/2026 15:18:46
[2026-08-31 15:18:46,373.373 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:18:46,394.394 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:18:46,523.523 INFO    ] No existing commands found in stream
[2026-08-31 15:18:51,538.538 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:18:51,541.541 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-08-31 15:18:54,324.324 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 15:18:54,326.326 INFO    ] Checking for system updates...
[2026-08-31 15:18:54,362.362 INFO    ] 200
[2026-08-31 15:18:54,365.365 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:18:54,416.416 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:18:54,419.419 INFO    ] No update needed
[2026-08-31 15:18:54,421.421 INFO    ] Checking for camera pi updates...
[2026-08-31 15:18:54,457.457 INFO    ] 200
[2026-08-31 15:18:54,460.460 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:18:54,504.504 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:18:54,592.592 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:18:54,595.595 INFO    ] No camera update needed
[2026-08-31 15:18:54,598.598 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:18:54,600.600 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:18:54,606.606 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:18:54,612.612 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:18:56,652.652 INFO    ] ================================================
[2026-08-31 15:18:56,668.668 INFO    ] Launching Daemon at Mon Aug 31 15:18:56 IST 2026
[2026-08-31 15:18:56,679.679 INFO    ] ================================================
[2026-08-31 15:18:57,246.246 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:18:57
[2026-08-31 15:18:57,830.830 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:18:58,078.078 INFO    ] Initializing speech engine...
[2026-08-31 15:18:58,090.090 INFO    ] 2026-08-31 15:18:58
[2026-08-31 15:18:58,353.353 INFO    ] 2026-08-31 15:18:58
[2026-08-31 15:18:58,387.387 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:18:58,568.568 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:18:58,584.584 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:18:58,779.779 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:18:58,826.826 INFO    ] time= 31/08/2026 15:18:58
[2026-08-31 15:18:58,891.891 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:18:58,917.917 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:18:59,061.061 INFO    ] No existing commands found in stream
[2026-08-31 15:19:04,074.074 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:19:04,077.077 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-08-31 15:19:06,137.137 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 15:19:06,140.140 INFO    ] Checking for system updates...
[2026-08-31 15:19:06,176.176 INFO    ] 200
[2026-08-31 15:19:06,178.178 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:19:06,231.231 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:19:06,234.234 INFO    ] No update needed
[2026-08-31 15:19:06,236.236 INFO    ] Checking for camera pi updates...
[2026-08-31 15:19:06,269.269 INFO    ] 200
[2026-08-31 15:19:06,272.272 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:19:06,319.319 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:19:06,418.418 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:19:06,420.420 INFO    ] No camera update needed
[2026-08-31 15:19:06,423.423 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:19:06,425.425 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:19:06,430.430 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:19:06,435.435 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:19:08,476.476 INFO    ] ================================================
[2026-08-31 15:19:08,492.492 INFO    ] Launching Daemon at Mon Aug 31 15:19:08 IST 2026
[2026-08-31 15:19:08,503.503 INFO    ] ================================================
[2026-08-31 15:19:09,069.069 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:19:09
[2026-08-31 15:19:09,652.652 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:19:09,930.930 INFO    ] Initializing speech engine...
[2026-08-31 15:19:09,939.939 INFO    ] 2026-08-31 15:19:09
[2026-08-31 15:19:10,187.187 INFO    ] 2026-08-31 15:19:10
[2026-08-31 15:19:10,221.221 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:19:10,479.479 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:19:10,488.488 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:19:10,626.626 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:19:10,670.670 INFO    ] time= 31/08/2026 15:19:10
[2026-08-31 15:19:10,729.729 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:19:10,761.761 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:19:10,904.904 INFO    ] No existing commands found in stream
[2026-08-31 15:19:15,921.921 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:19:15,924.924 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-08-31 15:19:19,109.109 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 15:19:19,112.112 INFO    ] Checking for system updates...
[2026-08-31 15:19:19,147.147 INFO    ] 200
[2026-08-31 15:19:19,150.150 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:19:19,202.202 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:19:19,204.204 INFO    ] No update needed
[2026-08-31 15:19:19,207.207 INFO    ] Checking for camera pi updates...
[2026-08-31 15:19:19,242.242 INFO    ] 200
[2026-08-31 15:19:19,245.245 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:19:19,284.284 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:19:19,388.388 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:19:19,391.391 INFO    ] No camera update needed
[2026-08-31 15:19:19,394.394 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:19:19,396.396 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:19:19,402.402 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:19:19,408.408 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:19:21,449.449 INFO    ] ================================================
[2026-08-31 15:19:21,465.465 INFO    ] Launching Daemon at Mon Aug 31 15:19:21 IST 2026
[2026-08-31 15:19:21,476.476 INFO    ] ================================================
[2026-08-31 15:19:22,043.043 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:19:22
[2026-08-31 15:19:22,627.627 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:19:22,896.896 INFO    ] Initializing speech engine...
[2026-08-31 15:19:22,905.905 INFO    ] 2026-08-31 15:19:22
[2026-08-31 15:19:23,156.156 INFO    ] 2026-08-31 15:19:23
[2026-08-31 15:19:23,192.192 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:19:23,454.454 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:19:23,458.458 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:19:23,684.684 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:19:23,723.723 INFO    ] time= 31/08/2026 15:19:23
[2026-08-31 15:19:23,740.740 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:19:23,747.747 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:19:23,882.882 INFO    ] No existing commands found in stream
[2026-08-31 15:19:28,900.900 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:19:28,903.903 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-08-31 15:19:29,585.585 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 15:19:29,588.588 INFO    ] Checking for system updates...
[2026-08-31 15:19:29,626.626 INFO    ] 200
[2026-08-31 15:19:29,629.629 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:19:29,683.683 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:19:29,685.685 INFO    ] No update needed
[2026-08-31 15:19:29,688.688 INFO    ] Checking for camera pi updates...
[2026-08-31 15:19:29,723.723 INFO    ] 200
[2026-08-31 15:19:29,725.725 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:19:29,770.770 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:19:29,861.861 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:19:29,864.864 INFO    ] No camera update needed
[2026-08-31 15:19:29,867.867 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:19:29,869.869 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:19:29,874.874 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:19:29,879.879 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:19:31,921.921 INFO    ] ================================================
[2026-08-31 15:19:31,939.939 INFO    ] Launching Daemon at Mon Aug 31 15:19:31 IST 2026
[2026-08-31 15:19:31,952.952 INFO    ] ================================================
[2026-08-31 15:19:32,589.589 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:19:32
[2026-08-31 15:19:33,186.186 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:19:33,463.463 INFO    ] Initializing speech engine...
[2026-08-31 15:19:33,470.470 INFO    ] 2026-08-31 15:19:33
[2026-08-31 15:19:33,717.717 INFO    ] 2026-08-31 15:19:33
[2026-08-31 15:19:33,752.752 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:19:34,032.032 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:19:34,043.043 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:19:34,250.250 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:19:34,285.285 INFO    ] time= 31/08/2026 15:19:34
[2026-08-31 15:19:34,329.329 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:19:34,340.340 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:19:34,469.469 INFO    ] No existing commands found in stream
[2026-08-31 15:19:39,500.500 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:19:39,502.502 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-08-31 15:19:43,373.373 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 15:19:43,376.376 INFO    ] Checking for system updates...
[2026-08-31 15:19:43,413.413 INFO    ] 200
[2026-08-31 15:19:43,416.416 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:19:43,469.469 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:19:43,472.472 INFO    ] No update needed
[2026-08-31 15:19:43,474.474 INFO    ] Checking for camera pi updates...
[2026-08-31 15:19:43,511.511 INFO    ] 200
[2026-08-31 15:19:43,514.514 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:19:43,555.555 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:19:43,636.636 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:19:43,639.639 INFO    ] No camera update needed
[2026-08-31 15:19:43,641.641 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:19:43,644.644 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:19:43,650.650 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:19:43,656.656 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:19:45,698.698 INFO    ] ================================================
[2026-08-31 15:19:45,714.714 INFO    ] Launching Daemon at Mon Aug 31 15:19:45 IST 2026
[2026-08-31 15:19:45,725.725 INFO    ] ================================================
[2026-08-31 15:19:46,308.308 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:19:46
[2026-08-31 15:19:46,904.904 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:19:47,169.169 INFO    ] Initializing speech engine...
[2026-08-31 15:19:47,189.189 INFO    ] 2026-08-31 15:19:47
[2026-08-31 15:19:47,456.456 INFO    ] 2026-08-31 15:19:47
[2026-08-31 15:19:47,492.492 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:19:47,774.774 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:19:47,784.784 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:19:48,017.017 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:19:48,052.052 INFO    ] time= 31/08/2026 15:19:48
[2026-08-31 15:19:48,069.069 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:19:48,077.077 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:19:48,229.229 INFO    ] No existing commands found in stream
[2026-08-31 15:19:53,259.259 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:19:53,262.262 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-08-31 15:19:54,490.490 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 15:19:54,493.493 INFO    ] Checking for system updates...
[2026-08-31 15:19:54,530.530 INFO    ] 200
[2026-08-31 15:19:54,532.532 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:19:54,590.590 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:19:54,593.593 INFO    ] No update needed
[2026-08-31 15:19:54,595.595 INFO    ] Checking for camera pi updates...
[2026-08-31 15:19:54,629.629 INFO    ] 200
[2026-08-31 15:19:54,631.631 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:19:54,671.671 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:19:54,753.753 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:19:54,755.755 INFO    ] No camera update needed
[2026-08-31 15:19:54,758.758 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:19:54,760.760 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:19:54,766.766 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:19:54,771.771 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:19:56,810.810 INFO    ] ================================================
[2026-08-31 15:19:56,826.826 INFO    ] Launching Daemon at Mon Aug 31 15:19:56 IST 2026
[2026-08-31 15:19:56,837.837 INFO    ] ================================================
[2026-08-31 15:19:57,402.402 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:19:57
[2026-08-31 15:19:57,985.985 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:19:58,254.254 INFO    ] Initializing speech engine...
[2026-08-31 15:19:58,263.263 INFO    ] 2026-08-31 15:19:58
[2026-08-31 15:19:58,509.509 INFO    ] 2026-08-31 15:19:58
[2026-08-31 15:19:58,544.544 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:19:58,797.797 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:19:58,807.807 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:19:58,938.938 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:19:58,980.980 INFO    ] time= 31/08/2026 15:19:58
[2026-08-31 15:19:59,034.034 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:19:59,072.072 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:19:59,204.204 INFO    ] No existing commands found in stream
[2026-08-31 15:20:04,226.226 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:20:04,229.229 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-08-31 15:20:09,323.323 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 15:20:09,326.326 INFO    ] Checking for system updates...
[2026-08-31 15:20:09,380.380 INFO    ] 200
[2026-08-31 15:20:09,383.383 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:20:09,435.435 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:20:09,438.438 INFO    ] No update needed
[2026-08-31 15:20:09,440.440 INFO    ] Checking for camera pi updates...
[2026-08-31 15:20:09,475.475 INFO    ] 200
[2026-08-31 15:20:09,478.478 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:20:09,518.518 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:20:09,603.603 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:20:09,606.606 INFO    ] No camera update needed
[2026-08-31 15:20:09,608.608 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:20:09,611.611 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:20:09,616.616 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:20:09,621.621 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:20:11,662.662 INFO    ] ================================================
[2026-08-31 15:20:11,678.678 INFO    ] Launching Daemon at Mon Aug 31 15:20:11 IST 2026
[2026-08-31 15:20:11,689.689 INFO    ] ================================================
[2026-08-31 15:20:12,266.266 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:20:12
[2026-08-31 15:20:12,859.859 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:20:13,118.118 INFO    ] Initializing speech engine...
[2026-08-31 15:20:13,143.143 INFO    ] 2026-08-31 15:20:13
[2026-08-31 15:20:13,415.415 INFO    ] 2026-08-31 15:20:13
[2026-08-31 15:20:13,460.460 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:20:13,715.715 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:20:13,724.724 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:20:13,861.861 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:20:13,909.909 INFO    ] time= 31/08/2026 15:20:13
[2026-08-31 15:20:13,953.953 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:20:13,999.999 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:20:14,141.141 INFO    ] No existing commands found in stream
[2026-08-31 15:20:19,165.165 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:20:19,169.169 INFO    ] Waiting 4.00 seconds before fallback handling...
[2026-08-31 15:20:23,823.823 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 15:20:23,826.826 INFO    ] Checking for system updates...
[2026-08-31 15:20:23,863.863 INFO    ] 200
[2026-08-31 15:20:23,866.866 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:20:23,929.929 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:20:23,932.932 INFO    ] No update needed
[2026-08-31 15:20:23,935.935 INFO    ] Checking for camera pi updates...
[2026-08-31 15:20:23,969.969 INFO    ] 200
[2026-08-31 15:20:23,972.972 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:20:24,013.013 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:20:24,113.113 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:20:24,115.115 INFO    ] No camera update needed
[2026-08-31 15:20:24,119.119 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:20:24,121.121 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:20:24,128.128 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:20:24,133.133 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:20:26,174.174 INFO    ] ================================================
[2026-08-31 15:20:26,190.190 INFO    ] Launching Daemon at Mon Aug 31 15:20:26 IST 2026
[2026-08-31 15:20:26,201.201 INFO    ] ================================================
[2026-08-31 15:20:26,841.841 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:20:26
[2026-08-31 15:20:27,516.516 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:20:27,822.822 INFO    ] Initializing speech engine...
[2026-08-31 15:20:27,836.836 INFO    ] 2026-08-31 15:20:27
[2026-08-31 15:20:28,110.110 INFO    ] 2026-08-31 15:20:28
[2026-08-31 15:20:28,167.167 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:20:28,462.462 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:20:28,470.470 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:20:28,670.670 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:20:28,690.690 INFO    ] time= 31/08/2026 15:20:28
[2026-08-31 15:20:28,700.700 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:20:28,727.727 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:20:28,848.848 INFO    ] No existing commands found in stream
[2026-08-31 15:20:33,888.888 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:20:33,892.892 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-08-31 15:20:35,029.029 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 15:20:35,032.032 INFO    ] Checking for system updates...
[2026-08-31 15:20:35,070.070 INFO    ] 200
[2026-08-31 15:20:35,073.073 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:20:35,126.126 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:20:35,132.132 INFO    ] No update needed
[2026-08-31 15:20:35,134.134 INFO    ] Checking for camera pi updates...
[2026-08-31 15:20:35,175.175 INFO    ] 200
[2026-08-31 15:20:35,177.177 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:20:35,219.219 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:20:35,322.322 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:20:35,324.324 INFO    ] No camera update needed
[2026-08-31 15:20:35,327.327 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:20:35,329.329 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:20:35,334.334 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:20:35,339.339 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:20:37,379.379 INFO    ] ================================================
[2026-08-31 15:20:37,396.396 INFO    ] Launching Daemon at Mon Aug 31 15:20:37 IST 2026
[2026-08-31 15:20:37,407.407 INFO    ] ================================================
[2026-08-31 15:20:37,989.989 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:20:37
[2026-08-31 15:20:38,586.586 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:20:38,850.850 INFO    ] Initializing speech engine...
[2026-08-31 15:20:38,871.871 INFO    ] 2026-08-31 15:20:38
[2026-08-31 15:20:39,150.150 INFO    ] 2026-08-31 15:20:39
[2026-08-31 15:20:39,187.187 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:20:39,409.409 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:20:39,416.416 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:20:39,561.561 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:20:39,570.570 INFO    ] time= 31/08/2026 15:20:39
[2026-08-31 15:20:39,577.577 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:20:39,620.620 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:20:39,766.766 INFO    ] No existing commands found in stream
[2026-08-31 15:20:44,797.797 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:20:44,800.800 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-08-31 15:20:47,410.410 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 15:20:47,413.413 INFO    ] Checking for system updates...
[2026-08-31 15:20:47,448.448 INFO    ] 200
[2026-08-31 15:20:47,451.451 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:20:47,503.503 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:20:47,506.506 INFO    ] No update needed
[2026-08-31 15:20:47,508.508 INFO    ] Checking for camera pi updates...
[2026-08-31 15:20:47,541.541 INFO    ] 200
[2026-08-31 15:20:47,544.544 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:20:47,584.584 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:20:47,675.675 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:20:47,678.678 INFO    ] No camera update needed
[2026-08-31 15:20:47,680.680 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:20:47,682.682 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:20:47,687.687 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:20:47,692.692 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:20:49,733.733 INFO    ] ================================================
[2026-08-31 15:20:49,749.749 INFO    ] Launching Daemon at Mon Aug 31 15:20:49 IST 2026
[2026-08-31 15:20:49,760.760 INFO    ] ================================================
[2026-08-31 15:20:50,333.333 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:20:50
[2026-08-31 15:20:50,934.934 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:20:51,197.197 INFO    ] Initializing speech engine...
[2026-08-31 15:20:51,218.218 INFO    ] 2026-08-31 15:20:51
[2026-08-31 15:20:51,496.496 INFO    ] 2026-08-31 15:20:51
[2026-08-31 15:20:51,534.534 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:20:51,734.734 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:20:51,748.748 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:20:51,911.911 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:20:51,920.920 INFO    ] time= 31/08/2026 15:20:51
[2026-08-31 15:20:51,925.925 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:20:51,931.931 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:20:52,009.009 INFO    ] No existing commands found in stream
[2026-08-31 15:20:57,024.024 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:20:57,027.027 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-08-31 15:21:00,881.881 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 15:21:00,884.884 INFO    ] Checking for system updates...
[2026-08-31 15:21:00,919.919 INFO    ] 200
[2026-08-31 15:21:00,922.922 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:21:00,978.978 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:21:00,980.980 INFO    ] No update needed
[2026-08-31 15:21:00,983.983 INFO    ] Checking for camera pi updates...
[2026-08-31 15:21:01,016.016 INFO    ] 200
[2026-08-31 15:21:01,018.018 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:21:01,058.058 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:21:01,170.170 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:21:01,175.175 INFO    ] No camera update needed
[2026-08-31 15:21:01,179.179 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:21:01,186.186 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:21:01,196.196 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:21:01,205.205 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:21:03,252.252 INFO    ] ================================================
[2026-08-31 15:21:03,268.268 INFO    ] Launching Daemon at Mon Aug 31 15:21:03 IST 2026
[2026-08-31 15:21:03,279.279 INFO    ] ================================================
[2026-08-31 15:21:03,872.872 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:21:03
[2026-08-31 15:21:04,550.550 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:21:04,858.858 INFO    ] Initializing speech engine...
[2026-08-31 15:21:04,871.871 INFO    ] 2026-08-31 15:21:04
[2026-08-31 15:21:05,182.182 INFO    ] 2026-08-31 15:21:05
[2026-08-31 15:21:05,282.282 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:21:05,548.548 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:21:05,608.608 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:21:05,730.730 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:21:05,741.741 INFO    ] time= 31/08/2026 15:21:05
[2026-08-31 15:21:05,796.796 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:21:05,838.838 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:21:05,941.941 INFO    ] No existing commands found in stream
[2026-08-31 15:21:10,977.977 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:21:10,980.980 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-08-31 15:21:12,334.334 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 15:21:12,337.337 INFO    ] Checking for system updates...
[2026-08-31 15:21:12,373.373 INFO    ] 200
[2026-08-31 15:21:12,375.375 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:21:12,429.429 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:21:12,431.431 INFO    ] No update needed
[2026-08-31 15:21:12,434.434 INFO    ] Checking for camera pi updates...
[2026-08-31 15:21:12,467.467 INFO    ] 200
[2026-08-31 15:21:12,470.470 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:21:12,514.514 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:21:12,700.700 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:21:12,703.703 INFO    ] No camera update needed
[2026-08-31 15:21:12,705.705 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:21:12,707.707 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:21:12,713.713 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:21:12,718.718 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:21:14,759.759 INFO    ] ================================================
[2026-08-31 15:21:14,775.775 INFO    ] Launching Daemon at Mon Aug 31 15:21:14 IST 2026
[2026-08-31 15:21:14,786.786 INFO    ] ================================================
[2026-08-31 15:21:15,406.406 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:21:15
[2026-08-31 15:21:16,005.005 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:21:16,268.268 INFO    ] Initializing speech engine...
[2026-08-31 15:21:16,274.274 INFO    ] 2026-08-31 15:21:16
[2026-08-31 15:21:16,574.574 INFO    ] 2026-08-31 15:21:16
[2026-08-31 15:21:16,608.608 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:21:16,811.811 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:21:16,828.828 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:21:17,014.014 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:21:17,022.022 INFO    ] time= 31/08/2026 15:21:17
[2026-08-31 15:21:17,071.071 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:21:17,089.089 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:21:17,207.207 INFO    ] No existing commands found in stream
[2026-08-31 15:21:22,223.223 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:21:22,226.226 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-08-31 15:21:25,785.785 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 15:21:25,788.788 INFO    ] Checking for system updates...
[2026-08-31 15:21:25,824.824 INFO    ] 200
[2026-08-31 15:21:25,827.827 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:21:25,881.881 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:21:25,883.883 INFO    ] No update needed
[2026-08-31 15:21:25,886.886 INFO    ] Checking for camera pi updates...
[2026-08-31 15:21:25,921.921 INFO    ] 200
[2026-08-31 15:21:25,924.924 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:21:25,965.965 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:21:26,043.043 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:21:26,045.045 INFO    ] No camera update needed
[2026-08-31 15:21:26,048.048 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:21:26,051.051 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:21:26,057.057 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:21:26,064.064 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:21:28,106.106 INFO    ] ================================================
[2026-08-31 15:21:28,121.121 INFO    ] Launching Daemon at Mon Aug 31 15:21:28 IST 2026
[2026-08-31 15:21:28,132.132 INFO    ] ================================================
[2026-08-31 15:21:28,701.701 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:21:28
[2026-08-31 15:21:29,361.361 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:21:29,669.669 INFO    ] Initializing speech engine...
[2026-08-31 15:21:29,678.678 INFO    ] 2026-08-31 15:21:29
[2026-08-31 15:21:29,972.972 INFO    ] 2026-08-31 15:21:29
[2026-08-31 15:21:30,018.018 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:21:30,308.308 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:21:30,316.316 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:21:30,518.518 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:21:30,538.538 INFO    ] time= 31/08/2026 15:21:30
[2026-08-31 15:21:30,548.548 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:21:30,574.574 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:21:30,733.733 INFO    ] No existing commands found in stream
[2026-08-31 15:21:35,764.764 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:21:35,768.768 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-08-31 15:21:39,580.580 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 15:21:39,583.583 INFO    ] Checking for system updates...
[2026-08-31 15:21:39,619.619 INFO    ] 200
[2026-08-31 15:21:39,622.622 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:21:39,677.677 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:21:39,680.680 INFO    ] No update needed
[2026-08-31 15:21:39,683.683 INFO    ] Checking for camera pi updates...
[2026-08-31 15:21:39,719.719 INFO    ] 200
[2026-08-31 15:21:39,722.722 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:21:39,763.763 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:21:39,844.844 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:21:39,846.846 INFO    ] No camera update needed
[2026-08-31 15:21:39,849.849 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:21:39,852.852 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:21:39,858.858 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:21:39,864.864 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:21:41,907.907 INFO    ] ================================================
[2026-08-31 15:21:41,922.922 INFO    ] Launching Daemon at Mon Aug 31 15:21:41 IST 2026
[2026-08-31 15:21:41,933.933 INFO    ] ================================================
[2026-08-31 15:21:42,597.597 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:21:42
[2026-08-31 15:21:43,279.279 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:21:43,588.588 INFO    ] Initializing speech engine...
[2026-08-31 15:21:43,597.597 INFO    ] 2026-08-31 15:21:43
[2026-08-31 15:21:43,888.888 INFO    ] 2026-08-31 15:21:43
[2026-08-31 15:21:43,935.935 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:21:44,226.226 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:21:44,235.235 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:21:44,437.437 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:21:44,455.455 INFO    ] time= 31/08/2026 15:21:44
[2026-08-31 15:21:44,466.466 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:21:44,497.497 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:21:44,623.623 INFO    ] No existing commands found in stream
[2026-08-31 15:21:49,654.654 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:21:49,658.658 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-08-31 15:21:53,743.743 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 15:21:53,746.746 INFO    ] Checking for system updates...
[2026-08-31 15:21:53,784.784 INFO    ] 200
[2026-08-31 15:21:53,787.787 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:21:53,841.841 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:21:53,844.844 INFO    ] No update needed
[2026-08-31 15:21:53,847.847 INFO    ] Checking for camera pi updates...
[2026-08-31 15:21:53,882.882 INFO    ] 200
[2026-08-31 15:21:53,885.885 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:21:53,927.927 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:21:54,004.004 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:21:54,006.006 INFO    ] No camera update needed
[2026-08-31 15:21:54,009.009 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:21:54,012.012 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:21:54,018.018 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:21:54,024.024 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:21:56,068.068 INFO    ] ================================================
[2026-08-31 15:21:56,083.083 INFO    ] Launching Daemon at Mon Aug 31 15:21:56 IST 2026
[2026-08-31 15:21:56,094.094 INFO    ] ================================================
[2026-08-31 15:21:56,676.676 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:21:56
[2026-08-31 15:21:57,277.277 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:21:57,540.540 INFO    ] Initializing speech engine...
[2026-08-31 15:21:57,548.548 INFO    ] 2026-08-31 15:21:57
[2026-08-31 15:21:57,848.848 INFO    ] 2026-08-31 15:21:57
[2026-08-31 15:21:57,876.876 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:21:58,092.092 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:21:58,106.106 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:21:58,269.269 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:21:58,280.280 INFO    ] time= 31/08/2026 15:21:58
[2026-08-31 15:21:58,285.285 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:21:58,292.292 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:21:58,367.367 INFO    ] No existing commands found in stream
[2026-08-31 15:22:03,386.386 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:22:03,389.389 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-08-31 15:22:06,460.460 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 15:22:06,463.463 INFO    ] Checking for system updates...
[2026-08-31 15:22:06,498.498 INFO    ] 200
[2026-08-31 15:22:06,500.500 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:22:06,559.559 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:22:06,561.561 INFO    ] No update needed
[2026-08-31 15:22:06,564.564 INFO    ] Checking for camera pi updates...
[2026-08-31 15:22:06,597.597 INFO    ] 200
[2026-08-31 15:22:06,599.599 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:22:06,639.639 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:22:06,735.735 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:22:06,737.737 INFO    ] No camera update needed
[2026-08-31 15:22:06,740.740 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:22:06,742.742 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:22:06,747.747 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:22:06,752.752 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:22:08,792.792 INFO    ] ================================================
[2026-08-31 15:22:08,808.808 INFO    ] Launching Daemon at Mon Aug 31 15:22:08 IST 2026
[2026-08-31 15:22:08,819.819 INFO    ] ================================================
[2026-08-31 15:22:09,474.474 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:22:09
[2026-08-31 15:22:10,149.149 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:22:10,452.452 INFO    ] Initializing speech engine...
[2026-08-31 15:22:10,459.459 INFO    ] 2026-08-31 15:22:10
[2026-08-31 15:22:10,762.762 INFO    ] 2026-08-31 15:22:10
[2026-08-31 15:22:10,867.867 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:22:11,116.116 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:22:11,134.134 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:22:11,334.334 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:22:11,344.344 INFO    ] time= 31/08/2026 15:22:11
[2026-08-31 15:22:11,373.373 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:22:11,382.382 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:22:11,526.526 INFO    ] No existing commands found in stream
[2026-08-31 15:22:16,557.557 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:22:16,560.560 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-08-31 15:22:21,049.049 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 15:22:21,052.052 INFO    ] Checking for system updates...
[2026-08-31 15:22:21,090.090 INFO    ] 200
[2026-08-31 15:22:21,093.093 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:22:21,146.146 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:22:21,149.149 INFO    ] No update needed
[2026-08-31 15:22:21,151.151 INFO    ] Checking for camera pi updates...
[2026-08-31 15:22:21,190.190 INFO    ] 200
[2026-08-31 15:22:21,193.193 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:22:21,235.235 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:22:21,315.315 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:22:21,318.318 INFO    ] No camera update needed
[2026-08-31 15:22:21,321.321 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:22:21,324.324 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:22:21,330.330 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:22:21,336.336 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:22:23,379.379 INFO    ] ================================================
[2026-08-31 15:22:23,396.396 INFO    ] Launching Daemon at Mon Aug 31 15:22:23 IST 2026
[2026-08-31 15:22:23,408.408 INFO    ] ================================================
[2026-08-31 15:22:23,995.995 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:22:23
[2026-08-31 15:22:24,601.601 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:22:24,865.865 INFO    ] Initializing speech engine...
[2026-08-31 15:22:24,872.872 INFO    ] 2026-08-31 15:22:24
[2026-08-31 15:22:25,169.169 INFO    ] 2026-08-31 15:22:25
[2026-08-31 15:22:25,209.209 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:22:25,432.432 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:22:25,482.482 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:22:25,665.665 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:22:25,710.710 INFO    ] time= 31/08/2026 15:22:25
[2026-08-31 15:22:25,754.754 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:22:25,788.788 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:22:25,945.945 INFO    ] No existing commands found in stream
[2026-08-31 15:22:30,973.973 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:22:30,976.976 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-08-31 15:22:32,779.779 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 15:22:32,782.782 INFO    ] Checking for system updates...
[2026-08-31 15:22:32,820.820 INFO    ] 200
[2026-08-31 15:22:32,823.823 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-08-31 15:22:32,826.826 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-08-31 15:22:32,828.828 INFO    ] Checking for camera pi updates...
[2026-08-31 15:22:32,879.879 INFO    ] 200
[2026-08-31 15:22:32,882.882 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-08-31 15:22:32,885.885 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-08-31 15:22:32,888.888 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:22:32,890.890 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:22:32,896.896 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:22:32,902.902 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:22:34,944.944 INFO    ] ================================================
[2026-08-31 15:22:34,960.960 INFO    ] Launching Daemon at Mon Aug 31 15:22:34 IST 2026
[2026-08-31 15:22:34,970.970 INFO    ] ================================================
[2026-08-31 15:22:35,628.628 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:22:35
[2026-08-31 15:22:36,309.309 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:22:36,616.616 INFO    ] Initializing speech engine...
[2026-08-31 15:22:36,630.630 INFO    ] 2026-08-31 15:22:36
[2026-08-31 15:22:36,948.948 INFO    ] 2026-08-31 15:22:36
[2026-08-31 15:22:37,033.033 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:22:37,252.252 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:22:37,257.257 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:22:37,453.453 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:22:37,466.466 INFO    ] time= 31/08/2026 15:22:37
[2026-08-31 15:22:37,484.484 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:22:37,503.503 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:22:37,635.635 INFO    ] No existing commands found in stream
[2026-08-31 15:22:42,660.660 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:22:42,663.663 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-08-31 15:22:43,663.663 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 15:22:43,666.666 INFO    ] Checking for system updates...
[2026-08-31 15:22:43,704.704 INFO    ] 200
[2026-08-31 15:22:43,707.707 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:22:43,760.760 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:22:43,763.763 INFO    ] No update needed
[2026-08-31 15:22:43,766.766 INFO    ] Checking for camera pi updates...
[2026-08-31 15:22:43,801.801 INFO    ] 200
[2026-08-31 15:22:43,804.804 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:22:43,847.847 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:22:43,917.917 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:22:43,920.920 INFO    ] No camera update needed
[2026-08-31 15:22:43,923.923 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:22:43,926.926 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:22:43,932.932 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:22:43,938.938 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:22:45,980.980 INFO    ] ================================================
[2026-08-31 15:22:46,995.995 INFO    ] Launching Daemon at Mon Aug 31 15:22:45 IST 2026
[2026-08-31 15:22:46,006.006 INFO    ] ================================================
[2026-08-31 15:22:46,574.574 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:22:46
[2026-08-31 15:22:47,159.159 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:22:47,408.408 INFO    ] Initializing speech engine...
[2026-08-31 15:22:47,423.423 INFO    ] 2026-08-31 15:22:47
[2026-08-31 15:22:47,690.690 INFO    ] 2026-08-31 15:22:47
[2026-08-31 15:22:47,724.724 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:22:47,983.983 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:22:47,992.992 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:22:48,229.229 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:22:48,257.257 INFO    ] time= 31/08/2026 15:22:48
[2026-08-31 15:22:48,263.263 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:22:48,282.282 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:22:48,414.414 INFO    ] No existing commands found in stream
[2026-08-31 15:22:53,427.427 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:22:53,430.430 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-08-31 15:22:56,336.336 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 15:22:56,338.338 INFO    ] Checking for system updates...
[2026-08-31 15:22:56,375.375 INFO    ] 200
[2026-08-31 15:22:56,378.378 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:22:56,431.431 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:22:56,434.434 INFO    ] No update needed
[2026-08-31 15:22:56,437.437 INFO    ] Checking for camera pi updates...
[2026-08-31 15:22:56,471.471 INFO    ] 200
[2026-08-31 15:22:56,474.474 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:22:56,516.516 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:22:56,603.603 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:22:56,605.605 INFO    ] No camera update needed
[2026-08-31 15:22:56,608.608 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:22:56,611.611 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:22:56,618.618 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:22:56,623.623 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:22:58,666.666 INFO    ] ================================================
[2026-08-31 15:22:58,681.681 INFO    ] Launching Daemon at Mon Aug 31 15:22:58 IST 2026
[2026-08-31 15:22:58,692.692 INFO    ] ================================================
[2026-08-31 15:22:59,274.274 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:22:59
[2026-08-31 15:22:59,874.874 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:23:00,151.151 INFO    ] Initializing speech engine...
[2026-08-31 15:23:00,157.157 INFO    ] 2026-08-31 15:23:00
[2026-08-31 15:23:00,420.420 INFO    ] 2026-08-31 15:23:00
[2026-08-31 15:23:00,471.471 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:23:00,699.699 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:23:00,704.704 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:23:00,849.849 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:23:00,904.904 INFO    ] time= 31/08/2026 15:23:00
[2026-08-31 15:23:00,958.958 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:23:00,971.971 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:23:01,082.082 INFO    ] No existing commands found in stream
[2026-08-31 15:23:06,093.093 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:23:06,096.096 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-08-31 15:23:09,741.741 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 15:23:09,744.744 INFO    ] Checking for system updates...
[2026-08-31 15:23:09,779.779 INFO    ] 200
[2026-08-31 15:23:09,782.782 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:23:09,834.834 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:23:09,836.836 INFO    ] No update needed
[2026-08-31 15:23:09,839.839 INFO    ] Checking for camera pi updates...
[2026-08-31 15:23:09,872.872 INFO    ] 200
[2026-08-31 15:23:09,875.875 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:23:09,922.922 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:23:10,018.018 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:23:10,020.020 INFO    ] No camera update needed
[2026-08-31 15:23:10,022.022 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:23:10,024.024 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:23:10,030.030 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:23:10,035.035 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:23:12,077.077 INFO    ] ================================================
[2026-08-31 15:23:12,093.093 INFO    ] Launching Daemon at Mon Aug 31 15:23:12 IST 2026
[2026-08-31 15:23:12,104.104 INFO    ] ================================================
[2026-08-31 15:23:12,691.691 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:23:12
[2026-08-31 15:23:13,290.290 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:23:13,565.565 INFO    ] Initializing speech engine...
[2026-08-31 15:23:13,583.583 INFO    ] 2026-08-31 15:23:13
[2026-08-31 15:23:13,857.857 INFO    ] 2026-08-31 15:23:13
[2026-08-31 15:23:13,895.895 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:23:14,126.126 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:23:14,192.192 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:23:14,427.427 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:23:14,476.476 INFO    ] time= 31/08/2026 15:23:14
[2026-08-31 15:23:14,500.500 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:23:14,507.507 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:23:14,640.640 INFO    ] No existing commands found in stream
[2026-08-31 15:23:19,676.676 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:23:19,679.679 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-08-31 15:23:21,411.411 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 15:23:21,414.414 INFO    ] Checking for system updates...
[2026-08-31 15:23:21,452.452 INFO    ] 200
[2026-08-31 15:23:21,455.455 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:23:21,510.510 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:23:21,513.513 INFO    ] No update needed
[2026-08-31 15:23:21,516.516 INFO    ] Checking for camera pi updates...
[2026-08-31 15:23:21,551.551 INFO    ] 200
[2026-08-31 15:23:21,553.553 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:23:21,595.595 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:23:21,698.698 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:23:21,701.701 INFO    ] No camera update needed
[2026-08-31 15:23:21,704.704 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:23:21,706.706 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:23:21,713.713 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:23:21,719.719 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:23:23,760.760 INFO    ] ================================================
[2026-08-31 15:23:23,776.776 INFO    ] Launching Daemon at Mon Aug 31 15:23:23 IST 2026
[2026-08-31 15:23:23,786.786 INFO    ] ================================================
[2026-08-31 15:23:24,361.361 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:23:24
[2026-08-31 15:23:24,954.954 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:23:25,217.217 INFO    ] Initializing speech engine...
[2026-08-31 15:23:25,230.230 INFO    ] 2026-08-31 15:23:25
[2026-08-31 15:23:25,513.513 INFO    ] 2026-08-31 15:23:25
[2026-08-31 15:23:25,539.539 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:23:25,774.774 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:23:25,783.783 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:23:25,939.939 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:23:26,004.004 INFO    ] time= 31/08/2026 15:23:25
[2026-08-31 15:23:26,057.057 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:23:26,112.112 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:23:26,217.217 INFO    ] No existing commands found in stream
[2026-08-31 15:23:31,228.228 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:23:31,231.231 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-08-31 15:23:34,647.647 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 15:23:34,649.649 INFO    ] Checking for system updates...
[2026-08-31 15:23:34,684.684 INFO    ] 200
[2026-08-31 15:23:34,687.687 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:23:34,739.739 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:23:34,742.742 INFO    ] No update needed
[2026-08-31 15:23:34,744.744 INFO    ] Checking for camera pi updates...
[2026-08-31 15:23:34,778.778 INFO    ] 200
[2026-08-31 15:23:34,780.780 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:23:34,824.824 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:23:34,913.913 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:23:34,915.915 INFO    ] No camera update needed
[2026-08-31 15:23:34,918.918 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:23:34,920.920 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:23:34,925.925 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:23:34,930.930 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:23:36,970.970 INFO    ] ================================================
[2026-08-31 15:23:36,985.985 INFO    ] Launching Daemon at Mon Aug 31 15:23:36 IST 2026
[2026-08-31 15:23:37,996.996 INFO    ] ================================================
[2026-08-31 15:23:37,567.567 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:23:37
[2026-08-31 15:23:38,155.155 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:23:38,432.432 INFO    ] Initializing speech engine...
[2026-08-31 15:23:38,436.436 INFO    ] 2026-08-31 15:23:38
[2026-08-31 15:23:38,685.685 INFO    ] 2026-08-31 15:23:38
[2026-08-31 15:23:38,752.752 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:23:38,979.979 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:23:38,986.986 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:23:39,228.228 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:23:39,246.246 INFO    ] time= 31/08/2026 15:23:39
[2026-08-31 15:23:39,270.270 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:23:39,302.302 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:23:39,395.395 INFO    ] No existing commands found in stream
[2026-08-31 15:23:44,413.413 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:23:44,416.416 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-08-31 15:23:47,615.615 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 15:23:47,618.618 INFO    ] Checking for system updates...
[2026-08-31 15:23:47,653.653 INFO    ] 200
[2026-08-31 15:23:47,655.655 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:23:47,709.709 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:23:47,711.711 INFO    ] No update needed
[2026-08-31 15:23:47,714.714 INFO    ] Checking for camera pi updates...
[2026-08-31 15:23:47,747.747 INFO    ] 200
[2026-08-31 15:23:47,750.750 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:23:47,790.790 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:23:47,870.870 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:23:47,872.872 INFO    ] No camera update needed
[2026-08-31 15:23:47,874.874 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:23:47,877.877 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:23:47,882.882 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:23:47,887.887 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:23:49,928.928 INFO    ] ================================================
[2026-08-31 15:23:49,943.943 INFO    ] Launching Daemon at Mon Aug 31 15:23:49 IST 2026
[2026-08-31 15:23:49,954.954 INFO    ] ================================================
[2026-08-31 15:23:50,519.519 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:23:50
[2026-08-31 15:23:51,104.104 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:23:51,414.414 INFO    ] Initializing speech engine...
[2026-08-31 15:23:51,423.423 INFO    ] 2026-08-31 15:23:51
[2026-08-31 15:23:51,744.744 INFO    ] 2026-08-31 15:23:51
[2026-08-31 15:23:51,833.833 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:23:51,989.989 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:23:51,996.996 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:23:52,215.215 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:23:52,261.261 INFO    ] time= 31/08/2026 15:23:52
[2026-08-31 15:23:52,281.281 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:23:52,312.312 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:23:52,424.424 INFO    ] No existing commands found in stream
[2026-08-31 15:23:57,454.454 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:23:57,457.457 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-08-31 15:23:59,335.335 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 15:23:59,338.338 INFO    ] Checking for system updates...
[2026-08-31 15:23:59,376.376 INFO    ] 200
[2026-08-31 15:23:59,379.379 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:23:59,432.432 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:23:59,435.435 INFO    ] No update needed
[2026-08-31 15:23:59,438.438 INFO    ] Checking for camera pi updates...
[2026-08-31 15:23:59,473.473 INFO    ] 200
[2026-08-31 15:23:59,476.476 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:23:59,516.516 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:23:59,596.596 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:23:59,598.598 INFO    ] No camera update needed
[2026-08-31 15:23:59,601.601 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:23:59,603.603 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:23:59,614.614 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:23:59,620.620 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:24:01,665.665 INFO    ] ================================================
[2026-08-31 15:24:01,684.684 INFO    ] Launching Daemon at Mon Aug 31 15:24:01 IST 2026
[2026-08-31 15:24:01,701.701 INFO    ] ================================================
[2026-08-31 15:24:02,435.435 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:24:02
[2026-08-31 15:24:03,180.180 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:24:03,480.480 INFO    ] Initializing speech engine...
[2026-08-31 15:24:03,488.488 INFO    ] 2026-08-31 15:24:03
[2026-08-31 15:24:03,806.806 INFO    ] 2026-08-31 15:24:03
[2026-08-31 15:24:03,888.888 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:24:04,098.098 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:24:04,108.108 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:24:04,301.301 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:24:04,319.319 INFO    ] time= 31/08/2026 15:24:04
[2026-08-31 15:24:04,329.329 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:24:04,356.356 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:24:04,472.472 INFO    ] No existing commands found in stream
[2026-08-31 15:24:09,497.497 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:24:09,500.500 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-08-31 15:24:13,702.702 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 15:24:13,705.705 INFO    ] Checking for system updates...
[2026-08-31 15:24:13,742.742 INFO    ] 200
[2026-08-31 15:24:13,745.745 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:24:13,798.798 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:24:13,800.800 INFO    ] No update needed
[2026-08-31 15:24:13,803.803 INFO    ] Checking for camera pi updates...
[2026-08-31 15:24:13,841.841 INFO    ] 200
[2026-08-31 15:24:13,844.844 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:24:13,885.885 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:24:13,965.965 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:24:13,968.968 INFO    ] No camera update needed
[2026-08-31 15:24:13,971.971 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:24:13,974.974 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:24:13,980.980 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:24:13,985.985 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:24:16,026.026 INFO    ] ================================================
[2026-08-31 15:24:16,041.041 INFO    ] Launching Daemon at Mon Aug 31 15:24:16 IST 2026
[2026-08-31 15:24:16,058.058 INFO    ] ================================================
[2026-08-31 15:24:16,630.630 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:24:16
[2026-08-31 15:24:17,214.214 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:24:17,474.474 INFO    ] Initializing speech engine...
[2026-08-31 15:24:17,499.499 INFO    ] 2026-08-31 15:24:17
[2026-08-31 15:24:17,769.769 INFO    ] 2026-08-31 15:24:17
[2026-08-31 15:24:17,806.806 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:24:18,002.002 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:24:18,016.016 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:24:18,177.177 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:24:18,186.186 INFO    ] time= 31/08/2026 15:24:18
[2026-08-31 15:24:18,192.192 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:24:18,240.240 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:24:18,359.359 INFO    ] No existing commands found in stream
[2026-08-31 15:24:23,384.384 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:24:23,387.387 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-08-31 15:24:24,698.698 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 15:24:24,701.701 INFO    ] Checking for system updates...
[2026-08-31 15:24:24,755.755 INFO    ] 200
[2026-08-31 15:24:24,757.757 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:24:24,810.810 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:24:24,812.812 INFO    ] No update needed
[2026-08-31 15:24:24,815.815 INFO    ] Checking for camera pi updates...
[2026-08-31 15:24:24,848.848 INFO    ] 200
[2026-08-31 15:24:24,850.850 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:24:24,895.895 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:24:24,976.976 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:24:24,978.978 INFO    ] No camera update needed
[2026-08-31 15:24:24,980.980 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:24:24,983.983 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:24:24,988.988 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:24:24,993.993 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:24:27,033.033 INFO    ] ================================================
[2026-08-31 15:24:27,049.049 INFO    ] Launching Daemon at Mon Aug 31 15:24:27 IST 2026
[2026-08-31 15:24:27,060.060 INFO    ] ================================================
[2026-08-31 15:24:27,675.675 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:24:27
[2026-08-31 15:24:28,333.333 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:24:28,634.634 INFO    ] Initializing speech engine...
[2026-08-31 15:24:28,646.646 INFO    ] 2026-08-31 15:24:28
[2026-08-31 15:24:28,925.925 INFO    ] 2026-08-31 15:24:28
[2026-08-31 15:24:28,970.970 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:24:29,197.197 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:24:29,202.202 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:24:29,416.416 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:24:29,463.463 INFO    ] time= 31/08/2026 15:24:29
[2026-08-31 15:24:29,480.480 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:24:29,491.491 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:24:29,621.621 INFO    ] No existing commands found in stream
[2026-08-31 15:24:34,640.640 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:24:34,643.643 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-08-31 15:24:37,481.481 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 15:24:37,484.484 INFO    ] Checking for system updates...
[2026-08-31 15:24:37,525.525 INFO    ] 200
[2026-08-31 15:24:37,528.528 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:24:37,589.589 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:24:37,592.592 INFO    ] No update needed
[2026-08-31 15:24:37,595.595 INFO    ] Checking for camera pi updates...
[2026-08-31 15:24:37,629.629 INFO    ] 200
[2026-08-31 15:24:37,632.632 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:24:37,678.678 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:24:37,763.763 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:24:37,766.766 INFO    ] No camera update needed
[2026-08-31 15:24:37,769.769 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:24:37,772.772 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:24:37,778.778 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:24:37,784.784 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:24:39,825.825 INFO    ] ================================================
[2026-08-31 15:24:39,840.840 INFO    ] Launching Daemon at Mon Aug 31 15:24:39 IST 2026
[2026-08-31 15:24:39,851.851 INFO    ] ================================================
[2026-08-31 15:24:40,505.505 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:24:40
[2026-08-31 15:24:41,179.179 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:24:41,496.496 INFO    ] Initializing speech engine...
[2026-08-31 15:24:41,508.508 INFO    ] 2026-08-31 15:24:41
[2026-08-31 15:24:41,821.821 INFO    ] 2026-08-31 15:24:41
[2026-08-31 15:24:41,911.911 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:24:42,130.130 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:24:42,136.136 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:24:42,334.334 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:24:42,343.343 INFO    ] time= 31/08/2026 15:24:42
[2026-08-31 15:24:42,362.362 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:24:42,391.391 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:24:42,500.500 INFO    ] No existing commands found in stream
[2026-08-31 15:24:47,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:24:47,520.520 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-08-31 15:24:48,163.163 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 15:24:48,166.166 INFO    ] Checking for system updates...
[2026-08-31 15:24:48,207.207 INFO    ] 200
[2026-08-31 15:24:48,210.210 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:24:48,263.263 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:24:48,266.266 INFO    ] No update needed
[2026-08-31 15:24:48,269.269 INFO    ] Checking for camera pi updates...
[2026-08-31 15:24:48,304.304 INFO    ] 200
[2026-08-31 15:24:48,306.306 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:24:48,347.347 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:24:48,424.424 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:24:48,427.427 INFO    ] No camera update needed
[2026-08-31 15:24:48,429.429 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:24:48,431.431 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:24:48,437.437 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:24:48,442.442 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:24:50,481.481 INFO    ] ================================================
[2026-08-31 15:24:50,496.496 INFO    ] Launching Daemon at Mon Aug 31 15:24:50 IST 2026
[2026-08-31 15:24:50,507.507 INFO    ] ================================================
[2026-08-31 15:24:51,086.086 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:24:51
[2026-08-31 15:24:51,722.722 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:24:52,033.033 INFO    ] Initializing speech engine...
[2026-08-31 15:24:52,044.044 INFO    ] 2026-08-31 15:24:52
[2026-08-31 15:24:52,316.316 INFO    ] 2026-08-31 15:24:52
[2026-08-31 15:24:52,370.370 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:24:52,606.606 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:24:52,612.612 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:24:52,846.846 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:24:52,876.876 INFO    ] time= 31/08/2026 15:24:52
[2026-08-31 15:24:52,883.883 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:24:52,905.905 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:24:53,038.038 INFO    ] No existing commands found in stream
[2026-08-31 15:24:58,053.053 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:24:58,057.057 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-08-31 15:24:58,643.643 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 15:24:58,646.646 INFO    ] Checking for system updates...
[2026-08-31 15:24:58,683.683 INFO    ] 200
[2026-08-31 15:24:58,686.686 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:24:58,740.740 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:24:58,743.743 INFO    ] No update needed
[2026-08-31 15:24:58,745.745 INFO    ] Checking for camera pi updates...
[2026-08-31 15:24:58,780.780 INFO    ] 200
[2026-08-31 15:24:58,782.782 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:24:58,828.828 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:24:58,907.907 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:24:58,910.910 INFO    ] No camera update needed
[2026-08-31 15:24:58,912.912 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:24:58,915.915 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:24:58,920.920 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:24:58,925.925 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:25:00,967.967 INFO    ] ================================================
[2026-08-31 15:25:00,982.982 INFO    ] Launching Daemon at Mon Aug 31 15:25:00 IST 2026
[2026-08-31 15:25:00,993.993 INFO    ] ================================================
[2026-08-31 15:25:01,904.904 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:25:01
[2026-08-31 15:25:02,583.583 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:25:02,927.927 INFO    ] Initializing speech engine...
[2026-08-31 15:25:02,935.935 INFO    ] 2026-08-31 15:25:02
[2026-08-31 15:25:03,229.229 INFO    ] 2026-08-31 15:25:03
[2026-08-31 15:25:03,288.288 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:25:03,522.522 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:25:03,531.531 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:25:03,731.731 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:25:03,786.786 INFO    ] time= 31/08/2026 15:25:03
[2026-08-31 15:25:03,792.792 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:25:03,809.809 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:25:03,929.929 INFO    ] No existing commands found in stream
[2026-08-31 15:25:08,948.948 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:25:08,951.951 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-08-31 15:25:10,123.123 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 15:25:10,125.125 INFO    ] Checking for system updates...
[2026-08-31 15:25:10,161.161 INFO    ] 200
[2026-08-31 15:25:10,164.164 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:25:10,217.217 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:25:10,220.220 INFO    ] No update needed
[2026-08-31 15:25:10,223.223 INFO    ] Checking for camera pi updates...
[2026-08-31 15:25:10,257.257 INFO    ] 200
[2026-08-31 15:25:10,260.260 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:25:10,301.301 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:25:10,374.374 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:25:10,377.377 INFO    ] No camera update needed
[2026-08-31 15:25:10,380.380 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:25:10,383.383 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:25:10,389.389 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:25:10,394.394 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:25:12,436.436 INFO    ] ================================================
[2026-08-31 15:25:12,451.451 INFO    ] Launching Daemon at Mon Aug 31 15:25:12 IST 2026
[2026-08-31 15:25:12,461.461 INFO    ] ================================================
[2026-08-31 15:25:13,027.027 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:25:13
[2026-08-31 15:25:13,607.607 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:25:13,877.877 INFO    ] Initializing speech engine...
[2026-08-31 15:25:13,886.886 INFO    ] 2026-08-31 15:25:13
[2026-08-31 15:25:14,134.134 INFO    ] 2026-08-31 15:25:14
[2026-08-31 15:25:14,168.168 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:25:14,427.427 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:25:14,436.436 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:25:14,647.647 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:25:14,698.698 INFO    ] time= 31/08/2026 15:25:14
[2026-08-31 15:25:14,705.705 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:25:14,723.723 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:25:14,855.855 INFO    ] No existing commands found in stream
[2026-08-31 15:25:19,868.868 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:25:19,871.871 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-08-31 15:25:24,411.411 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 15:25:24,413.413 INFO    ] Checking for system updates...
[2026-08-31 15:25:24,450.450 INFO    ] 200
[2026-08-31 15:25:24,453.453 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:25:24,506.506 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:25:24,509.509 INFO    ] No update needed
[2026-08-31 15:25:24,512.512 INFO    ] Checking for camera pi updates...
[2026-08-31 15:25:24,546.546 INFO    ] 200
[2026-08-31 15:25:24,550.550 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:25:24,596.596 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:25:24,783.783 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:25:24,786.786 INFO    ] No camera update needed
[2026-08-31 15:25:24,789.789 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:25:24,792.792 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:25:24,798.798 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:25:24,804.804 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:25:26,848.848 INFO    ] ================================================
[2026-08-31 15:25:26,863.863 INFO    ] Launching Daemon at Mon Aug 31 15:25:26 IST 2026
[2026-08-31 15:25:26,873.873 INFO    ] ================================================
[2026-08-31 15:25:27,455.455 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:25:27
[2026-08-31 15:25:28,117.117 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:25:28,418.418 INFO    ] Initializing speech engine...
[2026-08-31 15:25:28,426.426 INFO    ] 2026-08-31 15:25:28
[2026-08-31 15:25:28,697.697 INFO    ] 2026-08-31 15:25:28
[2026-08-31 15:25:28,757.757 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:25:28,993.993 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:25:29,015.015 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:25:29,202.202 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:25:29,257.257 INFO    ] time= 31/08/2026 15:25:29
[2026-08-31 15:25:29,269.269 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:25:29,288.288 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:25:29,424.424 INFO    ] No existing commands found in stream
[2026-08-31 15:25:34,439.439 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:25:34,442.442 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-08-31 15:25:38,245.245 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 15:25:38,248.248 INFO    ] Checking for system updates...
[2026-08-31 15:25:38,289.289 INFO    ] 200
[2026-08-31 15:25:38,292.292 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:25:38,350.350 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:25:38,352.352 INFO    ] No update needed
[2026-08-31 15:25:38,355.355 INFO    ] Checking for camera pi updates...
[2026-08-31 15:25:38,392.392 INFO    ] 200
[2026-08-31 15:25:38,395.395 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:25:38,443.443 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:25:38,528.528 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:25:38,530.530 INFO    ] No camera update needed
[2026-08-31 15:25:38,533.533 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:25:38,535.535 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:25:38,541.541 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:25:38,547.547 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:25:40,586.586 INFO    ] ================================================
[2026-08-31 15:25:40,601.601 INFO    ] Launching Daemon at Mon Aug 31 15:25:40 IST 2026
[2026-08-31 15:25:40,612.612 INFO    ] ================================================
[2026-08-31 15:25:41,175.175 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:25:41
[2026-08-31 15:25:41,759.759 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:25:42,028.028 INFO    ] Initializing speech engine...
[2026-08-31 15:25:42,037.037 INFO    ] 2026-08-31 15:25:42
[2026-08-31 15:25:42,285.285 INFO    ] 2026-08-31 15:25:42
[2026-08-31 15:25:42,321.321 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:25:42,554.554 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:25:42,581.581 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:25:42,722.722 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:25:42,775.775 INFO    ] time= 31/08/2026 15:25:42
[2026-08-31 15:25:42,819.819 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:25:42,859.859 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:25:43,006.006 INFO    ] No existing commands found in stream
[2026-08-31 15:25:48,022.022 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:25:48,024.024 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-08-31 15:25:52,056.056 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 15:25:52,059.059 INFO    ] Checking for system updates...
[2026-08-31 15:25:52,094.094 INFO    ] 200
[2026-08-31 15:25:52,096.096 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:25:52,151.151 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:25:52,153.153 INFO    ] No update needed
[2026-08-31 15:25:52,156.156 INFO    ] Checking for camera pi updates...
[2026-08-31 15:25:52,189.189 INFO    ] 200
[2026-08-31 15:25:52,191.191 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:25:52,235.235 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:25:52,324.324 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:25:52,326.326 INFO    ] No camera update needed
[2026-08-31 15:25:52,329.329 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:25:52,331.331 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:25:52,336.336 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:25:52,341.341 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:25:54,382.382 INFO    ] ================================================
[2026-08-31 15:25:54,397.397 INFO    ] Launching Daemon at Mon Aug 31 15:25:54 IST 2026
[2026-08-31 15:25:54,407.407 INFO    ] ================================================
[2026-08-31 15:25:54,990.990 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:25:54
[2026-08-31 15:25:55,589.589 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:25:55,866.866 INFO    ] Initializing speech engine...
[2026-08-31 15:25:55,872.872 INFO    ] 2026-08-31 15:25:55
[2026-08-31 15:25:56,120.120 INFO    ] 2026-08-31 15:25:56
[2026-08-31 15:25:56,155.155 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:25:56,413.413 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:25:56,418.418 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:25:56,607.607 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:25:56,662.662 INFO    ] time= 31/08/2026 15:25:56
[2026-08-31 15:25:56,680.680 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:25:56,686.686 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:25:56,827.827 INFO    ] No existing commands found in stream
[2026-08-31 15:26:01,840.840 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:26:01,844.844 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-08-31 15:26:03,686.686 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 15:26:03,689.689 INFO    ] Checking for system updates...
[2026-08-31 15:26:03,724.724 INFO    ] 200
[2026-08-31 15:26:03,727.727 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:26:03,779.779 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:26:03,781.781 INFO    ] No update needed
[2026-08-31 15:26:03,783.783 INFO    ] Checking for camera pi updates...
[2026-08-31 15:26:03,820.820 INFO    ] 200
[2026-08-31 15:26:03,822.822 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:26:03,866.866 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:26:03,972.972 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:26:03,974.974 INFO    ] No camera update needed
[2026-08-31 15:26:03,977.977 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:26:03,979.979 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:26:03,985.985 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:26:03,990.990 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:26:06,033.033 INFO    ] ================================================
[2026-08-31 15:26:06,048.048 INFO    ] Launching Daemon at Mon Aug 31 15:26:06 IST 2026
[2026-08-31 15:26:06,059.059 INFO    ] ================================================
[2026-08-31 15:26:06,647.647 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:26:06
[2026-08-31 15:26:07,251.251 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:26:07,521.521 INFO    ] Initializing speech engine...
[2026-08-31 15:26:07,536.536 INFO    ] 2026-08-31 15:26:07
[2026-08-31 15:26:07,802.802 INFO    ] 2026-08-31 15:26:07
[2026-08-31 15:26:07,839.839 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:26:08,052.052 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:26:08,060.060 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:26:08,205.205 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:26:08,258.258 INFO    ] time= 31/08/2026 15:26:08
[2026-08-31 15:26:08,281.281 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:26:08,326.326 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:26:08,443.443 INFO    ] No existing commands found in stream
[2026-08-31 15:26:13,453.453 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:26:13,456.456 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-08-31 15:26:14,292.292 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 15:26:14,294.294 INFO    ] Checking for system updates...
[2026-08-31 15:26:14,330.330 INFO    ] 200
[2026-08-31 15:26:14,333.333 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:26:14,385.385 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:26:14,388.388 INFO    ] No update needed
[2026-08-31 15:26:14,390.390 INFO    ] Checking for camera pi updates...
[2026-08-31 15:26:14,424.424 INFO    ] 200
[2026-08-31 15:26:14,426.426 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:26:14,466.466 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:26:14,566.566 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:26:14,568.568 INFO    ] No camera update needed
[2026-08-31 15:26:14,571.571 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:26:14,573.573 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:26:14,578.578 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:26:14,583.583 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:26:16,623.623 INFO    ] ================================================
[2026-08-31 15:26:16,637.637 INFO    ] Launching Daemon at Mon Aug 31 15:26:16 IST 2026
[2026-08-31 15:26:16,648.648 INFO    ] ================================================
[2026-08-31 15:26:17,222.222 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:26:17
[2026-08-31 15:26:17,806.806 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:26:18,064.064 INFO    ] Initializing speech engine...
[2026-08-31 15:26:18,088.088 INFO    ] 2026-08-31 15:26:18
[2026-08-31 15:26:18,355.355 INFO    ] 2026-08-31 15:26:18
[2026-08-31 15:26:18,390.390 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:26:18,606.606 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:26:18,669.669 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:26:18,822.822 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:26:18,859.859 INFO    ] time= 31/08/2026 15:26:18
[2026-08-31 15:26:18,913.913 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:26:18,966.966 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:26:19,111.111 INFO    ] No existing commands found in stream
[2026-08-31 15:26:24,139.139 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:26:24,141.141 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-08-31 15:26:24,820.820 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 15:26:24,823.823 INFO    ] Checking for system updates...
[2026-08-31 15:26:24,861.861 INFO    ] 200
[2026-08-31 15:26:24,864.864 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:26:24,920.920 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:26:24,923.923 INFO    ] No update needed
[2026-08-31 15:26:24,925.925 INFO    ] Checking for camera pi updates...
[2026-08-31 15:26:24,959.959 INFO    ] 200
[2026-08-31 15:26:24,962.962 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:26:25,003.003 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:26:25,087.087 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:26:25,090.090 INFO    ] No camera update needed
[2026-08-31 15:26:25,092.092 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:26:25,095.095 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:26:25,101.101 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:26:25,106.106 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:26:27,147.147 INFO    ] ================================================
[2026-08-31 15:26:27,163.163 INFO    ] Launching Daemon at Mon Aug 31 15:26:27 IST 2026
[2026-08-31 15:26:27,176.176 INFO    ] ================================================
[2026-08-31 15:26:27,749.749 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:26:27
[2026-08-31 15:26:28,335.335 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:26:28,608.608 INFO    ] Initializing speech engine...
[2026-08-31 15:26:28,622.622 INFO    ] 2026-08-31 15:26:28
[2026-08-31 15:26:28,882.882 INFO    ] 2026-08-31 15:26:28
[2026-08-31 15:26:28,917.917 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:26:29,129.129 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:26:29,157.157 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:26:29,348.348 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:26:29,359.359 INFO    ] time= 31/08/2026 15:26:29
[2026-08-31 15:26:29,435.435 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:26:29,489.489 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:26:29,637.637 INFO    ] No existing commands found in stream
[2026-08-31 15:26:34,667.667 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:26:34,670.670 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-08-31 15:26:36,609.609 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 15:26:36,612.612 INFO    ] Checking for system updates...
[2026-08-31 15:26:36,648.648 INFO    ] 200
[2026-08-31 15:26:36,651.651 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:26:36,703.703 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:26:36,706.706 INFO    ] No update needed
[2026-08-31 15:26:36,708.708 INFO    ] Checking for camera pi updates...
[2026-08-31 15:26:36,742.742 INFO    ] 200
[2026-08-31 15:26:36,745.745 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:26:36,789.789 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:26:36,889.889 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:26:36,892.892 INFO    ] No camera update needed
[2026-08-31 15:26:36,894.894 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:26:36,897.897 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:26:36,903.903 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:26:36,908.908 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:26:38,948.948 INFO    ] ================================================
[2026-08-31 15:26:38,963.963 INFO    ] Launching Daemon at Mon Aug 31 15:26:38 IST 2026
[2026-08-31 15:26:38,973.973 INFO    ] ================================================
[2026-08-31 15:26:39,542.542 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:26:39
[2026-08-31 15:26:40,128.128 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:26:40,380.380 INFO    ] Initializing speech engine...
[2026-08-31 15:26:40,387.387 INFO    ] 2026-08-31 15:26:40
[2026-08-31 15:26:40,672.672 INFO    ] 2026-08-31 15:26:40
[2026-08-31 15:26:40,710.710 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:26:40,925.925 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:26:40,974.974 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:26:41,141.141 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:26:41,147.147 INFO    ] time= 31/08/2026 15:26:41
[2026-08-31 15:26:41,201.201 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:26:41,255.255 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:26:41,415.415 INFO    ] No existing commands found in stream
[2026-08-31 15:26:46,445.445 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:26:46,448.448 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-08-31 15:26:48,816.816 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 15:26:48,818.818 INFO    ] Checking for system updates...
[2026-08-31 15:26:48,856.856 INFO    ] 200
[2026-08-31 15:26:48,859.859 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:26:48,911.911 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:26:48,913.913 INFO    ] No update needed
[2026-08-31 15:26:48,916.916 INFO    ] Checking for camera pi updates...
[2026-08-31 15:26:48,949.949 INFO    ] 200
[2026-08-31 15:26:48,952.952 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:26:48,991.991 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:26:49,073.073 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:26:49,076.076 INFO    ] No camera update needed
[2026-08-31 15:26:49,078.078 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:26:49,080.080 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:26:49,086.086 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:26:49,091.091 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:26:51,131.131 INFO    ] ================================================
[2026-08-31 15:26:51,145.145 INFO    ] Launching Daemon at Mon Aug 31 15:26:51 IST 2026
[2026-08-31 15:26:51,156.156 INFO    ] ================================================
[2026-08-31 15:26:51,737.737 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:26:51
[2026-08-31 15:26:52,332.332 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:26:52,613.613 INFO    ] Initializing speech engine...
[2026-08-31 15:26:52,622.622 INFO    ] 2026-08-31 15:26:52
[2026-08-31 15:26:52,881.881 INFO    ] 2026-08-31 15:26:52
[2026-08-31 15:26:52,920.920 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:26:53,130.130 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:26:53,137.137 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:26:53,418.418 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:26:53,478.478 INFO    ] time= 31/08/2026 15:26:53
[2026-08-31 15:26:53,492.492 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:26:53,508.508 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:26:53,625.625 INFO    ] No existing commands found in stream
[2026-08-31 15:26:58,656.656 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:26:58,659.659 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-08-31 15:27:01,587.587 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 15:27:01,591.591 INFO    ] Checking for system updates...
[2026-08-31 15:27:01,641.641 INFO    ] 200
[2026-08-31 15:27:01,644.644 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:27:01,739.739 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:27:01,742.742 INFO    ] No update needed
[2026-08-31 15:27:01,745.745 INFO    ] Checking for camera pi updates...
[2026-08-31 15:27:01,807.807 INFO    ] 200
[2026-08-31 15:27:01,813.813 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:27:01,871.871 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:27:01,964.964 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:27:01,967.967 INFO    ] No camera update needed
[2026-08-31 15:27:01,970.970 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:27:01,972.972 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:27:01,979.979 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:27:01,985.985 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:27:04,027.027 INFO    ] ================================================
[2026-08-31 15:27:04,043.043 INFO    ] Launching Daemon at Mon Aug 31 15:27:04 IST 2026
[2026-08-31 15:27:04,053.053 INFO    ] ================================================
[2026-08-31 15:27:04,626.626 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:27:04
[2026-08-31 15:27:05,223.223 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:27:05,475.475 INFO    ] Initializing speech engine...
[2026-08-31 15:27:05,488.488 INFO    ] 2026-08-31 15:27:05
[2026-08-31 15:27:05,753.753 INFO    ] 2026-08-31 15:27:05
[2026-08-31 15:27:05,788.788 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:27:06,044.044 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:27:06,051.051 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:27:06,316.316 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:27:06,334.334 INFO    ] time= 31/08/2026 15:27:06
[2026-08-31 15:27:06,343.343 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:27:06,369.369 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:27:06,475.475 INFO    ] No existing commands found in stream
[2026-08-31 15:27:11,499.499 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:27:11,502.502 INFO    ] Waiting 4.00 seconds before fallback handling...
[2026-08-31 15:27:16,001.001 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 15:27:16,004.004 INFO    ] Checking for system updates...
[2026-08-31 15:27:16,039.039 INFO    ] 200
[2026-08-31 15:27:16,042.042 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:27:16,093.093 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:27:16,096.096 INFO    ] No update needed
[2026-08-31 15:27:16,099.099 INFO    ] Checking for camera pi updates...
[2026-08-31 15:27:16,132.132 INFO    ] 200
[2026-08-31 15:27:16,134.134 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:27:16,178.178 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:27:16,259.259 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:27:16,261.261 INFO    ] No camera update needed
[2026-08-31 15:27:16,263.263 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:27:16,266.266 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:27:16,271.271 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:27:16,276.276 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:27:18,317.317 INFO    ] ================================================
[2026-08-31 15:27:18,332.332 INFO    ] Launching Daemon at Mon Aug 31 15:27:18 IST 2026
[2026-08-31 15:27:18,342.342 INFO    ] ================================================
[2026-08-31 15:27:18,964.964 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:27:18
[2026-08-31 15:27:19,604.604 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:27:19,892.892 INFO    ] Initializing speech engine...
[2026-08-31 15:27:19,903.903 INFO    ] 2026-08-31 15:27:19
[2026-08-31 15:27:20,169.169 INFO    ] 2026-08-31 15:27:20
[2026-08-31 15:27:20,223.223 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:27:20,475.475 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:27:20,480.480 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:27:20,692.692 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:27:20,719.719 INFO    ] time= 31/08/2026 15:27:20
[2026-08-31 15:27:20,737.737 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:27:20,754.754 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:27:20,873.873 INFO    ] No existing commands found in stream
[2026-08-31 15:27:25,888.888 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:27:25,891.891 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-08-31 15:27:29,931.931 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 15:27:29,934.934 INFO    ] Checking for system updates...
[2026-08-31 15:27:29,970.970 INFO    ] 200
[2026-08-31 15:27:29,972.972 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:27:30,025.025 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:27:30,027.027 INFO    ] No update needed
[2026-08-31 15:27:30,030.030 INFO    ] Checking for camera pi updates...
[2026-08-31 15:27:30,064.064 INFO    ] 200
[2026-08-31 15:27:30,066.066 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:27:30,107.107 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:27:30,281.281 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:27:30,283.283 INFO    ] No camera update needed
[2026-08-31 15:27:30,285.285 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:27:30,288.288 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:27:30,293.293 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:27:30,298.298 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:27:32,340.340 INFO    ] ================================================
[2026-08-31 15:27:32,356.356 INFO    ] Launching Daemon at Mon Aug 31 15:27:32 IST 2026
[2026-08-31 15:27:32,367.367 INFO    ] ================================================
[2026-08-31 15:27:32,978.978 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:27:32
[2026-08-31 15:27:33,573.573 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:27:33,846.846 INFO    ] Initializing speech engine...
[2026-08-31 15:27:33,859.859 INFO    ] 2026-08-31 15:27:33
[2026-08-31 15:27:34,115.115 INFO    ] 2026-08-31 15:27:34
[2026-08-31 15:27:34,152.152 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:27:34,428.428 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:27:34,437.437 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:27:34,661.661 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:27:34,718.718 INFO    ] time= 31/08/2026 15:27:34
[2026-08-31 15:27:34,725.725 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:27:34,741.741 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:27:34,884.884 INFO    ] No existing commands found in stream
[2026-08-31 15:27:39,900.900 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:27:39,903.903 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-08-31 15:27:43,808.808 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 15:27:43,810.810 INFO    ] Checking for system updates...
[2026-08-31 15:27:43,846.846 INFO    ] 200
[2026-08-31 15:27:43,849.849 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:27:43,900.900 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:27:43,903.903 INFO    ] No update needed
[2026-08-31 15:27:43,905.905 INFO    ] Checking for camera pi updates...
[2026-08-31 15:27:43,938.938 INFO    ] 200
[2026-08-31 15:27:43,941.941 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:27:43,981.981 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:27:44,082.082 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:27:44,085.085 INFO    ] No camera update needed
[2026-08-31 15:27:44,087.087 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:27:44,089.089 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:27:44,095.095 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:27:44,100.100 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:27:46,139.139 INFO    ] ================================================
[2026-08-31 15:27:46,154.154 INFO    ] Launching Daemon at Mon Aug 31 15:27:46 IST 2026
[2026-08-31 15:27:46,165.165 INFO    ] ================================================
[2026-08-31 15:27:46,741.741 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:27:46
[2026-08-31 15:27:47,339.339 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:27:47,595.595 INFO    ] Initializing speech engine...
[2026-08-31 15:27:47,618.618 INFO    ] 2026-08-31 15:27:47
[2026-08-31 15:27:47,873.873 INFO    ] 2026-08-31 15:27:47
[2026-08-31 15:27:47,907.907 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:27:48,160.160 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:27:48,169.169 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:27:48,376.376 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:27:48,428.428 INFO    ] time= 31/08/2026 15:27:48
[2026-08-31 15:27:48,434.434 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:27:48,455.455 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:27:48,567.567 INFO    ] No existing commands found in stream
[2026-08-31 15:27:53,591.591 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:27:53,594.594 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-08-31 15:27:56,047.047 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 15:27:56,049.049 INFO    ] Checking for system updates...
[2026-08-31 15:27:56,084.084 INFO    ] 200
[2026-08-31 15:27:56,087.087 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:27:56,140.140 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:27:56,142.142 INFO    ] No update needed
[2026-08-31 15:27:56,145.145 INFO    ] Checking for camera pi updates...
[2026-08-31 15:27:56,184.184 INFO    ] 200
[2026-08-31 15:27:56,187.187 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:27:56,226.226 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:27:56,294.294 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:27:56,297.297 INFO    ] No camera update needed
[2026-08-31 15:27:56,299.299 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:27:56,302.302 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:27:56,307.307 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:27:56,312.312 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:27:58,351.351 INFO    ] ================================================
[2026-08-31 15:27:58,366.366 INFO    ] Launching Daemon at Mon Aug 31 15:27:58 IST 2026
[2026-08-31 15:27:58,377.377 INFO    ] ================================================
[2026-08-31 15:27:58,992.992 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:27:58
[2026-08-31 15:27:59,629.629 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:27:59,920.920 INFO    ] Initializing speech engine...
[2026-08-31 15:27:59,933.933 INFO    ] 2026-08-31 15:27:59
[2026-08-31 15:28:00,200.200 INFO    ] 2026-08-31 15:28:00
[2026-08-31 15:28:00,251.251 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:28:00,476.476 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:28:00,487.487 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:28:00,697.697 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:28:00,744.744 INFO    ] time= 31/08/2026 15:28:00
[2026-08-31 15:28:00,762.762 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:28:00,772.772 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:28:00,896.896 INFO    ] No existing commands found in stream
[2026-08-31 15:28:05,911.911 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:28:05,914.914 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-08-31 15:28:07,336.336 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 15:28:07,339.339 INFO    ] Checking for system updates...
[2026-08-31 15:28:07,375.375 INFO    ] 200
[2026-08-31 15:28:07,377.377 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:28:07,434.434 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:28:07,437.437 INFO    ] No update needed
[2026-08-31 15:28:07,440.440 INFO    ] Checking for camera pi updates...
[2026-08-31 15:28:07,477.477 INFO    ] 200
[2026-08-31 15:28:07,480.480 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:28:07,520.520 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:28:07,608.608 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:28:07,610.610 INFO    ] No camera update needed
[2026-08-31 15:28:07,613.613 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:28:07,615.615 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:28:07,621.621 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:28:07,627.627 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:28:09,668.668 INFO    ] ================================================
[2026-08-31 15:28:09,683.683 INFO    ] Launching Daemon at Mon Aug 31 15:28:09 IST 2026
[2026-08-31 15:28:09,693.693 INFO    ] ================================================
[2026-08-31 15:28:10,316.316 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:28:10
[2026-08-31 15:28:10,955.955 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:28:11,249.249 INFO    ] Initializing speech engine...
[2026-08-31 15:28:11,262.262 INFO    ] 2026-08-31 15:28:11
[2026-08-31 15:28:11,522.522 INFO    ] 2026-08-31 15:28:11
[2026-08-31 15:28:11,574.574 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:28:11,802.802 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:28:11,809.809 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:28:11,941.941 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:28:12,001.001 INFO    ] time= 31/08/2026 15:28:11
[2026-08-31 15:28:12,065.065 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:28:12,075.075 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:28:12,215.215 INFO    ] No existing commands found in stream
[2026-08-31 15:28:17,232.232 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:28:17,235.235 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-08-31 15:28:18,847.847 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 15:28:18,850.850 INFO    ] Checking for system updates...
[2026-08-31 15:28:18,887.887 INFO    ] 200
[2026-08-31 15:28:18,890.890 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:28:18,942.942 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:28:18,944.944 INFO    ] No update needed
[2026-08-31 15:28:18,946.946 INFO    ] Checking for camera pi updates...
[2026-08-31 15:28:18,982.982 INFO    ] 200
[2026-08-31 15:28:18,984.984 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:28:19,028.028 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:28:19,128.128 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:28:19,131.131 INFO    ] No camera update needed
[2026-08-31 15:28:19,133.133 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:28:19,135.135 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:28:19,141.141 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:28:19,145.145 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:28:21,185.185 INFO    ] ================================================
[2026-08-31 15:28:21,200.200 INFO    ] Launching Daemon at Mon Aug 31 15:28:21 IST 2026
[2026-08-31 15:28:21,210.210 INFO    ] ================================================
[2026-08-31 15:28:21,775.775 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:28:21
[2026-08-31 15:28:22,358.358 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:28:22,613.613 INFO    ] Initializing speech engine...
[2026-08-31 15:28:22,627.627 INFO    ] 2026-08-31 15:28:22
[2026-08-31 15:28:22,904.904 INFO    ] 2026-08-31 15:28:22
[2026-08-31 15:28:22,939.939 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:28:23,137.137 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:28:23,154.154 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:28:23,370.370 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:28:23,377.377 INFO    ] time= 31/08/2026 15:28:23
[2026-08-31 15:28:23,400.400 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:28:23,454.454 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:28:23,540.540 INFO    ] No existing commands found in stream
[2026-08-31 15:28:28,552.552 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:28:28,555.555 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-08-31 15:28:30,760.760 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 15:28:30,763.763 INFO    ] Checking for system updates...
[2026-08-31 15:28:30,801.801 INFO    ] 200
[2026-08-31 15:28:30,804.804 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:28:30,856.856 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:28:30,858.858 INFO    ] No update needed
[2026-08-31 15:28:30,861.861 INFO    ] Checking for camera pi updates...
[2026-08-31 15:28:30,894.894 INFO    ] 200
[2026-08-31 15:28:30,896.896 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:28:30,940.940 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:28:31,019.019 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:28:31,021.021 INFO    ] No camera update needed
[2026-08-31 15:28:31,024.024 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:28:31,026.026 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:28:31,031.031 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:28:31,036.036 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:28:33,077.077 INFO    ] ================================================
[2026-08-31 15:28:33,092.092 INFO    ] Launching Daemon at Mon Aug 31 15:28:33 IST 2026
[2026-08-31 15:28:33,103.103 INFO    ] ================================================
[2026-08-31 15:28:33,677.677 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:28:33
[2026-08-31 15:28:34,272.272 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:28:34,541.541 INFO    ] Initializing speech engine...
[2026-08-31 15:28:34,560.560 INFO    ] 2026-08-31 15:28:34
[2026-08-31 15:28:34,823.823 INFO    ] 2026-08-31 15:28:34
[2026-08-31 15:28:34,858.858 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:28:35,134.134 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:28:35,143.143 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:28:35,288.288 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:28:35,331.331 INFO    ] time= 31/08/2026 15:28:35
[2026-08-31 15:28:35,390.390 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:28:35,433.433 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:28:35,571.571 INFO    ] No existing commands found in stream
[2026-08-31 15:28:40,604.604 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:28:40,606.606 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-08-31 15:28:44,162.162 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 15:28:44,164.164 INFO    ] Checking for system updates...
[2026-08-31 15:28:44,200.200 INFO    ] 200
[2026-08-31 15:28:44,202.202 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:28:44,254.254 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:28:44,256.256 INFO    ] No update needed
[2026-08-31 15:28:44,258.258 INFO    ] Checking for camera pi updates...
[2026-08-31 15:28:44,293.293 INFO    ] 200
[2026-08-31 15:28:44,295.295 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:28:44,336.336 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:28:44,427.427 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:28:44,430.430 INFO    ] No camera update needed
[2026-08-31 15:28:44,432.432 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:28:44,434.434 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:28:44,440.440 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:28:44,445.445 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:28:46,484.484 INFO    ] ================================================
[2026-08-31 15:28:46,500.500 INFO    ] Launching Daemon at Mon Aug 31 15:28:46 IST 2026
[2026-08-31 15:28:46,511.511 INFO    ] ================================================
[2026-08-31 15:28:47,079.079 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:28:47
[2026-08-31 15:28:47,666.666 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:28:47,923.923 INFO    ] Initializing speech engine...
[2026-08-31 15:28:47,947.947 INFO    ] 2026-08-31 15:28:47
[2026-08-31 15:28:48,210.210 INFO    ] 2026-08-31 15:28:48
[2026-08-31 15:28:48,246.246 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:28:48,435.435 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:28:48,460.460 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:28:48,606.606 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:28:48,613.613 INFO    ] time= 31/08/2026 15:28:48
[2026-08-31 15:28:48,660.660 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:28:48,688.688 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:28:48,822.822 INFO    ] No existing commands found in stream
[2026-08-31 15:28:53,832.832 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:28:53,835.835 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-08-31 15:28:56,858.858 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 15:28:56,860.860 INFO    ] Checking for system updates...
[2026-08-31 15:28:56,896.896 INFO    ] 200
[2026-08-31 15:28:56,899.899 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:28:56,951.951 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:28:56,954.954 INFO    ] No update needed
[2026-08-31 15:28:56,956.956 INFO    ] Checking for camera pi updates...
[2026-08-31 15:28:56,989.989 INFO    ] 200
[2026-08-31 15:28:56,992.992 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:28:57,038.038 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:28:57,137.137 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:28:57,139.139 INFO    ] No camera update needed
[2026-08-31 15:28:57,142.142 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:28:57,144.144 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:28:57,149.149 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:28:57,154.154 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:28:59,195.195 INFO    ] ================================================
[2026-08-31 15:28:59,210.210 INFO    ] Launching Daemon at Mon Aug 31 15:28:59 IST 2026
[2026-08-31 15:28:59,221.221 INFO    ] ================================================
[2026-08-31 15:28:59,788.788 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:28:59
[2026-08-31 15:29:00,375.375 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:29:00,631.631 INFO    ] Initializing speech engine...
[2026-08-31 15:29:00,656.656 INFO    ] 2026-08-31 15:29:00
[2026-08-31 15:29:00,923.923 INFO    ] 2026-08-31 15:29:00
[2026-08-31 15:29:00,960.960 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:29:01,177.177 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:29:01,205.205 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:29:01,320.320 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:29:01,325.325 INFO    ] time= 31/08/2026 15:29:01
[2026-08-31 15:29:01,335.335 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:29:01,359.359 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:29:01,447.447 INFO    ] No existing commands found in stream
[2026-08-31 15:29:06,457.457 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:29:06,460.460 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-08-31 15:29:09,605.605 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 15:29:09,608.608 INFO    ] Checking for system updates...
[2026-08-31 15:29:09,643.643 INFO    ] 200
[2026-08-31 15:29:09,645.645 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:29:09,697.697 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:29:09,700.700 INFO    ] No update needed
[2026-08-31 15:29:09,702.702 INFO    ] Checking for camera pi updates...
[2026-08-31 15:29:09,738.738 INFO    ] 200
[2026-08-31 15:29:09,741.741 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:29:09,781.781 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:29:09,862.862 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:29:09,864.864 INFO    ] No camera update needed
[2026-08-31 15:29:09,867.867 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:29:09,869.869 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:29:09,874.874 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:29:09,879.879 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:29:11,920.920 INFO    ] ================================================
[2026-08-31 15:29:11,936.936 INFO    ] Launching Daemon at Mon Aug 31 15:29:11 IST 2026
[2026-08-31 15:29:11,953.953 INFO    ] ================================================
[2026-08-31 15:29:12,523.523 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:29:12
[2026-08-31 15:29:13,112.112 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:29:13,371.371 INFO    ] Initializing speech engine...
[2026-08-31 15:29:13,386.386 INFO    ] 2026-08-31 15:29:13
[2026-08-31 15:29:13,665.665 INFO    ] 2026-08-31 15:29:13
[2026-08-31 15:29:13,702.702 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:29:13,923.923 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:29:13,987.987 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:29:14,201.201 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:29:14,251.251 INFO    ] time= 31/08/2026 15:29:14
[2026-08-31 15:29:14,285.285 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:29:14,291.291 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:29:14,425.425 INFO    ] No existing commands found in stream
[2026-08-31 15:29:19,456.456 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:29:19,458.458 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-08-31 15:29:23,119.119 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 15:29:23,121.121 INFO    ] Checking for system updates...
[2026-08-31 15:29:23,156.156 INFO    ] 200
[2026-08-31 15:29:23,159.159 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:29:23,212.212 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:29:23,215.215 INFO    ] No update needed
[2026-08-31 15:29:23,217.217 INFO    ] Checking for camera pi updates...
[2026-08-31 15:29:23,250.250 INFO    ] 200
[2026-08-31 15:29:23,252.252 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:29:23,292.292 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:29:23,371.371 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:29:23,373.373 INFO    ] No camera update needed
[2026-08-31 15:29:23,375.375 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:29:23,378.378 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:29:23,383.383 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:29:23,388.388 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:29:25,429.429 INFO    ] ================================================
[2026-08-31 15:29:25,445.445 INFO    ] Launching Daemon at Mon Aug 31 15:29:25 IST 2026
[2026-08-31 15:29:25,456.456 INFO    ] ================================================
[2026-08-31 15:29:26,024.024 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:29:26
[2026-08-31 15:29:26,611.611 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:29:26,870.870 INFO    ] Initializing speech engine...
[2026-08-31 15:29:26,889.889 INFO    ] 2026-08-31 15:29:26
[2026-08-31 15:29:27,140.140 INFO    ] 2026-08-31 15:29:27
[2026-08-31 15:29:27,176.176 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:29:27,359.359 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:29:27,375.375 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:29:27,512.512 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:29:27,520.520 INFO    ] time= 31/08/2026 15:29:27
[2026-08-31 15:29:27,569.569 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:29:27,590.590 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:29:27,717.717 INFO    ] No existing commands found in stream
[2026-08-31 15:29:32,728.728 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:29:32,731.731 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-08-31 15:29:34,468.468 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 15:29:34,470.470 INFO    ] Checking for system updates...
[2026-08-31 15:29:34,506.506 INFO    ] 200
[2026-08-31 15:29:34,509.509 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:29:34,561.561 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:29:34,563.563 INFO    ] No update needed
[2026-08-31 15:29:34,565.565 INFO    ] Checking for camera pi updates...
[2026-08-31 15:29:34,603.603 INFO    ] 200
[2026-08-31 15:29:34,605.605 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:29:34,645.645 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:29:34,751.751 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:29:34,753.753 INFO    ] No camera update needed
[2026-08-31 15:29:34,755.755 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:29:34,758.758 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:29:34,763.763 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:29:34,768.768 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:29:36,808.808 INFO    ] ================================================
[2026-08-31 15:29:36,824.824 INFO    ] Launching Daemon at Mon Aug 31 15:29:36 IST 2026
[2026-08-31 15:29:36,835.835 INFO    ] ================================================
[2026-08-31 15:29:37,467.467 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:29:37
[2026-08-31 15:29:38,118.118 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:29:38,408.408 INFO    ] Initializing speech engine...
[2026-08-31 15:29:38,418.418 INFO    ] 2026-08-31 15:29:38
[2026-08-31 15:29:38,691.691 INFO    ] 2026-08-31 15:29:38
[2026-08-31 15:29:38,750.750 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:29:38,984.984 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:29:38,991.991 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:29:39,217.217 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:29:39,254.254 INFO    ] time= 31/08/2026 15:29:39
[2026-08-31 15:29:39,260.260 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:29:39,282.282 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:29:39,415.415 INFO    ] No existing commands found in stream
[2026-08-31 15:29:44,438.438 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:29:44,442.442 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-08-31 15:29:48,869.869 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 15:29:48,872.872 INFO    ] Checking for system updates...
[2026-08-31 15:29:48,908.908 INFO    ] 200
[2026-08-31 15:29:48,911.911 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:29:48,962.962 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:29:48,965.965 INFO    ] No update needed
[2026-08-31 15:29:48,967.967 INFO    ] Checking for camera pi updates...
[2026-08-31 15:29:49,003.003 INFO    ] 200
[2026-08-31 15:29:49,005.005 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:29:49,050.050 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:29:49,148.148 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:29:49,151.151 INFO    ] No camera update needed
[2026-08-31 15:29:49,153.153 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:29:49,155.155 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:29:49,161.161 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:29:49,165.165 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:29:51,207.207 INFO    ] ================================================
[2026-08-31 15:29:51,222.222 INFO    ] Launching Daemon at Mon Aug 31 15:29:51 IST 2026
[2026-08-31 15:29:51,233.233 INFO    ] ================================================
[2026-08-31 15:29:51,803.803 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:29:51
[2026-08-31 15:29:52,388.388 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:29:52,658.658 INFO    ] Initializing speech engine...
[2026-08-31 15:29:52,668.668 INFO    ] 2026-08-31 15:29:52
[2026-08-31 15:29:52,918.918 INFO    ] 2026-08-31 15:29:52
[2026-08-31 15:29:52,955.955 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:29:53,213.213 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:29:53,222.222 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:29:53,447.447 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:29:53,486.486 INFO    ] time= 31/08/2026 15:29:53
[2026-08-31 15:29:53,493.493 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:29:53,508.508 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:29:53,612.612 INFO    ] No existing commands found in stream
[2026-08-31 15:29:58,639.639 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:29:58,642.642 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-08-31 15:30:01,210.210 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 15:30:01,213.213 INFO    ] Checking for system updates...
[2026-08-31 15:30:01,248.248 INFO    ] 200
[2026-08-31 15:30:01,257.257 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:30:01,345.345 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:30:01,355.355 INFO    ] No update needed
[2026-08-31 15:30:01,360.360 INFO    ] Checking for camera pi updates...
[2026-08-31 15:30:01,445.445 INFO    ] 200
[2026-08-31 15:30:01,449.449 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:30:01,594.594 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:30:01,759.759 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:30:01,776.776 INFO    ] No camera update needed
[2026-08-31 15:30:01,792.792 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:30:01,835.835 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:30:01,858.858 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:30:01,872.872 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:30:03,930.930 INFO    ] ================================================
[2026-08-31 15:30:03,946.946 INFO    ] Launching Daemon at Mon Aug 31 15:30:03 IST 2026
[2026-08-31 15:30:03,957.957 INFO    ] ================================================
[2026-08-31 15:30:04,529.529 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:30:04
[2026-08-31 15:30:05,121.121 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:30:05,374.374 INFO    ] Initializing speech engine...
[2026-08-31 15:30:05,397.397 INFO    ] 2026-08-31 15:30:05
[2026-08-31 15:30:05,648.648 INFO    ] 2026-08-31 15:30:05
[2026-08-31 15:30:05,683.683 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:30:05,880.880 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:30:05,938.938 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:30:06,199.199 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:30:06,205.205 INFO    ] time= 31/08/2026 15:30:06
[2026-08-31 15:30:06,223.223 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:30:06,251.251 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:30:06,357.357 INFO    ] No existing commands found in stream
[2026-08-31 15:30:11,373.373 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:30:11,376.376 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-08-31 15:30:15,601.601 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 15:30:15,604.604 INFO    ] Checking for system updates...
[2026-08-31 15:30:15,640.640 INFO    ] 200
[2026-08-31 15:30:15,642.642 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:30:15,698.698 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:30:15,700.700 INFO    ] No update needed
[2026-08-31 15:30:15,703.703 INFO    ] Checking for camera pi updates...
[2026-08-31 15:30:15,741.741 INFO    ] 200
[2026-08-31 15:30:15,743.743 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:30:15,788.788 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:30:15,872.872 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:30:15,874.874 INFO    ] No camera update needed
[2026-08-31 15:30:15,876.876 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:30:15,879.879 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:30:15,884.884 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:30:15,889.889 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:30:17,930.930 INFO    ] ================================================
[2026-08-31 15:30:17,946.946 INFO    ] Launching Daemon at Mon Aug 31 15:30:17 IST 2026
[2026-08-31 15:30:17,956.956 INFO    ] ================================================
[2026-08-31 15:30:18,539.539 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:30:18
[2026-08-31 15:30:19,136.136 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:30:19,409.409 INFO    ] Initializing speech engine...
[2026-08-31 15:30:19,418.418 INFO    ] 2026-08-31 15:30:19
[2026-08-31 15:30:19,674.674 INFO    ] 2026-08-31 15:30:19
[2026-08-31 15:30:19,734.734 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:30:20,016.016 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:30:20,024.024 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:30:20,196.196 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:30:20,223.223 INFO    ] time= 31/08/2026 15:30:20
[2026-08-31 15:30:20,229.229 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:30:20,247.247 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:30:20,372.372 INFO    ] No existing commands found in stream
[2026-08-31 15:30:25,387.387 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:30:25,390.390 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-08-31 15:30:27,987.987 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 15:30:27,989.989 INFO    ] Checking for system updates...
[2026-08-31 15:30:28,029.029 INFO    ] 200
[2026-08-31 15:30:28,032.032 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:30:28,085.085 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:30:28,087.087 INFO    ] No update needed
[2026-08-31 15:30:28,090.090 INFO    ] Checking for camera pi updates...
[2026-08-31 15:30:28,147.147 INFO    ] 200
[2026-08-31 15:30:28,149.149 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:30:28,189.189 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:30:28,286.286 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:30:28,289.289 INFO    ] No camera update needed
[2026-08-31 15:30:28,291.291 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:30:28,293.293 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:30:28,299.299 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:30:28,303.303 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:30:30,345.345 INFO    ] ================================================
[2026-08-31 15:30:30,360.360 INFO    ] Launching Daemon at Mon Aug 31 15:30:30 IST 2026
[2026-08-31 15:30:30,372.372 INFO    ] ================================================
[2026-08-31 15:30:30,944.944 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:30:30
[2026-08-31 15:30:31,531.531 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:30:31,802.802 INFO    ] Initializing speech engine...
[2026-08-31 15:30:31,812.812 INFO    ] 2026-08-31 15:30:31
[2026-08-31 15:30:32,096.096 INFO    ] 2026-08-31 15:30:32
[2026-08-31 15:30:32,134.134 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:30:32,340.340 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:30:32,386.386 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:30:32,557.557 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:30:32,626.626 INFO    ] time= 31/08/2026 15:30:32
[2026-08-31 15:30:32,682.682 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:30:32,703.703 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:30:32,858.858 INFO    ] No existing commands found in stream
[2026-08-31 15:30:37,884.884 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:30:37,887.887 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-08-31 15:30:41,129.129 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 15:30:41,132.132 INFO    ] Checking for system updates...
[2026-08-31 15:30:41,168.168 INFO    ] 200
[2026-08-31 15:30:41,170.170 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:30:41,222.222 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:30:41,225.225 INFO    ] No update needed
[2026-08-31 15:30:41,228.228 INFO    ] Checking for camera pi updates...
[2026-08-31 15:30:41,262.262 INFO    ] 200
[2026-08-31 15:30:41,264.264 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:30:41,305.305 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:30:41,380.380 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:30:41,383.383 INFO    ] No camera update needed
[2026-08-31 15:30:41,385.385 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:30:41,387.387 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:30:41,393.393 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:30:41,398.398 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:30:43,438.438 INFO    ] ================================================
[2026-08-31 15:30:43,454.454 INFO    ] Launching Daemon at Mon Aug 31 15:30:43 IST 2026
[2026-08-31 15:30:43,465.465 INFO    ] ================================================
[2026-08-31 15:30:44,128.128 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:30:44
[2026-08-31 15:30:44,811.811 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:30:45,125.125 INFO    ] Initializing speech engine...
[2026-08-31 15:30:45,138.138 INFO    ] 2026-08-31 15:30:45
[2026-08-31 15:30:45,452.452 INFO    ] 2026-08-31 15:30:45
[2026-08-31 15:30:45,537.537 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:30:45,932.932 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:30:45,958.958 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:30:46,187.187 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:30:46,227.227 INFO    ] time= 31/08/2026 15:30:46
[2026-08-31 15:30:46,292.292 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:30:46,348.348 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:30:46,433.433 INFO    ] No existing commands found in stream
[2026-08-31 15:30:51,444.444 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:30:51,447.447 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-08-31 15:30:55,830.830 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 15:30:55,833.833 INFO    ] Checking for system updates...
[2026-08-31 15:30:55,873.873 INFO    ] 200
[2026-08-31 15:30:55,876.876 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:30:55,928.928 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:30:55,931.931 INFO    ] No update needed
[2026-08-31 15:30:55,934.934 INFO    ] Checking for camera pi updates...
[2026-08-31 15:30:55,968.968 INFO    ] 200
[2026-08-31 15:30:55,970.970 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:30:56,016.016 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:30:56,097.097 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:30:56,099.099 INFO    ] No camera update needed
[2026-08-31 15:30:56,102.102 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:30:56,104.104 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:30:56,109.109 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:30:56,115.115 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:30:58,156.156 INFO    ] ================================================
[2026-08-31 15:30:58,172.172 INFO    ] Launching Daemon at Mon Aug 31 15:30:58 IST 2026
[2026-08-31 15:30:58,183.183 INFO    ] ================================================
[2026-08-31 15:30:58,759.759 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:30:58
[2026-08-31 15:30:59,345.345 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:30:59,599.599 INFO    ] Initializing speech engine...
[2026-08-31 15:30:59,606.606 INFO    ] 2026-08-31 15:30:59
[2026-08-31 15:30:59,899.899 INFO    ] 2026-08-31 15:30:59
[2026-08-31 15:30:59,937.937 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:31:00,368.368 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:31:00,410.410 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:31:00,572.572 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:31:00,579.579 INFO    ] time= 31/08/2026 15:31:00
[2026-08-31 15:31:00,586.586 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:31:00,593.593 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:31:00,707.707 INFO    ] No existing commands found in stream
[2026-08-31 15:31:05,730.730 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:31:05,733.733 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-08-31 15:31:09,977.977 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 15:31:09,980.980 INFO    ] Checking for system updates...
[2026-08-31 15:31:10,016.016 INFO    ] 200
[2026-08-31 15:31:10,019.019 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:31:10,073.073 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:31:10,075.075 INFO    ] No update needed
[2026-08-31 15:31:10,078.078 INFO    ] Checking for camera pi updates...
[2026-08-31 15:31:10,115.115 INFO    ] 200
[2026-08-31 15:31:10,118.118 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:31:10,159.159 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:31:10,247.247 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:31:10,250.250 INFO    ] No camera update needed
[2026-08-31 15:31:10,252.252 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:31:10,254.254 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:31:10,260.260 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:31:10,265.265 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:31:12,304.304 INFO    ] ================================================
[2026-08-31 15:31:12,325.325 INFO    ] Launching Daemon at Mon Aug 31 15:31:12 IST 2026
[2026-08-31 15:31:12,336.336 INFO    ] ================================================
[2026-08-31 15:31:12,975.975 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:31:12
[2026-08-31 15:31:13,610.610 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:31:13,879.879 INFO    ] Initializing speech engine...
[2026-08-31 15:31:13,888.888 INFO    ] 2026-08-31 15:31:13
[2026-08-31 15:31:14,133.133 INFO    ] 2026-08-31 15:31:14
[2026-08-31 15:31:14,168.168 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:31:14,418.418 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:31:14,427.427 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:31:14,636.636 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:31:14,691.691 INFO    ] time= 31/08/2026 15:31:14
[2026-08-31 15:31:14,697.697 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:31:14,714.714 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:31:14,851.851 INFO    ] No existing commands found in stream
[2026-08-31 15:31:19,876.876 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:31:19,879.879 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-08-31 15:31:21,614.614 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 15:31:21,616.616 INFO    ] Checking for system updates...
[2026-08-31 15:31:21,655.655 INFO    ] 200
[2026-08-31 15:31:21,658.658 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:31:21,712.712 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:31:21,714.714 INFO    ] No update needed
[2026-08-31 15:31:21,716.716 INFO    ] Checking for camera pi updates...
[2026-08-31 15:31:21,753.753 INFO    ] 200
[2026-08-31 15:31:21,755.755 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:31:21,802.802 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:31:21,894.894 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:31:21,896.896 INFO    ] No camera update needed
[2026-08-31 15:31:21,899.899 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:31:21,901.901 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:31:21,907.907 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:31:21,912.912 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:31:23,952.952 INFO    ] ================================================
[2026-08-31 15:31:23,967.967 INFO    ] Launching Daemon at Mon Aug 31 15:31:23 IST 2026
[2026-08-31 15:31:23,978.978 INFO    ] ================================================
[2026-08-31 15:31:24,625.625 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:31:24
[2026-08-31 15:31:25,215.215 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:31:25,464.464 INFO    ] Initializing speech engine...
[2026-08-31 15:31:25,479.479 INFO    ] 2026-08-31 15:31:25
[2026-08-31 15:31:25,745.745 INFO    ] 2026-08-31 15:31:25
[2026-08-31 15:31:25,781.781 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:31:26,044.044 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:31:26,049.049 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:31:26,270.270 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:31:26,312.312 INFO    ] time= 31/08/2026 15:31:26
[2026-08-31 15:31:26,318.318 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:31:26,335.335 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:31:26,463.463 INFO    ] No existing commands found in stream
[2026-08-31 15:31:31,480.480 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:31:31,484.484 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-08-31 15:31:35,448.448 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 15:31:35,450.450 INFO    ] Checking for system updates...
[2026-08-31 15:31:35,489.489 INFO    ] 200
[2026-08-31 15:31:35,492.492 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:31:35,547.547 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:31:35,549.549 INFO    ] No update needed
[2026-08-31 15:31:35,552.552 INFO    ] Checking for camera pi updates...
[2026-08-31 15:31:35,589.589 INFO    ] 200
[2026-08-31 15:31:35,591.591 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:31:35,636.636 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:31:35,815.815 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:31:35,817.817 INFO    ] No camera update needed
[2026-08-31 15:31:35,820.820 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:31:35,822.822 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:31:35,827.827 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:31:35,832.832 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:31:37,873.873 INFO    ] ================================================
[2026-08-31 15:31:37,888.888 INFO    ] Launching Daemon at Mon Aug 31 15:31:37 IST 2026
[2026-08-31 15:31:37,899.899 INFO    ] ================================================
[2026-08-31 15:31:38,468.468 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:31:38
[2026-08-31 15:31:39,053.053 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:31:39,301.301 INFO    ] Initializing speech engine...
[2026-08-31 15:31:39,318.318 INFO    ] 2026-08-31 15:31:39
[2026-08-31 15:31:39,583.583 INFO    ] 2026-08-31 15:31:39
[2026-08-31 15:31:39,620.620 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:31:39,879.879 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:31:39,889.889 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:31:40,024.024 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:31:40,046.046 INFO    ] time= 31/08/2026 15:31:40
[2026-08-31 15:31:40,111.111 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:31:40,160.160 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:31:40,286.286 INFO    ] No existing commands found in stream
[2026-08-31 15:31:45,317.317 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:31:45,320.320 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-08-31 15:31:47,467.467 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 15:31:47,470.470 INFO    ] Checking for system updates...
[2026-08-31 15:31:47,511.511 INFO    ] 200
[2026-08-31 15:31:47,513.513 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:31:47,575.575 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:31:47,577.577 INFO    ] No update needed
[2026-08-31 15:31:47,580.580 INFO    ] Checking for camera pi updates...
[2026-08-31 15:31:47,613.613 INFO    ] 200
[2026-08-31 15:31:47,616.616 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:31:47,660.660 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:31:47,748.748 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:31:47,750.750 INFO    ] No camera update needed
[2026-08-31 15:31:47,752.752 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:31:47,755.755 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:31:47,760.760 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:31:47,765.765 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:31:49,806.806 INFO    ] ================================================
[2026-08-31 15:31:49,821.821 INFO    ] Launching Daemon at Mon Aug 31 15:31:49 IST 2026
[2026-08-31 15:31:49,832.832 INFO    ] ================================================
[2026-08-31 15:31:50,395.395 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:31:50
[2026-08-31 15:31:50,975.975 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:31:51,235.235 INFO    ] Initializing speech engine...
[2026-08-31 15:31:51,254.254 INFO    ] 2026-08-31 15:31:51
[2026-08-31 15:31:51,504.504 INFO    ] 2026-08-31 15:31:51
[2026-08-31 15:31:51,539.539 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:31:51,739.739 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:31:51,795.795 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:31:51,961.961 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:31:52,006.006 INFO    ] time= 31/08/2026 15:31:51
[2026-08-31 15:31:52,045.045 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:31:52,099.099 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:31:52,239.239 INFO    ] No existing commands found in stream
[2026-08-31 15:31:57,261.261 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:31:57,264.264 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-08-31 15:31:59,004.004 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 15:31:59,006.006 INFO    ] Checking for system updates...
[2026-08-31 15:31:59,045.045 INFO    ] 200
[2026-08-31 15:31:59,047.047 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:31:59,106.106 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:31:59,108.108 INFO    ] No update needed
[2026-08-31 15:31:59,111.111 INFO    ] Checking for camera pi updates...
[2026-08-31 15:31:59,147.147 INFO    ] 200
[2026-08-31 15:31:59,149.149 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:31:59,195.195 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:31:59,278.278 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:31:59,280.280 INFO    ] No camera update needed
[2026-08-31 15:31:59,283.283 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:31:59,285.285 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:31:59,290.290 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:31:59,295.295 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:32:01,370.370 INFO    ] ================================================
[2026-08-31 15:32:01,408.408 INFO    ] Launching Daemon at Mon Aug 31 15:32:01 IST 2026
[2026-08-31 15:32:01,434.434 INFO    ] ================================================
[2026-08-31 15:32:02,118.118 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:32:02
[2026-08-31 15:32:02,809.809 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:32:03,095.095 INFO    ] Initializing speech engine...
[2026-08-31 15:32:03,110.110 INFO    ] 2026-08-31 15:32:03
[2026-08-31 15:32:03,379.379 INFO    ] 2026-08-31 15:32:03
[2026-08-31 15:32:03,414.414 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:32:03,627.627 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:32:03,634.634 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:32:03,811.811 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:32:03,816.816 INFO    ] time= 31/08/2026 15:32:03
[2026-08-31 15:32:03,823.823 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:32:03,872.872 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:32:04,022.022 INFO    ] No existing commands found in stream
[2026-08-31 15:32:09,052.052 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:32:09,055.055 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-08-31 15:32:12,562.562 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 15:32:12,565.565 INFO    ] Checking for system updates...
[2026-08-31 15:32:12,605.605 INFO    ] 200
[2026-08-31 15:32:12,608.608 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:32:12,660.660 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:32:12,663.663 INFO    ] No update needed
[2026-08-31 15:32:12,665.665 INFO    ] Checking for camera pi updates...
[2026-08-31 15:32:12,702.702 INFO    ] 200
[2026-08-31 15:32:12,705.705 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:32:12,750.750 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:32:12,800.800 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:32:12,802.802 INFO    ] No camera update needed
[2026-08-31 15:32:12,805.805 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:32:12,807.807 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:32:12,812.812 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:32:12,817.817 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:32:14,857.857 INFO    ] ================================================
[2026-08-31 15:32:14,873.873 INFO    ] Launching Daemon at Mon Aug 31 15:32:14 IST 2026
[2026-08-31 15:32:14,884.884 INFO    ] ================================================
[2026-08-31 15:32:15,456.456 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:32:15
[2026-08-31 15:32:16,044.044 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:32:16,304.304 INFO    ] Initializing speech engine...
[2026-08-31 15:32:16,325.325 INFO    ] 2026-08-31 15:32:16
[2026-08-31 15:32:16,605.605 INFO    ] 2026-08-31 15:32:16
[2026-08-31 15:32:16,641.641 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:32:16,931.931 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:32:16,941.941 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:32:17,094.094 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:32:17,111.111 INFO    ] time= 31/08/2026 15:32:17
[2026-08-31 15:32:17,170.170 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:32:17,223.223 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:32:17,315.315 INFO    ] No existing commands found in stream
[2026-08-31 15:32:22,346.346 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:32:22,348.348 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-08-31 15:32:26,109.109 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 15:32:26,112.112 INFO    ] Checking for system updates...
[2026-08-31 15:32:26,157.157 INFO    ] 200
[2026-08-31 15:32:26,159.159 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:32:26,219.219 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:32:26,221.221 INFO    ] No update needed
[2026-08-31 15:32:26,223.223 INFO    ] Checking for camera pi updates...
[2026-08-31 15:32:26,261.261 INFO    ] 200
[2026-08-31 15:32:26,263.263 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:32:26,308.308 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:32:26,358.358 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:32:26,360.360 INFO    ] No camera update needed
[2026-08-31 15:32:26,363.363 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:32:26,365.365 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:32:26,370.370 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:32:26,375.375 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:32:28,416.416 INFO    ] ================================================
[2026-08-31 15:32:28,433.433 INFO    ] Launching Daemon at Mon Aug 31 15:32:28 IST 2026
[2026-08-31 15:32:28,445.445 INFO    ] ================================================
[2026-08-31 15:32:29,028.028 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:32:29
[2026-08-31 15:32:29,624.624 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:32:29,871.871 INFO    ] Initializing speech engine...
[2026-08-31 15:32:29,879.879 INFO    ] 2026-08-31 15:32:29
[2026-08-31 15:32:30,153.153 INFO    ] 2026-08-31 15:32:30
[2026-08-31 15:32:30,189.189 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:32:30,446.446 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:32:30,455.455 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:32:30,686.686 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:32:30,720.720 INFO    ] time= 31/08/2026 15:32:30
[2026-08-31 15:32:30,736.736 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:32:30,746.746 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:32:30,844.844 INFO    ] No existing commands found in stream
[2026-08-31 15:32:35,871.871 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:32:35,874.874 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-08-31 15:32:37,684.684 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 15:32:37,687.687 INFO    ] Checking for system updates...
[2026-08-31 15:32:37,724.724 INFO    ] 200
[2026-08-31 15:32:37,727.727 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:32:37,786.786 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:32:37,789.789 INFO    ] No update needed
[2026-08-31 15:32:37,792.792 INFO    ] Checking for camera pi updates...
[2026-08-31 15:32:37,826.826 INFO    ] 200
[2026-08-31 15:32:37,829.829 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:32:37,870.870 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:32:37,951.951 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:32:37,953.953 INFO    ] No camera update needed
[2026-08-31 15:32:37,956.956 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:32:37,959.959 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:32:37,964.964 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:32:37,970.970 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:32:40,011.011 INFO    ] ================================================
[2026-08-31 15:32:40,026.026 INFO    ] Launching Daemon at Mon Aug 31 15:32:40 IST 2026
[2026-08-31 15:32:40,037.037 INFO    ] ================================================
[2026-08-31 15:32:40,670.670 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:32:40
[2026-08-31 15:32:41,320.320 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:32:41,616.616 INFO    ] Initializing speech engine...
[2026-08-31 15:32:41,626.626 INFO    ] 2026-08-31 15:32:41
[2026-08-31 15:32:41,898.898 INFO    ] 2026-08-31 15:32:41
[2026-08-31 15:32:41,956.956 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:32:42,206.206 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:32:42,213.213 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:32:42,406.406 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:32:42,454.454 INFO    ] time= 31/08/2026 15:32:42
[2026-08-31 15:32:42,473.473 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:32:42,483.483 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:32:42,608.608 INFO    ] No existing commands found in stream
[2026-08-31 15:32:47,625.625 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:32:47,628.628 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-08-31 15:32:49,539.539 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 15:32:49,541.541 INFO    ] Checking for system updates...
[2026-08-31 15:32:49,576.576 INFO    ] 200
[2026-08-31 15:32:49,579.579 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:32:49,640.640 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:32:49,643.643 INFO    ] No update needed
[2026-08-31 15:32:49,645.645 INFO    ] Checking for camera pi updates...
[2026-08-31 15:32:49,682.682 INFO    ] 200
[2026-08-31 15:32:49,685.685 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:32:49,725.725 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:32:49,807.807 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:32:49,810.810 INFO    ] No camera update needed
[2026-08-31 15:32:49,812.812 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:32:49,814.814 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:32:49,820.820 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:32:49,825.825 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:32:51,866.866 INFO    ] ================================================
[2026-08-31 15:32:51,880.880 INFO    ] Launching Daemon at Mon Aug 31 15:32:51 IST 2026
[2026-08-31 15:32:51,891.891 INFO    ] ================================================
[2026-08-31 15:32:52,472.472 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:32:52
[2026-08-31 15:32:53,071.071 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:32:53,346.346 INFO    ] Initializing speech engine...
[2026-08-31 15:32:53,355.355 INFO    ] 2026-08-31 15:32:53
[2026-08-31 15:32:53,606.606 INFO    ] 2026-08-31 15:32:53
[2026-08-31 15:32:53,674.674 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:32:53,896.896 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:32:53,906.906 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:32:54,092.092 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:32:54,157.157 INFO    ] time= 31/08/2026 15:32:54
[2026-08-31 15:32:54,171.171 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:32:54,191.191 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:32:54,316.316 INFO    ] No existing commands found in stream
[2026-08-31 15:32:59,332.332 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:32:59,334.334 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-08-31 15:33:01,488.488 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 15:33:01,492.492 INFO    ] Checking for system updates...
[2026-08-31 15:33:01,540.540 INFO    ] 200
[2026-08-31 15:33:01,543.543 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:33:01,623.623 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:33:01,625.625 INFO    ] No update needed
[2026-08-31 15:33:01,628.628 INFO    ] Checking for camera pi updates...
[2026-08-31 15:33:01,670.670 INFO    ] 200
[2026-08-31 15:33:01,673.673 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:33:01,721.721 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:33:01,851.851 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:33:01,854.854 INFO    ] No camera update needed
[2026-08-31 15:33:01,857.857 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:33:01,860.860 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:33:01,868.868 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:33:01,875.875 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:33:03,921.921 INFO    ] ================================================
[2026-08-31 15:33:03,937.937 INFO    ] Launching Daemon at Mon Aug 31 15:33:03 IST 2026
[2026-08-31 15:33:03,948.948 INFO    ] ================================================
[2026-08-31 15:33:04,527.527 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:33:04
[2026-08-31 15:33:05,122.122 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:33:05,394.394 INFO    ] Initializing speech engine...
[2026-08-31 15:33:05,403.403 INFO    ] 2026-08-31 15:33:05
[2026-08-31 15:33:05,665.665 INFO    ] 2026-08-31 15:33:05
[2026-08-31 15:33:05,720.720 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:33:05,980.980 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:33:06,004.004 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:33:06,199.199 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:33:06,259.259 INFO    ] time= 31/08/2026 15:33:06
[2026-08-31 15:33:06,266.266 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:33:06,284.284 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:33:06,405.405 INFO    ] No existing commands found in stream
[2026-08-31 15:33:11,425.425 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:33:11,428.428 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-08-31 15:33:17,404.404 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 15:33:17,407.407 INFO    ] Checking for system updates...
[2026-08-31 15:33:17,442.442 INFO    ] 200
[2026-08-31 15:33:17,445.445 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:33:17,496.496 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:33:17,499.499 INFO    ] No update needed
[2026-08-31 15:33:17,501.501 INFO    ] Checking for camera pi updates...
[2026-08-31 15:33:17,535.535 INFO    ] 200
[2026-08-31 15:33:17,537.537 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:33:17,582.582 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:33:17,662.662 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:33:17,664.664 INFO    ] No camera update needed
[2026-08-31 15:33:17,666.666 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:33:17,669.669 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:33:17,674.674 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:33:17,679.679 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:33:19,719.719 INFO    ] ================================================
[2026-08-31 15:33:19,734.734 INFO    ] Launching Daemon at Mon Aug 31 15:33:19 IST 2026
[2026-08-31 15:33:19,748.748 INFO    ] ================================================
[2026-08-31 15:33:20,315.315 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:33:20
[2026-08-31 15:33:20,896.896 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:33:21,167.167 INFO    ] Initializing speech engine...
[2026-08-31 15:33:21,180.180 INFO    ] 2026-08-31 15:33:21
[2026-08-31 15:33:21,426.426 INFO    ] 2026-08-31 15:33:21
[2026-08-31 15:33:21,492.492 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:33:21,727.727 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:33:21,732.732 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:33:21,879.879 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:33:21,939.939 INFO    ] time= 31/08/2026 15:33:21
[2026-08-31 15:33:21,988.988 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:33:22,026.026 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:33:22,083.083 INFO    ] No existing commands found in stream
[2026-08-31 15:33:27,096.096 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:33:27,099.099 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-08-31 15:33:29,464.464 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 15:33:29,467.467 INFO    ] Checking for system updates...
[2026-08-31 15:33:29,504.504 INFO    ] 200
[2026-08-31 15:33:29,506.506 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:33:29,564.564 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:33:29,567.567 INFO    ] No update needed
[2026-08-31 15:33:29,570.570 INFO    ] Checking for camera pi updates...
[2026-08-31 15:33:29,606.606 INFO    ] 200
[2026-08-31 15:33:29,609.609 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:33:29,650.650 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:33:29,736.736 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:33:29,738.738 INFO    ] No camera update needed
[2026-08-31 15:33:29,741.741 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:33:29,743.743 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:33:29,748.748 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:33:29,753.753 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:33:31,801.801 INFO    ] ================================================
[2026-08-31 15:33:31,817.817 INFO    ] Launching Daemon at Mon Aug 31 15:33:31 IST 2026
[2026-08-31 15:33:31,829.829 INFO    ] ================================================
[2026-08-31 15:33:32,439.439 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:33:32
[2026-08-31 15:33:33,045.045 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:33:33,306.306 INFO    ] Initializing speech engine...
[2026-08-31 15:33:33,312.312 INFO    ] 2026-08-31 15:33:33
[2026-08-31 15:33:33,608.608 INFO    ] 2026-08-31 15:33:33
[2026-08-31 15:33:33,646.646 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:33:33,842.842 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:33:33,856.856 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:33:34,022.022 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:33:34,028.028 INFO    ] time= 31/08/2026 15:33:34
[2026-08-31 15:33:34,035.035 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:33:34,067.067 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:33:34,203.203 INFO    ] No existing commands found in stream
[2026-08-31 15:33:39,228.228 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:33:39,231.231 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-08-31 15:33:43,540.540 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 15:33:43,543.543 INFO    ] Checking for system updates...
[2026-08-31 15:33:43,579.579 INFO    ] 200
[2026-08-31 15:33:43,581.581 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:33:43,644.644 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:33:43,646.646 INFO    ] No update needed
[2026-08-31 15:33:43,649.649 INFO    ] Checking for camera pi updates...
[2026-08-31 15:33:43,683.683 INFO    ] 200
[2026-08-31 15:33:43,685.685 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:33:43,730.730 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:33:43,912.912 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:33:43,915.915 INFO    ] No camera update needed
[2026-08-31 15:33:43,917.917 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:33:43,919.919 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:33:43,925.925 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:33:43,930.930 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:33:45,971.971 INFO    ] ================================================
[2026-08-31 15:33:45,986.986 INFO    ] Launching Daemon at Mon Aug 31 15:33:45 IST 2026
[2026-08-31 15:33:46,997.997 INFO    ] ================================================
[2026-08-31 15:33:46,574.574 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:33:46
[2026-08-31 15:33:47,172.172 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:33:47,445.445 INFO    ] Initializing speech engine...
[2026-08-31 15:33:47,460.460 INFO    ] 2026-08-31 15:33:47
[2026-08-31 15:33:47,730.730 INFO    ] 2026-08-31 15:33:47
[2026-08-31 15:33:47,769.769 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:33:48,627.627 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:33:48,690.690 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:33:48,958.958 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:33:49,020.020 INFO    ] time= 31/08/2026 15:33:48
[2026-08-31 15:33:49,026.026 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:33:49,030.030 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:33:49,148.148 INFO    ] No existing commands found in stream
[2026-08-31 15:33:54,162.162 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:33:54,165.165 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-08-31 15:33:55,743.743 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 15:33:55,746.746 INFO    ] Checking for system updates...
[2026-08-31 15:33:55,792.792 INFO    ] 200
[2026-08-31 15:33:55,794.794 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:33:55,851.851 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:33:55,854.854 INFO    ] No update needed
[2026-08-31 15:33:55,857.857 INFO    ] Checking for camera pi updates...
[2026-08-31 15:33:55,897.897 INFO    ] 200
[2026-08-31 15:33:55,900.900 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:33:55,949.949 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:33:56,041.041 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:33:56,044.044 INFO    ] No camera update needed
[2026-08-31 15:33:56,047.047 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:33:56,049.049 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:33:56,055.055 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:33:56,060.060 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:33:58,101.101 INFO    ] ================================================
[2026-08-31 15:33:58,116.116 INFO    ] Launching Daemon at Mon Aug 31 15:33:58 IST 2026
[2026-08-31 15:33:58,127.127 INFO    ] ================================================
[2026-08-31 15:33:58,709.709 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:33:58
[2026-08-31 15:33:59,318.318 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:33:59,606.606 INFO    ] Initializing speech engine...
[2026-08-31 15:33:59,622.622 INFO    ] 2026-08-31 15:33:59
[2026-08-31 15:33:59,910.910 INFO    ] 2026-08-31 15:33:59
[2026-08-31 15:33:59,948.948 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:34:00,236.236 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:34:00,246.246 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:34:00,394.394 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:34:00,442.442 INFO    ] time= 31/08/2026 15:34:00
[2026-08-31 15:34:00,491.491 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:34:00,544.544 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:34:00,677.677 INFO    ] No existing commands found in stream
[2026-08-31 15:34:05,700.700 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:34:05,703.703 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-08-31 15:34:09,560.560 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 15:34:09,563.563 INFO    ] Checking for system updates...
[2026-08-31 15:34:09,599.599 INFO    ] 200
[2026-08-31 15:34:09,602.602 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:34:09,655.655 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:34:09,658.658 INFO    ] No update needed
[2026-08-31 15:34:09,660.660 INFO    ] Checking for camera pi updates...
[2026-08-31 15:34:09,697.697 INFO    ] 200
[2026-08-31 15:34:09,700.700 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:34:09,744.744 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:34:09,827.827 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:34:09,830.830 INFO    ] No camera update needed
[2026-08-31 15:34:09,832.832 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:34:09,834.834 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:34:09,840.840 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:34:09,845.845 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:34:11,885.885 INFO    ] ================================================
[2026-08-31 15:34:11,901.901 INFO    ] Launching Daemon at Mon Aug 31 15:34:11 IST 2026
[2026-08-31 15:34:11,912.912 INFO    ] ================================================
[2026-08-31 15:34:12,514.514 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:34:12
[2026-08-31 15:34:13,120.120 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:34:13,383.383 INFO    ] Initializing speech engine...
[2026-08-31 15:34:13,389.389 INFO    ] 2026-08-31 15:34:13
[2026-08-31 15:34:13,683.683 INFO    ] 2026-08-31 15:34:13
[2026-08-31 15:34:13,708.708 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:34:13,916.916 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:34:13,932.932 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:34:14,092.092 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:34:14,102.102 INFO    ] time= 31/08/2026 15:34:14
[2026-08-31 15:34:14,108.108 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:34:14,153.153 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:34:14,288.288 INFO    ] No existing commands found in stream
[2026-08-31 15:34:19,308.308 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:34:19,311.311 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-08-31 15:34:21,379.379 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 15:34:21,381.381 INFO    ] Checking for system updates...
[2026-08-31 15:34:21,418.418 INFO    ] 200
[2026-08-31 15:34:21,420.420 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:34:21,474.474 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:34:21,477.477 INFO    ] No update needed
[2026-08-31 15:34:21,479.479 INFO    ] Checking for camera pi updates...
[2026-08-31 15:34:21,521.521 INFO    ] 200
[2026-08-31 15:34:21,524.524 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:34:21,564.564 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:34:21,692.692 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:34:21,694.694 INFO    ] No camera update needed
[2026-08-31 15:34:21,697.697 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:34:21,699.699 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:34:21,704.704 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:34:21,710.710 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:34:23,750.750 INFO    ] ================================================
[2026-08-31 15:34:23,765.765 INFO    ] Launching Daemon at Mon Aug 31 15:34:23 IST 2026
[2026-08-31 15:34:23,776.776 INFO    ] ================================================
[2026-08-31 15:34:24,344.344 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:34:24
[2026-08-31 15:34:24,930.930 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:34:25,184.184 INFO    ] Initializing speech engine...
[2026-08-31 15:34:25,193.193 INFO    ] 2026-08-31 15:34:25
[2026-08-31 15:34:25,483.483 INFO    ] 2026-08-31 15:34:25
[2026-08-31 15:34:25,521.521 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:34:25,805.805 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:34:25,814.814 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:34:25,967.967 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:34:26,027.027 INFO    ] time= 31/08/2026 15:34:25
[2026-08-31 15:34:26,086.086 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:34:26,113.113 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:34:26,277.277 INFO    ] No existing commands found in stream
[2026-08-31 15:34:31,290.290 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:34:31,293.293 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-08-31 15:34:34,567.567 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 15:34:34,570.570 INFO    ] Checking for system updates...
[2026-08-31 15:34:34,606.606 INFO    ] 200
[2026-08-31 15:34:34,609.609 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:34:34,667.667 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:34:34,669.669 INFO    ] No update needed
[2026-08-31 15:34:34,672.672 INFO    ] Checking for camera pi updates...
[2026-08-31 15:34:34,708.708 INFO    ] 200
[2026-08-31 15:34:34,711.711 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:34:34,756.756 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:34:34,859.859 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:34:34,862.862 INFO    ] No camera update needed
[2026-08-31 15:34:34,864.864 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:34:34,866.866 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:34:34,872.872 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:34:34,876.876 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:34:36,918.918 INFO    ] ================================================
[2026-08-31 15:34:36,933.933 INFO    ] Launching Daemon at Mon Aug 31 15:34:36 IST 2026
[2026-08-31 15:34:36,944.944 INFO    ] ================================================
[2026-08-31 15:34:37,510.510 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:34:37
[2026-08-31 15:34:38,093.093 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:34:38,348.348 INFO    ] Initializing speech engine...
[2026-08-31 15:34:38,356.356 INFO    ] 2026-08-31 15:34:38
[2026-08-31 15:34:38,647.647 INFO    ] 2026-08-31 15:34:38
[2026-08-31 15:34:38,672.672 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:34:38,881.881 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:34:38,893.893 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:34:39,059.059 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:34:39,064.064 INFO    ] time= 31/08/2026 15:34:39
[2026-08-31 15:34:39,070.070 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:34:39,119.119 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:34:39,240.240 INFO    ] No existing commands found in stream
[2026-08-31 15:34:44,265.265 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:34:44,268.268 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-08-31 15:34:44,764.764 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 15:34:44,766.766 INFO    ] Checking for system updates...
[2026-08-31 15:34:44,805.805 INFO    ] 200
[2026-08-31 15:34:44,808.808 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:34:44,862.862 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:34:44,864.864 INFO    ] No update needed
[2026-08-31 15:34:44,866.866 INFO    ] Checking for camera pi updates...
[2026-08-31 15:34:44,900.900 INFO    ] 200
[2026-08-31 15:34:44,902.902 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:34:44,943.943 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:34:44,997.997 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:34:44,999.999 INFO    ] No camera update needed
[2026-08-31 15:34:45,001.001 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:34:45,004.004 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:34:45,009.009 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:34:45,014.014 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:34:47,055.055 INFO    ] ================================================
[2026-08-31 15:34:47,070.070 INFO    ] Launching Daemon at Mon Aug 31 15:34:47 IST 2026
[2026-08-31 15:34:47,081.081 INFO    ] ================================================
[2026-08-31 15:34:47,667.667 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:34:47
[2026-08-31 15:34:48,271.271 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:34:48,531.531 INFO    ] Initializing speech engine...
[2026-08-31 15:34:48,540.540 INFO    ] 2026-08-31 15:34:48
[2026-08-31 15:34:48,835.835 INFO    ] 2026-08-31 15:34:48
[2026-08-31 15:34:48,874.874 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:34:49,093.093 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:34:49,101.101 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:34:49,319.319 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:34:49,336.336 INFO    ] time= 31/08/2026 15:34:49
[2026-08-31 15:34:49,385.385 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:34:49,450.450 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:34:49,601.601 INFO    ] No existing commands found in stream
[2026-08-31 15:34:54,629.629 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:34:54,635.635 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-08-31 15:34:58,137.137 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 15:34:58,140.140 INFO    ] Checking for system updates...
[2026-08-31 15:34:58,175.175 INFO    ] 200
[2026-08-31 15:34:58,178.178 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:34:58,236.236 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:34:58,239.239 INFO    ] No update needed
[2026-08-31 15:34:58,242.242 INFO    ] Checking for camera pi updates...
[2026-08-31 15:34:58,276.276 INFO    ] 200
[2026-08-31 15:34:58,278.278 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:34:58,320.320 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:34:58,398.398 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:34:58,401.401 INFO    ] No camera update needed
[2026-08-31 15:34:58,403.403 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:34:58,405.405 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:34:58,411.411 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:34:58,416.416 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:35:00,456.456 INFO    ] ================================================
[2026-08-31 15:35:00,471.471 INFO    ] Launching Daemon at Mon Aug 31 15:35:00 IST 2026
[2026-08-31 15:35:00,482.482 INFO    ] ================================================
[2026-08-31 15:35:01,047.047 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:35:01
[2026-08-31 15:35:01,903.903 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:35:02,243.243 INFO    ] Initializing speech engine...
[2026-08-31 15:35:02,258.258 INFO    ] 2026-08-31 15:35:02
[2026-08-31 15:35:02,581.581 INFO    ] 2026-08-31 15:35:02
[2026-08-31 15:35:02,624.624 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:35:02,870.870 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:35:02,924.924 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:35:03,103.103 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:35:03,126.126 INFO    ] time= 31/08/2026 15:35:03
[2026-08-31 15:35:03,184.184 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:35:03,244.244 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:35:03,370.370 INFO    ] No existing commands found in stream
[2026-08-31 15:35:08,405.405 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:35:08,409.409 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-08-31 15:35:12,419.419 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 15:35:12,422.422 INFO    ] Checking for system updates...
[2026-08-31 15:35:12,461.461 INFO    ] 200
[2026-08-31 15:35:12,464.464 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:35:12,523.523 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:35:12,526.526 INFO    ] No update needed
[2026-08-31 15:35:12,528.528 INFO    ] Checking for camera pi updates...
[2026-08-31 15:35:12,566.566 INFO    ] 200
[2026-08-31 15:35:12,568.568 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:35:12,609.609 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:35:12,703.703 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:35:12,705.705 INFO    ] No camera update needed
[2026-08-31 15:35:12,708.708 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:35:12,710.710 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:35:12,715.715 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:35:12,720.720 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:35:14,762.762 INFO    ] ================================================
[2026-08-31 15:35:14,777.777 INFO    ] Launching Daemon at Mon Aug 31 15:35:14 IST 2026
[2026-08-31 15:35:14,787.787 INFO    ] ================================================
[2026-08-31 15:35:15,370.370 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:35:15
[2026-08-31 15:35:15,969.969 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:35:16,248.248 INFO    ] Initializing speech engine...
[2026-08-31 15:35:16,256.256 INFO    ] 2026-08-31 15:35:16
[2026-08-31 15:35:16,515.515 INFO    ] 2026-08-31 15:35:16
[2026-08-31 15:35:16,546.546 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:35:16,796.796 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:35:16,801.801 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:35:17,011.011 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:35:17,058.058 INFO    ] time= 31/08/2026 15:35:17
[2026-08-31 15:35:17,065.065 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:35:17,082.082 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:35:17,214.214 INFO    ] No existing commands found in stream
[2026-08-31 15:35:22,234.234 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:35:22,236.236 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-08-31 15:35:26,418.418 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 15:35:26,421.421 INFO    ] Checking for system updates...
[2026-08-31 15:35:26,457.457 INFO    ] 200
[2026-08-31 15:35:26,460.460 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:35:26,520.520 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:35:26,523.523 INFO    ] No update needed
[2026-08-31 15:35:26,525.525 INFO    ] Checking for camera pi updates...
[2026-08-31 15:35:26,558.558 INFO    ] 200
[2026-08-31 15:35:26,561.561 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:35:26,602.602 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:35:26,678.678 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:35:26,681.681 INFO    ] No camera update needed
[2026-08-31 15:35:26,683.683 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:35:26,686.686 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:35:26,691.691 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:35:26,696.696 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:35:28,738.738 INFO    ] ================================================
[2026-08-31 15:35:28,753.753 INFO    ] Launching Daemon at Mon Aug 31 15:35:28 IST 2026
[2026-08-31 15:35:28,764.764 INFO    ] ================================================
[2026-08-31 15:35:29,334.334 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:35:29
[2026-08-31 15:35:29,961.961 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:35:30,271.271 INFO    ] Initializing speech engine...
[2026-08-31 15:35:30,284.284 INFO    ] 2026-08-31 15:35:30
[2026-08-31 15:35:30,571.571 INFO    ] 2026-08-31 15:35:30
[2026-08-31 15:35:30,617.617 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:35:30,905.905 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:35:30,914.914 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:35:31,114.114 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:35:31,121.121 INFO    ] time= 31/08/2026 15:35:31
[2026-08-31 15:35:31,143.143 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:35:31,170.170 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:35:31,278.278 INFO    ] No existing commands found in stream
[2026-08-31 15:35:36,301.301 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:35:36,304.304 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-08-31 15:35:37,263.263 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 15:35:37,266.266 INFO    ] Checking for system updates...
[2026-08-31 15:35:37,304.304 INFO    ] 200
[2026-08-31 15:35:37,307.307 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:35:37,360.360 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:35:37,363.363 INFO    ] No update needed
[2026-08-31 15:35:37,365.365 INFO    ] Checking for camera pi updates...
[2026-08-31 15:35:37,399.399 INFO    ] 200
[2026-08-31 15:35:37,401.401 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:35:37,442.442 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:35:37,523.523 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:35:37,525.525 INFO    ] No camera update needed
[2026-08-31 15:35:37,528.528 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:35:37,530.530 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:35:37,535.535 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:35:37,540.540 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:35:39,581.581 INFO    ] ================================================
[2026-08-31 15:35:39,596.596 INFO    ] Launching Daemon at Mon Aug 31 15:35:39 IST 2026
[2026-08-31 15:35:39,607.607 INFO    ] ================================================
[2026-08-31 15:35:40,176.176 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:35:40
[2026-08-31 15:35:40,770.770 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:35:41,045.045 INFO    ] Initializing speech engine...
[2026-08-31 15:35:41,064.064 INFO    ] 2026-08-31 15:35:41
[2026-08-31 15:35:41,309.309 INFO    ] 2026-08-31 15:35:41
[2026-08-31 15:35:41,344.344 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:35:41,594.594 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:35:41,603.603 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:35:41,740.740 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:35:41,779.779 INFO    ] time= 31/08/2026 15:35:41
[2026-08-31 15:35:41,828.828 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:35:41,870.870 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:35:42,010.010 INFO    ] No existing commands found in stream
[2026-08-31 15:35:47,027.027 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:35:47,030.030 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-08-31 15:35:49,599.599 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 15:35:49,609.609 INFO    ] Checking for system updates...
[2026-08-31 15:35:49,655.655 INFO    ] 200
[2026-08-31 15:35:49,658.658 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:35:49,710.710 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:35:49,713.713 INFO    ] No update needed
[2026-08-31 15:35:49,715.715 INFO    ] Checking for camera pi updates...
[2026-08-31 15:35:49,749.749 INFO    ] 200
[2026-08-31 15:35:49,752.752 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:35:49,797.797 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:35:49,997.997 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:35:49,999.999 INFO    ] No camera update needed
[2026-08-31 15:35:50,002.002 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:35:50,004.004 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:35:50,009.009 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:35:50,014.014 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:35:52,056.056 INFO    ] ================================================
[2026-08-31 15:35:52,071.071 INFO    ] Launching Daemon at Mon Aug 31 15:35:52 IST 2026
[2026-08-31 15:35:52,082.082 INFO    ] ================================================
[2026-08-31 15:35:52,654.654 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:35:52
[2026-08-31 15:35:53,239.239 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:35:53,497.497 INFO    ] Initializing speech engine...
[2026-08-31 15:35:53,516.516 INFO    ] 2026-08-31 15:35:53
[2026-08-31 15:35:53,766.766 INFO    ] 2026-08-31 15:35:53
[2026-08-31 15:35:53,802.802 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:35:54,017.017 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:35:54,031.031 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:35:54,201.201 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:35:54,230.230 INFO    ] time= 31/08/2026 15:35:54
[2026-08-31 15:35:54,244.244 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:35:54,308.308 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:35:54,416.416 INFO    ] No existing commands found in stream
[2026-08-31 15:35:59,428.428 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:35:59,431.431 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-08-31 15:36:03,202.202 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 15:36:03,205.205 INFO    ] Checking for system updates...
[2026-08-31 15:36:03,243.243 INFO    ] 200
[2026-08-31 15:36:03,246.246 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:36:03,306.306 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:36:03,309.309 INFO    ] No update needed
[2026-08-31 15:36:03,312.312 INFO    ] Checking for camera pi updates...
[2026-08-31 15:36:03,347.347 INFO    ] 200
[2026-08-31 15:36:03,350.350 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:36:03,393.393 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:36:03,478.478 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:36:03,481.481 INFO    ] No camera update needed
[2026-08-31 15:36:03,483.483 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:36:03,486.486 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:36:03,492.492 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:36:03,498.498 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:36:05,539.539 INFO    ] ================================================
[2026-08-31 15:36:05,554.554 INFO    ] Launching Daemon at Mon Aug 31 15:36:05 IST 2026
[2026-08-31 15:36:05,566.566 INFO    ] ================================================
[2026-08-31 15:36:06,143.143 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:36:06
[2026-08-31 15:36:06,749.749 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:36:07,019.019 INFO    ] Initializing speech engine...
[2026-08-31 15:36:07,028.028 INFO    ] 2026-08-31 15:36:07
[2026-08-31 15:36:07,275.275 INFO    ] 2026-08-31 15:36:07
[2026-08-31 15:36:07,340.340 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:36:07,562.562 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:36:07,571.571 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:36:07,819.819 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:36:07,831.831 INFO    ] time= 31/08/2026 15:36:07
[2026-08-31 15:36:07,849.849 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:36:07,878.878 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:36:07,983.983 INFO    ] No existing commands found in stream
[2026-08-31 15:36:13,004.004 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:36:13,007.007 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-08-31 15:36:15,943.943 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 15:36:15,945.945 INFO    ] Checking for system updates...
[2026-08-31 15:36:15,981.981 INFO    ] 200
[2026-08-31 15:36:15,984.984 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:36:16,048.048 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:36:16,050.050 INFO    ] No update needed
[2026-08-31 15:36:16,052.052 INFO    ] Checking for camera pi updates...
[2026-08-31 15:36:16,090.090 INFO    ] 200
[2026-08-31 15:36:16,092.092 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:36:16,133.133 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:36:16,219.219 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:36:16,221.221 INFO    ] No camera update needed
[2026-08-31 15:36:16,224.224 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:36:16,226.226 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:36:16,231.231 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:36:16,236.236 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:36:18,279.279 INFO    ] ================================================
[2026-08-31 15:36:18,295.295 INFO    ] Launching Daemon at Mon Aug 31 15:36:18 IST 2026
[2026-08-31 15:36:18,306.306 INFO    ] ================================================
[2026-08-31 15:36:18,891.891 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:36:18
[2026-08-31 15:36:19,485.485 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:36:19,751.751 INFO    ] Initializing speech engine...
[2026-08-31 15:36:19,759.759 INFO    ] 2026-08-31 15:36:19
[2026-08-31 15:36:20,034.034 INFO    ] 2026-08-31 15:36:20
[2026-08-31 15:36:20,069.069 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:36:20,271.271 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:36:20,286.286 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:36:20,452.452 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:36:20,461.461 INFO    ] time= 31/08/2026 15:36:20
[2026-08-31 15:36:20,469.469 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:36:20,490.490 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:36:20,626.626 INFO    ] No existing commands found in stream
[2026-08-31 15:36:25,651.651 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:36:25,654.654 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-08-31 15:36:29,680.680 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 15:36:29,683.683 INFO    ] Checking for system updates...
[2026-08-31 15:36:29,718.718 INFO    ] 200
[2026-08-31 15:36:29,721.721 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:36:29,773.773 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:36:29,777.777 INFO    ] No update needed
[2026-08-31 15:36:29,779.779 INFO    ] Checking for camera pi updates...
[2026-08-31 15:36:29,829.829 INFO    ] 200
[2026-08-31 15:36:29,832.832 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:36:29,873.873 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:36:29,959.959 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:36:29,961.961 INFO    ] No camera update needed
[2026-08-31 15:36:29,963.963 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:36:29,966.966 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:36:29,971.971 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:36:29,976.976 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:36:32,019.019 INFO    ] ================================================
[2026-08-31 15:36:32,038.038 INFO    ] Launching Daemon at Mon Aug 31 15:36:32 IST 2026
[2026-08-31 15:36:32,051.051 INFO    ] ================================================
[2026-08-31 15:36:32,659.659 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:36:32
[2026-08-31 15:36:33,322.322 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:36:33,632.632 INFO    ] Initializing speech engine...
[2026-08-31 15:36:33,643.643 INFO    ] 2026-08-31 15:36:33
[2026-08-31 15:36:33,962.962 INFO    ] 2026-08-31 15:36:33
[2026-08-31 15:36:34,044.044 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:36:34,260.260 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:36:34,268.268 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:36:34,463.463 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:36:34,483.483 INFO    ] time= 31/08/2026 15:36:34
[2026-08-31 15:36:34,511.511 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:36:34,522.522 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:36:34,642.642 INFO    ] No existing commands found in stream
[2026-08-31 15:36:39,668.668 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:36:39,671.671 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-08-31 15:36:40,489.489 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 15:36:40,491.491 INFO    ] Checking for system updates...
[2026-08-31 15:36:40,527.527 INFO    ] 200
[2026-08-31 15:36:40,530.530 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:36:40,589.589 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:36:40,592.592 INFO    ] No update needed
[2026-08-31 15:36:40,594.594 INFO    ] Checking for camera pi updates...
[2026-08-31 15:36:40,628.628 INFO    ] 200
[2026-08-31 15:36:40,631.631 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:36:40,674.674 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:36:40,754.754 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:36:40,756.756 INFO    ] No camera update needed
[2026-08-31 15:36:40,759.759 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:36:40,761.761 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:36:40,766.766 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:36:40,771.771 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:36:42,811.811 INFO    ] ================================================
[2026-08-31 15:36:42,827.827 INFO    ] Launching Daemon at Mon Aug 31 15:36:42 IST 2026
[2026-08-31 15:36:42,838.838 INFO    ] ================================================
[2026-08-31 15:36:43,439.439 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:36:43
[2026-08-31 15:36:44,023.023 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:36:44,274.274 INFO    ] Initializing speech engine...
[2026-08-31 15:36:44,297.297 INFO    ] 2026-08-31 15:36:44
[2026-08-31 15:36:44,552.552 INFO    ] 2026-08-31 15:36:44
[2026-08-31 15:36:44,587.587 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:36:44,844.844 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:36:44,853.853 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:36:45,010.010 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:36:45,052.052 INFO    ] time= 31/08/2026 15:36:45
[2026-08-31 15:36:45,101.101 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:36:45,150.150 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:36:45,239.239 INFO    ] No existing commands found in stream
[2026-08-31 15:36:50,275.275 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:36:50,278.278 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-08-31 15:36:51,059.059 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 15:36:51,062.062 INFO    ] Checking for system updates...
[2026-08-31 15:36:51,100.100 INFO    ] 200
[2026-08-31 15:36:51,103.103 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:36:51,158.158 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:36:51,160.160 INFO    ] No update needed
[2026-08-31 15:36:51,163.163 INFO    ] Checking for camera pi updates...
[2026-08-31 15:36:51,202.202 INFO    ] 200
[2026-08-31 15:36:51,205.205 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:36:51,252.252 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:36:51,340.340 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:36:51,343.343 INFO    ] No camera update needed
[2026-08-31 15:36:51,346.346 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:36:51,349.349 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:36:51,355.355 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:36:51,361.361 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:36:53,401.401 INFO    ] ================================================
[2026-08-31 15:36:53,416.416 INFO    ] Launching Daemon at Mon Aug 31 15:36:53 IST 2026
[2026-08-31 15:36:53,427.427 INFO    ] ================================================
[2026-08-31 15:36:54,097.097 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:36:54
[2026-08-31 15:36:54,786.786 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:36:55,101.101 INFO    ] Initializing speech engine...
[2026-08-31 15:36:55,109.109 INFO    ] 2026-08-31 15:36:55
[2026-08-31 15:36:55,366.366 INFO    ] 2026-08-31 15:36:55
[2026-08-31 15:36:55,420.420 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:36:55,647.647 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:36:55,652.652 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:36:55,781.781 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:36:55,828.828 INFO    ] time= 31/08/2026 15:36:55
[2026-08-31 15:36:55,877.877 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:36:55,915.915 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:36:56,064.064 INFO    ] No existing commands found in stream
[2026-08-31 15:37:01,086.086 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:37:01,089.089 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-08-31 15:37:02,062.062 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 15:37:02,065.065 INFO    ] Checking for system updates...
[2026-08-31 15:37:02,119.119 INFO    ] 200
[2026-08-31 15:37:02,123.123 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:37:02,200.200 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:37:02,203.203 INFO    ] No update needed
[2026-08-31 15:37:02,206.206 INFO    ] Checking for camera pi updates...
[2026-08-31 15:37:02,253.253 INFO    ] 200
[2026-08-31 15:37:02,256.256 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:37:02,307.307 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:37:02,409.409 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:37:02,413.413 INFO    ] No camera update needed
[2026-08-31 15:37:02,417.417 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:37:02,420.420 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:37:02,428.428 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:37:02,435.435 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:37:04,478.478 INFO    ] ================================================
[2026-08-31 15:37:04,494.494 INFO    ] Launching Daemon at Mon Aug 31 15:37:04 IST 2026
[2026-08-31 15:37:04,506.506 INFO    ] ================================================
[2026-08-31 15:37:05,094.094 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:37:05
[2026-08-31 15:37:05,695.695 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:37:05,974.974 INFO    ] Initializing speech engine...
[2026-08-31 15:37:05,985.985 INFO    ] 2026-08-31 15:37:05
[2026-08-31 15:37:06,262.262 INFO    ] 2026-08-31 15:37:06
[2026-08-31 15:37:06,303.303 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:37:06,517.517 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:37:06,578.578 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:37:06,725.725 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:37:06,786.786 INFO    ] time= 31/08/2026 15:37:06
[2026-08-31 15:37:06,847.847 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:37:06,863.863 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:37:07,017.017 INFO    ] No existing commands found in stream
[2026-08-31 15:37:12,037.037 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:37:12,040.040 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-08-31 15:37:14,370.370 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 15:37:14,373.373 INFO    ] Checking for system updates...
[2026-08-31 15:37:14,414.414 INFO    ] 200
[2026-08-31 15:37:14,417.417 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:37:14,471.471 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:37:14,474.474 INFO    ] No update needed
[2026-08-31 15:37:14,477.477 INFO    ] Checking for camera pi updates...
[2026-08-31 15:37:14,512.512 INFO    ] 200
[2026-08-31 15:37:14,515.515 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:37:14,562.562 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:37:14,642.642 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:37:14,645.645 INFO    ] No camera update needed
[2026-08-31 15:37:14,647.647 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:37:14,650.650 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:37:14,655.655 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:37:14,660.660 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:37:16,700.700 INFO    ] ================================================
[2026-08-31 15:37:16,715.715 INFO    ] Launching Daemon at Mon Aug 31 15:37:16 IST 2026
[2026-08-31 15:37:16,727.727 INFO    ] ================================================
[2026-08-31 15:37:17,401.401 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:37:17
[2026-08-31 15:37:18,082.082 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:37:18,391.391 INFO    ] Initializing speech engine...
[2026-08-31 15:37:18,403.403 INFO    ] 2026-08-31 15:37:18
[2026-08-31 15:37:18,716.716 INFO    ] 2026-08-31 15:37:18
[2026-08-31 15:37:18,799.799 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:37:19,009.009 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:37:19,017.017 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:37:19,212.212 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:37:19,219.219 INFO    ] time= 31/08/2026 15:37:19
[2026-08-31 15:37:19,236.236 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:37:19,251.251 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:37:19,404.404 INFO    ] No existing commands found in stream
[2026-08-31 15:37:24,436.436 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:37:24,439.439 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-08-31 15:37:28,067.067 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 15:37:28,070.070 INFO    ] Checking for system updates...
[2026-08-31 15:37:28,108.108 INFO    ] 200
[2026-08-31 15:37:28,111.111 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:37:28,164.164 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:37:28,167.167 INFO    ] No update needed
[2026-08-31 15:37:28,170.170 INFO    ] Checking for camera pi updates...
[2026-08-31 15:37:28,205.205 INFO    ] 200
[2026-08-31 15:37:28,208.208 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:37:28,249.249 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:37:28,355.355 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:37:28,358.358 INFO    ] No camera update needed
[2026-08-31 15:37:28,361.361 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:37:28,363.363 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:37:28,370.370 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:37:28,376.376 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:37:30,419.419 INFO    ] ================================================
[2026-08-31 15:37:30,435.435 INFO    ] Launching Daemon at Mon Aug 31 15:37:30 IST 2026
[2026-08-31 15:37:30,446.446 INFO    ] ================================================
[2026-08-31 15:37:31,017.017 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:37:31
[2026-08-31 15:37:31,628.628 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:37:31,917.917 INFO    ] Initializing speech engine...
[2026-08-31 15:37:31,927.927 INFO    ] 2026-08-31 15:37:31
[2026-08-31 15:37:32,193.193 INFO    ] 2026-08-31 15:37:32
[2026-08-31 15:37:32,262.262 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:37:32,493.493 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:37:32,503.503 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:37:32,738.738 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:37:32,789.789 INFO    ] time= 31/08/2026 15:37:32
[2026-08-31 15:37:32,808.808 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:37:32,840.840 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:37:32,955.955 INFO    ] No existing commands found in stream
[2026-08-31 15:37:37,986.986 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:37:37,990.990 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-08-31 15:37:39,579.579 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 15:37:39,582.582 INFO    ] Checking for system updates...
[2026-08-31 15:37:39,619.619 INFO    ] 200
[2026-08-31 15:37:39,622.622 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:37:39,675.675 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:37:39,678.678 INFO    ] No update needed
[2026-08-31 15:37:39,681.681 INFO    ] Checking for camera pi updates...
[2026-08-31 15:37:39,717.717 INFO    ] 200
[2026-08-31 15:37:39,720.720 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:37:39,760.760 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:37:39,860.860 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:37:39,862.862 INFO    ] No camera update needed
[2026-08-31 15:37:39,864.864 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:37:39,867.867 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:37:39,872.872 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:37:39,877.877 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:37:41,917.917 INFO    ] ================================================
[2026-08-31 15:37:41,933.933 INFO    ] Launching Daemon at Mon Aug 31 15:37:41 IST 2026
[2026-08-31 15:37:41,945.945 INFO    ] ================================================
[2026-08-31 15:37:42,552.552 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:37:42
[2026-08-31 15:37:43,230.230 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:37:43,534.534 INFO    ] Initializing speech engine...
[2026-08-31 15:37:43,546.546 INFO    ] 2026-08-31 15:37:43
[2026-08-31 15:37:43,856.856 INFO    ] 2026-08-31 15:37:43
[2026-08-31 15:37:43,942.942 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:37:44,156.156 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:37:44,164.164 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:37:44,355.355 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:37:44,374.374 INFO    ] time= 31/08/2026 15:37:44
[2026-08-31 15:37:44,383.383 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:37:44,411.411 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:37:44,517.517 INFO    ] No existing commands found in stream
[2026-08-31 15:37:49,552.552 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:37:49,555.555 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-08-31 15:37:52,849.849 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 15:37:52,852.852 INFO    ] Checking for system updates...
[2026-08-31 15:37:52,888.888 INFO    ] 200
[2026-08-31 15:37:52,891.891 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:37:52,943.943 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:37:52,945.945 INFO    ] No update needed
[2026-08-31 15:37:52,948.948 INFO    ] Checking for camera pi updates...
[2026-08-31 15:37:52,982.982 INFO    ] 200
[2026-08-31 15:37:52,984.984 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:37:53,024.024 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:37:53,096.096 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:37:53,099.099 INFO    ] No camera update needed
[2026-08-31 15:37:53,101.101 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:37:53,103.103 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:37:53,109.109 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:37:53,113.113 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:37:55,153.153 INFO    ] ================================================
[2026-08-31 15:37:55,169.169 INFO    ] Launching Daemon at Mon Aug 31 15:37:55 IST 2026
[2026-08-31 15:37:55,180.180 INFO    ] ================================================
[2026-08-31 15:37:55,843.843 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:37:55
[2026-08-31 15:37:56,514.514 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:37:56,776.776 INFO    ] Initializing speech engine...
[2026-08-31 15:37:56,789.789 INFO    ] 2026-08-31 15:37:56
[2026-08-31 15:37:57,057.057 INFO    ] 2026-08-31 15:37:57
[2026-08-31 15:37:57,092.092 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:37:57,344.344 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:37:57,353.353 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:37:57,583.583 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:37:57,616.616 INFO    ] time= 31/08/2026 15:37:57
[2026-08-31 15:37:57,634.634 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:37:57,642.642 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:37:57,766.766 INFO    ] No existing commands found in stream
[2026-08-31 15:38:02,780.780 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:38:02,782.782 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-08-31 15:38:05,419.419 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 15:38:05,422.422 INFO    ] Checking for system updates...
[2026-08-31 15:38:05,457.457 INFO    ] 200
[2026-08-31 15:38:05,460.460 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:38:05,512.512 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:38:05,514.514 INFO    ] No update needed
[2026-08-31 15:38:05,517.517 INFO    ] Checking for camera pi updates...
[2026-08-31 15:38:05,550.550 INFO    ] 200
[2026-08-31 15:38:05,552.552 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:38:05,592.592 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:38:05,677.677 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:38:05,680.680 INFO    ] No camera update needed
[2026-08-31 15:38:05,682.682 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:38:05,684.684 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:38:05,690.690 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:38:05,695.695 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:38:07,736.736 INFO    ] ================================================
[2026-08-31 15:38:07,751.751 INFO    ] Launching Daemon at Mon Aug 31 15:38:07 IST 2026
[2026-08-31 15:38:07,762.762 INFO    ] ================================================
[2026-08-31 15:38:08,343.343 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:38:08
[2026-08-31 15:38:08,941.941 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:38:09,213.213 INFO    ] Initializing speech engine...
[2026-08-31 15:38:09,222.222 INFO    ] 2026-08-31 15:38:09
[2026-08-31 15:38:09,472.472 INFO    ] 2026-08-31 15:38:09
[2026-08-31 15:38:09,506.506 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:38:09,703.703 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:38:09,733.733 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:38:09,976.976 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:38:10,025.025 INFO    ] time= 31/08/2026 15:38:09
[2026-08-31 15:38:10,031.031 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:38:10,050.050 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:38:10,203.203 INFO    ] No existing commands found in stream
[2026-08-31 15:38:15,234.234 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:38:15,237.237 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-08-31 15:38:18,330.330 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 15:38:18,333.333 INFO    ] Checking for system updates...
[2026-08-31 15:38:18,369.369 INFO    ] 200
[2026-08-31 15:38:18,372.372 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:38:18,424.424 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:38:18,426.426 INFO    ] No update needed
[2026-08-31 15:38:18,429.429 INFO    ] Checking for camera pi updates...
[2026-08-31 15:38:18,466.466 INFO    ] 200
[2026-08-31 15:38:18,469.469 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:38:18,511.511 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:38:18,590.590 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:38:18,593.593 INFO    ] No camera update needed
[2026-08-31 15:38:18,595.595 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:38:18,598.598 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:38:18,603.603 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:38:18,608.608 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:38:20,647.647 INFO    ] ================================================
[2026-08-31 15:38:20,663.663 INFO    ] Launching Daemon at Mon Aug 31 15:38:20 IST 2026
[2026-08-31 15:38:20,673.673 INFO    ] ================================================
[2026-08-31 15:38:21,239.239 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:38:21
[2026-08-31 15:38:21,822.822 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:38:22,104.104 INFO    ] Initializing speech engine...
[2026-08-31 15:38:22,109.109 INFO    ] 2026-08-31 15:38:22
[2026-08-31 15:38:22,401.401 INFO    ] 2026-08-31 15:38:22
[2026-08-31 15:38:22,446.446 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:38:22,728.728 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:38:22,733.733 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:38:22,927.927 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:38:22,933.933 INFO    ] time= 31/08/2026 15:38:22
[2026-08-31 15:38:22,952.952 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:38:22,979.979 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:38:23,084.084 INFO    ] No existing commands found in stream
[2026-08-31 15:38:28,105.105 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:38:28,109.109 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-08-31 15:38:31,421.421 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 15:38:31,424.424 INFO    ] Checking for system updates...
[2026-08-31 15:38:31,468.468 INFO    ] 200
[2026-08-31 15:38:31,472.472 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:38:31,548.548 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:38:31,552.552 INFO    ] No update needed
[2026-08-31 15:38:31,555.555 INFO    ] Checking for camera pi updates...
[2026-08-31 15:38:31,592.592 INFO    ] 200
[2026-08-31 15:38:31,595.595 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:38:31,647.647 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:38:31,714.714 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:38:31,717.717 INFO    ] No camera update needed
[2026-08-31 15:38:31,720.720 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:38:31,723.723 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:38:31,731.731 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:38:31,738.738 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:38:33,779.779 INFO    ] ================================================
[2026-08-31 15:38:33,794.794 INFO    ] Launching Daemon at Mon Aug 31 15:38:33 IST 2026
[2026-08-31 15:38:33,805.805 INFO    ] ================================================
[2026-08-31 15:38:34,387.387 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:38:34
[2026-08-31 15:38:34,985.985 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:38:35,256.256 INFO    ] Initializing speech engine...
[2026-08-31 15:38:35,265.265 INFO    ] 2026-08-31 15:38:35
[2026-08-31 15:38:35,550.550 INFO    ] 2026-08-31 15:38:35
[2026-08-31 15:38:35,592.592 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:38:35,816.816 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:38:35,821.821 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:38:36,059.059 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:38:36,075.075 INFO    ] time= 31/08/2026 15:38:36
[2026-08-31 15:38:36,080.080 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:38:36,096.096 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:38:36,208.208 INFO    ] No existing commands found in stream
[2026-08-31 15:38:41,235.235 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:38:41,238.238 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-08-31 15:38:44,047.047 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 15:38:44,050.050 INFO    ] Checking for system updates...
[2026-08-31 15:38:44,086.086 INFO    ] 200
[2026-08-31 15:38:44,088.088 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:38:44,140.140 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:38:44,142.142 INFO    ] No update needed
[2026-08-31 15:38:44,145.145 INFO    ] Checking for camera pi updates...
[2026-08-31 15:38:44,179.179 INFO    ] 200
[2026-08-31 15:38:44,181.181 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:38:44,221.221 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:38:44,300.300 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:38:44,302.302 INFO    ] No camera update needed
[2026-08-31 15:38:44,305.305 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:38:44,307.307 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:38:44,312.312 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:38:44,317.317 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:38:46,359.359 INFO    ] ================================================
[2026-08-31 15:38:46,375.375 INFO    ] Launching Daemon at Mon Aug 31 15:38:46 IST 2026
[2026-08-31 15:38:46,386.386 INFO    ] ================================================
[2026-08-31 15:38:47,056.056 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:38:47
[2026-08-31 15:38:47,723.723 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:38:47,990.990 INFO    ] Initializing speech engine...
[2026-08-31 15:38:47,999.999 INFO    ] 2026-08-31 15:38:47
[2026-08-31 15:38:48,244.244 INFO    ] 2026-08-31 15:38:48
[2026-08-31 15:38:48,278.278 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:38:48,535.535 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:38:48,540.540 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:38:48,791.791 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:38:48,798.798 INFO    ] time= 31/08/2026 15:38:48
[2026-08-31 15:38:48,815.815 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:38:48,832.832 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:38:48,968.968 INFO    ] No existing commands found in stream
[2026-08-31 15:38:53,999.999 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:38:54,001.001 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-08-31 15:38:55,041.041 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 15:38:55,044.044 INFO    ] Checking for system updates...
[2026-08-31 15:38:55,080.080 INFO    ] 200
[2026-08-31 15:38:55,082.082 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:38:55,142.142 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:38:55,144.144 INFO    ] No update needed
[2026-08-31 15:38:55,147.147 INFO    ] Checking for camera pi updates...
[2026-08-31 15:38:55,184.184 INFO    ] 200
[2026-08-31 15:38:55,187.187 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:38:55,227.227 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:38:55,317.317 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:38:55,319.319 INFO    ] No camera update needed
[2026-08-31 15:38:55,322.322 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:38:55,324.324 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:38:55,329.329 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:38:55,334.334 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:38:57,376.376 INFO    ] ================================================
[2026-08-31 15:38:57,391.391 INFO    ] Launching Daemon at Mon Aug 31 15:38:57 IST 2026
[2026-08-31 15:38:57,402.402 INFO    ] ================================================
[2026-08-31 15:38:57,975.975 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:38:57
[2026-08-31 15:38:58,578.578 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:38:58,849.849 INFO    ] Initializing speech engine...
[2026-08-31 15:38:58,859.859 INFO    ] 2026-08-31 15:38:58
[2026-08-31 15:38:59,109.109 INFO    ] 2026-08-31 15:38:59
[2026-08-31 15:38:59,175.175 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:38:59,459.459 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:38:59,468.468 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:38:59,662.662 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:38:59,668.668 INFO    ] time= 31/08/2026 15:38:59
[2026-08-31 15:38:59,685.685 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:38:59,698.698 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:38:59,826.826 INFO    ] No existing commands found in stream
[2026-08-31 15:39:04,855.855 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:39:04,858.858 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-08-31 15:39:07,844.844 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 15:39:07,846.846 INFO    ] Checking for system updates...
[2026-08-31 15:39:07,882.882 INFO    ] 200
[2026-08-31 15:39:07,884.884 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:39:07,936.936 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:39:07,939.939 INFO    ] No update needed
[2026-08-31 15:39:07,941.941 INFO    ] Checking for camera pi updates...
[2026-08-31 15:39:07,980.980 INFO    ] 200
[2026-08-31 15:39:07,983.983 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:39:08,023.023 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:39:08,124.124 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:39:08,127.127 INFO    ] No camera update needed
[2026-08-31 15:39:08,130.130 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:39:08,132.132 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:39:08,137.137 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:39:08,142.142 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:39:10,182.182 INFO    ] ================================================
[2026-08-31 15:39:10,197.197 INFO    ] Launching Daemon at Mon Aug 31 15:39:10 IST 2026
[2026-08-31 15:39:10,208.208 INFO    ] ================================================
[2026-08-31 15:39:10,792.792 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:39:10
[2026-08-31 15:39:11,389.389 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:39:11,661.661 INFO    ] Initializing speech engine...
[2026-08-31 15:39:11,669.669 INFO    ] 2026-08-31 15:39:11
[2026-08-31 15:39:11,924.924 INFO    ] 2026-08-31 15:39:11
[2026-08-31 15:39:11,985.985 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:39:12,275.275 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:39:12,335.335 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:39:12,484.484 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:39:12,492.492 INFO    ] time= 31/08/2026 15:39:12
[2026-08-31 15:39:12,518.518 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:39:12,526.526 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:39:12,637.637 INFO    ] No existing commands found in stream
[2026-08-31 15:39:17,661.661 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:39:17,664.664 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-08-31 15:39:20,520.520 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 15:39:20,522.522 INFO    ] Checking for system updates...
[2026-08-31 15:39:20,560.560 INFO    ] 200
[2026-08-31 15:39:20,562.562 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:39:20,620.620 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:39:20,623.623 INFO    ] No update needed
[2026-08-31 15:39:20,625.625 INFO    ] Checking for camera pi updates...
[2026-08-31 15:39:20,664.664 INFO    ] 200
[2026-08-31 15:39:20,666.666 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:39:20,713.713 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:39:20,801.801 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:39:20,804.804 INFO    ] No camera update needed
[2026-08-31 15:39:20,806.806 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:39:20,809.809 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:39:20,814.814 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:39:20,820.820 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:39:22,865.865 INFO    ] ================================================
[2026-08-31 15:39:22,881.881 INFO    ] Launching Daemon at Mon Aug 31 15:39:22 IST 2026
[2026-08-31 15:39:22,891.891 INFO    ] ================================================
[2026-08-31 15:39:23,555.555 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:39:23
[2026-08-31 15:39:24,220.220 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:39:24,494.494 INFO    ] Initializing speech engine...
[2026-08-31 15:39:24,504.504 INFO    ] 2026-08-31 15:39:24
[2026-08-31 15:39:24,754.754 INFO    ] 2026-08-31 15:39:24
[2026-08-31 15:39:24,789.789 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:39:25,047.047 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:39:25,056.056 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:39:25,194.194 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:39:25,265.265 INFO    ] time= 31/08/2026 15:39:25
[2026-08-31 15:39:25,319.319 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:39:25,331.331 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:39:25,442.442 INFO    ] No existing commands found in stream
[2026-08-31 15:39:30,463.463 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:39:30,466.466 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-08-31 15:39:31,051.051 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 15:39:31,054.054 INFO    ] Checking for system updates...
[2026-08-31 15:39:31,094.094 INFO    ] 200
[2026-08-31 15:39:31,096.096 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:39:31,156.156 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:39:31,159.159 INFO    ] No update needed
[2026-08-31 15:39:31,161.161 INFO    ] Checking for camera pi updates...
[2026-08-31 15:39:31,194.194 INFO    ] 200
[2026-08-31 15:39:31,197.197 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:39:31,238.238 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:39:31,321.321 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:39:31,323.323 INFO    ] No camera update needed
[2026-08-31 15:39:31,326.326 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:39:31,328.328 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:39:31,333.333 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:39:31,338.338 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:39:33,383.383 INFO    ] ================================================
[2026-08-31 15:39:33,398.398 INFO    ] Launching Daemon at Mon Aug 31 15:39:33 IST 2026
[2026-08-31 15:39:33,409.409 INFO    ] ================================================
[2026-08-31 15:39:34,075.075 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:39:34
[2026-08-31 15:39:34,759.759 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:39:35,069.069 INFO    ] Initializing speech engine...
[2026-08-31 15:39:35,084.084 INFO    ] 2026-08-31 15:39:35
[2026-08-31 15:39:35,377.377 INFO    ] 2026-08-31 15:39:35
[2026-08-31 15:39:35,489.489 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:39:35,727.727 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:39:35,777.777 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:39:35,931.931 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:39:35,962.962 INFO    ] time= 31/08/2026 15:39:35
[2026-08-31 15:39:35,972.972 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:39:35,980.980 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:39:36,123.123 INFO    ] No existing commands found in stream
[2026-08-31 15:39:41,154.154 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:39:41,158.158 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-08-31 15:39:44,175.175 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 15:39:44,179.179 INFO    ] Checking for system updates...
[2026-08-31 15:39:44,216.216 INFO    ] 200
[2026-08-31 15:39:44,219.219 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:39:44,284.284 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:39:44,286.286 INFO    ] No update needed
[2026-08-31 15:39:44,289.289 INFO    ] Checking for camera pi updates...
[2026-08-31 15:39:44,322.322 INFO    ] 200
[2026-08-31 15:39:44,325.325 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:39:44,365.365 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:39:44,464.464 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:39:44,466.466 INFO    ] No camera update needed
[2026-08-31 15:39:44,469.469 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:39:44,471.471 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:39:44,476.476 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:39:44,481.481 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:39:46,520.520 INFO    ] ================================================
[2026-08-31 15:39:46,536.536 INFO    ] Launching Daemon at Mon Aug 31 15:39:46 IST 2026
[2026-08-31 15:39:46,546.546 INFO    ] ================================================
[2026-08-31 15:39:47,141.141 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:39:47
[2026-08-31 15:39:47,729.729 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:39:48,001.001 INFO    ] Initializing speech engine...
[2026-08-31 15:39:48,010.010 INFO    ] 2026-08-31 15:39:48
[2026-08-31 15:39:48,271.271 INFO    ] 2026-08-31 15:39:48
[2026-08-31 15:39:48,326.326 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:39:48,547.547 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:39:48,556.556 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:39:48,780.780 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:39:48,814.814 INFO    ] time= 31/08/2026 15:39:48
[2026-08-31 15:39:48,820.820 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:39:48,837.837 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:39:48,966.966 INFO    ] No existing commands found in stream
[2026-08-31 15:39:53,983.983 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:39:53,986.986 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-08-31 15:39:55,944.944 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 15:39:55,946.946 INFO    ] Checking for system updates...
[2026-08-31 15:39:55,982.982 INFO    ] 200
[2026-08-31 15:39:55,984.984 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:39:56,045.045 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:39:56,048.048 INFO    ] No update needed
[2026-08-31 15:39:56,050.050 INFO    ] Checking for camera pi updates...
[2026-08-31 15:39:56,089.089 INFO    ] 200
[2026-08-31 15:39:56,091.091 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:39:56,132.132 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:39:56,230.230 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:39:56,233.233 INFO    ] No camera update needed
[2026-08-31 15:39:56,235.235 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:39:56,238.238 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:39:56,243.243 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:39:56,248.248 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:39:58,292.292 INFO    ] ================================================
[2026-08-31 15:39:58,308.308 INFO    ] Launching Daemon at Mon Aug 31 15:39:58 IST 2026
[2026-08-31 15:39:58,318.318 INFO    ] ================================================
[2026-08-31 15:39:58,904.904 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:39:58
[2026-08-31 15:39:59,487.487 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:39:59,737.737 INFO    ] Initializing speech engine...
[2026-08-31 15:39:59,750.750 INFO    ] 2026-08-31 15:39:59
[2026-08-31 15:40:00,017.017 INFO    ] 2026-08-31 15:40:00
[2026-08-31 15:40:00,052.052 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:40:00,251.251 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:40:00,258.258 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:40:00,455.455 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:40:00,467.467 INFO    ] time= 31/08/2026 15:40:00
[2026-08-31 15:40:00,521.521 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:40:00,570.570 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:40:00,644.644 INFO    ] No existing commands found in stream
[2026-08-31 15:40:05,656.656 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:40:05,659.659 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-08-31 15:40:08,540.540 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 15:40:08,543.543 INFO    ] Checking for system updates...
[2026-08-31 15:40:08,578.578 INFO    ] 200
[2026-08-31 15:40:08,581.581 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:40:08,633.633 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:40:08,636.636 INFO    ] No update needed
[2026-08-31 15:40:08,638.638 INFO    ] Checking for camera pi updates...
[2026-08-31 15:40:08,671.671 INFO    ] 200
[2026-08-31 15:40:08,674.674 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:40:08,720.720 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:40:08,906.906 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:40:08,908.908 INFO    ] No camera update needed
[2026-08-31 15:40:08,911.911 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:40:08,913.913 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:40:08,918.918 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:40:08,923.923 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:40:10,966.966 INFO    ] ================================================
[2026-08-31 15:40:10,982.982 INFO    ] Launching Daemon at Mon Aug 31 15:40:10 IST 2026
[2026-08-31 15:40:10,993.993 INFO    ] ================================================
[2026-08-31 15:40:11,576.576 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:40:11
[2026-08-31 15:40:12,174.174 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:40:12,451.451 INFO    ] Initializing speech engine...
[2026-08-31 15:40:12,457.457 INFO    ] 2026-08-31 15:40:12
[2026-08-31 15:40:12,721.721 INFO    ] 2026-08-31 15:40:12
[2026-08-31 15:40:12,778.778 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:40:12,971.971 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:40:12,980.980 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:40:13,210.210 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:40:13,227.227 INFO    ] time= 31/08/2026 15:40:13
[2026-08-31 15:40:13,282.282 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:40:13,331.331 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:40:13,428.428 INFO    ] No existing commands found in stream
[2026-08-31 15:40:18,440.440 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:40:18,443.443 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-08-31 15:40:19,520.520 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 15:40:19,523.523 INFO    ] Checking for system updates...
[2026-08-31 15:40:19,560.560 INFO    ] 200
[2026-08-31 15:40:19,563.563 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:40:19,625.625 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:40:19,627.627 INFO    ] No update needed
[2026-08-31 15:40:19,630.630 INFO    ] Checking for camera pi updates...
[2026-08-31 15:40:19,664.664 INFO    ] 200
[2026-08-31 15:40:19,666.666 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:40:19,713.713 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:40:19,815.815 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:40:19,817.817 INFO    ] No camera update needed
[2026-08-31 15:40:19,820.820 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:40:19,822.822 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:40:19,828.828 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:40:19,833.833 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:40:21,876.876 INFO    ] ================================================
[2026-08-31 15:40:21,892.892 INFO    ] Launching Daemon at Mon Aug 31 15:40:21 IST 2026
[2026-08-31 15:40:21,903.903 INFO    ] ================================================
[2026-08-31 15:40:22,488.488 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:40:22
[2026-08-31 15:40:23,169.169 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:40:23,487.487 INFO    ] Initializing speech engine...
[2026-08-31 15:40:23,494.494 INFO    ] 2026-08-31 15:40:23
[2026-08-31 15:40:23,781.781 INFO    ] 2026-08-31 15:40:23
[2026-08-31 15:40:23,893.893 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:40:24,091.091 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:40:24,110.110 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:40:24,306.306 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:40:24,325.325 INFO    ] time= 31/08/2026 15:40:24
[2026-08-31 15:40:24,335.335 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:40:24,364.364 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:40:24,479.479 INFO    ] No existing commands found in stream
[2026-08-31 15:40:29,504.504 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:40:29,508.508 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-08-31 15:40:31,670.670 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 15:40:31,673.673 INFO    ] Checking for system updates...
[2026-08-31 15:40:31,720.720 INFO    ] 200
[2026-08-31 15:40:31,723.723 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:40:31,796.796 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:40:31,799.799 INFO    ] No update needed
[2026-08-31 15:40:31,802.802 INFO    ] Checking for camera pi updates...
[2026-08-31 15:40:31,842.842 INFO    ] 200
[2026-08-31 15:40:31,845.845 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:40:31,888.888 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:40:31,950.950 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:40:31,952.952 INFO    ] No camera update needed
[2026-08-31 15:40:31,955.955 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:40:31,958.958 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:40:31,964.964 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:40:31,970.970 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:40:34,015.015 INFO    ] ================================================
[2026-08-31 15:40:34,035.035 INFO    ] Launching Daemon at Mon Aug 31 15:40:34 IST 2026
[2026-08-31 15:40:34,046.046 INFO    ] ================================================
[2026-08-31 15:40:34,629.629 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:40:34
[2026-08-31 15:40:35,230.230 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:40:35,502.502 INFO    ] Initializing speech engine...
[2026-08-31 15:40:35,511.511 INFO    ] 2026-08-31 15:40:35
[2026-08-31 15:40:35,773.773 INFO    ] 2026-08-31 15:40:35
[2026-08-31 15:40:35,827.827 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:40:36,081.081 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:40:36,098.098 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:40:36,314.314 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:40:36,332.332 INFO    ] time= 31/08/2026 15:40:36
[2026-08-31 15:40:36,341.341 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:40:36,367.367 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:40:36,474.474 INFO    ] No existing commands found in stream
[2026-08-31 15:40:41,494.494 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:40:41,497.497 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-08-31 15:40:44,906.906 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 15:40:44,909.909 INFO    ] Checking for system updates...
[2026-08-31 15:40:44,949.949 INFO    ] 200
[2026-08-31 15:40:44,952.952 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:40:45,003.003 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:40:45,006.006 INFO    ] No update needed
[2026-08-31 15:40:45,008.008 INFO    ] Checking for camera pi updates...
[2026-08-31 15:40:45,042.042 INFO    ] 200
[2026-08-31 15:40:45,044.044 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:40:45,091.091 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:40:45,170.170 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:40:45,172.172 INFO    ] No camera update needed
[2026-08-31 15:40:45,175.175 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:40:45,177.177 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:40:45,183.183 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:40:45,188.188 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:40:47,230.230 INFO    ] ================================================
[2026-08-31 15:40:47,249.249 INFO    ] Launching Daemon at Mon Aug 31 15:40:47 IST 2026
[2026-08-31 15:40:47,261.261 INFO    ] ================================================
[2026-08-31 15:40:47,845.845 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:40:47
[2026-08-31 15:40:48,445.445 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:40:48,709.709 INFO    ] Initializing speech engine...
[2026-08-31 15:40:48,718.718 INFO    ] 2026-08-31 15:40:48
[2026-08-31 15:40:49,024.024 INFO    ] 2026-08-31 15:40:48
[2026-08-31 15:40:49,064.064 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:40:49,281.281 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:40:49,298.298 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:40:49,452.452 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:40:49,461.461 INFO    ] time= 31/08/2026 15:40:49
[2026-08-31 15:40:49,466.466 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:40:49,474.474 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:40:49,602.602 INFO    ] No existing commands found in stream
[2026-08-31 15:40:54,632.632 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:40:54,635.635 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-08-31 15:40:57,159.159 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 15:40:57,161.161 INFO    ] Checking for system updates...
[2026-08-31 15:40:57,201.201 INFO    ] 200
[2026-08-31 15:40:57,204.204 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:40:57,263.263 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:40:57,266.266 INFO    ] No update needed
[2026-08-31 15:40:57,269.269 INFO    ] Checking for camera pi updates...
[2026-08-31 15:40:57,307.307 INFO    ] 200
[2026-08-31 15:40:57,310.310 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:40:57,356.356 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:40:57,452.452 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:40:57,454.454 INFO    ] No camera update needed
[2026-08-31 15:40:57,457.457 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:40:57,459.459 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:40:57,465.465 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:40:57,470.470 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:40:59,512.512 INFO    ] ================================================
[2026-08-31 15:40:59,527.527 INFO    ] Launching Daemon at Mon Aug 31 15:40:59 IST 2026
[2026-08-31 15:40:59,538.538 INFO    ] ================================================
[2026-08-31 15:41:00,204.204 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:41:00
[2026-08-31 15:41:00,888.888 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:41:01,163.163 INFO    ] Initializing speech engine...
[2026-08-31 15:41:01,172.172 INFO    ] 2026-08-31 15:41:01
[2026-08-31 15:41:01,435.435 INFO    ] 2026-08-31 15:41:01
[2026-08-31 15:41:01,489.489 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:41:01,814.814 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:41:01,840.840 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:41:02,010.010 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:41:02,014.014 INFO    ] time= 31/08/2026 15:41:02
[2026-08-31 15:41:02,018.018 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:41:02,022.022 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:41:02,085.085 INFO    ] No existing commands found in stream
[2026-08-31 15:41:07,105.105 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:41:07,108.108 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-08-31 15:41:07,817.817 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 15:41:07,820.820 INFO    ] Checking for system updates...
[2026-08-31 15:41:07,858.858 INFO    ] 200
[2026-08-31 15:41:07,861.861 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:41:07,912.912 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:41:07,915.915 INFO    ] No update needed
[2026-08-31 15:41:07,917.917 INFO    ] Checking for camera pi updates...
[2026-08-31 15:41:07,954.954 INFO    ] 200
[2026-08-31 15:41:07,957.957 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:41:07,997.997 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:41:08,052.052 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:41:08,055.055 INFO    ] No camera update needed
[2026-08-31 15:41:08,057.057 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:41:08,060.060 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:41:08,065.065 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:41:08,070.070 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:41:10,111.111 INFO    ] ================================================
[2026-08-31 15:41:10,126.126 INFO    ] Launching Daemon at Mon Aug 31 15:41:10 IST 2026
[2026-08-31 15:41:10,137.137 INFO    ] ================================================
[2026-08-31 15:41:10,769.769 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:41:10
[2026-08-31 15:41:11,390.390 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:41:11,634.634 INFO    ] Initializing speech engine...
[2026-08-31 15:41:11,643.643 INFO    ] 2026-08-31 15:41:11
[2026-08-31 15:41:11,916.916 INFO    ] 2026-08-31 15:41:11
[2026-08-31 15:41:11,951.951 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:41:12,195.195 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:41:12,217.217 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:41:12,454.454 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:41:12,482.482 INFO    ] time= 31/08/2026 15:41:12
[2026-08-31 15:41:12,500.500 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:41:12,507.507 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:41:12,636.636 INFO    ] No existing commands found in stream
[2026-08-31 15:41:17,650.650 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:41:17,653.653 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-08-31 15:41:18,639.639 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 15:41:18,641.641 INFO    ] Checking for system updates...
[2026-08-31 15:41:18,676.676 INFO    ] 200
[2026-08-31 15:41:18,679.679 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:41:18,730.730 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:41:18,733.733 INFO    ] No update needed
[2026-08-31 15:41:18,735.735 INFO    ] Checking for camera pi updates...
[2026-08-31 15:41:18,771.771 INFO    ] 200
[2026-08-31 15:41:18,774.774 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:41:18,814.814 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:41:18,893.893 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:41:18,895.895 INFO    ] No camera update needed
[2026-08-31 15:41:18,898.898 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:41:18,901.901 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:41:18,907.907 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:41:18,912.912 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:41:20,953.953 INFO    ] ================================================
[2026-08-31 15:41:20,969.969 INFO    ] Launching Daemon at Mon Aug 31 15:41:20 IST 2026
[2026-08-31 15:41:20,979.979 INFO    ] ================================================
[2026-08-31 15:41:21,566.566 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:41:21
[2026-08-31 15:41:22,152.152 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:41:22,409.409 INFO    ] Initializing speech engine...
[2026-08-31 15:41:22,415.415 INFO    ] 2026-08-31 15:41:22
[2026-08-31 15:41:22,704.704 INFO    ] 2026-08-31 15:41:22
[2026-08-31 15:41:22,741.741 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:41:22,969.969 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:41:23,023.023 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:41:23,174.174 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:41:23,206.206 INFO    ] time= 31/08/2026 15:41:23
[2026-08-31 15:41:23,261.261 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:41:23,318.318 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:41:23,447.447 INFO    ] No existing commands found in stream
[2026-08-31 15:41:28,469.469 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:41:28,472.472 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-08-31 15:41:29,611.611 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 15:41:29,613.613 INFO    ] Checking for system updates...
[2026-08-31 15:41:29,651.651 INFO    ] 200
[2026-08-31 15:41:29,653.653 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:41:29,709.709 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:41:29,712.712 INFO    ] No update needed
[2026-08-31 15:41:29,714.714 INFO    ] Checking for camera pi updates...
[2026-08-31 15:41:29,752.752 INFO    ] 200
[2026-08-31 15:41:29,755.755 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:41:29,795.795 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:41:29,883.883 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:41:29,885.885 INFO    ] No camera update needed
[2026-08-31 15:41:29,887.887 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:41:29,890.890 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:41:29,895.895 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:41:29,900.900 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:41:31,942.942 INFO    ] ================================================
[2026-08-31 15:41:31,958.958 INFO    ] Launching Daemon at Mon Aug 31 15:41:31 IST 2026
[2026-08-31 15:41:31,970.970 INFO    ] ================================================
[2026-08-31 15:41:32,569.569 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:41:32
[2026-08-31 15:41:33,188.188 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:41:33,437.437 INFO    ] Initializing speech engine...
[2026-08-31 15:41:33,452.452 INFO    ] 2026-08-31 15:41:33
[2026-08-31 15:41:33,721.721 INFO    ] 2026-08-31 15:41:33
[2026-08-31 15:41:33,756.756 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:41:34,013.013 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:41:34,022.022 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:41:34,159.159 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:41:34,224.224 INFO    ] time= 31/08/2026 15:41:34
[2026-08-31 15:41:34,278.278 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:41:34,296.296 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:41:34,441.441 INFO    ] No existing commands found in stream
[2026-08-31 15:41:39,456.456 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:41:39,458.458 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-08-31 15:41:42,801.801 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 15:41:42,804.804 INFO    ] Checking for system updates...
[2026-08-31 15:41:42,839.839 INFO    ] 200
[2026-08-31 15:41:42,842.842 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:41:42,902.902 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:41:42,904.904 INFO    ] No update needed
[2026-08-31 15:41:42,906.906 INFO    ] Checking for camera pi updates...
[2026-08-31 15:41:42,939.939 INFO    ] 200
[2026-08-31 15:41:42,942.942 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:41:42,987.987 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:41:43,093.093 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:41:43,095.095 INFO    ] No camera update needed
[2026-08-31 15:41:43,098.098 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:41:43,101.101 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:41:43,106.106 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:41:43,112.112 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:41:45,153.153 INFO    ] ================================================
[2026-08-31 15:41:45,168.168 INFO    ] Launching Daemon at Mon Aug 31 15:41:45 IST 2026
[2026-08-31 15:41:45,179.179 INFO    ] ================================================
[2026-08-31 15:41:45,803.803 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:41:45
[2026-08-31 15:41:46,432.432 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:41:46,702.702 INFO    ] Initializing speech engine...
[2026-08-31 15:41:46,711.711 INFO    ] 2026-08-31 15:41:46
[2026-08-31 15:41:46,961.961 INFO    ] 2026-08-31 15:41:46
[2026-08-31 15:41:46,996.996 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:41:47,258.258 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:41:47,263.263 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:41:47,502.502 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:41:47,525.525 INFO    ] time= 31/08/2026 15:41:47
[2026-08-31 15:41:47,531.531 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:41:47,547.547 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:41:47,682.682 INFO    ] No existing commands found in stream
[2026-08-31 15:41:52,694.694 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:41:52,696.696 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-08-31 15:41:56,760.760 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 15:41:56,762.762 INFO    ] Checking for system updates...
[2026-08-31 15:41:56,801.801 INFO    ] 200
[2026-08-31 15:41:56,804.804 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:41:56,861.861 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:41:56,863.863 INFO    ] No update needed
[2026-08-31 15:41:56,866.866 INFO    ] Checking for camera pi updates...
[2026-08-31 15:41:56,902.902 INFO    ] 200
[2026-08-31 15:41:56,905.905 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:41:56,953.953 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:41:57,041.041 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:41:57,043.043 INFO    ] No camera update needed
[2026-08-31 15:41:57,045.045 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:41:57,048.048 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:41:57,053.053 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:41:57,058.058 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:41:59,098.098 INFO    ] ================================================
[2026-08-31 15:41:59,113.113 INFO    ] Launching Daemon at Mon Aug 31 15:41:59 IST 2026
[2026-08-31 15:41:59,124.124 INFO    ] ================================================
[2026-08-31 15:41:59,689.689 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:41:59
[2026-08-31 15:42:00,270.270 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:42:00,537.537 INFO    ] Initializing speech engine...
[2026-08-31 15:42:00,545.545 INFO    ] 2026-08-31 15:42:00
[2026-08-31 15:42:00,791.791 INFO    ] 2026-08-31 15:42:00
[2026-08-31 15:42:00,825.825 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:42:01,356.356 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:42:01,383.383 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:42:01,571.571 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:42:01,597.597 INFO    ] time= 31/08/2026 15:42:01
[2026-08-31 15:42:01,646.646 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:42:01,695.695 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:42:01,826.826 INFO    ] No existing commands found in stream
[2026-08-31 15:42:06,837.837 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:42:06,841.841 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-08-31 15:42:09,489.489 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 15:42:09,492.492 INFO    ] Checking for system updates...
[2026-08-31 15:42:09,530.530 INFO    ] 200
[2026-08-31 15:42:09,533.533 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:42:09,594.594 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:42:09,597.597 INFO    ] No update needed
[2026-08-31 15:42:09,600.600 INFO    ] Checking for camera pi updates...
[2026-08-31 15:42:09,636.636 INFO    ] 200
[2026-08-31 15:42:09,639.639 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:42:09,688.688 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:42:09,773.773 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:42:09,776.776 INFO    ] No camera update needed
[2026-08-31 15:42:09,779.779 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:42:09,781.781 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:42:09,787.787 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:42:09,792.792 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:42:11,833.833 INFO    ] ================================================
[2026-08-31 15:42:11,852.852 INFO    ] Launching Daemon at Mon Aug 31 15:42:11 IST 2026
[2026-08-31 15:42:11,863.863 INFO    ] ================================================
[2026-08-31 15:42:12,439.439 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:42:12
[2026-08-31 15:42:13,033.033 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:42:13,313.313 INFO    ] Initializing speech engine...
[2026-08-31 15:42:13,320.320 INFO    ] 2026-08-31 15:42:13
[2026-08-31 15:42:13,567.567 INFO    ] 2026-08-31 15:42:13
[2026-08-31 15:42:13,630.630 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:42:13,858.858 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:42:13,862.862 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:42:14,086.086 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:42:14,122.122 INFO    ] time= 31/08/2026 15:42:14
[2026-08-31 15:42:14,137.137 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:42:14,146.146 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:42:14,275.275 INFO    ] No existing commands found in stream
[2026-08-31 15:42:19,287.287 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:42:19,290.290 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-08-31 15:42:23,715.715 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 15:42:23,718.718 INFO    ] Checking for system updates...
[2026-08-31 15:42:23,756.756 INFO    ] 200
[2026-08-31 15:42:23,759.759 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:42:23,812.812 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:42:23,814.814 INFO    ] No update needed
[2026-08-31 15:42:23,817.817 INFO    ] Checking for camera pi updates...
[2026-08-31 15:42:23,852.852 INFO    ] 200
[2026-08-31 15:42:23,854.854 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:42:23,897.897 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:42:24,077.077 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:42:24,080.080 INFO    ] No camera update needed
[2026-08-31 15:42:24,082.082 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:42:24,084.084 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:42:24,090.090 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:42:24,095.095 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:42:26,135.135 INFO    ] ================================================
[2026-08-31 15:42:26,150.150 INFO    ] Launching Daemon at Mon Aug 31 15:42:26 IST 2026
[2026-08-31 15:42:26,161.161 INFO    ] ================================================
[2026-08-31 15:42:26,743.743 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:42:26
[2026-08-31 15:42:27,341.341 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:42:27,594.594 INFO    ] Initializing speech engine...
[2026-08-31 15:42:27,617.617 INFO    ] 2026-08-31 15:42:27
[2026-08-31 15:42:27,871.871 INFO    ] 2026-08-31 15:42:27
[2026-08-31 15:42:27,908.908 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:42:28,079.079 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:42:28,102.102 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:42:28,299.299 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:42:28,315.315 INFO    ] time= 31/08/2026 15:42:28
[2026-08-31 15:42:28,375.375 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:42:28,432.432 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:42:28,566.566 INFO    ] No existing commands found in stream
[2026-08-31 15:42:33,592.592 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:42:33,595.595 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-08-31 15:42:36,006.006 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 15:42:36,009.009 INFO    ] Checking for system updates...
[2026-08-31 15:42:36,044.044 INFO    ] 200
[2026-08-31 15:42:36,046.046 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:42:36,104.104 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:42:36,107.107 INFO    ] No update needed
[2026-08-31 15:42:36,109.109 INFO    ] Checking for camera pi updates...
[2026-08-31 15:42:36,146.146 INFO    ] 200
[2026-08-31 15:42:36,149.149 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:42:36,189.189 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:42:36,268.268 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:42:36,270.270 INFO    ] No camera update needed
[2026-08-31 15:42:36,273.273 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:42:36,275.275 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:42:36,280.280 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:42:36,285.285 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:42:38,328.328 INFO    ] ================================================
[2026-08-31 15:42:38,344.344 INFO    ] Launching Daemon at Mon Aug 31 15:42:38 IST 2026
[2026-08-31 15:42:38,355.355 INFO    ] ================================================
[2026-08-31 15:42:38,920.920 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:42:38
[2026-08-31 15:42:39,502.502 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:42:39,771.771 INFO    ] Initializing speech engine...
[2026-08-31 15:42:39,780.780 INFO    ] 2026-08-31 15:42:39
[2026-08-31 15:42:40,024.024 INFO    ] 2026-08-31 15:42:40
[2026-08-31 15:42:40,059.059 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:42:40,255.255 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:42:40,314.314 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:42:40,453.453 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:42:40,528.528 INFO    ] time= 31/08/2026 15:42:40
[2026-08-31 15:42:40,580.580 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:42:40,586.586 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:42:40,742.742 INFO    ] No existing commands found in stream
[2026-08-31 15:42:45,773.773 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:42:45,776.776 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-08-31 15:42:48,855.855 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 15:42:48,857.857 INFO    ] Checking for system updates...
[2026-08-31 15:42:48,897.897 INFO    ] 200
[2026-08-31 15:42:48,899.899 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:42:48,958.958 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:42:48,960.960 INFO    ] No update needed
[2026-08-31 15:42:48,962.962 INFO    ] Checking for camera pi updates...
[2026-08-31 15:42:48,995.995 INFO    ] 200
[2026-08-31 15:42:48,998.998 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:42:49,042.042 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:42:49,128.128 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:42:49,130.130 INFO    ] No camera update needed
[2026-08-31 15:42:49,132.132 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:42:49,136.136 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:42:49,143.143 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:42:49,149.149 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:42:51,191.191 INFO    ] ================================================
[2026-08-31 15:42:51,207.207 INFO    ] Launching Daemon at Mon Aug 31 15:42:51 IST 2026
[2026-08-31 15:42:51,219.219 INFO    ] ================================================
[2026-08-31 15:42:51,866.866 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:42:51
[2026-08-31 15:42:52,535.535 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:42:52,835.835 INFO    ] Initializing speech engine...
[2026-08-31 15:42:52,849.849 INFO    ] 2026-08-31 15:42:52
[2026-08-31 15:42:53,129.129 INFO    ] 2026-08-31 15:42:53
[2026-08-31 15:42:53,174.174 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:42:53,456.456 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:42:53,464.464 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:42:53,662.662 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:42:53,678.678 INFO    ] time= 31/08/2026 15:42:53
[2026-08-31 15:42:53,687.687 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:42:53,714.714 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:42:53,821.821 INFO    ] No existing commands found in stream
[2026-08-31 15:42:58,846.846 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:42:58,849.849 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-08-31 15:43:00,528.528 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 15:43:00,531.531 INFO    ] Checking for system updates...
[2026-08-31 15:43:00,571.571 INFO    ] 200
[2026-08-31 15:43:00,574.574 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:43:00,633.633 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:43:00,636.636 INFO    ] No update needed
[2026-08-31 15:43:00,639.639 INFO    ] Checking for camera pi updates...
[2026-08-31 15:43:00,673.673 INFO    ] 200
[2026-08-31 15:43:00,676.676 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:43:00,717.717 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:43:00,769.769 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:43:00,772.772 INFO    ] No camera update needed
[2026-08-31 15:43:00,775.775 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:43:00,778.778 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:43:00,784.784 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:43:00,790.790 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:43:02,836.836 INFO    ] ================================================
[2026-08-31 15:43:02,854.854 INFO    ] Launching Daemon at Mon Aug 31 15:43:02 IST 2026
[2026-08-31 15:43:02,868.868 INFO    ] ================================================
[2026-08-31 15:43:03,553.553 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:43:03
[2026-08-31 15:43:04,161.161 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:43:04,432.432 INFO    ] Initializing speech engine...
[2026-08-31 15:43:04,438.438 INFO    ] 2026-08-31 15:43:04
[2026-08-31 15:43:04,684.684 INFO    ] 2026-08-31 15:43:04
[2026-08-31 15:43:04,718.718 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:43:04,926.926 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:43:04,978.978 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:43:05,117.117 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:43:05,182.182 INFO    ] time= 31/08/2026 15:43:05
[2026-08-31 15:43:05,245.245 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:43:05,251.251 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:43:05,375.375 INFO    ] No existing commands found in stream
[2026-08-31 15:43:10,402.402 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:43:10,405.405 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-08-31 15:43:11,395.395 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 15:43:11,398.398 INFO    ] Checking for system updates...
[2026-08-31 15:43:11,437.437 INFO    ] 200
[2026-08-31 15:43:11,440.440 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:43:11,498.498 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:43:11,500.500 INFO    ] No update needed
[2026-08-31 15:43:11,503.503 INFO    ] Checking for camera pi updates...
[2026-08-31 15:43:11,537.537 INFO    ] 200
[2026-08-31 15:43:11,539.539 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:43:11,584.584 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:43:11,661.661 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:43:11,664.664 INFO    ] No camera update needed
[2026-08-31 15:43:11,666.666 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:43:11,669.669 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:43:11,674.674 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:43:11,679.679 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:43:13,719.719 INFO    ] ================================================
[2026-08-31 15:43:13,733.733 INFO    ] Launching Daemon at Mon Aug 31 15:43:13 IST 2026
[2026-08-31 15:43:13,744.744 INFO    ] ================================================
[2026-08-31 15:43:14,316.316 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:43:14
[2026-08-31 15:43:14,904.904 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:43:15,163.163 INFO    ] Initializing speech engine...
[2026-08-31 15:43:15,182.182 INFO    ] 2026-08-31 15:43:15
[2026-08-31 15:43:15,433.433 INFO    ] 2026-08-31 15:43:15
[2026-08-31 15:43:15,468.468 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:43:15,666.666 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:43:15,705.705 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:43:15,934.934 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:43:15,998.998 INFO    ] time= 31/08/2026 15:43:15
[2026-08-31 15:43:16,004.004 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:43:16,022.022 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:43:16,139.139 INFO    ] No existing commands found in stream
[2026-08-31 15:43:21,164.164 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:43:21,167.167 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-08-31 15:43:25,081.081 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 15:43:25,083.083 INFO    ] Checking for system updates...
[2026-08-31 15:43:25,123.123 INFO    ] 200
[2026-08-31 15:43:25,125.125 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:43:25,177.177 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:43:25,180.180 INFO    ] No update needed
[2026-08-31 15:43:25,182.182 INFO    ] Checking for camera pi updates...
[2026-08-31 15:43:25,219.219 INFO    ] 200
[2026-08-31 15:43:25,222.222 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:43:25,263.263 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:43:25,359.359 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:43:25,362.362 INFO    ] No camera update needed
[2026-08-31 15:43:25,364.364 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:43:25,366.366 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:43:25,372.372 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:43:25,377.377 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:43:27,418.418 INFO    ] ================================================
[2026-08-31 15:43:27,433.433 INFO    ] Launching Daemon at Mon Aug 31 15:43:27 IST 2026
[2026-08-31 15:43:27,444.444 INFO    ] ================================================
[2026-08-31 15:43:28,011.011 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:43:28
[2026-08-31 15:43:28,594.594 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:43:28,853.853 INFO    ] Initializing speech engine...
[2026-08-31 15:43:28,872.872 INFO    ] 2026-08-31 15:43:28
[2026-08-31 15:43:29,122.122 INFO    ] 2026-08-31 15:43:29
[2026-08-31 15:43:29,157.157 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:43:29,358.358 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:43:29,417.417 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:43:29,652.652 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:43:29,687.687 INFO    ] time= 31/08/2026 15:43:29
[2026-08-31 15:43:29,693.693 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:43:29,709.709 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:43:29,866.866 INFO    ] No existing commands found in stream
[2026-08-31 15:43:34,891.891 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:43:34,894.894 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-08-31 15:43:37,382.382 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 15:43:37,384.384 INFO    ] Checking for system updates...
[2026-08-31 15:43:37,420.420 INFO    ] 200
[2026-08-31 15:43:37,422.422 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:43:37,475.475 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:43:37,478.478 INFO    ] No update needed
[2026-08-31 15:43:37,480.480 INFO    ] Checking for camera pi updates...
[2026-08-31 15:43:37,514.514 INFO    ] 200
[2026-08-31 15:43:37,516.516 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:43:37,556.556 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:43:37,644.644 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:43:37,646.646 INFO    ] No camera update needed
[2026-08-31 15:43:37,648.648 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:43:37,651.651 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:43:37,656.656 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:43:37,661.661 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:43:39,700.700 INFO    ] ================================================
[2026-08-31 15:43:39,714.714 INFO    ] Launching Daemon at Mon Aug 31 15:43:39 IST 2026
[2026-08-31 15:43:39,725.725 INFO    ] ================================================
[2026-08-31 15:43:40,289.289 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:43:40
[2026-08-31 15:43:40,871.871 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:43:41,139.139 INFO    ] Initializing speech engine...
[2026-08-31 15:43:41,148.148 INFO    ] 2026-08-31 15:43:41
[2026-08-31 15:43:41,392.392 INFO    ] 2026-08-31 15:43:41
[2026-08-31 15:43:41,427.427 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:43:41,598.598 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:43:41,610.610 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:43:41,755.755 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:43:41,759.759 INFO    ] time= 31/08/2026 15:43:41
[2026-08-31 15:43:41,765.765 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:43:41,811.811 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:43:41,955.955 INFO    ] No existing commands found in stream
[2026-08-31 15:43:46,966.966 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:43:46,969.969 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-08-31 15:43:47,795.795 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 15:43:47,798.798 INFO    ] Checking for system updates...
[2026-08-31 15:43:47,833.833 INFO    ] 200
[2026-08-31 15:43:47,835.835 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:43:47,898.898 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:43:47,900.900 INFO    ] No update needed
[2026-08-31 15:43:47,903.903 INFO    ] Checking for camera pi updates...
[2026-08-31 15:43:47,940.940 INFO    ] 200
[2026-08-31 15:43:47,943.943 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:43:47,984.984 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:43:48,065.065 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:43:48,067.067 INFO    ] No camera update needed
[2026-08-31 15:43:48,070.070 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:43:48,072.072 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:43:48,078.078 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:43:48,084.084 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:43:50,123.123 INFO    ] ================================================
[2026-08-31 15:43:50,138.138 INFO    ] Launching Daemon at Mon Aug 31 15:43:50 IST 2026
[2026-08-31 15:43:50,149.149 INFO    ] ================================================
[2026-08-31 15:43:50,815.815 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:43:50
[2026-08-31 15:43:51,472.472 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:43:51,745.745 INFO    ] Initializing speech engine...
[2026-08-31 15:43:51,753.753 INFO    ] 2026-08-31 15:43:51
[2026-08-31 15:43:52,022.022 INFO    ] 2026-08-31 15:43:52
[2026-08-31 15:43:52,065.065 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:43:52,310.310 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:43:52,315.315 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:43:52,544.544 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:43:52,551.551 INFO    ] time= 31/08/2026 15:43:52
[2026-08-31 15:43:52,570.570 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:43:52,586.586 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:43:52,713.713 INFO    ] No existing commands found in stream
[2026-08-31 15:43:57,743.743 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:43:57,746.746 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-08-31 15:44:00,058.058 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 15:44:00,060.060 INFO    ] Checking for system updates...
[2026-08-31 15:44:00,096.096 INFO    ] 200
[2026-08-31 15:44:00,098.098 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:44:00,165.165 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:44:00,168.168 INFO    ] No update needed
[2026-08-31 15:44:00,170.170 INFO    ] Checking for camera pi updates...
[2026-08-31 15:44:00,204.204 INFO    ] 200
[2026-08-31 15:44:00,206.206 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:44:00,251.251 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:44:00,338.338 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:44:00,340.340 INFO    ] No camera update needed
[2026-08-31 15:44:00,343.343 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:44:00,345.345 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:44:00,350.350 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:44:00,355.355 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:44:02,398.398 INFO    ] ================================================
[2026-08-31 15:44:02,417.417 INFO    ] Launching Daemon at Mon Aug 31 15:44:02 IST 2026
[2026-08-31 15:44:02,433.433 INFO    ] ================================================
[2026-08-31 15:44:03,056.056 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:44:03
[2026-08-31 15:44:03,716.716 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:44:03,987.987 INFO    ] Initializing speech engine...
[2026-08-31 15:44:04,007.007 INFO    ] 2026-08-31 15:44:03
[2026-08-31 15:44:04,258.258 INFO    ] 2026-08-31 15:44:04
[2026-08-31 15:44:04,294.294 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:44:04,491.491 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:44:04,529.529 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:44:04,637.637 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:44:04,644.644 INFO    ] time= 31/08/2026 15:44:04
[2026-08-31 15:44:04,692.692 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:44:04,718.718 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:44:04,858.858 INFO    ] No existing commands found in stream
[2026-08-31 15:44:09,869.869 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:44:09,872.872 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-08-31 15:44:11,816.816 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 15:44:11,819.819 INFO    ] Checking for system updates...
[2026-08-31 15:44:11,854.854 INFO    ] 200
[2026-08-31 15:44:11,857.857 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:44:11,909.909 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:44:11,911.911 INFO    ] No update needed
[2026-08-31 15:44:11,914.914 INFO    ] Checking for camera pi updates...
[2026-08-31 15:44:11,965.965 INFO    ] 200
[2026-08-31 15:44:11,969.969 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:44:12,021.021 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:44:12,105.105 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:44:12,108.108 INFO    ] No camera update needed
[2026-08-31 15:44:12,111.111 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:44:12,113.113 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:44:12,119.119 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:44:12,125.125 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:44:14,169.169 INFO    ] ================================================
[2026-08-31 15:44:14,184.184 INFO    ] Launching Daemon at Mon Aug 31 15:44:14 IST 2026
[2026-08-31 15:44:14,195.195 INFO    ] ================================================
[2026-08-31 15:44:14,829.829 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:44:14
[2026-08-31 15:44:15,484.484 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:44:15,783.783 INFO    ] Initializing speech engine...
[2026-08-31 15:44:15,792.792 INFO    ] 2026-08-31 15:44:15
[2026-08-31 15:44:16,068.068 INFO    ] 2026-08-31 15:44:16
[2026-08-31 15:44:16,119.119 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:44:16,354.354 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:44:16,360.360 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:44:16,622.622 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:44:16,639.639 INFO    ] time= 31/08/2026 15:44:16
[2026-08-31 15:44:16,650.650 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:44:16,677.677 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:44:16,786.786 INFO    ] No existing commands found in stream
[2026-08-31 15:44:21,808.808 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:44:21,811.811 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-08-31 15:44:24,154.154 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 15:44:24,157.157 INFO    ] Checking for system updates...
[2026-08-31 15:44:24,197.197 INFO    ] 200
[2026-08-31 15:44:24,200.200 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:44:24,256.256 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:44:24,259.259 INFO    ] No update needed
[2026-08-31 15:44:24,261.261 INFO    ] Checking for camera pi updates...
[2026-08-31 15:44:24,295.295 INFO    ] 200
[2026-08-31 15:44:24,297.297 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:44:24,341.341 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:44:24,438.438 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:44:24,440.440 INFO    ] No camera update needed
[2026-08-31 15:44:24,443.443 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:44:24,445.445 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:44:24,450.450 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:44:24,455.455 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:44:26,495.495 INFO    ] ================================================
[2026-08-31 15:44:26,510.510 INFO    ] Launching Daemon at Mon Aug 31 15:44:26 IST 2026
[2026-08-31 15:44:26,521.521 INFO    ] ================================================
[2026-08-31 15:44:27,097.097 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:44:27
[2026-08-31 15:44:27,691.691 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:44:27,950.950 INFO    ] Initializing speech engine...
[2026-08-31 15:44:27,966.966 INFO    ] 2026-08-31 15:44:27
[2026-08-31 15:44:28,220.220 INFO    ] 2026-08-31 15:44:28
[2026-08-31 15:44:28,286.286 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:44:28,528.528 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:44:28,538.538 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:44:28,687.687 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:44:28,726.726 INFO    ] time= 31/08/2026 15:44:28
[2026-08-31 15:44:28,782.782 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:44:28,829.829 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:44:28,968.968 INFO    ] No existing commands found in stream
[2026-08-31 15:44:33,989.989 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:44:33,992.992 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-08-31 15:44:37,798.798 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 15:44:37,801.801 INFO    ] Checking for system updates...
[2026-08-31 15:44:37,838.838 INFO    ] 200
[2026-08-31 15:44:37,841.841 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:44:37,895.895 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:44:37,898.898 INFO    ] No update needed
[2026-08-31 15:44:37,900.900 INFO    ] Checking for camera pi updates...
[2026-08-31 15:44:37,936.936 INFO    ] 200
[2026-08-31 15:44:37,939.939 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:44:37,979.979 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:44:38,075.075 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:44:38,078.078 INFO    ] No camera update needed
[2026-08-31 15:44:38,080.080 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:44:38,082.082 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:44:38,088.088 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:44:38,093.093 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:44:40,133.133 INFO    ] ================================================
[2026-08-31 15:44:40,148.148 INFO    ] Launching Daemon at Mon Aug 31 15:44:40 IST 2026
[2026-08-31 15:44:40,159.159 INFO    ] ================================================
[2026-08-31 15:44:40,738.738 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:44:40
[2026-08-31 15:44:41,332.332 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:44:41,605.605 INFO    ] Initializing speech engine...
[2026-08-31 15:44:41,612.612 INFO    ] 2026-08-31 15:44:41
[2026-08-31 15:44:41,875.875 INFO    ] 2026-08-31 15:44:41
[2026-08-31 15:44:41,928.928 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:44:42,210.210 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:44:42,218.218 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:44:42,411.411 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:44:42,418.418 INFO    ] time= 31/08/2026 15:44:42
[2026-08-31 15:44:42,437.437 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:44:42,453.453 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:44:42,595.595 INFO    ] No existing commands found in stream
[2026-08-31 15:44:47,625.625 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:44:47,628.628 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-08-31 15:44:49,716.716 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 15:44:49,718.718 INFO    ] Checking for system updates...
[2026-08-31 15:44:49,757.757 INFO    ] 200
[2026-08-31 15:44:49,759.759 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:44:49,812.812 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:44:49,814.814 INFO    ] No update needed
[2026-08-31 15:44:49,817.817 INFO    ] Checking for camera pi updates...
[2026-08-31 15:44:49,851.851 INFO    ] 200
[2026-08-31 15:44:49,854.854 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:44:49,894.894 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:44:49,974.974 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:44:49,977.977 INFO    ] No camera update needed
[2026-08-31 15:44:49,980.980 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:44:49,982.982 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:44:49,988.988 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:44:49,994.994 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:44:52,034.034 INFO    ] ================================================
[2026-08-31 15:44:52,049.049 INFO    ] Launching Daemon at Mon Aug 31 15:44:52 IST 2026
[2026-08-31 15:44:52,060.060 INFO    ] ================================================
[2026-08-31 15:44:52,638.638 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:44:52
[2026-08-31 15:44:53,234.234 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:44:53,510.510 INFO    ] Initializing speech engine...
[2026-08-31 15:44:53,520.520 INFO    ] 2026-08-31 15:44:53
[2026-08-31 15:44:53,776.776 INFO    ] 2026-08-31 15:44:53
[2026-08-31 15:44:53,827.827 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:44:54,054.054 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:44:54,060.060 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:44:54,193.193 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:44:54,253.253 INFO    ] time= 31/08/2026 15:44:54
[2026-08-31 15:44:54,313.313 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:44:54,328.328 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:44:54,468.468 INFO    ] No existing commands found in stream
[2026-08-31 15:44:59,484.484 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:44:59,487.487 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-08-31 15:45:03,024.024 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 15:45:03,027.027 INFO    ] Checking for system updates...
[2026-08-31 15:45:03,071.071 INFO    ] 200
[2026-08-31 15:45:03,074.074 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:45:03,141.141 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:45:03,144.144 INFO    ] No update needed
[2026-08-31 15:45:03,146.146 INFO    ] Checking for camera pi updates...
[2026-08-31 15:45:03,180.180 INFO    ] 200
[2026-08-31 15:45:03,183.183 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:45:03,230.230 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:45:03,312.312 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:45:03,315.315 INFO    ] No camera update needed
[2026-08-31 15:45:03,317.317 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:45:03,320.320 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:45:03,325.325 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:45:03,330.330 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:45:05,370.370 INFO    ] ================================================
[2026-08-31 15:45:05,386.386 INFO    ] Launching Daemon at Mon Aug 31 15:45:05 IST 2026
[2026-08-31 15:45:05,397.397 INFO    ] ================================================
[2026-08-31 15:45:06,038.038 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:45:06
[2026-08-31 15:45:06,719.719 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:45:07,017.017 INFO    ] Initializing speech engine...
[2026-08-31 15:45:07,025.025 INFO    ] 2026-08-31 15:45:07
[2026-08-31 15:45:07,296.296 INFO    ] 2026-08-31 15:45:07
[2026-08-31 15:45:07,352.352 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:45:07,567.567 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:45:07,593.593 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:45:07,735.735 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:45:07,780.780 INFO    ] time= 31/08/2026 15:45:07
[2026-08-31 15:45:07,846.846 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:45:07,867.867 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:45:08,016.016 INFO    ] No existing commands found in stream
[2026-08-31 15:45:13,035.035 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:45:13,038.038 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-08-31 15:45:16,259.259 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 15:45:16,262.262 INFO    ] Checking for system updates...
[2026-08-31 15:45:16,299.299 INFO    ] 200
[2026-08-31 15:45:16,302.302 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:45:16,355.355 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:45:16,358.358 INFO    ] No update needed
[2026-08-31 15:45:16,361.361 INFO    ] Checking for camera pi updates...
[2026-08-31 15:45:16,399.399 INFO    ] 200
[2026-08-31 15:45:16,401.401 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:45:16,447.447 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:45:16,545.545 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:45:16,548.548 INFO    ] No camera update needed
[2026-08-31 15:45:16,551.551 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:45:16,554.554 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:45:16,560.560 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:45:16,565.565 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:45:18,614.614 INFO    ] ================================================
[2026-08-31 15:45:18,632.632 INFO    ] Launching Daemon at Mon Aug 31 15:45:18 IST 2026
[2026-08-31 15:45:18,645.645 INFO    ] ================================================
[2026-08-31 15:45:19,260.260 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:45:19
[2026-08-31 15:45:19,908.908 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:45:20,194.194 INFO    ] Initializing speech engine...
[2026-08-31 15:45:20,202.202 INFO    ] 2026-08-31 15:45:20
[2026-08-31 15:45:20,464.464 INFO    ] 2026-08-31 15:45:20
[2026-08-31 15:45:20,524.524 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:45:20,772.772 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:45:20,779.779 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:45:20,933.933 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:45:20,993.993 INFO    ] time= 31/08/2026 15:45:20
[2026-08-31 15:45:21,040.040 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:45:21,047.047 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:45:21,173.173 INFO    ] No existing commands found in stream
[2026-08-31 15:45:26,203.203 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:45:26,206.206 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-08-31 15:45:29,861.861 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 15:45:29,864.864 INFO    ] Checking for system updates...
[2026-08-31 15:45:29,901.901 INFO    ] 200
[2026-08-31 15:45:29,904.904 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:45:29,959.959 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:45:29,962.962 INFO    ] No update needed
[2026-08-31 15:45:29,964.964 INFO    ] Checking for camera pi updates...
[2026-08-31 15:45:30,003.003 INFO    ] 200
[2026-08-31 15:45:30,006.006 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:45:30,052.052 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:45:30,151.151 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:45:30,153.153 INFO    ] No camera update needed
[2026-08-31 15:45:30,156.156 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:45:30,158.158 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:45:30,163.163 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:45:30,168.168 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:45:32,210.210 INFO    ] ================================================
[2026-08-31 15:45:32,226.226 INFO    ] Launching Daemon at Mon Aug 31 15:45:32 IST 2026
[2026-08-31 15:45:32,237.237 INFO    ] ================================================
[2026-08-31 15:45:32,830.830 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:45:32
[2026-08-31 15:45:33,429.429 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:45:33,685.685 INFO    ] Initializing speech engine...
[2026-08-31 15:45:33,693.693 INFO    ] 2026-08-31 15:45:33
[2026-08-31 15:45:33,970.970 INFO    ] 2026-08-31 15:45:33
[2026-08-31 15:45:34,005.005 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:45:34,263.263 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:45:34,272.272 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:45:34,469.469 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:45:34,529.529 INFO    ] time= 31/08/2026 15:45:34
[2026-08-31 15:45:34,541.541 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:45:34,559.559 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:45:34,681.681 INFO    ] No existing commands found in stream
[2026-08-31 15:45:39,702.702 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:45:39,705.705 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-08-31 15:45:42,369.369 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 15:45:42,372.372 INFO    ] Checking for system updates...
[2026-08-31 15:45:42,408.408 INFO    ] 200
[2026-08-31 15:45:42,411.411 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:45:42,470.470 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:45:42,473.473 INFO    ] No update needed
[2026-08-31 15:45:42,475.475 INFO    ] Checking for camera pi updates...
[2026-08-31 15:45:42,512.512 INFO    ] 200
[2026-08-31 15:45:42,514.514 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:45:42,555.555 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:45:42,636.636 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:45:42,638.638 INFO    ] No camera update needed
[2026-08-31 15:45:42,641.641 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:45:42,643.643 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:45:42,648.648 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:45:42,654.654 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:45:44,694.694 INFO    ] ================================================
[2026-08-31 15:45:44,709.709 INFO    ] Launching Daemon at Mon Aug 31 15:45:44 IST 2026
[2026-08-31 15:45:44,719.719 INFO    ] ================================================
[2026-08-31 15:45:45,300.300 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:45:45
[2026-08-31 15:45:45,896.896 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:45:46,172.172 INFO    ] Initializing speech engine...
[2026-08-31 15:45:46,181.181 INFO    ] 2026-08-31 15:45:46
[2026-08-31 15:45:46,440.440 INFO    ] 2026-08-31 15:45:46
[2026-08-31 15:45:46,495.495 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:45:46,843.843 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:45:46,855.855 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:45:47,028.028 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:45:47,036.036 INFO    ] time= 31/08/2026 15:45:47
[2026-08-31 15:45:47,092.092 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:45:47,134.134 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:45:47,240.240 INFO    ] No existing commands found in stream
[2026-08-31 15:45:52,255.255 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:45:52,258.258 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-08-31 15:45:55,652.652 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 15:45:55,655.655 INFO    ] Checking for system updates...
[2026-08-31 15:45:55,697.697 INFO    ] 200
[2026-08-31 15:45:55,700.700 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:45:55,767.767 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:45:55,770.770 INFO    ] No update needed
[2026-08-31 15:45:55,773.773 INFO    ] Checking for camera pi updates...
[2026-08-31 15:45:55,808.808 INFO    ] 200
[2026-08-31 15:45:55,811.811 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:45:55,859.859 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:45:55,952.952 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:45:55,954.954 INFO    ] No camera update needed
[2026-08-31 15:45:55,957.957 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:45:55,959.959 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:45:55,964.964 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:45:55,969.969 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:45:58,011.011 INFO    ] ================================================
[2026-08-31 15:45:58,031.031 INFO    ] Launching Daemon at Mon Aug 31 15:45:58 IST 2026
[2026-08-31 15:45:58,042.042 INFO    ] ================================================
[2026-08-31 15:45:58,721.721 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:45:58
[2026-08-31 15:45:59,324.324 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:45:59,574.574 INFO    ] Initializing speech engine...
[2026-08-31 15:45:59,597.597 INFO    ] 2026-08-31 15:45:59
[2026-08-31 15:45:59,850.850 INFO    ] 2026-08-31 15:45:59
[2026-08-31 15:45:59,891.891 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:46:00,136.136 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:46:00,145.145 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:46:00,369.369 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:46:00,404.404 INFO    ] time= 31/08/2026 15:46:00
[2026-08-31 15:46:00,410.410 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:46:00,428.428 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:46:00,559.559 INFO    ] No existing commands found in stream
[2026-08-31 15:46:05,578.578 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:46:05,581.581 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-08-31 15:46:06,679.679 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 15:46:06,681.681 INFO    ] Checking for system updates...
[2026-08-31 15:46:06,718.718 INFO    ] 200
[2026-08-31 15:46:06,721.721 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:46:06,775.775 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:46:06,778.778 INFO    ] No update needed
[2026-08-31 15:46:06,781.781 INFO    ] Checking for camera pi updates...
[2026-08-31 15:46:06,820.820 INFO    ] 200
[2026-08-31 15:46:06,823.823 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:46:06,870.870 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:46:06,970.970 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:46:06,973.973 INFO    ] No camera update needed
[2026-08-31 15:46:06,976.976 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:46:06,979.979 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:46:06,985.985 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:46:06,991.991 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:46:09,032.032 INFO    ] ================================================
[2026-08-31 15:46:09,047.047 INFO    ] Launching Daemon at Mon Aug 31 15:46:09 IST 2026
[2026-08-31 15:46:09,057.057 INFO    ] ================================================
[2026-08-31 15:46:09,629.629 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:46:09
[2026-08-31 15:46:10,220.220 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:46:10,467.467 INFO    ] Initializing speech engine...
[2026-08-31 15:46:10,475.475 INFO    ] 2026-08-31 15:46:10
[2026-08-31 15:46:10,752.752 INFO    ] 2026-08-31 15:46:10
[2026-08-31 15:46:10,787.787 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:46:10,989.989 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:46:11,039.039 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:46:11,192.192 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:46:11,238.238 INFO    ] time= 31/08/2026 15:46:11
[2026-08-31 15:46:11,297.297 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:46:11,328.328 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:46:11,462.462 INFO    ] No existing commands found in stream
[2026-08-31 15:46:16,484.484 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:46:16,487.487 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-08-31 15:46:20,593.593 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 15:46:20,596.596 INFO    ] Checking for system updates...
[2026-08-31 15:46:20,632.632 INFO    ] 200
[2026-08-31 15:46:20,635.635 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:46:20,687.687 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:46:20,689.689 INFO    ] No update needed
[2026-08-31 15:46:20,692.692 INFO    ] Checking for camera pi updates...
[2026-08-31 15:46:20,729.729 INFO    ] 200
[2026-08-31 15:46:20,732.732 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:46:20,772.772 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:46:20,865.865 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:46:20,868.868 INFO    ] No camera update needed
[2026-08-31 15:46:20,871.871 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:46:20,873.873 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:46:20,878.878 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:46:20,883.883 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:46:22,925.925 INFO    ] ================================================
[2026-08-31 15:46:22,940.940 INFO    ] Launching Daemon at Mon Aug 31 15:46:22 IST 2026
[2026-08-31 15:46:22,951.951 INFO    ] ================================================
[2026-08-31 15:46:23,529.529 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:46:23
[2026-08-31 15:46:24,129.129 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:46:24,390.390 INFO    ] Initializing speech engine...
[2026-08-31 15:46:24,397.397 INFO    ] 2026-08-31 15:46:24
[2026-08-31 15:46:24,700.700 INFO    ] 2026-08-31 15:46:24
[2026-08-31 15:46:24,735.735 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:46:24,938.938 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:46:24,954.954 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:46:25,119.119 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:46:25,129.129 INFO    ] time= 31/08/2026 15:46:25
[2026-08-31 15:46:25,137.137 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:46:25,199.199 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:46:25,301.301 INFO    ] No existing commands found in stream
[2026-08-31 15:46:30,326.326 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:46:30,329.329 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-08-31 15:46:32,407.407 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 15:46:32,410.410 INFO    ] Checking for system updates...
[2026-08-31 15:46:32,456.456 INFO    ] 200
[2026-08-31 15:46:32,460.460 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:46:32,539.539 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:46:32,543.543 INFO    ] No update needed
[2026-08-31 15:46:32,546.546 INFO    ] Checking for camera pi updates...
[2026-08-31 15:46:32,583.583 INFO    ] 200
[2026-08-31 15:46:32,586.586 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:46:32,631.631 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:46:32,691.691 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:46:32,694.694 INFO    ] No camera update needed
[2026-08-31 15:46:32,698.698 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:46:32,702.702 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:46:32,710.710 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:46:32,718.718 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:46:34,759.759 INFO    ] ================================================
[2026-08-31 15:46:34,775.775 INFO    ] Launching Daemon at Mon Aug 31 15:46:34 IST 2026
[2026-08-31 15:46:34,785.785 INFO    ] ================================================
[2026-08-31 15:46:35,453.453 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:46:35
[2026-08-31 15:46:36,141.141 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:46:36,451.451 INFO    ] Initializing speech engine...
[2026-08-31 15:46:36,466.466 INFO    ] 2026-08-31 15:46:36
[2026-08-31 15:46:36,784.784 INFO    ] 2026-08-31 15:46:36
[2026-08-31 15:46:36,867.867 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:46:37,083.083 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:46:37,089.089 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:46:37,286.286 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:46:37,294.294 INFO    ] time= 31/08/2026 15:46:37
[2026-08-31 15:46:37,316.316 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:46:37,343.343 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:46:37,450.450 INFO    ] No existing commands found in stream
[2026-08-31 15:46:42,484.484 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:46:42,488.488 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-08-31 15:46:47,005.005 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 15:46:47,008.008 INFO    ] Checking for system updates...
[2026-08-31 15:46:47,045.045 INFO    ] 200
[2026-08-31 15:46:47,048.048 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:46:47,101.101 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:46:47,104.104 INFO    ] No update needed
[2026-08-31 15:46:47,107.107 INFO    ] Checking for camera pi updates...
[2026-08-31 15:46:47,143.143 INFO    ] 200
[2026-08-31 15:46:47,145.145 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:46:47,193.193 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:46:47,341.341 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:46:47,344.344 INFO    ] No camera update needed
[2026-08-31 15:46:47,346.346 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:46:47,348.348 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:46:47,354.354 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:46:47,359.359 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:46:49,400.400 INFO    ] ================================================
[2026-08-31 15:46:49,415.415 INFO    ] Launching Daemon at Mon Aug 31 15:46:49 IST 2026
[2026-08-31 15:46:49,426.426 INFO    ] ================================================
[2026-08-31 15:46:50,012.012 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:46:50
[2026-08-31 15:46:50,619.619 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:46:50,889.889 INFO    ] Initializing speech engine...
[2026-08-31 15:46:50,915.915 INFO    ] 2026-08-31 15:46:50
[2026-08-31 15:46:51,194.194 INFO    ] 2026-08-31 15:46:51
[2026-08-31 15:46:51,233.233 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:46:51,462.462 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:46:51,470.470 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:46:51,680.680 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:46:51,702.702 INFO    ] time= 31/08/2026 15:46:51
[2026-08-31 15:46:51,756.756 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:46:51,806.806 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:46:51,917.917 INFO    ] No existing commands found in stream
[2026-08-31 15:46:56,930.930 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:46:56,933.933 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-08-31 15:46:57,766.766 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 15:46:57,769.769 INFO    ] Checking for system updates...
[2026-08-31 15:46:57,810.810 INFO    ] 200
[2026-08-31 15:46:57,813.813 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:46:57,868.868 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:46:57,871.871 INFO    ] No update needed
[2026-08-31 15:46:57,874.874 INFO    ] Checking for camera pi updates...
[2026-08-31 15:46:57,909.909 INFO    ] 200
[2026-08-31 15:46:57,912.912 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:46:57,959.959 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:46:58,042.042 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:46:58,044.044 INFO    ] No camera update needed
[2026-08-31 15:46:58,047.047 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:46:58,049.049 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:46:58,055.055 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:46:58,060.060 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:47:00,101.101 INFO    ] ================================================
[2026-08-31 15:47:00,116.116 INFO    ] Launching Daemon at Mon Aug 31 15:47:00 IST 2026
[2026-08-31 15:47:00,128.128 INFO    ] ================================================
[2026-08-31 15:47:00,697.697 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:47:00
[2026-08-31 15:47:01,286.286 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:47:01,781.781 INFO    ] Initializing speech engine...
[2026-08-31 15:47:01,785.785 INFO    ] 2026-08-31 15:47:01
[2026-08-31 15:47:02,262.262 INFO    ] 2026-08-31 15:47:02
[2026-08-31 15:47:02,295.295 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:47:02,486.486 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:47:02,492.492 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:47:02,660.660 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:47:02,711.711 INFO    ] time= 31/08/2026 15:47:02
[2026-08-31 15:47:02,772.772 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:47:02,832.832 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:47:02,928.928 INFO    ] No existing commands found in stream
[2026-08-31 15:47:07,943.943 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:47:07,945.945 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-08-31 15:47:11,279.279 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 15:47:11,281.281 INFO    ] Checking for system updates...
[2026-08-31 15:47:11,317.317 INFO    ] 200
[2026-08-31 15:47:11,319.319 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:47:11,383.383 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:47:11,385.385 INFO    ] No update needed
[2026-08-31 15:47:11,388.388 INFO    ] Checking for camera pi updates...
[2026-08-31 15:47:11,422.422 INFO    ] 200
[2026-08-31 15:47:11,424.424 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:47:11,465.465 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:47:11,564.564 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:47:11,567.567 INFO    ] No camera update needed
[2026-08-31 15:47:11,569.569 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:47:11,572.572 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:47:11,577.577 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:47:11,582.582 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:47:13,623.623 INFO    ] ================================================
[2026-08-31 15:47:13,639.639 INFO    ] Launching Daemon at Mon Aug 31 15:47:13 IST 2026
[2026-08-31 15:47:13,650.650 INFO    ] ================================================
[2026-08-31 15:47:14,224.224 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:47:14
[2026-08-31 15:47:14,815.815 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:47:15,073.073 INFO    ] Initializing speech engine...
[2026-08-31 15:47:15,082.082 INFO    ] 2026-08-31 15:47:15
[2026-08-31 15:47:15,378.378 INFO    ] 2026-08-31 15:47:15
[2026-08-31 15:47:15,415.415 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:47:15,615.615 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:47:15,632.632 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:47:15,796.796 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:47:15,805.805 INFO    ] time= 31/08/2026 15:47:15
[2026-08-31 15:47:15,812.812 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:47:15,844.844 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:47:16,010.010 INFO    ] No existing commands found in stream
[2026-08-31 15:47:21,035.035 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:47:21,038.038 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-08-31 15:47:24,245.245 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 15:47:24,248.248 INFO    ] Checking for system updates...
[2026-08-31 15:47:24,283.283 INFO    ] 200
[2026-08-31 15:47:24,285.285 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:47:24,337.337 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:47:24,339.339 INFO    ] No update needed
[2026-08-31 15:47:24,342.342 INFO    ] Checking for camera pi updates...
[2026-08-31 15:47:24,379.379 INFO    ] 200
[2026-08-31 15:47:24,382.382 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:47:24,428.428 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:47:24,511.511 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:47:24,513.513 INFO    ] No camera update needed
[2026-08-31 15:47:24,516.516 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:47:24,518.518 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:47:24,523.523 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:47:24,529.529 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:47:26,571.571 INFO    ] ================================================
[2026-08-31 15:47:26,587.587 INFO    ] Launching Daemon at Mon Aug 31 15:47:26 IST 2026
[2026-08-31 15:47:26,598.598 INFO    ] ================================================
[2026-08-31 15:47:27,181.181 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:47:27
[2026-08-31 15:47:27,777.777 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:47:28,051.051 INFO    ] Initializing speech engine...
[2026-08-31 15:47:28,060.060 INFO    ] 2026-08-31 15:47:28
[2026-08-31 15:47:28,322.322 INFO    ] 2026-08-31 15:47:28
[2026-08-31 15:47:28,375.375 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:47:28,627.627 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:47:28,645.645 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:47:28,842.842 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:47:28,868.868 INFO    ] time= 31/08/2026 15:47:28
[2026-08-31 15:47:28,883.883 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:47:28,893.893 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:47:29,022.022 INFO    ] No existing commands found in stream
[2026-08-31 15:47:34,044.044 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:47:34,047.047 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-08-31 15:47:36,020.020 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 15:47:36,022.022 INFO    ] Checking for system updates...
[2026-08-31 15:47:36,058.058 INFO    ] 200
[2026-08-31 15:47:36,061.061 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:47:36,114.114 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:47:36,116.116 INFO    ] No update needed
[2026-08-31 15:47:36,119.119 INFO    ] Checking for camera pi updates...
[2026-08-31 15:47:36,156.156 INFO    ] 200
[2026-08-31 15:47:36,159.159 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:47:36,199.199 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:47:36,292.292 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:47:36,295.295 INFO    ] No camera update needed
[2026-08-31 15:47:36,297.297 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:47:36,299.299 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:47:36,304.304 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:47:36,309.309 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:47:38,350.350 INFO    ] ================================================
[2026-08-31 15:47:38,366.366 INFO    ] Launching Daemon at Mon Aug 31 15:47:38 IST 2026
[2026-08-31 15:47:38,377.377 INFO    ] ================================================
[2026-08-31 15:47:38,984.984 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:47:38
[2026-08-31 15:47:39,570.570 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:47:39,817.817 INFO    ] Initializing speech engine...
[2026-08-31 15:47:39,832.832 INFO    ] 2026-08-31 15:47:39
[2026-08-31 15:47:40,096.096 INFO    ] 2026-08-31 15:47:40
[2026-08-31 15:47:40,133.133 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:47:40,331.331 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:47:40,360.360 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:47:40,536.536 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:47:40,579.579 INFO    ] time= 31/08/2026 15:47:40
[2026-08-31 15:47:40,628.628 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:47:40,673.673 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:47:40,798.798 INFO    ] No existing commands found in stream
[2026-08-31 15:47:45,823.823 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:47:45,826.826 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-08-31 15:47:48,100.100 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 15:47:48,103.103 INFO    ] Checking for system updates...
[2026-08-31 15:47:48,138.138 INFO    ] 200
[2026-08-31 15:47:48,140.140 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:47:48,192.192 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:47:48,195.195 INFO    ] No update needed
[2026-08-31 15:47:48,197.197 INFO    ] Checking for camera pi updates...
[2026-08-31 15:47:48,231.231 INFO    ] 200
[2026-08-31 15:47:48,233.233 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:47:48,275.275 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:47:48,364.364 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:47:48,366.366 INFO    ] No camera update needed
[2026-08-31 15:47:48,369.369 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:47:48,371.371 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:47:48,376.376 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:47:48,381.381 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:47:50,422.422 INFO    ] ================================================
[2026-08-31 15:47:50,438.438 INFO    ] Launching Daemon at Mon Aug 31 15:47:50 IST 2026
[2026-08-31 15:47:50,448.448 INFO    ] ================================================
[2026-08-31 15:47:51,017.017 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:47:51
[2026-08-31 15:47:51,600.600 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:47:51,845.845 INFO    ] Initializing speech engine...
[2026-08-31 15:47:51,866.866 INFO    ] 2026-08-31 15:47:51
[2026-08-31 15:47:52,123.123 INFO    ] 2026-08-31 15:47:52
[2026-08-31 15:47:52,157.157 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:47:52,354.354 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:47:52,412.412 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:47:52,553.553 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:47:52,624.624 INFO    ] time= 31/08/2026 15:47:52
[2026-08-31 15:47:52,681.681 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:47:52,688.688 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:47:52,834.834 INFO    ] No existing commands found in stream
[2026-08-31 15:47:57,848.848 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:47:57,851.851 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-08-31 15:47:59,883.883 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 15:47:59,886.886 INFO    ] Checking for system updates...
[2026-08-31 15:47:59,922.922 INFO    ] 200
[2026-08-31 15:47:59,924.924 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:47:59,983.983 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:47:59,986.986 INFO    ] No update needed
[2026-08-31 15:47:59,988.988 INFO    ] Checking for camera pi updates...
[2026-08-31 15:48:00,026.026 INFO    ] 200
[2026-08-31 15:48:00,028.028 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:48:00,068.068 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:48:00,173.173 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:48:00,175.175 INFO    ] No camera update needed
[2026-08-31 15:48:00,178.178 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:48:00,180.180 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:48:00,185.185 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:48:00,190.190 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:48:02,234.234 INFO    ] ================================================
[2026-08-31 15:48:02,253.253 INFO    ] Launching Daemon at Mon Aug 31 15:48:02 IST 2026
[2026-08-31 15:48:02,268.268 INFO    ] ================================================
[2026-08-31 15:48:02,995.995 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:48:02
[2026-08-31 15:48:03,662.662 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:48:03,957.957 INFO    ] Initializing speech engine...
[2026-08-31 15:48:03,966.966 INFO    ] 2026-08-31 15:48:03
[2026-08-31 15:48:04,235.235 INFO    ] 2026-08-31 15:48:04
[2026-08-31 15:48:04,290.290 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:48:04,516.516 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:48:04,521.521 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:48:04,726.726 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:48:04,777.777 INFO    ] time= 31/08/2026 15:48:04
[2026-08-31 15:48:04,783.783 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:48:04,803.803 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:48:04,910.910 INFO    ] No existing commands found in stream
[2026-08-31 15:48:09,938.938 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:48:09,940.940 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-08-31 15:48:11,689.689 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 15:48:11,692.692 INFO    ] Checking for system updates...
[2026-08-31 15:48:11,732.732 INFO    ] 200
[2026-08-31 15:48:11,734.734 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:48:11,789.789 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:48:11,791.791 INFO    ] No update needed
[2026-08-31 15:48:11,794.794 INFO    ] Checking for camera pi updates...
[2026-08-31 15:48:11,831.831 INFO    ] 200
[2026-08-31 15:48:11,834.834 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:48:11,874.874 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:48:11,960.960 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:48:11,963.963 INFO    ] No camera update needed
[2026-08-31 15:48:11,965.965 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:48:11,968.968 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:48:11,974.974 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:48:11,980.980 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:48:14,022.022 INFO    ] ================================================
[2026-08-31 15:48:14,038.038 INFO    ] Launching Daemon at Mon Aug 31 15:48:14 IST 2026
[2026-08-31 15:48:14,049.049 INFO    ] ================================================
[2026-08-31 15:48:14,620.620 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:48:14
[2026-08-31 15:48:15,209.209 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:48:15,461.461 INFO    ] Initializing speech engine...
[2026-08-31 15:48:15,470.470 INFO    ] 2026-08-31 15:48:15
[2026-08-31 15:48:15,760.760 INFO    ] 2026-08-31 15:48:15
[2026-08-31 15:48:15,795.795 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:48:16,011.011 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:48:16,019.019 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:48:16,233.233 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:48:16,240.240 INFO    ] time= 31/08/2026 15:48:16
[2026-08-31 15:48:16,304.304 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:48:16,369.369 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:48:16,532.532 INFO    ] No existing commands found in stream
[2026-08-31 15:48:21,553.553 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:48:21,556.556 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-08-31 15:48:25,972.972 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 15:48:25,975.975 INFO    ] Checking for system updates...
[2026-08-31 15:48:26,010.010 INFO    ] 200
[2026-08-31 15:48:26,013.013 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:48:26,064.064 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:48:26,067.067 INFO    ] No update needed
[2026-08-31 15:48:26,069.069 INFO    ] Checking for camera pi updates...
[2026-08-31 15:48:26,102.102 INFO    ] 200
[2026-08-31 15:48:26,105.105 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:48:26,153.153 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:48:26,238.238 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:48:26,241.241 INFO    ] No camera update needed
[2026-08-31 15:48:26,243.243 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:48:26,245.245 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:48:26,251.251 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:48:26,255.255 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:48:28,296.296 INFO    ] ================================================
[2026-08-31 15:48:28,312.312 INFO    ] Launching Daemon at Mon Aug 31 15:48:28 IST 2026
[2026-08-31 15:48:28,323.323 INFO    ] ================================================
[2026-08-31 15:48:28,902.902 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:48:28
[2026-08-31 15:48:29,500.500 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:48:29,757.757 INFO    ] Initializing speech engine...
[2026-08-31 15:48:29,772.772 INFO    ] 2026-08-31 15:48:29
[2026-08-31 15:48:30,057.057 INFO    ] 2026-08-31 15:48:30
[2026-08-31 15:48:30,092.092 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:48:30,317.317 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:48:30,382.382 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:48:30,542.542 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:48:30,581.581 INFO    ] time= 31/08/2026 15:48:30
[2026-08-31 15:48:30,636.636 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:48:30,689.689 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:48:30,751.751 INFO    ] No existing commands found in stream
[2026-08-31 15:48:35,763.763 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:48:35,766.766 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-08-31 15:48:36,677.677 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 15:48:36,680.680 INFO    ] Checking for system updates...
[2026-08-31 15:48:36,715.715 INFO    ] 200
[2026-08-31 15:48:36,718.718 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:48:36,777.777 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:48:36,780.780 INFO    ] No update needed
[2026-08-31 15:48:36,782.782 INFO    ] Checking for camera pi updates...
[2026-08-31 15:48:36,815.815 INFO    ] 200
[2026-08-31 15:48:36,818.818 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:48:36,862.862 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:48:36,967.967 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:48:36,969.969 INFO    ] No camera update needed
[2026-08-31 15:48:36,972.972 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:48:36,974.974 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:48:36,980.980 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:48:36,984.984 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:48:39,024.024 INFO    ] ================================================
[2026-08-31 15:48:39,040.040 INFO    ] Launching Daemon at Mon Aug 31 15:48:39 IST 2026
[2026-08-31 15:48:39,051.051 INFO    ] ================================================
[2026-08-31 15:48:39,618.618 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:48:39
[2026-08-31 15:48:40,201.201 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:48:40,449.449 INFO    ] Initializing speech engine...
[2026-08-31 15:48:40,464.464 INFO    ] 2026-08-31 15:48:40
[2026-08-31 15:48:40,729.729 INFO    ] 2026-08-31 15:48:40
[2026-08-31 15:48:40,764.764 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:48:41,020.020 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:48:41,029.029 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:48:41,166.166 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:48:41,220.220 INFO    ] time= 31/08/2026 15:48:41
[2026-08-31 15:48:41,269.269 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:48:41,300.300 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:48:41,435.435 INFO    ] No existing commands found in stream
[2026-08-31 15:48:46,462.462 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:48:46,465.465 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-08-31 15:48:49,206.206 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 15:48:49,209.209 INFO    ] Checking for system updates...
[2026-08-31 15:48:49,244.244 INFO    ] 200
[2026-08-31 15:48:49,247.247 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:48:49,299.299 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:48:49,301.301 INFO    ] No update needed
[2026-08-31 15:48:49,303.303 INFO    ] Checking for camera pi updates...
[2026-08-31 15:48:49,337.337 INFO    ] 200
[2026-08-31 15:48:49,339.339 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:48:49,379.379 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:48:49,567.567 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:48:49,569.569 INFO    ] No camera update needed
[2026-08-31 15:48:49,572.572 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:48:49,574.574 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:48:49,579.579 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:48:49,585.585 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:48:51,626.626 INFO    ] ================================================
[2026-08-31 15:48:51,641.641 INFO    ] Launching Daemon at Mon Aug 31 15:48:51 IST 2026
[2026-08-31 15:48:51,652.652 INFO    ] ================================================
[2026-08-31 15:48:52,234.234 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:48:52
[2026-08-31 15:48:52,834.834 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:48:53,112.112 INFO    ] Initializing speech engine...
[2026-08-31 15:48:53,119.119 INFO    ] 2026-08-31 15:48:53
[2026-08-31 15:48:53,380.380 INFO    ] 2026-08-31 15:48:53
[2026-08-31 15:48:53,433.433 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:48:53,664.664 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:48:53,684.684 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:48:53,867.867 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:48:53,922.922 INFO    ] time= 31/08/2026 15:48:53
[2026-08-31 15:48:53,928.928 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:48:53,946.946 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:48:54,077.077 INFO    ] No existing commands found in stream
[2026-08-31 15:48:59,092.092 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:48:59,095.095 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-08-31 15:49:01,151.151 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 15:49:01,154.154 INFO    ] Checking for system updates...
[2026-08-31 15:49:01,194.194 INFO    ] 200
[2026-08-31 15:49:01,197.197 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:49:01,250.250 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:49:01,252.252 INFO    ] No update needed
[2026-08-31 15:49:01,254.254 INFO    ] Checking for camera pi updates...
[2026-08-31 15:49:01,288.288 INFO    ] 200
[2026-08-31 15:49:01,290.290 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:49:01,359.359 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:49:01,441.441 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:49:01,445.445 INFO    ] No camera update needed
[2026-08-31 15:49:01,463.463 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:49:01,467.467 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:49:01,480.480 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:49:01,490.490 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:49:03,538.538 INFO    ] ================================================
[2026-08-31 15:49:03,553.553 INFO    ] Launching Daemon at Mon Aug 31 15:49:03 IST 2026
[2026-08-31 15:49:03,564.564 INFO    ] ================================================
[2026-08-31 15:49:04,143.143 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:49:04
[2026-08-31 15:49:04,762.762 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:49:05,064.064 INFO    ] Initializing speech engine...
[2026-08-31 15:49:05,072.072 INFO    ] 2026-08-31 15:49:05
[2026-08-31 15:49:05,390.390 INFO    ] 2026-08-31 15:49:05
[2026-08-31 15:49:05,475.475 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:49:05,687.687 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:49:05,696.696 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:49:05,883.883 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:49:05,900.900 INFO    ] time= 31/08/2026 15:49:05
[2026-08-31 15:49:05,921.921 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:49:05,948.948 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:49:06,081.081 INFO    ] No existing commands found in stream
[2026-08-31 15:49:11,107.107 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:49:11,110.110 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-08-31 15:49:13,047.047 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 15:49:13,051.051 INFO    ] Checking for system updates...
[2026-08-31 15:49:13,091.091 INFO    ] 200
[2026-08-31 15:49:13,093.093 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:49:13,146.146 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:49:13,149.149 INFO    ] No update needed
[2026-08-31 15:49:13,151.151 INFO    ] Checking for camera pi updates...
[2026-08-31 15:49:13,185.185 INFO    ] 200
[2026-08-31 15:49:13,188.188 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:49:13,229.229 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:49:13,323.323 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:49:13,325.325 INFO    ] No camera update needed
[2026-08-31 15:49:13,327.327 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:49:13,330.330 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:49:13,335.335 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:49:13,340.340 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:49:15,380.380 INFO    ] ================================================
[2026-08-31 15:49:15,395.395 INFO    ] Launching Daemon at Mon Aug 31 15:49:15 IST 2026
[2026-08-31 15:49:15,405.405 INFO    ] ================================================
[2026-08-31 15:49:16,114.114 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:49:16
[2026-08-31 15:49:16,770.770 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:49:17,021.021 INFO    ] Initializing speech engine...
[2026-08-31 15:49:17,029.029 INFO    ] 2026-08-31 15:49:17
[2026-08-31 15:49:17,342.342 INFO    ] 2026-08-31 15:49:17
[2026-08-31 15:49:17,383.383 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:49:17,641.641 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:49:17,646.646 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:49:17,779.779 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:49:17,821.821 INFO    ] time= 31/08/2026 15:49:17
[2026-08-31 15:49:17,881.881 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:49:17,916.916 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:49:18,059.059 INFO    ] No existing commands found in stream
[2026-08-31 15:49:23,074.074 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:49:23,077.077 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-08-31 15:49:25,455.455 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 15:49:25,458.458 INFO    ] Checking for system updates...
[2026-08-31 15:49:25,495.495 INFO    ] 200
[2026-08-31 15:49:25,498.498 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:49:25,558.558 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:49:25,561.561 INFO    ] No update needed
[2026-08-31 15:49:25,564.564 INFO    ] Checking for camera pi updates...
[2026-08-31 15:49:25,602.602 INFO    ] 200
[2026-08-31 15:49:25,605.605 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:49:25,653.653 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:49:25,738.738 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:49:25,741.741 INFO    ] No camera update needed
[2026-08-31 15:49:25,744.744 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:49:25,746.746 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:49:25,753.753 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:49:25,758.758 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:49:27,800.800 INFO    ] ================================================
[2026-08-31 15:49:27,815.815 INFO    ] Launching Daemon at Mon Aug 31 15:49:27 IST 2026
[2026-08-31 15:49:27,825.825 INFO    ] ================================================
[2026-08-31 15:49:28,481.481 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:49:28
[2026-08-31 15:49:29,159.159 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:49:29,485.485 INFO    ] Initializing speech engine...
[2026-08-31 15:49:29,491.491 INFO    ] 2026-08-31 15:49:29
[2026-08-31 15:49:29,761.761 INFO    ] 2026-08-31 15:49:29
[2026-08-31 15:49:29,815.815 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:49:29,990.990 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:49:30,044.044 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:49:30,188.188 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:49:30,253.253 INFO    ] time= 31/08/2026 15:49:30
[2026-08-31 15:49:30,313.313 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:49:30,324.324 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:49:30,447.447 INFO    ] No existing commands found in stream
[2026-08-31 15:49:35,468.468 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:49:35,470.470 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-08-31 15:49:39,832.832 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 15:49:39,835.835 INFO    ] Checking for system updates...
[2026-08-31 15:49:39,875.875 INFO    ] 200
[2026-08-31 15:49:39,878.878 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:49:39,930.930 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:49:39,932.932 INFO    ] No update needed
[2026-08-31 15:49:39,934.934 INFO    ] Checking for camera pi updates...
[2026-08-31 15:49:39,968.968 INFO    ] 200
[2026-08-31 15:49:39,971.971 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:49:40,011.011 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:49:40,084.084 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:49:40,086.086 INFO    ] No camera update needed
[2026-08-31 15:49:40,089.089 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:49:40,091.091 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:49:40,096.096 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:49:40,101.101 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:49:42,141.141 INFO    ] ================================================
[2026-08-31 15:49:42,156.156 INFO    ] Launching Daemon at Mon Aug 31 15:49:42 IST 2026
[2026-08-31 15:49:42,166.166 INFO    ] ================================================
[2026-08-31 15:49:42,745.745 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:49:42
[2026-08-31 15:49:43,339.339 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:49:43,589.589 INFO    ] Initializing speech engine...
[2026-08-31 15:49:43,610.610 INFO    ] 2026-08-31 15:49:43
[2026-08-31 15:49:43,873.873 INFO    ] 2026-08-31 15:49:43
[2026-08-31 15:49:43,908.908 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:49:44,767.767 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:49:44,816.816 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:49:45,007.007 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:49:45,014.014 INFO    ] time= 31/08/2026 15:49:45
[2026-08-31 15:49:45,058.058 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:49:45,068.068 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:49:45,220.220 INFO    ] No existing commands found in stream
[2026-08-31 15:49:50,255.255 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:49:50,258.258 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-08-31 15:49:53,169.169 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 15:49:53,171.171 INFO    ] Checking for system updates...
[2026-08-31 15:49:53,207.207 INFO    ] 200
[2026-08-31 15:49:53,210.210 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:49:53,262.262 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:49:53,264.264 INFO    ] No update needed
[2026-08-31 15:49:53,266.266 INFO    ] Checking for camera pi updates...
[2026-08-31 15:49:53,305.305 INFO    ] 200
[2026-08-31 15:49:53,307.307 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:49:53,348.348 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:49:53,448.448 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:49:53,450.450 INFO    ] No camera update needed
[2026-08-31 15:49:53,452.452 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:49:53,455.455 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:49:53,460.460 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:49:53,465.465 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:49:55,504.504 INFO    ] ================================================
[2026-08-31 15:49:55,519.519 INFO    ] Launching Daemon at Mon Aug 31 15:49:55 IST 2026
[2026-08-31 15:49:55,531.531 INFO    ] ================================================
[2026-08-31 15:49:56,098.098 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:49:56
[2026-08-31 15:49:56,681.681 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:49:56,950.950 INFO    ] Initializing speech engine...
[2026-08-31 15:49:56,960.960 INFO    ] 2026-08-31 15:49:56
[2026-08-31 15:49:57,210.210 INFO    ] 2026-08-31 15:49:57
[2026-08-31 15:49:57,245.245 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:49:57,506.506 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:49:57,512.512 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:49:57,717.717 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:49:57,772.772 INFO    ] time= 31/08/2026 15:49:57
[2026-08-31 15:49:57,783.783 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:49:57,801.801 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:49:57,937.937 INFO    ] No existing commands found in stream
[2026-08-31 15:50:02,960.960 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:50:02,964.964 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-08-31 15:50:09,021.021 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 15:50:09,024.024 INFO    ] Checking for system updates...
[2026-08-31 15:50:09,067.067 INFO    ] 200
[2026-08-31 15:50:09,070.070 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:50:09,124.124 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:50:09,127.127 INFO    ] No update needed
[2026-08-31 15:50:09,130.130 INFO    ] Checking for camera pi updates...
[2026-08-31 15:50:09,165.165 INFO    ] 200
[2026-08-31 15:50:09,168.168 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:50:09,214.214 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:50:09,292.292 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:50:09,294.294 INFO    ] No camera update needed
[2026-08-31 15:50:09,297.297 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:50:09,299.299 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:50:09,305.305 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:50:09,310.310 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:50:11,352.352 INFO    ] ================================================
[2026-08-31 15:50:11,369.369 INFO    ] Launching Daemon at Mon Aug 31 15:50:11 IST 2026
[2026-08-31 15:50:11,380.380 INFO    ] ================================================
[2026-08-31 15:50:11,955.955 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:50:11
[2026-08-31 15:50:12,538.538 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:50:12,784.784 INFO    ] Initializing speech engine...
[2026-08-31 15:50:12,793.793 INFO    ] 2026-08-31 15:50:12
[2026-08-31 15:50:13,066.066 INFO    ] 2026-08-31 15:50:13
[2026-08-31 15:50:13,102.102 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:50:13,358.358 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:50:13,367.367 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:50:13,505.505 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:50:13,564.564 INFO    ] time= 31/08/2026 15:50:13
[2026-08-31 15:50:13,614.614 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:50:13,638.638 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:50:13,773.773 INFO    ] No existing commands found in stream
[2026-08-31 15:50:18,799.799 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:50:18,802.802 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-08-31 15:50:22,401.401 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 15:50:22,404.404 INFO    ] Checking for system updates...
[2026-08-31 15:50:22,443.443 INFO    ] 200
[2026-08-31 15:50:22,446.446 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:50:22,505.505 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:50:22,507.507 INFO    ] No update needed
[2026-08-31 15:50:22,510.510 INFO    ] Checking for camera pi updates...
[2026-08-31 15:50:22,547.547 INFO    ] 200
[2026-08-31 15:50:22,550.550 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:50:22,595.595 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:50:22,682.682 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:50:22,684.684 INFO    ] No camera update needed
[2026-08-31 15:50:22,686.686 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:50:22,689.689 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:50:22,694.694 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:50:22,699.699 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:50:24,741.741 INFO    ] ================================================
[2026-08-31 15:50:24,757.757 INFO    ] Launching Daemon at Mon Aug 31 15:50:24 IST 2026
[2026-08-31 15:50:24,768.768 INFO    ] ================================================
[2026-08-31 15:50:25,336.336 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:50:25
[2026-08-31 15:50:25,920.920 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:50:26,180.180 INFO    ] Initializing speech engine...
[2026-08-31 15:50:26,195.195 INFO    ] 2026-08-31 15:50:26
[2026-08-31 15:50:26,450.450 INFO    ] 2026-08-31 15:50:26
[2026-08-31 15:50:26,483.483 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:50:26,686.686 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:50:26,745.745 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:50:26,887.887 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:50:26,939.939 INFO    ] time= 31/08/2026 15:50:26
[2026-08-31 15:50:26,993.993 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:50:27,023.023 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:50:27,176.176 INFO    ] No existing commands found in stream
[2026-08-31 15:50:32,195.195 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:50:32,198.198 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-08-31 15:50:35,118.118 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 15:50:35,121.121 INFO    ] Checking for system updates...
[2026-08-31 15:50:35,156.156 INFO    ] 200
[2026-08-31 15:50:35,159.159 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:50:35,212.212 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:50:35,214.214 INFO    ] No update needed
[2026-08-31 15:50:35,216.216 INFO    ] Checking for camera pi updates...
[2026-08-31 15:50:35,251.251 INFO    ] 200
[2026-08-31 15:50:35,253.253 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:50:35,299.299 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:50:35,378.378 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:50:35,380.380 INFO    ] No camera update needed
[2026-08-31 15:50:35,382.382 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:50:35,384.384 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:50:35,390.390 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:50:35,395.395 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:50:37,437.437 INFO    ] ================================================
[2026-08-31 15:50:37,452.452 INFO    ] Launching Daemon at Mon Aug 31 15:50:37 IST 2026
[2026-08-31 15:50:37,462.462 INFO    ] ================================================
[2026-08-31 15:50:38,029.029 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:50:38
[2026-08-31 15:50:38,612.612 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:50:38,858.858 INFO    ] Initializing speech engine...
[2026-08-31 15:50:38,866.866 INFO    ] 2026-08-31 15:50:38
[2026-08-31 15:50:39,140.140 INFO    ] 2026-08-31 15:50:39
[2026-08-31 15:50:39,175.175 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:50:39,432.432 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:50:39,441.441 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:50:39,638.638 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:50:39,687.687 INFO    ] time= 31/08/2026 15:50:39
[2026-08-31 15:50:39,708.708 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:50:39,714.714 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:50:39,842.842 INFO    ] No existing commands found in stream
[2026-08-31 15:50:44,870.870 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:50:44,873.873 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-08-31 15:50:47,617.617 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 15:50:47,620.620 INFO    ] Checking for system updates...
[2026-08-31 15:50:47,660.660 INFO    ] 200
[2026-08-31 15:50:47,662.662 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:50:47,714.714 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:50:47,716.716 INFO    ] No update needed
[2026-08-31 15:50:47,719.719 INFO    ] Checking for camera pi updates...
[2026-08-31 15:50:47,752.752 INFO    ] 200
[2026-08-31 15:50:47,755.755 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:50:47,800.800 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:50:47,889.889 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:50:47,892.892 INFO    ] No camera update needed
[2026-08-31 15:50:47,894.894 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:50:47,896.896 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:50:47,902.902 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:50:47,907.907 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:50:49,946.946 INFO    ] ================================================
[2026-08-31 15:50:49,961.961 INFO    ] Launching Daemon at Mon Aug 31 15:50:49 IST 2026
[2026-08-31 15:50:49,972.972 INFO    ] ================================================
[2026-08-31 15:50:50,540.540 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:50:50
[2026-08-31 15:50:51,124.124 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:50:51,395.395 INFO    ] Initializing speech engine...
[2026-08-31 15:50:51,405.405 INFO    ] 2026-08-31 15:50:51
[2026-08-31 15:50:51,655.655 INFO    ] 2026-08-31 15:50:51
[2026-08-31 15:50:51,690.690 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:50:51,948.948 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:50:51,957.957 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:50:52,092.092 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:50:52,109.109 INFO    ] time= 31/08/2026 15:50:52
[2026-08-31 15:50:52,173.173 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:50:52,229.229 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:50:52,361.361 INFO    ] No existing commands found in stream
[2026-08-31 15:50:57,386.386 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:50:57,389.389 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-08-31 15:51:01,844.844 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 15:51:01,852.852 INFO    ] Checking for system updates...
[2026-08-31 15:51:01,907.907 INFO    ] 200
[2026-08-31 15:51:01,911.911 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:51:01,994.994 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:51:01,997.997 INFO    ] No update needed
[2026-08-31 15:51:02,000.000 INFO    ] Checking for camera pi updates...
[2026-08-31 15:51:02,114.114 INFO    ] 200
[2026-08-31 15:51:02,117.117 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:51:02,198.198 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:51:02,356.356 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:51:02,360.360 INFO    ] No camera update needed
[2026-08-31 15:51:02,364.364 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:51:02,367.367 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:51:02,375.375 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:51:02,382.382 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:51:04,424.424 INFO    ] ================================================
[2026-08-31 15:51:04,440.440 INFO    ] Launching Daemon at Mon Aug 31 15:51:04 IST 2026
[2026-08-31 15:51:04,451.451 INFO    ] ================================================
[2026-08-31 15:51:05,043.043 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:51:05
[2026-08-31 15:51:05,657.657 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:51:05,943.943 INFO    ] Initializing speech engine...
[2026-08-31 15:51:05,951.951 INFO    ] 2026-08-31 15:51:05
[2026-08-31 15:51:06,214.214 INFO    ] 2026-08-31 15:51:06
[2026-08-31 15:51:06,251.251 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:51:06,452.452 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:51:06,487.487 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:51:06,673.673 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:51:06,738.738 INFO    ] time= 31/08/2026 15:51:06
[2026-08-31 15:51:06,799.799 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:51:06,807.807 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:51:06,895.895 INFO    ] No existing commands found in stream
[2026-08-31 15:51:11,930.930 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:51:11,932.932 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-08-31 15:51:15,042.042 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 15:51:15,045.045 INFO    ] Checking for system updates...
[2026-08-31 15:51:15,081.081 INFO    ] 200
[2026-08-31 15:51:15,083.083 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:51:15,137.137 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:51:15,140.140 INFO    ] No update needed
[2026-08-31 15:51:15,142.142 INFO    ] Checking for camera pi updates...
[2026-08-31 15:51:15,179.179 INFO    ] 200
[2026-08-31 15:51:15,182.182 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:51:15,229.229 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:51:15,332.332 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:51:15,334.334 INFO    ] No camera update needed
[2026-08-31 15:51:15,336.336 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:51:15,339.339 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:51:15,344.344 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:51:15,349.349 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:51:17,396.396 INFO    ] ================================================
[2026-08-31 15:51:17,411.411 INFO    ] Launching Daemon at Mon Aug 31 15:51:17 IST 2026
[2026-08-31 15:51:17,422.422 INFO    ] ================================================
[2026-08-31 15:51:18,010.010 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:51:18
[2026-08-31 15:51:18,590.590 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:51:18,863.863 INFO    ] Initializing speech engine...
[2026-08-31 15:51:18,869.869 INFO    ] 2026-08-31 15:51:18
[2026-08-31 15:51:19,113.113 INFO    ] 2026-08-31 15:51:19
[2026-08-31 15:51:19,148.148 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:51:19,401.401 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:51:19,405.405 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:51:19,538.538 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:51:19,583.583 INFO    ] time= 31/08/2026 15:51:19
[2026-08-31 15:51:19,653.653 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:51:19,671.671 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:51:19,812.812 INFO    ] No existing commands found in stream
[2026-08-31 15:51:24,827.827 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:51:24,830.830 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-08-31 15:51:26,122.122 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 15:51:26,125.125 INFO    ] Checking for system updates...
[2026-08-31 15:51:26,160.160 INFO    ] 200
[2026-08-31 15:51:26,163.163 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:51:26,216.216 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:51:26,219.219 INFO    ] No update needed
[2026-08-31 15:51:26,221.221 INFO    ] Checking for camera pi updates...
[2026-08-31 15:51:26,258.258 INFO    ] 200
[2026-08-31 15:51:26,261.261 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:51:26,305.305 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:51:26,388.388 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:51:26,391.391 INFO    ] No camera update needed
[2026-08-31 15:51:26,394.394 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:51:26,396.396 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:51:26,401.401 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:51:26,406.406 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:51:28,448.448 INFO    ] ================================================
[2026-08-31 15:51:28,463.463 INFO    ] Launching Daemon at Mon Aug 31 15:51:28 IST 2026
[2026-08-31 15:51:28,473.473 INFO    ] ================================================
[2026-08-31 15:51:29,036.036 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:51:29
[2026-08-31 15:51:29,615.615 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:51:29,880.880 INFO    ] Initializing speech engine...
[2026-08-31 15:51:29,892.892 INFO    ] 2026-08-31 15:51:29
[2026-08-31 15:51:30,142.142 INFO    ] 2026-08-31 15:51:30
[2026-08-31 15:51:30,176.176 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:51:30,372.372 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:51:30,396.396 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:51:30,577.577 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:51:30,583.583 INFO    ] time= 31/08/2026 15:51:30
[2026-08-31 15:51:30,648.648 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:51:30,702.702 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:51:30,827.827 INFO    ] No existing commands found in stream
[2026-08-31 15:51:35,849.849 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:51:35,852.852 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-08-31 15:51:40,094.094 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 15:51:40,097.097 INFO    ] Checking for system updates...
[2026-08-31 15:51:40,132.132 INFO    ] 200
[2026-08-31 15:51:40,134.134 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:51:40,186.186 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:51:40,189.189 INFO    ] No update needed
[2026-08-31 15:51:40,192.192 INFO    ] Checking for camera pi updates...
[2026-08-31 15:51:40,230.230 INFO    ] 200
[2026-08-31 15:51:40,232.232 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:51:40,272.272 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:51:40,355.355 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:51:40,358.358 INFO    ] No camera update needed
[2026-08-31 15:51:40,360.360 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:51:40,363.363 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:51:40,369.369 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:51:40,374.374 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:51:42,413.413 INFO    ] ================================================
[2026-08-31 15:51:42,428.428 INFO    ] Launching Daemon at Mon Aug 31 15:51:42 IST 2026
[2026-08-31 15:51:42,439.439 INFO    ] ================================================
[2026-08-31 15:51:43,007.007 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:51:43
[2026-08-31 15:51:43,592.592 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:51:43,860.860 INFO    ] Initializing speech engine...
[2026-08-31 15:51:43,869.869 INFO    ] 2026-08-31 15:51:43
[2026-08-31 15:51:44,117.117 INFO    ] 2026-08-31 15:51:44
[2026-08-31 15:51:44,152.152 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:51:44,403.403 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:51:44,412.412 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:51:44,625.625 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:51:44,671.671 INFO    ] time= 31/08/2026 15:51:44
[2026-08-31 15:51:44,677.677 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:51:44,695.695 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:51:44,821.821 INFO    ] No existing commands found in stream
[2026-08-31 15:51:49,837.837 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:51:49,840.840 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-08-31 15:51:54,079.079 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 15:51:54,081.081 INFO    ] Checking for system updates...
[2026-08-31 15:51:54,116.116 INFO    ] 200
[2026-08-31 15:51:54,119.119 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:51:54,172.172 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:51:54,174.174 INFO    ] No update needed
[2026-08-31 15:51:54,177.177 INFO    ] Checking for camera pi updates...
[2026-08-31 15:51:54,212.212 INFO    ] 200
[2026-08-31 15:51:54,214.214 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:51:54,255.255 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:51:54,341.341 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:51:54,343.343 INFO    ] No camera update needed
[2026-08-31 15:51:54,346.346 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:51:54,348.348 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:51:54,354.354 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:51:54,359.359 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:51:56,398.398 INFO    ] ================================================
[2026-08-31 15:51:56,413.413 INFO    ] Launching Daemon at Mon Aug 31 15:51:56 IST 2026
[2026-08-31 15:51:56,424.424 INFO    ] ================================================
[2026-08-31 15:51:56,990.990 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:51:56
[2026-08-31 15:51:57,573.573 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:51:57,841.841 INFO    ] Initializing speech engine...
[2026-08-31 15:51:57,850.850 INFO    ] 2026-08-31 15:51:57
[2026-08-31 15:51:58,098.098 INFO    ] 2026-08-31 15:51:58
[2026-08-31 15:51:58,132.132 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:51:58,385.385 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:51:58,395.395 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:51:58,526.526 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:51:58,574.574 INFO    ] time= 31/08/2026 15:51:58
[2026-08-31 15:51:58,633.633 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:51:58,661.661 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:51:58,797.797 INFO    ] No existing commands found in stream
[2026-08-31 15:52:03,818.818 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:52:03,821.821 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-08-31 15:52:08,109.109 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 15:52:08,111.111 INFO    ] Checking for system updates...
[2026-08-31 15:52:08,148.148 INFO    ] 200
[2026-08-31 15:52:08,150.150 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:52:08,209.209 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:52:08,212.212 INFO    ] No update needed
[2026-08-31 15:52:08,214.214 INFO    ] Checking for camera pi updates...
[2026-08-31 15:52:08,252.252 INFO    ] 200
[2026-08-31 15:52:08,255.255 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:52:08,294.294 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:52:08,361.361 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:52:08,363.363 INFO    ] No camera update needed
[2026-08-31 15:52:08,366.366 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:52:08,368.368 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:52:08,374.374 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:52:08,379.379 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:52:10,419.419 INFO    ] ================================================
[2026-08-31 15:52:10,434.434 INFO    ] Launching Daemon at Mon Aug 31 15:52:10 IST 2026
[2026-08-31 15:52:10,445.445 INFO    ] ================================================
[2026-08-31 15:52:11,015.015 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:52:11
[2026-08-31 15:52:11,599.599 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:52:11,869.869 INFO    ] Initializing speech engine...
[2026-08-31 15:52:11,878.878 INFO    ] 2026-08-31 15:52:11
[2026-08-31 15:52:12,129.129 INFO    ] 2026-08-31 15:52:12
[2026-08-31 15:52:12,164.164 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:52:12,349.349 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:52:12,368.368 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:52:12,564.564 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:52:12,606.606 INFO    ] time= 31/08/2026 15:52:12
[2026-08-31 15:52:12,676.676 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:52:12,702.702 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:52:12,840.840 INFO    ] No existing commands found in stream
[2026-08-31 15:52:17,860.860 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:52:17,863.863 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-08-31 15:52:22,208.208 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 15:52:22,211.211 INFO    ] Checking for system updates...
[2026-08-31 15:52:22,251.251 INFO    ] 200
[2026-08-31 15:52:22,253.253 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:52:22,316.316 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:52:22,319.319 INFO    ] No update needed
[2026-08-31 15:52:22,322.322 INFO    ] Checking for camera pi updates...
[2026-08-31 15:52:22,366.366 INFO    ] 200
[2026-08-31 15:52:22,369.369 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:52:22,409.409 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:52:22,492.492 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:52:22,494.494 INFO    ] No camera update needed
[2026-08-31 15:52:22,497.497 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:52:22,499.499 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:52:22,504.504 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:52:22,509.509 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:52:24,550.550 INFO    ] ================================================
[2026-08-31 15:52:24,566.566 INFO    ] Launching Daemon at Mon Aug 31 15:52:24 IST 2026
[2026-08-31 15:52:24,577.577 INFO    ] ================================================
[2026-08-31 15:52:25,162.162 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:52:25
[2026-08-31 15:52:25,768.768 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:52:26,047.047 INFO    ] Initializing speech engine...
[2026-08-31 15:52:26,052.052 INFO    ] 2026-08-31 15:52:26
[2026-08-31 15:52:26,315.315 INFO    ] 2026-08-31 15:52:26
[2026-08-31 15:52:26,345.345 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:52:26,594.594 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:52:26,600.600 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:52:26,733.733 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:52:26,773.773 INFO    ] time= 31/08/2026 15:52:26
[2026-08-31 15:52:26,827.827 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:52:26,866.866 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:52:27,009.009 INFO    ] No existing commands found in stream
[2026-08-31 15:52:32,024.024 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:52:32,027.027 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-08-31 15:52:34,549.549 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 15:52:34,552.552 INFO    ] Checking for system updates...
[2026-08-31 15:52:34,589.589 INFO    ] 200
[2026-08-31 15:52:34,592.592 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:52:34,645.645 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:52:34,647.647 INFO    ] No update needed
[2026-08-31 15:52:34,650.650 INFO    ] Checking for camera pi updates...
[2026-08-31 15:52:34,687.687 INFO    ] 200
[2026-08-31 15:52:34,690.690 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:52:34,735.735 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:52:34,837.837 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:52:34,840.840 INFO    ] No camera update needed
[2026-08-31 15:52:34,842.842 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:52:34,844.844 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:52:34,850.850 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:52:34,855.855 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:52:36,897.897 INFO    ] ================================================
[2026-08-31 15:52:36,913.913 INFO    ] Launching Daemon at Mon Aug 31 15:52:36 IST 2026
[2026-08-31 15:52:36,924.924 INFO    ] ================================================
[2026-08-31 15:52:37,569.569 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:52:37
[2026-08-31 15:52:38,155.155 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:52:38,428.428 INFO    ] Initializing speech engine...
[2026-08-31 15:52:38,436.436 INFO    ] 2026-08-31 15:52:38
[2026-08-31 15:52:38,688.688 INFO    ] 2026-08-31 15:52:38
[2026-08-31 15:52:38,723.723 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:52:38,990.990 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:52:39,011.011 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:52:39,206.206 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:52:39,256.256 INFO    ] time= 31/08/2026 15:52:39
[2026-08-31 15:52:39,262.262 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:52:39,280.280 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:52:39,404.404 INFO    ] No existing commands found in stream
[2026-08-31 15:52:44,424.424 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:52:44,426.426 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-08-31 15:52:46,114.114 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 15:52:46,116.116 INFO    ] Checking for system updates...
[2026-08-31 15:52:46,156.156 INFO    ] 200
[2026-08-31 15:52:46,158.158 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:52:46,217.217 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:52:46,220.220 INFO    ] No update needed
[2026-08-31 15:52:46,222.222 INFO    ] Checking for camera pi updates...
[2026-08-31 15:52:46,255.255 INFO    ] 200
[2026-08-31 15:52:46,258.258 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:52:46,305.305 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:52:46,392.392 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:52:46,394.394 INFO    ] No camera update needed
[2026-08-31 15:52:46,396.396 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:52:46,399.399 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:52:46,404.404 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:52:46,409.409 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:52:48,451.451 INFO    ] ================================================
[2026-08-31 15:52:48,466.466 INFO    ] Launching Daemon at Mon Aug 31 15:52:48 IST 2026
[2026-08-31 15:52:48,478.478 INFO    ] ================================================
[2026-08-31 15:52:49,055.055 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:52:49
[2026-08-31 15:52:49,640.640 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:52:49,893.893 INFO    ] Initializing speech engine...
[2026-08-31 15:52:49,901.901 INFO    ] 2026-08-31 15:52:49
[2026-08-31 15:52:50,198.198 INFO    ] 2026-08-31 15:52:50
[2026-08-31 15:52:50,237.237 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:52:50,433.433 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:52:50,447.447 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:52:50,607.607 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:52:50,617.617 INFO    ] time= 31/08/2026 15:52:50
[2026-08-31 15:52:50,625.625 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:52:50,647.647 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:52:50,843.843 INFO    ] No existing commands found in stream
[2026-08-31 15:52:55,853.853 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:52:55,856.856 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-08-31 15:52:59,529.529 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 15:52:59,532.532 INFO    ] Checking for system updates...
[2026-08-31 15:52:59,584.584 INFO    ] 200
[2026-08-31 15:52:59,587.587 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:52:59,645.645 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:52:59,647.647 INFO    ] No update needed
[2026-08-31 15:52:59,650.650 INFO    ] Checking for camera pi updates...
[2026-08-31 15:52:59,686.686 INFO    ] 200
[2026-08-31 15:52:59,689.689 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:52:59,732.732 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:52:59,834.834 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:52:59,837.837 INFO    ] No camera update needed
[2026-08-31 15:52:59,840.840 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:52:59,843.843 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:52:59,849.849 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:52:59,855.855 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:53:01,902.902 INFO    ] ================================================
[2026-08-31 15:53:01,940.940 INFO    ] Launching Daemon at Mon Aug 31 15:53:01 IST 2026
[2026-08-31 15:53:02,981.981 INFO    ] ================================================
[2026-08-31 15:53:02,678.678 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:53:02
[2026-08-31 15:53:03,322.322 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:53:03,679.679 INFO    ] Initializing speech engine...
[2026-08-31 15:53:03,690.690 INFO    ] 2026-08-31 15:53:03
[2026-08-31 15:53:03,961.961 INFO    ] 2026-08-31 15:53:03
[2026-08-31 15:53:03,995.995 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:53:04,185.185 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:53:04,242.242 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:53:04,383.383 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:53:04,443.443 INFO    ] time= 31/08/2026 15:53:04
[2026-08-31 15:53:04,492.492 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:53:04,513.513 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:53:04,650.650 INFO    ] No existing commands found in stream
[2026-08-31 15:53:09,674.674 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:53:09,677.677 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-08-31 15:53:10,168.168 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 15:53:10,171.171 INFO    ] Checking for system updates...
[2026-08-31 15:53:10,211.211 INFO    ] 200
[2026-08-31 15:53:10,213.213 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:53:10,272.272 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:53:10,275.275 INFO    ] No update needed
[2026-08-31 15:53:10,277.277 INFO    ] Checking for camera pi updates...
[2026-08-31 15:53:10,314.314 INFO    ] 200
[2026-08-31 15:53:10,317.317 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:53:10,356.356 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:53:10,538.538 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:53:10,540.540 INFO    ] No camera update needed
[2026-08-31 15:53:10,543.543 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:53:10,545.545 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:53:10,550.550 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:53:10,555.555 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:53:12,596.596 INFO    ] ================================================
[2026-08-31 15:53:12,612.612 INFO    ] Launching Daemon at Mon Aug 31 15:53:12 IST 2026
[2026-08-31 15:53:12,623.623 INFO    ] ================================================
[2026-08-31 15:53:13,189.189 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:53:13
[2026-08-31 15:53:13,772.772 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:53:14,020.020 INFO    ] Initializing speech engine...
[2026-08-31 15:53:14,033.033 INFO    ] 2026-08-31 15:53:14
[2026-08-31 15:53:14,295.295 INFO    ] 2026-08-31 15:53:14
[2026-08-31 15:53:14,329.329 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:53:14,580.580 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:53:14,588.588 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:53:14,721.721 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:53:14,763.763 INFO    ] time= 31/08/2026 15:53:14
[2026-08-31 15:53:14,812.812 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:53:14,854.854 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:53:14,997.997 INFO    ] No existing commands found in stream
[2026-08-31 15:53:20,008.008 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:53:20,011.011 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-08-31 15:53:20,790.790 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 15:53:20,793.793 INFO    ] Checking for system updates...
[2026-08-31 15:53:20,829.829 INFO    ] 200
[2026-08-31 15:53:20,831.831 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:53:20,901.901 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:53:20,903.903 INFO    ] No update needed
[2026-08-31 15:53:20,906.906 INFO    ] Checking for camera pi updates...
[2026-08-31 15:53:20,939.939 INFO    ] 200
[2026-08-31 15:53:20,941.941 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:53:20,981.981 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:53:21,066.066 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:53:21,068.068 INFO    ] No camera update needed
[2026-08-31 15:53:21,071.071 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:53:21,073.073 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:53:21,078.078 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:53:21,083.083 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:53:23,125.125 INFO    ] ================================================
[2026-08-31 15:53:23,141.141 INFO    ] Launching Daemon at Mon Aug 31 15:53:23 IST 2026
[2026-08-31 15:53:23,152.152 INFO    ] ================================================
[2026-08-31 15:53:23,722.722 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:53:23
[2026-08-31 15:53:24,308.308 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:53:24,578.578 INFO    ] Initializing speech engine...
[2026-08-31 15:53:24,587.587 INFO    ] 2026-08-31 15:53:24
[2026-08-31 15:53:24,833.833 INFO    ] 2026-08-31 15:53:24
[2026-08-31 15:53:24,869.869 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:53:25,123.123 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:53:25,128.128 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:53:25,263.263 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:53:25,327.327 INFO    ] time= 31/08/2026 15:53:25
[2026-08-31 15:53:25,381.381 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:53:25,393.393 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:53:25,527.527 INFO    ] No existing commands found in stream
[2026-08-31 15:53:30,553.553 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:53:30,555.555 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-08-31 15:53:34,635.635 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 15:53:34,638.638 INFO    ] Checking for system updates...
[2026-08-31 15:53:34,677.677 INFO    ] 200
[2026-08-31 15:53:34,680.680 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:53:34,740.740 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:53:34,742.742 INFO    ] No update needed
[2026-08-31 15:53:34,745.745 INFO    ] Checking for camera pi updates...
[2026-08-31 15:53:34,779.779 INFO    ] 200
[2026-08-31 15:53:34,781.781 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:53:34,827.827 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:53:34,907.907 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:53:34,909.909 INFO    ] No camera update needed
[2026-08-31 15:53:34,912.912 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:53:34,914.914 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:53:34,919.919 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:53:34,924.924 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:53:36,970.970 INFO    ] ================================================
[2026-08-31 15:53:36,985.985 INFO    ] Launching Daemon at Mon Aug 31 15:53:36 IST 2026
[2026-08-31 15:53:37,996.996 INFO    ] ================================================
[2026-08-31 15:53:37,567.567 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:53:37
[2026-08-31 15:53:38,155.155 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:53:38,425.425 INFO    ] Initializing speech engine...
[2026-08-31 15:53:38,434.434 INFO    ] 2026-08-31 15:53:38
[2026-08-31 15:53:38,680.680 INFO    ] 2026-08-31 15:53:38
[2026-08-31 15:53:38,716.716 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:53:39,280.280 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:53:39,332.332 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:53:39,555.555 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:53:39,610.610 INFO    ] time= 31/08/2026 15:53:39
[2026-08-31 15:53:39,647.647 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:53:39,667.667 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:53:39,797.797 INFO    ] No existing commands found in stream
[2026-08-31 15:53:44,812.812 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:53:44,814.814 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-08-31 15:53:46,368.368 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 15:53:46,371.371 INFO    ] Checking for system updates...
[2026-08-31 15:53:46,410.410 INFO    ] 200
[2026-08-31 15:53:46,413.413 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:53:46,472.472 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:53:46,475.475 INFO    ] No update needed
[2026-08-31 15:53:46,477.477 INFO    ] Checking for camera pi updates...
[2026-08-31 15:53:46,511.511 INFO    ] 200
[2026-08-31 15:53:46,513.513 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:53:46,553.553 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:53:46,646.646 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:53:46,649.649 INFO    ] No camera update needed
[2026-08-31 15:53:46,651.651 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:53:46,654.654 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:53:46,659.659 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:53:46,664.664 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:53:48,705.705 INFO    ] ================================================
[2026-08-31 15:53:48,720.720 INFO    ] Launching Daemon at Mon Aug 31 15:53:48 IST 2026
[2026-08-31 15:53:48,731.731 INFO    ] ================================================
[2026-08-31 15:53:49,312.312 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:53:49
[2026-08-31 15:53:49,908.908 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:53:50,180.180 INFO    ] Initializing speech engine...
[2026-08-31 15:53:50,189.189 INFO    ] 2026-08-31 15:53:50
[2026-08-31 15:53:50,451.451 INFO    ] 2026-08-31 15:53:50
[2026-08-31 15:53:50,481.481 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:53:50,789.789 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:53:50,796.796 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:53:50,968.968 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:53:50,993.993 INFO    ] time= 31/08/2026 15:53:50
[2026-08-31 15:53:51,017.017 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:53:51,043.043 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:53:51,149.149 INFO    ] No existing commands found in stream
[2026-08-31 15:53:56,173.173 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:53:56,175.175 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-08-31 15:54:00,282.282 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 15:54:00,285.285 INFO    ] Checking for system updates...
[2026-08-31 15:54:00,320.320 INFO    ] 200
[2026-08-31 15:54:00,323.323 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:54:00,381.381 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:54:00,384.384 INFO    ] No update needed
[2026-08-31 15:54:00,386.386 INFO    ] Checking for camera pi updates...
[2026-08-31 15:54:00,419.419 INFO    ] 200
[2026-08-31 15:54:00,422.422 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:54:00,466.466 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:54:00,548.548 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:54:00,551.551 INFO    ] No camera update needed
[2026-08-31 15:54:00,553.553 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:54:00,555.555 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:54:00,561.561 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:54:00,566.566 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:54:02,610.610 INFO    ] ================================================
[2026-08-31 15:54:02,627.627 INFO    ] Launching Daemon at Mon Aug 31 15:54:02 IST 2026
[2026-08-31 15:54:02,640.640 INFO    ] ================================================
[2026-08-31 15:54:03,276.276 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:54:03
[2026-08-31 15:54:03,878.878 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:54:04,169.169 INFO    ] Initializing speech engine...
[2026-08-31 15:54:04,178.178 INFO    ] 2026-08-31 15:54:04
[2026-08-31 15:54:04,452.452 INFO    ] 2026-08-31 15:54:04
[2026-08-31 15:54:04,489.489 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:54:04,690.690 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:54:04,707.707 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:54:04,876.876 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:54:04,885.885 INFO    ] time= 31/08/2026 15:54:04
[2026-08-31 15:54:04,933.933 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:54:04,961.961 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:54:05,064.064 INFO    ] No existing commands found in stream
[2026-08-31 15:54:10,090.090 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:54:10,093.093 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-08-31 15:54:13,828.828 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 15:54:13,831.831 INFO    ] Checking for system updates...
[2026-08-31 15:54:13,871.871 INFO    ] 200
[2026-08-31 15:54:13,874.874 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:54:13,940.940 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:54:13,942.942 INFO    ] No update needed
[2026-08-31 15:54:13,945.945 INFO    ] Checking for camera pi updates...
[2026-08-31 15:54:13,985.985 INFO    ] 200
[2026-08-31 15:54:13,988.988 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:54:14,036.036 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:54:14,118.118 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:54:14,121.121 INFO    ] No camera update needed
[2026-08-31 15:54:14,124.124 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:54:14,127.127 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:54:14,134.134 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:54:14,140.140 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:54:16,184.184 INFO    ] ================================================
[2026-08-31 15:54:16,200.200 INFO    ] Launching Daemon at Mon Aug 31 15:54:16 IST 2026
[2026-08-31 15:54:16,211.211 INFO    ] ================================================
[2026-08-31 15:54:16,780.780 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:54:16
[2026-08-31 15:54:17,380.380 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:54:17,656.656 INFO    ] Initializing speech engine...
[2026-08-31 15:54:17,665.665 INFO    ] 2026-08-31 15:54:17
[2026-08-31 15:54:17,937.937 INFO    ] 2026-08-31 15:54:17
[2026-08-31 15:54:17,980.980 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:54:18,203.203 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:54:18,209.209 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:54:18,427.427 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:54:18,467.467 INFO    ] time= 31/08/2026 15:54:18
[2026-08-31 15:54:18,473.473 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:54:18,492.492 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:54:18,606.606 INFO    ] No existing commands found in stream
[2026-08-31 15:54:23,630.630 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:54:23,633.633 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-08-31 15:54:27,387.387 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 15:54:27,390.390 INFO    ] Checking for system updates...
[2026-08-31 15:54:27,426.426 INFO    ] 200
[2026-08-31 15:54:27,428.428 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:54:27,480.480 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:54:27,482.482 INFO    ] No update needed
[2026-08-31 15:54:27,485.485 INFO    ] Checking for camera pi updates...
[2026-08-31 15:54:27,518.518 INFO    ] 200
[2026-08-31 15:54:27,520.520 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:54:27,566.566 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:54:27,653.653 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:54:27,656.656 INFO    ] No camera update needed
[2026-08-31 15:54:27,658.658 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:54:27,661.661 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:54:27,666.666 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:54:27,671.671 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:54:29,712.712 INFO    ] ================================================
[2026-08-31 15:54:29,728.728 INFO    ] Launching Daemon at Mon Aug 31 15:54:29 IST 2026
[2026-08-31 15:54:29,739.739 INFO    ] ================================================
[2026-08-31 15:54:30,413.413 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:54:30
[2026-08-31 15:54:31,108.108 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:54:31,421.421 INFO    ] Initializing speech engine...
[2026-08-31 15:54:31,441.441 INFO    ] 2026-08-31 15:54:31
[2026-08-31 15:54:31,721.721 INFO    ] 2026-08-31 15:54:31
[2026-08-31 15:54:31,774.774 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:54:32,011.011 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:54:32,020.020 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:54:32,251.251 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:54:32,289.289 INFO    ] time= 31/08/2026 15:54:32
[2026-08-31 15:54:32,307.307 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:54:32,317.317 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:54:32,423.423 INFO    ] No existing commands found in stream
[2026-08-31 15:54:37,453.453 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:54:37,456.456 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-08-31 15:54:39,799.799 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 15:54:39,801.801 INFO    ] Checking for system updates...
[2026-08-31 15:54:39,838.838 INFO    ] 200
[2026-08-31 15:54:39,841.841 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:54:39,894.894 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:54:39,896.896 INFO    ] No update needed
[2026-08-31 15:54:39,899.899 INFO    ] Checking for camera pi updates...
[2026-08-31 15:54:39,939.939 INFO    ] 200
[2026-08-31 15:54:39,941.941 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:54:39,988.988 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:54:40,076.076 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:54:40,078.078 INFO    ] No camera update needed
[2026-08-31 15:54:40,081.081 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:54:40,083.083 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:54:40,088.088 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:54:40,094.094 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:54:42,134.134 INFO    ] ================================================
[2026-08-31 15:54:42,149.149 INFO    ] Launching Daemon at Mon Aug 31 15:54:42 IST 2026
[2026-08-31 15:54:42,160.160 INFO    ] ================================================
[2026-08-31 15:54:42,826.826 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:54:42
[2026-08-31 15:54:43,439.439 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:54:43,712.712 INFO    ] Initializing speech engine...
[2026-08-31 15:54:43,720.720 INFO    ] 2026-08-31 15:54:43
[2026-08-31 15:54:43,990.990 INFO    ] 2026-08-31 15:54:43
[2026-08-31 15:54:44,016.016 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:54:44,241.241 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:54:44,260.260 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:54:44,409.409 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:54:44,418.418 INFO    ] time= 31/08/2026 15:54:44
[2026-08-31 15:54:44,423.423 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:54:44,430.430 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:54:44,507.507 INFO    ] No existing commands found in stream
[2026-08-31 15:54:49,538.538 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:54:49,541.541 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-08-31 15:54:50,070.070 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 15:54:50,073.073 INFO    ] Checking for system updates...
[2026-08-31 15:54:50,109.109 INFO    ] 200
[2026-08-31 15:54:50,111.111 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:54:50,171.171 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:54:50,174.174 INFO    ] No update needed
[2026-08-31 15:54:50,176.176 INFO    ] Checking for camera pi updates...
[2026-08-31 15:54:50,214.214 INFO    ] 200
[2026-08-31 15:54:50,216.216 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:54:50,257.257 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:54:50,336.336 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:54:50,339.339 INFO    ] No camera update needed
[2026-08-31 15:54:50,341.341 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:54:50,344.344 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:54:50,349.349 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:54:50,354.354 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:54:52,394.394 INFO    ] ================================================
[2026-08-31 15:54:52,410.410 INFO    ] Launching Daemon at Mon Aug 31 15:54:52 IST 2026
[2026-08-31 15:54:52,421.421 INFO    ] ================================================
[2026-08-31 15:54:52,992.992 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:54:52
[2026-08-31 15:54:53,590.590 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:54:53,867.867 INFO    ] Initializing speech engine...
[2026-08-31 15:54:53,875.875 INFO    ] 2026-08-31 15:54:53
[2026-08-31 15:54:54,134.134 INFO    ] 2026-08-31 15:54:54
[2026-08-31 15:54:54,188.188 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:54:54,409.409 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:54:54,418.418 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:54:54,639.639 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:54:54,677.677 INFO    ] time= 31/08/2026 15:54:54
[2026-08-31 15:54:54,683.683 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:54:54,703.703 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:54:54,830.830 INFO    ] No existing commands found in stream
[2026-08-31 15:54:59,843.843 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:54:59,846.846 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-08-31 15:55:05,133.133 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 15:55:05,136.136 INFO    ] Checking for system updates...
[2026-08-31 15:55:05,175.175 INFO    ] 200
[2026-08-31 15:55:05,178.178 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:55:05,230.230 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:55:05,232.232 INFO    ] No update needed
[2026-08-31 15:55:05,235.235 INFO    ] Checking for camera pi updates...
[2026-08-31 15:55:05,268.268 INFO    ] 200
[2026-08-31 15:55:05,270.270 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:55:05,310.310 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:55:05,394.394 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:55:05,396.396 INFO    ] No camera update needed
[2026-08-31 15:55:05,399.399 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:55:05,401.401 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:55:05,406.406 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:55:05,411.411 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:55:07,451.451 INFO    ] ================================================
[2026-08-31 15:55:07,467.467 INFO    ] Launching Daemon at Mon Aug 31 15:55:07 IST 2026
[2026-08-31 15:55:07,477.477 INFO    ] ================================================
[2026-08-31 15:55:08,140.140 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:55:08
[2026-08-31 15:55:08,819.819 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:55:09,129.129 INFO    ] Initializing speech engine...
[2026-08-31 15:55:09,142.142 INFO    ] 2026-08-31 15:55:09
[2026-08-31 15:55:09,459.459 INFO    ] 2026-08-31 15:55:09
[2026-08-31 15:55:09,546.546 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:55:09,766.766 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:55:09,774.774 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:55:09,959.959 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:55:09,980.980 INFO    ] time= 31/08/2026 15:55:09
[2026-08-31 15:55:09,999.999 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:55:10,029.029 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:55:10,139.139 INFO    ] No existing commands found in stream
[2026-08-31 15:55:15,164.164 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:55:15,168.168 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-08-31 15:55:19,177.177 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 15:55:19,180.180 INFO    ] Checking for system updates...
[2026-08-31 15:55:19,217.217 INFO    ] 200
[2026-08-31 15:55:19,220.220 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:55:19,274.274 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:55:19,276.276 INFO    ] No update needed
[2026-08-31 15:55:19,279.279 INFO    ] Checking for camera pi updates...
[2026-08-31 15:55:19,314.314 INFO    ] 200
[2026-08-31 15:55:19,317.317 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:55:19,365.365 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:55:19,533.533 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:55:19,536.536 INFO    ] No camera update needed
[2026-08-31 15:55:19,539.539 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:55:19,542.542 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:55:19,548.548 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:55:19,554.554 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:55:21,597.597 INFO    ] ================================================
[2026-08-31 15:55:21,612.612 INFO    ] Launching Daemon at Mon Aug 31 15:55:21 IST 2026
[2026-08-31 15:55:21,624.624 INFO    ] ================================================
[2026-08-31 15:55:22,195.195 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:55:22
[2026-08-31 15:55:22,781.781 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:55:23,034.034 INFO    ] Initializing speech engine...
[2026-08-31 15:55:23,056.056 INFO    ] 2026-08-31 15:55:23
[2026-08-31 15:55:23,312.312 INFO    ] 2026-08-31 15:55:23
[2026-08-31 15:55:23,348.348 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:55:23,605.605 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:55:23,614.614 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:55:23,751.751 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:55:23,811.811 INFO    ] time= 31/08/2026 15:55:23
[2026-08-31 15:55:23,855.855 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:55:23,884.884 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:55:24,041.041 INFO    ] No existing commands found in stream
[2026-08-31 15:55:29,065.065 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:55:29,068.068 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-08-31 15:55:30,171.171 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 15:55:30,173.173 INFO    ] Checking for system updates...
[2026-08-31 15:55:30,211.211 INFO    ] 200
[2026-08-31 15:55:30,214.214 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:55:30,267.267 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:55:30,270.270 INFO    ] No update needed
[2026-08-31 15:55:30,272.272 INFO    ] Checking for camera pi updates...
[2026-08-31 15:55:30,307.307 INFO    ] 200
[2026-08-31 15:55:30,310.310 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:55:30,350.350 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:55:30,431.431 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:55:30,434.434 INFO    ] No camera update needed
[2026-08-31 15:55:30,436.436 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:55:30,439.439 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:55:30,444.444 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:55:30,449.449 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:55:32,492.492 INFO    ] ================================================
[2026-08-31 15:55:32,507.507 INFO    ] Launching Daemon at Mon Aug 31 15:55:32 IST 2026
[2026-08-31 15:55:32,519.519 INFO    ] ================================================
[2026-08-31 15:55:33,130.130 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:55:33
[2026-08-31 15:55:33,753.753 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:55:34,029.029 INFO    ] Initializing speech engine...
[2026-08-31 15:55:34,037.037 INFO    ] 2026-08-31 15:55:34
[2026-08-31 15:55:34,299.299 INFO    ] 2026-08-31 15:55:34
[2026-08-31 15:55:34,353.353 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:55:34,640.640 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:55:34,645.645 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:55:34,793.793 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:55:34,844.844 INFO    ] time= 31/08/2026 15:55:34
[2026-08-31 15:55:34,850.850 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:55:34,869.869 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:55:34,994.994 INFO    ] No existing commands found in stream
[2026-08-31 15:55:40,011.011 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:55:40,014.014 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-08-31 15:55:40,596.596 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 15:55:40,598.598 INFO    ] Checking for system updates...
[2026-08-31 15:55:40,634.634 INFO    ] 200
[2026-08-31 15:55:40,637.637 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:55:40,696.696 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:55:40,699.699 INFO    ] No update needed
[2026-08-31 15:55:40,701.701 INFO    ] Checking for camera pi updates...
[2026-08-31 15:55:40,735.735 INFO    ] 200
[2026-08-31 15:55:40,738.738 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:55:40,778.778 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:55:40,859.859 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:55:40,861.861 INFO    ] No camera update needed
[2026-08-31 15:55:40,864.864 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:55:40,866.866 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:55:40,872.872 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:55:40,877.877 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:55:42,918.918 INFO    ] ================================================
[2026-08-31 15:55:42,934.934 INFO    ] Launching Daemon at Mon Aug 31 15:55:42 IST 2026
[2026-08-31 15:55:42,945.945 INFO    ] ================================================
[2026-08-31 15:55:43,532.532 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:55:43
[2026-08-31 15:55:44,130.130 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:55:44,406.406 INFO    ] Initializing speech engine...
[2026-08-31 15:55:44,413.413 INFO    ] 2026-08-31 15:55:44
[2026-08-31 15:55:44,674.674 INFO    ] 2026-08-31 15:55:44
[2026-08-31 15:55:44,728.728 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:55:45,013.013 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:55:45,021.021 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:55:45,211.211 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:55:45,230.230 INFO    ] time= 31/08/2026 15:55:45
[2026-08-31 15:55:45,239.239 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:55:45,265.265 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:55:45,373.373 INFO    ] No existing commands found in stream
[2026-08-31 15:55:50,396.396 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:55:50,399.399 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-08-31 15:55:52,975.975 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 15:55:52,978.978 INFO    ] Checking for system updates...
[2026-08-31 15:55:53,013.013 INFO    ] 200
[2026-08-31 15:55:53,016.016 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:55:53,076.076 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:55:53,078.078 INFO    ] No update needed
[2026-08-31 15:55:53,081.081 INFO    ] Checking for camera pi updates...
[2026-08-31 15:55:53,114.114 INFO    ] 200
[2026-08-31 15:55:53,117.117 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:55:53,158.158 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:55:53,251.251 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:55:53,254.254 INFO    ] No camera update needed
[2026-08-31 15:55:53,256.256 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:55:53,259.259 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:55:53,264.264 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:55:53,269.269 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:55:55,311.311 INFO    ] ================================================
[2026-08-31 15:55:55,326.326 INFO    ] Launching Daemon at Mon Aug 31 15:55:55 IST 2026
[2026-08-31 15:55:55,337.337 INFO    ] ================================================
[2026-08-31 15:55:55,921.921 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:55:55
[2026-08-31 15:55:56,519.519 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:55:56,767.767 INFO    ] Initializing speech engine...
[2026-08-31 15:55:56,774.774 INFO    ] 2026-08-31 15:55:56
[2026-08-31 15:55:57,050.050 INFO    ] 2026-08-31 15:55:57
[2026-08-31 15:55:57,086.086 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:55:57,343.343 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:55:57,348.348 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:55:57,570.570 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:55:57,607.607 INFO    ] time= 31/08/2026 15:55:57
[2026-08-31 15:55:57,613.613 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:55:57,633.633 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:55:57,785.785 INFO    ] No existing commands found in stream
[2026-08-31 15:56:02,816.816 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:56:02,819.819 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-08-31 15:56:05,606.606 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 15:56:05,609.609 INFO    ] Checking for system updates...
[2026-08-31 15:56:05,650.650 INFO    ] 200
[2026-08-31 15:56:05,652.652 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:56:05,712.712 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:56:05,714.714 INFO    ] No update needed
[2026-08-31 15:56:05,716.716 INFO    ] Checking for camera pi updates...
[2026-08-31 15:56:05,750.750 INFO    ] 200
[2026-08-31 15:56:05,752.752 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:56:05,792.792 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:56:05,871.871 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:56:05,873.873 INFO    ] No camera update needed
[2026-08-31 15:56:05,876.876 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:56:05,878.878 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:56:05,884.884 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:56:05,889.889 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:56:07,930.930 INFO    ] ================================================
[2026-08-31 15:56:07,945.945 INFO    ] Launching Daemon at Mon Aug 31 15:56:07 IST 2026
[2026-08-31 15:56:07,956.956 INFO    ] ================================================
[2026-08-31 15:56:08,615.615 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:56:08
[2026-08-31 15:56:09,294.294 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:56:09,602.602 INFO    ] Initializing speech engine...
[2026-08-31 15:56:09,612.612 INFO    ] 2026-08-31 15:56:09
[2026-08-31 15:56:09,923.923 INFO    ] 2026-08-31 15:56:09
[2026-08-31 15:56:10,008.008 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:56:10,239.239 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:56:10,290.290 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:56:10,424.424 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:56:10,447.447 INFO    ] time= 31/08/2026 15:56:10
[2026-08-31 15:56:10,476.476 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:56:10,485.485 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:56:10,632.632 INFO    ] No existing commands found in stream
[2026-08-31 15:56:15,663.663 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:56:15,666.666 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-08-31 15:56:17,172.172 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 15:56:17,175.175 INFO    ] Checking for system updates...
[2026-08-31 15:56:17,216.216 INFO    ] 200
[2026-08-31 15:56:17,220.220 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:56:17,273.273 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:56:17,276.276 INFO    ] No update needed
[2026-08-31 15:56:17,279.279 INFO    ] Checking for camera pi updates...
[2026-08-31 15:56:17,314.314 INFO    ] 200
[2026-08-31 15:56:17,317.317 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:56:17,358.358 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:56:17,450.450 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:56:17,453.453 INFO    ] No camera update needed
[2026-08-31 15:56:17,456.456 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:56:17,458.458 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:56:17,465.465 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:56:17,471.471 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:56:19,514.514 INFO    ] ================================================
[2026-08-31 15:56:19,530.530 INFO    ] Launching Daemon at Mon Aug 31 15:56:19 IST 2026
[2026-08-31 15:56:19,542.542 INFO    ] ================================================
[2026-08-31 15:56:20,107.107 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:56:20
[2026-08-31 15:56:20,691.691 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:56:20,950.950 INFO    ] Initializing speech engine...
[2026-08-31 15:56:20,965.965 INFO    ] 2026-08-31 15:56:20
[2026-08-31 15:56:21,250.250 INFO    ] 2026-08-31 15:56:21
[2026-08-31 15:56:21,286.286 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:56:21,481.481 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:56:21,495.495 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:56:21,658.658 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:56:21,664.664 INFO    ] time= 31/08/2026 15:56:21
[2026-08-31 15:56:21,670.670 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:56:21,675.675 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:56:21,757.757 INFO    ] No existing commands found in stream
[2026-08-31 15:56:26,793.793 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:56:26,795.795 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-08-31 15:56:31,119.119 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 15:56:31,121.121 INFO    ] Checking for system updates...
[2026-08-31 15:56:31,157.157 INFO    ] 200
[2026-08-31 15:56:31,160.160 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:56:31,223.223 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:56:31,226.226 INFO    ] No update needed
[2026-08-31 15:56:31,229.229 INFO    ] Checking for camera pi updates...
[2026-08-31 15:56:31,273.273 INFO    ] 200
[2026-08-31 15:56:31,276.276 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:56:31,320.320 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:56:31,401.401 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:56:31,403.403 INFO    ] No camera update needed
[2026-08-31 15:56:31,406.406 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:56:31,409.409 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:56:31,415.415 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:56:31,421.421 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:56:33,464.464 INFO    ] ================================================
[2026-08-31 15:56:33,480.480 INFO    ] Launching Daemon at Mon Aug 31 15:56:33 IST 2026
[2026-08-31 15:56:33,491.491 INFO    ] ================================================
[2026-08-31 15:56:34,075.075 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:56:34
[2026-08-31 15:56:34,678.678 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:56:34,951.951 INFO    ] Initializing speech engine...
[2026-08-31 15:56:34,959.959 INFO    ] 2026-08-31 15:56:34
[2026-08-31 15:56:35,211.211 INFO    ] 2026-08-31 15:56:35
[2026-08-31 15:56:35,246.246 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:56:35,444.444 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:56:35,501.501 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:56:35,643.643 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:56:35,682.682 INFO    ] time= 31/08/2026 15:56:35
[2026-08-31 15:56:35,741.741 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:56:35,775.775 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:56:35,898.898 INFO    ] No existing commands found in stream
[2026-08-31 15:56:40,929.929 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:56:40,932.932 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-08-31 15:56:43,668.668 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 15:56:43,671.671 INFO    ] Checking for system updates...
[2026-08-31 15:56:43,710.710 INFO    ] 200
[2026-08-31 15:56:43,712.712 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:56:43,771.771 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:56:43,774.774 INFO    ] No update needed
[2026-08-31 15:56:43,776.776 INFO    ] Checking for camera pi updates...
[2026-08-31 15:56:43,813.813 INFO    ] 200
[2026-08-31 15:56:43,816.816 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:56:43,856.856 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:56:43,938.938 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:56:43,941.941 INFO    ] No camera update needed
[2026-08-31 15:56:43,943.943 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:56:43,945.945 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:56:43,951.951 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:56:43,956.956 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:56:46,997.997 INFO    ] ================================================
[2026-08-31 15:56:46,013.013 INFO    ] Launching Daemon at Mon Aug 31 15:56:46 IST 2026
[2026-08-31 15:56:46,024.024 INFO    ] ================================================
[2026-08-31 15:56:46,666.666 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:56:46
[2026-08-31 15:56:47,338.338 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:56:47,640.640 INFO    ] Initializing speech engine...
[2026-08-31 15:56:47,648.648 INFO    ] 2026-08-31 15:56:47
[2026-08-31 15:56:47,925.925 INFO    ] 2026-08-31 15:56:47
[2026-08-31 15:56:47,984.984 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:56:48,215.215 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:56:48,221.221 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:56:48,464.464 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:56:48,485.485 INFO    ] time= 31/08/2026 15:56:48
[2026-08-31 15:56:48,492.492 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:56:48,510.510 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:56:48,645.645 INFO    ] No existing commands found in stream
[2026-08-31 15:56:53,665.665 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:56:53,669.669 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-08-31 15:56:55,389.389 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 15:56:55,392.392 INFO    ] Checking for system updates...
[2026-08-31 15:56:55,428.428 INFO    ] 200
[2026-08-31 15:56:55,430.430 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:56:55,486.486 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:56:55,488.488 INFO    ] No update needed
[2026-08-31 15:56:55,491.491 INFO    ] Checking for camera pi updates...
[2026-08-31 15:56:55,524.524 INFO    ] 200
[2026-08-31 15:56:55,526.526 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:56:55,566.566 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:56:55,655.655 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:56:55,657.657 INFO    ] No camera update needed
[2026-08-31 15:56:55,659.659 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:56:55,662.662 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:56:55,667.667 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:56:55,672.672 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:56:57,711.711 INFO    ] ================================================
[2026-08-31 15:56:57,727.727 INFO    ] Launching Daemon at Mon Aug 31 15:56:57 IST 2026
[2026-08-31 15:56:57,738.738 INFO    ] ================================================
[2026-08-31 15:56:58,310.310 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:56:58
[2026-08-31 15:56:58,898.898 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:56:59,147.147 INFO    ] Initializing speech engine...
[2026-08-31 15:56:59,169.169 INFO    ] 2026-08-31 15:56:59
[2026-08-31 15:56:59,426.426 INFO    ] 2026-08-31 15:56:59
[2026-08-31 15:56:59,461.461 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:56:59,639.639 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:56:59,651.651 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:56:59,780.780 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:56:59,799.799 INFO    ] time= 31/08/2026 15:56:59
[2026-08-31 15:56:59,825.825 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:56:59,830.830 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:56:59,940.940 INFO    ] No existing commands found in stream
[2026-08-31 15:57:04,970.970 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:57:04,973.973 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-08-31 15:57:07,470.470 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 15:57:07,622.622 INFO    ] Checking for system updates...
[2026-08-31 15:57:07,658.658 INFO    ] 200
[2026-08-31 15:57:07,661.661 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:57:07,714.714 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:57:07,716.716 INFO    ] No update needed
[2026-08-31 15:57:07,719.719 INFO    ] Checking for camera pi updates...
[2026-08-31 15:57:07,752.752 INFO    ] 200
[2026-08-31 15:57:07,755.755 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:57:07,800.800 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:57:07,889.889 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:57:07,892.892 INFO    ] No camera update needed
[2026-08-31 15:57:07,894.894 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:57:07,896.896 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:57:07,901.901 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:57:07,906.906 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:57:09,948.948 INFO    ] ================================================
[2026-08-31 15:57:09,964.964 INFO    ] Launching Daemon at Mon Aug 31 15:57:09 IST 2026
[2026-08-31 15:57:09,975.975 INFO    ] ================================================
[2026-08-31 15:57:10,548.548 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:57:10
[2026-08-31 15:57:11,132.132 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:57:11,399.399 INFO    ] Initializing speech engine...
[2026-08-31 15:57:11,408.408 INFO    ] 2026-08-31 15:57:11
[2026-08-31 15:57:11,654.654 INFO    ] 2026-08-31 15:57:11
[2026-08-31 15:57:11,689.689 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:57:11,941.941 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:57:11,951.951 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:57:12,149.149 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:57:12,204.204 INFO    ] time= 31/08/2026 15:57:12
[2026-08-31 15:57:12,214.214 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:57:12,232.232 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:57:12,382.382 INFO    ] No existing commands found in stream
[2026-08-31 15:57:17,413.413 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:57:17,415.415 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-08-31 15:57:21,635.635 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 15:57:21,638.638 INFO    ] Checking for system updates...
[2026-08-31 15:57:21,679.679 INFO    ] 200
[2026-08-31 15:57:21,682.682 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:57:21,748.748 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:57:21,751.751 INFO    ] No update needed
[2026-08-31 15:57:21,754.754 INFO    ] Checking for camera pi updates...
[2026-08-31 15:57:21,789.789 INFO    ] 200
[2026-08-31 15:57:21,791.791 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:57:21,838.838 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:57:22,020.020 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:57:22,023.023 INFO    ] No camera update needed
[2026-08-31 15:57:22,026.026 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:57:22,029.029 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:57:22,035.035 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:57:22,041.041 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:57:24,083.083 INFO    ] ================================================
[2026-08-31 15:57:24,098.098 INFO    ] Launching Daemon at Mon Aug 31 15:57:24 IST 2026
[2026-08-31 15:57:24,109.109 INFO    ] ================================================
[2026-08-31 15:57:24,768.768 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:57:24
[2026-08-31 15:57:25,446.446 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:57:25,752.752 INFO    ] Initializing speech engine...
[2026-08-31 15:57:25,761.761 INFO    ] 2026-08-31 15:57:25
[2026-08-31 15:57:26,047.047 INFO    ] 2026-08-31 15:57:26
[2026-08-31 15:57:26,092.092 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:57:26,341.341 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:57:26,361.361 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:57:26,576.576 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:57:26,594.594 INFO    ] time= 31/08/2026 15:57:26
[2026-08-31 15:57:26,604.604 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:57:26,630.630 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:57:26,739.739 INFO    ] No existing commands found in stream
[2026-08-31 15:57:31,773.773 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:57:31,777.777 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-08-31 15:57:35,878.878 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 15:57:35,881.881 INFO    ] Checking for system updates...
[2026-08-31 15:57:35,918.918 INFO    ] 200
[2026-08-31 15:57:35,921.921 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:57:35,981.981 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:57:35,984.984 INFO    ] No update needed
[2026-08-31 15:57:35,986.986 INFO    ] Checking for camera pi updates...
[2026-08-31 15:57:36,024.024 INFO    ] 200
[2026-08-31 15:57:36,028.028 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:57:36,069.069 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:57:36,170.170 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:57:36,172.172 INFO    ] No camera update needed
[2026-08-31 15:57:36,175.175 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:57:36,178.178 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:57:36,184.184 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:57:36,190.190 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:57:38,233.233 INFO    ] ================================================
[2026-08-31 15:57:38,248.248 INFO    ] Launching Daemon at Mon Aug 31 15:57:38 IST 2026
[2026-08-31 15:57:38,259.259 INFO    ] ================================================
[2026-08-31 15:57:38,841.841 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:57:38
[2026-08-31 15:57:39,434.434 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:57:39,700.700 INFO    ] Initializing speech engine...
[2026-08-31 15:57:39,709.709 INFO    ] 2026-08-31 15:57:39
[2026-08-31 15:57:39,955.955 INFO    ] 2026-08-31 15:57:39
[2026-08-31 15:57:39,991.991 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:57:40,245.245 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:57:40,252.252 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:57:40,477.477 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:57:40,508.508 INFO    ] time= 31/08/2026 15:57:40
[2026-08-31 15:57:40,524.524 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:57:40,532.532 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:57:40,661.661 INFO    ] No existing commands found in stream
[2026-08-31 15:57:45,689.689 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:57:45,692.692 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-08-31 15:57:48,204.204 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 15:57:48,206.206 INFO    ] Checking for system updates...
[2026-08-31 15:57:48,242.242 INFO    ] 200
[2026-08-31 15:57:48,245.245 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:57:48,298.298 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:57:48,301.301 INFO    ] No update needed
[2026-08-31 15:57:48,303.303 INFO    ] Checking for camera pi updates...
[2026-08-31 15:57:48,341.341 INFO    ] 200
[2026-08-31 15:57:48,344.344 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:57:48,385.385 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:57:48,471.471 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:57:48,474.474 INFO    ] No camera update needed
[2026-08-31 15:57:48,476.476 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:57:48,479.479 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:57:48,487.487 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:57:48,493.493 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:57:50,535.535 INFO    ] ================================================
[2026-08-31 15:57:50,551.551 INFO    ] Launching Daemon at Mon Aug 31 15:57:50 IST 2026
[2026-08-31 15:57:50,562.562 INFO    ] ================================================
[2026-08-31 15:57:51,208.208 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:57:51
[2026-08-31 15:57:51,874.874 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:57:52,181.181 INFO    ] Initializing speech engine...
[2026-08-31 15:57:52,192.192 INFO    ] 2026-08-31 15:57:52
[2026-08-31 15:57:52,501.501 INFO    ] 2026-08-31 15:57:52
[2026-08-31 15:57:52,584.584 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:57:52,860.860 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:57:52,887.887 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:57:53,123.123 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:57:53,159.159 INFO    ] time= 31/08/2026 15:57:53
[2026-08-31 15:57:53,224.224 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:57:53,251.251 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:57:53,397.397 INFO    ] No existing commands found in stream
[2026-08-31 15:57:58,411.411 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:57:58,414.414 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-08-31 15:58:00,469.469 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 15:58:00,472.472 INFO    ] Checking for system updates...
[2026-08-31 15:58:00,509.509 INFO    ] 200
[2026-08-31 15:58:00,511.511 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:58:00,565.565 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:58:00,568.568 INFO    ] No update needed
[2026-08-31 15:58:00,571.571 INFO    ] Checking for camera pi updates...
[2026-08-31 15:58:00,609.609 INFO    ] 200
[2026-08-31 15:58:00,612.612 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:58:00,658.658 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:58:00,748.748 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:58:00,751.751 INFO    ] No camera update needed
[2026-08-31 15:58:00,754.754 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:58:00,756.756 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:58:00,763.763 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:58:00,768.768 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:58:02,814.814 INFO    ] ================================================
[2026-08-31 15:58:02,832.832 INFO    ] Launching Daemon at Mon Aug 31 15:58:02 IST 2026
[2026-08-31 15:58:02,847.847 INFO    ] ================================================
[2026-08-31 15:58:03,436.436 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:58:03
[2026-08-31 15:58:04,020.020 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:58:04,293.293 INFO    ] Initializing speech engine...
[2026-08-31 15:58:04,302.302 INFO    ] 2026-08-31 15:58:04
[2026-08-31 15:58:04,549.549 INFO    ] 2026-08-31 15:58:04
[2026-08-31 15:58:04,584.584 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:58:04,835.835 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:58:04,844.844 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:58:04,975.975 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:58:05,017.017 INFO    ] time= 31/08/2026 15:58:04
[2026-08-31 15:58:05,082.082 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:58:05,109.109 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:58:05,242.242 INFO    ] No existing commands found in stream
[2026-08-31 15:58:10,268.268 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:58:10,271.271 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-08-31 15:58:14,468.468 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 15:58:14,471.471 INFO    ] Checking for system updates...
[2026-08-31 15:58:14,506.506 INFO    ] 200
[2026-08-31 15:58:14,508.508 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:58:14,563.563 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:58:14,566.566 INFO    ] No update needed
[2026-08-31 15:58:14,568.568 INFO    ] Checking for camera pi updates...
[2026-08-31 15:58:14,601.601 INFO    ] 200
[2026-08-31 15:58:14,604.604 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:58:14,645.645 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:58:14,730.730 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:58:14,732.732 INFO    ] No camera update needed
[2026-08-31 15:58:14,734.734 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:58:14,736.736 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:58:14,742.742 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:58:14,747.747 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:58:16,788.788 INFO    ] ================================================
[2026-08-31 15:58:16,803.803 INFO    ] Launching Daemon at Mon Aug 31 15:58:16 IST 2026
[2026-08-31 15:58:16,813.813 INFO    ] ================================================
[2026-08-31 15:58:17,395.395 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:58:17
[2026-08-31 15:58:17,982.982 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:58:18,237.237 INFO    ] Initializing speech engine...
[2026-08-31 15:58:18,244.244 INFO    ] 2026-08-31 15:58:18
[2026-08-31 15:58:18,530.530 INFO    ] 2026-08-31 15:58:18
[2026-08-31 15:58:18,567.567 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:58:18,787.787 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:58:18,850.850 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:58:19,004.004 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:58:19,010.010 INFO    ] time= 31/08/2026 15:58:19
[2026-08-31 15:58:19,080.080 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:58:19,129.129 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:58:19,263.263 INFO    ] No existing commands found in stream
[2026-08-31 15:58:24,289.289 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:58:24,291.291 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-08-31 15:58:26,628.628 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 15:58:26,631.631 INFO    ] Checking for system updates...
[2026-08-31 15:58:26,666.666 INFO    ] 200
[2026-08-31 15:58:26,669.669 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:58:26,722.722 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:58:26,724.724 INFO    ] No update needed
[2026-08-31 15:58:26,726.726 INFO    ] Checking for camera pi updates...
[2026-08-31 15:58:26,763.763 INFO    ] 200
[2026-08-31 15:58:26,766.766 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:58:26,810.810 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:58:26,882.882 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:58:26,885.885 INFO    ] No camera update needed
[2026-08-31 15:58:26,887.887 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:58:26,890.890 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:58:26,895.895 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:58:26,900.900 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:58:28,941.941 INFO    ] ================================================
[2026-08-31 15:58:28,955.955 INFO    ] Launching Daemon at Mon Aug 31 15:58:28 IST 2026
[2026-08-31 15:58:28,966.966 INFO    ] ================================================
[2026-08-31 15:58:29,535.535 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:58:29
[2026-08-31 15:58:30,125.125 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:58:30,382.382 INFO    ] Initializing speech engine...
[2026-08-31 15:58:30,396.396 INFO    ] 2026-08-31 15:58:30
[2026-08-31 15:58:30,676.676 INFO    ] 2026-08-31 15:58:30
[2026-08-31 15:58:30,715.715 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:58:30,916.916 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:58:30,934.934 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:58:31,154.154 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:58:31,160.160 INFO    ] time= 31/08/2026 15:58:31
[2026-08-31 15:58:31,209.209 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:58:31,249.249 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:58:31,349.349 INFO    ] No existing commands found in stream
[2026-08-31 15:58:36,381.381 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:58:36,384.384 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-08-31 15:58:39,723.723 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 15:58:39,725.725 INFO    ] Checking for system updates...
[2026-08-31 15:58:39,761.761 INFO    ] 200
[2026-08-31 15:58:39,763.763 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:58:39,815.815 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:58:39,818.818 INFO    ] No update needed
[2026-08-31 15:58:39,820.820 INFO    ] Checking for camera pi updates...
[2026-08-31 15:58:39,854.854 INFO    ] 200
[2026-08-31 15:58:39,856.856 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:58:39,897.897 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:58:39,992.992 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:58:39,994.994 INFO    ] No camera update needed
[2026-08-31 15:58:39,996.996 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:58:39,999.999 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:58:40,004.004 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:58:40,009.009 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:58:42,048.048 INFO    ] ================================================
[2026-08-31 15:58:42,063.063 INFO    ] Launching Daemon at Mon Aug 31 15:58:42 IST 2026
[2026-08-31 15:58:42,074.074 INFO    ] ================================================
[2026-08-31 15:58:42,704.704 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:58:42
[2026-08-31 15:58:43,353.353 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:58:43,649.649 INFO    ] Initializing speech engine...
[2026-08-31 15:58:43,659.659 INFO    ] 2026-08-31 15:58:43
[2026-08-31 15:58:43,930.930 INFO    ] 2026-08-31 15:58:43
[2026-08-31 15:58:43,986.986 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:58:44,215.215 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:58:44,225.225 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:58:44,534.534 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:58:44,543.543 INFO    ] time= 31/08/2026 15:58:44
[2026-08-31 15:58:44,594.594 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:58:44,645.645 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:58:44,751.751 INFO    ] No existing commands found in stream
[2026-08-31 15:58:49,781.781 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:58:49,784.784 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-08-31 15:58:53,962.962 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 15:58:53,965.965 INFO    ] Checking for system updates...
[2026-08-31 15:58:54,000.000 INFO    ] 200
[2026-08-31 15:58:54,003.003 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:58:54,055.055 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:58:54,057.057 INFO    ] No update needed
[2026-08-31 15:58:54,059.059 INFO    ] Checking for camera pi updates...
[2026-08-31 15:58:54,093.093 INFO    ] 200
[2026-08-31 15:58:54,095.095 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:58:54,138.138 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:58:54,241.241 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 15:58:54,244.244 INFO    ] No camera update needed
[2026-08-31 15:58:54,246.246 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:58:54,248.248 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:58:54,254.254 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:58:54,259.259 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:58:56,304.304 INFO    ] ================================================
[2026-08-31 15:58:56,319.319 INFO    ] Launching Daemon at Mon Aug 31 15:58:56 IST 2026
[2026-08-31 15:58:56,329.329 INFO    ] ================================================
[2026-08-31 15:58:56,895.895 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:58:56
[2026-08-31 15:58:57,493.493 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:58:57,766.766 INFO    ] Initializing speech engine...
[2026-08-31 15:58:57,776.776 INFO    ] 2026-08-31 15:58:57
[2026-08-31 15:58:58,038.038 INFO    ] 2026-08-31 15:58:58
[2026-08-31 15:58:58,073.073 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:58:58,290.290 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:58:58,303.303 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:58:58,510.510 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:58:58,517.517 INFO    ] time= 31/08/2026 15:58:58
[2026-08-31 15:58:58,557.557 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:58:58,606.606 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:58:58,714.714 INFO    ] No existing commands found in stream
[2026-08-31 15:59:03,726.726 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:59:03,729.729 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-08-31 15:59:05,674.674 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 15:59:05,677.677 INFO    ] Checking for system updates...
[2026-08-31 15:59:05,713.713 INFO    ] 200
[2026-08-31 15:59:05,715.715 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:59:05,775.775 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:59:05,778.778 INFO    ] No update needed
[2026-08-31 15:59:05,781.781 INFO    ] Checking for camera pi updates...
[2026-08-31 15:59:05,818.818 INFO    ] 200
[2026-08-31 15:59:05,821.821 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:59:05,861.861 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:59:05,911.911 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:59:05,914.914 INFO    ] No camera update needed
[2026-08-31 15:59:05,916.916 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:59:05,918.918 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:59:05,924.924 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:59:05,929.929 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:59:07,969.969 INFO    ] ================================================
[2026-08-31 15:59:07,984.984 INFO    ] Launching Daemon at Mon Aug 31 15:59:07 IST 2026
[2026-08-31 15:59:08,995.995 INFO    ] ================================================
[2026-08-31 15:59:08,569.569 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:59:08
[2026-08-31 15:59:09,160.160 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:59:09,418.418 INFO    ] Initializing speech engine...
[2026-08-31 15:59:09,434.434 INFO    ] 2026-08-31 15:59:09
[2026-08-31 15:59:09,721.721 INFO    ] 2026-08-31 15:59:09
[2026-08-31 15:59:09,759.759 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:59:10,365.365 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:59:10,391.391 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:59:10,599.599 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:59:10,640.640 INFO    ] time= 31/08/2026 15:59:10
[2026-08-31 15:59:10,696.696 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:59:10,757.757 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:59:10,873.873 INFO    ] No existing commands found in stream
[2026-08-31 15:59:15,883.883 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:59:15,886.886 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-08-31 15:59:16,785.785 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 15:59:16,788.788 INFO    ] Checking for system updates...
[2026-08-31 15:59:16,824.824 INFO    ] 200
[2026-08-31 15:59:16,826.826 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:59:16,879.879 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:59:16,882.882 INFO    ] No update needed
[2026-08-31 15:59:16,884.884 INFO    ] Checking for camera pi updates...
[2026-08-31 15:59:16,918.918 INFO    ] 200
[2026-08-31 15:59:16,920.920 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:59:16,961.961 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:59:17,010.010 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:59:17,013.013 INFO    ] No camera update needed
[2026-08-31 15:59:17,015.015 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:59:17,018.018 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:59:17,023.023 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:59:17,028.028 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:59:19,069.069 INFO    ] ================================================
[2026-08-31 15:59:19,084.084 INFO    ] Launching Daemon at Mon Aug 31 15:59:19 IST 2026
[2026-08-31 15:59:19,095.095 INFO    ] ================================================
[2026-08-31 15:59:19,751.751 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:59:19
[2026-08-31 15:59:20,432.432 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:59:20,737.737 INFO    ] Initializing speech engine...
[2026-08-31 15:59:20,751.751 INFO    ] 2026-08-31 15:59:20
[2026-08-31 15:59:21,061.061 INFO    ] 2026-08-31 15:59:21
[2026-08-31 15:59:21,146.146 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:59:21,360.360 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:59:21,365.365 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:59:21,549.549 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:59:21,564.564 INFO    ] time= 31/08/2026 15:59:21
[2026-08-31 15:59:21,582.582 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:59:21,592.592 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:59:21,739.739 INFO    ] No existing commands found in stream
[2026-08-31 15:59:26,770.770 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:59:26,773.773 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-08-31 15:59:29,827.827 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 15:59:29,830.830 INFO    ] Checking for system updates...
[2026-08-31 15:59:29,867.867 INFO    ] 200
[2026-08-31 15:59:29,870.870 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:59:29,923.923 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:59:29,926.926 INFO    ] No update needed
[2026-08-31 15:59:29,929.929 INFO    ] Checking for camera pi updates...
[2026-08-31 15:59:29,964.964 INFO    ] 200
[2026-08-31 15:59:29,967.967 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:59:30,010.010 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:59:30,191.191 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:59:30,194.194 INFO    ] No camera update needed
[2026-08-31 15:59:30,196.196 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:59:30,199.199 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:59:30,206.206 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:59:30,212.212 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:59:32,254.254 INFO    ] ================================================
[2026-08-31 15:59:32,270.270 INFO    ] Launching Daemon at Mon Aug 31 15:59:32 IST 2026
[2026-08-31 15:59:32,282.282 INFO    ] ================================================
[2026-08-31 15:59:32,893.893 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:59:32
[2026-08-31 15:59:33,520.520 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:59:33,785.785 INFO    ] Initializing speech engine...
[2026-08-31 15:59:33,794.794 INFO    ] 2026-08-31 15:59:33
[2026-08-31 15:59:34,094.094 INFO    ] 2026-08-31 15:59:34
[2026-08-31 15:59:34,120.120 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:59:34,334.334 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:59:34,350.350 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:59:34,516.516 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:59:34,526.526 INFO    ] time= 31/08/2026 15:59:34
[2026-08-31 15:59:34,533.533 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:59:34,584.584 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:59:34,710.710 INFO    ] No existing commands found in stream
[2026-08-31 15:59:39,741.741 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:59:39,743.743 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-08-31 15:59:41,915.915 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 15:59:41,917.917 INFO    ] Checking for system updates...
[2026-08-31 15:59:41,953.953 INFO    ] 200
[2026-08-31 15:59:41,955.955 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:59:42,015.015 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:59:42,017.017 INFO    ] No update needed
[2026-08-31 15:59:42,020.020 INFO    ] Checking for camera pi updates...
[2026-08-31 15:59:42,058.058 INFO    ] 200
[2026-08-31 15:59:42,061.061 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:59:42,107.107 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:59:42,197.197 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:59:42,199.199 INFO    ] No camera update needed
[2026-08-31 15:59:42,202.202 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:59:42,204.204 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:59:42,209.209 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:59:42,214.214 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:59:44,254.254 INFO    ] ================================================
[2026-08-31 15:59:44,270.270 INFO    ] Launching Daemon at Mon Aug 31 15:59:44 IST 2026
[2026-08-31 15:59:44,281.281 INFO    ] ================================================
[2026-08-31 15:59:44,944.944 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:59:44
[2026-08-31 15:59:45,630.630 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 15:59:45,948.948 INFO    ] Initializing speech engine...
[2026-08-31 15:59:45,956.956 INFO    ] 2026-08-31 15:59:45
[2026-08-31 15:59:46,238.238 INFO    ] 2026-08-31 15:59:46
[2026-08-31 15:59:46,349.349 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 15:59:46,627.627 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 15:59:46,670.670 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 15:59:46,857.857 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 15:59:46,915.915 INFO    ] time= 31/08/2026 15:59:46
[2026-08-31 15:59:46,980.980 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 15:59:47,022.022 INFO    ] Checking for existing commands in stream...
[2026-08-31 15:59:47,169.169 INFO    ] No existing commands found in stream
[2026-08-31 15:59:52,186.186 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 15:59:52,190.190 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-08-31 15:59:56,244.244 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 15:59:56,248.248 INFO    ] Checking for system updates...
[2026-08-31 15:59:56,285.285 INFO    ] 200
[2026-08-31 15:59:56,288.288 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:59:56,341.341 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:59:56,344.344 INFO    ] No update needed
[2026-08-31 15:59:56,347.347 INFO    ] Checking for camera pi updates...
[2026-08-31 15:59:56,383.383 INFO    ] 200
[2026-08-31 15:59:56,385.385 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 15:59:56,428.428 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 15:59:56,528.528 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 15:59:56,531.531 INFO    ] No camera update needed
[2026-08-31 15:59:56,534.534 INFO    ] Script finished. Safe exiting...
[2026-08-31 15:59:56,536.536 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 15:59:56,543.543 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 15:59:56,549.549 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 15:59:58,593.593 INFO    ] ================================================
[2026-08-31 15:59:58,608.608 INFO    ] Launching Daemon at Mon Aug 31 15:59:58 IST 2026
[2026-08-31 15:59:58,619.619 INFO    ] ================================================
[2026-08-31 15:59:59,187.187 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 15:59:59
[2026-08-31 15:59:59,771.771 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:00:00,039.039 INFO    ] Initializing speech engine...
[2026-08-31 16:00:00,048.048 INFO    ] 2026-08-31 16:00:00
[2026-08-31 16:00:00,298.298 INFO    ] 2026-08-31 16:00:00
[2026-08-31 16:00:00,363.363 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:00:00,593.593 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:00:00,599.599 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:00:00,734.734 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:00:00,794.794 INFO    ] time= 31/08/2026 16:00:00
[2026-08-31 16:00:00,843.843 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:00:00,868.868 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:00:01,313.313 INFO    ] No existing commands found in stream
[2026-08-31 16:00:06,321.321 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:00:06,324.324 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-08-31 16:00:11,189.189 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 16:00:11,192.192 INFO    ] Checking for system updates...
[2026-08-31 16:00:11,230.230 INFO    ] 200
[2026-08-31 16:00:11,233.233 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:00:11,286.286 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:00:11,290.290 INFO    ] No update needed
[2026-08-31 16:00:11,292.292 INFO    ] Checking for camera pi updates...
[2026-08-31 16:00:11,331.331 INFO    ] 200
[2026-08-31 16:00:11,334.334 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:00:11,376.376 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:00:11,483.483 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:00:11,485.485 INFO    ] No camera update needed
[2026-08-31 16:00:11,488.488 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:00:11,491.491 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:00:11,497.497 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:00:11,503.503 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:00:13,546.546 INFO    ] ================================================
[2026-08-31 16:00:13,560.560 INFO    ] Launching Daemon at Mon Aug 31 16:00:13 IST 2026
[2026-08-31 16:00:13,571.571 INFO    ] ================================================
[2026-08-31 16:00:14,152.152 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:00:14
[2026-08-31 16:00:14,750.750 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:00:15,051.051 INFO    ] Initializing speech engine...
[2026-08-31 16:00:15,059.059 INFO    ] 2026-08-31 16:00:15
[2026-08-31 16:00:15,318.318 INFO    ] 2026-08-31 16:00:15
[2026-08-31 16:00:15,354.354 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:00:15,624.624 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:00:15,634.634 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:00:15,772.772 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:00:15,799.799 INFO    ] time= 31/08/2026 16:00:15
[2026-08-31 16:00:15,854.854 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:00:15,909.909 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:00:16,037.037 INFO    ] No existing commands found in stream
[2026-08-31 16:00:21,062.062 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:00:21,065.065 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-08-31 16:00:26,233.233 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 16:00:26,235.235 INFO    ] Checking for system updates...
[2026-08-31 16:00:26,272.272 INFO    ] 200
[2026-08-31 16:00:26,275.275 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:00:26,330.330 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:00:26,332.332 INFO    ] No update needed
[2026-08-31 16:00:26,335.335 INFO    ] Checking for camera pi updates...
[2026-08-31 16:00:26,371.371 INFO    ] 200
[2026-08-31 16:00:26,373.373 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:00:26,414.414 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:00:26,498.498 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:00:26,502.502 INFO    ] No camera update needed
[2026-08-31 16:00:26,505.505 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:00:26,508.508 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:00:26,514.514 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:00:26,520.520 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:00:28,562.562 INFO    ] ================================================
[2026-08-31 16:00:28,577.577 INFO    ] Launching Daemon at Mon Aug 31 16:00:28 IST 2026
[2026-08-31 16:00:28,588.588 INFO    ] ================================================
[2026-08-31 16:00:29,167.167 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:00:29
[2026-08-31 16:00:29,765.765 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:00:30,027.027 INFO    ] Initializing speech engine...
[2026-08-31 16:00:30,041.041 INFO    ] 2026-08-31 16:00:30
[2026-08-31 16:00:30,332.332 INFO    ] 2026-08-31 16:00:30
[2026-08-31 16:00:30,370.370 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:00:30,599.599 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:00:30,628.628 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:00:30,825.825 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:00:30,833.833 INFO    ] time= 31/08/2026 16:00:30
[2026-08-31 16:00:30,887.887 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:00:30,942.942 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:00:31,036.036 INFO    ] No existing commands found in stream
[2026-08-31 16:00:36,048.048 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:00:36,051.051 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-08-31 16:00:38,790.790 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 16:00:38,792.792 INFO    ] Checking for system updates...
[2026-08-31 16:00:38,828.828 INFO    ] 200
[2026-08-31 16:00:38,831.831 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:00:38,885.885 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:00:38,887.887 INFO    ] No update needed
[2026-08-31 16:00:38,890.890 INFO    ] Checking for camera pi updates...
[2026-08-31 16:00:38,928.928 INFO    ] 200
[2026-08-31 16:00:38,931.931 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:00:38,976.976 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:00:39,057.057 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:00:39,060.060 INFO    ] No camera update needed
[2026-08-31 16:00:39,062.062 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:00:39,064.064 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:00:39,070.070 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:00:39,076.076 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:00:41,117.117 INFO    ] ================================================
[2026-08-31 16:00:41,132.132 INFO    ] Launching Daemon at Mon Aug 31 16:00:41 IST 2026
[2026-08-31 16:00:41,142.142 INFO    ] ================================================
[2026-08-31 16:00:41,796.796 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:00:41
[2026-08-31 16:00:42,471.471 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:00:42,773.773 INFO    ] Initializing speech engine...
[2026-08-31 16:00:42,786.786 INFO    ] 2026-08-31 16:00:42
[2026-08-31 16:00:43,100.100 INFO    ] 2026-08-31 16:00:43
[2026-08-31 16:00:43,186.186 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:00:43,746.746 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:00:43,819.819 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:00:44,978.978 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:00:44,999.999 INFO    ] time= 31/08/2026 16:00:44
[2026-08-31 16:00:45,006.006 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:00:45,014.014 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:00:45,768.768 INFO    ] No existing commands found in stream
[2026-08-31 16:00:50,794.794 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:00:50,798.798 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-08-31 16:00:53,198.198 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 16:00:53,201.201 INFO    ] Checking for system updates...
[2026-08-31 16:00:53,241.241 INFO    ] 200
[2026-08-31 16:00:53,243.243 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:00:53,295.295 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:00:53,298.298 INFO    ] No update needed
[2026-08-31 16:00:53,300.300 INFO    ] Checking for camera pi updates...
[2026-08-31 16:00:53,335.335 INFO    ] 200
[2026-08-31 16:00:53,337.337 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:00:53,379.379 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:00:53,460.460 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:00:53,462.462 INFO    ] No camera update needed
[2026-08-31 16:00:53,464.464 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:00:53,467.467 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:00:53,472.472 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:00:53,477.477 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:00:55,520.520 INFO    ] ================================================
[2026-08-31 16:00:55,537.537 INFO    ] Launching Daemon at Mon Aug 31 16:00:55 IST 2026
[2026-08-31 16:00:55,549.549 INFO    ] ================================================
[2026-08-31 16:00:56,204.204 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:00:56
[2026-08-31 16:00:56,872.872 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:00:57,177.177 INFO    ] Initializing speech engine...
[2026-08-31 16:00:57,189.189 INFO    ] 2026-08-31 16:00:57
[2026-08-31 16:00:57,468.468 INFO    ] 2026-08-31 16:00:57
[2026-08-31 16:00:57,513.513 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:00:57,798.798 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:00:57,803.803 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:00:57,998.998 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:00:58,005.005 INFO    ] time= 31/08/2026 16:00:58
[2026-08-31 16:00:58,026.026 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:00:58,054.054 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:00:58,158.158 INFO    ] No existing commands found in stream
[2026-08-31 16:01:03,171.171 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:01:03,175.175 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-08-31 16:01:07,438.438 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 16:01:07,441.441 INFO    ] Checking for system updates...
[2026-08-31 16:01:07,477.477 INFO    ] 200
[2026-08-31 16:01:07,480.480 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:01:07,533.533 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:01:07,536.536 INFO    ] No update needed
[2026-08-31 16:01:07,539.539 INFO    ] Checking for camera pi updates...
[2026-08-31 16:01:07,573.573 INFO    ] 200
[2026-08-31 16:01:07,575.575 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:01:07,617.617 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:01:07,668.668 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:01:07,671.671 INFO    ] No camera update needed
[2026-08-31 16:01:07,673.673 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:01:07,676.676 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:01:07,682.682 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:01:07,688.688 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:01:09,728.728 INFO    ] ================================================
[2026-08-31 16:01:09,743.743 INFO    ] Launching Daemon at Mon Aug 31 16:01:09 IST 2026
[2026-08-31 16:01:09,754.754 INFO    ] ================================================
[2026-08-31 16:01:10,332.332 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:01:10
[2026-08-31 16:01:10,928.928 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:01:11,205.205 INFO    ] Initializing speech engine...
[2026-08-31 16:01:11,213.213 INFO    ] 2026-08-31 16:01:11
[2026-08-31 16:01:11,472.472 INFO    ] 2026-08-31 16:01:11
[2026-08-31 16:01:11,525.525 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:01:11,751.751 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:01:11,757.757 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:01:11,886.886 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:01:11,938.938 INFO    ] time= 31/08/2026 16:01:11
[2026-08-31 16:01:11,993.993 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:01:12,021.021 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:01:12,156.156 INFO    ] No existing commands found in stream
[2026-08-31 16:01:17,177.177 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:01:17,180.180 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-08-31 16:01:19,115.115 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 16:01:19,118.118 INFO    ] Checking for system updates...
[2026-08-31 16:01:19,157.157 INFO    ] 200
[2026-08-31 16:01:19,160.160 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:01:19,213.213 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:01:19,215.215 INFO    ] No update needed
[2026-08-31 16:01:19,221.221 INFO    ] Checking for camera pi updates...
[2026-08-31 16:01:19,255.255 INFO    ] 200
[2026-08-31 16:01:19,259.259 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:01:19,303.303 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:01:19,396.396 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:01:19,399.399 INFO    ] No camera update needed
[2026-08-31 16:01:19,401.401 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:01:19,404.404 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:01:19,409.409 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:01:19,414.414 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:01:21,453.453 INFO    ] ================================================
[2026-08-31 16:01:21,468.468 INFO    ] Launching Daemon at Mon Aug 31 16:01:21 IST 2026
[2026-08-31 16:01:21,479.479 INFO    ] ================================================
[2026-08-31 16:01:22,044.044 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:01:22
[2026-08-31 16:01:22,624.624 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:01:22,892.892 INFO    ] Initializing speech engine...
[2026-08-31 16:01:22,903.903 INFO    ] 2026-08-31 16:01:22
[2026-08-31 16:01:23,206.206 INFO    ] 2026-08-31 16:01:23
[2026-08-31 16:01:23,290.290 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:01:23,465.465 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:01:23,470.470 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:01:23,677.677 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:01:23,705.705 INFO    ] time= 31/08/2026 16:01:23
[2026-08-31 16:01:23,721.721 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:01:23,730.730 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:01:23,863.863 INFO    ] No existing commands found in stream
[2026-08-31 16:01:28,893.893 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:01:28,896.896 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-08-31 16:01:31,829.829 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 16:01:31,833.833 INFO    ] Checking for system updates...
[2026-08-31 16:01:31,873.873 INFO    ] 200
[2026-08-31 16:01:31,876.876 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:01:31,936.936 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:01:31,939.939 INFO    ] No update needed
[2026-08-31 16:01:31,942.942 INFO    ] Checking for camera pi updates...
[2026-08-31 16:01:31,980.980 INFO    ] 200
[2026-08-31 16:01:31,983.983 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:01:32,028.028 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:01:32,241.241 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:01:32,245.245 INFO    ] No camera update needed
[2026-08-31 16:01:32,248.248 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:01:32,251.251 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:01:32,258.258 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:01:32,269.269 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:01:34,312.312 INFO    ] ================================================
[2026-08-31 16:01:34,327.327 INFO    ] Launching Daemon at Mon Aug 31 16:01:34 IST 2026
[2026-08-31 16:01:34,338.338 INFO    ] ================================================
[2026-08-31 16:01:34,901.901 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:01:34
[2026-08-31 16:01:35,482.482 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:01:35,729.729 INFO    ] Initializing speech engine...
[2026-08-31 16:01:35,744.744 INFO    ] 2026-08-31 16:01:35
[2026-08-31 16:01:36,009.009 INFO    ] 2026-08-31 16:01:36
[2026-08-31 16:01:36,045.045 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:01:36,221.221 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:01:36,233.233 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:01:36,381.381 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:01:36,388.388 INFO    ] time= 31/08/2026 16:01:36
[2026-08-31 16:01:36,408.408 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:01:36,455.455 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:01:36,556.556 INFO    ] No existing commands found in stream
[2026-08-31 16:01:41,576.576 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:01:41,579.579 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-08-31 16:01:44,264.264 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 16:01:44,267.267 INFO    ] Checking for system updates...
[2026-08-31 16:01:44,304.304 INFO    ] 200
[2026-08-31 16:01:44,306.306 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:01:44,358.358 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:01:44,361.361 INFO    ] No update needed
[2026-08-31 16:01:44,363.363 INFO    ] Checking for camera pi updates...
[2026-08-31 16:01:44,400.400 INFO    ] 200
[2026-08-31 16:01:44,402.402 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:01:44,443.443 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:01:44,534.534 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:01:44,536.536 INFO    ] No camera update needed
[2026-08-31 16:01:44,538.538 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:01:44,541.541 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:01:44,546.546 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:01:44,551.551 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:01:46,590.590 INFO    ] ================================================
[2026-08-31 16:01:46,606.606 INFO    ] Launching Daemon at Mon Aug 31 16:01:46 IST 2026
[2026-08-31 16:01:46,616.616 INFO    ] ================================================
[2026-08-31 16:01:47,183.183 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:01:47
[2026-08-31 16:01:47,765.765 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:01:48,009.009 INFO    ] Initializing speech engine...
[2026-08-31 16:01:48,015.015 INFO    ] 2026-08-31 16:01:48
[2026-08-31 16:01:48,290.290 INFO    ] 2026-08-31 16:01:48
[2026-08-31 16:01:48,325.325 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:01:48,504.504 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:01:48,516.516 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:01:48,662.662 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:01:48,667.667 INFO    ] time= 31/08/2026 16:01:48
[2026-08-31 16:01:48,673.673 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:01:48,719.719 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:01:48,849.849 INFO    ] No existing commands found in stream
[2026-08-31 16:01:53,877.877 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:01:53,880.880 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-08-31 16:01:58,006.006 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 16:01:58,009.009 INFO    ] Checking for system updates...
[2026-08-31 16:01:58,049.049 INFO    ] 200
[2026-08-31 16:01:58,051.051 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:01:58,110.110 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:01:58,112.112 INFO    ] No update needed
[2026-08-31 16:01:58,114.114 INFO    ] Checking for camera pi updates...
[2026-08-31 16:01:58,148.148 INFO    ] 200
[2026-08-31 16:01:58,150.150 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:01:58,194.194 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:01:58,279.279 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:01:58,281.281 INFO    ] No camera update needed
[2026-08-31 16:01:58,283.283 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:01:58,286.286 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:01:58,296.296 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:01:58,302.302 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:02:00,344.344 INFO    ] ================================================
[2026-08-31 16:02:00,360.360 INFO    ] Launching Daemon at Mon Aug 31 16:02:00 IST 2026
[2026-08-31 16:02:00,371.371 INFO    ] ================================================
[2026-08-31 16:02:00,949.949 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:02:00
[2026-08-31 16:02:01,545.545 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:02:01,819.819 INFO    ] Initializing speech engine...
[2026-08-31 16:02:01,830.830 INFO    ] 2026-08-31 16:02:01
[2026-08-31 16:02:02,101.101 INFO    ] 2026-08-31 16:02:02
[2026-08-31 16:02:02,171.171 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:02:02,425.425 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:02:02,432.432 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:02:02,601.601 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:02:02,605.605 INFO    ] time= 31/08/2026 16:02:02
[2026-08-31 16:02:02,629.629 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:02:02,659.659 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:02:02,741.741 INFO    ] No existing commands found in stream
[2026-08-31 16:02:07,754.754 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:02:07,758.758 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-08-31 16:02:11,207.207 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 16:02:11,210.210 INFO    ] Checking for system updates...
[2026-08-31 16:02:11,246.246 INFO    ] 200
[2026-08-31 16:02:11,249.249 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:02:11,303.303 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:02:11,305.305 INFO    ] No update needed
[2026-08-31 16:02:11,308.308 INFO    ] Checking for camera pi updates...
[2026-08-31 16:02:11,343.343 INFO    ] 200
[2026-08-31 16:02:11,346.346 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:02:11,387.387 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:02:11,470.470 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:02:11,473.473 INFO    ] No camera update needed
[2026-08-31 16:02:11,475.475 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:02:11,478.478 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:02:11,484.484 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:02:11,490.490 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:02:13,531.531 INFO    ] ================================================
[2026-08-31 16:02:13,546.546 INFO    ] Launching Daemon at Mon Aug 31 16:02:13 IST 2026
[2026-08-31 16:02:13,561.561 INFO    ] ================================================
[2026-08-31 16:02:14,200.200 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:02:14
[2026-08-31 16:02:14,860.860 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:02:15,160.160 INFO    ] Initializing speech engine...
[2026-08-31 16:02:15,166.166 INFO    ] 2026-08-31 16:02:15
[2026-08-31 16:02:15,446.446 INFO    ] 2026-08-31 16:02:15
[2026-08-31 16:02:15,500.500 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:02:15,738.738 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:02:15,760.760 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:02:15,954.954 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:02:16,006.006 INFO    ] time= 31/08/2026 16:02:15
[2026-08-31 16:02:16,013.013 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:02:16,032.032 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:02:16,160.160 INFO    ] No existing commands found in stream
[2026-08-31 16:02:21,178.178 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:02:21,181.181 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-08-31 16:02:23,395.395 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 16:02:23,399.399 INFO    ] Checking for system updates...
[2026-08-31 16:02:23,441.441 INFO    ] 200
[2026-08-31 16:02:23,444.444 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:02:23,504.504 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:02:23,506.506 INFO    ] No update needed
[2026-08-31 16:02:23,509.509 INFO    ] Checking for camera pi updates...
[2026-08-31 16:02:23,547.547 INFO    ] 200
[2026-08-31 16:02:23,550.550 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:02:23,595.595 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:02:23,722.722 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:02:23,725.725 INFO    ] No camera update needed
[2026-08-31 16:02:23,727.727 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:02:23,730.730 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:02:23,735.735 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:02:23,741.741 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:02:25,781.781 INFO    ] ================================================
[2026-08-31 16:02:25,796.796 INFO    ] Launching Daemon at Mon Aug 31 16:02:25 IST 2026
[2026-08-31 16:02:25,807.807 INFO    ] ================================================
[2026-08-31 16:02:26,390.390 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:02:26
[2026-08-31 16:02:26,972.972 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:02:27,238.238 INFO    ] Initializing speech engine...
[2026-08-31 16:02:27,250.250 INFO    ] 2026-08-31 16:02:27
[2026-08-31 16:02:27,499.499 INFO    ] 2026-08-31 16:02:27
[2026-08-31 16:02:27,534.534 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:02:27,720.720 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:02:27,738.738 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:02:27,934.934 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:02:27,961.961 INFO    ] time= 31/08/2026 16:02:27
[2026-08-31 16:02:28,011.011 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:02:28,070.070 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:02:28,198.198 INFO    ] No existing commands found in stream
[2026-08-31 16:02:33,220.220 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:02:33,222.222 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-08-31 16:02:36,202.202 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 16:02:36,205.205 INFO    ] Checking for system updates...
[2026-08-31 16:02:36,240.240 INFO    ] 200
[2026-08-31 16:02:36,243.243 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:02:36,295.295 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:02:36,298.298 INFO    ] No update needed
[2026-08-31 16:02:36,300.300 INFO    ] Checking for camera pi updates...
[2026-08-31 16:02:36,334.334 INFO    ] 200
[2026-08-31 16:02:36,336.336 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:02:36,377.377 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:02:36,483.483 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:02:36,486.486 INFO    ] No camera update needed
[2026-08-31 16:02:36,488.488 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:02:36,490.490 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:02:36,496.496 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:02:36,500.500 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:02:38,544.544 INFO    ] ================================================
[2026-08-31 16:02:38,571.571 INFO    ] Launching Daemon at Mon Aug 31 16:02:38 IST 2026
[2026-08-31 16:02:38,582.582 INFO    ] ================================================
[2026-08-31 16:02:39,170.170 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:02:39
[2026-08-31 16:02:39,755.755 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:02:40,009.009 INFO    ] Initializing speech engine...
[2026-08-31 16:02:40,017.017 INFO    ] 2026-08-31 16:02:40
[2026-08-31 16:02:40,309.309 INFO    ] 2026-08-31 16:02:40
[2026-08-31 16:02:40,334.334 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:02:40,542.542 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:02:40,555.555 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:02:40,716.716 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:02:40,722.722 INFO    ] time= 31/08/2026 16:02:40
[2026-08-31 16:02:40,728.728 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:02:40,777.777 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:02:40,921.921 INFO    ] No existing commands found in stream
[2026-08-31 16:02:45,952.952 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:02:45,954.954 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-08-31 16:02:47,726.726 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 16:02:47,729.729 INFO    ] Checking for system updates...
[2026-08-31 16:02:47,764.764 INFO    ] 200
[2026-08-31 16:02:47,767.767 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:02:47,819.819 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:02:47,821.821 INFO    ] No update needed
[2026-08-31 16:02:47,824.824 INFO    ] Checking for camera pi updates...
[2026-08-31 16:02:47,857.857 INFO    ] 200
[2026-08-31 16:02:47,859.859 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:02:47,900.900 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:02:47,983.983 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:02:47,985.985 INFO    ] No camera update needed
[2026-08-31 16:02:47,988.988 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:02:47,990.990 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:02:47,995.995 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:02:48,000.000 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:02:50,041.041 INFO    ] ================================================
[2026-08-31 16:02:50,056.056 INFO    ] Launching Daemon at Mon Aug 31 16:02:50 IST 2026
[2026-08-31 16:02:50,066.066 INFO    ] ================================================
[2026-08-31 16:02:50,630.630 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:02:50
[2026-08-31 16:02:51,212.212 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:02:51,457.457 INFO    ] Initializing speech engine...
[2026-08-31 16:02:51,465.465 INFO    ] 2026-08-31 16:02:51
[2026-08-31 16:02:51,739.739 INFO    ] 2026-08-31 16:02:51
[2026-08-31 16:02:51,774.774 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:02:51,948.948 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:02:51,961.961 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:02:52,108.108 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:02:52,113.113 INFO    ] time= 31/08/2026 16:02:52
[2026-08-31 16:02:52,119.119 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:02:52,160.160 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:02:52,312.312 INFO    ] No existing commands found in stream
[2026-08-31 16:02:57,324.324 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:02:57,327.327 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-08-31 16:02:59,365.365 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 16:02:59,368.368 INFO    ] Checking for system updates...
[2026-08-31 16:02:59,409.409 INFO    ] 200
[2026-08-31 16:02:59,412.412 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:02:59,466.466 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:02:59,468.468 INFO    ] No update needed
[2026-08-31 16:02:59,471.471 INFO    ] Checking for camera pi updates...
[2026-08-31 16:02:59,506.506 INFO    ] 200
[2026-08-31 16:02:59,509.509 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:02:59,554.554 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:02:59,643.643 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:02:59,646.646 INFO    ] No camera update needed
[2026-08-31 16:02:59,649.649 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:02:59,652.652 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:02:59,658.658 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:02:59,664.664 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:03:01,707.707 INFO    ] ================================================
[2026-08-31 16:03:01,728.728 INFO    ] Launching Daemon at Mon Aug 31 16:03:01 IST 2026
[2026-08-31 16:03:01,743.743 INFO    ] ================================================
[2026-08-31 16:03:02,391.391 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:03:02
[2026-08-31 16:03:03,052.052 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:03:03,336.336 INFO    ] Initializing speech engine...
[2026-08-31 16:03:03,346.346 INFO    ] 2026-08-31 16:03:03
[2026-08-31 16:03:03,608.608 INFO    ] 2026-08-31 16:03:03
[2026-08-31 16:03:03,645.645 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:03:03,902.902 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:03:03,911.911 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:03:04,046.046 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:03:04,086.086 INFO    ] time= 31/08/2026 16:03:04
[2026-08-31 16:03:04,145.145 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:03:04,178.178 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:03:04,322.322 INFO    ] No existing commands found in stream
[2026-08-31 16:03:09,338.338 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:03:09,341.341 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-08-31 16:03:12,368.368 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 16:03:12,371.371 INFO    ] Checking for system updates...
[2026-08-31 16:03:12,407.407 INFO    ] 200
[2026-08-31 16:03:12,410.410 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:03:12,463.463 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:03:12,465.465 INFO    ] No update needed
[2026-08-31 16:03:12,468.468 INFO    ] Checking for camera pi updates...
[2026-08-31 16:03:12,508.508 INFO    ] 200
[2026-08-31 16:03:12,511.511 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:03:12,551.551 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:03:12,647.647 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:03:12,649.649 INFO    ] No camera update needed
[2026-08-31 16:03:12,652.652 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:03:12,654.654 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:03:12,659.659 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:03:12,664.664 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:03:14,704.704 INFO    ] ================================================
[2026-08-31 16:03:14,720.720 INFO    ] Launching Daemon at Mon Aug 31 16:03:14 IST 2026
[2026-08-31 16:03:14,730.730 INFO    ] ================================================
[2026-08-31 16:03:15,298.298 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:03:15
[2026-08-31 16:03:15,886.886 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:03:16,137.137 INFO    ] Initializing speech engine...
[2026-08-31 16:03:16,159.159 INFO    ] 2026-08-31 16:03:16
[2026-08-31 16:03:16,415.415 INFO    ] 2026-08-31 16:03:16
[2026-08-31 16:03:16,451.451 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:03:16,709.709 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:03:16,718.718 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:03:16,853.853 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:03:16,879.879 INFO    ] time= 31/08/2026 16:03:16
[2026-08-31 16:03:16,949.949 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:03:16,989.989 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:03:17,126.126 INFO    ] No existing commands found in stream
[2026-08-31 16:03:22,149.149 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:03:22,151.151 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-08-31 16:03:26,249.249 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 16:03:26,251.251 INFO    ] Checking for system updates...
[2026-08-31 16:03:26,290.290 INFO    ] 200
[2026-08-31 16:03:26,293.293 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:03:26,350.350 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:03:26,352.352 INFO    ] No update needed
[2026-08-31 16:03:26,355.355 INFO    ] Checking for camera pi updates...
[2026-08-31 16:03:26,390.390 INFO    ] 200
[2026-08-31 16:03:26,392.392 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:03:26,432.432 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:03:26,518.518 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:03:26,521.521 INFO    ] No camera update needed
[2026-08-31 16:03:26,524.524 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:03:26,527.527 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:03:26,534.534 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:03:26,539.539 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:03:28,580.580 INFO    ] ================================================
[2026-08-31 16:03:28,595.595 INFO    ] Launching Daemon at Mon Aug 31 16:03:28 IST 2026
[2026-08-31 16:03:28,607.607 INFO    ] ================================================
[2026-08-31 16:03:29,181.181 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:03:29
[2026-08-31 16:03:29,819.819 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:03:30,112.112 INFO    ] Initializing speech engine...
[2026-08-31 16:03:30,119.119 INFO    ] 2026-08-31 16:03:30
[2026-08-31 16:03:30,388.388 INFO    ] 2026-08-31 16:03:30
[2026-08-31 16:03:30,423.423 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:03:30,661.661 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:03:30,679.679 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:03:30,912.912 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:03:30,949.949 INFO    ] time= 31/08/2026 16:03:30
[2026-08-31 16:03:30,955.955 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:03:30,974.974 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:03:31,108.108 INFO    ] No existing commands found in stream
[2026-08-31 16:03:36,123.123 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:03:36,126.126 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-08-31 16:03:39,111.111 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 16:03:39,114.114 INFO    ] Checking for system updates...
[2026-08-31 16:03:39,150.150 INFO    ] 200
[2026-08-31 16:03:39,153.153 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:03:39,206.206 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:03:39,209.209 INFO    ] No update needed
[2026-08-31 16:03:39,212.212 INFO    ] Checking for camera pi updates...
[2026-08-31 16:03:39,245.245 INFO    ] 200
[2026-08-31 16:03:39,248.248 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:03:39,292.292 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:03:39,466.466 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:03:39,469.469 INFO    ] No camera update needed
[2026-08-31 16:03:39,472.472 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:03:39,474.474 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:03:39,480.480 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:03:39,486.486 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:03:41,528.528 INFO    ] ================================================
[2026-08-31 16:03:41,543.543 INFO    ] Launching Daemon at Mon Aug 31 16:03:41 IST 2026
[2026-08-31 16:03:41,553.553 INFO    ] ================================================
[2026-08-31 16:03:42,182.182 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:03:42
[2026-08-31 16:03:42,828.828 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:03:43,125.125 INFO    ] Initializing speech engine...
[2026-08-31 16:03:43,134.134 INFO    ] 2026-08-31 16:03:43
[2026-08-31 16:03:43,410.410 INFO    ] 2026-08-31 16:03:43
[2026-08-31 16:03:43,461.461 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:03:43,689.689 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:03:43,700.700 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:03:43,931.931 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:03:43,966.966 INFO    ] time= 31/08/2026 16:03:43
[2026-08-31 16:03:43,972.972 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:03:43,993.993 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:03:44,103.103 INFO    ] No existing commands found in stream
[2026-08-31 16:03:49,132.132 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:03:49,135.135 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-08-31 16:03:50,212.212 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 16:03:50,215.215 INFO    ] Checking for system updates...
[2026-08-31 16:03:50,254.254 INFO    ] 200
[2026-08-31 16:03:50,257.257 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:03:50,311.311 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:03:50,313.313 INFO    ] No update needed
[2026-08-31 16:03:50,316.316 INFO    ] Checking for camera pi updates...
[2026-08-31 16:03:50,350.350 INFO    ] 200
[2026-08-31 16:03:50,353.353 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:03:50,393.393 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:03:50,504.504 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:03:50,507.507 INFO    ] No camera update needed
[2026-08-31 16:03:50,509.509 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:03:50,512.512 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:03:50,518.518 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:03:50,524.524 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:03:52,565.565 INFO    ] ================================================
[2026-08-31 16:03:52,581.581 INFO    ] Launching Daemon at Mon Aug 31 16:03:52 IST 2026
[2026-08-31 16:03:52,592.592 INFO    ] ================================================
[2026-08-31 16:03:53,220.220 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:03:53
[2026-08-31 16:03:53,869.869 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:03:54,168.168 INFO    ] Initializing speech engine...
[2026-08-31 16:03:54,182.182 INFO    ] 2026-08-31 16:03:54
[2026-08-31 16:03:54,450.450 INFO    ] 2026-08-31 16:03:54
[2026-08-31 16:03:54,508.508 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:03:54,693.693 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:03:54,756.756 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:03:54,902.902 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:03:54,913.913 INFO    ] time= 31/08/2026 16:03:54
[2026-08-31 16:03:54,935.935 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:03:54,994.994 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:03:55,111.111 INFO    ] No existing commands found in stream
[2026-08-31 16:04:00,123.123 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:04:00,126.126 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-08-31 16:04:04,201.201 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 16:04:04,204.204 INFO    ] Checking for system updates...
[2026-08-31 16:04:04,241.241 INFO    ] 200
[2026-08-31 16:04:04,244.244 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:04:04,296.296 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:04:04,299.299 INFO    ] No update needed
[2026-08-31 16:04:04,302.302 INFO    ] Checking for camera pi updates...
[2026-08-31 16:04:04,336.336 INFO    ] 200
[2026-08-31 16:04:04,339.339 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:04:04,380.380 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:04:04,489.489 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:04:04,492.492 INFO    ] No camera update needed
[2026-08-31 16:04:04,494.494 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:04:04,497.497 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:04:04,503.503 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:04:04,508.508 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:04:06,549.549 INFO    ] ================================================
[2026-08-31 16:04:06,564.564 INFO    ] Launching Daemon at Mon Aug 31 16:04:06 IST 2026
[2026-08-31 16:04:06,575.575 INFO    ] ================================================
[2026-08-31 16:04:07,149.149 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:04:07
[2026-08-31 16:04:07,742.742 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:04:08,005.005 INFO    ] Initializing speech engine...
[2026-08-31 16:04:08,030.030 INFO    ] 2026-08-31 16:04:08
[2026-08-31 16:04:08,299.299 INFO    ] 2026-08-31 16:04:08
[2026-08-31 16:04:08,336.336 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:04:08,552.552 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:04:08,606.606 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:04:08,787.787 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:04:08,857.857 INFO    ] time= 31/08/2026 16:04:08
[2026-08-31 16:04:08,922.922 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:04:08,929.929 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:04:08,997.997 INFO    ] No existing commands found in stream
[2026-08-31 16:04:14,024.024 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:04:14,027.027 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-08-31 16:04:14,720.720 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 16:04:14,723.723 INFO    ] Checking for system updates...
[2026-08-31 16:04:14,758.758 INFO    ] 200
[2026-08-31 16:04:14,760.760 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:04:14,812.812 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:04:14,815.815 INFO    ] No update needed
[2026-08-31 16:04:14,817.817 INFO    ] Checking for camera pi updates...
[2026-08-31 16:04:14,850.850 INFO    ] 200
[2026-08-31 16:04:14,853.853 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:04:14,892.892 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:04:14,979.979 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:04:14,982.982 INFO    ] No camera update needed
[2026-08-31 16:04:14,984.984 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:04:14,986.986 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:04:14,992.992 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:04:14,997.997 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:04:17,037.037 INFO    ] ================================================
[2026-08-31 16:04:17,059.059 INFO    ] Launching Daemon at Mon Aug 31 16:04:17 IST 2026
[2026-08-31 16:04:17,069.069 INFO    ] ================================================
[2026-08-31 16:04:17,647.647 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:04:17
[2026-08-31 16:04:18,243.243 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:04:18,502.502 INFO    ] Initializing speech engine...
[2026-08-31 16:04:18,518.518 INFO    ] 2026-08-31 16:04:18
[2026-08-31 16:04:18,797.797 INFO    ] 2026-08-31 16:04:18
[2026-08-31 16:04:18,834.834 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:04:19,026.026 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:04:19,040.040 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:04:19,202.202 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:04:19,207.207 INFO    ] time= 31/08/2026 16:04:19
[2026-08-31 16:04:19,214.214 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:04:19,261.261 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:04:19,375.375 INFO    ] No existing commands found in stream
[2026-08-31 16:04:24,400.400 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:04:24,403.403 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-08-31 16:04:27,881.881 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 16:04:27,884.884 INFO    ] Checking for system updates...
[2026-08-31 16:04:27,919.919 INFO    ] 200
[2026-08-31 16:04:27,921.921 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:04:27,973.973 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:04:27,976.976 INFO    ] No update needed
[2026-08-31 16:04:27,978.978 INFO    ] Checking for camera pi updates...
[2026-08-31 16:04:28,012.012 INFO    ] 200
[2026-08-31 16:04:28,014.014 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:04:28,058.058 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:04:28,137.137 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:04:28,140.140 INFO    ] No camera update needed
[2026-08-31 16:04:28,142.142 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:04:28,145.145 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:04:28,150.150 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:04:28,155.155 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:04:30,195.195 INFO    ] ================================================
[2026-08-31 16:04:30,211.211 INFO    ] Launching Daemon at Mon Aug 31 16:04:30 IST 2026
[2026-08-31 16:04:30,222.222 INFO    ] ================================================
[2026-08-31 16:04:30,852.852 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:04:30
[2026-08-31 16:04:31,534.534 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:04:31,855.855 INFO    ] Initializing speech engine...
[2026-08-31 16:04:31,865.865 INFO    ] 2026-08-31 16:04:31
[2026-08-31 16:04:32,172.172 INFO    ] 2026-08-31 16:04:32
[2026-08-31 16:04:32,218.218 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:04:32,466.466 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:04:32,472.472 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:04:32,687.687 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:04:32,732.732 INFO    ] time= 31/08/2026 16:04:32
[2026-08-31 16:04:32,744.744 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:04:32,765.765 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:04:32,901.901 INFO    ] No existing commands found in stream
[2026-08-31 16:04:37,928.928 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:04:37,931.931 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-08-31 16:04:41,722.722 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 16:04:41,725.725 INFO    ] Checking for system updates...
[2026-08-31 16:04:41,762.762 INFO    ] 200
[2026-08-31 16:04:41,765.765 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:04:41,818.818 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:04:41,821.821 INFO    ] No update needed
[2026-08-31 16:04:41,823.823 INFO    ] Checking for camera pi updates...
[2026-08-31 16:04:41,858.858 INFO    ] 200
[2026-08-31 16:04:41,861.861 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:04:41,902.902 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:04:41,985.985 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:04:41,988.988 INFO    ] No camera update needed
[2026-08-31 16:04:41,991.991 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:04:41,993.993 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:04:42,000.000 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:04:42,005.005 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:04:44,048.048 INFO    ] ================================================
[2026-08-31 16:04:44,064.064 INFO    ] Launching Daemon at Mon Aug 31 16:04:44 IST 2026
[2026-08-31 16:04:44,075.075 INFO    ] ================================================
[2026-08-31 16:04:44,707.707 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:04:44
[2026-08-31 16:04:45,355.355 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:04:45,652.652 INFO    ] Initializing speech engine...
[2026-08-31 16:04:45,660.660 INFO    ] 2026-08-31 16:04:45
[2026-08-31 16:04:45,945.945 INFO    ] 2026-08-31 16:04:45
[2026-08-31 16:04:45,992.992 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:04:46,277.277 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:04:46,287.287 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:04:46,479.479 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:04:46,492.492 INFO    ] time= 31/08/2026 16:04:46
[2026-08-31 16:04:46,511.511 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:04:46,539.539 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:04:46,651.651 INFO    ] No existing commands found in stream
[2026-08-31 16:04:51,680.680 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:04:51,683.683 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-08-31 16:04:54,828.828 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 16:04:54,831.831 INFO    ] Checking for system updates...
[2026-08-31 16:04:54,868.868 INFO    ] 200
[2026-08-31 16:04:54,870.870 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:04:54,923.923 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:04:54,926.926 INFO    ] No update needed
[2026-08-31 16:04:54,928.928 INFO    ] Checking for camera pi updates...
[2026-08-31 16:04:54,962.962 INFO    ] 200
[2026-08-31 16:04:54,965.965 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:04:55,006.006 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:04:55,104.104 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:04:55,107.107 INFO    ] No camera update needed
[2026-08-31 16:04:55,110.110 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:04:55,112.112 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:04:55,118.118 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:04:55,124.124 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:04:57,165.165 INFO    ] ================================================
[2026-08-31 16:04:57,180.180 INFO    ] Launching Daemon at Mon Aug 31 16:04:57 IST 2026
[2026-08-31 16:04:57,191.191 INFO    ] ================================================
[2026-08-31 16:04:57,761.761 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:04:57
[2026-08-31 16:04:58,348.348 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:04:58,618.618 INFO    ] Initializing speech engine...
[2026-08-31 16:04:58,626.626 INFO    ] 2026-08-31 16:04:58
[2026-08-31 16:04:58,876.876 INFO    ] 2026-08-31 16:04:58
[2026-08-31 16:04:58,912.912 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:04:59,109.109 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:04:59,164.164 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:04:59,393.393 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:04:59,443.443 INFO    ] time= 31/08/2026 16:04:59
[2026-08-31 16:04:59,449.449 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:04:59,468.468 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:04:59,598.598 INFO    ] No existing commands found in stream
[2026-08-31 16:05:04,612.612 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:05:04,615.615 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-08-31 16:05:06,810.810 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 16:05:06,813.813 INFO    ] Checking for system updates...
[2026-08-31 16:05:06,851.851 INFO    ] 200
[2026-08-31 16:05:06,854.854 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:05:06,907.907 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:05:06,910.910 INFO    ] No update needed
[2026-08-31 16:05:06,912.912 INFO    ] Checking for camera pi updates...
[2026-08-31 16:05:06,948.948 INFO    ] 200
[2026-08-31 16:05:06,951.951 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:05:06,991.991 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:05:07,055.055 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:05:07,060.060 INFO    ] No camera update needed
[2026-08-31 16:05:07,065.065 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:05:07,068.068 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:05:07,075.075 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:05:07,084.084 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:05:09,127.127 INFO    ] ================================================
[2026-08-31 16:05:09,142.142 INFO    ] Launching Daemon at Mon Aug 31 16:05:09 IST 2026
[2026-08-31 16:05:09,153.153 INFO    ] ================================================
[2026-08-31 16:05:09,784.784 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:05:09
[2026-08-31 16:05:10,438.438 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:05:10,735.735 INFO    ] Initializing speech engine...
[2026-08-31 16:05:10,748.748 INFO    ] 2026-08-31 16:05:10
[2026-08-31 16:05:11,030.030 INFO    ] 2026-08-31 16:05:11
[2026-08-31 16:05:11,076.076 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:05:11,307.307 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:05:11,313.313 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:05:11,516.516 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:05:11,575.575 INFO    ] time= 31/08/2026 16:05:11
[2026-08-31 16:05:11,582.582 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:05:11,600.600 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:05:11,731.731 INFO    ] No existing commands found in stream
[2026-08-31 16:05:16,747.747 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:05:16,750.750 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-08-31 16:05:17,928.928 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 16:05:17,931.931 INFO    ] Checking for system updates...
[2026-08-31 16:05:17,967.967 INFO    ] 200
[2026-08-31 16:05:17,970.970 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:05:18,023.023 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:05:18,026.026 INFO    ] No update needed
[2026-08-31 16:05:18,029.029 INFO    ] Checking for camera pi updates...
[2026-08-31 16:05:18,063.063 INFO    ] 200
[2026-08-31 16:05:18,065.065 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:05:18,106.106 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:05:18,186.186 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:05:18,189.189 INFO    ] No camera update needed
[2026-08-31 16:05:18,192.192 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:05:18,194.194 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:05:18,200.200 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:05:18,206.206 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:05:20,249.249 INFO    ] ================================================
[2026-08-31 16:05:20,266.266 INFO    ] Launching Daemon at Mon Aug 31 16:05:20 IST 2026
[2026-08-31 16:05:20,278.278 INFO    ] ================================================
[2026-08-31 16:05:20,884.884 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:05:20
[2026-08-31 16:05:21,516.516 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:05:21,808.808 INFO    ] Initializing speech engine...
[2026-08-31 16:05:21,814.814 INFO    ] 2026-08-31 16:05:21
[2026-08-31 16:05:22,081.081 INFO    ] 2026-08-31 16:05:22
[2026-08-31 16:05:22,140.140 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:05:22,369.369 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:05:22,379.379 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:05:22,518.518 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:05:22,568.568 INFO    ] time= 31/08/2026 16:05:22
[2026-08-31 16:05:22,622.622 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:05:22,652.652 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:05:22,771.771 INFO    ] No existing commands found in stream
[2026-08-31 16:05:27,799.799 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:05:27,801.801 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-08-31 16:05:28,522.522 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 16:05:28,525.525 INFO    ] Checking for system updates...
[2026-08-31 16:05:28,561.561 INFO    ] 200
[2026-08-31 16:05:28,564.564 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:05:28,616.616 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:05:28,618.618 INFO    ] No update needed
[2026-08-31 16:05:28,621.621 INFO    ] Checking for camera pi updates...
[2026-08-31 16:05:28,654.654 INFO    ] 200
[2026-08-31 16:05:28,656.656 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:05:28,697.697 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:05:28,774.774 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:05:28,776.776 INFO    ] No camera update needed
[2026-08-31 16:05:28,779.779 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:05:28,781.781 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:05:28,786.786 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:05:28,791.791 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:05:30,834.834 INFO    ] ================================================
[2026-08-31 16:05:30,851.851 INFO    ] Launching Daemon at Mon Aug 31 16:05:30 IST 2026
[2026-08-31 16:05:30,862.862 INFO    ] ================================================
[2026-08-31 16:05:31,510.510 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:05:31
[2026-08-31 16:05:32,179.179 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:05:32,518.518 INFO    ] Initializing speech engine...
[2026-08-31 16:05:32,527.527 INFO    ] 2026-08-31 16:05:32
[2026-08-31 16:05:32,821.821 INFO    ] 2026-08-31 16:05:32
[2026-08-31 16:05:32,884.884 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:05:33,154.154 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:05:33,161.161 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:05:33,398.398 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:05:33,444.444 INFO    ] time= 31/08/2026 16:05:33
[2026-08-31 16:05:33,481.481 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:05:33,487.487 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:05:33,629.629 INFO    ] No existing commands found in stream
[2026-08-31 16:05:38,659.659 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:05:38,662.662 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-08-31 16:05:41,171.171 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 16:05:41,174.174 INFO    ] Checking for system updates...
[2026-08-31 16:05:41,209.209 INFO    ] 200
[2026-08-31 16:05:41,211.211 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:05:41,264.264 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:05:41,266.266 INFO    ] No update needed
[2026-08-31 16:05:41,269.269 INFO    ] Checking for camera pi updates...
[2026-08-31 16:05:41,302.302 INFO    ] 200
[2026-08-31 16:05:41,305.305 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:05:41,344.344 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:05:41,529.529 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:05:41,531.531 INFO    ] No camera update needed
[2026-08-31 16:05:41,533.533 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:05:41,535.535 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:05:41,541.541 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:05:41,546.546 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:05:43,585.585 INFO    ] ================================================
[2026-08-31 16:05:43,600.600 INFO    ] Launching Daemon at Mon Aug 31 16:05:43 IST 2026
[2026-08-31 16:05:43,611.611 INFO    ] ================================================
[2026-08-31 16:05:44,180.180 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:05:44
[2026-08-31 16:05:44,764.764 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:05:45,033.033 INFO    ] Initializing speech engine...
[2026-08-31 16:05:45,041.041 INFO    ] 2026-08-31 16:05:45
[2026-08-31 16:05:45,289.289 INFO    ] 2026-08-31 16:05:45
[2026-08-31 16:05:45,323.323 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:05:45,576.576 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:05:45,584.584 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:05:45,719.719 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:05:45,764.764 INFO    ] time= 31/08/2026 16:05:45
[2026-08-31 16:05:45,823.823 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:05:45,850.850 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:05:45,966.966 INFO    ] No existing commands found in stream
[2026-08-31 16:05:50,999.999 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:05:51,002.002 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-08-31 16:05:54,958.958 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 16:05:54,961.961 INFO    ] Checking for system updates...
[2026-08-31 16:05:54,997.997 INFO    ] 200
[2026-08-31 16:05:54,999.999 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:05:55,051.051 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:05:55,054.054 INFO    ] No update needed
[2026-08-31 16:05:55,057.057 INFO    ] Checking for camera pi updates...
[2026-08-31 16:05:55,090.090 INFO    ] 200
[2026-08-31 16:05:55,093.093 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:05:55,133.133 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:05:55,202.202 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:05:55,204.204 INFO    ] No camera update needed
[2026-08-31 16:05:55,207.207 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:05:55,209.209 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:05:55,215.215 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:05:55,220.220 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:05:57,259.259 INFO    ] ================================================
[2026-08-31 16:05:57,275.275 INFO    ] Launching Daemon at Mon Aug 31 16:05:57 IST 2026
[2026-08-31 16:05:57,286.286 INFO    ] ================================================
[2026-08-31 16:05:57,852.852 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:05:57
[2026-08-31 16:05:58,434.434 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:05:58,697.697 INFO    ] Initializing speech engine...
[2026-08-31 16:05:58,709.709 INFO    ] 2026-08-31 16:05:58
[2026-08-31 16:05:58,975.975 INFO    ] 2026-08-31 16:05:58
[2026-08-31 16:05:59,013.013 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:05:59,238.238 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:05:59,248.248 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:05:59,456.456 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:05:59,481.481 INFO    ] time= 31/08/2026 16:05:59
[2026-08-31 16:05:59,498.498 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:05:59,547.547 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:05:59,686.686 INFO    ] No existing commands found in stream
[2026-08-31 16:06:04,697.697 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:06:04,700.700 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-08-31 16:06:07,171.171 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 16:06:07,174.174 INFO    ] Checking for system updates...
[2026-08-31 16:06:07,210.210 INFO    ] 200
[2026-08-31 16:06:07,213.213 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:06:07,265.265 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:06:07,268.268 INFO    ] No update needed
[2026-08-31 16:06:07,271.271 INFO    ] Checking for camera pi updates...
[2026-08-31 16:06:07,306.306 INFO    ] 200
[2026-08-31 16:06:07,309.309 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:06:07,354.354 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:06:07,443.443 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:06:07,445.445 INFO    ] No camera update needed
[2026-08-31 16:06:07,448.448 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:06:07,450.450 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:06:07,455.455 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:06:07,460.460 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:06:09,503.503 INFO    ] ================================================
[2026-08-31 16:06:09,520.520 INFO    ] Launching Daemon at Mon Aug 31 16:06:09 IST 2026
[2026-08-31 16:06:09,531.531 INFO    ] ================================================
[2026-08-31 16:06:10,180.180 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:06:10
[2026-08-31 16:06:10,846.846 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:06:11,146.146 INFO    ] Initializing speech engine...
[2026-08-31 16:06:11,160.160 INFO    ] 2026-08-31 16:06:11
[2026-08-31 16:06:11,473.473 INFO    ] 2026-08-31 16:06:11
[2026-08-31 16:06:11,558.558 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:06:11,738.738 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:06:11,756.756 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:06:11,971.971 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:06:11,989.989 INFO    ] time= 31/08/2026 16:06:11
[2026-08-31 16:06:11,996.996 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:06:12,018.018 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:06:12,151.151 INFO    ] No existing commands found in stream
[2026-08-31 16:06:17,182.182 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:06:17,185.185 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-08-31 16:06:18,329.329 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 16:06:18,332.332 INFO    ] Checking for system updates...
[2026-08-31 16:06:18,368.368 INFO    ] 200
[2026-08-31 16:06:18,371.371 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:06:18,430.430 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:06:18,433.433 INFO    ] No update needed
[2026-08-31 16:06:18,436.436 INFO    ] Checking for camera pi updates...
[2026-08-31 16:06:18,474.474 INFO    ] 200
[2026-08-31 16:06:18,477.477 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:06:18,523.523 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:06:18,606.606 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:06:18,609.609 INFO    ] No camera update needed
[2026-08-31 16:06:18,612.612 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:06:18,615.615 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:06:18,621.621 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:06:18,626.626 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:06:20,667.667 INFO    ] ================================================
[2026-08-31 16:06:20,683.683 INFO    ] Launching Daemon at Mon Aug 31 16:06:20 IST 2026
[2026-08-31 16:06:20,694.694 INFO    ] ================================================
[2026-08-31 16:06:21,261.261 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:06:21
[2026-08-31 16:06:21,845.845 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:06:22,103.103 INFO    ] Initializing speech engine...
[2026-08-31 16:06:22,122.122 INFO    ] 2026-08-31 16:06:22
[2026-08-31 16:06:22,370.370 INFO    ] 2026-08-31 16:06:22
[2026-08-31 16:06:22,405.405 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:06:22,584.584 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:06:22,601.601 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:06:22,739.739 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:06:22,784.784 INFO    ] time= 31/08/2026 16:06:22
[2026-08-31 16:06:22,804.804 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:06:22,862.862 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:06:22,954.954 INFO    ] No existing commands found in stream
[2026-08-31 16:06:27,966.966 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:06:27,969.969 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-08-31 16:06:31,451.451 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 16:06:31,455.455 INFO    ] Checking for system updates...
[2026-08-31 16:06:31,511.511 INFO    ] 200
[2026-08-31 16:06:31,514.514 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:06:31,575.575 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:06:31,578.578 INFO    ] No update needed
[2026-08-31 16:06:31,582.582 INFO    ] Checking for camera pi updates...
[2026-08-31 16:06:31,623.623 INFO    ] 200
[2026-08-31 16:06:31,626.626 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:06:31,673.673 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:06:31,761.761 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:06:31,764.764 INFO    ] No camera update needed
[2026-08-31 16:06:31,767.767 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:06:31,771.771 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:06:31,777.777 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:06:31,784.784 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:06:33,829.829 INFO    ] ================================================
[2026-08-31 16:06:33,844.844 INFO    ] Launching Daemon at Mon Aug 31 16:06:33 IST 2026
[2026-08-31 16:06:33,855.855 INFO    ] ================================================
[2026-08-31 16:06:34,512.512 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:06:34
[2026-08-31 16:06:35,193.193 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:06:35,505.505 INFO    ] Initializing speech engine...
[2026-08-31 16:06:35,517.517 INFO    ] 2026-08-31 16:06:35
[2026-08-31 16:06:35,790.790 INFO    ] 2026-08-31 16:06:35
[2026-08-31 16:06:35,846.846 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:06:36,102.102 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:06:36,109.109 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:06:36,312.312 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:06:36,358.358 INFO    ] time= 31/08/2026 16:06:36
[2026-08-31 16:06:36,376.376 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:06:36,386.386 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:06:36,513.513 INFO    ] No existing commands found in stream
[2026-08-31 16:06:41,530.530 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:06:41,534.534 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-08-31 16:06:43,088.088 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 16:06:43,091.091 INFO    ] Checking for system updates...
[2026-08-31 16:06:43,129.129 INFO    ] 200
[2026-08-31 16:06:43,132.132 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:06:43,184.184 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:06:43,187.187 INFO    ] No update needed
[2026-08-31 16:06:43,190.190 INFO    ] Checking for camera pi updates...
[2026-08-31 16:06:43,229.229 INFO    ] 200
[2026-08-31 16:06:43,232.232 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:06:43,278.278 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:06:43,350.350 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:06:43,353.353 INFO    ] No camera update needed
[2026-08-31 16:06:43,355.355 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:06:43,358.358 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:06:43,365.365 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:06:43,370.370 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:06:45,413.413 INFO    ] ================================================
[2026-08-31 16:06:45,429.429 INFO    ] Launching Daemon at Mon Aug 31 16:06:45 IST 2026
[2026-08-31 16:06:45,440.440 INFO    ] ================================================
[2026-08-31 16:06:46,011.011 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:06:46
[2026-08-31 16:06:46,592.592 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:06:46,860.860 INFO    ] Initializing speech engine...
[2026-08-31 16:06:46,870.870 INFO    ] 2026-08-31 16:06:46
[2026-08-31 16:06:47,114.114 INFO    ] 2026-08-31 16:06:47
[2026-08-31 16:06:47,150.150 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:06:47,403.403 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:06:47,410.410 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:06:47,543.543 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:06:47,608.608 INFO    ] time= 31/08/2026 16:06:47
[2026-08-31 16:06:47,662.662 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:06:47,676.676 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:06:47,806.806 INFO    ] No existing commands found in stream
[2026-08-31 16:06:52,830.830 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:06:52,833.833 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-08-31 16:06:55,289.289 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 16:06:55,291.291 INFO    ] Checking for system updates...
[2026-08-31 16:06:55,332.332 INFO    ] 200
[2026-08-31 16:06:55,334.334 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:06:55,387.387 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:06:55,389.389 INFO    ] No update needed
[2026-08-31 16:06:55,392.392 INFO    ] Checking for camera pi updates...
[2026-08-31 16:06:55,426.426 INFO    ] 200
[2026-08-31 16:06:55,428.428 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:06:55,470.470 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:06:55,602.602 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:06:55,605.605 INFO    ] No camera update needed
[2026-08-31 16:06:55,607.607 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:06:55,609.609 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:06:55,615.615 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:06:55,620.620 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:06:57,659.659 INFO    ] ================================================
[2026-08-31 16:06:57,675.675 INFO    ] Launching Daemon at Mon Aug 31 16:06:57 IST 2026
[2026-08-31 16:06:57,686.686 INFO    ] ================================================
[2026-08-31 16:06:58,266.266 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:06:58
[2026-08-31 16:06:58,864.864 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:06:59,135.135 INFO    ] Initializing speech engine...
[2026-08-31 16:06:59,145.145 INFO    ] 2026-08-31 16:06:59
[2026-08-31 16:06:59,420.420 INFO    ] 2026-08-31 16:06:59
[2026-08-31 16:06:59,479.479 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:06:59,762.762 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:06:59,771.771 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:06:59,966.966 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:06:59,985.985 INFO    ] time= 31/08/2026 16:06:59
[2026-08-31 16:06:59,995.995 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:07:00,024.024 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:07:00,147.147 INFO    ] No existing commands found in stream
[2026-08-31 16:07:05,183.183 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:07:05,187.187 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-08-31 16:07:06,362.362 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 16:07:06,365.365 INFO    ] Checking for system updates...
[2026-08-31 16:07:06,401.401 INFO    ] 200
[2026-08-31 16:07:06,403.403 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:07:06,455.455 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:07:06,458.458 INFO    ] No update needed
[2026-08-31 16:07:06,460.460 INFO    ] Checking for camera pi updates...
[2026-08-31 16:07:06,498.498 INFO    ] 200
[2026-08-31 16:07:06,501.501 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:07:06,541.541 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:07:06,629.629 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:07:06,632.632 INFO    ] No camera update needed
[2026-08-31 16:07:06,634.634 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:07:06,636.636 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:07:06,642.642 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:07:06,647.647 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:07:08,688.688 INFO    ] ================================================
[2026-08-31 16:07:08,704.704 INFO    ] Launching Daemon at Mon Aug 31 16:07:08 IST 2026
[2026-08-31 16:07:08,715.715 INFO    ] ================================================
[2026-08-31 16:07:09,299.299 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:07:09
[2026-08-31 16:07:09,903.903 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:07:10,177.177 INFO    ] Initializing speech engine...
[2026-08-31 16:07:10,186.186 INFO    ] 2026-08-31 16:07:10
[2026-08-31 16:07:10,447.447 INFO    ] 2026-08-31 16:07:10
[2026-08-31 16:07:10,503.503 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:07:10,728.728 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:07:10,732.732 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:07:10,965.965 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:07:10,990.990 INFO    ] time= 31/08/2026 16:07:10
[2026-08-31 16:07:11,007.007 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:07:11,038.038 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:07:11,144.144 INFO    ] No existing commands found in stream
[2026-08-31 16:07:16,165.165 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:07:16,168.168 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-08-31 16:07:18,627.627 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 16:07:18,630.630 INFO    ] Checking for system updates...
[2026-08-31 16:07:18,667.667 INFO    ] 200
[2026-08-31 16:07:18,670.670 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:07:18,732.732 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:07:18,735.735 INFO    ] No update needed
[2026-08-31 16:07:18,738.738 INFO    ] Checking for camera pi updates...
[2026-08-31 16:07:18,773.773 INFO    ] 200
[2026-08-31 16:07:18,776.776 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:07:18,817.817 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:07:18,904.904 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:07:18,907.907 INFO    ] No camera update needed
[2026-08-31 16:07:18,910.910 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:07:18,913.913 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:07:18,919.919 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:07:18,925.925 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:07:20,968.968 INFO    ] ================================================
[2026-08-31 16:07:20,984.984 INFO    ] Launching Daemon at Mon Aug 31 16:07:20 IST 2026
[2026-08-31 16:07:21,995.995 INFO    ] ================================================
[2026-08-31 16:07:21,561.561 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:07:21
[2026-08-31 16:07:22,143.143 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:07:22,398.398 INFO    ] Initializing speech engine...
[2026-08-31 16:07:22,406.406 INFO    ] 2026-08-31 16:07:22
[2026-08-31 16:07:22,704.704 INFO    ] 2026-08-31 16:07:22
[2026-08-31 16:07:22,744.744 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:07:22,968.968 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:07:23,013.013 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:07:23,201.201 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:07:23,217.217 INFO    ] time= 31/08/2026 16:07:23
[2026-08-31 16:07:23,272.272 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:07:23,316.316 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:07:23,421.421 INFO    ] No existing commands found in stream
[2026-08-31 16:07:28,433.433 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:07:28,435.435 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-08-31 16:07:29,284.284 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 16:07:29,287.287 INFO    ] Checking for system updates...
[2026-08-31 16:07:29,326.326 INFO    ] 200
[2026-08-31 16:07:29,329.329 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:07:29,382.382 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:07:29,385.385 INFO    ] No update needed
[2026-08-31 16:07:29,387.387 INFO    ] Checking for camera pi updates...
[2026-08-31 16:07:29,421.421 INFO    ] 200
[2026-08-31 16:07:29,423.423 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:07:29,463.463 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:07:29,542.542 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:07:29,544.544 INFO    ] No camera update needed
[2026-08-31 16:07:29,547.547 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:07:29,549.549 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:07:29,555.555 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:07:29,560.560 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:07:31,603.603 INFO    ] ================================================
[2026-08-31 16:07:31,620.620 INFO    ] Launching Daemon at Mon Aug 31 16:07:31 IST 2026
[2026-08-31 16:07:31,632.632 INFO    ] ================================================
[2026-08-31 16:07:32,246.246 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:07:32
[2026-08-31 16:07:32,871.871 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:07:33,138.138 INFO    ] Initializing speech engine...
[2026-08-31 16:07:33,159.159 INFO    ] 2026-08-31 16:07:33
[2026-08-31 16:07:33,440.440 INFO    ] 2026-08-31 16:07:33
[2026-08-31 16:07:33,476.476 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:07:33,679.679 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:07:33,693.693 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:07:33,860.860 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:07:33,868.868 INFO    ] time= 31/08/2026 16:07:33
[2026-08-31 16:07:33,900.900 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:07:33,944.944 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:07:34,071.071 INFO    ] No existing commands found in stream
[2026-08-31 16:07:39,101.101 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:07:39,104.104 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-08-31 16:07:41,366.366 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 16:07:41,369.369 INFO    ] Checking for system updates...
[2026-08-31 16:07:41,405.405 INFO    ] 200
[2026-08-31 16:07:41,408.408 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:07:41,460.460 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:07:41,462.462 INFO    ] No update needed
[2026-08-31 16:07:41,465.465 INFO    ] Checking for camera pi updates...
[2026-08-31 16:07:41,500.500 INFO    ] 200
[2026-08-31 16:07:41,502.502 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:07:41,549.549 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:07:41,628.628 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:07:41,630.630 INFO    ] No camera update needed
[2026-08-31 16:07:41,632.632 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:07:41,635.635 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:07:41,640.640 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:07:41,645.645 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:07:43,684.684 INFO    ] ================================================
[2026-08-31 16:07:43,700.700 INFO    ] Launching Daemon at Mon Aug 31 16:07:43 IST 2026
[2026-08-31 16:07:43,711.711 INFO    ] ================================================
[2026-08-31 16:07:44,278.278 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:07:44
[2026-08-31 16:07:44,861.861 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:07:45,111.111 INFO    ] Initializing speech engine...
[2026-08-31 16:07:45,123.123 INFO    ] 2026-08-31 16:07:45
[2026-08-31 16:07:45,389.389 INFO    ] 2026-08-31 16:07:45
[2026-08-31 16:07:45,425.425 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:07:45,628.628 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:07:45,686.686 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:07:45,830.830 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:07:45,891.891 INFO    ] time= 31/08/2026 16:07:45
[2026-08-31 16:07:45,940.940 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:07:45,964.964 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:07:46,095.095 INFO    ] No existing commands found in stream
[2026-08-31 16:07:51,120.120 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:07:51,123.123 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-08-31 16:07:54,598.598 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 16:07:54,601.601 INFO    ] Checking for system updates...
[2026-08-31 16:07:54,636.636 INFO    ] 200
[2026-08-31 16:07:54,639.639 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:07:54,690.690 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:07:54,693.693 INFO    ] No update needed
[2026-08-31 16:07:54,695.695 INFO    ] Checking for camera pi updates...
[2026-08-31 16:07:54,730.730 INFO    ] 200
[2026-08-31 16:07:54,732.732 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:07:54,772.772 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:07:54,956.956 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:07:54,959.959 INFO    ] No camera update needed
[2026-08-31 16:07:54,962.962 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:07:54,964.964 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:07:54,970.970 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:07:54,975.975 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:07:57,016.016 INFO    ] ================================================
[2026-08-31 16:07:57,031.031 INFO    ] Launching Daemon at Mon Aug 31 16:07:57 IST 2026
[2026-08-31 16:07:57,041.041 INFO    ] ================================================
[2026-08-31 16:07:57,612.612 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:07:57
[2026-08-31 16:07:58,193.193 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:07:58,463.463 INFO    ] Initializing speech engine...
[2026-08-31 16:07:58,472.472 INFO    ] 2026-08-31 16:07:58
[2026-08-31 16:07:58,717.717 INFO    ] 2026-08-31 16:07:58
[2026-08-31 16:07:58,782.782 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:07:59,034.034 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:07:59,050.050 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:07:59,199.199 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:07:59,211.211 INFO    ] time= 31/08/2026 16:07:59
[2026-08-31 16:07:59,229.229 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:07:59,288.288 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:07:59,423.423 INFO    ] No existing commands found in stream
[2026-08-31 16:08:04,435.435 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:08:04,438.438 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-08-31 16:08:07,984.984 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 16:08:07,987.987 INFO    ] Checking for system updates...
[2026-08-31 16:08:08,023.023 INFO    ] 200
[2026-08-31 16:08:08,026.026 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:08:08,078.078 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:08:08,081.081 INFO    ] No update needed
[2026-08-31 16:08:08,087.087 INFO    ] Checking for camera pi updates...
[2026-08-31 16:08:08,121.121 INFO    ] 200
[2026-08-31 16:08:08,123.123 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:08:08,163.163 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:08:08,263.263 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:08:08,266.266 INFO    ] No camera update needed
[2026-08-31 16:08:08,268.268 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:08:08,270.270 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:08:08,276.276 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:08:08,281.281 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:08:10,322.322 INFO    ] ================================================
[2026-08-31 16:08:10,337.337 INFO    ] Launching Daemon at Mon Aug 31 16:08:10 IST 2026
[2026-08-31 16:08:10,348.348 INFO    ] ================================================
[2026-08-31 16:08:10,997.997 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:08:10
[2026-08-31 16:08:11,667.667 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:08:11,974.974 INFO    ] Initializing speech engine...
[2026-08-31 16:08:11,982.982 INFO    ] 2026-08-31 16:08:11
[2026-08-31 16:08:12,262.262 INFO    ] 2026-08-31 16:08:12
[2026-08-31 16:08:12,318.318 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:08:12,591.591 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:08:12,615.615 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:08:12,817.817 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:08:12,836.836 INFO    ] time= 31/08/2026 16:08:12
[2026-08-31 16:08:12,846.846 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:08:12,875.875 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:08:12,983.983 INFO    ] No existing commands found in stream
[2026-08-31 16:08:18,009.009 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:08:18,012.012 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-08-31 16:08:23,286.286 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 16:08:23,289.289 INFO    ] Checking for system updates...
[2026-08-31 16:08:23,330.330 INFO    ] 200
[2026-08-31 16:08:23,332.332 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:08:23,385.385 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:08:23,387.387 INFO    ] No update needed
[2026-08-31 16:08:23,390.390 INFO    ] Checking for camera pi updates...
[2026-08-31 16:08:23,427.427 INFO    ] 200
[2026-08-31 16:08:23,429.429 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:08:23,469.469 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:08:23,560.560 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:08:23,562.562 INFO    ] No camera update needed
[2026-08-31 16:08:23,564.564 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:08:23,567.567 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:08:23,572.572 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:08:23,577.577 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:08:25,616.616 INFO    ] ================================================
[2026-08-31 16:08:25,632.632 INFO    ] Launching Daemon at Mon Aug 31 16:08:25 IST 2026
[2026-08-31 16:08:25,643.643 INFO    ] ================================================
[2026-08-31 16:08:26,212.212 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:08:26
[2026-08-31 16:08:26,792.792 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:08:27,058.058 INFO    ] Initializing speech engine...
[2026-08-31 16:08:27,069.069 INFO    ] 2026-08-31 16:08:27
[2026-08-31 16:08:27,345.345 INFO    ] 2026-08-31 16:08:27
[2026-08-31 16:08:27,381.381 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:08:27,581.581 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:08:27,595.595 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:08:27,756.756 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:08:27,765.765 INFO    ] time= 31/08/2026 16:08:27
[2026-08-31 16:08:27,772.772 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:08:27,777.777 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:08:27,935.935 INFO    ] No existing commands found in stream
[2026-08-31 16:08:32,965.965 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:08:32,968.968 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-08-31 16:08:34,472.472 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 16:08:34,475.475 INFO    ] Checking for system updates...
[2026-08-31 16:08:34,515.515 INFO    ] 200
[2026-08-31 16:08:34,517.517 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:08:34,576.576 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:08:34,579.579 INFO    ] No update needed
[2026-08-31 16:08:34,581.581 INFO    ] Checking for camera pi updates...
[2026-08-31 16:08:34,616.616 INFO    ] 200
[2026-08-31 16:08:34,619.619 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:08:34,660.660 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:08:34,730.730 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:08:34,733.733 INFO    ] No camera update needed
[2026-08-31 16:08:34,735.735 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:08:34,737.737 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:08:34,742.742 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:08:34,747.747 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:08:36,789.789 INFO    ] ================================================
[2026-08-31 16:08:36,805.805 INFO    ] Launching Daemon at Mon Aug 31 16:08:36 IST 2026
[2026-08-31 16:08:36,817.817 INFO    ] ================================================
[2026-08-31 16:08:37,400.400 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:08:37
[2026-08-31 16:08:37,998.998 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:08:38,273.273 INFO    ] Initializing speech engine...
[2026-08-31 16:08:38,280.280 INFO    ] 2026-08-31 16:08:38
[2026-08-31 16:08:38,541.541 INFO    ] 2026-08-31 16:08:38
[2026-08-31 16:08:38,571.571 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:08:38,822.822 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:08:38,831.831 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:08:38,968.968 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:08:39,028.028 INFO    ] time= 31/08/2026 16:08:38
[2026-08-31 16:08:39,077.077 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:08:39,102.102 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:08:39,238.238 INFO    ] No existing commands found in stream
[2026-08-31 16:08:44,261.261 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:08:44,264.264 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-08-31 16:08:46,004.004 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 16:08:46,008.008 INFO    ] Checking for system updates...
[2026-08-31 16:08:46,049.049 INFO    ] 200
[2026-08-31 16:08:46,052.052 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:08:46,117.117 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:08:46,120.120 INFO    ] No update needed
[2026-08-31 16:08:46,123.123 INFO    ] Checking for camera pi updates...
[2026-08-31 16:08:46,159.159 INFO    ] 200
[2026-08-31 16:08:46,161.161 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:08:46,209.209 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:08:46,292.292 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:08:46,295.295 INFO    ] No camera update needed
[2026-08-31 16:08:46,298.298 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:08:46,301.301 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:08:46,306.306 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:08:46,312.312 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:08:48,352.352 INFO    ] ================================================
[2026-08-31 16:08:48,367.367 INFO    ] Launching Daemon at Mon Aug 31 16:08:48 IST 2026
[2026-08-31 16:08:48,378.378 INFO    ] ================================================
[2026-08-31 16:08:49,028.028 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:08:49
[2026-08-31 16:08:49,651.651 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:08:49,917.917 INFO    ] Initializing speech engine...
[2026-08-31 16:08:49,926.926 INFO    ] 2026-08-31 16:08:49
[2026-08-31 16:08:50,179.179 INFO    ] 2026-08-31 16:08:50
[2026-08-31 16:08:50,238.238 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:08:50,464.464 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:08:50,469.469 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:08:50,683.683 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:08:50,724.724 INFO    ] time= 31/08/2026 16:08:50
[2026-08-31 16:08:50,730.730 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:08:50,747.747 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:08:50,874.874 INFO    ] No existing commands found in stream
[2026-08-31 16:08:55,889.889 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:08:55,892.892 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-08-31 16:08:57,994.994 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 16:08:57,996.996 INFO    ] Checking for system updates...
[2026-08-31 16:08:58,036.036 INFO    ] 200
[2026-08-31 16:08:58,038.038 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:08:58,098.098 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:08:58,100.100 INFO    ] No update needed
[2026-08-31 16:08:58,103.103 INFO    ] Checking for camera pi updates...
[2026-08-31 16:08:58,136.136 INFO    ] 200
[2026-08-31 16:08:58,139.139 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:08:58,180.180 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:08:58,259.259 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:08:58,262.262 INFO    ] No camera update needed
[2026-08-31 16:08:58,264.264 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:08:58,266.266 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:08:58,272.272 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:08:58,276.276 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:09:00,318.318 INFO    ] ================================================
[2026-08-31 16:09:00,333.333 INFO    ] Launching Daemon at Mon Aug 31 16:09:00 IST 2026
[2026-08-31 16:09:00,344.344 INFO    ] ================================================
[2026-08-31 16:09:00,910.910 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:09:00
[2026-08-31 16:09:01,646.646 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:09:02,043.043 INFO    ] Initializing speech engine...
[2026-08-31 16:09:02,050.050 INFO    ] 2026-08-31 16:09:02
[2026-08-31 16:09:02,394.394 INFO    ] 2026-08-31 16:09:02
[2026-08-31 16:09:02,480.480 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:09:02,699.699 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:09:02,714.714 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:09:02,919.919 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:09:02,954.954 INFO    ] time= 31/08/2026 16:09:02
[2026-08-31 16:09:03,003.003 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:09:03,011.011 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:09:03,079.079 INFO    ] No existing commands found in stream
[2026-08-31 16:09:08,094.094 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:09:08,096.096 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-08-31 16:09:12,167.167 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 16:09:12,170.170 INFO    ] Checking for system updates...
[2026-08-31 16:09:12,209.209 INFO    ] 200
[2026-08-31 16:09:12,212.212 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:09:12,264.264 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:09:12,267.267 INFO    ] No update needed
[2026-08-31 16:09:12,269.269 INFO    ] Checking for camera pi updates...
[2026-08-31 16:09:12,303.303 INFO    ] 200
[2026-08-31 16:09:12,305.305 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:09:12,345.345 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:09:12,426.426 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:09:12,429.429 INFO    ] No camera update needed
[2026-08-31 16:09:12,431.431 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:09:12,434.434 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:09:12,439.439 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:09:12,444.444 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:09:14,483.483 INFO    ] ================================================
[2026-08-31 16:09:14,498.498 INFO    ] Launching Daemon at Mon Aug 31 16:09:14 IST 2026
[2026-08-31 16:09:14,509.509 INFO    ] ================================================
[2026-08-31 16:09:15,087.087 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:09:15
[2026-08-31 16:09:15,685.685 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:09:15,962.962 INFO    ] Initializing speech engine...
[2026-08-31 16:09:15,967.967 INFO    ] 2026-08-31 16:09:15
[2026-08-31 16:09:16,228.228 INFO    ] 2026-08-31 16:09:16
[2026-08-31 16:09:16,283.283 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:09:16,562.562 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:09:16,571.571 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:09:16,740.740 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:09:16,769.769 INFO    ] time= 31/08/2026 16:09:16
[2026-08-31 16:09:16,775.775 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:09:16,793.793 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:09:16,922.922 INFO    ] No existing commands found in stream
[2026-08-31 16:09:21,935.935 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:09:21,938.938 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-08-31 16:09:27,225.225 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 16:09:27,228.228 INFO    ] Checking for system updates...
[2026-08-31 16:09:27,268.268 INFO    ] 200
[2026-08-31 16:09:27,270.270 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:09:27,322.322 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:09:27,325.325 INFO    ] No update needed
[2026-08-31 16:09:27,327.327 INFO    ] Checking for camera pi updates...
[2026-08-31 16:09:27,361.361 INFO    ] 200
[2026-08-31 16:09:27,363.363 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:09:27,413.413 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:09:27,505.505 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:09:27,508.508 INFO    ] No camera update needed
[2026-08-31 16:09:27,510.510 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:09:27,512.512 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:09:27,518.518 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:09:27,523.523 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:09:29,566.566 INFO    ] ================================================
[2026-08-31 16:09:29,582.582 INFO    ] Launching Daemon at Mon Aug 31 16:09:29 IST 2026
[2026-08-31 16:09:29,592.592 INFO    ] ================================================
[2026-08-31 16:09:30,158.158 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:09:30
[2026-08-31 16:09:30,740.740 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:09:31,010.010 INFO    ] Initializing speech engine...
[2026-08-31 16:09:31,019.019 INFO    ] 2026-08-31 16:09:31
[2026-08-31 16:09:31,268.268 INFO    ] 2026-08-31 16:09:31
[2026-08-31 16:09:31,303.303 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:09:31,522.522 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:09:31,570.570 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:09:31,755.755 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:09:31,826.826 INFO    ] time= 31/08/2026 16:09:31
[2026-08-31 16:09:31,872.872 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:09:31,879.879 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:09:32,039.039 INFO    ] No existing commands found in stream
[2026-08-31 16:09:37,061.061 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:09:37,063.063 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-08-31 16:09:42,328.328 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 16:09:42,331.331 INFO    ] Checking for system updates...
[2026-08-31 16:09:42,371.371 INFO    ] 200
[2026-08-31 16:09:42,374.374 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:09:42,425.425 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:09:42,428.428 INFO    ] No update needed
[2026-08-31 16:09:42,430.430 INFO    ] Checking for camera pi updates...
[2026-08-31 16:09:42,464.464 INFO    ] 200
[2026-08-31 16:09:42,467.467 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:09:42,507.507 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:09:42,590.590 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:09:42,592.592 INFO    ] No camera update needed
[2026-08-31 16:09:42,594.594 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:09:42,596.596 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:09:42,602.602 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:09:42,607.607 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:09:44,646.646 INFO    ] ================================================
[2026-08-31 16:09:44,661.661 INFO    ] Launching Daemon at Mon Aug 31 16:09:44 IST 2026
[2026-08-31 16:09:44,672.672 INFO    ] ================================================
[2026-08-31 16:09:45,253.253 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:09:45
[2026-08-31 16:09:45,852.852 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:09:46,127.127 INFO    ] Initializing speech engine...
[2026-08-31 16:09:46,132.132 INFO    ] 2026-08-31 16:09:46
[2026-08-31 16:09:46,394.394 INFO    ] 2026-08-31 16:09:46
[2026-08-31 16:09:46,448.448 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:09:46,699.699 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:09:46,704.704 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:09:46,931.931 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:09:46,938.938 INFO    ] time= 31/08/2026 16:09:46
[2026-08-31 16:09:46,957.957 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:09:46,979.979 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:09:47,093.093 INFO    ] No existing commands found in stream
[2026-08-31 16:09:52,116.116 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:09:52,119.119 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-08-31 16:09:53,249.249 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 16:09:53,252.252 INFO    ] Checking for system updates...
[2026-08-31 16:09:53,292.292 INFO    ] 200
[2026-08-31 16:09:53,294.294 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:09:53,353.353 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:09:53,356.356 INFO    ] No update needed
[2026-08-31 16:09:53,358.358 INFO    ] Checking for camera pi updates...
[2026-08-31 16:09:53,392.392 INFO    ] 200
[2026-08-31 16:09:53,395.395 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:09:53,435.435 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:09:53,510.510 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:09:53,513.513 INFO    ] No camera update needed
[2026-08-31 16:09:53,515.515 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:09:53,517.517 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:09:53,522.522 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:09:53,527.527 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:09:55,567.567 INFO    ] ================================================
[2026-08-31 16:09:55,582.582 INFO    ] Launching Daemon at Mon Aug 31 16:09:55 IST 2026
[2026-08-31 16:09:55,593.593 INFO    ] ================================================
[2026-08-31 16:09:56,157.157 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:09:56
[2026-08-31 16:09:56,739.739 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:09:56,986.986 INFO    ] Initializing speech engine...
[2026-08-31 16:09:56,992.992 INFO    ] 2026-08-31 16:09:56
[2026-08-31 16:09:57,266.266 INFO    ] 2026-08-31 16:09:57
[2026-08-31 16:09:57,301.301 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:09:57,504.504 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:09:57,563.563 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:09:57,708.708 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:09:57,773.773 INFO    ] time= 31/08/2026 16:09:57
[2026-08-31 16:09:57,832.832 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:09:57,845.845 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:09:57,957.957 INFO    ] No existing commands found in stream
[2026-08-31 16:10:02,979.979 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:10:02,983.983 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-08-31 16:10:08,555.555 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 16:10:08,558.558 INFO    ] Checking for system updates...
[2026-08-31 16:10:08,597.597 INFO    ] 200
[2026-08-31 16:10:08,599.599 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:10:08,658.658 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:10:08,660.660 INFO    ] No update needed
[2026-08-31 16:10:08,663.663 INFO    ] Checking for camera pi updates...
[2026-08-31 16:10:08,700.700 INFO    ] 200
[2026-08-31 16:10:08,702.702 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:10:08,743.743 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:10:08,830.830 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:10:08,832.832 INFO    ] No camera update needed
[2026-08-31 16:10:08,835.835 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:10:08,837.837 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:10:08,842.842 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:10:08,847.847 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:10:10,886.886 INFO    ] ================================================
[2026-08-31 16:10:10,901.901 INFO    ] Launching Daemon at Mon Aug 31 16:10:10 IST 2026
[2026-08-31 16:10:10,912.912 INFO    ] ================================================
[2026-08-31 16:10:11,483.483 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:10:11
[2026-08-31 16:10:12,065.065 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:10:12,320.320 INFO    ] Initializing speech engine...
[2026-08-31 16:10:12,326.326 INFO    ] 2026-08-31 16:10:12
[2026-08-31 16:10:12,617.617 INFO    ] 2026-08-31 16:10:12
[2026-08-31 16:10:12,651.651 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:10:12,848.848 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:10:12,862.862 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:10:13,008.008 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:10:13,025.025 INFO    ] time= 31/08/2026 16:10:13
[2026-08-31 16:10:13,033.033 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:10:13,040.040 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:10:13,118.118 INFO    ] No existing commands found in stream
[2026-08-31 16:10:18,143.143 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:10:18,146.146 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-08-31 16:10:19,146.146 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 16:10:19,149.149 INFO    ] Checking for system updates...
[2026-08-31 16:10:19,188.188 INFO    ] 200
[2026-08-31 16:10:19,191.191 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:10:19,249.249 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:10:19,252.252 INFO    ] No update needed
[2026-08-31 16:10:19,254.254 INFO    ] Checking for camera pi updates...
[2026-08-31 16:10:19,288.288 INFO    ] 200
[2026-08-31 16:10:19,290.290 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:10:19,331.331 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:10:19,427.427 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:10:19,430.430 INFO    ] No camera update needed
[2026-08-31 16:10:19,432.432 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:10:19,434.434 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:10:19,440.440 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:10:19,444.444 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:10:21,485.485 INFO    ] ================================================
[2026-08-31 16:10:21,501.501 INFO    ] Launching Daemon at Mon Aug 31 16:10:21 IST 2026
[2026-08-31 16:10:21,512.512 INFO    ] ================================================
[2026-08-31 16:10:22,092.092 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:10:22
[2026-08-31 16:10:22,688.688 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:10:22,941.941 INFO    ] Initializing speech engine...
[2026-08-31 16:10:22,953.953 INFO    ] 2026-08-31 16:10:22
[2026-08-31 16:10:23,218.218 INFO    ] 2026-08-31 16:10:23
[2026-08-31 16:10:23,260.260 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:10:23,504.504 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:10:23,514.514 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:10:23,645.645 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:10:23,688.688 INFO    ] time= 31/08/2026 16:10:23
[2026-08-31 16:10:23,747.747 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:10:23,778.778 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:10:23,911.911 INFO    ] No existing commands found in stream
[2026-08-31 16:10:28,933.933 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:10:28,936.936 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-08-31 16:10:29,841.841 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 16:10:29,844.844 INFO    ] Checking for system updates...
[2026-08-31 16:10:29,880.880 INFO    ] 200
[2026-08-31 16:10:29,882.882 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:10:29,941.941 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:10:29,944.944 INFO    ] No update needed
[2026-08-31 16:10:29,947.947 INFO    ] Checking for camera pi updates...
[2026-08-31 16:10:29,981.981 INFO    ] 200
[2026-08-31 16:10:29,983.983 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:10:30,023.023 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:10:30,091.091 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:10:30,093.093 INFO    ] No camera update needed
[2026-08-31 16:10:30,095.095 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:10:30,098.098 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:10:30,103.103 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:10:30,108.108 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:10:32,153.153 INFO    ] ================================================
[2026-08-31 16:10:32,171.171 INFO    ] Launching Daemon at Mon Aug 31 16:10:32 IST 2026
[2026-08-31 16:10:32,183.183 INFO    ] ================================================
[2026-08-31 16:10:32,871.871 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:10:32
[2026-08-31 16:10:33,531.531 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:10:33,832.832 INFO    ] Initializing speech engine...
[2026-08-31 16:10:33,844.844 INFO    ] 2026-08-31 16:10:33
[2026-08-31 16:10:34,124.124 INFO    ] 2026-08-31 16:10:34
[2026-08-31 16:10:34,168.168 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:10:34,419.419 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:10:34,437.437 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:10:34,653.653 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:10:34,659.659 INFO    ] time= 31/08/2026 16:10:34
[2026-08-31 16:10:34,680.680 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:10:34,706.706 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:10:34,833.833 INFO    ] No existing commands found in stream
[2026-08-31 16:10:39,864.864 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:10:39,867.867 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-08-31 16:10:42,238.238 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 16:10:42,241.241 INFO    ] Checking for system updates...
[2026-08-31 16:10:42,280.280 INFO    ] 200
[2026-08-31 16:10:42,282.282 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:10:42,342.342 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:10:42,344.344 INFO    ] No update needed
[2026-08-31 16:10:42,346.346 INFO    ] Checking for camera pi updates...
[2026-08-31 16:10:42,380.380 INFO    ] 200
[2026-08-31 16:10:42,383.383 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:10:42,424.424 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:10:42,505.505 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:10:42,508.508 INFO    ] No camera update needed
[2026-08-31 16:10:42,510.510 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:10:42,513.513 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:10:42,518.518 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:10:42,523.523 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:10:44,562.562 INFO    ] ================================================
[2026-08-31 16:10:44,578.578 INFO    ] Launching Daemon at Mon Aug 31 16:10:44 IST 2026
[2026-08-31 16:10:44,589.589 INFO    ] ================================================
[2026-08-31 16:10:45,243.243 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:10:45
[2026-08-31 16:10:45,917.917 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:10:46,219.219 INFO    ] Initializing speech engine...
[2026-08-31 16:10:46,233.233 INFO    ] 2026-08-31 16:10:46
[2026-08-31 16:10:46,542.542 INFO    ] 2026-08-31 16:10:46
[2026-08-31 16:10:46,628.628 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:10:46,841.841 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:10:46,845.845 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:10:47,031.031 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:10:47,046.046 INFO    ] time= 31/08/2026 16:10:47
[2026-08-31 16:10:47,064.064 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:10:47,093.093 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:10:47,210.210 INFO    ] No existing commands found in stream
[2026-08-31 16:10:52,240.240 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:10:52,243.243 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-08-31 16:10:54,843.843 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 16:10:54,846.846 INFO    ] Checking for system updates...
[2026-08-31 16:10:54,887.887 INFO    ] 200
[2026-08-31 16:10:54,890.890 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:10:54,951.951 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:10:54,954.954 INFO    ] No update needed
[2026-08-31 16:10:54,957.957 INFO    ] Checking for camera pi updates...
[2026-08-31 16:10:54,995.995 INFO    ] 200
[2026-08-31 16:10:54,998.998 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:10:55,044.044 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:10:55,143.143 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:10:55,146.146 INFO    ] No camera update needed
[2026-08-31 16:10:55,149.149 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:10:55,152.152 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:10:55,158.158 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:10:55,164.164 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:10:57,205.205 INFO    ] ================================================
[2026-08-31 16:10:57,220.220 INFO    ] Launching Daemon at Mon Aug 31 16:10:57 IST 2026
[2026-08-31 16:10:57,232.232 INFO    ] ================================================
[2026-08-31 16:10:57,804.804 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:10:57
[2026-08-31 16:10:58,404.404 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:10:58,677.677 INFO    ] Initializing speech engine...
[2026-08-31 16:10:58,686.686 INFO    ] 2026-08-31 16:10:58
[2026-08-31 16:10:58,950.950 INFO    ] 2026-08-31 16:10:58
[2026-08-31 16:10:59,003.003 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:10:59,258.258 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:10:59,264.264 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:10:59,479.479 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:10:59,501.501 INFO    ] time= 31/08/2026 16:10:59
[2026-08-31 16:10:59,516.516 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:10:59,525.525 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:10:59,655.655 INFO    ] No existing commands found in stream
[2026-08-31 16:11:04,678.678 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:11:04,680.680 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-08-31 16:11:10,306.306 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 16:11:10,309.309 INFO    ] Checking for system updates...
[2026-08-31 16:11:10,348.348 INFO    ] 200
[2026-08-31 16:11:10,351.351 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:11:10,403.403 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:11:10,405.405 INFO    ] No update needed
[2026-08-31 16:11:10,408.408 INFO    ] Checking for camera pi updates...
[2026-08-31 16:11:10,441.441 INFO    ] 200
[2026-08-31 16:11:10,444.444 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:11:10,488.488 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:11:10,572.572 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:11:10,574.574 INFO    ] No camera update needed
[2026-08-31 16:11:10,576.576 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:11:10,579.579 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:11:10,584.584 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:11:10,589.589 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:11:12,630.630 INFO    ] ================================================
[2026-08-31 16:11:12,646.646 INFO    ] Launching Daemon at Mon Aug 31 16:11:12 IST 2026
[2026-08-31 16:11:12,656.656 INFO    ] ================================================
[2026-08-31 16:11:13,238.238 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:11:13
[2026-08-31 16:11:13,840.840 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:11:14,117.117 INFO    ] Initializing speech engine...
[2026-08-31 16:11:14,126.126 INFO    ] 2026-08-31 16:11:14
[2026-08-31 16:11:14,385.385 INFO    ] 2026-08-31 16:11:14
[2026-08-31 16:11:14,415.415 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:11:14,590.590 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:11:14,609.609 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:11:14,739.739 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:11:14,745.745 INFO    ] time= 31/08/2026 16:11:14
[2026-08-31 16:11:14,791.791 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:11:14,815.815 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:11:14,920.920 INFO    ] No existing commands found in stream
[2026-08-31 16:11:19,948.948 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:11:19,951.951 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-08-31 16:11:21,507.507 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 16:11:21,511.511 INFO    ] Checking for system updates...
[2026-08-31 16:11:21,558.558 INFO    ] 200
[2026-08-31 16:11:21,562.562 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:11:21,619.619 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:11:21,622.622 INFO    ] No update needed
[2026-08-31 16:11:21,624.624 INFO    ] Checking for camera pi updates...
[2026-08-31 16:11:21,658.658 INFO    ] 200
[2026-08-31 16:11:21,661.661 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:11:21,705.705 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:11:21,801.801 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:11:21,804.804 INFO    ] No camera update needed
[2026-08-31 16:11:21,806.806 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:11:21,809.809 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:11:21,814.814 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:11:21,819.819 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:11:23,860.860 INFO    ] ================================================
[2026-08-31 16:11:23,877.877 INFO    ] Launching Daemon at Mon Aug 31 16:11:23 IST 2026
[2026-08-31 16:11:23,888.888 INFO    ] ================================================
[2026-08-31 16:11:24,457.457 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:11:24
[2026-08-31 16:11:25,044.044 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:11:25,299.299 INFO    ] Initializing speech engine...
[2026-08-31 16:11:25,308.308 INFO    ] 2026-08-31 16:11:25
[2026-08-31 16:11:25,598.598 INFO    ] 2026-08-31 16:11:25
[2026-08-31 16:11:25,636.636 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:11:25,828.828 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:11:25,843.843 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:11:25,986.986 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:11:26,008.008 INFO    ] time= 31/08/2026 16:11:25
[2026-08-31 16:11:26,016.016 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:11:26,020.020 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:11:26,096.096 INFO    ] No existing commands found in stream
[2026-08-31 16:11:31,112.112 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:11:31,115.115 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-08-31 16:11:33,524.524 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 16:11:33,526.526 INFO    ] Checking for system updates...
[2026-08-31 16:11:33,562.562 INFO    ] 200
[2026-08-31 16:11:33,565.565 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:11:33,618.618 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:11:33,621.621 INFO    ] No update needed
[2026-08-31 16:11:33,623.623 INFO    ] Checking for camera pi updates...
[2026-08-31 16:11:33,656.656 INFO    ] 200
[2026-08-31 16:11:33,658.658 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:11:33,699.699 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:11:33,802.802 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:11:33,804.804 INFO    ] No camera update needed
[2026-08-31 16:11:33,807.807 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:11:33,809.809 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:11:33,815.815 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:11:33,820.820 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:11:35,861.861 INFO    ] ================================================
[2026-08-31 16:11:35,876.876 INFO    ] Launching Daemon at Mon Aug 31 16:11:35 IST 2026
[2026-08-31 16:11:35,887.887 INFO    ] ================================================
[2026-08-31 16:11:36,459.459 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:11:36
[2026-08-31 16:11:37,043.043 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:11:37,301.301 INFO    ] Initializing speech engine...
[2026-08-31 16:11:37,322.322 INFO    ] 2026-08-31 16:11:37
[2026-08-31 16:11:37,589.589 INFO    ] 2026-08-31 16:11:37
[2026-08-31 16:11:37,628.628 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:11:37,826.826 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:11:37,839.839 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:11:37,999.999 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:11:38,009.009 INFO    ] time= 31/08/2026 16:11:38
[2026-08-31 16:11:38,014.014 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:11:38,020.020 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:11:38,132.132 INFO    ] No existing commands found in stream
[2026-08-31 16:11:43,162.162 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:11:43,165.165 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-08-31 16:11:47,205.205 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 16:11:47,208.208 INFO    ] Checking for system updates...
[2026-08-31 16:11:47,243.243 INFO    ] 200
[2026-08-31 16:11:47,245.245 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:11:47,298.298 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:11:47,300.300 INFO    ] No update needed
[2026-08-31 16:11:47,302.302 INFO    ] Checking for camera pi updates...
[2026-08-31 16:11:47,345.345 INFO    ] 200
[2026-08-31 16:11:47,347.347 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:11:47,392.392 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:11:47,495.495 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:11:47,498.498 INFO    ] No camera update needed
[2026-08-31 16:11:47,500.500 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:11:47,503.503 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:11:47,508.508 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:11:47,513.513 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:11:49,556.556 INFO    ] ================================================
[2026-08-31 16:11:49,571.571 INFO    ] Launching Daemon at Mon Aug 31 16:11:49 IST 2026
[2026-08-31 16:11:49,581.581 INFO    ] ================================================
[2026-08-31 16:11:50,163.163 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:11:50
[2026-08-31 16:11:50,764.764 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:11:51,048.048 INFO    ] Initializing speech engine...
[2026-08-31 16:11:51,068.068 INFO    ] 2026-08-31 16:11:51
[2026-08-31 16:11:51,344.344 INFO    ] 2026-08-31 16:11:51
[2026-08-31 16:11:51,399.399 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:11:51,683.683 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:11:51,692.692 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:11:51,889.889 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:11:51,907.907 INFO    ] time= 31/08/2026 16:11:51
[2026-08-31 16:11:51,918.918 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:11:51,944.944 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:11:52,061.061 INFO    ] No existing commands found in stream
[2026-08-31 16:11:57,096.096 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:11:57,099.099 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-08-31 16:11:58,075.075 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 16:11:58,078.078 INFO    ] Checking for system updates...
[2026-08-31 16:11:58,115.115 INFO    ] 200
[2026-08-31 16:11:58,118.118 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:11:58,174.174 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:11:58,176.176 INFO    ] No update needed
[2026-08-31 16:11:58,179.179 INFO    ] Checking for camera pi updates...
[2026-08-31 16:11:58,218.218 INFO    ] 200
[2026-08-31 16:11:58,221.221 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:11:58,262.262 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:11:58,344.344 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:11:58,347.347 INFO    ] No camera update needed
[2026-08-31 16:11:58,350.350 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:11:58,352.352 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:11:58,358.358 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:11:58,364.364 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:12:00,405.405 INFO    ] ================================================
[2026-08-31 16:12:00,420.420 INFO    ] Launching Daemon at Mon Aug 31 16:12:00 IST 2026
[2026-08-31 16:12:00,431.431 INFO    ] ================================================
[2026-08-31 16:12:00,996.996 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:12:00
[2026-08-31 16:12:01,583.583 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:12:02,227.227 INFO    ] Initializing speech engine...
[2026-08-31 16:12:02,240.240 INFO    ] 2026-08-31 16:12:02
[2026-08-31 16:12:02,569.569 INFO    ] 2026-08-31 16:12:02
[2026-08-31 16:12:02,622.622 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:12:02,859.859 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:12:02,908.908 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:12:03,057.057 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:12:03,092.092 INFO    ] time= 31/08/2026 16:12:03
[2026-08-31 16:12:03,101.101 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:12:03,109.109 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:12:03,227.227 INFO    ] No existing commands found in stream
[2026-08-31 16:12:08,258.258 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:12:08,261.261 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-08-31 16:12:10,385.385 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 16:12:10,389.389 INFO    ] Checking for system updates...
[2026-08-31 16:12:10,425.425 INFO    ] 200
[2026-08-31 16:12:10,428.428 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:12:10,481.481 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:12:10,483.483 INFO    ] No update needed
[2026-08-31 16:12:10,486.486 INFO    ] Checking for camera pi updates...
[2026-08-31 16:12:10,523.523 INFO    ] 200
[2026-08-31 16:12:10,525.525 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:12:10,569.569 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:12:10,771.771 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:12:10,773.773 INFO    ] No camera update needed
[2026-08-31 16:12:10,776.776 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:12:10,778.778 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:12:10,784.784 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:12:10,789.789 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:12:12,830.830 INFO    ] ================================================
[2026-08-31 16:12:12,846.846 INFO    ] Launching Daemon at Mon Aug 31 16:12:12 IST 2026
[2026-08-31 16:12:12,856.856 INFO    ] ================================================
[2026-08-31 16:12:13,434.434 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:12:13
[2026-08-31 16:12:14,029.029 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:12:14,279.279 INFO    ] Initializing speech engine...
[2026-08-31 16:12:14,284.284 INFO    ] 2026-08-31 16:12:14
[2026-08-31 16:12:14,559.559 INFO    ] 2026-08-31 16:12:14
[2026-08-31 16:12:14,629.629 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:12:14,860.860 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:12:14,865.865 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:12:15,092.092 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:12:15,128.128 INFO    ] time= 31/08/2026 16:12:15
[2026-08-31 16:12:15,134.134 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:12:15,154.154 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:12:15,304.304 INFO    ] No existing commands found in stream
[2026-08-31 16:12:20,341.341 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:12:20,344.344 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-08-31 16:12:24,125.125 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 16:12:24,128.128 INFO    ] Checking for system updates...
[2026-08-31 16:12:24,173.173 INFO    ] 200
[2026-08-31 16:12:24,176.176 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:12:24,239.239 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:12:24,241.241 INFO    ] No update needed
[2026-08-31 16:12:24,244.244 INFO    ] Checking for camera pi updates...
[2026-08-31 16:12:24,281.281 INFO    ] 200
[2026-08-31 16:12:24,283.283 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:12:24,328.328 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:12:24,378.378 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:12:24,381.381 INFO    ] No camera update needed
[2026-08-31 16:12:24,383.383 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:12:24,385.385 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:12:24,391.391 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:12:24,395.395 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:12:26,436.436 INFO    ] ================================================
[2026-08-31 16:12:26,452.452 INFO    ] Launching Daemon at Mon Aug 31 16:12:26 IST 2026
[2026-08-31 16:12:26,463.463 INFO    ] ================================================
[2026-08-31 16:12:27,029.029 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:12:27
[2026-08-31 16:12:27,611.611 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:12:27,882.882 INFO    ] Initializing speech engine...
[2026-08-31 16:12:27,888.888 INFO    ] 2026-08-31 16:12:27
[2026-08-31 16:12:28,140.140 INFO    ] 2026-08-31 16:12:28
[2026-08-31 16:12:28,199.199 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:12:28,481.481 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:12:28,490.490 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:12:28,665.665 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:12:28,689.689 INFO    ] time= 31/08/2026 16:12:28
[2026-08-31 16:12:28,705.705 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:12:28,712.712 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:12:28,825.825 INFO    ] No existing commands found in stream
[2026-08-31 16:12:33,849.849 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:12:33,852.852 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-08-31 16:12:36,311.311 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 16:12:36,313.313 INFO    ] Checking for system updates...
[2026-08-31 16:12:36,353.353 INFO    ] 200
[2026-08-31 16:12:36,356.356 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:12:36,416.416 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:12:36,419.419 INFO    ] No update needed
[2026-08-31 16:12:36,422.422 INFO    ] Checking for camera pi updates...
[2026-08-31 16:12:36,456.456 INFO    ] 200
[2026-08-31 16:12:36,459.459 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:12:36,499.499 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:12:36,559.559 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:12:36,562.562 INFO    ] No camera update needed
[2026-08-31 16:12:36,565.565 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:12:36,567.567 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:12:36,573.573 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:12:36,579.579 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:12:38,622.622 INFO    ] ================================================
[2026-08-31 16:12:38,638.638 INFO    ] Launching Daemon at Mon Aug 31 16:12:38 IST 2026
[2026-08-31 16:12:38,649.649 INFO    ] ================================================
[2026-08-31 16:12:39,217.217 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:12:39
[2026-08-31 16:12:39,799.799 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:12:40,053.053 INFO    ] Initializing speech engine...
[2026-08-31 16:12:40,068.068 INFO    ] 2026-08-31 16:12:40
[2026-08-31 16:12:40,350.350 INFO    ] 2026-08-31 16:12:40
[2026-08-31 16:12:40,384.384 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:12:40,577.577 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:12:40,584.584 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:12:40,754.754 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:12:40,763.763 INFO    ] time= 31/08/2026 16:12:40
[2026-08-31 16:12:40,770.770 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:12:40,796.796 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:12:40,954.954 INFO    ] No existing commands found in stream
[2026-08-31 16:12:45,979.979 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:12:45,982.982 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-08-31 16:12:49,764.764 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 16:12:49,766.766 INFO    ] Checking for system updates...
[2026-08-31 16:12:49,803.803 INFO    ] 200
[2026-08-31 16:12:49,805.805 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:12:49,857.857 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:12:49,859.859 INFO    ] No update needed
[2026-08-31 16:12:49,861.861 INFO    ] Checking for camera pi updates...
[2026-08-31 16:12:49,896.896 INFO    ] 200
[2026-08-31 16:12:49,898.898 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:12:49,943.943 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:12:50,046.046 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:12:50,048.048 INFO    ] No camera update needed
[2026-08-31 16:12:50,050.050 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:12:50,053.053 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:12:50,058.058 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:12:50,063.063 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:12:52,105.105 INFO    ] ================================================
[2026-08-31 16:12:52,120.120 INFO    ] Launching Daemon at Mon Aug 31 16:12:52 IST 2026
[2026-08-31 16:12:52,131.131 INFO    ] ================================================
[2026-08-31 16:12:52,698.698 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:12:52
[2026-08-31 16:12:53,282.282 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:12:53,543.543 INFO    ] Initializing speech engine...
[2026-08-31 16:12:53,563.563 INFO    ] 2026-08-31 16:12:53
[2026-08-31 16:12:53,815.815 INFO    ] 2026-08-31 16:12:53
[2026-08-31 16:12:53,850.850 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:12:54,110.110 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:12:54,119.119 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:12:54,339.339 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:12:54,385.385 INFO    ] time= 31/08/2026 16:12:54
[2026-08-31 16:12:54,392.392 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:12:54,410.410 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:12:54,538.538 INFO    ] No existing commands found in stream
[2026-08-31 16:12:59,554.554 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:12:59,557.557 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-08-31 16:13:03,482.482 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 16:13:03,484.484 INFO    ] Checking for system updates...
[2026-08-31 16:13:03,522.522 INFO    ] 200
[2026-08-31 16:13:03,525.525 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:13:03,578.578 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:13:03,580.580 INFO    ] No update needed
[2026-08-31 16:13:03,582.582 INFO    ] Checking for camera pi updates...
[2026-08-31 16:13:03,619.619 INFO    ] 200
[2026-08-31 16:13:03,621.621 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:13:03,661.661 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:13:03,753.753 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:13:03,755.755 INFO    ] No camera update needed
[2026-08-31 16:13:03,758.758 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:13:03,760.760 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:13:03,765.765 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:13:03,770.770 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:13:05,811.811 INFO    ] ================================================
[2026-08-31 16:13:05,827.827 INFO    ] Launching Daemon at Mon Aug 31 16:13:05 IST 2026
[2026-08-31 16:13:05,838.838 INFO    ] ================================================
[2026-08-31 16:13:06,475.475 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:13:06
[2026-08-31 16:13:07,140.140 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:13:07,438.438 INFO    ] Initializing speech engine...
[2026-08-31 16:13:07,444.444 INFO    ] 2026-08-31 16:13:07
[2026-08-31 16:13:07,704.704 INFO    ] 2026-08-31 16:13:07
[2026-08-31 16:13:07,749.749 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:13:08,031.031 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:13:08,036.036 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:13:08,273.273 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:13:08,280.280 INFO    ] time= 31/08/2026 16:13:08
[2026-08-31 16:13:08,301.301 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:13:08,330.330 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:13:08,439.439 INFO    ] No existing commands found in stream
[2026-08-31 16:13:13,469.469 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:13:13,472.472 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-08-31 16:13:14,191.191 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 16:13:14,194.194 INFO    ] Checking for system updates...
[2026-08-31 16:13:14,231.231 INFO    ] 200
[2026-08-31 16:13:14,234.234 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:13:14,286.286 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:13:14,289.289 INFO    ] No update needed
[2026-08-31 16:13:14,291.291 INFO    ] Checking for camera pi updates...
[2026-08-31 16:13:14,326.326 INFO    ] 200
[2026-08-31 16:13:14,328.328 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:13:14,373.373 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:13:14,453.453 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:13:14,455.455 INFO    ] No camera update needed
[2026-08-31 16:13:14,458.458 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:13:14,460.460 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:13:14,465.465 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:13:14,470.470 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:13:16,511.511 INFO    ] ================================================
[2026-08-31 16:13:16,526.526 INFO    ] Launching Daemon at Mon Aug 31 16:13:16 IST 2026
[2026-08-31 16:13:16,536.536 INFO    ] ================================================
[2026-08-31 16:13:17,167.167 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:13:17
[2026-08-31 16:13:17,816.816 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:13:18,113.113 INFO    ] Initializing speech engine...
[2026-08-31 16:13:18,126.126 INFO    ] 2026-08-31 16:13:18
[2026-08-31 16:13:18,406.406 INFO    ] 2026-08-31 16:13:18
[2026-08-31 16:13:18,443.443 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:13:18,724.724 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:13:18,733.733 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:13:18,932.932 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:13:18,952.952 INFO    ] time= 31/08/2026 16:13:18
[2026-08-31 16:13:18,981.981 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:13:18,992.992 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:13:19,100.100 INFO    ] No existing commands found in stream
[2026-08-31 16:13:24,125.125 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:13:24,128.128 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-08-31 16:13:27,728.728 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 16:13:27,731.731 INFO    ] Checking for system updates...
[2026-08-31 16:13:27,768.768 INFO    ] 200
[2026-08-31 16:13:27,771.771 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:13:27,822.822 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:13:27,825.825 INFO    ] No update needed
[2026-08-31 16:13:27,827.827 INFO    ] Checking for camera pi updates...
[2026-08-31 16:13:27,870.870 INFO    ] 200
[2026-08-31 16:13:27,872.872 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:13:27,917.917 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:13:27,999.999 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:13:28,002.002 INFO    ] No camera update needed
[2026-08-31 16:13:28,004.004 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:13:28,006.006 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:13:28,012.012 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:13:28,017.017 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:13:30,057.057 INFO    ] ================================================
[2026-08-31 16:13:30,072.072 INFO    ] Launching Daemon at Mon Aug 31 16:13:30 IST 2026
[2026-08-31 16:13:30,084.084 INFO    ] ================================================
[2026-08-31 16:13:30,654.654 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:13:30
[2026-08-31 16:13:31,242.242 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:13:31,512.512 INFO    ] Initializing speech engine...
[2026-08-31 16:13:31,521.521 INFO    ] 2026-08-31 16:13:31
[2026-08-31 16:13:31,783.783 INFO    ] 2026-08-31 16:13:31
[2026-08-31 16:13:31,819.819 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:13:32,050.050 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:13:32,103.103 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:13:32,271.271 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:13:32,310.310 INFO    ] time= 31/08/2026 16:13:32
[2026-08-31 16:13:32,381.381 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:13:32,433.433 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:13:32,500.500 INFO    ] No existing commands found in stream
[2026-08-31 16:13:37,513.513 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:13:37,516.516 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-08-31 16:13:39,513.513 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 16:13:39,516.516 INFO    ] Checking for system updates...
[2026-08-31 16:13:39,551.551 INFO    ] 200
[2026-08-31 16:13:39,553.553 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:13:39,612.612 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:13:39,614.614 INFO    ] No update needed
[2026-08-31 16:13:39,616.616 INFO    ] Checking for camera pi updates...
[2026-08-31 16:13:39,650.650 INFO    ] 200
[2026-08-31 16:13:39,652.652 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:13:39,697.697 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:13:39,779.779 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:13:39,781.781 INFO    ] No camera update needed
[2026-08-31 16:13:39,784.784 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:13:39,786.786 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:13:39,791.791 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:13:39,796.796 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:13:41,837.837 INFO    ] ================================================
[2026-08-31 16:13:41,852.852 INFO    ] Launching Daemon at Mon Aug 31 16:13:41 IST 2026
[2026-08-31 16:13:41,864.864 INFO    ] ================================================
[2026-08-31 16:13:42,508.508 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:13:42
[2026-08-31 16:13:43,172.172 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:13:43,475.475 INFO    ] Initializing speech engine...
[2026-08-31 16:13:43,487.487 INFO    ] 2026-08-31 16:13:43
[2026-08-31 16:13:43,763.763 INFO    ] 2026-08-31 16:13:43
[2026-08-31 16:13:43,806.806 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:13:44,064.064 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:13:44,071.071 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:13:44,271.271 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:13:44,331.331 INFO    ] time= 31/08/2026 16:13:44
[2026-08-31 16:13:44,341.341 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:13:44,357.357 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:13:44,475.475 INFO    ] No existing commands found in stream
[2026-08-31 16:13:49,506.506 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:13:49,509.509 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-08-31 16:13:52,879.879 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 16:13:52,882.882 INFO    ] Checking for system updates...
[2026-08-31 16:13:52,919.919 INFO    ] 200
[2026-08-31 16:13:52,922.922 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:13:52,976.976 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:13:52,978.978 INFO    ] No update needed
[2026-08-31 16:13:52,981.981 INFO    ] Checking for camera pi updates...
[2026-08-31 16:13:53,016.016 INFO    ] 200
[2026-08-31 16:13:53,020.020 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:13:53,061.061 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:13:53,147.147 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:13:53,150.150 INFO    ] No camera update needed
[2026-08-31 16:13:53,153.153 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:13:53,155.155 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:13:53,162.162 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:13:53,167.167 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:13:55,211.211 INFO    ] ================================================
[2026-08-31 16:13:55,226.226 INFO    ] Launching Daemon at Mon Aug 31 16:13:55 IST 2026
[2026-08-31 16:13:55,237.237 INFO    ] ================================================
[2026-08-31 16:13:55,886.886 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:13:55
[2026-08-31 16:13:56,554.554 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:13:56,856.856 INFO    ] Initializing speech engine...
[2026-08-31 16:13:56,870.870 INFO    ] 2026-08-31 16:13:56
[2026-08-31 16:13:57,181.181 INFO    ] 2026-08-31 16:13:57
[2026-08-31 16:13:57,264.264 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:13:57,473.473 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:13:57,481.481 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:13:57,674.674 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:13:57,682.682 INFO    ] time= 31/08/2026 16:13:57
[2026-08-31 16:13:57,704.704 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:13:57,732.732 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:13:57,855.855 INFO    ] No existing commands found in stream
[2026-08-31 16:14:02,881.881 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:14:02,885.885 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-08-31 16:14:07,366.366 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 16:14:07,369.369 INFO    ] Checking for system updates...
[2026-08-31 16:14:07,405.405 INFO    ] 200
[2026-08-31 16:14:07,408.408 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:14:07,466.466 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:14:07,470.470 INFO    ] No update needed
[2026-08-31 16:14:07,472.472 INFO    ] Checking for camera pi updates...
[2026-08-31 16:14:07,510.510 INFO    ] 200
[2026-08-31 16:14:07,513.513 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:14:07,554.554 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:14:07,659.659 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:14:07,662.662 INFO    ] No camera update needed
[2026-08-31 16:14:07,665.665 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:14:07,668.668 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:14:07,674.674 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:14:07,680.680 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:14:09,721.721 INFO    ] ================================================
[2026-08-31 16:14:09,736.736 INFO    ] Launching Daemon at Mon Aug 31 16:14:09 IST 2026
[2026-08-31 16:14:09,747.747 INFO    ] ================================================
[2026-08-31 16:14:10,387.387 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:14:10
[2026-08-31 16:14:11,046.046 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:14:11,346.346 INFO    ] Initializing speech engine...
[2026-08-31 16:14:11,360.360 INFO    ] 2026-08-31 16:14:11
[2026-08-31 16:14:11,674.674 INFO    ] 2026-08-31 16:14:11
[2026-08-31 16:14:11,755.755 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:14:12,020.020 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:14:12,039.039 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:14:12,192.192 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:14:12,222.222 INFO    ] time= 31/08/2026 16:14:12
[2026-08-31 16:14:12,232.232 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:14:12,273.273 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:14:12,384.384 INFO    ] No existing commands found in stream
[2026-08-31 16:14:17,420.420 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:14:17,423.423 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-08-31 16:14:20,238.238 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 16:14:20,241.241 INFO    ] Checking for system updates...
[2026-08-31 16:14:20,281.281 INFO    ] 200
[2026-08-31 16:14:20,284.284 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:14:20,338.338 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:14:20,341.341 INFO    ] No update needed
[2026-08-31 16:14:20,344.344 INFO    ] Checking for camera pi updates...
[2026-08-31 16:14:20,382.382 INFO    ] 200
[2026-08-31 16:14:20,384.384 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:14:20,426.426 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:14:20,612.612 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:14:20,615.615 INFO    ] No camera update needed
[2026-08-31 16:14:20,617.617 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:14:20,620.620 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:14:20,626.626 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:14:20,632.632 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:14:22,674.674 INFO    ] ================================================
[2026-08-31 16:14:22,689.689 INFO    ] Launching Daemon at Mon Aug 31 16:14:22 IST 2026
[2026-08-31 16:14:22,701.701 INFO    ] ================================================
[2026-08-31 16:14:23,265.265 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:14:23
[2026-08-31 16:14:23,849.849 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:14:24,105.105 INFO    ] Initializing speech engine...
[2026-08-31 16:14:24,121.121 INFO    ] 2026-08-31 16:14:24
[2026-08-31 16:14:24,376.376 INFO    ] 2026-08-31 16:14:24
[2026-08-31 16:14:24,410.410 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:14:24,668.668 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:14:24,677.677 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:14:24,812.812 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:14:24,834.834 INFO    ] time= 31/08/2026 16:14:24
[2026-08-31 16:14:24,904.904 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:14:24,949.949 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:14:25,075.075 INFO    ] No existing commands found in stream
[2026-08-31 16:14:30,105.105 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:14:30,108.108 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-08-31 16:14:31,036.036 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 16:14:31,039.039 INFO    ] Checking for system updates...
[2026-08-31 16:14:31,074.074 INFO    ] 200
[2026-08-31 16:14:31,077.077 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:14:31,130.130 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:14:31,132.132 INFO    ] No update needed
[2026-08-31 16:14:31,135.135 INFO    ] Checking for camera pi updates...
[2026-08-31 16:14:31,168.168 INFO    ] 200
[2026-08-31 16:14:31,170.170 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:14:31,211.211 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:14:31,264.264 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:14:31,266.266 INFO    ] No camera update needed
[2026-08-31 16:14:31,269.269 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:14:31,271.271 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:14:31,276.276 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:14:31,281.281 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:14:33,323.323 INFO    ] ================================================
[2026-08-31 16:14:33,342.342 INFO    ] Launching Daemon at Mon Aug 31 16:14:33 IST 2026
[2026-08-31 16:14:33,353.353 INFO    ] ================================================
[2026-08-31 16:14:33,933.933 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:14:33
[2026-08-31 16:14:34,532.532 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:14:34,793.793 INFO    ] Initializing speech engine...
[2026-08-31 16:14:34,802.802 INFO    ] 2026-08-31 16:14:34
[2026-08-31 16:14:35,100.100 INFO    ] 2026-08-31 16:14:35
[2026-08-31 16:14:35,138.138 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:14:35,339.339 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:14:35,352.352 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:14:35,515.515 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:14:35,523.523 INFO    ] time= 31/08/2026 16:14:35
[2026-08-31 16:14:35,531.531 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:14:35,579.579 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:14:35,726.726 INFO    ] No existing commands found in stream
[2026-08-31 16:14:40,752.752 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:14:40,755.755 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-08-31 16:14:43,551.551 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 16:14:43,554.554 INFO    ] Checking for system updates...
[2026-08-31 16:14:43,595.595 INFO    ] 200
[2026-08-31 16:14:43,598.598 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:14:43,650.650 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:14:43,653.653 INFO    ] No update needed
[2026-08-31 16:14:43,655.655 INFO    ] Checking for camera pi updates...
[2026-08-31 16:14:43,688.688 INFO    ] 200
[2026-08-31 16:14:43,691.691 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:14:43,731.731 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:14:43,807.807 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:14:43,810.810 INFO    ] No camera update needed
[2026-08-31 16:14:43,812.812 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:14:43,814.814 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:14:43,820.820 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:14:43,825.825 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:14:45,864.864 INFO    ] ================================================
[2026-08-31 16:14:45,879.879 INFO    ] Launching Daemon at Mon Aug 31 16:14:45 IST 2026
[2026-08-31 16:14:45,890.890 INFO    ] ================================================
[2026-08-31 16:14:46,457.457 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:14:46
[2026-08-31 16:14:47,081.081 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:14:47,383.383 INFO    ] Initializing speech engine...
[2026-08-31 16:14:47,391.391 INFO    ] 2026-08-31 16:14:47
[2026-08-31 16:14:47,683.683 INFO    ] 2026-08-31 16:14:47
[2026-08-31 16:14:47,722.722 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:14:48,005.005 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:14:48,013.013 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:14:48,210.210 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:14:48,228.228 INFO    ] time= 31/08/2026 16:14:48
[2026-08-31 16:14:48,239.239 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:14:48,268.268 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:14:48,387.387 INFO    ] No existing commands found in stream
[2026-08-31 16:14:53,418.418 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:14:53,421.421 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-08-31 16:14:57,559.559 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 16:14:57,562.562 INFO    ] Checking for system updates...
[2026-08-31 16:14:57,598.598 INFO    ] 200
[2026-08-31 16:14:57,601.601 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:14:57,657.657 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:14:57,660.660 INFO    ] No update needed
[2026-08-31 16:14:57,663.663 INFO    ] Checking for camera pi updates...
[2026-08-31 16:14:57,697.697 INFO    ] 200
[2026-08-31 16:14:57,699.699 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:14:57,739.739 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:14:57,823.823 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:14:57,826.826 INFO    ] No camera update needed
[2026-08-31 16:14:57,828.828 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:14:57,831.831 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:14:57,836.836 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:14:57,841.841 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:14:59,880.880 INFO    ] ================================================
[2026-08-31 16:14:59,895.895 INFO    ] Launching Daemon at Mon Aug 31 16:14:59 IST 2026
[2026-08-31 16:14:59,906.906 INFO    ] ================================================
[2026-08-31 16:15:00,476.476 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:15:00
[2026-08-31 16:15:01,062.062 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:15:01,314.314 INFO    ] Initializing speech engine...
[2026-08-31 16:15:01,337.337 INFO    ] 2026-08-31 16:15:01
[2026-08-31 16:15:01,623.623 INFO    ] 2026-08-31 16:15:01
[2026-08-31 16:15:01,713.713 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:15:02,160.160 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:15:02,164.164 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:15:02,458.458 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:15:02,489.489 INFO    ] time= 31/08/2026 16:15:02
[2026-08-31 16:15:02,539.539 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:15:02,570.570 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:15:02,649.649 INFO    ] No existing commands found in stream
[2026-08-31 16:15:07,661.661 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:15:07,665.665 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-08-31 16:15:08,315.315 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 16:15:08,318.318 INFO    ] Checking for system updates...
[2026-08-31 16:15:08,358.358 INFO    ] 200
[2026-08-31 16:15:08,361.361 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:15:08,415.415 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:15:08,418.418 INFO    ] No update needed
[2026-08-31 16:15:08,421.421 INFO    ] Checking for camera pi updates...
[2026-08-31 16:15:08,454.454 INFO    ] 200
[2026-08-31 16:15:08,457.457 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:15:08,498.498 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:15:08,577.577 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:15:08,580.580 INFO    ] No camera update needed
[2026-08-31 16:15:08,582.582 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:15:08,584.584 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:15:08,590.590 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:15:08,594.594 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:15:10,634.634 INFO    ] ================================================
[2026-08-31 16:15:10,648.648 INFO    ] Launching Daemon at Mon Aug 31 16:15:10 IST 2026
[2026-08-31 16:15:10,660.660 INFO    ] ================================================
[2026-08-31 16:15:11,239.239 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:15:11
[2026-08-31 16:15:11,837.837 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:15:12,111.111 INFO    ] Initializing speech engine...
[2026-08-31 16:15:12,121.121 INFO    ] 2026-08-31 16:15:12
[2026-08-31 16:15:12,369.369 INFO    ] 2026-08-31 16:15:12
[2026-08-31 16:15:12,404.404 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:15:12,655.655 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:15:12,664.664 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:15:12,871.871 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:15:12,923.923 INFO    ] time= 31/08/2026 16:15:12
[2026-08-31 16:15:12,929.929 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:15:12,945.945 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:15:13,073.073 INFO    ] No existing commands found in stream
[2026-08-31 16:15:18,089.089 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:15:18,092.092 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-08-31 16:15:20,922.922 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 16:15:20,924.924 INFO    ] Checking for system updates...
[2026-08-31 16:15:20,960.960 INFO    ] 200
[2026-08-31 16:15:20,963.963 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:15:21,014.014 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:15:21,017.017 INFO    ] No update needed
[2026-08-31 16:15:21,019.019 INFO    ] Checking for camera pi updates...
[2026-08-31 16:15:21,057.057 INFO    ] 200
[2026-08-31 16:15:21,059.059 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:15:21,100.100 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:15:21,172.172 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:15:21,174.174 INFO    ] No camera update needed
[2026-08-31 16:15:21,177.177 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:15:21,179.179 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:15:21,184.184 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:15:21,189.189 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:15:23,229.229 INFO    ] ================================================
[2026-08-31 16:15:23,244.244 INFO    ] Launching Daemon at Mon Aug 31 16:15:23 IST 2026
[2026-08-31 16:15:23,255.255 INFO    ] ================================================
[2026-08-31 16:15:23,849.849 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:15:23
[2026-08-31 16:15:24,447.447 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:15:24,721.721 INFO    ] Initializing speech engine...
[2026-08-31 16:15:24,742.742 INFO    ] 2026-08-31 16:15:24
[2026-08-31 16:15:25,010.010 INFO    ] 2026-08-31 16:15:24
[2026-08-31 16:15:25,048.048 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:15:25,273.273 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:15:25,319.319 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:15:25,498.498 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:15:25,504.504 INFO    ] time= 31/08/2026 16:15:25
[2026-08-31 16:15:25,538.538 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:15:25,582.582 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:15:25,674.674 INFO    ] No existing commands found in stream
[2026-08-31 16:15:30,688.688 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:15:30,690.690 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-08-31 16:15:32,360.360 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 16:15:32,363.363 INFO    ] Checking for system updates...
[2026-08-31 16:15:32,406.406 INFO    ] 200
[2026-08-31 16:15:32,409.409 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:15:32,471.471 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:15:32,474.474 INFO    ] No update needed
[2026-08-31 16:15:32,476.476 INFO    ] Checking for camera pi updates...
[2026-08-31 16:15:32,515.515 INFO    ] 200
[2026-08-31 16:15:32,518.518 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:15:32,567.567 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:15:32,641.641 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:15:32,643.643 INFO    ] No camera update needed
[2026-08-31 16:15:32,646.646 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:15:32,649.649 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:15:32,655.655 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:15:32,661.661 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:15:34,703.703 INFO    ] ================================================
[2026-08-31 16:15:34,718.718 INFO    ] Launching Daemon at Mon Aug 31 16:15:34 IST 2026
[2026-08-31 16:15:34,729.729 INFO    ] ================================================
[2026-08-31 16:15:35,321.321 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:15:35
[2026-08-31 16:15:35,925.925 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:15:36,200.200 INFO    ] Initializing speech engine...
[2026-08-31 16:15:36,211.211 INFO    ] 2026-08-31 16:15:36
[2026-08-31 16:15:36,472.472 INFO    ] 2026-08-31 16:15:36
[2026-08-31 16:15:36,526.526 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:15:36,779.779 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:15:36,797.797 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:15:36,993.993 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:15:37,018.018 INFO    ] time= 31/08/2026 16:15:37
[2026-08-31 16:15:37,033.033 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:15:37,042.042 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:15:37,171.171 INFO    ] No existing commands found in stream
[2026-08-31 16:15:42,184.184 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:15:42,186.186 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-08-31 16:15:46,040.040 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 16:15:46,043.043 INFO    ] Checking for system updates...
[2026-08-31 16:15:46,080.080 INFO    ] 200
[2026-08-31 16:15:46,083.083 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:15:46,136.136 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:15:46,139.139 INFO    ] No update needed
[2026-08-31 16:15:46,142.142 INFO    ] Checking for camera pi updates...
[2026-08-31 16:15:46,179.179 INFO    ] 200
[2026-08-31 16:15:46,182.182 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:15:46,227.227 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:15:46,292.292 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:15:46,294.294 INFO    ] No camera update needed
[2026-08-31 16:15:46,297.297 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:15:46,299.299 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:15:46,307.307 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:15:46,313.313 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:15:48,355.355 INFO    ] ================================================
[2026-08-31 16:15:48,370.370 INFO    ] Launching Daemon at Mon Aug 31 16:15:48 IST 2026
[2026-08-31 16:15:48,381.381 INFO    ] ================================================
[2026-08-31 16:15:48,949.949 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:15:48
[2026-08-31 16:15:49,598.598 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:15:49,904.904 INFO    ] Initializing speech engine...
[2026-08-31 16:15:49,921.921 INFO    ] 2026-08-31 16:15:49
[2026-08-31 16:15:50,236.236 INFO    ] 2026-08-31 16:15:50
[2026-08-31 16:15:50,324.324 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:15:50,484.484 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:15:50,490.490 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:15:50,712.712 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:15:50,755.755 INFO    ] time= 31/08/2026 16:15:50
[2026-08-31 16:15:50,774.774 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:15:50,784.784 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:15:50,913.913 INFO    ] No existing commands found in stream
[2026-08-31 16:15:55,926.926 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:15:55,930.930 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-08-31 16:15:57,687.687 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 16:15:57,690.690 INFO    ] Checking for system updates...
[2026-08-31 16:15:57,727.727 INFO    ] 200
[2026-08-31 16:15:57,730.730 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:15:57,783.783 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:15:57,785.785 INFO    ] No update needed
[2026-08-31 16:15:57,788.788 INFO    ] Checking for camera pi updates...
[2026-08-31 16:15:57,824.824 INFO    ] 200
[2026-08-31 16:15:57,827.827 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:15:57,869.869 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:15:57,951.951 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:15:57,954.954 INFO    ] No camera update needed
[2026-08-31 16:15:57,956.956 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:15:57,959.959 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:15:57,964.964 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:15:57,969.969 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:16:00,009.009 INFO    ] ================================================
[2026-08-31 16:16:00,024.024 INFO    ] Launching Daemon at Mon Aug 31 16:16:00 IST 2026
[2026-08-31 16:16:00,036.036 INFO    ] ================================================
[2026-08-31 16:16:00,698.698 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:16:00
[2026-08-31 16:16:01,487.487 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:16:01,839.839 INFO    ] Initializing speech engine...
[2026-08-31 16:16:01,849.849 INFO    ] 2026-08-31 16:16:01
[2026-08-31 16:16:02,165.165 INFO    ] 2026-08-31 16:16:02
[2026-08-31 16:16:02,195.195 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:16:02,488.488 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:16:02,546.546 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:16:02,744.744 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:16:02,757.757 INFO    ] time= 31/08/2026 16:16:02
[2026-08-31 16:16:02,796.796 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:16:02,854.854 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:16:02,947.947 INFO    ] No existing commands found in stream
[2026-08-31 16:16:07,958.958 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:16:07,962.962 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-08-31 16:16:09,196.196 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 16:16:09,199.199 INFO    ] Checking for system updates...
[2026-08-31 16:16:09,236.236 INFO    ] 200
[2026-08-31 16:16:09,238.238 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:16:09,291.291 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:16:09,293.293 INFO    ] No update needed
[2026-08-31 16:16:09,296.296 INFO    ] Checking for camera pi updates...
[2026-08-31 16:16:09,330.330 INFO    ] 200
[2026-08-31 16:16:09,332.332 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:16:09,376.376 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:16:09,460.460 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:16:09,462.462 INFO    ] No camera update needed
[2026-08-31 16:16:09,465.465 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:16:09,467.467 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:16:09,472.472 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:16:09,477.477 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:16:11,518.518 INFO    ] ================================================
[2026-08-31 16:16:11,533.533 INFO    ] Launching Daemon at Mon Aug 31 16:16:11 IST 2026
[2026-08-31 16:16:11,544.544 INFO    ] ================================================
[2026-08-31 16:16:12,136.136 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:16:12
[2026-08-31 16:16:12,740.740 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:16:13,021.021 INFO    ] Initializing speech engine...
[2026-08-31 16:16:13,030.030 INFO    ] 2026-08-31 16:16:13
[2026-08-31 16:16:13,304.304 INFO    ] 2026-08-31 16:16:13
[2026-08-31 16:16:13,349.349 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:16:13,632.632 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:16:13,637.637 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:16:13,832.832 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:16:13,838.838 INFO    ] time= 31/08/2026 16:16:13
[2026-08-31 16:16:13,855.855 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:16:13,885.885 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:16:14,021.021 INFO    ] No existing commands found in stream
[2026-08-31 16:16:19,052.052 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:16:19,055.055 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-08-31 16:16:23,079.079 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 16:16:23,081.081 INFO    ] Checking for system updates...
[2026-08-31 16:16:23,118.118 INFO    ] 200
[2026-08-31 16:16:23,120.120 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:16:23,172.172 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:16:23,175.175 INFO    ] No update needed
[2026-08-31 16:16:23,178.178 INFO    ] Checking for camera pi updates...
[2026-08-31 16:16:23,215.215 INFO    ] 200
[2026-08-31 16:16:23,218.218 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:16:23,260.260 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:16:23,445.445 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:16:23,447.447 INFO    ] No camera update needed
[2026-08-31 16:16:23,450.450 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:16:23,452.452 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:16:23,457.457 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:16:23,462.462 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:16:25,504.504 INFO    ] ================================================
[2026-08-31 16:16:25,519.519 INFO    ] Launching Daemon at Mon Aug 31 16:16:25 IST 2026
[2026-08-31 16:16:25,531.531 INFO    ] ================================================
[2026-08-31 16:16:26,098.098 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:16:26
[2026-08-31 16:16:26,682.682 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:16:26,951.951 INFO    ] Initializing speech engine...
[2026-08-31 16:16:26,961.961 INFO    ] 2026-08-31 16:16:26
[2026-08-31 16:16:27,206.206 INFO    ] 2026-08-31 16:16:27
[2026-08-31 16:16:27,242.242 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:16:27,438.438 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:16:27,486.486 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:16:27,718.718 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:16:27,762.762 INFO    ] time= 31/08/2026 16:16:27
[2026-08-31 16:16:27,768.768 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:16:27,789.789 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:16:27,917.917 INFO    ] No existing commands found in stream
[2026-08-31 16:16:32,929.929 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:16:32,931.931 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-08-31 16:16:35,921.921 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 16:16:35,924.924 INFO    ] Checking for system updates...
[2026-08-31 16:16:35,959.959 INFO    ] 200
[2026-08-31 16:16:35,962.962 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:16:36,015.015 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:16:36,018.018 INFO    ] No update needed
[2026-08-31 16:16:36,020.020 INFO    ] Checking for camera pi updates...
[2026-08-31 16:16:36,055.055 INFO    ] 200
[2026-08-31 16:16:36,057.057 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:16:36,098.098 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:16:36,187.187 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:16:36,190.190 INFO    ] No camera update needed
[2026-08-31 16:16:36,192.192 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:16:36,194.194 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:16:36,199.199 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:16:36,204.204 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:16:38,247.247 INFO    ] ================================================
[2026-08-31 16:16:38,263.263 INFO    ] Launching Daemon at Mon Aug 31 16:16:38 IST 2026
[2026-08-31 16:16:38,275.275 INFO    ] ================================================
[2026-08-31 16:16:38,915.915 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:16:38
[2026-08-31 16:16:39,593.593 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:16:39,901.901 INFO    ] Initializing speech engine...
[2026-08-31 16:16:39,913.913 INFO    ] 2026-08-31 16:16:39
[2026-08-31 16:16:40,221.221 INFO    ] 2026-08-31 16:16:40
[2026-08-31 16:16:40,307.307 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:16:40,522.522 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:16:40,528.528 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:16:40,719.719 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:16:40,737.737 INFO    ] time= 31/08/2026 16:16:40
[2026-08-31 16:16:40,756.756 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:16:40,785.785 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:16:40,893.893 INFO    ] No existing commands found in stream
[2026-08-31 16:16:45,918.918 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:16:45,922.922 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-08-31 16:16:48,366.366 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 16:16:48,369.369 INFO    ] Checking for system updates...
[2026-08-31 16:16:48,408.408 INFO    ] 200
[2026-08-31 16:16:48,411.411 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:16:48,463.463 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:16:48,466.466 INFO    ] No update needed
[2026-08-31 16:16:48,469.469 INFO    ] Checking for camera pi updates...
[2026-08-31 16:16:48,502.502 INFO    ] 200
[2026-08-31 16:16:48,504.504 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:16:48,545.545 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:16:48,631.631 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:16:48,633.633 INFO    ] No camera update needed
[2026-08-31 16:16:48,636.636 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:16:48,638.638 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:16:48,643.643 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:16:48,648.648 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:16:50,688.688 INFO    ] ================================================
[2026-08-31 16:16:50,704.704 INFO    ] Launching Daemon at Mon Aug 31 16:16:50 IST 2026
[2026-08-31 16:16:50,716.716 INFO    ] ================================================
[2026-08-31 16:16:51,303.303 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:16:51
[2026-08-31 16:16:51,939.939 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:16:52,247.247 INFO    ] Initializing speech engine...
[2026-08-31 16:16:52,261.261 INFO    ] 2026-08-31 16:16:52
[2026-08-31 16:16:52,534.534 INFO    ] 2026-08-31 16:16:52
[2026-08-31 16:16:52,590.590 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:16:52,842.842 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:16:52,861.861 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:16:53,079.079 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:16:53,098.098 INFO    ] time= 31/08/2026 16:16:53
[2026-08-31 16:16:53,108.108 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:16:53,135.135 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:16:53,241.241 INFO    ] No existing commands found in stream
[2026-08-31 16:16:58,258.258 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:16:58,262.262 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-08-31 16:17:01,531.531 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 16:17:01,545.545 INFO    ] Checking for system updates...
[2026-08-31 16:17:01,607.607 INFO    ] 200
[2026-08-31 16:17:01,611.611 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:17:01,691.691 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:17:01,694.694 INFO    ] No update needed
[2026-08-31 16:17:01,697.697 INFO    ] Checking for camera pi updates...
[2026-08-31 16:17:01,734.734 INFO    ] 200
[2026-08-31 16:17:01,738.738 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:17:01,783.783 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:17:01,904.904 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:17:01,908.908 INFO    ] No camera update needed
[2026-08-31 16:17:01,911.911 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:17:01,915.915 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:17:01,923.923 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:17:01,931.931 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:17:03,973.973 INFO    ] ================================================
[2026-08-31 16:17:03,989.989 INFO    ] Launching Daemon at Mon Aug 31 16:17:03 IST 2026
[2026-08-31 16:17:04,001.001 INFO    ] ================================================
[2026-08-31 16:17:04,568.568 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:17:04
[2026-08-31 16:17:05,172.172 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:17:05,444.444 INFO    ] Initializing speech engine...
[2026-08-31 16:17:05,453.453 INFO    ] 2026-08-31 16:17:05
[2026-08-31 16:17:05,703.703 INFO    ] 2026-08-31 16:17:05
[2026-08-31 16:17:05,769.769 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:17:06,050.050 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:17:06,058.058 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:17:06,265.265 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:17:06,295.295 INFO    ] time= 31/08/2026 16:17:06
[2026-08-31 16:17:06,301.301 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:17:06,320.320 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:17:06,433.433 INFO    ] No existing commands found in stream
[2026-08-31 16:17:11,451.451 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:17:11,454.454 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-08-31 16:17:13,294.294 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 16:17:13,296.296 INFO    ] Checking for system updates...
[2026-08-31 16:17:13,340.340 INFO    ] 200
[2026-08-31 16:17:13,343.343 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:17:13,399.399 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:17:13,402.402 INFO    ] No update needed
[2026-08-31 16:17:13,404.404 INFO    ] Checking for camera pi updates...
[2026-08-31 16:17:13,439.439 INFO    ] 200
[2026-08-31 16:17:13,441.441 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:17:13,485.485 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:17:13,568.568 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:17:13,571.571 INFO    ] No camera update needed
[2026-08-31 16:17:13,573.573 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:17:13,575.575 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:17:13,581.581 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:17:13,586.586 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:17:15,628.628 INFO    ] ================================================
[2026-08-31 16:17:15,644.644 INFO    ] Launching Daemon at Mon Aug 31 16:17:15 IST 2026
[2026-08-31 16:17:15,655.655 INFO    ] ================================================
[2026-08-31 16:17:16,307.307 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:17:16
[2026-08-31 16:17:16,976.976 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:17:17,276.276 INFO    ] Initializing speech engine...
[2026-08-31 16:17:17,284.284 INFO    ] 2026-08-31 16:17:17
[2026-08-31 16:17:17,607.607 INFO    ] 2026-08-31 16:17:17
[2026-08-31 16:17:17,690.690 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:17:17,907.907 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:17:17,916.916 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:17:18,109.109 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:17:18,132.132 INFO    ] time= 31/08/2026 16:17:18
[2026-08-31 16:17:18,161.161 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:17:18,171.171 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:17:18,269.269 INFO    ] No existing commands found in stream
[2026-08-31 16:17:23,289.289 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:17:23,293.293 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-08-31 16:17:25,719.719 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 16:17:25,722.722 INFO    ] Checking for system updates...
[2026-08-31 16:17:25,764.764 INFO    ] 200
[2026-08-31 16:17:25,766.766 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:17:25,818.818 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:17:25,820.820 INFO    ] No update needed
[2026-08-31 16:17:25,823.823 INFO    ] Checking for camera pi updates...
[2026-08-31 16:17:25,857.857 INFO    ] 200
[2026-08-31 16:17:25,860.860 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:17:25,901.901 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:17:25,966.966 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:17:25,969.969 INFO    ] No camera update needed
[2026-08-31 16:17:25,971.971 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:17:25,973.973 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:17:25,979.979 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:17:25,984.984 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:17:28,024.024 INFO    ] ================================================
[2026-08-31 16:17:28,040.040 INFO    ] Launching Daemon at Mon Aug 31 16:17:28 IST 2026
[2026-08-31 16:17:28,051.051 INFO    ] ================================================
[2026-08-31 16:17:28,638.638 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:17:28
[2026-08-31 16:17:29,241.241 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:17:29,518.518 INFO    ] Initializing speech engine...
[2026-08-31 16:17:29,526.526 INFO    ] 2026-08-31 16:17:29
[2026-08-31 16:17:29,785.785 INFO    ] 2026-08-31 16:17:29
[2026-08-31 16:17:29,815.815 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:17:30,060.060 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:17:30,069.069 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:17:30,292.292 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:17:30,327.327 INFO    ] time= 31/08/2026 16:17:30
[2026-08-31 16:17:30,333.333 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:17:30,354.354 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:17:30,478.478 INFO    ] No existing commands found in stream
[2026-08-31 16:17:35,492.492 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:17:35,495.495 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-08-31 16:17:36,358.358 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 16:17:36,361.361 INFO    ] Checking for system updates...
[2026-08-31 16:17:36,396.396 INFO    ] 200
[2026-08-31 16:17:36,399.399 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:17:36,457.457 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:17:36,460.460 INFO    ] No update needed
[2026-08-31 16:17:36,462.462 INFO    ] Checking for camera pi updates...
[2026-08-31 16:17:36,499.499 INFO    ] 200
[2026-08-31 16:17:36,501.501 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:17:36,542.542 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:17:36,625.625 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:17:36,628.628 INFO    ] No camera update needed
[2026-08-31 16:17:36,630.630 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:17:36,633.633 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:17:36,638.638 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:17:36,643.643 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:17:38,684.684 INFO    ] ================================================
[2026-08-31 16:17:38,701.701 INFO    ] Launching Daemon at Mon Aug 31 16:17:38 IST 2026
[2026-08-31 16:17:38,712.712 INFO    ] ================================================
[2026-08-31 16:17:39,278.278 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:17:39
[2026-08-31 16:17:39,864.864 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:17:40,132.132 INFO    ] Initializing speech engine...
[2026-08-31 16:17:40,141.141 INFO    ] 2026-08-31 16:17:40
[2026-08-31 16:17:40,389.389 INFO    ] 2026-08-31 16:17:40
[2026-08-31 16:17:40,423.423 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:17:40,676.676 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:17:40,685.685 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:17:40,866.866 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:17:40,936.936 INFO    ] time= 31/08/2026 16:17:40
[2026-08-31 16:17:40,950.950 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:17:40,967.967 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:17:41,083.083 INFO    ] No existing commands found in stream
[2026-08-31 16:17:46,108.108 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:17:46,111.111 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-08-31 16:17:50,590.590 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 16:17:50,593.593 INFO    ] Checking for system updates...
[2026-08-31 16:17:50,630.630 INFO    ] 200
[2026-08-31 16:17:50,633.633 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:17:50,687.687 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:17:50,690.690 INFO    ] No update needed
[2026-08-31 16:17:50,692.692 INFO    ] Checking for camera pi updates...
[2026-08-31 16:17:50,727.727 INFO    ] 200
[2026-08-31 16:17:50,730.730 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:17:50,771.771 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:17:50,859.859 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:17:50,862.862 INFO    ] No camera update needed
[2026-08-31 16:17:50,864.864 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:17:50,866.866 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:17:50,872.872 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:17:50,877.877 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:17:52,919.919 INFO    ] ================================================
[2026-08-31 16:17:52,935.935 INFO    ] Launching Daemon at Mon Aug 31 16:17:52 IST 2026
[2026-08-31 16:17:52,946.946 INFO    ] ================================================
[2026-08-31 16:17:53,586.586 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:17:53
[2026-08-31 16:17:54,244.244 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:17:54,543.543 INFO    ] Initializing speech engine...
[2026-08-31 16:17:54,556.556 INFO    ] 2026-08-31 16:17:54
[2026-08-31 16:17:54,833.833 INFO    ] 2026-08-31 16:17:54
[2026-08-31 16:17:54,878.878 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:17:55,159.159 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:17:55,168.168 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:17:55,363.363 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:17:55,372.372 INFO    ] time= 31/08/2026 16:17:55
[2026-08-31 16:17:55,388.388 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:17:55,413.413 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:17:55,522.522 INFO    ] No existing commands found in stream
[2026-08-31 16:18:00,538.538 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:18:00,542.542 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-08-31 16:18:02,933.933 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 16:18:02,936.936 INFO    ] Checking for system updates...
[2026-08-31 16:18:02,976.976 INFO    ] 200
[2026-08-31 16:18:02,979.979 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:18:03,033.033 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:18:03,035.035 INFO    ] No update needed
[2026-08-31 16:18:03,038.038 INFO    ] Checking for camera pi updates...
[2026-08-31 16:18:03,077.077 INFO    ] 200
[2026-08-31 16:18:03,080.080 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:18:03,131.131 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:18:03,209.209 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:18:03,211.211 INFO    ] No camera update needed
[2026-08-31 16:18:03,213.213 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:18:03,216.216 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:18:03,221.221 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:18:03,226.226 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:18:05,266.266 INFO    ] ================================================
[2026-08-31 16:18:05,282.282 INFO    ] Launching Daemon at Mon Aug 31 16:18:05 IST 2026
[2026-08-31 16:18:05,293.293 INFO    ] ================================================
[2026-08-31 16:18:05,876.876 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:18:05
[2026-08-31 16:18:06,543.543 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:18:06,840.840 INFO    ] Initializing speech engine...
[2026-08-31 16:18:06,852.852 INFO    ] 2026-08-31 16:18:06
[2026-08-31 16:18:07,119.119 INFO    ] 2026-08-31 16:18:07
[2026-08-31 16:18:07,173.173 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:18:07,424.424 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:18:07,443.443 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:18:07,662.662 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:18:07,680.680 INFO    ] time= 31/08/2026 16:18:07
[2026-08-31 16:18:07,709.709 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:18:07,716.716 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:18:07,825.825 INFO    ] No existing commands found in stream
[2026-08-31 16:18:12,875.875 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:18:12,878.878 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-08-31 16:18:13,973.973 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 16:18:13,976.976 INFO    ] Checking for system updates...
[2026-08-31 16:18:14,012.012 INFO    ] 200
[2026-08-31 16:18:14,014.014 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:18:14,069.069 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:18:14,071.071 INFO    ] No update needed
[2026-08-31 16:18:14,073.073 INFO    ] Checking for camera pi updates...
[2026-08-31 16:18:14,113.113 INFO    ] 200
[2026-08-31 16:18:14,116.116 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:18:14,157.157 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:18:14,239.239 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:18:14,241.241 INFO    ] No camera update needed
[2026-08-31 16:18:14,243.243 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:18:14,245.245 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:18:14,251.251 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:18:14,256.256 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:18:16,297.297 INFO    ] ================================================
[2026-08-31 16:18:16,313.313 INFO    ] Launching Daemon at Mon Aug 31 16:18:16 IST 2026
[2026-08-31 16:18:16,324.324 INFO    ] ================================================
[2026-08-31 16:18:16,891.891 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:18:16
[2026-08-31 16:18:17,474.474 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:18:17,742.742 INFO    ] Initializing speech engine...
[2026-08-31 16:18:17,751.751 INFO    ] 2026-08-31 16:18:17
[2026-08-31 16:18:18,019.019 INFO    ] 2026-08-31 16:18:18
[2026-08-31 16:18:18,073.073 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:18:18,296.296 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:18:18,306.306 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:18:18,527.527 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:18:18,566.566 INFO    ] time= 31/08/2026 16:18:18
[2026-08-31 16:18:18,572.572 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:18:18,590.590 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:18:18,710.710 INFO    ] No existing commands found in stream
[2026-08-31 16:18:23,730.730 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:18:23,733.733 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-08-31 16:18:27,255.255 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 16:18:27,258.258 INFO    ] Checking for system updates...
[2026-08-31 16:18:27,298.298 INFO    ] 200
[2026-08-31 16:18:27,301.301 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:18:27,359.359 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:18:27,361.361 INFO    ] No update needed
[2026-08-31 16:18:27,364.364 INFO    ] Checking for camera pi updates...
[2026-08-31 16:18:27,398.398 INFO    ] 200
[2026-08-31 16:18:27,401.401 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:18:27,445.445 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:18:27,633.633 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:18:27,636.636 INFO    ] No camera update needed
[2026-08-31 16:18:27,638.638 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:18:27,641.641 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:18:27,646.646 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:18:27,651.651 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:18:29,690.690 INFO    ] ================================================
[2026-08-31 16:18:29,706.706 INFO    ] Launching Daemon at Mon Aug 31 16:18:29 IST 2026
[2026-08-31 16:18:29,717.717 INFO    ] ================================================
[2026-08-31 16:18:30,351.351 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:18:30
[2026-08-31 16:18:30,990.990 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:18:31,281.281 INFO    ] Initializing speech engine...
[2026-08-31 16:18:31,292.292 INFO    ] 2026-08-31 16:18:31
[2026-08-31 16:18:31,589.589 INFO    ] 2026-08-31 16:18:31
[2026-08-31 16:18:31,631.631 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:18:31,930.930 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:18:31,940.940 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:18:32,203.203 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:18:32,237.237 INFO    ] time= 31/08/2026 16:18:32
[2026-08-31 16:18:32,258.258 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:18:32,264.264 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:18:32,353.353 INFO    ] No existing commands found in stream
[2026-08-31 16:18:37,381.381 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:18:37,383.383 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-08-31 16:18:40,204.204 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 16:18:40,207.207 INFO    ] Checking for system updates...
[2026-08-31 16:18:40,246.246 INFO    ] 200
[2026-08-31 16:18:40,248.248 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:18:40,304.304 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:18:40,307.307 INFO    ] No update needed
[2026-08-31 16:18:40,309.309 INFO    ] Checking for camera pi updates...
[2026-08-31 16:18:40,345.345 INFO    ] 200
[2026-08-31 16:18:40,348.348 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:18:40,388.388 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:18:40,513.513 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:18:40,516.516 INFO    ] No camera update needed
[2026-08-31 16:18:40,518.518 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:18:40,521.521 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:18:40,526.526 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:18:40,531.531 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:18:42,570.570 INFO    ] ================================================
[2026-08-31 16:18:42,586.586 INFO    ] Launching Daemon at Mon Aug 31 16:18:42 IST 2026
[2026-08-31 16:18:42,597.597 INFO    ] ================================================
[2026-08-31 16:18:43,183.183 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:18:43
[2026-08-31 16:18:43,786.786 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:18:44,061.061 INFO    ] Initializing speech engine...
[2026-08-31 16:18:44,068.068 INFO    ] 2026-08-31 16:18:44
[2026-08-31 16:18:44,331.331 INFO    ] 2026-08-31 16:18:44
[2026-08-31 16:18:44,384.384 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:18:44,607.607 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:18:44,611.611 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:18:44,801.801 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:18:44,866.866 INFO    ] time= 31/08/2026 16:18:44
[2026-08-31 16:18:44,877.877 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:18:44,895.895 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:18:45,020.020 INFO    ] No existing commands found in stream
[2026-08-31 16:18:50,037.037 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:18:50,040.040 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-08-31 16:18:50,869.869 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 16:18:50,871.871 INFO    ] Checking for system updates...
[2026-08-31 16:18:50,908.908 INFO    ] 200
[2026-08-31 16:18:50,910.910 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:18:50,966.966 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:18:50,968.968 INFO    ] No update needed
[2026-08-31 16:18:50,971.971 INFO    ] Checking for camera pi updates...
[2026-08-31 16:18:51,004.004 INFO    ] 200
[2026-08-31 16:18:51,007.007 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:18:51,048.048 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:18:51,103.103 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:18:51,106.106 INFO    ] No camera update needed
[2026-08-31 16:18:51,108.108 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:18:51,110.110 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:18:51,116.116 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:18:51,121.121 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:18:53,169.169 INFO    ] ================================================
[2026-08-31 16:18:53,184.184 INFO    ] Launching Daemon at Mon Aug 31 16:18:53 IST 2026
[2026-08-31 16:18:53,195.195 INFO    ] ================================================
[2026-08-31 16:18:53,778.778 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:18:53
[2026-08-31 16:18:54,386.386 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:18:54,675.675 INFO    ] Initializing speech engine...
[2026-08-31 16:18:54,686.686 INFO    ] 2026-08-31 16:18:54
[2026-08-31 16:18:54,953.953 INFO    ] 2026-08-31 16:18:54
[2026-08-31 16:18:55,008.008 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:18:55,442.442 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:18:55,483.483 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:18:55,715.715 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:18:55,749.749 INFO    ] time= 31/08/2026 16:18:55
[2026-08-31 16:18:55,806.806 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:18:55,856.856 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:18:56,018.018 INFO    ] No existing commands found in stream
[2026-08-31 16:19:01,049.049 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:19:01,052.052 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-08-31 16:19:02,194.194 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 16:19:02,197.197 INFO    ] Checking for system updates...
[2026-08-31 16:19:02,242.242 INFO    ] 200
[2026-08-31 16:19:02,245.245 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:19:02,304.304 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:19:02,307.307 INFO    ] No update needed
[2026-08-31 16:19:02,310.310 INFO    ] Checking for camera pi updates...
[2026-08-31 16:19:02,354.354 INFO    ] 200
[2026-08-31 16:19:02,357.357 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:19:02,409.409 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:19:02,518.518 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:19:02,522.522 INFO    ] No camera update needed
[2026-08-31 16:19:02,527.527 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:19:02,533.533 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:19:02,544.544 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:19:02,554.554 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:19:04,598.598 INFO    ] ================================================
[2026-08-31 16:19:04,614.614 INFO    ] Launching Daemon at Mon Aug 31 16:19:04 IST 2026
[2026-08-31 16:19:04,625.625 INFO    ] ================================================
[2026-08-31 16:19:05,270.270 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:19:05
[2026-08-31 16:19:05,941.941 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:19:06,266.266 INFO    ] Initializing speech engine...
[2026-08-31 16:19:06,280.280 INFO    ] 2026-08-31 16:19:06
[2026-08-31 16:19:06,591.591 INFO    ] 2026-08-31 16:19:06
[2026-08-31 16:19:06,676.676 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:19:06,886.886 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:19:06,895.895 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:19:07,089.089 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:19:07,096.096 INFO    ] time= 31/08/2026 16:19:07
[2026-08-31 16:19:07,118.118 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:19:07,148.148 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:19:07,253.253 INFO    ] No existing commands found in stream
[2026-08-31 16:19:12,282.282 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:19:12,285.285 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-08-31 16:19:16,002.002 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 16:19:16,005.005 INFO    ] Checking for system updates...
[2026-08-31 16:19:16,047.047 INFO    ] 200
[2026-08-31 16:19:16,050.050 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:19:16,112.112 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:19:16,115.115 INFO    ] No update needed
[2026-08-31 16:19:16,118.118 INFO    ] Checking for camera pi updates...
[2026-08-31 16:19:16,157.157 INFO    ] 200
[2026-08-31 16:19:16,160.160 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:19:16,212.212 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:19:16,301.301 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:19:16,304.304 INFO    ] No camera update needed
[2026-08-31 16:19:16,306.306 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:19:16,309.309 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:19:16,316.316 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:19:16,321.321 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:19:18,363.363 INFO    ] ================================================
[2026-08-31 16:19:18,379.379 INFO    ] Launching Daemon at Mon Aug 31 16:19:18 IST 2026
[2026-08-31 16:19:18,390.390 INFO    ] ================================================
[2026-08-31 16:19:18,961.961 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:19:18
[2026-08-31 16:19:19,549.549 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:19:19,817.817 INFO    ] Initializing speech engine...
[2026-08-31 16:19:19,826.826 INFO    ] 2026-08-31 16:19:19
[2026-08-31 16:19:20,088.088 INFO    ] 2026-08-31 16:19:20
[2026-08-31 16:19:20,142.142 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:19:20,368.368 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:19:20,372.372 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:19:20,572.572 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:19:20,630.630 INFO    ] time= 31/08/2026 16:19:20
[2026-08-31 16:19:20,636.636 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:19:20,654.654 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:19:20,764.764 INFO    ] No existing commands found in stream
[2026-08-31 16:19:25,791.791 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:19:25,794.794 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-08-31 16:19:26,951.951 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 16:19:26,953.953 INFO    ] Checking for system updates...
[2026-08-31 16:19:26,989.989 INFO    ] 200
[2026-08-31 16:19:26,991.991 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:19:27,043.043 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:19:27,045.045 INFO    ] No update needed
[2026-08-31 16:19:27,048.048 INFO    ] Checking for camera pi updates...
[2026-08-31 16:19:27,082.082 INFO    ] 200
[2026-08-31 16:19:27,084.084 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:19:27,125.125 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:19:27,230.230 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:19:27,232.232 INFO    ] No camera update needed
[2026-08-31 16:19:27,235.235 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:19:27,237.237 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:19:27,242.242 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:19:27,247.247 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:19:29,289.289 INFO    ] ================================================
[2026-08-31 16:19:29,304.304 INFO    ] Launching Daemon at Mon Aug 31 16:19:29 IST 2026
[2026-08-31 16:19:29,315.315 INFO    ] ================================================
[2026-08-31 16:19:29,888.888 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:19:29
[2026-08-31 16:19:30,478.478 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:19:30,735.735 INFO    ] Initializing speech engine...
[2026-08-31 16:19:30,741.741 INFO    ] 2026-08-31 16:19:30
[2026-08-31 16:19:31,036.036 INFO    ] 2026-08-31 16:19:31
[2026-08-31 16:19:31,071.071 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:19:31,272.272 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:19:31,289.289 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:19:31,479.479 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:19:31,518.518 INFO    ] time= 31/08/2026 16:19:31
[2026-08-31 16:19:31,563.563 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:19:31,607.607 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:19:31,722.722 INFO    ] No existing commands found in stream
[2026-08-31 16:19:36,735.735 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:19:36,739.739 INFO    ] Waiting 0.00 seconds before fallback handling...
[2026-08-31 16:19:37,245.245 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 16:19:37,248.248 INFO    ] Checking for system updates...
[2026-08-31 16:19:37,289.289 INFO    ] 200
[2026-08-31 16:19:37,291.291 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:19:37,344.344 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:19:37,347.347 INFO    ] No update needed
[2026-08-31 16:19:37,349.349 INFO    ] Checking for camera pi updates...
[2026-08-31 16:19:37,383.383 INFO    ] 200
[2026-08-31 16:19:37,385.385 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:19:37,429.429 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:19:37,516.516 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:19:37,519.519 INFO    ] No camera update needed
[2026-08-31 16:19:37,521.521 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:19:37,523.523 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:19:37,529.529 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:19:37,534.534 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:19:39,575.575 INFO    ] ================================================
[2026-08-31 16:19:39,591.591 INFO    ] Launching Daemon at Mon Aug 31 16:19:39 IST 2026
[2026-08-31 16:19:39,602.602 INFO    ] ================================================
[2026-08-31 16:19:40,182.182 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:19:40
[2026-08-31 16:19:40,767.767 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:19:41,036.036 INFO    ] Initializing speech engine...
[2026-08-31 16:19:41,046.046 INFO    ] 2026-08-31 16:19:41
[2026-08-31 16:19:41,294.294 INFO    ] 2026-08-31 16:19:41
[2026-08-31 16:19:41,330.330 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:19:41,583.583 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:19:41,592.592 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:19:41,724.724 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:19:41,766.766 INFO    ] time= 31/08/2026 16:19:41
[2026-08-31 16:19:41,830.830 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:19:41,858.858 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:19:41,995.995 INFO    ] No existing commands found in stream
[2026-08-31 16:19:47,016.016 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:19:47,019.019 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-08-31 16:19:48,529.529 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 16:19:48,532.532 INFO    ] Checking for system updates...
[2026-08-31 16:19:48,568.568 INFO    ] 200
[2026-08-31 16:19:48,570.570 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:19:48,629.629 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:19:48,631.631 INFO    ] No update needed
[2026-08-31 16:19:48,633.633 INFO    ] Checking for camera pi updates...
[2026-08-31 16:19:48,666.666 INFO    ] 200
[2026-08-31 16:19:48,669.669 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:19:48,710.710 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:19:48,794.794 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:19:48,796.796 INFO    ] No camera update needed
[2026-08-31 16:19:48,799.799 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:19:48,801.801 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:19:48,806.806 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:19:48,811.811 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:19:50,852.852 INFO    ] ================================================
[2026-08-31 16:19:50,868.868 INFO    ] Launching Daemon at Mon Aug 31 16:19:50 IST 2026
[2026-08-31 16:19:50,878.878 INFO    ] ================================================
[2026-08-31 16:19:51,530.530 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:19:51
[2026-08-31 16:19:52,199.199 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:19:52,502.502 INFO    ] Initializing speech engine...
[2026-08-31 16:19:52,514.514 INFO    ] 2026-08-31 16:19:52
[2026-08-31 16:19:52,823.823 INFO    ] 2026-08-31 16:19:52
[2026-08-31 16:19:52,909.909 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:19:53,064.064 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:19:53,069.069 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:19:53,272.272 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:19:53,330.330 INFO    ] time= 31/08/2026 16:19:53
[2026-08-31 16:19:53,346.346 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:19:53,379.379 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:19:53,486.486 INFO    ] No existing commands found in stream
[2026-08-31 16:19:58,514.514 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:19:58,517.517 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-08-31 16:20:01,997.997 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 16:20:02,001.001 INFO    ] Checking for system updates...
[2026-08-31 16:20:02,054.054 INFO    ] 200
[2026-08-31 16:20:02,058.058 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:20:02,124.124 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:20:02,128.128 INFO    ] No update needed
[2026-08-31 16:20:02,132.132 INFO    ] Checking for camera pi updates...
[2026-08-31 16:20:02,181.181 INFO    ] 200
[2026-08-31 16:20:02,185.185 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:20:02,242.242 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:20:02,639.639 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:20:02,642.642 INFO    ] No camera update needed
[2026-08-31 16:20:02,645.645 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:20:02,648.648 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:20:02,655.655 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:20:02,662.662 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:20:04,702.702 INFO    ] ================================================
[2026-08-31 16:20:04,718.718 INFO    ] Launching Daemon at Mon Aug 31 16:20:04 IST 2026
[2026-08-31 16:20:04,729.729 INFO    ] ================================================
[2026-08-31 16:20:05,391.391 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:20:05
[2026-08-31 16:20:06,070.070 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:20:06,384.384 INFO    ] Initializing speech engine...
[2026-08-31 16:20:06,393.393 INFO    ] 2026-08-31 16:20:06
[2026-08-31 16:20:06,700.700 INFO    ] 2026-08-31 16:20:06
[2026-08-31 16:20:06,764.764 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:20:06,923.923 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:20:06,929.929 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:20:07,104.104 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:20:07,113.113 INFO    ] time= 31/08/2026 16:20:07
[2026-08-31 16:20:07,121.121 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:20:07,143.143 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:20:07,267.267 INFO    ] No existing commands found in stream
[2026-08-31 16:20:12,292.292 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:20:12,294.294 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-08-31 16:20:16,071.071 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 16:20:16,074.074 INFO    ] Checking for system updates...
[2026-08-31 16:20:16,114.114 INFO    ] 200
[2026-08-31 16:20:16,116.116 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:20:16,170.170 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:20:16,173.173 INFO    ] No update needed
[2026-08-31 16:20:16,176.176 INFO    ] Checking for camera pi updates...
[2026-08-31 16:20:16,211.211 INFO    ] 200
[2026-08-31 16:20:16,213.213 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:20:16,261.261 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:20:16,343.343 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:20:16,345.345 INFO    ] No camera update needed
[2026-08-31 16:20:16,348.348 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:20:16,351.351 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:20:16,357.357 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:20:16,363.363 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:20:18,406.406 INFO    ] ================================================
[2026-08-31 16:20:18,424.424 INFO    ] Launching Daemon at Mon Aug 31 16:20:18 IST 2026
[2026-08-31 16:20:18,435.435 INFO    ] ================================================
[2026-08-31 16:20:19,091.091 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:20:19
[2026-08-31 16:20:19,768.768 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:20:20,079.079 INFO    ] Initializing speech engine...
[2026-08-31 16:20:20,090.090 INFO    ] 2026-08-31 16:20:20
[2026-08-31 16:20:20,375.375 INFO    ] 2026-08-31 16:20:20
[2026-08-31 16:20:20,484.484 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:20:20,696.696 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:20:20,705.705 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:20:20,902.902 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:20:20,923.923 INFO    ] time= 31/08/2026 16:20:20
[2026-08-31 16:20:20,950.950 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:20:20,960.960 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:20:21,091.091 INFO    ] No existing commands found in stream
[2026-08-31 16:20:26,122.122 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:20:26,126.126 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-08-31 16:20:29,259.259 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 16:20:29,262.262 INFO    ] Checking for system updates...
[2026-08-31 16:20:29,299.299 INFO    ] 200
[2026-08-31 16:20:29,302.302 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:20:29,355.355 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:20:29,358.358 INFO    ] No update needed
[2026-08-31 16:20:29,361.361 INFO    ] Checking for camera pi updates...
[2026-08-31 16:20:29,396.396 INFO    ] 200
[2026-08-31 16:20:29,399.399 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:20:29,441.441 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:20:29,635.635 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:20:29,638.638 INFO    ] No camera update needed
[2026-08-31 16:20:29,641.641 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:20:29,644.644 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:20:29,650.650 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:20:29,655.655 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:20:31,697.697 INFO    ] ================================================
[2026-08-31 16:20:31,713.713 INFO    ] Launching Daemon at Mon Aug 31 16:20:31 IST 2026
[2026-08-31 16:20:31,725.725 INFO    ] ================================================
[2026-08-31 16:20:32,417.417 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:20:32
[2026-08-31 16:20:33,057.057 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:20:33,315.315 INFO    ] Initializing speech engine...
[2026-08-31 16:20:33,322.322 INFO    ] 2026-08-31 16:20:33
[2026-08-31 16:20:33,605.605 INFO    ] 2026-08-31 16:20:33
[2026-08-31 16:20:33,641.641 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:20:33,896.896 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:20:33,901.901 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:20:34,122.122 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:20:34,159.159 INFO    ] time= 31/08/2026 16:20:34
[2026-08-31 16:20:34,164.164 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:20:34,182.182 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:20:34,298.298 INFO    ] No existing commands found in stream
[2026-08-31 16:20:39,322.322 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:20:39,325.325 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-08-31 16:20:40,810.810 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 16:20:40,813.813 INFO    ] Checking for system updates...
[2026-08-31 16:20:40,852.852 INFO    ] 200
[2026-08-31 16:20:40,854.854 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:20:40,913.913 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:20:40,915.915 INFO    ] No update needed
[2026-08-31 16:20:40,918.918 INFO    ] Checking for camera pi updates...
[2026-08-31 16:20:40,952.952 INFO    ] 200
[2026-08-31 16:20:40,954.954 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:20:40,994.994 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:20:41,077.077 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:20:41,079.079 INFO    ] No camera update needed
[2026-08-31 16:20:41,082.082 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:20:41,084.084 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:20:41,089.089 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:20:41,094.094 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:20:43,134.134 INFO    ] ================================================
[2026-08-31 16:20:43,149.149 INFO    ] Launching Daemon at Mon Aug 31 16:20:43 IST 2026
[2026-08-31 16:20:43,160.160 INFO    ] ================================================
[2026-08-31 16:20:43,728.728 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:20:43
[2026-08-31 16:20:44,311.311 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:20:44,569.569 INFO    ] Initializing speech engine...
[2026-08-31 16:20:44,588.588 INFO    ] 2026-08-31 16:20:44
[2026-08-31 16:20:44,834.834 INFO    ] 2026-08-31 16:20:44
[2026-08-31 16:20:44,871.871 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:20:45,133.133 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:20:45,138.138 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:20:45,275.275 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:20:45,334.334 INFO    ] time= 31/08/2026 16:20:45
[2026-08-31 16:20:45,389.389 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:20:45,408.408 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:20:45,480.480 INFO    ] No existing commands found in stream
[2026-08-31 16:20:50,510.510 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:20:50,513.513 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-08-31 16:20:53,089.089 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 16:20:53,092.092 INFO    ] Checking for system updates...
[2026-08-31 16:20:53,134.134 INFO    ] 200
[2026-08-31 16:20:53,137.137 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:20:53,199.199 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:20:53,202.202 INFO    ] No update needed
[2026-08-31 16:20:53,205.205 INFO    ] Checking for camera pi updates...
[2026-08-31 16:20:53,240.240 INFO    ] 200
[2026-08-31 16:20:53,243.243 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:20:53,284.284 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:20:53,370.370 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:20:53,372.372 INFO    ] No camera update needed
[2026-08-31 16:20:53,375.375 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:20:53,377.377 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:20:53,382.382 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:20:53,387.387 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:20:55,428.428 INFO    ] ================================================
[2026-08-31 16:20:55,443.443 INFO    ] Launching Daemon at Mon Aug 31 16:20:55 IST 2026
[2026-08-31 16:20:55,453.453 INFO    ] ================================================
[2026-08-31 16:20:56,027.027 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:20:56
[2026-08-31 16:20:56,614.614 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:20:56,899.899 INFO    ] Initializing speech engine...
[2026-08-31 16:20:56,910.910 INFO    ] 2026-08-31 16:20:56
[2026-08-31 16:20:57,174.174 INFO    ] 2026-08-31 16:20:57
[2026-08-31 16:20:57,212.212 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:20:57,438.438 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:20:57,457.457 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:20:57,658.658 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:20:57,669.669 INFO    ] time= 31/08/2026 16:20:57
[2026-08-31 16:20:57,718.718 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:20:57,767.767 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:20:57,838.838 INFO    ] No existing commands found in stream
[2026-08-31 16:21:02,850.850 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:21:02,853.853 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-08-31 16:21:06,338.338 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 16:21:06,341.341 INFO    ] Checking for system updates...
[2026-08-31 16:21:06,377.377 INFO    ] 200
[2026-08-31 16:21:06,379.379 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:21:06,435.435 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:21:06,438.438 INFO    ] No update needed
[2026-08-31 16:21:06,440.440 INFO    ] Checking for camera pi updates...
[2026-08-31 16:21:06,478.478 INFO    ] 200
[2026-08-31 16:21:06,481.481 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:21:06,538.538 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:21:06,608.608 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:21:06,611.611 INFO    ] No camera update needed
[2026-08-31 16:21:06,613.613 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:21:06,615.615 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:21:06,621.621 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:21:06,626.626 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:21:08,665.665 INFO    ] ================================================
[2026-08-31 16:21:08,680.680 INFO    ] Launching Daemon at Mon Aug 31 16:21:08 IST 2026
[2026-08-31 16:21:08,693.693 INFO    ] ================================================
[2026-08-31 16:21:09,274.274 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:21:09
[2026-08-31 16:21:09,870.870 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:21:10,147.147 INFO    ] Initializing speech engine...
[2026-08-31 16:21:10,154.154 INFO    ] 2026-08-31 16:21:10
[2026-08-31 16:21:10,415.415 INFO    ] 2026-08-31 16:21:10
[2026-08-31 16:21:10,445.445 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:21:10,717.717 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:21:10,722.722 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:21:10,929.929 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:21:10,957.957 INFO    ] time= 31/08/2026 16:21:10
[2026-08-31 16:21:10,973.973 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:21:10,982.982 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:21:11,088.088 INFO    ] No existing commands found in stream
[2026-08-31 16:21:16,117.117 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:21:16,120.120 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-08-31 16:21:17,492.492 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 16:21:17,495.495 INFO    ] Checking for system updates...
[2026-08-31 16:21:17,535.535 INFO    ] 200
[2026-08-31 16:21:17,537.537 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:21:17,591.591 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:21:17,594.594 INFO    ] No update needed
[2026-08-31 16:21:17,596.596 INFO    ] Checking for camera pi updates...
[2026-08-31 16:21:17,629.629 INFO    ] 200
[2026-08-31 16:21:17,632.632 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:21:17,672.672 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:21:17,752.752 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:21:17,754.754 INFO    ] No camera update needed
[2026-08-31 16:21:17,756.756 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:21:17,759.759 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:21:17,764.764 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:21:17,769.769 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:21:19,812.812 INFO    ] ================================================
[2026-08-31 16:21:19,827.827 INFO    ] Launching Daemon at Mon Aug 31 16:21:19 IST 2026
[2026-08-31 16:21:19,838.838 INFO    ] ================================================
[2026-08-31 16:21:20,492.492 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:21:20
[2026-08-31 16:21:21,168.168 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:21:21,474.474 INFO    ] Initializing speech engine...
[2026-08-31 16:21:21,483.483 INFO    ] 2026-08-31 16:21:21
[2026-08-31 16:21:21,774.774 INFO    ] 2026-08-31 16:21:21
[2026-08-31 16:21:21,820.820 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:21:22,075.075 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:21:22,080.080 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:21:22,279.279 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:21:22,323.323 INFO    ] time= 31/08/2026 16:21:22
[2026-08-31 16:21:22,330.330 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:21:22,349.349 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:21:22,462.462 INFO    ] No existing commands found in stream
[2026-08-31 16:21:27,488.488 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:21:27,491.491 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-08-31 16:21:30,276.276 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 16:21:30,279.279 INFO    ] Checking for system updates...
[2026-08-31 16:21:30,316.316 INFO    ] 200
[2026-08-31 16:21:30,319.319 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:21:30,375.375 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:21:30,377.377 INFO    ] No update needed
[2026-08-31 16:21:30,380.380 INFO    ] Checking for camera pi updates...
[2026-08-31 16:21:30,414.414 INFO    ] 200
[2026-08-31 16:21:30,417.417 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:21:30,457.457 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:21:30,562.562 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:21:30,565.565 INFO    ] No camera update needed
[2026-08-31 16:21:30,567.567 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:21:30,569.569 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:21:30,574.574 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:21:30,580.580 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:21:32,620.620 INFO    ] ================================================
[2026-08-31 16:21:32,636.636 INFO    ] Launching Daemon at Mon Aug 31 16:21:32 IST 2026
[2026-08-31 16:21:32,647.647 INFO    ] ================================================
[2026-08-31 16:21:33,268.268 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:21:33
[2026-08-31 16:21:33,870.870 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:21:34,150.150 INFO    ] Initializing speech engine...
[2026-08-31 16:21:34,156.156 INFO    ] 2026-08-31 16:21:34
[2026-08-31 16:21:34,416.416 INFO    ] 2026-08-31 16:21:34
[2026-08-31 16:21:34,445.445 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:21:34,693.693 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:21:34,698.698 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:21:34,842.842 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:21:34,901.901 INFO    ] time= 31/08/2026 16:21:34
[2026-08-31 16:21:34,956.956 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:21:34,965.965 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:21:35,095.095 INFO    ] No existing commands found in stream
[2026-08-31 16:21:40,117.117 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:21:40,120.120 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-08-31 16:21:41,832.832 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 16:21:41,835.835 INFO    ] Checking for system updates...
[2026-08-31 16:21:41,871.871 INFO    ] 200
[2026-08-31 16:21:41,873.873 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:21:41,932.932 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:21:41,935.935 INFO    ] No update needed
[2026-08-31 16:21:41,937.937 INFO    ] Checking for camera pi updates...
[2026-08-31 16:21:41,975.975 INFO    ] 200
[2026-08-31 16:21:41,977.977 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:21:42,023.023 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:21:42,103.103 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:21:42,106.106 INFO    ] No camera update needed
[2026-08-31 16:21:42,108.108 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:21:42,111.111 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:21:42,116.116 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:21:42,121.121 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:21:44,160.160 INFO    ] ================================================
[2026-08-31 16:21:44,175.175 INFO    ] Launching Daemon at Mon Aug 31 16:21:44 IST 2026
[2026-08-31 16:21:44,185.185 INFO    ] ================================================
[2026-08-31 16:21:44,750.750 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:21:44
[2026-08-31 16:21:45,335.335 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:21:45,583.583 INFO    ] Initializing speech engine...
[2026-08-31 16:21:45,598.598 INFO    ] 2026-08-31 16:21:45
[2026-08-31 16:21:45,865.865 INFO    ] 2026-08-31 16:21:45
[2026-08-31 16:21:45,900.900 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:21:46,163.163 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:21:46,169.169 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:21:46,399.399 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:21:46,434.434 INFO    ] time= 31/08/2026 16:21:46
[2026-08-31 16:21:46,440.440 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:21:46,458.458 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:21:46,585.585 INFO    ] No existing commands found in stream
[2026-08-31 16:21:51,602.602 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:21:51,605.605 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-08-31 16:21:52,999.999 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 16:21:53,001.001 INFO    ] Checking for system updates...
[2026-08-31 16:21:53,037.037 INFO    ] 200
[2026-08-31 16:21:53,040.040 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:21:53,093.093 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:21:53,096.096 INFO    ] No update needed
[2026-08-31 16:21:53,098.098 INFO    ] Checking for camera pi updates...
[2026-08-31 16:21:53,132.132 INFO    ] 200
[2026-08-31 16:21:53,134.134 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:21:53,174.174 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:21:53,264.264 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:21:53,267.267 INFO    ] No camera update needed
[2026-08-31 16:21:53,269.269 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:21:53,271.271 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:21:53,277.277 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:21:53,282.282 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:21:55,325.325 INFO    ] ================================================
[2026-08-31 16:21:55,340.340 INFO    ] Launching Daemon at Mon Aug 31 16:21:55 IST 2026
[2026-08-31 16:21:55,351.351 INFO    ] ================================================
[2026-08-31 16:21:55,997.997 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:21:55
[2026-08-31 16:21:56,660.660 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:21:56,961.961 INFO    ] Initializing speech engine...
[2026-08-31 16:21:56,968.968 INFO    ] 2026-08-31 16:21:56
[2026-08-31 16:21:57,260.260 INFO    ] 2026-08-31 16:21:57
[2026-08-31 16:21:57,306.306 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:21:57,665.665 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:21:57,716.716 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:21:57,931.931 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:21:57,970.970 INFO    ] time= 31/08/2026 16:21:57
[2026-08-31 16:21:58,030.030 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:21:58,070.070 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:21:58,205.205 INFO    ] No existing commands found in stream
[2026-08-31 16:22:03,230.230 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:22:03,235.235 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-08-31 16:22:07,575.575 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 16:22:07,578.578 INFO    ] Checking for system updates...
[2026-08-31 16:22:07,619.619 INFO    ] 200
[2026-08-31 16:22:07,622.622 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:22:07,681.681 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:22:07,684.684 INFO    ] No update needed
[2026-08-31 16:22:07,686.686 INFO    ] Checking for camera pi updates...
[2026-08-31 16:22:07,721.721 INFO    ] 200
[2026-08-31 16:22:07,723.723 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:22:07,767.767 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:22:07,864.864 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:22:07,866.866 INFO    ] No camera update needed
[2026-08-31 16:22:07,869.869 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:22:07,871.871 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:22:07,876.876 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:22:07,882.882 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:22:09,921.921 INFO    ] ================================================
[2026-08-31 16:22:09,935.935 INFO    ] Launching Daemon at Mon Aug 31 16:22:09 IST 2026
[2026-08-31 16:22:09,946.946 INFO    ] ================================================
[2026-08-31 16:22:10,589.589 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:22:10
[2026-08-31 16:22:11,251.251 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:22:11,552.552 INFO    ] Initializing speech engine...
[2026-08-31 16:22:11,559.559 INFO    ] 2026-08-31 16:22:11
[2026-08-31 16:22:11,842.842 INFO    ] 2026-08-31 16:22:11
[2026-08-31 16:22:11,887.887 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:22:12,114.114 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:22:12,120.120 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:22:12,346.346 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:22:12,376.376 INFO    ] time= 31/08/2026 16:22:12
[2026-08-31 16:22:12,395.395 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:22:12,405.405 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:22:12,535.535 INFO    ] No existing commands found in stream
[2026-08-31 16:22:17,564.564 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:22:17,567.567 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-08-31 16:22:21,536.536 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 16:22:21,540.540 INFO    ] Checking for system updates...
[2026-08-31 16:22:21,581.581 INFO    ] 200
[2026-08-31 16:22:21,584.584 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:22:21,642.642 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:22:21,645.645 INFO    ] No update needed
[2026-08-31 16:22:21,647.647 INFO    ] Checking for camera pi updates...
[2026-08-31 16:22:21,684.684 INFO    ] 200
[2026-08-31 16:22:21,686.686 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:22:21,726.726 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:22:21,807.807 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:22:21,809.809 INFO    ] No camera update needed
[2026-08-31 16:22:21,811.811 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:22:21,814.814 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:22:21,819.819 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:22:21,824.824 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:22:23,863.863 INFO    ] ================================================
[2026-08-31 16:22:23,878.878 INFO    ] Launching Daemon at Mon Aug 31 16:22:23 IST 2026
[2026-08-31 16:22:23,889.889 INFO    ] ================================================
[2026-08-31 16:22:24,452.452 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:22:24
[2026-08-31 16:22:25,035.035 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:22:25,294.294 INFO    ] Initializing speech engine...
[2026-08-31 16:22:25,312.312 INFO    ] 2026-08-31 16:22:25
[2026-08-31 16:22:25,563.563 INFO    ] 2026-08-31 16:22:25
[2026-08-31 16:22:25,597.597 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:22:25,799.799 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:22:25,840.840 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:22:26,008.008 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:22:26,068.068 INFO    ] time= 31/08/2026 16:22:26
[2026-08-31 16:22:26,112.112 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:22:26,139.139 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:22:26,281.281 INFO    ] No existing commands found in stream
[2026-08-31 16:22:31,298.298 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:22:31,301.301 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-08-31 16:22:34,338.338 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 16:22:34,341.341 INFO    ] Checking for system updates...
[2026-08-31 16:22:34,379.379 INFO    ] 200
[2026-08-31 16:22:34,382.382 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:22:34,447.447 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:22:34,450.450 INFO    ] No update needed
[2026-08-31 16:22:34,452.452 INFO    ] Checking for camera pi updates...
[2026-08-31 16:22:34,493.493 INFO    ] 200
[2026-08-31 16:22:34,496.496 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:22:34,541.541 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:22:34,618.618 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:22:34,621.621 INFO    ] No camera update needed
[2026-08-31 16:22:34,624.624 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:22:34,626.626 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:22:34,632.632 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:22:34,638.638 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:22:36,680.680 INFO    ] ================================================
[2026-08-31 16:22:36,696.696 INFO    ] Launching Daemon at Mon Aug 31 16:22:36 IST 2026
[2026-08-31 16:22:36,707.707 INFO    ] ================================================
[2026-08-31 16:22:37,297.297 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:22:37
[2026-08-31 16:22:37,912.912 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:22:38,202.202 INFO    ] Initializing speech engine...
[2026-08-31 16:22:38,207.207 INFO    ] 2026-08-31 16:22:38
[2026-08-31 16:22:38,467.467 INFO    ] 2026-08-31 16:22:38
[2026-08-31 16:22:38,503.503 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:22:38,710.710 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:22:38,770.770 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:22:38,922.922 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:22:38,949.949 INFO    ] time= 31/08/2026 16:22:38
[2026-08-31 16:22:39,009.009 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:22:39,069.069 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:22:39,148.148 INFO    ] No existing commands found in stream
[2026-08-31 16:22:44,161.161 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:22:44,164.164 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-08-31 16:22:45,287.287 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 16:22:45,289.289 INFO    ] Checking for system updates...
[2026-08-31 16:22:45,325.325 INFO    ] 200
[2026-08-31 16:22:45,328.328 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:22:45,381.381 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:22:45,383.383 INFO    ] No update needed
[2026-08-31 16:22:45,385.385 INFO    ] Checking for camera pi updates...
[2026-08-31 16:22:45,423.423 INFO    ] 200
[2026-08-31 16:22:45,425.425 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:22:45,470.470 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:22:45,553.553 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:22:45,556.556 INFO    ] No camera update needed
[2026-08-31 16:22:45,558.558 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:22:45,560.560 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:22:45,566.566 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:22:45,571.571 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:22:47,612.612 INFO    ] ================================================
[2026-08-31 16:22:47,627.627 INFO    ] Launching Daemon at Mon Aug 31 16:22:47 IST 2026
[2026-08-31 16:22:47,638.638 INFO    ] ================================================
[2026-08-31 16:22:48,211.211 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:22:48
[2026-08-31 16:22:48,808.808 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:22:49,072.072 INFO    ] Initializing speech engine...
[2026-08-31 16:22:49,088.088 INFO    ] 2026-08-31 16:22:49
[2026-08-31 16:22:49,378.378 INFO    ] 2026-08-31 16:22:49
[2026-08-31 16:22:49,413.413 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:22:49,613.613 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:22:49,629.629 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:22:49,795.795 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:22:49,801.801 INFO    ] time= 31/08/2026 16:22:49
[2026-08-31 16:22:49,807.807 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:22:49,828.828 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:22:49,971.971 INFO    ] No existing commands found in stream
[2026-08-31 16:22:54,997.997 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:22:55,000.000 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-08-31 16:22:56,898.898 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 16:22:56,900.900 INFO    ] Checking for system updates...
[2026-08-31 16:22:56,940.940 INFO    ] 200
[2026-08-31 16:22:56,942.942 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:22:57,004.004 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:22:57,007.007 INFO    ] No update needed
[2026-08-31 16:22:57,010.010 INFO    ] Checking for camera pi updates...
[2026-08-31 16:22:57,047.047 INFO    ] 200
[2026-08-31 16:22:57,049.049 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:22:57,101.101 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:22:57,178.178 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:22:57,182.182 INFO    ] No camera update needed
[2026-08-31 16:22:57,185.185 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:22:57,188.188 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:22:57,195.195 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:22:57,201.201 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:22:59,245.245 INFO    ] ================================================
[2026-08-31 16:22:59,260.260 INFO    ] Launching Daemon at Mon Aug 31 16:22:59 IST 2026
[2026-08-31 16:22:59,271.271 INFO    ] ================================================
[2026-08-31 16:22:59,924.924 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:22:59
[2026-08-31 16:23:00,594.594 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:23:00,897.897 INFO    ] Initializing speech engine...
[2026-08-31 16:23:00,905.905 INFO    ] 2026-08-31 16:23:00
[2026-08-31 16:23:01,176.176 INFO    ] 2026-08-31 16:23:01
[2026-08-31 16:23:01,238.238 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:23:01,472.472 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:23:01,478.478 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:23:01,630.630 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:23:01,634.634 INFO    ] time= 31/08/2026 16:23:01
[2026-08-31 16:23:01,638.638 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:23:01,659.659 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:23:01,721.721 INFO    ] No existing commands found in stream
[2026-08-31 16:23:06,730.730 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:23:06,733.733 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-08-31 16:23:08,885.885 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 16:23:08,888.888 INFO    ] Checking for system updates...
[2026-08-31 16:23:08,926.926 INFO    ] 200
[2026-08-31 16:23:08,929.929 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:23:08,987.987 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:23:08,990.990 INFO    ] No update needed
[2026-08-31 16:23:08,992.992 INFO    ] Checking for camera pi updates...
[2026-08-31 16:23:09,030.030 INFO    ] 200
[2026-08-31 16:23:09,032.032 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:23:09,078.078 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:23:09,158.158 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:23:09,161.161 INFO    ] No camera update needed
[2026-08-31 16:23:09,163.163 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:23:09,165.165 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:23:09,171.171 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:23:09,176.176 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:23:11,216.216 INFO    ] ================================================
[2026-08-31 16:23:11,231.231 INFO    ] Launching Daemon at Mon Aug 31 16:23:11 IST 2026
[2026-08-31 16:23:11,242.242 INFO    ] ================================================
[2026-08-31 16:23:11,822.822 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:23:11
[2026-08-31 16:23:12,417.417 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:23:12,693.693 INFO    ] Initializing speech engine...
[2026-08-31 16:23:12,702.702 INFO    ] 2026-08-31 16:23:12
[2026-08-31 16:23:12,961.961 INFO    ] 2026-08-31 16:23:12
[2026-08-31 16:23:13,015.015 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:23:13,236.236 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:23:13,245.245 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:23:13,443.443 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:23:13,502.502 INFO    ] time= 31/08/2026 16:23:13
[2026-08-31 16:23:13,509.509 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:23:13,527.527 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:23:13,636.636 INFO    ] No existing commands found in stream
[2026-08-31 16:23:18,663.663 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:23:18,666.666 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-08-31 16:23:22,994.994 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 16:23:22,997.997 INFO    ] Checking for system updates...
[2026-08-31 16:23:23,049.049 INFO    ] 200
[2026-08-31 16:23:23,051.051 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:23:23,137.137 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:23:23,140.140 INFO    ] No update needed
[2026-08-31 16:23:23,142.142 INFO    ] Checking for camera pi updates...
[2026-08-31 16:23:23,179.179 INFO    ] 200
[2026-08-31 16:23:23,182.182 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:23:23,226.226 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:23:23,308.308 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:23:23,311.311 INFO    ] No camera update needed
[2026-08-31 16:23:23,313.313 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:23:23,316.316 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:23:23,321.321 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:23:23,326.326 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:23:25,368.368 INFO    ] ================================================
[2026-08-31 16:23:25,383.383 INFO    ] Launching Daemon at Mon Aug 31 16:23:25 IST 2026
[2026-08-31 16:23:25,394.394 INFO    ] ================================================
[2026-08-31 16:23:26,042.042 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:23:26
[2026-08-31 16:23:26,711.711 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:23:27,018.018 INFO    ] Initializing speech engine...
[2026-08-31 16:23:27,032.032 INFO    ] 2026-08-31 16:23:27
[2026-08-31 16:23:27,305.305 INFO    ] 2026-08-31 16:23:27
[2026-08-31 16:23:27,361.361 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:23:27,648.648 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:23:27,657.657 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:23:27,858.858 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:23:27,864.864 INFO    ] time= 31/08/2026 16:23:27
[2026-08-31 16:23:27,886.886 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:23:27,913.913 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:23:28,021.021 INFO    ] No existing commands found in stream
[2026-08-31 16:23:33,034.034 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:23:33,038.038 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-08-31 16:23:36,085.085 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 16:23:36,089.089 INFO    ] Checking for system updates...
[2026-08-31 16:23:36,129.129 INFO    ] 200
[2026-08-31 16:23:36,133.133 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:23:36,193.193 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:23:36,195.195 INFO    ] No update needed
[2026-08-31 16:23:36,198.198 INFO    ] Checking for camera pi updates...
[2026-08-31 16:23:36,233.233 INFO    ] 200
[2026-08-31 16:23:36,235.235 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:23:36,282.282 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:23:36,362.362 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:23:36,365.365 INFO    ] No camera update needed
[2026-08-31 16:23:36,368.368 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:23:36,371.371 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:23:36,377.377 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:23:36,383.383 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:23:38,423.423 INFO    ] ================================================
[2026-08-31 16:23:38,438.438 INFO    ] Launching Daemon at Mon Aug 31 16:23:38 IST 2026
[2026-08-31 16:23:38,449.449 INFO    ] ================================================
[2026-08-31 16:23:39,016.016 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:23:39
[2026-08-31 16:23:39,683.683 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:23:39,990.990 INFO    ] Initializing speech engine...
[2026-08-31 16:23:40,004.004 INFO    ] 2026-08-31 16:23:39
[2026-08-31 16:23:40,274.274 INFO    ] 2026-08-31 16:23:40
[2026-08-31 16:23:40,328.328 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:23:40,557.557 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:23:40,568.568 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:23:40,758.758 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:23:40,818.818 INFO    ] time= 31/08/2026 16:23:40
[2026-08-31 16:23:40,841.841 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:23:40,860.860 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:23:40,977.977 INFO    ] No existing commands found in stream
[2026-08-31 16:23:46,005.005 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:23:46,008.008 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-08-31 16:23:48,254.254 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 16:23:48,257.257 INFO    ] Checking for system updates...
[2026-08-31 16:23:48,293.293 INFO    ] 200
[2026-08-31 16:23:48,296.296 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:23:48,357.357 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:23:48,360.360 INFO    ] No update needed
[2026-08-31 16:23:48,363.363 INFO    ] Checking for camera pi updates...
[2026-08-31 16:23:48,402.402 INFO    ] 200
[2026-08-31 16:23:48,405.405 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:23:48,451.451 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:23:48,553.553 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:23:48,556.556 INFO    ] No camera update needed
[2026-08-31 16:23:48,559.559 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:23:48,562.562 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:23:48,569.569 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:23:48,575.575 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:23:50,616.616 INFO    ] ================================================
[2026-08-31 16:23:50,631.631 INFO    ] Launching Daemon at Mon Aug 31 16:23:50 IST 2026
[2026-08-31 16:23:50,642.642 INFO    ] ================================================
[2026-08-31 16:23:51,209.209 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:23:51
[2026-08-31 16:23:51,793.793 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:23:52,053.053 INFO    ] Initializing speech engine...
[2026-08-31 16:23:52,072.072 INFO    ] 2026-08-31 16:23:52
[2026-08-31 16:23:52,324.324 INFO    ] 2026-08-31 16:23:52
[2026-08-31 16:23:52,359.359 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:23:52,615.615 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:23:52,624.624 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:23:52,840.840 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:23:52,890.890 INFO    ] time= 31/08/2026 16:23:52
[2026-08-31 16:23:52,896.896 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:23:52,899.899 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:23:53,042.042 INFO    ] No existing commands found in stream
[2026-08-31 16:23:58,058.058 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:23:58,061.061 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-08-31 16:24:00,599.599 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 16:24:00,601.601 INFO    ] Checking for system updates...
[2026-08-31 16:24:00,638.638 INFO    ] 200
[2026-08-31 16:24:00,641.641 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:24:00,702.702 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:24:00,705.705 INFO    ] No update needed
[2026-08-31 16:24:00,708.708 INFO    ] Checking for camera pi updates...
[2026-08-31 16:24:00,746.746 INFO    ] 200
[2026-08-31 16:24:00,749.749 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:24:00,800.800 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:24:00,875.875 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:24:00,877.877 INFO    ] No camera update needed
[2026-08-31 16:24:00,880.880 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:24:00,882.882 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:24:00,887.887 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:24:00,892.892 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:24:02,946.946 INFO    ] ================================================
[2026-08-31 16:24:02,966.966 INFO    ] Launching Daemon at Mon Aug 31 16:24:02 IST 2026
[2026-08-31 16:24:02,988.988 INFO    ] ================================================
[2026-08-31 16:24:03,603.603 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:24:03
[2026-08-31 16:24:04,184.184 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:24:04,442.442 INFO    ] Initializing speech engine...
[2026-08-31 16:24:04,461.461 INFO    ] 2026-08-31 16:24:04
[2026-08-31 16:24:04,710.710 INFO    ] 2026-08-31 16:24:04
[2026-08-31 16:24:04,746.746 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:24:05,007.007 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:24:05,011.011 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:24:05,164.164 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:24:05,224.224 INFO    ] time= 31/08/2026 16:24:05
[2026-08-31 16:24:05,279.279 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:24:05,284.284 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:24:05,407.407 INFO    ] No existing commands found in stream
[2026-08-31 16:24:10,437.437 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:24:10,440.440 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-08-31 16:24:14,360.360 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 16:24:14,363.363 INFO    ] Checking for system updates...
[2026-08-31 16:24:14,398.398 INFO    ] 200
[2026-08-31 16:24:14,400.400 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:24:14,453.453 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:24:14,455.455 INFO    ] No update needed
[2026-08-31 16:24:14,458.458 INFO    ] Checking for camera pi updates...
[2026-08-31 16:24:14,491.491 INFO    ] 200
[2026-08-31 16:24:14,494.494 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:24:14,533.533 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:24:14,641.641 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:24:14,643.643 INFO    ] No camera update needed
[2026-08-31 16:24:14,645.645 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:24:14,648.648 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:24:14,653.653 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:24:14,658.658 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:24:16,699.699 INFO    ] ================================================
[2026-08-31 16:24:16,714.714 INFO    ] Launching Daemon at Mon Aug 31 16:24:16 IST 2026
[2026-08-31 16:24:16,724.724 INFO    ] ================================================
[2026-08-31 16:24:17,303.303 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:24:17
[2026-08-31 16:24:17,900.900 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:24:18,177.177 INFO    ] Initializing speech engine...
[2026-08-31 16:24:18,182.182 INFO    ] 2026-08-31 16:24:18
[2026-08-31 16:24:18,430.430 INFO    ] 2026-08-31 16:24:18
[2026-08-31 16:24:18,496.496 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:24:18,749.749 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:24:18,767.767 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:24:18,945.945 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:24:18,987.987 INFO    ] time= 31/08/2026 16:24:18
[2026-08-31 16:24:18,993.993 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:24:19,011.011 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:24:19,121.121 INFO    ] No existing commands found in stream
[2026-08-31 16:24:24,146.146 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:24:24,149.149 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-08-31 16:24:24,776.776 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 16:24:24,779.779 INFO    ] Checking for system updates...
[2026-08-31 16:24:24,814.814 INFO    ] 200
[2026-08-31 16:24:24,817.817 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:24:24,869.869 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:24:24,872.872 INFO    ] No update needed
[2026-08-31 16:24:24,874.874 INFO    ] Checking for camera pi updates...
[2026-08-31 16:24:24,907.907 INFO    ] 200
[2026-08-31 16:24:24,910.910 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:24:24,950.950 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:24:25,042.042 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:24:25,044.044 INFO    ] No camera update needed
[2026-08-31 16:24:25,046.046 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:24:25,049.049 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:24:25,054.054 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:24:25,059.059 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:24:27,100.100 INFO    ] ================================================
[2026-08-31 16:24:27,115.115 INFO    ] Launching Daemon at Mon Aug 31 16:24:27 IST 2026
[2026-08-31 16:24:27,126.126 INFO    ] ================================================
[2026-08-31 16:24:27,758.758 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:24:27
[2026-08-31 16:24:28,344.344 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:24:28,616.616 INFO    ] Initializing speech engine...
[2026-08-31 16:24:28,625.625 INFO    ] 2026-08-31 16:24:28
[2026-08-31 16:24:28,876.876 INFO    ] 2026-08-31 16:24:28
[2026-08-31 16:24:28,911.911 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:24:29,113.113 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:24:29,172.172 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:24:29,409.409 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:24:29,447.447 INFO    ] time= 31/08/2026 16:24:29
[2026-08-31 16:24:29,462.462 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:24:29,472.472 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:24:29,602.602 INFO    ] No existing commands found in stream
[2026-08-31 16:24:34,615.615 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:24:34,618.618 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-08-31 16:24:37,371.371 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 16:24:37,374.374 INFO    ] Checking for system updates...
[2026-08-31 16:24:37,413.413 INFO    ] 200
[2026-08-31 16:24:37,415.415 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:24:37,473.473 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:24:37,475.475 INFO    ] No update needed
[2026-08-31 16:24:37,477.477 INFO    ] Checking for camera pi updates...
[2026-08-31 16:24:37,511.511 INFO    ] 200
[2026-08-31 16:24:37,513.513 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:24:37,553.553 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:24:37,734.734 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:24:37,736.736 INFO    ] No camera update needed
[2026-08-31 16:24:37,739.739 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:24:37,741.741 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:24:37,746.746 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:24:37,751.751 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:24:39,792.792 INFO    ] ================================================
[2026-08-31 16:24:39,807.807 INFO    ] Launching Daemon at Mon Aug 31 16:24:39 IST 2026
[2026-08-31 16:24:39,818.818 INFO    ] ================================================
[2026-08-31 16:24:40,399.399 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:24:40
[2026-08-31 16:24:40,997.997 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:24:41,279.279 INFO    ] Initializing speech engine...
[2026-08-31 16:24:41,299.299 INFO    ] 2026-08-31 16:24:41
[2026-08-31 16:24:41,574.574 INFO    ] 2026-08-31 16:24:41
[2026-08-31 16:24:41,615.615 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:24:41,866.866 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:24:41,875.875 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:24:42,031.031 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:24:42,096.096 INFO    ] time= 31/08/2026 16:24:42
[2026-08-31 16:24:42,137.137 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:24:42,144.144 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:24:42,288.288 INFO    ] No existing commands found in stream
[2026-08-31 16:24:47,301.301 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:24:47,304.304 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-08-31 16:24:51,725.725 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 16:24:51,727.727 INFO    ] Checking for system updates...
[2026-08-31 16:24:51,763.763 INFO    ] 200
[2026-08-31 16:24:51,765.765 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:24:51,817.817 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:24:51,820.820 INFO    ] No update needed
[2026-08-31 16:24:51,822.822 INFO    ] Checking for camera pi updates...
[2026-08-31 16:24:51,855.855 INFO    ] 200
[2026-08-31 16:24:51,858.858 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:24:51,903.903 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:24:51,984.984 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:24:51,986.986 INFO    ] No camera update needed
[2026-08-31 16:24:51,989.989 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:24:51,991.991 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:24:51,996.996 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:24:52,001.001 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:24:54,045.045 INFO    ] ================================================
[2026-08-31 16:24:54,061.061 INFO    ] Launching Daemon at Mon Aug 31 16:24:54 IST 2026
[2026-08-31 16:24:54,071.071 INFO    ] ================================================
[2026-08-31 16:24:54,655.655 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:24:54
[2026-08-31 16:24:55,253.253 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:24:55,530.530 INFO    ] Initializing speech engine...
[2026-08-31 16:24:55,536.536 INFO    ] 2026-08-31 16:24:55
[2026-08-31 16:24:55,798.798 INFO    ] 2026-08-31 16:24:55
[2026-08-31 16:24:55,828.828 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:24:56,075.075 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:24:56,086.086 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:24:56,220.220 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:24:56,265.265 INFO    ] time= 31/08/2026 16:24:56
[2026-08-31 16:24:56,330.330 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:24:56,352.352 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:24:56,500.500 INFO    ] No existing commands found in stream
[2026-08-31 16:25:01,523.523 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:25:01,526.526 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-08-31 16:25:05,215.215 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 16:25:05,217.217 INFO    ] Checking for system updates...
[2026-08-31 16:25:05,256.256 INFO    ] 200
[2026-08-31 16:25:05,259.259 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:25:05,317.317 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:25:05,320.320 INFO    ] No update needed
[2026-08-31 16:25:05,322.322 INFO    ] Checking for camera pi updates...
[2026-08-31 16:25:05,356.356 INFO    ] 200
[2026-08-31 16:25:05,358.358 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:25:05,398.398 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:25:05,479.479 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:25:05,482.482 INFO    ] No camera update needed
[2026-08-31 16:25:05,484.484 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:25:05,487.487 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:25:05,492.492 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:25:05,497.497 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:25:07,538.538 INFO    ] ================================================
[2026-08-31 16:25:07,553.553 INFO    ] Launching Daemon at Mon Aug 31 16:25:07 IST 2026
[2026-08-31 16:25:07,563.563 INFO    ] ================================================
[2026-08-31 16:25:08,132.132 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:25:08
[2026-08-31 16:25:08,714.714 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:25:08,966.966 INFO    ] Initializing speech engine...
[2026-08-31 16:25:08,975.975 INFO    ] 2026-08-31 16:25:08
[2026-08-31 16:25:09,262.262 INFO    ] 2026-08-31 16:25:09
[2026-08-31 16:25:09,332.332 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:25:09,471.471 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:25:09,484.484 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:25:09,629.629 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:25:09,635.635 INFO    ] time= 31/08/2026 16:25:09
[2026-08-31 16:25:09,681.681 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:25:09,705.705 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:25:09,830.830 INFO    ] No existing commands found in stream
[2026-08-31 16:25:14,840.840 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:25:14,843.843 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-08-31 16:25:17,770.770 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 16:25:17,773.773 INFO    ] Checking for system updates...
[2026-08-31 16:25:17,809.809 INFO    ] 200
[2026-08-31 16:25:17,812.812 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:25:17,866.866 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:25:17,868.868 INFO    ] No update needed
[2026-08-31 16:25:17,871.871 INFO    ] Checking for camera pi updates...
[2026-08-31 16:25:17,905.905 INFO    ] 200
[2026-08-31 16:25:17,908.908 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:25:17,949.949 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:25:18,071.071 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:25:18,074.074 INFO    ] No camera update needed
[2026-08-31 16:25:18,076.076 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:25:18,079.079 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:25:18,085.085 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:25:18,092.092 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:25:20,133.133 INFO    ] ================================================
[2026-08-31 16:25:20,148.148 INFO    ] Launching Daemon at Mon Aug 31 16:25:20 IST 2026
[2026-08-31 16:25:20,158.158 INFO    ] ================================================
[2026-08-31 16:25:20,738.738 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:25:20
[2026-08-31 16:25:21,336.336 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:25:21,592.592 INFO    ] Initializing speech engine...
[2026-08-31 16:25:21,601.601 INFO    ] 2026-08-31 16:25:21
[2026-08-31 16:25:21,896.896 INFO    ] 2026-08-31 16:25:21
[2026-08-31 16:25:21,933.933 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:25:22,154.154 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:25:22,220.220 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:25:22,375.375 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:25:22,418.418 INFO    ] time= 31/08/2026 16:25:22
[2026-08-31 16:25:22,467.467 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:25:22,522.522 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:25:22,668.668 INFO    ] No existing commands found in stream
[2026-08-31 16:25:27,693.693 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:25:27,696.696 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-08-31 16:25:30,076.076 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 16:25:30,079.079 INFO    ] Checking for system updates...
[2026-08-31 16:25:30,118.118 INFO    ] 200
[2026-08-31 16:25:30,121.121 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:25:30,173.173 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:25:30,175.175 INFO    ] No update needed
[2026-08-31 16:25:30,178.178 INFO    ] Checking for camera pi updates...
[2026-08-31 16:25:30,211.211 INFO    ] 200
[2026-08-31 16:25:30,214.214 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:25:30,254.254 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:25:30,342.342 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:25:30,344.344 INFO    ] No camera update needed
[2026-08-31 16:25:30,347.347 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:25:30,349.349 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:25:30,355.355 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:25:30,360.360 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:25:32,402.402 INFO    ] ================================================
[2026-08-31 16:25:32,418.418 INFO    ] Launching Daemon at Mon Aug 31 16:25:32 IST 2026
[2026-08-31 16:25:32,430.430 INFO    ] ================================================
[2026-08-31 16:25:33,115.115 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:25:33
[2026-08-31 16:25:33,776.776 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:25:34,074.074 INFO    ] Initializing speech engine...
[2026-08-31 16:25:34,082.082 INFO    ] 2026-08-31 16:25:34
[2026-08-31 16:25:34,352.352 INFO    ] 2026-08-31 16:25:34
[2026-08-31 16:25:34,408.408 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:25:34,629.629 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:25:34,640.640 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:25:34,842.842 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:25:34,887.887 INFO    ] time= 31/08/2026 16:25:34
[2026-08-31 16:25:34,905.905 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:25:34,923.923 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:25:35,040.040 INFO    ] No existing commands found in stream
[2026-08-31 16:25:40,071.071 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:25:40,078.078 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-08-31 16:25:40,851.851 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 16:25:40,854.854 INFO    ] Checking for system updates...
[2026-08-31 16:25:40,895.895 INFO    ] 200
[2026-08-31 16:25:40,897.897 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:25:40,958.958 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:25:40,961.961 INFO    ] No update needed
[2026-08-31 16:25:40,964.964 INFO    ] Checking for camera pi updates...
[2026-08-31 16:25:41,002.002 INFO    ] 200
[2026-08-31 16:25:41,005.005 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:25:41,049.049 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:25:41,151.151 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:25:41,154.154 INFO    ] No camera update needed
[2026-08-31 16:25:41,157.157 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:25:41,160.160 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:25:41,166.166 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:25:41,171.171 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:25:43,212.212 INFO    ] ================================================
[2026-08-31 16:25:43,227.227 INFO    ] Launching Daemon at Mon Aug 31 16:25:43 IST 2026
[2026-08-31 16:25:43,237.237 INFO    ] ================================================
[2026-08-31 16:25:43,816.816 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:25:43
[2026-08-31 16:25:44,411.411 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:25:44,687.687 INFO    ] Initializing speech engine...
[2026-08-31 16:25:44,692.692 INFO    ] 2026-08-31 16:25:44
[2026-08-31 16:25:44,952.952 INFO    ] 2026-08-31 16:25:44
[2026-08-31 16:25:45,005.005 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:25:45,233.233 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:25:45,240.240 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:25:45,441.441 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:25:45,493.493 INFO    ] time= 31/08/2026 16:25:45
[2026-08-31 16:25:45,500.500 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:25:45,517.517 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:25:45,647.647 INFO    ] No existing commands found in stream
[2026-08-31 16:25:50,660.660 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:25:50,663.663 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-08-31 16:25:51,822.822 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 16:25:51,825.825 INFO    ] Checking for system updates...
[2026-08-31 16:25:51,861.861 INFO    ] 200
[2026-08-31 16:25:51,863.863 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:25:51,915.915 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:25:51,918.918 INFO    ] No update needed
[2026-08-31 16:25:51,920.920 INFO    ] Checking for camera pi updates...
[2026-08-31 16:25:51,953.953 INFO    ] 200
[2026-08-31 16:25:51,956.956 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:25:51,996.996 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:25:52,081.081 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:25:52,084.084 INFO    ] No camera update needed
[2026-08-31 16:25:52,086.086 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:25:52,089.089 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:25:52,094.094 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:25:52,099.099 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:25:54,141.141 INFO    ] ================================================
[2026-08-31 16:25:54,155.155 INFO    ] Launching Daemon at Mon Aug 31 16:25:54 IST 2026
[2026-08-31 16:25:54,166.166 INFO    ] ================================================
[2026-08-31 16:25:54,806.806 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:25:54
[2026-08-31 16:25:55,469.469 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:25:55,767.767 INFO    ] Initializing speech engine...
[2026-08-31 16:25:55,773.773 INFO    ] 2026-08-31 16:25:55
[2026-08-31 16:25:56,045.045 INFO    ] 2026-08-31 16:25:56
[2026-08-31 16:25:56,101.101 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:25:56,386.386 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:25:56,391.391 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:25:56,588.588 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:25:56,605.605 INFO    ] time= 31/08/2026 16:25:56
[2026-08-31 16:25:56,629.629 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:25:56,644.644 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:25:56,745.745 INFO    ] No existing commands found in stream
[2026-08-31 16:26:01,769.769 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:26:01,774.774 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-08-31 16:26:03,090.090 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 16:26:03,093.093 INFO    ] Checking for system updates...
[2026-08-31 16:26:03,136.136 INFO    ] 200
[2026-08-31 16:26:03,140.140 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:26:03,207.207 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:26:03,210.210 INFO    ] No update needed
[2026-08-31 16:26:03,213.213 INFO    ] Checking for camera pi updates...
[2026-08-31 16:26:03,247.247 INFO    ] 200
[2026-08-31 16:26:03,251.251 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:26:03,301.301 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:26:03,411.411 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:26:03,414.414 INFO    ] No camera update needed
[2026-08-31 16:26:03,417.417 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:26:03,420.420 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:26:03,427.427 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:26:03,436.436 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:26:05,479.479 INFO    ] ================================================
[2026-08-31 16:26:05,495.495 INFO    ] Launching Daemon at Mon Aug 31 16:26:05 IST 2026
[2026-08-31 16:26:05,505.505 INFO    ] ================================================
[2026-08-31 16:26:06,071.071 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:26:06
[2026-08-31 16:26:06,674.674 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:26:06,939.939 INFO    ] Initializing speech engine...
[2026-08-31 16:26:06,956.956 INFO    ] 2026-08-31 16:26:06
[2026-08-31 16:26:07,245.245 INFO    ] 2026-08-31 16:26:07
[2026-08-31 16:26:07,285.285 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:26:07,485.485 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:26:07,499.499 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:26:07,742.742 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:26:07,750.750 INFO    ] time= 31/08/2026 16:26:07
[2026-08-31 16:26:07,810.810 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:26:07,848.848 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:26:07,957.957 INFO    ] No existing commands found in stream
[2026-08-31 16:26:12,969.969 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:26:12,972.972 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-08-31 16:26:16,996.996 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 16:26:16,998.998 INFO    ] Checking for system updates...
[2026-08-31 16:26:17,035.035 INFO    ] 200
[2026-08-31 16:26:17,038.038 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:26:17,100.100 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:26:17,102.102 INFO    ] No update needed
[2026-08-31 16:26:17,105.105 INFO    ] Checking for camera pi updates...
[2026-08-31 16:26:17,141.141 INFO    ] 200
[2026-08-31 16:26:17,143.143 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:26:17,183.183 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:26:17,263.263 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:26:17,265.265 INFO    ] No camera update needed
[2026-08-31 16:26:17,267.267 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:26:17,270.270 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:26:17,275.275 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:26:17,280.280 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:26:19,321.321 INFO    ] ================================================
[2026-08-31 16:26:19,336.336 INFO    ] Launching Daemon at Mon Aug 31 16:26:19 IST 2026
[2026-08-31 16:26:19,347.347 INFO    ] ================================================
[2026-08-31 16:26:20,010.010 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:26:20
[2026-08-31 16:26:20,692.692 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:26:21,003.003 INFO    ] Initializing speech engine...
[2026-08-31 16:26:21,014.014 INFO    ] 2026-08-31 16:26:21
[2026-08-31 16:26:21,331.331 INFO    ] 2026-08-31 16:26:21
[2026-08-31 16:26:21,420.420 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:26:21,640.640 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:26:21,649.649 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:26:21,846.846 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:26:21,865.865 INFO    ] time= 31/08/2026 16:26:21
[2026-08-31 16:26:21,896.896 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:26:21,906.906 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:26:22,032.032 INFO    ] No existing commands found in stream
[2026-08-31 16:26:27,068.068 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:26:27,071.071 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-08-31 16:26:29,331.331 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 16:26:29,334.334 INFO    ] Checking for system updates...
[2026-08-31 16:26:29,371.371 INFO    ] 200
[2026-08-31 16:26:29,374.374 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:26:29,427.427 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:26:29,430.430 INFO    ] No update needed
[2026-08-31 16:26:29,432.432 INFO    ] Checking for camera pi updates...
[2026-08-31 16:26:29,466.466 INFO    ] 200
[2026-08-31 16:26:29,468.468 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:26:29,508.508 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:26:29,589.589 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:26:29,591.591 INFO    ] No camera update needed
[2026-08-31 16:26:29,593.593 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:26:29,595.595 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:26:29,601.601 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:26:29,606.606 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:26:31,646.646 INFO    ] ================================================
[2026-08-31 16:26:31,661.661 INFO    ] Launching Daemon at Mon Aug 31 16:26:31 IST 2026
[2026-08-31 16:26:31,673.673 INFO    ] ================================================
[2026-08-31 16:26:32,283.283 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:26:32
[2026-08-31 16:26:32,912.912 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:26:33,210.210 INFO    ] Initializing speech engine...
[2026-08-31 16:26:33,220.220 INFO    ] 2026-08-31 16:26:33
[2026-08-31 16:26:33,474.474 INFO    ] 2026-08-31 16:26:33
[2026-08-31 16:26:33,533.533 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:26:33,759.759 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:26:33,766.766 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:26:33,894.894 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:26:33,947.947 INFO    ] time= 31/08/2026 16:26:33
[2026-08-31 16:26:34,002.002 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:26:34,031.031 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:26:34,150.150 INFO    ] No existing commands found in stream
[2026-08-31 16:26:39,180.180 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:26:39,183.183 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-08-31 16:26:42,357.357 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 16:26:42,360.360 INFO    ] Checking for system updates...
[2026-08-31 16:26:42,396.396 INFO    ] 200
[2026-08-31 16:26:42,398.398 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:26:42,450.450 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:26:42,453.453 INFO    ] No update needed
[2026-08-31 16:26:42,455.455 INFO    ] Checking for camera pi updates...
[2026-08-31 16:26:42,489.489 INFO    ] 200
[2026-08-31 16:26:42,491.491 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:26:42,533.533 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:26:42,723.723 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:26:42,726.726 INFO    ] No camera update needed
[2026-08-31 16:26:42,730.730 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:26:42,732.732 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:26:42,739.739 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:26:42,745.745 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:26:44,786.786 INFO    ] ================================================
[2026-08-31 16:26:44,802.802 INFO    ] Launching Daemon at Mon Aug 31 16:26:44 IST 2026
[2026-08-31 16:26:44,814.814 INFO    ] ================================================
[2026-08-31 16:26:45,395.395 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:26:45
[2026-08-31 16:26:45,997.997 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:26:46,271.271 INFO    ] Initializing speech engine...
[2026-08-31 16:26:46,280.280 INFO    ] 2026-08-31 16:26:46
[2026-08-31 16:26:46,529.529 INFO    ] 2026-08-31 16:26:46
[2026-08-31 16:26:46,595.595 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:26:46,818.818 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:26:46,827.827 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:26:47,042.042 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:26:47,086.086 INFO    ] time= 31/08/2026 16:26:47
[2026-08-31 16:26:47,103.103 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:26:47,106.106 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:26:47,239.239 INFO    ] No existing commands found in stream
[2026-08-31 16:26:52,253.253 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:26:52,255.255 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-08-31 16:26:53,973.973 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 16:26:53,975.975 INFO    ] Checking for system updates...
[2026-08-31 16:26:54,016.016 INFO    ] 200
[2026-08-31 16:26:54,019.019 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:26:54,071.071 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:26:54,074.074 INFO    ] No update needed
[2026-08-31 16:26:54,076.076 INFO    ] Checking for camera pi updates...
[2026-08-31 16:26:54,114.114 INFO    ] 200
[2026-08-31 16:26:54,117.117 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:26:54,158.158 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:26:54,250.250 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:26:54,252.252 INFO    ] No camera update needed
[2026-08-31 16:26:54,255.255 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:26:54,257.257 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:26:54,262.262 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:26:54,267.267 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:26:56,307.307 INFO    ] ================================================
[2026-08-31 16:26:56,324.324 INFO    ] Launching Daemon at Mon Aug 31 16:26:56 IST 2026
[2026-08-31 16:26:56,336.336 INFO    ] ================================================
[2026-08-31 16:26:56,902.902 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:26:56
[2026-08-31 16:26:57,484.484 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:26:57,759.759 INFO    ] Initializing speech engine...
[2026-08-31 16:26:57,768.768 INFO    ] 2026-08-31 16:26:57
[2026-08-31 16:26:58,018.018 INFO    ] 2026-08-31 16:26:58
[2026-08-31 16:26:58,053.053 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:26:58,252.252 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:26:58,274.274 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:26:58,457.457 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:26:58,494.494 INFO    ] time= 31/08/2026 16:26:58
[2026-08-31 16:26:58,548.548 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:26:58,593.593 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:26:58,730.730 INFO    ] No existing commands found in stream
[2026-08-31 16:27:03,754.754 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:27:03,756.756 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-08-31 16:27:05,969.969 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 16:27:05,971.971 INFO    ] Checking for system updates...
[2026-08-31 16:27:06,007.007 INFO    ] 200
[2026-08-31 16:27:06,010.010 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:27:06,062.062 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:27:06,064.064 INFO    ] No update needed
[2026-08-31 16:27:06,066.066 INFO    ] Checking for camera pi updates...
[2026-08-31 16:27:06,104.104 INFO    ] 200
[2026-08-31 16:27:06,106.106 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:27:06,146.146 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:27:06,197.197 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:27:06,199.199 INFO    ] No camera update needed
[2026-08-31 16:27:06,201.201 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:27:06,204.204 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:27:06,209.209 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:27:06,214.214 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:27:08,255.255 INFO    ] ================================================
[2026-08-31 16:27:08,271.271 INFO    ] Launching Daemon at Mon Aug 31 16:27:08 IST 2026
[2026-08-31 16:27:08,282.282 INFO    ] ================================================
[2026-08-31 16:27:08,925.925 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:27:08
[2026-08-31 16:27:09,594.594 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:27:09,900.900 INFO    ] Initializing speech engine...
[2026-08-31 16:27:09,912.912 INFO    ] 2026-08-31 16:27:09
[2026-08-31 16:27:10,225.225 INFO    ] 2026-08-31 16:27:10
[2026-08-31 16:27:10,307.307 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:27:10,511.511 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:27:10,531.531 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:27:10,728.728 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:27:10,736.736 INFO    ] time= 31/08/2026 16:27:10
[2026-08-31 16:27:10,756.756 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:27:10,785.785 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:27:10,888.888 INFO    ] No existing commands found in stream
[2026-08-31 16:27:15,903.903 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:27:15,906.906 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-08-31 16:27:19,626.626 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 16:27:19,629.629 INFO    ] Checking for system updates...
[2026-08-31 16:27:19,666.666 INFO    ] 200
[2026-08-31 16:27:19,669.669 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:27:19,722.722 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:27:19,725.725 INFO    ] No update needed
[2026-08-31 16:27:19,728.728 INFO    ] Checking for camera pi updates...
[2026-08-31 16:27:19,763.763 INFO    ] 200
[2026-08-31 16:27:19,766.766 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:27:19,808.808 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:27:19,886.886 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:27:19,889.889 INFO    ] No camera update needed
[2026-08-31 16:27:19,892.892 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:27:19,894.894 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:27:19,900.900 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:27:19,906.906 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:27:21,946.946 INFO    ] ================================================
[2026-08-31 16:27:21,962.962 INFO    ] Launching Daemon at Mon Aug 31 16:27:21 IST 2026
[2026-08-31 16:27:21,973.973 INFO    ] ================================================
[2026-08-31 16:27:22,553.553 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:27:22
[2026-08-31 16:27:23,150.150 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:27:23,400.400 INFO    ] Initializing speech engine...
[2026-08-31 16:27:23,414.414 INFO    ] 2026-08-31 16:27:23
[2026-08-31 16:27:23,677.677 INFO    ] 2026-08-31 16:27:23
[2026-08-31 16:27:23,713.713 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:27:23,894.894 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:27:23,913.913 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:27:24,106.106 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:27:24,148.148 INFO    ] time= 31/08/2026 16:27:24
[2026-08-31 16:27:24,202.202 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:27:24,239.239 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:27:24,367.367 INFO    ] No existing commands found in stream
[2026-08-31 16:27:29,394.394 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:27:29,397.397 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-08-31 16:27:30,761.761 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 16:27:30,764.764 INFO    ] Checking for system updates...
[2026-08-31 16:27:30,800.800 INFO    ] 200
[2026-08-31 16:27:30,803.803 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:27:30,864.864 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:27:30,866.866 INFO    ] No update needed
[2026-08-31 16:27:30,869.869 INFO    ] Checking for camera pi updates...
[2026-08-31 16:27:30,902.902 INFO    ] 200
[2026-08-31 16:27:30,904.904 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:27:30,944.944 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:27:31,025.025 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:27:31,028.028 INFO    ] No camera update needed
[2026-08-31 16:27:31,030.030 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:27:31,032.032 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:27:31,038.038 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:27:31,043.043 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:27:33,088.088 INFO    ] ================================================
[2026-08-31 16:27:33,103.103 INFO    ] Launching Daemon at Mon Aug 31 16:27:33 IST 2026
[2026-08-31 16:27:33,115.115 INFO    ] ================================================
[2026-08-31 16:27:33,683.683 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:27:33
[2026-08-31 16:27:34,266.266 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:27:34,533.533 INFO    ] Initializing speech engine...
[2026-08-31 16:27:34,543.543 INFO    ] 2026-08-31 16:27:34
[2026-08-31 16:27:34,787.787 INFO    ] 2026-08-31 16:27:34
[2026-08-31 16:27:34,825.825 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:27:35,113.113 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:27:35,122.122 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:27:35,277.277 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:27:35,316.316 INFO    ] time= 31/08/2026 16:27:35
[2026-08-31 16:27:35,365.365 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:27:35,420.420 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:27:35,562.562 INFO    ] No existing commands found in stream
[2026-08-31 16:27:40,593.593 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:27:40,595.595 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-08-31 16:27:41,955.955 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 16:27:41,958.958 INFO    ] Checking for system updates...
[2026-08-31 16:27:41,994.994 INFO    ] 200
[2026-08-31 16:27:41,996.996 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:27:42,050.050 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:27:42,053.053 INFO    ] No update needed
[2026-08-31 16:27:42,055.055 INFO    ] Checking for camera pi updates...
[2026-08-31 16:27:42,088.088 INFO    ] 200
[2026-08-31 16:27:42,091.091 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:27:42,137.137 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:27:42,219.219 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:27:42,221.221 INFO    ] No camera update needed
[2026-08-31 16:27:42,223.223 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:27:42,225.225 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:27:42,231.231 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:27:42,235.235 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:27:44,277.277 INFO    ] ================================================
[2026-08-31 16:27:44,292.292 INFO    ] Launching Daemon at Mon Aug 31 16:27:44 IST 2026
[2026-08-31 16:27:44,303.303 INFO    ] ================================================
[2026-08-31 16:27:44,873.873 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:27:44
[2026-08-31 16:27:45,456.456 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:27:45,729.729 INFO    ] Initializing speech engine...
[2026-08-31 16:27:45,738.738 INFO    ] 2026-08-31 16:27:45
[2026-08-31 16:27:45,984.984 INFO    ] 2026-08-31 16:27:45
[2026-08-31 16:27:46,025.025 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:27:46,244.244 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:27:46,293.293 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:27:46,468.468 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:27:46,475.475 INFO    ] time= 31/08/2026 16:27:46
[2026-08-31 16:27:46,525.525 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:27:46,574.574 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:27:46,649.649 INFO    ] No existing commands found in stream
[2026-08-31 16:27:51,660.660 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:27:51,662.662 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-08-31 16:27:55,384.384 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 16:27:55,387.387 INFO    ] Checking for system updates...
[2026-08-31 16:27:55,422.422 INFO    ] 200
[2026-08-31 16:27:55,425.425 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:27:55,476.476 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:27:55,479.479 INFO    ] No update needed
[2026-08-31 16:27:55,481.481 INFO    ] Checking for camera pi updates...
[2026-08-31 16:27:55,514.514 INFO    ] 200
[2026-08-31 16:27:55,516.516 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:27:55,558.558 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:27:55,657.657 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:27:55,660.660 INFO    ] No camera update needed
[2026-08-31 16:27:55,662.662 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:27:55,665.665 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:27:55,671.671 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:27:55,678.678 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:27:57,720.720 INFO    ] ================================================
[2026-08-31 16:27:57,736.736 INFO    ] Launching Daemon at Mon Aug 31 16:27:57 IST 2026
[2026-08-31 16:27:57,747.747 INFO    ] ================================================
[2026-08-31 16:27:58,366.366 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:27:58
[2026-08-31 16:27:58,956.956 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:27:59,211.211 INFO    ] Initializing speech engine...
[2026-08-31 16:27:59,220.220 INFO    ] 2026-08-31 16:27:59
[2026-08-31 16:27:59,520.520 INFO    ] 2026-08-31 16:27:59
[2026-08-31 16:27:59,554.554 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:27:59,752.752 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:27:59,767.767 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:28:00,007.007 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:28:00,026.026 INFO    ] time= 31/08/2026 16:28:00
[2026-08-31 16:28:00,071.071 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:28:00,126.126 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:28:00,285.285 INFO    ] No existing commands found in stream
[2026-08-31 16:28:05,308.308 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:28:05,310.310 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-08-31 16:28:08,495.495 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 16:28:08,498.498 INFO    ] Checking for system updates...
[2026-08-31 16:28:08,537.537 INFO    ] 200
[2026-08-31 16:28:08,540.540 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:28:08,593.593 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:28:08,596.596 INFO    ] No update needed
[2026-08-31 16:28:08,598.598 INFO    ] Checking for camera pi updates...
[2026-08-31 16:28:08,631.631 INFO    ] 200
[2026-08-31 16:28:08,634.634 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:28:08,679.679 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:28:08,753.753 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:28:08,755.755 INFO    ] No camera update needed
[2026-08-31 16:28:08,757.757 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:28:08,760.760 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:28:08,765.765 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:28:08,770.770 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:28:10,810.810 INFO    ] ================================================
[2026-08-31 16:28:10,828.828 INFO    ] Launching Daemon at Mon Aug 31 16:28:10 IST 2026
[2026-08-31 16:28:10,839.839 INFO    ] ================================================
[2026-08-31 16:28:11,481.481 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:28:11
[2026-08-31 16:28:12,148.148 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:28:12,451.451 INFO    ] Initializing speech engine...
[2026-08-31 16:28:12,464.464 INFO    ] 2026-08-31 16:28:12
[2026-08-31 16:28:12,777.777 INFO    ] 2026-08-31 16:28:12
[2026-08-31 16:28:12,860.860 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:28:13,073.073 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:28:13,083.083 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:28:13,286.286 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:28:13,296.296 INFO    ] time= 31/08/2026 16:28:13
[2026-08-31 16:28:13,326.326 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:28:13,334.334 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:28:13,430.430 INFO    ] No existing commands found in stream
[2026-08-31 16:28:18,449.449 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:28:18,452.452 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-08-31 16:28:20,895.895 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 16:28:20,898.898 INFO    ] Checking for system updates...
[2026-08-31 16:28:20,935.935 INFO    ] 200
[2026-08-31 16:28:20,937.937 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:28:20,989.989 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:28:20,992.992 INFO    ] No update needed
[2026-08-31 16:28:20,994.994 INFO    ] Checking for camera pi updates...
[2026-08-31 16:28:21,031.031 INFO    ] 200
[2026-08-31 16:28:21,034.034 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:28:21,073.073 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:28:21,163.163 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:28:21,165.165 INFO    ] No camera update needed
[2026-08-31 16:28:21,167.167 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:28:21,170.170 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:28:21,175.175 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:28:21,180.180 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:28:23,221.221 INFO    ] ================================================
[2026-08-31 16:28:23,236.236 INFO    ] Launching Daemon at Mon Aug 31 16:28:23 IST 2026
[2026-08-31 16:28:23,247.247 INFO    ] ================================================
[2026-08-31 16:28:23,912.912 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:28:23
[2026-08-31 16:28:24,595.595 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:28:24,901.901 INFO    ] Initializing speech engine...
[2026-08-31 16:28:24,909.909 INFO    ] 2026-08-31 16:28:24
[2026-08-31 16:28:25,183.183 INFO    ] 2026-08-31 16:28:25
[2026-08-31 16:28:25,240.240 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:28:25,471.471 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:28:25,494.494 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:28:25,698.698 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:28:25,732.732 INFO    ] time= 31/08/2026 16:28:25
[2026-08-31 16:28:25,739.739 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:28:25,757.757 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:28:25,864.864 INFO    ] No existing commands found in stream
[2026-08-31 16:28:30,895.895 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:28:30,898.898 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-08-31 16:28:33,000.000 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 16:28:33,003.003 INFO    ] Checking for system updates...
[2026-08-31 16:28:33,041.041 INFO    ] 200
[2026-08-31 16:28:33,043.043 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:28:33,097.097 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:28:33,100.100 INFO    ] No update needed
[2026-08-31 16:28:33,103.103 INFO    ] Checking for camera pi updates...
[2026-08-31 16:28:33,137.137 INFO    ] 200
[2026-08-31 16:28:33,140.140 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:28:33,181.181 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:28:33,270.270 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:28:33,272.272 INFO    ] No camera update needed
[2026-08-31 16:28:33,275.275 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:28:33,277.277 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:28:33,282.282 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:28:33,287.287 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:28:35,326.326 INFO    ] ================================================
[2026-08-31 16:28:35,341.341 INFO    ] Launching Daemon at Mon Aug 31 16:28:35 IST 2026
[2026-08-31 16:28:35,352.352 INFO    ] ================================================
[2026-08-31 16:28:35,922.922 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:28:35
[2026-08-31 16:28:36,505.505 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:28:36,764.764 INFO    ] Initializing speech engine...
[2026-08-31 16:28:36,778.778 INFO    ] 2026-08-31 16:28:36
[2026-08-31 16:28:37,066.066 INFO    ] 2026-08-31 16:28:37
[2026-08-31 16:28:37,092.092 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:28:37,304.304 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:28:37,310.310 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:28:37,486.486 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:28:37,496.496 INFO    ] time= 31/08/2026 16:28:37
[2026-08-31 16:28:37,504.504 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:28:37,527.527 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:28:37,660.660 INFO    ] No existing commands found in stream
[2026-08-31 16:28:42,679.679 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:28:42,682.682 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-08-31 16:28:47,172.172 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 16:28:47,174.174 INFO    ] Checking for system updates...
[2026-08-31 16:28:47,211.211 INFO    ] 200
[2026-08-31 16:28:47,213.213 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:28:47,274.274 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:28:47,276.276 INFO    ] No update needed
[2026-08-31 16:28:47,279.279 INFO    ] Checking for camera pi updates...
[2026-08-31 16:28:47,313.313 INFO    ] 200
[2026-08-31 16:28:47,315.315 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:28:47,355.355 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:28:47,531.531 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:28:47,533.533 INFO    ] No camera update needed
[2026-08-31 16:28:47,536.536 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:28:47,538.538 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:28:47,543.543 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:28:47,548.548 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:28:49,588.588 INFO    ] ================================================
[2026-08-31 16:28:49,602.602 INFO    ] Launching Daemon at Mon Aug 31 16:28:49 IST 2026
[2026-08-31 16:28:49,613.613 INFO    ] ================================================
[2026-08-31 16:28:50,199.199 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:28:50
[2026-08-31 16:28:50,800.800 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:28:51,064.064 INFO    ] Initializing speech engine...
[2026-08-31 16:28:51,073.073 INFO    ] 2026-08-31 16:28:51
[2026-08-31 16:28:51,375.375 INFO    ] 2026-08-31 16:28:51
[2026-08-31 16:28:51,413.413 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:28:51,618.618 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:28:51,622.622 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:28:51,763.763 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:28:51,784.784 INFO    ] time= 31/08/2026 16:28:51
[2026-08-31 16:28:51,807.807 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:28:51,815.815 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:28:51,894.894 INFO    ] No existing commands found in stream
[2026-08-31 16:28:56,906.906 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:28:56,909.909 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-08-31 16:28:58,573.573 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 16:28:58,576.576 INFO    ] Checking for system updates...
[2026-08-31 16:28:58,617.617 INFO    ] 200
[2026-08-31 16:28:58,619.619 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:28:58,673.673 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:28:58,676.676 INFO    ] No update needed
[2026-08-31 16:28:58,678.678 INFO    ] Checking for camera pi updates...
[2026-08-31 16:28:58,712.712 INFO    ] 200
[2026-08-31 16:28:58,714.714 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:28:58,760.760 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:28:58,830.830 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:28:58,833.833 INFO    ] No camera update needed
[2026-08-31 16:28:58,835.835 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:28:58,838.838 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:28:58,843.843 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:28:58,848.848 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:29:00,888.888 INFO    ] ================================================
[2026-08-31 16:29:00,903.903 INFO    ] Launching Daemon at Mon Aug 31 16:29:00 IST 2026
[2026-08-31 16:29:00,913.913 INFO    ] ================================================
[2026-08-31 16:29:01,499.499 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:29:01
[2026-08-31 16:29:02,270.270 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:29:02,632.632 INFO    ] Initializing speech engine...
[2026-08-31 16:29:02,642.642 INFO    ] 2026-08-31 16:29:02
[2026-08-31 16:29:02,962.962 INFO    ] 2026-08-31 16:29:02
[2026-08-31 16:29:03,030.030 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:29:03,316.316 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:29:03,346.346 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:29:03,537.537 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:29:03,561.561 INFO    ] time= 31/08/2026 16:29:03
[2026-08-31 16:29:03,587.587 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:29:03,596.596 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:29:03,723.723 INFO    ] No existing commands found in stream
[2026-08-31 16:29:08,749.749 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:29:08,752.752 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-08-31 16:29:13,089.089 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 16:29:13,092.092 INFO    ] Checking for system updates...
[2026-08-31 16:29:13,128.128 INFO    ] 200
[2026-08-31 16:29:13,131.131 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:29:13,189.189 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:29:13,192.192 INFO    ] No update needed
[2026-08-31 16:29:13,194.194 INFO    ] Checking for camera pi updates...
[2026-08-31 16:29:13,228.228 INFO    ] 200
[2026-08-31 16:29:13,230.230 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:29:13,279.279 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:29:13,373.373 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:29:13,375.375 INFO    ] No camera update needed
[2026-08-31 16:29:13,378.378 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:29:13,380.380 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:29:13,385.385 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:29:13,390.390 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:29:15,431.431 INFO    ] ================================================
[2026-08-31 16:29:15,445.445 INFO    ] Launching Daemon at Mon Aug 31 16:29:15 IST 2026
[2026-08-31 16:29:15,456.456 INFO    ] ================================================
[2026-08-31 16:29:16,040.040 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:29:16
[2026-08-31 16:29:16,644.644 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:29:16,907.907 INFO    ] Initializing speech engine...
[2026-08-31 16:29:16,921.921 INFO    ] 2026-08-31 16:29:16
[2026-08-31 16:29:17,213.213 INFO    ] 2026-08-31 16:29:17
[2026-08-31 16:29:17,251.251 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:29:17,486.486 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:29:17,547.547 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:29:17,706.706 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:29:17,718.718 INFO    ] time= 31/08/2026 16:29:17
[2026-08-31 16:29:17,774.774 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:29:17,843.843 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:29:17,916.916 INFO    ] No existing commands found in stream
[2026-08-31 16:29:22,929.929 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:29:22,932.932 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-08-31 16:29:24,021.021 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 16:29:24,023.023 INFO    ] Checking for system updates...
[2026-08-31 16:29:24,063.063 INFO    ] 200
[2026-08-31 16:29:24,066.066 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:29:24,119.119 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:29:24,122.122 INFO    ] No update needed
[2026-08-31 16:29:24,124.124 INFO    ] Checking for camera pi updates...
[2026-08-31 16:29:24,158.158 INFO    ] 200
[2026-08-31 16:29:24,160.160 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:29:24,206.206 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:29:24,287.287 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:29:24,289.289 INFO    ] No camera update needed
[2026-08-31 16:29:24,292.292 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:29:24,294.294 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:29:24,299.299 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:29:24,305.305 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:29:26,344.344 INFO    ] ================================================
[2026-08-31 16:29:26,359.359 INFO    ] Launching Daemon at Mon Aug 31 16:29:26 IST 2026
[2026-08-31 16:29:26,370.370 INFO    ] ================================================
[2026-08-31 16:29:27,023.023 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:29:27
[2026-08-31 16:29:27,648.648 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:29:27,921.921 INFO    ] Initializing speech engine...
[2026-08-31 16:29:27,926.926 INFO    ] 2026-08-31 16:29:27
[2026-08-31 16:29:28,172.172 INFO    ] 2026-08-31 16:29:28
[2026-08-31 16:29:28,206.206 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:29:28,400.400 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:29:28,444.444 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:29:28,600.600 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:29:28,616.616 INFO    ] time= 31/08/2026 16:29:28
[2026-08-31 16:29:28,666.666 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:29:28,715.715 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:29:28,791.791 INFO    ] No existing commands found in stream
[2026-08-31 16:29:33,802.802 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:29:33,804.804 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-08-31 16:29:38,278.278 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 16:29:38,281.281 INFO    ] Checking for system updates...
[2026-08-31 16:29:38,322.322 INFO    ] 200
[2026-08-31 16:29:38,324.324 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:29:38,376.376 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:29:38,379.379 INFO    ] No update needed
[2026-08-31 16:29:38,381.381 INFO    ] Checking for camera pi updates...
[2026-08-31 16:29:38,419.419 INFO    ] 200
[2026-08-31 16:29:38,421.421 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:29:38,461.461 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:29:38,511.511 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:29:38,513.513 INFO    ] No camera update needed
[2026-08-31 16:29:38,515.515 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:29:38,518.518 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:29:38,523.523 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:29:38,528.528 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:29:40,570.570 INFO    ] ================================================
[2026-08-31 16:29:40,585.585 INFO    ] Launching Daemon at Mon Aug 31 16:29:40 IST 2026
[2026-08-31 16:29:40,596.596 INFO    ] ================================================
[2026-08-31 16:29:41,255.255 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:29:41
[2026-08-31 16:29:41,930.930 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:29:42,244.244 INFO    ] Initializing speech engine...
[2026-08-31 16:29:42,251.251 INFO    ] 2026-08-31 16:29:42
[2026-08-31 16:29:42,559.559 INFO    ] 2026-08-31 16:29:42
[2026-08-31 16:29:42,644.644 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:29:42,857.857 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:29:42,862.862 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:29:43,056.056 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:29:43,074.074 INFO    ] time= 31/08/2026 16:29:43
[2026-08-31 16:29:43,085.085 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:29:43,115.115 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:29:43,241.241 INFO    ] No existing commands found in stream
[2026-08-31 16:29:48,277.277 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:29:48,281.281 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-08-31 16:29:50,339.339 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 16:29:50,342.342 INFO    ] Checking for system updates...
[2026-08-31 16:29:50,379.379 INFO    ] 200
[2026-08-31 16:29:50,381.381 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:29:50,442.442 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:29:50,445.445 INFO    ] No update needed
[2026-08-31 16:29:50,448.448 INFO    ] Checking for camera pi updates...
[2026-08-31 16:29:50,486.486 INFO    ] 200
[2026-08-31 16:29:50,490.490 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:29:50,531.531 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:29:50,592.592 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:29:50,595.595 INFO    ] No camera update needed
[2026-08-31 16:29:50,598.598 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:29:50,600.600 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:29:50,607.607 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:29:50,612.612 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:29:52,654.654 INFO    ] ================================================
[2026-08-31 16:29:52,670.670 INFO    ] Launching Daemon at Mon Aug 31 16:29:52 IST 2026
[2026-08-31 16:29:52,681.681 INFO    ] ================================================
[2026-08-31 16:29:53,263.263 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:29:53
[2026-08-31 16:29:53,861.861 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:29:54,138.138 INFO    ] Initializing speech engine...
[2026-08-31 16:29:54,147.147 INFO    ] 2026-08-31 16:29:54
[2026-08-31 16:29:54,406.406 INFO    ] 2026-08-31 16:29:54
[2026-08-31 16:29:54,436.436 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:29:54,601.601 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:29:54,613.613 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:29:54,758.758 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:29:54,767.767 INFO    ] time= 31/08/2026 16:29:54
[2026-08-31 16:29:54,816.816 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:29:54,834.834 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:29:54,959.959 INFO    ] No existing commands found in stream
[2026-08-31 16:29:59,971.971 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:29:59,974.974 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-08-31 16:30:05,814.814 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 16:30:05,817.817 INFO    ] Checking for system updates...
[2026-08-31 16:30:05,862.862 INFO    ] 200
[2026-08-31 16:30:05,864.864 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:30:05,929.929 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:30:05,932.932 INFO    ] No update needed
[2026-08-31 16:30:05,935.935 INFO    ] Checking for camera pi updates...
[2026-08-31 16:30:05,976.976 INFO    ] 200
[2026-08-31 16:30:05,979.979 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:30:06,022.022 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:30:06,103.103 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:30:06,106.106 INFO    ] No camera update needed
[2026-08-31 16:30:06,109.109 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:30:06,112.112 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:30:06,118.118 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:30:06,123.123 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:30:08,165.165 INFO    ] ================================================
[2026-08-31 16:30:08,180.180 INFO    ] Launching Daemon at Mon Aug 31 16:30:08 IST 2026
[2026-08-31 16:30:08,191.191 INFO    ] ================================================
[2026-08-31 16:30:08,772.772 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:30:08
[2026-08-31 16:30:09,433.433 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:30:09,738.738 INFO    ] Initializing speech engine...
[2026-08-31 16:30:09,744.744 INFO    ] 2026-08-31 16:30:09
[2026-08-31 16:30:10,026.026 INFO    ] 2026-08-31 16:30:10
[2026-08-31 16:30:10,082.082 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:30:10,314.314 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:30:10,320.320 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:30:10,537.537 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:30:10,587.587 INFO    ] time= 31/08/2026 16:30:10
[2026-08-31 16:30:10,594.594 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:30:10,613.613 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:30:10,749.749 INFO    ] No existing commands found in stream
[2026-08-31 16:30:15,768.768 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:30:15,772.772 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-08-31 16:30:18,486.486 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 16:30:18,490.490 INFO    ] Checking for system updates...
[2026-08-31 16:30:18,526.526 INFO    ] 200
[2026-08-31 16:30:18,529.529 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:30:18,590.590 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:30:18,593.593 INFO    ] No update needed
[2026-08-31 16:30:18,596.596 INFO    ] Checking for camera pi updates...
[2026-08-31 16:30:18,635.635 INFO    ] 200
[2026-08-31 16:30:18,638.638 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:30:18,684.684 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:30:18,775.775 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:30:18,778.778 INFO    ] No camera update needed
[2026-08-31 16:30:18,781.781 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:30:18,784.784 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:30:18,790.790 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:30:18,796.796 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:30:20,838.838 INFO    ] ================================================
[2026-08-31 16:30:20,854.854 INFO    ] Launching Daemon at Mon Aug 31 16:30:20 IST 2026
[2026-08-31 16:30:20,865.865 INFO    ] ================================================
[2026-08-31 16:30:21,445.445 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:30:21
[2026-08-31 16:30:22,042.042 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:30:22,317.317 INFO    ] Initializing speech engine...
[2026-08-31 16:30:22,325.325 INFO    ] 2026-08-31 16:30:22
[2026-08-31 16:30:22,585.585 INFO    ] 2026-08-31 16:30:22
[2026-08-31 16:30:22,639.639 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:30:22,885.885 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:30:22,892.892 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:30:23,095.095 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:30:23,142.142 INFO    ] time= 31/08/2026 16:30:23
[2026-08-31 16:30:23,148.148 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:30:23,166.166 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:30:23,349.349 INFO    ] No existing commands found in stream
[2026-08-31 16:30:28,385.385 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:30:28,388.388 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-08-31 16:30:29,560.560 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 16:30:29,563.563 INFO    ] Checking for system updates...
[2026-08-31 16:30:29,599.599 INFO    ] 200
[2026-08-31 16:30:29,602.602 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:30:29,663.663 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:30:29,665.665 INFO    ] No update needed
[2026-08-31 16:30:29,668.668 INFO    ] Checking for camera pi updates...
[2026-08-31 16:30:29,705.705 INFO    ] 200
[2026-08-31 16:30:29,707.707 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:30:29,748.748 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:30:29,832.832 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:30:29,835.835 INFO    ] No camera update needed
[2026-08-31 16:30:29,837.837 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:30:29,839.839 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:30:29,845.845 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:30:29,850.850 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:30:31,892.892 INFO    ] ================================================
[2026-08-31 16:30:31,907.907 INFO    ] Launching Daemon at Mon Aug 31 16:30:31 IST 2026
[2026-08-31 16:30:31,918.918 INFO    ] ================================================
[2026-08-31 16:30:32,622.622 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:30:32
[2026-08-31 16:30:33,354.354 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:30:33,659.659 INFO    ] Initializing speech engine...
[2026-08-31 16:30:33,673.673 INFO    ] 2026-08-31 16:30:33
[2026-08-31 16:30:33,983.983 INFO    ] 2026-08-31 16:30:33
[2026-08-31 16:30:34,068.068 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:30:34,278.278 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:30:34,286.286 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:30:34,482.482 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:30:34,489.489 INFO    ] time= 31/08/2026 16:30:34
[2026-08-31 16:30:34,510.510 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:30:34,537.537 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:30:34,643.643 INFO    ] No existing commands found in stream
[2026-08-31 16:30:39,664.664 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:30:39,667.667 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-08-31 16:30:40,960.960 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 16:30:40,964.964 INFO    ] Checking for system updates...
[2026-08-31 16:30:41,003.003 INFO    ] 200
[2026-08-31 16:30:41,005.005 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:30:41,063.063 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:30:41,066.066 INFO    ] No update needed
[2026-08-31 16:30:41,069.069 INFO    ] Checking for camera pi updates...
[2026-08-31 16:30:41,104.104 INFO    ] 200
[2026-08-31 16:30:41,107.107 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:30:41,158.158 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:30:41,238.238 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:30:41,241.241 INFO    ] No camera update needed
[2026-08-31 16:30:41,243.243 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:30:41,246.246 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:30:41,252.252 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:30:41,258.258 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:30:43,300.300 INFO    ] ================================================
[2026-08-31 16:30:43,316.316 INFO    ] Launching Daemon at Mon Aug 31 16:30:43 IST 2026
[2026-08-31 16:30:43,328.328 INFO    ] ================================================
[2026-08-31 16:30:43,929.929 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:30:43
[2026-08-31 16:30:44,554.554 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:30:44,840.840 INFO    ] Initializing speech engine...
[2026-08-31 16:30:44,850.850 INFO    ] 2026-08-31 16:30:44
[2026-08-31 16:30:45,112.112 INFO    ] 2026-08-31 16:30:45
[2026-08-31 16:30:45,149.149 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:30:45,333.333 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:30:45,339.339 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:30:45,495.495 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:30:45,505.505 INFO    ] time= 31/08/2026 16:30:45
[2026-08-31 16:30:45,513.513 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:30:45,577.577 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:30:45,695.695 INFO    ] No existing commands found in stream
[2026-08-31 16:30:50,719.719 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:30:50,723.723 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-08-31 16:30:53,458.458 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 16:30:53,461.461 INFO    ] Checking for system updates...
[2026-08-31 16:30:53,499.499 INFO    ] 200
[2026-08-31 16:30:53,501.501 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:30:53,558.558 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:30:53,560.560 INFO    ] No update needed
[2026-08-31 16:30:53,563.563 INFO    ] Checking for camera pi updates...
[2026-08-31 16:30:53,601.601 INFO    ] 200
[2026-08-31 16:30:53,604.604 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:30:53,664.664 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:30:53,844.844 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:30:53,854.854 INFO    ] No camera update needed
[2026-08-31 16:30:53,856.856 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:30:53,859.859 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:30:53,865.865 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:30:53,871.871 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:30:55,914.914 INFO    ] ================================================
[2026-08-31 16:30:55,929.929 INFO    ] Launching Daemon at Mon Aug 31 16:30:55 IST 2026
[2026-08-31 16:30:55,940.940 INFO    ] ================================================
[2026-08-31 16:30:56,579.579 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:30:56
[2026-08-31 16:30:57,238.238 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:30:57,539.539 INFO    ] Initializing speech engine...
[2026-08-31 16:30:57,551.551 INFO    ] 2026-08-31 16:30:57
[2026-08-31 16:30:57,828.828 INFO    ] 2026-08-31 16:30:57
[2026-08-31 16:30:57,871.871 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:30:58,097.097 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:30:58,104.104 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:30:58,238.238 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:30:58,309.309 INFO    ] time= 31/08/2026 16:30:58
[2026-08-31 16:30:58,366.366 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:30:58,373.373 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:30:58,543.543 INFO    ] No existing commands found in stream
[2026-08-31 16:31:03,574.574 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:31:03,577.577 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-08-31 16:31:06,378.378 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 16:31:06,381.381 INFO    ] Checking for system updates...
[2026-08-31 16:31:06,431.431 INFO    ] 200
[2026-08-31 16:31:06,433.433 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:31:06,485.485 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:31:06,488.488 INFO    ] No update needed
[2026-08-31 16:31:06,490.490 INFO    ] Checking for camera pi updates...
[2026-08-31 16:31:06,524.524 INFO    ] 200
[2026-08-31 16:31:06,526.526 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:31:06,576.576 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:31:06,663.663 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:31:06,665.665 INFO    ] No camera update needed
[2026-08-31 16:31:06,668.668 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:31:06,670.670 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:31:06,675.675 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:31:06,680.680 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:31:08,721.721 INFO    ] ================================================
[2026-08-31 16:31:08,736.736 INFO    ] Launching Daemon at Mon Aug 31 16:31:08 IST 2026
[2026-08-31 16:31:08,746.746 INFO    ] ================================================
[2026-08-31 16:31:09,355.355 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:31:09
[2026-08-31 16:31:09,954.954 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:31:10,232.232 INFO    ] Initializing speech engine...
[2026-08-31 16:31:10,238.238 INFO    ] 2026-08-31 16:31:10
[2026-08-31 16:31:10,511.511 INFO    ] 2026-08-31 16:31:10
[2026-08-31 16:31:10,570.570 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:31:10,798.798 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:31:10,804.804 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:31:11,028.028 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:31:11,064.064 INFO    ] time= 31/08/2026 16:31:11
[2026-08-31 16:31:11,082.082 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:31:11,092.092 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:31:11,223.223 INFO    ] No existing commands found in stream
[2026-08-31 16:31:16,258.258 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:31:16,261.261 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-08-31 16:31:17,846.846 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 16:31:17,850.850 INFO    ] Checking for system updates...
[2026-08-31 16:31:17,888.888 INFO    ] 200
[2026-08-31 16:31:17,890.890 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:31:17,942.942 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:31:17,945.945 INFO    ] No update needed
[2026-08-31 16:31:17,947.947 INFO    ] Checking for camera pi updates...
[2026-08-31 16:31:17,982.982 INFO    ] 200
[2026-08-31 16:31:17,984.984 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:31:18,024.024 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:31:18,128.128 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:31:18,130.130 INFO    ] No camera update needed
[2026-08-31 16:31:18,132.132 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:31:18,135.135 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:31:18,140.140 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:31:18,145.145 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:31:20,185.185 INFO    ] ================================================
[2026-08-31 16:31:20,201.201 INFO    ] Launching Daemon at Mon Aug 31 16:31:20 IST 2026
[2026-08-31 16:31:20,211.211 INFO    ] ================================================
[2026-08-31 16:31:20,796.796 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:31:20
[2026-08-31 16:31:21,399.399 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:31:21,682.682 INFO    ] Initializing speech engine...
[2026-08-31 16:31:21,689.689 INFO    ] 2026-08-31 16:31:21
[2026-08-31 16:31:21,951.951 INFO    ] 2026-08-31 16:31:21
[2026-08-31 16:31:22,002.002 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:31:22,232.232 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:31:22,237.237 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:31:22,370.370 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:31:22,425.425 INFO    ] time= 31/08/2026 16:31:22
[2026-08-31 16:31:22,500.500 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:31:22,506.506 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:31:22,653.653 INFO    ] No existing commands found in stream
[2026-08-31 16:31:27,668.668 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:31:27,671.671 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-08-31 16:31:30,614.614 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 16:31:30,617.617 INFO    ] Checking for system updates...
[2026-08-31 16:31:30,654.654 INFO    ] 200
[2026-08-31 16:31:30,656.656 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:31:30,709.709 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:31:30,711.711 INFO    ] No update needed
[2026-08-31 16:31:30,714.714 INFO    ] Checking for camera pi updates...
[2026-08-31 16:31:30,752.752 INFO    ] 200
[2026-08-31 16:31:30,755.755 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:31:30,802.802 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:31:30,884.884 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:31:30,887.887 INFO    ] No camera update needed
[2026-08-31 16:31:30,889.889 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:31:30,892.892 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:31:30,897.897 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:31:30,902.902 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:31:32,942.942 INFO    ] ================================================
[2026-08-31 16:31:32,958.958 INFO    ] Launching Daemon at Mon Aug 31 16:31:32 IST 2026
[2026-08-31 16:31:32,968.968 INFO    ] ================================================
[2026-08-31 16:31:33,538.538 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:31:33
[2026-08-31 16:31:34,120.120 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:31:34,367.367 INFO    ] Initializing speech engine...
[2026-08-31 16:31:34,381.381 INFO    ] 2026-08-31 16:31:34
[2026-08-31 16:31:34,648.648 INFO    ] 2026-08-31 16:31:34
[2026-08-31 16:31:34,683.683 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:31:34,940.940 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:31:34,949.949 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:31:35,165.165 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:31:35,212.212 INFO    ] time= 31/08/2026 16:31:35
[2026-08-31 16:31:35,218.218 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:31:35,236.236 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:31:35,363.363 INFO    ] No existing commands found in stream
[2026-08-31 16:31:40,380.380 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:31:40,382.382 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-08-31 16:31:42,852.852 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 16:31:42,855.855 INFO    ] Checking for system updates...
[2026-08-31 16:31:42,896.896 INFO    ] 200
[2026-08-31 16:31:42,899.899 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:31:42,960.960 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:31:42,962.962 INFO    ] No update needed
[2026-08-31 16:31:42,965.965 INFO    ] Checking for camera pi updates...
[2026-08-31 16:31:42,998.998 INFO    ] 200
[2026-08-31 16:31:43,001.001 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:31:43,042.042 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:31:43,140.140 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:31:43,142.142 INFO    ] No camera update needed
[2026-08-31 16:31:43,144.144 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:31:43,147.147 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:31:43,152.152 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:31:43,157.157 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:31:45,197.197 INFO    ] ================================================
[2026-08-31 16:31:45,212.212 INFO    ] Launching Daemon at Mon Aug 31 16:31:45 IST 2026
[2026-08-31 16:31:45,223.223 INFO    ] ================================================
[2026-08-31 16:31:45,802.802 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:31:45
[2026-08-31 16:31:46,401.401 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:31:46,676.676 INFO    ] Initializing speech engine...
[2026-08-31 16:31:46,686.686 INFO    ] 2026-08-31 16:31:46
[2026-08-31 16:31:46,934.934 INFO    ] 2026-08-31 16:31:46
[2026-08-31 16:31:47,000.000 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:31:47,222.222 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:31:47,232.232 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:31:47,468.468 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:31:47,492.492 INFO    ] time= 31/08/2026 16:31:47
[2026-08-31 16:31:47,510.510 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:31:47,527.527 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:31:47,646.646 INFO    ] No existing commands found in stream
[2026-08-31 16:31:52,665.665 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:31:52,668.668 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-08-31 16:31:55,095.095 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 16:31:55,098.098 INFO    ] Checking for system updates...
[2026-08-31 16:31:55,139.139 INFO    ] 200
[2026-08-31 16:31:55,141.141 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:31:55,201.201 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:31:55,204.204 INFO    ] No update needed
[2026-08-31 16:31:55,206.206 INFO    ] Checking for camera pi updates...
[2026-08-31 16:31:55,240.240 INFO    ] 200
[2026-08-31 16:31:55,242.242 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:31:55,283.283 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:31:55,370.370 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:31:55,373.373 INFO    ] No camera update needed
[2026-08-31 16:31:55,375.375 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:31:55,377.377 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:31:55,383.383 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:31:55,388.388 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:31:57,430.430 INFO    ] ================================================
[2026-08-31 16:31:57,445.445 INFO    ] Launching Daemon at Mon Aug 31 16:31:57 IST 2026
[2026-08-31 16:31:57,456.456 INFO    ] ================================================
[2026-08-31 16:31:58,116.116 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:31:58
[2026-08-31 16:31:58,804.804 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:31:59,113.113 INFO    ] Initializing speech engine...
[2026-08-31 16:31:59,121.121 INFO    ] 2026-08-31 16:31:59
[2026-08-31 16:31:59,400.400 INFO    ] 2026-08-31 16:31:59
[2026-08-31 16:31:59,459.459 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:31:59,716.716 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:31:59,726.726 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:31:59,884.884 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:31:59,933.933 INFO    ] time= 31/08/2026 16:31:59
[2026-08-31 16:31:59,992.992 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:32:00,039.039 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:32:00,140.140 INFO    ] No existing commands found in stream
[2026-08-31 16:32:05,172.172 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:32:05,175.175 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-08-31 16:32:06,464.464 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 16:32:06,467.467 INFO    ] Checking for system updates...
[2026-08-31 16:32:06,503.503 INFO    ] 200
[2026-08-31 16:32:06,506.506 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:32:06,564.564 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:32:06,566.566 INFO    ] No update needed
[2026-08-31 16:32:06,569.569 INFO    ] Checking for camera pi updates...
[2026-08-31 16:32:06,606.606 INFO    ] 200
[2026-08-31 16:32:06,608.608 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:32:06,652.652 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:32:06,733.733 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:32:06,735.735 INFO    ] No camera update needed
[2026-08-31 16:32:06,738.738 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:32:06,740.740 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:32:06,745.745 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:32:06,750.750 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:32:08,791.791 INFO    ] ================================================
[2026-08-31 16:32:08,806.806 INFO    ] Launching Daemon at Mon Aug 31 16:32:08 IST 2026
[2026-08-31 16:32:08,817.817 INFO    ] ================================================
[2026-08-31 16:32:09,386.386 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:32:09
[2026-08-31 16:32:09,972.972 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:32:10,232.232 INFO    ] Initializing speech engine...
[2026-08-31 16:32:10,251.251 INFO    ] 2026-08-31 16:32:10
[2026-08-31 16:32:10,501.501 INFO    ] 2026-08-31 16:32:10
[2026-08-31 16:32:10,536.536 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:32:10,738.738 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:32:10,797.797 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:32:10,938.938 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:32:10,980.980 INFO    ] time= 31/08/2026 16:32:10
[2026-08-31 16:32:11,034.034 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:32:11,075.075 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:32:11,195.195 INFO    ] No existing commands found in stream
[2026-08-31 16:32:16,220.220 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:32:16,223.223 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-08-31 16:32:18,774.774 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 16:32:18,777.777 INFO    ] Checking for system updates...
[2026-08-31 16:32:18,815.815 INFO    ] 200
[2026-08-31 16:32:18,818.818 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:32:18,869.869 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:32:18,872.872 INFO    ] No update needed
[2026-08-31 16:32:18,874.874 INFO    ] Checking for camera pi updates...
[2026-08-31 16:32:18,909.909 INFO    ] 200
[2026-08-31 16:32:18,911.911 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:32:18,958.958 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:32:19,060.060 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:32:19,063.063 INFO    ] No camera update needed
[2026-08-31 16:32:19,065.065 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:32:19,067.067 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:32:19,073.073 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:32:19,078.078 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:32:21,120.120 INFO    ] ================================================
[2026-08-31 16:32:21,138.138 INFO    ] Launching Daemon at Mon Aug 31 16:32:21 IST 2026
[2026-08-31 16:32:21,150.150 INFO    ] ================================================
[2026-08-31 16:32:21,755.755 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:32:21
[2026-08-31 16:32:22,442.442 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:32:22,745.745 INFO    ] Initializing speech engine...
[2026-08-31 16:32:22,758.758 INFO    ] 2026-08-31 16:32:22
[2026-08-31 16:32:23,034.034 INFO    ] 2026-08-31 16:32:23
[2026-08-31 16:32:23,080.080 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:32:23,935.935 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:32:23,977.977 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:32:24,168.168 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:32:24,172.172 INFO    ] time= 31/08/2026 16:32:24
[2026-08-31 16:32:24,221.221 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:32:24,228.228 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:32:24,324.324 INFO    ] No existing commands found in stream
[2026-08-31 16:32:29,334.334 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:32:29,337.337 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-08-31 16:32:32,388.388 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 16:32:32,392.392 INFO    ] Checking for system updates...
[2026-08-31 16:32:32,432.432 INFO    ] 200
[2026-08-31 16:32:32,435.435 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:32:32,493.493 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:32:32,496.496 INFO    ] No update needed
[2026-08-31 16:32:32,499.499 INFO    ] Checking for camera pi updates...
[2026-08-31 16:32:32,540.540 INFO    ] 200
[2026-08-31 16:32:32,543.543 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:32:32,598.598 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:32:32,659.659 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:32:32,662.662 INFO    ] No camera update needed
[2026-08-31 16:32:32,665.665 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:32:32,668.668 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:32:32,675.675 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:32:32,681.681 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:32:34,722.722 INFO    ] ================================================
[2026-08-31 16:32:34,737.737 INFO    ] Launching Daemon at Mon Aug 31 16:32:34 IST 2026
[2026-08-31 16:32:34,748.748 INFO    ] ================================================
[2026-08-31 16:32:35,319.319 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:32:35
[2026-08-31 16:32:35,902.902 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:32:36,174.174 INFO    ] Initializing speech engine...
[2026-08-31 16:32:36,183.183 INFO    ] 2026-08-31 16:32:36
[2026-08-31 16:32:36,433.433 INFO    ] 2026-08-31 16:32:36
[2026-08-31 16:32:36,468.468 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:32:36,740.740 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:32:36,752.752 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:32:36,984.984 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:32:37,018.018 INFO    ] time= 31/08/2026 16:32:36
[2026-08-31 16:32:37,039.039 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:32:37,046.046 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:32:37,155.155 INFO    ] No existing commands found in stream
[2026-08-31 16:32:42,172.172 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:32:42,175.175 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-08-31 16:32:44,570.570 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 16:32:44,572.572 INFO    ] Checking for system updates...
[2026-08-31 16:32:44,611.611 INFO    ] 200
[2026-08-31 16:32:44,614.614 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:32:44,672.672 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:32:44,674.674 INFO    ] No update needed
[2026-08-31 16:32:44,677.677 INFO    ] Checking for camera pi updates...
[2026-08-31 16:32:44,713.713 INFO    ] 200
[2026-08-31 16:32:44,715.715 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:32:44,760.760 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:32:44,844.844 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:32:44,846.846 INFO    ] No camera update needed
[2026-08-31 16:32:44,848.848 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:32:44,851.851 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:32:44,856.856 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:32:44,861.861 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:32:46,904.904 INFO    ] ================================================
[2026-08-31 16:32:46,919.919 INFO    ] Launching Daemon at Mon Aug 31 16:32:46 IST 2026
[2026-08-31 16:32:46,929.929 INFO    ] ================================================
[2026-08-31 16:32:47,509.509 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:32:47
[2026-08-31 16:32:48,106.106 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:32:48,380.380 INFO    ] Initializing speech engine...
[2026-08-31 16:32:48,396.396 INFO    ] 2026-08-31 16:32:48
[2026-08-31 16:32:48,667.667 INFO    ] 2026-08-31 16:32:48
[2026-08-31 16:32:48,705.705 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:32:48,931.931 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:32:48,960.960 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:32:49,153.153 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:32:49,159.159 INFO    ] time= 31/08/2026 16:32:49
[2026-08-31 16:32:49,204.204 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:32:49,258.258 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:32:49,358.358 INFO    ] No existing commands found in stream
[2026-08-31 16:32:54,370.370 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:32:54,373.373 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-08-31 16:32:55,799.799 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 16:32:55,801.801 INFO    ] Checking for system updates...
[2026-08-31 16:32:55,841.841 INFO    ] 200
[2026-08-31 16:32:55,843.843 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:32:55,901.901 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:32:55,903.903 INFO    ] No update needed
[2026-08-31 16:32:55,906.906 INFO    ] Checking for camera pi updates...
[2026-08-31 16:32:55,939.939 INFO    ] 200
[2026-08-31 16:32:55,942.942 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:32:55,982.982 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:32:56,175.175 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:32:56,178.178 INFO    ] No camera update needed
[2026-08-31 16:32:56,180.180 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:32:56,182.182 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:32:56,188.188 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:32:56,193.193 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:32:58,233.233 INFO    ] ================================================
[2026-08-31 16:32:58,248.248 INFO    ] Launching Daemon at Mon Aug 31 16:32:58 IST 2026
[2026-08-31 16:32:58,259.259 INFO    ] ================================================
[2026-08-31 16:32:58,843.843 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:32:58
[2026-08-31 16:32:59,442.442 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:32:59,715.715 INFO    ] Initializing speech engine...
[2026-08-31 16:32:59,724.724 INFO    ] 2026-08-31 16:32:59
[2026-08-31 16:32:59,984.984 INFO    ] 2026-08-31 16:32:59
[2026-08-31 16:33:00,043.043 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:33:00,266.266 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:33:00,275.275 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:33:00,490.490 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:33:00,531.531 INFO    ] time= 31/08/2026 16:33:00
[2026-08-31 16:33:00,538.538 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:33:00,558.558 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:33:00,684.684 INFO    ] No existing commands found in stream
[2026-08-31 16:33:05,697.697 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:33:05,700.700 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-08-31 16:33:07,757.757 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 16:33:07,760.760 INFO    ] Checking for system updates...
[2026-08-31 16:33:07,795.795 INFO    ] 200
[2026-08-31 16:33:07,798.798 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:33:07,851.851 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:33:07,853.853 INFO    ] No update needed
[2026-08-31 16:33:07,856.856 INFO    ] Checking for camera pi updates...
[2026-08-31 16:33:07,892.892 INFO    ] 200
[2026-08-31 16:33:07,895.895 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:33:07,938.938 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:33:08,028.028 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:33:08,031.031 INFO    ] No camera update needed
[2026-08-31 16:33:08,033.033 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:33:08,036.036 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:33:08,041.041 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:33:08,046.046 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:33:10,086.086 INFO    ] ================================================
[2026-08-31 16:33:10,101.101 INFO    ] Launching Daemon at Mon Aug 31 16:33:10 IST 2026
[2026-08-31 16:33:10,111.111 INFO    ] ================================================
[2026-08-31 16:33:10,678.678 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:33:10
[2026-08-31 16:33:11,264.264 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:33:11,531.531 INFO    ] Initializing speech engine...
[2026-08-31 16:33:11,540.540 INFO    ] 2026-08-31 16:33:11
[2026-08-31 16:33:11,787.787 INFO    ] 2026-08-31 16:33:11
[2026-08-31 16:33:11,823.823 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:33:12,082.082 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:33:12,091.091 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:33:12,330.330 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:33:12,351.351 INFO    ] time= 31/08/2026 16:33:12
[2026-08-31 16:33:12,368.368 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:33:12,375.375 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:33:12,489.489 INFO    ] No existing commands found in stream
[2026-08-31 16:33:17,513.513 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:33:17,516.516 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-08-31 16:33:18,242.242 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 16:33:18,245.245 INFO    ] Checking for system updates...
[2026-08-31 16:33:18,283.283 INFO    ] 200
[2026-08-31 16:33:18,286.286 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:33:18,342.342 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:33:18,345.345 INFO    ] No update needed
[2026-08-31 16:33:18,347.347 INFO    ] Checking for camera pi updates...
[2026-08-31 16:33:18,380.380 INFO    ] 200
[2026-08-31 16:33:18,383.383 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:33:18,424.424 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:33:18,499.499 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:33:18,502.502 INFO    ] No camera update needed
[2026-08-31 16:33:18,504.504 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:33:18,506.506 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:33:18,512.512 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:33:18,517.517 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:33:20,556.556 INFO    ] ================================================
[2026-08-31 16:33:20,572.572 INFO    ] Launching Daemon at Mon Aug 31 16:33:20 IST 2026
[2026-08-31 16:33:20,583.583 INFO    ] ================================================
[2026-08-31 16:33:21,148.148 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:33:21
[2026-08-31 16:33:21,730.730 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:33:21,989.989 INFO    ] Initializing speech engine...
[2026-08-31 16:33:22,008.008 INFO    ] 2026-08-31 16:33:22
[2026-08-31 16:33:22,263.263 INFO    ] 2026-08-31 16:33:22
[2026-08-31 16:33:22,333.333 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:33:22,565.565 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:33:22,571.571 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:33:22,800.800 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:33:22,835.835 INFO    ] time= 31/08/2026 16:33:22
[2026-08-31 16:33:22,853.853 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:33:22,864.864 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:33:22,996.996 INFO    ] No existing commands found in stream
[2026-08-31 16:33:28,011.011 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:33:28,014.014 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-08-31 16:33:30,890.890 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 16:33:30,893.893 INFO    ] Checking for system updates...
[2026-08-31 16:33:30,932.932 INFO    ] 200
[2026-08-31 16:33:30,935.935 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:33:30,992.992 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:33:30,994.994 INFO    ] No update needed
[2026-08-31 16:33:30,997.997 INFO    ] Checking for camera pi updates...
[2026-08-31 16:33:31,031.031 INFO    ] 200
[2026-08-31 16:33:31,034.034 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:33:31,075.075 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:33:31,163.163 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:33:31,166.166 INFO    ] No camera update needed
[2026-08-31 16:33:31,168.168 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:33:31,171.171 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:33:31,177.177 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:33:31,182.182 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:33:33,226.226 INFO    ] ================================================
[2026-08-31 16:33:33,242.242 INFO    ] Launching Daemon at Mon Aug 31 16:33:33 IST 2026
[2026-08-31 16:33:33,252.252 INFO    ] ================================================
[2026-08-31 16:33:33,834.834 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:33:33
[2026-08-31 16:33:34,432.432 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:33:34,706.706 INFO    ] Initializing speech engine...
[2026-08-31 16:33:34,714.714 INFO    ] 2026-08-31 16:33:34
[2026-08-31 16:33:34,975.975 INFO    ] 2026-08-31 16:33:34
[2026-08-31 16:33:35,005.005 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:33:35,254.254 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:33:35,258.258 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:33:35,484.484 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:33:35,517.517 INFO    ] time= 31/08/2026 16:33:35
[2026-08-31 16:33:35,535.535 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:33:35,545.545 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:33:35,719.719 INFO    ] No existing commands found in stream
[2026-08-31 16:33:40,750.750 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:33:40,753.753 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-08-31 16:33:43,054.054 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 16:33:43,056.056 INFO    ] Checking for system updates...
[2026-08-31 16:33:43,096.096 INFO    ] 200
[2026-08-31 16:33:43,098.098 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:33:43,151.151 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:33:43,154.154 INFO    ] No update needed
[2026-08-31 16:33:43,156.156 INFO    ] Checking for camera pi updates...
[2026-08-31 16:33:43,190.190 INFO    ] 200
[2026-08-31 16:33:43,192.192 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:33:43,236.236 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:33:43,310.310 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:33:43,313.313 INFO    ] No camera update needed
[2026-08-31 16:33:43,315.315 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:33:43,318.318 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:33:43,323.323 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:33:43,328.328 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:33:45,369.369 INFO    ] ================================================
[2026-08-31 16:33:45,384.384 INFO    ] Launching Daemon at Mon Aug 31 16:33:45 IST 2026
[2026-08-31 16:33:45,395.395 INFO    ] ================================================
[2026-08-31 16:33:45,977.977 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:33:45
[2026-08-31 16:33:46,575.575 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:33:46,851.851 INFO    ] Initializing speech engine...
[2026-08-31 16:33:46,858.858 INFO    ] 2026-08-31 16:33:46
[2026-08-31 16:33:47,105.105 INFO    ] 2026-08-31 16:33:47
[2026-08-31 16:33:47,140.140 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:33:47,397.397 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:33:47,402.402 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:33:47,620.620 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:33:47,657.657 INFO    ] time= 31/08/2026 16:33:47
[2026-08-31 16:33:47,663.663 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:33:47,681.681 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:33:47,800.800 INFO    ] No existing commands found in stream
[2026-08-31 16:33:52,819.819 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:33:52,822.822 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-08-31 16:33:56,765.765 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 16:33:56,768.768 INFO    ] Checking for system updates...
[2026-08-31 16:33:56,806.806 INFO    ] 200
[2026-08-31 16:33:56,809.809 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:33:56,866.866 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:33:56,868.868 INFO    ] No update needed
[2026-08-31 16:33:56,871.871 INFO    ] Checking for camera pi updates...
[2026-08-31 16:33:56,907.907 INFO    ] 200
[2026-08-31 16:33:56,910.910 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:33:56,954.954 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:33:57,022.022 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:33:57,024.024 INFO    ] No camera update needed
[2026-08-31 16:33:57,026.026 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:33:57,029.029 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:33:57,034.034 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:33:57,040.040 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:33:59,082.082 INFO    ] ================================================
[2026-08-31 16:33:59,097.097 INFO    ] Launching Daemon at Mon Aug 31 16:33:59 IST 2026
[2026-08-31 16:33:59,108.108 INFO    ] ================================================
[2026-08-31 16:33:59,745.745 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:33:59
[2026-08-31 16:34:00,396.396 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:34:00,693.693 INFO    ] Initializing speech engine...
[2026-08-31 16:34:00,701.701 INFO    ] 2026-08-31 16:34:00
[2026-08-31 16:34:00,988.988 INFO    ] 2026-08-31 16:34:00
[2026-08-31 16:34:01,034.034 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:34:01,285.285 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:34:01,294.294 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:34:01,499.499 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:34:01,534.534 INFO    ] time= 31/08/2026 16:34:01
[2026-08-31 16:34:01,568.568 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:34:01,616.616 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:34:01,735.735 INFO    ] No existing commands found in stream
[2026-08-31 16:34:06,745.745 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:34:06,748.748 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-08-31 16:34:08,818.818 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 16:34:08,820.820 INFO    ] Checking for system updates...
[2026-08-31 16:34:08,856.856 INFO    ] 200
[2026-08-31 16:34:08,859.859 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:34:08,910.910 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:34:08,913.913 INFO    ] No update needed
[2026-08-31 16:34:08,915.915 INFO    ] Checking for camera pi updates...
[2026-08-31 16:34:08,948.948 INFO    ] 200
[2026-08-31 16:34:08,951.951 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:34:08,991.991 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:34:09,071.071 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:34:09,073.073 INFO    ] No camera update needed
[2026-08-31 16:34:09,076.076 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:34:09,078.078 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:34:09,083.083 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:34:09,088.088 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:34:11,129.129 INFO    ] ================================================
[2026-08-31 16:34:11,144.144 INFO    ] Launching Daemon at Mon Aug 31 16:34:11 IST 2026
[2026-08-31 16:34:11,155.155 INFO    ] ================================================
[2026-08-31 16:34:11,720.720 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:34:11
[2026-08-31 16:34:12,304.304 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:34:12,574.574 INFO    ] Initializing speech engine...
[2026-08-31 16:34:12,583.583 INFO    ] 2026-08-31 16:34:12
[2026-08-31 16:34:12,834.834 INFO    ] 2026-08-31 16:34:12
[2026-08-31 16:34:12,870.870 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:34:13,046.046 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:34:13,058.058 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:34:13,271.271 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:34:13,298.298 INFO    ] time= 31/08/2026 16:34:13
[2026-08-31 16:34:13,367.367 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:34:13,408.408 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:34:13,549.549 INFO    ] No existing commands found in stream
[2026-08-31 16:34:18,569.569 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:34:18,571.571 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-08-31 16:34:20,858.858 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 16:34:20,861.861 INFO    ] Checking for system updates...
[2026-08-31 16:34:20,897.897 INFO    ] 200
[2026-08-31 16:34:20,900.900 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:34:20,952.952 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:34:20,955.955 INFO    ] No update needed
[2026-08-31 16:34:20,958.958 INFO    ] Checking for camera pi updates...
[2026-08-31 16:34:20,994.994 INFO    ] 200
[2026-08-31 16:34:20,997.997 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:34:21,041.041 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:34:21,130.130 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:34:21,132.132 INFO    ] No camera update needed
[2026-08-31 16:34:21,135.135 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:34:21,137.137 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:34:21,143.143 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:34:21,149.149 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:34:23,189.189 INFO    ] ================================================
[2026-08-31 16:34:23,204.204 INFO    ] Launching Daemon at Mon Aug 31 16:34:23 IST 2026
[2026-08-31 16:34:23,215.215 INFO    ] ================================================
[2026-08-31 16:34:23,799.799 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:34:23
[2026-08-31 16:34:24,448.448 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:34:24,744.744 INFO    ] Initializing speech engine...
[2026-08-31 16:34:24,752.752 INFO    ] 2026-08-31 16:34:24
[2026-08-31 16:34:25,019.019 INFO    ] 2026-08-31 16:34:25
[2026-08-31 16:34:25,074.074 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:34:25,323.323 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:34:25,331.331 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:34:25,540.540 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:34:25,570.570 INFO    ] time= 31/08/2026 16:34:25
[2026-08-31 16:34:25,586.586 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:34:25,595.595 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:34:25,718.718 INFO    ] No existing commands found in stream
[2026-08-31 16:34:30,736.736 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:34:30,740.740 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-08-31 16:34:34,521.521 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 16:34:34,524.524 INFO    ] Checking for system updates...
[2026-08-31 16:34:34,564.564 INFO    ] 200
[2026-08-31 16:34:34,566.566 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:34:34,626.626 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:34:34,630.630 INFO    ] No update needed
[2026-08-31 16:34:34,633.633 INFO    ] Checking for camera pi updates...
[2026-08-31 16:34:34,670.670 INFO    ] 200
[2026-08-31 16:34:34,673.673 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:34:34,722.722 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:34:34,815.815 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:34:34,818.818 INFO    ] No camera update needed
[2026-08-31 16:34:34,821.821 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:34:34,823.823 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:34:34,829.829 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:34:34,835.835 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:34:36,876.876 INFO    ] ================================================
[2026-08-31 16:34:36,891.891 INFO    ] Launching Daemon at Mon Aug 31 16:34:36 IST 2026
[2026-08-31 16:34:36,902.902 INFO    ] ================================================
[2026-08-31 16:34:37,533.533 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:34:37
[2026-08-31 16:34:38,118.118 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:34:38,392.392 INFO    ] Initializing speech engine...
[2026-08-31 16:34:38,401.401 INFO    ] 2026-08-31 16:34:38
[2026-08-31 16:34:38,665.665 INFO    ] 2026-08-31 16:34:38
[2026-08-31 16:34:38,719.719 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:34:38,945.945 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:34:38,951.951 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:34:39,336.336 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:34:39,363.363 INFO    ] time= 31/08/2026 16:34:39
[2026-08-31 16:34:39,426.426 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:34:39,469.469 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:34:39,621.621 INFO    ] No existing commands found in stream
[2026-08-31 16:34:44,652.652 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:34:44,655.655 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-08-31 16:34:46,208.208 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 16:34:46,210.210 INFO    ] Checking for system updates...
[2026-08-31 16:34:46,249.249 INFO    ] 200
[2026-08-31 16:34:46,251.251 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:34:46,303.303 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:34:46,306.306 INFO    ] No update needed
[2026-08-31 16:34:46,308.308 INFO    ] Checking for camera pi updates...
[2026-08-31 16:34:46,342.342 INFO    ] 200
[2026-08-31 16:34:46,344.344 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:34:46,385.385 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:34:46,450.450 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:34:46,452.452 INFO    ] No camera update needed
[2026-08-31 16:34:46,455.455 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:34:46,458.458 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:34:46,464.464 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:34:46,470.470 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:34:48,511.511 INFO    ] ================================================
[2026-08-31 16:34:48,527.527 INFO    ] Launching Daemon at Mon Aug 31 16:34:48 IST 2026
[2026-08-31 16:34:48,538.538 INFO    ] ================================================
[2026-08-31 16:34:49,169.169 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:34:49
[2026-08-31 16:34:49,769.769 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:34:50,040.040 INFO    ] Initializing speech engine...
[2026-08-31 16:34:50,048.048 INFO    ] 2026-08-31 16:34:50
[2026-08-31 16:34:50,297.297 INFO    ] 2026-08-31 16:34:50
[2026-08-31 16:34:50,331.331 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:34:50,524.524 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:34:50,529.529 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:34:50,698.698 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:34:50,707.707 INFO    ] time= 31/08/2026 16:34:50
[2026-08-31 16:34:50,713.713 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:34:50,749.749 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:34:50,880.880 INFO    ] No existing commands found in stream
[2026-08-31 16:34:55,910.910 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:34:55,912.912 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-08-31 16:34:56,573.573 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 16:34:56,576.576 INFO    ] Checking for system updates...
[2026-08-31 16:34:56,615.615 INFO    ] 200
[2026-08-31 16:34:56,617.617 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:34:56,669.669 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:34:56,672.672 INFO    ] No update needed
[2026-08-31 16:34:56,674.674 INFO    ] Checking for camera pi updates...
[2026-08-31 16:34:56,708.708 INFO    ] 200
[2026-08-31 16:34:56,711.711 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:34:56,752.752 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:34:56,838.838 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:34:56,841.841 INFO    ] No camera update needed
[2026-08-31 16:34:56,843.843 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:34:56,846.846 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:34:56,851.851 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:34:56,856.856 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:34:58,898.898 INFO    ] ================================================
[2026-08-31 16:34:58,913.913 INFO    ] Launching Daemon at Mon Aug 31 16:34:58 IST 2026
[2026-08-31 16:34:58,924.924 INFO    ] ================================================
[2026-08-31 16:34:59,490.490 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:34:59
[2026-08-31 16:35:00,071.071 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:35:00,316.316 INFO    ] Initializing speech engine...
[2026-08-31 16:35:00,332.332 INFO    ] 2026-08-31 16:35:00
[2026-08-31 16:35:00,598.598 INFO    ] 2026-08-31 16:35:00
[2026-08-31 16:35:00,633.633 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:35:00,834.834 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:35:00,893.893 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:35:01,036.036 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:35:01,086.086 INFO    ] time= 31/08/2026 16:35:01
[2026-08-31 16:35:01,135.135 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:35:01,169.169 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:35:01,290.290 INFO    ] No existing commands found in stream
[2026-08-31 16:35:06,325.325 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:35:06,328.328 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-08-31 16:35:08,813.813 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 16:35:08,816.816 INFO    ] Checking for system updates...
[2026-08-31 16:35:08,851.851 INFO    ] 200
[2026-08-31 16:35:08,854.854 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:35:08,916.916 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:35:08,918.918 INFO    ] No update needed
[2026-08-31 16:35:08,921.921 INFO    ] Checking for camera pi updates...
[2026-08-31 16:35:08,957.957 INFO    ] 200
[2026-08-31 16:35:08,960.960 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:35:08,999.999 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:35:09,078.078 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:35:09,080.080 INFO    ] No camera update needed
[2026-08-31 16:35:09,083.083 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:35:09,085.085 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:35:09,090.090 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:35:09,095.095 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:35:11,137.137 INFO    ] ================================================
[2026-08-31 16:35:11,153.153 INFO    ] Launching Daemon at Mon Aug 31 16:35:11 IST 2026
[2026-08-31 16:35:11,164.164 INFO    ] ================================================
[2026-08-31 16:35:11,727.727 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:35:11
[2026-08-31 16:35:12,308.308 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:35:12,576.576 INFO    ] Initializing speech engine...
[2026-08-31 16:35:12,585.585 INFO    ] 2026-08-31 16:35:12
[2026-08-31 16:35:12,855.855 INFO    ] 2026-08-31 16:35:12
[2026-08-31 16:35:12,910.910 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:35:13,163.163 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:35:13,182.182 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:35:13,397.397 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:35:13,404.404 INFO    ] time= 31/08/2026 16:35:13
[2026-08-31 16:35:13,422.422 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:35:13,451.451 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:35:13,560.560 INFO    ] No existing commands found in stream
[2026-08-31 16:35:18,594.594 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:35:18,597.597 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-08-31 16:35:22,649.649 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 16:35:22,652.652 INFO    ] Checking for system updates...
[2026-08-31 16:35:22,689.689 INFO    ] 200
[2026-08-31 16:35:22,692.692 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:35:22,763.763 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:35:22,765.765 INFO    ] No update needed
[2026-08-31 16:35:22,768.768 INFO    ] Checking for camera pi updates...
[2026-08-31 16:35:22,806.806 INFO    ] 200
[2026-08-31 16:35:22,809.809 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:35:22,851.851 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:35:22,937.937 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:35:22,940.940 INFO    ] No camera update needed
[2026-08-31 16:35:22,943.943 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:35:22,946.946 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:35:22,952.952 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:35:22,958.958 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:35:25,000.000 INFO    ] ================================================
[2026-08-31 16:35:25,015.015 INFO    ] Launching Daemon at Mon Aug 31 16:35:25 IST 2026
[2026-08-31 16:35:25,027.027 INFO    ] ================================================
[2026-08-31 16:35:25,678.678 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:35:25
[2026-08-31 16:35:26,339.339 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:35:26,645.645 INFO    ] Initializing speech engine...
[2026-08-31 16:35:26,660.660 INFO    ] 2026-08-31 16:35:26
[2026-08-31 16:35:26,936.936 INFO    ] 2026-08-31 16:35:26
[2026-08-31 16:35:26,981.981 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:35:27,234.234 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:35:27,253.253 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:35:27,474.474 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:35:27,480.480 INFO    ] time= 31/08/2026 16:35:27
[2026-08-31 16:35:27,498.498 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:35:27,527.527 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:35:27,636.636 INFO    ] No existing commands found in stream
[2026-08-31 16:35:32,652.652 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:35:32,655.655 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-08-31 16:35:37,098.098 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 16:35:37,101.101 INFO    ] Checking for system updates...
[2026-08-31 16:35:37,136.136 INFO    ] 200
[2026-08-31 16:35:37,138.138 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:35:37,191.191 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:35:37,193.193 INFO    ] No update needed
[2026-08-31 16:35:37,196.196 INFO    ] Checking for camera pi updates...
[2026-08-31 16:35:37,237.237 INFO    ] 200
[2026-08-31 16:35:37,240.240 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:35:37,280.280 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:35:37,359.359 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:35:37,361.361 INFO    ] No camera update needed
[2026-08-31 16:35:37,364.364 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:35:37,366.366 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:35:37,371.371 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:35:37,376.376 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:35:39,417.417 INFO    ] ================================================
[2026-08-31 16:35:39,433.433 INFO    ] Launching Daemon at Mon Aug 31 16:35:39 IST 2026
[2026-08-31 16:35:39,444.444 INFO    ] ================================================
[2026-08-31 16:35:40,025.025 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:35:40
[2026-08-31 16:35:40,624.624 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:35:40,888.888 INFO    ] Initializing speech engine...
[2026-08-31 16:35:40,902.902 INFO    ] 2026-08-31 16:35:40
[2026-08-31 16:35:41,187.187 INFO    ] 2026-08-31 16:35:41
[2026-08-31 16:35:41,223.223 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:35:41,442.442 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:35:41,451.451 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:35:41,592.592 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:35:41,601.601 INFO    ] time= 31/08/2026 16:35:41
[2026-08-31 16:35:41,605.605 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:35:41,612.612 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:35:41,687.687 INFO    ] No existing commands found in stream
[2026-08-31 16:35:46,707.707 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:35:46,710.710 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-08-31 16:35:51,200.200 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 16:35:51,203.203 INFO    ] Checking for system updates...
[2026-08-31 16:35:51,242.242 INFO    ] 200
[2026-08-31 16:35:51,245.245 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:35:51,298.298 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:35:51,300.300 INFO    ] No update needed
[2026-08-31 16:35:51,303.303 INFO    ] Checking for camera pi updates...
[2026-08-31 16:35:51,341.341 INFO    ] 200
[2026-08-31 16:35:51,343.343 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:35:51,394.394 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:35:51,489.489 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:35:51,492.492 INFO    ] No camera update needed
[2026-08-31 16:35:51,495.495 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:35:51,498.498 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:35:51,504.504 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:35:51,509.509 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:35:53,551.551 INFO    ] ================================================
[2026-08-31 16:35:53,567.567 INFO    ] Launching Daemon at Mon Aug 31 16:35:53 IST 2026
[2026-08-31 16:35:53,577.577 INFO    ] ================================================
[2026-08-31 16:35:54,226.226 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:35:54
[2026-08-31 16:35:54,836.836 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:35:55,088.088 INFO    ] Initializing speech engine...
[2026-08-31 16:35:55,096.096 INFO    ] 2026-08-31 16:35:55
[2026-08-31 16:35:55,388.388 INFO    ] 2026-08-31 16:35:55
[2026-08-31 16:35:55,426.426 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:35:55,652.652 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:35:55,671.671 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:35:55,874.874 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:35:55,886.886 INFO    ] time= 31/08/2026 16:35:55
[2026-08-31 16:35:55,940.940 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:35:55,969.969 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:35:56,077.077 INFO    ] No existing commands found in stream
[2026-08-31 16:36:01,089.089 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:36:01,092.092 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-08-31 16:36:05,329.329 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 16:36:05,332.332 INFO    ] Checking for system updates...
[2026-08-31 16:36:05,367.367 INFO    ] 200
[2026-08-31 16:36:05,370.370 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:36:05,422.422 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:36:05,424.424 INFO    ] No update needed
[2026-08-31 16:36:05,427.427 INFO    ] Checking for camera pi updates...
[2026-08-31 16:36:05,460.460 INFO    ] 200
[2026-08-31 16:36:05,463.463 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:36:05,502.502 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:36:05,583.583 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:36:05,585.585 INFO    ] No camera update needed
[2026-08-31 16:36:05,588.588 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:36:05,590.590 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:36:05,595.595 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:36:05,600.600 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:36:07,640.640 INFO    ] ================================================
[2026-08-31 16:36:07,656.656 INFO    ] Launching Daemon at Mon Aug 31 16:36:07 IST 2026
[2026-08-31 16:36:07,667.667 INFO    ] ================================================
[2026-08-31 16:36:08,315.315 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:36:08
[2026-08-31 16:36:08,987.987 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:36:09,290.290 INFO    ] Initializing speech engine...
[2026-08-31 16:36:09,303.303 INFO    ] 2026-08-31 16:36:09
[2026-08-31 16:36:09,614.614 INFO    ] 2026-08-31 16:36:09
[2026-08-31 16:36:09,702.702 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:36:09,916.916 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:36:09,935.935 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:36:10,159.159 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:36:10,168.168 INFO    ] time= 31/08/2026 16:36:10
[2026-08-31 16:36:10,206.206 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:36:10,264.264 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:36:10,382.382 INFO    ] No existing commands found in stream
[2026-08-31 16:36:15,413.413 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:36:15,416.416 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-08-31 16:36:19,900.900 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 16:36:19,903.903 INFO    ] Checking for system updates...
[2026-08-31 16:36:19,940.940 INFO    ] 200
[2026-08-31 16:36:19,943.943 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:36:20,002.002 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:36:20,005.005 INFO    ] No update needed
[2026-08-31 16:36:20,008.008 INFO    ] Checking for camera pi updates...
[2026-08-31 16:36:20,042.042 INFO    ] 200
[2026-08-31 16:36:20,045.045 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:36:20,087.087 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:36:20,161.161 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:36:20,164.164 INFO    ] No camera update needed
[2026-08-31 16:36:20,167.167 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:36:20,169.169 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:36:20,176.176 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:36:20,181.181 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:36:22,221.221 INFO    ] ================================================
[2026-08-31 16:36:22,236.236 INFO    ] Launching Daemon at Mon Aug 31 16:36:22 IST 2026
[2026-08-31 16:36:22,247.247 INFO    ] ================================================
[2026-08-31 16:36:22,811.811 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:36:22
[2026-08-31 16:36:23,394.394 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:36:23,664.664 INFO    ] Initializing speech engine...
[2026-08-31 16:36:23,673.673 INFO    ] 2026-08-31 16:36:23
[2026-08-31 16:36:23,924.924 INFO    ] 2026-08-31 16:36:23
[2026-08-31 16:36:23,959.959 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:36:24,218.218 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:36:24,227.227 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:36:24,455.455 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:36:24,492.492 INFO    ] time= 31/08/2026 16:36:24
[2026-08-31 16:36:24,498.498 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:36:24,516.516 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:36:24,646.646 INFO    ] No existing commands found in stream
[2026-08-31 16:36:29,661.661 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:36:29,664.664 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-08-31 16:36:32,761.761 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 16:36:32,764.764 INFO    ] Checking for system updates...
[2026-08-31 16:36:32,802.802 INFO    ] 200
[2026-08-31 16:36:32,804.804 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:36:32,874.874 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:36:32,877.877 INFO    ] No update needed
[2026-08-31 16:36:32,880.880 INFO    ] Checking for camera pi updates...
[2026-08-31 16:36:32,914.914 INFO    ] 200
[2026-08-31 16:36:32,917.917 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:36:32,975.975 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:36:33,027.027 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:36:33,030.030 INFO    ] No camera update needed
[2026-08-31 16:36:33,035.035 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:36:33,038.038 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:36:33,045.045 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:36:33,051.051 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:36:35,093.093 INFO    ] ================================================
[2026-08-31 16:36:35,110.110 INFO    ] Launching Daemon at Mon Aug 31 16:36:35 IST 2026
[2026-08-31 16:36:35,122.122 INFO    ] ================================================
[2026-08-31 16:36:35,744.744 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:36:35
[2026-08-31 16:36:36,430.430 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:36:36,744.744 INFO    ] Initializing speech engine...
[2026-08-31 16:36:36,757.757 INFO    ] 2026-08-31 16:36:36
[2026-08-31 16:36:37,044.044 INFO    ] 2026-08-31 16:36:37
[2026-08-31 16:36:37,154.154 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:36:37,366.366 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:36:37,374.374 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:36:37,566.566 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:36:37,579.579 INFO    ] time= 31/08/2026 16:36:37
[2026-08-31 16:36:37,598.598 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:36:37,629.629 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:36:37,732.732 INFO    ] No existing commands found in stream
[2026-08-31 16:36:42,746.746 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:36:42,750.750 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-08-31 16:36:43,502.502 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 16:36:43,505.505 INFO    ] Checking for system updates...
[2026-08-31 16:36:43,543.543 INFO    ] 200
[2026-08-31 16:36:43,546.546 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:36:43,599.599 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:36:43,601.601 INFO    ] No update needed
[2026-08-31 16:36:43,604.604 INFO    ] Checking for camera pi updates...
[2026-08-31 16:36:43,642.642 INFO    ] 200
[2026-08-31 16:36:43,644.644 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:36:43,686.686 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:36:43,775.775 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:36:43,777.777 INFO    ] No camera update needed
[2026-08-31 16:36:43,780.780 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:36:43,782.782 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:36:43,787.787 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:36:43,792.792 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:36:45,831.831 INFO    ] ================================================
[2026-08-31 16:36:45,847.847 INFO    ] Launching Daemon at Mon Aug 31 16:36:45 IST 2026
[2026-08-31 16:36:45,859.859 INFO    ] ================================================
[2026-08-31 16:36:46,424.424 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:36:46
[2026-08-31 16:36:47,007.007 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:36:47,275.275 INFO    ] Initializing speech engine...
[2026-08-31 16:36:47,284.284 INFO    ] 2026-08-31 16:36:47
[2026-08-31 16:36:47,530.530 INFO    ] 2026-08-31 16:36:47
[2026-08-31 16:36:47,565.565 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:36:47,814.814 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:36:47,823.823 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:36:47,963.963 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:36:48,023.023 INFO    ] time= 31/08/2026 16:36:47
[2026-08-31 16:36:48,084.084 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:36:48,091.091 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:36:48,217.217 INFO    ] No existing commands found in stream
[2026-08-31 16:36:53,244.244 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:36:53,247.247 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-08-31 16:36:57,825.825 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 16:36:57,827.827 INFO    ] Checking for system updates...
[2026-08-31 16:36:57,863.863 INFO    ] 200
[2026-08-31 16:36:57,865.865 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:36:57,925.925 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:36:57,928.928 INFO    ] No update needed
[2026-08-31 16:36:57,931.931 INFO    ] Checking for camera pi updates...
[2026-08-31 16:36:57,964.964 INFO    ] 200
[2026-08-31 16:36:57,966.966 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:36:58,012.012 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:36:58,089.089 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:36:58,091.091 INFO    ] No camera update needed
[2026-08-31 16:36:58,093.093 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:36:58,096.096 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:36:58,101.101 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:36:58,106.106 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:37:00,147.147 INFO    ] ================================================
[2026-08-31 16:37:00,163.163 INFO    ] Launching Daemon at Mon Aug 31 16:37:00 IST 2026
[2026-08-31 16:37:00,174.174 INFO    ] ================================================
[2026-08-31 16:37:00,866.866 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:37:00
[2026-08-31 16:37:01,553.553 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:37:02,064.064 INFO    ] Initializing speech engine...
[2026-08-31 16:37:02,067.067 INFO    ] 2026-08-31 16:37:02
[2026-08-31 16:37:02,463.463 INFO    ] 2026-08-31 16:37:02
[2026-08-31 16:37:02,525.525 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:37:02,715.715 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:37:02,723.723 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:37:02,921.921 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:37:02,973.973 INFO    ] time= 31/08/2026 16:37:02
[2026-08-31 16:37:02,990.990 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:37:03,016.016 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:37:03,168.168 INFO    ] No existing commands found in stream
[2026-08-31 16:37:08,226.226 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:37:08,229.229 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-08-31 16:37:09,578.578 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 16:37:09,581.581 INFO    ] Checking for system updates...
[2026-08-31 16:37:09,617.617 INFO    ] 200
[2026-08-31 16:37:09,620.620 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:37:09,672.672 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:37:09,674.674 INFO    ] No update needed
[2026-08-31 16:37:09,677.677 INFO    ] Checking for camera pi updates...
[2026-08-31 16:37:09,714.714 INFO    ] 200
[2026-08-31 16:37:09,716.716 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:37:09,757.757 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:37:09,938.938 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:37:09,940.940 INFO    ] No camera update needed
[2026-08-31 16:37:09,942.942 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:37:09,945.945 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:37:09,950.950 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:37:09,955.955 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:37:12,996.996 INFO    ] ================================================
[2026-08-31 16:37:12,012.012 INFO    ] Launching Daemon at Mon Aug 31 16:37:12 IST 2026
[2026-08-31 16:37:12,024.024 INFO    ] ================================================
[2026-08-31 16:37:12,601.601 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:37:12
[2026-08-31 16:37:13,188.188 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:37:13,464.464 INFO    ] Initializing speech engine...
[2026-08-31 16:37:13,471.471 INFO    ] 2026-08-31 16:37:13
[2026-08-31 16:37:13,730.730 INFO    ] 2026-08-31 16:37:13
[2026-08-31 16:37:13,780.780 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:37:14,005.005 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:37:14,014.014 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:37:14,145.145 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:37:14,171.171 INFO    ] time= 31/08/2026 16:37:14
[2026-08-31 16:37:14,221.221 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:37:14,265.265 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:37:14,411.411 INFO    ] No existing commands found in stream
[2026-08-31 16:37:19,433.433 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:37:19,436.436 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-08-31 16:37:22,327.327 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 16:37:22,330.330 INFO    ] Checking for system updates...
[2026-08-31 16:37:22,366.366 INFO    ] 200
[2026-08-31 16:37:22,370.370 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:37:22,430.430 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:37:22,433.433 INFO    ] No update needed
[2026-08-31 16:37:22,436.436 INFO    ] Checking for camera pi updates...
[2026-08-31 16:37:22,475.475 INFO    ] 200
[2026-08-31 16:37:22,478.478 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:37:22,523.523 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:37:22,606.606 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:37:22,608.608 INFO    ] No camera update needed
[2026-08-31 16:37:22,611.611 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:37:22,613.613 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:37:22,619.619 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:37:22,624.624 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:37:24,672.672 INFO    ] ================================================
[2026-08-31 16:37:24,687.687 INFO    ] Launching Daemon at Mon Aug 31 16:37:24 IST 2026
[2026-08-31 16:37:24,699.699 INFO    ] ================================================
[2026-08-31 16:37:25,348.348 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:37:25
[2026-08-31 16:37:26,018.018 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:37:26,321.321 INFO    ] Initializing speech engine...
[2026-08-31 16:37:26,333.333 INFO    ] 2026-08-31 16:37:26
[2026-08-31 16:37:26,643.643 INFO    ] 2026-08-31 16:37:26
[2026-08-31 16:37:26,729.729 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:37:27,005.005 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:37:27,042.042 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:37:27,206.206 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:37:27,280.280 INFO    ] time= 31/08/2026 16:37:27
[2026-08-31 16:37:27,315.315 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:37:27,375.375 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:37:27,529.529 INFO    ] No existing commands found in stream
[2026-08-31 16:37:32,555.555 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:37:32,559.559 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-08-31 16:37:34,811.811 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 16:37:34,814.814 INFO    ] Checking for system updates...
[2026-08-31 16:37:34,851.851 INFO    ] 200
[2026-08-31 16:37:34,854.854 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:37:34,908.908 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:37:34,911.911 INFO    ] No update needed
[2026-08-31 16:37:34,913.913 INFO    ] Checking for camera pi updates...
[2026-08-31 16:37:34,951.951 INFO    ] 200
[2026-08-31 16:37:34,953.953 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:37:34,999.999 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:37:35,073.073 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:37:35,076.076 INFO    ] No camera update needed
[2026-08-31 16:37:35,079.079 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:37:35,081.081 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:37:35,091.091 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:37:35,097.097 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:37:37,138.138 INFO    ] ================================================
[2026-08-31 16:37:37,154.154 INFO    ] Launching Daemon at Mon Aug 31 16:37:37 IST 2026
[2026-08-31 16:37:37,165.165 INFO    ] ================================================
[2026-08-31 16:37:37,733.733 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:37:37
[2026-08-31 16:37:38,317.317 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:37:38,590.590 INFO    ] Initializing speech engine...
[2026-08-31 16:37:38,599.599 INFO    ] 2026-08-31 16:37:38
[2026-08-31 16:37:38,841.841 INFO    ] 2026-08-31 16:37:38
[2026-08-31 16:37:38,876.876 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:37:39,073.073 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:37:39,132.132 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:37:39,272.272 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:37:39,332.332 INFO    ] time= 31/08/2026 16:37:39
[2026-08-31 16:37:39,391.391 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:37:39,406.406 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:37:39,552.552 INFO    ] No existing commands found in stream
[2026-08-31 16:37:44,571.571 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:37:44,574.574 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-08-31 16:37:48,604.604 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 16:37:48,607.607 INFO    ] Checking for system updates...
[2026-08-31 16:37:48,643.643 INFO    ] 200
[2026-08-31 16:37:48,646.646 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:37:48,705.705 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:37:48,708.708 INFO    ] No update needed
[2026-08-31 16:37:48,710.710 INFO    ] Checking for camera pi updates...
[2026-08-31 16:37:48,751.751 INFO    ] 200
[2026-08-31 16:37:48,753.753 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:37:48,798.798 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:37:48,883.883 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:37:48,885.885 INFO    ] No camera update needed
[2026-08-31 16:37:48,888.888 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:37:48,890.890 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:37:48,895.895 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:37:48,900.900 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:37:50,945.945 INFO    ] ================================================
[2026-08-31 16:37:50,961.961 INFO    ] Launching Daemon at Mon Aug 31 16:37:50 IST 2026
[2026-08-31 16:37:50,973.973 INFO    ] ================================================
[2026-08-31 16:37:51,610.610 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:37:51
[2026-08-31 16:37:52,280.280 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:37:52,584.584 INFO    ] Initializing speech engine...
[2026-08-31 16:37:52,598.598 INFO    ] 2026-08-31 16:37:52
[2026-08-31 16:37:52,876.876 INFO    ] 2026-08-31 16:37:52
[2026-08-31 16:37:52,919.919 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:37:53,206.206 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:37:53,211.211 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:37:53,405.405 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:37:53,413.413 INFO    ] time= 31/08/2026 16:37:53
[2026-08-31 16:37:53,436.436 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:37:53,464.464 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:37:53,566.566 INFO    ] No existing commands found in stream
[2026-08-31 16:37:58,580.580 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:37:58,583.583 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-08-31 16:38:00,611.611 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 16:38:00,614.614 INFO    ] Checking for system updates...
[2026-08-31 16:38:00,655.655 INFO    ] 200
[2026-08-31 16:38:00,658.658 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:38:00,710.710 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:38:00,712.712 INFO    ] No update needed
[2026-08-31 16:38:00,714.714 INFO    ] Checking for camera pi updates...
[2026-08-31 16:38:00,754.754 INFO    ] 200
[2026-08-31 16:38:00,757.757 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:38:00,797.797 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:38:00,879.879 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:38:00,881.881 INFO    ] No camera update needed
[2026-08-31 16:38:00,883.883 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:38:00,886.886 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:38:00,891.891 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:38:00,896.896 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:38:02,964.964 INFO    ] ================================================
[2026-08-31 16:38:02,985.985 INFO    ] Launching Daemon at Mon Aug 31 16:38:02 IST 2026
[2026-08-31 16:38:03,000.000 INFO    ] ================================================
[2026-08-31 16:38:03,673.673 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:38:03
[2026-08-31 16:38:04,266.266 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:38:04,532.532 INFO    ] Initializing speech engine...
[2026-08-31 16:38:04,542.542 INFO    ] 2026-08-31 16:38:04
[2026-08-31 16:38:04,788.788 INFO    ] 2026-08-31 16:38:04
[2026-08-31 16:38:04,823.823 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:38:05,018.018 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:38:05,059.059 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:38:05,217.217 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:38:05,267.267 INFO    ] time= 31/08/2026 16:38:05
[2026-08-31 16:38:05,331.331 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:38:05,349.349 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:38:05,495.495 INFO    ] No existing commands found in stream
[2026-08-31 16:38:10,507.507 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:38:10,510.510 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-08-31 16:38:15,885.885 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 16:38:15,888.888 INFO    ] Checking for system updates...
[2026-08-31 16:38:15,927.927 INFO    ] 200
[2026-08-31 16:38:15,930.930 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:38:15,984.984 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:38:15,988.988 INFO    ] No update needed
[2026-08-31 16:38:15,990.990 INFO    ] Checking for camera pi updates...
[2026-08-31 16:38:16,027.027 INFO    ] 200
[2026-08-31 16:38:16,030.030 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:38:16,074.074 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:38:16,163.163 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:38:16,165.165 INFO    ] No camera update needed
[2026-08-31 16:38:16,168.168 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:38:16,170.170 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:38:16,176.176 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:38:16,181.181 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:38:18,226.226 INFO    ] ================================================
[2026-08-31 16:38:18,241.241 INFO    ] Launching Daemon at Mon Aug 31 16:38:18 IST 2026
[2026-08-31 16:38:18,252.252 INFO    ] ================================================
[2026-08-31 16:38:18,824.824 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:38:18
[2026-08-31 16:38:19,410.410 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:38:19,664.664 INFO    ] Initializing speech engine...
[2026-08-31 16:38:19,670.670 INFO    ] 2026-08-31 16:38:19
[2026-08-31 16:38:19,964.964 INFO    ] 2026-08-31 16:38:19
[2026-08-31 16:38:19,989.989 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:38:20,197.197 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:38:20,214.214 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:38:20,576.576 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:38:20,592.592 INFO    ] time= 31/08/2026 16:38:20
[2026-08-31 16:38:20,598.598 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:38:20,619.619 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:38:20,732.732 INFO    ] No existing commands found in stream
[2026-08-31 16:38:25,762.762 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:38:25,765.765 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-08-31 16:38:27,001.001 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 16:38:27,003.003 INFO    ] Checking for system updates...
[2026-08-31 16:38:27,044.044 INFO    ] 200
[2026-08-31 16:38:27,046.046 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:38:27,101.101 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:38:27,104.104 INFO    ] No update needed
[2026-08-31 16:38:27,106.106 INFO    ] Checking for camera pi updates...
[2026-08-31 16:38:27,140.140 INFO    ] 200
[2026-08-31 16:38:27,143.143 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:38:27,185.185 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:38:27,267.267 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:38:27,270.270 INFO    ] No camera update needed
[2026-08-31 16:38:27,273.273 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:38:27,275.275 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:38:27,282.282 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:38:27,287.287 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:38:29,329.329 INFO    ] ================================================
[2026-08-31 16:38:29,344.344 INFO    ] Launching Daemon at Mon Aug 31 16:38:29 IST 2026
[2026-08-31 16:38:29,355.355 INFO    ] ================================================
[2026-08-31 16:38:29,922.922 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:38:29
[2026-08-31 16:38:30,506.506 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:38:30,772.772 INFO    ] Initializing speech engine...
[2026-08-31 16:38:30,782.782 INFO    ] 2026-08-31 16:38:30
[2026-08-31 16:38:31,030.030 INFO    ] 2026-08-31 16:38:31
[2026-08-31 16:38:31,065.065 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:38:31,315.315 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:38:31,325.325 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:38:31,534.534 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:38:31,583.583 INFO    ] time= 31/08/2026 16:38:31
[2026-08-31 16:38:31,589.589 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:38:31,607.607 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:38:31,734.734 INFO    ] No existing commands found in stream
[2026-08-31 16:38:36,748.748 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:38:36,751.751 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-08-31 16:38:40,160.160 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 16:38:40,162.162 INFO    ] Checking for system updates...
[2026-08-31 16:38:40,201.201 INFO    ] 200
[2026-08-31 16:38:40,203.203 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:38:40,260.260 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:38:40,262.262 INFO    ] No update needed
[2026-08-31 16:38:40,264.264 INFO    ] Checking for camera pi updates...
[2026-08-31 16:38:40,300.300 INFO    ] 200
[2026-08-31 16:38:40,302.302 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:38:40,342.342 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:38:40,416.416 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:38:40,418.418 INFO    ] No camera update needed
[2026-08-31 16:38:40,421.421 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:38:40,423.423 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:38:40,428.428 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:38:40,433.433 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:38:42,476.476 INFO    ] ================================================
[2026-08-31 16:38:42,491.491 INFO    ] Launching Daemon at Mon Aug 31 16:38:42 IST 2026
[2026-08-31 16:38:42,501.501 INFO    ] ================================================
[2026-08-31 16:38:43,065.065 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:38:43
[2026-08-31 16:38:43,645.645 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:38:43,912.912 INFO    ] Initializing speech engine...
[2026-08-31 16:38:43,933.933 INFO    ] 2026-08-31 16:38:43
[2026-08-31 16:38:44,193.193 INFO    ] 2026-08-31 16:38:44
[2026-08-31 16:38:44,228.228 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:38:44,443.443 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:38:44,482.482 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:38:44,657.657 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:38:44,700.700 INFO    ] time= 31/08/2026 16:38:44
[2026-08-31 16:38:44,754.754 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:38:44,800.800 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:38:44,935.935 INFO    ] No existing commands found in stream
[2026-08-31 16:38:49,960.960 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:38:49,963.963 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-08-31 16:38:51,378.378 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 16:38:51,381.381 INFO    ] Checking for system updates...
[2026-08-31 16:38:51,419.419 INFO    ] 200
[2026-08-31 16:38:51,421.421 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:38:51,478.478 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:38:51,480.480 INFO    ] No update needed
[2026-08-31 16:38:51,482.482 INFO    ] Checking for camera pi updates...
[2026-08-31 16:38:51,517.517 INFO    ] 200
[2026-08-31 16:38:51,519.519 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:38:51,562.562 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:38:51,640.640 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:38:51,643.643 INFO    ] No camera update needed
[2026-08-31 16:38:51,645.645 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:38:51,647.647 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:38:51,653.653 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:38:51,658.658 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:38:53,700.700 INFO    ] ================================================
[2026-08-31 16:38:53,715.715 INFO    ] Launching Daemon at Mon Aug 31 16:38:53 IST 2026
[2026-08-31 16:38:53,726.726 INFO    ] ================================================
[2026-08-31 16:38:54,346.346 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:38:54
[2026-08-31 16:38:54,966.966 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:38:55,236.236 INFO    ] Initializing speech engine...
[2026-08-31 16:38:55,246.246 INFO    ] 2026-08-31 16:38:55
[2026-08-31 16:38:55,496.496 INFO    ] 2026-08-31 16:38:55
[2026-08-31 16:38:55,530.530 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:38:55,788.788 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:38:55,798.798 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:38:56,021.021 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:38:56,062.062 INFO    ] time= 31/08/2026 16:38:56
[2026-08-31 16:38:56,069.069 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:38:56,089.089 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:38:56,211.211 INFO    ] No existing commands found in stream
[2026-08-31 16:39:01,232.232 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:39:01,235.235 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-08-31 16:39:02,366.366 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 16:39:02,369.369 INFO    ] Checking for system updates...
[2026-08-31 16:39:02,410.410 INFO    ] 200
[2026-08-31 16:39:02,413.413 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:39:02,482.482 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:39:02,485.485 INFO    ] No update needed
[2026-08-31 16:39:02,489.489 INFO    ] Checking for camera pi updates...
[2026-08-31 16:39:02,530.530 INFO    ] 200
[2026-08-31 16:39:02,533.533 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:39:02,587.587 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:39:02,710.710 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:39:02,713.713 INFO    ] No camera update needed
[2026-08-31 16:39:02,716.716 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:39:02,720.720 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:39:02,726.726 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:39:02,733.733 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:39:04,774.774 INFO    ] ================================================
[2026-08-31 16:39:04,789.789 INFO    ] Launching Daemon at Mon Aug 31 16:39:04 IST 2026
[2026-08-31 16:39:04,800.800 INFO    ] ================================================
[2026-08-31 16:39:05,420.420 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:39:05
[2026-08-31 16:39:06,071.071 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:39:06,361.361 INFO    ] Initializing speech engine...
[2026-08-31 16:39:06,366.366 INFO    ] 2026-08-31 16:39:06
[2026-08-31 16:39:06,636.636 INFO    ] 2026-08-31 16:39:06
[2026-08-31 16:39:06,701.701 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:39:06,942.942 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:39:06,948.948 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:39:07,164.164 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:39:07,208.208 INFO    ] time= 31/08/2026 16:39:07
[2026-08-31 16:39:07,224.224 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:39:07,238.238 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:39:07,362.362 INFO    ] No existing commands found in stream
[2026-08-31 16:39:12,377.377 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:39:12,380.380 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-08-31 16:39:16,360.360 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 16:39:16,362.362 INFO    ] Checking for system updates...
[2026-08-31 16:39:16,400.400 INFO    ] 200
[2026-08-31 16:39:16,402.402 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:39:16,459.459 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:39:16,461.461 INFO    ] No update needed
[2026-08-31 16:39:16,464.464 INFO    ] Checking for camera pi updates...
[2026-08-31 16:39:16,498.498 INFO    ] 200
[2026-08-31 16:39:16,501.501 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:39:16,549.549 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:39:16,730.730 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:39:16,732.732 INFO    ] No camera update needed
[2026-08-31 16:39:16,735.735 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:39:16,737.737 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:39:16,743.743 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:39:16,748.748 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:39:18,788.788 INFO    ] ================================================
[2026-08-31 16:39:18,810.810 INFO    ] Launching Daemon at Mon Aug 31 16:39:18 IST 2026
[2026-08-31 16:39:18,822.822 INFO    ] ================================================
[2026-08-31 16:39:19,441.441 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:39:19
[2026-08-31 16:39:20,077.077 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:39:20,369.369 INFO    ] Initializing speech engine...
[2026-08-31 16:39:20,377.377 INFO    ] 2026-08-31 16:39:20
[2026-08-31 16:39:20,656.656 INFO    ] 2026-08-31 16:39:20
[2026-08-31 16:39:20,711.711 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:39:21,050.050 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:39:21,119.119 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:39:21,322.322 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:39:21,372.372 INFO    ] time= 31/08/2026 16:39:21
[2026-08-31 16:39:21,432.432 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:39:21,457.457 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:39:21,611.611 INFO    ] No existing commands found in stream
[2026-08-31 16:39:26,636.636 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:39:26,639.639 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-08-31 16:39:30,486.486 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 16:39:30,489.489 INFO    ] Checking for system updates...
[2026-08-31 16:39:30,525.525 INFO    ] 200
[2026-08-31 16:39:30,527.527 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:39:30,585.585 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:39:30,588.588 INFO    ] No update needed
[2026-08-31 16:39:30,590.590 INFO    ] Checking for camera pi updates...
[2026-08-31 16:39:30,624.624 INFO    ] 200
[2026-08-31 16:39:30,626.626 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:39:30,669.669 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:39:30,741.741 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:39:30,743.743 INFO    ] No camera update needed
[2026-08-31 16:39:30,745.745 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:39:30,748.748 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:39:30,753.753 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:39:30,758.758 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:39:32,801.801 INFO    ] ================================================
[2026-08-31 16:39:32,817.817 INFO    ] Launching Daemon at Mon Aug 31 16:39:32 IST 2026
[2026-08-31 16:39:32,829.829 INFO    ] ================================================
[2026-08-31 16:39:33,432.432 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:39:33
[2026-08-31 16:39:34,014.014 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:39:34,279.279 INFO    ] Initializing speech engine...
[2026-08-31 16:39:34,294.294 INFO    ] 2026-08-31 16:39:34
[2026-08-31 16:39:34,558.558 INFO    ] 2026-08-31 16:39:34
[2026-08-31 16:39:34,596.596 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:39:34,808.808 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:39:34,821.821 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:39:34,963.963 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:39:35,030.030 INFO    ] time= 31/08/2026 16:39:34
[2026-08-31 16:39:35,042.042 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:39:35,086.086 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:39:35,196.196 INFO    ] No existing commands found in stream
[2026-08-31 16:39:40,209.209 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:39:40,212.212 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-08-31 16:39:43,412.412 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 16:39:43,414.414 INFO    ] Checking for system updates...
[2026-08-31 16:39:43,452.452 INFO    ] 200
[2026-08-31 16:39:43,454.454 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:39:43,510.510 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:39:43,513.513 INFO    ] No update needed
[2026-08-31 16:39:43,515.515 INFO    ] Checking for camera pi updates...
[2026-08-31 16:39:43,550.550 INFO    ] 200
[2026-08-31 16:39:43,553.553 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:39:43,595.595 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:39:43,676.676 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:39:43,679.679 INFO    ] No camera update needed
[2026-08-31 16:39:43,681.681 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:39:43,683.683 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:39:43,688.688 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:39:43,693.693 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:39:45,733.733 INFO    ] ================================================
[2026-08-31 16:39:45,749.749 INFO    ] Launching Daemon at Mon Aug 31 16:39:45 IST 2026
[2026-08-31 16:39:45,760.760 INFO    ] ================================================
[2026-08-31 16:39:46,339.339 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:39:46
[2026-08-31 16:39:46,920.920 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:39:47,170.170 INFO    ] Initializing speech engine...
[2026-08-31 16:39:47,185.185 INFO    ] 2026-08-31 16:39:47
[2026-08-31 16:39:47,464.464 INFO    ] 2026-08-31 16:39:47
[2026-08-31 16:39:47,499.499 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:39:47,686.686 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:39:47,698.698 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:39:47,857.857 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:39:47,862.862 INFO    ] time= 31/08/2026 16:39:47
[2026-08-31 16:39:47,869.869 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:39:47,890.890 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:39:48,001.001 INFO    ] No existing commands found in stream
[2026-08-31 16:39:53,021.021 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:39:53,023.023 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-08-31 16:39:55,260.260 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 16:39:55,262.262 INFO    ] Checking for system updates...
[2026-08-31 16:39:55,300.300 INFO    ] 200
[2026-08-31 16:39:55,303.303 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:39:55,356.356 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:39:55,358.358 INFO    ] No update needed
[2026-08-31 16:39:55,360.360 INFO    ] Checking for camera pi updates...
[2026-08-31 16:39:55,397.397 INFO    ] 200
[2026-08-31 16:39:55,399.399 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:39:55,443.443 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:39:55,540.540 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:39:55,542.542 INFO    ] No camera update needed
[2026-08-31 16:39:55,545.545 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:39:55,547.547 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:39:55,552.552 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:39:55,557.557 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:39:57,598.598 INFO    ] ================================================
[2026-08-31 16:39:57,613.613 INFO    ] Launching Daemon at Mon Aug 31 16:39:57 IST 2026
[2026-08-31 16:39:57,623.623 INFO    ] ================================================
[2026-08-31 16:39:58,205.205 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:39:58
[2026-08-31 16:39:58,792.792 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:39:59,072.072 INFO    ] Initializing speech engine...
[2026-08-31 16:39:59,081.081 INFO    ] 2026-08-31 16:39:59
[2026-08-31 16:39:59,343.343 INFO    ] 2026-08-31 16:39:59
[2026-08-31 16:39:59,378.378 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:39:59,570.570 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:39:59,594.594 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:39:59,743.743 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:39:59,748.748 INFO    ] time= 31/08/2026 16:39:59
[2026-08-31 16:39:59,756.756 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:39:59,806.806 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:39:59,954.954 INFO    ] No existing commands found in stream
[2026-08-31 16:40:04,975.975 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:40:04,977.977 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-08-31 16:40:08,498.498 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 16:40:08,501.501 INFO    ] Checking for system updates...
[2026-08-31 16:40:08,539.539 INFO    ] 200
[2026-08-31 16:40:08,541.541 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:40:08,598.598 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:40:08,600.600 INFO    ] No update needed
[2026-08-31 16:40:08,602.602 INFO    ] Checking for camera pi updates...
[2026-08-31 16:40:08,639.639 INFO    ] 200
[2026-08-31 16:40:08,641.641 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:40:08,684.684 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:40:08,765.765 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:40:08,768.768 INFO    ] No camera update needed
[2026-08-31 16:40:08,770.770 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:40:08,773.773 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:40:08,778.778 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:40:08,783.783 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:40:10,823.823 INFO    ] ================================================
[2026-08-31 16:40:10,840.840 INFO    ] Launching Daemon at Mon Aug 31 16:40:10 IST 2026
[2026-08-31 16:40:10,850.850 INFO    ] ================================================
[2026-08-31 16:40:11,434.434 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:40:11
[2026-08-31 16:40:12,038.038 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:40:12,301.301 INFO    ] Initializing speech engine...
[2026-08-31 16:40:12,321.321 INFO    ] 2026-08-31 16:40:12
[2026-08-31 16:40:12,599.599 INFO    ] 2026-08-31 16:40:12
[2026-08-31 16:40:12,634.634 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:40:12,853.853 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:40:12,861.861 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:40:13,075.075 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:40:13,083.083 INFO    ] time= 31/08/2026 16:40:13
[2026-08-31 16:40:13,142.142 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:40:13,201.201 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:40:13,366.366 INFO    ] No existing commands found in stream
[2026-08-31 16:40:18,396.396 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:40:18,399.399 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-08-31 16:40:22,119.119 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 16:40:22,121.121 INFO    ] Checking for system updates...
[2026-08-31 16:40:22,160.160 INFO    ] 200
[2026-08-31 16:40:22,162.162 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:40:22,220.220 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:40:22,222.222 INFO    ] No update needed
[2026-08-31 16:40:22,225.225 INFO    ] Checking for camera pi updates...
[2026-08-31 16:40:22,262.262 INFO    ] 200
[2026-08-31 16:40:22,264.264 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:40:22,306.306 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:40:22,387.387 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:40:22,389.389 INFO    ] No camera update needed
[2026-08-31 16:40:22,392.392 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:40:22,394.394 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:40:22,399.399 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:40:22,404.404 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:40:24,444.444 INFO    ] ================================================
[2026-08-31 16:40:24,460.460 INFO    ] Launching Daemon at Mon Aug 31 16:40:24 IST 2026
[2026-08-31 16:40:24,470.470 INFO    ] ================================================
[2026-08-31 16:40:25,060.060 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:40:25
[2026-08-31 16:40:25,662.662 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:40:25,923.923 INFO    ] Initializing speech engine...
[2026-08-31 16:40:25,929.929 INFO    ] 2026-08-31 16:40:25
[2026-08-31 16:40:26,225.225 INFO    ] 2026-08-31 16:40:26
[2026-08-31 16:40:26,259.259 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:40:26,455.455 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:40:26,471.471 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:40:26,701.701 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:40:26,715.715 INFO    ] time= 31/08/2026 16:40:26
[2026-08-31 16:40:26,774.774 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:40:26,808.808 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:40:26,887.887 INFO    ] No existing commands found in stream
[2026-08-31 16:40:31,903.903 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:40:31,905.905 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-08-31 16:40:34,039.039 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 16:40:34,041.041 INFO    ] Checking for system updates...
[2026-08-31 16:40:34,081.081 INFO    ] 200
[2026-08-31 16:40:34,083.083 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:40:34,142.142 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:40:34,145.145 INFO    ] No update needed
[2026-08-31 16:40:34,147.147 INFO    ] Checking for camera pi updates...
[2026-08-31 16:40:34,194.194 INFO    ] 200
[2026-08-31 16:40:34,196.196 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:40:34,239.239 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:40:34,354.354 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:40:34,356.356 INFO    ] No camera update needed
[2026-08-31 16:40:34,359.359 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:40:34,361.361 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:40:34,366.366 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:40:34,371.371 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:40:36,411.411 INFO    ] ================================================
[2026-08-31 16:40:36,427.427 INFO    ] Launching Daemon at Mon Aug 31 16:40:36 IST 2026
[2026-08-31 16:40:36,438.438 INFO    ] ================================================
[2026-08-31 16:40:37,003.003 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:40:37
[2026-08-31 16:40:37,585.585 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:40:37,855.855 INFO    ] Initializing speech engine...
[2026-08-31 16:40:37,864.864 INFO    ] 2026-08-31 16:40:37
[2026-08-31 16:40:38,113.113 INFO    ] 2026-08-31 16:40:38
[2026-08-31 16:40:38,148.148 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:40:38,388.388 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:40:38,410.410 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:40:38,564.564 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:40:38,613.613 INFO    ] time= 31/08/2026 16:40:38
[2026-08-31 16:40:38,662.662 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:40:38,688.688 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:40:38,809.809 INFO    ] No existing commands found in stream
[2026-08-31 16:40:43,839.839 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:40:43,842.842 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-08-31 16:40:47,478.478 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 16:40:47,481.481 INFO    ] Checking for system updates...
[2026-08-31 16:40:47,518.518 INFO    ] 200
[2026-08-31 16:40:47,521.521 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:40:47,580.580 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:40:47,582.582 INFO    ] No update needed
[2026-08-31 16:40:47,588.588 INFO    ] Checking for camera pi updates...
[2026-08-31 16:40:47,624.624 INFO    ] 200
[2026-08-31 16:40:47,626.626 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:40:47,670.670 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:40:47,755.755 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:40:47,758.758 INFO    ] No camera update needed
[2026-08-31 16:40:47,760.760 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:40:47,762.762 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:40:47,768.768 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:40:47,773.773 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:40:49,813.813 INFO    ] ================================================
[2026-08-31 16:40:49,829.829 INFO    ] Launching Daemon at Mon Aug 31 16:40:49 IST 2026
[2026-08-31 16:40:49,840.840 INFO    ] ================================================
[2026-08-31 16:40:50,406.406 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:40:50
[2026-08-31 16:40:50,989.989 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:40:51,266.266 INFO    ] Initializing speech engine...
[2026-08-31 16:40:51,274.274 INFO    ] 2026-08-31 16:40:51
[2026-08-31 16:40:51,529.529 INFO    ] 2026-08-31 16:40:51
[2026-08-31 16:40:51,582.582 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:40:51,810.810 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:40:51,816.816 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:40:52,051.051 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:40:52,073.073 INFO    ] time= 31/08/2026 16:40:52
[2026-08-31 16:40:52,091.091 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:40:52,119.119 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:40:52,236.236 INFO    ] No existing commands found in stream
[2026-08-31 16:40:57,262.262 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:40:57,265.265 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-08-31 16:41:01,060.060 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 16:41:01,063.063 INFO    ] Checking for system updates...
[2026-08-31 16:41:01,103.103 INFO    ] 200
[2026-08-31 16:41:01,105.105 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:41:01,190.190 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:41:01,199.199 INFO    ] No update needed
[2026-08-31 16:41:01,208.208 INFO    ] Checking for camera pi updates...
[2026-08-31 16:41:01,296.296 INFO    ] 200
[2026-08-31 16:41:01,302.302 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:41:01,365.365 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:41:01,488.488 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:41:01,491.491 INFO    ] No camera update needed
[2026-08-31 16:41:01,494.494 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:41:01,502.502 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:41:01,509.509 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:41:01,516.516 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:41:03,564.564 INFO    ] ================================================
[2026-08-31 16:41:03,580.580 INFO    ] Launching Daemon at Mon Aug 31 16:41:03 IST 2026
[2026-08-31 16:41:03,591.591 INFO    ] ================================================
[2026-08-31 16:41:04,239.239 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:41:04
[2026-08-31 16:41:04,909.909 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:41:05,213.213 INFO    ] Initializing speech engine...
[2026-08-31 16:41:05,227.227 INFO    ] 2026-08-31 16:41:05
[2026-08-31 16:41:05,511.511 INFO    ] 2026-08-31 16:41:05
[2026-08-31 16:41:05,556.556 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:41:05,810.810 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:41:05,819.819 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:41:06,002.002 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:41:06,070.070 INFO    ] time= 31/08/2026 16:41:06
[2026-08-31 16:41:06,094.094 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:41:06,105.105 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:41:06,243.243 INFO    ] No existing commands found in stream
[2026-08-31 16:41:11,262.262 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:41:11,264.264 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-08-31 16:41:13,878.878 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 16:41:13,881.881 INFO    ] Checking for system updates...
[2026-08-31 16:41:13,920.920 INFO    ] 200
[2026-08-31 16:41:13,923.923 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:41:13,975.975 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:41:13,978.978 INFO    ] No update needed
[2026-08-31 16:41:13,981.981 INFO    ] Checking for camera pi updates...
[2026-08-31 16:41:14,015.015 INFO    ] 200
[2026-08-31 16:41:14,018.018 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:41:14,059.059 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:41:14,139.139 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:41:14,141.141 INFO    ] No camera update needed
[2026-08-31 16:41:14,144.144 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:41:14,146.146 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:41:14,151.151 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:41:14,156.156 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:41:16,197.197 INFO    ] ================================================
[2026-08-31 16:41:16,213.213 INFO    ] Launching Daemon at Mon Aug 31 16:41:16 IST 2026
[2026-08-31 16:41:16,223.223 INFO    ] ================================================
[2026-08-31 16:41:16,793.793 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:41:16
[2026-08-31 16:41:17,374.374 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:41:17,646.646 INFO    ] Initializing speech engine...
[2026-08-31 16:41:17,655.655 INFO    ] 2026-08-31 16:41:17
[2026-08-31 16:41:17,902.902 INFO    ] 2026-08-31 16:41:17
[2026-08-31 16:41:17,937.937 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:41:18,129.129 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:41:18,153.153 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:41:18,331.331 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:41:18,402.402 INFO    ] time= 31/08/2026 16:41:18
[2026-08-31 16:41:18,458.458 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:41:18,464.464 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:41:18,605.605 INFO    ] No existing commands found in stream
[2026-08-31 16:41:23,620.620 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:41:23,622.622 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-08-31 16:41:25,096.096 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 16:41:25,100.100 INFO    ] Checking for system updates...
[2026-08-31 16:41:25,137.137 INFO    ] 200
[2026-08-31 16:41:25,140.140 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:41:25,194.194 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:41:25,196.196 INFO    ] No update needed
[2026-08-31 16:41:25,199.199 INFO    ] Checking for camera pi updates...
[2026-08-31 16:41:25,238.238 INFO    ] 200
[2026-08-31 16:41:25,241.241 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:41:25,289.289 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:41:25,467.467 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:41:25,470.470 INFO    ] No camera update needed
[2026-08-31 16:41:25,473.473 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:41:25,475.475 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:41:25,481.481 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:41:25,487.487 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:41:27,529.529 INFO    ] ================================================
[2026-08-31 16:41:27,544.544 INFO    ] Launching Daemon at Mon Aug 31 16:41:27 IST 2026
[2026-08-31 16:41:27,555.555 INFO    ] ================================================
[2026-08-31 16:41:28,206.206 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:41:28
[2026-08-31 16:41:28,874.874 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:41:29,177.177 INFO    ] Initializing speech engine...
[2026-08-31 16:41:29,191.191 INFO    ] 2026-08-31 16:41:29
[2026-08-31 16:41:29,501.501 INFO    ] 2026-08-31 16:41:29
[2026-08-31 16:41:29,586.586 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:41:29,801.801 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:41:29,808.808 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:41:30,000.000 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:41:30,007.007 INFO    ] time= 31/08/2026 16:41:30
[2026-08-31 16:41:30,028.028 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:41:30,058.058 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:41:30,162.162 INFO    ] No existing commands found in stream
[2026-08-31 16:41:35,193.193 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:41:35,196.196 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-08-31 16:41:38,900.900 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 16:41:38,903.903 INFO    ] Checking for system updates...
[2026-08-31 16:41:38,944.944 INFO    ] 200
[2026-08-31 16:41:38,947.947 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:41:39,001.001 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:41:39,004.004 INFO    ] No update needed
[2026-08-31 16:41:39,006.006 INFO    ] Checking for camera pi updates...
[2026-08-31 16:41:39,045.045 INFO    ] 200
[2026-08-31 16:41:39,048.048 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:41:39,090.090 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:41:39,170.170 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:41:39,173.173 INFO    ] No camera update needed
[2026-08-31 16:41:39,175.175 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:41:39,178.178 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:41:39,184.184 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:41:39,190.190 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:41:41,231.231 INFO    ] ================================================
[2026-08-31 16:41:41,246.246 INFO    ] Launching Daemon at Mon Aug 31 16:41:41 IST 2026
[2026-08-31 16:41:41,257.257 INFO    ] ================================================
[2026-08-31 16:41:41,907.907 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:41:41
[2026-08-31 16:41:42,576.576 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:41:42,882.882 INFO    ] Initializing speech engine...
[2026-08-31 16:41:42,901.901 INFO    ] 2026-08-31 16:41:42
[2026-08-31 16:41:43,166.166 INFO    ] 2026-08-31 16:41:43
[2026-08-31 16:41:43,201.201 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:41:43,416.416 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:41:43,444.444 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:41:43,644.644 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:41:43,648.648 INFO    ] time= 31/08/2026 16:41:43
[2026-08-31 16:41:43,675.675 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:41:43,734.734 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:41:43,918.918 INFO    ] No existing commands found in stream
[2026-08-31 16:41:48,939.939 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:41:48,941.941 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-08-31 16:41:52,444.444 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 16:41:52,447.447 INFO    ] Checking for system updates...
[2026-08-31 16:41:52,484.484 INFO    ] 200
[2026-08-31 16:41:52,486.486 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:41:52,547.547 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:41:52,550.550 INFO    ] No update needed
[2026-08-31 16:41:52,553.553 INFO    ] Checking for camera pi updates...
[2026-08-31 16:41:52,591.591 INFO    ] 200
[2026-08-31 16:41:52,594.594 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:41:52,640.640 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:41:52,722.722 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:41:52,725.725 INFO    ] No camera update needed
[2026-08-31 16:41:52,727.727 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:41:52,730.730 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:41:52,736.736 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:41:52,742.742 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:41:54,782.782 INFO    ] ================================================
[2026-08-31 16:41:54,798.798 INFO    ] Launching Daemon at Mon Aug 31 16:41:54 IST 2026
[2026-08-31 16:41:54,809.809 INFO    ] ================================================
[2026-08-31 16:41:55,454.454 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:41:55
[2026-08-31 16:41:56,118.118 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:41:56,419.419 INFO    ] Initializing speech engine...
[2026-08-31 16:41:56,429.429 INFO    ] 2026-08-31 16:41:56
[2026-08-31 16:41:56,700.700 INFO    ] 2026-08-31 16:41:56
[2026-08-31 16:41:56,757.757 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:41:56,995.995 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:41:57,017.017 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:41:57,210.210 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:41:57,263.263 INFO    ] time= 31/08/2026 16:41:57
[2026-08-31 16:41:57,270.270 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:41:57,289.289 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:41:57,417.417 INFO    ] No existing commands found in stream
[2026-08-31 16:42:02,436.436 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:42:02,441.441 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-08-31 16:42:05,895.895 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 16:42:05,898.898 INFO    ] Checking for system updates...
[2026-08-31 16:42:05,936.936 INFO    ] 200
[2026-08-31 16:42:05,939.939 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:42:05,991.991 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:42:05,994.994 INFO    ] No update needed
[2026-08-31 16:42:05,997.997 INFO    ] Checking for camera pi updates...
[2026-08-31 16:42:06,042.042 INFO    ] 200
[2026-08-31 16:42:06,044.044 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:42:06,094.094 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:42:06,201.201 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:42:06,204.204 INFO    ] No camera update needed
[2026-08-31 16:42:06,206.206 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:42:06,208.208 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:42:06,214.214 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:42:06,219.219 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:42:08,260.260 INFO    ] ================================================
[2026-08-31 16:42:08,275.275 INFO    ] Launching Daemon at Mon Aug 31 16:42:08 IST 2026
[2026-08-31 16:42:08,286.286 INFO    ] ================================================
[2026-08-31 16:42:08,850.850 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:42:08
[2026-08-31 16:42:09,432.432 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:42:09,725.725 INFO    ] Initializing speech engine...
[2026-08-31 16:42:09,737.737 INFO    ] 2026-08-31 16:42:09
[2026-08-31 16:42:10,047.047 INFO    ] 2026-08-31 16:42:10
[2026-08-31 16:42:10,129.129 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:42:10,340.340 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:42:10,349.349 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:42:10,544.544 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:42:10,562.562 INFO    ] time= 31/08/2026 16:42:10
[2026-08-31 16:42:10,572.572 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:42:10,600.600 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:42:10,723.723 INFO    ] No existing commands found in stream
[2026-08-31 16:42:15,749.749 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:42:15,752.752 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-08-31 16:42:17,818.818 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 16:42:17,821.821 INFO    ] Checking for system updates...
[2026-08-31 16:42:17,857.857 INFO    ] 200
[2026-08-31 16:42:17,860.860 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:42:17,914.914 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:42:17,916.916 INFO    ] No update needed
[2026-08-31 16:42:17,919.919 INFO    ] Checking for camera pi updates...
[2026-08-31 16:42:17,954.954 INFO    ] 200
[2026-08-31 16:42:17,957.957 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:42:17,999.999 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:42:18,093.093 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:42:18,095.095 INFO    ] No camera update needed
[2026-08-31 16:42:18,098.098 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:42:18,100.100 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:42:18,106.106 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:42:18,111.111 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:42:20,150.150 INFO    ] ================================================
[2026-08-31 16:42:20,166.166 INFO    ] Launching Daemon at Mon Aug 31 16:42:20 IST 2026
[2026-08-31 16:42:20,177.177 INFO    ] ================================================
[2026-08-31 16:42:20,756.756 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:42:20
[2026-08-31 16:42:21,338.338 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:42:21,586.586 INFO    ] Initializing speech engine...
[2026-08-31 16:42:21,595.595 INFO    ] 2026-08-31 16:42:21
[2026-08-31 16:42:21,874.874 INFO    ] 2026-08-31 16:42:21
[2026-08-31 16:42:21,909.909 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:42:22,085.085 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:42:22,097.097 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:42:22,245.245 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:42:22,250.250 INFO    ] time= 31/08/2026 16:42:22
[2026-08-31 16:42:22,256.256 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:42:22,307.307 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:42:22,433.433 INFO    ] No existing commands found in stream
[2026-08-31 16:42:27,444.444 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:42:27,447.447 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-08-31 16:42:28,009.009 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 16:42:28,012.012 INFO    ] Checking for system updates...
[2026-08-31 16:42:28,049.049 INFO    ] 200
[2026-08-31 16:42:28,051.051 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:42:28,103.103 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:42:28,106.106 INFO    ] No update needed
[2026-08-31 16:42:28,108.108 INFO    ] Checking for camera pi updates...
[2026-08-31 16:42:28,142.142 INFO    ] 200
[2026-08-31 16:42:28,144.144 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:42:28,189.189 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:42:28,272.272 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:42:28,274.274 INFO    ] No camera update needed
[2026-08-31 16:42:28,276.276 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:42:28,279.279 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:42:28,284.284 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:42:28,289.289 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:42:30,329.329 INFO    ] ================================================
[2026-08-31 16:42:30,344.344 INFO    ] Launching Daemon at Mon Aug 31 16:42:30 IST 2026
[2026-08-31 16:42:30,355.355 INFO    ] ================================================
[2026-08-31 16:42:30,931.931 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:42:30
[2026-08-31 16:42:31,568.568 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:42:31,854.854 INFO    ] Initializing speech engine...
[2026-08-31 16:42:31,869.869 INFO    ] 2026-08-31 16:42:31
[2026-08-31 16:42:32,170.170 INFO    ] 2026-08-31 16:42:32
[2026-08-31 16:42:32,220.220 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:42:32,440.440 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:42:32,459.459 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:42:32,613.613 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:42:32,621.621 INFO    ] time= 31/08/2026 16:42:32
[2026-08-31 16:42:32,626.626 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:42:32,632.632 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:42:32,772.772 INFO    ] No existing commands found in stream
[2026-08-31 16:42:37,807.807 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:42:37,810.810 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-08-31 16:42:38,490.490 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 16:42:38,493.493 INFO    ] Checking for system updates...
[2026-08-31 16:42:38,529.529 INFO    ] 200
[2026-08-31 16:42:38,532.532 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:42:38,586.586 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:42:38,589.589 INFO    ] No update needed
[2026-08-31 16:42:38,591.591 INFO    ] Checking for camera pi updates...
[2026-08-31 16:42:38,631.631 INFO    ] 200
[2026-08-31 16:42:38,634.634 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:42:38,674.674 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:42:38,761.761 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:42:38,764.764 INFO    ] No camera update needed
[2026-08-31 16:42:38,766.766 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:42:38,768.768 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:42:38,774.774 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:42:38,779.779 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:42:40,818.818 INFO    ] ================================================
[2026-08-31 16:42:40,833.833 INFO    ] Launching Daemon at Mon Aug 31 16:42:40 IST 2026
[2026-08-31 16:42:40,844.844 INFO    ] ================================================
[2026-08-31 16:42:41,409.409 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:42:41
[2026-08-31 16:42:41,989.989 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:42:42,258.258 INFO    ] Initializing speech engine...
[2026-08-31 16:42:42,267.267 INFO    ] 2026-08-31 16:42:42
[2026-08-31 16:42:42,514.514 INFO    ] 2026-08-31 16:42:42
[2026-08-31 16:42:42,554.554 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:42:42,762.762 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:42:42,765.765 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:42:42,942.942 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:42:42,985.985 INFO    ] time= 31/08/2026 16:42:42
[2026-08-31 16:42:43,039.039 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:42:43,087.087 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:42:43,243.243 INFO    ] No existing commands found in stream
[2026-08-31 16:42:48,262.262 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:42:48,265.265 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-08-31 16:42:50,642.642 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 16:42:50,645.645 INFO    ] Checking for system updates...
[2026-08-31 16:42:50,684.684 INFO    ] 200
[2026-08-31 16:42:50,686.686 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:42:50,738.738 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:42:50,741.741 INFO    ] No update needed
[2026-08-31 16:42:50,743.743 INFO    ] Checking for camera pi updates...
[2026-08-31 16:42:50,776.776 INFO    ] 200
[2026-08-31 16:42:50,779.779 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:42:50,820.820 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:42:50,900.900 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:42:50,902.902 INFO    ] No camera update needed
[2026-08-31 16:42:50,904.904 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:42:50,907.907 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:42:50,912.912 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:42:50,917.917 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:42:52,959.959 INFO    ] ================================================
[2026-08-31 16:42:52,974.974 INFO    ] Launching Daemon at Mon Aug 31 16:42:52 IST 2026
[2026-08-31 16:42:52,985.985 INFO    ] ================================================
[2026-08-31 16:42:53,550.550 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:42:53
[2026-08-31 16:42:54,130.130 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:42:54,381.381 INFO    ] Initializing speech engine...
[2026-08-31 16:42:54,389.389 INFO    ] 2026-08-31 16:42:54
[2026-08-31 16:42:54,678.678 INFO    ] 2026-08-31 16:42:54
[2026-08-31 16:42:54,716.716 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:42:54,933.933 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:42:54,981.981 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:42:55,159.159 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:42:55,198.198 INFO    ] time= 31/08/2026 16:42:55
[2026-08-31 16:42:55,243.243 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:42:55,292.292 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:42:55,362.362 INFO    ] No existing commands found in stream
[2026-08-31 16:43:00,374.374 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:43:00,377.377 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-08-31 16:43:01,972.972 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 16:43:01,975.975 INFO    ] Checking for system updates...
[2026-08-31 16:43:02,019.019 INFO    ] 200
[2026-08-31 16:43:02,022.022 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:43:02,082.082 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:43:02,085.085 INFO    ] No update needed
[2026-08-31 16:43:02,088.088 INFO    ] Checking for camera pi updates...
[2026-08-31 16:43:02,133.133 INFO    ] 200
[2026-08-31 16:43:02,136.136 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:43:02,182.182 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:43:02,304.304 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:43:02,307.307 INFO    ] No camera update needed
[2026-08-31 16:43:02,310.310 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:43:02,313.313 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:43:02,319.319 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:43:02,325.325 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:43:04,364.364 INFO    ] ================================================
[2026-08-31 16:43:04,380.380 INFO    ] Launching Daemon at Mon Aug 31 16:43:04 IST 2026
[2026-08-31 16:43:04,390.390 INFO    ] ================================================
[2026-08-31 16:43:04,994.994 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:43:04
[2026-08-31 16:43:05,652.652 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:43:05,954.954 INFO    ] Initializing speech engine...
[2026-08-31 16:43:05,968.968 INFO    ] 2026-08-31 16:43:05
[2026-08-31 16:43:06,262.262 INFO    ] 2026-08-31 16:43:06
[2026-08-31 16:43:06,306.306 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:43:06,557.557 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:43:06,563.563 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:43:06,773.773 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:43:06,801.801 INFO    ] time= 31/08/2026 16:43:06
[2026-08-31 16:43:06,818.818 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:43:06,838.838 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:43:07,000.000 INFO    ] No existing commands found in stream
[2026-08-31 16:43:12,031.031 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:43:12,034.034 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-08-31 16:43:15,627.627 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 16:43:15,630.630 INFO    ] Checking for system updates...
[2026-08-31 16:43:15,666.666 INFO    ] 200
[2026-08-31 16:43:15,669.669 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:43:15,720.720 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:43:15,723.723 INFO    ] No update needed
[2026-08-31 16:43:15,725.725 INFO    ] Checking for camera pi updates...
[2026-08-31 16:43:15,761.761 INFO    ] 200
[2026-08-31 16:43:15,764.764 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:43:15,808.808 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:43:15,863.863 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:43:15,866.866 INFO    ] No camera update needed
[2026-08-31 16:43:15,868.868 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:43:15,871.871 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:43:15,876.876 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:43:15,881.881 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:43:17,922.922 INFO    ] ================================================
[2026-08-31 16:43:17,936.936 INFO    ] Launching Daemon at Mon Aug 31 16:43:17 IST 2026
[2026-08-31 16:43:17,947.947 INFO    ] ================================================
[2026-08-31 16:43:18,521.521 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:43:18
[2026-08-31 16:43:19,105.105 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:43:19,358.358 INFO    ] Initializing speech engine...
[2026-08-31 16:43:19,373.373 INFO    ] 2026-08-31 16:43:19
[2026-08-31 16:43:19,641.641 INFO    ] 2026-08-31 16:43:19
[2026-08-31 16:43:19,675.675 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:43:19,876.876 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:43:19,935.935 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:43:20,079.079 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:43:20,128.128 INFO    ] time= 31/08/2026 16:43:20
[2026-08-31 16:43:20,193.193 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:43:20,215.215 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:43:20,348.348 INFO    ] No existing commands found in stream
[2026-08-31 16:43:25,371.371 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:43:25,373.373 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-08-31 16:43:26,343.343 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 16:43:26,345.345 INFO    ] Checking for system updates...
[2026-08-31 16:43:26,385.385 INFO    ] 200
[2026-08-31 16:43:26,388.388 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:43:26,440.440 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:43:26,442.442 INFO    ] No update needed
[2026-08-31 16:43:26,445.445 INFO    ] Checking for camera pi updates...
[2026-08-31 16:43:26,479.479 INFO    ] 200
[2026-08-31 16:43:26,481.481 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:43:26,527.527 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:43:26,703.703 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:43:26,705.705 INFO    ] No camera update needed
[2026-08-31 16:43:26,708.708 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:43:26,710.710 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:43:26,715.715 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:43:26,720.720 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:43:28,760.760 INFO    ] ================================================
[2026-08-31 16:43:28,775.775 INFO    ] Launching Daemon at Mon Aug 31 16:43:28 IST 2026
[2026-08-31 16:43:28,786.786 INFO    ] ================================================
[2026-08-31 16:43:29,352.352 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:43:29
[2026-08-31 16:43:29,934.934 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:43:30,186.186 INFO    ] Initializing speech engine...
[2026-08-31 16:43:30,194.194 INFO    ] 2026-08-31 16:43:30
[2026-08-31 16:43:30,495.495 INFO    ] 2026-08-31 16:43:30
[2026-08-31 16:43:30,521.521 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:43:30,731.731 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:43:30,745.745 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:43:30,911.911 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:43:30,916.916 INFO    ] time= 31/08/2026 16:43:30
[2026-08-31 16:43:30,923.923 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:43:30,951.951 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:43:31,099.099 INFO    ] No existing commands found in stream
[2026-08-31 16:43:36,130.130 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:43:36,132.132 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-08-31 16:43:39,439.439 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 16:43:39,442.442 INFO    ] Checking for system updates...
[2026-08-31 16:43:39,482.482 INFO    ] 200
[2026-08-31 16:43:39,485.485 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:43:39,537.537 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:43:39,539.539 INFO    ] No update needed
[2026-08-31 16:43:39,542.542 INFO    ] Checking for camera pi updates...
[2026-08-31 16:43:39,580.580 INFO    ] 200
[2026-08-31 16:43:39,582.582 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:43:39,627.627 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:43:39,706.706 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:43:39,709.709 INFO    ] No camera update needed
[2026-08-31 16:43:39,711.711 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:43:39,713.713 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:43:39,719.719 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:43:39,724.724 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:43:41,764.764 INFO    ] ================================================
[2026-08-31 16:43:41,779.779 INFO    ] Launching Daemon at Mon Aug 31 16:43:41 IST 2026
[2026-08-31 16:43:41,790.790 INFO    ] ================================================
[2026-08-31 16:43:42,361.361 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:43:42
[2026-08-31 16:43:42,947.947 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:43:43,199.199 INFO    ] Initializing speech engine...
[2026-08-31 16:43:43,206.206 INFO    ] 2026-08-31 16:43:43
[2026-08-31 16:43:43,505.505 INFO    ] 2026-08-31 16:43:43
[2026-08-31 16:43:43,540.540 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:43:43,739.739 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:43:43,754.754 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:43:43,918.918 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:43:43,923.923 INFO    ] time= 31/08/2026 16:43:43
[2026-08-31 16:43:43,929.929 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:43:43,935.935 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:43:44,086.086 INFO    ] No existing commands found in stream
[2026-08-31 16:43:49,112.112 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:43:49,114.114 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-08-31 16:43:50,849.849 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 16:43:50,852.852 INFO    ] Checking for system updates...
[2026-08-31 16:43:50,891.891 INFO    ] 200
[2026-08-31 16:43:50,893.893 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:43:50,945.945 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:43:50,948.948 INFO    ] No update needed
[2026-08-31 16:43:50,951.951 INFO    ] Checking for camera pi updates...
[2026-08-31 16:43:50,983.983 INFO    ] 200
[2026-08-31 16:43:50,986.986 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:43:51,032.032 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:43:51,124.124 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:43:51,126.126 INFO    ] No camera update needed
[2026-08-31 16:43:51,129.129 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:43:51,131.131 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:43:51,136.136 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:43:51,141.141 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:43:53,183.183 INFO    ] ================================================
[2026-08-31 16:43:53,198.198 INFO    ] Launching Daemon at Mon Aug 31 16:43:53 IST 2026
[2026-08-31 16:43:53,210.210 INFO    ] ================================================
[2026-08-31 16:43:53,801.801 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:43:53
[2026-08-31 16:43:54,406.406 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:43:54,685.685 INFO    ] Initializing speech engine...
[2026-08-31 16:43:54,693.693 INFO    ] 2026-08-31 16:43:54
[2026-08-31 16:43:54,953.953 INFO    ] 2026-08-31 16:43:54
[2026-08-31 16:43:54,983.983 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:43:55,230.230 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:43:55,239.239 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:43:55,460.460 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:43:55,496.496 INFO    ] time= 31/08/2026 16:43:55
[2026-08-31 16:43:55,503.503 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:43:55,523.523 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:43:55,648.648 INFO    ] No existing commands found in stream
[2026-08-31 16:44:00,660.660 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:44:00,662.662 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-08-31 16:44:02,879.879 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 16:44:02,882.882 INFO    ] Checking for system updates...
[2026-08-31 16:44:02,919.919 INFO    ] 200
[2026-08-31 16:44:02,923.923 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:44:02,985.985 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:44:02,988.988 INFO    ] No update needed
[2026-08-31 16:44:02,991.991 INFO    ] Checking for camera pi updates...
[2026-08-31 16:44:03,028.028 INFO    ] 200
[2026-08-31 16:44:03,031.031 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:44:03,086.086 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:44:03,157.157 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:44:03,160.160 INFO    ] No camera update needed
[2026-08-31 16:44:03,162.162 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:44:03,165.165 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:44:03,170.170 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:44:03,175.175 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:44:05,217.217 INFO    ] ================================================
[2026-08-31 16:44:05,234.234 INFO    ] Launching Daemon at Mon Aug 31 16:44:05 IST 2026
[2026-08-31 16:44:05,245.245 INFO    ] ================================================
[2026-08-31 16:44:05,892.892 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:44:05
[2026-08-31 16:44:06,545.545 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:44:06,846.846 INFO    ] Initializing speech engine...
[2026-08-31 16:44:06,860.860 INFO    ] 2026-08-31 16:44:06
[2026-08-31 16:44:07,169.169 INFO    ] 2026-08-31 16:44:07
[2026-08-31 16:44:07,254.254 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:44:07,435.435 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:44:07,452.452 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:44:07,660.660 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:44:07,676.676 INFO    ] time= 31/08/2026 16:44:07
[2026-08-31 16:44:07,695.695 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:44:07,724.724 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:44:07,832.832 INFO    ] No existing commands found in stream
[2026-08-31 16:44:12,850.850 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:44:12,853.853 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-08-31 16:44:14,819.819 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 16:44:14,822.822 INFO    ] Checking for system updates...
[2026-08-31 16:44:14,863.863 INFO    ] 200
[2026-08-31 16:44:14,866.866 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:44:14,926.926 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:44:14,929.929 INFO    ] No update needed
[2026-08-31 16:44:14,932.932 INFO    ] Checking for camera pi updates...
[2026-08-31 16:44:14,970.970 INFO    ] 200
[2026-08-31 16:44:14,973.973 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:44:15,014.014 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:44:15,096.096 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:44:15,099.099 INFO    ] No camera update needed
[2026-08-31 16:44:15,102.102 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:44:15,104.104 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:44:15,111.111 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:44:15,116.116 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:44:17,157.157 INFO    ] ================================================
[2026-08-31 16:44:17,172.172 INFO    ] Launching Daemon at Mon Aug 31 16:44:17 IST 2026
[2026-08-31 16:44:17,183.183 INFO    ] ================================================
[2026-08-31 16:44:17,753.753 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:44:17
[2026-08-31 16:44:18,342.342 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:44:18,597.597 INFO    ] Initializing speech engine...
[2026-08-31 16:44:18,606.606 INFO    ] 2026-08-31 16:44:18
[2026-08-31 16:44:18,903.903 INFO    ] 2026-08-31 16:44:18
[2026-08-31 16:44:18,937.937 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:44:19,139.139 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:44:19,154.154 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:44:19,323.323 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:44:19,331.331 INFO    ] time= 31/08/2026 16:44:19
[2026-08-31 16:44:19,383.383 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:44:19,406.406 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:44:19,527.527 INFO    ] No existing commands found in stream
[2026-08-31 16:44:24,552.552 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:44:24,555.555 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-08-31 16:44:28,946.946 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 16:44:28,949.949 INFO    ] Checking for system updates...
[2026-08-31 16:44:28,988.988 INFO    ] 200
[2026-08-31 16:44:28,990.990 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:44:29,049.049 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:44:29,051.051 INFO    ] No update needed
[2026-08-31 16:44:29,054.054 INFO    ] Checking for camera pi updates...
[2026-08-31 16:44:29,091.091 INFO    ] 200
[2026-08-31 16:44:29,093.093 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:44:29,138.138 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:44:29,222.222 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:44:29,224.224 INFO    ] No camera update needed
[2026-08-31 16:44:29,226.226 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:44:29,229.229 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:44:29,234.234 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:44:29,239.239 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:44:31,290.290 INFO    ] ================================================
[2026-08-31 16:44:31,307.307 INFO    ] Launching Daemon at Mon Aug 31 16:44:31 IST 2026
[2026-08-31 16:44:31,319.319 INFO    ] ================================================
[2026-08-31 16:44:31,924.924 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:44:31
[2026-08-31 16:44:32,548.548 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:44:32,816.816 INFO    ] Initializing speech engine...
[2026-08-31 16:44:32,825.825 INFO    ] 2026-08-31 16:44:32
[2026-08-31 16:44:33,072.072 INFO    ] 2026-08-31 16:44:33
[2026-08-31 16:44:33,106.106 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:44:33,299.299 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:44:33,344.344 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:44:33,499.499 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:44:33,547.547 INFO    ] time= 31/08/2026 16:44:33
[2026-08-31 16:44:33,601.601 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:44:33,632.632 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:44:33,767.767 INFO    ] No existing commands found in stream
[2026-08-31 16:44:38,793.793 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:44:38,796.796 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-08-31 16:44:41,002.002 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 16:44:41,004.004 INFO    ] Checking for system updates...
[2026-08-31 16:44:41,044.044 INFO    ] 200
[2026-08-31 16:44:41,046.046 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:44:41,098.098 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:44:41,101.101 INFO    ] No update needed
[2026-08-31 16:44:41,103.103 INFO    ] Checking for camera pi updates...
[2026-08-31 16:44:41,136.136 INFO    ] 200
[2026-08-31 16:44:41,139.139 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:44:41,184.184 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:44:41,266.266 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:44:41,268.268 INFO    ] No camera update needed
[2026-08-31 16:44:41,270.270 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:44:41,273.273 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:44:41,278.278 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:44:41,283.283 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:44:43,326.326 INFO    ] ================================================
[2026-08-31 16:44:43,341.341 INFO    ] Launching Daemon at Mon Aug 31 16:44:43 IST 2026
[2026-08-31 16:44:43,352.352 INFO    ] ================================================
[2026-08-31 16:44:43,999.999 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:44:43
[2026-08-31 16:44:44,666.666 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:44:44,972.972 INFO    ] Initializing speech engine...
[2026-08-31 16:44:44,984.984 INFO    ] 2026-08-31 16:44:44
[2026-08-31 16:44:45,251.251 INFO    ] 2026-08-31 16:44:45
[2026-08-31 16:44:45,306.306 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:44:45,653.653 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:44:45,680.680 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:44:45,917.917 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:44:45,953.953 INFO    ] time= 31/08/2026 16:44:45
[2026-08-31 16:44:45,993.993 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:44:46,050.050 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:44:46,184.184 INFO    ] No existing commands found in stream
[2026-08-31 16:44:51,208.208 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:44:51,211.211 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-08-31 16:44:55,177.177 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 16:44:55,179.179 INFO    ] Checking for system updates...
[2026-08-31 16:44:55,215.215 INFO    ] 200
[2026-08-31 16:44:55,218.218 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:44:55,272.272 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:44:55,275.275 INFO    ] No update needed
[2026-08-31 16:44:55,277.277 INFO    ] Checking for camera pi updates...
[2026-08-31 16:44:55,310.310 INFO    ] 200
[2026-08-31 16:44:55,313.313 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:44:55,362.362 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:44:55,469.469 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:44:55,471.471 INFO    ] No camera update needed
[2026-08-31 16:44:55,474.474 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:44:55,476.476 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:44:55,481.481 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:44:55,486.486 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:44:57,528.528 INFO    ] ================================================
[2026-08-31 16:44:57,543.543 INFO    ] Launching Daemon at Mon Aug 31 16:44:57 IST 2026
[2026-08-31 16:44:57,554.554 INFO    ] ================================================
[2026-08-31 16:44:58,120.120 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:44:58
[2026-08-31 16:44:58,703.703 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:44:58,963.963 INFO    ] Initializing speech engine...
[2026-08-31 16:44:58,965.965 INFO    ] 2026-08-31 16:44:58
[2026-08-31 16:44:59,226.226 INFO    ] 2026-08-31 16:44:59
[2026-08-31 16:44:59,263.263 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:44:59,439.439 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:44:59,452.452 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:44:59,612.612 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:44:59,669.669 INFO    ] time= 31/08/2026 16:44:59
[2026-08-31 16:44:59,674.674 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:44:59,713.713 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:44:59,809.809 INFO    ] No existing commands found in stream
[2026-08-31 16:45:04,831.831 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:45:04,834.834 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-08-31 16:45:05,521.521 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 16:45:05,524.524 INFO    ] Checking for system updates...
[2026-08-31 16:45:05,563.563 INFO    ] 200
[2026-08-31 16:45:05,566.566 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:45:05,618.618 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:45:05,620.620 INFO    ] No update needed
[2026-08-31 16:45:05,623.623 INFO    ] Checking for camera pi updates...
[2026-08-31 16:45:05,656.656 INFO    ] 200
[2026-08-31 16:45:05,658.658 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:45:05,704.704 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:45:05,803.803 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:45:05,805.805 INFO    ] No camera update needed
[2026-08-31 16:45:05,808.808 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:45:05,810.810 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:45:05,815.815 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:45:05,820.820 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:45:07,863.863 INFO    ] ================================================
[2026-08-31 16:45:07,878.878 INFO    ] Launching Daemon at Mon Aug 31 16:45:07 IST 2026
[2026-08-31 16:45:07,889.889 INFO    ] ================================================
[2026-08-31 16:45:08,452.452 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:45:08
[2026-08-31 16:45:09,035.035 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:45:09,296.296 INFO    ] Initializing speech engine...
[2026-08-31 16:45:09,314.314 INFO    ] 2026-08-31 16:45:09
[2026-08-31 16:45:09,565.565 INFO    ] 2026-08-31 16:45:09
[2026-08-31 16:45:09,601.601 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:45:09,858.858 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:45:09,868.868 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:45:10,002.002 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:45:10,050.050 INFO    ] time= 31/08/2026 16:45:10
[2026-08-31 16:45:10,114.114 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:45:10,140.140 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:45:10,276.276 INFO    ] No existing commands found in stream
[2026-08-31 16:45:15,299.299 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:45:15,302.302 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-08-31 16:45:17,060.060 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 16:45:17,062.062 INFO    ] Checking for system updates...
[2026-08-31 16:45:17,102.102 INFO    ] 200
[2026-08-31 16:45:17,105.105 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:45:17,163.163 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:45:17,165.165 INFO    ] No update needed
[2026-08-31 16:45:17,168.168 INFO    ] Checking for camera pi updates...
[2026-08-31 16:45:17,206.206 INFO    ] 200
[2026-08-31 16:45:17,209.209 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:45:17,254.254 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:45:17,361.361 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:45:17,364.364 INFO    ] No camera update needed
[2026-08-31 16:45:17,366.366 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:45:17,369.369 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:45:17,375.375 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:45:17,381.381 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:45:19,428.428 INFO    ] ================================================
[2026-08-31 16:45:19,444.444 INFO    ] Launching Daemon at Mon Aug 31 16:45:19 IST 2026
[2026-08-31 16:45:19,454.454 INFO    ] ================================================
[2026-08-31 16:45:20,019.019 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:45:20
[2026-08-31 16:45:20,603.603 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:45:20,875.875 INFO    ] Initializing speech engine...
[2026-08-31 16:45:20,883.883 INFO    ] 2026-08-31 16:45:20
[2026-08-31 16:45:21,147.147 INFO    ] 2026-08-31 16:45:21
[2026-08-31 16:45:21,204.204 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:45:21,376.376 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:45:21,434.434 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:45:21,576.576 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:45:21,624.624 INFO    ] time= 31/08/2026 16:45:21
[2026-08-31 16:45:21,678.678 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:45:21,712.712 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:45:21,839.839 INFO    ] No existing commands found in stream
[2026-08-31 16:45:26,864.864 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:45:26,867.867 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-08-31 16:45:28,641.641 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 16:45:28,644.644 INFO    ] Checking for system updates...
[2026-08-31 16:45:28,683.683 INFO    ] 200
[2026-08-31 16:45:28,685.685 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:45:28,744.744 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:45:28,747.747 INFO    ] No update needed
[2026-08-31 16:45:28,749.749 INFO    ] Checking for camera pi updates...
[2026-08-31 16:45:28,784.784 INFO    ] 200
[2026-08-31 16:45:28,786.786 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:45:28,833.833 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:45:29,019.019 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:45:29,022.022 INFO    ] No camera update needed
[2026-08-31 16:45:29,025.025 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:45:29,028.028 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:45:29,035.035 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:45:29,041.041 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:45:31,083.083 INFO    ] ================================================
[2026-08-31 16:45:31,098.098 INFO    ] Launching Daemon at Mon Aug 31 16:45:31 IST 2026
[2026-08-31 16:45:31,108.108 INFO    ] ================================================
[2026-08-31 16:45:31,688.688 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:45:31
[2026-08-31 16:45:32,326.326 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:45:32,616.616 INFO    ] Initializing speech engine...
[2026-08-31 16:45:32,635.635 INFO    ] 2026-08-31 16:45:32
[2026-08-31 16:45:32,928.928 INFO    ] 2026-08-31 16:45:32
[2026-08-31 16:45:32,974.974 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:45:33,221.221 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:45:33,227.227 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:45:33,361.361 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:45:33,420.420 INFO    ] time= 31/08/2026 16:45:33
[2026-08-31 16:45:33,469.469 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:45:33,492.492 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:45:33,611.611 INFO    ] No existing commands found in stream
[2026-08-31 16:45:38,642.642 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:45:38,644.644 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-08-31 16:45:39,537.537 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 16:45:39,539.539 INFO    ] Checking for system updates...
[2026-08-31 16:45:39,575.575 INFO    ] 200
[2026-08-31 16:45:39,577.577 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:45:39,637.637 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:45:39,639.639 INFO    ] No update needed
[2026-08-31 16:45:39,642.642 INFO    ] Checking for camera pi updates...
[2026-08-31 16:45:39,675.675 INFO    ] 200
[2026-08-31 16:45:39,677.677 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:45:39,718.718 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:45:39,799.799 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:45:39,801.801 INFO    ] No camera update needed
[2026-08-31 16:45:39,803.803 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:45:39,806.806 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:45:39,811.811 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:45:39,816.816 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:45:41,858.858 INFO    ] ================================================
[2026-08-31 16:45:41,873.873 INFO    ] Launching Daemon at Mon Aug 31 16:45:41 IST 2026
[2026-08-31 16:45:41,884.884 INFO    ] ================================================
[2026-08-31 16:45:42,446.446 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:45:42
[2026-08-31 16:45:43,028.028 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:45:43,288.288 INFO    ] Initializing speech engine...
[2026-08-31 16:45:43,306.306 INFO    ] 2026-08-31 16:45:43
[2026-08-31 16:45:43,556.556 INFO    ] 2026-08-31 16:45:43
[2026-08-31 16:45:43,591.591 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:45:43,848.848 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:45:43,857.857 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:45:43,994.994 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:45:44,058.058 INFO    ] time= 31/08/2026 16:45:44
[2026-08-31 16:45:44,123.123 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:45:44,130.130 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:45:44,275.275 INFO    ] No existing commands found in stream
[2026-08-31 16:45:49,290.290 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:45:49,293.293 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-08-31 16:45:53,464.464 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 16:45:53,467.467 INFO    ] Checking for system updates...
[2026-08-31 16:45:53,503.503 INFO    ] 200
[2026-08-31 16:45:53,506.506 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:45:53,565.565 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:45:53,568.568 INFO    ] No update needed
[2026-08-31 16:45:53,570.570 INFO    ] Checking for camera pi updates...
[2026-08-31 16:45:53,603.603 INFO    ] 200
[2026-08-31 16:45:53,605.605 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:45:53,651.651 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:45:53,731.731 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:45:53,733.733 INFO    ] No camera update needed
[2026-08-31 16:45:53,735.735 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:45:53,738.738 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:45:53,743.743 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:45:53,748.748 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:45:55,789.789 INFO    ] ================================================
[2026-08-31 16:45:55,805.805 INFO    ] Launching Daemon at Mon Aug 31 16:45:55 IST 2026
[2026-08-31 16:45:55,816.816 INFO    ] ================================================
[2026-08-31 16:45:56,391.391 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:45:56
[2026-08-31 16:45:56,971.971 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:45:57,222.222 INFO    ] Initializing speech engine...
[2026-08-31 16:45:57,245.245 INFO    ] 2026-08-31 16:45:57
[2026-08-31 16:45:57,499.499 INFO    ] 2026-08-31 16:45:57
[2026-08-31 16:45:57,541.541 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:45:57,790.790 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:45:57,799.799 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:45:58,012.012 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:45:58,065.065 INFO    ] time= 31/08/2026 16:45:58
[2026-08-31 16:45:58,071.071 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:45:58,088.088 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:45:58,219.219 INFO    ] No existing commands found in stream
[2026-08-31 16:46:03,230.230 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:46:03,233.233 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-08-31 16:46:07,049.049 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 16:46:07,052.052 INFO    ] Checking for system updates...
[2026-08-31 16:46:07,089.089 INFO    ] 200
[2026-08-31 16:46:07,092.092 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:46:07,144.144 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:46:07,146.146 INFO    ] No update needed
[2026-08-31 16:46:07,149.149 INFO    ] Checking for camera pi updates...
[2026-08-31 16:46:07,182.182 INFO    ] 200
[2026-08-31 16:46:07,184.184 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:46:07,227.227 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:46:07,302.302 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:46:07,304.304 INFO    ] No camera update needed
[2026-08-31 16:46:07,306.306 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:46:07,309.309 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:46:07,314.314 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:46:07,319.319 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:46:09,360.360 INFO    ] ================================================
[2026-08-31 16:46:09,375.375 INFO    ] Launching Daemon at Mon Aug 31 16:46:09 IST 2026
[2026-08-31 16:46:09,386.386 INFO    ] ================================================
[2026-08-31 16:46:09,953.953 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:46:09
[2026-08-31 16:46:10,539.539 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:46:10,811.811 INFO    ] Initializing speech engine...
[2026-08-31 16:46:10,831.831 INFO    ] 2026-08-31 16:46:10
[2026-08-31 16:46:11,101.101 INFO    ] 2026-08-31 16:46:11
[2026-08-31 16:46:11,165.165 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:46:11,396.396 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:46:11,402.402 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:46:11,628.628 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:46:11,666.666 INFO    ] time= 31/08/2026 16:46:11
[2026-08-31 16:46:11,682.682 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:46:11,692.692 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:46:11,821.821 INFO    ] No existing commands found in stream
[2026-08-31 16:46:16,835.835 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:46:16,838.838 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-08-31 16:46:20,412.412 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 16:46:20,415.415 INFO    ] Checking for system updates...
[2026-08-31 16:46:20,454.454 INFO    ] 200
[2026-08-31 16:46:20,456.456 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:46:20,511.511 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:46:20,514.514 INFO    ] No update needed
[2026-08-31 16:46:20,516.516 INFO    ] Checking for camera pi updates...
[2026-08-31 16:46:20,550.550 INFO    ] 200
[2026-08-31 16:46:20,553.553 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:46:20,598.598 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:46:20,678.678 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:46:20,681.681 INFO    ] No camera update needed
[2026-08-31 16:46:20,683.683 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:46:20,686.686 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:46:20,691.691 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:46:20,696.696 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:46:22,736.736 INFO    ] ================================================
[2026-08-31 16:46:22,751.751 INFO    ] Launching Daemon at Mon Aug 31 16:46:22 IST 2026
[2026-08-31 16:46:22,762.762 INFO    ] ================================================
[2026-08-31 16:46:23,340.340 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:46:23
[2026-08-31 16:46:23,935.935 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:46:24,211.211 INFO    ] Initializing speech engine...
[2026-08-31 16:46:24,219.219 INFO    ] 2026-08-31 16:46:24
[2026-08-31 16:46:24,492.492 INFO    ] 2026-08-31 16:46:24
[2026-08-31 16:46:24,535.535 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:46:24,754.754 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:46:24,762.762 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:46:24,898.898 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:46:24,953.953 INFO    ] time= 31/08/2026 16:46:24
[2026-08-31 16:46:25,007.007 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:46:25,031.031 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:46:25,161.161 INFO    ] No existing commands found in stream
[2026-08-31 16:46:30,186.186 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:46:30,189.189 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-08-31 16:46:31,690.690 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 16:46:31,693.693 INFO    ] Checking for system updates...
[2026-08-31 16:46:31,731.731 INFO    ] 200
[2026-08-31 16:46:31,734.734 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:46:31,785.785 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:46:31,788.788 INFO    ] No update needed
[2026-08-31 16:46:31,791.791 INFO    ] Checking for camera pi updates...
[2026-08-31 16:46:31,826.826 INFO    ] 200
[2026-08-31 16:46:31,829.829 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:46:31,868.868 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:46:31,976.976 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:46:31,978.978 INFO    ] No camera update needed
[2026-08-31 16:46:31,982.982 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:46:31,985.985 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:46:31,992.992 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:46:31,999.999 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:46:34,040.040 INFO    ] ================================================
[2026-08-31 16:46:34,055.055 INFO    ] Launching Daemon at Mon Aug 31 16:46:34 IST 2026
[2026-08-31 16:46:34,065.065 INFO    ] ================================================
[2026-08-31 16:46:34,633.633 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:46:34
[2026-08-31 16:46:35,218.218 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:46:35,486.486 INFO    ] Initializing speech engine...
[2026-08-31 16:46:35,495.495 INFO    ] 2026-08-31 16:46:35
[2026-08-31 16:46:35,745.745 INFO    ] 2026-08-31 16:46:35
[2026-08-31 16:46:35,779.779 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:46:35,971.971 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:46:35,984.984 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:46:36,142.142 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:46:36,147.147 INFO    ] time= 31/08/2026 16:46:36
[2026-08-31 16:46:36,153.153 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:46:36,159.159 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:46:36,295.295 INFO    ] No existing commands found in stream
[2026-08-31 16:46:41,322.322 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:46:41,325.325 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-08-31 16:46:43,460.460 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 16:46:43,462.462 INFO    ] Checking for system updates...
[2026-08-31 16:46:43,500.500 INFO    ] 200
[2026-08-31 16:46:43,502.502 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:46:43,559.559 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:46:43,561.561 INFO    ] No update needed
[2026-08-31 16:46:43,563.563 INFO    ] Checking for camera pi updates...
[2026-08-31 16:46:43,596.596 INFO    ] 200
[2026-08-31 16:46:43,599.599 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:46:43,640.640 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:46:43,722.722 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:46:43,724.724 INFO    ] No camera update needed
[2026-08-31 16:46:43,727.727 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:46:43,729.729 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:46:43,734.734 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:46:43,739.739 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:46:45,779.779 INFO    ] ================================================
[2026-08-31 16:46:45,794.794 INFO    ] Launching Daemon at Mon Aug 31 16:46:45 IST 2026
[2026-08-31 16:46:45,805.805 INFO    ] ================================================
[2026-08-31 16:46:46,428.428 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:46:46
[2026-08-31 16:46:47,066.066 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:46:47,359.359 INFO    ] Initializing speech engine...
[2026-08-31 16:46:47,367.367 INFO    ] 2026-08-31 16:46:47
[2026-08-31 16:46:47,634.634 INFO    ] 2026-08-31 16:46:47
[2026-08-31 16:46:47,691.691 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:46:47,973.973 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:46:47,982.982 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:46:48,169.169 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:46:48,184.184 INFO    ] time= 31/08/2026 16:46:48
[2026-08-31 16:46:48,201.201 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:46:48,224.224 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:46:48,338.338 INFO    ] No existing commands found in stream
[2026-08-31 16:46:53,350.350 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:46:53,353.353 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-08-31 16:46:57,849.849 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 16:46:57,852.852 INFO    ] Checking for system updates...
[2026-08-31 16:46:57,889.889 INFO    ] 200
[2026-08-31 16:46:57,891.891 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:46:57,944.944 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:46:57,946.946 INFO    ] No update needed
[2026-08-31 16:46:57,949.949 INFO    ] Checking for camera pi updates...
[2026-08-31 16:46:57,987.987 INFO    ] 200
[2026-08-31 16:46:57,989.989 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:46:58,031.031 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:46:58,117.117 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:46:58,120.120 INFO    ] No camera update needed
[2026-08-31 16:46:58,122.122 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:46:58,125.125 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:46:58,131.131 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:46:58,136.136 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:47:00,177.177 INFO    ] ================================================
[2026-08-31 16:47:00,192.192 INFO    ] Launching Daemon at Mon Aug 31 16:47:00 IST 2026
[2026-08-31 16:47:00,202.202 INFO    ] ================================================
[2026-08-31 16:47:00,768.768 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:47:00
[2026-08-31 16:47:01,365.365 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:47:01,625.625 INFO    ] Initializing speech engine...
[2026-08-31 16:47:01,632.632 INFO    ] 2026-08-31 16:47:01
[2026-08-31 16:47:01,967.967 INFO    ] 2026-08-31 16:47:01
[2026-08-31 16:47:02,011.011 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:47:02,244.244 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:47:02,248.248 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:47:02,374.374 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:47:02,377.377 INFO    ] time= 31/08/2026 16:47:02
[2026-08-31 16:47:02,419.419 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:47:02,430.430 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:47:02,499.499 INFO    ] No existing commands found in stream
[2026-08-31 16:47:07,510.510 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:47:07,512.512 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-08-31 16:47:09,974.974 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 16:47:09,976.976 INFO    ] Checking for system updates...
[2026-08-31 16:47:10,013.013 INFO    ] 200
[2026-08-31 16:47:10,016.016 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:47:10,069.069 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:47:10,071.071 INFO    ] No update needed
[2026-08-31 16:47:10,074.074 INFO    ] Checking for camera pi updates...
[2026-08-31 16:47:10,112.112 INFO    ] 200
[2026-08-31 16:47:10,115.115 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:47:10,160.160 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:47:10,258.258 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:47:10,261.261 INFO    ] No camera update needed
[2026-08-31 16:47:10,263.263 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:47:10,265.265 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:47:10,270.270 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:47:10,275.275 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:47:12,316.316 INFO    ] ================================================
[2026-08-31 16:47:12,331.331 INFO    ] Launching Daemon at Mon Aug 31 16:47:12 IST 2026
[2026-08-31 16:47:12,342.342 INFO    ] ================================================
[2026-08-31 16:47:12,982.982 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:47:12
[2026-08-31 16:47:13,639.639 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:47:13,944.944 INFO    ] Initializing speech engine...
[2026-08-31 16:47:13,956.956 INFO    ] 2026-08-31 16:47:13
[2026-08-31 16:47:14,240.240 INFO    ] 2026-08-31 16:47:14
[2026-08-31 16:47:14,285.285 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:47:14,632.632 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:47:14,680.680 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:47:14,898.898 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:47:14,934.934 INFO    ] time= 31/08/2026 16:47:14
[2026-08-31 16:47:14,994.994 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:47:15,033.033 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:47:15,175.175 INFO    ] No existing commands found in stream
[2026-08-31 16:47:20,199.199 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:47:20,202.202 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-08-31 16:47:21,371.371 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 16:47:21,374.374 INFO    ] Checking for system updates...
[2026-08-31 16:47:21,410.410 INFO    ] 200
[2026-08-31 16:47:21,413.413 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:47:21,467.467 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:47:21,470.470 INFO    ] No update needed
[2026-08-31 16:47:21,473.473 INFO    ] Checking for camera pi updates...
[2026-08-31 16:47:21,506.506 INFO    ] 200
[2026-08-31 16:47:21,509.509 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:47:21,549.549 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:47:21,640.640 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:47:21,642.642 INFO    ] No camera update needed
[2026-08-31 16:47:21,644.644 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:47:21,646.646 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:47:21,652.652 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:47:21,657.657 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:47:23,696.696 INFO    ] ================================================
[2026-08-31 16:47:23,711.711 INFO    ] Launching Daemon at Mon Aug 31 16:47:23 IST 2026
[2026-08-31 16:47:23,726.726 INFO    ] ================================================
[2026-08-31 16:47:24,300.300 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:47:24
[2026-08-31 16:47:24,884.884 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:47:25,152.152 INFO    ] Initializing speech engine...
[2026-08-31 16:47:25,161.161 INFO    ] 2026-08-31 16:47:25
[2026-08-31 16:47:25,409.409 INFO    ] 2026-08-31 16:47:25
[2026-08-31 16:47:25,444.444 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:47:25,695.695 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:47:25,704.704 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:47:25,843.843 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:47:25,903.903 INFO    ] time= 31/08/2026 16:47:25
[2026-08-31 16:47:25,962.962 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:47:25,977.977 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:47:26,118.118 INFO    ] No existing commands found in stream
[2026-08-31 16:47:31,128.128 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:47:31,131.131 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-08-31 16:47:34,568.568 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 16:47:34,570.570 INFO    ] Checking for system updates...
[2026-08-31 16:47:34,606.606 INFO    ] 200
[2026-08-31 16:47:34,608.608 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:47:34,667.667 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:47:34,670.670 INFO    ] No update needed
[2026-08-31 16:47:34,672.672 INFO    ] Checking for camera pi updates...
[2026-08-31 16:47:34,706.706 INFO    ] 200
[2026-08-31 16:47:34,709.709 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:47:34,754.754 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:47:34,836.836 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:47:34,839.839 INFO    ] No camera update needed
[2026-08-31 16:47:34,842.842 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:47:34,845.845 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:47:34,851.851 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:47:34,857.857 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:47:36,898.898 INFO    ] ================================================
[2026-08-31 16:47:36,913.913 INFO    ] Launching Daemon at Mon Aug 31 16:47:36 IST 2026
[2026-08-31 16:47:36,924.924 INFO    ] ================================================
[2026-08-31 16:47:37,503.503 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:47:37
[2026-08-31 16:47:38,102.102 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:47:38,373.373 INFO    ] Initializing speech engine...
[2026-08-31 16:47:38,383.383 INFO    ] 2026-08-31 16:47:38
[2026-08-31 16:47:38,628.628 INFO    ] 2026-08-31 16:47:38
[2026-08-31 16:47:38,663.663 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:47:38,849.849 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:47:38,869.869 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:47:39,064.064 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:47:39,086.086 INFO    ] time= 31/08/2026 16:47:39
[2026-08-31 16:47:39,136.136 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:47:39,195.195 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:47:39,322.322 INFO    ] No existing commands found in stream
[2026-08-31 16:47:44,347.347 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:47:44,350.350 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-08-31 16:47:46,720.720 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 16:47:46,723.723 INFO    ] Checking for system updates...
[2026-08-31 16:47:46,759.759 INFO    ] 200
[2026-08-31 16:47:46,762.762 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:47:46,821.821 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:47:46,824.824 INFO    ] No update needed
[2026-08-31 16:47:46,827.827 INFO    ] Checking for camera pi updates...
[2026-08-31 16:47:46,865.865 INFO    ] 200
[2026-08-31 16:47:46,868.868 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:47:46,911.911 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:47:46,998.998 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:47:47,001.001 INFO    ] No camera update needed
[2026-08-31 16:47:47,004.004 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:47:47,006.006 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:47:47,013.013 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:47:47,018.018 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:47:49,061.061 INFO    ] ================================================
[2026-08-31 16:47:49,076.076 INFO    ] Launching Daemon at Mon Aug 31 16:47:49 IST 2026
[2026-08-31 16:47:49,087.087 INFO    ] ================================================
[2026-08-31 16:47:49,728.728 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:47:49
[2026-08-31 16:47:50,392.392 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:47:50,692.692 INFO    ] Initializing speech engine...
[2026-08-31 16:47:50,699.699 INFO    ] 2026-08-31 16:47:50
[2026-08-31 16:47:50,992.992 INFO    ] 2026-08-31 16:47:50
[2026-08-31 16:47:51,037.037 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:47:51,293.293 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:47:51,298.298 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:47:51,534.534 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:47:51,542.542 INFO    ] time= 31/08/2026 16:47:51
[2026-08-31 16:47:51,564.564 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:47:51,593.593 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:47:51,701.701 INFO    ] No existing commands found in stream
[2026-08-31 16:47:56,736.736 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:47:56,739.739 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-08-31 16:47:59,851.851 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 16:47:59,854.854 INFO    ] Checking for system updates...
[2026-08-31 16:47:59,890.890 INFO    ] 200
[2026-08-31 16:47:59,893.893 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:47:59,952.952 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:47:59,955.955 INFO    ] No update needed
[2026-08-31 16:47:59,958.958 INFO    ] Checking for camera pi updates...
[2026-08-31 16:47:59,992.992 INFO    ] 200
[2026-08-31 16:47:59,995.995 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:48:00,040.040 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:48:00,146.146 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:48:00,149.149 INFO    ] No camera update needed
[2026-08-31 16:48:00,152.152 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:48:00,154.154 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:48:00,161.161 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:48:00,166.166 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:48:02,216.216 INFO    ] ================================================
[2026-08-31 16:48:02,238.238 INFO    ] Launching Daemon at Mon Aug 31 16:48:02 IST 2026
[2026-08-31 16:48:02,250.250 INFO    ] ================================================
[2026-08-31 16:48:02,864.864 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:48:02
[2026-08-31 16:48:03,541.541 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:48:03,865.865 INFO    ] Initializing speech engine...
[2026-08-31 16:48:03,872.872 INFO    ] 2026-08-31 16:48:03
[2026-08-31 16:48:04,145.145 INFO    ] 2026-08-31 16:48:04
[2026-08-31 16:48:04,197.197 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:48:04,454.454 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:48:04,459.459 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:48:04,691.691 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:48:04,700.700 INFO    ] time= 31/08/2026 16:48:04
[2026-08-31 16:48:04,719.719 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:48:04,737.737 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:48:04,872.872 INFO    ] No existing commands found in stream
[2026-08-31 16:48:09,903.903 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:48:09,906.906 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-08-31 16:48:13,724.724 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 16:48:13,726.726 INFO    ] Checking for system updates...
[2026-08-31 16:48:13,766.766 INFO    ] 200
[2026-08-31 16:48:13,769.769 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:48:13,822.822 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:48:13,824.824 INFO    ] No update needed
[2026-08-31 16:48:13,827.827 INFO    ] Checking for camera pi updates...
[2026-08-31 16:48:13,866.866 INFO    ] 200
[2026-08-31 16:48:13,869.869 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:48:13,909.909 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:48:13,978.978 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:48:13,980.980 INFO    ] No camera update needed
[2026-08-31 16:48:13,982.982 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:48:13,985.985 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:48:13,990.990 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:48:13,995.995 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:48:16,034.034 INFO    ] ================================================
[2026-08-31 16:48:16,049.049 INFO    ] Launching Daemon at Mon Aug 31 16:48:16 IST 2026
[2026-08-31 16:48:16,059.059 INFO    ] ================================================
[2026-08-31 16:48:16,630.630 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:48:16
[2026-08-31 16:48:17,215.215 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:48:17,464.464 INFO    ] Initializing speech engine...
[2026-08-31 16:48:17,479.479 INFO    ] 2026-08-31 16:48:17
[2026-08-31 16:48:17,745.745 INFO    ] 2026-08-31 16:48:17
[2026-08-31 16:48:17,781.781 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:48:17,992.992 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:48:18,041.041 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:48:18,182.182 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:48:18,219.219 INFO    ] time= 31/08/2026 16:48:18
[2026-08-31 16:48:18,278.278 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:48:18,318.318 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:48:18,453.453 INFO    ] No existing commands found in stream
[2026-08-31 16:48:23,476.476 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:48:23,479.479 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-08-31 16:48:26,021.021 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 16:48:26,023.023 INFO    ] Checking for system updates...
[2026-08-31 16:48:26,058.058 INFO    ] 200
[2026-08-31 16:48:26,061.061 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:48:26,113.113 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:48:26,115.115 INFO    ] No update needed
[2026-08-31 16:48:26,121.121 INFO    ] Checking for camera pi updates...
[2026-08-31 16:48:26,159.159 INFO    ] 200
[2026-08-31 16:48:26,161.161 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:48:26,201.201 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:48:26,282.282 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:48:26,284.284 INFO    ] No camera update needed
[2026-08-31 16:48:26,286.286 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:48:26,289.289 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:48:26,294.294 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:48:26,299.299 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:48:28,339.339 INFO    ] ================================================
[2026-08-31 16:48:28,354.354 INFO    ] Launching Daemon at Mon Aug 31 16:48:28 IST 2026
[2026-08-31 16:48:28,365.365 INFO    ] ================================================
[2026-08-31 16:48:28,935.935 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:48:28
[2026-08-31 16:48:29,520.520 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:48:29,796.796 INFO    ] Initializing speech engine...
[2026-08-31 16:48:29,801.801 INFO    ] 2026-08-31 16:48:29
[2026-08-31 16:48:30,050.050 INFO    ] 2026-08-31 16:48:30
[2026-08-31 16:48:30,085.085 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:48:30,286.286 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:48:30,345.345 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:48:30,488.488 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:48:30,532.532 INFO    ] time= 31/08/2026 16:48:30
[2026-08-31 16:48:30,586.586 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:48:30,621.621 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:48:30,773.773 INFO    ] No existing commands found in stream
[2026-08-31 16:48:35,788.788 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:48:35,791.791 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-08-31 16:48:37,694.694 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 16:48:37,696.696 INFO    ] Checking for system updates...
[2026-08-31 16:48:37,732.732 INFO    ] 200
[2026-08-31 16:48:37,734.734 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:48:37,791.791 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:48:37,793.793 INFO    ] No update needed
[2026-08-31 16:48:37,796.796 INFO    ] Checking for camera pi updates...
[2026-08-31 16:48:37,829.829 INFO    ] 200
[2026-08-31 16:48:37,831.831 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:48:37,872.872 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:48:37,938.938 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:48:37,940.940 INFO    ] No camera update needed
[2026-08-31 16:48:37,943.943 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:48:37,945.945 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:48:37,950.950 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:48:37,955.955 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:48:40,998.998 INFO    ] ================================================
[2026-08-31 16:48:40,014.014 INFO    ] Launching Daemon at Mon Aug 31 16:48:40 IST 2026
[2026-08-31 16:48:40,025.025 INFO    ] ================================================
[2026-08-31 16:48:40,626.626 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:48:40
[2026-08-31 16:48:41,224.224 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:48:41,500.500 INFO    ] Initializing speech engine...
[2026-08-31 16:48:41,503.503 INFO    ] 2026-08-31 16:48:41
[2026-08-31 16:48:41,759.759 INFO    ] 2026-08-31 16:48:41
[2026-08-31 16:48:41,795.795 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:48:42,049.049 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:48:42,059.059 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:48:42,194.194 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:48:42,243.243 INFO    ] time= 31/08/2026 16:48:42
[2026-08-31 16:48:42,308.308 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:48:42,334.334 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:48:42,394.394 INFO    ] No existing commands found in stream
[2026-08-31 16:48:47,425.425 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:48:47,428.428 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-08-31 16:48:49,780.780 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 16:48:49,783.783 INFO    ] Checking for system updates...
[2026-08-31 16:48:49,822.822 INFO    ] 200
[2026-08-31 16:48:49,825.825 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:48:49,881.881 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:48:49,884.884 INFO    ] No update needed
[2026-08-31 16:48:49,886.886 INFO    ] Checking for camera pi updates...
[2026-08-31 16:48:49,922.922 INFO    ] 200
[2026-08-31 16:48:49,925.925 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:48:49,968.968 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:48:50,037.037 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:48:50,040.040 INFO    ] No camera update needed
[2026-08-31 16:48:50,042.042 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:48:50,045.045 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:48:50,051.051 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:48:50,056.056 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:48:52,099.099 INFO    ] ================================================
[2026-08-31 16:48:52,115.115 INFO    ] Launching Daemon at Mon Aug 31 16:48:52 IST 2026
[2026-08-31 16:48:52,126.126 INFO    ] ================================================
[2026-08-31 16:48:52,764.764 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:48:52
[2026-08-31 16:48:53,423.423 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:48:53,738.738 INFO    ] Initializing speech engine...
[2026-08-31 16:48:53,745.745 INFO    ] 2026-08-31 16:48:53
[2026-08-31 16:48:54,013.013 INFO    ] 2026-08-31 16:48:54
[2026-08-31 16:48:54,067.067 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:48:54,343.343 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:48:54,352.352 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:48:54,545.545 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:48:54,552.552 INFO    ] time= 31/08/2026 16:48:54
[2026-08-31 16:48:54,572.572 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:48:54,598.598 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:48:54,723.723 INFO    ] No existing commands found in stream
[2026-08-31 16:48:59,754.754 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:48:59,757.757 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-08-31 16:49:00,480.480 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 16:49:00,482.482 INFO    ] Checking for system updates...
[2026-08-31 16:49:00,518.518 INFO    ] 200
[2026-08-31 16:49:00,520.520 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:49:00,572.572 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:49:00,574.574 INFO    ] No update needed
[2026-08-31 16:49:00,577.577 INFO    ] Checking for camera pi updates...
[2026-08-31 16:49:00,610.610 INFO    ] 200
[2026-08-31 16:49:00,613.613 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:49:00,653.653 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:49:00,733.733 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:49:00,736.736 INFO    ] No camera update needed
[2026-08-31 16:49:00,738.738 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:49:00,741.741 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:49:00,747.747 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:49:00,753.753 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:49:02,797.797 INFO    ] ================================================
[2026-08-31 16:49:02,819.819 INFO    ] Launching Daemon at Mon Aug 31 16:49:02 IST 2026
[2026-08-31 16:49:02,832.832 INFO    ] ================================================
[2026-08-31 16:49:03,553.553 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:49:03
[2026-08-31 16:49:04,163.163 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:49:04,419.419 INFO    ] Initializing speech engine...
[2026-08-31 16:49:04,428.428 INFO    ] 2026-08-31 16:49:04
[2026-08-31 16:49:04,716.716 INFO    ] 2026-08-31 16:49:04
[2026-08-31 16:49:04,758.758 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:49:04,960.960 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:49:04,974.974 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:49:05,134.134 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:49:05,145.145 INFO    ] time= 31/08/2026 16:49:05
[2026-08-31 16:49:05,150.150 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:49:05,156.156 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:49:05,269.269 INFO    ] No existing commands found in stream
[2026-08-31 16:49:10,299.299 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:49:10,301.301 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-08-31 16:49:12,963.963 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 16:49:12,966.966 INFO    ] Checking for system updates...
[2026-08-31 16:49:13,002.002 INFO    ] 200
[2026-08-31 16:49:13,004.004 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:49:13,055.055 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:49:13,058.058 INFO    ] No update needed
[2026-08-31 16:49:13,061.061 INFO    ] Checking for camera pi updates...
[2026-08-31 16:49:13,094.094 INFO    ] 200
[2026-08-31 16:49:13,096.096 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:49:13,137.137 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:49:13,239.239 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:49:13,241.241 INFO    ] No camera update needed
[2026-08-31 16:49:13,243.243 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:49:13,246.246 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:49:13,251.251 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:49:13,256.256 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:49:15,296.296 INFO    ] ================================================
[2026-08-31 16:49:15,311.311 INFO    ] Launching Daemon at Mon Aug 31 16:49:15 IST 2026
[2026-08-31 16:49:15,321.321 INFO    ] ================================================
[2026-08-31 16:49:15,901.901 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:49:15
[2026-08-31 16:49:16,499.499 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:49:16,759.759 INFO    ] Initializing speech engine...
[2026-08-31 16:49:16,775.775 INFO    ] 2026-08-31 16:49:16
[2026-08-31 16:49:17,063.063 INFO    ] 2026-08-31 16:49:17
[2026-08-31 16:49:17,088.088 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:49:17,323.323 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:49:17,379.379 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:49:17,555.555 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:49:17,591.591 INFO    ] time= 31/08/2026 16:49:17
[2026-08-31 16:49:17,650.650 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:49:17,704.704 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:49:17,769.769 INFO    ] No existing commands found in stream
[2026-08-31 16:49:22,781.781 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:49:22,783.783 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-08-31 16:49:25,244.244 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 16:49:25,247.247 INFO    ] Checking for system updates...
[2026-08-31 16:49:25,283.283 INFO    ] 200
[2026-08-31 16:49:25,286.286 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:49:25,337.337 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:49:25,340.340 INFO    ] No update needed
[2026-08-31 16:49:25,342.342 INFO    ] Checking for camera pi updates...
[2026-08-31 16:49:25,375.375 INFO    ] 200
[2026-08-31 16:49:25,378.378 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:49:25,419.419 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:49:25,506.506 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:49:25,509.509 INFO    ] No camera update needed
[2026-08-31 16:49:25,511.511 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:49:25,513.513 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:49:25,519.519 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:49:25,524.524 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:49:27,564.564 INFO    ] ================================================
[2026-08-31 16:49:27,579.579 INFO    ] Launching Daemon at Mon Aug 31 16:49:27 IST 2026
[2026-08-31 16:49:27,591.591 INFO    ] ================================================
[2026-08-31 16:49:28,171.171 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:49:28
[2026-08-31 16:49:28,770.770 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:49:29,046.046 INFO    ] Initializing speech engine...
[2026-08-31 16:49:29,061.061 INFO    ] 2026-08-31 16:49:29
[2026-08-31 16:49:29,338.338 INFO    ] 2026-08-31 16:49:29
[2026-08-31 16:49:29,373.373 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:49:29,574.574 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:49:29,580.580 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:49:29,716.716 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:49:29,724.724 INFO    ] time= 31/08/2026 16:49:29
[2026-08-31 16:49:29,743.743 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:49:29,765.765 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:49:29,850.850 INFO    ] No existing commands found in stream
[2026-08-31 16:49:34,863.863 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:49:34,866.866 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-08-31 16:49:35,546.546 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 16:49:35,548.548 INFO    ] Checking for system updates...
[2026-08-31 16:49:35,584.584 INFO    ] 200
[2026-08-31 16:49:35,586.586 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:49:35,641.641 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:49:35,643.643 INFO    ] No update needed
[2026-08-31 16:49:35,645.645 INFO    ] Checking for camera pi updates...
[2026-08-31 16:49:35,679.679 INFO    ] 200
[2026-08-31 16:49:35,681.681 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:49:35,722.722 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:49:35,923.923 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:49:35,926.926 INFO    ] No camera update needed
[2026-08-31 16:49:35,928.928 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:49:35,931.931 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:49:35,936.936 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:49:35,941.941 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:49:37,982.982 INFO    ] ================================================
[2026-08-31 16:49:38,997.997 INFO    ] Launching Daemon at Mon Aug 31 16:49:37 IST 2026
[2026-08-31 16:49:38,008.008 INFO    ] ================================================
[2026-08-31 16:49:38,591.591 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:49:38
[2026-08-31 16:49:39,191.191 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:49:39,445.445 INFO    ] Initializing speech engine...
[2026-08-31 16:49:39,467.467 INFO    ] 2026-08-31 16:49:39
[2026-08-31 16:49:39,739.739 INFO    ] 2026-08-31 16:49:39
[2026-08-31 16:49:39,776.776 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:49:39,975.975 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:49:39,990.990 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:49:40,154.154 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:49:40,164.164 INFO    ] time= 31/08/2026 16:49:40
[2026-08-31 16:49:40,171.171 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:49:40,214.214 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:49:40,366.366 INFO    ] No existing commands found in stream
[2026-08-31 16:49:45,392.392 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:49:45,394.394 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-08-31 16:49:47,660.660 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 16:49:47,663.663 INFO    ] Checking for system updates...
[2026-08-31 16:49:47,699.699 INFO    ] 200
[2026-08-31 16:49:47,702.702 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:49:47,755.755 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:49:47,758.758 INFO    ] No update needed
[2026-08-31 16:49:47,761.761 INFO    ] Checking for camera pi updates...
[2026-08-31 16:49:47,795.795 INFO    ] 200
[2026-08-31 16:49:47,798.798 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:49:47,838.838 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:49:47,924.924 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:49:47,927.927 INFO    ] No camera update needed
[2026-08-31 16:49:47,930.930 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:49:47,932.932 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:49:47,938.938 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:49:47,943.943 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:49:49,984.984 INFO    ] ================================================
[2026-08-31 16:49:50,001.001 INFO    ] Launching Daemon at Mon Aug 31 16:49:49 IST 2026
[2026-08-31 16:49:50,012.012 INFO    ] ================================================
[2026-08-31 16:49:50,597.597 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:49:50
[2026-08-31 16:49:51,196.196 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:49:51,473.473 INFO    ] Initializing speech engine...
[2026-08-31 16:49:51,479.479 INFO    ] 2026-08-31 16:49:51
[2026-08-31 16:49:51,741.741 INFO    ] 2026-08-31 16:49:51
[2026-08-31 16:49:51,796.796 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:49:52,022.022 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:49:52,028.028 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:49:52,262.262 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:49:52,283.283 INFO    ] time= 31/08/2026 16:49:52
[2026-08-31 16:49:52,300.300 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:49:52,310.310 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:49:52,433.433 INFO    ] No existing commands found in stream
[2026-08-31 16:49:57,448.448 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:49:57,451.451 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-08-31 16:49:59,898.898 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 16:49:59,901.901 INFO    ] Checking for system updates...
[2026-08-31 16:49:59,936.936 INFO    ] 200
[2026-08-31 16:49:59,938.938 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:49:59,991.991 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:49:59,993.993 INFO    ] No update needed
[2026-08-31 16:49:59,996.996 INFO    ] Checking for camera pi updates...
[2026-08-31 16:50:00,030.030 INFO    ] 200
[2026-08-31 16:50:00,032.032 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:50:00,072.072 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:50:00,153.153 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:50:00,156.156 INFO    ] No camera update needed
[2026-08-31 16:50:00,158.158 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:50:00,161.161 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:50:00,166.166 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:50:00,171.171 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:50:02,292.292 INFO    ] ================================================
[2026-08-31 16:50:02,344.344 INFO    ] Launching Daemon at Mon Aug 31 16:50:02 IST 2026
[2026-08-31 16:50:02,396.396 INFO    ] ================================================
[2026-08-31 16:50:03,319.319 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:50:03
[2026-08-31 16:50:04,000.000 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:50:04,273.273 INFO    ] Initializing speech engine...
[2026-08-31 16:50:04,278.278 INFO    ] 2026-08-31 16:50:04
[2026-08-31 16:50:04,586.586 INFO    ] 2026-08-31 16:50:04
[2026-08-31 16:50:04,611.611 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:50:04,822.822 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:50:04,829.829 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:50:05,006.006 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:50:05,011.011 INFO    ] time= 31/08/2026 16:50:05
[2026-08-31 16:50:05,018.018 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:50:05,023.023 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:50:05,178.178 INFO    ] No existing commands found in stream
[2026-08-31 16:50:10,208.208 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:50:10,211.211 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-08-31 16:50:12,299.299 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 16:50:12,302.302 INFO    ] Checking for system updates...
[2026-08-31 16:50:12,337.337 INFO    ] 200
[2026-08-31 16:50:12,339.339 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:50:12,392.392 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:50:12,395.395 INFO    ] No update needed
[2026-08-31 16:50:12,397.397 INFO    ] Checking for camera pi updates...
[2026-08-31 16:50:12,430.430 INFO    ] 200
[2026-08-31 16:50:12,433.433 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:50:12,472.472 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:50:12,554.554 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:50:12,557.557 INFO    ] No camera update needed
[2026-08-31 16:50:12,559.559 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:50:12,562.562 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:50:12,567.567 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:50:12,572.572 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:50:14,613.613 INFO    ] ================================================
[2026-08-31 16:50:14,628.628 INFO    ] Launching Daemon at Mon Aug 31 16:50:14 IST 2026
[2026-08-31 16:50:14,639.639 INFO    ] ================================================
[2026-08-31 16:50:15,208.208 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:50:15
[2026-08-31 16:50:15,793.793 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:50:16,040.040 INFO    ] Initializing speech engine...
[2026-08-31 16:50:16,053.053 INFO    ] 2026-08-31 16:50:16
[2026-08-31 16:50:16,320.320 INFO    ] 2026-08-31 16:50:16
[2026-08-31 16:50:16,356.356 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:50:16,558.558 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:50:16,616.616 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:50:16,765.765 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:50:16,834.834 INFO    ] time= 31/08/2026 16:50:16
[2026-08-31 16:50:16,883.883 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:50:16,894.894 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:50:16,954.954 INFO    ] No existing commands found in stream
[2026-08-31 16:50:21,975.975 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:50:21,978.978 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-08-31 16:50:25,101.101 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 16:50:25,104.104 INFO    ] Checking for system updates...
[2026-08-31 16:50:25,141.141 INFO    ] 200
[2026-08-31 16:50:25,144.144 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:50:25,204.204 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:50:25,206.206 INFO    ] No update needed
[2026-08-31 16:50:25,209.209 INFO    ] Checking for camera pi updates...
[2026-08-31 16:50:25,244.244 INFO    ] 200
[2026-08-31 16:50:25,247.247 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:50:25,294.294 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:50:25,375.375 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:50:25,378.378 INFO    ] No camera update needed
[2026-08-31 16:50:25,381.381 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:50:25,384.384 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:50:25,390.390 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:50:25,396.396 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:50:27,442.442 INFO    ] ================================================
[2026-08-31 16:50:27,459.459 INFO    ] Launching Daemon at Mon Aug 31 16:50:27 IST 2026
[2026-08-31 16:50:27,471.471 INFO    ] ================================================
[2026-08-31 16:50:28,074.074 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:50:28
[2026-08-31 16:50:28,693.693 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:50:28,943.943 INFO    ] Initializing speech engine...
[2026-08-31 16:50:28,973.973 INFO    ] 2026-08-31 16:50:28
[2026-08-31 16:50:29,259.259 INFO    ] 2026-08-31 16:50:29
[2026-08-31 16:50:29,298.298 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:50:29,500.500 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:50:29,517.517 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:50:29,644.644 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:50:29,651.651 INFO    ] time= 31/08/2026 16:50:29
[2026-08-31 16:50:29,665.665 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:50:29,694.694 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:50:29,780.780 INFO    ] No existing commands found in stream
[2026-08-31 16:50:34,793.793 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:50:34,796.796 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-08-31 16:50:38,504.504 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 16:50:38,506.506 INFO    ] Checking for system updates...
[2026-08-31 16:50:38,543.543 INFO    ] 200
[2026-08-31 16:50:38,546.546 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:50:38,610.610 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:50:38,613.613 INFO    ] No update needed
[2026-08-31 16:50:38,619.619 INFO    ] Checking for camera pi updates...
[2026-08-31 16:50:38,654.654 INFO    ] 200
[2026-08-31 16:50:38,657.657 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:50:38,699.699 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:50:38,800.800 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:50:38,803.803 INFO    ] No camera update needed
[2026-08-31 16:50:38,806.806 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:50:38,808.808 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:50:38,815.815 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:50:38,821.821 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:50:40,864.864 INFO    ] ================================================
[2026-08-31 16:50:40,879.879 INFO    ] Launching Daemon at Mon Aug 31 16:50:40 IST 2026
[2026-08-31 16:50:40,890.890 INFO    ] ================================================
[2026-08-31 16:50:41,558.558 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:50:41
[2026-08-31 16:50:42,247.247 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:50:42,557.557 INFO    ] Initializing speech engine...
[2026-08-31 16:50:42,565.565 INFO    ] 2026-08-31 16:50:42
[2026-08-31 16:50:42,858.858 INFO    ] 2026-08-31 16:50:42
[2026-08-31 16:50:42,904.904 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:50:43,138.138 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:50:43,144.144 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:50:43,280.280 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:50:43,341.341 INFO    ] time= 31/08/2026 16:50:43
[2026-08-31 16:50:43,385.385 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:50:43,416.416 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:50:43,571.571 INFO    ] No existing commands found in stream
[2026-08-31 16:50:48,606.606 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:50:48,609.609 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-08-31 16:50:50,497.497 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 16:50:50,500.500 INFO    ] Checking for system updates...
[2026-08-31 16:50:50,538.538 INFO    ] 200
[2026-08-31 16:50:50,541.541 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:50:50,594.594 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:50:50,597.597 INFO    ] No update needed
[2026-08-31 16:50:50,600.600 INFO    ] Checking for camera pi updates...
[2026-08-31 16:50:50,642.642 INFO    ] 200
[2026-08-31 16:50:50,644.644 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:50:50,686.686 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:50:50,770.770 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:50:50,773.773 INFO    ] No camera update needed
[2026-08-31 16:50:50,775.775 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:50:50,778.778 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:50:50,785.785 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:50:50,791.791 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:50:52,833.833 INFO    ] ================================================
[2026-08-31 16:50:52,848.848 INFO    ] Launching Daemon at Mon Aug 31 16:50:52 IST 2026
[2026-08-31 16:50:52,859.859 INFO    ] ================================================
[2026-08-31 16:50:53,437.437 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:50:53
[2026-08-31 16:50:54,111.111 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:50:54,421.421 INFO    ] Initializing speech engine...
[2026-08-31 16:50:54,433.433 INFO    ] 2026-08-31 16:50:54
[2026-08-31 16:50:54,747.747 INFO    ] 2026-08-31 16:50:54
[2026-08-31 16:50:54,834.834 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:50:55,121.121 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:50:55,161.161 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:50:55,380.380 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:50:55,412.412 INFO    ] time= 31/08/2026 16:50:55
[2026-08-31 16:50:55,469.469 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:50:55,523.523 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:50:55,646.646 INFO    ] No existing commands found in stream
[2026-08-31 16:51:00,672.672 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:51:00,675.675 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-08-31 16:51:04,374.374 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 16:51:04,377.377 INFO    ] Checking for system updates...
[2026-08-31 16:51:04,414.414 INFO    ] 200
[2026-08-31 16:51:04,416.416 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:51:04,477.477 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:51:04,480.480 INFO    ] No update needed
[2026-08-31 16:51:04,483.483 INFO    ] Checking for camera pi updates...
[2026-08-31 16:51:04,522.522 INFO    ] 200
[2026-08-31 16:51:04,525.525 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:51:04,569.569 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:51:04,655.655 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:51:04,658.658 INFO    ] No camera update needed
[2026-08-31 16:51:04,661.661 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:51:04,664.664 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:51:04,670.670 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:51:04,676.676 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:51:06,720.720 INFO    ] ================================================
[2026-08-31 16:51:06,736.736 INFO    ] Launching Daemon at Mon Aug 31 16:51:06 IST 2026
[2026-08-31 16:51:06,746.746 INFO    ] ================================================
[2026-08-31 16:51:07,360.360 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:51:07
[2026-08-31 16:51:08,032.032 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:51:08,335.335 INFO    ] Initializing speech engine...
[2026-08-31 16:51:08,348.348 INFO    ] 2026-08-31 16:51:08
[2026-08-31 16:51:08,662.662 INFO    ] 2026-08-31 16:51:08
[2026-08-31 16:51:08,745.745 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:51:08,959.959 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:51:08,964.964 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:51:09,126.126 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:51:09,162.162 INFO    ] time= 31/08/2026 16:51:09
[2026-08-31 16:51:09,170.170 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:51:09,191.191 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:51:09,314.314 INFO    ] No existing commands found in stream
[2026-08-31 16:51:14,331.331 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:51:14,334.334 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-08-31 16:51:17,749.749 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 16:51:17,752.752 INFO    ] Checking for system updates...
[2026-08-31 16:51:17,793.793 INFO    ] 200
[2026-08-31 16:51:17,796.796 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:51:17,854.854 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:51:17,856.856 INFO    ] No update needed
[2026-08-31 16:51:17,860.860 INFO    ] Checking for camera pi updates...
[2026-08-31 16:51:17,895.895 INFO    ] 200
[2026-08-31 16:51:17,897.897 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:51:17,939.939 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:51:18,020.020 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:51:18,022.022 INFO    ] No camera update needed
[2026-08-31 16:51:18,024.024 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:51:18,027.027 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:51:18,032.032 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:51:18,037.037 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:51:20,078.078 INFO    ] ================================================
[2026-08-31 16:51:20,093.093 INFO    ] Launching Daemon at Mon Aug 31 16:51:20 IST 2026
[2026-08-31 16:51:20,103.103 INFO    ] ================================================
[2026-08-31 16:51:20,687.687 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:51:20
[2026-08-31 16:51:21,288.288 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:51:21,564.564 INFO    ] Initializing speech engine...
[2026-08-31 16:51:21,573.573 INFO    ] 2026-08-31 16:51:21
[2026-08-31 16:51:21,824.824 INFO    ] 2026-08-31 16:51:21
[2026-08-31 16:51:21,859.859 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:51:22,095.095 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:51:22,125.125 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:51:22,331.331 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:51:22,383.383 INFO    ] time= 31/08/2026 16:51:22
[2026-08-31 16:51:22,390.390 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:51:22,408.408 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:51:22,528.528 INFO    ] No existing commands found in stream
[2026-08-31 16:51:27,547.547 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:51:27,550.550 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-08-31 16:51:31,490.490 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 16:51:31,493.493 INFO    ] Checking for system updates...
[2026-08-31 16:51:31,545.545 INFO    ] 200
[2026-08-31 16:51:31,548.548 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:51:31,616.616 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:51:31,619.619 INFO    ] No update needed
[2026-08-31 16:51:31,622.622 INFO    ] Checking for camera pi updates...
[2026-08-31 16:51:31,658.658 INFO    ] 200
[2026-08-31 16:51:31,661.661 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:51:31,705.705 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:51:31,763.763 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:51:31,766.766 INFO    ] No camera update needed
[2026-08-31 16:51:31,769.769 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:51:31,771.771 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:51:31,778.778 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:51:31,784.784 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:51:33,828.828 INFO    ] ================================================
[2026-08-31 16:51:33,843.843 INFO    ] Launching Daemon at Mon Aug 31 16:51:33 IST 2026
[2026-08-31 16:51:33,853.853 INFO    ] ================================================
[2026-08-31 16:51:34,437.437 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:51:34
[2026-08-31 16:51:35,039.039 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:51:35,320.320 INFO    ] Initializing speech engine...
[2026-08-31 16:51:35,326.326 INFO    ] 2026-08-31 16:51:35
[2026-08-31 16:51:35,574.574 INFO    ] 2026-08-31 16:51:35
[2026-08-31 16:51:35,610.610 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:51:35,862.862 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:51:35,871.871 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:51:36,091.091 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:51:36,132.132 INFO    ] time= 31/08/2026 16:51:36
[2026-08-31 16:51:36,139.139 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:51:36,159.159 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:51:36,288.288 INFO    ] No existing commands found in stream
[2026-08-31 16:51:41,300.300 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:51:41,302.302 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-08-31 16:51:43,001.001 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 16:51:43,004.004 INFO    ] Checking for system updates...
[2026-08-31 16:51:43,040.040 INFO    ] 200
[2026-08-31 16:51:43,042.042 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:51:43,094.094 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:51:43,097.097 INFO    ] No update needed
[2026-08-31 16:51:43,100.100 INFO    ] Checking for camera pi updates...
[2026-08-31 16:51:43,134.134 INFO    ] 200
[2026-08-31 16:51:43,137.137 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:51:43,179.179 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:51:43,358.358 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:51:43,360.360 INFO    ] No camera update needed
[2026-08-31 16:51:43,363.363 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:51:43,365.365 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:51:43,371.371 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:51:43,376.376 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:51:45,417.417 INFO    ] ================================================
[2026-08-31 16:51:45,432.432 INFO    ] Launching Daemon at Mon Aug 31 16:51:45 IST 2026
[2026-08-31 16:51:45,443.443 INFO    ] ================================================
[2026-08-31 16:51:46,025.025 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:51:46
[2026-08-31 16:51:46,624.624 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:51:46,914.914 INFO    ] Initializing speech engine...
[2026-08-31 16:51:46,923.923 INFO    ] 2026-08-31 16:51:46
[2026-08-31 16:51:47,200.200 INFO    ] 2026-08-31 16:51:47
[2026-08-31 16:51:47,250.250 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:51:47,442.442 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:51:47,456.456 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:51:47,613.613 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:51:47,626.626 INFO    ] time= 31/08/2026 16:51:47
[2026-08-31 16:51:47,635.635 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:51:47,642.642 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:51:47,775.775 INFO    ] No existing commands found in stream
[2026-08-31 16:51:52,801.801 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:51:52,803.803 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-08-31 16:51:53,539.539 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 16:51:53,541.541 INFO    ] Checking for system updates...
[2026-08-31 16:51:53,578.578 INFO    ] 200
[2026-08-31 16:51:53,580.580 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:51:53,641.641 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:51:53,643.643 INFO    ] No update needed
[2026-08-31 16:51:53,645.645 INFO    ] Checking for camera pi updates...
[2026-08-31 16:51:53,679.679 INFO    ] 200
[2026-08-31 16:51:53,681.681 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:51:53,721.721 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:51:53,801.801 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:51:53,804.804 INFO    ] No camera update needed
[2026-08-31 16:51:53,806.806 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:51:53,809.809 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:51:53,814.814 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:51:53,819.819 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:51:55,859.859 INFO    ] ================================================
[2026-08-31 16:51:55,874.874 INFO    ] Launching Daemon at Mon Aug 31 16:51:55 IST 2026
[2026-08-31 16:51:55,885.885 INFO    ] ================================================
[2026-08-31 16:51:56,470.470 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:51:56
[2026-08-31 16:51:57,151.151 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:51:57,457.457 INFO    ] Initializing speech engine...
[2026-08-31 16:51:57,471.471 INFO    ] 2026-08-31 16:51:57
[2026-08-31 16:51:57,758.758 INFO    ] 2026-08-31 16:51:57
[2026-08-31 16:51:57,798.798 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:51:58,016.016 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:51:58,025.025 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:51:58,259.259 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:51:58,285.285 INFO    ] time= 31/08/2026 16:51:58
[2026-08-31 16:51:58,300.300 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:51:58,307.307 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:51:58,426.426 INFO    ] No existing commands found in stream
[2026-08-31 16:52:03,447.447 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:52:03,450.450 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-08-31 16:52:07,888.888 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 16:52:07,890.890 INFO    ] Checking for system updates...
[2026-08-31 16:52:07,926.926 INFO    ] 200
[2026-08-31 16:52:07,930.930 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:52:07,990.990 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:52:07,993.993 INFO    ] No update needed
[2026-08-31 16:52:07,995.995 INFO    ] Checking for camera pi updates...
[2026-08-31 16:52:08,030.030 INFO    ] 200
[2026-08-31 16:52:08,033.033 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:52:08,075.075 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:52:08,156.156 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:52:08,159.159 INFO    ] No camera update needed
[2026-08-31 16:52:08,162.162 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:52:08,165.165 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:52:08,171.171 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:52:08,177.177 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:52:10,219.219 INFO    ] ================================================
[2026-08-31 16:52:10,235.235 INFO    ] Launching Daemon at Mon Aug 31 16:52:10 IST 2026
[2026-08-31 16:52:10,246.246 INFO    ] ================================================
[2026-08-31 16:52:10,933.933 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:52:10
[2026-08-31 16:52:11,609.609 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:52:11,911.911 INFO    ] Initializing speech engine...
[2026-08-31 16:52:11,919.919 INFO    ] 2026-08-31 16:52:11
[2026-08-31 16:52:12,236.236 INFO    ] 2026-08-31 16:52:12
[2026-08-31 16:52:12,321.321 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:52:12,482.482 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:52:12,484.484 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:52:12,632.632 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:52:12,677.677 INFO    ] time= 31/08/2026 16:52:12
[2026-08-31 16:52:12,732.732 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:52:12,764.764 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:52:12,893.893 INFO    ] No existing commands found in stream
[2026-08-31 16:52:17,923.923 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:52:17,927.927 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-08-31 16:52:21,589.589 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 16:52:21,592.592 INFO    ] Checking for system updates...
[2026-08-31 16:52:21,635.635 INFO    ] 200
[2026-08-31 16:52:21,638.638 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:52:21,697.697 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:52:21,700.700 INFO    ] No update needed
[2026-08-31 16:52:21,702.702 INFO    ] Checking for camera pi updates...
[2026-08-31 16:52:21,736.736 INFO    ] 200
[2026-08-31 16:52:21,738.738 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:52:21,784.784 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:52:21,886.886 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:52:21,889.889 INFO    ] No camera update needed
[2026-08-31 16:52:21,891.891 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:52:21,894.894 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:52:21,899.899 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:52:21,904.904 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:52:23,945.945 INFO    ] ================================================
[2026-08-31 16:52:23,960.960 INFO    ] Launching Daemon at Mon Aug 31 16:52:23 IST 2026
[2026-08-31 16:52:23,971.971 INFO    ] ================================================
[2026-08-31 16:52:24,536.536 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:52:24
[2026-08-31 16:52:25,129.129 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:52:25,397.397 INFO    ] Initializing speech engine...
[2026-08-31 16:52:25,406.406 INFO    ] 2026-08-31 16:52:25
[2026-08-31 16:52:25,651.651 INFO    ] 2026-08-31 16:52:25
[2026-08-31 16:52:25,686.686 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:52:25,937.937 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:52:25,946.946 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:52:26,080.080 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:52:26,129.129 INFO    ] time= 31/08/2026 16:52:26
[2026-08-31 16:52:26,189.189 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:52:26,210.210 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:52:26,359.359 INFO    ] No existing commands found in stream
[2026-08-31 16:52:31,377.377 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:52:31,380.380 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-08-31 16:52:32,706.706 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 16:52:32,709.709 INFO    ] Checking for system updates...
[2026-08-31 16:52:32,746.746 INFO    ] 200
[2026-08-31 16:52:32,751.751 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:52:32,813.813 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:52:32,816.816 INFO    ] No update needed
[2026-08-31 16:52:32,819.819 INFO    ] Checking for camera pi updates...
[2026-08-31 16:52:32,862.862 INFO    ] 200
[2026-08-31 16:52:32,865.865 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:52:32,908.908 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:52:32,997.997 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:52:32,999.999 INFO    ] No camera update needed
[2026-08-31 16:52:33,001.001 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:52:33,004.004 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:52:33,009.009 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:52:33,014.014 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:52:35,053.053 INFO    ] ================================================
[2026-08-31 16:52:35,069.069 INFO    ] Launching Daemon at Mon Aug 31 16:52:35 IST 2026
[2026-08-31 16:52:35,079.079 INFO    ] ================================================
[2026-08-31 16:52:35,708.708 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:52:35
[2026-08-31 16:52:36,392.392 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:52:36,705.705 INFO    ] Initializing speech engine...
[2026-08-31 16:52:36,717.717 INFO    ] 2026-08-31 16:52:36
[2026-08-31 16:52:37,002.002 INFO    ] 2026-08-31 16:52:36
[2026-08-31 16:52:37,060.060 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:52:37,313.313 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:52:37,332.332 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:52:37,565.565 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:52:37,572.572 INFO    ] time= 31/08/2026 16:52:37
[2026-08-31 16:52:37,594.594 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:52:37,623.623 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:52:37,714.714 INFO    ] No existing commands found in stream
[2026-08-31 16:52:42,725.725 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:52:42,728.728 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-08-31 16:52:44,452.452 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 16:52:44,455.455 INFO    ] Checking for system updates...
[2026-08-31 16:52:44,493.493 INFO    ] 200
[2026-08-31 16:52:44,496.496 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:52:44,550.550 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:52:44,553.553 INFO    ] No update needed
[2026-08-31 16:52:44,555.555 INFO    ] Checking for camera pi updates...
[2026-08-31 16:52:44,589.589 INFO    ] 200
[2026-08-31 16:52:44,592.592 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:52:44,632.632 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:52:44,713.713 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:52:44,716.716 INFO    ] No camera update needed
[2026-08-31 16:52:44,719.719 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:52:44,721.721 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:52:44,726.726 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:52:44,732.732 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:52:46,771.771 INFO    ] ================================================
[2026-08-31 16:52:46,786.786 INFO    ] Launching Daemon at Mon Aug 31 16:52:46 IST 2026
[2026-08-31 16:52:46,796.796 INFO    ] ================================================
[2026-08-31 16:52:47,384.384 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:52:47
[2026-08-31 16:52:47,989.989 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:52:48,261.261 INFO    ] Initializing speech engine...
[2026-08-31 16:52:48,279.279 INFO    ] 2026-08-31 16:52:48
[2026-08-31 16:52:48,530.530 INFO    ] 2026-08-31 16:52:48
[2026-08-31 16:52:48,596.596 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:52:48,846.846 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:52:48,852.852 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:52:49,050.050 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:52:49,086.086 INFO    ] time= 31/08/2026 16:52:49
[2026-08-31 16:52:49,092.092 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:52:49,113.113 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:52:49,240.240 INFO    ] No existing commands found in stream
[2026-08-31 16:52:54,253.253 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:52:54,256.256 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-08-31 16:52:55,358.358 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 16:52:55,361.361 INFO    ] Checking for system updates...
[2026-08-31 16:52:55,397.397 INFO    ] 200
[2026-08-31 16:52:55,399.399 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:52:55,453.453 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:52:55,456.456 INFO    ] No update needed
[2026-08-31 16:52:55,458.458 INFO    ] Checking for camera pi updates...
[2026-08-31 16:52:55,497.497 INFO    ] 200
[2026-08-31 16:52:55,499.499 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:52:55,540.540 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:52:55,642.642 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:52:55,644.644 INFO    ] No camera update needed
[2026-08-31 16:52:55,647.647 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:52:55,649.649 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:52:55,655.655 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:52:55,660.660 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:52:57,703.703 INFO    ] ================================================
[2026-08-31 16:52:57,719.719 INFO    ] Launching Daemon at Mon Aug 31 16:52:57 IST 2026
[2026-08-31 16:52:57,733.733 INFO    ] ================================================
[2026-08-31 16:52:58,315.315 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:52:58
[2026-08-31 16:52:58,915.915 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:52:59,171.171 INFO    ] Initializing speech engine...
[2026-08-31 16:52:59,179.179 INFO    ] 2026-08-31 16:52:59
[2026-08-31 16:52:59,488.488 INFO    ] 2026-08-31 16:52:59
[2026-08-31 16:52:59,514.514 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:52:59,688.688 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:52:59,731.731 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:52:59,872.872 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:52:59,879.879 INFO    ] time= 31/08/2026 16:52:59
[2026-08-31 16:52:59,894.894 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:52:59,922.922 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:53:00,008.008 INFO    ] No existing commands found in stream
[2026-08-31 16:53:05,020.020 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:53:05,023.023 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-08-31 16:53:05,498.498 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 16:53:05,501.501 INFO    ] Checking for system updates...
[2026-08-31 16:53:05,537.537 INFO    ] 200
[2026-08-31 16:53:05,539.539 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:53:05,600.600 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:53:05,602.602 INFO    ] No update needed
[2026-08-31 16:53:05,605.605 INFO    ] Checking for camera pi updates...
[2026-08-31 16:53:05,638.638 INFO    ] 200
[2026-08-31 16:53:05,641.641 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:53:05,681.681 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:53:05,770.770 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:53:05,772.772 INFO    ] No camera update needed
[2026-08-31 16:53:05,775.775 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:53:05,777.777 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:53:05,783.783 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:53:05,788.788 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:53:07,829.829 INFO    ] ================================================
[2026-08-31 16:53:07,844.844 INFO    ] Launching Daemon at Mon Aug 31 16:53:07 IST 2026
[2026-08-31 16:53:07,855.855 INFO    ] ================================================
[2026-08-31 16:53:08,421.421 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:53:08
[2026-08-31 16:53:09,009.009 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:53:09,258.258 INFO    ] Initializing speech engine...
[2026-08-31 16:53:09,278.278 INFO    ] 2026-08-31 16:53:09
[2026-08-31 16:53:09,537.537 INFO    ] 2026-08-31 16:53:09
[2026-08-31 16:53:09,571.571 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:53:09,771.771 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:53:09,798.798 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:53:09,976.976 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:53:10,011.011 INFO    ] time= 31/08/2026 16:53:09
[2026-08-31 16:53:10,055.055 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:53:10,104.104 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:53:10,164.164 INFO    ] No existing commands found in stream
[2026-08-31 16:53:15,176.176 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:53:15,179.179 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-08-31 16:53:18,976.976 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 16:53:18,979.979 INFO    ] Checking for system updates...
[2026-08-31 16:53:19,019.019 INFO    ] 200
[2026-08-31 16:53:19,021.021 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:53:19,073.073 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:53:19,076.076 INFO    ] No update needed
[2026-08-31 16:53:19,078.078 INFO    ] Checking for camera pi updates...
[2026-08-31 16:53:19,111.111 INFO    ] 200
[2026-08-31 16:53:19,114.114 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:53:19,160.160 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:53:19,242.242 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:53:19,245.245 INFO    ] No camera update needed
[2026-08-31 16:53:19,247.247 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:53:19,249.249 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:53:19,254.254 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:53:19,259.259 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:53:21,301.301 INFO    ] ================================================
[2026-08-31 16:53:21,316.316 INFO    ] Launching Daemon at Mon Aug 31 16:53:21 IST 2026
[2026-08-31 16:53:21,326.326 INFO    ] ================================================
[2026-08-31 16:53:21,963.963 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:53:21
[2026-08-31 16:53:22,549.549 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:53:22,801.801 INFO    ] Initializing speech engine...
[2026-08-31 16:53:22,807.807 INFO    ] 2026-08-31 16:53:22
[2026-08-31 16:53:23,119.119 INFO    ] 2026-08-31 16:53:23
[2026-08-31 16:53:23,145.145 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:53:23,370.370 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:53:23,380.380 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:53:23,521.521 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:53:23,544.544 INFO    ] time= 31/08/2026 16:53:23
[2026-08-31 16:53:23,552.552 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:53:23,560.560 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:53:23,638.638 INFO    ] No existing commands found in stream
[2026-08-31 16:53:28,663.663 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:53:28,666.666 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-08-31 16:53:31,280.280 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 16:53:31,283.283 INFO    ] Checking for system updates...
[2026-08-31 16:53:31,323.323 INFO    ] 200
[2026-08-31 16:53:31,325.325 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:53:31,385.385 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:53:31,388.388 INFO    ] No update needed
[2026-08-31 16:53:31,390.390 INFO    ] Checking for camera pi updates...
[2026-08-31 16:53:31,429.429 INFO    ] 200
[2026-08-31 16:53:31,431.431 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:53:31,482.482 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:53:31,571.571 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:53:31,573.573 INFO    ] No camera update needed
[2026-08-31 16:53:31,576.576 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:53:31,580.580 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:53:31,586.586 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:53:31,592.592 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:53:33,633.633 INFO    ] ================================================
[2026-08-31 16:53:33,648.648 INFO    ] Launching Daemon at Mon Aug 31 16:53:33 IST 2026
[2026-08-31 16:53:33,659.659 INFO    ] ================================================
[2026-08-31 16:53:34,340.340 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:53:34
[2026-08-31 16:53:35,033.033 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:53:35,306.306 INFO    ] Initializing speech engine...
[2026-08-31 16:53:35,315.315 INFO    ] 2026-08-31 16:53:35
[2026-08-31 16:53:35,564.564 INFO    ] 2026-08-31 16:53:35
[2026-08-31 16:53:35,600.600 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:53:35,797.797 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:53:35,855.855 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:53:36,060.060 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:53:36,121.121 INFO    ] time= 31/08/2026 16:53:36
[2026-08-31 16:53:36,127.127 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:53:36,145.145 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:53:36,274.274 INFO    ] No existing commands found in stream
[2026-08-31 16:53:41,288.288 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:53:41,291.291 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-08-31 16:53:44,979.979 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 16:53:44,981.981 INFO    ] Checking for system updates...
[2026-08-31 16:53:45,017.017 INFO    ] 200
[2026-08-31 16:53:45,020.020 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:53:45,073.073 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:53:45,075.075 INFO    ] No update needed
[2026-08-31 16:53:45,078.078 INFO    ] Checking for camera pi updates...
[2026-08-31 16:53:45,116.116 INFO    ] 200
[2026-08-31 16:53:45,118.118 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:53:45,159.159 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:53:45,344.344 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:53:45,346.346 INFO    ] No camera update needed
[2026-08-31 16:53:45,349.349 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:53:45,351.351 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:53:45,356.356 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:53:45,361.361 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:53:47,401.401 INFO    ] ================================================
[2026-08-31 16:53:47,416.416 INFO    ] Launching Daemon at Mon Aug 31 16:53:47 IST 2026
[2026-08-31 16:53:47,426.426 INFO    ] ================================================
[2026-08-31 16:53:48,016.016 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:53:48
[2026-08-31 16:53:48,613.613 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:53:48,889.889 INFO    ] Initializing speech engine...
[2026-08-31 16:53:48,898.898 INFO    ] 2026-08-31 16:53:48
[2026-08-31 16:53:49,155.155 INFO    ] 2026-08-31 16:53:49
[2026-08-31 16:53:49,186.186 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:53:49,374.374 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:53:49,431.431 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:53:49,576.576 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:53:49,621.621 INFO    ] time= 31/08/2026 16:53:49
[2026-08-31 16:53:49,685.685 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:53:49,706.706 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:53:49,764.764 INFO    ] No existing commands found in stream
[2026-08-31 16:53:54,777.777 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:53:54,780.780 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-08-31 16:53:57,859.859 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 16:53:57,863.863 INFO    ] Checking for system updates...
[2026-08-31 16:53:57,914.914 INFO    ] 200
[2026-08-31 16:53:57,916.916 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:53:57,976.976 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:53:57,979.979 INFO    ] No update needed
[2026-08-31 16:53:57,981.981 INFO    ] Checking for camera pi updates...
[2026-08-31 16:53:58,015.015 INFO    ] 200
[2026-08-31 16:53:58,018.018 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:53:58,058.058 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:53:58,143.143 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:53:58,146.146 INFO    ] No camera update needed
[2026-08-31 16:53:58,148.148 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:53:58,151.151 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:53:58,156.156 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:53:58,161.161 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:54:00,201.201 INFO    ] ================================================
[2026-08-31 16:54:00,216.216 INFO    ] Launching Daemon at Mon Aug 31 16:54:00 IST 2026
[2026-08-31 16:54:00,226.226 INFO    ] ================================================
[2026-08-31 16:54:00,807.807 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:54:00
[2026-08-31 16:54:01,403.403 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:54:01,929.929 INFO    ] Initializing speech engine...
[2026-08-31 16:54:01,933.933 INFO    ] 2026-08-31 16:54:01
[2026-08-31 16:54:02,301.301 INFO    ] 2026-08-31 16:54:02
[2026-08-31 16:54:02,367.367 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:54:02,629.629 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:54:02,678.678 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:54:02,836.836 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:54:02,875.875 INFO    ] time= 31/08/2026 16:54:02
[2026-08-31 16:54:02,956.956 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:54:03,026.026 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:54:03,173.173 INFO    ] No existing commands found in stream
[2026-08-31 16:54:08,205.205 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:54:08,208.208 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-08-31 16:54:10,938.938 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 16:54:10,941.941 INFO    ] Checking for system updates...
[2026-08-31 16:54:10,979.979 INFO    ] 200
[2026-08-31 16:54:10,981.981 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:54:11,039.039 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:54:11,042.042 INFO    ] No update needed
[2026-08-31 16:54:11,044.044 INFO    ] Checking for camera pi updates...
[2026-08-31 16:54:11,080.080 INFO    ] 200
[2026-08-31 16:54:11,082.082 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:54:11,123.123 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:54:11,214.214 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:54:11,216.216 INFO    ] No camera update needed
[2026-08-31 16:54:11,219.219 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:54:11,221.221 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:54:11,227.227 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:54:11,231.231 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:54:13,271.271 INFO    ] ================================================
[2026-08-31 16:54:13,286.286 INFO    ] Launching Daemon at Mon Aug 31 16:54:13 IST 2026
[2026-08-31 16:54:13,296.296 INFO    ] ================================================
[2026-08-31 16:54:13,877.877 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:54:13
[2026-08-31 16:54:14,475.475 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:54:14,748.748 INFO    ] Initializing speech engine...
[2026-08-31 16:54:14,758.758 INFO    ] 2026-08-31 16:54:14
[2026-08-31 16:54:15,013.013 INFO    ] 2026-08-31 16:54:15
[2026-08-31 16:54:15,071.071 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:54:15,298.298 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:54:15,304.304 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:54:15,536.536 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:54:15,558.558 INFO    ] time= 31/08/2026 16:54:15
[2026-08-31 16:54:15,575.575 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:54:15,585.585 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:54:15,709.709 INFO    ] No existing commands found in stream
[2026-08-31 16:54:20,725.725 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:54:20,728.728 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-08-31 16:54:21,441.441 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 16:54:21,444.444 INFO    ] Checking for system updates...
[2026-08-31 16:54:21,479.479 INFO    ] 200
[2026-08-31 16:54:21,482.482 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:54:21,539.539 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:54:21,542.542 INFO    ] No update needed
[2026-08-31 16:54:21,544.544 INFO    ] Checking for camera pi updates...
[2026-08-31 16:54:21,578.578 INFO    ] 200
[2026-08-31 16:54:21,581.581 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:54:21,622.622 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:54:21,711.711 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:54:21,714.714 INFO    ] No camera update needed
[2026-08-31 16:54:21,717.717 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:54:21,719.719 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:54:21,725.725 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:54:21,731.731 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:54:23,773.773 INFO    ] ================================================
[2026-08-31 16:54:23,788.788 INFO    ] Launching Daemon at Mon Aug 31 16:54:23 IST 2026
[2026-08-31 16:54:23,798.798 INFO    ] ================================================
[2026-08-31 16:54:24,380.380 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:54:24
[2026-08-31 16:54:24,981.981 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:54:25,245.245 INFO    ] Initializing speech engine...
[2026-08-31 16:54:25,270.270 INFO    ] 2026-08-31 16:54:25
[2026-08-31 16:54:25,542.542 INFO    ] 2026-08-31 16:54:25
[2026-08-31 16:54:25,577.577 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:54:25,804.804 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:54:25,862.862 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:54:26,018.018 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:54:26,034.034 INFO    ] time= 31/08/2026 16:54:26
[2026-08-31 16:54:26,109.109 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:54:26,165.165 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:54:26,238.238 INFO    ] No existing commands found in stream
[2026-08-31 16:54:31,273.273 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:54:31,276.276 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-08-31 16:54:35,463.463 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 16:54:35,465.465 INFO    ] Checking for system updates...
[2026-08-31 16:54:35,505.505 INFO    ] 200
[2026-08-31 16:54:35,508.508 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:54:35,570.570 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:54:35,573.573 INFO    ] No update needed
[2026-08-31 16:54:35,575.575 INFO    ] Checking for camera pi updates...
[2026-08-31 16:54:35,610.610 INFO    ] 200
[2026-08-31 16:54:35,613.613 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:54:35,658.658 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:54:35,744.744 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:54:35,746.746 INFO    ] No camera update needed
[2026-08-31 16:54:35,749.749 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:54:35,752.752 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:54:35,758.758 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:54:35,763.763 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:54:37,805.805 INFO    ] ================================================
[2026-08-31 16:54:37,821.821 INFO    ] Launching Daemon at Mon Aug 31 16:54:37 IST 2026
[2026-08-31 16:54:37,832.832 INFO    ] ================================================
[2026-08-31 16:54:38,396.396 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:54:38
[2026-08-31 16:54:38,976.976 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:54:39,228.228 INFO    ] Initializing speech engine...
[2026-08-31 16:54:39,236.236 INFO    ] 2026-08-31 16:54:39
[2026-08-31 16:54:39,523.523 INFO    ] 2026-08-31 16:54:39
[2026-08-31 16:54:39,560.560 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:54:39,762.762 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:54:39,782.782 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:54:39,996.996 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:54:40,004.004 INFO    ] time= 31/08/2026 16:54:39
[2026-08-31 16:54:40,068.068 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:54:40,112.112 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:54:40,207.207 INFO    ] No existing commands found in stream
[2026-08-31 16:54:45,219.219 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:54:45,222.222 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-08-31 16:54:47,609.609 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 16:54:47,612.612 INFO    ] Checking for system updates...
[2026-08-31 16:54:47,650.650 INFO    ] 200
[2026-08-31 16:54:47,653.653 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:54:47,710.710 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:54:47,712.712 INFO    ] No update needed
[2026-08-31 16:54:47,714.714 INFO    ] Checking for camera pi updates...
[2026-08-31 16:54:47,747.747 INFO    ] 200
[2026-08-31 16:54:47,750.750 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:54:47,797.797 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:54:47,882.882 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:54:47,884.884 INFO    ] No camera update needed
[2026-08-31 16:54:47,886.886 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:54:47,889.889 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:54:47,894.894 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:54:47,899.899 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:54:49,939.939 INFO    ] ================================================
[2026-08-31 16:54:49,955.955 INFO    ] Launching Daemon at Mon Aug 31 16:54:49 IST 2026
[2026-08-31 16:54:49,966.966 INFO    ] ================================================
[2026-08-31 16:54:50,559.559 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:54:50
[2026-08-31 16:54:51,157.157 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:54:51,415.415 INFO    ] Initializing speech engine...
[2026-08-31 16:54:51,423.423 INFO    ] 2026-08-31 16:54:51
[2026-08-31 16:54:51,716.716 INFO    ] 2026-08-31 16:54:51
[2026-08-31 16:54:51,753.753 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:54:51,973.973 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:54:52,013.013 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:54:52,192.192 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:54:52,219.219 INFO    ] time= 31/08/2026 16:54:52
[2026-08-31 16:54:52,279.279 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:54:52,333.333 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:54:52,398.398 INFO    ] No existing commands found in stream
[2026-08-31 16:54:57,410.410 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:54:57,413.413 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-08-31 16:54:59,762.762 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 16:54:59,765.765 INFO    ] Checking for system updates...
[2026-08-31 16:54:59,803.803 INFO    ] 200
[2026-08-31 16:54:59,806.806 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:54:59,864.864 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:54:59,867.867 INFO    ] No update needed
[2026-08-31 16:54:59,870.870 INFO    ] Checking for camera pi updates...
[2026-08-31 16:54:59,904.904 INFO    ] 200
[2026-08-31 16:54:59,907.907 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:54:59,948.948 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:54:59,998.998 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:55:00,001.001 INFO    ] No camera update needed
[2026-08-31 16:55:00,004.004 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:55:00,006.006 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:55:00,012.012 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:55:00,018.018 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:55:02,090.090 INFO    ] ================================================
[2026-08-31 16:55:02,122.122 INFO    ] Launching Daemon at Mon Aug 31 16:55:02 IST 2026
[2026-08-31 16:55:02,147.147 INFO    ] ================================================
[2026-08-31 16:55:02,984.984 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:55:02
[2026-08-31 16:55:03,673.673 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:55:03,927.927 INFO    ] Initializing speech engine...
[2026-08-31 16:55:03,949.949 INFO    ] 2026-08-31 16:55:03
[2026-08-31 16:55:04,201.201 INFO    ] 2026-08-31 16:55:04
[2026-08-31 16:55:04,236.236 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:55:04,416.416 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:55:04,437.437 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:55:04,631.631 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:55:04,670.670 INFO    ] time= 31/08/2026 16:55:04
[2026-08-31 16:55:04,739.739 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:55:04,761.761 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:55:04,904.904 INFO    ] No existing commands found in stream
[2026-08-31 16:55:09,921.921 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:55:09,924.924 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-08-31 16:55:12,079.079 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 16:55:12,081.081 INFO    ] Checking for system updates...
[2026-08-31 16:55:12,116.116 INFO    ] 200
[2026-08-31 16:55:12,119.119 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:55:12,171.171 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:55:12,173.173 INFO    ] No update needed
[2026-08-31 16:55:12,175.175 INFO    ] Checking for camera pi updates...
[2026-08-31 16:55:12,208.208 INFO    ] 200
[2026-08-31 16:55:12,211.211 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:55:12,250.250 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:55:12,334.334 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:55:12,337.337 INFO    ] No camera update needed
[2026-08-31 16:55:12,339.339 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:55:12,341.341 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:55:12,347.347 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:55:12,352.352 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:55:14,392.392 INFO    ] ================================================
[2026-08-31 16:55:14,408.408 INFO    ] Launching Daemon at Mon Aug 31 16:55:14 IST 2026
[2026-08-31 16:55:14,419.419 INFO    ] ================================================
[2026-08-31 16:55:14,988.988 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:55:14
[2026-08-31 16:55:15,620.620 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:55:15,920.920 INFO    ] Initializing speech engine...
[2026-08-31 16:55:15,934.934 INFO    ] 2026-08-31 16:55:15
[2026-08-31 16:55:16,217.217 INFO    ] 2026-08-31 16:55:16
[2026-08-31 16:55:16,262.262 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:55:16,490.490 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:55:16,496.496 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:55:16,633.633 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:55:16,688.688 INFO    ] time= 31/08/2026 16:55:16
[2026-08-31 16:55:16,743.743 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:55:16,768.768 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:55:16,922.922 INFO    ] No existing commands found in stream
[2026-08-31 16:55:21,951.951 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:55:21,954.954 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-08-31 16:55:22,900.900 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 16:55:22,903.903 INFO    ] Checking for system updates...
[2026-08-31 16:55:22,940.940 INFO    ] 200
[2026-08-31 16:55:22,943.943 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:55:23,003.003 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:55:23,005.005 INFO    ] No update needed
[2026-08-31 16:55:23,008.008 INFO    ] Checking for camera pi updates...
[2026-08-31 16:55:23,043.043 INFO    ] 200
[2026-08-31 16:55:23,045.045 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:55:23,087.087 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:55:23,165.165 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:55:23,168.168 INFO    ] No camera update needed
[2026-08-31 16:55:23,171.171 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:55:23,174.174 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:55:23,180.180 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:55:23,186.186 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:55:25,226.226 INFO    ] ================================================
[2026-08-31 16:55:25,241.241 INFO    ] Launching Daemon at Mon Aug 31 16:55:25 IST 2026
[2026-08-31 16:55:25,252.252 INFO    ] ================================================
[2026-08-31 16:55:25,820.820 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:55:25
[2026-08-31 16:55:26,404.404 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:55:26,673.673 INFO    ] Initializing speech engine...
[2026-08-31 16:55:26,682.682 INFO    ] 2026-08-31 16:55:26
[2026-08-31 16:55:26,932.932 INFO    ] 2026-08-31 16:55:26
[2026-08-31 16:55:26,968.968 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:55:27,226.226 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:55:27,235.235 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:55:27,378.378 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:55:27,438.438 INFO    ] time= 31/08/2026 16:55:27
[2026-08-31 16:55:27,502.502 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:55:27,511.511 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:55:27,643.643 INFO    ] No existing commands found in stream
[2026-08-31 16:55:32,666.666 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:55:32,669.669 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-08-31 16:55:33,732.732 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 16:55:33,734.734 INFO    ] Checking for system updates...
[2026-08-31 16:55:33,774.774 INFO    ] 200
[2026-08-31 16:55:33,776.776 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:55:33,835.835 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:55:33,838.838 INFO    ] No update needed
[2026-08-31 16:55:33,840.840 INFO    ] Checking for camera pi updates...
[2026-08-31 16:55:33,878.878 INFO    ] 200
[2026-08-31 16:55:33,880.880 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:55:33,925.925 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:55:34,012.012 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:55:34,014.014 INFO    ] No camera update needed
[2026-08-31 16:55:34,017.017 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:55:34,019.019 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:55:34,024.024 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:55:34,029.029 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:55:36,070.070 INFO    ] ================================================
[2026-08-31 16:55:36,086.086 INFO    ] Launching Daemon at Mon Aug 31 16:55:36 IST 2026
[2026-08-31 16:55:36,097.097 INFO    ] ================================================
[2026-08-31 16:55:36,749.749 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:55:36
[2026-08-31 16:55:37,423.423 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:55:37,726.726 INFO    ] Initializing speech engine...
[2026-08-31 16:55:37,734.734 INFO    ] 2026-08-31 16:55:37
[2026-08-31 16:55:38,019.019 INFO    ] 2026-08-31 16:55:38
[2026-08-31 16:55:38,064.064 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:55:38,313.313 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:55:38,317.317 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:55:38,531.531 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:55:38,555.555 INFO    ] time= 31/08/2026 16:55:38
[2026-08-31 16:55:38,573.573 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:55:38,603.603 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:55:38,720.720 INFO    ] No existing commands found in stream
[2026-08-31 16:55:43,755.755 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:55:43,758.758 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-08-31 16:55:47,176.176 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 16:55:47,179.179 INFO    ] Checking for system updates...
[2026-08-31 16:55:47,221.221 INFO    ] 200
[2026-08-31 16:55:47,224.224 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:55:47,277.277 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:55:47,280.280 INFO    ] No update needed
[2026-08-31 16:55:47,283.283 INFO    ] Checking for camera pi updates...
[2026-08-31 16:55:47,318.318 INFO    ] 200
[2026-08-31 16:55:47,322.322 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:55:47,363.363 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:55:47,456.456 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:55:47,459.459 INFO    ] No camera update needed
[2026-08-31 16:55:47,461.461 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:55:47,464.464 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:55:47,470.470 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:55:47,476.476 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:55:49,518.518 INFO    ] ================================================
[2026-08-31 16:55:49,532.532 INFO    ] Launching Daemon at Mon Aug 31 16:55:49 IST 2026
[2026-08-31 16:55:49,543.543 INFO    ] ================================================
[2026-08-31 16:55:50,122.122 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:55:50
[2026-08-31 16:55:50,720.720 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:55:50,996.996 INFO    ] Initializing speech engine...
[2026-08-31 16:55:51,003.003 INFO    ] 2026-08-31 16:55:50
[2026-08-31 16:55:51,264.264 INFO    ] 2026-08-31 16:55:51
[2026-08-31 16:55:51,318.318 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:55:51,539.539 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:55:51,548.548 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:55:51,765.765 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:55:51,806.806 INFO    ] time= 31/08/2026 16:55:51
[2026-08-31 16:55:51,824.824 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:55:51,833.833 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:55:51,959.959 INFO    ] No existing commands found in stream
[2026-08-31 16:55:56,972.972 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:55:56,975.975 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-08-31 16:55:58,518.518 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 16:55:58,520.520 INFO    ] Checking for system updates...
[2026-08-31 16:55:58,981.981 INFO    ] 200
[2026-08-31 16:55:58,983.983 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:55:59,036.036 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:55:59,039.039 INFO    ] No update needed
[2026-08-31 16:55:59,041.041 INFO    ] Checking for camera pi updates...
[2026-08-31 16:55:59,074.074 INFO    ] 200
[2026-08-31 16:55:59,077.077 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:55:59,117.117 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:55:59,298.298 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:55:59,300.300 INFO    ] No camera update needed
[2026-08-31 16:55:59,302.302 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:55:59,305.305 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:55:59,310.310 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:55:59,315.315 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:56:01,355.355 INFO    ] ================================================
[2026-08-31 16:56:01,370.370 INFO    ] Launching Daemon at Mon Aug 31 16:56:01 IST 2026
[2026-08-31 16:56:01,381.381 INFO    ] ================================================
[2026-08-31 16:56:02,030.030 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:56:02
[2026-08-31 16:56:02,811.811 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:56:03,117.117 INFO    ] Initializing speech engine...
[2026-08-31 16:56:03,138.138 INFO    ] 2026-08-31 16:56:03
[2026-08-31 16:56:03,461.461 INFO    ] 2026-08-31 16:56:03
[2026-08-31 16:56:03,533.533 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:56:03,770.770 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:56:03,780.780 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:56:03,983.983 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:56:04,037.037 INFO    ] time= 31/08/2026 16:56:03
[2026-08-31 16:56:04,044.044 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:56:04,062.062 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:56:04,174.174 INFO    ] No existing commands found in stream
[2026-08-31 16:56:09,203.203 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:56:09,206.206 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-08-31 16:56:11,039.039 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 16:56:11,042.042 INFO    ] Checking for system updates...
[2026-08-31 16:56:11,081.081 INFO    ] 200
[2026-08-31 16:56:11,083.083 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:56:11,141.141 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:56:11,144.144 INFO    ] No update needed
[2026-08-31 16:56:11,146.146 INFO    ] Checking for camera pi updates...
[2026-08-31 16:56:11,183.183 INFO    ] 200
[2026-08-31 16:56:11,185.185 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:56:11,226.226 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:56:11,309.309 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:56:11,312.312 INFO    ] No camera update needed
[2026-08-31 16:56:11,314.314 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:56:11,316.316 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:56:11,322.322 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:56:11,327.327 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:56:13,367.367 INFO    ] ================================================
[2026-08-31 16:56:13,382.382 INFO    ] Launching Daemon at Mon Aug 31 16:56:13 IST 2026
[2026-08-31 16:56:13,393.393 INFO    ] ================================================
[2026-08-31 16:56:13,973.973 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:56:13
[2026-08-31 16:56:14,571.571 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:56:14,847.847 INFO    ] Initializing speech engine...
[2026-08-31 16:56:14,854.854 INFO    ] 2026-08-31 16:56:14
[2026-08-31 16:56:15,115.115 INFO    ] 2026-08-31 16:56:15
[2026-08-31 16:56:15,169.169 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:56:15,391.391 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:56:15,400.400 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:56:15,532.532 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:56:15,579.579 INFO    ] time= 31/08/2026 16:56:15
[2026-08-31 16:56:15,639.639 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:56:15,665.665 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:56:15,718.718 INFO    ] No existing commands found in stream
[2026-08-31 16:56:20,730.730 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:56:20,733.733 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-08-31 16:56:23,768.768 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 16:56:23,771.771 INFO    ] Checking for system updates...
[2026-08-31 16:56:23,806.806 INFO    ] 200
[2026-08-31 16:56:23,809.809 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:56:23,863.863 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:56:23,865.865 INFO    ] No update needed
[2026-08-31 16:56:23,868.868 INFO    ] Checking for camera pi updates...
[2026-08-31 16:56:23,901.901 INFO    ] 200
[2026-08-31 16:56:23,904.904 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:56:23,944.944 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:56:24,023.023 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:56:24,026.026 INFO    ] No camera update needed
[2026-08-31 16:56:24,028.028 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:56:24,031.031 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:56:24,039.039 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:56:24,044.044 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:56:26,086.086 INFO    ] ================================================
[2026-08-31 16:56:26,101.101 INFO    ] Launching Daemon at Mon Aug 31 16:56:26 IST 2026
[2026-08-31 16:56:26,113.113 INFO    ] ================================================
[2026-08-31 16:56:26,693.693 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:56:26
[2026-08-31 16:56:27,288.288 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:56:27,565.565 INFO    ] Initializing speech engine...
[2026-08-31 16:56:27,571.571 INFO    ] 2026-08-31 16:56:27
[2026-08-31 16:56:27,817.817 INFO    ] 2026-08-31 16:56:27
[2026-08-31 16:56:27,852.852 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:56:28,104.104 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:56:28,113.113 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:56:28,336.336 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:56:28,370.370 INFO    ] time= 31/08/2026 16:56:28
[2026-08-31 16:56:28,376.376 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:56:28,394.394 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:56:28,524.524 INFO    ] No existing commands found in stream
[2026-08-31 16:56:33,539.539 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:56:33,542.542 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-08-31 16:56:36,897.897 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 16:56:36,900.900 INFO    ] Checking for system updates...
[2026-08-31 16:56:36,936.936 INFO    ] 200
[2026-08-31 16:56:36,939.939 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:56:36,991.991 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:56:36,994.994 INFO    ] No update needed
[2026-08-31 16:56:36,996.996 INFO    ] Checking for camera pi updates...
[2026-08-31 16:56:37,030.030 INFO    ] 200
[2026-08-31 16:56:37,033.033 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:56:37,073.073 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:56:37,160.160 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:56:37,162.162 INFO    ] No camera update needed
[2026-08-31 16:56:37,164.164 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:56:37,167.167 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:56:37,172.172 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:56:37,177.177 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:56:39,217.217 INFO    ] ================================================
[2026-08-31 16:56:39,232.232 INFO    ] Launching Daemon at Mon Aug 31 16:56:39 IST 2026
[2026-08-31 16:56:39,243.243 INFO    ] ================================================
[2026-08-31 16:56:39,884.884 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:56:39
[2026-08-31 16:56:40,520.520 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:56:40,799.799 INFO    ] Initializing speech engine...
[2026-08-31 16:56:40,806.806 INFO    ] 2026-08-31 16:56:40
[2026-08-31 16:56:41,066.066 INFO    ] 2026-08-31 16:56:41
[2026-08-31 16:56:41,118.118 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:56:41,345.345 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:56:41,350.350 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:56:41,573.573 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:56:41,611.611 INFO    ] time= 31/08/2026 16:56:41
[2026-08-31 16:56:41,626.626 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:56:41,635.635 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:56:41,752.752 INFO    ] No existing commands found in stream
[2026-08-31 16:56:46,773.773 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:56:46,775.775 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-08-31 16:56:49,380.380 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 16:56:49,382.382 INFO    ] Checking for system updates...
[2026-08-31 16:56:49,418.418 INFO    ] 200
[2026-08-31 16:56:49,421.421 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:56:49,478.478 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:56:49,481.481 INFO    ] No update needed
[2026-08-31 16:56:49,483.483 INFO    ] Checking for camera pi updates...
[2026-08-31 16:56:49,520.520 INFO    ] 200
[2026-08-31 16:56:49,522.522 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:56:49,567.567 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:56:49,662.662 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:56:49,664.664 INFO    ] No camera update needed
[2026-08-31 16:56:49,667.667 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:56:49,669.669 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:56:49,674.674 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:56:49,679.679 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:56:51,720.720 INFO    ] ================================================
[2026-08-31 16:56:51,735.735 INFO    ] Launching Daemon at Mon Aug 31 16:56:51 IST 2026
[2026-08-31 16:56:51,746.746 INFO    ] ================================================
[2026-08-31 16:56:52,335.335 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:56:52
[2026-08-31 16:56:52,916.916 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:56:53,184.184 INFO    ] Initializing speech engine...
[2026-08-31 16:56:53,194.194 INFO    ] 2026-08-31 16:56:53
[2026-08-31 16:56:53,439.439 INFO    ] 2026-08-31 16:56:53
[2026-08-31 16:56:53,473.473 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:56:53,729.729 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:56:53,735.735 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:56:53,936.936 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:56:53,989.989 INFO    ] time= 31/08/2026 16:56:53
[2026-08-31 16:56:53,995.995 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:56:54,013.013 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:56:54,128.128 INFO    ] No existing commands found in stream
[2026-08-31 16:56:59,150.150 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:56:59,152.152 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-08-31 16:57:01,188.188 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 16:57:01,191.191 INFO    ] Checking for system updates...
[2026-08-31 16:57:01,227.227 INFO    ] 200
[2026-08-31 16:57:01,230.230 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:57:01,284.284 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:57:01,286.286 INFO    ] No update needed
[2026-08-31 16:57:01,289.289 INFO    ] Checking for camera pi updates...
[2026-08-31 16:57:01,327.327 INFO    ] 200
[2026-08-31 16:57:01,330.330 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:57:01,371.371 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:57:01,518.518 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:57:01,521.521 INFO    ] No camera update needed
[2026-08-31 16:57:01,523.523 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:57:01,526.526 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:57:01,532.532 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:57:01,538.538 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:57:03,581.581 INFO    ] ================================================
[2026-08-31 16:57:03,596.596 INFO    ] Launching Daemon at Mon Aug 31 16:57:03 IST 2026
[2026-08-31 16:57:03,606.606 INFO    ] ================================================
[2026-08-31 16:57:04,202.202 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:57:04
[2026-08-31 16:57:04,847.847 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:57:05,145.145 INFO    ] Initializing speech engine...
[2026-08-31 16:57:05,158.158 INFO    ] 2026-08-31 16:57:05
[2026-08-31 16:57:05,433.433 INFO    ] 2026-08-31 16:57:05
[2026-08-31 16:57:05,477.477 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:57:05,702.702 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:57:05,709.709 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:57:05,935.935 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:57:05,965.965 INFO    ] time= 31/08/2026 16:57:05
[2026-08-31 16:57:05,983.983 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:57:05,993.993 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:57:06,117.117 INFO    ] No existing commands found in stream
[2026-08-31 16:57:11,132.132 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:57:11,135.135 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-08-31 16:57:15,481.481 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 16:57:15,484.484 INFO    ] Checking for system updates...
[2026-08-31 16:57:15,523.523 INFO    ] 200
[2026-08-31 16:57:15,526.526 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:57:15,582.582 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:57:15,584.584 INFO    ] No update needed
[2026-08-31 16:57:15,587.587 INFO    ] Checking for camera pi updates...
[2026-08-31 16:57:15,624.624 INFO    ] 200
[2026-08-31 16:57:15,626.626 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:57:15,674.674 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:57:15,780.780 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:57:15,783.783 INFO    ] No camera update needed
[2026-08-31 16:57:15,785.785 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:57:15,788.788 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:57:15,795.795 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:57:15,801.801 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:57:17,841.841 INFO    ] ================================================
[2026-08-31 16:57:17,856.856 INFO    ] Launching Daemon at Mon Aug 31 16:57:17 IST 2026
[2026-08-31 16:57:17,867.867 INFO    ] ================================================
[2026-08-31 16:57:18,435.435 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:57:18
[2026-08-31 16:57:19,019.019 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:57:19,273.273 INFO    ] Initializing speech engine...
[2026-08-31 16:57:19,304.304 INFO    ] 2026-08-31 16:57:19
[2026-08-31 16:57:19,555.555 INFO    ] 2026-08-31 16:57:19
[2026-08-31 16:57:19,590.590 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:57:19,846.846 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:57:19,851.851 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:57:20,063.063 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:57:20,107.107 INFO    ] time= 31/08/2026 16:57:20
[2026-08-31 16:57:20,113.113 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:57:20,130.130 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:57:20,255.255 INFO    ] No existing commands found in stream
[2026-08-31 16:57:25,272.272 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:57:25,274.274 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-08-31 16:57:29,579.579 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 16:57:29,581.581 INFO    ] Checking for system updates...
[2026-08-31 16:57:29,617.617 INFO    ] 200
[2026-08-31 16:57:29,619.619 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:57:29,671.671 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:57:29,674.674 INFO    ] No update needed
[2026-08-31 16:57:29,676.676 INFO    ] Checking for camera pi updates...
[2026-08-31 16:57:29,710.710 INFO    ] 200
[2026-08-31 16:57:29,713.713 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:57:29,753.753 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:57:29,837.837 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:57:29,840.840 INFO    ] No camera update needed
[2026-08-31 16:57:29,842.842 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:57:29,844.844 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:57:29,850.850 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:57:29,855.855 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:57:31,895.895 INFO    ] ================================================
[2026-08-31 16:57:31,910.910 INFO    ] Launching Daemon at Mon Aug 31 16:57:31 IST 2026
[2026-08-31 16:57:31,922.922 INFO    ] ================================================
[2026-08-31 16:57:32,621.621 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:57:32
[2026-08-31 16:57:33,326.326 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:57:33,630.630 INFO    ] Initializing speech engine...
[2026-08-31 16:57:33,643.643 INFO    ] 2026-08-31 16:57:33
[2026-08-31 16:57:33,952.952 INFO    ] 2026-08-31 16:57:33
[2026-08-31 16:57:34,028.028 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:57:34,251.251 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:57:34,256.256 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:57:34,453.453 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:57:34,474.474 INFO    ] time= 31/08/2026 16:57:34
[2026-08-31 16:57:34,500.500 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:57:34,508.508 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:57:34,634.634 INFO    ] No existing commands found in stream
[2026-08-31 16:57:39,665.665 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:57:39,668.668 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-08-31 16:57:41,142.142 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 16:57:41,145.145 INFO    ] Checking for system updates...
[2026-08-31 16:57:41,182.182 INFO    ] 200
[2026-08-31 16:57:41,185.185 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:57:41,244.244 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:57:41,247.247 INFO    ] No update needed
[2026-08-31 16:57:41,250.250 INFO    ] Checking for camera pi updates...
[2026-08-31 16:57:41,285.285 INFO    ] 200
[2026-08-31 16:57:41,288.288 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:57:41,328.328 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:57:41,427.427 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:57:41,430.430 INFO    ] No camera update needed
[2026-08-31 16:57:41,433.433 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:57:41,435.435 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:57:41,441.441 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:57:41,447.447 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:57:43,489.489 INFO    ] ================================================
[2026-08-31 16:57:43,504.504 INFO    ] Launching Daemon at Mon Aug 31 16:57:43 IST 2026
[2026-08-31 16:57:43,514.514 INFO    ] ================================================
[2026-08-31 16:57:44,159.159 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:57:44
[2026-08-31 16:57:44,778.778 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:57:45,034.034 INFO    ] Initializing speech engine...
[2026-08-31 16:57:45,040.040 INFO    ] 2026-08-31 16:57:45
[2026-08-31 16:57:45,332.332 INFO    ] 2026-08-31 16:57:45
[2026-08-31 16:57:45,369.369 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:57:45,564.564 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:57:45,578.578 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:57:45,737.737 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:57:45,746.746 INFO    ] time= 31/08/2026 16:57:45
[2026-08-31 16:57:45,750.750 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:57:45,756.756 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:57:45,867.867 INFO    ] No existing commands found in stream
[2026-08-31 16:57:50,892.892 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:57:50,895.895 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-08-31 16:57:52,619.619 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 16:57:52,621.621 INFO    ] Checking for system updates...
[2026-08-31 16:57:52,656.656 INFO    ] 200
[2026-08-31 16:57:52,659.659 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:57:52,713.713 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:57:52,715.715 INFO    ] No update needed
[2026-08-31 16:57:52,718.718 INFO    ] Checking for camera pi updates...
[2026-08-31 16:57:52,754.754 INFO    ] 200
[2026-08-31 16:57:52,757.757 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:57:52,801.801 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:57:52,879.879 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:57:52,881.881 INFO    ] No camera update needed
[2026-08-31 16:57:52,883.883 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:57:52,886.886 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:57:52,891.891 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:57:52,896.896 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:57:54,936.936 INFO    ] ================================================
[2026-08-31 16:57:54,951.951 INFO    ] Launching Daemon at Mon Aug 31 16:57:54 IST 2026
[2026-08-31 16:57:54,962.962 INFO    ] ================================================
[2026-08-31 16:57:55,610.610 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:57:55
[2026-08-31 16:57:56,278.278 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:57:56,586.586 INFO    ] Initializing speech engine...
[2026-08-31 16:57:56,596.596 INFO    ] 2026-08-31 16:57:56
[2026-08-31 16:57:56,906.906 INFO    ] 2026-08-31 16:57:56
[2026-08-31 16:57:56,987.987 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:57:57,170.170 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:57:57,189.189 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:57:57,404.404 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:57:57,412.412 INFO    ] time= 31/08/2026 16:57:57
[2026-08-31 16:57:57,433.433 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:57:57,461.461 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:57:57,567.567 INFO    ] No existing commands found in stream
[2026-08-31 16:58:02,597.597 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:58:02,601.601 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-08-31 16:58:03,210.210 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 16:58:03,213.213 INFO    ] Checking for system updates...
[2026-08-31 16:58:03,251.251 INFO    ] 200
[2026-08-31 16:58:03,255.255 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:58:03,325.325 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:58:03,328.328 INFO    ] No update needed
[2026-08-31 16:58:03,330.330 INFO    ] Checking for camera pi updates...
[2026-08-31 16:58:03,371.371 INFO    ] 200
[2026-08-31 16:58:03,374.374 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:58:03,418.418 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:58:03,521.521 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:58:03,524.524 INFO    ] No camera update needed
[2026-08-31 16:58:03,526.526 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:58:03,528.528 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:58:03,533.533 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:58:03,538.538 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:58:05,580.580 INFO    ] ================================================
[2026-08-31 16:58:05,595.595 INFO    ] Launching Daemon at Mon Aug 31 16:58:05 IST 2026
[2026-08-31 16:58:05,607.607 INFO    ] ================================================
[2026-08-31 16:58:06,173.173 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:58:06
[2026-08-31 16:58:06,774.774 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:58:07,041.041 INFO    ] Initializing speech engine...
[2026-08-31 16:58:07,051.051 INFO    ] 2026-08-31 16:58:07
[2026-08-31 16:58:07,296.296 INFO    ] 2026-08-31 16:58:07
[2026-08-31 16:58:07,330.330 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:58:07,586.586 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:58:07,590.590 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:58:07,819.819 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:58:07,848.848 INFO    ] time= 31/08/2026 16:58:07
[2026-08-31 16:58:07,864.864 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:58:07,873.873 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:58:07,999.999 INFO    ] No existing commands found in stream
[2026-08-31 16:58:13,015.015 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:58:13,018.018 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-08-31 16:58:15,409.409 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 16:58:15,412.412 INFO    ] Checking for system updates...
[2026-08-31 16:58:15,448.448 INFO    ] 200
[2026-08-31 16:58:15,450.450 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:58:15,502.502 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:58:15,505.505 INFO    ] No update needed
[2026-08-31 16:58:15,507.507 INFO    ] Checking for camera pi updates...
[2026-08-31 16:58:15,540.540 INFO    ] 200
[2026-08-31 16:58:15,543.543 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:58:15,583.583 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:58:15,662.662 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:58:15,664.664 INFO    ] No camera update needed
[2026-08-31 16:58:15,666.666 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:58:15,669.669 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:58:15,674.674 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:58:15,679.679 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:58:17,720.720 INFO    ] ================================================
[2026-08-31 16:58:17,735.735 INFO    ] Launching Daemon at Mon Aug 31 16:58:17 IST 2026
[2026-08-31 16:58:17,746.746 INFO    ] ================================================
[2026-08-31 16:58:18,310.310 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:58:18
[2026-08-31 16:58:18,891.891 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:58:19,160.160 INFO    ] Initializing speech engine...
[2026-08-31 16:58:19,169.169 INFO    ] 2026-08-31 16:58:19
[2026-08-31 16:58:19,418.418 INFO    ] 2026-08-31 16:58:19
[2026-08-31 16:58:19,453.453 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:58:19,712.712 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:58:19,721.721 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:58:19,858.858 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:58:19,898.898 INFO    ] time= 31/08/2026 16:58:19
[2026-08-31 16:58:19,967.967 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:58:19,993.993 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:58:20,129.129 INFO    ] No existing commands found in stream
[2026-08-31 16:58:25,153.153 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:58:25,156.156 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-08-31 16:58:28,801.801 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 16:58:28,804.804 INFO    ] Checking for system updates...
[2026-08-31 16:58:28,841.841 INFO    ] 200
[2026-08-31 16:58:28,844.844 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:58:28,902.902 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:58:28,905.905 INFO    ] No update needed
[2026-08-31 16:58:28,908.908 INFO    ] Checking for camera pi updates...
[2026-08-31 16:58:28,952.952 INFO    ] 200
[2026-08-31 16:58:28,955.955 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:58:29,001.001 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:58:29,100.100 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:58:29,103.103 INFO    ] No camera update needed
[2026-08-31 16:58:29,105.105 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:58:29,107.107 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:58:29,113.113 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:58:29,118.118 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:58:31,158.158 INFO    ] ================================================
[2026-08-31 16:58:31,174.174 INFO    ] Launching Daemon at Mon Aug 31 16:58:31 IST 2026
[2026-08-31 16:58:31,186.186 INFO    ] ================================================
[2026-08-31 16:58:31,768.768 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:58:31
[2026-08-31 16:58:32,382.382 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:58:32,697.697 INFO    ] Initializing speech engine...
[2026-08-31 16:58:32,707.707 INFO    ] 2026-08-31 16:58:32
[2026-08-31 16:58:32,995.995 INFO    ] 2026-08-31 16:58:32
[2026-08-31 16:58:33,081.081 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:58:33,334.334 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:58:33,344.344 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:58:33,535.535 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:58:33,544.544 INFO    ] time= 31/08/2026 16:58:33
[2026-08-31 16:58:33,565.565 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:58:33,593.593 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:58:33,717.717 INFO    ] No existing commands found in stream
[2026-08-31 16:58:38,760.760 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:58:38,763.763 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-08-31 16:58:42,705.705 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 16:58:42,708.708 INFO    ] Checking for system updates...
[2026-08-31 16:58:42,745.745 INFO    ] 200
[2026-08-31 16:58:42,747.747 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:58:42,800.800 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:58:42,803.803 INFO    ] No update needed
[2026-08-31 16:58:42,806.806 INFO    ] Checking for camera pi updates...
[2026-08-31 16:58:42,844.844 INFO    ] 200
[2026-08-31 16:58:42,846.846 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:58:42,889.889 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:58:42,982.982 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:58:42,985.985 INFO    ] No camera update needed
[2026-08-31 16:58:42,988.988 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:58:42,991.991 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:58:42,997.997 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:58:43,002.002 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:58:45,044.044 INFO    ] ================================================
[2026-08-31 16:58:45,060.060 INFO    ] Launching Daemon at Mon Aug 31 16:58:45 IST 2026
[2026-08-31 16:58:45,071.071 INFO    ] ================================================
[2026-08-31 16:58:45,646.646 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:58:45
[2026-08-31 16:58:46,246.246 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:58:46,522.522 INFO    ] Initializing speech engine...
[2026-08-31 16:58:46,529.529 INFO    ] 2026-08-31 16:58:46
[2026-08-31 16:58:46,790.790 INFO    ] 2026-08-31 16:58:46
[2026-08-31 16:58:46,843.843 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:58:47,065.065 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:58:47,074.074 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:58:47,289.289 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:58:47,330.330 INFO    ] time= 31/08/2026 16:58:47
[2026-08-31 16:58:47,337.337 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:58:47,354.354 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:58:47,475.475 INFO    ] No existing commands found in stream
[2026-08-31 16:58:52,495.495 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:58:52,498.498 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-08-31 16:58:53,934.934 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 16:58:53,937.937 INFO    ] Checking for system updates...
[2026-08-31 16:58:53,972.972 INFO    ] 200
[2026-08-31 16:58:53,975.975 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:58:54,027.027 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:58:54,030.030 INFO    ] No update needed
[2026-08-31 16:58:54,033.033 INFO    ] Checking for camera pi updates...
[2026-08-31 16:58:54,070.070 INFO    ] 200
[2026-08-31 16:58:54,072.072 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:58:54,116.116 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:58:54,192.192 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:58:54,195.195 INFO    ] No camera update needed
[2026-08-31 16:58:54,197.197 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:58:54,200.200 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:58:54,205.205 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:58:54,210.210 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:58:56,251.251 INFO    ] ================================================
[2026-08-31 16:58:56,267.267 INFO    ] Launching Daemon at Mon Aug 31 16:58:56 IST 2026
[2026-08-31 16:58:56,279.279 INFO    ] ================================================
[2026-08-31 16:58:56,845.845 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:58:56
[2026-08-31 16:58:57,429.429 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:58:57,679.679 INFO    ] Initializing speech engine...
[2026-08-31 16:58:57,701.701 INFO    ] 2026-08-31 16:58:57
[2026-08-31 16:58:57,958.958 INFO    ] 2026-08-31 16:58:57
[2026-08-31 16:58:57,999.999 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:58:58,254.254 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:58:58,258.258 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:58:58,394.394 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:58:58,469.469 INFO    ] time= 31/08/2026 16:58:58
[2026-08-31 16:58:58,523.523 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:58:58,530.530 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:58:58,680.680 INFO    ] No existing commands found in stream
[2026-08-31 16:59:03,699.699 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:59:03,701.701 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-08-31 16:59:07,288.288 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 16:59:07,291.291 INFO    ] Checking for system updates...
[2026-08-31 16:59:07,327.327 INFO    ] 200
[2026-08-31 16:59:07,330.330 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:59:07,389.389 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:59:07,392.392 INFO    ] No update needed
[2026-08-31 16:59:07,395.395 INFO    ] Checking for camera pi updates...
[2026-08-31 16:59:07,439.439 INFO    ] 200
[2026-08-31 16:59:07,442.442 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:59:07,490.490 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:59:07,578.578 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:59:07,581.581 INFO    ] No camera update needed
[2026-08-31 16:59:07,584.584 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:59:07,586.586 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:59:07,592.592 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:59:07,598.598 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:59:09,640.640 INFO    ] ================================================
[2026-08-31 16:59:09,655.655 INFO    ] Launching Daemon at Mon Aug 31 16:59:09 IST 2026
[2026-08-31 16:59:09,666.666 INFO    ] ================================================
[2026-08-31 16:59:10,231.231 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:59:10
[2026-08-31 16:59:10,812.812 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:59:11,062.062 INFO    ] Initializing speech engine...
[2026-08-31 16:59:11,085.085 INFO    ] 2026-08-31 16:59:11
[2026-08-31 16:59:11,340.340 INFO    ] 2026-08-31 16:59:11
[2026-08-31 16:59:11,405.405 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:59:11,630.630 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:59:11,639.639 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:59:11,777.777 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:59:11,852.852 INFO    ] time= 31/08/2026 16:59:11
[2026-08-31 16:59:11,907.907 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:59:11,912.912 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:59:12,044.044 INFO    ] No existing commands found in stream
[2026-08-31 16:59:17,067.067 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:59:17,070.070 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-08-31 16:59:18,359.359 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 16:59:18,362.362 INFO    ] Checking for system updates...
[2026-08-31 16:59:18,397.397 INFO    ] 200
[2026-08-31 16:59:18,400.400 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:59:18,457.457 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:59:18,459.459 INFO    ] No update needed
[2026-08-31 16:59:18,462.462 INFO    ] Checking for camera pi updates...
[2026-08-31 16:59:18,494.494 INFO    ] 200
[2026-08-31 16:59:18,497.497 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:59:18,537.537 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:59:18,619.619 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:59:18,621.621 INFO    ] No camera update needed
[2026-08-31 16:59:18,623.623 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:59:18,625.625 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:59:18,631.631 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:59:18,636.636 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:59:20,675.675 INFO    ] ================================================
[2026-08-31 16:59:20,690.690 INFO    ] Launching Daemon at Mon Aug 31 16:59:20 IST 2026
[2026-08-31 16:59:20,701.701 INFO    ] ================================================
[2026-08-31 16:59:21,275.275 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:59:21
[2026-08-31 16:59:21,941.941 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:59:22,243.243 INFO    ] Initializing speech engine...
[2026-08-31 16:59:22,252.252 INFO    ] 2026-08-31 16:59:22
[2026-08-31 16:59:22,522.522 INFO    ] 2026-08-31 16:59:22
[2026-08-31 16:59:22,558.558 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:59:22,877.877 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:59:22,882.882 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:59:23,084.084 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:59:23,106.106 INFO    ] time= 31/08/2026 16:59:23
[2026-08-31 16:59:23,136.136 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:59:23,147.147 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:59:23,301.301 INFO    ] No existing commands found in stream
[2026-08-31 16:59:28,331.331 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:59:28,334.334 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-08-31 16:59:32,457.457 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 16:59:32,460.460 INFO    ] Checking for system updates...
[2026-08-31 16:59:32,505.505 INFO    ] 200
[2026-08-31 16:59:32,508.508 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:59:32,576.576 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:59:32,579.579 INFO    ] No update needed
[2026-08-31 16:59:32,582.582 INFO    ] Checking for camera pi updates...
[2026-08-31 16:59:32,624.624 INFO    ] 200
[2026-08-31 16:59:32,627.627 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:59:32,676.676 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:59:32,780.780 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 16:59:32,783.783 INFO    ] No camera update needed
[2026-08-31 16:59:32,786.786 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:59:32,790.790 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:59:32,796.796 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:59:32,803.803 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:59:34,844.844 INFO    ] ================================================
[2026-08-31 16:59:34,859.859 INFO    ] Launching Daemon at Mon Aug 31 16:59:34 IST 2026
[2026-08-31 16:59:34,870.870 INFO    ] ================================================
[2026-08-31 16:59:35,435.435 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:59:35
[2026-08-31 16:59:36,018.018 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:59:36,271.271 INFO    ] Initializing speech engine...
[2026-08-31 16:59:36,277.277 INFO    ] 2026-08-31 16:59:36
[2026-08-31 16:59:36,573.573 INFO    ] 2026-08-31 16:59:36
[2026-08-31 16:59:36,599.599 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:59:36,806.806 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:59:36,819.819 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:59:36,964.964 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:59:36,986.986 INFO    ] time= 31/08/2026 16:59:36
[2026-08-31 16:59:36,995.995 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:59:37,001.001 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:59:37,112.112 INFO    ] No existing commands found in stream
[2026-08-31 16:59:42,142.142 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:59:42,145.145 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-08-31 16:59:43,968.968 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 16:59:43,971.971 INFO    ] Checking for system updates...
[2026-08-31 16:59:44,007.007 INFO    ] 200
[2026-08-31 16:59:44,009.009 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:59:44,061.061 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:59:44,063.063 INFO    ] No update needed
[2026-08-31 16:59:44,066.066 INFO    ] Checking for camera pi updates...
[2026-08-31 16:59:44,102.102 INFO    ] 200
[2026-08-31 16:59:44,104.104 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:59:44,147.147 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:59:44,229.229 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:59:44,231.231 INFO    ] No camera update needed
[2026-08-31 16:59:44,234.234 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:59:44,236.236 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:59:44,241.241 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:59:44,246.246 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:59:46,288.288 INFO    ] ================================================
[2026-08-31 16:59:46,303.303 INFO    ] Launching Daemon at Mon Aug 31 16:59:46 IST 2026
[2026-08-31 16:59:46,313.313 INFO    ] ================================================
[2026-08-31 16:59:46,877.877 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:59:46
[2026-08-31 16:59:47,458.458 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:59:47,706.706 INFO    ] Initializing speech engine...
[2026-08-31 16:59:47,728.728 INFO    ] 2026-08-31 16:59:47
[2026-08-31 16:59:47,983.983 INFO    ] 2026-08-31 16:59:47
[2026-08-31 16:59:48,018.018 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 16:59:48,214.214 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 16:59:48,242.242 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 16:59:48,410.410 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 16:59:48,425.425 INFO    ] time= 31/08/2026 16:59:48
[2026-08-31 16:59:48,489.489 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 16:59:48,539.539 INFO    ] Checking for existing commands in stream...
[2026-08-31 16:59:48,612.612 INFO    ] No existing commands found in stream
[2026-08-31 16:59:53,624.624 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 16:59:53,627.627 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-08-31 16:59:55,678.678 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 16:59:55,681.681 INFO    ] Checking for system updates...
[2026-08-31 16:59:55,716.716 INFO    ] 200
[2026-08-31 16:59:55,719.719 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:59:55,777.777 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:59:55,779.779 INFO    ] No update needed
[2026-08-31 16:59:55,782.782 INFO    ] Checking for camera pi updates...
[2026-08-31 16:59:55,815.815 INFO    ] 200
[2026-08-31 16:59:55,818.818 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 16:59:55,862.862 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 16:59:55,962.962 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 16:59:55,965.965 INFO    ] No camera update needed
[2026-08-31 16:59:55,967.967 INFO    ] Script finished. Safe exiting...
[2026-08-31 16:59:55,969.969 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 16:59:55,974.974 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 16:59:55,979.979 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 16:59:58,019.019 INFO    ] ================================================
[2026-08-31 16:59:58,034.034 INFO    ] Launching Daemon at Mon Aug 31 16:59:58 IST 2026
[2026-08-31 16:59:58,045.045 INFO    ] ================================================
[2026-08-31 16:59:58,612.612 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 16:59:58
[2026-08-31 16:59:59,195.195 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 16:59:59,464.464 INFO    ] Initializing speech engine...
[2026-08-31 16:59:59,473.473 INFO    ] 2026-08-31 16:59:59
[2026-08-31 16:59:59,724.724 INFO    ] 2026-08-31 16:59:59
[2026-08-31 16:59:59,759.759 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:00:00,016.016 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:00:00,026.026 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:00:00,250.250 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:00:00,288.288 INFO    ] time= 31/08/2026 17:00:00
[2026-08-31 17:00:00,295.295 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:00:00,314.314 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:00:00,449.449 INFO    ] No existing commands found in stream
[2026-08-31 17:00:05,470.470 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:00:05,473.473 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-08-31 17:00:06,896.896 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 17:00:06,899.899 INFO    ] Checking for system updates...
[2026-08-31 17:00:06,938.938 INFO    ] 200
[2026-08-31 17:00:06,940.940 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:00:06,992.992 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:00:06,995.995 INFO    ] No update needed
[2026-08-31 17:00:06,999.999 INFO    ] Checking for camera pi updates...
[2026-08-31 17:00:07,033.033 INFO    ] 200
[2026-08-31 17:00:07,035.035 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:00:07,075.075 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:00:07,168.168 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:00:07,170.170 INFO    ] No camera update needed
[2026-08-31 17:00:07,172.172 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:00:07,174.174 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:00:07,180.180 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:00:07,185.185 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:00:09,224.224 INFO    ] ================================================
[2026-08-31 17:00:09,240.240 INFO    ] Launching Daemon at Mon Aug 31 17:00:09 IST 2026
[2026-08-31 17:00:09,250.250 INFO    ] ================================================
[2026-08-31 17:00:09,833.833 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:00:09
[2026-08-31 17:00:10,430.430 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:00:10,699.699 INFO    ] Initializing speech engine...
[2026-08-31 17:00:10,708.708 INFO    ] 2026-08-31 17:00:10
[2026-08-31 17:00:10,973.973 INFO    ] 2026-08-31 17:00:10
[2026-08-31 17:00:11,024.024 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:00:11,230.230 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:00:11,256.256 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:00:11,458.458 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:00:11,515.515 INFO    ] time= 31/08/2026 17:00:11
[2026-08-31 17:00:11,522.522 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:00:11,540.540 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:00:11,655.655 INFO    ] No existing commands found in stream
[2026-08-31 17:00:16,679.679 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:00:16,682.682 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-08-31 17:00:19,678.678 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 17:00:19,681.681 INFO    ] Checking for system updates...
[2026-08-31 17:00:19,721.721 INFO    ] 200
[2026-08-31 17:00:19,724.724 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:00:19,776.776 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:00:19,778.778 INFO    ] No update needed
[2026-08-31 17:00:19,781.781 INFO    ] Checking for camera pi updates...
[2026-08-31 17:00:19,818.818 INFO    ] 200
[2026-08-31 17:00:19,820.820 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:00:19,865.865 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:00:19,935.935 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:00:19,938.938 INFO    ] No camera update needed
[2026-08-31 17:00:19,940.940 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:00:19,942.942 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:00:19,948.948 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:00:19,953.953 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:00:22,000.000 INFO    ] ================================================
[2026-08-31 17:00:22,016.016 INFO    ] Launching Daemon at Mon Aug 31 17:00:22 IST 2026
[2026-08-31 17:00:22,027.027 INFO    ] ================================================
[2026-08-31 17:00:22,611.611 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:00:22
[2026-08-31 17:00:23,213.213 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:00:23,492.492 INFO    ] Initializing speech engine...
[2026-08-31 17:00:23,499.499 INFO    ] 2026-08-31 17:00:23
[2026-08-31 17:00:23,760.760 INFO    ] 2026-08-31 17:00:23
[2026-08-31 17:00:23,815.815 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:00:24,050.050 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:00:24,056.056 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:00:24,273.273 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:00:24,311.311 INFO    ] time= 31/08/2026 17:00:24
[2026-08-31 17:00:24,317.317 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:00:24,339.339 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:00:24,468.468 INFO    ] No existing commands found in stream
[2026-08-31 17:00:29,482.482 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:00:29,485.485 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-08-31 17:00:32,479.479 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 17:00:32,482.482 INFO    ] Checking for system updates...
[2026-08-31 17:00:32,524.524 INFO    ] 200
[2026-08-31 17:00:32,527.527 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:00:32,583.583 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:00:32,586.586 INFO    ] No update needed
[2026-08-31 17:00:32,589.589 INFO    ] Checking for camera pi updates...
[2026-08-31 17:00:32,626.626 INFO    ] 200
[2026-08-31 17:00:32,629.629 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:00:32,672.672 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:00:32,809.809 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:00:32,812.812 INFO    ] No camera update needed
[2026-08-31 17:00:32,815.815 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:00:32,818.818 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:00:32,824.824 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:00:32,829.829 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:00:34,871.871 INFO    ] ================================================
[2026-08-31 17:00:34,886.886 INFO    ] Launching Daemon at Mon Aug 31 17:00:34 IST 2026
[2026-08-31 17:00:34,897.897 INFO    ] ================================================
[2026-08-31 17:00:35,541.541 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:00:35
[2026-08-31 17:00:36,200.200 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:00:36,501.501 INFO    ] Initializing speech engine...
[2026-08-31 17:00:36,510.510 INFO    ] 2026-08-31 17:00:36
[2026-08-31 17:00:36,784.784 INFO    ] 2026-08-31 17:00:36
[2026-08-31 17:00:36,835.835 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:00:37,090.090 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:00:37,095.095 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:00:37,319.319 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:00:37,334.334 INFO    ] time= 31/08/2026 17:00:37
[2026-08-31 17:00:37,350.350 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:00:37,381.381 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:00:37,487.487 INFO    ] No existing commands found in stream
[2026-08-31 17:00:42,502.502 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:00:42,505.505 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-08-31 17:00:44,481.481 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 17:00:44,484.484 INFO    ] Checking for system updates...
[2026-08-31 17:00:44,524.524 INFO    ] 200
[2026-08-31 17:00:44,527.527 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:00:44,581.581 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:00:44,584.584 INFO    ] No update needed
[2026-08-31 17:00:44,586.586 INFO    ] Checking for camera pi updates...
[2026-08-31 17:00:44,621.621 INFO    ] 200
[2026-08-31 17:00:44,623.623 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:00:44,666.666 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:00:44,749.749 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:00:44,752.752 INFO    ] No camera update needed
[2026-08-31 17:00:44,754.754 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:00:44,757.757 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:00:44,763.763 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:00:44,769.769 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:00:46,810.810 INFO    ] ================================================
[2026-08-31 17:00:46,825.825 INFO    ] Launching Daemon at Mon Aug 31 17:00:46 IST 2026
[2026-08-31 17:00:46,836.836 INFO    ] ================================================
[2026-08-31 17:00:47,405.405 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:00:47
[2026-08-31 17:00:47,993.993 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:00:48,247.247 INFO    ] Initializing speech engine...
[2026-08-31 17:00:48,255.255 INFO    ] 2026-08-31 17:00:48
[2026-08-31 17:00:48,547.547 INFO    ] 2026-08-31 17:00:48
[2026-08-31 17:00:48,584.584 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:00:48,808.808 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:00:48,872.872 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:00:49,102.102 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:00:49,162.162 INFO    ] time= 31/08/2026 17:00:49
[2026-08-31 17:00:49,178.178 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:00:49,195.195 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:00:49,326.326 INFO    ] No existing commands found in stream
[2026-08-31 17:00:54,354.354 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:00:54,357.357 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-08-31 17:00:56,017.017 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 17:00:56,020.020 INFO    ] Checking for system updates...
[2026-08-31 17:00:56,059.059 INFO    ] 200
[2026-08-31 17:00:56,062.062 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:00:56,119.119 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:00:56,121.121 INFO    ] No update needed
[2026-08-31 17:00:56,124.124 INFO    ] Checking for camera pi updates...
[2026-08-31 17:00:56,157.157 INFO    ] 200
[2026-08-31 17:00:56,160.160 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:00:56,204.204 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:00:56,283.283 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:00:56,286.286 INFO    ] No camera update needed
[2026-08-31 17:00:56,288.288 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:00:56,291.291 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:00:56,296.296 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:00:56,301.301 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:00:58,341.341 INFO    ] ================================================
[2026-08-31 17:00:58,356.356 INFO    ] Launching Daemon at Mon Aug 31 17:00:58 IST 2026
[2026-08-31 17:00:58,367.367 INFO    ] ================================================
[2026-08-31 17:00:58,947.947 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:00:58
[2026-08-31 17:00:59,543.543 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:00:59,801.801 INFO    ] Initializing speech engine...
[2026-08-31 17:00:59,810.810 INFO    ] 2026-08-31 17:00:59
[2026-08-31 17:01:00,103.103 INFO    ] 2026-08-31 17:01:00
[2026-08-31 17:01:00,141.141 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:01:00,363.363 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:01:00,421.421 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:01:00,565.565 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:01:00,625.625 INFO    ] time= 31/08/2026 17:01:00
[2026-08-31 17:01:00,680.680 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:01:00,700.700 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:01:00,849.849 INFO    ] No existing commands found in stream
[2026-08-31 17:01:05,866.866 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:01:05,869.869 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-08-31 17:01:06,684.684 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 17:01:06,687.687 INFO    ] Checking for system updates...
[2026-08-31 17:01:06,723.723 INFO    ] 200
[2026-08-31 17:01:06,725.725 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:01:06,777.777 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:01:06,779.779 INFO    ] No update needed
[2026-08-31 17:01:06,782.782 INFO    ] Checking for camera pi updates...
[2026-08-31 17:01:06,815.815 INFO    ] 200
[2026-08-31 17:01:06,817.817 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:01:06,858.858 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:01:06,953.953 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:01:06,955.955 INFO    ] No camera update needed
[2026-08-31 17:01:06,958.958 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:01:06,960.960 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:01:06,965.965 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:01:06,970.970 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:01:09,009.009 INFO    ] ================================================
[2026-08-31 17:01:09,024.024 INFO    ] Launching Daemon at Mon Aug 31 17:01:09 IST 2026
[2026-08-31 17:01:09,035.035 INFO    ] ================================================
[2026-08-31 17:01:09,601.601 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:01:09
[2026-08-31 17:01:10,185.185 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:01:10,455.455 INFO    ] Initializing speech engine...
[2026-08-31 17:01:10,464.464 INFO    ] 2026-08-31 17:01:10
[2026-08-31 17:01:10,710.710 INFO    ] 2026-08-31 17:01:10
[2026-08-31 17:01:10,745.745 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:01:10,997.997 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:01:11,006.006 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:01:11,139.139 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:01:11,183.183 INFO    ] time= 31/08/2026 17:01:11
[2026-08-31 17:01:11,248.248 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:01:11,269.269 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:01:11,406.406 INFO    ] No existing commands found in stream
[2026-08-31 17:01:16,429.429 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:01:16,431.431 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-08-31 17:01:18,180.180 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 17:01:18,183.183 INFO    ] Checking for system updates...
[2026-08-31 17:01:18,219.219 INFO    ] 200
[2026-08-31 17:01:18,221.221 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:01:18,277.277 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:01:18,280.280 INFO    ] No update needed
[2026-08-31 17:01:18,282.282 INFO    ] Checking for camera pi updates...
[2026-08-31 17:01:18,316.316 INFO    ] 200
[2026-08-31 17:01:18,319.319 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:01:18,359.359 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:01:18,448.448 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:01:18,450.450 INFO    ] No camera update needed
[2026-08-31 17:01:18,453.453 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:01:18,455.455 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:01:18,460.460 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:01:18,465.465 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:01:20,508.508 INFO    ] ================================================
[2026-08-31 17:01:20,523.523 INFO    ] Launching Daemon at Mon Aug 31 17:01:20 IST 2026
[2026-08-31 17:01:20,541.541 INFO    ] ================================================
[2026-08-31 17:01:21,184.184 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:01:21
[2026-08-31 17:01:21,844.844 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:01:22,143.143 INFO    ] Initializing speech engine...
[2026-08-31 17:01:22,151.151 INFO    ] 2026-08-31 17:01:22
[2026-08-31 17:01:22,426.426 INFO    ] 2026-08-31 17:01:22
[2026-08-31 17:01:22,482.482 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:01:22,707.707 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:01:22,713.713 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:01:22,931.931 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:01:22,970.970 INFO    ] time= 31/08/2026 17:01:22
[2026-08-31 17:01:22,977.977 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:01:22,996.996 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:01:23,120.120 INFO    ] No existing commands found in stream
[2026-08-31 17:01:28,137.137 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:01:28,140.140 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-08-31 17:01:31,142.142 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 17:01:31,145.145 INFO    ] Checking for system updates...
[2026-08-31 17:01:31,186.186 INFO    ] 200
[2026-08-31 17:01:31,188.188 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:01:31,248.248 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:01:31,251.251 INFO    ] No update needed
[2026-08-31 17:01:31,253.253 INFO    ] Checking for camera pi updates...
[2026-08-31 17:01:31,287.287 INFO    ] 200
[2026-08-31 17:01:31,289.289 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:01:31,335.335 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:01:31,390.390 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:01:31,392.392 INFO    ] No camera update needed
[2026-08-31 17:01:31,394.394 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:01:31,397.397 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:01:31,402.402 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:01:31,407.407 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:01:33,447.447 INFO    ] ================================================
[2026-08-31 17:01:33,462.462 INFO    ] Launching Daemon at Mon Aug 31 17:01:33 IST 2026
[2026-08-31 17:01:33,473.473 INFO    ] ================================================
[2026-08-31 17:01:34,038.038 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:01:34
[2026-08-31 17:01:34,623.623 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:01:34,883.883 INFO    ] Initializing speech engine...
[2026-08-31 17:01:34,909.909 INFO    ] 2026-08-31 17:01:34
[2026-08-31 17:01:35,181.181 INFO    ] 2026-08-31 17:01:35
[2026-08-31 17:01:35,218.218 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:01:35,415.415 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:01:35,430.430 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:01:35,596.596 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:01:35,600.600 INFO    ] time= 31/08/2026 17:01:35
[2026-08-31 17:01:35,606.606 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:01:35,652.652 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:01:35,795.795 INFO    ] No existing commands found in stream
[2026-08-31 17:01:40,805.805 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:01:40,808.808 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-08-31 17:01:44,056.056 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 17:01:44,059.059 INFO    ] Checking for system updates...
[2026-08-31 17:01:44,095.095 INFO    ] 200
[2026-08-31 17:01:44,097.097 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:01:44,149.149 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:01:44,152.152 INFO    ] No update needed
[2026-08-31 17:01:44,154.154 INFO    ] Checking for camera pi updates...
[2026-08-31 17:01:44,187.187 INFO    ] 200
[2026-08-31 17:01:44,190.190 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:01:44,235.235 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:01:44,326.326 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:01:44,329.329 INFO    ] No camera update needed
[2026-08-31 17:01:44,331.331 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:01:44,334.334 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:01:44,339.339 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:01:44,344.344 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:01:46,385.385 INFO    ] ================================================
[2026-08-31 17:01:46,400.400 INFO    ] Launching Daemon at Mon Aug 31 17:01:46 IST 2026
[2026-08-31 17:01:46,410.410 INFO    ] ================================================
[2026-08-31 17:01:46,977.977 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:01:46
[2026-08-31 17:01:47,562.562 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:01:47,810.810 INFO    ] Initializing speech engine...
[2026-08-31 17:01:47,817.817 INFO    ] 2026-08-31 17:01:47
[2026-08-31 17:01:48,120.120 INFO    ] 2026-08-31 17:01:48
[2026-08-31 17:01:48,157.157 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:01:48,453.453 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:01:48,459.459 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:01:48,607.607 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:01:48,650.650 INFO    ] time= 31/08/2026 17:01:48
[2026-08-31 17:01:48,699.699 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:01:48,756.756 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:01:48,881.881 INFO    ] No existing commands found in stream
[2026-08-31 17:01:53,898.898 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:01:53,901.901 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-08-31 17:01:56,010.010 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 17:01:56,013.013 INFO    ] Checking for system updates...
[2026-08-31 17:01:56,051.051 INFO    ] 200
[2026-08-31 17:01:56,053.053 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:01:56,111.111 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:01:56,113.113 INFO    ] No update needed
[2026-08-31 17:01:56,116.116 INFO    ] Checking for camera pi updates...
[2026-08-31 17:01:56,149.149 INFO    ] 200
[2026-08-31 17:01:56,151.151 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:01:56,194.194 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:01:56,274.274 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:01:56,277.277 INFO    ] No camera update needed
[2026-08-31 17:01:56,279.279 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:01:56,281.281 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:01:56,287.287 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:01:56,292.292 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:01:58,332.332 INFO    ] ================================================
[2026-08-31 17:01:58,347.347 INFO    ] Launching Daemon at Mon Aug 31 17:01:58 IST 2026
[2026-08-31 17:01:58,358.358 INFO    ] ================================================
[2026-08-31 17:01:58,936.936 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:01:58
[2026-08-31 17:01:59,526.526 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:01:59,785.785 INFO    ] Initializing speech engine...
[2026-08-31 17:01:59,801.801 INFO    ] 2026-08-31 17:01:59
[2026-08-31 17:02:00,098.098 INFO    ] 2026-08-31 17:02:00
[2026-08-31 17:02:00,135.135 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:02:00,363.363 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:02:00,408.408 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:02:00,672.672 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:02:00,986.986 INFO    ] time= 31/08/2026 17:02:00
[2026-08-31 17:02:01,036.036 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:02:01,054.054 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:02:01,176.176 INFO    ] No existing commands found in stream
[2026-08-31 17:02:06,188.188 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:02:06,191.191 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-08-31 17:02:06,696.696 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 17:02:06,699.699 INFO    ] Checking for system updates...
[2026-08-31 17:02:06,747.747 INFO    ] 200
[2026-08-31 17:02:06,749.749 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:02:06,801.801 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:02:06,804.804 INFO    ] No update needed
[2026-08-31 17:02:06,806.806 INFO    ] Checking for camera pi updates...
[2026-08-31 17:02:06,840.840 INFO    ] 200
[2026-08-31 17:02:06,842.842 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:02:06,882.882 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:02:06,966.966 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:02:06,968.968 INFO    ] No camera update needed
[2026-08-31 17:02:06,971.971 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:02:06,973.973 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:02:06,978.978 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:02:06,983.983 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:02:09,025.025 INFO    ] ================================================
[2026-08-31 17:02:09,041.041 INFO    ] Launching Daemon at Mon Aug 31 17:02:09 IST 2026
[2026-08-31 17:02:09,052.052 INFO    ] ================================================
[2026-08-31 17:02:09,876.876 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:02:09
[2026-08-31 17:02:10,460.460 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:02:10,732.732 INFO    ] Initializing speech engine...
[2026-08-31 17:02:10,741.741 INFO    ] 2026-08-31 17:02:10
[2026-08-31 17:02:10,991.991 INFO    ] 2026-08-31 17:02:10
[2026-08-31 17:02:11,139.139 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:02:11,319.319 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:02:11,324.324 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:02:11,531.531 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:02:11,565.565 INFO    ] time= 31/08/2026 17:02:11
[2026-08-31 17:02:11,571.571 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:02:11,588.588 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:02:11,707.707 INFO    ] No existing commands found in stream
[2026-08-31 17:02:16,732.732 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:02:16,735.735 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-08-31 17:02:20,129.129 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 17:02:20,131.131 INFO    ] Checking for system updates...
[2026-08-31 17:02:20,170.170 INFO    ] 200
[2026-08-31 17:02:20,172.172 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:02:20,226.226 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:02:20,228.228 INFO    ] No update needed
[2026-08-31 17:02:20,231.231 INFO    ] Checking for camera pi updates...
[2026-08-31 17:02:20,267.267 INFO    ] 200
[2026-08-31 17:02:20,270.270 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:02:20,314.314 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:02:20,495.495 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:02:20,498.498 INFO    ] No camera update needed
[2026-08-31 17:02:20,500.500 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:02:20,502.502 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:02:20,508.508 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:02:20,513.513 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:02:22,555.555 INFO    ] ================================================
[2026-08-31 17:02:22,571.571 INFO    ] Launching Daemon at Mon Aug 31 17:02:22 IST 2026
[2026-08-31 17:02:22,581.581 INFO    ] ================================================
[2026-08-31 17:02:23,222.222 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:02:23
[2026-08-31 17:02:23,885.885 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:02:24,184.184 INFO    ] Initializing speech engine...
[2026-08-31 17:02:24,192.192 INFO    ] 2026-08-31 17:02:24
[2026-08-31 17:02:24,463.463 INFO    ] 2026-08-31 17:02:24
[2026-08-31 17:02:24,518.518 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:02:24,763.763 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:02:24,769.769 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:02:24,905.905 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:02:24,960.960 INFO    ] time= 31/08/2026 17:02:24
[2026-08-31 17:02:25,015.015 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:02:25,043.043 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:02:25,168.168 INFO    ] No existing commands found in stream
[2026-08-31 17:02:30,199.199 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:02:30,202.202 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-08-31 17:02:32,204.204 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 17:02:32,207.207 INFO    ] Checking for system updates...
[2026-08-31 17:02:32,249.249 INFO    ] 200
[2026-08-31 17:02:32,252.252 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:02:32,309.309 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:02:32,312.312 INFO    ] No update needed
[2026-08-31 17:02:32,315.315 INFO    ] Checking for camera pi updates...
[2026-08-31 17:02:32,352.352 INFO    ] 200
[2026-08-31 17:02:32,355.355 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:02:32,404.404 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:02:32,460.460 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:02:32,463.463 INFO    ] No camera update needed
[2026-08-31 17:02:32,466.466 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:02:32,469.469 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:02:32,475.475 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:02:32,480.480 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:02:34,521.521 INFO    ] ================================================
[2026-08-31 17:02:34,537.537 INFO    ] Launching Daemon at Mon Aug 31 17:02:34 IST 2026
[2026-08-31 17:02:34,547.547 INFO    ] ================================================
[2026-08-31 17:02:35,142.142 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:02:35
[2026-08-31 17:02:35,756.756 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:02:36,033.033 INFO    ] Initializing speech engine...
[2026-08-31 17:02:36,040.040 INFO    ] 2026-08-31 17:02:36
[2026-08-31 17:02:36,306.306 INFO    ] 2026-08-31 17:02:36
[2026-08-31 17:02:36,360.360 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:02:36,580.580 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:02:36,590.590 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:02:36,815.815 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:02:36,865.865 INFO    ] time= 31/08/2026 17:02:36
[2026-08-31 17:02:36,876.876 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:02:36,892.892 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:02:37,029.029 INFO    ] No existing commands found in stream
[2026-08-31 17:02:42,051.051 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:02:42,054.054 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-08-31 17:02:46,008.008 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 17:02:46,011.011 INFO    ] Checking for system updates...
[2026-08-31 17:02:46,050.050 INFO    ] 200
[2026-08-31 17:02:46,052.052 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:02:46,104.104 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:02:46,107.107 INFO    ] No update needed
[2026-08-31 17:02:46,110.110 INFO    ] Checking for camera pi updates...
[2026-08-31 17:02:46,143.143 INFO    ] 200
[2026-08-31 17:02:46,145.145 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:02:46,187.187 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:02:46,275.275 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:02:46,278.278 INFO    ] No camera update needed
[2026-08-31 17:02:46,280.280 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:02:46,283.283 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:02:46,288.288 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:02:46,293.293 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:02:48,334.334 INFO    ] ================================================
[2026-08-31 17:02:48,350.350 INFO    ] Launching Daemon at Mon Aug 31 17:02:48 IST 2026
[2026-08-31 17:02:48,361.361 INFO    ] ================================================
[2026-08-31 17:02:48,926.926 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:02:48
[2026-08-31 17:02:49,509.509 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:02:49,768.768 INFO    ] Initializing speech engine...
[2026-08-31 17:02:49,774.774 INFO    ] 2026-08-31 17:02:49
[2026-08-31 17:02:50,067.067 INFO    ] 2026-08-31 17:02:50
[2026-08-31 17:02:50,105.105 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:02:50,325.325 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:02:50,339.339 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:02:50,538.538 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:02:50,556.556 INFO    ] time= 31/08/2026 17:02:50
[2026-08-31 17:02:50,609.609 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:02:50,673.673 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:02:50,763.763 INFO    ] No existing commands found in stream
[2026-08-31 17:02:55,775.775 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:02:55,778.778 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-08-31 17:02:59,276.276 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 17:02:59,279.279 INFO    ] Checking for system updates...
[2026-08-31 17:02:59,315.315 INFO    ] 200
[2026-08-31 17:02:59,318.318 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:02:59,376.376 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:02:59,379.379 INFO    ] No update needed
[2026-08-31 17:02:59,381.381 INFO    ] Checking for camera pi updates...
[2026-08-31 17:02:59,418.418 INFO    ] 200
[2026-08-31 17:02:59,421.421 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:02:59,462.462 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:02:59,539.539 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:02:59,542.542 INFO    ] No camera update needed
[2026-08-31 17:02:59,545.545 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:02:59,547.547 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:02:59,554.554 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:02:59,559.559 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:03:01,600.600 INFO    ] ================================================
[2026-08-31 17:03:01,616.616 INFO    ] Launching Daemon at Mon Aug 31 17:03:01 IST 2026
[2026-08-31 17:03:01,626.626 INFO    ] ================================================
[2026-08-31 17:03:02,351.351 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:03:02
[2026-08-31 17:03:03,005.005 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:03:03,364.364 INFO    ] Initializing speech engine...
[2026-08-31 17:03:03,376.376 INFO    ] 2026-08-31 17:03:03
[2026-08-31 17:03:03,665.665 INFO    ] 2026-08-31 17:03:03
[2026-08-31 17:03:03,727.727 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:03:03,968.968 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:03:03,975.975 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:03:04,221.221 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:03:04,246.246 INFO    ] time= 31/08/2026 17:03:04
[2026-08-31 17:03:04,262.262 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:03:04,271.271 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:03:04,404.404 INFO    ] No existing commands found in stream
[2026-08-31 17:03:09,432.432 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:03:09,435.435 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-08-31 17:03:12,018.018 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 17:03:12,021.021 INFO    ] Checking for system updates...
[2026-08-31 17:03:12,062.062 INFO    ] 200
[2026-08-31 17:03:12,065.065 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:03:12,126.126 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:03:12,129.129 INFO    ] No update needed
[2026-08-31 17:03:12,132.132 INFO    ] Checking for camera pi updates...
[2026-08-31 17:03:12,170.170 INFO    ] 200
[2026-08-31 17:03:12,173.173 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:03:12,214.214 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:03:12,295.295 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:03:12,298.298 INFO    ] No camera update needed
[2026-08-31 17:03:12,300.300 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:03:12,303.303 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:03:12,309.309 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:03:12,315.315 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:03:14,356.356 INFO    ] ================================================
[2026-08-31 17:03:14,371.371 INFO    ] Launching Daemon at Mon Aug 31 17:03:14 IST 2026
[2026-08-31 17:03:14,382.382 INFO    ] ================================================
[2026-08-31 17:03:15,021.021 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:03:15
[2026-08-31 17:03:15,680.680 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:03:15,980.980 INFO    ] Initializing speech engine...
[2026-08-31 17:03:15,993.993 INFO    ] 2026-08-31 17:03:15
[2026-08-31 17:03:16,274.274 INFO    ] 2026-08-31 17:03:16
[2026-08-31 17:03:16,319.319 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:03:16,553.553 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:03:16,575.575 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:03:16,763.763 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:03:16,813.813 INFO    ] time= 31/08/2026 17:03:16
[2026-08-31 17:03:16,824.824 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:03:16,846.846 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:03:16,964.964 INFO    ] No existing commands found in stream
[2026-08-31 17:03:21,987.987 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:03:21,990.990 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-08-31 17:03:26,131.131 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 17:03:26,134.134 INFO    ] Checking for system updates...
[2026-08-31 17:03:26,175.175 INFO    ] 200
[2026-08-31 17:03:26,178.178 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:03:26,232.232 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:03:26,234.234 INFO    ] No update needed
[2026-08-31 17:03:26,237.237 INFO    ] Checking for camera pi updates...
[2026-08-31 17:03:26,272.272 INFO    ] 200
[2026-08-31 17:03:26,275.275 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:03:26,320.320 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:03:26,410.410 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:03:26,413.413 INFO    ] No camera update needed
[2026-08-31 17:03:26,416.416 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:03:26,418.418 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:03:26,424.424 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:03:26,431.431 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:03:28,472.472 INFO    ] ================================================
[2026-08-31 17:03:28,487.487 INFO    ] Launching Daemon at Mon Aug 31 17:03:28 IST 2026
[2026-08-31 17:03:28,498.498 INFO    ] ================================================
[2026-08-31 17:03:29,061.061 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:03:29
[2026-08-31 17:03:29,668.668 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:03:29,929.929 INFO    ] Initializing speech engine...
[2026-08-31 17:03:29,937.937 INFO    ] 2026-08-31 17:03:29
[2026-08-31 17:03:30,209.209 INFO    ] 2026-08-31 17:03:30
[2026-08-31 17:03:30,245.245 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:03:30,508.508 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:03:30,518.518 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:03:30,666.666 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:03:30,688.688 INFO    ] time= 31/08/2026 17:03:30
[2026-08-31 17:03:30,743.743 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:03:30,793.793 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:03:30,884.884 INFO    ] No existing commands found in stream
[2026-08-31 17:03:35,899.899 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:03:35,902.902 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-08-31 17:03:39,808.808 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 17:03:39,811.811 INFO    ] Checking for system updates...
[2026-08-31 17:03:39,847.847 INFO    ] 200
[2026-08-31 17:03:39,849.849 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:03:39,902.902 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:03:39,904.904 INFO    ] No update needed
[2026-08-31 17:03:39,906.906 INFO    ] Checking for camera pi updates...
[2026-08-31 17:03:39,940.940 INFO    ] 200
[2026-08-31 17:03:39,942.942 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:03:39,986.986 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:03:40,067.067 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:03:40,070.070 INFO    ] No camera update needed
[2026-08-31 17:03:40,072.072 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:03:40,075.075 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:03:40,080.080 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:03:40,085.085 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:03:42,126.126 INFO    ] ================================================
[2026-08-31 17:03:42,141.141 INFO    ] Launching Daemon at Mon Aug 31 17:03:42 IST 2026
[2026-08-31 17:03:42,152.152 INFO    ] ================================================
[2026-08-31 17:03:42,722.722 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:03:42
[2026-08-31 17:03:43,313.313 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:03:43,565.565 INFO    ] Initializing speech engine...
[2026-08-31 17:03:43,588.588 INFO    ] 2026-08-31 17:03:43
[2026-08-31 17:03:43,845.845 INFO    ] 2026-08-31 17:03:43
[2026-08-31 17:03:43,880.880 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:03:44,091.091 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:03:44,145.145 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:03:44,361.361 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:03:44,410.410 INFO    ] time= 31/08/2026 17:03:44
[2026-08-31 17:03:44,421.421 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:03:44,427.427 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:03:44,564.564 INFO    ] No existing commands found in stream
[2026-08-31 17:03:49,584.584 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:03:49,587.587 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-08-31 17:03:52,856.856 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 17:03:52,859.859 INFO    ] Checking for system updates...
[2026-08-31 17:03:52,895.895 INFO    ] 200
[2026-08-31 17:03:52,897.897 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:03:52,956.956 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:03:52,960.960 INFO    ] No update needed
[2026-08-31 17:03:52,962.962 INFO    ] Checking for camera pi updates...
[2026-08-31 17:03:52,997.997 INFO    ] 200
[2026-08-31 17:03:53,000.000 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:03:53,046.046 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:03:53,129.129 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:03:53,132.132 INFO    ] No camera update needed
[2026-08-31 17:03:53,134.134 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:03:53,136.136 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:03:53,141.141 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:03:53,146.146 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:03:55,187.187 INFO    ] ================================================
[2026-08-31 17:03:55,203.203 INFO    ] Launching Daemon at Mon Aug 31 17:03:55 IST 2026
[2026-08-31 17:03:55,213.213 INFO    ] ================================================
[2026-08-31 17:03:55,779.779 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:03:55
[2026-08-31 17:03:56,363.363 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:03:56,615.615 INFO    ] Initializing speech engine...
[2026-08-31 17:03:56,628.628 INFO    ] 2026-08-31 17:03:56
[2026-08-31 17:03:56,894.894 INFO    ] 2026-08-31 17:03:56
[2026-08-31 17:03:56,936.936 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:03:57,187.187 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:03:57,196.196 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:03:57,381.381 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:03:57,425.425 INFO    ] time= 31/08/2026 17:03:57
[2026-08-31 17:03:57,465.465 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:03:57,471.471 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:03:57,614.614 INFO    ] No existing commands found in stream
[2026-08-31 17:04:02,630.630 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:04:02,633.633 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-08-31 17:04:03,972.972 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 17:04:03,975.975 INFO    ] Checking for system updates...
[2026-08-31 17:04:04,010.010 INFO    ] 200
[2026-08-31 17:04:04,013.013 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:04:04,076.076 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:04:04,079.079 INFO    ] No update needed
[2026-08-31 17:04:04,081.081 INFO    ] Checking for camera pi updates...
[2026-08-31 17:04:04,114.114 INFO    ] 200
[2026-08-31 17:04:04,116.116 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:04:04,163.163 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:04:04,243.243 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:04:04,245.245 INFO    ] No camera update needed
[2026-08-31 17:04:04,248.248 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:04:04,250.250 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:04:04,255.255 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:04:04,260.260 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:04:06,300.300 INFO    ] ================================================
[2026-08-31 17:04:06,316.316 INFO    ] Launching Daemon at Mon Aug 31 17:04:06 IST 2026
[2026-08-31 17:04:06,326.326 INFO    ] ================================================
[2026-08-31 17:04:06,974.974 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:04:06
[2026-08-31 17:04:07,634.634 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:04:07,893.893 INFO    ] Initializing speech engine...
[2026-08-31 17:04:07,908.908 INFO    ] 2026-08-31 17:04:07
[2026-08-31 17:04:08,190.190 INFO    ] 2026-08-31 17:04:08
[2026-08-31 17:04:08,224.224 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:04:08,419.419 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:04:08,425.425 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:04:08,599.599 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:04:08,604.604 INFO    ] time= 31/08/2026 17:04:08
[2026-08-31 17:04:08,611.611 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:04:08,662.662 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:04:08,811.811 INFO    ] No existing commands found in stream
[2026-08-31 17:04:13,833.833 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:04:13,836.836 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-08-31 17:04:14,677.677 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 17:04:14,679.679 INFO    ] Checking for system updates...
[2026-08-31 17:04:14,714.714 INFO    ] 200
[2026-08-31 17:04:14,717.717 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:04:14,770.770 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:04:14,772.772 INFO    ] No update needed
[2026-08-31 17:04:14,774.774 INFO    ] Checking for camera pi updates...
[2026-08-31 17:04:14,811.811 INFO    ] 200
[2026-08-31 17:04:14,813.813 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:04:14,853.853 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:04:14,935.935 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:04:14,937.937 INFO    ] No camera update needed
[2026-08-31 17:04:14,940.940 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:04:14,942.942 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:04:14,951.951 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:04:14,958.958 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:04:17,998.998 INFO    ] ================================================
[2026-08-31 17:04:17,013.013 INFO    ] Launching Daemon at Mon Aug 31 17:04:17 IST 2026
[2026-08-31 17:04:17,024.024 INFO    ] ================================================
[2026-08-31 17:04:17,588.588 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:04:17
[2026-08-31 17:04:18,172.172 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:04:18,424.424 INFO    ] Initializing speech engine...
[2026-08-31 17:04:18,433.433 INFO    ] 2026-08-31 17:04:18
[2026-08-31 17:04:18,723.723 INFO    ] 2026-08-31 17:04:18
[2026-08-31 17:04:18,761.761 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:04:18,967.967 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:04:18,984.984 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:04:19,133.133 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:04:19,138.138 INFO    ] time= 31/08/2026 17:04:19
[2026-08-31 17:04:19,144.144 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:04:19,192.192 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:04:19,328.328 INFO    ] No existing commands found in stream
[2026-08-31 17:04:24,364.364 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:04:24,366.366 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-08-31 17:04:25,653.653 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 17:04:25,655.655 INFO    ] Checking for system updates...
[2026-08-31 17:04:25,690.690 INFO    ] 200
[2026-08-31 17:04:25,693.693 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:04:25,746.746 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:04:25,749.749 INFO    ] No update needed
[2026-08-31 17:04:25,751.751 INFO    ] Checking for camera pi updates...
[2026-08-31 17:04:25,788.788 INFO    ] 200
[2026-08-31 17:04:25,791.791 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:04:25,830.830 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:04:26,004.004 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:04:26,006.006 INFO    ] No camera update needed
[2026-08-31 17:04:26,009.009 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:04:26,011.011 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:04:26,016.016 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:04:26,021.021 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:04:28,063.063 INFO    ] ================================================
[2026-08-31 17:04:28,078.078 INFO    ] Launching Daemon at Mon Aug 31 17:04:28 IST 2026
[2026-08-31 17:04:28,089.089 INFO    ] ================================================
[2026-08-31 17:04:28,676.676 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:04:28
[2026-08-31 17:04:29,278.278 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:04:29,538.538 INFO    ] Initializing speech engine...
[2026-08-31 17:04:29,547.547 INFO    ] 2026-08-31 17:04:29
[2026-08-31 17:04:29,840.840 INFO    ] 2026-08-31 17:04:29
[2026-08-31 17:04:29,879.879 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:04:30,074.074 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:04:30,087.087 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:04:30,324.324 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:04:30,346.346 INFO    ] time= 31/08/2026 17:04:30
[2026-08-31 17:04:30,400.400 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:04:30,470.470 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:04:30,609.609 INFO    ] No existing commands found in stream
[2026-08-31 17:04:35,639.639 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:04:35,642.642 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-08-31 17:04:37,224.224 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 17:04:37,226.226 INFO    ] Checking for system updates...
[2026-08-31 17:04:37,264.264 INFO    ] 200
[2026-08-31 17:04:37,266.266 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:04:37,320.320 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:04:37,323.323 INFO    ] No update needed
[2026-08-31 17:04:37,325.325 INFO    ] Checking for camera pi updates...
[2026-08-31 17:04:37,362.362 INFO    ] 200
[2026-08-31 17:04:37,365.365 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:04:37,405.405 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:04:37,510.510 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:04:37,512.512 INFO    ] No camera update needed
[2026-08-31 17:04:37,515.515 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:04:37,518.518 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:04:37,524.524 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:04:37,530.530 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:04:39,571.571 INFO    ] ================================================
[2026-08-31 17:04:39,586.586 INFO    ] Launching Daemon at Mon Aug 31 17:04:39 IST 2026
[2026-08-31 17:04:39,597.597 INFO    ] ================================================
[2026-08-31 17:04:40,179.179 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:04:40
[2026-08-31 17:04:40,780.780 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:04:41,055.055 INFO    ] Initializing speech engine...
[2026-08-31 17:04:41,064.064 INFO    ] 2026-08-31 17:04:41
[2026-08-31 17:04:41,326.326 INFO    ] 2026-08-31 17:04:41
[2026-08-31 17:04:41,382.382 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:04:41,621.621 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:04:41,632.632 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:04:41,825.825 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:04:41,880.880 INFO    ] time= 31/08/2026 17:04:41
[2026-08-31 17:04:41,936.936 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:04:41,943.943 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:04:42,068.068 INFO    ] No existing commands found in stream
[2026-08-31 17:04:47,091.091 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:04:47,094.094 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-08-31 17:04:51,584.584 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 17:04:51,587.587 INFO    ] Checking for system updates...
[2026-08-31 17:04:51,622.622 INFO    ] 200
[2026-08-31 17:04:51,625.625 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:04:51,678.678 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:04:51,681.681 INFO    ] No update needed
[2026-08-31 17:04:51,683.683 INFO    ] Checking for camera pi updates...
[2026-08-31 17:04:51,716.716 INFO    ] 200
[2026-08-31 17:04:51,719.719 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:04:51,769.769 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:04:51,866.866 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:04:51,869.869 INFO    ] No camera update needed
[2026-08-31 17:04:51,871.871 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:04:51,874.874 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:04:51,879.879 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:04:51,884.884 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:04:53,925.925 INFO    ] ================================================
[2026-08-31 17:04:53,940.940 INFO    ] Launching Daemon at Mon Aug 31 17:04:53 IST 2026
[2026-08-31 17:04:53,951.951 INFO    ] ================================================
[2026-08-31 17:04:54,604.604 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:04:54
[2026-08-31 17:04:55,270.270 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:04:55,544.544 INFO    ] Initializing speech engine...
[2026-08-31 17:04:55,554.554 INFO    ] 2026-08-31 17:04:55
[2026-08-31 17:04:55,806.806 INFO    ] 2026-08-31 17:04:55
[2026-08-31 17:04:55,865.865 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:04:56,097.097 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:04:56,106.106 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:04:56,323.323 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:04:56,364.364 INFO    ] time= 31/08/2026 17:04:56
[2026-08-31 17:04:56,370.370 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:04:56,391.391 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:04:56,502.502 INFO    ] No existing commands found in stream
[2026-08-31 17:05:01,511.511 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:05:01,514.514 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-08-31 17:05:03,609.609 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 17:05:03,612.612 INFO    ] Checking for system updates...
[2026-08-31 17:05:03,651.651 INFO    ] 200
[2026-08-31 17:05:03,653.653 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:05:03,705.705 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:05:03,707.707 INFO    ] No update needed
[2026-08-31 17:05:03,710.710 INFO    ] Checking for camera pi updates...
[2026-08-31 17:05:03,747.747 INFO    ] 200
[2026-08-31 17:05:03,750.750 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:05:03,790.790 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:05:03,873.873 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:05:03,875.875 INFO    ] No camera update needed
[2026-08-31 17:05:03,878.878 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:05:03,880.880 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:05:03,885.885 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:05:03,890.890 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:05:05,933.933 INFO    ] ================================================
[2026-08-31 17:05:05,948.948 INFO    ] Launching Daemon at Mon Aug 31 17:05:05 IST 2026
[2026-08-31 17:05:05,959.959 INFO    ] ================================================
[2026-08-31 17:05:06,543.543 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:05:06
[2026-08-31 17:05:07,159.159 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:05:07,417.417 INFO    ] Initializing speech engine...
[2026-08-31 17:05:07,426.426 INFO    ] 2026-08-31 17:05:07
[2026-08-31 17:05:07,724.724 INFO    ] 2026-08-31 17:05:07
[2026-08-31 17:05:07,759.759 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:05:08,049.049 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:05:08,059.059 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:05:08,210.210 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:05:08,237.237 INFO    ] time= 31/08/2026 17:05:08
[2026-08-31 17:05:08,302.302 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:05:08,352.352 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:05:08,460.460 INFO    ] No existing commands found in stream
[2026-08-31 17:05:13,497.497 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:05:13,500.500 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-08-31 17:05:15,662.662 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 17:05:15,665.665 INFO    ] Checking for system updates...
[2026-08-31 17:05:15,700.700 INFO    ] 200
[2026-08-31 17:05:15,703.703 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:05:15,755.755 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:05:15,758.758 INFO    ] No update needed
[2026-08-31 17:05:15,760.760 INFO    ] Checking for camera pi updates...
[2026-08-31 17:05:15,794.794 INFO    ] 200
[2026-08-31 17:05:15,796.796 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:05:15,841.841 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:05:15,928.928 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:05:15,931.931 INFO    ] No camera update needed
[2026-08-31 17:05:15,933.933 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:05:15,935.935 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:05:15,940.940 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:05:15,945.945 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:05:17,986.986 INFO    ] ================================================
[2026-08-31 17:05:18,001.001 INFO    ] Launching Daemon at Mon Aug 31 17:05:17 IST 2026
[2026-08-31 17:05:18,012.012 INFO    ] ================================================
[2026-08-31 17:05:18,580.580 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:05:18
[2026-08-31 17:05:19,166.166 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:05:19,416.416 INFO    ] Initializing speech engine...
[2026-08-31 17:05:19,430.430 INFO    ] 2026-08-31 17:05:19
[2026-08-31 17:05:19,697.697 INFO    ] 2026-08-31 17:05:19
[2026-08-31 17:05:19,732.732 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:05:19,931.931 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:05:19,976.976 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:05:20,139.139 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:05:20,179.179 INFO    ] time= 31/08/2026 17:05:20
[2026-08-31 17:05:20,233.233 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:05:20,273.273 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:05:20,401.401 INFO    ] No existing commands found in stream
[2026-08-31 17:05:25,426.426 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:05:25,429.429 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-08-31 17:05:29,362.362 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 17:05:29,365.365 INFO    ] Checking for system updates...
[2026-08-31 17:05:29,401.401 INFO    ] 200
[2026-08-31 17:05:29,404.404 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:05:29,458.458 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:05:29,461.461 INFO    ] No update needed
[2026-08-31 17:05:29,464.464 INFO    ] Checking for camera pi updates...
[2026-08-31 17:05:29,499.499 INFO    ] 200
[2026-08-31 17:05:29,502.502 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:05:29,549.549 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:05:29,617.617 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:05:29,620.620 INFO    ] No camera update needed
[2026-08-31 17:05:29,622.622 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:05:29,624.624 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:05:29,630.630 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:05:29,635.635 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:05:31,676.676 INFO    ] ================================================
[2026-08-31 17:05:31,692.692 INFO    ] Launching Daemon at Mon Aug 31 17:05:31 IST 2026
[2026-08-31 17:05:31,702.702 INFO    ] ================================================
[2026-08-31 17:05:32,366.366 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:05:32
[2026-08-31 17:05:33,092.092 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:05:33,398.398 INFO    ] Initializing speech engine...
[2026-08-31 17:05:33,405.405 INFO    ] 2026-08-31 17:05:33
[2026-08-31 17:05:33,688.688 INFO    ] 2026-08-31 17:05:33
[2026-08-31 17:05:33,740.740 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:05:33,977.977 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:05:33,982.982 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:05:34,214.214 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:05:34,251.251 INFO    ] time= 31/08/2026 17:05:34
[2026-08-31 17:05:34,266.266 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:05:34,275.275 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:05:34,432.432 INFO    ] No existing commands found in stream
[2026-08-31 17:05:39,460.460 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:05:39,464.464 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-08-31 17:05:40,695.695 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 17:05:40,699.699 INFO    ] Checking for system updates...
[2026-08-31 17:05:40,742.742 INFO    ] 200
[2026-08-31 17:05:40,745.745 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:05:40,809.809 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:05:40,811.811 INFO    ] No update needed
[2026-08-31 17:05:40,814.814 INFO    ] Checking for camera pi updates...
[2026-08-31 17:05:40,850.850 INFO    ] 200
[2026-08-31 17:05:40,852.852 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:05:40,904.904 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:05:40,983.983 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:05:40,985.985 INFO    ] No camera update needed
[2026-08-31 17:05:40,988.988 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:05:40,991.991 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:05:40,997.997 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:05:41,003.003 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:05:43,045.045 INFO    ] ================================================
[2026-08-31 17:05:43,062.062 INFO    ] Launching Daemon at Mon Aug 31 17:05:43 IST 2026
[2026-08-31 17:05:43,073.073 INFO    ] ================================================
[2026-08-31 17:05:43,745.745 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:05:43
[2026-08-31 17:05:44,443.443 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:05:44,776.776 INFO    ] Initializing speech engine...
[2026-08-31 17:05:44,786.786 INFO    ] 2026-08-31 17:05:44
[2026-08-31 17:05:45,082.082 INFO    ] 2026-08-31 17:05:45
[2026-08-31 17:05:45,198.198 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:05:45,418.418 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:05:45,426.426 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:05:45,740.740 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:05:45,794.794 INFO    ] time= 31/08/2026 17:05:45
[2026-08-31 17:05:45,871.871 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:05:45,895.895 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:05:46,207.207 INFO    ] No existing commands found in stream
[2026-08-31 17:05:51,223.223 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:05:51,226.226 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-08-31 17:05:53,747.747 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 17:05:53,750.750 INFO    ] Checking for system updates...
[2026-08-31 17:05:53,787.787 INFO    ] 200
[2026-08-31 17:05:53,790.790 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:05:53,843.843 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:05:53,846.846 INFO    ] No update needed
[2026-08-31 17:05:53,849.849 INFO    ] Checking for camera pi updates...
[2026-08-31 17:05:53,885.885 INFO    ] 200
[2026-08-31 17:05:53,888.888 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:05:53,929.929 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:05:54,006.006 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:05:54,009.009 INFO    ] No camera update needed
[2026-08-31 17:05:54,011.011 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:05:54,014.014 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:05:54,019.019 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:05:54,024.024 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:05:56,063.063 INFO    ] ================================================
[2026-08-31 17:05:56,079.079 INFO    ] Launching Daemon at Mon Aug 31 17:05:56 IST 2026
[2026-08-31 17:05:56,090.090 INFO    ] ================================================
[2026-08-31 17:05:56,764.764 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:05:56
[2026-08-31 17:05:57,459.459 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:05:57,772.772 INFO    ] Initializing speech engine...
[2026-08-31 17:05:57,786.786 INFO    ] 2026-08-31 17:05:57
[2026-08-31 17:05:58,060.060 INFO    ] 2026-08-31 17:05:58
[2026-08-31 17:05:58,115.115 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:05:58,365.365 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:05:58,373.373 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:05:58,577.577 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:05:58,620.620 INFO    ] time= 31/08/2026 17:05:58
[2026-08-31 17:05:58,638.638 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:05:58,648.648 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:05:58,753.753 INFO    ] No existing commands found in stream
[2026-08-31 17:06:03,784.784 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:06:03,787.787 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-08-31 17:06:05,770.770 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 17:06:05,773.773 INFO    ] Checking for system updates...
[2026-08-31 17:06:05,810.810 INFO    ] 200
[2026-08-31 17:06:05,813.813 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:06:05,867.867 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:06:05,870.870 INFO    ] No update needed
[2026-08-31 17:06:05,873.873 INFO    ] Checking for camera pi updates...
[2026-08-31 17:06:05,912.912 INFO    ] 200
[2026-08-31 17:06:05,915.915 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:06:05,957.957 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:06:06,036.036 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:06:06,039.039 INFO    ] No camera update needed
[2026-08-31 17:06:06,042.042 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:06:06,045.045 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:06:06,051.051 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:06:06,057.057 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:06:08,098.098 INFO    ] ================================================
[2026-08-31 17:06:08,113.113 INFO    ] Launching Daemon at Mon Aug 31 17:06:08 IST 2026
[2026-08-31 17:06:08,124.124 INFO    ] ================================================
[2026-08-31 17:06:08,705.705 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:06:08
[2026-08-31 17:06:09,303.303 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:06:09,583.583 INFO    ] Initializing speech engine...
[2026-08-31 17:06:09,589.589 INFO    ] 2026-08-31 17:06:09
[2026-08-31 17:06:09,852.852 INFO    ] 2026-08-31 17:06:09
[2026-08-31 17:06:09,882.882 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:06:10,156.156 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:06:10,161.161 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:06:10,374.374 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:06:10,398.398 INFO    ] time= 31/08/2026 17:06:10
[2026-08-31 17:06:10,413.413 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:06:10,421.421 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:06:10,556.556 INFO    ] No existing commands found in stream
[2026-08-31 17:06:15,581.581 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:06:15,584.584 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-08-31 17:06:16,129.129 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 17:06:16,132.132 INFO    ] Checking for system updates...
[2026-08-31 17:06:16,168.168 INFO    ] 200
[2026-08-31 17:06:16,170.170 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:06:16,223.223 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:06:16,225.225 INFO    ] No update needed
[2026-08-31 17:06:16,228.228 INFO    ] Checking for camera pi updates...
[2026-08-31 17:06:16,266.266 INFO    ] 200
[2026-08-31 17:06:16,269.269 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:06:16,309.309 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:06:16,400.400 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:06:16,403.403 INFO    ] No camera update needed
[2026-08-31 17:06:16,405.405 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:06:16,408.408 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:06:16,413.413 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:06:16,418.418 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:06:18,462.462 INFO    ] ================================================
[2026-08-31 17:06:18,477.477 INFO    ] Launching Daemon at Mon Aug 31 17:06:18 IST 2026
[2026-08-31 17:06:18,488.488 INFO    ] ================================================
[2026-08-31 17:06:19,061.061 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:06:19
[2026-08-31 17:06:19,712.712 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:06:20,024.024 INFO    ] Initializing speech engine...
[2026-08-31 17:06:20,032.032 INFO    ] 2026-08-31 17:06:20
[2026-08-31 17:06:20,328.328 INFO    ] 2026-08-31 17:06:20
[2026-08-31 17:06:20,374.374 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:06:20,662.662 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:06:20,670.670 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:06:20,866.866 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:06:20,885.885 INFO    ] time= 31/08/2026 17:06:20
[2026-08-31 17:06:20,914.914 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:06:20,924.924 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:06:21,023.023 INFO    ] No existing commands found in stream
[2026-08-31 17:06:26,042.042 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:06:26,045.045 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-08-31 17:06:27,446.446 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 17:06:27,449.449 INFO    ] Checking for system updates...
[2026-08-31 17:06:27,489.489 INFO    ] 200
[2026-08-31 17:06:27,492.492 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:06:27,552.552 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:06:27,555.555 INFO    ] No update needed
[2026-08-31 17:06:27,557.557 INFO    ] Checking for camera pi updates...
[2026-08-31 17:06:27,596.596 INFO    ] 200
[2026-08-31 17:06:27,598.598 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:06:27,638.638 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:06:27,812.812 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:06:27,815.815 INFO    ] No camera update needed
[2026-08-31 17:06:27,817.817 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:06:27,819.819 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:06:27,824.824 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:06:27,829.829 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:06:29,869.869 INFO    ] ================================================
[2026-08-31 17:06:29,884.884 INFO    ] Launching Daemon at Mon Aug 31 17:06:29 IST 2026
[2026-08-31 17:06:29,895.895 INFO    ] ================================================
[2026-08-31 17:06:30,475.475 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:06:30
[2026-08-31 17:06:31,078.078 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:06:31,341.341 INFO    ] Initializing speech engine...
[2026-08-31 17:06:31,347.347 INFO    ] 2026-08-31 17:06:31
[2026-08-31 17:06:31,651.651 INFO    ] 2026-08-31 17:06:31
[2026-08-31 17:06:31,676.676 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:06:31,902.902 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:06:31,923.923 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:06:32,101.101 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:06:32,111.111 INFO    ] time= 31/08/2026 17:06:32
[2026-08-31 17:06:32,116.116 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:06:32,122.122 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:06:32,204.204 INFO    ] No existing commands found in stream
[2026-08-31 17:06:37,235.235 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:06:37,238.238 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-08-31 17:06:40,200.200 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 17:06:40,203.203 INFO    ] Checking for system updates...
[2026-08-31 17:06:40,239.239 INFO    ] 200
[2026-08-31 17:06:40,241.241 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:06:40,293.293 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:06:40,295.295 INFO    ] No update needed
[2026-08-31 17:06:40,298.298 INFO    ] Checking for camera pi updates...
[2026-08-31 17:06:40,331.331 INFO    ] 200
[2026-08-31 17:06:40,334.334 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:06:40,374.374 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:06:40,425.425 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:06:40,428.428 INFO    ] No camera update needed
[2026-08-31 17:06:40,430.430 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:06:40,433.433 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:06:40,438.438 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:06:40,443.443 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:06:42,483.483 INFO    ] ================================================
[2026-08-31 17:06:42,498.498 INFO    ] Launching Daemon at Mon Aug 31 17:06:42 IST 2026
[2026-08-31 17:06:42,509.509 INFO    ] ================================================
[2026-08-31 17:06:43,089.089 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:06:43
[2026-08-31 17:06:43,691.691 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:06:43,967.967 INFO    ] Initializing speech engine...
[2026-08-31 17:06:43,976.976 INFO    ] 2026-08-31 17:06:43
[2026-08-31 17:06:44,236.236 INFO    ] 2026-08-31 17:06:44
[2026-08-31 17:06:44,290.290 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:06:44,519.519 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:06:44,524.524 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:06:44,656.656 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:06:44,696.696 INFO    ] time= 31/08/2026 17:06:44
[2026-08-31 17:06:44,760.760 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:06:44,789.789 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:06:44,921.921 INFO    ] No existing commands found in stream
[2026-08-31 17:06:49,946.946 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:06:49,949.949 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-08-31 17:06:51,358.358 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 17:06:51,361.361 INFO    ] Checking for system updates...
[2026-08-31 17:06:51,398.398 INFO    ] 200
[2026-08-31 17:06:51,400.400 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:06:51,454.454 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:06:51,456.456 INFO    ] No update needed
[2026-08-31 17:06:51,459.459 INFO    ] Checking for camera pi updates...
[2026-08-31 17:06:51,492.492 INFO    ] 200
[2026-08-31 17:06:51,495.495 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:06:51,536.536 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:06:51,610.610 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:06:51,613.613 INFO    ] No camera update needed
[2026-08-31 17:06:51,615.615 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:06:51,617.617 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:06:51,623.623 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:06:51,628.628 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:06:53,671.671 INFO    ] ================================================
[2026-08-31 17:06:53,686.686 INFO    ] Launching Daemon at Mon Aug 31 17:06:53 IST 2026
[2026-08-31 17:06:53,697.697 INFO    ] ================================================
[2026-08-31 17:06:54,265.265 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:06:54
[2026-08-31 17:06:54,860.860 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:06:55,174.174 INFO    ] Initializing speech engine...
[2026-08-31 17:06:55,181.181 INFO    ] 2026-08-31 17:06:55
[2026-08-31 17:06:55,454.454 INFO    ] 2026-08-31 17:06:55
[2026-08-31 17:06:55,516.516 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:06:55,752.752 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:06:55,764.764 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:06:55,909.909 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:06:55,970.970 INFO    ] time= 31/08/2026 17:06:55
[2026-08-31 17:06:56,030.030 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:06:56,042.042 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:06:56,201.201 INFO    ] No existing commands found in stream
[2026-08-31 17:07:01,221.221 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:07:01,224.224 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-08-31 17:07:04,564.564 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 17:07:04,567.567 INFO    ] Checking for system updates...
[2026-08-31 17:07:04,602.602 INFO    ] 200
[2026-08-31 17:07:04,604.604 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:07:04,662.662 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:07:04,665.665 INFO    ] No update needed
[2026-08-31 17:07:04,667.667 INFO    ] Checking for camera pi updates...
[2026-08-31 17:07:04,704.704 INFO    ] 200
[2026-08-31 17:07:04,706.706 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:07:04,746.746 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:07:04,852.852 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:07:04,855.855 INFO    ] No camera update needed
[2026-08-31 17:07:04,857.857 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:07:04,859.859 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:07:04,865.865 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:07:04,870.870 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:07:06,910.910 INFO    ] ================================================
[2026-08-31 17:07:06,925.925 INFO    ] Launching Daemon at Mon Aug 31 17:07:06 IST 2026
[2026-08-31 17:07:06,935.935 INFO    ] ================================================
[2026-08-31 17:07:07,517.517 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:07:07
[2026-08-31 17:07:08,100.100 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:07:08,362.362 INFO    ] Initializing speech engine...
[2026-08-31 17:07:08,368.368 INFO    ] 2026-08-31 17:07:08
[2026-08-31 17:07:08,661.661 INFO    ] 2026-08-31 17:07:08
[2026-08-31 17:07:08,699.699 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:07:08,922.922 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:07:08,968.968 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:07:09,145.145 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:07:09,172.172 INFO    ] time= 31/08/2026 17:07:09
[2026-08-31 17:07:09,226.226 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:07:09,285.285 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:07:09,359.359 INFO    ] No existing commands found in stream
[2026-08-31 17:07:14,371.371 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:07:14,374.374 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-08-31 17:07:15,038.038 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 17:07:15,041.041 INFO    ] Checking for system updates...
[2026-08-31 17:07:15,076.076 INFO    ] 200
[2026-08-31 17:07:15,079.079 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:07:15,132.132 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:07:15,134.134 INFO    ] No update needed
[2026-08-31 17:07:15,137.137 INFO    ] Checking for camera pi updates...
[2026-08-31 17:07:15,170.170 INFO    ] 200
[2026-08-31 17:07:15,173.173 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:07:15,214.214 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:07:15,264.264 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:07:15,266.266 INFO    ] No camera update needed
[2026-08-31 17:07:15,269.269 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:07:15,271.271 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:07:15,277.277 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:07:15,282.282 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:07:17,322.322 INFO    ] ================================================
[2026-08-31 17:07:17,337.337 INFO    ] Launching Daemon at Mon Aug 31 17:07:17 IST 2026
[2026-08-31 17:07:17,348.348 INFO    ] ================================================
[2026-08-31 17:07:17,920.920 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:07:17
[2026-08-31 17:07:18,505.505 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:07:18,756.756 INFO    ] Initializing speech engine...
[2026-08-31 17:07:18,780.780 INFO    ] 2026-08-31 17:07:18
[2026-08-31 17:07:19,036.036 INFO    ] 2026-08-31 17:07:19
[2026-08-31 17:07:19,071.071 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:07:19,328.328 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:07:19,338.338 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:07:19,475.475 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:07:19,541.541 INFO    ] time= 31/08/2026 17:07:19
[2026-08-31 17:07:19,600.600 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:07:19,610.610 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:07:19,729.729 INFO    ] No existing commands found in stream
[2026-08-31 17:07:24,759.759 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:07:24,762.762 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-08-31 17:07:29,095.095 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 17:07:29,097.097 INFO    ] Checking for system updates...
[2026-08-31 17:07:29,134.134 INFO    ] 200
[2026-08-31 17:07:29,136.136 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:07:29,189.189 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:07:29,192.192 INFO    ] No update needed
[2026-08-31 17:07:29,195.195 INFO    ] Checking for camera pi updates...
[2026-08-31 17:07:29,230.230 INFO    ] 200
[2026-08-31 17:07:29,232.232 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:07:29,278.278 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:07:29,352.352 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:07:29,354.354 INFO    ] No camera update needed
[2026-08-31 17:07:29,356.356 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:07:29,359.359 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:07:29,364.364 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:07:29,369.369 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:07:31,411.411 INFO    ] ================================================
[2026-08-31 17:07:31,428.428 INFO    ] Launching Daemon at Mon Aug 31 17:07:31 IST 2026
[2026-08-31 17:07:31,439.439 INFO    ] ================================================
[2026-08-31 17:07:32,024.024 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:07:32
[2026-08-31 17:07:32,640.640 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:07:32,912.912 INFO    ] Initializing speech engine...
[2026-08-31 17:07:32,931.931 INFO    ] 2026-08-31 17:07:32
[2026-08-31 17:07:33,201.201 INFO    ] 2026-08-31 17:07:33
[2026-08-31 17:07:33,236.236 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:07:33,494.494 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:07:33,503.503 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:07:33,634.634 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:07:33,671.671 INFO    ] time= 31/08/2026 17:07:33
[2026-08-31 17:07:33,736.736 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:07:33,768.768 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:07:33,847.847 INFO    ] No existing commands found in stream
[2026-08-31 17:07:38,883.883 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:07:38,886.886 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-08-31 17:07:40,378.378 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 17:07:40,381.381 INFO    ] Checking for system updates...
[2026-08-31 17:07:40,418.418 INFO    ] 200
[2026-08-31 17:07:40,420.420 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:07:40,474.474 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:07:40,477.477 INFO    ] No update needed
[2026-08-31 17:07:40,480.480 INFO    ] Checking for camera pi updates...
[2026-08-31 17:07:40,517.517 INFO    ] 200
[2026-08-31 17:07:40,520.520 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:07:40,566.566 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:07:40,660.660 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:07:40,662.662 INFO    ] No camera update needed
[2026-08-31 17:07:40,665.665 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:07:40,668.668 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:07:40,674.674 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:07:40,679.679 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:07:42,723.723 INFO    ] ================================================
[2026-08-31 17:07:42,739.739 INFO    ] Launching Daemon at Mon Aug 31 17:07:42 IST 2026
[2026-08-31 17:07:42,750.750 INFO    ] ================================================
[2026-08-31 17:07:43,330.330 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:07:43
[2026-08-31 17:07:43,927.927 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:07:44,201.201 INFO    ] Initializing speech engine...
[2026-08-31 17:07:44,212.212 INFO    ] 2026-08-31 17:07:44
[2026-08-31 17:07:44,459.459 INFO    ] 2026-08-31 17:07:44
[2026-08-31 17:07:44,494.494 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:07:44,746.746 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:07:44,756.756 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:07:44,973.973 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:07:45,014.014 INFO    ] time= 31/08/2026 17:07:44
[2026-08-31 17:07:45,020.020 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:07:45,041.041 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:07:45,169.169 INFO    ] No existing commands found in stream
[2026-08-31 17:07:50,182.182 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:07:50,190.190 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-08-31 17:07:53,918.918 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 17:07:53,921.921 INFO    ] Checking for system updates...
[2026-08-31 17:07:53,956.956 INFO    ] 200
[2026-08-31 17:07:53,959.959 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:07:54,010.010 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:07:54,013.013 INFO    ] No update needed
[2026-08-31 17:07:54,015.015 INFO    ] Checking for camera pi updates...
[2026-08-31 17:07:54,049.049 INFO    ] 200
[2026-08-31 17:07:54,051.051 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:07:54,091.091 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:07:54,171.171 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:07:54,173.173 INFO    ] No camera update needed
[2026-08-31 17:07:54,176.176 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:07:54,178.178 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:07:54,183.183 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:07:54,188.188 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:07:56,230.230 INFO    ] ================================================
[2026-08-31 17:07:56,249.249 INFO    ] Launching Daemon at Mon Aug 31 17:07:56 IST 2026
[2026-08-31 17:07:56,260.260 INFO    ] ================================================
[2026-08-31 17:07:56,842.842 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:07:56
[2026-08-31 17:07:57,439.439 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:07:57,723.723 INFO    ] Initializing speech engine...
[2026-08-31 17:07:57,732.732 INFO    ] 2026-08-31 17:07:57
[2026-08-31 17:07:57,990.990 INFO    ] 2026-08-31 17:07:57
[2026-08-31 17:07:58,026.026 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:07:58,248.248 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:07:58,256.256 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:07:58,474.474 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:07:58,486.486 INFO    ] time= 31/08/2026 17:07:58
[2026-08-31 17:07:58,550.550 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:07:58,605.605 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:07:58,689.689 INFO    ] No existing commands found in stream
[2026-08-31 17:08:03,700.700 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:08:03,703.703 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-08-31 17:08:07,857.857 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 17:08:07,860.860 INFO    ] Checking for system updates...
[2026-08-31 17:08:07,895.895 INFO    ] 200
[2026-08-31 17:08:07,897.897 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:08:07,950.950 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:08:07,953.953 INFO    ] No update needed
[2026-08-31 17:08:07,955.955 INFO    ] Checking for camera pi updates...
[2026-08-31 17:08:07,992.992 INFO    ] 200
[2026-08-31 17:08:07,994.994 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:08:08,034.034 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:08:08,115.115 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:08:08,117.117 INFO    ] No camera update needed
[2026-08-31 17:08:08,120.120 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:08:08,122.122 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:08:08,127.127 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:08:08,132.132 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:08:10,172.172 INFO    ] ================================================
[2026-08-31 17:08:10,187.187 INFO    ] Launching Daemon at Mon Aug 31 17:08:10 IST 2026
[2026-08-31 17:08:10,197.197 INFO    ] ================================================
[2026-08-31 17:08:10,777.777 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:08:10
[2026-08-31 17:08:11,375.375 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:08:11,645.645 INFO    ] Initializing speech engine...
[2026-08-31 17:08:11,655.655 INFO    ] 2026-08-31 17:08:11
[2026-08-31 17:08:11,904.904 INFO    ] 2026-08-31 17:08:11
[2026-08-31 17:08:11,940.940 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:08:12,191.191 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:08:12,200.200 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:08:12,340.340 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:08:12,409.409 INFO    ] time= 31/08/2026 17:08:12
[2026-08-31 17:08:12,462.462 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:08:12,469.469 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:08:12,599.599 INFO    ] No existing commands found in stream
[2026-08-31 17:08:17,624.624 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:08:17,627.627 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-08-31 17:08:19,399.399 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 17:08:19,402.402 INFO    ] Checking for system updates...
[2026-08-31 17:08:19,438.438 INFO    ] 200
[2026-08-31 17:08:19,440.440 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:08:19,493.493 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:08:19,496.496 INFO    ] No update needed
[2026-08-31 17:08:19,498.498 INFO    ] Checking for camera pi updates...
[2026-08-31 17:08:19,541.541 INFO    ] 200
[2026-08-31 17:08:19,543.543 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:08:19,583.583 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:08:19,658.658 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:08:19,661.661 INFO    ] No camera update needed
[2026-08-31 17:08:19,663.663 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:08:19,665.665 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:08:19,671.671 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:08:19,676.676 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:08:21,718.718 INFO    ] ================================================
[2026-08-31 17:08:21,733.733 INFO    ] Launching Daemon at Mon Aug 31 17:08:21 IST 2026
[2026-08-31 17:08:21,745.745 INFO    ] ================================================
[2026-08-31 17:08:22,397.397 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:08:22
[2026-08-31 17:08:23,073.073 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:08:23,376.376 INFO    ] Initializing speech engine...
[2026-08-31 17:08:23,390.390 INFO    ] 2026-08-31 17:08:23
[2026-08-31 17:08:23,670.670 INFO    ] 2026-08-31 17:08:23
[2026-08-31 17:08:23,714.714 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:08:23,961.961 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:08:23,968.968 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:08:24,168.168 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:08:24,203.203 INFO    ] time= 31/08/2026 17:08:24
[2026-08-31 17:08:24,221.221 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:08:24,232.232 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:08:24,361.361 INFO    ] No existing commands found in stream
[2026-08-31 17:08:29,380.380 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:08:29,383.383 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-08-31 17:08:33,345.345 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 17:08:33,348.348 INFO    ] Checking for system updates...
[2026-08-31 17:08:33,389.389 INFO    ] 200
[2026-08-31 17:08:33,392.392 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:08:33,446.446 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:08:33,449.449 INFO    ] No update needed
[2026-08-31 17:08:33,452.452 INFO    ] Checking for camera pi updates...
[2026-08-31 17:08:33,487.487 INFO    ] 200
[2026-08-31 17:08:33,490.490 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:08:33,531.531 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:08:33,632.632 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:08:33,635.635 INFO    ] No camera update needed
[2026-08-31 17:08:33,638.638 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:08:33,641.641 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:08:33,647.647 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:08:33,653.653 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:08:35,695.695 INFO    ] ================================================
[2026-08-31 17:08:35,711.711 INFO    ] Launching Daemon at Mon Aug 31 17:08:35 IST 2026
[2026-08-31 17:08:35,723.723 INFO    ] ================================================
[2026-08-31 17:08:36,304.304 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:08:36
[2026-08-31 17:08:36,902.902 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:08:37,170.170 INFO    ] Initializing speech engine...
[2026-08-31 17:08:37,173.173 INFO    ] 2026-08-31 17:08:37
[2026-08-31 17:08:37,431.431 INFO    ] 2026-08-31 17:08:37
[2026-08-31 17:08:37,467.467 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:08:37,729.729 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:08:37,734.734 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:08:37,914.914 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:08:37,984.984 INFO    ] time= 31/08/2026 17:08:37
[2026-08-31 17:08:37,998.998 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:08:38,016.016 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:08:38,131.131 INFO    ] No existing commands found in stream
[2026-08-31 17:08:43,156.156 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:08:43,159.159 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-08-31 17:08:45,297.297 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 17:08:45,300.300 INFO    ] Checking for system updates...
[2026-08-31 17:08:45,336.336 INFO    ] 200
[2026-08-31 17:08:45,339.339 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:08:45,399.399 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:08:45,402.402 INFO    ] No update needed
[2026-08-31 17:08:45,405.405 INFO    ] Checking for camera pi updates...
[2026-08-31 17:08:45,440.440 INFO    ] 200
[2026-08-31 17:08:45,443.443 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:08:45,490.490 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:08:45,574.574 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:08:45,577.577 INFO    ] No camera update needed
[2026-08-31 17:08:45,579.579 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:08:45,582.582 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:08:45,587.587 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:08:45,593.593 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:08:47,632.632 INFO    ] ================================================
[2026-08-31 17:08:47,648.648 INFO    ] Launching Daemon at Mon Aug 31 17:08:47 IST 2026
[2026-08-31 17:08:47,659.659 INFO    ] ================================================
[2026-08-31 17:08:48,225.225 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:08:48
[2026-08-31 17:08:48,806.806 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:08:49,072.072 INFO    ] Initializing speech engine...
[2026-08-31 17:08:49,082.082 INFO    ] 2026-08-31 17:08:49
[2026-08-31 17:08:49,326.326 INFO    ] 2026-08-31 17:08:49
[2026-08-31 17:08:49,362.362 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:08:49,558.558 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:08:49,617.617 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:08:49,758.758 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:08:49,829.829 INFO    ] time= 31/08/2026 17:08:49
[2026-08-31 17:08:49,886.886 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:08:49,892.892 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:08:50,037.037 INFO    ] No existing commands found in stream
[2026-08-31 17:08:55,049.049 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:08:55,052.052 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-08-31 17:08:55,575.575 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 17:08:55,577.577 INFO    ] Checking for system updates...
[2026-08-31 17:08:55,613.613 INFO    ] 200
[2026-08-31 17:08:55,616.616 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:08:55,676.676 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:08:55,679.679 INFO    ] No update needed
[2026-08-31 17:08:55,681.681 INFO    ] Checking for camera pi updates...
[2026-08-31 17:08:55,715.715 INFO    ] 200
[2026-08-31 17:08:55,718.718 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:08:55,763.763 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:08:55,844.844 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:08:55,847.847 INFO    ] No camera update needed
[2026-08-31 17:08:55,849.849 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:08:55,852.852 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:08:55,857.857 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:08:55,862.862 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:08:57,903.903 INFO    ] ================================================
[2026-08-31 17:08:57,919.919 INFO    ] Launching Daemon at Mon Aug 31 17:08:57 IST 2026
[2026-08-31 17:08:57,930.930 INFO    ] ================================================
[2026-08-31 17:08:58,596.596 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:08:58
[2026-08-31 17:08:59,277.277 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:08:59,589.589 INFO    ] Initializing speech engine...
[2026-08-31 17:08:59,601.601 INFO    ] 2026-08-31 17:08:59
[2026-08-31 17:08:59,913.913 INFO    ] 2026-08-31 17:08:59
[2026-08-31 17:08:59,998.998 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:09:00,209.209 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:09:00,218.218 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:09:00,399.399 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:09:00,421.421 INFO    ] time= 31/08/2026 17:09:00
[2026-08-31 17:09:00,440.440 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:09:00,469.469 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:09:00,601.601 INFO    ] No existing commands found in stream
[2026-08-31 17:09:05,627.627 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:09:05,630.630 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-08-31 17:09:06,856.856 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 17:09:06,859.859 INFO    ] Checking for system updates...
[2026-08-31 17:09:06,896.896 INFO    ] 200
[2026-08-31 17:09:06,899.899 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:09:06,953.953 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:09:06,955.955 INFO    ] No update needed
[2026-08-31 17:09:06,958.958 INFO    ] Checking for camera pi updates...
[2026-08-31 17:09:06,993.993 INFO    ] 200
[2026-08-31 17:09:06,996.996 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:09:07,038.038 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:09:07,118.118 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:09:07,121.121 INFO    ] No camera update needed
[2026-08-31 17:09:07,124.124 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:09:07,127.127 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:09:07,134.134 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:09:07,140.140 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:09:09,182.182 INFO    ] ================================================
[2026-08-31 17:09:09,198.198 INFO    ] Launching Daemon at Mon Aug 31 17:09:09 IST 2026
[2026-08-31 17:09:09,209.209 INFO    ] ================================================
[2026-08-31 17:09:09,775.775 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:09:09
[2026-08-31 17:09:10,357.357 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:09:10,627.627 INFO    ] Initializing speech engine...
[2026-08-31 17:09:10,634.634 INFO    ] 2026-08-31 17:09:10
[2026-08-31 17:09:10,891.891 INFO    ] 2026-08-31 17:09:10
[2026-08-31 17:09:10,947.947 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:09:11,171.171 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:09:11,175.175 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:09:11,365.365 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:09:11,420.420 INFO    ] time= 31/08/2026 17:09:11
[2026-08-31 17:09:11,439.439 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:09:11,453.453 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:09:11,566.566 INFO    ] No existing commands found in stream
[2026-08-31 17:09:16,592.592 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:09:16,594.594 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-08-31 17:09:19,645.645 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 17:09:19,648.648 INFO    ] Checking for system updates...
[2026-08-31 17:09:19,688.688 INFO    ] 200
[2026-08-31 17:09:19,690.690 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:09:19,749.749 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:09:19,752.752 INFO    ] No update needed
[2026-08-31 17:09:19,754.754 INFO    ] Checking for camera pi updates...
[2026-08-31 17:09:19,788.788 INFO    ] 200
[2026-08-31 17:09:19,790.790 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:09:19,835.835 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:09:19,913.913 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:09:19,915.915 INFO    ] No camera update needed
[2026-08-31 17:09:19,918.918 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:09:19,920.920 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:09:19,925.925 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:09:19,930.930 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:09:21,970.970 INFO    ] ================================================
[2026-08-31 17:09:21,986.986 INFO    ] Launching Daemon at Mon Aug 31 17:09:21 IST 2026
[2026-08-31 17:09:22,996.996 INFO    ] ================================================
[2026-08-31 17:09:22,651.651 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:09:22
[2026-08-31 17:09:23,326.326 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:09:23,633.633 INFO    ] Initializing speech engine...
[2026-08-31 17:09:23,644.644 INFO    ] 2026-08-31 17:09:23
[2026-08-31 17:09:23,953.953 INFO    ] 2026-08-31 17:09:23
[2026-08-31 17:09:24,039.039 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:09:24,252.252 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:09:24,258.258 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:09:24,452.452 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:09:24,470.470 INFO    ] time= 31/08/2026 17:09:24
[2026-08-31 17:09:24,480.480 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:09:24,507.507 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:09:24,618.618 INFO    ] No existing commands found in stream
[2026-08-31 17:09:29,643.643 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:09:29,646.646 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-08-31 17:09:31,885.885 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 17:09:31,888.888 INFO    ] Checking for system updates...
[2026-08-31 17:09:31,931.931 INFO    ] 200
[2026-08-31 17:09:31,934.934 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:09:31,998.998 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:09:32,001.001 INFO    ] No update needed
[2026-08-31 17:09:32,003.003 INFO    ] Checking for camera pi updates...
[2026-08-31 17:09:32,039.039 INFO    ] 200
[2026-08-31 17:09:32,042.042 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:09:32,085.085 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:09:32,166.166 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:09:32,169.169 INFO    ] No camera update needed
[2026-08-31 17:09:32,172.172 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:09:32,175.175 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:09:32,181.181 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:09:32,186.186 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:09:34,227.227 INFO    ] ================================================
[2026-08-31 17:09:34,243.243 INFO    ] Launching Daemon at Mon Aug 31 17:09:34 IST 2026
[2026-08-31 17:09:34,255.255 INFO    ] ================================================
[2026-08-31 17:09:34,911.911 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:09:34
[2026-08-31 17:09:35,603.603 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:09:35,905.905 INFO    ] Initializing speech engine...
[2026-08-31 17:09:35,918.918 INFO    ] 2026-08-31 17:09:35
[2026-08-31 17:09:36,228.228 INFO    ] 2026-08-31 17:09:36
[2026-08-31 17:09:36,303.303 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:09:36,527.527 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:09:36,532.532 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:09:36,731.731 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:09:36,748.748 INFO    ] time= 31/08/2026 17:09:36
[2026-08-31 17:09:36,773.773 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:09:36,788.788 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:09:36,892.892 INFO    ] No existing commands found in stream
[2026-08-31 17:09:41,904.904 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:09:41,908.908 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-08-31 17:09:43,010.010 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 17:09:43,013.013 INFO    ] Checking for system updates...
[2026-08-31 17:09:43,051.051 INFO    ] 200
[2026-08-31 17:09:43,101.101 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:09:43,167.167 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:09:43,169.169 INFO    ] No update needed
[2026-08-31 17:09:43,172.172 INFO    ] Checking for camera pi updates...
[2026-08-31 17:09:43,210.210 INFO    ] 200
[2026-08-31 17:09:43,212.212 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:09:43,256.256 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:09:43,335.335 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:09:43,338.338 INFO    ] No camera update needed
[2026-08-31 17:09:43,341.341 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:09:43,343.343 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:09:43,349.349 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:09:43,354.354 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:09:45,394.394 INFO    ] ================================================
[2026-08-31 17:09:45,410.410 INFO    ] Launching Daemon at Mon Aug 31 17:09:45 IST 2026
[2026-08-31 17:09:45,421.421 INFO    ] ================================================
[2026-08-31 17:09:46,074.074 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:09:46
[2026-08-31 17:09:46,711.711 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:09:46,991.991 INFO    ] Initializing speech engine...
[2026-08-31 17:09:46,999.999 INFO    ] 2026-08-31 17:09:46
[2026-08-31 17:09:47,245.245 INFO    ] 2026-08-31 17:09:47
[2026-08-31 17:09:47,278.278 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:09:47,525.525 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:09:47,527.527 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:09:47,680.680 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:09:47,744.744 INFO    ] time= 31/08/2026 17:09:47
[2026-08-31 17:09:47,804.804 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:09:47,812.812 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:09:47,955.955 INFO    ] No existing commands found in stream
[2026-08-31 17:09:52,969.969 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:09:52,971.971 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-08-31 17:09:53,837.837 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 17:09:53,840.840 INFO    ] Checking for system updates...
[2026-08-31 17:09:53,880.880 INFO    ] 200
[2026-08-31 17:09:53,883.883 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:09:53,937.937 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:09:53,940.940 INFO    ] No update needed
[2026-08-31 17:09:53,942.942 INFO    ] Checking for camera pi updates...
[2026-08-31 17:09:53,981.981 INFO    ] 200
[2026-08-31 17:09:53,983.983 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:09:54,027.027 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:09:54,116.116 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:09:54,118.118 INFO    ] No camera update needed
[2026-08-31 17:09:54,120.120 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:09:54,123.123 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:09:54,128.128 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:09:54,133.133 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:09:56,174.174 INFO    ] ================================================
[2026-08-31 17:09:56,190.190 INFO    ] Launching Daemon at Mon Aug 31 17:09:56 IST 2026
[2026-08-31 17:09:56,201.201 INFO    ] ================================================
[2026-08-31 17:09:56,767.767 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:09:56
[2026-08-31 17:09:57,351.351 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:09:57,619.619 INFO    ] Initializing speech engine...
[2026-08-31 17:09:57,634.634 INFO    ] 2026-08-31 17:09:57
[2026-08-31 17:09:57,904.904 INFO    ] 2026-08-31 17:09:57
[2026-08-31 17:09:57,941.941 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:09:58,165.165 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:09:58,226.226 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:09:58,388.388 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:09:58,394.394 INFO    ] time= 31/08/2026 17:09:58
[2026-08-31 17:09:58,454.454 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:09:58,492.492 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:09:58,562.562 INFO    ] No existing commands found in stream
[2026-08-31 17:10:03,570.570 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:10:03,572.572 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-08-31 17:10:08,863.863 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 17:10:08,865.865 INFO    ] Checking for system updates...
[2026-08-31 17:10:08,901.901 INFO    ] 200
[2026-08-31 17:10:08,903.903 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:10:08,955.955 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:10:08,958.958 INFO    ] No update needed
[2026-08-31 17:10:08,960.960 INFO    ] Checking for camera pi updates...
[2026-08-31 17:10:08,994.994 INFO    ] 200
[2026-08-31 17:10:09,001.001 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:10:09,048.048 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:10:09,136.136 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:10:09,139.139 INFO    ] No camera update needed
[2026-08-31 17:10:09,142.142 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:10:09,144.144 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:10:09,151.151 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:10:09,157.157 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:10:11,199.199 INFO    ] ================================================
[2026-08-31 17:10:11,215.215 INFO    ] Launching Daemon at Mon Aug 31 17:10:11 IST 2026
[2026-08-31 17:10:11,226.226 INFO    ] ================================================
[2026-08-31 17:10:11,867.867 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:10:11
[2026-08-31 17:10:12,543.543 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:10:12,850.850 INFO    ] Initializing speech engine...
[2026-08-31 17:10:12,863.863 INFO    ] 2026-08-31 17:10:12
[2026-08-31 17:10:13,175.175 INFO    ] 2026-08-31 17:10:13
[2026-08-31 17:10:13,263.263 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:10:13,479.479 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:10:13,485.485 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:10:13,678.678 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:10:13,685.685 INFO    ] time= 31/08/2026 17:10:13
[2026-08-31 17:10:13,703.703 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:10:13,732.732 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:10:13,838.838 INFO    ] No existing commands found in stream
[2026-08-31 17:10:18,860.860 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:10:18,863.863 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-08-31 17:10:20,763.763 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 17:10:20,766.766 INFO    ] Checking for system updates...
[2026-08-31 17:10:20,804.804 INFO    ] 200
[2026-08-31 17:10:20,807.807 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:10:20,868.868 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:10:20,871.871 INFO    ] No update needed
[2026-08-31 17:10:20,874.874 INFO    ] Checking for camera pi updates...
[2026-08-31 17:10:20,909.909 INFO    ] 200
[2026-08-31 17:10:20,911.911 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:10:20,954.954 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:10:21,031.031 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:10:21,034.034 INFO    ] No camera update needed
[2026-08-31 17:10:21,036.036 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:10:21,039.039 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:10:21,046.046 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:10:21,052.052 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:10:23,093.093 INFO    ] ================================================
[2026-08-31 17:10:23,109.109 INFO    ] Launching Daemon at Mon Aug 31 17:10:23 IST 2026
[2026-08-31 17:10:23,121.121 INFO    ] ================================================
[2026-08-31 17:10:23,713.713 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:10:23
[2026-08-31 17:10:24,313.313 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:10:24,585.585 INFO    ] Initializing speech engine...
[2026-08-31 17:10:24,595.595 INFO    ] 2026-08-31 17:10:24
[2026-08-31 17:10:24,872.872 INFO    ] 2026-08-31 17:10:24
[2026-08-31 17:10:24,928.928 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:10:25,156.156 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:10:25,161.161 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:10:25,295.295 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:10:25,350.350 INFO    ] time= 31/08/2026 17:10:25
[2026-08-31 17:10:25,405.405 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:10:25,429.429 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:10:25,574.574 INFO    ] No existing commands found in stream
[2026-08-31 17:10:30,590.590 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:10:30,593.593 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-08-31 17:10:32,848.848 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 17:10:32,850.850 INFO    ] Checking for system updates...
[2026-08-31 17:10:32,889.889 INFO    ] 200
[2026-08-31 17:10:32,892.892 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:10:32,965.965 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:10:32,970.970 INFO    ] No update needed
[2026-08-31 17:10:32,974.974 INFO    ] Checking for camera pi updates...
[2026-08-31 17:10:33,014.014 INFO    ] 200
[2026-08-31 17:10:33,017.017 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:10:33,064.064 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:10:33,146.146 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:10:33,149.149 INFO    ] No camera update needed
[2026-08-31 17:10:33,151.151 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:10:33,153.153 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:10:33,159.159 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:10:33,164.164 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:10:35,204.204 INFO    ] ================================================
[2026-08-31 17:10:35,219.219 INFO    ] Launching Daemon at Mon Aug 31 17:10:35 IST 2026
[2026-08-31 17:10:35,231.231 INFO    ] ================================================
[2026-08-31 17:10:35,797.797 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:10:35
[2026-08-31 17:10:36,391.391 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:10:36,670.670 INFO    ] Initializing speech engine...
[2026-08-31 17:10:36,679.679 INFO    ] 2026-08-31 17:10:36
[2026-08-31 17:10:36,942.942 INFO    ] 2026-08-31 17:10:36
[2026-08-31 17:10:36,996.996 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:10:37,217.217 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:10:37,226.226 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:10:37,463.463 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:10:37,487.487 INFO    ] time= 31/08/2026 17:10:37
[2026-08-31 17:10:37,502.502 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:10:37,511.511 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:10:37,639.639 INFO    ] No existing commands found in stream
[2026-08-31 17:10:42,652.652 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:10:42,654.654 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-08-31 17:10:45,692.692 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 17:10:45,695.695 INFO    ] Checking for system updates...
[2026-08-31 17:10:45,731.731 INFO    ] 200
[2026-08-31 17:10:45,733.733 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:10:45,785.785 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:10:45,788.788 INFO    ] No update needed
[2026-08-31 17:10:45,790.790 INFO    ] Checking for camera pi updates...
[2026-08-31 17:10:45,824.824 INFO    ] 200
[2026-08-31 17:10:45,826.826 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:10:45,872.872 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:10:46,047.047 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:10:46,049.049 INFO    ] No camera update needed
[2026-08-31 17:10:46,052.052 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:10:46,054.054 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:10:46,059.059 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:10:46,065.065 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:10:48,107.107 INFO    ] ================================================
[2026-08-31 17:10:48,122.122 INFO    ] Launching Daemon at Mon Aug 31 17:10:48 IST 2026
[2026-08-31 17:10:48,133.133 INFO    ] ================================================
[2026-08-31 17:10:48,768.768 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:10:48
[2026-08-31 17:10:49,435.435 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:10:49,743.743 INFO    ] Initializing speech engine...
[2026-08-31 17:10:49,754.754 INFO    ] 2026-08-31 17:10:49
[2026-08-31 17:10:50,062.062 INFO    ] 2026-08-31 17:10:50
[2026-08-31 17:10:50,149.149 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:10:50,362.362 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:10:50,369.369 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:10:50,561.561 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:10:50,569.569 INFO    ] time= 31/08/2026 17:10:50
[2026-08-31 17:10:50,590.590 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:10:50,617.617 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:10:50,724.724 INFO    ] No existing commands found in stream
[2026-08-31 17:10:55,753.753 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:10:55,756.756 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-08-31 17:10:59,276.276 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 17:10:59,279.279 INFO    ] Checking for system updates...
[2026-08-31 17:10:59,318.318 INFO    ] 200
[2026-08-31 17:10:59,321.321 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:10:59,374.374 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:10:59,376.376 INFO    ] No update needed
[2026-08-31 17:10:59,378.378 INFO    ] Checking for camera pi updates...
[2026-08-31 17:10:59,412.412 INFO    ] 200
[2026-08-31 17:10:59,415.415 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:10:59,454.454 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:10:59,534.534 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:10:59,536.536 INFO    ] No camera update needed
[2026-08-31 17:10:59,539.539 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:10:59,541.541 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:10:59,546.546 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:10:59,551.551 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:11:01,592.592 INFO    ] ================================================
[2026-08-31 17:11:01,607.607 INFO    ] Launching Daemon at Mon Aug 31 17:11:01 IST 2026
[2026-08-31 17:11:01,618.618 INFO    ] ================================================
[2026-08-31 17:11:02,341.341 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:11:02
[2026-08-31 17:11:03,000.000 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:11:03,309.309 INFO    ] Initializing speech engine...
[2026-08-31 17:11:03,324.324 INFO    ] 2026-08-31 17:11:03
[2026-08-31 17:11:03,630.630 INFO    ] 2026-08-31 17:11:03
[2026-08-31 17:11:03,672.672 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:11:03,887.887 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:11:03,901.901 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:11:04,073.073 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:11:04,082.082 INFO    ] time= 31/08/2026 17:11:04
[2026-08-31 17:11:04,125.125 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:11:04,156.156 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:11:04,283.283 INFO    ] No existing commands found in stream
[2026-08-31 17:11:09,308.308 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:11:09,311.311 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-08-31 17:11:10,942.942 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 17:11:10,944.944 INFO    ] Checking for system updates...
[2026-08-31 17:11:10,983.983 INFO    ] 200
[2026-08-31 17:11:10,986.986 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:11:11,038.038 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:11:11,040.040 INFO    ] No update needed
[2026-08-31 17:11:11,043.043 INFO    ] Checking for camera pi updates...
[2026-08-31 17:11:11,076.076 INFO    ] 200
[2026-08-31 17:11:11,079.079 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:11:11,119.119 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:11:11,217.217 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:11:11,220.220 INFO    ] No camera update needed
[2026-08-31 17:11:11,222.222 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:11:11,224.224 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:11:11,230.230 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:11:11,235.235 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:11:13,276.276 INFO    ] ================================================
[2026-08-31 17:11:13,291.291 INFO    ] Launching Daemon at Mon Aug 31 17:11:13 IST 2026
[2026-08-31 17:11:13,302.302 INFO    ] ================================================
[2026-08-31 17:11:13,911.911 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:11:13
[2026-08-31 17:11:14,571.571 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:11:14,873.873 INFO    ] Initializing speech engine...
[2026-08-31 17:11:14,882.882 INFO    ] 2026-08-31 17:11:14
[2026-08-31 17:11:15,156.156 INFO    ] 2026-08-31 17:11:15
[2026-08-31 17:11:15,192.192 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:11:15,446.446 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:11:15,452.452 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:11:16,254.254 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:11:16,258.258 INFO    ] time= 31/08/2026 17:11:16
[2026-08-31 17:11:16,308.308 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:11:16,312.312 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:11:16,393.393 INFO    ] No existing commands found in stream
[2026-08-31 17:11:21,408.408 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:11:21,412.412 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-08-31 17:11:25,784.784 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 17:11:25,787.787 INFO    ] Checking for system updates...
[2026-08-31 17:11:25,826.826 INFO    ] 200
[2026-08-31 17:11:25,829.829 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:11:25,887.887 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:11:25,890.890 INFO    ] No update needed
[2026-08-31 17:11:25,892.892 INFO    ] Checking for camera pi updates...
[2026-08-31 17:11:25,929.929 INFO    ] 200
[2026-08-31 17:11:25,931.931 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:11:25,972.972 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:11:26,054.054 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:11:26,057.057 INFO    ] No camera update needed
[2026-08-31 17:11:26,059.059 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:11:26,061.061 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:11:26,067.067 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:11:26,072.072 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:11:28,112.112 INFO    ] ================================================
[2026-08-31 17:11:28,127.127 INFO    ] Launching Daemon at Mon Aug 31 17:11:28 IST 2026
[2026-08-31 17:11:28,138.138 INFO    ] ================================================
[2026-08-31 17:11:28,785.785 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:11:28
[2026-08-31 17:11:29,371.371 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:11:29,625.625 INFO    ] Initializing speech engine...
[2026-08-31 17:11:29,634.634 INFO    ] 2026-08-31 17:11:29
[2026-08-31 17:11:29,924.924 INFO    ] 2026-08-31 17:11:29
[2026-08-31 17:11:29,948.948 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:11:30,155.155 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:11:30,170.170 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:11:30,331.331 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:11:30,336.336 INFO    ] time= 31/08/2026 17:11:30
[2026-08-31 17:11:30,343.343 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:11:30,387.387 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:11:30,531.531 INFO    ] No existing commands found in stream
[2026-08-31 17:11:35,551.551 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:11:35,554.554 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-08-31 17:11:39,257.257 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 17:11:39,260.260 INFO    ] Checking for system updates...
[2026-08-31 17:11:39,295.295 INFO    ] 200
[2026-08-31 17:11:39,298.298 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:11:39,351.351 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:11:39,353.353 INFO    ] No update needed
[2026-08-31 17:11:39,355.355 INFO    ] Checking for camera pi updates...
[2026-08-31 17:11:39,389.389 INFO    ] 200
[2026-08-31 17:11:39,391.391 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:11:39,432.432 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:11:39,519.519 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:11:39,521.521 INFO    ] No camera update needed
[2026-08-31 17:11:39,523.523 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:11:39,526.526 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:11:39,531.531 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:11:39,536.536 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:11:41,575.575 INFO    ] ================================================
[2026-08-31 17:11:41,590.590 INFO    ] Launching Daemon at Mon Aug 31 17:11:41 IST 2026
[2026-08-31 17:11:41,601.601 INFO    ] ================================================
[2026-08-31 17:11:42,187.187 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:11:42
[2026-08-31 17:11:42,789.789 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:11:43,067.067 INFO    ] Initializing speech engine...
[2026-08-31 17:11:43,076.076 INFO    ] 2026-08-31 17:11:43
[2026-08-31 17:11:43,335.335 INFO    ] 2026-08-31 17:11:43
[2026-08-31 17:11:43,365.365 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:11:43,610.610 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:11:43,621.621 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:11:43,757.757 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:11:43,817.817 INFO    ] time= 31/08/2026 17:11:43
[2026-08-31 17:11:43,881.881 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:11:43,892.892 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:11:44,037.037 INFO    ] No existing commands found in stream
[2026-08-31 17:11:49,051.051 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:11:49,054.054 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-08-31 17:11:52,079.079 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 17:11:52,082.082 INFO    ] Checking for system updates...
[2026-08-31 17:11:52,118.118 INFO    ] 200
[2026-08-31 17:11:52,120.120 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:11:52,179.179 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:11:52,181.181 INFO    ] No update needed
[2026-08-31 17:11:52,184.184 INFO    ] Checking for camera pi updates...
[2026-08-31 17:11:52,217.217 INFO    ] 200
[2026-08-31 17:11:52,220.220 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:11:52,260.260 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:11:52,340.340 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:11:52,342.342 INFO    ] No camera update needed
[2026-08-31 17:11:52,345.345 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:11:52,347.347 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:11:52,353.353 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:11:52,358.358 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:11:54,399.399 INFO    ] ================================================
[2026-08-31 17:11:54,414.414 INFO    ] Launching Daemon at Mon Aug 31 17:11:54 IST 2026
[2026-08-31 17:11:54,424.424 INFO    ] ================================================
[2026-08-31 17:11:55,063.063 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:11:55
[2026-08-31 17:11:55,721.721 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:11:56,019.019 INFO    ] Initializing speech engine...
[2026-08-31 17:11:56,033.033 INFO    ] 2026-08-31 17:11:56
[2026-08-31 17:11:56,312.312 INFO    ] 2026-08-31 17:11:56
[2026-08-31 17:11:56,355.355 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:11:56,605.605 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:11:56,629.629 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:11:56,840.840 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:11:56,847.847 INFO    ] time= 31/08/2026 17:11:56
[2026-08-31 17:11:56,866.866 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:11:56,895.895 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:11:57,002.002 INFO    ] No existing commands found in stream
[2026-08-31 17:12:02,037.037 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:12:02,041.041 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-08-31 17:12:05,543.543 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 17:12:05,546.546 INFO    ] Checking for system updates...
[2026-08-31 17:12:05,586.586 INFO    ] 200
[2026-08-31 17:12:05,590.590 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:12:05,649.649 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:12:05,652.652 INFO    ] No update needed
[2026-08-31 17:12:05,654.654 INFO    ] Checking for camera pi updates...
[2026-08-31 17:12:05,690.690 INFO    ] 200
[2026-08-31 17:12:05,692.692 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:12:05,734.734 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:12:05,814.814 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:12:05,817.817 INFO    ] No camera update needed
[2026-08-31 17:12:05,820.820 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:12:05,823.823 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:12:05,829.829 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:12:05,834.834 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:12:07,875.875 INFO    ] ================================================
[2026-08-31 17:12:07,890.890 INFO    ] Launching Daemon at Mon Aug 31 17:12:07 IST 2026
[2026-08-31 17:12:07,901.901 INFO    ] ================================================
[2026-08-31 17:12:08,479.479 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:12:08
[2026-08-31 17:12:09,077.077 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:12:09,350.350 INFO    ] Initializing speech engine...
[2026-08-31 17:12:09,359.359 INFO    ] 2026-08-31 17:12:09
[2026-08-31 17:12:09,607.607 INFO    ] 2026-08-31 17:12:09
[2026-08-31 17:12:09,642.642 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:12:09,893.893 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:12:09,902.902 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:12:10,051.051 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:12:10,116.116 INFO    ] time= 31/08/2026 17:12:10
[2026-08-31 17:12:10,164.164 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:12:10,170.170 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:12:10,300.300 INFO    ] No existing commands found in stream
[2026-08-31 17:12:15,326.326 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:12:15,329.329 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-08-31 17:12:19,198.198 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 17:12:19,200.200 INFO    ] Checking for system updates...
[2026-08-31 17:12:19,236.236 INFO    ] 200
[2026-08-31 17:12:19,239.239 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:12:19,291.291 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:12:19,294.294 INFO    ] No update needed
[2026-08-31 17:12:19,296.296 INFO    ] Checking for camera pi updates...
[2026-08-31 17:12:19,330.330 INFO    ] 200
[2026-08-31 17:12:19,332.332 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:12:19,377.377 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:12:19,475.475 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:12:19,478.478 INFO    ] No camera update needed
[2026-08-31 17:12:19,480.480 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:12:19,482.482 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:12:19,488.488 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:12:19,493.493 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:12:21,533.533 INFO    ] ================================================
[2026-08-31 17:12:21,548.548 INFO    ] Launching Daemon at Mon Aug 31 17:12:21 IST 2026
[2026-08-31 17:12:21,559.559 INFO    ] ================================================
[2026-08-31 17:12:22,200.200 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:12:22
[2026-08-31 17:12:22,871.871 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:12:23,168.168 INFO    ] Initializing speech engine...
[2026-08-31 17:12:23,176.176 INFO    ] 2026-08-31 17:12:23
[2026-08-31 17:12:23,494.494 INFO    ] 2026-08-31 17:12:23
[2026-08-31 17:12:23,576.576 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:12:23,785.785 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:12:23,795.795 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:12:24,035.035 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:12:24,045.045 INFO    ] time= 31/08/2026 17:12:24
[2026-08-31 17:12:24,053.053 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:12:24,068.068 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:12:24,194.194 INFO    ] No existing commands found in stream
[2026-08-31 17:12:29,230.230 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:12:29,233.233 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-08-31 17:12:30,280.280 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 17:12:30,283.283 INFO    ] Checking for system updates...
[2026-08-31 17:12:30,323.323 INFO    ] 200
[2026-08-31 17:12:30,326.326 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:12:30,381.381 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:12:30,384.384 INFO    ] No update needed
[2026-08-31 17:12:30,386.386 INFO    ] Checking for camera pi updates...
[2026-08-31 17:12:30,421.421 INFO    ] 200
[2026-08-31 17:12:30,423.423 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:12:30,464.464 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:12:30,546.546 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:12:30,549.549 INFO    ] No camera update needed
[2026-08-31 17:12:30,552.552 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:12:30,555.555 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:12:30,561.561 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:12:30,567.567 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:12:32,609.609 INFO    ] ================================================
[2026-08-31 17:12:32,624.624 INFO    ] Launching Daemon at Mon Aug 31 17:12:32 IST 2026
[2026-08-31 17:12:32,635.635 INFO    ] ================================================
[2026-08-31 17:12:33,229.229 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:12:33
[2026-08-31 17:12:33,846.846 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:12:34,127.127 INFO    ] Initializing speech engine...
[2026-08-31 17:12:34,136.136 INFO    ] 2026-08-31 17:12:34
[2026-08-31 17:12:34,387.387 INFO    ] 2026-08-31 17:12:34
[2026-08-31 17:12:34,422.422 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:12:34,620.620 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:12:34,679.679 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:12:34,817.817 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:12:34,870.870 INFO    ] time= 31/08/2026 17:12:34
[2026-08-31 17:12:34,924.924 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:12:34,952.952 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:12:35,085.085 INFO    ] No existing commands found in stream
[2026-08-31 17:12:40,110.110 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:12:40,112.112 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-08-31 17:12:44,323.323 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 17:12:44,326.326 INFO    ] Checking for system updates...
[2026-08-31 17:12:44,364.364 INFO    ] 200
[2026-08-31 17:12:44,367.367 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:12:44,420.420 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:12:44,423.423 INFO    ] No update needed
[2026-08-31 17:12:44,425.425 INFO    ] Checking for camera pi updates...
[2026-08-31 17:12:44,463.463 INFO    ] 200
[2026-08-31 17:12:44,465.465 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:12:44,509.509 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:12:44,597.597 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:12:44,600.600 INFO    ] No camera update needed
[2026-08-31 17:12:44,602.602 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:12:44,605.605 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:12:44,611.611 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:12:44,616.616 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:12:46,658.658 INFO    ] ================================================
[2026-08-31 17:12:46,673.673 INFO    ] Launching Daemon at Mon Aug 31 17:12:46 IST 2026
[2026-08-31 17:12:46,684.684 INFO    ] ================================================
[2026-08-31 17:12:47,262.262 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:12:47
[2026-08-31 17:12:47,861.861 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:12:48,122.122 INFO    ] Initializing speech engine...
[2026-08-31 17:12:48,138.138 INFO    ] 2026-08-31 17:12:48
[2026-08-31 17:12:48,421.421 INFO    ] 2026-08-31 17:12:48
[2026-08-31 17:12:48,459.459 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:12:48,669.669 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:12:48,686.686 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:12:48,904.904 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:12:48,921.921 INFO    ] time= 31/08/2026 17:12:48
[2026-08-31 17:12:48,981.981 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:12:48,994.994 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:12:49,077.077 INFO    ] No existing commands found in stream
[2026-08-31 17:12:54,092.092 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:12:54,095.095 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-08-31 17:12:58,078.078 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 17:12:58,081.081 INFO    ] Checking for system updates...
[2026-08-31 17:12:58,116.116 INFO    ] 200
[2026-08-31 17:12:58,119.119 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:12:58,178.178 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:12:58,180.180 INFO    ] No update needed
[2026-08-31 17:12:58,183.183 INFO    ] Checking for camera pi updates...
[2026-08-31 17:12:58,223.223 INFO    ] 200
[2026-08-31 17:12:58,225.225 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:12:58,265.265 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:12:58,449.449 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:12:58,451.451 INFO    ] No camera update needed
[2026-08-31 17:12:58,453.453 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:12:58,456.456 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:12:58,461.461 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:12:58,466.466 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:13:00,507.507 INFO    ] ================================================
[2026-08-31 17:13:00,522.522 INFO    ] Launching Daemon at Mon Aug 31 17:13:00 IST 2026
[2026-08-31 17:13:00,533.533 INFO    ] ================================================
[2026-08-31 17:13:01,115.115 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:13:01
[2026-08-31 17:13:01,710.710 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:13:01,998.998 INFO    ] Initializing speech engine...
[2026-08-31 17:13:02,003.003 INFO    ] 2026-08-31 17:13:02
[2026-08-31 17:13:02,446.446 INFO    ] 2026-08-31 17:13:02
[2026-08-31 17:13:02,541.541 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:13:02,793.793 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:13:02,822.822 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:13:02,943.943 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:13:02,992.992 INFO    ] time= 31/08/2026 17:13:02
[2026-08-31 17:13:03,005.005 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:13:03,009.009 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:13:03,073.073 INFO    ] No existing commands found in stream
[2026-08-31 17:13:08,083.083 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:13:08,085.085 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-08-31 17:13:09,878.878 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 17:13:09,881.881 INFO    ] Checking for system updates...
[2026-08-31 17:13:09,916.916 INFO    ] 200
[2026-08-31 17:13:09,919.919 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:13:09,971.971 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:13:09,973.973 INFO    ] No update needed
[2026-08-31 17:13:09,976.976 INFO    ] Checking for camera pi updates...
[2026-08-31 17:13:10,010.010 INFO    ] 200
[2026-08-31 17:13:10,012.012 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:13:10,053.053 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:13:10,135.135 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:13:10,138.138 INFO    ] No camera update needed
[2026-08-31 17:13:10,140.140 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:13:10,142.142 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:13:10,147.147 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:13:10,152.152 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:13:12,195.195 INFO    ] ================================================
[2026-08-31 17:13:12,211.211 INFO    ] Launching Daemon at Mon Aug 31 17:13:12 IST 2026
[2026-08-31 17:13:12,221.221 INFO    ] ================================================
[2026-08-31 17:13:12,801.801 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:13:12
[2026-08-31 17:13:13,397.397 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:13:13,669.669 INFO    ] Initializing speech engine...
[2026-08-31 17:13:13,679.679 INFO    ] 2026-08-31 17:13:13
[2026-08-31 17:13:13,928.928 INFO    ] 2026-08-31 17:13:13
[2026-08-31 17:13:13,964.964 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:13:14,221.221 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:13:14,225.225 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:13:14,443.443 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:13:14,483.483 INFO    ] time= 31/08/2026 17:13:14
[2026-08-31 17:13:14,501.501 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:13:14,509.509 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:13:14,637.637 INFO    ] No existing commands found in stream
[2026-08-31 17:13:19,649.649 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:13:19,652.652 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-08-31 17:13:20,864.864 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 17:13:20,867.867 INFO    ] Checking for system updates...
[2026-08-31 17:13:20,903.903 INFO    ] 200
[2026-08-31 17:13:20,905.905 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:13:20,958.958 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:13:20,961.961 INFO    ] No update needed
[2026-08-31 17:13:20,963.963 INFO    ] Checking for camera pi updates...
[2026-08-31 17:13:20,996.996 INFO    ] 200
[2026-08-31 17:13:20,999.999 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:13:21,039.039 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:13:21,145.145 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:13:21,148.148 INFO    ] No camera update needed
[2026-08-31 17:13:21,150.150 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:13:21,153.153 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:13:21,158.158 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:13:21,163.163 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:13:23,203.203 INFO    ] ================================================
[2026-08-31 17:13:23,219.219 INFO    ] Launching Daemon at Mon Aug 31 17:13:23 IST 2026
[2026-08-31 17:13:23,230.230 INFO    ] ================================================
[2026-08-31 17:13:23,797.797 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:13:23
[2026-08-31 17:13:24,381.381 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:13:24,639.639 INFO    ] Initializing speech engine...
[2026-08-31 17:13:24,658.658 INFO    ] 2026-08-31 17:13:24
[2026-08-31 17:13:24,908.908 INFO    ] 2026-08-31 17:13:24
[2026-08-31 17:13:24,943.943 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:13:25,129.129 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:13:25,147.147 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:13:25,344.344 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:13:25,381.381 INFO    ] time= 31/08/2026 17:13:25
[2026-08-31 17:13:25,435.435 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:13:25,480.480 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:13:25,630.630 INFO    ] No existing commands found in stream
[2026-08-31 17:13:30,643.643 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:13:30,646.646 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-08-31 17:13:33,568.568 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 17:13:33,571.571 INFO    ] Checking for system updates...
[2026-08-31 17:13:33,611.611 INFO    ] 200
[2026-08-31 17:13:33,614.614 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:13:33,666.666 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:13:33,669.669 INFO    ] No update needed
[2026-08-31 17:13:33,671.671 INFO    ] Checking for camera pi updates...
[2026-08-31 17:13:33,705.705 INFO    ] 200
[2026-08-31 17:13:33,707.707 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:13:33,753.753 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:13:33,852.852 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:13:33,854.854 INFO    ] No camera update needed
[2026-08-31 17:13:33,857.857 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:13:33,859.859 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:13:33,864.864 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:13:33,869.869 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:13:35,910.910 INFO    ] ================================================
[2026-08-31 17:13:35,926.926 INFO    ] Launching Daemon at Mon Aug 31 17:13:35 IST 2026
[2026-08-31 17:13:35,937.937 INFO    ] ================================================
[2026-08-31 17:13:36,521.521 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:13:36
[2026-08-31 17:13:37,123.123 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:13:37,397.397 INFO    ] Initializing speech engine...
[2026-08-31 17:13:37,406.406 INFO    ] 2026-08-31 17:13:37
[2026-08-31 17:13:37,668.668 INFO    ] 2026-08-31 17:13:37
[2026-08-31 17:13:37,722.722 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:13:37,944.944 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:13:37,953.953 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:13:38,087.087 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:13:38,147.147 INFO    ] time= 31/08/2026 17:13:38
[2026-08-31 17:13:38,214.214 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:13:38,220.220 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:13:38,362.362 INFO    ] No existing commands found in stream
[2026-08-31 17:13:43,378.378 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:13:43,380.380 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-08-31 17:13:44,358.358 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 17:13:44,361.361 INFO    ] Checking for system updates...
[2026-08-31 17:13:44,401.401 INFO    ] 200
[2026-08-31 17:13:44,403.403 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:13:44,456.456 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:13:44,458.458 INFO    ] No update needed
[2026-08-31 17:13:44,461.461 INFO    ] Checking for camera pi updates...
[2026-08-31 17:13:44,498.498 INFO    ] 200
[2026-08-31 17:13:44,500.500 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:13:44,546.546 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:13:44,641.641 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:13:44,643.643 INFO    ] No camera update needed
[2026-08-31 17:13:44,645.645 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:13:44,648.648 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:13:44,653.653 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:13:44,658.658 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:13:46,700.700 INFO    ] ================================================
[2026-08-31 17:13:46,717.717 INFO    ] Launching Daemon at Mon Aug 31 17:13:46 IST 2026
[2026-08-31 17:13:46,728.728 INFO    ] ================================================
[2026-08-31 17:13:47,307.307 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:13:47
[2026-08-31 17:13:47,961.961 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:13:48,264.264 INFO    ] Initializing speech engine...
[2026-08-31 17:13:48,271.271 INFO    ] 2026-08-31 17:13:48
[2026-08-31 17:13:48,562.562 INFO    ] 2026-08-31 17:13:48
[2026-08-31 17:13:48,607.607 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:13:48,835.835 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:13:48,856.856 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:13:49,044.044 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:13:49,096.096 INFO    ] time= 31/08/2026 17:13:49
[2026-08-31 17:13:49,103.103 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:13:49,122.122 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:13:49,249.249 INFO    ] No existing commands found in stream
[2026-08-31 17:13:54,289.289 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:13:54,292.292 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-08-31 17:13:57,859.859 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 17:13:57,862.862 INFO    ] Checking for system updates...
[2026-08-31 17:13:57,899.899 INFO    ] 200
[2026-08-31 17:13:57,902.902 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:13:57,955.955 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:13:57,958.958 INFO    ] No update needed
[2026-08-31 17:13:57,961.961 INFO    ] Checking for camera pi updates...
[2026-08-31 17:13:57,996.996 INFO    ] 200
[2026-08-31 17:13:57,999.999 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:13:58,040.040 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:13:58,121.121 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:13:58,123.123 INFO    ] No camera update needed
[2026-08-31 17:13:58,126.126 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:13:58,129.129 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:13:58,135.135 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:13:58,141.141 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:14:00,181.181 INFO    ] ================================================
[2026-08-31 17:14:00,197.197 INFO    ] Launching Daemon at Mon Aug 31 17:14:00 IST 2026
[2026-08-31 17:14:00,208.208 INFO    ] ================================================
[2026-08-31 17:14:00,781.781 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:14:00
[2026-08-31 17:14:01,527.527 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:14:01,832.832 INFO    ] Initializing speech engine...
[2026-08-31 17:14:01,856.856 INFO    ] 2026-08-31 17:14:01
[2026-08-31 17:14:02,154.154 INFO    ] 2026-08-31 17:14:02
[2026-08-31 17:14:02,219.219 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:14:02,455.455 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:14:02,469.469 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:14:02,619.619 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:14:02,632.632 INFO    ] time= 31/08/2026 17:14:02
[2026-08-31 17:14:02,686.686 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:14:02,755.755 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:14:02,917.917 INFO    ] No existing commands found in stream
[2026-08-31 17:14:07,944.944 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:14:07,947.947 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-08-31 17:14:09,117.117 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 17:14:09,120.120 INFO    ] Checking for system updates...
[2026-08-31 17:14:09,159.159 INFO    ] 200
[2026-08-31 17:14:09,161.161 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:14:09,215.215 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:14:09,218.218 INFO    ] No update needed
[2026-08-31 17:14:09,220.220 INFO    ] Checking for camera pi updates...
[2026-08-31 17:14:09,256.256 INFO    ] 200
[2026-08-31 17:14:09,259.259 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:14:09,303.303 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:14:09,379.379 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:14:09,382.382 INFO    ] No camera update needed
[2026-08-31 17:14:09,384.384 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:14:09,386.386 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:14:09,392.392 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:14:09,396.396 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:14:11,436.436 INFO    ] ================================================
[2026-08-31 17:14:11,451.451 INFO    ] Launching Daemon at Mon Aug 31 17:14:11 IST 2026
[2026-08-31 17:14:11,462.462 INFO    ] ================================================
[2026-08-31 17:14:12,028.028 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:14:12
[2026-08-31 17:14:12,610.610 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:14:12,879.879 INFO    ] Initializing speech engine...
[2026-08-31 17:14:12,887.887 INFO    ] 2026-08-31 17:14:12
[2026-08-31 17:14:13,134.134 INFO    ] 2026-08-31 17:14:13
[2026-08-31 17:14:13,169.169 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:14:13,429.429 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:14:13,438.438 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:14:13,649.649 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:14:13,703.703 INFO    ] time= 31/08/2026 17:14:13
[2026-08-31 17:14:13,709.709 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:14:13,723.723 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:14:13,835.835 INFO    ] No existing commands found in stream
[2026-08-31 17:14:18,865.865 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:14:18,868.868 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-08-31 17:14:20,053.053 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 17:14:20,055.055 INFO    ] Checking for system updates...
[2026-08-31 17:14:20,090.090 INFO    ] 200
[2026-08-31 17:14:20,092.092 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:14:20,144.144 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:14:20,147.147 INFO    ] No update needed
[2026-08-31 17:14:20,149.149 INFO    ] Checking for camera pi updates...
[2026-08-31 17:14:20,182.182 INFO    ] 200
[2026-08-31 17:14:20,185.185 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:14:20,225.225 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:14:20,306.306 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:14:20,309.309 INFO    ] No camera update needed
[2026-08-31 17:14:20,311.311 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:14:20,314.314 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:14:20,319.319 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:14:20,324.324 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:14:22,364.364 INFO    ] ================================================
[2026-08-31 17:14:22,379.379 INFO    ] Launching Daemon at Mon Aug 31 17:14:22 IST 2026
[2026-08-31 17:14:22,390.390 INFO    ] ================================================
[2026-08-31 17:14:22,954.954 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:14:22
[2026-08-31 17:14:23,535.535 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:14:23,793.793 INFO    ] Initializing speech engine...
[2026-08-31 17:14:23,818.818 INFO    ] 2026-08-31 17:14:23
[2026-08-31 17:14:24,090.090 INFO    ] 2026-08-31 17:14:24
[2026-08-31 17:14:24,125.125 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:14:24,319.319 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:14:24,332.332 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:14:24,492.492 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:14:24,501.501 INFO    ] time= 31/08/2026 17:14:24
[2026-08-31 17:14:24,505.505 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:14:24,511.511 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:14:24,583.583 INFO    ] No existing commands found in stream
[2026-08-31 17:14:29,596.596 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:14:29,599.599 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-08-31 17:14:32,797.797 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 17:14:32,800.800 INFO    ] Checking for system updates...
[2026-08-31 17:14:32,835.835 INFO    ] 200
[2026-08-31 17:14:32,838.838 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:14:32,893.893 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:14:32,896.896 INFO    ] No update needed
[2026-08-31 17:14:32,899.899 INFO    ] Checking for camera pi updates...
[2026-08-31 17:14:32,936.936 INFO    ] 200
[2026-08-31 17:14:32,938.938 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:14:32,978.978 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:14:33,102.102 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:14:33,105.105 INFO    ] No camera update needed
[2026-08-31 17:14:33,107.107 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:14:33,109.109 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:14:33,115.115 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:14:33,119.119 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:14:35,160.160 INFO    ] ================================================
[2026-08-31 17:14:35,175.175 INFO    ] Launching Daemon at Mon Aug 31 17:14:35 IST 2026
[2026-08-31 17:14:35,185.185 INFO    ] ================================================
[2026-08-31 17:14:35,753.753 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:14:35
[2026-08-31 17:14:36,338.338 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:14:36,607.607 INFO    ] Initializing speech engine...
[2026-08-31 17:14:36,616.616 INFO    ] 2026-08-31 17:14:36
[2026-08-31 17:14:36,866.866 INFO    ] 2026-08-31 17:14:36
[2026-08-31 17:14:36,901.901 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:14:37,078.078 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:14:37,090.090 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:14:37,241.241 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:14:37,248.248 INFO    ] time= 31/08/2026 17:14:37
[2026-08-31 17:14:37,294.294 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:14:37,318.318 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:14:37,447.447 INFO    ] No existing commands found in stream
[2026-08-31 17:14:42,458.458 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:14:42,461.461 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-08-31 17:14:46,655.655 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 17:14:46,658.658 INFO    ] Checking for system updates...
[2026-08-31 17:14:46,693.693 INFO    ] 200
[2026-08-31 17:14:46,695.695 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:14:46,754.754 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:14:46,757.757 INFO    ] No update needed
[2026-08-31 17:14:46,759.759 INFO    ] Checking for camera pi updates...
[2026-08-31 17:14:46,793.793 INFO    ] 200
[2026-08-31 17:14:46,795.795 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:14:46,841.841 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:14:46,924.924 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:14:46,926.926 INFO    ] No camera update needed
[2026-08-31 17:14:46,929.929 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:14:46,931.931 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:14:46,936.936 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:14:46,941.941 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:14:48,984.984 INFO    ] ================================================
[2026-08-31 17:14:49,000.000 INFO    ] Launching Daemon at Mon Aug 31 17:14:48 IST 2026
[2026-08-31 17:14:49,011.011 INFO    ] ================================================
[2026-08-31 17:14:49,652.652 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:14:49
[2026-08-31 17:14:50,236.236 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:14:50,508.508 INFO    ] Initializing speech engine...
[2026-08-31 17:14:50,515.515 INFO    ] 2026-08-31 17:14:50
[2026-08-31 17:14:50,767.767 INFO    ] 2026-08-31 17:14:50
[2026-08-31 17:14:50,802.802 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:14:51,065.065 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:14:51,070.070 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:14:51,204.204 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:14:51,241.241 INFO    ] time= 31/08/2026 17:14:51
[2026-08-31 17:14:51,301.301 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:14:51,342.342 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:14:51,496.496 INFO    ] No existing commands found in stream
[2026-08-31 17:14:56,515.515 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:14:56,518.518 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-08-31 17:14:57,128.128 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 17:14:57,131.131 INFO    ] Checking for system updates...
[2026-08-31 17:14:57,166.166 INFO    ] 200
[2026-08-31 17:14:57,168.168 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:14:57,220.220 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:14:57,223.223 INFO    ] No update needed
[2026-08-31 17:14:57,225.225 INFO    ] Checking for camera pi updates...
[2026-08-31 17:14:57,259.259 INFO    ] 200
[2026-08-31 17:14:57,261.261 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:14:57,309.309 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:14:57,393.393 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:14:57,395.395 INFO    ] No camera update needed
[2026-08-31 17:14:57,398.398 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:14:57,400.400 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:14:57,405.405 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:14:57,410.410 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:14:59,451.451 INFO    ] ================================================
[2026-08-31 17:14:59,466.466 INFO    ] Launching Daemon at Mon Aug 31 17:14:59 IST 2026
[2026-08-31 17:14:59,476.476 INFO    ] ================================================
[2026-08-31 17:15:00,093.093 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:15:00
[2026-08-31 17:15:00,749.749 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:15:01,049.049 INFO    ] Initializing speech engine...
[2026-08-31 17:15:01,061.061 INFO    ] 2026-08-31 17:15:01
[2026-08-31 17:15:01,339.339 INFO    ] 2026-08-31 17:15:01
[2026-08-31 17:15:01,407.407 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:15:01,748.748 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:15:01,774.774 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:15:01,986.986 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:15:02,020.020 INFO    ] time= 31/08/2026 17:15:02
[2026-08-31 17:15:02,024.024 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:15:02,027.027 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:15:02,117.117 INFO    ] No existing commands found in stream
[2026-08-31 17:15:07,127.127 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:15:07,130.130 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-08-31 17:15:09,541.541 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 17:15:09,544.544 INFO    ] Checking for system updates...
[2026-08-31 17:15:09,579.579 INFO    ] 200
[2026-08-31 17:15:09,581.581 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:15:09,636.636 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:15:09,639.639 INFO    ] No update needed
[2026-08-31 17:15:09,642.642 INFO    ] Checking for camera pi updates...
[2026-08-31 17:15:09,683.683 INFO    ] 200
[2026-08-31 17:15:09,685.685 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:15:09,735.735 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:15:09,816.816 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:15:09,818.818 INFO    ] No camera update needed
[2026-08-31 17:15:09,821.821 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:15:09,823.823 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:15:09,828.828 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:15:09,833.833 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:15:11,873.873 INFO    ] ================================================
[2026-08-31 17:15:11,888.888 INFO    ] Launching Daemon at Mon Aug 31 17:15:11 IST 2026
[2026-08-31 17:15:11,899.899 INFO    ] ================================================
[2026-08-31 17:15:12,482.482 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:15:12
[2026-08-31 17:15:13,080.080 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:15:13,340.340 INFO    ] Initializing speech engine...
[2026-08-31 17:15:13,349.349 INFO    ] 2026-08-31 17:15:13
[2026-08-31 17:15:13,644.644 INFO    ] 2026-08-31 17:15:13
[2026-08-31 17:15:13,679.679 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:15:13,831.831 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:15:13,844.844 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:15:14,054.054 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:15:14,065.065 INFO    ] time= 31/08/2026 17:15:14
[2026-08-31 17:15:14,070.070 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:15:14,076.076 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:15:14,151.151 INFO    ] No existing commands found in stream
[2026-08-31 17:15:19,163.163 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:15:19,166.166 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-08-31 17:15:19,729.729 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 17:15:19,731.731 INFO    ] Checking for system updates...
[2026-08-31 17:15:19,771.771 INFO    ] 200
[2026-08-31 17:15:19,773.773 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:15:19,831.831 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:15:19,834.834 INFO    ] No update needed
[2026-08-31 17:15:19,836.836 INFO    ] Checking for camera pi updates...
[2026-08-31 17:15:19,869.869 INFO    ] 200
[2026-08-31 17:15:19,872.872 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:15:19,912.912 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:15:19,995.995 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:15:19,997.997 INFO    ] No camera update needed
[2026-08-31 17:15:20,000.000 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:15:20,002.002 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:15:20,007.007 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:15:20,012.012 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:15:22,052.052 INFO    ] ================================================
[2026-08-31 17:15:22,066.066 INFO    ] Launching Daemon at Mon Aug 31 17:15:22 IST 2026
[2026-08-31 17:15:22,077.077 INFO    ] ================================================
[2026-08-31 17:15:22,718.718 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:15:22
[2026-08-31 17:15:23,378.378 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:15:23,678.678 INFO    ] Initializing speech engine...
[2026-08-31 17:15:23,687.687 INFO    ] 2026-08-31 17:15:23
[2026-08-31 17:15:23,964.964 INFO    ] 2026-08-31 17:15:23
[2026-08-31 17:15:24,020.020 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:15:24,275.275 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:15:24,280.280 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:15:24,494.494 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:15:24,523.523 INFO    ] time= 31/08/2026 17:15:24
[2026-08-31 17:15:24,538.538 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:15:24,547.547 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:15:24,663.663 INFO    ] No existing commands found in stream
[2026-08-31 17:15:29,688.688 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:15:29,691.691 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-08-31 17:15:32,365.365 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 17:15:32,368.368 INFO    ] Checking for system updates...
[2026-08-31 17:15:32,413.413 INFO    ] 200
[2026-08-31 17:15:32,415.415 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:15:32,472.472 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:15:32,474.474 INFO    ] No update needed
[2026-08-31 17:15:32,477.477 INFO    ] Checking for camera pi updates...
[2026-08-31 17:15:32,518.518 INFO    ] 200
[2026-08-31 17:15:32,521.521 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:15:32,576.576 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:15:32,709.709 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:15:32,711.711 INFO    ] No camera update needed
[2026-08-31 17:15:32,714.714 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:15:32,717.717 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:15:32,723.723 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:15:32,728.728 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:15:34,768.768 INFO    ] ================================================
[2026-08-31 17:15:34,788.788 INFO    ] Launching Daemon at Mon Aug 31 17:15:34 IST 2026
[2026-08-31 17:15:34,798.798 INFO    ] ================================================
[2026-08-31 17:15:35,365.365 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:15:35
[2026-08-31 17:15:35,948.948 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:15:36,200.200 INFO    ] Initializing speech engine...
[2026-08-31 17:15:36,222.222 INFO    ] 2026-08-31 17:15:36
[2026-08-31 17:15:36,478.478 INFO    ] 2026-08-31 17:15:36
[2026-08-31 17:15:36,514.514 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:15:36,752.752 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:15:36,774.774 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:15:36,919.919 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:15:36,988.988 INFO    ] time= 31/08/2026 17:15:36
[2026-08-31 17:15:37,050.050 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:15:37,056.056 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:15:37,168.168 INFO    ] No existing commands found in stream
[2026-08-31 17:15:42,200.200 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:15:42,202.202 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-08-31 17:15:44,756.756 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 17:15:44,759.759 INFO    ] Checking for system updates...
[2026-08-31 17:15:44,806.806 INFO    ] 200
[2026-08-31 17:15:44,808.808 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:15:44,881.881 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:15:44,883.883 INFO    ] No update needed
[2026-08-31 17:15:44,885.885 INFO    ] Checking for camera pi updates...
[2026-08-31 17:15:44,919.919 INFO    ] 200
[2026-08-31 17:15:44,921.921 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:15:44,962.962 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:15:45,042.042 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:15:45,044.044 INFO    ] No camera update needed
[2026-08-31 17:15:45,046.046 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:15:45,049.049 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:15:45,054.054 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:15:45,059.059 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:15:47,103.103 INFO    ] ================================================
[2026-08-31 17:15:47,118.118 INFO    ] Launching Daemon at Mon Aug 31 17:15:47 IST 2026
[2026-08-31 17:15:47,130.130 INFO    ] ================================================
[2026-08-31 17:15:47,781.781 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:15:47
[2026-08-31 17:15:48,455.455 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:15:48,765.765 INFO    ] Initializing speech engine...
[2026-08-31 17:15:48,776.776 INFO    ] 2026-08-31 17:15:48
[2026-08-31 17:15:49,085.085 INFO    ] 2026-08-31 17:15:49
[2026-08-31 17:15:49,173.173 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:15:49,385.385 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:15:49,393.393 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:15:49,585.585 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:15:49,604.604 INFO    ] time= 31/08/2026 17:15:49
[2026-08-31 17:15:49,632.632 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:15:49,643.643 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:15:49,748.748 INFO    ] No existing commands found in stream
[2026-08-31 17:15:54,778.778 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:15:54,781.781 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-08-31 17:15:55,418.418 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 17:15:55,421.421 INFO    ] Checking for system updates...
[2026-08-31 17:15:55,459.459 INFO    ] 200
[2026-08-31 17:15:55,462.462 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:15:55,523.523 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:15:55,526.526 INFO    ] No update needed
[2026-08-31 17:15:55,528.528 INFO    ] Checking for camera pi updates...
[2026-08-31 17:15:55,562.562 INFO    ] 200
[2026-08-31 17:15:55,564.564 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:15:55,605.605 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:15:55,669.669 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:15:55,671.671 INFO    ] No camera update needed
[2026-08-31 17:15:55,673.673 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:15:55,676.676 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:15:55,681.681 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:15:55,686.686 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:15:57,725.725 INFO    ] ================================================
[2026-08-31 17:15:57,741.741 INFO    ] Launching Daemon at Mon Aug 31 17:15:57 IST 2026
[2026-08-31 17:15:57,752.752 INFO    ] ================================================
[2026-08-31 17:15:58,334.334 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:15:58
[2026-08-31 17:15:58,933.933 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:15:59,206.206 INFO    ] Initializing speech engine...
[2026-08-31 17:15:59,216.216 INFO    ] 2026-08-31 17:15:59
[2026-08-31 17:15:59,463.463 INFO    ] 2026-08-31 17:15:59
[2026-08-31 17:15:59,498.498 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:15:59,750.750 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:15:59,759.759 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:15:59,891.891 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:15:59,950.950 INFO    ] time= 31/08/2026 17:15:59
[2026-08-31 17:16:00,009.009 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:16:00,036.036 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:16:00,159.159 INFO    ] No existing commands found in stream
[2026-08-31 17:16:05,189.189 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:16:05,192.192 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-08-31 17:16:07,799.799 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 17:16:07,801.801 INFO    ] Checking for system updates...
[2026-08-31 17:16:07,838.838 INFO    ] 200
[2026-08-31 17:16:07,841.841 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:16:07,894.894 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:16:07,897.897 INFO    ] No update needed
[2026-08-31 17:16:07,899.899 INFO    ] Checking for camera pi updates...
[2026-08-31 17:16:07,937.937 INFO    ] 200
[2026-08-31 17:16:07,940.940 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:16:07,985.985 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:16:08,078.078 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:16:08,080.080 INFO    ] No camera update needed
[2026-08-31 17:16:08,083.083 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:16:08,085.085 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:16:08,090.090 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:16:08,095.095 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:16:10,137.137 INFO    ] ================================================
[2026-08-31 17:16:10,153.153 INFO    ] Launching Daemon at Mon Aug 31 17:16:10 IST 2026
[2026-08-31 17:16:10,165.165 INFO    ] ================================================
[2026-08-31 17:16:10,731.731 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:16:10
[2026-08-31 17:16:11,312.312 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:16:11,578.578 INFO    ] Initializing speech engine...
[2026-08-31 17:16:11,587.587 INFO    ] 2026-08-31 17:16:11
[2026-08-31 17:16:11,833.833 INFO    ] 2026-08-31 17:16:11
[2026-08-31 17:16:11,875.875 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:16:12,065.065 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:16:12,111.111 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:16:12,273.273 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:16:12,348.348 INFO    ] time= 31/08/2026 17:16:12
[2026-08-31 17:16:12,392.392 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:16:12,409.409 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:16:12,517.517 INFO    ] No existing commands found in stream
[2026-08-31 17:16:17,541.541 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:16:17,544.544 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-08-31 17:16:21,650.650 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 17:16:21,652.652 INFO    ] Checking for system updates...
[2026-08-31 17:16:21,692.692 INFO    ] 200
[2026-08-31 17:16:21,695.695 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:16:21,747.747 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:16:21,749.749 INFO    ] No update needed
[2026-08-31 17:16:21,752.752 INFO    ] Checking for camera pi updates...
[2026-08-31 17:16:21,786.786 INFO    ] 200
[2026-08-31 17:16:21,788.788 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:16:21,835.835 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:16:21,927.927 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:16:21,930.930 INFO    ] No camera update needed
[2026-08-31 17:16:21,932.932 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:16:21,934.934 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:16:21,940.940 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:16:21,944.944 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:16:23,986.986 INFO    ] ================================================
[2026-08-31 17:16:24,001.001 INFO    ] Launching Daemon at Mon Aug 31 17:16:23 IST 2026
[2026-08-31 17:16:24,013.013 INFO    ] ================================================
[2026-08-31 17:16:24,585.585 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:16:24
[2026-08-31 17:16:25,204.204 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:16:25,517.517 INFO    ] Initializing speech engine...
[2026-08-31 17:16:25,529.529 INFO    ] 2026-08-31 17:16:25
[2026-08-31 17:16:25,817.817 INFO    ] 2026-08-31 17:16:25
[2026-08-31 17:16:25,865.865 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:16:26,121.121 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:16:26,127.127 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:16:26,313.313 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:16:26,369.369 INFO    ] time= 31/08/2026 17:16:26
[2026-08-31 17:16:26,390.390 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:16:26,400.400 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:16:26,533.533 INFO    ] No existing commands found in stream
[2026-08-31 17:16:31,560.560 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:16:31,563.563 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-08-31 17:16:35,541.541 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 17:16:35,544.544 INFO    ] Checking for system updates...
[2026-08-31 17:16:35,586.586 INFO    ] 200
[2026-08-31 17:16:35,590.590 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:16:35,644.644 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:16:35,646.646 INFO    ] No update needed
[2026-08-31 17:16:35,649.649 INFO    ] Checking for camera pi updates...
[2026-08-31 17:16:35,684.684 INFO    ] 200
[2026-08-31 17:16:35,687.687 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:16:35,729.729 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:16:35,806.806 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:16:35,809.809 INFO    ] No camera update needed
[2026-08-31 17:16:35,812.812 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:16:35,815.815 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:16:35,821.821 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:16:35,827.827 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:16:37,871.871 INFO    ] ================================================
[2026-08-31 17:16:37,887.887 INFO    ] Launching Daemon at Mon Aug 31 17:16:37 IST 2026
[2026-08-31 17:16:37,898.898 INFO    ] ================================================
[2026-08-31 17:16:38,572.572 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:16:38
[2026-08-31 17:16:39,269.269 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:16:39,581.581 INFO    ] Initializing speech engine...
[2026-08-31 17:16:39,593.593 INFO    ] 2026-08-31 17:16:39
[2026-08-31 17:16:39,873.873 INFO    ] 2026-08-31 17:16:39
[2026-08-31 17:16:39,936.936 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:16:40,207.207 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:16:40,212.212 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:16:40,413.413 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:16:40,467.467 INFO    ] time= 31/08/2026 17:16:40
[2026-08-31 17:16:40,494.494 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:16:40,511.511 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:16:40,637.637 INFO    ] No existing commands found in stream
[2026-08-31 17:16:45,668.668 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:16:45,671.671 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-08-31 17:16:48,323.323 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 17:16:48,326.326 INFO    ] Checking for system updates...
[2026-08-31 17:16:48,369.369 INFO    ] 200
[2026-08-31 17:16:48,372.372 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:16:48,434.434 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:16:48,436.436 INFO    ] No update needed
[2026-08-31 17:16:48,440.440 INFO    ] Checking for camera pi updates...
[2026-08-31 17:16:48,479.479 INFO    ] 200
[2026-08-31 17:16:48,482.482 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:16:48,528.528 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:16:48,626.626 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:16:48,629.629 INFO    ] No camera update needed
[2026-08-31 17:16:48,632.632 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:16:48,634.634 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:16:48,641.641 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:16:48,647.647 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:16:50,689.689 INFO    ] ================================================
[2026-08-31 17:16:50,704.704 INFO    ] Launching Daemon at Mon Aug 31 17:16:50 IST 2026
[2026-08-31 17:16:50,715.715 INFO    ] ================================================
[2026-08-31 17:16:51,282.282 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:16:51
[2026-08-31 17:16:51,865.865 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:16:52,139.139 INFO    ] Initializing speech engine...
[2026-08-31 17:16:52,159.159 INFO    ] 2026-08-31 17:16:52
[2026-08-31 17:16:52,428.428 INFO    ] 2026-08-31 17:16:52
[2026-08-31 17:16:52,465.465 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:16:52,677.677 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:16:52,698.698 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:16:52,809.809 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:16:52,830.830 INFO    ] time= 31/08/2026 17:16:52
[2026-08-31 17:16:52,852.852 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:16:52,860.860 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:16:52,939.939 INFO    ] No existing commands found in stream
[2026-08-31 17:16:57,951.951 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:16:57,954.954 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-08-31 17:16:59,677.677 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 17:16:59,680.680 INFO    ] Checking for system updates...
[2026-08-31 17:16:59,715.715 INFO    ] 200
[2026-08-31 17:16:59,718.718 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:16:59,772.772 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:16:59,774.774 INFO    ] No update needed
[2026-08-31 17:16:59,776.776 INFO    ] Checking for camera pi updates...
[2026-08-31 17:16:59,814.814 INFO    ] 200
[2026-08-31 17:16:59,816.816 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:16:59,862.862 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:16:59,948.948 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:16:59,951.951 INFO    ] No camera update needed
[2026-08-31 17:16:59,953.953 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:16:59,955.955 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:16:59,960.960 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:16:59,965.965 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:17:02,011.011 INFO    ] ================================================
[2026-08-31 17:17:02,031.031 INFO    ] Launching Daemon at Mon Aug 31 17:17:02 IST 2026
[2026-08-31 17:17:02,045.045 INFO    ] ================================================
[2026-08-31 17:17:02,801.801 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:17:02
[2026-08-31 17:17:03,502.502 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:17:03,819.819 INFO    ] Initializing speech engine...
[2026-08-31 17:17:03,827.827 INFO    ] 2026-08-31 17:17:03
[2026-08-31 17:17:04,136.136 INFO    ] 2026-08-31 17:17:04
[2026-08-31 17:17:04,223.223 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:17:04,378.378 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:17:04,390.390 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:17:04,612.612 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:17:04,645.645 INFO    ] time= 31/08/2026 17:17:04
[2026-08-31 17:17:04,664.664 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:17:04,694.694 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:17:04,799.799 INFO    ] No existing commands found in stream
[2026-08-31 17:17:09,813.813 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:17:09,816.816 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-08-31 17:17:10,855.855 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 17:17:10,858.858 INFO    ] Checking for system updates...
[2026-08-31 17:17:10,895.895 INFO    ] 200
[2026-08-31 17:17:10,898.898 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:17:10,952.952 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:17:10,955.955 INFO    ] No update needed
[2026-08-31 17:17:10,958.958 INFO    ] Checking for camera pi updates...
[2026-08-31 17:17:10,993.993 INFO    ] 200
[2026-08-31 17:17:10,996.996 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:17:11,039.039 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:17:11,220.220 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:17:11,222.222 INFO    ] No camera update needed
[2026-08-31 17:17:11,225.225 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:17:11,228.228 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:17:11,234.234 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:17:11,240.240 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:17:13,281.281 INFO    ] ================================================
[2026-08-31 17:17:13,297.297 INFO    ] Launching Daemon at Mon Aug 31 17:17:13 IST 2026
[2026-08-31 17:17:13,309.309 INFO    ] ================================================
[2026-08-31 17:17:13,889.889 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:17:13
[2026-08-31 17:17:14,485.485 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:17:14,762.762 INFO    ] Initializing speech engine...
[2026-08-31 17:17:14,771.771 INFO    ] 2026-08-31 17:17:14
[2026-08-31 17:17:15,031.031 INFO    ] 2026-08-31 17:17:15
[2026-08-31 17:17:15,061.061 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:17:15,307.307 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:17:15,316.316 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:17:15,450.450 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:17:15,494.494 INFO    ] time= 31/08/2026 17:17:15
[2026-08-31 17:17:15,554.554 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:17:15,583.583 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:17:15,728.728 INFO    ] No existing commands found in stream
[2026-08-31 17:17:20,743.743 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:17:20,745.745 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-08-31 17:17:22,346.346 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 17:17:22,349.349 INFO    ] Checking for system updates...
[2026-08-31 17:17:22,392.392 INFO    ] 200
[2026-08-31 17:17:22,394.394 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:17:22,454.454 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:17:22,457.457 INFO    ] No update needed
[2026-08-31 17:17:22,460.460 INFO    ] Checking for camera pi updates...
[2026-08-31 17:17:22,493.493 INFO    ] 200
[2026-08-31 17:17:22,496.496 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:17:22,537.537 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:17:22,618.618 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:17:22,621.621 INFO    ] No camera update needed
[2026-08-31 17:17:22,623.623 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:17:22,625.625 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:17:22,631.631 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:17:22,636.636 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:17:24,675.675 INFO    ] ================================================
[2026-08-31 17:17:24,691.691 INFO    ] Launching Daemon at Mon Aug 31 17:17:24 IST 2026
[2026-08-31 17:17:24,703.703 INFO    ] ================================================
[2026-08-31 17:17:25,273.273 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:17:25
[2026-08-31 17:17:25,858.858 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:17:26,129.129 INFO    ] Initializing speech engine...
[2026-08-31 17:17:26,135.135 INFO    ] 2026-08-31 17:17:26
[2026-08-31 17:17:26,381.381 INFO    ] 2026-08-31 17:17:26
[2026-08-31 17:17:26,416.416 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:17:26,671.671 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:17:26,677.677 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:17:26,807.807 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:17:26,855.855 INFO    ] time= 31/08/2026 17:17:26
[2026-08-31 17:17:26,919.919 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:17:26,942.942 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:17:27,086.086 INFO    ] No existing commands found in stream
[2026-08-31 17:17:32,099.099 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:17:32,102.102 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-08-31 17:17:35,006.006 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 17:17:35,009.009 INFO    ] Checking for system updates...
[2026-08-31 17:17:35,049.049 INFO    ] 200
[2026-08-31 17:17:35,051.051 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:17:35,104.104 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:17:35,106.106 INFO    ] No update needed
[2026-08-31 17:17:35,109.109 INFO    ] Checking for camera pi updates...
[2026-08-31 17:17:35,143.143 INFO    ] 200
[2026-08-31 17:17:35,146.146 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:17:35,186.186 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:17:35,263.263 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:17:35,266.266 INFO    ] No camera update needed
[2026-08-31 17:17:35,268.268 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:17:35,271.271 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:17:35,276.276 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:17:35,281.281 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:17:37,323.323 INFO    ] ================================================
[2026-08-31 17:17:37,339.339 INFO    ] Launching Daemon at Mon Aug 31 17:17:37 IST 2026
[2026-08-31 17:17:37,350.350 INFO    ] ================================================
[2026-08-31 17:17:38,025.025 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:17:38
[2026-08-31 17:17:38,722.722 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:17:39,038.038 INFO    ] Initializing speech engine...
[2026-08-31 17:17:39,049.049 INFO    ] 2026-08-31 17:17:39
[2026-08-31 17:17:39,365.365 INFO    ] 2026-08-31 17:17:39
[2026-08-31 17:17:39,447.447 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:17:39,658.658 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:17:39,673.673 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:17:39,865.865 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:17:39,883.883 INFO    ] time= 31/08/2026 17:17:39
[2026-08-31 17:17:39,903.903 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:17:39,923.923 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:17:40,051.051 INFO    ] No existing commands found in stream
[2026-08-31 17:17:45,078.078 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:17:45,082.082 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-08-31 17:17:49,248.248 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 17:17:49,251.251 INFO    ] Checking for system updates...
[2026-08-31 17:17:49,289.289 INFO    ] 200
[2026-08-31 17:17:49,291.291 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:17:49,346.346 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:17:49,349.349 INFO    ] No update needed
[2026-08-31 17:17:49,351.351 INFO    ] Checking for camera pi updates...
[2026-08-31 17:17:49,385.385 INFO    ] 200
[2026-08-31 17:17:49,388.388 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:17:49,434.434 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:17:49,517.517 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:17:49,519.519 INFO    ] No camera update needed
[2026-08-31 17:17:49,522.522 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:17:49,524.524 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:17:49,529.529 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:17:49,534.534 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:17:51,574.574 INFO    ] ================================================
[2026-08-31 17:17:51,590.590 INFO    ] Launching Daemon at Mon Aug 31 17:17:51 IST 2026
[2026-08-31 17:17:51,601.601 INFO    ] ================================================
[2026-08-31 17:17:52,274.274 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:17:52
[2026-08-31 17:17:52,965.965 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:17:53,276.276 INFO    ] Initializing speech engine...
[2026-08-31 17:17:53,290.290 INFO    ] 2026-08-31 17:17:53
[2026-08-31 17:17:53,605.605 INFO    ] 2026-08-31 17:17:53
[2026-08-31 17:17:53,691.691 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:17:53,910.910 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:17:53,956.956 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:17:54,125.125 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:17:54,135.135 INFO    ] time= 31/08/2026 17:17:54
[2026-08-31 17:17:54,165.165 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:17:54,174.174 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:17:54,298.298 INFO    ] No existing commands found in stream
[2026-08-31 17:17:59,334.334 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:17:59,337.337 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-08-31 17:18:03,478.478 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 17:18:03,481.481 INFO    ] Checking for system updates...
[2026-08-31 17:18:03,522.522 INFO    ] 200
[2026-08-31 17:18:03,525.525 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:18:03,589.589 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:18:03,591.591 INFO    ] No update needed
[2026-08-31 17:18:03,594.594 INFO    ] Checking for camera pi updates...
[2026-08-31 17:18:03,628.628 INFO    ] 200
[2026-08-31 17:18:03,630.630 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:18:03,676.676 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:18:03,750.750 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:18:03,752.752 INFO    ] No camera update needed
[2026-08-31 17:18:03,755.755 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:18:03,757.757 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:18:03,762.762 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:18:03,767.767 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:18:05,808.808 INFO    ] ================================================
[2026-08-31 17:18:05,824.824 INFO    ] Launching Daemon at Mon Aug 31 17:18:05 IST 2026
[2026-08-31 17:18:05,836.836 INFO    ] ================================================
[2026-08-31 17:18:06,434.434 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:18:06
[2026-08-31 17:18:07,030.030 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:18:07,304.304 INFO    ] Initializing speech engine...
[2026-08-31 17:18:07,310.310 INFO    ] 2026-08-31 17:18:07
[2026-08-31 17:18:07,560.560 INFO    ] 2026-08-31 17:18:07
[2026-08-31 17:18:07,594.594 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:18:07,849.849 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:18:07,854.854 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:18:08,050.050 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:18:08,089.089 INFO    ] time= 31/08/2026 17:18:08
[2026-08-31 17:18:08,115.115 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:18:08,121.121 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:18:08,270.270 INFO    ] No existing commands found in stream
[2026-08-31 17:18:13,296.296 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:18:13,299.299 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-08-31 17:18:17,216.216 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 17:18:17,219.219 INFO    ] Checking for system updates...
[2026-08-31 17:18:17,258.258 INFO    ] 200
[2026-08-31 17:18:17,261.261 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:18:17,320.320 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:18:17,322.322 INFO    ] No update needed
[2026-08-31 17:18:17,325.325 INFO    ] Checking for camera pi updates...
[2026-08-31 17:18:17,359.359 INFO    ] 200
[2026-08-31 17:18:17,361.361 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:18:17,402.402 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:18:17,482.482 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:18:17,484.484 INFO    ] No camera update needed
[2026-08-31 17:18:17,487.487 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:18:17,489.489 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:18:17,495.495 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:18:17,500.500 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:18:19,542.542 INFO    ] ================================================
[2026-08-31 17:18:19,558.558 INFO    ] Launching Daemon at Mon Aug 31 17:18:19 IST 2026
[2026-08-31 17:18:19,569.569 INFO    ] ================================================
[2026-08-31 17:18:20,156.156 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:18:20
[2026-08-31 17:18:20,759.759 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:18:21,039.039 INFO    ] Initializing speech engine...
[2026-08-31 17:18:21,048.048 INFO    ] 2026-08-31 17:18:21
[2026-08-31 17:18:21,307.307 INFO    ] 2026-08-31 17:18:21
[2026-08-31 17:18:21,337.337 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:18:21,583.583 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:18:21,592.592 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:18:21,831.831 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:18:21,850.850 INFO    ] time= 31/08/2026 17:18:21
[2026-08-31 17:18:21,856.856 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:18:21,874.874 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:18:22,006.006 INFO    ] No existing commands found in stream
[2026-08-31 17:18:27,018.018 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:18:27,021.021 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-08-31 17:18:28,640.640 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 17:18:28,643.643 INFO    ] Checking for system updates...
[2026-08-31 17:18:28,684.684 INFO    ] 200
[2026-08-31 17:18:28,687.687 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:18:28,740.740 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:18:28,742.742 INFO    ] No update needed
[2026-08-31 17:18:28,744.744 INFO    ] Checking for camera pi updates...
[2026-08-31 17:18:28,786.786 INFO    ] 200
[2026-08-31 17:18:28,789.789 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:18:28,829.829 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:18:28,908.908 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:18:28,911.911 INFO    ] No camera update needed
[2026-08-31 17:18:28,913.913 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:18:28,915.915 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:18:28,921.921 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:18:28,926.926 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:18:30,969.969 INFO    ] ================================================
[2026-08-31 17:18:30,985.985 INFO    ] Launching Daemon at Mon Aug 31 17:18:30 IST 2026
[2026-08-31 17:18:31,998.998 INFO    ] ================================================
[2026-08-31 17:18:31,592.592 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:18:31
[2026-08-31 17:18:32,209.209 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:18:32,495.495 INFO    ] Initializing speech engine...
[2026-08-31 17:18:32,501.501 INFO    ] 2026-08-31 17:18:32
[2026-08-31 17:18:32,799.799 INFO    ] 2026-08-31 17:18:32
[2026-08-31 17:18:32,837.837 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:18:33,041.041 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:18:33,055.055 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:18:33,287.287 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:18:33,327.327 INFO    ] time= 31/08/2026 17:18:33
[2026-08-31 17:18:33,376.376 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:18:33,417.417 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:18:33,565.565 INFO    ] No existing commands found in stream
[2026-08-31 17:18:38,584.584 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:18:38,587.587 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-08-31 17:18:42,092.092 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 17:18:42,094.094 INFO    ] Checking for system updates...
[2026-08-31 17:18:42,134.134 INFO    ] 200
[2026-08-31 17:18:42,137.137 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:18:42,191.191 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:18:42,193.193 INFO    ] No update needed
[2026-08-31 17:18:42,195.195 INFO    ] Checking for camera pi updates...
[2026-08-31 17:18:42,234.234 INFO    ] 200
[2026-08-31 17:18:42,236.236 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:18:42,282.282 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:18:42,365.365 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:18:42,368.368 INFO    ] No camera update needed
[2026-08-31 17:18:42,370.370 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:18:42,372.372 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:18:42,378.378 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:18:42,383.383 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:18:44,422.422 INFO    ] ================================================
[2026-08-31 17:18:44,438.438 INFO    ] Launching Daemon at Mon Aug 31 17:18:44 IST 2026
[2026-08-31 17:18:44,449.449 INFO    ] ================================================
[2026-08-31 17:18:45,114.114 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:18:45
[2026-08-31 17:18:45,777.777 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:18:46,045.045 INFO    ] Initializing speech engine...
[2026-08-31 17:18:46,054.054 INFO    ] 2026-08-31 17:18:46
[2026-08-31 17:18:46,300.300 INFO    ] 2026-08-31 17:18:46
[2026-08-31 17:18:46,335.335 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:18:46,587.587 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:18:46,597.597 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:18:46,829.829 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:18:46,856.856 INFO    ] time= 31/08/2026 17:18:46
[2026-08-31 17:18:46,873.873 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:18:46,881.881 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:18:47,008.008 INFO    ] No existing commands found in stream
[2026-08-31 17:18:52,021.021 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:18:52,023.023 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-08-31 17:18:54,880.880 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 17:18:54,883.883 INFO    ] Checking for system updates...
[2026-08-31 17:18:54,925.925 INFO    ] 200
[2026-08-31 17:18:54,928.928 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:18:54,982.982 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:18:54,985.985 INFO    ] No update needed
[2026-08-31 17:18:54,987.987 INFO    ] Checking for camera pi updates...
[2026-08-31 17:18:55,021.021 INFO    ] 200
[2026-08-31 17:18:55,023.023 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:18:55,065.065 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:18:55,170.170 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:18:55,172.172 INFO    ] No camera update needed
[2026-08-31 17:18:55,174.174 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:18:55,177.177 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:18:55,182.182 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:18:55,187.187 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:18:57,229.229 INFO    ] ================================================
[2026-08-31 17:18:57,245.245 INFO    ] Launching Daemon at Mon Aug 31 17:18:57 IST 2026
[2026-08-31 17:18:57,256.256 INFO    ] ================================================
[2026-08-31 17:18:57,916.916 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:18:57
[2026-08-31 17:18:58,594.594 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:18:58,905.905 INFO    ] Initializing speech engine...
[2026-08-31 17:18:58,917.917 INFO    ] 2026-08-31 17:18:58
[2026-08-31 17:18:59,205.205 INFO    ] 2026-08-31 17:18:59
[2026-08-31 17:18:59,317.317 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:18:59,531.531 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:18:59,540.540 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:18:59,724.724 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:18:59,744.744 INFO    ] time= 31/08/2026 17:18:59
[2026-08-31 17:18:59,766.766 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:18:59,794.794 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:18:59,924.924 INFO    ] No existing commands found in stream
[2026-08-31 17:19:04,955.955 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:19:04,959.959 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-08-31 17:19:06,881.881 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 17:19:06,884.884 INFO    ] Checking for system updates...
[2026-08-31 17:19:06,921.921 INFO    ] 200
[2026-08-31 17:19:06,923.923 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:19:06,983.983 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:19:06,985.985 INFO    ] No update needed
[2026-08-31 17:19:06,987.987 INFO    ] Checking for camera pi updates...
[2026-08-31 17:19:07,021.021 INFO    ] 200
[2026-08-31 17:19:07,023.023 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:19:07,069.069 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:19:07,148.148 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:19:07,150.150 INFO    ] No camera update needed
[2026-08-31 17:19:07,153.153 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:19:07,155.155 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:19:07,160.160 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:19:07,165.165 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:19:09,206.206 INFO    ] ================================================
[2026-08-31 17:19:09,222.222 INFO    ] Launching Daemon at Mon Aug 31 17:19:09 IST 2026
[2026-08-31 17:19:09,234.234 INFO    ] ================================================
[2026-08-31 17:19:09,798.798 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:19:09
[2026-08-31 17:19:10,384.384 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:19:10,653.653 INFO    ] Initializing speech engine...
[2026-08-31 17:19:10,664.664 INFO    ] 2026-08-31 17:19:10
[2026-08-31 17:19:10,914.914 INFO    ] 2026-08-31 17:19:10
[2026-08-31 17:19:10,980.980 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:19:11,210.210 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:19:11,215.215 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:19:11,350.350 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:19:11,415.415 INFO    ] time= 31/08/2026 17:19:11
[2026-08-31 17:19:11,469.469 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:19:11,483.483 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:19:11,614.614 INFO    ] No existing commands found in stream
[2026-08-31 17:19:16,642.642 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:19:16,645.645 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-08-31 17:19:19,726.726 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 17:19:19,729.729 INFO    ] Checking for system updates...
[2026-08-31 17:19:19,765.765 INFO    ] 200
[2026-08-31 17:19:19,767.767 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:19:19,828.828 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:19:19,830.830 INFO    ] No update needed
[2026-08-31 17:19:19,832.832 INFO    ] Checking for camera pi updates...
[2026-08-31 17:19:19,870.870 INFO    ] 200
[2026-08-31 17:19:19,873.873 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:19:19,919.919 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:19:20,108.108 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:19:20,111.111 INFO    ] No camera update needed
[2026-08-31 17:19:20,113.113 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:19:20,115.115 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:19:20,121.121 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:19:20,126.126 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:19:22,166.166 INFO    ] ================================================
[2026-08-31 17:19:22,182.182 INFO    ] Launching Daemon at Mon Aug 31 17:19:22 IST 2026
[2026-08-31 17:19:22,194.194 INFO    ] ================================================
[2026-08-31 17:19:22,761.761 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:19:22
[2026-08-31 17:19:23,343.343 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:19:23,616.616 INFO    ] Initializing speech engine...
[2026-08-31 17:19:23,621.621 INFO    ] 2026-08-31 17:19:23
[2026-08-31 17:19:23,868.868 INFO    ] 2026-08-31 17:19:23
[2026-08-31 17:19:23,902.902 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:19:24,099.099 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:19:24,157.157 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:19:24,295.295 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:19:24,347.347 INFO    ] time= 31/08/2026 17:19:24
[2026-08-31 17:19:24,406.406 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:19:24,428.428 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:19:24,488.488 INFO    ] No existing commands found in stream
[2026-08-31 17:19:29,518.518 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:19:29,520.520 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-08-31 17:19:32,362.362 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 17:19:32,367.367 INFO    ] Checking for system updates...
[2026-08-31 17:19:32,410.410 INFO    ] 200
[2026-08-31 17:19:32,413.413 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:19:32,475.475 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:19:32,478.478 INFO    ] No update needed
[2026-08-31 17:19:32,481.481 INFO    ] Checking for camera pi updates...
[2026-08-31 17:19:32,515.515 INFO    ] 200
[2026-08-31 17:19:32,517.517 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:19:32,558.558 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:19:32,660.660 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:19:32,663.663 INFO    ] No camera update needed
[2026-08-31 17:19:32,665.665 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:19:32,667.667 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:19:32,673.673 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:19:32,678.678 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:19:34,720.720 INFO    ] ================================================
[2026-08-31 17:19:34,735.735 INFO    ] Launching Daemon at Mon Aug 31 17:19:34 IST 2026
[2026-08-31 17:19:34,747.747 INFO    ] ================================================
[2026-08-31 17:19:35,409.409 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:19:35
[2026-08-31 17:19:36,065.065 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:19:36,310.310 INFO    ] Initializing speech engine...
[2026-08-31 17:19:36,319.319 INFO    ] 2026-08-31 17:19:36
[2026-08-31 17:19:36,593.593 INFO    ] 2026-08-31 17:19:36
[2026-08-31 17:19:36,628.628 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:19:36,890.890 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:19:36,899.899 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:19:37,053.053 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:19:37,085.085 INFO    ] time= 31/08/2026 17:19:37
[2026-08-31 17:19:37,140.140 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:19:37,184.184 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:19:37,334.334 INFO    ] No existing commands found in stream
[2026-08-31 17:19:42,354.354 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:19:42,357.357 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-08-31 17:19:44,116.116 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 17:19:44,119.119 INFO    ] Checking for system updates...
[2026-08-31 17:19:44,159.159 INFO    ] 200
[2026-08-31 17:19:44,162.162 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:19:44,214.214 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:19:44,216.216 INFO    ] No update needed
[2026-08-31 17:19:44,219.219 INFO    ] Checking for camera pi updates...
[2026-08-31 17:19:44,256.256 INFO    ] 200
[2026-08-31 17:19:44,259.259 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:19:44,300.300 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:19:44,383.383 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:19:44,386.386 INFO    ] No camera update needed
[2026-08-31 17:19:44,388.388 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:19:44,390.390 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:19:44,396.396 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:19:44,401.401 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:19:46,443.443 INFO    ] ================================================
[2026-08-31 17:19:46,460.460 INFO    ] Launching Daemon at Mon Aug 31 17:19:46 IST 2026
[2026-08-31 17:19:46,471.471 INFO    ] ================================================
[2026-08-31 17:19:47,036.036 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:19:47
[2026-08-31 17:19:47,622.622 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:19:47,893.893 INFO    ] Initializing speech engine...
[2026-08-31 17:19:47,898.898 INFO    ] 2026-08-31 17:19:47
[2026-08-31 17:19:48,159.159 INFO    ] 2026-08-31 17:19:48
[2026-08-31 17:19:48,210.210 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:19:48,377.377 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:19:48,418.418 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:19:48,574.574 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:19:48,622.622 INFO    ] time= 31/08/2026 17:19:48
[2026-08-31 17:19:48,676.676 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:19:48,708.708 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:19:48,841.841 INFO    ] No existing commands found in stream
[2026-08-31 17:19:53,870.870 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:19:53,873.873 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-08-31 17:19:57,201.201 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 17:19:57,203.203 INFO    ] Checking for system updates...
[2026-08-31 17:19:57,247.247 INFO    ] 200
[2026-08-31 17:19:57,250.250 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:19:57,315.315 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:19:57,318.318 INFO    ] No update needed
[2026-08-31 17:19:57,321.321 INFO    ] Checking for camera pi updates...
[2026-08-31 17:19:57,361.361 INFO    ] 200
[2026-08-31 17:19:57,364.364 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:19:57,409.409 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:19:57,493.493 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:19:57,496.496 INFO    ] No camera update needed
[2026-08-31 17:19:57,499.499 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:19:57,502.502 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:19:57,507.507 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:19:57,513.513 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:19:59,555.555 INFO    ] ================================================
[2026-08-31 17:19:59,570.570 INFO    ] Launching Daemon at Mon Aug 31 17:19:59 IST 2026
[2026-08-31 17:19:59,581.581 INFO    ] ================================================
[2026-08-31 17:20:00,182.182 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:20:00
[2026-08-31 17:20:00,795.795 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:20:01,056.056 INFO    ] Initializing speech engine...
[2026-08-31 17:20:01,080.080 INFO    ] 2026-08-31 17:20:01
[2026-08-31 17:20:01,860.860 INFO    ] 2026-08-31 17:20:01
[2026-08-31 17:20:02,005.005 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:20:02,450.450 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:20:02,454.454 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:20:02,601.601 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:20:02,606.606 INFO    ] time= 31/08/2026 17:20:02
[2026-08-31 17:20:02,609.609 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:20:02,612.612 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:20:02,668.668 INFO    ] No existing commands found in stream
[2026-08-31 17:20:07,678.678 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:20:07,681.681 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-08-31 17:20:09,704.704 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 17:20:09,706.706 INFO    ] Checking for system updates...
[2026-08-31 17:20:09,746.746 INFO    ] 200
[2026-08-31 17:20:09,749.749 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:20:09,801.801 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:20:09,803.803 INFO    ] No update needed
[2026-08-31 17:20:09,805.805 INFO    ] Checking for camera pi updates...
[2026-08-31 17:20:09,843.843 INFO    ] 200
[2026-08-31 17:20:09,845.845 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:20:09,885.885 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:20:09,962.962 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:20:09,965.965 INFO    ] No camera update needed
[2026-08-31 17:20:09,967.967 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:20:09,969.969 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:20:09,975.975 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:20:09,980.980 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:20:12,020.020 INFO    ] ================================================
[2026-08-31 17:20:12,035.035 INFO    ] Launching Daemon at Mon Aug 31 17:20:12 IST 2026
[2026-08-31 17:20:12,046.046 INFO    ] ================================================
[2026-08-31 17:20:12,612.612 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:20:12
[2026-08-31 17:20:13,195.195 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:20:13,457.457 INFO    ] Initializing speech engine...
[2026-08-31 17:20:13,469.469 INFO    ] 2026-08-31 17:20:13
[2026-08-31 17:20:13,716.716 INFO    ] 2026-08-31 17:20:13
[2026-08-31 17:20:13,751.751 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:20:14,000.000 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:20:14,010.010 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:20:14,213.213 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:20:14,263.263 INFO    ] time= 31/08/2026 17:20:14
[2026-08-31 17:20:14,273.273 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:20:14,291.291 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:20:14,421.421 INFO    ] No existing commands found in stream
[2026-08-31 17:20:19,439.439 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:20:19,442.442 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-08-31 17:20:21,221.221 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 17:20:21,224.224 INFO    ] Checking for system updates...
[2026-08-31 17:20:21,263.263 INFO    ] 200
[2026-08-31 17:20:21,266.266 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:20:21,319.319 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:20:21,322.322 INFO    ] No update needed
[2026-08-31 17:20:21,325.325 INFO    ] Checking for camera pi updates...
[2026-08-31 17:20:21,362.362 INFO    ] 200
[2026-08-31 17:20:21,365.365 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:20:21,410.410 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:20:21,492.492 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:20:21,494.494 INFO    ] No camera update needed
[2026-08-31 17:20:21,496.496 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:20:21,499.499 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:20:21,504.504 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:20:21,509.509 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:20:23,551.551 INFO    ] ================================================
[2026-08-31 17:20:23,566.566 INFO    ] Launching Daemon at Mon Aug 31 17:20:23 IST 2026
[2026-08-31 17:20:23,577.577 INFO    ] ================================================
[2026-08-31 17:20:24,145.145 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:20:24
[2026-08-31 17:20:24,729.729 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:20:24,998.998 INFO    ] Initializing speech engine...
[2026-08-31 17:20:25,007.007 INFO    ] 2026-08-31 17:20:25
[2026-08-31 17:20:25,254.254 INFO    ] 2026-08-31 17:20:25
[2026-08-31 17:20:25,289.289 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:20:25,541.541 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:20:25,550.550 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:20:25,763.763 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:20:25,817.817 INFO    ] time= 31/08/2026 17:20:25
[2026-08-31 17:20:25,823.823 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:20:25,838.838 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:20:25,969.969 INFO    ] No existing commands found in stream
[2026-08-31 17:20:30,987.987 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:20:30,990.990 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-08-31 17:20:33,646.646 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 17:20:33,649.649 INFO    ] Checking for system updates...
[2026-08-31 17:20:33,689.689 INFO    ] 200
[2026-08-31 17:20:33,691.691 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:20:33,744.744 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:20:33,746.746 INFO    ] No update needed
[2026-08-31 17:20:33,749.749 INFO    ] Checking for camera pi updates...
[2026-08-31 17:20:33,782.782 INFO    ] 200
[2026-08-31 17:20:33,785.785 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:20:33,825.825 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:20:33,909.909 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:20:33,912.912 INFO    ] No camera update needed
[2026-08-31 17:20:33,914.914 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:20:33,916.916 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:20:33,922.922 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:20:33,927.927 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:20:35,966.966 INFO    ] ================================================
[2026-08-31 17:20:35,981.981 INFO    ] Launching Daemon at Mon Aug 31 17:20:35 IST 2026
[2026-08-31 17:20:35,991.991 INFO    ] ================================================
[2026-08-31 17:20:36,573.573 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:20:36
[2026-08-31 17:20:37,171.171 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:20:37,467.467 INFO    ] Initializing speech engine...
[2026-08-31 17:20:37,475.475 INFO    ] 2026-08-31 17:20:37
[2026-08-31 17:20:37,768.768 INFO    ] 2026-08-31 17:20:37
[2026-08-31 17:20:37,807.807 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:20:38,122.122 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:20:38,159.159 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:20:38,309.309 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:20:38,340.340 INFO    ] time= 31/08/2026 17:20:38
[2026-08-31 17:20:38,349.349 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:20:38,357.357 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:20:38,454.454 INFO    ] No existing commands found in stream
[2026-08-31 17:20:43,484.484 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:20:43,487.487 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-08-31 17:20:47,399.399 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 17:20:47,401.401 INFO    ] Checking for system updates...
[2026-08-31 17:20:47,437.437 INFO    ] 200
[2026-08-31 17:20:47,439.439 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:20:47,499.499 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:20:47,501.501 INFO    ] No update needed
[2026-08-31 17:20:47,504.504 INFO    ] Checking for camera pi updates...
[2026-08-31 17:20:47,537.537 INFO    ] 200
[2026-08-31 17:20:47,540.540 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:20:47,585.585 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:20:47,689.689 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:20:47,691.691 INFO    ] No camera update needed
[2026-08-31 17:20:47,693.693 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:20:47,696.696 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:20:47,701.701 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:20:47,706.706 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:20:49,747.747 INFO    ] ================================================
[2026-08-31 17:20:49,762.762 INFO    ] Launching Daemon at Mon Aug 31 17:20:49 IST 2026
[2026-08-31 17:20:49,772.772 INFO    ] ================================================
[2026-08-31 17:20:50,337.337 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:20:50
[2026-08-31 17:20:50,920.920 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:20:51,169.169 INFO    ] Initializing speech engine...
[2026-08-31 17:20:51,176.176 INFO    ] 2026-08-31 17:20:51
[2026-08-31 17:20:51,488.488 INFO    ] 2026-08-31 17:20:51
[2026-08-31 17:20:51,524.524 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:20:51,726.726 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:20:51,742.742 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:20:51,907.907 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:20:51,915.915 INFO    ] time= 31/08/2026 17:20:51
[2026-08-31 17:20:51,923.923 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:20:51,971.971 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:20:52,095.095 INFO    ] No existing commands found in stream
[2026-08-31 17:20:57,125.125 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:20:57,128.128 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-08-31 17:21:01,661.661 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 17:21:01,665.665 INFO    ] Checking for system updates...
[2026-08-31 17:21:01,710.710 INFO    ] 200
[2026-08-31 17:21:01,712.712 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:21:01,771.771 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:21:01,774.774 INFO    ] No update needed
[2026-08-31 17:21:01,776.776 INFO    ] Checking for camera pi updates...
[2026-08-31 17:21:01,820.820 INFO    ] 200
[2026-08-31 17:21:01,823.823 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:21:01,875.875 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:21:01,959.959 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:21:01,962.962 INFO    ] No camera update needed
[2026-08-31 17:21:01,965.965 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:21:01,968.968 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:21:01,975.975 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:21:01,982.982 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:21:04,023.023 INFO    ] ================================================
[2026-08-31 17:21:04,038.038 INFO    ] Launching Daemon at Mon Aug 31 17:21:04 IST 2026
[2026-08-31 17:21:04,049.049 INFO    ] ================================================
[2026-08-31 17:21:04,619.619 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:21:04
[2026-08-31 17:21:05,199.199 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:21:05,466.466 INFO    ] Initializing speech engine...
[2026-08-31 17:21:05,475.475 INFO    ] 2026-08-31 17:21:05
[2026-08-31 17:21:05,720.720 INFO    ] 2026-08-31 17:21:05
[2026-08-31 17:21:05,755.755 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:21:05,982.982 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:21:06,024.024 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:21:06,194.194 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:21:06,264.264 INFO    ] time= 31/08/2026 17:21:06
[2026-08-31 17:21:06,302.302 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:21:06,320.320 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:21:06,439.439 INFO    ] No existing commands found in stream
[2026-08-31 17:21:11,466.466 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:21:11,469.469 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-08-31 17:21:13,238.238 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 17:21:13,241.241 INFO    ] Checking for system updates...
[2026-08-31 17:21:13,279.279 INFO    ] 200
[2026-08-31 17:21:13,282.282 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:21:13,344.344 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:21:13,347.347 INFO    ] No update needed
[2026-08-31 17:21:13,351.351 INFO    ] Checking for camera pi updates...
[2026-08-31 17:21:13,386.386 INFO    ] 200
[2026-08-31 17:21:13,389.389 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:21:13,435.435 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:21:13,485.485 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:21:13,487.487 INFO    ] No camera update needed
[2026-08-31 17:21:13,490.490 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:21:13,492.492 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:21:13,497.497 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:21:13,502.502 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:21:15,543.543 INFO    ] ================================================
[2026-08-31 17:21:15,558.558 INFO    ] Launching Daemon at Mon Aug 31 17:21:15 IST 2026
[2026-08-31 17:21:15,569.569 INFO    ] ================================================
[2026-08-31 17:21:16,132.132 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:21:16
[2026-08-31 17:21:16,713.713 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:21:16,979.979 INFO    ] Initializing speech engine...
[2026-08-31 17:21:16,989.989 INFO    ] 2026-08-31 17:21:16
[2026-08-31 17:21:17,234.234 INFO    ] 2026-08-31 17:21:17
[2026-08-31 17:21:17,299.299 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:21:17,526.526 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:21:17,548.548 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:21:17,763.763 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:21:17,788.788 INFO    ] time= 31/08/2026 17:21:17
[2026-08-31 17:21:17,803.803 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:21:17,812.812 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:21:17,925.925 INFO    ] No existing commands found in stream
[2026-08-31 17:21:22,950.950 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:21:22,953.953 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-08-31 17:21:25,155.155 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 17:21:25,158.158 INFO    ] Checking for system updates...
[2026-08-31 17:21:25,199.199 INFO    ] 200
[2026-08-31 17:21:25,202.202 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:21:25,263.263 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:21:25,266.266 INFO    ] No update needed
[2026-08-31 17:21:25,269.269 INFO    ] Checking for camera pi updates...
[2026-08-31 17:21:25,307.307 INFO    ] 200
[2026-08-31 17:21:25,310.310 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:21:25,357.357 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:21:25,536.536 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:21:25,539.539 INFO    ] No camera update needed
[2026-08-31 17:21:25,542.542 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:21:25,545.545 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:21:25,551.551 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:21:25,557.557 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:21:27,600.600 INFO    ] ================================================
[2026-08-31 17:21:27,622.622 INFO    ] Launching Daemon at Mon Aug 31 17:21:27 IST 2026
[2026-08-31 17:21:27,633.633 INFO    ] ================================================
[2026-08-31 17:21:28,212.212 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:21:28
[2026-08-31 17:21:28,799.799 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:21:29,067.067 INFO    ] Initializing speech engine...
[2026-08-31 17:21:29,076.076 INFO    ] 2026-08-31 17:21:29
[2026-08-31 17:21:29,322.322 INFO    ] 2026-08-31 17:21:29
[2026-08-31 17:21:29,356.356 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:21:29,612.612 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:21:29,616.616 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:21:29,853.853 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:21:29,874.874 INFO    ] time= 31/08/2026 17:21:29
[2026-08-31 17:21:29,889.889 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:21:29,897.897 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:21:30,009.009 INFO    ] No existing commands found in stream
[2026-08-31 17:21:35,035.035 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:21:35,038.038 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-08-31 17:21:35,880.880 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 17:21:35,883.883 INFO    ] Checking for system updates...
[2026-08-31 17:21:35,919.919 INFO    ] 200
[2026-08-31 17:21:35,922.922 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:21:35,983.983 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:21:35,986.986 INFO    ] No update needed
[2026-08-31 17:21:35,989.989 INFO    ] Checking for camera pi updates...
[2026-08-31 17:21:36,025.025 INFO    ] 200
[2026-08-31 17:21:36,027.027 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:21:36,069.069 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:21:36,153.153 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:21:36,156.156 INFO    ] No camera update needed
[2026-08-31 17:21:36,159.159 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:21:36,161.161 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:21:36,168.168 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:21:36,174.174 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:21:38,214.214 INFO    ] ================================================
[2026-08-31 17:21:38,230.230 INFO    ] Launching Daemon at Mon Aug 31 17:21:38 IST 2026
[2026-08-31 17:21:38,241.241 INFO    ] ================================================
[2026-08-31 17:21:38,805.805 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:21:38
[2026-08-31 17:21:39,388.388 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:21:39,645.645 INFO    ] Initializing speech engine...
[2026-08-31 17:21:39,664.664 INFO    ] 2026-08-31 17:21:39
[2026-08-31 17:21:39,910.910 INFO    ] 2026-08-31 17:21:39
[2026-08-31 17:21:39,944.944 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:21:40,194.194 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:21:40,203.203 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:21:40,408.408 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:21:40,462.462 INFO    ] time= 31/08/2026 17:21:40
[2026-08-31 17:21:40,468.468 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:21:40,486.486 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:21:40,612.612 INFO    ] No existing commands found in stream
[2026-08-31 17:21:45,627.627 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:21:45,630.630 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-08-31 17:21:48,996.996 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 17:21:48,999.999 INFO    ] Checking for system updates...
[2026-08-31 17:21:49,035.035 INFO    ] 200
[2026-08-31 17:21:49,038.038 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:21:49,093.093 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:21:49,096.096 INFO    ] No update needed
[2026-08-31 17:21:49,099.099 INFO    ] Checking for camera pi updates...
[2026-08-31 17:21:49,138.138 INFO    ] 200
[2026-08-31 17:21:49,141.141 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:21:49,187.187 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:21:49,270.270 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:21:49,273.273 INFO    ] No camera update needed
[2026-08-31 17:21:49,276.276 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:21:49,279.279 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:21:49,285.285 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:21:49,291.291 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:21:51,336.336 INFO    ] ================================================
[2026-08-31 17:21:51,351.351 INFO    ] Launching Daemon at Mon Aug 31 17:21:51 IST 2026
[2026-08-31 17:21:51,363.363 INFO    ] ================================================
[2026-08-31 17:21:51,929.929 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:21:51
[2026-08-31 17:21:52,512.512 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:21:52,761.761 INFO    ] Initializing speech engine...
[2026-08-31 17:21:52,783.783 INFO    ] 2026-08-31 17:21:52
[2026-08-31 17:21:53,034.034 INFO    ] 2026-08-31 17:21:53
[2026-08-31 17:21:53,068.068 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:21:53,248.248 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:21:53,266.266 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:21:53,459.459 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:21:53,512.512 INFO    ] time= 31/08/2026 17:21:53
[2026-08-31 17:21:53,571.571 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:21:53,596.596 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:21:53,726.726 INFO    ] No existing commands found in stream
[2026-08-31 17:21:58,751.751 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:21:58,753.753 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-08-31 17:22:00,476.476 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 17:22:00,479.479 INFO    ] Checking for system updates...
[2026-08-31 17:22:00,520.520 INFO    ] 200
[2026-08-31 17:22:00,523.523 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:22:00,577.577 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:22:00,580.580 INFO    ] No update needed
[2026-08-31 17:22:00,583.583 INFO    ] Checking for camera pi updates...
[2026-08-31 17:22:00,622.622 INFO    ] 200
[2026-08-31 17:22:00,625.625 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:22:00,672.672 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:22:00,753.753 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:22:00,755.755 INFO    ] No camera update needed
[2026-08-31 17:22:00,758.758 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:22:00,760.760 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:22:00,766.766 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:22:00,771.771 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:22:02,816.816 INFO    ] ================================================
[2026-08-31 17:22:02,832.832 INFO    ] Launching Daemon at Mon Aug 31 17:22:02 IST 2026
[2026-08-31 17:22:02,843.843 INFO    ] ================================================
[2026-08-31 17:22:03,434.434 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:22:03
[2026-08-31 17:22:04,034.034 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:22:04,304.304 INFO    ] Initializing speech engine...
[2026-08-31 17:22:04,323.323 INFO    ] 2026-08-31 17:22:04
[2026-08-31 17:22:04,594.594 INFO    ] 2026-08-31 17:22:04
[2026-08-31 17:22:04,633.633 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:22:04,851.851 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:22:04,867.867 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:22:05,040.040 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:22:05,045.045 INFO    ] time= 31/08/2026 17:22:05
[2026-08-31 17:22:05,053.053 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:22:05,097.097 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:22:05,244.244 INFO    ] No existing commands found in stream
[2026-08-31 17:22:10,270.270 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:22:10,273.273 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-08-31 17:22:13,538.538 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 17:22:13,541.541 INFO    ] Checking for system updates...
[2026-08-31 17:22:13,577.577 INFO    ] 200
[2026-08-31 17:22:13,580.580 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:22:13,632.632 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:22:13,635.635 INFO    ] No update needed
[2026-08-31 17:22:13,637.637 INFO    ] Checking for camera pi updates...
[2026-08-31 17:22:13,675.675 INFO    ] 200
[2026-08-31 17:22:13,678.678 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:22:13,719.719 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:22:13,795.795 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:22:13,798.798 INFO    ] No camera update needed
[2026-08-31 17:22:13,801.801 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:22:13,803.803 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:22:13,810.810 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:22:13,816.816 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:22:15,858.858 INFO    ] ================================================
[2026-08-31 17:22:15,873.873 INFO    ] Launching Daemon at Mon Aug 31 17:22:15 IST 2026
[2026-08-31 17:22:15,883.883 INFO    ] ================================================
[2026-08-31 17:22:16,542.542 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:22:16
[2026-08-31 17:22:17,148.148 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:22:17,429.429 INFO    ] Initializing speech engine...
[2026-08-31 17:22:17,437.437 INFO    ] 2026-08-31 17:22:17
[2026-08-31 17:22:17,757.757 INFO    ] 2026-08-31 17:22:17
[2026-08-31 17:22:17,843.843 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:22:18,035.035 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:22:18,040.040 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:22:18,236.236 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:22:18,274.274 INFO    ] time= 31/08/2026 17:22:18
[2026-08-31 17:22:18,293.293 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:22:18,323.323 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:22:18,432.432 INFO    ] No existing commands found in stream
[2026-08-31 17:22:23,452.452 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:22:23,455.455 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-08-31 17:22:25,160.160 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 17:22:25,163.163 INFO    ] Checking for system updates...
[2026-08-31 17:22:25,201.201 INFO    ] 200
[2026-08-31 17:22:25,204.204 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:22:25,258.258 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:22:25,261.261 INFO    ] No update needed
[2026-08-31 17:22:25,263.263 INFO    ] Checking for camera pi updates...
[2026-08-31 17:22:25,298.298 INFO    ] 200
[2026-08-31 17:22:25,301.301 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:22:25,347.347 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:22:25,443.443 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:22:25,446.446 INFO    ] No camera update needed
[2026-08-31 17:22:25,448.448 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:22:25,451.451 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:22:25,457.457 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:22:25,463.463 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:22:27,503.503 INFO    ] ================================================
[2026-08-31 17:22:27,518.518 INFO    ] Launching Daemon at Mon Aug 31 17:22:27 IST 2026
[2026-08-31 17:22:27,528.528 INFO    ] ================================================
[2026-08-31 17:22:28,185.185 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:22:28
[2026-08-31 17:22:28,861.861 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:22:29,177.177 INFO    ] Initializing speech engine...
[2026-08-31 17:22:29,184.184 INFO    ] 2026-08-31 17:22:29
[2026-08-31 17:22:29,491.491 INFO    ] 2026-08-31 17:22:29
[2026-08-31 17:22:29,576.576 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:22:29,792.792 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:22:29,801.801 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:22:29,972.972 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:22:29,998.998 INFO    ] time= 31/08/2026 17:22:29
[2026-08-31 17:22:30,015.015 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:22:30,047.047 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:22:30,168.168 INFO    ] No existing commands found in stream
[2026-08-31 17:22:35,194.194 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:22:35,197.197 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-08-31 17:22:37,904.904 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 17:22:37,907.907 INFO    ] Checking for system updates...
[2026-08-31 17:22:37,944.944 INFO    ] 200
[2026-08-31 17:22:37,947.947 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:22:38,000.000 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:22:38,003.003 INFO    ] No update needed
[2026-08-31 17:22:38,007.007 INFO    ] Checking for camera pi updates...
[2026-08-31 17:22:38,046.046 INFO    ] 200
[2026-08-31 17:22:38,049.049 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:22:38,092.092 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:22:38,173.173 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:22:38,176.176 INFO    ] No camera update needed
[2026-08-31 17:22:38,179.179 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:22:38,182.182 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:22:38,188.188 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:22:38,194.194 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:22:40,238.238 INFO    ] ================================================
[2026-08-31 17:22:40,253.253 INFO    ] Launching Daemon at Mon Aug 31 17:22:40 IST 2026
[2026-08-31 17:22:40,263.263 INFO    ] ================================================
[2026-08-31 17:22:40,837.837 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:22:40
[2026-08-31 17:22:41,420.420 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:22:41,676.676 INFO    ] Initializing speech engine...
[2026-08-31 17:22:41,680.680 INFO    ] 2026-08-31 17:22:41
[2026-08-31 17:22:41,979.979 INFO    ] 2026-08-31 17:22:41
[2026-08-31 17:22:42,014.014 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:22:42,241.241 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:22:42,269.269 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:22:42,441.441 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:22:42,475.475 INFO    ] time= 31/08/2026 17:22:42
[2026-08-31 17:22:42,486.486 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:22:42,541.541 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:22:42,631.631 INFO    ] No existing commands found in stream
[2026-08-31 17:22:47,654.654 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:22:47,657.657 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-08-31 17:22:48,536.536 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 17:22:48,539.539 INFO    ] Checking for system updates...
[2026-08-31 17:22:48,574.574 INFO    ] 200
[2026-08-31 17:22:48,576.576 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:22:48,628.628 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:22:48,630.630 INFO    ] No update needed
[2026-08-31 17:22:48,633.633 INFO    ] Checking for camera pi updates...
[2026-08-31 17:22:48,666.666 INFO    ] 200
[2026-08-31 17:22:48,669.669 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:22:48,714.714 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:22:48,788.788 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:22:48,791.791 INFO    ] No camera update needed
[2026-08-31 17:22:48,793.793 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:22:48,795.795 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:22:48,801.801 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:22:48,806.806 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:22:50,846.846 INFO    ] ================================================
[2026-08-31 17:22:50,861.861 INFO    ] Launching Daemon at Mon Aug 31 17:22:50 IST 2026
[2026-08-31 17:22:50,872.872 INFO    ] ================================================
[2026-08-31 17:22:51,436.436 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:22:51
[2026-08-31 17:22:52,021.021 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:22:52,292.292 INFO    ] Initializing speech engine...
[2026-08-31 17:22:52,298.298 INFO    ] 2026-08-31 17:22:52
[2026-08-31 17:22:52,546.546 INFO    ] 2026-08-31 17:22:52
[2026-08-31 17:22:52,580.580 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:22:52,832.832 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:22:52,842.842 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:22:53,048.048 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:22:53,101.101 INFO    ] time= 31/08/2026 17:22:53
[2026-08-31 17:22:53,107.107 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:22:53,122.122 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:22:53,241.241 INFO    ] No existing commands found in stream
[2026-08-31 17:22:58,265.265 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:22:58,268.268 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-08-31 17:22:59,798.798 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 17:22:59,801.801 INFO    ] Checking for system updates...
[2026-08-31 17:22:59,840.840 INFO    ] 200
[2026-08-31 17:22:59,843.843 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:22:59,896.896 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:22:59,899.899 INFO    ] No update needed
[2026-08-31 17:22:59,901.901 INFO    ] Checking for camera pi updates...
[2026-08-31 17:22:59,934.934 INFO    ] 200
[2026-08-31 17:22:59,937.937 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:22:59,977.977 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:23:00,075.075 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:23:00,077.077 INFO    ] No camera update needed
[2026-08-31 17:23:00,080.080 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:23:00,082.082 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:23:00,087.087 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:23:00,092.092 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:23:02,136.136 INFO    ] ================================================
[2026-08-31 17:23:02,153.153 INFO    ] Launching Daemon at Mon Aug 31 17:23:02 IST 2026
[2026-08-31 17:23:02,169.169 INFO    ] ================================================
[2026-08-31 17:23:02,800.800 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:23:02
[2026-08-31 17:23:03,423.423 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:23:03,680.680 INFO    ] Initializing speech engine...
[2026-08-31 17:23:03,686.686 INFO    ] 2026-08-31 17:23:03
[2026-08-31 17:23:03,979.979 INFO    ] 2026-08-31 17:23:03
[2026-08-31 17:23:04,009.009 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:23:04,247.247 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:23:04,270.270 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:23:04,481.481 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:23:04,489.489 INFO    ] time= 31/08/2026 17:23:04
[2026-08-31 17:23:04,548.548 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:23:04,597.597 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:23:04,774.774 INFO    ] No existing commands found in stream
[2026-08-31 17:23:09,799.799 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:23:09,801.801 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-08-31 17:23:12,957.957 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 17:23:12,959.959 INFO    ] Checking for system updates...
[2026-08-31 17:23:12,995.995 INFO    ] 200
[2026-08-31 17:23:12,997.997 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:23:13,049.049 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:23:13,051.051 INFO    ] No update needed
[2026-08-31 17:23:13,054.054 INFO    ] Checking for camera pi updates...
[2026-08-31 17:23:13,088.088 INFO    ] 200
[2026-08-31 17:23:13,090.090 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:23:13,131.131 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:23:13,215.215 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:23:13,217.217 INFO    ] No camera update needed
[2026-08-31 17:23:13,220.220 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:23:13,222.222 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:23:13,227.227 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:23:13,232.232 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:23:15,273.273 INFO    ] ================================================
[2026-08-31 17:23:15,288.288 INFO    ] Launching Daemon at Mon Aug 31 17:23:15 IST 2026
[2026-08-31 17:23:15,302.302 INFO    ] ================================================
[2026-08-31 17:23:15,962.962 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:23:15
[2026-08-31 17:23:16,644.644 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:23:16,964.964 INFO    ] Initializing speech engine...
[2026-08-31 17:23:16,970.970 INFO    ] 2026-08-31 17:23:16
[2026-08-31 17:23:17,283.283 INFO    ] 2026-08-31 17:23:17
[2026-08-31 17:23:17,368.368 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:23:17,644.644 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:23:17,652.652 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:23:17,830.830 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:23:17,838.838 INFO    ] time= 31/08/2026 17:23:17
[2026-08-31 17:23:17,856.856 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:23:17,919.919 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:23:18,039.039 INFO    ] No existing commands found in stream
[2026-08-31 17:23:23,056.056 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:23:23,059.059 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-08-31 17:23:24,021.021 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 17:23:24,024.024 INFO    ] Checking for system updates...
[2026-08-31 17:23:24,060.060 INFO    ] 200
[2026-08-31 17:23:24,062.062 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:23:24,115.115 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:23:24,117.117 INFO    ] No update needed
[2026-08-31 17:23:24,120.120 INFO    ] Checking for camera pi updates...
[2026-08-31 17:23:24,159.159 INFO    ] 200
[2026-08-31 17:23:24,161.161 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:23:24,201.201 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:23:24,287.287 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:23:24,290.290 INFO    ] No camera update needed
[2026-08-31 17:23:24,292.292 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:23:24,294.294 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:23:24,299.299 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:23:24,304.304 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:23:26,347.347 INFO    ] ================================================
[2026-08-31 17:23:26,362.362 INFO    ] Launching Daemon at Mon Aug 31 17:23:26 IST 2026
[2026-08-31 17:23:26,373.373 INFO    ] ================================================
[2026-08-31 17:23:27,033.033 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:23:27
[2026-08-31 17:23:27,713.713 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:23:28,027.027 INFO    ] Initializing speech engine...
[2026-08-31 17:23:28,033.033 INFO    ] 2026-08-31 17:23:28
[2026-08-31 17:23:28,342.342 INFO    ] 2026-08-31 17:23:28
[2026-08-31 17:23:28,429.429 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:23:28,643.643 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:23:28,652.652 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:23:28,844.844 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:23:28,863.863 INFO    ] time= 31/08/2026 17:23:28
[2026-08-31 17:23:28,892.892 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:23:28,901.901 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:23:29,005.005 INFO    ] No existing commands found in stream
[2026-08-31 17:23:34,040.040 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:23:34,043.043 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-08-31 17:23:35,337.337 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 17:23:35,340.340 INFO    ] Checking for system updates...
[2026-08-31 17:23:35,377.377 INFO    ] 200
[2026-08-31 17:23:35,380.380 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:23:35,433.433 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:23:35,436.436 INFO    ] No update needed
[2026-08-31 17:23:35,439.439 INFO    ] Checking for camera pi updates...
[2026-08-31 17:23:35,478.478 INFO    ] 200
[2026-08-31 17:23:35,482.482 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:23:35,523.523 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:23:35,610.610 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:23:35,613.613 INFO    ] No camera update needed
[2026-08-31 17:23:35,615.615 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:23:35,618.618 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:23:35,625.625 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:23:35,631.631 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:23:37,671.671 INFO    ] ================================================
[2026-08-31 17:23:37,686.686 INFO    ] Launching Daemon at Mon Aug 31 17:23:37 IST 2026
[2026-08-31 17:23:37,697.697 INFO    ] ================================================
[2026-08-31 17:23:38,363.363 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:23:38
[2026-08-31 17:23:39,049.049 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:23:39,359.359 INFO    ] Initializing speech engine...
[2026-08-31 17:23:39,372.372 INFO    ] 2026-08-31 17:23:39
[2026-08-31 17:23:39,655.655 INFO    ] 2026-08-31 17:23:39
[2026-08-31 17:23:39,711.711 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:23:39,952.952 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:23:39,971.971 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:23:40,188.188 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:23:40,207.207 INFO    ] time= 31/08/2026 17:23:40
[2026-08-31 17:23:40,227.227 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:23:40,244.244 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:23:40,350.350 INFO    ] No existing commands found in stream
[2026-08-31 17:23:45,380.380 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:23:45,383.383 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-08-31 17:23:47,981.981 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 17:23:47,984.984 INFO    ] Checking for system updates...
[2026-08-31 17:23:48,021.021 INFO    ] 200
[2026-08-31 17:23:48,024.024 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:23:48,076.076 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:23:48,078.078 INFO    ] No update needed
[2026-08-31 17:23:48,081.081 INFO    ] Checking for camera pi updates...
[2026-08-31 17:23:48,115.115 INFO    ] 200
[2026-08-31 17:23:48,117.117 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:23:48,158.158 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:23:48,244.244 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:23:48,247.247 INFO    ] No camera update needed
[2026-08-31 17:23:48,249.249 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:23:48,252.252 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:23:48,257.257 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:23:48,262.262 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:23:50,301.301 INFO    ] ================================================
[2026-08-31 17:23:50,316.316 INFO    ] Launching Daemon at Mon Aug 31 17:23:50 IST 2026
[2026-08-31 17:23:50,328.328 INFO    ] ================================================
[2026-08-31 17:23:50,901.901 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:23:50
[2026-08-31 17:23:51,489.489 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:23:51,758.758 INFO    ] Initializing speech engine...
[2026-08-31 17:23:51,767.767 INFO    ] 2026-08-31 17:23:51
[2026-08-31 17:23:52,014.014 INFO    ] 2026-08-31 17:23:52
[2026-08-31 17:23:52,049.049 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:23:52,301.301 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:23:52,310.310 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:23:52,528.528 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:23:52,568.568 INFO    ] time= 31/08/2026 17:23:52
[2026-08-31 17:23:52,574.574 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:23:52,592.592 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:23:52,723.723 INFO    ] No existing commands found in stream
[2026-08-31 17:23:57,742.742 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:23:57,744.744 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-08-31 17:24:02,085.085 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 17:24:02,089.089 INFO    ] Checking for system updates...
[2026-08-31 17:24:02,139.139 INFO    ] 200
[2026-08-31 17:24:02,143.143 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:24:02,256.256 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:24:02,260.260 INFO    ] No update needed
[2026-08-31 17:24:02,263.263 INFO    ] Checking for camera pi updates...
[2026-08-31 17:24:02,302.302 INFO    ] 200
[2026-08-31 17:24:02,305.305 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:24:02,356.356 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:24:02,442.442 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:24:02,445.445 INFO    ] No camera update needed
[2026-08-31 17:24:02,448.448 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:24:02,451.451 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:24:02,457.457 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:24:02,463.463 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:24:04,505.505 INFO    ] ================================================
[2026-08-31 17:24:04,520.520 INFO    ] Launching Daemon at Mon Aug 31 17:24:04 IST 2026
[2026-08-31 17:24:04,530.530 INFO    ] ================================================
[2026-08-31 17:24:05,097.097 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:24:05
[2026-08-31 17:24:05,679.679 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:24:05,947.947 INFO    ] Initializing speech engine...
[2026-08-31 17:24:05,956.956 INFO    ] 2026-08-31 17:24:05
[2026-08-31 17:24:06,201.201 INFO    ] 2026-08-31 17:24:06
[2026-08-31 17:24:06,236.236 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:24:06,505.505 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:24:06,514.514 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:24:06,726.726 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:24:06,771.771 INFO    ] time= 31/08/2026 17:24:06
[2026-08-31 17:24:06,776.776 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:24:06,794.794 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:24:06,922.922 INFO    ] No existing commands found in stream
[2026-08-31 17:24:11,935.935 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:24:11,938.938 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-08-31 17:24:14,173.173 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 17:24:14,175.175 INFO    ] Checking for system updates...
[2026-08-31 17:24:14,211.211 INFO    ] 200
[2026-08-31 17:24:14,213.213 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:24:14,273.273 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:24:14,275.275 INFO    ] No update needed
[2026-08-31 17:24:14,277.277 INFO    ] Checking for camera pi updates...
[2026-08-31 17:24:14,311.311 INFO    ] 200
[2026-08-31 17:24:14,313.313 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:24:14,353.353 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:24:14,435.435 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:24:14,437.437 INFO    ] No camera update needed
[2026-08-31 17:24:14,440.440 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:24:14,442.442 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:24:14,447.447 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:24:14,452.452 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:24:16,493.493 INFO    ] ================================================
[2026-08-31 17:24:16,509.509 INFO    ] Launching Daemon at Mon Aug 31 17:24:16 IST 2026
[2026-08-31 17:24:16,519.519 INFO    ] ================================================
[2026-08-31 17:24:17,094.094 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:24:17
[2026-08-31 17:24:17,741.741 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:24:18,034.034 INFO    ] Initializing speech engine...
[2026-08-31 17:24:18,045.045 INFO    ] 2026-08-31 17:24:18
[2026-08-31 17:24:18,313.313 INFO    ] 2026-08-31 17:24:18
[2026-08-31 17:24:18,369.369 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:24:18,653.653 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:24:18,659.659 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:24:18,852.852 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:24:18,860.860 INFO    ] time= 31/08/2026 17:24:18
[2026-08-31 17:24:18,878.878 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:24:18,907.907 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:24:19,024.024 INFO    ] No existing commands found in stream
[2026-08-31 17:24:24,054.054 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:24:24,058.058 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-08-31 17:24:25,503.503 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 17:24:25,505.505 INFO    ] Checking for system updates...
[2026-08-31 17:24:25,541.541 INFO    ] 200
[2026-08-31 17:24:25,543.543 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:24:25,600.600 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:24:25,603.603 INFO    ] No update needed
[2026-08-31 17:24:25,605.605 INFO    ] Checking for camera pi updates...
[2026-08-31 17:24:25,638.638 INFO    ] 200
[2026-08-31 17:24:25,641.641 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:24:25,684.684 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:24:25,775.775 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:24:25,778.778 INFO    ] No camera update needed
[2026-08-31 17:24:25,780.780 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:24:25,783.783 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:24:25,788.788 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:24:25,793.793 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:24:27,833.833 INFO    ] ================================================
[2026-08-31 17:24:27,848.848 INFO    ] Launching Daemon at Mon Aug 31 17:24:27 IST 2026
[2026-08-31 17:24:27,859.859 INFO    ] ================================================
[2026-08-31 17:24:28,424.424 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:24:28
[2026-08-31 17:24:29,007.007 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:24:29,288.288 INFO    ] Initializing speech engine...
[2026-08-31 17:24:29,298.298 INFO    ] 2026-08-31 17:24:29
[2026-08-31 17:24:29,563.563 INFO    ] 2026-08-31 17:24:29
[2026-08-31 17:24:29,597.597 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:24:29,886.886 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:24:29,896.896 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:24:30,048.048 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:24:30,098.098 INFO    ] time= 31/08/2026 17:24:30
[2026-08-31 17:24:30,147.147 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:24:30,195.195 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:24:30,322.322 INFO    ] No existing commands found in stream
[2026-08-31 17:24:35,345.345 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:24:35,348.348 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-08-31 17:24:36,358.358 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 17:24:36,361.361 INFO    ] Checking for system updates...
[2026-08-31 17:24:36,400.400 INFO    ] 200
[2026-08-31 17:24:36,402.402 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:24:36,455.455 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:24:36,457.457 INFO    ] No update needed
[2026-08-31 17:24:36,460.460 INFO    ] Checking for camera pi updates...
[2026-08-31 17:24:36,498.498 INFO    ] 200
[2026-08-31 17:24:36,500.500 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:24:36,544.544 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:24:36,641.641 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:24:36,643.643 INFO    ] No camera update needed
[2026-08-31 17:24:36,645.645 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:24:36,648.648 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:24:36,653.653 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:24:36,658.658 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:24:38,698.698 INFO    ] ================================================
[2026-08-31 17:24:38,714.714 INFO    ] Launching Daemon at Mon Aug 31 17:24:38 IST 2026
[2026-08-31 17:24:38,724.724 INFO    ] ================================================
[2026-08-31 17:24:39,364.364 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:24:39
[2026-08-31 17:24:40,022.022 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:24:40,318.318 INFO    ] Initializing speech engine...
[2026-08-31 17:24:40,324.324 INFO    ] 2026-08-31 17:24:40
[2026-08-31 17:24:40,609.609 INFO    ] 2026-08-31 17:24:40
[2026-08-31 17:24:40,656.656 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:24:40,935.935 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:24:40,944.944 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:24:41,142.142 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:24:41,160.160 INFO    ] time= 31/08/2026 17:24:41
[2026-08-31 17:24:41,178.178 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:24:41,195.195 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:24:41,313.313 INFO    ] No existing commands found in stream
[2026-08-31 17:24:46,344.344 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:24:46,348.348 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-08-31 17:24:47,603.603 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 17:24:47,606.606 INFO    ] Checking for system updates...
[2026-08-31 17:24:47,643.643 INFO    ] 200
[2026-08-31 17:24:47,646.646 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:24:47,700.700 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:24:47,703.703 INFO    ] No update needed
[2026-08-31 17:24:47,705.705 INFO    ] Checking for camera pi updates...
[2026-08-31 17:24:47,740.740 INFO    ] 200
[2026-08-31 17:24:47,743.743 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:24:47,788.788 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:24:47,845.845 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:24:47,848.848 INFO    ] No camera update needed
[2026-08-31 17:24:47,851.851 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:24:47,853.853 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:24:47,859.859 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:24:47,865.865 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:24:49,906.906 INFO    ] ================================================
[2026-08-31 17:24:49,921.921 INFO    ] Launching Daemon at Mon Aug 31 17:24:49 IST 2026
[2026-08-31 17:24:49,932.932 INFO    ] ================================================
[2026-08-31 17:24:50,570.570 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:24:50
[2026-08-31 17:24:51,225.225 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:24:51,523.523 INFO    ] Initializing speech engine...
[2026-08-31 17:24:51,529.529 INFO    ] 2026-08-31 17:24:51
[2026-08-31 17:24:51,846.846 INFO    ] 2026-08-31 17:24:51
[2026-08-31 17:24:51,929.929 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:24:52,106.106 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:24:52,112.112 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:24:52,319.319 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:24:52,348.348 INFO    ] time= 31/08/2026 17:24:52
[2026-08-31 17:24:52,366.366 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:24:52,395.395 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:24:52,506.506 INFO    ] No existing commands found in stream
[2026-08-31 17:24:57,530.530 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:24:57,533.533 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-08-31 17:25:01,210.210 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 17:25:01,213.213 INFO    ] Checking for system updates...
[2026-08-31 17:25:01,252.252 INFO    ] 200
[2026-08-31 17:25:01,255.255 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:25:01,308.308 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:25:01,311.311 INFO    ] No update needed
[2026-08-31 17:25:01,314.314 INFO    ] Checking for camera pi updates...
[2026-08-31 17:25:01,351.351 INFO    ] 200
[2026-08-31 17:25:01,354.354 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:25:01,424.424 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:25:01,510.510 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:25:01,514.514 INFO    ] No camera update needed
[2026-08-31 17:25:01,553.553 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:25:01,571.571 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:25:01,599.599 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:25:01,607.607 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:25:03,653.653 INFO    ] ================================================
[2026-08-31 17:25:03,668.668 INFO    ] Launching Daemon at Mon Aug 31 17:25:03 IST 2026
[2026-08-31 17:25:03,679.679 INFO    ] ================================================
[2026-08-31 17:25:04,265.265 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:25:04
[2026-08-31 17:25:04,870.870 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:25:05,133.133 INFO    ] Initializing speech engine...
[2026-08-31 17:25:05,157.157 INFO    ] 2026-08-31 17:25:05
[2026-08-31 17:25:05,437.437 INFO    ] 2026-08-31 17:25:05
[2026-08-31 17:25:05,472.472 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:25:05,675.675 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:25:05,680.680 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:25:05,840.840 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:25:05,863.863 INFO    ] time= 31/08/2026 17:25:05
[2026-08-31 17:25:05,871.871 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:25:05,875.875 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:25:05,955.955 INFO    ] No existing commands found in stream
[2026-08-31 17:25:10,970.970 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:25:10,973.973 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-08-31 17:25:11,897.897 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 17:25:11,900.900 INFO    ] Checking for system updates...
[2026-08-31 17:25:11,936.936 INFO    ] 200
[2026-08-31 17:25:11,938.938 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:25:11,995.995 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:25:11,997.997 INFO    ] No update needed
[2026-08-31 17:25:12,000.000 INFO    ] Checking for camera pi updates...
[2026-08-31 17:25:12,034.034 INFO    ] 200
[2026-08-31 17:25:12,036.036 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:25:12,077.077 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:25:12,174.174 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:25:12,177.177 INFO    ] No camera update needed
[2026-08-31 17:25:12,179.179 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:25:12,181.181 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:25:12,187.187 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:25:12,192.192 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:25:14,232.232 INFO    ] ================================================
[2026-08-31 17:25:14,246.246 INFO    ] Launching Daemon at Mon Aug 31 17:25:14 IST 2026
[2026-08-31 17:25:14,257.257 INFO    ] ================================================
[2026-08-31 17:25:14,831.831 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:25:14
[2026-08-31 17:25:15,416.416 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:25:15,684.684 INFO    ] Initializing speech engine...
[2026-08-31 17:25:15,693.693 INFO    ] 2026-08-31 17:25:15
[2026-08-31 17:25:15,940.940 INFO    ] 2026-08-31 17:25:15
[2026-08-31 17:25:15,974.974 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:25:16,167.167 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:25:16,210.210 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:25:16,443.443 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:25:16,491.491 INFO    ] time= 31/08/2026 17:25:16
[2026-08-31 17:25:16,498.498 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:25:16,516.516 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:25:16,643.643 INFO    ] No existing commands found in stream
[2026-08-31 17:25:21,658.658 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:25:21,661.661 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-08-31 17:25:24,500.500 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 17:25:24,503.503 INFO    ] Checking for system updates...
[2026-08-31 17:25:24,541.541 INFO    ] 200
[2026-08-31 17:25:24,543.543 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:25:24,605.605 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:25:24,609.609 INFO    ] No update needed
[2026-08-31 17:25:24,611.611 INFO    ] Checking for camera pi updates...
[2026-08-31 17:25:24,647.647 INFO    ] 200
[2026-08-31 17:25:24,650.650 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:25:24,691.691 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:25:24,777.777 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:25:24,780.780 INFO    ] No camera update needed
[2026-08-31 17:25:24,783.783 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:25:24,786.786 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:25:24,792.792 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:25:24,798.798 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:25:26,841.841 INFO    ] ================================================
[2026-08-31 17:25:26,856.856 INFO    ] Launching Daemon at Mon Aug 31 17:25:26 IST 2026
[2026-08-31 17:25:26,866.866 INFO    ] ================================================
[2026-08-31 17:25:27,449.449 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:25:27
[2026-08-31 17:25:28,119.119 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:25:28,435.435 INFO    ] Initializing speech engine...
[2026-08-31 17:25:28,443.443 INFO    ] 2026-08-31 17:25:28
[2026-08-31 17:25:28,750.750 INFO    ] 2026-08-31 17:25:28
[2026-08-31 17:25:28,838.838 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:25:29,048.048 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:25:29,056.056 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:25:29,251.251 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:25:29,269.269 INFO    ] time= 31/08/2026 17:25:29
[2026-08-31 17:25:29,281.281 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:25:29,310.310 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:25:29,418.418 INFO    ] No existing commands found in stream
[2026-08-31 17:25:34,448.448 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:25:34,452.452 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-08-31 17:25:35,305.305 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 17:25:35,308.308 INFO    ] Checking for system updates...
[2026-08-31 17:25:35,345.345 INFO    ] 200
[2026-08-31 17:25:35,348.348 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:25:35,412.412 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:25:35,414.414 INFO    ] No update needed
[2026-08-31 17:25:35,417.417 INFO    ] Checking for camera pi updates...
[2026-08-31 17:25:35,450.450 INFO    ] 200
[2026-08-31 17:25:35,453.453 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:25:35,498.498 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:25:35,680.680 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:25:35,682.682 INFO    ] No camera update needed
[2026-08-31 17:25:35,684.684 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:25:35,687.687 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:25:35,692.692 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:25:35,697.697 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:25:37,737.737 INFO    ] ================================================
[2026-08-31 17:25:37,752.752 INFO    ] Launching Daemon at Mon Aug 31 17:25:37 IST 2026
[2026-08-31 17:25:37,763.763 INFO    ] ================================================
[2026-08-31 17:25:38,418.418 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:25:38
[2026-08-31 17:25:39,094.094 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:25:39,398.398 INFO    ] Initializing speech engine...
[2026-08-31 17:25:39,412.412 INFO    ] 2026-08-31 17:25:39
[2026-08-31 17:25:39,723.723 INFO    ] 2026-08-31 17:25:39
[2026-08-31 17:25:39,807.807 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:25:40,017.017 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:25:40,026.026 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:25:40,224.224 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:25:40,243.243 INFO    ] time= 31/08/2026 17:25:40
[2026-08-31 17:25:40,273.273 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:25:40,283.283 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:25:40,401.401 INFO    ] No existing commands found in stream
[2026-08-31 17:25:45,432.432 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:25:45,436.436 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-08-31 17:25:47,412.412 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 17:25:47,415.415 INFO    ] Checking for system updates...
[2026-08-31 17:25:47,452.452 INFO    ] 200
[2026-08-31 17:25:47,455.455 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:25:47,524.524 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:25:47,526.526 INFO    ] No update needed
[2026-08-31 17:25:47,529.529 INFO    ] Checking for camera pi updates...
[2026-08-31 17:25:47,563.563 INFO    ] 200
[2026-08-31 17:25:47,566.566 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:25:47,609.609 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:25:47,695.695 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:25:47,697.697 INFO    ] No camera update needed
[2026-08-31 17:25:47,700.700 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:25:47,702.702 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:25:47,707.707 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:25:47,712.712 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:25:49,751.751 INFO    ] ================================================
[2026-08-31 17:25:49,766.766 INFO    ] Launching Daemon at Mon Aug 31 17:25:49 IST 2026
[2026-08-31 17:25:49,777.777 INFO    ] ================================================
[2026-08-31 17:25:50,435.435 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:25:50
[2026-08-31 17:25:51,110.110 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:25:51,426.426 INFO    ] Initializing speech engine...
[2026-08-31 17:25:51,436.436 INFO    ] 2026-08-31 17:25:51
[2026-08-31 17:25:51,743.743 INFO    ] 2026-08-31 17:25:51
[2026-08-31 17:25:51,828.828 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:25:52,041.041 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:25:52,051.051 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:25:52,244.244 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:25:52,263.263 INFO    ] time= 31/08/2026 17:25:52
[2026-08-31 17:25:52,292.292 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:25:52,301.301 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:25:52,442.442 INFO    ] No existing commands found in stream
[2026-08-31 17:25:57,478.478 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:25:57,481.481 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-08-31 17:26:01,633.633 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 17:26:01,637.637 INFO    ] Checking for system updates...
[2026-08-31 17:26:01,710.710 INFO    ] 200
[2026-08-31 17:26:01,713.713 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:26:01,806.806 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:26:01,810.810 INFO    ] No update needed
[2026-08-31 17:26:01,814.814 INFO    ] Checking for camera pi updates...
[2026-08-31 17:26:01,873.873 INFO    ] 200
[2026-08-31 17:26:01,876.876 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:26:01,979.979 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:26:02,089.089 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:26:02,092.092 INFO    ] No camera update needed
[2026-08-31 17:26:02,095.095 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:26:02,098.098 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:26:02,105.105 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:26:02,111.111 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:26:04,154.154 INFO    ] ================================================
[2026-08-31 17:26:04,169.169 INFO    ] Launching Daemon at Mon Aug 31 17:26:04 IST 2026
[2026-08-31 17:26:04,180.180 INFO    ] ================================================
[2026-08-31 17:26:04,747.747 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:26:04
[2026-08-31 17:26:05,333.333 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:26:05,601.601 INFO    ] Initializing speech engine...
[2026-08-31 17:26:05,611.611 INFO    ] 2026-08-31 17:26:05
[2026-08-31 17:26:05,857.857 INFO    ] 2026-08-31 17:26:05
[2026-08-31 17:26:05,892.892 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:26:06,085.085 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:26:06,126.126 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:26:06,289.289 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:26:06,328.328 INFO    ] time= 31/08/2026 17:26:06
[2026-08-31 17:26:06,392.392 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:26:06,420.420 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:26:06,548.548 INFO    ] No existing commands found in stream
[2026-08-31 17:26:11,581.581 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:26:11,584.584 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-08-31 17:26:13,386.386 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 17:26:13,389.389 INFO    ] Checking for system updates...
[2026-08-31 17:26:13,428.428 INFO    ] 200
[2026-08-31 17:26:13,430.430 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:26:13,483.483 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:26:13,485.485 INFO    ] No update needed
[2026-08-31 17:26:13,488.488 INFO    ] Checking for camera pi updates...
[2026-08-31 17:26:13,525.525 INFO    ] 200
[2026-08-31 17:26:13,527.527 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:26:13,568.568 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:26:13,654.654 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:26:13,656.656 INFO    ] No camera update needed
[2026-08-31 17:26:13,659.659 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:26:13,661.661 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:26:13,666.666 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:26:13,671.671 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:26:15,712.712 INFO    ] ================================================
[2026-08-31 17:26:15,727.727 INFO    ] Launching Daemon at Mon Aug 31 17:26:15 IST 2026
[2026-08-31 17:26:15,738.738 INFO    ] ================================================
[2026-08-31 17:26:16,336.336 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:26:16
[2026-08-31 17:26:17,009.009 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:26:17,310.310 INFO    ] Initializing speech engine...
[2026-08-31 17:26:17,324.324 INFO    ] 2026-08-31 17:26:17
[2026-08-31 17:26:17,638.638 INFO    ] 2026-08-31 17:26:17
[2026-08-31 17:26:17,725.725 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:26:17,931.931 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:26:17,940.940 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:26:18,130.130 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:26:18,141.141 INFO    ] time= 31/08/2026 17:26:18
[2026-08-31 17:26:18,160.160 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:26:18,189.189 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:26:18,315.315 INFO    ] No existing commands found in stream
[2026-08-31 17:26:23,346.346 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:26:23,350.350 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-08-31 17:26:27,294.294 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 17:26:27,297.297 INFO    ] Checking for system updates...
[2026-08-31 17:26:27,334.334 INFO    ] 200
[2026-08-31 17:26:27,336.336 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:26:27,397.397 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:26:27,399.399 INFO    ] No update needed
[2026-08-31 17:26:27,402.402 INFO    ] Checking for camera pi updates...
[2026-08-31 17:26:27,439.439 INFO    ] 200
[2026-08-31 17:26:27,441.441 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:26:27,482.482 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:26:27,564.564 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:26:27,567.567 INFO    ] No camera update needed
[2026-08-31 17:26:27,570.570 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:26:27,572.572 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:26:27,578.578 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:26:27,583.583 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:26:29,623.623 INFO    ] ================================================
[2026-08-31 17:26:29,638.638 INFO    ] Launching Daemon at Mon Aug 31 17:26:29 IST 2026
[2026-08-31 17:26:29,649.649 INFO    ] ================================================
[2026-08-31 17:26:30,224.224 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:26:30
[2026-08-31 17:26:30,808.808 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:26:31,055.055 INFO    ] Initializing speech engine...
[2026-08-31 17:26:31,061.061 INFO    ] 2026-08-31 17:26:31
[2026-08-31 17:26:31,334.334 INFO    ] 2026-08-31 17:26:31
[2026-08-31 17:26:31,370.370 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:26:31,627.627 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:26:31,636.636 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:26:31,806.806 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:26:31,867.867 INFO    ] time= 31/08/2026 17:26:31
[2026-08-31 17:26:31,917.917 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:26:31,962.962 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:26:32,040.040 INFO    ] No existing commands found in stream
[2026-08-31 17:26:37,075.075 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:26:37,078.078 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-08-31 17:26:40,979.979 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 17:26:40,981.981 INFO    ] Checking for system updates...
[2026-08-31 17:26:41,023.023 INFO    ] 200
[2026-08-31 17:26:41,025.025 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:26:41,078.078 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:26:41,080.080 INFO    ] No update needed
[2026-08-31 17:26:41,086.086 INFO    ] Checking for camera pi updates...
[2026-08-31 17:26:41,124.124 INFO    ] 200
[2026-08-31 17:26:41,126.126 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:26:41,172.172 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:26:41,262.262 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:26:41,264.264 INFO    ] No camera update needed
[2026-08-31 17:26:41,267.267 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:26:41,269.269 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:26:41,274.274 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:26:41,279.279 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:26:43,320.320 INFO    ] ================================================
[2026-08-31 17:26:43,334.334 INFO    ] Launching Daemon at Mon Aug 31 17:26:43 IST 2026
[2026-08-31 17:26:43,345.345 INFO    ] ================================================
[2026-08-31 17:26:43,912.912 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:26:43
[2026-08-31 17:26:44,497.497 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:26:44,769.769 INFO    ] Initializing speech engine...
[2026-08-31 17:26:44,780.780 INFO    ] 2026-08-31 17:26:44
[2026-08-31 17:26:45,028.028 INFO    ] 2026-08-31 17:26:45
[2026-08-31 17:26:45,064.064 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:26:45,260.260 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:26:45,301.301 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:26:45,469.469 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:26:45,497.497 INFO    ] time= 31/08/2026 17:26:45
[2026-08-31 17:26:45,546.546 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:26:45,603.603 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:26:45,724.724 INFO    ] No existing commands found in stream
[2026-08-31 17:26:50,749.749 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:26:50,752.752 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-08-31 17:26:54,974.974 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 17:26:54,977.977 INFO    ] Checking for system updates...
[2026-08-31 17:26:55,014.014 INFO    ] 200
[2026-08-31 17:26:55,017.017 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:26:55,080.080 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:26:55,083.083 INFO    ] No update needed
[2026-08-31 17:26:55,085.085 INFO    ] Checking for camera pi updates...
[2026-08-31 17:26:55,123.123 INFO    ] 200
[2026-08-31 17:26:55,126.126 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:26:55,173.173 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:26:55,251.251 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:26:55,254.254 INFO    ] No camera update needed
[2026-08-31 17:26:55,257.257 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:26:55,260.260 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:26:55,266.266 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:26:55,272.272 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:26:57,312.312 INFO    ] ================================================
[2026-08-31 17:26:57,327.327 INFO    ] Launching Daemon at Mon Aug 31 17:26:57 IST 2026
[2026-08-31 17:26:57,338.338 INFO    ] ================================================
[2026-08-31 17:26:58,000.000 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:26:57
[2026-08-31 17:26:58,683.683 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:26:58,992.992 INFO    ] Initializing speech engine...
[2026-08-31 17:26:59,001.001 INFO    ] 2026-08-31 17:26:58
[2026-08-31 17:26:59,279.279 INFO    ] 2026-08-31 17:26:59
[2026-08-31 17:26:59,335.335 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:26:59,566.566 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:26:59,576.576 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:26:59,725.725 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:26:59,791.791 INFO    ] time= 31/08/2026 17:26:59
[2026-08-31 17:26:59,848.848 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:26:59,866.866 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:26:59,998.998 INFO    ] No existing commands found in stream
[2026-08-31 17:27:05,016.016 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:27:05,019.019 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-08-31 17:27:08,519.519 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 17:27:08,523.523 INFO    ] Checking for system updates...
[2026-08-31 17:27:08,563.563 INFO    ] 200
[2026-08-31 17:27:08,566.566 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:27:08,627.627 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:27:08,630.630 INFO    ] No update needed
[2026-08-31 17:27:08,633.633 INFO    ] Checking for camera pi updates...
[2026-08-31 17:27:08,669.669 INFO    ] 200
[2026-08-31 17:27:08,672.672 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:27:08,719.719 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:27:08,800.800 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:27:08,803.803 INFO    ] No camera update needed
[2026-08-31 17:27:08,805.805 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:27:08,808.808 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:27:08,815.815 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:27:08,821.821 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:27:10,861.861 INFO    ] ================================================
[2026-08-31 17:27:10,877.877 INFO    ] Launching Daemon at Mon Aug 31 17:27:10 IST 2026
[2026-08-31 17:27:10,888.888 INFO    ] ================================================
[2026-08-31 17:27:11,549.549 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:27:11
[2026-08-31 17:27:12,228.228 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:27:12,534.534 INFO    ] Initializing speech engine...
[2026-08-31 17:27:12,547.547 INFO    ] 2026-08-31 17:27:12
[2026-08-31 17:27:12,834.834 INFO    ] 2026-08-31 17:27:12
[2026-08-31 17:27:12,875.875 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:27:13,141.141 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:27:13,161.161 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:27:13,362.362 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:27:13,381.381 INFO    ] time= 31/08/2026 17:27:13
[2026-08-31 17:27:13,391.391 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:27:13,419.419 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:27:13,574.574 INFO    ] No existing commands found in stream
[2026-08-31 17:27:18,610.610 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:27:18,614.614 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-08-31 17:27:20,729.729 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 17:27:20,732.732 INFO    ] Checking for system updates...
[2026-08-31 17:27:20,769.769 INFO    ] 200
[2026-08-31 17:27:20,772.772 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:27:20,833.833 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:27:20,836.836 INFO    ] No update needed
[2026-08-31 17:27:20,839.839 INFO    ] Checking for camera pi updates...
[2026-08-31 17:27:20,878.878 INFO    ] 200
[2026-08-31 17:27:20,881.881 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:27:20,923.923 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:27:21,005.005 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:27:21,008.008 INFO    ] No camera update needed
[2026-08-31 17:27:21,010.010 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:27:21,013.013 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:27:21,019.019 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:27:21,025.025 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:27:23,067.067 INFO    ] ================================================
[2026-08-31 17:27:23,082.082 INFO    ] Launching Daemon at Mon Aug 31 17:27:23 IST 2026
[2026-08-31 17:27:23,094.094 INFO    ] ================================================
[2026-08-31 17:27:23,761.761 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:27:23
[2026-08-31 17:27:24,444.444 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:27:24,754.754 INFO    ] Initializing speech engine...
[2026-08-31 17:27:24,766.766 INFO    ] 2026-08-31 17:27:24
[2026-08-31 17:27:25,054.054 INFO    ] 2026-08-31 17:27:25
[2026-08-31 17:27:25,093.093 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:27:25,325.325 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:27:25,331.331 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:27:25,570.570 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:27:25,598.598 INFO    ] time= 31/08/2026 17:27:25
[2026-08-31 17:27:25,614.614 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:27:25,634.634 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:27:25,781.781 INFO    ] No existing commands found in stream
[2026-08-31 17:27:30,812.812 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:27:30,816.816 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-08-31 17:27:34,294.294 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 17:27:34,296.296 INFO    ] Checking for system updates...
[2026-08-31 17:27:34,333.333 INFO    ] 200
[2026-08-31 17:27:34,336.336 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:27:34,389.389 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:27:34,392.392 INFO    ] No update needed
[2026-08-31 17:27:34,394.394 INFO    ] Checking for camera pi updates...
[2026-08-31 17:27:34,431.431 INFO    ] 200
[2026-08-31 17:27:34,434.434 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:27:34,475.475 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:27:34,554.554 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:27:34,557.557 INFO    ] No camera update needed
[2026-08-31 17:27:34,559.559 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:27:34,562.562 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:27:34,567.567 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:27:34,572.572 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:27:36,613.613 INFO    ] ================================================
[2026-08-31 17:27:36,629.629 INFO    ] Launching Daemon at Mon Aug 31 17:27:36 IST 2026
[2026-08-31 17:27:36,639.639 INFO    ] ================================================
[2026-08-31 17:27:37,209.209 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:27:37
[2026-08-31 17:27:37,795.795 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:27:38,069.069 INFO    ] Initializing speech engine...
[2026-08-31 17:27:38,078.078 INFO    ] 2026-08-31 17:27:38
[2026-08-31 17:27:38,334.334 INFO    ] 2026-08-31 17:27:38
[2026-08-31 17:27:38,363.363 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:27:38,606.606 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:27:38,616.616 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:27:38,746.746 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:27:38,788.788 INFO    ] time= 31/08/2026 17:27:38
[2026-08-31 17:27:38,843.843 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:27:38,879.879 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:27:39,010.010 INFO    ] No existing commands found in stream
[2026-08-31 17:27:44,034.034 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:27:44,037.037 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-08-31 17:27:44,930.930 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 17:27:44,932.932 INFO    ] Checking for system updates...
[2026-08-31 17:27:44,969.969 INFO    ] 200
[2026-08-31 17:27:44,972.972 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:27:45,024.024 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:27:45,026.026 INFO    ] No update needed
[2026-08-31 17:27:45,029.029 INFO    ] Checking for camera pi updates...
[2026-08-31 17:27:45,063.063 INFO    ] 200
[2026-08-31 17:27:45,066.066 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:27:45,108.108 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:27:45,288.288 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:27:45,290.290 INFO    ] No camera update needed
[2026-08-31 17:27:45,293.293 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:27:45,296.296 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:27:45,302.302 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:27:45,308.308 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:27:47,350.350 INFO    ] ================================================
[2026-08-31 17:27:47,364.364 INFO    ] Launching Daemon at Mon Aug 31 17:27:47 IST 2026
[2026-08-31 17:27:47,375.375 INFO    ] ================================================
[2026-08-31 17:27:47,946.946 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:27:47
[2026-08-31 17:27:48,533.533 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:27:48,803.803 INFO    ] Initializing speech engine...
[2026-08-31 17:27:48,813.813 INFO    ] 2026-08-31 17:27:48
[2026-08-31 17:27:49,058.058 INFO    ] 2026-08-31 17:27:49
[2026-08-31 17:27:49,092.092 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:27:49,344.344 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:27:49,353.353 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:27:49,573.573 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:27:49,610.610 INFO    ] time= 31/08/2026 17:27:49
[2026-08-31 17:27:49,628.628 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:27:49,636.636 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:27:49,763.763 INFO    ] No existing commands found in stream
[2026-08-31 17:27:54,772.772 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:27:54,775.775 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-08-31 17:27:58,820.820 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 17:27:58,822.822 INFO    ] Checking for system updates...
[2026-08-31 17:27:58,858.858 INFO    ] 200
[2026-08-31 17:27:58,860.860 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:27:58,916.916 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:27:58,919.919 INFO    ] No update needed
[2026-08-31 17:27:58,922.922 INFO    ] Checking for camera pi updates...
[2026-08-31 17:27:58,955.955 INFO    ] 200
[2026-08-31 17:27:58,958.958 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:27:58,999.999 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:27:59,090.090 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:27:59,092.092 INFO    ] No camera update needed
[2026-08-31 17:27:59,094.094 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:27:59,097.097 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:27:59,102.102 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:27:59,107.107 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:28:01,149.149 INFO    ] ================================================
[2026-08-31 17:28:01,164.164 INFO    ] Launching Daemon at Mon Aug 31 17:28:01 IST 2026
[2026-08-31 17:28:01,175.175 INFO    ] ================================================
[2026-08-31 17:28:01,760.760 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:28:01
[2026-08-31 17:28:02,594.594 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:28:02,973.973 INFO    ] Initializing speech engine...
[2026-08-31 17:28:02,983.983 INFO    ] 2026-08-31 17:28:02
[2026-08-31 17:28:03,346.346 INFO    ] 2026-08-31 17:28:03
[2026-08-31 17:28:03,431.431 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:28:03,660.660 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:28:03,668.668 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:28:03,869.869 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:28:03,887.887 INFO    ] time= 31/08/2026 17:28:03
[2026-08-31 17:28:03,896.896 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:28:03,923.923 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:28:04,031.031 INFO    ] No existing commands found in stream
[2026-08-31 17:28:09,061.061 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:28:09,064.064 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-08-31 17:28:09,665.665 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 17:28:09,668.668 INFO    ] Checking for system updates...
[2026-08-31 17:28:09,704.704 INFO    ] 200
[2026-08-31 17:28:09,707.707 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:28:09,760.760 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:28:09,762.762 INFO    ] No update needed
[2026-08-31 17:28:09,764.764 INFO    ] Checking for camera pi updates...
[2026-08-31 17:28:09,797.797 INFO    ] 200
[2026-08-31 17:28:09,800.800 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:28:09,841.841 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:28:09,924.924 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:28:09,926.926 INFO    ] No camera update needed
[2026-08-31 17:28:09,929.929 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:28:09,931.931 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:28:09,936.936 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:28:09,941.941 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:28:11,982.982 INFO    ] ================================================
[2026-08-31 17:28:12,997.997 INFO    ] Launching Daemon at Mon Aug 31 17:28:11 IST 2026
[2026-08-31 17:28:12,008.008 INFO    ] ================================================
[2026-08-31 17:28:12,658.658 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:28:12
[2026-08-31 17:28:13,316.316 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:28:13,592.592 INFO    ] Initializing speech engine...
[2026-08-31 17:28:13,600.600 INFO    ] 2026-08-31 17:28:13
[2026-08-31 17:28:13,860.860 INFO    ] 2026-08-31 17:28:13
[2026-08-31 17:28:13,912.912 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:28:14,139.139 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:28:14,143.143 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:28:14,338.338 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:28:14,398.398 INFO    ] time= 31/08/2026 17:28:14
[2026-08-31 17:28:14,405.405 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:28:14,420.420 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:28:14,528.528 INFO    ] No existing commands found in stream
[2026-08-31 17:28:19,558.558 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:28:19,561.561 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-08-31 17:28:21,677.677 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 17:28:21,680.680 INFO    ] Checking for system updates...
[2026-08-31 17:28:21,719.719 INFO    ] 200
[2026-08-31 17:28:21,721.721 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:28:21,773.773 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:28:21,775.775 INFO    ] No update needed
[2026-08-31 17:28:21,778.778 INFO    ] Checking for camera pi updates...
[2026-08-31 17:28:21,811.811 INFO    ] 200
[2026-08-31 17:28:21,814.814 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:28:21,854.854 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:28:21,923.923 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:28:21,925.925 INFO    ] No camera update needed
[2026-08-31 17:28:21,928.928 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:28:21,930.930 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:28:21,936.936 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:28:21,941.941 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:28:23,981.981 INFO    ] ================================================
[2026-08-31 17:28:24,997.997 INFO    ] Launching Daemon at Mon Aug 31 17:28:23 IST 2026
[2026-08-31 17:28:24,007.007 INFO    ] ================================================
[2026-08-31 17:28:24,574.574 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:28:24
[2026-08-31 17:28:25,159.159 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:28:25,405.405 INFO    ] Initializing speech engine...
[2026-08-31 17:28:25,419.419 INFO    ] 2026-08-31 17:28:25
[2026-08-31 17:28:25,683.683 INFO    ] 2026-08-31 17:28:25
[2026-08-31 17:28:25,718.718 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:28:25,914.914 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:28:25,971.971 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:28:26,172.172 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:28:26,227.227 INFO    ] time= 31/08/2026 17:28:26
[2026-08-31 17:28:26,241.241 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:28:26,259.259 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:28:26,382.382 INFO    ] No existing commands found in stream
[2026-08-31 17:28:31,403.403 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:28:31,406.406 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-08-31 17:28:32,240.240 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 17:28:32,243.243 INFO    ] Checking for system updates...
[2026-08-31 17:28:32,292.292 INFO    ] 200
[2026-08-31 17:28:32,295.295 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:28:32,351.351 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:28:32,353.353 INFO    ] No update needed
[2026-08-31 17:28:32,356.356 INFO    ] Checking for camera pi updates...
[2026-08-31 17:28:32,395.395 INFO    ] 200
[2026-08-31 17:28:32,398.398 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:28:32,441.441 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:28:32,494.494 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:28:32,497.497 INFO    ] No camera update needed
[2026-08-31 17:28:32,500.500 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:28:32,502.502 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:28:32,508.508 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:28:32,514.514 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:28:34,556.556 INFO    ] ================================================
[2026-08-31 17:28:34,571.571 INFO    ] Launching Daemon at Mon Aug 31 17:28:34 IST 2026
[2026-08-31 17:28:34,582.582 INFO    ] ================================================
[2026-08-31 17:28:35,163.163 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:28:35
[2026-08-31 17:28:35,771.771 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:28:36,041.041 INFO    ] Initializing speech engine...
[2026-08-31 17:28:36,051.051 INFO    ] 2026-08-31 17:28:36
[2026-08-31 17:28:36,311.311 INFO    ] 2026-08-31 17:28:36
[2026-08-31 17:28:36,365.365 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:28:36,612.612 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:28:36,619.619 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:28:36,844.844 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:28:36,851.851 INFO    ] time= 31/08/2026 17:28:36
[2026-08-31 17:28:36,869.869 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:28:36,901.901 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:28:37,002.002 INFO    ] No existing commands found in stream
[2026-08-31 17:28:42,014.014 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:28:42,017.017 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-08-31 17:28:45,093.093 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 17:28:45,096.096 INFO    ] Checking for system updates...
[2026-08-31 17:28:45,132.132 INFO    ] 200
[2026-08-31 17:28:45,134.134 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:28:45,186.186 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:28:45,189.189 INFO    ] No update needed
[2026-08-31 17:28:45,191.191 INFO    ] Checking for camera pi updates...
[2026-08-31 17:28:45,225.225 INFO    ] 200
[2026-08-31 17:28:45,227.227 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:28:45,269.269 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:28:45,367.367 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:28:45,370.370 INFO    ] No camera update needed
[2026-08-31 17:28:45,372.372 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:28:45,374.374 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:28:45,380.380 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:28:45,385.385 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:28:47,425.425 INFO    ] ================================================
[2026-08-31 17:28:47,441.441 INFO    ] Launching Daemon at Mon Aug 31 17:28:47 IST 2026
[2026-08-31 17:28:47,452.452 INFO    ] ================================================
[2026-08-31 17:28:48,097.097 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:28:48
[2026-08-31 17:28:48,718.718 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:28:48,967.967 INFO    ] Initializing speech engine...
[2026-08-31 17:28:48,990.990 INFO    ] 2026-08-31 17:28:48
[2026-08-31 17:28:49,242.242 INFO    ] 2026-08-31 17:28:49
[2026-08-31 17:28:49,278.278 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:28:49,528.528 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:28:49,538.538 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:28:49,741.741 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:28:49,796.796 INFO    ] time= 31/08/2026 17:28:49
[2026-08-31 17:28:49,803.803 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:28:49,821.821 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:28:49,931.931 INFO    ] No existing commands found in stream
[2026-08-31 17:28:54,959.959 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:28:54,962.962 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-08-31 17:28:58,975.975 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 17:28:58,977.977 INFO    ] Checking for system updates...
[2026-08-31 17:28:59,013.013 INFO    ] 200
[2026-08-31 17:28:59,016.016 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:28:59,074.074 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:28:59,077.077 INFO    ] No update needed
[2026-08-31 17:28:59,079.079 INFO    ] Checking for camera pi updates...
[2026-08-31 17:28:59,112.112 INFO    ] 200
[2026-08-31 17:28:59,115.115 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:28:59,155.155 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:28:59,206.206 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:28:59,208.208 INFO    ] No camera update needed
[2026-08-31 17:28:59,211.211 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:28:59,213.213 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:28:59,218.218 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:28:59,223.223 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:29:01,266.266 INFO    ] ================================================
[2026-08-31 17:29:01,282.282 INFO    ] Launching Daemon at Mon Aug 31 17:29:01 IST 2026
[2026-08-31 17:29:01,293.293 INFO    ] ================================================
[2026-08-31 17:29:01,864.864 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:29:01
[2026-08-31 17:29:02,605.605 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:29:02,942.942 INFO    ] Initializing speech engine...
[2026-08-31 17:29:02,953.953 INFO    ] 2026-08-31 17:29:02
[2026-08-31 17:29:03,279.279 INFO    ] 2026-08-31 17:29:03
[2026-08-31 17:29:03,378.378 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:29:03,576.576 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:29:03,588.588 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:29:03,746.746 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:29:03,797.797 INFO    ] time= 31/08/2026 17:29:03
[2026-08-31 17:29:03,842.842 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:29:03,901.901 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:29:03,968.968 INFO    ] No existing commands found in stream
[2026-08-31 17:29:08,980.980 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:29:08,983.983 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-08-31 17:29:11,890.890 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 17:29:11,893.893 INFO    ] Checking for system updates...
[2026-08-31 17:29:11,929.929 INFO    ] 200
[2026-08-31 17:29:11,932.932 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:29:11,990.990 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:29:11,992.992 INFO    ] No update needed
[2026-08-31 17:29:11,994.994 INFO    ] Checking for camera pi updates...
[2026-08-31 17:29:12,028.028 INFO    ] 200
[2026-08-31 17:29:12,030.030 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:29:12,070.070 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:29:12,156.156 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:29:12,158.158 INFO    ] No camera update needed
[2026-08-31 17:29:12,161.161 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:29:12,163.163 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:29:12,168.168 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:29:12,174.174 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:29:14,215.215 INFO    ] ================================================
[2026-08-31 17:29:14,230.230 INFO    ] Launching Daemon at Mon Aug 31 17:29:14 IST 2026
[2026-08-31 17:29:14,242.242 INFO    ] ================================================
[2026-08-31 17:29:14,821.821 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:29:14
[2026-08-31 17:29:15,420.420 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:29:15,701.701 INFO    ] Initializing speech engine...
[2026-08-31 17:29:15,714.714 INFO    ] 2026-08-31 17:29:15
[2026-08-31 17:29:15,980.980 INFO    ] 2026-08-31 17:29:15
[2026-08-31 17:29:16,018.018 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:29:16,213.213 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:29:16,227.227 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:29:16,386.386 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:29:16,394.394 INFO    ] time= 31/08/2026 17:29:16
[2026-08-31 17:29:16,404.404 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:29:16,450.450 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:29:16,568.568 INFO    ] No existing commands found in stream
[2026-08-31 17:29:21,599.599 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:29:21,602.602 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-08-31 17:29:24,456.456 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 17:29:24,458.458 INFO    ] Checking for system updates...
[2026-08-31 17:29:24,494.494 INFO    ] 200
[2026-08-31 17:29:24,497.497 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:29:24,549.549 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:29:24,551.551 INFO    ] No update needed
[2026-08-31 17:29:24,554.554 INFO    ] Checking for camera pi updates...
[2026-08-31 17:29:24,588.588 INFO    ] 200
[2026-08-31 17:29:24,590.590 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:29:24,632.632 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:29:24,711.711 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:29:24,713.713 INFO    ] No camera update needed
[2026-08-31 17:29:24,715.715 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:29:24,718.718 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:29:24,723.723 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:29:24,728.728 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:29:26,769.769 INFO    ] ================================================
[2026-08-31 17:29:26,784.784 INFO    ] Launching Daemon at Mon Aug 31 17:29:26 IST 2026
[2026-08-31 17:29:26,795.795 INFO    ] ================================================
[2026-08-31 17:29:27,363.363 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:29:27
[2026-08-31 17:29:27,945.945 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:29:28,215.215 INFO    ] Initializing speech engine...
[2026-08-31 17:29:28,224.224 INFO    ] 2026-08-31 17:29:28
[2026-08-31 17:29:28,469.469 INFO    ] 2026-08-31 17:29:28
[2026-08-31 17:29:28,504.504 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:29:28,688.688 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:29:28,704.704 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:29:28,842.842 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:29:28,881.881 INFO    ] time= 31/08/2026 17:29:28
[2026-08-31 17:29:28,906.906 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:29:28,948.948 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:29:29,052.052 INFO    ] No existing commands found in stream
[2026-08-31 17:29:34,062.062 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:29:34,065.065 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-08-31 17:29:35,118.118 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 17:29:35,121.121 INFO    ] Checking for system updates...
[2026-08-31 17:29:35,159.159 INFO    ] 200
[2026-08-31 17:29:35,162.162 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:29:35,214.214 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:29:35,217.217 INFO    ] No update needed
[2026-08-31 17:29:35,220.220 INFO    ] Checking for camera pi updates...
[2026-08-31 17:29:35,253.253 INFO    ] 200
[2026-08-31 17:29:35,256.256 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:29:35,301.301 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:29:35,396.396 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:29:35,399.399 INFO    ] No camera update needed
[2026-08-31 17:29:35,401.401 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:29:35,404.404 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:29:35,409.409 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:29:35,414.414 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:29:37,459.459 INFO    ] ================================================
[2026-08-31 17:29:37,474.474 INFO    ] Launching Daemon at Mon Aug 31 17:29:37 IST 2026
[2026-08-31 17:29:37,485.485 INFO    ] ================================================
[2026-08-31 17:29:38,050.050 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:29:38
[2026-08-31 17:29:38,634.634 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:29:38,903.903 INFO    ] Initializing speech engine...
[2026-08-31 17:29:38,912.912 INFO    ] 2026-08-31 17:29:38
[2026-08-31 17:29:39,160.160 INFO    ] 2026-08-31 17:29:39
[2026-08-31 17:29:39,195.195 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:29:39,456.456 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:29:39,461.461 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:29:39,597.597 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:29:39,646.646 INFO    ] time= 31/08/2026 17:29:39
[2026-08-31 17:29:39,690.690 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:29:39,729.729 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:29:39,855.855 INFO    ] No existing commands found in stream
[2026-08-31 17:29:44,880.880 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:29:44,883.883 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-08-31 17:29:46,129.129 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 17:29:46,132.132 INFO    ] Checking for system updates...
[2026-08-31 17:29:46,171.171 INFO    ] 200
[2026-08-31 17:29:46,173.173 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:29:46,232.232 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:29:46,235.235 INFO    ] No update needed
[2026-08-31 17:29:46,237.237 INFO    ] Checking for camera pi updates...
[2026-08-31 17:29:46,275.275 INFO    ] 200
[2026-08-31 17:29:46,277.277 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:29:46,318.318 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:29:46,397.397 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:29:46,400.400 INFO    ] No camera update needed
[2026-08-31 17:29:46,402.402 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:29:46,404.404 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:29:46,410.410 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:29:46,415.415 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:29:48,456.456 INFO    ] ================================================
[2026-08-31 17:29:48,472.472 INFO    ] Launching Daemon at Mon Aug 31 17:29:48 IST 2026
[2026-08-31 17:29:48,483.483 INFO    ] ================================================
[2026-08-31 17:29:49,119.119 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:29:49
[2026-08-31 17:29:49,796.796 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:29:50,097.097 INFO    ] Initializing speech engine...
[2026-08-31 17:29:50,105.105 INFO    ] 2026-08-31 17:29:50
[2026-08-31 17:29:50,383.383 INFO    ] 2026-08-31 17:29:50
[2026-08-31 17:29:50,440.440 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:29:50,663.663 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:29:50,673.673 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:29:50,892.892 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:29:50,932.932 INFO    ] time= 31/08/2026 17:29:50
[2026-08-31 17:29:50,939.939 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:29:50,957.957 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:29:51,056.056 INFO    ] No existing commands found in stream
[2026-08-31 17:29:56,081.081 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:29:56,085.085 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-08-31 17:29:56,731.731 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 17:29:56,734.734 INFO    ] Checking for system updates...
[2026-08-31 17:29:56,770.770 INFO    ] 200
[2026-08-31 17:29:56,773.773 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:29:56,825.825 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:29:56,827.827 INFO    ] No update needed
[2026-08-31 17:29:56,830.830 INFO    ] Checking for camera pi updates...
[2026-08-31 17:29:56,863.863 INFO    ] 200
[2026-08-31 17:29:56,865.865 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:29:56,905.905 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:29:57,079.079 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:29:57,082.082 INFO    ] No camera update needed
[2026-08-31 17:29:57,084.084 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:29:57,086.086 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:29:57,092.092 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:29:57,096.096 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:29:59,138.138 INFO    ] ================================================
[2026-08-31 17:29:59,154.154 INFO    ] Launching Daemon at Mon Aug 31 17:29:59 IST 2026
[2026-08-31 17:29:59,165.165 INFO    ] ================================================
[2026-08-31 17:29:59,783.783 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:29:59
[2026-08-31 17:30:00,457.457 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:30:00,758.758 INFO    ] Initializing speech engine...
[2026-08-31 17:30:00,767.767 INFO    ] 2026-08-31 17:30:00
[2026-08-31 17:30:01,055.055 INFO    ] 2026-08-31 17:30:01
[2026-08-31 17:30:01,100.100 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:30:01,365.365 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:30:01,388.388 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:30:01,585.585 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:30:01,604.604 INFO    ] time= 31/08/2026 17:30:01
[2026-08-31 17:30:01,635.635 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:30:01,644.644 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:30:01,744.744 INFO    ] No existing commands found in stream
[2026-08-31 17:30:06,759.759 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:30:06,762.762 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-08-31 17:30:08,250.250 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 17:30:08,253.253 INFO    ] Checking for system updates...
[2026-08-31 17:30:08,293.293 INFO    ] 200
[2026-08-31 17:30:08,296.296 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:30:08,356.356 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:30:08,359.359 INFO    ] No update needed
[2026-08-31 17:30:08,362.362 INFO    ] Checking for camera pi updates...
[2026-08-31 17:30:08,400.400 INFO    ] 200
[2026-08-31 17:30:08,403.403 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:30:08,448.448 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:30:08,532.532 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:30:08,535.535 INFO    ] No camera update needed
[2026-08-31 17:30:08,538.538 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:30:08,540.540 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:30:08,546.546 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:30:08,552.552 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:30:10,593.593 INFO    ] ================================================
[2026-08-31 17:30:10,609.609 INFO    ] Launching Daemon at Mon Aug 31 17:30:10 IST 2026
[2026-08-31 17:30:10,620.620 INFO    ] ================================================
[2026-08-31 17:30:11,265.265 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:30:11
[2026-08-31 17:30:11,922.922 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:30:12,220.220 INFO    ] Initializing speech engine...
[2026-08-31 17:30:12,229.229 INFO    ] 2026-08-31 17:30:12
[2026-08-31 17:30:12,519.519 INFO    ] 2026-08-31 17:30:12
[2026-08-31 17:30:12,556.556 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:30:12,807.807 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:30:12,812.812 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:30:12,996.996 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:30:13,048.048 INFO    ] time= 31/08/2026 17:30:13
[2026-08-31 17:30:13,055.055 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:30:13,074.074 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:30:13,206.206 INFO    ] No existing commands found in stream
[2026-08-31 17:30:18,229.229 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:30:18,232.232 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-08-31 17:30:21,453.453 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 17:30:21,456.456 INFO    ] Checking for system updates...
[2026-08-31 17:30:21,493.493 INFO    ] 200
[2026-08-31 17:30:21,495.495 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:30:21,549.549 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:30:21,552.552 INFO    ] No update needed
[2026-08-31 17:30:21,555.555 INFO    ] Checking for camera pi updates...
[2026-08-31 17:30:21,590.590 INFO    ] 200
[2026-08-31 17:30:21,592.592 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:30:21,633.633 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:30:21,720.720 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:30:21,723.723 INFO    ] No camera update needed
[2026-08-31 17:30:21,725.725 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:30:21,728.728 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:30:21,734.734 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:30:21,739.739 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:30:23,780.780 INFO    ] ================================================
[2026-08-31 17:30:23,795.795 INFO    ] Launching Daemon at Mon Aug 31 17:30:23 IST 2026
[2026-08-31 17:30:23,806.806 INFO    ] ================================================
[2026-08-31 17:30:24,376.376 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:30:24
[2026-08-31 17:30:24,961.961 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:30:25,231.231 INFO    ] Initializing speech engine...
[2026-08-31 17:30:25,240.240 INFO    ] 2026-08-31 17:30:25
[2026-08-31 17:30:25,488.488 INFO    ] 2026-08-31 17:30:25
[2026-08-31 17:30:25,523.523 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:30:25,774.774 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:30:25,783.783 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:30:25,917.917 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:30:25,941.941 INFO    ] time= 31/08/2026 17:30:25
[2026-08-31 17:30:25,989.989 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:30:26,049.049 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:30:26,197.197 INFO    ] No existing commands found in stream
[2026-08-31 17:30:31,214.214 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:30:31,216.216 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-08-31 17:30:35,570.570 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 17:30:35,573.573 INFO    ] Checking for system updates...
[2026-08-31 17:30:35,608.608 INFO    ] 200
[2026-08-31 17:30:35,610.610 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:30:35,662.662 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:30:35,664.664 INFO    ] No update needed
[2026-08-31 17:30:35,667.667 INFO    ] Checking for camera pi updates...
[2026-08-31 17:30:35,701.701 INFO    ] 200
[2026-08-31 17:30:35,704.704 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:30:35,749.749 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:30:35,821.821 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:30:35,824.824 INFO    ] No camera update needed
[2026-08-31 17:30:35,826.826 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:30:35,828.828 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:30:35,834.834 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:30:35,839.839 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:30:37,879.879 INFO    ] ================================================
[2026-08-31 17:30:37,894.894 INFO    ] Launching Daemon at Mon Aug 31 17:30:37 IST 2026
[2026-08-31 17:30:37,905.905 INFO    ] ================================================
[2026-08-31 17:30:38,474.474 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:30:38
[2026-08-31 17:30:39,059.059 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:30:39,332.332 INFO    ] Initializing speech engine...
[2026-08-31 17:30:39,338.338 INFO    ] 2026-08-31 17:30:39
[2026-08-31 17:30:39,584.584 INFO    ] 2026-08-31 17:30:39
[2026-08-31 17:30:39,619.619 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:30:39,869.869 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:30:39,878.878 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:30:40,100.100 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:30:40,138.138 INFO    ] time= 31/08/2026 17:30:40
[2026-08-31 17:30:40,153.153 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:30:40,162.162 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:30:40,288.288 INFO    ] No existing commands found in stream
[2026-08-31 17:30:45,301.301 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:30:45,303.303 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-08-31 17:30:48,199.199 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 17:30:48,202.202 INFO    ] Checking for system updates...
[2026-08-31 17:30:48,237.237 INFO    ] 200
[2026-08-31 17:30:48,240.240 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:30:48,291.291 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:30:48,294.294 INFO    ] No update needed
[2026-08-31 17:30:48,296.296 INFO    ] Checking for camera pi updates...
[2026-08-31 17:30:48,330.330 INFO    ] 200
[2026-08-31 17:30:48,332.332 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:30:48,372.372 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:30:48,455.455 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:30:48,457.457 INFO    ] No camera update needed
[2026-08-31 17:30:48,460.460 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:30:48,462.462 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:30:48,467.467 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:30:48,472.472 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:30:50,514.514 INFO    ] ================================================
[2026-08-31 17:30:50,529.529 INFO    ] Launching Daemon at Mon Aug 31 17:30:50 IST 2026
[2026-08-31 17:30:50,539.539 INFO    ] ================================================
[2026-08-31 17:30:51,108.108 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:30:51
[2026-08-31 17:30:51,689.689 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:30:51,957.957 INFO    ] Initializing speech engine...
[2026-08-31 17:30:51,966.966 INFO    ] 2026-08-31 17:30:51
[2026-08-31 17:30:52,211.211 INFO    ] 2026-08-31 17:30:52
[2026-08-31 17:30:52,244.244 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:30:52,497.497 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:30:52,505.505 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:30:52,660.660 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:30:52,714.714 INFO    ] time= 31/08/2026 17:30:52
[2026-08-31 17:30:52,766.766 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:30:52,772.772 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:30:52,918.918 INFO    ] No existing commands found in stream
[2026-08-31 17:30:57,933.933 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:30:57,935.935 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-08-31 17:31:01,567.567 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 17:31:01,570.570 INFO    ] Checking for system updates...
[2026-08-31 17:31:01,610.610 INFO    ] 200
[2026-08-31 17:31:01,612.612 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:31:01,664.664 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:31:01,666.666 INFO    ] No update needed
[2026-08-31 17:31:01,669.669 INFO    ] Checking for camera pi updates...
[2026-08-31 17:31:01,703.703 INFO    ] 200
[2026-08-31 17:31:01,705.705 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:31:01,746.746 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:31:01,852.852 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:31:01,856.856 INFO    ] No camera update needed
[2026-08-31 17:31:01,861.861 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:31:01,865.865 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:31:01,874.874 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:31:01,883.883 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:31:03,928.928 INFO    ] ================================================
[2026-08-31 17:31:03,943.943 INFO    ] Launching Daemon at Mon Aug 31 17:31:03 IST 2026
[2026-08-31 17:31:03,954.954 INFO    ] ================================================
[2026-08-31 17:31:04,536.536 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:31:04
[2026-08-31 17:31:05,125.125 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:31:05,394.394 INFO    ] Initializing speech engine...
[2026-08-31 17:31:05,403.403 INFO    ] 2026-08-31 17:31:05
[2026-08-31 17:31:05,653.653 INFO    ] 2026-08-31 17:31:05
[2026-08-31 17:31:05,718.718 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:31:05,967.967 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:31:05,972.972 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:31:06,173.173 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:31:06,207.207 INFO    ] time= 31/08/2026 17:31:06
[2026-08-31 17:31:06,213.213 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:31:06,232.232 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:31:06,358.358 INFO    ] No existing commands found in stream
[2026-08-31 17:31:11,372.372 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:31:11,375.375 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-08-31 17:31:15,335.335 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 17:31:15,338.338 INFO    ] Checking for system updates...
[2026-08-31 17:31:15,374.374 INFO    ] 200
[2026-08-31 17:31:15,376.376 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:31:15,430.430 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:31:15,432.432 INFO    ] No update needed
[2026-08-31 17:31:15,435.435 INFO    ] Checking for camera pi updates...
[2026-08-31 17:31:15,471.471 INFO    ] 200
[2026-08-31 17:31:15,473.473 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:31:15,513.513 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:31:15,605.605 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:31:15,608.608 INFO    ] No camera update needed
[2026-08-31 17:31:15,610.610 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:31:15,612.612 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:31:15,618.618 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:31:15,623.623 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:31:17,662.662 INFO    ] ================================================
[2026-08-31 17:31:17,678.678 INFO    ] Launching Daemon at Mon Aug 31 17:31:17 IST 2026
[2026-08-31 17:31:17,688.688 INFO    ] ================================================
[2026-08-31 17:31:18,291.291 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:31:18
[2026-08-31 17:31:18,946.946 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:31:19,246.246 INFO    ] Initializing speech engine...
[2026-08-31 17:31:19,253.253 INFO    ] 2026-08-31 17:31:19
[2026-08-31 17:31:19,535.535 INFO    ] 2026-08-31 17:31:19
[2026-08-31 17:31:19,579.579 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:31:19,845.845 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:31:19,867.867 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:31:20,066.066 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:31:20,073.073 INFO    ] time= 31/08/2026 17:31:20
[2026-08-31 17:31:20,095.095 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:31:20,121.121 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:31:20,247.247 INFO    ] No existing commands found in stream
[2026-08-31 17:31:25,279.279 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:31:25,282.282 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-08-31 17:31:28,084.084 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 17:31:28,087.087 INFO    ] Checking for system updates...
[2026-08-31 17:31:28,124.124 INFO    ] 200
[2026-08-31 17:31:28,127.127 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:31:28,181.181 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:31:28,183.183 INFO    ] No update needed
[2026-08-31 17:31:28,186.186 INFO    ] Checking for camera pi updates...
[2026-08-31 17:31:28,220.220 INFO    ] 200
[2026-08-31 17:31:28,222.222 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:31:28,263.263 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:31:28,348.348 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:31:28,350.350 INFO    ] No camera update needed
[2026-08-31 17:31:28,352.352 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:31:28,355.355 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:31:28,360.360 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:31:28,365.365 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:31:30,405.405 INFO    ] ================================================
[2026-08-31 17:31:30,420.420 INFO    ] Launching Daemon at Mon Aug 31 17:31:30 IST 2026
[2026-08-31 17:31:30,430.430 INFO    ] ================================================
[2026-08-31 17:31:30,996.996 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:31:30
[2026-08-31 17:31:31,580.580 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:31:31,842.842 INFO    ] Initializing speech engine...
[2026-08-31 17:31:31,866.866 INFO    ] 2026-08-31 17:31:31
[2026-08-31 17:31:32,148.148 INFO    ] 2026-08-31 17:31:32
[2026-08-31 17:31:32,219.219 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:31:32,481.481 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:31:32,487.487 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:31:32,704.704 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:31:32,738.738 INFO    ] time= 31/08/2026 17:31:32
[2026-08-31 17:31:32,757.757 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:31:32,775.775 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:31:32,915.915 INFO    ] No existing commands found in stream
[2026-08-31 17:31:37,946.946 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:31:37,949.949 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-08-31 17:31:41,324.324 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 17:31:41,327.327 INFO    ] Checking for system updates...
[2026-08-31 17:31:41,368.368 INFO    ] 200
[2026-08-31 17:31:41,370.370 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:31:41,429.429 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:31:41,432.432 INFO    ] No update needed
[2026-08-31 17:31:41,434.434 INFO    ] Checking for camera pi updates...
[2026-08-31 17:31:41,471.471 INFO    ] 200
[2026-08-31 17:31:41,474.474 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:31:41,519.519 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:31:41,607.607 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:31:41,610.610 INFO    ] No camera update needed
[2026-08-31 17:31:41,613.613 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:31:41,615.615 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:31:41,621.621 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:31:41,626.626 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:31:43,667.667 INFO    ] ================================================
[2026-08-31 17:31:43,682.682 INFO    ] Launching Daemon at Mon Aug 31 17:31:43 IST 2026
[2026-08-31 17:31:43,692.692 INFO    ] ================================================
[2026-08-31 17:31:44,280.280 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:31:44
[2026-08-31 17:31:44,905.905 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:31:45,201.201 INFO    ] Initializing speech engine...
[2026-08-31 17:31:45,213.213 INFO    ] 2026-08-31 17:31:45
[2026-08-31 17:31:45,489.489 INFO    ] 2026-08-31 17:31:45
[2026-08-31 17:31:45,534.534 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:31:45,815.815 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:31:45,823.823 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:31:46,023.023 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:31:46,043.043 INFO    ] time= 31/08/2026 17:31:46
[2026-08-31 17:31:46,071.071 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:31:46,079.079 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:31:46,212.212 INFO    ] No existing commands found in stream
[2026-08-31 17:31:51,242.242 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:31:51,245.245 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-08-31 17:31:52,132.132 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 17:31:52,135.135 INFO    ] Checking for system updates...
[2026-08-31 17:31:52,172.172 INFO    ] 200
[2026-08-31 17:31:52,174.174 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:31:52,228.228 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:31:52,231.231 INFO    ] No update needed
[2026-08-31 17:31:52,233.233 INFO    ] Checking for camera pi updates...
[2026-08-31 17:31:52,268.268 INFO    ] 200
[2026-08-31 17:31:52,271.271 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:31:52,315.315 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:31:52,397.397 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:31:52,400.400 INFO    ] No camera update needed
[2026-08-31 17:31:52,403.403 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:31:52,405.405 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:31:52,411.411 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:31:52,416.416 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:31:54,457.457 INFO    ] ================================================
[2026-08-31 17:31:54,473.473 INFO    ] Launching Daemon at Mon Aug 31 17:31:54 IST 2026
[2026-08-31 17:31:54,483.483 INFO    ] ================================================
[2026-08-31 17:31:55,050.050 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:31:55
[2026-08-31 17:31:55,634.634 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:31:55,882.882 INFO    ] Initializing speech engine...
[2026-08-31 17:31:55,889.889 INFO    ] 2026-08-31 17:31:55
[2026-08-31 17:31:56,188.188 INFO    ] 2026-08-31 17:31:56
[2026-08-31 17:31:56,227.227 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:31:56,449.449 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:31:56,468.468 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:31:56,600.600 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:31:56,606.606 INFO    ] time= 31/08/2026 17:31:56
[2026-08-31 17:31:56,629.629 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:31:56,681.681 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:31:56,799.799 INFO    ] No existing commands found in stream
[2026-08-31 17:32:01,821.821 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:32:01,825.825 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-08-31 17:32:03,205.205 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 17:32:03,208.208 INFO    ] Checking for system updates...
[2026-08-31 17:32:03,244.244 INFO    ] 200
[2026-08-31 17:32:03,246.246 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:32:03,310.310 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:32:03,313.313 INFO    ] No update needed
[2026-08-31 17:32:03,316.316 INFO    ] Checking for camera pi updates...
[2026-08-31 17:32:03,350.350 INFO    ] 200
[2026-08-31 17:32:03,353.353 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:32:03,415.415 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:32:03,500.500 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:32:03,502.502 INFO    ] No camera update needed
[2026-08-31 17:32:03,504.504 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:32:03,507.507 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:32:03,512.512 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:32:03,517.517 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:32:05,558.558 INFO    ] ================================================
[2026-08-31 17:32:05,573.573 INFO    ] Launching Daemon at Mon Aug 31 17:32:05 IST 2026
[2026-08-31 17:32:05,584.584 INFO    ] ================================================
[2026-08-31 17:32:06,153.153 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:32:06
[2026-08-31 17:32:06,766.766 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:32:07,028.028 INFO    ] Initializing speech engine...
[2026-08-31 17:32:07,043.043 INFO    ] 2026-08-31 17:32:07
[2026-08-31 17:32:07,324.324 INFO    ] 2026-08-31 17:32:07
[2026-08-31 17:32:07,362.362 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:32:07,644.644 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:32:07,652.652 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:32:07,804.804 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:32:07,853.853 INFO    ] time= 31/08/2026 17:32:07
[2026-08-31 17:32:07,892.892 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:32:07,947.947 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:32:08,095.095 INFO    ] No existing commands found in stream
[2026-08-31 17:32:13,120.120 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:32:13,122.122 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-08-31 17:32:17,253.253 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 17:32:17,256.256 INFO    ] Checking for system updates...
[2026-08-31 17:32:17,291.291 INFO    ] 200
[2026-08-31 17:32:17,293.293 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:32:17,346.346 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:32:17,349.349 INFO    ] No update needed
[2026-08-31 17:32:17,351.351 INFO    ] Checking for camera pi updates...
[2026-08-31 17:32:17,385.385 INFO    ] 200
[2026-08-31 17:32:17,387.387 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:32:17,432.432 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:32:17,510.510 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:32:17,512.512 INFO    ] No camera update needed
[2026-08-31 17:32:17,514.514 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:32:17,517.517 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:32:17,522.522 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:32:17,527.527 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:32:19,567.567 INFO    ] ================================================
[2026-08-31 17:32:19,582.582 INFO    ] Launching Daemon at Mon Aug 31 17:32:19 IST 2026
[2026-08-31 17:32:19,592.592 INFO    ] ================================================
[2026-08-31 17:32:20,224.224 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:32:20
[2026-08-31 17:32:20,866.866 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:32:21,134.134 INFO    ] Initializing speech engine...
[2026-08-31 17:32:21,143.143 INFO    ] 2026-08-31 17:32:21
[2026-08-31 17:32:21,391.391 INFO    ] 2026-08-31 17:32:21
[2026-08-31 17:32:21,426.426 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:32:21,681.681 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:32:21,689.689 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:32:21,822.822 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:32:21,870.870 INFO    ] time= 31/08/2026 17:32:21
[2026-08-31 17:32:21,924.924 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:32:21,957.957 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:32:22,100.100 INFO    ] No existing commands found in stream
[2026-08-31 17:32:27,117.117 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:32:27,120.120 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-08-31 17:32:27,621.621 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 17:32:27,624.624 INFO    ] Checking for system updates...
[2026-08-31 17:32:27,659.659 INFO    ] 200
[2026-08-31 17:32:27,662.662 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:32:27,714.714 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:32:27,716.716 INFO    ] No update needed
[2026-08-31 17:32:27,719.719 INFO    ] Checking for camera pi updates...
[2026-08-31 17:32:27,752.752 INFO    ] 200
[2026-08-31 17:32:27,754.754 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:32:27,794.794 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:32:27,872.872 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:32:27,874.874 INFO    ] No camera update needed
[2026-08-31 17:32:27,876.876 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:32:27,879.879 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:32:27,884.884 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:32:27,889.889 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:32:29,929.929 INFO    ] ================================================
[2026-08-31 17:32:29,943.943 INFO    ] Launching Daemon at Mon Aug 31 17:32:29 IST 2026
[2026-08-31 17:32:29,954.954 INFO    ] ================================================
[2026-08-31 17:32:30,519.519 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:32:30
[2026-08-31 17:32:31,102.102 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:32:31,370.370 INFO    ] Initializing speech engine...
[2026-08-31 17:32:31,391.391 INFO    ] 2026-08-31 17:32:31
[2026-08-31 17:32:31,651.651 INFO    ] 2026-08-31 17:32:31
[2026-08-31 17:32:31,688.688 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:32:31,879.879 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:32:31,894.894 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:32:32,065.065 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:32:32,076.076 INFO    ] time= 31/08/2026 17:32:32
[2026-08-31 17:32:32,085.085 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:32:32,147.147 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:32:32,301.301 INFO    ] No existing commands found in stream
[2026-08-31 17:32:37,312.312 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:32:37,315.315 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-08-31 17:32:41,364.364 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 17:32:41,367.367 INFO    ] Checking for system updates...
[2026-08-31 17:32:41,403.403 INFO    ] 200
[2026-08-31 17:32:41,406.406 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:32:41,459.459 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:32:41,462.462 INFO    ] No update needed
[2026-08-31 17:32:41,464.464 INFO    ] Checking for camera pi updates...
[2026-08-31 17:32:41,499.499 INFO    ] 200
[2026-08-31 17:32:41,501.501 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:32:41,543.543 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:32:41,614.614 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:32:41,617.617 INFO    ] No camera update needed
[2026-08-31 17:32:41,620.620 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:32:41,622.622 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:32:41,629.629 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:32:41,634.634 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:32:43,676.676 INFO    ] ================================================
[2026-08-31 17:32:43,691.691 INFO    ] Launching Daemon at Mon Aug 31 17:32:43 IST 2026
[2026-08-31 17:32:43,701.701 INFO    ] ================================================
[2026-08-31 17:32:44,335.335 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:32:44
[2026-08-31 17:32:44,988.988 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:32:45,279.279 INFO    ] Initializing speech engine...
[2026-08-31 17:32:45,290.290 INFO    ] 2026-08-31 17:32:45
[2026-08-31 17:32:45,555.555 INFO    ] 2026-08-31 17:32:45
[2026-08-31 17:32:45,592.592 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:32:45,856.856 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:32:45,862.862 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:32:46,086.086 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:32:46,122.122 INFO    ] time= 31/08/2026 17:32:46
[2026-08-31 17:32:46,129.129 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:32:46,150.150 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:32:46,275.275 INFO    ] No existing commands found in stream
[2026-08-31 17:32:51,290.290 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:32:51,293.293 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-08-31 17:32:55,100.100 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 17:32:55,103.103 INFO    ] Checking for system updates...
[2026-08-31 17:32:55,140.140 INFO    ] 200
[2026-08-31 17:32:55,142.142 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:32:55,194.194 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:32:55,197.197 INFO    ] No update needed
[2026-08-31 17:32:55,200.200 INFO    ] Checking for camera pi updates...
[2026-08-31 17:32:55,235.235 INFO    ] 200
[2026-08-31 17:32:55,238.238 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:32:55,279.279 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:32:55,365.365 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:32:55,369.369 INFO    ] No camera update needed
[2026-08-31 17:32:55,371.371 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:32:55,374.374 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:32:55,380.380 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:32:55,385.385 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:32:57,429.429 INFO    ] ================================================
[2026-08-31 17:32:57,443.443 INFO    ] Launching Daemon at Mon Aug 31 17:32:57 IST 2026
[2026-08-31 17:32:57,454.454 INFO    ] ================================================
[2026-08-31 17:32:58,022.022 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:32:58
[2026-08-31 17:32:58,606.606 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:32:58,866.866 INFO    ] Initializing speech engine...
[2026-08-31 17:32:58,879.879 INFO    ] 2026-08-31 17:32:58
[2026-08-31 17:32:59,159.159 INFO    ] 2026-08-31 17:32:59
[2026-08-31 17:32:59,184.184 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:32:59,400.400 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:32:59,410.410 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:32:59,566.566 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:32:59,573.573 INFO    ] time= 31/08/2026 17:32:59
[2026-08-31 17:32:59,579.579 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:32:59,612.612 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:32:59,737.737 INFO    ] No existing commands found in stream
[2026-08-31 17:33:04,762.762 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:33:04,765.765 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-08-31 17:33:05,571.571 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 17:33:05,574.574 INFO    ] Checking for system updates...
[2026-08-31 17:33:05,609.609 INFO    ] 200
[2026-08-31 17:33:05,612.612 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:33:05,663.663 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:33:05,666.666 INFO    ] No update needed
[2026-08-31 17:33:05,668.668 INFO    ] Checking for camera pi updates...
[2026-08-31 17:33:05,706.706 INFO    ] 200
[2026-08-31 17:33:05,708.708 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:33:05,749.749 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:33:05,836.836 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:33:05,838.838 INFO    ] No camera update needed
[2026-08-31 17:33:05,840.840 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:33:05,843.843 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:33:05,848.848 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:33:05,853.853 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:33:07,893.893 INFO    ] ================================================
[2026-08-31 17:33:07,908.908 INFO    ] Launching Daemon at Mon Aug 31 17:33:07 IST 2026
[2026-08-31 17:33:07,918.918 INFO    ] ================================================
[2026-08-31 17:33:08,526.526 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:33:08
[2026-08-31 17:33:09,194.194 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:33:09,494.494 INFO    ] Initializing speech engine...
[2026-08-31 17:33:09,508.508 INFO    ] 2026-08-31 17:33:09
[2026-08-31 17:33:09,779.779 INFO    ] 2026-08-31 17:33:09
[2026-08-31 17:33:09,833.833 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:33:10,065.065 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:33:10,071.071 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:33:10,304.304 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:33:10,332.332 INFO    ] time= 31/08/2026 17:33:10
[2026-08-31 17:33:10,349.349 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:33:10,368.368 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:33:10,517.517 INFO    ] No existing commands found in stream
[2026-08-31 17:33:15,553.553 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:33:15,556.556 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-08-31 17:33:17,136.136 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 17:33:17,139.139 INFO    ] Checking for system updates...
[2026-08-31 17:33:17,176.176 INFO    ] 200
[2026-08-31 17:33:17,179.179 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:33:17,234.234 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:33:17,236.236 INFO    ] No update needed
[2026-08-31 17:33:17,239.239 INFO    ] Checking for camera pi updates...
[2026-08-31 17:33:17,274.274 INFO    ] 200
[2026-08-31 17:33:17,276.276 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:33:17,319.319 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:33:17,402.402 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:33:17,405.405 INFO    ] No camera update needed
[2026-08-31 17:33:17,408.408 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:33:17,410.410 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:33:17,416.416 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:33:17,422.422 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:33:19,465.465 INFO    ] ================================================
[2026-08-31 17:33:19,480.480 INFO    ] Launching Daemon at Mon Aug 31 17:33:19 IST 2026
[2026-08-31 17:33:19,490.490 INFO    ] ================================================
[2026-08-31 17:33:20,060.060 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:33:20
[2026-08-31 17:33:20,647.647 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:33:20,903.903 INFO    ] Initializing speech engine...
[2026-08-31 17:33:20,912.912 INFO    ] 2026-08-31 17:33:20
[2026-08-31 17:33:21,206.206 INFO    ] 2026-08-31 17:33:21
[2026-08-31 17:33:21,232.232 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:33:21,441.441 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:33:21,454.454 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:33:21,614.614 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:33:21,626.626 INFO    ] time= 31/08/2026 17:33:21
[2026-08-31 17:33:21,634.634 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:33:21,677.677 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:33:21,797.797 INFO    ] No existing commands found in stream
[2026-08-31 17:33:26,823.823 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:33:26,825.825 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-08-31 17:33:27,580.580 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 17:33:27,582.582 INFO    ] Checking for system updates...
[2026-08-31 17:33:27,618.618 INFO    ] 200
[2026-08-31 17:33:27,621.621 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:33:27,674.674 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:33:27,676.676 INFO    ] No update needed
[2026-08-31 17:33:27,679.679 INFO    ] Checking for camera pi updates...
[2026-08-31 17:33:27,712.712 INFO    ] 200
[2026-08-31 17:33:27,715.715 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:33:27,760.760 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:33:27,842.842 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:33:27,844.844 INFO    ] No camera update needed
[2026-08-31 17:33:27,847.847 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:33:27,849.849 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:33:27,855.855 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:33:27,860.860 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:33:29,900.900 INFO    ] ================================================
[2026-08-31 17:33:29,915.915 INFO    ] Launching Daemon at Mon Aug 31 17:33:29 IST 2026
[2026-08-31 17:33:29,925.925 INFO    ] ================================================
[2026-08-31 17:33:30,497.497 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:33:30
[2026-08-31 17:33:31,085.085 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:33:31,340.340 INFO    ] Initializing speech engine...
[2026-08-31 17:33:31,347.347 INFO    ] 2026-08-31 17:33:31
[2026-08-31 17:33:31,644.644 INFO    ] 2026-08-31 17:33:31
[2026-08-31 17:33:31,680.680 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:33:31,864.864 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:33:31,891.891 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:33:32,089.089 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:33:32,096.096 INFO    ] time= 31/08/2026 17:33:32
[2026-08-31 17:33:32,102.102 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:33:32,138.138 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:33:32,298.298 INFO    ] No existing commands found in stream
[2026-08-31 17:33:37,329.329 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:33:37,331.331 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-08-31 17:33:38,320.320 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 17:33:38,322.322 INFO    ] Checking for system updates...
[2026-08-31 17:33:38,359.359 INFO    ] 200
[2026-08-31 17:33:38,362.362 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:33:38,415.415 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:33:38,418.418 INFO    ] No update needed
[2026-08-31 17:33:38,421.421 INFO    ] Checking for camera pi updates...
[2026-08-31 17:33:38,455.455 INFO    ] 200
[2026-08-31 17:33:38,457.457 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:33:38,503.503 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:33:38,584.584 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:33:38,586.586 INFO    ] No camera update needed
[2026-08-31 17:33:38,589.589 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:33:38,591.591 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:33:38,596.596 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:33:38,602.602 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:33:40,643.643 INFO    ] ================================================
[2026-08-31 17:33:40,658.658 INFO    ] Launching Daemon at Mon Aug 31 17:33:40 IST 2026
[2026-08-31 17:33:40,669.669 INFO    ] ================================================
[2026-08-31 17:33:41,252.252 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:33:41
[2026-08-31 17:33:41,850.850 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:33:42,111.111 INFO    ] Initializing speech engine...
[2026-08-31 17:33:42,119.119 INFO    ] 2026-08-31 17:33:42
[2026-08-31 17:33:42,415.415 INFO    ] 2026-08-31 17:33:42
[2026-08-31 17:33:42,451.451 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:33:42,649.649 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:33:42,667.667 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:33:42,831.831 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:33:42,836.836 INFO    ] time= 31/08/2026 17:33:42
[2026-08-31 17:33:42,843.843 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:33:42,896.896 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:33:43,019.019 INFO    ] No existing commands found in stream
[2026-08-31 17:33:48,044.044 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:33:48,048.048 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-08-31 17:33:49,423.423 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 17:33:49,426.426 INFO    ] Checking for system updates...
[2026-08-31 17:33:49,462.462 INFO    ] 200
[2026-08-31 17:33:49,464.464 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:33:49,516.516 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:33:49,519.519 INFO    ] No update needed
[2026-08-31 17:33:49,521.521 INFO    ] Checking for camera pi updates...
[2026-08-31 17:33:49,555.555 INFO    ] 200
[2026-08-31 17:33:49,557.557 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:33:49,598.598 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:33:49,694.694 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:33:49,696.696 INFO    ] No camera update needed
[2026-08-31 17:33:49,699.699 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:33:49,701.701 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:33:49,706.706 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:33:49,712.712 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:33:51,752.752 INFO    ] ================================================
[2026-08-31 17:33:51,767.767 INFO    ] Launching Daemon at Mon Aug 31 17:33:51 IST 2026
[2026-08-31 17:33:51,778.778 INFO    ] ================================================
[2026-08-31 17:33:52,354.354 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:33:52
[2026-08-31 17:33:52,949.949 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:33:53,201.201 INFO    ] Initializing speech engine...
[2026-08-31 17:33:53,214.214 INFO    ] 2026-08-31 17:33:53
[2026-08-31 17:33:53,484.484 INFO    ] 2026-08-31 17:33:53
[2026-08-31 17:33:53,520.520 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:33:53,764.764 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:33:53,785.785 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:33:53,925.925 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:33:53,980.980 INFO    ] time= 31/08/2026 17:33:53
[2026-08-31 17:33:54,024.024 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:33:54,062.062 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:33:54,212.212 INFO    ] No existing commands found in stream
[2026-08-31 17:33:59,226.226 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:33:59,229.229 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-08-31 17:34:02,657.657 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 17:34:02,661.661 INFO    ] Checking for system updates...
[2026-08-31 17:34:02,701.701 INFO    ] 200
[2026-08-31 17:34:02,704.704 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:34:02,764.764 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:34:02,767.767 INFO    ] No update needed
[2026-08-31 17:34:02,770.770 INFO    ] Checking for camera pi updates...
[2026-08-31 17:34:02,817.817 INFO    ] 200
[2026-08-31 17:34:02,820.820 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:34:02,866.866 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:34:02,955.955 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:34:02,958.958 INFO    ] No camera update needed
[2026-08-31 17:34:02,961.961 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:34:02,964.964 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:34:02,970.970 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:34:02,976.976 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:34:05,020.020 INFO    ] ================================================
[2026-08-31 17:34:05,042.042 INFO    ] Launching Daemon at Mon Aug 31 17:34:05 IST 2026
[2026-08-31 17:34:05,058.058 INFO    ] ================================================
[2026-08-31 17:34:05,731.731 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:34:05
[2026-08-31 17:34:06,324.324 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:34:06,592.592 INFO    ] Initializing speech engine...
[2026-08-31 17:34:06,625.625 INFO    ] 2026-08-31 17:34:06
[2026-08-31 17:34:06,921.921 INFO    ] 2026-08-31 17:34:06
[2026-08-31 17:34:06,975.975 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:34:07,259.259 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:34:07,269.269 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:34:07,465.465 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:34:07,484.484 INFO    ] time= 31/08/2026 17:34:07
[2026-08-31 17:34:07,494.494 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:34:07,522.522 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:34:07,638.638 INFO    ] No existing commands found in stream
[2026-08-31 17:34:12,673.673 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:34:12,677.677 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-08-31 17:34:15,253.253 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 17:34:15,257.257 INFO    ] Checking for system updates...
[2026-08-31 17:34:15,293.293 INFO    ] 200
[2026-08-31 17:34:15,296.296 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:34:15,350.350 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:34:15,352.352 INFO    ] No update needed
[2026-08-31 17:34:15,355.355 INFO    ] Checking for camera pi updates...
[2026-08-31 17:34:15,388.388 INFO    ] 200
[2026-08-31 17:34:15,391.391 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:34:15,431.431 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:34:15,609.609 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:34:15,612.612 INFO    ] No camera update needed
[2026-08-31 17:34:15,614.614 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:34:15,616.616 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:34:15,622.622 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:34:15,627.627 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:34:17,667.667 INFO    ] ================================================
[2026-08-31 17:34:17,682.682 INFO    ] Launching Daemon at Mon Aug 31 17:34:17 IST 2026
[2026-08-31 17:34:17,693.693 INFO    ] ================================================
[2026-08-31 17:34:18,259.259 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:34:18
[2026-08-31 17:34:18,846.846 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:34:19,100.100 INFO    ] Initializing speech engine...
[2026-08-31 17:34:19,108.108 INFO    ] 2026-08-31 17:34:19
[2026-08-31 17:34:19,411.411 INFO    ] 2026-08-31 17:34:19
[2026-08-31 17:34:19,437.437 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:34:19,651.651 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:34:19,656.656 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:34:19,795.795 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:34:19,802.802 INFO    ] time= 31/08/2026 17:34:19
[2026-08-31 17:34:19,823.823 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:34:19,845.845 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:34:19,930.930 INFO    ] No existing commands found in stream
[2026-08-31 17:34:24,942.942 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:34:24,944.944 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-08-31 17:34:26,939.939 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 17:34:26,941.941 INFO    ] Checking for system updates...
[2026-08-31 17:34:26,977.977 INFO    ] 200
[2026-08-31 17:34:26,980.980 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:34:27,033.033 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:34:27,035.035 INFO    ] No update needed
[2026-08-31 17:34:27,038.038 INFO    ] Checking for camera pi updates...
[2026-08-31 17:34:27,072.072 INFO    ] 200
[2026-08-31 17:34:27,074.074 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:34:27,114.114 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:34:27,196.196 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:34:27,198.198 INFO    ] No camera update needed
[2026-08-31 17:34:27,201.201 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:34:27,203.203 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:34:27,208.208 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:34:27,213.213 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:34:29,253.253 INFO    ] ================================================
[2026-08-31 17:34:29,268.268 INFO    ] Launching Daemon at Mon Aug 31 17:34:29 IST 2026
[2026-08-31 17:34:29,278.278 INFO    ] ================================================
[2026-08-31 17:34:29,940.940 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:34:29
[2026-08-31 17:34:30,630.630 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:34:30,943.943 INFO    ] Initializing speech engine...
[2026-08-31 17:34:30,957.957 INFO    ] 2026-08-31 17:34:30
[2026-08-31 17:34:31,245.245 INFO    ] 2026-08-31 17:34:31
[2026-08-31 17:34:31,290.290 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:34:31,525.525 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:34:31,531.531 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:34:31,688.688 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:34:31,750.750 INFO    ] time= 31/08/2026 17:34:31
[2026-08-31 17:34:31,801.801 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:34:31,824.824 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:34:31,960.960 INFO    ] No existing commands found in stream
[2026-08-31 17:34:36,986.986 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:34:36,989.989 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-08-31 17:34:37,804.804 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 17:34:37,807.807 INFO    ] Checking for system updates...
[2026-08-31 17:34:37,843.843 INFO    ] 200
[2026-08-31 17:34:37,846.846 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:34:37,898.898 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:34:37,900.900 INFO    ] No update needed
[2026-08-31 17:34:37,903.903 INFO    ] Checking for camera pi updates...
[2026-08-31 17:34:37,942.942 INFO    ] 200
[2026-08-31 17:34:37,944.944 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:34:37,985.985 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:34:38,065.065 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:34:38,068.068 INFO    ] No camera update needed
[2026-08-31 17:34:38,070.070 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:34:38,073.073 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:34:38,078.078 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:34:38,083.083 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:34:40,125.125 INFO    ] ================================================
[2026-08-31 17:34:40,141.141 INFO    ] Launching Daemon at Mon Aug 31 17:34:40 IST 2026
[2026-08-31 17:34:40,153.153 INFO    ] ================================================
[2026-08-31 17:34:40,856.856 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:34:40
[2026-08-31 17:34:41,547.547 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:34:41,826.826 INFO    ] Initializing speech engine...
[2026-08-31 17:34:41,842.842 INFO    ] 2026-08-31 17:34:41
[2026-08-31 17:34:42,113.113 INFO    ] 2026-08-31 17:34:42
[2026-08-31 17:34:42,151.151 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:34:42,393.393 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:34:42,417.417 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:34:42,563.563 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:34:42,569.569 INFO    ] time= 31/08/2026 17:34:42
[2026-08-31 17:34:42,577.577 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:34:42,583.583 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:34:42,661.661 INFO    ] No existing commands found in stream
[2026-08-31 17:34:47,678.678 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:34:47,680.680 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-08-31 17:34:50,858.858 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 17:34:50,861.861 INFO    ] Checking for system updates...
[2026-08-31 17:34:50,897.897 INFO    ] 200
[2026-08-31 17:34:50,899.899 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:34:50,960.960 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:34:50,962.962 INFO    ] No update needed
[2026-08-31 17:34:50,964.964 INFO    ] Checking for camera pi updates...
[2026-08-31 17:34:51,003.003 INFO    ] 200
[2026-08-31 17:34:51,005.005 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:34:51,051.051 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:34:51,139.139 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:34:51,141.141 INFO    ] No camera update needed
[2026-08-31 17:34:51,144.144 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:34:51,146.146 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:34:51,151.151 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:34:51,156.156 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:34:53,198.198 INFO    ] ================================================
[2026-08-31 17:34:53,214.214 INFO    ] Launching Daemon at Mon Aug 31 17:34:53 IST 2026
[2026-08-31 17:34:53,224.224 INFO    ] ================================================
[2026-08-31 17:34:53,792.792 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:34:53
[2026-08-31 17:34:54,377.377 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:34:54,625.625 INFO    ] Initializing speech engine...
[2026-08-31 17:34:54,639.639 INFO    ] 2026-08-31 17:34:54
[2026-08-31 17:34:54,904.904 INFO    ] 2026-08-31 17:34:54
[2026-08-31 17:34:54,942.942 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:34:55,127.127 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:34:55,143.143 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:34:55,277.277 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:34:55,285.285 INFO    ] time= 31/08/2026 17:34:55
[2026-08-31 17:34:55,331.331 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:34:55,356.356 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:34:55,483.483 INFO    ] No existing commands found in stream
[2026-08-31 17:35:00,493.493 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:35:00,496.496 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-08-31 17:35:03,981.981 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 17:35:03,984.984 INFO    ] Checking for system updates...
[2026-08-31 17:35:04,024.024 INFO    ] 200
[2026-08-31 17:35:04,026.026 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:35:04,086.086 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:35:04,088.088 INFO    ] No update needed
[2026-08-31 17:35:04,091.091 INFO    ] Checking for camera pi updates...
[2026-08-31 17:35:04,124.124 INFO    ] 200
[2026-08-31 17:35:04,126.126 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:35:04,166.166 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:35:04,251.251 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:35:04,253.253 INFO    ] No camera update needed
[2026-08-31 17:35:04,255.255 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:35:04,258.258 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:35:04,263.263 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:35:04,268.268 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:35:06,312.312 INFO    ] ================================================
[2026-08-31 17:35:06,327.327 INFO    ] Launching Daemon at Mon Aug 31 17:35:06 IST 2026
[2026-08-31 17:35:06,338.338 INFO    ] ================================================
[2026-08-31 17:35:06,944.944 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:35:06
[2026-08-31 17:35:07,527.527 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:35:07,795.795 INFO    ] Initializing speech engine...
[2026-08-31 17:35:07,804.804 INFO    ] 2026-08-31 17:35:07
[2026-08-31 17:35:08,050.050 INFO    ] 2026-08-31 17:35:08
[2026-08-31 17:35:08,085.085 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:35:08,335.335 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:35:08,344.344 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:35:08,520.520 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:35:08,570.570 INFO    ] time= 31/08/2026 17:35:08
[2026-08-31 17:35:08,606.606 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:35:08,613.613 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:35:08,749.749 INFO    ] No existing commands found in stream
[2026-08-31 17:35:13,770.770 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:35:13,773.773 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-08-31 17:35:18,132.132 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 17:35:18,134.134 INFO    ] Checking for system updates...
[2026-08-31 17:35:18,170.170 INFO    ] 200
[2026-08-31 17:35:18,172.172 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:35:18,228.228 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:35:18,230.230 INFO    ] No update needed
[2026-08-31 17:35:18,233.233 INFO    ] Checking for camera pi updates...
[2026-08-31 17:35:18,268.268 INFO    ] 200
[2026-08-31 17:35:18,270.270 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:35:18,316.316 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:35:18,401.401 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:35:18,403.403 INFO    ] No camera update needed
[2026-08-31 17:35:18,406.406 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:35:18,408.408 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:35:18,413.413 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:35:18,418.418 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:35:20,461.461 INFO    ] ================================================
[2026-08-31 17:35:20,477.477 INFO    ] Launching Daemon at Mon Aug 31 17:35:20 IST 2026
[2026-08-31 17:35:20,487.487 INFO    ] ================================================
[2026-08-31 17:35:21,135.135 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:35:21
[2026-08-31 17:35:21,719.719 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:35:21,996.996 INFO    ] Initializing speech engine...
[2026-08-31 17:35:22,002.002 INFO    ] 2026-08-31 17:35:21
[2026-08-31 17:35:22,249.249 INFO    ] 2026-08-31 17:35:22
[2026-08-31 17:35:22,284.284 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:35:22,482.482 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:35:22,527.527 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:35:22,686.686 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:35:22,729.729 INFO    ] time= 31/08/2026 17:35:22
[2026-08-31 17:35:22,788.788 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:35:22,823.823 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:35:22,879.879 INFO    ] No existing commands found in stream
[2026-08-31 17:35:27,892.892 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:35:27,894.894 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-08-31 17:35:29,095.095 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 17:35:29,098.098 INFO    ] Checking for system updates...
[2026-08-31 17:35:29,138.138 INFO    ] 200
[2026-08-31 17:35:29,141.141 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:35:29,192.192 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:35:29,195.195 INFO    ] No update needed
[2026-08-31 17:35:29,197.197 INFO    ] Checking for camera pi updates...
[2026-08-31 17:35:29,234.234 INFO    ] 200
[2026-08-31 17:35:29,236.236 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:35:29,281.281 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:35:29,365.365 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:35:29,367.367 INFO    ] No camera update needed
[2026-08-31 17:35:29,370.370 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:35:29,372.372 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:35:29,377.377 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:35:29,382.382 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:35:31,423.423 INFO    ] ================================================
[2026-08-31 17:35:31,438.438 INFO    ] Launching Daemon at Mon Aug 31 17:35:31 IST 2026
[2026-08-31 17:35:31,448.448 INFO    ] ================================================
[2026-08-31 17:35:32,047.047 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:35:32
[2026-08-31 17:35:32,676.676 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:35:32,975.975 INFO    ] Initializing speech engine...
[2026-08-31 17:35:32,982.982 INFO    ] 2026-08-31 17:35:32
[2026-08-31 17:35:33,268.268 INFO    ] 2026-08-31 17:35:33
[2026-08-31 17:35:33,310.310 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:35:33,529.529 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:35:33,538.538 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:35:33,739.739 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:35:33,795.795 INFO    ] time= 31/08/2026 17:35:33
[2026-08-31 17:35:33,802.802 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:35:33,820.820 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:35:33,953.953 INFO    ] No existing commands found in stream
[2026-08-31 17:35:38,974.974 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:35:38,977.977 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-08-31 17:35:40,692.692 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 17:35:40,695.695 INFO    ] Checking for system updates...
[2026-08-31 17:35:40,731.731 INFO    ] 200
[2026-08-31 17:35:40,733.733 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:35:40,788.788 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:35:40,790.790 INFO    ] No update needed
[2026-08-31 17:35:40,793.793 INFO    ] Checking for camera pi updates...
[2026-08-31 17:35:40,831.831 INFO    ] 200
[2026-08-31 17:35:40,834.834 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:35:40,878.878 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:35:40,960.960 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:35:40,963.963 INFO    ] No camera update needed
[2026-08-31 17:35:40,965.965 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:35:40,967.967 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:35:40,973.973 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:35:40,978.978 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:35:43,018.018 INFO    ] ================================================
[2026-08-31 17:35:43,032.032 INFO    ] Launching Daemon at Mon Aug 31 17:35:43 IST 2026
[2026-08-31 17:35:43,043.043 INFO    ] ================================================
[2026-08-31 17:35:43,667.667 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:35:43
[2026-08-31 17:35:44,250.250 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:35:44,531.531 INFO    ] Initializing speech engine...
[2026-08-31 17:35:44,540.540 INFO    ] 2026-08-31 17:35:44
[2026-08-31 17:35:44,801.801 INFO    ] 2026-08-31 17:35:44
[2026-08-31 17:35:44,836.836 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:35:45,094.094 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:35:45,103.103 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:35:45,240.240 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:35:45,306.306 INFO    ] time= 31/08/2026 17:35:45
[2026-08-31 17:35:45,365.365 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:35:45,377.377 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:35:45,494.494 INFO    ] No existing commands found in stream
[2026-08-31 17:35:50,519.519 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:35:50,522.522 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-08-31 17:35:52,579.579 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 17:35:52,581.581 INFO    ] Checking for system updates...
[2026-08-31 17:35:52,622.622 INFO    ] 200
[2026-08-31 17:35:52,624.624 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:35:52,685.685 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:35:52,688.688 INFO    ] No update needed
[2026-08-31 17:35:52,690.690 INFO    ] Checking for camera pi updates...
[2026-08-31 17:35:52,723.723 INFO    ] 200
[2026-08-31 17:35:52,726.726 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:35:52,770.770 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:35:52,854.854 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:35:52,857.857 INFO    ] No camera update needed
[2026-08-31 17:35:52,859.859 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:35:52,861.861 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:35:52,867.867 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:35:52,872.872 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:35:54,912.912 INFO    ] ================================================
[2026-08-31 17:35:54,927.927 INFO    ] Launching Daemon at Mon Aug 31 17:35:54 IST 2026
[2026-08-31 17:35:54,937.937 INFO    ] ================================================
[2026-08-31 17:35:55,515.515 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:35:55
[2026-08-31 17:35:56,113.113 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:35:56,385.385 INFO    ] Initializing speech engine...
[2026-08-31 17:35:56,394.394 INFO    ] 2026-08-31 17:35:56
[2026-08-31 17:35:56,654.654 INFO    ] 2026-08-31 17:35:56
[2026-08-31 17:35:56,710.710 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:35:56,936.936 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:35:56,942.942 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:35:57,172.172 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:35:57,197.197 INFO    ] time= 31/08/2026 17:35:57
[2026-08-31 17:35:57,216.216 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:35:57,224.224 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:35:57,376.376 INFO    ] No existing commands found in stream
[2026-08-31 17:36:02,399.399 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:36:02,403.403 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-08-31 17:36:03,059.059 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 17:36:03,062.062 INFO    ] Checking for system updates...
[2026-08-31 17:36:03,120.120 INFO    ] 200
[2026-08-31 17:36:03,122.122 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:36:03,201.201 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:36:03,204.204 INFO    ] No update needed
[2026-08-31 17:36:03,207.207 INFO    ] Checking for camera pi updates...
[2026-08-31 17:36:03,247.247 INFO    ] 200
[2026-08-31 17:36:03,250.250 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:36:03,301.301 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:36:03,386.386 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:36:03,391.391 INFO    ] No camera update needed
[2026-08-31 17:36:03,394.394 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:36:03,397.397 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:36:03,404.404 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:36:03,410.410 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:36:05,453.453 INFO    ] ================================================
[2026-08-31 17:36:05,468.468 INFO    ] Launching Daemon at Mon Aug 31 17:36:05 IST 2026
[2026-08-31 17:36:05,479.479 INFO    ] ================================================
[2026-08-31 17:36:06,123.123 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:36:06
[2026-08-31 17:36:06,805.805 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:36:07,072.072 INFO    ] Initializing speech engine...
[2026-08-31 17:36:07,082.082 INFO    ] 2026-08-31 17:36:07
[2026-08-31 17:36:07,339.339 INFO    ] 2026-08-31 17:36:07
[2026-08-31 17:36:07,391.391 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:36:07,612.612 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:36:07,621.621 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:36:07,754.754 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:36:07,824.824 INFO    ] time= 31/08/2026 17:36:07
[2026-08-31 17:36:07,878.878 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:36:07,887.887 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:36:08,031.031 INFO    ] No existing commands found in stream
[2026-08-31 17:36:13,043.043 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:36:13,045.045 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-08-31 17:36:15,838.838 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 17:36:15,841.841 INFO    ] Checking for system updates...
[2026-08-31 17:36:15,877.877 INFO    ] 200
[2026-08-31 17:36:15,879.879 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:36:15,931.931 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:36:15,934.934 INFO    ] No update needed
[2026-08-31 17:36:15,936.936 INFO    ] Checking for camera pi updates...
[2026-08-31 17:36:15,974.974 INFO    ] 200
[2026-08-31 17:36:15,976.976 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:36:16,025.025 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:36:16,110.110 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:36:16,113.113 INFO    ] No camera update needed
[2026-08-31 17:36:16,115.115 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:36:16,117.117 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:36:16,123.123 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:36:16,128.128 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:36:18,172.172 INFO    ] ================================================
[2026-08-31 17:36:18,187.187 INFO    ] Launching Daemon at Mon Aug 31 17:36:18 IST 2026
[2026-08-31 17:36:18,198.198 INFO    ] ================================================
[2026-08-31 17:36:18,853.853 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:36:18
[2026-08-31 17:36:19,433.433 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:36:19,705.705 INFO    ] Initializing speech engine...
[2026-08-31 17:36:19,711.711 INFO    ] 2026-08-31 17:36:19
[2026-08-31 17:36:19,962.962 INFO    ] 2026-08-31 17:36:19
[2026-08-31 17:36:20,019.019 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:36:20,244.244 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:36:20,249.249 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:36:20,380.380 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:36:20,401.401 INFO    ] time= 31/08/2026 17:36:20
[2026-08-31 17:36:20,455.455 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:36:20,511.511 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:36:20,645.645 INFO    ] No existing commands found in stream
[2026-08-31 17:36:25,669.669 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:36:25,672.672 INFO    ] Waiting 4.00 seconds before fallback handling...
[2026-08-31 17:36:30,160.160 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 17:36:30,162.162 INFO    ] Checking for system updates...
[2026-08-31 17:36:30,202.202 INFO    ] 200
[2026-08-31 17:36:30,205.205 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:36:30,256.256 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:36:30,259.259 INFO    ] No update needed
[2026-08-31 17:36:30,262.262 INFO    ] Checking for camera pi updates...
[2026-08-31 17:36:30,295.295 INFO    ] 200
[2026-08-31 17:36:30,298.298 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:36:30,344.344 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:36:30,528.528 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:36:30,531.531 INFO    ] No camera update needed
[2026-08-31 17:36:30,533.533 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:36:30,535.535 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:36:30,541.541 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:36:30,545.545 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:36:32,587.587 INFO    ] ================================================
[2026-08-31 17:36:32,605.605 INFO    ] Launching Daemon at Mon Aug 31 17:36:32 IST 2026
[2026-08-31 17:36:32,618.618 INFO    ] ================================================
[2026-08-31 17:36:33,212.212 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:36:33
[2026-08-31 17:36:33,797.797 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:36:34,047.047 INFO    ] Initializing speech engine...
[2026-08-31 17:36:34,069.069 INFO    ] 2026-08-31 17:36:34
[2026-08-31 17:36:34,321.321 INFO    ] 2026-08-31 17:36:34
[2026-08-31 17:36:34,356.356 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:36:34,608.608 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:36:34,617.617 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:36:34,813.813 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:36:34,875.875 INFO    ] time= 31/08/2026 17:36:34
[2026-08-31 17:36:34,881.881 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:36:34,897.897 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:36:35,010.010 INFO    ] No existing commands found in stream
[2026-08-31 17:36:40,037.037 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:36:40,040.040 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-08-31 17:36:42,650.650 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 17:36:42,653.653 INFO    ] Checking for system updates...
[2026-08-31 17:36:42,695.695 INFO    ] 200
[2026-08-31 17:36:42,698.698 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:36:42,764.764 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:36:42,767.767 INFO    ] No update needed
[2026-08-31 17:36:42,771.771 INFO    ] Checking for camera pi updates...
[2026-08-31 17:36:42,806.806 INFO    ] 200
[2026-08-31 17:36:42,810.810 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:36:42,850.850 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:36:42,941.941 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:36:42,943.943 INFO    ] No camera update needed
[2026-08-31 17:36:42,946.946 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:36:42,948.948 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:36:42,953.953 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:36:42,958.958 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:36:45,000.000 INFO    ] ================================================
[2026-08-31 17:36:45,016.016 INFO    ] Launching Daemon at Mon Aug 31 17:36:45 IST 2026
[2026-08-31 17:36:45,028.028 INFO    ] ================================================
[2026-08-31 17:36:45,596.596 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:36:45
[2026-08-31 17:36:46,179.179 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:36:46,446.446 INFO    ] Initializing speech engine...
[2026-08-31 17:36:46,456.456 INFO    ] 2026-08-31 17:36:46
[2026-08-31 17:36:46,708.708 INFO    ] 2026-08-31 17:36:46
[2026-08-31 17:36:46,766.766 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:36:46,987.987 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:36:46,996.996 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:36:47,209.209 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:36:47,253.253 INFO    ] time= 31/08/2026 17:36:47
[2026-08-31 17:36:47,259.259 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:36:47,278.278 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:36:47,403.403 INFO    ] No existing commands found in stream
[2026-08-31 17:36:52,418.418 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:36:52,421.421 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-08-31 17:36:55,089.089 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 17:36:55,092.092 INFO    ] Checking for system updates...
[2026-08-31 17:36:55,127.127 INFO    ] 200
[2026-08-31 17:36:55,130.130 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:36:55,185.185 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:36:55,188.188 INFO    ] No update needed
[2026-08-31 17:36:55,190.190 INFO    ] Checking for camera pi updates...
[2026-08-31 17:36:55,224.224 INFO    ] 200
[2026-08-31 17:36:55,226.226 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:36:55,274.274 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:36:55,359.359 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:36:55,362.362 INFO    ] No camera update needed
[2026-08-31 17:36:55,364.364 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:36:55,366.366 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:36:55,372.372 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:36:55,377.377 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:36:57,420.420 INFO    ] ================================================
[2026-08-31 17:36:57,436.436 INFO    ] Launching Daemon at Mon Aug 31 17:36:57 IST 2026
[2026-08-31 17:36:57,447.447 INFO    ] ================================================
[2026-08-31 17:36:58,018.018 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:36:58
[2026-08-31 17:36:58,610.610 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:36:58,876.876 INFO    ] Initializing speech engine...
[2026-08-31 17:36:58,901.901 INFO    ] 2026-08-31 17:36:58
[2026-08-31 17:36:59,180.180 INFO    ] 2026-08-31 17:36:59
[2026-08-31 17:36:59,216.216 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:36:59,417.417 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:36:59,431.431 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:36:59,605.605 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:36:59,634.634 INFO    ] time= 31/08/2026 17:36:59
[2026-08-31 17:36:59,682.682 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:36:59,689.689 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:36:59,807.807 INFO    ] No existing commands found in stream
[2026-08-31 17:37:04,832.832 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:37:04,835.835 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-08-31 17:37:06,961.961 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 17:37:06,964.964 INFO    ] Checking for system updates...
[2026-08-31 17:37:07,003.003 INFO    ] 200
[2026-08-31 17:37:07,005.005 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:37:07,058.058 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:37:07,060.060 INFO    ] No update needed
[2026-08-31 17:37:07,063.063 INFO    ] Checking for camera pi updates...
[2026-08-31 17:37:07,096.096 INFO    ] 200
[2026-08-31 17:37:07,098.098 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:37:07,138.138 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:37:07,202.202 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:37:07,205.205 INFO    ] No camera update needed
[2026-08-31 17:37:07,207.207 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:37:07,209.209 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:37:07,215.215 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:37:07,220.220 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:37:09,260.260 INFO    ] ================================================
[2026-08-31 17:37:09,275.275 INFO    ] Launching Daemon at Mon Aug 31 17:37:09 IST 2026
[2026-08-31 17:37:09,286.286 INFO    ] ================================================
[2026-08-31 17:37:09,852.852 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:37:09
[2026-08-31 17:37:10,436.436 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:37:10,699.699 INFO    ] Initializing speech engine...
[2026-08-31 17:37:10,723.723 INFO    ] 2026-08-31 17:37:10
[2026-08-31 17:37:10,999.999 INFO    ] 2026-08-31 17:37:10
[2026-08-31 17:37:11,038.038 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:37:11,332.332 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:37:11,343.343 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:37:11,498.498 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:37:11,504.504 INFO    ] time= 31/08/2026 17:37:11
[2026-08-31 17:37:11,523.523 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:37:11,573.573 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:37:11,656.656 INFO    ] No existing commands found in stream
[2026-08-31 17:37:16,668.668 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:37:16,671.671 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-08-31 17:37:20,907.907 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 17:37:20,910.910 INFO    ] Checking for system updates...
[2026-08-31 17:37:20,949.949 INFO    ] 200
[2026-08-31 17:37:20,952.952 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:37:21,006.006 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:37:21,009.009 INFO    ] No update needed
[2026-08-31 17:37:21,012.012 INFO    ] Checking for camera pi updates...
[2026-08-31 17:37:21,054.054 INFO    ] 200
[2026-08-31 17:37:21,056.056 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:37:21,099.099 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:37:21,174.174 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:37:21,177.177 INFO    ] No camera update needed
[2026-08-31 17:37:21,180.180 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:37:21,182.182 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:37:21,189.189 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:37:21,194.194 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:37:23,237.237 INFO    ] ================================================
[2026-08-31 17:37:23,253.253 INFO    ] Launching Daemon at Mon Aug 31 17:37:23 IST 2026
[2026-08-31 17:37:23,264.264 INFO    ] ================================================
[2026-08-31 17:37:23,940.940 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:37:23
[2026-08-31 17:37:24,627.627 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:37:24,932.932 INFO    ] Initializing speech engine...
[2026-08-31 17:37:24,946.946 INFO    ] 2026-08-31 17:37:24
[2026-08-31 17:37:25,202.202 INFO    ] 2026-08-31 17:37:25
[2026-08-31 17:37:25,257.257 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:37:25,482.482 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:37:25,487.487 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:37:25,699.699 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:37:25,744.744 INFO    ] time= 31/08/2026 17:37:25
[2026-08-31 17:37:25,750.750 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:37:25,772.772 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:37:25,890.890 INFO    ] No existing commands found in stream
[2026-08-31 17:37:30,909.909 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:37:30,912.912 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-08-31 17:37:35,240.240 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 17:37:35,243.243 INFO    ] Checking for system updates...
[2026-08-31 17:37:35,282.282 INFO    ] 200
[2026-08-31 17:37:35,285.285 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:37:35,345.345 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:37:35,348.348 INFO    ] No update needed
[2026-08-31 17:37:35,350.350 INFO    ] Checking for camera pi updates...
[2026-08-31 17:37:35,383.383 INFO    ] 200
[2026-08-31 17:37:35,385.385 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:37:35,436.436 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:37:35,513.513 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:37:35,515.515 INFO    ] No camera update needed
[2026-08-31 17:37:35,518.518 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:37:35,520.520 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:37:35,525.525 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:37:35,530.530 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:37:37,571.571 INFO    ] ================================================
[2026-08-31 17:37:37,586.586 INFO    ] Launching Daemon at Mon Aug 31 17:37:37 IST 2026
[2026-08-31 17:37:37,598.598 INFO    ] ================================================
[2026-08-31 17:37:38,203.203 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:37:38
[2026-08-31 17:37:38,855.855 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:37:39,168.168 INFO    ] Initializing speech engine...
[2026-08-31 17:37:39,177.177 INFO    ] 2026-08-31 17:37:39
[2026-08-31 17:37:39,457.457 INFO    ] 2026-08-31 17:37:39
[2026-08-31 17:37:39,513.513 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:37:39,765.765 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:37:39,774.774 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:37:40,012.012 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:37:40,019.019 INFO    ] time= 31/08/2026 17:37:40
[2026-08-31 17:37:40,040.040 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:37:40,067.067 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:37:40,165.165 INFO    ] No existing commands found in stream
[2026-08-31 17:37:45,188.188 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:37:45,191.191 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-08-31 17:37:48,348.348 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 17:37:48,351.351 INFO    ] Checking for system updates...
[2026-08-31 17:37:48,388.388 INFO    ] 200
[2026-08-31 17:37:48,390.390 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:37:48,446.446 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:37:48,449.449 INFO    ] No update needed
[2026-08-31 17:37:48,452.452 INFO    ] Checking for camera pi updates...
[2026-08-31 17:37:48,485.485 INFO    ] 200
[2026-08-31 17:37:48,488.488 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:37:48,528.528 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:37:48,620.620 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:37:48,623.623 INFO    ] No camera update needed
[2026-08-31 17:37:48,625.625 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:37:48,628.628 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:37:48,634.634 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:37:48,639.639 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:37:50,679.679 INFO    ] ================================================
[2026-08-31 17:37:50,694.694 INFO    ] Launching Daemon at Mon Aug 31 17:37:50 IST 2026
[2026-08-31 17:37:50,706.706 INFO    ] ================================================
[2026-08-31 17:37:51,292.292 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:37:51
[2026-08-31 17:37:51,885.885 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:37:52,144.144 INFO    ] Initializing speech engine...
[2026-08-31 17:37:52,150.150 INFO    ] 2026-08-31 17:37:52
[2026-08-31 17:37:52,446.446 INFO    ] 2026-08-31 17:37:52
[2026-08-31 17:37:52,484.484 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:37:52,686.686 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:37:52,703.703 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:37:52,870.870 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:37:52,875.875 INFO    ] time= 31/08/2026 17:37:52
[2026-08-31 17:37:52,881.881 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:37:52,909.909 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:37:53,029.029 INFO    ] No existing commands found in stream
[2026-08-31 17:37:58,054.054 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:37:58,057.057 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-08-31 17:38:00,200.200 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 17:38:00,203.203 INFO    ] Checking for system updates...
[2026-08-31 17:38:00,254.254 INFO    ] 200
[2026-08-31 17:38:00,257.257 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:38:00,310.310 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:38:00,313.313 INFO    ] No update needed
[2026-08-31 17:38:00,315.315 INFO    ] Checking for camera pi updates...
[2026-08-31 17:38:00,353.353 INFO    ] 200
[2026-08-31 17:38:00,355.355 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:38:00,395.395 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:38:00,479.479 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:38:00,482.482 INFO    ] No camera update needed
[2026-08-31 17:38:00,485.485 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:38:00,488.488 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:38:00,496.496 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:38:00,502.502 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:38:02,546.546 INFO    ] ================================================
[2026-08-31 17:38:02,565.565 INFO    ] Launching Daemon at Mon Aug 31 17:38:02 IST 2026
[2026-08-31 17:38:02,596.596 INFO    ] ================================================
[2026-08-31 17:38:03,230.230 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:38:03
[2026-08-31 17:38:03,858.858 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:38:04,105.105 INFO    ] Initializing speech engine...
[2026-08-31 17:38:04,114.114 INFO    ] 2026-08-31 17:38:04
[2026-08-31 17:38:04,403.403 INFO    ] 2026-08-31 17:38:04
[2026-08-31 17:38:04,440.440 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:38:04,637.637 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:38:04,650.650 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:38:04,816.816 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:38:04,825.825 INFO    ] time= 31/08/2026 17:38:04
[2026-08-31 17:38:04,832.832 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:38:04,870.870 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:38:04,995.995 INFO    ] No existing commands found in stream
[2026-08-31 17:38:10,015.015 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:38:10,018.018 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-08-31 17:38:11,103.103 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 17:38:11,105.105 INFO    ] Checking for system updates...
[2026-08-31 17:38:11,141.141 INFO    ] 200
[2026-08-31 17:38:11,143.143 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:38:11,197.197 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:38:11,200.200 INFO    ] No update needed
[2026-08-31 17:38:11,202.202 INFO    ] Checking for camera pi updates...
[2026-08-31 17:38:11,246.246 INFO    ] 200
[2026-08-31 17:38:11,249.249 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:38:11,301.301 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:38:11,374.374 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:38:11,376.376 INFO    ] No camera update needed
[2026-08-31 17:38:11,379.379 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:38:11,381.381 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:38:11,386.386 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:38:11,391.391 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:38:13,435.435 INFO    ] ================================================
[2026-08-31 17:38:13,451.451 INFO    ] Launching Daemon at Mon Aug 31 17:38:13 IST 2026
[2026-08-31 17:38:13,462.462 INFO    ] ================================================
[2026-08-31 17:38:14,032.032 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:38:14
[2026-08-31 17:38:14,615.615 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:38:14,887.887 INFO    ] Initializing speech engine...
[2026-08-31 17:38:14,895.895 INFO    ] 2026-08-31 17:38:14
[2026-08-31 17:38:15,153.153 INFO    ] 2026-08-31 17:38:15
[2026-08-31 17:38:15,183.183 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:38:15,427.427 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:38:15,436.436 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:38:15,655.655 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:38:15,694.694 INFO    ] time= 31/08/2026 17:38:15
[2026-08-31 17:38:15,700.700 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:38:15,720.720 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:38:15,849.849 INFO    ] No existing commands found in stream
[2026-08-31 17:38:20,863.863 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:38:20,866.866 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-08-31 17:38:22,308.308 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 17:38:22,311.311 INFO    ] Checking for system updates...
[2026-08-31 17:38:22,347.347 INFO    ] 200
[2026-08-31 17:38:22,350.350 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:38:22,403.403 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:38:22,405.405 INFO    ] No update needed
[2026-08-31 17:38:22,408.408 INFO    ] Checking for camera pi updates...
[2026-08-31 17:38:22,441.441 INFO    ] 200
[2026-08-31 17:38:22,444.444 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:38:22,484.484 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:38:22,565.565 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:38:22,567.567 INFO    ] No camera update needed
[2026-08-31 17:38:22,570.570 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:38:22,572.572 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:38:22,577.577 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:38:22,582.582 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:38:24,625.625 INFO    ] ================================================
[2026-08-31 17:38:24,640.640 INFO    ] Launching Daemon at Mon Aug 31 17:38:24 IST 2026
[2026-08-31 17:38:24,651.651 INFO    ] ================================================
[2026-08-31 17:38:25,235.235 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:38:25
[2026-08-31 17:38:25,833.833 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:38:26,107.107 INFO    ] Initializing speech engine...
[2026-08-31 17:38:26,116.116 INFO    ] 2026-08-31 17:38:26
[2026-08-31 17:38:26,366.366 INFO    ] 2026-08-31 17:38:26
[2026-08-31 17:38:26,408.408 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:38:26,657.657 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:38:26,662.662 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:38:26,795.795 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:38:26,855.855 INFO    ] time= 31/08/2026 17:38:26
[2026-08-31 17:38:26,910.910 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:38:26,929.929 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:38:27,049.049 INFO    ] No existing commands found in stream
[2026-08-31 17:38:32,081.081 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:38:32,085.085 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-08-31 17:38:34,908.908 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 17:38:34,911.911 INFO    ] Checking for system updates...
[2026-08-31 17:38:34,951.951 INFO    ] 200
[2026-08-31 17:38:34,953.953 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:38:35,006.006 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:38:35,009.009 INFO    ] No update needed
[2026-08-31 17:38:35,011.011 INFO    ] Checking for camera pi updates...
[2026-08-31 17:38:35,049.049 INFO    ] 200
[2026-08-31 17:38:35,052.052 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:38:35,100.100 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:38:35,175.175 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:38:35,177.177 INFO    ] No camera update needed
[2026-08-31 17:38:35,180.180 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:38:35,182.182 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:38:35,188.188 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:38:35,193.193 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:38:37,232.232 INFO    ] ================================================
[2026-08-31 17:38:37,248.248 INFO    ] Launching Daemon at Mon Aug 31 17:38:37 IST 2026
[2026-08-31 17:38:37,259.259 INFO    ] ================================================
[2026-08-31 17:38:37,910.910 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:38:37
[2026-08-31 17:38:38,583.583 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:38:38,887.887 INFO    ] Initializing speech engine...
[2026-08-31 17:38:38,901.901 INFO    ] 2026-08-31 17:38:38
[2026-08-31 17:38:39,185.185 INFO    ] 2026-08-31 17:38:39
[2026-08-31 17:38:39,224.224 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:38:39,473.473 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:38:39,493.493 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:38:39,691.691 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:38:39,714.714 INFO    ] time= 31/08/2026 17:38:39
[2026-08-31 17:38:39,733.733 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:38:39,742.742 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:38:39,845.845 INFO    ] No existing commands found in stream
[2026-08-31 17:38:44,871.871 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:38:44,874.874 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-08-31 17:38:48,501.501 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 17:38:48,504.504 INFO    ] Checking for system updates...
[2026-08-31 17:38:48,545.545 INFO    ] 200
[2026-08-31 17:38:48,547.547 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:38:48,606.606 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:38:48,609.609 INFO    ] No update needed
[2026-08-31 17:38:48,612.612 INFO    ] Checking for camera pi updates...
[2026-08-31 17:38:48,646.646 INFO    ] 200
[2026-08-31 17:38:48,648.648 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:38:48,690.690 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:38:48,858.858 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:38:48,860.860 INFO    ] No camera update needed
[2026-08-31 17:38:48,863.863 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:38:48,866.866 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:38:48,871.871 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:38:48,876.876 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:38:50,916.916 INFO    ] ================================================
[2026-08-31 17:38:50,931.931 INFO    ] Launching Daemon at Mon Aug 31 17:38:50 IST 2026
[2026-08-31 17:38:50,942.942 INFO    ] ================================================
[2026-08-31 17:38:51,569.569 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:38:51
[2026-08-31 17:38:52,156.156 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:38:52,422.422 INFO    ] Initializing speech engine...
[2026-08-31 17:38:52,432.432 INFO    ] 2026-08-31 17:38:52
[2026-08-31 17:38:52,678.678 INFO    ] 2026-08-31 17:38:52
[2026-08-31 17:38:52,713.713 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:38:52,967.967 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:38:52,973.973 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:38:53,171.171 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:38:53,230.230 INFO    ] time= 31/08/2026 17:38:53
[2026-08-31 17:38:53,236.236 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:38:53,251.251 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:38:53,380.380 INFO    ] No existing commands found in stream
[2026-08-31 17:38:58,395.395 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:38:58,398.398 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-08-31 17:39:02,605.605 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 17:39:02,609.609 INFO    ] Checking for system updates...
[2026-08-31 17:39:02,653.653 INFO    ] 200
[2026-08-31 17:39:02,656.656 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:39:02,719.719 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:39:02,722.722 INFO    ] No update needed
[2026-08-31 17:39:02,725.725 INFO    ] Checking for camera pi updates...
[2026-08-31 17:39:02,773.773 INFO    ] 200
[2026-08-31 17:39:02,776.776 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:39:02,824.824 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:39:02,946.946 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:39:02,949.949 INFO    ] No camera update needed
[2026-08-31 17:39:02,952.952 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:39:02,955.955 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:39:02,963.963 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:39:02,971.971 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:39:05,012.012 INFO    ] ================================================
[2026-08-31 17:39:05,027.027 INFO    ] Launching Daemon at Mon Aug 31 17:39:05 IST 2026
[2026-08-31 17:39:05,038.038 INFO    ] ================================================
[2026-08-31 17:39:05,693.693 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:39:05
[2026-08-31 17:39:06,375.375 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:39:06,706.706 INFO    ] Initializing speech engine...
[2026-08-31 17:39:06,723.723 INFO    ] 2026-08-31 17:39:06
[2026-08-31 17:39:07,036.036 INFO    ] 2026-08-31 17:39:07
[2026-08-31 17:39:07,121.121 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:39:07,331.331 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:39:07,341.341 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:39:07,534.534 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:39:07,542.542 INFO    ] time= 31/08/2026 17:39:07
[2026-08-31 17:39:07,564.564 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:39:07,592.592 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:39:07,725.725 INFO    ] No existing commands found in stream
[2026-08-31 17:39:12,752.752 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:39:12,756.756 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-08-31 17:39:13,421.421 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 17:39:13,424.424 INFO    ] Checking for system updates...
[2026-08-31 17:39:13,467.467 INFO    ] 200
[2026-08-31 17:39:13,470.470 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:39:13,525.525 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:39:13,528.528 INFO    ] No update needed
[2026-08-31 17:39:13,531.531 INFO    ] Checking for camera pi updates...
[2026-08-31 17:39:13,566.566 INFO    ] 200
[2026-08-31 17:39:13,569.569 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:39:13,615.615 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:39:13,724.724 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:39:13,726.726 INFO    ] No camera update needed
[2026-08-31 17:39:13,729.729 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:39:13,731.731 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:39:13,737.737 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:39:13,742.742 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:39:15,781.781 INFO    ] ================================================
[2026-08-31 17:39:15,796.796 INFO    ] Launching Daemon at Mon Aug 31 17:39:15 IST 2026
[2026-08-31 17:39:15,806.806 INFO    ] ================================================
[2026-08-31 17:39:16,381.381 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:39:16
[2026-08-31 17:39:16,968.968 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:39:17,232.232 INFO    ] Initializing speech engine...
[2026-08-31 17:39:17,260.260 INFO    ] 2026-08-31 17:39:17
[2026-08-31 17:39:17,536.536 INFO    ] 2026-08-31 17:39:17
[2026-08-31 17:39:17,581.581 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:39:17,841.841 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:39:17,852.852 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:39:18,057.057 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:39:18,112.112 INFO    ] time= 31/08/2026 17:39:18
[2026-08-31 17:39:18,118.118 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:39:18,141.141 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:39:18,293.293 INFO    ] No existing commands found in stream
[2026-08-31 17:39:23,324.324 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:39:23,327.327 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-08-31 17:39:26,461.461 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 17:39:26,468.468 INFO    ] Checking for system updates...
[2026-08-31 17:39:26,509.509 INFO    ] 200
[2026-08-31 17:39:26,512.512 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:39:26,573.573 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:39:26,577.577 INFO    ] No update needed
[2026-08-31 17:39:26,580.580 INFO    ] Checking for camera pi updates...
[2026-08-31 17:39:26,622.622 INFO    ] 200
[2026-08-31 17:39:26,626.626 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:39:26,678.678 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:39:26,766.766 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:39:26,770.770 INFO    ] No camera update needed
[2026-08-31 17:39:26,778.778 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:39:26,781.781 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:39:26,791.791 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:39:26,796.796 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:39:28,839.839 INFO    ] ================================================
[2026-08-31 17:39:28,854.854 INFO    ] Launching Daemon at Mon Aug 31 17:39:28 IST 2026
[2026-08-31 17:39:28,864.864 INFO    ] ================================================
[2026-08-31 17:39:29,434.434 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:39:29
[2026-08-31 17:39:30,018.018 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:39:30,272.272 INFO    ] Initializing speech engine...
[2026-08-31 17:39:30,281.281 INFO    ] 2026-08-31 17:39:30
[2026-08-31 17:39:30,581.581 INFO    ] 2026-08-31 17:39:30
[2026-08-31 17:39:30,620.620 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:39:30,875.875 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:39:30,904.904 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:39:31,053.053 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:39:31,095.095 INFO    ] time= 31/08/2026 17:39:31
[2026-08-31 17:39:31,150.150 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:39:31,187.187 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:39:31,333.333 INFO    ] No existing commands found in stream
[2026-08-31 17:39:36,345.345 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:39:36,348.348 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-08-31 17:39:39,776.776 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 17:39:39,779.779 INFO    ] Checking for system updates...
[2026-08-31 17:39:39,820.820 INFO    ] 200
[2026-08-31 17:39:39,822.822 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:39:39,882.882 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:39:39,885.885 INFO    ] No update needed
[2026-08-31 17:39:39,887.887 INFO    ] Checking for camera pi updates...
[2026-08-31 17:39:39,920.920 INFO    ] 200
[2026-08-31 17:39:39,923.923 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:39:39,964.964 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:39:40,044.044 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:39:40,046.046 INFO    ] No camera update needed
[2026-08-31 17:39:40,049.049 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:39:40,051.051 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:39:40,057.057 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:39:40,062.062 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:39:42,101.101 INFO    ] ================================================
[2026-08-31 17:39:42,116.116 INFO    ] Launching Daemon at Mon Aug 31 17:39:42 IST 2026
[2026-08-31 17:39:42,127.127 INFO    ] ================================================
[2026-08-31 17:39:42,691.691 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:39:42
[2026-08-31 17:39:43,274.274 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:39:43,546.546 INFO    ] Initializing speech engine...
[2026-08-31 17:39:43,552.552 INFO    ] 2026-08-31 17:39:43
[2026-08-31 17:39:43,810.810 INFO    ] 2026-08-31 17:39:43
[2026-08-31 17:39:43,839.839 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:39:44,088.088 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:39:44,094.094 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:39:44,223.223 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:39:44,266.266 INFO    ] time= 31/08/2026 17:39:44
[2026-08-31 17:39:44,330.330 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:39:44,356.356 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:39:44,489.489 INFO    ] No existing commands found in stream
[2026-08-31 17:39:49,511.511 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:39:49,514.514 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-08-31 17:39:53,530.530 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 17:39:53,532.532 INFO    ] Checking for system updates...
[2026-08-31 17:39:53,572.572 INFO    ] 200
[2026-08-31 17:39:53,575.575 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:39:53,635.635 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:39:53,638.638 INFO    ] No update needed
[2026-08-31 17:39:53,640.640 INFO    ] Checking for camera pi updates...
[2026-08-31 17:39:53,678.678 INFO    ] 200
[2026-08-31 17:39:53,680.680 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:39:53,721.721 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:39:53,807.807 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:39:53,810.810 INFO    ] No camera update needed
[2026-08-31 17:39:53,812.812 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:39:53,814.814 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:39:53,820.820 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:39:53,825.825 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:39:55,866.866 INFO    ] ================================================
[2026-08-31 17:39:55,881.881 INFO    ] Launching Daemon at Mon Aug 31 17:39:55 IST 2026
[2026-08-31 17:39:55,891.891 INFO    ] ================================================
[2026-08-31 17:39:56,457.457 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:39:56
[2026-08-31 17:39:57,076.076 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:39:57,358.358 INFO    ] Initializing speech engine...
[2026-08-31 17:39:57,384.384 INFO    ] 2026-08-31 17:39:57
[2026-08-31 17:39:57,683.683 INFO    ] 2026-08-31 17:39:57
[2026-08-31 17:39:57,762.762 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:39:57,998.998 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:39:58,008.008 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:39:58,148.148 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:39:58,191.191 INFO    ] time= 31/08/2026 17:39:58
[2026-08-31 17:39:58,246.246 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:39:58,287.287 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:39:58,406.406 INFO    ] No existing commands found in stream
[2026-08-31 17:40:03,420.420 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:40:03,424.424 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-08-31 17:40:08,560.560 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 17:40:08,562.562 INFO    ] Checking for system updates...
[2026-08-31 17:40:08,605.605 INFO    ] 200
[2026-08-31 17:40:08,608.608 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:40:08,666.666 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:40:08,668.668 INFO    ] No update needed
[2026-08-31 17:40:08,671.671 INFO    ] Checking for camera pi updates...
[2026-08-31 17:40:08,703.703 INFO    ] 200
[2026-08-31 17:40:08,706.706 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:40:08,747.747 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:40:08,836.836 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:40:08,838.838 INFO    ] No camera update needed
[2026-08-31 17:40:08,841.841 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:40:08,843.843 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:40:08,848.848 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:40:08,853.853 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:40:10,892.892 INFO    ] ================================================
[2026-08-31 17:40:10,908.908 INFO    ] Launching Daemon at Mon Aug 31 17:40:10 IST 2026
[2026-08-31 17:40:10,918.918 INFO    ] ================================================
[2026-08-31 17:40:11,485.485 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:40:11
[2026-08-31 17:40:12,069.069 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:40:12,338.338 INFO    ] Initializing speech engine...
[2026-08-31 17:40:12,347.347 INFO    ] 2026-08-31 17:40:12
[2026-08-31 17:40:12,592.592 INFO    ] 2026-08-31 17:40:12
[2026-08-31 17:40:12,626.626 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:40:12,876.876 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:40:12,884.884 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:40:13,094.094 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:40:13,142.142 INFO    ] time= 31/08/2026 17:40:13
[2026-08-31 17:40:13,149.149 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:40:13,167.167 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:40:13,281.281 INFO    ] No existing commands found in stream
[2026-08-31 17:40:18,305.305 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:40:18,308.308 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-08-31 17:40:20,319.319 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 17:40:20,321.321 INFO    ] Checking for system updates...
[2026-08-31 17:40:20,360.360 INFO    ] 200
[2026-08-31 17:40:20,363.363 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:40:20,420.420 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:40:20,423.423 INFO    ] No update needed
[2026-08-31 17:40:20,425.425 INFO    ] Checking for camera pi updates...
[2026-08-31 17:40:20,462.462 INFO    ] 200
[2026-08-31 17:40:20,464.464 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:40:20,505.505 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:40:20,590.590 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:40:20,592.592 INFO    ] No camera update needed
[2026-08-31 17:40:20,594.594 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:40:20,597.597 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:40:20,602.602 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:40:20,610.610 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:40:22,650.650 INFO    ] ================================================
[2026-08-31 17:40:22,665.665 INFO    ] Launching Daemon at Mon Aug 31 17:40:22 IST 2026
[2026-08-31 17:40:22,676.676 INFO    ] ================================================
[2026-08-31 17:40:23,254.254 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:40:23
[2026-08-31 17:40:23,849.849 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:40:24,145.145 INFO    ] Initializing speech engine...
[2026-08-31 17:40:24,154.154 INFO    ] 2026-08-31 17:40:24
[2026-08-31 17:40:24,438.438 INFO    ] 2026-08-31 17:40:24
[2026-08-31 17:40:24,482.482 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:40:24,718.718 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:40:24,735.735 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:40:24,927.927 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:40:24,975.975 INFO    ] time= 31/08/2026 17:40:24
[2026-08-31 17:40:24,982.982 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:40:25,003.003 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:40:25,153.153 INFO    ] No existing commands found in stream
[2026-08-31 17:40:30,184.184 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:40:30,187.187 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-08-31 17:40:31,015.015 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 17:40:31,018.018 INFO    ] Checking for system updates...
[2026-08-31 17:40:31,055.055 INFO    ] 200
[2026-08-31 17:40:31,058.058 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:40:31,110.110 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:40:31,112.112 INFO    ] No update needed
[2026-08-31 17:40:31,114.114 INFO    ] Checking for camera pi updates...
[2026-08-31 17:40:31,158.158 INFO    ] 200
[2026-08-31 17:40:31,160.160 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:40:31,204.204 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:40:31,286.286 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:40:31,288.288 INFO    ] No camera update needed
[2026-08-31 17:40:31,291.291 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:40:31,293.293 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:40:31,298.298 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:40:31,303.303 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:40:33,343.343 INFO    ] ================================================
[2026-08-31 17:40:33,358.358 INFO    ] Launching Daemon at Mon Aug 31 17:40:33 IST 2026
[2026-08-31 17:40:33,368.368 INFO    ] ================================================
[2026-08-31 17:40:33,937.937 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:40:33
[2026-08-31 17:40:34,522.522 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:40:34,799.799 INFO    ] Initializing speech engine...
[2026-08-31 17:40:34,808.808 INFO    ] 2026-08-31 17:40:34
[2026-08-31 17:40:35,063.063 INFO    ] 2026-08-31 17:40:35
[2026-08-31 17:40:35,100.100 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:40:35,284.284 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:40:35,303.303 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:40:35,440.440 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:40:35,502.502 INFO    ] time= 31/08/2026 17:40:35
[2026-08-31 17:40:35,509.509 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:40:35,573.573 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:40:35,685.685 INFO    ] No existing commands found in stream
[2026-08-31 17:40:40,697.697 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:40:40,700.700 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-08-31 17:40:42,530.530 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 17:40:42,533.533 INFO    ] Checking for system updates...
[2026-08-31 17:40:42,568.568 INFO    ] 200
[2026-08-31 17:40:42,571.571 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:40:42,629.629 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:40:42,631.631 INFO    ] No update needed
[2026-08-31 17:40:42,633.633 INFO    ] Checking for camera pi updates...
[2026-08-31 17:40:42,670.670 INFO    ] 200
[2026-08-31 17:40:42,672.672 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:40:42,712.712 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:40:42,811.811 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:40:42,813.813 INFO    ] No camera update needed
[2026-08-31 17:40:42,815.815 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:40:42,818.818 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:40:42,823.823 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:40:42,828.828 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:40:44,868.868 INFO    ] ================================================
[2026-08-31 17:40:44,883.883 INFO    ] Launching Daemon at Mon Aug 31 17:40:44 IST 2026
[2026-08-31 17:40:44,895.895 INFO    ] ================================================
[2026-08-31 17:40:45,461.461 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:40:45
[2026-08-31 17:40:46,048.048 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:40:46,317.317 INFO    ] Initializing speech engine...
[2026-08-31 17:40:46,326.326 INFO    ] 2026-08-31 17:40:46
[2026-08-31 17:40:46,572.572 INFO    ] 2026-08-31 17:40:46
[2026-08-31 17:40:46,607.607 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:40:46,805.805 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:40:46,863.863 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:40:47,005.005 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:40:47,059.059 INFO    ] time= 31/08/2026 17:40:47
[2026-08-31 17:40:47,113.113 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:40:47,138.138 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:40:47,195.195 INFO    ] No existing commands found in stream
[2026-08-31 17:40:52,207.207 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:40:52,210.210 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-08-31 17:40:53,822.822 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 17:40:53,824.824 INFO    ] Checking for system updates...
[2026-08-31 17:40:53,860.860 INFO    ] 200
[2026-08-31 17:40:53,863.863 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:40:53,924.924 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:40:53,926.926 INFO    ] No update needed
[2026-08-31 17:40:53,929.929 INFO    ] Checking for camera pi updates...
[2026-08-31 17:40:53,965.965 INFO    ] 200
[2026-08-31 17:40:53,968.968 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:40:54,012.012 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:40:54,193.193 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:40:54,195.195 INFO    ] No camera update needed
[2026-08-31 17:40:54,198.198 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:40:54,200.200 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:40:54,205.205 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:40:54,210.210 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:40:56,251.251 INFO    ] ================================================
[2026-08-31 17:40:56,266.266 INFO    ] Launching Daemon at Mon Aug 31 17:40:56 IST 2026
[2026-08-31 17:40:56,276.276 INFO    ] ================================================
[2026-08-31 17:40:56,841.841 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:40:56
[2026-08-31 17:40:57,427.427 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:40:57,681.681 INFO    ] Initializing speech engine...
[2026-08-31 17:40:57,689.689 INFO    ] 2026-08-31 17:40:57
[2026-08-31 17:40:57,982.982 INFO    ] 2026-08-31 17:40:57
[2026-08-31 17:40:58,021.021 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:40:58,212.212 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:40:58,226.226 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:40:58,390.390 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:40:58,395.395 INFO    ] time= 31/08/2026 17:40:58
[2026-08-31 17:40:58,402.402 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:40:58,424.424 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:40:58,568.568 INFO    ] No existing commands found in stream
[2026-08-31 17:41:03,599.599 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:41:03,602.602 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-08-31 17:41:06,450.450 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 17:41:06,452.452 INFO    ] Checking for system updates...
[2026-08-31 17:41:06,487.487 INFO    ] 200
[2026-08-31 17:41:06,490.490 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:41:06,547.547 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:41:06,550.550 INFO    ] No update needed
[2026-08-31 17:41:06,552.552 INFO    ] Checking for camera pi updates...
[2026-08-31 17:41:06,589.589 INFO    ] 200
[2026-08-31 17:41:06,591.591 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:41:06,632.632 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:41:06,719.719 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:41:06,722.722 INFO    ] No camera update needed
[2026-08-31 17:41:06,727.727 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:41:06,730.730 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:41:06,739.739 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:41:06,751.751 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:41:08,792.792 INFO    ] ================================================
[2026-08-31 17:41:08,808.808 INFO    ] Launching Daemon at Mon Aug 31 17:41:08 IST 2026
[2026-08-31 17:41:08,818.818 INFO    ] ================================================
[2026-08-31 17:41:09,459.459 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:41:09
[2026-08-31 17:41:10,116.116 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:41:10,420.420 INFO    ] Initializing speech engine...
[2026-08-31 17:41:10,430.430 INFO    ] 2026-08-31 17:41:10
[2026-08-31 17:41:10,736.736 INFO    ] 2026-08-31 17:41:10
[2026-08-31 17:41:10,812.812 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:41:10,999.999 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:41:11,005.005 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:41:11,225.225 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:41:11,242.242 INFO    ] time= 31/08/2026 17:41:11
[2026-08-31 17:41:11,260.260 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:41:11,291.291 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:41:11,397.397 INFO    ] No existing commands found in stream
[2026-08-31 17:41:16,427.427 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:41:16,430.430 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-08-31 17:41:18,019.019 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 17:41:18,022.022 INFO    ] Checking for system updates...
[2026-08-31 17:41:18,062.062 INFO    ] 200
[2026-08-31 17:41:18,065.065 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:41:18,123.123 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:41:18,126.126 INFO    ] No update needed
[2026-08-31 17:41:18,129.129 INFO    ] Checking for camera pi updates...
[2026-08-31 17:41:18,163.163 INFO    ] 200
[2026-08-31 17:41:18,166.166 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:41:18,208.208 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:41:18,293.293 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:41:18,295.295 INFO    ] No camera update needed
[2026-08-31 17:41:18,298.298 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:41:18,301.301 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:41:18,307.307 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:41:18,312.312 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:41:20,353.353 INFO    ] ================================================
[2026-08-31 17:41:20,369.369 INFO    ] Launching Daemon at Mon Aug 31 17:41:20 IST 2026
[2026-08-31 17:41:20,380.380 INFO    ] ================================================
[2026-08-31 17:41:21,021.021 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:41:21
[2026-08-31 17:41:21,680.680 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:41:21,984.984 INFO    ] Initializing speech engine...
[2026-08-31 17:41:21,997.997 INFO    ] 2026-08-31 17:41:21
[2026-08-31 17:41:22,269.269 INFO    ] 2026-08-31 17:41:22
[2026-08-31 17:41:22,324.324 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:41:22,571.571 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:41:22,577.577 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:41:22,765.765 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:41:22,811.811 INFO    ] time= 31/08/2026 17:41:22
[2026-08-31 17:41:22,817.817 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:41:22,835.835 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:41:22,962.962 INFO    ] No existing commands found in stream
[2026-08-31 17:41:27,979.979 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:41:27,982.982 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-08-31 17:41:31,811.811 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 17:41:31,814.814 INFO    ] Checking for system updates...
[2026-08-31 17:41:31,855.855 INFO    ] 200
[2026-08-31 17:41:31,858.858 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:41:31,918.918 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:41:31,921.921 INFO    ] No update needed
[2026-08-31 17:41:31,924.924 INFO    ] Checking for camera pi updates...
[2026-08-31 17:41:31,963.963 INFO    ] 200
[2026-08-31 17:41:31,966.966 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:41:32,011.011 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:41:32,064.064 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:41:32,070.070 INFO    ] No camera update needed
[2026-08-31 17:41:32,073.073 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:41:32,076.076 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:41:32,083.083 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:41:32,090.090 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:41:34,133.133 INFO    ] ================================================
[2026-08-31 17:41:34,149.149 INFO    ] Launching Daemon at Mon Aug 31 17:41:34 IST 2026
[2026-08-31 17:41:34,160.160 INFO    ] ================================================
[2026-08-31 17:41:34,803.803 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:41:34
[2026-08-31 17:41:35,463.463 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:41:35,758.758 INFO    ] Initializing speech engine...
[2026-08-31 17:41:35,766.766 INFO    ] 2026-08-31 17:41:35
[2026-08-31 17:41:36,042.042 INFO    ] 2026-08-31 17:41:36
[2026-08-31 17:41:36,098.098 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:41:36,381.381 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:41:36,388.388 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:41:36,584.584 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:41:36,591.591 INFO    ] time= 31/08/2026 17:41:36
[2026-08-31 17:41:36,610.610 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:41:36,639.639 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:41:36,769.769 INFO    ] No existing commands found in stream
[2026-08-31 17:41:41,800.800 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:41:41,803.803 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-08-31 17:41:45,412.412 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 17:41:45,415.415 INFO    ] Checking for system updates...
[2026-08-31 17:41:45,452.452 INFO    ] 200
[2026-08-31 17:41:45,454.454 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:41:45,507.507 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:41:45,510.510 INFO    ] No update needed
[2026-08-31 17:41:45,512.512 INFO    ] Checking for camera pi updates...
[2026-08-31 17:41:45,550.550 INFO    ] 200
[2026-08-31 17:41:45,553.553 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:41:45,600.600 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:41:45,684.684 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:41:45,687.687 INFO    ] No camera update needed
[2026-08-31 17:41:45,690.690 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:41:45,692.692 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:41:45,697.697 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:41:45,702.702 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:41:47,742.742 INFO    ] ================================================
[2026-08-31 17:41:47,758.758 INFO    ] Launching Daemon at Mon Aug 31 17:41:47 IST 2026
[2026-08-31 17:41:47,769.769 INFO    ] ================================================
[2026-08-31 17:41:48,355.355 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:41:48
[2026-08-31 17:41:48,948.948 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:41:49,223.223 INFO    ] Initializing speech engine...
[2026-08-31 17:41:49,230.230 INFO    ] 2026-08-31 17:41:49
[2026-08-31 17:41:49,490.490 INFO    ] 2026-08-31 17:41:49
[2026-08-31 17:41:49,542.542 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:41:49,806.806 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:41:49,826.826 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:41:50,010.010 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:41:50,032.032 INFO    ] time= 31/08/2026 17:41:50
[2026-08-31 17:41:50,048.048 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:41:50,079.079 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:41:50,185.185 INFO    ] No existing commands found in stream
[2026-08-31 17:41:55,205.205 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:41:55,208.208 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-08-31 17:41:56,040.040 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 17:41:56,043.043 INFO    ] Checking for system updates...
[2026-08-31 17:41:56,084.084 INFO    ] 200
[2026-08-31 17:41:56,086.086 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:41:56,141.141 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:41:56,144.144 INFO    ] No update needed
[2026-08-31 17:41:56,146.146 INFO    ] Checking for camera pi updates...
[2026-08-31 17:41:56,181.181 INFO    ] 200
[2026-08-31 17:41:56,184.184 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:41:56,225.225 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:41:56,308.308 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:41:56,311.311 INFO    ] No camera update needed
[2026-08-31 17:41:56,314.314 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:41:56,316.316 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:41:56,323.323 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:41:56,328.328 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:41:58,369.369 INFO    ] ================================================
[2026-08-31 17:41:58,384.384 INFO    ] Launching Daemon at Mon Aug 31 17:41:58 IST 2026
[2026-08-31 17:41:58,394.394 INFO    ] ================================================
[2026-08-31 17:41:58,985.985 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:41:58
[2026-08-31 17:41:59,609.609 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:41:59,881.881 INFO    ] Initializing speech engine...
[2026-08-31 17:41:59,891.891 INFO    ] 2026-08-31 17:41:59
[2026-08-31 17:42:00,152.152 INFO    ] 2026-08-31 17:42:00
[2026-08-31 17:42:00,205.205 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:42:00,426.426 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:42:00,435.435 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:42:00,643.643 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:42:00,694.694 INFO    ] time= 31/08/2026 17:42:00
[2026-08-31 17:42:00,700.700 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:42:00,717.717 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:42:00,848.848 INFO    ] No existing commands found in stream
[2026-08-31 17:42:05,871.871 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:42:05,874.874 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-08-31 17:42:09,615.615 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 17:42:09,618.618 INFO    ] Checking for system updates...
[2026-08-31 17:42:09,654.654 INFO    ] 200
[2026-08-31 17:42:09,656.656 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:42:09,718.718 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:42:09,720.720 INFO    ] No update needed
[2026-08-31 17:42:09,723.723 INFO    ] Checking for camera pi updates...
[2026-08-31 17:42:09,760.760 INFO    ] 200
[2026-08-31 17:42:09,763.763 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:42:09,804.804 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:42:09,879.879 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:42:09,881.881 INFO    ] No camera update needed
[2026-08-31 17:42:09,883.883 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:42:09,886.886 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:42:09,891.891 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:42:09,896.896 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:42:11,939.939 INFO    ] ================================================
[2026-08-31 17:42:11,954.954 INFO    ] Launching Daemon at Mon Aug 31 17:42:11 IST 2026
[2026-08-31 17:42:11,965.965 INFO    ] ================================================
[2026-08-31 17:42:12,596.596 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:42:12
[2026-08-31 17:42:13,181.181 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:42:13,448.448 INFO    ] Initializing speech engine...
[2026-08-31 17:42:13,459.459 INFO    ] 2026-08-31 17:42:13
[2026-08-31 17:42:13,714.714 INFO    ] 2026-08-31 17:42:13
[2026-08-31 17:42:13,749.749 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:42:13,999.999 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:42:14,010.010 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:42:14,140.140 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:42:14,182.182 INFO    ] time= 31/08/2026 17:42:14
[2026-08-31 17:42:14,231.231 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:42:14,274.274 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:42:14,417.417 INFO    ] No existing commands found in stream
[2026-08-31 17:42:19,433.433 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:42:19,436.436 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-08-31 17:42:22,765.765 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 17:42:22,768.768 INFO    ] Checking for system updates...
[2026-08-31 17:42:22,807.807 INFO    ] 200
[2026-08-31 17:42:22,810.810 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:42:22,869.869 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:42:22,872.872 INFO    ] No update needed
[2026-08-31 17:42:22,874.874 INFO    ] Checking for camera pi updates...
[2026-08-31 17:42:22,913.913 INFO    ] 200
[2026-08-31 17:42:22,915.915 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:42:22,957.957 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:42:23,016.016 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:42:23,019.019 INFO    ] No camera update needed
[2026-08-31 17:42:23,021.021 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:42:23,023.023 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:42:23,029.029 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:42:23,034.034 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:42:25,076.076 INFO    ] ================================================
[2026-08-31 17:42:25,092.092 INFO    ] Launching Daemon at Mon Aug 31 17:42:25 IST 2026
[2026-08-31 17:42:25,102.102 INFO    ] ================================================
[2026-08-31 17:42:25,763.763 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:42:25
[2026-08-31 17:42:26,444.444 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:42:26,756.756 INFO    ] Initializing speech engine...
[2026-08-31 17:42:26,770.770 INFO    ] 2026-08-31 17:42:26
[2026-08-31 17:42:27,043.043 INFO    ] 2026-08-31 17:42:27
[2026-08-31 17:42:27,100.100 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:42:27,381.381 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:42:27,390.390 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:42:27,587.587 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:42:27,605.605 INFO    ] time= 31/08/2026 17:42:27
[2026-08-31 17:42:27,636.636 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:42:27,647.647 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:42:27,762.762 INFO    ] No existing commands found in stream
[2026-08-31 17:42:32,788.788 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:42:32,792.792 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-08-31 17:42:35,667.667 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 17:42:35,670.670 INFO    ] Checking for system updates...
[2026-08-31 17:42:35,708.708 INFO    ] 200
[2026-08-31 17:42:35,711.711 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:42:35,770.770 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:42:35,775.775 INFO    ] No update needed
[2026-08-31 17:42:35,778.778 INFO    ] Checking for camera pi updates...
[2026-08-31 17:42:35,816.816 INFO    ] 200
[2026-08-31 17:42:35,819.819 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:42:35,864.864 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:42:35,924.924 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:42:35,926.926 INFO    ] No camera update needed
[2026-08-31 17:42:35,929.929 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:42:35,931.931 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:42:35,936.936 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:42:35,942.942 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:42:37,982.982 INFO    ] ================================================
[2026-08-31 17:42:38,997.997 INFO    ] Launching Daemon at Mon Aug 31 17:42:37 IST 2026
[2026-08-31 17:42:38,007.007 INFO    ] ================================================
[2026-08-31 17:42:38,664.664 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:42:38
[2026-08-31 17:42:39,340.340 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:42:39,654.654 INFO    ] Initializing speech engine...
[2026-08-31 17:42:39,661.661 INFO    ] 2026-08-31 17:42:39
[2026-08-31 17:42:39,927.927 INFO    ] 2026-08-31 17:42:39
[2026-08-31 17:42:39,983.983 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:42:40,241.241 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:42:40,272.272 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:42:40,470.470 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:42:40,491.491 INFO    ] time= 31/08/2026 17:42:40
[2026-08-31 17:42:40,522.522 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:42:40,530.530 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:42:40,646.646 INFO    ] No existing commands found in stream
[2026-08-31 17:42:45,677.677 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:42:45,680.680 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-08-31 17:42:49,931.931 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 17:42:49,934.934 INFO    ] Checking for system updates...
[2026-08-31 17:42:49,971.971 INFO    ] 200
[2026-08-31 17:42:49,974.974 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:42:50,026.026 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:42:50,029.029 INFO    ] No update needed
[2026-08-31 17:42:50,031.031 INFO    ] Checking for camera pi updates...
[2026-08-31 17:42:50,069.069 INFO    ] 200
[2026-08-31 17:42:50,072.072 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:42:50,117.117 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:42:50,213.213 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:42:50,216.216 INFO    ] No camera update needed
[2026-08-31 17:42:50,218.218 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:42:50,221.221 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:42:50,226.226 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:42:50,231.231 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:42:52,270.270 INFO    ] ================================================
[2026-08-31 17:42:52,285.285 INFO    ] Launching Daemon at Mon Aug 31 17:42:52 IST 2026
[2026-08-31 17:42:52,295.295 INFO    ] ================================================
[2026-08-31 17:42:52,927.927 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:42:52
[2026-08-31 17:42:53,589.589 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:42:53,835.835 INFO    ] Initializing speech engine...
[2026-08-31 17:42:53,860.860 INFO    ] 2026-08-31 17:42:53
[2026-08-31 17:42:54,116.116 INFO    ] 2026-08-31 17:42:54
[2026-08-31 17:42:54,151.151 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:42:54,414.414 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:42:54,420.420 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:42:54,641.641 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:42:54,683.683 INFO    ] time= 31/08/2026 17:42:54
[2026-08-31 17:42:54,700.700 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:42:54,709.709 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:42:54,824.824 INFO    ] No existing commands found in stream
[2026-08-31 17:42:59,847.847 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:42:59,850.850 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-08-31 17:43:02,008.008 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 17:43:02,011.011 INFO    ] Checking for system updates...
[2026-08-31 17:43:02,064.064 INFO    ] 200
[2026-08-31 17:43:02,067.067 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:43:02,173.173 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:43:02,176.176 INFO    ] No update needed
[2026-08-31 17:43:02,180.180 INFO    ] Checking for camera pi updates...
[2026-08-31 17:43:02,257.257 INFO    ] 200
[2026-08-31 17:43:02,261.261 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:43:02,318.318 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:43:02,516.516 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:43:02,519.519 INFO    ] No camera update needed
[2026-08-31 17:43:02,522.522 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:43:02,526.526 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:43:02,533.533 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:43:02,539.539 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:43:04,580.580 INFO    ] ================================================
[2026-08-31 17:43:04,596.596 INFO    ] Launching Daemon at Mon Aug 31 17:43:04 IST 2026
[2026-08-31 17:43:04,606.606 INFO    ] ================================================
[2026-08-31 17:43:05,234.234 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:43:05
[2026-08-31 17:43:05,816.816 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:43:06,073.073 INFO    ] Initializing speech engine...
[2026-08-31 17:43:06,091.091 INFO    ] 2026-08-31 17:43:06
[2026-08-31 17:43:06,339.339 INFO    ] 2026-08-31 17:43:06
[2026-08-31 17:43:06,374.374 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:43:06,628.628 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:43:06,634.634 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:43:06,770.770 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:43:06,795.795 INFO    ] time= 31/08/2026 17:43:06
[2026-08-31 17:43:06,840.840 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:43:06,889.889 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:43:06,971.971 INFO    ] No existing commands found in stream
[2026-08-31 17:43:11,982.982 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:43:11,985.985 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-08-31 17:43:14,061.061 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 17:43:14,063.063 INFO    ] Checking for system updates...
[2026-08-31 17:43:14,100.100 INFO    ] 200
[2026-08-31 17:43:14,103.103 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:43:14,156.156 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:43:14,158.158 INFO    ] No update needed
[2026-08-31 17:43:14,161.161 INFO    ] Checking for camera pi updates...
[2026-08-31 17:43:14,194.194 INFO    ] 200
[2026-08-31 17:43:14,197.197 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:43:14,238.238 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:43:14,308.308 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:43:14,310.310 INFO    ] No camera update needed
[2026-08-31 17:43:14,312.312 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:43:14,314.314 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:43:14,320.320 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:43:14,325.325 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:43:16,367.367 INFO    ] ================================================
[2026-08-31 17:43:16,382.382 INFO    ] Launching Daemon at Mon Aug 31 17:43:16 IST 2026
[2026-08-31 17:43:16,393.393 INFO    ] ================================================
[2026-08-31 17:43:16,973.973 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:43:16
[2026-08-31 17:43:17,572.572 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:43:17,845.845 INFO    ] Initializing speech engine...
[2026-08-31 17:43:17,865.865 INFO    ] 2026-08-31 17:43:17
[2026-08-31 17:43:18,140.140 INFO    ] 2026-08-31 17:43:18
[2026-08-31 17:43:18,177.177 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:43:18,479.479 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:43:18,489.489 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:43:18,646.646 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:43:18,654.654 INFO    ] time= 31/08/2026 17:43:18
[2026-08-31 17:43:18,718.718 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:43:18,781.781 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:43:18,928.928 INFO    ] No existing commands found in stream
[2026-08-31 17:43:23,941.941 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:43:23,943.943 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-08-31 17:43:27,668.668 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 17:43:27,671.671 INFO    ] Checking for system updates...
[2026-08-31 17:43:27,712.712 INFO    ] 200
[2026-08-31 17:43:27,715.715 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:43:27,781.781 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:43:27,784.784 INFO    ] No update needed
[2026-08-31 17:43:27,786.786 INFO    ] Checking for camera pi updates...
[2026-08-31 17:43:27,824.824 INFO    ] 200
[2026-08-31 17:43:27,826.826 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:43:27,868.868 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:43:27,941.941 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:43:27,944.944 INFO    ] No camera update needed
[2026-08-31 17:43:27,946.946 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:43:27,949.949 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:43:27,954.954 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:43:27,959.959 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:43:30,000.000 INFO    ] ================================================
[2026-08-31 17:43:30,016.016 INFO    ] Launching Daemon at Mon Aug 31 17:43:30 IST 2026
[2026-08-31 17:43:30,027.027 INFO    ] ================================================
[2026-08-31 17:43:30,699.699 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:43:30
[2026-08-31 17:43:31,379.379 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:43:31,687.687 INFO    ] Initializing speech engine...
[2026-08-31 17:43:31,698.698 INFO    ] 2026-08-31 17:43:31
[2026-08-31 17:43:32,002.002 INFO    ] 2026-08-31 17:43:31
[2026-08-31 17:43:32,115.115 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:43:32,334.334 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:43:32,343.343 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:43:32,522.522 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:43:32,556.556 INFO    ] time= 31/08/2026 17:43:32
[2026-08-31 17:43:32,576.576 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:43:32,606.606 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:43:32,720.720 INFO    ] No existing commands found in stream
[2026-08-31 17:43:37,761.761 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:43:37,770.770 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-08-31 17:43:39,088.088 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 17:43:39,095.095 INFO    ] Checking for system updates...
[2026-08-31 17:43:39,131.131 INFO    ] 200
[2026-08-31 17:43:39,133.133 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:43:39,193.193 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:43:39,196.196 INFO    ] No update needed
[2026-08-31 17:43:39,198.198 INFO    ] Checking for camera pi updates...
[2026-08-31 17:43:39,231.231 INFO    ] 200
[2026-08-31 17:43:39,234.234 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:43:39,275.275 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:43:39,368.368 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:43:39,370.370 INFO    ] No camera update needed
[2026-08-31 17:43:39,372.372 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:43:39,375.375 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:43:39,380.380 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:43:39,385.385 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:43:41,424.424 INFO    ] ================================================
[2026-08-31 17:43:41,440.440 INFO    ] Launching Daemon at Mon Aug 31 17:43:41 IST 2026
[2026-08-31 17:43:41,451.451 INFO    ] ================================================
[2026-08-31 17:43:42,016.016 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:43:42
[2026-08-31 17:43:42,600.600 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:43:42,891.891 INFO    ] Initializing speech engine...
[2026-08-31 17:43:42,904.904 INFO    ] 2026-08-31 17:43:42
[2026-08-31 17:43:43,219.219 INFO    ] 2026-08-31 17:43:43
[2026-08-31 17:43:43,305.305 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:43:43,517.517 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:43:43,526.526 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:43:43,721.721 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:43:43,738.738 INFO    ] time= 31/08/2026 17:43:43
[2026-08-31 17:43:43,772.772 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:43:43,782.782 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:43:43,874.874 INFO    ] No existing commands found in stream
[2026-08-31 17:43:48,891.891 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:43:48,894.894 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-08-31 17:43:51,602.602 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 17:43:51,605.605 INFO    ] Checking for system updates...
[2026-08-31 17:43:51,642.642 INFO    ] 200
[2026-08-31 17:43:51,645.645 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:43:51,699.699 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:43:51,702.702 INFO    ] No update needed
[2026-08-31 17:43:51,704.704 INFO    ] Checking for camera pi updates...
[2026-08-31 17:43:51,741.741 INFO    ] 200
[2026-08-31 17:43:51,744.744 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:43:51,785.785 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:43:51,870.870 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:43:51,872.872 INFO    ] No camera update needed
[2026-08-31 17:43:51,875.875 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:43:51,877.877 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:43:51,883.883 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:43:51,888.888 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:43:53,927.927 INFO    ] ================================================
[2026-08-31 17:43:53,943.943 INFO    ] Launching Daemon at Mon Aug 31 17:43:53 IST 2026
[2026-08-31 17:43:53,955.955 INFO    ] ================================================
[2026-08-31 17:43:54,620.620 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:43:54
[2026-08-31 17:43:55,305.305 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:43:55,613.613 INFO    ] Initializing speech engine...
[2026-08-31 17:43:55,625.625 INFO    ] 2026-08-31 17:43:55
[2026-08-31 17:43:55,908.908 INFO    ] 2026-08-31 17:43:55
[2026-08-31 17:43:55,953.953 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:43:56,179.179 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:43:56,185.185 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:43:56,418.418 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:43:56,445.445 INFO    ] time= 31/08/2026 17:43:56
[2026-08-31 17:43:56,464.464 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:43:56,494.494 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:43:56,595.595 INFO    ] No existing commands found in stream
[2026-08-31 17:44:01,611.611 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:44:01,614.614 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-08-31 17:44:03,967.967 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 17:44:03,970.970 INFO    ] Checking for system updates...
[2026-08-31 17:44:04,010.010 INFO    ] 200
[2026-08-31 17:44:04,014.014 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:44:04,074.074 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:44:04,077.077 INFO    ] No update needed
[2026-08-31 17:44:04,080.080 INFO    ] Checking for camera pi updates...
[2026-08-31 17:44:04,119.119 INFO    ] 200
[2026-08-31 17:44:04,122.122 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:44:04,164.164 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:44:04,268.268 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:44:04,271.271 INFO    ] No camera update needed
[2026-08-31 17:44:04,274.274 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:44:04,277.277 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:44:04,283.283 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:44:04,289.289 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:44:06,329.329 INFO    ] ================================================
[2026-08-31 17:44:06,344.344 INFO    ] Launching Daemon at Mon Aug 31 17:44:06 IST 2026
[2026-08-31 17:44:06,355.355 INFO    ] ================================================
[2026-08-31 17:44:06,951.951 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:44:06
[2026-08-31 17:44:07,545.545 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:44:07,849.849 INFO    ] Initializing speech engine...
[2026-08-31 17:44:07,856.856 INFO    ] 2026-08-31 17:44:07
[2026-08-31 17:44:08,178.178 INFO    ] 2026-08-31 17:44:08
[2026-08-31 17:44:08,263.263 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:44:08,441.441 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:44:08,446.446 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:44:08,648.648 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:44:08,682.682 INFO    ] time= 31/08/2026 17:44:08
[2026-08-31 17:44:08,700.700 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:44:08,730.730 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:44:08,846.846 INFO    ] No existing commands found in stream
[2026-08-31 17:44:13,871.871 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:44:13,875.875 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-08-31 17:44:15,818.818 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 17:44:15,821.821 INFO    ] Checking for system updates...
[2026-08-31 17:44:15,862.862 INFO    ] 200
[2026-08-31 17:44:15,865.865 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:44:15,930.930 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:44:15,933.933 INFO    ] No update needed
[2026-08-31 17:44:15,936.936 INFO    ] Checking for camera pi updates...
[2026-08-31 17:44:15,971.971 INFO    ] 200
[2026-08-31 17:44:15,974.974 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:44:16,017.017 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:44:16,102.102 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:44:16,104.104 INFO    ] No camera update needed
[2026-08-31 17:44:16,107.107 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:44:16,110.110 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:44:16,116.116 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:44:16,122.122 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:44:18,162.162 INFO    ] ================================================
[2026-08-31 17:44:18,177.177 INFO    ] Launching Daemon at Mon Aug 31 17:44:18 IST 2026
[2026-08-31 17:44:18,188.188 INFO    ] ================================================
[2026-08-31 17:44:18,856.856 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:44:18
[2026-08-31 17:44:19,527.527 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:44:19,833.833 INFO    ] Initializing speech engine...
[2026-08-31 17:44:19,841.841 INFO    ] 2026-08-31 17:44:19
[2026-08-31 17:44:20,140.140 INFO    ] 2026-08-31 17:44:20
[2026-08-31 17:44:20,240.240 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:44:20,463.463 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:44:20,470.470 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:44:20,671.671 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:44:20,687.687 INFO    ] time= 31/08/2026 17:44:20
[2026-08-31 17:44:20,694.694 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:44:20,700.700 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:44:20,832.832 INFO    ] No existing commands found in stream
[2026-08-31 17:44:25,848.848 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:44:25,851.851 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-08-31 17:44:27,691.691 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 17:44:27,693.693 INFO    ] Checking for system updates...
[2026-08-31 17:44:27,734.734 INFO    ] 200
[2026-08-31 17:44:27,737.737 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:44:27,798.798 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:44:27,802.802 INFO    ] No update needed
[2026-08-31 17:44:27,805.805 INFO    ] Checking for camera pi updates...
[2026-08-31 17:44:27,843.843 INFO    ] 200
[2026-08-31 17:44:27,846.846 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:44:27,888.888 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:44:27,979.979 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:44:27,982.982 INFO    ] No camera update needed
[2026-08-31 17:44:27,987.987 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:44:27,990.990 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:44:27,997.997 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:44:28,003.003 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:44:30,045.045 INFO    ] ================================================
[2026-08-31 17:44:30,059.059 INFO    ] Launching Daemon at Mon Aug 31 17:44:30 IST 2026
[2026-08-31 17:44:30,071.071 INFO    ] ================================================
[2026-08-31 17:44:30,634.634 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:44:30
[2026-08-31 17:44:31,218.218 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:44:31,490.490 INFO    ] Initializing speech engine...
[2026-08-31 17:44:31,496.496 INFO    ] 2026-08-31 17:44:31
[2026-08-31 17:44:31,754.754 INFO    ] 2026-08-31 17:44:31
[2026-08-31 17:44:31,808.808 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:44:32,050.050 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:44:32,060.060 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:44:32,210.210 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:44:32,271.271 INFO    ] time= 31/08/2026 17:44:32
[2026-08-31 17:44:32,320.320 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:44:32,336.336 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:44:32,456.456 INFO    ] No existing commands found in stream
[2026-08-31 17:44:37,485.485 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:44:37,488.488 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-08-31 17:44:40,411.411 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 17:44:40,414.414 INFO    ] Checking for system updates...
[2026-08-31 17:44:40,461.461 INFO    ] 200
[2026-08-31 17:44:40,463.463 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:44:40,518.518 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:44:40,520.520 INFO    ] No update needed
[2026-08-31 17:44:40,527.527 INFO    ] Checking for camera pi updates...
[2026-08-31 17:44:40,560.560 INFO    ] 200
[2026-08-31 17:44:40,563.563 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:44:40,603.603 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:44:40,682.682 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:44:40,685.685 INFO    ] No camera update needed
[2026-08-31 17:44:40,687.687 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:44:40,690.690 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:44:40,696.696 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:44:40,701.701 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:44:42,741.741 INFO    ] ================================================
[2026-08-31 17:44:42,756.756 INFO    ] Launching Daemon at Mon Aug 31 17:44:42 IST 2026
[2026-08-31 17:44:42,766.766 INFO    ] ================================================
[2026-08-31 17:44:43,352.352 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:44:43
[2026-08-31 17:44:43,967.967 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:44:44,272.272 INFO    ] Initializing speech engine...
[2026-08-31 17:44:44,280.280 INFO    ] 2026-08-31 17:44:44
[2026-08-31 17:44:44,594.594 INFO    ] 2026-08-31 17:44:44
[2026-08-31 17:44:44,680.680 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:44:44,895.895 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:44:44,901.901 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:44:45,094.094 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:44:45,102.102 INFO    ] time= 31/08/2026 17:44:45
[2026-08-31 17:44:45,122.122 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:44:45,151.151 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:44:45,277.277 INFO    ] No existing commands found in stream
[2026-08-31 17:44:50,303.303 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:44:50,306.306 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-08-31 17:44:52,765.765 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 17:44:52,768.768 INFO    ] Checking for system updates...
[2026-08-31 17:44:52,804.804 INFO    ] 200
[2026-08-31 17:44:52,807.807 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:44:52,862.862 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:44:52,865.865 INFO    ] No update needed
[2026-08-31 17:44:52,867.867 INFO    ] Checking for camera pi updates...
[2026-08-31 17:44:52,906.906 INFO    ] 200
[2026-08-31 17:44:52,909.909 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:44:52,955.955 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:44:53,038.038 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:44:53,041.041 INFO    ] No camera update needed
[2026-08-31 17:44:53,043.043 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:44:53,046.046 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:44:53,052.052 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:44:53,058.058 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:44:55,099.099 INFO    ] ================================================
[2026-08-31 17:44:55,114.114 INFO    ] Launching Daemon at Mon Aug 31 17:44:55 IST 2026
[2026-08-31 17:44:55,125.125 INFO    ] ================================================
[2026-08-31 17:44:55,692.692 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:44:55
[2026-08-31 17:44:56,275.275 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:44:56,541.541 INFO    ] Initializing speech engine...
[2026-08-31 17:44:56,550.550 INFO    ] 2026-08-31 17:44:56
[2026-08-31 17:44:56,796.796 INFO    ] 2026-08-31 17:44:56
[2026-08-31 17:44:56,860.860 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:44:57,002.002 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:44:57,014.014 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:44:57,160.160 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:44:57,168.168 INFO    ] time= 31/08/2026 17:44:57
[2026-08-31 17:44:57,229.229 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:44:57,234.234 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:44:57,360.360 INFO    ] No existing commands found in stream
[2026-08-31 17:45:02,370.370 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:45:02,375.375 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-08-31 17:45:05,148.148 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 17:45:05,150.150 INFO    ] Checking for system updates...
[2026-08-31 17:45:05,191.191 INFO    ] 200
[2026-08-31 17:45:05,194.194 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:45:05,249.249 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:45:05,251.251 INFO    ] No update needed
[2026-08-31 17:45:05,254.254 INFO    ] Checking for camera pi updates...
[2026-08-31 17:45:05,289.289 INFO    ] 200
[2026-08-31 17:45:05,291.291 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:45:05,338.338 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:45:05,531.531 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:45:05,534.534 INFO    ] No camera update needed
[2026-08-31 17:45:05,536.536 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:45:05,539.539 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:45:05,545.545 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:45:05,551.551 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:45:07,592.592 INFO    ] ================================================
[2026-08-31 17:45:07,613.613 INFO    ] Launching Daemon at Mon Aug 31 17:45:07 IST 2026
[2026-08-31 17:45:07,627.627 INFO    ] ================================================
[2026-08-31 17:45:08,284.284 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:45:08
[2026-08-31 17:45:08,945.945 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:45:09,242.242 INFO    ] Initializing speech engine...
[2026-08-31 17:45:09,251.251 INFO    ] 2026-08-31 17:45:09
[2026-08-31 17:45:09,523.523 INFO    ] 2026-08-31 17:45:09
[2026-08-31 17:45:09,581.581 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:45:09,847.847 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:45:09,870.870 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:45:10,068.068 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:45:10,085.085 INFO    ] time= 31/08/2026 17:45:10
[2026-08-31 17:45:10,100.100 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:45:10,125.125 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:45:10,229.229 INFO    ] No existing commands found in stream
[2026-08-31 17:45:15,253.253 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:45:15,256.256 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-08-31 17:45:19,641.641 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 17:45:19,644.644 INFO    ] Checking for system updates...
[2026-08-31 17:45:19,681.681 INFO    ] 200
[2026-08-31 17:45:19,683.683 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:45:19,737.737 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:45:19,740.740 INFO    ] No update needed
[2026-08-31 17:45:19,744.744 INFO    ] Checking for camera pi updates...
[2026-08-31 17:45:19,779.779 INFO    ] 200
[2026-08-31 17:45:19,782.782 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:45:19,824.824 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:45:19,904.904 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:45:19,906.906 INFO    ] No camera update needed
[2026-08-31 17:45:19,909.909 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:45:19,912.912 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:45:19,918.918 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:45:19,924.924 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:45:21,965.965 INFO    ] ================================================
[2026-08-31 17:45:21,981.981 INFO    ] Launching Daemon at Mon Aug 31 17:45:21 IST 2026
[2026-08-31 17:45:21,992.992 INFO    ] ================================================
[2026-08-31 17:45:22,559.559 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:45:22
[2026-08-31 17:45:23,146.146 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:45:23,450.450 INFO    ] Initializing speech engine...
[2026-08-31 17:45:23,461.461 INFO    ] 2026-08-31 17:45:23
[2026-08-31 17:45:23,731.731 INFO    ] 2026-08-31 17:45:23
[2026-08-31 17:45:23,792.792 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:45:24,069.069 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:45:24,088.088 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:45:24,279.279 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:45:24,297.297 INFO    ] time= 31/08/2026 17:45:24
[2026-08-31 17:45:24,318.318 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:45:24,347.347 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:45:24,450.450 INFO    ] No existing commands found in stream
[2026-08-31 17:45:29,465.465 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:45:29,468.468 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-08-31 17:45:30,723.723 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 17:45:30,726.726 INFO    ] Checking for system updates...
[2026-08-31 17:45:30,763.763 INFO    ] 200
[2026-08-31 17:45:30,766.766 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:45:30,820.820 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:45:30,822.822 INFO    ] No update needed
[2026-08-31 17:45:30,825.825 INFO    ] Checking for camera pi updates...
[2026-08-31 17:45:30,860.860 INFO    ] 200
[2026-08-31 17:45:30,863.863 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:45:30,904.904 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:45:30,991.991 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:45:30,993.993 INFO    ] No camera update needed
[2026-08-31 17:45:30,996.996 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:45:30,999.999 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:45:31,005.005 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:45:31,011.011 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:45:33,053.053 INFO    ] ================================================
[2026-08-31 17:45:33,069.069 INFO    ] Launching Daemon at Mon Aug 31 17:45:33 IST 2026
[2026-08-31 17:45:33,081.081 INFO    ] ================================================
[2026-08-31 17:45:33,683.683 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:45:33
[2026-08-31 17:45:34,269.269 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:45:34,527.527 INFO    ] Initializing speech engine...
[2026-08-31 17:45:34,540.540 INFO    ] 2026-08-31 17:45:34
[2026-08-31 17:45:34,820.820 INFO    ] 2026-08-31 17:45:34
[2026-08-31 17:45:34,858.858 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:45:35,061.061 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:45:35,079.079 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:45:35,226.226 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:45:35,233.233 INFO    ] time= 31/08/2026 17:45:35
[2026-08-31 17:45:35,240.240 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:45:35,245.245 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:45:35,407.407 INFO    ] No existing commands found in stream
[2026-08-31 17:45:40,427.427 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:45:40,430.430 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-08-31 17:45:43,097.097 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 17:45:43,099.099 INFO    ] Checking for system updates...
[2026-08-31 17:45:43,135.135 INFO    ] 200
[2026-08-31 17:45:43,137.137 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:45:43,189.189 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:45:43,191.191 INFO    ] No update needed
[2026-08-31 17:45:43,193.193 INFO    ] Checking for camera pi updates...
[2026-08-31 17:45:43,227.227 INFO    ] 200
[2026-08-31 17:45:43,230.230 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:45:43,270.270 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:45:43,359.359 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:45:43,361.361 INFO    ] No camera update needed
[2026-08-31 17:45:43,363.363 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:45:43,366.366 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:45:43,371.371 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:45:43,376.376 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:45:45,420.420 INFO    ] ================================================
[2026-08-31 17:45:45,437.437 INFO    ] Launching Daemon at Mon Aug 31 17:45:45 IST 2026
[2026-08-31 17:45:45,448.448 INFO    ] ================================================
[2026-08-31 17:45:46,049.049 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:45:46
[2026-08-31 17:45:46,688.688 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:45:46,958.958 INFO    ] Initializing speech engine...
[2026-08-31 17:45:46,965.965 INFO    ] 2026-08-31 17:45:46
[2026-08-31 17:45:47,217.217 INFO    ] 2026-08-31 17:45:47
[2026-08-31 17:45:47,253.253 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:45:47,451.451 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:45:47,501.501 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:45:47,654.654 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:45:47,686.686 INFO    ] time= 31/08/2026 17:45:47
[2026-08-31 17:45:47,745.745 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:45:47,790.790 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:45:47,845.845 INFO    ] No existing commands found in stream
[2026-08-31 17:45:52,857.857 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:45:52,860.860 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-08-31 17:45:54,945.945 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 17:45:54,948.948 INFO    ] Checking for system updates...
[2026-08-31 17:45:54,996.996 INFO    ] 200
[2026-08-31 17:45:54,999.999 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-08-31 17:45:55,002.002 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-08-31 17:45:55,004.004 INFO    ] Checking for camera pi updates...
[2026-08-31 17:45:55,054.054 INFO    ] 200
[2026-08-31 17:45:55,056.056 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-08-31 17:45:55,059.059 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-08-31 17:45:55,062.062 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:45:55,065.065 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:45:55,071.071 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:45:55,077.077 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:45:57,122.122 INFO    ] ================================================
[2026-08-31 17:45:57,138.138 INFO    ] Launching Daemon at Mon Aug 31 17:45:57 IST 2026
[2026-08-31 17:45:57,148.148 INFO    ] ================================================
[2026-08-31 17:45:57,723.723 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:45:57
[2026-08-31 17:45:58,312.312 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:45:58,570.570 INFO    ] Initializing speech engine...
[2026-08-31 17:45:58,589.589 INFO    ] 2026-08-31 17:45:58
[2026-08-31 17:45:58,846.846 INFO    ] 2026-08-31 17:45:58
[2026-08-31 17:45:58,903.903 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:45:59,130.130 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:45:59,135.135 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:45:59,268.268 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:45:59,323.323 INFO    ] time= 31/08/2026 17:45:59
[2026-08-31 17:45:59,382.382 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:45:59,399.399 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:45:59,532.532 INFO    ] No existing commands found in stream
[2026-08-31 17:46:04,554.554 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:46:04,556.556 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-08-31 17:46:06,999.999 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 17:46:07,001.001 INFO    ] Checking for system updates...
[2026-08-31 17:46:07,038.038 INFO    ] 200
[2026-08-31 17:46:07,041.041 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:46:07,095.095 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:46:07,097.097 INFO    ] No update needed
[2026-08-31 17:46:07,100.100 INFO    ] Checking for camera pi updates...
[2026-08-31 17:46:07,137.137 INFO    ] 200
[2026-08-31 17:46:07,140.140 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:46:07,180.180 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:46:07,261.261 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:46:07,263.263 INFO    ] No camera update needed
[2026-08-31 17:46:07,265.265 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:46:07,268.268 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:46:07,273.273 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:46:07,278.278 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:46:09,319.319 INFO    ] ================================================
[2026-08-31 17:46:09,335.335 INFO    ] Launching Daemon at Mon Aug 31 17:46:09 IST 2026
[2026-08-31 17:46:09,347.347 INFO    ] ================================================
[2026-08-31 17:46:09,932.932 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:46:09
[2026-08-31 17:46:10,534.534 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:46:10,787.787 INFO    ] Initializing speech engine...
[2026-08-31 17:46:10,810.810 INFO    ] 2026-08-31 17:46:10
[2026-08-31 17:46:11,065.065 INFO    ] 2026-08-31 17:46:11
[2026-08-31 17:46:11,130.130 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:46:11,376.376 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:46:11,383.383 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:46:11,516.516 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:46:11,565.565 INFO    ] time= 31/08/2026 17:46:11
[2026-08-31 17:46:11,609.609 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:46:11,645.645 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:46:11,730.730 INFO    ] No existing commands found in stream
[2026-08-31 17:46:16,760.760 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:46:16,763.763 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-08-31 17:46:17,332.332 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 17:46:17,335.335 INFO    ] Checking for system updates...
[2026-08-31 17:46:17,371.371 INFO    ] 200
[2026-08-31 17:46:17,373.373 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:46:17,425.425 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:46:17,428.428 INFO    ] No update needed
[2026-08-31 17:46:17,430.430 INFO    ] Checking for camera pi updates...
[2026-08-31 17:46:17,467.467 INFO    ] 200
[2026-08-31 17:46:17,470.470 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:46:17,516.516 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:46:17,600.600 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:46:17,602.602 INFO    ] No camera update needed
[2026-08-31 17:46:17,605.605 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:46:17,607.607 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:46:17,612.612 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:46:17,617.617 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:46:19,658.658 INFO    ] ================================================
[2026-08-31 17:46:19,673.673 INFO    ] Launching Daemon at Mon Aug 31 17:46:19 IST 2026
[2026-08-31 17:46:19,684.684 INFO    ] ================================================
[2026-08-31 17:46:20,264.264 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:46:20
[2026-08-31 17:46:20,864.864 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:46:21,124.124 INFO    ] Initializing speech engine...
[2026-08-31 17:46:21,133.133 INFO    ] 2026-08-31 17:46:21
[2026-08-31 17:46:21,429.429 INFO    ] 2026-08-31 17:46:21
[2026-08-31 17:46:21,470.470 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:46:21,692.692 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:46:21,746.746 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:46:21,924.924 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:46:21,990.990 INFO    ] time= 31/08/2026 17:46:21
[2026-08-31 17:46:22,028.028 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:46:22,073.073 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:46:22,172.172 INFO    ] No existing commands found in stream
[2026-08-31 17:46:27,203.203 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:46:27,206.206 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-08-31 17:46:28,297.297 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 17:46:28,300.300 INFO    ] Checking for system updates...
[2026-08-31 17:46:28,336.336 INFO    ] 200
[2026-08-31 17:46:28,339.339 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:46:28,392.392 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:46:28,394.394 INFO    ] No update needed
[2026-08-31 17:46:28,396.396 INFO    ] Checking for camera pi updates...
[2026-08-31 17:46:28,431.431 INFO    ] 200
[2026-08-31 17:46:28,433.433 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:46:28,473.473 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:46:28,562.562 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:46:28,564.564 INFO    ] No camera update needed
[2026-08-31 17:46:28,566.566 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:46:28,569.569 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:46:28,574.574 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:46:28,579.579 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:46:30,619.619 INFO    ] ================================================
[2026-08-31 17:46:30,634.634 INFO    ] Launching Daemon at Mon Aug 31 17:46:30 IST 2026
[2026-08-31 17:46:30,645.645 INFO    ] ================================================
[2026-08-31 17:46:31,291.291 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:46:31
[2026-08-31 17:46:31,963.963 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:46:32,262.262 INFO    ] Initializing speech engine...
[2026-08-31 17:46:32,271.271 INFO    ] 2026-08-31 17:46:32
[2026-08-31 17:46:32,549.549 INFO    ] 2026-08-31 17:46:32
[2026-08-31 17:46:32,585.585 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:46:32,768.768 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:46:32,781.781 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:46:32,934.934 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:46:32,939.939 INFO    ] time= 31/08/2026 17:46:32
[2026-08-31 17:46:32,946.946 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:46:32,978.978 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:46:33,138.138 INFO    ] No existing commands found in stream
[2026-08-31 17:46:38,163.163 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:46:38,166.166 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-08-31 17:46:42,600.600 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 17:46:42,603.603 INFO    ] Checking for system updates...
[2026-08-31 17:46:42,638.638 INFO    ] 200
[2026-08-31 17:46:42,641.641 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:46:42,693.693 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:46:42,696.696 INFO    ] No update needed
[2026-08-31 17:46:42,698.698 INFO    ] Checking for camera pi updates...
[2026-08-31 17:46:42,732.732 INFO    ] 200
[2026-08-31 17:46:42,735.735 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:46:42,776.776 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:46:42,855.855 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:46:42,857.857 INFO    ] No camera update needed
[2026-08-31 17:46:42,860.860 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:46:42,862.862 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:46:42,867.867 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:46:42,872.872 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:46:44,911.911 INFO    ] ================================================
[2026-08-31 17:46:44,926.926 INFO    ] Launching Daemon at Mon Aug 31 17:46:44 IST 2026
[2026-08-31 17:46:44,938.938 INFO    ] ================================================
[2026-08-31 17:46:45,587.587 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:46:45
[2026-08-31 17:46:46,257.257 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:46:46,562.562 INFO    ] Initializing speech engine...
[2026-08-31 17:46:46,570.570 INFO    ] 2026-08-31 17:46:46
[2026-08-31 17:46:46,846.846 INFO    ] 2026-08-31 17:46:46
[2026-08-31 17:46:46,902.902 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:46:47,136.136 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:46:47,141.141 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:46:47,277.277 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:46:47,331.331 INFO    ] time= 31/08/2026 17:46:47
[2026-08-31 17:46:47,370.370 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:46:47,416.416 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:46:47,539.539 INFO    ] No existing commands found in stream
[2026-08-31 17:46:52,575.575 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:46:52,578.578 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-08-31 17:46:57,006.006 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 17:46:57,009.009 INFO    ] Checking for system updates...
[2026-08-31 17:46:57,044.044 INFO    ] 200
[2026-08-31 17:46:57,047.047 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:46:57,100.100 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:46:57,103.103 INFO    ] No update needed
[2026-08-31 17:46:57,105.105 INFO    ] Checking for camera pi updates...
[2026-08-31 17:46:57,139.139 INFO    ] 200
[2026-08-31 17:46:57,141.141 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:46:57,181.181 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:46:57,264.264 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:46:57,267.267 INFO    ] No camera update needed
[2026-08-31 17:46:57,269.269 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:46:57,271.271 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:46:57,277.277 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:46:57,282.282 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:46:59,322.322 INFO    ] ================================================
[2026-08-31 17:46:59,338.338 INFO    ] Launching Daemon at Mon Aug 31 17:46:59 IST 2026
[2026-08-31 17:46:59,349.349 INFO    ] ================================================
[2026-08-31 17:47:00,018.018 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:47:00
[2026-08-31 17:47:00,605.605 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:47:00,873.873 INFO    ] Initializing speech engine...
[2026-08-31 17:47:00,882.882 INFO    ] 2026-08-31 17:47:00
[2026-08-31 17:47:01,128.128 INFO    ] 2026-08-31 17:47:01
[2026-08-31 17:47:01,164.164 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:47:01,420.420 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:47:01,426.426 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:47:01,646.646 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:47:01,685.685 INFO    ] time= 31/08/2026 17:47:01
[2026-08-31 17:47:01,689.689 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:47:01,692.692 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:47:01,772.772 INFO    ] No existing commands found in stream
[2026-08-31 17:47:06,779.779 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:47:06,782.782 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-08-31 17:47:10,453.453 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 17:47:10,456.456 INFO    ] Checking for system updates...
[2026-08-31 17:47:10,497.497 INFO    ] 200
[2026-08-31 17:47:10,500.500 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:47:10,559.559 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:47:10,562.562 INFO    ] No update needed
[2026-08-31 17:47:10,565.565 INFO    ] Checking for camera pi updates...
[2026-08-31 17:47:10,600.600 INFO    ] 200
[2026-08-31 17:47:10,603.603 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:47:10,650.650 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:47:10,840.840 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:47:10,842.842 INFO    ] No camera update needed
[2026-08-31 17:47:10,845.845 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:47:10,847.847 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:47:10,852.852 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:47:10,858.858 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:47:12,897.897 INFO    ] ================================================
[2026-08-31 17:47:12,913.913 INFO    ] Launching Daemon at Mon Aug 31 17:47:12 IST 2026
[2026-08-31 17:47:12,925.925 INFO    ] ================================================
[2026-08-31 17:47:13,490.490 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:47:13
[2026-08-31 17:47:14,074.074 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:47:14,346.346 INFO    ] Initializing speech engine...
[2026-08-31 17:47:14,354.354 INFO    ] 2026-08-31 17:47:14
[2026-08-31 17:47:14,611.611 INFO    ] 2026-08-31 17:47:14
[2026-08-31 17:47:14,640.640 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:47:14,884.884 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:47:14,893.893 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:47:15,027.027 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:47:15,097.097 INFO    ] time= 31/08/2026 17:47:15
[2026-08-31 17:47:15,153.153 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:47:15,160.160 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:47:15,290.290 INFO    ] No existing commands found in stream
[2026-08-31 17:47:20,314.314 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:47:20,317.317 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-08-31 17:47:23,759.759 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 17:47:23,762.762 INFO    ] Checking for system updates...
[2026-08-31 17:47:23,813.813 INFO    ] 200
[2026-08-31 17:47:23,815.815 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:47:23,868.868 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:47:23,871.871 INFO    ] No update needed
[2026-08-31 17:47:23,873.873 INFO    ] Checking for camera pi updates...
[2026-08-31 17:47:23,906.906 INFO    ] 200
[2026-08-31 17:47:23,909.909 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:47:23,955.955 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:47:24,039.039 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:47:24,041.041 INFO    ] No camera update needed
[2026-08-31 17:47:24,044.044 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:47:24,047.047 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:47:24,053.053 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:47:24,058.058 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:47:26,098.098 INFO    ] ================================================
[2026-08-31 17:47:26,114.114 INFO    ] Launching Daemon at Mon Aug 31 17:47:26 IST 2026
[2026-08-31 17:47:26,126.126 INFO    ] ================================================
[2026-08-31 17:47:26,747.747 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:47:26
[2026-08-31 17:47:27,330.330 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:47:27,579.579 INFO    ] Initializing speech engine...
[2026-08-31 17:47:27,599.599 INFO    ] 2026-08-31 17:47:27
[2026-08-31 17:47:27,860.860 INFO    ] 2026-08-31 17:47:27
[2026-08-31 17:47:27,896.896 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:47:28,071.071 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:47:28,084.084 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:47:28,233.233 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:47:28,239.239 INFO    ] time= 31/08/2026 17:47:28
[2026-08-31 17:47:28,285.285 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:47:28,307.307 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:47:28,416.416 INFO    ] No existing commands found in stream
[2026-08-31 17:47:33,446.446 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:47:33,449.449 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-08-31 17:47:36,248.248 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 17:47:36,251.251 INFO    ] Checking for system updates...
[2026-08-31 17:47:36,290.290 INFO    ] 200
[2026-08-31 17:47:36,293.293 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:47:36,345.345 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:47:36,347.347 INFO    ] No update needed
[2026-08-31 17:47:36,350.350 INFO    ] Checking for camera pi updates...
[2026-08-31 17:47:36,387.387 INFO    ] 200
[2026-08-31 17:47:36,389.389 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:47:36,430.430 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:47:36,503.503 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:47:36,506.506 INFO    ] No camera update needed
[2026-08-31 17:47:36,509.509 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:47:36,512.512 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:47:36,518.518 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:47:36,524.524 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:47:38,564.564 INFO    ] ================================================
[2026-08-31 17:47:38,579.579 INFO    ] Launching Daemon at Mon Aug 31 17:47:38 IST 2026
[2026-08-31 17:47:38,591.591 INFO    ] ================================================
[2026-08-31 17:47:39,161.161 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:47:39
[2026-08-31 17:47:39,749.749 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:47:40,021.021 INFO    ] Initializing speech engine...
[2026-08-31 17:47:40,029.029 INFO    ] 2026-08-31 17:47:40
[2026-08-31 17:47:40,282.282 INFO    ] 2026-08-31 17:47:40
[2026-08-31 17:47:40,316.316 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:47:40,540.540 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:47:40,579.579 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:47:40,722.722 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:47:40,787.787 INFO    ] time= 31/08/2026 17:47:40
[2026-08-31 17:47:40,851.851 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:47:40,858.858 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:47:41,003.003 INFO    ] No existing commands found in stream
[2026-08-31 17:47:46,018.018 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:47:46,021.021 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-08-31 17:47:47,084.084 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 17:47:47,087.087 INFO    ] Checking for system updates...
[2026-08-31 17:47:47,123.123 INFO    ] 200
[2026-08-31 17:47:47,126.126 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:47:47,181.181 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:47:47,183.183 INFO    ] No update needed
[2026-08-31 17:47:47,186.186 INFO    ] Checking for camera pi updates...
[2026-08-31 17:47:47,224.224 INFO    ] 200
[2026-08-31 17:47:47,226.226 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:47:47,269.269 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:47:47,332.332 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:47:47,335.335 INFO    ] No camera update needed
[2026-08-31 17:47:47,337.337 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:47:47,340.340 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:47:47,346.346 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:47:47,352.352 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:47:49,393.393 INFO    ] ================================================
[2026-08-31 17:47:49,408.408 INFO    ] Launching Daemon at Mon Aug 31 17:47:49 IST 2026
[2026-08-31 17:47:49,419.419 INFO    ] ================================================
[2026-08-31 17:47:50,061.061 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:47:50
[2026-08-31 17:47:50,711.711 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:47:50,976.976 INFO    ] Initializing speech engine...
[2026-08-31 17:47:50,989.989 INFO    ] 2026-08-31 17:47:50
[2026-08-31 17:47:51,238.238 INFO    ] 2026-08-31 17:47:51
[2026-08-31 17:47:51,272.272 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:47:51,512.512 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:47:51,534.534 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:47:51,750.750 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:47:51,805.805 INFO    ] time= 31/08/2026 17:47:51
[2026-08-31 17:47:51,811.811 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:47:51,829.829 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:47:51,965.965 INFO    ] No existing commands found in stream
[2026-08-31 17:47:56,992.992 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:47:56,995.995 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-08-31 17:48:00,020.020 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 17:48:00,023.023 INFO    ] Checking for system updates...
[2026-08-31 17:48:00,060.060 INFO    ] 200
[2026-08-31 17:48:00,062.062 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:48:00,116.116 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:48:00,119.119 INFO    ] No update needed
[2026-08-31 17:48:00,122.122 INFO    ] Checking for camera pi updates...
[2026-08-31 17:48:00,169.169 INFO    ] 200
[2026-08-31 17:48:00,172.172 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:48:00,213.213 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:48:00,312.312 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:48:00,315.315 INFO    ] No camera update needed
[2026-08-31 17:48:00,317.317 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:48:00,320.320 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:48:00,326.326 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:48:00,332.332 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:48:02,382.382 INFO    ] ================================================
[2026-08-31 17:48:02,409.409 INFO    ] Launching Daemon at Mon Aug 31 17:48:02 IST 2026
[2026-08-31 17:48:02,424.424 INFO    ] ================================================
[2026-08-31 17:48:03,062.062 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:48:03
[2026-08-31 17:48:03,766.766 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:48:04,045.045 INFO    ] Initializing speech engine...
[2026-08-31 17:48:04,054.054 INFO    ] 2026-08-31 17:48:04
[2026-08-31 17:48:04,303.303 INFO    ] 2026-08-31 17:48:04
[2026-08-31 17:48:04,370.370 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:48:04,593.593 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:48:04,602.602 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:48:04,737.737 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:48:04,801.801 INFO    ] time= 31/08/2026 17:48:04
[2026-08-31 17:48:04,866.866 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:48:04,877.877 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:48:04,991.991 INFO    ] No existing commands found in stream
[2026-08-31 17:48:10,010.010 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:48:10,012.012 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-08-31 17:48:12,521.521 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 17:48:12,524.524 INFO    ] Checking for system updates...
[2026-08-31 17:48:12,563.563 INFO    ] 200
[2026-08-31 17:48:12,565.565 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:48:12,628.628 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:48:12,631.631 INFO    ] No update needed
[2026-08-31 17:48:12,633.633 INFO    ] Checking for camera pi updates...
[2026-08-31 17:48:12,669.669 INFO    ] 200
[2026-08-31 17:48:12,671.671 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:48:12,719.719 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:48:12,800.800 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:48:12,802.802 INFO    ] No camera update needed
[2026-08-31 17:48:12,805.805 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:48:12,808.808 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:48:12,813.813 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:48:12,819.819 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:48:14,860.860 INFO    ] ================================================
[2026-08-31 17:48:14,874.874 INFO    ] Launching Daemon at Mon Aug 31 17:48:14 IST 2026
[2026-08-31 17:48:14,885.885 INFO    ] ================================================
[2026-08-31 17:48:15,467.467 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:48:15
[2026-08-31 17:48:16,064.064 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:48:16,342.342 INFO    ] Initializing speech engine...
[2026-08-31 17:48:16,351.351 INFO    ] 2026-08-31 17:48:16
[2026-08-31 17:48:16,605.605 INFO    ] 2026-08-31 17:48:16
[2026-08-31 17:48:16,640.640 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:48:16,831.831 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:48:16,845.845 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:48:16,994.994 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:48:17,036.036 INFO    ] time= 31/08/2026 17:48:16
[2026-08-31 17:48:17,061.061 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:48:17,103.103 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:48:17,204.204 INFO    ] No existing commands found in stream
[2026-08-31 17:48:22,216.216 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:48:22,219.219 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-08-31 17:48:26,339.339 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 17:48:26,342.342 INFO    ] Checking for system updates...
[2026-08-31 17:48:26,378.378 INFO    ] 200
[2026-08-31 17:48:26,381.381 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:48:26,433.433 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:48:26,436.436 INFO    ] No update needed
[2026-08-31 17:48:26,438.438 INFO    ] Checking for camera pi updates...
[2026-08-31 17:48:26,471.471 INFO    ] 200
[2026-08-31 17:48:26,474.474 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:48:26,514.514 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:48:26,632.632 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:48:26,634.634 INFO    ] No camera update needed
[2026-08-31 17:48:26,636.636 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:48:26,639.639 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:48:26,644.644 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:48:26,649.649 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:48:28,690.690 INFO    ] ================================================
[2026-08-31 17:48:28,706.706 INFO    ] Launching Daemon at Mon Aug 31 17:48:28 IST 2026
[2026-08-31 17:48:28,717.717 INFO    ] ================================================
[2026-08-31 17:48:29,332.332 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:48:29
[2026-08-31 17:48:29,915.915 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:48:30,159.159 INFO    ] Initializing speech engine...
[2026-08-31 17:48:30,168.168 INFO    ] 2026-08-31 17:48:30
[2026-08-31 17:48:30,443.443 INFO    ] 2026-08-31 17:48:30
[2026-08-31 17:48:30,477.477 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:48:30,678.678 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:48:30,719.719 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:48:30,878.878 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:48:30,900.900 INFO    ] time= 31/08/2026 17:48:30
[2026-08-31 17:48:30,954.954 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:48:31,008.008 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:48:31,128.128 INFO    ] No existing commands found in stream
[2026-08-31 17:48:36,155.155 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:48:36,158.158 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-08-31 17:48:39,485.485 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 17:48:39,488.488 INFO    ] Checking for system updates...
[2026-08-31 17:48:39,523.523 INFO    ] 200
[2026-08-31 17:48:39,526.526 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:48:39,581.581 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:48:39,584.584 INFO    ] No update needed
[2026-08-31 17:48:39,586.586 INFO    ] Checking for camera pi updates...
[2026-08-31 17:48:39,619.619 INFO    ] 200
[2026-08-31 17:48:39,621.621 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:48:39,667.667 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:48:39,765.765 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:48:39,768.768 INFO    ] No camera update needed
[2026-08-31 17:48:39,770.770 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:48:39,773.773 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:48:39,778.778 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:48:39,783.783 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:48:41,823.823 INFO    ] ================================================
[2026-08-31 17:48:41,839.839 INFO    ] Launching Daemon at Mon Aug 31 17:48:41 IST 2026
[2026-08-31 17:48:41,852.852 INFO    ] ================================================
[2026-08-31 17:48:42,417.417 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:48:42
[2026-08-31 17:48:42,997.997 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:48:43,266.266 INFO    ] Initializing speech engine...
[2026-08-31 17:48:43,274.274 INFO    ] 2026-08-31 17:48:43
[2026-08-31 17:48:43,524.524 INFO    ] 2026-08-31 17:48:43
[2026-08-31 17:48:43,558.558 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:48:43,820.820 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:48:43,824.824 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:48:43,966.966 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:48:44,025.025 INFO    ] time= 31/08/2026 17:48:43
[2026-08-31 17:48:44,069.069 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:48:44,094.094 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:48:44,247.247 INFO    ] No existing commands found in stream
[2026-08-31 17:48:49,260.260 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:48:49,262.262 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-08-31 17:48:51,921.921 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 17:48:51,923.923 INFO    ] Checking for system updates...
[2026-08-31 17:48:51,961.961 INFO    ] 200
[2026-08-31 17:48:51,963.963 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:48:52,016.016 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:48:52,018.018 INFO    ] No update needed
[2026-08-31 17:48:52,021.021 INFO    ] Checking for camera pi updates...
[2026-08-31 17:48:52,057.057 INFO    ] 200
[2026-08-31 17:48:52,059.059 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:48:52,100.100 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:48:52,185.185 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:48:52,187.187 INFO    ] No camera update needed
[2026-08-31 17:48:52,190.190 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:48:52,192.192 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:48:52,197.197 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:48:52,202.202 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:48:54,243.243 INFO    ] ================================================
[2026-08-31 17:48:54,258.258 INFO    ] Launching Daemon at Mon Aug 31 17:48:54 IST 2026
[2026-08-31 17:48:54,270.270 INFO    ] ================================================
[2026-08-31 17:48:54,835.835 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:48:54
[2026-08-31 17:48:55,417.417 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:48:55,686.686 INFO    ] Initializing speech engine...
[2026-08-31 17:48:55,694.694 INFO    ] 2026-08-31 17:48:55
[2026-08-31 17:48:55,944.944 INFO    ] 2026-08-31 17:48:55
[2026-08-31 17:48:55,979.979 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:48:56,162.162 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:48:56,179.179 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:48:56,314.314 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:48:56,321.321 INFO    ] time= 31/08/2026 17:48:56
[2026-08-31 17:48:56,377.377 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:48:56,390.390 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:48:56,517.517 INFO    ] No existing commands found in stream
[2026-08-31 17:49:01,530.530 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:49:01,532.532 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-08-31 17:49:03,645.645 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 17:49:03,648.648 INFO    ] Checking for system updates...
[2026-08-31 17:49:03,686.686 INFO    ] 200
[2026-08-31 17:49:03,689.689 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:49:03,741.741 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:49:03,743.743 INFO    ] No update needed
[2026-08-31 17:49:03,745.745 INFO    ] Checking for camera pi updates...
[2026-08-31 17:49:03,782.782 INFO    ] 200
[2026-08-31 17:49:03,784.784 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:49:03,825.825 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:49:03,929.929 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:49:03,932.932 INFO    ] No camera update needed
[2026-08-31 17:49:03,934.934 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:49:03,936.936 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:49:03,942.942 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:49:03,947.947 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:49:05,989.989 INFO    ] ================================================
[2026-08-31 17:49:06,004.004 INFO    ] Launching Daemon at Mon Aug 31 17:49:05 IST 2026
[2026-08-31 17:49:06,015.015 INFO    ] ================================================
[2026-08-31 17:49:06,607.607 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:49:06
[2026-08-31 17:49:07,207.207 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:49:07,467.467 INFO    ] Initializing speech engine...
[2026-08-31 17:49:07,492.492 INFO    ] 2026-08-31 17:49:07
[2026-08-31 17:49:07,764.764 INFO    ] 2026-08-31 17:49:07
[2026-08-31 17:49:07,802.802 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:49:08,021.021 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:49:08,078.078 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:49:08,218.218 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:49:08,288.288 INFO    ] time= 31/08/2026 17:49:08
[2026-08-31 17:49:08,343.343 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:49:08,354.354 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:49:08,503.503 INFO    ] No existing commands found in stream
[2026-08-31 17:49:13,523.523 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:49:13,526.526 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-08-31 17:49:17,182.182 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 17:49:17,184.184 INFO    ] Checking for system updates...
[2026-08-31 17:49:17,224.224 INFO    ] 200
[2026-08-31 17:49:17,226.226 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:49:17,278.278 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:49:17,281.281 INFO    ] No update needed
[2026-08-31 17:49:17,283.283 INFO    ] Checking for camera pi updates...
[2026-08-31 17:49:17,316.316 INFO    ] 200
[2026-08-31 17:49:17,319.319 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:49:17,359.359 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:49:17,549.549 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:49:17,552.552 INFO    ] No camera update needed
[2026-08-31 17:49:17,554.554 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:49:17,556.556 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:49:17,562.562 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:49:17,567.567 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:49:19,608.608 INFO    ] ================================================
[2026-08-31 17:49:19,623.623 INFO    ] Launching Daemon at Mon Aug 31 17:49:19 IST 2026
[2026-08-31 17:49:19,633.633 INFO    ] ================================================
[2026-08-31 17:49:20,207.207 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:49:20
[2026-08-31 17:49:20,790.790 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:49:21,050.050 INFO    ] Initializing speech engine...
[2026-08-31 17:49:21,069.069 INFO    ] 2026-08-31 17:49:21
[2026-08-31 17:49:21,318.318 INFO    ] 2026-08-31 17:49:21
[2026-08-31 17:49:21,353.353 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:49:21,551.551 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:49:21,579.579 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:49:21,757.757 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:49:21,803.803 INFO    ] time= 31/08/2026 17:49:21
[2026-08-31 17:49:21,847.847 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:49:21,891.891 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:49:22,013.013 INFO    ] No existing commands found in stream
[2026-08-31 17:49:27,038.038 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:49:27,041.041 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-08-31 17:49:28,941.941 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 17:49:28,944.944 INFO    ] Checking for system updates...
[2026-08-31 17:49:28,980.980 INFO    ] 200
[2026-08-31 17:49:28,983.983 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:49:29,042.042 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:49:29,044.044 INFO    ] No update needed
[2026-08-31 17:49:29,047.047 INFO    ] Checking for camera pi updates...
[2026-08-31 17:49:29,080.080 INFO    ] 200
[2026-08-31 17:49:29,082.082 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:49:29,122.122 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:49:29,198.198 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:49:29,200.200 INFO    ] No camera update needed
[2026-08-31 17:49:29,202.202 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:49:29,205.205 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:49:29,210.210 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:49:29,215.215 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:49:31,256.256 INFO    ] ================================================
[2026-08-31 17:49:31,271.271 INFO    ] Launching Daemon at Mon Aug 31 17:49:31 IST 2026
[2026-08-31 17:49:31,282.282 INFO    ] ================================================
[2026-08-31 17:49:31,910.910 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:49:31
[2026-08-31 17:49:32,614.614 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:49:32,934.934 INFO    ] Initializing speech engine...
[2026-08-31 17:49:32,949.949 INFO    ] 2026-08-31 17:49:32
[2026-08-31 17:49:33,236.236 INFO    ] 2026-08-31 17:49:33
[2026-08-31 17:49:33,287.287 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:49:33,510.510 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:49:33,520.520 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:49:33,676.676 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:49:33,736.736 INFO    ] time= 31/08/2026 17:49:33
[2026-08-31 17:49:33,796.796 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:49:33,804.804 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:49:33,936.936 INFO    ] No existing commands found in stream
[2026-08-31 17:49:38,962.962 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:49:38,965.965 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-08-31 17:49:41,162.162 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 17:49:41,165.165 INFO    ] Checking for system updates...
[2026-08-31 17:49:41,206.206 INFO    ] 200
[2026-08-31 17:49:41,209.209 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:49:41,267.267 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:49:41,270.270 INFO    ] No update needed
[2026-08-31 17:49:41,272.272 INFO    ] Checking for camera pi updates...
[2026-08-31 17:49:41,306.306 INFO    ] 200
[2026-08-31 17:49:41,309.309 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:49:41,349.349 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:49:41,432.432 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:49:41,434.434 INFO    ] No camera update needed
[2026-08-31 17:49:41,436.436 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:49:41,439.439 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:49:41,444.444 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:49:41,449.449 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:49:43,490.490 INFO    ] ================================================
[2026-08-31 17:49:43,506.506 INFO    ] Launching Daemon at Mon Aug 31 17:49:43 IST 2026
[2026-08-31 17:49:43,517.517 INFO    ] ================================================
[2026-08-31 17:49:44,098.098 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:49:44
[2026-08-31 17:49:44,708.708 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:49:44,985.985 INFO    ] Initializing speech engine...
[2026-08-31 17:49:44,992.992 INFO    ] 2026-08-31 17:49:44
[2026-08-31 17:49:45,252.252 INFO    ] 2026-08-31 17:49:45
[2026-08-31 17:49:45,282.282 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:49:45,532.532 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:49:45,538.538 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:49:45,709.709 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:49:45,769.769 INFO    ] time= 31/08/2026 17:49:45
[2026-08-31 17:49:45,801.801 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:49:45,818.818 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:49:45,952.952 INFO    ] No existing commands found in stream
[2026-08-31 17:49:50,974.974 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:49:50,977.977 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-08-31 17:49:53,681.681 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 17:49:53,683.683 INFO    ] Checking for system updates...
[2026-08-31 17:49:53,722.722 INFO    ] 200
[2026-08-31 17:49:53,724.724 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:49:53,776.776 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:49:53,778.778 INFO    ] No update needed
[2026-08-31 17:49:53,781.781 INFO    ] Checking for camera pi updates...
[2026-08-31 17:49:53,817.817 INFO    ] 200
[2026-08-31 17:49:53,819.819 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:49:53,863.863 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:49:53,955.955 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:49:53,958.958 INFO    ] No camera update needed
[2026-08-31 17:49:53,960.960 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:49:53,963.963 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:49:53,968.968 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:49:53,973.973 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:49:56,013.013 INFO    ] ================================================
[2026-08-31 17:49:56,028.028 INFO    ] Launching Daemon at Mon Aug 31 17:49:56 IST 2026
[2026-08-31 17:49:56,038.038 INFO    ] ================================================
[2026-08-31 17:49:56,617.617 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:49:56
[2026-08-31 17:49:57,213.213 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:49:57,488.488 INFO    ] Initializing speech engine...
[2026-08-31 17:49:57,497.497 INFO    ] 2026-08-31 17:49:57
[2026-08-31 17:49:57,756.756 INFO    ] 2026-08-31 17:49:57
[2026-08-31 17:49:57,807.807 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:49:58,055.055 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:49:58,063.063 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:49:58,280.280 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:49:58,298.298 INFO    ] time= 31/08/2026 17:49:58
[2026-08-31 17:49:58,316.316 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:49:58,345.345 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:49:58,465.465 INFO    ] No existing commands found in stream
[2026-08-31 17:50:03,495.495 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:50:03,499.499 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-08-31 17:50:07,129.129 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 17:50:07,131.131 INFO    ] Checking for system updates...
[2026-08-31 17:50:07,171.171 INFO    ] 200
[2026-08-31 17:50:07,174.174 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:50:07,234.234 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:50:07,236.236 INFO    ] No update needed
[2026-08-31 17:50:07,239.239 INFO    ] Checking for camera pi updates...
[2026-08-31 17:50:07,281.281 INFO    ] 200
[2026-08-31 17:50:07,283.283 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:50:07,323.323 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:50:07,428.428 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:50:07,430.430 INFO    ] No camera update needed
[2026-08-31 17:50:07,433.433 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:50:07,435.435 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:50:07,440.440 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:50:07,445.445 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:50:09,486.486 INFO    ] ================================================
[2026-08-31 17:50:09,501.501 INFO    ] Launching Daemon at Mon Aug 31 17:50:09 IST 2026
[2026-08-31 17:50:09,512.512 INFO    ] ================================================
[2026-08-31 17:50:10,081.081 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:50:10
[2026-08-31 17:50:10,664.664 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:50:10,932.932 INFO    ] Initializing speech engine...
[2026-08-31 17:50:10,941.941 INFO    ] 2026-08-31 17:50:10
[2026-08-31 17:50:11,194.194 INFO    ] 2026-08-31 17:50:11
[2026-08-31 17:50:11,252.252 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:50:11,474.474 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:50:11,483.483 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:50:11,617.617 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:50:11,661.661 INFO    ] time= 31/08/2026 17:50:11
[2026-08-31 17:50:11,716.716 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:50:11,747.747 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:50:11,890.890 INFO    ] No existing commands found in stream
[2026-08-31 17:50:16,905.905 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:50:16,908.908 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-08-31 17:50:21,170.170 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 17:50:21,172.172 INFO    ] Checking for system updates...
[2026-08-31 17:50:21,208.208 INFO    ] 200
[2026-08-31 17:50:21,210.210 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:50:21,270.270 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:50:21,272.272 INFO    ] No update needed
[2026-08-31 17:50:21,275.275 INFO    ] Checking for camera pi updates...
[2026-08-31 17:50:21,313.313 INFO    ] 200
[2026-08-31 17:50:21,315.315 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:50:21,356.356 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:50:21,458.458 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:50:21,460.460 INFO    ] No camera update needed
[2026-08-31 17:50:21,463.463 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:50:21,466.466 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:50:21,472.472 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:50:21,478.478 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:50:23,519.519 INFO    ] ================================================
[2026-08-31 17:50:23,533.533 INFO    ] Launching Daemon at Mon Aug 31 17:50:23 IST 2026
[2026-08-31 17:50:23,544.544 INFO    ] ================================================
[2026-08-31 17:50:24,108.108 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:50:24
[2026-08-31 17:50:24,689.689 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:50:24,957.957 INFO    ] Initializing speech engine...
[2026-08-31 17:50:24,966.966 INFO    ] 2026-08-31 17:50:24
[2026-08-31 17:50:25,241.241 INFO    ] 2026-08-31 17:50:25
[2026-08-31 17:50:25,278.278 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:50:25,509.509 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:50:25,545.545 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:50:25,778.778 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:50:25,829.829 INFO    ] time= 31/08/2026 17:50:25
[2026-08-31 17:50:25,852.852 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:50:25,862.862 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:50:25,976.976 INFO    ] No existing commands found in stream
[2026-08-31 17:50:31,008.008 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:50:31,011.011 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-08-31 17:50:34,486.486 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 17:50:34,489.489 INFO    ] Checking for system updates...
[2026-08-31 17:50:34,529.529 INFO    ] 200
[2026-08-31 17:50:34,532.532 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:50:34,584.584 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:50:34,586.586 INFO    ] No update needed
[2026-08-31 17:50:34,589.589 INFO    ] Checking for camera pi updates...
[2026-08-31 17:50:34,626.626 INFO    ] 200
[2026-08-31 17:50:34,629.629 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:50:34,674.674 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:50:34,753.753 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:50:34,755.755 INFO    ] No camera update needed
[2026-08-31 17:50:34,758.758 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:50:34,760.760 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:50:34,765.765 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:50:34,770.770 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:50:36,809.809 INFO    ] ================================================
[2026-08-31 17:50:36,825.825 INFO    ] Launching Daemon at Mon Aug 31 17:50:36 IST 2026
[2026-08-31 17:50:36,836.836 INFO    ] ================================================
[2026-08-31 17:50:37,472.472 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:50:37
[2026-08-31 17:50:38,055.055 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:50:38,315.315 INFO    ] Initializing speech engine...
[2026-08-31 17:50:38,334.334 INFO    ] 2026-08-31 17:50:38
[2026-08-31 17:50:38,583.583 INFO    ] 2026-08-31 17:50:38
[2026-08-31 17:50:38,618.618 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:50:38,793.793 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:50:38,806.806 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:50:38,955.955 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:50:38,961.961 INFO    ] time= 31/08/2026 17:50:38
[2026-08-31 17:50:39,026.026 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:50:39,032.032 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:50:39,158.158 INFO    ] No existing commands found in stream
[2026-08-31 17:50:44,169.169 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:50:44,172.172 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-08-31 17:50:48,091.091 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 17:50:48,093.093 INFO    ] Checking for system updates...
[2026-08-31 17:50:48,133.133 INFO    ] 200
[2026-08-31 17:50:48,136.136 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:50:48,194.194 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:50:48,197.197 INFO    ] No update needed
[2026-08-31 17:50:48,200.200 INFO    ] Checking for camera pi updates...
[2026-08-31 17:50:48,237.237 INFO    ] 200
[2026-08-31 17:50:48,240.240 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:50:48,280.280 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:50:48,363.363 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:50:48,366.366 INFO    ] No camera update needed
[2026-08-31 17:50:48,368.368 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:50:48,371.371 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:50:48,376.376 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:50:48,381.381 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:50:50,421.421 INFO    ] ================================================
[2026-08-31 17:50:50,437.437 INFO    ] Launching Daemon at Mon Aug 31 17:50:50 IST 2026
[2026-08-31 17:50:50,449.449 INFO    ] ================================================
[2026-08-31 17:50:51,037.037 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:50:51
[2026-08-31 17:50:51,620.620 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:50:51,893.893 INFO    ] Initializing speech engine...
[2026-08-31 17:50:51,899.899 INFO    ] 2026-08-31 17:50:51
[2026-08-31 17:50:52,156.156 INFO    ] 2026-08-31 17:50:52
[2026-08-31 17:50:52,187.187 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:50:52,455.455 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:50:52,463.463 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:50:52,642.642 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:50:52,694.694 INFO    ] time= 31/08/2026 17:50:52
[2026-08-31 17:50:52,700.700 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:50:52,719.719 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:50:52,848.848 INFO    ] No existing commands found in stream
[2026-08-31 17:50:57,860.860 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:50:57,863.863 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-08-31 17:50:59,961.961 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 17:50:59,963.963 INFO    ] Checking for system updates...
[2026-08-31 17:51:00,000.000 INFO    ] 200
[2026-08-31 17:51:00,002.002 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:51:00,063.063 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:51:00,065.065 INFO    ] No update needed
[2026-08-31 17:51:00,068.068 INFO    ] Checking for camera pi updates...
[2026-08-31 17:51:00,101.101 INFO    ] 200
[2026-08-31 17:51:00,104.104 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:51:00,145.145 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:51:00,230.230 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:51:00,232.232 INFO    ] No camera update needed
[2026-08-31 17:51:00,234.234 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:51:00,236.236 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:51:00,242.242 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:51:00,247.247 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:51:02,301.301 INFO    ] ================================================
[2026-08-31 17:51:02,322.322 INFO    ] Launching Daemon at Mon Aug 31 17:51:02 IST 2026
[2026-08-31 17:51:02,338.338 INFO    ] ================================================
[2026-08-31 17:51:02,980.980 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:51:02
[2026-08-31 17:51:03,597.597 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:51:03,878.878 INFO    ] Initializing speech engine...
[2026-08-31 17:51:03,892.892 INFO    ] 2026-08-31 17:51:03
[2026-08-31 17:51:04,191.191 INFO    ] 2026-08-31 17:51:04
[2026-08-31 17:51:04,228.228 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:51:04,440.440 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:51:04,455.455 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:51:04,611.611 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:51:04,616.616 INFO    ] time= 31/08/2026 17:51:04
[2026-08-31 17:51:04,624.624 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:51:04,659.659 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:51:04,812.812 INFO    ] No existing commands found in stream
[2026-08-31 17:51:09,827.827 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:51:09,830.830 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-08-31 17:51:11,266.266 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 17:51:11,268.268 INFO    ] Checking for system updates...
[2026-08-31 17:51:11,310.310 INFO    ] 200
[2026-08-31 17:51:11,312.312 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:51:11,370.370 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:51:11,372.372 INFO    ] No update needed
[2026-08-31 17:51:11,375.375 INFO    ] Checking for camera pi updates...
[2026-08-31 17:51:11,412.412 INFO    ] 200
[2026-08-31 17:51:11,415.415 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:51:11,454.454 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:51:11,558.558 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:51:11,561.561 INFO    ] No camera update needed
[2026-08-31 17:51:11,563.563 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:51:11,565.565 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:51:11,570.570 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:51:11,575.575 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:51:13,615.615 INFO    ] ================================================
[2026-08-31 17:51:13,630.630 INFO    ] Launching Daemon at Mon Aug 31 17:51:13 IST 2026
[2026-08-31 17:51:13,641.641 INFO    ] ================================================
[2026-08-31 17:51:14,220.220 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:51:14
[2026-08-31 17:51:14,817.817 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:51:15,092.092 INFO    ] Initializing speech engine...
[2026-08-31 17:51:15,113.113 INFO    ] 2026-08-31 17:51:15
[2026-08-31 17:51:15,382.382 INFO    ] 2026-08-31 17:51:15
[2026-08-31 17:51:15,418.418 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:51:15,643.643 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:51:15,693.693 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:51:15,867.867 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:51:15,874.874 INFO    ] time= 31/08/2026 17:51:15
[2026-08-31 17:51:15,938.938 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:51:15,982.982 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:51:16,079.079 INFO    ] No existing commands found in stream
[2026-08-31 17:51:21,092.092 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:51:21,095.095 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-08-31 17:51:24,531.531 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 17:51:24,534.534 INFO    ] Checking for system updates...
[2026-08-31 17:51:24,569.569 INFO    ] 200
[2026-08-31 17:51:24,572.572 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:51:24,623.623 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:51:24,626.626 INFO    ] No update needed
[2026-08-31 17:51:24,628.628 INFO    ] Checking for camera pi updates...
[2026-08-31 17:51:24,664.664 INFO    ] 200
[2026-08-31 17:51:24,667.667 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:51:24,712.712 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:51:24,887.887 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:51:24,889.889 INFO    ] No camera update needed
[2026-08-31 17:51:24,892.892 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:51:24,894.894 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:51:24,900.900 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:51:24,905.905 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:51:26,949.949 INFO    ] ================================================
[2026-08-31 17:51:26,965.965 INFO    ] Launching Daemon at Mon Aug 31 17:51:26 IST 2026
[2026-08-31 17:51:26,976.976 INFO    ] ================================================
[2026-08-31 17:51:27,554.554 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:51:27
[2026-08-31 17:51:28,138.138 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:51:28,408.408 INFO    ] Initializing speech engine...
[2026-08-31 17:51:28,417.417 INFO    ] 2026-08-31 17:51:28
[2026-08-31 17:51:28,667.667 INFO    ] 2026-08-31 17:51:28
[2026-08-31 17:51:28,702.702 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:51:28,963.963 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:51:28,969.969 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:51:29,101.101 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:51:29,118.118 INFO    ] time= 31/08/2026 17:51:29
[2026-08-31 17:51:29,187.187 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:51:29,237.237 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:51:29,386.386 INFO    ] No existing commands found in stream
[2026-08-31 17:51:34,401.401 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:51:34,404.404 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-08-31 17:51:37,563.563 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 17:51:37,566.566 INFO    ] Checking for system updates...
[2026-08-31 17:51:37,608.608 INFO    ] 200
[2026-08-31 17:51:37,610.610 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:51:37,673.673 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:51:37,675.675 INFO    ] No update needed
[2026-08-31 17:51:37,678.678 INFO    ] Checking for camera pi updates...
[2026-08-31 17:51:37,712.712 INFO    ] 200
[2026-08-31 17:51:37,714.714 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:51:37,758.758 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:51:37,841.841 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:51:37,843.843 INFO    ] No camera update needed
[2026-08-31 17:51:37,846.846 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:51:37,848.848 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:51:37,853.853 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:51:37,858.858 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:51:39,899.899 INFO    ] ================================================
[2026-08-31 17:51:39,913.913 INFO    ] Launching Daemon at Mon Aug 31 17:51:39 IST 2026
[2026-08-31 17:51:39,925.925 INFO    ] ================================================
[2026-08-31 17:51:40,509.509 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:51:40
[2026-08-31 17:51:41,092.092 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:51:41,358.358 INFO    ] Initializing speech engine...
[2026-08-31 17:51:41,367.367 INFO    ] 2026-08-31 17:51:41
[2026-08-31 17:51:41,613.613 INFO    ] 2026-08-31 17:51:41
[2026-08-31 17:51:41,648.648 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:51:41,845.845 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:51:41,902.902 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:51:42,039.039 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:51:42,082.082 INFO    ] time= 31/08/2026 17:51:42
[2026-08-31 17:51:42,136.136 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:51:42,173.173 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:51:42,263.263 INFO    ] No existing commands found in stream
[2026-08-31 17:51:47,294.294 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:51:47,297.297 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-08-31 17:51:49,841.841 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 17:51:49,844.844 INFO    ] Checking for system updates...
[2026-08-31 17:51:49,883.883 INFO    ] 200
[2026-08-31 17:51:49,885.885 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:51:49,951.951 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:51:49,954.954 INFO    ] No update needed
[2026-08-31 17:51:49,956.956 INFO    ] Checking for camera pi updates...
[2026-08-31 17:51:49,993.993 INFO    ] 200
[2026-08-31 17:51:49,995.995 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:51:50,055.055 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:51:50,139.139 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:51:50,141.141 INFO    ] No camera update needed
[2026-08-31 17:51:50,143.143 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:51:50,146.146 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:51:50,151.151 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:51:50,156.156 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:51:52,197.197 INFO    ] ================================================
[2026-08-31 17:51:52,213.213 INFO    ] Launching Daemon at Mon Aug 31 17:51:52 IST 2026
[2026-08-31 17:51:52,224.224 INFO    ] ================================================
[2026-08-31 17:51:52,788.788 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:51:52
[2026-08-31 17:51:53,369.369 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:51:53,620.620 INFO    ] Initializing speech engine...
[2026-08-31 17:51:53,642.642 INFO    ] 2026-08-31 17:51:53
[2026-08-31 17:51:53,896.896 INFO    ] 2026-08-31 17:51:53
[2026-08-31 17:51:53,932.932 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:51:54,128.128 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:51:54,173.173 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:51:54,335.335 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:51:54,390.390 INFO    ] time= 31/08/2026 17:51:54
[2026-08-31 17:51:54,449.449 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:51:54,470.470 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:51:54,631.631 INFO    ] No existing commands found in stream
[2026-08-31 17:51:59,657.657 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:51:59,660.660 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-08-31 17:52:04,049.049 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 17:52:04,052.052 INFO    ] Checking for system updates...
[2026-08-31 17:52:04,089.089 INFO    ] 200
[2026-08-31 17:52:04,091.091 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:52:04,144.144 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:52:04,147.147 INFO    ] No update needed
[2026-08-31 17:52:04,150.150 INFO    ] Checking for camera pi updates...
[2026-08-31 17:52:04,188.188 INFO    ] 200
[2026-08-31 17:52:04,191.191 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:52:04,237.237 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:52:04,333.333 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:52:04,336.336 INFO    ] No camera update needed
[2026-08-31 17:52:04,338.338 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:52:04,340.340 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:52:04,347.347 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:52:04,352.352 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:52:06,392.392 INFO    ] ================================================
[2026-08-31 17:52:06,408.408 INFO    ] Launching Daemon at Mon Aug 31 17:52:06 IST 2026
[2026-08-31 17:52:06,418.418 INFO    ] ================================================
[2026-08-31 17:52:07,024.024 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:52:07
[2026-08-31 17:52:07,605.605 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:52:07,876.876 INFO    ] Initializing speech engine...
[2026-08-31 17:52:07,883.883 INFO    ] 2026-08-31 17:52:07
[2026-08-31 17:52:08,128.128 INFO    ] 2026-08-31 17:52:08
[2026-08-31 17:52:08,193.193 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:52:08,414.414 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:52:08,423.423 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:52:08,557.557 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:52:08,622.622 INFO    ] time= 31/08/2026 17:52:08
[2026-08-31 17:52:08,682.682 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:52:08,690.690 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:52:08,810.810 INFO    ] No existing commands found in stream
[2026-08-31 17:52:13,835.835 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:52:13,838.838 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-08-31 17:52:17,530.530 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 17:52:17,532.532 INFO    ] Checking for system updates...
[2026-08-31 17:52:17,571.571 INFO    ] 200
[2026-08-31 17:52:17,574.574 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:52:17,627.627 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:52:17,629.629 INFO    ] No update needed
[2026-08-31 17:52:17,632.632 INFO    ] Checking for camera pi updates...
[2026-08-31 17:52:17,668.668 INFO    ] 200
[2026-08-31 17:52:17,671.671 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:52:17,714.714 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:52:17,798.798 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:52:17,801.801 INFO    ] No camera update needed
[2026-08-31 17:52:17,803.803 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:52:17,805.805 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:52:17,811.811 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:52:17,816.816 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:52:19,856.856 INFO    ] ================================================
[2026-08-31 17:52:19,872.872 INFO    ] Launching Daemon at Mon Aug 31 17:52:19 IST 2026
[2026-08-31 17:52:19,882.882 INFO    ] ================================================
[2026-08-31 17:52:20,461.461 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:52:20
[2026-08-31 17:52:21,066.066 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:52:21,325.325 INFO    ] Initializing speech engine...
[2026-08-31 17:52:21,343.343 INFO    ] 2026-08-31 17:52:21
[2026-08-31 17:52:21,593.593 INFO    ] 2026-08-31 17:52:21
[2026-08-31 17:52:21,629.629 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:52:21,809.809 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:52:21,829.829 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:52:22,008.008 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:52:22,024.024 INFO    ] time= 31/08/2026 17:52:22
[2026-08-31 17:52:22,066.066 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:52:22,120.120 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:52:22,205.205 INFO    ] No existing commands found in stream
[2026-08-31 17:52:27,217.217 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:52:27,220.220 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-08-31 17:52:30,844.844 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 17:52:30,847.847 INFO    ] Checking for system updates...
[2026-08-31 17:52:30,888.888 INFO    ] 200
[2026-08-31 17:52:30,891.891 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:52:30,948.948 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:52:30,951.951 INFO    ] No update needed
[2026-08-31 17:52:30,954.954 INFO    ] Checking for camera pi updates...
[2026-08-31 17:52:30,991.991 INFO    ] 200
[2026-08-31 17:52:30,994.994 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:52:31,039.039 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:52:31,142.142 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:52:31,145.145 INFO    ] No camera update needed
[2026-08-31 17:52:31,147.147 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:52:31,149.149 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:52:31,155.155 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:52:31,160.160 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:52:33,203.203 INFO    ] ================================================
[2026-08-31 17:52:33,221.221 INFO    ] Launching Daemon at Mon Aug 31 17:52:33 IST 2026
[2026-08-31 17:52:33,234.234 INFO    ] ================================================
[2026-08-31 17:52:33,815.815 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:52:33
[2026-08-31 17:52:34,397.397 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:52:34,651.651 INFO    ] Initializing speech engine...
[2026-08-31 17:52:34,660.660 INFO    ] 2026-08-31 17:52:34
[2026-08-31 17:52:34,954.954 INFO    ] 2026-08-31 17:52:34
[2026-08-31 17:52:34,989.989 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:52:35,210.210 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:52:35,237.237 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:52:35,416.416 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:52:35,458.458 INFO    ] time= 31/08/2026 17:52:35
[2026-08-31 17:52:35,512.512 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:52:35,548.548 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:52:35,653.653 INFO    ] No existing commands found in stream
[2026-08-31 17:52:40,677.677 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:52:40,680.680 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-08-31 17:52:43,780.780 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 17:52:43,784.784 INFO    ] Checking for system updates...
[2026-08-31 17:52:43,826.826 INFO    ] 200
[2026-08-31 17:52:43,829.829 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:52:43,885.885 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:52:43,887.887 INFO    ] No update needed
[2026-08-31 17:52:43,890.890 INFO    ] Checking for camera pi updates...
[2026-08-31 17:52:43,929.929 INFO    ] 200
[2026-08-31 17:52:43,931.931 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:52:43,978.978 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:52:44,057.057 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:52:44,059.059 INFO    ] No camera update needed
[2026-08-31 17:52:44,062.062 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:52:44,064.064 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:52:44,069.069 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:52:44,074.074 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:52:46,115.115 INFO    ] ================================================
[2026-08-31 17:52:46,130.130 INFO    ] Launching Daemon at Mon Aug 31 17:52:46 IST 2026
[2026-08-31 17:52:46,142.142 INFO    ] ================================================
[2026-08-31 17:52:46,719.719 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:52:46
[2026-08-31 17:52:47,318.318 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:52:47,594.594 INFO    ] Initializing speech engine...
[2026-08-31 17:52:47,602.602 INFO    ] 2026-08-31 17:52:47
[2026-08-31 17:52:47,861.861 INFO    ] 2026-08-31 17:52:47
[2026-08-31 17:52:47,915.915 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:52:48,164.164 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:52:48,169.169 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:52:48,357.357 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:52:48,402.402 INFO    ] time= 31/08/2026 17:52:48
[2026-08-31 17:52:48,408.408 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:52:48,426.426 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:52:48,525.525 INFO    ] No existing commands found in stream
[2026-08-31 17:52:53,547.547 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:52:53,550.550 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-08-31 17:52:56,285.285 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 17:52:56,287.287 INFO    ] Checking for system updates...
[2026-08-31 17:52:56,324.324 INFO    ] 200
[2026-08-31 17:52:56,327.327 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:52:56,385.385 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:52:56,387.387 INFO    ] No update needed
[2026-08-31 17:52:56,390.390 INFO    ] Checking for camera pi updates...
[2026-08-31 17:52:56,423.423 INFO    ] 200
[2026-08-31 17:52:56,426.426 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:52:56,471.471 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:52:56,575.575 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:52:56,577.577 INFO    ] No camera update needed
[2026-08-31 17:52:56,580.580 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:52:56,582.582 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:52:56,588.588 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:52:56,593.593 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:52:58,636.636 INFO    ] ================================================
[2026-08-31 17:52:58,651.651 INFO    ] Launching Daemon at Mon Aug 31 17:52:58 IST 2026
[2026-08-31 17:52:58,661.661 INFO    ] ================================================
[2026-08-31 17:52:59,226.226 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:52:59
[2026-08-31 17:52:59,808.808 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:53:00,076.076 INFO    ] Initializing speech engine...
[2026-08-31 17:53:00,087.087 INFO    ] 2026-08-31 17:53:00
[2026-08-31 17:53:00,335.335 INFO    ] 2026-08-31 17:53:00
[2026-08-31 17:53:00,371.371 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:53:00,569.569 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:53:00,619.619 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:53:00,857.857 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:53:00,902.902 INFO    ] time= 31/08/2026 17:53:00
[2026-08-31 17:53:00,908.908 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:53:00,925.925 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:53:01,055.055 INFO    ] No existing commands found in stream
[2026-08-31 17:53:06,070.070 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:53:06,072.072 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-08-31 17:53:08,335.335 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 17:53:08,337.337 INFO    ] Checking for system updates...
[2026-08-31 17:53:08,373.373 INFO    ] 200
[2026-08-31 17:53:08,375.375 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:53:08,434.434 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:53:08,436.436 INFO    ] No update needed
[2026-08-31 17:53:08,439.439 INFO    ] Checking for camera pi updates...
[2026-08-31 17:53:08,476.476 INFO    ] 200
[2026-08-31 17:53:08,478.478 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:53:08,519.519 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:53:08,611.611 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:53:08,613.613 INFO    ] No camera update needed
[2026-08-31 17:53:08,615.615 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:53:08,618.618 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:53:08,623.623 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:53:08,628.628 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:53:10,669.669 INFO    ] ================================================
[2026-08-31 17:53:10,684.684 INFO    ] Launching Daemon at Mon Aug 31 17:53:10 IST 2026
[2026-08-31 17:53:10,695.695 INFO    ] ================================================
[2026-08-31 17:53:11,261.261 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:53:11
[2026-08-31 17:53:11,843.843 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:53:12,112.112 INFO    ] Initializing speech engine...
[2026-08-31 17:53:12,122.122 INFO    ] 2026-08-31 17:53:12
[2026-08-31 17:53:12,371.371 INFO    ] 2026-08-31 17:53:12
[2026-08-31 17:53:12,407.407 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:53:12,603.603 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:53:12,632.632 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:53:12,810.810 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:53:12,849.849 INFO    ] time= 31/08/2026 17:53:12
[2026-08-31 17:53:12,898.898 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:53:12,943.943 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:53:13,078.078 INFO    ] No existing commands found in stream
[2026-08-31 17:53:18,103.103 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:53:18,106.106 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-08-31 17:53:22,481.481 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 17:53:22,484.484 INFO    ] Checking for system updates...
[2026-08-31 17:53:22,519.519 INFO    ] 200
[2026-08-31 17:53:22,522.522 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:53:22,587.587 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:53:22,589.589 INFO    ] No update needed
[2026-08-31 17:53:22,592.592 INFO    ] Checking for camera pi updates...
[2026-08-31 17:53:22,628.628 INFO    ] 200
[2026-08-31 17:53:22,631.631 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:53:22,675.675 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:53:22,748.748 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:53:22,751.751 INFO    ] No camera update needed
[2026-08-31 17:53:22,753.753 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:53:22,755.755 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:53:22,761.761 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:53:22,765.765 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:53:24,806.806 INFO    ] ================================================
[2026-08-31 17:53:24,822.822 INFO    ] Launching Daemon at Mon Aug 31 17:53:24 IST 2026
[2026-08-31 17:53:24,833.833 INFO    ] ================================================
[2026-08-31 17:53:25,399.399 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:53:25
[2026-08-31 17:53:25,984.984 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:53:26,232.232 INFO    ] Initializing speech engine...
[2026-08-31 17:53:26,246.246 INFO    ] 2026-08-31 17:53:26
[2026-08-31 17:53:26,511.511 INFO    ] 2026-08-31 17:53:26
[2026-08-31 17:53:26,547.547 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:53:26,743.743 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:53:26,750.750 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:53:26,945.945 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:53:26,973.973 INFO    ] time= 31/08/2026 17:53:26
[2026-08-31 17:53:27,027.027 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:53:27,076.076 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:53:27,212.212 INFO    ] No existing commands found in stream
[2026-08-31 17:53:32,239.239 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:53:32,242.242 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-08-31 17:53:36,360.360 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 17:53:36,362.362 INFO    ] Checking for system updates...
[2026-08-31 17:53:36,403.403 INFO    ] 200
[2026-08-31 17:53:36,406.406 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:53:36,463.463 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:53:36,466.466 INFO    ] No update needed
[2026-08-31 17:53:36,469.469 INFO    ] Checking for camera pi updates...
[2026-08-31 17:53:36,508.508 INFO    ] 200
[2026-08-31 17:53:36,511.511 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:53:36,561.561 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:53:36,644.644 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:53:36,647.647 INFO    ] No camera update needed
[2026-08-31 17:53:36,650.650 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:53:36,652.652 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:53:36,659.659 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:53:36,664.664 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:53:38,704.704 INFO    ] ================================================
[2026-08-31 17:53:38,720.720 INFO    ] Launching Daemon at Mon Aug 31 17:53:38 IST 2026
[2026-08-31 17:53:38,730.730 INFO    ] ================================================
[2026-08-31 17:53:39,334.334 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:53:39
[2026-08-31 17:53:39,918.918 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:53:40,177.177 INFO    ] Initializing speech engine...
[2026-08-31 17:53:40,195.195 INFO    ] 2026-08-31 17:53:40
[2026-08-31 17:53:40,447.447 INFO    ] 2026-08-31 17:53:40
[2026-08-31 17:53:40,482.482 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:53:40,748.748 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:53:40,753.753 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:53:40,971.971 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:53:41,018.018 INFO    ] time= 31/08/2026 17:53:40
[2026-08-31 17:53:41,037.037 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:53:41,047.047 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:53:41,175.175 INFO    ] No existing commands found in stream
[2026-08-31 17:53:46,191.191 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:53:46,194.194 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-08-31 17:53:46,770.770 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 17:53:46,773.773 INFO    ] Checking for system updates...
[2026-08-31 17:53:46,814.814 INFO    ] 200
[2026-08-31 17:53:46,816.816 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:53:46,871.871 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:53:46,874.874 INFO    ] No update needed
[2026-08-31 17:53:46,876.876 INFO    ] Checking for camera pi updates...
[2026-08-31 17:53:46,915.915 INFO    ] 200
[2026-08-31 17:53:46,917.917 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:53:46,964.964 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:53:47,073.073 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:53:47,076.076 INFO    ] No camera update needed
[2026-08-31 17:53:47,079.079 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:53:47,082.082 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:53:47,088.088 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:53:47,094.094 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:53:49,136.136 INFO    ] ================================================
[2026-08-31 17:53:49,152.152 INFO    ] Launching Daemon at Mon Aug 31 17:53:49 IST 2026
[2026-08-31 17:53:49,163.163 INFO    ] ================================================
[2026-08-31 17:53:49,729.729 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:53:49
[2026-08-31 17:53:50,313.313 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:53:50,580.580 INFO    ] Initializing speech engine...
[2026-08-31 17:53:50,590.590 INFO    ] 2026-08-31 17:53:50
[2026-08-31 17:53:50,870.870 INFO    ] 2026-08-31 17:53:50
[2026-08-31 17:53:50,925.925 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:53:51,156.156 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:53:51,162.162 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:53:51,408.408 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:53:51,433.433 INFO    ] time= 31/08/2026 17:53:51
[2026-08-31 17:53:51,443.443 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:53:51,469.469 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:53:51,576.576 INFO    ] No existing commands found in stream
[2026-08-31 17:53:56,603.603 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:53:56,606.606 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-08-31 17:53:58,484.484 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 17:53:58,487.487 INFO    ] Checking for system updates...
[2026-08-31 17:53:58,523.523 INFO    ] 200
[2026-08-31 17:53:58,526.526 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:53:58,579.579 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:53:58,582.582 INFO    ] No update needed
[2026-08-31 17:53:58,585.585 INFO    ] Checking for camera pi updates...
[2026-08-31 17:53:58,623.623 INFO    ] 200
[2026-08-31 17:53:58,626.626 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:53:58,685.685 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:53:58,758.758 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:53:58,761.761 INFO    ] No camera update needed
[2026-08-31 17:53:58,764.764 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:53:58,766.766 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:53:58,773.773 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:53:58,778.778 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:54:00,819.819 INFO    ] ================================================
[2026-08-31 17:54:00,835.835 INFO    ] Launching Daemon at Mon Aug 31 17:54:00 IST 2026
[2026-08-31 17:54:00,845.845 INFO    ] ================================================
[2026-08-31 17:54:01,480.480 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:54:01
[2026-08-31 17:54:02,186.186 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:54:02,532.532 INFO    ] Initializing speech engine...
[2026-08-31 17:54:02,540.540 INFO    ] 2026-08-31 17:54:02
[2026-08-31 17:54:02,854.854 INFO    ] 2026-08-31 17:54:02
[2026-08-31 17:54:02,921.921 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:54:03,617.617 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:54:03,653.653 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:54:03,823.823 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:54:03,848.848 INFO    ] time= 31/08/2026 17:54:03
[2026-08-31 17:54:03,858.858 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:54:03,861.861 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:54:03,981.981 INFO    ] No existing commands found in stream
[2026-08-31 17:54:08,996.996 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:54:08,999.999 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-08-31 17:54:14,606.606 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 17:54:14,609.609 INFO    ] Checking for system updates...
[2026-08-31 17:54:14,645.645 INFO    ] 200
[2026-08-31 17:54:14,648.648 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:54:14,706.706 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:54:14,710.710 INFO    ] No update needed
[2026-08-31 17:54:14,712.712 INFO    ] Checking for camera pi updates...
[2026-08-31 17:54:14,750.750 INFO    ] 200
[2026-08-31 17:54:14,753.753 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:54:14,802.802 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:54:14,868.868 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:54:14,871.871 INFO    ] No camera update needed
[2026-08-31 17:54:14,874.874 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:54:14,876.876 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:54:14,882.882 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:54:14,888.888 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:54:16,929.929 INFO    ] ================================================
[2026-08-31 17:54:16,945.945 INFO    ] Launching Daemon at Mon Aug 31 17:54:16 IST 2026
[2026-08-31 17:54:16,956.956 INFO    ] ================================================
[2026-08-31 17:54:17,580.580 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:54:17
[2026-08-31 17:54:18,162.162 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:54:18,409.409 INFO    ] Initializing speech engine...
[2026-08-31 17:54:18,421.421 INFO    ] 2026-08-31 17:54:18
[2026-08-31 17:54:18,683.683 INFO    ] 2026-08-31 17:54:18
[2026-08-31 17:54:18,725.725 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:54:18,973.973 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:54:18,977.977 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:54:19,116.116 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:54:19,181.181 INFO    ] time= 31/08/2026 17:54:19
[2026-08-31 17:54:19,237.237 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:54:19,244.244 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:54:19,379.379 INFO    ] No existing commands found in stream
[2026-08-31 17:54:24,400.400 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:54:24,402.402 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-08-31 17:54:25,681.681 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 17:54:25,683.683 INFO    ] Checking for system updates...
[2026-08-31 17:54:25,722.722 INFO    ] 200
[2026-08-31 17:54:25,729.729 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:54:25,798.798 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:54:25,801.801 INFO    ] No update needed
[2026-08-31 17:54:25,803.803 INFO    ] Checking for camera pi updates...
[2026-08-31 17:54:25,837.837 INFO    ] 200
[2026-08-31 17:54:25,840.840 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:54:25,885.885 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:54:25,969.969 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:54:25,971.971 INFO    ] No camera update needed
[2026-08-31 17:54:25,974.974 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:54:25,977.977 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:54:25,983.983 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:54:25,988.988 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:54:28,029.029 INFO    ] ================================================
[2026-08-31 17:54:28,044.044 INFO    ] Launching Daemon at Mon Aug 31 17:54:28 IST 2026
[2026-08-31 17:54:28,055.055 INFO    ] ================================================
[2026-08-31 17:54:28,617.617 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:54:28
[2026-08-31 17:54:29,198.198 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:54:29,463.463 INFO    ] Initializing speech engine...
[2026-08-31 17:54:29,472.472 INFO    ] 2026-08-31 17:54:29
[2026-08-31 17:54:29,719.719 INFO    ] 2026-08-31 17:54:29
[2026-08-31 17:54:29,754.754 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:54:29,924.924 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:54:29,937.937 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:54:30,081.081 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:54:30,085.085 INFO    ] time= 31/08/2026 17:54:30
[2026-08-31 17:54:30,091.091 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:54:30,144.144 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:54:30,251.251 INFO    ] No existing commands found in stream
[2026-08-31 17:54:35,281.281 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:54:35,283.283 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-08-31 17:54:37,732.732 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 17:54:37,735.735 INFO    ] Checking for system updates...
[2026-08-31 17:54:37,771.771 INFO    ] 200
[2026-08-31 17:54:37,774.774 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:54:37,835.835 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:54:37,838.838 INFO    ] No update needed
[2026-08-31 17:54:37,841.841 INFO    ] Checking for camera pi updates...
[2026-08-31 17:54:37,880.880 INFO    ] 200
[2026-08-31 17:54:37,883.883 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:54:37,931.931 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:54:38,036.036 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:54:38,039.039 INFO    ] No camera update needed
[2026-08-31 17:54:38,042.042 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:54:38,044.044 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:54:38,051.051 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:54:38,057.057 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:54:40,099.099 INFO    ] ================================================
[2026-08-31 17:54:40,115.115 INFO    ] Launching Daemon at Mon Aug 31 17:54:40 IST 2026
[2026-08-31 17:54:40,126.126 INFO    ] ================================================
[2026-08-31 17:54:40,703.703 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:54:40
[2026-08-31 17:54:41,382.382 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:54:41,700.700 INFO    ] Initializing speech engine...
[2026-08-31 17:54:41,710.710 INFO    ] 2026-08-31 17:54:41
[2026-08-31 17:54:42,017.017 INFO    ] 2026-08-31 17:54:41
[2026-08-31 17:54:42,104.104 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:54:42,281.281 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:54:42,287.287 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:54:42,481.481 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:54:42,522.522 INFO    ] time= 31/08/2026 17:54:42
[2026-08-31 17:54:42,541.541 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:54:42,550.550 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:54:42,679.679 INFO    ] No existing commands found in stream
[2026-08-31 17:54:47,709.709 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:54:47,712.712 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-08-31 17:54:51,126.126 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 17:54:51,129.129 INFO    ] Checking for system updates...
[2026-08-31 17:54:51,172.172 INFO    ] 200
[2026-08-31 17:54:51,175.175 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:54:51,234.234 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:54:51,237.237 INFO    ] No update needed
[2026-08-31 17:54:51,240.240 INFO    ] Checking for camera pi updates...
[2026-08-31 17:54:51,275.275 INFO    ] 200
[2026-08-31 17:54:51,278.278 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:54:51,328.328 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:54:51,421.421 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:54:51,424.424 INFO    ] No camera update needed
[2026-08-31 17:54:51,427.427 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:54:51,430.430 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:54:51,436.436 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:54:51,442.442 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:54:53,484.484 INFO    ] ================================================
[2026-08-31 17:54:53,500.500 INFO    ] Launching Daemon at Mon Aug 31 17:54:53 IST 2026
[2026-08-31 17:54:53,511.511 INFO    ] ================================================
[2026-08-31 17:54:54,110.110 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:54:54
[2026-08-31 17:54:54,782.782 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:54:55,098.098 INFO    ] Initializing speech engine...
[2026-08-31 17:54:55,105.105 INFO    ] 2026-08-31 17:54:55
[2026-08-31 17:54:55,398.398 INFO    ] 2026-08-31 17:54:55
[2026-08-31 17:54:55,511.511 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:54:55,731.731 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:54:55,737.737 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:54:55,928.928 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:54:55,946.946 INFO    ] time= 31/08/2026 17:54:55
[2026-08-31 17:54:55,968.968 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:54:55,995.995 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:54:56,115.115 INFO    ] No existing commands found in stream
[2026-08-31 17:55:01,136.136 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:55:01,140.140 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-08-31 17:55:04,417.417 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 17:55:04,420.420 INFO    ] Checking for system updates...
[2026-08-31 17:55:04,457.457 INFO    ] 200
[2026-08-31 17:55:04,460.460 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:55:04,513.513 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:55:04,515.515 INFO    ] No update needed
[2026-08-31 17:55:04,517.517 INFO    ] Checking for camera pi updates...
[2026-08-31 17:55:04,552.552 INFO    ] 200
[2026-08-31 17:55:04,554.554 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:55:04,596.596 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:55:04,696.696 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:55:04,699.699 INFO    ] No camera update needed
[2026-08-31 17:55:04,701.701 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:55:04,703.703 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:55:04,708.708 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:55:04,713.713 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:55:06,753.753 INFO    ] ================================================
[2026-08-31 17:55:06,768.768 INFO    ] Launching Daemon at Mon Aug 31 17:55:06 IST 2026
[2026-08-31 17:55:06,779.779 INFO    ] ================================================
[2026-08-31 17:55:07,439.439 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:55:07
[2026-08-31 17:55:08,115.115 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:55:08,424.424 INFO    ] Initializing speech engine...
[2026-08-31 17:55:08,433.433 INFO    ] 2026-08-31 17:55:08
[2026-08-31 17:55:08,713.713 INFO    ] 2026-08-31 17:55:08
[2026-08-31 17:55:08,769.769 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:55:09,057.057 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:55:09,066.066 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:55:09,264.264 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:55:09,274.274 INFO    ] time= 31/08/2026 17:55:09
[2026-08-31 17:55:09,296.296 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:55:09,322.322 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:55:09,433.433 INFO    ] No existing commands found in stream
[2026-08-31 17:55:14,458.458 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:55:14,461.461 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-08-31 17:55:15,463.463 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 17:55:15,466.466 INFO    ] Checking for system updates...
[2026-08-31 17:55:15,503.503 INFO    ] 200
[2026-08-31 17:55:15,506.506 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:55:15,568.568 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:55:15,571.571 INFO    ] No update needed
[2026-08-31 17:55:15,574.574 INFO    ] Checking for camera pi updates...
[2026-08-31 17:55:15,615.615 INFO    ] 200
[2026-08-31 17:55:15,618.618 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:55:15,660.660 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:55:15,747.747 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:55:15,750.750 INFO    ] No camera update needed
[2026-08-31 17:55:15,752.752 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:55:15,755.755 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:55:15,761.761 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:55:15,767.767 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:55:17,807.807 INFO    ] ================================================
[2026-08-31 17:55:17,822.822 INFO    ] Launching Daemon at Mon Aug 31 17:55:17 IST 2026
[2026-08-31 17:55:17,833.833 INFO    ] ================================================
[2026-08-31 17:55:18,398.398 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:55:18
[2026-08-31 17:55:18,979.979 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:55:19,230.230 INFO    ] Initializing speech engine...
[2026-08-31 17:55:19,253.253 INFO    ] 2026-08-31 17:55:19
[2026-08-31 17:55:19,507.507 INFO    ] 2026-08-31 17:55:19
[2026-08-31 17:55:19,542.542 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:55:19,740.740 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:55:19,789.789 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:55:19,945.945 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:55:19,985.985 INFO    ] time= 31/08/2026 17:55:19
[2026-08-31 17:55:20,044.044 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:55:20,079.079 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:55:20,210.210 INFO    ] No existing commands found in stream
[2026-08-31 17:55:25,235.235 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:55:25,239.239 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-08-31 17:55:25,737.737 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 17:55:25,740.740 INFO    ] Checking for system updates...
[2026-08-31 17:55:25,775.775 INFO    ] 200
[2026-08-31 17:55:25,777.777 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:55:25,830.830 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:55:25,832.832 INFO    ] No update needed
[2026-08-31 17:55:25,835.835 INFO    ] Checking for camera pi updates...
[2026-08-31 17:55:25,872.872 INFO    ] 200
[2026-08-31 17:55:25,875.875 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:55:25,920.920 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:55:26,003.003 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:55:26,008.008 INFO    ] No camera update needed
[2026-08-31 17:55:26,011.011 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:55:26,013.013 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:55:26,019.019 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:55:26,024.024 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:55:28,068.068 INFO    ] ================================================
[2026-08-31 17:55:28,083.083 INFO    ] Launching Daemon at Mon Aug 31 17:55:28 IST 2026
[2026-08-31 17:55:28,094.094 INFO    ] ================================================
[2026-08-31 17:55:28,658.658 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:55:28
[2026-08-31 17:55:29,241.241 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:55:29,512.512 INFO    ] Initializing speech engine...
[2026-08-31 17:55:29,522.522 INFO    ] 2026-08-31 17:55:29
[2026-08-31 17:55:29,772.772 INFO    ] 2026-08-31 17:55:29
[2026-08-31 17:55:29,805.805 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:55:30,004.004 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:55:30,049.049 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:55:30,208.208 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:55:30,256.256 INFO    ] time= 31/08/2026 17:55:30
[2026-08-31 17:55:30,310.310 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:55:30,344.344 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:55:30,399.399 INFO    ] No existing commands found in stream
[2026-08-31 17:55:35,410.410 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:55:35,413.413 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-08-31 17:55:36,860.860 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 17:55:36,864.864 INFO    ] Checking for system updates...
[2026-08-31 17:55:36,901.901 INFO    ] 200
[2026-08-31 17:55:36,904.904 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:55:36,956.956 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:55:36,959.959 INFO    ] No update needed
[2026-08-31 17:55:36,961.961 INFO    ] Checking for camera pi updates...
[2026-08-31 17:55:36,994.994 INFO    ] 200
[2026-08-31 17:55:36,997.997 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:55:37,049.049 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:55:37,235.235 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:55:37,238.238 INFO    ] No camera update needed
[2026-08-31 17:55:37,241.241 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:55:37,243.243 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:55:37,250.250 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:55:37,256.256 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:55:39,300.300 INFO    ] ================================================
[2026-08-31 17:55:39,316.316 INFO    ] Launching Daemon at Mon Aug 31 17:55:39 IST 2026
[2026-08-31 17:55:39,326.326 INFO    ] ================================================
[2026-08-31 17:55:39,938.938 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:55:39
[2026-08-31 17:55:40,625.625 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:55:40,947.947 INFO    ] Initializing speech engine...
[2026-08-31 17:55:40,954.954 INFO    ] 2026-08-31 17:55:40
[2026-08-31 17:55:41,243.243 INFO    ] 2026-08-31 17:55:41
[2026-08-31 17:55:41,289.289 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:55:41,520.520 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:55:41,526.526 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:55:41,723.723 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:55:41,784.784 INFO    ] time= 31/08/2026 17:55:41
[2026-08-31 17:55:41,798.798 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:55:41,816.816 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:55:41,945.945 INFO    ] No existing commands found in stream
[2026-08-31 17:55:46,963.963 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:55:46,966.966 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-08-31 17:55:51,086.086 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 17:55:51,089.089 INFO    ] Checking for system updates...
[2026-08-31 17:55:51,144.144 INFO    ] 200
[2026-08-31 17:55:51,147.147 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:55:51,200.200 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:55:51,203.203 INFO    ] No update needed
[2026-08-31 17:55:51,205.205 INFO    ] Checking for camera pi updates...
[2026-08-31 17:55:51,238.238 INFO    ] 200
[2026-08-31 17:55:51,241.241 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:55:51,288.288 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:55:51,367.367 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:55:51,370.370 INFO    ] No camera update needed
[2026-08-31 17:55:51,372.372 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:55:51,374.374 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:55:51,379.379 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:55:51,384.384 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:55:53,424.424 INFO    ] ================================================
[2026-08-31 17:55:53,439.439 INFO    ] Launching Daemon at Mon Aug 31 17:55:53 IST 2026
[2026-08-31 17:55:53,450.450 INFO    ] ================================================
[2026-08-31 17:55:54,061.061 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:55:54
[2026-08-31 17:55:54,645.645 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:55:54,920.920 INFO    ] Initializing speech engine...
[2026-08-31 17:55:54,926.926 INFO    ] 2026-08-31 17:55:54
[2026-08-31 17:55:55,175.175 INFO    ] 2026-08-31 17:55:55
[2026-08-31 17:55:55,210.210 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:55:55,468.468 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:55:55,478.478 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:55:55,614.614 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:55:55,659.659 INFO    ] time= 31/08/2026 17:55:55
[2026-08-31 17:55:55,708.708 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:55:55,747.747 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:55:55,892.892 INFO    ] No existing commands found in stream
[2026-08-31 17:56:00,909.909 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:56:00,912.912 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-08-31 17:56:03,810.810 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 17:56:03,813.813 INFO    ] Checking for system updates...
[2026-08-31 17:56:03,852.852 INFO    ] 200
[2026-08-31 17:56:03,855.855 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:56:03,915.915 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:56:03,917.917 INFO    ] No update needed
[2026-08-31 17:56:03,920.920 INFO    ] Checking for camera pi updates...
[2026-08-31 17:56:03,958.958 INFO    ] 200
[2026-08-31 17:56:03,960.960 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:56:04,006.006 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:56:04,092.092 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:56:04,094.094 INFO    ] No camera update needed
[2026-08-31 17:56:04,097.097 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:56:04,100.100 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:56:04,105.105 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:56:04,110.110 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:56:06,150.150 INFO    ] ================================================
[2026-08-31 17:56:06,165.165 INFO    ] Launching Daemon at Mon Aug 31 17:56:06 IST 2026
[2026-08-31 17:56:06,175.175 INFO    ] ================================================
[2026-08-31 17:56:06,789.789 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:56:06
[2026-08-31 17:56:07,389.389 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:56:07,668.668 INFO    ] Initializing speech engine...
[2026-08-31 17:56:07,674.674 INFO    ] 2026-08-31 17:56:07
[2026-08-31 17:56:07,934.934 INFO    ] 2026-08-31 17:56:07
[2026-08-31 17:56:07,965.965 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:56:08,210.210 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:56:08,220.220 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:56:08,352.352 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:56:08,400.400 INFO    ] time= 31/08/2026 17:56:08
[2026-08-31 17:56:08,454.454 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:56:08,488.488 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:56:08,615.615 INFO    ] No existing commands found in stream
[2026-08-31 17:56:13,640.640 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:56:13,643.643 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-08-31 17:56:17,459.459 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 17:56:17,461.461 INFO    ] Checking for system updates...
[2026-08-31 17:56:17,496.496 INFO    ] 200
[2026-08-31 17:56:17,499.499 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:56:17,551.551 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:56:17,554.554 INFO    ] No update needed
[2026-08-31 17:56:17,556.556 INFO    ] Checking for camera pi updates...
[2026-08-31 17:56:17,593.593 INFO    ] 200
[2026-08-31 17:56:17,596.596 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:56:17,636.636 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:56:17,718.718 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:56:17,721.721 INFO    ] No camera update needed
[2026-08-31 17:56:17,723.723 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:56:17,726.726 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:56:17,731.731 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:56:17,736.736 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:56:19,775.775 INFO    ] ================================================
[2026-08-31 17:56:19,789.789 INFO    ] Launching Daemon at Mon Aug 31 17:56:19 IST 2026
[2026-08-31 17:56:19,800.800 INFO    ] ================================================
[2026-08-31 17:56:20,459.459 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:56:20
[2026-08-31 17:56:21,062.062 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:56:21,314.314 INFO    ] Initializing speech engine...
[2026-08-31 17:56:21,327.327 INFO    ] 2026-08-31 17:56:21
[2026-08-31 17:56:21,593.593 INFO    ] 2026-08-31 17:56:21
[2026-08-31 17:56:21,628.628 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:56:21,884.884 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:56:21,893.893 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:56:22,028.028 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:56:22,070.070 INFO    ] time= 31/08/2026 17:56:22
[2026-08-31 17:56:22,119.119 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:56:22,163.163 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:56:22,289.289 INFO    ] No existing commands found in stream
[2026-08-31 17:56:27,322.322 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:56:27,324.324 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-08-31 17:56:29,524.524 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 17:56:29,527.527 INFO    ] Checking for system updates...
[2026-08-31 17:56:29,565.565 INFO    ] 200
[2026-08-31 17:56:29,568.568 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:56:29,632.632 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:56:29,634.634 INFO    ] No update needed
[2026-08-31 17:56:29,637.637 INFO    ] Checking for camera pi updates...
[2026-08-31 17:56:29,676.676 INFO    ] 200
[2026-08-31 17:56:29,679.679 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:56:29,723.723 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:56:29,826.826 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:56:29,828.828 INFO    ] No camera update needed
[2026-08-31 17:56:29,831.831 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:56:29,833.833 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:56:29,839.839 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:56:29,844.844 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:56:31,887.887 INFO    ] ================================================
[2026-08-31 17:56:31,903.903 INFO    ] Launching Daemon at Mon Aug 31 17:56:31 IST 2026
[2026-08-31 17:56:31,915.915 INFO    ] ================================================
[2026-08-31 17:56:32,598.598 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:56:32
[2026-08-31 17:56:33,280.280 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:56:33,581.581 INFO    ] Initializing speech engine...
[2026-08-31 17:56:33,595.595 INFO    ] 2026-08-31 17:56:33
[2026-08-31 17:56:33,902.902 INFO    ] 2026-08-31 17:56:33
[2026-08-31 17:56:33,987.987 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:56:34,140.140 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:56:34,146.146 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:56:34,373.373 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:56:34,406.406 INFO    ] time= 31/08/2026 17:56:34
[2026-08-31 17:56:34,424.424 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:56:34,454.454 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:56:34,561.561 INFO    ] No existing commands found in stream
[2026-08-31 17:56:39,580.580 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:56:39,584.584 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-08-31 17:56:40,109.109 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 17:56:40,112.112 INFO    ] Checking for system updates...
[2026-08-31 17:56:40,150.150 INFO    ] 200
[2026-08-31 17:56:40,153.153 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:56:40,211.211 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:56:40,213.213 INFO    ] No update needed
[2026-08-31 17:56:40,216.216 INFO    ] Checking for camera pi updates...
[2026-08-31 17:56:40,249.249 INFO    ] 200
[2026-08-31 17:56:40,251.251 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:56:40,291.291 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:56:40,371.371 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:56:40,373.373 INFO    ] No camera update needed
[2026-08-31 17:56:40,375.375 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:56:40,378.378 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:56:40,383.383 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:56:40,388.388 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:56:42,428.428 INFO    ] ================================================
[2026-08-31 17:56:42,442.442 INFO    ] Launching Daemon at Mon Aug 31 17:56:42 IST 2026
[2026-08-31 17:56:42,453.453 INFO    ] ================================================
[2026-08-31 17:56:43,032.032 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:56:43
[2026-08-31 17:56:43,630.630 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:56:43,916.916 INFO    ] Initializing speech engine...
[2026-08-31 17:56:43,923.923 INFO    ] 2026-08-31 17:56:43
[2026-08-31 17:56:44,193.193 INFO    ] 2026-08-31 17:56:44
[2026-08-31 17:56:44,251.251 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:56:44,483.483 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:56:44,489.489 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:56:44,668.668 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:56:44,738.738 INFO    ] time= 31/08/2026 17:56:44
[2026-08-31 17:56:44,752.752 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:56:44,767.767 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:56:44,890.890 INFO    ] No existing commands found in stream
[2026-08-31 17:56:49,911.911 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:56:49,914.914 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-08-31 17:56:52,942.942 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 17:56:52,944.944 INFO    ] Checking for system updates...
[2026-08-31 17:56:52,980.980 INFO    ] 200
[2026-08-31 17:56:52,982.982 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:56:53,041.041 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:56:53,043.043 INFO    ] No update needed
[2026-08-31 17:56:53,045.045 INFO    ] Checking for camera pi updates...
[2026-08-31 17:56:53,083.083 INFO    ] 200
[2026-08-31 17:56:53,086.086 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:56:53,126.126 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:56:53,208.208 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:56:53,211.211 INFO    ] No camera update needed
[2026-08-31 17:56:53,213.213 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:56:53,215.215 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:56:53,221.221 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:56:53,226.226 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:56:55,269.269 INFO    ] ================================================
[2026-08-31 17:56:55,283.283 INFO    ] Launching Daemon at Mon Aug 31 17:56:55 IST 2026
[2026-08-31 17:56:55,294.294 INFO    ] ================================================
[2026-08-31 17:56:55,873.873 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:56:55
[2026-08-31 17:56:56,471.471 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:56:56,732.732 INFO    ] Initializing speech engine...
[2026-08-31 17:56:56,751.751 INFO    ] 2026-08-31 17:56:56
[2026-08-31 17:56:56,999.999 INFO    ] 2026-08-31 17:56:56
[2026-08-31 17:56:57,035.035 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:56:57,291.291 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:56:57,297.297 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:56:57,546.546 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:56:57,560.560 INFO    ] time= 31/08/2026 17:56:57
[2026-08-31 17:56:57,577.577 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:56:57,605.605 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:56:57,722.722 INFO    ] No existing commands found in stream
[2026-08-31 17:57:02,747.747 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:57:02,750.750 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-08-31 17:57:03,484.484 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 17:57:03,488.488 INFO    ] Checking for system updates...
[2026-08-31 17:57:03,527.527 INFO    ] 200
[2026-08-31 17:57:03,530.530 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:57:03,587.587 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:57:03,590.590 INFO    ] No update needed
[2026-08-31 17:57:03,592.592 INFO    ] Checking for camera pi updates...
[2026-08-31 17:57:03,629.629 INFO    ] 200
[2026-08-31 17:57:03,631.631 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:57:03,675.675 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:57:03,755.755 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:57:03,758.758 INFO    ] No camera update needed
[2026-08-31 17:57:03,760.760 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:57:03,763.763 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:57:03,768.768 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:57:03,773.773 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:57:05,814.814 INFO    ] ================================================
[2026-08-31 17:57:05,828.828 INFO    ] Launching Daemon at Mon Aug 31 17:57:05 IST 2026
[2026-08-31 17:57:05,839.839 INFO    ] ================================================
[2026-08-31 17:57:06,458.458 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:57:06
[2026-08-31 17:57:07,114.114 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:57:07,410.410 INFO    ] Initializing speech engine...
[2026-08-31 17:57:07,415.415 INFO    ] 2026-08-31 17:57:07
[2026-08-31 17:57:07,725.725 INFO    ] 2026-08-31 17:57:07
[2026-08-31 17:57:07,802.802 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:57:08,087.087 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:57:08,093.093 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:57:08,267.267 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:57:08,276.276 INFO    ] time= 31/08/2026 17:57:08
[2026-08-31 17:57:08,285.285 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:57:08,341.341 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:57:08,481.481 INFO    ] No existing commands found in stream
[2026-08-31 17:57:13,497.497 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:57:13,501.501 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-08-31 17:57:14,885.885 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 17:57:14,888.888 INFO    ] Checking for system updates...
[2026-08-31 17:57:14,924.924 INFO    ] 200
[2026-08-31 17:57:14,927.927 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:57:14,985.985 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:57:14,987.987 INFO    ] No update needed
[2026-08-31 17:57:14,990.990 INFO    ] Checking for camera pi updates...
[2026-08-31 17:57:15,023.023 INFO    ] 200
[2026-08-31 17:57:15,026.026 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:57:15,066.066 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:57:15,152.152 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:57:15,154.154 INFO    ] No camera update needed
[2026-08-31 17:57:15,156.156 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:57:15,159.159 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:57:15,164.164 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:57:15,169.169 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:57:17,208.208 INFO    ] ================================================
[2026-08-31 17:57:17,223.223 INFO    ] Launching Daemon at Mon Aug 31 17:57:17 IST 2026
[2026-08-31 17:57:17,234.234 INFO    ] ================================================
[2026-08-31 17:57:17,798.798 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:57:17
[2026-08-31 17:57:18,379.379 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:57:18,625.625 INFO    ] Initializing speech engine...
[2026-08-31 17:57:18,647.647 INFO    ] 2026-08-31 17:57:18
[2026-08-31 17:57:18,898.898 INFO    ] 2026-08-31 17:57:18
[2026-08-31 17:57:18,932.932 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:57:19,187.187 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:57:19,192.192 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:57:19,408.408 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:57:19,449.449 INFO    ] time= 31/08/2026 17:57:19
[2026-08-31 17:57:19,455.455 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:57:19,476.476 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:57:19,602.602 INFO    ] No existing commands found in stream
[2026-08-31 17:57:24,615.615 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:57:24,618.618 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-08-31 17:57:26,067.067 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 17:57:26,070.070 INFO    ] Checking for system updates...
[2026-08-31 17:57:26,108.108 INFO    ] 200
[2026-08-31 17:57:26,111.111 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:57:26,169.169 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:57:26,172.172 INFO    ] No update needed
[2026-08-31 17:57:26,174.174 INFO    ] Checking for camera pi updates...
[2026-08-31 17:57:26,209.209 INFO    ] 200
[2026-08-31 17:57:26,211.211 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:57:26,256.256 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:57:26,340.340 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:57:26,343.343 INFO    ] No camera update needed
[2026-08-31 17:57:26,346.346 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:57:26,348.348 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:57:26,354.354 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:57:26,359.359 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:57:28,399.399 INFO    ] ================================================
[2026-08-31 17:57:28,414.414 INFO    ] Launching Daemon at Mon Aug 31 17:57:28 IST 2026
[2026-08-31 17:57:28,425.425 INFO    ] ================================================
[2026-08-31 17:57:29,028.028 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:57:29
[2026-08-31 17:57:29,615.615 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:57:29,865.865 INFO    ] Initializing speech engine...
[2026-08-31 17:57:29,888.888 INFO    ] 2026-08-31 17:57:29
[2026-08-31 17:57:30,143.143 INFO    ] 2026-08-31 17:57:30
[2026-08-31 17:57:30,179.179 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:57:30,436.436 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:57:30,445.445 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:57:30,653.653 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:57:30,707.707 INFO    ] time= 31/08/2026 17:57:30
[2026-08-31 17:57:30,719.719 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:57:30,736.736 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:57:30,854.854 INFO    ] No existing commands found in stream
[2026-08-31 17:57:35,881.881 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:57:35,884.884 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-08-31 17:57:37,532.532 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 17:57:37,534.534 INFO    ] Checking for system updates...
[2026-08-31 17:57:37,580.580 INFO    ] 200
[2026-08-31 17:57:37,583.583 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:57:37,642.642 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:57:37,644.644 INFO    ] No update needed
[2026-08-31 17:57:37,647.647 INFO    ] Checking for camera pi updates...
[2026-08-31 17:57:37,684.684 INFO    ] 200
[2026-08-31 17:57:37,687.687 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:57:37,736.736 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:57:37,823.823 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:57:37,825.825 INFO    ] No camera update needed
[2026-08-31 17:57:37,828.828 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:57:37,831.831 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:57:37,837.837 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:57:37,843.843 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:57:39,883.883 INFO    ] ================================================
[2026-08-31 17:57:39,899.899 INFO    ] Launching Daemon at Mon Aug 31 17:57:39 IST 2026
[2026-08-31 17:57:39,909.909 INFO    ] ================================================
[2026-08-31 17:57:40,545.545 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:57:40
[2026-08-31 17:57:41,203.203 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:57:41,470.470 INFO    ] Initializing speech engine...
[2026-08-31 17:57:41,480.480 INFO    ] 2026-08-31 17:57:41
[2026-08-31 17:57:41,727.727 INFO    ] 2026-08-31 17:57:41
[2026-08-31 17:57:41,792.792 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:57:42,014.014 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:57:42,023.023 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:57:42,221.221 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:57:42,276.276 INFO    ] time= 31/08/2026 17:57:42
[2026-08-31 17:57:42,288.288 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:57:42,305.305 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:57:42,436.436 INFO    ] No existing commands found in stream
[2026-08-31 17:57:47,456.456 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:57:47,459.459 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-08-31 17:57:51,618.618 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 17:57:51,621.621 INFO    ] Checking for system updates...
[2026-08-31 17:57:51,656.656 INFO    ] 200
[2026-08-31 17:57:51,658.658 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:57:51,735.735 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:57:51,737.737 INFO    ] No update needed
[2026-08-31 17:57:51,740.740 INFO    ] Checking for camera pi updates...
[2026-08-31 17:57:51,776.776 INFO    ] 200
[2026-08-31 17:57:51,779.779 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:57:51,822.822 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:57:52,006.006 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:57:52,009.009 INFO    ] No camera update needed
[2026-08-31 17:57:52,012.012 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:57:52,014.014 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:57:52,020.020 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:57:52,025.025 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:57:54,066.066 INFO    ] ================================================
[2026-08-31 17:57:54,081.081 INFO    ] Launching Daemon at Mon Aug 31 17:57:54 IST 2026
[2026-08-31 17:57:54,092.092 INFO    ] ================================================
[2026-08-31 17:57:54,673.673 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:57:54
[2026-08-31 17:57:55,258.258 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:57:55,531.531 INFO    ] Initializing speech engine...
[2026-08-31 17:57:55,540.540 INFO    ] 2026-08-31 17:57:55
[2026-08-31 17:57:55,796.796 INFO    ] 2026-08-31 17:57:55
[2026-08-31 17:57:55,849.849 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:57:56,075.075 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:57:56,079.079 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:57:56,213.213 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:57:56,252.252 INFO    ] time= 31/08/2026 17:57:56
[2026-08-31 17:57:56,306.306 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:57:56,343.343 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:57:56,460.460 INFO    ] No existing commands found in stream
[2026-08-31 17:58:01,488.488 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:58:01,491.491 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-08-31 17:58:02,779.779 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 17:58:02,783.783 INFO    ] Checking for system updates...
[2026-08-31 17:58:02,821.821 INFO    ] 200
[2026-08-31 17:58:02,824.824 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:58:02,895.895 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:58:02,898.898 INFO    ] No update needed
[2026-08-31 17:58:02,901.901 INFO    ] Checking for camera pi updates...
[2026-08-31 17:58:02,938.938 INFO    ] 200
[2026-08-31 17:58:02,941.941 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:58:02,997.997 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:58:03,112.112 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:58:03,115.115 INFO    ] No camera update needed
[2026-08-31 17:58:03,117.117 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:58:03,119.119 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:58:03,125.125 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:58:03,130.130 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:58:05,170.170 INFO    ] ================================================
[2026-08-31 17:58:05,185.185 INFO    ] Launching Daemon at Mon Aug 31 17:58:05 IST 2026
[2026-08-31 17:58:05,195.195 INFO    ] ================================================
[2026-08-31 17:58:05,775.775 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:58:05
[2026-08-31 17:58:06,389.389 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:58:06,665.665 INFO    ] Initializing speech engine...
[2026-08-31 17:58:06,671.671 INFO    ] 2026-08-31 17:58:06
[2026-08-31 17:58:06,950.950 INFO    ] 2026-08-31 17:58:06
[2026-08-31 17:58:06,995.995 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:58:07,281.281 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:58:07,289.289 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:58:07,480.480 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:58:07,499.499 INFO    ] time= 31/08/2026 17:58:07
[2026-08-31 17:58:07,508.508 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:58:07,537.537 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:58:07,641.641 INFO    ] No existing commands found in stream
[2026-08-31 17:58:12,676.676 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:58:12,679.679 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-08-31 17:58:15,181.181 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 17:58:15,184.184 INFO    ] Checking for system updates...
[2026-08-31 17:58:15,221.221 INFO    ] 200
[2026-08-31 17:58:15,224.224 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:58:15,281.281 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:58:15,284.284 INFO    ] No update needed
[2026-08-31 17:58:15,287.287 INFO    ] Checking for camera pi updates...
[2026-08-31 17:58:15,322.322 INFO    ] 200
[2026-08-31 17:58:15,324.324 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:58:15,368.368 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:58:15,473.473 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:58:15,476.476 INFO    ] No camera update needed
[2026-08-31 17:58:15,478.478 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:58:15,480.480 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:58:15,486.486 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:58:15,490.490 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:58:17,531.531 INFO    ] ================================================
[2026-08-31 17:58:17,546.546 INFO    ] Launching Daemon at Mon Aug 31 17:58:17 IST 2026
[2026-08-31 17:58:17,556.556 INFO    ] ================================================
[2026-08-31 17:58:18,186.186 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:58:18
[2026-08-31 17:58:18,835.835 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:58:19,131.131 INFO    ] Initializing speech engine...
[2026-08-31 17:58:19,139.139 INFO    ] 2026-08-31 17:58:19
[2026-08-31 17:58:19,411.411 INFO    ] 2026-08-31 17:58:19
[2026-08-31 17:58:19,469.469 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:58:19,701.701 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:58:19,706.706 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:58:19,844.844 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:58:19,904.904 INFO    ] time= 31/08/2026 17:58:19
[2026-08-31 17:58:19,958.958 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:58:19,981.981 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:58:20,129.129 INFO    ] No existing commands found in stream
[2026-08-31 17:58:25,142.142 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:58:25,145.145 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-08-31 17:58:28,291.291 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 17:58:28,294.294 INFO    ] Checking for system updates...
[2026-08-31 17:58:28,333.333 INFO    ] 200
[2026-08-31 17:58:28,335.335 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:58:28,392.392 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:58:28,395.395 INFO    ] No update needed
[2026-08-31 17:58:28,397.397 INFO    ] Checking for camera pi updates...
[2026-08-31 17:58:28,434.434 INFO    ] 200
[2026-08-31 17:58:28,436.436 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:58:28,480.480 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:58:28,561.561 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:58:28,563.563 INFO    ] No camera update needed
[2026-08-31 17:58:28,566.566 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:58:28,568.568 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:58:28,573.573 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:58:28,578.578 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:58:30,618.618 INFO    ] ================================================
[2026-08-31 17:58:30,634.634 INFO    ] Launching Daemon at Mon Aug 31 17:58:30 IST 2026
[2026-08-31 17:58:30,645.645 INFO    ] ================================================
[2026-08-31 17:58:31,210.210 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:58:31
[2026-08-31 17:58:31,826.826 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:58:32,145.145 INFO    ] Initializing speech engine...
[2026-08-31 17:58:32,155.155 INFO    ] 2026-08-31 17:58:32
[2026-08-31 17:58:32,467.467 INFO    ] 2026-08-31 17:58:32
[2026-08-31 17:58:32,576.576 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:58:32,867.867 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:58:32,910.910 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:58:33,130.130 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:58:33,161.161 INFO    ] time= 31/08/2026 17:58:33
[2026-08-31 17:58:33,215.215 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:58:33,257.257 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:58:33,371.371 INFO    ] No existing commands found in stream
[2026-08-31 17:58:38,402.402 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:58:38,404.404 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-08-31 17:58:41,620.620 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 17:58:41,622.622 INFO    ] Checking for system updates...
[2026-08-31 17:58:41,661.661 INFO    ] 200
[2026-08-31 17:58:41,663.663 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:58:41,715.715 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:58:41,718.718 INFO    ] No update needed
[2026-08-31 17:58:41,720.720 INFO    ] Checking for camera pi updates...
[2026-08-31 17:58:41,754.754 INFO    ] 200
[2026-08-31 17:58:41,757.757 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:58:41,802.802 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:58:41,885.885 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:58:41,888.888 INFO    ] No camera update needed
[2026-08-31 17:58:41,890.890 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:58:41,893.893 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:58:41,898.898 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:58:41,903.903 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:58:43,946.946 INFO    ] ================================================
[2026-08-31 17:58:43,961.961 INFO    ] Launching Daemon at Mon Aug 31 17:58:43 IST 2026
[2026-08-31 17:58:43,973.973 INFO    ] ================================================
[2026-08-31 17:58:44,602.602 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:58:44
[2026-08-31 17:58:45,216.216 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:58:45,483.483 INFO    ] Initializing speech engine...
[2026-08-31 17:58:45,492.492 INFO    ] 2026-08-31 17:58:45
[2026-08-31 17:58:45,748.748 INFO    ] 2026-08-31 17:58:45
[2026-08-31 17:58:45,804.804 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:58:46,026.026 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:58:46,036.036 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:58:46,243.243 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:58:46,293.293 INFO    ] time= 31/08/2026 17:58:46
[2026-08-31 17:58:46,299.299 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:58:46,317.317 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:58:46,471.471 INFO    ] No existing commands found in stream
[2026-08-31 17:58:51,501.501 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:58:51,504.504 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-08-31 17:58:55,902.902 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 17:58:55,905.905 INFO    ] Checking for system updates...
[2026-08-31 17:58:55,942.942 INFO    ] 200
[2026-08-31 17:58:55,945.945 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:58:55,999.999 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:58:56,002.002 INFO    ] No update needed
[2026-08-31 17:58:56,004.004 INFO    ] Checking for camera pi updates...
[2026-08-31 17:58:56,039.039 INFO    ] 200
[2026-08-31 17:58:56,041.041 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:58:56,082.082 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:58:56,167.167 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:58:56,169.169 INFO    ] No camera update needed
[2026-08-31 17:58:56,172.172 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:58:56,174.174 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:58:56,179.179 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:58:56,184.184 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:58:58,223.223 INFO    ] ================================================
[2026-08-31 17:58:58,239.239 INFO    ] Launching Daemon at Mon Aug 31 17:58:58 IST 2026
[2026-08-31 17:58:58,250.250 INFO    ] ================================================
[2026-08-31 17:58:58,816.816 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:58:58
[2026-08-31 17:58:59,398.398 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:58:59,664.664 INFO    ] Initializing speech engine...
[2026-08-31 17:58:59,673.673 INFO    ] 2026-08-31 17:58:59
[2026-08-31 17:58:59,920.920 INFO    ] 2026-08-31 17:58:59
[2026-08-31 17:58:59,955.955 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:59:00,210.210 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:59:00,214.214 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:59:00,408.408 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:59:00,471.471 INFO    ] time= 31/08/2026 17:59:00
[2026-08-31 17:59:00,478.478 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:59:00,496.496 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:59:00,625.625 INFO    ] No existing commands found in stream
[2026-08-31 17:59:05,639.639 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:59:05,641.641 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-08-31 17:59:08,453.453 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 17:59:08,455.455 INFO    ] Checking for system updates...
[2026-08-31 17:59:08,493.493 INFO    ] 200
[2026-08-31 17:59:08,496.496 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:59:08,553.553 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:59:08,555.555 INFO    ] No update needed
[2026-08-31 17:59:08,558.558 INFO    ] Checking for camera pi updates...
[2026-08-31 17:59:08,595.595 INFO    ] 200
[2026-08-31 17:59:08,597.597 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:59:08,637.637 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:59:08,721.721 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:59:08,723.723 INFO    ] No camera update needed
[2026-08-31 17:59:08,725.725 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:59:08,728.728 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:59:08,733.733 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:59:08,738.738 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:59:10,780.780 INFO    ] ================================================
[2026-08-31 17:59:10,796.796 INFO    ] Launching Daemon at Mon Aug 31 17:59:10 IST 2026
[2026-08-31 17:59:10,806.806 INFO    ] ================================================
[2026-08-31 17:59:11,392.392 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:59:11
[2026-08-31 17:59:11,988.988 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:59:12,261.261 INFO    ] Initializing speech engine...
[2026-08-31 17:59:12,270.270 INFO    ] 2026-08-31 17:59:12
[2026-08-31 17:59:12,518.518 INFO    ] 2026-08-31 17:59:12
[2026-08-31 17:59:12,553.553 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:59:12,804.804 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:59:12,814.814 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:59:12,946.946 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:59:13,003.003 INFO    ] time= 31/08/2026 17:59:12
[2026-08-31 17:59:13,068.068 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:59:13,082.082 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:59:13,217.217 INFO    ] No existing commands found in stream
[2026-08-31 17:59:18,238.238 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:59:18,241.241 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-08-31 17:59:21,425.425 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 17:59:21,428.428 INFO    ] Checking for system updates...
[2026-08-31 17:59:21,463.463 INFO    ] 200
[2026-08-31 17:59:21,465.465 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:59:21,519.519 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:59:21,521.521 INFO    ] No update needed
[2026-08-31 17:59:21,524.524 INFO    ] Checking for camera pi updates...
[2026-08-31 17:59:21,557.557 INFO    ] 200
[2026-08-31 17:59:21,560.560 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:59:21,600.600 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:59:21,708.708 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:59:21,711.711 INFO    ] No camera update needed
[2026-08-31 17:59:21,713.713 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:59:21,715.715 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:59:21,721.721 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:59:21,726.726 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:59:23,765.765 INFO    ] ================================================
[2026-08-31 17:59:23,780.780 INFO    ] Launching Daemon at Mon Aug 31 17:59:23 IST 2026
[2026-08-31 17:59:23,791.791 INFO    ] ================================================
[2026-08-31 17:59:24,356.356 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:59:24
[2026-08-31 17:59:24,939.939 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:59:25,187.187 INFO    ] Initializing speech engine...
[2026-08-31 17:59:25,209.209 INFO    ] 2026-08-31 17:59:25
[2026-08-31 17:59:25,463.463 INFO    ] 2026-08-31 17:59:25
[2026-08-31 17:59:25,498.498 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:59:25,749.749 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:59:25,758.758 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:59:25,983.983 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:59:26,016.016 INFO    ] time= 31/08/2026 17:59:25
[2026-08-31 17:59:26,022.022 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:59:26,040.040 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:59:26,169.169 INFO    ] No existing commands found in stream
[2026-08-31 17:59:31,182.182 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:59:31,185.185 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-08-31 17:59:34,241.241 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 17:59:34,243.243 INFO    ] Checking for system updates...
[2026-08-31 17:59:34,281.281 INFO    ] 200
[2026-08-31 17:59:34,283.283 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:59:34,335.335 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:59:34,338.338 INFO    ] No update needed
[2026-08-31 17:59:34,341.341 INFO    ] Checking for camera pi updates...
[2026-08-31 17:59:34,377.377 INFO    ] 200
[2026-08-31 17:59:34,380.380 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:59:34,423.423 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:59:34,506.506 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:59:34,508.508 INFO    ] No camera update needed
[2026-08-31 17:59:34,511.511 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:59:34,513.513 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:59:34,518.518 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:59:34,523.523 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:59:36,562.562 INFO    ] ================================================
[2026-08-31 17:59:36,577.577 INFO    ] Launching Daemon at Mon Aug 31 17:59:36 IST 2026
[2026-08-31 17:59:36,588.588 INFO    ] ================================================
[2026-08-31 17:59:37,166.166 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:59:37
[2026-08-31 17:59:37,762.762 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:59:38,038.038 INFO    ] Initializing speech engine...
[2026-08-31 17:59:38,043.043 INFO    ] 2026-08-31 17:59:38
[2026-08-31 17:59:38,304.304 INFO    ] 2026-08-31 17:59:38
[2026-08-31 17:59:38,358.358 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:59:38,583.583 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:59:38,589.589 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:59:38,806.806 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:59:38,845.845 INFO    ] time= 31/08/2026 17:59:38
[2026-08-31 17:59:38,851.851 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:59:38,872.872 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:59:38,979.979 INFO    ] No existing commands found in stream
[2026-08-31 17:59:44,009.009 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:59:44,012.012 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-08-31 17:59:44,762.762 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 17:59:44,765.765 INFO    ] Checking for system updates...
[2026-08-31 17:59:44,803.803 INFO    ] 200
[2026-08-31 17:59:44,805.805 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:59:44,862.862 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:59:44,864.864 INFO    ] No update needed
[2026-08-31 17:59:44,867.867 INFO    ] Checking for camera pi updates...
[2026-08-31 17:59:44,904.904 INFO    ] 200
[2026-08-31 17:59:44,907.907 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:59:44,948.948 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:59:45,035.035 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 17:59:45,038.038 INFO    ] No camera update needed
[2026-08-31 17:59:45,040.040 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:59:45,042.042 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:59:45,048.048 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:59:45,053.053 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:59:47,092.092 INFO    ] ================================================
[2026-08-31 17:59:47,111.111 INFO    ] Launching Daemon at Mon Aug 31 17:59:47 IST 2026
[2026-08-31 17:59:47,122.122 INFO    ] ================================================
[2026-08-31 17:59:47,689.689 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:59:47
[2026-08-31 17:59:48,275.275 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:59:48,548.548 INFO    ] Initializing speech engine...
[2026-08-31 17:59:48,557.557 INFO    ] 2026-08-31 17:59:48
[2026-08-31 17:59:48,803.803 INFO    ] 2026-08-31 17:59:48
[2026-08-31 17:59:48,837.837 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:59:49,070.070 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:59:49,092.092 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:59:49,278.278 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:59:49,322.322 INFO    ] time= 31/08/2026 17:59:49
[2026-08-31 17:59:49,360.360 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:59:49,365.365 INFO    ] Checking for existing commands in stream...
[2026-08-31 17:59:49,496.496 INFO    ] No existing commands found in stream
[2026-08-31 17:59:54,521.521 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 17:59:54,524.524 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-08-31 17:59:55,253.253 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 17:59:55,255.255 INFO    ] Checking for system updates...
[2026-08-31 17:59:55,291.291 INFO    ] 200
[2026-08-31 17:59:55,294.294 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:59:55,345.345 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:59:55,348.348 INFO    ] No update needed
[2026-08-31 17:59:55,350.350 INFO    ] Checking for camera pi updates...
[2026-08-31 17:59:55,386.386 INFO    ] 200
[2026-08-31 17:59:55,389.389 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 17:59:55,429.429 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 17:59:55,608.608 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 17:59:55,610.610 INFO    ] No camera update needed
[2026-08-31 17:59:55,612.612 INFO    ] Script finished. Safe exiting...
[2026-08-31 17:59:55,615.615 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 17:59:55,620.620 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 17:59:55,625.625 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 17:59:57,665.665 INFO    ] ================================================
[2026-08-31 17:59:57,680.680 INFO    ] Launching Daemon at Mon Aug 31 17:59:57 IST 2026
[2026-08-31 17:59:57,690.690 INFO    ] ================================================
[2026-08-31 17:59:58,270.270 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 17:59:58
[2026-08-31 17:59:58,867.867 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 17:59:59,143.143 INFO    ] Initializing speech engine...
[2026-08-31 17:59:59,152.152 INFO    ] 2026-08-31 17:59:59
[2026-08-31 17:59:59,409.409 INFO    ] 2026-08-31 17:59:59
[2026-08-31 17:59:59,465.465 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 17:59:59,715.715 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 17:59:59,732.732 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 17:59:59,928.928 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 17:59:59,954.954 INFO    ] time= 31/08/2026 17:59:59
[2026-08-31 17:59:59,969.969 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 17:59:59,978.978 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:00:00,089.089 INFO    ] No existing commands found in stream
[2026-08-31 18:00:05,110.110 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:00:05,114.114 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-08-31 18:00:10,241.241 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 18:00:10,244.244 INFO    ] Checking for system updates...
[2026-08-31 18:00:10,282.282 INFO    ] 200
[2026-08-31 18:00:10,285.285 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:00:10,342.342 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:00:10,345.345 INFO    ] No update needed
[2026-08-31 18:00:10,347.347 INFO    ] Checking for camera pi updates...
[2026-08-31 18:00:10,384.384 INFO    ] 200
[2026-08-31 18:00:10,387.387 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:00:10,436.436 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:00:10,542.542 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:00:10,545.545 INFO    ] No camera update needed
[2026-08-31 18:00:10,548.548 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:00:10,550.550 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:00:10,556.556 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:00:10,562.562 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:00:12,601.601 INFO    ] ================================================
[2026-08-31 18:00:12,617.617 INFO    ] Launching Daemon at Mon Aug 31 18:00:12 IST 2026
[2026-08-31 18:00:12,627.627 INFO    ] ================================================
[2026-08-31 18:00:13,248.248 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:00:13
[2026-08-31 18:00:13,888.888 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:00:14,179.179 INFO    ] Initializing speech engine...
[2026-08-31 18:00:14,185.185 INFO    ] 2026-08-31 18:00:14
[2026-08-31 18:00:14,455.455 INFO    ] 2026-08-31 18:00:14
[2026-08-31 18:00:14,510.510 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:00:14,738.738 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:00:14,744.744 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:00:14,985.985 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:00:15,004.004 INFO    ] time= 31/08/2026 18:00:14
[2026-08-31 18:00:15,026.026 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:00:15,052.052 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:00:15,169.169 INFO    ] No existing commands found in stream
[2026-08-31 18:00:20,194.194 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:00:20,197.197 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-08-31 18:00:23,576.576 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 18:00:23,579.579 INFO    ] Checking for system updates...
[2026-08-31 18:00:23,618.618 INFO    ] 200
[2026-08-31 18:00:23,620.620 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:00:23,674.674 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:00:23,677.677 INFO    ] No update needed
[2026-08-31 18:00:23,680.680 INFO    ] Checking for camera pi updates...
[2026-08-31 18:00:23,714.714 INFO    ] 200
[2026-08-31 18:00:23,716.716 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:00:23,760.760 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:00:23,844.844 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:00:23,846.846 INFO    ] No camera update needed
[2026-08-31 18:00:23,849.849 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:00:23,851.851 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:00:23,857.857 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:00:23,862.862 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:00:25,901.901 INFO    ] ================================================
[2026-08-31 18:00:25,917.917 INFO    ] Launching Daemon at Mon Aug 31 18:00:25 IST 2026
[2026-08-31 18:00:25,927.927 INFO    ] ================================================
[2026-08-31 18:00:26,557.557 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:00:26
[2026-08-31 18:00:27,206.206 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:00:27,502.502 INFO    ] Initializing speech engine...
[2026-08-31 18:00:27,516.516 INFO    ] 2026-08-31 18:00:27
[2026-08-31 18:00:27,797.797 INFO    ] 2026-08-31 18:00:27
[2026-08-31 18:00:27,842.842 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:00:28,073.073 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:00:28,079.079 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:00:28,214.214 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:00:28,272.272 INFO    ] time= 31/08/2026 18:00:28
[2026-08-31 18:00:28,342.342 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:00:28,356.356 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:00:28,485.485 INFO    ] No existing commands found in stream
[2026-08-31 18:00:33,510.510 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:00:33,513.513 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-08-31 18:00:34,983.983 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 18:00:34,986.986 INFO    ] Checking for system updates...
[2026-08-31 18:00:35,023.023 INFO    ] 200
[2026-08-31 18:00:35,025.025 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:00:35,077.077 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:00:35,080.080 INFO    ] No update needed
[2026-08-31 18:00:35,083.083 INFO    ] Checking for camera pi updates...
[2026-08-31 18:00:35,116.116 INFO    ] 200
[2026-08-31 18:00:35,119.119 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:00:35,160.160 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:00:35,261.261 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:00:35,264.264 INFO    ] No camera update needed
[2026-08-31 18:00:35,266.266 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:00:35,269.269 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:00:35,274.274 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:00:35,279.279 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:00:37,318.318 INFO    ] ================================================
[2026-08-31 18:00:37,334.334 INFO    ] Launching Daemon at Mon Aug 31 18:00:37 IST 2026
[2026-08-31 18:00:37,346.346 INFO    ] ================================================
[2026-08-31 18:00:37,954.954 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:00:37
[2026-08-31 18:00:38,616.616 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:00:38,919.919 INFO    ] Initializing speech engine...
[2026-08-31 18:00:38,928.928 INFO    ] 2026-08-31 18:00:38
[2026-08-31 18:00:39,242.242 INFO    ] 2026-08-31 18:00:39
[2026-08-31 18:00:39,331.331 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:00:39,615.615 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:00:39,638.638 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:00:39,803.803 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:00:39,812.812 INFO    ] time= 31/08/2026 18:00:39
[2026-08-31 18:00:39,838.838 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:00:39,892.892 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:00:40,021.021 INFO    ] No existing commands found in stream
[2026-08-31 18:00:45,057.057 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:00:45,060.060 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-08-31 18:00:47,302.302 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 18:00:47,305.305 INFO    ] Checking for system updates...
[2026-08-31 18:00:47,340.340 INFO    ] 200
[2026-08-31 18:00:47,343.343 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:00:47,400.400 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:00:47,403.403 INFO    ] No update needed
[2026-08-31 18:00:47,405.405 INFO    ] Checking for camera pi updates...
[2026-08-31 18:00:47,439.439 INFO    ] 200
[2026-08-31 18:00:47,441.441 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:00:47,485.485 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:00:47,580.580 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:00:47,582.582 INFO    ] No camera update needed
[2026-08-31 18:00:47,585.585 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:00:47,587.587 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:00:47,592.592 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:00:47,597.597 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:00:49,637.637 INFO    ] ================================================
[2026-08-31 18:00:49,653.653 INFO    ] Launching Daemon at Mon Aug 31 18:00:49 IST 2026
[2026-08-31 18:00:49,664.664 INFO    ] ================================================
[2026-08-31 18:00:50,247.247 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:00:50
[2026-08-31 18:00:50,845.845 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:00:51,123.123 INFO    ] Initializing speech engine...
[2026-08-31 18:00:51,133.133 INFO    ] 2026-08-31 18:00:51
[2026-08-31 18:00:51,405.405 INFO    ] 2026-08-31 18:00:51
[2026-08-31 18:00:51,448.448 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:00:51,694.694 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:00:51,699.699 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:00:51,898.898 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:00:51,932.932 INFO    ] time= 31/08/2026 18:00:51
[2026-08-31 18:00:51,950.950 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:00:51,958.958 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:00:52,088.088 INFO    ] No existing commands found in stream
[2026-08-31 18:00:57,108.108 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:00:57,111.111 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-08-31 18:00:57,738.738 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 18:00:57,741.741 INFO    ] Checking for system updates...
[2026-08-31 18:00:57,776.776 INFO    ] 200
[2026-08-31 18:00:57,779.779 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:00:57,833.833 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:00:57,835.835 INFO    ] No update needed
[2026-08-31 18:00:57,838.838 INFO    ] Checking for camera pi updates...
[2026-08-31 18:00:57,872.872 INFO    ] 200
[2026-08-31 18:00:57,875.875 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:00:57,919.919 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:00:58,008.008 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:00:58,010.010 INFO    ] No camera update needed
[2026-08-31 18:00:58,013.013 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:00:58,015.015 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:00:58,021.021 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:00:58,026.026 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:01:00,067.067 INFO    ] ================================================
[2026-08-31 18:01:00,083.083 INFO    ] Launching Daemon at Mon Aug 31 18:01:00 IST 2026
[2026-08-31 18:01:00,094.094 INFO    ] ================================================
[2026-08-31 18:01:00,674.674 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:01:00
[2026-08-31 18:01:01,300.300 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:01:01,901.901 INFO    ] Initializing speech engine...
[2026-08-31 18:01:01,906.906 INFO    ] 2026-08-31 18:01:01
[2026-08-31 18:01:02,229.229 INFO    ] 2026-08-31 18:01:02
[2026-08-31 18:01:02,269.269 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:01:02,514.514 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:01:02,574.574 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:01:02,752.752 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:01:02,772.772 INFO    ] time= 31/08/2026 18:01:02
[2026-08-31 18:01:02,828.828 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:01:02,873.873 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:01:02,998.998 INFO    ] No existing commands found in stream
[2026-08-31 18:01:08,016.016 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:01:08,019.019 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-08-31 18:01:10,423.423 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 18:01:10,426.426 INFO    ] Checking for system updates...
[2026-08-31 18:01:10,462.462 INFO    ] 200
[2026-08-31 18:01:10,464.464 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:01:10,530.530 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:01:10,532.532 INFO    ] No update needed
[2026-08-31 18:01:10,535.535 INFO    ] Checking for camera pi updates...
[2026-08-31 18:01:10,569.569 INFO    ] 200
[2026-08-31 18:01:10,571.571 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:01:10,616.616 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:01:10,694.694 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:01:10,696.696 INFO    ] No camera update needed
[2026-08-31 18:01:10,699.699 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:01:10,701.701 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:01:10,706.706 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:01:10,711.711 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:01:12,752.752 INFO    ] ================================================
[2026-08-31 18:01:12,828.828 INFO    ] Launching Daemon at Mon Aug 31 18:01:12 IST 2026
[2026-08-31 18:01:12,843.843 INFO    ] ================================================
[2026-08-31 18:01:13,422.422 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:01:13
[2026-08-31 18:01:14,018.018 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:01:14,295.295 INFO    ] Initializing speech engine...
[2026-08-31 18:01:14,302.302 INFO    ] 2026-08-31 18:01:14
[2026-08-31 18:01:14,562.562 INFO    ] 2026-08-31 18:01:14
[2026-08-31 18:01:14,592.592 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:01:14,836.836 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:01:14,846.846 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:01:15,060.060 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:01:15,106.106 INFO    ] time= 31/08/2026 18:01:15
[2026-08-31 18:01:15,122.122 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:01:15,132.132 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:01:15,261.261 INFO    ] No existing commands found in stream
[2026-08-31 18:01:20,280.280 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:01:20,283.283 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-08-31 18:01:24,544.544 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 18:01:24,546.546 INFO    ] Checking for system updates...
[2026-08-31 18:01:24,586.586 INFO    ] 200
[2026-08-31 18:01:24,588.588 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:01:24,642.642 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:01:24,645.645 INFO    ] No update needed
[2026-08-31 18:01:24,647.647 INFO    ] Checking for camera pi updates...
[2026-08-31 18:01:24,684.684 INFO    ] 200
[2026-08-31 18:01:24,686.686 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:01:24,728.728 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:01:24,813.813 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:01:24,815.815 INFO    ] No camera update needed
[2026-08-31 18:01:24,818.818 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:01:24,820.820 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:01:24,826.826 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:01:24,831.831 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:01:26,873.873 INFO    ] ================================================
[2026-08-31 18:01:26,888.888 INFO    ] Launching Daemon at Mon Aug 31 18:01:26 IST 2026
[2026-08-31 18:01:26,899.899 INFO    ] ================================================
[2026-08-31 18:01:27,468.468 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:01:27
[2026-08-31 18:01:28,051.051 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:01:28,321.321 INFO    ] Initializing speech engine...
[2026-08-31 18:01:28,330.330 INFO    ] 2026-08-31 18:01:28
[2026-08-31 18:01:28,580.580 INFO    ] 2026-08-31 18:01:28
[2026-08-31 18:01:28,615.615 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:01:28,801.801 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:01:28,817.817 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:01:28,953.953 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:01:28,960.960 INFO    ] time= 31/08/2026 18:01:28
[2026-08-31 18:01:29,006.006 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:01:29,031.031 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:01:29,158.158 INFO    ] No existing commands found in stream
[2026-08-31 18:01:34,169.169 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:01:34,171.171 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-08-31 18:01:35,417.417 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 18:01:35,420.420 INFO    ] Checking for system updates...
[2026-08-31 18:01:35,456.456 INFO    ] 200
[2026-08-31 18:01:35,459.459 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:01:35,510.510 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:01:35,513.513 INFO    ] No update needed
[2026-08-31 18:01:35,515.515 INFO    ] Checking for camera pi updates...
[2026-08-31 18:01:35,552.552 INFO    ] 200
[2026-08-31 18:01:35,554.554 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:01:35,599.599 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:01:35,682.682 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:01:35,684.684 INFO    ] No camera update needed
[2026-08-31 18:01:35,686.686 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:01:35,689.689 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:01:35,694.694 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:01:35,699.699 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:01:37,738.738 INFO    ] ================================================
[2026-08-31 18:01:37,752.752 INFO    ] Launching Daemon at Mon Aug 31 18:01:37 IST 2026
[2026-08-31 18:01:37,763.763 INFO    ] ================================================
[2026-08-31 18:01:38,332.332 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:01:38
[2026-08-31 18:01:38,915.915 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:01:39,187.187 INFO    ] Initializing speech engine...
[2026-08-31 18:01:39,196.196 INFO    ] 2026-08-31 18:01:39
[2026-08-31 18:01:39,446.446 INFO    ] 2026-08-31 18:01:39
[2026-08-31 18:01:39,481.481 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:01:39,743.743 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:01:39,746.746 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:01:39,884.884 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:01:39,944.944 INFO    ] time= 31/08/2026 18:01:39
[2026-08-31 18:01:40,004.004 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:01:40,021.021 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:01:40,169.169 INFO    ] No existing commands found in stream
[2026-08-31 18:01:45,182.182 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:01:45,185.185 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-08-31 18:01:48,321.321 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 18:01:48,324.324 INFO    ] Checking for system updates...
[2026-08-31 18:01:48,360.360 INFO    ] 200
[2026-08-31 18:01:48,362.362 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:01:48,415.415 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:01:48,418.418 INFO    ] No update needed
[2026-08-31 18:01:48,420.420 INFO    ] Checking for camera pi updates...
[2026-08-31 18:01:48,457.457 INFO    ] 200
[2026-08-31 18:01:48,460.460 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:01:48,501.501 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:01:48,604.604 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:01:48,607.607 INFO    ] No camera update needed
[2026-08-31 18:01:48,609.609 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:01:48,612.612 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:01:48,617.617 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:01:48,622.622 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:01:50,665.665 INFO    ] ================================================
[2026-08-31 18:01:50,680.680 INFO    ] Launching Daemon at Mon Aug 31 18:01:50 IST 2026
[2026-08-31 18:01:50,690.690 INFO    ] ================================================
[2026-08-31 18:01:51,298.298 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:01:51
[2026-08-31 18:01:51,880.880 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:01:52,123.123 INFO    ] Initializing speech engine...
[2026-08-31 18:01:52,131.131 INFO    ] 2026-08-31 18:01:52
[2026-08-31 18:01:52,402.402 INFO    ] 2026-08-31 18:01:52
[2026-08-31 18:01:52,436.436 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:01:52,609.609 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:01:52,622.622 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:01:52,829.829 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:01:52,845.845 INFO    ] time= 31/08/2026 18:01:52
[2026-08-31 18:01:52,904.904 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:01:52,959.959 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:01:53,092.092 INFO    ] No existing commands found in stream
[2026-08-31 18:01:58,119.119 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:01:58,122.122 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-08-31 18:01:58,646.646 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 18:01:58,649.649 INFO    ] Checking for system updates...
[2026-08-31 18:01:58,685.685 INFO    ] 200
[2026-08-31 18:01:58,688.688 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:01:58,746.746 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:01:58,749.749 INFO    ] No update needed
[2026-08-31 18:01:58,751.751 INFO    ] Checking for camera pi updates...
[2026-08-31 18:01:58,788.788 INFO    ] 200
[2026-08-31 18:01:58,790.790 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:01:58,835.835 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:01:59,013.013 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:01:59,016.016 INFO    ] No camera update needed
[2026-08-31 18:01:59,018.018 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:01:59,020.020 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:01:59,026.026 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:01:59,031.031 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:02:01,071.071 INFO    ] ================================================
[2026-08-31 18:02:01,086.086 INFO    ] Launching Daemon at Mon Aug 31 18:02:01 IST 2026
[2026-08-31 18:02:01,097.097 INFO    ] ================================================
[2026-08-31 18:02:01,773.773 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:02:01
[2026-08-31 18:02:02,412.412 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:02:02,739.739 INFO    ] Initializing speech engine...
[2026-08-31 18:02:02,763.763 INFO    ] 2026-08-31 18:02:02
[2026-08-31 18:02:03,051.051 INFO    ] 2026-08-31 18:02:03
[2026-08-31 18:02:03,094.094 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:02:03,314.314 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:02:03,337.337 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:02:03,494.494 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:02:03,507.507 INFO    ] time= 31/08/2026 18:02:03
[2026-08-31 18:02:03,538.538 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:02:03,560.560 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:02:03,685.685 INFO    ] No existing commands found in stream
[2026-08-31 18:02:08,708.708 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:02:08,711.711 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-08-31 18:02:12,021.021 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 18:02:12,023.023 INFO    ] Checking for system updates...
[2026-08-31 18:02:12,059.059 INFO    ] 200
[2026-08-31 18:02:12,061.061 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:02:12,123.123 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:02:12,125.125 INFO    ] No update needed
[2026-08-31 18:02:12,128.128 INFO    ] Checking for camera pi updates...
[2026-08-31 18:02:12,164.164 INFO    ] 200
[2026-08-31 18:02:12,167.167 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:02:12,211.211 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:02:12,302.302 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:02:12,304.304 INFO    ] No camera update needed
[2026-08-31 18:02:12,306.306 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:02:12,309.309 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:02:12,314.314 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:02:12,319.319 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:02:14,358.358 INFO    ] ================================================
[2026-08-31 18:02:14,373.373 INFO    ] Launching Daemon at Mon Aug 31 18:02:14 IST 2026
[2026-08-31 18:02:14,384.384 INFO    ] ================================================
[2026-08-31 18:02:14,950.950 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:02:14
[2026-08-31 18:02:15,532.532 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:02:15,782.782 INFO    ] Initializing speech engine...
[2026-08-31 18:02:15,805.805 INFO    ] 2026-08-31 18:02:15
[2026-08-31 18:02:16,059.059 INFO    ] 2026-08-31 18:02:16
[2026-08-31 18:02:16,093.093 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:02:16,296.296 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:02:16,355.355 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:02:16,581.581 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:02:16,626.626 INFO    ] time= 31/08/2026 18:02:16
[2026-08-31 18:02:16,632.632 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:02:16,653.653 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:02:16,753.753 INFO    ] No existing commands found in stream
[2026-08-31 18:02:20,754.754 INFO    ] Received new command: ID=1788179540659-0
[2026-08-31 18:02:20,757.757 INFO    ] process_and_cleanup_command: msg_id=1788179540659-0
[2026-08-31 18:02:20,759.759 INFO    ] is_command_expired: timestamp=2026-08-31T12:32:20.412Z, expiry=30s
[2026-08-31 18:02:20,858.858 INFO    ] Command removed from stream: 1788179540659-0. returning for processing...
[2026-08-31 18:02:20,861.861 INFO    ] ***** get_valid_command
[2026-08-31 18:02:20,863.863 INFO    ] {'timestamp': '2026-08-31T12:32:20.412Z', 'timeout': '10', 'source': 'webapp', 'command': 'start-order', 'data': '{"request_id":"start-order-1788179540412-vi0a0mhv9","orderId":"TM08202202260831180130022","is_vending":false}'}
[2026-08-31 18:02:20,865.865 INFO    ] ***** Parsed command data: {'is_vending': False, 'request_id': 'start-order-1788179540412-vi0a0mhv9', 'orderId': 'TM08202202260831180130022'}
[2026-08-31 18:02:20,868.868 INFO    ] Handling start order...
[2026-08-31 18:02:20,870.870 INFO    ] handle_start_order_command
[2026-08-31 18:02:20,876.876 INFO    ] _send_start_order_success: request_id=start-order-1788179540412-vi0a0mhv9, order_id=TM08202202260831180130022
[2026-08-31 18:02:20,878.878 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM08202202
[2026-08-31 18:02:20,951.951 INFO    ] [_send_start_order_success] Message added to stream with ID: 1788179540907-0
[2026-08-31 18:02:20,953.953 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-08-31 18:02:20,955.955 INFO    ] Checking for system updates...
[2026-08-31 18:02:20,997.997 INFO    ] 200
[2026-08-31 18:02:20,999.999 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:02:21,058.058 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:02:21,060.060 INFO    ] No update needed
[2026-08-31 18:02:21,063.063 INFO    ] Checking for camera pi updates...
[2026-08-31 18:02:21,098.098 INFO    ] 200
[2026-08-31 18:02:21,100.100 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:02:21,145.145 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:02:21,227.227 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:02:21,230.230 INFO    ] No camera update needed
[2026-08-31 18:02:21,232.232 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:02:21,234.234 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:02:21,239.239 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:02:21,244.244 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:02:23,285.285 INFO    ] ================================================
[2026-08-31 18:02:23,301.301 INFO    ] Launching Daemon at Mon Aug 31 18:02:23 IST 2026
[2026-08-31 18:02:23,311.311 INFO    ] ================================================
[2026-08-31 18:02:23,891.891 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:02:23
[2026-08-31 18:02:24,488.488 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:02:24,763.763 INFO    ] Initializing speech engine...
[2026-08-31 18:02:24,773.773 INFO    ] 2026-08-31 18:02:24
[2026-08-31 18:02:25,035.035 INFO    ] 2026-08-31 18:02:25
[2026-08-31 18:02:25,088.088 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:02:25,328.328 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:02:25,333.333 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:02:25,546.546 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:02:25,589.589 INFO    ] time= 31/08/2026 18:02:25
[2026-08-31 18:02:25,595.595 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:02:25,612.612 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:02:25,727.727 INFO    ] Found 2 existing command(s) in stream
[2026-08-31 18:02:25,772.772 INFO    ] Checking historical command: ID=1788179540907-0
[2026-08-31 18:02:25,831.831 INFO    ] process_and_cleanup_command: msg_id=1788179540907-0
[2026-08-31 18:02:25,867.867 INFO    ] is_command_expired: timestamp=2026-08-31T12:32:20.877018Z, expiry=30s
[2026-08-31 18:02:26,073.073 INFO    ] Command removed from stream: 1788179540907-0. returning for processing...
[2026-08-31 18:02:26,083.083 INFO    ] ***** get_valid_command
[2026-08-31 18:02:26,086.086 INFO    ] {'imei': 'TM08202202', 'metadata_order_id': 'TM08202202260831180130022', 'message': 'start-order success', 'timestamp': '2026-08-31T12:32:20.877018Z', 'metadata_request_id': 'start-order-1788179540412-vi0a0mhv9', 'status': 'success', 'message_type': 'command_response'}
[2026-08-31 18:02:26,089.089 INFO    ] Checking historical command: ID=1788179542682-0
[2026-08-31 18:02:26,092.092 INFO    ] process_and_cleanup_command: msg_id=1788179542682-0
[2026-08-31 18:02:26,095.095 INFO    ] is_command_expired: timestamp=2026-08-31T12:32:22.408Z, expiry=30s
[2026-08-31 18:02:26,223.223 INFO    ] Command removed from stream: 1788179542682-0. returning for processing...
[2026-08-31 18:02:26,227.227 INFO    ] ***** get_valid_command
[2026-08-31 18:02:26,276.276 INFO    ] {'source': 'webapp', 'timeout': '60', 'command': 'process-order', 'timestamp': '2026-08-31T12:32:22.408Z', 'data': '{"request_id":"process-order-1788179542408-isuj3ygfa","orderId":"TM08202202260831180130022","is_vending":false,"accessCode":"36165222"}'}
[2026-08-31 18:02:26,280.280 INFO    ] ***** Parsed command data: {'is_vending': False, 'request_id': 'process-order-1788179542408-isuj3ygfa', 'accessCode': '36165222', 'orderId': 'TM08202202260831180130022'}
[2026-08-31 18:02:26,283.283 INFO    ] Handling process order...
[2026-08-31 18:02:26,333.333 INFO    ] Processing process-order command...
[2026-08-31 18:02:26,341.341 INFO    ] 🔍 Lock file Order ID: TM08202202260831180130022, TS: 2026-08-31 18:02:20
[2026-08-31 18:02:26,357.357 INFO    ] ✅ Order lock valid for TM08202202260831180130022
[2026-08-31 18:02:26,361.361 INFO    ] Received access code in process-order, skipping PHP API call
[2026-08-31 18:02:26,366.366 INFO    ] processing access code 36165222 for order TM08202202260831180130022
[2026-08-31 18:02:26,371.371 INFO    ] 🔍 Lock file Order ID: TM08202202260831180130022, TS: 2026-08-31 18:02:20
[2026-08-31 18:02:26,376.376 INFO    ] ✅ Order lock valid for TM08202202260831180130022
[2026-08-31 18:02:26,380.380 INFO    ] 2026-08-31 18:02:26
[2026-08-31 18:02:26,495.495 INFO    ] 200
[2026-08-31 18:02:26,529.529 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:02:26,536.536 INFO    ] 36165222
[2026-08-31 18:02:26,541.541 INFO    ] 2026-08-31 18:02:26
[2026-08-31 18:02:26,548.548 INFO    ] session id :391725628
[2026-08-31 18:02:26,553.553 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=36165222&imei=TM08202202&session_id=391725628
[2026-08-31 18:02:27,807.807 INFO    ] 200
[2026-08-31 18:02:27,816.816 INFO    ] {"msg": "Order Data", "data": {"access_code": "36165222", "invoice_bill": "20", "mobile": "7795646439", "order_id": "TM08202202260831180130022", "bill_amount": "20", "proposed_sku_json": [{"qty": 1, "offer_desc": "", "image_url": "https://images.tinymart.in/product/4500677-4669.png", "sku_total": 10, "mrp": "10", "tray_id": "38", "name": "Eat Bit Peanut  Chikki 32gm", "offer_id": "", "skuid": "4500677", "unit_price": 10, "door_id": "2"}, {"qty": 1, "offer_desc": "", "image_url": "https://images.tinymart.in/product/4500714-2989.png", "sku_total": 10, "mrp": "10", "tray_id": "14", "name": "McVities Triple Nut Cookies 58gm", "offer_id": "", "skuid": "4500714", "unit_price": 10, "door_id": "1"}]}, "status": true, "rstatus": true}
[2026-08-31 18:02:27,823.823 INFO    ] 20
[2026-08-31 18:02:27,857.857 INFO    ] TM08202202260831180130022
[2026-08-31 18:02:27,870.870 INFO    ] 7795646439
[2026-08-31 18:02:27,897.897 INFO    ] 2026-08-31 18:02:27
[2026-08-31 18:02:27,902.902 INFO    ] Door Opening for user mobile ending with  six four three nine 
[2026-08-31 18:02:27,907.907 INFO    ] Door Opening for user mobile ending with  six four three nine 
[2026-08-31 18:02:27,915.915 INFO    ] fb6d8d4a61d62f464533dd975e76f0ef
[2026-08-31 18:02:27,922.922 INFO    ] 2026-08-31 18:02:27
[2026-08-31 18:02:27,929.929 INFO    ] playing audio file
[2026-08-31 18:02:27,951.951 INFO    ] 2026-08-31 18:02:27
[2026-08-31 18:02:27,957.957 INFO    ] 2026-08-31 18:02:27
[2026-08-31 18:02:27,990.990 INFO    ] publish_status: order_id=TM08202202260831180130022
[2026-08-31 18:02:27,995.995 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831180130022
[2026-08-31 18:02:28,133.133 INFO    ] [publish_status] Message added to stream with ID: 1788179548043-0
[2026-08-31 18:02:28,172.172 INFO    ] Published to order:TM08202202260831180130022: {'order_id': 'TM08202202260831180130022', 'timestamp': '2026-08-31T12:32:27.969504Z', 'server_response': '{"status": true, "msg": "Order Data", "rstatus": true, "data": {"proposed_sku_json": [{"name": "Eat Bit Peanut  Chikki 32gm", "offer_id": "", "skuid": "4500677", "tray_id": "38", "door_id": "2", "offer_desc": "", "sku_total": 10, "unit_price": 10, "image_url": "https://images.tinymart.in/product/4500677-4669.png", "qty": 1, "mrp": "10"}, {"name": "McVities Triple Nut Cookies 58gm", "offer_id": "", "skuid": "4500714", "tray_id": "14", "door_id": "1", "offer_desc": "", "sku_total": 10, "unit_price": 10, "image_url": "https://images.tinymart.in/product/4500714-2989.png", "qty": 1, "mrp": "10"}], "invoice_bill": "20", "mobile": "7795646439", "order_id": "TM08202202260831180130022", "access_code": "36165222", "bill_amount": "20"}}', 'server_status': 'order-started'} (ID: 1788179548043-0)
[2026-08-31 18:02:28,745.745 INFO    ] {'order_id': 'TM08202202260831180130022', 'server_response': {'status': True, 'msg': 'Order Data', 'rstatus': True, 'data': {'proposed_sku_json': [{'name': 'Eat Bit Peanut  Chikki 32gm', 'offer_id': '', 'skuid': '4500677', 'tray_id': '38', 'door_id': '2', 'offer_desc': '', 'sku_total': 10, 'unit_price': 10, 'image_url': 'https://images.tinymart.in/product/4500677-4669.png', 'qty': 1, 'mrp': '10'}, {'name': 'McVities Triple Nut Cookies 58gm', 'offer_id': '', 'skuid': '4500714', 'tray_id': '14', 'door_id': '1', 'offer_desc': '', 'sku_total': 10, 'unit_price': 10, 'image_url': 'https://images.tinymart.in/product/4500714-2989.png', 'qty': 1, 'mrp': '10'}], 'invoice_bill': '20', 'mobile': '7795646439', 'order_id': 'TM08202202260831180130022', 'access_code': '36165222', 'bill_amount': '20'}}, 'server_status': 'order-started'}
[2026-08-31 18:02:28,748.748 INFO    ] 200
[2026-08-31 18:02:28,750.750 INFO    ] {"data":{"order_id":"TM08202202260831180130022","server_response":{"status":true,"msg":"Order Data","rstatus":true,"data":{"proposed_sku_json":[{"name":"Eat Bit Peanut  Chikki 32gm","offer_id":"","skuid":"4500677","tray_id":"38","door_id":"2","offer_desc":"","sku_total":10,"unit_price":10,"image_url":"https:\/\/images.tinymart.in\/product\/4500677-4669.png","qty":1,"mrp":"10"},{"name":"McVities Triple Nut Cookies 58gm","offer_id":"","skuid":"4500714","tray_id":"14","door_id":"1","offer_desc":"","sku_total":10,"unit_price":10,"image_url":"https:\/\/images.tinymart.in\/product\/4500714-2989.png","qty":1,"mrp":"10"}],"invoice_bill":"20","mobile":"7795646439","order_id":"TM08202202260831180130022","access_code":"36165222","bill_amount":"20"}},"server_status":"order-started"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 18:02:28,753.753 INFO    ] {'response': {'msg': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS', 'data': 'order updated successfully'}, 'data': {'order_id': 'TM08202202260831180130022', 'server_response': {'msg': 'Order Data', 'status': True, 'rstatus': True, 'data': {'order_id': 'TM08202202260831180130022', 'bill_amount': '20', 'mobile': '7795646439', 'proposed_sku_json': [{'name': 'Eat Bit Peanut  Chikki 32gm', 'offer_id': '', 'skuid': '4500677', 'tray_id': '38', 'offer_desc': '', 'sku_total': 10, 'unit_price': 10, 'image_url': 'https://images.tinymart.in/product/4500677-4669.png', 'qty': 1, 'door_id': '2', 'mrp': '10'}, {'name': 'McVities Triple Nut Cookies 58gm', 'offer_id': '', 'skuid': '4500714', 'tray_id': '14', 'offer_desc': '', 'sku_total': 10, 'unit_price': 10, 'image_url': 'https://images.tinymart.in/product/4500714-2989.png', 'qty': 1, 'door_id': '1', 'mrp': '10'}], 'access_code': '36165222', 'invoice_bill': '20'}}, 'server_status': 'order-started'}}
[2026-08-31 18:02:28,756.756 INFO    ] 2026-08-31 18:02:28
[2026-08-31 18:02:28,803.803 INFO    ] 200
[2026-08-31 18:02:28,806.806 INFO    ] True
[2026-08-31 18:02:28,978.978 INFO    ] 200
[2026-08-31 18:02:28,981.981 INFO    ] {"SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "voiceNote": "Please Wait", "SectionMain": {"Header": "Processing Order"}, "SectionStatus": {"Note": "", "UI_Header": "", "SubHeader": "Please wait while we process your order", "Header": " Your order is under process  "}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 18:02:28,984.984 INFO    ] {'SectionStatus': {'Header': ' Your order is under process  ', 'Note': '', 'SubHeader': 'Please wait while we process your order', 'UI_Header': ''}, 'SectionMain': {'Header': 'Processing Order'}, 'voiceNote': 'Please Wait', 'rstatus': False, 'status': 'False', 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'error': {'umessage': 'In Progress', 'code': 20001, 'data': {}, 'tmessage': 'In Progress'}}
[2026-08-31 18:02:28,987.987 INFO    ] *** process_order ***
[2026-08-31 18:02:30,175.175 INFO    ] 200
[2026-08-31 18:02:30,178.178 INFO    ] {"SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "voiceNote": "Please Wait", "SectionMain": {"Header": "Processing Order"}, "SectionStatus": {"Note": "", "UI_Header": "", "SubHeader": "Please wait while we process your order", "Header": " Your order is under process  "}, "delay": 0, "status": "True", "rstatus": true}
[2026-08-31 18:02:30,181.181 INFO    ] {'SectionStatus': {'Header': ' Your order is under process  ', 'Note': '', 'SubHeader': 'Please wait while we process your order', 'UI_Header': ''}, 'delay': 0, 'SectionMain': {'Header': 'Processing Order'}, 'voiceNote': 'Please Wait', 'rstatus': True, 'status': 'True', 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}}
[2026-08-31 18:02:30,183.183 INFO    ] *** process_order ***
[2026-08-31 18:02:30,186.186 INFO    ] publish_status: order_id=TM08202202260831180130022
[2026-08-31 18:02:30,188.188 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831180130022
[2026-08-31 18:02:30,280.280 INFO    ] [publish_status] Message added to stream with ID: 1788179550238-0
[2026-08-31 18:02:30,283.283 INFO    ] Published to order:TM08202202260831180130022: {'order_id': 'TM08202202260831180130022', 'server_response': '{"status": "True", "delay": 0, "SectionMain": {"Header": "Processing Order"}, "voiceNote": "Door is open...", "SectionStatus": {"Note": "", "UI_Header": "", "SubHeader": "You can pull the door now.", "Header": " Your order is under process  "}, "rstatus": true, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}}', 'server_status': 'doorOpened'} (ID: 1788179550238-0)
[2026-08-31 18:02:31,362.362 INFO    ] 2026-08-31 18:02:31
[2026-08-31 18:02:31,366.366 INFO    ] publish_status: order_id=TM08202202260831180130022
[2026-08-31 18:02:31,370.370 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831180130022
[2026-08-31 18:02:31,494.494 INFO    ] [publish_status] Message added to stream with ID: 1788179551442-0
[2026-08-31 18:02:31,497.497 INFO    ] Published to order:TM08202202260831180130022: {'order_id': 'TM08202202260831180130022', 'timestamp': '2026-08-31T12:32:31.364027Z', 'server_response': '{"SectionStatus": {"Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order", "UI_Header": ""}, "delay": 0, "SectionMain": {"Header": "Processing Order"}, "voiceNote": "Please Wait", "rstatus": true, "status": "True", "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}}', 'server_status': 'processOrder'} (ID: 1788179551442-0)
[2026-08-31 18:02:31,646.646 INFO    ] {'order_id': 'TM08202202260831180130022', 'server_response': {'SectionStatus': {'Header': ' Your order is under process  ', 'Note': '', 'SubHeader': 'Please wait while we process your order', 'UI_Header': ''}, 'delay': 0, 'SectionMain': {'Header': 'Processing Order'}, 'voiceNote': 'Please Wait', 'rstatus': True, 'status': 'True', 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}}, 'server_status': 'processOrder'}
[2026-08-31 18:02:31,649.649 INFO    ] 200
[2026-08-31 18:02:31,652.652 INFO    ] {"data":{"order_id":"TM08202202260831180130022","server_response":{"SectionStatus":{"Header":" Your order is under process  ","Note":"","SubHeader":"Please wait while we process your order","UI_Header":""},"delay":0,"SectionMain":{"Header":"Processing Order"},"voiceNote":"Please Wait","rstatus":true,"status":"true","SectionSKU":{"Header":"Thank you for bearing with us :)","skus":[]}},"server_status":"processOrder"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 18:02:31,655.655 INFO    ] {'response': {'msg': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS', 'data': 'order updated successfully'}, 'data': {'order_id': 'TM08202202260831180130022', 'server_response': {'voiceNote': 'Please Wait', 'delay': 0, 'SectionMain': {'Header': 'Processing Order'}, 'status': 'true', 'SectionStatus': {'Header': ' Your order is under process  ', 'UI_Header': '', 'SubHeader': 'Please wait while we process your order', 'Note': ''}, 'rstatus': True, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}}, 'server_status': 'processOrder'}}
[2026-08-31 18:02:31,658.658 INFO    ] 2026-08-31 18:02:31
[2026-08-31 18:02:31,661.661 INFO    ] None
[2026-08-31 18:02:31,664.664 INFO    ] Opening Door now
[2026-08-31 18:02:31,667.667 INFO    ] Opening Door now
[2026-08-31 18:02:31,672.672 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-08-31 18:02:31,675.675 INFO    ] 2026-08-31 18:02:31
[2026-08-31 18:02:31,678.678 INFO    ] playing audio file
[2026-08-31 18:02:31,696.696 INFO    ] 2026-08-31 18:02:31
[2026-08-31 18:02:31,699.699 INFO    ] 2026-08-31 18:02:31
[2026-08-31 18:02:34,770.770 INFO    ] 200
[2026-08-31 18:02:34,773.773 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Triple Nut Cookies 58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Door 1 is open now", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 18:02:34,776.776 INFO    ] {'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'}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Door 1 is open now', 'rstatus': False, 'status': 'False', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Triple Nut Cookies 58gm', 'qty': 1}]}, 'error': {'umessage': 'In Progress', 'code': 20001, 'data': {}, 'tmessage': 'In Progress'}}
[2026-08-31 18:02:37,840.840 INFO    ] 200
[2026-08-31 18:02:37,843.843 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Triple Nut Cookies 58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 18:02:37,846.846 INFO    ] {'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'}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'rstatus': False, 'status': 'False', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Triple Nut Cookies 58gm', 'qty': 1}]}, 'error': {'umessage': 'In Progress', 'code': 20001, 'data': {}, 'tmessage': 'In Progress'}}
[2026-08-31 18:02:40,918.918 INFO    ] 200
[2026-08-31 18:02:40,921.921 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Triple Nut Cookies 58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 18:02:40,931.931 INFO    ] Please close door 1
[2026-08-31 18:02:40,934.934 INFO    ] Please close door 1
[2026-08-31 18:02:40,936.936 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-08-31 18:02:40,946.946 INFO    ] 2026-08-31 18:02:40
[2026-08-31 18:02:40,948.948 INFO    ] playing audio file
[2026-08-31 18:02:40,968.968 INFO    ] 2026-08-31 18:02:40
[2026-08-31 18:02:40,983.983 INFO    ] publish_status: order_id=TM08202202260831180130022
[2026-08-31 18:02:40,985.985 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831180130022
[2026-08-31 18:02:41,120.120 INFO    ] [publish_status] Message added to stream with ID: 1788179561068-0
[2026-08-31 18:02:41,122.122 INFO    ] Published to order:TM08202202260831180130022: {'order_id': 'TM08202202260831180130022', 'timestamp': '2026-08-31T12:32:40.981350Z', 'server_response': '{"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"}, "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 1", "rstatus": false, "status": "False", "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "McVities Triple Nut Cookies 58gm", "qty": 1}]}, "error": {"umessage": "In Progress", "code": 20001, "data": {}, "tmessage": "In Progress"}}', 'server_status': 'OrderStatus'} (ID: 1788179561068-0)
[2026-08-31 18:02:41,737.737 INFO    ] {'order_id': 'TM08202202260831180130022', 'server_response': {'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'}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'rstatus': False, 'status': 'False', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Triple Nut Cookies 58gm', 'qty': 1}]}, 'error': {'umessage': 'In Progress', 'code': 20001, 'data': {}, 'tmessage': 'In Progress'}}, 'server_status': 'OrderStatus'}
[2026-08-31 18:02:41,739.739 INFO    ] 200
[2026-08-31 18:02:41,742.742 INFO    ] {"data":{"order_id":"TM08202202260831180130022","server_response":{"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"},"SectionMain":{"Header":"Door Open"},"voiceNote":"Please close door 1","rstatus":false,"status":"false","SectionSKU":{"Header":"Pick the below items from the door","skus":[{"name":"McVities Triple Nut Cookies 58gm","qty":1}]},"error":{"umessage":"In Progress","code":20001,"data":[],"tmessage":"In Progress"}},"server_status":"OrderStatus"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 18:02:41,745.745 INFO    ] {'response': {'msg': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS', 'data': 'order updated successfully'}, 'data': {'order_id': 'TM08202202260831180130022', 'server_response': {'voiceNote': 'Please close door 1', 'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'Header': 'Please Close Door 1', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Triple Nut Cookies 58gm', 'qty': 1}]}, 'status': 'false', 'rstatus': False, 'error': {'umessage': 'In Progress', 'code': 20001, 'data': [], 'tmessage': 'In Progress'}}, 'server_status': 'OrderStatus'}}
[2026-08-31 18:02:41,748.748 INFO    ] {'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'}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'rstatus': False, 'status': 'False', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Triple Nut Cookies 58gm', 'qty': 1}]}, 'error': {'umessage': 'In Progress', 'code': 20001, 'data': {}, 'tmessage': 'In Progress'}}
[2026-08-31 18:02:44,798.798 INFO    ] 200
[2026-08-31 18:02:44,800.800 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Triple Nut Cookies 58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Door 1 is closed now", "SectionMain": {"Header": "Door Close"}, "SectionStatus": {"Note": "If any due amount, clear at https://go.tinymart.in", "UI_Header": "DOOR 1\nIS \nCLOSED \nNOW", "SubHeader": "Please wait for invoice to generate", "Header": "Door 1 is closed now"}, "delay": 1000, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 18:02:44,803.803 INFO    ] {'SectionStatus': {'Header': 'Door 1 is closed now', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'SubHeader': 'Please wait for invoice to generate', 'UI_Header': 'DOOR 1\nIS \nCLOSED \nNOW'}, 'delay': 1000, 'SectionMain': {'Header': 'Door Close'}, 'voiceNote': 'Door 1 is closed now', 'rstatus': False, 'status': 'False', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Triple Nut Cookies 58gm', 'qty': 1}]}, 'error': {'umessage': 'In Progress', 'code': 20001, 'data': {}, 'tmessage': 'In Progress'}}
[2026-08-31 18:02:47,885.885 INFO    ] 200
[2026-08-31 18:02:47,888.888 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "Eat Bit Peanut  Chikki 32gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Door 2 is open now", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 18:02:47,891.891 INFO    ] {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW'}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Door 2 is open now', 'rstatus': False, 'status': 'False', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'Eat Bit Peanut  Chikki 32gm', 'qty': 1}]}, 'error': {'umessage': 'In Progress', 'code': 20001, 'data': {}, 'tmessage': 'In Progress'}}
[2026-08-31 18:02:51,000.000 INFO    ] 200
[2026-08-31 18:02:51,003.003 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "Eat Bit Peanut  Chikki 32gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 18:02:51,006.006 INFO    ] Please close door 2
[2026-08-31 18:02:51,009.009 INFO    ] Please close door 2
[2026-08-31 18:02:51,012.012 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-08-31 18:02:51,015.015 INFO    ] 2026-08-31 18:02:51
[2026-08-31 18:02:51,018.018 INFO    ] playing audio file
[2026-08-31 18:02:51,036.036 INFO    ] 2026-08-31 18:02:51
[2026-08-31 18:02:51,047.047 INFO    ] publish_status: order_id=TM08202202260831180130022
[2026-08-31 18:02:51,050.050 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831180130022
[2026-08-31 18:02:51,154.154 INFO    ] [publish_status] Message added to stream with ID: 1788179571109-0
[2026-08-31 18:02:51,157.157 INFO    ] Published to order:TM08202202260831180130022: {'order_id': 'TM08202202260831180130022', 'timestamp': '2026-08-31T12:32:51.045458Z', 'server_response': '{"SectionStatus": {"Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door", "UI_Header": "DOOR 2\\nIS \\nOPEN \\nNOW"}, "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 2", "rstatus": false, "status": "False", "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Eat Bit Peanut  Chikki 32gm", "qty": 1}]}, "error": {"umessage": "In Progress", "code": 20001, "data": {}, "tmessage": "In Progress"}}', 'server_status': 'OrderStatus'} (ID: 1788179571109-0)
[2026-08-31 18:02:51,773.773 INFO    ] {'order_id': 'TM08202202260831180130022', 'server_response': {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW'}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 2', 'rstatus': False, 'status': 'False', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'Eat Bit Peanut  Chikki 32gm', 'qty': 1}]}, 'error': {'umessage': 'In Progress', 'code': 20001, 'data': {}, 'tmessage': 'In Progress'}}, 'server_status': 'OrderStatus'}
[2026-08-31 18:02:51,776.776 INFO    ] 200
[2026-08-31 18:02:51,778.778 INFO    ] {"data":{"order_id":"TM08202202260831180130022","server_response":{"SectionStatus":{"Header":"Please Close Door 2","Note":"Please Close the door after picking up products","SubHeader":"Please Pick the Products and close the door","UI_Header":"DOOR 2\nIS \nOPEN \nNOW"},"SectionMain":{"Header":"Door Open"},"voiceNote":"Please close door 2","rstatus":false,"status":"false","SectionSKU":{"Header":"Pick the below items from the door","skus":[{"name":"Eat Bit Peanut  Chikki 32gm","qty":1}]},"error":{"umessage":"In Progress","code":20001,"data":[],"tmessage":"In Progress"}},"server_status":"OrderStatus"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 18:02:51,781.781 INFO    ] {'response': {'msg': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS', 'data': 'order updated successfully'}, 'data': {'order_id': 'TM08202202260831180130022', 'server_response': {'voiceNote': 'Please close door 2', 'SectionMain': {'Header': 'Door Open'}, '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'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'Eat Bit Peanut  Chikki 32gm', 'qty': 1}]}, 'status': 'false', 'rstatus': False, 'error': {'umessage': 'In Progress', 'code': 20001, 'data': [], 'tmessage': 'In Progress'}}, 'server_status': 'OrderStatus'}}
[2026-08-31 18:02:51,784.784 INFO    ] {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW'}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 2', 'rstatus': False, 'status': 'False', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'Eat Bit Peanut  Chikki 32gm', 'qty': 1}]}, 'error': {'umessage': 'In Progress', 'code': 20001, 'data': {}, 'tmessage': 'In Progress'}}
[2026-08-31 18:02:54,881.881 INFO    ] 200
[2026-08-31 18:02:54,884.884 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "Eat Bit Peanut  Chikki 32gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 18:02:54,888.888 INFO    ] {'SectionStatus': {'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW'}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 2', 'rstatus': False, 'status': 'False', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'Eat Bit Peanut  Chikki 32gm', 'qty': 1}]}, 'error': {'umessage': 'In Progress', 'code': 20001, 'data': {}, 'tmessage': 'In Progress'}}
[2026-08-31 18:02:57,958.958 INFO    ] 200
[2026-08-31 18:02:57,961.961 INFO    ] {"SectionSKU": {"skus": [], "Header": "If you like us, tell others... else tell us"}, "voiceNote": "Transaction Completed", "SectionMain": {"Header": "Door Closed"}, "SectionStatus": {"Note": "If any due amount, clear at https://go.tinymart.in", "UI_Header": "", "SubHeader": "Please wait for invoice to generate", "Header": " Order is complete "}, "delay": 100, "status": "True", "rstatus": true}
[2026-08-31 18:02:57,964.964 INFO    ] {'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': ''}, 'delay': 100, 'SectionMain': {'Header': 'Door Closed'}, 'voiceNote': 'Transaction Completed', 'rstatus': True, 'status': 'True', 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}}
[2026-08-31 18:02:57,967.967 INFO    ] 2026-08-31 18:02:57
[2026-08-31 18:02:57,969.969 INFO    ] Order Completed 
[2026-08-31 18:02:57,972.972 INFO    ] Order Completed 
[2026-08-31 18:02:57,975.975 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-08-31 18:02:57,978.978 INFO    ] 2026-08-31 18:02:57
[2026-08-31 18:02:57,981.981 INFO    ] playing audio file
[2026-08-31 18:02:57,999.999 INFO    ] 2026-08-31 18:02:57
[2026-08-31 18:02:58,002.002 INFO    ] {'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': ''}, 'delay': 100, 'SectionMain': {'Header': 'Door Closed'}, 'voiceNote': 'Transaction Completed', 'rstatus': True, 'status': 'True', 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}}
[2026-08-31 18:02:58,005.005 INFO    ] 2026-08-31 18:02:58
[2026-08-31 18:03:00,609.609 INFO    ] 200
[2026-08-31 18:03:00,612.612 INFO    ] {"skus": [{"qty": 1, "image_url": "https://images.tinymart.in/product/4500714-2989.png", "sku_total": 10.0, "mrp": "10", "tray_id": "14", "name": "McVities Triple Nut Cookies 58gm per peice", "skuid": "4500714", "unit_price": "10", "door_id": ""}, {"qty": 1, "image_url": "https://images.tinymart.in/product/4500677-4669.png", "sku_total": 10.0, "mrp": "10", "tray_id": "38", "name": "Eat Bit Peanut  Chikki 32gm per peice", "skuid": "4500677", "unit_price": "10", "door_id": ""}], "anomaly": 0, "orderId": "TM08202202260831180130022", "res": "True", "logic": "WBL", "total_amount": 20.0, "rstatus": true}
[2026-08-31 18:03:00,614.614 INFO    ] {'logic': 'WBL', 'orderId': 'TM08202202260831180130022', 'total_amount': 20.0, 'rstatus': True, 'res': 'True', 'skus': [{'name': 'McVities Triple Nut Cookies 58gm per peice', 'skuid': '4500714', 'tray_id': '14', 'door_id': '', 'sku_total': 10.0, 'unit_price': '10', 'image_url': 'https://images.tinymart.in/product/4500714-2989.png', 'qty': 1, 'mrp': '10'}, {'name': 'Eat Bit Peanut  Chikki 32gm per peice', 'skuid': '4500677', 'tray_id': '38', 'door_id': '', 'sku_total': 10.0, 'unit_price': '10', 'image_url': 'https://images.tinymart.in/product/4500677-4669.png', 'qty': 1, 'mrp': '10'}], 'anomaly': 0}
[2026-08-31 18:03:00,617.617 INFO    ] {'logic': 'WBL', 'orderId': 'TM08202202260831180130022', 'total_amount': 20.0, 'rstatus': True, 'res': 'True', 'skus': [{'name': 'McVities Triple Nut Cookies 58gm per peice', 'skuid': '4500714', 'tray_id': '14', 'door_id': '', 'sku_total': 10.0, 'unit_price': '10', 'image_url': 'https://images.tinymart.in/product/4500714-2989.png', 'qty': 1, 'mrp': '10'}, {'name': 'Eat Bit Peanut  Chikki 32gm per peice', 'skuid': '4500677', 'tray_id': '38', 'door_id': '', 'sku_total': 10.0, 'unit_price': '10', 'image_url': 'https://images.tinymart.in/product/4500677-4669.png', 'qty': 1, 'mrp': '10'}], 'anomaly': 0}
[2026-08-31 18:03:00,620.620 INFO    ] 2026-08-31 18:03:00
[2026-08-31 18:03:00,622.622 INFO    ] 2026-08-31 18:03:00
[2026-08-31 18:03:00,624.624 INFO    ] 20
[2026-08-31 18:03:00,626.626 INFO    ] 2026-08-31 18:03:00
[2026-08-31 18:03:00,629.629 INFO    ] 2026-08-31 18:03:00
[2026-08-31 18:03:00,631.631 INFO    ]  Your Bill Amount is 20
[2026-08-31 18:03:00,633.633 INFO    ]  Your Bill Amount is 20
[2026-08-31 18:03:00,636.636 INFO    ] 69e7720cf62ffa67ab0522541575e508
[2026-08-31 18:03:00,638.638 INFO    ] 2026-08-31 18:03:00
[2026-08-31 18:03:00,640.640 INFO    ] playing audio file
[2026-08-31 18:03:00,658.658 INFO    ] 2026-08-31 18:03:00
[2026-08-31 18:03:00,661.661 INFO    ] 2026-08-31 18:03:00
[2026-08-31 18:03:00,664.664 INFO    ] publish_status: order_id=TM08202202260831180130022
[2026-08-31 18:03:00,667.667 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831180130022
[2026-08-31 18:03:00,761.761 INFO    ] [publish_status] Message added to stream with ID: 1788179580718-0
[2026-08-31 18:03:00,764.764 INFO    ] Published to order:TM08202202260831180130022: {'order_id': 'TM08202202260831180130022', 'timestamp': '2026-08-31T12:33:00.662576Z', 'server_response': '{"logic": "WBL", "orderId": "TM08202202260831180130022", "total_amount": 20.0, "rstatus": true, "res": "True", "skus": [{"name": "McVities Triple Nut Cookies 58gm per peice", "skuid": "4500714", "tray_id": "14", "door_id": "", "sku_total": 10.0, "unit_price": "10", "image_url": "https://images.tinymart.in/product/4500714-2989.png", "qty": 1, "mrp": "10"}, {"name": "Eat Bit Peanut  Chikki 32gm per peice", "skuid": "4500677", "tray_id": "38", "door_id": "", "sku_total": 10.0, "unit_price": "10", "image_url": "https://images.tinymart.in/product/4500677-4669.png", "qty": 1, "mrp": "10"}], "anomaly": 0}', 'server_status': 'invoiceOrder'} (ID: 1788179580718-0)
[2026-08-31 18:03:01,543.543 INFO    ] {'order_id': 'TM08202202260831180130022', 'server_response': {'logic': 'WBL', 'orderId': 'TM08202202260831180130022', 'total_amount': 20.0, 'rstatus': True, 'res': 'True', 'skus': [{'name': 'McVities Triple Nut Cookies 58gm per peice', 'skuid': '4500714', 'tray_id': '14', 'door_id': '', 'sku_total': 10.0, 'unit_price': '10', 'image_url': 'https://images.tinymart.in/product/4500714-2989.png', 'qty': 1, 'mrp': '10'}, {'name': 'Eat Bit Peanut  Chikki 32gm per peice', 'skuid': '4500677', 'tray_id': '38', 'door_id': '', 'sku_total': 10.0, 'unit_price': '10', 'image_url': 'https://images.tinymart.in/product/4500677-4669.png', 'qty': 1, 'mrp': '10'}], 'anomaly': 0}, 'server_status': 'invoiceOrder'}
[2026-08-31 18:03:01,548.548 INFO    ] 200
[2026-08-31 18:03:01,562.562 INFO    ] {"data":{"order_id":"TM08202202260831180130022","server_response":{"logic":"WBL","orderId":"TM08202202260831180130022","total_amount":20,"rstatus":true,"res":"true","skus":[{"name":"McVities Triple Nut Cookies 58gm per peice","skuid":"4500714","tray_id":"14","door_id":"","sku_total":10,"unit_price":"10","image_url":"https:\/\/images.tinymart.in\/product\/4500714-2989.png","qty":1,"mrp":"10"},{"name":"Eat Bit Peanut  Chikki 32gm per peice","skuid":"4500677","tray_id":"38","door_id":"","sku_total":10,"unit_price":"10","image_url":"https:\/\/images.tinymart.in\/product\/4500677-4669.png","qty":1,"mrp":"10"}],"anomaly":0},"server_status":"invoiceOrder"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 18:03:01,569.569 INFO    ] {'response': {'msg': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS', 'data': 'order updated successfully'}, 'data': {'order_id': 'TM08202202260831180130022', 'server_response': {'logic': 'WBL', 'res': 'true', 'orderId': 'TM08202202260831180130022', 'total_amount': 20, 'rstatus': True, 'skus': [{'name': 'McVities Triple Nut Cookies 58gm per peice', 'mrp': '10', 'skuid': '4500714', 'tray_id': '14', 'sku_total': 10, 'unit_price': '10', 'image_url': 'https://images.tinymart.in/product/4500714-2989.png', 'qty': 1, 'door_id': ''}, {'name': 'Eat Bit Peanut  Chikki 32gm per peice', 'mrp': '10', 'skuid': '4500677', 'tray_id': '38', 'sku_total': 10, 'unit_price': '10', 'image_url': 'https://images.tinymart.in/product/4500677-4669.png', 'qty': 1, 'door_id': ''}], 'anomaly': 0}, 'server_status': 'invoiceOrder'}}
[2026-08-31 18:03:01,574.574 INFO    ] {'response': {'msg': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS', 'data': 'order updated successfully'}, 'data': {'order_id': 'TM08202202260831180130022', 'server_response': {'logic': 'WBL', 'res': 'true', 'orderId': 'TM08202202260831180130022', 'total_amount': 20, 'rstatus': True, 'skus': [{'name': 'McVities Triple Nut Cookies 58gm per peice', 'mrp': '10', 'skuid': '4500714', 'tray_id': '14', 'sku_total': 10, 'unit_price': '10', 'image_url': 'https://images.tinymart.in/product/4500714-2989.png', 'qty': 1, 'door_id': ''}, {'name': 'Eat Bit Peanut  Chikki 32gm per peice', 'mrp': '10', 'skuid': '4500677', 'tray_id': '38', 'sku_total': 10, 'unit_price': '10', 'image_url': 'https://images.tinymart.in/product/4500677-4669.png', 'qty': 1, 'door_id': ''}], 'anomaly': 0}, 'server_status': 'invoiceOrder'}}
[2026-08-31 18:03:01,579.579 INFO    ] 2026-08-31 18:03:01
[2026-08-31 18:03:03,975.975 INFO    ] 200
[2026-08-31 18:03:03,978.978 INFO    ] {"tray_sync": [], "order_items": [], "orders_data": [], "orders_synced": [], "tray_synced": ["TM08202202260831180130022", "TM08202202260831180130022", "TM08202202260831180130022", "TM08202202260831180130022", "TM08202202260831180130022", "TM08202202260831180130022", "TM08202202260831180130022", "TM08202202260831180130022", "TM08202202260831180130022", "TM08202202260831180130022", "TM08202202260831180130022", "TM08202202260831180130022", "TM08202202260831180130022", "TM08202202260831180130022", "TM08202202260831180130022", "TM08202202260831180130022", "TM08202202260831180130022", "TM08202202260831180130022", "TM08202202260831180130022", "TM08202202260831180130022", "TM08202202260831180130022", "TM08202202260831180130022", "TM08202202260831180130022", "TM08202202260831180130022", "TM08202202260831180130022", "TM08202202260831180130022", "TM08202202260831180130022", "TM08202202260831180130022", "TM08202202260831180130022", "TM08202202260831180130022", "TM08202202260831180130022", "TM08202202260831180130022"], "orders_data_synced": [], "status": true, "order_items_synced": ["TM08202202260831180130022_0", "TM08202202260831180130022_1"], "orders": []}
[2026-08-31 18:03:03,981.981 INFO    ] 2026-08-31 18:03:03
[2026-08-31 18:03:04,120.120 INFO    ] 200
[2026-08-31 18:03:04,123.123 INFO    ] True
[2026-08-31 18:03:04,127.127 INFO    ] cleanup_start_order_file_after_processing: order_id=TM08202202260831180130022
[2026-08-31 18:03:04,131.131 INFO    ] start order file deleted
[2026-08-31 18:03:04,135.135 INFO    ] Checking for system updates...
[2026-08-31 18:03:04,172.172 INFO    ] 200
[2026-08-31 18:03:04,175.175 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:03:04,241.241 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:03:04,244.244 INFO    ] No update needed
[2026-08-31 18:03:04,247.247 INFO    ] Checking for camera pi updates...
[2026-08-31 18:03:04,289.289 INFO    ] 200
[2026-08-31 18:03:04,293.293 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:03:04,342.342 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:03:04,460.460 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:03:04,463.463 INFO    ] No camera update needed
[2026-08-31 18:03:04,466.466 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:03:04,469.469 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:03:04,476.476 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:03:04,483.483 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:03:06,527.527 INFO    ] ================================================
[2026-08-31 18:03:06,542.542 INFO    ] Launching Daemon at Mon Aug 31 18:03:06 IST 2026
[2026-08-31 18:03:06,553.553 INFO    ] ================================================
[2026-08-31 18:03:07,138.138 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:03:07
[2026-08-31 18:03:07,721.721 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:03:07,976.976 INFO    ] Initializing speech engine...
[2026-08-31 18:03:07,982.982 INFO    ] 2026-08-31 18:03:07
[2026-08-31 18:03:08,279.279 INFO    ] 2026-08-31 18:03:08
[2026-08-31 18:03:08,305.305 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:03:08,499.499 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:03:08,514.514 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:03:08,655.655 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:03:08,665.665 INFO    ] time= 31/08/2026 18:03:08
[2026-08-31 18:03:08,672.672 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:03:08,735.735 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:03:08,851.851 INFO    ] No existing commands found in stream
[2026-08-31 18:03:13,871.871 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:03:13,873.873 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-08-31 18:03:17,602.602 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 18:03:17,604.604 INFO    ] Checking for system updates...
[2026-08-31 18:03:17,641.641 INFO    ] 200
[2026-08-31 18:03:17,643.643 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:03:17,698.698 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:03:17,701.701 INFO    ] No update needed
[2026-08-31 18:03:17,703.703 INFO    ] Checking for camera pi updates...
[2026-08-31 18:03:17,741.741 INFO    ] 200
[2026-08-31 18:03:17,743.743 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:03:17,783.783 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:03:17,874.874 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:03:17,876.876 INFO    ] No camera update needed
[2026-08-31 18:03:17,879.879 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:03:17,881.881 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:03:17,886.886 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:03:17,892.892 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:03:19,931.931 INFO    ] ================================================
[2026-08-31 18:03:19,946.946 INFO    ] Launching Daemon at Mon Aug 31 18:03:19 IST 2026
[2026-08-31 18:03:19,956.956 INFO    ] ================================================
[2026-08-31 18:03:20,536.536 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:03:20
[2026-08-31 18:03:21,117.117 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:03:21,369.369 INFO    ] Initializing speech engine...
[2026-08-31 18:03:21,374.374 INFO    ] 2026-08-31 18:03:21
[2026-08-31 18:03:21,672.672 INFO    ] 2026-08-31 18:03:21
[2026-08-31 18:03:21,708.708 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:03:21,881.881 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:03:21,893.893 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:03:22,036.036 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:03:22,044.044 INFO    ] time= 31/08/2026 18:03:22
[2026-08-31 18:03:22,089.089 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:03:22,111.111 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:03:22,209.209 INFO    ] No existing commands found in stream
[2026-08-31 18:03:27,239.239 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:03:27,242.242 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-08-31 18:03:28,621.621 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 18:03:28,623.623 INFO    ] Checking for system updates...
[2026-08-31 18:03:28,659.659 INFO    ] 200
[2026-08-31 18:03:28,661.661 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:03:28,721.721 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:03:28,723.723 INFO    ] No update needed
[2026-08-31 18:03:28,725.725 INFO    ] Checking for camera pi updates...
[2026-08-31 18:03:28,759.759 INFO    ] 200
[2026-08-31 18:03:28,761.761 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:03:28,818.818 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:03:28,920.920 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:03:28,923.923 INFO    ] No camera update needed
[2026-08-31 18:03:28,925.925 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:03:28,927.927 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:03:28,933.933 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:03:28,938.938 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:03:30,978.978 INFO    ] ================================================
[2026-08-31 18:03:30,993.993 INFO    ] Launching Daemon at Mon Aug 31 18:03:30 IST 2026
[2026-08-31 18:03:31,004.004 INFO    ] ================================================
[2026-08-31 18:03:31,604.604 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:03:31
[2026-08-31 18:03:32,237.237 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:03:32,516.516 INFO    ] Initializing speech engine...
[2026-08-31 18:03:32,523.523 INFO    ] 2026-08-31 18:03:32
[2026-08-31 18:03:32,832.832 INFO    ] 2026-08-31 18:03:32
[2026-08-31 18:03:32,867.867 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:03:33,044.044 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:03:33,056.056 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:03:33,204.204 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:03:33,210.210 INFO    ] time= 31/08/2026 18:03:33
[2026-08-31 18:03:33,216.216 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:03:33,236.236 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:03:33,367.367 INFO    ] No existing commands found in stream
[2026-08-31 18:03:38,392.392 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:03:38,395.395 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-08-31 18:03:41,804.804 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 18:03:41,807.807 INFO    ] Checking for system updates...
[2026-08-31 18:03:41,843.843 INFO    ] 200
[2026-08-31 18:03:41,846.846 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:03:41,899.899 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:03:41,902.902 INFO    ] No update needed
[2026-08-31 18:03:41,905.905 INFO    ] Checking for camera pi updates...
[2026-08-31 18:03:41,940.940 INFO    ] 200
[2026-08-31 18:03:41,943.943 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:03:41,989.989 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:03:42,062.062 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:03:42,065.065 INFO    ] No camera update needed
[2026-08-31 18:03:42,068.068 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:03:42,070.070 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:03:42,076.076 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:03:42,084.084 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:03:44,125.125 INFO    ] ================================================
[2026-08-31 18:03:44,140.140 INFO    ] Launching Daemon at Mon Aug 31 18:03:44 IST 2026
[2026-08-31 18:03:44,151.151 INFO    ] ================================================
[2026-08-31 18:03:44,731.731 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:03:44
[2026-08-31 18:03:45,330.330 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:03:45,603.603 INFO    ] Initializing speech engine...
[2026-08-31 18:03:45,610.610 INFO    ] 2026-08-31 18:03:45
[2026-08-31 18:03:45,861.861 INFO    ] 2026-08-31 18:03:45
[2026-08-31 18:03:45,896.896 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:03:46,173.173 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:03:46,181.181 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:03:46,556.556 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:03:46,601.601 INFO    ] time= 31/08/2026 18:03:46
[2026-08-31 18:03:46,662.662 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:03:46,692.692 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:03:46,861.861 INFO    ] No existing commands found in stream
[2026-08-31 18:03:51,874.874 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:03:51,876.876 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-08-31 18:03:53,731.731 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 18:03:53,734.734 INFO    ] Checking for system updates...
[2026-08-31 18:03:53,770.770 INFO    ] 200
[2026-08-31 18:03:53,773.773 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:03:53,833.833 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:03:53,835.835 INFO    ] No update needed
[2026-08-31 18:03:53,838.838 INFO    ] Checking for camera pi updates...
[2026-08-31 18:03:53,872.872 INFO    ] 200
[2026-08-31 18:03:53,876.876 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:03:53,935.935 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:03:54,034.034 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:03:54,036.036 INFO    ] No camera update needed
[2026-08-31 18:03:54,039.039 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:03:54,041.041 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:03:54,047.047 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:03:54,052.052 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:03:56,095.095 INFO    ] ================================================
[2026-08-31 18:03:56,111.111 INFO    ] Launching Daemon at Mon Aug 31 18:03:56 IST 2026
[2026-08-31 18:03:56,126.126 INFO    ] ================================================
[2026-08-31 18:03:56,733.733 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:03:56
[2026-08-31 18:03:57,350.350 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:03:57,618.618 INFO    ] Initializing speech engine...
[2026-08-31 18:03:57,627.627 INFO    ] 2026-08-31 18:03:57
[2026-08-31 18:03:57,883.883 INFO    ] 2026-08-31 18:03:57
[2026-08-31 18:03:57,921.921 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:03:58,201.201 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:03:58,206.206 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:03:58,342.342 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:03:58,412.412 INFO    ] time= 31/08/2026 18:03:58
[2026-08-31 18:03:58,461.461 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:03:58,479.479 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:03:58,699.699 INFO    ] No existing commands found in stream
[2026-08-31 18:04:03,724.724 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:04:03,727.727 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-08-31 18:04:06,020.020 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 18:04:06,023.023 INFO    ] Checking for system updates...
[2026-08-31 18:04:06,059.059 INFO    ] 200
[2026-08-31 18:04:06,061.061 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:04:06,115.115 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:04:06,117.117 INFO    ] No update needed
[2026-08-31 18:04:06,120.120 INFO    ] Checking for camera pi updates...
[2026-08-31 18:04:06,154.154 INFO    ] 200
[2026-08-31 18:04:06,157.157 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:04:06,197.197 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:04:06,249.249 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:04:06,251.251 INFO    ] No camera update needed
[2026-08-31 18:04:06,253.253 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:04:06,255.255 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:04:06,261.261 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:04:06,266.266 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:04:08,305.305 INFO    ] ================================================
[2026-08-31 18:04:08,321.321 INFO    ] Launching Daemon at Mon Aug 31 18:04:08 IST 2026
[2026-08-31 18:04:08,331.331 INFO    ] ================================================
[2026-08-31 18:04:08,914.914 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:04:08
[2026-08-31 18:04:09,517.517 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:04:09,794.794 INFO    ] Initializing speech engine...
[2026-08-31 18:04:09,801.801 INFO    ] 2026-08-31 18:04:09
[2026-08-31 18:04:10,061.061 INFO    ] 2026-08-31 18:04:10
[2026-08-31 18:04:10,092.092 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:04:10,363.363 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:04:10,370.370 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:04:10,575.575 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:04:10,605.605 INFO    ] time= 31/08/2026 18:04:10
[2026-08-31 18:04:10,621.621 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:04:10,630.630 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:04:10,766.766 INFO    ] No existing commands found in stream
[2026-08-31 18:04:15,792.792 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:04:15,795.795 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-08-31 18:04:19,935.935 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 18:04:19,938.938 INFO    ] Checking for system updates...
[2026-08-31 18:04:19,973.973 INFO    ] 200
[2026-08-31 18:04:19,976.976 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:04:20,028.028 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:04:20,031.031 INFO    ] No update needed
[2026-08-31 18:04:20,033.033 INFO    ] Checking for camera pi updates...
[2026-08-31 18:04:20,071.071 INFO    ] 200
[2026-08-31 18:04:20,073.073 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:04:20,118.118 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:04:20,179.179 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:04:20,181.181 INFO    ] No camera update needed
[2026-08-31 18:04:20,184.184 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:04:20,186.186 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:04:20,191.191 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:04:20,196.196 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:04:22,239.239 INFO    ] ================================================
[2026-08-31 18:04:22,254.254 INFO    ] Launching Daemon at Mon Aug 31 18:04:22 IST 2026
[2026-08-31 18:04:22,264.264 INFO    ] ================================================
[2026-08-31 18:04:22,843.843 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:04:22
[2026-08-31 18:04:23,440.440 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:04:23,717.717 INFO    ] Initializing speech engine...
[2026-08-31 18:04:23,723.723 INFO    ] 2026-08-31 18:04:23
[2026-08-31 18:04:23,983.983 INFO    ] 2026-08-31 18:04:23
[2026-08-31 18:04:24,037.037 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:04:24,265.265 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:04:24,269.269 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:04:24,419.419 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:04:24,478.478 INFO    ] time= 31/08/2026 18:04:24
[2026-08-31 18:04:24,531.531 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:04:24,536.536 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:04:24,666.666 INFO    ] No existing commands found in stream
[2026-08-31 18:04:29,691.691 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:04:29,693.693 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-08-31 18:04:33,362.362 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 18:04:33,364.364 INFO    ] Checking for system updates...
[2026-08-31 18:04:33,404.404 INFO    ] 200
[2026-08-31 18:04:33,407.407 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:04:33,460.460 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:04:33,462.462 INFO    ] No update needed
[2026-08-31 18:04:33,464.464 INFO    ] Checking for camera pi updates...
[2026-08-31 18:04:33,501.501 INFO    ] 200
[2026-08-31 18:04:33,504.504 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:04:33,544.544 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:04:33,648.648 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:04:33,650.650 INFO    ] No camera update needed
[2026-08-31 18:04:33,652.652 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:04:33,655.655 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:04:33,660.660 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:04:33,665.665 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:04:35,706.706 INFO    ] ================================================
[2026-08-31 18:04:35,721.721 INFO    ] Launching Daemon at Mon Aug 31 18:04:35 IST 2026
[2026-08-31 18:04:35,732.732 INFO    ] ================================================
[2026-08-31 18:04:36,312.312 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:04:36
[2026-08-31 18:04:36,911.911 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:04:37,186.186 INFO    ] Initializing speech engine...
[2026-08-31 18:04:37,196.196 INFO    ] 2026-08-31 18:04:37
[2026-08-31 18:04:37,458.458 INFO    ] 2026-08-31 18:04:37
[2026-08-31 18:04:37,525.525 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:04:37,777.777 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:04:37,787.787 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:04:37,938.938 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:04:37,955.955 INFO    ] time= 31/08/2026 18:04:37
[2026-08-31 18:04:38,025.025 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:04:38,088.088 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:04:38,163.163 INFO    ] No existing commands found in stream
[2026-08-31 18:04:43,199.199 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:04:43,201.201 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-08-31 18:04:45,123.123 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 18:04:45,125.125 INFO    ] Checking for system updates...
[2026-08-31 18:04:45,161.161 INFO    ] 200
[2026-08-31 18:04:45,164.164 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:04:45,218.218 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:04:45,220.220 INFO    ] No update needed
[2026-08-31 18:04:45,222.222 INFO    ] Checking for camera pi updates...
[2026-08-31 18:04:45,255.255 INFO    ] 200
[2026-08-31 18:04:45,258.258 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:04:45,298.298 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:04:45,400.400 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:04:45,403.403 INFO    ] No camera update needed
[2026-08-31 18:04:45,405.405 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:04:45,407.407 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:04:45,413.413 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:04:45,418.418 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:04:47,457.457 INFO    ] ================================================
[2026-08-31 18:04:47,472.472 INFO    ] Launching Daemon at Mon Aug 31 18:04:47 IST 2026
[2026-08-31 18:04:47,483.483 INFO    ] ================================================
[2026-08-31 18:04:48,046.046 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:04:48
[2026-08-31 18:04:48,629.629 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:04:48,900.900 INFO    ] Initializing speech engine...
[2026-08-31 18:04:48,906.906 INFO    ] 2026-08-31 18:04:48
[2026-08-31 18:04:49,150.150 INFO    ] 2026-08-31 18:04:49
[2026-08-31 18:04:49,187.187 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:04:49,378.378 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:04:49,433.433 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:04:49,581.581 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:04:49,650.650 INFO    ] time= 31/08/2026 18:04:49
[2026-08-31 18:04:49,706.706 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:04:49,713.713 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:04:49,836.836 INFO    ] No existing commands found in stream
[2026-08-31 18:04:54,866.866 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:04:54,869.869 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-08-31 18:04:57,980.980 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 18:04:57,982.982 INFO    ] Checking for system updates...
[2026-08-31 18:04:58,022.022 INFO    ] 200
[2026-08-31 18:04:58,024.024 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:04:58,076.076 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:04:58,078.078 INFO    ] No update needed
[2026-08-31 18:04:58,081.081 INFO    ] Checking for camera pi updates...
[2026-08-31 18:04:58,122.122 INFO    ] 200
[2026-08-31 18:04:58,124.124 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:04:58,164.164 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:04:58,268.268 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:04:58,270.270 INFO    ] No camera update needed
[2026-08-31 18:04:58,273.273 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:04:58,275.275 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:04:58,280.280 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:04:58,285.285 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:05:00,325.325 INFO    ] ================================================
[2026-08-31 18:05:00,340.340 INFO    ] Launching Daemon at Mon Aug 31 18:05:00 IST 2026
[2026-08-31 18:05:00,351.351 INFO    ] ================================================
[2026-08-31 18:05:00,922.922 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:05:00
[2026-08-31 18:05:01,504.504 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:05:01,891.891 INFO    ] Initializing speech engine...
[2026-08-31 18:05:01,937.937 INFO    ] 2026-08-31 18:05:01
[2026-08-31 18:05:02,452.452 INFO    ] 2026-08-31 18:05:02
[2026-08-31 18:05:02,488.488 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:05:02,710.710 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:05:02,725.725 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:05:02,891.891 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:05:02,903.903 INFO    ] time= 31/08/2026 18:05:02
[2026-08-31 18:05:02,963.963 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:05:02,996.996 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:05:03,108.108 INFO    ] No existing commands found in stream
[2026-08-31 18:05:08,134.134 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:05:08,137.137 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-08-31 18:05:12,370.370 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 18:05:12,373.373 INFO    ] Checking for system updates...
[2026-08-31 18:05:12,409.409 INFO    ] 200
[2026-08-31 18:05:12,411.411 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:05:12,469.469 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:05:12,472.472 INFO    ] No update needed
[2026-08-31 18:05:12,474.474 INFO    ] Checking for camera pi updates...
[2026-08-31 18:05:12,509.509 INFO    ] 200
[2026-08-31 18:05:12,511.511 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:05:12,556.556 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:05:12,658.658 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:05:12,661.661 INFO    ] No camera update needed
[2026-08-31 18:05:12,663.663 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:05:12,665.665 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:05:12,671.671 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:05:12,676.676 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:05:14,717.717 INFO    ] ================================================
[2026-08-31 18:05:14,734.734 INFO    ] Launching Daemon at Mon Aug 31 18:05:14 IST 2026
[2026-08-31 18:05:14,745.745 INFO    ] ================================================
[2026-08-31 18:05:15,314.314 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:05:15
[2026-08-31 18:05:15,896.896 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:05:16,145.145 INFO    ] Initializing speech engine...
[2026-08-31 18:05:16,160.160 INFO    ] 2026-08-31 18:05:16
[2026-08-31 18:05:16,425.425 INFO    ] 2026-08-31 18:05:16
[2026-08-31 18:05:16,461.461 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:05:16,719.719 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:05:16,729.729 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:05:16,866.866 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:05:16,906.906 INFO    ] time= 31/08/2026 18:05:16
[2026-08-31 18:05:16,960.960 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:05:17,000.000 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:05:17,132.132 INFO    ] No existing commands found in stream
[2026-08-31 18:05:22,160.160 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:05:22,163.163 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-08-31 18:05:23,884.884 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 18:05:23,887.887 INFO    ] Checking for system updates...
[2026-08-31 18:05:23,926.926 INFO    ] 200
[2026-08-31 18:05:23,929.929 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:05:23,981.981 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:05:23,983.983 INFO    ] No update needed
[2026-08-31 18:05:23,985.985 INFO    ] Checking for camera pi updates...
[2026-08-31 18:05:24,022.022 INFO    ] 200
[2026-08-31 18:05:24,024.024 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:05:24,069.069 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:05:24,199.199 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:05:24,202.202 INFO    ] No camera update needed
[2026-08-31 18:05:24,204.204 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:05:24,206.206 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:05:24,212.212 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:05:24,217.217 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:05:26,259.259 INFO    ] ================================================
[2026-08-31 18:05:26,275.275 INFO    ] Launching Daemon at Mon Aug 31 18:05:26 IST 2026
[2026-08-31 18:05:26,287.287 INFO    ] ================================================
[2026-08-31 18:05:26,867.867 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:05:26
[2026-08-31 18:05:27,463.463 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:05:27,736.736 INFO    ] Initializing speech engine...
[2026-08-31 18:05:27,746.746 INFO    ] 2026-08-31 18:05:27
[2026-08-31 18:05:27,993.993 INFO    ] 2026-08-31 18:05:27
[2026-08-31 18:05:28,029.029 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:05:28,279.279 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:05:28,288.288 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:05:28,427.427 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:05:28,492.492 INFO    ] time= 31/08/2026 18:05:28
[2026-08-31 18:05:28,541.541 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:05:28,555.555 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:05:28,685.685 INFO    ] No existing commands found in stream
[2026-08-31 18:05:33,707.707 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:05:33,710.710 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-08-31 18:05:35,868.868 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 18:05:35,871.871 INFO    ] Checking for system updates...
[2026-08-31 18:05:35,906.906 INFO    ] 200
[2026-08-31 18:05:35,909.909 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:05:35,967.967 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:05:35,970.970 INFO    ] No update needed
[2026-08-31 18:05:35,973.973 INFO    ] Checking for camera pi updates...
[2026-08-31 18:05:36,007.007 INFO    ] 200
[2026-08-31 18:05:36,009.009 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:05:36,050.050 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:05:36,102.102 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:05:36,104.104 INFO    ] No camera update needed
[2026-08-31 18:05:36,107.107 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:05:36,109.109 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:05:36,115.115 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:05:36,120.120 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:05:38,160.160 INFO    ] ================================================
[2026-08-31 18:05:38,175.175 INFO    ] Launching Daemon at Mon Aug 31 18:05:38 IST 2026
[2026-08-31 18:05:38,186.186 INFO    ] ================================================
[2026-08-31 18:05:38,766.766 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:05:38
[2026-08-31 18:05:39,348.348 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:05:39,619.619 INFO    ] Initializing speech engine...
[2026-08-31 18:05:39,627.627 INFO    ] 2026-08-31 18:05:39
[2026-08-31 18:05:39,876.876 INFO    ] 2026-08-31 18:05:39
[2026-08-31 18:05:39,911.911 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:05:40,099.099 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:05:40,117.117 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:05:40,314.314 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:05:40,336.336 INFO    ] time= 31/08/2026 18:05:40
[2026-08-31 18:05:40,400.400 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:05:40,450.450 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:05:40,580.580 INFO    ] No existing commands found in stream
[2026-08-31 18:05:45,608.608 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:05:45,611.611 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-08-31 18:05:50,002.002 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 18:05:50,005.005 INFO    ] Checking for system updates...
[2026-08-31 18:05:50,041.041 INFO    ] 200
[2026-08-31 18:05:50,043.043 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:05:50,095.095 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:05:50,098.098 INFO    ] No update needed
[2026-08-31 18:05:50,100.100 INFO    ] Checking for camera pi updates...
[2026-08-31 18:05:50,134.134 INFO    ] 200
[2026-08-31 18:05:50,136.136 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:05:50,181.181 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:05:50,264.264 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:05:50,266.266 INFO    ] No camera update needed
[2026-08-31 18:05:50,269.269 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:05:50,271.271 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:05:50,277.277 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:05:50,282.282 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:05:52,322.322 INFO    ] ================================================
[2026-08-31 18:05:52,337.337 INFO    ] Launching Daemon at Mon Aug 31 18:05:52 IST 2026
[2026-08-31 18:05:52,348.348 INFO    ] ================================================
[2026-08-31 18:05:52,921.921 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:05:52
[2026-08-31 18:05:53,502.502 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:05:53,761.761 INFO    ] Initializing speech engine...
[2026-08-31 18:05:53,780.780 INFO    ] 2026-08-31 18:05:53
[2026-08-31 18:05:54,031.031 INFO    ] 2026-08-31 18:05:54
[2026-08-31 18:05:54,096.096 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:05:54,323.323 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:05:54,332.332 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:05:54,470.470 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:05:54,504.504 INFO    ] time= 31/08/2026 18:05:54
[2026-08-31 18:05:54,553.553 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:05:54,604.604 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:05:54,757.757 INFO    ] No existing commands found in stream
[2026-08-31 18:05:59,772.772 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:05:59,774.774 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-08-31 18:06:01,763.763 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 18:06:01,767.767 INFO    ] Checking for system updates...
[2026-08-31 18:06:01,818.818 INFO    ] 200
[2026-08-31 18:06:01,823.823 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:06:01,892.892 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:06:01,896.896 INFO    ] No update needed
[2026-08-31 18:06:01,900.900 INFO    ] Checking for camera pi updates...
[2026-08-31 18:06:01,943.943 INFO    ] 200
[2026-08-31 18:06:01,947.947 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:06:02,000.000 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:06:02,111.111 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:06:02,114.114 INFO    ] No camera update needed
[2026-08-31 18:06:02,117.117 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:06:02,120.120 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:06:02,127.127 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:06:02,133.133 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:06:04,175.175 INFO    ] ================================================
[2026-08-31 18:06:04,191.191 INFO    ] Launching Daemon at Mon Aug 31 18:06:04 IST 2026
[2026-08-31 18:06:04,202.202 INFO    ] ================================================
[2026-08-31 18:06:04,770.770 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:06:04
[2026-08-31 18:06:05,368.368 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:06:05,628.628 INFO    ] Initializing speech engine...
[2026-08-31 18:06:05,642.642 INFO    ] 2026-08-31 18:06:05
[2026-08-31 18:06:05,903.903 INFO    ] 2026-08-31 18:06:05
[2026-08-31 18:06:05,936.936 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:06:06,120.120 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:06:06,158.158 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:06:06,316.316 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:06:06,324.324 INFO    ] time= 31/08/2026 18:06:06
[2026-08-31 18:06:06,363.363 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:06:06,389.389 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:06:06,495.495 INFO    ] No existing commands found in stream
[2026-08-31 18:06:11,520.520 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:06:11,523.523 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-08-31 18:06:13,379.379 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 18:06:13,382.382 INFO    ] Checking for system updates...
[2026-08-31 18:06:13,418.418 INFO    ] 200
[2026-08-31 18:06:13,420.420 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:06:13,474.474 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:06:13,477.477 INFO    ] No update needed
[2026-08-31 18:06:13,479.479 INFO    ] Checking for camera pi updates...
[2026-08-31 18:06:13,513.513 INFO    ] 200
[2026-08-31 18:06:13,515.515 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:06:13,555.555 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:06:13,750.750 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:06:13,752.752 INFO    ] No camera update needed
[2026-08-31 18:06:13,754.754 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:06:13,757.757 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:06:13,763.763 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:06:13,768.768 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:06:15,808.808 INFO    ] ================================================
[2026-08-31 18:06:15,824.824 INFO    ] Launching Daemon at Mon Aug 31 18:06:15 IST 2026
[2026-08-31 18:06:15,835.835 INFO    ] ================================================
[2026-08-31 18:06:16,414.414 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:06:16
[2026-08-31 18:06:17,013.013 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:06:17,277.277 INFO    ] Initializing speech engine...
[2026-08-31 18:06:17,301.301 INFO    ] 2026-08-31 18:06:17
[2026-08-31 18:06:17,575.575 INFO    ] 2026-08-31 18:06:17
[2026-08-31 18:06:17,611.611 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:06:17,880.880 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:06:17,901.901 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:06:18,056.056 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:06:18,073.073 INFO    ] time= 31/08/2026 18:06:18
[2026-08-31 18:06:18,128.128 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:06:18,167.167 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:06:18,260.260 INFO    ] No existing commands found in stream
[2026-08-31 18:06:23,272.272 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:06:23,275.275 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-08-31 18:06:25,182.182 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 18:06:25,185.185 INFO    ] Checking for system updates...
[2026-08-31 18:06:25,221.221 INFO    ] 200
[2026-08-31 18:06:25,223.223 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:06:25,282.282 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:06:25,284.284 INFO    ] No update needed
[2026-08-31 18:06:25,287.287 INFO    ] Checking for camera pi updates...
[2026-08-31 18:06:25,323.323 INFO    ] 200
[2026-08-31 18:06:25,325.325 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:06:25,367.367 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:06:25,441.441 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:06:25,444.444 INFO    ] No camera update needed
[2026-08-31 18:06:25,446.446 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:06:25,449.449 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:06:25,455.455 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:06:25,461.461 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:06:27,502.502 INFO    ] ================================================
[2026-08-31 18:06:27,517.517 INFO    ] Launching Daemon at Mon Aug 31 18:06:27 IST 2026
[2026-08-31 18:06:27,528.528 INFO    ] ================================================
[2026-08-31 18:06:28,122.122 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:06:28
[2026-08-31 18:06:28,722.722 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:06:29,003.003 INFO    ] Initializing speech engine...
[2026-08-31 18:06:29,010.010 INFO    ] 2026-08-31 18:06:29
[2026-08-31 18:06:29,271.271 INFO    ] 2026-08-31 18:06:29
[2026-08-31 18:06:29,329.329 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:06:29,554.554 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:06:29,564.564 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:06:29,699.699 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:06:29,742.742 INFO    ] time= 31/08/2026 18:06:29
[2026-08-31 18:06:29,796.796 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:06:29,837.837 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:06:29,959.959 INFO    ] No existing commands found in stream
[2026-08-31 18:06:34,984.984 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:06:34,987.987 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-08-31 18:06:38,922.922 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 18:06:38,925.925 INFO    ] Checking for system updates...
[2026-08-31 18:06:38,964.964 INFO    ] 200
[2026-08-31 18:06:38,967.967 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:06:39,019.019 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:06:39,021.021 INFO    ] No update needed
[2026-08-31 18:06:39,024.024 INFO    ] Checking for camera pi updates...
[2026-08-31 18:06:39,057.057 INFO    ] 200
[2026-08-31 18:06:39,059.059 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:06:39,100.100 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:06:39,202.202 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:06:39,205.205 INFO    ] No camera update needed
[2026-08-31 18:06:39,207.207 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:06:39,210.210 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:06:39,215.215 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:06:39,220.220 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:06:41,259.259 INFO    ] ================================================
[2026-08-31 18:06:41,275.275 INFO    ] Launching Daemon at Mon Aug 31 18:06:41 IST 2026
[2026-08-31 18:06:41,286.286 INFO    ] ================================================
[2026-08-31 18:06:41,848.848 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:06:41
[2026-08-31 18:06:42,429.429 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:06:42,685.685 INFO    ] Initializing speech engine...
[2026-08-31 18:06:42,704.704 INFO    ] 2026-08-31 18:06:42
[2026-08-31 18:06:42,949.949 INFO    ] 2026-08-31 18:06:42
[2026-08-31 18:06:42,983.983 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:06:43,233.233 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:06:43,241.241 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:06:43,374.374 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:06:43,421.421 INFO    ] time= 31/08/2026 18:06:43
[2026-08-31 18:06:43,485.485 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:06:43,508.508 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:06:43,649.649 INFO    ] No existing commands found in stream
[2026-08-31 18:06:48,665.665 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:06:48,668.668 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-08-31 18:06:51,201.201 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 18:06:51,204.204 INFO    ] Checking for system updates...
[2026-08-31 18:06:51,242.242 INFO    ] 200
[2026-08-31 18:06:51,245.245 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:06:51,296.296 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:06:51,299.299 INFO    ] No update needed
[2026-08-31 18:06:51,301.301 INFO    ] Checking for camera pi updates...
[2026-08-31 18:06:51,338.338 INFO    ] 200
[2026-08-31 18:06:51,340.340 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:06:51,385.385 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:06:51,472.472 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:06:51,475.475 INFO    ] No camera update needed
[2026-08-31 18:06:51,477.477 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:06:51,479.479 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:06:51,485.485 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:06:51,490.490 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:06:53,530.530 INFO    ] ================================================
[2026-08-31 18:06:53,545.545 INFO    ] Launching Daemon at Mon Aug 31 18:06:53 IST 2026
[2026-08-31 18:06:53,556.556 INFO    ] ================================================
[2026-08-31 18:06:54,122.122 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:06:54
[2026-08-31 18:06:54,703.703 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:06:54,966.966 INFO    ] Initializing speech engine...
[2026-08-31 18:06:54,979.979 INFO    ] 2026-08-31 18:06:54
[2026-08-31 18:06:55,224.224 INFO    ] 2026-08-31 18:06:55
[2026-08-31 18:06:55,258.258 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:06:55,509.509 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:06:55,519.519 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:06:55,680.680 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:06:55,708.708 INFO    ] time= 31/08/2026 18:06:55
[2026-08-31 18:06:55,763.763 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:06:55,813.813 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:06:55,982.982 INFO    ] No existing commands found in stream
[2026-08-31 18:07:00,998.998 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:07:01,001.001 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-08-31 18:07:03,682.682 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 18:07:03,684.684 INFO    ] Checking for system updates...
[2026-08-31 18:07:03,728.728 INFO    ] 200
[2026-08-31 18:07:03,732.732 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:07:03,796.796 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:07:03,798.798 INFO    ] No update needed
[2026-08-31 18:07:03,801.801 INFO    ] Checking for camera pi updates...
[2026-08-31 18:07:03,838.838 INFO    ] 200
[2026-08-31 18:07:03,840.840 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:07:03,881.881 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:07:03,965.965 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:07:03,967.967 INFO    ] No camera update needed
[2026-08-31 18:07:03,970.970 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:07:03,972.972 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:07:03,977.977 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:07:03,983.983 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:07:06,030.030 INFO    ] ================================================
[2026-08-31 18:07:06,045.045 INFO    ] Launching Daemon at Mon Aug 31 18:07:06 IST 2026
[2026-08-31 18:07:06,056.056 INFO    ] ================================================
[2026-08-31 18:07:06,623.623 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:07:06
[2026-08-31 18:07:07,278.278 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:07:07,575.575 INFO    ] Initializing speech engine...
[2026-08-31 18:07:07,583.583 INFO    ] 2026-08-31 18:07:07
[2026-08-31 18:07:07,865.865 INFO    ] 2026-08-31 18:07:07
[2026-08-31 18:07:07,910.910 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:07:08,135.135 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:07:08,140.140 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:07:08,384.384 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:07:08,400.400 INFO    ] time= 31/08/2026 18:07:08
[2026-08-31 18:07:08,416.416 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:07:08,436.436 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:07:08,560.560 INFO    ] No existing commands found in stream
[2026-08-31 18:07:13,590.590 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:07:13,593.593 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-08-31 18:07:16,690.690 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 18:07:16,693.693 INFO    ] Checking for system updates...
[2026-08-31 18:07:16,729.729 INFO    ] 200
[2026-08-31 18:07:16,732.732 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:07:16,789.789 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:07:16,791.791 INFO    ] No update needed
[2026-08-31 18:07:16,794.794 INFO    ] Checking for camera pi updates...
[2026-08-31 18:07:16,827.827 INFO    ] 200
[2026-08-31 18:07:16,829.829 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:07:16,873.873 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:07:16,969.969 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:07:16,971.971 INFO    ] No camera update needed
[2026-08-31 18:07:16,973.973 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:07:16,976.976 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:07:16,981.981 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:07:16,986.986 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:07:19,026.026 INFO    ] ================================================
[2026-08-31 18:07:19,041.041 INFO    ] Launching Daemon at Mon Aug 31 18:07:19 IST 2026
[2026-08-31 18:07:19,051.051 INFO    ] ================================================
[2026-08-31 18:07:19,617.617 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:07:19
[2026-08-31 18:07:20,201.201 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:07:20,449.449 INFO    ] Initializing speech engine...
[2026-08-31 18:07:20,471.471 INFO    ] 2026-08-31 18:07:20
[2026-08-31 18:07:20,725.725 INFO    ] 2026-08-31 18:07:20
[2026-08-31 18:07:20,759.759 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:07:21,010.010 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:07:21,019.019 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:07:21,196.196 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:07:21,240.240 INFO    ] time= 31/08/2026 18:07:21
[2026-08-31 18:07:21,281.281 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:07:21,287.287 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:07:21,411.411 INFO    ] No existing commands found in stream
[2026-08-31 18:07:26,436.436 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:07:26,439.439 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-08-31 18:07:27,817.817 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 18:07:27,820.820 INFO    ] Checking for system updates...
[2026-08-31 18:07:27,859.859 INFO    ] 200
[2026-08-31 18:07:27,862.862 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:07:27,920.920 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:07:27,922.922 INFO    ] No update needed
[2026-08-31 18:07:27,924.924 INFO    ] Checking for camera pi updates...
[2026-08-31 18:07:27,958.958 INFO    ] 200
[2026-08-31 18:07:27,961.961 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:07:28,000.000 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:07:28,080.080 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:07:28,083.083 INFO    ] No camera update needed
[2026-08-31 18:07:28,085.085 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:07:28,087.087 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:07:28,093.093 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:07:28,098.098 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:07:30,137.137 INFO    ] ================================================
[2026-08-31 18:07:30,152.152 INFO    ] Launching Daemon at Mon Aug 31 18:07:30 IST 2026
[2026-08-31 18:07:30,162.162 INFO    ] ================================================
[2026-08-31 18:07:30,789.789 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:07:30
[2026-08-31 18:07:31,441.441 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:07:31,739.739 INFO    ] Initializing speech engine...
[2026-08-31 18:07:31,753.753 INFO    ] 2026-08-31 18:07:31
[2026-08-31 18:07:32,061.061 INFO    ] 2026-08-31 18:07:32
[2026-08-31 18:07:32,150.150 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:07:32,377.377 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:07:32,386.386 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:07:32,562.562 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:07:32,590.590 INFO    ] time= 31/08/2026 18:07:32
[2026-08-31 18:07:32,608.608 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:07:32,633.633 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:07:32,758.758 INFO    ] No existing commands found in stream
[2026-08-31 18:07:37,794.794 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:07:37,797.797 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-08-31 18:07:38,807.807 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 18:07:38,810.810 INFO    ] Checking for system updates...
[2026-08-31 18:07:38,853.853 INFO    ] 200
[2026-08-31 18:07:38,856.856 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:07:38,919.919 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:07:38,922.922 INFO    ] No update needed
[2026-08-31 18:07:38,925.925 INFO    ] Checking for camera pi updates...
[2026-08-31 18:07:38,961.961 INFO    ] 200
[2026-08-31 18:07:38,964.964 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:07:39,011.011 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:07:39,101.101 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:07:39,103.103 INFO    ] No camera update needed
[2026-08-31 18:07:39,106.106 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:07:39,109.109 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:07:39,115.115 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:07:39,121.121 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:07:41,164.164 INFO    ] ================================================
[2026-08-31 18:07:41,180.180 INFO    ] Launching Daemon at Mon Aug 31 18:07:41 IST 2026
[2026-08-31 18:07:41,191.191 INFO    ] ================================================
[2026-08-31 18:07:41,862.862 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:07:41
[2026-08-31 18:07:42,541.541 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:07:42,864.864 INFO    ] Initializing speech engine...
[2026-08-31 18:07:42,873.873 INFO    ] 2026-08-31 18:07:42
[2026-08-31 18:07:43,154.154 INFO    ] 2026-08-31 18:07:43
[2026-08-31 18:07:43,218.218 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:07:43,461.461 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:07:43,466.466 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:07:43,616.616 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:07:43,677.677 INFO    ] time= 31/08/2026 18:07:43
[2026-08-31 18:07:43,748.748 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:07:43,759.759 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:07:43,897.897 INFO    ] No existing commands found in stream
[2026-08-31 18:07:48,924.924 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:07:48,927.927 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-08-31 18:07:53,245.245 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 18:07:53,249.249 INFO    ] Checking for system updates...
[2026-08-31 18:07:53,289.289 INFO    ] 200
[2026-08-31 18:07:53,292.292 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:07:53,351.351 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:07:53,354.354 INFO    ] No update needed
[2026-08-31 18:07:53,357.357 INFO    ] Checking for camera pi updates...
[2026-08-31 18:07:53,395.395 INFO    ] 200
[2026-08-31 18:07:53,398.398 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:07:53,445.445 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:07:53,523.523 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:07:53,525.525 INFO    ] No camera update needed
[2026-08-31 18:07:53,528.528 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:07:53,531.531 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:07:53,537.537 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:07:53,543.543 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:07:55,584.584 INFO    ] ================================================
[2026-08-31 18:07:55,599.599 INFO    ] Launching Daemon at Mon Aug 31 18:07:55 IST 2026
[2026-08-31 18:07:55,610.610 INFO    ] ================================================
[2026-08-31 18:07:56,219.219 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:07:56
[2026-08-31 18:07:56,801.801 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:07:57,071.071 INFO    ] Initializing speech engine...
[2026-08-31 18:07:57,080.080 INFO    ] 2026-08-31 18:07:57
[2026-08-31 18:07:57,331.331 INFO    ] 2026-08-31 18:07:57
[2026-08-31 18:07:57,365.365 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:07:57,628.628 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:07:57,632.632 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:07:57,863.863 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:07:57,896.896 INFO    ] time= 31/08/2026 18:07:57
[2026-08-31 18:07:57,902.902 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:07:57,920.920 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:07:58,055.055 INFO    ] No existing commands found in stream
[2026-08-31 18:08:03,070.070 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:08:03,073.073 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-08-31 18:08:06,160.160 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 18:08:06,162.162 INFO    ] Checking for system updates...
[2026-08-31 18:08:06,202.202 INFO    ] 200
[2026-08-31 18:08:06,204.204 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:08:06,257.257 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:08:06,260.260 INFO    ] No update needed
[2026-08-31 18:08:06,262.262 INFO    ] Checking for camera pi updates...
[2026-08-31 18:08:06,295.295 INFO    ] 200
[2026-08-31 18:08:06,298.298 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:08:06,343.343 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:08:06,425.425 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:08:06,428.428 INFO    ] No camera update needed
[2026-08-31 18:08:06,430.430 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:08:06,432.432 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:08:06,438.438 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:08:06,443.443 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:08:08,483.483 INFO    ] ================================================
[2026-08-31 18:08:08,498.498 INFO    ] Launching Daemon at Mon Aug 31 18:08:08 IST 2026
[2026-08-31 18:08:08,508.508 INFO    ] ================================================
[2026-08-31 18:08:09,072.072 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:08:09
[2026-08-31 18:08:09,654.654 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:08:09,923.923 INFO    ] Initializing speech engine...
[2026-08-31 18:08:09,938.938 INFO    ] 2026-08-31 18:08:09
[2026-08-31 18:08:10,207.207 INFO    ] 2026-08-31 18:08:10
[2026-08-31 18:08:10,242.242 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:08:10,444.444 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:08:10,502.502 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:08:10,644.644 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:08:10,666.666 INFO    ] time= 31/08/2026 18:08:10
[2026-08-31 18:08:10,726.726 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:08:10,780.780 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:08:10,852.852 INFO    ] No existing commands found in stream
[2026-08-31 18:08:15,889.889 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:08:15,892.892 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-08-31 18:08:19,339.339 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 18:08:19,342.342 INFO    ] Checking for system updates...
[2026-08-31 18:08:19,382.382 INFO    ] 200
[2026-08-31 18:08:19,384.384 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:08:19,436.436 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:08:19,438.438 INFO    ] No update needed
[2026-08-31 18:08:19,441.441 INFO    ] Checking for camera pi updates...
[2026-08-31 18:08:19,474.474 INFO    ] 200
[2026-08-31 18:08:19,477.477 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:08:19,518.518 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:08:19,705.705 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:08:19,707.707 INFO    ] No camera update needed
[2026-08-31 18:08:19,710.710 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:08:19,712.712 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:08:19,717.717 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:08:19,722.722 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:08:21,762.762 INFO    ] ================================================
[2026-08-31 18:08:21,777.777 INFO    ] Launching Daemon at Mon Aug 31 18:08:21 IST 2026
[2026-08-31 18:08:21,789.789 INFO    ] ================================================
[2026-08-31 18:08:22,441.441 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:08:22
[2026-08-31 18:08:23,111.111 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:08:23,415.415 INFO    ] Initializing speech engine...
[2026-08-31 18:08:23,424.424 INFO    ] 2026-08-31 18:08:23
[2026-08-31 18:08:23,721.721 INFO    ] 2026-08-31 18:08:23
[2026-08-31 18:08:23,828.828 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:08:24,052.052 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:08:24,061.061 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:08:24,259.259 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:08:24,279.279 INFO    ] time= 31/08/2026 18:08:24
[2026-08-31 18:08:24,308.308 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:08:24,318.318 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:08:24,421.421 INFO    ] No existing commands found in stream
[2026-08-31 18:08:29,446.446 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:08:29,450.450 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-08-31 18:08:32,045.045 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 18:08:32,049.049 INFO    ] Checking for system updates...
[2026-08-31 18:08:32,089.089 INFO    ] 200
[2026-08-31 18:08:32,092.092 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:08:32,157.157 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:08:32,160.160 INFO    ] No update needed
[2026-08-31 18:08:32,163.163 INFO    ] Checking for camera pi updates...
[2026-08-31 18:08:32,199.199 INFO    ] 200
[2026-08-31 18:08:32,202.202 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:08:32,258.258 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:08:32,326.326 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:08:32,329.329 INFO    ] No camera update needed
[2026-08-31 18:08:32,332.332 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:08:32,335.335 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:08:32,341.341 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:08:32,347.347 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:08:34,387.387 INFO    ] ================================================
[2026-08-31 18:08:34,402.402 INFO    ] Launching Daemon at Mon Aug 31 18:08:34 IST 2026
[2026-08-31 18:08:34,415.415 INFO    ] ================================================
[2026-08-31 18:08:34,985.985 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:08:34
[2026-08-31 18:08:35,580.580 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:08:35,833.833 INFO    ] Initializing speech engine...
[2026-08-31 18:08:35,839.839 INFO    ] 2026-08-31 18:08:35
[2026-08-31 18:08:36,112.112 INFO    ] 2026-08-31 18:08:36
[2026-08-31 18:08:36,150.150 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:08:36,323.323 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:08:36,336.336 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:08:36,485.485 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:08:36,490.490 INFO    ] time= 31/08/2026 18:08:36
[2026-08-31 18:08:36,495.495 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:08:36,521.521 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:08:36,647.647 INFO    ] No existing commands found in stream
[2026-08-31 18:08:41,672.672 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:08:41,675.675 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-08-31 18:08:42,651.651 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 18:08:42,654.654 INFO    ] Checking for system updates...
[2026-08-31 18:08:42,693.693 INFO    ] 200
[2026-08-31 18:08:42,696.696 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:08:42,755.755 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:08:42,757.757 INFO    ] No update needed
[2026-08-31 18:08:42,760.760 INFO    ] Checking for camera pi updates...
[2026-08-31 18:08:42,793.793 INFO    ] 200
[2026-08-31 18:08:42,796.796 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:08:42,842.842 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:08:42,947.947 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:08:42,950.950 INFO    ] No camera update needed
[2026-08-31 18:08:42,952.952 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:08:42,954.954 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:08:42,960.960 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:08:42,965.965 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:08:45,007.007 INFO    ] ================================================
[2026-08-31 18:08:45,022.022 INFO    ] Launching Daemon at Mon Aug 31 18:08:45 IST 2026
[2026-08-31 18:08:45,033.033 INFO    ] ================================================
[2026-08-31 18:08:45,604.604 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:08:45
[2026-08-31 18:08:46,189.189 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:08:46,441.441 INFO    ] Initializing speech engine...
[2026-08-31 18:08:46,464.464 INFO    ] 2026-08-31 18:08:46
[2026-08-31 18:08:46,718.718 INFO    ] 2026-08-31 18:08:46
[2026-08-31 18:08:46,754.754 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:08:46,930.930 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:08:46,942.942 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:08:47,154.154 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:08:47,196.196 INFO    ] time= 31/08/2026 18:08:47
[2026-08-31 18:08:47,251.251 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:08:47,291.291 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:08:47,422.422 INFO    ] No existing commands found in stream
[2026-08-31 18:08:52,450.450 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:08:52,454.454 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-08-31 18:08:54,103.103 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 18:08:54,106.106 INFO    ] Checking for system updates...
[2026-08-31 18:08:54,148.148 INFO    ] 200
[2026-08-31 18:08:54,151.151 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:08:54,214.214 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:08:54,217.217 INFO    ] No update needed
[2026-08-31 18:08:54,220.220 INFO    ] Checking for camera pi updates...
[2026-08-31 18:08:54,260.260 INFO    ] 200
[2026-08-31 18:08:54,263.263 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:08:54,309.309 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:08:54,389.389 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:08:54,392.392 INFO    ] No camera update needed
[2026-08-31 18:08:54,395.395 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:08:54,398.398 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:08:54,404.404 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:08:54,410.410 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:08:56,453.453 INFO    ] ================================================
[2026-08-31 18:08:56,468.468 INFO    ] Launching Daemon at Mon Aug 31 18:08:56 IST 2026
[2026-08-31 18:08:56,478.478 INFO    ] ================================================
[2026-08-31 18:08:57,057.057 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:08:57
[2026-08-31 18:08:57,654.654 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:08:57,929.929 INFO    ] Initializing speech engine...
[2026-08-31 18:08:57,938.938 INFO    ] 2026-08-31 18:08:57
[2026-08-31 18:08:58,196.196 INFO    ] 2026-08-31 18:08:58
[2026-08-31 18:08:58,250.250 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:08:58,476.476 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:08:58,482.482 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:08:58,695.695 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:08:58,737.737 INFO    ] time= 31/08/2026 18:08:58
[2026-08-31 18:08:58,743.743 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:08:58,764.764 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:08:58,893.893 INFO    ] No existing commands found in stream
[2026-08-31 18:09:03,915.915 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:09:03,918.918 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-08-31 18:09:05,364.364 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 18:09:05,367.367 INFO    ] Checking for system updates...
[2026-08-31 18:09:05,415.415 INFO    ] 200
[2026-08-31 18:09:05,417.417 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:09:05,470.470 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:09:05,473.473 INFO    ] No update needed
[2026-08-31 18:09:05,475.475 INFO    ] Checking for camera pi updates...
[2026-08-31 18:09:05,514.514 INFO    ] 200
[2026-08-31 18:09:05,517.517 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:09:05,557.557 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:09:05,666.666 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:09:05,669.669 INFO    ] No camera update needed
[2026-08-31 18:09:05,671.671 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:09:05,673.673 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:09:05,679.679 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:09:05,685.685 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:09:07,727.727 INFO    ] ================================================
[2026-08-31 18:09:07,743.743 INFO    ] Launching Daemon at Mon Aug 31 18:09:07 IST 2026
[2026-08-31 18:09:07,754.754 INFO    ] ================================================
[2026-08-31 18:09:08,316.316 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:09:08
[2026-08-31 18:09:08,897.897 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:09:09,166.166 INFO    ] Initializing speech engine...
[2026-08-31 18:09:09,174.174 INFO    ] 2026-08-31 18:09:09
[2026-08-31 18:09:09,424.424 INFO    ] 2026-08-31 18:09:09
[2026-08-31 18:09:09,460.460 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:09:09,717.717 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:09:09,726.726 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:09:09,861.861 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:09:09,908.908 INFO    ] time= 31/08/2026 18:09:09
[2026-08-31 18:09:09,972.972 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:09:09,997.997 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:09:10,117.117 INFO    ] No existing commands found in stream
[2026-08-31 18:09:15,149.149 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:09:15,152.152 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-08-31 18:09:18,949.949 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 18:09:18,951.951 INFO    ] Checking for system updates...
[2026-08-31 18:09:18,987.987 INFO    ] 200
[2026-08-31 18:09:18,989.989 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:09:19,042.042 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:09:19,045.045 INFO    ] No update needed
[2026-08-31 18:09:19,047.047 INFO    ] Checking for camera pi updates...
[2026-08-31 18:09:19,080.080 INFO    ] 200
[2026-08-31 18:09:19,083.083 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:09:19,123.123 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:09:19,185.185 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:09:19,187.187 INFO    ] No camera update needed
[2026-08-31 18:09:19,190.190 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:09:19,192.192 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:09:19,197.197 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:09:19,202.202 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:09:21,243.243 INFO    ] ================================================
[2026-08-31 18:09:21,258.258 INFO    ] Launching Daemon at Mon Aug 31 18:09:21 IST 2026
[2026-08-31 18:09:21,269.269 INFO    ] ================================================
[2026-08-31 18:09:21,854.854 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:09:21
[2026-08-31 18:09:22,459.459 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:09:22,721.721 INFO    ] Initializing speech engine...
[2026-08-31 18:09:22,730.730 INFO    ] 2026-08-31 18:09:22
[2026-08-31 18:09:23,028.028 INFO    ] 2026-08-31 18:09:22
[2026-08-31 18:09:23,054.054 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:09:23,265.265 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:09:23,283.283 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:09:23,450.450 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:09:23,456.456 INFO    ] time= 31/08/2026 18:09:23
[2026-08-31 18:09:23,463.463 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:09:23,490.490 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:09:23,632.632 INFO    ] No existing commands found in stream
[2026-08-31 18:09:28,658.658 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:09:28,660.660 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-08-31 18:09:29,842.842 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 18:09:29,845.845 INFO    ] Checking for system updates...
[2026-08-31 18:09:29,881.881 INFO    ] 200
[2026-08-31 18:09:29,883.883 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:09:29,936.936 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:09:29,939.939 INFO    ] No update needed
[2026-08-31 18:09:29,941.941 INFO    ] Checking for camera pi updates...
[2026-08-31 18:09:29,975.975 INFO    ] 200
[2026-08-31 18:09:29,978.978 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:09:30,019.019 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:09:30,116.116 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:09:30,118.118 INFO    ] No camera update needed
[2026-08-31 18:09:30,121.121 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:09:30,123.123 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:09:30,128.128 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:09:30,134.134 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:09:32,176.176 INFO    ] ================================================
[2026-08-31 18:09:32,192.192 INFO    ] Launching Daemon at Mon Aug 31 18:09:32 IST 2026
[2026-08-31 18:09:32,203.203 INFO    ] ================================================
[2026-08-31 18:09:32,905.905 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:09:32
[2026-08-31 18:09:33,539.539 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:09:33,798.798 INFO    ] Initializing speech engine...
[2026-08-31 18:09:33,807.807 INFO    ] 2026-08-31 18:09:33
[2026-08-31 18:09:34,104.104 INFO    ] 2026-08-31 18:09:34
[2026-08-31 18:09:34,142.142 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:09:34,368.368 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:09:34,376.376 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:09:34,525.525 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:09:34,530.530 INFO    ] time= 31/08/2026 18:09:34
[2026-08-31 18:09:34,536.536 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:09:34,565.565 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:09:34,688.688 INFO    ] No existing commands found in stream
[2026-08-31 18:09:39,713.713 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:09:39,715.715 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-08-31 18:09:44,065.065 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 18:09:44,068.068 INFO    ] Checking for system updates...
[2026-08-31 18:09:44,105.105 INFO    ] 200
[2026-08-31 18:09:44,108.108 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:09:44,170.170 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:09:44,173.173 INFO    ] No update needed
[2026-08-31 18:09:44,177.177 INFO    ] Checking for camera pi updates...
[2026-08-31 18:09:44,213.213 INFO    ] 200
[2026-08-31 18:09:44,216.216 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:09:44,264.264 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:09:44,346.346 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:09:44,349.349 INFO    ] No camera update needed
[2026-08-31 18:09:44,352.352 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:09:44,355.355 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:09:44,362.362 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:09:44,368.368 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:09:46,414.414 INFO    ] ================================================
[2026-08-31 18:09:46,429.429 INFO    ] Launching Daemon at Mon Aug 31 18:09:46 IST 2026
[2026-08-31 18:09:46,440.440 INFO    ] ================================================
[2026-08-31 18:09:47,091.091 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:09:47
[2026-08-31 18:09:47,787.787 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:09:48,099.099 INFO    ] Initializing speech engine...
[2026-08-31 18:09:48,108.108 INFO    ] 2026-08-31 18:09:48
[2026-08-31 18:09:48,401.401 INFO    ] 2026-08-31 18:09:48
[2026-08-31 18:09:48,445.445 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:09:48,678.678 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:09:48,684.684 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:09:48,820.820 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:09:48,886.886 INFO    ] time= 31/08/2026 18:09:48
[2026-08-31 18:09:48,950.950 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:09:48,958.958 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:09:49,092.092 INFO    ] No existing commands found in stream
[2026-08-31 18:09:54,118.118 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:09:54,121.121 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-08-31 18:09:54,857.857 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 18:09:54,860.860 INFO    ] Checking for system updates...
[2026-08-31 18:09:54,897.897 INFO    ] 200
[2026-08-31 18:09:54,900.900 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:09:54,954.954 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:09:54,956.956 INFO    ] No update needed
[2026-08-31 18:09:54,959.959 INFO    ] Checking for camera pi updates...
[2026-08-31 18:09:54,995.995 INFO    ] 200
[2026-08-31 18:09:54,998.998 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:09:55,046.046 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:09:55,144.144 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:09:55,147.147 INFO    ] No camera update needed
[2026-08-31 18:09:55,150.150 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:09:55,153.153 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:09:55,159.159 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:09:55,165.165 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:09:57,207.207 INFO    ] ================================================
[2026-08-31 18:09:57,222.222 INFO    ] Launching Daemon at Mon Aug 31 18:09:57 IST 2026
[2026-08-31 18:09:57,232.232 INFO    ] ================================================
[2026-08-31 18:09:57,845.845 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:09:57
[2026-08-31 18:09:58,438.438 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:09:58,718.718 INFO    ] Initializing speech engine...
[2026-08-31 18:09:58,725.725 INFO    ] 2026-08-31 18:09:58
[2026-08-31 18:09:58,996.996 INFO    ] 2026-08-31 18:09:58
[2026-08-31 18:09:59,039.039 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:09:59,290.290 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:09:59,297.297 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:09:59,498.498 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:09:59,537.537 INFO    ] time= 31/08/2026 18:09:59
[2026-08-31 18:09:59,543.543 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:09:59,561.561 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:09:59,696.696 INFO    ] No existing commands found in stream
[2026-08-31 18:10:04,718.718 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:10:04,721.721 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-08-31 18:10:08,864.864 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 18:10:08,866.866 INFO    ] Checking for system updates...
[2026-08-31 18:10:08,909.909 INFO    ] 200
[2026-08-31 18:10:08,926.926 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:10:08,985.985 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:10:08,995.995 INFO    ] No update needed
[2026-08-31 18:10:08,999.999 INFO    ] Checking for camera pi updates...
[2026-08-31 18:10:09,056.056 INFO    ] 200
[2026-08-31 18:10:09,059.059 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:10:09,101.101 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:10:09,184.184 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:10:09,187.187 INFO    ] No camera update needed
[2026-08-31 18:10:09,190.190 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:10:09,193.193 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:10:09,199.199 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:10:09,205.205 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:10:11,248.248 INFO    ] ================================================
[2026-08-31 18:10:11,264.264 INFO    ] Launching Daemon at Mon Aug 31 18:10:11 IST 2026
[2026-08-31 18:10:11,275.275 INFO    ] ================================================
[2026-08-31 18:10:11,885.885 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:10:11
[2026-08-31 18:10:12,489.489 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:10:12,763.763 INFO    ] Initializing speech engine...
[2026-08-31 18:10:12,772.772 INFO    ] 2026-08-31 18:10:12
[2026-08-31 18:10:13,035.035 INFO    ] 2026-08-31 18:10:13
[2026-08-31 18:10:13,089.089 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:10:13,315.315 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:10:13,321.321 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:10:13,540.540 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:10:13,576.576 INFO    ] time= 31/08/2026 18:10:13
[2026-08-31 18:10:13,592.592 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:10:13,603.603 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:10:13,709.709 INFO    ] No existing commands found in stream
[2026-08-31 18:10:18,737.737 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:10:18,740.740 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-08-31 18:10:22,214.214 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 18:10:22,217.217 INFO    ] Checking for system updates...
[2026-08-31 18:10:22,253.253 INFO    ] 200
[2026-08-31 18:10:22,255.255 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:10:22,320.320 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:10:22,323.323 INFO    ] No update needed
[2026-08-31 18:10:22,325.325 INFO    ] Checking for camera pi updates...
[2026-08-31 18:10:22,360.360 INFO    ] 200
[2026-08-31 18:10:22,362.362 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:10:22,406.406 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:10:22,613.613 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:10:22,615.615 INFO    ] No camera update needed
[2026-08-31 18:10:22,618.618 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:10:22,620.620 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:10:22,625.625 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:10:22,630.630 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:10:24,672.672 INFO    ] ================================================
[2026-08-31 18:10:24,692.692 INFO    ] Launching Daemon at Mon Aug 31 18:10:24 IST 2026
[2026-08-31 18:10:24,703.703 INFO    ] ================================================
[2026-08-31 18:10:25,267.267 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:10:25
[2026-08-31 18:10:25,858.858 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:10:26,121.121 INFO    ] Initializing speech engine...
[2026-08-31 18:10:26,127.127 INFO    ] 2026-08-31 18:10:26
[2026-08-31 18:10:26,430.430 INFO    ] 2026-08-31 18:10:26
[2026-08-31 18:10:26,469.469 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:10:26,673.673 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:10:26,687.687 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:10:26,856.856 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:10:26,863.863 INFO    ] time= 31/08/2026 18:10:26
[2026-08-31 18:10:26,869.869 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:10:26,875.875 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:10:27,016.016 INFO    ] No existing commands found in stream
[2026-08-31 18:10:32,046.046 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:10:32,050.050 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-08-31 18:10:33,872.872 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 18:10:33,875.875 INFO    ] Checking for system updates...
[2026-08-31 18:10:33,917.917 INFO    ] 200
[2026-08-31 18:10:33,920.920 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:10:33,974.974 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:10:33,977.977 INFO    ] No update needed
[2026-08-31 18:10:33,980.980 INFO    ] Checking for camera pi updates...
[2026-08-31 18:10:34,015.015 INFO    ] 200
[2026-08-31 18:10:34,018.018 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:10:34,060.060 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:10:34,148.148 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:10:34,151.151 INFO    ] No camera update needed
[2026-08-31 18:10:34,154.154 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:10:34,157.157 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:10:34,163.163 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:10:34,169.169 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:10:36,211.211 INFO    ] ================================================
[2026-08-31 18:10:36,227.227 INFO    ] Launching Daemon at Mon Aug 31 18:10:36 IST 2026
[2026-08-31 18:10:36,238.238 INFO    ] ================================================
[2026-08-31 18:10:36,818.818 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:10:36
[2026-08-31 18:10:37,427.427 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:10:37,692.692 INFO    ] Initializing speech engine...
[2026-08-31 18:10:37,701.701 INFO    ] 2026-08-31 18:10:37
[2026-08-31 18:10:38,007.007 INFO    ] 2026-08-31 18:10:37
[2026-08-31 18:10:38,033.033 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:10:38,250.250 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:10:38,264.264 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:10:38,431.431 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:10:38,440.440 INFO    ] time= 31/08/2026 18:10:38
[2026-08-31 18:10:38,446.446 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:10:38,452.452 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:10:38,531.531 INFO    ] No existing commands found in stream
[2026-08-31 18:10:43,546.546 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:10:43,549.549 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-08-31 18:10:44,682.682 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 18:10:44,685.685 INFO    ] Checking for system updates...
[2026-08-31 18:10:44,721.721 INFO    ] 200
[2026-08-31 18:10:44,723.723 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:10:44,775.775 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:10:44,778.778 INFO    ] No update needed
[2026-08-31 18:10:44,780.780 INFO    ] Checking for camera pi updates...
[2026-08-31 18:10:44,814.814 INFO    ] 200
[2026-08-31 18:10:44,816.816 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:10:44,863.863 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:10:44,963.963 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:10:44,965.965 INFO    ] No camera update needed
[2026-08-31 18:10:44,968.968 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:10:44,970.970 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:10:44,975.975 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:10:44,981.981 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:10:47,021.021 INFO    ] ================================================
[2026-08-31 18:10:47,036.036 INFO    ] Launching Daemon at Mon Aug 31 18:10:47 IST 2026
[2026-08-31 18:10:47,046.046 INFO    ] ================================================
[2026-08-31 18:10:47,723.723 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:10:47
[2026-08-31 18:10:48,418.418 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:10:48,732.732 INFO    ] Initializing speech engine...
[2026-08-31 18:10:48,746.746 INFO    ] 2026-08-31 18:10:48
[2026-08-31 18:10:49,059.059 INFO    ] 2026-08-31 18:10:49
[2026-08-31 18:10:49,128.128 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:10:49,332.332 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:10:49,337.337 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:10:49,491.491 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:10:49,514.514 INFO    ] time= 31/08/2026 18:10:49
[2026-08-31 18:10:49,573.573 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:10:49,628.628 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:10:49,728.728 INFO    ] No existing commands found in stream
[2026-08-31 18:10:54,764.764 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:10:54,767.767 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-08-31 18:10:58,829.829 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 18:10:58,832.832 INFO    ] Checking for system updates...
[2026-08-31 18:10:58,872.872 INFO    ] 200
[2026-08-31 18:10:58,874.874 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:10:58,928.928 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:10:58,930.930 INFO    ] No update needed
[2026-08-31 18:10:58,932.932 INFO    ] Checking for camera pi updates...
[2026-08-31 18:10:58,966.966 INFO    ] 200
[2026-08-31 18:10:58,968.968 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:10:59,012.012 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:10:59,112.112 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:10:59,115.115 INFO    ] No camera update needed
[2026-08-31 18:10:59,117.117 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:10:59,119.119 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:10:59,125.125 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:10:59,130.130 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:11:01,172.172 INFO    ] ================================================
[2026-08-31 18:11:01,188.188 INFO    ] Launching Daemon at Mon Aug 31 18:11:01 IST 2026
[2026-08-31 18:11:01,199.199 INFO    ] ================================================
[2026-08-31 18:11:01,874.874 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:11:01
[2026-08-31 18:11:02,753.753 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:11:03,109.109 INFO    ] Initializing speech engine...
[2026-08-31 18:11:03,124.124 INFO    ] 2026-08-31 18:11:03
[2026-08-31 18:11:03,422.422 INFO    ] 2026-08-31 18:11:03
[2026-08-31 18:11:03,494.494 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:11:03,733.733 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:11:03,742.742 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:11:03,887.887 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:11:03,922.922 INFO    ] time= 31/08/2026 18:11:03
[2026-08-31 18:11:03,968.968 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:11:04,026.026 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:11:04,163.163 INFO    ] No existing commands found in stream
[2026-08-31 18:11:09,188.188 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:11:09,191.191 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-08-31 18:11:11,307.307 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 18:11:11,310.310 INFO    ] Checking for system updates...
[2026-08-31 18:11:11,346.346 INFO    ] 200
[2026-08-31 18:11:11,349.349 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:11:11,403.403 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:11:11,406.406 INFO    ] No update needed
[2026-08-31 18:11:11,409.409 INFO    ] Checking for camera pi updates...
[2026-08-31 18:11:11,443.443 INFO    ] 200
[2026-08-31 18:11:11,446.446 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:11:11,493.493 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:11:11,577.577 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:11:11,580.580 INFO    ] No camera update needed
[2026-08-31 18:11:11,583.583 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:11:11,586.586 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:11:11,592.592 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:11:11,598.598 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:11:13,641.641 INFO    ] ================================================
[2026-08-31 18:11:13,657.657 INFO    ] Launching Daemon at Mon Aug 31 18:11:13 IST 2026
[2026-08-31 18:11:13,668.668 INFO    ] ================================================
[2026-08-31 18:11:14,244.244 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:11:14
[2026-08-31 18:11:14,838.838 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:11:15,087.087 INFO    ] Initializing speech engine...
[2026-08-31 18:11:15,101.101 INFO    ] 2026-08-31 18:11:15
[2026-08-31 18:11:15,368.368 INFO    ] 2026-08-31 18:11:15
[2026-08-31 18:11:15,403.403 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:11:15,607.607 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:11:15,666.666 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:11:15,806.806 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:11:15,854.854 INFO    ] time= 31/08/2026 18:11:15
[2026-08-31 18:11:15,922.922 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:11:15,943.943 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:11:16,003.003 INFO    ] No existing commands found in stream
[2026-08-31 18:11:21,017.017 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:11:21,021.021 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-08-31 18:11:22,852.852 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 18:11:22,855.855 INFO    ] Checking for system updates...
[2026-08-31 18:11:22,891.891 INFO    ] 200
[2026-08-31 18:11:22,894.894 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:11:22,947.947 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:11:22,950.950 INFO    ] No update needed
[2026-08-31 18:11:22,953.953 INFO    ] Checking for camera pi updates...
[2026-08-31 18:11:22,991.991 INFO    ] 200
[2026-08-31 18:11:22,994.994 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:11:23,036.036 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:11:23,140.140 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:11:23,143.143 INFO    ] No camera update needed
[2026-08-31 18:11:23,146.146 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:11:23,149.149 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:11:23,155.155 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:11:23,161.161 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:11:25,203.203 INFO    ] ================================================
[2026-08-31 18:11:25,219.219 INFO    ] Launching Daemon at Mon Aug 31 18:11:25 IST 2026
[2026-08-31 18:11:25,230.230 INFO    ] ================================================
[2026-08-31 18:11:25,803.803 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:11:25
[2026-08-31 18:11:26,391.391 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:11:26,709.709 INFO    ] Initializing speech engine...
[2026-08-31 18:11:26,721.721 INFO    ] 2026-08-31 18:11:26
[2026-08-31 18:11:27,037.037 INFO    ] 2026-08-31 18:11:27
[2026-08-31 18:11:27,127.127 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:11:27,342.342 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:11:27,352.352 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:11:27,553.553 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:11:27,573.573 INFO    ] time= 31/08/2026 18:11:27
[2026-08-31 18:11:27,582.582 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:11:27,611.611 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:11:27,734.734 INFO    ] No existing commands found in stream
[2026-08-31 18:11:32,759.759 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:11:32,763.763 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-08-31 18:11:33,574.574 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 18:11:33,577.577 INFO    ] Checking for system updates...
[2026-08-31 18:11:33,615.615 INFO    ] 200
[2026-08-31 18:11:33,618.618 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:11:33,683.683 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:11:33,686.686 INFO    ] No update needed
[2026-08-31 18:11:33,689.689 INFO    ] Checking for camera pi updates...
[2026-08-31 18:11:33,724.724 INFO    ] 200
[2026-08-31 18:11:33,727.727 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:11:33,769.769 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:11:33,857.857 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:11:33,860.860 INFO    ] No camera update needed
[2026-08-31 18:11:33,863.863 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:11:33,866.866 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:11:33,872.872 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:11:33,878.878 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:11:35,919.919 INFO    ] ================================================
[2026-08-31 18:11:35,934.934 INFO    ] Launching Daemon at Mon Aug 31 18:11:35 IST 2026
[2026-08-31 18:11:35,945.945 INFO    ] ================================================
[2026-08-31 18:11:36,527.527 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:11:36
[2026-08-31 18:11:37,125.125 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:11:37,398.398 INFO    ] Initializing speech engine...
[2026-08-31 18:11:37,409.409 INFO    ] 2026-08-31 18:11:37
[2026-08-31 18:11:37,670.670 INFO    ] 2026-08-31 18:11:37
[2026-08-31 18:11:37,723.723 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:11:37,970.970 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:11:37,976.976 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:11:38,179.179 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:11:38,212.212 INFO    ] time= 31/08/2026 18:11:38
[2026-08-31 18:11:38,218.218 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:11:38,235.235 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:11:38,368.368 INFO    ] No existing commands found in stream
[2026-08-31 18:11:43,382.382 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:11:43,385.385 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-08-31 18:11:47,342.342 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 18:11:47,345.345 INFO    ] Checking for system updates...
[2026-08-31 18:11:47,380.380 INFO    ] 200
[2026-08-31 18:11:47,382.382 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:11:47,435.435 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:11:47,437.437 INFO    ] No update needed
[2026-08-31 18:11:47,440.440 INFO    ] Checking for camera pi updates...
[2026-08-31 18:11:47,473.473 INFO    ] 200
[2026-08-31 18:11:47,476.476 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:11:47,515.515 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:11:47,595.595 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:11:47,598.598 INFO    ] No camera update needed
[2026-08-31 18:11:47,600.600 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:11:47,603.603 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:11:47,608.608 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:11:47,613.613 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:11:49,655.655 INFO    ] ================================================
[2026-08-31 18:11:49,671.671 INFO    ] Launching Daemon at Mon Aug 31 18:11:49 IST 2026
[2026-08-31 18:11:49,682.682 INFO    ] ================================================
[2026-08-31 18:11:50,344.344 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:11:50
[2026-08-31 18:11:50,939.939 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:11:51,213.213 INFO    ] Initializing speech engine...
[2026-08-31 18:11:51,222.222 INFO    ] 2026-08-31 18:11:51
[2026-08-31 18:11:51,484.484 INFO    ] 2026-08-31 18:11:51
[2026-08-31 18:11:51,538.538 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:11:51,763.763 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:11:51,772.772 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:11:51,906.906 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:11:51,966.966 INFO    ] time= 31/08/2026 18:11:51
[2026-08-31 18:11:52,015.015 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:11:52,040.040 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:11:52,175.175 INFO    ] No existing commands found in stream
[2026-08-31 18:11:57,196.196 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:11:57,199.199 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-08-31 18:11:59,288.288 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 18:11:59,291.291 INFO    ] Checking for system updates...
[2026-08-31 18:11:59,327.327 INFO    ] 200
[2026-08-31 18:11:59,330.330 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:11:59,383.383 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:11:59,386.386 INFO    ] No update needed
[2026-08-31 18:11:59,388.388 INFO    ] Checking for camera pi updates...
[2026-08-31 18:11:59,423.423 INFO    ] 200
[2026-08-31 18:11:59,425.425 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:11:59,465.465 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:11:59,545.545 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:11:59,548.548 INFO    ] No camera update needed
[2026-08-31 18:11:59,551.551 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:11:59,553.553 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:11:59,559.559 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:11:59,564.564 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:12:01,608.608 INFO    ] ================================================
[2026-08-31 18:12:01,630.630 INFO    ] Launching Daemon at Mon Aug 31 18:12:01 IST 2026
[2026-08-31 18:12:01,647.647 INFO    ] ================================================
[2026-08-31 18:12:02,318.318 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:12:02
[2026-08-31 18:12:02,984.984 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:12:03,245.245 INFO    ] Initializing speech engine...
[2026-08-31 18:12:03,267.267 INFO    ] 2026-08-31 18:12:03
[2026-08-31 18:12:03,522.522 INFO    ] 2026-08-31 18:12:03
[2026-08-31 18:12:03,564.564 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:12:03,813.813 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:12:03,817.817 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:12:03,951.951 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:12:03,991.991 INFO    ] time= 31/08/2026 18:12:03
[2026-08-31 18:12:04,065.065 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:12:04,084.084 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:12:04,209.209 INFO    ] No existing commands found in stream
[2026-08-31 18:12:09,234.234 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:12:09,237.237 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-08-31 18:12:11,542.542 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 18:12:11,545.545 INFO    ] Checking for system updates...
[2026-08-31 18:12:11,580.580 INFO    ] 200
[2026-08-31 18:12:11,582.582 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:12:11,634.634 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:12:11,636.636 INFO    ] No update needed
[2026-08-31 18:12:11,639.639 INFO    ] Checking for camera pi updates...
[2026-08-31 18:12:11,672.672 INFO    ] 200
[2026-08-31 18:12:11,675.675 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:12:11,720.720 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:12:11,810.810 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:12:11,812.812 INFO    ] No camera update needed
[2026-08-31 18:12:11,815.815 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:12:11,817.817 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:12:11,822.822 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:12:11,827.827 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:12:13,868.868 INFO    ] ================================================
[2026-08-31 18:12:13,883.883 INFO    ] Launching Daemon at Mon Aug 31 18:12:13 IST 2026
[2026-08-31 18:12:13,894.894 INFO    ] ================================================
[2026-08-31 18:12:14,548.548 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:12:14
[2026-08-31 18:12:15,222.222 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:12:15,490.490 INFO    ] Initializing speech engine...
[2026-08-31 18:12:15,508.508 INFO    ] 2026-08-31 18:12:15
[2026-08-31 18:12:15,759.759 INFO    ] 2026-08-31 18:12:15
[2026-08-31 18:12:15,794.794 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:12:16,027.027 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:12:16,058.058 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:12:16,198.198 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:12:16,252.252 INFO    ] time= 31/08/2026 18:12:16
[2026-08-31 18:12:16,306.306 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:12:16,333.333 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:12:16,451.451 INFO    ] No existing commands found in stream
[2026-08-31 18:12:21,481.481 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:12:21,484.484 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-08-31 18:12:25,651.651 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 18:12:25,654.654 INFO    ] Checking for system updates...
[2026-08-31 18:12:25,689.689 INFO    ] 200
[2026-08-31 18:12:25,691.691 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:12:25,743.743 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:12:25,745.745 INFO    ] No update needed
[2026-08-31 18:12:25,748.748 INFO    ] Checking for camera pi updates...
[2026-08-31 18:12:25,782.782 INFO    ] 200
[2026-08-31 18:12:25,784.784 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:12:25,824.824 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:12:26,024.024 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:12:26,027.027 INFO    ] No camera update needed
[2026-08-31 18:12:26,029.029 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:12:26,032.032 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:12:26,037.037 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:12:26,042.042 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:12:28,082.082 INFO    ] ================================================
[2026-08-31 18:12:28,097.097 INFO    ] Launching Daemon at Mon Aug 31 18:12:28 IST 2026
[2026-08-31 18:12:28,108.108 INFO    ] ================================================
[2026-08-31 18:12:28,681.681 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:12:28
[2026-08-31 18:12:29,358.358 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:12:29,660.660 INFO    ] Initializing speech engine...
[2026-08-31 18:12:29,671.671 INFO    ] 2026-08-31 18:12:29
[2026-08-31 18:12:29,987.987 INFO    ] 2026-08-31 18:12:29
[2026-08-31 18:12:30,073.073 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:12:30,250.250 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:12:30,258.258 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:12:30,447.447 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:12:30,494.494 INFO    ] time= 31/08/2026 18:12:30
[2026-08-31 18:12:30,513.513 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:12:30,523.523 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:12:30,729.729 INFO    ] No existing commands found in stream
[2026-08-31 18:12:35,756.756 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:12:35,759.759 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-08-31 18:12:38,780.780 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 18:12:38,783.783 INFO    ] Checking for system updates...
[2026-08-31 18:12:38,826.826 INFO    ] 200
[2026-08-31 18:12:38,829.829 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:12:38,894.894 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:12:38,897.897 INFO    ] No update needed
[2026-08-31 18:12:38,900.900 INFO    ] Checking for camera pi updates...
[2026-08-31 18:12:38,934.934 INFO    ] 200
[2026-08-31 18:12:38,937.937 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:12:38,979.979 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:12:39,072.072 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:12:39,075.075 INFO    ] No camera update needed
[2026-08-31 18:12:39,078.078 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:12:39,081.081 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:12:39,087.087 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:12:39,093.093 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:12:41,135.135 INFO    ] ================================================
[2026-08-31 18:12:41,150.150 INFO    ] Launching Daemon at Mon Aug 31 18:12:41 IST 2026
[2026-08-31 18:12:41,160.160 INFO    ] ================================================
[2026-08-31 18:12:41,753.753 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:12:41
[2026-08-31 18:12:42,358.358 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:12:42,622.622 INFO    ] Initializing speech engine...
[2026-08-31 18:12:42,639.639 INFO    ] 2026-08-31 18:12:42
[2026-08-31 18:12:42,930.930 INFO    ] 2026-08-31 18:12:42
[2026-08-31 18:12:42,966.966 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:12:43,167.167 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:12:43,181.181 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:12:43,343.343 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:12:43,353.353 INFO    ] time= 31/08/2026 18:12:43
[2026-08-31 18:12:43,358.358 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:12:43,364.364 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:12:43,441.441 INFO    ] No existing commands found in stream
[2026-08-31 18:12:48,471.471 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:12:48,474.474 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-08-31 18:12:49,290.290 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 18:12:49,292.292 INFO    ] Checking for system updates...
[2026-08-31 18:12:49,329.329 INFO    ] 200
[2026-08-31 18:12:49,331.331 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:12:49,383.383 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:12:49,385.385 INFO    ] No update needed
[2026-08-31 18:12:49,388.388 INFO    ] Checking for camera pi updates...
[2026-08-31 18:12:49,423.423 INFO    ] 200
[2026-08-31 18:12:49,426.426 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:12:49,466.466 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:12:49,525.525 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:12:49,527.527 INFO    ] No camera update needed
[2026-08-31 18:12:49,530.530 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:12:49,532.532 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:12:49,537.537 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:12:49,542.542 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:12:51,582.582 INFO    ] ================================================
[2026-08-31 18:12:51,597.597 INFO    ] Launching Daemon at Mon Aug 31 18:12:51 IST 2026
[2026-08-31 18:12:51,608.608 INFO    ] ================================================
[2026-08-31 18:12:52,178.178 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:12:52
[2026-08-31 18:12:52,767.767 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:12:53,028.028 INFO    ] Initializing speech engine...
[2026-08-31 18:12:53,044.044 INFO    ] 2026-08-31 18:12:53
[2026-08-31 18:12:53,332.332 INFO    ] 2026-08-31 18:12:53
[2026-08-31 18:12:53,370.370 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:12:53,599.599 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:12:53,634.634 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:12:53,828.828 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:12:53,845.845 INFO    ] time= 31/08/2026 18:12:53
[2026-08-31 18:12:53,883.883 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:12:53,922.922 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:12:54,009.009 INFO    ] No existing commands found in stream
[2026-08-31 18:12:59,020.020 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:12:59,023.023 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-08-31 18:13:02,933.933 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 18:13:02,937.937 INFO    ] Checking for system updates...
[2026-08-31 18:13:02,979.979 INFO    ] 200
[2026-08-31 18:13:02,981.981 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:13:03,034.034 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:13:03,037.037 INFO    ] No update needed
[2026-08-31 18:13:03,040.040 INFO    ] Checking for camera pi updates...
[2026-08-31 18:13:03,074.074 INFO    ] 200
[2026-08-31 18:13:03,076.076 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:13:03,116.116 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:13:03,173.173 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:13:03,175.175 INFO    ] No camera update needed
[2026-08-31 18:13:03,178.178 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:13:03,180.180 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:13:03,185.185 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:13:03,190.190 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:13:05,230.230 INFO    ] ================================================
[2026-08-31 18:13:05,245.245 INFO    ] Launching Daemon at Mon Aug 31 18:13:05 IST 2026
[2026-08-31 18:13:05,255.255 INFO    ] ================================================
[2026-08-31 18:13:05,821.821 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:13:05
[2026-08-31 18:13:06,442.442 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:13:06,703.703 INFO    ] Initializing speech engine...
[2026-08-31 18:13:06,709.709 INFO    ] 2026-08-31 18:13:06
[2026-08-31 18:13:07,006.006 INFO    ] 2026-08-31 18:13:06
[2026-08-31 18:13:07,043.043 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:13:07,241.241 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:13:07,255.255 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:13:07,413.413 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:13:07,421.421 INFO    ] time= 31/08/2026 18:13:07
[2026-08-31 18:13:07,426.426 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:13:07,434.434 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:13:07,570.570 INFO    ] No existing commands found in stream
[2026-08-31 18:13:12,590.590 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:13:12,593.593 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-08-31 18:13:14,526.526 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 18:13:14,529.529 INFO    ] Checking for system updates...
[2026-08-31 18:13:14,566.566 INFO    ] 200
[2026-08-31 18:13:14,568.568 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:13:14,621.621 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:13:14,624.624 INFO    ] No update needed
[2026-08-31 18:13:14,627.627 INFO    ] Checking for camera pi updates...
[2026-08-31 18:13:14,661.661 INFO    ] 200
[2026-08-31 18:13:14,663.663 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:13:14,710.710 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:13:14,806.806 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:13:14,809.809 INFO    ] No camera update needed
[2026-08-31 18:13:14,812.812 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:13:14,814.814 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:13:14,821.821 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:13:14,826.826 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:13:16,868.868 INFO    ] ================================================
[2026-08-31 18:13:16,883.883 INFO    ] Launching Daemon at Mon Aug 31 18:13:16 IST 2026
[2026-08-31 18:13:16,893.893 INFO    ] ================================================
[2026-08-31 18:13:17,476.476 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:13:17
[2026-08-31 18:13:18,076.076 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:13:18,355.355 INFO    ] Initializing speech engine...
[2026-08-31 18:13:18,367.367 INFO    ] 2026-08-31 18:13:18
[2026-08-31 18:13:18,620.620 INFO    ] 2026-08-31 18:13:18
[2026-08-31 18:13:18,671.671 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:13:19,099.099 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:13:19,140.140 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:13:19,306.306 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:13:19,355.355 INFO    ] time= 31/08/2026 18:13:19
[2026-08-31 18:13:19,399.399 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:13:19,428.428 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:13:19,553.553 INFO    ] No existing commands found in stream
[2026-08-31 18:13:24,579.579 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:13:24,582.582 INFO    ] Waiting 0.00 seconds before fallback handling...
[2026-08-31 18:13:25,489.489 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 18:13:25,492.492 INFO    ] Checking for system updates...
[2026-08-31 18:13:25,530.530 INFO    ] 200
[2026-08-31 18:13:25,533.533 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:13:25,588.588 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:13:25,590.590 INFO    ] No update needed
[2026-08-31 18:13:25,593.593 INFO    ] Checking for camera pi updates...
[2026-08-31 18:13:25,628.628 INFO    ] 200
[2026-08-31 18:13:25,630.630 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:13:25,671.671 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:13:25,766.766 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:13:25,769.769 INFO    ] No camera update needed
[2026-08-31 18:13:25,772.772 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:13:25,774.774 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:13:25,780.780 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:13:25,786.786 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:13:27,827.827 INFO    ] ================================================
[2026-08-31 18:13:27,842.842 INFO    ] Launching Daemon at Mon Aug 31 18:13:27 IST 2026
[2026-08-31 18:13:27,852.852 INFO    ] ================================================
[2026-08-31 18:13:28,491.491 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:13:28
[2026-08-31 18:13:29,149.149 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:13:29,446.446 INFO    ] Initializing speech engine...
[2026-08-31 18:13:29,460.460 INFO    ] 2026-08-31 18:13:29
[2026-08-31 18:13:29,726.726 INFO    ] 2026-08-31 18:13:29
[2026-08-31 18:13:29,777.777 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:13:30,046.046 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:13:30,069.069 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:13:30,266.266 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:13:30,284.284 INFO    ] time= 31/08/2026 18:13:30
[2026-08-31 18:13:30,294.294 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:13:30,321.321 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:13:30,428.428 INFO    ] No existing commands found in stream
[2026-08-31 18:13:35,457.457 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:13:35,461.461 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-08-31 18:13:37,056.056 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 18:13:37,059.059 INFO    ] Checking for system updates...
[2026-08-31 18:13:37,095.095 INFO    ] 200
[2026-08-31 18:13:37,098.098 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:13:37,152.152 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:13:37,154.154 INFO    ] No update needed
[2026-08-31 18:13:37,156.156 INFO    ] Checking for camera pi updates...
[2026-08-31 18:13:37,190.190 INFO    ] 200
[2026-08-31 18:13:37,193.193 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:13:37,234.234 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:13:37,320.320 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:13:37,323.323 INFO    ] No camera update needed
[2026-08-31 18:13:37,325.325 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:13:37,328.328 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:13:37,334.334 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:13:37,340.340 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:13:39,380.380 INFO    ] ================================================
[2026-08-31 18:13:39,395.395 INFO    ] Launching Daemon at Mon Aug 31 18:13:39 IST 2026
[2026-08-31 18:13:39,406.406 INFO    ] ================================================
[2026-08-31 18:13:39,973.973 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:13:39
[2026-08-31 18:13:40,555.555 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:13:40,814.814 INFO    ] Initializing speech engine...
[2026-08-31 18:13:40,839.839 INFO    ] 2026-08-31 18:13:40
[2026-08-31 18:13:41,112.112 INFO    ] 2026-08-31 18:13:41
[2026-08-31 18:13:41,147.147 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:13:41,370.370 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:13:41,420.420 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:13:41,593.593 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:13:41,615.615 INFO    ] time= 31/08/2026 18:13:41
[2026-08-31 18:13:41,659.659 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:13:41,713.713 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:13:41,799.799 INFO    ] No existing commands found in stream
[2026-08-31 18:13:46,811.811 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:13:46,813.813 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-08-31 18:13:47,698.698 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 18:13:47,700.700 INFO    ] Checking for system updates...
[2026-08-31 18:13:47,735.735 INFO    ] 200
[2026-08-31 18:13:47,737.737 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:13:47,789.789 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:13:47,792.792 INFO    ] No update needed
[2026-08-31 18:13:47,794.794 INFO    ] Checking for camera pi updates...
[2026-08-31 18:13:47,827.827 INFO    ] 200
[2026-08-31 18:13:47,829.829 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:13:47,869.869 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:13:47,938.938 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:13:47,941.941 INFO    ] No camera update needed
[2026-08-31 18:13:47,943.943 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:13:47,946.946 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:13:47,954.954 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:13:47,959.959 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:13:50,000.000 INFO    ] ================================================
[2026-08-31 18:13:50,016.016 INFO    ] Launching Daemon at Mon Aug 31 18:13:50 IST 2026
[2026-08-31 18:13:50,026.026 INFO    ] ================================================
[2026-08-31 18:13:50,612.612 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:13:50
[2026-08-31 18:13:51,210.210 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:13:51,485.485 INFO    ] Initializing speech engine...
[2026-08-31 18:13:51,494.494 INFO    ] 2026-08-31 18:13:51
[2026-08-31 18:13:51,759.759 INFO    ] 2026-08-31 18:13:51
[2026-08-31 18:13:51,811.811 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:13:52,037.037 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:13:52,042.042 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:13:52,257.257 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:13:52,297.297 INFO    ] time= 31/08/2026 18:13:52
[2026-08-31 18:13:52,315.315 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:13:52,323.323 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:13:52,471.471 INFO    ] No existing commands found in stream
[2026-08-31 18:13:57,496.496 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:13:57,499.499 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-08-31 18:14:01,467.467 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 18:14:01,471.471 INFO    ] Checking for system updates...
[2026-08-31 18:14:01,542.542 INFO    ] 200
[2026-08-31 18:14:01,544.544 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:14:01,612.612 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:14:01,615.615 INFO    ] No update needed
[2026-08-31 18:14:01,618.618 INFO    ] Checking for camera pi updates...
[2026-08-31 18:14:01,675.675 INFO    ] 200
[2026-08-31 18:14:01,678.678 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:14:01,733.733 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:14:01,838.838 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:14:01,841.841 INFO    ] No camera update needed
[2026-08-31 18:14:01,845.845 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:14:01,848.848 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:14:01,856.856 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:14:01,864.864 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:14:03,909.909 INFO    ] ================================================
[2026-08-31 18:14:03,924.924 INFO    ] Launching Daemon at Mon Aug 31 18:14:03 IST 2026
[2026-08-31 18:14:03,934.934 INFO    ] ================================================
[2026-08-31 18:14:04,500.500 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:14:04
[2026-08-31 18:14:05,083.083 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:14:05,329.329 INFO    ] Initializing speech engine...
[2026-08-31 18:14:05,337.337 INFO    ] 2026-08-31 18:14:05
[2026-08-31 18:14:05,612.612 INFO    ] 2026-08-31 18:14:05
[2026-08-31 18:14:05,647.647 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:14:05,845.845 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:14:05,867.867 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:14:06,066.066 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:14:06,108.108 INFO    ] time= 31/08/2026 18:14:06
[2026-08-31 18:14:06,167.167 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:14:06,199.199 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:14:06,321.321 INFO    ] No existing commands found in stream
[2026-08-31 18:14:11,346.346 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:14:11,349.349 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-08-31 18:14:15,702.702 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 18:14:15,705.705 INFO    ] Checking for system updates...
[2026-08-31 18:14:15,740.740 INFO    ] 200
[2026-08-31 18:14:15,743.743 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:14:15,801.801 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:14:15,804.804 INFO    ] No update needed
[2026-08-31 18:14:15,806.806 INFO    ] Checking for camera pi updates...
[2026-08-31 18:14:15,840.840 INFO    ] 200
[2026-08-31 18:14:15,843.843 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:14:15,883.883 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:14:15,982.982 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:14:15,984.984 INFO    ] No camera update needed
[2026-08-31 18:14:15,986.986 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:14:15,989.989 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:14:15,994.994 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:14:15,999.999 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:14:18,040.040 INFO    ] ================================================
[2026-08-31 18:14:18,055.055 INFO    ] Launching Daemon at Mon Aug 31 18:14:18 IST 2026
[2026-08-31 18:14:18,065.065 INFO    ] ================================================
[2026-08-31 18:14:18,632.632 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:14:18
[2026-08-31 18:14:19,218.218 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:14:19,468.468 INFO    ] Initializing speech engine...
[2026-08-31 18:14:19,491.491 INFO    ] 2026-08-31 18:14:19
[2026-08-31 18:14:19,746.746 INFO    ] 2026-08-31 18:14:19
[2026-08-31 18:14:19,780.780 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:14:19,978.978 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:14:20,028.028 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:14:20,182.182 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:14:20,219.219 INFO    ] time= 31/08/2026 18:14:20
[2026-08-31 18:14:20,268.268 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:14:20,317.317 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:14:20,449.449 INFO    ] No existing commands found in stream
[2026-08-31 18:14:25,475.475 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:14:25,477.477 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-08-31 18:14:26,666.666 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 18:14:26,669.669 INFO    ] Checking for system updates...
[2026-08-31 18:14:26,705.705 INFO    ] 200
[2026-08-31 18:14:26,708.708 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:14:26,762.762 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:14:26,765.765 INFO    ] No update needed
[2026-08-31 18:14:26,767.767 INFO    ] Checking for camera pi updates...
[2026-08-31 18:14:26,806.806 INFO    ] 200
[2026-08-31 18:14:26,820.820 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:14:26,867.867 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:14:27,044.044 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:14:27,047.047 INFO    ] No camera update needed
[2026-08-31 18:14:27,050.050 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:14:27,052.052 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:14:27,059.059 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:14:27,064.064 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:14:29,105.105 INFO    ] ================================================
[2026-08-31 18:14:29,121.121 INFO    ] Launching Daemon at Mon Aug 31 18:14:29 IST 2026
[2026-08-31 18:14:29,131.131 INFO    ] ================================================
[2026-08-31 18:14:29,696.696 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:14:29
[2026-08-31 18:14:30,277.277 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:14:30,536.536 INFO    ] Initializing speech engine...
[2026-08-31 18:14:30,556.556 INFO    ] 2026-08-31 18:14:30
[2026-08-31 18:14:30,805.805 INFO    ] 2026-08-31 18:14:30
[2026-08-31 18:14:30,840.840 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:14:31,045.045 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:14:31,099.099 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:14:31,270.270 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:14:31,336.336 INFO    ] time= 31/08/2026 18:14:31
[2026-08-31 18:14:31,391.391 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:14:31,401.401 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:14:31,559.559 INFO    ] No existing commands found in stream
[2026-08-31 18:14:36,579.579 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:14:36,581.581 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-08-31 18:14:40,569.569 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 18:14:40,572.572 INFO    ] Checking for system updates...
[2026-08-31 18:14:40,608.608 INFO    ] 200
[2026-08-31 18:14:40,610.610 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:14:40,663.663 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:14:40,665.665 INFO    ] No update needed
[2026-08-31 18:14:40,667.667 INFO    ] Checking for camera pi updates...
[2026-08-31 18:14:40,706.706 INFO    ] 200
[2026-08-31 18:14:40,709.709 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:14:40,754.754 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:14:40,843.843 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:14:40,845.845 INFO    ] No camera update needed
[2026-08-31 18:14:40,848.848 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:14:40,850.850 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:14:40,855.855 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:14:40,860.860 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:14:42,899.899 INFO    ] ================================================
[2026-08-31 18:14:42,914.914 INFO    ] Launching Daemon at Mon Aug 31 18:14:42 IST 2026
[2026-08-31 18:14:42,925.925 INFO    ] ================================================
[2026-08-31 18:14:43,490.490 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:14:43
[2026-08-31 18:14:44,070.070 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:14:44,339.339 INFO    ] Initializing speech engine...
[2026-08-31 18:14:44,348.348 INFO    ] 2026-08-31 18:14:44
[2026-08-31 18:14:44,599.599 INFO    ] 2026-08-31 18:14:44
[2026-08-31 18:14:44,633.633 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:14:44,895.895 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:14:44,900.900 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:14:45,036.036 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:14:45,091.091 INFO    ] time= 31/08/2026 18:14:45
[2026-08-31 18:14:45,150.150 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:14:45,170.170 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:14:45,310.310 INFO    ] No existing commands found in stream
[2026-08-31 18:14:50,330.330 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:14:50,333.333 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-08-31 18:14:52,522.522 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 18:14:52,525.525 INFO    ] Checking for system updates...
[2026-08-31 18:14:52,564.564 INFO    ] 200
[2026-08-31 18:14:52,566.566 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:14:52,619.619 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:14:52,621.621 INFO    ] No update needed
[2026-08-31 18:14:52,624.624 INFO    ] Checking for camera pi updates...
[2026-08-31 18:14:52,660.660 INFO    ] 200
[2026-08-31 18:14:52,663.663 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:14:52,703.703 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:14:52,810.810 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:14:52,813.813 INFO    ] No camera update needed
[2026-08-31 18:14:52,815.815 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:14:52,817.817 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:14:52,823.823 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:14:52,828.828 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:14:54,870.870 INFO    ] ================================================
[2026-08-31 18:14:54,885.885 INFO    ] Launching Daemon at Mon Aug 31 18:14:54 IST 2026
[2026-08-31 18:14:54,896.896 INFO    ] ================================================
[2026-08-31 18:14:55,462.462 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:14:55
[2026-08-31 18:14:56,048.048 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:14:56,301.301 INFO    ] Initializing speech engine...
[2026-08-31 18:14:56,308.308 INFO    ] 2026-08-31 18:14:56
[2026-08-31 18:14:56,603.603 INFO    ] 2026-08-31 18:14:56
[2026-08-31 18:14:56,638.638 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:14:56,840.840 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:14:56,855.855 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:14:57,018.018 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:14:57,027.027 INFO    ] time= 31/08/2026 18:14:57
[2026-08-31 18:14:57,035.035 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:14:57,059.059 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:14:57,202.202 INFO    ] No existing commands found in stream
[2026-08-31 18:15:02,233.233 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:15:02,237.237 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-08-31 18:15:06,180.180 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 18:15:06,183.183 INFO    ] Checking for system updates...
[2026-08-31 18:15:06,218.218 INFO    ] 200
[2026-08-31 18:15:06,221.221 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:15:06,280.280 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:15:06,283.283 INFO    ] No update needed
[2026-08-31 18:15:06,285.285 INFO    ] Checking for camera pi updates...
[2026-08-31 18:15:06,319.319 INFO    ] 200
[2026-08-31 18:15:06,321.321 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:15:06,367.367 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:15:06,468.468 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:15:06,471.471 INFO    ] No camera update needed
[2026-08-31 18:15:06,474.474 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:15:06,478.478 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:15:06,484.484 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:15:06,491.491 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:15:08,533.533 INFO    ] ================================================
[2026-08-31 18:15:08,549.549 INFO    ] Launching Daemon at Mon Aug 31 18:15:08 IST 2026
[2026-08-31 18:15:08,559.559 INFO    ] ================================================
[2026-08-31 18:15:09,140.140 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:15:09
[2026-08-31 18:15:09,737.737 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:15:09,990.990 INFO    ] Initializing speech engine...
[2026-08-31 18:15:09,998.998 INFO    ] 2026-08-31 18:15:09
[2026-08-31 18:15:10,276.276 INFO    ] 2026-08-31 18:15:10
[2026-08-31 18:15:10,312.312 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:15:10,565.565 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:15:10,574.574 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:15:10,708.708 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:15:10,753.753 INFO    ] time= 31/08/2026 18:15:10
[2026-08-31 18:15:10,812.812 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:15:10,841.841 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:15:10,973.973 INFO    ] No existing commands found in stream
[2026-08-31 18:15:15,998.998 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:15:16,001.001 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-08-31 18:15:17,181.181 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 18:15:17,183.183 INFO    ] Checking for system updates...
[2026-08-31 18:15:17,223.223 INFO    ] 200
[2026-08-31 18:15:17,225.225 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:15:17,285.285 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:15:17,288.288 INFO    ] No update needed
[2026-08-31 18:15:17,291.291 INFO    ] Checking for camera pi updates...
[2026-08-31 18:15:17,328.328 INFO    ] 200
[2026-08-31 18:15:17,331.331 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:15:17,378.378 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:15:17,481.481 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:15:17,483.483 INFO    ] No camera update needed
[2026-08-31 18:15:17,486.486 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:15:17,488.488 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:15:17,493.493 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:15:17,499.499 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:15:19,540.540 INFO    ] ================================================
[2026-08-31 18:15:19,556.556 INFO    ] Launching Daemon at Mon Aug 31 18:15:19 IST 2026
[2026-08-31 18:15:19,567.567 INFO    ] ================================================
[2026-08-31 18:15:20,235.235 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:15:20
[2026-08-31 18:15:20,852.852 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:15:21,127.127 INFO    ] Initializing speech engine...
[2026-08-31 18:15:21,136.136 INFO    ] 2026-08-31 18:15:21
[2026-08-31 18:15:21,384.384 INFO    ] 2026-08-31 18:15:21
[2026-08-31 18:15:21,420.420 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:15:21,615.615 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:15:21,636.636 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:15:21,842.842 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:15:21,850.850 INFO    ] time= 31/08/2026 18:15:21
[2026-08-31 18:15:21,895.895 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:15:21,955.955 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:15:22,133.133 INFO    ] No existing commands found in stream
[2026-08-31 18:15:27,170.170 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:15:27,173.173 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-08-31 18:15:28,972.972 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 18:15:28,974.974 INFO    ] Checking for system updates...
[2026-08-31 18:15:29,021.021 INFO    ] 200
[2026-08-31 18:15:29,023.023 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:15:29,080.080 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:15:29,083.083 INFO    ] No update needed
[2026-08-31 18:15:29,085.085 INFO    ] Checking for camera pi updates...
[2026-08-31 18:15:29,122.122 INFO    ] 200
[2026-08-31 18:15:29,125.125 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:15:29,173.173 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:15:29,255.255 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:15:29,258.258 INFO    ] No camera update needed
[2026-08-31 18:15:29,260.260 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:15:29,263.263 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:15:29,269.269 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:15:29,275.275 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:15:31,320.320 INFO    ] ================================================
[2026-08-31 18:15:31,335.335 INFO    ] Launching Daemon at Mon Aug 31 18:15:31 IST 2026
[2026-08-31 18:15:31,347.347 INFO    ] ================================================
[2026-08-31 18:15:31,993.993 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:15:31
[2026-08-31 18:15:32,658.658 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:15:32,921.921 INFO    ] Initializing speech engine...
[2026-08-31 18:15:32,939.939 INFO    ] 2026-08-31 18:15:32
[2026-08-31 18:15:33,238.238 INFO    ] 2026-08-31 18:15:33
[2026-08-31 18:15:33,274.274 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:15:33,511.511 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:15:33,532.532 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:15:33,718.718 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:15:33,778.778 INFO    ] time= 31/08/2026 18:15:33
[2026-08-31 18:15:33,800.800 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:15:33,803.803 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:15:33,890.890 INFO    ] No existing commands found in stream
[2026-08-31 18:15:38,899.899 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:15:38,902.902 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-08-31 18:15:40,380.380 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 18:15:40,383.383 INFO    ] Checking for system updates...
[2026-08-31 18:15:40,418.418 INFO    ] 200
[2026-08-31 18:15:40,421.421 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:15:40,474.474 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:15:40,476.476 INFO    ] No update needed
[2026-08-31 18:15:40,479.479 INFO    ] Checking for camera pi updates...
[2026-08-31 18:15:40,516.516 INFO    ] 200
[2026-08-31 18:15:40,519.519 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:15:40,559.559 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:15:40,663.663 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:15:40,665.665 INFO    ] No camera update needed
[2026-08-31 18:15:40,668.668 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:15:40,670.670 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:15:40,675.675 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:15:40,680.680 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:15:42,722.722 INFO    ] ================================================
[2026-08-31 18:15:42,738.738 INFO    ] Launching Daemon at Mon Aug 31 18:15:42 IST 2026
[2026-08-31 18:15:42,749.749 INFO    ] ================================================
[2026-08-31 18:15:43,409.409 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:15:43
[2026-08-31 18:15:44,090.090 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:15:44,395.395 INFO    ] Initializing speech engine...
[2026-08-31 18:15:44,404.404 INFO    ] 2026-08-31 18:15:44
[2026-08-31 18:15:44,683.683 INFO    ] 2026-08-31 18:15:44
[2026-08-31 18:15:44,739.739 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:15:45,020.020 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:15:45,032.032 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:15:45,225.225 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:15:45,244.244 INFO    ] time= 31/08/2026 18:15:45
[2026-08-31 18:15:45,264.264 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:15:45,283.283 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:15:45,401.401 INFO    ] No existing commands found in stream
[2026-08-31 18:15:50,438.438 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:15:50,441.441 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-08-31 18:15:55,405.405 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 18:15:55,408.408 INFO    ] Checking for system updates...
[2026-08-31 18:15:55,447.447 INFO    ] 200
[2026-08-31 18:15:55,450.450 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:15:55,512.512 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:15:55,514.514 INFO    ] No update needed
[2026-08-31 18:15:55,516.516 INFO    ] Checking for camera pi updates...
[2026-08-31 18:15:55,554.554 INFO    ] 200
[2026-08-31 18:15:55,556.556 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:15:55,602.602 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:15:55,705.705 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:15:55,707.707 INFO    ] No camera update needed
[2026-08-31 18:15:55,710.710 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:15:55,712.712 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:15:55,717.717 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:15:55,722.722 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:15:57,764.764 INFO    ] ================================================
[2026-08-31 18:15:57,779.779 INFO    ] Launching Daemon at Mon Aug 31 18:15:57 IST 2026
[2026-08-31 18:15:57,790.790 INFO    ] ================================================
[2026-08-31 18:15:58,362.362 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:15:58
[2026-08-31 18:15:58,943.943 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:15:59,205.205 INFO    ] Initializing speech engine...
[2026-08-31 18:15:59,222.222 INFO    ] 2026-08-31 18:15:59
[2026-08-31 18:15:59,499.499 INFO    ] 2026-08-31 18:15:59
[2026-08-31 18:15:59,534.534 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:15:59,733.733 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:15:59,750.750 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:15:59,914.914 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:15:59,921.921 INFO    ] time= 31/08/2026 18:15:59
[2026-08-31 18:15:59,926.926 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:15:59,932.932 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:16:00,007.007 INFO    ] No existing commands found in stream
[2026-08-31 18:16:05,019.019 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:16:05,022.022 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-08-31 18:16:06,861.861 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 18:16:06,864.864 INFO    ] Checking for system updates...
[2026-08-31 18:16:06,899.899 INFO    ] 200
[2026-08-31 18:16:06,902.902 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:16:06,957.957 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:16:06,960.960 INFO    ] No update needed
[2026-08-31 18:16:06,962.962 INFO    ] Checking for camera pi updates...
[2026-08-31 18:16:06,996.996 INFO    ] 200
[2026-08-31 18:16:06,999.999 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:16:07,043.043 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:16:07,139.139 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:16:07,141.141 INFO    ] No camera update needed
[2026-08-31 18:16:07,144.144 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:16:07,146.146 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:16:07,151.151 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:16:07,156.156 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:16:09,197.197 INFO    ] ================================================
[2026-08-31 18:16:09,213.213 INFO    ] Launching Daemon at Mon Aug 31 18:16:09 IST 2026
[2026-08-31 18:16:09,224.224 INFO    ] ================================================
[2026-08-31 18:16:09,870.870 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:16:09
[2026-08-31 18:16:10,530.530 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:16:10,796.796 INFO    ] Initializing speech engine...
[2026-08-31 18:16:10,805.805 INFO    ] 2026-08-31 18:16:10
[2026-08-31 18:16:11,052.052 INFO    ] 2026-08-31 18:16:11
[2026-08-31 18:16:11,086.086 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:16:11,339.339 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:16:11,348.348 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:16:11,480.480 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:16:11,530.530 INFO    ] time= 31/08/2026 18:16:11
[2026-08-31 18:16:11,584.584 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:16:11,614.614 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:16:11,721.721 INFO    ] No existing commands found in stream
[2026-08-31 18:16:16,743.743 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:16:16,745.745 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-08-31 18:16:18,548.548 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 18:16:18,550.550 INFO    ] Checking for system updates...
[2026-08-31 18:16:18,586.586 INFO    ] 200
[2026-08-31 18:16:18,589.589 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:16:18,650.650 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:16:18,652.652 INFO    ] No update needed
[2026-08-31 18:16:18,658.658 INFO    ] Checking for camera pi updates...
[2026-08-31 18:16:18,693.693 INFO    ] 200
[2026-08-31 18:16:18,696.696 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:16:18,744.744 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:16:18,804.804 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:16:18,806.806 INFO    ] No camera update needed
[2026-08-31 18:16:18,809.809 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:16:18,812.812 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:16:18,818.818 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:16:18,824.824 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:16:20,865.865 INFO    ] ================================================
[2026-08-31 18:16:20,880.880 INFO    ] Launching Daemon at Mon Aug 31 18:16:20 IST 2026
[2026-08-31 18:16:20,891.891 INFO    ] ================================================
[2026-08-31 18:16:21,532.532 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:16:21
[2026-08-31 18:16:22,192.192 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:16:22,496.496 INFO    ] Initializing speech engine...
[2026-08-31 18:16:22,503.503 INFO    ] 2026-08-31 18:16:22
[2026-08-31 18:16:22,776.776 INFO    ] 2026-08-31 18:16:22
[2026-08-31 18:16:22,832.832 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:16:23,066.066 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:16:23,073.073 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:16:23,207.207 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:16:23,255.255 INFO    ] time= 31/08/2026 18:16:23
[2026-08-31 18:16:23,310.310 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:16:23,345.345 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:16:23,491.491 INFO    ] No existing commands found in stream
[2026-08-31 18:16:28,509.509 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:16:28,512.512 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-08-31 18:16:31,251.251 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 18:16:31,253.253 INFO    ] Checking for system updates...
[2026-08-31 18:16:31,292.292 INFO    ] 200
[2026-08-31 18:16:31,294.294 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:16:31,352.352 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:16:31,355.355 INFO    ] No update needed
[2026-08-31 18:16:31,357.357 INFO    ] Checking for camera pi updates...
[2026-08-31 18:16:31,394.394 INFO    ] 200
[2026-08-31 18:16:31,396.396 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:16:31,437.437 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:16:31,660.660 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:16:31,663.663 INFO    ] No camera update needed
[2026-08-31 18:16:31,669.669 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:16:31,673.673 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:16:31,681.681 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:16:31,688.688 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:16:33,731.731 INFO    ] ================================================
[2026-08-31 18:16:33,747.747 INFO    ] Launching Daemon at Mon Aug 31 18:16:33 IST 2026
[2026-08-31 18:16:33,758.758 INFO    ] ================================================
[2026-08-31 18:16:34,326.326 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:16:34
[2026-08-31 18:16:34,911.911 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:16:35,163.163 INFO    ] Initializing speech engine...
[2026-08-31 18:16:35,186.186 INFO    ] 2026-08-31 18:16:35
[2026-08-31 18:16:35,442.442 INFO    ] 2026-08-31 18:16:35
[2026-08-31 18:16:35,477.477 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:16:35,735.735 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:16:35,744.744 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:16:35,882.882 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:16:35,946.946 INFO    ] time= 31/08/2026 18:16:35
[2026-08-31 18:16:36,007.007 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:16:36,018.018 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:16:36,076.076 INFO    ] No existing commands found in stream
[2026-08-31 18:16:41,101.101 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:16:41,104.104 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-08-31 18:16:43,789.789 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 18:16:43,791.791 INFO    ] Checking for system updates...
[2026-08-31 18:16:43,830.830 INFO    ] 200
[2026-08-31 18:16:43,832.832 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:16:43,885.885 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:16:43,887.887 INFO    ] No update needed
[2026-08-31 18:16:43,890.890 INFO    ] Checking for camera pi updates...
[2026-08-31 18:16:43,923.923 INFO    ] 200
[2026-08-31 18:16:43,926.926 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:16:43,966.966 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:16:44,051.051 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:16:44,053.053 INFO    ] No camera update needed
[2026-08-31 18:16:44,056.056 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:16:44,058.058 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:16:44,063.063 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:16:44,068.068 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:16:46,110.110 INFO    ] ================================================
[2026-08-31 18:16:46,125.125 INFO    ] Launching Daemon at Mon Aug 31 18:16:46 IST 2026
[2026-08-31 18:16:46,135.135 INFO    ] ================================================
[2026-08-31 18:16:46,773.773 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:16:46
[2026-08-31 18:16:47,432.432 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:16:47,734.734 INFO    ] Initializing speech engine...
[2026-08-31 18:16:47,747.747 INFO    ] 2026-08-31 18:16:47
[2026-08-31 18:16:48,054.054 INFO    ] 2026-08-31 18:16:48
[2026-08-31 18:16:48,139.139 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:16:48,350.350 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:16:48,358.358 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:16:48,553.553 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:16:48,560.560 INFO    ] time= 31/08/2026 18:16:48
[2026-08-31 18:16:48,582.582 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:16:48,609.609 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:16:48,725.725 INFO    ] No existing commands found in stream
[2026-08-31 18:16:53,750.750 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:16:53,753.753 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-08-31 18:16:57,324.324 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 18:16:57,327.327 INFO    ] Checking for system updates...
[2026-08-31 18:16:57,364.364 INFO    ] 200
[2026-08-31 18:16:57,367.367 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:16:57,420.420 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:16:57,422.422 INFO    ] No update needed
[2026-08-31 18:16:57,424.424 INFO    ] Checking for camera pi updates...
[2026-08-31 18:16:57,463.463 INFO    ] 200
[2026-08-31 18:16:57,465.465 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:16:57,507.507 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:16:57,592.592 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:16:57,594.594 INFO    ] No camera update needed
[2026-08-31 18:16:57,597.597 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:16:57,599.599 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:16:57,604.604 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:16:57,610.610 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:16:59,649.649 INFO    ] ================================================
[2026-08-31 18:16:59,664.664 INFO    ] Launching Daemon at Mon Aug 31 18:16:59 IST 2026
[2026-08-31 18:16:59,674.674 INFO    ] ================================================
[2026-08-31 18:17:00,257.257 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:17:00
[2026-08-31 18:17:00,855.855 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:17:01,136.136 INFO    ] Initializing speech engine...
[2026-08-31 18:17:01,149.149 INFO    ] 2026-08-31 18:17:01
[2026-08-31 18:17:01,415.415 INFO    ] 2026-08-31 18:17:01
[2026-08-31 18:17:01,457.457 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:17:01,736.736 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:17:01,778.778 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:17:01,986.986 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:17:02,045.045 INFO    ] time= 31/08/2026 18:17:01
[2026-08-31 18:17:02,103.103 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:17:02,138.138 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:17:02,311.311 INFO    ] No existing commands found in stream
[2026-08-31 18:17:07,336.336 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:17:07,339.339 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-08-31 18:17:08,246.246 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 18:17:08,249.249 INFO    ] Checking for system updates...
[2026-08-31 18:17:08,287.287 INFO    ] 200
[2026-08-31 18:17:08,290.290 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:17:08,346.346 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:17:08,349.349 INFO    ] No update needed
[2026-08-31 18:17:08,351.351 INFO    ] Checking for camera pi updates...
[2026-08-31 18:17:08,384.384 INFO    ] 200
[2026-08-31 18:17:08,387.387 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:17:08,428.428 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:17:08,508.508 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:17:08,510.510 INFO    ] No camera update needed
[2026-08-31 18:17:08,513.513 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:17:08,515.515 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:17:08,520.520 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:17:08,525.525 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:17:10,568.568 INFO    ] ================================================
[2026-08-31 18:17:10,584.584 INFO    ] Launching Daemon at Mon Aug 31 18:17:10 IST 2026
[2026-08-31 18:17:10,595.595 INFO    ] ================================================
[2026-08-31 18:17:11,161.161 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:17:11
[2026-08-31 18:17:11,744.744 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:17:12,013.013 INFO    ] Initializing speech engine...
[2026-08-31 18:17:12,022.022 INFO    ] 2026-08-31 18:17:12
[2026-08-31 18:17:12,271.271 INFO    ] 2026-08-31 18:17:12
[2026-08-31 18:17:12,307.307 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:17:12,504.504 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:17:12,549.549 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:17:12,696.696 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:17:12,715.715 INFO    ] time= 31/08/2026 18:17:12
[2026-08-31 18:17:12,749.749 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:17:12,808.808 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:17:12,892.892 INFO    ] No existing commands found in stream
[2026-08-31 18:17:17,904.904 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:17:17,906.906 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-08-31 18:17:21,586.586 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 18:17:21,589.589 INFO    ] Checking for system updates...
[2026-08-31 18:17:21,624.624 INFO    ] 200
[2026-08-31 18:17:21,627.627 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:17:21,679.679 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:17:21,681.681 INFO    ] No update needed
[2026-08-31 18:17:21,684.684 INFO    ] Checking for camera pi updates...
[2026-08-31 18:17:21,718.718 INFO    ] 200
[2026-08-31 18:17:21,720.720 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:17:21,764.764 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:17:21,826.826 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:17:21,829.829 INFO    ] No camera update needed
[2026-08-31 18:17:21,831.831 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:17:21,834.834 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:17:21,839.839 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:17:21,844.844 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:17:23,886.886 INFO    ] ================================================
[2026-08-31 18:17:23,902.902 INFO    ] Launching Daemon at Mon Aug 31 18:17:23 IST 2026
[2026-08-31 18:17:23,914.914 INFO    ] ================================================
[2026-08-31 18:17:24,492.492 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:17:24
[2026-08-31 18:17:25,088.088 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:17:25,364.364 INFO    ] Initializing speech engine...
[2026-08-31 18:17:25,372.372 INFO    ] 2026-08-31 18:17:25
[2026-08-31 18:17:25,629.629 INFO    ] 2026-08-31 18:17:25
[2026-08-31 18:17:25,683.683 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:17:25,902.902 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:17:25,912.912 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:17:26,128.128 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:17:26,168.168 INFO    ] time= 31/08/2026 18:17:26
[2026-08-31 18:17:26,174.174 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:17:26,195.195 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:17:26,307.307 INFO    ] No existing commands found in stream
[2026-08-31 18:17:31,331.331 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:17:31,334.334 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-08-31 18:17:34,326.326 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 18:17:34,329.329 INFO    ] Checking for system updates...
[2026-08-31 18:17:34,364.364 INFO    ] 200
[2026-08-31 18:17:34,366.366 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:17:34,424.424 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:17:34,426.426 INFO    ] No update needed
[2026-08-31 18:17:34,429.429 INFO    ] Checking for camera pi updates...
[2026-08-31 18:17:34,463.463 INFO    ] 200
[2026-08-31 18:17:34,465.465 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:17:34,509.509 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:17:34,596.596 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:17:34,599.599 INFO    ] No camera update needed
[2026-08-31 18:17:34,601.601 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:17:34,603.603 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:17:34,609.609 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:17:34,614.614 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:17:36,654.654 INFO    ] ================================================
[2026-08-31 18:17:36,669.669 INFO    ] Launching Daemon at Mon Aug 31 18:17:36 IST 2026
[2026-08-31 18:17:36,680.680 INFO    ] ================================================
[2026-08-31 18:17:37,280.280 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:17:37
[2026-08-31 18:17:37,862.862 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:17:38,131.131 INFO    ] Initializing speech engine...
[2026-08-31 18:17:38,141.141 INFO    ] 2026-08-31 18:17:38
[2026-08-31 18:17:38,386.386 INFO    ] 2026-08-31 18:17:38
[2026-08-31 18:17:38,420.420 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:17:38,613.613 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:17:38,637.637 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:17:38,813.813 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:17:38,855.855 INFO    ] time= 31/08/2026 18:17:38
[2026-08-31 18:17:38,920.920 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:17:38,949.949 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:17:39,076.076 INFO    ] No existing commands found in stream
[2026-08-31 18:17:44,104.104 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:17:44,107.107 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-08-31 18:17:47,288.288 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 18:17:47,291.291 INFO    ] Checking for system updates...
[2026-08-31 18:17:47,327.327 INFO    ] 200
[2026-08-31 18:17:47,329.329 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:17:47,387.387 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:17:47,390.390 INFO    ] No update needed
[2026-08-31 18:17:47,392.392 INFO    ] Checking for camera pi updates...
[2026-08-31 18:17:47,428.428 INFO    ] 200
[2026-08-31 18:17:47,430.430 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:17:47,470.470 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:17:47,560.560 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:17:47,562.562 INFO    ] No camera update needed
[2026-08-31 18:17:47,564.564 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:17:47,567.567 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:17:47,572.572 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:17:47,577.577 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:17:49,616.616 INFO    ] ================================================
[2026-08-31 18:17:49,631.631 INFO    ] Launching Daemon at Mon Aug 31 18:17:49 IST 2026
[2026-08-31 18:17:49,642.642 INFO    ] ================================================
[2026-08-31 18:17:50,210.210 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:17:50
[2026-08-31 18:17:50,793.793 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:17:51,042.042 INFO    ] Initializing speech engine...
[2026-08-31 18:17:51,062.062 INFO    ] 2026-08-31 18:17:51
[2026-08-31 18:17:51,320.320 INFO    ] 2026-08-31 18:17:51
[2026-08-31 18:17:51,356.356 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:17:51,577.577 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:17:51,616.616 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:17:51,828.828 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:17:51,883.883 INFO    ] time= 31/08/2026 18:17:51
[2026-08-31 18:17:51,895.895 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:17:51,916.916 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:17:52,047.047 INFO    ] No existing commands found in stream
[2026-08-31 18:17:57,064.064 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:17:57,067.067 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-08-31 18:17:58,134.134 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 18:17:58,137.137 INFO    ] Checking for system updates...
[2026-08-31 18:17:58,183.183 INFO    ] 200
[2026-08-31 18:17:58,185.185 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:17:58,239.239 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:17:58,242.242 INFO    ] No update needed
[2026-08-31 18:17:58,244.244 INFO    ] Checking for camera pi updates...
[2026-08-31 18:17:58,278.278 INFO    ] 200
[2026-08-31 18:17:58,281.281 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:17:58,323.323 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:17:58,428.428 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:17:58,431.431 INFO    ] No camera update needed
[2026-08-31 18:17:58,434.434 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:17:58,436.436 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:17:58,442.442 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:17:58,448.448 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:18:00,488.488 INFO    ] ================================================
[2026-08-31 18:18:00,503.503 INFO    ] Launching Daemon at Mon Aug 31 18:18:00 IST 2026
[2026-08-31 18:18:00,514.514 INFO    ] ================================================
[2026-08-31 18:18:01,088.088 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:18:01
[2026-08-31 18:18:01,671.671 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:18:02,202.202 INFO    ] Initializing speech engine...
[2026-08-31 18:18:02,206.206 INFO    ] 2026-08-31 18:18:02
[2026-08-31 18:18:02,609.609 INFO    ] 2026-08-31 18:18:02
[2026-08-31 18:18:02,674.674 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:18:02,885.885 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:18:02,890.890 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:18:03,095.095 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:18:03,105.105 INFO    ] time= 31/08/2026 18:18:03
[2026-08-31 18:18:03,143.143 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:18:03,162.162 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:18:03,290.290 INFO    ] No existing commands found in stream
[2026-08-31 18:18:08,326.326 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:18:08,329.329 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-08-31 18:18:09,053.053 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 18:18:09,056.056 INFO    ] Checking for system updates...
[2026-08-31 18:18:09,094.094 INFO    ] 200
[2026-08-31 18:18:09,096.096 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:18:09,153.153 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:18:09,155.155 INFO    ] No update needed
[2026-08-31 18:18:09,158.158 INFO    ] Checking for camera pi updates...
[2026-08-31 18:18:09,191.191 INFO    ] 200
[2026-08-31 18:18:09,193.193 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:18:09,234.234 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:18:09,351.351 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:18:09,353.353 INFO    ] No camera update needed
[2026-08-31 18:18:09,355.355 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:18:09,358.358 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:18:09,363.363 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:18:09,368.368 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:18:11,409.409 INFO    ] ================================================
[2026-08-31 18:18:11,425.425 INFO    ] Launching Daemon at Mon Aug 31 18:18:11 IST 2026
[2026-08-31 18:18:11,436.436 INFO    ] ================================================
[2026-08-31 18:18:12,014.014 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:18:12
[2026-08-31 18:18:12,595.595 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:18:12,873.873 INFO    ] Initializing speech engine...
[2026-08-31 18:18:12,880.880 INFO    ] 2026-08-31 18:18:12
[2026-08-31 18:18:13,144.144 INFO    ] 2026-08-31 18:18:13
[2026-08-31 18:18:13,175.175 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:18:13,425.425 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:18:13,431.431 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:18:13,570.570 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:18:13,635.635 INFO    ] time= 31/08/2026 18:18:13
[2026-08-31 18:18:13,692.692 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:18:13,699.699 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:18:13,830.830 INFO    ] No existing commands found in stream
[2026-08-31 18:18:15,040.040 INFO    ] Received new command: ID=1788180494649-0
[2026-08-31 18:18:15,046.046 INFO    ] process_and_cleanup_command: msg_id=1788180494649-0
[2026-08-31 18:18:15,052.052 INFO    ] is_command_expired: timestamp=2026-08-31T12:48:13.952Z, expiry=30s
[2026-08-31 18:18:15,170.170 INFO    ] Command removed from stream: 1788180494649-0. returning for processing...
[2026-08-31 18:18:15,175.175 INFO    ] ***** get_valid_command
[2026-08-31 18:18:15,180.180 INFO    ] {'command': 'start-order', 'timeout': '10', 'source': 'webapp', 'timestamp': '2026-08-31T12:48:13.952Z', 'data': '{"request_id":"start-order-1788180493952-y0agxarmp","orderId":"TM08202202260831181705379","is_vending":false}'}
[2026-08-31 18:18:15,186.186 INFO    ] ***** Parsed command data: {'orderId': 'TM08202202260831181705379', 'is_vending': False, 'request_id': 'start-order-1788180493952-y0agxarmp'}
[2026-08-31 18:18:15,190.190 INFO    ] Handling start order...
[2026-08-31 18:18:15,195.195 INFO    ] handle_start_order_command
[2026-08-31 18:18:15,206.206 INFO    ] _send_start_order_success: request_id=start-order-1788180493952-y0agxarmp, order_id=TM08202202260831181705379
[2026-08-31 18:18:15,213.213 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM08202202
[2026-08-31 18:18:15,299.299 INFO    ] [_send_start_order_success] Message added to stream with ID: 1788180495224-0
[2026-08-31 18:18:15,318.318 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-08-31 18:18:15,325.325 INFO    ] Checking for system updates...
[2026-08-31 18:18:15,393.393 INFO    ] 200
[2026-08-31 18:18:15,404.404 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:18:15,481.481 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:18:15,495.495 INFO    ] No update needed
[2026-08-31 18:18:15,504.504 INFO    ] Checking for camera pi updates...
[2026-08-31 18:18:15,586.586 INFO    ] 200
[2026-08-31 18:18:15,597.597 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:18:15,655.655 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:18:15,744.744 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:18:15,754.754 INFO    ] No camera update needed
[2026-08-31 18:18:15,778.778 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:18:15,804.804 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:18:15,873.873 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:18:15,891.891 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-31 18:18:15,909.909 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:18:17,980.980 INFO    ] ================================================
[2026-08-31 18:18:18,996.996 INFO    ] Launching Daemon at Mon Aug 31 18:18:17 IST 2026
[2026-08-31 18:18:18,007.007 INFO    ] ================================================
[2026-08-31 18:18:18,636.636 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:18:18
[2026-08-31 18:18:19,287.287 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:18:19,585.585 INFO    ] Initializing speech engine...
[2026-08-31 18:18:19,592.592 INFO    ] 2026-08-31 18:18:19
[2026-08-31 18:18:19,907.907 INFO    ] 2026-08-31 18:18:19
[2026-08-31 18:18:19,993.993 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:18:20,202.202 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:18:20,211.211 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:18:20,405.405 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:18:20,413.413 INFO    ] time= 31/08/2026 18:18:20
[2026-08-31 18:18:20,434.434 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:18:20,460.460 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:18:20,575.575 INFO    ] Found 2 existing command(s) in stream
[2026-08-31 18:18:20,639.639 INFO    ] Checking historical command: ID=1788180495224-0
[2026-08-31 18:18:20,676.676 INFO    ] process_and_cleanup_command: msg_id=1788180495224-0
[2026-08-31 18:18:20,740.740 INFO    ] is_command_expired: timestamp=2026-08-31T12:48:15.208934Z, expiry=30s
[2026-08-31 18:18:20,991.991 INFO    ] Command removed from stream: 1788180495224-0. returning for processing...
[2026-08-31 18:18:21,030.030 INFO    ] ***** get_valid_command
[2026-08-31 18:18:21,037.037 INFO    ] {'message_type': 'command_response', 'metadata_request_id': 'start-order-1788180493952-y0agxarmp', 'status': 'success', 'timestamp': '2026-08-31T12:48:15.208934Z', 'message': 'start-order success', 'imei': 'TM08202202', 'metadata_order_id': 'TM08202202260831181705379'}
[2026-08-31 18:18:21,088.088 INFO    ] Checking historical command: ID=1788180497058-0
[2026-08-31 18:18:21,091.091 INFO    ] process_and_cleanup_command: msg_id=1788180497058-0
[2026-08-31 18:18:21,094.094 INFO    ] is_command_expired: timestamp=2026-08-31T12:48:16.437Z, expiry=30s
[2026-08-31 18:18:21,254.254 INFO    ] Command removed from stream: 1788180497058-0. returning for processing...
[2026-08-31 18:18:21,286.286 INFO    ] ***** get_valid_command
[2026-08-31 18:18:21,292.292 INFO    ] {'command': 'process-order', 'data': '{"request_id":"process-order-1788180496437-rouos7q94","orderId":"TM08202202260831181705379","is_vending":false,"accessCode":"95801805"}', 'timeout': '60', 'source': 'webapp', 'timestamp': '2026-08-31T12:48:16.437Z'}
[2026-08-31 18:18:21,299.299 INFO    ] ***** Parsed command data: {'request_id': 'process-order-1788180496437-rouos7q94', 'accessCode': '95801805', 'is_vending': False, 'orderId': 'TM08202202260831181705379'}
[2026-08-31 18:18:21,309.309 INFO    ] Handling process order...
[2026-08-31 18:18:21,316.316 INFO    ] Processing process-order command...
[2026-08-31 18:18:21,324.324 INFO    ] 🔍 Lock file Order ID: TM08202202260831181705379, TS: 2026-08-31 18:18:15
[2026-08-31 18:18:21,343.343 INFO    ] ✅ Order lock valid for TM08202202260831181705379
[2026-08-31 18:18:21,349.349 INFO    ] Received access code in process-order, skipping PHP API call
[2026-08-31 18:18:21,355.355 INFO    ] processing access code 95801805 for order TM08202202260831181705379
[2026-08-31 18:18:21,362.362 INFO    ] 🔍 Lock file Order ID: TM08202202260831181705379, TS: 2026-08-31 18:18:15
[2026-08-31 18:18:21,369.369 INFO    ] ✅ Order lock valid for TM08202202260831181705379
[2026-08-31 18:18:21,377.377 INFO    ] 2026-08-31 18:18:21
[2026-08-31 18:18:21,430.430 INFO    ] 200
[2026-08-31 18:18:21,435.435 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:18:21,440.440 INFO    ] 95801805
[2026-08-31 18:18:21,444.444 INFO    ] 2026-08-31 18:18:21
[2026-08-31 18:18:21,450.450 INFO    ] session id :486956185
[2026-08-31 18:18:21,454.454 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=95801805&imei=TM08202202&session_id=486956185
[2026-08-31 18:18:22,614.614 INFO    ] 200
[2026-08-31 18:18:22,631.631 INFO    ] {"msg": "Order Data", "data": {"access_code": "95801805", "invoice_bill": "20", "mobile": "8861950292", "order_id": "TM08202202260831181705379", "bill_amount": "20", "proposed_sku_json": [{"qty": 1, "offer_desc": "", "image_url": "https://images.tinymart.in/product/4500714-2989.png", "sku_total": 10, "mrp": "10", "tray_id": "14", "name": "McVities Triple Nut Cookies 58gm", "offer_id": "", "skuid": "4500714", "unit_price": 10, "door_id": "1"}, {"qty": 1, "offer_desc": "", "image_url": "https://images.tinymart.in/product/4500672-7226.webp", "sku_total": 10, "mrp": "10", "tray_id": "24", "name": "Modern kitchens Garlic Mixture 26gm", "offer_id": "", "skuid": "4500672", "unit_price": 10, "door_id": "1"}]}, "status": true, "rstatus": true}
[2026-08-31 18:18:22,640.640 INFO    ] 20
[2026-08-31 18:18:22,651.651 INFO    ] TM08202202260831181705379
[2026-08-31 18:18:22,658.658 INFO    ] 8861950292
[2026-08-31 18:18:22,690.690 INFO    ] 2026-08-31 18:18:22
[2026-08-31 18:18:22,698.698 INFO    ] Door Opening for user mobile ending with  zero two nine two 
[2026-08-31 18:18:22,721.721 INFO    ] Door Opening for user mobile ending with  zero two nine two 
[2026-08-31 18:18:22,726.726 INFO    ] 79526097e73a82f9805d2060075bb03f
[2026-08-31 18:18:22,731.731 INFO    ] 2026-08-31 18:18:22
[2026-08-31 18:18:22,738.738 INFO    ] playing audio file
[2026-08-31 18:18:22,765.765 INFO    ] 2026-08-31 18:18:22
[2026-08-31 18:18:22,775.775 INFO    ] 2026-08-31 18:18:22
[2026-08-31 18:18:22,798.798 INFO    ] publish_status: order_id=TM08202202260831181705379
[2026-08-31 18:18:22,812.812 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831181705379
[2026-08-31 18:18:22,955.955 INFO    ] [publish_status] Message added to stream with ID: 1788180502858-0
[2026-08-31 18:18:22,988.988 INFO    ] Published to order:TM08202202260831181705379: {'server_response': '{"data": {"proposed_sku_json": [{"mrp": "10", "image_url": "https://images.tinymart.in/product/4500714-2989.png", "name": "McVities Triple Nut Cookies 58gm", "offer_id": "", "sku_total": 10, "skuid": "4500714", "door_id": "1", "offer_desc": "", "tray_id": "14", "unit_price": 10, "qty": 1}, {"mrp": "10", "image_url": "https://images.tinymart.in/product/4500672-7226.webp", "name": "Modern kitchens Garlic Mixture 26gm", "offer_id": "", "sku_total": 10, "skuid": "4500672", "door_id": "1", "offer_desc": "", "tray_id": "24", "unit_price": 10, "qty": 1}], "bill_amount": "20", "access_code": "95801805", "mobile": "8861950292", "invoice_bill": "20", "order_id": "TM08202202260831181705379"}, "msg": "Order Data", "rstatus": true, "status": true}', 'server_status': 'order-started', 'timestamp': '2026-08-31T12:48:22.777703Z', 'order_id': 'TM08202202260831181705379'} (ID: 1788180502858-0)
[2026-08-31 18:18:23,547.547 INFO    ] {'server_response': {'data': {'proposed_sku_json': [{'mrp': '10', 'image_url': 'https://images.tinymart.in/product/4500714-2989.png', 'name': 'McVities Triple Nut Cookies 58gm', 'offer_id': '', 'sku_total': 10, 'skuid': '4500714', 'door_id': '1', 'offer_desc': '', 'tray_id': '14', 'unit_price': 10, 'qty': 1}, {'mrp': '10', 'image_url': 'https://images.tinymart.in/product/4500672-7226.webp', 'name': 'Modern kitchens Garlic Mixture 26gm', 'offer_id': '', 'sku_total': 10, 'skuid': '4500672', 'door_id': '1', 'offer_desc': '', 'tray_id': '24', 'unit_price': 10, 'qty': 1}], 'bill_amount': '20', 'access_code': '95801805', 'mobile': '8861950292', 'invoice_bill': '20', 'order_id': 'TM08202202260831181705379'}, 'msg': 'Order Data', 'rstatus': True, 'status': True}, 'server_status': 'order-started', 'order_id': 'TM08202202260831181705379'}
[2026-08-31 18:18:23,549.549 INFO    ] 200
[2026-08-31 18:18:23,552.552 INFO    ] {"data":{"server_response":{"data":{"proposed_sku_json":[{"mrp":"10","image_url":"https:\/\/images.tinymart.in\/product\/4500714-2989.png","name":"McVities Triple Nut Cookies 58gm","offer_id":"","sku_total":10,"skuid":"4500714","door_id":"1","offer_desc":"","tray_id":"14","unit_price":10,"qty":1},{"mrp":"10","image_url":"https:\/\/images.tinymart.in\/product\/4500672-7226.webp","name":"Modern kitchens Garlic Mixture 26gm","offer_id":"","sku_total":10,"skuid":"4500672","door_id":"1","offer_desc":"","tray_id":"24","unit_price":10,"qty":1}],"bill_amount":"20","access_code":"95801805","mobile":"8861950292","invoice_bill":"20","order_id":"TM08202202260831181705379"},"msg":"Order Data","rstatus":true,"status":true},"server_status":"order-started","order_id":"TM08202202260831181705379"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 18:18:23,555.555 INFO    ] {'response': {'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'msg': 'order updated successfully', 'status': True}, 'data': {'server_status': 'order-started', 'order_id': 'TM08202202260831181705379', 'server_response': {'data': {'proposed_sku_json': [{'mrp': '10', 'image_url': 'https://images.tinymart.in/product/4500714-2989.png', 'offer_desc': '', 'offer_id': '', 'name': 'McVities Triple Nut Cookies 58gm', 'skuid': '4500714', 'qty': 1, 'sku_total': 10, 'tray_id': '14', 'unit_price': 10, 'door_id': '1'}, {'mrp': '10', 'image_url': 'https://images.tinymart.in/product/4500672-7226.webp', 'offer_desc': '', 'offer_id': '', 'name': 'Modern kitchens Garlic Mixture 26gm', 'skuid': '4500672', 'qty': 1, 'sku_total': 10, 'tray_id': '24', 'unit_price': 10, 'door_id': '1'}], 'bill_amount': '20', 'access_code': '95801805', 'mobile': '8861950292', 'invoice_bill': '20', 'order_id': 'TM08202202260831181705379'}, 'msg': 'Order Data', 'status': True, 'rstatus': True}}}
[2026-08-31 18:18:23,557.557 INFO    ] 2026-08-31 18:18:23
[2026-08-31 18:18:23,615.615 INFO    ] 200
[2026-08-31 18:18:23,617.617 INFO    ] True
[2026-08-31 18:18:23,779.779 INFO    ] 200
[2026-08-31 18:18:23,782.782 INFO    ] {"SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "voiceNote": "Please Wait", "SectionMain": {"Header": "Processing Order"}, "SectionStatus": {"Note": "", "UI_Header": "", "SubHeader": "Please wait while we process your order", "Header": " Your order is under process  "}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 18:18:23,785.785 INFO    ] {'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'Note': '', 'Header': ' Your order is under process  ', 'UI_Header': ''}, 'status': 'False', 'rstatus': False, 'voiceNote': 'Please Wait', 'SectionMain': {'Header': 'Processing Order'}, 'error': {'code': 20001, 'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}}
[2026-08-31 18:18:23,793.793 INFO    ] *** process_order ***
[2026-08-31 18:18:24,978.978 INFO    ] 200
[2026-08-31 18:18:24,980.980 INFO    ] {"SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "voiceNote": "Please Wait", "SectionMain": {"Header": "Processing Order"}, "SectionStatus": {"Note": "", "UI_Header": "", "SubHeader": "Please wait while we process your order", "Header": " Your order is under process  "}, "delay": 0, "status": "True", "rstatus": true}
[2026-08-31 18:18:24,983.983 INFO    ] {'delay': 0, 'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'Note': '', 'Header': ' Your order is under process  ', 'UI_Header': ''}, 'status': 'True', 'rstatus': True, 'voiceNote': 'Please Wait', 'SectionMain': {'Header': 'Processing Order'}, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}}
[2026-08-31 18:18:24,985.985 INFO    ] *** process_order ***
[2026-08-31 18:18:24,988.988 INFO    ] publish_status: order_id=TM08202202260831181705379
[2026-08-31 18:18:24,990.990 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831181705379
[2026-08-31 18:18:25,076.076 INFO    ] [publish_status] Message added to stream with ID: 1788180505029-0
[2026-08-31 18:18:25,078.078 INFO    ] Published to order:TM08202202260831181705379: {'server_response': '{"delay": 0, "SectionStatus": {"SubHeader": "You can pull the door now.", "Note": "", "Header": " Your order is under process  ", "UI_Header": ""}, "status": "True", "rstatus": true, "voiceNote": "Door is open...", "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}}', 'server_status': 'doorOpened', 'order_id': 'TM08202202260831181705379'} (ID: 1788180505029-0)
[2026-08-31 18:18:26,153.153 INFO    ] 2026-08-31 18:18:26
[2026-08-31 18:18:26,155.155 INFO    ] publish_status: order_id=TM08202202260831181705379
[2026-08-31 18:18:26,158.158 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831181705379
[2026-08-31 18:18:26,245.245 INFO    ] [publish_status] Message added to stream with ID: 1788180506201-0
[2026-08-31 18:18:26,248.248 INFO    ] Published to order:TM08202202260831181705379: {'server_response': '{"delay": 0, "SectionStatus": {"SubHeader": "Please wait while we process your order", "Note": "", "Header": " Your order is under process  ", "UI_Header": ""}, "status": "True", "rstatus": true, "voiceNote": "Please Wait", "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}}', 'server_status': 'processOrder', 'timestamp': '2026-08-31T12:48:26.154260Z', 'order_id': 'TM08202202260831181705379'} (ID: 1788180506201-0)
[2026-08-31 18:18:26,411.411 INFO    ] {'server_response': {'delay': 0, 'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'Note': '', 'Header': ' Your order is under process  ', 'UI_Header': ''}, 'status': 'True', 'rstatus': True, 'voiceNote': 'Please Wait', 'SectionMain': {'Header': 'Processing Order'}, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}}, 'server_status': 'processOrder', 'order_id': 'TM08202202260831181705379'}
[2026-08-31 18:18:26,414.414 INFO    ] 200
[2026-08-31 18:18:26,416.416 INFO    ] {"data":{"server_response":{"delay":0,"SectionStatus":{"SubHeader":"Please wait while we process your order","Note":"","Header":" Your order is under process  ","UI_Header":""},"status":"true","rstatus":true,"voiceNote":"Please Wait","SectionMain":{"Header":"Processing Order"},"SectionSKU":{"Header":"Thank you for bearing with us :)","skus":[]}},"server_status":"processOrder","order_id":"TM08202202260831181705379"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 18:18:26,419.419 INFO    ] {'response': {'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'msg': 'order updated successfully', 'status': True}, 'data': {'server_status': 'processOrder', 'order_id': 'TM08202202260831181705379', 'server_response': {'delay': 0, 'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'Note': '', 'Header': ' Your order is under process  ', 'UI_Header': ''}, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'status': 'true', 'rstatus': True, 'SectionMain': {'Header': 'Processing Order'}, 'voiceNote': 'Please Wait'}}}
[2026-08-31 18:18:26,422.422 INFO    ] 2026-08-31 18:18:26
[2026-08-31 18:18:26,424.424 INFO    ] None
[2026-08-31 18:18:26,427.427 INFO    ] Opening Door now
[2026-08-31 18:18:26,429.429 INFO    ] Opening Door now
[2026-08-31 18:18:26,432.432 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-08-31 18:18:26,435.435 INFO    ] 2026-08-31 18:18:26
[2026-08-31 18:18:26,437.437 INFO    ] playing audio file
[2026-08-31 18:18:26,454.454 INFO    ] 2026-08-31 18:18:26
[2026-08-31 18:18:26,458.458 INFO    ] 2026-08-31 18:18:26
[2026-08-31 18:18:29,518.518 INFO    ] 200
[2026-08-31 18:18:29,520.520 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Triple Nut Cookies 58gm"}, {"qty": 1, "name": "Modern kitchens Garlic Mixture 26gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Door 1 is open now", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 18:18:29,524.524 INFO    ] {'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 1', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'status': 'False', 'rstatus': False, 'voiceNote': 'Door 1 is open now', 'SectionMain': {'Header': 'Door Open'}, 'error': {'code': 20001, 'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Triple Nut Cookies 58gm', 'qty': 1}, {'name': 'Modern kitchens Garlic Mixture 26gm', 'qty': 1}]}}
[2026-08-31 18:18:32,658.658 INFO    ] 200
[2026-08-31 18:18:32,663.663 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Triple Nut Cookies 58gm"}, {"qty": 1, "name": "Modern kitchens Garlic Mixture 26gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 18:18:32,666.666 INFO    ] {'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 1', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'status': 'False', 'rstatus': False, 'voiceNote': 'Please close door 1', 'SectionMain': {'Header': 'Door Open'}, 'error': {'code': 20001, 'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Triple Nut Cookies 58gm', 'qty': 1}, {'name': 'Modern kitchens Garlic Mixture 26gm', 'qty': 1}]}}
[2026-08-31 18:18:35,794.794 INFO    ] 200
[2026-08-31 18:18:35,797.797 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Triple Nut Cookies 58gm"}, {"qty": 1, "name": "Modern kitchens Garlic Mixture 26gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 18:18:35,800.800 INFO    ] Please close door 1
[2026-08-31 18:18:35,803.803 INFO    ] Please close door 1
[2026-08-31 18:18:35,806.806 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-08-31 18:18:35,809.809 INFO    ] 2026-08-31 18:18:35
[2026-08-31 18:18:35,812.812 INFO    ] playing audio file
[2026-08-31 18:18:35,829.829 INFO    ] 2026-08-31 18:18:35
[2026-08-31 18:18:35,833.833 INFO    ] publish_status: order_id=TM08202202260831181705379
[2026-08-31 18:18:35,836.836 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831181705379
[2026-08-31 18:18:35,912.912 INFO    ] [publish_status] Message added to stream with ID: 1788180515866-0
[2026-08-31 18:18:35,914.914 INFO    ] Published to order:TM08202202260831181705379: {'server_response': '{"SectionStatus": {"SubHeader": "Please Pick the Products and close the door", "Note": "Please Close the door after picking up products", "Header": "Please Close Door 1", "UI_Header": "DOOR 1\\nIS \\nOPEN \\nNOW"}, "status": "False", "rstatus": false, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "error": {"code": 20001, "data": {}, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "McVities Triple Nut Cookies 58gm", "qty": 1}, {"name": "Modern kitchens Garlic Mixture 26gm", "qty": 1}]}}', 'server_status': 'OrderStatus', 'timestamp': '2026-08-31T12:48:35.831684Z', 'order_id': 'TM08202202260831181705379'} (ID: 1788180515866-0)
[2026-08-31 18:18:36,557.557 INFO    ] {'server_response': {'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 1', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'status': 'False', 'rstatus': False, 'voiceNote': 'Please close door 1', 'SectionMain': {'Header': 'Door Open'}, 'error': {'code': 20001, 'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Triple Nut Cookies 58gm', 'qty': 1}, {'name': 'Modern kitchens Garlic Mixture 26gm', 'qty': 1}]}}, 'server_status': 'OrderStatus', 'order_id': 'TM08202202260831181705379'}
[2026-08-31 18:18:36,560.560 INFO    ] 200
[2026-08-31 18:18:36,563.563 INFO    ] {"data":{"server_response":{"SectionStatus":{"SubHeader":"Please Pick the Products and close the door","Note":"Please Close the door after picking up products","Header":"Please Close Door 1","UI_Header":"DOOR 1\nIS \nOPEN \nNOW"},"status":"false","rstatus":false,"voiceNote":"Please close door 1","SectionMain":{"Header":"Door Open"},"error":{"code":20001,"data":[],"umessage":"In Progress","tmessage":"In Progress"},"SectionSKU":{"Header":"Pick the below items from the door","skus":[{"name":"McVities Triple Nut Cookies 58gm","qty":1},{"name":"Modern kitchens Garlic Mixture 26gm","qty":1}]}},"server_status":"OrderStatus","order_id":"TM08202202260831181705379"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 18:18:36,566.566 INFO    ] {'response': {'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'msg': 'order updated successfully', 'status': True}, 'data': {'server_status': 'OrderStatus', 'order_id': 'TM08202202260831181705379', 'server_response': {'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 1', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Triple Nut Cookies 58gm', 'qty': 1}, {'name': 'Modern kitchens Garlic Mixture 26gm', 'qty': 1}]}, 'status': 'false', 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'error': {'code': 20001, 'data': [], 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'voiceNote': 'Please close door 1'}}}
[2026-08-31 18:18:36,573.573 INFO    ] {'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 1', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'status': 'False', 'rstatus': False, 'voiceNote': 'Please close door 1', 'SectionMain': {'Header': 'Door Open'}, 'error': {'code': 20001, 'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Triple Nut Cookies 58gm', 'qty': 1}, {'name': 'Modern kitchens Garlic Mixture 26gm', 'qty': 1}]}}
[2026-08-31 18:18:39,634.634 INFO    ] 200
[2026-08-31 18:18:39,637.637 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Triple Nut Cookies 58gm"}, {"qty": 1, "name": "Modern kitchens Garlic Mixture 26gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 18:18:39,640.640 INFO    ] {'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 1', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'status': 'False', 'rstatus': False, 'voiceNote': 'Please close door 1', 'SectionMain': {'Header': 'Door Open'}, 'error': {'code': 20001, 'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Triple Nut Cookies 58gm', 'qty': 1}, {'name': 'Modern kitchens Garlic Mixture 26gm', 'qty': 1}]}}
[2026-08-31 18:18:42,698.698 INFO    ] 200
[2026-08-31 18:18:42,701.701 INFO    ] {"SectionSKU": {"skus": [], "Header": "If you like us, tell others... else tell us"}, "voiceNote": "Transaction Completed", "SectionMain": {"Header": "Door Closed"}, "SectionStatus": {"Note": "If any due amount, clear at https://go.tinymart.in", "UI_Header": "", "SubHeader": "Please wait for invoice to generate", "Header": " Order is complete "}, "delay": 100, "status": "True", "rstatus": true}
[2026-08-31 18:18:42,704.704 INFO    ] {'delay': 100, 'SectionStatus': {'SubHeader': 'Please wait for invoice to generate', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'Header': ' Order is complete ', 'UI_Header': ''}, 'status': 'True', 'rstatus': True, 'voiceNote': 'Transaction Completed', 'SectionMain': {'Header': 'Door Closed'}, 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}}
[2026-08-31 18:18:42,708.708 INFO    ] 2026-08-31 18:18:42
[2026-08-31 18:18:42,711.711 INFO    ] Order Completed 
[2026-08-31 18:18:42,714.714 INFO    ] Order Completed 
[2026-08-31 18:18:42,716.716 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-08-31 18:18:42,720.720 INFO    ] 2026-08-31 18:18:42
[2026-08-31 18:18:42,722.722 INFO    ] playing audio file
[2026-08-31 18:18:42,741.741 INFO    ] 2026-08-31 18:18:42
[2026-08-31 18:18:42,745.745 INFO    ] {'delay': 100, 'SectionStatus': {'SubHeader': 'Please wait for invoice to generate', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'Header': ' Order is complete ', 'UI_Header': ''}, 'status': 'True', 'rstatus': True, 'voiceNote': 'Transaction Completed', 'SectionMain': {'Header': 'Door Closed'}, 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}}
[2026-08-31 18:18:42,748.748 INFO    ] 2026-08-31 18:18:42
[2026-08-31 18:18:44,111.111 INFO    ] 200
[2026-08-31 18:18:44,113.113 INFO    ] {"skus": [{"qty": 1, "image_url": "https://images.tinymart.in/product/4500714-2989.png", "sku_total": 10.0, "mrp": "10", "tray_id": "14", "name": "McVities Triple Nut Cookies 58gm per peice", "skuid": "4500714", "unit_price": "10", "door_id": ""}, {"qty": 1, "image_url": "https://images.tinymart.in/product/4500672-7226.webp", "sku_total": 10.0, "mrp": "10", "tray_id": "24", "name": "Modern kitchens Garlic Mixture 26gm per peice", "skuid": "4500672", "unit_price": "10", "door_id": ""}], "anomaly": 0, "orderId": "TM08202202260831181705379", "res": "True", "logic": "WBL", "total_amount": 20.0, "rstatus": true}
[2026-08-31 18:18:44,116.116 INFO    ] {'res': 'True', 'logic': 'WBL', 'total_amount': 20.0, 'orderId': 'TM08202202260831181705379', 'anomaly': 0, 'rstatus': True, 'skus': [{'mrp': '10', 'image_url': 'https://images.tinymart.in/product/4500714-2989.png', 'door_id': '', 'sku_total': 10.0, 'skuid': '4500714', 'name': 'McVities Triple Nut Cookies 58gm per peice', 'tray_id': '14', 'unit_price': '10', 'qty': 1}, {'mrp': '10', 'image_url': 'https://images.tinymart.in/product/4500672-7226.webp', 'door_id': '', 'sku_total': 10.0, 'skuid': '4500672', 'name': 'Modern kitchens Garlic Mixture 26gm per peice', 'tray_id': '24', 'unit_price': '10', 'qty': 1}]}
[2026-08-31 18:18:44,120.120 INFO    ] {'res': 'True', 'logic': 'WBL', 'total_amount': 20.0, 'orderId': 'TM08202202260831181705379', 'anomaly': 0, 'rstatus': True, 'skus': [{'mrp': '10', 'image_url': 'https://images.tinymart.in/product/4500714-2989.png', 'door_id': '', 'sku_total': 10.0, 'skuid': '4500714', 'name': 'McVities Triple Nut Cookies 58gm per peice', 'tray_id': '14', 'unit_price': '10', 'qty': 1}, {'mrp': '10', 'image_url': 'https://images.tinymart.in/product/4500672-7226.webp', 'door_id': '', 'sku_total': 10.0, 'skuid': '4500672', 'name': 'Modern kitchens Garlic Mixture 26gm per peice', 'tray_id': '24', 'unit_price': '10', 'qty': 1}]}
[2026-08-31 18:18:44,123.123 INFO    ] 2026-08-31 18:18:44
[2026-08-31 18:18:44,126.126 INFO    ] 2026-08-31 18:18:44
[2026-08-31 18:18:44,128.128 INFO    ] 20
[2026-08-31 18:18:44,132.132 INFO    ] 2026-08-31 18:18:44
[2026-08-31 18:18:44,135.135 INFO    ] 2026-08-31 18:18:44
[2026-08-31 18:18:44,138.138 INFO    ]  Your Bill Amount is 20
[2026-08-31 18:18:44,142.142 INFO    ]  Your Bill Amount is 20
[2026-08-31 18:18:44,144.144 INFO    ] 69e7720cf62ffa67ab0522541575e508
[2026-08-31 18:18:44,147.147 INFO    ] 2026-08-31 18:18:44
[2026-08-31 18:18:44,150.150 INFO    ] playing audio file
[2026-08-31 18:18:44,169.169 INFO    ] 2026-08-31 18:18:44
[2026-08-31 18:18:44,173.173 INFO    ] 2026-08-31 18:18:44
[2026-08-31 18:18:44,176.176 INFO    ] publish_status: order_id=TM08202202260831181705379
[2026-08-31 18:18:44,180.180 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831181705379
[2026-08-31 18:18:44,287.287 INFO    ] [publish_status] Message added to stream with ID: 1788180524243-0
[2026-08-31 18:18:44,290.290 INFO    ] Published to order:TM08202202260831181705379: {'server_response': '{"res": "True", "logic": "WBL", "total_amount": 20.0, "orderId": "TM08202202260831181705379", "anomaly": 0, "rstatus": true, "skus": [{"mrp": "10", "image_url": "https://images.tinymart.in/product/4500714-2989.png", "door_id": "", "sku_total": 10.0, "skuid": "4500714", "name": "McVities Triple Nut Cookies 58gm per peice", "tray_id": "14", "unit_price": "10", "qty": 1}, {"mrp": "10", "image_url": "https://images.tinymart.in/product/4500672-7226.webp", "door_id": "", "sku_total": 10.0, "skuid": "4500672", "name": "Modern kitchens Garlic Mixture 26gm per peice", "tray_id": "24", "unit_price": "10", "qty": 1}]}', 'server_status': 'invoiceOrder', 'timestamp': '2026-08-31T12:48:44.174410Z', 'order_id': 'TM08202202260831181705379'} (ID: 1788180524243-0)
[2026-08-31 18:18:44,858.858 INFO    ] {'server_response': {'res': 'True', 'logic': 'WBL', 'total_amount': 20.0, 'orderId': 'TM08202202260831181705379', 'anomaly': 0, 'rstatus': True, 'skus': [{'mrp': '10', 'image_url': 'https://images.tinymart.in/product/4500714-2989.png', 'door_id': '', 'sku_total': 10.0, 'skuid': '4500714', 'name': 'McVities Triple Nut Cookies 58gm per peice', 'tray_id': '14', 'unit_price': '10', 'qty': 1}, {'mrp': '10', 'image_url': 'https://images.tinymart.in/product/4500672-7226.webp', 'door_id': '', 'sku_total': 10.0, 'skuid': '4500672', 'name': 'Modern kitchens Garlic Mixture 26gm per peice', 'tray_id': '24', 'unit_price': '10', 'qty': 1}]}, 'server_status': 'invoiceOrder', 'order_id': 'TM08202202260831181705379'}
[2026-08-31 18:18:44,861.861 INFO    ] 200
[2026-08-31 18:18:44,863.863 INFO    ] {"data":{"server_response":{"res":"true","logic":"WBL","total_amount":20,"orderId":"TM08202202260831181705379","anomaly":0,"rstatus":true,"skus":[{"mrp":"10","image_url":"https:\/\/images.tinymart.in\/product\/4500714-2989.png","door_id":"","sku_total":10,"skuid":"4500714","name":"McVities Triple Nut Cookies 58gm per peice","tray_id":"14","unit_price":"10","qty":1},{"mrp":"10","image_url":"https:\/\/images.tinymart.in\/product\/4500672-7226.webp","door_id":"","sku_total":10,"skuid":"4500672","name":"Modern kitchens Garlic Mixture 26gm per peice","tray_id":"24","unit_price":"10","qty":1}]},"server_status":"invoiceOrder","order_id":"TM08202202260831181705379"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 18:18:44,866.866 INFO    ] {'response': {'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'msg': 'order updated successfully', 'status': True}, 'data': {'server_status': 'invoiceOrder', 'order_id': 'TM08202202260831181705379', 'server_response': {'res': 'true', 'logic': 'WBL', 'rstatus': True, 'orderId': 'TM08202202260831181705379', 'anomaly': 0, 'skus': [{'mrp': '10', 'image_url': 'https://images.tinymart.in/product/4500714-2989.png', 'sku_total': 10, 'skuid': '4500714', 'qty': 1, 'name': 'McVities Triple Nut Cookies 58gm per peice', 'tray_id': '14', 'unit_price': '10', 'door_id': ''}, {'mrp': '10', 'image_url': 'https://images.tinymart.in/product/4500672-7226.webp', 'sku_total': 10, 'skuid': '4500672', 'qty': 1, 'name': 'Modern kitchens Garlic Mixture 26gm per peice', 'tray_id': '24', 'unit_price': '10', 'door_id': ''}], 'total_amount': 20}}}
[2026-08-31 18:18:44,869.869 INFO    ] {'response': {'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'msg': 'order updated successfully', 'status': True}, 'data': {'server_status': 'invoiceOrder', 'order_id': 'TM08202202260831181705379', 'server_response': {'res': 'true', 'logic': 'WBL', 'rstatus': True, 'orderId': 'TM08202202260831181705379', 'anomaly': 0, 'skus': [{'mrp': '10', 'image_url': 'https://images.tinymart.in/product/4500714-2989.png', 'sku_total': 10, 'skuid': '4500714', 'qty': 1, 'name': 'McVities Triple Nut Cookies 58gm per peice', 'tray_id': '14', 'unit_price': '10', 'door_id': ''}, {'mrp': '10', 'image_url': 'https://images.tinymart.in/product/4500672-7226.webp', 'sku_total': 10, 'skuid': '4500672', 'qty': 1, 'name': 'Modern kitchens Garlic Mixture 26gm per peice', 'tray_id': '24', 'unit_price': '10', 'door_id': ''}], 'total_amount': 20}}}
[2026-08-31 18:18:44,871.871 INFO    ] 2026-08-31 18:18:44
[2026-08-31 18:18:46,709.709 INFO    ] 200
[2026-08-31 18:18:46,712.712 INFO    ] {"tray_sync": [], "order_items": [], "orders_data": [], "orders_synced": [], "tray_synced": ["TM08202202260831181705379", "TM08202202260831181705379", "TM08202202260831181705379", "TM08202202260831181705379", "TM08202202260831181705379", "TM08202202260831181705379", "TM08202202260831181705379", "TM08202202260831181705379", "TM08202202260831181705379", "TM08202202260831181705379", "TM08202202260831181705379", "TM08202202260831181705379", "TM08202202260831181705379", "TM08202202260831181705379", "TM08202202260831181705379", "TM08202202260831181705379", "TM08202202260831181705379", "TM08202202260831181705379", "TM08202202260831181705379", "TM08202202260831181705379", "TM08202202260831181705379", "TM08202202260831181705379", "TM08202202260831181705379", "TM08202202260831181705379", "TM08202202260831181705379", "TM08202202260831181705379", "TM08202202260831181705379", "TM08202202260831181705379", "TM08202202260831181705379", "TM08202202260831181705379", "TM08202202260831181705379", "TM08202202260831181705379"], "orders_data_synced": [], "status": true, "order_items_synced": [], "orders": []}
[2026-08-31 18:18:46,714.714 INFO    ] 2026-08-31 18:18:46
[2026-08-31 18:18:46,874.874 INFO    ] 200
[2026-08-31 18:18:46,877.877 INFO    ] True
[2026-08-31 18:18:46,879.879 INFO    ] cleanup_start_order_file_after_processing: order_id=TM08202202260831181705379
[2026-08-31 18:18:46,883.883 INFO    ] start order file deleted
[2026-08-31 18:18:46,885.885 INFO    ] Checking for system updates...
[2026-08-31 18:18:46,919.919 INFO    ] 200
[2026-08-31 18:18:46,922.922 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:18:46,983.983 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:18:46,985.985 INFO    ] No update needed
[2026-08-31 18:18:46,988.988 INFO    ] Checking for camera pi updates...
[2026-08-31 18:18:47,025.025 INFO    ] 200
[2026-08-31 18:18:47,028.028 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:18:47,074.074 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:18:47,231.231 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:18:47,234.234 INFO    ] No camera update needed
[2026-08-31 18:18:47,236.236 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:18:47,239.239 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:18:47,245.245 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:18:47,250.250 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:18:49,294.294 INFO    ] ================================================
[2026-08-31 18:18:49,309.309 INFO    ] Launching Daemon at Mon Aug 31 18:18:49 IST 2026
[2026-08-31 18:18:49,320.320 INFO    ] ================================================
[2026-08-31 18:18:49,896.896 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:18:49
[2026-08-31 18:18:50,480.480 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:18:50,739.739 INFO    ] Initializing speech engine...
[2026-08-31 18:18:50,759.759 INFO    ] 2026-08-31 18:18:50
[2026-08-31 18:18:51,009.009 INFO    ] 2026-08-31 18:18:51
[2026-08-31 18:18:51,044.044 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:18:51,303.303 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:18:51,312.312 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:18:51,536.536 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:18:51,579.579 INFO    ] time= 31/08/2026 18:18:51
[2026-08-31 18:18:51,585.585 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:18:51,603.603 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:18:51,733.733 INFO    ] Found 1 existing command(s) in stream
[2026-08-31 18:18:51,769.769 INFO    ] Checking historical command: ID=1788180521105-0
[2026-08-31 18:18:51,818.818 INFO    ] process_and_cleanup_command: msg_id=1788180521105-0
[2026-08-31 18:18:51,852.852 INFO    ] is_command_expired: timestamp=2026-08-31T12:48:41.532Z, expiry=30s
[2026-08-31 18:18:52,079.079 INFO    ] Command removed from stream: 1788180521105-0. returning for processing...
[2026-08-31 18:18:52,082.082 INFO    ] ***** get_valid_command
[2026-08-31 18:18:52,085.085 INFO    ] {'timestamp': '2026-08-31T12:48:41.532Z', 'command': 'start-order', 'source': 'webapp', 'timeout': '10', 'data': '{"request_id":"start-order-1788180521531-00mg9m9tq","orderId":"TM08202202260831181629964","is_vending":false}'}
[2026-08-31 18:18:52,088.088 INFO    ] ***** Parsed command data: {'is_vending': False, 'request_id': 'start-order-1788180521531-00mg9m9tq', 'orderId': 'TM08202202260831181629964'}
[2026-08-31 18:18:52,151.151 INFO    ] Handling start order...
[2026-08-31 18:18:52,219.219 INFO    ] handle_start_order_command
[2026-08-31 18:18:52,278.278 INFO    ] _send_start_order_success: request_id=start-order-1788180521531-00mg9m9tq, order_id=TM08202202260831181629964
[2026-08-31 18:18:52,281.281 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM08202202
[2026-08-31 18:18:52,356.356 INFO    ] [_send_start_order_success] Message added to stream with ID: 1788180532309-0
[2026-08-31 18:18:52,361.361 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-08-31 18:18:52,366.366 INFO    ] Checking for system updates...
[2026-08-31 18:18:52,470.470 INFO    ] 200
[2026-08-31 18:18:52,505.505 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:18:52,576.576 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:18:52,581.581 INFO    ] No update needed
[2026-08-31 18:18:52,587.587 INFO    ] Checking for camera pi updates...
[2026-08-31 18:18:52,625.625 INFO    ] 200
[2026-08-31 18:18:52,631.631 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:18:52,676.676 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:18:52,769.769 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:18:52,777.777 INFO    ] No camera update needed
[2026-08-31 18:18:52,784.784 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:18:52,793.793 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:18:52,800.800 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:18:52,805.805 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-31 18:18:52,910.910 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:18:54,975.975 INFO    ] ================================================
[2026-08-31 18:18:54,990.990 INFO    ] Launching Daemon at Mon Aug 31 18:18:54 IST 2026
[2026-08-31 18:18:55,001.001 INFO    ] ================================================
[2026-08-31 18:18:55,580.580 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:18:55
[2026-08-31 18:18:56,172.172 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:18:56,437.437 INFO    ] Initializing speech engine...
[2026-08-31 18:18:56,456.456 INFO    ] 2026-08-31 18:18:56
[2026-08-31 18:18:56,706.706 INFO    ] 2026-08-31 18:18:56
[2026-08-31 18:18:56,742.742 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:18:57,000.000 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:18:57,008.008 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:18:57,144.144 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:18:57,186.186 INFO    ] time= 31/08/2026 18:18:57
[2026-08-31 18:18:57,230.230 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:18:57,281.281 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:18:57,355.355 INFO    ] Found 2 existing command(s) in stream
[2026-08-31 18:18:57,414.414 INFO    ] Checking historical command: ID=1788180532309-0
[2026-08-31 18:18:57,446.446 INFO    ] process_and_cleanup_command: msg_id=1788180532309-0
[2026-08-31 18:18:57,494.494 INFO    ] is_command_expired: timestamp=2026-08-31T12:48:52.279337Z, expiry=30s
[2026-08-31 18:18:57,726.726 INFO    ] Command removed from stream: 1788180532309-0. returning for processing...
[2026-08-31 18:18:57,771.771 INFO    ] ***** get_valid_command
[2026-08-31 18:18:57,774.774 INFO    ] {'message': 'start-order success', 'message_type': 'command_response', 'timestamp': '2026-08-31T12:48:52.279337Z', 'imei': 'TM08202202', 'metadata_request_id': 'start-order-1788180521531-00mg9m9tq', 'metadata_order_id': 'TM08202202260831181629964', 'status': 'success'}
[2026-08-31 18:18:57,784.784 INFO    ] Checking historical command: ID=1788180535785-0
[2026-08-31 18:18:57,787.787 INFO    ] process_and_cleanup_command: msg_id=1788180535785-0
[2026-08-31 18:18:57,790.790 INFO    ] is_command_expired: timestamp=2026-08-31T12:48:56.211Z, expiry=30s
[2026-08-31 18:18:57,919.919 INFO    ] Command removed from stream: 1788180535785-0. returning for processing...
[2026-08-31 18:18:57,925.925 INFO    ] ***** get_valid_command
[2026-08-31 18:18:57,928.928 INFO    ] {'timestamp': '2026-08-31T12:48:56.211Z', 'data': '{"request_id":"process-order-1788180536211-a526ctrha","orderId":"TM08202202260831181629964","is_vending":false,"accessCode":"48525969"}', 'source': 'webapp', 'timeout': '60', 'command': 'process-order'}
[2026-08-31 18:18:57,972.972 INFO    ] ***** Parsed command data: {'request_id': 'process-order-1788180536211-a526ctrha', 'accessCode': '48525969', 'is_vending': False, 'orderId': 'TM08202202260831181629964'}
[2026-08-31 18:18:57,983.983 INFO    ] Handling process order...
[2026-08-31 18:18:57,986.986 INFO    ] Processing process-order command...
[2026-08-31 18:18:58,000.000 INFO    ] 🔍 Lock file Order ID: TM08202202260831181629964, TS: 2026-08-31 18:18:52
[2026-08-31 18:18:58,054.054 INFO    ] ✅ Order lock valid for TM08202202260831181629964
[2026-08-31 18:18:58,059.059 INFO    ] Received access code in process-order, skipping PHP API call
[2026-08-31 18:18:58,063.063 INFO    ] processing access code 48525969 for order TM08202202260831181629964
[2026-08-31 18:18:58,068.068 INFO    ] 🔍 Lock file Order ID: TM08202202260831181629964, TS: 2026-08-31 18:18:52
[2026-08-31 18:18:58,073.073 INFO    ] ✅ Order lock valid for TM08202202260831181629964
[2026-08-31 18:18:58,078.078 INFO    ] 2026-08-31 18:18:58
[2026-08-31 18:18:58,188.188 INFO    ] 200
[2026-08-31 18:18:58,232.232 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:18:58,238.238 INFO    ] 48525969
[2026-08-31 18:18:58,244.244 INFO    ] 2026-08-31 18:18:58
[2026-08-31 18:18:58,252.252 INFO    ] session id :166279445
[2026-08-31 18:18:58,258.258 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=48525969&imei=TM08202202&session_id=166279445
[2026-08-31 18:18:58,954.954 INFO    ] 200
[2026-08-31 18:18:58,960.960 INFO    ] {"msg": "Order Data", "data": {"access_code": "48525969", "invoice_bill": "120.0", "mobile": "8073428924", "order_id": "TM08202202260831181629964", "bill_amount": "120.0", "proposed_sku_json": [{"qty": 1, "offer_desc": "", "image_url": "https://images.tinymart.in/product/4500681-9948.webp", "sku_total": 10, "mrp": "10", "tray_id": "16", "name": "McVities Orange Cream Biscuts 61gm", "offer_id": "", "skuid": "4500681", "unit_price": 10, "door_id": "1"}, {"qty": 1, "offer_desc": "", "image_url": "https://images.tinymart.in/product/4500723-3888.png", "sku_total": 10, "mrp": "10", "tray_id": "23", "name": "MaxVita Moong daal 25gm", "offer_id": "", "skuid": "4500723", "unit_price": 10, "door_id": "1"}, {"qty": 1, "offer_desc": "", "image_url": "https://images.tinymart.in/product/186100-6904.jpg", "sku_total": 20, "mrp": "20", "tray_id": "25", "name": "Too Yumm Crea onion 33gm", "offer_id": "", "skuid": "186100", "unit_price": 20, "door_id": "1"}, {"qty": 1, "offer_desc": "", "image_url": "https://images.tinymart.in/product/186084-5395.png", "sku_total": 30, "mrp": "30", "tray_id": "42", "name": "KITKAT Nestle 4 Finger Chocolate 38g", "offer_id": "", "skuid": "186084", "unit_price": 30, "door_id": "2"}, {"qty": 2, "offer_desc": "", "image_url": "https://images.tinymart.in/product/185993-3509.webp", "sku_total": 40, "mrp": "20", "tray_id": "43", "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g", "offer_id": "", "skuid": "185993", "unit_price": 20, "door_id": "2"}, {"qty": 1, "offer_desc": "", "image_url": "https://images.tinymart.in/product/4500709-2651.webp", "sku_total": 10, "mrp": "10", "tray_id": "20", "name": "McVities Butter Jeera Cookies58gm", "offer_id": "", "skuid": "4500709", "unit_price": 10, "door_id": "1"}]}, "status": true, "rstatus": true}
[2026-08-31 18:18:58,966.966 INFO    ] 120
[2026-08-31 18:18:58,970.970 INFO    ] TM08202202260831181629964
[2026-08-31 18:18:58,975.975 INFO    ] 8073428924
[2026-08-31 18:18:58,980.980 INFO    ] 2026-08-31 18:18:58
[2026-08-31 18:18:58,986.986 INFO    ] Door Opening for user mobile ending with  eight nine two four 
[2026-08-31 18:18:58,991.991 INFO    ] Door Opening for user mobile ending with  eight nine two four 
[2026-08-31 18:18:58,996.996 INFO    ] 542c173dd5c2904b2cef6be438da21e1
[2026-08-31 18:18:59,001.001 INFO    ] 2026-08-31 18:18:58
[2026-08-31 18:18:59,007.007 INFO    ] creating audio file
[2026-08-31 18:18:59,880.880 INFO    ] Calling gTTS API with 60s timeout...
[2026-08-31 18:19:00,583.583 INFO    ] gTTS API call completed successfully
[2026-08-31 18:19:01,823.823 INFO    ] 2026-08-31 18:19:01
[2026-08-31 18:19:01,828.828 INFO    ] playing audio file
[2026-08-31 18:19:01,856.856 INFO    ] 2026-08-31 18:19:01
[2026-08-31 18:19:01,861.861 INFO    ] 2026-08-31 18:19:01
[2026-08-31 18:19:01,867.867 INFO    ] publish_status: order_id=TM08202202260831181629964
[2026-08-31 18:19:01,881.881 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831181629964
[2026-08-31 18:19:02,004.004 INFO    ] [publish_status] Message added to stream with ID: 1788180541952-0
[2026-08-31 18:19:02,017.017 INFO    ] Published to order:TM08202202260831181629964: {'timestamp': '2026-08-31T12:49:01.864398Z', 'server_status': 'order-started', 'order_id': 'TM08202202260831181629964', 'server_response': '{"rstatus": true, "data": {"invoice_bill": "120.0", "mobile": "8073428924", "proposed_sku_json": [{"offer_desc": "", "door_id": "1", "mrp": "10", "offer_id": "", "tray_id": "16", "sku_total": 10, "name": "McVities Orange Cream Biscuts 61gm", "qty": 1, "unit_price": 10, "skuid": "4500681", "image_url": "https://images.tinymart.in/product/4500681-9948.webp"}, {"offer_desc": "", "door_id": "1", "mrp": "10", "offer_id": "", "tray_id": "23", "sku_total": 10, "name": "MaxVita Moong daal 25gm", "qty": 1, "unit_price": 10, "skuid": "4500723", "image_url": "https://images.tinymart.in/product/4500723-3888.png"}, {"offer_desc": "", "door_id": "1", "mrp": "20", "offer_id": "", "tray_id": "25", "sku_total": 20, "name": "Too Yumm Crea onion 33gm", "qty": 1, "unit_price": 20, "skuid": "186100", "image_url": "https://images.tinymart.in/product/186100-6904.jpg"}, {"offer_desc": "", "door_id": "2", "mrp": "30", "offer_id": "", "tray_id": "42", "sku_total": 30, "name": "KITKAT Nestle 4 Finger Chocolate 38g", "qty": 1, "unit_price": 30, "skuid": "186084", "image_url": "https://images.tinymart.in/product/186084-5395.png"}, {"offer_desc": "", "door_id": "2", "mrp": "20", "offer_id": "", "tray_id": "43", "sku_total": 40, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g", "qty": 2, "unit_price": 20, "skuid": "185993", "image_url": "https://images.tinymart.in/product/185993-3509.webp"}, {"offer_desc": "", "door_id": "1", "mrp": "10", "offer_id": "", "tray_id": "20", "sku_total": 10, "name": "McVities Butter Jeera Cookies58gm", "qty": 1, "unit_price": 10, "skuid": "4500709", "image_url": "https://images.tinymart.in/product/4500709-2651.webp"}], "access_code": "48525969", "bill_amount": "120.0", "order_id": "TM08202202260831181629964"}, "msg": "Order Data", "status": true}'} (ID: 1788180541952-0)
[2026-08-31 18:19:02,688.688 INFO    ] {'server_status': 'order-started', 'order_id': 'TM08202202260831181629964', 'server_response': {'rstatus': True, 'data': {'invoice_bill': '120.0', 'mobile': '8073428924', 'proposed_sku_json': [{'offer_desc': '', 'door_id': '1', 'mrp': '10', 'offer_id': '', 'tray_id': '16', 'sku_total': 10, 'name': 'McVities Orange Cream Biscuts 61gm', 'qty': 1, 'unit_price': 10, 'skuid': '4500681', 'image_url': 'https://images.tinymart.in/product/4500681-9948.webp'}, {'offer_desc': '', 'door_id': '1', 'mrp': '10', 'offer_id': '', 'tray_id': '23', 'sku_total': 10, 'name': 'MaxVita Moong daal 25gm', 'qty': 1, 'unit_price': 10, 'skuid': '4500723', 'image_url': 'https://images.tinymart.in/product/4500723-3888.png'}, {'offer_desc': '', 'door_id': '1', 'mrp': '20', 'offer_id': '', 'tray_id': '25', 'sku_total': 20, 'name': 'Too Yumm Crea onion 33gm', 'qty': 1, 'unit_price': 20, 'skuid': '186100', 'image_url': 'https://images.tinymart.in/product/186100-6904.jpg'}, {'offer_desc': '', 'door_id': '2', 'mrp': '30', 'offer_id': '', 'tray_id': '42', 'sku_total': 30, 'name': 'KITKAT Nestle 4 Finger Chocolate 38g', 'qty': 1, 'unit_price': 30, 'skuid': '186084', 'image_url': 'https://images.tinymart.in/product/186084-5395.png'}, {'offer_desc': '', 'door_id': '2', 'mrp': '20', 'offer_id': '', 'tray_id': '43', 'sku_total': 40, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'qty': 2, 'unit_price': 20, 'skuid': '185993', 'image_url': 'https://images.tinymart.in/product/185993-3509.webp'}, {'offer_desc': '', 'door_id': '1', 'mrp': '10', 'offer_id': '', 'tray_id': '20', 'sku_total': 10, 'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1, 'unit_price': 10, 'skuid': '4500709', 'image_url': 'https://images.tinymart.in/product/4500709-2651.webp'}], 'access_code': '48525969', 'bill_amount': '120.0', 'order_id': 'TM08202202260831181629964'}, 'msg': 'Order Data', 'status': True}}
[2026-08-31 18:19:02,691.691 INFO    ] 200
[2026-08-31 18:19:02,695.695 INFO    ] {"data":{"server_status":"order-started","order_id":"TM08202202260831181629964","server_response":{"rstatus":true,"data":{"invoice_bill":"120.0","mobile":"8073428924","proposed_sku_json":[{"offer_desc":"","door_id":"1","mrp":"10","offer_id":"","tray_id":"16","sku_total":10,"name":"McVities Orange Cream Biscuts 61gm","qty":1,"unit_price":10,"skuid":"4500681","image_url":"https:\/\/images.tinymart.in\/product\/4500681-9948.webp"},{"offer_desc":"","door_id":"1","mrp":"10","offer_id":"","tray_id":"23","sku_total":10,"name":"MaxVita Moong daal 25gm","qty":1,"unit_price":10,"skuid":"4500723","image_url":"https:\/\/images.tinymart.in\/product\/4500723-3888.png"},{"offer_desc":"","door_id":"1","mrp":"20","offer_id":"","tray_id":"25","sku_total":20,"name":"Too Yumm Crea onion 33gm","qty":1,"unit_price":20,"skuid":"186100","image_url":"https:\/\/images.tinymart.in\/product\/186100-6904.jpg"},{"offer_desc":"","door_id":"2","mrp":"30","offer_id":"","tray_id":"42","sku_total":30,"name":"KITKAT Nestle 4 Finger Chocolate 38g","qty":1,"unit_price":30,"skuid":"186084","image_url":"https:\/\/images.tinymart.in\/product\/186084-5395.png"},{"offer_desc":"","door_id":"2","mrp":"20","offer_id":"","tray_id":"43","sku_total":40,"name":"NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g","qty":2,"unit_price":20,"skuid":"185993","image_url":"https:\/\/images.tinymart.in\/product\/185993-3509.webp"},{"offer_desc":"","door_id":"1","mrp":"10","offer_id":"","tray_id":"20","sku_total":10,"name":"McVities Butter Jeera Cookies58gm","qty":1,"unit_price":10,"skuid":"4500709","image_url":"https:\/\/images.tinymart.in\/product\/4500709-2651.webp"}],"access_code":"48525969","bill_amount":"120.0","order_id":"TM08202202260831181629964"},"msg":"Order Data","status":true}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 18:19:02,700.700 INFO    ] {'data': {'server_status': 'order-started', 'order_id': 'TM08202202260831181629964', 'server_response': {'rstatus': True, 'data': {'invoice_bill': '120.0', 'mobile': '8073428924', 'proposed_sku_json': [{'offer_desc': '', 'mrp': '10', 'door_id': '1', 'tray_id': '16', 'qty': 1, 'name': 'McVities Orange Cream Biscuts 61gm', 'sku_total': 10, 'unit_price': 10, 'skuid': '4500681', 'offer_id': '', 'image_url': 'https://images.tinymart.in/product/4500681-9948.webp'}, {'offer_desc': '', 'mrp': '10', 'door_id': '1', 'tray_id': '23', 'qty': 1, 'name': 'MaxVita Moong daal 25gm', 'sku_total': 10, 'unit_price': 10, 'skuid': '4500723', 'offer_id': '', 'image_url': 'https://images.tinymart.in/product/4500723-3888.png'}, {'offer_desc': '', 'mrp': '20', 'door_id': '1', 'tray_id': '25', 'qty': 1, 'name': 'Too Yumm Crea onion 33gm', 'sku_total': 20, 'unit_price': 20, 'skuid': '186100', 'offer_id': '', 'image_url': 'https://images.tinymart.in/product/186100-6904.jpg'}, {'offer_desc': '', 'mrp': '30', 'door_id': '2', 'tray_id': '42', 'qty': 1, 'name': 'KITKAT Nestle 4 Finger Chocolate 38g', 'sku_total': 30, 'unit_price': 30, 'skuid': '186084', 'offer_id': '', 'image_url': 'https://images.tinymart.in/product/186084-5395.png'}, {'offer_desc': '', 'mrp': '20', 'door_id': '2', 'tray_id': '43', 'qty': 2, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'sku_total': 40, 'unit_price': 20, 'skuid': '185993', 'offer_id': '', 'image_url': 'https://images.tinymart.in/product/185993-3509.webp'}, {'offer_desc': '', 'mrp': '10', 'door_id': '1', 'tray_id': '20', 'qty': 1, 'name': 'McVities Butter Jeera Cookies58gm', 'sku_total': 10, 'unit_price': 10, 'skuid': '4500709', 'offer_id': '', 'image_url': 'https://images.tinymart.in/product/4500709-2651.webp'}], 'access_code': '48525969', 'bill_amount': '120.0', 'order_id': 'TM08202202260831181629964'}, 'msg': 'Order Data', 'status': True}}, 'response': {'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'msg': 'order updated successfully', 'status': True}}
[2026-08-31 18:19:02,705.705 INFO    ] 2026-08-31 18:19:02
[2026-08-31 18:19:02,761.761 INFO    ] 200
[2026-08-31 18:19:02,764.764 INFO    ] True
[2026-08-31 18:19:02,976.976 INFO    ] 200
[2026-08-31 18:19:02,979.979 INFO    ] {"SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "voiceNote": "Please Wait", "SectionMain": {"Header": "Processing Order"}, "SectionStatus": {"Note": "", "UI_Header": "", "SubHeader": "Please wait while we process your order", "Header": " Your order is under process  "}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 18:19:02,984.984 INFO    ] {'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  ', 'Note': '', 'UI_Header': ''}, 'rstatus': False, 'voiceNote': 'Please Wait', 'SectionMain': {'Header': 'Processing Order'}, 'status': 'False', 'error': {'code': 20001, 'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress'}}
[2026-08-31 18:19:02,993.993 INFO    ] *** process_order ***
[2026-08-31 18:19:04,250.250 INFO    ] 200
[2026-08-31 18:19:04,252.252 INFO    ] {"SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "voiceNote": "Please Wait", "SectionMain": {"Header": "Processing Order"}, "SectionStatus": {"Note": "", "UI_Header": "", "SubHeader": "Please wait while we process your order", "Header": " Your order is under process  "}, "delay": 0, "status": "True", "rstatus": true}
[2026-08-31 18:19:04,256.256 INFO    ] {'delay': 0, 'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  ', 'Note': '', 'UI_Header': ''}, 'rstatus': True, 'voiceNote': 'Please Wait', 'SectionMain': {'Header': 'Processing Order'}, 'status': 'True', 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}}
[2026-08-31 18:19:04,259.259 INFO    ] *** process_order ***
[2026-08-31 18:19:04,262.262 INFO    ] publish_status: order_id=TM08202202260831181629964
[2026-08-31 18:19:04,265.265 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831181629964
[2026-08-31 18:19:04,352.352 INFO    ] [publish_status] Message added to stream with ID: 1788180544298-0
[2026-08-31 18:19:04,355.355 INFO    ] Published to order:TM08202202260831181629964: {'server_status': 'doorOpened', 'order_id': 'TM08202202260831181629964', 'server_response': '{"delay": 0, "SectionStatus": {"SubHeader": "You can pull the door now.", "Header": " Your order is under process  ", "Note": "", "UI_Header": ""}, "rstatus": true, "voiceNote": "Door is open...", "SectionMain": {"Header": "Processing Order"}, "status": "True", "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}}'} (ID: 1788180544298-0)
[2026-08-31 18:19:05,421.421 INFO    ] 2026-08-31 18:19:05
[2026-08-31 18:19:05,425.425 INFO    ] publish_status: order_id=TM08202202260831181629964
[2026-08-31 18:19:05,428.428 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831181629964
[2026-08-31 18:19:05,512.512 INFO    ] [publish_status] Message added to stream with ID: 1788180545466-0
[2026-08-31 18:19:05,514.514 INFO    ] Published to order:TM08202202260831181629964: {'timestamp': '2026-08-31T12:49:05.422684Z', 'server_status': 'processOrder', 'order_id': 'TM08202202260831181629964', 'server_response': '{"delay": 0, "SectionStatus": {"SubHeader": "Please wait while we process your order", "Header": " Your order is under process  ", "Note": "", "UI_Header": ""}, "rstatus": true, "voiceNote": "Please Wait", "SectionMain": {"Header": "Processing Order"}, "status": "True", "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}}'} (ID: 1788180545466-0)
[2026-08-31 18:19:05,685.685 INFO    ] {'server_status': 'processOrder', 'order_id': 'TM08202202260831181629964', 'server_response': {'delay': 0, 'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  ', 'Note': '', 'UI_Header': ''}, 'rstatus': True, 'voiceNote': 'Please Wait', 'SectionMain': {'Header': 'Processing Order'}, 'status': 'True', 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}}}
[2026-08-31 18:19:05,687.687 INFO    ] 200
[2026-08-31 18:19:05,690.690 INFO    ] {"data":{"server_status":"processOrder","order_id":"TM08202202260831181629964","server_response":{"delay":0,"SectionStatus":{"SubHeader":"Please wait while we process your order","Header":" Your order is under process  ","Note":"","UI_Header":""},"rstatus":true,"voiceNote":"Please Wait","SectionMain":{"Header":"Processing Order"},"status":"true","SectionSKU":{"Header":"Thank you for bearing with us :)","skus":[]}}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 18:19:05,692.692 INFO    ] {'data': {'server_status': 'processOrder', 'order_id': 'TM08202202260831181629964', 'server_response': {'delay': 0, 'voiceNote': 'Please Wait', 'rstatus': True, 'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  ', 'Note': '', 'UI_Header': ''}, 'SectionMain': {'Header': 'Processing Order'}, 'status': 'true', 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}}}, 'response': {'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'msg': 'order updated successfully', 'status': True}}
[2026-08-31 18:19:05,695.695 INFO    ] 2026-08-31 18:19:05
[2026-08-31 18:19:05,697.697 INFO    ] None
[2026-08-31 18:19:05,700.700 INFO    ] Opening Door now
[2026-08-31 18:19:05,702.702 INFO    ] Opening Door now
[2026-08-31 18:19:05,705.705 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-08-31 18:19:05,708.708 INFO    ] 2026-08-31 18:19:05
[2026-08-31 18:19:05,710.710 INFO    ] playing audio file
[2026-08-31 18:19:05,728.728 INFO    ] 2026-08-31 18:19:05
[2026-08-31 18:19:05,732.732 INFO    ] 2026-08-31 18:19:05
[2026-08-31 18:19:08,838.838 INFO    ] 200
[2026-08-31 18:19:08,840.840 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Orange Cream Biscuts 61gm"}, {"qty": 1, "name": "MaxVita Moong daal 25gm"}, {"qty": 1, "name": "Too Yumm Crea onion 33gm"}, {"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Door 1 is open now", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 18:19:08,843.843 INFO    ] {'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Orange Cream Biscuts 61gm', 'qty': 1}, {'name': 'MaxVita Moong daal 25gm', 'qty': 1}, {'name': 'Too Yumm Crea onion 33gm', 'qty': 1}, {'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'rstatus': False, 'voiceNote': 'Door 1 is open now', 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'error': {'code': 20001, 'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress'}}
[2026-08-31 18:19:11,927.927 INFO    ] 200
[2026-08-31 18:19:11,930.930 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Orange Cream Biscuts 61gm"}, {"qty": 1, "name": "MaxVita Moong daal 25gm"}, {"qty": 1, "name": "Too Yumm Crea onion 33gm"}, {"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 18:19:11,933.933 INFO    ] {'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Orange Cream Biscuts 61gm', 'qty': 1}, {'name': 'MaxVita Moong daal 25gm', 'qty': 1}, {'name': 'Too Yumm Crea onion 33gm', 'qty': 1}, {'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'rstatus': False, 'voiceNote': 'Please close door 1', 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'error': {'code': 20001, 'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress'}}
[2026-08-31 18:19:15,010.010 INFO    ] 200
[2026-08-31 18:19:15,012.012 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Orange Cream Biscuts 61gm"}, {"qty": 1, "name": "MaxVita Moong daal 25gm"}, {"qty": 1, "name": "Too Yumm Crea onion 33gm"}, {"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 18:19:15,015.015 INFO    ] Please close door 1
[2026-08-31 18:19:15,018.018 INFO    ] Please close door 1
[2026-08-31 18:19:15,021.021 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-08-31 18:19:15,023.023 INFO    ] 2026-08-31 18:19:15
[2026-08-31 18:19:15,026.026 INFO    ] playing audio file
[2026-08-31 18:19:15,045.045 INFO    ] 2026-08-31 18:19:15
[2026-08-31 18:19:15,048.048 INFO    ] publish_status: order_id=TM08202202260831181629964
[2026-08-31 18:19:15,051.051 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831181629964
[2026-08-31 18:19:15,158.158 INFO    ] [publish_status] Message added to stream with ID: 1788180555099-0
[2026-08-31 18:19:15,160.160 INFO    ] Published to order:TM08202202260831181629964: {'timestamp': '2026-08-31T12:49:15.046954Z', 'server_status': 'OrderStatus', 'order_id': 'TM08202202260831181629964', 'server_response': '{"SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "McVities Orange Cream Biscuts 61gm", "qty": 1}, {"name": "MaxVita Moong daal 25gm", "qty": 1}, {"name": "Too Yumm Crea onion 33gm", "qty": 1}, {"name": "McVities Butter Jeera Cookies58gm", "qty": 1}]}, "SectionStatus": {"SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\\nIS \\nOPEN \\nNOW"}, "rstatus": false, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "status": "False", "error": {"code": 20001, "tmessage": "In Progress", "data": {}, "umessage": "In Progress"}}'} (ID: 1788180555099-0)
[2026-08-31 18:19:15,722.722 INFO    ] {'server_status': 'OrderStatus', 'order_id': 'TM08202202260831181629964', 'server_response': {'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Orange Cream Biscuts 61gm', 'qty': 1}, {'name': 'MaxVita Moong daal 25gm', 'qty': 1}, {'name': 'Too Yumm Crea onion 33gm', 'qty': 1}, {'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'rstatus': False, 'voiceNote': 'Please close door 1', 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'error': {'code': 20001, 'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress'}}}
[2026-08-31 18:19:15,725.725 INFO    ] 200
[2026-08-31 18:19:15,727.727 INFO    ] {"data":{"server_status":"OrderStatus","order_id":"TM08202202260831181629964","server_response":{"SectionSKU":{"Header":"Pick the below items from the door","skus":[{"name":"McVities Orange Cream Biscuts 61gm","qty":1},{"name":"MaxVita Moong daal 25gm","qty":1},{"name":"Too Yumm Crea onion 33gm","qty":1},{"name":"McVities Butter Jeera Cookies58gm","qty":1}]},"SectionStatus":{"SubHeader":"Please Pick the Products and close the door","Header":"Please Close Door 1","Note":"Please Close the door after picking up products","UI_Header":"DOOR 1\nIS \nOPEN \nNOW"},"rstatus":false,"voiceNote":"Please close door 1","SectionMain":{"Header":"Door Open"},"status":"false","error":{"code":20001,"tmessage":"In Progress","data":[],"umessage":"In Progress"}}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 18:19:15,730.730 INFO    ] {'data': {'server_status': 'OrderStatus', 'order_id': 'TM08202202260831181629964', 'server_response': {'voiceNote': 'Please close door 1', 'error': {'code': 20001, 'tmessage': 'In Progress', 'data': [], 'umessage': 'In Progress'}, 'rstatus': False, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'false', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Orange Cream Biscuts 61gm', 'qty': 1}, {'name': 'MaxVita Moong daal 25gm', 'qty': 1}, {'name': 'Too Yumm Crea onion 33gm', 'qty': 1}, {'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}}}, 'response': {'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'msg': 'order updated successfully', 'status': True}}
[2026-08-31 18:19:15,733.733 INFO    ] {'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Orange Cream Biscuts 61gm', 'qty': 1}, {'name': 'MaxVita Moong daal 25gm', 'qty': 1}, {'name': 'Too Yumm Crea onion 33gm', 'qty': 1}, {'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'rstatus': False, 'voiceNote': 'Please close door 1', 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'error': {'code': 20001, 'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress'}}
[2026-08-31 18:19:18,817.817 INFO    ] 200
[2026-08-31 18:19:18,820.820 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Orange Cream Biscuts 61gm"}, {"qty": 1, "name": "MaxVita Moong daal 25gm"}, {"qty": 1, "name": "Too Yumm Crea onion 33gm"}, {"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 18:19:18,823.823 INFO    ] {'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Orange Cream Biscuts 61gm', 'qty': 1}, {'name': 'MaxVita Moong daal 25gm', 'qty': 1}, {'name': 'Too Yumm Crea onion 33gm', 'qty': 1}, {'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'rstatus': False, 'voiceNote': 'Please close door 1', 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'error': {'code': 20001, 'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress'}}
[2026-08-31 18:19:21,872.872 INFO    ] 200
[2026-08-31 18:19:21,875.875 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Orange Cream Biscuts 61gm"}, {"qty": 1, "name": "MaxVita Moong daal 25gm"}, {"qty": 1, "name": "Too Yumm Crea onion 33gm"}, {"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 18:19:21,878.878 INFO    ] {'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Orange Cream Biscuts 61gm', 'qty': 1}, {'name': 'MaxVita Moong daal 25gm', 'qty': 1}, {'name': 'Too Yumm Crea onion 33gm', 'qty': 1}, {'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'rstatus': False, 'voiceNote': 'Please close door 1', 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'error': {'code': 20001, 'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress'}}
[2026-08-31 18:19:24,935.935 INFO    ] 200
[2026-08-31 18:19:24,938.938 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Orange Cream Biscuts 61gm"}, {"qty": 1, "name": "MaxVita Moong daal 25gm"}, {"qty": 1, "name": "Too Yumm Crea onion 33gm"}, {"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 18:19:24,941.941 INFO    ] Please close door 1
[2026-08-31 18:19:24,943.943 INFO    ] Please close door 1
[2026-08-31 18:19:24,946.946 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-08-31 18:19:24,948.948 INFO    ] 2026-08-31 18:19:24
[2026-08-31 18:19:24,951.951 INFO    ] playing audio file
[2026-08-31 18:19:24,968.968 INFO    ] 2026-08-31 18:19:24
[2026-08-31 18:19:24,972.972 INFO    ] publish_status: order_id=TM08202202260831181629964
[2026-08-31 18:19:24,975.975 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831181629964
[2026-08-31 18:19:25,072.072 INFO    ] [publish_status] Message added to stream with ID: 1788180565017-0
[2026-08-31 18:19:25,075.075 INFO    ] Published to order:TM08202202260831181629964: {'timestamp': '2026-08-31T12:49:24.970483Z', 'server_status': 'OrderStatus', 'order_id': 'TM08202202260831181629964', 'server_response': '{"SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "McVities Orange Cream Biscuts 61gm", "qty": 1}, {"name": "MaxVita Moong daal 25gm", "qty": 1}, {"name": "Too Yumm Crea onion 33gm", "qty": 1}, {"name": "McVities Butter Jeera Cookies58gm", "qty": 1}]}, "SectionStatus": {"SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\\nIS \\nOPEN \\nNOW"}, "rstatus": false, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "status": "False", "error": {"code": 20001, "tmessage": "In Progress", "data": {}, "umessage": "In Progress"}}'} (ID: 1788180565017-0)
[2026-08-31 18:19:25,644.644 INFO    ] {'server_status': 'OrderStatus', 'order_id': 'TM08202202260831181629964', 'server_response': {'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Orange Cream Biscuts 61gm', 'qty': 1}, {'name': 'MaxVita Moong daal 25gm', 'qty': 1}, {'name': 'Too Yumm Crea onion 33gm', 'qty': 1}, {'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'rstatus': False, 'voiceNote': 'Please close door 1', 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'error': {'code': 20001, 'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress'}}}
[2026-08-31 18:19:25,647.647 INFO    ] 200
[2026-08-31 18:19:25,649.649 INFO    ] {"data":{"server_status":"OrderStatus","order_id":"TM08202202260831181629964","server_response":{"SectionSKU":{"Header":"Pick the below items from the door","skus":[{"name":"McVities Orange Cream Biscuts 61gm","qty":1},{"name":"MaxVita Moong daal 25gm","qty":1},{"name":"Too Yumm Crea onion 33gm","qty":1},{"name":"McVities Butter Jeera Cookies58gm","qty":1}]},"SectionStatus":{"SubHeader":"Please Pick the Products and close the door","Header":"Please Close Door 1","Note":"Please Close the door after picking up products","UI_Header":"DOOR 1\nIS \nOPEN \nNOW"},"rstatus":false,"voiceNote":"Please close door 1","SectionMain":{"Header":"Door Open"},"status":"false","error":{"code":20001,"tmessage":"In Progress","data":[],"umessage":"In Progress"}}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 18:19:25,653.653 INFO    ] {'data': {'server_status': 'OrderStatus', 'order_id': 'TM08202202260831181629964', 'server_response': {'voiceNote': 'Please close door 1', 'error': {'code': 20001, 'tmessage': 'In Progress', 'data': [], 'umessage': 'In Progress'}, 'rstatus': False, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'false', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Orange Cream Biscuts 61gm', 'qty': 1}, {'name': 'MaxVita Moong daal 25gm', 'qty': 1}, {'name': 'Too Yumm Crea onion 33gm', 'qty': 1}, {'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}}}, 'response': {'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'msg': 'order updated successfully', 'status': True}}
[2026-08-31 18:19:25,656.656 INFO    ] {'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Orange Cream Biscuts 61gm', 'qty': 1}, {'name': 'MaxVita Moong daal 25gm', 'qty': 1}, {'name': 'Too Yumm Crea onion 33gm', 'qty': 1}, {'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'rstatus': False, 'voiceNote': 'Please close door 1', 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'error': {'code': 20001, 'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress'}}
[2026-08-31 18:19:28,745.745 INFO    ] 200
[2026-08-31 18:19:28,748.748 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Orange Cream Biscuts 61gm"}, {"qty": 1, "name": "MaxVita Moong daal 25gm"}, {"qty": 1, "name": "Too Yumm Crea onion 33gm"}, {"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 18:19:28,751.751 INFO    ] {'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Orange Cream Biscuts 61gm', 'qty': 1}, {'name': 'MaxVita Moong daal 25gm', 'qty': 1}, {'name': 'Too Yumm Crea onion 33gm', 'qty': 1}, {'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'rstatus': False, 'voiceNote': 'Please close door 1', 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'error': {'code': 20001, 'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress'}}
[2026-08-31 18:19:31,842.842 INFO    ] 200
[2026-08-31 18:19:31,846.846 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Orange Cream Biscuts 61gm"}, {"qty": 1, "name": "MaxVita Moong daal 25gm"}, {"qty": 1, "name": "Too Yumm Crea onion 33gm"}, {"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 18:19:31,849.849 INFO    ] {'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Orange Cream Biscuts 61gm', 'qty': 1}, {'name': 'MaxVita Moong daal 25gm', 'qty': 1}, {'name': 'Too Yumm Crea onion 33gm', 'qty': 1}, {'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'rstatus': False, 'voiceNote': 'Please close door 1', 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'error': {'code': 20001, 'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress'}}
[2026-08-31 18:19:34,935.935 INFO    ] 200
[2026-08-31 18:19:34,938.938 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Orange Cream Biscuts 61gm"}, {"qty": 1, "name": "MaxVita Moong daal 25gm"}, {"qty": 1, "name": "Too Yumm Crea onion 33gm"}, {"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 18:19:34,941.941 INFO    ] Please close door 1
[2026-08-31 18:19:34,943.943 INFO    ] Please close door 1
[2026-08-31 18:19:34,946.946 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-08-31 18:19:34,949.949 INFO    ] 2026-08-31 18:19:34
[2026-08-31 18:19:34,952.952 INFO    ] playing audio file
[2026-08-31 18:19:34,971.971 INFO    ] 2026-08-31 18:19:34
[2026-08-31 18:19:34,974.974 INFO    ] publish_status: order_id=TM08202202260831181629964
[2026-08-31 18:19:34,978.978 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831181629964
[2026-08-31 18:19:35,072.072 INFO    ] [publish_status] Message added to stream with ID: 1788180575024-0
[2026-08-31 18:19:35,075.075 INFO    ] Published to order:TM08202202260831181629964: {'timestamp': '2026-08-31T12:49:34.972991Z', 'server_status': 'OrderStatus', 'order_id': 'TM08202202260831181629964', 'server_response': '{"SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "McVities Orange Cream Biscuts 61gm", "qty": 1}, {"name": "MaxVita Moong daal 25gm", "qty": 1}, {"name": "Too Yumm Crea onion 33gm", "qty": 1}, {"name": "McVities Butter Jeera Cookies58gm", "qty": 1}]}, "SectionStatus": {"SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\\nIS \\nOPEN \\nNOW"}, "rstatus": false, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "status": "False", "error": {"code": 20001, "tmessage": "In Progress", "data": {}, "umessage": "In Progress"}}'} (ID: 1788180575024-0)
[2026-08-31 18:19:35,650.650 INFO    ] {'server_status': 'OrderStatus', 'order_id': 'TM08202202260831181629964', 'server_response': {'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Orange Cream Biscuts 61gm', 'qty': 1}, {'name': 'MaxVita Moong daal 25gm', 'qty': 1}, {'name': 'Too Yumm Crea onion 33gm', 'qty': 1}, {'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'rstatus': False, 'voiceNote': 'Please close door 1', 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'error': {'code': 20001, 'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress'}}}
[2026-08-31 18:19:35,652.652 INFO    ] 200
[2026-08-31 18:19:35,655.655 INFO    ] {"data":{"server_status":"OrderStatus","order_id":"TM08202202260831181629964","server_response":{"SectionSKU":{"Header":"Pick the below items from the door","skus":[{"name":"McVities Orange Cream Biscuts 61gm","qty":1},{"name":"MaxVita Moong daal 25gm","qty":1},{"name":"Too Yumm Crea onion 33gm","qty":1},{"name":"McVities Butter Jeera Cookies58gm","qty":1}]},"SectionStatus":{"SubHeader":"Please Pick the Products and close the door","Header":"Please Close Door 1","Note":"Please Close the door after picking up products","UI_Header":"DOOR 1\nIS \nOPEN \nNOW"},"rstatus":false,"voiceNote":"Please close door 1","SectionMain":{"Header":"Door Open"},"status":"false","error":{"code":20001,"tmessage":"In Progress","data":[],"umessage":"In Progress"}}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 18:19:35,658.658 INFO    ] {'data': {'server_status': 'OrderStatus', 'order_id': 'TM08202202260831181629964', 'server_response': {'voiceNote': 'Please close door 1', 'error': {'code': 20001, 'tmessage': 'In Progress', 'data': [], 'umessage': 'In Progress'}, 'rstatus': False, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'false', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Orange Cream Biscuts 61gm', 'qty': 1}, {'name': 'MaxVita Moong daal 25gm', 'qty': 1}, {'name': 'Too Yumm Crea onion 33gm', 'qty': 1}, {'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}}}, 'response': {'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'msg': 'order updated successfully', 'status': True}}
[2026-08-31 18:19:35,661.661 INFO    ] {'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Orange Cream Biscuts 61gm', 'qty': 1}, {'name': 'MaxVita Moong daal 25gm', 'qty': 1}, {'name': 'Too Yumm Crea onion 33gm', 'qty': 1}, {'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'rstatus': False, 'voiceNote': 'Please close door 1', 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'error': {'code': 20001, 'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress'}}
[2026-08-31 18:19:38,764.764 INFO    ] 200
[2026-08-31 18:19:38,766.766 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Orange Cream Biscuts 61gm"}, {"qty": 1, "name": "MaxVita Moong daal 25gm"}, {"qty": 1, "name": "Too Yumm Crea onion 33gm"}, {"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 18:19:38,770.770 INFO    ] {'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Orange Cream Biscuts 61gm', 'qty': 1}, {'name': 'MaxVita Moong daal 25gm', 'qty': 1}, {'name': 'Too Yumm Crea onion 33gm', 'qty': 1}, {'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'rstatus': False, 'voiceNote': 'Please close door 1', 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'error': {'code': 20001, 'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress'}}
[2026-08-31 18:19:41,834.834 INFO    ] 200
[2026-08-31 18:19:41,837.837 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Orange Cream Biscuts 61gm"}, {"qty": 1, "name": "MaxVita Moong daal 25gm"}, {"qty": 1, "name": "Too Yumm Crea onion 33gm"}, {"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 18:19:41,841.841 INFO    ] {'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Orange Cream Biscuts 61gm', 'qty': 1}, {'name': 'MaxVita Moong daal 25gm', 'qty': 1}, {'name': 'Too Yumm Crea onion 33gm', 'qty': 1}, {'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'rstatus': False, 'voiceNote': 'Please close door 1', 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'error': {'code': 20001, 'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress'}}
[2026-08-31 18:19:44,899.899 INFO    ] 200
[2026-08-31 18:19:44,901.901 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Orange Cream Biscuts 61gm"}, {"qty": 1, "name": "MaxVita Moong daal 25gm"}, {"qty": 1, "name": "Too Yumm Crea onion 33gm"}, {"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 18:19:44,904.904 INFO    ] Please close door 1
[2026-08-31 18:19:44,915.915 INFO    ] Please close door 1
[2026-08-31 18:19:44,918.918 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-08-31 18:19:44,920.920 INFO    ] 2026-08-31 18:19:44
[2026-08-31 18:19:44,923.923 INFO    ] playing audio file
[2026-08-31 18:19:44,941.941 INFO    ] 2026-08-31 18:19:44
[2026-08-31 18:19:44,945.945 INFO    ] publish_status: order_id=TM08202202260831181629964
[2026-08-31 18:19:44,948.948 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831181629964
[2026-08-31 18:19:45,044.044 INFO    ] [publish_status] Message added to stream with ID: 1788180585001-0
[2026-08-31 18:19:45,047.047 INFO    ] Published to order:TM08202202260831181629964: {'timestamp': '2026-08-31T12:49:44.943641Z', 'server_status': 'OrderStatus', 'order_id': 'TM08202202260831181629964', 'server_response': '{"SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "McVities Orange Cream Biscuts 61gm", "qty": 1}, {"name": "MaxVita Moong daal 25gm", "qty": 1}, {"name": "Too Yumm Crea onion 33gm", "qty": 1}, {"name": "McVities Butter Jeera Cookies58gm", "qty": 1}]}, "SectionStatus": {"SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\\nIS \\nOPEN \\nNOW"}, "rstatus": false, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "status": "False", "error": {"code": 20001, "tmessage": "In Progress", "data": {}, "umessage": "In Progress"}}'} (ID: 1788180585001-0)
[2026-08-31 18:19:45,636.636 INFO    ] {'server_status': 'OrderStatus', 'order_id': 'TM08202202260831181629964', 'server_response': {'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Orange Cream Biscuts 61gm', 'qty': 1}, {'name': 'MaxVita Moong daal 25gm', 'qty': 1}, {'name': 'Too Yumm Crea onion 33gm', 'qty': 1}, {'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'rstatus': False, 'voiceNote': 'Please close door 1', 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'error': {'code': 20001, 'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress'}}}
[2026-08-31 18:19:45,639.639 INFO    ] 200
[2026-08-31 18:19:45,641.641 INFO    ] {"data":{"server_status":"OrderStatus","order_id":"TM08202202260831181629964","server_response":{"SectionSKU":{"Header":"Pick the below items from the door","skus":[{"name":"McVities Orange Cream Biscuts 61gm","qty":1},{"name":"MaxVita Moong daal 25gm","qty":1},{"name":"Too Yumm Crea onion 33gm","qty":1},{"name":"McVities Butter Jeera Cookies58gm","qty":1}]},"SectionStatus":{"SubHeader":"Please Pick the Products and close the door","Header":"Please Close Door 1","Note":"Please Close the door after picking up products","UI_Header":"DOOR 1\nIS \nOPEN \nNOW"},"rstatus":false,"voiceNote":"Please close door 1","SectionMain":{"Header":"Door Open"},"status":"false","error":{"code":20001,"tmessage":"In Progress","data":[],"umessage":"In Progress"}}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 18:19:45,645.645 INFO    ] {'data': {'server_status': 'OrderStatus', 'order_id': 'TM08202202260831181629964', 'server_response': {'voiceNote': 'Please close door 1', 'error': {'code': 20001, 'tmessage': 'In Progress', 'data': [], 'umessage': 'In Progress'}, 'rstatus': False, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'false', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Orange Cream Biscuts 61gm', 'qty': 1}, {'name': 'MaxVita Moong daal 25gm', 'qty': 1}, {'name': 'Too Yumm Crea onion 33gm', 'qty': 1}, {'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}}}, 'response': {'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'msg': 'order updated successfully', 'status': True}}
[2026-08-31 18:19:45,648.648 INFO    ] {'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Orange Cream Biscuts 61gm', 'qty': 1}, {'name': 'MaxVita Moong daal 25gm', 'qty': 1}, {'name': 'Too Yumm Crea onion 33gm', 'qty': 1}, {'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'rstatus': False, 'voiceNote': 'Please close door 1', 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'error': {'code': 20001, 'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress'}}
[2026-08-31 18:19:48,794.794 INFO    ] 200
[2026-08-31 18:19:48,796.796 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Orange Cream Biscuts 61gm"}, {"qty": 1, "name": "MaxVita Moong daal 25gm"}, {"qty": 1, "name": "Too Yumm Crea onion 33gm"}, {"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 18:19:48,800.800 INFO    ] {'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Orange Cream Biscuts 61gm', 'qty': 1}, {'name': 'MaxVita Moong daal 25gm', 'qty': 1}, {'name': 'Too Yumm Crea onion 33gm', 'qty': 1}, {'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'rstatus': False, 'voiceNote': 'Please close door 1', 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'error': {'code': 20001, 'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress'}}
[2026-08-31 18:19:51,850.850 INFO    ] 200
[2026-08-31 18:19:51,852.852 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Orange Cream Biscuts 61gm"}, {"qty": 1, "name": "MaxVita Moong daal 25gm"}, {"qty": 1, "name": "Too Yumm Crea onion 33gm"}, {"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 18:19:51,855.855 INFO    ] {'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Orange Cream Biscuts 61gm', 'qty': 1}, {'name': 'MaxVita Moong daal 25gm', 'qty': 1}, {'name': 'Too Yumm Crea onion 33gm', 'qty': 1}, {'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'rstatus': False, 'voiceNote': 'Please close door 1', 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'error': {'code': 20001, 'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress'}}
[2026-08-31 18:19:54,905.905 INFO    ] 200
[2026-08-31 18:19:54,908.908 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Orange Cream Biscuts 61gm"}, {"qty": 1, "name": "MaxVita Moong daal 25gm"}, {"qty": 1, "name": "Too Yumm Crea onion 33gm"}, {"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 18:19:54,910.910 INFO    ] Please close door 1
[2026-08-31 18:19:54,913.913 INFO    ] Please close door 1
[2026-08-31 18:19:54,915.915 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-08-31 18:19:54,917.917 INFO    ] 2026-08-31 18:19:54
[2026-08-31 18:19:54,920.920 INFO    ] playing audio file
[2026-08-31 18:19:54,938.938 INFO    ] 2026-08-31 18:19:54
[2026-08-31 18:19:54,941.941 INFO    ] publish_status: order_id=TM08202202260831181629964
[2026-08-31 18:19:54,944.944 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831181629964
[2026-08-31 18:19:55,120.120 INFO    ] [publish_status] Message added to stream with ID: 1788180595064-0
[2026-08-31 18:19:55,123.123 INFO    ] Published to order:TM08202202260831181629964: {'timestamp': '2026-08-31T12:49:54.940100Z', 'server_status': 'OrderStatus', 'order_id': 'TM08202202260831181629964', 'server_response': '{"SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "McVities Orange Cream Biscuts 61gm", "qty": 1}, {"name": "MaxVita Moong daal 25gm", "qty": 1}, {"name": "Too Yumm Crea onion 33gm", "qty": 1}, {"name": "McVities Butter Jeera Cookies58gm", "qty": 1}]}, "SectionStatus": {"SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\\nIS \\nOPEN \\nNOW"}, "rstatus": false, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "status": "False", "error": {"code": 20001, "tmessage": "In Progress", "data": {}, "umessage": "In Progress"}}'} (ID: 1788180595064-0)
[2026-08-31 18:19:55,739.739 INFO    ] {'server_status': 'OrderStatus', 'order_id': 'TM08202202260831181629964', 'server_response': {'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Orange Cream Biscuts 61gm', 'qty': 1}, {'name': 'MaxVita Moong daal 25gm', 'qty': 1}, {'name': 'Too Yumm Crea onion 33gm', 'qty': 1}, {'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'rstatus': False, 'voiceNote': 'Please close door 1', 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'error': {'code': 20001, 'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress'}}}
[2026-08-31 18:19:55,742.742 INFO    ] 200
[2026-08-31 18:19:55,744.744 INFO    ] {"data":{"server_status":"OrderStatus","order_id":"TM08202202260831181629964","server_response":{"SectionSKU":{"Header":"Pick the below items from the door","skus":[{"name":"McVities Orange Cream Biscuts 61gm","qty":1},{"name":"MaxVita Moong daal 25gm","qty":1},{"name":"Too Yumm Crea onion 33gm","qty":1},{"name":"McVities Butter Jeera Cookies58gm","qty":1}]},"SectionStatus":{"SubHeader":"Please Pick the Products and close the door","Header":"Please Close Door 1","Note":"Please Close the door after picking up products","UI_Header":"DOOR 1\nIS \nOPEN \nNOW"},"rstatus":false,"voiceNote":"Please close door 1","SectionMain":{"Header":"Door Open"},"status":"false","error":{"code":20001,"tmessage":"In Progress","data":[],"umessage":"In Progress"}}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 18:19:55,748.748 INFO    ] {'data': {'server_status': 'OrderStatus', 'order_id': 'TM08202202260831181629964', 'server_response': {'voiceNote': 'Please close door 1', 'error': {'code': 20001, 'tmessage': 'In Progress', 'data': [], 'umessage': 'In Progress'}, 'rstatus': False, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'false', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Orange Cream Biscuts 61gm', 'qty': 1}, {'name': 'MaxVita Moong daal 25gm', 'qty': 1}, {'name': 'Too Yumm Crea onion 33gm', 'qty': 1}, {'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}}}, 'response': {'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'msg': 'order updated successfully', 'status': True}}
[2026-08-31 18:19:55,751.751 INFO    ] {'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Orange Cream Biscuts 61gm', 'qty': 1}, {'name': 'MaxVita Moong daal 25gm', 'qty': 1}, {'name': 'Too Yumm Crea onion 33gm', 'qty': 1}, {'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'rstatus': False, 'voiceNote': 'Please close door 1', 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'error': {'code': 20001, 'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress'}}
[2026-08-31 18:19:58,800.800 INFO    ] 200
[2026-08-31 18:19:58,803.803 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Orange Cream Biscuts 61gm"}, {"qty": 1, "name": "MaxVita Moong daal 25gm"}, {"qty": 1, "name": "Too Yumm Crea onion 33gm"}, {"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 18:19:58,806.806 INFO    ] {'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Orange Cream Biscuts 61gm', 'qty': 1}, {'name': 'MaxVita Moong daal 25gm', 'qty': 1}, {'name': 'Too Yumm Crea onion 33gm', 'qty': 1}, {'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'rstatus': False, 'voiceNote': 'Please close door 1', 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'error': {'code': 20001, 'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress'}}
[2026-08-31 18:20:02,475.475 INFO    ] 200
[2026-08-31 18:20:02,488.488 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Orange Cream Biscuts 61gm"}, {"qty": 1, "name": "MaxVita Moong daal 25gm"}, {"qty": 1, "name": "Too Yumm Crea onion 33gm"}, {"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 18:20:02,534.534 INFO    ] {'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Orange Cream Biscuts 61gm', 'qty': 1}, {'name': 'MaxVita Moong daal 25gm', 'qty': 1}, {'name': 'Too Yumm Crea onion 33gm', 'qty': 1}, {'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'rstatus': False, 'voiceNote': 'Please close door 1', 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'error': {'code': 20001, 'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress'}}
[2026-08-31 18:20:05,605.605 INFO    ] 200
[2026-08-31 18:20:05,608.608 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "McVities Orange Cream Biscuts 61gm"}, {"qty": 1, "name": "MaxVita Moong daal 25gm"}, {"qty": 1, "name": "Too Yumm Crea onion 33gm"}, {"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 18:20:05,611.611 INFO    ] Please close door 1
[2026-08-31 18:20:05,614.614 INFO    ] Please close door 1
[2026-08-31 18:20:05,616.616 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-08-31 18:20:05,619.619 INFO    ] 2026-08-31 18:20:05
[2026-08-31 18:20:05,622.622 INFO    ] playing audio file
[2026-08-31 18:20:05,641.641 INFO    ] 2026-08-31 18:20:05
[2026-08-31 18:20:05,645.645 INFO    ] publish_status: order_id=TM08202202260831181629964
[2026-08-31 18:20:05,648.648 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831181629964
[2026-08-31 18:20:05,762.762 INFO    ] [publish_status] Message added to stream with ID: 1788180605709-0
[2026-08-31 18:20:05,766.766 INFO    ] Published to order:TM08202202260831181629964: {'timestamp': '2026-08-31T12:50:05.643092Z', 'server_status': 'OrderStatus', 'order_id': 'TM08202202260831181629964', 'server_response': '{"SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "McVities Orange Cream Biscuts 61gm", "qty": 1}, {"name": "MaxVita Moong daal 25gm", "qty": 1}, {"name": "Too Yumm Crea onion 33gm", "qty": 1}, {"name": "McVities Butter Jeera Cookies58gm", "qty": 1}]}, "SectionStatus": {"SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\\nIS \\nOPEN \\nNOW"}, "rstatus": false, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "status": "False", "error": {"code": 20001, "tmessage": "In Progress", "data": {}, "umessage": "In Progress"}}'} (ID: 1788180605709-0)
[2026-08-31 18:20:09,139.139 INFO    ] {'server_status': 'OrderStatus', 'order_id': 'TM08202202260831181629964', 'server_response': {'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Orange Cream Biscuts 61gm', 'qty': 1}, {'name': 'MaxVita Moong daal 25gm', 'qty': 1}, {'name': 'Too Yumm Crea onion 33gm', 'qty': 1}, {'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'rstatus': False, 'voiceNote': 'Please close door 1', 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'error': {'code': 20001, 'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress'}}}
[2026-08-31 18:20:09,141.141 INFO    ] 200
[2026-08-31 18:20:09,144.144 INFO    ] {"data":{"server_status":"OrderStatus","order_id":"TM08202202260831181629964","server_response":{"SectionSKU":{"Header":"Pick the below items from the door","skus":[{"name":"McVities Orange Cream Biscuts 61gm","qty":1},{"name":"MaxVita Moong daal 25gm","qty":1},{"name":"Too Yumm Crea onion 33gm","qty":1},{"name":"McVities Butter Jeera Cookies58gm","qty":1}]},"SectionStatus":{"SubHeader":"Please Pick the Products and close the door","Header":"Please Close Door 1","Note":"Please Close the door after picking up products","UI_Header":"DOOR 1\nIS \nOPEN \nNOW"},"rstatus":false,"voiceNote":"Please close door 1","SectionMain":{"Header":"Door Open"},"status":"false","error":{"code":20001,"tmessage":"In Progress","data":[],"umessage":"In Progress"}}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 18:20:09,148.148 INFO    ] {'data': {'server_status': 'OrderStatus', 'order_id': 'TM08202202260831181629964', 'server_response': {'voiceNote': 'Please close door 1', 'error': {'code': 20001, 'tmessage': 'In Progress', 'data': [], 'umessage': 'In Progress'}, 'rstatus': False, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'false', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Orange Cream Biscuts 61gm', 'qty': 1}, {'name': 'MaxVita Moong daal 25gm', 'qty': 1}, {'name': 'Too Yumm Crea onion 33gm', 'qty': 1}, {'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}}}, 'response': {'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'msg': 'order updated successfully', 'status': True}}
[2026-08-31 18:20:09,151.151 INFO    ] {'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Orange Cream Biscuts 61gm', 'qty': 1}, {'name': 'MaxVita Moong daal 25gm', 'qty': 1}, {'name': 'Too Yumm Crea onion 33gm', 'qty': 1}, {'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'rstatus': False, 'voiceNote': 'Please close door 1', 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'error': {'code': 20001, 'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress'}}
[2026-08-31 18:20:12,227.227 INFO    ] 200
[2026-08-31 18:20:12,230.230 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "KITKAT Nestle 4 Finger Chocolate 38g"}, {"qty": 2, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}], "Header": "Pick the below items from the door"}, "voiceNote": "Door 2 is open now", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 18:20:12,234.234 INFO    ] {'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'KITKAT Nestle 4 Finger Chocolate 38g', 'qty': 1}, {'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'qty': 2}]}, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW'}, 'rstatus': False, 'voiceNote': 'Door 2 is open now', 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'error': {'code': 20001, 'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress'}}
[2026-08-31 18:20:15,344.344 INFO    ] 200
[2026-08-31 18:20:15,347.347 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "KITKAT Nestle 4 Finger Chocolate 38g"}, {"qty": 2, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 18:20:15,351.351 INFO    ] {'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'KITKAT Nestle 4 Finger Chocolate 38g', 'qty': 1}, {'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'qty': 2}]}, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW'}, 'rstatus': False, 'voiceNote': 'Please close door 2', 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'error': {'code': 20001, 'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress'}}
[2026-08-31 18:20:18,437.437 INFO    ] 200
[2026-08-31 18:20:18,440.440 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "KITKAT Nestle 4 Finger Chocolate 38g"}, {"qty": 2, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 18:20:18,445.445 INFO    ] Please close door 2
[2026-08-31 18:20:18,447.447 INFO    ] Please close door 2
[2026-08-31 18:20:18,451.451 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-08-31 18:20:18,453.453 INFO    ] 2026-08-31 18:20:18
[2026-08-31 18:20:18,456.456 INFO    ] playing audio file
[2026-08-31 18:20:18,474.474 INFO    ] 2026-08-31 18:20:18
[2026-08-31 18:20:18,478.478 INFO    ] publish_status: order_id=TM08202202260831181629964
[2026-08-31 18:20:18,481.481 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831181629964
[2026-08-31 18:20:18,566.566 INFO    ] [publish_status] Message added to stream with ID: 1788180618513-0
[2026-08-31 18:20:18,568.568 INFO    ] Published to order:TM08202202260831181629964: {'timestamp': '2026-08-31T12:50:18.475997Z', 'server_status': 'OrderStatus', 'order_id': 'TM08202202260831181629964', 'server_response': '{"SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "KITKAT Nestle 4 Finger Chocolate 38g", "qty": 1}, {"name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g", "qty": 2}]}, "SectionStatus": {"SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\\nIS \\nOPEN \\nNOW"}, "rstatus": false, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "status": "False", "error": {"code": 20001, "tmessage": "In Progress", "data": {}, "umessage": "In Progress"}}'} (ID: 1788180618513-0)
[2026-08-31 18:20:19,225.225 INFO    ] {'server_status': 'OrderStatus', 'order_id': 'TM08202202260831181629964', 'server_response': {'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'KITKAT Nestle 4 Finger Chocolate 38g', 'qty': 1}, {'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'qty': 2}]}, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW'}, 'rstatus': False, 'voiceNote': 'Please close door 2', 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'error': {'code': 20001, 'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress'}}}
[2026-08-31 18:20:19,228.228 INFO    ] 200
[2026-08-31 18:20:19,231.231 INFO    ] {"data":{"server_status":"OrderStatus","order_id":"TM08202202260831181629964","server_response":{"SectionSKU":{"Header":"Pick the below items from the door","skus":[{"name":"KITKAT Nestle 4 Finger Chocolate 38g","qty":1},{"name":"NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g","qty":2}]},"SectionStatus":{"SubHeader":"Please Pick the Products and close the door","Header":"Please Close Door 2","Note":"Please Close the door after picking up products","UI_Header":"DOOR 2\nIS \nOPEN \nNOW"},"rstatus":false,"voiceNote":"Please close door 2","SectionMain":{"Header":"Door Open"},"status":"false","error":{"code":20001,"tmessage":"In Progress","data":[],"umessage":"In Progress"}}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 18:20:19,239.239 INFO    ] {'data': {'server_status': 'OrderStatus', 'order_id': 'TM08202202260831181629964', 'server_response': {'voiceNote': 'Please close door 2', 'error': {'code': 20001, 'tmessage': 'In Progress', 'data': [], 'umessage': 'In Progress'}, 'rstatus': False, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW'}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'false', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'KITKAT Nestle 4 Finger Chocolate 38g', 'qty': 1}, {'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'qty': 2}]}}}, 'response': {'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'msg': 'order updated successfully', 'status': True}}
[2026-08-31 18:20:19,245.245 INFO    ] {'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'KITKAT Nestle 4 Finger Chocolate 38g', 'qty': 1}, {'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'qty': 2}]}, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW'}, 'rstatus': False, 'voiceNote': 'Please close door 2', 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'error': {'code': 20001, 'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress'}}
[2026-08-31 18:20:22,427.427 INFO    ] 200
[2026-08-31 18:20:22,430.430 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "KITKAT Nestle 4 Finger Chocolate 38g"}, {"qty": 2, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 18:20:22,434.434 INFO    ] {'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'KITKAT Nestle 4 Finger Chocolate 38g', 'qty': 1}, {'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'qty': 2}]}, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW'}, 'rstatus': False, 'voiceNote': 'Please close door 2', 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'error': {'code': 20001, 'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress'}}
[2026-08-31 18:20:25,537.537 INFO    ] 200
[2026-08-31 18:20:25,540.540 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "KITKAT Nestle 4 Finger Chocolate 38g"}, {"qty": 2, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 18:20:25,543.543 INFO    ] {'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'KITKAT Nestle 4 Finger Chocolate 38g', 'qty': 1}, {'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'qty': 2}]}, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW'}, 'rstatus': False, 'voiceNote': 'Please close door 2', 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'error': {'code': 20001, 'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress'}}
[2026-08-31 18:20:28,714.714 INFO    ] 200
[2026-08-31 18:20:28,717.717 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "KITKAT Nestle 4 Finger Chocolate 38g"}, {"qty": 2, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 18:20:28,720.720 INFO    ] Please close door 2
[2026-08-31 18:20:28,723.723 INFO    ] Please close door 2
[2026-08-31 18:20:28,725.725 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-08-31 18:20:28,731.731 INFO    ] 2026-08-31 18:20:28
[2026-08-31 18:20:28,803.803 INFO    ] playing audio file
[2026-08-31 18:20:28,821.821 INFO    ] 2026-08-31 18:20:28
[2026-08-31 18:20:28,825.825 INFO    ] publish_status: order_id=TM08202202260831181629964
[2026-08-31 18:20:28,829.829 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831181629964
[2026-08-31 18:20:28,927.927 INFO    ] [publish_status] Message added to stream with ID: 1788180628874-0
[2026-08-31 18:20:28,937.937 INFO    ] Published to order:TM08202202260831181629964: {'timestamp': '2026-08-31T12:50:28.823743Z', 'server_status': 'OrderStatus', 'order_id': 'TM08202202260831181629964', 'server_response': '{"SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "KITKAT Nestle 4 Finger Chocolate 38g", "qty": 1}, {"name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g", "qty": 2}]}, "SectionStatus": {"SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\\nIS \\nOPEN \\nNOW"}, "rstatus": false, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "status": "False", "error": {"code": 20001, "tmessage": "In Progress", "data": {}, "umessage": "In Progress"}}'} (ID: 1788180628874-0)
[2026-08-31 18:20:29,525.525 INFO    ] {'server_status': 'OrderStatus', 'order_id': 'TM08202202260831181629964', 'server_response': {'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'KITKAT Nestle 4 Finger Chocolate 38g', 'qty': 1}, {'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'qty': 2}]}, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW'}, 'rstatus': False, 'voiceNote': 'Please close door 2', 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'error': {'code': 20001, 'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress'}}}
[2026-08-31 18:20:29,528.528 INFO    ] 200
[2026-08-31 18:20:29,530.530 INFO    ] {"data":{"server_status":"OrderStatus","order_id":"TM08202202260831181629964","server_response":{"SectionSKU":{"Header":"Pick the below items from the door","skus":[{"name":"KITKAT Nestle 4 Finger Chocolate 38g","qty":1},{"name":"NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g","qty":2}]},"SectionStatus":{"SubHeader":"Please Pick the Products and close the door","Header":"Please Close Door 2","Note":"Please Close the door after picking up products","UI_Header":"DOOR 2\nIS \nOPEN \nNOW"},"rstatus":false,"voiceNote":"Please close door 2","SectionMain":{"Header":"Door Open"},"status":"false","error":{"code":20001,"tmessage":"In Progress","data":[],"umessage":"In Progress"}}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 18:20:29,533.533 INFO    ] {'data': {'server_status': 'OrderStatus', 'order_id': 'TM08202202260831181629964', 'server_response': {'voiceNote': 'Please close door 2', 'error': {'code': 20001, 'tmessage': 'In Progress', 'data': [], 'umessage': 'In Progress'}, 'rstatus': False, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW'}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'false', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'KITKAT Nestle 4 Finger Chocolate 38g', 'qty': 1}, {'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'qty': 2}]}}}, 'response': {'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'msg': 'order updated successfully', 'status': True}}
[2026-08-31 18:20:29,536.536 INFO    ] {'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'KITKAT Nestle 4 Finger Chocolate 38g', 'qty': 1}, {'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'qty': 2}]}, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW'}, 'rstatus': False, 'voiceNote': 'Please close door 2', 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'error': {'code': 20001, 'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress'}}
[2026-08-31 18:20:32,605.605 INFO    ] 200
[2026-08-31 18:20:32,608.608 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "KITKAT Nestle 4 Finger Chocolate 38g"}, {"qty": 2, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 18:20:32,612.612 INFO    ] {'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'KITKAT Nestle 4 Finger Chocolate 38g', 'qty': 1}, {'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'qty': 2}]}, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW'}, 'rstatus': False, 'voiceNote': 'Please close door 2', 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'error': {'code': 20001, 'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress'}}
[2026-08-31 18:20:35,705.705 INFO    ] 200
[2026-08-31 18:20:35,708.708 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "KITKAT Nestle 4 Finger Chocolate 38g"}, {"qty": 2, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 18:20:35,711.711 INFO    ] {'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'KITKAT Nestle 4 Finger Chocolate 38g', 'qty': 1}, {'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'qty': 2}]}, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW'}, 'rstatus': False, 'voiceNote': 'Please close door 2', 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'error': {'code': 20001, 'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress'}}
[2026-08-31 18:20:38,834.834 INFO    ] 200
[2026-08-31 18:20:38,836.836 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "KITKAT Nestle 4 Finger Chocolate 38g"}, {"qty": 2, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 18:20:38,840.840 INFO    ] Please close door 2
[2026-08-31 18:20:38,842.842 INFO    ] Please close door 2
[2026-08-31 18:20:38,844.844 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-08-31 18:20:38,847.847 INFO    ] 2026-08-31 18:20:38
[2026-08-31 18:20:38,849.849 INFO    ] playing audio file
[2026-08-31 18:20:38,868.868 INFO    ] 2026-08-31 18:20:38
[2026-08-31 18:20:38,872.872 INFO    ] publish_status: order_id=TM08202202260831181629964
[2026-08-31 18:20:38,874.874 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831181629964
[2026-08-31 18:20:38,966.966 INFO    ] [publish_status] Message added to stream with ID: 1788180638914-0
[2026-08-31 18:20:38,969.969 INFO    ] Published to order:TM08202202260831181629964: {'timestamp': '2026-08-31T12:50:38.870556Z', 'server_status': 'OrderStatus', 'order_id': 'TM08202202260831181629964', 'server_response': '{"SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "KITKAT Nestle 4 Finger Chocolate 38g", "qty": 1}, {"name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g", "qty": 2}]}, "SectionStatus": {"SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\\nIS \\nOPEN \\nNOW"}, "rstatus": false, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "status": "False", "error": {"code": 20001, "tmessage": "In Progress", "data": {}, "umessage": "In Progress"}}'} (ID: 1788180638914-0)
[2026-08-31 18:20:39,530.530 INFO    ] {'server_status': 'OrderStatus', 'order_id': 'TM08202202260831181629964', 'server_response': {'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'KITKAT Nestle 4 Finger Chocolate 38g', 'qty': 1}, {'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'qty': 2}]}, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW'}, 'rstatus': False, 'voiceNote': 'Please close door 2', 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'error': {'code': 20001, 'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress'}}}
[2026-08-31 18:20:39,533.533 INFO    ] 200
[2026-08-31 18:20:39,535.535 INFO    ] {"data":{"server_status":"OrderStatus","order_id":"TM08202202260831181629964","server_response":{"SectionSKU":{"Header":"Pick the below items from the door","skus":[{"name":"KITKAT Nestle 4 Finger Chocolate 38g","qty":1},{"name":"NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g","qty":2}]},"SectionStatus":{"SubHeader":"Please Pick the Products and close the door","Header":"Please Close Door 2","Note":"Please Close the door after picking up products","UI_Header":"DOOR 2\nIS \nOPEN \nNOW"},"rstatus":false,"voiceNote":"Please close door 2","SectionMain":{"Header":"Door Open"},"status":"false","error":{"code":20001,"tmessage":"In Progress","data":[],"umessage":"In Progress"}}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 18:20:39,539.539 INFO    ] {'data': {'server_status': 'OrderStatus', 'order_id': 'TM08202202260831181629964', 'server_response': {'voiceNote': 'Please close door 2', 'error': {'code': 20001, 'tmessage': 'In Progress', 'data': [], 'umessage': 'In Progress'}, 'rstatus': False, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW'}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'false', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'KITKAT Nestle 4 Finger Chocolate 38g', 'qty': 1}, {'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'qty': 2}]}}}, 'response': {'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'msg': 'order updated successfully', 'status': True}}
[2026-08-31 18:20:39,542.542 INFO    ] {'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'KITKAT Nestle 4 Finger Chocolate 38g', 'qty': 1}, {'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'qty': 2}]}, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW'}, 'rstatus': False, 'voiceNote': 'Please close door 2', 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'error': {'code': 20001, 'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress'}}
[2026-08-31 18:20:42,620.620 INFO    ] 200
[2026-08-31 18:20:42,623.623 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "KITKAT Nestle 4 Finger Chocolate 38g"}, {"qty": 2, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 18:20:42,626.626 INFO    ] {'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'KITKAT Nestle 4 Finger Chocolate 38g', 'qty': 1}, {'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'qty': 2}]}, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW'}, 'rstatus': False, 'voiceNote': 'Please close door 2', 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'error': {'code': 20001, 'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress'}}
[2026-08-31 18:20:45,785.785 INFO    ] 200
[2026-08-31 18:20:45,788.788 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "KITKAT Nestle 4 Finger Chocolate 38g"}, {"qty": 2, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 18:20:45,791.791 INFO    ] {'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'KITKAT Nestle 4 Finger Chocolate 38g', 'qty': 1}, {'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'qty': 2}]}, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW'}, 'rstatus': False, 'voiceNote': 'Please close door 2', 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'error': {'code': 20001, 'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress'}}
[2026-08-31 18:20:48,859.859 INFO    ] 200
[2026-08-31 18:20:48,862.862 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "KITKAT Nestle 4 Finger Chocolate 38g"}, {"qty": 2, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 18:20:48,864.864 INFO    ] Please close door 2
[2026-08-31 18:20:48,867.867 INFO    ] Please close door 2
[2026-08-31 18:20:48,869.869 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-08-31 18:20:48,872.872 INFO    ] 2026-08-31 18:20:48
[2026-08-31 18:20:48,874.874 INFO    ] playing audio file
[2026-08-31 18:20:48,893.893 INFO    ] 2026-08-31 18:20:48
[2026-08-31 18:20:48,896.896 INFO    ] publish_status: order_id=TM08202202260831181629964
[2026-08-31 18:20:48,899.899 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831181629964
[2026-08-31 18:20:48,969.969 INFO    ] [publish_status] Message added to stream with ID: 1788180648925-0
[2026-08-31 18:20:48,971.971 INFO    ] Published to order:TM08202202260831181629964: {'timestamp': '2026-08-31T12:50:48.894840Z', 'server_status': 'OrderStatus', 'order_id': 'TM08202202260831181629964', 'server_response': '{"SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "KITKAT Nestle 4 Finger Chocolate 38g", "qty": 1}, {"name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g", "qty": 2}]}, "SectionStatus": {"SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\\nIS \\nOPEN \\nNOW"}, "rstatus": false, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "status": "False", "error": {"code": 20001, "tmessage": "In Progress", "data": {}, "umessage": "In Progress"}}'} (ID: 1788180648925-0)
[2026-08-31 18:20:49,603.603 INFO    ] {'server_status': 'OrderStatus', 'order_id': 'TM08202202260831181629964', 'server_response': {'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'KITKAT Nestle 4 Finger Chocolate 38g', 'qty': 1}, {'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'qty': 2}]}, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW'}, 'rstatus': False, 'voiceNote': 'Please close door 2', 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'error': {'code': 20001, 'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress'}}}
[2026-08-31 18:20:49,606.606 INFO    ] 200
[2026-08-31 18:20:49,609.609 INFO    ] {"data":{"server_status":"OrderStatus","order_id":"TM08202202260831181629964","server_response":{"SectionSKU":{"Header":"Pick the below items from the door","skus":[{"name":"KITKAT Nestle 4 Finger Chocolate 38g","qty":1},{"name":"NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g","qty":2}]},"SectionStatus":{"SubHeader":"Please Pick the Products and close the door","Header":"Please Close Door 2","Note":"Please Close the door after picking up products","UI_Header":"DOOR 2\nIS \nOPEN \nNOW"},"rstatus":false,"voiceNote":"Please close door 2","SectionMain":{"Header":"Door Open"},"status":"false","error":{"code":20001,"tmessage":"In Progress","data":[],"umessage":"In Progress"}}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 18:20:49,613.613 INFO    ] {'data': {'server_status': 'OrderStatus', 'order_id': 'TM08202202260831181629964', 'server_response': {'voiceNote': 'Please close door 2', 'error': {'code': 20001, 'tmessage': 'In Progress', 'data': [], 'umessage': 'In Progress'}, 'rstatus': False, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW'}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'false', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'KITKAT Nestle 4 Finger Chocolate 38g', 'qty': 1}, {'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'qty': 2}]}}}, 'response': {'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'msg': 'order updated successfully', 'status': True}}
[2026-08-31 18:20:49,616.616 INFO    ] {'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'KITKAT Nestle 4 Finger Chocolate 38g', 'qty': 1}, {'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'qty': 2}]}, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW'}, 'rstatus': False, 'voiceNote': 'Please close door 2', 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'error': {'code': 20001, 'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress'}}
[2026-08-31 18:20:52,667.667 INFO    ] 200
[2026-08-31 18:20:52,670.670 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "KITKAT Nestle 4 Finger Chocolate 38g"}, {"qty": 2, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 18:20:52,673.673 INFO    ] {'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'KITKAT Nestle 4 Finger Chocolate 38g', 'qty': 1}, {'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'qty': 2}]}, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW'}, 'rstatus': False, 'voiceNote': 'Please close door 2', 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'error': {'code': 20001, 'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress'}}
[2026-08-31 18:20:55,723.723 INFO    ] 200
[2026-08-31 18:20:55,725.725 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "KITKAT Nestle 4 Finger Chocolate 38g"}, {"qty": 2, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 18:20:55,729.729 INFO    ] {'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'KITKAT Nestle 4 Finger Chocolate 38g', 'qty': 1}, {'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'qty': 2}]}, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW'}, 'rstatus': False, 'voiceNote': 'Please close door 2', 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'error': {'code': 20001, 'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress'}}
[2026-08-31 18:20:58,794.794 INFO    ] 200
[2026-08-31 18:20:58,797.797 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "KITKAT Nestle 4 Finger Chocolate 38g"}, {"qty": 2, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 18:20:58,801.801 INFO    ] Please close door 2
[2026-08-31 18:20:58,804.804 INFO    ] Please close door 2
[2026-08-31 18:20:58,807.807 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-08-31 18:20:58,810.810 INFO    ] 2026-08-31 18:20:58
[2026-08-31 18:20:58,813.813 INFO    ] playing audio file
[2026-08-31 18:20:58,832.832 INFO    ] 2026-08-31 18:20:58
[2026-08-31 18:20:58,836.836 INFO    ] publish_status: order_id=TM08202202260831181629964
[2026-08-31 18:20:58,840.840 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831181629964
[2026-08-31 18:20:58,961.961 INFO    ] [publish_status] Message added to stream with ID: 1788180658909-0
[2026-08-31 18:20:58,964.964 INFO    ] Published to order:TM08202202260831181629964: {'timestamp': '2026-08-31T12:50:58.834284Z', 'server_status': 'OrderStatus', 'order_id': 'TM08202202260831181629964', 'server_response': '{"SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "KITKAT Nestle 4 Finger Chocolate 38g", "qty": 1}, {"name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g", "qty": 2}]}, "SectionStatus": {"SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\\nIS \\nOPEN \\nNOW"}, "rstatus": false, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "status": "False", "error": {"code": 20001, "tmessage": "In Progress", "data": {}, "umessage": "In Progress"}}'} (ID: 1788180658909-0)
[2026-08-31 18:20:59,545.545 INFO    ] {'server_status': 'OrderStatus', 'order_id': 'TM08202202260831181629964', 'server_response': {'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'KITKAT Nestle 4 Finger Chocolate 38g', 'qty': 1}, {'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'qty': 2}]}, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW'}, 'rstatus': False, 'voiceNote': 'Please close door 2', 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'error': {'code': 20001, 'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress'}}}
[2026-08-31 18:20:59,548.548 INFO    ] 200
[2026-08-31 18:20:59,551.551 INFO    ] {"data":{"server_status":"OrderStatus","order_id":"TM08202202260831181629964","server_response":{"SectionSKU":{"Header":"Pick the below items from the door","skus":[{"name":"KITKAT Nestle 4 Finger Chocolate 38g","qty":1},{"name":"NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g","qty":2}]},"SectionStatus":{"SubHeader":"Please Pick the Products and close the door","Header":"Please Close Door 2","Note":"Please Close the door after picking up products","UI_Header":"DOOR 2\nIS \nOPEN \nNOW"},"rstatus":false,"voiceNote":"Please close door 2","SectionMain":{"Header":"Door Open"},"status":"false","error":{"code":20001,"tmessage":"In Progress","data":[],"umessage":"In Progress"}}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 18:20:59,555.555 INFO    ] {'data': {'server_status': 'OrderStatus', 'order_id': 'TM08202202260831181629964', 'server_response': {'voiceNote': 'Please close door 2', 'error': {'code': 20001, 'tmessage': 'In Progress', 'data': [], 'umessage': 'In Progress'}, 'rstatus': False, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW'}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'false', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'KITKAT Nestle 4 Finger Chocolate 38g', 'qty': 1}, {'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'qty': 2}]}}}, 'response': {'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'msg': 'order updated successfully', 'status': True}}
[2026-08-31 18:20:59,558.558 INFO    ] {'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'KITKAT Nestle 4 Finger Chocolate 38g', 'qty': 1}, {'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'qty': 2}]}, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW'}, 'rstatus': False, 'voiceNote': 'Please close door 2', 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'error': {'code': 20001, 'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress'}}
[2026-08-31 18:21:02,620.620 INFO    ] 200
[2026-08-31 18:21:02,623.623 INFO    ] {"SectionSKU": {"skus": [], "Header": "If you like us, tell others... else tell us"}, "voiceNote": "Transaction Completed", "SectionMain": {"Header": "Door Closed"}, "SectionStatus": {"Note": "If any due amount, clear at https://go.tinymart.in", "UI_Header": "", "SubHeader": "Please wait for invoice to generate", "Header": " Order is complete "}, "delay": 100, "status": "True", "rstatus": true}
[2026-08-31 18:21:02,628.628 INFO    ] {'delay': 100, 'SectionStatus': {'SubHeader': 'Please wait for invoice to generate', 'Header': ' Order is complete ', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'UI_Header': ''}, 'rstatus': True, 'voiceNote': 'Transaction Completed', 'SectionMain': {'Header': 'Door Closed'}, 'status': 'True', 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}}
[2026-08-31 18:21:02,632.632 INFO    ] 2026-08-31 18:21:02
[2026-08-31 18:21:02,635.635 INFO    ] Order Completed 
[2026-08-31 18:21:02,639.639 INFO    ] Order Completed 
[2026-08-31 18:21:02,643.643 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-08-31 18:21:02,648.648 INFO    ] 2026-08-31 18:21:02
[2026-08-31 18:21:02,651.651 INFO    ] playing audio file
[2026-08-31 18:21:02,677.677 INFO    ] 2026-08-31 18:21:02
[2026-08-31 18:21:02,682.682 INFO    ] {'delay': 100, 'SectionStatus': {'SubHeader': 'Please wait for invoice to generate', 'Header': ' Order is complete ', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'UI_Header': ''}, 'rstatus': True, 'voiceNote': 'Transaction Completed', 'SectionMain': {'Header': 'Door Closed'}, 'status': 'True', 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}}
[2026-08-31 18:21:02,687.687 INFO    ] 2026-08-31 18:21:02
[2026-08-31 18:21:03,986.986 INFO    ] 200
[2026-08-31 18:21:03,990.990 INFO    ] {"skus": [{"qty": 1, "image_url": "https://images.tinymart.in/product/4500714-2989.png", "sku_total": 10.0, "mrp": "10", "tray_id": "14", "name": "McVities Triple Nut Cookies 58gm per peice", "skuid": "4500714", "unit_price": "10", "door_id": ""}, {"qty": 1, "image_url": "https://images.tinymart.in/product/4500681-9948.webp", "sku_total": 10.0, "mrp": "10", "tray_id": "16", "name": "McVities Orange Cream Biscuts 61gm per peice", "skuid": "4500681", "unit_price": "10", "door_id": ""}, {"qty": 1, "image_url": "https://images.tinymart.in/product/4500709-2651.webp", "sku_total": 10.0, "mrp": "10", "tray_id": "20", "name": "McVities Butter Jeera Cookies58gm per peice", "skuid": "4500709", "unit_price": "10", "door_id": ""}, {"qty": 1, "image_url": "https://images.tinymart.in/product/4500723-3888.png", "sku_total": 10.0, "mrp": "10", "tray_id": "23", "name": "MaxVita Moong daal 25gm per peice", "skuid": "4500723", "unit_price": "10", "door_id": ""}, {"qty": 1, "image_url": "https://images.tinymart.in/product/186100-6904.jpg", "sku_total": 20.0, "mrp": "20", "tray_id": "25", "name": "Too Yumm Crea onion 33gm per peice", "skuid": "186100", "unit_price": "20", "door_id": ""}, {"qty": 1, "image_url": "https://images.tinymart.in/product/4500678-5296.png", "sku_total": 10.0, "mrp": "10", "tray_id": "41", "name": "Eat Bit Sesame  Chikki 32gm per peice", "skuid": "4500678", "unit_price": "10", "door_id": ""}, {"qty": 1, "image_url": "https://images.tinymart.in/product/186084-5395.png", "sku_total": 30.0, "mrp": "30", "tray_id": "42", "name": "KITKAT Nestle 4 Finger Chocolate 38g per peice", "skuid": "186084", "unit_price": "30", "door_id": ""}, {"qty": 4, "image_url": "https://images.tinymart.in/product/185993-3509.webp", "sku_total": 80.0, "mrp": "20", "tray_id": "43", "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice", "skuid": "185993", "unit_price": "20", "door_id": ""}], "anomaly": 0, "orderId": "TM08202202260831181629964", "res": "True", "logic": "WBL", "total_amount": 180.0, "rstatus": true}
[2026-08-31 18:21:03,994.994 INFO    ] {'anomaly': 0, 'rstatus': True, 'res': 'True', 'orderId': 'TM08202202260831181629964', 'skus': [{'door_id': '', 'mrp': '10', 'skuid': '4500714', 'tray_id': '14', 'sku_total': 10.0, 'name': 'McVities Triple Nut Cookies 58gm per peice', 'qty': 1, 'unit_price': '10', 'image_url': 'https://images.tinymart.in/product/4500714-2989.png'}, {'door_id': '', 'mrp': '10', 'skuid': '4500681', 'tray_id': '16', 'sku_total': 10.0, 'name': 'McVities Orange Cream Biscuts 61gm per peice', 'qty': 1, 'unit_price': '10', 'image_url': 'https://images.tinymart.in/product/4500681-9948.webp'}, {'door_id': '', 'mrp': '10', 'skuid': '4500709', 'tray_id': '20', 'sku_total': 10.0, 'name': 'McVities Butter Jeera Cookies58gm per peice', 'qty': 1, 'unit_price': '10', 'image_url': 'https://images.tinymart.in/product/4500709-2651.webp'}, {'door_id': '', 'mrp': '10', 'skuid': '4500723', 'tray_id': '23', 'sku_total': 10.0, 'name': 'MaxVita Moong daal 25gm per peice', 'qty': 1, 'unit_price': '10', 'image_url': 'https://images.tinymart.in/product/4500723-3888.png'}, {'door_id': '', 'mrp': '20', 'skuid': '186100', 'tray_id': '25', 'sku_total': 20.0, 'name': 'Too Yumm Crea onion 33gm per peice', 'qty': 1, 'unit_price': '20', 'image_url': 'https://images.tinymart.in/product/186100-6904.jpg'}, {'door_id': '', 'mrp': '10', 'skuid': '4500678', 'tray_id': '41', 'sku_total': 10.0, 'name': 'Eat Bit Sesame  Chikki 32gm per peice', 'qty': 1, 'unit_price': '10', 'image_url': 'https://images.tinymart.in/product/4500678-5296.png'}, {'door_id': '', 'mrp': '30', 'skuid': '186084', 'tray_id': '42', 'sku_total': 30.0, 'name': 'KITKAT Nestle 4 Finger Chocolate 38g per peice', 'qty': 1, 'unit_price': '30', 'image_url': 'https://images.tinymart.in/product/186084-5395.png'}, {'door_id': '', 'mrp': '20', 'skuid': '185993', 'tray_id': '43', 'sku_total': 80.0, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice', 'qty': 4, 'unit_price': '20', 'image_url': 'https://images.tinymart.in/product/185993-3509.webp'}], 'total_amount': 180.0, 'logic': 'WBL'}
[2026-08-31 18:21:03,998.998 INFO    ] {'anomaly': 0, 'rstatus': True, 'res': 'True', 'orderId': 'TM08202202260831181629964', 'skus': [{'door_id': '', 'mrp': '10', 'skuid': '4500714', 'tray_id': '14', 'sku_total': 10.0, 'name': 'McVities Triple Nut Cookies 58gm per peice', 'qty': 1, 'unit_price': '10', 'image_url': 'https://images.tinymart.in/product/4500714-2989.png'}, {'door_id': '', 'mrp': '10', 'skuid': '4500681', 'tray_id': '16', 'sku_total': 10.0, 'name': 'McVities Orange Cream Biscuts 61gm per peice', 'qty': 1, 'unit_price': '10', 'image_url': 'https://images.tinymart.in/product/4500681-9948.webp'}, {'door_id': '', 'mrp': '10', 'skuid': '4500709', 'tray_id': '20', 'sku_total': 10.0, 'name': 'McVities Butter Jeera Cookies58gm per peice', 'qty': 1, 'unit_price': '10', 'image_url': 'https://images.tinymart.in/product/4500709-2651.webp'}, {'door_id': '', 'mrp': '10', 'skuid': '4500723', 'tray_id': '23', 'sku_total': 10.0, 'name': 'MaxVita Moong daal 25gm per peice', 'qty': 1, 'unit_price': '10', 'image_url': 'https://images.tinymart.in/product/4500723-3888.png'}, {'door_id': '', 'mrp': '20', 'skuid': '186100', 'tray_id': '25', 'sku_total': 20.0, 'name': 'Too Yumm Crea onion 33gm per peice', 'qty': 1, 'unit_price': '20', 'image_url': 'https://images.tinymart.in/product/186100-6904.jpg'}, {'door_id': '', 'mrp': '10', 'skuid': '4500678', 'tray_id': '41', 'sku_total': 10.0, 'name': 'Eat Bit Sesame  Chikki 32gm per peice', 'qty': 1, 'unit_price': '10', 'image_url': 'https://images.tinymart.in/product/4500678-5296.png'}, {'door_id': '', 'mrp': '30', 'skuid': '186084', 'tray_id': '42', 'sku_total': 30.0, 'name': 'KITKAT Nestle 4 Finger Chocolate 38g per peice', 'qty': 1, 'unit_price': '30', 'image_url': 'https://images.tinymart.in/product/186084-5395.png'}, {'door_id': '', 'mrp': '20', 'skuid': '185993', 'tray_id': '43', 'sku_total': 80.0, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice', 'qty': 4, 'unit_price': '20', 'image_url': 'https://images.tinymart.in/product/185993-3509.webp'}], 'total_amount': 180.0, 'logic': 'WBL'}
[2026-08-31 18:21:04,002.002 INFO    ] 2026-08-31 18:21:04
[2026-08-31 18:21:04,005.005 INFO    ] 2026-08-31 18:21:04
[2026-08-31 18:21:04,008.008 INFO    ] 120
[2026-08-31 18:21:04,012.012 INFO    ] 2026-08-31 18:21:04
[2026-08-31 18:21:04,015.015 INFO    ] 2026-08-31 18:21:04
[2026-08-31 18:21:04,019.019 INFO    ]  You had Picked Excess of 60 Your Bill Amount is 180
[2026-08-31 18:21:04,022.022 INFO    ]  You had Picked Excess of 60 Your Bill Amount is 180
[2026-08-31 18:21:04,025.025 INFO    ] 557545eed622360b5bde0ab4877e2675
[2026-08-31 18:21:04,029.029 INFO    ] 2026-08-31 18:21:04
[2026-08-31 18:21:04,032.032 INFO    ] creating audio file
[2026-08-31 18:21:04,036.036 INFO    ] Calling gTTS API with 60s timeout...
[2026-08-31 18:21:04,856.856 INFO    ] gTTS API call completed successfully
[2026-08-31 18:21:06,228.228 INFO    ] 2026-08-31 18:21:06
[2026-08-31 18:21:06,231.231 INFO    ] playing audio file
[2026-08-31 18:21:06,250.250 INFO    ] 2026-08-31 18:21:06
[2026-08-31 18:21:06,254.254 INFO    ] 2026-08-31 18:21:06
[2026-08-31 18:21:06,259.259 INFO    ] publish_status: order_id=TM08202202260831181629964
[2026-08-31 18:21:06,262.262 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831181629964
[2026-08-31 18:21:06,672.672 INFO    ] [publish_status] Message added to stream with ID: 1788180666617-0
[2026-08-31 18:21:06,676.676 INFO    ] Published to order:TM08202202260831181629964: {'timestamp': '2026-08-31T12:51:06.257239Z', 'server_status': 'invoiceOrder', 'order_id': 'TM08202202260831181629964', 'server_response': '{"anomaly": 0, "rstatus": true, "res": "True", "orderId": "TM08202202260831181629964", "skus": [{"door_id": "", "mrp": "10", "skuid": "4500714", "tray_id": "14", "sku_total": 10.0, "name": "McVities Triple Nut Cookies 58gm per peice", "qty": 1, "unit_price": "10", "image_url": "https://images.tinymart.in/product/4500714-2989.png"}, {"door_id": "", "mrp": "10", "skuid": "4500681", "tray_id": "16", "sku_total": 10.0, "name": "McVities Orange Cream Biscuts 61gm per peice", "qty": 1, "unit_price": "10", "image_url": "https://images.tinymart.in/product/4500681-9948.webp"}, {"door_id": "", "mrp": "10", "skuid": "4500709", "tray_id": "20", "sku_total": 10.0, "name": "McVities Butter Jeera Cookies58gm per peice", "qty": 1, "unit_price": "10", "image_url": "https://images.tinymart.in/product/4500709-2651.webp"}, {"door_id": "", "mrp": "10", "skuid": "4500723", "tray_id": "23", "sku_total": 10.0, "name": "MaxVita Moong daal 25gm per peice", "qty": 1, "unit_price": "10", "image_url": "https://images.tinymart.in/product/4500723-3888.png"}, {"door_id": "", "mrp": "20", "skuid": "186100", "tray_id": "25", "sku_total": 20.0, "name": "Too Yumm Crea onion 33gm per peice", "qty": 1, "unit_price": "20", "image_url": "https://images.tinymart.in/product/186100-6904.jpg"}, {"door_id": "", "mrp": "10", "skuid": "4500678", "tray_id": "41", "sku_total": 10.0, "name": "Eat Bit Sesame  Chikki 32gm per peice", "qty": 1, "unit_price": "10", "image_url": "https://images.tinymart.in/product/4500678-5296.png"}, {"door_id": "", "mrp": "30", "skuid": "186084", "tray_id": "42", "sku_total": 30.0, "name": "KITKAT Nestle 4 Finger Chocolate 38g per peice", "qty": 1, "unit_price": "30", "image_url": "https://images.tinymart.in/product/186084-5395.png"}, {"door_id": "", "mrp": "20", "skuid": "185993", "tray_id": "43", "sku_total": 80.0, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice", "qty": 4, "unit_price": "20", "image_url": "https://images.tinymart.in/product/185993-3509.webp"}], "total_amount": 180.0, "logic": "WBL"}'} (ID: 1788180666617-0)
[2026-08-31 18:21:08,129.129 INFO    ] {'server_status': 'invoiceOrder', 'order_id': 'TM08202202260831181629964', 'server_response': {'anomaly': 0, 'rstatus': True, 'res': 'True', 'orderId': 'TM08202202260831181629964', 'skus': [{'door_id': '', 'mrp': '10', 'skuid': '4500714', 'tray_id': '14', 'sku_total': 10.0, 'name': 'McVities Triple Nut Cookies 58gm per peice', 'qty': 1, 'unit_price': '10', 'image_url': 'https://images.tinymart.in/product/4500714-2989.png'}, {'door_id': '', 'mrp': '10', 'skuid': '4500681', 'tray_id': '16', 'sku_total': 10.0, 'name': 'McVities Orange Cream Biscuts 61gm per peice', 'qty': 1, 'unit_price': '10', 'image_url': 'https://images.tinymart.in/product/4500681-9948.webp'}, {'door_id': '', 'mrp': '10', 'skuid': '4500709', 'tray_id': '20', 'sku_total': 10.0, 'name': 'McVities Butter Jeera Cookies58gm per peice', 'qty': 1, 'unit_price': '10', 'image_url': 'https://images.tinymart.in/product/4500709-2651.webp'}, {'door_id': '', 'mrp': '10', 'skuid': '4500723', 'tray_id': '23', 'sku_total': 10.0, 'name': 'MaxVita Moong daal 25gm per peice', 'qty': 1, 'unit_price': '10', 'image_url': 'https://images.tinymart.in/product/4500723-3888.png'}, {'door_id': '', 'mrp': '20', 'skuid': '186100', 'tray_id': '25', 'sku_total': 20.0, 'name': 'Too Yumm Crea onion 33gm per peice', 'qty': 1, 'unit_price': '20', 'image_url': 'https://images.tinymart.in/product/186100-6904.jpg'}, {'door_id': '', 'mrp': '10', 'skuid': '4500678', 'tray_id': '41', 'sku_total': 10.0, 'name': 'Eat Bit Sesame  Chikki 32gm per peice', 'qty': 1, 'unit_price': '10', 'image_url': 'https://images.tinymart.in/product/4500678-5296.png'}, {'door_id': '', 'mrp': '30', 'skuid': '186084', 'tray_id': '42', 'sku_total': 30.0, 'name': 'KITKAT Nestle 4 Finger Chocolate 38g per peice', 'qty': 1, 'unit_price': '30', 'image_url': 'https://images.tinymart.in/product/186084-5395.png'}, {'door_id': '', 'mrp': '20', 'skuid': '185993', 'tray_id': '43', 'sku_total': 80.0, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice', 'qty': 4, 'unit_price': '20', 'image_url': 'https://images.tinymart.in/product/185993-3509.webp'}], 'total_amount': 180.0, 'logic': 'WBL'}}
[2026-08-31 18:21:08,132.132 INFO    ] 200
[2026-08-31 18:21:08,134.134 INFO    ] {"data":{"server_status":"invoiceOrder","order_id":"TM08202202260831181629964","server_response":{"anomaly":0,"rstatus":true,"res":"true","orderId":"TM08202202260831181629964","skus":[{"door_id":"","mrp":"10","skuid":"4500714","tray_id":"14","sku_total":10,"name":"McVities Triple Nut Cookies 58gm per peice","qty":1,"unit_price":"10","image_url":"https:\/\/images.tinymart.in\/product\/4500714-2989.png"},{"door_id":"","mrp":"10","skuid":"4500681","tray_id":"16","sku_total":10,"name":"McVities Orange Cream Biscuts 61gm per peice","qty":1,"unit_price":"10","image_url":"https:\/\/images.tinymart.in\/product\/4500681-9948.webp"},{"door_id":"","mrp":"10","skuid":"4500709","tray_id":"20","sku_total":10,"name":"McVities Butter Jeera Cookies58gm per peice","qty":1,"unit_price":"10","image_url":"https:\/\/images.tinymart.in\/product\/4500709-2651.webp"},{"door_id":"","mrp":"10","skuid":"4500723","tray_id":"23","sku_total":10,"name":"MaxVita Moong daal 25gm per peice","qty":1,"unit_price":"10","image_url":"https:\/\/images.tinymart.in\/product\/4500723-3888.png"},{"door_id":"","mrp":"20","skuid":"186100","tray_id":"25","sku_total":20,"name":"Too Yumm Crea onion 33gm per peice","qty":1,"unit_price":"20","image_url":"https:\/\/images.tinymart.in\/product\/186100-6904.jpg"},{"door_id":"","mrp":"10","skuid":"4500678","tray_id":"41","sku_total":10,"name":"Eat Bit Sesame  Chikki 32gm per peice","qty":1,"unit_price":"10","image_url":"https:\/\/images.tinymart.in\/product\/4500678-5296.png"},{"door_id":"","mrp":"30","skuid":"186084","tray_id":"42","sku_total":30,"name":"KITKAT Nestle 4 Finger Chocolate 38g per peice","qty":1,"unit_price":"30","image_url":"https:\/\/images.tinymart.in\/product\/186084-5395.png"},{"door_id":"","mrp":"20","skuid":"185993","tray_id":"43","sku_total":80,"name":"NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice","qty":4,"unit_price":"20","image_url":"https:\/\/images.tinymart.in\/product\/185993-3509.webp"}],"total_amount":180,"logic":"WBL"}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 18:21:08,138.138 INFO    ] {'data': {'server_status': 'invoiceOrder', 'order_id': 'TM08202202260831181629964', 'server_response': {'anomaly': 0, 'orderId': 'TM08202202260831181629964', 'res': 'true', 'rstatus': True, 'logic': 'WBL', 'total_amount': 180, 'skus': [{'qty': 1, 'mrp': '10', 'door_id': '', 'tray_id': '14', 'sku_total': 10, 'name': 'McVities Triple Nut Cookies 58gm per peice', 'skuid': '4500714', 'unit_price': '10', 'image_url': 'https://images.tinymart.in/product/4500714-2989.png'}, {'qty': 1, 'mrp': '10', 'door_id': '', 'tray_id': '16', 'sku_total': 10, 'name': 'McVities Orange Cream Biscuts 61gm per peice', 'skuid': '4500681', 'unit_price': '10', 'image_url': 'https://images.tinymart.in/product/4500681-9948.webp'}, {'qty': 1, 'mrp': '10', 'door_id': '', 'tray_id': '20', 'sku_total': 10, 'name': 'McVities Butter Jeera Cookies58gm per peice', 'skuid': '4500709', 'unit_price': '10', 'image_url': 'https://images.tinymart.in/product/4500709-2651.webp'}, {'qty': 1, 'mrp': '10', 'door_id': '', 'tray_id': '23', 'sku_total': 10, 'name': 'MaxVita Moong daal 25gm per peice', 'skuid': '4500723', 'unit_price': '10', 'image_url': 'https://images.tinymart.in/product/4500723-3888.png'}, {'qty': 1, 'mrp': '20', 'door_id': '', 'tray_id': '25', 'sku_total': 20, 'name': 'Too Yumm Crea onion 33gm per peice', 'skuid': '186100', 'unit_price': '20', 'image_url': 'https://images.tinymart.in/product/186100-6904.jpg'}, {'qty': 1, 'mrp': '10', 'door_id': '', 'tray_id': '41', 'sku_total': 10, 'name': 'Eat Bit Sesame  Chikki 32gm per peice', 'skuid': '4500678', 'unit_price': '10', 'image_url': 'https://images.tinymart.in/product/4500678-5296.png'}, {'qty': 1, 'mrp': '30', 'door_id': '', 'tray_id': '42', 'sku_total': 30, 'name': 'KITKAT Nestle 4 Finger Chocolate 38g per peice', 'skuid': '186084', 'unit_price': '30', 'image_url': 'https://images.tinymart.in/product/186084-5395.png'}, {'qty': 4, 'mrp': '20', 'door_id': '', 'tray_id': '43', 'sku_total': 80, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice', 'skuid': '185993', 'unit_price': '20', 'image_url': 'https://images.tinymart.in/product/185993-3509.webp'}]}}, 'response': {'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'msg': 'order updated successfully', 'status': True}}
[2026-08-31 18:21:08,141.141 INFO    ] {'data': {'server_status': 'invoiceOrder', 'order_id': 'TM08202202260831181629964', 'server_response': {'anomaly': 0, 'orderId': 'TM08202202260831181629964', 'res': 'true', 'rstatus': True, 'logic': 'WBL', 'total_amount': 180, 'skus': [{'qty': 1, 'mrp': '10', 'door_id': '', 'tray_id': '14', 'sku_total': 10, 'name': 'McVities Triple Nut Cookies 58gm per peice', 'skuid': '4500714', 'unit_price': '10', 'image_url': 'https://images.tinymart.in/product/4500714-2989.png'}, {'qty': 1, 'mrp': '10', 'door_id': '', 'tray_id': '16', 'sku_total': 10, 'name': 'McVities Orange Cream Biscuts 61gm per peice', 'skuid': '4500681', 'unit_price': '10', 'image_url': 'https://images.tinymart.in/product/4500681-9948.webp'}, {'qty': 1, 'mrp': '10', 'door_id': '', 'tray_id': '20', 'sku_total': 10, 'name': 'McVities Butter Jeera Cookies58gm per peice', 'skuid': '4500709', 'unit_price': '10', 'image_url': 'https://images.tinymart.in/product/4500709-2651.webp'}, {'qty': 1, 'mrp': '10', 'door_id': '', 'tray_id': '23', 'sku_total': 10, 'name': 'MaxVita Moong daal 25gm per peice', 'skuid': '4500723', 'unit_price': '10', 'image_url': 'https://images.tinymart.in/product/4500723-3888.png'}, {'qty': 1, 'mrp': '20', 'door_id': '', 'tray_id': '25', 'sku_total': 20, 'name': 'Too Yumm Crea onion 33gm per peice', 'skuid': '186100', 'unit_price': '20', 'image_url': 'https://images.tinymart.in/product/186100-6904.jpg'}, {'qty': 1, 'mrp': '10', 'door_id': '', 'tray_id': '41', 'sku_total': 10, 'name': 'Eat Bit Sesame  Chikki 32gm per peice', 'skuid': '4500678', 'unit_price': '10', 'image_url': 'https://images.tinymart.in/product/4500678-5296.png'}, {'qty': 1, 'mrp': '30', 'door_id': '', 'tray_id': '42', 'sku_total': 30, 'name': 'KITKAT Nestle 4 Finger Chocolate 38g per peice', 'skuid': '186084', 'unit_price': '30', 'image_url': 'https://images.tinymart.in/product/186084-5395.png'}, {'qty': 4, 'mrp': '20', 'door_id': '', 'tray_id': '43', 'sku_total': 80, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice', 'skuid': '185993', 'unit_price': '20', 'image_url': 'https://images.tinymart.in/product/185993-3509.webp'}]}}, 'response': {'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'msg': 'order updated successfully', 'status': True}}
[2026-08-31 18:21:08,143.143 INFO    ] 2026-08-31 18:21:08
[2026-08-31 18:21:11,868.868 INFO    ] 200
[2026-08-31 18:21:11,870.870 INFO    ] {"tray_sync": [], "order_items": [], "orders_data": [], "orders_synced": [], "tray_synced": ["TM08202202260831181629964", "TM08202202260831181629964", "TM08202202260831181629964", "TM08202202260831181629964", "TM08202202260831181629964", "TM08202202260831181629964", "TM08202202260831181629964", "TM08202202260831181629964", "TM08202202260831181629964", "TM08202202260831181629964", "TM08202202260831181629964", "TM08202202260831181629964", "TM08202202260831181629964", "TM08202202260831181629964", "TM08202202260831181629964", "TM08202202260831181629964", "TM08202202260831181629964", "TM08202202260831181629964", "TM08202202260831181629964", "TM08202202260831181629964", "TM08202202260831181629964", "TM08202202260831181629964", "TM08202202260831181629964", "TM08202202260831181629964", "TM08202202260831181629964", "TM08202202260831181629964", "TM08202202260831181629964", "TM08202202260831181629964", "TM08202202260831181629964", "TM08202202260831181629964", "TM08202202260831181629964", "TM08202202260831181629964"], "orders_data_synced": [], "status": true, "order_items_synced": ["TM08202202260831181629964_0", "TM08202202260831181629964_1", "TM08202202260831181629964_2", "TM08202202260831181629964_3", "TM08202202260831181629964_4", "TM08202202260831181629964_5", "TM08202202260831181629964_6", "TM08202202260831181629964_7"], "orders": []}
[2026-08-31 18:21:11,873.873 INFO    ] 2026-08-31 18:21:11
[2026-08-31 18:21:12,027.027 INFO    ] 200
[2026-08-31 18:21:12,030.030 INFO    ] True
[2026-08-31 18:21:12,033.033 INFO    ] cleanup_start_order_file_after_processing: order_id=TM08202202260831181629964
[2026-08-31 18:21:12,036.036 INFO    ] start order file deleted
[2026-08-31 18:21:12,040.040 INFO    ] Checking for system updates...
[2026-08-31 18:21:12,078.078 INFO    ] 200
[2026-08-31 18:21:12,081.081 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:21:12,139.139 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:21:12,141.141 INFO    ] No update needed
[2026-08-31 18:21:12,144.144 INFO    ] Checking for camera pi updates...
[2026-08-31 18:21:12,181.181 INFO    ] 200
[2026-08-31 18:21:12,184.184 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:21:12,231.231 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:21:12,361.361 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:21:12,364.364 INFO    ] No camera update needed
[2026-08-31 18:21:12,366.366 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:21:12,369.369 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:21:12,376.376 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:21:12,381.381 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:21:14,428.428 INFO    ] ================================================
[2026-08-31 18:21:14,569.569 INFO    ] Launching Daemon at Mon Aug 31 18:21:14 IST 2026
[2026-08-31 18:21:14,579.579 INFO    ] ================================================
[2026-08-31 18:21:15,168.168 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:21:15
[2026-08-31 18:21:15,847.847 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:21:16,125.125 INFO    ] Initializing speech engine...
[2026-08-31 18:21:16,132.132 INFO    ] 2026-08-31 18:21:16
[2026-08-31 18:21:16,416.416 INFO    ] 2026-08-31 18:21:16
[2026-08-31 18:21:16,452.452 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:21:16,651.651 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:21:16,669.669 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:21:16,859.859 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:21:16,893.893 INFO    ] time= 31/08/2026 18:21:16
[2026-08-31 18:21:16,947.947 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:21:16,993.993 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:21:17,126.126 INFO    ] Found 1 existing command(s) in stream
[2026-08-31 18:21:17,162.162 INFO    ] Checking historical command: ID=1788180607432-0
[2026-08-31 18:21:17,212.212 INFO    ] process_and_cleanup_command: msg_id=1788180607432-0
[2026-08-31 18:21:17,263.263 INFO    ] is_command_expired: timestamp=2026-08-31T12:50:07.503Z, expiry=30s
[2026-08-31 18:21:17,362.362 INFO    ] Command 1788180607432-0 is expired (older than 30s), removing...
[2026-08-31 18:21:17,469.469 INFO    ] Deleted expired command: 1788180607432-0
[2026-08-31 18:21:17,489.489 INFO    ] Processed historical messages, no valid command available...
[2026-08-31 18:21:22,504.504 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:21:22,507.507 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-08-31 18:21:23,163.163 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 18:21:23,166.166 INFO    ] Checking for system updates...
[2026-08-31 18:21:23,202.202 INFO    ] 200
[2026-08-31 18:21:23,205.205 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:21:23,256.256 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:21:23,259.259 INFO    ] No update needed
[2026-08-31 18:21:23,261.261 INFO    ] Checking for camera pi updates...
[2026-08-31 18:21:23,295.295 INFO    ] 200
[2026-08-31 18:21:23,297.297 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:21:23,338.338 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:21:23,420.420 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:21:23,422.422 INFO    ] No camera update needed
[2026-08-31 18:21:23,425.425 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:21:23,427.427 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:21:23,433.433 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:21:23,437.437 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:21:25,483.483 INFO    ] ================================================
[2026-08-31 18:21:25,498.498 INFO    ] Launching Daemon at Mon Aug 31 18:21:25 IST 2026
[2026-08-31 18:21:25,510.510 INFO    ] ================================================
[2026-08-31 18:21:26,080.080 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:21:26
[2026-08-31 18:21:26,665.665 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:21:26,916.916 INFO    ] Initializing speech engine...
[2026-08-31 18:21:26,939.939 INFO    ] 2026-08-31 18:21:26
[2026-08-31 18:21:27,194.194 INFO    ] 2026-08-31 18:21:27
[2026-08-31 18:21:27,229.229 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:21:27,413.413 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:21:27,429.429 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:21:27,629.629 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:21:27,699.699 INFO    ] time= 31/08/2026 18:21:27
[2026-08-31 18:21:27,758.758 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:21:27,768.768 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:21:27,906.906 INFO    ] No existing commands found in stream
[2026-08-31 18:21:32,926.926 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:21:32,936.936 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-08-31 18:21:35,336.336 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 18:21:35,339.339 INFO    ] Checking for system updates...
[2026-08-31 18:21:35,376.376 INFO    ] 200
[2026-08-31 18:21:35,379.379 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:21:35,432.432 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:21:35,434.434 INFO    ] No update needed
[2026-08-31 18:21:35,436.436 INFO    ] Checking for camera pi updates...
[2026-08-31 18:21:35,470.470 INFO    ] 200
[2026-08-31 18:21:35,473.473 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:21:35,514.514 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:21:35,606.606 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:21:35,609.609 INFO    ] No camera update needed
[2026-08-31 18:21:35,611.611 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:21:35,614.614 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:21:35,620.620 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:21:35,625.625 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:21:37,667.667 INFO    ] ================================================
[2026-08-31 18:21:37,683.683 INFO    ] Launching Daemon at Mon Aug 31 18:21:37 IST 2026
[2026-08-31 18:21:37,693.693 INFO    ] ================================================
[2026-08-31 18:21:38,261.261 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:21:38
[2026-08-31 18:21:38,940.940 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:21:39,253.253 INFO    ] Initializing speech engine...
[2026-08-31 18:21:39,265.265 INFO    ] 2026-08-31 18:21:39
[2026-08-31 18:21:39,576.576 INFO    ] 2026-08-31 18:21:39
[2026-08-31 18:21:39,664.664 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:21:39,821.821 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:21:39,827.827 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:21:40,055.055 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:21:40,090.090 INFO    ] time= 31/08/2026 18:21:40
[2026-08-31 18:21:40,112.112 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:21:40,142.142 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:21:40,247.247 INFO    ] No existing commands found in stream
[2026-08-31 18:21:45,276.276 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:21:45,279.279 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-08-31 18:21:47,792.792 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 18:21:47,795.795 INFO    ] Checking for system updates...
[2026-08-31 18:21:47,833.833 INFO    ] 200
[2026-08-31 18:21:47,835.835 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:21:47,893.893 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:21:47,895.895 INFO    ] No update needed
[2026-08-31 18:21:47,898.898 INFO    ] Checking for camera pi updates...
[2026-08-31 18:21:47,935.935 INFO    ] 200
[2026-08-31 18:21:47,937.937 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:21:47,980.980 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:21:48,065.065 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:21:48,068.068 INFO    ] No camera update needed
[2026-08-31 18:21:48,070.070 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:21:48,072.072 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:21:48,078.078 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:21:48,083.083 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:21:50,122.122 INFO    ] ================================================
[2026-08-31 18:21:50,138.138 INFO    ] Launching Daemon at Mon Aug 31 18:21:50 IST 2026
[2026-08-31 18:21:50,148.148 INFO    ] ================================================
[2026-08-31 18:21:50,746.746 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:21:50
[2026-08-31 18:21:51,331.331 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:21:51,595.595 INFO    ] Initializing speech engine...
[2026-08-31 18:21:51,601.601 INFO    ] 2026-08-31 18:21:51
[2026-08-31 18:21:51,877.877 INFO    ] 2026-08-31 18:21:51
[2026-08-31 18:21:51,912.912 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:21:52,169.169 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:21:52,173.173 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:21:52,308.308 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:21:52,358.358 INFO    ] time= 31/08/2026 18:21:52
[2026-08-31 18:21:52,417.417 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:21:52,442.442 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:21:52,571.571 INFO    ] No existing commands found in stream
[2026-08-31 18:21:57,593.593 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:21:57,596.596 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-08-31 18:22:02,008.008 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 18:22:02,011.011 INFO    ] Checking for system updates...
[2026-08-31 18:22:02,050.050 INFO    ] 200
[2026-08-31 18:22:02,053.053 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:22:02,115.115 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:22:02,118.118 INFO    ] No update needed
[2026-08-31 18:22:02,121.121 INFO    ] Checking for camera pi updates...
[2026-08-31 18:22:02,161.161 INFO    ] 200
[2026-08-31 18:22:02,164.164 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:22:02,218.218 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:22:02,336.336 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:22:02,339.339 INFO    ] No camera update needed
[2026-08-31 18:22:02,342.342 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:22:02,345.345 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:22:02,351.351 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:22:02,358.358 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:22:04,400.400 INFO    ] ================================================
[2026-08-31 18:22:04,415.415 INFO    ] Launching Daemon at Mon Aug 31 18:22:04 IST 2026
[2026-08-31 18:22:04,426.426 INFO    ] ================================================
[2026-08-31 18:22:05,103.103 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:22:05
[2026-08-31 18:22:05,788.788 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:22:06,063.063 INFO    ] Initializing speech engine...
[2026-08-31 18:22:06,073.073 INFO    ] 2026-08-31 18:22:06
[2026-08-31 18:22:06,335.335 INFO    ] 2026-08-31 18:22:06
[2026-08-31 18:22:06,408.408 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:22:06,703.703 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:22:06,712.712 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:22:06,912.912 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:22:06,931.931 INFO    ] time= 31/08/2026 18:22:06
[2026-08-31 18:22:06,961.961 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:22:06,972.972 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:22:07,121.121 INFO    ] No existing commands found in stream
[2026-08-31 18:22:12,152.152 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:22:12,155.155 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-08-31 18:22:13,375.375 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 18:22:13,378.378 INFO    ] Checking for system updates...
[2026-08-31 18:22:13,415.415 INFO    ] 200
[2026-08-31 18:22:13,418.418 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:22:13,472.472 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:22:13,474.474 INFO    ] No update needed
[2026-08-31 18:22:13,477.477 INFO    ] Checking for camera pi updates...
[2026-08-31 18:22:13,512.512 INFO    ] 200
[2026-08-31 18:22:13,515.515 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:22:13,556.556 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:22:13,643.643 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:22:13,645.645 INFO    ] No camera update needed
[2026-08-31 18:22:13,648.648 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:22:13,650.650 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:22:13,656.656 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:22:13,661.661 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:22:15,702.702 INFO    ] ================================================
[2026-08-31 18:22:15,717.717 INFO    ] Launching Daemon at Mon Aug 31 18:22:15 IST 2026
[2026-08-31 18:22:15,728.728 INFO    ] ================================================
[2026-08-31 18:22:16,293.293 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:22:16
[2026-08-31 18:22:16,965.965 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:22:17,217.217 INFO    ] Initializing speech engine...
[2026-08-31 18:22:17,239.239 INFO    ] 2026-08-31 18:22:17
[2026-08-31 18:22:17,495.495 INFO    ] 2026-08-31 18:22:17
[2026-08-31 18:22:17,532.532 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:22:17,789.789 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:22:17,797.797 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:22:18,004.004 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:22:18,064.064 INFO    ] time= 31/08/2026 18:22:18
[2026-08-31 18:22:18,071.071 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:22:18,089.089 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:22:18,207.207 INFO    ] No existing commands found in stream
[2026-08-31 18:22:23,230.230 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:22:23,233.233 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-08-31 18:22:25,579.579 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 18:22:25,582.582 INFO    ] Checking for system updates...
[2026-08-31 18:22:25,630.630 INFO    ] 200
[2026-08-31 18:22:25,632.632 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:22:25,684.684 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:22:25,686.686 INFO    ] No update needed
[2026-08-31 18:22:25,690.690 INFO    ] Checking for camera pi updates...
[2026-08-31 18:22:25,723.723 INFO    ] 200
[2026-08-31 18:22:25,725.725 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:22:25,768.768 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:22:25,851.851 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:22:25,854.854 INFO    ] No camera update needed
[2026-08-31 18:22:25,856.856 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:22:25,858.858 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:22:25,864.864 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:22:25,869.869 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:22:27,908.908 INFO    ] ================================================
[2026-08-31 18:22:27,923.923 INFO    ] Launching Daemon at Mon Aug 31 18:22:27 IST 2026
[2026-08-31 18:22:27,935.935 INFO    ] ================================================
[2026-08-31 18:22:28,503.503 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:22:28
[2026-08-31 18:22:29,088.088 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:22:29,360.360 INFO    ] Initializing speech engine...
[2026-08-31 18:22:29,369.369 INFO    ] 2026-08-31 18:22:29
[2026-08-31 18:22:29,617.617 INFO    ] 2026-08-31 18:22:29
[2026-08-31 18:22:29,651.651 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:22:29,851.851 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:22:29,879.879 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:22:30,056.056 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:22:30,062.062 INFO    ] time= 31/08/2026 18:22:30
[2026-08-31 18:22:30,123.123 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:22:30,177.177 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:22:30,325.325 INFO    ] No existing commands found in stream
[2026-08-31 18:22:35,350.350 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:22:35,353.353 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-08-31 18:22:36,201.201 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 18:22:36,203.203 INFO    ] Checking for system updates...
[2026-08-31 18:22:36,244.244 INFO    ] 200
[2026-08-31 18:22:36,247.247 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:22:36,300.300 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:22:36,302.302 INFO    ] No update needed
[2026-08-31 18:22:36,305.305 INFO    ] Checking for camera pi updates...
[2026-08-31 18:22:36,347.347 INFO    ] 200
[2026-08-31 18:22:36,350.350 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:22:36,396.396 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:22:36,524.524 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:22:36,527.527 INFO    ] No camera update needed
[2026-08-31 18:22:36,530.530 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:22:36,533.533 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:22:36,539.539 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:22:36,545.545 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:22:38,584.584 INFO    ] ================================================
[2026-08-31 18:22:38,600.600 INFO    ] Launching Daemon at Mon Aug 31 18:22:38 IST 2026
[2026-08-31 18:22:38,611.611 INFO    ] ================================================
[2026-08-31 18:22:39,191.191 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:22:39
[2026-08-31 18:22:39,788.788 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:22:40,066.066 INFO    ] Initializing speech engine...
[2026-08-31 18:22:40,073.073 INFO    ] 2026-08-31 18:22:40
[2026-08-31 18:22:40,328.328 INFO    ] 2026-08-31 18:22:40
[2026-08-31 18:22:40,377.377 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:22:40,576.576 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:22:40,630.630 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:22:40,793.793 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:22:40,828.828 INFO    ] time= 31/08/2026 18:22:40
[2026-08-31 18:22:40,900.900 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:22:40,930.930 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:22:41,082.082 INFO    ] No existing commands found in stream
[2026-08-31 18:22:46,104.104 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:22:46,107.107 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-08-31 18:22:49,825.825 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 18:22:49,828.828 INFO    ] Checking for system updates...
[2026-08-31 18:22:49,863.863 INFO    ] 200
[2026-08-31 18:22:49,865.865 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:22:49,923.923 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:22:49,926.926 INFO    ] No update needed
[2026-08-31 18:22:49,928.928 INFO    ] Checking for camera pi updates...
[2026-08-31 18:22:49,965.965 INFO    ] 200
[2026-08-31 18:22:49,967.967 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:22:50,012.012 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:22:50,097.097 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:22:50,100.100 INFO    ] No camera update needed
[2026-08-31 18:22:50,102.102 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:22:50,104.104 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:22:50,110.110 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:22:50,115.115 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:22:52,157.157 INFO    ] ================================================
[2026-08-31 18:22:52,172.172 INFO    ] Launching Daemon at Mon Aug 31 18:22:52 IST 2026
[2026-08-31 18:22:52,184.184 INFO    ] ================================================
[2026-08-31 18:22:52,764.764 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:22:52
[2026-08-31 18:22:53,363.363 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:22:53,632.632 INFO    ] Initializing speech engine...
[2026-08-31 18:22:53,644.644 INFO    ] 2026-08-31 18:22:53
[2026-08-31 18:22:53,893.893 INFO    ] 2026-08-31 18:22:53
[2026-08-31 18:22:53,958.958 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:22:54,180.180 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:22:54,189.189 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:22:54,323.323 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:22:54,393.393 INFO    ] time= 31/08/2026 18:22:54
[2026-08-31 18:22:54,442.442 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:22:54,456.456 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:22:54,604.604 INFO    ] No existing commands found in stream
[2026-08-31 18:22:59,622.622 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:22:59,625.625 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-08-31 18:23:01,770.770 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 18:23:01,773.773 INFO    ] Checking for system updates...
[2026-08-31 18:23:01,842.842 INFO    ] 200
[2026-08-31 18:23:01,856.856 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:23:01,968.968 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:23:01,972.972 INFO    ] No update needed
[2026-08-31 18:23:01,982.982 INFO    ] Checking for camera pi updates...
[2026-08-31 18:23:02,023.023 INFO    ] 200
[2026-08-31 18:23:02,026.026 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:23:02,073.073 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:23:02,230.230 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:23:02,233.233 INFO    ] No camera update needed
[2026-08-31 18:23:02,236.236 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:23:02,241.241 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:23:02,248.248 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:23:02,255.255 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:23:04,298.298 INFO    ] ================================================
[2026-08-31 18:23:04,314.314 INFO    ] Launching Daemon at Mon Aug 31 18:23:04 IST 2026
[2026-08-31 18:23:04,325.325 INFO    ] ================================================
[2026-08-31 18:23:04,892.892 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:23:04
[2026-08-31 18:23:05,476.476 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:23:05,751.751 INFO    ] Initializing speech engine...
[2026-08-31 18:23:05,761.761 INFO    ] 2026-08-31 18:23:05
[2026-08-31 18:23:06,039.039 INFO    ] 2026-08-31 18:23:06
[2026-08-31 18:23:06,096.096 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:23:06,329.329 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:23:06,344.344 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:23:06,559.559 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:23:06,620.620 INFO    ] time= 31/08/2026 18:23:06
[2026-08-31 18:23:06,627.627 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:23:06,641.641 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:23:06,767.767 INFO    ] No existing commands found in stream
[2026-08-31 18:23:11,789.789 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:23:11,792.792 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-08-31 18:23:12,535.535 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 18:23:12,538.538 INFO    ] Checking for system updates...
[2026-08-31 18:23:12,579.579 INFO    ] 200
[2026-08-31 18:23:12,582.582 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:23:12,641.641 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:23:12,643.643 INFO    ] No update needed
[2026-08-31 18:23:12,646.646 INFO    ] Checking for camera pi updates...
[2026-08-31 18:23:12,681.681 INFO    ] 200
[2026-08-31 18:23:12,684.684 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:23:12,731.731 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:23:12,819.819 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:23:12,821.821 INFO    ] No camera update needed
[2026-08-31 18:23:12,823.823 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:23:12,826.826 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:23:12,831.831 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:23:12,836.836 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:23:14,876.876 INFO    ] ================================================
[2026-08-31 18:23:14,892.892 INFO    ] Launching Daemon at Mon Aug 31 18:23:14 IST 2026
[2026-08-31 18:23:14,904.904 INFO    ] ================================================
[2026-08-31 18:23:15,486.486 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:23:15
[2026-08-31 18:23:16,083.083 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:23:16,349.349 INFO    ] Initializing speech engine...
[2026-08-31 18:23:16,370.370 INFO    ] 2026-08-31 18:23:16
[2026-08-31 18:23:16,654.654 INFO    ] 2026-08-31 18:23:16
[2026-08-31 18:23:16,690.690 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:23:16,895.895 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:23:16,901.901 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:23:17,044.044 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:23:17,051.051 INFO    ] time= 31/08/2026 18:23:17
[2026-08-31 18:23:17,071.071 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:23:17,094.094 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:23:17,179.179 INFO    ] No existing commands found in stream
[2026-08-31 18:23:22,190.190 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:23:22,193.193 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-08-31 18:23:23,011.011 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 18:23:23,014.014 INFO    ] Checking for system updates...
[2026-08-31 18:23:23,065.065 INFO    ] 200
[2026-08-31 18:23:23,068.068 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-08-31 18:23:23,071.071 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-08-31 18:23:23,073.073 INFO    ] Checking for camera pi updates...
[2026-08-31 18:23:23,113.113 INFO    ] 200
[2026-08-31 18:23:23,115.115 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-08-31 18:23:23,118.118 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-08-31 18:23:23,121.121 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:23:23,123.123 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:23:23,129.129 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:23:23,135.135 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:23:25,175.175 INFO    ] ================================================
[2026-08-31 18:23:25,191.191 INFO    ] Launching Daemon at Mon Aug 31 18:23:25 IST 2026
[2026-08-31 18:23:25,203.203 INFO    ] ================================================
[2026-08-31 18:23:25,787.787 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:23:25
[2026-08-31 18:23:26,386.386 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:23:26,648.648 INFO    ] Initializing speech engine...
[2026-08-31 18:23:26,654.654 INFO    ] 2026-08-31 18:23:26
[2026-08-31 18:23:26,957.957 INFO    ] 2026-08-31 18:23:26
[2026-08-31 18:23:26,980.980 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:23:27,237.237 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:23:27,258.258 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:23:27,434.434 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:23:27,489.489 INFO    ] time= 31/08/2026 18:23:27
[2026-08-31 18:23:27,521.521 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:23:27,527.527 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:23:27,677.677 INFO    ] No existing commands found in stream
[2026-08-31 18:23:32,709.709 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:23:32,712.712 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-08-31 18:23:36,744.744 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 18:23:36,746.746 INFO    ] Checking for system updates...
[2026-08-31 18:23:36,782.782 INFO    ] 200
[2026-08-31 18:23:36,784.784 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:23:36,840.840 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:23:36,842.842 INFO    ] No update needed
[2026-08-31 18:23:36,845.845 INFO    ] Checking for camera pi updates...
[2026-08-31 18:23:36,878.878 INFO    ] 200
[2026-08-31 18:23:36,881.881 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:23:36,926.926 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:23:36,980.980 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:23:36,982.982 INFO    ] No camera update needed
[2026-08-31 18:23:36,984.984 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:23:36,987.987 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:23:36,992.992 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:23:36,997.997 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:23:39,039.039 INFO    ] ================================================
[2026-08-31 18:23:39,055.055 INFO    ] Launching Daemon at Mon Aug 31 18:23:39 IST 2026
[2026-08-31 18:23:39,066.066 INFO    ] ================================================
[2026-08-31 18:23:39,654.654 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:23:39
[2026-08-31 18:23:40,245.245 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:23:40,511.511 INFO    ] Initializing speech engine...
[2026-08-31 18:23:40,521.521 INFO    ] 2026-08-31 18:23:40
[2026-08-31 18:23:40,777.777 INFO    ] 2026-08-31 18:23:40
[2026-08-31 18:23:40,836.836 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:23:41,040.040 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:23:41,043.043 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:23:41,192.192 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:23:41,232.232 INFO    ] time= 31/08/2026 18:23:41
[2026-08-31 18:23:41,259.259 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:23:41,324.324 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:23:41,442.442 INFO    ] No existing commands found in stream
[2026-08-31 18:23:46,450.450 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:23:46,453.453 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-08-31 18:23:49,825.825 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 18:23:49,828.828 INFO    ] Checking for system updates...
[2026-08-31 18:23:49,865.865 INFO    ] 200
[2026-08-31 18:23:49,868.868 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:23:49,930.930 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:23:49,933.933 INFO    ] No update needed
[2026-08-31 18:23:49,936.936 INFO    ] Checking for camera pi updates...
[2026-08-31 18:23:49,975.975 INFO    ] 200
[2026-08-31 18:23:49,977.977 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:23:50,024.024 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:23:50,076.076 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:23:50,079.079 INFO    ] No camera update needed
[2026-08-31 18:23:50,082.082 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:23:50,085.085 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:23:50,091.091 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:23:50,097.097 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:23:52,140.140 INFO    ] ================================================
[2026-08-31 18:23:52,156.156 INFO    ] Launching Daemon at Mon Aug 31 18:23:52 IST 2026
[2026-08-31 18:23:52,166.166 INFO    ] ================================================
[2026-08-31 18:23:52,737.737 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:23:52
[2026-08-31 18:23:53,323.323 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:23:53,594.594 INFO    ] Initializing speech engine...
[2026-08-31 18:23:53,614.614 INFO    ] 2026-08-31 18:23:53
[2026-08-31 18:23:53,886.886 INFO    ] 2026-08-31 18:23:53
[2026-08-31 18:23:53,925.925 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:23:54,135.135 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:23:54,153.153 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:23:54,303.303 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:23:54,311.311 INFO    ] time= 31/08/2026 18:23:54
[2026-08-31 18:23:54,315.315 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:23:54,322.322 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:23:54,399.399 INFO    ] No existing commands found in stream
[2026-08-31 18:23:59,429.429 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:23:59,432.432 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-08-31 18:24:01,529.529 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 18:24:01,533.533 INFO    ] Checking for system updates...
[2026-08-31 18:24:01,584.584 INFO    ] 200
[2026-08-31 18:24:01,590.590 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:24:01,685.685 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:24:01,688.688 INFO    ] No update needed
[2026-08-31 18:24:01,692.692 INFO    ] Checking for camera pi updates...
[2026-08-31 18:24:01,737.737 INFO    ] 200
[2026-08-31 18:24:01,740.740 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:24:01,828.828 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:24:01,915.915 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:24:01,918.918 INFO    ] No camera update needed
[2026-08-31 18:24:01,920.920 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:24:01,923.923 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:24:01,930.930 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:24:01,936.936 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:24:03,980.980 INFO    ] ================================================
[2026-08-31 18:24:03,995.995 INFO    ] Launching Daemon at Mon Aug 31 18:24:03 IST 2026
[2026-08-31 18:24:04,005.005 INFO    ] ================================================
[2026-08-31 18:24:04,650.650 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:24:04
[2026-08-31 18:24:05,319.319 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:24:05,626.626 INFO    ] Initializing speech engine...
[2026-08-31 18:24:05,637.637 INFO    ] 2026-08-31 18:24:05
[2026-08-31 18:24:05,917.917 INFO    ] 2026-08-31 18:24:05
[2026-08-31 18:24:05,963.963 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:24:06,210.210 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:24:06,218.218 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:24:06,432.432 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:24:06,471.471 INFO    ] time= 31/08/2026 18:24:06
[2026-08-31 18:24:06,477.477 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:24:06,497.497 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:24:06,623.623 INFO    ] No existing commands found in stream
[2026-08-31 18:24:11,637.637 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:24:11,640.640 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-08-31 18:24:12,247.247 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 18:24:12,250.250 INFO    ] Checking for system updates...
[2026-08-31 18:24:12,286.286 INFO    ] 200
[2026-08-31 18:24:12,288.288 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:24:12,341.341 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:24:12,344.344 INFO    ] No update needed
[2026-08-31 18:24:12,346.346 INFO    ] Checking for camera pi updates...
[2026-08-31 18:24:12,383.383 INFO    ] 200
[2026-08-31 18:24:12,385.385 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:24:12,430.430 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:24:12,481.481 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:24:12,483.483 INFO    ] No camera update needed
[2026-08-31 18:24:12,486.486 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:24:12,488.488 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:24:12,493.493 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:24:12,499.499 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:24:14,538.538 INFO    ] ================================================
[2026-08-31 18:24:14,553.553 INFO    ] Launching Daemon at Mon Aug 31 18:24:14 IST 2026
[2026-08-31 18:24:14,563.563 INFO    ] ================================================
[2026-08-31 18:24:15,135.135 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:24:15
[2026-08-31 18:24:15,722.722 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:24:15,998.998 INFO    ] Initializing speech engine...
[2026-08-31 18:24:16,013.013 INFO    ] 2026-08-31 18:24:15
[2026-08-31 18:24:16,285.285 INFO    ] 2026-08-31 18:24:16
[2026-08-31 18:24:16,323.323 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:24:16,519.519 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:24:16,532.532 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:24:16,694.694 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:24:16,701.701 INFO    ] time= 31/08/2026 18:24:16
[2026-08-31 18:24:16,708.708 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:24:16,730.730 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:24:16,861.861 INFO    ] No existing commands found in stream
[2026-08-31 18:24:21,885.885 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:24:21,888.888 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-08-31 18:24:25,903.903 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 18:24:25,906.906 INFO    ] Checking for system updates...
[2026-08-31 18:24:25,943.943 INFO    ] 200
[2026-08-31 18:24:25,945.945 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:24:26,004.004 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:24:26,007.007 INFO    ] No update needed
[2026-08-31 18:24:26,010.010 INFO    ] Checking for camera pi updates...
[2026-08-31 18:24:26,048.048 INFO    ] 200
[2026-08-31 18:24:26,051.051 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:24:26,097.097 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:24:26,176.176 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:24:26,178.178 INFO    ] No camera update needed
[2026-08-31 18:24:26,181.181 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:24:26,183.183 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:24:26,188.188 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:24:26,193.193 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:24:28,233.233 INFO    ] ================================================
[2026-08-31 18:24:28,248.248 INFO    ] Launching Daemon at Mon Aug 31 18:24:28 IST 2026
[2026-08-31 18:24:28,258.258 INFO    ] ================================================
[2026-08-31 18:24:28,824.824 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:24:28
[2026-08-31 18:24:29,411.411 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:24:29,668.668 INFO    ] Initializing speech engine...
[2026-08-31 18:24:29,681.681 INFO    ] 2026-08-31 18:24:29
[2026-08-31 18:24:29,965.965 INFO    ] 2026-08-31 18:24:29
[2026-08-31 18:24:30,002.002 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:24:30,222.222 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:24:30,230.230 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:24:30,444.444 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:24:30,454.454 INFO    ] time= 31/08/2026 18:24:30
[2026-08-31 18:24:30,499.499 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:24:30,532.532 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:24:30,653.653 INFO    ] No existing commands found in stream
[2026-08-31 18:24:35,665.665 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:24:35,668.668 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-08-31 18:24:38,210.210 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 18:24:38,213.213 INFO    ] Checking for system updates...
[2026-08-31 18:24:38,248.248 INFO    ] 200
[2026-08-31 18:24:38,251.251 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:24:38,304.304 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:24:38,307.307 INFO    ] No update needed
[2026-08-31 18:24:38,314.314 INFO    ] Checking for camera pi updates...
[2026-08-31 18:24:38,347.347 INFO    ] 200
[2026-08-31 18:24:38,350.350 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:24:38,391.391 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:24:38,485.485 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:24:38,488.488 INFO    ] No camera update needed
[2026-08-31 18:24:38,491.491 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:24:38,494.494 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:24:38,500.500 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:24:38,506.506 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:24:40,547.547 INFO    ] ================================================
[2026-08-31 18:24:40,562.562 INFO    ] Launching Daemon at Mon Aug 31 18:24:40 IST 2026
[2026-08-31 18:24:40,573.573 INFO    ] ================================================
[2026-08-31 18:24:41,152.152 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:24:41
[2026-08-31 18:24:41,733.733 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:24:41,999.999 INFO    ] Initializing speech engine...
[2026-08-31 18:24:42,008.008 INFO    ] 2026-08-31 18:24:42
[2026-08-31 18:24:42,255.255 INFO    ] 2026-08-31 18:24:42
[2026-08-31 18:24:42,290.290 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:24:42,542.542 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:24:42,551.551 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:24:42,769.769 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:24:42,812.812 INFO    ] time= 31/08/2026 18:24:42
[2026-08-31 18:24:42,827.827 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:24:42,836.836 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:24:42,965.965 INFO    ] No existing commands found in stream
[2026-08-31 18:24:47,983.983 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:24:47,986.986 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-08-31 18:24:49,643.643 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 18:24:49,645.645 INFO    ] Checking for system updates...
[2026-08-31 18:24:49,682.682 INFO    ] 200
[2026-08-31 18:24:49,684.684 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:24:49,736.736 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:24:49,739.739 INFO    ] No update needed
[2026-08-31 18:24:49,741.741 INFO    ] Checking for camera pi updates...
[2026-08-31 18:24:49,774.774 INFO    ] 200
[2026-08-31 18:24:49,777.777 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:24:49,821.821 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:24:49,888.888 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:24:49,890.890 INFO    ] No camera update needed
[2026-08-31 18:24:49,893.893 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:24:49,895.895 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:24:49,900.900 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:24:49,905.905 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:24:51,946.946 INFO    ] ================================================
[2026-08-31 18:24:51,963.963 INFO    ] Launching Daemon at Mon Aug 31 18:24:51 IST 2026
[2026-08-31 18:24:51,975.975 INFO    ] ================================================
[2026-08-31 18:24:52,613.613 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:24:52
[2026-08-31 18:24:53,270.270 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:24:53,571.571 INFO    ] Initializing speech engine...
[2026-08-31 18:24:53,583.583 INFO    ] 2026-08-31 18:24:53
[2026-08-31 18:24:53,865.865 INFO    ] 2026-08-31 18:24:53
[2026-08-31 18:24:53,904.904 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:24:54,155.155 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:24:54,178.178 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:24:54,383.383 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:24:54,396.396 INFO    ] time= 31/08/2026 18:24:54
[2026-08-31 18:24:54,414.414 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:24:54,426.426 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:24:54,574.574 INFO    ] No existing commands found in stream
[2026-08-31 18:24:59,605.605 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:24:59,608.608 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-08-31 18:25:02,367.367 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 18:25:02,370.370 INFO    ] Checking for system updates...
[2026-08-31 18:25:02,426.426 INFO    ] 200
[2026-08-31 18:25:02,429.429 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:25:02,491.491 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:25:02,494.494 INFO    ] No update needed
[2026-08-31 18:25:02,497.497 INFO    ] Checking for camera pi updates...
[2026-08-31 18:25:02,534.534 INFO    ] 200
[2026-08-31 18:25:02,537.537 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:25:02,584.584 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:25:02,701.701 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:25:02,704.704 INFO    ] No camera update needed
[2026-08-31 18:25:02,707.707 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:25:02,710.710 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:25:02,716.716 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:25:02,722.722 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:25:04,763.763 INFO    ] ================================================
[2026-08-31 18:25:04,778.778 INFO    ] Launching Daemon at Mon Aug 31 18:25:04 IST 2026
[2026-08-31 18:25:04,789.789 INFO    ] ================================================
[2026-08-31 18:25:05,355.355 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:25:05
[2026-08-31 18:25:05,941.941 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:25:06,197.197 INFO    ] Initializing speech engine...
[2026-08-31 18:25:06,202.202 INFO    ] 2026-08-31 18:25:06
[2026-08-31 18:25:06,502.502 INFO    ] 2026-08-31 18:25:06
[2026-08-31 18:25:06,531.531 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:25:06,802.802 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:25:06,812.812 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:25:06,944.944 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:25:06,971.971 INFO    ] time= 31/08/2026 18:25:06
[2026-08-31 18:25:07,031.031 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:25:07,078.078 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:25:07,212.212 INFO    ] No existing commands found in stream
[2026-08-31 18:25:12,234.234 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:25:12,236.236 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-08-31 18:25:12,931.931 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 18:25:12,933.933 INFO    ] Checking for system updates...
[2026-08-31 18:25:12,969.969 INFO    ] 200
[2026-08-31 18:25:12,971.971 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:25:13,026.026 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:25:13,029.029 INFO    ] No update needed
[2026-08-31 18:25:13,031.031 INFO    ] Checking for camera pi updates...
[2026-08-31 18:25:13,069.069 INFO    ] 200
[2026-08-31 18:25:13,071.071 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:25:13,112.112 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:25:13,310.310 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:25:13,313.313 INFO    ] No camera update needed
[2026-08-31 18:25:13,315.315 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:25:13,317.317 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:25:13,323.323 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:25:13,328.328 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:25:15,369.369 INFO    ] ================================================
[2026-08-31 18:25:15,384.384 INFO    ] Launching Daemon at Mon Aug 31 18:25:15 IST 2026
[2026-08-31 18:25:15,394.394 INFO    ] ================================================
[2026-08-31 18:25:16,032.032 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:25:16
[2026-08-31 18:25:16,688.688 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:25:16,986.986 INFO    ] Initializing speech engine...
[2026-08-31 18:25:16,999.999 INFO    ] 2026-08-31 18:25:16
[2026-08-31 18:25:17,276.276 INFO    ] 2026-08-31 18:25:17
[2026-08-31 18:25:17,321.321 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:25:17,541.541 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:25:17,550.550 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:25:17,772.772 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:25:17,811.811 INFO    ] time= 31/08/2026 18:25:17
[2026-08-31 18:25:17,817.817 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:25:17,835.835 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:25:17,963.963 INFO    ] No existing commands found in stream
[2026-08-31 18:25:22,979.979 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:25:22,982.982 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-08-31 18:25:25,772.772 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 18:25:25,774.774 INFO    ] Checking for system updates...
[2026-08-31 18:25:25,814.814 INFO    ] 200
[2026-08-31 18:25:25,816.816 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:25:25,874.874 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:25:25,877.877 INFO    ] No update needed
[2026-08-31 18:25:25,879.879 INFO    ] Checking for camera pi updates...
[2026-08-31 18:25:25,912.912 INFO    ] 200
[2026-08-31 18:25:25,915.915 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:25:25,954.954 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:25:26,044.044 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:25:26,047.047 INFO    ] No camera update needed
[2026-08-31 18:25:26,050.050 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:25:26,052.052 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:25:26,057.057 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:25:26,062.062 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:25:28,103.103 INFO    ] ================================================
[2026-08-31 18:25:28,118.118 INFO    ] Launching Daemon at Mon Aug 31 18:25:28 IST 2026
[2026-08-31 18:25:28,129.129 INFO    ] ================================================
[2026-08-31 18:25:28,713.713 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:25:28
[2026-08-31 18:25:29,315.315 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:25:29,599.599 INFO    ] Initializing speech engine...
[2026-08-31 18:25:29,613.613 INFO    ] 2026-08-31 18:25:29
[2026-08-31 18:25:29,883.883 INFO    ] 2026-08-31 18:25:29
[2026-08-31 18:25:29,919.919 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:25:30,208.208 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:25:30,219.219 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:25:30,369.369 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:25:30,416.416 INFO    ] time= 31/08/2026 18:25:30
[2026-08-31 18:25:30,476.476 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:25:30,520.520 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:25:30,648.648 INFO    ] Found 1 existing command(s) in stream
[2026-08-31 18:25:30,687.687 INFO    ] Checking historical command: ID=1788180923501-0
[2026-08-31 18:25:30,728.728 INFO    ] process_and_cleanup_command: msg_id=1788180923501-0
[2026-08-31 18:25:30,792.792 INFO    ] is_command_expired: timestamp=2026-08-31T12:55:21.551Z, expiry=30s
[2026-08-31 18:25:31,016.016 INFO    ] Command removed from stream: 1788180923501-0. returning for processing...
[2026-08-31 18:25:31,057.057 INFO    ] ***** get_valid_command
[2026-08-31 18:25:31,070.070 INFO    ] {'command': 'start-order', 'timestamp': '2026-08-31T12:55:21.551Z', 'timeout': '10', 'source': 'webapp', 'data': '{"request_id":"start-order-1788180921551-6yqt5x9rj","orderId":"TM08202202260831181408623","is_vending":false}'}
[2026-08-31 18:25:31,081.081 INFO    ] ***** Parsed command data: {'is_vending': False, 'orderId': 'TM08202202260831181408623', 'request_id': 'start-order-1788180921551-6yqt5x9rj'}
[2026-08-31 18:25:31,084.084 INFO    ] Handling start order...
[2026-08-31 18:25:31,087.087 INFO    ] handle_start_order_command
[2026-08-31 18:25:31,201.201 INFO    ] _send_start_order_success: request_id=start-order-1788180921551-6yqt5x9rj, order_id=TM08202202260831181408623
[2026-08-31 18:25:31,237.237 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM08202202
[2026-08-31 18:25:31,369.369 INFO    ] [_send_start_order_success] Message added to stream with ID: 1788180931323-0
[2026-08-31 18:25:31,374.374 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-08-31 18:25:31,379.379 INFO    ] Checking for system updates...
[2026-08-31 18:25:31,498.498 INFO    ] 200
[2026-08-31 18:25:31,528.528 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:25:31,623.623 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:25:31,632.632 INFO    ] No update needed
[2026-08-31 18:25:31,639.639 INFO    ] Checking for camera pi updates...
[2026-08-31 18:25:31,684.684 INFO    ] 200
[2026-08-31 18:25:31,692.692 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:25:31,759.759 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:25:31,841.841 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:25:31,852.852 INFO    ] No camera update needed
[2026-08-31 18:25:31,862.862 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:25:31,866.866 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:25:31,873.873 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:25:31,993.993 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-31 18:25:32,040.040 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:25:34,096.096 INFO    ] ================================================
[2026-08-31 18:25:34,112.112 INFO    ] Launching Daemon at Mon Aug 31 18:25:34 IST 2026
[2026-08-31 18:25:34,122.122 INFO    ] ================================================
[2026-08-31 18:25:34,785.785 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:25:34
[2026-08-31 18:25:35,466.466 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:25:35,777.777 INFO    ] Initializing speech engine...
[2026-08-31 18:25:35,791.791 INFO    ] 2026-08-31 18:25:35
[2026-08-31 18:25:36,108.108 INFO    ] 2026-08-31 18:25:36
[2026-08-31 18:25:36,197.197 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:25:36,416.416 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:25:36,424.424 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:25:36,621.621 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:25:36,639.639 INFO    ] time= 31/08/2026 18:25:36
[2026-08-31 18:25:36,648.648 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:25:36,675.675 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:25:36,808.808 INFO    ] Found 2 existing command(s) in stream
[2026-08-31 18:25:36,868.868 INFO    ] Checking historical command: ID=1788180931323-0
[2026-08-31 18:25:36,898.898 INFO    ] process_and_cleanup_command: msg_id=1788180931323-0
[2026-08-31 18:25:36,952.952 INFO    ] is_command_expired: timestamp=2026-08-31T12:55:31.208183Z, expiry=30s
[2026-08-31 18:25:37,215.215 INFO    ] Command removed from stream: 1788180931323-0. returning for processing...
[2026-08-31 18:25:37,264.264 INFO    ] ***** get_valid_command
[2026-08-31 18:25:37,270.270 INFO    ] {'message': 'start-order success', 'metadata_order_id': 'TM08202202260831181408623', 'metadata_request_id': 'start-order-1788180921551-6yqt5x9rj', 'imei': 'TM08202202', 'timestamp': '2026-08-31T12:55:31.208183Z', 'message_type': 'command_response', 'status': 'success'}
[2026-08-31 18:25:37,274.274 INFO    ] Checking historical command: ID=1788180935808-0
[2026-08-31 18:25:37,326.326 INFO    ] process_and_cleanup_command: msg_id=1788180935808-0
[2026-08-31 18:25:37,330.330 INFO    ] is_command_expired: timestamp=2026-08-31T12:55:33.812Z, expiry=30s
[2026-08-31 18:25:37,484.484 INFO    ] Command removed from stream: 1788180935808-0. returning for processing...
[2026-08-31 18:25:37,528.528 INFO    ] ***** get_valid_command
[2026-08-31 18:25:37,536.536 INFO    ] {'source': 'webapp', 'timestamp': '2026-08-31T12:55:33.812Z', 'command': 'process-order', 'data': '{"request_id":"process-order-1788180933811-04vlb9cow","orderId":"TM08202202260831181408623","is_vending":false,"accessCode":"87241237"}', 'timeout': '60'}
[2026-08-31 18:25:37,541.541 INFO    ] ***** Parsed command data: {'accessCode': '87241237', 'request_id': 'process-order-1788180933811-04vlb9cow', 'orderId': 'TM08202202260831181408623', 'is_vending': False}
[2026-08-31 18:25:37,551.551 INFO    ] Handling process order...
[2026-08-31 18:25:37,558.558 INFO    ] Processing process-order command...
[2026-08-31 18:25:37,567.567 INFO    ] 🔍 Lock file Order ID: TM08202202260831181408623, TS: 2026-08-31 18:25:31
[2026-08-31 18:25:37,586.586 INFO    ] ✅ Order lock valid for TM08202202260831181408623
[2026-08-31 18:25:37,591.591 INFO    ] Received access code in process-order, skipping PHP API call
[2026-08-31 18:25:37,599.599 INFO    ] processing access code 87241237 for order TM08202202260831181408623
[2026-08-31 18:25:37,606.606 INFO    ] 🔍 Lock file Order ID: TM08202202260831181408623, TS: 2026-08-31 18:25:31
[2026-08-31 18:25:37,613.613 INFO    ] ✅ Order lock valid for TM08202202260831181408623
[2026-08-31 18:25:37,618.618 INFO    ] 2026-08-31 18:25:37
[2026-08-31 18:25:37,669.669 INFO    ] 200
[2026-08-31 18:25:37,679.679 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:25:37,687.687 INFO    ] 87241237
[2026-08-31 18:25:37,695.695 INFO    ] 2026-08-31 18:25:37
[2026-08-31 18:25:37,701.701 INFO    ] session id :460080536
[2026-08-31 18:25:37,709.709 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=87241237&imei=TM08202202&session_id=460080536
[2026-08-31 18:25:39,396.396 INFO    ] 200
[2026-08-31 18:25:39,399.399 INFO    ] {"msg": "Order Data", "data": {"access_code": "87241237", "invoice_bill": "50", "mobile": "9900542928", "order_id": "TM08202202260831181408623", "bill_amount": "50", "proposed_sku_json": [{"qty": 3, "offer_desc": "", "image_url": "https://images.tinymart.in/product/4500708-7901.webp", "sku_total": 30, "mrp": "10", "tray_id": "17", "name": "Modern Kitchen Masala Peanut 28gm", "offer_id": "", "skuid": "4500708", "unit_price": 10, "door_id": "1"}, {"qty": 2, "offer_desc": "", "image_url": "https://images.tinymart.in/product/4500723-3888.png", "sku_total": 20, "mrp": "10", "tray_id": "23", "name": "MaxVita Moong daal 25gm", "offer_id": "", "skuid": "4500723", "unit_price": 10, "door_id": "1"}]}, "status": true, "rstatus": true}
[2026-08-31 18:25:39,403.403 INFO    ] 50
[2026-08-31 18:25:39,405.405 INFO    ] TM08202202260831181408623
[2026-08-31 18:25:39,408.408 INFO    ] 9900542928
[2026-08-31 18:25:39,411.411 INFO    ] 2026-08-31 18:25:39
[2026-08-31 18:25:39,414.414 INFO    ] Door Opening for user mobile ending with  two nine two eight 
[2026-08-31 18:25:39,416.416 INFO    ] Door Opening for user mobile ending with  two nine two eight 
[2026-08-31 18:25:39,419.419 INFO    ] 093f811953278b839c25cad894e127d5
[2026-08-31 18:25:39,422.422 INFO    ] 2026-08-31 18:25:39
[2026-08-31 18:25:39,425.425 INFO    ] playing audio file
[2026-08-31 18:25:39,443.443 INFO    ] 2026-08-31 18:25:39
[2026-08-31 18:25:39,446.446 INFO    ] 2026-08-31 18:25:39
[2026-08-31 18:25:39,450.450 INFO    ] publish_status: order_id=TM08202202260831181408623
[2026-08-31 18:25:39,454.454 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831181408623
[2026-08-31 18:25:39,568.568 INFO    ] [publish_status] Message added to stream with ID: 1788180939513-0
[2026-08-31 18:25:39,571.571 INFO    ] Published to order:TM08202202260831181408623: {'order_id': 'TM08202202260831181408623', 'server_status': 'order-started', 'timestamp': '2026-08-31T12:55:39.448282Z', 'server_response': '{"rstatus": true, "msg": "Order Data", "status": true, "data": {"mobile": "9900542928", "bill_amount": "50", "order_id": "TM08202202260831181408623", "invoice_bill": "50", "proposed_sku_json": [{"door_id": "1", "sku_total": 30, "mrp": "10", "offer_desc": "", "skuid": "4500708", "name": "Modern Kitchen Masala Peanut 28gm", "offer_id": "", "unit_price": 10, "image_url": "https://images.tinymart.in/product/4500708-7901.webp", "tray_id": "17", "qty": 3}, {"door_id": "1", "sku_total": 20, "mrp": "10", "offer_desc": "", "skuid": "4500723", "name": "MaxVita Moong daal 25gm", "offer_id": "", "unit_price": 10, "image_url": "https://images.tinymart.in/product/4500723-3888.png", "tray_id": "23", "qty": 2}], "access_code": "87241237"}}'} (ID: 1788180939513-0)
[2026-08-31 18:25:40,176.176 INFO    ] {'order_id': 'TM08202202260831181408623', 'server_status': 'order-started', 'server_response': {'rstatus': True, 'msg': 'Order Data', 'status': True, 'data': {'mobile': '9900542928', 'bill_amount': '50', 'order_id': 'TM08202202260831181408623', 'invoice_bill': '50', 'proposed_sku_json': [{'door_id': '1', 'sku_total': 30, 'mrp': '10', 'offer_desc': '', 'skuid': '4500708', 'name': 'Modern Kitchen Masala Peanut 28gm', 'offer_id': '', 'unit_price': 10, 'image_url': 'https://images.tinymart.in/product/4500708-7901.webp', 'tray_id': '17', 'qty': 3}, {'door_id': '1', 'sku_total': 20, 'mrp': '10', 'offer_desc': '', 'skuid': '4500723', 'name': 'MaxVita Moong daal 25gm', 'offer_id': '', 'unit_price': 10, 'image_url': 'https://images.tinymart.in/product/4500723-3888.png', 'tray_id': '23', 'qty': 2}], 'access_code': '87241237'}}}
[2026-08-31 18:25:40,180.180 INFO    ] 200
[2026-08-31 18:25:40,182.182 INFO    ] {"data":{"order_id":"TM08202202260831181408623","server_status":"order-started","server_response":{"rstatus":true,"msg":"Order Data","status":true,"data":{"mobile":"9900542928","bill_amount":"50","order_id":"TM08202202260831181408623","invoice_bill":"50","proposed_sku_json":[{"door_id":"1","sku_total":30,"mrp":"10","offer_desc":"","skuid":"4500708","name":"Modern Kitchen Masala Peanut 28gm","offer_id":"","unit_price":10,"image_url":"https:\/\/images.tinymart.in\/product\/4500708-7901.webp","tray_id":"17","qty":3},{"door_id":"1","sku_total":20,"mrp":"10","offer_desc":"","skuid":"4500723","name":"MaxVita Moong daal 25gm","offer_id":"","unit_price":10,"image_url":"https:\/\/images.tinymart.in\/product\/4500723-3888.png","tray_id":"23","qty":2}],"access_code":"87241237"}}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 18:25:40,186.186 INFO    ] {'data': {'order_id': 'TM08202202260831181408623', 'server_status': 'order-started', 'server_response': {'rstatus': True, 'msg': 'Order Data', 'status': True, 'data': {'mobile': '9900542928', 'invoice_bill': '50', 'order_id': 'TM08202202260831181408623', 'bill_amount': '50', 'proposed_sku_json': [{'sku_total': 30, 'mrp': '10', 'qty': 3, 'door_id': '1', 'name': 'Modern Kitchen Masala Peanut 28gm', 'image_url': 'https://images.tinymart.in/product/4500708-7901.webp', 'offer_id': '', 'unit_price': 10, 'skuid': '4500708', 'tray_id': '17', 'offer_desc': ''}, {'sku_total': 20, 'mrp': '10', 'qty': 2, 'door_id': '1', 'name': 'MaxVita Moong daal 25gm', 'image_url': 'https://images.tinymart.in/product/4500723-3888.png', 'offer_id': '', 'unit_price': 10, 'skuid': '4500723', 'tray_id': '23', 'offer_desc': ''}], 'access_code': '87241237'}}}, 'response': {'data': 'order updated successfully', 'msg': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS'}}
[2026-08-31 18:25:40,189.189 INFO    ] 2026-08-31 18:25:40
[2026-08-31 18:25:40,234.234 INFO    ] 200
[2026-08-31 18:25:40,237.237 INFO    ] True
[2026-08-31 18:25:40,381.381 INFO    ] 200
[2026-08-31 18:25:40,384.384 INFO    ] {"SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "voiceNote": "Please Wait", "SectionMain": {"Header": "Processing Order"}, "SectionStatus": {"Note": "", "UI_Header": "", "SubHeader": "Please wait while we process your order", "Header": " Your order is under process  "}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 18:25:40,388.388 INFO    ] {'SectionStatus': {'Note': '', 'Header': ' Your order is under process  ', 'UI_Header': '', 'SubHeader': 'Please wait while we process your order'}, 'rstatus': False, 'voiceNote': 'Please Wait', 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'SectionMain': {'Header': 'Processing Order'}, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'status': 'False'}
[2026-08-31 18:25:40,392.392 INFO    ] *** process_order ***
[2026-08-31 18:25:41,578.578 INFO    ] 200
[2026-08-31 18:25:41,581.581 INFO    ] {"SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "voiceNote": "Please Wait", "SectionMain": {"Header": "Processing Order"}, "SectionStatus": {"Note": "", "UI_Header": "", "SubHeader": "Please wait while we process your order", "Header": " Your order is under process  "}, "delay": 0, "status": "True", "rstatus": true}
[2026-08-31 18:25:41,584.584 INFO    ] {'SectionStatus': {'Note': '', 'Header': ' Your order is under process  ', 'UI_Header': '', 'SubHeader': 'Please wait while we process your order'}, 'rstatus': True, 'voiceNote': 'Please Wait', 'delay': 0, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'SectionMain': {'Header': 'Processing Order'}, 'status': 'True'}
[2026-08-31 18:25:41,587.587 INFO    ] *** process_order ***
[2026-08-31 18:25:41,590.590 INFO    ] publish_status: order_id=TM08202202260831181408623
[2026-08-31 18:25:41,593.593 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831181408623
[2026-08-31 18:25:41,684.684 INFO    ] [publish_status] Message added to stream with ID: 1788180941637-0
[2026-08-31 18:25:41,687.687 INFO    ] Published to order:TM08202202260831181408623: {'order_id': 'TM08202202260831181408623', 'server_status': 'doorOpened', 'server_response': '{"SectionStatus": {"Note": "", "Header": " Your order is under process  ", "UI_Header": "", "SubHeader": "You can pull the door now."}, "rstatus": true, "voiceNote": "Door is open...", "delay": 0, "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "SectionMain": {"Header": "Processing Order"}, "status": "True"}'} (ID: 1788180941637-0)
[2026-08-31 18:25:42,762.762 INFO    ] 2026-08-31 18:25:42
[2026-08-31 18:25:42,765.765 INFO    ] publish_status: order_id=TM08202202260831181408623
[2026-08-31 18:25:42,769.769 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831181408623
[2026-08-31 18:25:42,887.887 INFO    ] [publish_status] Message added to stream with ID: 1788180942840-0
[2026-08-31 18:25:42,891.891 INFO    ] Published to order:TM08202202260831181408623: {'order_id': 'TM08202202260831181408623', 'server_status': 'processOrder', 'timestamp': '2026-08-31T12:55:42.763746Z', 'server_response': '{"SectionStatus": {"Note": "", "Header": " Your order is under process  ", "UI_Header": "", "SubHeader": "Please wait while we process your order"}, "rstatus": true, "voiceNote": "Please Wait", "delay": 0, "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "SectionMain": {"Header": "Processing Order"}, "status": "True"}'} (ID: 1788180942840-0)
[2026-08-31 18:25:43,062.062 INFO    ] {'order_id': 'TM08202202260831181408623', 'server_status': 'processOrder', 'server_response': {'SectionStatus': {'Note': '', 'Header': ' Your order is under process  ', 'UI_Header': '', 'SubHeader': 'Please wait while we process your order'}, 'rstatus': True, 'voiceNote': 'Please Wait', 'delay': 0, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'SectionMain': {'Header': 'Processing Order'}, 'status': 'True'}}
[2026-08-31 18:25:43,065.065 INFO    ] 200
[2026-08-31 18:25:43,068.068 INFO    ] {"data":{"order_id":"TM08202202260831181408623","server_status":"processOrder","server_response":{"SectionStatus":{"Note":"","Header":" Your order is under process  ","UI_Header":"","SubHeader":"Please wait while we process your order"},"rstatus":true,"voiceNote":"Please Wait","delay":0,"SectionSKU":{"skus":[],"Header":"Thank you for bearing with us :)"},"SectionMain":{"Header":"Processing Order"},"status":"true"}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 18:25:43,074.074 INFO    ] {'data': {'order_id': 'TM08202202260831181408623', 'server_status': 'processOrder', 'server_response': {'SectionStatus': {'Note': '', 'Header': ' Your order is under process  ', 'UI_Header': '', 'SubHeader': 'Please wait while we process your order'}, 'rstatus': True, 'voiceNote': 'Please Wait', 'delay': 0, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'SectionMain': {'Header': 'Processing Order'}, 'status': 'true'}}, 'response': {'data': 'order updated successfully', 'msg': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS'}}
[2026-08-31 18:25:43,077.077 INFO    ] 2026-08-31 18:25:43
[2026-08-31 18:25:43,081.081 INFO    ] None
[2026-08-31 18:25:43,084.084 INFO    ] Opening Door now
[2026-08-31 18:25:43,087.087 INFO    ] Opening Door now
[2026-08-31 18:25:43,090.090 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-08-31 18:25:43,094.094 INFO    ] 2026-08-31 18:25:43
[2026-08-31 18:25:43,096.096 INFO    ] playing audio file
[2026-08-31 18:25:43,115.115 INFO    ] 2026-08-31 18:25:43
[2026-08-31 18:25:43,119.119 INFO    ] 2026-08-31 18:25:43
[2026-08-31 18:25:46,200.200 INFO    ] 200
[2026-08-31 18:25:46,203.203 INFO    ] {"SectionSKU": {"skus": [{"qty": 3, "name": "Modern Kitchen Masala Peanut 28gm"}, {"qty": 2, "name": "MaxVita Moong daal 25gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Door 1 is open now", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 18:25:46,206.206 INFO    ] {'SectionStatus': {'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 1', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'voiceNote': 'Door 1 is open now', 'SectionSKU': {'skus': [{'name': 'Modern Kitchen Masala Peanut 28gm', 'qty': 3}, {'name': 'MaxVita Moong daal 25gm', 'qty': 2}], 'Header': 'Pick the below items from the door'}, 'SectionMain': {'Header': 'Door Open'}, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'status': 'False'}
[2026-08-31 18:25:49,280.280 INFO    ] 200
[2026-08-31 18:25:49,283.283 INFO    ] {"SectionSKU": {"skus": [{"qty": 3, "name": "Modern Kitchen Masala Peanut 28gm"}, {"qty": 2, "name": "MaxVita Moong daal 25gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 18:25:49,297.297 INFO    ] {'SectionStatus': {'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 1', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'voiceNote': 'Please close door 1', 'SectionSKU': {'skus': [{'name': 'Modern Kitchen Masala Peanut 28gm', 'qty': 3}, {'name': 'MaxVita Moong daal 25gm', 'qty': 2}], 'Header': 'Pick the below items from the door'}, 'SectionMain': {'Header': 'Door Open'}, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'status': 'False'}
[2026-08-31 18:25:52,350.350 INFO    ] 200
[2026-08-31 18:25:52,353.353 INFO    ] {"SectionSKU": {"skus": [{"qty": 3, "name": "Modern Kitchen Masala Peanut 28gm"}, {"qty": 2, "name": "MaxVita Moong daal 25gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 18:25:52,356.356 INFO    ] Please close door 1
[2026-08-31 18:25:52,359.359 INFO    ] Please close door 1
[2026-08-31 18:25:52,362.362 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-08-31 18:25:52,365.365 INFO    ] 2026-08-31 18:25:52
[2026-08-31 18:25:52,368.368 INFO    ] playing audio file
[2026-08-31 18:25:52,386.386 INFO    ] 2026-08-31 18:25:52
[2026-08-31 18:25:52,390.390 INFO    ] publish_status: order_id=TM08202202260831181408623
[2026-08-31 18:25:52,394.394 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831181408623
[2026-08-31 18:25:52,499.499 INFO    ] [publish_status] Message added to stream with ID: 1788180952444-0
[2026-08-31 18:25:52,502.502 INFO    ] Published to order:TM08202202260831181408623: {'order_id': 'TM08202202260831181408623', 'server_status': 'OrderStatus', 'timestamp': '2026-08-31T12:55:52.388624Z', 'server_response': '{"SectionStatus": {"Note": "Please Close the door after picking up products", "Header": "Please Close Door 1", "UI_Header": "DOOR 1\\nIS \\nOPEN \\nNOW", "SubHeader": "Please Pick the Products and close the door"}, "rstatus": false, "voiceNote": "Please close door 1", "SectionSKU": {"skus": [{"name": "Modern Kitchen Masala Peanut 28gm", "qty": 3}, {"name": "MaxVita Moong daal 25gm", "qty": 2}], "Header": "Pick the below items from the door"}, "SectionMain": {"Header": "Door Open"}, "error": {"tmessage": "In Progress", "code": 20001, "umessage": "In Progress", "data": {}}, "status": "False"}'} (ID: 1788180952444-0)
[2026-08-31 18:25:53,259.259 INFO    ] {'order_id': 'TM08202202260831181408623', 'server_status': 'OrderStatus', 'server_response': {'SectionStatus': {'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 1', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'voiceNote': 'Please close door 1', 'SectionSKU': {'skus': [{'name': 'Modern Kitchen Masala Peanut 28gm', 'qty': 3}, {'name': 'MaxVita Moong daal 25gm', 'qty': 2}], 'Header': 'Pick the below items from the door'}, 'SectionMain': {'Header': 'Door Open'}, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'status': 'False'}}
[2026-08-31 18:25:53,262.262 INFO    ] 200
[2026-08-31 18:25:53,264.264 INFO    ] {"data":{"order_id":"TM08202202260831181408623","server_status":"OrderStatus","server_response":{"SectionStatus":{"Note":"Please Close the door after picking up products","Header":"Please Close Door 1","UI_Header":"DOOR 1\nIS \nOPEN \nNOW","SubHeader":"Please Pick the Products and close the door"},"rstatus":false,"voiceNote":"Please close door 1","SectionSKU":{"skus":[{"name":"Modern Kitchen Masala Peanut 28gm","qty":3},{"name":"MaxVita Moong daal 25gm","qty":2}],"Header":"Pick the below items from the door"},"SectionMain":{"Header":"Door Open"},"error":{"tmessage":"In Progress","code":20001,"umessage":"In Progress","data":[]},"status":"false"}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 18:25:53,267.267 INFO    ] {'data': {'order_id': 'TM08202202260831181408623', 'server_status': 'OrderStatus', 'server_response': {'SectionStatus': {'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 1', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'voiceNote': 'Please close door 1', 'SectionSKU': {'skus': [{'name': 'Modern Kitchen Masala Peanut 28gm', 'qty': 3}, {'name': 'MaxVita Moong daal 25gm', 'qty': 2}], 'Header': 'Pick the below items from the door'}, 'SectionMain': {'Header': 'Door Open'}, 'error': {'tmessage': 'In Progress', 'data': [], 'umessage': 'In Progress', 'code': 20001}, 'status': 'false'}}, 'response': {'data': 'order updated successfully', 'msg': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS'}}
[2026-08-31 18:25:53,270.270 INFO    ] {'SectionStatus': {'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 1', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'voiceNote': 'Please close door 1', 'SectionSKU': {'skus': [{'name': 'Modern Kitchen Masala Peanut 28gm', 'qty': 3}, {'name': 'MaxVita Moong daal 25gm', 'qty': 2}], 'Header': 'Pick the below items from the door'}, 'SectionMain': {'Header': 'Door Open'}, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'status': 'False'}
[2026-08-31 18:25:56,326.326 INFO    ] 200
[2026-08-31 18:25:56,329.329 INFO    ] {"SectionSKU": {"skus": [], "Header": "If you like us, tell others... else tell us"}, "voiceNote": "Transaction Completed", "SectionMain": {"Header": "Door Closed"}, "SectionStatus": {"Note": "If any due amount, clear at https://go.tinymart.in", "UI_Header": "", "SubHeader": "Please wait for invoice to generate", "Header": " Order is complete "}, "delay": 100, "status": "True", "rstatus": true}
[2026-08-31 18:25:56,332.332 INFO    ] {'SectionStatus': {'Note': 'If any due amount, clear at https://go.tinymart.in', 'Header': ' Order is complete ', 'UI_Header': '', 'SubHeader': 'Please wait for invoice to generate'}, 'rstatus': True, 'voiceNote': 'Transaction Completed', 'delay': 100, 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'SectionMain': {'Header': 'Door Closed'}, 'status': 'True'}
[2026-08-31 18:25:56,335.335 INFO    ] 2026-08-31 18:25:56
[2026-08-31 18:25:56,338.338 INFO    ] Order Completed 
[2026-08-31 18:25:56,341.341 INFO    ] Order Completed 
[2026-08-31 18:25:56,343.343 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-08-31 18:25:56,346.346 INFO    ] 2026-08-31 18:25:56
[2026-08-31 18:25:56,349.349 INFO    ] playing audio file
[2026-08-31 18:25:56,369.369 INFO    ] 2026-08-31 18:25:56
[2026-08-31 18:25:56,372.372 INFO    ] {'SectionStatus': {'Note': 'If any due amount, clear at https://go.tinymart.in', 'Header': ' Order is complete ', 'UI_Header': '', 'SubHeader': 'Please wait for invoice to generate'}, 'rstatus': True, 'voiceNote': 'Transaction Completed', 'delay': 100, 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'SectionMain': {'Header': 'Door Closed'}, 'status': 'True'}
[2026-08-31 18:25:56,376.376 INFO    ] 2026-08-31 18:25:56
[2026-08-31 18:25:58,670.670 INFO    ] 200
[2026-08-31 18:25:58,672.672 INFO    ] {"skus": [{"qty": 3, "image_url": "https://images.tinymart.in/product/4500708-7901.webp", "sku_total": 30.0, "mrp": "10", "tray_id": "17", "name": "Modern Kitchen Masala Peanut 28gm per peice", "skuid": "4500708", "unit_price": "10", "door_id": ""}, {"qty": 2, "image_url": "https://images.tinymart.in/product/4500723-3888.png", "sku_total": 20.0, "mrp": "10", "tray_id": "23", "name": "MaxVita Moong daal 25gm per peice", "skuid": "4500723", "unit_price": "10", "door_id": ""}], "anomaly": 0, "orderId": "TM08202202260831181408623", "res": "True", "logic": "WBL", "total_amount": 50.0, "rstatus": true}
[2026-08-31 18:25:58,675.675 INFO    ] {'rstatus': True, 'orderId': 'TM08202202260831181408623', 'skus': [{'door_id': '', 'sku_total': 30.0, 'mrp': '10', 'skuid': '4500708', 'name': 'Modern Kitchen Masala Peanut 28gm per peice', 'image_url': 'https://images.tinymart.in/product/4500708-7901.webp', 'unit_price': '10', 'qty': 3, 'tray_id': '17'}, {'door_id': '', 'sku_total': 20.0, 'mrp': '10', 'skuid': '4500723', 'name': 'MaxVita Moong daal 25gm per peice', 'image_url': 'https://images.tinymart.in/product/4500723-3888.png', 'unit_price': '10', 'qty': 2, 'tray_id': '23'}], 'res': 'True', 'total_amount': 50.0, 'logic': 'WBL', 'anomaly': 0}
[2026-08-31 18:25:58,678.678 INFO    ] {'rstatus': True, 'orderId': 'TM08202202260831181408623', 'skus': [{'door_id': '', 'sku_total': 30.0, 'mrp': '10', 'skuid': '4500708', 'name': 'Modern Kitchen Masala Peanut 28gm per peice', 'image_url': 'https://images.tinymart.in/product/4500708-7901.webp', 'unit_price': '10', 'qty': 3, 'tray_id': '17'}, {'door_id': '', 'sku_total': 20.0, 'mrp': '10', 'skuid': '4500723', 'name': 'MaxVita Moong daal 25gm per peice', 'image_url': 'https://images.tinymart.in/product/4500723-3888.png', 'unit_price': '10', 'qty': 2, 'tray_id': '23'}], 'res': 'True', 'total_amount': 50.0, 'logic': 'WBL', 'anomaly': 0}
[2026-08-31 18:25:58,681.681 INFO    ] 2026-08-31 18:25:58
[2026-08-31 18:25:58,683.683 INFO    ] 2026-08-31 18:25:58
[2026-08-31 18:25:58,685.685 INFO    ] 50
[2026-08-31 18:25:58,688.688 INFO    ] 2026-08-31 18:25:58
[2026-08-31 18:25:58,690.690 INFO    ] 2026-08-31 18:25:58
[2026-08-31 18:25:58,693.693 INFO    ]  Your Bill Amount is 50
[2026-08-31 18:25:58,695.695 INFO    ]  Your Bill Amount is 50
[2026-08-31 18:25:58,697.697 INFO    ] acaba83684019477cc6824f67d759a10
[2026-08-31 18:25:58,700.700 INFO    ] 2026-08-31 18:25:58
[2026-08-31 18:25:58,702.702 INFO    ] playing audio file
[2026-08-31 18:25:58,722.722 INFO    ] 2026-08-31 18:25:58
[2026-08-31 18:25:58,726.726 INFO    ] 2026-08-31 18:25:58
[2026-08-31 18:25:58,729.729 INFO    ] publish_status: order_id=TM08202202260831181408623
[2026-08-31 18:25:58,732.732 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831181408623
[2026-08-31 18:25:58,839.839 INFO    ] [publish_status] Message added to stream with ID: 1788180958778-0
[2026-08-31 18:25:58,842.842 INFO    ] Published to order:TM08202202260831181408623: {'order_id': 'TM08202202260831181408623', 'server_status': 'invoiceOrder', 'timestamp': '2026-08-31T12:55:58.727781Z', 'server_response': '{"rstatus": true, "orderId": "TM08202202260831181408623", "skus": [{"door_id": "", "sku_total": 30.0, "mrp": "10", "skuid": "4500708", "name": "Modern Kitchen Masala Peanut 28gm per peice", "image_url": "https://images.tinymart.in/product/4500708-7901.webp", "unit_price": "10", "qty": 3, "tray_id": "17"}, {"door_id": "", "sku_total": 20.0, "mrp": "10", "skuid": "4500723", "name": "MaxVita Moong daal 25gm per peice", "image_url": "https://images.tinymart.in/product/4500723-3888.png", "unit_price": "10", "qty": 2, "tray_id": "23"}], "res": "True", "total_amount": 50.0, "logic": "WBL", "anomaly": 0}'} (ID: 1788180958778-0)
[2026-08-31 18:25:59,539.539 INFO    ] {'order_id': 'TM08202202260831181408623', 'server_status': 'invoiceOrder', 'server_response': {'rstatus': True, 'orderId': 'TM08202202260831181408623', 'skus': [{'door_id': '', 'sku_total': 30.0, 'mrp': '10', 'skuid': '4500708', 'name': 'Modern Kitchen Masala Peanut 28gm per peice', 'image_url': 'https://images.tinymart.in/product/4500708-7901.webp', 'unit_price': '10', 'qty': 3, 'tray_id': '17'}, {'door_id': '', 'sku_total': 20.0, 'mrp': '10', 'skuid': '4500723', 'name': 'MaxVita Moong daal 25gm per peice', 'image_url': 'https://images.tinymart.in/product/4500723-3888.png', 'unit_price': '10', 'qty': 2, 'tray_id': '23'}], 'res': 'True', 'total_amount': 50.0, 'logic': 'WBL', 'anomaly': 0}}
[2026-08-31 18:25:59,541.541 INFO    ] 200
[2026-08-31 18:25:59,550.550 INFO    ] {"data":{"order_id":"TM08202202260831181408623","server_status":"invoiceOrder","server_response":{"rstatus":true,"orderId":"TM08202202260831181408623","skus":[{"door_id":"","sku_total":30,"mrp":"10","skuid":"4500708","name":"Modern Kitchen Masala Peanut 28gm per peice","image_url":"https:\/\/images.tinymart.in\/product\/4500708-7901.webp","unit_price":"10","qty":3,"tray_id":"17"},{"door_id":"","sku_total":20,"mrp":"10","skuid":"4500723","name":"MaxVita Moong daal 25gm per peice","image_url":"https:\/\/images.tinymart.in\/product\/4500723-3888.png","unit_price":"10","qty":2,"tray_id":"23"}],"res":"true","total_amount":50,"logic":"WBL","anomaly":0}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 18:25:59,554.554 INFO    ] {'data': {'order_id': 'TM08202202260831181408623', 'server_status': 'invoiceOrder', 'server_response': {'rstatus': True, 'orderId': 'TM08202202260831181408623', 'skus': [{'sku_total': 30, 'qty': 3, 'door_id': '', 'name': 'Modern Kitchen Masala Peanut 28gm per peice', 'image_url': 'https://images.tinymart.in/product/4500708-7901.webp', 'unit_price': '10', 'skuid': '4500708', 'tray_id': '17', 'mrp': '10'}, {'sku_total': 20, 'qty': 2, 'door_id': '', 'name': 'MaxVita Moong daal 25gm per peice', 'image_url': 'https://images.tinymart.in/product/4500723-3888.png', 'unit_price': '10', 'skuid': '4500723', 'tray_id': '23', 'mrp': '10'}], 'res': 'true', 'total_amount': 50, 'logic': 'WBL', 'anomaly': 0}}, 'response': {'data': 'order updated successfully', 'msg': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS'}}
[2026-08-31 18:25:59,558.558 INFO    ] {'data': {'order_id': 'TM08202202260831181408623', 'server_status': 'invoiceOrder', 'server_response': {'rstatus': True, 'orderId': 'TM08202202260831181408623', 'skus': [{'sku_total': 30, 'qty': 3, 'door_id': '', 'name': 'Modern Kitchen Masala Peanut 28gm per peice', 'image_url': 'https://images.tinymart.in/product/4500708-7901.webp', 'unit_price': '10', 'skuid': '4500708', 'tray_id': '17', 'mrp': '10'}, {'sku_total': 20, 'qty': 2, 'door_id': '', 'name': 'MaxVita Moong daal 25gm per peice', 'image_url': 'https://images.tinymart.in/product/4500723-3888.png', 'unit_price': '10', 'skuid': '4500723', 'tray_id': '23', 'mrp': '10'}], 'res': 'true', 'total_amount': 50, 'logic': 'WBL', 'anomaly': 0}}, 'response': {'data': 'order updated successfully', 'msg': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS'}}
[2026-08-31 18:25:59,561.561 INFO    ] 2026-08-31 18:25:59
[2026-08-31 18:26:01,364.364 INFO    ] 200
[2026-08-31 18:26:01,368.368 INFO    ] {"tray_sync": [], "order_items": [], "orders_data": [], "orders_synced": [], "tray_synced": ["TM08202202260831181408623", "TM08202202260831181408623", "TM08202202260831181408623", "TM08202202260831181408623", "TM08202202260831181408623", "TM08202202260831181408623", "TM08202202260831181408623", "TM08202202260831181408623", "TM08202202260831181408623", "TM08202202260831181408623", "TM08202202260831181408623", "TM08202202260831181408623", "TM08202202260831181408623", "TM08202202260831181408623", "TM08202202260831181408623", "TM08202202260831181408623", "TM08202202260831181408623", "TM08202202260831181408623", "TM08202202260831181408623", "TM08202202260831181408623", "TM08202202260831181408623", "TM08202202260831181408623", "TM08202202260831181408623", "TM08202202260831181408623", "TM08202202260831181408623", "TM08202202260831181408623", "TM08202202260831181408623", "TM08202202260831181408623", "TM08202202260831181408623", "TM08202202260831181408623", "TM08202202260831181408623", "TM08202202260831181408623"], "orders_data_synced": [], "status": true, "order_items_synced": [], "orders": []}
[2026-08-31 18:26:01,371.371 INFO    ] 2026-08-31 18:26:01
[2026-08-31 18:26:01,558.558 INFO    ] 200
[2026-08-31 18:26:01,562.562 INFO    ] True
[2026-08-31 18:26:01,566.566 INFO    ] cleanup_start_order_file_after_processing: order_id=TM08202202260831181408623
[2026-08-31 18:26:01,572.572 INFO    ] start order file deleted
[2026-08-31 18:26:01,589.589 INFO    ] Checking for system updates...
[2026-08-31 18:26:01,709.709 INFO    ] 200
[2026-08-31 18:26:01,714.714 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:26:01,885.885 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:26:01,903.903 INFO    ] No update needed
[2026-08-31 18:26:01,908.908 INFO    ] Checking for camera pi updates...
[2026-08-31 18:26:02,014.014 INFO    ] 200
[2026-08-31 18:26:02,017.017 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:26:02,092.092 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:26:02,405.405 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:26:02,409.409 INFO    ] No camera update needed
[2026-08-31 18:26:02,412.412 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:26:02,415.415 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:26:02,423.423 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:26:02,430.430 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:26:04,473.473 INFO    ] ================================================
[2026-08-31 18:26:04,488.488 INFO    ] Launching Daemon at Mon Aug 31 18:26:04 IST 2026
[2026-08-31 18:26:04,498.498 INFO    ] ================================================
[2026-08-31 18:26:05,069.069 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:26:05
[2026-08-31 18:26:05,654.654 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:26:05,926.926 INFO    ] Initializing speech engine...
[2026-08-31 18:26:05,933.933 INFO    ] 2026-08-31 18:26:05
[2026-08-31 18:26:06,191.191 INFO    ] 2026-08-31 18:26:06
[2026-08-31 18:26:06,245.245 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:26:06,469.469 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:26:06,475.475 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:26:06,687.687 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:26:06,752.752 INFO    ] time= 31/08/2026 18:26:06
[2026-08-31 18:26:06,759.759 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:26:06,776.776 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:26:06,908.908 INFO    ] No existing commands found in stream
[2026-08-31 18:26:11,936.936 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:26:11,939.939 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-08-31 18:26:13,420.420 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 18:26:13,423.423 INFO    ] Checking for system updates...
[2026-08-31 18:26:13,459.459 INFO    ] 200
[2026-08-31 18:26:13,462.462 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:26:13,513.513 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:26:13,515.515 INFO    ] No update needed
[2026-08-31 18:26:13,518.518 INFO    ] Checking for camera pi updates...
[2026-08-31 18:26:13,552.552 INFO    ] 200
[2026-08-31 18:26:13,554.554 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:26:13,595.595 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:26:13,653.653 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:26:13,655.655 INFO    ] No camera update needed
[2026-08-31 18:26:13,657.657 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:26:13,660.660 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:26:13,665.665 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:26:13,670.670 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:26:15,710.710 INFO    ] ================================================
[2026-08-31 18:26:15,725.725 INFO    ] Launching Daemon at Mon Aug 31 18:26:15 IST 2026
[2026-08-31 18:26:15,736.736 INFO    ] ================================================
[2026-08-31 18:26:16,376.376 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:26:16
[2026-08-31 18:26:17,034.034 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:26:17,334.334 INFO    ] Initializing speech engine...
[2026-08-31 18:26:17,342.342 INFO    ] 2026-08-31 18:26:17
[2026-08-31 18:26:17,616.616 INFO    ] 2026-08-31 18:26:17
[2026-08-31 18:26:17,652.652 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:26:17,909.909 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:26:17,915.915 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:26:18,129.129 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:26:18,176.176 INFO    ] time= 31/08/2026 18:26:18
[2026-08-31 18:26:18,182.182 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:26:18,201.201 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:26:18,332.332 INFO    ] No existing commands found in stream
[2026-08-31 18:26:23,345.345 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:26:23,348.348 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-08-31 18:26:25,790.790 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 18:26:25,794.794 INFO    ] Checking for system updates...
[2026-08-31 18:26:25,830.830 INFO    ] 200
[2026-08-31 18:26:25,833.833 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:26:25,886.886 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:26:25,889.889 INFO    ] No update needed
[2026-08-31 18:26:25,892.892 INFO    ] Checking for camera pi updates...
[2026-08-31 18:26:25,926.926 INFO    ] 200
[2026-08-31 18:26:25,929.929 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:26:25,970.970 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:26:26,057.057 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:26:26,060.060 INFO    ] No camera update needed
[2026-08-31 18:26:26,063.063 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:26:26,065.065 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:26:26,072.072 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:26:26,078.078 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:26:28,118.118 INFO    ] ================================================
[2026-08-31 18:26:28,133.133 INFO    ] Launching Daemon at Mon Aug 31 18:26:28 IST 2026
[2026-08-31 18:26:28,144.144 INFO    ] ================================================
[2026-08-31 18:26:28,718.718 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:26:28
[2026-08-31 18:26:29,301.301 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:26:29,569.569 INFO    ] Initializing speech engine...
[2026-08-31 18:26:29,589.589 INFO    ] 2026-08-31 18:26:29
[2026-08-31 18:26:29,860.860 INFO    ] 2026-08-31 18:26:29
[2026-08-31 18:26:29,894.894 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:26:30,088.088 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:26:30,103.103 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:26:30,245.245 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:26:30,252.252 INFO    ] time= 31/08/2026 18:26:30
[2026-08-31 18:26:30,260.260 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:26:30,266.266 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:26:30,408.408 INFO    ] No existing commands found in stream
[2026-08-31 18:26:35,439.439 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:26:35,441.441 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-08-31 18:26:39,363.363 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 18:26:39,366.366 INFO    ] Checking for system updates...
[2026-08-31 18:26:39,401.401 INFO    ] 200
[2026-08-31 18:26:39,404.404 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:26:39,462.462 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:26:39,464.464 INFO    ] No update needed
[2026-08-31 18:26:39,466.466 INFO    ] Checking for camera pi updates...
[2026-08-31 18:26:39,500.500 INFO    ] 200
[2026-08-31 18:26:39,503.503 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:26:39,543.543 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:26:39,623.623 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:26:39,625.625 INFO    ] No camera update needed
[2026-08-31 18:26:39,628.628 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:26:39,630.630 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:26:39,635.635 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:26:39,640.640 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:26:41,680.680 INFO    ] ================================================
[2026-08-31 18:26:41,695.695 INFO    ] Launching Daemon at Mon Aug 31 18:26:41 IST 2026
[2026-08-31 18:26:41,706.706 INFO    ] ================================================
[2026-08-31 18:26:42,285.285 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:26:42
[2026-08-31 18:26:42,883.883 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:26:43,158.158 INFO    ] Initializing speech engine...
[2026-08-31 18:26:43,167.167 INFO    ] 2026-08-31 18:26:43
[2026-08-31 18:26:43,415.415 INFO    ] 2026-08-31 18:26:43
[2026-08-31 18:26:43,451.451 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:26:43,702.702 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:26:43,711.711 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:26:43,945.945 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:26:43,970.970 INFO    ] time= 31/08/2026 18:26:43
[2026-08-31 18:26:43,988.988 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:26:43,997.997 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:26:44,124.124 INFO    ] No existing commands found in stream
[2026-08-31 18:26:49,138.138 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:26:49,141.141 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-08-31 18:26:51,830.830 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 18:26:51,833.833 INFO    ] Checking for system updates...
[2026-08-31 18:26:51,870.870 INFO    ] 200
[2026-08-31 18:26:51,873.873 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:26:51,927.927 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:26:51,930.930 INFO    ] No update needed
[2026-08-31 18:26:51,932.932 INFO    ] Checking for camera pi updates...
[2026-08-31 18:26:51,968.968 INFO    ] 200
[2026-08-31 18:26:51,970.970 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:26:52,012.012 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:26:52,080.080 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:26:52,083.083 INFO    ] No camera update needed
[2026-08-31 18:26:52,086.086 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:26:52,088.088 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:26:52,095.095 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:26:52,100.100 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:26:54,142.142 INFO    ] ================================================
[2026-08-31 18:26:54,156.156 INFO    ] Launching Daemon at Mon Aug 31 18:26:54 IST 2026
[2026-08-31 18:26:54,167.167 INFO    ] ================================================
[2026-08-31 18:26:54,732.732 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:26:54
[2026-08-31 18:26:55,316.316 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:26:55,581.581 INFO    ] Initializing speech engine...
[2026-08-31 18:26:55,591.591 INFO    ] 2026-08-31 18:26:55
[2026-08-31 18:26:55,838.838 INFO    ] 2026-08-31 18:26:55
[2026-08-31 18:26:55,873.873 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:26:56,093.093 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:26:56,141.141 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:26:56,325.325 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:26:56,375.375 INFO    ] time= 31/08/2026 18:26:56
[2026-08-31 18:26:56,419.419 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:26:56,458.458 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:26:56,600.600 INFO    ] No existing commands found in stream
[2026-08-31 18:27:01,617.617 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:27:01,620.620 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-08-31 18:27:02,485.485 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 18:27:02,488.488 INFO    ] Checking for system updates...
[2026-08-31 18:27:02,532.532 INFO    ] 200
[2026-08-31 18:27:02,535.535 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:27:02,597.597 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:27:02,600.600 INFO    ] No update needed
[2026-08-31 18:27:02,603.603 INFO    ] Checking for camera pi updates...
[2026-08-31 18:27:02,641.641 INFO    ] 200
[2026-08-31 18:27:02,643.643 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:27:02,695.695 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:27:02,800.800 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:27:02,803.803 INFO    ] No camera update needed
[2026-08-31 18:27:02,805.805 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:27:02,808.808 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:27:02,814.814 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:27:02,820.820 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:27:04,861.861 INFO    ] ================================================
[2026-08-31 18:27:04,876.876 INFO    ] Launching Daemon at Mon Aug 31 18:27:04 IST 2026
[2026-08-31 18:27:04,887.887 INFO    ] ================================================
[2026-08-31 18:27:05,457.457 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:27:05
[2026-08-31 18:27:06,051.051 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:27:06,323.323 INFO    ] Initializing speech engine...
[2026-08-31 18:27:06,334.334 INFO    ] 2026-08-31 18:27:06
[2026-08-31 18:27:06,597.597 INFO    ] 2026-08-31 18:27:06
[2026-08-31 18:27:06,669.669 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:27:06,894.894 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:27:06,904.904 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:27:07,113.113 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:27:07,159.159 INFO    ] time= 31/08/2026 18:27:07
[2026-08-31 18:27:07,171.171 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:27:07,189.189 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:27:07,310.310 INFO    ] No existing commands found in stream
[2026-08-31 18:27:12,332.332 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:27:12,335.335 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-08-31 18:27:14,725.725 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 18:27:14,728.728 INFO    ] Checking for system updates...
[2026-08-31 18:27:14,765.765 INFO    ] 200
[2026-08-31 18:27:14,768.768 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:27:14,822.822 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:27:14,825.825 INFO    ] No update needed
[2026-08-31 18:27:14,828.828 INFO    ] Checking for camera pi updates...
[2026-08-31 18:27:14,863.863 INFO    ] 200
[2026-08-31 18:27:14,866.866 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:27:14,908.908 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:27:15,000.000 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:27:15,003.003 INFO    ] No camera update needed
[2026-08-31 18:27:15,005.005 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:27:15,008.008 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:27:15,014.014 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:27:15,020.020 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:27:17,060.060 INFO    ] ================================================
[2026-08-31 18:27:17,076.076 INFO    ] Launching Daemon at Mon Aug 31 18:27:17 IST 2026
[2026-08-31 18:27:17,086.086 INFO    ] ================================================
[2026-08-31 18:27:17,660.660 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:27:17
[2026-08-31 18:27:18,258.258 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:27:18,534.534 INFO    ] Initializing speech engine...
[2026-08-31 18:27:18,544.544 INFO    ] 2026-08-31 18:27:18
[2026-08-31 18:27:18,815.815 INFO    ] 2026-08-31 18:27:18
[2026-08-31 18:27:18,858.858 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:27:19,140.140 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:27:19,145.145 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:27:19,329.329 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:27:19,342.342 INFO    ] time= 31/08/2026 18:27:19
[2026-08-31 18:27:19,348.348 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:27:19,366.366 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:27:19,490.490 INFO    ] No existing commands found in stream
[2026-08-31 18:27:24,507.507 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:27:24,510.510 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-08-31 18:27:26,895.895 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 18:27:26,898.898 INFO    ] Checking for system updates...
[2026-08-31 18:27:26,938.938 INFO    ] 200
[2026-08-31 18:27:26,940.940 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:27:27,004.004 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:27:27,007.007 INFO    ] No update needed
[2026-08-31 18:27:27,010.010 INFO    ] Checking for camera pi updates...
[2026-08-31 18:27:27,044.044 INFO    ] 200
[2026-08-31 18:27:27,047.047 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:27:27,090.090 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:27:27,266.266 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:27:27,269.269 INFO    ] No camera update needed
[2026-08-31 18:27:27,272.272 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:27:27,274.274 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:27:27,281.281 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:27:27,286.286 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:27:29,327.327 INFO    ] ================================================
[2026-08-31 18:27:29,342.342 INFO    ] Launching Daemon at Mon Aug 31 18:27:29 IST 2026
[2026-08-31 18:27:29,352.352 INFO    ] ================================================
[2026-08-31 18:27:30,001.001 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:27:29
[2026-08-31 18:27:30,585.585 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:27:30,871.871 INFO    ] Initializing speech engine...
[2026-08-31 18:27:30,880.880 INFO    ] 2026-08-31 18:27:30
[2026-08-31 18:27:31,163.163 INFO    ] 2026-08-31 18:27:31
[2026-08-31 18:27:31,208.208 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:27:31,432.432 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:27:31,438.438 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:27:31,662.662 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:27:31,700.700 INFO    ] time= 31/08/2026 18:27:31
[2026-08-31 18:27:31,718.718 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:27:31,748.748 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:27:31,921.921 INFO    ] No existing commands found in stream
[2026-08-31 18:27:36,947.947 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:27:36,951.951 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-08-31 18:27:40,738.738 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 18:27:40,741.741 INFO    ] Checking for system updates...
[2026-08-31 18:27:40,784.784 INFO    ] 200
[2026-08-31 18:27:40,786.786 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:27:40,842.842 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:27:40,845.845 INFO    ] No update needed
[2026-08-31 18:27:40,847.847 INFO    ] Checking for camera pi updates...
[2026-08-31 18:27:40,881.881 INFO    ] 200
[2026-08-31 18:27:40,884.884 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:27:40,924.924 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:27:41,014.014 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:27:41,016.016 INFO    ] No camera update needed
[2026-08-31 18:27:41,019.019 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:27:41,021.021 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:27:41,027.027 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:27:41,032.032 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:27:43,071.071 INFO    ] ================================================
[2026-08-31 18:27:43,086.086 INFO    ] Launching Daemon at Mon Aug 31 18:27:43 IST 2026
[2026-08-31 18:27:43,097.097 INFO    ] ================================================
[2026-08-31 18:27:43,683.683 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:27:43
[2026-08-31 18:27:44,281.281 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:27:44,554.554 INFO    ] Initializing speech engine...
[2026-08-31 18:27:44,564.564 INFO    ] 2026-08-31 18:27:44
[2026-08-31 18:27:44,813.813 INFO    ] 2026-08-31 18:27:44
[2026-08-31 18:27:44,879.879 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:27:45,126.126 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:27:45,134.134 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:27:45,328.328 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:27:45,369.369 INFO    ] time= 31/08/2026 18:27:45
[2026-08-31 18:27:45,375.375 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:27:45,392.392 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:27:45,518.518 INFO    ] No existing commands found in stream
[2026-08-31 18:27:50,539.539 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:27:50,542.542 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-08-31 18:27:53,697.697 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 18:27:53,700.700 INFO    ] Checking for system updates...
[2026-08-31 18:27:53,736.736 INFO    ] 200
[2026-08-31 18:27:53,738.738 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:27:53,792.792 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:27:53,795.795 INFO    ] No update needed
[2026-08-31 18:27:53,797.797 INFO    ] Checking for camera pi updates...
[2026-08-31 18:27:53,831.831 INFO    ] 200
[2026-08-31 18:27:53,833.833 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:27:53,874.874 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:27:53,947.947 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:27:53,949.949 INFO    ] No camera update needed
[2026-08-31 18:27:53,952.952 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:27:53,954.954 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:27:53,960.960 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:27:53,965.965 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:27:56,005.005 INFO    ] ================================================
[2026-08-31 18:27:56,022.022 INFO    ] Launching Daemon at Mon Aug 31 18:27:56 IST 2026
[2026-08-31 18:27:56,033.033 INFO    ] ================================================
[2026-08-31 18:27:56,667.667 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:27:56
[2026-08-31 18:27:57,320.320 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:27:57,618.618 INFO    ] Initializing speech engine...
[2026-08-31 18:27:57,626.626 INFO    ] 2026-08-31 18:27:57
[2026-08-31 18:27:57,901.901 INFO    ] 2026-08-31 18:27:57
[2026-08-31 18:27:57,953.953 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:27:58,181.181 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:27:58,191.191 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:27:58,397.397 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:27:58,456.456 INFO    ] time= 31/08/2026 18:27:58
[2026-08-31 18:27:58,463.463 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:27:58,482.482 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:27:58,614.614 INFO    ] No existing commands found in stream
[2026-08-31 18:28:03,628.628 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:28:03,632.632 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-08-31 18:28:04,248.248 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 18:28:04,251.251 INFO    ] Checking for system updates...
[2026-08-31 18:28:04,287.287 INFO    ] 200
[2026-08-31 18:28:04,289.289 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:28:04,341.341 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:28:04,343.343 INFO    ] No update needed
[2026-08-31 18:28:04,346.346 INFO    ] Checking for camera pi updates...
[2026-08-31 18:28:04,383.383 INFO    ] 200
[2026-08-31 18:28:04,385.385 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:28:04,425.425 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:28:04,517.517 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:28:04,519.519 INFO    ] No camera update needed
[2026-08-31 18:28:04,522.522 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:28:04,524.524 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:28:04,529.529 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:28:04,534.534 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:28:06,576.576 INFO    ] ================================================
[2026-08-31 18:28:06,602.602 INFO    ] Launching Daemon at Mon Aug 31 18:28:06 IST 2026
[2026-08-31 18:28:06,614.614 INFO    ] ================================================
[2026-08-31 18:28:07,196.196 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:28:07
[2026-08-31 18:28:07,780.780 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:28:08,051.051 INFO    ] Initializing speech engine...
[2026-08-31 18:28:08,061.061 INFO    ] 2026-08-31 18:28:08
[2026-08-31 18:28:08,310.310 INFO    ] 2026-08-31 18:28:08
[2026-08-31 18:28:08,345.345 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:28:08,542.542 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:28:08,583.583 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:28:08,751.751 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:28:08,800.800 INFO    ] time= 31/08/2026 18:28:08
[2026-08-31 18:28:08,854.854 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:28:08,885.885 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:28:09,006.006 INFO    ] No existing commands found in stream
[2026-08-31 18:28:14,037.037 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:28:14,040.040 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-08-31 18:28:17,749.749 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 18:28:17,752.752 INFO    ] Checking for system updates...
[2026-08-31 18:28:17,789.789 INFO    ] 200
[2026-08-31 18:28:17,792.792 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:28:17,845.845 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:28:17,848.848 INFO    ] No update needed
[2026-08-31 18:28:17,851.851 INFO    ] Checking for camera pi updates...
[2026-08-31 18:28:17,885.885 INFO    ] 200
[2026-08-31 18:28:17,887.887 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:28:17,932.932 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:28:18,020.020 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:28:18,022.022 INFO    ] No camera update needed
[2026-08-31 18:28:18,024.024 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:28:18,027.027 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:28:18,032.032 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:28:18,037.037 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:28:20,081.081 INFO    ] ================================================
[2026-08-31 18:28:20,096.096 INFO    ] Launching Daemon at Mon Aug 31 18:28:20 IST 2026
[2026-08-31 18:28:20,106.106 INFO    ] ================================================
[2026-08-31 18:28:20,684.684 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:28:20
[2026-08-31 18:28:21,282.282 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:28:21,555.555 INFO    ] Initializing speech engine...
[2026-08-31 18:28:21,566.566 INFO    ] 2026-08-31 18:28:21
[2026-08-31 18:28:21,814.814 INFO    ] 2026-08-31 18:28:21
[2026-08-31 18:28:21,880.880 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:28:22,126.126 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:28:22,134.134 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:28:22,347.347 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:28:22,371.371 INFO    ] time= 31/08/2026 18:28:22
[2026-08-31 18:28:22,385.385 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:28:22,392.392 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:28:22,518.518 INFO    ] No existing commands found in stream
[2026-08-31 18:28:27,534.534 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:28:27,536.536 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-08-31 18:28:29,265.265 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 18:28:29,268.268 INFO    ] Checking for system updates...
[2026-08-31 18:28:29,305.305 INFO    ] 200
[2026-08-31 18:28:29,307.307 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:28:29,364.364 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:28:29,367.367 INFO    ] No update needed
[2026-08-31 18:28:29,370.370 INFO    ] Checking for camera pi updates...
[2026-08-31 18:28:29,403.403 INFO    ] 200
[2026-08-31 18:28:29,406.406 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:28:29,449.449 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:28:29,529.529 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:28:29,531.531 INFO    ] No camera update needed
[2026-08-31 18:28:29,533.533 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:28:29,536.536 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:28:29,541.541 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:28:29,546.546 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:28:31,589.589 INFO    ] ================================================
[2026-08-31 18:28:31,604.604 INFO    ] Launching Daemon at Mon Aug 31 18:28:31 IST 2026
[2026-08-31 18:28:31,615.615 INFO    ] ================================================
[2026-08-31 18:28:32,282.282 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:28:32
[2026-08-31 18:28:32,989.989 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:28:33,295.295 INFO    ] Initializing speech engine...
[2026-08-31 18:28:33,310.310 INFO    ] 2026-08-31 18:28:33
[2026-08-31 18:28:33,573.573 INFO    ] 2026-08-31 18:28:33
[2026-08-31 18:28:33,635.635 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:28:33,884.884 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:28:33,892.892 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:28:34,043.043 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:28:34,093.093 INFO    ] time= 31/08/2026 18:28:34
[2026-08-31 18:28:34,137.137 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:28:34,186.186 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:28:34,249.249 INFO    ] No existing commands found in stream
[2026-08-31 18:28:39,260.260 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:28:39,263.263 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-08-31 18:28:40,734.734 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 18:28:40,737.737 INFO    ] Checking for system updates...
[2026-08-31 18:28:40,776.776 INFO    ] 200
[2026-08-31 18:28:40,778.778 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:28:40,836.836 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:28:40,838.838 INFO    ] No update needed
[2026-08-31 18:28:40,841.841 INFO    ] Checking for camera pi updates...
[2026-08-31 18:28:40,878.878 INFO    ] 200
[2026-08-31 18:28:40,880.880 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:28:40,922.922 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:28:41,021.021 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:28:41,023.023 INFO    ] No camera update needed
[2026-08-31 18:28:41,026.026 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:28:41,028.028 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:28:41,033.033 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:28:41,038.038 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:28:43,079.079 INFO    ] ================================================
[2026-08-31 18:28:43,094.094 INFO    ] Launching Daemon at Mon Aug 31 18:28:43 IST 2026
[2026-08-31 18:28:43,104.104 INFO    ] ================================================
[2026-08-31 18:28:43,684.684 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:28:43
[2026-08-31 18:28:44,283.283 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:28:44,551.551 INFO    ] Initializing speech engine...
[2026-08-31 18:28:44,563.563 INFO    ] 2026-08-31 18:28:44
[2026-08-31 18:28:44,813.813 INFO    ] 2026-08-31 18:28:44
[2026-08-31 18:28:44,878.878 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:28:45,127.127 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:28:45,133.133 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:28:45,335.335 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:28:45,370.370 INFO    ] time= 31/08/2026 18:28:45
[2026-08-31 18:28:45,387.387 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:28:45,396.396 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:28:45,523.523 INFO    ] No existing commands found in stream
[2026-08-31 18:28:50,536.536 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:28:50,540.540 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-08-31 18:28:51,964.964 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 18:28:51,967.967 INFO    ] Checking for system updates...
[2026-08-31 18:28:52,005.005 INFO    ] 200
[2026-08-31 18:28:52,007.007 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:28:52,059.059 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:28:52,062.062 INFO    ] No update needed
[2026-08-31 18:28:52,064.064 INFO    ] Checking for camera pi updates...
[2026-08-31 18:28:52,100.100 INFO    ] 200
[2026-08-31 18:28:52,102.102 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:28:52,145.145 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:28:52,223.223 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:28:52,226.226 INFO    ] No camera update needed
[2026-08-31 18:28:52,228.228 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:28:52,231.231 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:28:52,236.236 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:28:52,241.241 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:28:54,282.282 INFO    ] ================================================
[2026-08-31 18:28:54,297.297 INFO    ] Launching Daemon at Mon Aug 31 18:28:54 IST 2026
[2026-08-31 18:28:54,307.307 INFO    ] ================================================
[2026-08-31 18:28:54,873.873 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:28:54
[2026-08-31 18:28:55,475.475 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:28:55,765.765 INFO    ] Initializing speech engine...
[2026-08-31 18:28:55,771.771 INFO    ] 2026-08-31 18:28:55
[2026-08-31 18:28:56,047.047 INFO    ] 2026-08-31 18:28:56
[2026-08-31 18:28:56,089.089 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:28:56,371.371 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:28:56,376.376 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:28:56,537.537 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:28:56,572.572 INFO    ] time= 31/08/2026 18:28:56
[2026-08-31 18:28:56,578.578 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:28:56,596.596 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:28:56,726.726 INFO    ] No existing commands found in stream
[2026-08-31 18:29:01,741.741 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:29:01,745.745 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-08-31 18:29:05,804.804 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 18:29:05,806.806 INFO    ] Checking for system updates...
[2026-08-31 18:29:05,866.866 INFO    ] 200
[2026-08-31 18:29:05,868.868 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:29:05,927.927 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:29:05,930.930 INFO    ] No update needed
[2026-08-31 18:29:05,932.932 INFO    ] Checking for camera pi updates...
[2026-08-31 18:29:05,968.968 INFO    ] 200
[2026-08-31 18:29:05,971.971 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:29:06,014.014 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:29:06,082.082 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:29:06,084.084 INFO    ] No camera update needed
[2026-08-31 18:29:06,087.087 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:29:06,089.089 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:29:06,094.094 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:29:06,099.099 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:29:08,138.138 INFO    ] ================================================
[2026-08-31 18:29:08,153.153 INFO    ] Launching Daemon at Mon Aug 31 18:29:08 IST 2026
[2026-08-31 18:29:08,164.164 INFO    ] ================================================
[2026-08-31 18:29:08,742.742 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:29:08
[2026-08-31 18:29:09,336.336 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:29:09,609.609 INFO    ] Initializing speech engine...
[2026-08-31 18:29:09,618.618 INFO    ] 2026-08-31 18:29:09
[2026-08-31 18:29:09,879.879 INFO    ] 2026-08-31 18:29:09
[2026-08-31 18:29:09,933.933 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:29:10,153.153 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:29:10,162.162 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:29:10,381.381 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:29:10,420.420 INFO    ] time= 31/08/2026 18:29:10
[2026-08-31 18:29:10,426.426 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:29:10,452.452 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:29:10,589.589 INFO    ] No existing commands found in stream
[2026-08-31 18:29:15,615.615 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:29:15,618.618 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-08-31 18:29:19,430.430 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 18:29:19,433.433 INFO    ] Checking for system updates...
[2026-08-31 18:29:19,470.470 INFO    ] 200
[2026-08-31 18:29:19,472.472 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:29:19,525.525 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:29:19,527.527 INFO    ] No update needed
[2026-08-31 18:29:19,530.530 INFO    ] Checking for camera pi updates...
[2026-08-31 18:29:19,564.564 INFO    ] 200
[2026-08-31 18:29:19,566.566 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:29:19,606.606 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:29:19,680.680 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:29:19,682.682 INFO    ] No camera update needed
[2026-08-31 18:29:19,684.684 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:29:19,687.687 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:29:19,692.692 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:29:19,697.697 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:29:21,740.740 INFO    ] ================================================
[2026-08-31 18:29:21,755.755 INFO    ] Launching Daemon at Mon Aug 31 18:29:21 IST 2026
[2026-08-31 18:29:21,765.765 INFO    ] ================================================
[2026-08-31 18:29:22,328.328 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:29:22
[2026-08-31 18:29:22,908.908 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:29:23,155.155 INFO    ] Initializing speech engine...
[2026-08-31 18:29:23,170.170 INFO    ] 2026-08-31 18:29:23
[2026-08-31 18:29:23,433.433 INFO    ] 2026-08-31 18:29:23
[2026-08-31 18:29:23,469.469 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:29:23,665.665 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:29:23,710.710 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:29:23,872.872 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:29:23,927.927 INFO    ] time= 31/08/2026 18:29:23
[2026-08-31 18:29:23,981.981 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:29:24,006.006 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:29:24,131.131 INFO    ] No existing commands found in stream
[2026-08-31 18:29:29,161.161 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:29:29,164.164 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-08-31 18:29:33,103.103 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 18:29:33,106.106 INFO    ] Checking for system updates...
[2026-08-31 18:29:33,143.143 INFO    ] 200
[2026-08-31 18:29:33,146.146 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:29:33,204.204 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:29:33,206.206 INFO    ] No update needed
[2026-08-31 18:29:33,209.209 INFO    ] Checking for camera pi updates...
[2026-08-31 18:29:33,245.245 INFO    ] 200
[2026-08-31 18:29:33,247.247 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:29:33,288.288 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:29:33,370.370 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:29:33,372.372 INFO    ] No camera update needed
[2026-08-31 18:29:33,374.374 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:29:33,377.377 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:29:33,382.382 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:29:33,387.387 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:29:35,430.430 INFO    ] ================================================
[2026-08-31 18:29:35,444.444 INFO    ] Launching Daemon at Mon Aug 31 18:29:35 IST 2026
[2026-08-31 18:29:35,455.455 INFO    ] ================================================
[2026-08-31 18:29:36,021.021 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:29:36
[2026-08-31 18:29:36,603.603 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:29:36,851.851 INFO    ] Initializing speech engine...
[2026-08-31 18:29:36,874.874 INFO    ] 2026-08-31 18:29:36
[2026-08-31 18:29:37,132.132 INFO    ] 2026-08-31 18:29:37
[2026-08-31 18:29:37,167.167 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:29:37,417.417 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:29:37,428.428 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:29:37,615.615 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:29:37,664.664 INFO    ] time= 31/08/2026 18:29:37
[2026-08-31 18:29:37,704.704 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:29:37,710.710 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:29:37,848.848 INFO    ] No existing commands found in stream
[2026-08-31 18:29:42,873.873 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:29:42,875.875 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-08-31 18:29:45,544.544 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 18:29:45,546.546 INFO    ] Checking for system updates...
[2026-08-31 18:29:45,585.585 INFO    ] 200
[2026-08-31 18:29:45,588.588 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:29:45,642.642 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:29:45,644.644 INFO    ] No update needed
[2026-08-31 18:29:45,646.646 INFO    ] Checking for camera pi updates...
[2026-08-31 18:29:45,683.683 INFO    ] 200
[2026-08-31 18:29:45,685.685 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:29:45,729.729 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:29:45,810.810 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:29:45,812.812 INFO    ] No camera update needed
[2026-08-31 18:29:45,815.815 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:29:45,817.817 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:29:45,822.822 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:29:45,827.827 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:29:47,867.867 INFO    ] ================================================
[2026-08-31 18:29:47,883.883 INFO    ] Launching Daemon at Mon Aug 31 18:29:47 IST 2026
[2026-08-31 18:29:47,893.893 INFO    ] ================================================
[2026-08-31 18:29:48,459.459 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:29:48
[2026-08-31 18:29:49,038.038 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:29:49,276.276 INFO    ] Initializing speech engine...
[2026-08-31 18:29:49,283.283 INFO    ] 2026-08-31 18:29:49
[2026-08-31 18:29:49,563.563 INFO    ] 2026-08-31 18:29:49
[2026-08-31 18:29:49,599.599 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:29:49,798.798 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:29:49,854.854 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:29:49,999.999 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:29:50,065.065 INFO    ] time= 31/08/2026 18:29:50
[2026-08-31 18:29:50,128.128 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:29:50,135.135 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:29:50,257.257 INFO    ] No existing commands found in stream
[2026-08-31 18:29:55,282.282 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:29:55,285.285 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-08-31 18:29:58,297.297 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 18:29:58,299.299 INFO    ] Checking for system updates...
[2026-08-31 18:29:58,338.338 INFO    ] 200
[2026-08-31 18:29:58,340.340 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:29:58,392.392 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:29:58,394.394 INFO    ] No update needed
[2026-08-31 18:29:58,397.397 INFO    ] Checking for camera pi updates...
[2026-08-31 18:29:58,430.430 INFO    ] 200
[2026-08-31 18:29:58,433.433 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:29:58,472.472 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:29:58,552.552 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:29:58,555.555 INFO    ] No camera update needed
[2026-08-31 18:29:58,557.557 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:29:58,559.559 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:29:58,564.564 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:29:58,569.569 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:30:00,609.609 INFO    ] ================================================
[2026-08-31 18:30:00,624.624 INFO    ] Launching Daemon at Mon Aug 31 18:30:00 IST 2026
[2026-08-31 18:30:00,635.635 INFO    ] ================================================
[2026-08-31 18:30:01,207.207 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:30:01
[2026-08-31 18:30:02,293.293 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:30:02,983.983 INFO    ] Initializing speech engine...
[2026-08-31 18:30:02,987.987 INFO    ] 2026-08-31 18:30:02
[2026-08-31 18:30:03,337.337 INFO    ] 2026-08-31 18:30:03
[2026-08-31 18:30:03,377.377 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:30:03,531.531 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:30:03,534.534 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:30:03,719.719 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:30:03,726.726 INFO    ] time= 31/08/2026 18:30:03
[2026-08-31 18:30:03,730.730 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:30:03,759.759 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:30:03,878.878 INFO    ] No existing commands found in stream
[2026-08-31 18:30:08,912.912 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:30:08,915.915 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-08-31 18:30:10,010.010 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 18:30:10,012.012 INFO    ] Checking for system updates...
[2026-08-31 18:30:10,049.049 INFO    ] 200
[2026-08-31 18:30:10,051.051 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:30:10,112.112 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:30:10,115.115 INFO    ] No update needed
[2026-08-31 18:30:10,117.117 INFO    ] Checking for camera pi updates...
[2026-08-31 18:30:10,154.154 INFO    ] 200
[2026-08-31 18:30:10,156.156 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:30:10,197.197 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:30:10,278.278 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:30:10,280.280 INFO    ] No camera update needed
[2026-08-31 18:30:10,282.282 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:30:10,285.285 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:30:10,290.290 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:30:10,295.295 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:30:12,336.336 INFO    ] ================================================
[2026-08-31 18:30:12,352.352 INFO    ] Launching Daemon at Mon Aug 31 18:30:12 IST 2026
[2026-08-31 18:30:12,363.363 INFO    ] ================================================
[2026-08-31 18:30:12,991.991 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:30:12
[2026-08-31 18:30:13,643.643 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:30:13,942.942 INFO    ] Initializing speech engine...
[2026-08-31 18:30:13,956.956 INFO    ] 2026-08-31 18:30:13
[2026-08-31 18:30:14,227.227 INFO    ] 2026-08-31 18:30:14
[2026-08-31 18:30:14,279.279 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:30:14,515.515 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:30:14,520.520 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:30:14,656.656 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:30:14,711.711 INFO    ] time= 31/08/2026 18:30:14
[2026-08-31 18:30:14,776.776 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:30:14,795.795 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:30:14,928.928 INFO    ] No existing commands found in stream
[2026-08-31 18:30:19,952.952 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:30:19,955.955 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-08-31 18:30:23,658.658 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 18:30:23,661.661 INFO    ] Checking for system updates...
[2026-08-31 18:30:23,726.726 INFO    ] 200
[2026-08-31 18:30:23,729.729 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:30:23,782.782 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:30:23,785.785 INFO    ] No update needed
[2026-08-31 18:30:23,787.787 INFO    ] Checking for camera pi updates...
[2026-08-31 18:30:23,824.824 INFO    ] 200
[2026-08-31 18:30:23,826.826 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:30:23,872.872 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:30:23,959.959 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:30:23,962.962 INFO    ] No camera update needed
[2026-08-31 18:30:23,964.964 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:30:23,967.967 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:30:23,973.973 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:30:23,979.979 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:30:26,019.019 INFO    ] ================================================
[2026-08-31 18:30:26,035.035 INFO    ] Launching Daemon at Mon Aug 31 18:30:26 IST 2026
[2026-08-31 18:30:26,046.046 INFO    ] ================================================
[2026-08-31 18:30:26,619.619 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:30:26
[2026-08-31 18:30:27,215.215 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:30:27,490.490 INFO    ] Initializing speech engine...
[2026-08-31 18:30:27,496.496 INFO    ] 2026-08-31 18:30:27
[2026-08-31 18:30:27,743.743 INFO    ] 2026-08-31 18:30:27
[2026-08-31 18:30:27,778.778 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:30:27,981.981 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:30:28,034.034 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:30:28,174.174 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:30:28,229.229 INFO    ] time= 31/08/2026 18:30:28
[2026-08-31 18:30:28,288.288 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:30:28,306.306 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:30:28,451.451 INFO    ] No existing commands found in stream
[2026-08-31 18:30:33,466.466 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:30:33,469.469 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-08-31 18:30:37,508.508 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 18:30:37,511.511 INFO    ] Checking for system updates...
[2026-08-31 18:30:37,546.546 INFO    ] 200
[2026-08-31 18:30:37,549.549 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:30:37,608.608 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:30:37,610.610 INFO    ] No update needed
[2026-08-31 18:30:37,612.612 INFO    ] Checking for camera pi updates...
[2026-08-31 18:30:37,646.646 INFO    ] 200
[2026-08-31 18:30:37,648.648 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:30:37,692.692 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:30:37,785.785 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:30:37,788.788 INFO    ] No camera update needed
[2026-08-31 18:30:37,790.790 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:30:37,793.793 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:30:37,798.798 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:30:37,803.803 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:30:39,844.844 INFO    ] ================================================
[2026-08-31 18:30:39,859.859 INFO    ] Launching Daemon at Mon Aug 31 18:30:39 IST 2026
[2026-08-31 18:30:39,869.869 INFO    ] ================================================
[2026-08-31 18:30:40,447.447 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:30:40
[2026-08-31 18:30:41,044.044 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:30:41,353.353 INFO    ] Initializing speech engine...
[2026-08-31 18:30:41,372.372 INFO    ] 2026-08-31 18:30:41
[2026-08-31 18:30:41,646.646 INFO    ] 2026-08-31 18:30:41
[2026-08-31 18:30:41,742.742 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:30:41,937.937 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:30:41,944.944 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:30:42,144.144 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:30:42,181.181 INFO    ] time= 31/08/2026 18:30:42
[2026-08-31 18:30:42,187.187 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:30:42,207.207 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:30:42,333.333 INFO    ] No existing commands found in stream
[2026-08-31 18:30:47,349.349 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:30:47,352.352 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-08-31 18:30:48,777.777 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 18:30:48,780.780 INFO    ] Checking for system updates...
[2026-08-31 18:30:48,818.818 INFO    ] 200
[2026-08-31 18:30:48,820.820 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:30:48,879.879 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:30:48,882.882 INFO    ] No update needed
[2026-08-31 18:30:48,884.884 INFO    ] Checking for camera pi updates...
[2026-08-31 18:30:48,920.920 INFO    ] 200
[2026-08-31 18:30:48,923.923 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:30:48,967.967 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:30:49,041.041 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:30:49,044.044 INFO    ] No camera update needed
[2026-08-31 18:30:49,046.046 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:30:49,049.049 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:30:49,055.055 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:30:49,060.060 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:30:51,101.101 INFO    ] ================================================
[2026-08-31 18:30:51,116.116 INFO    ] Launching Daemon at Mon Aug 31 18:30:51 IST 2026
[2026-08-31 18:30:51,126.126 INFO    ] ================================================
[2026-08-31 18:30:51,715.715 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:30:51
[2026-08-31 18:30:52,297.297 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:30:52,566.566 INFO    ] Initializing speech engine...
[2026-08-31 18:30:52,586.586 INFO    ] 2026-08-31 18:30:52
[2026-08-31 18:30:52,849.849 INFO    ] 2026-08-31 18:30:52
[2026-08-31 18:30:52,884.884 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:30:53,083.083 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:30:53,103.103 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:30:53,245.245 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:30:53,252.252 INFO    ] time= 31/08/2026 18:30:53
[2026-08-31 18:30:53,258.258 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:30:53,323.323 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:30:53,456.456 INFO    ] No existing commands found in stream
[2026-08-31 18:30:58,472.472 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:30:58,475.475 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-08-31 18:31:02,402.402 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 18:31:02,405.405 INFO    ] Checking for system updates...
[2026-08-31 18:31:02,444.444 INFO    ] 200
[2026-08-31 18:31:02,447.447 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:31:02,512.512 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:31:02,515.515 INFO    ] No update needed
[2026-08-31 18:31:02,519.519 INFO    ] Checking for camera pi updates...
[2026-08-31 18:31:02,563.563 INFO    ] 200
[2026-08-31 18:31:02,567.567 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:31:02,627.627 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:31:02,733.733 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:31:02,736.736 INFO    ] No camera update needed
[2026-08-31 18:31:02,739.739 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:31:02,742.742 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:31:02,748.748 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:31:02,753.753 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:31:04,794.794 INFO    ] ================================================
[2026-08-31 18:31:04,809.809 INFO    ] Launching Daemon at Mon Aug 31 18:31:04 IST 2026
[2026-08-31 18:31:04,819.819 INFO    ] ================================================
[2026-08-31 18:31:05,395.395 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:31:05
[2026-08-31 18:31:05,975.975 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:31:06,260.260 INFO    ] Initializing speech engine...
[2026-08-31 18:31:06,272.272 INFO    ] 2026-08-31 18:31:06
[2026-08-31 18:31:06,544.544 INFO    ] 2026-08-31 18:31:06
[2026-08-31 18:31:06,579.579 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:31:06,829.829 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:31:06,839.839 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:31:07,043.043 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:31:07,094.094 INFO    ] time= 31/08/2026 18:31:07
[2026-08-31 18:31:07,100.100 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:31:07,117.117 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:31:07,244.244 INFO    ] No existing commands found in stream
[2026-08-31 18:31:12,255.255 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:31:12,258.258 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-08-31 18:31:15,694.694 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 18:31:15,697.697 INFO    ] Checking for system updates...
[2026-08-31 18:31:15,734.734 INFO    ] 200
[2026-08-31 18:31:15,737.737 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:31:15,790.790 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:31:15,792.792 INFO    ] No update needed
[2026-08-31 18:31:15,795.795 INFO    ] Checking for camera pi updates...
[2026-08-31 18:31:15,828.828 INFO    ] 200
[2026-08-31 18:31:15,831.831 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:31:15,875.875 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:31:15,950.950 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:31:15,952.952 INFO    ] No camera update needed
[2026-08-31 18:31:15,954.954 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:31:15,957.957 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:31:15,962.962 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:31:15,967.967 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:31:18,008.008 INFO    ] ================================================
[2026-08-31 18:31:18,023.023 INFO    ] Launching Daemon at Mon Aug 31 18:31:18 IST 2026
[2026-08-31 18:31:18,033.033 INFO    ] ================================================
[2026-08-31 18:31:18,601.601 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:31:18
[2026-08-31 18:31:19,185.185 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:31:19,433.433 INFO    ] Initializing speech engine...
[2026-08-31 18:31:19,448.448 INFO    ] 2026-08-31 18:31:19
[2026-08-31 18:31:19,716.716 INFO    ] 2026-08-31 18:31:19
[2026-08-31 18:31:19,751.751 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:31:19,962.962 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:31:20,021.021 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:31:20,176.176 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:31:20,236.236 INFO    ] time= 31/08/2026 18:31:20
[2026-08-31 18:31:20,299.299 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:31:20,306.306 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:31:20,421.421 INFO    ] No existing commands found in stream
[2026-08-31 18:31:25,449.449 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:31:25,452.452 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-08-31 18:31:27,527.527 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 18:31:27,530.530 INFO    ] Checking for system updates...
[2026-08-31 18:31:27,566.566 INFO    ] 200
[2026-08-31 18:31:27,568.568 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:31:27,628.628 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:31:27,631.631 INFO    ] No update needed
[2026-08-31 18:31:27,634.634 INFO    ] Checking for camera pi updates...
[2026-08-31 18:31:27,668.668 INFO    ] 200
[2026-08-31 18:31:27,671.671 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:31:27,717.717 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:31:27,808.808 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:31:27,811.811 INFO    ] No camera update needed
[2026-08-31 18:31:27,814.814 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:31:27,816.816 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:31:27,823.823 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:31:27,828.828 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:31:29,870.870 INFO    ] ================================================
[2026-08-31 18:31:29,886.886 INFO    ] Launching Daemon at Mon Aug 31 18:31:29 IST 2026
[2026-08-31 18:31:29,897.897 INFO    ] ================================================
[2026-08-31 18:31:30,476.476 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:31:30
[2026-08-31 18:31:31,074.074 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:31:31,337.337 INFO    ] Initializing speech engine...
[2026-08-31 18:31:31,348.348 INFO    ] 2026-08-31 18:31:31
[2026-08-31 18:31:31,665.665 INFO    ] 2026-08-31 18:31:31
[2026-08-31 18:31:31,702.702 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:31:31,958.958 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:31:31,981.981 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:31:32,131.131 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:31:32,187.187 INFO    ] time= 31/08/2026 18:31:32
[2026-08-31 18:31:32,242.242 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:31:32,268.268 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:31:32,378.378 INFO    ] No existing commands found in stream
[2026-08-31 18:31:37,406.406 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:31:37,409.409 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-08-31 18:31:39,415.415 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 18:31:39,418.418 INFO    ] Checking for system updates...
[2026-08-31 18:31:39,454.454 INFO    ] 200
[2026-08-31 18:31:39,457.457 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:31:39,510.510 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:31:39,513.513 INFO    ] No update needed
[2026-08-31 18:31:39,516.516 INFO    ] Checking for camera pi updates...
[2026-08-31 18:31:39,554.554 INFO    ] 200
[2026-08-31 18:31:39,556.556 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:31:39,603.603 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:31:39,684.684 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:31:39,688.688 INFO    ] No camera update needed
[2026-08-31 18:31:39,690.690 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:31:39,693.693 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:31:39,699.699 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:31:39,705.705 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:31:41,748.748 INFO    ] ================================================
[2026-08-31 18:31:41,763.763 INFO    ] Launching Daemon at Mon Aug 31 18:31:41 IST 2026
[2026-08-31 18:31:41,775.775 INFO    ] ================================================
[2026-08-31 18:31:42,350.350 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:31:42
[2026-08-31 18:31:42,947.947 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:31:43,217.217 INFO    ] Initializing speech engine...
[2026-08-31 18:31:43,230.230 INFO    ] 2026-08-31 18:31:43
[2026-08-31 18:31:43,486.486 INFO    ] 2026-08-31 18:31:43
[2026-08-31 18:31:43,546.546 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:31:43,774.774 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:31:43,780.780 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:31:43,984.984 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:31:44,037.037 INFO    ] time= 31/08/2026 18:31:43
[2026-08-31 18:31:44,044.044 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:31:44,062.062 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:31:44,195.195 INFO    ] No existing commands found in stream
[2026-08-31 18:31:49,223.223 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:31:49,226.226 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-08-31 18:31:52,931.931 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 18:31:52,934.934 INFO    ] Checking for system updates...
[2026-08-31 18:31:52,974.974 INFO    ] 200
[2026-08-31 18:31:52,977.977 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:31:53,031.031 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:31:53,034.034 INFO    ] No update needed
[2026-08-31 18:31:53,036.036 INFO    ] Checking for camera pi updates...
[2026-08-31 18:31:53,070.070 INFO    ] 200
[2026-08-31 18:31:53,072.072 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:31:53,114.114 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:31:53,187.187 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:31:53,190.190 INFO    ] No camera update needed
[2026-08-31 18:31:53,192.192 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:31:53,195.195 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:31:53,200.200 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:31:53,205.205 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:31:55,247.247 INFO    ] ================================================
[2026-08-31 18:31:55,263.263 INFO    ] Launching Daemon at Mon Aug 31 18:31:55 IST 2026
[2026-08-31 18:31:55,274.274 INFO    ] ================================================
[2026-08-31 18:31:55,842.842 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:31:55
[2026-08-31 18:31:56,425.425 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:31:56,695.695 INFO    ] Initializing speech engine...
[2026-08-31 18:31:56,707.707 INFO    ] 2026-08-31 18:31:56
[2026-08-31 18:31:56,958.958 INFO    ] 2026-08-31 18:31:56
[2026-08-31 18:31:56,993.993 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:31:57,216.216 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:31:57,225.225 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:31:57,448.448 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:31:57,455.455 INFO    ] time= 31/08/2026 18:31:57
[2026-08-31 18:31:57,494.494 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:31:57,533.533 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:31:57,609.609 INFO    ] No existing commands found in stream
[2026-08-31 18:32:02,630.630 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:32:02,634.634 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-08-31 18:32:04,448.448 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 18:32:04,451.451 INFO    ] Checking for system updates...
[2026-08-31 18:32:04,486.486 INFO    ] 200
[2026-08-31 18:32:04,489.489 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:32:04,540.540 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:32:04,542.542 INFO    ] No update needed
[2026-08-31 18:32:04,545.545 INFO    ] Checking for camera pi updates...
[2026-08-31 18:32:04,582.582 INFO    ] 200
[2026-08-31 18:32:04,584.584 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:32:04,625.625 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:32:04,709.709 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:32:04,712.712 INFO    ] No camera update needed
[2026-08-31 18:32:04,714.714 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:32:04,716.716 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:32:04,721.721 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:32:04,726.726 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:32:06,768.768 INFO    ] ================================================
[2026-08-31 18:32:06,784.784 INFO    ] Launching Daemon at Mon Aug 31 18:32:06 IST 2026
[2026-08-31 18:32:06,795.795 INFO    ] ================================================
[2026-08-31 18:32:07,361.361 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:32:07
[2026-08-31 18:32:07,960.960 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:32:08,219.219 INFO    ] Initializing speech engine...
[2026-08-31 18:32:08,234.234 INFO    ] 2026-08-31 18:32:08
[2026-08-31 18:32:08,515.515 INFO    ] 2026-08-31 18:32:08
[2026-08-31 18:32:08,554.554 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:32:08,836.836 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:32:08,846.846 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:32:09,058.058 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:32:09,112.112 INFO    ] time= 31/08/2026 18:32:09
[2026-08-31 18:32:09,136.136 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:32:09,143.143 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:32:09,295.295 INFO    ] No existing commands found in stream
[2026-08-31 18:32:14,315.315 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:32:14,318.318 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-08-31 18:32:17,446.446 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 18:32:17,449.449 INFO    ] Checking for system updates...
[2026-08-31 18:32:17,484.484 INFO    ] 200
[2026-08-31 18:32:17,487.487 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:32:17,544.544 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:32:17,546.546 INFO    ] No update needed
[2026-08-31 18:32:17,549.549 INFO    ] Checking for camera pi updates...
[2026-08-31 18:32:17,583.583 INFO    ] 200
[2026-08-31 18:32:17,585.585 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:32:17,626.626 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:32:17,679.679 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:32:17,681.681 INFO    ] No camera update needed
[2026-08-31 18:32:17,684.684 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:32:17,686.686 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:32:17,691.691 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:32:17,696.696 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:32:19,738.738 INFO    ] ================================================
[2026-08-31 18:32:19,753.753 INFO    ] Launching Daemon at Mon Aug 31 18:32:19 IST 2026
[2026-08-31 18:32:19,765.765 INFO    ] ================================================
[2026-08-31 18:32:20,341.341 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:32:20
[2026-08-31 18:32:20,927.927 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:32:21,209.209 INFO    ] Initializing speech engine...
[2026-08-31 18:32:21,229.229 INFO    ] 2026-08-31 18:32:21
[2026-08-31 18:32:21,475.475 INFO    ] 2026-08-31 18:32:21
[2026-08-31 18:32:21,510.510 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:32:21,682.682 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:32:21,694.694 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:32:21,916.916 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:32:21,922.922 INFO    ] time= 31/08/2026 18:32:21
[2026-08-31 18:32:21,982.982 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:32:22,031.031 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:32:22,115.115 INFO    ] No existing commands found in stream
[2026-08-31 18:32:27,127.127 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:32:27,130.130 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-08-31 18:32:28,062.062 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 18:32:28,064.064 INFO    ] Checking for system updates...
[2026-08-31 18:32:28,102.102 INFO    ] 200
[2026-08-31 18:32:28,104.104 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:32:28,156.156 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:32:28,159.159 INFO    ] No update needed
[2026-08-31 18:32:28,161.161 INFO    ] Checking for camera pi updates...
[2026-08-31 18:32:28,197.197 INFO    ] 200
[2026-08-31 18:32:28,199.199 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:32:28,239.239 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:32:28,305.305 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:32:28,307.307 INFO    ] No camera update needed
[2026-08-31 18:32:28,310.310 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:32:28,312.312 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:32:28,317.317 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:32:28,322.322 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:32:30,363.363 INFO    ] ================================================
[2026-08-31 18:32:30,379.379 INFO    ] Launching Daemon at Mon Aug 31 18:32:30 IST 2026
[2026-08-31 18:32:30,389.389 INFO    ] ================================================
[2026-08-31 18:32:30,956.956 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:32:30
[2026-08-31 18:32:31,574.574 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:32:31,874.874 INFO    ] Initializing speech engine...
[2026-08-31 18:32:31,884.884 INFO    ] 2026-08-31 18:32:31
[2026-08-31 18:32:32,148.148 INFO    ] 2026-08-31 18:32:32
[2026-08-31 18:32:32,185.185 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:32:32,439.439 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:32:32,458.458 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:32:32,606.606 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:32:32,651.651 INFO    ] time= 31/08/2026 18:32:32
[2026-08-31 18:32:32,706.706 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:32:32,738.738 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:32:32,798.798 INFO    ] No existing commands found in stream
[2026-08-31 18:32:37,822.822 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:32:37,825.825 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-08-31 18:32:39,896.896 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 18:32:39,899.899 INFO    ] Checking for system updates...
[2026-08-31 18:32:39,935.935 INFO    ] 200
[2026-08-31 18:32:39,938.938 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:32:39,996.996 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:32:39,999.999 INFO    ] No update needed
[2026-08-31 18:32:40,001.001 INFO    ] Checking for camera pi updates...
[2026-08-31 18:32:40,035.035 INFO    ] 200
[2026-08-31 18:32:40,038.038 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:32:40,079.079 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:32:40,168.168 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:32:40,170.170 INFO    ] No camera update needed
[2026-08-31 18:32:40,173.173 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:32:40,175.175 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:32:40,180.180 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:32:40,185.185 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:32:42,228.228 INFO    ] ================================================
[2026-08-31 18:32:42,244.244 INFO    ] Launching Daemon at Mon Aug 31 18:32:42 IST 2026
[2026-08-31 18:32:42,255.255 INFO    ] ================================================
[2026-08-31 18:32:42,837.837 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:32:42
[2026-08-31 18:32:43,434.434 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:32:43,707.707 INFO    ] Initializing speech engine...
[2026-08-31 18:32:43,716.716 INFO    ] 2026-08-31 18:32:43
[2026-08-31 18:32:43,980.980 INFO    ] 2026-08-31 18:32:43
[2026-08-31 18:32:44,033.033 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:32:44,281.281 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:32:44,289.289 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:32:44,488.488 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:32:44,525.525 INFO    ] time= 31/08/2026 18:32:44
[2026-08-31 18:32:44,542.542 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:32:44,552.552 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:32:44,679.679 INFO    ] No existing commands found in stream
[2026-08-31 18:32:49,693.693 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:32:49,696.696 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-08-31 18:32:51,122.122 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 18:32:51,125.125 INFO    ] Checking for system updates...
[2026-08-31 18:32:51,164.164 INFO    ] 200
[2026-08-31 18:32:51,167.167 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:32:51,219.219 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:32:51,221.221 INFO    ] No update needed
[2026-08-31 18:32:51,224.224 INFO    ] Checking for camera pi updates...
[2026-08-31 18:32:51,257.257 INFO    ] 200
[2026-08-31 18:32:51,260.260 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:32:51,305.305 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:32:51,358.358 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:32:51,361.361 INFO    ] No camera update needed
[2026-08-31 18:32:51,363.363 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:32:51,365.365 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:32:51,371.371 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:32:51,376.376 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:32:53,418.418 INFO    ] ================================================
[2026-08-31 18:32:53,434.434 INFO    ] Launching Daemon at Mon Aug 31 18:32:53 IST 2026
[2026-08-31 18:32:53,446.446 INFO    ] ================================================
[2026-08-31 18:32:54,114.114 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:32:54
[2026-08-31 18:32:54,802.802 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:32:55,111.111 INFO    ] Initializing speech engine...
[2026-08-31 18:32:55,125.125 INFO    ] 2026-08-31 18:32:55
[2026-08-31 18:32:55,436.436 INFO    ] 2026-08-31 18:32:55
[2026-08-31 18:32:55,525.525 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:32:55,736.736 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:32:55,744.744 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:32:55,944.944 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:32:55,962.962 INFO    ] time= 31/08/2026 18:32:55
[2026-08-31 18:32:55,992.992 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:32:56,001.001 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:32:56,118.118 INFO    ] No existing commands found in stream
[2026-08-31 18:33:01,144.144 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:33:01,147.147 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-08-31 18:33:03,687.687 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 18:33:03,690.690 INFO    ] Checking for system updates...
[2026-08-31 18:33:03,727.727 INFO    ] 200
[2026-08-31 18:33:03,730.730 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:33:03,783.783 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:33:03,786.786 INFO    ] No update needed
[2026-08-31 18:33:03,789.789 INFO    ] Checking for camera pi updates...
[2026-08-31 18:33:03,823.823 INFO    ] 200
[2026-08-31 18:33:03,826.826 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:33:03,868.868 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:33:03,948.948 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:33:03,951.951 INFO    ] No camera update needed
[2026-08-31 18:33:03,954.954 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:33:03,956.956 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:33:03,962.962 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:33:03,968.968 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:33:06,009.009 INFO    ] ================================================
[2026-08-31 18:33:06,025.025 INFO    ] Launching Daemon at Mon Aug 31 18:33:06 IST 2026
[2026-08-31 18:33:06,036.036 INFO    ] ================================================
[2026-08-31 18:33:06,636.636 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:33:06
[2026-08-31 18:33:07,218.218 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:33:07,471.471 INFO    ] Initializing speech engine...
[2026-08-31 18:33:07,480.480 INFO    ] 2026-08-31 18:33:07
[2026-08-31 18:33:07,770.770 INFO    ] 2026-08-31 18:33:07
[2026-08-31 18:33:07,807.807 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:33:07,997.997 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:33:08,010.010 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:33:08,150.150 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:33:08,159.159 INFO    ] time= 31/08/2026 18:33:08
[2026-08-31 18:33:08,166.166 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:33:08,210.210 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:33:08,343.343 INFO    ] No existing commands found in stream
[2026-08-31 18:33:13,365.365 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:33:13,368.368 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-08-31 18:33:14,994.994 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 18:33:14,997.997 INFO    ] Checking for system updates...
[2026-08-31 18:33:15,036.036 INFO    ] 200
[2026-08-31 18:33:15,038.038 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:33:15,096.096 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:33:15,099.099 INFO    ] No update needed
[2026-08-31 18:33:15,101.101 INFO    ] Checking for camera pi updates...
[2026-08-31 18:33:15,136.136 INFO    ] 200
[2026-08-31 18:33:15,138.138 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:33:15,180.180 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:33:15,264.264 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:33:15,267.267 INFO    ] No camera update needed
[2026-08-31 18:33:15,269.269 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:33:15,271.271 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:33:15,277.277 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:33:15,282.282 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:33:17,321.321 INFO    ] ================================================
[2026-08-31 18:33:17,336.336 INFO    ] Launching Daemon at Mon Aug 31 18:33:17 IST 2026
[2026-08-31 18:33:17,347.347 INFO    ] ================================================
[2026-08-31 18:33:17,914.914 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:33:17
[2026-08-31 18:33:18,496.496 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:33:18,768.768 INFO    ] Initializing speech engine...
[2026-08-31 18:33:18,773.773 INFO    ] 2026-08-31 18:33:18
[2026-08-31 18:33:19,019.019 INFO    ] 2026-08-31 18:33:19
[2026-08-31 18:33:19,053.053 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:33:19,304.304 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:33:19,313.313 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:33:19,446.446 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:33:19,507.507 INFO    ] time= 31/08/2026 18:33:19
[2026-08-31 18:33:19,556.556 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:33:19,577.577 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:33:19,693.693 INFO    ] No existing commands found in stream
[2026-08-31 18:33:24,725.725 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:33:24,729.729 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-08-31 18:33:26,441.441 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 18:33:26,443.443 INFO    ] Checking for system updates...
[2026-08-31 18:33:26,479.479 INFO    ] 200
[2026-08-31 18:33:26,481.481 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:33:26,533.533 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:33:26,535.535 INFO    ] No update needed
[2026-08-31 18:33:26,537.537 INFO    ] Checking for camera pi updates...
[2026-08-31 18:33:26,578.578 INFO    ] 200
[2026-08-31 18:33:26,580.580 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:33:26,624.624 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:33:26,709.709 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:33:26,712.712 INFO    ] No camera update needed
[2026-08-31 18:33:26,714.714 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:33:26,716.716 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:33:26,721.721 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:33:26,727.727 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:33:28,768.768 INFO    ] ================================================
[2026-08-31 18:33:28,782.782 INFO    ] Launching Daemon at Mon Aug 31 18:33:28 IST 2026
[2026-08-31 18:33:28,793.793 INFO    ] ================================================
[2026-08-31 18:33:29,429.429 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:33:29
[2026-08-31 18:33:30,086.086 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:33:30,381.381 INFO    ] Initializing speech engine...
[2026-08-31 18:33:30,391.391 INFO    ] 2026-08-31 18:33:30
[2026-08-31 18:33:30,701.701 INFO    ] 2026-08-31 18:33:30
[2026-08-31 18:33:30,788.788 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:33:30,963.963 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:33:30,972.972 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:33:31,156.156 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:33:31,206.206 INFO    ] time= 31/08/2026 18:33:31
[2026-08-31 18:33:31,213.213 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:33:31,231.231 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:33:31,378.378 INFO    ] No existing commands found in stream
[2026-08-31 18:33:36,411.411 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:33:36,415.415 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-08-31 18:33:38,449.449 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 18:33:38,452.452 INFO    ] Checking for system updates...
[2026-08-31 18:33:38,504.504 INFO    ] 200
[2026-08-31 18:33:38,508.508 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-08-31 18:33:38,511.511 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-08-31 18:33:38,514.514 INFO    ] Checking for camera pi updates...
[2026-08-31 18:33:38,553.553 INFO    ] 200
[2026-08-31 18:33:38,556.556 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-08-31 18:33:38,560.560 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-08-31 18:33:38,563.563 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:33:38,565.565 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:33:38,571.571 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:33:38,578.578 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:33:40,618.618 INFO    ] ================================================
[2026-08-31 18:33:40,633.633 INFO    ] Launching Daemon at Mon Aug 31 18:33:40 IST 2026
[2026-08-31 18:33:40,644.644 INFO    ] ================================================
[2026-08-31 18:33:41,227.227 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:33:41
[2026-08-31 18:33:41,829.829 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:33:42,092.092 INFO    ] Initializing speech engine...
[2026-08-31 18:33:42,108.108 INFO    ] 2026-08-31 18:33:42
[2026-08-31 18:33:42,399.399 INFO    ] 2026-08-31 18:33:42
[2026-08-31 18:33:42,452.452 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:33:42,731.731 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:33:42,740.740 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:33:42,894.894 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:33:42,900.900 INFO    ] time= 31/08/2026 18:33:42
[2026-08-31 18:33:42,955.955 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:33:43,004.004 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:33:43,100.100 INFO    ] No existing commands found in stream
[2026-08-31 18:33:48,110.110 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:33:48,113.113 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-08-31 18:33:49,753.753 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 18:33:49,755.755 INFO    ] Checking for system updates...
[2026-08-31 18:33:49,791.791 INFO    ] 200
[2026-08-31 18:33:49,794.794 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:33:49,853.853 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:33:49,855.855 INFO    ] No update needed
[2026-08-31 18:33:49,858.858 INFO    ] Checking for camera pi updates...
[2026-08-31 18:33:49,895.895 INFO    ] 200
[2026-08-31 18:33:49,897.897 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:33:49,939.939 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:33:50,119.119 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:33:50,121.121 INFO    ] No camera update needed
[2026-08-31 18:33:50,124.124 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:33:50,126.126 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:33:50,131.131 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:33:50,136.136 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:33:52,178.178 INFO    ] ================================================
[2026-08-31 18:33:52,193.193 INFO    ] Launching Daemon at Mon Aug 31 18:33:52 IST 2026
[2026-08-31 18:33:52,204.204 INFO    ] ================================================
[2026-08-31 18:33:52,843.843 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:33:52
[2026-08-31 18:33:53,499.499 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:33:53,795.795 INFO    ] Initializing speech engine...
[2026-08-31 18:33:53,804.804 INFO    ] 2026-08-31 18:33:53
[2026-08-31 18:33:54,094.094 INFO    ] 2026-08-31 18:33:54
[2026-08-31 18:33:54,134.134 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:33:54,413.413 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:33:54,421.421 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:33:54,618.618 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:33:54,635.635 INFO    ] time= 31/08/2026 18:33:54
[2026-08-31 18:33:54,668.668 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:33:54,677.677 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:33:54,804.804 INFO    ] No existing commands found in stream
[2026-08-31 18:33:59,835.835 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:33:59,838.838 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-08-31 18:34:04,198.198 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 18:34:04,201.201 INFO    ] Checking for system updates...
[2026-08-31 18:34:04,242.242 INFO    ] 200
[2026-08-31 18:34:04,245.245 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:34:04,299.299 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:34:04,302.302 INFO    ] No update needed
[2026-08-31 18:34:04,304.304 INFO    ] Checking for camera pi updates...
[2026-08-31 18:34:04,338.338 INFO    ] 200
[2026-08-31 18:34:04,340.340 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:34:04,381.381 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:34:04,488.488 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:34:04,491.491 INFO    ] No camera update needed
[2026-08-31 18:34:04,494.494 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:34:04,497.497 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:34:04,503.503 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:34:04,509.509 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:34:06,552.552 INFO    ] ================================================
[2026-08-31 18:34:06,567.567 INFO    ] Launching Daemon at Mon Aug 31 18:34:06 IST 2026
[2026-08-31 18:34:06,577.577 INFO    ] ================================================
[2026-08-31 18:34:07,143.143 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:34:07
[2026-08-31 18:34:07,733.733 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:34:07,989.989 INFO    ] Initializing speech engine...
[2026-08-31 18:34:07,996.996 INFO    ] 2026-08-31 18:34:07
[2026-08-31 18:34:08,298.298 INFO    ] 2026-08-31 18:34:08
[2026-08-31 18:34:08,333.333 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:34:08,569.569 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:34:08,604.604 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:34:08,800.800 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:34:08,822.822 INFO    ] time= 31/08/2026 18:34:08
[2026-08-31 18:34:08,871.871 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:34:08,905.905 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:34:09,012.012 INFO    ] No existing commands found in stream
[2026-08-31 18:34:14,024.024 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:34:14,026.026 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-08-31 18:34:15,412.412 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 18:34:15,414.414 INFO    ] Checking for system updates...
[2026-08-31 18:34:15,450.450 INFO    ] 200
[2026-08-31 18:34:15,453.453 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:34:15,505.505 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:34:15,507.507 INFO    ] No update needed
[2026-08-31 18:34:15,510.510 INFO    ] Checking for camera pi updates...
[2026-08-31 18:34:15,548.548 INFO    ] 200
[2026-08-31 18:34:15,550.550 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:34:15,596.596 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:34:15,666.666 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:34:15,669.669 INFO    ] No camera update needed
[2026-08-31 18:34:15,671.671 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:34:15,673.673 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:34:15,679.679 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:34:15,684.684 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:34:17,724.724 INFO    ] ================================================
[2026-08-31 18:34:17,739.739 INFO    ] Launching Daemon at Mon Aug 31 18:34:17 IST 2026
[2026-08-31 18:34:17,750.750 INFO    ] ================================================
[2026-08-31 18:34:18,315.315 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:34:18
[2026-08-31 18:34:18,897.897 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:34:19,153.153 INFO    ] Initializing speech engine...
[2026-08-31 18:34:19,161.161 INFO    ] 2026-08-31 18:34:19
[2026-08-31 18:34:19,459.459 INFO    ] 2026-08-31 18:34:19
[2026-08-31 18:34:19,494.494 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:34:19,726.726 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:34:19,745.745 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:34:19,960.960 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:34:19,968.968 INFO    ] time= 31/08/2026 18:34:19
[2026-08-31 18:34:20,022.022 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:34:20,066.066 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:34:20,158.158 INFO    ] No existing commands found in stream
[2026-08-31 18:34:25,184.184 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:34:25,186.186 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-08-31 18:34:26,290.290 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 18:34:26,292.292 INFO    ] Checking for system updates...
[2026-08-31 18:34:26,329.329 INFO    ] 200
[2026-08-31 18:34:26,332.332 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:34:26,392.392 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:34:26,395.395 INFO    ] No update needed
[2026-08-31 18:34:26,397.397 INFO    ] Checking for camera pi updates...
[2026-08-31 18:34:26,435.435 INFO    ] 200
[2026-08-31 18:34:26,437.437 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:34:26,483.483 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:34:26,564.564 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:34:26,566.566 INFO    ] No camera update needed
[2026-08-31 18:34:26,569.569 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:34:26,571.571 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:34:26,576.576 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:34:26,581.581 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:34:28,622.622 INFO    ] ================================================
[2026-08-31 18:34:28,637.637 INFO    ] Launching Daemon at Mon Aug 31 18:34:28 IST 2026
[2026-08-31 18:34:28,648.648 INFO    ] ================================================
[2026-08-31 18:34:29,313.313 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:34:29
[2026-08-31 18:34:29,996.996 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:34:30,303.303 INFO    ] Initializing speech engine...
[2026-08-31 18:34:30,311.311 INFO    ] 2026-08-31 18:34:30
[2026-08-31 18:34:30,587.587 INFO    ] 2026-08-31 18:34:30
[2026-08-31 18:34:30,642.642 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:34:30,992.992 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:34:31,014.014 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:34:31,245.245 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:34:31,268.268 INFO    ] time= 31/08/2026 18:34:31
[2026-08-31 18:34:31,272.272 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:34:31,275.275 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:34:31,395.395 INFO    ] No existing commands found in stream
[2026-08-31 18:34:36,428.428 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:34:36,431.431 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-08-31 18:34:38,955.955 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 18:34:38,958.958 INFO    ] Checking for system updates...
[2026-08-31 18:34:38,996.996 INFO    ] 200
[2026-08-31 18:34:38,999.999 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:34:39,059.059 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:34:39,061.061 INFO    ] No update needed
[2026-08-31 18:34:39,064.064 INFO    ] Checking for camera pi updates...
[2026-08-31 18:34:39,101.101 INFO    ] 200
[2026-08-31 18:34:39,104.104 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:34:39,144.144 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:34:39,229.229 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:34:39,231.231 INFO    ] No camera update needed
[2026-08-31 18:34:39,233.233 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:34:39,235.235 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:34:39,241.241 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:34:39,246.246 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:34:41,287.287 INFO    ] ================================================
[2026-08-31 18:34:41,302.302 INFO    ] Launching Daemon at Mon Aug 31 18:34:41 IST 2026
[2026-08-31 18:34:41,313.313 INFO    ] ================================================
[2026-08-31 18:34:41,905.905 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:34:41
[2026-08-31 18:34:42,504.504 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:34:42,787.787 INFO    ] Initializing speech engine...
[2026-08-31 18:34:42,796.796 INFO    ] 2026-08-31 18:34:42
[2026-08-31 18:34:43,077.077 INFO    ] 2026-08-31 18:34:43
[2026-08-31 18:34:43,116.116 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:34:43,321.321 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:34:43,336.336 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:34:43,508.508 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:34:43,516.516 INFO    ] time= 31/08/2026 18:34:43
[2026-08-31 18:34:43,531.531 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:34:43,594.594 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:34:43,708.708 INFO    ] No existing commands found in stream
[2026-08-31 18:34:48,735.735 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:34:48,738.738 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-08-31 18:34:51,442.442 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 18:34:51,451.451 INFO    ] Checking for system updates...
[2026-08-31 18:34:51,487.487 INFO    ] 200
[2026-08-31 18:34:51,490.490 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:34:51,550.550 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:34:51,552.552 INFO    ] No update needed
[2026-08-31 18:34:51,555.555 INFO    ] Checking for camera pi updates...
[2026-08-31 18:34:51,593.593 INFO    ] 200
[2026-08-31 18:34:51,595.595 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:34:51,641.641 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:34:51,738.738 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:34:51,740.740 INFO    ] No camera update needed
[2026-08-31 18:34:51,743.743 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:34:51,745.745 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:34:51,750.750 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:34:51,755.755 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:34:53,795.795 INFO    ] ================================================
[2026-08-31 18:34:53,811.811 INFO    ] Launching Daemon at Mon Aug 31 18:34:53 IST 2026
[2026-08-31 18:34:53,822.822 INFO    ] ================================================
[2026-08-31 18:34:54,400.400 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:34:54
[2026-08-31 18:34:55,016.016 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:34:55,301.301 INFO    ] Initializing speech engine...
[2026-08-31 18:34:55,323.323 INFO    ] 2026-08-31 18:34:55
[2026-08-31 18:34:55,613.613 INFO    ] 2026-08-31 18:34:55
[2026-08-31 18:34:55,657.657 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:34:55,910.910 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:34:55,919.919 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:34:56,055.055 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:34:56,093.093 INFO    ] time= 31/08/2026 18:34:56
[2026-08-31 18:34:56,170.170 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:34:56,208.208 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:34:56,330.330 INFO    ] No existing commands found in stream
[2026-08-31 18:35:01,355.355 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:35:01,359.359 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-08-31 18:35:04,976.976 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 18:35:04,978.978 INFO    ] Checking for system updates...
[2026-08-31 18:35:05,014.014 INFO    ] 200
[2026-08-31 18:35:05,017.017 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:35:05,069.069 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:35:05,072.072 INFO    ] No update needed
[2026-08-31 18:35:05,074.074 INFO    ] Checking for camera pi updates...
[2026-08-31 18:35:05,111.111 INFO    ] 200
[2026-08-31 18:35:05,113.113 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:35:05,154.154 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:35:05,235.235 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:35:05,237.237 INFO    ] No camera update needed
[2026-08-31 18:35:05,240.240 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:35:05,242.242 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:35:05,247.247 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:35:05,253.253 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:35:07,294.294 INFO    ] ================================================
[2026-08-31 18:35:07,310.310 INFO    ] Launching Daemon at Mon Aug 31 18:35:07 IST 2026
[2026-08-31 18:35:07,321.321 INFO    ] ================================================
[2026-08-31 18:35:07,906.906 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:35:07
[2026-08-31 18:35:08,503.503 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:35:08,778.778 INFO    ] Initializing speech engine...
[2026-08-31 18:35:08,787.787 INFO    ] 2026-08-31 18:35:08
[2026-08-31 18:35:09,054.054 INFO    ] 2026-08-31 18:35:09
[2026-08-31 18:35:09,083.083 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:35:09,330.330 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:35:09,335.335 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:35:09,547.547 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:35:09,592.592 INFO    ] time= 31/08/2026 18:35:09
[2026-08-31 18:35:09,598.598 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:35:09,615.615 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:35:09,746.746 INFO    ] No existing commands found in stream
[2026-08-31 18:35:14,764.764 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:35:14,767.767 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-08-31 18:35:19,131.131 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 18:35:19,134.134 INFO    ] Checking for system updates...
[2026-08-31 18:35:19,170.170 INFO    ] 200
[2026-08-31 18:35:19,172.172 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:35:19,231.231 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:35:19,234.234 INFO    ] No update needed
[2026-08-31 18:35:19,237.237 INFO    ] Checking for camera pi updates...
[2026-08-31 18:35:19,275.275 INFO    ] 200
[2026-08-31 18:35:19,278.278 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:35:19,323.323 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:35:19,411.411 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:35:19,413.413 INFO    ] No camera update needed
[2026-08-31 18:35:19,416.416 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:35:19,419.419 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:35:19,425.425 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:35:19,430.430 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:35:21,473.473 INFO    ] ================================================
[2026-08-31 18:35:21,488.488 INFO    ] Launching Daemon at Mon Aug 31 18:35:21 IST 2026
[2026-08-31 18:35:21,499.499 INFO    ] ================================================
[2026-08-31 18:35:22,138.138 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:35:22
[2026-08-31 18:35:22,799.799 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:35:23,082.082 INFO    ] Initializing speech engine...
[2026-08-31 18:35:23,097.097 INFO    ] 2026-08-31 18:35:23
[2026-08-31 18:35:23,365.365 INFO    ] 2026-08-31 18:35:23
[2026-08-31 18:35:23,403.403 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:35:23,667.667 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:35:23,674.674 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:35:23,881.881 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:35:23,936.936 INFO    ] time= 31/08/2026 18:35:23
[2026-08-31 18:35:23,944.944 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:35:23,963.963 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:35:24,110.110 INFO    ] No existing commands found in stream
[2026-08-31 18:35:29,142.142 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:35:29,145.145 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-08-31 18:35:32,075.075 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 18:35:32,079.079 INFO    ] Checking for system updates...
[2026-08-31 18:35:32,119.119 INFO    ] 200
[2026-08-31 18:35:32,122.122 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:35:32,186.186 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:35:32,190.190 INFO    ] No update needed
[2026-08-31 18:35:32,193.193 INFO    ] Checking for camera pi updates...
[2026-08-31 18:35:32,234.234 INFO    ] 200
[2026-08-31 18:35:32,238.238 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:35:32,286.286 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:35:32,361.361 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:35:32,365.365 INFO    ] No camera update needed
[2026-08-31 18:35:32,368.368 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:35:32,372.372 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:35:32,379.379 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:35:32,388.388 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:35:34,429.429 INFO    ] ================================================
[2026-08-31 18:35:34,445.445 INFO    ] Launching Daemon at Mon Aug 31 18:35:34 IST 2026
[2026-08-31 18:35:34,456.456 INFO    ] ================================================
[2026-08-31 18:35:35,026.026 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:35:35
[2026-08-31 18:35:35,611.611 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:35:35,859.859 INFO    ] Initializing speech engine...
[2026-08-31 18:35:35,872.872 INFO    ] 2026-08-31 18:35:35
[2026-08-31 18:35:36,137.137 INFO    ] 2026-08-31 18:35:36
[2026-08-31 18:35:36,172.172 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:35:36,370.370 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:35:36,393.393 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:35:36,574.574 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:35:36,596.596 INFO    ] time= 31/08/2026 18:35:36
[2026-08-31 18:35:36,636.636 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:35:36,690.690 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:35:36,763.763 INFO    ] No existing commands found in stream
[2026-08-31 18:35:41,775.775 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:35:41,779.779 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-08-31 18:35:44,777.777 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 18:35:44,779.779 INFO    ] Checking for system updates...
[2026-08-31 18:35:44,815.815 INFO    ] 200
[2026-08-31 18:35:44,817.817 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:35:44,876.876 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:35:44,879.879 INFO    ] No update needed
[2026-08-31 18:35:44,881.881 INFO    ] Checking for camera pi updates...
[2026-08-31 18:35:44,915.915 INFO    ] 200
[2026-08-31 18:35:44,917.917 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:35:44,964.964 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:35:45,048.048 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:35:45,051.051 INFO    ] No camera update needed
[2026-08-31 18:35:45,053.053 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:35:45,055.055 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:35:45,061.061 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:35:45,067.067 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:35:47,109.109 INFO    ] ================================================
[2026-08-31 18:35:47,125.125 INFO    ] Launching Daemon at Mon Aug 31 18:35:47 IST 2026
[2026-08-31 18:35:47,137.137 INFO    ] ================================================
[2026-08-31 18:35:47,718.718 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:35:47
[2026-08-31 18:35:48,404.404 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:35:48,728.728 INFO    ] Initializing speech engine...
[2026-08-31 18:35:48,732.732 INFO    ] 2026-08-31 18:35:48
[2026-08-31 18:35:49,031.031 INFO    ] 2026-08-31 18:35:49
[2026-08-31 18:35:49,151.151 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:35:49,323.323 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:35:49,333.333 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:35:49,493.493 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:35:49,537.537 INFO    ] time= 31/08/2026 18:35:49
[2026-08-31 18:35:49,587.587 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:35:49,642.642 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:35:49,804.804 INFO    ] No existing commands found in stream
[2026-08-31 18:35:54,835.835 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:35:54,838.838 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-08-31 18:35:57,735.735 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 18:35:57,738.738 INFO    ] Checking for system updates...
[2026-08-31 18:35:57,777.777 INFO    ] 200
[2026-08-31 18:35:57,780.780 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:35:57,833.833 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:35:57,836.836 INFO    ] No update needed
[2026-08-31 18:35:57,838.838 INFO    ] Checking for camera pi updates...
[2026-08-31 18:35:57,871.871 INFO    ] 200
[2026-08-31 18:35:57,874.874 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:35:57,919.919 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:35:58,112.112 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:35:58,114.114 INFO    ] No camera update needed
[2026-08-31 18:35:58,117.117 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:35:58,119.119 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:35:58,124.124 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:35:58,129.129 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:36:00,170.170 INFO    ] ================================================
[2026-08-31 18:36:00,185.185 INFO    ] Launching Daemon at Mon Aug 31 18:36:00 IST 2026
[2026-08-31 18:36:00,196.196 INFO    ] ================================================
[2026-08-31 18:36:00,778.778 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:36:00
[2026-08-31 18:36:01,524.524 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:36:01,898.898 INFO    ] Initializing speech engine...
[2026-08-31 18:36:01,904.904 INFO    ] 2026-08-31 18:36:01
[2026-08-31 18:36:02,230.230 INFO    ] 2026-08-31 18:36:02
[2026-08-31 18:36:02,310.310 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:36:02,502.502 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:36:02,507.507 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:36:02,725.725 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:36:02,729.729 INFO    ] time= 31/08/2026 18:36:02
[2026-08-31 18:36:02,732.732 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:36:02,735.735 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:36:02,807.807 INFO    ] No existing commands found in stream
[2026-08-31 18:36:07,819.819 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:36:07,822.822 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-08-31 18:36:09,895.895 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 18:36:09,898.898 INFO    ] Checking for system updates...
[2026-08-31 18:36:09,934.934 INFO    ] 200
[2026-08-31 18:36:09,937.937 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:36:09,990.990 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:36:09,992.992 INFO    ] No update needed
[2026-08-31 18:36:09,995.995 INFO    ] Checking for camera pi updates...
[2026-08-31 18:36:10,028.028 INFO    ] 200
[2026-08-31 18:36:10,031.031 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:36:10,076.076 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:36:10,179.179 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:36:10,181.181 INFO    ] No camera update needed
[2026-08-31 18:36:10,183.183 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:36:10,185.185 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:36:10,191.191 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:36:10,195.195 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:36:12,237.237 INFO    ] ================================================
[2026-08-31 18:36:12,253.253 INFO    ] Launching Daemon at Mon Aug 31 18:36:12 IST 2026
[2026-08-31 18:36:12,263.263 INFO    ] ================================================
[2026-08-31 18:36:12,850.850 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:36:12
[2026-08-31 18:36:13,453.453 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:36:13,714.714 INFO    ] Initializing speech engine...
[2026-08-31 18:36:13,729.729 INFO    ] 2026-08-31 18:36:13
[2026-08-31 18:36:14,018.018 INFO    ] 2026-08-31 18:36:13
[2026-08-31 18:36:14,054.054 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:36:14,276.276 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:36:14,320.320 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:36:14,504.504 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:36:14,527.527 INFO    ] time= 31/08/2026 18:36:14
[2026-08-31 18:36:14,581.581 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:36:14,635.635 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:36:14,722.722 INFO    ] No existing commands found in stream
[2026-08-31 18:36:19,733.733 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:36:19,736.736 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-08-31 18:36:24,030.030 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 18:36:24,033.033 INFO    ] Checking for system updates...
[2026-08-31 18:36:24,072.072 INFO    ] 200
[2026-08-31 18:36:24,075.075 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:36:24,127.127 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:36:24,129.129 INFO    ] No update needed
[2026-08-31 18:36:24,132.132 INFO    ] Checking for camera pi updates...
[2026-08-31 18:36:24,169.169 INFO    ] 200
[2026-08-31 18:36:24,171.171 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:36:24,212.212 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:36:24,291.291 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:36:24,293.293 INFO    ] No camera update needed
[2026-08-31 18:36:24,295.295 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:36:24,298.298 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:36:24,303.303 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:36:24,308.308 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:36:26,350.350 INFO    ] ================================================
[2026-08-31 18:36:26,365.365 INFO    ] Launching Daemon at Mon Aug 31 18:36:26 IST 2026
[2026-08-31 18:36:26,376.376 INFO    ] ================================================
[2026-08-31 18:36:26,956.956 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:36:26
[2026-08-31 18:36:27,554.554 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:36:27,823.823 INFO    ] Initializing speech engine...
[2026-08-31 18:36:27,833.833 INFO    ] 2026-08-31 18:36:27
[2026-08-31 18:36:28,082.082 INFO    ] 2026-08-31 18:36:28
[2026-08-31 18:36:28,117.117 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:36:28,313.313 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:36:28,359.359 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:36:28,522.522 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:36:28,581.581 INFO    ] time= 31/08/2026 18:36:28
[2026-08-31 18:36:28,625.625 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:36:28,655.655 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:36:28,804.804 INFO    ] No existing commands found in stream
[2026-08-31 18:36:33,818.818 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:36:33,821.821 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-08-31 18:36:37,605.605 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 18:36:37,608.608 INFO    ] Checking for system updates...
[2026-08-31 18:36:37,646.646 INFO    ] 200
[2026-08-31 18:36:37,649.649 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:36:37,701.701 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:36:37,703.703 INFO    ] No update needed
[2026-08-31 18:36:37,706.706 INFO    ] Checking for camera pi updates...
[2026-08-31 18:36:37,739.739 INFO    ] 200
[2026-08-31 18:36:37,741.741 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:36:37,782.782 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:36:37,869.869 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:36:37,871.871 INFO    ] No camera update needed
[2026-08-31 18:36:37,876.876 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:36:37,879.879 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:36:37,884.884 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:36:37,890.890 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:36:39,931.931 INFO    ] ================================================
[2026-08-31 18:36:39,946.946 INFO    ] Launching Daemon at Mon Aug 31 18:36:39 IST 2026
[2026-08-31 18:36:39,957.957 INFO    ] ================================================
[2026-08-31 18:36:40,616.616 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:36:40
[2026-08-31 18:36:41,286.286 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:36:41,586.586 INFO    ] Initializing speech engine...
[2026-08-31 18:36:41,592.592 INFO    ] 2026-08-31 18:36:41
[2026-08-31 18:36:41,867.867 INFO    ] 2026-08-31 18:36:41
[2026-08-31 18:36:41,923.923 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:36:42,147.147 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:36:42,156.156 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:36:42,292.292 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:36:42,342.342 INFO    ] time= 31/08/2026 18:36:42
[2026-08-31 18:36:42,396.396 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:36:42,426.426 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:36:42,552.552 INFO    ] No existing commands found in stream
[2026-08-31 18:36:47,580.580 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:36:47,583.583 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-08-31 18:36:48,809.809 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 18:36:48,812.812 INFO    ] Checking for system updates...
[2026-08-31 18:36:48,853.853 INFO    ] 200
[2026-08-31 18:36:48,856.856 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:36:48,910.910 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:36:48,913.913 INFO    ] No update needed
[2026-08-31 18:36:48,915.915 INFO    ] Checking for camera pi updates...
[2026-08-31 18:36:48,950.950 INFO    ] 200
[2026-08-31 18:36:48,952.952 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:36:48,993.993 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:36:49,077.077 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:36:49,079.079 INFO    ] No camera update needed
[2026-08-31 18:36:49,082.082 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:36:49,084.084 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:36:49,089.089 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:36:49,094.094 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:36:51,135.135 INFO    ] ================================================
[2026-08-31 18:36:51,150.150 INFO    ] Launching Daemon at Mon Aug 31 18:36:51 IST 2026
[2026-08-31 18:36:51,161.161 INFO    ] ================================================
[2026-08-31 18:36:51,744.744 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:36:51
[2026-08-31 18:36:52,339.339 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:36:52,615.615 INFO    ] Initializing speech engine...
[2026-08-31 18:36:52,622.622 INFO    ] 2026-08-31 18:36:52
[2026-08-31 18:36:52,881.881 INFO    ] 2026-08-31 18:36:52
[2026-08-31 18:36:52,912.912 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:36:53,103.103 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:36:53,161.161 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:36:53,367.367 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:36:53,423.423 INFO    ] time= 31/08/2026 18:36:53
[2026-08-31 18:36:53,430.430 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:36:53,448.448 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:36:53,575.575 INFO    ] No existing commands found in stream
[2026-08-31 18:36:58,590.590 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:36:58,592.592 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-08-31 18:37:02,428.428 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 18:37:02,431.431 INFO    ] Checking for system updates...
[2026-08-31 18:37:02,472.472 INFO    ] 200
[2026-08-31 18:37:02,475.475 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:37:02,556.556 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:37:02,559.559 INFO    ] No update needed
[2026-08-31 18:37:02,563.563 INFO    ] Checking for camera pi updates...
[2026-08-31 18:37:02,607.607 INFO    ] 200
[2026-08-31 18:37:02,611.611 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:37:02,672.672 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:37:02,757.757 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:37:02,759.759 INFO    ] No camera update needed
[2026-08-31 18:37:02,762.762 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:37:02,764.764 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:37:02,771.771 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:37:02,780.780 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:37:04,823.823 INFO    ] ================================================
[2026-08-31 18:37:04,840.840 INFO    ] Launching Daemon at Mon Aug 31 18:37:04 IST 2026
[2026-08-31 18:37:04,851.851 INFO    ] ================================================
[2026-08-31 18:37:05,433.433 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:37:05
[2026-08-31 18:37:06,039.039 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:37:06,374.374 INFO    ] Initializing speech engine...
[2026-08-31 18:37:06,387.387 INFO    ] 2026-08-31 18:37:06
[2026-08-31 18:37:06,650.650 INFO    ] 2026-08-31 18:37:06
[2026-08-31 18:37:06,693.693 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:37:06,961.961 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:37:06,983.983 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:37:07,181.181 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:37:07,196.196 INFO    ] time= 31/08/2026 18:37:07
[2026-08-31 18:37:07,205.205 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:37:07,231.231 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:37:07,340.340 INFO    ] No existing commands found in stream
[2026-08-31 18:37:12,357.357 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:37:12,360.360 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-08-31 18:37:13,035.035 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 18:37:13,038.038 INFO    ] Checking for system updates...
[2026-08-31 18:37:13,085.085 INFO    ] 200
[2026-08-31 18:37:13,087.087 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:37:13,139.139 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:37:13,142.142 INFO    ] No update needed
[2026-08-31 18:37:13,144.144 INFO    ] Checking for camera pi updates...
[2026-08-31 18:37:13,183.183 INFO    ] 200
[2026-08-31 18:37:13,185.185 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:37:13,230.230 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:37:13,300.300 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:37:13,303.303 INFO    ] No camera update needed
[2026-08-31 18:37:13,305.305 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:37:13,307.307 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:37:13,313.313 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:37:13,318.318 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:37:15,359.359 INFO    ] ================================================
[2026-08-31 18:37:15,374.374 INFO    ] Launching Daemon at Mon Aug 31 18:37:15 IST 2026
[2026-08-31 18:37:15,385.385 INFO    ] ================================================
[2026-08-31 18:37:15,963.963 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:37:15
[2026-08-31 18:37:16,561.561 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:37:16,836.836 INFO    ] Initializing speech engine...
[2026-08-31 18:37:16,852.852 INFO    ] 2026-08-31 18:37:16
[2026-08-31 18:37:17,130.130 INFO    ] 2026-08-31 18:37:17
[2026-08-31 18:37:17,165.165 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:37:17,395.395 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:37:17,434.434 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:37:17,685.685 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:37:17,729.729 INFO    ] time= 31/08/2026 18:37:17
[2026-08-31 18:37:17,767.767 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:37:17,773.773 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:37:17,904.904 INFO    ] No existing commands found in stream
[2026-08-31 18:37:21,138.138 INFO    ] Received new command: ID=1788181641106-0
[2026-08-31 18:37:21,140.140 INFO    ] process_and_cleanup_command: msg_id=1788181641106-0
[2026-08-31 18:37:21,143.143 INFO    ] is_command_expired: timestamp=2026-08-31T13:07:18.319Z, expiry=30s
[2026-08-31 18:37:21,222.222 INFO    ] Command removed from stream: 1788181641106-0. returning for processing...
[2026-08-31 18:37:21,225.225 INFO    ] ***** get_valid_command
[2026-08-31 18:37:21,227.227 INFO    ] {'data': '{"request_id":"start-order-1788181638319-f8mgypeuk","orderId":"TM08202202260831183453548","is_vending":false}', 'command': 'start-order', 'timestamp': '2026-08-31T13:07:18.319Z', 'timeout': '10', 'source': 'webapp'}
[2026-08-31 18:37:21,230.230 INFO    ] ***** Parsed command data: {'orderId': 'TM08202202260831183453548', 'request_id': 'start-order-1788181638319-f8mgypeuk', 'is_vending': False}
[2026-08-31 18:37:21,232.232 INFO    ] Handling start order...
[2026-08-31 18:37:21,235.235 INFO    ] handle_start_order_command
[2026-08-31 18:37:21,240.240 INFO    ] _send_start_order_success: request_id=start-order-1788181638319-f8mgypeuk, order_id=TM08202202260831183453548
[2026-08-31 18:37:21,243.243 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM08202202
[2026-08-31 18:37:21,305.305 INFO    ] [_send_start_order_success] Message added to stream with ID: 1788181641277-0
[2026-08-31 18:37:21,308.308 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-08-31 18:37:21,310.310 INFO    ] Checking for system updates...
[2026-08-31 18:37:21,352.352 INFO    ] 200
[2026-08-31 18:37:21,354.354 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:37:21,414.414 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:37:21,416.416 INFO    ] No update needed
[2026-08-31 18:37:21,419.419 INFO    ] Checking for camera pi updates...
[2026-08-31 18:37:21,452.452 INFO    ] 200
[2026-08-31 18:37:21,455.455 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:37:21,499.499 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:37:21,583.583 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:37:21,585.585 INFO    ] No camera update needed
[2026-08-31 18:37:21,588.588 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:37:21,590.590 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:37:21,595.595 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:37:21,600.600 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:37:23,640.640 INFO    ] ================================================
[2026-08-31 18:37:23,655.655 INFO    ] Launching Daemon at Mon Aug 31 18:37:23 IST 2026
[2026-08-31 18:37:23,666.666 INFO    ] ================================================
[2026-08-31 18:37:24,244.244 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:37:24
[2026-08-31 18:37:24,839.839 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:37:25,094.094 INFO    ] Initializing speech engine...
[2026-08-31 18:37:25,108.108 INFO    ] 2026-08-31 18:37:25
[2026-08-31 18:37:25,394.394 INFO    ] 2026-08-31 18:37:25
[2026-08-31 18:37:25,432.432 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:37:25,631.631 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:37:25,645.645 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:37:25,806.806 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:37:25,815.815 INFO    ] time= 31/08/2026 18:37:25
[2026-08-31 18:37:25,822.822 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:37:25,870.870 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:37:26,030.030 INFO    ] Found 1 existing command(s) in stream
[2026-08-31 18:37:26,044.044 INFO    ] Checking historical command: ID=1788181641277-0
[2026-08-31 18:37:26,050.050 INFO    ] process_and_cleanup_command: msg_id=1788181641277-0
[2026-08-31 18:37:26,071.071 INFO    ] is_command_expired: timestamp=2026-08-31T13:07:21.241854Z, expiry=30s
[2026-08-31 18:37:26,230.230 INFO    ] Command removed from stream: 1788181641277-0. returning for processing...
[2026-08-31 18:37:26,265.265 INFO    ] ***** get_valid_command
[2026-08-31 18:37:26,309.309 INFO    ] {'imei': 'TM08202202', 'metadata_order_id': 'TM08202202260831183453548', 'metadata_request_id': 'start-order-1788181638319-f8mgypeuk', 'status': 'success', 'message': 'start-order success', 'message_type': 'command_response', 'timestamp': '2026-08-31T13:07:21.241854Z'}
[2026-08-31 18:37:26,374.374 INFO    ] Processed historical messages, no valid command available...
[2026-08-31 18:37:31,385.385 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:37:31,388.388 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-08-31 18:37:33,849.849 INFO    ] {'video_url': 'N/A', 'balance_gateway': None, 'delivery_address_id': None, 'affiliate_name': '', 'response': {'status': True, 'data': 'order updated', 'msg': 'order updated'}, 'pre_auth_gateway': 'razor_pay', 'weight_based_response': None, 'sku_json': '0-0', 'last_command_response': None, 'short_order_expiry': None, 'previous_pending': '0.0', 'anomaly': '0', 'access_code': '49639155', 'amount_received': '20.0', 'order_id': 'TM08202202260831183453548', 'server_response': '', 'command_request_data': None, 'vm_id': '1660749537502', 'all_command_response': None, 'pre_auth_amount': '20.0', 'order_amount': '0', 'delivery_fee': '0', 'invoice_balance': '0.0', 'user_id': '9964616453', 'short_order_id': None, 'modified_at': '2026-08-31 18:37:30', 'environment': '9', 'proposed_sku_json': '{"res":true,"skus":[{"sku_total":20,"image_url":"https://images.tinymart.in/product/185993-3509.webp","door_id":"2","qty":1,"name":"NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g","mrp":"20","unit_price":20,"skuid":"185993","tray_id":"43","offer_id":"","offer_desc":""}],"bill_amount":20,"orderId":"TM08202202260831183453548","total_amount":20,"cart_offer_desc":"","imei":"TM08202202","userId":"9964616453"}', 'last_modified_at': '2026-08-31 18:36:07', 'created_at': '2026-08-31 18:37:30', 'invoice_final_settled_amount': '0.0', 'partner_order_details': None, 'command_todo': None, 'ex_order_id': None, 'type_of_order': 'order', 'delivery_details_json': None, 'status': 'active', 'server_status': 'init-process', 'command_for': None, 'operator_sms_sent': '0', 'wallet_txn_ids_json': '{"pre_credit":"6060124014804028291","pre_debit":"3404798366326345714"}', 'receipt_id': None}
[2026-08-31 18:37:33,863.863 INFO    ] Checking for system updates...
[2026-08-31 18:37:33,902.902 INFO    ] 200
[2026-08-31 18:37:33,904.904 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:37:33,958.958 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:37:33,961.961 INFO    ] No update needed
[2026-08-31 18:37:33,963.963 INFO    ] Checking for camera pi updates...
[2026-08-31 18:37:34,001.001 INFO    ] 200
[2026-08-31 18:37:34,003.003 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:37:34,048.048 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:37:34,131.131 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:37:34,134.134 INFO    ] No camera update needed
[2026-08-31 18:37:34,136.136 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:37:34,139.139 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:37:34,144.144 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:37:34,149.149 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:37:36,193.193 INFO    ] ================================================
[2026-08-31 18:37:36,209.209 INFO    ] Launching Daemon at Mon Aug 31 18:37:36 IST 2026
[2026-08-31 18:37:36,220.220 INFO    ] ================================================
[2026-08-31 18:37:36,800.800 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:37:36
[2026-08-31 18:37:37,401.401 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:37:37,678.678 INFO    ] Initializing speech engine...
[2026-08-31 18:37:37,684.684 INFO    ] 2026-08-31 18:37:37
[2026-08-31 18:37:37,945.945 INFO    ] 2026-08-31 18:37:37
[2026-08-31 18:37:37,975.975 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:37:38,165.165 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:37:38,212.212 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:37:38,466.466 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:37:38,490.490 INFO    ] time= 31/08/2026 18:37:38
[2026-08-31 18:37:38,509.509 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:37:38,515.515 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:37:38,633.633 INFO    ] Found 1 existing command(s) in stream
[2026-08-31 18:37:38,677.677 INFO    ] Checking historical command: ID=1788181651657-0
[2026-08-31 18:37:38,721.721 INFO    ] process_and_cleanup_command: msg_id=1788181651657-0
[2026-08-31 18:37:38,759.759 INFO    ] is_command_expired: timestamp=2026-08-31T13:07:30.126Z, expiry=30s
[2026-08-31 18:37:38,935.935 INFO    ] Command removed from stream: 1788181651657-0. returning for processing...
[2026-08-31 18:37:38,978.978 INFO    ] ***** get_valid_command
[2026-08-31 18:37:38,988.988 INFO    ] {'data': '{"request_id":"process-order-1788181650126-xgcd3ekk1","orderId":"TM08202202260831183453548","is_vending":false,"accessCode":"49639155"}', 'timestamp': '2026-08-31T13:07:30.126Z', 'command': 'process-order', 'source': 'webapp', 'timeout': '60'}
[2026-08-31 18:37:38,991.991 INFO    ] ***** Parsed command data: {'is_vending': False, 'orderId': 'TM08202202260831183453548', 'accessCode': '49639155', 'request_id': 'process-order-1788181650126-xgcd3ekk1'}
[2026-08-31 18:37:38,994.994 INFO    ] Handling process order...
[2026-08-31 18:37:38,997.997 INFO    ] Processing process-order command...
[2026-08-31 18:37:39,042.042 INFO    ] 🔍 Lock file Order ID: TM08202202260831183453548, TS: 2026-08-31 18:37:21
[2026-08-31 18:37:39,136.136 INFO    ] ✅ Order lock valid for TM08202202260831183453548
[2026-08-31 18:37:39,142.142 INFO    ] Received access code in process-order, skipping PHP API call
[2026-08-31 18:37:39,161.161 INFO    ] processing access code 49639155 for order TM08202202260831183453548
[2026-08-31 18:37:39,196.196 INFO    ] 🔍 Lock file Order ID: TM08202202260831183453548, TS: 2026-08-31 18:37:21
[2026-08-31 18:37:39,200.200 INFO    ] ✅ Order lock valid for TM08202202260831183453548
[2026-08-31 18:37:39,249.249 INFO    ] 2026-08-31 18:37:39
[2026-08-31 18:37:39,297.297 INFO    ] 200
[2026-08-31 18:37:39,302.302 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:37:39,305.305 INFO    ] 49639155
[2026-08-31 18:37:39,308.308 INFO    ] 2026-08-31 18:37:39
[2026-08-31 18:37:39,316.316 INFO    ] session id :277432640
[2026-08-31 18:37:39,382.382 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=49639155&imei=TM08202202&session_id=277432640
[2026-08-31 18:37:42,919.919 INFO    ] 200
[2026-08-31 18:37:42,922.922 INFO    ] {"msg": "Order Data", "data": {"access_code": "49639155", "invoice_bill": "20.0", "mobile": "9964616453", "order_id": "TM08202202260831183453548", "bill_amount": "20.0", "proposed_sku_json": [{"qty": 1, "offer_desc": "", "image_url": "https://images.tinymart.in/product/185993-3509.webp", "sku_total": 20, "mrp": "20", "tray_id": "43", "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g", "offer_id": "", "skuid": "185993", "unit_price": 20, "door_id": "2"}]}, "status": true, "rstatus": true}
[2026-08-31 18:37:42,925.925 INFO    ] 20
[2026-08-31 18:37:42,928.928 INFO    ] TM08202202260831183453548
[2026-08-31 18:37:42,930.930 INFO    ] 9964616453
[2026-08-31 18:37:42,933.933 INFO    ] 2026-08-31 18:37:42
[2026-08-31 18:37:42,936.936 INFO    ] Door Opening for user mobile ending with  six four five three 
[2026-08-31 18:37:42,938.938 INFO    ] Door Opening for user mobile ending with  six four five three 
[2026-08-31 18:37:42,941.941 INFO    ] 9b275bca232d14411170c524464db572
[2026-08-31 18:37:42,943.943 INFO    ] 2026-08-31 18:37:42
[2026-08-31 18:37:42,946.946 INFO    ] playing audio file
[2026-08-31 18:37:42,963.963 INFO    ] 2026-08-31 18:37:42
[2026-08-31 18:37:42,965.965 INFO    ] 2026-08-31 18:37:42
[2026-08-31 18:37:42,969.969 INFO    ] publish_status: order_id=TM08202202260831183453548
[2026-08-31 18:37:42,972.972 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831183453548
[2026-08-31 18:37:43,025.025 INFO    ] [publish_status] Message added to stream with ID: 1788181662994-0
[2026-08-31 18:37:43,028.028 INFO    ] Published to order:TM08202202260831183453548: {'server_response': '{"data": {"invoice_bill": "20.0", "bill_amount": "20.0", "access_code": "49639155", "order_id": "TM08202202260831183453548", "proposed_sku_json": [{"image_url": "https://images.tinymart.in/product/185993-3509.webp", "sku_total": 20, "skuid": "185993", "mrp": "20", "tray_id": "43", "door_id": "2", "unit_price": 20, "qty": 1, "offer_desc": "", "offer_id": "", "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}], "mobile": "9964616453"}, "status": true, "msg": "Order Data", "rstatus": true}', 'server_status': 'order-started', 'order_id': 'TM08202202260831183453548', 'timestamp': '2026-08-31T13:07:42.967154Z'} (ID: 1788181662994-0)
[2026-08-31 18:37:43,664.664 INFO    ] {'server_response': {'data': {'invoice_bill': '20.0', 'bill_amount': '20.0', 'access_code': '49639155', 'order_id': 'TM08202202260831183453548', 'proposed_sku_json': [{'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'sku_total': 20, 'skuid': '185993', 'mrp': '20', 'tray_id': '43', 'door_id': '2', 'unit_price': 20, 'qty': 1, 'offer_desc': '', 'offer_id': '', 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g'}], 'mobile': '9964616453'}, 'status': True, 'msg': 'Order Data', 'rstatus': True}, 'server_status': 'order-started', 'order_id': 'TM08202202260831183453548'}
[2026-08-31 18:37:43,666.666 INFO    ] 200
[2026-08-31 18:37:43,669.669 INFO    ] {"data":{"server_response":{"data":{"invoice_bill":"20.0","bill_amount":"20.0","access_code":"49639155","order_id":"TM08202202260831183453548","proposed_sku_json":[{"image_url":"https:\/\/images.tinymart.in\/product\/185993-3509.webp","sku_total":20,"skuid":"185993","mrp":"20","tray_id":"43","door_id":"2","unit_price":20,"qty":1,"offer_desc":"","offer_id":"","name":"NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}],"mobile":"9964616453"},"status":true,"msg":"Order Data","rstatus":true},"server_status":"order-started","order_id":"TM08202202260831183453548"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 18:37:43,672.672 INFO    ] {'data': {'server_response': {'data': {'invoice_bill': '20.0', 'bill_amount': '20.0', 'access_code': '49639155', 'order_id': 'TM08202202260831183453548', 'proposed_sku_json': [{'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'sku_total': 20, 'skuid': '185993', 'qty': 1, 'tray_id': '43', 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'unit_price': 20, 'mrp': '20', 'door_id': '2', 'offer_id': '', 'offer_desc': ''}], 'mobile': '9964616453'}, 'status': True, 'msg': 'Order Data', 'rstatus': True}, 'server_status': 'order-started', 'order_id': 'TM08202202260831183453548'}, 'response': {'data': 'order updated successfully', 'status': True, 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS'}}
[2026-08-31 18:37:43,674.674 INFO    ] 2026-08-31 18:37:43
[2026-08-31 18:37:43,722.722 INFO    ] 200
[2026-08-31 18:37:43,725.725 INFO    ] True
[2026-08-31 18:37:43,889.889 INFO    ] 200
[2026-08-31 18:37:43,892.892 INFO    ] {"SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "voiceNote": "Please Wait", "SectionMain": {"Header": "Processing Order"}, "SectionStatus": {"Note": "", "UI_Header": "", "SubHeader": "Please wait while we process your order", "Header": " Your order is under process  "}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 18:37:43,894.894 INFO    ] {'SectionMain': {'Header': 'Processing Order'}, 'error': {'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress', 'code': 20001}, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'status': 'False', 'rstatus': False, 'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'UI_Header': '', 'Note': '', 'Header': ' Your order is under process  '}, 'voiceNote': 'Please Wait'}
[2026-08-31 18:37:43,897.897 INFO    ] *** process_order ***
[2026-08-31 18:37:45,099.099 INFO    ] 200
[2026-08-31 18:37:45,101.101 INFO    ] {"SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "voiceNote": "Please Wait", "SectionMain": {"Header": "Processing Order"}, "SectionStatus": {"Note": "", "UI_Header": "", "SubHeader": "Please wait while we process your order", "Header": " Your order is under process  "}, "delay": 0, "status": "True", "rstatus": true}
[2026-08-31 18:37:45,104.104 INFO    ] {'SectionMain': {'Header': 'Processing Order'}, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'status': 'True', 'delay': 0, 'rstatus': True, 'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'UI_Header': '', 'Note': '', 'Header': ' Your order is under process  '}, 'voiceNote': 'Please Wait'}
[2026-08-31 18:37:45,106.106 INFO    ] *** process_order ***
[2026-08-31 18:37:45,109.109 INFO    ] publish_status: order_id=TM08202202260831183453548
[2026-08-31 18:37:45,111.111 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831183453548
[2026-08-31 18:37:45,215.215 INFO    ] [publish_status] Message added to stream with ID: 1788181665178-0
[2026-08-31 18:37:45,218.218 INFO    ] Published to order:TM08202202260831183453548: {'server_response': '{"SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "status": "True", "delay": 0, "voiceNote": "Door is open...", "SectionStatus": {"UI_Header": "", "SubHeader": "You can pull the door now.", "Note": "", "Header": " Your order is under process  "}, "rstatus": true}', 'server_status': 'doorOpened', 'order_id': 'TM08202202260831183453548'} (ID: 1788181665178-0)
[2026-08-31 18:37:46,265.265 INFO    ] 2026-08-31 18:37:46
[2026-08-31 18:37:46,269.269 INFO    ] publish_status: order_id=TM08202202260831183453548
[2026-08-31 18:37:46,271.271 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831183453548
[2026-08-31 18:37:46,355.355 INFO    ] [publish_status] Message added to stream with ID: 1788181666320-0
[2026-08-31 18:37:46,358.358 INFO    ] Published to order:TM08202202260831183453548: {'server_response': '{"SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "status": "True", "delay": 0, "rstatus": true, "SectionStatus": {"SubHeader": "Please wait while we process your order", "UI_Header": "", "Note": "", "Header": " Your order is under process  "}, "voiceNote": "Please Wait"}', 'server_status': 'processOrder', 'order_id': 'TM08202202260831183453548', 'timestamp': '2026-08-31T13:07:46.267110Z'} (ID: 1788181666320-0)
[2026-08-31 18:37:46,540.540 INFO    ] {'server_response': {'SectionMain': {'Header': 'Processing Order'}, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'status': 'True', 'delay': 0, 'rstatus': True, 'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'UI_Header': '', 'Note': '', 'Header': ' Your order is under process  '}, 'voiceNote': 'Please Wait'}, 'server_status': 'processOrder', 'order_id': 'TM08202202260831183453548'}
[2026-08-31 18:37:46,542.542 INFO    ] 200
[2026-08-31 18:37:46,545.545 INFO    ] {"data":{"server_response":{"SectionMain":{"Header":"Processing Order"},"SectionSKU":{"skus":[],"Header":"Thank you for bearing with us :)"},"status":"true","delay":0,"rstatus":true,"SectionStatus":{"SubHeader":"Please wait while we process your order","UI_Header":"","Note":"","Header":" Your order is under process  "},"voiceNote":"Please Wait"},"server_status":"processOrder","order_id":"TM08202202260831183453548"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 18:37:46,548.548 INFO    ] {'data': {'server_response': {'SectionMain': {'Header': 'Processing Order'}, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'status': 'true', 'delay': 0, 'voiceNote': 'Please Wait', 'SectionStatus': {'Note': '', 'UI_Header': '', 'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  '}, 'rstatus': True}, 'server_status': 'processOrder', 'order_id': 'TM08202202260831183453548'}, 'response': {'data': 'order updated successfully', 'status': True, 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS'}}
[2026-08-31 18:37:46,551.551 INFO    ] 2026-08-31 18:37:46
[2026-08-31 18:37:46,554.554 INFO    ] None
[2026-08-31 18:37:46,556.556 INFO    ] Opening Door now
[2026-08-31 18:37:46,559.559 INFO    ] Opening Door now
[2026-08-31 18:37:46,562.562 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-08-31 18:37:46,565.565 INFO    ] 2026-08-31 18:37:46
[2026-08-31 18:37:46,567.567 INFO    ] playing audio file
[2026-08-31 18:37:46,584.584 INFO    ] 2026-08-31 18:37:46
[2026-08-31 18:37:46,588.588 INFO    ] 2026-08-31 18:37:46
[2026-08-31 18:37:49,659.659 INFO    ] 200
[2026-08-31 18:37:49,662.662 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}], "Header": "Pick the below items from the door"}, "voiceNote": "Door 2 is open now", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 18:37:49,669.669 INFO    ] {'SectionMain': {'Header': 'Door Open'}, 'error': {'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress', 'code': 20001}, 'SectionSKU': {'skus': [{'qty': 1, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g'}], 'Header': 'Pick the below items from the door'}, 'status': 'False', 'rstatus': False, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 2'}, 'voiceNote': 'Door 2 is open now'}
[2026-08-31 18:37:52,746.746 INFO    ] 200
[2026-08-31 18:37:52,749.749 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 18:37:52,752.752 INFO    ] {'SectionMain': {'Header': 'Door Open'}, 'error': {'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress', 'code': 20001}, 'SectionSKU': {'skus': [{'qty': 1, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g'}], 'Header': 'Pick the below items from the door'}, 'status': 'False', 'rstatus': False, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 2'}, 'voiceNote': 'Please close door 2'}
[2026-08-31 18:37:55,854.854 INFO    ] 200
[2026-08-31 18:37:55,858.858 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 18:37:55,862.862 INFO    ] Please close door 2
[2026-08-31 18:37:55,865.865 INFO    ] Please close door 2
[2026-08-31 18:37:55,868.868 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-08-31 18:37:55,872.872 INFO    ] 2026-08-31 18:37:55
[2026-08-31 18:37:55,875.875 INFO    ] playing audio file
[2026-08-31 18:37:55,893.893 INFO    ] 2026-08-31 18:37:55
[2026-08-31 18:37:55,898.898 INFO    ] publish_status: order_id=TM08202202260831183453548
[2026-08-31 18:37:55,901.901 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831183453548
[2026-08-31 18:37:55,985.985 INFO    ] [publish_status] Message added to stream with ID: 1788181675947-0
[2026-08-31 18:37:55,988.988 INFO    ] Published to order:TM08202202260831183453548: {'server_response': '{"SectionMain": {"Header": "Door Open"}, "error": {"tmessage": "In Progress", "data": {}, "umessage": "In Progress", "code": 20001}, "SectionSKU": {"skus": [{"qty": 1, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}], "Header": "Pick the below items from the door"}, "status": "False", "rstatus": false, "SectionStatus": {"SubHeader": "Please Pick the Products and close the door", "UI_Header": "DOOR 2\\nIS \\nOPEN \\nNOW", "Note": "Please Close the door after picking up products", "Header": "Please Close Door 2"}, "voiceNote": "Please close door 2"}', 'server_status': 'OrderStatus', 'order_id': 'TM08202202260831183453548', 'timestamp': '2026-08-31T13:07:55.895447Z'} (ID: 1788181675947-0)
[2026-08-31 18:37:56,580.580 INFO    ] {'server_response': {'SectionMain': {'Header': 'Door Open'}, 'error': {'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress', 'code': 20001}, 'SectionSKU': {'skus': [{'qty': 1, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g'}], 'Header': 'Pick the below items from the door'}, 'status': 'False', 'rstatus': False, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 2'}, 'voiceNote': 'Please close door 2'}, 'server_status': 'OrderStatus', 'order_id': 'TM08202202260831183453548'}
[2026-08-31 18:37:56,582.582 INFO    ] 200
[2026-08-31 18:37:56,584.584 INFO    ] {"data":{"server_response":{"SectionMain":{"Header":"Door Open"},"error":{"tmessage":"In Progress","data":[],"umessage":"In Progress","code":20001},"SectionSKU":{"skus":[{"qty":1,"name":"NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}],"Header":"Pick the below items from the door"},"status":"false","rstatus":false,"SectionStatus":{"SubHeader":"Please Pick the Products and close the door","UI_Header":"DOOR 2\nIS \nOPEN \nNOW","Note":"Please Close the door after picking up products","Header":"Please Close Door 2"},"voiceNote":"Please close door 2"},"server_status":"OrderStatus","order_id":"TM08202202260831183453548"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 18:37:56,587.587 INFO    ] {'data': {'server_response': {'SectionMain': {'Header': 'Door Open'}, 'error': {'tmessage': 'In Progress', 'data': [], 'umessage': 'In Progress', 'code': 20001}, 'SectionSKU': {'skus': [{'qty': 1, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g'}], 'Header': 'Pick the below items from the door'}, 'status': 'false', 'voiceNote': 'Please close door 2', 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2'}, 'rstatus': False}, 'server_status': 'OrderStatus', 'order_id': 'TM08202202260831183453548'}, 'response': {'data': 'order updated successfully', 'status': True, 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS'}}
[2026-08-31 18:37:56,590.590 INFO    ] {'SectionMain': {'Header': 'Door Open'}, 'error': {'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress', 'code': 20001}, 'SectionSKU': {'skus': [{'qty': 1, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g'}], 'Header': 'Pick the below items from the door'}, 'status': 'False', 'rstatus': False, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 2'}, 'voiceNote': 'Please close door 2'}
[2026-08-31 18:37:59,661.661 INFO    ] 200
[2026-08-31 18:37:59,664.664 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 18:37:59,667.667 INFO    ] {'SectionMain': {'Header': 'Door Open'}, 'error': {'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress', 'code': 20001}, 'SectionSKU': {'skus': [{'qty': 1, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g'}], 'Header': 'Pick the below items from the door'}, 'status': 'False', 'rstatus': False, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 2'}, 'voiceNote': 'Please close door 2'}
[2026-08-31 18:38:02,729.729 INFO    ] 200
[2026-08-31 18:38:02,732.732 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 18:38:02,734.734 INFO    ] {'SectionMain': {'Header': 'Door Open'}, 'error': {'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress', 'code': 20001}, 'SectionSKU': {'skus': [{'qty': 1, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g'}], 'Header': 'Pick the below items from the door'}, 'status': 'False', 'rstatus': False, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 2'}, 'voiceNote': 'Please close door 2'}
[2026-08-31 18:38:05,801.801 INFO    ] 200
[2026-08-31 18:38:05,804.804 INFO    ] {"SectionSKU": {"skus": [], "Header": "If you like us, tell others... else tell us"}, "voiceNote": "Transaction Completed", "SectionMain": {"Header": "Door Closed"}, "SectionStatus": {"Note": "If any due amount, clear at https://go.tinymart.in", "UI_Header": "", "SubHeader": "Please wait for invoice to generate", "Header": " Order is complete "}, "delay": 100, "status": "True", "rstatus": true}
[2026-08-31 18:38:05,808.808 INFO    ] publish_status: order_id=TM08202202260831183453548
[2026-08-31 18:38:05,810.810 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831183453548
[2026-08-31 18:38:05,895.895 INFO    ] [publish_status] Message added to stream with ID: 1788181685864-0
[2026-08-31 18:38:05,898.898 INFO    ] Published to order:TM08202202260831183453548: {'server_response': '{"SectionMain": {"Header": "Door Closed"}, "SectionSKU": {"skus": [], "Header": "If you like us, tell others... else tell us"}, "status": "True", "delay": 100, "rstatus": true, "SectionStatus": {"SubHeader": "Please wait for invoice to generate", "UI_Header": "", "Note": "If any due amount, clear at https://go.tinymart.in", "Header": " Order is complete "}, "voiceNote": "Transaction Completed"}', 'server_status': 'OrderStatus', 'order_id': 'TM08202202260831183453548', 'timestamp': '2026-08-31T13:08:05.806135Z'} (ID: 1788181685864-0)
[2026-08-31 18:38:06,514.514 INFO    ] {'server_response': {'SectionMain': {'Header': 'Door Closed'}, 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'status': 'True', 'delay': 100, 'rstatus': True, 'SectionStatus': {'SubHeader': 'Please wait for invoice to generate', 'UI_Header': '', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'Header': ' Order is complete '}, 'voiceNote': 'Transaction Completed'}, 'server_status': 'OrderStatus', 'order_id': 'TM08202202260831183453548'}
[2026-08-31 18:38:06,516.516 INFO    ] 200
[2026-08-31 18:38:06,519.519 INFO    ] {"data":{"server_response":{"SectionMain":{"Header":"Door Closed"},"SectionSKU":{"skus":[],"Header":"If you like us, tell others... else tell us"},"status":"true","delay":100,"rstatus":true,"SectionStatus":{"SubHeader":"Please wait for invoice to generate","UI_Header":"","Note":"If any due amount, clear at https:\/\/go.tinymart.in","Header":" Order is complete "},"voiceNote":"Transaction Completed"},"server_status":"OrderStatus","order_id":"TM08202202260831183453548"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 18:38:06,522.522 INFO    ] {'data': {'server_response': {'SectionMain': {'Header': 'Door Closed'}, 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'status': 'true', 'delay': 100, 'voiceNote': 'Transaction Completed', 'SectionStatus': {'Note': 'If any due amount, clear at https://go.tinymart.in', 'UI_Header': '', 'SubHeader': 'Please wait for invoice to generate', 'Header': ' Order is complete '}, 'rstatus': True}, 'server_status': 'OrderStatus', 'order_id': 'TM08202202260831183453548'}, 'response': {'data': 'order updated successfully', 'status': True, 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS'}}
[2026-08-31 18:38:06,525.525 INFO    ] {'SectionMain': {'Header': 'Door Closed'}, 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'status': 'True', 'delay': 100, 'rstatus': True, 'SectionStatus': {'SubHeader': 'Please wait for invoice to generate', 'UI_Header': '', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'Header': ' Order is complete '}, 'voiceNote': 'Transaction Completed'}
[2026-08-31 18:38:06,528.528 INFO    ] 2026-08-31 18:38:06
[2026-08-31 18:38:06,530.530 INFO    ] Order Completed 
[2026-08-31 18:38:06,533.533 INFO    ] Order Completed 
[2026-08-31 18:38:06,536.536 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-08-31 18:38:06,538.538 INFO    ] 2026-08-31 18:38:06
[2026-08-31 18:38:06,541.541 INFO    ] playing audio file
[2026-08-31 18:38:06,558.558 INFO    ] 2026-08-31 18:38:06
[2026-08-31 18:38:06,561.561 INFO    ] {'SectionMain': {'Header': 'Door Closed'}, 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'status': 'True', 'delay': 100, 'rstatus': True, 'SectionStatus': {'SubHeader': 'Please wait for invoice to generate', 'UI_Header': '', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'Header': ' Order is complete '}, 'voiceNote': 'Transaction Completed'}
[2026-08-31 18:38:06,564.564 INFO    ] 2026-08-31 18:38:06
[2026-08-31 18:38:06,980.980 INFO    ] 200
[2026-08-31 18:38:06,983.983 INFO    ] {"skus": [{"qty": 1, "image_url": "https://images.tinymart.in/product/185993-3509.webp", "sku_total": 20.0, "mrp": "20", "tray_id": "43", "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice", "skuid": "185993", "unit_price": "20", "door_id": ""}], "anomaly": 0, "orderId": "TM08202202260831183453548", "res": "True", "logic": "WBL", "total_amount": 20.0, "rstatus": true}
[2026-08-31 18:38:06,989.989 INFO    ] {'anomaly': 0, 'res': 'True', 'skus': [{'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'sku_total': 20.0, 'skuid': '185993', 'mrp': '20', 'tray_id': '43', 'unit_price': '20', 'qty': 1, 'door_id': '', 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice'}], 'rstatus': True, 'total_amount': 20.0, 'orderId': 'TM08202202260831183453548', 'logic': 'WBL'}
[2026-08-31 18:38:06,992.992 INFO    ] {'anomaly': 0, 'res': 'True', 'skus': [{'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'sku_total': 20.0, 'skuid': '185993', 'mrp': '20', 'tray_id': '43', 'unit_price': '20', 'qty': 1, 'door_id': '', 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice'}], 'rstatus': True, 'total_amount': 20.0, 'orderId': 'TM08202202260831183453548', 'logic': 'WBL'}
[2026-08-31 18:38:06,994.994 INFO    ] 2026-08-31 18:38:06
[2026-08-31 18:38:06,997.997 INFO    ] 2026-08-31 18:38:06
[2026-08-31 18:38:07,000.000 INFO    ] 20
[2026-08-31 18:38:07,002.002 INFO    ] 2026-08-31 18:38:07
[2026-08-31 18:38:07,006.006 INFO    ] 2026-08-31 18:38:07
[2026-08-31 18:38:07,008.008 INFO    ]  Your Bill Amount is 20
[2026-08-31 18:38:07,011.011 INFO    ]  Your Bill Amount is 20
[2026-08-31 18:38:07,014.014 INFO    ] 69e7720cf62ffa67ab0522541575e508
[2026-08-31 18:38:07,017.017 INFO    ] 2026-08-31 18:38:07
[2026-08-31 18:38:07,020.020 INFO    ] playing audio file
[2026-08-31 18:38:07,037.037 INFO    ] 2026-08-31 18:38:07
[2026-08-31 18:38:07,041.041 INFO    ] 2026-08-31 18:38:07
[2026-08-31 18:38:07,044.044 INFO    ] publish_status: order_id=TM08202202260831183453548
[2026-08-31 18:38:07,047.047 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831183453548
[2026-08-31 18:38:07,109.109 INFO    ] [publish_status] Message added to stream with ID: 1788181687080-0
[2026-08-31 18:38:07,112.112 INFO    ] Published to order:TM08202202260831183453548: {'server_response': '{"anomaly": 0, "res": "True", "skus": [{"image_url": "https://images.tinymart.in/product/185993-3509.webp", "sku_total": 20.0, "skuid": "185993", "mrp": "20", "tray_id": "43", "unit_price": "20", "qty": 1, "door_id": "", "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice"}], "rstatus": true, "total_amount": 20.0, "orderId": "TM08202202260831183453548", "logic": "WBL"}', 'server_status': 'invoiceOrder', 'order_id': 'TM08202202260831183453548', 'timestamp': '2026-08-31T13:08:07.042542Z'} (ID: 1788181687080-0)
[2026-08-31 18:38:07,289.289 INFO    ] {'server_response': {'anomaly': 0, 'res': 'True', 'skus': [{'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'sku_total': 20.0, 'skuid': '185993', 'mrp': '20', 'tray_id': '43', 'unit_price': '20', 'qty': 1, 'door_id': '', 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice'}], 'rstatus': True, 'total_amount': 20.0, 'orderId': 'TM08202202260831183453548', 'logic': 'WBL'}, 'server_status': 'invoiceOrder', 'order_id': 'TM08202202260831183453548'}
[2026-08-31 18:38:07,291.291 INFO    ] 200
[2026-08-31 18:38:07,294.294 INFO    ] {"data":{"server_response":{"anomaly":0,"res":"true","skus":[{"image_url":"https:\/\/images.tinymart.in\/product\/185993-3509.webp","sku_total":20,"skuid":"185993","mrp":"20","tray_id":"43","unit_price":"20","qty":1,"door_id":"","name":"NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice"}],"rstatus":true,"total_amount":20,"orderId":"TM08202202260831183453548","logic":"WBL"},"server_status":"invoiceOrder","order_id":"TM08202202260831183453548"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 18:38:07,297.297 INFO    ] {'data': {'server_response': {'anomaly': 0, 'res': 'true', 'skus': [{'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'sku_total': 20, 'skuid': '185993', 'qty': 1, 'tray_id': '43', 'unit_price': '20', 'mrp': '20', 'door_id': '', 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice'}], 'logic': 'WBL', 'total_amount': 20, 'orderId': 'TM08202202260831183453548', 'rstatus': True}, 'server_status': 'invoiceOrder', 'order_id': 'TM08202202260831183453548'}, 'response': {'data': 'order updated successfully', 'status': True, 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS'}}
[2026-08-31 18:38:07,300.300 INFO    ] {'data': {'server_response': {'anomaly': 0, 'res': 'true', 'skus': [{'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'sku_total': 20, 'skuid': '185993', 'qty': 1, 'tray_id': '43', 'unit_price': '20', 'mrp': '20', 'door_id': '', 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice'}], 'logic': 'WBL', 'total_amount': 20, 'orderId': 'TM08202202260831183453548', 'rstatus': True}, 'server_status': 'invoiceOrder', 'order_id': 'TM08202202260831183453548'}, 'response': {'data': 'order updated successfully', 'status': True, 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS'}}
[2026-08-31 18:38:07,303.303 INFO    ] 2026-08-31 18:38:07
[2026-08-31 18:38:09,024.024 INFO    ] 200
[2026-08-31 18:38:09,027.027 INFO    ] {"tray_sync": [], "order_items": [], "orders_data": [], "orders_synced": [], "tray_synced": ["TM08202202260831183453548", "TM08202202260831183453548", "TM08202202260831183453548", "TM08202202260831183453548", "TM08202202260831183453548", "TM08202202260831183453548", "TM08202202260831183453548", "TM08202202260831183453548", "TM08202202260831183453548", "TM08202202260831183453548", "TM08202202260831183453548", "TM08202202260831183453548", "TM08202202260831183453548", "TM08202202260831183453548", "TM08202202260831183453548", "TM08202202260831183453548", "TM08202202260831183453548", "TM08202202260831183453548", "TM08202202260831183453548", "TM08202202260831183453548", "TM08202202260831183453548", "TM08202202260831183453548", "TM08202202260831183453548", "TM08202202260831183453548", "TM08202202260831183453548", "TM08202202260831183453548", "TM08202202260831183453548", "TM08202202260831183453548", "TM08202202260831183453548", "TM08202202260831183453548", "TM08202202260831183453548", "TM08202202260831183453548"], "orders_data_synced": [], "status": true, "order_items_synced": [], "orders": []}
[2026-08-31 18:38:09,030.030 INFO    ] 2026-08-31 18:38:09
[2026-08-31 18:38:09,163.163 INFO    ] 200
[2026-08-31 18:38:09,166.166 INFO    ] True
[2026-08-31 18:38:09,169.169 INFO    ] cleanup_start_order_file_after_processing: order_id=TM08202202260831183453548
[2026-08-31 18:38:09,173.173 INFO    ] start order file deleted
[2026-08-31 18:38:09,176.176 INFO    ] Checking for system updates...
[2026-08-31 18:38:09,213.213 INFO    ] 200
[2026-08-31 18:38:09,216.216 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:38:09,285.285 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:38:09,288.288 INFO    ] No update needed
[2026-08-31 18:38:09,291.291 INFO    ] Checking for camera pi updates...
[2026-08-31 18:38:09,335.335 INFO    ] 200
[2026-08-31 18:38:09,338.338 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:38:09,384.384 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:38:09,564.564 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:38:09,566.566 INFO    ] No camera update needed
[2026-08-31 18:38:09,569.569 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:38:09,572.572 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:38:09,579.579 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:38:09,585.585 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:38:11,630.630 INFO    ] ================================================
[2026-08-31 18:38:11,646.646 INFO    ] Launching Daemon at Mon Aug 31 18:38:11 IST 2026
[2026-08-31 18:38:11,658.658 INFO    ] ================================================
[2026-08-31 18:38:12,309.309 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:38:12
[2026-08-31 18:38:12,977.977 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:38:13,288.288 INFO    ] Initializing speech engine...
[2026-08-31 18:38:13,299.299 INFO    ] 2026-08-31 18:38:13
[2026-08-31 18:38:13,580.580 INFO    ] 2026-08-31 18:38:13
[2026-08-31 18:38:13,647.647 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:38:13,880.880 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:38:13,886.886 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:38:14,060.060 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:38:14,120.120 INFO    ] time= 31/08/2026 18:38:14
[2026-08-31 18:38:14,155.155 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:38:14,162.162 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:38:14,285.285 INFO    ] No existing commands found in stream
[2026-08-31 18:38:19,316.316 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:38:19,320.320 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-08-31 18:38:23,506.506 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 18:38:23,515.515 INFO    ] Checking for system updates...
[2026-08-31 18:38:23,556.556 INFO    ] 200
[2026-08-31 18:38:23,559.559 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:38:23,618.618 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:38:23,621.621 INFO    ] No update needed
[2026-08-31 18:38:23,623.623 INFO    ] Checking for camera pi updates...
[2026-08-31 18:38:23,657.657 INFO    ] 200
[2026-08-31 18:38:23,660.660 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:38:23,705.705 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:38:23,786.786 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:38:23,789.789 INFO    ] No camera update needed
[2026-08-31 18:38:23,791.791 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:38:23,793.793 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:38:23,799.799 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:38:23,804.804 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:38:25,843.843 INFO    ] ================================================
[2026-08-31 18:38:25,860.860 INFO    ] Launching Daemon at Mon Aug 31 18:38:25 IST 2026
[2026-08-31 18:38:25,871.871 INFO    ] ================================================
[2026-08-31 18:38:26,452.452 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:38:26
[2026-08-31 18:38:27,049.049 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:38:27,321.321 INFO    ] Initializing speech engine...
[2026-08-31 18:38:27,331.331 INFO    ] 2026-08-31 18:38:27
[2026-08-31 18:38:27,580.580 INFO    ] 2026-08-31 18:38:27
[2026-08-31 18:38:27,615.615 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:38:27,788.788 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:38:27,800.800 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:38:27,945.945 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:38:27,954.954 INFO    ] time= 31/08/2026 18:38:27
[2026-08-31 18:38:27,998.998 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:38:28,021.021 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:38:28,146.146 INFO    ] No existing commands found in stream
[2026-08-31 18:38:33,159.159 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:38:33,162.162 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-08-31 18:38:35,225.225 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 18:38:35,227.227 INFO    ] Checking for system updates...
[2026-08-31 18:38:35,268.268 INFO    ] 200
[2026-08-31 18:38:35,270.270 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:38:35,322.322 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:38:35,325.325 INFO    ] No update needed
[2026-08-31 18:38:35,327.327 INFO    ] Checking for camera pi updates...
[2026-08-31 18:38:35,364.364 INFO    ] 200
[2026-08-31 18:38:35,367.367 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:38:35,407.407 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:38:35,509.509 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:38:35,511.511 INFO    ] No camera update needed
[2026-08-31 18:38:35,514.514 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:38:35,516.516 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:38:35,521.521 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:38:35,526.526 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:38:37,570.570 INFO    ] ================================================
[2026-08-31 18:38:37,586.586 INFO    ] Launching Daemon at Mon Aug 31 18:38:37 IST 2026
[2026-08-31 18:38:37,597.597 INFO    ] ================================================
[2026-08-31 18:38:38,176.176 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:38:38
[2026-08-31 18:38:38,776.776 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:38:39,054.054 INFO    ] Initializing speech engine...
[2026-08-31 18:38:39,063.063 INFO    ] 2026-08-31 18:38:39
[2026-08-31 18:38:39,320.320 INFO    ] 2026-08-31 18:38:39
[2026-08-31 18:38:39,350.350 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:38:39,600.600 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:38:39,607.607 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:38:39,844.844 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:38:39,865.865 INFO    ] time= 31/08/2026 18:38:39
[2026-08-31 18:38:39,880.880 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:38:39,887.887 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:38:40,019.019 INFO    ] No existing commands found in stream
[2026-08-31 18:38:45,043.043 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:38:45,045.045 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-08-31 18:38:46,344.344 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 18:38:46,347.347 INFO    ] Checking for system updates...
[2026-08-31 18:38:46,384.384 INFO    ] 200
[2026-08-31 18:38:46,386.386 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:38:46,439.439 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:38:46,441.441 INFO    ] No update needed
[2026-08-31 18:38:46,443.443 INFO    ] Checking for camera pi updates...
[2026-08-31 18:38:46,482.482 INFO    ] 200
[2026-08-31 18:38:46,484.484 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:38:46,530.530 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:38:46,607.607 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:38:46,609.609 INFO    ] No camera update needed
[2026-08-31 18:38:46,612.612 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:38:46,614.614 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:38:46,619.619 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:38:46,624.624 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:38:48,663.663 INFO    ] ================================================
[2026-08-31 18:38:48,679.679 INFO    ] Launching Daemon at Mon Aug 31 18:38:48 IST 2026
[2026-08-31 18:38:48,689.689 INFO    ] ================================================
[2026-08-31 18:38:49,272.272 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:38:49
[2026-08-31 18:38:49,871.871 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:38:50,144.144 INFO    ] Initializing speech engine...
[2026-08-31 18:38:50,154.154 INFO    ] 2026-08-31 18:38:50
[2026-08-31 18:38:50,403.403 INFO    ] 2026-08-31 18:38:50
[2026-08-31 18:38:50,439.439 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:38:50,636.636 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:38:50,695.695 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:38:50,913.913 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:38:50,960.960 INFO    ] time= 31/08/2026 18:38:50
[2026-08-31 18:38:50,966.966 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:38:50,988.988 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:38:51,116.116 INFO    ] No existing commands found in stream
[2026-08-31 18:38:56,135.135 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:38:56,138.138 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-08-31 18:38:58,280.280 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 18:38:58,283.283 INFO    ] Checking for system updates...
[2026-08-31 18:38:58,320.320 INFO    ] 200
[2026-08-31 18:38:58,323.323 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:38:58,374.374 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:38:58,377.377 INFO    ] No update needed
[2026-08-31 18:38:58,379.379 INFO    ] Checking for camera pi updates...
[2026-08-31 18:38:58,417.417 INFO    ] 200
[2026-08-31 18:38:58,419.419 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:38:58,459.459 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:38:58,544.544 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:38:58,546.546 INFO    ] No camera update needed
[2026-08-31 18:38:58,549.549 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:38:58,551.551 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:38:58,557.557 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:38:58,562.562 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:39:00,602.602 INFO    ] ================================================
[2026-08-31 18:39:00,618.618 INFO    ] Launching Daemon at Mon Aug 31 18:39:00 IST 2026
[2026-08-31 18:39:00,629.629 INFO    ] ================================================
[2026-08-31 18:39:01,295.295 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:39:01
[2026-08-31 18:39:02,054.054 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:39:02,379.379 INFO    ] Initializing speech engine...
[2026-08-31 18:39:02,392.392 INFO    ] 2026-08-31 18:39:02
[2026-08-31 18:39:02,696.696 INFO    ] 2026-08-31 18:39:02
[2026-08-31 18:39:02,739.739 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:39:02,992.992 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:39:03,038.038 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:39:03,281.281 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:39:03,332.332 INFO    ] time= 31/08/2026 18:39:03
[2026-08-31 18:39:03,338.338 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:39:03,354.354 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:39:03,471.471 INFO    ] No existing commands found in stream
[2026-08-31 18:39:08,493.493 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:39:08,496.496 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-08-31 18:39:12,163.163 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 18:39:12,165.165 INFO    ] Checking for system updates...
[2026-08-31 18:39:12,201.201 INFO    ] 200
[2026-08-31 18:39:12,204.204 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:39:12,267.267 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:39:12,270.270 INFO    ] No update needed
[2026-08-31 18:39:12,272.272 INFO    ] Checking for camera pi updates...
[2026-08-31 18:39:12,305.305 INFO    ] 200
[2026-08-31 18:39:12,308.308 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:39:12,354.354 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:39:12,451.451 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:39:12,453.453 INFO    ] No camera update needed
[2026-08-31 18:39:12,456.456 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:39:12,458.458 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:39:12,463.463 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:39:12,468.468 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:39:14,511.511 INFO    ] ================================================
[2026-08-31 18:39:14,527.527 INFO    ] Launching Daemon at Mon Aug 31 18:39:14 IST 2026
[2026-08-31 18:39:14,539.539 INFO    ] ================================================
[2026-08-31 18:39:15,111.111 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:39:15
[2026-08-31 18:39:15,703.703 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:39:15,964.964 INFO    ] Initializing speech engine...
[2026-08-31 18:39:15,970.970 INFO    ] 2026-08-31 18:39:15
[2026-08-31 18:39:16,269.269 INFO    ] 2026-08-31 18:39:16
[2026-08-31 18:39:16,303.303 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:39:16,506.506 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:39:16,511.511 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:39:16,688.688 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:39:16,696.696 INFO    ] time= 31/08/2026 18:39:16
[2026-08-31 18:39:16,701.701 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:39:16,707.707 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:39:16,910.910 INFO    ] No existing commands found in stream
[2026-08-31 18:39:21,933.933 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:39:21,935.935 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-08-31 18:39:23,064.064 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 18:39:23,067.067 INFO    ] Checking for system updates...
[2026-08-31 18:39:23,103.103 INFO    ] 200
[2026-08-31 18:39:23,105.105 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:39:23,168.168 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:39:23,170.170 INFO    ] No update needed
[2026-08-31 18:39:23,172.172 INFO    ] Checking for camera pi updates...
[2026-08-31 18:39:23,210.210 INFO    ] 200
[2026-08-31 18:39:23,213.213 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:39:23,254.254 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:39:23,380.380 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:39:23,382.382 INFO    ] No camera update needed
[2026-08-31 18:39:23,385.385 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:39:23,387.387 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:39:23,392.392 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:39:23,398.398 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:39:25,438.438 INFO    ] ================================================
[2026-08-31 18:39:25,454.454 INFO    ] Launching Daemon at Mon Aug 31 18:39:25 IST 2026
[2026-08-31 18:39:25,465.465 INFO    ] ================================================
[2026-08-31 18:39:26,108.108 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:39:26
[2026-08-31 18:39:26,794.794 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:39:27,103.103 INFO    ] Initializing speech engine...
[2026-08-31 18:39:27,117.117 INFO    ] 2026-08-31 18:39:27
[2026-08-31 18:39:27,431.431 INFO    ] 2026-08-31 18:39:27
[2026-08-31 18:39:27,517.517 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:39:27,732.732 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:39:27,738.738 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:39:27,933.933 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:39:27,952.952 INFO    ] time= 31/08/2026 18:39:27
[2026-08-31 18:39:27,962.962 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:39:27,991.991 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:39:28,111.111 INFO    ] No existing commands found in stream
[2026-08-31 18:39:33,148.148 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:39:33,151.151 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-08-31 18:39:34,885.885 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 18:39:34,888.888 INFO    ] Checking for system updates...
[2026-08-31 18:39:34,926.926 INFO    ] 200
[2026-08-31 18:39:34,929.929 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:39:34,991.991 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:39:34,994.994 INFO    ] No update needed
[2026-08-31 18:39:34,997.997 INFO    ] Checking for camera pi updates...
[2026-08-31 18:39:35,032.032 INFO    ] 200
[2026-08-31 18:39:35,035.035 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:39:35,083.083 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:39:35,168.168 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:39:35,171.171 INFO    ] No camera update needed
[2026-08-31 18:39:35,174.174 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:39:35,177.177 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:39:35,183.183 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:39:35,190.190 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:39:37,233.233 INFO    ] ================================================
[2026-08-31 18:39:37,249.249 INFO    ] Launching Daemon at Mon Aug 31 18:39:37 IST 2026
[2026-08-31 18:39:37,260.260 INFO    ] ================================================
[2026-08-31 18:39:37,935.935 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:39:37
[2026-08-31 18:39:38,630.630 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:39:38,941.941 INFO    ] Initializing speech engine...
[2026-08-31 18:39:38,950.950 INFO    ] 2026-08-31 18:39:38
[2026-08-31 18:39:39,246.246 INFO    ] 2026-08-31 18:39:39
[2026-08-31 18:39:39,356.356 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:39:39,635.635 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:39:39,652.652 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:39:39,823.823 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:39:39,832.832 INFO    ] time= 31/08/2026 18:39:39
[2026-08-31 18:39:39,904.904 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:39:39,936.936 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:39:40,064.064 INFO    ] No existing commands found in stream
[2026-08-31 18:39:45,096.096 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:39:45,099.099 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-08-31 18:39:47,075.075 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 18:39:47,077.077 INFO    ] Checking for system updates...
[2026-08-31 18:39:47,120.120 INFO    ] 200
[2026-08-31 18:39:47,122.122 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:39:47,181.181 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:39:47,184.184 INFO    ] No update needed
[2026-08-31 18:39:47,187.187 INFO    ] Checking for camera pi updates...
[2026-08-31 18:39:47,227.227 INFO    ] 200
[2026-08-31 18:39:47,230.230 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:39:47,272.272 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:39:47,344.344 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:39:47,347.347 INFO    ] No camera update needed
[2026-08-31 18:39:47,350.350 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:39:47,353.353 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:39:47,360.360 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:39:47,366.366 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:39:49,408.408 INFO    ] ================================================
[2026-08-31 18:39:49,424.424 INFO    ] Launching Daemon at Mon Aug 31 18:39:49 IST 2026
[2026-08-31 18:39:49,435.435 INFO    ] ================================================
[2026-08-31 18:39:50,002.002 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:39:49
[2026-08-31 18:39:50,585.585 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:39:50,853.853 INFO    ] Initializing speech engine...
[2026-08-31 18:39:50,862.862 INFO    ] 2026-08-31 18:39:50
[2026-08-31 18:39:51,108.108 INFO    ] 2026-08-31 18:39:51
[2026-08-31 18:39:51,142.142 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:39:51,341.341 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:39:51,399.399 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:39:51,539.539 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:39:51,598.598 INFO    ] time= 31/08/2026 18:39:51
[2026-08-31 18:39:51,653.653 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:39:51,669.669 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:39:51,803.803 INFO    ] No existing commands found in stream
[2026-08-31 18:39:56,827.827 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:39:56,830.830 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-08-31 18:39:59,480.480 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 18:39:59,482.482 INFO    ] Checking for system updates...
[2026-08-31 18:39:59,517.517 INFO    ] 200
[2026-08-31 18:39:59,520.520 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:39:59,572.572 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:39:59,574.574 INFO    ] No update needed
[2026-08-31 18:39:59,577.577 INFO    ] Checking for camera pi updates...
[2026-08-31 18:39:59,615.615 INFO    ] 200
[2026-08-31 18:39:59,617.617 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:39:59,664.664 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:39:59,772.772 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:39:59,775.775 INFO    ] No camera update needed
[2026-08-31 18:39:59,778.778 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:39:59,780.780 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:39:59,786.786 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:39:59,791.791 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:40:01,870.870 INFO    ] ================================================
[2026-08-31 18:40:01,930.930 INFO    ] Launching Daemon at Mon Aug 31 18:40:01 IST 2026
[2026-08-31 18:40:01,961.961 INFO    ] ================================================
[2026-08-31 18:40:02,889.889 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:40:02
[2026-08-31 18:40:03,640.640 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:40:03,927.927 INFO    ] Initializing speech engine...
[2026-08-31 18:40:03,933.933 INFO    ] 2026-08-31 18:40:03
[2026-08-31 18:40:04,195.195 INFO    ] 2026-08-31 18:40:04
[2026-08-31 18:40:04,249.249 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:40:04,477.477 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:40:04,483.483 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:40:04,715.715 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:40:04,738.738 INFO    ] time= 31/08/2026 18:40:04
[2026-08-31 18:40:04,755.755 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:40:04,764.764 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:40:04,876.876 INFO    ] No existing commands found in stream
[2026-08-31 18:40:09,898.898 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:40:09,901.901 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-08-31 18:40:13,844.844 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 18:40:13,846.846 INFO    ] Checking for system updates...
[2026-08-31 18:40:13,888.888 INFO    ] 200
[2026-08-31 18:40:13,891.891 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:40:13,948.948 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:40:13,951.951 INFO    ] No update needed
[2026-08-31 18:40:13,954.954 INFO    ] Checking for camera pi updates...
[2026-08-31 18:40:13,988.988 INFO    ] 200
[2026-08-31 18:40:13,991.991 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:40:14,037.037 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:40:14,221.221 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:40:14,224.224 INFO    ] No camera update needed
[2026-08-31 18:40:14,226.226 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:40:14,228.228 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:40:14,234.234 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:40:14,239.239 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:40:16,279.279 INFO    ] ================================================
[2026-08-31 18:40:16,295.295 INFO    ] Launching Daemon at Mon Aug 31 18:40:16 IST 2026
[2026-08-31 18:40:16,306.306 INFO    ] ================================================
[2026-08-31 18:40:16,961.961 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:40:16
[2026-08-31 18:40:17,565.565 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:40:17,838.838 INFO    ] Initializing speech engine...
[2026-08-31 18:40:17,847.847 INFO    ] 2026-08-31 18:40:17
[2026-08-31 18:40:18,096.096 INFO    ] 2026-08-31 18:40:18
[2026-08-31 18:40:18,131.131 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:40:18,428.428 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:40:18,451.451 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:40:18,644.644 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:40:18,654.654 INFO    ] time= 31/08/2026 18:40:18
[2026-08-31 18:40:18,672.672 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:40:18,690.690 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:40:18,807.807 INFO    ] No existing commands found in stream
[2026-08-31 18:40:23,832.832 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:40:23,835.835 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-08-31 18:40:27,996.996 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 18:40:27,999.999 INFO    ] Checking for system updates...
[2026-08-31 18:40:28,036.036 INFO    ] 200
[2026-08-31 18:40:28,038.038 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:40:28,098.098 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:40:28,100.100 INFO    ] No update needed
[2026-08-31 18:40:28,102.102 INFO    ] Checking for camera pi updates...
[2026-08-31 18:40:28,140.140 INFO    ] 200
[2026-08-31 18:40:28,142.142 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:40:28,187.187 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:40:28,272.272 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:40:28,275.275 INFO    ] No camera update needed
[2026-08-31 18:40:28,277.277 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:40:28,280.280 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:40:28,285.285 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:40:28,290.290 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:40:30,330.330 INFO    ] ================================================
[2026-08-31 18:40:30,346.346 INFO    ] Launching Daemon at Mon Aug 31 18:40:30 IST 2026
[2026-08-31 18:40:30,357.357 INFO    ] ================================================
[2026-08-31 18:40:31,017.017 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:40:31
[2026-08-31 18:40:31,712.712 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:40:32,047.047 INFO    ] Initializing speech engine...
[2026-08-31 18:40:32,060.060 INFO    ] 2026-08-31 18:40:32
[2026-08-31 18:40:32,374.374 INFO    ] 2026-08-31 18:40:32
[2026-08-31 18:40:32,492.492 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:40:32,718.718 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:40:32,729.729 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:40:32,946.946 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:40:32,953.953 INFO    ] time= 31/08/2026 18:40:32
[2026-08-31 18:40:32,970.970 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:40:32,998.998 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:40:33,102.102 INFO    ] No existing commands found in stream
[2026-08-31 18:40:38,119.119 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:40:38,122.122 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-08-31 18:40:41,563.563 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 18:40:41,566.566 INFO    ] Checking for system updates...
[2026-08-31 18:40:41,602.602 INFO    ] 200
[2026-08-31 18:40:41,604.604 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:40:41,656.656 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:40:41,659.659 INFO    ] No update needed
[2026-08-31 18:40:41,661.661 INFO    ] Checking for camera pi updates...
[2026-08-31 18:40:41,694.694 INFO    ] 200
[2026-08-31 18:40:41,697.697 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:40:41,737.737 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:40:41,804.804 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:40:41,806.806 INFO    ] No camera update needed
[2026-08-31 18:40:41,809.809 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:40:41,811.811 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:40:41,816.816 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:40:41,821.821 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:40:43,861.861 INFO    ] ================================================
[2026-08-31 18:40:43,877.877 INFO    ] Launching Daemon at Mon Aug 31 18:40:43 IST 2026
[2026-08-31 18:40:43,888.888 INFO    ] ================================================
[2026-08-31 18:40:44,470.470 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:40:44
[2026-08-31 18:40:45,069.069 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:40:45,337.337 INFO    ] Initializing speech engine...
[2026-08-31 18:40:45,350.350 INFO    ] 2026-08-31 18:40:45
[2026-08-31 18:40:45,599.599 INFO    ] 2026-08-31 18:40:45
[2026-08-31 18:40:45,635.635 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:40:45,888.888 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:40:45,897.897 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:40:46,113.113 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:40:46,156.156 INFO    ] time= 31/08/2026 18:40:46
[2026-08-31 18:40:46,162.162 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:40:46,180.180 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:40:46,311.311 INFO    ] No existing commands found in stream
[2026-08-31 18:40:51,328.328 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:40:51,331.331 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-08-31 18:40:54,633.633 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 18:40:54,636.636 INFO    ] Checking for system updates...
[2026-08-31 18:40:54,674.674 INFO    ] 200
[2026-08-31 18:40:54,677.677 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:40:54,736.736 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:40:54,739.739 INFO    ] No update needed
[2026-08-31 18:40:54,741.741 INFO    ] Checking for camera pi updates...
[2026-08-31 18:40:54,775.775 INFO    ] 200
[2026-08-31 18:40:54,778.778 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:40:54,818.818 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:40:54,901.901 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:40:54,903.903 INFO    ] No camera update needed
[2026-08-31 18:40:54,905.905 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:40:54,908.908 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:40:54,913.913 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:40:54,918.918 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:40:56,960.960 INFO    ] ================================================
[2026-08-31 18:40:56,976.976 INFO    ] Launching Daemon at Mon Aug 31 18:40:56 IST 2026
[2026-08-31 18:40:56,987.987 INFO    ] ================================================
[2026-08-31 18:40:57,568.568 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:40:57
[2026-08-31 18:40:58,166.166 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:40:58,426.426 INFO    ] Initializing speech engine...
[2026-08-31 18:40:58,440.440 INFO    ] 2026-08-31 18:40:58
[2026-08-31 18:40:58,728.728 INFO    ] 2026-08-31 18:40:58
[2026-08-31 18:40:58,766.766 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:40:58,995.995 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:40:59,030.030 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:40:59,222.222 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:40:59,229.229 INFO    ] time= 31/08/2026 18:40:59
[2026-08-31 18:40:59,260.260 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:40:59,263.263 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:40:59,365.365 INFO    ] No existing commands found in stream
[2026-08-31 18:41:04,378.378 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:41:04,381.381 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-08-31 18:41:07,781.781 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 18:41:07,783.783 INFO    ] Checking for system updates...
[2026-08-31 18:41:07,823.823 INFO    ] 200
[2026-08-31 18:41:07,825.825 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:41:07,884.884 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:41:07,887.887 INFO    ] No update needed
[2026-08-31 18:41:07,890.890 INFO    ] Checking for camera pi updates...
[2026-08-31 18:41:07,928.928 INFO    ] 200
[2026-08-31 18:41:07,931.931 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:41:07,971.971 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:41:08,051.051 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:41:08,054.054 INFO    ] No camera update needed
[2026-08-31 18:41:08,056.056 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:41:08,059.059 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:41:08,064.064 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:41:08,069.069 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:41:10,110.110 INFO    ] ================================================
[2026-08-31 18:41:10,126.126 INFO    ] Launching Daemon at Mon Aug 31 18:41:10 IST 2026
[2026-08-31 18:41:10,138.138 INFO    ] ================================================
[2026-08-31 18:41:10,797.797 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:41:10
[2026-08-31 18:41:11,476.476 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:41:11,783.783 INFO    ] Initializing speech engine...
[2026-08-31 18:41:11,795.795 INFO    ] 2026-08-31 18:41:11
[2026-08-31 18:41:12,083.083 INFO    ] 2026-08-31 18:41:12
[2026-08-31 18:41:12,124.124 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:41:12,388.388 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:41:12,413.413 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:41:12,609.609 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:41:12,629.629 INFO    ] time= 31/08/2026 18:41:12
[2026-08-31 18:41:12,658.658 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:41:12,665.665 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:41:12,769.769 INFO    ] No existing commands found in stream
[2026-08-31 18:41:17,790.790 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:41:17,793.793 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-08-31 18:41:19,911.911 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 18:41:19,913.913 INFO    ] Checking for system updates...
[2026-08-31 18:41:19,950.950 INFO    ] 200
[2026-08-31 18:41:19,953.953 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:41:20,004.004 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:41:20,007.007 INFO    ] No update needed
[2026-08-31 18:41:20,010.010 INFO    ] Checking for camera pi updates...
[2026-08-31 18:41:20,043.043 INFO    ] 200
[2026-08-31 18:41:20,045.045 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:41:20,086.086 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:41:20,158.158 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:41:20,161.161 INFO    ] No camera update needed
[2026-08-31 18:41:20,163.163 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:41:20,165.165 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:41:20,171.171 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:41:20,176.176 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:41:22,217.217 INFO    ] ================================================
[2026-08-31 18:41:22,233.233 INFO    ] Launching Daemon at Mon Aug 31 18:41:22 IST 2026
[2026-08-31 18:41:22,244.244 INFO    ] ================================================
[2026-08-31 18:41:22,825.825 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:41:22
[2026-08-31 18:41:23,423.423 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:41:23,700.700 INFO    ] Initializing speech engine...
[2026-08-31 18:41:23,706.706 INFO    ] 2026-08-31 18:41:23
[2026-08-31 18:41:23,953.953 INFO    ] 2026-08-31 18:41:23
[2026-08-31 18:41:23,988.988 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:41:24,246.246 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:41:24,251.251 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:41:24,453.453 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:41:24,508.508 INFO    ] time= 31/08/2026 18:41:24
[2026-08-31 18:41:24,520.520 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:41:24,538.538 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:41:24,645.645 INFO    ] No existing commands found in stream
[2026-08-31 18:41:29,670.670 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:41:29,672.672 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-08-31 18:41:32,713.713 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 18:41:32,716.716 INFO    ] Checking for system updates...
[2026-08-31 18:41:32,759.759 INFO    ] 200
[2026-08-31 18:41:32,763.763 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:41:32,820.820 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:41:32,823.823 INFO    ] No update needed
[2026-08-31 18:41:32,826.826 INFO    ] Checking for camera pi updates...
[2026-08-31 18:41:32,863.863 INFO    ] 200
[2026-08-31 18:41:32,865.865 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:41:32,909.909 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:41:32,993.993 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:41:32,996.996 INFO    ] No camera update needed
[2026-08-31 18:41:32,999.999 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:41:33,001.001 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:41:33,007.007 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:41:33,013.013 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:41:35,056.056 INFO    ] ================================================
[2026-08-31 18:41:35,071.071 INFO    ] Launching Daemon at Mon Aug 31 18:41:35 IST 2026
[2026-08-31 18:41:35,082.082 INFO    ] ================================================
[2026-08-31 18:41:35,730.730 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:41:35
[2026-08-31 18:41:36,396.396 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:41:36,703.703 INFO    ] Initializing speech engine...
[2026-08-31 18:41:36,715.715 INFO    ] 2026-08-31 18:41:36
[2026-08-31 18:41:37,001.001 INFO    ] 2026-08-31 18:41:36
[2026-08-31 18:41:37,041.041 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:41:37,319.319 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:41:37,333.333 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:41:37,532.532 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:41:37,549.549 INFO    ] time= 31/08/2026 18:41:37
[2026-08-31 18:41:37,558.558 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:41:37,573.573 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:41:37,687.687 INFO    ] No existing commands found in stream
[2026-08-31 18:41:42,704.704 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:41:42,707.707 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-08-31 18:41:44,792.792 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 18:41:44,795.795 INFO    ] Checking for system updates...
[2026-08-31 18:41:44,832.832 INFO    ] 200
[2026-08-31 18:41:44,835.835 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:41:44,896.896 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:41:44,899.899 INFO    ] No update needed
[2026-08-31 18:41:44,902.902 INFO    ] Checking for camera pi updates...
[2026-08-31 18:41:44,940.940 INFO    ] 200
[2026-08-31 18:41:44,943.943 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:41:44,989.989 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:41:45,078.078 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:41:45,081.081 INFO    ] No camera update needed
[2026-08-31 18:41:45,084.084 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:41:45,086.086 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:41:45,093.093 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:41:45,099.099 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:41:47,138.138 INFO    ] ================================================
[2026-08-31 18:41:47,154.154 INFO    ] Launching Daemon at Mon Aug 31 18:41:47 IST 2026
[2026-08-31 18:41:47,165.165 INFO    ] ================================================
[2026-08-31 18:41:47,748.748 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:41:47
[2026-08-31 18:41:48,350.350 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:41:48,610.610 INFO    ] Initializing speech engine...
[2026-08-31 18:41:48,626.626 INFO    ] 2026-08-31 18:41:48
[2026-08-31 18:41:48,883.883 INFO    ] 2026-08-31 18:41:48
[2026-08-31 18:41:48,919.919 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:41:49,171.171 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:41:49,180.180 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:41:49,311.311 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:41:49,353.353 INFO    ] time= 31/08/2026 18:41:49
[2026-08-31 18:41:49,403.403 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:41:49,445.445 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:41:49,508.508 INFO    ] No existing commands found in stream
[2026-08-31 18:41:54,540.540 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:41:54,543.543 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-08-31 18:41:56,743.743 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 18:41:56,746.746 INFO    ] Checking for system updates...
[2026-08-31 18:41:56,783.783 INFO    ] 200
[2026-08-31 18:41:56,785.785 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:41:56,839.839 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:41:56,842.842 INFO    ] No update needed
[2026-08-31 18:41:56,845.845 INFO    ] Checking for camera pi updates...
[2026-08-31 18:41:56,879.879 INFO    ] 200
[2026-08-31 18:41:56,882.882 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:41:56,923.923 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:41:56,998.998 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:41:57,001.001 INFO    ] No camera update needed
[2026-08-31 18:41:57,004.004 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:41:57,006.006 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:41:57,013.013 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:41:57,018.018 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:41:59,062.062 INFO    ] ================================================
[2026-08-31 18:41:59,077.077 INFO    ] Launching Daemon at Mon Aug 31 18:41:59 IST 2026
[2026-08-31 18:41:59,088.088 INFO    ] ================================================
[2026-08-31 18:41:59,678.678 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:41:59
[2026-08-31 18:42:00,260.260 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:42:00,511.511 INFO    ] Initializing speech engine...
[2026-08-31 18:42:00,534.534 INFO    ] 2026-08-31 18:42:00
[2026-08-31 18:42:00,788.788 INFO    ] 2026-08-31 18:42:00
[2026-08-31 18:42:00,824.824 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:42:01,026.026 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:42:01,082.082 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:42:01,229.229 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:42:01,289.289 INFO    ] time= 31/08/2026 18:42:01
[2026-08-31 18:42:01,334.334 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:42:01,364.364 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:42:01,488.488 INFO    ] No existing commands found in stream
[2026-08-31 18:42:06,519.519 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:42:06,523.523 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-08-31 18:42:08,281.281 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 18:42:08,284.284 INFO    ] Checking for system updates...
[2026-08-31 18:42:08,321.321 INFO    ] 200
[2026-08-31 18:42:08,324.324 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:42:08,376.376 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:42:08,379.379 INFO    ] No update needed
[2026-08-31 18:42:08,381.381 INFO    ] Checking for camera pi updates...
[2026-08-31 18:42:08,415.415 INFO    ] 200
[2026-08-31 18:42:08,418.418 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:42:08,463.463 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:42:08,561.561 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:42:08,564.564 INFO    ] No camera update needed
[2026-08-31 18:42:08,566.566 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:42:08,568.568 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:42:08,574.574 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:42:08,579.579 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:42:10,618.618 INFO    ] ================================================
[2026-08-31 18:42:10,634.634 INFO    ] Launching Daemon at Mon Aug 31 18:42:10 IST 2026
[2026-08-31 18:42:10,644.644 INFO    ] ================================================
[2026-08-31 18:42:11,295.295 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:42:11
[2026-08-31 18:42:11,901.901 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:42:12,162.162 INFO    ] Initializing speech engine...
[2026-08-31 18:42:12,181.181 INFO    ] 2026-08-31 18:42:12
[2026-08-31 18:42:12,430.430 INFO    ] 2026-08-31 18:42:12
[2026-08-31 18:42:12,466.466 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:42:12,724.724 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:42:12,734.734 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:42:12,955.955 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:42:12,999.999 INFO    ] time= 31/08/2026 18:42:12
[2026-08-31 18:42:13,005.005 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:42:13,023.023 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:42:13,153.153 INFO    ] No existing commands found in stream
[2026-08-31 18:42:18,168.168 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:42:18,170.170 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-08-31 18:42:18,685.685 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 18:42:18,688.688 INFO    ] Checking for system updates...
[2026-08-31 18:42:18,723.723 INFO    ] 200
[2026-08-31 18:42:18,726.726 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:42:18,780.780 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:42:18,782.782 INFO    ] No update needed
[2026-08-31 18:42:18,785.785 INFO    ] Checking for camera pi updates...
[2026-08-31 18:42:18,818.818 INFO    ] 200
[2026-08-31 18:42:18,821.821 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:42:18,861.861 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:42:19,044.044 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:42:19,046.046 INFO    ] No camera update needed
[2026-08-31 18:42:19,049.049 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:42:19,051.051 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:42:19,056.056 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:42:19,061.061 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:42:21,105.105 INFO    ] ================================================
[2026-08-31 18:42:21,120.120 INFO    ] Launching Daemon at Mon Aug 31 18:42:21 IST 2026
[2026-08-31 18:42:21,131.131 INFO    ] ================================================
[2026-08-31 18:42:21,701.701 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:42:21
[2026-08-31 18:42:22,289.289 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:42:22,560.560 INFO    ] Initializing speech engine...
[2026-08-31 18:42:22,568.568 INFO    ] 2026-08-31 18:42:22
[2026-08-31 18:42:22,819.819 INFO    ] 2026-08-31 18:42:22
[2026-08-31 18:42:22,854.854 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:42:23,054.054 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:42:23,110.110 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:42:23,272.272 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:42:23,288.288 INFO    ] time= 31/08/2026 18:42:23
[2026-08-31 18:42:23,353.353 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:42:23,402.402 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:42:23,534.534 INFO    ] No existing commands found in stream
[2026-08-31 18:42:28,564.564 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:42:28,567.567 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-08-31 18:42:30,274.274 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 18:42:30,277.277 INFO    ] Checking for system updates...
[2026-08-31 18:42:30,312.312 INFO    ] 200
[2026-08-31 18:42:30,315.315 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:42:30,367.367 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:42:30,369.369 INFO    ] No update needed
[2026-08-31 18:42:30,372.372 INFO    ] Checking for camera pi updates...
[2026-08-31 18:42:30,405.405 INFO    ] 200
[2026-08-31 18:42:30,408.408 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:42:30,453.453 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:42:30,533.533 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:42:30,535.535 INFO    ] No camera update needed
[2026-08-31 18:42:30,538.538 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:42:30,540.540 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:42:30,545.545 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:42:30,550.550 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:42:32,593.593 INFO    ] ================================================
[2026-08-31 18:42:32,609.609 INFO    ] Launching Daemon at Mon Aug 31 18:42:32 IST 2026
[2026-08-31 18:42:32,621.621 INFO    ] ================================================
[2026-08-31 18:42:33,270.270 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:42:33
[2026-08-31 18:42:33,867.867 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:42:34,144.144 INFO    ] Initializing speech engine...
[2026-08-31 18:42:34,152.152 INFO    ] 2026-08-31 18:42:34
[2026-08-31 18:42:34,398.398 INFO    ] 2026-08-31 18:42:34
[2026-08-31 18:42:34,463.463 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:42:34,689.689 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:42:34,694.694 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:42:34,907.907 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:42:34,952.952 INFO    ] time= 31/08/2026 18:42:34
[2026-08-31 18:42:34,958.958 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:42:34,976.976 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:42:35,103.103 INFO    ] No existing commands found in stream
[2026-08-31 18:42:40,117.117 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:42:40,120.120 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-08-31 18:42:42,459.459 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 18:42:42,462.462 INFO    ] Checking for system updates...
[2026-08-31 18:42:42,502.502 INFO    ] 200
[2026-08-31 18:42:42,505.505 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:42:42,558.558 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:42:42,561.561 INFO    ] No update needed
[2026-08-31 18:42:42,563.563 INFO    ] Checking for camera pi updates...
[2026-08-31 18:42:42,603.603 INFO    ] 200
[2026-08-31 18:42:42,606.606 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:42:42,647.647 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:42:42,719.719 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:42:42,721.721 INFO    ] No camera update needed
[2026-08-31 18:42:42,724.724 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:42:42,726.726 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:42:42,732.732 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:42:42,737.737 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:42:44,776.776 INFO    ] ================================================
[2026-08-31 18:42:44,792.792 INFO    ] Launching Daemon at Mon Aug 31 18:42:44 IST 2026
[2026-08-31 18:42:44,803.803 INFO    ] ================================================
[2026-08-31 18:42:45,374.374 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:42:45
[2026-08-31 18:42:45,954.954 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:42:46,215.215 INFO    ] Initializing speech engine...
[2026-08-31 18:42:46,237.237 INFO    ] 2026-08-31 18:42:46
[2026-08-31 18:42:46,493.493 INFO    ] 2026-08-31 18:42:46
[2026-08-31 18:42:46,528.528 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:42:46,740.740 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:42:46,798.798 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:42:46,937.937 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:42:46,985.985 INFO    ] time= 31/08/2026 18:42:46
[2026-08-31 18:42:47,044.044 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:42:47,071.071 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:42:47,187.187 INFO    ] No existing commands found in stream
[2026-08-31 18:42:52,209.209 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:42:52,212.212 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-08-31 18:42:54,063.063 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 18:42:54,065.065 INFO    ] Checking for system updates...
[2026-08-31 18:42:54,101.101 INFO    ] 200
[2026-08-31 18:42:54,103.103 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:42:54,168.168 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:42:54,170.170 INFO    ] No update needed
[2026-08-31 18:42:54,172.172 INFO    ] Checking for camera pi updates...
[2026-08-31 18:42:54,210.210 INFO    ] 200
[2026-08-31 18:42:54,213.213 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:42:54,259.259 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:42:54,349.349 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:42:54,351.351 INFO    ] No camera update needed
[2026-08-31 18:42:54,354.354 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:42:54,356.356 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:42:54,361.361 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:42:54,366.366 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:42:56,408.408 INFO    ] ================================================
[2026-08-31 18:42:56,423.423 INFO    ] Launching Daemon at Mon Aug 31 18:42:56 IST 2026
[2026-08-31 18:42:56,434.434 INFO    ] ================================================
[2026-08-31 18:42:56,999.999 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:42:56
[2026-08-31 18:42:57,579.579 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:42:57,823.823 INFO    ] Initializing speech engine...
[2026-08-31 18:42:57,832.832 INFO    ] 2026-08-31 18:42:57
[2026-08-31 18:42:58,105.105 INFO    ] 2026-08-31 18:42:58
[2026-08-31 18:42:58,140.140 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:42:58,373.373 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:42:58,405.405 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:42:58,540.540 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:42:58,587.587 INFO    ] time= 31/08/2026 18:42:58
[2026-08-31 18:42:58,631.631 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:42:58,676.676 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:42:58,734.734 INFO    ] No existing commands found in stream
[2026-08-31 18:43:03,746.746 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:43:03,749.749 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-08-31 18:43:06,830.830 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 18:43:06,833.833 INFO    ] Checking for system updates...
[2026-08-31 18:43:06,877.877 INFO    ] 200
[2026-08-31 18:43:06,880.880 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:43:06,942.942 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:43:06,944.944 INFO    ] No update needed
[2026-08-31 18:43:06,947.947 INFO    ] Checking for camera pi updates...
[2026-08-31 18:43:06,985.985 INFO    ] 200
[2026-08-31 18:43:06,988.988 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:43:07,030.030 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:43:07,133.133 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:43:07,136.136 INFO    ] No camera update needed
[2026-08-31 18:43:07,139.139 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:43:07,142.142 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:43:07,148.148 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:43:07,154.154 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:43:09,194.194 INFO    ] ================================================
[2026-08-31 18:43:09,210.210 INFO    ] Launching Daemon at Mon Aug 31 18:43:09 IST 2026
[2026-08-31 18:43:09,221.221 INFO    ] ================================================
[2026-08-31 18:43:09,817.817 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:43:09
[2026-08-31 18:43:10,405.405 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:43:10,676.676 INFO    ] Initializing speech engine...
[2026-08-31 18:43:10,683.683 INFO    ] 2026-08-31 18:43:10
[2026-08-31 18:43:10,936.936 INFO    ] 2026-08-31 18:43:10
[2026-08-31 18:43:10,970.970 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:43:11,147.147 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:43:11,159.159 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:43:11,304.304 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:43:11,313.313 INFO    ] time= 31/08/2026 18:43:11
[2026-08-31 18:43:11,319.319 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:43:11,370.370 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:43:11,501.501 INFO    ] No existing commands found in stream
[2026-08-31 18:43:16,525.525 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:43:16,528.528 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-08-31 18:43:17,867.867 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 18:43:17,870.870 INFO    ] Checking for system updates...
[2026-08-31 18:43:17,909.909 INFO    ] 200
[2026-08-31 18:43:17,911.911 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:43:17,973.973 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:43:17,976.976 INFO    ] No update needed
[2026-08-31 18:43:17,978.978 INFO    ] Checking for camera pi updates...
[2026-08-31 18:43:18,016.016 INFO    ] 200
[2026-08-31 18:43:18,019.019 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:43:18,066.066 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:43:18,163.163 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:43:18,165.165 INFO    ] No camera update needed
[2026-08-31 18:43:18,168.168 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:43:18,170.170 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:43:18,176.176 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:43:18,181.181 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:43:20,220.220 INFO    ] ================================================
[2026-08-31 18:43:20,237.237 INFO    ] Launching Daemon at Mon Aug 31 18:43:20 IST 2026
[2026-08-31 18:43:20,248.248 INFO    ] ================================================
[2026-08-31 18:43:20,814.814 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:43:20
[2026-08-31 18:43:21,398.398 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:43:21,646.646 INFO    ] Initializing speech engine...
[2026-08-31 18:43:21,661.661 INFO    ] 2026-08-31 18:43:21
[2026-08-31 18:43:21,927.927 INFO    ] 2026-08-31 18:43:21
[2026-08-31 18:43:21,962.962 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:43:22,137.137 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:43:22,149.149 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:43:22,343.343 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:43:22,366.366 INFO    ] time= 31/08/2026 18:43:22
[2026-08-31 18:43:22,408.408 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:43:22,462.462 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:43:22,550.550 INFO    ] No existing commands found in stream
[2026-08-31 18:43:27,561.561 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:43:27,564.564 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-08-31 18:43:31,700.700 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 18:43:31,703.703 INFO    ] Checking for system updates...
[2026-08-31 18:43:31,744.744 INFO    ] 200
[2026-08-31 18:43:31,746.746 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:43:31,808.808 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:43:31,810.810 INFO    ] No update needed
[2026-08-31 18:43:31,812.812 INFO    ] Checking for camera pi updates...
[2026-08-31 18:43:31,851.851 INFO    ] 200
[2026-08-31 18:43:31,854.854 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:43:31,894.894 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:43:32,028.028 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:43:32,031.031 INFO    ] No camera update needed
[2026-08-31 18:43:32,034.034 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:43:32,037.037 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:43:32,044.044 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:43:32,050.050 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:43:34,094.094 INFO    ] ================================================
[2026-08-31 18:43:34,109.109 INFO    ] Launching Daemon at Mon Aug 31 18:43:34 IST 2026
[2026-08-31 18:43:34,121.121 INFO    ] ================================================
[2026-08-31 18:43:34,696.696 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:43:34
[2026-08-31 18:43:35,286.286 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:43:35,559.559 INFO    ] Initializing speech engine...
[2026-08-31 18:43:35,568.568 INFO    ] 2026-08-31 18:43:35
[2026-08-31 18:43:35,828.828 INFO    ] 2026-08-31 18:43:35
[2026-08-31 18:43:35,887.887 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:43:36,031.031 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:43:36,043.043 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:43:36,191.191 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:43:36,196.196 INFO    ] time= 31/08/2026 18:43:36
[2026-08-31 18:43:36,202.202 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:43:36,238.238 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:43:36,397.397 INFO    ] No existing commands found in stream
[2026-08-31 18:43:41,407.407 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:43:41,410.410 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-08-31 18:43:43,789.789 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 18:43:43,792.792 INFO    ] Checking for system updates...
[2026-08-31 18:43:43,827.827 INFO    ] 200
[2026-08-31 18:43:43,830.830 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:43:43,887.887 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:43:43,890.890 INFO    ] No update needed
[2026-08-31 18:43:43,892.892 INFO    ] Checking for camera pi updates...
[2026-08-31 18:43:43,925.925 INFO    ] 200
[2026-08-31 18:43:43,928.928 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:43:43,974.974 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:43:44,071.071 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:43:44,073.073 INFO    ] No camera update needed
[2026-08-31 18:43:44,075.075 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:43:44,078.078 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:43:44,083.083 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:43:44,088.088 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:43:46,136.136 INFO    ] ================================================
[2026-08-31 18:43:46,151.151 INFO    ] Launching Daemon at Mon Aug 31 18:43:46 IST 2026
[2026-08-31 18:43:46,162.162 INFO    ] ================================================
[2026-08-31 18:43:46,837.837 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:43:46
[2026-08-31 18:43:47,532.532 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:43:47,843.843 INFO    ] Initializing speech engine...
[2026-08-31 18:43:47,852.852 INFO    ] 2026-08-31 18:43:47
[2026-08-31 18:43:48,131.131 INFO    ] 2026-08-31 18:43:48
[2026-08-31 18:43:48,191.191 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:43:48,452.452 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:43:48,486.486 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:43:48,694.694 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:43:48,701.701 INFO    ] time= 31/08/2026 18:43:48
[2026-08-31 18:43:48,724.724 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:43:48,752.752 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:43:48,881.881 INFO    ] No existing commands found in stream
[2026-08-31 18:43:53,907.907 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:43:53,911.911 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-08-31 18:43:57,756.756 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 18:43:57,759.759 INFO    ] Checking for system updates...
[2026-08-31 18:43:57,799.799 INFO    ] 200
[2026-08-31 18:43:57,802.802 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:43:57,854.854 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:43:57,857.857 INFO    ] No update needed
[2026-08-31 18:43:57,860.860 INFO    ] Checking for camera pi updates...
[2026-08-31 18:43:57,900.900 INFO    ] 200
[2026-08-31 18:43:57,903.903 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:43:57,952.952 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:43:58,036.036 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:43:58,039.039 INFO    ] No camera update needed
[2026-08-31 18:43:58,041.041 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:43:58,043.043 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:43:58,049.049 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:43:58,053.053 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:44:00,094.094 INFO    ] ================================================
[2026-08-31 18:44:00,110.110 INFO    ] Launching Daemon at Mon Aug 31 18:44:00 IST 2026
[2026-08-31 18:44:00,122.122 INFO    ] ================================================
[2026-08-31 18:44:00,689.689 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:44:00
[2026-08-31 18:44:01,274.274 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:44:01,544.544 INFO    ] Initializing speech engine...
[2026-08-31 18:44:01,552.552 INFO    ] 2026-08-31 18:44:01
[2026-08-31 18:44:01,803.803 INFO    ] 2026-08-31 18:44:01
[2026-08-31 18:44:01,837.837 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:44:02,028.028 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:44:02,032.032 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:44:02,219.219 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:44:02,222.222 INFO    ] time= 31/08/2026 18:44:02
[2026-08-31 18:44:02,226.226 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:44:02,230.230 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:44:02,294.294 INFO    ] No existing commands found in stream
[2026-08-31 18:44:07,304.304 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:44:07,307.307 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-08-31 18:44:10,025.025 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 18:44:10,027.027 INFO    ] Checking for system updates...
[2026-08-31 18:44:10,068.068 INFO    ] 200
[2026-08-31 18:44:10,070.070 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:44:10,131.131 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:44:10,133.133 INFO    ] No update needed
[2026-08-31 18:44:10,135.135 INFO    ] Checking for camera pi updates...
[2026-08-31 18:44:10,169.169 INFO    ] 200
[2026-08-31 18:44:10,171.171 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:44:10,218.218 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:44:10,305.305 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:44:10,307.307 INFO    ] No camera update needed
[2026-08-31 18:44:10,310.310 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:44:10,312.312 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:44:10,318.318 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:44:10,323.323 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:44:12,365.365 INFO    ] ================================================
[2026-08-31 18:44:12,380.380 INFO    ] Launching Daemon at Mon Aug 31 18:44:12 IST 2026
[2026-08-31 18:44:12,391.391 INFO    ] ================================================
[2026-08-31 18:44:12,957.957 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:44:12
[2026-08-31 18:44:13,582.582 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:44:13,898.898 INFO    ] Initializing speech engine...
[2026-08-31 18:44:13,910.910 INFO    ] 2026-08-31 18:44:13
[2026-08-31 18:44:14,222.222 INFO    ] 2026-08-31 18:44:14
[2026-08-31 18:44:14,310.310 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:44:14,524.524 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:44:14,532.532 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:44:14,729.729 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:44:14,749.749 INFO    ] time= 31/08/2026 18:44:14
[2026-08-31 18:44:14,774.774 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:44:14,788.788 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:44:14,892.892 INFO    ] No existing commands found in stream
[2026-08-31 18:44:19,909.909 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:44:19,912.912 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-08-31 18:44:21,469.469 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 18:44:21,472.472 INFO    ] Checking for system updates...
[2026-08-31 18:44:21,509.509 INFO    ] 200
[2026-08-31 18:44:21,512.512 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:44:21,565.565 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:44:21,569.569 INFO    ] No update needed
[2026-08-31 18:44:21,572.572 INFO    ] Checking for camera pi updates...
[2026-08-31 18:44:21,611.611 INFO    ] 200
[2026-08-31 18:44:21,614.614 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:44:21,658.658 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:44:21,841.841 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:44:21,843.843 INFO    ] No camera update needed
[2026-08-31 18:44:21,846.846 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:44:21,849.849 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:44:21,856.856 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:44:21,862.862 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:44:23,908.908 INFO    ] ================================================
[2026-08-31 18:44:23,923.923 INFO    ] Launching Daemon at Mon Aug 31 18:44:23 IST 2026
[2026-08-31 18:44:23,935.935 INFO    ] ================================================
[2026-08-31 18:44:24,516.516 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:44:24
[2026-08-31 18:44:25,113.113 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:44:25,393.393 INFO    ] Initializing speech engine...
[2026-08-31 18:44:25,399.399 INFO    ] 2026-08-31 18:44:25
[2026-08-31 18:44:25,646.646 INFO    ] 2026-08-31 18:44:25
[2026-08-31 18:44:25,683.683 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:44:25,874.874 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:44:25,919.919 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:44:26,078.078 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:44:26,118.118 INFO    ] time= 31/08/2026 18:44:26
[2026-08-31 18:44:26,182.182 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:44:26,212.212 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:44:26,353.353 INFO    ] No existing commands found in stream
[2026-08-31 18:44:31,368.368 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:44:31,371.371 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-08-31 18:44:32,565.565 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 18:44:32,568.568 INFO    ] Checking for system updates...
[2026-08-31 18:44:32,607.607 INFO    ] 200
[2026-08-31 18:44:32,609.609 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:44:32,687.687 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:44:32,690.690 INFO    ] No update needed
[2026-08-31 18:44:32,693.693 INFO    ] Checking for camera pi updates...
[2026-08-31 18:44:32,738.738 INFO    ] 200
[2026-08-31 18:44:32,740.740 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:44:32,784.784 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:44:32,891.891 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:44:32,894.894 INFO    ] No camera update needed
[2026-08-31 18:44:32,897.897 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:44:32,899.899 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:44:32,906.906 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:44:32,912.912 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:44:34,954.954 INFO    ] ================================================
[2026-08-31 18:44:34,970.970 INFO    ] Launching Daemon at Mon Aug 31 18:44:34 IST 2026
[2026-08-31 18:44:34,981.981 INFO    ] ================================================
[2026-08-31 18:44:35,565.565 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:44:35
[2026-08-31 18:44:36,168.168 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:44:36,443.443 INFO    ] Initializing speech engine...
[2026-08-31 18:44:36,451.451 INFO    ] 2026-08-31 18:44:36
[2026-08-31 18:44:36,713.713 INFO    ] 2026-08-31 18:44:36
[2026-08-31 18:44:36,767.767 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:44:36,997.997 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:44:37,003.003 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:44:37,225.225 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:44:37,263.263 INFO    ] time= 31/08/2026 18:44:37
[2026-08-31 18:44:37,269.269 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:44:37,290.290 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:44:37,418.418 INFO    ] No existing commands found in stream
[2026-08-31 18:44:42,433.433 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:44:42,436.436 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-08-31 18:44:45,961.961 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 18:44:45,964.964 INFO    ] Checking for system updates...
[2026-08-31 18:44:46,006.006 INFO    ] 200
[2026-08-31 18:44:46,009.009 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:44:46,060.060 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:44:46,063.063 INFO    ] No update needed
[2026-08-31 18:44:46,065.065 INFO    ] Checking for camera pi updates...
[2026-08-31 18:44:46,104.104 INFO    ] 200
[2026-08-31 18:44:46,106.106 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:44:46,146.146 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:44:46,232.232 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:44:46,234.234 INFO    ] No camera update needed
[2026-08-31 18:44:46,236.236 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:44:46,239.239 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:44:46,244.244 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:44:46,249.249 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:44:48,291.291 INFO    ] ================================================
[2026-08-31 18:44:48,307.307 INFO    ] Launching Daemon at Mon Aug 31 18:44:48 IST 2026
[2026-08-31 18:44:48,318.318 INFO    ] ================================================
[2026-08-31 18:44:49,002.002 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:44:48
[2026-08-31 18:44:49,699.699 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:44:50,014.014 INFO    ] Initializing speech engine...
[2026-08-31 18:44:50,029.029 INFO    ] 2026-08-31 18:44:50
[2026-08-31 18:44:50,324.324 INFO    ] 2026-08-31 18:44:50
[2026-08-31 18:44:50,436.436 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:44:50,657.657 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:44:50,666.666 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:44:50,836.836 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:44:50,874.874 INFO    ] time= 31/08/2026 18:44:50
[2026-08-31 18:44:50,894.894 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:44:50,924.924 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:44:51,048.048 INFO    ] No existing commands found in stream
[2026-08-31 18:44:56,070.070 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:44:56,073.073 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-08-31 18:44:58,478.478 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 18:44:58,481.481 INFO    ] Checking for system updates...
[2026-08-31 18:44:58,516.516 INFO    ] 200
[2026-08-31 18:44:58,519.519 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:44:58,571.571 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:44:58,574.574 INFO    ] No update needed
[2026-08-31 18:44:58,576.576 INFO    ] Checking for camera pi updates...
[2026-08-31 18:44:58,610.610 INFO    ] 200
[2026-08-31 18:44:58,613.613 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:44:58,660.660 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:44:58,760.760 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:44:58,763.763 INFO    ] No camera update needed
[2026-08-31 18:44:58,765.765 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:44:58,767.767 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:44:58,773.773 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:44:58,778.778 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:45:00,820.820 INFO    ] ================================================
[2026-08-31 18:45:00,836.836 INFO    ] Launching Daemon at Mon Aug 31 18:45:00 IST 2026
[2026-08-31 18:45:00,847.847 INFO    ] ================================================
[2026-08-31 18:45:02,234.234 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:45:02
[2026-08-31 18:45:03,007.007 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:45:03,376.376 INFO    ] Initializing speech engine...
[2026-08-31 18:45:03,386.386 INFO    ] 2026-08-31 18:45:03
[2026-08-31 18:45:03,679.679 INFO    ] 2026-08-31 18:45:03
[2026-08-31 18:45:03,792.792 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:45:04,012.012 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:45:04,020.020 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:45:04,233.233 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:45:04,256.256 INFO    ] time= 31/08/2026 18:45:04
[2026-08-31 18:45:04,272.272 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:45:04,281.281 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:45:04,405.405 INFO    ] No existing commands found in stream
[2026-08-31 18:45:09,430.430 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:45:09,433.433 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-08-31 18:45:12,939.939 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 18:45:12,942.942 INFO    ] Checking for system updates...
[2026-08-31 18:45:12,978.978 INFO    ] 200
[2026-08-31 18:45:12,981.981 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:45:13,033.033 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:45:13,036.036 INFO    ] No update needed
[2026-08-31 18:45:13,039.039 INFO    ] Checking for camera pi updates...
[2026-08-31 18:45:13,076.076 INFO    ] 200
[2026-08-31 18:45:13,079.079 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:45:13,124.124 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:45:13,214.214 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:45:13,217.217 INFO    ] No camera update needed
[2026-08-31 18:45:13,220.220 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:45:13,222.222 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:45:13,228.228 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:45:13,233.233 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:45:15,275.275 INFO    ] ================================================
[2026-08-31 18:45:15,291.291 INFO    ] Launching Daemon at Mon Aug 31 18:45:15 IST 2026
[2026-08-31 18:45:15,308.308 INFO    ] ================================================
[2026-08-31 18:45:15,886.886 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:45:15
[2026-08-31 18:45:16,479.479 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:45:16,752.752 INFO    ] Initializing speech engine...
[2026-08-31 18:45:16,761.761 INFO    ] 2026-08-31 18:45:16
[2026-08-31 18:45:17,008.008 INFO    ] 2026-08-31 18:45:17
[2026-08-31 18:45:17,044.044 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:45:17,240.240 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:45:17,280.280 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:45:17,435.435 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:45:17,482.482 INFO    ] time= 31/08/2026 18:45:17
[2026-08-31 18:45:17,541.541 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:45:17,568.568 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:45:17,717.717 INFO    ] No existing commands found in stream
[2026-08-31 18:45:22,736.736 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:45:22,739.739 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-08-31 18:45:25,737.737 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 18:45:25,740.740 INFO    ] Checking for system updates...
[2026-08-31 18:45:25,775.775 INFO    ] 200
[2026-08-31 18:45:25,777.777 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:45:25,830.830 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:45:25,832.832 INFO    ] No update needed
[2026-08-31 18:45:25,835.835 INFO    ] Checking for camera pi updates...
[2026-08-31 18:45:25,868.868 INFO    ] 200
[2026-08-31 18:45:25,870.870 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:45:25,910.910 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:45:25,992.992 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:45:25,994.994 INFO    ] No camera update needed
[2026-08-31 18:45:25,997.997 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:45:25,999.999 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:45:26,004.004 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:45:26,009.009 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:45:28,050.050 INFO    ] ================================================
[2026-08-31 18:45:28,065.065 INFO    ] Launching Daemon at Mon Aug 31 18:45:28 IST 2026
[2026-08-31 18:45:28,076.076 INFO    ] ================================================
[2026-08-31 18:45:28,704.704 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:45:28
[2026-08-31 18:45:29,354.354 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:45:29,650.650 INFO    ] Initializing speech engine...
[2026-08-31 18:45:29,658.658 INFO    ] 2026-08-31 18:45:29
[2026-08-31 18:45:29,929.929 INFO    ] 2026-08-31 18:45:29
[2026-08-31 18:45:29,989.989 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:45:30,249.249 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:45:30,265.265 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:45:30,488.488 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:45:30,497.497 INFO    ] time= 31/08/2026 18:45:30
[2026-08-31 18:45:30,512.512 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:45:30,523.523 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:45:30,682.682 INFO    ] No existing commands found in stream
[2026-08-31 18:45:35,713.713 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:45:35,716.716 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-08-31 18:45:37,259.259 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 18:45:37,262.262 INFO    ] Checking for system updates...
[2026-08-31 18:45:37,299.299 INFO    ] 200
[2026-08-31 18:45:37,301.301 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:45:37,358.358 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:45:37,360.360 INFO    ] No update needed
[2026-08-31 18:45:37,362.362 INFO    ] Checking for camera pi updates...
[2026-08-31 18:45:37,396.396 INFO    ] 200
[2026-08-31 18:45:37,398.398 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:45:37,443.443 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:45:37,529.529 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:45:37,532.532 INFO    ] No camera update needed
[2026-08-31 18:45:37,535.535 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:45:37,537.537 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:45:37,544.544 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:45:37,549.549 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:45:39,591.591 INFO    ] ================================================
[2026-08-31 18:45:39,606.606 INFO    ] Launching Daemon at Mon Aug 31 18:45:39 IST 2026
[2026-08-31 18:45:39,617.617 INFO    ] ================================================
[2026-08-31 18:45:40,187.187 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:45:40
[2026-08-31 18:45:40,777.777 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:45:41,031.031 INFO    ] Initializing speech engine...
[2026-08-31 18:45:41,037.037 INFO    ] 2026-08-31 18:45:41
[2026-08-31 18:45:41,329.329 INFO    ] 2026-08-31 18:45:41
[2026-08-31 18:45:41,355.355 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:45:41,584.584 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:45:41,608.608 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:45:41,809.809 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:45:41,818.818 INFO    ] time= 31/08/2026 18:45:41
[2026-08-31 18:45:41,878.878 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:45:41,932.932 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:45:42,021.021 INFO    ] No existing commands found in stream
[2026-08-31 18:45:47,034.034 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:45:47,041.041 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-08-31 18:45:48,216.216 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 18:45:48,219.219 INFO    ] Checking for system updates...
[2026-08-31 18:45:48,255.255 INFO    ] 200
[2026-08-31 18:45:48,258.258 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:45:48,311.311 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:45:48,313.313 INFO    ] No update needed
[2026-08-31 18:45:48,315.315 INFO    ] Checking for camera pi updates...
[2026-08-31 18:45:48,349.349 INFO    ] 200
[2026-08-31 18:45:48,351.351 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:45:48,397.397 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:45:48,480.480 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:45:48,483.483 INFO    ] No camera update needed
[2026-08-31 18:45:48,485.485 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:45:48,487.487 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:45:48,493.493 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:45:48,498.498 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:45:50,539.539 INFO    ] ================================================
[2026-08-31 18:45:50,554.554 INFO    ] Launching Daemon at Mon Aug 31 18:45:50 IST 2026
[2026-08-31 18:45:50,565.565 INFO    ] ================================================
[2026-08-31 18:45:51,218.218 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:45:51
[2026-08-31 18:45:51,888.888 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:45:52,190.190 INFO    ] Initializing speech engine...
[2026-08-31 18:45:52,203.203 INFO    ] 2026-08-31 18:45:52
[2026-08-31 18:45:52,471.471 INFO    ] 2026-08-31 18:45:52
[2026-08-31 18:45:52,529.529 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:45:52,777.777 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:45:52,783.783 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:45:52,995.995 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:45:53,018.018 INFO    ] time= 31/08/2026 18:45:53
[2026-08-31 18:45:53,036.036 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:45:53,045.045 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:45:53,164.164 INFO    ] No existing commands found in stream
[2026-08-31 18:45:58,185.185 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:45:58,189.189 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-08-31 18:46:01,159.159 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 18:46:01,162.162 INFO    ] Checking for system updates...
[2026-08-31 18:46:01,203.203 INFO    ] 200
[2026-08-31 18:46:01,206.206 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:46:01,261.261 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:46:01,264.264 INFO    ] No update needed
[2026-08-31 18:46:01,267.267 INFO    ] Checking for camera pi updates...
[2026-08-31 18:46:01,302.302 INFO    ] 200
[2026-08-31 18:46:01,305.305 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:46:01,346.346 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:46:01,451.451 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:46:01,454.454 INFO    ] No camera update needed
[2026-08-31 18:46:01,456.456 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:46:01,459.459 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:46:01,466.466 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:46:01,472.472 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:46:03,515.515 INFO    ] ================================================
[2026-08-31 18:46:03,531.531 INFO    ] Launching Daemon at Mon Aug 31 18:46:03 IST 2026
[2026-08-31 18:46:03,542.542 INFO    ] ================================================
[2026-08-31 18:46:04,108.108 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:46:04
[2026-08-31 18:46:04,692.692 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:46:04,950.950 INFO    ] Initializing speech engine...
[2026-08-31 18:46:04,955.955 INFO    ] 2026-08-31 18:46:04
[2026-08-31 18:46:05,248.248 INFO    ] 2026-08-31 18:46:05
[2026-08-31 18:46:05,284.284 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:46:05,506.506 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:46:05,521.521 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:46:05,735.735 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:46:05,764.764 INFO    ] time= 31/08/2026 18:46:05
[2026-08-31 18:46:05,813.813 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:46:05,883.883 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:46:06,029.029 INFO    ] No existing commands found in stream
[2026-08-31 18:46:11,054.054 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:46:11,057.057 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-08-31 18:46:13,676.676 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 18:46:13,678.678 INFO    ] Checking for system updates...
[2026-08-31 18:46:13,713.713 INFO    ] 200
[2026-08-31 18:46:13,716.716 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:46:13,771.771 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:46:13,773.773 INFO    ] No update needed
[2026-08-31 18:46:13,775.775 INFO    ] Checking for camera pi updates...
[2026-08-31 18:46:13,809.809 INFO    ] 200
[2026-08-31 18:46:13,812.812 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:46:13,851.851 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:46:13,953.953 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:46:13,956.956 INFO    ] No camera update needed
[2026-08-31 18:46:13,958.958 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:46:13,961.961 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:46:13,966.966 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:46:13,971.971 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:46:16,013.013 INFO    ] ================================================
[2026-08-31 18:46:16,028.028 INFO    ] Launching Daemon at Mon Aug 31 18:46:16 IST 2026
[2026-08-31 18:46:16,039.039 INFO    ] ================================================
[2026-08-31 18:46:16,607.607 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:46:16
[2026-08-31 18:46:17,196.196 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:46:17,467.467 INFO    ] Initializing speech engine...
[2026-08-31 18:46:17,482.482 INFO    ] 2026-08-31 18:46:17
[2026-08-31 18:46:17,753.753 INFO    ] 2026-08-31 18:46:17
[2026-08-31 18:46:17,791.791 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:46:17,987.987 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:46:18,003.003 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:46:18,170.170 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:46:18,176.176 INFO    ] time= 31/08/2026 18:46:18
[2026-08-31 18:46:18,182.182 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:46:18,248.248 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:46:18,367.367 INFO    ] No existing commands found in stream
[2026-08-31 18:46:23,392.392 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:46:23,395.395 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-08-31 18:46:26,506.506 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 18:46:26,509.509 INFO    ] Checking for system updates...
[2026-08-31 18:46:26,551.551 INFO    ] 200
[2026-08-31 18:46:26,553.553 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:46:26,611.611 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:46:26,614.614 INFO    ] No update needed
[2026-08-31 18:46:26,616.616 INFO    ] Checking for camera pi updates...
[2026-08-31 18:46:26,653.653 INFO    ] 200
[2026-08-31 18:46:26,655.655 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:46:26,701.701 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:46:26,884.884 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:46:26,886.886 INFO    ] No camera update needed
[2026-08-31 18:46:26,889.889 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:46:26,892.892 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:46:26,897.897 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:46:26,903.903 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:46:28,946.946 INFO    ] ================================================
[2026-08-31 18:46:28,961.961 INFO    ] Launching Daemon at Mon Aug 31 18:46:28 IST 2026
[2026-08-31 18:46:28,972.972 INFO    ] ================================================
[2026-08-31 18:46:29,542.542 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:46:29
[2026-08-31 18:46:30,125.125 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:46:30,380.380 INFO    ] Initializing speech engine...
[2026-08-31 18:46:30,387.387 INFO    ] 2026-08-31 18:46:30
[2026-08-31 18:46:30,680.680 INFO    ] 2026-08-31 18:46:30
[2026-08-31 18:46:30,719.719 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:46:31,009.009 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:46:31,019.019 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:46:31,172.172 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:46:31,199.199 INFO    ] time= 31/08/2026 18:46:31
[2026-08-31 18:46:31,248.248 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:46:31,297.297 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:46:31,381.381 INFO    ] No existing commands found in stream
[2026-08-31 18:46:36,393.393 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:46:36,396.396 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-08-31 18:46:39,377.377 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 18:46:39,380.380 INFO    ] Checking for system updates...
[2026-08-31 18:46:39,416.416 INFO    ] 200
[2026-08-31 18:46:39,419.419 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:46:39,471.471 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:46:39,473.473 INFO    ] No update needed
[2026-08-31 18:46:39,476.476 INFO    ] Checking for camera pi updates...
[2026-08-31 18:46:39,515.515 INFO    ] 200
[2026-08-31 18:46:39,518.518 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:46:39,558.558 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:46:39,655.655 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:46:39,657.657 INFO    ] No camera update needed
[2026-08-31 18:46:39,660.660 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:46:39,662.662 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:46:39,667.667 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:46:39,672.672 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:46:41,715.715 INFO    ] ================================================
[2026-08-31 18:46:41,731.731 INFO    ] Launching Daemon at Mon Aug 31 18:46:41 IST 2026
[2026-08-31 18:46:41,743.743 INFO    ] ================================================
[2026-08-31 18:46:42,330.330 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:46:42
[2026-08-31 18:46:42,932.932 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:46:43,207.207 INFO    ] Initializing speech engine...
[2026-08-31 18:46:43,216.216 INFO    ] 2026-08-31 18:46:43
[2026-08-31 18:46:43,465.465 INFO    ] 2026-08-31 18:46:43
[2026-08-31 18:46:43,500.500 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:46:43,789.789 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:46:43,799.799 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:46:43,951.951 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:46:43,958.958 INFO    ] time= 31/08/2026 18:46:43
[2026-08-31 18:46:44,013.013 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:46:44,062.062 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:46:44,149.149 INFO    ] No existing commands found in stream
[2026-08-31 18:46:49,168.168 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:46:49,171.171 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-08-31 18:46:50,271.271 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 18:46:50,273.273 INFO    ] Checking for system updates...
[2026-08-31 18:46:50,309.309 INFO    ] 200
[2026-08-31 18:46:50,311.311 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:46:50,368.368 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:46:50,370.370 INFO    ] No update needed
[2026-08-31 18:46:50,373.373 INFO    ] Checking for camera pi updates...
[2026-08-31 18:46:50,410.410 INFO    ] 200
[2026-08-31 18:46:50,412.412 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:46:50,453.453 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:46:50,536.536 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:46:50,538.538 INFO    ] No camera update needed
[2026-08-31 18:46:50,541.541 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:46:50,543.543 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:46:50,548.548 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:46:50,553.553 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:46:52,595.595 INFO    ] ================================================
[2026-08-31 18:46:52,610.610 INFO    ] Launching Daemon at Mon Aug 31 18:46:52 IST 2026
[2026-08-31 18:46:52,622.622 INFO    ] ================================================
[2026-08-31 18:46:53,206.206 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:46:53
[2026-08-31 18:46:53,804.804 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:46:54,082.082 INFO    ] Initializing speech engine...
[2026-08-31 18:46:54,091.091 INFO    ] 2026-08-31 18:46:54
[2026-08-31 18:46:54,351.351 INFO    ] 2026-08-31 18:46:54
[2026-08-31 18:46:54,404.404 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:46:54,631.631 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:46:54,636.636 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:46:54,848.848 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:46:54,892.892 INFO    ] time= 31/08/2026 18:46:54
[2026-08-31 18:46:54,898.898 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:46:54,918.918 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:46:55,020.020 INFO    ] No existing commands found in stream
[2026-08-31 18:47:00,051.051 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:47:00,053.053 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-08-31 18:47:01,633.633 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 18:47:01,642.642 INFO    ] Checking for system updates...
[2026-08-31 18:47:01,706.706 INFO    ] 200
[2026-08-31 18:47:01,710.710 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:47:01,798.798 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:47:01,801.801 INFO    ] No update needed
[2026-08-31 18:47:01,810.810 INFO    ] Checking for camera pi updates...
[2026-08-31 18:47:01,876.876 INFO    ] 200
[2026-08-31 18:47:01,892.892 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:47:01,944.944 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:47:02,011.011 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:47:02,014.014 INFO    ] No camera update needed
[2026-08-31 18:47:02,017.017 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:47:02,020.020 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:47:02,027.027 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:47:02,033.033 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:47:04,078.078 INFO    ] ================================================
[2026-08-31 18:47:04,094.094 INFO    ] Launching Daemon at Mon Aug 31 18:47:04 IST 2026
[2026-08-31 18:47:04,104.104 INFO    ] ================================================
[2026-08-31 18:47:04,685.685 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:47:04
[2026-08-31 18:47:05,283.283 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:47:05,557.557 INFO    ] Initializing speech engine...
[2026-08-31 18:47:05,566.566 INFO    ] 2026-08-31 18:47:05
[2026-08-31 18:47:05,820.820 INFO    ] 2026-08-31 18:47:05
[2026-08-31 18:47:05,880.880 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:47:06,071.071 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:47:06,117.117 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:47:06,277.277 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:47:06,285.285 INFO    ] time= 31/08/2026 18:47:06
[2026-08-31 18:47:06,344.344 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:47:06,389.389 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:47:06,509.509 INFO    ] No existing commands found in stream
[2026-08-31 18:47:11,521.521 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:47:11,524.524 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-08-31 18:47:14,636.636 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 18:47:14,638.638 INFO    ] Checking for system updates...
[2026-08-31 18:47:14,674.674 INFO    ] 200
[2026-08-31 18:47:14,677.677 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:47:14,729.729 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:47:14,732.732 INFO    ] No update needed
[2026-08-31 18:47:14,734.734 INFO    ] Checking for camera pi updates...
[2026-08-31 18:47:14,768.768 INFO    ] 200
[2026-08-31 18:47:14,770.770 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:47:14,813.813 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:47:14,886.886 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:47:14,888.888 INFO    ] No camera update needed
[2026-08-31 18:47:14,891.891 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:47:14,893.893 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:47:14,899.899 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:47:14,904.904 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:47:16,944.944 INFO    ] ================================================
[2026-08-31 18:47:16,959.959 INFO    ] Launching Daemon at Mon Aug 31 18:47:16 IST 2026
[2026-08-31 18:47:16,970.970 INFO    ] ================================================
[2026-08-31 18:47:17,556.556 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:47:17
[2026-08-31 18:47:18,160.160 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:47:18,440.440 INFO    ] Initializing speech engine...
[2026-08-31 18:47:18,449.449 INFO    ] 2026-08-31 18:47:18
[2026-08-31 18:47:18,710.710 INFO    ] 2026-08-31 18:47:18
[2026-08-31 18:47:18,761.761 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:47:19,014.014 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:47:19,019.019 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:47:19,233.233 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:47:19,257.257 INFO    ] time= 31/08/2026 18:47:19
[2026-08-31 18:47:19,276.276 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:47:19,304.304 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:47:19,411.411 INFO    ] No existing commands found in stream
[2026-08-31 18:47:24,431.431 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:47:24,434.434 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-08-31 18:47:27,098.098 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 18:47:27,100.100 INFO    ] Checking for system updates...
[2026-08-31 18:47:27,137.137 INFO    ] 200
[2026-08-31 18:47:27,140.140 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:47:27,200.200 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:47:27,202.202 INFO    ] No update needed
[2026-08-31 18:47:27,205.205 INFO    ] Checking for camera pi updates...
[2026-08-31 18:47:27,239.239 INFO    ] 200
[2026-08-31 18:47:27,242.242 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:47:27,287.287 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:47:27,392.392 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:47:27,394.394 INFO    ] No camera update needed
[2026-08-31 18:47:27,397.397 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:47:27,399.399 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:47:27,405.405 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:47:27,410.410 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:47:29,452.452 INFO    ] ================================================
[2026-08-31 18:47:29,467.467 INFO    ] Launching Daemon at Mon Aug 31 18:47:29 IST 2026
[2026-08-31 18:47:29,478.478 INFO    ] ================================================
[2026-08-31 18:47:30,056.056 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:47:30
[2026-08-31 18:47:30,655.655 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:47:30,932.932 INFO    ] Initializing speech engine...
[2026-08-31 18:47:30,941.941 INFO    ] 2026-08-31 18:47:30
[2026-08-31 18:47:31,200.200 INFO    ] 2026-08-31 18:47:31
[2026-08-31 18:47:31,254.254 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:47:31,502.502 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:47:31,510.510 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:47:31,718.718 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:47:31,761.761 INFO    ] time= 31/08/2026 18:47:31
[2026-08-31 18:47:31,779.779 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:47:31,789.789 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:47:31,906.906 INFO    ] No existing commands found in stream
[2026-08-31 18:47:36,929.929 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:47:36,932.932 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-08-31 18:47:38,915.915 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 18:47:38,918.918 INFO    ] Checking for system updates...
[2026-08-31 18:47:38,955.955 INFO    ] 200
[2026-08-31 18:47:38,957.957 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:47:39,013.013 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:47:39,016.016 INFO    ] No update needed
[2026-08-31 18:47:39,018.018 INFO    ] Checking for camera pi updates...
[2026-08-31 18:47:39,053.053 INFO    ] 200
[2026-08-31 18:47:39,055.055 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:47:39,095.095 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:47:39,180.180 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:47:39,182.182 INFO    ] No camera update needed
[2026-08-31 18:47:39,184.184 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:47:39,187.187 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:47:39,192.192 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:47:39,197.197 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:47:41,238.238 INFO    ] ================================================
[2026-08-31 18:47:41,254.254 INFO    ] Launching Daemon at Mon Aug 31 18:47:41 IST 2026
[2026-08-31 18:47:41,265.265 INFO    ] ================================================
[2026-08-31 18:47:41,830.830 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:47:41
[2026-08-31 18:47:42,414.414 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:47:42,657.657 INFO    ] Initializing speech engine...
[2026-08-31 18:47:42,665.665 INFO    ] 2026-08-31 18:47:42
[2026-08-31 18:47:42,935.935 INFO    ] 2026-08-31 18:47:42
[2026-08-31 18:47:42,970.970 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:47:43,220.220 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:47:43,230.230 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:47:43,385.385 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:47:43,455.455 INFO    ] time= 31/08/2026 18:47:43
[2026-08-31 18:47:43,497.497 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:47:43,503.503 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:47:43,622.622 INFO    ] No existing commands found in stream
[2026-08-31 18:47:48,653.653 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:47:48,655.655 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-08-31 18:47:50,993.993 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 18:47:50,996.996 INFO    ] Checking for system updates...
[2026-08-31 18:47:51,033.033 INFO    ] 200
[2026-08-31 18:47:51,036.036 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:47:51,089.089 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:47:51,092.092 INFO    ] No update needed
[2026-08-31 18:47:51,095.095 INFO    ] Checking for camera pi updates...
[2026-08-31 18:47:51,129.129 INFO    ] 200
[2026-08-31 18:47:51,132.132 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:47:51,174.174 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:47:51,258.258 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:47:51,261.261 INFO    ] No camera update needed
[2026-08-31 18:47:51,263.263 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:47:51,266.266 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:47:51,273.273 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:47:51,278.278 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:47:53,320.320 INFO    ] ================================================
[2026-08-31 18:47:53,336.336 INFO    ] Launching Daemon at Mon Aug 31 18:47:53 IST 2026
[2026-08-31 18:47:53,347.347 INFO    ] ================================================
[2026-08-31 18:47:54,008.008 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:47:54
[2026-08-31 18:47:54,693.693 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:47:55,003.003 INFO    ] Initializing speech engine...
[2026-08-31 18:47:55,014.014 INFO    ] 2026-08-31 18:47:55
[2026-08-31 18:47:55,331.331 INFO    ] 2026-08-31 18:47:55
[2026-08-31 18:47:55,414.414 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:47:55,635.635 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:47:55,689.689 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:47:55,874.874 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:47:55,884.884 INFO    ] time= 31/08/2026 18:47:55
[2026-08-31 18:47:55,893.893 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:47:55,949.949 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:47:56,091.091 INFO    ] No existing commands found in stream
[2026-08-31 18:48:01,106.106 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:48:01,110.110 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-08-31 18:48:03,834.834 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 18:48:03,837.837 INFO    ] Checking for system updates...
[2026-08-31 18:48:03,878.878 INFO    ] 200
[2026-08-31 18:48:03,881.881 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:48:03,936.936 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:48:03,939.939 INFO    ] No update needed
[2026-08-31 18:48:03,942.942 INFO    ] Checking for camera pi updates...
[2026-08-31 18:48:03,977.977 INFO    ] 200
[2026-08-31 18:48:03,980.980 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:48:04,021.021 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:48:04,111.111 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:48:04,114.114 INFO    ] No camera update needed
[2026-08-31 18:48:04,117.117 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:48:04,120.120 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:48:04,126.126 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:48:04,131.131 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:48:06,173.173 INFO    ] ================================================
[2026-08-31 18:48:06,189.189 INFO    ] Launching Daemon at Mon Aug 31 18:48:06 IST 2026
[2026-08-31 18:48:06,201.201 INFO    ] ================================================
[2026-08-31 18:48:06,815.815 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:48:06
[2026-08-31 18:48:07,406.406 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:48:07,670.670 INFO    ] Initializing speech engine...
[2026-08-31 18:48:07,695.695 INFO    ] 2026-08-31 18:48:07
[2026-08-31 18:48:07,969.969 INFO    ] 2026-08-31 18:48:07
[2026-08-31 18:48:08,006.006 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:48:08,202.202 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:48:08,217.217 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:48:08,377.377 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:48:08,385.385 INFO    ] time= 31/08/2026 18:48:08
[2026-08-31 18:48:08,390.390 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:48:08,397.397 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:48:08,470.470 INFO    ] No existing commands found in stream
[2026-08-31 18:48:13,482.482 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:48:13,485.485 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-08-31 18:48:14,909.909 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 18:48:14,912.912 INFO    ] Checking for system updates...
[2026-08-31 18:48:14,949.949 INFO    ] 200
[2026-08-31 18:48:14,951.951 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:48:15,003.003 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:48:15,006.006 INFO    ] No update needed
[2026-08-31 18:48:15,008.008 INFO    ] Checking for camera pi updates...
[2026-08-31 18:48:15,042.042 INFO    ] 200
[2026-08-31 18:48:15,045.045 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:48:15,084.084 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:48:15,169.169 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:48:15,171.171 INFO    ] No camera update needed
[2026-08-31 18:48:15,174.174 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:48:15,176.176 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:48:15,181.181 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:48:15,186.186 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:48:17,227.227 INFO    ] ================================================
[2026-08-31 18:48:17,242.242 INFO    ] Launching Daemon at Mon Aug 31 18:48:17 IST 2026
[2026-08-31 18:48:17,254.254 INFO    ] ================================================
[2026-08-31 18:48:17,820.820 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:48:17
[2026-08-31 18:48:18,404.404 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:48:18,662.662 INFO    ] Initializing speech engine...
[2026-08-31 18:48:18,668.668 INFO    ] 2026-08-31 18:48:18
[2026-08-31 18:48:18,964.964 INFO    ] 2026-08-31 18:48:18
[2026-08-31 18:48:19,002.002 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:48:19,229.229 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:48:19,258.258 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:48:19,439.439 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:48:19,481.481 INFO    ] time= 31/08/2026 18:48:19
[2026-08-31 18:48:19,525.525 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:48:19,573.573 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:48:19,700.700 INFO    ] No existing commands found in stream
[2026-08-31 18:48:24,727.727 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:48:24,730.730 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-08-31 18:48:26,815.815 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 18:48:26,818.818 INFO    ] Checking for system updates...
[2026-08-31 18:48:26,853.853 INFO    ] 200
[2026-08-31 18:48:26,856.856 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:48:26,908.908 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:48:26,910.910 INFO    ] No update needed
[2026-08-31 18:48:26,912.912 INFO    ] Checking for camera pi updates...
[2026-08-31 18:48:26,945.945 INFO    ] 200
[2026-08-31 18:48:26,948.948 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:48:26,990.990 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:48:27,073.073 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:48:27,075.075 INFO    ] No camera update needed
[2026-08-31 18:48:27,078.078 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:48:27,080.080 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:48:27,085.085 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:48:27,090.090 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:48:29,130.130 INFO    ] ================================================
[2026-08-31 18:48:29,145.145 INFO    ] Launching Daemon at Mon Aug 31 18:48:29 IST 2026
[2026-08-31 18:48:29,157.157 INFO    ] ================================================
[2026-08-31 18:48:29,753.753 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:48:29
[2026-08-31 18:48:30,411.411 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:48:30,720.720 INFO    ] Initializing speech engine...
[2026-08-31 18:48:30,734.734 INFO    ] 2026-08-31 18:48:30
[2026-08-31 18:48:31,045.045 INFO    ] 2026-08-31 18:48:31
[2026-08-31 18:48:31,126.126 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:48:31,340.340 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:48:31,345.345 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:48:31,521.521 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:48:31,547.547 INFO    ] time= 31/08/2026 18:48:31
[2026-08-31 18:48:31,565.565 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:48:31,598.598 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:48:31,718.718 INFO    ] No existing commands found in stream
[2026-08-31 18:48:36,736.736 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:48:36,739.739 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-08-31 18:48:39,678.678 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 18:48:39,681.681 INFO    ] Checking for system updates...
[2026-08-31 18:48:39,719.719 INFO    ] 200
[2026-08-31 18:48:39,721.721 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:48:39,774.774 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:48:39,776.776 INFO    ] No update needed
[2026-08-31 18:48:39,779.779 INFO    ] Checking for camera pi updates...
[2026-08-31 18:48:39,813.813 INFO    ] 200
[2026-08-31 18:48:39,816.816 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:48:39,856.856 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:48:39,937.937 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:48:39,940.940 INFO    ] No camera update needed
[2026-08-31 18:48:39,942.942 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:48:39,944.944 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:48:39,950.950 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:48:39,954.954 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:48:42,995.995 INFO    ] ================================================
[2026-08-31 18:48:42,011.011 INFO    ] Launching Daemon at Mon Aug 31 18:48:42 IST 2026
[2026-08-31 18:48:42,022.022 INFO    ] ================================================
[2026-08-31 18:48:42,665.665 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:48:42
[2026-08-31 18:48:43,246.246 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:48:43,520.520 INFO    ] Initializing speech engine...
[2026-08-31 18:48:43,526.526 INFO    ] 2026-08-31 18:48:43
[2026-08-31 18:48:43,774.774 INFO    ] 2026-08-31 18:48:43
[2026-08-31 18:48:43,840.840 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:48:44,067.067 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:48:44,076.076 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:48:44,212.212 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:48:44,272.272 INFO    ] time= 31/08/2026 18:48:44
[2026-08-31 18:48:44,326.326 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:48:44,349.349 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:48:44,476.476 INFO    ] No existing commands found in stream
[2026-08-31 18:48:49,501.501 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:48:49,504.504 INFO    ] Waiting 0.00 seconds before fallback handling...
[2026-08-31 18:48:49,996.996 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 18:48:49,999.999 INFO    ] Checking for system updates...
[2026-08-31 18:48:50,038.038 INFO    ] 200
[2026-08-31 18:48:50,040.040 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:48:50,092.092 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:48:50,095.095 INFO    ] No update needed
[2026-08-31 18:48:50,097.097 INFO    ] Checking for camera pi updates...
[2026-08-31 18:48:50,131.131 INFO    ] 200
[2026-08-31 18:48:50,133.133 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:48:50,177.177 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:48:50,266.266 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:48:50,269.269 INFO    ] No camera update needed
[2026-08-31 18:48:50,271.271 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:48:50,273.273 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:48:50,278.278 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:48:50,283.283 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:48:52,324.324 INFO    ] ================================================
[2026-08-31 18:48:52,340.340 INFO    ] Launching Daemon at Mon Aug 31 18:48:52 IST 2026
[2026-08-31 18:48:52,351.351 INFO    ] ================================================
[2026-08-31 18:48:52,918.918 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:48:52
[2026-08-31 18:48:53,520.520 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:48:53,794.794 INFO    ] Initializing speech engine...
[2026-08-31 18:48:53,803.803 INFO    ] 2026-08-31 18:48:53
[2026-08-31 18:48:54,053.053 INFO    ] 2026-08-31 18:48:54
[2026-08-31 18:48:54,119.119 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:48:54,348.348 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:48:54,354.354 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:48:54,574.574 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:48:54,619.619 INFO    ] time= 31/08/2026 18:48:54
[2026-08-31 18:48:54,625.625 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:48:54,643.643 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:48:54,759.759 INFO    ] No existing commands found in stream
[2026-08-31 18:48:59,784.784 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:48:59,786.786 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-08-31 18:49:03,585.585 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 18:49:03,588.588 INFO    ] Checking for system updates...
[2026-08-31 18:49:03,624.624 INFO    ] 200
[2026-08-31 18:49:03,626.626 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:49:03,680.680 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:49:03,683.683 INFO    ] No update needed
[2026-08-31 18:49:03,685.685 INFO    ] Checking for camera pi updates...
[2026-08-31 18:49:03,722.722 INFO    ] 200
[2026-08-31 18:49:03,724.724 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:49:03,764.764 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:49:03,849.849 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:49:03,852.852 INFO    ] No camera update needed
[2026-08-31 18:49:03,854.854 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:49:03,860.860 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:49:03,866.866 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:49:03,871.871 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:49:05,913.913 INFO    ] ================================================
[2026-08-31 18:49:05,929.929 INFO    ] Launching Daemon at Mon Aug 31 18:49:05 IST 2026
[2026-08-31 18:49:05,940.940 INFO    ] ================================================
[2026-08-31 18:49:06,561.561 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:49:06
[2026-08-31 18:49:07,154.154 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:49:07,421.421 INFO    ] Initializing speech engine...
[2026-08-31 18:49:07,429.429 INFO    ] 2026-08-31 18:49:07
[2026-08-31 18:49:07,685.685 INFO    ] 2026-08-31 18:49:07
[2026-08-31 18:49:07,744.744 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:49:07,971.971 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:49:07,976.976 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:49:08,107.107 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:49:08,154.154 INFO    ] time= 31/08/2026 18:49:08
[2026-08-31 18:49:08,214.214 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:49:08,244.244 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:49:08,302.302 INFO    ] No existing commands found in stream
[2026-08-31 18:49:13,313.313 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:49:13,316.316 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-08-31 18:49:17,182.182 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 18:49:17,185.185 INFO    ] Checking for system updates...
[2026-08-31 18:49:17,224.224 INFO    ] 200
[2026-08-31 18:49:17,227.227 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:49:17,279.279 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:49:17,281.281 INFO    ] No update needed
[2026-08-31 18:49:17,284.284 INFO    ] Checking for camera pi updates...
[2026-08-31 18:49:17,318.318 INFO    ] 200
[2026-08-31 18:49:17,320.320 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:49:17,361.361 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:49:17,453.453 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:49:17,455.455 INFO    ] No camera update needed
[2026-08-31 18:49:17,458.458 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:49:17,460.460 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:49:17,465.465 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:49:17,470.470 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:49:19,514.514 INFO    ] ================================================
[2026-08-31 18:49:19,530.530 INFO    ] Launching Daemon at Mon Aug 31 18:49:19 IST 2026
[2026-08-31 18:49:19,541.541 INFO    ] ================================================
[2026-08-31 18:49:20,122.122 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:49:20
[2026-08-31 18:49:20,719.719 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:49:20,991.991 INFO    ] Initializing speech engine...
[2026-08-31 18:49:21,001.001 INFO    ] 2026-08-31 18:49:20
[2026-08-31 18:49:21,248.248 INFO    ] 2026-08-31 18:49:21
[2026-08-31 18:49:21,283.283 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:49:21,534.534 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:49:21,543.543 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:49:21,676.676 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:49:21,728.728 INFO    ] time= 31/08/2026 18:49:21
[2026-08-31 18:49:21,782.782 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:49:21,811.811 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:49:21,904.904 INFO    ] No existing commands found in stream
[2026-08-31 18:49:26,935.935 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:49:26,938.938 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-08-31 18:49:27,473.473 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 18:49:27,476.476 INFO    ] Checking for system updates...
[2026-08-31 18:49:27,515.515 INFO    ] 200
[2026-08-31 18:49:27,518.518 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:49:27,576.576 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:49:27,579.579 INFO    ] No update needed
[2026-08-31 18:49:27,581.581 INFO    ] Checking for camera pi updates...
[2026-08-31 18:49:27,615.615 INFO    ] 200
[2026-08-31 18:49:27,618.618 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:49:27,659.659 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:49:27,744.744 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:49:27,747.747 INFO    ] No camera update needed
[2026-08-31 18:49:27,750.750 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:49:27,752.752 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:49:27,757.757 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:49:27,762.762 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:49:29,803.803 INFO    ] ================================================
[2026-08-31 18:49:29,819.819 INFO    ] Launching Daemon at Mon Aug 31 18:49:29 IST 2026
[2026-08-31 18:49:29,830.830 INFO    ] ================================================
[2026-08-31 18:49:30,457.457 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:49:30
[2026-08-31 18:49:31,038.038 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:49:31,298.298 INFO    ] Initializing speech engine...
[2026-08-31 18:49:31,317.317 INFO    ] 2026-08-31 18:49:31
[2026-08-31 18:49:31,589.589 INFO    ] 2026-08-31 18:49:31
[2026-08-31 18:49:31,629.629 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:49:31,904.904 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:49:31,913.913 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:49:32,056.056 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:49:32,117.117 INFO    ] time= 31/08/2026 18:49:32
[2026-08-31 18:49:32,178.178 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:49:32,198.198 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:49:32,349.349 INFO    ] No existing commands found in stream
[2026-08-31 18:49:37,371.371 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:49:37,373.373 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-08-31 18:49:41,470.470 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 18:49:41,472.472 INFO    ] Checking for system updates...
[2026-08-31 18:49:41,508.508 INFO    ] 200
[2026-08-31 18:49:41,510.510 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:49:41,573.573 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:49:41,577.577 INFO    ] No update needed
[2026-08-31 18:49:41,579.579 INFO    ] Checking for camera pi updates...
[2026-08-31 18:49:41,634.634 INFO    ] 200
[2026-08-31 18:49:41,642.642 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:49:41,716.716 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:49:41,801.801 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:49:41,804.804 INFO    ] No camera update needed
[2026-08-31 18:49:41,806.806 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:49:41,809.809 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:49:41,814.814 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:49:41,819.819 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:49:43,860.860 INFO    ] ================================================
[2026-08-31 18:49:43,875.875 INFO    ] Launching Daemon at Mon Aug 31 18:49:43 IST 2026
[2026-08-31 18:49:43,885.885 INFO    ] ================================================
[2026-08-31 18:49:44,452.452 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:49:44
[2026-08-31 18:49:45,036.036 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:49:45,293.293 INFO    ] Initializing speech engine...
[2026-08-31 18:49:45,312.312 INFO    ] 2026-08-31 18:49:45
[2026-08-31 18:49:45,565.565 INFO    ] 2026-08-31 18:49:45
[2026-08-31 18:49:45,624.624 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:49:45,850.850 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:49:45,854.854 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:49:46,061.061 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:49:46,110.110 INFO    ] time= 31/08/2026 18:49:46
[2026-08-31 18:49:46,116.116 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:49:46,134.134 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:49:46,266.266 INFO    ] No existing commands found in stream
[2026-08-31 18:49:51,288.288 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:49:51,291.291 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-08-31 18:49:54,381.381 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 18:49:54,384.384 INFO    ] Checking for system updates...
[2026-08-31 18:49:54,421.421 INFO    ] 200
[2026-08-31 18:49:54,423.423 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:49:54,478.478 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:49:54,481.481 INFO    ] No update needed
[2026-08-31 18:49:54,483.483 INFO    ] Checking for camera pi updates...
[2026-08-31 18:49:54,518.518 INFO    ] 200
[2026-08-31 18:49:54,520.520 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:49:54,566.566 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:49:54,653.653 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:49:54,656.656 INFO    ] No camera update needed
[2026-08-31 18:49:54,659.659 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:49:54,661.661 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:49:54,667.667 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:49:54,673.673 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:49:56,714.714 INFO    ] ================================================
[2026-08-31 18:49:56,730.730 INFO    ] Launching Daemon at Mon Aug 31 18:49:56 IST 2026
[2026-08-31 18:49:56,741.741 INFO    ] ================================================
[2026-08-31 18:49:57,325.325 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:49:57
[2026-08-31 18:49:57,940.940 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:49:58,231.231 INFO    ] Initializing speech engine...
[2026-08-31 18:49:58,246.246 INFO    ] 2026-08-31 18:49:58
[2026-08-31 18:49:58,510.510 INFO    ] 2026-08-31 18:49:58
[2026-08-31 18:49:58,545.545 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:49:58,798.798 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:49:58,807.807 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:49:59,026.026 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:49:59,066.066 INFO    ] time= 31/08/2026 18:49:59
[2026-08-31 18:49:59,072.072 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:49:59,090.090 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:49:59,221.221 INFO    ] No existing commands found in stream
[2026-08-31 18:50:04,230.230 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:50:04,233.233 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-08-31 18:50:08,054.054 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 18:50:08,057.057 INFO    ] Checking for system updates...
[2026-08-31 18:50:08,099.099 INFO    ] 200
[2026-08-31 18:50:08,102.102 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:50:08,159.159 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:50:08,161.161 INFO    ] No update needed
[2026-08-31 18:50:08,164.164 INFO    ] Checking for camera pi updates...
[2026-08-31 18:50:08,201.201 INFO    ] 200
[2026-08-31 18:50:08,203.203 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:50:08,252.252 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:50:08,309.309 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:50:08,312.312 INFO    ] No camera update needed
[2026-08-31 18:50:08,315.315 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:50:08,317.317 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:50:08,323.323 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:50:08,329.329 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:50:10,370.370 INFO    ] ================================================
[2026-08-31 18:50:10,385.385 INFO    ] Launching Daemon at Mon Aug 31 18:50:10 IST 2026
[2026-08-31 18:50:10,397.397 INFO    ] ================================================
[2026-08-31 18:50:10,992.992 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:50:10
[2026-08-31 18:50:11,602.602 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:50:11,867.867 INFO    ] Initializing speech engine...
[2026-08-31 18:50:11,900.900 INFO    ] 2026-08-31 18:50:11
[2026-08-31 18:50:12,197.197 INFO    ] 2026-08-31 18:50:12
[2026-08-31 18:50:12,234.234 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:50:12,466.466 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:50:12,528.528 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:50:12,696.696 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:50:12,761.761 INFO    ] time= 31/08/2026 18:50:12
[2026-08-31 18:50:12,805.805 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:50:12,848.848 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:50:12,975.975 INFO    ] No existing commands found in stream
[2026-08-31 18:50:17,990.990 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:50:17,993.993 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-08-31 18:50:19,466.466 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 18:50:19,469.469 INFO    ] Checking for system updates...
[2026-08-31 18:50:19,505.505 INFO    ] 200
[2026-08-31 18:50:19,507.507 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:50:19,560.560 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:50:19,563.563 INFO    ] No update needed
[2026-08-31 18:50:19,565.565 INFO    ] Checking for camera pi updates...
[2026-08-31 18:50:19,599.599 INFO    ] 200
[2026-08-31 18:50:19,601.601 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:50:19,642.642 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:50:19,725.725 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:50:19,728.728 INFO    ] No camera update needed
[2026-08-31 18:50:19,730.730 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:50:19,733.733 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:50:19,738.738 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:50:19,743.743 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:50:21,784.784 INFO    ] ================================================
[2026-08-31 18:50:21,799.799 INFO    ] Launching Daemon at Mon Aug 31 18:50:21 IST 2026
[2026-08-31 18:50:21,810.810 INFO    ] ================================================
[2026-08-31 18:50:22,416.416 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:50:22
[2026-08-31 18:50:23,012.012 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:50:23,289.289 INFO    ] Initializing speech engine...
[2026-08-31 18:50:23,295.295 INFO    ] 2026-08-31 18:50:23
[2026-08-31 18:50:23,555.555 INFO    ] 2026-08-31 18:50:23
[2026-08-31 18:50:23,611.611 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:50:23,836.836 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:50:23,841.841 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:50:23,980.980 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:50:24,046.046 INFO    ] time= 31/08/2026 18:50:23
[2026-08-31 18:50:24,102.102 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:50:24,109.109 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:50:24,252.252 INFO    ] No existing commands found in stream
[2026-08-31 18:50:29,266.266 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:50:29,269.269 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-08-31 18:50:32,905.905 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 18:50:32,907.907 INFO    ] Checking for system updates...
[2026-08-31 18:50:32,943.943 INFO    ] 200
[2026-08-31 18:50:32,946.946 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:50:32,998.998 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:50:33,000.000 INFO    ] No update needed
[2026-08-31 18:50:33,003.003 INFO    ] Checking for camera pi updates...
[2026-08-31 18:50:33,036.036 INFO    ] 200
[2026-08-31 18:50:33,038.038 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:50:33,078.078 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:50:33,131.131 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:50:33,133.133 INFO    ] No camera update needed
[2026-08-31 18:50:33,135.135 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:50:33,138.138 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:50:33,143.143 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:50:33,148.148 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:50:35,189.189 INFO    ] ================================================
[2026-08-31 18:50:35,203.203 INFO    ] Launching Daemon at Mon Aug 31 18:50:35 IST 2026
[2026-08-31 18:50:35,214.214 INFO    ] ================================================
[2026-08-31 18:50:35,780.780 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:50:35
[2026-08-31 18:50:36,363.363 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:50:36,623.623 INFO    ] Initializing speech engine...
[2026-08-31 18:50:36,641.641 INFO    ] 2026-08-31 18:50:36
[2026-08-31 18:50:36,893.893 INFO    ] 2026-08-31 18:50:36
[2026-08-31 18:50:36,930.930 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:50:37,191.191 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:50:37,197.197 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:50:37,331.331 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:50:37,368.368 INFO    ] time= 31/08/2026 18:50:37
[2026-08-31 18:50:37,417.417 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:50:37,468.468 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:50:37,586.586 INFO    ] No existing commands found in stream
[2026-08-31 18:50:42,608.608 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:50:42,611.611 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-08-31 18:50:44,516.516 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 18:50:44,518.518 INFO    ] Checking for system updates...
[2026-08-31 18:50:44,554.554 INFO    ] 200
[2026-08-31 18:50:44,556.556 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:50:44,613.613 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:50:44,616.616 INFO    ] No update needed
[2026-08-31 18:50:44,618.618 INFO    ] Checking for camera pi updates...
[2026-08-31 18:50:44,651.651 INFO    ] 200
[2026-08-31 18:50:44,654.654 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:50:44,694.694 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:50:44,863.863 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:50:44,866.866 INFO    ] No camera update needed
[2026-08-31 18:50:44,868.868 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:50:44,871.871 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:50:44,876.876 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:50:44,881.881 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:50:46,923.923 INFO    ] ================================================
[2026-08-31 18:50:46,939.939 INFO    ] Launching Daemon at Mon Aug 31 18:50:46 IST 2026
[2026-08-31 18:50:46,949.949 INFO    ] ================================================
[2026-08-31 18:50:47,589.589 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:50:47
[2026-08-31 18:50:48,247.247 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:50:48,546.546 INFO    ] Initializing speech engine...
[2026-08-31 18:50:48,555.555 INFO    ] 2026-08-31 18:50:48
[2026-08-31 18:50:48,828.828 INFO    ] 2026-08-31 18:50:48
[2026-08-31 18:50:48,885.885 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:50:49,117.117 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:50:49,125.125 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:50:49,349.349 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:50:49,388.388 INFO    ] time= 31/08/2026 18:50:49
[2026-08-31 18:50:49,394.394 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:50:49,413.413 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:50:49,543.543 INFO    ] No existing commands found in stream
[2026-08-31 18:50:54,559.559 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:50:54,563.563 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-08-31 18:50:57,021.021 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 18:50:57,024.024 INFO    ] Checking for system updates...
[2026-08-31 18:50:57,059.059 INFO    ] 200
[2026-08-31 18:50:57,062.062 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:50:57,128.128 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:50:57,130.130 INFO    ] No update needed
[2026-08-31 18:50:57,132.132 INFO    ] Checking for camera pi updates...
[2026-08-31 18:50:57,166.166 INFO    ] 200
[2026-08-31 18:50:57,168.168 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:50:57,209.209 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:50:57,305.305 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:50:57,308.308 INFO    ] No camera update needed
[2026-08-31 18:50:57,310.310 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:50:57,312.312 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:50:57,318.318 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:50:57,323.323 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:50:59,363.363 INFO    ] ================================================
[2026-08-31 18:50:59,379.379 INFO    ] Launching Daemon at Mon Aug 31 18:50:59 IST 2026
[2026-08-31 18:50:59,390.390 INFO    ] ================================================
[2026-08-31 18:51:00,030.030 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:51:00
[2026-08-31 18:51:00,691.691 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:51:00,987.987 INFO    ] Initializing speech engine...
[2026-08-31 18:51:00,994.994 INFO    ] 2026-08-31 18:51:00
[2026-08-31 18:51:01,281.281 INFO    ] 2026-08-31 18:51:01
[2026-08-31 18:51:01,336.336 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:51:01,547.547 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:51:01,550.550 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:51:01,702.702 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:51:01,706.706 INFO    ] time= 31/08/2026 18:51:01
[2026-08-31 18:51:01,739.739 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:51:01,754.754 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:51:01,903.903 INFO    ] No existing commands found in stream
[2026-08-31 18:51:06,914.914 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:51:06,916.916 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-08-31 18:51:10,981.981 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 18:51:10,984.984 INFO    ] Checking for system updates...
[2026-08-31 18:51:11,020.020 INFO    ] 200
[2026-08-31 18:51:11,023.023 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:51:11,075.075 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:51:11,078.078 INFO    ] No update needed
[2026-08-31 18:51:11,080.080 INFO    ] Checking for camera pi updates...
[2026-08-31 18:51:11,114.114 INFO    ] 200
[2026-08-31 18:51:11,116.116 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:51:11,156.156 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:51:11,248.248 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:51:11,251.251 INFO    ] No camera update needed
[2026-08-31 18:51:11,253.253 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:51:11,255.255 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:51:11,260.260 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:51:11,265.265 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:51:13,306.306 INFO    ] ================================================
[2026-08-31 18:51:13,321.321 INFO    ] Launching Daemon at Mon Aug 31 18:51:13 IST 2026
[2026-08-31 18:51:13,332.332 INFO    ] ================================================
[2026-08-31 18:51:13,916.916 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:51:13
[2026-08-31 18:51:14,512.512 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:51:14,768.768 INFO    ] Initializing speech engine...
[2026-08-31 18:51:14,783.783 INFO    ] 2026-08-31 18:51:14
[2026-08-31 18:51:15,064.064 INFO    ] 2026-08-31 18:51:15
[2026-08-31 18:51:15,099.099 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:51:15,288.288 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:51:15,303.303 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:51:15,456.456 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:51:15,464.464 INFO    ] time= 31/08/2026 18:51:15
[2026-08-31 18:51:15,470.470 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:51:15,526.526 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:51:15,661.661 INFO    ] No existing commands found in stream
[2026-08-31 18:51:20,671.671 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:51:20,674.674 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-08-31 18:51:23,041.041 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 18:51:23,043.043 INFO    ] Checking for system updates...
[2026-08-31 18:51:23,081.081 INFO    ] 200
[2026-08-31 18:51:23,083.083 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:51:23,135.135 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:51:23,138.138 INFO    ] No update needed
[2026-08-31 18:51:23,140.140 INFO    ] Checking for camera pi updates...
[2026-08-31 18:51:23,174.174 INFO    ] 200
[2026-08-31 18:51:23,177.177 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:51:23,220.220 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:51:23,304.304 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:51:23,306.306 INFO    ] No camera update needed
[2026-08-31 18:51:23,309.309 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:51:23,311.311 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:51:23,316.316 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:51:23,321.321 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:51:25,360.360 INFO    ] ================================================
[2026-08-31 18:51:25,376.376 INFO    ] Launching Daemon at Mon Aug 31 18:51:25 IST 2026
[2026-08-31 18:51:25,387.387 INFO    ] ================================================
[2026-08-31 18:51:25,966.966 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:51:25
[2026-08-31 18:51:26,562.562 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:51:26,836.836 INFO    ] Initializing speech engine...
[2026-08-31 18:51:26,845.845 INFO    ] 2026-08-31 18:51:26
[2026-08-31 18:51:27,109.109 INFO    ] 2026-08-31 18:51:27
[2026-08-31 18:51:27,138.138 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:51:27,389.389 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:51:27,394.394 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:51:27,530.530 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:51:27,569.569 INFO    ] time= 31/08/2026 18:51:27
[2026-08-31 18:51:27,629.629 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:51:27,659.659 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:51:27,782.782 INFO    ] No existing commands found in stream
[2026-08-31 18:51:32,812.812 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:51:32,815.815 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-08-31 18:51:34,572.572 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 18:51:34,575.575 INFO    ] Checking for system updates...
[2026-08-31 18:51:34,614.614 INFO    ] 200
[2026-08-31 18:51:34,616.616 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:51:34,673.673 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:51:34,676.676 INFO    ] No update needed
[2026-08-31 18:51:34,679.679 INFO    ] Checking for camera pi updates...
[2026-08-31 18:51:34,712.712 INFO    ] 200
[2026-08-31 18:51:34,715.715 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:51:34,756.756 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:51:34,859.859 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:51:34,862.862 INFO    ] No camera update needed
[2026-08-31 18:51:34,864.864 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:51:34,866.866 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:51:34,872.872 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:51:34,877.877 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:51:36,919.919 INFO    ] ================================================
[2026-08-31 18:51:36,934.934 INFO    ] Launching Daemon at Mon Aug 31 18:51:36 IST 2026
[2026-08-31 18:51:36,946.946 INFO    ] ================================================
[2026-08-31 18:51:37,526.526 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:51:37
[2026-08-31 18:51:38,122.122 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:51:38,405.405 INFO    ] Initializing speech engine...
[2026-08-31 18:51:38,415.415 INFO    ] 2026-08-31 18:51:38
[2026-08-31 18:51:38,676.676 INFO    ] 2026-08-31 18:51:38
[2026-08-31 18:51:38,712.712 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:51:38,902.902 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:51:38,915.915 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:51:39,072.072 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:51:39,081.081 INFO    ] time= 31/08/2026 18:51:39
[2026-08-31 18:51:39,088.088 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:51:39,135.135 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:51:39,265.265 INFO    ] No existing commands found in stream
[2026-08-31 18:51:44,301.301 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:51:44,303.303 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-08-31 18:51:45,315.315 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 18:51:45,317.317 INFO    ] Checking for system updates...
[2026-08-31 18:51:45,353.353 INFO    ] 200
[2026-08-31 18:51:45,355.355 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:51:45,407.407 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:51:45,410.410 INFO    ] No update needed
[2026-08-31 18:51:45,412.412 INFO    ] Checking for camera pi updates...
[2026-08-31 18:51:45,448.448 INFO    ] 200
[2026-08-31 18:51:45,451.451 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:51:45,492.492 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:51:45,573.573 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:51:45,575.575 INFO    ] No camera update needed
[2026-08-31 18:51:45,578.578 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:51:45,580.580 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:51:45,586.586 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:51:45,591.591 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:51:47,630.630 INFO    ] ================================================
[2026-08-31 18:51:47,645.645 INFO    ] Launching Daemon at Mon Aug 31 18:51:47 IST 2026
[2026-08-31 18:51:47,656.656 INFO    ] ================================================
[2026-08-31 18:51:48,235.235 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:51:48
[2026-08-31 18:51:48,831.831 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:51:49,103.103 INFO    ] Initializing speech engine...
[2026-08-31 18:51:49,121.121 INFO    ] 2026-08-31 18:51:49
[2026-08-31 18:51:49,385.385 INFO    ] 2026-08-31 18:51:49
[2026-08-31 18:51:49,422.422 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:51:49,634.634 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:51:49,644.644 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:51:49,855.855 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:51:49,862.862 INFO    ] time= 31/08/2026 18:51:49
[2026-08-31 18:51:49,897.897 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:51:49,946.946 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:51:50,056.056 INFO    ] No existing commands found in stream
[2026-08-31 18:51:55,068.068 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:51:55,071.071 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-08-31 18:51:57,834.834 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 18:51:57,837.837 INFO    ] Checking for system updates...
[2026-08-31 18:51:57,875.875 INFO    ] 200
[2026-08-31 18:51:57,878.878 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:51:57,930.930 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:51:57,933.933 INFO    ] No update needed
[2026-08-31 18:51:57,935.935 INFO    ] Checking for camera pi updates...
[2026-08-31 18:51:57,968.968 INFO    ] 200
[2026-08-31 18:51:57,971.971 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:51:58,011.011 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:51:58,096.096 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:51:58,099.099 INFO    ] No camera update needed
[2026-08-31 18:51:58,101.101 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:51:58,104.104 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:51:58,109.109 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:51:58,114.114 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:52:00,154.154 INFO    ] ================================================
[2026-08-31 18:52:00,170.170 INFO    ] Launching Daemon at Mon Aug 31 18:52:00 IST 2026
[2026-08-31 18:52:00,181.181 INFO    ] ================================================
[2026-08-31 18:52:00,803.803 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:52:00
[2026-08-31 18:52:01,584.584 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:52:01,905.905 INFO    ] Initializing speech engine...
[2026-08-31 18:52:01,915.915 INFO    ] 2026-08-31 18:52:01
[2026-08-31 18:52:02,259.259 INFO    ] 2026-08-31 18:52:02
[2026-08-31 18:52:02,360.360 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:52:02,579.579 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:52:02,591.591 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:52:02,766.766 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:52:02,835.835 INFO    ] time= 31/08/2026 18:52:02
[2026-08-31 18:52:02,878.878 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:52:02,885.885 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:52:03,070.070 INFO    ] No existing commands found in stream
[2026-08-31 18:52:08,100.100 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:52:08,103.103 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-08-31 18:52:09,226.226 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 18:52:09,229.229 INFO    ] Checking for system updates...
[2026-08-31 18:52:09,268.268 INFO    ] 200
[2026-08-31 18:52:09,272.272 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:52:09,330.330 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:52:09,333.333 INFO    ] No update needed
[2026-08-31 18:52:09,335.335 INFO    ] Checking for camera pi updates...
[2026-08-31 18:52:09,377.377 INFO    ] 200
[2026-08-31 18:52:09,380.380 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:52:09,422.422 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:52:09,526.526 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:52:09,529.529 INFO    ] No camera update needed
[2026-08-31 18:52:09,532.532 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:52:09,534.534 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:52:09,540.540 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:52:09,546.546 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:52:11,588.588 INFO    ] ================================================
[2026-08-31 18:52:11,604.604 INFO    ] Launching Daemon at Mon Aug 31 18:52:11 IST 2026
[2026-08-31 18:52:11,615.615 INFO    ] ================================================
[2026-08-31 18:52:12,247.247 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:52:12
[2026-08-31 18:52:12,898.898 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:52:13,195.195 INFO    ] Initializing speech engine...
[2026-08-31 18:52:13,204.204 INFO    ] 2026-08-31 18:52:13
[2026-08-31 18:52:13,474.474 INFO    ] 2026-08-31 18:52:13
[2026-08-31 18:52:13,526.526 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:52:13,754.754 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:52:13,760.760 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:52:13,994.994 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:52:14,019.019 INFO    ] time= 31/08/2026 18:52:14
[2026-08-31 18:52:14,037.037 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:52:14,061.061 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:52:14,174.174 INFO    ] No existing commands found in stream
[2026-08-31 18:52:19,193.193 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:52:19,196.196 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-08-31 18:52:20,277.277 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 18:52:20,280.280 INFO    ] Checking for system updates...
[2026-08-31 18:52:20,316.316 INFO    ] 200
[2026-08-31 18:52:20,318.318 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:52:20,377.377 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:52:20,379.379 INFO    ] No update needed
[2026-08-31 18:52:20,382.382 INFO    ] Checking for camera pi updates...
[2026-08-31 18:52:20,414.414 INFO    ] 200
[2026-08-31 18:52:20,417.417 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:52:20,460.460 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:52:20,557.557 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:52:20,559.559 INFO    ] No camera update needed
[2026-08-31 18:52:20,562.562 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:52:20,564.564 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:52:20,569.569 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:52:20,574.574 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:52:22,615.615 INFO    ] ================================================
[2026-08-31 18:52:23,043.043 INFO    ] Launching Daemon at Mon Aug 31 18:52:23 IST 2026
[2026-08-31 18:52:23,054.054 INFO    ] ================================================
[2026-08-31 18:52:23,652.652 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:52:23
[2026-08-31 18:52:24,249.249 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:52:24,520.520 INFO    ] Initializing speech engine...
[2026-08-31 18:52:24,529.529 INFO    ] 2026-08-31 18:52:24
[2026-08-31 18:52:24,779.779 INFO    ] 2026-08-31 18:52:24
[2026-08-31 18:52:24,814.814 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:52:25,010.010 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:52:25,066.066 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:52:25,278.278 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:52:25,334.334 INFO    ] time= 31/08/2026 18:52:25
[2026-08-31 18:52:25,340.340 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:52:25,358.358 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:52:25,464.464 INFO    ] No existing commands found in stream
[2026-08-31 18:52:30,489.489 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:52:30,492.492 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-08-31 18:52:31,742.742 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 18:52:31,746.746 INFO    ] Checking for system updates...
[2026-08-31 18:52:31,793.793 INFO    ] 200
[2026-08-31 18:52:31,797.797 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:52:31,862.862 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:52:31,865.865 INFO    ] No update needed
[2026-08-31 18:52:31,868.868 INFO    ] Checking for camera pi updates...
[2026-08-31 18:52:31,911.911 INFO    ] 200
[2026-08-31 18:52:31,914.914 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:52:31,969.969 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:52:32,053.053 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:52:32,055.055 INFO    ] No camera update needed
[2026-08-31 18:52:32,058.058 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:52:32,061.061 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:52:32,068.068 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:52:32,073.073 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:52:34,119.119 INFO    ] ================================================
[2026-08-31 18:52:34,135.135 INFO    ] Launching Daemon at Mon Aug 31 18:52:34 IST 2026
[2026-08-31 18:52:34,146.146 INFO    ] ================================================
[2026-08-31 18:52:34,730.730 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:52:34
[2026-08-31 18:52:35,326.326 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:52:35,585.585 INFO    ] Initializing speech engine...
[2026-08-31 18:52:35,592.592 INFO    ] 2026-08-31 18:52:35
[2026-08-31 18:52:35,882.882 INFO    ] 2026-08-31 18:52:35
[2026-08-31 18:52:35,919.919 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:52:36,141.141 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:52:36,205.205 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:52:36,359.359 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:52:36,386.386 INFO    ] time= 31/08/2026 18:52:36
[2026-08-31 18:52:36,440.440 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:52:36,495.495 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:52:36,638.638 INFO    ] No existing commands found in stream
[2026-08-31 18:52:41,669.669 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:52:41,672.672 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-08-31 18:52:45,793.793 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 18:52:45,795.795 INFO    ] Checking for system updates...
[2026-08-31 18:52:45,832.832 INFO    ] 200
[2026-08-31 18:52:45,835.835 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:52:45,887.887 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:52:45,890.890 INFO    ] No update needed
[2026-08-31 18:52:45,892.892 INFO    ] Checking for camera pi updates...
[2026-08-31 18:52:45,926.926 INFO    ] 200
[2026-08-31 18:52:45,929.929 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:52:45,977.977 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:52:46,094.094 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:52:46,097.097 INFO    ] No camera update needed
[2026-08-31 18:52:46,100.100 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:52:46,102.102 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:52:46,107.107 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:52:46,112.112 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:52:48,157.157 INFO    ] ================================================
[2026-08-31 18:52:48,173.173 INFO    ] Launching Daemon at Mon Aug 31 18:52:48 IST 2026
[2026-08-31 18:52:48,184.184 INFO    ] ================================================
[2026-08-31 18:52:48,748.748 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:52:48
[2026-08-31 18:52:49,342.342 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:52:49,607.607 INFO    ] Initializing speech engine...
[2026-08-31 18:52:49,624.624 INFO    ] 2026-08-31 18:52:49
[2026-08-31 18:52:49,893.893 INFO    ] 2026-08-31 18:52:49
[2026-08-31 18:52:49,962.962 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:52:50,196.196 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:52:50,202.202 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:52:50,420.420 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:52:50,468.468 INFO    ] time= 31/08/2026 18:52:50
[2026-08-31 18:52:50,475.475 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:52:50,495.495 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:52:50,612.612 INFO    ] No existing commands found in stream
[2026-08-31 18:52:55,640.640 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:52:55,643.643 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-08-31 18:52:56,224.224 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 18:52:56,227.227 INFO    ] Checking for system updates...
[2026-08-31 18:52:56,263.263 INFO    ] 200
[2026-08-31 18:52:56,265.265 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:52:56,318.318 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:52:56,320.320 INFO    ] No update needed
[2026-08-31 18:52:56,322.322 INFO    ] Checking for camera pi updates...
[2026-08-31 18:52:56,355.355 INFO    ] 200
[2026-08-31 18:52:56,358.358 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:52:56,403.403 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:52:56,607.607 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:52:56,610.610 INFO    ] No camera update needed
[2026-08-31 18:52:56,612.612 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:52:56,614.614 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:52:56,620.620 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:52:56,625.625 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:52:58,666.666 INFO    ] ================================================
[2026-08-31 18:52:58,681.681 INFO    ] Launching Daemon at Mon Aug 31 18:52:58 IST 2026
[2026-08-31 18:52:58,692.692 INFO    ] ================================================
[2026-08-31 18:52:59,276.276 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:52:59
[2026-08-31 18:52:59,878.878 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:53:00,155.155 INFO    ] Initializing speech engine...
[2026-08-31 18:53:00,162.162 INFO    ] 2026-08-31 18:53:00
[2026-08-31 18:53:00,437.437 INFO    ] 2026-08-31 18:53:00
[2026-08-31 18:53:00,480.480 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:53:00,725.725 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:53:00,733.733 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:53:00,932.932 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:53:00,975.975 INFO    ] time= 31/08/2026 18:53:00
[2026-08-31 18:53:00,981.981 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:53:00,997.997 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:53:01,108.108 INFO    ] No existing commands found in stream
[2026-08-31 18:53:06,140.140 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:53:06,144.144 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-08-31 18:53:09,492.492 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 18:53:09,494.494 INFO    ] Checking for system updates...
[2026-08-31 18:53:09,533.533 INFO    ] 200
[2026-08-31 18:53:09,536.536 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:53:09,594.594 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:53:09,597.597 INFO    ] No update needed
[2026-08-31 18:53:09,599.599 INFO    ] Checking for camera pi updates...
[2026-08-31 18:53:09,633.633 INFO    ] 200
[2026-08-31 18:53:09,635.635 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:53:09,680.680 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:53:09,762.762 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:53:09,764.764 INFO    ] No camera update needed
[2026-08-31 18:53:09,766.766 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:53:09,769.769 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:53:09,774.774 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:53:09,779.779 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:53:11,821.821 INFO    ] ================================================
[2026-08-31 18:53:11,837.837 INFO    ] Launching Daemon at Mon Aug 31 18:53:11 IST 2026
[2026-08-31 18:53:11,850.850 INFO    ] ================================================
[2026-08-31 18:53:12,503.503 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:53:12
[2026-08-31 18:53:13,174.174 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:53:13,480.480 INFO    ] Initializing speech engine...
[2026-08-31 18:53:13,494.494 INFO    ] 2026-08-31 18:53:13
[2026-08-31 18:53:13,804.804 INFO    ] 2026-08-31 18:53:13
[2026-08-31 18:53:13,889.889 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:53:14,104.104 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:53:14,109.109 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:53:14,290.290 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:53:14,311.311 INFO    ] time= 31/08/2026 18:53:14
[2026-08-31 18:53:14,328.328 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:53:14,358.358 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:53:14,477.477 INFO    ] No existing commands found in stream
[2026-08-31 18:53:19,508.508 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:53:19,511.511 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-08-31 18:53:22,144.144 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 18:53:22,147.147 INFO    ] Checking for system updates...
[2026-08-31 18:53:22,185.185 INFO    ] 200
[2026-08-31 18:53:22,188.188 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:53:22,248.248 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:53:22,251.251 INFO    ] No update needed
[2026-08-31 18:53:22,254.254 INFO    ] Checking for camera pi updates...
[2026-08-31 18:53:22,289.289 INFO    ] 200
[2026-08-31 18:53:22,292.292 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:53:22,334.334 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:53:22,416.416 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:53:22,418.418 INFO    ] No camera update needed
[2026-08-31 18:53:22,421.421 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:53:22,424.424 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:53:22,430.430 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:53:22,436.436 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:53:24,479.479 INFO    ] ================================================
[2026-08-31 18:53:24,495.495 INFO    ] Launching Daemon at Mon Aug 31 18:53:24 IST 2026
[2026-08-31 18:53:24,506.506 INFO    ] ================================================
[2026-08-31 18:53:25,074.074 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:53:25
[2026-08-31 18:53:25,660.660 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:53:25,927.927 INFO    ] Initializing speech engine...
[2026-08-31 18:53:25,936.936 INFO    ] 2026-08-31 18:53:25
[2026-08-31 18:53:26,184.184 INFO    ] 2026-08-31 18:53:26
[2026-08-31 18:53:26,218.218 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:53:26,415.415 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:53:26,457.457 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:53:26,632.632 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:53:26,682.682 INFO    ] time= 31/08/2026 18:53:26
[2026-08-31 18:53:26,741.741 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:53:26,752.752 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:53:26,924.924 INFO    ] No existing commands found in stream
[2026-08-31 18:53:31,950.950 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:53:31,952.952 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-08-31 18:53:32,612.612 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 18:53:32,615.615 INFO    ] Checking for system updates...
[2026-08-31 18:53:32,654.654 INFO    ] 200
[2026-08-31 18:53:32,656.656 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:53:32,709.709 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:53:32,711.711 INFO    ] No update needed
[2026-08-31 18:53:32,713.713 INFO    ] Checking for camera pi updates...
[2026-08-31 18:53:32,750.750 INFO    ] 200
[2026-08-31 18:53:32,753.753 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:53:32,798.798 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:53:32,899.899 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:53:32,901.901 INFO    ] No camera update needed
[2026-08-31 18:53:32,904.904 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:53:32,906.906 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:53:32,911.911 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:53:32,917.917 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:53:34,957.957 INFO    ] ================================================
[2026-08-31 18:53:34,973.973 INFO    ] Launching Daemon at Mon Aug 31 18:53:34 IST 2026
[2026-08-31 18:53:34,984.984 INFO    ] ================================================
[2026-08-31 18:53:35,631.631 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:53:35
[2026-08-31 18:53:36,300.300 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:53:36,601.601 INFO    ] Initializing speech engine...
[2026-08-31 18:53:36,611.611 INFO    ] 2026-08-31 18:53:36
[2026-08-31 18:53:36,884.884 INFO    ] 2026-08-31 18:53:36
[2026-08-31 18:53:36,943.943 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:53:37,170.170 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:53:37,180.180 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:53:37,319.319 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:53:37,374.374 INFO    ] time= 31/08/2026 18:53:37
[2026-08-31 18:53:37,434.434 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:53:37,454.454 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:53:37,580.580 INFO    ] No existing commands found in stream
[2026-08-31 18:53:42,600.600 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:53:42,603.603 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-08-31 18:53:45,921.921 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 18:53:45,924.924 INFO    ] Checking for system updates...
[2026-08-31 18:53:45,960.960 INFO    ] 200
[2026-08-31 18:53:45,963.963 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:53:46,018.018 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:53:46,021.021 INFO    ] No update needed
[2026-08-31 18:53:46,023.023 INFO    ] Checking for camera pi updates...
[2026-08-31 18:53:46,058.058 INFO    ] 200
[2026-08-31 18:53:46,061.061 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:53:46,106.106 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:53:46,190.190 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:53:46,193.193 INFO    ] No camera update needed
[2026-08-31 18:53:46,195.195 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:53:46,198.198 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:53:46,203.203 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:53:46,208.208 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:53:48,248.248 INFO    ] ================================================
[2026-08-31 18:53:48,263.263 INFO    ] Launching Daemon at Mon Aug 31 18:53:48 IST 2026
[2026-08-31 18:53:48,275.275 INFO    ] ================================================
[2026-08-31 18:53:48,841.841 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:53:48
[2026-08-31 18:53:49,427.427 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:53:49,687.687 INFO    ] Initializing speech engine...
[2026-08-31 18:53:49,706.706 INFO    ] 2026-08-31 18:53:49
[2026-08-31 18:53:49,957.957 INFO    ] 2026-08-31 18:53:49
[2026-08-31 18:53:49,992.992 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:53:50,169.169 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:53:50,180.180 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:53:50,334.334 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:53:50,380.380 INFO    ] time= 31/08/2026 18:53:50
[2026-08-31 18:53:50,402.402 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:53:50,444.444 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:53:50,540.540 INFO    ] No existing commands found in stream
[2026-08-31 18:53:55,562.562 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:53:55,565.565 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-08-31 18:53:56,144.144 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 18:53:56,147.147 INFO    ] Checking for system updates...
[2026-08-31 18:53:56,185.185 INFO    ] 200
[2026-08-31 18:53:56,188.188 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:53:56,242.242 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:53:56,244.244 INFO    ] No update needed
[2026-08-31 18:53:56,247.247 INFO    ] Checking for camera pi updates...
[2026-08-31 18:53:56,281.281 INFO    ] 200
[2026-08-31 18:53:56,284.284 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:53:56,325.325 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:53:56,409.409 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:53:56,412.412 INFO    ] No camera update needed
[2026-08-31 18:53:56,414.414 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:53:56,417.417 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:53:56,422.422 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:53:56,427.427 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:53:58,471.471 INFO    ] ================================================
[2026-08-31 18:53:58,487.487 INFO    ] Launching Daemon at Mon Aug 31 18:53:58 IST 2026
[2026-08-31 18:53:58,498.498 INFO    ] ================================================
[2026-08-31 18:53:59,071.071 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:53:59
[2026-08-31 18:53:59,660.660 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:53:59,911.911 INFO    ] Initializing speech engine...
[2026-08-31 18:53:59,919.919 INFO    ] 2026-08-31 18:53:59
[2026-08-31 18:54:00,190.190 INFO    ] 2026-08-31 18:54:00
[2026-08-31 18:54:00,226.226 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:54:00,504.504 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:54:00,512.512 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:54:00,698.698 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:54:00,746.746 INFO    ] time= 31/08/2026 18:54:00
[2026-08-31 18:54:00,753.753 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:54:00,772.772 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:54:00,923.923 INFO    ] No existing commands found in stream
[2026-08-31 18:54:05,948.948 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:54:05,951.951 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-08-31 18:54:08,942.942 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 18:54:08,944.944 INFO    ] Checking for system updates...
[2026-08-31 18:54:08,980.980 INFO    ] 200
[2026-08-31 18:54:08,982.982 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:54:09,040.040 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:54:09,043.043 INFO    ] No update needed
[2026-08-31 18:54:09,045.045 INFO    ] Checking for camera pi updates...
[2026-08-31 18:54:09,082.082 INFO    ] 200
[2026-08-31 18:54:09,084.084 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:54:09,129.129 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:54:09,214.214 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:54:09,217.217 INFO    ] No camera update needed
[2026-08-31 18:54:09,219.219 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:54:09,222.222 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:54:09,227.227 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:54:09,232.232 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:54:11,272.272 INFO    ] ================================================
[2026-08-31 18:54:11,288.288 INFO    ] Launching Daemon at Mon Aug 31 18:54:11 IST 2026
[2026-08-31 18:54:11,299.299 INFO    ] ================================================
[2026-08-31 18:54:11,872.872 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:54:11
[2026-08-31 18:54:12,457.457 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:54:12,727.727 INFO    ] Initializing speech engine...
[2026-08-31 18:54:12,735.735 INFO    ] 2026-08-31 18:54:12
[2026-08-31 18:54:12,986.986 INFO    ] 2026-08-31 18:54:12
[2026-08-31 18:54:13,022.022 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:54:28,169.169 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:54:28,172.172 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:54:28,322.322 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:54:28,324.324 INFO    ] time= 31/08/2026 18:54:28
[2026-08-31 18:54:28,326.326 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:54:28,329.329 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:54:28,412.412 INFO    ] No existing commands found in stream
[2026-08-31 18:54:33,422.422 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:54:33,424.424 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-08-31 18:54:36,295.295 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 18:54:36,297.297 INFO    ] Checking for system updates...
[2026-08-31 18:54:36,333.333 INFO    ] 200
[2026-08-31 18:54:36,336.336 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:54:36,387.387 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:54:36,390.390 INFO    ] No update needed
[2026-08-31 18:54:36,392.392 INFO    ] Checking for camera pi updates...
[2026-08-31 18:54:36,429.429 INFO    ] 200
[2026-08-31 18:54:36,431.431 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:54:36,472.472 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:54:36,563.563 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:54:36,565.565 INFO    ] No camera update needed
[2026-08-31 18:54:36,568.568 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:54:36,570.570 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:54:36,576.576 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:54:36,582.582 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:54:38,624.624 INFO    ] ================================================
[2026-08-31 18:54:38,640.640 INFO    ] Launching Daemon at Mon Aug 31 18:54:38 IST 2026
[2026-08-31 18:54:38,650.650 INFO    ] ================================================
[2026-08-31 18:54:39,217.217 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:54:39
[2026-08-31 18:54:39,799.799 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:54:40,050.050 INFO    ] Initializing speech engine...
[2026-08-31 18:54:40,072.072 INFO    ] 2026-08-31 18:54:40
[2026-08-31 18:54:40,327.327 INFO    ] 2026-08-31 18:54:40
[2026-08-31 18:54:40,362.362 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:54:40,666.666 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:54:40,686.686 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:54:40,869.869 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:54:40,896.896 INFO    ] time= 31/08/2026 18:54:40
[2026-08-31 18:54:40,911.911 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:54:40,921.921 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:54:41,053.053 INFO    ] No existing commands found in stream
[2026-08-31 18:54:46,076.076 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:54:46,079.079 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-08-31 18:54:50,386.386 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 18:54:50,389.389 INFO    ] Checking for system updates...
[2026-08-31 18:54:50,424.424 INFO    ] 200
[2026-08-31 18:54:50,426.426 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:54:50,479.479 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:54:50,481.481 INFO    ] No update needed
[2026-08-31 18:54:50,483.483 INFO    ] Checking for camera pi updates...
[2026-08-31 18:54:50,521.521 INFO    ] 200
[2026-08-31 18:54:50,523.523 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:54:50,563.563 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:54:50,643.643 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:54:50,646.646 INFO    ] No camera update needed
[2026-08-31 18:54:50,648.648 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:54:50,650.650 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:54:50,655.655 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:54:50,660.660 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:54:52,701.701 INFO    ] ================================================
[2026-08-31 18:54:52,716.716 INFO    ] Launching Daemon at Mon Aug 31 18:54:52 IST 2026
[2026-08-31 18:54:52,727.727 INFO    ] ================================================
[2026-08-31 18:54:53,372.372 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:54:53
[2026-08-31 18:54:54,023.023 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:54:54,291.291 INFO    ] Initializing speech engine...
[2026-08-31 18:54:54,301.301 INFO    ] 2026-08-31 18:54:54
[2026-08-31 18:54:54,552.552 INFO    ] 2026-08-31 18:54:54
[2026-08-31 18:54:54,587.587 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:54:54,771.771 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:54:54,785.785 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:54:54,917.917 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:54:54,925.925 INFO    ] time= 31/08/2026 18:54:54
[2026-08-31 18:54:54,932.932 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:54:54,973.973 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:54:55,100.100 INFO    ] No existing commands found in stream
[2026-08-31 18:55:00,131.131 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:55:00,133.133 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-08-31 18:55:01,223.223 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 18:55:01,226.226 INFO    ] Checking for system updates...
[2026-08-31 18:55:01,264.264 INFO    ] 200
[2026-08-31 18:55:01,266.266 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:55:01,324.324 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:55:01,326.326 INFO    ] No update needed
[2026-08-31 18:55:01,329.329 INFO    ] Checking for camera pi updates...
[2026-08-31 18:55:01,374.374 INFO    ] 200
[2026-08-31 18:55:01,378.378 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:55:01,456.456 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:55:01,656.656 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:55:01,663.663 INFO    ] No camera update needed
[2026-08-31 18:55:01,667.667 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:55:01,674.674 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:55:01,689.689 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:55:01,697.697 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:55:03,748.748 INFO    ] ================================================
[2026-08-31 18:55:03,764.764 INFO    ] Launching Daemon at Mon Aug 31 18:55:03 IST 2026
[2026-08-31 18:55:03,776.776 INFO    ] ================================================
[2026-08-31 18:55:04,365.365 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:55:04
[2026-08-31 18:55:04,945.945 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:55:05,200.200 INFO    ] Initializing speech engine...
[2026-08-31 18:55:05,209.209 INFO    ] 2026-08-31 18:55:05
[2026-08-31 18:55:05,506.506 INFO    ] 2026-08-31 18:55:05
[2026-08-31 18:55:05,532.532 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:55:05,744.744 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:55:05,758.758 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:55:05,885.885 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:55:05,891.891 INFO    ] time= 31/08/2026 18:55:05
[2026-08-31 18:55:05,910.910 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:55:05,934.934 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:55:06,017.017 INFO    ] No existing commands found in stream
[2026-08-31 18:55:11,029.029 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:55:11,032.032 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-08-31 18:55:15,225.225 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 18:55:15,228.228 INFO    ] Checking for system updates...
[2026-08-31 18:55:15,268.268 INFO    ] 200
[2026-08-31 18:55:15,270.270 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:55:15,322.322 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:55:15,324.324 INFO    ] No update needed
[2026-08-31 18:55:15,327.327 INFO    ] Checking for camera pi updates...
[2026-08-31 18:55:15,360.360 INFO    ] 200
[2026-08-31 18:55:15,362.362 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:55:15,402.402 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:55:15,477.477 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:55:15,479.479 INFO    ] No camera update needed
[2026-08-31 18:55:15,482.482 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:55:15,484.484 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:55:15,489.489 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:55:15,494.494 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:55:17,535.535 INFO    ] ================================================
[2026-08-31 18:55:17,550.550 INFO    ] Launching Daemon at Mon Aug 31 18:55:17 IST 2026
[2026-08-31 18:55:17,561.561 INFO    ] ================================================
[2026-08-31 18:55:18,223.223 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:55:18
[2026-08-31 18:55:18,904.904 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:55:19,193.193 INFO    ] Initializing speech engine...
[2026-08-31 18:55:19,202.202 INFO    ] 2026-08-31 18:55:19
[2026-08-31 18:55:19,460.460 INFO    ] 2026-08-31 18:55:19
[2026-08-31 18:55:19,495.495 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:55:19,749.749 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:55:19,758.758 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:55:19,902.902 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:55:19,966.966 INFO    ] time= 31/08/2026 18:55:19
[2026-08-31 18:55:20,021.021 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:55:20,034.034 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:55:20,158.158 INFO    ] No existing commands found in stream
[2026-08-31 18:55:25,189.189 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:55:25,191.191 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-08-31 18:55:26,834.834 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 18:55:26,837.837 INFO    ] Checking for system updates...
[2026-08-31 18:55:26,873.873 INFO    ] 200
[2026-08-31 18:55:26,876.876 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:55:26,928.928 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:55:26,930.930 INFO    ] No update needed
[2026-08-31 18:55:26,932.932 INFO    ] Checking for camera pi updates...
[2026-08-31 18:55:26,970.970 INFO    ] 200
[2026-08-31 18:55:26,973.973 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:55:27,018.018 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:55:27,107.107 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:55:27,109.109 INFO    ] No camera update needed
[2026-08-31 18:55:27,112.112 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:55:27,114.114 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:55:27,120.120 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:55:27,125.125 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:55:29,165.165 INFO    ] ================================================
[2026-08-31 18:55:29,182.182 INFO    ] Launching Daemon at Mon Aug 31 18:55:29 IST 2026
[2026-08-31 18:55:29,194.194 INFO    ] ================================================
[2026-08-31 18:55:29,760.760 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:55:29
[2026-08-31 18:55:30,343.343 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:55:30,591.591 INFO    ] Initializing speech engine...
[2026-08-31 18:55:30,606.606 INFO    ] 2026-08-31 18:55:30
[2026-08-31 18:55:30,879.879 INFO    ] 2026-08-31 18:55:30
[2026-08-31 18:55:30,947.947 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:55:31,208.208 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:55:31,213.213 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:55:31,408.408 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:55:31,454.454 INFO    ] time= 31/08/2026 18:55:31
[2026-08-31 18:55:31,461.461 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:55:31,481.481 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:55:31,589.589 INFO    ] No existing commands found in stream
[2026-08-31 18:55:36,617.617 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:55:36,620.620 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-08-31 18:55:38,990.990 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 18:55:38,992.992 INFO    ] Checking for system updates...
[2026-08-31 18:55:39,034.034 INFO    ] 200
[2026-08-31 18:55:39,037.037 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:55:39,096.096 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:55:39,099.099 INFO    ] No update needed
[2026-08-31 18:55:39,103.103 INFO    ] Checking for camera pi updates...
[2026-08-31 18:55:39,149.149 INFO    ] 200
[2026-08-31 18:55:39,152.152 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:55:39,201.201 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:55:39,284.284 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:55:39,286.286 INFO    ] No camera update needed
[2026-08-31 18:55:39,288.288 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:55:39,291.291 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:55:39,296.296 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:55:39,301.301 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:55:41,342.342 INFO    ] ================================================
[2026-08-31 18:55:41,358.358 INFO    ] Launching Daemon at Mon Aug 31 18:55:41 IST 2026
[2026-08-31 18:55:41,368.368 INFO    ] ================================================
[2026-08-31 18:55:41,954.954 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:55:41
[2026-08-31 18:55:42,556.556 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:55:42,833.833 INFO    ] Initializing speech engine...
[2026-08-31 18:55:42,842.842 INFO    ] 2026-08-31 18:55:42
[2026-08-31 18:55:43,102.102 INFO    ] 2026-08-31 18:55:43
[2026-08-31 18:55:43,155.155 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:55:43,409.409 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:55:43,426.426 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:55:43,618.618 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:55:43,650.650 INFO    ] time= 31/08/2026 18:55:43
[2026-08-31 18:55:43,664.664 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:55:43,673.673 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:55:43,796.796 INFO    ] No existing commands found in stream
[2026-08-31 18:55:48,812.812 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:55:48,814.814 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-08-31 18:55:49,491.491 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 18:55:49,494.494 INFO    ] Checking for system updates...
[2026-08-31 18:55:49,530.530 INFO    ] 200
[2026-08-31 18:55:49,532.532 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:55:49,593.593 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:55:49,596.596 INFO    ] No update needed
[2026-08-31 18:55:49,598.598 INFO    ] Checking for camera pi updates...
[2026-08-31 18:55:49,634.634 INFO    ] 200
[2026-08-31 18:55:49,636.636 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:55:49,677.677 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:55:49,761.761 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:55:49,763.763 INFO    ] No camera update needed
[2026-08-31 18:55:49,766.766 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:55:49,768.768 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:55:49,773.773 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:55:49,779.779 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:55:51,820.820 INFO    ] ================================================
[2026-08-31 18:55:51,836.836 INFO    ] Launching Daemon at Mon Aug 31 18:55:51 IST 2026
[2026-08-31 18:55:51,847.847 INFO    ] ================================================
[2026-08-31 18:55:52,522.522 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:55:52
[2026-08-31 18:55:53,219.219 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:55:53,532.532 INFO    ] Initializing speech engine...
[2026-08-31 18:55:53,543.543 INFO    ] 2026-08-31 18:55:53
[2026-08-31 18:55:53,856.856 INFO    ] 2026-08-31 18:55:53
[2026-08-31 18:55:53,942.942 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:55:54,152.152 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:55:54,161.161 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:55:54,360.360 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:55:54,378.378 INFO    ] time= 31/08/2026 18:55:54
[2026-08-31 18:55:54,391.391 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:55:54,416.416 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:55:54,533.533 INFO    ] No existing commands found in stream
[2026-08-31 18:55:59,564.564 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:55:59,568.568 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-08-31 18:56:00,037.037 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 18:56:00,039.039 INFO    ] Checking for system updates...
[2026-08-31 18:56:00,087.087 INFO    ] 200
[2026-08-31 18:56:00,090.090 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:56:00,143.143 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:56:00,145.145 INFO    ] No update needed
[2026-08-31 18:56:00,148.148 INFO    ] Checking for camera pi updates...
[2026-08-31 18:56:00,181.181 INFO    ] 200
[2026-08-31 18:56:00,184.184 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:56:00,230.230 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:56:00,312.312 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:56:00,315.315 INFO    ] No camera update needed
[2026-08-31 18:56:00,317.317 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:56:00,320.320 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:56:00,325.325 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:56:00,330.330 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:56:02,371.371 INFO    ] ================================================
[2026-08-31 18:56:02,392.392 INFO    ] Launching Daemon at Mon Aug 31 18:56:02 IST 2026
[2026-08-31 18:56:02,408.408 INFO    ] ================================================
[2026-08-31 18:56:03,044.044 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:56:03
[2026-08-31 18:56:03,640.640 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:56:03,897.897 INFO    ] Initializing speech engine...
[2026-08-31 18:56:03,913.913 INFO    ] 2026-08-31 18:56:03
[2026-08-31 18:56:04,199.199 INFO    ] 2026-08-31 18:56:04
[2026-08-31 18:56:04,241.241 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:56:04,461.461 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:56:04,509.509 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:56:04,686.686 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:56:04,692.692 INFO    ] time= 31/08/2026 18:56:04
[2026-08-31 18:56:04,752.752 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:56:04,806.806 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:56:04,898.898 INFO    ] No existing commands found in stream
[2026-08-31 18:56:09,910.910 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:56:09,913.913 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-08-31 18:56:12,026.026 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 18:56:12,029.029 INFO    ] Checking for system updates...
[2026-08-31 18:56:12,064.064 INFO    ] 200
[2026-08-31 18:56:12,067.067 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:56:12,120.120 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:56:12,123.123 INFO    ] No update needed
[2026-08-31 18:56:12,125.125 INFO    ] Checking for camera pi updates...
[2026-08-31 18:56:12,163.163 INFO    ] 200
[2026-08-31 18:56:12,165.165 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:56:12,207.207 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:56:12,272.272 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:56:12,275.275 INFO    ] No camera update needed
[2026-08-31 18:56:12,278.278 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:56:12,280.280 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:56:12,287.287 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:56:12,293.293 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:56:14,335.335 INFO    ] ================================================
[2026-08-31 18:56:14,350.350 INFO    ] Launching Daemon at Mon Aug 31 18:56:14 IST 2026
[2026-08-31 18:56:14,361.361 INFO    ] ================================================
[2026-08-31 18:56:14,937.937 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:56:14
[2026-08-31 18:56:15,520.520 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:56:15,786.786 INFO    ] Initializing speech engine...
[2026-08-31 18:56:15,796.796 INFO    ] 2026-08-31 18:56:15
[2026-08-31 18:56:16,042.042 INFO    ] 2026-08-31 18:56:16
[2026-08-31 18:56:16,077.077 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:56:16,328.328 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:56:16,337.337 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:56:16,468.468 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:56:16,510.510 INFO    ] time= 31/08/2026 18:56:16
[2026-08-31 18:56:16,559.559 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:56:16,601.601 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:56:16,653.653 INFO    ] No existing commands found in stream
[2026-08-31 18:56:21,665.665 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:56:21,668.668 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-08-31 18:56:25,110.110 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 18:56:25,113.113 INFO    ] Checking for system updates...
[2026-08-31 18:56:25,153.153 INFO    ] 200
[2026-08-31 18:56:25,155.155 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:56:25,214.214 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:56:25,217.217 INFO    ] No update needed
[2026-08-31 18:56:25,219.219 INFO    ] Checking for camera pi updates...
[2026-08-31 18:56:25,252.252 INFO    ] 200
[2026-08-31 18:56:25,255.255 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:56:25,294.294 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:56:25,374.374 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:56:25,377.377 INFO    ] No camera update needed
[2026-08-31 18:56:25,380.380 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:56:25,382.382 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:56:25,387.387 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:56:25,392.392 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:56:27,433.433 INFO    ] ================================================
[2026-08-31 18:56:27,449.449 INFO    ] Launching Daemon at Mon Aug 31 18:56:27 IST 2026
[2026-08-31 18:56:27,460.460 INFO    ] ================================================
[2026-08-31 18:56:28,032.032 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:56:28
[2026-08-31 18:56:28,621.621 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:56:28,872.872 INFO    ] Initializing speech engine...
[2026-08-31 18:56:28,877.877 INFO    ] 2026-08-31 18:56:28
[2026-08-31 18:56:29,151.151 INFO    ] 2026-08-31 18:56:29
[2026-08-31 18:56:29,187.187 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:56:29,456.456 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:56:29,466.466 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:56:29,601.601 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:56:29,643.643 INFO    ] time= 31/08/2026 18:56:29
[2026-08-31 18:56:29,692.692 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:56:29,738.738 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:56:29,859.859 INFO    ] No existing commands found in stream
[2026-08-31 18:56:34,881.881 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:56:34,884.884 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-08-31 18:56:37,669.669 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 18:56:37,672.672 INFO    ] Checking for system updates...
[2026-08-31 18:56:37,708.708 INFO    ] 200
[2026-08-31 18:56:37,710.710 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:56:37,763.763 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:56:37,766.766 INFO    ] No update needed
[2026-08-31 18:56:37,768.768 INFO    ] Checking for camera pi updates...
[2026-08-31 18:56:37,806.806 INFO    ] 200
[2026-08-31 18:56:37,809.809 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:56:37,854.854 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:56:37,937.937 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:56:37,940.940 INFO    ] No camera update needed
[2026-08-31 18:56:37,942.942 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:56:37,945.945 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:56:37,950.950 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:56:37,955.955 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:56:40,996.996 INFO    ] ================================================
[2026-08-31 18:56:40,013.013 INFO    ] Launching Daemon at Mon Aug 31 18:56:40 IST 2026
[2026-08-31 18:56:40,024.024 INFO    ] ================================================
[2026-08-31 18:56:40,589.589 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:56:40
[2026-08-31 18:56:41,174.174 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:56:41,453.453 INFO    ] Initializing speech engine...
[2026-08-31 18:56:41,466.466 INFO    ] 2026-08-31 18:56:41
[2026-08-31 18:56:41,733.733 INFO    ] 2026-08-31 18:56:41
[2026-08-31 18:56:41,771.771 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:56:41,967.967 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:56:41,981.981 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:56:42,143.143 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:56:42,153.153 INFO    ] time= 31/08/2026 18:56:42
[2026-08-31 18:56:42,160.160 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:56:42,166.166 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:56:42,302.302 INFO    ] No existing commands found in stream
[2026-08-31 18:56:47,327.327 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:56:47,330.330 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-08-31 18:56:51,613.613 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 18:56:51,616.616 INFO    ] Checking for system updates...
[2026-08-31 18:56:51,659.659 INFO    ] 200
[2026-08-31 18:56:51,662.662 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:56:51,717.717 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:56:51,720.720 INFO    ] No update needed
[2026-08-31 18:56:51,723.723 INFO    ] Checking for camera pi updates...
[2026-08-31 18:56:51,759.759 INFO    ] 200
[2026-08-31 18:56:51,762.762 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:56:51,816.816 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:56:51,894.894 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:56:51,897.897 INFO    ] No camera update needed
[2026-08-31 18:56:51,900.900 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:56:51,902.902 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:56:51,908.908 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:56:51,913.913 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:56:53,956.956 INFO    ] ================================================
[2026-08-31 18:56:53,971.971 INFO    ] Launching Daemon at Mon Aug 31 18:56:53 IST 2026
[2026-08-31 18:56:53,981.981 INFO    ] ================================================
[2026-08-31 18:56:54,624.624 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:56:54
[2026-08-31 18:56:55,296.296 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:56:55,599.599 INFO    ] Initializing speech engine...
[2026-08-31 18:56:55,612.612 INFO    ] 2026-08-31 18:56:55
[2026-08-31 18:56:55,883.883 INFO    ] 2026-08-31 18:56:55
[2026-08-31 18:56:55,939.939 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:56:56,223.223 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:56:56,228.228 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:56:56,422.422 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:56:56,430.430 INFO    ] time= 31/08/2026 18:56:56
[2026-08-31 18:56:56,451.451 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:56:56,479.479 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:56:56,584.584 INFO    ] No existing commands found in stream
[2026-08-31 18:57:01,609.609 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:57:01,613.613 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-08-31 18:57:05,713.713 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 18:57:05,716.716 INFO    ] Checking for system updates...
[2026-08-31 18:57:05,753.753 INFO    ] 200
[2026-08-31 18:57:05,756.756 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:57:05,808.808 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:57:05,811.811 INFO    ] No update needed
[2026-08-31 18:57:05,813.813 INFO    ] Checking for camera pi updates...
[2026-08-31 18:57:05,850.850 INFO    ] 200
[2026-08-31 18:57:05,852.852 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:57:05,900.900 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:57:06,090.090 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:57:06,094.094 INFO    ] No camera update needed
[2026-08-31 18:57:06,098.098 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:57:06,102.102 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:57:06,110.110 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:57:06,117.117 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:57:08,159.159 INFO    ] ================================================
[2026-08-31 18:57:08,174.174 INFO    ] Launching Daemon at Mon Aug 31 18:57:08 IST 2026
[2026-08-31 18:57:08,185.185 INFO    ] ================================================
[2026-08-31 18:57:08,770.770 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:57:08
[2026-08-31 18:57:09,373.373 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:57:09,629.629 INFO    ] Initializing speech engine...
[2026-08-31 18:57:09,653.653 INFO    ] 2026-08-31 18:57:09
[2026-08-31 18:57:09,913.913 INFO    ] 2026-08-31 18:57:09
[2026-08-31 18:57:09,955.955 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:57:10,200.200 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:57:10,209.209 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:57:10,347.347 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:57:10,405.405 INFO    ] time= 31/08/2026 18:57:10
[2026-08-31 18:57:10,454.454 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:57:10,483.483 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:57:10,538.538 INFO    ] No existing commands found in stream
[2026-08-31 18:57:15,550.550 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:57:15,552.552 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-08-31 18:57:17,736.736 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 18:57:17,740.740 INFO    ] Checking for system updates...
[2026-08-31 18:57:17,779.779 INFO    ] 200
[2026-08-31 18:57:17,782.782 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:57:17,839.839 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:57:17,842.842 INFO    ] No update needed
[2026-08-31 18:57:17,845.845 INFO    ] Checking for camera pi updates...
[2026-08-31 18:57:17,879.879 INFO    ] 200
[2026-08-31 18:57:17,881.881 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:57:17,926.926 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:57:18,013.013 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:57:18,016.016 INFO    ] No camera update needed
[2026-08-31 18:57:18,019.019 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:57:18,021.021 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:57:18,027.027 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:57:18,033.033 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:57:20,074.074 INFO    ] ================================================
[2026-08-31 18:57:20,090.090 INFO    ] Launching Daemon at Mon Aug 31 18:57:20 IST 2026
[2026-08-31 18:57:20,101.101 INFO    ] ================================================
[2026-08-31 18:57:20,734.734 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:57:20
[2026-08-31 18:57:21,386.386 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:57:21,677.677 INFO    ] Initializing speech engine...
[2026-08-31 18:57:21,688.688 INFO    ] 2026-08-31 18:57:21
[2026-08-31 18:57:21,962.962 INFO    ] 2026-08-31 18:57:21
[2026-08-31 18:57:22,014.014 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:57:22,244.244 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:57:22,266.266 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:57:22,384.384 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:57:22,449.449 INFO    ] time= 31/08/2026 18:57:22
[2026-08-31 18:57:22,509.509 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:57:22,517.517 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:57:22,657.657 INFO    ] No existing commands found in stream
[2026-08-31 18:57:27,673.673 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:57:27,676.676 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-08-31 18:57:29,853.853 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 18:57:29,856.856 INFO    ] Checking for system updates...
[2026-08-31 18:57:29,892.892 INFO    ] 200
[2026-08-31 18:57:29,895.895 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:57:29,948.948 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:57:29,951.951 INFO    ] No update needed
[2026-08-31 18:57:29,953.953 INFO    ] Checking for camera pi updates...
[2026-08-31 18:57:29,988.988 INFO    ] 200
[2026-08-31 18:57:29,991.991 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:57:30,031.031 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:57:30,117.117 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:57:30,120.120 INFO    ] No camera update needed
[2026-08-31 18:57:30,123.123 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:57:30,125.125 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:57:30,132.132 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:57:30,137.137 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:57:32,180.180 INFO    ] ================================================
[2026-08-31 18:57:32,197.197 INFO    ] Launching Daemon at Mon Aug 31 18:57:32 IST 2026
[2026-08-31 18:57:32,210.210 INFO    ] ================================================
[2026-08-31 18:57:32,808.808 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:57:32
[2026-08-31 18:57:33,441.441 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:57:33,746.746 INFO    ] Initializing speech engine...
[2026-08-31 18:57:33,752.752 INFO    ] 2026-08-31 18:57:33
[2026-08-31 18:57:34,030.030 INFO    ] 2026-08-31 18:57:34
[2026-08-31 18:57:34,087.087 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:57:34,323.323 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:57:34,329.329 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:57:34,552.552 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:57:34,593.593 INFO    ] time= 31/08/2026 18:57:34
[2026-08-31 18:57:34,612.612 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:57:34,622.622 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:57:34,738.738 INFO    ] No existing commands found in stream
[2026-08-31 18:57:39,763.763 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:57:39,766.766 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-08-31 18:57:43,144.144 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 18:57:43,147.147 INFO    ] Checking for system updates...
[2026-08-31 18:57:43,188.188 INFO    ] 200
[2026-08-31 18:57:43,190.190 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:57:43,251.251 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:57:43,253.253 INFO    ] No update needed
[2026-08-31 18:57:43,256.256 INFO    ] Checking for camera pi updates...
[2026-08-31 18:57:43,290.290 INFO    ] 200
[2026-08-31 18:57:43,293.293 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:57:43,339.339 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:57:43,426.426 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:57:43,429.429 INFO    ] No camera update needed
[2026-08-31 18:57:43,432.432 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:57:43,435.435 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:57:43,441.441 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:57:43,446.446 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:57:45,487.487 INFO    ] ================================================
[2026-08-31 18:57:45,502.502 INFO    ] Launching Daemon at Mon Aug 31 18:57:45 IST 2026
[2026-08-31 18:57:45,513.513 INFO    ] ================================================
[2026-08-31 18:57:46,087.087 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:57:46
[2026-08-31 18:57:46,691.691 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:57:46,954.954 INFO    ] Initializing speech engine...
[2026-08-31 18:57:46,977.977 INFO    ] 2026-08-31 18:57:46
[2026-08-31 18:57:47,256.256 INFO    ] 2026-08-31 18:57:47
[2026-08-31 18:57:47,296.296 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:57:47,493.493 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:57:47,508.508 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:57:47,669.669 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:57:47,679.679 INFO    ] time= 31/08/2026 18:57:47
[2026-08-31 18:57:47,687.687 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:57:47,738.738 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:57:47,851.851 INFO    ] No existing commands found in stream
[2026-08-31 18:57:52,877.877 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:57:52,880.880 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-08-31 18:57:56,611.611 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 18:57:56,614.614 INFO    ] Checking for system updates...
[2026-08-31 18:57:56,655.655 INFO    ] 200
[2026-08-31 18:57:56,657.657 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:57:56,718.718 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:57:56,721.721 INFO    ] No update needed
[2026-08-31 18:57:56,724.724 INFO    ] Checking for camera pi updates...
[2026-08-31 18:57:56,764.764 INFO    ] 200
[2026-08-31 18:57:56,766.766 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:57:56,812.812 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:57:56,897.897 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:57:56,900.900 INFO    ] No camera update needed
[2026-08-31 18:57:56,903.903 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:57:56,905.905 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:57:56,911.911 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:57:56,917.917 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:57:58,960.960 INFO    ] ================================================
[2026-08-31 18:57:58,975.975 INFO    ] Launching Daemon at Mon Aug 31 18:57:58 IST 2026
[2026-08-31 18:57:58,986.986 INFO    ] ================================================
[2026-08-31 18:57:59,555.555 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:57:59
[2026-08-31 18:58:00,205.205 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:58:00,508.508 INFO    ] Initializing speech engine...
[2026-08-31 18:58:00,522.522 INFO    ] 2026-08-31 18:58:00
[2026-08-31 18:58:00,795.795 INFO    ] 2026-08-31 18:58:00
[2026-08-31 18:58:00,853.853 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:58:01,077.077 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:58:01,087.087 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:58:01,250.250 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:58:01,255.255 INFO    ] time= 31/08/2026 18:58:01
[2026-08-31 18:58:01,259.259 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:58:01,272.272 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:58:01,373.373 INFO    ] No existing commands found in stream
[2026-08-31 18:58:06,384.384 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:58:06,386.386 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-08-31 18:58:07,132.132 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 18:58:07,135.135 INFO    ] Checking for system updates...
[2026-08-31 18:58:07,170.170 INFO    ] 200
[2026-08-31 18:58:07,172.172 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:58:07,224.224 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:58:07,226.226 INFO    ] No update needed
[2026-08-31 18:58:07,229.229 INFO    ] Checking for camera pi updates...
[2026-08-31 18:58:07,262.262 INFO    ] 200
[2026-08-31 18:58:07,264.264 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:58:07,305.305 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:58:07,391.391 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:58:07,394.394 INFO    ] No camera update needed
[2026-08-31 18:58:07,396.396 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:58:07,398.398 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:58:07,404.404 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:58:07,409.409 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:58:09,450.450 INFO    ] ================================================
[2026-08-31 18:58:09,465.465 INFO    ] Launching Daemon at Mon Aug 31 18:58:09 IST 2026
[2026-08-31 18:58:09,476.476 INFO    ] ================================================
[2026-08-31 18:58:10,060.060 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:58:10
[2026-08-31 18:58:10,656.656 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:58:10,941.941 INFO    ] Initializing speech engine...
[2026-08-31 18:58:10,951.951 INFO    ] 2026-08-31 18:58:10
[2026-08-31 18:58:11,216.216 INFO    ] 2026-08-31 18:58:11
[2026-08-31 18:58:11,251.251 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:58:11,476.476 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:58:11,536.536 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:58:11,692.692 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:58:11,747.747 INFO    ] time= 31/08/2026 18:58:11
[2026-08-31 18:58:11,806.806 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:58:11,836.836 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:58:11,892.892 INFO    ] No existing commands found in stream
[2026-08-31 18:58:16,904.904 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:58:16,907.907 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-08-31 18:58:20,663.663 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 18:58:20,666.666 INFO    ] Checking for system updates...
[2026-08-31 18:58:20,702.702 INFO    ] 200
[2026-08-31 18:58:20,704.704 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:58:20,756.756 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:58:20,758.758 INFO    ] No update needed
[2026-08-31 18:58:20,761.761 INFO    ] Checking for camera pi updates...
[2026-08-31 18:58:20,795.795 INFO    ] 200
[2026-08-31 18:58:20,798.798 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:58:20,839.839 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:58:20,926.926 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:58:20,928.928 INFO    ] No camera update needed
[2026-08-31 18:58:20,931.931 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:58:20,933.933 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:58:20,938.938 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:58:20,943.943 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:58:22,983.983 INFO    ] ================================================
[2026-08-31 18:58:23,998.998 INFO    ] Launching Daemon at Mon Aug 31 18:58:22 IST 2026
[2026-08-31 18:58:23,008.008 INFO    ] ================================================
[2026-08-31 18:58:23,582.582 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:58:23
[2026-08-31 18:58:24,169.169 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:58:24,437.437 INFO    ] Initializing speech engine...
[2026-08-31 18:58:24,445.445 INFO    ] 2026-08-31 18:58:24
[2026-08-31 18:58:24,699.699 INFO    ] 2026-08-31 18:58:24
[2026-08-31 18:58:24,758.758 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:58:25,004.004 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:58:25,012.012 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:58:25,160.160 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:58:25,187.187 INFO    ] time= 31/08/2026 18:58:25
[2026-08-31 18:58:25,246.246 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:58:25,306.306 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:58:25,372.372 INFO    ] No existing commands found in stream
[2026-08-31 18:58:30,386.386 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:58:30,389.389 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-08-31 18:58:34,502.502 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 18:58:34,504.504 INFO    ] Checking for system updates...
[2026-08-31 18:58:34,540.540 INFO    ] 200
[2026-08-31 18:58:34,542.542 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:58:34,602.602 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:58:34,604.604 INFO    ] No update needed
[2026-08-31 18:58:34,607.607 INFO    ] Checking for camera pi updates...
[2026-08-31 18:58:34,640.640 INFO    ] 200
[2026-08-31 18:58:34,642.642 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:58:34,684.684 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:58:34,769.769 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:58:34,771.771 INFO    ] No camera update needed
[2026-08-31 18:58:34,774.774 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:58:34,776.776 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:58:34,781.781 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:58:34,786.786 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:58:36,826.826 INFO    ] ================================================
[2026-08-31 18:58:36,842.842 INFO    ] Launching Daemon at Mon Aug 31 18:58:36 IST 2026
[2026-08-31 18:58:36,853.853 INFO    ] ================================================
[2026-08-31 18:58:37,434.434 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:58:37
[2026-08-31 18:58:38,034.034 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:58:38,296.296 INFO    ] Initializing speech engine...
[2026-08-31 18:58:38,320.320 INFO    ] 2026-08-31 18:58:38
[2026-08-31 18:58:38,593.593 INFO    ] 2026-08-31 18:58:38
[2026-08-31 18:58:38,628.628 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:58:38,822.822 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:58:38,835.835 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:58:38,991.991 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:58:39,000.000 INFO    ] time= 31/08/2026 18:58:38
[2026-08-31 18:58:39,008.008 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:58:39,060.060 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:58:39,173.173 INFO    ] No existing commands found in stream
[2026-08-31 18:58:44,198.198 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:58:44,201.201 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-08-31 18:58:47,339.339 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 18:58:47,342.342 INFO    ] Checking for system updates...
[2026-08-31 18:58:47,378.378 INFO    ] 200
[2026-08-31 18:58:47,380.380 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:58:47,432.432 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:58:47,435.435 INFO    ] No update needed
[2026-08-31 18:58:47,437.437 INFO    ] Checking for camera pi updates...
[2026-08-31 18:58:47,471.471 INFO    ] 200
[2026-08-31 18:58:47,473.473 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:58:47,514.514 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:58:47,613.613 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:58:47,615.615 INFO    ] No camera update needed
[2026-08-31 18:58:47,618.618 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:58:47,620.620 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:58:47,625.625 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:58:47,631.631 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:58:49,671.671 INFO    ] ================================================
[2026-08-31 18:58:49,687.687 INFO    ] Launching Daemon at Mon Aug 31 18:58:49 IST 2026
[2026-08-31 18:58:49,698.698 INFO    ] ================================================
[2026-08-31 18:58:50,330.330 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:58:50
[2026-08-31 18:58:50,980.980 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:58:51,275.275 INFO    ] Initializing speech engine...
[2026-08-31 18:58:51,283.283 INFO    ] 2026-08-31 18:58:51
[2026-08-31 18:58:51,553.553 INFO    ] 2026-08-31 18:58:51
[2026-08-31 18:58:51,608.608 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:58:51,857.857 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:58:51,864.864 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:58:52,050.050 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:58:52,101.101 INFO    ] time= 31/08/2026 18:58:52
[2026-08-31 18:58:52,108.108 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:58:52,127.127 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:58:52,258.258 INFO    ] No existing commands found in stream
[2026-08-31 18:58:57,279.279 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:58:57,282.282 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-08-31 18:59:01,091.091 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 18:59:01,094.094 INFO    ] Checking for system updates...
[2026-08-31 18:59:01,133.133 INFO    ] 200
[2026-08-31 18:59:01,136.136 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:59:01,191.191 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:59:01,194.194 INFO    ] No update needed
[2026-08-31 18:59:01,196.196 INFO    ] Checking for camera pi updates...
[2026-08-31 18:59:01,240.240 INFO    ] 200
[2026-08-31 18:59:01,246.246 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:59:01,352.352 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:59:01,437.437 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:59:01,441.441 INFO    ] No camera update needed
[2026-08-31 18:59:01,444.444 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:59:01,458.458 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:59:01,466.466 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:59:01,484.484 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:59:03,529.529 INFO    ] ================================================
[2026-08-31 18:59:03,543.543 INFO    ] Launching Daemon at Mon Aug 31 18:59:03 IST 2026
[2026-08-31 18:59:03,554.554 INFO    ] ================================================
[2026-08-31 18:59:04,193.193 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:59:04
[2026-08-31 18:59:04,851.851 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:59:05,148.148 INFO    ] Initializing speech engine...
[2026-08-31 18:59:05,158.158 INFO    ] 2026-08-31 18:59:05
[2026-08-31 18:59:05,431.431 INFO    ] 2026-08-31 18:59:05
[2026-08-31 18:59:05,491.491 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:59:05,726.726 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:59:05,733.733 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:59:05,939.939 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:59:05,996.996 INFO    ] time= 31/08/2026 18:59:05
[2026-08-31 18:59:06,003.003 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:59:06,024.024 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:59:06,161.161 INFO    ] No existing commands found in stream
[2026-08-31 18:59:11,181.181 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:59:11,184.184 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-08-31 18:59:15,296.296 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 18:59:15,299.299 INFO    ] Checking for system updates...
[2026-08-31 18:59:15,340.340 INFO    ] 200
[2026-08-31 18:59:15,344.344 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:59:15,397.397 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:59:15,400.400 INFO    ] No update needed
[2026-08-31 18:59:15,403.403 INFO    ] Checking for camera pi updates...
[2026-08-31 18:59:15,438.438 INFO    ] 200
[2026-08-31 18:59:15,441.441 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:59:15,482.482 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:59:15,654.654 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:59:15,657.657 INFO    ] No camera update needed
[2026-08-31 18:59:15,660.660 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:59:15,663.663 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:59:15,669.669 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:59:15,675.675 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:59:17,716.716 INFO    ] ================================================
[2026-08-31 18:59:17,732.732 INFO    ] Launching Daemon at Mon Aug 31 18:59:17 IST 2026
[2026-08-31 18:59:17,742.742 INFO    ] ================================================
[2026-08-31 18:59:18,305.305 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:59:18
[2026-08-31 18:59:18,887.887 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:59:19,140.140 INFO    ] Initializing speech engine...
[2026-08-31 18:59:19,149.149 INFO    ] 2026-08-31 18:59:19
[2026-08-31 18:59:19,442.442 INFO    ] 2026-08-31 18:59:19
[2026-08-31 18:59:19,480.480 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:59:19,701.701 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:59:19,710.710 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:59:19,926.926 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:59:19,937.937 INFO    ] time= 31/08/2026 18:59:19
[2026-08-31 18:59:19,977.977 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:59:20,016.016 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:59:20,089.089 INFO    ] No existing commands found in stream
[2026-08-31 18:59:25,099.099 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:59:25,102.102 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-08-31 18:59:29,569.569 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 18:59:29,571.571 INFO    ] Checking for system updates...
[2026-08-31 18:59:29,607.607 INFO    ] 200
[2026-08-31 18:59:29,610.610 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:59:29,662.662 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:59:29,664.664 INFO    ] No update needed
[2026-08-31 18:59:29,666.666 INFO    ] Checking for camera pi updates...
[2026-08-31 18:59:29,700.700 INFO    ] 200
[2026-08-31 18:59:29,702.702 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:59:29,742.742 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:59:29,835.835 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:59:29,837.837 INFO    ] No camera update needed
[2026-08-31 18:59:29,840.840 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:59:29,842.842 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:59:29,847.847 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:59:29,852.852 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:59:31,896.896 INFO    ] ================================================
[2026-08-31 18:59:31,912.912 INFO    ] Launching Daemon at Mon Aug 31 18:59:31 IST 2026
[2026-08-31 18:59:31,924.924 INFO    ] ================================================
[2026-08-31 18:59:32,547.547 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:59:32
[2026-08-31 18:59:33,187.187 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:59:33,480.480 INFO    ] Initializing speech engine...
[2026-08-31 18:59:33,488.488 INFO    ] 2026-08-31 18:59:33
[2026-08-31 18:59:33,761.761 INFO    ] 2026-08-31 18:59:33
[2026-08-31 18:59:33,805.805 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:59:34,033.033 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:59:34,040.040 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:59:34,249.249 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:59:34,301.301 INFO    ] time= 31/08/2026 18:59:34
[2026-08-31 18:59:34,307.307 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:59:34,326.326 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:59:34,455.455 INFO    ] No existing commands found in stream
[2026-08-31 18:59:39,471.471 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:59:39,474.474 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-08-31 18:59:43,355.355 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 18:59:43,358.358 INFO    ] Checking for system updates...
[2026-08-31 18:59:43,393.393 INFO    ] 200
[2026-08-31 18:59:43,396.396 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:59:43,450.450 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:59:43,452.452 INFO    ] No update needed
[2026-08-31 18:59:43,455.455 INFO    ] Checking for camera pi updates...
[2026-08-31 18:59:43,489.489 INFO    ] 200
[2026-08-31 18:59:43,491.491 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:59:43,537.537 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:59:43,611.611 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 18:59:43,614.614 INFO    ] No camera update needed
[2026-08-31 18:59:43,616.616 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:59:43,618.618 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:59:43,624.624 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:59:43,629.629 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:59:45,669.669 INFO    ] ================================================
[2026-08-31 18:59:45,684.684 INFO    ] Launching Daemon at Mon Aug 31 18:59:45 IST 2026
[2026-08-31 18:59:45,695.695 INFO    ] ================================================
[2026-08-31 18:59:46,261.261 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:59:46
[2026-08-31 18:59:46,844.844 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 18:59:47,094.094 INFO    ] Initializing speech engine...
[2026-08-31 18:59:47,101.101 INFO    ] 2026-08-31 18:59:47
[2026-08-31 18:59:47,406.406 INFO    ] 2026-08-31 18:59:47
[2026-08-31 18:59:47,431.431 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 18:59:47,643.643 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 18:59:47,649.649 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 18:59:47,825.825 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 18:59:47,835.835 INFO    ] time= 31/08/2026 18:59:47
[2026-08-31 18:59:47,843.843 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 18:59:47,856.856 INFO    ] Checking for existing commands in stream...
[2026-08-31 18:59:47,982.982 INFO    ] No existing commands found in stream
[2026-08-31 18:59:53,007.007 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 18:59:53,010.010 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-08-31 18:59:56,191.191 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 18:59:56,194.194 INFO    ] Checking for system updates...
[2026-08-31 18:59:56,235.235 INFO    ] 200
[2026-08-31 18:59:56,238.238 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:59:56,291.291 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:59:56,293.293 INFO    ] No update needed
[2026-08-31 18:59:56,295.295 INFO    ] Checking for camera pi updates...
[2026-08-31 18:59:56,329.329 INFO    ] 200
[2026-08-31 18:59:56,331.331 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 18:59:56,372.372 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 18:59:56,454.454 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 18:59:56,456.456 INFO    ] No camera update needed
[2026-08-31 18:59:56,459.459 INFO    ] Script finished. Safe exiting...
[2026-08-31 18:59:56,462.462 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 18:59:56,467.467 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 18:59:56,472.472 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 18:59:58,512.512 INFO    ] ================================================
[2026-08-31 18:59:58,526.526 INFO    ] Launching Daemon at Mon Aug 31 18:59:58 IST 2026
[2026-08-31 18:59:58,538.538 INFO    ] ================================================
[2026-08-31 18:59:59,207.207 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 18:59:59
[2026-08-31 18:59:59,890.890 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:00:00,197.197 INFO    ] Initializing speech engine...
[2026-08-31 19:00:00,205.205 INFO    ] 2026-08-31 19:00:00
[2026-08-31 19:00:00,486.486 INFO    ] 2026-08-31 19:00:00
[2026-08-31 19:00:00,542.542 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:00:00,776.776 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:00:00,783.783 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:00:01,016.016 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:00:01,044.044 INFO    ] time= 31/08/2026 19:00:01
[2026-08-31 19:00:01,063.063 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:00:01,092.092 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:00:01,201.201 INFO    ] No existing commands found in stream
[2026-08-31 19:00:06,240.240 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:00:06,244.244 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-08-31 19:00:10,139.139 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 19:00:10,142.142 INFO    ] Checking for system updates...
[2026-08-31 19:00:10,178.178 INFO    ] 200
[2026-08-31 19:00:10,181.181 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:00:10,249.249 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:00:10,251.251 INFO    ] No update needed
[2026-08-31 19:00:10,254.254 INFO    ] Checking for camera pi updates...
[2026-08-31 19:00:10,291.291 INFO    ] 200
[2026-08-31 19:00:10,293.293 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:00:10,335.335 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:00:10,431.431 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:00:10,433.433 INFO    ] No camera update needed
[2026-08-31 19:00:10,435.435 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:00:10,438.438 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:00:10,443.443 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:00:10,448.448 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:00:12,491.491 INFO    ] ================================================
[2026-08-31 19:00:12,515.515 INFO    ] Launching Daemon at Mon Aug 31 19:00:12 IST 2026
[2026-08-31 19:00:12,525.525 INFO    ] ================================================
[2026-08-31 19:00:13,408.408 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:00:13
[2026-08-31 19:00:14,383.383 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:00:14,747.747 INFO    ] Initializing speech engine...
[2026-08-31 19:00:14,750.750 INFO    ] 2026-08-31 19:00:14
[2026-08-31 19:00:15,288.288 INFO    ] 2026-08-31 19:00:15
[2026-08-31 19:00:15,726.726 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:00:15,953.953 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:00:15,955.955 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:00:16,109.109 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:00:16,113.113 INFO    ] time= 31/08/2026 19:00:16
[2026-08-31 19:00:16,115.115 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:00:16,121.121 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:00:16,172.172 INFO    ] No existing commands found in stream
[2026-08-31 19:00:21,208.208 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:00:21,210.210 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-08-31 19:00:25,015.015 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 19:00:25,018.018 INFO    ] Checking for system updates...
[2026-08-31 19:00:25,058.058 INFO    ] 200
[2026-08-31 19:00:25,060.060 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:00:25,115.115 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:00:25,118.118 INFO    ] No update needed
[2026-08-31 19:00:25,121.121 INFO    ] Checking for camera pi updates...
[2026-08-31 19:00:25,159.159 INFO    ] 200
[2026-08-31 19:00:25,161.161 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:00:25,207.207 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:00:25,289.289 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:00:25,292.292 INFO    ] No camera update needed
[2026-08-31 19:00:25,294.294 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:00:25,297.297 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:00:25,303.303 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:00:25,309.309 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:00:27,349.349 INFO    ] ================================================
[2026-08-31 19:00:27,364.364 INFO    ] Launching Daemon at Mon Aug 31 19:00:27 IST 2026
[2026-08-31 19:00:27,374.374 INFO    ] ================================================
[2026-08-31 19:00:27,957.957 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:00:27
[2026-08-31 19:00:28,558.558 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:00:28,835.835 INFO    ] Initializing speech engine...
[2026-08-31 19:00:28,844.844 INFO    ] 2026-08-31 19:00:28
[2026-08-31 19:00:29,104.104 INFO    ] 2026-08-31 19:00:29
[2026-08-31 19:00:29,160.160 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:00:29,381.381 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:00:29,391.391 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:00:29,524.524 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:00:29,590.590 INFO    ] time= 31/08/2026 19:00:29
[2026-08-31 19:00:29,652.652 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:00:29,659.659 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:00:29,789.789 INFO    ] No existing commands found in stream
[2026-08-31 19:00:34,810.810 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:00:34,812.812 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-08-31 19:00:37,218.218 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 19:00:37,221.221 INFO    ] Checking for system updates...
[2026-08-31 19:00:37,257.257 INFO    ] 200
[2026-08-31 19:00:37,260.260 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:00:37,312.312 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:00:37,314.314 INFO    ] No update needed
[2026-08-31 19:00:37,317.317 INFO    ] Checking for camera pi updates...
[2026-08-31 19:00:37,350.350 INFO    ] 200
[2026-08-31 19:00:37,352.352 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:00:37,399.399 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:00:37,550.550 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:00:37,553.553 INFO    ] No camera update needed
[2026-08-31 19:00:37,555.555 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:00:37,557.557 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:00:37,563.563 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:00:37,568.568 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:00:39,610.610 INFO    ] ================================================
[2026-08-31 19:00:39,625.625 INFO    ] Launching Daemon at Mon Aug 31 19:00:39 IST 2026
[2026-08-31 19:00:39,635.635 INFO    ] ================================================
[2026-08-31 19:00:40,199.199 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:00:40
[2026-08-31 19:00:40,783.783 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:00:41,059.059 INFO    ] Initializing speech engine...
[2026-08-31 19:00:41,073.073 INFO    ] 2026-08-31 19:00:41
[2026-08-31 19:00:41,338.338 INFO    ] 2026-08-31 19:00:41
[2026-08-31 19:00:41,373.373 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:00:41,568.568 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:00:41,583.583 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:00:41,741.741 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:00:41,749.749 INFO    ] time= 31/08/2026 19:00:41
[2026-08-31 19:00:41,754.754 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:00:41,761.761 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:00:41,895.895 INFO    ] No existing commands found in stream
[2026-08-31 19:00:46,926.926 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:00:46,929.929 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-08-31 19:00:51,290.290 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 19:00:51,293.293 INFO    ] Checking for system updates...
[2026-08-31 19:00:51,329.329 INFO    ] 200
[2026-08-31 19:00:51,332.332 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:00:51,392.392 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:00:51,394.394 INFO    ] No update needed
[2026-08-31 19:00:51,397.397 INFO    ] Checking for camera pi updates...
[2026-08-31 19:00:51,436.436 INFO    ] 200
[2026-08-31 19:00:51,439.439 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:00:51,489.489 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:00:51,579.579 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:00:51,581.581 INFO    ] No camera update needed
[2026-08-31 19:00:51,584.584 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:00:51,586.586 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:00:51,593.593 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:00:51,598.598 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:00:53,640.640 INFO    ] ================================================
[2026-08-31 19:00:53,654.654 INFO    ] Launching Daemon at Mon Aug 31 19:00:53 IST 2026
[2026-08-31 19:00:53,665.665 INFO    ] ================================================
[2026-08-31 19:00:54,232.232 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:00:54
[2026-08-31 19:00:54,818.818 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:00:55,090.090 INFO    ] Initializing speech engine...
[2026-08-31 19:00:55,098.098 INFO    ] 2026-08-31 19:00:55
[2026-08-31 19:00:55,351.351 INFO    ] 2026-08-31 19:00:55
[2026-08-31 19:00:55,386.386 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:00:55,578.578 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:00:55,623.623 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:00:55,781.781 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:00:55,825.825 INFO    ] time= 31/08/2026 19:00:55
[2026-08-31 19:00:55,890.890 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:00:55,912.912 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:00:55,960.960 INFO    ] No existing commands found in stream
[2026-08-31 19:01:00,970.970 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:01:00,973.973 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-08-31 19:01:02,578.578 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 19:01:02,581.581 INFO    ] Checking for system updates...
[2026-08-31 19:01:02,633.633 INFO    ] 200
[2026-08-31 19:01:02,636.636 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:01:02,703.703 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:01:02,706.706 INFO    ] No update needed
[2026-08-31 19:01:02,719.719 INFO    ] Checking for camera pi updates...
[2026-08-31 19:01:02,763.763 INFO    ] 200
[2026-08-31 19:01:02,766.766 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:01:02,820.820 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:01:02,874.874 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:01:02,878.878 INFO    ] No camera update needed
[2026-08-31 19:01:02,881.881 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:01:02,883.883 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:01:02,890.890 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:01:02,897.897 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:01:04,940.940 INFO    ] ================================================
[2026-08-31 19:01:04,956.956 INFO    ] Launching Daemon at Mon Aug 31 19:01:04 IST 2026
[2026-08-31 19:01:04,967.967 INFO    ] ================================================
[2026-08-31 19:01:05,534.534 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:01:05
[2026-08-31 19:01:06,123.123 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:01:06,377.377 INFO    ] Initializing speech engine...
[2026-08-31 19:01:06,383.383 INFO    ] 2026-08-31 19:01:06
[2026-08-31 19:01:06,687.687 INFO    ] 2026-08-31 19:01:06
[2026-08-31 19:01:06,718.718 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:01:06,946.946 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:01:06,962.962 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:01:07,105.105 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:01:07,114.114 INFO    ] time= 31/08/2026 19:01:07
[2026-08-31 19:01:07,120.120 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:01:07,178.178 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:01:07,260.260 INFO    ] No existing commands found in stream
[2026-08-31 19:01:12,285.285 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:01:12,288.288 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-08-31 19:01:13,934.934 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 19:01:13,937.937 INFO    ] Checking for system updates...
[2026-08-31 19:01:13,975.975 INFO    ] 200
[2026-08-31 19:01:13,977.977 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:01:14,032.032 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:01:14,034.034 INFO    ] No update needed
[2026-08-31 19:01:14,036.036 INFO    ] Checking for camera pi updates...
[2026-08-31 19:01:14,070.070 INFO    ] 200
[2026-08-31 19:01:14,072.072 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:01:14,113.113 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:01:14,200.200 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:01:14,202.202 INFO    ] No camera update needed
[2026-08-31 19:01:14,205.205 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:01:14,207.207 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:01:14,212.212 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:01:14,217.217 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:01:16,257.257 INFO    ] ================================================
[2026-08-31 19:01:16,273.273 INFO    ] Launching Daemon at Mon Aug 31 19:01:16 IST 2026
[2026-08-31 19:01:16,284.284 INFO    ] ================================================
[2026-08-31 19:01:16,908.908 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:01:16
[2026-08-31 19:01:17,561.561 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:01:17,863.863 INFO    ] Initializing speech engine...
[2026-08-31 19:01:17,875.875 INFO    ] 2026-08-31 19:01:17
[2026-08-31 19:01:18,160.160 INFO    ] 2026-08-31 19:01:18
[2026-08-31 19:01:18,207.207 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:01:18,458.458 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:01:18,466.466 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:01:18,667.667 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:01:18,710.710 INFO    ] time= 31/08/2026 19:01:18
[2026-08-31 19:01:18,724.724 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:01:18,735.735 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:01:18,851.851 INFO    ] No existing commands found in stream
[2026-08-31 19:01:23,877.877 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:01:23,880.880 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-08-31 19:01:26,536.536 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 19:01:26,539.539 INFO    ] Checking for system updates...
[2026-08-31 19:01:26,578.578 INFO    ] 200
[2026-08-31 19:01:26,580.580 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:01:26,639.639 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:01:26,641.641 INFO    ] No update needed
[2026-08-31 19:01:26,644.644 INFO    ] Checking for camera pi updates...
[2026-08-31 19:01:26,677.677 INFO    ] 200
[2026-08-31 19:01:26,680.680 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:01:26,724.724 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:01:26,907.907 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:01:26,910.910 INFO    ] No camera update needed
[2026-08-31 19:01:26,912.912 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:01:26,914.914 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:01:26,920.920 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:01:26,925.925 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:01:28,967.967 INFO    ] ================================================
[2026-08-31 19:01:28,982.982 INFO    ] Launching Daemon at Mon Aug 31 19:01:28 IST 2026
[2026-08-31 19:01:29,994.994 INFO    ] ================================================
[2026-08-31 19:01:29,573.573 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:01:29
[2026-08-31 19:01:30,172.172 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:01:30,448.448 INFO    ] Initializing speech engine...
[2026-08-31 19:01:30,453.453 INFO    ] 2026-08-31 19:01:30
[2026-08-31 19:01:30,716.716 INFO    ] 2026-08-31 19:01:30
[2026-08-31 19:01:30,770.770 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:01:31,017.017 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:01:31,023.023 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:01:31,222.222 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:01:31,259.259 INFO    ] time= 31/08/2026 19:01:31
[2026-08-31 19:01:31,265.265 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:01:31,286.286 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:01:31,410.410 INFO    ] No existing commands found in stream
[2026-08-31 19:01:36,426.426 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:01:36,429.429 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-08-31 19:01:40,335.335 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 19:01:40,338.338 INFO    ] Checking for system updates...
[2026-08-31 19:01:40,373.373 INFO    ] 200
[2026-08-31 19:01:40,375.375 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:01:40,433.433 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:01:40,435.435 INFO    ] No update needed
[2026-08-31 19:01:40,438.438 INFO    ] Checking for camera pi updates...
[2026-08-31 19:01:40,475.475 INFO    ] 200
[2026-08-31 19:01:40,477.477 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:01:40,518.518 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:01:40,585.585 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:01:40,587.587 INFO    ] No camera update needed
[2026-08-31 19:01:40,590.590 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:01:40,592.592 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:01:40,598.598 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:01:40,603.603 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:01:42,644.644 INFO    ] ================================================
[2026-08-31 19:01:42,659.659 INFO    ] Launching Daemon at Mon Aug 31 19:01:42 IST 2026
[2026-08-31 19:01:42,669.669 INFO    ] ================================================
[2026-08-31 19:01:43,255.255 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:01:43
[2026-08-31 19:01:43,851.851 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:01:44,125.125 INFO    ] Initializing speech engine...
[2026-08-31 19:01:44,135.135 INFO    ] 2026-08-31 19:01:44
[2026-08-31 19:01:44,396.396 INFO    ] 2026-08-31 19:01:44
[2026-08-31 19:01:44,450.450 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:01:44,675.675 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:01:44,681.681 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:01:44,878.878 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:01:44,936.936 INFO    ] time= 31/08/2026 19:01:44
[2026-08-31 19:01:44,943.943 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:01:44,962.962 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:01:45,092.092 INFO    ] No existing commands found in stream
[2026-08-31 19:01:50,107.107 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:01:50,110.110 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-08-31 19:01:51,832.832 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 19:01:51,834.834 INFO    ] Checking for system updates...
[2026-08-31 19:01:51,870.870 INFO    ] 200
[2026-08-31 19:01:51,873.873 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:01:51,929.929 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:01:51,932.932 INFO    ] No update needed
[2026-08-31 19:01:51,934.934 INFO    ] Checking for camera pi updates...
[2026-08-31 19:01:51,968.968 INFO    ] 200
[2026-08-31 19:01:51,971.971 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:01:52,012.012 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:01:52,109.109 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:01:52,111.111 INFO    ] No camera update needed
[2026-08-31 19:01:52,113.113 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:01:52,116.116 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:01:52,121.121 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:01:52,126.126 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:01:54,166.166 INFO    ] ================================================
[2026-08-31 19:01:54,182.182 INFO    ] Launching Daemon at Mon Aug 31 19:01:54 IST 2026
[2026-08-31 19:01:54,192.192 INFO    ] ================================================
[2026-08-31 19:01:54,818.818 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:01:54
[2026-08-31 19:01:55,459.459 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:01:55,757.757 INFO    ] Initializing speech engine...
[2026-08-31 19:01:55,764.764 INFO    ] 2026-08-31 19:01:55
[2026-08-31 19:01:56,053.053 INFO    ] 2026-08-31 19:01:56
[2026-08-31 19:01:56,091.091 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:01:56,321.321 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:01:56,326.326 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:01:56,482.482 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:01:56,496.496 INFO    ] time= 31/08/2026 19:01:56
[2026-08-31 19:01:56,511.511 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:01:56,514.514 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:01:56,570.570 INFO    ] No existing commands found in stream
[2026-08-31 19:02:01,580.580 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:02:01,583.583 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-08-31 19:02:04,427.427 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 19:02:04,430.430 INFO    ] Checking for system updates...
[2026-08-31 19:02:04,470.470 INFO    ] 200
[2026-08-31 19:02:04,473.473 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:02:04,529.529 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:02:04,532.532 INFO    ] No update needed
[2026-08-31 19:02:04,535.535 INFO    ] Checking for camera pi updates...
[2026-08-31 19:02:04,572.572 INFO    ] 200
[2026-08-31 19:02:04,575.575 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:02:04,615.615 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:02:04,699.699 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:02:04,702.702 INFO    ] No camera update needed
[2026-08-31 19:02:04,705.705 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:02:04,707.707 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:02:04,713.713 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:02:04,719.719 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:02:06,760.760 INFO    ] ================================================
[2026-08-31 19:02:06,775.775 INFO    ] Launching Daemon at Mon Aug 31 19:02:06 IST 2026
[2026-08-31 19:02:06,786.786 INFO    ] ================================================
[2026-08-31 19:02:07,416.416 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:02:07
[2026-08-31 19:02:08,068.068 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:02:08,361.361 INFO    ] Initializing speech engine...
[2026-08-31 19:02:08,373.373 INFO    ] 2026-08-31 19:02:08
[2026-08-31 19:02:08,648.648 INFO    ] 2026-08-31 19:02:08
[2026-08-31 19:02:08,704.704 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:02:08,962.962 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:02:08,981.981 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:02:09,175.175 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:02:09,208.208 INFO    ] time= 31/08/2026 19:02:09
[2026-08-31 19:02:09,226.226 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:02:09,249.249 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:02:09,370.370 INFO    ] No existing commands found in stream
[2026-08-31 19:02:14,395.395 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:02:14,399.399 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-08-31 19:02:15,732.732 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 19:02:15,735.735 INFO    ] Checking for system updates...
[2026-08-31 19:02:15,775.775 INFO    ] 200
[2026-08-31 19:02:15,778.778 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:02:15,836.836 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:02:15,839.839 INFO    ] No update needed
[2026-08-31 19:02:15,842.842 INFO    ] Checking for camera pi updates...
[2026-08-31 19:02:15,879.879 INFO    ] 200
[2026-08-31 19:02:15,882.882 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:02:15,931.931 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:02:16,010.010 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:02:16,013.013 INFO    ] No camera update needed
[2026-08-31 19:02:16,016.016 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:02:16,018.018 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:02:16,024.024 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:02:16,030.030 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:02:18,071.071 INFO    ] ================================================
[2026-08-31 19:02:18,086.086 INFO    ] Launching Daemon at Mon Aug 31 19:02:18 IST 2026
[2026-08-31 19:02:18,097.097 INFO    ] ================================================
[2026-08-31 19:02:18,680.680 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:02:18
[2026-08-31 19:02:19,278.278 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:02:19,554.554 INFO    ] Initializing speech engine...
[2026-08-31 19:02:19,561.561 INFO    ] 2026-08-31 19:02:19
[2026-08-31 19:02:19,808.808 INFO    ] 2026-08-31 19:02:19
[2026-08-31 19:02:19,844.844 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:02:20,045.045 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:02:20,103.103 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:02:20,248.248 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:02:20,313.313 INFO    ] time= 31/08/2026 19:02:20
[2026-08-31 19:02:20,367.367 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:02:20,384.384 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:02:20,511.511 INFO    ] No existing commands found in stream
[2026-08-31 19:02:25,539.539 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:02:25,543.543 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-08-31 19:02:27,338.338 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 19:02:27,341.341 INFO    ] Checking for system updates...
[2026-08-31 19:02:27,380.380 INFO    ] 200
[2026-08-31 19:02:27,382.382 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:02:27,433.433 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:02:27,436.436 INFO    ] No update needed
[2026-08-31 19:02:27,438.438 INFO    ] Checking for camera pi updates...
[2026-08-31 19:02:27,472.472 INFO    ] 200
[2026-08-31 19:02:27,474.474 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:02:27,518.518 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:02:27,589.589 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:02:27,591.591 INFO    ] No camera update needed
[2026-08-31 19:02:27,594.594 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:02:27,596.596 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:02:27,601.601 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:02:27,606.606 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:02:29,647.647 INFO    ] ================================================
[2026-08-31 19:02:29,662.662 INFO    ] Launching Daemon at Mon Aug 31 19:02:29 IST 2026
[2026-08-31 19:02:29,672.672 INFO    ] ================================================
[2026-08-31 19:02:30,251.251 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:02:30
[2026-08-31 19:02:30,834.834 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:02:31,113.113 INFO    ] Initializing speech engine...
[2026-08-31 19:02:31,122.122 INFO    ] 2026-08-31 19:02:31
[2026-08-31 19:02:31,380.380 INFO    ] 2026-08-31 19:02:31
[2026-08-31 19:02:31,413.413 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:02:31,608.608 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:02:31,667.667 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:02:31,809.809 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:02:31,830.830 INFO    ] time= 31/08/2026 19:02:31
[2026-08-31 19:02:31,895.895 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:02:31,930.930 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:02:32,020.020 INFO    ] No existing commands found in stream
[2026-08-31 19:02:37,032.032 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:02:37,035.035 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-08-31 19:02:39,074.074 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 19:02:39,076.076 INFO    ] Checking for system updates...
[2026-08-31 19:02:39,115.115 INFO    ] 200
[2026-08-31 19:02:39,118.118 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:02:39,171.171 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:02:39,174.174 INFO    ] No update needed
[2026-08-31 19:02:39,176.176 INFO    ] Checking for camera pi updates...
[2026-08-31 19:02:39,211.211 INFO    ] 200
[2026-08-31 19:02:39,214.214 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:02:39,255.255 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:02:39,340.340 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:02:39,343.343 INFO    ] No camera update needed
[2026-08-31 19:02:39,345.345 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:02:39,348.348 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:02:39,354.354 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:02:39,360.360 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:02:41,401.401 INFO    ] ================================================
[2026-08-31 19:02:41,416.416 INFO    ] Launching Daemon at Mon Aug 31 19:02:41 IST 2026
[2026-08-31 19:02:41,427.427 INFO    ] ================================================
[2026-08-31 19:02:42,008.008 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:02:42
[2026-08-31 19:02:42,608.608 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:02:42,886.886 INFO    ] Initializing speech engine...
[2026-08-31 19:02:42,891.891 INFO    ] 2026-08-31 19:02:42
[2026-08-31 19:02:43,154.154 INFO    ] 2026-08-31 19:02:43
[2026-08-31 19:02:43,208.208 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:02:43,437.437 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:02:43,442.442 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:02:43,669.669 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:02:43,700.700 INFO    ] time= 31/08/2026 19:02:43
[2026-08-31 19:02:43,706.706 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:02:43,724.724 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:02:43,855.855 INFO    ] No existing commands found in stream
[2026-08-31 19:02:48,875.875 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:02:48,878.878 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-08-31 19:02:52,352.352 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 19:02:52,355.355 INFO    ] Checking for system updates...
[2026-08-31 19:02:52,390.390 INFO    ] 200
[2026-08-31 19:02:52,393.393 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:02:52,445.445 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:02:52,447.447 INFO    ] No update needed
[2026-08-31 19:02:52,450.450 INFO    ] Checking for camera pi updates...
[2026-08-31 19:02:52,483.483 INFO    ] 200
[2026-08-31 19:02:52,486.486 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:02:52,526.526 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:02:52,604.604 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:02:52,606.606 INFO    ] No camera update needed
[2026-08-31 19:02:52,609.609 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:02:52,612.612 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:02:52,618.618 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:02:52,623.623 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:02:54,666.666 INFO    ] ================================================
[2026-08-31 19:02:54,681.681 INFO    ] Launching Daemon at Mon Aug 31 19:02:54 IST 2026
[2026-08-31 19:02:54,693.693 INFO    ] ================================================
[2026-08-31 19:02:55,259.259 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:02:55
[2026-08-31 19:02:55,842.842 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:02:56,103.103 INFO    ] Initializing speech engine...
[2026-08-31 19:02:56,121.121 INFO    ] 2026-08-31 19:02:56
[2026-08-31 19:02:56,373.373 INFO    ] 2026-08-31 19:02:56
[2026-08-31 19:02:56,408.408 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:02:56,609.609 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:02:56,669.669 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:02:56,813.813 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:02:56,873.873 INFO    ] time= 31/08/2026 19:02:56
[2026-08-31 19:02:56,922.922 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:02:56,947.947 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:02:57,004.004 INFO    ] No existing commands found in stream
[2026-08-31 19:03:02,017.017 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:03:02,021.021 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-08-31 19:03:05,572.572 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 19:03:05,575.575 INFO    ] Checking for system updates...
[2026-08-31 19:03:05,613.613 INFO    ] 200
[2026-08-31 19:03:05,615.615 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:03:05,671.671 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:03:05,673.673 INFO    ] No update needed
[2026-08-31 19:03:05,675.675 INFO    ] Checking for camera pi updates...
[2026-08-31 19:03:05,709.709 INFO    ] 200
[2026-08-31 19:03:05,712.712 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:03:05,754.754 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:03:05,850.850 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:03:05,853.853 INFO    ] No camera update needed
[2026-08-31 19:03:05,855.855 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:03:05,858.858 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:03:05,864.864 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:03:05,869.869 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:03:07,912.912 INFO    ] ================================================
[2026-08-31 19:03:07,928.928 INFO    ] Launching Daemon at Mon Aug 31 19:03:07 IST 2026
[2026-08-31 19:03:07,938.938 INFO    ] ================================================
[2026-08-31 19:03:08,571.571 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:03:08
[2026-08-31 19:03:09,222.222 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:03:09,511.511 INFO    ] Initializing speech engine...
[2026-08-31 19:03:09,521.521 INFO    ] 2026-08-31 19:03:09
[2026-08-31 19:03:09,792.792 INFO    ] 2026-08-31 19:03:09
[2026-08-31 19:03:09,850.850 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:03:10,079.079 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:03:10,090.090 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:03:10,350.350 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:03:10,357.357 INFO    ] time= 31/08/2026 19:03:10
[2026-08-31 19:03:10,375.375 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:03:10,405.405 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:03:10,538.538 INFO    ] No existing commands found in stream
[2026-08-31 19:03:15,569.569 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:03:15,572.572 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-08-31 19:03:17,930.930 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 19:03:17,933.933 INFO    ] Checking for system updates...
[2026-08-31 19:03:17,970.970 INFO    ] 200
[2026-08-31 19:03:17,973.973 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:03:18,025.025 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:03:18,027.027 INFO    ] No update needed
[2026-08-31 19:03:18,030.030 INFO    ] Checking for camera pi updates...
[2026-08-31 19:03:18,063.063 INFO    ] 200
[2026-08-31 19:03:18,066.066 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:03:18,110.110 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:03:18,182.182 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:03:18,185.185 INFO    ] No camera update needed
[2026-08-31 19:03:18,187.187 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:03:18,189.189 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:03:18,194.194 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:03:18,199.199 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:03:20,240.240 INFO    ] ================================================
[2026-08-31 19:03:20,255.255 INFO    ] Launching Daemon at Mon Aug 31 19:03:20 IST 2026
[2026-08-31 19:03:20,266.266 INFO    ] ================================================
[2026-08-31 19:03:20,885.885 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:03:20
[2026-08-31 19:03:21,504.504 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:03:21,779.779 INFO    ] Initializing speech engine...
[2026-08-31 19:03:21,788.788 INFO    ] 2026-08-31 19:03:21
[2026-08-31 19:03:22,046.046 INFO    ] 2026-08-31 19:03:22
[2026-08-31 19:03:22,077.077 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:03:22,326.326 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:03:22,335.335 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:03:22,472.472 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:03:22,532.532 INFO    ] time= 31/08/2026 19:03:22
[2026-08-31 19:03:22,576.576 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:03:22,606.606 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:03:22,732.732 INFO    ] No existing commands found in stream
[2026-08-31 19:03:27,762.762 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:03:27,765.765 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-08-31 19:03:29,864.864 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 19:03:29,867.867 INFO    ] Checking for system updates...
[2026-08-31 19:03:29,902.902 INFO    ] 200
[2026-08-31 19:03:29,904.904 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:03:29,958.958 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:03:29,961.961 INFO    ] No update needed
[2026-08-31 19:03:29,963.963 INFO    ] Checking for camera pi updates...
[2026-08-31 19:03:30,001.001 INFO    ] 200
[2026-08-31 19:03:30,004.004 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:03:30,047.047 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:03:30,227.227 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:03:30,230.230 INFO    ] No camera update needed
[2026-08-31 19:03:30,232.232 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:03:30,235.235 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:03:30,240.240 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:03:30,245.245 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:03:32,291.291 INFO    ] ================================================
[2026-08-31 19:03:32,308.308 INFO    ] Launching Daemon at Mon Aug 31 19:03:32 IST 2026
[2026-08-31 19:03:32,320.320 INFO    ] ================================================
[2026-08-31 19:03:32,926.926 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:03:32
[2026-08-31 19:03:33,531.531 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:03:33,799.799 INFO    ] Initializing speech engine...
[2026-08-31 19:03:33,808.808 INFO    ] 2026-08-31 19:03:33
[2026-08-31 19:03:34,056.056 INFO    ] 2026-08-31 19:03:34
[2026-08-31 19:03:34,120.120 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:03:34,342.342 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:03:34,351.351 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:03:34,484.484 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:03:34,518.518 INFO    ] time= 31/08/2026 19:03:34
[2026-08-31 19:03:34,572.572 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:03:34,615.615 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:03:34,726.726 INFO    ] No existing commands found in stream
[2026-08-31 19:03:39,744.744 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:03:39,747.747 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-08-31 19:03:43,032.032 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 19:03:43,035.035 INFO    ] Checking for system updates...
[2026-08-31 19:03:43,070.070 INFO    ] 200
[2026-08-31 19:03:43,072.072 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:03:43,132.132 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:03:43,134.134 INFO    ] No update needed
[2026-08-31 19:03:43,137.137 INFO    ] Checking for camera pi updates...
[2026-08-31 19:03:43,172.172 INFO    ] 200
[2026-08-31 19:03:43,175.175 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:03:43,219.219 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:03:43,326.326 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:03:43,329.329 INFO    ] No camera update needed
[2026-08-31 19:03:43,331.331 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:03:43,334.334 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:03:43,339.339 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:03:43,344.344 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:03:45,385.385 INFO    ] ================================================
[2026-08-31 19:03:45,400.400 INFO    ] Launching Daemon at Mon Aug 31 19:03:45 IST 2026
[2026-08-31 19:03:45,411.411 INFO    ] ================================================
[2026-08-31 19:03:45,978.978 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:03:45
[2026-08-31 19:03:46,560.560 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:03:46,828.828 INFO    ] Initializing speech engine...
[2026-08-31 19:03:46,837.837 INFO    ] 2026-08-31 19:03:46
[2026-08-31 19:03:47,088.088 INFO    ] 2026-08-31 19:03:47
[2026-08-31 19:03:47,147.147 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:03:47,400.400 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:03:47,405.405 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:03:47,614.614 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:03:47,637.637 INFO    ] time= 31/08/2026 19:03:47
[2026-08-31 19:03:47,643.643 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:03:47,664.664 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:03:47,776.776 INFO    ] No existing commands found in stream
[2026-08-31 19:03:52,800.800 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:03:52,803.803 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-08-31 19:03:55,527.527 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 19:03:55,530.530 INFO    ] Checking for system updates...
[2026-08-31 19:03:55,565.565 INFO    ] 200
[2026-08-31 19:03:55,568.568 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:03:55,620.620 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:03:55,623.623 INFO    ] No update needed
[2026-08-31 19:03:55,625.625 INFO    ] Checking for camera pi updates...
[2026-08-31 19:03:55,659.659 INFO    ] 200
[2026-08-31 19:03:55,661.661 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:03:55,701.701 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:03:55,794.794 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:03:55,797.797 INFO    ] No camera update needed
[2026-08-31 19:03:55,799.799 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:03:55,802.802 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:03:55,807.807 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:03:55,812.812 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:03:57,855.855 INFO    ] ================================================
[2026-08-31 19:03:57,870.870 INFO    ] Launching Daemon at Mon Aug 31 19:03:57 IST 2026
[2026-08-31 19:03:57,881.881 INFO    ] ================================================
[2026-08-31 19:03:58,453.453 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:03:58
[2026-08-31 19:03:59,034.034 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:03:59,309.309 INFO    ] Initializing speech engine...
[2026-08-31 19:03:59,317.317 INFO    ] 2026-08-31 19:03:59
[2026-08-31 19:03:59,574.574 INFO    ] 2026-08-31 19:03:59
[2026-08-31 19:03:59,609.609 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:03:59,777.777 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:03:59,790.790 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:03:59,936.936 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:03:59,941.941 INFO    ] time= 31/08/2026 19:03:59
[2026-08-31 19:03:59,947.947 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:03:59,988.988 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:04:00,142.142 INFO    ] No existing commands found in stream
[2026-08-31 19:04:05,153.153 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:04:05,155.155 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-08-31 19:04:07,948.948 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 19:04:07,951.951 INFO    ] Checking for system updates...
[2026-08-31 19:04:07,987.987 INFO    ] 200
[2026-08-31 19:04:07,989.989 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:04:08,042.042 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:04:08,044.044 INFO    ] No update needed
[2026-08-31 19:04:08,047.047 INFO    ] Checking for camera pi updates...
[2026-08-31 19:04:08,083.083 INFO    ] 200
[2026-08-31 19:04:08,086.086 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:04:08,126.126 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:04:08,207.207 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:04:08,209.209 INFO    ] No camera update needed
[2026-08-31 19:04:08,212.212 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:04:08,214.214 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:04:08,219.219 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:04:08,224.224 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:04:10,265.265 INFO    ] ================================================
[2026-08-31 19:04:10,281.281 INFO    ] Launching Daemon at Mon Aug 31 19:04:10 IST 2026
[2026-08-31 19:04:10,291.291 INFO    ] ================================================
[2026-08-31 19:04:10,861.861 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:04:10
[2026-08-31 19:04:11,455.455 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:04:11,703.703 INFO    ] Initializing speech engine...
[2026-08-31 19:04:11,711.711 INFO    ] 2026-08-31 19:04:11
[2026-08-31 19:04:11,987.987 INFO    ] 2026-08-31 19:04:11
[2026-08-31 19:04:12,023.023 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:04:12,274.274 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:04:12,284.284 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:04:12,494.494 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:04:12,542.542 INFO    ] time= 31/08/2026 19:04:12
[2026-08-31 19:04:12,548.548 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:04:12,568.568 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:04:12,696.696 INFO    ] No existing commands found in stream
[2026-08-31 19:04:17,711.711 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:04:17,713.713 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-08-31 19:04:20,148.148 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 19:04:20,150.150 INFO    ] Checking for system updates...
[2026-08-31 19:04:20,185.185 INFO    ] 200
[2026-08-31 19:04:20,188.188 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:04:20,244.244 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:04:20,246.246 INFO    ] No update needed
[2026-08-31 19:04:20,249.249 INFO    ] Checking for camera pi updates...
[2026-08-31 19:04:20,286.286 INFO    ] 200
[2026-08-31 19:04:20,289.289 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:04:20,328.328 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:04:20,432.432 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:04:20,435.435 INFO    ] No camera update needed
[2026-08-31 19:04:20,437.437 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:04:20,439.439 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:04:20,445.445 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:04:20,450.450 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:04:22,490.490 INFO    ] ================================================
[2026-08-31 19:04:22,506.506 INFO    ] Launching Daemon at Mon Aug 31 19:04:22 IST 2026
[2026-08-31 19:04:22,516.516 INFO    ] ================================================
[2026-08-31 19:04:23,095.095 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:04:23
[2026-08-31 19:04:23,695.695 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:04:23,974.974 INFO    ] Initializing speech engine...
[2026-08-31 19:04:23,983.983 INFO    ] 2026-08-31 19:04:23
[2026-08-31 19:04:24,227.227 INFO    ] 2026-08-31 19:04:24
[2026-08-31 19:04:24,262.262 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:04:24,514.514 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:04:24,522.522 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:04:24,740.740 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:04:24,780.780 INFO    ] time= 31/08/2026 19:04:24
[2026-08-31 19:04:24,787.787 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:04:24,805.805 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:04:24,936.936 INFO    ] No existing commands found in stream
[2026-08-31 19:04:29,951.951 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:04:29,953.953 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-08-31 19:04:32,573.573 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 19:04:32,576.576 INFO    ] Checking for system updates...
[2026-08-31 19:04:32,614.614 INFO    ] 200
[2026-08-31 19:04:32,617.617 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:04:32,673.673 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:04:32,676.676 INFO    ] No update needed
[2026-08-31 19:04:32,679.679 INFO    ] Checking for camera pi updates...
[2026-08-31 19:04:32,715.715 INFO    ] 200
[2026-08-31 19:04:32,717.717 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:04:32,766.766 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:04:32,818.818 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:04:32,821.821 INFO    ] No camera update needed
[2026-08-31 19:04:32,824.824 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:04:32,827.827 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:04:32,833.833 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:04:32,839.839 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:04:34,883.883 INFO    ] ================================================
[2026-08-31 19:04:34,899.899 INFO    ] Launching Daemon at Mon Aug 31 19:04:34 IST 2026
[2026-08-31 19:04:34,910.910 INFO    ] ================================================
[2026-08-31 19:04:35,484.484 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:04:35
[2026-08-31 19:04:36,082.082 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:04:36,361.361 INFO    ] Initializing speech engine...
[2026-08-31 19:04:36,368.368 INFO    ] 2026-08-31 19:04:36
[2026-08-31 19:04:36,629.629 INFO    ] 2026-08-31 19:04:36
[2026-08-31 19:04:36,683.683 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:04:36,911.911 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:04:36,916.916 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:04:37,163.163 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:04:37,175.175 INFO    ] time= 31/08/2026 19:04:37
[2026-08-31 19:04:37,193.193 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:04:37,222.222 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:04:37,326.326 INFO    ] No existing commands found in stream
[2026-08-31 19:04:42,339.339 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:04:42,342.342 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-08-31 19:04:43,577.577 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 19:04:43,580.580 INFO    ] Checking for system updates...
[2026-08-31 19:04:43,616.616 INFO    ] 200
[2026-08-31 19:04:43,619.619 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:04:43,673.673 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:04:43,675.675 INFO    ] No update needed
[2026-08-31 19:04:43,677.677 INFO    ] Checking for camera pi updates...
[2026-08-31 19:04:43,716.716 INFO    ] 200
[2026-08-31 19:04:43,719.719 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:04:43,764.764 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:04:43,829.829 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:04:43,831.831 INFO    ] No camera update needed
[2026-08-31 19:04:43,834.834 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:04:43,836.836 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:04:43,842.842 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:04:43,847.847 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:04:45,888.888 INFO    ] ================================================
[2026-08-31 19:04:45,904.904 INFO    ] Launching Daemon at Mon Aug 31 19:04:45 IST 2026
[2026-08-31 19:04:45,915.915 INFO    ] ================================================
[2026-08-31 19:04:46,497.497 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:04:46
[2026-08-31 19:04:47,096.096 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:04:47,360.360 INFO    ] Initializing speech engine...
[2026-08-31 19:04:47,376.376 INFO    ] 2026-08-31 19:04:47
[2026-08-31 19:04:47,658.658 INFO    ] 2026-08-31 19:04:47
[2026-08-31 19:04:47,696.696 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:04:47,917.917 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:04:47,937.937 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:04:48,137.137 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:04:48,145.145 INFO    ] time= 31/08/2026 19:04:48
[2026-08-31 19:04:48,184.184 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:04:48,239.239 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:04:48,342.342 INFO    ] No existing commands found in stream
[2026-08-31 19:04:53,353.353 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:04:53,356.356 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-08-31 19:04:54,828.828 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 19:04:54,830.830 INFO    ] Checking for system updates...
[2026-08-31 19:04:54,866.866 INFO    ] 200
[2026-08-31 19:04:54,869.869 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:04:54,921.921 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:04:54,924.924 INFO    ] No update needed
[2026-08-31 19:04:54,926.926 INFO    ] Checking for camera pi updates...
[2026-08-31 19:04:54,960.960 INFO    ] 200
[2026-08-31 19:04:54,963.963 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:04:55,007.007 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:04:55,088.088 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:04:55,090.090 INFO    ] No camera update needed
[2026-08-31 19:04:55,093.093 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:04:55,095.095 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:04:55,101.101 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:04:55,106.106 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:04:57,145.145 INFO    ] ================================================
[2026-08-31 19:04:57,160.160 INFO    ] Launching Daemon at Mon Aug 31 19:04:57 IST 2026
[2026-08-31 19:04:57,171.171 INFO    ] ================================================
[2026-08-31 19:04:57,742.742 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:04:57
[2026-08-31 19:04:58,387.387 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:04:58,663.663 INFO    ] Initializing speech engine...
[2026-08-31 19:04:58,678.678 INFO    ] 2026-08-31 19:04:58
[2026-08-31 19:04:58,942.942 INFO    ] 2026-08-31 19:04:58
[2026-08-31 19:04:58,985.985 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:04:59,234.234 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:04:59,240.240 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:04:59,448.448 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:04:59,500.500 INFO    ] time= 31/08/2026 19:04:59
[2026-08-31 19:04:59,507.507 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:04:59,524.524 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:04:59,650.650 INFO    ] No existing commands found in stream
[2026-08-31 19:05:04,667.667 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:05:04,670.670 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-08-31 19:05:08,012.012 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 19:05:08,015.015 INFO    ] Checking for system updates...
[2026-08-31 19:05:08,055.055 INFO    ] 200
[2026-08-31 19:05:08,058.058 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:05:08,110.110 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:05:08,112.112 INFO    ] No update needed
[2026-08-31 19:05:08,114.114 INFO    ] Checking for camera pi updates...
[2026-08-31 19:05:08,148.148 INFO    ] 200
[2026-08-31 19:05:08,150.150 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:05:08,200.200 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:05:08,265.265 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:05:08,267.267 INFO    ] No camera update needed
[2026-08-31 19:05:08,270.270 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:05:08,272.272 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:05:08,277.277 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:05:08,282.282 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:05:10,323.323 INFO    ] ================================================
[2026-08-31 19:05:10,340.340 INFO    ] Launching Daemon at Mon Aug 31 19:05:10 IST 2026
[2026-08-31 19:05:10,351.351 INFO    ] ================================================
[2026-08-31 19:05:10,938.938 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:05:10
[2026-08-31 19:05:11,545.545 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:05:11,832.832 INFO    ] Initializing speech engine...
[2026-08-31 19:05:11,846.846 INFO    ] 2026-08-31 19:05:11
[2026-08-31 19:05:12,116.116 INFO    ] 2026-08-31 19:05:12
[2026-08-31 19:05:12,155.155 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:05:12,379.379 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:05:12,397.397 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:05:12,610.610 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:05:12,647.647 INFO    ] time= 31/08/2026 19:05:12
[2026-08-31 19:05:12,698.698 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:05:12,757.757 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:05:12,896.896 INFO    ] No existing commands found in stream
[2026-08-31 19:05:17,914.914 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:05:17,917.917 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-08-31 19:05:20,527.527 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 19:05:20,529.529 INFO    ] Checking for system updates...
[2026-08-31 19:05:20,569.569 INFO    ] 200
[2026-08-31 19:05:20,572.572 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:05:20,624.624 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:05:20,627.627 INFO    ] No update needed
[2026-08-31 19:05:20,629.629 INFO    ] Checking for camera pi updates...
[2026-08-31 19:05:20,664.664 INFO    ] 200
[2026-08-31 19:05:20,666.666 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:05:20,710.710 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:05:20,791.791 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:05:20,794.794 INFO    ] No camera update needed
[2026-08-31 19:05:20,796.796 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:05:20,799.799 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:05:20,804.804 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:05:20,809.809 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:05:22,851.851 INFO    ] ================================================
[2026-08-31 19:05:22,866.866 INFO    ] Launching Daemon at Mon Aug 31 19:05:22 IST 2026
[2026-08-31 19:05:22,877.877 INFO    ] ================================================
[2026-08-31 19:05:23,446.446 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:05:23
[2026-08-31 19:05:24,033.033 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:05:24,312.312 INFO    ] Initializing speech engine...
[2026-08-31 19:05:24,322.322 INFO    ] 2026-08-31 19:05:24
[2026-08-31 19:05:24,575.575 INFO    ] 2026-08-31 19:05:24
[2026-08-31 19:05:24,612.612 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:05:24,822.822 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:05:24,830.830 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:05:24,962.962 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:05:24,968.968 INFO    ] time= 31/08/2026 19:05:24
[2026-08-31 19:05:25,019.019 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:05:25,037.037 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:05:25,166.166 INFO    ] No existing commands found in stream
[2026-08-31 19:05:30,176.176 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:05:30,179.179 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-08-31 19:05:30,751.751 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 19:05:30,754.754 INFO    ] Checking for system updates...
[2026-08-31 19:05:30,792.792 INFO    ] 200
[2026-08-31 19:05:30,795.795 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:05:30,847.847 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:05:30,849.849 INFO    ] No update needed
[2026-08-31 19:05:30,852.852 INFO    ] Checking for camera pi updates...
[2026-08-31 19:05:30,889.889 INFO    ] 200
[2026-08-31 19:05:30,891.891 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:05:30,931.931 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:05:31,013.013 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:05:31,016.016 INFO    ] No camera update needed
[2026-08-31 19:05:31,018.018 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:05:31,020.020 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:05:31,026.026 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:05:31,031.031 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:05:33,074.074 INFO    ] ================================================
[2026-08-31 19:05:33,090.090 INFO    ] Launching Daemon at Mon Aug 31 19:05:33 IST 2026
[2026-08-31 19:05:33,101.101 INFO    ] ================================================
[2026-08-31 19:05:33,681.681 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:05:33
[2026-08-31 19:05:34,281.281 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:05:34,567.567 INFO    ] Initializing speech engine...
[2026-08-31 19:05:34,577.577 INFO    ] 2026-08-31 19:05:34
[2026-08-31 19:05:34,846.846 INFO    ] 2026-08-31 19:05:34
[2026-08-31 19:05:34,882.882 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:05:35,083.083 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:05:35,097.097 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:05:35,259.259 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:05:35,269.269 INFO    ] time= 31/08/2026 19:05:35
[2026-08-31 19:05:35,276.276 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:05:35,303.303 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:05:35,420.420 INFO    ] No existing commands found in stream
[2026-08-31 19:05:40,445.445 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:05:40,448.448 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-08-31 19:05:42,612.612 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 19:05:42,614.614 INFO    ] Checking for system updates...
[2026-08-31 19:05:42,655.655 INFO    ] 200
[2026-08-31 19:05:42,657.657 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:05:42,717.717 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:05:42,719.719 INFO    ] No update needed
[2026-08-31 19:05:42,722.722 INFO    ] Checking for camera pi updates...
[2026-08-31 19:05:42,759.759 INFO    ] 200
[2026-08-31 19:05:42,762.762 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:05:42,802.802 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:05:42,882.882 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:05:42,885.885 INFO    ] No camera update needed
[2026-08-31 19:05:42,887.887 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:05:42,890.890 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:05:42,895.895 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:05:42,900.900 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:05:44,941.941 INFO    ] ================================================
[2026-08-31 19:05:44,956.956 INFO    ] Launching Daemon at Mon Aug 31 19:05:44 IST 2026
[2026-08-31 19:05:44,967.967 INFO    ] ================================================
[2026-08-31 19:05:45,620.620 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:05:45
[2026-08-31 19:05:46,291.291 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:05:46,599.599 INFO    ] Initializing speech engine...
[2026-08-31 19:05:46,613.613 INFO    ] 2026-08-31 19:05:46
[2026-08-31 19:05:46,902.902 INFO    ] 2026-08-31 19:05:46
[2026-08-31 19:05:47,014.014 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:05:47,198.198 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:05:47,204.204 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:05:47,409.409 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:05:47,447.447 INFO    ] time= 31/08/2026 19:05:47
[2026-08-31 19:05:47,466.466 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:05:47,494.494 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:05:47,606.606 INFO    ] No existing commands found in stream
[2026-08-31 19:05:52,630.630 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:05:52,633.633 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-08-31 19:05:53,907.907 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 19:05:53,909.909 INFO    ] Checking for system updates...
[2026-08-31 19:05:53,945.945 INFO    ] 200
[2026-08-31 19:05:53,948.948 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:05:54,011.011 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:05:54,014.014 INFO    ] No update needed
[2026-08-31 19:05:54,016.016 INFO    ] Checking for camera pi updates...
[2026-08-31 19:05:54,049.049 INFO    ] 200
[2026-08-31 19:05:54,052.052 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:05:54,091.091 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:05:54,178.178 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:05:54,180.180 INFO    ] No camera update needed
[2026-08-31 19:05:54,183.183 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:05:54,185.185 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:05:54,190.190 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:05:54,195.195 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:05:56,236.236 INFO    ] ================================================
[2026-08-31 19:05:56,252.252 INFO    ] Launching Daemon at Mon Aug 31 19:05:56 IST 2026
[2026-08-31 19:05:56,263.263 INFO    ] ================================================
[2026-08-31 19:05:56,839.839 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:05:56
[2026-08-31 19:05:57,437.437 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:05:57,714.714 INFO    ] Initializing speech engine...
[2026-08-31 19:05:57,723.723 INFO    ] 2026-08-31 19:05:57
[2026-08-31 19:05:57,978.978 INFO    ] 2026-08-31 19:05:57
[2026-08-31 19:05:58,014.014 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:05:58,261.261 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:05:58,271.271 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:05:58,405.405 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:05:58,470.470 INFO    ] time= 31/08/2026 19:05:58
[2026-08-31 19:05:58,529.529 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:05:58,540.540 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:05:58,665.665 INFO    ] No existing commands found in stream
[2026-08-31 19:06:03,691.691 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:06:03,693.693 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-08-31 19:06:06,734.734 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 19:06:06,736.736 INFO    ] Checking for system updates...
[2026-08-31 19:06:06,772.772 INFO    ] 200
[2026-08-31 19:06:06,775.775 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:06:06,834.834 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:06:06,836.836 INFO    ] No update needed
[2026-08-31 19:06:06,839.839 INFO    ] Checking for camera pi updates...
[2026-08-31 19:06:06,873.873 INFO    ] 200
[2026-08-31 19:06:06,876.876 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:06:06,918.918 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:06:06,997.997 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:06:07,000.000 INFO    ] No camera update needed
[2026-08-31 19:06:07,005.005 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:06:07,008.008 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:06:07,015.015 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:06:07,021.021 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:06:09,064.064 INFO    ] ================================================
[2026-08-31 19:06:09,081.081 INFO    ] Launching Daemon at Mon Aug 31 19:06:09 IST 2026
[2026-08-31 19:06:09,093.093 INFO    ] ================================================
[2026-08-31 19:06:09,662.662 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:06:09
[2026-08-31 19:06:10,247.247 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:06:10,521.521 INFO    ] Initializing speech engine...
[2026-08-31 19:06:10,530.530 INFO    ] 2026-08-31 19:06:10
[2026-08-31 19:06:10,771.771 INFO    ] 2026-08-31 19:06:10
[2026-08-31 19:06:10,806.806 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:06:11,063.063 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:06:11,067.067 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:06:11,207.207 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:06:11,272.272 INFO    ] time= 31/08/2026 19:06:11
[2026-08-31 19:06:11,328.328 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:06:11,335.335 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:06:11,474.474 INFO    ] No existing commands found in stream
[2026-08-31 19:06:16,490.490 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:06:16,493.493 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-08-31 19:06:18,975.975 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 19:06:18,978.978 INFO    ] Checking for system updates...
[2026-08-31 19:06:19,017.017 INFO    ] 200
[2026-08-31 19:06:19,020.020 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:06:19,079.079 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:06:19,081.081 INFO    ] No update needed
[2026-08-31 19:06:19,084.084 INFO    ] Checking for camera pi updates...
[2026-08-31 19:06:19,117.117 INFO    ] 200
[2026-08-31 19:06:19,120.120 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:06:19,161.161 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:06:19,261.261 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:06:19,263.263 INFO    ] No camera update needed
[2026-08-31 19:06:19,265.265 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:06:19,268.268 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:06:19,273.273 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:06:19,278.278 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:06:21,321.321 INFO    ] ================================================
[2026-08-31 19:06:21,336.336 INFO    ] Launching Daemon at Mon Aug 31 19:06:21 IST 2026
[2026-08-31 19:06:21,348.348 INFO    ] ================================================
[2026-08-31 19:06:21,919.919 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:06:21
[2026-08-31 19:06:22,512.512 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:06:22,771.771 INFO    ] Initializing speech engine...
[2026-08-31 19:06:22,787.787 INFO    ] 2026-08-31 19:06:22
[2026-08-31 19:06:23,073.073 INFO    ] 2026-08-31 19:06:23
[2026-08-31 19:06:23,111.111 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:06:23,333.333 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:06:23,342.342 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:06:23,489.489 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:06:23,494.494 INFO    ] time= 31/08/2026 19:06:23
[2026-08-31 19:06:23,501.501 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:06:23,507.507 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:06:23,664.664 INFO    ] No existing commands found in stream
[2026-08-31 19:06:28,691.691 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:06:28,693.693 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-08-31 19:06:31,097.097 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 19:06:31,100.100 INFO    ] Checking for system updates...
[2026-08-31 19:06:31,139.139 INFO    ] 200
[2026-08-31 19:06:31,142.142 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:06:31,195.195 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:06:31,197.197 INFO    ] No update needed
[2026-08-31 19:06:31,200.200 INFO    ] Checking for camera pi updates...
[2026-08-31 19:06:31,237.237 INFO    ] 200
[2026-08-31 19:06:31,240.240 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:06:31,280.280 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:06:31,371.371 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:06:31,373.373 INFO    ] No camera update needed
[2026-08-31 19:06:31,376.376 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:06:31,378.378 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:06:31,384.384 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:06:31,389.389 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:06:33,430.430 INFO    ] ================================================
[2026-08-31 19:06:33,446.446 INFO    ] Launching Daemon at Mon Aug 31 19:06:33 IST 2026
[2026-08-31 19:06:33,458.458 INFO    ] ================================================
[2026-08-31 19:06:34,040.040 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:06:34
[2026-08-31 19:06:34,624.624 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:06:34,894.894 INFO    ] Initializing speech engine...
[2026-08-31 19:06:34,909.909 INFO    ] 2026-08-31 19:06:34
[2026-08-31 19:06:35,181.181 INFO    ] 2026-08-31 19:06:35
[2026-08-31 19:06:35,219.219 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:06:35,412.412 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:06:35,419.419 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:06:35,589.589 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:06:35,600.600 INFO    ] time= 31/08/2026 19:06:35
[2026-08-31 19:06:35,604.604 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:06:35,610.610 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:06:35,683.683 INFO    ] No existing commands found in stream
[2026-08-31 19:06:40,696.696 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:06:40,699.699 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-08-31 19:06:43,258.258 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 19:06:43,260.260 INFO    ] Checking for system updates...
[2026-08-31 19:06:43,299.299 INFO    ] 200
[2026-08-31 19:06:43,302.302 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:06:43,354.354 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:06:43,356.356 INFO    ] No update needed
[2026-08-31 19:06:43,359.359 INFO    ] Checking for camera pi updates...
[2026-08-31 19:06:43,392.392 INFO    ] 200
[2026-08-31 19:06:43,394.394 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:06:43,439.439 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:06:43,521.521 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:06:43,523.523 INFO    ] No camera update needed
[2026-08-31 19:06:43,526.526 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:06:43,528.528 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:06:43,533.533 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:06:43,538.538 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:06:45,580.580 INFO    ] ================================================
[2026-08-31 19:06:45,597.597 INFO    ] Launching Daemon at Mon Aug 31 19:06:45 IST 2026
[2026-08-31 19:06:45,609.609 INFO    ] ================================================
[2026-08-31 19:06:46,186.186 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:06:46
[2026-08-31 19:06:46,770.770 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:06:47,021.021 INFO    ] Initializing speech engine...
[2026-08-31 19:06:47,027.027 INFO    ] 2026-08-31 19:06:47
[2026-08-31 19:06:47,323.323 INFO    ] 2026-08-31 19:06:47
[2026-08-31 19:06:47,349.349 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:06:47,578.578 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:06:47,588.588 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:06:47,806.806 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:06:47,828.828 INFO    ] time= 31/08/2026 19:06:47
[2026-08-31 19:06:47,868.868 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:06:47,912.912 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:06:48,011.011 INFO    ] No existing commands found in stream
[2026-08-31 19:06:53,023.023 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:06:53,026.026 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-08-31 19:06:56,112.112 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 19:06:56,115.115 INFO    ] Checking for system updates...
[2026-08-31 19:06:56,151.151 INFO    ] 200
[2026-08-31 19:06:56,154.154 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:06:56,207.207 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:06:56,209.209 INFO    ] No update needed
[2026-08-31 19:06:56,211.211 INFO    ] Checking for camera pi updates...
[2026-08-31 19:06:56,248.248 INFO    ] 200
[2026-08-31 19:06:56,250.250 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:06:56,290.290 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:06:56,369.369 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:06:56,371.371 INFO    ] No camera update needed
[2026-08-31 19:06:56,373.373 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:06:56,375.375 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:06:56,381.381 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:06:56,386.386 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:06:58,427.427 INFO    ] ================================================
[2026-08-31 19:06:58,443.443 INFO    ] Launching Daemon at Mon Aug 31 19:06:58 IST 2026
[2026-08-31 19:06:58,454.454 INFO    ] ================================================
[2026-08-31 19:06:59,031.031 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:06:59
[2026-08-31 19:06:59,621.621 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:06:59,873.873 INFO    ] Initializing speech engine...
[2026-08-31 19:06:59,881.881 INFO    ] 2026-08-31 19:06:59
[2026-08-31 19:07:00,174.174 INFO    ] 2026-08-31 19:07:00
[2026-08-31 19:07:00,210.210 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:07:00,405.405 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:07:00,419.419 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:07:00,578.578 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:07:00,585.585 INFO    ] time= 31/08/2026 19:07:00
[2026-08-31 19:07:00,590.590 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:07:00,596.596 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:07:00,671.671 INFO    ] No existing commands found in stream
[2026-08-31 19:07:05,687.687 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:07:05,690.690 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-08-31 19:07:06,217.217 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 19:07:06,219.219 INFO    ] Checking for system updates...
[2026-08-31 19:07:06,255.255 INFO    ] 200
[2026-08-31 19:07:06,257.257 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:07:06,309.309 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:07:06,311.311 INFO    ] No update needed
[2026-08-31 19:07:06,313.313 INFO    ] Checking for camera pi updates...
[2026-08-31 19:07:06,350.350 INFO    ] 200
[2026-08-31 19:07:06,353.353 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:07:06,393.393 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:07:06,479.479 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:07:06,484.484 INFO    ] No camera update needed
[2026-08-31 19:07:06,487.487 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:07:06,490.490 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:07:06,497.497 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:07:06,503.503 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:07:08,545.545 INFO    ] ================================================
[2026-08-31 19:07:08,561.561 INFO    ] Launching Daemon at Mon Aug 31 19:07:08 IST 2026
[2026-08-31 19:07:08,572.572 INFO    ] ================================================
[2026-08-31 19:07:09,138.138 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:07:09
[2026-08-31 19:07:09,721.721 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:07:09,968.968 INFO    ] Initializing speech engine...
[2026-08-31 19:07:09,992.992 INFO    ] 2026-08-31 19:07:09
[2026-08-31 19:07:10,246.246 INFO    ] 2026-08-31 19:07:10
[2026-08-31 19:07:10,282.282 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:07:10,534.534 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:07:10,543.543 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:07:10,737.737 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:07:10,802.802 INFO    ] time= 31/08/2026 19:07:10
[2026-08-31 19:07:10,808.808 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:07:10,823.823 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:07:10,955.955 INFO    ] No existing commands found in stream
[2026-08-31 19:07:15,969.969 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:07:15,971.971 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-08-31 19:07:17,571.571 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 19:07:17,574.574 INFO    ] Checking for system updates...
[2026-08-31 19:07:17,615.615 INFO    ] 200
[2026-08-31 19:07:17,618.618 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:07:17,679.679 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:07:17,682.682 INFO    ] No update needed
[2026-08-31 19:07:17,685.685 INFO    ] Checking for camera pi updates...
[2026-08-31 19:07:17,722.722 INFO    ] 200
[2026-08-31 19:07:17,725.725 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:07:17,766.766 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:07:17,848.848 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:07:17,851.851 INFO    ] No camera update needed
[2026-08-31 19:07:17,853.853 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:07:17,856.856 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:07:17,862.862 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:07:17,868.868 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:07:19,910.910 INFO    ] ================================================
[2026-08-31 19:07:19,925.925 INFO    ] Launching Daemon at Mon Aug 31 19:07:19 IST 2026
[2026-08-31 19:07:19,936.936 INFO    ] ================================================
[2026-08-31 19:07:20,518.518 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:07:20
[2026-08-31 19:07:21,118.118 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:07:21,395.395 INFO    ] Initializing speech engine...
[2026-08-31 19:07:21,402.402 INFO    ] 2026-08-31 19:07:21
[2026-08-31 19:07:21,664.664 INFO    ] 2026-08-31 19:07:21
[2026-08-31 19:07:21,719.719 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:07:21,970.970 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:07:21,974.974 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:07:22,131.131 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:07:22,134.134 INFO    ] time= 31/08/2026 19:07:22
[2026-08-31 19:07:22,136.136 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:07:22,190.190 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:07:22,330.330 INFO    ] No existing commands found in stream
[2026-08-31 19:07:27,357.357 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:07:27,365.365 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-08-31 19:07:31,786.786 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 19:07:31,789.789 INFO    ] Checking for system updates...
[2026-08-31 19:07:31,827.827 INFO    ] 200
[2026-08-31 19:07:31,830.830 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:07:31,893.893 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:07:31,896.896 INFO    ] No update needed
[2026-08-31 19:07:31,898.898 INFO    ] Checking for camera pi updates...
[2026-08-31 19:07:31,939.939 INFO    ] 200
[2026-08-31 19:07:31,942.942 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:07:31,986.986 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:07:32,047.047 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:07:32,050.050 INFO    ] No camera update needed
[2026-08-31 19:07:32,053.053 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:07:32,055.055 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:07:32,061.061 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:07:32,067.067 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:07:34,108.108 INFO    ] ================================================
[2026-08-31 19:07:34,124.124 INFO    ] Launching Daemon at Mon Aug 31 19:07:34 IST 2026
[2026-08-31 19:07:34,134.134 INFO    ] ================================================
[2026-08-31 19:07:34,700.700 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:07:34
[2026-08-31 19:07:35,300.300 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:07:35,568.568 INFO    ] Initializing speech engine...
[2026-08-31 19:07:35,571.571 INFO    ] 2026-08-31 19:07:35
[2026-08-31 19:07:35,843.843 INFO    ] 2026-08-31 19:07:35
[2026-08-31 19:07:35,879.879 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:07:36,131.131 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:07:36,140.140 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:07:36,273.273 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:07:36,326.326 INFO    ] time= 31/08/2026 19:07:36
[2026-08-31 19:07:36,375.375 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:07:36,407.407 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:07:36,496.496 INFO    ] No existing commands found in stream
[2026-08-31 19:07:41,507.507 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:07:41,510.510 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-08-31 19:07:44,463.463 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 19:07:44,465.465 INFO    ] Checking for system updates...
[2026-08-31 19:07:44,502.502 INFO    ] 200
[2026-08-31 19:07:44,505.505 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:07:44,559.559 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:07:44,561.561 INFO    ] No update needed
[2026-08-31 19:07:44,564.564 INFO    ] Checking for camera pi updates...
[2026-08-31 19:07:44,600.600 INFO    ] 200
[2026-08-31 19:07:44,603.603 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:07:44,644.644 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:07:44,828.828 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:07:44,830.830 INFO    ] No camera update needed
[2026-08-31 19:07:44,833.833 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:07:44,835.835 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:07:44,840.840 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:07:44,845.845 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:07:46,888.888 INFO    ] ================================================
[2026-08-31 19:07:46,903.903 INFO    ] Launching Daemon at Mon Aug 31 19:07:46 IST 2026
[2026-08-31 19:07:46,914.914 INFO    ] ================================================
[2026-08-31 19:07:47,575.575 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:07:47
[2026-08-31 19:07:48,252.252 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:07:48,557.557 INFO    ] Initializing speech engine...
[2026-08-31 19:07:48,567.567 INFO    ] 2026-08-31 19:07:48
[2026-08-31 19:07:48,839.839 INFO    ] 2026-08-31 19:07:48
[2026-08-31 19:07:48,899.899 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:07:49,161.161 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:07:49,179.179 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:07:49,388.388 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:07:49,408.408 INFO    ] time= 31/08/2026 19:07:49
[2026-08-31 19:07:49,427.427 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:07:49,456.456 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:07:49,571.571 INFO    ] No existing commands found in stream
[2026-08-31 19:07:54,598.598 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:07:54,601.601 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-08-31 19:07:57,102.102 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 19:07:57,105.105 INFO    ] Checking for system updates...
[2026-08-31 19:07:57,142.142 INFO    ] 200
[2026-08-31 19:07:57,145.145 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:07:57,205.205 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:07:57,209.209 INFO    ] No update needed
[2026-08-31 19:07:57,212.212 INFO    ] Checking for camera pi updates...
[2026-08-31 19:07:57,250.250 INFO    ] 200
[2026-08-31 19:07:57,253.253 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:07:57,300.300 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:07:57,398.398 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:07:57,400.400 INFO    ] No camera update needed
[2026-08-31 19:07:57,403.403 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:07:57,406.406 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:07:57,412.412 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:07:57,418.418 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:07:59,460.460 INFO    ] ================================================
[2026-08-31 19:07:59,475.475 INFO    ] Launching Daemon at Mon Aug 31 19:07:59 IST 2026
[2026-08-31 19:07:59,486.486 INFO    ] ================================================
[2026-08-31 19:08:00,067.067 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:08:00
[2026-08-31 19:08:00,666.666 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:08:00,926.926 INFO    ] Initializing speech engine...
[2026-08-31 19:08:00,934.934 INFO    ] 2026-08-31 19:08:00
[2026-08-31 19:08:01,233.233 INFO    ] 2026-08-31 19:08:01
[2026-08-31 19:08:01,267.267 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:08:01,495.495 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:08:01,504.504 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:08:01,651.651 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:08:01,666.666 INFO    ] time= 31/08/2026 19:08:01
[2026-08-31 19:08:01,670.670 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:08:01,679.679 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:08:01,810.810 INFO    ] No existing commands found in stream
[2026-08-31 19:08:06,826.826 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:08:06,829.829 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-08-31 19:08:08,327.327 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 19:08:08,330.330 INFO    ] Checking for system updates...
[2026-08-31 19:08:08,367.367 INFO    ] 200
[2026-08-31 19:08:08,370.370 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:08:08,431.431 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:08:08,433.433 INFO    ] No update needed
[2026-08-31 19:08:08,436.436 INFO    ] Checking for camera pi updates...
[2026-08-31 19:08:08,475.475 INFO    ] 200
[2026-08-31 19:08:08,478.478 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:08:08,519.519 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:08:08,610.610 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:08:08,613.613 INFO    ] No camera update needed
[2026-08-31 19:08:08,616.616 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:08:08,618.618 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:08:08,625.625 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:08:08,630.630 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:08:10,671.671 INFO    ] ================================================
[2026-08-31 19:08:10,686.686 INFO    ] Launching Daemon at Mon Aug 31 19:08:10 IST 2026
[2026-08-31 19:08:10,697.697 INFO    ] ================================================
[2026-08-31 19:08:11,264.264 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:08:11
[2026-08-31 19:08:11,847.847 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:08:12,102.102 INFO    ] Initializing speech engine...
[2026-08-31 19:08:12,110.110 INFO    ] 2026-08-31 19:08:12
[2026-08-31 19:08:12,405.405 INFO    ] 2026-08-31 19:08:12
[2026-08-31 19:08:12,443.443 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:08:12,645.645 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:08:12,658.658 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:08:12,821.821 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:08:12,829.829 INFO    ] time= 31/08/2026 19:08:12
[2026-08-31 19:08:12,834.834 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:08:12,840.840 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:08:12,969.969 INFO    ] No existing commands found in stream
[2026-08-31 19:08:17,989.989 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:08:17,992.992 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-08-31 19:08:22,046.046 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 19:08:22,048.048 INFO    ] Checking for system updates...
[2026-08-31 19:08:22,083.083 INFO    ] 200
[2026-08-31 19:08:22,086.086 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:08:22,140.140 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:08:22,142.142 INFO    ] No update needed
[2026-08-31 19:08:22,144.144 INFO    ] Checking for camera pi updates...
[2026-08-31 19:08:22,178.178 INFO    ] 200
[2026-08-31 19:08:22,180.180 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:08:22,222.222 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:08:22,309.309 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:08:22,312.312 INFO    ] No camera update needed
[2026-08-31 19:08:22,314.314 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:08:22,316.316 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:08:22,322.322 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:08:22,327.327 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:08:24,366.366 INFO    ] ================================================
[2026-08-31 19:08:24,381.381 INFO    ] Launching Daemon at Mon Aug 31 19:08:24 IST 2026
[2026-08-31 19:08:24,392.392 INFO    ] ================================================
[2026-08-31 19:08:25,046.046 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:08:25
[2026-08-31 19:08:25,717.717 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:08:26,003.003 INFO    ] Initializing speech engine...
[2026-08-31 19:08:26,024.024 INFO    ] 2026-08-31 19:08:26
[2026-08-31 19:08:26,286.286 INFO    ] 2026-08-31 19:08:26
[2026-08-31 19:08:26,351.351 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:08:26,577.577 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:08:26,587.587 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:08:26,722.722 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:08:26,787.787 INFO    ] time= 31/08/2026 19:08:26
[2026-08-31 19:08:26,850.850 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:08:26,857.857 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:08:26,988.988 INFO    ] No existing commands found in stream
[2026-08-31 19:08:32,013.013 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:08:32,016.016 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-08-31 19:08:33,346.346 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 19:08:33,349.349 INFO    ] Checking for system updates...
[2026-08-31 19:08:33,386.386 INFO    ] 200
[2026-08-31 19:08:33,389.389 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:08:33,449.449 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:08:33,451.451 INFO    ] No update needed
[2026-08-31 19:08:33,453.453 INFO    ] Checking for camera pi updates...
[2026-08-31 19:08:33,486.486 INFO    ] 200
[2026-08-31 19:08:33,489.489 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:08:33,529.529 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:08:33,613.613 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:08:33,615.615 INFO    ] No camera update needed
[2026-08-31 19:08:33,618.618 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:08:33,620.620 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:08:33,625.625 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:08:33,630.630 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:08:35,669.669 INFO    ] ================================================
[2026-08-31 19:08:35,685.685 INFO    ] Launching Daemon at Mon Aug 31 19:08:35 IST 2026
[2026-08-31 19:08:35,695.695 INFO    ] ================================================
[2026-08-31 19:08:36,260.260 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:08:36
[2026-08-31 19:08:36,842.842 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:08:37,114.114 INFO    ] Initializing speech engine...
[2026-08-31 19:08:37,121.121 INFO    ] 2026-08-31 19:08:37
[2026-08-31 19:08:37,379.379 INFO    ] 2026-08-31 19:08:37
[2026-08-31 19:08:37,430.430 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:08:37,657.657 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:08:37,661.661 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:08:37,793.793 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:08:37,846.846 INFO    ] time= 31/08/2026 19:08:37
[2026-08-31 19:08:37,900.900 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:08:37,929.929 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:08:38,001.001 INFO    ] No existing commands found in stream
[2026-08-31 19:08:43,016.016 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:08:43,019.019 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-08-31 19:08:44,129.129 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 19:08:44,131.131 INFO    ] Checking for system updates...
[2026-08-31 19:08:44,168.168 INFO    ] 200
[2026-08-31 19:08:44,170.170 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:08:44,223.223 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:08:44,226.226 INFO    ] No update needed
[2026-08-31 19:08:44,228.228 INFO    ] Checking for camera pi updates...
[2026-08-31 19:08:44,269.269 INFO    ] 200
[2026-08-31 19:08:44,271.271 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:08:44,311.311 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:08:44,390.390 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:08:44,392.392 INFO    ] No camera update needed
[2026-08-31 19:08:44,394.394 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:08:44,397.397 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:08:44,402.402 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:08:44,407.407 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:08:46,448.448 INFO    ] ================================================
[2026-08-31 19:08:46,464.464 INFO    ] Launching Daemon at Mon Aug 31 19:08:46 IST 2026
[2026-08-31 19:08:46,474.474 INFO    ] ================================================
[2026-08-31 19:08:47,065.065 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:08:47
[2026-08-31 19:08:47,650.650 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:08:47,957.957 INFO    ] Initializing speech engine...
[2026-08-31 19:08:47,968.968 INFO    ] 2026-08-31 19:08:47
[2026-08-31 19:08:48,253.253 INFO    ] 2026-08-31 19:08:48
[2026-08-31 19:08:48,363.363 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:08:48,576.576 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:08:48,582.582 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:08:48,775.775 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:08:48,783.783 INFO    ] time= 31/08/2026 19:08:48
[2026-08-31 19:08:48,805.805 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:08:48,833.833 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:08:48,962.962 INFO    ] No existing commands found in stream
[2026-08-31 19:08:53,993.993 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:08:53,996.996 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-08-31 19:08:55,729.729 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 19:08:55,731.731 INFO    ] Checking for system updates...
[2026-08-31 19:08:55,769.769 INFO    ] 200
[2026-08-31 19:08:55,772.772 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:08:55,832.832 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:08:55,835.835 INFO    ] No update needed
[2026-08-31 19:08:55,838.838 INFO    ] Checking for camera pi updates...
[2026-08-31 19:08:55,874.874 INFO    ] 200
[2026-08-31 19:08:55,876.876 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:08:55,919.919 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:08:56,020.020 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:08:56,023.023 INFO    ] No camera update needed
[2026-08-31 19:08:56,025.025 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:08:56,028.028 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:08:56,034.034 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:08:56,040.040 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:08:58,080.080 INFO    ] ================================================
[2026-08-31 19:08:58,096.096 INFO    ] Launching Daemon at Mon Aug 31 19:08:58 IST 2026
[2026-08-31 19:08:58,108.108 INFO    ] ================================================
[2026-08-31 19:08:58,702.702 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:08:58
[2026-08-31 19:08:59,283.283 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:08:59,555.555 INFO    ] Initializing speech engine...
[2026-08-31 19:08:59,563.563 INFO    ] 2026-08-31 19:08:59
[2026-08-31 19:08:59,813.813 INFO    ] 2026-08-31 19:08:59
[2026-08-31 19:08:59,848.848 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:09:00,106.106 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:09:00,115.115 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:09:00,351.351 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:09:00,390.390 INFO    ] time= 31/08/2026 19:09:00
[2026-08-31 19:09:00,409.409 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:09:00,420.420 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:09:00,589.589 INFO    ] No existing commands found in stream
[2026-08-31 19:09:05,621.621 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:09:05,625.625 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-08-31 19:09:07,584.584 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 19:09:07,587.587 INFO    ] Checking for system updates...
[2026-08-31 19:09:07,631.631 INFO    ] 200
[2026-08-31 19:09:07,635.635 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:09:07,693.693 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:09:07,696.696 INFO    ] No update needed
[2026-08-31 19:09:07,699.699 INFO    ] Checking for camera pi updates...
[2026-08-31 19:09:07,737.737 INFO    ] 200
[2026-08-31 19:09:07,740.740 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:09:07,795.795 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:09:07,902.902 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:09:07,905.905 INFO    ] No camera update needed
[2026-08-31 19:09:07,909.909 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:09:07,912.912 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:09:07,926.926 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:09:07,932.932 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:09:09,976.976 INFO    ] ================================================
[2026-08-31 19:09:09,993.993 INFO    ] Launching Daemon at Mon Aug 31 19:09:09 IST 2026
[2026-08-31 19:09:10,005.005 INFO    ] ================================================
[2026-08-31 19:09:10,598.598 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:09:10
[2026-08-31 19:09:11,214.214 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:09:11,491.491 INFO    ] Initializing speech engine...
[2026-08-31 19:09:11,498.498 INFO    ] 2026-08-31 19:09:11
[2026-08-31 19:09:11,787.787 INFO    ] 2026-08-31 19:09:11
[2026-08-31 19:09:11,826.826 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:09:12,008.008 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:09:12,022.022 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:09:12,172.172 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:09:12,180.180 INFO    ] time= 31/08/2026 19:09:12
[2026-08-31 19:09:12,222.222 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:09:12,252.252 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:09:12,378.378 INFO    ] No existing commands found in stream
[2026-08-31 19:09:17,390.390 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:09:17,393.393 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-08-31 19:09:21,776.776 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 19:09:21,778.778 INFO    ] Checking for system updates...
[2026-08-31 19:09:21,815.815 INFO    ] 200
[2026-08-31 19:09:21,818.818 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:09:21,871.871 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:09:21,874.874 INFO    ] No update needed
[2026-08-31 19:09:21,877.877 INFO    ] Checking for camera pi updates...
[2026-08-31 19:09:21,911.911 INFO    ] 200
[2026-08-31 19:09:21,914.914 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:09:21,955.955 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:09:22,037.037 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:09:22,040.040 INFO    ] No camera update needed
[2026-08-31 19:09:22,042.042 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:09:22,045.045 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:09:22,051.051 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:09:22,057.057 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:09:24,101.101 INFO    ] ================================================
[2026-08-31 19:09:24,117.117 INFO    ] Launching Daemon at Mon Aug 31 19:09:24 IST 2026
[2026-08-31 19:09:24,128.128 INFO    ] ================================================
[2026-08-31 19:09:24,784.784 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:09:24
[2026-08-31 19:09:25,462.462 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:09:25,767.767 INFO    ] Initializing speech engine...
[2026-08-31 19:09:25,776.776 INFO    ] 2026-08-31 19:09:25
[2026-08-31 19:09:26,057.057 INFO    ] 2026-08-31 19:09:26
[2026-08-31 19:09:26,113.113 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:09:26,372.372 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:09:26,391.391 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:09:26,612.612 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:09:26,619.619 INFO    ] time= 31/08/2026 19:09:26
[2026-08-31 19:09:26,638.638 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:09:26,668.668 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:09:26,778.778 INFO    ] No existing commands found in stream
[2026-08-31 19:09:31,800.800 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:09:31,804.804 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-08-31 19:09:34,108.108 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 19:09:34,111.111 INFO    ] Checking for system updates...
[2026-08-31 19:09:34,152.152 INFO    ] 200
[2026-08-31 19:09:34,155.155 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:09:34,215.215 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:09:34,218.218 INFO    ] No update needed
[2026-08-31 19:09:34,220.220 INFO    ] Checking for camera pi updates...
[2026-08-31 19:09:34,253.253 INFO    ] 200
[2026-08-31 19:09:34,255.255 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:09:34,296.296 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:09:34,401.401 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:09:34,403.403 INFO    ] No camera update needed
[2026-08-31 19:09:34,406.406 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:09:34,408.408 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:09:34,414.414 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:09:34,418.418 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:09:36,460.460 INFO    ] ================================================
[2026-08-31 19:09:36,474.474 INFO    ] Launching Daemon at Mon Aug 31 19:09:36 IST 2026
[2026-08-31 19:09:36,486.486 INFO    ] ================================================
[2026-08-31 19:09:37,066.066 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:09:37
[2026-08-31 19:09:37,665.665 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:09:37,934.934 INFO    ] Initializing speech engine...
[2026-08-31 19:09:37,945.945 INFO    ] 2026-08-31 19:09:37
[2026-08-31 19:09:38,224.224 INFO    ] 2026-08-31 19:09:38
[2026-08-31 19:09:38,263.263 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:09:38,455.455 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:09:38,457.457 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:09:38,599.599 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:09:38,619.619 INFO    ] time= 31/08/2026 19:09:38
[2026-08-31 19:09:38,645.645 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:09:38,650.650 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:09:38,735.735 INFO    ] No existing commands found in stream
[2026-08-31 19:09:43,765.765 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:09:43,768.768 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-08-31 19:09:46,907.907 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 19:09:46,910.910 INFO    ] Checking for system updates...
[2026-08-31 19:09:46,950.950 INFO    ] 200
[2026-08-31 19:09:46,953.953 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:09:47,015.015 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:09:47,018.018 INFO    ] No update needed
[2026-08-31 19:09:47,020.020 INFO    ] Checking for camera pi updates...
[2026-08-31 19:09:47,061.061 INFO    ] 200
[2026-08-31 19:09:47,064.064 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:09:47,105.105 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:09:47,290.290 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:09:47,292.292 INFO    ] No camera update needed
[2026-08-31 19:09:47,295.295 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:09:47,297.297 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:09:47,302.302 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:09:47,307.307 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:09:49,349.349 INFO    ] ================================================
[2026-08-31 19:09:49,364.364 INFO    ] Launching Daemon at Mon Aug 31 19:09:49 IST 2026
[2026-08-31 19:09:49,375.375 INFO    ] ================================================
[2026-08-31 19:09:49,957.957 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:09:49
[2026-08-31 19:09:50,556.556 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:09:50,833.833 INFO    ] Initializing speech engine...
[2026-08-31 19:09:50,839.839 INFO    ] 2026-08-31 19:09:50
[2026-08-31 19:09:51,088.088 INFO    ] 2026-08-31 19:09:51
[2026-08-31 19:09:51,122.122 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:09:51,372.372 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:09:51,383.383 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:09:51,515.515 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:09:51,557.557 INFO    ] time= 31/08/2026 19:09:51
[2026-08-31 19:09:51,606.606 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:09:51,649.649 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:09:51,781.781 INFO    ] No existing commands found in stream
[2026-08-31 19:09:56,803.803 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:09:56,806.806 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-08-31 19:09:59,223.223 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 19:09:59,226.226 INFO    ] Checking for system updates...
[2026-08-31 19:09:59,262.262 INFO    ] 200
[2026-08-31 19:09:59,265.265 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:09:59,318.318 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:09:59,321.321 INFO    ] No update needed
[2026-08-31 19:09:59,324.324 INFO    ] Checking for camera pi updates...
[2026-08-31 19:09:59,358.358 INFO    ] 200
[2026-08-31 19:09:59,360.360 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:09:59,400.400 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:09:59,481.481 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:09:59,484.484 INFO    ] No camera update needed
[2026-08-31 19:09:59,486.486 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:09:59,489.489 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:09:59,494.494 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:09:59,499.499 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:10:01,540.540 INFO    ] ================================================
[2026-08-31 19:10:01,555.555 INFO    ] Launching Daemon at Mon Aug 31 19:10:01 IST 2026
[2026-08-31 19:10:01,566.566 INFO    ] ================================================
[2026-08-31 19:10:02,460.460 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:10:02
[2026-08-31 19:10:03,427.427 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:10:03,869.869 INFO    ] Initializing speech engine...
[2026-08-31 19:10:03,922.922 INFO    ] 2026-08-31 19:10:03
[2026-08-31 19:10:04,274.274 INFO    ] 2026-08-31 19:10:04
[2026-08-31 19:10:04,311.311 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:10:04,526.526 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:10:04,547.547 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:10:04,729.729 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:10:04,775.775 INFO    ] time= 31/08/2026 19:10:04
[2026-08-31 19:10:04,817.817 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:10:04,868.868 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:10:05,013.013 INFO    ] No existing commands found in stream
[2026-08-31 19:10:10,043.043 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:10:10,046.046 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-08-31 19:10:14,431.431 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 19:10:14,434.434 INFO    ] Checking for system updates...
[2026-08-31 19:10:14,470.470 INFO    ] 200
[2026-08-31 19:10:14,472.472 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:10:14,526.526 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:10:14,528.528 INFO    ] No update needed
[2026-08-31 19:10:14,530.530 INFO    ] Checking for camera pi updates...
[2026-08-31 19:10:14,564.564 INFO    ] 200
[2026-08-31 19:10:14,566.566 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:10:14,606.606 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:10:14,673.673 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:10:14,675.675 INFO    ] No camera update needed
[2026-08-31 19:10:14,678.678 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:10:14,680.680 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:10:14,685.685 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:10:14,690.690 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:10:16,732.732 INFO    ] ================================================
[2026-08-31 19:10:16,748.748 INFO    ] Launching Daemon at Mon Aug 31 19:10:16 IST 2026
[2026-08-31 19:10:16,758.758 INFO    ] ================================================
[2026-08-31 19:10:17,413.413 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:10:17
[2026-08-31 19:10:18,089.089 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:10:18,399.399 INFO    ] Initializing speech engine...
[2026-08-31 19:10:18,410.410 INFO    ] 2026-08-31 19:10:18
[2026-08-31 19:10:18,695.695 INFO    ] 2026-08-31 19:10:18
[2026-08-31 19:10:18,805.805 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:10:19,021.021 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:10:19,028.028 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:10:19,216.216 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:10:19,228.228 INFO    ] time= 31/08/2026 19:10:19
[2026-08-31 19:10:19,248.248 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:10:19,275.275 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:10:19,383.383 INFO    ] No existing commands found in stream
[2026-08-31 19:10:24,413.413 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:10:24,416.416 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-08-31 19:10:26,588.588 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 19:10:26,591.591 INFO    ] Checking for system updates...
[2026-08-31 19:10:26,628.628 INFO    ] 200
[2026-08-31 19:10:26,631.631 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:10:26,685.685 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:10:26,688.688 INFO    ] No update needed
[2026-08-31 19:10:26,690.690 INFO    ] Checking for camera pi updates...
[2026-08-31 19:10:26,724.724 INFO    ] 200
[2026-08-31 19:10:26,726.726 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:10:26,766.766 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:10:26,848.848 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:10:26,851.851 INFO    ] No camera update needed
[2026-08-31 19:10:26,853.853 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:10:26,856.856 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:10:26,861.861 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:10:26,866.866 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:10:28,906.906 INFO    ] ================================================
[2026-08-31 19:10:28,922.922 INFO    ] Launching Daemon at Mon Aug 31 19:10:28 IST 2026
[2026-08-31 19:10:28,932.932 INFO    ] ================================================
[2026-08-31 19:10:29,510.510 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:10:29
[2026-08-31 19:10:30,105.105 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:10:30,357.357 INFO    ] Initializing speech engine...
[2026-08-31 19:10:30,370.370 INFO    ] 2026-08-31 19:10:30
[2026-08-31 19:10:30,633.633 INFO    ] 2026-08-31 19:10:30
[2026-08-31 19:10:30,669.669 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:10:30,840.840 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:10:30,853.853 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:10:31,003.003 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:10:31,063.063 INFO    ] time= 31/08/2026 19:10:31
[2026-08-31 19:10:31,080.080 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:10:31,155.155 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:10:31,243.243 INFO    ] No existing commands found in stream
[2026-08-31 19:10:36,255.255 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:10:36,259.259 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-08-31 19:10:39,564.564 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 19:10:39,567.567 INFO    ] Checking for system updates...
[2026-08-31 19:10:39,603.603 INFO    ] 200
[2026-08-31 19:10:39,605.605 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:10:39,658.658 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:10:39,660.660 INFO    ] No update needed
[2026-08-31 19:10:39,663.663 INFO    ] Checking for camera pi updates...
[2026-08-31 19:10:39,697.697 INFO    ] 200
[2026-08-31 19:10:39,699.699 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:10:39,746.746 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:10:39,850.850 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:10:39,852.852 INFO    ] No camera update needed
[2026-08-31 19:10:39,854.854 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:10:39,857.857 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:10:39,862.862 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:10:39,867.867 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:10:41,908.908 INFO    ] ================================================
[2026-08-31 19:10:41,924.924 INFO    ] Launching Daemon at Mon Aug 31 19:10:41 IST 2026
[2026-08-31 19:10:41,935.935 INFO    ] ================================================
[2026-08-31 19:10:42,515.515 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:10:42
[2026-08-31 19:10:43,111.111 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:10:43,411.411 INFO    ] Initializing speech engine...
[2026-08-31 19:10:43,416.416 INFO    ] 2026-08-31 19:10:43
[2026-08-31 19:10:43,682.682 INFO    ] 2026-08-31 19:10:43
[2026-08-31 19:10:43,720.720 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:10:43,917.917 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:10:43,922.922 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:10:44,093.093 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:10:44,104.104 INFO    ] time= 31/08/2026 19:10:44
[2026-08-31 19:10:44,109.109 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:10:44,115.115 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:10:44,190.190 INFO    ] No existing commands found in stream
[2026-08-31 19:10:49,203.203 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:10:49,206.206 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-08-31 19:10:50,246.246 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 19:10:50,249.249 INFO    ] Checking for system updates...
[2026-08-31 19:10:50,285.285 INFO    ] 200
[2026-08-31 19:10:50,288.288 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:10:50,343.343 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:10:50,346.346 INFO    ] No update needed
[2026-08-31 19:10:50,349.349 INFO    ] Checking for camera pi updates...
[2026-08-31 19:10:50,384.384 INFO    ] 200
[2026-08-31 19:10:50,387.387 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:10:50,429.429 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:10:50,509.509 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:10:50,512.512 INFO    ] No camera update needed
[2026-08-31 19:10:50,515.515 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:10:50,517.517 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:10:50,524.524 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:10:50,529.529 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:10:52,570.570 INFO    ] ================================================
[2026-08-31 19:10:52,586.586 INFO    ] Launching Daemon at Mon Aug 31 19:10:52 IST 2026
[2026-08-31 19:10:52,596.596 INFO    ] ================================================
[2026-08-31 19:10:53,174.174 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:10:53
[2026-08-31 19:10:53,832.832 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:10:54,137.137 INFO    ] Initializing speech engine...
[2026-08-31 19:10:54,145.145 INFO    ] 2026-08-31 19:10:54
[2026-08-31 19:10:54,443.443 INFO    ] 2026-08-31 19:10:54
[2026-08-31 19:10:54,556.556 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:10:54,735.735 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:10:54,743.743 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:10:54,941.941 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:10:54,985.985 INFO    ] time= 31/08/2026 19:10:54
[2026-08-31 19:10:55,002.002 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:10:55,013.013 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:10:55,141.141 INFO    ] No existing commands found in stream
[2026-08-31 19:11:00,157.157 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:11:00,161.161 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-08-31 19:11:02,607.607 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 19:11:02,610.610 INFO    ] Checking for system updates...
[2026-08-31 19:11:02,660.660 INFO    ] 200
[2026-08-31 19:11:02,663.663 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:11:02,735.735 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:11:02,738.738 INFO    ] No update needed
[2026-08-31 19:11:02,742.742 INFO    ] Checking for camera pi updates...
[2026-08-31 19:11:02,786.786 INFO    ] 200
[2026-08-31 19:11:02,790.790 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:11:02,854.854 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:11:02,906.906 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:11:02,909.909 INFO    ] No camera update needed
[2026-08-31 19:11:02,911.911 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:11:02,914.914 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:11:02,919.919 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:11:02,924.924 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:11:04,965.965 INFO    ] ================================================
[2026-08-31 19:11:04,980.980 INFO    ] Launching Daemon at Mon Aug 31 19:11:04 IST 2026
[2026-08-31 19:11:04,990.990 INFO    ] ================================================
[2026-08-31 19:11:05,572.572 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:11:05
[2026-08-31 19:11:06,169.169 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:11:06,450.450 INFO    ] Initializing speech engine...
[2026-08-31 19:11:06,465.465 INFO    ] 2026-08-31 19:11:06
[2026-08-31 19:11:06,744.744 INFO    ] 2026-08-31 19:11:06
[2026-08-31 19:11:06,781.781 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:11:07,003.003 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:11:07,066.066 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:11:07,220.220 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:11:07,262.262 INFO    ] time= 31/08/2026 19:11:07
[2026-08-31 19:11:07,307.307 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:11:07,366.366 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:11:07,498.498 INFO    ] No existing commands found in stream
[2026-08-31 19:11:12,523.523 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:11:12,526.526 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-08-31 19:11:13,491.491 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 19:11:13,494.494 INFO    ] Checking for system updates...
[2026-08-31 19:11:13,529.529 INFO    ] 200
[2026-08-31 19:11:13,531.531 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:11:13,588.588 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:11:13,590.590 INFO    ] No update needed
[2026-08-31 19:11:13,593.593 INFO    ] Checking for camera pi updates...
[2026-08-31 19:11:13,629.629 INFO    ] 200
[2026-08-31 19:11:13,631.631 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:11:13,674.674 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:11:13,759.759 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:11:13,762.762 INFO    ] No camera update needed
[2026-08-31 19:11:13,764.764 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:11:13,766.766 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:11:13,772.772 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:11:13,776.776 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:11:15,816.816 INFO    ] ================================================
[2026-08-31 19:11:15,833.833 INFO    ] Launching Daemon at Mon Aug 31 19:11:15 IST 2026
[2026-08-31 19:11:15,844.844 INFO    ] ================================================
[2026-08-31 19:11:16,424.424 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:11:16
[2026-08-31 19:11:17,025.025 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:11:17,299.299 INFO    ] Initializing speech engine...
[2026-08-31 19:11:17,319.319 INFO    ] 2026-08-31 19:11:17
[2026-08-31 19:11:17,585.585 INFO    ] 2026-08-31 19:11:17
[2026-08-31 19:11:17,620.620 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:11:17,811.811 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:11:17,827.827 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:11:18,058.058 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:11:18,066.066 INFO    ] time= 31/08/2026 19:11:18
[2026-08-31 19:11:18,100.100 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:11:18,164.164 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:11:18,253.253 INFO    ] No existing commands found in stream
[2026-08-31 19:11:23,264.264 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:11:23,267.267 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-08-31 19:11:25,626.626 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 19:11:25,629.629 INFO    ] Checking for system updates...
[2026-08-31 19:11:25,665.665 INFO    ] 200
[2026-08-31 19:11:25,668.668 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:11:25,721.721 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:11:25,723.723 INFO    ] No update needed
[2026-08-31 19:11:25,726.726 INFO    ] Checking for camera pi updates...
[2026-08-31 19:11:25,759.759 INFO    ] 200
[2026-08-31 19:11:25,762.762 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:11:25,805.805 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:11:25,886.886 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:11:25,889.889 INFO    ] No camera update needed
[2026-08-31 19:11:25,892.892 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:11:25,894.894 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:11:25,899.899 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:11:25,904.904 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:11:27,944.944 INFO    ] ================================================
[2026-08-31 19:11:27,959.959 INFO    ] Launching Daemon at Mon Aug 31 19:11:27 IST 2026
[2026-08-31 19:11:27,970.970 INFO    ] ================================================
[2026-08-31 19:11:28,606.606 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:11:28
[2026-08-31 19:11:29,256.256 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:11:29,557.557 INFO    ] Initializing speech engine...
[2026-08-31 19:11:29,564.564 INFO    ] 2026-08-31 19:11:29
[2026-08-31 19:11:29,842.842 INFO    ] 2026-08-31 19:11:29
[2026-08-31 19:11:29,898.898 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:11:30,185.185 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:11:30,195.195 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:11:30,396.396 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:11:30,403.403 INFO    ] time= 31/08/2026 19:11:30
[2026-08-31 19:11:30,419.419 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:11:30,434.434 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:11:30,558.558 INFO    ] No existing commands found in stream
[2026-08-31 19:11:35,572.572 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:11:35,575.575 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-08-31 19:11:37,578.578 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 19:11:37,581.581 INFO    ] Checking for system updates...
[2026-08-31 19:11:37,621.621 INFO    ] 200
[2026-08-31 19:11:37,625.625 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:11:37,678.678 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:11:37,680.680 INFO    ] No update needed
[2026-08-31 19:11:37,683.683 INFO    ] Checking for camera pi updates...
[2026-08-31 19:11:37,717.717 INFO    ] 200
[2026-08-31 19:11:37,720.720 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:11:37,765.765 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:11:37,852.852 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:11:37,855.855 INFO    ] No camera update needed
[2026-08-31 19:11:37,858.858 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:11:37,861.861 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:11:37,867.867 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:11:37,872.872 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:11:39,914.914 INFO    ] ================================================
[2026-08-31 19:11:39,930.930 INFO    ] Launching Daemon at Mon Aug 31 19:11:39 IST 2026
[2026-08-31 19:11:39,941.941 INFO    ] ================================================
[2026-08-31 19:11:40,522.522 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:11:40
[2026-08-31 19:11:41,126.126 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:11:41,385.385 INFO    ] Initializing speech engine...
[2026-08-31 19:11:41,394.394 INFO    ] 2026-08-31 19:11:41
[2026-08-31 19:11:41,687.687 INFO    ] 2026-08-31 19:11:41
[2026-08-31 19:11:41,725.725 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:11:41,921.921 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:11:41,935.935 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:11:42,094.094 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:11:42,103.103 INFO    ] time= 31/08/2026 19:11:42
[2026-08-31 19:11:42,111.111 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:11:42,153.153 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:11:42,304.304 INFO    ] No existing commands found in stream
[2026-08-31 19:11:47,334.334 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:11:47,337.337 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-08-31 19:11:50,506.506 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 19:11:50,509.509 INFO    ] Checking for system updates...
[2026-08-31 19:11:50,548.548 INFO    ] 200
[2026-08-31 19:11:50,550.550 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:11:50,602.602 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:11:50,605.605 INFO    ] No update needed
[2026-08-31 19:11:50,607.607 INFO    ] Checking for camera pi updates...
[2026-08-31 19:11:50,640.640 INFO    ] 200
[2026-08-31 19:11:50,642.642 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:11:50,682.682 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:11:50,863.863 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:11:50,866.866 INFO    ] No camera update needed
[2026-08-31 19:11:50,868.868 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:11:50,870.870 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:11:50,876.876 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:11:50,881.881 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:11:52,921.921 INFO    ] ================================================
[2026-08-31 19:11:52,936.936 INFO    ] Launching Daemon at Mon Aug 31 19:11:52 IST 2026
[2026-08-31 19:11:52,947.947 INFO    ] ================================================
[2026-08-31 19:11:53,533.533 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:11:53
[2026-08-31 19:11:54,127.127 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:11:54,382.382 INFO    ] Initializing speech engine...
[2026-08-31 19:11:54,388.388 INFO    ] 2026-08-31 19:11:54
[2026-08-31 19:11:54,682.682 INFO    ] 2026-08-31 19:11:54
[2026-08-31 19:11:54,718.718 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:11:54,913.913 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:11:54,920.920 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:11:55,089.089 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:11:55,098.098 INFO    ] time= 31/08/2026 19:11:55
[2026-08-31 19:11:55,104.104 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:11:55,147.147 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:11:55,262.262 INFO    ] No existing commands found in stream
[2026-08-31 19:12:00,287.287 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:12:00,290.290 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-08-31 19:12:03,026.026 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 19:12:03,029.029 INFO    ] Checking for system updates...
[2026-08-31 19:12:03,070.070 INFO    ] 200
[2026-08-31 19:12:03,073.073 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:12:03,127.127 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:12:03,130.130 INFO    ] No update needed
[2026-08-31 19:12:03,132.132 INFO    ] Checking for camera pi updates...
[2026-08-31 19:12:03,165.165 INFO    ] 200
[2026-08-31 19:12:03,168.168 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:12:03,226.226 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:12:03,320.320 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:12:03,323.323 INFO    ] No camera update needed
[2026-08-31 19:12:03,325.325 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:12:03,327.327 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:12:03,333.333 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:12:03,338.338 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:12:05,378.378 INFO    ] ================================================
[2026-08-31 19:12:05,393.393 INFO    ] Launching Daemon at Mon Aug 31 19:12:05 IST 2026
[2026-08-31 19:12:05,404.404 INFO    ] ================================================
[2026-08-31 19:12:05,982.982 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:12:05
[2026-08-31 19:12:06,595.595 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:12:06,863.863 INFO    ] Initializing speech engine...
[2026-08-31 19:12:06,879.879 INFO    ] 2026-08-31 19:12:06
[2026-08-31 19:12:07,151.151 INFO    ] 2026-08-31 19:12:07
[2026-08-31 19:12:07,187.187 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:12:07,383.383 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:12:07,389.389 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:12:07,565.565 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:12:07,573.573 INFO    ] time= 31/08/2026 19:12:07
[2026-08-31 19:12:07,596.596 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:12:07,635.635 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:12:07,792.792 INFO    ] No existing commands found in stream
[2026-08-31 19:12:12,803.803 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:12:12,805.805 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-08-31 19:12:15,869.869 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 19:12:15,872.872 INFO    ] Checking for system updates...
[2026-08-31 19:12:15,907.907 INFO    ] 200
[2026-08-31 19:12:15,910.910 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:12:15,966.966 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:12:15,969.969 INFO    ] No update needed
[2026-08-31 19:12:15,971.971 INFO    ] Checking for camera pi updates...
[2026-08-31 19:12:16,005.005 INFO    ] 200
[2026-08-31 19:12:16,008.008 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:12:16,052.052 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:12:16,135.135 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:12:16,137.137 INFO    ] No camera update needed
[2026-08-31 19:12:16,140.140 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:12:16,142.142 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:12:16,148.148 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:12:16,153.153 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:12:18,194.194 INFO    ] ================================================
[2026-08-31 19:12:18,210.210 INFO    ] Launching Daemon at Mon Aug 31 19:12:18 IST 2026
[2026-08-31 19:12:18,220.220 INFO    ] ================================================
[2026-08-31 19:12:18,805.805 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:12:18
[2026-08-31 19:12:19,396.396 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:12:19,652.652 INFO    ] Initializing speech engine...
[2026-08-31 19:12:19,661.661 INFO    ] 2026-08-31 19:12:19
[2026-08-31 19:12:19,954.954 INFO    ] 2026-08-31 19:12:19
[2026-08-31 19:12:19,980.980 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:12:20,186.186 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:12:20,201.201 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:12:20,368.368 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:12:20,378.378 INFO    ] time= 31/08/2026 19:12:20
[2026-08-31 19:12:20,430.430 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:12:20,451.451 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:12:20,557.557 INFO    ] No existing commands found in stream
[2026-08-31 19:12:25,579.579 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:12:25,582.582 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-08-31 19:12:29,026.026 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 19:12:29,028.028 INFO    ] Checking for system updates...
[2026-08-31 19:12:29,064.064 INFO    ] 200
[2026-08-31 19:12:29,066.066 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:12:29,119.119 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:12:29,121.121 INFO    ] No update needed
[2026-08-31 19:12:29,123.123 INFO    ] Checking for camera pi updates...
[2026-08-31 19:12:29,158.158 INFO    ] 200
[2026-08-31 19:12:29,160.160 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:12:29,207.207 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:12:29,271.271 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:12:29,273.273 INFO    ] No camera update needed
[2026-08-31 19:12:29,276.276 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:12:29,278.278 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:12:29,283.283 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:12:29,288.288 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:12:31,328.328 INFO    ] ================================================
[2026-08-31 19:12:31,343.343 INFO    ] Launching Daemon at Mon Aug 31 19:12:31 IST 2026
[2026-08-31 19:12:31,354.354 INFO    ] ================================================
[2026-08-31 19:12:31,964.964 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:12:31
[2026-08-31 19:12:32,593.593 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:12:32,885.885 INFO    ] Initializing speech engine...
[2026-08-31 19:12:32,896.896 INFO    ] 2026-08-31 19:12:32
[2026-08-31 19:12:33,152.152 INFO    ] 2026-08-31 19:12:33
[2026-08-31 19:12:33,188.188 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:12:33,439.439 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:12:33,448.448 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:12:33,587.587 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:12:33,631.631 INFO    ] time= 31/08/2026 19:12:33
[2026-08-31 19:12:33,685.685 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:12:33,723.723 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:12:33,868.868 INFO    ] No existing commands found in stream
[2026-08-31 19:12:38,883.883 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:12:38,886.886 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-08-31 19:12:41,407.407 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 19:12:41,409.409 INFO    ] Checking for system updates...
[2026-08-31 19:12:41,445.445 INFO    ] 200
[2026-08-31 19:12:41,448.448 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:12:41,506.506 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:12:41,509.509 INFO    ] No update needed
[2026-08-31 19:12:41,511.511 INFO    ] Checking for camera pi updates...
[2026-08-31 19:12:41,548.548 INFO    ] 200
[2026-08-31 19:12:41,550.550 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:12:41,592.592 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:12:41,673.673 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:12:41,675.675 INFO    ] No camera update needed
[2026-08-31 19:12:41,677.677 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:12:41,680.680 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:12:41,685.685 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:12:41,690.690 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:12:43,731.731 INFO    ] ================================================
[2026-08-31 19:12:43,746.746 INFO    ] Launching Daemon at Mon Aug 31 19:12:43 IST 2026
[2026-08-31 19:12:43,757.757 INFO    ] ================================================
[2026-08-31 19:12:44,406.406 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:12:44
[2026-08-31 19:12:45,069.069 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:12:45,371.371 INFO    ] Initializing speech engine...
[2026-08-31 19:12:45,383.383 INFO    ] 2026-08-31 19:12:45
[2026-08-31 19:12:45,691.691 INFO    ] 2026-08-31 19:12:45
[2026-08-31 19:12:45,776.776 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:12:45,925.925 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:12:45,934.934 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:12:46,066.066 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:12:46,119.119 INFO    ] time= 31/08/2026 19:12:46
[2026-08-31 19:12:46,184.184 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:12:46,203.203 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:12:46,346.346 INFO    ] No existing commands found in stream
[2026-08-31 19:12:51,362.362 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:12:51,365.365 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-08-31 19:12:54,248.248 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 19:12:54,251.251 INFO    ] Checking for system updates...
[2026-08-31 19:12:54,288.288 INFO    ] 200
[2026-08-31 19:12:54,291.291 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:12:54,344.344 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:12:54,346.346 INFO    ] No update needed
[2026-08-31 19:12:54,349.349 INFO    ] Checking for camera pi updates...
[2026-08-31 19:12:54,387.387 INFO    ] 200
[2026-08-31 19:12:54,390.390 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:12:54,436.436 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:12:54,539.539 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:12:54,542.542 INFO    ] No camera update needed
[2026-08-31 19:12:54,545.545 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:12:54,547.547 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:12:54,553.553 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:12:54,559.559 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:12:56,600.600 INFO    ] ================================================
[2026-08-31 19:12:56,615.615 INFO    ] Launching Daemon at Mon Aug 31 19:12:56 IST 2026
[2026-08-31 19:12:56,626.626 INFO    ] ================================================
[2026-08-31 19:12:57,201.201 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:12:57
[2026-08-31 19:12:57,801.801 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:12:58,077.077 INFO    ] Initializing speech engine...
[2026-08-31 19:12:58,092.092 INFO    ] 2026-08-31 19:12:58
[2026-08-31 19:12:58,367.367 INFO    ] 2026-08-31 19:12:58
[2026-08-31 19:12:58,404.404 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:12:58,626.626 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:12:58,633.633 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:12:58,854.854 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:12:58,881.881 INFO    ] time= 31/08/2026 19:12:58
[2026-08-31 19:12:58,940.940 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:12:59,000.000 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:12:59,142.142 INFO    ] No existing commands found in stream
[2026-08-31 19:13:04,173.173 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:13:04,175.175 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-08-31 19:13:08,247.247 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 19:13:08,250.250 INFO    ] Checking for system updates...
[2026-08-31 19:13:08,285.285 INFO    ] 200
[2026-08-31 19:13:08,288.288 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:13:08,341.341 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:13:08,344.344 INFO    ] No update needed
[2026-08-31 19:13:08,346.346 INFO    ] Checking for camera pi updates...
[2026-08-31 19:13:08,379.379 INFO    ] 200
[2026-08-31 19:13:08,382.382 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:13:08,422.422 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:13:08,512.512 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:13:08,514.514 INFO    ] No camera update needed
[2026-08-31 19:13:08,517.517 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:13:08,519.519 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:13:08,525.525 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:13:08,530.530 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:13:10,571.571 INFO    ] ================================================
[2026-08-31 19:13:10,585.585 INFO    ] Launching Daemon at Mon Aug 31 19:13:10 IST 2026
[2026-08-31 19:13:10,596.596 INFO    ] ================================================
[2026-08-31 19:13:11,164.164 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:13:11
[2026-08-31 19:13:11,752.752 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:13:12,001.001 INFO    ] Initializing speech engine...
[2026-08-31 19:13:12,010.010 INFO    ] 2026-08-31 19:13:12
[2026-08-31 19:13:12,303.303 INFO    ] 2026-08-31 19:13:12
[2026-08-31 19:13:12,328.328 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:13:12,534.534 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:13:12,549.549 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:13:12,691.691 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:13:12,716.716 INFO    ] time= 31/08/2026 19:13:12
[2026-08-31 19:13:12,721.721 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:13:12,728.728 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:13:12,802.802 INFO    ] No existing commands found in stream
[2026-08-31 19:13:17,817.817 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:13:17,820.820 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-08-31 19:13:21,307.307 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 19:13:21,309.309 INFO    ] Checking for system updates...
[2026-08-31 19:13:21,348.348 INFO    ] 200
[2026-08-31 19:13:21,351.351 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:13:21,409.409 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:13:21,411.411 INFO    ] No update needed
[2026-08-31 19:13:21,413.413 INFO    ] Checking for camera pi updates...
[2026-08-31 19:13:21,447.447 INFO    ] 200
[2026-08-31 19:13:21,450.450 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:13:21,490.490 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:13:21,563.563 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:13:21,565.565 INFO    ] No camera update needed
[2026-08-31 19:13:21,567.567 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:13:21,570.570 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:13:21,575.575 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:13:21,580.580 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:13:23,620.620 INFO    ] ================================================
[2026-08-31 19:13:23,635.635 INFO    ] Launching Daemon at Mon Aug 31 19:13:23 IST 2026
[2026-08-31 19:13:23,646.646 INFO    ] ================================================
[2026-08-31 19:13:24,224.224 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:13:24
[2026-08-31 19:13:24,810.810 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:13:25,065.065 INFO    ] Initializing speech engine...
[2026-08-31 19:13:25,071.071 INFO    ] 2026-08-31 19:13:25
[2026-08-31 19:13:25,363.363 INFO    ] 2026-08-31 19:13:25
[2026-08-31 19:13:25,399.399 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:13:25,606.606 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:13:25,621.621 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:13:25,771.771 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:13:25,780.780 INFO    ] time= 31/08/2026 19:13:25
[2026-08-31 19:13:25,786.786 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:13:25,809.809 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:13:25,933.933 INFO    ] No existing commands found in stream
[2026-08-31 19:13:30,963.963 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:13:30,966.966 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-08-31 19:13:34,524.524 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 19:13:34,526.526 INFO    ] Checking for system updates...
[2026-08-31 19:13:34,562.562 INFO    ] 200
[2026-08-31 19:13:34,564.564 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:13:34,620.620 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:13:34,623.623 INFO    ] No update needed
[2026-08-31 19:13:34,625.625 INFO    ] Checking for camera pi updates...
[2026-08-31 19:13:34,658.658 INFO    ] 200
[2026-08-31 19:13:34,661.661 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:13:34,701.701 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:13:34,792.792 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:13:34,794.794 INFO    ] No camera update needed
[2026-08-31 19:13:34,797.797 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:13:34,799.799 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:13:34,804.804 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:13:34,809.809 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:13:36,850.850 INFO    ] ================================================
[2026-08-31 19:13:36,865.865 INFO    ] Launching Daemon at Mon Aug 31 19:13:36 IST 2026
[2026-08-31 19:13:36,876.876 INFO    ] ================================================
[2026-08-31 19:13:37,453.453 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:13:37
[2026-08-31 19:13:38,051.051 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:13:38,303.303 INFO    ] Initializing speech engine...
[2026-08-31 19:13:38,327.327 INFO    ] 2026-08-31 19:13:38
[2026-08-31 19:13:38,585.585 INFO    ] 2026-08-31 19:13:38
[2026-08-31 19:13:38,621.621 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:13:38,871.871 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:13:38,880.880 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:13:39,007.007 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:13:39,020.020 INFO    ] time= 31/08/2026 19:13:39
[2026-08-31 19:13:39,074.074 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:13:39,156.156 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:13:39,290.290 INFO    ] No existing commands found in stream
[2026-08-31 19:13:44,312.312 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:13:44,315.315 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-08-31 19:13:45,455.455 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 19:13:45,458.458 INFO    ] Checking for system updates...
[2026-08-31 19:13:45,497.497 INFO    ] 200
[2026-08-31 19:13:45,500.500 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:13:45,552.552 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:13:45,554.554 INFO    ] No update needed
[2026-08-31 19:13:45,557.557 INFO    ] Checking for camera pi updates...
[2026-08-31 19:13:45,590.590 INFO    ] 200
[2026-08-31 19:13:45,592.592 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:13:45,632.632 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:13:45,688.688 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:13:45,691.691 INFO    ] No camera update needed
[2026-08-31 19:13:45,693.693 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:13:45,696.696 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:13:45,701.701 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:13:45,706.706 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:13:47,747.747 INFO    ] ================================================
[2026-08-31 19:13:47,763.763 INFO    ] Launching Daemon at Mon Aug 31 19:13:47 IST 2026
[2026-08-31 19:13:47,774.774 INFO    ] ================================================
[2026-08-31 19:13:48,413.413 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:13:48
[2026-08-31 19:13:49,073.073 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:13:49,373.373 INFO    ] Initializing speech engine...
[2026-08-31 19:13:49,386.386 INFO    ] 2026-08-31 19:13:49
[2026-08-31 19:13:49,659.659 INFO    ] 2026-08-31 19:13:49
[2026-08-31 19:13:49,714.714 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:13:49,970.970 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:13:49,978.978 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:13:50,185.185 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:13:50,221.221 INFO    ] time= 31/08/2026 19:13:50
[2026-08-31 19:13:50,238.238 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:13:50,248.248 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:13:50,372.372 INFO    ] No existing commands found in stream
[2026-08-31 19:13:55,390.390 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:13:55,393.393 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-08-31 19:13:58,015.015 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 19:13:58,018.018 INFO    ] Checking for system updates...
[2026-08-31 19:13:58,055.055 INFO    ] 200
[2026-08-31 19:13:58,058.058 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:13:58,116.116 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:13:58,119.119 INFO    ] No update needed
[2026-08-31 19:13:58,121.121 INFO    ] Checking for camera pi updates...
[2026-08-31 19:13:58,159.159 INFO    ] 200
[2026-08-31 19:13:58,161.161 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:13:58,208.208 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:13:58,386.386 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:13:58,389.389 INFO    ] No camera update needed
[2026-08-31 19:13:58,391.391 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:13:58,394.394 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:13:58,399.399 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:13:58,404.404 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:14:00,444.444 INFO    ] ================================================
[2026-08-31 19:14:00,460.460 INFO    ] Launching Daemon at Mon Aug 31 19:14:00 IST 2026
[2026-08-31 19:14:00,470.470 INFO    ] ================================================
[2026-08-31 19:14:01,055.055 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:14:01
[2026-08-31 19:14:01,804.804 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:14:02,105.105 INFO    ] Initializing speech engine...
[2026-08-31 19:14:02,112.112 INFO    ] 2026-08-31 19:14:02
[2026-08-31 19:14:02,414.414 INFO    ] 2026-08-31 19:14:02
[2026-08-31 19:14:02,452.452 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:14:02,744.744 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:14:02,758.758 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:14:02,932.932 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:14:02,994.994 INFO    ] time= 31/08/2026 19:14:02
[2026-08-31 19:14:03,053.053 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:14:03,069.069 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:14:03,207.207 INFO    ] No existing commands found in stream
[2026-08-31 19:14:08,235.235 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:14:08,238.238 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-08-31 19:14:11,107.107 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 19:14:11,110.110 INFO    ] Checking for system updates...
[2026-08-31 19:14:11,145.145 INFO    ] 200
[2026-08-31 19:14:11,148.148 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:14:11,202.202 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:14:11,204.204 INFO    ] No update needed
[2026-08-31 19:14:11,206.206 INFO    ] Checking for camera pi updates...
[2026-08-31 19:14:11,242.242 INFO    ] 200
[2026-08-31 19:14:11,244.244 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:14:11,284.284 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:14:11,382.382 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:14:11,384.384 INFO    ] No camera update needed
[2026-08-31 19:14:11,387.387 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:14:11,389.389 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:14:11,394.394 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:14:11,399.399 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:14:13,440.440 INFO    ] ================================================
[2026-08-31 19:14:13,455.455 INFO    ] Launching Daemon at Mon Aug 31 19:14:13 IST 2026
[2026-08-31 19:14:13,467.467 INFO    ] ================================================
[2026-08-31 19:14:14,033.033 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:14:14
[2026-08-31 19:14:14,686.686 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:14:14,995.995 INFO    ] Initializing speech engine...
[2026-08-31 19:14:15,008.008 INFO    ] 2026-08-31 19:14:14
[2026-08-31 19:14:15,322.322 INFO    ] 2026-08-31 19:14:15
[2026-08-31 19:14:15,408.408 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:14:15,623.623 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:14:15,630.630 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:14:15,818.818 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:14:15,829.829 INFO    ] time= 31/08/2026 19:14:15
[2026-08-31 19:14:15,857.857 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:14:15,881.881 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:14:16,025.025 INFO    ] No existing commands found in stream
[2026-08-31 19:14:21,051.051 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:14:21,054.054 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-08-31 19:14:21,623.623 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 19:14:21,626.626 INFO    ] Checking for system updates...
[2026-08-31 19:14:21,663.663 INFO    ] 200
[2026-08-31 19:14:21,666.666 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:14:21,720.720 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:14:21,723.723 INFO    ] No update needed
[2026-08-31 19:14:21,726.726 INFO    ] Checking for camera pi updates...
[2026-08-31 19:14:21,760.760 INFO    ] 200
[2026-08-31 19:14:21,763.763 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:14:21,805.805 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:14:21,888.888 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:14:21,891.891 INFO    ] No camera update needed
[2026-08-31 19:14:21,893.893 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:14:21,896.896 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:14:21,903.903 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:14:21,909.909 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:14:23,950.950 INFO    ] ================================================
[2026-08-31 19:14:23,965.965 INFO    ] Launching Daemon at Mon Aug 31 19:14:23 IST 2026
[2026-08-31 19:14:23,976.976 INFO    ] ================================================
[2026-08-31 19:14:24,563.563 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:14:24
[2026-08-31 19:14:25,234.234 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:14:25,538.538 INFO    ] Initializing speech engine...
[2026-08-31 19:14:25,544.544 INFO    ] 2026-08-31 19:14:25
[2026-08-31 19:14:25,833.833 INFO    ] 2026-08-31 19:14:25
[2026-08-31 19:14:25,878.878 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:14:26,130.130 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:14:26,149.149 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:14:26,365.365 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:14:26,384.384 INFO    ] time= 31/08/2026 19:14:26
[2026-08-31 19:14:26,393.393 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:14:26,419.419 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:14:26,527.527 INFO    ] No existing commands found in stream
[2026-08-31 19:14:31,557.557 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:14:31,561.561 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-08-31 19:14:35,632.632 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 19:14:35,635.635 INFO    ] Checking for system updates...
[2026-08-31 19:14:35,676.676 INFO    ] 200
[2026-08-31 19:14:35,680.680 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:14:35,740.740 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:14:35,743.743 INFO    ] No update needed
[2026-08-31 19:14:35,746.746 INFO    ] Checking for camera pi updates...
[2026-08-31 19:14:35,781.781 INFO    ] 200
[2026-08-31 19:14:35,784.784 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:14:35,825.825 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:14:35,908.908 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:14:35,911.911 INFO    ] No camera update needed
[2026-08-31 19:14:35,914.914 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:14:35,917.917 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:14:35,923.923 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:14:35,929.929 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:14:37,969.969 INFO    ] ================================================
[2026-08-31 19:14:37,985.985 INFO    ] Launching Daemon at Mon Aug 31 19:14:37 IST 2026
[2026-08-31 19:14:38,996.996 INFO    ] ================================================
[2026-08-31 19:14:38,571.571 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:14:38
[2026-08-31 19:14:39,183.183 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:14:39,464.464 INFO    ] Initializing speech engine...
[2026-08-31 19:14:39,474.474 INFO    ] 2026-08-31 19:14:39
[2026-08-31 19:14:39,740.740 INFO    ] 2026-08-31 19:14:39
[2026-08-31 19:14:39,778.778 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:14:39,977.977 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:14:39,992.992 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:14:40,117.117 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:14:40,124.124 INFO    ] time= 31/08/2026 19:14:40
[2026-08-31 19:14:40,143.143 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:14:40,165.165 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:14:40,250.250 INFO    ] No existing commands found in stream
[2026-08-31 19:14:45,262.262 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:14:45,264.264 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-08-31 19:14:47,656.656 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 19:14:47,658.658 INFO    ] Checking for system updates...
[2026-08-31 19:14:47,694.694 INFO    ] 200
[2026-08-31 19:14:47,696.696 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:14:47,749.749 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:14:47,751.751 INFO    ] No update needed
[2026-08-31 19:14:47,754.754 INFO    ] Checking for camera pi updates...
[2026-08-31 19:14:47,787.787 INFO    ] 200
[2026-08-31 19:14:47,790.790 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:14:47,832.832 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:14:47,937.937 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:14:47,939.939 INFO    ] No camera update needed
[2026-08-31 19:14:47,942.942 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:14:47,944.944 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:14:47,949.949 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:14:47,954.954 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:14:50,995.995 INFO    ] ================================================
[2026-08-31 19:14:50,010.010 INFO    ] Launching Daemon at Mon Aug 31 19:14:50 IST 2026
[2026-08-31 19:14:50,021.021 INFO    ] ================================================
[2026-08-31 19:14:50,585.585 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:14:50
[2026-08-31 19:14:51,166.166 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:14:51,438.438 INFO    ] Initializing speech engine...
[2026-08-31 19:14:51,445.445 INFO    ] 2026-08-31 19:14:51
[2026-08-31 19:14:51,714.714 INFO    ] 2026-08-31 19:14:51
[2026-08-31 19:14:51,758.758 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:14:52,004.004 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:14:52,008.008 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:14:52,211.211 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:14:52,239.239 INFO    ] time= 31/08/2026 19:14:52
[2026-08-31 19:14:52,245.245 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:14:52,265.265 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:14:52,388.388 INFO    ] No existing commands found in stream
[2026-08-31 19:14:57,403.403 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:14:57,406.406 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-08-31 19:14:59,496.496 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 19:14:59,499.499 INFO    ] Checking for system updates...
[2026-08-31 19:14:59,550.550 INFO    ] 200
[2026-08-31 19:14:59,553.553 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:14:59,605.605 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:14:59,607.607 INFO    ] No update needed
[2026-08-31 19:14:59,610.610 INFO    ] Checking for camera pi updates...
[2026-08-31 19:14:59,643.643 INFO    ] 200
[2026-08-31 19:14:59,646.646 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:14:59,686.686 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:14:59,769.769 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:14:59,772.772 INFO    ] No camera update needed
[2026-08-31 19:14:59,774.774 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:14:59,776.776 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:14:59,782.782 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:14:59,787.787 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:15:01,859.859 INFO    ] ================================================
[2026-08-31 19:15:01,910.910 INFO    ] Launching Daemon at Mon Aug 31 19:15:01 IST 2026
[2026-08-31 19:15:02,950.950 INFO    ] ================================================
[2026-08-31 19:15:02,733.733 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:15:02
[2026-08-31 19:15:03,394.394 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:15:03,695.695 INFO    ] Initializing speech engine...
[2026-08-31 19:15:03,704.704 INFO    ] 2026-08-31 19:15:03
[2026-08-31 19:15:03,975.975 INFO    ] 2026-08-31 19:15:03
[2026-08-31 19:15:04,011.011 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:15:04,209.209 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:15:04,264.264 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:15:04,406.406 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:15:04,458.458 INFO    ] time= 31/08/2026 19:15:04
[2026-08-31 19:15:04,518.518 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:15:04,557.557 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:15:04,688.688 INFO    ] No existing commands found in stream
[2026-08-31 19:15:09,701.701 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:15:09,704.704 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-08-31 19:15:13,445.445 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 19:15:13,448.448 INFO    ] Checking for system updates...
[2026-08-31 19:15:13,484.484 INFO    ] 200
[2026-08-31 19:15:13,487.487 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:15:13,541.541 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:15:13,544.544 INFO    ] No update needed
[2026-08-31 19:15:13,546.546 INFO    ] Checking for camera pi updates...
[2026-08-31 19:15:13,581.581 INFO    ] 200
[2026-08-31 19:15:13,584.584 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:15:13,631.631 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:15:13,724.724 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:15:13,726.726 INFO    ] No camera update needed
[2026-08-31 19:15:13,728.728 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:15:13,731.731 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:15:13,736.736 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:15:13,741.741 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:15:15,781.781 INFO    ] ================================================
[2026-08-31 19:15:15,798.798 INFO    ] Launching Daemon at Mon Aug 31 19:15:15 IST 2026
[2026-08-31 19:15:15,809.809 INFO    ] ================================================
[2026-08-31 19:15:16,388.388 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:15:16
[2026-08-31 19:15:16,975.975 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:15:17,245.245 INFO    ] Initializing speech engine...
[2026-08-31 19:15:17,254.254 INFO    ] 2026-08-31 19:15:17
[2026-08-31 19:15:17,500.500 INFO    ] 2026-08-31 19:15:17
[2026-08-31 19:15:17,535.535 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:15:17,787.787 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:15:17,796.796 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:15:18,017.017 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:15:18,053.053 INFO    ] time= 31/08/2026 19:15:18
[2026-08-31 19:15:18,059.059 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:15:18,079.079 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:15:18,206.206 INFO    ] No existing commands found in stream
[2026-08-31 19:15:23,219.219 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:15:23,222.222 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-08-31 19:15:27,380.380 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 19:15:27,382.382 INFO    ] Checking for system updates...
[2026-08-31 19:15:27,421.421 INFO    ] 200
[2026-08-31 19:15:27,423.423 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:15:27,475.475 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:15:27,477.477 INFO    ] No update needed
[2026-08-31 19:15:27,480.480 INFO    ] Checking for camera pi updates...
[2026-08-31 19:15:27,516.516 INFO    ] 200
[2026-08-31 19:15:27,519.519 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:15:27,560.560 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:15:27,637.637 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:15:27,640.640 INFO    ] No camera update needed
[2026-08-31 19:15:27,642.642 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:15:27,644.644 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:15:27,650.650 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:15:27,655.655 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:15:29,696.696 INFO    ] ================================================
[2026-08-31 19:15:29,712.712 INFO    ] Launching Daemon at Mon Aug 31 19:15:29 IST 2026
[2026-08-31 19:15:29,723.723 INFO    ] ================================================
[2026-08-31 19:15:30,288.288 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:15:30
[2026-08-31 19:15:30,871.871 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:15:31,141.141 INFO    ] Initializing speech engine...
[2026-08-31 19:15:31,150.150 INFO    ] 2026-08-31 19:15:31
[2026-08-31 19:15:31,399.399 INFO    ] 2026-08-31 19:15:31
[2026-08-31 19:15:31,435.435 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:15:31,624.624 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:15:31,703.703 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:15:31,864.864 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:15:31,909.909 INFO    ] time= 31/08/2026 19:15:31
[2026-08-31 19:15:31,954.954 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:15:32,002.002 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:15:32,127.127 INFO    ] No existing commands found in stream
[2026-08-31 19:15:37,149.149 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:15:37,152.152 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-08-31 19:15:38,365.365 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 19:15:38,368.368 INFO    ] Checking for system updates...
[2026-08-31 19:15:38,403.403 INFO    ] 200
[2026-08-31 19:15:38,406.406 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:15:38,460.460 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:15:38,463.463 INFO    ] No update needed
[2026-08-31 19:15:38,465.465 INFO    ] Checking for camera pi updates...
[2026-08-31 19:15:38,502.502 INFO    ] 200
[2026-08-31 19:15:38,504.504 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:15:38,545.545 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:15:38,635.635 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:15:38,637.637 INFO    ] No camera update needed
[2026-08-31 19:15:38,640.640 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:15:38,642.642 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:15:38,647.647 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:15:38,652.652 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:15:40,693.693 INFO    ] ================================================
[2026-08-31 19:15:40,709.709 INFO    ] Launching Daemon at Mon Aug 31 19:15:40 IST 2026
[2026-08-31 19:15:40,720.720 INFO    ] ================================================
[2026-08-31 19:15:41,302.302 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:15:41
[2026-08-31 19:15:41,901.901 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:15:42,173.173 INFO    ] Initializing speech engine...
[2026-08-31 19:15:42,190.190 INFO    ] 2026-08-31 19:15:42
[2026-08-31 19:15:42,462.462 INFO    ] 2026-08-31 19:15:42
[2026-08-31 19:15:42,500.500 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:15:42,695.695 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:15:42,709.709 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:15:42,869.869 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:15:42,876.876 INFO    ] time= 31/08/2026 19:15:42
[2026-08-31 19:15:42,881.881 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:15:42,887.887 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:15:42,962.962 INFO    ] No existing commands found in stream
[2026-08-31 19:15:47,998.998 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:15:48,001.001 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-08-31 19:15:52,064.064 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 19:15:52,067.067 INFO    ] Checking for system updates...
[2026-08-31 19:15:52,103.103 INFO    ] 200
[2026-08-31 19:15:52,106.106 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:15:52,158.158 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:15:52,160.160 INFO    ] No update needed
[2026-08-31 19:15:52,163.163 INFO    ] Checking for camera pi updates...
[2026-08-31 19:15:52,200.200 INFO    ] 200
[2026-08-31 19:15:52,202.202 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:15:52,246.246 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:15:52,326.326 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:15:52,329.329 INFO    ] No camera update needed
[2026-08-31 19:15:52,331.331 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:15:52,334.334 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:15:52,339.339 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:15:52,344.344 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:15:54,386.386 INFO    ] ================================================
[2026-08-31 19:15:54,401.401 INFO    ] Launching Daemon at Mon Aug 31 19:15:54 IST 2026
[2026-08-31 19:15:54,412.412 INFO    ] ================================================
[2026-08-31 19:15:55,022.022 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:15:55
[2026-08-31 19:15:55,692.692 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:15:55,998.998 INFO    ] Initializing speech engine...
[2026-08-31 19:15:56,005.005 INFO    ] 2026-08-31 19:15:56
[2026-08-31 19:15:56,286.286 INFO    ] 2026-08-31 19:15:56
[2026-08-31 19:15:56,341.341 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:15:56,569.569 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:15:56,578.578 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:15:56,717.717 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:15:56,789.789 INFO    ] time= 31/08/2026 19:15:56
[2026-08-31 19:15:56,849.849 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:15:56,856.856 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:15:57,011.011 INFO    ] No existing commands found in stream
[2026-08-31 19:16:02,043.043 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:16:02,048.048 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-08-31 19:16:03,607.607 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 19:16:03,610.610 INFO    ] Checking for system updates...
[2026-08-31 19:16:03,647.647 INFO    ] 200
[2026-08-31 19:16:03,649.649 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:16:03,709.709 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:16:03,712.712 INFO    ] No update needed
[2026-08-31 19:16:03,715.715 INFO    ] Checking for camera pi updates...
[2026-08-31 19:16:03,750.750 INFO    ] 200
[2026-08-31 19:16:03,752.752 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:16:03,793.793 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:16:03,863.863 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:16:03,866.866 INFO    ] No camera update needed
[2026-08-31 19:16:03,869.869 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:16:03,872.872 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:16:03,878.878 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:16:03,884.884 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:16:05,923.923 INFO    ] ================================================
[2026-08-31 19:16:05,938.938 INFO    ] Launching Daemon at Mon Aug 31 19:16:05 IST 2026
[2026-08-31 19:16:05,949.949 INFO    ] ================================================
[2026-08-31 19:16:06,543.543 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:16:06
[2026-08-31 19:16:07,201.201 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:16:07,496.496 INFO    ] Initializing speech engine...
[2026-08-31 19:16:07,508.508 INFO    ] 2026-08-31 19:16:07
[2026-08-31 19:16:07,784.784 INFO    ] 2026-08-31 19:16:07
[2026-08-31 19:16:07,841.841 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:16:08,069.069 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:16:08,079.079 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:16:08,297.297 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:16:08,346.346 INFO    ] time= 31/08/2026 19:16:08
[2026-08-31 19:16:08,353.353 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:16:08,374.374 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:16:08,485.485 INFO    ] No existing commands found in stream
[2026-08-31 19:16:13,511.511 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:16:13,514.514 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-08-31 19:16:15,673.673 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 19:16:15,676.676 INFO    ] Checking for system updates...
[2026-08-31 19:16:15,713.713 INFO    ] 200
[2026-08-31 19:16:15,716.716 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:16:15,775.775 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:16:15,778.778 INFO    ] No update needed
[2026-08-31 19:16:15,781.781 INFO    ] Checking for camera pi updates...
[2026-08-31 19:16:15,816.816 INFO    ] 200
[2026-08-31 19:16:15,819.819 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:16:15,860.860 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:16:15,937.937 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:16:15,940.940 INFO    ] No camera update needed
[2026-08-31 19:16:15,943.943 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:16:15,945.945 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:16:15,951.951 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:16:15,957.957 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:16:18,999.999 INFO    ] ================================================
[2026-08-31 19:16:18,015.015 INFO    ] Launching Daemon at Mon Aug 31 19:16:18 IST 2026
[2026-08-31 19:16:18,025.025 INFO    ] ================================================
[2026-08-31 19:16:18,597.597 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:16:18
[2026-08-31 19:16:19,183.183 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:16:19,431.431 INFO    ] Initializing speech engine...
[2026-08-31 19:16:19,452.452 INFO    ] 2026-08-31 19:16:19
[2026-08-31 19:16:19,712.712 INFO    ] 2026-08-31 19:16:19
[2026-08-31 19:16:19,751.751 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:16:20,009.009 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:16:20,018.018 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:16:20,228.228 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:16:20,284.284 INFO    ] time= 31/08/2026 19:16:20
[2026-08-31 19:16:20,291.291 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:16:20,305.305 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:16:20,405.405 INFO    ] No existing commands found in stream
[2026-08-31 19:16:25,427.427 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:16:25,430.430 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-08-31 19:16:26,223.223 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 19:16:26,225.225 INFO    ] Checking for system updates...
[2026-08-31 19:16:26,261.261 INFO    ] 200
[2026-08-31 19:16:26,264.264 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:16:26,322.322 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:16:26,324.324 INFO    ] No update needed
[2026-08-31 19:16:26,326.326 INFO    ] Checking for camera pi updates...
[2026-08-31 19:16:26,363.363 INFO    ] 200
[2026-08-31 19:16:26,366.366 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:16:26,406.406 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:16:26,494.494 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:16:26,496.496 INFO    ] No camera update needed
[2026-08-31 19:16:26,499.499 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:16:26,501.501 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:16:26,507.507 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:16:26,512.512 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:16:28,551.551 INFO    ] ================================================
[2026-08-31 19:16:28,567.567 INFO    ] Launching Daemon at Mon Aug 31 19:16:28 IST 2026
[2026-08-31 19:16:28,578.578 INFO    ] ================================================
[2026-08-31 19:16:29,150.150 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:16:29
[2026-08-31 19:16:29,739.739 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:16:30,013.013 INFO    ] Initializing speech engine...
[2026-08-31 19:16:30,023.023 INFO    ] 2026-08-31 19:16:30
[2026-08-31 19:16:30,275.275 INFO    ] 2026-08-31 19:16:30
[2026-08-31 19:16:30,311.311 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:16:30,574.574 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:16:30,579.579 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:16:30,732.732 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:16:30,791.791 INFO    ] time= 31/08/2026 19:16:30
[2026-08-31 19:16:30,846.846 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:16:30,853.853 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:16:30,964.964 INFO    ] No existing commands found in stream
[2026-08-31 19:16:35,980.980 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:16:35,982.982 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-08-31 19:16:38,585.585 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 19:16:38,588.588 INFO    ] Checking for system updates...
[2026-08-31 19:16:38,628.628 INFO    ] 200
[2026-08-31 19:16:38,630.630 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:16:38,683.683 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:16:38,686.686 INFO    ] No update needed
[2026-08-31 19:16:38,689.689 INFO    ] Checking for camera pi updates...
[2026-08-31 19:16:38,724.724 INFO    ] 200
[2026-08-31 19:16:38,726.726 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:16:38,774.774 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:16:38,863.863 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:16:38,865.865 INFO    ] No camera update needed
[2026-08-31 19:16:38,868.868 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:16:38,871.871 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:16:38,877.877 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:16:38,883.883 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:16:40,925.925 INFO    ] ================================================
[2026-08-31 19:16:40,940.940 INFO    ] Launching Daemon at Mon Aug 31 19:16:40 IST 2026
[2026-08-31 19:16:40,951.951 INFO    ] ================================================
[2026-08-31 19:16:41,517.517 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:16:41
[2026-08-31 19:16:42,099.099 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:16:42,345.345 INFO    ] Initializing speech engine...
[2026-08-31 19:16:42,360.360 INFO    ] 2026-08-31 19:16:42
[2026-08-31 19:16:42,626.626 INFO    ] 2026-08-31 19:16:42
[2026-08-31 19:16:42,661.661 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:16:42,846.846 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:16:42,862.862 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:16:42,998.998 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:16:43,006.006 INFO    ] time= 31/08/2026 19:16:42
[2026-08-31 19:16:43,056.056 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:16:43,073.073 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:16:43,203.203 INFO    ] No existing commands found in stream
[2026-08-31 19:16:48,213.213 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:16:48,215.215 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-08-31 19:16:51,453.453 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 19:16:51,456.456 INFO    ] Checking for system updates...
[2026-08-31 19:16:51,491.491 INFO    ] 200
[2026-08-31 19:16:51,494.494 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:16:51,547.547 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:16:51,550.550 INFO    ] No update needed
[2026-08-31 19:16:51,552.552 INFO    ] Checking for camera pi updates...
[2026-08-31 19:16:51,585.585 INFO    ] 200
[2026-08-31 19:16:51,588.588 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:16:51,629.629 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:16:51,708.708 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:16:51,711.711 INFO    ] No camera update needed
[2026-08-31 19:16:51,713.713 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:16:51,715.715 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:16:51,721.721 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:16:51,726.726 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:16:53,767.767 INFO    ] ================================================
[2026-08-31 19:16:53,782.782 INFO    ] Launching Daemon at Mon Aug 31 19:16:53 IST 2026
[2026-08-31 19:16:53,793.793 INFO    ] ================================================
[2026-08-31 19:16:54,451.451 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:16:54
[2026-08-31 19:16:55,136.136 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:16:55,444.444 INFO    ] Initializing speech engine...
[2026-08-31 19:16:55,459.459 INFO    ] 2026-08-31 19:16:55
[2026-08-31 19:16:55,730.730 INFO    ] 2026-08-31 19:16:55
[2026-08-31 19:16:55,788.788 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:16:56,017.017 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:16:56,027.027 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:16:56,192.192 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:16:56,254.254 INFO    ] time= 31/08/2026 19:16:56
[2026-08-31 19:16:56,300.300 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:16:56,307.307 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:16:56,446.446 INFO    ] No existing commands found in stream
[2026-08-31 19:17:01,469.469 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:17:01,473.473 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-08-31 19:17:03,885.885 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 19:17:03,888.888 INFO    ] Checking for system updates...
[2026-08-31 19:17:03,928.928 INFO    ] 200
[2026-08-31 19:17:03,930.930 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:17:03,990.990 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:17:03,992.992 INFO    ] No update needed
[2026-08-31 19:17:03,994.994 INFO    ] Checking for camera pi updates...
[2026-08-31 19:17:04,028.028 INFO    ] 200
[2026-08-31 19:17:04,031.031 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:17:04,071.071 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:17:04,151.151 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:17:04,154.154 INFO    ] No camera update needed
[2026-08-31 19:17:04,156.156 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:17:04,159.159 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:17:04,164.164 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:17:04,169.169 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:17:06,208.208 INFO    ] ================================================
[2026-08-31 19:17:06,223.223 INFO    ] Launching Daemon at Mon Aug 31 19:17:06 IST 2026
[2026-08-31 19:17:06,234.234 INFO    ] ================================================
[2026-08-31 19:17:06,800.800 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:17:06
[2026-08-31 19:17:07,383.383 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:17:07,643.643 INFO    ] Initializing speech engine...
[2026-08-31 19:17:07,663.663 INFO    ] 2026-08-31 19:17:07
[2026-08-31 19:17:07,934.934 INFO    ] 2026-08-31 19:17:07
[2026-08-31 19:17:07,970.970 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:17:08,173.173 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:17:08,232.232 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:17:08,377.377 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:17:08,437.437 INFO    ] time= 31/08/2026 19:17:08
[2026-08-31 19:17:08,491.491 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:17:08,511.511 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:17:08,642.642 INFO    ] No existing commands found in stream
[2026-08-31 19:17:13,667.667 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:17:13,670.670 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-08-31 19:17:14,744.744 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 19:17:14,747.747 INFO    ] Checking for system updates...
[2026-08-31 19:17:14,782.782 INFO    ] 200
[2026-08-31 19:17:14,785.785 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:17:14,844.844 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:17:14,847.847 INFO    ] No update needed
[2026-08-31 19:17:14,849.849 INFO    ] Checking for camera pi updates...
[2026-08-31 19:17:14,886.886 INFO    ] 200
[2026-08-31 19:17:14,889.889 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:17:14,930.930 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:17:15,021.021 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:17:15,023.023 INFO    ] No camera update needed
[2026-08-31 19:17:15,025.025 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:17:15,028.028 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:17:15,033.033 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:17:15,038.038 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:17:17,078.078 INFO    ] ================================================
[2026-08-31 19:17:17,093.093 INFO    ] Launching Daemon at Mon Aug 31 19:17:17 IST 2026
[2026-08-31 19:17:17,103.103 INFO    ] ================================================
[2026-08-31 19:17:17,670.670 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:17:17
[2026-08-31 19:17:18,253.253 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:17:18,510.510 INFO    ] Initializing speech engine...
[2026-08-31 19:17:18,523.523 INFO    ] 2026-08-31 19:17:18
[2026-08-31 19:17:18,812.812 INFO    ] 2026-08-31 19:17:18
[2026-08-31 19:17:18,850.850 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:17:19,063.063 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:17:19,079.079 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:17:19,224.224 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:17:19,232.232 INFO    ] time= 31/08/2026 19:17:19
[2026-08-31 19:17:19,237.237 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:17:19,243.243 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:17:19,319.319 INFO    ] No existing commands found in stream
[2026-08-31 19:17:24,344.344 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:17:24,347.347 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-08-31 19:17:25,484.484 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 19:17:25,487.487 INFO    ] Checking for system updates...
[2026-08-31 19:17:25,523.523 INFO    ] 200
[2026-08-31 19:17:25,525.525 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:17:25,577.577 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:17:25,580.580 INFO    ] No update needed
[2026-08-31 19:17:25,582.582 INFO    ] Checking for camera pi updates...
[2026-08-31 19:17:25,620.620 INFO    ] 200
[2026-08-31 19:17:25,622.622 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:17:25,662.662 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:17:25,745.745 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:17:25,748.748 INFO    ] No camera update needed
[2026-08-31 19:17:25,750.750 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:17:25,752.752 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:17:25,758.758 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:17:25,763.763 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:17:27,804.804 INFO    ] ================================================
[2026-08-31 19:17:27,819.819 INFO    ] Launching Daemon at Mon Aug 31 19:17:27 IST 2026
[2026-08-31 19:17:27,829.829 INFO    ] ================================================
[2026-08-31 19:17:28,409.409 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:17:28
[2026-08-31 19:17:29,008.008 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:17:29,305.305 INFO    ] Initializing speech engine...
[2026-08-31 19:17:29,313.313 INFO    ] 2026-08-31 19:17:29
[2026-08-31 19:17:29,572.572 INFO    ] 2026-08-31 19:17:29
[2026-08-31 19:17:29,625.625 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:17:29,848.848 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:17:29,857.857 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:17:29,995.995 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:17:29,998.998 INFO    ] time= 31/08/2026 19:17:29
[2026-08-31 19:17:30,052.052 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:17:30,106.106 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:17:30,242.242 INFO    ] No existing commands found in stream
[2026-08-31 19:17:35,261.261 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:17:35,264.264 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-08-31 19:17:38,843.843 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 19:17:38,845.845 INFO    ] Checking for system updates...
[2026-08-31 19:17:38,880.880 INFO    ] 200
[2026-08-31 19:17:38,883.883 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:17:38,940.940 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:17:38,942.942 INFO    ] No update needed
[2026-08-31 19:17:38,945.945 INFO    ] Checking for camera pi updates...
[2026-08-31 19:17:38,981.981 INFO    ] 200
[2026-08-31 19:17:38,983.983 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:17:39,023.023 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:17:39,074.074 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:17:39,076.076 INFO    ] No camera update needed
[2026-08-31 19:17:39,079.079 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:17:39,081.081 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:17:39,086.086 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:17:39,091.091 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:17:41,131.131 INFO    ] ================================================
[2026-08-31 19:17:41,146.146 INFO    ] Launching Daemon at Mon Aug 31 19:17:41 IST 2026
[2026-08-31 19:17:41,156.156 INFO    ] ================================================
[2026-08-31 19:17:41,761.761 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:17:41
[2026-08-31 19:17:42,342.342 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:17:42,613.613 INFO    ] Initializing speech engine...
[2026-08-31 19:17:42,621.621 INFO    ] 2026-08-31 19:17:42
[2026-08-31 19:17:42,877.877 INFO    ] 2026-08-31 19:17:42
[2026-08-31 19:17:42,907.907 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:17:43,149.149 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:17:43,157.157 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:17:43,294.294 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:17:43,341.341 INFO    ] time= 31/08/2026 19:17:43
[2026-08-31 19:17:43,400.400 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:17:43,430.430 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:17:43,489.489 INFO    ] No existing commands found in stream
[2026-08-31 19:17:48,500.500 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:17:48,502.502 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-08-31 19:17:51,265.265 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 19:17:51,268.268 INFO    ] Checking for system updates...
[2026-08-31 19:17:51,306.306 INFO    ] 200
[2026-08-31 19:17:51,309.309 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:17:51,366.366 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:17:51,369.369 INFO    ] No update needed
[2026-08-31 19:17:51,371.371 INFO    ] Checking for camera pi updates...
[2026-08-31 19:17:51,405.405 INFO    ] 200
[2026-08-31 19:17:51,407.407 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:17:51,448.448 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:17:51,530.530 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:17:51,533.533 INFO    ] No camera update needed
[2026-08-31 19:17:51,535.535 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:17:51,537.537 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:17:51,542.542 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:17:51,547.547 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:17:53,587.587 INFO    ] ================================================
[2026-08-31 19:17:53,603.603 INFO    ] Launching Daemon at Mon Aug 31 19:17:53 IST 2026
[2026-08-31 19:17:53,614.614 INFO    ] ================================================
[2026-08-31 19:17:54,194.194 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:17:54
[2026-08-31 19:17:54,790.790 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:17:55,066.066 INFO    ] Initializing speech engine...
[2026-08-31 19:17:55,073.073 INFO    ] 2026-08-31 19:17:55
[2026-08-31 19:17:55,333.333 INFO    ] 2026-08-31 19:17:55
[2026-08-31 19:17:55,369.369 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:17:55,561.561 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:17:55,574.574 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:17:55,735.735 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:17:55,740.740 INFO    ] time= 31/08/2026 19:17:55
[2026-08-31 19:17:55,747.747 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:17:55,794.794 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:17:55,939.939 INFO    ] No existing commands found in stream
[2026-08-31 19:18:00,964.964 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:18:00,967.967 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-08-31 19:18:03,173.173 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 19:18:03,176.176 INFO    ] Checking for system updates...
[2026-08-31 19:18:03,216.216 INFO    ] 200
[2026-08-31 19:18:03,219.219 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:18:03,272.272 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:18:03,274.274 INFO    ] No update needed
[2026-08-31 19:18:03,277.277 INFO    ] Checking for camera pi updates...
[2026-08-31 19:18:03,310.310 INFO    ] 200
[2026-08-31 19:18:03,313.313 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:18:03,357.357 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:18:03,543.543 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:18:03,546.546 INFO    ] No camera update needed
[2026-08-31 19:18:03,548.548 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:18:03,550.550 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:18:03,556.556 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:18:03,561.561 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:18:05,601.601 INFO    ] ================================================
[2026-08-31 19:18:05,617.617 INFO    ] Launching Daemon at Mon Aug 31 19:18:05 IST 2026
[2026-08-31 19:18:05,627.627 INFO    ] ================================================
[2026-08-31 19:18:06,247.247 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:18:06
[2026-08-31 19:18:06,905.905 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:18:07,206.206 INFO    ] Initializing speech engine...
[2026-08-31 19:18:07,221.221 INFO    ] 2026-08-31 19:18:07
[2026-08-31 19:18:07,491.491 INFO    ] 2026-08-31 19:18:07
[2026-08-31 19:18:07,546.546 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:18:07,832.832 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:18:07,843.843 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:18:08,004.004 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:18:08,047.047 INFO    ] time= 31/08/2026 19:18:08
[2026-08-31 19:18:08,066.066 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:18:08,075.075 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:18:08,203.203 INFO    ] No existing commands found in stream
[2026-08-31 19:18:13,219.219 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:18:13,222.222 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-08-31 19:18:14,774.774 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 19:18:14,777.777 INFO    ] Checking for system updates...
[2026-08-31 19:18:14,864.864 INFO    ] 200
[2026-08-31 19:18:14,866.866 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:18:14,920.920 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:18:14,923.923 INFO    ] No update needed
[2026-08-31 19:18:14,925.925 INFO    ] Checking for camera pi updates...
[2026-08-31 19:18:14,963.963 INFO    ] 200
[2026-08-31 19:18:14,965.965 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:18:15,011.011 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:18:15,096.096 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:18:15,099.099 INFO    ] No camera update needed
[2026-08-31 19:18:15,102.102 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:18:15,105.105 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:18:15,111.111 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:18:15,116.116 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:18:17,157.157 INFO    ] ================================================
[2026-08-31 19:18:17,172.172 INFO    ] Launching Daemon at Mon Aug 31 19:18:17 IST 2026
[2026-08-31 19:18:17,182.182 INFO    ] ================================================
[2026-08-31 19:18:17,764.764 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:18:17
[2026-08-31 19:18:18,377.377 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:18:18,630.630 INFO    ] Initializing speech engine...
[2026-08-31 19:18:18,639.639 INFO    ] 2026-08-31 19:18:18
[2026-08-31 19:18:18,929.929 INFO    ] 2026-08-31 19:18:18
[2026-08-31 19:18:18,966.966 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:18:19,160.160 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:18:19,174.174 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:18:19,334.334 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:18:19,343.343 INFO    ] time= 31/08/2026 19:18:19
[2026-08-31 19:18:19,350.350 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:18:19,355.355 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:18:19,478.478 INFO    ] No existing commands found in stream
[2026-08-31 19:18:24,503.503 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:18:24,506.506 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-08-31 19:18:26,906.906 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 19:18:26,908.908 INFO    ] Checking for system updates...
[2026-08-31 19:18:26,944.944 INFO    ] 200
[2026-08-31 19:18:26,946.946 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:18:27,004.004 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:18:27,006.006 INFO    ] No update needed
[2026-08-31 19:18:27,009.009 INFO    ] Checking for camera pi updates...
[2026-08-31 19:18:27,042.042 INFO    ] 200
[2026-08-31 19:18:27,044.044 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:18:27,088.088 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:18:27,190.190 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:18:27,193.193 INFO    ] No camera update needed
[2026-08-31 19:18:27,195.195 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:18:27,197.197 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:18:27,203.203 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:18:27,208.208 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:18:29,248.248 INFO    ] ================================================
[2026-08-31 19:18:29,263.263 INFO    ] Launching Daemon at Mon Aug 31 19:18:29 IST 2026
[2026-08-31 19:18:29,274.274 INFO    ] ================================================
[2026-08-31 19:18:29,858.858 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:18:29
[2026-08-31 19:18:30,522.522 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:18:30,820.820 INFO    ] Initializing speech engine...
[2026-08-31 19:18:30,830.830 INFO    ] 2026-08-31 19:18:30
[2026-08-31 19:18:31,124.124 INFO    ] 2026-08-31 19:18:31
[2026-08-31 19:18:31,169.169 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:18:31,410.410 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:18:31,421.421 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:18:31,582.582 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:18:31,643.643 INFO    ] time= 31/08/2026 19:18:31
[2026-08-31 19:18:31,706.706 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:18:31,714.714 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:18:31,871.871 INFO    ] No existing commands found in stream
[2026-08-31 19:18:36,901.901 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:18:36,904.904 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-08-31 19:18:38,563.563 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 19:18:38,565.565 INFO    ] Checking for system updates...
[2026-08-31 19:18:38,600.600 INFO    ] 200
[2026-08-31 19:18:38,603.603 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:18:38,655.655 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:18:38,657.657 INFO    ] No update needed
[2026-08-31 19:18:38,660.660 INFO    ] Checking for camera pi updates...
[2026-08-31 19:18:38,698.698 INFO    ] 200
[2026-08-31 19:18:38,701.701 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:18:38,741.741 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:18:38,830.830 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:18:38,833.833 INFO    ] No camera update needed
[2026-08-31 19:18:38,835.835 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:18:38,837.837 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:18:38,842.842 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:18:38,847.847 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:18:40,889.889 INFO    ] ================================================
[2026-08-31 19:18:40,910.910 INFO    ] Launching Daemon at Mon Aug 31 19:18:40 IST 2026
[2026-08-31 19:18:40,921.921 INFO    ] ================================================
[2026-08-31 19:18:41,500.500 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:18:41
[2026-08-31 19:18:42,100.100 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:18:42,363.363 INFO    ] Initializing speech engine...
[2026-08-31 19:18:42,379.379 INFO    ] 2026-08-31 19:18:42
[2026-08-31 19:18:42,664.664 INFO    ] 2026-08-31 19:18:42
[2026-08-31 19:18:42,702.702 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:18:42,925.925 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:18:42,984.984 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:18:43,153.153 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:18:43,191.191 INFO    ] time= 31/08/2026 19:18:43
[2026-08-31 19:18:43,245.245 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:18:43,299.299 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:18:43,368.368 INFO    ] No existing commands found in stream
[2026-08-31 19:18:48,375.375 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:18:48,378.378 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-08-31 19:18:48,989.989 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 19:18:48,992.992 INFO    ] Checking for system updates...
[2026-08-31 19:18:49,027.027 INFO    ] 200
[2026-08-31 19:18:49,030.030 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:18:49,082.082 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:18:49,084.084 INFO    ] No update needed
[2026-08-31 19:18:49,087.087 INFO    ] Checking for camera pi updates...
[2026-08-31 19:18:49,120.120 INFO    ] 200
[2026-08-31 19:18:49,122.122 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:18:49,163.163 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:18:49,253.253 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:18:49,255.255 INFO    ] No camera update needed
[2026-08-31 19:18:49,258.258 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:18:49,260.260 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:18:49,265.265 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:18:49,270.270 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:18:51,313.313 INFO    ] ================================================
[2026-08-31 19:18:51,332.332 INFO    ] Launching Daemon at Mon Aug 31 19:18:51 IST 2026
[2026-08-31 19:18:51,342.342 INFO    ] ================================================
[2026-08-31 19:18:51,929.929 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:18:51
[2026-08-31 19:18:52,535.535 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:18:52,810.810 INFO    ] Initializing speech engine...
[2026-08-31 19:18:52,819.819 INFO    ] 2026-08-31 19:18:52
[2026-08-31 19:18:53,072.072 INFO    ] 2026-08-31 19:18:53
[2026-08-31 19:18:53,107.107 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:18:53,280.280 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:18:53,291.291 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:18:53,437.437 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:18:53,443.443 INFO    ] time= 31/08/2026 19:18:53
[2026-08-31 19:18:53,497.497 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:18:53,513.513 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:18:53,638.638 INFO    ] No existing commands found in stream
[2026-08-31 19:18:58,647.647 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:18:58,650.650 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-08-31 19:19:02,029.029 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 19:19:02,032.032 INFO    ] Checking for system updates...
[2026-08-31 19:19:02,076.076 INFO    ] 200
[2026-08-31 19:19:02,080.080 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:19:02,143.143 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:19:02,146.146 INFO    ] No update needed
[2026-08-31 19:19:02,150.150 INFO    ] Checking for camera pi updates...
[2026-08-31 19:19:02,189.189 INFO    ] 200
[2026-08-31 19:19:02,193.193 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:19:02,245.245 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:19:02,302.302 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:19:02,305.305 INFO    ] No camera update needed
[2026-08-31 19:19:02,309.309 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:19:02,313.313 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:19:02,321.321 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:19:02,330.330 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:19:04,372.372 INFO    ] ================================================
[2026-08-31 19:19:04,387.387 INFO    ] Launching Daemon at Mon Aug 31 19:19:04 IST 2026
[2026-08-31 19:19:04,398.398 INFO    ] ================================================
[2026-08-31 19:19:04,983.983 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:19:04
[2026-08-31 19:19:05,587.587 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:19:05,855.855 INFO    ] Initializing speech engine...
[2026-08-31 19:19:05,891.891 INFO    ] 2026-08-31 19:19:05
[2026-08-31 19:19:06,178.178 INFO    ] 2026-08-31 19:19:06
[2026-08-31 19:19:06,217.217 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:19:06,413.413 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:19:06,427.427 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:19:06,589.589 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:19:06,599.599 INFO    ] time= 31/08/2026 19:19:06
[2026-08-31 19:19:06,605.605 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:19:06,659.659 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:19:06,778.778 INFO    ] No existing commands found in stream
[2026-08-31 19:19:11,803.803 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:19:11,806.806 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-08-31 19:19:12,422.422 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 19:19:12,424.424 INFO    ] Checking for system updates...
[2026-08-31 19:19:12,464.464 INFO    ] 200
[2026-08-31 19:19:12,467.467 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:19:12,526.526 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:19:12,529.529 INFO    ] No update needed
[2026-08-31 19:19:12,531.531 INFO    ] Checking for camera pi updates...
[2026-08-31 19:19:12,565.565 INFO    ] 200
[2026-08-31 19:19:12,568.568 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:19:12,610.610 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:19:12,692.692 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:19:12,694.694 INFO    ] No camera update needed
[2026-08-31 19:19:12,697.697 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:19:12,700.700 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:19:12,706.706 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:19:12,712.712 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:19:14,754.754 INFO    ] ================================================
[2026-08-31 19:19:14,769.769 INFO    ] Launching Daemon at Mon Aug 31 19:19:14 IST 2026
[2026-08-31 19:19:14,781.781 INFO    ] ================================================
[2026-08-31 19:19:15,348.348 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:19:15
[2026-08-31 19:19:15,959.959 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:19:16,263.263 INFO    ] Initializing speech engine...
[2026-08-31 19:19:16,278.278 INFO    ] 2026-08-31 19:19:16
[2026-08-31 19:19:16,565.565 INFO    ] 2026-08-31 19:19:16
[2026-08-31 19:19:16,676.676 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:19:16,835.835 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:19:16,841.841 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:19:16,978.978 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:19:17,050.050 INFO    ] time= 31/08/2026 19:19:16
[2026-08-31 19:19:17,109.109 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:19:17,116.116 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:19:17,266.266 INFO    ] No existing commands found in stream
[2026-08-31 19:19:22,285.285 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:19:22,289.289 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-08-31 19:19:23,083.083 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 19:19:23,085.085 INFO    ] Checking for system updates...
[2026-08-31 19:19:23,121.121 INFO    ] 200
[2026-08-31 19:19:23,123.123 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:19:23,175.175 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:19:23,178.178 INFO    ] No update needed
[2026-08-31 19:19:23,180.180 INFO    ] Checking for camera pi updates...
[2026-08-31 19:19:23,214.214 INFO    ] 200
[2026-08-31 19:19:23,216.216 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:19:23,256.256 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:19:23,338.338 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:19:23,341.341 INFO    ] No camera update needed
[2026-08-31 19:19:23,343.343 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:19:23,345.345 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:19:23,350.350 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:19:23,355.355 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:19:25,396.396 INFO    ] ================================================
[2026-08-31 19:19:25,415.415 INFO    ] Launching Daemon at Mon Aug 31 19:19:25 IST 2026
[2026-08-31 19:19:25,426.426 INFO    ] ================================================
[2026-08-31 19:19:26,007.007 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:19:26
[2026-08-31 19:19:26,605.605 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:19:26,866.866 INFO    ] Initializing speech engine...
[2026-08-31 19:19:26,881.881 INFO    ] 2026-08-31 19:19:26
[2026-08-31 19:19:27,146.146 INFO    ] 2026-08-31 19:19:27
[2026-08-31 19:19:27,181.181 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:19:27,379.379 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:19:27,420.420 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:19:27,649.649 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:19:27,701.701 INFO    ] time= 31/08/2026 19:19:27
[2026-08-31 19:19:27,707.707 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:19:27,725.725 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:19:27,840.840 INFO    ] No existing commands found in stream
[2026-08-31 19:19:32,864.864 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:19:32,867.867 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-08-31 19:19:36,703.703 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 19:19:36,705.705 INFO    ] Checking for system updates...
[2026-08-31 19:19:36,745.745 INFO    ] 200
[2026-08-31 19:19:36,747.747 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:19:36,806.806 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:19:36,809.809 INFO    ] No update needed
[2026-08-31 19:19:36,811.811 INFO    ] Checking for camera pi updates...
[2026-08-31 19:19:36,844.844 INFO    ] 200
[2026-08-31 19:19:36,847.847 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:19:36,888.888 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:19:36,974.974 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:19:36,976.976 INFO    ] No camera update needed
[2026-08-31 19:19:36,979.979 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:19:36,981.981 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:19:36,986.986 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:19:36,991.991 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:19:39,033.033 INFO    ] ================================================
[2026-08-31 19:19:39,048.048 INFO    ] Launching Daemon at Mon Aug 31 19:19:39 IST 2026
[2026-08-31 19:19:39,059.059 INFO    ] ================================================
[2026-08-31 19:19:39,630.630 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:19:39
[2026-08-31 19:19:40,223.223 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:19:40,470.470 INFO    ] Initializing speech engine...
[2026-08-31 19:19:40,478.478 INFO    ] 2026-08-31 19:19:40
[2026-08-31 19:19:40,763.763 INFO    ] 2026-08-31 19:19:40
[2026-08-31 19:19:40,820.820 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:19:41,046.046 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:19:41,055.055 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:19:41,192.192 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:19:41,226.226 INFO    ] time= 31/08/2026 19:19:41
[2026-08-31 19:19:41,280.280 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:19:41,324.324 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:19:41,445.445 INFO    ] No existing commands found in stream
[2026-08-31 19:19:46,475.475 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:19:46,478.478 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-08-31 19:19:47,739.739 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 19:19:47,742.742 INFO    ] Checking for system updates...
[2026-08-31 19:19:47,782.782 INFO    ] 200
[2026-08-31 19:19:47,784.784 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:19:47,848.848 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:19:47,851.851 INFO    ] No update needed
[2026-08-31 19:19:47,854.854 INFO    ] Checking for camera pi updates...
[2026-08-31 19:19:47,891.891 INFO    ] 200
[2026-08-31 19:19:47,894.894 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:19:47,935.935 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:19:48,018.018 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:19:48,021.021 INFO    ] No camera update needed
[2026-08-31 19:19:48,024.024 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:19:48,026.026 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:19:48,032.032 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:19:48,038.038 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:19:50,081.081 INFO    ] ================================================
[2026-08-31 19:19:50,096.096 INFO    ] Launching Daemon at Mon Aug 31 19:19:50 IST 2026
[2026-08-31 19:19:50,107.107 INFO    ] ================================================
[2026-08-31 19:19:50,724.724 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:19:50
[2026-08-31 19:19:51,373.373 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:19:51,670.670 INFO    ] Initializing speech engine...
[2026-08-31 19:19:51,677.677 INFO    ] 2026-08-31 19:19:51
[2026-08-31 19:19:51,949.949 INFO    ] 2026-08-31 19:19:51
[2026-08-31 19:19:51,984.984 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:19:52,243.243 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:19:52,264.264 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:19:52,380.380 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:19:52,427.427 INFO    ] time= 31/08/2026 19:19:52
[2026-08-31 19:19:52,482.482 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:19:52,520.520 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:19:52,657.657 INFO    ] No existing commands found in stream
[2026-08-31 19:19:57,678.678 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:19:57,681.681 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-08-31 19:20:00,224.224 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 19:20:00,227.227 INFO    ] Checking for system updates...
[2026-08-31 19:20:00,263.263 INFO    ] 200
[2026-08-31 19:20:00,266.266 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:20:00,329.329 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:20:00,332.332 INFO    ] No update needed
[2026-08-31 19:20:00,335.335 INFO    ] Checking for camera pi updates...
[2026-08-31 19:20:00,370.370 INFO    ] 200
[2026-08-31 19:20:00,372.372 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:20:00,414.414 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:20:00,502.502 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:20:00,504.504 INFO    ] No camera update needed
[2026-08-31 19:20:00,507.507 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:20:00,510.510 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:20:00,516.516 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:20:00,521.521 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:20:02,593.593 INFO    ] ================================================
[2026-08-31 19:20:02,689.689 INFO    ] Launching Daemon at Mon Aug 31 19:20:02 IST 2026
[2026-08-31 19:20:02,735.735 INFO    ] ================================================
[2026-08-31 19:20:03,450.450 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:20:03
[2026-08-31 19:20:04,156.156 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:20:04,430.430 INFO    ] Initializing speech engine...
[2026-08-31 19:20:04,441.441 INFO    ] 2026-08-31 19:20:04
[2026-08-31 19:20:04,691.691 INFO    ] 2026-08-31 19:20:04
[2026-08-31 19:20:04,761.761 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:20:04,985.985 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:20:04,990.990 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:20:05,199.199 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:20:05,246.246 INFO    ] time= 31/08/2026 19:20:05
[2026-08-31 19:20:05,252.252 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:20:05,271.271 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:20:05,380.380 INFO    ] No existing commands found in stream
[2026-08-31 19:20:10,408.408 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:20:10,410.410 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-08-31 19:20:13,854.854 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 19:20:13,856.856 INFO    ] Checking for system updates...
[2026-08-31 19:20:13,893.893 INFO    ] 200
[2026-08-31 19:20:13,896.896 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:20:13,950.950 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:20:13,953.953 INFO    ] No update needed
[2026-08-31 19:20:13,955.955 INFO    ] Checking for camera pi updates...
[2026-08-31 19:20:13,990.990 INFO    ] 200
[2026-08-31 19:20:13,992.992 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:20:14,033.033 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:20:14,216.216 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:20:14,219.219 INFO    ] No camera update needed
[2026-08-31 19:20:14,222.222 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:20:14,224.224 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:20:14,230.230 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:20:14,236.236 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:20:16,277.277 INFO    ] ================================================
[2026-08-31 19:20:16,293.293 INFO    ] Launching Daemon at Mon Aug 31 19:20:16 IST 2026
[2026-08-31 19:20:16,304.304 INFO    ] ================================================
[2026-08-31 19:20:16,869.869 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:20:16
[2026-08-31 19:20:17,453.453 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:20:17,720.720 INFO    ] Initializing speech engine...
[2026-08-31 19:20:17,740.740 INFO    ] 2026-08-31 19:20:17
[2026-08-31 19:20:18,004.004 INFO    ] 2026-08-31 19:20:17
[2026-08-31 19:20:18,042.042 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:20:18,244.244 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:20:18,262.262 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:20:18,409.409 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:20:18,416.416 INFO    ] time= 31/08/2026 19:20:18
[2026-08-31 19:20:18,422.422 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:20:18,469.469 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:20:18,614.614 INFO    ] No existing commands found in stream
[2026-08-31 19:20:23,639.639 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:20:23,642.642 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-08-31 19:20:27,162.162 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 19:20:27,165.165 INFO    ] Checking for system updates...
[2026-08-31 19:20:27,209.209 INFO    ] 200
[2026-08-31 19:20:27,211.211 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-08-31 19:20:27,225.225 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-08-31 19:20:27,227.227 INFO    ] Checking for camera pi updates...
[2026-08-31 19:20:27,271.271 INFO    ] 200
[2026-08-31 19:20:27,273.273 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-08-31 19:20:27,276.276 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-08-31 19:20:27,279.279 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:20:27,282.282 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:20:27,288.288 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:20:27,293.293 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:20:29,337.337 INFO    ] ================================================
[2026-08-31 19:20:29,354.354 INFO    ] Launching Daemon at Mon Aug 31 19:20:29 IST 2026
[2026-08-31 19:20:29,366.366 INFO    ] ================================================
[2026-08-31 19:20:30,032.032 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:20:30
[2026-08-31 19:20:30,619.619 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:20:30,875.875 INFO    ] Initializing speech engine...
[2026-08-31 19:20:30,884.884 INFO    ] 2026-08-31 19:20:30
[2026-08-31 19:20:31,164.164 INFO    ] 2026-08-31 19:20:31
[2026-08-31 19:20:31,230.230 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:20:31,452.452 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:20:31,461.461 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:20:31,595.595 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:20:31,655.655 INFO    ] time= 31/08/2026 19:20:31
[2026-08-31 19:20:31,709.709 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:20:31,730.730 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:20:31,850.850 INFO    ] No existing commands found in stream
[2026-08-31 19:20:36,876.876 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:20:36,879.879 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-08-31 19:20:40,819.819 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 19:20:40,822.822 INFO    ] Checking for system updates...
[2026-08-31 19:20:40,858.858 INFO    ] 200
[2026-08-31 19:20:40,860.860 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:20:40,918.918 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:20:40,921.921 INFO    ] No update needed
[2026-08-31 19:20:40,923.923 INFO    ] Checking for camera pi updates...
[2026-08-31 19:20:40,956.956 INFO    ] 200
[2026-08-31 19:20:40,959.959 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:20:40,999.999 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:20:41,099.099 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:20:41,102.102 INFO    ] No camera update needed
[2026-08-31 19:20:41,104.104 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:20:41,106.106 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:20:41,112.112 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:20:41,117.117 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:20:43,156.156 INFO    ] ================================================
[2026-08-31 19:20:43,172.172 INFO    ] Launching Daemon at Mon Aug 31 19:20:43 IST 2026
[2026-08-31 19:20:43,183.183 INFO    ] ================================================
[2026-08-31 19:20:43,824.824 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:20:43
[2026-08-31 19:20:44,484.484 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:20:44,783.783 INFO    ] Initializing speech engine...
[2026-08-31 19:20:44,798.798 INFO    ] 2026-08-31 19:20:44
[2026-08-31 19:20:45,082.082 INFO    ] 2026-08-31 19:20:45
[2026-08-31 19:20:45,191.191 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:20:45,405.405 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:20:45,428.428 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:20:45,597.597 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:20:45,613.613 INFO    ] time= 31/08/2026 19:20:45
[2026-08-31 19:20:45,632.632 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:20:45,649.649 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:20:45,768.768 INFO    ] No existing commands found in stream
[2026-08-31 19:20:50,794.794 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:20:50,797.797 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-08-31 19:20:54,882.882 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 19:20:54,885.885 INFO    ] Checking for system updates...
[2026-08-31 19:20:54,922.922 INFO    ] 200
[2026-08-31 19:20:54,925.925 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:20:54,978.978 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:20:54,980.980 INFO    ] No update needed
[2026-08-31 19:20:54,983.983 INFO    ] Checking for camera pi updates...
[2026-08-31 19:20:55,017.017 INFO    ] 200
[2026-08-31 19:20:55,020.020 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:20:55,061.061 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:20:55,140.140 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:20:55,143.143 INFO    ] No camera update needed
[2026-08-31 19:20:55,146.146 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:20:55,149.149 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:20:55,155.155 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:20:55,160.160 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:20:57,200.200 INFO    ] ================================================
[2026-08-31 19:20:57,215.215 INFO    ] Launching Daemon at Mon Aug 31 19:20:57 IST 2026
[2026-08-31 19:20:57,226.226 INFO    ] ================================================
[2026-08-31 19:20:57,804.804 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:20:57
[2026-08-31 19:20:58,407.407 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:20:58,680.680 INFO    ] Initializing speech engine...
[2026-08-31 19:20:58,691.691 INFO    ] 2026-08-31 19:20:58
[2026-08-31 19:20:58,941.941 INFO    ] 2026-08-31 19:20:58
[2026-08-31 19:20:58,975.975 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:20:59,227.227 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:20:59,239.239 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:20:59,453.453 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:20:59,495.495 INFO    ] time= 31/08/2026 19:20:59
[2026-08-31 19:20:59,501.501 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:20:59,522.522 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:20:59,648.648 INFO    ] No existing commands found in stream
[2026-08-31 19:21:04,661.661 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:21:04,664.664 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-08-31 19:21:08,494.494 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 19:21:08,497.497 INFO    ] Checking for system updates...
[2026-08-31 19:21:08,532.532 INFO    ] 200
[2026-08-31 19:21:08,534.534 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:21:08,586.586 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:21:08,589.589 INFO    ] No update needed
[2026-08-31 19:21:08,591.591 INFO    ] Checking for camera pi updates...
[2026-08-31 19:21:08,625.625 INFO    ] 200
[2026-08-31 19:21:08,628.628 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:21:08,672.672 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:21:08,754.754 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:21:08,756.756 INFO    ] No camera update needed
[2026-08-31 19:21:08,759.759 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:21:08,761.761 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:21:08,766.766 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:21:08,771.771 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:21:10,812.812 INFO    ] ================================================
[2026-08-31 19:21:10,827.827 INFO    ] Launching Daemon at Mon Aug 31 19:21:10 IST 2026
[2026-08-31 19:21:10,837.837 INFO    ] ================================================
[2026-08-31 19:21:11,413.413 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:21:11
[2026-08-31 19:21:11,995.995 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:21:12,267.267 INFO    ] Initializing speech engine...
[2026-08-31 19:21:12,276.276 INFO    ] 2026-08-31 19:21:12
[2026-08-31 19:21:12,528.528 INFO    ] 2026-08-31 19:21:12
[2026-08-31 19:21:12,563.563 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:21:12,820.820 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:21:12,830.830 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:21:12,966.966 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:21:13,026.026 INFO    ] time= 31/08/2026 19:21:12
[2026-08-31 19:21:13,075.075 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:21:13,099.099 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:21:13,213.213 INFO    ] No existing commands found in stream
[2026-08-31 19:21:18,235.235 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:21:18,238.238 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-08-31 19:21:21,453.453 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 19:21:21,455.455 INFO    ] Checking for system updates...
[2026-08-31 19:21:21,495.495 INFO    ] 200
[2026-08-31 19:21:21,497.497 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:21:21,550.550 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:21:21,552.552 INFO    ] No update needed
[2026-08-31 19:21:21,555.555 INFO    ] Checking for camera pi updates...
[2026-08-31 19:21:21,588.588 INFO    ] 200
[2026-08-31 19:21:21,591.591 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:21:21,631.631 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:21:21,708.708 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:21:21,711.711 INFO    ] No camera update needed
[2026-08-31 19:21:21,713.713 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:21:21,715.715 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:21:21,721.721 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:21:21,725.725 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:21:23,767.767 INFO    ] ================================================
[2026-08-31 19:21:23,781.781 INFO    ] Launching Daemon at Mon Aug 31 19:21:23 IST 2026
[2026-08-31 19:21:23,792.792 INFO    ] ================================================
[2026-08-31 19:21:24,373.373 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:21:24
[2026-08-31 19:21:24,973.973 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:21:25,231.231 INFO    ] Initializing speech engine...
[2026-08-31 19:21:25,240.240 INFO    ] 2026-08-31 19:21:25
[2026-08-31 19:21:25,535.535 INFO    ] 2026-08-31 19:21:25
[2026-08-31 19:21:25,574.574 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:21:25,770.770 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:21:25,787.787 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:21:25,950.950 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:21:25,960.960 INFO    ] time= 31/08/2026 19:21:25
[2026-08-31 19:21:25,966.966 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:21:25,972.972 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:21:26,131.131 INFO    ] No existing commands found in stream
[2026-08-31 19:21:31,156.156 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:21:31,159.159 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-08-31 19:21:33,361.361 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 19:21:33,364.364 INFO    ] Checking for system updates...
[2026-08-31 19:21:33,400.400 INFO    ] 200
[2026-08-31 19:21:33,402.402 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:21:33,455.455 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:21:33,458.458 INFO    ] No update needed
[2026-08-31 19:21:33,461.461 INFO    ] Checking for camera pi updates...
[2026-08-31 19:21:33,499.499 INFO    ] 200
[2026-08-31 19:21:33,501.501 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:21:33,541.541 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:21:33,622.622 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:21:33,624.624 INFO    ] No camera update needed
[2026-08-31 19:21:33,627.627 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:21:33,629.629 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:21:33,634.634 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:21:33,639.639 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:21:35,679.679 INFO    ] ================================================
[2026-08-31 19:21:35,694.694 INFO    ] Launching Daemon at Mon Aug 31 19:21:35 IST 2026
[2026-08-31 19:21:35,705.705 INFO    ] ================================================
[2026-08-31 19:21:36,292.292 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:21:36
[2026-08-31 19:21:36,873.873 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:21:37,122.122 INFO    ] Initializing speech engine...
[2026-08-31 19:21:37,135.135 INFO    ] 2026-08-31 19:21:37
[2026-08-31 19:21:37,401.401 INFO    ] 2026-08-31 19:21:37
[2026-08-31 19:21:37,436.436 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:21:37,606.606 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:21:37,619.619 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:21:37,762.762 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:21:37,769.769 INFO    ] time= 31/08/2026 19:21:37
[2026-08-31 19:21:37,821.821 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:21:37,836.836 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:21:37,962.962 INFO    ] No existing commands found in stream
[2026-08-31 19:21:42,973.973 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:21:42,976.976 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-08-31 19:21:47,345.345 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 19:21:47,347.347 INFO    ] Checking for system updates...
[2026-08-31 19:21:47,383.383 INFO    ] 200
[2026-08-31 19:21:47,386.386 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:21:47,438.438 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:21:47,440.440 INFO    ] No update needed
[2026-08-31 19:21:47,443.443 INFO    ] Checking for camera pi updates...
[2026-08-31 19:21:47,476.476 INFO    ] 200
[2026-08-31 19:21:47,478.478 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:21:47,519.519 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:21:47,598.598 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:21:47,601.601 INFO    ] No camera update needed
[2026-08-31 19:21:47,603.603 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:21:47,605.605 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:21:47,611.611 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:21:47,616.616 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:21:49,658.658 INFO    ] ================================================
[2026-08-31 19:21:49,674.674 INFO    ] Launching Daemon at Mon Aug 31 19:21:49 IST 2026
[2026-08-31 19:21:49,684.684 INFO    ] ================================================
[2026-08-31 19:21:50,256.256 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:21:50
[2026-08-31 19:21:50,842.842 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:21:51,115.115 INFO    ] Initializing speech engine...
[2026-08-31 19:21:51,128.128 INFO    ] 2026-08-31 19:21:51
[2026-08-31 19:21:51,397.397 INFO    ] 2026-08-31 19:21:51
[2026-08-31 19:21:51,440.440 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:21:51,691.691 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:21:51,698.698 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:21:51,929.929 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:21:51,937.937 INFO    ] time= 31/08/2026 19:21:51
[2026-08-31 19:21:51,959.959 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:21:51,987.987 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:21:52,091.091 INFO    ] No existing commands found in stream
[2026-08-31 19:21:57,117.117 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:21:57,121.121 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-08-31 19:21:57,984.984 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 19:21:57,987.987 INFO    ] Checking for system updates...
[2026-08-31 19:21:58,024.024 INFO    ] 200
[2026-08-31 19:21:58,027.027 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:21:58,088.088 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:21:58,091.091 INFO    ] No update needed
[2026-08-31 19:21:58,094.094 INFO    ] Checking for camera pi updates...
[2026-08-31 19:21:58,129.129 INFO    ] 200
[2026-08-31 19:21:58,132.132 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:21:58,175.175 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:21:58,247.247 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:21:58,250.250 INFO    ] No camera update needed
[2026-08-31 19:21:58,253.253 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:21:58,255.255 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:21:58,262.262 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:21:58,268.268 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:22:00,309.309 INFO    ] ================================================
[2026-08-31 19:22:00,324.324 INFO    ] Launching Daemon at Mon Aug 31 19:22:00 IST 2026
[2026-08-31 19:22:00,335.335 INFO    ] ================================================
[2026-08-31 19:22:00,898.898 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:22:00
[2026-08-31 19:22:01,596.596 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:22:01,960.960 INFO    ] Initializing speech engine...
[2026-08-31 19:22:01,972.972 INFO    ] 2026-08-31 19:22:01
[2026-08-31 19:22:02,259.259 INFO    ] 2026-08-31 19:22:02
[2026-08-31 19:22:02,322.322 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:22:02,564.564 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:22:02,580.580 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:22:02,766.766 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:22:02,825.825 INFO    ] time= 31/08/2026 19:22:02
[2026-08-31 19:22:02,859.859 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:22:02,905.905 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:22:03,035.035 INFO    ] No existing commands found in stream
[2026-08-31 19:22:08,064.064 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:22:08,067.067 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-08-31 19:22:09,846.846 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 19:22:09,849.849 INFO    ] Checking for system updates...
[2026-08-31 19:22:09,889.889 INFO    ] 200
[2026-08-31 19:22:09,891.891 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:22:09,949.949 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:22:09,952.952 INFO    ] No update needed
[2026-08-31 19:22:09,954.954 INFO    ] Checking for camera pi updates...
[2026-08-31 19:22:09,988.988 INFO    ] 200
[2026-08-31 19:22:09,991.991 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:22:10,032.032 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:22:10,113.113 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:22:10,116.116 INFO    ] No camera update needed
[2026-08-31 19:22:10,119.119 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:22:10,121.121 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:22:10,128.128 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:22:10,133.133 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:22:12,175.175 INFO    ] ================================================
[2026-08-31 19:22:12,190.190 INFO    ] Launching Daemon at Mon Aug 31 19:22:12 IST 2026
[2026-08-31 19:22:12,201.201 INFO    ] ================================================
[2026-08-31 19:22:12,782.782 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:22:12
[2026-08-31 19:22:13,379.379 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:22:13,654.654 INFO    ] Initializing speech engine...
[2026-08-31 19:22:13,673.673 INFO    ] 2026-08-31 19:22:13
[2026-08-31 19:22:13,942.942 INFO    ] 2026-08-31 19:22:13
[2026-08-31 19:22:13,981.981 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:22:14,204.204 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:22:14,269.269 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:22:14,396.396 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:22:14,422.422 INFO    ] time= 31/08/2026 19:22:14
[2026-08-31 19:22:14,460.460 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:22:14,504.504 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:22:14,578.578 INFO    ] No existing commands found in stream
[2026-08-31 19:22:19,601.601 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:22:19,603.603 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-08-31 19:22:23,981.981 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 19:22:23,984.984 INFO    ] Checking for system updates...
[2026-08-31 19:22:24,020.020 INFO    ] 200
[2026-08-31 19:22:24,023.023 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:22:24,085.085 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:22:24,088.088 INFO    ] No update needed
[2026-08-31 19:22:24,090.090 INFO    ] Checking for camera pi updates...
[2026-08-31 19:22:24,125.125 INFO    ] 200
[2026-08-31 19:22:24,127.127 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:22:24,171.171 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:22:24,354.354 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:22:24,356.356 INFO    ] No camera update needed
[2026-08-31 19:22:24,359.359 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:22:24,361.361 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:22:24,367.367 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:22:24,372.372 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:22:26,411.411 INFO    ] ================================================
[2026-08-31 19:22:26,426.426 INFO    ] Launching Daemon at Mon Aug 31 19:22:26 IST 2026
[2026-08-31 19:22:26,436.436 INFO    ] ================================================
[2026-08-31 19:22:27,009.009 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:22:27
[2026-08-31 19:22:27,594.594 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:22:27,871.871 INFO    ] Initializing speech engine...
[2026-08-31 19:22:27,880.880 INFO    ] 2026-08-31 19:22:27
[2026-08-31 19:22:28,132.132 INFO    ] 2026-08-31 19:22:28
[2026-08-31 19:22:28,167.167 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:22:28,427.427 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:22:28,436.436 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:22:28,650.650 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:22:28,702.702 INFO    ] time= 31/08/2026 19:22:28
[2026-08-31 19:22:28,709.709 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:22:28,724.724 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:22:28,840.840 INFO    ] No existing commands found in stream
[2026-08-31 19:22:33,869.869 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:22:33,871.871 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-08-31 19:22:36,641.641 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 19:22:36,644.644 INFO    ] Checking for system updates...
[2026-08-31 19:22:36,685.685 INFO    ] 200
[2026-08-31 19:22:36,688.688 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:22:36,740.740 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:22:36,742.742 INFO    ] No update needed
[2026-08-31 19:22:36,745.745 INFO    ] Checking for camera pi updates...
[2026-08-31 19:22:36,782.782 INFO    ] 200
[2026-08-31 19:22:36,784.784 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:22:36,829.829 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:22:36,911.911 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:22:36,914.914 INFO    ] No camera update needed
[2026-08-31 19:22:36,916.916 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:22:36,918.918 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:22:36,924.924 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:22:36,929.929 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:22:38,970.970 INFO    ] ================================================
[2026-08-31 19:22:38,985.985 INFO    ] Launching Daemon at Mon Aug 31 19:22:38 IST 2026
[2026-08-31 19:22:39,995.995 INFO    ] ================================================
[2026-08-31 19:22:39,645.645 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:22:39
[2026-08-31 19:22:40,315.315 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:22:40,615.615 INFO    ] Initializing speech engine...
[2026-08-31 19:22:40,621.621 INFO    ] 2026-08-31 19:22:40
[2026-08-31 19:22:40,897.897 INFO    ] 2026-08-31 19:22:40
[2026-08-31 19:22:40,954.954 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:22:41,183.183 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:22:41,191.191 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:22:41,423.423 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:22:41,450.450 INFO    ] time= 31/08/2026 19:22:41
[2026-08-31 19:22:41,472.472 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:22:41,475.475 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:22:41,521.521 INFO    ] No existing commands found in stream
[2026-08-31 19:22:46,532.532 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:22:46,535.535 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-08-31 19:22:47,065.065 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 19:22:47,068.068 INFO    ] Checking for system updates...
[2026-08-31 19:22:47,105.105 INFO    ] 200
[2026-08-31 19:22:47,108.108 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:22:47,163.163 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:22:47,166.166 INFO    ] No update needed
[2026-08-31 19:22:47,169.169 INFO    ] Checking for camera pi updates...
[2026-08-31 19:22:47,203.203 INFO    ] 200
[2026-08-31 19:22:47,206.206 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:22:47,251.251 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:22:47,334.334 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:22:47,337.337 INFO    ] No camera update needed
[2026-08-31 19:22:47,340.340 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:22:47,342.342 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:22:47,349.349 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:22:47,354.354 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:22:49,395.395 INFO    ] ================================================
[2026-08-31 19:22:49,411.411 INFO    ] Launching Daemon at Mon Aug 31 19:22:49 IST 2026
[2026-08-31 19:22:49,421.421 INFO    ] ================================================
[2026-08-31 19:22:49,991.991 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:22:49
[2026-08-31 19:22:50,578.578 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:22:50,828.828 INFO    ] Initializing speech engine...
[2026-08-31 19:22:50,842.842 INFO    ] 2026-08-31 19:22:50
[2026-08-31 19:22:51,109.109 INFO    ] 2026-08-31 19:22:51
[2026-08-31 19:22:51,144.144 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:22:51,345.345 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:22:51,401.401 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:22:51,545.545 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:22:51,586.586 INFO    ] time= 31/08/2026 19:22:51
[2026-08-31 19:22:51,658.658 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:22:51,690.690 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:22:51,800.800 INFO    ] No existing commands found in stream
[2026-08-31 19:22:56,832.832 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:22:56,834.834 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-08-31 19:22:58,896.896 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 19:22:58,899.899 INFO    ] Checking for system updates...
[2026-08-31 19:22:58,935.935 INFO    ] 200
[2026-08-31 19:22:58,937.937 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:22:58,991.991 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:22:58,994.994 INFO    ] No update needed
[2026-08-31 19:22:58,996.996 INFO    ] Checking for camera pi updates...
[2026-08-31 19:22:59,030.030 INFO    ] 200
[2026-08-31 19:22:59,032.032 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:22:59,076.076 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:22:59,155.155 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:22:59,158.158 INFO    ] No camera update needed
[2026-08-31 19:22:59,160.160 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:22:59,163.163 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:22:59,168.168 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:22:59,173.173 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:23:01,214.214 INFO    ] ================================================
[2026-08-31 19:23:01,229.229 INFO    ] Launching Daemon at Mon Aug 31 19:23:01 IST 2026
[2026-08-31 19:23:01,240.240 INFO    ] ================================================
[2026-08-31 19:23:02,036.036 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:23:02
[2026-08-31 19:23:02,795.795 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:23:03,132.132 INFO    ] Initializing speech engine...
[2026-08-31 19:23:03,157.157 INFO    ] 2026-08-31 19:23:03
[2026-08-31 19:23:03,425.425 INFO    ] 2026-08-31 19:23:03
[2026-08-31 19:23:03,493.493 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:23:03,717.717 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:23:03,727.727 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:23:03,863.863 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:23:03,919.919 INFO    ] time= 31/08/2026 19:23:03
[2026-08-31 19:23:03,938.938 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:23:03,999.999 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:23:04,147.147 INFO    ] No existing commands found in stream
[2026-08-31 19:23:09,165.165 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:23:09,169.169 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-08-31 19:23:10,030.030 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 19:23:10,033.033 INFO    ] Checking for system updates...
[2026-08-31 19:23:10,075.075 INFO    ] 200
[2026-08-31 19:23:10,078.078 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:23:10,136.136 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:23:10,139.139 INFO    ] No update needed
[2026-08-31 19:23:10,142.142 INFO    ] Checking for camera pi updates...
[2026-08-31 19:23:10,177.177 INFO    ] 200
[2026-08-31 19:23:10,180.180 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:23:10,222.222 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:23:10,283.283 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:23:10,285.285 INFO    ] No camera update needed
[2026-08-31 19:23:10,288.288 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:23:10,290.290 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:23:10,295.295 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:23:10,300.300 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:23:12,345.345 INFO    ] ================================================
[2026-08-31 19:23:12,360.360 INFO    ] Launching Daemon at Mon Aug 31 19:23:12 IST 2026
[2026-08-31 19:23:12,370.370 INFO    ] ================================================
[2026-08-31 19:23:12,938.938 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:23:12
[2026-08-31 19:23:13,523.523 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:23:13,800.800 INFO    ] Initializing speech engine...
[2026-08-31 19:23:13,805.805 INFO    ] 2026-08-31 19:23:13
[2026-08-31 19:23:14,056.056 INFO    ] 2026-08-31 19:23:14
[2026-08-31 19:23:14,091.091 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:23:14,290.290 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:23:14,312.312 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:23:14,493.493 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:23:14,500.500 INFO    ] time= 31/08/2026 19:23:14
[2026-08-31 19:23:14,539.539 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:23:14,593.593 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:23:14,682.682 INFO    ] No existing commands found in stream
[2026-08-31 19:23:19,694.694 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:23:19,696.696 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-08-31 19:23:21,803.803 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 19:23:21,806.806 INFO    ] Checking for system updates...
[2026-08-31 19:23:21,842.842 INFO    ] 200
[2026-08-31 19:23:21,844.844 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:23:21,898.898 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:23:21,900.900 INFO    ] No update needed
[2026-08-31 19:23:21,902.902 INFO    ] Checking for camera pi updates...
[2026-08-31 19:23:21,941.941 INFO    ] 200
[2026-08-31 19:23:21,943.943 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:23:21,985.985 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:23:22,090.090 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:23:22,092.092 INFO    ] No camera update needed
[2026-08-31 19:23:22,094.094 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:23:22,096.096 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:23:22,102.102 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:23:22,107.107 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:23:24,150.150 INFO    ] ================================================
[2026-08-31 19:23:24,165.165 INFO    ] Launching Daemon at Mon Aug 31 19:23:24 IST 2026
[2026-08-31 19:23:24,176.176 INFO    ] ================================================
[2026-08-31 19:23:24,757.757 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:23:24
[2026-08-31 19:23:25,356.356 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:23:25,633.633 INFO    ] Initializing speech engine...
[2026-08-31 19:23:25,639.639 INFO    ] 2026-08-31 19:23:25
[2026-08-31 19:23:25,900.900 INFO    ] 2026-08-31 19:23:25
[2026-08-31 19:23:25,953.953 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:23:26,193.193 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:23:26,214.214 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:23:26,360.360 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:23:26,378.378 INFO    ] time= 31/08/2026 19:23:26
[2026-08-31 19:23:26,399.399 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:23:26,469.469 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:23:26,583.583 INFO    ] No existing commands found in stream
[2026-08-31 19:23:31,596.596 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:23:31,599.599 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-08-31 19:23:35,945.945 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 19:23:35,948.948 INFO    ] Checking for system updates...
[2026-08-31 19:23:35,986.986 INFO    ] 200
[2026-08-31 19:23:35,989.989 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:23:36,046.046 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:23:36,049.049 INFO    ] No update needed
[2026-08-31 19:23:36,052.052 INFO    ] Checking for camera pi updates...
[2026-08-31 19:23:36,088.088 INFO    ] 200
[2026-08-31 19:23:36,091.091 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:23:36,141.141 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:23:36,244.244 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:23:36,247.247 INFO    ] No camera update needed
[2026-08-31 19:23:36,250.250 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:23:36,253.253 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:23:36,259.259 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:23:36,265.265 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:23:38,307.307 INFO    ] ================================================
[2026-08-31 19:23:38,323.323 INFO    ] Launching Daemon at Mon Aug 31 19:23:38 IST 2026
[2026-08-31 19:23:38,335.335 INFO    ] ================================================
[2026-08-31 19:23:38,927.927 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:23:38
[2026-08-31 19:23:39,632.632 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:23:39,959.959 INFO    ] Initializing speech engine...
[2026-08-31 19:23:39,971.971 INFO    ] 2026-08-31 19:23:39
[2026-08-31 19:23:40,276.276 INFO    ] 2026-08-31 19:23:40
[2026-08-31 19:23:40,389.389 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:23:40,614.614 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:23:40,623.623 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:23:40,819.819 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:23:40,833.833 INFO    ] time= 31/08/2026 19:23:40
[2026-08-31 19:23:40,856.856 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:23:40,886.886 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:23:41,002.002 INFO    ] No existing commands found in stream
[2026-08-31 19:23:46,033.033 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:23:46,036.036 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-08-31 19:23:48,506.506 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 19:23:48,509.509 INFO    ] Checking for system updates...
[2026-08-31 19:23:48,547.547 INFO    ] 200
[2026-08-31 19:23:48,549.549 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:23:48,610.610 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:23:48,612.612 INFO    ] No update needed
[2026-08-31 19:23:48,615.615 INFO    ] Checking for camera pi updates...
[2026-08-31 19:23:48,659.659 INFO    ] 200
[2026-08-31 19:23:48,662.662 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:23:48,713.713 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:23:48,790.790 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:23:48,793.793 INFO    ] No camera update needed
[2026-08-31 19:23:48,796.796 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:23:48,799.799 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:23:48,805.805 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:23:48,811.811 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:23:50,852.852 INFO    ] ================================================
[2026-08-31 19:23:50,867.867 INFO    ] Launching Daemon at Mon Aug 31 19:23:50 IST 2026
[2026-08-31 19:23:50,878.878 INFO    ] ================================================
[2026-08-31 19:23:51,459.459 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:23:51
[2026-08-31 19:23:52,055.055 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:23:52,323.323 INFO    ] Initializing speech engine...
[2026-08-31 19:23:52,332.332 INFO    ] 2026-08-31 19:23:52
[2026-08-31 19:23:52,578.578 INFO    ] 2026-08-31 19:23:52
[2026-08-31 19:23:52,613.613 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:23:52,806.806 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:23:52,849.849 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:23:53,004.004 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:23:53,051.051 INFO    ] time= 31/08/2026 19:23:53
[2026-08-31 19:23:53,105.105 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:23:53,137.137 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:23:53,270.270 INFO    ] No existing commands found in stream
[2026-08-31 19:23:58,294.294 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:23:58,297.297 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-08-31 19:24:01,004.004 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 19:24:01,006.006 INFO    ] Checking for system updates...
[2026-08-31 19:24:01,041.041 INFO    ] 200
[2026-08-31 19:24:01,044.044 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:24:01,101.101 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:24:01,103.103 INFO    ] No update needed
[2026-08-31 19:24:01,105.105 INFO    ] Checking for camera pi updates...
[2026-08-31 19:24:01,139.139 INFO    ] 200
[2026-08-31 19:24:01,142.142 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:24:01,182.182 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:24:01,435.435 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:24:01,449.449 INFO    ] No camera update needed
[2026-08-31 19:24:01,454.454 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:24:01,465.465 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:24:01,476.476 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:24:01,486.486 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:24:03,530.530 INFO    ] ================================================
[2026-08-31 19:24:03,545.545 INFO    ] Launching Daemon at Mon Aug 31 19:24:03 IST 2026
[2026-08-31 19:24:03,556.556 INFO    ] ================================================
[2026-08-31 19:24:04,207.207 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:24:04
[2026-08-31 19:24:04,881.881 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:24:05,185.185 INFO    ] Initializing speech engine...
[2026-08-31 19:24:05,199.199 INFO    ] 2026-08-31 19:24:05
[2026-08-31 19:24:05,469.469 INFO    ] 2026-08-31 19:24:05
[2026-08-31 19:24:05,533.533 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:24:05,724.724 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:24:05,769.769 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:24:05,945.945 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:24:05,953.953 INFO    ] time= 31/08/2026 19:24:05
[2026-08-31 19:24:05,996.996 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:24:06,060.060 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:24:06,128.128 INFO    ] No existing commands found in stream
[2026-08-31 19:24:11,141.141 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:24:11,144.144 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-08-31 19:24:14,934.934 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 19:24:14,936.936 INFO    ] Checking for system updates...
[2026-08-31 19:24:14,972.972 INFO    ] 200
[2026-08-31 19:24:14,975.975 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:24:15,027.027 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:24:15,029.029 INFO    ] No update needed
[2026-08-31 19:24:15,032.032 INFO    ] Checking for camera pi updates...
[2026-08-31 19:24:15,069.069 INFO    ] 200
[2026-08-31 19:24:15,071.071 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:24:15,111.111 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:24:15,190.190 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:24:15,193.193 INFO    ] No camera update needed
[2026-08-31 19:24:15,195.195 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:24:15,197.197 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:24:15,203.203 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:24:15,208.208 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:24:17,248.248 INFO    ] ================================================
[2026-08-31 19:24:17,263.263 INFO    ] Launching Daemon at Mon Aug 31 19:24:17 IST 2026
[2026-08-31 19:24:17,274.274 INFO    ] ================================================
[2026-08-31 19:24:17,849.849 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:24:17
[2026-08-31 19:24:18,432.432 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:24:18,703.703 INFO    ] Initializing speech engine...
[2026-08-31 19:24:18,712.712 INFO    ] 2026-08-31 19:24:18
[2026-08-31 19:24:18,961.961 INFO    ] 2026-08-31 19:24:18
[2026-08-31 19:24:18,997.997 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:24:19,198.198 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:24:19,257.257 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:24:19,399.399 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:24:19,459.459 INFO    ] time= 31/08/2026 19:24:19
[2026-08-31 19:24:19,513.513 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:24:19,531.531 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:24:19,679.679 INFO    ] No existing commands found in stream
[2026-08-31 19:24:24,693.693 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:24:24,696.696 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-08-31 19:24:27,880.880 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 19:24:27,882.882 INFO    ] Checking for system updates...
[2026-08-31 19:24:27,919.919 INFO    ] 200
[2026-08-31 19:24:27,922.922 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:24:27,982.982 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:24:27,985.985 INFO    ] No update needed
[2026-08-31 19:24:27,988.988 INFO    ] Checking for camera pi updates...
[2026-08-31 19:24:28,023.023 INFO    ] 200
[2026-08-31 19:24:28,026.026 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:24:28,072.072 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:24:28,253.253 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:24:28,256.256 INFO    ] No camera update needed
[2026-08-31 19:24:28,258.258 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:24:28,261.261 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:24:28,267.267 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:24:28,273.273 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:24:30,313.313 INFO    ] ================================================
[2026-08-31 19:24:30,328.328 INFO    ] Launching Daemon at Mon Aug 31 19:24:30 IST 2026
[2026-08-31 19:24:30,339.339 INFO    ] ================================================
[2026-08-31 19:24:30,991.991 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:24:30
[2026-08-31 19:24:31,667.667 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:24:31,968.968 INFO    ] Initializing speech engine...
[2026-08-31 19:24:31,979.979 INFO    ] 2026-08-31 19:24:31
[2026-08-31 19:24:32,296.296 INFO    ] 2026-08-31 19:24:32
[2026-08-31 19:24:32,373.373 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:24:32,540.540 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:24:32,547.547 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:24:32,771.771 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:24:32,775.775 INFO    ] time= 31/08/2026 19:24:32
[2026-08-31 19:24:32,803.803 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:24:32,829.829 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:24:32,887.887 INFO    ] No existing commands found in stream
[2026-08-31 19:24:37,899.899 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:24:37,902.902 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-08-31 19:24:41,749.749 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 19:24:41,752.752 INFO    ] Checking for system updates...
[2026-08-31 19:24:41,789.789 INFO    ] 200
[2026-08-31 19:24:41,792.792 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:24:41,852.852 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:24:41,854.854 INFO    ] No update needed
[2026-08-31 19:24:41,857.857 INFO    ] Checking for camera pi updates...
[2026-08-31 19:24:41,890.890 INFO    ] 200
[2026-08-31 19:24:41,893.893 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:24:41,933.933 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:24:42,014.014 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:24:42,017.017 INFO    ] No camera update needed
[2026-08-31 19:24:42,019.019 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:24:42,022.022 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:24:42,027.027 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:24:42,033.033 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:24:44,072.072 INFO    ] ================================================
[2026-08-31 19:24:44,086.086 INFO    ] Launching Daemon at Mon Aug 31 19:24:44 IST 2026
[2026-08-31 19:24:44,097.097 INFO    ] ================================================
[2026-08-31 19:24:44,683.683 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:24:44
[2026-08-31 19:24:45,286.286 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:24:45,564.564 INFO    ] Initializing speech engine...
[2026-08-31 19:24:45,573.573 INFO    ] 2026-08-31 19:24:45
[2026-08-31 19:24:45,830.830 INFO    ] 2026-08-31 19:24:45
[2026-08-31 19:24:45,864.864 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:24:46,110.110 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:24:46,120.120 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:24:46,255.255 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:24:46,305.305 INFO    ] time= 31/08/2026 19:24:46
[2026-08-31 19:24:46,364.364 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:24:46,389.389 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:24:46,446.446 INFO    ] No existing commands found in stream
[2026-08-31 19:24:51,471.471 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:24:51,474.474 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-08-31 19:24:52,539.539 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 19:24:52,541.541 INFO    ] Checking for system updates...
[2026-08-31 19:24:52,583.583 INFO    ] 200
[2026-08-31 19:24:52,585.585 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:24:52,646.646 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:24:52,649.649 INFO    ] No update needed
[2026-08-31 19:24:52,651.651 INFO    ] Checking for camera pi updates...
[2026-08-31 19:24:52,686.686 INFO    ] 200
[2026-08-31 19:24:52,689.689 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:24:52,735.735 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:24:52,811.811 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:24:52,814.814 INFO    ] No camera update needed
[2026-08-31 19:24:52,816.816 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:24:52,819.819 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:24:52,824.824 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:24:52,830.830 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:24:54,872.872 INFO    ] ================================================
[2026-08-31 19:24:54,887.887 INFO    ] Launching Daemon at Mon Aug 31 19:24:54 IST 2026
[2026-08-31 19:24:54,897.897 INFO    ] ================================================
[2026-08-31 19:24:55,483.483 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:24:55
[2026-08-31 19:24:56,085.085 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:24:56,362.362 INFO    ] Initializing speech engine...
[2026-08-31 19:24:56,368.368 INFO    ] 2026-08-31 19:24:56
[2026-08-31 19:24:56,616.616 INFO    ] 2026-08-31 19:24:56
[2026-08-31 19:24:56,658.658 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:24:56,902.902 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:24:56,911.911 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:24:57,130.130 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:24:57,173.173 INFO    ] time= 31/08/2026 19:24:57
[2026-08-31 19:24:57,191.191 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:24:57,207.207 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:24:57,363.363 INFO    ] No existing commands found in stream
[2026-08-31 19:25:02,394.394 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:25:02,398.398 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-08-31 19:25:05,367.367 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 19:25:05,370.370 INFO    ] Checking for system updates...
[2026-08-31 19:25:05,406.406 INFO    ] 200
[2026-08-31 19:25:05,413.413 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:25:05,471.471 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:25:05,474.474 INFO    ] No update needed
[2026-08-31 19:25:05,476.476 INFO    ] Checking for camera pi updates...
[2026-08-31 19:25:05,513.513 INFO    ] 200
[2026-08-31 19:25:05,515.515 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:25:05,559.559 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:25:05,639.639 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:25:05,641.641 INFO    ] No camera update needed
[2026-08-31 19:25:05,643.643 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:25:05,645.645 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:25:05,651.651 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:25:05,656.656 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:25:07,697.697 INFO    ] ================================================
[2026-08-31 19:25:07,712.712 INFO    ] Launching Daemon at Mon Aug 31 19:25:07 IST 2026
[2026-08-31 19:25:07,722.722 INFO    ] ================================================
[2026-08-31 19:25:08,297.297 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:25:08
[2026-08-31 19:25:08,884.884 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:25:09,148.148 INFO    ] Initializing speech engine...
[2026-08-31 19:25:09,168.168 INFO    ] 2026-08-31 19:25:09
[2026-08-31 19:25:09,426.426 INFO    ] 2026-08-31 19:25:09
[2026-08-31 19:25:09,487.487 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:25:09,719.719 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:25:09,724.724 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:25:09,860.860 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:25:09,894.894 INFO    ] time= 31/08/2026 19:25:09
[2026-08-31 19:25:09,948.948 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:25:09,994.994 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:25:10,122.122 INFO    ] No existing commands found in stream
[2026-08-31 19:25:15,152.152 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:25:15,155.155 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-08-31 19:25:16,253.253 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 19:25:16,256.256 INFO    ] Checking for system updates...
[2026-08-31 19:25:16,292.292 INFO    ] 200
[2026-08-31 19:25:16,294.294 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:25:16,356.356 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:25:16,359.359 INFO    ] No update needed
[2026-08-31 19:25:16,361.361 INFO    ] Checking for camera pi updates...
[2026-08-31 19:25:16,398.398 INFO    ] 200
[2026-08-31 19:25:16,401.401 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:25:16,445.445 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:25:16,524.524 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:25:16,526.526 INFO    ] No camera update needed
[2026-08-31 19:25:16,529.529 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:25:16,531.531 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:25:16,536.536 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:25:16,541.541 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:25:18,580.580 INFO    ] ================================================
[2026-08-31 19:25:18,595.595 INFO    ] Launching Daemon at Mon Aug 31 19:25:18 IST 2026
[2026-08-31 19:25:18,606.606 INFO    ] ================================================
[2026-08-31 19:25:19,172.172 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:25:19
[2026-08-31 19:25:19,756.756 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:25:20,027.027 INFO    ] Initializing speech engine...
[2026-08-31 19:25:20,033.033 INFO    ] 2026-08-31 19:25:20
[2026-08-31 19:25:20,292.292 INFO    ] 2026-08-31 19:25:20
[2026-08-31 19:25:20,322.322 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:25:20,542.542 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:25:20,568.568 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:25:20,705.705 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:25:20,752.752 INFO    ] time= 31/08/2026 19:25:20
[2026-08-31 19:25:20,807.807 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:25:20,837.837 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:25:20,980.980 INFO    ] No existing commands found in stream
[2026-08-31 19:25:25,996.996 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:25:25,998.998 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-08-31 19:25:29,603.603 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 19:25:29,606.606 INFO    ] Checking for system updates...
[2026-08-31 19:25:29,645.645 INFO    ] 200
[2026-08-31 19:25:29,648.648 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:25:29,701.701 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:25:29,703.703 INFO    ] No update needed
[2026-08-31 19:25:29,705.705 INFO    ] Checking for camera pi updates...
[2026-08-31 19:25:29,739.739 INFO    ] 200
[2026-08-31 19:25:29,741.741 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:25:29,782.782 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:25:29,843.843 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:25:29,845.845 INFO    ] No camera update needed
[2026-08-31 19:25:29,848.848 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:25:29,850.850 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:25:29,855.855 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:25:29,860.860 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:25:31,902.902 INFO    ] ================================================
[2026-08-31 19:25:31,918.918 INFO    ] Launching Daemon at Mon Aug 31 19:25:31 IST 2026
[2026-08-31 19:25:31,930.930 INFO    ] ================================================
[2026-08-31 19:25:32,532.532 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:25:32
[2026-08-31 19:25:33,140.140 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:25:33,400.400 INFO    ] Initializing speech engine...
[2026-08-31 19:25:33,407.407 INFO    ] 2026-08-31 19:25:33
[2026-08-31 19:25:33,700.700 INFO    ] 2026-08-31 19:25:33
[2026-08-31 19:25:33,739.739 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:25:33,960.960 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:25:34,027.027 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:25:34,182.182 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:25:34,219.219 INFO    ] time= 31/08/2026 19:25:34
[2026-08-31 19:25:34,269.269 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:25:34,323.323 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:25:34,470.470 INFO    ] No existing commands found in stream
[2026-08-31 19:25:39,496.496 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:25:39,499.499 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-08-31 19:25:42,535.535 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 19:25:42,538.538 INFO    ] Checking for system updates...
[2026-08-31 19:25:42,574.574 INFO    ] 200
[2026-08-31 19:25:42,577.577 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:25:42,630.630 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:25:42,632.632 INFO    ] No update needed
[2026-08-31 19:25:42,634.634 INFO    ] Checking for camera pi updates...
[2026-08-31 19:25:42,676.676 INFO    ] 200
[2026-08-31 19:25:42,679.679 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:25:42,725.725 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:25:42,804.804 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:25:42,806.806 INFO    ] No camera update needed
[2026-08-31 19:25:42,809.809 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:25:42,811.811 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:25:42,816.816 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:25:42,821.821 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:25:44,861.861 INFO    ] ================================================
[2026-08-31 19:25:44,876.876 INFO    ] Launching Daemon at Mon Aug 31 19:25:44 IST 2026
[2026-08-31 19:25:44,887.887 INFO    ] ================================================
[2026-08-31 19:25:45,458.458 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:25:45
[2026-08-31 19:25:46,049.049 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:25:46,302.302 INFO    ] Initializing speech engine...
[2026-08-31 19:25:46,314.314 INFO    ] 2026-08-31 19:25:46
[2026-08-31 19:25:46,604.604 INFO    ] 2026-08-31 19:25:46
[2026-08-31 19:25:46,631.631 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:25:46,837.837 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:25:46,850.850 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:25:47,009.009 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:25:47,018.018 INFO    ] time= 31/08/2026 19:25:47
[2026-08-31 19:25:47,026.026 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:25:47,054.054 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:25:47,176.176 INFO    ] No existing commands found in stream
[2026-08-31 19:25:52,201.201 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:25:52,204.204 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-08-31 19:25:53,221.221 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 19:25:53,224.224 INFO    ] Checking for system updates...
[2026-08-31 19:25:53,259.259 INFO    ] 200
[2026-08-31 19:25:53,261.261 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:25:53,313.313 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:25:53,315.315 INFO    ] No update needed
[2026-08-31 19:25:53,318.318 INFO    ] Checking for camera pi updates...
[2026-08-31 19:25:53,354.354 INFO    ] 200
[2026-08-31 19:25:53,357.357 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:25:53,401.401 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:25:53,470.470 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:25:53,472.472 INFO    ] No camera update needed
[2026-08-31 19:25:53,474.474 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:25:53,476.476 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:25:53,482.482 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:25:53,487.487 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:25:55,526.526 INFO    ] ================================================
[2026-08-31 19:25:55,541.541 INFO    ] Launching Daemon at Mon Aug 31 19:25:55 IST 2026
[2026-08-31 19:25:55,552.552 INFO    ] ================================================
[2026-08-31 19:25:56,190.190 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:25:56
[2026-08-31 19:25:56,849.849 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:25:57,149.149 INFO    ] Initializing speech engine...
[2026-08-31 19:25:57,158.158 INFO    ] 2026-08-31 19:25:57
[2026-08-31 19:25:57,433.433 INFO    ] 2026-08-31 19:25:57
[2026-08-31 19:25:57,492.492 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:25:57,721.721 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:25:57,731.731 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:25:57,927.927 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:25:57,989.989 INFO    ] time= 31/08/2026 19:25:57
[2026-08-31 19:25:57,996.996 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:25:58,015.015 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:25:58,130.130 INFO    ] No existing commands found in stream
[2026-08-31 19:26:03,151.151 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:26:03,154.154 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-08-31 19:26:04,122.122 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 19:26:04,125.125 INFO    ] Checking for system updates...
[2026-08-31 19:26:04,164.164 INFO    ] 200
[2026-08-31 19:26:04,166.166 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:26:04,220.220 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:26:04,223.223 INFO    ] No update needed
[2026-08-31 19:26:04,226.226 INFO    ] Checking for camera pi updates...
[2026-08-31 19:26:04,261.261 INFO    ] 200
[2026-08-31 19:26:04,264.264 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:26:04,304.304 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:26:04,388.388 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:26:04,391.391 INFO    ] No camera update needed
[2026-08-31 19:26:04,393.393 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:26:04,396.396 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:26:04,402.402 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:26:04,408.408 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:26:06,450.450 INFO    ] ================================================
[2026-08-31 19:26:06,465.465 INFO    ] Launching Daemon at Mon Aug 31 19:26:06 IST 2026
[2026-08-31 19:26:06,477.477 INFO    ] ================================================
[2026-08-31 19:26:07,119.119 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:26:07
[2026-08-31 19:26:07,785.785 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:26:08,082.082 INFO    ] Initializing speech engine...
[2026-08-31 19:26:08,091.091 INFO    ] 2026-08-31 19:26:08
[2026-08-31 19:26:08,375.375 INFO    ] 2026-08-31 19:26:08
[2026-08-31 19:26:08,418.418 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:26:08,699.699 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:26:08,708.708 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:26:08,894.894 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:26:08,911.911 INFO    ] time= 31/08/2026 19:26:08
[2026-08-31 19:26:08,932.932 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:26:08,958.958 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:26:09,070.070 INFO    ] No existing commands found in stream
[2026-08-31 19:26:14,100.100 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:26:14,103.103 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-08-31 19:26:16,367.367 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 19:26:16,370.370 INFO    ] Checking for system updates...
[2026-08-31 19:26:16,410.410 INFO    ] 200
[2026-08-31 19:26:16,413.413 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:26:16,471.471 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:26:16,473.473 INFO    ] No update needed
[2026-08-31 19:26:16,476.476 INFO    ] Checking for camera pi updates...
[2026-08-31 19:26:16,509.509 INFO    ] 200
[2026-08-31 19:26:16,511.511 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:26:16,551.551 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:26:16,631.631 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:26:16,633.633 INFO    ] No camera update needed
[2026-08-31 19:26:16,635.635 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:26:16,638.638 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:26:16,643.643 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:26:16,648.648 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:26:18,687.687 INFO    ] ================================================
[2026-08-31 19:26:18,703.703 INFO    ] Launching Daemon at Mon Aug 31 19:26:18 IST 2026
[2026-08-31 19:26:18,715.715 INFO    ] ================================================
[2026-08-31 19:26:19,350.350 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:26:19
[2026-08-31 19:26:19,970.970 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:26:20,223.223 INFO    ] Initializing speech engine...
[2026-08-31 19:26:20,232.232 INFO    ] 2026-08-31 19:26:20
[2026-08-31 19:26:20,521.521 INFO    ] 2026-08-31 19:26:20
[2026-08-31 19:26:20,559.559 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:26:20,752.752 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:26:20,766.766 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:26:20,889.889 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:26:20,909.909 INFO    ] time= 31/08/2026 19:26:20
[2026-08-31 19:26:20,931.931 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:26:20,939.939 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:26:21,015.015 INFO    ] No existing commands found in stream
[2026-08-31 19:26:26,028.028 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:26:26,031.031 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-08-31 19:26:29,961.961 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 19:26:29,964.964 INFO    ] Checking for system updates...
[2026-08-31 19:26:30,002.002 INFO    ] 200
[2026-08-31 19:26:30,005.005 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:26:30,063.063 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:26:30,065.065 INFO    ] No update needed
[2026-08-31 19:26:30,068.068 INFO    ] Checking for camera pi updates...
[2026-08-31 19:26:30,101.101 INFO    ] 200
[2026-08-31 19:26:30,103.103 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:26:30,148.148 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:26:30,337.337 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:26:30,340.340 INFO    ] No camera update needed
[2026-08-31 19:26:30,342.342 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:26:30,344.344 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:26:30,350.350 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:26:30,355.355 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:26:32,397.397 INFO    ] ================================================
[2026-08-31 19:26:32,414.414 INFO    ] Launching Daemon at Mon Aug 31 19:26:32 IST 2026
[2026-08-31 19:26:32,432.432 INFO    ] ================================================
[2026-08-31 19:26:33,026.026 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:26:33
[2026-08-31 19:26:33,611.611 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:26:33,864.864 INFO    ] Initializing speech engine...
[2026-08-31 19:26:33,873.873 INFO    ] 2026-08-31 19:26:33
[2026-08-31 19:26:34,165.165 INFO    ] 2026-08-31 19:26:34
[2026-08-31 19:26:34,201.201 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:26:34,394.394 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:26:34,410.410 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:26:34,569.569 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:26:34,577.577 INFO    ] time= 31/08/2026 19:26:34
[2026-08-31 19:26:34,582.582 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:26:34,588.588 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:26:34,678.678 INFO    ] No existing commands found in stream
[2026-08-31 19:26:39,713.713 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:26:39,716.716 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-08-31 19:26:43,201.201 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 19:26:43,204.204 INFO    ] Checking for system updates...
[2026-08-31 19:26:43,240.240 INFO    ] 200
[2026-08-31 19:26:43,242.242 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:26:43,295.295 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:26:43,298.298 INFO    ] No update needed
[2026-08-31 19:26:43,300.300 INFO    ] Checking for camera pi updates...
[2026-08-31 19:26:43,333.333 INFO    ] 200
[2026-08-31 19:26:43,335.335 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:26:43,376.376 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:26:43,456.456 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:26:43,458.458 INFO    ] No camera update needed
[2026-08-31 19:26:43,461.461 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:26:43,463.463 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:26:43,468.468 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:26:43,473.473 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:26:45,514.514 INFO    ] ================================================
[2026-08-31 19:26:45,529.529 INFO    ] Launching Daemon at Mon Aug 31 19:26:45 IST 2026
[2026-08-31 19:26:45,540.540 INFO    ] ================================================
[2026-08-31 19:26:46,115.115 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:26:46
[2026-08-31 19:26:46,703.703 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:26:46,957.957 INFO    ] Initializing speech engine...
[2026-08-31 19:26:46,966.966 INFO    ] 2026-08-31 19:26:46
[2026-08-31 19:26:47,258.258 INFO    ] 2026-08-31 19:26:47
[2026-08-31 19:26:47,297.297 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:26:47,489.489 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:26:47,505.505 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:26:47,647.647 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:26:47,746.746 INFO    ] time= 31/08/2026 19:26:47
[2026-08-31 19:26:47,753.753 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:26:47,802.802 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:26:47,899.899 INFO    ] No existing commands found in stream
[2026-08-31 19:26:52,909.909 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:26:52,912.912 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-08-31 19:26:55,827.827 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 19:26:55,830.830 INFO    ] Checking for system updates...
[2026-08-31 19:26:55,866.866 INFO    ] 200
[2026-08-31 19:26:55,869.869 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:26:55,929.929 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:26:55,932.932 INFO    ] No update needed
[2026-08-31 19:26:55,935.935 INFO    ] Checking for camera pi updates...
[2026-08-31 19:26:55,972.972 INFO    ] 200
[2026-08-31 19:26:55,975.975 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:26:56,016.016 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:26:56,103.103 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:26:56,106.106 INFO    ] No camera update needed
[2026-08-31 19:26:56,109.109 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:26:56,111.111 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:26:56,118.118 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:26:56,123.123 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:26:58,163.163 INFO    ] ================================================
[2026-08-31 19:26:58,180.180 INFO    ] Launching Daemon at Mon Aug 31 19:26:58 IST 2026
[2026-08-31 19:26:58,191.191 INFO    ] ================================================
[2026-08-31 19:26:58,836.836 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:26:58
[2026-08-31 19:26:59,496.496 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:26:59,798.798 INFO    ] Initializing speech engine...
[2026-08-31 19:26:59,813.813 INFO    ] 2026-08-31 19:26:59
[2026-08-31 19:27:00,084.084 INFO    ] 2026-08-31 19:27:00
[2026-08-31 19:27:00,136.136 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:27:00,425.425 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:27:00,434.434 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:27:00,634.634 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:27:00,641.641 INFO    ] time= 31/08/2026 19:27:00
[2026-08-31 19:27:00,663.663 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:27:00,692.692 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:27:00,798.798 INFO    ] No existing commands found in stream
[2026-08-31 19:27:05,824.824 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:27:05,828.828 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-08-31 19:27:08,093.093 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 19:27:08,096.096 INFO    ] Checking for system updates...
[2026-08-31 19:27:08,137.137 INFO    ] 200
[2026-08-31 19:27:08,140.140 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:27:08,194.194 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:27:08,196.196 INFO    ] No update needed
[2026-08-31 19:27:08,199.199 INFO    ] Checking for camera pi updates...
[2026-08-31 19:27:08,237.237 INFO    ] 200
[2026-08-31 19:27:08,240.240 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:27:08,281.281 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:27:08,366.366 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:27:08,369.369 INFO    ] No camera update needed
[2026-08-31 19:27:08,371.371 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:27:08,374.374 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:27:08,380.380 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:27:08,386.386 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:27:10,427.427 INFO    ] ================================================
[2026-08-31 19:27:10,443.443 INFO    ] Launching Daemon at Mon Aug 31 19:27:10 IST 2026
[2026-08-31 19:27:10,454.454 INFO    ] ================================================
[2026-08-31 19:27:11,093.093 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:27:11
[2026-08-31 19:27:11,751.751 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:27:12,048.048 INFO    ] Initializing speech engine...
[2026-08-31 19:27:12,056.056 INFO    ] 2026-08-31 19:27:12
[2026-08-31 19:27:12,332.332 INFO    ] 2026-08-31 19:27:12
[2026-08-31 19:27:12,388.388 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:27:12,614.614 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:27:12,618.618 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:27:12,753.753 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:27:12,798.798 INFO    ] time= 31/08/2026 19:27:12
[2026-08-31 19:27:12,859.859 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:27:12,889.889 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:27:13,026.026 INFO    ] No existing commands found in stream
[2026-08-31 19:27:18,047.047 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:27:18,050.050 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-08-31 19:27:21,971.971 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 19:27:21,974.974 INFO    ] Checking for system updates...
[2026-08-31 19:27:22,011.011 INFO    ] 200
[2026-08-31 19:27:22,014.014 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:27:22,066.066 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:27:22,069.069 INFO    ] No update needed
[2026-08-31 19:27:22,072.072 INFO    ] Checking for camera pi updates...
[2026-08-31 19:27:22,107.107 INFO    ] 200
[2026-08-31 19:27:22,110.110 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:27:22,150.150 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:27:22,230.230 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:27:22,233.233 INFO    ] No camera update needed
[2026-08-31 19:27:22,236.236 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:27:22,238.238 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:27:22,244.244 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:27:22,250.250 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:27:24,291.291 INFO    ] ================================================
[2026-08-31 19:27:24,307.307 INFO    ] Launching Daemon at Mon Aug 31 19:27:24 IST 2026
[2026-08-31 19:27:24,319.319 INFO    ] ================================================
[2026-08-31 19:27:24,967.967 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:27:24
[2026-08-31 19:27:25,634.634 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:27:25,934.934 INFO    ] Initializing speech engine...
[2026-08-31 19:27:25,948.948 INFO    ] 2026-08-31 19:27:25
[2026-08-31 19:27:26,219.219 INFO    ] 2026-08-31 19:27:26
[2026-08-31 19:27:26,277.277 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:27:26,503.503 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:27:26,515.515 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:27:26,735.735 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:27:26,769.769 INFO    ] time= 31/08/2026 19:27:26
[2026-08-31 19:27:26,791.791 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:27:26,820.820 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:27:26,981.981 INFO    ] No existing commands found in stream
[2026-08-31 19:27:32,018.018 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:27:32,021.021 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-08-31 19:27:33,703.703 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 19:27:33,706.706 INFO    ] Checking for system updates...
[2026-08-31 19:27:33,743.743 INFO    ] 200
[2026-08-31 19:27:33,746.746 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:27:33,805.805 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:27:33,808.808 INFO    ] No update needed
[2026-08-31 19:27:33,811.811 INFO    ] Checking for camera pi updates...
[2026-08-31 19:27:33,849.849 INFO    ] 200
[2026-08-31 19:27:33,852.852 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:27:33,894.894 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:27:33,982.982 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:27:33,985.985 INFO    ] No camera update needed
[2026-08-31 19:27:33,988.988 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:27:33,990.990 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:27:33,996.996 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:27:34,002.002 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:27:36,046.046 INFO    ] ================================================
[2026-08-31 19:27:36,061.061 INFO    ] Launching Daemon at Mon Aug 31 19:27:36 IST 2026
[2026-08-31 19:27:36,072.072 INFO    ] ================================================
[2026-08-31 19:27:36,724.724 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:27:36
[2026-08-31 19:27:37,396.396 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:27:37,703.703 INFO    ] Initializing speech engine...
[2026-08-31 19:27:37,715.715 INFO    ] 2026-08-31 19:27:37
[2026-08-31 19:27:38,030.030 INFO    ] 2026-08-31 19:27:37
[2026-08-31 19:27:38,120.120 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:27:38,337.337 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:27:38,345.345 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:27:38,532.532 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:27:38,553.553 INFO    ] time= 31/08/2026 19:27:38
[2026-08-31 19:27:38,573.573 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:27:38,591.591 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:27:38,723.723 INFO    ] No existing commands found in stream
[2026-08-31 19:27:43,753.753 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:27:43,757.757 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-08-31 19:27:45,093.093 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 19:27:45,096.096 INFO    ] Checking for system updates...
[2026-08-31 19:27:45,137.137 INFO    ] 200
[2026-08-31 19:27:45,140.140 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:27:45,200.200 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:27:45,203.203 INFO    ] No update needed
[2026-08-31 19:27:45,206.206 INFO    ] Checking for camera pi updates...
[2026-08-31 19:27:45,241.241 INFO    ] 200
[2026-08-31 19:27:45,243.243 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:27:45,285.285 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:27:45,378.378 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:27:45,381.381 INFO    ] No camera update needed
[2026-08-31 19:27:45,384.384 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:27:45,387.387 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:27:45,394.394 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:27:45,400.400 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:27:47,443.443 INFO    ] ================================================
[2026-08-31 19:27:47,458.458 INFO    ] Launching Daemon at Mon Aug 31 19:27:47 IST 2026
[2026-08-31 19:27:47,468.468 INFO    ] ================================================
[2026-08-31 19:27:48,051.051 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:27:48
[2026-08-31 19:27:48,653.653 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:27:48,919.919 INFO    ] Initializing speech engine...
[2026-08-31 19:27:48,944.944 INFO    ] 2026-08-31 19:27:48
[2026-08-31 19:27:49,220.220 INFO    ] 2026-08-31 19:27:49
[2026-08-31 19:27:49,260.260 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:27:49,488.488 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:27:49,554.554 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:27:49,713.713 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:27:49,756.756 INFO    ] time= 31/08/2026 19:27:49
[2026-08-31 19:27:49,816.816 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:27:49,865.865 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:27:49,998.998 INFO    ] No existing commands found in stream
[2026-08-31 19:27:55,016.016 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:27:55,019.019 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-08-31 19:27:59,001.001 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 19:27:59,004.004 INFO    ] Checking for system updates...
[2026-08-31 19:27:59,041.041 INFO    ] 200
[2026-08-31 19:27:59,044.044 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:27:59,098.098 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:27:59,101.101 INFO    ] No update needed
[2026-08-31 19:27:59,103.103 INFO    ] Checking for camera pi updates...
[2026-08-31 19:27:59,138.138 INFO    ] 200
[2026-08-31 19:27:59,141.141 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:27:59,183.183 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:27:59,263.263 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:27:59,266.266 INFO    ] No camera update needed
[2026-08-31 19:27:59,269.269 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:27:59,271.271 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:27:59,277.277 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:27:59,283.283 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:28:01,325.325 INFO    ] ================================================
[2026-08-31 19:28:01,339.339 INFO    ] Launching Daemon at Mon Aug 31 19:28:01 IST 2026
[2026-08-31 19:28:01,350.350 INFO    ] ================================================
[2026-08-31 19:28:02,137.137 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:28:02
[2026-08-31 19:28:02,793.793 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:28:03,097.097 INFO    ] Initializing speech engine...
[2026-08-31 19:28:03,103.103 INFO    ] 2026-08-31 19:28:03
[2026-08-31 19:28:03,394.394 INFO    ] 2026-08-31 19:28:03
[2026-08-31 19:28:03,426.426 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:28:03,622.622 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:28:03,628.628 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:28:03,803.803 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:28:03,808.808 INFO    ] time= 31/08/2026 19:28:03
[2026-08-31 19:28:03,814.814 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:28:03,847.847 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:28:04,012.012 INFO    ] No existing commands found in stream
[2026-08-31 19:28:09,036.036 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:28:09,039.039 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-08-31 19:28:10,299.299 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 19:28:10,302.302 INFO    ] Checking for system updates...
[2026-08-31 19:28:10,337.337 INFO    ] 200
[2026-08-31 19:28:10,340.340 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:28:10,395.395 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:28:10,398.398 INFO    ] No update needed
[2026-08-31 19:28:10,400.400 INFO    ] Checking for camera pi updates...
[2026-08-31 19:28:10,434.434 INFO    ] 200
[2026-08-31 19:28:10,436.436 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:28:10,481.481 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:28:10,562.562 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:28:10,565.565 INFO    ] No camera update needed
[2026-08-31 19:28:10,567.567 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:28:10,569.569 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:28:10,575.575 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:28:10,579.579 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:28:12,619.619 INFO    ] ================================================
[2026-08-31 19:28:12,634.634 INFO    ] Launching Daemon at Mon Aug 31 19:28:12 IST 2026
[2026-08-31 19:28:12,645.645 INFO    ] ================================================
[2026-08-31 19:28:13,211.211 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:28:13
[2026-08-31 19:28:13,795.795 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:28:14,066.066 INFO    ] Initializing speech engine...
[2026-08-31 19:28:14,072.072 INFO    ] 2026-08-31 19:28:14
[2026-08-31 19:28:14,332.332 INFO    ] 2026-08-31 19:28:14
[2026-08-31 19:28:14,387.387 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:28:14,636.636 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:28:14,641.641 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:28:14,850.850 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:28:14,878.878 INFO    ] time= 31/08/2026 19:28:14
[2026-08-31 19:28:14,893.893 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:28:14,902.902 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:28:15,010.010 INFO    ] No existing commands found in stream
[2026-08-31 19:28:20,037.037 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:28:20,040.040 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-08-31 19:28:20,805.805 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 19:28:20,807.807 INFO    ] Checking for system updates...
[2026-08-31 19:28:20,843.843 INFO    ] 200
[2026-08-31 19:28:20,845.845 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:28:20,897.897 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:28:20,900.900 INFO    ] No update needed
[2026-08-31 19:28:20,902.902 INFO    ] Checking for camera pi updates...
[2026-08-31 19:28:20,936.936 INFO    ] 200
[2026-08-31 19:28:20,938.938 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:28:20,978.978 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:28:21,064.064 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:28:21,067.067 INFO    ] No camera update needed
[2026-08-31 19:28:21,070.070 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:28:21,072.072 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:28:21,077.077 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:28:21,083.083 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:28:23,124.124 INFO    ] ================================================
[2026-08-31 19:28:23,140.140 INFO    ] Launching Daemon at Mon Aug 31 19:28:23 IST 2026
[2026-08-31 19:28:23,151.151 INFO    ] ================================================
[2026-08-31 19:28:23,715.715 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:28:23
[2026-08-31 19:28:24,296.296 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:28:24,565.565 INFO    ] Initializing speech engine...
[2026-08-31 19:28:24,572.572 INFO    ] 2026-08-31 19:28:24
[2026-08-31 19:28:24,816.816 INFO    ] 2026-08-31 19:28:24
[2026-08-31 19:28:24,852.852 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:28:25,048.048 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:28:25,103.103 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:28:25,244.244 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:28:25,279.279 INFO    ] time= 31/08/2026 19:28:25
[2026-08-31 19:28:25,323.323 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:28:25,372.372 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:28:25,491.491 INFO    ] No existing commands found in stream
[2026-08-31 19:28:30,518.518 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:28:30,521.521 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-08-31 19:28:34,125.125 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 19:28:34,128.128 INFO    ] Checking for system updates...
[2026-08-31 19:28:34,164.164 INFO    ] 200
[2026-08-31 19:28:34,166.166 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:28:34,222.222 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:28:34,224.224 INFO    ] No update needed
[2026-08-31 19:28:34,227.227 INFO    ] Checking for camera pi updates...
[2026-08-31 19:28:34,260.260 INFO    ] 200
[2026-08-31 19:28:34,263.263 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:28:34,303.303 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:28:34,402.402 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:28:34,404.404 INFO    ] No camera update needed
[2026-08-31 19:28:34,406.406 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:28:34,409.409 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:28:34,414.414 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:28:34,419.419 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:28:36,459.459 INFO    ] ================================================
[2026-08-31 19:28:36,474.474 INFO    ] Launching Daemon at Mon Aug 31 19:28:36 IST 2026
[2026-08-31 19:28:36,484.484 INFO    ] ================================================
[2026-08-31 19:28:37,048.048 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:28:37
[2026-08-31 19:28:37,630.630 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:28:37,901.901 INFO    ] Initializing speech engine...
[2026-08-31 19:28:37,906.906 INFO    ] 2026-08-31 19:28:37
[2026-08-31 19:28:38,152.152 INFO    ] 2026-08-31 19:28:38
[2026-08-31 19:28:38,194.194 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:28:38,412.412 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:28:38,467.467 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:28:38,640.640 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:28:38,687.687 INFO    ] time= 31/08/2026 19:28:38
[2026-08-31 19:28:38,747.747 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:28:38,790.790 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:28:38,924.924 INFO    ] No existing commands found in stream
[2026-08-31 19:28:43,954.954 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:28:43,957.957 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-08-31 19:28:47,649.649 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 19:28:47,651.651 INFO    ] Checking for system updates...
[2026-08-31 19:28:47,687.687 INFO    ] 200
[2026-08-31 19:28:47,690.690 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:28:47,741.741 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:28:47,744.744 INFO    ] No update needed
[2026-08-31 19:28:47,746.746 INFO    ] Checking for camera pi updates...
[2026-08-31 19:28:47,783.783 INFO    ] 200
[2026-08-31 19:28:47,786.786 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:28:47,826.826 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:28:47,907.907 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:28:47,909.909 INFO    ] No camera update needed
[2026-08-31 19:28:47,912.912 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:28:47,914.914 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:28:47,919.919 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:28:47,924.924 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:28:49,963.963 INFO    ] ================================================
[2026-08-31 19:28:49,978.978 INFO    ] Launching Daemon at Mon Aug 31 19:28:49 IST 2026
[2026-08-31 19:28:49,989.989 INFO    ] ================================================
[2026-08-31 19:28:50,570.570 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:28:50
[2026-08-31 19:28:51,168.168 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:28:51,430.430 INFO    ] Initializing speech engine...
[2026-08-31 19:28:51,445.445 INFO    ] 2026-08-31 19:28:51
[2026-08-31 19:28:51,700.700 INFO    ] 2026-08-31 19:28:51
[2026-08-31 19:28:51,735.735 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:28:51,988.988 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:28:51,997.997 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:28:52,214.214 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:28:52,255.255 INFO    ] time= 31/08/2026 19:28:52
[2026-08-31 19:28:52,261.261 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:28:52,280.280 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:28:52,406.406 INFO    ] No existing commands found in stream
[2026-08-31 19:28:57,421.421 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:28:57,424.424 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-08-31 19:28:58,118.118 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 19:28:58,121.121 INFO    ] Checking for system updates...
[2026-08-31 19:28:58,156.156 INFO    ] 200
[2026-08-31 19:28:58,159.159 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:28:58,211.211 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:28:58,213.213 INFO    ] No update needed
[2026-08-31 19:28:58,216.216 INFO    ] Checking for camera pi updates...
[2026-08-31 19:28:58,252.252 INFO    ] 200
[2026-08-31 19:28:58,255.255 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:28:58,303.303 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:28:58,390.390 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:28:58,392.392 INFO    ] No camera update needed
[2026-08-31 19:28:58,395.395 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:28:58,397.397 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:28:58,402.402 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:28:58,407.407 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:29:00,448.448 INFO    ] ================================================
[2026-08-31 19:29:00,463.463 INFO    ] Launching Daemon at Mon Aug 31 19:29:00 IST 2026
[2026-08-31 19:29:00,474.474 INFO    ] ================================================
[2026-08-31 19:29:01,037.037 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:29:01
[2026-08-31 19:29:01,773.773 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:29:02,129.129 INFO    ] Initializing speech engine...
[2026-08-31 19:29:02,140.140 INFO    ] 2026-08-31 19:29:02
[2026-08-31 19:29:02,465.465 INFO    ] 2026-08-31 19:29:02
[2026-08-31 19:29:02,534.534 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:29:02,808.808 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:29:02,838.838 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:29:03,040.040 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:29:03,099.099 INFO    ] time= 31/08/2026 19:29:03
[2026-08-31 19:29:03,131.131 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:29:03,141.141 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:29:03,278.278 INFO    ] No existing commands found in stream
[2026-08-31 19:29:08,293.293 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:29:08,303.303 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-08-31 19:29:10,561.561 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 19:29:10,564.564 INFO    ] Checking for system updates...
[2026-08-31 19:29:10,600.600 INFO    ] 200
[2026-08-31 19:29:10,602.602 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:29:10,660.660 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:29:10,662.662 INFO    ] No update needed
[2026-08-31 19:29:10,664.664 INFO    ] Checking for camera pi updates...
[2026-08-31 19:29:10,698.698 INFO    ] 200
[2026-08-31 19:29:10,700.700 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:29:10,740.740 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:29:10,830.830 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:29:10,833.833 INFO    ] No camera update needed
[2026-08-31 19:29:10,835.835 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:29:10,837.837 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:29:10,843.843 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:29:10,847.847 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:29:12,887.887 INFO    ] ================================================
[2026-08-31 19:29:12,902.902 INFO    ] Launching Daemon at Mon Aug 31 19:29:12 IST 2026
[2026-08-31 19:29:12,913.913 INFO    ] ================================================
[2026-08-31 19:29:13,481.481 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:29:13
[2026-08-31 19:29:14,065.065 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:29:14,333.333 INFO    ] Initializing speech engine...
[2026-08-31 19:29:14,344.344 INFO    ] 2026-08-31 19:29:14
[2026-08-31 19:29:14,600.600 INFO    ] 2026-08-31 19:29:14
[2026-08-31 19:29:14,667.667 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:29:14,903.903 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:29:14,909.909 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:29:15,136.136 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:29:15,173.173 INFO    ] time= 31/08/2026 19:29:15
[2026-08-31 19:29:15,180.180 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:29:15,202.202 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:29:15,347.347 INFO    ] No existing commands found in stream
[2026-08-31 19:29:20,380.380 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:29:20,383.383 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-08-31 19:29:21,701.701 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 19:29:21,704.704 INFO    ] Checking for system updates...
[2026-08-31 19:29:21,740.740 INFO    ] 200
[2026-08-31 19:29:21,743.743 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:29:21,802.802 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:29:21,804.804 INFO    ] No update needed
[2026-08-31 19:29:21,807.807 INFO    ] Checking for camera pi updates...
[2026-08-31 19:29:21,840.840 INFO    ] 200
[2026-08-31 19:29:21,843.843 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:29:21,888.888 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:29:21,973.973 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:29:21,975.975 INFO    ] No camera update needed
[2026-08-31 19:29:21,978.978 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:29:21,980.980 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:29:21,985.985 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:29:21,990.990 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:29:24,037.037 INFO    ] ================================================
[2026-08-31 19:29:24,053.053 INFO    ] Launching Daemon at Mon Aug 31 19:29:24 IST 2026
[2026-08-31 19:29:24,063.063 INFO    ] ================================================
[2026-08-31 19:29:24,657.657 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:29:24
[2026-08-31 19:29:25,320.320 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:29:25,591.591 INFO    ] Initializing speech engine...
[2026-08-31 19:29:25,600.600 INFO    ] 2026-08-31 19:29:25
[2026-08-31 19:29:25,850.850 INFO    ] 2026-08-31 19:29:25
[2026-08-31 19:29:25,886.886 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:29:26,082.082 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:29:26,127.127 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:29:26,290.290 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:29:26,339.339 INFO    ] time= 31/08/2026 19:29:26
[2026-08-31 19:29:26,388.388 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:29:26,423.423 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:29:26,569.569 INFO    ] No existing commands found in stream
[2026-08-31 19:29:31,586.586 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:29:31,589.589 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-08-31 19:29:33,368.368 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 19:29:33,371.371 INFO    ] Checking for system updates...
[2026-08-31 19:29:33,416.416 INFO    ] 200
[2026-08-31 19:29:33,419.419 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:29:33,487.487 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:29:33,490.490 INFO    ] No update needed
[2026-08-31 19:29:33,492.492 INFO    ] Checking for camera pi updates...
[2026-08-31 19:29:33,525.525 INFO    ] 200
[2026-08-31 19:29:33,528.528 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:29:33,567.567 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:29:33,667.667 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:29:33,670.670 INFO    ] No camera update needed
[2026-08-31 19:29:33,672.672 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:29:33,674.674 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:29:33,679.679 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:29:33,684.684 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:29:35,724.724 INFO    ] ================================================
[2026-08-31 19:29:35,739.739 INFO    ] Launching Daemon at Mon Aug 31 19:29:35 IST 2026
[2026-08-31 19:29:35,750.750 INFO    ] ================================================
[2026-08-31 19:29:36,331.331 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:29:36
[2026-08-31 19:29:36,929.929 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:29:37,205.205 INFO    ] Initializing speech engine...
[2026-08-31 19:29:37,211.211 INFO    ] 2026-08-31 19:29:37
[2026-08-31 19:29:37,460.460 INFO    ] 2026-08-31 19:29:37
[2026-08-31 19:29:37,495.495 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:29:37,746.746 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:29:37,755.755 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:29:37,974.974 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:29:38,012.012 INFO    ] time= 31/08/2026 19:29:37
[2026-08-31 19:29:38,018.018 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:29:38,036.036 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:29:38,190.190 INFO    ] No existing commands found in stream
[2026-08-31 19:29:43,220.220 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:29:43,223.223 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-08-31 19:29:43,693.693 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 19:29:43,696.696 INFO    ] Checking for system updates...
[2026-08-31 19:29:43,732.732 INFO    ] 200
[2026-08-31 19:29:43,734.734 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:29:43,786.786 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:29:43,789.789 INFO    ] No update needed
[2026-08-31 19:29:43,792.792 INFO    ] Checking for camera pi updates...
[2026-08-31 19:29:43,825.825 INFO    ] 200
[2026-08-31 19:29:43,827.827 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:29:43,874.874 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:29:43,957.957 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:29:43,959.959 INFO    ] No camera update needed
[2026-08-31 19:29:43,962.962 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:29:43,964.964 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:29:43,969.969 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:29:43,974.974 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:29:46,013.013 INFO    ] ================================================
[2026-08-31 19:29:46,029.029 INFO    ] Launching Daemon at Mon Aug 31 19:29:46 IST 2026
[2026-08-31 19:29:46,040.040 INFO    ] ================================================
[2026-08-31 19:29:46,614.614 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:29:46
[2026-08-31 19:29:47,206.206 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:29:47,474.474 INFO    ] Initializing speech engine...
[2026-08-31 19:29:47,483.483 INFO    ] 2026-08-31 19:29:47
[2026-08-31 19:29:47,728.728 INFO    ] 2026-08-31 19:29:47
[2026-08-31 19:29:47,763.763 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:29:47,997.997 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:29:48,018.018 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:29:48,175.175 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:29:48,246.246 INFO    ] time= 31/08/2026 19:29:48
[2026-08-31 19:29:48,288.288 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:29:48,305.305 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:29:48,419.419 INFO    ] No existing commands found in stream
[2026-08-31 19:29:53,448.448 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:29:53,451.451 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-08-31 19:29:56,667.667 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 19:29:56,670.670 INFO    ] Checking for system updates...
[2026-08-31 19:29:56,711.711 INFO    ] 200
[2026-08-31 19:29:56,714.714 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:29:56,769.769 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:29:56,772.772 INFO    ] No update needed
[2026-08-31 19:29:56,774.774 INFO    ] Checking for camera pi updates...
[2026-08-31 19:29:56,812.812 INFO    ] 200
[2026-08-31 19:29:56,814.814 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:29:56,855.855 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:29:56,953.953 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:29:56,955.955 INFO    ] No camera update needed
[2026-08-31 19:29:56,957.957 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:29:56,960.960 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:29:56,965.965 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:29:56,971.971 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:29:59,012.012 INFO    ] ================================================
[2026-08-31 19:29:59,027.027 INFO    ] Launching Daemon at Mon Aug 31 19:29:59 IST 2026
[2026-08-31 19:29:59,038.038 INFO    ] ================================================
[2026-08-31 19:29:59,608.608 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:29:59
[2026-08-31 19:30:00,195.195 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:30:00,473.473 INFO    ] Initializing speech engine...
[2026-08-31 19:30:00,482.482 INFO    ] 2026-08-31 19:30:00
[2026-08-31 19:30:00,741.741 INFO    ] 2026-08-31 19:30:00
[2026-08-31 19:30:00,796.796 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:30:01,022.022 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:30:01,026.026 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:30:01,171.171 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:30:01,231.231 INFO    ] time= 31/08/2026 19:30:01
[2026-08-31 19:30:01,285.285 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:30:01,294.294 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:30:01,422.422 INFO    ] No existing commands found in stream
[2026-08-31 19:30:06,457.457 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:30:06,460.460 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-08-31 19:30:09,519.519 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 19:30:09,522.522 INFO    ] Checking for system updates...
[2026-08-31 19:30:09,558.558 INFO    ] 200
[2026-08-31 19:30:09,560.560 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:30:09,621.621 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:30:09,623.623 INFO    ] No update needed
[2026-08-31 19:30:09,626.626 INFO    ] Checking for camera pi updates...
[2026-08-31 19:30:09,660.660 INFO    ] 200
[2026-08-31 19:30:09,662.662 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:30:09,703.703 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:30:09,783.783 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:30:09,785.785 INFO    ] No camera update needed
[2026-08-31 19:30:09,787.787 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:30:09,790.790 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:30:09,795.795 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:30:09,800.800 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:30:11,842.842 INFO    ] ================================================
[2026-08-31 19:30:11,857.857 INFO    ] Launching Daemon at Mon Aug 31 19:30:11 IST 2026
[2026-08-31 19:30:11,868.868 INFO    ] ================================================
[2026-08-31 19:30:12,443.443 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:30:12
[2026-08-31 19:30:13,114.114 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:30:13,419.419 INFO    ] Initializing speech engine...
[2026-08-31 19:30:13,430.430 INFO    ] 2026-08-31 19:30:13
[2026-08-31 19:30:13,710.710 INFO    ] 2026-08-31 19:30:13
[2026-08-31 19:30:13,816.816 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:30:13,976.976 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:30:13,981.981 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:30:14,216.216 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:30:14,240.240 INFO    ] time= 31/08/2026 19:30:14
[2026-08-31 19:30:14,246.246 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:30:14,263.263 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:30:14,388.388 INFO    ] No existing commands found in stream
[2026-08-31 19:30:19,400.400 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:30:19,402.402 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-08-31 19:30:20,286.286 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 19:30:20,289.289 INFO    ] Checking for system updates...
[2026-08-31 19:30:20,324.324 INFO    ] 200
[2026-08-31 19:30:20,327.327 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:30:20,380.380 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:30:20,383.383 INFO    ] No update needed
[2026-08-31 19:30:20,385.385 INFO    ] Checking for camera pi updates...
[2026-08-31 19:30:20,423.423 INFO    ] 200
[2026-08-31 19:30:20,425.425 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:30:20,467.467 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:30:20,560.560 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:30:20,563.563 INFO    ] No camera update needed
[2026-08-31 19:30:20,569.569 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:30:20,573.573 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:30:20,579.579 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:30:20,585.585 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:30:22,628.628 INFO    ] ================================================
[2026-08-31 19:30:22,643.643 INFO    ] Launching Daemon at Mon Aug 31 19:30:22 IST 2026
[2026-08-31 19:30:22,654.654 INFO    ] ================================================
[2026-08-31 19:30:23,229.229 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:30:23
[2026-08-31 19:30:23,813.813 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:30:24,061.061 INFO    ] Initializing speech engine...
[2026-08-31 19:30:24,075.075 INFO    ] 2026-08-31 19:30:24
[2026-08-31 19:30:24,342.342 INFO    ] 2026-08-31 19:30:24
[2026-08-31 19:30:24,377.377 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:30:24,553.553 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:30:24,565.565 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:30:24,714.714 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:30:24,719.719 INFO    ] time= 31/08/2026 19:30:24
[2026-08-31 19:30:24,725.725 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:30:24,771.771 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:30:24,899.899 INFO    ] No existing commands found in stream
[2026-08-31 19:30:29,929.929 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:30:29,932.932 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-08-31 19:30:33,083.083 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 19:30:33,089.089 INFO    ] Checking for system updates...
[2026-08-31 19:30:33,131.131 INFO    ] 200
[2026-08-31 19:30:33,133.133 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:30:33,186.186 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:30:33,188.188 INFO    ] No update needed
[2026-08-31 19:30:33,191.191 INFO    ] Checking for camera pi updates...
[2026-08-31 19:30:33,224.224 INFO    ] 200
[2026-08-31 19:30:33,227.227 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:30:33,267.267 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:30:33,448.448 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:30:33,450.450 INFO    ] No camera update needed
[2026-08-31 19:30:33,453.453 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:30:33,455.455 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:30:33,460.460 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:30:33,465.465 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:30:35,507.507 INFO    ] ================================================
[2026-08-31 19:30:35,523.523 INFO    ] Launching Daemon at Mon Aug 31 19:30:35 IST 2026
[2026-08-31 19:30:35,534.534 INFO    ] ================================================
[2026-08-31 19:30:36,101.101 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:30:36
[2026-08-31 19:30:36,689.689 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:30:36,935.935 INFO    ] Initializing speech engine...
[2026-08-31 19:30:36,943.943 INFO    ] 2026-08-31 19:30:36
[2026-08-31 19:30:37,216.216 INFO    ] 2026-08-31 19:30:37
[2026-08-31 19:30:37,252.252 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:30:37,451.451 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:30:37,464.464 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:30:37,626.626 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:30:37,663.663 INFO    ] time= 31/08/2026 19:30:37
[2026-08-31 19:30:37,708.708 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:30:37,762.762 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:30:37,930.930 INFO    ] No existing commands found in stream
[2026-08-31 19:30:42,955.955 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:30:42,958.958 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-08-31 19:30:46,962.962 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 19:30:46,965.965 INFO    ] Checking for system updates...
[2026-08-31 19:30:47,005.005 INFO    ] 200
[2026-08-31 19:30:47,008.008 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:30:47,061.061 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:30:47,064.064 INFO    ] No update needed
[2026-08-31 19:30:47,067.067 INFO    ] Checking for camera pi updates...
[2026-08-31 19:30:47,101.101 INFO    ] 200
[2026-08-31 19:30:47,104.104 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:30:47,145.145 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:30:47,211.211 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:30:47,214.214 INFO    ] No camera update needed
[2026-08-31 19:30:47,216.216 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:30:47,218.218 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:30:47,224.224 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:30:47,229.229 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:30:49,268.268 INFO    ] ================================================
[2026-08-31 19:30:49,283.283 INFO    ] Launching Daemon at Mon Aug 31 19:30:49 IST 2026
[2026-08-31 19:30:49,294.294 INFO    ] ================================================
[2026-08-31 19:30:49,879.879 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:30:49
[2026-08-31 19:30:50,479.479 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:30:50,758.758 INFO    ] Initializing speech engine...
[2026-08-31 19:30:50,764.764 INFO    ] 2026-08-31 19:30:50
[2026-08-31 19:30:51,025.025 INFO    ] 2026-08-31 19:30:51
[2026-08-31 19:30:51,055.055 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:30:51,325.325 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:30:51,332.332 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:30:51,530.530 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:30:51,568.568 INFO    ] time= 31/08/2026 19:30:51
[2026-08-31 19:30:51,574.574 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:30:51,592.592 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:30:51,723.723 INFO    ] No existing commands found in stream
[2026-08-31 19:30:56,738.738 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:30:56,741.741 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-08-31 19:30:59,893.893 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 19:30:59,895.895 INFO    ] Checking for system updates...
[2026-08-31 19:30:59,935.935 INFO    ] 200
[2026-08-31 19:30:59,938.938 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:30:59,992.992 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:30:59,994.994 INFO    ] No update needed
[2026-08-31 19:30:59,997.997 INFO    ] Checking for camera pi updates...
[2026-08-31 19:31:00,031.031 INFO    ] 200
[2026-08-31 19:31:00,033.033 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:31:00,079.079 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:31:00,180.180 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:31:00,183.183 INFO    ] No camera update needed
[2026-08-31 19:31:00,185.185 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:31:00,188.188 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:31:00,193.193 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:31:00,198.198 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:31:02,240.240 INFO    ] ================================================
[2026-08-31 19:31:02,261.261 INFO    ] Launching Daemon at Mon Aug 31 19:31:02 IST 2026
[2026-08-31 19:31:02,278.278 INFO    ] ================================================
[2026-08-31 19:31:02,910.910 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:31:02
[2026-08-31 19:31:03,516.516 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:31:03,776.776 INFO    ] Initializing speech engine...
[2026-08-31 19:31:03,790.790 INFO    ] 2026-08-31 19:31:03
[2026-08-31 19:31:04,046.046 INFO    ] 2026-08-31 19:31:04
[2026-08-31 19:31:04,082.082 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:31:04,283.283 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:31:04,342.342 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:31:04,483.483 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:31:04,520.520 INFO    ] time= 31/08/2026 19:31:04
[2026-08-31 19:31:04,569.569 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:31:04,619.619 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:31:04,674.674 INFO    ] No existing commands found in stream
[2026-08-31 19:31:09,686.686 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:31:09,689.689 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-08-31 19:31:14,161.161 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 19:31:14,163.163 INFO    ] Checking for system updates...
[2026-08-31 19:31:14,198.198 INFO    ] 200
[2026-08-31 19:31:14,201.201 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:31:14,253.253 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:31:14,255.255 INFO    ] No update needed
[2026-08-31 19:31:14,258.258 INFO    ] Checking for camera pi updates...
[2026-08-31 19:31:14,294.294 INFO    ] 200
[2026-08-31 19:31:14,297.297 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:31:14,337.337 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:31:14,401.401 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:31:14,403.403 INFO    ] No camera update needed
[2026-08-31 19:31:14,406.406 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:31:14,408.408 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:31:14,413.413 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:31:14,418.418 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:31:16,459.459 INFO    ] ================================================
[2026-08-31 19:31:16,474.474 INFO    ] Launching Daemon at Mon Aug 31 19:31:16 IST 2026
[2026-08-31 19:31:16,485.485 INFO    ] ================================================
[2026-08-31 19:31:17,112.112 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:31:17
[2026-08-31 19:31:17,803.803 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:31:18,146.146 INFO    ] Initializing speech engine...
[2026-08-31 19:31:18,158.158 INFO    ] 2026-08-31 19:31:18
[2026-08-31 19:31:18,426.426 INFO    ] 2026-08-31 19:31:18
[2026-08-31 19:31:18,479.479 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:31:18,712.712 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:31:18,723.723 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:31:18,874.874 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:31:18,883.883 INFO    ] time= 31/08/2026 19:31:18
[2026-08-31 19:31:18,939.939 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:31:18,993.993 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:31:19,109.109 INFO    ] No existing commands found in stream
[2026-08-31 19:31:24,140.140 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:31:24,143.143 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-08-31 19:31:29,773.773 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 19:31:29,775.775 INFO    ] Checking for system updates...
[2026-08-31 19:31:29,813.813 INFO    ] 200
[2026-08-31 19:31:29,816.816 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:31:29,872.872 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:31:29,875.875 INFO    ] No update needed
[2026-08-31 19:31:29,877.877 INFO    ] Checking for camera pi updates...
[2026-08-31 19:31:29,911.911 INFO    ] 200
[2026-08-31 19:31:29,913.913 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:31:29,958.958 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:31:30,064.064 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:31:30,067.067 INFO    ] No camera update needed
[2026-08-31 19:31:30,069.069 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:31:30,071.071 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:31:30,077.077 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:31:30,082.082 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:31:32,123.123 INFO    ] ================================================
[2026-08-31 19:31:32,140.140 INFO    ] Launching Daemon at Mon Aug 31 19:31:32 IST 2026
[2026-08-31 19:31:32,152.152 INFO    ] ================================================
[2026-08-31 19:31:32,752.752 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:31:32
[2026-08-31 19:31:33,337.337 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:31:33,588.588 INFO    ] Initializing speech engine...
[2026-08-31 19:31:33,611.611 INFO    ] 2026-08-31 19:31:33
[2026-08-31 19:31:33,866.866 INFO    ] 2026-08-31 19:31:33
[2026-08-31 19:31:33,902.902 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:31:34,081.081 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:31:34,093.093 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:31:34,241.241 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:31:34,246.246 INFO    ] time= 31/08/2026 19:31:34
[2026-08-31 19:31:34,253.253 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:31:34,304.304 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:31:34,449.449 INFO    ] No existing commands found in stream
[2026-08-31 19:31:39,459.459 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:31:39,462.462 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-08-31 19:31:40,817.817 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 19:31:40,820.820 INFO    ] Checking for system updates...
[2026-08-31 19:31:40,858.858 INFO    ] 200
[2026-08-31 19:31:40,861.861 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:31:40,917.917 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:31:40,920.920 INFO    ] No update needed
[2026-08-31 19:31:40,922.922 INFO    ] Checking for camera pi updates...
[2026-08-31 19:31:40,958.958 INFO    ] 200
[2026-08-31 19:31:40,961.961 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:31:41,001.001 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:31:41,088.088 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:31:41,090.090 INFO    ] No camera update needed
[2026-08-31 19:31:41,093.093 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:31:41,095.095 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:31:41,100.100 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:31:41,105.105 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:31:43,147.147 INFO    ] ================================================
[2026-08-31 19:31:43,162.162 INFO    ] Launching Daemon at Mon Aug 31 19:31:43 IST 2026
[2026-08-31 19:31:43,173.173 INFO    ] ================================================
[2026-08-31 19:31:43,751.751 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:31:43
[2026-08-31 19:31:44,339.339 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:31:44,606.606 INFO    ] Initializing speech engine...
[2026-08-31 19:31:44,616.616 INFO    ] 2026-08-31 19:31:44
[2026-08-31 19:31:44,860.860 INFO    ] 2026-08-31 19:31:44
[2026-08-31 19:31:44,925.925 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:31:45,152.152 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:31:45,157.157 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:31:45,374.374 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:31:45,411.411 INFO    ] time= 31/08/2026 19:31:45
[2026-08-31 19:31:45,418.418 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:31:45,435.435 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:31:45,566.566 INFO    ] No existing commands found in stream
[2026-08-31 19:31:50,578.578 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:31:50,580.580 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-08-31 19:31:54,680.680 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 19:31:54,683.683 INFO    ] Checking for system updates...
[2026-08-31 19:31:54,721.721 INFO    ] 200
[2026-08-31 19:31:54,724.724 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:31:54,780.780 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:31:54,783.783 INFO    ] No update needed
[2026-08-31 19:31:54,785.785 INFO    ] Checking for camera pi updates...
[2026-08-31 19:31:54,821.821 INFO    ] 200
[2026-08-31 19:31:54,824.824 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:31:54,872.872 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:31:54,955.955 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:31:54,958.958 INFO    ] No camera update needed
[2026-08-31 19:31:54,960.960 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:31:54,963.963 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:31:54,969.969 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:31:54,974.974 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:31:57,023.023 INFO    ] ================================================
[2026-08-31 19:31:57,039.039 INFO    ] Launching Daemon at Mon Aug 31 19:31:57 IST 2026
[2026-08-31 19:31:57,051.051 INFO    ] ================================================
[2026-08-31 19:31:57,642.642 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:31:57
[2026-08-31 19:31:58,251.251 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:31:58,516.516 INFO    ] Initializing speech engine...
[2026-08-31 19:31:58,525.525 INFO    ] 2026-08-31 19:31:58
[2026-08-31 19:31:58,813.813 INFO    ] 2026-08-31 19:31:58
[2026-08-31 19:31:58,849.849 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:31:59,056.056 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:31:59,122.122 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:31:59,279.279 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:31:59,286.286 INFO    ] time= 31/08/2026 19:31:59
[2026-08-31 19:31:59,341.341 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:31:59,417.417 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:31:59,568.568 INFO    ] No existing commands found in stream
[2026-08-31 19:32:04,586.586 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:32:04,589.589 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-08-31 19:32:05,339.339 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 19:32:05,341.341 INFO    ] Checking for system updates...
[2026-08-31 19:32:05,380.380 INFO    ] 200
[2026-08-31 19:32:05,383.383 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:32:05,435.435 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:32:05,438.438 INFO    ] No update needed
[2026-08-31 19:32:05,441.441 INFO    ] Checking for camera pi updates...
[2026-08-31 19:32:05,474.474 INFO    ] 200
[2026-08-31 19:32:05,477.477 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:32:05,520.520 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:32:05,606.606 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:32:05,609.609 INFO    ] No camera update needed
[2026-08-31 19:32:05,611.611 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:32:05,614.614 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:32:05,619.619 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:32:05,625.625 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:32:07,668.668 INFO    ] ================================================
[2026-08-31 19:32:07,684.684 INFO    ] Launching Daemon at Mon Aug 31 19:32:07 IST 2026
[2026-08-31 19:32:07,695.695 INFO    ] ================================================
[2026-08-31 19:32:08,264.264 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:32:08
[2026-08-31 19:32:08,847.847 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:32:09,106.106 INFO    ] Initializing speech engine...
[2026-08-31 19:32:09,263.263 INFO    ] 2026-08-31 19:32:09
[2026-08-31 19:32:09,559.559 INFO    ] 2026-08-31 19:32:09
[2026-08-31 19:32:09,595.595 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:32:09,817.817 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:32:09,849.849 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:32:10,102.102 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:32:10,138.138 INFO    ] time= 31/08/2026 19:32:10
[2026-08-31 19:32:10,178.178 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:32:10,233.233 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:32:10,390.390 INFO    ] No existing commands found in stream
[2026-08-31 19:32:15,420.420 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:32:15,423.423 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-08-31 19:32:17,797.797 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 19:32:17,800.800 INFO    ] Checking for system updates...
[2026-08-31 19:32:17,839.839 INFO    ] 200
[2026-08-31 19:32:17,841.841 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:32:17,898.898 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:32:17,900.900 INFO    ] No update needed
[2026-08-31 19:32:17,902.902 INFO    ] Checking for camera pi updates...
[2026-08-31 19:32:17,936.936 INFO    ] 200
[2026-08-31 19:32:17,938.938 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:32:17,978.978 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:32:18,048.048 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:32:18,050.050 INFO    ] No camera update needed
[2026-08-31 19:32:18,053.053 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:32:18,055.055 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:32:18,060.060 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:32:18,065.065 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:32:20,104.104 INFO    ] ================================================
[2026-08-31 19:32:20,119.119 INFO    ] Launching Daemon at Mon Aug 31 19:32:20 IST 2026
[2026-08-31 19:32:20,129.129 INFO    ] ================================================
[2026-08-31 19:32:20,765.765 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:32:20
[2026-08-31 19:32:21,444.444 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:32:21,733.733 INFO    ] Initializing speech engine...
[2026-08-31 19:32:21,751.751 INFO    ] 2026-08-31 19:32:21
[2026-08-31 19:32:22,015.015 INFO    ] 2026-08-31 19:32:22
[2026-08-31 19:32:22,059.059 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:32:22,315.315 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:32:22,321.321 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:32:22,545.545 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:32:22,585.585 INFO    ] time= 31/08/2026 19:32:22
[2026-08-31 19:32:22,592.592 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:32:22,613.613 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:32:22,734.734 INFO    ] No existing commands found in stream
[2026-08-31 19:32:27,756.756 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:32:27,760.760 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-08-31 19:32:29,218.218 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 19:32:29,221.221 INFO    ] Checking for system updates...
[2026-08-31 19:32:29,256.256 INFO    ] 200
[2026-08-31 19:32:29,259.259 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:32:29,316.316 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:32:29,319.319 INFO    ] No update needed
[2026-08-31 19:32:29,322.322 INFO    ] Checking for camera pi updates...
[2026-08-31 19:32:29,361.361 INFO    ] 200
[2026-08-31 19:32:29,363.363 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:32:29,406.406 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:32:29,487.487 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:32:29,490.490 INFO    ] No camera update needed
[2026-08-31 19:32:29,492.492 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:32:29,494.494 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:32:29,500.500 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:32:29,505.505 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:32:31,545.545 INFO    ] ================================================
[2026-08-31 19:32:31,562.562 INFO    ] Launching Daemon at Mon Aug 31 19:32:31 IST 2026
[2026-08-31 19:32:31,574.574 INFO    ] ================================================
[2026-08-31 19:32:32,170.170 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:32:32
[2026-08-31 19:32:32,786.786 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:32:33,062.062 INFO    ] Initializing speech engine...
[2026-08-31 19:32:33,067.067 INFO    ] 2026-08-31 19:32:33
[2026-08-31 19:32:33,317.317 INFO    ] 2026-08-31 19:32:33
[2026-08-31 19:32:33,351.351 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:32:33,597.597 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:32:33,626.626 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:32:33,860.860 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:32:33,902.902 INFO    ] time= 31/08/2026 19:32:33
[2026-08-31 19:32:33,908.908 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:32:33,926.926 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:32:34,057.057 INFO    ] No existing commands found in stream
[2026-08-31 19:32:39,079.079 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:32:39,083.083 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-08-31 19:32:41,945.945 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 19:32:41,948.948 INFO    ] Checking for system updates...
[2026-08-31 19:32:41,991.991 INFO    ] 200
[2026-08-31 19:32:41,994.994 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:32:42,055.055 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:32:42,057.057 INFO    ] No update needed
[2026-08-31 19:32:42,060.060 INFO    ] Checking for camera pi updates...
[2026-08-31 19:32:42,094.094 INFO    ] 200
[2026-08-31 19:32:42,096.096 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:32:42,142.142 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:32:42,230.230 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:32:42,232.232 INFO    ] No camera update needed
[2026-08-31 19:32:42,234.234 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:32:42,237.237 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:32:42,242.242 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:32:42,247.247 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:32:44,288.288 INFO    ] ================================================
[2026-08-31 19:32:44,303.303 INFO    ] Launching Daemon at Mon Aug 31 19:32:44 IST 2026
[2026-08-31 19:32:44,314.314 INFO    ] ================================================
[2026-08-31 19:32:44,897.897 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:32:44
[2026-08-31 19:32:45,527.527 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:32:45,834.834 INFO    ] Initializing speech engine...
[2026-08-31 19:32:45,846.846 INFO    ] 2026-08-31 19:32:45
[2026-08-31 19:32:46,102.102 INFO    ] 2026-08-31 19:32:46
[2026-08-31 19:32:46,151.151 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:32:46,372.372 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:32:46,381.381 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:32:46,588.588 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:32:46,639.639 INFO    ] time= 31/08/2026 19:32:46
[2026-08-31 19:32:46,645.645 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:32:46,662.662 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:32:46,794.794 INFO    ] No existing commands found in stream
[2026-08-31 19:32:51,808.808 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:32:51,811.811 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-08-31 19:32:55,210.210 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 19:32:55,213.213 INFO    ] Checking for system updates...
[2026-08-31 19:32:55,250.250 INFO    ] 200
[2026-08-31 19:32:55,252.252 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:32:55,312.312 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:32:55,314.314 INFO    ] No update needed
[2026-08-31 19:32:55,316.316 INFO    ] Checking for camera pi updates...
[2026-08-31 19:32:55,354.354 INFO    ] 200
[2026-08-31 19:32:55,356.356 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:32:55,397.397 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:32:55,521.521 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:32:55,523.523 INFO    ] No camera update needed
[2026-08-31 19:32:55,526.526 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:32:55,528.528 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:32:55,533.533 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:32:55,538.538 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:32:57,580.580 INFO    ] ================================================
[2026-08-31 19:32:57,595.595 INFO    ] Launching Daemon at Mon Aug 31 19:32:57 IST 2026
[2026-08-31 19:32:57,606.606 INFO    ] ================================================
[2026-08-31 19:32:58,173.173 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:32:58
[2026-08-31 19:32:58,758.758 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:32:59,027.027 INFO    ] Initializing speech engine...
[2026-08-31 19:32:59,036.036 INFO    ] 2026-08-31 19:32:59
[2026-08-31 19:32:59,284.284 INFO    ] 2026-08-31 19:32:59
[2026-08-31 19:32:59,320.320 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:32:59,575.575 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:32:59,584.584 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:32:59,725.725 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:32:59,780.780 INFO    ] time= 31/08/2026 19:32:59
[2026-08-31 19:32:59,829.829 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:32:59,852.852 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:32:59,995.995 INFO    ] No existing commands found in stream
[2026-08-31 19:33:05,009.009 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:33:05,012.012 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-08-31 19:33:06,738.738 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 19:33:06,740.740 INFO    ] Checking for system updates...
[2026-08-31 19:33:06,776.776 INFO    ] 200
[2026-08-31 19:33:06,778.778 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:33:06,836.836 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:33:06,838.838 INFO    ] No update needed
[2026-08-31 19:33:06,841.841 INFO    ] Checking for camera pi updates...
[2026-08-31 19:33:06,874.874 INFO    ] 200
[2026-08-31 19:33:06,876.876 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:33:06,922.922 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:33:07,008.008 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:33:07,011.011 INFO    ] No camera update needed
[2026-08-31 19:33:07,013.013 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:33:07,015.015 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:33:07,020.020 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:33:07,025.025 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:33:09,066.066 INFO    ] ================================================
[2026-08-31 19:33:09,082.082 INFO    ] Launching Daemon at Mon Aug 31 19:33:09 IST 2026
[2026-08-31 19:33:09,093.093 INFO    ] ================================================
[2026-08-31 19:33:09,677.677 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:33:09
[2026-08-31 19:33:10,266.266 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:33:10,533.533 INFO    ] Initializing speech engine...
[2026-08-31 19:33:10,542.542 INFO    ] 2026-08-31 19:33:10
[2026-08-31 19:33:10,790.790 INFO    ] 2026-08-31 19:33:10
[2026-08-31 19:33:10,825.825 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:33:11,085.085 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:33:11,094.094 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:33:11,282.282 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:33:11,337.337 INFO    ] time= 31/08/2026 19:33:11
[2026-08-31 19:33:11,359.359 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:33:11,364.364 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:33:11,477.477 INFO    ] No existing commands found in stream
[2026-08-31 19:33:16,509.509 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:33:16,512.512 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-08-31 19:33:20,977.977 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 19:33:20,979.979 INFO    ] Checking for system updates...
[2026-08-31 19:33:21,017.017 INFO    ] 200
[2026-08-31 19:33:21,020.020 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:33:21,079.079 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:33:21,082.082 INFO    ] No update needed
[2026-08-31 19:33:21,085.085 INFO    ] Checking for camera pi updates...
[2026-08-31 19:33:21,122.122 INFO    ] 200
[2026-08-31 19:33:21,125.125 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:33:21,166.166 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:33:21,261.261 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:33:21,264.264 INFO    ] No camera update needed
[2026-08-31 19:33:21,267.267 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:33:21,270.270 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:33:21,276.276 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:33:21,281.281 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:33:23,322.322 INFO    ] ================================================
[2026-08-31 19:33:23,338.338 INFO    ] Launching Daemon at Mon Aug 31 19:33:23 IST 2026
[2026-08-31 19:33:23,349.349 INFO    ] ================================================
[2026-08-31 19:33:23,933.933 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:33:23
[2026-08-31 19:33:24,535.535 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:33:24,815.815 INFO    ] Initializing speech engine...
[2026-08-31 19:33:24,822.822 INFO    ] 2026-08-31 19:33:24
[2026-08-31 19:33:25,071.071 INFO    ] 2026-08-31 19:33:25
[2026-08-31 19:33:25,106.106 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:33:25,357.357 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:33:25,366.366 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:33:25,502.502 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:33:25,578.578 INFO    ] time= 31/08/2026 19:33:25
[2026-08-31 19:33:25,622.622 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:33:25,636.636 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:33:25,776.776 INFO    ] No existing commands found in stream
[2026-08-31 19:33:30,793.793 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:33:30,796.796 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-08-31 19:33:31,331.331 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 19:33:31,334.334 INFO    ] Checking for system updates...
[2026-08-31 19:33:31,372.372 INFO    ] 200
[2026-08-31 19:33:31,374.374 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:33:31,427.427 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:33:31,430.430 INFO    ] No update needed
[2026-08-31 19:33:31,433.433 INFO    ] Checking for camera pi updates...
[2026-08-31 19:33:31,467.467 INFO    ] 200
[2026-08-31 19:33:31,470.470 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:33:31,514.514 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:33:31,573.573 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:33:31,577.577 INFO    ] No camera update needed
[2026-08-31 19:33:31,581.581 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:33:31,585.585 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:33:31,593.593 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:33:31,600.600 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:33:33,645.645 INFO    ] ================================================
[2026-08-31 19:33:33,661.661 INFO    ] Launching Daemon at Mon Aug 31 19:33:33 IST 2026
[2026-08-31 19:33:33,672.672 INFO    ] ================================================
[2026-08-31 19:33:34,237.237 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:33:34
[2026-08-31 19:33:34,823.823 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:33:35,080.080 INFO    ] Initializing speech engine...
[2026-08-31 19:33:35,099.099 INFO    ] 2026-08-31 19:33:35
[2026-08-31 19:33:35,345.345 INFO    ] 2026-08-31 19:33:35
[2026-08-31 19:33:35,380.380 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:33:35,563.563 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:33:35,565.565 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:33:35,728.728 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:33:35,733.733 INFO    ] time= 31/08/2026 19:33:35
[2026-08-31 19:33:35,740.740 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:33:35,762.762 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:33:35,889.889 INFO    ] No existing commands found in stream
[2026-08-31 19:33:40,909.909 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:33:40,912.912 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-08-31 19:33:43,494.494 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 19:33:43,497.497 INFO    ] Checking for system updates...
[2026-08-31 19:33:43,536.536 INFO    ] 200
[2026-08-31 19:33:43,539.539 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:33:43,592.592 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:33:43,594.594 INFO    ] No update needed
[2026-08-31 19:33:43,597.597 INFO    ] Checking for camera pi updates...
[2026-08-31 19:33:43,630.630 INFO    ] 200
[2026-08-31 19:33:43,633.633 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:33:43,673.673 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:33:43,757.757 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:33:43,759.759 INFO    ] No camera update needed
[2026-08-31 19:33:43,762.762 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:33:43,764.764 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:33:43,770.770 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:33:43,775.775 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:33:45,815.815 INFO    ] ================================================
[2026-08-31 19:33:45,831.831 INFO    ] Launching Daemon at Mon Aug 31 19:33:45 IST 2026
[2026-08-31 19:33:45,842.842 INFO    ] ================================================
[2026-08-31 19:33:46,410.410 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:33:46
[2026-08-31 19:33:46,994.994 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:33:47,265.265 INFO    ] Initializing speech engine...
[2026-08-31 19:33:47,274.274 INFO    ] 2026-08-31 19:33:47
[2026-08-31 19:33:47,525.525 INFO    ] 2026-08-31 19:33:47
[2026-08-31 19:33:47,560.560 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:33:47,818.818 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:33:47,826.826 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:33:48,022.022 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:33:48,077.077 INFO    ] time= 31/08/2026 19:33:48
[2026-08-31 19:33:48,096.096 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:33:48,112.112 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:33:48,273.273 INFO    ] No existing commands found in stream
[2026-08-31 19:33:53,298.298 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:33:53,301.301 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-08-31 19:33:56,572.572 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 19:33:56,574.574 INFO    ] Checking for system updates...
[2026-08-31 19:33:56,610.610 INFO    ] 200
[2026-08-31 19:33:56,612.612 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:33:56,665.665 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:33:56,668.668 INFO    ] No update needed
[2026-08-31 19:33:56,670.670 INFO    ] Checking for camera pi updates...
[2026-08-31 19:33:56,704.704 INFO    ] 200
[2026-08-31 19:33:56,706.706 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:33:56,746.746 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:33:56,842.842 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:33:56,844.844 INFO    ] No camera update needed
[2026-08-31 19:33:56,847.847 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:33:56,849.849 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:33:56,854.854 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:33:56,860.860 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:33:58,902.902 INFO    ] ================================================
[2026-08-31 19:33:58,917.917 INFO    ] Launching Daemon at Mon Aug 31 19:33:58 IST 2026
[2026-08-31 19:33:58,928.928 INFO    ] ================================================
[2026-08-31 19:33:59,508.508 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:33:59
[2026-08-31 19:34:00,108.108 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:34:00,367.367 INFO    ] Initializing speech engine...
[2026-08-31 19:34:00,375.375 INFO    ] 2026-08-31 19:34:00
[2026-08-31 19:34:00,669.669 INFO    ] 2026-08-31 19:34:00
[2026-08-31 19:34:00,710.710 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:34:00,995.995 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:34:01,005.005 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:34:01,158.158 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:34:01,228.228 INFO    ] time= 31/08/2026 19:34:01
[2026-08-31 19:34:01,282.282 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:34:01,306.306 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:34:01,436.436 INFO    ] No existing commands found in stream
[2026-08-31 19:34:06,470.470 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:34:06,472.472 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-08-31 19:34:10,542.542 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 19:34:10,545.545 INFO    ] Checking for system updates...
[2026-08-31 19:34:10,581.581 INFO    ] 200
[2026-08-31 19:34:10,584.584 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:34:10,637.637 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:34:10,640.640 INFO    ] No update needed
[2026-08-31 19:34:10,643.643 INFO    ] Checking for camera pi updates...
[2026-08-31 19:34:10,680.680 INFO    ] 200
[2026-08-31 19:34:10,682.682 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:34:10,722.722 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:34:10,802.802 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:34:10,804.804 INFO    ] No camera update needed
[2026-08-31 19:34:10,807.807 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:34:10,809.809 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:34:10,814.814 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:34:10,819.819 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:34:12,859.859 INFO    ] ================================================
[2026-08-31 19:34:12,875.875 INFO    ] Launching Daemon at Mon Aug 31 19:34:12 IST 2026
[2026-08-31 19:34:12,886.886 INFO    ] ================================================
[2026-08-31 19:34:13,467.467 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:34:13
[2026-08-31 19:34:14,066.066 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:34:14,339.339 INFO    ] Initializing speech engine...
[2026-08-31 19:34:14,349.349 INFO    ] 2026-08-31 19:34:14
[2026-08-31 19:34:14,611.611 INFO    ] 2026-08-31 19:34:14
[2026-08-31 19:34:14,665.665 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:34:14,918.918 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:34:14,922.922 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:34:15,119.119 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:34:15,159.159 INFO    ] time= 31/08/2026 19:34:15
[2026-08-31 19:34:15,165.165 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:34:15,183.183 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:34:15,303.303 INFO    ] No existing commands found in stream
[2026-08-31 19:34:20,323.323 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:34:20,325.325 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-08-31 19:34:22,296.296 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 19:34:22,299.299 INFO    ] Checking for system updates...
[2026-08-31 19:34:22,335.335 INFO    ] 200
[2026-08-31 19:34:22,337.337 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:34:22,396.396 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:34:22,399.399 INFO    ] No update needed
[2026-08-31 19:34:22,401.401 INFO    ] Checking for camera pi updates...
[2026-08-31 19:34:22,434.434 INFO    ] 200
[2026-08-31 19:34:22,437.437 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:34:22,478.478 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:34:22,561.561 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:34:22,564.564 INFO    ] No camera update needed
[2026-08-31 19:34:22,566.566 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:34:22,569.569 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:34:22,574.574 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:34:22,579.579 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:34:24,621.621 INFO    ] ================================================
[2026-08-31 19:34:24,636.636 INFO    ] Launching Daemon at Mon Aug 31 19:34:24 IST 2026
[2026-08-31 19:34:24,648.648 INFO    ] ================================================
[2026-08-31 19:34:25,218.218 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:34:25
[2026-08-31 19:34:25,798.798 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:34:26,050.050 INFO    ] Initializing speech engine...
[2026-08-31 19:34:26,063.063 INFO    ] 2026-08-31 19:34:26
[2026-08-31 19:34:26,327.327 INFO    ] 2026-08-31 19:34:26
[2026-08-31 19:34:26,364.364 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:34:26,562.562 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:34:26,601.601 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:34:26,766.766 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:34:26,812.812 INFO    ] time= 31/08/2026 19:34:26
[2026-08-31 19:34:26,871.871 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:34:26,900.900 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:34:27,045.045 INFO    ] No existing commands found in stream
[2026-08-31 19:34:32,060.060 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:34:32,063.063 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-08-31 19:34:36,277.277 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 19:34:36,280.280 INFO    ] Checking for system updates...
[2026-08-31 19:34:36,316.316 INFO    ] 200
[2026-08-31 19:34:36,319.319 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:34:36,372.372 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:34:36,374.374 INFO    ] No update needed
[2026-08-31 19:34:36,376.376 INFO    ] Checking for camera pi updates...
[2026-08-31 19:34:36,410.410 INFO    ] 200
[2026-08-31 19:34:36,412.412 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:34:36,453.453 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:34:36,536.536 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:34:36,538.538 INFO    ] No camera update needed
[2026-08-31 19:34:36,541.541 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:34:36,543.543 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:34:36,548.548 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:34:36,553.553 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:34:38,594.594 INFO    ] ================================================
[2026-08-31 19:34:38,610.610 INFO    ] Launching Daemon at Mon Aug 31 19:34:38 IST 2026
[2026-08-31 19:34:38,622.622 INFO    ] ================================================
[2026-08-31 19:34:39,191.191 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:34:39
[2026-08-31 19:34:39,779.779 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:34:40,044.044 INFO    ] Initializing speech engine...
[2026-08-31 19:34:40,050.050 INFO    ] 2026-08-31 19:34:40
[2026-08-31 19:34:40,344.344 INFO    ] 2026-08-31 19:34:40
[2026-08-31 19:34:40,370.370 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:34:40,607.607 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:34:40,631.631 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:34:40,849.849 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:34:40,856.856 INFO    ] time= 31/08/2026 19:34:40
[2026-08-31 19:34:40,915.915 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:34:40,970.970 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:34:41,060.060 INFO    ] No existing commands found in stream
[2026-08-31 19:34:46,071.071 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:34:46,074.074 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-08-31 19:34:49,934.934 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 19:34:49,937.937 INFO    ] Checking for system updates...
[2026-08-31 19:34:49,972.972 INFO    ] 200
[2026-08-31 19:34:49,974.974 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:34:50,050.050 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:34:50,053.053 INFO    ] No update needed
[2026-08-31 19:34:50,055.055 INFO    ] Checking for camera pi updates...
[2026-08-31 19:34:50,089.089 INFO    ] 200
[2026-08-31 19:34:50,091.091 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:34:50,136.136 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:34:50,284.284 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:34:50,287.287 INFO    ] No camera update needed
[2026-08-31 19:34:50,289.289 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:34:50,292.292 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:34:50,297.297 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:34:50,302.302 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:34:52,343.343 INFO    ] ================================================
[2026-08-31 19:34:52,358.358 INFO    ] Launching Daemon at Mon Aug 31 19:34:52 IST 2026
[2026-08-31 19:34:52,369.369 INFO    ] ================================================
[2026-08-31 19:34:52,948.948 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:34:52
[2026-08-31 19:34:53,546.546 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:34:53,836.836 INFO    ] Initializing speech engine...
[2026-08-31 19:34:53,847.847 INFO    ] 2026-08-31 19:34:53
[2026-08-31 19:34:54,118.118 INFO    ] 2026-08-31 19:34:54
[2026-08-31 19:34:54,154.154 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:34:54,346.346 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:34:54,362.362 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:34:54,502.502 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:34:54,514.514 INFO    ] time= 31/08/2026 19:34:54
[2026-08-31 19:34:54,523.523 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:34:54,580.580 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:34:54,700.700 INFO    ] No existing commands found in stream
[2026-08-31 19:34:59,725.725 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:34:59,728.728 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-08-31 19:35:02,582.582 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 19:35:02,585.585 INFO    ] Checking for system updates...
[2026-08-31 19:35:02,639.639 INFO    ] 200
[2026-08-31 19:35:02,642.642 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-08-31 19:35:02,645.645 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-08-31 19:35:02,648.648 INFO    ] Checking for camera pi updates...
[2026-08-31 19:35:02,718.718 INFO    ] 200
[2026-08-31 19:35:02,721.721 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-08-31 19:35:02,724.724 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-08-31 19:35:02,736.736 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:35:02,739.739 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:35:02,745.745 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:35:02,755.755 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:35:04,803.803 INFO    ] ================================================
[2026-08-31 19:35:04,821.821 INFO    ] Launching Daemon at Mon Aug 31 19:35:04 IST 2026
[2026-08-31 19:35:04,832.832 INFO    ] ================================================
[2026-08-31 19:35:05,410.410 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:35:05
[2026-08-31 19:35:06,009.009 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:35:06,282.282 INFO    ] Initializing speech engine...
[2026-08-31 19:35:06,295.295 INFO    ] 2026-08-31 19:35:06
[2026-08-31 19:35:06,546.546 INFO    ] 2026-08-31 19:35:06
[2026-08-31 19:35:06,611.611 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:35:06,857.857 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:35:06,869.869 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:35:07,088.088 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:35:07,127.127 INFO    ] time= 31/08/2026 19:35:07
[2026-08-31 19:35:07,133.133 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:35:07,151.151 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:35:07,273.273 INFO    ] No existing commands found in stream
[2026-08-31 19:35:12,295.295 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:35:12,298.298 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-08-31 19:35:15,444.444 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 19:35:15,447.447 INFO    ] Checking for system updates...
[2026-08-31 19:35:15,483.483 INFO    ] 200
[2026-08-31 19:35:15,485.485 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:35:15,543.543 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:35:15,545.545 INFO    ] No update needed
[2026-08-31 19:35:15,548.548 INFO    ] Checking for camera pi updates...
[2026-08-31 19:35:15,583.583 INFO    ] 200
[2026-08-31 19:35:15,586.586 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:35:15,630.630 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:35:15,717.717 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:35:15,720.720 INFO    ] No camera update needed
[2026-08-31 19:35:15,722.722 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:35:15,724.724 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:35:15,730.730 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:35:15,735.735 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:35:17,776.776 INFO    ] ================================================
[2026-08-31 19:35:17,792.792 INFO    ] Launching Daemon at Mon Aug 31 19:35:17 IST 2026
[2026-08-31 19:35:17,803.803 INFO    ] ================================================
[2026-08-31 19:35:18,376.376 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:35:18
[2026-08-31 19:35:18,965.965 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:35:19,216.216 INFO    ] Initializing speech engine...
[2026-08-31 19:35:19,229.229 INFO    ] 2026-08-31 19:35:19
[2026-08-31 19:35:19,496.496 INFO    ] 2026-08-31 19:35:19
[2026-08-31 19:35:19,531.531 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:35:19,729.729 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:35:19,756.756 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:35:19,934.934 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:35:19,977.977 INFO    ] time= 31/08/2026 19:35:19
[2026-08-31 19:35:20,036.036 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:35:20,071.071 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:35:20,201.201 INFO    ] No existing commands found in stream
[2026-08-31 19:35:25,226.226 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:35:25,229.229 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-08-31 19:35:26,899.899 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 19:35:26,902.902 INFO    ] Checking for system updates...
[2026-08-31 19:35:26,939.939 INFO    ] 200
[2026-08-31 19:35:26,942.942 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:35:27,002.002 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:35:27,005.005 INFO    ] No update needed
[2026-08-31 19:35:27,008.008 INFO    ] Checking for camera pi updates...
[2026-08-31 19:35:27,046.046 INFO    ] 200
[2026-08-31 19:35:27,049.049 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:35:27,100.100 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:35:27,185.185 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:35:27,187.187 INFO    ] No camera update needed
[2026-08-31 19:35:27,190.190 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:35:27,192.192 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:35:27,197.197 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:35:27,202.202 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:35:29,244.244 INFO    ] ================================================
[2026-08-31 19:35:29,260.260 INFO    ] Launching Daemon at Mon Aug 31 19:35:29 IST 2026
[2026-08-31 19:35:29,271.271 INFO    ] ================================================
[2026-08-31 19:35:29,864.864 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:35:29
[2026-08-31 19:35:30,532.532 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:35:30,831.831 INFO    ] Initializing speech engine...
[2026-08-31 19:35:30,840.840 INFO    ] 2026-08-31 19:35:30
[2026-08-31 19:35:31,112.112 INFO    ] 2026-08-31 19:35:31
[2026-08-31 19:35:31,166.166 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:35:31,394.394 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:35:31,403.403 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:35:31,542.542 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:35:31,588.588 INFO    ] time= 31/08/2026 19:35:31
[2026-08-31 19:35:31,643.643 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:35:31,681.681 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:35:31,847.847 INFO    ] No existing commands found in stream
[2026-08-31 19:35:36,864.864 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:35:36,867.867 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-08-31 19:35:39,329.329 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 19:35:39,331.331 INFO    ] Checking for system updates...
[2026-08-31 19:35:39,368.368 INFO    ] 200
[2026-08-31 19:35:39,370.370 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:35:39,428.428 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:35:39,430.430 INFO    ] No update needed
[2026-08-31 19:35:39,432.432 INFO    ] Checking for camera pi updates...
[2026-08-31 19:35:39,467.467 INFO    ] 200
[2026-08-31 19:35:39,470.470 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:35:39,514.514 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:35:39,598.598 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:35:39,601.601 INFO    ] No camera update needed
[2026-08-31 19:35:39,603.603 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:35:39,606.606 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:35:39,612.612 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:35:39,618.618 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:35:41,659.659 INFO    ] ================================================
[2026-08-31 19:35:41,675.675 INFO    ] Launching Daemon at Mon Aug 31 19:35:41 IST 2026
[2026-08-31 19:35:41,686.686 INFO    ] ================================================
[2026-08-31 19:35:42,323.323 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:35:42
[2026-08-31 19:35:42,973.973 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:35:43,275.275 INFO    ] Initializing speech engine...
[2026-08-31 19:35:43,287.287 INFO    ] 2026-08-31 19:35:43
[2026-08-31 19:35:43,554.554 INFO    ] 2026-08-31 19:35:43
[2026-08-31 19:35:43,608.608 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:35:43,895.895 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:35:43,904.904 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:35:44,105.105 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:35:44,121.121 INFO    ] time= 31/08/2026 19:35:44
[2026-08-31 19:35:44,129.129 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:35:44,159.159 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:35:44,268.268 INFO    ] No existing commands found in stream
[2026-08-31 19:35:49,289.289 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:35:49,292.292 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-08-31 19:35:52,304.304 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 19:35:52,307.307 INFO    ] Checking for system updates...
[2026-08-31 19:35:52,343.343 INFO    ] 200
[2026-08-31 19:35:52,346.346 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:35:52,399.399 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:35:52,402.402 INFO    ] No update needed
[2026-08-31 19:35:52,405.405 INFO    ] Checking for camera pi updates...
[2026-08-31 19:35:52,442.442 INFO    ] 200
[2026-08-31 19:35:52,444.444 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:35:52,486.486 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:35:52,588.588 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:35:52,591.591 INFO    ] No camera update needed
[2026-08-31 19:35:52,594.594 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:35:52,596.596 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:35:52,603.603 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:35:52,608.608 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:35:54,649.649 INFO    ] ================================================
[2026-08-31 19:35:54,665.665 INFO    ] Launching Daemon at Mon Aug 31 19:35:54 IST 2026
[2026-08-31 19:35:54,676.676 INFO    ] ================================================
[2026-08-31 19:35:55,354.354 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:35:55
[2026-08-31 19:35:56,058.058 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:35:56,390.390 INFO    ] Initializing speech engine...
[2026-08-31 19:35:56,403.403 INFO    ] 2026-08-31 19:35:56
[2026-08-31 19:35:56,676.676 INFO    ] 2026-08-31 19:35:56
[2026-08-31 19:35:56,743.743 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:35:56,926.926 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:35:56,966.966 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:35:57,134.134 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:35:57,199.199 INFO    ] time= 31/08/2026 19:35:57
[2026-08-31 19:35:57,259.259 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:35:57,272.272 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:35:57,416.416 INFO    ] No existing commands found in stream
[2026-08-31 19:36:02,434.434 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:36:02,438.438 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-08-31 19:36:05,778.778 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 19:36:05,781.781 INFO    ] Checking for system updates...
[2026-08-31 19:36:05,819.819 INFO    ] 200
[2026-08-31 19:36:05,822.822 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:36:05,876.876 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:36:05,878.878 INFO    ] No update needed
[2026-08-31 19:36:05,885.885 INFO    ] Checking for camera pi updates...
[2026-08-31 19:36:05,919.919 INFO    ] 200
[2026-08-31 19:36:05,921.921 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:36:05,966.966 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:36:06,043.043 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:36:06,046.046 INFO    ] No camera update needed
[2026-08-31 19:36:06,048.048 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:36:06,051.051 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:36:06,056.056 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:36:06,061.061 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:36:08,101.101 INFO    ] ================================================
[2026-08-31 19:36:08,116.116 INFO    ] Launching Daemon at Mon Aug 31 19:36:08 IST 2026
[2026-08-31 19:36:08,128.128 INFO    ] ================================================
[2026-08-31 19:36:08,712.712 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:36:08
[2026-08-31 19:36:09,310.310 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:36:09,583.583 INFO    ] Initializing speech engine...
[2026-08-31 19:36:09,595.595 INFO    ] 2026-08-31 19:36:09
[2026-08-31 19:36:09,849.849 INFO    ] 2026-08-31 19:36:09
[2026-08-31 19:36:09,886.886 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:36:10,079.079 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:36:10,091.091 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:36:10,249.249 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:36:10,258.258 INFO    ] time= 31/08/2026 19:36:10
[2026-08-31 19:36:10,264.264 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:36:10,292.292 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:36:10,443.443 INFO    ] No existing commands found in stream
[2026-08-31 19:36:15,469.469 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:36:15,472.472 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-08-31 19:36:18,417.417 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 19:36:18,420.420 INFO    ] Checking for system updates...
[2026-08-31 19:36:18,456.456 INFO    ] 200
[2026-08-31 19:36:18,459.459 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:36:18,513.513 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:36:18,515.515 INFO    ] No update needed
[2026-08-31 19:36:18,518.518 INFO    ] Checking for camera pi updates...
[2026-08-31 19:36:18,552.552 INFO    ] 200
[2026-08-31 19:36:18,555.555 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:36:18,595.595 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:36:18,678.678 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:36:18,681.681 INFO    ] No camera update needed
[2026-08-31 19:36:18,684.684 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:36:18,686.686 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:36:18,692.692 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:36:18,698.698 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:36:20,739.739 INFO    ] ================================================
[2026-08-31 19:36:20,755.755 INFO    ] Launching Daemon at Mon Aug 31 19:36:20 IST 2026
[2026-08-31 19:36:20,766.766 INFO    ] ================================================
[2026-08-31 19:36:21,393.393 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:36:21
[2026-08-31 19:36:22,042.042 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:36:22,336.336 INFO    ] Initializing speech engine...
[2026-08-31 19:36:22,343.343 INFO    ] 2026-08-31 19:36:22
[2026-08-31 19:36:22,618.618 INFO    ] 2026-08-31 19:36:22
[2026-08-31 19:36:22,672.672 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:36:22,897.897 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:36:22,902.902 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:36:23,111.111 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:36:23,165.165 INFO    ] time= 31/08/2026 19:36:23
[2026-08-31 19:36:23,172.172 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:36:23,191.191 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:36:23,322.322 INFO    ] No existing commands found in stream
[2026-08-31 19:36:28,338.338 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:36:28,341.341 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-08-31 19:36:31,014.014 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 19:36:31,017.017 INFO    ] Checking for system updates...
[2026-08-31 19:36:31,053.053 INFO    ] 200
[2026-08-31 19:36:31,056.056 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:36:31,111.111 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:36:31,114.114 INFO    ] No update needed
[2026-08-31 19:36:31,116.116 INFO    ] Checking for camera pi updates...
[2026-08-31 19:36:31,149.149 INFO    ] 200
[2026-08-31 19:36:31,152.152 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:36:31,196.196 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:36:31,285.285 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:36:31,287.287 INFO    ] No camera update needed
[2026-08-31 19:36:31,290.290 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:36:31,292.292 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:36:31,298.298 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:36:31,303.303 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:36:33,344.344 INFO    ] ================================================
[2026-08-31 19:36:33,359.359 INFO    ] Launching Daemon at Mon Aug 31 19:36:33 IST 2026
[2026-08-31 19:36:33,370.370 INFO    ] ================================================
[2026-08-31 19:36:34,006.006 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:36:34
[2026-08-31 19:36:34,657.657 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:36:34,939.939 INFO    ] Initializing speech engine...
[2026-08-31 19:36:34,958.958 INFO    ] 2026-08-31 19:36:34
[2026-08-31 19:36:35,218.218 INFO    ] 2026-08-31 19:36:35
[2026-08-31 19:36:35,285.285 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:36:35,509.509 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:36:35,520.520 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:36:35,659.659 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:36:35,730.730 INFO    ] time= 31/08/2026 19:36:35
[2026-08-31 19:36:35,790.790 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:36:35,798.798 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:36:35,922.922 INFO    ] No existing commands found in stream
[2026-08-31 19:36:40,948.948 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:36:40,951.951 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-08-31 19:36:42,139.139 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 19:36:42,142.142 INFO    ] Checking for system updates...
[2026-08-31 19:36:42,178.178 INFO    ] 200
[2026-08-31 19:36:42,181.181 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:36:42,233.233 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:36:42,236.236 INFO    ] No update needed
[2026-08-31 19:36:42,239.239 INFO    ] Checking for camera pi updates...
[2026-08-31 19:36:42,274.274 INFO    ] 200
[2026-08-31 19:36:42,276.276 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:36:42,318.318 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:36:42,399.399 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:36:42,402.402 INFO    ] No camera update needed
[2026-08-31 19:36:42,405.405 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:36:42,407.407 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:36:42,413.413 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:36:42,419.419 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:36:44,460.460 INFO    ] ================================================
[2026-08-31 19:36:44,475.475 INFO    ] Launching Daemon at Mon Aug 31 19:36:44 IST 2026
[2026-08-31 19:36:44,486.486 INFO    ] ================================================
[2026-08-31 19:36:45,129.129 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:36:45
[2026-08-31 19:36:45,786.786 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:36:46,089.089 INFO    ] Initializing speech engine...
[2026-08-31 19:36:46,101.101 INFO    ] 2026-08-31 19:36:46
[2026-08-31 19:36:46,379.379 INFO    ] 2026-08-31 19:36:46
[2026-08-31 19:36:46,424.424 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:36:46,680.680 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:36:46,684.684 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:36:46,883.883 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:36:46,925.925 INFO    ] time= 31/08/2026 19:36:46
[2026-08-31 19:36:46,932.932 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:36:46,953.953 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:36:47,083.083 INFO    ] No existing commands found in stream
[2026-08-31 19:36:52,098.098 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:36:52,101.101 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-08-31 19:36:53,258.258 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 19:36:53,261.261 INFO    ] Checking for system updates...
[2026-08-31 19:36:53,298.298 INFO    ] 200
[2026-08-31 19:36:53,300.300 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:36:53,352.352 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:36:53,355.355 INFO    ] No update needed
[2026-08-31 19:36:53,357.357 INFO    ] Checking for camera pi updates...
[2026-08-31 19:36:53,391.391 INFO    ] 200
[2026-08-31 19:36:53,393.393 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:36:53,433.433 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:36:53,614.614 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:36:53,617.617 INFO    ] No camera update needed
[2026-08-31 19:36:53,619.619 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:36:53,622.622 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:36:53,627.627 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:36:53,632.632 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:36:55,673.673 INFO    ] ================================================
[2026-08-31 19:36:55,688.688 INFO    ] Launching Daemon at Mon Aug 31 19:36:55 IST 2026
[2026-08-31 19:36:55,699.699 INFO    ] ================================================
[2026-08-31 19:36:56,329.329 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:36:56
[2026-08-31 19:36:56,913.913 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:36:57,184.184 INFO    ] Initializing speech engine...
[2026-08-31 19:36:57,190.190 INFO    ] 2026-08-31 19:36:57
[2026-08-31 19:36:57,440.440 INFO    ] 2026-08-31 19:36:57
[2026-08-31 19:36:57,500.500 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:36:57,725.725 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:36:57,729.729 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:36:57,863.863 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:36:57,902.902 INFO    ] time= 31/08/2026 19:36:57
[2026-08-31 19:36:57,976.976 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:36:57,993.993 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:36:58,125.125 INFO    ] No existing commands found in stream
[2026-08-31 19:37:03,150.150 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:37:03,153.153 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-08-31 19:37:07,219.219 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 19:37:07,221.221 INFO    ] Checking for system updates...
[2026-08-31 19:37:07,257.257 INFO    ] 200
[2026-08-31 19:37:07,259.259 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:37:07,315.315 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:37:07,318.318 INFO    ] No update needed
[2026-08-31 19:37:07,321.321 INFO    ] Checking for camera pi updates...
[2026-08-31 19:37:07,357.357 INFO    ] 200
[2026-08-31 19:37:07,360.360 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:37:07,404.404 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:37:07,490.490 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:37:07,493.493 INFO    ] No camera update needed
[2026-08-31 19:37:07,495.495 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:37:07,497.497 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:37:07,502.502 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:37:07,507.507 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:37:09,548.548 INFO    ] ================================================
[2026-08-31 19:37:09,564.564 INFO    ] Launching Daemon at Mon Aug 31 19:37:09 IST 2026
[2026-08-31 19:37:09,574.574 INFO    ] ================================================
[2026-08-31 19:37:10,155.155 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:37:10
[2026-08-31 19:37:10,754.754 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:37:11,020.020 INFO    ] Initializing speech engine...
[2026-08-31 19:37:11,045.045 INFO    ] 2026-08-31 19:37:11
[2026-08-31 19:37:11,323.323 INFO    ] 2026-08-31 19:37:11
[2026-08-31 19:37:11,358.358 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:37:11,557.557 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:37:11,571.571 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:37:11,734.734 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:37:11,742.742 INFO    ] time= 31/08/2026 19:37:11
[2026-08-31 19:37:11,747.747 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:37:11,753.753 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:37:11,875.875 INFO    ] No existing commands found in stream
[2026-08-31 19:37:16,906.906 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:37:16,909.909 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-08-31 19:37:17,454.454 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 19:37:17,456.456 INFO    ] Checking for system updates...
[2026-08-31 19:37:17,492.492 INFO    ] 200
[2026-08-31 19:37:17,494.494 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:37:17,547.547 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:37:17,550.550 INFO    ] No update needed
[2026-08-31 19:37:17,553.553 INFO    ] Checking for camera pi updates...
[2026-08-31 19:37:17,586.586 INFO    ] 200
[2026-08-31 19:37:17,589.589 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:37:17,635.635 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:37:17,709.709 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:37:17,711.711 INFO    ] No camera update needed
[2026-08-31 19:37:17,714.714 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:37:17,716.716 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:37:17,722.722 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:37:17,727.727 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:37:19,767.767 INFO    ] ================================================
[2026-08-31 19:37:19,782.782 INFO    ] Launching Daemon at Mon Aug 31 19:37:19 IST 2026
[2026-08-31 19:37:19,793.793 INFO    ] ================================================
[2026-08-31 19:37:20,358.358 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:37:20
[2026-08-31 19:37:20,952.952 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:37:21,213.213 INFO    ] Initializing speech engine...
[2026-08-31 19:37:21,231.231 INFO    ] 2026-08-31 19:37:21
[2026-08-31 19:37:21,482.482 INFO    ] 2026-08-31 19:37:21
[2026-08-31 19:37:21,517.517 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:37:21,715.715 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:37:21,722.722 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:37:21,919.919 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:37:21,940.940 INFO    ] time= 31/08/2026 19:37:21
[2026-08-31 19:37:22,008.008 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:37:22,056.056 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:37:22,112.112 INFO    ] No existing commands found in stream
[2026-08-31 19:37:27,123.123 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:37:27,126.126 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-08-31 19:37:31,939.939 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 19:37:31,942.942 INFO    ] Checking for system updates...
[2026-08-31 19:37:31,983.983 INFO    ] 200
[2026-08-31 19:37:31,987.987 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:37:32,046.046 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:37:32,050.050 INFO    ] No update needed
[2026-08-31 19:37:32,053.053 INFO    ] Checking for camera pi updates...
[2026-08-31 19:37:32,090.090 INFO    ] 200
[2026-08-31 19:37:32,094.094 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:37:32,138.138 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:37:32,192.192 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:37:32,195.195 INFO    ] No camera update needed
[2026-08-31 19:37:32,198.198 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:37:32,201.201 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:37:32,207.207 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:37:32,214.214 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:37:34,257.257 INFO    ] ================================================
[2026-08-31 19:37:34,272.272 INFO    ] Launching Daemon at Mon Aug 31 19:37:34 IST 2026
[2026-08-31 19:37:34,283.283 INFO    ] ================================================
[2026-08-31 19:37:34,855.855 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:37:34
[2026-08-31 19:37:35,438.438 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:37:35,686.686 INFO    ] Initializing speech engine...
[2026-08-31 19:37:35,699.699 INFO    ] 2026-08-31 19:37:35
[2026-08-31 19:37:35,967.967 INFO    ] 2026-08-31 19:37:35
[2026-08-31 19:37:36,002.002 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:37:36,260.260 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:37:36,269.269 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:37:36,478.478 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:37:36,532.532 INFO    ] time= 31/08/2026 19:37:36
[2026-08-31 19:37:36,539.539 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:37:36,555.555 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:37:36,687.687 INFO    ] No existing commands found in stream
[2026-08-31 19:37:41,701.701 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:37:41,704.704 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-08-31 19:37:43,814.814 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 19:37:43,817.817 INFO    ] Checking for system updates...
[2026-08-31 19:37:43,856.856 INFO    ] 200
[2026-08-31 19:37:43,859.859 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:37:43,911.911 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:37:43,913.913 INFO    ] No update needed
[2026-08-31 19:37:43,916.916 INFO    ] Checking for camera pi updates...
[2026-08-31 19:37:43,950.950 INFO    ] 200
[2026-08-31 19:37:43,952.952 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:37:43,998.998 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:37:44,085.085 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:37:44,088.088 INFO    ] No camera update needed
[2026-08-31 19:37:44,090.090 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:37:44,093.093 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:37:44,098.098 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:37:44,103.103 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:37:46,144.144 INFO    ] ================================================
[2026-08-31 19:37:46,160.160 INFO    ] Launching Daemon at Mon Aug 31 19:37:46 IST 2026
[2026-08-31 19:37:46,171.171 INFO    ] ================================================
[2026-08-31 19:37:46,751.751 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:37:46
[2026-08-31 19:37:47,349.349 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:37:47,620.620 INFO    ] Initializing speech engine...
[2026-08-31 19:37:47,628.628 INFO    ] 2026-08-31 19:37:47
[2026-08-31 19:37:47,879.879 INFO    ] 2026-08-31 19:37:47
[2026-08-31 19:37:47,914.914 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:37:48,086.086 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:37:48,099.099 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:37:48,305.305 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:37:48,332.332 INFO    ] time= 31/08/2026 19:37:48
[2026-08-31 19:37:48,382.382 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:37:48,438.438 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:37:48,572.572 INFO    ] No existing commands found in stream
[2026-08-31 19:37:53,596.596 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:37:53,599.599 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-08-31 19:37:54,891.891 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 19:37:54,894.894 INFO    ] Checking for system updates...
[2026-08-31 19:37:54,931.931 INFO    ] 200
[2026-08-31 19:37:54,933.933 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:37:54,986.986 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:37:54,988.988 INFO    ] No update needed
[2026-08-31 19:37:54,991.991 INFO    ] Checking for camera pi updates...
[2026-08-31 19:37:55,024.024 INFO    ] 200
[2026-08-31 19:37:55,026.026 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:37:55,067.067 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:37:55,150.150 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:37:55,153.153 INFO    ] No camera update needed
[2026-08-31 19:37:55,155.155 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:37:55,157.157 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:37:55,163.163 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:37:55,168.168 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:37:57,209.209 INFO    ] ================================================
[2026-08-31 19:37:57,225.225 INFO    ] Launching Daemon at Mon Aug 31 19:37:57 IST 2026
[2026-08-31 19:37:57,235.235 INFO    ] ================================================
[2026-08-31 19:37:57,811.811 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:37:57
[2026-08-31 19:37:58,450.450 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:37:58,761.761 INFO    ] Initializing speech engine...
[2026-08-31 19:37:58,773.773 INFO    ] 2026-08-31 19:37:58
[2026-08-31 19:37:59,089.089 INFO    ] 2026-08-31 19:37:59
[2026-08-31 19:37:59,179.179 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:37:59,361.361 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:37:59,382.382 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:37:59,602.602 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:37:59,610.610 INFO    ] time= 31/08/2026 19:37:59
[2026-08-31 19:37:59,629.629 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:37:59,658.658 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:37:59,813.813 INFO    ] No existing commands found in stream
[2026-08-31 19:38:04,844.844 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:38:04,847.847 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-08-31 19:38:07,927.927 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 19:38:07,930.930 INFO    ] Checking for system updates...
[2026-08-31 19:38:07,966.966 INFO    ] 200
[2026-08-31 19:38:07,969.969 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:38:08,022.022 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:38:08,024.024 INFO    ] No update needed
[2026-08-31 19:38:08,027.027 INFO    ] Checking for camera pi updates...
[2026-08-31 19:38:08,061.061 INFO    ] 200
[2026-08-31 19:38:08,064.064 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:38:08,105.105 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:38:08,187.187 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:38:08,190.190 INFO    ] No camera update needed
[2026-08-31 19:38:08,193.193 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:38:08,195.195 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:38:08,201.201 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:38:08,207.207 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:38:10,249.249 INFO    ] ================================================
[2026-08-31 19:38:10,264.264 INFO    ] Launching Daemon at Mon Aug 31 19:38:10 IST 2026
[2026-08-31 19:38:10,275.275 INFO    ] ================================================
[2026-08-31 19:38:10,842.842 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:38:10
[2026-08-31 19:38:11,429.429 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:38:11,681.681 INFO    ] Initializing speech engine...
[2026-08-31 19:38:11,688.688 INFO    ] 2026-08-31 19:38:11
[2026-08-31 19:38:11,982.982 INFO    ] 2026-08-31 19:38:11
[2026-08-31 19:38:12,019.019 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:38:12,213.213 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:38:12,227.227 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:38:12,391.391 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:38:12,396.396 INFO    ] time= 31/08/2026 19:38:12
[2026-08-31 19:38:12,402.402 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:38:12,445.445 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:38:12,580.580 INFO    ] No existing commands found in stream
[2026-08-31 19:38:17,616.616 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:38:17,619.619 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-08-31 19:38:18,998.998 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 19:38:19,000.000 INFO    ] Checking for system updates...
[2026-08-31 19:38:19,036.036 INFO    ] 200
[2026-08-31 19:38:19,039.039 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:38:19,092.092 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:38:19,094.094 INFO    ] No update needed
[2026-08-31 19:38:19,097.097 INFO    ] Checking for camera pi updates...
[2026-08-31 19:38:19,134.134 INFO    ] 200
[2026-08-31 19:38:19,136.136 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:38:19,180.180 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:38:19,264.264 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:38:19,267.267 INFO    ] No camera update needed
[2026-08-31 19:38:19,269.269 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:38:19,271.271 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:38:19,276.276 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:38:19,281.281 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:38:21,324.324 INFO    ] ================================================
[2026-08-31 19:38:21,340.340 INFO    ] Launching Daemon at Mon Aug 31 19:38:21 IST 2026
[2026-08-31 19:38:21,350.350 INFO    ] ================================================
[2026-08-31 19:38:21,931.931 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:38:21
[2026-08-31 19:38:22,528.528 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:38:22,800.800 INFO    ] Initializing speech engine...
[2026-08-31 19:38:22,810.810 INFO    ] 2026-08-31 19:38:22
[2026-08-31 19:38:23,057.057 INFO    ] 2026-08-31 19:38:23
[2026-08-31 19:38:23,121.121 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:38:23,350.350 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:38:23,355.355 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:38:23,558.558 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:38:23,609.609 INFO    ] time= 31/08/2026 19:38:23
[2026-08-31 19:38:23,615.615 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:38:23,633.633 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:38:23,761.761 INFO    ] No existing commands found in stream
[2026-08-31 19:38:28,775.775 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:38:28,778.778 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-08-31 19:38:32,013.013 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 19:38:32,016.016 INFO    ] Checking for system updates...
[2026-08-31 19:38:32,054.054 INFO    ] 200
[2026-08-31 19:38:32,056.056 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:38:32,113.113 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:38:32,115.115 INFO    ] No update needed
[2026-08-31 19:38:32,118.118 INFO    ] Checking for camera pi updates...
[2026-08-31 19:38:32,154.154 INFO    ] 200
[2026-08-31 19:38:32,157.157 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:38:32,200.200 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:38:32,296.296 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:38:32,299.299 INFO    ] No camera update needed
[2026-08-31 19:38:32,302.302 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:38:32,305.305 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:38:32,311.311 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:38:32,317.317 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:38:34,359.359 INFO    ] ================================================
[2026-08-31 19:38:34,374.374 INFO    ] Launching Daemon at Mon Aug 31 19:38:34 IST 2026
[2026-08-31 19:38:34,386.386 INFO    ] ================================================
[2026-08-31 19:38:34,970.970 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:38:34
[2026-08-31 19:38:35,571.571 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:38:35,844.844 INFO    ] Initializing speech engine...
[2026-08-31 19:38:35,860.860 INFO    ] 2026-08-31 19:38:35
[2026-08-31 19:38:36,135.135 INFO    ] 2026-08-31 19:38:36
[2026-08-31 19:38:36,176.176 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:38:36,383.383 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:38:36,400.400 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:38:36,528.528 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:38:36,537.537 INFO    ] time= 31/08/2026 19:38:36
[2026-08-31 19:38:36,545.545 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:38:36,593.593 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:38:36,725.725 INFO    ] No existing commands found in stream
[2026-08-31 19:38:41,747.747 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:38:41,750.750 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-08-31 19:38:46,016.016 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 19:38:46,018.018 INFO    ] Checking for system updates...
[2026-08-31 19:38:46,054.054 INFO    ] 200
[2026-08-31 19:38:46,056.056 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:38:46,115.115 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:38:46,118.118 INFO    ] No update needed
[2026-08-31 19:38:46,120.120 INFO    ] Checking for camera pi updates...
[2026-08-31 19:38:46,155.155 INFO    ] 200
[2026-08-31 19:38:46,158.158 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:38:46,214.214 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:38:46,296.296 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:38:46,299.299 INFO    ] No camera update needed
[2026-08-31 19:38:46,301.301 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:38:46,303.303 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:38:46,309.309 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:38:46,314.314 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:38:48,354.354 INFO    ] ================================================
[2026-08-31 19:38:48,370.370 INFO    ] Launching Daemon at Mon Aug 31 19:38:48 IST 2026
[2026-08-31 19:38:48,381.381 INFO    ] ================================================
[2026-08-31 19:38:49,030.030 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:38:49
[2026-08-31 19:38:49,697.697 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:38:50,001.001 INFO    ] Initializing speech engine...
[2026-08-31 19:38:50,009.009 INFO    ] 2026-08-31 19:38:50
[2026-08-31 19:38:50,289.289 INFO    ] 2026-08-31 19:38:50
[2026-08-31 19:38:50,343.343 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:38:50,575.575 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:38:50,580.580 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:38:50,821.821 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:38:50,848.848 INFO    ] time= 31/08/2026 19:38:50
[2026-08-31 19:38:50,866.866 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:38:50,890.890 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:38:51,011.011 INFO    ] No existing commands found in stream
[2026-08-31 19:38:56,043.043 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:38:56,046.046 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-08-31 19:38:58,177.177 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 19:38:58,180.180 INFO    ] Checking for system updates...
[2026-08-31 19:38:58,221.221 INFO    ] 200
[2026-08-31 19:38:58,224.224 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:38:58,287.287 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:38:58,290.290 INFO    ] No update needed
[2026-08-31 19:38:58,294.294 INFO    ] Checking for camera pi updates...
[2026-08-31 19:38:58,329.329 INFO    ] 200
[2026-08-31 19:38:58,332.332 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:38:58,374.374 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:38:58,551.551 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:38:58,554.554 INFO    ] No camera update needed
[2026-08-31 19:38:58,556.556 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:38:58,559.559 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:38:58,565.565 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:38:58,571.571 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:39:00,612.612 INFO    ] ================================================
[2026-08-31 19:39:00,628.628 INFO    ] Launching Daemon at Mon Aug 31 19:39:00 IST 2026
[2026-08-31 19:39:00,640.640 INFO    ] ================================================
[2026-08-31 19:39:01,208.208 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:39:01
[2026-08-31 19:39:01,926.926 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:39:02,293.293 INFO    ] Initializing speech engine...
[2026-08-31 19:39:02,300.300 INFO    ] 2026-08-31 19:39:02
[2026-08-31 19:39:02,622.622 INFO    ] 2026-08-31 19:39:02
[2026-08-31 19:39:02,707.707 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:39:02,944.944 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:39:02,951.951 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:39:03,132.132 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:39:03,191.191 INFO    ] time= 31/08/2026 19:39:03
[2026-08-31 19:39:03,201.201 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:39:03,223.223 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:39:03,373.373 INFO    ] No existing commands found in stream
[2026-08-31 19:39:08,387.387 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:39:08,390.390 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-08-31 19:39:09,968.968 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 19:39:09,971.971 INFO    ] Checking for system updates...
[2026-08-31 19:39:10,006.006 INFO    ] 200
[2026-08-31 19:39:10,009.009 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:39:10,061.061 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:39:10,064.064 INFO    ] No update needed
[2026-08-31 19:39:10,066.066 INFO    ] Checking for camera pi updates...
[2026-08-31 19:39:10,099.099 INFO    ] 200
[2026-08-31 19:39:10,102.102 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:39:10,142.142 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:39:10,222.222 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:39:10,225.225 INFO    ] No camera update needed
[2026-08-31 19:39:10,227.227 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:39:10,230.230 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:39:10,235.235 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:39:10,240.240 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:39:12,282.282 INFO    ] ================================================
[2026-08-31 19:39:12,298.298 INFO    ] Launching Daemon at Mon Aug 31 19:39:12 IST 2026
[2026-08-31 19:39:12,308.308 INFO    ] ================================================
[2026-08-31 19:39:12,887.887 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:39:12
[2026-08-31 19:39:13,485.485 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:39:13,743.743 INFO    ] Initializing speech engine...
[2026-08-31 19:39:13,749.749 INFO    ] 2026-08-31 19:39:13
[2026-08-31 19:39:14,038.038 INFO    ] 2026-08-31 19:39:14
[2026-08-31 19:39:14,073.073 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:39:14,286.286 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:39:14,339.339 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:39:14,505.505 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:39:14,532.532 INFO    ] time= 31/08/2026 19:39:14
[2026-08-31 19:39:14,596.596 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:39:14,650.650 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:39:14,717.717 INFO    ] No existing commands found in stream
[2026-08-31 19:39:19,747.747 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:39:19,750.750 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-08-31 19:39:22,654.654 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 19:39:22,656.656 INFO    ] Checking for system updates...
[2026-08-31 19:39:22,695.695 INFO    ] 200
[2026-08-31 19:39:22,697.697 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:39:22,750.750 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:39:22,752.752 INFO    ] No update needed
[2026-08-31 19:39:22,755.755 INFO    ] Checking for camera pi updates...
[2026-08-31 19:39:22,789.789 INFO    ] 200
[2026-08-31 19:39:22,791.791 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:39:22,835.835 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:39:22,914.914 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:39:22,917.917 INFO    ] No camera update needed
[2026-08-31 19:39:22,919.919 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:39:22,922.922 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:39:22,927.927 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:39:22,932.932 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:39:24,973.973 INFO    ] ================================================
[2026-08-31 19:39:24,989.989 INFO    ] Launching Daemon at Mon Aug 31 19:39:24 IST 2026
[2026-08-31 19:39:25,000.000 INFO    ] ================================================
[2026-08-31 19:39:25,639.639 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:39:25
[2026-08-31 19:39:26,222.222 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:39:26,477.477 INFO    ] Initializing speech engine...
[2026-08-31 19:39:26,482.482 INFO    ] 2026-08-31 19:39:26
[2026-08-31 19:39:26,777.777 INFO    ] 2026-08-31 19:39:26
[2026-08-31 19:39:26,814.814 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:39:27,030.030 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:39:27,042.042 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:39:27,177.177 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:39:27,185.185 INFO    ] time= 31/08/2026 19:39:27
[2026-08-31 19:39:27,189.189 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:39:27,195.195 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:39:27,266.266 INFO    ] No existing commands found in stream
[2026-08-31 19:39:32,279.279 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:39:32,282.282 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-08-31 19:39:36,209.209 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 19:39:36,211.211 INFO    ] Checking for system updates...
[2026-08-31 19:39:36,247.247 INFO    ] 200
[2026-08-31 19:39:36,250.250 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:39:36,301.301 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:39:36,304.304 INFO    ] No update needed
[2026-08-31 19:39:36,306.306 INFO    ] Checking for camera pi updates...
[2026-08-31 19:39:36,340.340 INFO    ] 200
[2026-08-31 19:39:36,343.343 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:39:36,386.386 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:39:36,466.466 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:39:36,469.469 INFO    ] No camera update needed
[2026-08-31 19:39:36,471.471 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:39:36,474.474 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:39:36,479.479 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:39:36,484.484 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:39:38,524.524 INFO    ] ================================================
[2026-08-31 19:39:38,541.541 INFO    ] Launching Daemon at Mon Aug 31 19:39:38 IST 2026
[2026-08-31 19:39:38,551.551 INFO    ] ================================================
[2026-08-31 19:39:39,133.133 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:39:39
[2026-08-31 19:39:39,729.729 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:39:40,002.002 INFO    ] Initializing speech engine...
[2026-08-31 19:39:40,011.011 INFO    ] 2026-08-31 19:39:40
[2026-08-31 19:39:40,274.274 INFO    ] 2026-08-31 19:39:40
[2026-08-31 19:39:40,329.329 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:39:40,738.738 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:39:40,798.798 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:39:40,927.927 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:39:40,935.935 INFO    ] time= 31/08/2026 19:39:40
[2026-08-31 19:39:40,944.944 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:39:40,980.980 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:39:41,117.117 INFO    ] No existing commands found in stream
[2026-08-31 19:39:46,142.142 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:39:46,145.145 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-08-31 19:39:46,841.841 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 19:39:46,844.844 INFO    ] Checking for system updates...
[2026-08-31 19:39:46,880.880 INFO    ] 200
[2026-08-31 19:39:46,883.883 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:39:46,935.935 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:39:46,938.938 INFO    ] No update needed
[2026-08-31 19:39:46,941.941 INFO    ] Checking for camera pi updates...
[2026-08-31 19:39:46,976.976 INFO    ] 200
[2026-08-31 19:39:46,978.978 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:39:47,019.019 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:39:47,078.078 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:39:47,081.081 INFO    ] No camera update needed
[2026-08-31 19:39:47,083.083 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:39:47,086.086 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:39:47,092.092 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:39:47,098.098 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:39:49,139.139 INFO    ] ================================================
[2026-08-31 19:39:49,154.154 INFO    ] Launching Daemon at Mon Aug 31 19:39:49 IST 2026
[2026-08-31 19:39:49,165.165 INFO    ] ================================================
[2026-08-31 19:39:49,730.730 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:39:49
[2026-08-31 19:39:50,314.314 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:39:50,570.570 INFO    ] Initializing speech engine...
[2026-08-31 19:39:50,585.585 INFO    ] 2026-08-31 19:39:50
[2026-08-31 19:39:50,865.865 INFO    ] 2026-08-31 19:39:50
[2026-08-31 19:39:50,903.903 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:39:51,127.127 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:39:51,192.192 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:39:51,351.351 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:39:51,396.396 INFO    ] time= 31/08/2026 19:39:51
[2026-08-31 19:39:51,434.434 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:39:51,484.484 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:39:51,555.555 INFO    ] No existing commands found in stream
[2026-08-31 19:39:56,568.568 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:39:56,570.570 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-08-31 19:39:57,181.181 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 19:39:57,184.184 INFO    ] Checking for system updates...
[2026-08-31 19:39:57,219.219 INFO    ] 200
[2026-08-31 19:39:57,222.222 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:39:57,281.281 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:39:57,283.283 INFO    ] No update needed
[2026-08-31 19:39:57,286.286 INFO    ] Checking for camera pi updates...
[2026-08-31 19:39:57,319.319 INFO    ] 200
[2026-08-31 19:39:57,321.321 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:39:57,361.361 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:39:57,442.442 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:39:57,444.444 INFO    ] No camera update needed
[2026-08-31 19:39:57,446.446 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:39:57,449.449 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:39:57,454.454 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:39:57,459.459 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:39:59,501.501 INFO    ] ================================================
[2026-08-31 19:39:59,516.516 INFO    ] Launching Daemon at Mon Aug 31 19:39:59 IST 2026
[2026-08-31 19:39:59,527.527 INFO    ] ================================================
[2026-08-31 19:40:00,188.188 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:40:00
[2026-08-31 19:40:00,870.870 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:40:01,178.178 INFO    ] Initializing speech engine...
[2026-08-31 19:40:01,192.192 INFO    ] 2026-08-31 19:40:01
[2026-08-31 19:40:01,469.469 INFO    ] 2026-08-31 19:40:01
[2026-08-31 19:40:01,524.524 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:40:01,817.817 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:40:01,822.822 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:40:02,101.101 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:40:02,137.137 INFO    ] time= 31/08/2026 19:40:02
[2026-08-31 19:40:02,152.152 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:40:02,177.177 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:40:02,255.255 INFO    ] No existing commands found in stream
[2026-08-31 19:40:07,356.356 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:40:07,359.359 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-08-31 19:40:08,804.804 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 19:40:08,807.807 INFO    ] Checking for system updates...
[2026-08-31 19:40:08,849.849 INFO    ] 200
[2026-08-31 19:40:08,852.852 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:40:08,917.917 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:40:08,920.920 INFO    ] No update needed
[2026-08-31 19:40:08,923.923 INFO    ] Checking for camera pi updates...
[2026-08-31 19:40:08,958.958 INFO    ] 200
[2026-08-31 19:40:08,961.961 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:40:09,001.001 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:40:09,101.101 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:40:09,104.104 INFO    ] No camera update needed
[2026-08-31 19:40:09,107.107 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:40:09,109.109 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:40:09,116.116 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:40:09,121.121 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:40:11,162.162 INFO    ] ================================================
[2026-08-31 19:40:11,178.178 INFO    ] Launching Daemon at Mon Aug 31 19:40:11 IST 2026
[2026-08-31 19:40:11,188.188 INFO    ] ================================================
[2026-08-31 19:40:11,846.846 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:40:11
[2026-08-31 19:40:12,522.522 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:40:12,830.830 INFO    ] Initializing speech engine...
[2026-08-31 19:40:12,843.843 INFO    ] 2026-08-31 19:40:12
[2026-08-31 19:40:13,127.127 INFO    ] 2026-08-31 19:40:13
[2026-08-31 19:40:13,174.174 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:40:13,463.463 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:40:13,472.472 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:40:13,673.673 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:40:13,691.691 INFO    ] time= 31/08/2026 19:40:13
[2026-08-31 19:40:13,702.702 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:40:13,732.732 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:40:13,850.850 INFO    ] No existing commands found in stream
[2026-08-31 19:40:18,880.880 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:40:18,884.884 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-08-31 19:40:20,912.912 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 19:40:20,916.916 INFO    ] Checking for system updates...
[2026-08-31 19:40:20,953.953 INFO    ] 200
[2026-08-31 19:40:20,956.956 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:40:21,009.009 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:40:21,012.012 INFO    ] No update needed
[2026-08-31 19:40:21,015.015 INFO    ] Checking for camera pi updates...
[2026-08-31 19:40:21,054.054 INFO    ] 200
[2026-08-31 19:40:21,056.056 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:40:21,105.105 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:40:21,186.186 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:40:21,188.188 INFO    ] No camera update needed
[2026-08-31 19:40:21,191.191 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:40:21,193.193 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:40:21,198.198 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:40:21,203.203 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:40:23,244.244 INFO    ] ================================================
[2026-08-31 19:40:23,260.260 INFO    ] Launching Daemon at Mon Aug 31 19:40:23 IST 2026
[2026-08-31 19:40:23,271.271 INFO    ] ================================================
[2026-08-31 19:40:23,836.836 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:40:23
[2026-08-31 19:40:24,419.419 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:40:24,677.677 INFO    ] Initializing speech engine...
[2026-08-31 19:40:24,684.684 INFO    ] 2026-08-31 19:40:24
[2026-08-31 19:40:24,982.982 INFO    ] 2026-08-31 19:40:24
[2026-08-31 19:40:25,008.008 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:40:25,224.224 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:40:25,239.239 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:40:25,367.367 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:40:25,389.389 INFO    ] time= 31/08/2026 19:40:25
[2026-08-31 19:40:25,411.411 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:40:25,418.418 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:40:25,497.497 INFO    ] No existing commands found in stream
[2026-08-31 19:40:30,509.509 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:40:30,512.512 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-08-31 19:40:34,489.489 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 19:40:34,491.491 INFO    ] Checking for system updates...
[2026-08-31 19:40:34,527.527 INFO    ] 200
[2026-08-31 19:40:34,530.530 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:40:34,589.589 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:40:34,591.591 INFO    ] No update needed
[2026-08-31 19:40:34,594.594 INFO    ] Checking for camera pi updates...
[2026-08-31 19:40:34,628.628 INFO    ] 200
[2026-08-31 19:40:34,631.631 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:40:34,671.671 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:40:34,762.762 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:40:34,764.764 INFO    ] No camera update needed
[2026-08-31 19:40:34,767.767 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:40:34,769.769 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:40:34,774.774 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:40:34,779.779 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:40:36,820.820 INFO    ] ================================================
[2026-08-31 19:40:36,836.836 INFO    ] Launching Daemon at Mon Aug 31 19:40:36 IST 2026
[2026-08-31 19:40:36,847.847 INFO    ] ================================================
[2026-08-31 19:40:37,431.431 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:40:37
[2026-08-31 19:40:38,033.033 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:40:38,306.306 INFO    ] Initializing speech engine...
[2026-08-31 19:40:38,315.315 INFO    ] 2026-08-31 19:40:38
[2026-08-31 19:40:38,564.564 INFO    ] 2026-08-31 19:40:38
[2026-08-31 19:40:38,600.600 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:40:38,843.843 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:40:38,854.854 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:40:38,994.994 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:40:39,033.033 INFO    ] time= 31/08/2026 19:40:38
[2026-08-31 19:40:39,098.098 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:40:39,124.124 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:40:39,247.247 INFO    ] No existing commands found in stream
[2026-08-31 19:40:44,277.277 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:40:44,280.280 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-08-31 19:40:48,178.178 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 19:40:48,181.181 INFO    ] Checking for system updates...
[2026-08-31 19:40:48,216.216 INFO    ] 200
[2026-08-31 19:40:48,219.219 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:40:48,277.277 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:40:48,279.279 INFO    ] No update needed
[2026-08-31 19:40:48,282.282 INFO    ] Checking for camera pi updates...
[2026-08-31 19:40:48,315.315 INFO    ] 200
[2026-08-31 19:40:48,317.317 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:40:48,358.358 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:40:48,439.439 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:40:48,441.441 INFO    ] No camera update needed
[2026-08-31 19:40:48,444.444 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:40:48,446.446 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:40:48,451.451 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:40:48,456.456 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:40:50,497.497 INFO    ] ================================================
[2026-08-31 19:40:50,512.512 INFO    ] Launching Daemon at Mon Aug 31 19:40:50 IST 2026
[2026-08-31 19:40:50,523.523 INFO    ] ================================================
[2026-08-31 19:40:51,086.086 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:40:51
[2026-08-31 19:40:51,669.669 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:40:51,921.921 INFO    ] Initializing speech engine...
[2026-08-31 19:40:51,929.929 INFO    ] 2026-08-31 19:40:51
[2026-08-31 19:40:52,208.208 INFO    ] 2026-08-31 19:40:52
[2026-08-31 19:40:52,243.243 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:40:52,488.488 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:40:52,506.506 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:40:52,647.647 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:40:52,694.694 INFO    ] time= 31/08/2026 19:40:52
[2026-08-31 19:40:52,753.753 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:40:52,783.783 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:40:52,903.903 INFO    ] No existing commands found in stream
[2026-08-31 19:40:57,925.925 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:40:57,928.928 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-08-31 19:41:01,724.724 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 19:41:01,727.727 INFO    ] Checking for system updates...
[2026-08-31 19:41:01,763.763 INFO    ] 200
[2026-08-31 19:41:01,765.765 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:41:01,833.833 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:41:01,835.835 INFO    ] No update needed
[2026-08-31 19:41:01,837.837 INFO    ] Checking for camera pi updates...
[2026-08-31 19:41:01,870.870 INFO    ] 200
[2026-08-31 19:41:01,873.873 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:41:01,924.924 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:41:02,091.091 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:41:02,095.095 INFO    ] No camera update needed
[2026-08-31 19:41:02,107.107 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:41:02,111.111 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:41:02,118.118 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:41:02,126.126 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:41:04,172.172 INFO    ] ================================================
[2026-08-31 19:41:04,187.187 INFO    ] Launching Daemon at Mon Aug 31 19:41:04 IST 2026
[2026-08-31 19:41:04,198.198 INFO    ] ================================================
[2026-08-31 19:41:04,784.784 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:41:04
[2026-08-31 19:41:05,388.388 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:41:05,649.649 INFO    ] Initializing speech engine...
[2026-08-31 19:41:05,658.658 INFO    ] 2026-08-31 19:41:05
[2026-08-31 19:41:05,960.960 INFO    ] 2026-08-31 19:41:05
[2026-08-31 19:41:05,995.995 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:41:06,200.200 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:41:06,224.224 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:41:06,376.376 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:41:06,385.385 INFO    ] time= 31/08/2026 19:41:06
[2026-08-31 19:41:06,389.389 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:41:06,395.395 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:41:06,472.472 INFO    ] No existing commands found in stream
[2026-08-31 19:41:11,508.508 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:41:11,511.511 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-08-31 19:41:14,582.582 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 19:41:14,585.585 INFO    ] Checking for system updates...
[2026-08-31 19:41:14,624.624 INFO    ] 200
[2026-08-31 19:41:14,627.627 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:41:14,680.680 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:41:14,683.683 INFO    ] No update needed
[2026-08-31 19:41:14,686.686 INFO    ] Checking for camera pi updates...
[2026-08-31 19:41:14,720.720 INFO    ] 200
[2026-08-31 19:41:14,723.723 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:41:14,763.763 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:41:14,848.848 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:41:14,851.851 INFO    ] No camera update needed
[2026-08-31 19:41:14,853.853 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:41:14,856.856 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:41:14,861.861 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:41:14,866.866 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:41:16,906.906 INFO    ] ================================================
[2026-08-31 19:41:16,921.921 INFO    ] Launching Daemon at Mon Aug 31 19:41:16 IST 2026
[2026-08-31 19:41:16,932.932 INFO    ] ================================================
[2026-08-31 19:41:17,516.516 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:41:17
[2026-08-31 19:41:18,112.112 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:41:18,387.387 INFO    ] Initializing speech engine...
[2026-08-31 19:41:18,393.393 INFO    ] 2026-08-31 19:41:18
[2026-08-31 19:41:18,647.647 INFO    ] 2026-08-31 19:41:18
[2026-08-31 19:41:18,707.707 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:41:18,978.978 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:41:18,996.996 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:41:19,191.191 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:41:19,198.198 INFO    ] time= 31/08/2026 19:41:19
[2026-08-31 19:41:19,215.215 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:41:19,243.243 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:41:19,351.351 INFO    ] No existing commands found in stream
[2026-08-31 19:41:24,375.375 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:41:24,378.378 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-08-31 19:41:25,743.743 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 19:41:25,746.746 INFO    ] Checking for system updates...
[2026-08-31 19:41:25,787.787 INFO    ] 200
[2026-08-31 19:41:25,790.790 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:41:25,842.842 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:41:25,845.845 INFO    ] No update needed
[2026-08-31 19:41:25,847.847 INFO    ] Checking for camera pi updates...
[2026-08-31 19:41:25,881.881 INFO    ] 200
[2026-08-31 19:41:25,884.884 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:41:25,924.924 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:41:26,006.006 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:41:26,009.009 INFO    ] No camera update needed
[2026-08-31 19:41:26,011.011 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:41:26,014.014 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:41:26,019.019 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:41:26,024.024 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:41:28,063.063 INFO    ] ================================================
[2026-08-31 19:41:28,079.079 INFO    ] Launching Daemon at Mon Aug 31 19:41:28 IST 2026
[2026-08-31 19:41:28,089.089 INFO    ] ================================================
[2026-08-31 19:41:28,736.736 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:41:28
[2026-08-31 19:41:29,374.374 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:41:29,652.652 INFO    ] Initializing speech engine...
[2026-08-31 19:41:29,659.659 INFO    ] 2026-08-31 19:41:29
[2026-08-31 19:41:29,936.936 INFO    ] 2026-08-31 19:41:29
[2026-08-31 19:41:29,978.978 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:41:30,197.197 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:41:30,206.206 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:41:30,341.341 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:41:30,385.385 INFO    ] time= 31/08/2026 19:41:30
[2026-08-31 19:41:30,450.450 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:41:30,474.474 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:41:30,528.528 INFO    ] No existing commands found in stream
[2026-08-31 19:41:35,540.540 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:41:35,543.543 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-08-31 19:41:38,738.738 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 19:41:38,741.741 INFO    ] Checking for system updates...
[2026-08-31 19:41:38,777.777 INFO    ] 200
[2026-08-31 19:41:38,780.780 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:41:38,832.832 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:41:38,835.835 INFO    ] No update needed
[2026-08-31 19:41:38,837.837 INFO    ] Checking for camera pi updates...
[2026-08-31 19:41:38,871.871 INFO    ] 200
[2026-08-31 19:41:38,874.874 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:41:38,915.915 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:41:39,013.013 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:41:39,016.016 INFO    ] No camera update needed
[2026-08-31 19:41:39,018.018 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:41:39,021.021 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:41:39,026.026 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:41:39,031.031 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:41:41,073.073 INFO    ] ================================================
[2026-08-31 19:41:41,088.088 INFO    ] Launching Daemon at Mon Aug 31 19:41:41 IST 2026
[2026-08-31 19:41:41,099.099 INFO    ] ================================================
[2026-08-31 19:41:41,676.676 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:41:41
[2026-08-31 19:41:42,274.274 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:41:42,551.551 INFO    ] Initializing speech engine...
[2026-08-31 19:41:42,559.559 INFO    ] 2026-08-31 19:41:42
[2026-08-31 19:41:42,817.817 INFO    ] 2026-08-31 19:41:42
[2026-08-31 19:41:42,870.870 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:41:43,092.092 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:41:43,101.101 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:41:43,235.235 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:41:43,305.305 INFO    ] time= 31/08/2026 19:41:43
[2026-08-31 19:41:43,359.359 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:41:43,368.368 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:41:43,503.503 INFO    ] No existing commands found in stream
[2026-08-31 19:41:48,523.523 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:41:48,526.526 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-08-31 19:41:51,277.277 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 19:41:51,281.281 INFO    ] Checking for system updates...
[2026-08-31 19:41:51,317.317 INFO    ] 200
[2026-08-31 19:41:51,320.320 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:41:51,380.380 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:41:51,383.383 INFO    ] No update needed
[2026-08-31 19:41:51,385.385 INFO    ] Checking for camera pi updates...
[2026-08-31 19:41:51,418.418 INFO    ] 200
[2026-08-31 19:41:51,421.421 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:41:51,469.469 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:41:51,519.519 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:41:51,522.522 INFO    ] No camera update needed
[2026-08-31 19:41:51,524.524 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:41:51,526.526 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:41:51,532.532 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:41:51,537.537 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:41:53,578.578 INFO    ] ================================================
[2026-08-31 19:41:53,593.593 INFO    ] Launching Daemon at Mon Aug 31 19:41:53 IST 2026
[2026-08-31 19:41:53,604.604 INFO    ] ================================================
[2026-08-31 19:41:54,169.169 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:41:54
[2026-08-31 19:41:54,750.750 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:41:54,997.997 INFO    ] Initializing speech engine...
[2026-08-31 19:41:55,011.011 INFO    ] 2026-08-31 19:41:55
[2026-08-31 19:41:55,276.276 INFO    ] 2026-08-31 19:41:55
[2026-08-31 19:41:55,310.310 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:41:55,494.494 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:41:55,511.511 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:41:55,644.644 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:41:55,649.649 INFO    ] time= 31/08/2026 19:41:55
[2026-08-31 19:41:55,657.657 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:41:55,696.696 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:41:55,812.812 INFO    ] No existing commands found in stream
[2026-08-31 19:42:00,842.842 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:42:00,845.845 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-08-31 19:42:02,333.333 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 19:42:02,336.336 INFO    ] Checking for system updates...
[2026-08-31 19:42:02,380.380 INFO    ] 200
[2026-08-31 19:42:02,382.382 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:42:02,452.452 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:42:02,455.455 INFO    ] No update needed
[2026-08-31 19:42:02,458.458 INFO    ] Checking for camera pi updates...
[2026-08-31 19:42:02,495.495 INFO    ] 200
[2026-08-31 19:42:02,498.498 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:42:02,549.549 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:42:02,609.609 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:42:02,612.612 INFO    ] No camera update needed
[2026-08-31 19:42:02,615.615 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:42:02,618.618 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:42:02,625.625 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:42:02,632.632 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:42:04,674.674 INFO    ] ================================================
[2026-08-31 19:42:04,690.690 INFO    ] Launching Daemon at Mon Aug 31 19:42:04 IST 2026
[2026-08-31 19:42:04,701.701 INFO    ] ================================================
[2026-08-31 19:42:05,278.278 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:42:05
[2026-08-31 19:42:05,874.874 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:42:06,146.146 INFO    ] Initializing speech engine...
[2026-08-31 19:42:06,156.156 INFO    ] 2026-08-31 19:42:06
[2026-08-31 19:42:06,403.403 INFO    ] 2026-08-31 19:42:06
[2026-08-31 19:42:06,438.438 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:42:06,689.689 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:42:06,698.698 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:42:06,836.836 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:42:06,850.850 INFO    ] time= 31/08/2026 19:42:06
[2026-08-31 19:42:06,872.872 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:42:06,942.942 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:42:07,020.020 INFO    ] No existing commands found in stream
[2026-08-31 19:42:12,033.033 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:42:12,035.035 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-08-31 19:42:15,622.622 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 19:42:15,625.625 INFO    ] Checking for system updates...
[2026-08-31 19:42:15,661.661 INFO    ] 200
[2026-08-31 19:42:15,663.663 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:42:15,715.715 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:42:15,717.717 INFO    ] No update needed
[2026-08-31 19:42:15,720.720 INFO    ] Checking for camera pi updates...
[2026-08-31 19:42:15,753.753 INFO    ] 200
[2026-08-31 19:42:15,756.756 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:42:15,796.796 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:42:15,890.890 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:42:15,893.893 INFO    ] No camera update needed
[2026-08-31 19:42:15,895.895 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:42:15,898.898 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:42:15,903.903 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:42:15,908.908 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:42:17,952.952 INFO    ] ================================================
[2026-08-31 19:42:17,969.969 INFO    ] Launching Daemon at Mon Aug 31 19:42:17 IST 2026
[2026-08-31 19:42:17,979.979 INFO    ] ================================================
[2026-08-31 19:42:18,623.623 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:42:18
[2026-08-31 19:42:19,286.286 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:42:19,590.590 INFO    ] Initializing speech engine...
[2026-08-31 19:42:19,603.603 INFO    ] 2026-08-31 19:42:19
[2026-08-31 19:42:19,874.874 INFO    ] 2026-08-31 19:42:19
[2026-08-31 19:42:19,927.927 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:42:20,181.181 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:42:20,189.189 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:42:20,385.385 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:42:20,431.431 INFO    ] time= 31/08/2026 19:42:20
[2026-08-31 19:42:20,437.437 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:42:20,456.456 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:42:20,589.589 INFO    ] No existing commands found in stream
[2026-08-31 19:42:25,600.600 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:42:25,603.603 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-08-31 19:42:29,545.545 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 19:42:29,548.548 INFO    ] Checking for system updates...
[2026-08-31 19:42:29,589.589 INFO    ] 200
[2026-08-31 19:42:29,592.592 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:42:29,656.656 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:42:29,659.659 INFO    ] No update needed
[2026-08-31 19:42:29,662.662 INFO    ] Checking for camera pi updates...
[2026-08-31 19:42:29,700.700 INFO    ] 200
[2026-08-31 19:42:29,702.702 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:42:29,742.742 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:42:29,839.839 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:42:29,841.841 INFO    ] No camera update needed
[2026-08-31 19:42:29,843.843 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:42:29,846.846 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:42:29,851.851 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:42:29,856.856 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:42:31,899.899 INFO    ] ================================================
[2026-08-31 19:42:31,915.915 INFO    ] Launching Daemon at Mon Aug 31 19:42:31 IST 2026
[2026-08-31 19:42:31,927.927 INFO    ] ================================================
[2026-08-31 19:42:32,541.541 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:42:32
[2026-08-31 19:42:33,184.184 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:42:33,448.448 INFO    ] Initializing speech engine...
[2026-08-31 19:42:33,461.461 INFO    ] 2026-08-31 19:42:33
[2026-08-31 19:42:33,748.748 INFO    ] 2026-08-31 19:42:33
[2026-08-31 19:42:33,785.785 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:42:33,981.981 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:42:33,994.994 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:42:34,156.156 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:42:34,163.163 INFO    ] time= 31/08/2026 19:42:34
[2026-08-31 19:42:34,169.169 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:42:34,212.212 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:42:34,327.327 INFO    ] No existing commands found in stream
[2026-08-31 19:42:39,347.347 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:42:39,350.350 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-08-31 19:42:41,333.333 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 19:42:41,335.335 INFO    ] Checking for system updates...
[2026-08-31 19:42:41,375.375 INFO    ] 200
[2026-08-31 19:42:41,378.378 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:42:41,430.430 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:42:41,433.433 INFO    ] No update needed
[2026-08-31 19:42:41,435.435 INFO    ] Checking for camera pi updates...
[2026-08-31 19:42:41,472.472 INFO    ] 200
[2026-08-31 19:42:41,474.474 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:42:41,514.514 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:42:41,600.600 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:42:41,602.602 INFO    ] No camera update needed
[2026-08-31 19:42:41,604.604 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:42:41,607.607 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:42:41,612.612 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:42:41,617.617 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:42:43,657.657 INFO    ] ================================================
[2026-08-31 19:42:43,673.673 INFO    ] Launching Daemon at Mon Aug 31 19:42:43 IST 2026
[2026-08-31 19:42:43,684.684 INFO    ] ================================================
[2026-08-31 19:42:44,261.261 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:42:44
[2026-08-31 19:42:44,860.860 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:42:45,138.138 INFO    ] Initializing speech engine...
[2026-08-31 19:42:45,146.146 INFO    ] 2026-08-31 19:42:45
[2026-08-31 19:42:45,404.404 INFO    ] 2026-08-31 19:42:45
[2026-08-31 19:42:45,457.457 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:42:45,701.701 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:42:45,711.711 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:42:45,861.861 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:42:45,909.909 INFO    ] time= 31/08/2026 19:42:45
[2026-08-31 19:42:45,958.958 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:42:46,007.007 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:42:46,140.140 INFO    ] No existing commands found in stream
[2026-08-31 19:42:51,163.163 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:42:51,165.165 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-08-31 19:42:54,615.615 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 19:42:54,618.618 INFO    ] Checking for system updates...
[2026-08-31 19:42:54,654.654 INFO    ] 200
[2026-08-31 19:42:54,656.656 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:42:54,709.709 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:42:54,711.711 INFO    ] No update needed
[2026-08-31 19:42:54,714.714 INFO    ] Checking for camera pi updates...
[2026-08-31 19:42:54,747.747 INFO    ] 200
[2026-08-31 19:42:54,750.750 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:42:54,796.796 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:42:54,877.877 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:42:54,879.879 INFO    ] No camera update needed
[2026-08-31 19:42:54,881.881 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:42:54,884.884 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:42:54,889.889 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:42:54,894.894 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:42:56,934.934 INFO    ] ================================================
[2026-08-31 19:42:56,949.949 INFO    ] Launching Daemon at Mon Aug 31 19:42:56 IST 2026
[2026-08-31 19:42:56,960.960 INFO    ] ================================================
[2026-08-31 19:42:57,542.542 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:42:57
[2026-08-31 19:42:58,139.139 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:42:58,416.416 INFO    ] Initializing speech engine...
[2026-08-31 19:42:58,423.423 INFO    ] 2026-08-31 19:42:58
[2026-08-31 19:42:58,684.684 INFO    ] 2026-08-31 19:42:58
[2026-08-31 19:42:58,734.734 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:42:58,963.963 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:42:58,968.968 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:42:59,182.182 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:42:59,227.227 INFO    ] time= 31/08/2026 19:42:59
[2026-08-31 19:42:59,233.233 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:42:59,251.251 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:42:59,382.382 INFO    ] No existing commands found in stream
[2026-08-31 19:43:04,394.394 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:43:04,396.396 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-08-31 19:43:08,454.454 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 19:43:08,457.457 INFO    ] Checking for system updates...
[2026-08-31 19:43:08,492.492 INFO    ] 200
[2026-08-31 19:43:08,495.495 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:43:08,555.555 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:43:08,557.557 INFO    ] No update needed
[2026-08-31 19:43:08,560.560 INFO    ] Checking for camera pi updates...
[2026-08-31 19:43:08,594.594 INFO    ] 200
[2026-08-31 19:43:08,596.596 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:43:08,637.637 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:43:08,717.717 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:43:08,720.720 INFO    ] No camera update needed
[2026-08-31 19:43:08,722.722 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:43:08,724.724 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:43:08,730.730 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:43:08,735.735 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:43:10,779.779 INFO    ] ================================================
[2026-08-31 19:43:10,795.795 INFO    ] Launching Daemon at Mon Aug 31 19:43:10 IST 2026
[2026-08-31 19:43:10,806.806 INFO    ] ================================================
[2026-08-31 19:43:11,385.385 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:43:11
[2026-08-31 19:43:11,975.975 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:43:12,234.234 INFO    ] Initializing speech engine...
[2026-08-31 19:43:12,249.249 INFO    ] 2026-08-31 19:43:12
[2026-08-31 19:43:12,520.520 INFO    ] 2026-08-31 19:43:12
[2026-08-31 19:43:12,556.556 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:43:12,754.754 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:43:12,794.794 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:43:12,952.952 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:43:12,990.990 INFO    ] time= 31/08/2026 19:43:12
[2026-08-31 19:43:13,049.049 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:43:13,088.088 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:43:13,219.219 INFO    ] No existing commands found in stream
[2026-08-31 19:43:18,250.250 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:43:18,253.253 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-08-31 19:43:20,817.817 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 19:43:20,820.820 INFO    ] Checking for system updates...
[2026-08-31 19:43:20,855.855 INFO    ] 200
[2026-08-31 19:43:20,858.858 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:43:20,918.918 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:43:20,920.920 INFO    ] No update needed
[2026-08-31 19:43:20,922.922 INFO    ] Checking for camera pi updates...
[2026-08-31 19:43:20,956.956 INFO    ] 200
[2026-08-31 19:43:20,959.959 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:43:20,999.999 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:43:21,082.082 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:43:21,084.084 INFO    ] No camera update needed
[2026-08-31 19:43:21,087.087 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:43:21,089.089 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:43:21,094.094 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:43:21,100.100 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:43:23,142.142 INFO    ] ================================================
[2026-08-31 19:43:23,158.158 INFO    ] Launching Daemon at Mon Aug 31 19:43:23 IST 2026
[2026-08-31 19:43:23,169.169 INFO    ] ================================================
[2026-08-31 19:43:23,741.741 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:43:23
[2026-08-31 19:43:24,326.326 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:43:24,597.597 INFO    ] Initializing speech engine...
[2026-08-31 19:43:24,605.605 INFO    ] 2026-08-31 19:43:24
[2026-08-31 19:43:24,858.858 INFO    ] 2026-08-31 19:43:24
[2026-08-31 19:43:24,893.893 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:43:25,151.151 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:43:25,160.160 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:43:25,374.374 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:43:25,424.424 INFO    ] time= 31/08/2026 19:43:25
[2026-08-31 19:43:25,430.430 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:43:25,449.449 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:43:25,584.584 INFO    ] No existing commands found in stream
[2026-08-31 19:43:30,603.603 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:43:30,605.605 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-08-31 19:43:33,622.622 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 19:43:33,624.624 INFO    ] Checking for system updates...
[2026-08-31 19:43:33,660.660 INFO    ] 200
[2026-08-31 19:43:33,662.662 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:43:33,720.720 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:43:33,723.723 INFO    ] No update needed
[2026-08-31 19:43:33,725.725 INFO    ] Checking for camera pi updates...
[2026-08-31 19:43:33,759.759 INFO    ] 200
[2026-08-31 19:43:33,761.761 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:43:33,805.805 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:43:33,886.886 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:43:33,889.889 INFO    ] No camera update needed
[2026-08-31 19:43:33,891.891 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:43:33,894.894 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:43:33,899.899 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:43:33,904.904 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:43:35,948.948 INFO    ] ================================================
[2026-08-31 19:43:35,963.963 INFO    ] Launching Daemon at Mon Aug 31 19:43:35 IST 2026
[2026-08-31 19:43:35,974.974 INFO    ] ================================================
[2026-08-31 19:43:36,554.554 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:43:36
[2026-08-31 19:43:37,153.153 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:43:37,441.441 INFO    ] Initializing speech engine...
[2026-08-31 19:43:37,452.452 INFO    ] 2026-08-31 19:43:37
[2026-08-31 19:43:37,722.722 INFO    ] 2026-08-31 19:43:37
[2026-08-31 19:43:37,762.762 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:43:37,990.990 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:43:38,032.032 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:43:38,219.219 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:43:38,226.226 INFO    ] time= 31/08/2026 19:43:38
[2026-08-31 19:43:38,275.275 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:43:38,329.329 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:43:38,430.430 INFO    ] No existing commands found in stream
[2026-08-31 19:43:43,442.442 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:43:43,444.444 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-08-31 19:43:46,835.835 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 19:43:46,838.838 INFO    ] Checking for system updates...
[2026-08-31 19:43:46,874.874 INFO    ] 200
[2026-08-31 19:43:46,876.876 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:43:46,930.930 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:43:46,932.932 INFO    ] No update needed
[2026-08-31 19:43:46,935.935 INFO    ] Checking for camera pi updates...
[2026-08-31 19:43:46,972.972 INFO    ] 200
[2026-08-31 19:43:46,974.974 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:43:47,014.014 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:43:47,095.095 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:43:47,097.097 INFO    ] No camera update needed
[2026-08-31 19:43:47,100.100 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:43:47,102.102 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:43:47,108.108 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:43:47,113.113 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:43:49,154.154 INFO    ] ================================================
[2026-08-31 19:43:49,170.170 INFO    ] Launching Daemon at Mon Aug 31 19:43:49 IST 2026
[2026-08-31 19:43:49,181.181 INFO    ] ================================================
[2026-08-31 19:43:49,836.836 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:43:49
[2026-08-31 19:43:50,474.474 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:43:50,762.762 INFO    ] Initializing speech engine...
[2026-08-31 19:43:50,772.772 INFO    ] 2026-08-31 19:43:50
[2026-08-31 19:43:51,043.043 INFO    ] 2026-08-31 19:43:51
[2026-08-31 19:43:51,079.079 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:43:51,304.304 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:43:51,317.317 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:43:51,534.534 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:43:51,562.562 INFO    ] time= 31/08/2026 19:43:51
[2026-08-31 19:43:51,601.601 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:43:51,645.645 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:43:51,747.747 INFO    ] No existing commands found in stream
[2026-08-31 19:43:56,759.759 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:43:56,762.762 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-08-31 19:44:00,922.922 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 19:44:00,925.925 INFO    ] Checking for system updates...
[2026-08-31 19:44:00,966.966 INFO    ] 200
[2026-08-31 19:44:00,969.969 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:44:01,021.021 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:44:01,024.024 INFO    ] No update needed
[2026-08-31 19:44:01,026.026 INFO    ] Checking for camera pi updates...
[2026-08-31 19:44:01,065.065 INFO    ] 200
[2026-08-31 19:44:01,067.067 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:44:01,109.109 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:44:01,202.202 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:44:01,205.205 INFO    ] No camera update needed
[2026-08-31 19:44:01,208.208 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:44:01,210.210 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:44:01,217.217 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:44:01,223.223 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:44:03,271.271 INFO    ] ================================================
[2026-08-31 19:44:03,290.290 INFO    ] Launching Daemon at Mon Aug 31 19:44:03 IST 2026
[2026-08-31 19:44:03,303.303 INFO    ] ================================================
[2026-08-31 19:44:03,910.910 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:44:03
[2026-08-31 19:44:04,510.510 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:44:04,776.776 INFO    ] Initializing speech engine...
[2026-08-31 19:44:04,789.789 INFO    ] 2026-08-31 19:44:04
[2026-08-31 19:44:05,079.079 INFO    ] 2026-08-31 19:44:05
[2026-08-31 19:44:05,115.115 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:44:05,345.345 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:44:05,379.379 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:44:05,577.577 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:44:05,594.594 INFO    ] time= 31/08/2026 19:44:05
[2026-08-31 19:44:05,649.649 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:44:05,687.687 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:44:05,789.789 INFO    ] No existing commands found in stream
[2026-08-31 19:44:10,801.801 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:44:10,803.803 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-08-31 19:44:13,300.300 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 19:44:13,303.303 INFO    ] Checking for system updates...
[2026-08-31 19:44:13,340.340 INFO    ] 200
[2026-08-31 19:44:13,342.342 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:44:13,397.397 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:44:13,400.400 INFO    ] No update needed
[2026-08-31 19:44:13,403.403 INFO    ] Checking for camera pi updates...
[2026-08-31 19:44:13,438.438 INFO    ] 200
[2026-08-31 19:44:13,441.441 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:44:13,488.488 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:44:13,573.573 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:44:13,576.576 INFO    ] No camera update needed
[2026-08-31 19:44:13,579.579 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:44:13,582.582 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:44:13,589.589 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:44:13,595.595 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:44:15,636.636 INFO    ] ================================================
[2026-08-31 19:44:15,652.652 INFO    ] Launching Daemon at Mon Aug 31 19:44:15 IST 2026
[2026-08-31 19:44:15,663.663 INFO    ] ================================================
[2026-08-31 19:44:16,245.245 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:44:16
[2026-08-31 19:44:16,841.841 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:44:17,112.112 INFO    ] Initializing speech engine...
[2026-08-31 19:44:17,120.120 INFO    ] 2026-08-31 19:44:17
[2026-08-31 19:44:17,371.371 INFO    ] 2026-08-31 19:44:17
[2026-08-31 19:44:17,407.407 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:44:17,663.663 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:44:17,668.668 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:44:17,864.864 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:44:17,919.919 INFO    ] time= 31/08/2026 19:44:17
[2026-08-31 19:44:17,931.931 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:44:17,948.948 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:44:18,058.058 INFO    ] No existing commands found in stream
[2026-08-31 19:44:23,085.085 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:44:23,088.088 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-08-31 19:44:27,044.044 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 19:44:27,046.046 INFO    ] Checking for system updates...
[2026-08-31 19:44:27,082.082 INFO    ] 200
[2026-08-31 19:44:27,084.084 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:44:27,145.145 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:44:27,147.147 INFO    ] No update needed
[2026-08-31 19:44:27,150.150 INFO    ] Checking for camera pi updates...
[2026-08-31 19:44:27,183.183 INFO    ] 200
[2026-08-31 19:44:27,186.186 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:44:27,226.226 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:44:27,316.316 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:44:27,319.319 INFO    ] No camera update needed
[2026-08-31 19:44:27,321.321 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:44:27,323.323 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:44:27,329.329 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:44:27,334.334 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:44:29,378.378 INFO    ] ================================================
[2026-08-31 19:44:29,394.394 INFO    ] Launching Daemon at Mon Aug 31 19:44:29 IST 2026
[2026-08-31 19:44:29,406.406 INFO    ] ================================================
[2026-08-31 19:44:29,994.994 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:44:29
[2026-08-31 19:44:30,595.595 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:44:30,868.868 INFO    ] Initializing speech engine...
[2026-08-31 19:44:30,877.877 INFO    ] 2026-08-31 19:44:30
[2026-08-31 19:44:31,128.128 INFO    ] 2026-08-31 19:44:31
[2026-08-31 19:44:31,164.164 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:44:31,335.335 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:44:31,347.347 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:44:31,505.505 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:44:31,514.514 INFO    ] time= 31/08/2026 19:44:31
[2026-08-31 19:44:31,521.521 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:44:31,527.527 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:44:31,602.602 INFO    ] No existing commands found in stream
[2026-08-31 19:44:36,622.622 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:44:36,625.625 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-08-31 19:44:38,939.939 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 19:44:38,941.941 INFO    ] Checking for system updates...
[2026-08-31 19:44:38,977.977 INFO    ] 200
[2026-08-31 19:44:38,980.980 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:44:39,040.040 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:44:39,042.042 INFO    ] No update needed
[2026-08-31 19:44:39,045.045 INFO    ] Checking for camera pi updates...
[2026-08-31 19:44:39,078.078 INFO    ] 200
[2026-08-31 19:44:39,081.081 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:44:39,121.121 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:44:39,209.209 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:44:39,212.212 INFO    ] No camera update needed
[2026-08-31 19:44:39,214.214 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:44:39,216.216 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:44:39,222.222 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:44:39,227.227 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:44:41,269.269 INFO    ] ================================================
[2026-08-31 19:44:41,284.284 INFO    ] Launching Daemon at Mon Aug 31 19:44:41 IST 2026
[2026-08-31 19:44:41,296.296 INFO    ] ================================================
[2026-08-31 19:44:41,876.876 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:44:41
[2026-08-31 19:44:42,475.475 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:44:42,748.748 INFO    ] Initializing speech engine...
[2026-08-31 19:44:42,757.757 INFO    ] 2026-08-31 19:44:42
[2026-08-31 19:44:43,007.007 INFO    ] 2026-08-31 19:44:43
[2026-08-31 19:44:43,043.043 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:44:43,215.215 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:44:43,228.228 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:44:43,372.372 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:44:43,380.380 INFO    ] time= 31/08/2026 19:44:43
[2026-08-31 19:44:43,419.419 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:44:43,459.459 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:44:43,576.576 INFO    ] No existing commands found in stream
[2026-08-31 19:44:48,587.587 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:44:48,590.590 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-08-31 19:44:49,908.908 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 19:44:49,911.911 INFO    ] Checking for system updates...
[2026-08-31 19:44:49,947.947 INFO    ] 200
[2026-08-31 19:44:49,949.949 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:44:50,001.001 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:44:50,004.004 INFO    ] No update needed
[2026-08-31 19:44:50,006.006 INFO    ] Checking for camera pi updates...
[2026-08-31 19:44:50,040.040 INFO    ] 200
[2026-08-31 19:44:50,042.042 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:44:50,090.090 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:44:50,142.142 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:44:50,145.145 INFO    ] No camera update needed
[2026-08-31 19:44:50,147.147 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:44:50,150.150 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:44:50,155.155 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:44:50,160.160 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:44:52,203.203 INFO    ] ================================================
[2026-08-31 19:44:52,218.218 INFO    ] Launching Daemon at Mon Aug 31 19:44:52 IST 2026
[2026-08-31 19:44:52,230.230 INFO    ] ================================================
[2026-08-31 19:44:52,828.828 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:44:52
[2026-08-31 19:44:53,535.535 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:44:53,851.851 INFO    ] Initializing speech engine...
[2026-08-31 19:44:53,866.866 INFO    ] 2026-08-31 19:44:53
[2026-08-31 19:44:54,185.185 INFO    ] 2026-08-31 19:44:54
[2026-08-31 19:44:54,256.256 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:44:54,452.452 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:44:54,457.457 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:44:54,672.672 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:44:54,695.695 INFO    ] time= 31/08/2026 19:44:54
[2026-08-31 19:44:54,702.702 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:44:54,717.717 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:44:54,815.815 INFO    ] No existing commands found in stream
[2026-08-31 19:44:59,837.837 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:44:59,840.840 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-08-31 19:45:03,200.200 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 19:45:03,204.204 INFO    ] Checking for system updates...
[2026-08-31 19:45:03,246.246 INFO    ] 200
[2026-08-31 19:45:03,250.250 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:45:03,314.314 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:45:03,317.317 INFO    ] No update needed
[2026-08-31 19:45:03,320.320 INFO    ] Checking for camera pi updates...
[2026-08-31 19:45:03,360.360 INFO    ] 200
[2026-08-31 19:45:03,363.363 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:45:03,416.416 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:45:03,536.536 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:45:03,540.540 INFO    ] No camera update needed
[2026-08-31 19:45:03,543.543 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:45:03,547.547 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:45:03,560.560 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:45:03,569.569 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:45:05,615.615 INFO    ] ================================================
[2026-08-31 19:45:05,632.632 INFO    ] Launching Daemon at Mon Aug 31 19:45:05 IST 2026
[2026-08-31 19:45:05,643.643 INFO    ] ================================================
[2026-08-31 19:45:06,319.319 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:45:06
[2026-08-31 19:45:06,925.925 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:45:07,227.227 INFO    ] Initializing speech engine...
[2026-08-31 19:45:07,235.235 INFO    ] 2026-08-31 19:45:07
[2026-08-31 19:45:07,498.498 INFO    ] 2026-08-31 19:45:07
[2026-08-31 19:45:07,549.549 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:45:07,834.834 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:45:07,840.840 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:45:08,023.023 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:45:08,044.044 INFO    ] time= 31/08/2026 19:45:08
[2026-08-31 19:45:08,061.061 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:45:08,070.070 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:45:08,196.196 INFO    ] No existing commands found in stream
[2026-08-31 19:45:13,214.214 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:45:13,216.216 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-08-31 19:45:16,881.881 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 19:45:16,883.883 INFO    ] Checking for system updates...
[2026-08-31 19:45:16,919.919 INFO    ] 200
[2026-08-31 19:45:16,921.921 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:45:16,973.973 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:45:16,976.976 INFO    ] No update needed
[2026-08-31 19:45:16,979.979 INFO    ] Checking for camera pi updates...
[2026-08-31 19:45:17,012.012 INFO    ] 200
[2026-08-31 19:45:17,015.015 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:45:17,064.064 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:45:17,242.242 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:45:17,245.245 INFO    ] No camera update needed
[2026-08-31 19:45:17,247.247 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:45:17,250.250 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:45:17,255.255 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:45:17,260.260 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:45:19,302.302 INFO    ] ================================================
[2026-08-31 19:45:19,317.317 INFO    ] Launching Daemon at Mon Aug 31 19:45:19 IST 2026
[2026-08-31 19:45:19,328.328 INFO    ] ================================================
[2026-08-31 19:45:19,901.901 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:45:19
[2026-08-31 19:45:20,493.493 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:45:20,744.744 INFO    ] Initializing speech engine...
[2026-08-31 19:45:20,757.757 INFO    ] 2026-08-31 19:45:20
[2026-08-31 19:45:21,024.024 INFO    ] 2026-08-31 19:45:21
[2026-08-31 19:45:21,059.059 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:45:21,319.319 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:45:21,324.324 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:45:21,466.466 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:45:21,531.531 INFO    ] time= 31/08/2026 19:45:21
[2026-08-31 19:45:21,591.591 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:45:21,598.598 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:45:21,670.670 INFO    ] No existing commands found in stream
[2026-08-31 19:45:26,708.708 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:45:26,711.711 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-08-31 19:45:28,148.148 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 19:45:28,151.151 INFO    ] Checking for system updates...
[2026-08-31 19:45:28,193.193 INFO    ] 200
[2026-08-31 19:45:28,196.196 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:45:28,262.262 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:45:28,265.265 INFO    ] No update needed
[2026-08-31 19:45:28,268.268 INFO    ] Checking for camera pi updates...
[2026-08-31 19:45:28,303.303 INFO    ] 200
[2026-08-31 19:45:28,305.305 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:45:28,353.353 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:45:28,434.434 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:45:28,437.437 INFO    ] No camera update needed
[2026-08-31 19:45:28,440.440 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:45:28,443.443 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:45:28,449.449 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:45:28,455.455 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:45:30,497.497 INFO    ] ================================================
[2026-08-31 19:45:30,512.512 INFO    ] Launching Daemon at Mon Aug 31 19:45:30 IST 2026
[2026-08-31 19:45:30,524.524 INFO    ] ================================================
[2026-08-31 19:45:31,105.105 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:45:31
[2026-08-31 19:45:31,703.703 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:45:31,979.979 INFO    ] Initializing speech engine...
[2026-08-31 19:45:31,985.985 INFO    ] 2026-08-31 19:45:31
[2026-08-31 19:45:32,256.256 INFO    ] 2026-08-31 19:45:32
[2026-08-31 19:45:32,296.296 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:45:32,490.490 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:45:32,507.507 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:45:32,643.643 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:45:32,654.654 INFO    ] time= 31/08/2026 19:45:32
[2026-08-31 19:45:32,663.663 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:45:32,712.712 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:45:32,857.857 INFO    ] No existing commands found in stream
[2026-08-31 19:45:37,882.882 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:45:37,885.885 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-08-31 19:45:41,712.712 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 19:45:41,715.715 INFO    ] Checking for system updates...
[2026-08-31 19:45:41,752.752 INFO    ] 200
[2026-08-31 19:45:41,755.755 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:45:41,810.810 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:45:41,813.813 INFO    ] No update needed
[2026-08-31 19:45:41,816.816 INFO    ] Checking for camera pi updates...
[2026-08-31 19:45:41,850.850 INFO    ] 200
[2026-08-31 19:45:41,853.853 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:45:41,894.894 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:45:41,990.990 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:45:41,993.993 INFO    ] No camera update needed
[2026-08-31 19:45:41,996.996 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:45:41,999.999 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:45:42,005.005 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:45:42,011.011 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:45:44,053.053 INFO    ] ================================================
[2026-08-31 19:45:44,069.069 INFO    ] Launching Daemon at Mon Aug 31 19:45:44 IST 2026
[2026-08-31 19:45:44,080.080 INFO    ] ================================================
[2026-08-31 19:45:44,755.755 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:45:44
[2026-08-31 19:45:45,380.380 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:45:45,694.694 INFO    ] Initializing speech engine...
[2026-08-31 19:45:45,705.705 INFO    ] 2026-08-31 19:45:45
[2026-08-31 19:45:46,017.017 INFO    ] 2026-08-31 19:45:45
[2026-08-31 19:45:46,108.108 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:45:46,311.311 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:45:46,330.330 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:45:46,532.532 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:45:46,551.551 INFO    ] time= 31/08/2026 19:45:46
[2026-08-31 19:45:46,562.562 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:45:46,592.592 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:45:46,697.697 INFO    ] No existing commands found in stream
[2026-08-31 19:45:51,723.723 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:45:51,726.726 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-08-31 19:45:53,246.246 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 19:45:53,249.249 INFO    ] Checking for system updates...
[2026-08-31 19:45:53,286.286 INFO    ] 200
[2026-08-31 19:45:53,289.289 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:45:53,350.350 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:45:53,353.353 INFO    ] No update needed
[2026-08-31 19:45:53,356.356 INFO    ] Checking for camera pi updates...
[2026-08-31 19:45:53,396.396 INFO    ] 200
[2026-08-31 19:45:53,399.399 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:45:53,440.440 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:45:53,516.516 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:45:53,519.519 INFO    ] No camera update needed
[2026-08-31 19:45:53,521.521 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:45:53,524.524 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:45:53,530.530 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:45:53,536.536 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:45:55,578.578 INFO    ] ================================================
[2026-08-31 19:45:55,594.594 INFO    ] Launching Daemon at Mon Aug 31 19:45:55 IST 2026
[2026-08-31 19:45:55,605.605 INFO    ] ================================================
[2026-08-31 19:45:56,188.188 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:45:56
[2026-08-31 19:45:56,790.790 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:45:57,064.064 INFO    ] Initializing speech engine...
[2026-08-31 19:45:57,073.073 INFO    ] 2026-08-31 19:45:57
[2026-08-31 19:45:57,324.324 INFO    ] 2026-08-31 19:45:57
[2026-08-31 19:45:57,390.390 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:45:57,617.617 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:45:57,623.623 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:45:57,754.754 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:45:57,809.809 INFO    ] time= 31/08/2026 19:45:57
[2026-08-31 19:45:57,863.863 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:45:57,888.888 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:45:58,029.029 INFO    ] No existing commands found in stream
[2026-08-31 19:46:03,044.044 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:46:03,047.047 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-08-31 19:46:04,409.409 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 19:46:04,412.412 INFO    ] Checking for system updates...
[2026-08-31 19:46:04,447.447 INFO    ] 200
[2026-08-31 19:46:04,450.450 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:46:04,504.504 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:46:04,507.507 INFO    ] No update needed
[2026-08-31 19:46:04,510.510 INFO    ] Checking for camera pi updates...
[2026-08-31 19:46:04,543.543 INFO    ] 200
[2026-08-31 19:46:04,545.545 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:46:04,589.589 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:46:04,669.669 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:46:04,672.672 INFO    ] No camera update needed
[2026-08-31 19:46:04,674.674 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:46:04,676.676 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:46:04,682.682 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:46:04,686.686 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:46:06,729.729 INFO    ] ================================================
[2026-08-31 19:46:06,745.745 INFO    ] Launching Daemon at Mon Aug 31 19:46:06 IST 2026
[2026-08-31 19:46:06,756.756 INFO    ] ================================================
[2026-08-31 19:46:07,336.336 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:46:07
[2026-08-31 19:46:07,931.931 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:46:08,184.184 INFO    ] Initializing speech engine...
[2026-08-31 19:46:08,206.206 INFO    ] 2026-08-31 19:46:08
[2026-08-31 19:46:08,461.461 INFO    ] 2026-08-31 19:46:08
[2026-08-31 19:46:08,495.495 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:46:08,750.750 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:46:08,756.756 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:46:08,900.900 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:46:08,955.955 INFO    ] time= 31/08/2026 19:46:08
[2026-08-31 19:46:09,009.009 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:46:09,023.023 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:46:09,163.163 INFO    ] No existing commands found in stream
[2026-08-31 19:46:14,178.178 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:46:14,181.181 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-08-31 19:46:16,355.355 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 19:46:16,357.357 INFO    ] Checking for system updates...
[2026-08-31 19:46:16,395.395 INFO    ] 200
[2026-08-31 19:46:16,398.398 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:46:16,450.450 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:46:16,453.453 INFO    ] No update needed
[2026-08-31 19:46:16,456.456 INFO    ] Checking for camera pi updates...
[2026-08-31 19:46:16,490.490 INFO    ] 200
[2026-08-31 19:46:16,493.493 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:46:16,538.538 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:46:16,625.625 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:46:16,627.627 INFO    ] No camera update needed
[2026-08-31 19:46:16,630.630 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:46:16,632.632 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:46:16,637.637 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:46:16,642.642 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:46:18,684.684 INFO    ] ================================================
[2026-08-31 19:46:18,700.700 INFO    ] Launching Daemon at Mon Aug 31 19:46:18 IST 2026
[2026-08-31 19:46:18,711.711 INFO    ] ================================================
[2026-08-31 19:46:19,277.277 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:46:19
[2026-08-31 19:46:19,939.939 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:46:20,241.241 INFO    ] Initializing speech engine...
[2026-08-31 19:46:20,255.255 INFO    ] 2026-08-31 19:46:20
[2026-08-31 19:46:20,566.566 INFO    ] 2026-08-31 19:46:20
[2026-08-31 19:46:20,656.656 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:46:20,941.941 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:46:20,984.984 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:46:21,228.228 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:46:21,271.271 INFO    ] time= 31/08/2026 19:46:21
[2026-08-31 19:46:21,339.339 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:46:21,369.369 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:46:21,533.533 INFO    ] No existing commands found in stream
[2026-08-31 19:46:26,549.549 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:46:26,552.552 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-08-31 19:46:30,207.207 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 19:46:30,211.211 INFO    ] Checking for system updates...
[2026-08-31 19:46:30,247.247 INFO    ] 200
[2026-08-31 19:46:30,250.250 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:46:30,304.304 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:46:30,307.307 INFO    ] No update needed
[2026-08-31 19:46:30,310.310 INFO    ] Checking for camera pi updates...
[2026-08-31 19:46:30,345.345 INFO    ] 200
[2026-08-31 19:46:30,348.348 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:46:30,395.395 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:46:30,482.482 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:46:30,485.485 INFO    ] No camera update needed
[2026-08-31 19:46:30,488.488 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:46:30,490.490 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:46:30,497.497 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:46:30,503.503 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:46:32,546.546 INFO    ] ================================================
[2026-08-31 19:46:32,562.562 INFO    ] Launching Daemon at Mon Aug 31 19:46:32 IST 2026
[2026-08-31 19:46:32,573.573 INFO    ] ================================================
[2026-08-31 19:46:33,138.138 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:46:33
[2026-08-31 19:46:33,722.722 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:46:34,021.021 INFO    ] Initializing speech engine...
[2026-08-31 19:46:34,035.035 INFO    ] 2026-08-31 19:46:34
[2026-08-31 19:46:34,343.343 INFO    ] 2026-08-31 19:46:34
[2026-08-31 19:46:34,429.429 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:46:34,639.639 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:46:34,647.647 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:46:34,835.835 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:46:34,846.846 INFO    ] time= 31/08/2026 19:46:34
[2026-08-31 19:46:34,853.853 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:46:34,874.874 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:46:34,993.993 INFO    ] No existing commands found in stream
[2026-08-31 19:46:40,014.014 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:46:40,017.017 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-08-31 19:46:42,903.903 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 19:46:42,906.906 INFO    ] Checking for system updates...
[2026-08-31 19:46:42,951.951 INFO    ] 200
[2026-08-31 19:46:42,954.954 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:46:43,044.044 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:46:43,047.047 INFO    ] No update needed
[2026-08-31 19:46:43,051.051 INFO    ] Checking for camera pi updates...
[2026-08-31 19:46:43,090.090 INFO    ] 200
[2026-08-31 19:46:43,093.093 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:46:43,160.160 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:46:43,231.231 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:46:43,234.234 INFO    ] No camera update needed
[2026-08-31 19:46:43,236.236 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:46:43,239.239 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:46:43,245.245 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:46:43,251.251 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:46:45,293.293 INFO    ] ================================================
[2026-08-31 19:46:45,309.309 INFO    ] Launching Daemon at Mon Aug 31 19:46:45 IST 2026
[2026-08-31 19:46:45,321.321 INFO    ] ================================================
[2026-08-31 19:46:45,959.959 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:46:45
[2026-08-31 19:46:46,615.615 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:46:46,911.911 INFO    ] Initializing speech engine...
[2026-08-31 19:46:46,918.918 INFO    ] 2026-08-31 19:46:46
[2026-08-31 19:46:47,191.191 INFO    ] 2026-08-31 19:46:47
[2026-08-31 19:46:47,244.244 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:46:47,498.498 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:46:47,517.517 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:46:47,714.714 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:46:47,740.740 INFO    ] time= 31/08/2026 19:46:47
[2026-08-31 19:46:47,759.759 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:46:47,787.787 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:46:47,895.895 INFO    ] No existing commands found in stream
[2026-08-31 19:46:52,915.915 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:46:52,918.918 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-08-31 19:46:55,718.718 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 19:46:55,721.721 INFO    ] Checking for system updates...
[2026-08-31 19:46:55,758.758 INFO    ] 200
[2026-08-31 19:46:55,760.760 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:46:55,815.815 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:46:55,817.817 INFO    ] No update needed
[2026-08-31 19:46:55,820.820 INFO    ] Checking for camera pi updates...
[2026-08-31 19:46:55,858.858 INFO    ] 200
[2026-08-31 19:46:55,861.861 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:46:55,907.907 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:46:55,989.989 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:46:55,992.992 INFO    ] No camera update needed
[2026-08-31 19:46:55,994.994 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:46:55,997.997 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:46:56,003.003 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:46:56,009.009 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:46:58,051.051 INFO    ] ================================================
[2026-08-31 19:46:58,066.066 INFO    ] Launching Daemon at Mon Aug 31 19:46:58 IST 2026
[2026-08-31 19:46:58,078.078 INFO    ] ================================================
[2026-08-31 19:46:58,646.646 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:46:58
[2026-08-31 19:46:59,232.232 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:46:59,484.484 INFO    ] Initializing speech engine...
[2026-08-31 19:46:59,491.491 INFO    ] 2026-08-31 19:46:59
[2026-08-31 19:46:59,783.783 INFO    ] 2026-08-31 19:46:59
[2026-08-31 19:46:59,817.817 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:47:00,013.013 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:47:00,028.028 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:47:00,190.190 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:47:00,199.199 INFO    ] time= 31/08/2026 19:47:00
[2026-08-31 19:47:00,205.205 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:47:00,228.228 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:47:00,365.365 INFO    ] No existing commands found in stream
[2026-08-31 19:47:05,390.390 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:47:05,393.393 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-08-31 19:47:09,761.761 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 19:47:09,763.763 INFO    ] Checking for system updates...
[2026-08-31 19:47:09,803.803 INFO    ] 200
[2026-08-31 19:47:09,805.805 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:47:09,858.858 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:47:09,861.861 INFO    ] No update needed
[2026-08-31 19:47:09,863.863 INFO    ] Checking for camera pi updates...
[2026-08-31 19:47:09,901.901 INFO    ] 200
[2026-08-31 19:47:09,903.903 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:47:09,943.943 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:47:10,046.046 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:47:10,049.049 INFO    ] No camera update needed
[2026-08-31 19:47:10,051.051 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:47:10,054.054 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:47:10,059.059 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:47:10,064.064 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:47:12,105.105 INFO    ] ================================================
[2026-08-31 19:47:12,120.120 INFO    ] Launching Daemon at Mon Aug 31 19:47:12 IST 2026
[2026-08-31 19:47:12,131.131 INFO    ] ================================================
[2026-08-31 19:47:12,707.707 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:47:12
[2026-08-31 19:47:13,289.289 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:47:13,541.541 INFO    ] Initializing speech engine...
[2026-08-31 19:47:13,550.550 INFO    ] 2026-08-31 19:47:13
[2026-08-31 19:47:13,848.848 INFO    ] 2026-08-31 19:47:13
[2026-08-31 19:47:13,888.888 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:47:14,114.114 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:47:14,122.122 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:47:14,268.268 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:47:14,277.277 INFO    ] time= 31/08/2026 19:47:14
[2026-08-31 19:47:14,285.285 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:47:14,306.306 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:47:14,445.445 INFO    ] No existing commands found in stream
[2026-08-31 19:47:19,475.475 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:47:19,478.478 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-08-31 19:47:22,872.872 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 19:47:22,874.874 INFO    ] Checking for system updates...
[2026-08-31 19:47:22,910.910 INFO    ] 200
[2026-08-31 19:47:22,913.913 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:47:22,965.965 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:47:22,967.967 INFO    ] No update needed
[2026-08-31 19:47:22,970.970 INFO    ] Checking for camera pi updates...
[2026-08-31 19:47:23,003.003 INFO    ] 200
[2026-08-31 19:47:23,006.006 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:47:23,047.047 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:47:23,232.232 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:47:23,235.235 INFO    ] No camera update needed
[2026-08-31 19:47:23,237.237 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:47:23,240.240 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:47:23,245.245 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:47:23,250.250 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:47:25,291.291 INFO    ] ================================================
[2026-08-31 19:47:25,306.306 INFO    ] Launching Daemon at Mon Aug 31 19:47:25 IST 2026
[2026-08-31 19:47:25,316.316 INFO    ] ================================================
[2026-08-31 19:47:25,915.915 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:47:25
[2026-08-31 19:47:26,595.595 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:47:26,902.902 INFO    ] Initializing speech engine...
[2026-08-31 19:47:26,916.916 INFO    ] 2026-08-31 19:47:26
[2026-08-31 19:47:27,230.230 INFO    ] 2026-08-31 19:47:27
[2026-08-31 19:47:27,313.313 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:47:27,523.523 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:47:27,533.533 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:47:27,729.729 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:47:27,746.746 INFO    ] time= 31/08/2026 19:47:27
[2026-08-31 19:47:27,777.777 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:47:27,785.785 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:47:27,895.895 INFO    ] No existing commands found in stream
[2026-08-31 19:47:32,920.920 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:47:32,924.924 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-08-31 19:47:37,487.487 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 19:47:37,490.490 INFO    ] Checking for system updates...
[2026-08-31 19:47:37,531.531 INFO    ] 200
[2026-08-31 19:47:37,534.534 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:47:37,603.603 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:47:37,607.607 INFO    ] No update needed
[2026-08-31 19:47:37,610.610 INFO    ] Checking for camera pi updates...
[2026-08-31 19:47:37,648.648 INFO    ] 200
[2026-08-31 19:47:37,652.652 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:47:37,698.698 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:47:37,780.780 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:47:37,784.784 INFO    ] No camera update needed
[2026-08-31 19:47:37,787.787 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:47:37,791.791 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:47:37,798.798 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:47:37,805.805 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:47:39,848.848 INFO    ] ================================================
[2026-08-31 19:47:39,871.871 INFO    ] Launching Daemon at Mon Aug 31 19:47:39 IST 2026
[2026-08-31 19:47:39,888.888 INFO    ] ================================================
[2026-08-31 19:47:40,581.581 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:47:40
[2026-08-31 19:47:41,300.300 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:47:41,640.640 INFO    ] Initializing speech engine...
[2026-08-31 19:47:41,650.650 INFO    ] 2026-08-31 19:47:41
[2026-08-31 19:47:41,948.948 INFO    ] 2026-08-31 19:47:41
[2026-08-31 19:47:41,989.989 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:47:42,348.348 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:47:42,395.395 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:47:42,625.625 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:47:42,670.670 INFO    ] time= 31/08/2026 19:47:42
[2026-08-31 19:47:42,736.736 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:47:42,772.772 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:47:42,906.906 INFO    ] No existing commands found in stream
[2026-08-31 19:47:47,943.943 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:47:47,946.946 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-08-31 19:47:51,036.036 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 19:47:51,039.039 INFO    ] Checking for system updates...
[2026-08-31 19:47:51,076.076 INFO    ] 200
[2026-08-31 19:47:51,078.078 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:47:51,139.139 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:47:51,141.141 INFO    ] No update needed
[2026-08-31 19:47:51,144.144 INFO    ] Checking for camera pi updates...
[2026-08-31 19:47:51,181.181 INFO    ] 200
[2026-08-31 19:47:51,183.183 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:47:51,228.228 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:47:51,305.305 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:47:51,308.308 INFO    ] No camera update needed
[2026-08-31 19:47:51,310.310 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:47:51,312.312 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:47:51,318.318 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:47:51,322.322 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:47:53,362.362 INFO    ] ================================================
[2026-08-31 19:47:53,377.377 INFO    ] Launching Daemon at Mon Aug 31 19:47:53 IST 2026
[2026-08-31 19:47:53,387.387 INFO    ] ================================================
[2026-08-31 19:47:53,955.955 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:47:53
[2026-08-31 19:47:54,540.540 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:47:54,790.790 INFO    ] Initializing speech engine...
[2026-08-31 19:47:54,814.814 INFO    ] 2026-08-31 19:47:54
[2026-08-31 19:47:55,073.073 INFO    ] 2026-08-31 19:47:55
[2026-08-31 19:47:55,108.108 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:47:55,372.372 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:47:55,375.375 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:47:55,587.587 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:47:55,632.632 INFO    ] time= 31/08/2026 19:47:55
[2026-08-31 19:47:55,647.647 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:47:55,668.668 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:47:55,800.800 INFO    ] No existing commands found in stream
[2026-08-31 19:48:00,812.812 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:48:00,815.815 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-08-31 19:48:01,778.778 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 19:48:01,783.783 INFO    ] Checking for system updates...
[2026-08-31 19:48:01,833.833 INFO    ] 200
[2026-08-31 19:48:01,836.836 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:48:01,904.904 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:48:01,908.908 INFO    ] No update needed
[2026-08-31 19:48:01,911.911 INFO    ] Checking for camera pi updates...
[2026-08-31 19:48:01,964.964 INFO    ] 200
[2026-08-31 19:48:01,967.967 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:48:02,013.013 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:48:02,077.077 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:48:02,080.080 INFO    ] No camera update needed
[2026-08-31 19:48:02,083.083 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:48:02,086.086 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:48:02,093.093 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:48:02,099.099 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:48:04,143.143 INFO    ] ================================================
[2026-08-31 19:48:04,158.158 INFO    ] Launching Daemon at Mon Aug 31 19:48:04 IST 2026
[2026-08-31 19:48:04,169.169 INFO    ] ================================================
[2026-08-31 19:48:04,740.740 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:48:04
[2026-08-31 19:48:05,329.329 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:48:05,582.582 INFO    ] Initializing speech engine...
[2026-08-31 19:48:05,604.604 INFO    ] 2026-08-31 19:48:05
[2026-08-31 19:48:05,861.861 INFO    ] 2026-08-31 19:48:05
[2026-08-31 19:48:05,898.898 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:48:06,072.072 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:48:06,085.085 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:48:06,296.296 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:48:06,303.303 INFO    ] time= 31/08/2026 19:48:06
[2026-08-31 19:48:06,363.363 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:48:06,417.417 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:48:06,552.552 INFO    ] No existing commands found in stream
[2026-08-31 19:48:11,574.574 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:48:11,577.577 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-08-31 19:48:15,268.268 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 19:48:15,271.271 INFO    ] Checking for system updates...
[2026-08-31 19:48:15,307.307 INFO    ] 200
[2026-08-31 19:48:15,310.310 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:48:15,369.369 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:48:15,372.372 INFO    ] No update needed
[2026-08-31 19:48:15,374.374 INFO    ] Checking for camera pi updates...
[2026-08-31 19:48:15,411.411 INFO    ] 200
[2026-08-31 19:48:15,414.414 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:48:15,459.459 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:48:15,521.521 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:48:15,523.523 INFO    ] No camera update needed
[2026-08-31 19:48:15,525.525 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:48:15,528.528 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:48:15,533.533 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:48:15,538.538 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:48:17,581.581 INFO    ] ================================================
[2026-08-31 19:48:17,597.597 INFO    ] Launching Daemon at Mon Aug 31 19:48:17 IST 2026
[2026-08-31 19:48:17,607.607 INFO    ] ================================================
[2026-08-31 19:48:18,174.174 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:48:18
[2026-08-31 19:48:18,764.764 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:48:19,016.016 INFO    ] Initializing speech engine...
[2026-08-31 19:48:19,025.025 INFO    ] 2026-08-31 19:48:19
[2026-08-31 19:48:19,296.296 INFO    ] 2026-08-31 19:48:19
[2026-08-31 19:48:19,331.331 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:48:19,577.577 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:48:19,592.592 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:48:19,809.809 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:48:19,861.861 INFO    ] time= 31/08/2026 19:48:19
[2026-08-31 19:48:19,867.867 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:48:19,883.883 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:48:20,005.005 INFO    ] No existing commands found in stream
[2026-08-31 19:48:25,032.032 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:48:25,034.034 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-08-31 19:48:29,358.358 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 19:48:29,360.360 INFO    ] Checking for system updates...
[2026-08-31 19:48:29,396.396 INFO    ] 200
[2026-08-31 19:48:29,398.398 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:48:29,451.451 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:48:29,454.454 INFO    ] No update needed
[2026-08-31 19:48:29,456.456 INFO    ] Checking for camera pi updates...
[2026-08-31 19:48:29,490.490 INFO    ] 200
[2026-08-31 19:48:29,492.492 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:48:29,533.533 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:48:29,617.617 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:48:29,620.620 INFO    ] No camera update needed
[2026-08-31 19:48:29,622.622 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:48:29,624.624 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:48:29,630.630 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:48:29,634.634 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:48:31,676.676 INFO    ] ================================================
[2026-08-31 19:48:31,693.693 INFO    ] Launching Daemon at Mon Aug 31 19:48:31 IST 2026
[2026-08-31 19:48:31,704.704 INFO    ] ================================================
[2026-08-31 19:48:32,364.364 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:48:32
[2026-08-31 19:48:33,038.038 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:48:33,346.346 INFO    ] Initializing speech engine...
[2026-08-31 19:48:33,359.359 INFO    ] 2026-08-31 19:48:33
[2026-08-31 19:48:33,649.649 INFO    ] 2026-08-31 19:48:33
[2026-08-31 19:48:33,755.755 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:48:34,045.045 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:48:34,073.073 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:48:34,261.261 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:48:34,320.320 INFO    ] time= 31/08/2026 19:48:34
[2026-08-31 19:48:34,378.378 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:48:34,438.438 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:48:34,566.566 INFO    ] No existing commands found in stream
[2026-08-31 19:48:39,598.598 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:48:39,601.601 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-08-31 19:48:44,167.167 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 19:48:44,170.170 INFO    ] Checking for system updates...
[2026-08-31 19:48:44,205.205 INFO    ] 200
[2026-08-31 19:48:44,208.208 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:48:44,268.268 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:48:44,270.270 INFO    ] No update needed
[2026-08-31 19:48:44,273.273 INFO    ] Checking for camera pi updates...
[2026-08-31 19:48:44,306.306 INFO    ] 200
[2026-08-31 19:48:44,309.309 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:48:44,350.350 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:48:44,439.439 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:48:44,441.441 INFO    ] No camera update needed
[2026-08-31 19:48:44,444.444 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:48:44,446.446 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:48:44,451.451 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:48:44,456.456 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:48:46,497.497 INFO    ] ================================================
[2026-08-31 19:48:46,512.512 INFO    ] Launching Daemon at Mon Aug 31 19:48:46 IST 2026
[2026-08-31 19:48:46,522.522 INFO    ] ================================================
[2026-08-31 19:48:47,184.184 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:48:47
[2026-08-31 19:48:47,868.868 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:48:48,175.175 INFO    ] Initializing speech engine...
[2026-08-31 19:48:48,182.182 INFO    ] 2026-08-31 19:48:48
[2026-08-31 19:48:48,457.457 INFO    ] 2026-08-31 19:48:48
[2026-08-31 19:48:48,515.515 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:48:48,748.748 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:48:48,758.758 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:48:48,914.914 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:48:48,991.991 INFO    ] time= 31/08/2026 19:48:48
[2026-08-31 19:48:49,032.032 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:48:49,050.050 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:48:49,173.173 INFO    ] No existing commands found in stream
[2026-08-31 19:48:54,202.202 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:48:54,205.205 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-08-31 19:48:57,614.614 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 19:48:57,617.617 INFO    ] Checking for system updates...
[2026-08-31 19:48:57,659.659 INFO    ] 200
[2026-08-31 19:48:57,662.662 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:48:57,723.723 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:48:57,726.726 INFO    ] No update needed
[2026-08-31 19:48:57,730.730 INFO    ] Checking for camera pi updates...
[2026-08-31 19:48:57,769.769 INFO    ] 200
[2026-08-31 19:48:57,772.772 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:48:57,819.819 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:48:57,918.918 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:48:57,921.921 INFO    ] No camera update needed
[2026-08-31 19:48:57,923.923 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:48:57,926.926 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:48:57,933.933 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:48:57,938.938 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:48:59,979.979 INFO    ] ================================================
[2026-08-31 19:48:59,994.994 INFO    ] Launching Daemon at Mon Aug 31 19:48:59 IST 2026
[2026-08-31 19:49:00,004.004 INFO    ] ================================================
[2026-08-31 19:49:00,676.676 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:49:00
[2026-08-31 19:49:01,462.462 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:49:01,792.792 INFO    ] Initializing speech engine...
[2026-08-31 19:49:01,796.796 INFO    ] 2026-08-31 19:49:01
[2026-08-31 19:49:02,142.142 INFO    ] 2026-08-31 19:49:02
[2026-08-31 19:49:02,195.195 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:49:02,472.472 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:49:02,485.485 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:49:02,671.671 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:49:02,722.722 INFO    ] time= 31/08/2026 19:49:02
[2026-08-31 19:49:02,770.770 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:49:02,817.817 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:49:02,884.884 INFO    ] No existing commands found in stream
[2026-08-31 19:49:07,907.907 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:49:07,910.910 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-08-31 19:49:11,935.935 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 19:49:11,938.938 INFO    ] Checking for system updates...
[2026-08-31 19:49:11,975.975 INFO    ] 200
[2026-08-31 19:49:11,978.978 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:49:12,032.032 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:49:12,035.035 INFO    ] No update needed
[2026-08-31 19:49:12,038.038 INFO    ] Checking for camera pi updates...
[2026-08-31 19:49:12,072.072 INFO    ] 200
[2026-08-31 19:49:12,074.074 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:49:12,120.120 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:49:12,206.206 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:49:12,209.209 INFO    ] No camera update needed
[2026-08-31 19:49:12,212.212 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:49:12,214.214 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:49:12,221.221 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:49:12,226.226 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:49:14,267.267 INFO    ] ================================================
[2026-08-31 19:49:14,283.283 INFO    ] Launching Daemon at Mon Aug 31 19:49:14 IST 2026
[2026-08-31 19:49:14,293.293 INFO    ] ================================================
[2026-08-31 19:49:14,938.938 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:49:14
[2026-08-31 19:49:15,601.601 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:49:15,902.902 INFO    ] Initializing speech engine...
[2026-08-31 19:49:15,911.911 INFO    ] 2026-08-31 19:49:15
[2026-08-31 19:49:16,199.199 INFO    ] 2026-08-31 19:49:16
[2026-08-31 19:49:16,245.245 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:49:16,475.475 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:49:16,482.482 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:49:16,685.685 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:49:16,740.740 INFO    ] time= 31/08/2026 19:49:16
[2026-08-31 19:49:16,754.754 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:49:16,776.776 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:49:16,908.908 INFO    ] No existing commands found in stream
[2026-08-31 19:49:21,923.923 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:49:21,926.926 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-08-31 19:49:25,435.435 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 19:49:25,438.438 INFO    ] Checking for system updates...
[2026-08-31 19:49:25,475.475 INFO    ] 200
[2026-08-31 19:49:25,478.478 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:49:25,531.531 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:49:25,534.534 INFO    ] No update needed
[2026-08-31 19:49:25,537.537 INFO    ] Checking for camera pi updates...
[2026-08-31 19:49:25,572.572 INFO    ] 200
[2026-08-31 19:49:25,574.574 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:49:25,617.617 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:49:25,800.800 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:49:25,803.803 INFO    ] No camera update needed
[2026-08-31 19:49:25,806.806 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:49:25,808.808 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:49:25,815.815 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:49:25,820.820 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:49:27,861.861 INFO    ] ================================================
[2026-08-31 19:49:27,876.876 INFO    ] Launching Daemon at Mon Aug 31 19:49:27 IST 2026
[2026-08-31 19:49:27,887.887 INFO    ] ================================================
[2026-08-31 19:49:28,465.465 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:49:28
[2026-08-31 19:49:29,062.062 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:49:29,342.342 INFO    ] Initializing speech engine...
[2026-08-31 19:49:29,345.345 INFO    ] 2026-08-31 19:49:29
[2026-08-31 19:49:29,598.598 INFO    ] 2026-08-31 19:49:29
[2026-08-31 19:49:29,639.639 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:49:29,873.873 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:49:29,894.894 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:49:30,110.110 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:49:30,157.157 INFO    ] time= 31/08/2026 19:49:30
[2026-08-31 19:49:30,163.163 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:49:30,178.178 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:49:30,291.291 INFO    ] No existing commands found in stream
[2026-08-31 19:49:35,320.320 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:49:35,325.325 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-08-31 19:49:39,601.601 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 19:49:39,604.604 INFO    ] Checking for system updates...
[2026-08-31 19:49:39,639.639 INFO    ] 200
[2026-08-31 19:49:39,642.642 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:49:39,696.696 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:49:39,698.698 INFO    ] No update needed
[2026-08-31 19:49:39,701.701 INFO    ] Checking for camera pi updates...
[2026-08-31 19:49:39,739.739 INFO    ] 200
[2026-08-31 19:49:39,742.742 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:49:39,783.783 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:49:39,865.865 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:49:39,867.867 INFO    ] No camera update needed
[2026-08-31 19:49:39,870.870 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:49:39,872.872 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:49:39,877.877 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:49:39,882.882 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:49:41,922.922 INFO    ] ================================================
[2026-08-31 19:49:41,937.937 INFO    ] Launching Daemon at Mon Aug 31 19:49:41 IST 2026
[2026-08-31 19:49:41,948.948 INFO    ] ================================================
[2026-08-31 19:49:42,612.612 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:49:42
[2026-08-31 19:49:43,300.300 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:49:43,606.606 INFO    ] Initializing speech engine...
[2026-08-31 19:49:43,615.615 INFO    ] 2026-08-31 19:49:43
[2026-08-31 19:49:43,895.895 INFO    ] 2026-08-31 19:49:43
[2026-08-31 19:49:43,949.949 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:49:44,200.200 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:49:44,244.244 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:49:44,445.445 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:49:44,452.452 INFO    ] time= 31/08/2026 19:49:44
[2026-08-31 19:49:44,474.474 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:49:44,502.502 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:49:44,621.621 INFO    ] No existing commands found in stream
[2026-08-31 19:49:49,652.652 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:49:49,655.655 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-08-31 19:49:50,450.450 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 19:49:50,453.453 INFO    ] Checking for system updates...
[2026-08-31 19:49:50,491.491 INFO    ] 200
[2026-08-31 19:49:50,494.494 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:49:50,546.546 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:49:50,549.549 INFO    ] No update needed
[2026-08-31 19:49:50,552.552 INFO    ] Checking for camera pi updates...
[2026-08-31 19:49:50,585.585 INFO    ] 200
[2026-08-31 19:49:50,588.588 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:49:50,629.629 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:49:50,727.727 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:49:50,729.729 INFO    ] No camera update needed
[2026-08-31 19:49:50,732.732 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:49:50,734.734 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:49:50,739.739 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:49:50,744.744 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:49:52,785.785 INFO    ] ================================================
[2026-08-31 19:49:52,801.801 INFO    ] Launching Daemon at Mon Aug 31 19:49:52 IST 2026
[2026-08-31 19:49:52,811.811 INFO    ] ================================================
[2026-08-31 19:49:53,377.377 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:49:53
[2026-08-31 19:49:53,960.960 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:49:54,220.220 INFO    ] Initializing speech engine...
[2026-08-31 19:49:54,240.240 INFO    ] 2026-08-31 19:49:54
[2026-08-31 19:49:54,491.491 INFO    ] 2026-08-31 19:49:54
[2026-08-31 19:49:54,526.526 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:49:54,710.710 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:49:54,726.726 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:49:54,863.863 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:49:54,868.868 INFO    ] time= 31/08/2026 19:49:54
[2026-08-31 19:49:54,916.916 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:49:54,939.939 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:49:55,041.041 INFO    ] No existing commands found in stream
[2026-08-31 19:50:00,066.066 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:50:00,069.069 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-08-31 19:50:06,588.588 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 19:50:06,591.591 INFO    ] Checking for system updates...
[2026-08-31 19:50:06,628.628 INFO    ] 200
[2026-08-31 19:50:06,631.631 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:50:06,683.683 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:50:06,686.686 INFO    ] No update needed
[2026-08-31 19:50:06,688.688 INFO    ] Checking for camera pi updates...
[2026-08-31 19:50:06,721.721 INFO    ] 200
[2026-08-31 19:50:06,724.724 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:50:06,765.765 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:50:06,856.856 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:50:06,858.858 INFO    ] No camera update needed
[2026-08-31 19:50:06,860.860 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:50:06,863.863 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:50:06,868.868 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:50:06,873.873 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:50:08,914.914 INFO    ] ================================================
[2026-08-31 19:50:08,928.928 INFO    ] Launching Daemon at Mon Aug 31 19:50:08 IST 2026
[2026-08-31 19:50:08,939.939 INFO    ] ================================================
[2026-08-31 19:50:09,521.521 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:50:09
[2026-08-31 19:50:10,110.110 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:50:10,370.370 INFO    ] Initializing speech engine...
[2026-08-31 19:50:10,384.384 INFO    ] 2026-08-31 19:50:10
[2026-08-31 19:50:10,641.641 INFO    ] 2026-08-31 19:50:10
[2026-08-31 19:50:10,677.677 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:50:10,933.933 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:50:10,943.943 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:50:11,162.162 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:50:11,207.207 INFO    ] time= 31/08/2026 19:50:11
[2026-08-31 19:50:11,225.225 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:50:11,231.231 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:50:11,359.359 INFO    ] No existing commands found in stream
[2026-08-31 19:50:16,376.376 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:50:16,379.379 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-08-31 19:50:19,313.313 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 19:50:19,315.315 INFO    ] Checking for system updates...
[2026-08-31 19:50:19,360.360 INFO    ] 200
[2026-08-31 19:50:19,364.364 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:50:19,448.448 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:50:19,451.451 INFO    ] No update needed
[2026-08-31 19:50:19,454.454 INFO    ] Checking for camera pi updates...
[2026-08-31 19:50:19,510.510 INFO    ] 200
[2026-08-31 19:50:19,513.513 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:50:19,596.596 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:50:19,682.682 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:50:19,685.685 INFO    ] No camera update needed
[2026-08-31 19:50:19,688.688 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:50:19,690.690 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:50:19,696.696 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:50:19,702.702 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:50:21,743.743 INFO    ] ================================================
[2026-08-31 19:50:21,758.758 INFO    ] Launching Daemon at Mon Aug 31 19:50:21 IST 2026
[2026-08-31 19:50:21,769.769 INFO    ] ================================================
[2026-08-31 19:50:22,343.343 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:50:22
[2026-08-31 19:50:22,939.939 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:50:23,211.211 INFO    ] Initializing speech engine...
[2026-08-31 19:50:23,221.221 INFO    ] 2026-08-31 19:50:23
[2026-08-31 19:50:23,470.470 INFO    ] 2026-08-31 19:50:23
[2026-08-31 19:50:23,505.505 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:50:23,761.761 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:50:23,766.766 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:50:23,972.972 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:50:24,022.022 INFO    ] time= 31/08/2026 19:50:23
[2026-08-31 19:50:24,028.028 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:50:24,046.046 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:50:24,171.171 INFO    ] No existing commands found in stream
[2026-08-31 19:50:29,186.186 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:50:29,189.189 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-08-31 19:50:31,841.841 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 19:50:31,844.844 INFO    ] Checking for system updates...
[2026-08-31 19:50:31,883.883 INFO    ] 200
[2026-08-31 19:50:31,886.886 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:50:31,946.946 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:50:31,949.949 INFO    ] No update needed
[2026-08-31 19:50:31,952.952 INFO    ] Checking for camera pi updates...
[2026-08-31 19:50:31,991.991 INFO    ] 200
[2026-08-31 19:50:31,994.994 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:50:32,038.038 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:50:32,102.102 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:50:32,104.104 INFO    ] No camera update needed
[2026-08-31 19:50:32,107.107 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:50:32,110.110 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:50:32,115.115 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:50:32,121.121 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:50:34,161.161 INFO    ] ================================================
[2026-08-31 19:50:34,176.176 INFO    ] Launching Daemon at Mon Aug 31 19:50:34 IST 2026
[2026-08-31 19:50:34,187.187 INFO    ] ================================================
[2026-08-31 19:50:34,775.775 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:50:34
[2026-08-31 19:50:35,435.435 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:50:35,735.735 INFO    ] Initializing speech engine...
[2026-08-31 19:50:35,744.744 INFO    ] 2026-08-31 19:50:35
[2026-08-31 19:50:36,034.034 INFO    ] 2026-08-31 19:50:36
[2026-08-31 19:50:36,079.079 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:50:36,367.367 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:50:36,377.377 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:50:36,563.563 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:50:36,583.583 INFO    ] time= 31/08/2026 19:50:36
[2026-08-31 19:50:36,598.598 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:50:36,605.605 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:50:36,725.725 INFO    ] No existing commands found in stream
[2026-08-31 19:50:41,751.751 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:50:41,754.754 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-08-31 19:50:42,473.473 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 19:50:42,476.476 INFO    ] Checking for system updates...
[2026-08-31 19:50:42,513.513 INFO    ] 200
[2026-08-31 19:50:42,515.515 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:50:42,571.571 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:50:42,573.573 INFO    ] No update needed
[2026-08-31 19:50:42,576.576 INFO    ] Checking for camera pi updates...
[2026-08-31 19:50:42,610.610 INFO    ] 200
[2026-08-31 19:50:42,612.612 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:50:42,652.652 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:50:42,759.759 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:50:42,762.762 INFO    ] No camera update needed
[2026-08-31 19:50:42,764.764 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:50:42,767.767 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:50:42,773.773 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:50:42,779.779 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:50:44,820.820 INFO    ] ================================================
[2026-08-31 19:50:44,835.835 INFO    ] Launching Daemon at Mon Aug 31 19:50:44 IST 2026
[2026-08-31 19:50:44,846.846 INFO    ] ================================================
[2026-08-31 19:50:45,481.481 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:50:45
[2026-08-31 19:50:46,137.137 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:50:46,441.441 INFO    ] Initializing speech engine...
[2026-08-31 19:50:46,449.449 INFO    ] 2026-08-31 19:50:46
[2026-08-31 19:50:46,717.717 INFO    ] 2026-08-31 19:50:46
[2026-08-31 19:50:46,753.753 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:50:47,005.005 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:50:47,015.015 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:50:47,168.168 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:50:47,228.228 INFO    ] time= 31/08/2026 19:50:47
[2026-08-31 19:50:47,284.284 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:50:47,291.291 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:50:47,438.438 INFO    ] No existing commands found in stream
[2026-08-31 19:50:52,452.452 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:50:52,455.455 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-08-31 19:50:54,115.115 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 19:50:54,118.118 INFO    ] Checking for system updates...
[2026-08-31 19:50:54,155.155 INFO    ] 200
[2026-08-31 19:50:54,158.158 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:50:54,212.212 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:50:54,215.215 INFO    ] No update needed
[2026-08-31 19:50:54,217.217 INFO    ] Checking for camera pi updates...
[2026-08-31 19:50:54,252.252 INFO    ] 200
[2026-08-31 19:50:54,255.255 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:50:54,298.298 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:50:54,387.387 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:50:54,390.390 INFO    ] No camera update needed
[2026-08-31 19:50:54,392.392 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:50:54,394.394 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:50:54,400.400 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:50:54,405.405 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:50:56,445.445 INFO    ] ================================================
[2026-08-31 19:50:56,460.460 INFO    ] Launching Daemon at Mon Aug 31 19:50:56 IST 2026
[2026-08-31 19:50:56,470.470 INFO    ] ================================================
[2026-08-31 19:50:57,034.034 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:50:57
[2026-08-31 19:50:57,633.633 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:50:57,936.936 INFO    ] Initializing speech engine...
[2026-08-31 19:50:57,948.948 INFO    ] 2026-08-31 19:50:57
[2026-08-31 19:50:58,253.253 INFO    ] 2026-08-31 19:50:58
[2026-08-31 19:50:58,329.329 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:50:58,553.553 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:50:58,559.559 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:50:58,751.751 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:50:58,759.759 INFO    ] time= 31/08/2026 19:50:58
[2026-08-31 19:50:58,781.781 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:50:58,807.807 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:50:58,914.914 INFO    ] No existing commands found in stream
[2026-08-31 19:51:03,939.939 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:51:03,942.942 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-08-31 19:51:04,891.891 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 19:51:04,894.894 INFO    ] Checking for system updates...
[2026-08-31 19:51:04,929.929 INFO    ] 200
[2026-08-31 19:51:04,932.932 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:51:04,984.984 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:51:04,987.987 INFO    ] No update needed
[2026-08-31 19:51:04,989.989 INFO    ] Checking for camera pi updates...
[2026-08-31 19:51:05,023.023 INFO    ] 200
[2026-08-31 19:51:05,025.025 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:51:05,065.065 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:51:05,168.168 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:51:05,171.171 INFO    ] No camera update needed
[2026-08-31 19:51:05,173.173 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:51:05,175.175 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:51:05,181.181 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:51:05,186.186 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:51:07,227.227 INFO    ] ================================================
[2026-08-31 19:51:07,242.242 INFO    ] Launching Daemon at Mon Aug 31 19:51:07 IST 2026
[2026-08-31 19:51:07,253.253 INFO    ] ================================================
[2026-08-31 19:51:07,865.865 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:51:07
[2026-08-31 19:51:08,496.496 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:51:08,796.796 INFO    ] Initializing speech engine...
[2026-08-31 19:51:08,803.803 INFO    ] 2026-08-31 19:51:08
[2026-08-31 19:51:09,100.100 INFO    ] 2026-08-31 19:51:09
[2026-08-31 19:51:09,165.165 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:51:09,391.391 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:51:09,401.401 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:51:09,539.539 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:51:09,609.609 INFO    ] time= 31/08/2026 19:51:09
[2026-08-31 19:51:09,669.669 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:51:09,678.678 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:51:09,802.802 INFO    ] No existing commands found in stream
[2026-08-31 19:51:14,832.832 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:51:14,835.835 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-08-31 19:51:15,853.853 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 19:51:15,855.855 INFO    ] Checking for system updates...
[2026-08-31 19:51:15,891.891 INFO    ] 200
[2026-08-31 19:51:15,893.893 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:51:15,946.946 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:51:15,948.948 INFO    ] No update needed
[2026-08-31 19:51:15,951.951 INFO    ] Checking for camera pi updates...
[2026-08-31 19:51:15,984.984 INFO    ] 200
[2026-08-31 19:51:15,987.987 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:51:16,027.027 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:51:16,130.130 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:51:16,133.133 INFO    ] No camera update needed
[2026-08-31 19:51:16,135.135 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:51:16,137.137 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:51:16,143.143 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:51:16,148.148 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:51:18,190.190 INFO    ] ================================================
[2026-08-31 19:51:18,206.206 INFO    ] Launching Daemon at Mon Aug 31 19:51:18 IST 2026
[2026-08-31 19:51:18,218.218 INFO    ] ================================================
[2026-08-31 19:51:18,785.785 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:51:18
[2026-08-31 19:51:19,391.391 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:51:19,665.665 INFO    ] Initializing speech engine...
[2026-08-31 19:51:19,674.674 INFO    ] 2026-08-31 19:51:19
[2026-08-31 19:51:19,963.963 INFO    ] 2026-08-31 19:51:19
[2026-08-31 19:51:20,008.008 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:51:20,290.290 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:51:20,298.298 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:51:20,495.495 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:51:20,514.514 INFO    ] time= 31/08/2026 19:51:20
[2026-08-31 19:51:20,523.523 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:51:20,549.549 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:51:20,666.666 INFO    ] No existing commands found in stream
[2026-08-31 19:51:25,702.702 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:51:25,705.705 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-08-31 19:51:29,491.491 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 19:51:29,494.494 INFO    ] Checking for system updates...
[2026-08-31 19:51:29,536.536 INFO    ] 200
[2026-08-31 19:51:29,539.539 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:51:29,598.598 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:51:29,601.601 INFO    ] No update needed
[2026-08-31 19:51:29,604.604 INFO    ] Checking for camera pi updates...
[2026-08-31 19:51:29,646.646 INFO    ] 200
[2026-08-31 19:51:29,650.650 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:51:29,696.696 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:51:29,881.881 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:51:29,884.884 INFO    ] No camera update needed
[2026-08-31 19:51:29,887.887 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:51:29,890.890 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:51:29,896.896 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:51:29,903.903 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:51:31,944.944 INFO    ] ================================================
[2026-08-31 19:51:31,962.962 INFO    ] Launching Daemon at Mon Aug 31 19:51:31 IST 2026
[2026-08-31 19:51:31,973.973 INFO    ] ================================================
[2026-08-31 19:51:32,696.696 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:51:32
[2026-08-31 19:51:33,413.413 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:51:33,727.727 INFO    ] Initializing speech engine...
[2026-08-31 19:51:33,737.737 INFO    ] 2026-08-31 19:51:33
[2026-08-31 19:51:34,050.050 INFO    ] 2026-08-31 19:51:34
[2026-08-31 19:51:34,137.137 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:51:34,352.352 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:51:34,361.361 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:51:34,554.554 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:51:34,576.576 INFO    ] time= 31/08/2026 19:51:34
[2026-08-31 19:51:34,602.602 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:51:34,609.609 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:51:34,714.714 INFO    ] No existing commands found in stream
[2026-08-31 19:51:39,738.738 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:51:39,742.742 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-08-31 19:51:43,796.796 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 19:51:43,799.799 INFO    ] Checking for system updates...
[2026-08-31 19:51:43,835.835 INFO    ] 200
[2026-08-31 19:51:43,838.838 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:51:43,891.891 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:51:43,894.894 INFO    ] No update needed
[2026-08-31 19:51:43,896.896 INFO    ] Checking for camera pi updates...
[2026-08-31 19:51:43,929.929 INFO    ] 200
[2026-08-31 19:51:43,932.932 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:51:43,972.972 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:51:44,066.066 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:51:44,068.068 INFO    ] No camera update needed
[2026-08-31 19:51:44,071.071 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:51:44,073.073 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:51:44,078.078 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:51:44,083.083 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:51:46,124.124 INFO    ] ================================================
[2026-08-31 19:51:46,139.139 INFO    ] Launching Daemon at Mon Aug 31 19:51:46 IST 2026
[2026-08-31 19:51:46,150.150 INFO    ] ================================================
[2026-08-31 19:51:46,821.821 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:51:46
[2026-08-31 19:51:47,511.511 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:51:47,821.821 INFO    ] Initializing speech engine...
[2026-08-31 19:51:47,834.834 INFO    ] 2026-08-31 19:51:47
[2026-08-31 19:51:48,108.108 INFO    ] 2026-08-31 19:51:48
[2026-08-31 19:51:48,164.164 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:51:48,391.391 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:51:48,397.397 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:51:48,605.605 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:51:48,655.655 INFO    ] time= 31/08/2026 19:51:48
[2026-08-31 19:51:48,672.672 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:51:48,683.683 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:51:48,816.816 INFO    ] No existing commands found in stream
[2026-08-31 19:51:53,843.843 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:51:53,846.846 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-08-31 19:51:57,177.177 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 19:51:57,180.180 INFO    ] Checking for system updates...
[2026-08-31 19:51:57,216.216 INFO    ] 200
[2026-08-31 19:51:57,219.219 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:51:57,273.273 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:51:57,275.275 INFO    ] No update needed
[2026-08-31 19:51:57,278.278 INFO    ] Checking for camera pi updates...
[2026-08-31 19:51:57,317.317 INFO    ] 200
[2026-08-31 19:51:57,320.320 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:51:57,360.360 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:51:57,444.444 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:51:57,446.446 INFO    ] No camera update needed
[2026-08-31 19:51:57,448.448 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:51:57,451.451 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:51:57,456.456 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:51:57,461.461 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:51:59,501.501 INFO    ] ================================================
[2026-08-31 19:51:59,516.516 INFO    ] Launching Daemon at Mon Aug 31 19:51:59 IST 2026
[2026-08-31 19:51:59,526.526 INFO    ] ================================================
[2026-08-31 19:52:00,097.097 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:52:00
[2026-08-31 19:52:00,683.683 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:52:00,930.930 INFO    ] Initializing speech engine...
[2026-08-31 19:52:00,938.938 INFO    ] 2026-08-31 19:52:00
[2026-08-31 19:52:01,213.213 INFO    ] 2026-08-31 19:52:01
[2026-08-31 19:52:01,248.248 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:52:01,509.509 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:52:01,519.519 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:52:01,720.720 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:52:01,724.724 INFO    ] time= 31/08/2026 19:52:01
[2026-08-31 19:52:01,730.730 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:52:01,733.733 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:52:01,788.788 INFO    ] No existing commands found in stream
[2026-08-31 19:52:06,798.798 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:52:06,801.801 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-08-31 19:52:07,874.874 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 19:52:07,876.876 INFO    ] Checking for system updates...
[2026-08-31 19:52:07,914.914 INFO    ] 200
[2026-08-31 19:52:07,916.916 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:52:07,970.970 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:52:07,972.972 INFO    ] No update needed
[2026-08-31 19:52:07,975.975 INFO    ] Checking for camera pi updates...
[2026-08-31 19:52:08,013.013 INFO    ] 200
[2026-08-31 19:52:08,015.015 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:52:08,056.056 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:52:08,139.139 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:52:08,142.142 INFO    ] No camera update needed
[2026-08-31 19:52:08,144.144 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:52:08,146.146 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:52:08,152.152 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:52:08,157.157 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:52:10,199.199 INFO    ] ================================================
[2026-08-31 19:52:10,214.214 INFO    ] Launching Daemon at Mon Aug 31 19:52:10 IST 2026
[2026-08-31 19:52:10,225.225 INFO    ] ================================================
[2026-08-31 19:52:10,805.805 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:52:10
[2026-08-31 19:52:11,402.402 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:52:11,675.675 INFO    ] Initializing speech engine...
[2026-08-31 19:52:11,686.686 INFO    ] 2026-08-31 19:52:11
[2026-08-31 19:52:11,933.933 INFO    ] 2026-08-31 19:52:11
[2026-08-31 19:52:12,000.000 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:52:12,249.249 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:52:12,253.253 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:52:12,444.444 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:52:12,489.489 INFO    ] time= 31/08/2026 19:52:12
[2026-08-31 19:52:12,495.495 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:52:12,512.512 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:52:12,642.642 INFO    ] No existing commands found in stream
[2026-08-31 19:52:17,658.658 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:52:17,660.660 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-08-31 19:52:21,501.501 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 19:52:21,503.503 INFO    ] Checking for system updates...
[2026-08-31 19:52:21,543.543 INFO    ] 200
[2026-08-31 19:52:21,546.546 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:52:21,599.599 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:52:21,602.602 INFO    ] No update needed
[2026-08-31 19:52:21,604.604 INFO    ] Checking for camera pi updates...
[2026-08-31 19:52:21,646.646 INFO    ] 200
[2026-08-31 19:52:21,649.649 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:52:21,694.694 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:52:21,775.775 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:52:21,778.778 INFO    ] No camera update needed
[2026-08-31 19:52:21,780.780 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:52:21,782.782 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:52:21,788.788 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:52:21,793.793 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:52:23,836.836 INFO    ] ================================================
[2026-08-31 19:52:23,852.852 INFO    ] Launching Daemon at Mon Aug 31 19:52:23 IST 2026
[2026-08-31 19:52:23,862.862 INFO    ] ================================================
[2026-08-31 19:52:24,426.426 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:52:24
[2026-08-31 19:52:25,015.015 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:52:25,318.318 INFO    ] Initializing speech engine...
[2026-08-31 19:52:25,331.331 INFO    ] 2026-08-31 19:52:25
[2026-08-31 19:52:25,603.603 INFO    ] 2026-08-31 19:52:25
[2026-08-31 19:52:25,648.648 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:52:25,906.906 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:52:25,924.924 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:52:26,125.125 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:52:26,145.145 INFO    ] time= 31/08/2026 19:52:26
[2026-08-31 19:52:26,161.161 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:52:26,170.170 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:52:26,293.293 INFO    ] No existing commands found in stream
[2026-08-31 19:52:31,309.309 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:52:31,312.312 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-08-31 19:52:33,794.794 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 19:52:33,798.798 INFO    ] Checking for system updates...
[2026-08-31 19:52:33,838.838 INFO    ] 200
[2026-08-31 19:52:33,841.841 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:52:33,903.903 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:52:33,905.905 INFO    ] No update needed
[2026-08-31 19:52:33,908.908 INFO    ] Checking for camera pi updates...
[2026-08-31 19:52:33,941.941 INFO    ] 200
[2026-08-31 19:52:33,943.943 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:52:33,983.983 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:52:34,070.070 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:52:34,072.072 INFO    ] No camera update needed
[2026-08-31 19:52:34,075.075 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:52:34,077.077 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:52:34,082.082 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:52:34,087.087 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:52:36,129.129 INFO    ] ================================================
[2026-08-31 19:52:36,144.144 INFO    ] Launching Daemon at Mon Aug 31 19:52:36 IST 2026
[2026-08-31 19:52:36,155.155 INFO    ] ================================================
[2026-08-31 19:52:36,739.739 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:52:36
[2026-08-31 19:52:37,340.340 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:52:37,612.612 INFO    ] Initializing speech engine...
[2026-08-31 19:52:37,621.621 INFO    ] 2026-08-31 19:52:37
[2026-08-31 19:52:37,877.877 INFO    ] 2026-08-31 19:52:37
[2026-08-31 19:52:37,935.935 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:52:38,156.156 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:52:38,167.167 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:52:38,299.299 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:52:38,365.365 INFO    ] time= 31/08/2026 19:52:38
[2026-08-31 19:52:38,425.425 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:52:38,432.432 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:52:38,573.573 INFO    ] No existing commands found in stream
[2026-08-31 19:52:43,589.589 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:52:43,591.591 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-08-31 19:52:44,526.526 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 19:52:44,528.528 INFO    ] Checking for system updates...
[2026-08-31 19:52:44,565.565 INFO    ] 200
[2026-08-31 19:52:44,568.568 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:52:44,631.631 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:52:44,634.634 INFO    ] No update needed
[2026-08-31 19:52:44,637.637 INFO    ] Checking for camera pi updates...
[2026-08-31 19:52:44,676.676 INFO    ] 200
[2026-08-31 19:52:44,679.679 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:52:44,721.721 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:52:44,826.826 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:52:44,829.829 INFO    ] No camera update needed
[2026-08-31 19:52:44,832.832 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:52:44,835.835 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:52:44,841.841 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:52:44,847.847 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:52:46,888.888 INFO    ] ================================================
[2026-08-31 19:52:46,903.903 INFO    ] Launching Daemon at Mon Aug 31 19:52:46 IST 2026
[2026-08-31 19:52:46,914.914 INFO    ] ================================================
[2026-08-31 19:52:47,480.480 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:52:47
[2026-08-31 19:52:48,064.064 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:52:48,326.326 INFO    ] Initializing speech engine...
[2026-08-31 19:52:48,348.348 INFO    ] 2026-08-31 19:52:48
[2026-08-31 19:52:48,629.629 INFO    ] 2026-08-31 19:52:48
[2026-08-31 19:52:48,668.668 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:52:48,966.966 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:52:48,976.976 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:52:49,132.132 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:52:49,149.149 INFO    ] time= 31/08/2026 19:52:49
[2026-08-31 19:52:49,214.214 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:52:49,278.278 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:52:49,351.351 INFO    ] No existing commands found in stream
[2026-08-31 19:52:54,362.362 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:52:54,364.364 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-08-31 19:52:59,094.094 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 19:52:59,097.097 INFO    ] Checking for system updates...
[2026-08-31 19:52:59,137.137 INFO    ] 200
[2026-08-31 19:52:59,140.140 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:52:59,192.192 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:52:59,194.194 INFO    ] No update needed
[2026-08-31 19:52:59,196.196 INFO    ] Checking for camera pi updates...
[2026-08-31 19:52:59,230.230 INFO    ] 200
[2026-08-31 19:52:59,233.233 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:52:59,279.279 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:52:59,374.374 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:52:59,376.376 INFO    ] No camera update needed
[2026-08-31 19:52:59,379.379 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:52:59,381.381 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:52:59,386.386 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:52:59,391.391 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:53:01,437.437 INFO    ] ================================================
[2026-08-31 19:53:01,466.466 INFO    ] Launching Daemon at Mon Aug 31 19:53:01 IST 2026
[2026-08-31 19:53:01,512.512 INFO    ] ================================================
[2026-08-31 19:53:02,198.198 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:53:02
[2026-08-31 19:53:02,842.842 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:53:03,201.201 INFO    ] Initializing speech engine...
[2026-08-31 19:53:03,213.213 INFO    ] 2026-08-31 19:53:03
[2026-08-31 19:53:03,477.477 INFO    ] 2026-08-31 19:53:03
[2026-08-31 19:53:03,544.544 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:53:03,773.773 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:53:03,777.777 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:53:03,915.915 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:53:03,969.969 INFO    ] time= 31/08/2026 19:53:03
[2026-08-31 19:53:04,029.029 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:53:04,049.049 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:53:04,193.193 INFO    ] No existing commands found in stream
[2026-08-31 19:53:09,209.209 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:53:09,212.212 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-08-31 19:53:13,335.335 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 19:53:13,338.338 INFO    ] Checking for system updates...
[2026-08-31 19:53:13,373.373 INFO    ] 200
[2026-08-31 19:53:13,376.376 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:53:13,435.435 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:53:13,438.438 INFO    ] No update needed
[2026-08-31 19:53:13,440.440 INFO    ] Checking for camera pi updates...
[2026-08-31 19:53:13,479.479 INFO    ] 200
[2026-08-31 19:53:13,482.482 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:53:13,522.522 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:53:13,618.618 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:53:13,620.620 INFO    ] No camera update needed
[2026-08-31 19:53:13,623.623 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:53:13,625.625 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:53:13,630.630 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:53:13,635.635 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:53:15,676.676 INFO    ] ================================================
[2026-08-31 19:53:15,692.692 INFO    ] Launching Daemon at Mon Aug 31 19:53:15 IST 2026
[2026-08-31 19:53:15,702.702 INFO    ] ================================================
[2026-08-31 19:53:16,283.283 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:53:16
[2026-08-31 19:53:16,880.880 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:53:17,153.153 INFO    ] Initializing speech engine...
[2026-08-31 19:53:17,163.163 INFO    ] 2026-08-31 19:53:17
[2026-08-31 19:53:17,412.412 INFO    ] 2026-08-31 19:53:17
[2026-08-31 19:53:17,480.480 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:53:17,724.724 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:53:17,732.732 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:53:17,939.939 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:53:17,970.970 INFO    ] time= 31/08/2026 19:53:17
[2026-08-31 19:53:17,985.985 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:53:17,994.994 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:53:18,122.122 INFO    ] No existing commands found in stream
[2026-08-31 19:53:23,137.137 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:53:23,140.140 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-08-31 19:53:27,101.101 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 19:53:27,103.103 INFO    ] Checking for system updates...
[2026-08-31 19:53:27,139.139 INFO    ] 200
[2026-08-31 19:53:27,141.141 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:53:27,201.201 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:53:27,203.203 INFO    ] No update needed
[2026-08-31 19:53:27,206.206 INFO    ] Checking for camera pi updates...
[2026-08-31 19:53:27,239.239 INFO    ] 200
[2026-08-31 19:53:27,242.242 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:53:27,287.287 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:53:27,367.367 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:53:27,369.369 INFO    ] No camera update needed
[2026-08-31 19:53:27,372.372 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:53:27,374.374 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:53:27,380.380 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:53:27,385.385 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:53:29,425.425 INFO    ] ================================================
[2026-08-31 19:53:29,441.441 INFO    ] Launching Daemon at Mon Aug 31 19:53:29 IST 2026
[2026-08-31 19:53:29,451.451 INFO    ] ================================================
[2026-08-31 19:53:30,033.033 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:53:30
[2026-08-31 19:53:30,663.663 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:53:30,969.969 INFO    ] Initializing speech engine...
[2026-08-31 19:53:30,981.981 INFO    ] 2026-08-31 19:53:30
[2026-08-31 19:53:31,293.293 INFO    ] 2026-08-31 19:53:31
[2026-08-31 19:53:31,376.376 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:53:31,563.563 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:53:31,590.590 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:53:31,782.782 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:53:31,819.819 INFO    ] time= 31/08/2026 19:53:31
[2026-08-31 19:53:31,826.826 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:53:31,848.848 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:53:31,969.969 INFO    ] No existing commands found in stream
[2026-08-31 19:53:36,991.991 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:53:36,993.993 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-08-31 19:53:37,761.761 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 19:53:37,763.763 INFO    ] Checking for system updates...
[2026-08-31 19:53:37,800.800 INFO    ] 200
[2026-08-31 19:53:37,802.802 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:53:37,859.859 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:53:37,862.862 INFO    ] No update needed
[2026-08-31 19:53:37,864.864 INFO    ] Checking for camera pi updates...
[2026-08-31 19:53:37,901.901 INFO    ] 200
[2026-08-31 19:53:37,903.903 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:53:37,950.950 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:53:38,033.033 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:53:38,036.036 INFO    ] No camera update needed
[2026-08-31 19:53:38,039.039 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:53:38,042.042 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:53:38,048.048 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:53:38,053.053 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:53:40,093.093 INFO    ] ================================================
[2026-08-31 19:53:40,109.109 INFO    ] Launching Daemon at Mon Aug 31 19:53:40 IST 2026
[2026-08-31 19:53:40,119.119 INFO    ] ================================================
[2026-08-31 19:53:40,770.770 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:53:40
[2026-08-31 19:53:41,364.364 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:53:41,635.635 INFO    ] Initializing speech engine...
[2026-08-31 19:53:41,644.644 INFO    ] 2026-08-31 19:53:41
[2026-08-31 19:53:41,893.893 INFO    ] 2026-08-31 19:53:41
[2026-08-31 19:53:41,933.933 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:53:42,179.179 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:53:42,188.188 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:53:42,402.402 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:53:42,446.446 INFO    ] time= 31/08/2026 19:53:42
[2026-08-31 19:53:42,452.452 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:53:42,474.474 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:53:42,599.599 INFO    ] No existing commands found in stream
[2026-08-31 19:53:47,613.613 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:53:47,616.616 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-08-31 19:53:49,527.527 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 19:53:49,530.530 INFO    ] Checking for system updates...
[2026-08-31 19:53:49,573.573 INFO    ] 200
[2026-08-31 19:53:49,576.576 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:53:49,629.629 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:53:49,632.632 INFO    ] No update needed
[2026-08-31 19:53:49,634.634 INFO    ] Checking for camera pi updates...
[2026-08-31 19:53:49,671.671 INFO    ] 200
[2026-08-31 19:53:49,673.673 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:53:49,717.717 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:53:49,796.796 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:53:49,799.799 INFO    ] No camera update needed
[2026-08-31 19:53:49,801.801 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:53:49,804.804 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:53:49,809.809 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:53:49,814.814 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:53:51,854.854 INFO    ] ================================================
[2026-08-31 19:53:51,869.869 INFO    ] Launching Daemon at Mon Aug 31 19:53:51 IST 2026
[2026-08-31 19:53:51,880.880 INFO    ] ================================================
[2026-08-31 19:53:52,452.452 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:53:52
[2026-08-31 19:53:53,035.035 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:53:53,293.293 INFO    ] Initializing speech engine...
[2026-08-31 19:53:53,309.309 INFO    ] 2026-08-31 19:53:53
[2026-08-31 19:53:53,564.564 INFO    ] 2026-08-31 19:53:53
[2026-08-31 19:53:53,599.599 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:53:53,801.801 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:53:53,859.859 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:53:54,004.004 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:53:54,049.049 INFO    ] time= 31/08/2026 19:53:54
[2026-08-31 19:53:54,108.108 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:53:54,137.137 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:53:54,273.273 INFO    ] No existing commands found in stream
[2026-08-31 19:53:59,298.298 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:53:59,301.301 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-08-31 19:54:00,878.878 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 19:54:00,881.881 INFO    ] Checking for system updates...
[2026-08-31 19:54:00,916.916 INFO    ] 200
[2026-08-31 19:54:00,919.919 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:54:00,970.970 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:54:00,973.973 INFO    ] No update needed
[2026-08-31 19:54:00,975.975 INFO    ] Checking for camera pi updates...
[2026-08-31 19:54:01,012.012 INFO    ] 200
[2026-08-31 19:54:01,014.014 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:54:01,055.055 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:54:01,132.132 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:54:01,134.134 INFO    ] No camera update needed
[2026-08-31 19:54:01,137.137 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:54:01,139.139 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:54:01,144.144 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:54:01,149.149 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:54:03,191.191 INFO    ] ================================================
[2026-08-31 19:54:03,210.210 INFO    ] Launching Daemon at Mon Aug 31 19:54:03 IST 2026
[2026-08-31 19:54:03,222.222 INFO    ] ================================================
[2026-08-31 19:54:03,900.900 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:54:03
[2026-08-31 19:54:04,494.494 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:54:04,764.764 INFO    ] Initializing speech engine...
[2026-08-31 19:54:04,774.774 INFO    ] 2026-08-31 19:54:04
[2026-08-31 19:54:05,023.023 INFO    ] 2026-08-31 19:54:05
[2026-08-31 19:54:05,089.089 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:54:05,317.317 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:54:05,326.326 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:54:05,476.476 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:54:05,536.536 INFO    ] time= 31/08/2026 19:54:05
[2026-08-31 19:54:05,588.588 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:54:05,595.595 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:54:05,725.725 INFO    ] No existing commands found in stream
[2026-08-31 19:54:10,749.749 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:54:10,752.752 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-08-31 19:54:13,761.761 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 19:54:13,763.763 INFO    ] Checking for system updates...
[2026-08-31 19:54:13,799.799 INFO    ] 200
[2026-08-31 19:54:13,802.802 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:54:13,861.861 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:54:13,864.864 INFO    ] No update needed
[2026-08-31 19:54:13,866.866 INFO    ] Checking for camera pi updates...
[2026-08-31 19:54:13,899.899 INFO    ] 200
[2026-08-31 19:54:13,901.901 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:54:13,946.946 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:54:14,026.026 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:54:14,029.029 INFO    ] No camera update needed
[2026-08-31 19:54:14,031.031 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:54:14,034.034 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:54:14,039.039 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:54:14,044.044 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:54:16,084.084 INFO    ] ================================================
[2026-08-31 19:54:16,099.099 INFO    ] Launching Daemon at Mon Aug 31 19:54:16 IST 2026
[2026-08-31 19:54:16,110.110 INFO    ] ================================================
[2026-08-31 19:54:16,674.674 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:54:16
[2026-08-31 19:54:17,259.259 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:54:17,507.507 INFO    ] Initializing speech engine...
[2026-08-31 19:54:17,531.531 INFO    ] 2026-08-31 19:54:17
[2026-08-31 19:54:17,786.786 INFO    ] 2026-08-31 19:54:17
[2026-08-31 19:54:17,821.821 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:54:18,019.019 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:54:18,047.047 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:54:18,223.223 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:54:18,245.245 INFO    ] time= 31/08/2026 19:54:18
[2026-08-31 19:54:18,305.305 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:54:18,358.358 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:54:18,485.485 INFO    ] No existing commands found in stream
[2026-08-31 19:54:23,515.515 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:54:23,518.518 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-08-31 19:54:25,838.838 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 19:54:25,841.841 INFO    ] Checking for system updates...
[2026-08-31 19:54:25,879.879 INFO    ] 200
[2026-08-31 19:54:25,882.882 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:54:25,942.942 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:54:25,945.945 INFO    ] No update needed
[2026-08-31 19:54:25,948.948 INFO    ] Checking for camera pi updates...
[2026-08-31 19:54:25,987.987 INFO    ] 200
[2026-08-31 19:54:25,990.990 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:54:26,036.036 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:54:26,127.127 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:54:26,130.130 INFO    ] No camera update needed
[2026-08-31 19:54:26,133.133 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:54:26,135.135 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:54:26,142.142 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:54:26,148.148 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:54:28,189.189 INFO    ] ================================================
[2026-08-31 19:54:28,204.204 INFO    ] Launching Daemon at Mon Aug 31 19:54:28 IST 2026
[2026-08-31 19:54:28,215.215 INFO    ] ================================================
[2026-08-31 19:54:28,778.778 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:54:28
[2026-08-31 19:54:29,362.362 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:54:29,629.629 INFO    ] Initializing speech engine...
[2026-08-31 19:54:29,638.638 INFO    ] 2026-08-31 19:54:29
[2026-08-31 19:54:29,883.883 INFO    ] 2026-08-31 19:54:29
[2026-08-31 19:54:29,917.917 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:54:30,171.171 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:54:30,176.176 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:54:30,371.371 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:54:30,425.425 INFO    ] time= 31/08/2026 19:54:30
[2026-08-31 19:54:30,439.439 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:54:30,456.456 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:54:30,577.577 INFO    ] No existing commands found in stream
[2026-08-31 19:54:35,598.598 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:54:35,601.601 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-08-31 19:54:38,206.206 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 19:54:38,209.209 INFO    ] Checking for system updates...
[2026-08-31 19:54:38,277.277 INFO    ] 200
[2026-08-31 19:54:38,284.284 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-08-31 19:54:38,287.287 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-08-31 19:54:38,290.290 INFO    ] Checking for camera pi updates...
[2026-08-31 19:54:38,349.349 INFO    ] 200
[2026-08-31 19:54:38,351.351 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-08-31 19:54:38,354.354 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-08-31 19:54:38,356.356 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:54:38,359.359 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:54:38,365.365 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:54:38,370.370 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:54:40,412.412 INFO    ] ================================================
[2026-08-31 19:54:40,426.426 INFO    ] Launching Daemon at Mon Aug 31 19:54:40 IST 2026
[2026-08-31 19:54:40,437.437 INFO    ] ================================================
[2026-08-31 19:54:41,102.102 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:54:41
[2026-08-31 19:54:41,793.793 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:54:42,107.107 INFO    ] Initializing speech engine...
[2026-08-31 19:54:42,122.122 INFO    ] 2026-08-31 19:54:42
[2026-08-31 19:54:42,416.416 INFO    ] 2026-08-31 19:54:42
[2026-08-31 19:54:42,530.530 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:54:42,746.746 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:54:42,755.755 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:54:42,932.932 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:54:42,962.962 INFO    ] time= 31/08/2026 19:54:42
[2026-08-31 19:54:42,980.980 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:54:42,990.990 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:54:43,125.125 INFO    ] No existing commands found in stream
[2026-08-31 19:54:48,140.140 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:54:48,144.144 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-08-31 19:54:50,012.012 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 19:54:50,015.015 INFO    ] Checking for system updates...
[2026-08-31 19:54:50,052.052 INFO    ] 200
[2026-08-31 19:54:50,055.055 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:54:50,117.117 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:54:50,120.120 INFO    ] No update needed
[2026-08-31 19:54:50,123.123 INFO    ] Checking for camera pi updates...
[2026-08-31 19:54:50,163.163 INFO    ] 200
[2026-08-31 19:54:50,165.165 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:54:50,212.212 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:54:50,318.318 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:54:50,321.321 INFO    ] No camera update needed
[2026-08-31 19:54:50,324.324 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:54:50,327.327 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:54:50,334.334 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:54:50,340.340 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:54:52,381.381 INFO    ] ================================================
[2026-08-31 19:54:52,396.396 INFO    ] Launching Daemon at Mon Aug 31 19:54:52 IST 2026
[2026-08-31 19:54:52,407.407 INFO    ] ================================================
[2026-08-31 19:54:53,076.076 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:54:53
[2026-08-31 19:54:53,768.768 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:54:54,085.085 INFO    ] Initializing speech engine...
[2026-08-31 19:54:54,097.097 INFO    ] 2026-08-31 19:54:54
[2026-08-31 19:54:54,416.416 INFO    ] 2026-08-31 19:54:54
[2026-08-31 19:54:54,505.505 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:54:54,690.690 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:54:54,710.710 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:54:54,932.932 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:54:54,939.939 INFO    ] time= 31/08/2026 19:54:54
[2026-08-31 19:54:54,959.959 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:54:54,989.989 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:54:55,139.139 INFO    ] No existing commands found in stream
[2026-08-31 19:55:00,170.170 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:55:00,173.173 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-08-31 19:55:04,055.055 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 19:55:04,058.058 INFO    ] Checking for system updates...
[2026-08-31 19:55:04,095.095 INFO    ] 200
[2026-08-31 19:55:04,098.098 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:55:04,152.152 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:55:04,155.155 INFO    ] No update needed
[2026-08-31 19:55:04,158.158 INFO    ] Checking for camera pi updates...
[2026-08-31 19:55:04,192.192 INFO    ] 200
[2026-08-31 19:55:04,195.195 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:55:04,240.240 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:55:04,325.325 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:55:04,328.328 INFO    ] No camera update needed
[2026-08-31 19:55:04,331.331 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:55:04,334.334 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:55:04,340.340 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:55:04,346.346 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:55:06,388.388 INFO    ] ================================================
[2026-08-31 19:55:06,403.403 INFO    ] Launching Daemon at Mon Aug 31 19:55:06 IST 2026
[2026-08-31 19:55:06,414.414 INFO    ] ================================================
[2026-08-31 19:55:06,985.985 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:55:06
[2026-08-31 19:55:07,575.575 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:55:07,823.823 INFO    ] Initializing speech engine...
[2026-08-31 19:55:07,838.838 INFO    ] 2026-08-31 19:55:07
[2026-08-31 19:55:08,103.103 INFO    ] 2026-08-31 19:55:08
[2026-08-31 19:55:08,137.137 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:55:08,313.313 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:55:08,325.325 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:55:08,539.539 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:55:08,587.587 INFO    ] time= 31/08/2026 19:55:08
[2026-08-31 19:55:08,641.641 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:55:08,676.676 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:55:08,808.808 INFO    ] No existing commands found in stream
[2026-08-31 19:55:13,836.836 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:55:13,839.839 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-08-31 19:55:15,897.897 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 19:55:15,900.900 INFO    ] Checking for system updates...
[2026-08-31 19:55:15,939.939 INFO    ] 200
[2026-08-31 19:55:15,941.941 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:55:15,993.993 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:55:15,995.995 INFO    ] No update needed
[2026-08-31 19:55:15,998.998 INFO    ] Checking for camera pi updates...
[2026-08-31 19:55:16,031.031 INFO    ] 200
[2026-08-31 19:55:16,034.034 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:55:16,074.074 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:55:16,158.158 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:55:16,161.161 INFO    ] No camera update needed
[2026-08-31 19:55:16,165.165 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:55:16,168.168 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:55:16,175.175 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:55:16,180.180 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:55:18,224.224 INFO    ] ================================================
[2026-08-31 19:55:18,239.239 INFO    ] Launching Daemon at Mon Aug 31 19:55:18 IST 2026
[2026-08-31 19:55:18,249.249 INFO    ] ================================================
[2026-08-31 19:55:18,891.891 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:55:18
[2026-08-31 19:55:19,553.553 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:55:19,856.856 INFO    ] Initializing speech engine...
[2026-08-31 19:55:19,864.864 INFO    ] 2026-08-31 19:55:19
[2026-08-31 19:55:20,139.139 INFO    ] 2026-08-31 19:55:20
[2026-08-31 19:55:20,194.194 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:55:20,448.448 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:55:20,456.456 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:55:20,644.644 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:55:20,698.698 INFO    ] time= 31/08/2026 19:55:20
[2026-08-31 19:55:20,704.704 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:55:20,726.726 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:55:20,847.847 INFO    ] No existing commands found in stream
[2026-08-31 19:55:25,870.870 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:55:25,873.873 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-08-31 19:55:26,855.855 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 19:55:26,858.858 INFO    ] Checking for system updates...
[2026-08-31 19:55:26,895.895 INFO    ] 200
[2026-08-31 19:55:26,897.897 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:55:26,959.959 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:55:26,961.961 INFO    ] No update needed
[2026-08-31 19:55:26,964.964 INFO    ] Checking for camera pi updates...
[2026-08-31 19:55:27,005.005 INFO    ] 200
[2026-08-31 19:55:27,007.007 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:55:27,048.048 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:55:27,153.153 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:55:27,155.155 INFO    ] No camera update needed
[2026-08-31 19:55:27,158.158 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:55:27,160.160 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:55:27,165.165 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:55:27,171.171 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:55:29,210.210 INFO    ] ================================================
[2026-08-31 19:55:29,225.225 INFO    ] Launching Daemon at Mon Aug 31 19:55:29 IST 2026
[2026-08-31 19:55:29,236.236 INFO    ] ================================================
[2026-08-31 19:55:29,805.805 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:55:29
[2026-08-31 19:55:30,393.393 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:55:30,655.655 INFO    ] Initializing speech engine...
[2026-08-31 19:55:30,679.679 INFO    ] 2026-08-31 19:55:30
[2026-08-31 19:55:30,939.939 INFO    ] 2026-08-31 19:55:30
[2026-08-31 19:55:30,969.969 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:55:31,238.238 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:55:31,247.247 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:55:31,382.382 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:55:31,419.419 INFO    ] time= 31/08/2026 19:55:31
[2026-08-31 19:55:31,463.463 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:55:31,515.515 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:55:31,652.652 INFO    ] No existing commands found in stream
[2026-08-31 19:55:36,694.694 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:55:36,697.697 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-08-31 19:55:39,376.376 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 19:55:39,379.379 INFO    ] Checking for system updates...
[2026-08-31 19:55:39,418.418 INFO    ] 200
[2026-08-31 19:55:39,421.421 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:55:39,474.474 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:55:39,476.476 INFO    ] No update needed
[2026-08-31 19:55:39,478.478 INFO    ] Checking for camera pi updates...
[2026-08-31 19:55:39,512.512 INFO    ] 200
[2026-08-31 19:55:39,514.514 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:55:39,556.556 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:55:39,748.748 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:55:39,750.750 INFO    ] No camera update needed
[2026-08-31 19:55:39,753.753 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:55:39,755.755 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:55:39,760.760 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:55:39,765.765 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:55:41,805.805 INFO    ] ================================================
[2026-08-31 19:55:41,820.820 INFO    ] Launching Daemon at Mon Aug 31 19:55:41 IST 2026
[2026-08-31 19:55:41,830.830 INFO    ] ================================================
[2026-08-31 19:55:42,396.396 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:55:42
[2026-08-31 19:55:42,979.979 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:55:43,229.229 INFO    ] Initializing speech engine...
[2026-08-31 19:55:43,236.236 INFO    ] 2026-08-31 19:55:43
[2026-08-31 19:55:43,532.532 INFO    ] 2026-08-31 19:55:43
[2026-08-31 19:55:43,567.567 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:55:43,764.764 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:55:43,778.778 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:55:43,912.912 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:55:43,914.914 INFO    ] time= 31/08/2026 19:55:43
[2026-08-31 19:55:43,935.935 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:55:43,944.944 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:55:44,020.020 INFO    ] No existing commands found in stream
[2026-08-31 19:55:49,032.032 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:55:49,035.035 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-08-31 19:55:51,802.802 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 19:55:51,805.805 INFO    ] Checking for system updates...
[2026-08-31 19:55:51,844.844 INFO    ] 200
[2026-08-31 19:55:51,846.846 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:55:51,905.905 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:55:51,908.908 INFO    ] No update needed
[2026-08-31 19:55:51,910.910 INFO    ] Checking for camera pi updates...
[2026-08-31 19:55:51,944.944 INFO    ] 200
[2026-08-31 19:55:51,946.946 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:55:51,994.994 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:55:52,072.072 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:55:52,074.074 INFO    ] No camera update needed
[2026-08-31 19:55:52,077.077 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:55:52,079.079 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:55:52,084.084 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:55:52,089.089 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:55:54,128.128 INFO    ] ================================================
[2026-08-31 19:55:54,144.144 INFO    ] Launching Daemon at Mon Aug 31 19:55:54 IST 2026
[2026-08-31 19:55:54,157.157 INFO    ] ================================================
[2026-08-31 19:55:54,745.745 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:55:54
[2026-08-31 19:55:55,331.331 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:55:55,580.580 INFO    ] Initializing speech engine...
[2026-08-31 19:55:55,595.595 INFO    ] 2026-08-31 19:55:55
[2026-08-31 19:55:55,860.860 INFO    ] 2026-08-31 19:55:55
[2026-08-31 19:55:55,896.896 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:55:56,094.094 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:55:56,122.122 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:55:56,300.300 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:55:56,324.324 INFO    ] time= 31/08/2026 19:55:56
[2026-08-31 19:55:56,384.384 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:55:56,433.433 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:55:56,565.565 INFO    ] No existing commands found in stream
[2026-08-31 19:56:01,593.593 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:56:01,595.595 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-08-31 19:56:04,171.171 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 19:56:04,174.174 INFO    ] Checking for system updates...
[2026-08-31 19:56:04,210.210 INFO    ] 200
[2026-08-31 19:56:04,213.213 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:56:04,270.270 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:56:04,273.273 INFO    ] No update needed
[2026-08-31 19:56:04,275.275 INFO    ] Checking for camera pi updates...
[2026-08-31 19:56:04,313.313 INFO    ] 200
[2026-08-31 19:56:04,315.315 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:56:04,356.356 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:56:04,464.464 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:56:04,467.467 INFO    ] No camera update needed
[2026-08-31 19:56:04,469.469 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:56:04,472.472 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:56:04,477.477 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:56:04,482.482 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:56:06,524.524 INFO    ] ================================================
[2026-08-31 19:56:06,540.540 INFO    ] Launching Daemon at Mon Aug 31 19:56:06 IST 2026
[2026-08-31 19:56:06,551.551 INFO    ] ================================================
[2026-08-31 19:56:07,192.192 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:56:07
[2026-08-31 19:56:07,852.852 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:56:08,152.152 INFO    ] Initializing speech engine...
[2026-08-31 19:56:08,160.160 INFO    ] 2026-08-31 19:56:08
[2026-08-31 19:56:08,432.432 INFO    ] 2026-08-31 19:56:08
[2026-08-31 19:56:08,467.467 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:56:08,721.721 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:56:08,732.732 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:56:08,947.947 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:56:08,997.997 INFO    ] time= 31/08/2026 19:56:08
[2026-08-31 19:56:09,004.004 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:56:09,024.024 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:56:09,159.159 INFO    ] No existing commands found in stream
[2026-08-31 19:56:14,174.174 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:56:14,178.178 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-08-31 19:56:17,966.966 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 19:56:17,969.969 INFO    ] Checking for system updates...
[2026-08-31 19:56:18,009.009 INFO    ] 200
[2026-08-31 19:56:18,012.012 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:56:18,064.064 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:56:18,067.067 INFO    ] No update needed
[2026-08-31 19:56:18,070.070 INFO    ] Checking for camera pi updates...
[2026-08-31 19:56:18,108.108 INFO    ] 200
[2026-08-31 19:56:18,111.111 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:56:18,156.156 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:56:18,240.240 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:56:18,242.242 INFO    ] No camera update needed
[2026-08-31 19:56:18,245.245 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:56:18,248.248 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:56:18,254.254 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:56:18,260.260 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:56:20,302.302 INFO    ] ================================================
[2026-08-31 19:56:20,318.318 INFO    ] Launching Daemon at Mon Aug 31 19:56:20 IST 2026
[2026-08-31 19:56:20,329.329 INFO    ] ================================================
[2026-08-31 19:56:20,972.972 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:56:20
[2026-08-31 19:56:21,583.583 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:56:21,871.871 INFO    ] Initializing speech engine...
[2026-08-31 19:56:21,879.879 INFO    ] 2026-08-31 19:56:21
[2026-08-31 19:56:22,129.129 INFO    ] 2026-08-31 19:56:22
[2026-08-31 19:56:22,163.163 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:56:22,421.421 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:56:22,430.430 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:56:22,644.644 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:56:22,693.693 INFO    ] time= 31/08/2026 19:56:22
[2026-08-31 19:56:22,699.699 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:56:22,714.714 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:56:22,834.834 INFO    ] No existing commands found in stream
[2026-08-31 19:56:27,859.859 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:56:27,862.862 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-08-31 19:56:30,331.331 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 19:56:30,334.334 INFO    ] Checking for system updates...
[2026-08-31 19:56:30,374.374 INFO    ] 200
[2026-08-31 19:56:30,376.376 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:56:30,428.428 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:56:30,430.430 INFO    ] No update needed
[2026-08-31 19:56:30,433.433 INFO    ] Checking for camera pi updates...
[2026-08-31 19:56:30,472.472 INFO    ] 200
[2026-08-31 19:56:30,474.474 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:56:30,514.514 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:56:30,602.602 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:56:30,605.605 INFO    ] No camera update needed
[2026-08-31 19:56:30,607.607 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:56:30,609.609 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:56:30,614.614 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:56:30,619.619 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:56:32,661.661 INFO    ] ================================================
[2026-08-31 19:56:32,679.679 INFO    ] Launching Daemon at Mon Aug 31 19:56:32 IST 2026
[2026-08-31 19:56:32,691.691 INFO    ] ================================================
[2026-08-31 19:56:33,298.298 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:56:33
[2026-08-31 19:56:33,893.893 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:56:34,166.166 INFO    ] Initializing speech engine...
[2026-08-31 19:56:34,179.179 INFO    ] 2026-08-31 19:56:34
[2026-08-31 19:56:34,434.434 INFO    ] 2026-08-31 19:56:34
[2026-08-31 19:56:34,470.470 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:56:34,664.664 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:56:34,687.687 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:56:34,865.865 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:56:34,913.913 INFO    ] time= 31/08/2026 19:56:34
[2026-08-31 19:56:34,978.978 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:56:35,002.002 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:56:35,132.132 INFO    ] No existing commands found in stream
[2026-08-31 19:56:40,157.157 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:56:40,160.160 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-08-31 19:56:41,055.055 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 19:56:41,058.058 INFO    ] Checking for system updates...
[2026-08-31 19:56:41,093.093 INFO    ] 200
[2026-08-31 19:56:41,096.096 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:56:41,155.155 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:56:41,157.157 INFO    ] No update needed
[2026-08-31 19:56:41,160.160 INFO    ] Checking for camera pi updates...
[2026-08-31 19:56:41,198.198 INFO    ] 200
[2026-08-31 19:56:41,201.201 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:56:41,245.245 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:56:41,329.329 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:56:41,332.332 INFO    ] No camera update needed
[2026-08-31 19:56:41,334.334 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:56:41,336.336 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:56:41,342.342 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:56:41,347.347 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:56:43,389.389 INFO    ] ================================================
[2026-08-31 19:56:43,405.405 INFO    ] Launching Daemon at Mon Aug 31 19:56:43 IST 2026
[2026-08-31 19:56:43,416.416 INFO    ] ================================================
[2026-08-31 19:56:44,008.008 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:56:43
[2026-08-31 19:56:44,671.671 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:56:44,978.978 INFO    ] Initializing speech engine...
[2026-08-31 19:56:44,986.986 INFO    ] 2026-08-31 19:56:44
[2026-08-31 19:56:45,256.256 INFO    ] 2026-08-31 19:56:45
[2026-08-31 19:56:45,313.313 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:56:45,544.544 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:56:45,554.554 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:56:45,789.789 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:56:45,818.818 INFO    ] time= 31/08/2026 19:56:45
[2026-08-31 19:56:45,838.838 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:56:45,847.847 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:56:45,983.983 INFO    ] No existing commands found in stream
[2026-08-31 19:56:51,016.016 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:56:51,019.019 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-08-31 19:56:55,039.039 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 19:56:55,041.041 INFO    ] Checking for system updates...
[2026-08-31 19:56:55,082.082 INFO    ] 200
[2026-08-31 19:56:55,085.085 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:56:55,137.137 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:56:55,140.140 INFO    ] No update needed
[2026-08-31 19:56:55,143.143 INFO    ] Checking for camera pi updates...
[2026-08-31 19:56:55,178.178 INFO    ] 200
[2026-08-31 19:56:55,180.180 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:56:55,227.227 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:56:55,333.333 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:56:55,336.336 INFO    ] No camera update needed
[2026-08-31 19:56:55,339.339 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:56:55,342.342 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:56:55,348.348 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:56:55,354.354 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:56:57,395.395 INFO    ] ================================================
[2026-08-31 19:56:57,411.411 INFO    ] Launching Daemon at Mon Aug 31 19:56:57 IST 2026
[2026-08-31 19:56:57,422.422 INFO    ] ================================================
[2026-08-31 19:56:57,987.987 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:56:57
[2026-08-31 19:56:58,601.601 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:56:58,901.901 INFO    ] Initializing speech engine...
[2026-08-31 19:56:58,910.910 INFO    ] 2026-08-31 19:56:58
[2026-08-31 19:56:59,187.187 INFO    ] 2026-08-31 19:56:59
[2026-08-31 19:56:59,239.239 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:56:59,473.473 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:56:59,479.479 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:56:59,617.617 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:56:59,657.657 INFO    ] time= 31/08/2026 19:56:59
[2026-08-31 19:56:59,707.707 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:56:59,754.754 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:56:59,902.902 INFO    ] No existing commands found in stream
[2026-08-31 19:57:04,919.919 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:57:04,923.923 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-08-31 19:57:05,730.730 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 19:57:05,733.733 INFO    ] Checking for system updates...
[2026-08-31 19:57:05,773.773 INFO    ] 200
[2026-08-31 19:57:05,776.776 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:57:05,835.835 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:57:05,838.838 INFO    ] No update needed
[2026-08-31 19:57:05,841.841 INFO    ] Checking for camera pi updates...
[2026-08-31 19:57:05,879.879 INFO    ] 200
[2026-08-31 19:57:05,882.882 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:57:05,927.927 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:57:06,010.010 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:57:06,013.013 INFO    ] No camera update needed
[2026-08-31 19:57:06,016.016 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:57:06,018.018 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:57:06,024.024 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:57:06,030.030 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:57:08,072.072 INFO    ] ================================================
[2026-08-31 19:57:08,087.087 INFO    ] Launching Daemon at Mon Aug 31 19:57:08 IST 2026
[2026-08-31 19:57:08,098.098 INFO    ] ================================================
[2026-08-31 19:57:08,740.740 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:57:08
[2026-08-31 19:57:09,400.400 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:57:09,698.698 INFO    ] Initializing speech engine...
[2026-08-31 19:57:09,706.706 INFO    ] 2026-08-31 19:57:09
[2026-08-31 19:57:09,973.973 INFO    ] 2026-08-31 19:57:09
[2026-08-31 19:57:10,034.034 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:57:10,287.287 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:57:10,294.294 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:57:10,497.497 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:57:10,533.533 INFO    ] time= 31/08/2026 19:57:10
[2026-08-31 19:57:10,551.551 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:57:10,561.561 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:57:10,688.688 INFO    ] No existing commands found in stream
[2026-08-31 19:57:15,702.702 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:57:15,705.705 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-08-31 19:57:17,689.689 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 19:57:17,692.692 INFO    ] Checking for system updates...
[2026-08-31 19:57:17,732.732 INFO    ] 200
[2026-08-31 19:57:17,734.734 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:57:17,798.798 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:57:17,801.801 INFO    ] No update needed
[2026-08-31 19:57:17,804.804 INFO    ] Checking for camera pi updates...
[2026-08-31 19:57:17,842.842 INFO    ] 200
[2026-08-31 19:57:17,844.844 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:57:17,890.890 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:57:17,994.994 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:57:17,997.997 INFO    ] No camera update needed
[2026-08-31 19:57:18,000.000 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:57:18,003.003 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:57:18,009.009 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:57:18,014.014 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:57:20,055.055 INFO    ] ================================================
[2026-08-31 19:57:20,074.074 INFO    ] Launching Daemon at Mon Aug 31 19:57:20 IST 2026
[2026-08-31 19:57:20,085.085 INFO    ] ================================================
[2026-08-31 19:57:20,668.668 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:57:20
[2026-08-31 19:57:21,265.265 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:57:21,541.541 INFO    ] Initializing speech engine...
[2026-08-31 19:57:21,552.552 INFO    ] 2026-08-31 19:57:21
[2026-08-31 19:57:21,843.843 INFO    ] 2026-08-31 19:57:21
[2026-08-31 19:57:21,904.904 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:57:22,137.137 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:57:22,142.142 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:57:22,279.279 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:57:22,339.339 INFO    ] time= 31/08/2026 19:57:22
[2026-08-31 19:57:22,410.410 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:57:22,418.418 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:57:22,570.570 INFO    ] No existing commands found in stream
[2026-08-31 19:57:27,599.599 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:57:27,602.602 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-08-31 19:57:28,336.336 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 19:57:28,339.339 INFO    ] Checking for system updates...
[2026-08-31 19:57:28,375.375 INFO    ] 200
[2026-08-31 19:57:28,378.378 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:57:28,433.433 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:57:28,436.436 INFO    ] No update needed
[2026-08-31 19:57:28,438.438 INFO    ] Checking for camera pi updates...
[2026-08-31 19:57:28,472.472 INFO    ] 200
[2026-08-31 19:57:28,474.474 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:57:28,515.515 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:57:28,595.595 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:57:28,598.598 INFO    ] No camera update needed
[2026-08-31 19:57:28,600.600 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:57:28,603.603 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:57:28,608.608 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:57:28,613.613 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:57:30,652.652 INFO    ] ================================================
[2026-08-31 19:57:30,667.667 INFO    ] Launching Daemon at Mon Aug 31 19:57:30 IST 2026
[2026-08-31 19:57:30,678.678 INFO    ] ================================================
[2026-08-31 19:57:31,253.253 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:57:31
[2026-08-31 19:57:31,838.838 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:57:32,167.167 INFO    ] Initializing speech engine...
[2026-08-31 19:57:32,179.179 INFO    ] 2026-08-31 19:57:32
[2026-08-31 19:57:32,479.479 INFO    ] 2026-08-31 19:57:32
[2026-08-31 19:57:32,535.535 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:57:32,736.736 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:57:32,783.783 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:57:32,940.940 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:57:33,003.003 INFO    ] time= 31/08/2026 19:57:32
[2026-08-31 19:57:33,065.065 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:57:33,090.090 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:57:33,177.177 INFO    ] No existing commands found in stream
[2026-08-31 19:57:38,215.215 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:57:38,218.218 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-08-31 19:57:41,415.415 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 19:57:41,418.418 INFO    ] Checking for system updates...
[2026-08-31 19:57:41,459.459 INFO    ] 200
[2026-08-31 19:57:41,461.461 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:57:41,514.514 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:57:41,517.517 INFO    ] No update needed
[2026-08-31 19:57:41,524.524 INFO    ] Checking for camera pi updates...
[2026-08-31 19:57:41,569.569 INFO    ] 200
[2026-08-31 19:57:41,571.571 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:57:41,612.612 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:57:41,786.786 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:57:41,789.789 INFO    ] No camera update needed
[2026-08-31 19:57:41,792.792 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:57:41,794.794 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:57:41,801.801 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:57:41,806.806 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:57:43,847.847 INFO    ] ================================================
[2026-08-31 19:57:43,863.863 INFO    ] Launching Daemon at Mon Aug 31 19:57:43 IST 2026
[2026-08-31 19:57:43,875.875 INFO    ] ================================================
[2026-08-31 19:57:44,536.536 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:57:44
[2026-08-31 19:57:45,216.216 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:57:45,479.479 INFO    ] Initializing speech engine...
[2026-08-31 19:57:45,505.505 INFO    ] 2026-08-31 19:57:45
[2026-08-31 19:57:45,781.781 INFO    ] 2026-08-31 19:57:45
[2026-08-31 19:57:45,820.820 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:57:46,046.046 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:57:46,074.074 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:57:46,212.212 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:57:46,282.282 INFO    ] time= 31/08/2026 19:57:46
[2026-08-31 19:57:46,289.289 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:57:46,349.349 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:57:46,458.458 INFO    ] No existing commands found in stream
[2026-08-31 19:57:51,472.472 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:57:51,474.474 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-08-31 19:57:52,448.448 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 19:57:52,451.451 INFO    ] Checking for system updates...
[2026-08-31 19:57:52,486.486 INFO    ] 200
[2026-08-31 19:57:52,489.489 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:57:52,550.550 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:57:52,552.552 INFO    ] No update needed
[2026-08-31 19:57:52,555.555 INFO    ] Checking for camera pi updates...
[2026-08-31 19:57:52,588.588 INFO    ] 200
[2026-08-31 19:57:52,590.590 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:57:52,636.636 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:57:52,719.719 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:57:52,721.721 INFO    ] No camera update needed
[2026-08-31 19:57:52,723.723 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:57:52,726.726 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:57:52,731.731 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:57:52,736.736 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:57:54,777.777 INFO    ] ================================================
[2026-08-31 19:57:54,793.793 INFO    ] Launching Daemon at Mon Aug 31 19:57:54 IST 2026
[2026-08-31 19:57:54,805.805 INFO    ] ================================================
[2026-08-31 19:57:55,388.388 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:57:55
[2026-08-31 19:57:55,990.990 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:57:56,262.262 INFO    ] Initializing speech engine...
[2026-08-31 19:57:56,272.272 INFO    ] 2026-08-31 19:57:56
[2026-08-31 19:57:56,520.520 INFO    ] 2026-08-31 19:57:56
[2026-08-31 19:57:56,586.586 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:57:56,809.809 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:57:56,818.818 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:57:56,952.952 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:57:56,990.990 INFO    ] time= 31/08/2026 19:57:56
[2026-08-31 19:57:57,049.049 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:57:57,099.099 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:57:57,242.242 INFO    ] No existing commands found in stream
[2026-08-31 19:58:02,270.270 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:58:02,272.272 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-08-31 19:58:04,260.260 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 19:58:04,263.263 INFO    ] Checking for system updates...
[2026-08-31 19:58:04,299.299 INFO    ] 200
[2026-08-31 19:58:04,302.302 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:58:04,355.355 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:58:04,358.358 INFO    ] No update needed
[2026-08-31 19:58:04,361.361 INFO    ] Checking for camera pi updates...
[2026-08-31 19:58:04,395.395 INFO    ] 200
[2026-08-31 19:58:04,398.398 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:58:04,439.439 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:58:04,538.538 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:58:04,541.541 INFO    ] No camera update needed
[2026-08-31 19:58:04,544.544 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:58:04,546.546 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:58:04,552.552 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:58:04,558.558 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:58:06,599.599 INFO    ] ================================================
[2026-08-31 19:58:06,615.615 INFO    ] Launching Daemon at Mon Aug 31 19:58:06 IST 2026
[2026-08-31 19:58:06,626.626 INFO    ] ================================================
[2026-08-31 19:58:07,201.201 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:58:07
[2026-08-31 19:58:07,786.786 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:58:08,036.036 INFO    ] Initializing speech engine...
[2026-08-31 19:58:08,044.044 INFO    ] 2026-08-31 19:58:08
[2026-08-31 19:58:08,333.333 INFO    ] 2026-08-31 19:58:08
[2026-08-31 19:58:08,370.370 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:58:08,589.589 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:58:08,613.613 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:58:08,806.806 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:58:08,812.812 INFO    ] time= 31/08/2026 19:58:08
[2026-08-31 19:58:08,866.866 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:58:08,910.910 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:58:09,009.009 INFO    ] No existing commands found in stream
[2026-08-31 19:58:14,021.021 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:58:14,023.023 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-08-31 19:58:15,082.082 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 19:58:15,084.084 INFO    ] Checking for system updates...
[2026-08-31 19:58:15,122.122 INFO    ] 200
[2026-08-31 19:58:15,125.125 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:58:15,176.176 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:58:15,179.179 INFO    ] No update needed
[2026-08-31 19:58:15,181.181 INFO    ] Checking for camera pi updates...
[2026-08-31 19:58:15,215.215 INFO    ] 200
[2026-08-31 19:58:15,217.217 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:58:15,258.258 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:58:15,336.336 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:58:15,339.339 INFO    ] No camera update needed
[2026-08-31 19:58:15,341.341 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:58:15,343.343 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:58:15,348.348 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:58:15,353.353 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:58:17,394.394 INFO    ] ================================================
[2026-08-31 19:58:17,410.410 INFO    ] Launching Daemon at Mon Aug 31 19:58:17 IST 2026
[2026-08-31 19:58:17,420.420 INFO    ] ================================================
[2026-08-31 19:58:18,055.055 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:58:18
[2026-08-31 19:58:18,704.704 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:58:18,995.995 INFO    ] Initializing speech engine...
[2026-08-31 19:58:19,008.008 INFO    ] 2026-08-31 19:58:18
[2026-08-31 19:58:19,278.278 INFO    ] 2026-08-31 19:58:19
[2026-08-31 19:58:19,338.338 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:58:19,593.593 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:58:19,601.601 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:58:19,805.805 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:58:19,843.843 INFO    ] time= 31/08/2026 19:58:19
[2026-08-31 19:58:19,861.861 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:58:19,871.871 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:58:20,001.001 INFO    ] No existing commands found in stream
[2026-08-31 19:58:25,024.024 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:58:25,027.027 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-08-31 19:58:27,560.560 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 19:58:27,563.563 INFO    ] Checking for system updates...
[2026-08-31 19:58:27,601.601 INFO    ] 200
[2026-08-31 19:58:27,603.603 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:58:27,656.656 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:58:27,658.658 INFO    ] No update needed
[2026-08-31 19:58:27,661.661 INFO    ] Checking for camera pi updates...
[2026-08-31 19:58:27,701.701 INFO    ] 200
[2026-08-31 19:58:27,703.703 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:58:27,743.743 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:58:27,830.830 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:58:27,832.832 INFO    ] No camera update needed
[2026-08-31 19:58:27,834.834 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:58:27,836.836 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:58:27,842.842 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:58:27,847.847 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:58:29,887.887 INFO    ] ================================================
[2026-08-31 19:58:29,902.902 INFO    ] Launching Daemon at Mon Aug 31 19:58:29 IST 2026
[2026-08-31 19:58:29,912.912 INFO    ] ================================================
[2026-08-31 19:58:30,493.493 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:58:30
[2026-08-31 19:58:31,092.092 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:58:31,367.367 INFO    ] Initializing speech engine...
[2026-08-31 19:58:31,373.373 INFO    ] 2026-08-31 19:58:31
[2026-08-31 19:58:31,634.634 INFO    ] 2026-08-31 19:58:31
[2026-08-31 19:58:31,688.688 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:58:31,932.932 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:58:31,956.956 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:58:32,176.176 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:58:32,204.204 INFO    ] time= 31/08/2026 19:58:32
[2026-08-31 19:58:32,222.222 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:58:32,246.246 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:58:32,369.369 INFO    ] No existing commands found in stream
[2026-08-31 19:58:37,389.389 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:58:37,392.392 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-08-31 19:58:39,442.442 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 19:58:39,444.444 INFO    ] Checking for system updates...
[2026-08-31 19:58:39,481.481 INFO    ] 200
[2026-08-31 19:58:39,484.484 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:58:39,536.536 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:58:39,538.538 INFO    ] No update needed
[2026-08-31 19:58:39,541.541 INFO    ] Checking for camera pi updates...
[2026-08-31 19:58:39,574.574 INFO    ] 200
[2026-08-31 19:58:39,577.577 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:58:39,617.617 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:58:39,706.706 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:58:39,709.709 INFO    ] No camera update needed
[2026-08-31 19:58:39,712.712 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:58:39,714.714 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:58:39,719.719 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:58:39,725.725 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:58:41,766.766 INFO    ] ================================================
[2026-08-31 19:58:41,781.781 INFO    ] Launching Daemon at Mon Aug 31 19:58:41 IST 2026
[2026-08-31 19:58:41,791.791 INFO    ] ================================================
[2026-08-31 19:58:42,423.423 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:58:42
[2026-08-31 19:58:43,073.073 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:58:43,367.367 INFO    ] Initializing speech engine...
[2026-08-31 19:58:43,380.380 INFO    ] 2026-08-31 19:58:43
[2026-08-31 19:58:43,646.646 INFO    ] 2026-08-31 19:58:43
[2026-08-31 19:58:43,700.700 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:58:43,926.926 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:58:43,931.931 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:58:44,127.127 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:58:44,188.188 INFO    ] time= 31/08/2026 19:58:44
[2026-08-31 19:58:44,195.195 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:58:44,213.213 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:58:44,329.329 INFO    ] No existing commands found in stream
[2026-08-31 19:58:49,350.350 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:58:49,353.353 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-08-31 19:58:51,330.330 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 19:58:51,333.333 INFO    ] Checking for system updates...
[2026-08-31 19:58:51,372.372 INFO    ] 200
[2026-08-31 19:58:51,374.374 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:58:51,432.432 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:58:51,434.434 INFO    ] No update needed
[2026-08-31 19:58:51,437.437 INFO    ] Checking for camera pi updates...
[2026-08-31 19:58:51,470.470 INFO    ] 200
[2026-08-31 19:58:51,473.473 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:58:51,518.518 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:58:51,601.601 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:58:51,604.604 INFO    ] No camera update needed
[2026-08-31 19:58:51,606.606 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:58:51,609.609 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:58:51,614.614 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:58:51,620.620 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:58:53,659.659 INFO    ] ================================================
[2026-08-31 19:58:53,675.675 INFO    ] Launching Daemon at Mon Aug 31 19:58:53 IST 2026
[2026-08-31 19:58:53,686.686 INFO    ] ================================================
[2026-08-31 19:58:54,251.251 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:58:54
[2026-08-31 19:58:54,831.831 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:58:55,076.076 INFO    ] Initializing speech engine...
[2026-08-31 19:58:55,091.091 INFO    ] 2026-08-31 19:58:55
[2026-08-31 19:58:55,359.359 INFO    ] 2026-08-31 19:58:55
[2026-08-31 19:58:55,393.393 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:58:55,570.570 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:58:55,583.583 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:58:55,731.731 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:58:55,736.736 INFO    ] time= 31/08/2026 19:58:55
[2026-08-31 19:58:55,743.743 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:58:55,793.793 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:58:55,925.925 INFO    ] No existing commands found in stream
[2026-08-31 19:59:00,947.947 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:59:00,950.950 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-08-31 19:59:03,886.886 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 19:59:03,889.889 INFO    ] Checking for system updates...
[2026-08-31 19:59:03,926.926 INFO    ] 200
[2026-08-31 19:59:03,929.929 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:59:03,988.988 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:59:03,990.990 INFO    ] No update needed
[2026-08-31 19:59:03,993.993 INFO    ] Checking for camera pi updates...
[2026-08-31 19:59:04,026.026 INFO    ] 200
[2026-08-31 19:59:04,029.029 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:59:04,069.069 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:59:04,146.146 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 19:59:04,148.148 INFO    ] No camera update needed
[2026-08-31 19:59:04,151.151 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:59:04,153.153 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:59:04,158.158 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:59:04,163.163 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:59:06,204.204 INFO    ] ================================================
[2026-08-31 19:59:06,220.220 INFO    ] Launching Daemon at Mon Aug 31 19:59:06 IST 2026
[2026-08-31 19:59:06,232.232 INFO    ] ================================================
[2026-08-31 19:59:06,884.884 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:59:06
[2026-08-31 19:59:07,560.560 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:59:07,860.860 INFO    ] Initializing speech engine...
[2026-08-31 19:59:07,869.869 INFO    ] 2026-08-31 19:59:07
[2026-08-31 19:59:08,166.166 INFO    ] 2026-08-31 19:59:08
[2026-08-31 19:59:08,213.213 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:59:08,501.501 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:59:08,510.510 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:59:08,710.710 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:59:08,729.729 INFO    ] time= 31/08/2026 19:59:08
[2026-08-31 19:59:08,739.739 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:59:08,766.766 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:59:08,875.875 INFO    ] No existing commands found in stream
[2026-08-31 19:59:13,896.896 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:59:13,899.899 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-08-31 19:59:16,374.374 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 19:59:16,378.378 INFO    ] Checking for system updates...
[2026-08-31 19:59:16,414.414 INFO    ] 200
[2026-08-31 19:59:16,416.416 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:59:16,472.472 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:59:16,475.475 INFO    ] No update needed
[2026-08-31 19:59:16,477.477 INFO    ] Checking for camera pi updates...
[2026-08-31 19:59:16,510.510 INFO    ] 200
[2026-08-31 19:59:16,513.513 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:59:16,553.553 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:59:16,645.645 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:59:16,648.648 INFO    ] No camera update needed
[2026-08-31 19:59:16,650.650 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:59:16,652.652 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:59:16,658.658 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:59:16,662.662 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:59:18,703.703 INFO    ] ================================================
[2026-08-31 19:59:18,719.719 INFO    ] Launching Daemon at Mon Aug 31 19:59:18 IST 2026
[2026-08-31 19:59:18,730.730 INFO    ] ================================================
[2026-08-31 19:59:19,301.301 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:59:19
[2026-08-31 19:59:19,880.880 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:59:20,149.149 INFO    ] Initializing speech engine...
[2026-08-31 19:59:20,157.157 INFO    ] 2026-08-31 19:59:20
[2026-08-31 19:59:20,407.407 INFO    ] 2026-08-31 19:59:20
[2026-08-31 19:59:20,443.443 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:59:20,649.649 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:59:20,702.702 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:59:20,843.843 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:59:20,886.886 INFO    ] time= 31/08/2026 19:59:20
[2026-08-31 19:59:20,945.945 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:59:20,980.980 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:59:21,051.051 INFO    ] No existing commands found in stream
[2026-08-31 19:59:26,089.089 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:59:26,091.091 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-08-31 19:59:29,704.704 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 19:59:29,707.707 INFO    ] Checking for system updates...
[2026-08-31 19:59:29,749.749 INFO    ] 200
[2026-08-31 19:59:29,752.752 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:59:29,811.811 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:59:29,813.813 INFO    ] No update needed
[2026-08-31 19:59:29,816.816 INFO    ] Checking for camera pi updates...
[2026-08-31 19:59:29,854.854 INFO    ] 200
[2026-08-31 19:59:29,857.857 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:59:29,897.897 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:59:29,979.979 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:59:29,981.981 INFO    ] No camera update needed
[2026-08-31 19:59:29,983.983 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:59:29,986.986 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:59:29,991.991 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:59:29,996.996 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:59:32,041.041 INFO    ] ================================================
[2026-08-31 19:59:32,080.080 INFO    ] Launching Daemon at Mon Aug 31 19:59:32 IST 2026
[2026-08-31 19:59:32,093.093 INFO    ] ================================================
[2026-08-31 19:59:32,802.802 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:59:32
[2026-08-31 19:59:33,418.418 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:59:33,674.674 INFO    ] Initializing speech engine...
[2026-08-31 19:59:33,683.683 INFO    ] 2026-08-31 19:59:33
[2026-08-31 19:59:33,978.978 INFO    ] 2026-08-31 19:59:33
[2026-08-31 19:59:34,012.012 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:59:34,217.217 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:59:34,231.231 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:59:34,378.378 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:59:34,400.400 INFO    ] time= 31/08/2026 19:59:34
[2026-08-31 19:59:34,409.409 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:59:34,418.418 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:59:34,576.576 INFO    ] No existing commands found in stream
[2026-08-31 19:59:39,596.596 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:59:39,599.599 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-08-31 19:59:43,761.761 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 19:59:43,764.764 INFO    ] Checking for system updates...
[2026-08-31 19:59:43,804.804 INFO    ] 200
[2026-08-31 19:59:43,807.807 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:59:43,859.859 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:59:43,862.862 INFO    ] No update needed
[2026-08-31 19:59:43,864.864 INFO    ] Checking for camera pi updates...
[2026-08-31 19:59:43,898.898 INFO    ] 200
[2026-08-31 19:59:43,901.901 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:59:43,940.940 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:59:44,029.029 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:59:44,031.031 INFO    ] No camera update needed
[2026-08-31 19:59:44,034.034 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:59:44,036.036 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:59:44,041.041 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:59:44,046.046 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:59:46,087.087 INFO    ] ================================================
[2026-08-31 19:59:46,103.103 INFO    ] Launching Daemon at Mon Aug 31 19:59:46 IST 2026
[2026-08-31 19:59:46,114.114 INFO    ] ================================================
[2026-08-31 19:59:46,698.698 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:59:46
[2026-08-31 19:59:47,300.300 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:59:47,562.562 INFO    ] Initializing speech engine...
[2026-08-31 19:59:47,569.569 INFO    ] 2026-08-31 19:59:47
[2026-08-31 19:59:47,868.868 INFO    ] 2026-08-31 19:59:47
[2026-08-31 19:59:47,904.904 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:59:48,135.135 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:59:48,158.158 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:59:48,363.363 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:59:48,372.372 INFO    ] time= 31/08/2026 19:59:48
[2026-08-31 19:59:48,406.406 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 19:59:48,451.451 INFO    ] Checking for existing commands in stream...
[2026-08-31 19:59:48,573.573 INFO    ] No existing commands found in stream
[2026-08-31 19:59:53,585.585 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 19:59:53,588.588 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-08-31 19:59:54,977.977 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 19:59:54,980.980 INFO    ] Checking for system updates...
[2026-08-31 19:59:55,017.017 INFO    ] 200
[2026-08-31 19:59:55,019.019 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:59:55,079.079 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:59:55,082.082 INFO    ] No update needed
[2026-08-31 19:59:55,084.084 INFO    ] Checking for camera pi updates...
[2026-08-31 19:59:55,121.121 INFO    ] 200
[2026-08-31 19:59:55,124.124 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 19:59:55,169.169 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 19:59:55,352.352 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 19:59:55,354.354 INFO    ] No camera update needed
[2026-08-31 19:59:55,357.357 INFO    ] Script finished. Safe exiting...
[2026-08-31 19:59:55,359.359 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 19:59:55,365.365 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 19:59:55,370.370 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 19:59:57,409.409 INFO    ] ================================================
[2026-08-31 19:59:57,425.425 INFO    ] Launching Daemon at Mon Aug 31 19:59:57 IST 2026
[2026-08-31 19:59:57,436.436 INFO    ] ================================================
[2026-08-31 19:59:58,100.100 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 19:59:58
[2026-08-31 19:59:58,782.782 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 19:59:59,101.101 INFO    ] Initializing speech engine...
[2026-08-31 19:59:59,108.108 INFO    ] 2026-08-31 19:59:59
[2026-08-31 19:59:59,426.426 INFO    ] 2026-08-31 19:59:59
[2026-08-31 19:59:59,513.513 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 19:59:59,733.733 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 19:59:59,744.744 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 19:59:59,939.939 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 19:59:59,958.958 INFO    ] time= 31/08/2026 19:59:59
[2026-08-31 19:59:59,990.990 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:00:00,001.001 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:00:00,130.130 INFO    ] No existing commands found in stream
[2026-08-31 20:00:05,161.161 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:00:05,166.166 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-08-31 20:00:08,861.861 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 20:00:08,864.864 INFO    ] Checking for system updates...
[2026-08-31 20:00:08,906.906 INFO    ] 200
[2026-08-31 20:00:08,910.910 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:00:08,964.964 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:00:08,966.966 INFO    ] No update needed
[2026-08-31 20:00:08,970.970 INFO    ] Checking for camera pi updates...
[2026-08-31 20:00:09,005.005 INFO    ] 200
[2026-08-31 20:00:09,008.008 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:00:09,050.050 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:00:09,137.137 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:00:09,140.140 INFO    ] No camera update needed
[2026-08-31 20:00:09,142.142 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:00:09,144.144 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:00:09,150.150 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:00:09,154.154 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:00:11,195.195 INFO    ] ================================================
[2026-08-31 20:00:11,211.211 INFO    ] Launching Daemon at Mon Aug 31 20:00:11 IST 2026
[2026-08-31 20:00:11,222.222 INFO    ] ================================================
[2026-08-31 20:00:11,882.882 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:00:11
[2026-08-31 20:00:12,526.526 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:00:12,776.776 INFO    ] Initializing speech engine...
[2026-08-31 20:00:12,798.798 INFO    ] 2026-08-31 20:00:12
[2026-08-31 20:00:13,054.054 INFO    ] 2026-08-31 20:00:13
[2026-08-31 20:00:13,090.090 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:00:13,346.346 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:00:13,356.356 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:00:13,565.565 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:00:13,617.617 INFO    ] time= 31/08/2026 20:00:13
[2026-08-31 20:00:13,624.624 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:00:13,642.642 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:00:13,772.772 INFO    ] No existing commands found in stream
[2026-08-31 20:00:18,786.786 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:00:18,789.789 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-08-31 20:00:19,335.335 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 20:00:19,338.338 INFO    ] Checking for system updates...
[2026-08-31 20:00:19,374.374 INFO    ] 200
[2026-08-31 20:00:19,376.376 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:00:19,436.436 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:00:19,438.438 INFO    ] No update needed
[2026-08-31 20:00:19,441.441 INFO    ] Checking for camera pi updates...
[2026-08-31 20:00:19,478.478 INFO    ] 200
[2026-08-31 20:00:19,481.481 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:00:19,527.527 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:00:19,593.593 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:00:19,596.596 INFO    ] No camera update needed
[2026-08-31 20:00:19,598.598 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:00:19,600.600 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:00:19,606.606 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:00:19,611.611 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:00:21,652.652 INFO    ] ================================================
[2026-08-31 20:00:21,668.668 INFO    ] Launching Daemon at Mon Aug 31 20:00:21 IST 2026
[2026-08-31 20:00:21,679.679 INFO    ] ================================================
[2026-08-31 20:00:22,341.341 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:00:22
[2026-08-31 20:00:22,938.938 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:00:23,248.248 INFO    ] Initializing speech engine...
[2026-08-31 20:00:23,261.261 INFO    ] 2026-08-31 20:00:23
[2026-08-31 20:00:23,556.556 INFO    ] 2026-08-31 20:00:23
[2026-08-31 20:00:23,668.668 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:00:23,892.892 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:00:23,901.901 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:00:24,101.101 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:00:24,118.118 INFO    ] time= 31/08/2026 20:00:24
[2026-08-31 20:00:24,149.149 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:00:24,157.157 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:00:24,284.284 INFO    ] No existing commands found in stream
[2026-08-31 20:00:29,311.311 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:00:29,314.314 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-08-31 20:00:33,450.450 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 20:00:33,453.453 INFO    ] Checking for system updates...
[2026-08-31 20:00:33,490.490 INFO    ] 200
[2026-08-31 20:00:33,493.493 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:00:33,545.545 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:00:33,548.548 INFO    ] No update needed
[2026-08-31 20:00:33,550.550 INFO    ] Checking for camera pi updates...
[2026-08-31 20:00:33,583.583 INFO    ] 200
[2026-08-31 20:00:33,586.586 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:00:33,633.633 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:00:33,721.721 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:00:33,723.723 INFO    ] No camera update needed
[2026-08-31 20:00:33,726.726 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:00:33,729.729 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:00:33,734.734 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:00:33,739.739 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:00:35,779.779 INFO    ] ================================================
[2026-08-31 20:00:35,796.796 INFO    ] Launching Daemon at Mon Aug 31 20:00:35 IST 2026
[2026-08-31 20:00:35,807.807 INFO    ] ================================================
[2026-08-31 20:00:36,484.484 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:00:36
[2026-08-31 20:00:37,144.144 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:00:37,414.414 INFO    ] Initializing speech engine...
[2026-08-31 20:00:37,426.426 INFO    ] 2026-08-31 20:00:37
[2026-08-31 20:00:37,686.686 INFO    ] 2026-08-31 20:00:37
[2026-08-31 20:00:37,739.739 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:00:37,960.960 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:00:37,970.970 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:00:38,102.102 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:00:38,145.145 INFO    ] time= 31/08/2026 20:00:38
[2026-08-31 20:00:38,199.199 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:00:38,236.236 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:00:38,370.370 INFO    ] No existing commands found in stream
[2026-08-31 20:00:43,394.394 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:00:43,397.397 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-08-31 20:00:46,418.418 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 20:00:46,421.421 INFO    ] Checking for system updates...
[2026-08-31 20:00:46,462.462 INFO    ] 200
[2026-08-31 20:00:46,464.464 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:00:46,516.516 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:00:46,519.519 INFO    ] No update needed
[2026-08-31 20:00:46,521.521 INFO    ] Checking for camera pi updates...
[2026-08-31 20:00:46,555.555 INFO    ] 200
[2026-08-31 20:00:46,558.558 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:00:46,600.600 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:00:46,689.689 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:00:46,692.692 INFO    ] No camera update needed
[2026-08-31 20:00:46,694.694 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:00:46,696.696 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:00:46,702.702 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:00:46,707.707 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:00:48,749.749 INFO    ] ================================================
[2026-08-31 20:00:48,765.765 INFO    ] Launching Daemon at Mon Aug 31 20:00:48 IST 2026
[2026-08-31 20:00:48,777.777 INFO    ] ================================================
[2026-08-31 20:00:49,345.345 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:00:49
[2026-08-31 20:00:49,929.929 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:00:50,199.199 INFO    ] Initializing speech engine...
[2026-08-31 20:00:50,208.208 INFO    ] 2026-08-31 20:00:50
[2026-08-31 20:00:50,479.479 INFO    ] 2026-08-31 20:00:50
[2026-08-31 20:00:50,542.542 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:00:50,791.791 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:00:50,802.802 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:00:50,971.971 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:00:50,990.990 INFO    ] time= 31/08/2026 20:00:50
[2026-08-31 20:00:51,051.051 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:00:51,101.101 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:00:51,202.202 INFO    ] No existing commands found in stream
[2026-08-31 20:00:56,213.213 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:00:56,216.216 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-08-31 20:00:57,282.282 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 20:00:57,285.285 INFO    ] Checking for system updates...
[2026-08-31 20:00:57,326.326 INFO    ] 200
[2026-08-31 20:00:57,328.328 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:00:57,393.393 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:00:57,395.395 INFO    ] No update needed
[2026-08-31 20:00:57,398.398 INFO    ] Checking for camera pi updates...
[2026-08-31 20:00:57,436.436 INFO    ] 200
[2026-08-31 20:00:57,438.438 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:00:57,750.750 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:00:57,834.834 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:00:57,837.837 INFO    ] No camera update needed
[2026-08-31 20:00:57,839.839 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:00:57,842.842 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:00:57,847.847 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:00:57,852.852 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:00:59,892.892 INFO    ] ================================================
[2026-08-31 20:00:59,908.908 INFO    ] Launching Daemon at Mon Aug 31 20:00:59 IST 2026
[2026-08-31 20:00:59,920.920 INFO    ] ================================================
[2026-08-31 20:01:00,500.500 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:01:00
[2026-08-31 20:01:01,099.099 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:01:01,344.344 INFO    ] Initializing speech engine...
[2026-08-31 20:01:01,358.358 INFO    ] 2026-08-31 20:01:01
[2026-08-31 20:01:01,644.644 INFO    ] 2026-08-31 20:01:01
[2026-08-31 20:01:01,717.717 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:01:01,958.958 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:01:01,961.961 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:01:02,124.124 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:01:02,128.128 INFO    ] time= 31/08/2026 20:01:02
[2026-08-31 20:01:02,131.131 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:01:02,162.162 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:01:02,260.260 INFO    ] No existing commands found in stream
[2026-08-31 20:01:07,296.296 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:01:07,299.299 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-08-31 20:01:09,728.728 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 20:01:09,731.731 INFO    ] Checking for system updates...
[2026-08-31 20:01:09,770.770 INFO    ] 200
[2026-08-31 20:01:09,772.772 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:01:09,825.825 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:01:09,828.828 INFO    ] No update needed
[2026-08-31 20:01:09,830.830 INFO    ] Checking for camera pi updates...
[2026-08-31 20:01:09,867.867 INFO    ] 200
[2026-08-31 20:01:09,870.870 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:01:09,911.911 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:01:09,998.998 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:01:10,001.001 INFO    ] No camera update needed
[2026-08-31 20:01:10,004.004 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:01:10,006.006 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:01:10,012.012 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:01:10,018.018 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:01:12,060.060 INFO    ] ================================================
[2026-08-31 20:01:12,076.076 INFO    ] Launching Daemon at Mon Aug 31 20:01:12 IST 2026
[2026-08-31 20:01:12,087.087 INFO    ] ================================================
[2026-08-31 20:01:12,661.661 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:01:12
[2026-08-31 20:01:13,245.245 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:01:13,517.517 INFO    ] Initializing speech engine...
[2026-08-31 20:01:13,528.528 INFO    ] 2026-08-31 20:01:13
[2026-08-31 20:01:13,777.777 INFO    ] 2026-08-31 20:01:13
[2026-08-31 20:01:13,812.812 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:01:14,072.072 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:01:14,081.081 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:01:14,288.288 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:01:14,342.342 INFO    ] time= 31/08/2026 20:01:14
[2026-08-31 20:01:14,353.353 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:01:14,359.359 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:01:14,497.497 INFO    ] No existing commands found in stream
[2026-08-31 20:01:19,519.519 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:01:19,522.522 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-08-31 20:01:22,132.132 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 20:01:22,135.135 INFO    ] Checking for system updates...
[2026-08-31 20:01:22,174.174 INFO    ] 200
[2026-08-31 20:01:22,176.176 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:01:22,229.229 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:01:22,232.232 INFO    ] No update needed
[2026-08-31 20:01:22,234.234 INFO    ] Checking for camera pi updates...
[2026-08-31 20:01:22,267.267 INFO    ] 200
[2026-08-31 20:01:22,270.270 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:01:22,310.310 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:01:22,398.398 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:01:22,400.400 INFO    ] No camera update needed
[2026-08-31 20:01:22,403.403 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:01:22,405.405 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:01:22,410.410 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:01:22,415.415 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:01:24,458.458 INFO    ] ================================================
[2026-08-31 20:01:24,474.474 INFO    ] Launching Daemon at Mon Aug 31 20:01:24 IST 2026
[2026-08-31 20:01:24,485.485 INFO    ] ================================================
[2026-08-31 20:01:25,065.065 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:01:25
[2026-08-31 20:01:25,661.661 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:01:25,932.932 INFO    ] Initializing speech engine...
[2026-08-31 20:01:25,940.940 INFO    ] 2026-08-31 20:01:25
[2026-08-31 20:01:26,197.197 INFO    ] 2026-08-31 20:01:26
[2026-08-31 20:01:26,256.256 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:01:26,478.478 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:01:26,487.487 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:01:26,703.703 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:01:26,746.746 INFO    ] time= 31/08/2026 20:01:26
[2026-08-31 20:01:26,753.753 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:01:26,773.773 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:01:26,921.921 INFO    ] No existing commands found in stream
[2026-08-31 20:01:31,950.950 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:01:31,953.953 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-08-31 20:01:32,656.656 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 20:01:32,659.659 INFO    ] Checking for system updates...
[2026-08-31 20:01:32,709.709 INFO    ] 200
[2026-08-31 20:01:32,712.712 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:01:32,768.768 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:01:32,771.771 INFO    ] No update needed
[2026-08-31 20:01:32,774.774 INFO    ] Checking for camera pi updates...
[2026-08-31 20:01:32,814.814 INFO    ] 200
[2026-08-31 20:01:32,816.816 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:01:32,864.864 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:01:32,959.959 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:01:32,965.965 INFO    ] No camera update needed
[2026-08-31 20:01:32,968.968 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:01:32,971.971 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:01:32,976.976 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:01:32,982.982 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:01:35,021.021 INFO    ] ================================================
[2026-08-31 20:01:35,036.036 INFO    ] Launching Daemon at Mon Aug 31 20:01:35 IST 2026
[2026-08-31 20:01:35,047.047 INFO    ] ================================================
[2026-08-31 20:01:35,631.631 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:01:35
[2026-08-31 20:01:36,232.232 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:01:36,491.491 INFO    ] Initializing speech engine...
[2026-08-31 20:01:36,500.500 INFO    ] 2026-08-31 20:01:36
[2026-08-31 20:01:36,796.796 INFO    ] 2026-08-31 20:01:36
[2026-08-31 20:01:36,835.835 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:01:37,061.061 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:01:37,076.076 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:01:37,259.259 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:01:37,266.266 INFO    ] time= 31/08/2026 20:01:37
[2026-08-31 20:01:37,331.331 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:01:37,392.392 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:01:37,525.525 INFO    ] No existing commands found in stream
[2026-08-31 20:01:42,548.548 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:01:42,551.551 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-08-31 20:01:45,548.548 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 20:01:45,551.551 INFO    ] Checking for system updates...
[2026-08-31 20:01:45,588.588 INFO    ] 200
[2026-08-31 20:01:45,591.591 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:01:45,649.649 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:01:45,652.652 INFO    ] No update needed
[2026-08-31 20:01:45,654.654 INFO    ] Checking for camera pi updates...
[2026-08-31 20:01:45,688.688 INFO    ] 200
[2026-08-31 20:01:45,691.691 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:01:45,736.736 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:01:45,815.815 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:01:45,818.818 INFO    ] No camera update needed
[2026-08-31 20:01:45,820.820 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:01:45,822.822 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:01:45,828.828 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:01:45,833.833 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:01:47,873.873 INFO    ] ================================================
[2026-08-31 20:01:47,888.888 INFO    ] Launching Daemon at Mon Aug 31 20:01:47 IST 2026
[2026-08-31 20:01:47,899.899 INFO    ] ================================================
[2026-08-31 20:01:48,484.484 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:01:48
[2026-08-31 20:01:49,081.081 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:01:49,353.353 INFO    ] Initializing speech engine...
[2026-08-31 20:01:49,362.362 INFO    ] 2026-08-31 20:01:49
[2026-08-31 20:01:49,611.611 INFO    ] 2026-08-31 20:01:49
[2026-08-31 20:01:49,676.676 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:01:49,926.926 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:01:49,931.931 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:01:50,112.112 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:01:50,163.163 INFO    ] time= 31/08/2026 20:01:50
[2026-08-31 20:01:50,170.170 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:01:50,191.191 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:01:50,298.298 INFO    ] No existing commands found in stream
[2026-08-31 20:01:55,324.324 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:01:55,326.326 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-08-31 20:01:57,132.132 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 20:01:57,135.135 INFO    ] Checking for system updates...
[2026-08-31 20:01:57,176.176 INFO    ] 200
[2026-08-31 20:01:57,179.179 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:01:57,239.239 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:01:57,242.242 INFO    ] No update needed
[2026-08-31 20:01:57,245.245 INFO    ] Checking for camera pi updates...
[2026-08-31 20:01:57,280.280 INFO    ] 200
[2026-08-31 20:01:57,283.283 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:01:57,324.324 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:01:57,525.525 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:01:57,529.529 INFO    ] No camera update needed
[2026-08-31 20:01:57,532.532 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:01:57,535.535 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:01:57,541.541 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:01:57,547.547 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:01:59,589.589 INFO    ] ================================================
[2026-08-31 20:01:59,605.605 INFO    ] Launching Daemon at Mon Aug 31 20:01:59 IST 2026
[2026-08-31 20:01:59,616.616 INFO    ] ================================================
[2026-08-31 20:02:00,181.181 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:02:00
[2026-08-31 20:02:00,766.766 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:02:01,021.021 INFO    ] Initializing speech engine...
[2026-08-31 20:02:01,030.030 INFO    ] 2026-08-31 20:02:01
[2026-08-31 20:02:01,324.324 INFO    ] 2026-08-31 20:02:01
[2026-08-31 20:02:01,361.361 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:02:01,643.643 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:02:01,672.672 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:02:01,880.880 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:02:01,885.885 INFO    ] time= 31/08/2026 20:02:01
[2026-08-31 20:02:01,889.889 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:02:01,892.892 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:02:01,975.975 INFO    ] No existing commands found in stream
[2026-08-31 20:02:06,985.985 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:02:06,988.988 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-08-31 20:02:10,609.609 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 20:02:10,612.612 INFO    ] Checking for system updates...
[2026-08-31 20:02:10,647.647 INFO    ] 200
[2026-08-31 20:02:10,650.650 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:02:10,708.708 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:02:10,710.710 INFO    ] No update needed
[2026-08-31 20:02:10,713.713 INFO    ] Checking for camera pi updates...
[2026-08-31 20:02:10,747.747 INFO    ] 200
[2026-08-31 20:02:10,750.750 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:02:10,794.794 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:02:10,877.877 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:02:10,880.880 INFO    ] No camera update needed
[2026-08-31 20:02:10,883.883 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:02:10,885.885 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:02:10,892.892 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:02:10,897.897 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:02:12,938.938 INFO    ] ================================================
[2026-08-31 20:02:12,954.954 INFO    ] Launching Daemon at Mon Aug 31 20:02:12 IST 2026
[2026-08-31 20:02:12,964.964 INFO    ] ================================================
[2026-08-31 20:02:13,544.544 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:02:13
[2026-08-31 20:02:14,141.141 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:02:14,419.419 INFO    ] Initializing speech engine...
[2026-08-31 20:02:14,428.428 INFO    ] 2026-08-31 20:02:14
[2026-08-31 20:02:14,688.688 INFO    ] 2026-08-31 20:02:14
[2026-08-31 20:02:14,717.717 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:02:14,964.964 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:02:14,974.974 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:02:15,108.108 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:02:15,173.173 INFO    ] time= 31/08/2026 20:02:15
[2026-08-31 20:02:15,227.227 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:02:15,243.243 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:02:15,385.385 INFO    ] No existing commands found in stream
[2026-08-31 20:02:20,400.400 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:02:20,402.402 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-08-31 20:02:21,705.705 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 20:02:21,708.708 INFO    ] Checking for system updates...
[2026-08-31 20:02:21,748.748 INFO    ] 200
[2026-08-31 20:02:21,750.750 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:02:21,802.802 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:02:21,805.805 INFO    ] No update needed
[2026-08-31 20:02:21,807.807 INFO    ] Checking for camera pi updates...
[2026-08-31 20:02:21,844.844 INFO    ] 200
[2026-08-31 20:02:21,847.847 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:02:21,892.892 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:02:21,975.975 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:02:21,978.978 INFO    ] No camera update needed
[2026-08-31 20:02:21,980.980 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:02:21,983.983 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:02:21,988.988 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:02:21,994.994 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:02:24,035.035 INFO    ] ================================================
[2026-08-31 20:02:24,051.051 INFO    ] Launching Daemon at Mon Aug 31 20:02:24 IST 2026
[2026-08-31 20:02:24,061.061 INFO    ] ================================================
[2026-08-31 20:02:24,710.710 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:02:24
[2026-08-31 20:02:25,378.378 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:02:25,687.687 INFO    ] Initializing speech engine...
[2026-08-31 20:02:25,700.700 INFO    ] 2026-08-31 20:02:25
[2026-08-31 20:02:25,979.979 INFO    ] 2026-08-31 20:02:25
[2026-08-31 20:02:26,031.031 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:02:26,262.262 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:02:26,267.267 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:02:26,419.419 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:02:26,494.494 INFO    ] time= 31/08/2026 20:02:26
[2026-08-31 20:02:26,539.539 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:02:26,545.545 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:02:26,691.691 INFO    ] No existing commands found in stream
[2026-08-31 20:02:31,709.709 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:02:31,712.712 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-08-31 20:02:35,181.181 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 20:02:35,183.183 INFO    ] Checking for system updates...
[2026-08-31 20:02:35,219.219 INFO    ] 200
[2026-08-31 20:02:35,222.222 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:02:35,276.276 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:02:35,279.279 INFO    ] No update needed
[2026-08-31 20:02:35,281.281 INFO    ] Checking for camera pi updates...
[2026-08-31 20:02:35,315.315 INFO    ] 200
[2026-08-31 20:02:35,317.317 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:02:35,357.357 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:02:35,459.459 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:02:35,461.461 INFO    ] No camera update needed
[2026-08-31 20:02:35,464.464 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:02:35,466.466 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:02:35,471.471 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:02:35,476.476 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:02:37,521.521 INFO    ] ================================================
[2026-08-31 20:02:37,536.536 INFO    ] Launching Daemon at Mon Aug 31 20:02:37 IST 2026
[2026-08-31 20:02:37,547.547 INFO    ] ================================================
[2026-08-31 20:02:38,113.113 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:02:38
[2026-08-31 20:02:38,697.697 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:02:38,970.970 INFO    ] Initializing speech engine...
[2026-08-31 20:02:38,979.979 INFO    ] 2026-08-31 20:02:38
[2026-08-31 20:02:39,231.231 INFO    ] 2026-08-31 20:02:39
[2026-08-31 20:02:39,266.266 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:02:39,443.443 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:02:39,456.456 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:02:39,606.606 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:02:39,611.611 INFO    ] time= 31/08/2026 20:02:39
[2026-08-31 20:02:39,617.617 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:02:39,664.664 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:02:39,809.809 INFO    ] No existing commands found in stream
[2026-08-31 20:02:44,824.824 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:02:44,827.827 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-08-31 20:02:45,325.325 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 20:02:45,328.328 INFO    ] Checking for system updates...
[2026-08-31 20:02:45,367.367 INFO    ] 200
[2026-08-31 20:02:45,370.370 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:02:45,422.422 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:02:45,424.424 INFO    ] No update needed
[2026-08-31 20:02:45,427.427 INFO    ] Checking for camera pi updates...
[2026-08-31 20:02:45,467.467 INFO    ] 200
[2026-08-31 20:02:45,470.470 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:02:45,511.511 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:02:45,598.598 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:02:45,600.600 INFO    ] No camera update needed
[2026-08-31 20:02:45,603.603 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:02:45,606.606 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:02:45,612.612 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:02:45,618.618 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:02:47,660.660 INFO    ] ================================================
[2026-08-31 20:02:47,675.675 INFO    ] Launching Daemon at Mon Aug 31 20:02:47 IST 2026
[2026-08-31 20:02:47,686.686 INFO    ] ================================================
[2026-08-31 20:02:48,269.269 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:02:48
[2026-08-31 20:02:48,866.866 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:02:49,139.139 INFO    ] Initializing speech engine...
[2026-08-31 20:02:49,148.148 INFO    ] 2026-08-31 20:02:49
[2026-08-31 20:02:49,411.411 INFO    ] 2026-08-31 20:02:49
[2026-08-31 20:02:49,465.465 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:02:49,692.692 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:02:49,698.698 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:02:49,924.924 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:02:49,953.953 INFO    ] time= 31/08/2026 20:02:49
[2026-08-31 20:02:49,971.971 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:02:49,991.991 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:02:50,131.131 INFO    ] No existing commands found in stream
[2026-08-31 20:02:55,156.156 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:02:55,159.159 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-08-31 20:02:57,857.857 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 20:02:57,860.860 INFO    ] Checking for system updates...
[2026-08-31 20:02:57,896.896 INFO    ] 200
[2026-08-31 20:02:57,898.898 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:02:57,959.959 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:02:57,962.962 INFO    ] No update needed
[2026-08-31 20:02:57,964.964 INFO    ] Checking for camera pi updates...
[2026-08-31 20:02:57,997.997 INFO    ] 200
[2026-08-31 20:02:58,000.000 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:02:58,046.046 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:02:58,127.127 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:02:58,130.130 INFO    ] No camera update needed
[2026-08-31 20:02:58,132.132 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:02:58,134.134 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:02:58,140.140 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:02:58,145.145 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:03:00,188.188 INFO    ] ================================================
[2026-08-31 20:03:00,204.204 INFO    ] Launching Daemon at Mon Aug 31 20:03:00 IST 2026
[2026-08-31 20:03:00,214.214 INFO    ] ================================================
[2026-08-31 20:03:00,782.782 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:03:00
[2026-08-31 20:03:01,364.364 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:03:01,634.634 INFO    ] Initializing speech engine...
[2026-08-31 20:03:01,644.644 INFO    ] 2026-08-31 20:03:01
[2026-08-31 20:03:02,038.038 INFO    ] 2026-08-31 20:03:02
[2026-08-31 20:03:02,100.100 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:03:02,319.319 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:03:02,323.323 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:03:02,515.515 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:03:02,525.525 INFO    ] time= 31/08/2026 20:03:02
[2026-08-31 20:03:02,536.536 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:03:02,598.598 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:03:02,713.713 INFO    ] No existing commands found in stream
[2026-08-31 20:03:07,739.739 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:03:07,742.742 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-08-31 20:03:11,620.620 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 20:03:11,623.623 INFO    ] Checking for system updates...
[2026-08-31 20:03:11,658.658 INFO    ] 200
[2026-08-31 20:03:11,660.660 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:03:11,712.712 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:03:11,714.714 INFO    ] No update needed
[2026-08-31 20:03:11,717.717 INFO    ] Checking for camera pi updates...
[2026-08-31 20:03:11,751.751 INFO    ] 200
[2026-08-31 20:03:11,753.753 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:03:11,798.798 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:03:11,877.877 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:03:11,880.880 INFO    ] No camera update needed
[2026-08-31 20:03:11,882.882 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:03:11,884.884 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:03:11,889.889 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:03:11,894.894 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:03:13,934.934 INFO    ] ================================================
[2026-08-31 20:03:13,949.949 INFO    ] Launching Daemon at Mon Aug 31 20:03:13 IST 2026
[2026-08-31 20:03:13,960.960 INFO    ] ================================================
[2026-08-31 20:03:14,544.544 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:03:14
[2026-08-31 20:03:15,144.144 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:03:15,417.417 INFO    ] Initializing speech engine...
[2026-08-31 20:03:15,428.428 INFO    ] 2026-08-31 20:03:15
[2026-08-31 20:03:15,674.674 INFO    ] 2026-08-31 20:03:15
[2026-08-31 20:03:15,710.710 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:03:15,907.907 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:03:15,963.963 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:03:16,115.115 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:03:16,180.180 INFO    ] time= 31/08/2026 20:03:16
[2026-08-31 20:03:16,232.232 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:03:16,238.238 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:03:16,372.372 INFO    ] No existing commands found in stream
[2026-08-31 20:03:21,393.393 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:03:21,395.395 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-08-31 20:03:23,168.168 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 20:03:23,171.171 INFO    ] Checking for system updates...
[2026-08-31 20:03:23,207.207 INFO    ] 200
[2026-08-31 20:03:23,209.209 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:03:23,262.262 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:03:23,264.264 INFO    ] No update needed
[2026-08-31 20:03:23,267.267 INFO    ] Checking for camera pi updates...
[2026-08-31 20:03:23,305.305 INFO    ] 200
[2026-08-31 20:03:23,308.308 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:03:23,354.354 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:03:23,437.437 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:03:23,439.439 INFO    ] No camera update needed
[2026-08-31 20:03:23,442.442 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:03:23,444.444 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:03:23,451.451 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:03:23,456.456 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:03:25,498.498 INFO    ] ================================================
[2026-08-31 20:03:25,513.513 INFO    ] Launching Daemon at Mon Aug 31 20:03:25 IST 2026
[2026-08-31 20:03:25,523.523 INFO    ] ================================================
[2026-08-31 20:03:26,088.088 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:03:26
[2026-08-31 20:03:26,670.670 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:03:26,918.918 INFO    ] Initializing speech engine...
[2026-08-31 20:03:26,942.942 INFO    ] 2026-08-31 20:03:26
[2026-08-31 20:03:27,197.197 INFO    ] 2026-08-31 20:03:27
[2026-08-31 20:03:27,232.232 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:03:27,409.409 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:03:27,422.422 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:03:27,635.635 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:03:27,656.656 INFO    ] time= 31/08/2026 20:03:27
[2026-08-31 20:03:27,716.716 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:03:27,770.770 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:03:27,890.890 INFO    ] No existing commands found in stream
[2026-08-31 20:03:32,912.912 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:03:32,915.915 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-08-31 20:03:35,845.845 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 20:03:35,848.848 INFO    ] Checking for system updates...
[2026-08-31 20:03:35,887.887 INFO    ] 200
[2026-08-31 20:03:35,889.889 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:03:35,947.947 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:03:35,950.950 INFO    ] No update needed
[2026-08-31 20:03:35,952.952 INFO    ] Checking for camera pi updates...
[2026-08-31 20:03:35,985.985 INFO    ] 200
[2026-08-31 20:03:35,988.988 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:03:36,028.028 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:03:36,108.108 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:03:36,110.110 INFO    ] No camera update needed
[2026-08-31 20:03:36,113.113 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:03:36,115.115 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:03:36,120.120 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:03:36,125.125 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:03:38,166.166 INFO    ] ================================================
[2026-08-31 20:03:38,181.181 INFO    ] Launching Daemon at Mon Aug 31 20:03:38 IST 2026
[2026-08-31 20:03:38,191.191 INFO    ] ================================================
[2026-08-31 20:03:38,835.835 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:03:38
[2026-08-31 20:03:39,494.494 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:03:39,793.793 INFO    ] Initializing speech engine...
[2026-08-31 20:03:39,805.805 INFO    ] 2026-08-31 20:03:39
[2026-08-31 20:03:40,072.072 INFO    ] 2026-08-31 20:03:40
[2026-08-31 20:03:40,124.124 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:03:40,357.357 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:03:40,378.378 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:03:40,574.574 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:03:40,621.621 INFO    ] time= 31/08/2026 20:03:40
[2026-08-31 20:03:40,641.641 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:03:40,669.669 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:03:40,774.774 INFO    ] No existing commands found in stream
[2026-08-31 20:03:45,788.788 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:03:45,791.791 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-08-31 20:03:47,673.673 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 20:03:47,676.676 INFO    ] Checking for system updates...
[2026-08-31 20:03:47,713.713 INFO    ] 200
[2026-08-31 20:03:47,716.716 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:03:47,770.770 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:03:47,773.773 INFO    ] No update needed
[2026-08-31 20:03:47,775.775 INFO    ] Checking for camera pi updates...
[2026-08-31 20:03:47,813.813 INFO    ] 200
[2026-08-31 20:03:47,816.816 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:03:47,862.862 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:03:47,947.947 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:03:47,950.950 INFO    ] No camera update needed
[2026-08-31 20:03:47,953.953 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:03:47,955.955 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:03:47,961.961 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:03:47,967.967 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:03:50,007.007 INFO    ] ================================================
[2026-08-31 20:03:50,022.022 INFO    ] Launching Daemon at Mon Aug 31 20:03:50 IST 2026
[2026-08-31 20:03:50,032.032 INFO    ] ================================================
[2026-08-31 20:03:50,595.595 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:03:50
[2026-08-31 20:03:51,178.178 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:03:51,431.431 INFO    ] Initializing speech engine...
[2026-08-31 20:03:51,438.438 INFO    ] 2026-08-31 20:03:51
[2026-08-31 20:03:51,728.728 INFO    ] 2026-08-31 20:03:51
[2026-08-31 20:03:51,764.764 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:03:51,984.984 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:03:51,992.992 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:03:52,210.210 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:03:52,217.217 INFO    ] time= 31/08/2026 20:03:52
[2026-08-31 20:03:52,241.241 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:03:52,296.296 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:03:52,368.368 INFO    ] No existing commands found in stream
[2026-08-31 20:03:57,390.390 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:03:57,392.392 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-08-31 20:04:00,935.935 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 20:04:00,938.938 INFO    ] Checking for system updates...
[2026-08-31 20:04:00,973.973 INFO    ] 200
[2026-08-31 20:04:00,976.976 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:04:01,028.028 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:04:01,030.030 INFO    ] No update needed
[2026-08-31 20:04:01,033.033 INFO    ] Checking for camera pi updates...
[2026-08-31 20:04:01,067.067 INFO    ] 200
[2026-08-31 20:04:01,070.070 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:04:01,111.111 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:04:01,300.300 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:04:01,303.303 INFO    ] No camera update needed
[2026-08-31 20:04:01,305.305 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:04:01,307.307 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:04:01,313.313 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:04:01,318.318 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:04:03,361.361 INFO    ] ================================================
[2026-08-31 20:04:03,375.375 INFO    ] Launching Daemon at Mon Aug 31 20:04:03 IST 2026
[2026-08-31 20:04:03,386.386 INFO    ] ================================================
[2026-08-31 20:04:03,977.977 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:04:03
[2026-08-31 20:04:04,576.576 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:04:04,850.850 INFO    ] Initializing speech engine...
[2026-08-31 20:04:04,861.861 INFO    ] 2026-08-31 20:04:04
[2026-08-31 20:04:05,127.127 INFO    ] 2026-08-31 20:04:05
[2026-08-31 20:04:05,178.178 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:04:05,405.405 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:04:05,411.411 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:04:05,543.543 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:04:05,594.594 INFO    ] time= 31/08/2026 20:04:05
[2026-08-31 20:04:05,643.643 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:04:05,675.675 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:04:05,809.809 INFO    ] No existing commands found in stream
[2026-08-31 20:04:10,830.830 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:04:10,832.832 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-08-31 20:04:12,451.451 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 20:04:12,454.454 INFO    ] Checking for system updates...
[2026-08-31 20:04:12,494.494 INFO    ] 200
[2026-08-31 20:04:12,496.496 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:04:12,549.549 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:04:12,551.551 INFO    ] No update needed
[2026-08-31 20:04:12,554.554 INFO    ] Checking for camera pi updates...
[2026-08-31 20:04:12,587.587 INFO    ] 200
[2026-08-31 20:04:12,590.590 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:04:12,630.630 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:04:12,711.711 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:04:12,713.713 INFO    ] No camera update needed
[2026-08-31 20:04:12,715.715 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:04:12,718.718 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:04:12,723.723 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:04:12,728.728 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:04:14,769.769 INFO    ] ================================================
[2026-08-31 20:04:14,785.785 INFO    ] Launching Daemon at Mon Aug 31 20:04:14 IST 2026
[2026-08-31 20:04:14,796.796 INFO    ] ================================================
[2026-08-31 20:04:15,364.364 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:04:15
[2026-08-31 20:04:15,948.948 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:04:16,220.220 INFO    ] Initializing speech engine...
[2026-08-31 20:04:16,226.226 INFO    ] 2026-08-31 20:04:16
[2026-08-31 20:04:16,486.486 INFO    ] 2026-08-31 20:04:16
[2026-08-31 20:04:16,515.515 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:04:16,758.758 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:04:16,768.768 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:04:16,901.901 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:04:16,940.940 INFO    ] time= 31/08/2026 20:04:16
[2026-08-31 20:04:16,999.999 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:04:17,031.031 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:04:17,175.175 INFO    ] No existing commands found in stream
[2026-08-31 20:04:22,189.189 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:04:22,192.192 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-08-31 20:04:24,415.415 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 20:04:24,418.418 INFO    ] Checking for system updates...
[2026-08-31 20:04:24,461.461 INFO    ] 200
[2026-08-31 20:04:24,465.465 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:04:24,523.523 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:04:24,526.526 INFO    ] No update needed
[2026-08-31 20:04:24,529.529 INFO    ] Checking for camera pi updates...
[2026-08-31 20:04:24,565.565 INFO    ] 200
[2026-08-31 20:04:24,567.567 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:04:24,615.615 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:04:24,710.710 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:04:24,713.713 INFO    ] No camera update needed
[2026-08-31 20:04:24,716.716 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:04:24,718.718 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:04:24,724.724 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:04:24,730.730 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:04:26,772.772 INFO    ] ================================================
[2026-08-31 20:04:26,794.794 INFO    ] Launching Daemon at Mon Aug 31 20:04:26 IST 2026
[2026-08-31 20:04:26,812.812 INFO    ] ================================================
[2026-08-31 20:04:27,448.448 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:04:27
[2026-08-31 20:04:28,125.125 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:04:28,422.422 INFO    ] Initializing speech engine...
[2026-08-31 20:04:28,433.433 INFO    ] 2026-08-31 20:04:28
[2026-08-31 20:04:28,698.698 INFO    ] 2026-08-31 20:04:28
[2026-08-31 20:04:28,740.740 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:04:28,959.959 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:04:28,968.968 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:04:29,102.102 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:04:29,162.162 INFO    ] time= 31/08/2026 20:04:29
[2026-08-31 20:04:29,216.216 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:04:29,236.236 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:04:29,287.287 INFO    ] No existing commands found in stream
[2026-08-31 20:04:34,299.299 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:04:34,301.301 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-08-31 20:04:36,125.125 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 20:04:36,128.128 INFO    ] Checking for system updates...
[2026-08-31 20:04:36,164.164 INFO    ] 200
[2026-08-31 20:04:36,166.166 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:04:36,218.218 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:04:36,221.221 INFO    ] No update needed
[2026-08-31 20:04:36,223.223 INFO    ] Checking for camera pi updates...
[2026-08-31 20:04:36,261.261 INFO    ] 200
[2026-08-31 20:04:36,264.264 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:04:36,304.304 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:04:36,378.378 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:04:36,381.381 INFO    ] No camera update needed
[2026-08-31 20:04:36,383.383 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:04:36,386.386 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:04:36,392.392 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:04:36,397.397 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:04:38,437.437 INFO    ] ================================================
[2026-08-31 20:04:38,453.453 INFO    ] Launching Daemon at Mon Aug 31 20:04:38 IST 2026
[2026-08-31 20:04:38,463.463 INFO    ] ================================================
[2026-08-31 20:04:39,044.044 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:04:39
[2026-08-31 20:04:39,643.643 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:04:39,916.916 INFO    ] Initializing speech engine...
[2026-08-31 20:04:39,927.927 INFO    ] 2026-08-31 20:04:39
[2026-08-31 20:04:40,174.174 INFO    ] 2026-08-31 20:04:40
[2026-08-31 20:04:40,209.209 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:04:40,453.453 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:04:40,470.470 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:04:40,604.604 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:04:40,658.658 INFO    ] time= 31/08/2026 20:04:40
[2026-08-31 20:04:40,713.713 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:04:40,734.734 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:04:40,852.852 INFO    ] No existing commands found in stream
[2026-08-31 20:04:45,878.878 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:04:45,880.880 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-08-31 20:04:47,584.584 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 20:04:47,587.587 INFO    ] Checking for system updates...
[2026-08-31 20:04:47,623.623 INFO    ] 200
[2026-08-31 20:04:47,626.626 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:04:47,679.679 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:04:47,682.682 INFO    ] No update needed
[2026-08-31 20:04:47,685.685 INFO    ] Checking for camera pi updates...
[2026-08-31 20:04:47,719.719 INFO    ] 200
[2026-08-31 20:04:47,722.722 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:04:47,762.762 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:04:47,849.849 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:04:47,851.851 INFO    ] No camera update needed
[2026-08-31 20:04:47,854.854 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:04:47,856.856 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:04:47,862.862 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:04:47,867.867 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:04:49,909.909 INFO    ] ================================================
[2026-08-31 20:04:49,925.925 INFO    ] Launching Daemon at Mon Aug 31 20:04:49 IST 2026
[2026-08-31 20:04:49,936.936 INFO    ] ================================================
[2026-08-31 20:04:50,517.517 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:04:50
[2026-08-31 20:04:51,110.110 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:04:51,365.365 INFO    ] Initializing speech engine...
[2026-08-31 20:04:51,381.381 INFO    ] 2026-08-31 20:04:51
[2026-08-31 20:04:51,633.633 INFO    ] 2026-08-31 20:04:51
[2026-08-31 20:04:51,668.668 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:04:51,919.919 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:04:51,928.928 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:04:52,070.070 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:04:52,130.130 INFO    ] time= 31/08/2026 20:04:52
[2026-08-31 20:04:52,184.184 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:04:52,197.197 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:04:52,330.330 INFO    ] No existing commands found in stream
[2026-08-31 20:04:57,354.354 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:04:57,357.357 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-08-31 20:05:00,067.067 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 20:05:00,070.070 INFO    ] Checking for system updates...
[2026-08-31 20:05:00,105.105 INFO    ] 200
[2026-08-31 20:05:00,108.108 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:05:00,161.161 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:05:00,164.164 INFO    ] No update needed
[2026-08-31 20:05:00,166.166 INFO    ] Checking for camera pi updates...
[2026-08-31 20:05:00,199.199 INFO    ] 200
[2026-08-31 20:05:00,202.202 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:05:00,247.247 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:05:00,330.330 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:05:00,333.333 INFO    ] No camera update needed
[2026-08-31 20:05:00,335.335 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:05:00,337.337 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:05:00,343.343 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:05:00,348.348 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:05:02,391.391 INFO    ] ================================================
[2026-08-31 20:05:02,412.412 INFO    ] Launching Daemon at Mon Aug 31 20:05:02 IST 2026
[2026-08-31 20:05:02,429.429 INFO    ] ================================================
[2026-08-31 20:05:03,164.164 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:05:03
[2026-08-31 20:05:03,808.808 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:05:04,078.078 INFO    ] Initializing speech engine...
[2026-08-31 20:05:04,094.094 INFO    ] 2026-08-31 20:05:04
[2026-08-31 20:05:04,364.364 INFO    ] 2026-08-31 20:05:04
[2026-08-31 20:05:04,402.402 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:05:04,598.598 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:05:04,611.611 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:05:04,730.730 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:05:04,739.739 INFO    ] time= 31/08/2026 20:05:04
[2026-08-31 20:05:04,759.759 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:05:04,781.781 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:05:04,862.862 INFO    ] No existing commands found in stream
[2026-08-31 20:05:09,874.874 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:05:09,877.877 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-08-31 20:05:14,223.223 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 20:05:14,225.225 INFO    ] Checking for system updates...
[2026-08-31 20:05:14,260.260 INFO    ] 200
[2026-08-31 20:05:14,263.263 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:05:14,315.315 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:05:14,317.317 INFO    ] No update needed
[2026-08-31 20:05:14,320.320 INFO    ] Checking for camera pi updates...
[2026-08-31 20:05:14,353.353 INFO    ] 200
[2026-08-31 20:05:14,356.356 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:05:14,402.402 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:05:14,483.483 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:05:14,485.485 INFO    ] No camera update needed
[2026-08-31 20:05:14,487.487 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:05:14,490.490 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:05:14,495.495 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:05:14,500.500 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:05:16,541.541 INFO    ] ================================================
[2026-08-31 20:05:16,555.555 INFO    ] Launching Daemon at Mon Aug 31 20:05:16 IST 2026
[2026-08-31 20:05:16,566.566 INFO    ] ================================================
[2026-08-31 20:05:17,214.214 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:05:17
[2026-08-31 20:05:17,883.883 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:05:18,186.186 INFO    ] Initializing speech engine...
[2026-08-31 20:05:18,200.200 INFO    ] 2026-08-31 20:05:18
[2026-08-31 20:05:18,479.479 INFO    ] 2026-08-31 20:05:18
[2026-08-31 20:05:18,524.524 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:05:18,773.773 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:05:18,793.793 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:05:18,963.963 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:05:19,023.023 INFO    ] time= 31/08/2026 20:05:18
[2026-08-31 20:05:19,033.033 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:05:19,051.051 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:05:19,180.180 INFO    ] No existing commands found in stream
[2026-08-31 20:05:24,197.197 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:05:24,201.201 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-08-31 20:05:27,979.979 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 20:05:27,982.982 INFO    ] Checking for system updates...
[2026-08-31 20:05:28,023.023 INFO    ] 200
[2026-08-31 20:05:28,026.026 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:05:28,087.087 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:05:28,090.090 INFO    ] No update needed
[2026-08-31 20:05:28,093.093 INFO    ] Checking for camera pi updates...
[2026-08-31 20:05:28,128.128 INFO    ] 200
[2026-08-31 20:05:28,131.131 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:05:28,177.177 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:05:28,278.278 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:05:28,281.281 INFO    ] No camera update needed
[2026-08-31 20:05:28,284.284 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:05:28,286.286 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:05:28,292.292 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:05:28,299.299 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:05:30,339.339 INFO    ] ================================================
[2026-08-31 20:05:30,355.355 INFO    ] Launching Daemon at Mon Aug 31 20:05:30 IST 2026
[2026-08-31 20:05:30,366.366 INFO    ] ================================================
[2026-08-31 20:05:30,932.932 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:05:30
[2026-08-31 20:05:31,514.514 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:05:31,772.772 INFO    ] Initializing speech engine...
[2026-08-31 20:05:31,792.792 INFO    ] 2026-08-31 20:05:31
[2026-08-31 20:05:32,070.070 INFO    ] 2026-08-31 20:05:32
[2026-08-31 20:05:32,107.107 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:05:32,306.306 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:05:32,346.346 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:05:32,623.623 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:05:32,652.652 INFO    ] time= 31/08/2026 20:05:32
[2026-08-31 20:05:32,670.670 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:05:32,685.685 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:05:32,814.814 INFO    ] No existing commands found in stream
[2026-08-31 20:05:37,826.826 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:05:37,829.829 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-08-31 20:05:41,783.783 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 20:05:41,786.786 INFO    ] Checking for system updates...
[2026-08-31 20:05:41,822.822 INFO    ] 200
[2026-08-31 20:05:41,824.824 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:05:41,879.879 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:05:41,882.882 INFO    ] No update needed
[2026-08-31 20:05:41,884.884 INFO    ] Checking for camera pi updates...
[2026-08-31 20:05:41,922.922 INFO    ] 200
[2026-08-31 20:05:41,924.924 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:05:41,969.969 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:05:42,048.048 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:05:42,051.051 INFO    ] No camera update needed
[2026-08-31 20:05:42,054.054 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:05:42,056.056 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:05:42,062.062 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:05:42,068.068 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:05:44,108.108 INFO    ] ================================================
[2026-08-31 20:05:44,124.124 INFO    ] Launching Daemon at Mon Aug 31 20:05:44 IST 2026
[2026-08-31 20:05:44,135.135 INFO    ] ================================================
[2026-08-31 20:05:44,780.780 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:05:44
[2026-08-31 20:05:45,436.436 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:05:45,732.732 INFO    ] Initializing speech engine...
[2026-08-31 20:05:45,741.741 INFO    ] 2026-08-31 20:05:45
[2026-08-31 20:05:46,011.011 INFO    ] 2026-08-31 20:05:46
[2026-08-31 20:05:46,068.068 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:05:46,320.320 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:05:46,354.354 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:05:46,553.553 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:05:46,571.571 INFO    ] time= 31/08/2026 20:05:46
[2026-08-31 20:05:46,581.581 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:05:46,608.608 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:05:46,718.718 INFO    ] No existing commands found in stream
[2026-08-31 20:05:51,748.748 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:05:51,751.751 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-08-31 20:05:53,827.827 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 20:05:53,830.830 INFO    ] Checking for system updates...
[2026-08-31 20:05:53,870.870 INFO    ] 200
[2026-08-31 20:05:53,873.873 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:05:53,931.931 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:05:53,934.934 INFO    ] No update needed
[2026-08-31 20:05:53,937.937 INFO    ] Checking for camera pi updates...
[2026-08-31 20:05:53,972.972 INFO    ] 200
[2026-08-31 20:05:53,975.975 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:05:54,017.017 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:05:54,122.122 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:05:54,124.124 INFO    ] No camera update needed
[2026-08-31 20:05:54,127.127 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:05:54,130.130 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:05:54,136.136 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:05:54,141.141 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:05:56,182.182 INFO    ] ================================================
[2026-08-31 20:05:56,198.198 INFO    ] Launching Daemon at Mon Aug 31 20:05:56 IST 2026
[2026-08-31 20:05:56,209.209 INFO    ] ================================================
[2026-08-31 20:05:56,792.792 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:05:56
[2026-08-31 20:05:57,408.408 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:05:57,666.666 INFO    ] Initializing speech engine...
[2026-08-31 20:05:57,674.674 INFO    ] 2026-08-31 20:05:57
[2026-08-31 20:05:57,970.970 INFO    ] 2026-08-31 20:05:57
[2026-08-31 20:05:58,007.007 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:05:58,198.198 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:05:58,212.212 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:05:58,376.376 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:05:58,384.384 INFO    ] time= 31/08/2026 20:05:58
[2026-08-31 20:05:58,432.432 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:05:58,458.458 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:05:58,563.563 INFO    ] No existing commands found in stream
[2026-08-31 20:06:03,589.589 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:06:03,592.592 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-08-31 20:06:04,943.943 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 20:06:04,945.945 INFO    ] Checking for system updates...
[2026-08-31 20:06:04,981.981 INFO    ] 200
[2026-08-31 20:06:04,984.984 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:06:05,036.036 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:06:05,038.038 INFO    ] No update needed
[2026-08-31 20:06:05,041.041 INFO    ] Checking for camera pi updates...
[2026-08-31 20:06:05,074.074 INFO    ] 200
[2026-08-31 20:06:05,077.077 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:06:05,118.118 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:06:05,198.198 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:06:05,201.201 INFO    ] No camera update needed
[2026-08-31 20:06:05,203.203 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:06:05,205.205 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:06:05,210.210 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:06:05,215.215 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:06:07,255.255 INFO    ] ================================================
[2026-08-31 20:06:07,271.271 INFO    ] Launching Daemon at Mon Aug 31 20:06:07 IST 2026
[2026-08-31 20:06:07,282.282 INFO    ] ================================================
[2026-08-31 20:06:07,848.848 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:06:07
[2026-08-31 20:06:08,430.430 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:06:08,706.706 INFO    ] Initializing speech engine...
[2026-08-31 20:06:08,713.713 INFO    ] 2026-08-31 20:06:08
[2026-08-31 20:06:08,973.973 INFO    ] 2026-08-31 20:06:08
[2026-08-31 20:06:09,003.003 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:06:09,255.255 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:06:09,261.261 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:06:09,392.392 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:06:09,442.442 INFO    ] time= 31/08/2026 20:06:09
[2026-08-31 20:06:09,502.502 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:06:09,526.526 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:06:09,655.655 INFO    ] No existing commands found in stream
[2026-08-31 20:06:14,680.680 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:06:14,683.683 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-08-31 20:06:15,810.810 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 20:06:15,813.813 INFO    ] Checking for system updates...
[2026-08-31 20:06:15,849.849 INFO    ] 200
[2026-08-31 20:06:15,851.851 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:06:15,906.906 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:06:15,908.908 INFO    ] No update needed
[2026-08-31 20:06:15,911.911 INFO    ] Checking for camera pi updates...
[2026-08-31 20:06:15,944.944 INFO    ] 200
[2026-08-31 20:06:15,946.946 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:06:15,987.987 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:06:16,080.080 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:06:16,083.083 INFO    ] No camera update needed
[2026-08-31 20:06:16,085.085 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:06:16,088.088 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:06:16,093.093 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:06:16,098.098 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:06:18,138.138 INFO    ] ================================================
[2026-08-31 20:06:18,155.155 INFO    ] Launching Daemon at Mon Aug 31 20:06:18 IST 2026
[2026-08-31 20:06:18,167.167 INFO    ] ================================================
[2026-08-31 20:06:18,733.733 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:06:18
[2026-08-31 20:06:19,318.318 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:06:19,571.571 INFO    ] Initializing speech engine...
[2026-08-31 20:06:19,578.578 INFO    ] 2026-08-31 20:06:19
[2026-08-31 20:06:19,875.875 INFO    ] 2026-08-31 20:06:19
[2026-08-31 20:06:19,911.911 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:06:20,111.111 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:06:20,117.117 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:06:20,292.292 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:06:20,300.300 INFO    ] time= 31/08/2026 20:06:20
[2026-08-31 20:06:20,308.308 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:06:20,356.356 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:06:20,483.483 INFO    ] No existing commands found in stream
[2026-08-31 20:06:25,513.513 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:06:25,516.516 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-08-31 20:06:26,141.141 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 20:06:26,144.144 INFO    ] Checking for system updates...
[2026-08-31 20:06:26,185.185 INFO    ] 200
[2026-08-31 20:06:26,188.188 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:06:26,243.243 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:06:26,245.245 INFO    ] No update needed
[2026-08-31 20:06:26,248.248 INFO    ] Checking for camera pi updates...
[2026-08-31 20:06:26,283.283 INFO    ] 200
[2026-08-31 20:06:26,285.285 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:06:26,326.326 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:06:26,402.402 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:06:26,405.405 INFO    ] No camera update needed
[2026-08-31 20:06:26,408.408 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:06:26,411.411 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:06:26,417.417 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:06:26,423.423 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:06:28,464.464 INFO    ] ================================================
[2026-08-31 20:06:28,480.480 INFO    ] Launching Daemon at Mon Aug 31 20:06:28 IST 2026
[2026-08-31 20:06:28,490.490 INFO    ] ================================================
[2026-08-31 20:06:29,141.141 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:06:29
[2026-08-31 20:06:29,813.813 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:06:30,113.113 INFO    ] Initializing speech engine...
[2026-08-31 20:06:30,122.122 INFO    ] 2026-08-31 20:06:30
[2026-08-31 20:06:30,412.412 INFO    ] 2026-08-31 20:06:30
[2026-08-31 20:06:30,452.452 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:06:30,736.736 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:06:30,741.741 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:06:30,936.936 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:06:30,943.943 INFO    ] time= 31/08/2026 20:06:30
[2026-08-31 20:06:30,961.961 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:06:30,984.984 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:06:31,093.093 INFO    ] No existing commands found in stream
[2026-08-31 20:06:36,110.110 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:06:36,113.113 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-08-31 20:06:39,653.653 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 20:06:39,656.656 INFO    ] Checking for system updates...
[2026-08-31 20:06:39,693.693 INFO    ] 200
[2026-08-31 20:06:39,696.696 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:06:39,749.749 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:06:39,752.752 INFO    ] No update needed
[2026-08-31 20:06:39,754.754 INFO    ] Checking for camera pi updates...
[2026-08-31 20:06:39,789.789 INFO    ] 200
[2026-08-31 20:06:39,792.792 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:06:39,833.833 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:06:39,928.928 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:06:39,931.931 INFO    ] No camera update needed
[2026-08-31 20:06:39,934.934 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:06:39,936.936 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:06:39,943.943 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:06:39,949.949 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:06:41,990.990 INFO    ] ================================================
[2026-08-31 20:06:42,005.005 INFO    ] Launching Daemon at Mon Aug 31 20:06:42 IST 2026
[2026-08-31 20:06:42,016.016 INFO    ] ================================================
[2026-08-31 20:06:42,671.671 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:06:42
[2026-08-31 20:06:43,254.254 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:06:43,520.520 INFO    ] Initializing speech engine...
[2026-08-31 20:06:43,530.530 INFO    ] 2026-08-31 20:06:43
[2026-08-31 20:06:43,775.775 INFO    ] 2026-08-31 20:06:43
[2026-08-31 20:06:43,810.810 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:06:44,060.060 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:06:44,069.069 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:06:44,287.287 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:06:44,329.329 INFO    ] time= 31/08/2026 20:06:44
[2026-08-31 20:06:44,334.334 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:06:44,355.355 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:06:44,482.482 INFO    ] No existing commands found in stream
[2026-08-31 20:06:49,494.494 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:06:49,497.497 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-08-31 20:06:51,859.859 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 20:06:51,862.862 INFO    ] Checking for system updates...
[2026-08-31 20:06:51,897.897 INFO    ] 200
[2026-08-31 20:06:51,900.900 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:06:51,953.953 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:06:51,955.955 INFO    ] No update needed
[2026-08-31 20:06:51,957.957 INFO    ] Checking for camera pi updates...
[2026-08-31 20:06:51,991.991 INFO    ] 200
[2026-08-31 20:06:51,994.994 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:06:52,033.033 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:06:52,124.124 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:06:52,127.127 INFO    ] No camera update needed
[2026-08-31 20:06:52,129.129 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:06:52,131.131 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:06:52,137.137 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:06:52,142.142 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:06:54,182.182 INFO    ] ================================================
[2026-08-31 20:06:54,198.198 INFO    ] Launching Daemon at Mon Aug 31 20:06:54 IST 2026
[2026-08-31 20:06:54,208.208 INFO    ] ================================================
[2026-08-31 20:06:54,840.840 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:06:54
[2026-08-31 20:06:55,427.427 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:06:55,675.675 INFO    ] Initializing speech engine...
[2026-08-31 20:06:55,689.689 INFO    ] 2026-08-31 20:06:55
[2026-08-31 20:06:55,961.961 INFO    ] 2026-08-31 20:06:55
[2026-08-31 20:06:55,997.997 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:06:56,222.222 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:06:56,245.245 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:06:56,387.387 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:06:56,429.429 INFO    ] time= 31/08/2026 20:06:56
[2026-08-31 20:06:56,435.435 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:06:56,500.500 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:06:56,583.583 INFO    ] No existing commands found in stream
[2026-08-31 20:07:01,594.594 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:07:01,597.597 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-08-31 20:07:05,806.806 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 20:07:05,809.809 INFO    ] Checking for system updates...
[2026-08-31 20:07:05,845.845 INFO    ] 200
[2026-08-31 20:07:05,848.848 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:07:05,903.903 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:07:05,906.906 INFO    ] No update needed
[2026-08-31 20:07:05,909.909 INFO    ] Checking for camera pi updates...
[2026-08-31 20:07:05,948.948 INFO    ] 200
[2026-08-31 20:07:05,951.951 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:07:05,992.992 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:07:06,082.082 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:07:06,085.085 INFO    ] No camera update needed
[2026-08-31 20:07:06,088.088 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:07:06,091.091 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:07:06,097.097 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:07:06,102.102 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:07:08,143.143 INFO    ] ================================================
[2026-08-31 20:07:08,159.159 INFO    ] Launching Daemon at Mon Aug 31 20:07:08 IST 2026
[2026-08-31 20:07:08,170.170 INFO    ] ================================================
[2026-08-31 20:07:08,822.822 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:07:08
[2026-08-31 20:07:09,447.447 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:07:09,713.713 INFO    ] Initializing speech engine...
[2026-08-31 20:07:09,723.723 INFO    ] 2026-08-31 20:07:09
[2026-08-31 20:07:09,974.974 INFO    ] 2026-08-31 20:07:09
[2026-08-31 20:07:10,009.009 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:07:10,209.209 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:07:10,265.265 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:07:10,414.414 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:07:10,469.469 INFO    ] time= 31/08/2026 20:07:10
[2026-08-31 20:07:10,524.524 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:07:10,551.551 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:07:10,705.705 INFO    ] No existing commands found in stream
[2026-08-31 20:07:15,731.731 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:07:15,734.734 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-08-31 20:07:16,780.780 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 20:07:16,783.783 INFO    ] Checking for system updates...
[2026-08-31 20:07:16,818.818 INFO    ] 200
[2026-08-31 20:07:16,821.821 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:07:16,878.878 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:07:16,880.880 INFO    ] No update needed
[2026-08-31 20:07:16,882.882 INFO    ] Checking for camera pi updates...
[2026-08-31 20:07:16,915.915 INFO    ] 200
[2026-08-31 20:07:16,918.918 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:07:16,959.959 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:07:17,027.027 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:07:17,029.029 INFO    ] No camera update needed
[2026-08-31 20:07:17,031.031 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:07:17,034.034 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:07:17,039.039 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:07:17,044.044 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:07:19,085.085 INFO    ] ================================================
[2026-08-31 20:07:19,101.101 INFO    ] Launching Daemon at Mon Aug 31 20:07:19 IST 2026
[2026-08-31 20:07:19,113.113 INFO    ] ================================================
[2026-08-31 20:07:19,695.695 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:07:19
[2026-08-31 20:07:20,316.316 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:07:20,617.617 INFO    ] Initializing speech engine...
[2026-08-31 20:07:20,623.623 INFO    ] 2026-08-31 20:07:20
[2026-08-31 20:07:20,899.899 INFO    ] 2026-08-31 20:07:20
[2026-08-31 20:07:20,959.959 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:07:21,246.246 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:07:21,256.256 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:07:21,447.447 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:07:21,469.469 INFO    ] time= 31/08/2026 20:07:21
[2026-08-31 20:07:21,494.494 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:07:21,502.502 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:07:21,606.606 INFO    ] No existing commands found in stream
[2026-08-31 20:07:26,620.620 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:07:26,623.623 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-08-31 20:07:30,862.862 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 20:07:30,865.865 INFO    ] Checking for system updates...
[2026-08-31 20:07:30,905.905 INFO    ] 200
[2026-08-31 20:07:30,908.908 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:07:30,964.964 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:07:30,967.967 INFO    ] No update needed
[2026-08-31 20:07:30,970.970 INFO    ] Checking for camera pi updates...
[2026-08-31 20:07:31,004.004 INFO    ] 200
[2026-08-31 20:07:31,006.006 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:07:31,048.048 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:07:31,122.122 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:07:31,125.125 INFO    ] No camera update needed
[2026-08-31 20:07:31,127.127 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:07:31,129.129 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:07:31,135.135 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:07:31,140.140 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:07:33,182.182 INFO    ] ================================================
[2026-08-31 20:07:33,196.196 INFO    ] Launching Daemon at Mon Aug 31 20:07:33 IST 2026
[2026-08-31 20:07:33,207.207 INFO    ] ================================================
[2026-08-31 20:07:33,780.780 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:07:33
[2026-08-31 20:07:34,377.377 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:07:34,656.656 INFO    ] Initializing speech engine...
[2026-08-31 20:07:34,663.663 INFO    ] 2026-08-31 20:07:34
[2026-08-31 20:07:34,935.935 INFO    ] 2026-08-31 20:07:34
[2026-08-31 20:07:34,976.976 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:07:35,201.201 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:07:35,206.206 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:07:35,456.456 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:07:35,463.463 INFO    ] time= 31/08/2026 20:07:35
[2026-08-31 20:07:35,480.480 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:07:35,509.509 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:07:35,639.639 INFO    ] No existing commands found in stream
[2026-08-31 20:07:40,665.665 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:07:40,668.668 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-08-31 20:07:44,490.490 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 20:07:44,493.493 INFO    ] Checking for system updates...
[2026-08-31 20:07:44,533.533 INFO    ] 200
[2026-08-31 20:07:44,536.536 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:07:44,595.595 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:07:44,597.597 INFO    ] No update needed
[2026-08-31 20:07:44,600.600 INFO    ] Checking for camera pi updates...
[2026-08-31 20:07:44,634.634 INFO    ] 200
[2026-08-31 20:07:44,637.637 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:07:44,678.678 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:07:44,773.773 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:07:44,775.775 INFO    ] No camera update needed
[2026-08-31 20:07:44,778.778 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:07:44,780.780 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:07:44,786.786 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:07:44,791.791 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:07:46,832.832 INFO    ] ================================================
[2026-08-31 20:07:46,847.847 INFO    ] Launching Daemon at Mon Aug 31 20:07:46 IST 2026
[2026-08-31 20:07:46,857.857 INFO    ] ================================================
[2026-08-31 20:07:47,507.507 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:07:47
[2026-08-31 20:07:48,171.171 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:07:48,473.473 INFO    ] Initializing speech engine...
[2026-08-31 20:07:48,481.481 INFO    ] 2026-08-31 20:07:48
[2026-08-31 20:07:48,752.752 INFO    ] 2026-08-31 20:07:48
[2026-08-31 20:07:48,788.788 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:07:48,972.972 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:07:48,985.985 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:07:49,147.147 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:07:49,155.155 INFO    ] time= 31/08/2026 20:07:49
[2026-08-31 20:07:49,163.163 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:07:49,206.206 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:07:49,343.343 INFO    ] No existing commands found in stream
[2026-08-31 20:07:54,363.363 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:07:54,365.365 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-08-31 20:07:58,606.606 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 20:07:58,608.608 INFO    ] Checking for system updates...
[2026-08-31 20:07:58,644.644 INFO    ] 200
[2026-08-31 20:07:58,647.647 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:07:58,706.706 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:07:58,708.708 INFO    ] No update needed
[2026-08-31 20:07:58,711.711 INFO    ] Checking for camera pi updates...
[2026-08-31 20:07:58,745.745 INFO    ] 200
[2026-08-31 20:07:58,748.748 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:07:58,792.792 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:07:58,876.876 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:07:58,878.878 INFO    ] No camera update needed
[2026-08-31 20:07:58,881.881 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:07:58,883.883 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:07:58,888.888 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:07:58,893.893 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:08:00,933.933 INFO    ] ================================================
[2026-08-31 20:08:00,949.949 INFO    ] Launching Daemon at Mon Aug 31 20:08:00 IST 2026
[2026-08-31 20:08:00,960.960 INFO    ] ================================================
[2026-08-31 20:08:01,589.589 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:08:01
[2026-08-31 20:08:02,415.415 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:08:02,829.829 INFO    ] Initializing speech engine...
[2026-08-31 20:08:02,834.834 INFO    ] 2026-08-31 20:08:02
[2026-08-31 20:08:03,229.229 INFO    ] 2026-08-31 20:08:03
[2026-08-31 20:08:03,291.291 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:08:03,513.513 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:08:03,522.522 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:08:03,739.739 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:08:03,747.747 INFO    ] time= 31/08/2026 20:08:03
[2026-08-31 20:08:03,766.766 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:08:03,788.788 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:08:03,909.909 INFO    ] No existing commands found in stream
[2026-08-31 20:08:08,930.930 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:08:08,932.932 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-08-31 20:08:11,167.167 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 20:08:11,169.169 INFO    ] Checking for system updates...
[2026-08-31 20:08:11,205.205 INFO    ] 200
[2026-08-31 20:08:11,208.208 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:08:11,267.267 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:08:11,269.269 INFO    ] No update needed
[2026-08-31 20:08:11,272.272 INFO    ] Checking for camera pi updates...
[2026-08-31 20:08:11,305.305 INFO    ] 200
[2026-08-31 20:08:11,308.308 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:08:11,347.347 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:08:11,548.548 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:08:11,551.551 INFO    ] No camera update needed
[2026-08-31 20:08:11,553.553 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:08:11,555.555 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:08:11,561.561 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:08:11,566.566 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:08:13,605.605 INFO    ] ================================================
[2026-08-31 20:08:13,620.620 INFO    ] Launching Daemon at Mon Aug 31 20:08:13 IST 2026
[2026-08-31 20:08:13,631.631 INFO    ] ================================================
[2026-08-31 20:08:14,284.284 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:08:14
[2026-08-31 20:08:14,958.958 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:08:15,271.271 INFO    ] Initializing speech engine...
[2026-08-31 20:08:15,282.282 INFO    ] 2026-08-31 20:08:15
[2026-08-31 20:08:15,555.555 INFO    ] 2026-08-31 20:08:15
[2026-08-31 20:08:15,608.608 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:08:15,845.845 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:08:15,851.851 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:08:16,074.074 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:08:16,114.114 INFO    ] time= 31/08/2026 20:08:16
[2026-08-31 20:08:16,130.130 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:08:16,140.140 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:08:16,282.282 INFO    ] No existing commands found in stream
[2026-08-31 20:08:21,315.315 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:08:21,318.318 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-08-31 20:08:23,830.830 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 20:08:23,833.833 INFO    ] Checking for system updates...
[2026-08-31 20:08:23,870.870 INFO    ] 200
[2026-08-31 20:08:23,873.873 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:08:23,926.926 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:08:23,930.930 INFO    ] No update needed
[2026-08-31 20:08:23,932.932 INFO    ] Checking for camera pi updates...
[2026-08-31 20:08:23,967.967 INFO    ] 200
[2026-08-31 20:08:23,970.970 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:08:24,017.017 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:08:24,098.098 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:08:24,100.100 INFO    ] No camera update needed
[2026-08-31 20:08:24,103.103 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:08:24,105.105 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:08:24,110.110 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:08:24,115.115 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:08:26,154.154 INFO    ] ================================================
[2026-08-31 20:08:26,170.170 INFO    ] Launching Daemon at Mon Aug 31 20:08:26 IST 2026
[2026-08-31 20:08:26,181.181 INFO    ] ================================================
[2026-08-31 20:08:26,748.748 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:08:26
[2026-08-31 20:08:27,335.335 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:08:27,615.615 INFO    ] Initializing speech engine...
[2026-08-31 20:08:27,624.624 INFO    ] 2026-08-31 20:08:27
[2026-08-31 20:08:27,881.881 INFO    ] 2026-08-31 20:08:27
[2026-08-31 20:08:27,931.931 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:08:28,131.131 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:08:28,144.144 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:08:28,292.292 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:08:28,297.297 INFO    ] time= 31/08/2026 20:08:28
[2026-08-31 20:08:28,306.306 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:08:28,368.368 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:08:28,506.506 INFO    ] No existing commands found in stream
[2026-08-31 20:08:33,519.519 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:08:33,522.522 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-08-31 20:08:36,030.030 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 20:08:36,033.033 INFO    ] Checking for system updates...
[2026-08-31 20:08:36,075.075 INFO    ] 200
[2026-08-31 20:08:36,078.078 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:08:36,145.145 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:08:36,148.148 INFO    ] No update needed
[2026-08-31 20:08:36,151.151 INFO    ] Checking for camera pi updates...
[2026-08-31 20:08:36,190.190 INFO    ] 200
[2026-08-31 20:08:36,193.193 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:08:36,235.235 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:08:36,339.339 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:08:36,342.342 INFO    ] No camera update needed
[2026-08-31 20:08:36,345.345 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:08:36,348.348 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:08:36,354.354 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:08:36,360.360 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:08:38,403.403 INFO    ] ================================================
[2026-08-31 20:08:38,418.418 INFO    ] Launching Daemon at Mon Aug 31 20:08:38 IST 2026
[2026-08-31 20:08:38,428.428 INFO    ] ================================================
[2026-08-31 20:08:38,992.992 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:08:38
[2026-08-31 20:08:39,574.574 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:08:39,843.843 INFO    ] Initializing speech engine...
[2026-08-31 20:08:39,853.853 INFO    ] 2026-08-31 20:08:39
[2026-08-31 20:08:40,098.098 INFO    ] 2026-08-31 20:08:40
[2026-08-31 20:08:40,133.133 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:08:40,385.385 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:08:40,395.395 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:08:40,534.534 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:08:40,589.589 INFO    ] time= 31/08/2026 20:08:40
[2026-08-31 20:08:40,638.638 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:08:40,662.662 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:08:40,775.775 INFO    ] No existing commands found in stream
[2026-08-31 20:08:45,797.797 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:08:45,800.800 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-08-31 20:08:46,384.384 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 20:08:46,386.386 INFO    ] Checking for system updates...
[2026-08-31 20:08:46,426.426 INFO    ] 200
[2026-08-31 20:08:46,429.429 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:08:46,482.482 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:08:46,484.484 INFO    ] No update needed
[2026-08-31 20:08:46,487.487 INFO    ] Checking for camera pi updates...
[2026-08-31 20:08:46,520.520 INFO    ] 200
[2026-08-31 20:08:46,522.522 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:08:46,568.568 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:08:46,653.653 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:08:46,656.656 INFO    ] No camera update needed
[2026-08-31 20:08:46,658.658 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:08:46,661.661 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:08:46,666.666 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:08:46,671.671 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:08:48,712.712 INFO    ] ================================================
[2026-08-31 20:08:48,727.727 INFO    ] Launching Daemon at Mon Aug 31 20:08:48 IST 2026
[2026-08-31 20:08:48,738.738 INFO    ] ================================================
[2026-08-31 20:08:49,422.422 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:08:49
[2026-08-31 20:08:50,071.071 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:08:50,344.344 INFO    ] Initializing speech engine...
[2026-08-31 20:08:50,353.353 INFO    ] 2026-08-31 20:08:50
[2026-08-31 20:08:50,601.601 INFO    ] 2026-08-31 20:08:50
[2026-08-31 20:08:50,636.636 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:08:50,815.815 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:08:50,830.830 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:08:51,018.018 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:08:51,033.033 INFO    ] time= 31/08/2026 20:08:51
[2026-08-31 20:08:51,097.097 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:08:51,146.146 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:08:51,302.302 INFO    ] No existing commands found in stream
[2026-08-31 20:08:56,318.318 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:08:56,321.321 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-08-31 20:09:00,095.095 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 20:09:00,098.098 INFO    ] Checking for system updates...
[2026-08-31 20:09:00,133.133 INFO    ] 200
[2026-08-31 20:09:00,135.135 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:09:00,189.189 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:09:00,191.191 INFO    ] No update needed
[2026-08-31 20:09:00,194.194 INFO    ] Checking for camera pi updates...
[2026-08-31 20:09:00,228.228 INFO    ] 200
[2026-08-31 20:09:00,230.230 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:09:00,276.276 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:09:00,356.356 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:09:00,359.359 INFO    ] No camera update needed
[2026-08-31 20:09:00,361.361 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:09:00,364.364 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:09:00,369.369 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:09:00,374.374 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:09:02,420.420 INFO    ] ================================================
[2026-08-31 20:09:02,448.448 INFO    ] Launching Daemon at Mon Aug 31 20:09:02 IST 2026
[2026-08-31 20:09:02,459.459 INFO    ] ================================================
[2026-08-31 20:09:03,088.088 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:09:03
[2026-08-31 20:09:03,716.716 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:09:03,982.982 INFO    ] Initializing speech engine...
[2026-08-31 20:09:03,991.991 INFO    ] 2026-08-31 20:09:03
[2026-08-31 20:09:04,235.235 INFO    ] 2026-08-31 20:09:04
[2026-08-31 20:09:04,270.270 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:09:04,520.520 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:09:04,529.529 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:09:04,744.744 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:09:04,785.785 INFO    ] time= 31/08/2026 20:09:04
[2026-08-31 20:09:04,791.791 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:09:04,808.808 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:09:04,937.937 INFO    ] No existing commands found in stream
[2026-08-31 20:09:09,951.951 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:09:09,954.954 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-08-31 20:09:13,856.856 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 20:09:13,858.858 INFO    ] Checking for system updates...
[2026-08-31 20:09:13,900.900 INFO    ] 200
[2026-08-31 20:09:13,903.903 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:09:13,964.964 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:09:13,967.967 INFO    ] No update needed
[2026-08-31 20:09:13,970.970 INFO    ] Checking for camera pi updates...
[2026-08-31 20:09:14,008.008 INFO    ] 200
[2026-08-31 20:09:14,011.011 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:09:14,053.053 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:09:14,140.140 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:09:14,143.143 INFO    ] No camera update needed
[2026-08-31 20:09:14,145.145 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:09:14,148.148 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:09:14,154.154 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:09:14,160.160 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:09:16,202.202 INFO    ] ================================================
[2026-08-31 20:09:16,217.217 INFO    ] Launching Daemon at Mon Aug 31 20:09:16 IST 2026
[2026-08-31 20:09:16,228.228 INFO    ] ================================================
[2026-08-31 20:09:16,821.821 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:09:16
[2026-08-31 20:09:17,414.414 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:09:17,682.682 INFO    ] Initializing speech engine...
[2026-08-31 20:09:17,691.691 INFO    ] 2026-08-31 20:09:17
[2026-08-31 20:09:17,943.943 INFO    ] 2026-08-31 20:09:17
[2026-08-31 20:09:18,001.001 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:09:18,223.223 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:09:18,232.232 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:09:18,366.366 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:09:18,420.420 INFO    ] time= 31/08/2026 20:09:18
[2026-08-31 20:09:18,469.469 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:09:18,497.497 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:09:18,625.625 INFO    ] No existing commands found in stream
[2026-08-31 20:09:23,650.650 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:09:23,653.653 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-08-31 20:09:26,185.185 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 20:09:26,187.187 INFO    ] Checking for system updates...
[2026-08-31 20:09:26,225.225 INFO    ] 200
[2026-08-31 20:09:26,229.229 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:09:26,282.282 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:09:26,285.285 INFO    ] No update needed
[2026-08-31 20:09:26,288.288 INFO    ] Checking for camera pi updates...
[2026-08-31 20:09:26,327.327 INFO    ] 200
[2026-08-31 20:09:26,330.330 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:09:26,376.376 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:09:26,480.480 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:09:26,483.483 INFO    ] No camera update needed
[2026-08-31 20:09:26,486.486 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:09:26,489.489 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:09:26,495.495 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:09:26,501.501 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:09:28,543.543 INFO    ] ================================================
[2026-08-31 20:09:28,558.558 INFO    ] Launching Daemon at Mon Aug 31 20:09:28 IST 2026
[2026-08-31 20:09:28,569.569 INFO    ] ================================================
[2026-08-31 20:09:29,135.135 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:09:29
[2026-08-31 20:09:29,719.719 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:09:29,987.987 INFO    ] Initializing speech engine...
[2026-08-31 20:09:29,996.996 INFO    ] 2026-08-31 20:09:29
[2026-08-31 20:09:30,243.243 INFO    ] 2026-08-31 20:09:30
[2026-08-31 20:09:30,279.279 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:09:30,449.449 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:09:30,462.462 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:09:30,611.611 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:09:30,656.656 INFO    ] time= 31/08/2026 20:09:30
[2026-08-31 20:09:30,679.679 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:09:30,723.723 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:09:30,809.809 INFO    ] No existing commands found in stream
[2026-08-31 20:09:35,830.830 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:09:35,833.833 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-08-31 20:09:37,609.609 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 20:09:37,612.612 INFO    ] Checking for system updates...
[2026-08-31 20:09:37,651.651 INFO    ] 200
[2026-08-31 20:09:37,654.654 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:09:37,709.709 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:09:37,711.711 INFO    ] No update needed
[2026-08-31 20:09:37,714.714 INFO    ] Checking for camera pi updates...
[2026-08-31 20:09:37,753.753 INFO    ] 200
[2026-08-31 20:09:37,756.756 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:09:37,808.808 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:09:37,916.916 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:09:37,919.919 INFO    ] No camera update needed
[2026-08-31 20:09:37,922.922 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:09:37,924.924 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:09:37,931.931 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:09:37,937.937 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:09:39,980.980 INFO    ] ================================================
[2026-08-31 20:09:40,995.995 INFO    ] Launching Daemon at Mon Aug 31 20:09:39 IST 2026
[2026-08-31 20:09:40,006.006 INFO    ] ================================================
[2026-08-31 20:09:40,673.673 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:09:40
[2026-08-31 20:09:41,356.356 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:09:41,663.663 INFO    ] Initializing speech engine...
[2026-08-31 20:09:41,677.677 INFO    ] 2026-08-31 20:09:41
[2026-08-31 20:09:41,964.964 INFO    ] 2026-08-31 20:09:41
[2026-08-31 20:09:42,074.074 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:09:42,287.287 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:09:42,296.296 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:09:42,463.463 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:09:42,491.491 INFO    ] time= 31/08/2026 20:09:42
[2026-08-31 20:09:42,509.509 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:09:42,518.518 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:09:42,660.660 INFO    ] No existing commands found in stream
[2026-08-31 20:09:47,698.698 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:09:47,701.701 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-08-31 20:09:52,131.131 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 20:09:52,134.134 INFO    ] Checking for system updates...
[2026-08-31 20:09:52,171.171 INFO    ] 200
[2026-08-31 20:09:52,174.174 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:09:52,228.228 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:09:52,231.231 INFO    ] No update needed
[2026-08-31 20:09:52,234.234 INFO    ] Checking for camera pi updates...
[2026-08-31 20:09:52,269.269 INFO    ] 200
[2026-08-31 20:09:52,272.272 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:09:52,314.314 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:09:52,404.404 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:09:52,406.406 INFO    ] No camera update needed
[2026-08-31 20:09:52,409.409 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:09:52,412.412 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:09:52,418.418 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:09:52,424.424 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:09:54,467.467 INFO    ] ================================================
[2026-08-31 20:09:54,482.482 INFO    ] Launching Daemon at Mon Aug 31 20:09:54 IST 2026
[2026-08-31 20:09:54,493.493 INFO    ] ================================================
[2026-08-31 20:09:55,166.166 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:09:55
[2026-08-31 20:09:55,845.845 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:09:56,155.155 INFO    ] Initializing speech engine...
[2026-08-31 20:09:56,166.166 INFO    ] 2026-08-31 20:09:56
[2026-08-31 20:09:56,477.477 INFO    ] 2026-08-31 20:09:56
[2026-08-31 20:09:56,562.562 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:09:56,713.713 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:09:56,722.722 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:09:56,940.940 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:09:56,982.982 INFO    ] time= 31/08/2026 20:09:56
[2026-08-31 20:09:56,988.988 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:09:57,009.009 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:09:57,134.134 INFO    ] No existing commands found in stream
[2026-08-31 20:10:02,151.151 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:10:02,157.157 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-08-31 20:10:08,550.550 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 20:10:08,553.553 INFO    ] Checking for system updates...
[2026-08-31 20:10:08,590.590 INFO    ] 200
[2026-08-31 20:10:08,593.593 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:10:08,645.645 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:10:08,648.648 INFO    ] No update needed
[2026-08-31 20:10:08,651.651 INFO    ] Checking for camera pi updates...
[2026-08-31 20:10:08,688.688 INFO    ] 200
[2026-08-31 20:10:08,690.690 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:10:08,731.731 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:10:08,824.824 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:10:08,826.826 INFO    ] No camera update needed
[2026-08-31 20:10:08,828.828 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:10:08,831.831 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:10:08,836.836 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:10:08,841.841 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:10:10,881.881 INFO    ] ================================================
[2026-08-31 20:10:10,896.896 INFO    ] Launching Daemon at Mon Aug 31 20:10:10 IST 2026
[2026-08-31 20:10:10,906.906 INFO    ] ================================================
[2026-08-31 20:10:11,481.481 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:10:11
[2026-08-31 20:10:12,078.078 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:10:12,352.352 INFO    ] Initializing speech engine...
[2026-08-31 20:10:12,362.362 INFO    ] 2026-08-31 20:10:12
[2026-08-31 20:10:12,610.610 INFO    ] 2026-08-31 20:10:12
[2026-08-31 20:10:12,645.645 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:10:12,901.901 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:10:12,906.906 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:10:13,081.081 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:10:13,141.141 INFO    ] time= 31/08/2026 20:10:13
[2026-08-31 20:10:13,171.171 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:10:13,186.186 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:10:13,322.322 INFO    ] No existing commands found in stream
[2026-08-31 20:10:18,350.350 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:10:18,353.353 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-08-31 20:10:20,610.610 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 20:10:20,612.612 INFO    ] Checking for system updates...
[2026-08-31 20:10:20,648.648 INFO    ] 200
[2026-08-31 20:10:20,650.650 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:10:20,706.706 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:10:20,708.708 INFO    ] No update needed
[2026-08-31 20:10:20,710.710 INFO    ] Checking for camera pi updates...
[2026-08-31 20:10:20,744.744 INFO    ] 200
[2026-08-31 20:10:20,746.746 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:10:20,788.788 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:10:20,957.957 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:10:20,960.960 INFO    ] No camera update needed
[2026-08-31 20:10:20,962.962 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:10:20,964.964 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:10:20,970.970 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:10:20,974.974 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:10:23,016.016 INFO    ] ================================================
[2026-08-31 20:10:23,031.031 INFO    ] Launching Daemon at Mon Aug 31 20:10:23 IST 2026
[2026-08-31 20:10:23,042.042 INFO    ] ================================================
[2026-08-31 20:10:23,611.611 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:10:23
[2026-08-31 20:10:24,194.194 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:10:24,466.466 INFO    ] Initializing speech engine...
[2026-08-31 20:10:24,475.475 INFO    ] 2026-08-31 20:10:24
[2026-08-31 20:10:24,724.724 INFO    ] 2026-08-31 20:10:24
[2026-08-31 20:10:24,759.759 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:10:25,021.021 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:10:25,027.027 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:10:25,197.197 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:10:25,264.264 INFO    ] time= 31/08/2026 20:10:25
[2026-08-31 20:10:25,293.293 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:10:25,311.311 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:10:25,431.431 INFO    ] No existing commands found in stream
[2026-08-31 20:10:30,458.458 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:10:30,461.461 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-08-31 20:10:32,152.152 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 20:10:32,155.155 INFO    ] Checking for system updates...
[2026-08-31 20:10:32,194.194 INFO    ] 200
[2026-08-31 20:10:32,197.197 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:10:32,253.253 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:10:32,256.256 INFO    ] No update needed
[2026-08-31 20:10:32,259.259 INFO    ] Checking for camera pi updates...
[2026-08-31 20:10:32,299.299 INFO    ] 200
[2026-08-31 20:10:32,301.301 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:10:32,344.344 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:10:32,442.442 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:10:32,445.445 INFO    ] No camera update needed
[2026-08-31 20:10:32,448.448 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:10:32,451.451 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:10:32,458.458 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:10:32,464.464 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:10:34,506.506 INFO    ] ================================================
[2026-08-31 20:10:34,521.521 INFO    ] Launching Daemon at Mon Aug 31 20:10:34 IST 2026
[2026-08-31 20:10:34,531.531 INFO    ] ================================================
[2026-08-31 20:10:35,100.100 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:10:35
[2026-08-31 20:10:35,701.701 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:10:35,974.974 INFO    ] Initializing speech engine...
[2026-08-31 20:10:35,985.985 INFO    ] 2026-08-31 20:10:35
[2026-08-31 20:10:36,254.254 INFO    ] 2026-08-31 20:10:36
[2026-08-31 20:10:36,308.308 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:10:36,533.533 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:10:36,539.539 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:10:36,672.672 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:10:36,732.732 INFO    ] time= 31/08/2026 20:10:36
[2026-08-31 20:10:36,786.786 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:10:36,806.806 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:10:36,931.931 INFO    ] No existing commands found in stream
[2026-08-31 20:10:41,959.959 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:10:41,962.962 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-08-31 20:10:44,500.500 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 20:10:44,503.503 INFO    ] Checking for system updates...
[2026-08-31 20:10:44,543.543 INFO    ] 200
[2026-08-31 20:10:44,545.545 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:10:44,598.598 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:10:44,600.600 INFO    ] No update needed
[2026-08-31 20:10:44,603.603 INFO    ] Checking for camera pi updates...
[2026-08-31 20:10:44,636.636 INFO    ] 200
[2026-08-31 20:10:44,639.639 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:10:44,684.684 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:10:44,764.764 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:10:44,767.767 INFO    ] No camera update needed
[2026-08-31 20:10:44,769.769 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:10:44,771.771 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:10:44,777.777 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:10:44,782.782 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:10:46,821.821 INFO    ] ================================================
[2026-08-31 20:10:46,837.837 INFO    ] Launching Daemon at Mon Aug 31 20:10:46 IST 2026
[2026-08-31 20:10:46,848.848 INFO    ] ================================================
[2026-08-31 20:10:47,418.418 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:10:47
[2026-08-31 20:10:48,005.005 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:10:48,279.279 INFO    ] Initializing speech engine...
[2026-08-31 20:10:48,284.284 INFO    ] 2026-08-31 20:10:48
[2026-08-31 20:10:48,532.532 INFO    ] 2026-08-31 20:10:48
[2026-08-31 20:10:48,566.566 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:10:48,845.845 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:10:48,850.850 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:10:49,065.065 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:10:49,083.083 INFO    ] time= 31/08/2026 20:10:49
[2026-08-31 20:10:49,089.089 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:10:49,107.107 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:10:49,216.216 INFO    ] No existing commands found in stream
[2026-08-31 20:10:54,242.242 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:10:54,244.244 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-08-31 20:10:56,189.189 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 20:10:56,192.192 INFO    ] Checking for system updates...
[2026-08-31 20:10:56,232.232 INFO    ] 200
[2026-08-31 20:10:56,235.235 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:10:56,293.293 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:10:56,296.296 INFO    ] No update needed
[2026-08-31 20:10:56,299.299 INFO    ] Checking for camera pi updates...
[2026-08-31 20:10:56,333.333 INFO    ] 200
[2026-08-31 20:10:56,336.336 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:10:56,383.383 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:10:56,486.486 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:10:56,489.489 INFO    ] No camera update needed
[2026-08-31 20:10:56,491.491 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:10:56,493.493 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:10:56,499.499 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:10:56,504.504 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:10:58,543.543 INFO    ] ================================================
[2026-08-31 20:10:58,558.558 INFO    ] Launching Daemon at Mon Aug 31 20:10:58 IST 2026
[2026-08-31 20:10:58,569.569 INFO    ] ================================================
[2026-08-31 20:10:59,135.135 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:10:59
[2026-08-31 20:10:59,716.716 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:10:59,987.987 INFO    ] Initializing speech engine...
[2026-08-31 20:10:59,996.996 INFO    ] 2026-08-31 20:10:59
[2026-08-31 20:11:00,260.260 INFO    ] 2026-08-31 20:11:00
[2026-08-31 20:11:00,312.312 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:11:00,495.495 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:11:00,541.541 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:11:00,685.685 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:11:00,740.740 INFO    ] time= 31/08/2026 20:11:00
[2026-08-31 20:11:00,789.789 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:11:00,819.819 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:11:00,918.918 INFO    ] No existing commands found in stream
[2026-08-31 20:11:05,943.943 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:11:05,946.946 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-08-31 20:11:08,898.898 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 20:11:08,901.901 INFO    ] Checking for system updates...
[2026-08-31 20:11:08,940.940 INFO    ] 200
[2026-08-31 20:11:08,942.942 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:11:09,000.000 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:11:09,003.003 INFO    ] No update needed
[2026-08-31 20:11:09,005.005 INFO    ] Checking for camera pi updates...
[2026-08-31 20:11:09,039.039 INFO    ] 200
[2026-08-31 20:11:09,041.041 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:11:09,081.081 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:11:09,158.158 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:11:09,160.160 INFO    ] No camera update needed
[2026-08-31 20:11:09,163.163 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:11:09,165.165 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:11:09,170.170 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:11:09,175.175 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:11:11,218.218 INFO    ] ================================================
[2026-08-31 20:11:11,233.233 INFO    ] Launching Daemon at Mon Aug 31 20:11:11 IST 2026
[2026-08-31 20:11:11,243.243 INFO    ] ================================================
[2026-08-31 20:11:11,808.808 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:11:11
[2026-08-31 20:11:12,391.391 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:11:12,638.638 INFO    ] Initializing speech engine...
[2026-08-31 20:11:12,653.653 INFO    ] 2026-08-31 20:11:12
[2026-08-31 20:11:12,918.918 INFO    ] 2026-08-31 20:11:12
[2026-08-31 20:11:12,954.954 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:11:13,151.151 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:11:13,174.174 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:11:13,355.355 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:11:13,381.381 INFO    ] time= 31/08/2026 20:11:13
[2026-08-31 20:11:13,441.441 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:11:13,488.488 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:11:13,621.621 INFO    ] No existing commands found in stream
[2026-08-31 20:11:18,643.643 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:11:18,646.646 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-08-31 20:11:22,430.430 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 20:11:22,433.433 INFO    ] Checking for system updates...
[2026-08-31 20:11:22,468.468 INFO    ] 200
[2026-08-31 20:11:22,471.471 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:11:22,526.526 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:11:22,529.529 INFO    ] No update needed
[2026-08-31 20:11:22,531.531 INFO    ] Checking for camera pi updates...
[2026-08-31 20:11:22,568.568 INFO    ] 200
[2026-08-31 20:11:22,571.571 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:11:22,612.612 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:11:22,714.714 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:11:22,716.716 INFO    ] No camera update needed
[2026-08-31 20:11:22,719.719 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:11:22,721.721 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:11:22,726.726 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:11:22,731.731 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:11:24,771.771 INFO    ] ================================================
[2026-08-31 20:11:24,786.786 INFO    ] Launching Daemon at Mon Aug 31 20:11:24 IST 2026
[2026-08-31 20:11:24,796.796 INFO    ] ================================================
[2026-08-31 20:11:25,439.439 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:11:25
[2026-08-31 20:11:26,102.102 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:11:26,398.398 INFO    ] Initializing speech engine...
[2026-08-31 20:11:26,410.410 INFO    ] 2026-08-31 20:11:26
[2026-08-31 20:11:26,683.683 INFO    ] 2026-08-31 20:11:26
[2026-08-31 20:11:26,719.719 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:11:26,978.978 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:11:26,988.988 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:11:27,141.141 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:11:27,196.196 INFO    ] time= 31/08/2026 20:11:27
[2026-08-31 20:11:27,256.256 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:11:27,265.265 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:11:27,415.415 INFO    ] No existing commands found in stream
[2026-08-31 20:11:32,439.439 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:11:32,443.443 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-08-31 20:11:34,270.270 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 20:11:34,273.273 INFO    ] Checking for system updates...
[2026-08-31 20:11:34,310.310 INFO    ] 200
[2026-08-31 20:11:34,313.313 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:11:34,367.367 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:11:34,370.370 INFO    ] No update needed
[2026-08-31 20:11:34,374.374 INFO    ] Checking for camera pi updates...
[2026-08-31 20:11:34,411.411 INFO    ] 200
[2026-08-31 20:11:34,414.414 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:11:34,458.458 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:11:34,546.546 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:11:34,549.549 INFO    ] No camera update needed
[2026-08-31 20:11:34,551.551 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:11:34,554.554 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:11:34,559.559 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:11:34,564.564 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:11:36,604.604 INFO    ] ================================================
[2026-08-31 20:11:36,618.618 INFO    ] Launching Daemon at Mon Aug 31 20:11:36 IST 2026
[2026-08-31 20:11:36,629.629 INFO    ] ================================================
[2026-08-31 20:11:37,267.267 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:11:37
[2026-08-31 20:11:37,928.928 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:11:38,227.227 INFO    ] Initializing speech engine...
[2026-08-31 20:11:38,239.239 INFO    ] 2026-08-31 20:11:38
[2026-08-31 20:11:38,523.523 INFO    ] 2026-08-31 20:11:38
[2026-08-31 20:11:38,562.562 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:11:38,811.811 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:11:38,830.830 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:11:39,035.035 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:11:39,053.053 INFO    ] time= 31/08/2026 20:11:39
[2026-08-31 20:11:39,071.071 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:11:39,100.100 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:11:39,257.257 INFO    ] No existing commands found in stream
[2026-08-31 20:11:44,293.293 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:11:44,296.296 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-08-31 20:11:45,987.987 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 20:11:45,990.990 INFO    ] Checking for system updates...
[2026-08-31 20:11:46,026.026 INFO    ] 200
[2026-08-31 20:11:46,029.029 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:11:46,086.086 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:11:46,089.089 INFO    ] No update needed
[2026-08-31 20:11:46,091.091 INFO    ] Checking for camera pi updates...
[2026-08-31 20:11:46,124.124 INFO    ] 200
[2026-08-31 20:11:46,126.126 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:11:46,167.167 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:11:46,259.259 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:11:46,261.261 INFO    ] No camera update needed
[2026-08-31 20:11:46,264.264 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:11:46,266.266 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:11:46,271.271 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:11:46,276.276 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:11:48,315.315 INFO    ] ================================================
[2026-08-31 20:11:48,330.330 INFO    ] Launching Daemon at Mon Aug 31 20:11:48 IST 2026
[2026-08-31 20:11:48,340.340 INFO    ] ================================================
[2026-08-31 20:11:48,904.904 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:11:48
[2026-08-31 20:11:49,485.485 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:11:49,752.752 INFO    ] Initializing speech engine...
[2026-08-31 20:11:49,762.762 INFO    ] 2026-08-31 20:11:49
[2026-08-31 20:11:50,021.021 INFO    ] 2026-08-31 20:11:50
[2026-08-31 20:11:50,075.075 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:11:50,297.297 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:11:50,302.302 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:11:50,506.506 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:11:50,557.557 INFO    ] time= 31/08/2026 20:11:50
[2026-08-31 20:11:50,563.563 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:11:50,587.587 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:11:50,717.717 INFO    ] No existing commands found in stream
[2026-08-31 20:11:55,736.736 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:11:55,740.740 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-08-31 20:11:57,103.103 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 20:11:57,106.106 INFO    ] Checking for system updates...
[2026-08-31 20:11:57,143.143 INFO    ] 200
[2026-08-31 20:11:57,145.145 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:11:57,203.203 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:11:57,205.205 INFO    ] No update needed
[2026-08-31 20:11:57,207.207 INFO    ] Checking for camera pi updates...
[2026-08-31 20:11:57,241.241 INFO    ] 200
[2026-08-31 20:11:57,243.243 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:11:57,284.284 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:11:57,387.387 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:11:57,389.389 INFO    ] No camera update needed
[2026-08-31 20:11:57,391.391 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:11:57,394.394 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:11:57,399.399 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:11:57,404.404 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:11:59,444.444 INFO    ] ================================================
[2026-08-31 20:11:59,459.459 INFO    ] Launching Daemon at Mon Aug 31 20:11:59 IST 2026
[2026-08-31 20:11:59,469.469 INFO    ] ================================================
[2026-08-31 20:12:00,110.110 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:12:00
[2026-08-31 20:12:00,757.757 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:12:01,055.055 INFO    ] Initializing speech engine...
[2026-08-31 20:12:01,068.068 INFO    ] 2026-08-31 20:12:01
[2026-08-31 20:12:01,376.376 INFO    ] 2026-08-31 20:12:01
[2026-08-31 20:12:01,456.456 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:12:01,670.670 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:12:01,678.678 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:12:01,874.874 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:12:01,894.894 INFO    ] time= 31/08/2026 20:12:01
[2026-08-31 20:12:01,922.922 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:12:01,931.931 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:12:02,095.095 INFO    ] No existing commands found in stream
[2026-08-31 20:12:07,109.109 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:12:07,111.111 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-08-31 20:12:11,349.349 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 20:12:11,352.352 INFO    ] Checking for system updates...
[2026-08-31 20:12:11,388.388 INFO    ] 200
[2026-08-31 20:12:11,390.390 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:12:11,448.448 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:12:11,451.451 INFO    ] No update needed
[2026-08-31 20:12:11,453.453 INFO    ] Checking for camera pi updates...
[2026-08-31 20:12:11,489.489 INFO    ] 200
[2026-08-31 20:12:11,492.492 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:12:11,532.532 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:12:11,625.625 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:12:11,628.628 INFO    ] No camera update needed
[2026-08-31 20:12:11,630.630 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:12:11,633.633 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:12:11,638.638 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:12:11,643.643 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:12:13,682.682 INFO    ] ================================================
[2026-08-31 20:12:13,697.697 INFO    ] Launching Daemon at Mon Aug 31 20:12:13 IST 2026
[2026-08-31 20:12:13,708.708 INFO    ] ================================================
[2026-08-31 20:12:14,272.272 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:12:14
[2026-08-31 20:12:14,854.854 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:12:15,127.127 INFO    ] Initializing speech engine...
[2026-08-31 20:12:15,136.136 INFO    ] 2026-08-31 20:12:15
[2026-08-31 20:12:15,385.385 INFO    ] 2026-08-31 20:12:15
[2026-08-31 20:12:15,420.420 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:12:15,676.676 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:12:15,686.686 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:12:15,823.823 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:12:15,864.864 INFO    ] time= 31/08/2026 20:12:15
[2026-08-31 20:12:15,918.918 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:12:15,958.958 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:12:16,088.088 INFO    ] No existing commands found in stream
[2026-08-31 20:12:21,113.113 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:12:21,116.116 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-08-31 20:12:23,830.830 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 20:12:23,833.833 INFO    ] Checking for system updates...
[2026-08-31 20:12:23,876.876 INFO    ] 200
[2026-08-31 20:12:23,880.880 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:12:23,934.934 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:12:23,936.936 INFO    ] No update needed
[2026-08-31 20:12:23,939.939 INFO    ] Checking for camera pi updates...
[2026-08-31 20:12:23,975.975 INFO    ] 200
[2026-08-31 20:12:23,978.978 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:12:24,022.022 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:12:24,176.176 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:12:24,179.179 INFO    ] No camera update needed
[2026-08-31 20:12:24,181.181 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:12:24,183.183 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:12:24,188.188 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:12:24,193.193 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:12:26,234.234 INFO    ] ================================================
[2026-08-31 20:12:26,249.249 INFO    ] Launching Daemon at Mon Aug 31 20:12:26 IST 2026
[2026-08-31 20:12:26,260.260 INFO    ] ================================================
[2026-08-31 20:12:26,825.825 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:12:26
[2026-08-31 20:12:27,408.408 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:12:27,679.679 INFO    ] Initializing speech engine...
[2026-08-31 20:12:27,689.689 INFO    ] 2026-08-31 20:12:27
[2026-08-31 20:12:27,945.945 INFO    ] 2026-08-31 20:12:27
[2026-08-31 20:12:27,982.982 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:12:28,176.176 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:12:28,190.190 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:12:28,337.337 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:12:28,359.359 INFO    ] time= 31/08/2026 20:12:28
[2026-08-31 20:12:28,368.368 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:12:28,375.375 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:12:28,538.538 INFO    ] No existing commands found in stream
[2026-08-31 20:12:33,558.558 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:12:33,561.561 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-08-31 20:12:37,728.728 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 20:12:37,731.731 INFO    ] Checking for system updates...
[2026-08-31 20:12:37,770.770 INFO    ] 200
[2026-08-31 20:12:37,772.772 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:12:37,824.824 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:12:37,826.826 INFO    ] No update needed
[2026-08-31 20:12:37,829.829 INFO    ] Checking for camera pi updates...
[2026-08-31 20:12:37,863.863 INFO    ] 200
[2026-08-31 20:12:37,865.865 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:12:37,910.910 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:12:37,990.990 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:12:37,992.992 INFO    ] No camera update needed
[2026-08-31 20:12:37,994.994 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:12:37,997.997 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:12:38,002.002 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:12:38,007.007 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:12:40,050.050 INFO    ] ================================================
[2026-08-31 20:12:40,065.065 INFO    ] Launching Daemon at Mon Aug 31 20:12:40 IST 2026
[2026-08-31 20:12:40,076.076 INFO    ] ================================================
[2026-08-31 20:12:40,725.725 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:12:40
[2026-08-31 20:12:41,399.399 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:12:41,706.706 INFO    ] Initializing speech engine...
[2026-08-31 20:12:41,712.712 INFO    ] 2026-08-31 20:12:41
[2026-08-31 20:12:41,994.994 INFO    ] 2026-08-31 20:12:41
[2026-08-31 20:12:42,051.051 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:12:42,301.301 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:12:42,328.328 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:12:42,531.531 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:12:42,557.557 INFO    ] time= 31/08/2026 20:12:42
[2026-08-31 20:12:42,573.573 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:12:42,583.583 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:12:42,711.711 INFO    ] No existing commands found in stream
[2026-08-31 20:12:47,721.721 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:12:47,724.724 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-08-31 20:12:51,679.679 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 20:12:51,682.682 INFO    ] Checking for system updates...
[2026-08-31 20:12:51,722.722 INFO    ] 200
[2026-08-31 20:12:51,725.725 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:12:51,786.786 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:12:51,789.789 INFO    ] No update needed
[2026-08-31 20:12:51,792.792 INFO    ] Checking for camera pi updates...
[2026-08-31 20:12:51,827.827 INFO    ] 200
[2026-08-31 20:12:51,830.830 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:12:51,871.871 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:12:51,950.950 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:12:51,953.953 INFO    ] No camera update needed
[2026-08-31 20:12:51,956.956 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:12:51,959.959 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:12:51,965.965 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:12:51,971.971 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:12:54,010.010 INFO    ] ================================================
[2026-08-31 20:12:54,025.025 INFO    ] Launching Daemon at Mon Aug 31 20:12:54 IST 2026
[2026-08-31 20:12:54,036.036 INFO    ] ================================================
[2026-08-31 20:12:54,602.602 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:12:54
[2026-08-31 20:12:55,187.187 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:12:55,441.441 INFO    ] Initializing speech engine...
[2026-08-31 20:12:55,458.458 INFO    ] 2026-08-31 20:12:55
[2026-08-31 20:12:55,738.738 INFO    ] 2026-08-31 20:12:55
[2026-08-31 20:12:55,773.773 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:12:55,979.979 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:12:55,982.982 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:12:56,101.101 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:12:56,108.108 INFO    ] time= 31/08/2026 20:12:56
[2026-08-31 20:12:56,128.128 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:12:56,153.153 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:12:56,311.311 INFO    ] No existing commands found in stream
[2026-08-31 20:13:01,342.342 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:13:01,344.344 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-08-31 20:13:05,576.576 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 20:13:05,578.578 INFO    ] Checking for system updates...
[2026-08-31 20:13:05,618.618 INFO    ] 200
[2026-08-31 20:13:05,620.620 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:13:05,673.673 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:13:05,675.675 INFO    ] No update needed
[2026-08-31 20:13:05,678.678 INFO    ] Checking for camera pi updates...
[2026-08-31 20:13:05,715.715 INFO    ] 200
[2026-08-31 20:13:05,718.718 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:13:05,762.762 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:13:05,841.841 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:13:05,843.843 INFO    ] No camera update needed
[2026-08-31 20:13:05,845.845 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:13:05,848.848 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:13:05,853.853 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:13:05,858.858 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:13:07,901.901 INFO    ] ================================================
[2026-08-31 20:13:07,917.917 INFO    ] Launching Daemon at Mon Aug 31 20:13:07 IST 2026
[2026-08-31 20:13:07,928.928 INFO    ] ================================================
[2026-08-31 20:13:08,497.497 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:13:08
[2026-08-31 20:13:09,082.082 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:13:09,330.330 INFO    ] Initializing speech engine...
[2026-08-31 20:13:09,354.354 INFO    ] 2026-08-31 20:13:09
[2026-08-31 20:13:09,609.609 INFO    ] 2026-08-31 20:13:09
[2026-08-31 20:13:09,645.645 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:13:09,878.878 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:13:09,905.905 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:13:10,064.064 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:13:10,114.114 INFO    ] time= 31/08/2026 20:13:10
[2026-08-31 20:13:10,168.168 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:13:10,184.184 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:13:10,313.313 INFO    ] No existing commands found in stream
[2026-08-31 20:13:15,338.338 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:13:15,341.341 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-08-31 20:13:19,637.637 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 20:13:19,640.640 INFO    ] Checking for system updates...
[2026-08-31 20:13:19,676.676 INFO    ] 200
[2026-08-31 20:13:19,679.679 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:13:19,737.737 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:13:19,739.739 INFO    ] No update needed
[2026-08-31 20:13:19,742.742 INFO    ] Checking for camera pi updates...
[2026-08-31 20:13:19,778.778 INFO    ] 200
[2026-08-31 20:13:19,781.781 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:13:19,822.822 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:13:19,908.908 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:13:19,911.911 INFO    ] No camera update needed
[2026-08-31 20:13:19,913.913 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:13:19,915.915 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:13:19,921.921 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:13:19,925.925 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:13:21,967.967 INFO    ] ================================================
[2026-08-31 20:13:21,983.983 INFO    ] Launching Daemon at Mon Aug 31 20:13:21 IST 2026
[2026-08-31 20:13:22,994.994 INFO    ] ================================================
[2026-08-31 20:13:22,663.663 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:13:22
[2026-08-31 20:13:23,342.342 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:13:23,656.656 INFO    ] Initializing speech engine...
[2026-08-31 20:13:23,665.665 INFO    ] 2026-08-31 20:13:23
[2026-08-31 20:13:23,968.968 INFO    ] 2026-08-31 20:13:23
[2026-08-31 20:13:24,055.055 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:13:24,264.264 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:13:24,273.273 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:13:24,451.451 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:13:24,475.475 INFO    ] time= 31/08/2026 20:13:24
[2026-08-31 20:13:24,493.493 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:13:24,516.516 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:13:24,653.653 INFO    ] No existing commands found in stream
[2026-08-31 20:13:29,679.679 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:13:29,683.683 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-08-31 20:13:30,977.977 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 20:13:30,980.980 INFO    ] Checking for system updates...
[2026-08-31 20:13:31,087.087 INFO    ] 200
[2026-08-31 20:13:31,089.089 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:13:31,143.143 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:13:31,145.145 INFO    ] No update needed
[2026-08-31 20:13:31,148.148 INFO    ] Checking for camera pi updates...
[2026-08-31 20:13:31,181.181 INFO    ] 200
[2026-08-31 20:13:31,183.183 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:13:31,229.229 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:13:31,308.308 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:13:31,310.310 INFO    ] No camera update needed
[2026-08-31 20:13:31,312.312 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:13:31,315.315 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:13:31,320.320 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:13:31,325.325 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:13:33,367.367 INFO    ] ================================================
[2026-08-31 20:13:33,383.383 INFO    ] Launching Daemon at Mon Aug 31 20:13:33 IST 2026
[2026-08-31 20:13:33,394.394 INFO    ] ================================================
[2026-08-31 20:13:33,959.959 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:13:33
[2026-08-31 20:13:34,543.543 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:13:34,811.811 INFO    ] Initializing speech engine...
[2026-08-31 20:13:34,820.820 INFO    ] 2026-08-31 20:13:34
[2026-08-31 20:13:35,070.070 INFO    ] 2026-08-31 20:13:35
[2026-08-31 20:13:35,105.105 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:13:35,295.295 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:13:35,310.310 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:13:35,508.508 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:13:35,556.556 INFO    ] time= 31/08/2026 20:13:35
[2026-08-31 20:13:35,615.615 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:13:35,661.661 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:13:35,783.783 INFO    ] No existing commands found in stream
[2026-08-31 20:13:40,806.806 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:13:40,810.810 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-08-31 20:13:44,892.892 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 20:13:44,895.895 INFO    ] Checking for system updates...
[2026-08-31 20:13:44,936.936 INFO    ] 200
[2026-08-31 20:13:44,940.940 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:13:45,001.001 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:13:45,004.004 INFO    ] No update needed
[2026-08-31 20:13:45,006.006 INFO    ] Checking for camera pi updates...
[2026-08-31 20:13:45,042.042 INFO    ] 200
[2026-08-31 20:13:45,045.045 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:13:45,092.092 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:13:45,181.181 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:13:45,184.184 INFO    ] No camera update needed
[2026-08-31 20:13:45,186.186 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:13:45,189.189 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:13:45,195.195 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:13:45,201.201 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:13:47,246.246 INFO    ] ================================================
[2026-08-31 20:13:47,261.261 INFO    ] Launching Daemon at Mon Aug 31 20:13:47 IST 2026
[2026-08-31 20:13:47,272.272 INFO    ] ================================================
[2026-08-31 20:13:47,841.841 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:13:47
[2026-08-31 20:13:48,423.423 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:13:48,671.671 INFO    ] Initializing speech engine...
[2026-08-31 20:13:48,685.685 INFO    ] 2026-08-31 20:13:48
[2026-08-31 20:13:48,951.951 INFO    ] 2026-08-31 20:13:48
[2026-08-31 20:13:48,986.986 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:13:49,181.181 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:13:49,225.225 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:13:49,384.384 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:13:49,428.428 INFO    ] time= 31/08/2026 20:13:49
[2026-08-31 20:13:49,483.483 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:13:49,516.516 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:13:49,664.664 INFO    ] No existing commands found in stream
[2026-08-31 20:13:54,678.678 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:13:54,680.680 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-08-31 20:13:56,971.971 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 20:13:56,974.974 INFO    ] Checking for system updates...
[2026-08-31 20:13:57,010.010 INFO    ] 200
[2026-08-31 20:13:57,012.012 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:13:57,066.066 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:13:57,068.068 INFO    ] No update needed
[2026-08-31 20:13:57,071.071 INFO    ] Checking for camera pi updates...
[2026-08-31 20:13:57,108.108 INFO    ] 200
[2026-08-31 20:13:57,111.111 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:13:57,156.156 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:13:57,239.239 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:13:57,241.241 INFO    ] No camera update needed
[2026-08-31 20:13:57,244.244 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:13:57,246.246 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:13:57,251.251 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:13:57,256.256 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:13:59,299.299 INFO    ] ================================================
[2026-08-31 20:13:59,319.319 INFO    ] Launching Daemon at Mon Aug 31 20:13:59 IST 2026
[2026-08-31 20:13:59,329.329 INFO    ] ================================================
[2026-08-31 20:13:59,903.903 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:13:59
[2026-08-31 20:14:00,491.491 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:14:00,772.772 INFO    ] Initializing speech engine...
[2026-08-31 20:14:00,787.787 INFO    ] 2026-08-31 20:14:00
[2026-08-31 20:14:01,058.058 INFO    ] 2026-08-31 20:14:01
[2026-08-31 20:14:01,096.096 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:14:01,394.394 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:14:01,404.404 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:14:01,561.561 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:14:01,601.601 INFO    ] time= 31/08/2026 20:14:01
[2026-08-31 20:14:01,645.645 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:14:01,712.712 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:14:01,771.771 INFO    ] No existing commands found in stream
[2026-08-31 20:14:06,783.783 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:14:06,786.786 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-08-31 20:14:07,828.828 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 20:14:07,830.830 INFO    ] Checking for system updates...
[2026-08-31 20:14:07,867.867 INFO    ] 200
[2026-08-31 20:14:07,869.869 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:14:07,922.922 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:14:07,924.924 INFO    ] No update needed
[2026-08-31 20:14:07,926.926 INFO    ] Checking for camera pi updates...
[2026-08-31 20:14:07,964.964 INFO    ] 200
[2026-08-31 20:14:07,966.966 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:14:08,006.006 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:14:08,089.089 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:14:08,091.091 INFO    ] No camera update needed
[2026-08-31 20:14:08,094.094 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:14:08,096.096 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:14:08,101.101 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:14:08,106.106 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:14:10,148.148 INFO    ] ================================================
[2026-08-31 20:14:10,163.163 INFO    ] Launching Daemon at Mon Aug 31 20:14:10 IST 2026
[2026-08-31 20:14:10,175.175 INFO    ] ================================================
[2026-08-31 20:14:10,756.756 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:14:10
[2026-08-31 20:14:11,365.365 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:14:11,629.629 INFO    ] Initializing speech engine...
[2026-08-31 20:14:11,651.651 INFO    ] 2026-08-31 20:14:11
[2026-08-31 20:14:11,932.932 INFO    ] 2026-08-31 20:14:11
[2026-08-31 20:14:11,973.973 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:14:12,171.171 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:14:12,185.185 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:14:12,351.351 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:14:12,359.359 INFO    ] time= 31/08/2026 20:14:12
[2026-08-31 20:14:12,364.364 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:14:12,371.371 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:14:12,447.447 INFO    ] No existing commands found in stream
[2026-08-31 20:14:17,463.463 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:14:17,466.466 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-08-31 20:14:21,626.626 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 20:14:21,628.628 INFO    ] Checking for system updates...
[2026-08-31 20:14:21,663.663 INFO    ] 200
[2026-08-31 20:14:21,666.666 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:14:21,720.720 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:14:21,722.722 INFO    ] No update needed
[2026-08-31 20:14:21,725.725 INFO    ] Checking for camera pi updates...
[2026-08-31 20:14:21,758.758 INFO    ] 200
[2026-08-31 20:14:21,761.761 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:14:21,806.806 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:14:21,910.910 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:14:21,912.912 INFO    ] No camera update needed
[2026-08-31 20:14:21,914.914 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:14:21,917.917 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:14:21,922.922 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:14:21,927.927 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:14:23,967.967 INFO    ] ================================================
[2026-08-31 20:14:23,983.983 INFO    ] Launching Daemon at Mon Aug 31 20:14:23 IST 2026
[2026-08-31 20:14:23,993.993 INFO    ] ================================================
[2026-08-31 20:14:24,652.652 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:14:24
[2026-08-31 20:14:25,331.331 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:14:25,638.638 INFO    ] Initializing speech engine...
[2026-08-31 20:14:25,652.652 INFO    ] 2026-08-31 20:14:25
[2026-08-31 20:14:25,968.968 INFO    ] 2026-08-31 20:14:25
[2026-08-31 20:14:26,056.056 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:14:26,271.271 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:14:26,281.281 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:14:26,479.479 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:14:26,496.496 INFO    ] time= 31/08/2026 20:14:26
[2026-08-31 20:14:26,521.521 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:14:26,535.535 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:14:26,639.639 INFO    ] No existing commands found in stream
[2026-08-31 20:14:31,673.673 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:14:31,676.676 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-08-31 20:14:35,051.051 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 20:14:35,054.054 INFO    ] Checking for system updates...
[2026-08-31 20:14:35,092.092 INFO    ] 200
[2026-08-31 20:14:35,095.095 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:14:35,157.157 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:14:35,160.160 INFO    ] No update needed
[2026-08-31 20:14:35,163.163 INFO    ] Checking for camera pi updates...
[2026-08-31 20:14:35,202.202 INFO    ] 200
[2026-08-31 20:14:35,205.205 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:14:35,253.253 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:14:35,333.333 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:14:35,336.336 INFO    ] No camera update needed
[2026-08-31 20:14:35,339.339 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:14:35,342.342 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:14:35,348.348 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:14:35,354.354 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:14:37,394.394 INFO    ] ================================================
[2026-08-31 20:14:37,410.410 INFO    ] Launching Daemon at Mon Aug 31 20:14:37 IST 2026
[2026-08-31 20:14:37,421.421 INFO    ] ================================================
[2026-08-31 20:14:37,985.985 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:14:37
[2026-08-31 20:14:38,569.569 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:14:38,823.823 INFO    ] Initializing speech engine...
[2026-08-31 20:14:38,831.831 INFO    ] 2026-08-31 20:14:38
[2026-08-31 20:14:39,117.117 INFO    ] 2026-08-31 20:14:39
[2026-08-31 20:14:39,151.151 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:14:39,336.336 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:14:39,352.352 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:14:39,499.499 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:14:39,507.507 INFO    ] time= 31/08/2026 20:14:39
[2026-08-31 20:14:39,512.512 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:14:39,518.518 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:14:39,594.594 INFO    ] No existing commands found in stream
[2026-08-31 20:14:44,606.606 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:14:44,609.609 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-08-31 20:14:47,416.416 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 20:14:47,419.419 INFO    ] Checking for system updates...
[2026-08-31 20:14:47,455.455 INFO    ] 200
[2026-08-31 20:14:47,458.458 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:14:47,511.511 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:14:47,514.514 INFO    ] No update needed
[2026-08-31 20:14:47,516.516 INFO    ] Checking for camera pi updates...
[2026-08-31 20:14:47,549.549 INFO    ] 200
[2026-08-31 20:14:47,552.552 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:14:47,597.597 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:14:47,695.695 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:14:47,698.698 INFO    ] No camera update needed
[2026-08-31 20:14:47,700.700 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:14:47,702.702 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:14:47,708.708 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:14:47,713.713 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:14:49,753.753 INFO    ] ================================================
[2026-08-31 20:14:49,769.769 INFO    ] Launching Daemon at Mon Aug 31 20:14:49 IST 2026
[2026-08-31 20:14:49,781.781 INFO    ] ================================================
[2026-08-31 20:14:50,348.348 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:14:50
[2026-08-31 20:14:50,932.932 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:14:51,190.190 INFO    ] Initializing speech engine...
[2026-08-31 20:14:51,198.198 INFO    ] 2026-08-31 20:14:51
[2026-08-31 20:14:51,489.489 INFO    ] 2026-08-31 20:14:51
[2026-08-31 20:14:51,523.523 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:14:51,742.742 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:14:51,756.756 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:14:51,930.930 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:14:51,954.954 INFO    ] time= 31/08/2026 20:14:51
[2026-08-31 20:14:52,006.006 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:14:52,023.023 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:14:52,156.156 INFO    ] No existing commands found in stream
[2026-08-31 20:14:57,168.168 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:14:57,170.170 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-08-31 20:14:59,262.262 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 20:14:59,265.265 INFO    ] Checking for system updates...
[2026-08-31 20:14:59,300.300 INFO    ] 200
[2026-08-31 20:14:59,302.302 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:14:59,355.355 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:14:59,358.358 INFO    ] No update needed
[2026-08-31 20:14:59,360.360 INFO    ] Checking for camera pi updates...
[2026-08-31 20:14:59,394.394 INFO    ] 200
[2026-08-31 20:14:59,396.396 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:14:59,437.437 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:14:59,539.539 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:14:59,541.541 INFO    ] No camera update needed
[2026-08-31 20:14:59,544.544 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:14:59,546.546 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:14:59,551.551 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:14:59,556.556 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:15:01,597.597 INFO    ] ================================================
[2026-08-31 20:15:01,613.613 INFO    ] Launching Daemon at Mon Aug 31 20:15:01 IST 2026
[2026-08-31 20:15:01,624.624 INFO    ] ================================================
[2026-08-31 20:15:02,490.490 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:15:02
[2026-08-31 20:15:03,275.275 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:15:03,576.576 INFO    ] Initializing speech engine...
[2026-08-31 20:15:03,584.584 INFO    ] 2026-08-31 20:15:03
[2026-08-31 20:15:03,924.924 INFO    ] 2026-08-31 20:15:03
[2026-08-31 20:15:03,982.982 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:15:04,202.202 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:15:04,205.205 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:15:04,380.380 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:15:04,398.398 INFO    ] time= 31/08/2026 20:15:04
[2026-08-31 20:15:04,415.415 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:15:04,472.472 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:15:04,572.572 INFO    ] No existing commands found in stream
[2026-08-31 20:15:09,598.598 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:15:09,601.601 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-08-31 20:15:13,070.070 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 20:15:13,074.074 INFO    ] Checking for system updates...
[2026-08-31 20:15:13,112.112 INFO    ] 200
[2026-08-31 20:15:13,115.115 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:15:13,169.169 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:15:13,172.172 INFO    ] No update needed
[2026-08-31 20:15:13,174.174 INFO    ] Checking for camera pi updates...
[2026-08-31 20:15:13,209.209 INFO    ] 200
[2026-08-31 20:15:13,211.211 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:15:13,252.252 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:15:13,335.335 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:15:13,338.338 INFO    ] No camera update needed
[2026-08-31 20:15:13,340.340 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:15:13,342.342 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:15:13,348.348 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:15:13,353.353 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:15:15,396.396 INFO    ] ================================================
[2026-08-31 20:15:15,413.413 INFO    ] Launching Daemon at Mon Aug 31 20:15:15 IST 2026
[2026-08-31 20:15:15,425.425 INFO    ] ================================================
[2026-08-31 20:15:16,004.004 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:15:16
[2026-08-31 20:15:16,672.672 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:15:16,980.980 INFO    ] Initializing speech engine...
[2026-08-31 20:15:16,994.994 INFO    ] 2026-08-31 20:15:16
[2026-08-31 20:15:17,308.308 INFO    ] 2026-08-31 20:15:17
[2026-08-31 20:15:17,391.391 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:15:17,571.571 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:15:17,604.604 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:15:17,792.792 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:15:17,813.813 INFO    ] time= 31/08/2026 20:15:17
[2026-08-31 20:15:17,831.831 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:15:17,849.849 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:15:17,969.969 INFO    ] No existing commands found in stream
[2026-08-31 20:15:22,999.999 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:15:23,002.002 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-08-31 20:15:24,859.859 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 20:15:24,862.862 INFO    ] Checking for system updates...
[2026-08-31 20:15:24,904.904 INFO    ] 200
[2026-08-31 20:15:24,907.907 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:15:24,962.962 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:15:24,964.964 INFO    ] No update needed
[2026-08-31 20:15:24,967.967 INFO    ] Checking for camera pi updates...
[2026-08-31 20:15:25,007.007 INFO    ] 200
[2026-08-31 20:15:25,010.010 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:15:25,053.053 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:15:25,124.124 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:15:25,127.127 INFO    ] No camera update needed
[2026-08-31 20:15:25,130.130 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:15:25,133.133 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:15:25,139.139 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:15:25,145.145 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:15:27,189.189 INFO    ] ================================================
[2026-08-31 20:15:27,209.209 INFO    ] Launching Daemon at Mon Aug 31 20:15:27 IST 2026
[2026-08-31 20:15:27,222.222 INFO    ] ================================================
[2026-08-31 20:15:27,926.926 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:15:27
[2026-08-31 20:15:28,641.641 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:15:28,954.954 INFO    ] Initializing speech engine...
[2026-08-31 20:15:28,961.961 INFO    ] 2026-08-31 20:15:28
[2026-08-31 20:15:29,256.256 INFO    ] 2026-08-31 20:15:29
[2026-08-31 20:15:29,312.312 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:15:29,538.538 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:15:29,547.547 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:15:29,683.683 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:15:29,748.748 INFO    ] time= 31/08/2026 20:15:29
[2026-08-31 20:15:29,812.812 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:15:29,819.819 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:15:29,968.968 INFO    ] No existing commands found in stream
[2026-08-31 20:15:34,980.980 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:15:34,983.983 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-08-31 20:15:37,736.736 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 20:15:37,739.739 INFO    ] Checking for system updates...
[2026-08-31 20:15:37,776.776 INFO    ] 200
[2026-08-31 20:15:37,778.778 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:15:37,833.833 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:15:37,836.836 INFO    ] No update needed
[2026-08-31 20:15:37,838.838 INFO    ] Checking for camera pi updates...
[2026-08-31 20:15:37,890.890 INFO    ] 200
[2026-08-31 20:15:37,893.893 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:15:37,945.945 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:15:38,053.053 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:15:38,055.055 INFO    ] No camera update needed
[2026-08-31 20:15:38,058.058 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:15:38,060.060 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:15:38,066.066 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:15:38,071.071 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:15:40,111.111 INFO    ] ================================================
[2026-08-31 20:15:40,127.127 INFO    ] Launching Daemon at Mon Aug 31 20:15:40 IST 2026
[2026-08-31 20:15:40,138.138 INFO    ] ================================================
[2026-08-31 20:15:40,804.804 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:15:40
[2026-08-31 20:15:41,491.491 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:15:41,769.769 INFO    ] Initializing speech engine...
[2026-08-31 20:15:41,785.785 INFO    ] 2026-08-31 20:15:41
[2026-08-31 20:15:42,067.067 INFO    ] 2026-08-31 20:15:42
[2026-08-31 20:15:42,103.103 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:15:42,336.336 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:15:42,344.344 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:15:42,518.518 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:15:42,570.570 INFO    ] time= 31/08/2026 20:15:42
[2026-08-31 20:15:42,583.583 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:15:42,647.647 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:15:42,731.731 INFO    ] No existing commands found in stream
[2026-08-31 20:15:47,755.755 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:15:47,758.758 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-08-31 20:15:51,697.697 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 20:15:51,700.700 INFO    ] Checking for system updates...
[2026-08-31 20:15:51,750.750 INFO    ] 200
[2026-08-31 20:15:51,752.752 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:15:51,809.809 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:15:51,812.812 INFO    ] No update needed
[2026-08-31 20:15:51,814.814 INFO    ] Checking for camera pi updates...
[2026-08-31 20:15:51,847.847 INFO    ] 200
[2026-08-31 20:15:51,850.850 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:15:51,895.895 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:15:51,975.975 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:15:51,978.978 INFO    ] No camera update needed
[2026-08-31 20:15:51,980.980 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:15:51,983.983 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:15:51,988.988 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:15:51,993.993 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:15:54,034.034 INFO    ] ================================================
[2026-08-31 20:15:54,050.050 INFO    ] Launching Daemon at Mon Aug 31 20:15:54 IST 2026
[2026-08-31 20:15:54,062.062 INFO    ] ================================================
[2026-08-31 20:15:54,626.626 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:15:54
[2026-08-31 20:15:55,212.212 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:15:55,472.472 INFO    ] Initializing speech engine...
[2026-08-31 20:15:55,491.491 INFO    ] 2026-08-31 20:15:55
[2026-08-31 20:15:55,742.742 INFO    ] 2026-08-31 20:15:55
[2026-08-31 20:15:55,777.777 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:15:56,035.035 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:15:56,045.045 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:15:56,179.179 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:15:56,221.221 INFO    ] time= 31/08/2026 20:15:56
[2026-08-31 20:15:56,276.276 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:15:56,317.317 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:15:56,454.454 INFO    ] No existing commands found in stream
[2026-08-31 20:16:01,472.472 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:16:01,475.475 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-08-31 20:16:04,983.983 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 20:16:04,985.985 INFO    ] Checking for system updates...
[2026-08-31 20:16:05,024.024 INFO    ] 200
[2026-08-31 20:16:05,027.027 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:16:05,081.081 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:16:05,083.083 INFO    ] No update needed
[2026-08-31 20:16:05,085.085 INFO    ] Checking for camera pi updates...
[2026-08-31 20:16:05,123.123 INFO    ] 200
[2026-08-31 20:16:05,125.125 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:16:05,170.170 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:16:05,268.268 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:16:05,271.271 INFO    ] No camera update needed
[2026-08-31 20:16:05,273.273 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:16:05,275.275 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:16:05,280.280 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:16:05,285.285 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:16:07,325.325 INFO    ] ================================================
[2026-08-31 20:16:07,341.341 INFO    ] Launching Daemon at Mon Aug 31 20:16:07 IST 2026
[2026-08-31 20:16:07,352.352 INFO    ] ================================================
[2026-08-31 20:16:07,918.918 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:16:07
[2026-08-31 20:16:08,504.504 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:16:08,760.760 INFO    ] Initializing speech engine...
[2026-08-31 20:16:08,765.765 INFO    ] 2026-08-31 20:16:08
[2026-08-31 20:16:09,066.066 INFO    ] 2026-08-31 20:16:09
[2026-08-31 20:16:09,101.101 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:16:09,306.306 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:16:09,320.320 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:16:09,485.485 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:16:09,494.494 INFO    ] time= 31/08/2026 20:16:09
[2026-08-31 20:16:09,501.501 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:16:09,514.514 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:16:09,656.656 INFO    ] No existing commands found in stream
[2026-08-31 20:16:14,686.686 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:16:14,689.689 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-08-31 20:16:16,099.099 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 20:16:16,102.102 INFO    ] Checking for system updates...
[2026-08-31 20:16:16,142.142 INFO    ] 200
[2026-08-31 20:16:16,144.144 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:16:16,196.196 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:16:16,199.199 INFO    ] No update needed
[2026-08-31 20:16:16,201.201 INFO    ] Checking for camera pi updates...
[2026-08-31 20:16:16,234.234 INFO    ] 200
[2026-08-31 20:16:16,236.236 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:16:16,278.278 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:16:16,365.365 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:16:16,367.367 INFO    ] No camera update needed
[2026-08-31 20:16:16,370.370 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:16:16,372.372 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:16:16,377.377 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:16:16,382.382 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:16:18,423.423 INFO    ] ================================================
[2026-08-31 20:16:18,439.439 INFO    ] Launching Daemon at Mon Aug 31 20:16:18 IST 2026
[2026-08-31 20:16:18,451.451 INFO    ] ================================================
[2026-08-31 20:16:19,015.015 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:16:19
[2026-08-31 20:16:19,596.596 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:16:19,862.862 INFO    ] Initializing speech engine...
[2026-08-31 20:16:19,872.872 INFO    ] 2026-08-31 20:16:19
[2026-08-31 20:16:20,117.117 INFO    ] 2026-08-31 20:16:20
[2026-08-31 20:16:20,151.151 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:16:20,405.405 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:16:20,411.411 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:16:20,623.623 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:16:20,666.666 INFO    ] time= 31/08/2026 20:16:20
[2026-08-31 20:16:20,672.672 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:16:20,693.693 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:16:20,840.840 INFO    ] No existing commands found in stream
[2026-08-31 20:16:25,865.865 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:16:25,869.869 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-08-31 20:16:27,418.418 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 20:16:27,421.421 INFO    ] Checking for system updates...
[2026-08-31 20:16:27,457.457 INFO    ] 200
[2026-08-31 20:16:27,460.460 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:16:27,521.521 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:16:27,524.524 INFO    ] No update needed
[2026-08-31 20:16:27,527.527 INFO    ] Checking for camera pi updates...
[2026-08-31 20:16:27,562.562 INFO    ] 200
[2026-08-31 20:16:27,565.565 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:16:27,608.608 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:16:27,696.696 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:16:27,699.699 INFO    ] No camera update needed
[2026-08-31 20:16:27,702.702 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:16:27,705.705 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:16:27,711.711 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:16:27,717.717 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:16:29,759.759 INFO    ] ================================================
[2026-08-31 20:16:29,776.776 INFO    ] Launching Daemon at Mon Aug 31 20:16:29 IST 2026
[2026-08-31 20:16:29,787.787 INFO    ] ================================================
[2026-08-31 20:16:30,457.457 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:16:30
[2026-08-31 20:16:31,141.141 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:16:31,449.449 INFO    ] Initializing speech engine...
[2026-08-31 20:16:31,456.456 INFO    ] 2026-08-31 20:16:31
[2026-08-31 20:16:31,736.736 INFO    ] 2026-08-31 20:16:31
[2026-08-31 20:16:31,808.808 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:16:32,053.053 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:16:32,063.063 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:16:32,214.214 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:16:32,275.275 INFO    ] time= 31/08/2026 20:16:32
[2026-08-31 20:16:32,341.341 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:16:32,353.353 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:16:32,517.517 INFO    ] No existing commands found in stream
[2026-08-31 20:16:37,547.547 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:16:37,551.551 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-08-31 20:16:42,030.030 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 20:16:42,034.034 INFO    ] Checking for system updates...
[2026-08-31 20:16:42,071.071 INFO    ] 200
[2026-08-31 20:16:42,074.074 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:16:42,135.135 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:16:42,137.137 INFO    ] No update needed
[2026-08-31 20:16:42,140.140 INFO    ] Checking for camera pi updates...
[2026-08-31 20:16:42,178.178 INFO    ] 200
[2026-08-31 20:16:42,180.180 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:16:42,221.221 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:16:42,406.406 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:16:42,409.409 INFO    ] No camera update needed
[2026-08-31 20:16:42,412.412 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:16:42,414.414 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:16:42,419.419 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:16:42,424.424 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:16:44,466.466 INFO    ] ================================================
[2026-08-31 20:16:44,482.482 INFO    ] Launching Daemon at Mon Aug 31 20:16:44 IST 2026
[2026-08-31 20:16:44,494.494 INFO    ] ================================================
[2026-08-31 20:16:45,148.148 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:16:45
[2026-08-31 20:16:45,824.824 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:16:46,131.131 INFO    ] Initializing speech engine...
[2026-08-31 20:16:46,140.140 INFO    ] 2026-08-31 20:16:46
[2026-08-31 20:16:46,456.456 INFO    ] 2026-08-31 20:16:46
[2026-08-31 20:16:46,537.537 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:16:46,751.751 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:16:46,761.761 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:16:46,951.951 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:16:46,969.969 INFO    ] time= 31/08/2026 20:16:46
[2026-08-31 20:16:47,006.006 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:16:47,016.016 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:16:47,113.113 INFO    ] No existing commands found in stream
[2026-08-31 20:16:52,144.144 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:16:52,147.147 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-08-31 20:16:54,103.103 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 20:16:54,105.105 INFO    ] Checking for system updates...
[2026-08-31 20:16:54,141.141 INFO    ] 200
[2026-08-31 20:16:54,144.144 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:16:54,196.196 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:16:54,198.198 INFO    ] No update needed
[2026-08-31 20:16:54,201.201 INFO    ] Checking for camera pi updates...
[2026-08-31 20:16:54,235.235 INFO    ] 200
[2026-08-31 20:16:54,237.237 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:16:54,277.277 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:16:54,357.357 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:16:54,360.360 INFO    ] No camera update needed
[2026-08-31 20:16:54,362.362 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:16:54,364.364 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:16:54,370.370 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:16:54,374.374 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:16:56,415.415 INFO    ] ================================================
[2026-08-31 20:16:56,431.431 INFO    ] Launching Daemon at Mon Aug 31 20:16:56 IST 2026
[2026-08-31 20:16:56,442.442 INFO    ] ================================================
[2026-08-31 20:16:57,104.104 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:16:57
[2026-08-31 20:16:57,693.693 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:16:57,964.964 INFO    ] Initializing speech engine...
[2026-08-31 20:16:57,969.969 INFO    ] 2026-08-31 20:16:57
[2026-08-31 20:16:58,215.215 INFO    ] 2026-08-31 20:16:58
[2026-08-31 20:16:58,250.250 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:16:58,452.452 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:16:58,504.504 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:16:58,644.644 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:16:58,709.709 INFO    ] time= 31/08/2026 20:16:58
[2026-08-31 20:16:58,763.763 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:16:58,776.776 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:16:58,922.922 INFO    ] No existing commands found in stream
[2026-08-31 20:17:03,937.937 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:17:03,940.940 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-08-31 20:17:04,409.409 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 20:17:04,411.411 INFO    ] Checking for system updates...
[2026-08-31 20:17:04,448.448 INFO    ] 200
[2026-08-31 20:17:04,450.450 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:17:04,503.503 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:17:04,506.506 INFO    ] No update needed
[2026-08-31 20:17:04,509.509 INFO    ] Checking for camera pi updates...
[2026-08-31 20:17:04,543.543 INFO    ] 200
[2026-08-31 20:17:04,546.546 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:17:04,590.590 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:17:04,669.669 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:17:04,671.671 INFO    ] No camera update needed
[2026-08-31 20:17:04,674.674 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:17:04,676.676 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:17:04,681.681 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:17:04,686.686 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:17:06,726.726 INFO    ] ================================================
[2026-08-31 20:17:06,741.741 INFO    ] Launching Daemon at Mon Aug 31 20:17:06 IST 2026
[2026-08-31 20:17:06,752.752 INFO    ] ================================================
[2026-08-31 20:17:07,361.361 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:17:07
[2026-08-31 20:17:07,950.950 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:17:08,204.204 INFO    ] Initializing speech engine...
[2026-08-31 20:17:08,226.226 INFO    ] 2026-08-31 20:17:08
[2026-08-31 20:17:08,482.482 INFO    ] 2026-08-31 20:17:08
[2026-08-31 20:17:08,518.518 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:17:08,803.803 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:17:08,812.812 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:17:08,962.962 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:17:09,009.009 INFO    ] time= 31/08/2026 20:17:08
[2026-08-31 20:17:09,048.048 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:17:09,104.104 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:17:09,160.160 INFO    ] No existing commands found in stream
[2026-08-31 20:17:14,172.172 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:17:14,175.175 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-08-31 20:17:15,985.985 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 20:17:15,987.987 INFO    ] Checking for system updates...
[2026-08-31 20:17:16,026.026 INFO    ] 200
[2026-08-31 20:17:16,029.029 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:17:16,087.087 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:17:16,090.090 INFO    ] No update needed
[2026-08-31 20:17:16,092.092 INFO    ] Checking for camera pi updates...
[2026-08-31 20:17:16,126.126 INFO    ] 200
[2026-08-31 20:17:16,128.128 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:17:16,173.173 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:17:16,242.242 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:17:16,244.244 INFO    ] No camera update needed
[2026-08-31 20:17:16,246.246 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:17:16,249.249 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:17:16,254.254 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:17:16,259.259 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:17:18,299.299 INFO    ] ================================================
[2026-08-31 20:17:18,313.313 INFO    ] Launching Daemon at Mon Aug 31 20:17:18 IST 2026
[2026-08-31 20:17:18,324.324 INFO    ] ================================================
[2026-08-31 20:17:18,902.902 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:17:18
[2026-08-31 20:17:19,507.507 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:17:19,779.779 INFO    ] Initializing speech engine...
[2026-08-31 20:17:19,787.787 INFO    ] 2026-08-31 20:17:19
[2026-08-31 20:17:20,042.042 INFO    ] 2026-08-31 20:17:20
[2026-08-31 20:17:20,072.072 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:17:20,321.321 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:17:20,327.327 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:17:20,456.456 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:17:20,503.503 INFO    ] time= 31/08/2026 20:17:20
[2026-08-31 20:17:20,568.568 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:17:20,589.589 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:17:20,685.685 INFO    ] No existing commands found in stream
[2026-08-31 20:17:25,716.716 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:17:25,719.719 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-08-31 20:17:28,930.930 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 20:17:28,932.932 INFO    ] Checking for system updates...
[2026-08-31 20:17:28,971.971 INFO    ] 200
[2026-08-31 20:17:28,974.974 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:17:29,034.034 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:17:29,037.037 INFO    ] No update needed
[2026-08-31 20:17:29,039.039 INFO    ] Checking for camera pi updates...
[2026-08-31 20:17:29,072.072 INFO    ] 200
[2026-08-31 20:17:29,075.075 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:17:29,118.118 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:17:29,219.219 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:17:29,222.222 INFO    ] No camera update needed
[2026-08-31 20:17:29,224.224 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:17:29,226.226 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:17:29,231.231 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:17:29,236.236 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:17:31,276.276 INFO    ] ================================================
[2026-08-31 20:17:31,291.291 INFO    ] Launching Daemon at Mon Aug 31 20:17:31 IST 2026
[2026-08-31 20:17:31,302.302 INFO    ] ================================================
[2026-08-31 20:17:31,965.965 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:17:31
[2026-08-31 20:17:32,616.616 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:17:32,879.879 INFO    ] Initializing speech engine...
[2026-08-31 20:17:32,894.894 INFO    ] 2026-08-31 20:17:32
[2026-08-31 20:17:33,180.180 INFO    ] 2026-08-31 20:17:33
[2026-08-31 20:17:33,214.214 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:17:33,470.470 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:17:33,475.475 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:17:33,608.608 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:17:33,678.678 INFO    ] time= 31/08/2026 20:17:33
[2026-08-31 20:17:33,733.733 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:17:33,742.742 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:17:33,883.883 INFO    ] No existing commands found in stream
[2026-08-31 20:17:38,898.898 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:17:38,901.901 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-08-31 20:17:41,128.128 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 20:17:41,131.131 INFO    ] Checking for system updates...
[2026-08-31 20:17:41,170.170 INFO    ] 200
[2026-08-31 20:17:41,172.172 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:17:41,226.226 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:17:41,229.229 INFO    ] No update needed
[2026-08-31 20:17:41,231.231 INFO    ] Checking for camera pi updates...
[2026-08-31 20:17:41,269.269 INFO    ] 200
[2026-08-31 20:17:41,271.271 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:17:41,312.312 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:17:41,402.402 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:17:41,404.404 INFO    ] No camera update needed
[2026-08-31 20:17:41,406.406 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:17:41,409.409 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:17:41,414.414 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:17:41,419.419 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:17:43,459.459 INFO    ] ================================================
[2026-08-31 20:17:43,474.474 INFO    ] Launching Daemon at Mon Aug 31 20:17:43 IST 2026
[2026-08-31 20:17:43,485.485 INFO    ] ================================================
[2026-08-31 20:17:44,122.122 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:17:44
[2026-08-31 20:17:44,781.781 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:17:45,078.078 INFO    ] Initializing speech engine...
[2026-08-31 20:17:45,086.086 INFO    ] 2026-08-31 20:17:45
[2026-08-31 20:17:45,374.374 INFO    ] 2026-08-31 20:17:45
[2026-08-31 20:17:45,412.412 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:17:45,641.641 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:17:45,663.663 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:17:45,871.871 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:17:45,905.905 INFO    ] time= 31/08/2026 20:17:45
[2026-08-31 20:17:45,921.921 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:17:45,930.930 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:17:46,054.054 INFO    ] No existing commands found in stream
[2026-08-31 20:17:51,070.070 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:17:51,073.073 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-08-31 20:17:54,583.583 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 20:17:54,586.586 INFO    ] Checking for system updates...
[2026-08-31 20:17:54,622.622 INFO    ] 200
[2026-08-31 20:17:54,625.625 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:17:54,682.682 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:17:54,685.685 INFO    ] No update needed
[2026-08-31 20:17:54,688.688 INFO    ] Checking for camera pi updates...
[2026-08-31 20:17:54,724.724 INFO    ] 200
[2026-08-31 20:17:54,727.727 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:17:54,767.767 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:17:54,867.867 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:17:54,869.869 INFO    ] No camera update needed
[2026-08-31 20:17:54,872.872 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:17:54,874.874 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:17:54,880.880 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:17:54,885.885 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:17:56,924.924 INFO    ] ================================================
[2026-08-31 20:17:56,939.939 INFO    ] Launching Daemon at Mon Aug 31 20:17:56 IST 2026
[2026-08-31 20:17:56,951.951 INFO    ] ================================================
[2026-08-31 20:17:57,535.535 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:17:57
[2026-08-31 20:17:58,115.115 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:17:58,381.381 INFO    ] Initializing speech engine...
[2026-08-31 20:17:58,392.392 INFO    ] 2026-08-31 20:17:58
[2026-08-31 20:17:58,643.643 INFO    ] 2026-08-31 20:17:58
[2026-08-31 20:17:58,701.701 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:17:58,922.922 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:17:58,931.931 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:17:59,062.062 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:17:59,079.079 INFO    ] time= 31/08/2026 20:17:59
[2026-08-31 20:17:59,138.138 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:17:59,192.192 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:17:59,327.327 INFO    ] No existing commands found in stream
[2026-08-31 20:18:04,349.349 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:18:04,351.351 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-08-31 20:18:06,464.464 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 20:18:06,467.467 INFO    ] Checking for system updates...
[2026-08-31 20:18:06,507.507 INFO    ] 200
[2026-08-31 20:18:06,509.509 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:18:06,569.569 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:18:06,571.571 INFO    ] No update needed
[2026-08-31 20:18:06,573.573 INFO    ] Checking for camera pi updates...
[2026-08-31 20:18:06,607.607 INFO    ] 200
[2026-08-31 20:18:06,609.609 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:18:06,650.650 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:18:06,741.741 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:18:06,744.744 INFO    ] No camera update needed
[2026-08-31 20:18:06,746.746 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:18:06,748.748 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:18:06,754.754 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:18:06,758.758 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:18:08,799.799 INFO    ] ================================================
[2026-08-31 20:18:08,815.815 INFO    ] Launching Daemon at Mon Aug 31 20:18:08 IST 2026
[2026-08-31 20:18:08,826.826 INFO    ] ================================================
[2026-08-31 20:18:09,488.488 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:18:09
[2026-08-31 20:18:10,170.170 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:18:10,479.479 INFO    ] Initializing speech engine...
[2026-08-31 20:18:10,490.490 INFO    ] 2026-08-31 20:18:10
[2026-08-31 20:18:10,804.804 INFO    ] 2026-08-31 20:18:10
[2026-08-31 20:18:10,887.887 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:18:11,101.101 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:18:11,107.107 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:18:11,301.301 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:18:11,309.309 INFO    ] time= 31/08/2026 20:18:11
[2026-08-31 20:18:11,328.328 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:18:11,356.356 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:18:11,463.463 INFO    ] No existing commands found in stream
[2026-08-31 20:18:16,480.480 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:18:16,483.483 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-08-31 20:18:18,895.895 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 20:18:18,898.898 INFO    ] Checking for system updates...
[2026-08-31 20:18:18,936.936 INFO    ] 200
[2026-08-31 20:18:18,939.939 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:18:19,000.000 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:18:19,003.003 INFO    ] No update needed
[2026-08-31 20:18:19,005.005 INFO    ] Checking for camera pi updates...
[2026-08-31 20:18:19,043.043 INFO    ] 200
[2026-08-31 20:18:19,045.045 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:18:19,093.093 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:18:19,177.177 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:18:19,180.180 INFO    ] No camera update needed
[2026-08-31 20:18:19,183.183 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:18:19,186.186 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:18:19,192.192 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:18:19,198.198 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:18:21,239.239 INFO    ] ================================================
[2026-08-31 20:18:21,254.254 INFO    ] Launching Daemon at Mon Aug 31 20:18:21 IST 2026
[2026-08-31 20:18:21,265.265 INFO    ] ================================================
[2026-08-31 20:18:21,836.836 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:18:21
[2026-08-31 20:18:22,419.419 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:18:22,689.689 INFO    ] Initializing speech engine...
[2026-08-31 20:18:22,698.698 INFO    ] 2026-08-31 20:18:22
[2026-08-31 20:18:22,946.946 INFO    ] 2026-08-31 20:18:22
[2026-08-31 20:18:23,010.010 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:18:23,239.239 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:18:23,244.244 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:18:23,376.376 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:18:23,421.421 INFO    ] time= 31/08/2026 20:18:23
[2026-08-31 20:18:23,475.475 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:18:23,507.507 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:18:23,564.564 INFO    ] No existing commands found in stream
[2026-08-31 20:18:28,576.576 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:18:28,579.579 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-08-31 20:18:31,258.258 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 20:18:31,260.260 INFO    ] Checking for system updates...
[2026-08-31 20:18:31,296.296 INFO    ] 200
[2026-08-31 20:18:31,299.299 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:18:31,359.359 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:18:31,361.361 INFO    ] No update needed
[2026-08-31 20:18:31,364.364 INFO    ] Checking for camera pi updates...
[2026-08-31 20:18:31,397.397 INFO    ] 200
[2026-08-31 20:18:31,400.400 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:18:31,440.440 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:18:31,520.520 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:18:31,523.523 INFO    ] No camera update needed
[2026-08-31 20:18:31,525.525 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:18:31,527.527 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:18:31,533.533 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:18:31,538.538 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:18:33,584.584 INFO    ] ================================================
[2026-08-31 20:18:33,599.599 INFO    ] Launching Daemon at Mon Aug 31 20:18:33 IST 2026
[2026-08-31 20:18:33,610.610 INFO    ] ================================================
[2026-08-31 20:18:34,281.281 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:18:34
[2026-08-31 20:18:34,974.974 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:18:35,285.285 INFO    ] Initializing speech engine...
[2026-08-31 20:18:35,298.298 INFO    ] 2026-08-31 20:18:35
[2026-08-31 20:18:35,612.612 INFO    ] 2026-08-31 20:18:35
[2026-08-31 20:18:35,701.701 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:18:35,975.975 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:18:36,028.028 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:18:36,240.240 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:18:36,291.291 INFO    ] time= 31/08/2026 20:18:36
[2026-08-31 20:18:36,341.341 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:18:36,374.374 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:18:36,516.516 INFO    ] No existing commands found in stream
[2026-08-31 20:18:41,538.538 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:18:41,541.541 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-08-31 20:18:44,926.926 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 20:18:44,929.929 INFO    ] Checking for system updates...
[2026-08-31 20:18:44,972.972 INFO    ] 200
[2026-08-31 20:18:44,975.975 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:18:45,036.036 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:18:45,039.039 INFO    ] No update needed
[2026-08-31 20:18:45,042.042 INFO    ] Checking for camera pi updates...
[2026-08-31 20:18:45,076.076 INFO    ] 200
[2026-08-31 20:18:45,079.079 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:18:45,126.126 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:18:45,315.315 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:18:45,318.318 INFO    ] No camera update needed
[2026-08-31 20:18:45,320.320 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:18:45,322.322 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:18:45,328.328 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:18:45,333.333 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:18:47,374.374 INFO    ] ================================================
[2026-08-31 20:18:47,389.389 INFO    ] Launching Daemon at Mon Aug 31 20:18:47 IST 2026
[2026-08-31 20:18:47,399.399 INFO    ] ================================================
[2026-08-31 20:18:48,082.082 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:18:48
[2026-08-31 20:18:48,779.779 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:18:49,090.090 INFO    ] Initializing speech engine...
[2026-08-31 20:18:49,101.101 INFO    ] 2026-08-31 20:18:49
[2026-08-31 20:18:49,414.414 INFO    ] 2026-08-31 20:18:49
[2026-08-31 20:18:49,499.499 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:18:49,711.711 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:18:49,720.720 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:18:49,916.916 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:18:49,938.938 INFO    ] time= 31/08/2026 20:18:49
[2026-08-31 20:18:49,966.966 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:18:49,975.975 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:18:50,077.077 INFO    ] No existing commands found in stream
[2026-08-31 20:18:55,107.107 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:18:55,111.111 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-08-31 20:18:59,544.544 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 20:18:59,547.547 INFO    ] Checking for system updates...
[2026-08-31 20:18:59,584.584 INFO    ] 200
[2026-08-31 20:18:59,587.587 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:18:59,641.641 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:18:59,644.644 INFO    ] No update needed
[2026-08-31 20:18:59,646.646 INFO    ] Checking for camera pi updates...
[2026-08-31 20:18:59,680.680 INFO    ] 200
[2026-08-31 20:18:59,682.682 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:18:59,726.726 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:18:59,826.826 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:18:59,829.829 INFO    ] No camera update needed
[2026-08-31 20:18:59,831.831 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:18:59,833.833 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:18:59,839.839 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:18:59,844.844 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:19:01,890.890 INFO    ] ================================================
[2026-08-31 20:19:01,906.906 INFO    ] Launching Daemon at Mon Aug 31 20:19:01 IST 2026
[2026-08-31 20:19:01,921.921 INFO    ] ================================================
[2026-08-31 20:19:02,548.548 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:19:02
[2026-08-31 20:19:03,195.195 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:19:03,466.466 INFO    ] Initializing speech engine...
[2026-08-31 20:19:03,472.472 INFO    ] 2026-08-31 20:19:03
[2026-08-31 20:19:03,748.748 INFO    ] 2026-08-31 20:19:03
[2026-08-31 20:19:03,790.790 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:19:04,032.032 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:19:04,045.045 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:19:04,250.250 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:19:04,310.310 INFO    ] time= 31/08/2026 20:19:04
[2026-08-31 20:19:04,317.317 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:19:04,334.334 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:19:04,457.457 INFO    ] No existing commands found in stream
[2026-08-31 20:19:09,476.476 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:19:09,479.479 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-08-31 20:19:11,669.669 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 20:19:11,672.672 INFO    ] Checking for system updates...
[2026-08-31 20:19:11,713.713 INFO    ] 200
[2026-08-31 20:19:11,716.716 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:19:11,778.778 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:19:11,781.781 INFO    ] No update needed
[2026-08-31 20:19:11,784.784 INFO    ] Checking for camera pi updates...
[2026-08-31 20:19:11,819.819 INFO    ] 200
[2026-08-31 20:19:11,822.822 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:19:11,869.869 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:19:11,958.958 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:19:11,961.961 INFO    ] No camera update needed
[2026-08-31 20:19:11,963.963 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:19:11,966.966 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:19:11,972.972 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:19:11,978.978 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:19:14,021.021 INFO    ] ================================================
[2026-08-31 20:19:14,036.036 INFO    ] Launching Daemon at Mon Aug 31 20:19:14 IST 2026
[2026-08-31 20:19:14,047.047 INFO    ] ================================================
[2026-08-31 20:19:14,624.624 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:19:14
[2026-08-31 20:19:15,219.219 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:19:15,477.477 INFO    ] Initializing speech engine...
[2026-08-31 20:19:15,483.483 INFO    ] 2026-08-31 20:19:15
[2026-08-31 20:19:15,780.780 INFO    ] 2026-08-31 20:19:15
[2026-08-31 20:19:15,816.816 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:19:16,015.015 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:19:16,031.031 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:19:16,160.160 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:19:16,181.181 INFO    ] time= 31/08/2026 20:19:16
[2026-08-31 20:19:16,203.203 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:19:16,211.211 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:19:16,288.288 INFO    ] No existing commands found in stream
[2026-08-31 20:19:21,301.301 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:19:21,304.304 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-08-31 20:19:23,043.043 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 20:19:23,046.046 INFO    ] Checking for system updates...
[2026-08-31 20:19:23,085.085 INFO    ] 200
[2026-08-31 20:19:23,088.088 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:19:23,148.148 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:19:23,150.150 INFO    ] No update needed
[2026-08-31 20:19:23,152.152 INFO    ] Checking for camera pi updates...
[2026-08-31 20:19:23,190.190 INFO    ] 200
[2026-08-31 20:19:23,193.193 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:19:23,235.235 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:19:23,320.320 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:19:23,323.323 INFO    ] No camera update needed
[2026-08-31 20:19:23,326.326 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:19:23,329.329 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:19:23,335.335 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:19:23,341.341 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:19:25,382.382 INFO    ] ================================================
[2026-08-31 20:19:25,398.398 INFO    ] Launching Daemon at Mon Aug 31 20:19:25 IST 2026
[2026-08-31 20:19:25,409.409 INFO    ] ================================================
[2026-08-31 20:19:26,073.073 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:19:26
[2026-08-31 20:19:26,759.759 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:19:27,072.072 INFO    ] Initializing speech engine...
[2026-08-31 20:19:27,085.085 INFO    ] 2026-08-31 20:19:27
[2026-08-31 20:19:27,379.379 INFO    ] 2026-08-31 20:19:27
[2026-08-31 20:19:27,432.432 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:19:27,693.693 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:19:27,699.699 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:19:27,934.934 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:19:27,942.942 INFO    ] time= 31/08/2026 20:19:27
[2026-08-31 20:19:27,967.967 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:19:27,995.995 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:19:28,116.116 INFO    ] No existing commands found in stream
[2026-08-31 20:19:33,147.147 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:19:33,150.150 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-08-31 20:19:35,023.023 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 20:19:35,026.026 INFO    ] Checking for system updates...
[2026-08-31 20:19:35,062.062 INFO    ] 200
[2026-08-31 20:19:35,064.064 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:19:35,116.116 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:19:35,119.119 INFO    ] No update needed
[2026-08-31 20:19:35,121.121 INFO    ] Checking for camera pi updates...
[2026-08-31 20:19:35,159.159 INFO    ] 200
[2026-08-31 20:19:35,161.161 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:19:35,202.202 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:19:35,288.288 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:19:35,290.290 INFO    ] No camera update needed
[2026-08-31 20:19:35,293.293 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:19:35,295.295 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:19:35,307.307 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:19:35,312.312 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:19:37,352.352 INFO    ] ================================================
[2026-08-31 20:19:37,368.368 INFO    ] Launching Daemon at Mon Aug 31 20:19:37 IST 2026
[2026-08-31 20:19:37,379.379 INFO    ] ================================================
[2026-08-31 20:19:37,951.951 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:19:37
[2026-08-31 20:19:38,538.538 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:19:38,809.809 INFO    ] Initializing speech engine...
[2026-08-31 20:19:38,819.819 INFO    ] 2026-08-31 20:19:38
[2026-08-31 20:19:39,068.068 INFO    ] 2026-08-31 20:19:39
[2026-08-31 20:19:39,104.104 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:19:39,299.299 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:19:39,308.308 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:19:39,490.490 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:19:39,509.509 INFO    ] time= 31/08/2026 20:19:39
[2026-08-31 20:19:39,550.550 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:19:39,610.610 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:19:39,692.692 INFO    ] No existing commands found in stream
[2026-08-31 20:19:44,704.704 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:19:44,706.706 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-08-31 20:19:45,420.420 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 20:19:45,422.422 INFO    ] Checking for system updates...
[2026-08-31 20:19:45,458.458 INFO    ] 200
[2026-08-31 20:19:45,460.460 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:19:45,513.513 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:19:45,516.516 INFO    ] No update needed
[2026-08-31 20:19:45,518.518 INFO    ] Checking for camera pi updates...
[2026-08-31 20:19:45,551.551 INFO    ] 200
[2026-08-31 20:19:45,554.554 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:19:45,594.594 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:19:45,680.680 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:19:45,682.682 INFO    ] No camera update needed
[2026-08-31 20:19:45,685.685 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:19:45,687.687 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:19:45,692.692 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:19:45,697.697 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:19:47,741.741 INFO    ] ================================================
[2026-08-31 20:19:47,757.757 INFO    ] Launching Daemon at Mon Aug 31 20:19:47 IST 2026
[2026-08-31 20:19:47,768.768 INFO    ] ================================================
[2026-08-31 20:19:48,336.336 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:19:48
[2026-08-31 20:19:48,919.919 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:19:49,189.189 INFO    ] Initializing speech engine...
[2026-08-31 20:19:49,198.198 INFO    ] 2026-08-31 20:19:49
[2026-08-31 20:19:49,448.448 INFO    ] 2026-08-31 20:19:49
[2026-08-31 20:19:49,482.482 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:19:49,684.684 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:19:49,740.740 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:19:49,887.887 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:19:49,947.947 INFO    ] time= 31/08/2026 20:19:49
[2026-08-31 20:19:49,996.996 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:19:50,020.020 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:19:50,134.134 INFO    ] No existing commands found in stream
[2026-08-31 20:19:55,151.151 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:19:55,154.154 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-08-31 20:19:56,869.869 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 20:19:56,871.871 INFO    ] Checking for system updates...
[2026-08-31 20:19:56,907.907 INFO    ] 200
[2026-08-31 20:19:56,910.910 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:19:56,964.964 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:19:56,966.966 INFO    ] No update needed
[2026-08-31 20:19:56,968.968 INFO    ] Checking for camera pi updates...
[2026-08-31 20:19:57,005.005 INFO    ] 200
[2026-08-31 20:19:57,008.008 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:19:57,048.048 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:19:57,097.097 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:19:57,099.099 INFO    ] No camera update needed
[2026-08-31 20:19:57,102.102 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:19:57,104.104 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:19:57,109.109 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:19:57,114.114 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:19:59,157.157 INFO    ] ================================================
[2026-08-31 20:19:59,173.173 INFO    ] Launching Daemon at Mon Aug 31 20:19:59 IST 2026
[2026-08-31 20:19:59,184.184 INFO    ] ================================================
[2026-08-31 20:19:59,839.839 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:19:59
[2026-08-31 20:20:00,513.513 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:20:00,806.806 INFO    ] Initializing speech engine...
[2026-08-31 20:20:00,819.819 INFO    ] 2026-08-31 20:20:00
[2026-08-31 20:20:01,109.109 INFO    ] 2026-08-31 20:20:01
[2026-08-31 20:20:01,154.154 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:20:01,410.410 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:20:01,415.415 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:20:01,602.602 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:20:01,620.620 INFO    ] time= 31/08/2026 20:20:01
[2026-08-31 20:20:01,715.715 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:20:01,804.804 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:20:01,939.939 INFO    ] No existing commands found in stream
[2026-08-31 20:20:06,970.970 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:20:06,973.973 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-08-31 20:20:10,283.283 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 20:20:10,286.286 INFO    ] Checking for system updates...
[2026-08-31 20:20:10,321.321 INFO    ] 200
[2026-08-31 20:20:10,323.323 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:20:10,376.376 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:20:10,379.379 INFO    ] No update needed
[2026-08-31 20:20:10,381.381 INFO    ] Checking for camera pi updates...
[2026-08-31 20:20:10,415.415 INFO    ] 200
[2026-08-31 20:20:10,417.417 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:20:10,458.458 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:20:10,535.535 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:20:10,537.537 INFO    ] No camera update needed
[2026-08-31 20:20:10,540.540 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:20:10,542.542 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:20:10,547.547 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:20:10,552.552 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:20:12,593.593 INFO    ] ================================================
[2026-08-31 20:20:12,609.609 INFO    ] Launching Daemon at Mon Aug 31 20:20:12 IST 2026
[2026-08-31 20:20:12,620.620 INFO    ] ================================================
[2026-08-31 20:20:13,277.277 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:20:13
[2026-08-31 20:20:13,952.952 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:20:14,258.258 INFO    ] Initializing speech engine...
[2026-08-31 20:20:14,269.269 INFO    ] 2026-08-31 20:20:14
[2026-08-31 20:20:14,582.582 INFO    ] 2026-08-31 20:20:14
[2026-08-31 20:20:14,665.665 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:20:14,915.915 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:20:14,948.948 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:20:15,096.096 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:20:15,106.106 INFO    ] time= 31/08/2026 20:20:15
[2026-08-31 20:20:15,135.135 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:20:15,143.143 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:20:15,242.242 INFO    ] No existing commands found in stream
[2026-08-31 20:20:20,263.263 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:20:20,267.267 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-08-31 20:20:22,146.146 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 20:20:22,149.149 INFO    ] Checking for system updates...
[2026-08-31 20:20:22,190.190 INFO    ] 200
[2026-08-31 20:20:22,192.192 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:20:22,253.253 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:20:22,255.255 INFO    ] No update needed
[2026-08-31 20:20:22,258.258 INFO    ] Checking for camera pi updates...
[2026-08-31 20:20:22,292.292 INFO    ] 200
[2026-08-31 20:20:22,294.294 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:20:22,335.335 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:20:22,393.393 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:20:22,396.396 INFO    ] No camera update needed
[2026-08-31 20:20:22,398.398 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:20:22,400.400 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:20:22,406.406 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:20:22,411.411 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:20:24,454.454 INFO    ] ================================================
[2026-08-31 20:20:24,469.469 INFO    ] Launching Daemon at Mon Aug 31 20:20:24 IST 2026
[2026-08-31 20:20:24,481.481 INFO    ] ================================================
[2026-08-31 20:20:25,064.064 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:20:25
[2026-08-31 20:20:25,664.664 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:20:25,942.942 INFO    ] Initializing speech engine...
[2026-08-31 20:20:25,951.951 INFO    ] 2026-08-31 20:20:25
[2026-08-31 20:20:26,210.210 INFO    ] 2026-08-31 20:20:26
[2026-08-31 20:20:26,263.263 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:20:26,489.489 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:20:26,494.494 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:20:26,626.626 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:20:26,675.675 INFO    ] time= 31/08/2026 20:20:26
[2026-08-31 20:20:26,724.724 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:20:26,762.762 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:20:26,879.879 INFO    ] No existing commands found in stream
[2026-08-31 20:20:31,910.910 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:20:31,913.913 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-08-31 20:20:33,613.613 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 20:20:33,615.615 INFO    ] Checking for system updates...
[2026-08-31 20:20:33,651.651 INFO    ] 200
[2026-08-31 20:20:33,653.653 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:20:33,705.705 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:20:33,708.708 INFO    ] No update needed
[2026-08-31 20:20:33,710.710 INFO    ] Checking for camera pi updates...
[2026-08-31 20:20:33,744.744 INFO    ] 200
[2026-08-31 20:20:33,746.746 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:20:33,792.792 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:20:33,890.890 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:20:33,893.893 INFO    ] No camera update needed
[2026-08-31 20:20:33,895.895 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:20:33,898.898 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:20:33,903.903 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:20:33,908.908 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:20:35,951.951 INFO    ] ================================================
[2026-08-31 20:20:35,967.967 INFO    ] Launching Daemon at Mon Aug 31 20:20:35 IST 2026
[2026-08-31 20:20:35,978.978 INFO    ] ================================================
[2026-08-31 20:20:36,555.555 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:20:36
[2026-08-31 20:20:37,153.153 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:20:37,425.425 INFO    ] Initializing speech engine...
[2026-08-31 20:20:37,435.435 INFO    ] 2026-08-31 20:20:37
[2026-08-31 20:20:37,704.704 INFO    ] 2026-08-31 20:20:37
[2026-08-31 20:20:37,739.739 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:20:37,934.934 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:20:37,949.949 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:20:38,092.092 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:20:38,114.114 INFO    ] time= 31/08/2026 20:20:38
[2026-08-31 20:20:38,123.123 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:20:38,129.129 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:20:38,206.206 INFO    ] No existing commands found in stream
[2026-08-31 20:20:43,231.231 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:20:43,234.234 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-08-31 20:20:45,292.292 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 20:20:45,294.294 INFO    ] Checking for system updates...
[2026-08-31 20:20:45,330.330 INFO    ] 200
[2026-08-31 20:20:45,332.332 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:20:45,391.391 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:20:45,394.394 INFO    ] No update needed
[2026-08-31 20:20:45,396.396 INFO    ] Checking for camera pi updates...
[2026-08-31 20:20:45,430.430 INFO    ] 200
[2026-08-31 20:20:45,433.433 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:20:45,473.473 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:20:45,555.555 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:20:45,557.557 INFO    ] No camera update needed
[2026-08-31 20:20:45,560.560 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:20:45,562.562 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:20:45,568.568 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:20:45,573.573 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:20:47,613.613 INFO    ] ================================================
[2026-08-31 20:20:47,629.629 INFO    ] Launching Daemon at Mon Aug 31 20:20:47 IST 2026
[2026-08-31 20:20:47,641.641 INFO    ] ================================================
[2026-08-31 20:20:48,220.220 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:20:48
[2026-08-31 20:20:48,820.820 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:20:49,099.099 INFO    ] Initializing speech engine...
[2026-08-31 20:20:49,112.112 INFO    ] 2026-08-31 20:20:49
[2026-08-31 20:20:49,381.381 INFO    ] 2026-08-31 20:20:49
[2026-08-31 20:20:49,416.416 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:20:49,610.610 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:20:49,625.625 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:20:49,860.860 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:20:49,867.867 INFO    ] time= 31/08/2026 20:20:49
[2026-08-31 20:20:49,901.901 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:20:49,960.960 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:20:50,040.040 INFO    ] No existing commands found in stream
[2026-08-31 20:20:55,050.050 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:20:55,053.053 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-08-31 20:20:57,381.381 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 20:20:57,384.384 INFO    ] Checking for system updates...
[2026-08-31 20:20:57,424.424 INFO    ] 200
[2026-08-31 20:20:57,426.426 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:20:57,485.485 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:20:57,489.489 INFO    ] No update needed
[2026-08-31 20:20:57,491.491 INFO    ] Checking for camera pi updates...
[2026-08-31 20:20:57,526.526 INFO    ] 200
[2026-08-31 20:20:57,529.529 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:20:57,574.574 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:20:57,766.766 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:20:57,769.769 INFO    ] No camera update needed
[2026-08-31 20:20:57,772.772 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:20:57,774.774 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:20:57,780.780 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:20:57,786.786 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:20:59,827.827 INFO    ] ================================================
[2026-08-31 20:20:59,842.842 INFO    ] Launching Daemon at Mon Aug 31 20:20:59 IST 2026
[2026-08-31 20:20:59,853.853 INFO    ] ================================================
[2026-08-31 20:21:00,495.495 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:21:00
[2026-08-31 20:21:01,155.155 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:21:01,453.453 INFO    ] Initializing speech engine...
[2026-08-31 20:21:01,467.467 INFO    ] 2026-08-31 20:21:01
[2026-08-31 20:21:01,780.780 INFO    ] 2026-08-31 20:21:01
[2026-08-31 20:21:01,828.828 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:21:02,105.105 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:21:02,124.124 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:21:02,316.316 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:21:02,350.350 INFO    ] time= 31/08/2026 20:21:02
[2026-08-31 20:21:02,361.361 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:21:02,402.402 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:21:02,506.506 INFO    ] No existing commands found in stream
[2026-08-31 20:21:07,529.529 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:21:07,532.532 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-08-31 20:21:08,104.104 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 20:21:08,108.108 INFO    ] Checking for system updates...
[2026-08-31 20:21:08,145.145 INFO    ] 200
[2026-08-31 20:21:08,148.148 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:21:08,208.208 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:21:08,210.210 INFO    ] No update needed
[2026-08-31 20:21:08,213.213 INFO    ] Checking for camera pi updates...
[2026-08-31 20:21:08,246.246 INFO    ] 200
[2026-08-31 20:21:08,249.249 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:21:08,290.290 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:21:08,370.370 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:21:08,372.372 INFO    ] No camera update needed
[2026-08-31 20:21:08,375.375 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:21:08,377.377 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:21:08,382.382 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:21:08,387.387 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:21:10,427.427 INFO    ] ================================================
[2026-08-31 20:21:10,442.442 INFO    ] Launching Daemon at Mon Aug 31 20:21:10 IST 2026
[2026-08-31 20:21:10,452.452 INFO    ] ================================================
[2026-08-31 20:21:11,034.034 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:21:11
[2026-08-31 20:21:11,637.637 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:21:11,916.916 INFO    ] Initializing speech engine...
[2026-08-31 20:21:11,937.937 INFO    ] 2026-08-31 20:21:11
[2026-08-31 20:21:12,208.208 INFO    ] 2026-08-31 20:21:12
[2026-08-31 20:21:12,247.247 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:21:12,450.450 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:21:12,464.464 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:21:12,610.610 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:21:12,632.632 INFO    ] time= 31/08/2026 20:21:12
[2026-08-31 20:21:12,641.641 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:21:12,648.648 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:21:12,722.722 INFO    ] No existing commands found in stream
[2026-08-31 20:21:17,735.735 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:21:17,738.738 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-08-31 20:21:22,031.031 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 20:21:22,034.034 INFO    ] Checking for system updates...
[2026-08-31 20:21:22,074.074 INFO    ] 200
[2026-08-31 20:21:22,076.076 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:21:22,136.136 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:21:22,138.138 INFO    ] No update needed
[2026-08-31 20:21:22,141.141 INFO    ] Checking for camera pi updates...
[2026-08-31 20:21:22,178.178 INFO    ] 200
[2026-08-31 20:21:22,181.181 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:21:22,222.222 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:21:22,307.307 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:21:22,309.309 INFO    ] No camera update needed
[2026-08-31 20:21:22,312.312 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:21:22,314.314 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:21:22,320.320 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:21:22,325.325 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:21:24,366.366 INFO    ] ================================================
[2026-08-31 20:21:24,382.382 INFO    ] Launching Daemon at Mon Aug 31 20:21:24 IST 2026
[2026-08-31 20:21:24,392.392 INFO    ] ================================================
[2026-08-31 20:21:24,966.966 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:21:24
[2026-08-31 20:21:25,551.551 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:21:25,807.807 INFO    ] Initializing speech engine...
[2026-08-31 20:21:25,815.815 INFO    ] 2026-08-31 20:21:25
[2026-08-31 20:21:26,112.112 INFO    ] 2026-08-31 20:21:26
[2026-08-31 20:21:26,148.148 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:21:26,348.348 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:21:26,354.354 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:21:26,532.532 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:21:26,538.538 INFO    ] time= 31/08/2026 20:21:26
[2026-08-31 20:21:26,544.544 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:21:26,550.550 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:21:26,689.689 INFO    ] No existing commands found in stream
[2026-08-31 20:21:31,714.714 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:21:31,716.716 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-08-31 20:21:33,565.565 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 20:21:33,568.568 INFO    ] Checking for system updates...
[2026-08-31 20:21:33,610.610 INFO    ] 200
[2026-08-31 20:21:33,613.613 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:21:33,671.671 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:21:33,674.674 INFO    ] No update needed
[2026-08-31 20:21:33,676.676 INFO    ] Checking for camera pi updates...
[2026-08-31 20:21:33,711.711 INFO    ] 200
[2026-08-31 20:21:33,714.714 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:21:33,755.755 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:21:33,831.831 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:21:33,834.834 INFO    ] No camera update needed
[2026-08-31 20:21:33,836.836 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:21:33,838.838 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:21:33,843.843 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:21:33,848.848 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:21:35,888.888 INFO    ] ================================================
[2026-08-31 20:21:35,903.903 INFO    ] Launching Daemon at Mon Aug 31 20:21:35 IST 2026
[2026-08-31 20:21:35,914.914 INFO    ] ================================================
[2026-08-31 20:21:36,571.571 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:21:36
[2026-08-31 20:21:37,198.198 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:21:37,466.466 INFO    ] Initializing speech engine...
[2026-08-31 20:21:37,477.477 INFO    ] 2026-08-31 20:21:37
[2026-08-31 20:21:37,728.728 INFO    ] 2026-08-31 20:21:37
[2026-08-31 20:21:37,762.762 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:21:37,964.964 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:21:38,010.010 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:21:38,164.164 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:21:38,212.212 INFO    ] time= 31/08/2026 20:21:38
[2026-08-31 20:21:38,276.276 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:21:38,303.303 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:21:38,358.358 INFO    ] No existing commands found in stream
[2026-08-31 20:21:43,370.370 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:21:43,372.372 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-08-31 20:21:46,122.122 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 20:21:46,125.125 INFO    ] Checking for system updates...
[2026-08-31 20:21:46,161.161 INFO    ] 200
[2026-08-31 20:21:46,163.163 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:21:46,216.216 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:21:46,218.218 INFO    ] No update needed
[2026-08-31 20:21:46,221.221 INFO    ] Checking for camera pi updates...
[2026-08-31 20:21:46,259.259 INFO    ] 200
[2026-08-31 20:21:46,261.261 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:21:46,306.306 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:21:46,374.374 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:21:46,377.377 INFO    ] No camera update needed
[2026-08-31 20:21:46,379.379 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:21:46,381.381 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:21:46,387.387 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:21:46,392.392 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:21:48,433.433 INFO    ] ================================================
[2026-08-31 20:21:48,448.448 INFO    ] Launching Daemon at Mon Aug 31 20:21:48 IST 2026
[2026-08-31 20:21:48,459.459 INFO    ] ================================================
[2026-08-31 20:21:49,042.042 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:21:49
[2026-08-31 20:21:49,641.641 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:21:49,918.918 INFO    ] Initializing speech engine...
[2026-08-31 20:21:49,927.927 INFO    ] 2026-08-31 20:21:49
[2026-08-31 20:21:50,189.189 INFO    ] 2026-08-31 20:21:50
[2026-08-31 20:21:50,244.244 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:21:50,465.465 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:21:50,474.474 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:21:50,713.713 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:21:50,733.733 INFO    ] time= 31/08/2026 20:21:50
[2026-08-31 20:21:50,749.749 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:21:50,758.758 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:21:50,876.876 INFO    ] No existing commands found in stream
[2026-08-31 20:21:55,896.896 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:21:55,899.899 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-08-31 20:21:58,230.230 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 20:21:58,232.232 INFO    ] Checking for system updates...
[2026-08-31 20:21:58,272.272 INFO    ] 200
[2026-08-31 20:21:58,275.275 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:21:58,334.334 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:21:58,336.336 INFO    ] No update needed
[2026-08-31 20:21:58,339.339 INFO    ] Checking for camera pi updates...
[2026-08-31 20:21:58,372.372 INFO    ] 200
[2026-08-31 20:21:58,375.375 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:21:58,416.416 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:21:58,506.506 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:21:58,509.509 INFO    ] No camera update needed
[2026-08-31 20:21:58,511.511 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:21:58,513.513 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:21:58,519.519 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:21:58,528.528 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:22:00,569.569 INFO    ] ================================================
[2026-08-31 20:22:00,584.584 INFO    ] Launching Daemon at Mon Aug 31 20:22:00 IST 2026
[2026-08-31 20:22:00,595.595 INFO    ] ================================================
[2026-08-31 20:22:01,171.171 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:22:01
[2026-08-31 20:22:01,914.914 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:22:02,233.233 INFO    ] Initializing speech engine...
[2026-08-31 20:22:02,243.243 INFO    ] 2026-08-31 20:22:02
[2026-08-31 20:22:02,529.529 INFO    ] 2026-08-31 20:22:02
[2026-08-31 20:22:02,591.591 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:22:02,860.860 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:22:02,885.885 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:22:03,103.103 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:22:03,166.166 INFO    ] time= 31/08/2026 20:22:03
[2026-08-31 20:22:03,173.173 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:22:03,199.199 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:22:03,331.331 INFO    ] No existing commands found in stream
[2026-08-31 20:22:08,350.350 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:22:08,353.353 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-08-31 20:22:11,711.711 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 20:22:11,714.714 INFO    ] Checking for system updates...
[2026-08-31 20:22:11,749.749 INFO    ] 200
[2026-08-31 20:22:11,752.752 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:22:11,813.813 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:22:11,815.815 INFO    ] No update needed
[2026-08-31 20:22:11,817.817 INFO    ] Checking for camera pi updates...
[2026-08-31 20:22:11,856.856 INFO    ] 200
[2026-08-31 20:22:11,859.859 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:22:11,905.905 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:22:11,985.985 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:22:11,987.987 INFO    ] No camera update needed
[2026-08-31 20:22:11,990.990 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:22:11,992.992 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:22:11,998.998 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:22:12,003.003 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:22:14,042.042 INFO    ] ================================================
[2026-08-31 20:22:14,058.058 INFO    ] Launching Daemon at Mon Aug 31 20:22:14 IST 2026
[2026-08-31 20:22:14,068.068 INFO    ] ================================================
[2026-08-31 20:22:14,649.649 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:22:14
[2026-08-31 20:22:15,245.245 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:22:15,498.498 INFO    ] Initializing speech engine...
[2026-08-31 20:22:15,521.521 INFO    ] 2026-08-31 20:22:15
[2026-08-31 20:22:15,774.774 INFO    ] 2026-08-31 20:22:15
[2026-08-31 20:22:15,809.809 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:22:16,060.060 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:22:16,070.070 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:22:16,226.226 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:22:16,291.291 INFO    ] time= 31/08/2026 20:22:16
[2026-08-31 20:22:16,333.333 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:22:16,339.339 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:22:16,453.453 INFO    ] No existing commands found in stream
[2026-08-31 20:22:21,483.483 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:22:21,486.486 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-08-31 20:22:25,187.187 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 20:22:25,190.190 INFO    ] Checking for system updates...
[2026-08-31 20:22:25,230.230 INFO    ] 200
[2026-08-31 20:22:25,233.233 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:22:25,285.285 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:22:25,288.288 INFO    ] No update needed
[2026-08-31 20:22:25,290.290 INFO    ] Checking for camera pi updates...
[2026-08-31 20:22:25,324.324 INFO    ] 200
[2026-08-31 20:22:25,326.326 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:22:25,373.373 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:22:25,456.456 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:22:25,458.458 INFO    ] No camera update needed
[2026-08-31 20:22:25,461.461 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:22:25,463.463 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:22:25,469.469 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:22:25,474.474 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:22:27,516.516 INFO    ] ================================================
[2026-08-31 20:22:27,531.531 INFO    ] Launching Daemon at Mon Aug 31 20:22:27 IST 2026
[2026-08-31 20:22:27,542.542 INFO    ] ================================================
[2026-08-31 20:22:28,195.195 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:22:28
[2026-08-31 20:22:28,783.783 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:22:29,055.055 INFO    ] Initializing speech engine...
[2026-08-31 20:22:29,064.064 INFO    ] 2026-08-31 20:22:29
[2026-08-31 20:22:29,328.328 INFO    ] 2026-08-31 20:22:29
[2026-08-31 20:22:29,381.381 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:22:29,602.602 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:22:29,612.612 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:22:29,746.746 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:22:29,806.806 INFO    ] time= 31/08/2026 20:22:29
[2026-08-31 20:22:29,871.871 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:22:29,880.880 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:22:30,014.014 INFO    ] No existing commands found in stream
[2026-08-31 20:22:35,035.035 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:22:35,038.038 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-08-31 20:22:36,189.189 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 20:22:36,192.192 INFO    ] Checking for system updates...
[2026-08-31 20:22:36,234.234 INFO    ] 200
[2026-08-31 20:22:36,237.237 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:22:36,292.292 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:22:36,294.294 INFO    ] No update needed
[2026-08-31 20:22:36,297.297 INFO    ] Checking for camera pi updates...
[2026-08-31 20:22:36,332.332 INFO    ] 200
[2026-08-31 20:22:36,335.335 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:22:36,383.383 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:22:36,438.438 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:22:36,441.441 INFO    ] No camera update needed
[2026-08-31 20:22:36,443.443 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:22:36,446.446 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:22:36,453.453 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:22:36,459.459 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:22:38,499.499 INFO    ] ================================================
[2026-08-31 20:22:38,515.515 INFO    ] Launching Daemon at Mon Aug 31 20:22:38 IST 2026
[2026-08-31 20:22:38,525.525 INFO    ] ================================================
[2026-08-31 20:22:39,160.160 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:22:39
[2026-08-31 20:22:39,744.744 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:22:40,012.012 INFO    ] Initializing speech engine...
[2026-08-31 20:22:40,020.020 INFO    ] 2026-08-31 20:22:40
[2026-08-31 20:22:40,267.267 INFO    ] 2026-08-31 20:22:40
[2026-08-31 20:22:40,304.304 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:22:40,616.616 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:22:40,624.624 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:22:40,813.813 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:22:40,825.825 INFO    ] time= 31/08/2026 20:22:40
[2026-08-31 20:22:40,840.840 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:22:40,849.849 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:22:40,972.972 INFO    ] No existing commands found in stream
[2026-08-31 20:22:45,987.987 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:22:45,990.990 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-08-31 20:22:46,807.807 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 20:22:46,810.810 INFO    ] Checking for system updates...
[2026-08-31 20:22:46,849.849 INFO    ] 200
[2026-08-31 20:22:46,852.852 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:22:46,913.913 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:22:46,916.916 INFO    ] No update needed
[2026-08-31 20:22:46,919.919 INFO    ] Checking for camera pi updates...
[2026-08-31 20:22:46,958.958 INFO    ] 200
[2026-08-31 20:22:46,961.961 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:22:47,012.012 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:22:47,106.106 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:22:47,109.109 INFO    ] No camera update needed
[2026-08-31 20:22:47,112.112 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:22:47,115.115 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:22:47,121.121 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:22:47,127.127 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:22:49,169.169 INFO    ] ================================================
[2026-08-31 20:22:49,185.185 INFO    ] Launching Daemon at Mon Aug 31 20:22:49 IST 2026
[2026-08-31 20:22:49,197.197 INFO    ] ================================================
[2026-08-31 20:22:49,776.776 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:22:49
[2026-08-31 20:22:50,373.373 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:22:50,630.630 INFO    ] Initializing speech engine...
[2026-08-31 20:22:50,638.638 INFO    ] 2026-08-31 20:22:50
[2026-08-31 20:22:50,936.936 INFO    ] 2026-08-31 20:22:50
[2026-08-31 20:22:50,978.978 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:22:51,176.176 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:22:51,191.191 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:22:51,359.359 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:22:51,366.366 INFO    ] time= 31/08/2026 20:22:51
[2026-08-31 20:22:51,372.372 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:22:51,384.384 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:22:51,534.534 INFO    ] No existing commands found in stream
[2026-08-31 20:22:56,564.564 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:22:56,567.567 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-08-31 20:22:57,652.652 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 20:22:57,655.655 INFO    ] Checking for system updates...
[2026-08-31 20:22:57,691.691 INFO    ] 200
[2026-08-31 20:22:57,694.694 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:22:57,747.747 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:22:57,750.750 INFO    ] No update needed
[2026-08-31 20:22:57,753.753 INFO    ] Checking for camera pi updates...
[2026-08-31 20:22:57,791.791 INFO    ] 200
[2026-08-31 20:22:57,794.794 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:22:57,844.844 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:22:57,930.930 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:22:57,933.933 INFO    ] No camera update needed
[2026-08-31 20:22:57,936.936 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:22:57,939.939 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:22:57,945.945 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:22:57,951.951 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:22:59,990.990 INFO    ] ================================================
[2026-08-31 20:23:00,005.005 INFO    ] Launching Daemon at Mon Aug 31 20:23:00 IST 2026
[2026-08-31 20:23:00,016.016 INFO    ] ================================================
[2026-08-31 20:23:00,660.660 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:23:00
[2026-08-31 20:23:01,244.244 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:23:01,819.819 INFO    ] Initializing speech engine...
[2026-08-31 20:23:01,822.822 INFO    ] 2026-08-31 20:23:01
[2026-08-31 20:23:02,141.141 INFO    ] 2026-08-31 20:23:02
[2026-08-31 20:23:02,222.222 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:23:02,462.462 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:23:02,511.511 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:23:02,809.809 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:23:02,863.863 INFO    ] time= 31/08/2026 20:23:02
[2026-08-31 20:23:02,902.902 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:23:02,944.944 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:23:03,079.079 INFO    ] No existing commands found in stream
[2026-08-31 20:23:08,112.112 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:23:08,115.115 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-08-31 20:23:10,858.858 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 20:23:10,861.861 INFO    ] Checking for system updates...
[2026-08-31 20:23:10,898.898 INFO    ] 200
[2026-08-31 20:23:10,900.900 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:23:10,955.955 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:23:10,957.957 INFO    ] No update needed
[2026-08-31 20:23:10,960.960 INFO    ] Checking for camera pi updates...
[2026-08-31 20:23:10,994.994 INFO    ] 200
[2026-08-31 20:23:10,997.997 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:23:11,041.041 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:23:11,124.124 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:23:11,126.126 INFO    ] No camera update needed
[2026-08-31 20:23:11,129.129 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:23:11,132.132 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:23:11,138.138 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:23:11,143.143 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:23:13,187.187 INFO    ] ================================================
[2026-08-31 20:23:13,202.202 INFO    ] Launching Daemon at Mon Aug 31 20:23:13 IST 2026
[2026-08-31 20:23:13,213.213 INFO    ] ================================================
[2026-08-31 20:23:13,778.778 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:23:13
[2026-08-31 20:23:14,362.362 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:23:14,628.628 INFO    ] Initializing speech engine...
[2026-08-31 20:23:14,637.637 INFO    ] 2026-08-31 20:23:14
[2026-08-31 20:23:14,889.889 INFO    ] 2026-08-31 20:23:14
[2026-08-31 20:23:14,949.949 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:23:15,174.174 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:23:15,178.178 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:23:15,312.312 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:23:15,372.372 INFO    ] time= 31/08/2026 20:23:15
[2026-08-31 20:23:15,432.432 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:23:15,445.445 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:23:15,576.576 INFO    ] No existing commands found in stream
[2026-08-31 20:23:20,600.600 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:23:20,603.603 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-08-31 20:23:21,296.296 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 20:23:21,298.298 INFO    ] Checking for system updates...
[2026-08-31 20:23:21,335.335 INFO    ] 200
[2026-08-31 20:23:21,337.337 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:23:21,398.398 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:23:21,400.400 INFO    ] No update needed
[2026-08-31 20:23:21,402.402 INFO    ] Checking for camera pi updates...
[2026-08-31 20:23:21,435.435 INFO    ] 200
[2026-08-31 20:23:21,438.438 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:23:21,480.480 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:23:21,568.568 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:23:21,570.570 INFO    ] No camera update needed
[2026-08-31 20:23:21,572.572 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:23:21,575.575 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:23:21,580.580 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:23:21,585.585 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:23:23,627.627 INFO    ] ================================================
[2026-08-31 20:23:23,642.642 INFO    ] Launching Daemon at Mon Aug 31 20:23:23 IST 2026
[2026-08-31 20:23:23,652.652 INFO    ] ================================================
[2026-08-31 20:23:24,271.271 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:23:24
[2026-08-31 20:23:24,906.906 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:23:25,167.167 INFO    ] Initializing speech engine...
[2026-08-31 20:23:25,181.181 INFO    ] 2026-08-31 20:23:25
[2026-08-31 20:23:25,438.438 INFO    ] 2026-08-31 20:23:25
[2026-08-31 20:23:25,473.473 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:23:25,649.649 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:23:25,662.662 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:23:25,873.873 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:23:25,880.880 INFO    ] time= 31/08/2026 20:23:25
[2026-08-31 20:23:25,945.945 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:23:25,994.994 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:23:26,139.139 INFO    ] No existing commands found in stream
[2026-08-31 20:23:31,164.164 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:23:31,167.167 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-08-31 20:23:31,856.856 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 20:23:31,859.859 INFO    ] Checking for system updates...
[2026-08-31 20:23:31,910.910 INFO    ] 200
[2026-08-31 20:23:31,914.914 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:23:31,972.972 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:23:31,975.975 INFO    ] No update needed
[2026-08-31 20:23:31,978.978 INFO    ] Checking for camera pi updates...
[2026-08-31 20:23:32,020.020 INFO    ] 200
[2026-08-31 20:23:32,023.023 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:23:32,070.070 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:23:32,172.172 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:23:32,174.174 INFO    ] No camera update needed
[2026-08-31 20:23:32,177.177 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:23:32,180.180 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:23:32,186.186 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:23:32,192.192 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:23:34,235.235 INFO    ] ================================================
[2026-08-31 20:23:34,250.250 INFO    ] Launching Daemon at Mon Aug 31 20:23:34 IST 2026
[2026-08-31 20:23:34,261.261 INFO    ] ================================================
[2026-08-31 20:23:34,828.828 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:23:34
[2026-08-31 20:23:35,412.412 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:23:35,658.658 INFO    ] Initializing speech engine...
[2026-08-31 20:23:35,666.666 INFO    ] 2026-08-31 20:23:35
[2026-08-31 20:23:35,941.941 INFO    ] 2026-08-31 20:23:35
[2026-08-31 20:23:35,976.976 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:23:36,173.173 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:23:36,185.185 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:23:36,378.378 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:23:36,421.421 INFO    ] time= 31/08/2026 20:23:36
[2026-08-31 20:23:36,475.475 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:23:36,517.517 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:23:36,643.643 INFO    ] No existing commands found in stream
[2026-08-31 20:23:41,676.676 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:23:41,679.679 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-08-31 20:23:43,892.892 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 20:23:43,894.894 INFO    ] Checking for system updates...
[2026-08-31 20:23:43,934.934 INFO    ] 200
[2026-08-31 20:23:43,937.937 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:23:43,996.996 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:23:43,999.999 INFO    ] No update needed
[2026-08-31 20:23:44,001.001 INFO    ] Checking for camera pi updates...
[2026-08-31 20:23:44,051.051 INFO    ] 200
[2026-08-31 20:23:44,053.053 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:23:44,098.098 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:23:44,179.179 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:23:44,181.181 INFO    ] No camera update needed
[2026-08-31 20:23:44,184.184 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:23:44,186.186 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:23:44,191.191 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:23:44,196.196 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:23:46,237.237 INFO    ] ================================================
[2026-08-31 20:23:46,252.252 INFO    ] Launching Daemon at Mon Aug 31 20:23:46 IST 2026
[2026-08-31 20:23:46,263.263 INFO    ] ================================================
[2026-08-31 20:23:46,831.831 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:23:46
[2026-08-31 20:23:47,413.413 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:23:47,684.684 INFO    ] Initializing speech engine...
[2026-08-31 20:23:47,692.692 INFO    ] 2026-08-31 20:23:47
[2026-08-31 20:23:47,942.942 INFO    ] 2026-08-31 20:23:47
[2026-08-31 20:23:47,977.977 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:23:48,173.173 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:23:48,180.180 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:23:48,375.375 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:23:48,392.392 INFO    ] time= 31/08/2026 20:23:48
[2026-08-31 20:23:48,456.456 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:23:48,500.500 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:23:48,642.642 INFO    ] No existing commands found in stream
[2026-08-31 20:23:53,667.667 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:23:53,670.670 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-08-31 20:23:55,703.703 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 20:23:55,705.705 INFO    ] Checking for system updates...
[2026-08-31 20:23:55,744.744 INFO    ] 200
[2026-08-31 20:23:55,747.747 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:23:55,800.800 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:23:55,802.802 INFO    ] No update needed
[2026-08-31 20:23:55,804.804 INFO    ] Checking for camera pi updates...
[2026-08-31 20:23:55,841.841 INFO    ] 200
[2026-08-31 20:23:55,843.843 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:23:55,883.883 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:23:55,951.951 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:23:55,953.953 INFO    ] No camera update needed
[2026-08-31 20:23:55,955.955 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:23:55,958.958 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:23:55,963.963 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:23:55,968.968 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:23:58,007.007 INFO    ] ================================================
[2026-08-31 20:23:58,022.022 INFO    ] Launching Daemon at Mon Aug 31 20:23:58 IST 2026
[2026-08-31 20:23:58,033.033 INFO    ] ================================================
[2026-08-31 20:23:58,597.597 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:23:58
[2026-08-31 20:23:59,196.196 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:23:59,492.492 INFO    ] Initializing speech engine...
[2026-08-31 20:23:59,502.502 INFO    ] 2026-08-31 20:23:59
[2026-08-31 20:23:59,770.770 INFO    ] 2026-08-31 20:23:59
[2026-08-31 20:23:59,821.821 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:24:00,049.049 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:24:00,054.054 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:24:00,267.267 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:24:00,311.311 INFO    ] time= 31/08/2026 20:24:00
[2026-08-31 20:24:00,317.317 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:24:00,334.334 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:24:00,465.465 INFO    ] No existing commands found in stream
[2026-08-31 20:24:05,477.477 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:24:05,480.480 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-08-31 20:24:06,978.978 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 20:24:06,981.981 INFO    ] Checking for system updates...
[2026-08-31 20:24:07,017.017 INFO    ] 200
[2026-08-31 20:24:07,020.020 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:24:07,071.071 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:24:07,074.074 INFO    ] No update needed
[2026-08-31 20:24:07,076.076 INFO    ] Checking for camera pi updates...
[2026-08-31 20:24:07,110.110 INFO    ] 200
[2026-08-31 20:24:07,112.112 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:24:07,158.158 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:24:07,240.240 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:24:07,242.242 INFO    ] No camera update needed
[2026-08-31 20:24:07,244.244 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:24:07,247.247 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:24:07,252.252 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:24:07,257.257 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:24:09,298.298 INFO    ] ================================================
[2026-08-31 20:24:09,313.313 INFO    ] Launching Daemon at Mon Aug 31 20:24:09 IST 2026
[2026-08-31 20:24:09,324.324 INFO    ] ================================================
[2026-08-31 20:24:09,889.889 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:24:09
[2026-08-31 20:24:10,471.471 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:24:10,717.717 INFO    ] Initializing speech engine...
[2026-08-31 20:24:10,730.730 INFO    ] 2026-08-31 20:24:10
[2026-08-31 20:24:10,990.990 INFO    ] 2026-08-31 20:24:10
[2026-08-31 20:24:11,025.025 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:24:11,217.217 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:24:11,239.239 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:24:11,416.416 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:24:11,458.458 INFO    ] time= 31/08/2026 20:24:11
[2026-08-31 20:24:11,512.512 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:24:11,549.549 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:24:11,608.608 INFO    ] No existing commands found in stream
[2026-08-31 20:24:16,629.629 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:24:16,631.631 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-08-31 20:24:17,400.400 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 20:24:17,403.403 INFO    ] Checking for system updates...
[2026-08-31 20:24:17,441.441 INFO    ] 200
[2026-08-31 20:24:17,444.444 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:24:17,501.501 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:24:17,503.503 INFO    ] No update needed
[2026-08-31 20:24:17,506.506 INFO    ] Checking for camera pi updates...
[2026-08-31 20:24:17,542.542 INFO    ] 200
[2026-08-31 20:24:17,545.545 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:24:17,584.584 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:24:17,668.668 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:24:17,671.671 INFO    ] No camera update needed
[2026-08-31 20:24:17,673.673 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:24:17,675.675 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:24:17,681.681 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:24:17,685.685 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:24:19,725.725 INFO    ] ================================================
[2026-08-31 20:24:19,741.741 INFO    ] Launching Daemon at Mon Aug 31 20:24:19 IST 2026
[2026-08-31 20:24:19,752.752 INFO    ] ================================================
[2026-08-31 20:24:20,331.331 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:24:20
[2026-08-31 20:24:20,928.928 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:24:21,204.204 INFO    ] Initializing speech engine...
[2026-08-31 20:24:21,208.208 INFO    ] 2026-08-31 20:24:21
[2026-08-31 20:24:21,480.480 INFO    ] 2026-08-31 20:24:21
[2026-08-31 20:24:21,514.514 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:24:21,724.724 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:24:21,781.781 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:24:21,921.921 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:24:21,982.982 INFO    ] time= 31/08/2026 20:24:21
[2026-08-31 20:24:22,031.031 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:24:22,053.053 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:24:22,169.169 INFO    ] No existing commands found in stream
[2026-08-31 20:24:27,199.199 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:24:27,202.202 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-08-31 20:24:30,483.483 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 20:24:30,485.485 INFO    ] Checking for system updates...
[2026-08-31 20:24:30,521.521 INFO    ] 200
[2026-08-31 20:24:30,524.524 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:24:30,585.585 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:24:30,588.588 INFO    ] No update needed
[2026-08-31 20:24:30,591.591 INFO    ] Checking for camera pi updates...
[2026-08-31 20:24:30,625.625 INFO    ] 200
[2026-08-31 20:24:30,628.628 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:24:30,673.673 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:24:30,767.767 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:24:30,769.769 INFO    ] No camera update needed
[2026-08-31 20:24:30,772.772 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:24:30,774.774 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:24:30,779.779 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:24:30,784.784 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:24:32,825.825 INFO    ] ================================================
[2026-08-31 20:24:32,841.841 INFO    ] Launching Daemon at Mon Aug 31 20:24:32 IST 2026
[2026-08-31 20:24:32,852.852 INFO    ] ================================================
[2026-08-31 20:24:33,419.419 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:24:33
[2026-08-31 20:24:34,020.020 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:24:34,304.304 INFO    ] Initializing speech engine...
[2026-08-31 20:24:34,313.313 INFO    ] 2026-08-31 20:24:34
[2026-08-31 20:24:34,585.585 INFO    ] 2026-08-31 20:24:34
[2026-08-31 20:24:34,643.643 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:24:34,876.876 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:24:34,885.885 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:24:35,025.025 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:24:35,080.080 INFO    ] time= 31/08/2026 20:24:35
[2026-08-31 20:24:35,145.145 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:24:35,163.163 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:24:35,304.304 INFO    ] No existing commands found in stream
[2026-08-31 20:24:40,327.327 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:24:40,330.330 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-08-31 20:24:42,858.858 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 20:24:42,860.860 INFO    ] Checking for system updates...
[2026-08-31 20:24:42,902.902 INFO    ] 200
[2026-08-31 20:24:42,905.905 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:24:42,971.971 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:24:42,973.973 INFO    ] No update needed
[2026-08-31 20:24:42,976.976 INFO    ] Checking for camera pi updates...
[2026-08-31 20:24:43,014.014 INFO    ] 200
[2026-08-31 20:24:43,016.016 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:24:43,059.059 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:24:43,140.140 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:24:43,143.143 INFO    ] No camera update needed
[2026-08-31 20:24:43,146.146 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:24:43,149.149 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:24:43,154.154 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:24:43,159.159 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:24:45,200.200 INFO    ] ================================================
[2026-08-31 20:24:45,216.216 INFO    ] Launching Daemon at Mon Aug 31 20:24:45 IST 2026
[2026-08-31 20:24:45,227.227 INFO    ] ================================================
[2026-08-31 20:24:45,817.817 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:24:45
[2026-08-31 20:24:46,441.441 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:24:46,708.708 INFO    ] Initializing speech engine...
[2026-08-31 20:24:46,719.719 INFO    ] 2026-08-31 20:24:46
[2026-08-31 20:24:46,978.978 INFO    ] 2026-08-31 20:24:46
[2026-08-31 20:24:47,008.008 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:24:47,251.251 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:24:47,260.260 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:24:47,430.430 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:24:47,469.469 INFO    ] time= 31/08/2026 20:24:47
[2026-08-31 20:24:47,519.519 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:24:47,526.526 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:24:47,660.660 INFO    ] No existing commands found in stream
[2026-08-31 20:24:52,681.681 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:24:52,684.684 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-08-31 20:24:54,693.693 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 20:24:54,696.696 INFO    ] Checking for system updates...
[2026-08-31 20:24:54,735.735 INFO    ] 200
[2026-08-31 20:24:54,738.738 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:24:54,795.795 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:24:54,798.798 INFO    ] No update needed
[2026-08-31 20:24:54,801.801 INFO    ] Checking for camera pi updates...
[2026-08-31 20:24:54,838.838 INFO    ] 200
[2026-08-31 20:24:54,841.841 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:24:54,885.885 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:24:54,972.972 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:24:54,975.975 INFO    ] No camera update needed
[2026-08-31 20:24:54,978.978 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:24:54,980.980 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:24:54,986.986 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:24:54,992.992 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:24:57,032.032 INFO    ] ================================================
[2026-08-31 20:24:57,048.048 INFO    ] Launching Daemon at Mon Aug 31 20:24:57 IST 2026
[2026-08-31 20:24:57,058.058 INFO    ] ================================================
[2026-08-31 20:24:57,653.653 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:24:57
[2026-08-31 20:24:58,237.237 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:24:58,506.506 INFO    ] Initializing speech engine...
[2026-08-31 20:24:58,516.516 INFO    ] 2026-08-31 20:24:58
[2026-08-31 20:24:58,763.763 INFO    ] 2026-08-31 20:24:58
[2026-08-31 20:24:58,798.798 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:24:58,999.999 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:24:59,041.041 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:24:59,199.199 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:24:59,236.236 INFO    ] time= 31/08/2026 20:24:59
[2026-08-31 20:24:59,290.290 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:24:59,335.335 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:24:59,455.455 INFO    ] No existing commands found in stream
[2026-08-31 20:25:04,479.479 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:25:04,482.482 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-08-31 20:25:07,932.932 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 20:25:07,935.935 INFO    ] Checking for system updates...
[2026-08-31 20:25:07,975.975 INFO    ] 200
[2026-08-31 20:25:07,977.977 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:25:08,029.029 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:25:08,032.032 INFO    ] No update needed
[2026-08-31 20:25:08,034.034 INFO    ] Checking for camera pi updates...
[2026-08-31 20:25:08,071.071 INFO    ] 200
[2026-08-31 20:25:08,073.073 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:25:08,114.114 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:25:08,315.315 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:25:08,318.318 INFO    ] No camera update needed
[2026-08-31 20:25:08,320.320 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:25:08,323.323 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:25:08,328.328 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:25:08,333.333 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:25:10,372.372 INFO    ] ================================================
[2026-08-31 20:25:10,388.388 INFO    ] Launching Daemon at Mon Aug 31 20:25:10 IST 2026
[2026-08-31 20:25:10,399.399 INFO    ] ================================================
[2026-08-31 20:25:11,039.039 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:25:11
[2026-08-31 20:25:11,622.622 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:25:11,927.927 INFO    ] Initializing speech engine...
[2026-08-31 20:25:11,941.941 INFO    ] 2026-08-31 20:25:11
[2026-08-31 20:25:12,212.212 INFO    ] 2026-08-31 20:25:12
[2026-08-31 20:25:12,277.277 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:25:12,531.531 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:25:12,538.538 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:25:12,729.729 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:25:12,774.774 INFO    ] time= 31/08/2026 20:25:12
[2026-08-31 20:25:12,791.791 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:25:12,802.802 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:25:12,928.928 INFO    ] No existing commands found in stream
[2026-08-31 20:25:17,943.943 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:25:17,947.947 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-08-31 20:25:19,763.763 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 20:25:19,765.765 INFO    ] Checking for system updates...
[2026-08-31 20:25:19,802.802 INFO    ] 200
[2026-08-31 20:25:19,804.804 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:25:19,860.860 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:25:19,862.862 INFO    ] No update needed
[2026-08-31 20:25:19,865.865 INFO    ] Checking for camera pi updates...
[2026-08-31 20:25:19,898.898 INFO    ] 200
[2026-08-31 20:25:19,901.901 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:25:19,941.941 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:25:20,021.021 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:25:20,023.023 INFO    ] No camera update needed
[2026-08-31 20:25:20,025.025 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:25:20,028.028 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:25:20,033.033 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:25:20,038.038 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:25:22,079.079 INFO    ] ================================================
[2026-08-31 20:25:22,095.095 INFO    ] Launching Daemon at Mon Aug 31 20:25:22 IST 2026
[2026-08-31 20:25:22,107.107 INFO    ] ================================================
[2026-08-31 20:25:22,687.687 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:25:22
[2026-08-31 20:25:23,285.285 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:25:23,565.565 INFO    ] Initializing speech engine...
[2026-08-31 20:25:23,578.578 INFO    ] 2026-08-31 20:25:23
[2026-08-31 20:25:23,848.848 INFO    ] 2026-08-31 20:25:23
[2026-08-31 20:25:23,884.884 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:25:24,142.142 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:25:24,148.148 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:25:24,286.286 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:25:24,368.368 INFO    ] time= 31/08/2026 20:25:24
[2026-08-31 20:25:24,418.418 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:25:24,429.429 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:25:24,565.565 INFO    ] No existing commands found in stream
[2026-08-31 20:25:29,593.593 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:25:29,596.596 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-08-31 20:25:31,068.068 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 20:25:31,070.070 INFO    ] Checking for system updates...
[2026-08-31 20:25:31,111.111 INFO    ] 200
[2026-08-31 20:25:31,114.114 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:25:31,173.173 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:25:31,176.176 INFO    ] No update needed
[2026-08-31 20:25:31,179.179 INFO    ] Checking for camera pi updates...
[2026-08-31 20:25:31,217.217 INFO    ] 200
[2026-08-31 20:25:31,220.220 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:25:31,270.270 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:25:31,351.351 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:25:31,353.353 INFO    ] No camera update needed
[2026-08-31 20:25:31,356.356 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:25:31,359.359 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:25:31,365.365 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:25:31,371.371 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:25:33,412.412 INFO    ] ================================================
[2026-08-31 20:25:33,428.428 INFO    ] Launching Daemon at Mon Aug 31 20:25:33 IST 2026
[2026-08-31 20:25:33,440.440 INFO    ] ================================================
[2026-08-31 20:25:34,008.008 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:25:34
[2026-08-31 20:25:34,591.591 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:25:34,886.886 INFO    ] Initializing speech engine...
[2026-08-31 20:25:34,894.894 INFO    ] 2026-08-31 20:25:34
[2026-08-31 20:25:35,168.168 INFO    ] 2026-08-31 20:25:35
[2026-08-31 20:25:35,223.223 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:25:35,450.450 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:25:35,455.455 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:25:35,628.628 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:25:35,672.672 INFO    ] time= 31/08/2026 20:25:35
[2026-08-31 20:25:35,723.723 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:25:35,729.729 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:25:35,858.858 INFO    ] No existing commands found in stream
[2026-08-31 20:25:40,883.883 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:25:40,886.886 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-08-31 20:25:42,586.586 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 20:25:42,589.589 INFO    ] Checking for system updates...
[2026-08-31 20:25:42,624.624 INFO    ] 200
[2026-08-31 20:25:42,627.627 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:25:42,684.684 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:25:42,686.686 INFO    ] No update needed
[2026-08-31 20:25:42,689.689 INFO    ] Checking for camera pi updates...
[2026-08-31 20:25:42,722.722 INFO    ] 200
[2026-08-31 20:25:42,725.725 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:25:42,764.764 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:25:42,863.863 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:25:42,866.866 INFO    ] No camera update needed
[2026-08-31 20:25:42,868.868 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:25:42,871.871 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:25:42,876.876 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:25:42,881.881 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:25:44,921.921 INFO    ] ================================================
[2026-08-31 20:25:44,937.937 INFO    ] Launching Daemon at Mon Aug 31 20:25:44 IST 2026
[2026-08-31 20:25:44,949.949 INFO    ] ================================================
[2026-08-31 20:25:45,587.587 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:25:45
[2026-08-31 20:25:46,246.246 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:25:46,548.548 INFO    ] Initializing speech engine...
[2026-08-31 20:25:46,560.560 INFO    ] 2026-08-31 20:25:46
[2026-08-31 20:25:46,845.845 INFO    ] 2026-08-31 20:25:46
[2026-08-31 20:25:46,884.884 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:25:47,176.176 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:25:47,181.181 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:25:47,376.376 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:25:47,388.388 INFO    ] time= 31/08/2026 20:25:47
[2026-08-31 20:25:47,409.409 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:25:47,429.429 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:25:47,559.559 INFO    ] No existing commands found in stream
[2026-08-31 20:25:52,590.590 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:25:52,594.594 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-08-31 20:25:56,146.146 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 20:25:56,149.149 INFO    ] Checking for system updates...
[2026-08-31 20:25:56,184.184 INFO    ] 200
[2026-08-31 20:25:56,186.186 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:25:56,238.238 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:25:56,240.240 INFO    ] No update needed
[2026-08-31 20:25:56,242.242 INFO    ] Checking for camera pi updates...
[2026-08-31 20:25:56,277.277 INFO    ] 200
[2026-08-31 20:25:56,280.280 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:25:56,324.324 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:25:56,402.402 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:25:56,404.404 INFO    ] No camera update needed
[2026-08-31 20:25:56,406.406 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:25:56,409.409 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:25:56,414.414 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:25:56,419.419 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:25:58,459.459 INFO    ] ================================================
[2026-08-31 20:25:58,475.475 INFO    ] Launching Daemon at Mon Aug 31 20:25:58 IST 2026
[2026-08-31 20:25:58,486.486 INFO    ] ================================================
[2026-08-31 20:25:59,051.051 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:25:59
[2026-08-31 20:25:59,634.634 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:25:59,934.934 INFO    ] Initializing speech engine...
[2026-08-31 20:25:59,940.940 INFO    ] 2026-08-31 20:25:59
[2026-08-31 20:26:00,211.211 INFO    ] 2026-08-31 20:26:00
[2026-08-31 20:26:00,272.272 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:26:00,507.507 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:26:00,529.529 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:26:00,733.733 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:26:00,779.779 INFO    ] time= 31/08/2026 20:26:00
[2026-08-31 20:26:00,796.796 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:26:00,816.816 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:26:00,935.935 INFO    ] No existing commands found in stream
[2026-08-31 20:26:05,949.949 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:26:05,952.952 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-08-31 20:26:07,619.619 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 20:26:07,622.622 INFO    ] Checking for system updates...
[2026-08-31 20:26:07,657.657 INFO    ] 200
[2026-08-31 20:26:07,660.660 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:26:07,717.717 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:26:07,720.720 INFO    ] No update needed
[2026-08-31 20:26:07,723.723 INFO    ] Checking for camera pi updates...
[2026-08-31 20:26:07,758.758 INFO    ] 200
[2026-08-31 20:26:07,760.760 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:26:07,804.804 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:26:07,886.886 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:26:07,889.889 INFO    ] No camera update needed
[2026-08-31 20:26:07,892.892 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:26:07,894.894 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:26:07,900.900 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:26:07,905.905 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:26:09,945.945 INFO    ] ================================================
[2026-08-31 20:26:09,961.961 INFO    ] Launching Daemon at Mon Aug 31 20:26:09 IST 2026
[2026-08-31 20:26:09,972.972 INFO    ] ================================================
[2026-08-31 20:26:10,534.534 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:26:10
[2026-08-31 20:26:11,114.114 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:26:11,360.360 INFO    ] Initializing speech engine...
[2026-08-31 20:26:11,365.365 INFO    ] 2026-08-31 20:26:11
[2026-08-31 20:26:11,652.652 INFO    ] 2026-08-31 20:26:11
[2026-08-31 20:26:11,689.689 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:26:11,877.877 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:26:11,890.890 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:26:12,048.048 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:26:12,053.053 INFO    ] time= 31/08/2026 20:26:12
[2026-08-31 20:26:12,060.060 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:26:12,112.112 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:26:12,238.238 INFO    ] No existing commands found in stream
[2026-08-31 20:26:17,263.263 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:26:17,265.265 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-08-31 20:26:18,881.881 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 20:26:18,884.884 INFO    ] Checking for system updates...
[2026-08-31 20:26:18,921.921 INFO    ] 200
[2026-08-31 20:26:18,923.923 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:26:18,975.975 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:26:18,978.978 INFO    ] No update needed
[2026-08-31 20:26:18,980.980 INFO    ] Checking for camera pi updates...
[2026-08-31 20:26:19,013.013 INFO    ] 200
[2026-08-31 20:26:19,016.016 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:26:19,058.058 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:26:19,139.139 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:26:19,142.142 INFO    ] No camera update needed
[2026-08-31 20:26:19,144.144 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:26:19,146.146 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:26:19,152.152 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:26:19,156.156 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:26:21,197.197 INFO    ] ================================================
[2026-08-31 20:26:21,213.213 INFO    ] Launching Daemon at Mon Aug 31 20:26:21 IST 2026
[2026-08-31 20:26:21,224.224 INFO    ] ================================================
[2026-08-31 20:26:21,803.803 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:26:21
[2026-08-31 20:26:22,399.399 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:26:22,670.670 INFO    ] Initializing speech engine...
[2026-08-31 20:26:22,680.680 INFO    ] 2026-08-31 20:26:22
[2026-08-31 20:26:22,934.934 INFO    ] 2026-08-31 20:26:22
[2026-08-31 20:26:22,992.992 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:26:23,219.219 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:26:23,224.224 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:26:23,437.437 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:26:23,480.480 INFO    ] time= 31/08/2026 20:26:23
[2026-08-31 20:26:23,486.486 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:26:23,504.504 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:26:23,614.614 INFO    ] No existing commands found in stream
[2026-08-31 20:26:28,639.639 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:26:28,642.642 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-08-31 20:26:30,402.402 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 20:26:30,404.404 INFO    ] Checking for system updates...
[2026-08-31 20:26:30,440.440 INFO    ] 200
[2026-08-31 20:26:30,442.442 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:26:30,499.499 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:26:30,501.501 INFO    ] No update needed
[2026-08-31 20:26:30,503.503 INFO    ] Checking for camera pi updates...
[2026-08-31 20:26:30,539.539 INFO    ] 200
[2026-08-31 20:26:30,542.542 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:26:30,582.582 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:26:30,667.667 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:26:30,670.670 INFO    ] No camera update needed
[2026-08-31 20:26:30,672.672 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:26:30,674.674 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:26:30,680.680 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:26:30,685.685 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:26:32,731.731 INFO    ] ================================================
[2026-08-31 20:26:32,750.750 INFO    ] Launching Daemon at Mon Aug 31 20:26:32 IST 2026
[2026-08-31 20:26:32,762.762 INFO    ] ================================================
[2026-08-31 20:26:33,409.409 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:26:33
[2026-08-31 20:26:34,056.056 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:26:34,347.347 INFO    ] Initializing speech engine...
[2026-08-31 20:26:34,355.355 INFO    ] 2026-08-31 20:26:34
[2026-08-31 20:26:34,635.635 INFO    ] 2026-08-31 20:26:34
[2026-08-31 20:26:34,678.678 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:26:34,915.915 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:26:34,936.936 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:26:35,128.128 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:26:35,180.180 INFO    ] time= 31/08/2026 20:26:35
[2026-08-31 20:26:35,188.188 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:26:35,209.209 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:26:35,336.336 INFO    ] No existing commands found in stream
[2026-08-31 20:26:40,350.350 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:26:40,353.353 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-08-31 20:26:41,819.819 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 20:26:41,822.822 INFO    ] Checking for system updates...
[2026-08-31 20:26:41,858.858 INFO    ] 200
[2026-08-31 20:26:41,861.861 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:26:41,912.912 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:26:41,914.914 INFO    ] No update needed
[2026-08-31 20:26:41,917.917 INFO    ] Checking for camera pi updates...
[2026-08-31 20:26:41,950.950 INFO    ] 200
[2026-08-31 20:26:41,952.952 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:26:41,997.997 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:26:42,085.085 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:26:42,088.088 INFO    ] No camera update needed
[2026-08-31 20:26:42,090.090 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:26:42,093.093 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:26:42,099.099 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:26:42,104.104 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:26:44,144.144 INFO    ] ================================================
[2026-08-31 20:26:44,160.160 INFO    ] Launching Daemon at Mon Aug 31 20:26:44 IST 2026
[2026-08-31 20:26:44,170.170 INFO    ] ================================================
[2026-08-31 20:26:44,735.735 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:26:44
[2026-08-31 20:26:45,331.331 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:26:45,602.602 INFO    ] Initializing speech engine...
[2026-08-31 20:26:45,611.611 INFO    ] 2026-08-31 20:26:45
[2026-08-31 20:26:45,859.859 INFO    ] 2026-08-31 20:26:45
[2026-08-31 20:26:45,894.894 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:26:46,144.144 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:26:46,153.153 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:26:46,372.372 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:26:46,411.411 INFO    ] time= 31/08/2026 20:26:46
[2026-08-31 20:26:46,416.416 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:26:46,438.438 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:26:46,603.603 INFO    ] No existing commands found in stream
[2026-08-31 20:26:51,628.628 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:26:51,631.631 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-08-31 20:26:54,329.329 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 20:26:54,332.332 INFO    ] Checking for system updates...
[2026-08-31 20:26:54,367.367 INFO    ] 200
[2026-08-31 20:26:54,370.370 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:26:54,430.430 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:26:54,433.433 INFO    ] No update needed
[2026-08-31 20:26:54,435.435 INFO    ] Checking for camera pi updates...
[2026-08-31 20:26:54,470.470 INFO    ] 200
[2026-08-31 20:26:54,473.473 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:26:54,514.514 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:26:54,589.589 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:26:54,592.592 INFO    ] No camera update needed
[2026-08-31 20:26:54,595.595 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:26:54,597.597 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:26:54,603.603 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:26:54,609.609 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:26:56,649.649 INFO    ] ================================================
[2026-08-31 20:26:56,664.664 INFO    ] Launching Daemon at Mon Aug 31 20:26:56 IST 2026
[2026-08-31 20:26:56,675.675 INFO    ] ================================================
[2026-08-31 20:26:57,244.244 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:26:57
[2026-08-31 20:26:57,826.826 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:26:58,097.097 INFO    ] Initializing speech engine...
[2026-08-31 20:26:58,106.106 INFO    ] 2026-08-31 20:26:58
[2026-08-31 20:26:58,356.356 INFO    ] 2026-08-31 20:26:58
[2026-08-31 20:26:58,391.391 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:26:58,565.565 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:26:58,577.577 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:26:58,726.726 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:26:58,731.731 INFO    ] time= 31/08/2026 20:26:58
[2026-08-31 20:26:58,738.738 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:26:58,786.786 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:26:58,938.938 INFO    ] No existing commands found in stream
[2026-08-31 20:27:03,949.949 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:27:03,952.952 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-08-31 20:27:06,971.971 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 20:27:06,974.974 INFO    ] Checking for system updates...
[2026-08-31 20:27:07,011.011 INFO    ] 200
[2026-08-31 20:27:07,013.013 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:27:07,070.070 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:27:07,072.072 INFO    ] No update needed
[2026-08-31 20:27:07,074.074 INFO    ] Checking for camera pi updates...
[2026-08-31 20:27:07,108.108 INFO    ] 200
[2026-08-31 20:27:07,110.110 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:27:07,150.150 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:27:07,212.212 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:27:07,215.215 INFO    ] No camera update needed
[2026-08-31 20:27:07,217.217 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:27:07,220.220 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:27:07,226.226 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:27:07,231.231 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:27:09,271.271 INFO    ] ================================================
[2026-08-31 20:27:09,286.286 INFO    ] Launching Daemon at Mon Aug 31 20:27:09 IST 2026
[2026-08-31 20:27:09,296.296 INFO    ] ================================================
[2026-08-31 20:27:09,922.922 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:27:09
[2026-08-31 20:27:10,530.530 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:27:10,812.812 INFO    ] Initializing speech engine...
[2026-08-31 20:27:10,822.822 INFO    ] 2026-08-31 20:27:10
[2026-08-31 20:27:11,076.076 INFO    ] 2026-08-31 20:27:11
[2026-08-31 20:27:11,111.111 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:27:11,283.283 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:27:11,295.295 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:27:11,443.443 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:27:11,500.500 INFO    ] time= 31/08/2026 20:27:11
[2026-08-31 20:27:11,512.512 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:27:11,571.571 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:27:11,685.685 INFO    ] No existing commands found in stream
[2026-08-31 20:27:16,697.697 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:27:16,700.700 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-08-31 20:27:19,334.334 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 20:27:19,337.337 INFO    ] Checking for system updates...
[2026-08-31 20:27:19,373.373 INFO    ] 200
[2026-08-31 20:27:19,375.375 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:27:19,428.428 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:27:19,430.430 INFO    ] No update needed
[2026-08-31 20:27:19,433.433 INFO    ] Checking for camera pi updates...
[2026-08-31 20:27:19,467.467 INFO    ] 200
[2026-08-31 20:27:19,470.470 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:27:19,511.511 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:27:19,696.696 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:27:19,699.699 INFO    ] No camera update needed
[2026-08-31 20:27:19,702.702 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:27:19,704.704 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:27:19,710.710 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:27:19,715.715 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:27:21,755.755 INFO    ] ================================================
[2026-08-31 20:27:21,770.770 INFO    ] Launching Daemon at Mon Aug 31 20:27:21 IST 2026
[2026-08-31 20:27:21,781.781 INFO    ] ================================================
[2026-08-31 20:27:22,362.362 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:27:22
[2026-08-31 20:27:22,960.960 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:27:23,236.236 INFO    ] Initializing speech engine...
[2026-08-31 20:27:23,243.243 INFO    ] 2026-08-31 20:27:23
[2026-08-31 20:27:23,503.503 INFO    ] 2026-08-31 20:27:23
[2026-08-31 20:27:23,533.533 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:27:23,778.778 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:27:23,788.788 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:27:23,921.921 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:27:23,986.986 INFO    ] time= 31/08/2026 20:27:23
[2026-08-31 20:27:24,046.046 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:27:24,056.056 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:27:24,198.198 INFO    ] No existing commands found in stream
[2026-08-31 20:27:29,212.212 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:27:29,215.215 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-08-31 20:27:33,180.180 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 20:27:33,183.183 INFO    ] Checking for system updates...
[2026-08-31 20:27:33,223.223 INFO    ] 200
[2026-08-31 20:27:33,225.225 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:27:33,283.283 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:27:33,286.286 INFO    ] No update needed
[2026-08-31 20:27:33,289.289 INFO    ] Checking for camera pi updates...
[2026-08-31 20:27:33,324.324 INFO    ] 200
[2026-08-31 20:27:33,326.326 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:27:33,367.367 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:27:33,450.450 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:27:33,452.452 INFO    ] No camera update needed
[2026-08-31 20:27:33,455.455 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:27:33,457.457 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:27:33,463.463 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:27:33,469.469 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:27:35,510.510 INFO    ] ================================================
[2026-08-31 20:27:35,526.526 INFO    ] Launching Daemon at Mon Aug 31 20:27:35 IST 2026
[2026-08-31 20:27:35,536.536 INFO    ] ================================================
[2026-08-31 20:27:36,170.170 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:27:36
[2026-08-31 20:27:36,818.818 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:27:37,113.113 INFO    ] Initializing speech engine...
[2026-08-31 20:27:37,124.124 INFO    ] 2026-08-31 20:27:37
[2026-08-31 20:27:37,387.387 INFO    ] 2026-08-31 20:27:37
[2026-08-31 20:27:37,440.440 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:27:37,688.688 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:27:37,717.717 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:27:37,926.926 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:27:37,934.934 INFO    ] time= 31/08/2026 20:27:37
[2026-08-31 20:27:37,952.952 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:27:37,981.981 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:27:38,087.087 INFO    ] No existing commands found in stream
[2026-08-31 20:27:43,108.108 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:27:43,111.111 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-08-31 20:27:46,004.004 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 20:27:46,007.007 INFO    ] Checking for system updates...
[2026-08-31 20:27:46,043.043 INFO    ] 200
[2026-08-31 20:27:46,046.046 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:27:46,103.103 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:27:46,106.106 INFO    ] No update needed
[2026-08-31 20:27:46,109.109 INFO    ] Checking for camera pi updates...
[2026-08-31 20:27:46,152.152 INFO    ] 200
[2026-08-31 20:27:46,155.155 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:27:46,200.200 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:27:46,280.280 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:27:46,283.283 INFO    ] No camera update needed
[2026-08-31 20:27:46,286.286 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:27:46,289.289 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:27:46,295.295 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:27:46,300.300 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:27:48,345.345 INFO    ] ================================================
[2026-08-31 20:27:48,360.360 INFO    ] Launching Daemon at Mon Aug 31 20:27:48 IST 2026
[2026-08-31 20:27:48,371.371 INFO    ] ================================================
[2026-08-31 20:27:48,997.997 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:27:48
[2026-08-31 20:27:49,641.641 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:27:49,934.934 INFO    ] Initializing speech engine...
[2026-08-31 20:27:49,943.943 INFO    ] 2026-08-31 20:27:49
[2026-08-31 20:27:50,219.219 INFO    ] 2026-08-31 20:27:50
[2026-08-31 20:27:50,294.294 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:27:50,450.450 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:27:50,464.464 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:27:50,610.610 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:27:50,612.612 INFO    ] time= 31/08/2026 20:27:50
[2026-08-31 20:27:50,615.615 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:27:50,617.617 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:27:50,695.695 INFO    ] No existing commands found in stream
[2026-08-31 20:27:55,709.709 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:27:55,712.712 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-08-31 20:27:58,335.335 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 20:27:58,338.338 INFO    ] Checking for system updates...
[2026-08-31 20:27:58,373.373 INFO    ] 200
[2026-08-31 20:27:58,376.376 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:27:58,432.432 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:27:58,434.434 INFO    ] No update needed
[2026-08-31 20:27:58,437.437 INFO    ] Checking for camera pi updates...
[2026-08-31 20:27:58,470.470 INFO    ] 200
[2026-08-31 20:27:58,472.472 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:27:58,517.517 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:27:58,618.618 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:27:58,620.620 INFO    ] No camera update needed
[2026-08-31 20:27:58,622.622 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:27:58,625.625 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:27:58,630.630 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:27:58,635.635 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:28:00,674.674 INFO    ] ================================================
[2026-08-31 20:28:00,690.690 INFO    ] Launching Daemon at Mon Aug 31 20:28:00 IST 2026
[2026-08-31 20:28:00,700.700 INFO    ] ================================================
[2026-08-31 20:28:01,319.319 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:28:01
[2026-08-31 20:28:02,082.082 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:28:02,378.378 INFO    ] Initializing speech engine...
[2026-08-31 20:28:02,381.381 INFO    ] 2026-08-31 20:28:02
[2026-08-31 20:28:02,702.702 INFO    ] 2026-08-31 20:28:02
[2026-08-31 20:28:02,729.729 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:28:02,979.979 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:28:03,000.000 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:28:03,174.174 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:28:03,182.182 INFO    ] time= 31/08/2026 20:28:03
[2026-08-31 20:28:03,222.222 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:28:03,262.262 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:28:03,398.398 INFO    ] No existing commands found in stream
[2026-08-31 20:28:08,420.420 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:28:08,423.423 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-08-31 20:28:12,731.731 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 20:28:12,734.734 INFO    ] Checking for system updates...
[2026-08-31 20:28:12,769.769 INFO    ] 200
[2026-08-31 20:28:12,771.771 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:28:12,824.824 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:28:12,826.826 INFO    ] No update needed
[2026-08-31 20:28:12,829.829 INFO    ] Checking for camera pi updates...
[2026-08-31 20:28:12,862.862 INFO    ] 200
[2026-08-31 20:28:12,864.864 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:28:12,908.908 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:28:12,988.988 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:28:12,990.990 INFO    ] No camera update needed
[2026-08-31 20:28:12,993.993 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:28:12,995.995 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:28:13,000.000 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:28:13,005.005 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:28:15,047.047 INFO    ] ================================================
[2026-08-31 20:28:15,062.062 INFO    ] Launching Daemon at Mon Aug 31 20:28:15 IST 2026
[2026-08-31 20:28:15,073.073 INFO    ] ================================================
[2026-08-31 20:28:15,649.649 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:28:15
[2026-08-31 20:28:16,244.244 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:28:16,503.503 INFO    ] Initializing speech engine...
[2026-08-31 20:28:16,528.528 INFO    ] 2026-08-31 20:28:16
[2026-08-31 20:28:16,795.795 INFO    ] 2026-08-31 20:28:16
[2026-08-31 20:28:16,830.830 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:28:17,042.042 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:28:17,051.051 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:28:17,187.187 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:28:17,196.196 INFO    ] time= 31/08/2026 20:28:17
[2026-08-31 20:28:17,202.202 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:28:17,249.249 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:28:17,392.392 INFO    ] No existing commands found in stream
[2026-08-31 20:28:22,418.418 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:28:22,421.421 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-08-31 20:28:24,545.545 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 20:28:24,548.548 INFO    ] Checking for system updates...
[2026-08-31 20:28:24,583.583 INFO    ] 200
[2026-08-31 20:28:24,586.586 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:28:24,643.643 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:28:24,646.646 INFO    ] No update needed
[2026-08-31 20:28:24,648.648 INFO    ] Checking for camera pi updates...
[2026-08-31 20:28:24,682.682 INFO    ] 200
[2026-08-31 20:28:24,684.684 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:28:24,724.724 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:28:24,799.799 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:28:24,801.801 INFO    ] No camera update needed
[2026-08-31 20:28:24,803.803 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:28:24,806.806 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:28:24,811.811 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:28:24,816.816 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:28:26,855.855 INFO    ] ================================================
[2026-08-31 20:28:26,870.870 INFO    ] Launching Daemon at Mon Aug 31 20:28:26 IST 2026
[2026-08-31 20:28:26,881.881 INFO    ] ================================================
[2026-08-31 20:28:27,499.499 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:28:27
[2026-08-31 20:28:28,134.134 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:28:28,424.424 INFO    ] Initializing speech engine...
[2026-08-31 20:28:28,430.430 INFO    ] 2026-08-31 20:28:28
[2026-08-31 20:28:28,701.701 INFO    ] 2026-08-31 20:28:28
[2026-08-31 20:28:28,753.753 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:28:28,979.979 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:28:28,984.984 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:28:29,213.213 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:28:29,242.242 INFO    ] time= 31/08/2026 20:28:29
[2026-08-31 20:28:29,258.258 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:28:29,267.267 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:28:29,393.393 INFO    ] No existing commands found in stream
[2026-08-31 20:28:34,415.415 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:28:34,418.418 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-08-31 20:28:37,896.896 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 20:28:37,899.899 INFO    ] Checking for system updates...
[2026-08-31 20:28:37,935.935 INFO    ] 200
[2026-08-31 20:28:37,938.938 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:28:37,990.990 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:28:37,993.993 INFO    ] No update needed
[2026-08-31 20:28:37,995.995 INFO    ] Checking for camera pi updates...
[2026-08-31 20:28:38,030.030 INFO    ] 200
[2026-08-31 20:28:38,032.032 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:28:38,073.073 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:28:38,173.173 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:28:38,176.176 INFO    ] No camera update needed
[2026-08-31 20:28:38,179.179 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:28:38,181.181 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:28:38,187.187 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:28:38,193.193 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:28:40,233.233 INFO    ] ================================================
[2026-08-31 20:28:40,253.253 INFO    ] Launching Daemon at Mon Aug 31 20:28:40 IST 2026
[2026-08-31 20:28:40,263.263 INFO    ] ================================================
[2026-08-31 20:28:40,831.831 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:28:40
[2026-08-31 20:28:41,415.415 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:28:41,670.670 INFO    ] Initializing speech engine...
[2026-08-31 20:28:41,685.685 INFO    ] 2026-08-31 20:28:41
[2026-08-31 20:28:41,963.963 INFO    ] 2026-08-31 20:28:41
[2026-08-31 20:28:41,997.997 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:28:42,210.210 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:28:42,253.253 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:28:42,429.429 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:28:42,435.435 INFO    ] time= 31/08/2026 20:28:42
[2026-08-31 20:28:42,495.495 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:28:42,544.544 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:28:42,637.637 INFO    ] No existing commands found in stream
[2026-08-31 20:28:47,653.653 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:28:47,655.655 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-08-31 20:28:52,098.098 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 20:28:52,100.100 INFO    ] Checking for system updates...
[2026-08-31 20:28:52,136.136 INFO    ] 200
[2026-08-31 20:28:52,139.139 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:28:52,194.194 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:28:52,197.197 INFO    ] No update needed
[2026-08-31 20:28:52,199.199 INFO    ] Checking for camera pi updates...
[2026-08-31 20:28:52,233.233 INFO    ] 200
[2026-08-31 20:28:52,235.235 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:28:52,279.279 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:28:52,361.361 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:28:52,364.364 INFO    ] No camera update needed
[2026-08-31 20:28:52,366.366 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:28:52,368.368 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:28:52,374.374 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:28:52,379.379 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:28:54,418.418 INFO    ] ================================================
[2026-08-31 20:28:54,433.433 INFO    ] Launching Daemon at Mon Aug 31 20:28:54 IST 2026
[2026-08-31 20:28:54,444.444 INFO    ] ================================================
[2026-08-31 20:28:55,011.011 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:28:55
[2026-08-31 20:28:55,596.596 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:28:55,862.862 INFO    ] Initializing speech engine...
[2026-08-31 20:28:55,882.882 INFO    ] 2026-08-31 20:28:55
[2026-08-31 20:28:56,142.142 INFO    ] 2026-08-31 20:28:56
[2026-08-31 20:28:56,179.179 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:28:56,367.367 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:28:56,381.381 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:28:56,602.602 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:28:56,622.622 INFO    ] time= 31/08/2026 20:28:56
[2026-08-31 20:28:56,681.681 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:28:56,736.736 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:28:56,873.873 INFO    ] No existing commands found in stream
[2026-08-31 20:29:01,890.890 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:29:01,894.894 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-08-31 20:29:06,313.313 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 20:29:06,317.317 INFO    ] Checking for system updates...
[2026-08-31 20:29:06,364.364 INFO    ] 200
[2026-08-31 20:29:06,368.368 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:29:06,422.422 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:29:06,424.424 INFO    ] No update needed
[2026-08-31 20:29:06,426.426 INFO    ] Checking for camera pi updates...
[2026-08-31 20:29:06,460.460 INFO    ] 200
[2026-08-31 20:29:06,462.462 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:29:06,502.502 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:29:06,587.587 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:29:06,589.589 INFO    ] No camera update needed
[2026-08-31 20:29:06,592.592 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:29:06,594.594 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:29:06,599.599 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:29:06,604.604 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:29:08,645.645 INFO    ] ================================================
[2026-08-31 20:29:08,660.660 INFO    ] Launching Daemon at Mon Aug 31 20:29:08 IST 2026
[2026-08-31 20:29:08,671.671 INFO    ] ================================================
[2026-08-31 20:29:09,252.252 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:29:09
[2026-08-31 20:29:09,851.851 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:29:10,111.111 INFO    ] Initializing speech engine...
[2026-08-31 20:29:10,120.120 INFO    ] 2026-08-31 20:29:10
[2026-08-31 20:29:10,414.414 INFO    ] 2026-08-31 20:29:10
[2026-08-31 20:29:10,439.439 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:29:10,740.740 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:29:10,750.750 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:29:10,899.899 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:29:10,927.927 INFO    ] time= 31/08/2026 20:29:10
[2026-08-31 20:29:10,987.987 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:29:11,036.036 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:29:11,116.116 INFO    ] No existing commands found in stream
[2026-08-31 20:29:16,128.128 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:29:16,131.131 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-08-31 20:29:18,048.048 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 20:29:18,051.051 INFO    ] Checking for system updates...
[2026-08-31 20:29:18,086.086 INFO    ] 200
[2026-08-31 20:29:18,089.089 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:29:18,142.142 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:29:18,144.144 INFO    ] No update needed
[2026-08-31 20:29:18,147.147 INFO    ] Checking for camera pi updates...
[2026-08-31 20:29:18,180.180 INFO    ] 200
[2026-08-31 20:29:18,183.183 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:29:18,223.223 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:29:18,318.318 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:29:18,321.321 INFO    ] No camera update needed
[2026-08-31 20:29:18,323.323 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:29:18,326.326 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:29:18,331.331 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:29:18,337.337 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:29:20,377.377 INFO    ] ================================================
[2026-08-31 20:29:20,392.392 INFO    ] Launching Daemon at Mon Aug 31 20:29:20 IST 2026
[2026-08-31 20:29:20,403.403 INFO    ] ================================================
[2026-08-31 20:29:20,985.985 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:29:20
[2026-08-31 20:29:21,629.629 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:29:21,914.914 INFO    ] Initializing speech engine...
[2026-08-31 20:29:21,923.923 INFO    ] 2026-08-31 20:29:21
[2026-08-31 20:29:22,197.197 INFO    ] 2026-08-31 20:29:22
[2026-08-31 20:29:22,239.239 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:29:22,475.475 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:29:22,486.486 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:29:22,636.636 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:29:22,653.653 INFO    ] time= 31/08/2026 20:29:22
[2026-08-31 20:29:22,713.713 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:29:22,763.763 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:29:22,843.843 INFO    ] No existing commands found in stream
[2026-08-31 20:29:27,855.855 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:29:27,859.859 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-08-31 20:29:30,163.163 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 20:29:30,166.166 INFO    ] Checking for system updates...
[2026-08-31 20:29:30,202.202 INFO    ] 200
[2026-08-31 20:29:30,204.204 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:29:30,259.259 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:29:30,261.261 INFO    ] No update needed
[2026-08-31 20:29:30,264.264 INFO    ] Checking for camera pi updates...
[2026-08-31 20:29:30,298.298 INFO    ] 200
[2026-08-31 20:29:30,300.300 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:29:30,341.341 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:29:30,544.544 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:29:30,547.547 INFO    ] No camera update needed
[2026-08-31 20:29:30,552.552 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:29:30,555.555 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:29:30,561.561 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:29:30,567.567 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:29:32,610.610 INFO    ] ================================================
[2026-08-31 20:29:32,626.626 INFO    ] Launching Daemon at Mon Aug 31 20:29:32 IST 2026
[2026-08-31 20:29:32,638.638 INFO    ] ================================================
[2026-08-31 20:29:33,313.313 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:29:33
[2026-08-31 20:29:33,975.975 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:29:34,280.280 INFO    ] Initializing speech engine...
[2026-08-31 20:29:34,292.292 INFO    ] 2026-08-31 20:29:34
[2026-08-31 20:29:34,599.599 INFO    ] 2026-08-31 20:29:34
[2026-08-31 20:29:34,685.685 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:29:34,898.898 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:29:34,904.904 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:29:35,093.093 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:29:35,106.106 INFO    ] time= 31/08/2026 20:29:35
[2026-08-31 20:29:35,124.124 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:29:35,153.153 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:29:35,285.285 INFO    ] No existing commands found in stream
[2026-08-31 20:29:40,316.316 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:29:40,319.319 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-08-31 20:29:44,009.009 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 20:29:44,012.012 INFO    ] Checking for system updates...
[2026-08-31 20:29:44,049.049 INFO    ] 200
[2026-08-31 20:29:44,051.051 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:29:44,109.109 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:29:44,111.111 INFO    ] No update needed
[2026-08-31 20:29:44,114.114 INFO    ] Checking for camera pi updates...
[2026-08-31 20:29:44,147.147 INFO    ] 200
[2026-08-31 20:29:44,149.149 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:29:44,190.190 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:29:44,271.271 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:29:44,273.273 INFO    ] No camera update needed
[2026-08-31 20:29:44,275.275 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:29:44,278.278 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:29:44,283.283 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:29:44,288.288 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:29:46,329.329 INFO    ] ================================================
[2026-08-31 20:29:46,344.344 INFO    ] Launching Daemon at Mon Aug 31 20:29:46 IST 2026
[2026-08-31 20:29:46,355.355 INFO    ] ================================================
[2026-08-31 20:29:46,933.933 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:29:46
[2026-08-31 20:29:47,530.530 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:29:47,806.806 INFO    ] Initializing speech engine...
[2026-08-31 20:29:47,815.815 INFO    ] 2026-08-31 20:29:47
[2026-08-31 20:29:48,074.074 INFO    ] 2026-08-31 20:29:48
[2026-08-31 20:29:48,128.128 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:29:48,354.354 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:29:48,359.359 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:29:48,585.585 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:29:48,618.618 INFO    ] time= 31/08/2026 20:29:48
[2026-08-31 20:29:48,633.633 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:29:48,640.640 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:29:48,770.770 INFO    ] No existing commands found in stream
[2026-08-31 20:29:53,790.790 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:29:53,792.792 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-08-31 20:29:54,882.882 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 20:29:54,885.885 INFO    ] Checking for system updates...
[2026-08-31 20:29:54,921.921 INFO    ] 200
[2026-08-31 20:29:54,924.924 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:29:54,976.976 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:29:54,978.978 INFO    ] No update needed
[2026-08-31 20:29:54,981.981 INFO    ] Checking for camera pi updates...
[2026-08-31 20:29:55,014.014 INFO    ] 200
[2026-08-31 20:29:55,017.017 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:29:55,057.057 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:29:55,150.150 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:29:55,153.153 INFO    ] No camera update needed
[2026-08-31 20:29:55,155.155 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:29:55,158.158 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:29:55,163.163 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:29:55,168.168 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:29:57,209.209 INFO    ] ================================================
[2026-08-31 20:29:57,224.224 INFO    ] Launching Daemon at Mon Aug 31 20:29:57 IST 2026
[2026-08-31 20:29:57,241.241 INFO    ] ================================================
[2026-08-31 20:29:57,819.819 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:29:57
[2026-08-31 20:29:58,416.416 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:29:58,693.693 INFO    ] Initializing speech engine...
[2026-08-31 20:29:58,702.702 INFO    ] 2026-08-31 20:29:58
[2026-08-31 20:29:58,963.963 INFO    ] 2026-08-31 20:29:58
[2026-08-31 20:29:59,017.017 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:29:59,299.299 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:29:59,305.305 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:29:59,498.498 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:29:59,504.504 INFO    ] time= 31/08/2026 20:29:59
[2026-08-31 20:29:59,525.525 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:29:59,551.551 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:29:59,677.677 INFO    ] No existing commands found in stream
[2026-08-31 20:30:04,707.707 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:30:04,710.710 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-08-31 20:30:09,141.141 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 20:30:09,144.144 INFO    ] Checking for system updates...
[2026-08-31 20:30:09,179.179 INFO    ] 200
[2026-08-31 20:30:09,182.182 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:30:09,234.234 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:30:09,236.236 INFO    ] No update needed
[2026-08-31 20:30:09,239.239 INFO    ] Checking for camera pi updates...
[2026-08-31 20:30:09,273.273 INFO    ] 200
[2026-08-31 20:30:09,276.276 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:30:09,319.319 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:30:09,408.408 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:30:09,410.410 INFO    ] No camera update needed
[2026-08-31 20:30:09,413.413 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:30:09,415.415 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:30:09,420.420 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:30:09,425.425 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:30:11,468.468 INFO    ] ================================================
[2026-08-31 20:30:11,483.483 INFO    ] Launching Daemon at Mon Aug 31 20:30:11 IST 2026
[2026-08-31 20:30:11,493.493 INFO    ] ================================================
[2026-08-31 20:30:12,115.115 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:30:12
[2026-08-31 20:30:12,755.755 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:30:13,047.047 INFO    ] Initializing speech engine...
[2026-08-31 20:30:13,055.055 INFO    ] 2026-08-31 20:30:13
[2026-08-31 20:30:13,323.323 INFO    ] 2026-08-31 20:30:13
[2026-08-31 20:30:13,377.377 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:30:13,600.600 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:30:13,610.610 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:30:13,742.742 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:30:13,791.791 INFO    ] time= 31/08/2026 20:30:13
[2026-08-31 20:30:13,850.850 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:30:13,880.880 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:30:14,015.015 INFO    ] No existing commands found in stream
[2026-08-31 20:30:19,034.034 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:30:19,038.038 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-08-31 20:30:20,734.734 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 20:30:20,737.737 INFO    ] Checking for system updates...
[2026-08-31 20:30:20,774.774 INFO    ] 200
[2026-08-31 20:30:20,778.778 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:30:20,846.846 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:30:20,849.849 INFO    ] No update needed
[2026-08-31 20:30:20,851.851 INFO    ] Checking for camera pi updates...
[2026-08-31 20:30:20,886.886 INFO    ] 200
[2026-08-31 20:30:20,889.889 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:30:20,929.929 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:30:21,011.011 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:30:21,014.014 INFO    ] No camera update needed
[2026-08-31 20:30:21,016.016 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:30:21,019.019 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:30:21,025.025 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:30:21,030.030 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:30:23,071.071 INFO    ] ================================================
[2026-08-31 20:30:23,085.085 INFO    ] Launching Daemon at Mon Aug 31 20:30:23 IST 2026
[2026-08-31 20:30:23,096.096 INFO    ] ================================================
[2026-08-31 20:30:23,675.675 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:30:23
[2026-08-31 20:30:24,271.271 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:30:24,528.528 INFO    ] Initializing speech engine...
[2026-08-31 20:30:24,535.535 INFO    ] 2026-08-31 20:30:24
[2026-08-31 20:30:24,824.824 INFO    ] 2026-08-31 20:30:24
[2026-08-31 20:30:24,860.860 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:30:25,050.050 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:30:25,063.063 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:30:25,217.217 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:30:25,225.225 INFO    ] time= 31/08/2026 20:30:25
[2026-08-31 20:30:25,233.233 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:30:25,280.280 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:30:25,404.404 INFO    ] No existing commands found in stream
[2026-08-31 20:30:30,429.429 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:30:30,432.432 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-08-31 20:30:34,897.897 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 20:30:34,899.899 INFO    ] Checking for system updates...
[2026-08-31 20:30:34,935.935 INFO    ] 200
[2026-08-31 20:30:34,938.938 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:30:34,993.993 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:30:34,995.995 INFO    ] No update needed
[2026-08-31 20:30:34,998.998 INFO    ] Checking for camera pi updates...
[2026-08-31 20:30:35,031.031 INFO    ] 200
[2026-08-31 20:30:35,033.033 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:30:35,073.073 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:30:35,155.155 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:30:35,158.158 INFO    ] No camera update needed
[2026-08-31 20:30:35,160.160 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:30:35,163.163 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:30:35,168.168 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:30:35,173.173 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:30:37,213.213 INFO    ] ================================================
[2026-08-31 20:30:37,228.228 INFO    ] Launching Daemon at Mon Aug 31 20:30:37 IST 2026
[2026-08-31 20:30:37,239.239 INFO    ] ================================================
[2026-08-31 20:30:37,819.819 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:30:37
[2026-08-31 20:30:38,461.461 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:30:38,746.746 INFO    ] Initializing speech engine...
[2026-08-31 20:30:38,757.757 INFO    ] 2026-08-31 20:30:38
[2026-08-31 20:30:39,027.027 INFO    ] 2026-08-31 20:30:39
[2026-08-31 20:30:39,082.082 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:30:39,335.335 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:30:39,354.354 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:30:39,570.570 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:30:39,589.589 INFO    ] time= 31/08/2026 20:30:39
[2026-08-31 20:30:39,599.599 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:30:39,626.626 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:30:39,726.726 INFO    ] No existing commands found in stream
[2026-08-31 20:30:44,742.742 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:30:44,745.745 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-08-31 20:30:48,650.650 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 20:30:48,653.653 INFO    ] Checking for system updates...
[2026-08-31 20:30:48,689.689 INFO    ] 200
[2026-08-31 20:30:48,692.692 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:30:48,744.744 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:30:48,747.747 INFO    ] No update needed
[2026-08-31 20:30:48,750.750 INFO    ] Checking for camera pi updates...
[2026-08-31 20:30:48,784.784 INFO    ] 200
[2026-08-31 20:30:48,787.787 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:30:48,828.828 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:30:48,904.904 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:30:48,907.907 INFO    ] No camera update needed
[2026-08-31 20:30:48,910.910 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:30:48,913.913 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:30:48,919.919 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:30:48,924.924 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:30:50,967.967 INFO    ] ================================================
[2026-08-31 20:30:50,983.983 INFO    ] Launching Daemon at Mon Aug 31 20:30:50 IST 2026
[2026-08-31 20:30:50,993.993 INFO    ] ================================================
[2026-08-31 20:30:51,559.559 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:30:51
[2026-08-31 20:30:52,143.143 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:30:52,421.421 INFO    ] Initializing speech engine...
[2026-08-31 20:30:52,431.431 INFO    ] 2026-08-31 20:30:52
[2026-08-31 20:30:52,691.691 INFO    ] 2026-08-31 20:30:52
[2026-08-31 20:30:52,727.727 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:30:52,915.915 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:30:52,928.928 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:30:53,088.088 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:30:53,093.093 INFO    ] time= 31/08/2026 20:30:53
[2026-08-31 20:30:53,099.099 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:30:53,146.146 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:30:53,272.272 INFO    ] No existing commands found in stream
[2026-08-31 20:30:58,302.302 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:30:58,305.305 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-08-31 20:31:02,765.765 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 20:31:02,769.769 INFO    ] Checking for system updates...
[2026-08-31 20:31:02,813.813 INFO    ] 200
[2026-08-31 20:31:02,816.816 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:31:02,881.881 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:31:02,885.885 INFO    ] No update needed
[2026-08-31 20:31:02,888.888 INFO    ] Checking for camera pi updates...
[2026-08-31 20:31:02,926.926 INFO    ] 200
[2026-08-31 20:31:02,929.929 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:31:02,975.975 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:31:03,068.068 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:31:03,071.071 INFO    ] No camera update needed
[2026-08-31 20:31:03,074.074 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:31:03,077.077 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:31:03,083.083 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:31:03,089.089 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:31:05,131.131 INFO    ] ================================================
[2026-08-31 20:31:05,145.145 INFO    ] Launching Daemon at Mon Aug 31 20:31:05 IST 2026
[2026-08-31 20:31:05,157.157 INFO    ] ================================================
[2026-08-31 20:31:05,796.796 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:31:05
[2026-08-31 20:31:06,421.421 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:31:06,680.680 INFO    ] Initializing speech engine...
[2026-08-31 20:31:06,687.687 INFO    ] 2026-08-31 20:31:06
[2026-08-31 20:31:06,964.964 INFO    ] 2026-08-31 20:31:06
[2026-08-31 20:31:07,014.014 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:31:07,221.221 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:31:07,236.236 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:31:07,369.369 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:31:07,378.378 INFO    ] time= 31/08/2026 20:31:07
[2026-08-31 20:31:07,426.426 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:31:07,443.443 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:31:07,557.557 INFO    ] No existing commands found in stream
[2026-08-31 20:31:12,588.588 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:31:12,591.591 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-08-31 20:31:17,059.059 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 20:31:17,062.062 INFO    ] Checking for system updates...
[2026-08-31 20:31:17,102.102 INFO    ] 200
[2026-08-31 20:31:17,105.105 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:31:17,162.162 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:31:17,164.164 INFO    ] No update needed
[2026-08-31 20:31:17,167.167 INFO    ] Checking for camera pi updates...
[2026-08-31 20:31:17,202.202 INFO    ] 200
[2026-08-31 20:31:17,205.205 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:31:17,251.251 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:31:17,332.332 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:31:17,335.335 INFO    ] No camera update needed
[2026-08-31 20:31:17,338.338 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:31:17,341.341 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:31:17,348.348 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:31:17,354.354 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:31:19,398.398 INFO    ] ================================================
[2026-08-31 20:31:19,416.416 INFO    ] Launching Daemon at Mon Aug 31 20:31:19 IST 2026
[2026-08-31 20:31:19,428.428 INFO    ] ================================================
[2026-08-31 20:31:20,134.134 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:31:20
[2026-08-31 20:31:20,840.840 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:31:21,159.159 INFO    ] Initializing speech engine...
[2026-08-31 20:31:21,172.172 INFO    ] 2026-08-31 20:31:21
[2026-08-31 20:31:21,462.462 INFO    ] 2026-08-31 20:31:21
[2026-08-31 20:31:21,504.504 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:31:21,734.734 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:31:21,740.740 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:31:21,968.968 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:31:22,003.003 INFO    ] time= 31/08/2026 20:31:21
[2026-08-31 20:31:22,009.009 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:31:22,028.028 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:31:22,129.129 INFO    ] No existing commands found in stream
[2026-08-31 20:31:27,143.143 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:31:27,146.146 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-08-31 20:31:28,569.569 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 20:31:28,571.571 INFO    ] Checking for system updates...
[2026-08-31 20:31:28,608.608 INFO    ] 200
[2026-08-31 20:31:28,610.610 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:31:28,665.665 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:31:28,668.668 INFO    ] No update needed
[2026-08-31 20:31:28,670.670 INFO    ] Checking for camera pi updates...
[2026-08-31 20:31:28,708.708 INFO    ] 200
[2026-08-31 20:31:28,710.710 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:31:28,752.752 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:31:28,833.833 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:31:28,836.836 INFO    ] No camera update needed
[2026-08-31 20:31:28,839.839 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:31:28,841.841 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:31:28,846.846 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:31:28,852.852 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:31:30,893.893 INFO    ] ================================================
[2026-08-31 20:31:30,909.909 INFO    ] Launching Daemon at Mon Aug 31 20:31:30 IST 2026
[2026-08-31 20:31:30,920.920 INFO    ] ================================================
[2026-08-31 20:31:31,490.490 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:31:31
[2026-08-31 20:31:32,076.076 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:31:32,379.379 INFO    ] Initializing speech engine...
[2026-08-31 20:31:32,391.391 INFO    ] 2026-08-31 20:31:32
[2026-08-31 20:31:32,655.655 INFO    ] 2026-08-31 20:31:32
[2026-08-31 20:31:32,693.693 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:31:32,887.887 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:31:32,904.904 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:31:33,043.043 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:31:33,055.055 INFO    ] time= 31/08/2026 20:31:33
[2026-08-31 20:31:33,058.058 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:31:33,106.106 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:31:33,255.255 INFO    ] No existing commands found in stream
[2026-08-31 20:31:38,267.267 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:31:38,270.270 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-08-31 20:31:39,442.442 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 20:31:39,444.444 INFO    ] Checking for system updates...
[2026-08-31 20:31:39,480.480 INFO    ] 200
[2026-08-31 20:31:39,483.483 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:31:39,534.534 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:31:39,537.537 INFO    ] No update needed
[2026-08-31 20:31:39,540.540 INFO    ] Checking for camera pi updates...
[2026-08-31 20:31:39,573.573 INFO    ] 200
[2026-08-31 20:31:39,575.575 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:31:39,616.616 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:31:39,804.804 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:31:39,806.806 INFO    ] No camera update needed
[2026-08-31 20:31:39,808.808 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:31:39,811.811 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:31:39,816.816 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:31:39,821.821 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:31:41,861.861 INFO    ] ================================================
[2026-08-31 20:31:41,877.877 INFO    ] Launching Daemon at Mon Aug 31 20:31:41 IST 2026
[2026-08-31 20:31:41,889.889 INFO    ] ================================================
[2026-08-31 20:31:42,547.547 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:31:42
[2026-08-31 20:31:43,227.227 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:31:43,530.530 INFO    ] Initializing speech engine...
[2026-08-31 20:31:43,539.539 INFO    ] 2026-08-31 20:31:43
[2026-08-31 20:31:43,815.815 INFO    ] 2026-08-31 20:31:43
[2026-08-31 20:31:43,869.869 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:31:44,099.099 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:31:44,121.121 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:31:44,329.329 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:31:44,364.364 INFO    ] time= 31/08/2026 20:31:44
[2026-08-31 20:31:44,381.381 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:31:44,412.412 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:31:44,518.518 INFO    ] No existing commands found in stream
[2026-08-31 20:31:49,542.542 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:31:49,545.545 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-08-31 20:31:50,172.172 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 20:31:50,175.175 INFO    ] Checking for system updates...
[2026-08-31 20:31:50,212.212 INFO    ] 200
[2026-08-31 20:31:50,215.215 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:31:50,269.269 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:31:50,271.271 INFO    ] No update needed
[2026-08-31 20:31:50,274.274 INFO    ] Checking for camera pi updates...
[2026-08-31 20:31:50,314.314 INFO    ] 200
[2026-08-31 20:31:50,318.318 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:31:50,364.364 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:31:50,447.447 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:31:50,450.450 INFO    ] No camera update needed
[2026-08-31 20:31:50,453.453 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:31:50,456.456 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:31:50,462.462 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:31:50,468.468 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:31:52,512.512 INFO    ] ================================================
[2026-08-31 20:31:52,528.528 INFO    ] Launching Daemon at Mon Aug 31 20:31:52 IST 2026
[2026-08-31 20:31:52,539.539 INFO    ] ================================================
[2026-08-31 20:31:53,126.126 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:31:53
[2026-08-31 20:31:53,733.733 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:31:53,998.998 INFO    ] Initializing speech engine...
[2026-08-31 20:31:54,005.005 INFO    ] 2026-08-31 20:31:54
[2026-08-31 20:31:54,306.306 INFO    ] 2026-08-31 20:31:54
[2026-08-31 20:31:54,345.345 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:31:54,638.638 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:31:54,648.648 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:31:54,806.806 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:31:54,846.846 INFO    ] time= 31/08/2026 20:31:54
[2026-08-31 20:31:54,886.886 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:31:54,925.925 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:31:55,016.016 INFO    ] No existing commands found in stream
[2026-08-31 20:32:00,028.028 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:32:00,031.031 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-08-31 20:32:02,645.645 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 20:32:02,648.648 INFO    ] Checking for system updates...
[2026-08-31 20:32:02,691.691 INFO    ] 200
[2026-08-31 20:32:02,695.695 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:32:02,747.747 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:32:02,750.750 INFO    ] No update needed
[2026-08-31 20:32:02,754.754 INFO    ] Checking for camera pi updates...
[2026-08-31 20:32:02,799.799 INFO    ] 200
[2026-08-31 20:32:02,801.801 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:32:02,842.842 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:32:02,946.946 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:32:02,949.949 INFO    ] No camera update needed
[2026-08-31 20:32:02,951.951 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:32:02,954.954 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:32:02,959.959 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:32:02,964.964 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:32:05,005.005 INFO    ] ================================================
[2026-08-31 20:32:05,021.021 INFO    ] Launching Daemon at Mon Aug 31 20:32:05 IST 2026
[2026-08-31 20:32:05,033.033 INFO    ] ================================================
[2026-08-31 20:32:05,684.684 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:32:05
[2026-08-31 20:32:06,382.382 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:32:06,683.683 INFO    ] Initializing speech engine...
[2026-08-31 20:32:06,697.697 INFO    ] 2026-08-31 20:32:06
[2026-08-31 20:32:06,973.973 INFO    ] 2026-08-31 20:32:06
[2026-08-31 20:32:07,033.033 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:32:07,262.262 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:32:07,268.268 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:32:07,501.501 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:32:07,527.527 INFO    ] time= 31/08/2026 20:32:07
[2026-08-31 20:32:07,546.546 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:32:07,575.575 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:32:07,706.706 INFO    ] No existing commands found in stream
[2026-08-31 20:32:12,742.742 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:32:12,745.745 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-08-31 20:32:14,803.803 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 20:32:14,806.806 INFO    ] Checking for system updates...
[2026-08-31 20:32:14,843.843 INFO    ] 200
[2026-08-31 20:32:14,845.845 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:32:14,899.899 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:32:14,902.902 INFO    ] No update needed
[2026-08-31 20:32:14,904.904 INFO    ] Checking for camera pi updates...
[2026-08-31 20:32:14,938.938 INFO    ] 200
[2026-08-31 20:32:14,941.941 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:32:14,981.981 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:32:15,081.081 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:32:15,083.083 INFO    ] No camera update needed
[2026-08-31 20:32:15,086.086 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:32:15,088.088 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:32:15,093.093 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:32:15,099.099 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:32:17,141.141 INFO    ] ================================================
[2026-08-31 20:32:17,157.157 INFO    ] Launching Daemon at Mon Aug 31 20:32:17 IST 2026
[2026-08-31 20:32:17,168.168 INFO    ] ================================================
[2026-08-31 20:32:17,737.737 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:32:17
[2026-08-31 20:32:18,322.322 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:32:18,590.590 INFO    ] Initializing speech engine...
[2026-08-31 20:32:18,599.599 INFO    ] 2026-08-31 20:32:18
[2026-08-31 20:32:18,851.851 INFO    ] 2026-08-31 20:32:18
[2026-08-31 20:32:18,886.886 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:32:19,138.138 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:32:19,147.147 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:32:19,277.277 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:32:19,290.290 INFO    ] time= 31/08/2026 20:32:19
[2026-08-31 20:32:19,339.339 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:32:19,393.393 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:32:19,491.491 INFO    ] No existing commands found in stream
[2026-08-31 20:32:24,529.529 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:32:24,532.532 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-08-31 20:32:25,015.015 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 20:32:25,017.017 INFO    ] Checking for system updates...
[2026-08-31 20:32:25,053.053 INFO    ] 200
[2026-08-31 20:32:25,056.056 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:32:25,108.108 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:32:25,111.111 INFO    ] No update needed
[2026-08-31 20:32:25,113.113 INFO    ] Checking for camera pi updates...
[2026-08-31 20:32:25,147.147 INFO    ] 200
[2026-08-31 20:32:25,150.150 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:32:25,196.196 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:32:25,278.278 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:32:25,281.281 INFO    ] No camera update needed
[2026-08-31 20:32:25,283.283 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:32:25,285.285 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:32:25,291.291 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:32:25,297.297 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:32:27,338.338 INFO    ] ================================================
[2026-08-31 20:32:27,354.354 INFO    ] Launching Daemon at Mon Aug 31 20:32:27 IST 2026
[2026-08-31 20:32:27,365.365 INFO    ] ================================================
[2026-08-31 20:32:27,949.949 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:32:27
[2026-08-31 20:32:28,545.545 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:32:28,824.824 INFO    ] Initializing speech engine...
[2026-08-31 20:32:28,832.832 INFO    ] 2026-08-31 20:32:28
[2026-08-31 20:32:29,104.104 INFO    ] 2026-08-31 20:32:29
[2026-08-31 20:32:29,145.145 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:32:29,398.398 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:32:29,418.418 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:32:29,597.597 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:32:29,643.643 INFO    ] time= 31/08/2026 20:32:29
[2026-08-31 20:32:29,660.660 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:32:29,666.666 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:32:29,794.794 INFO    ] No existing commands found in stream
[2026-08-31 20:32:34,807.807 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:32:34,811.811 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-08-31 20:32:36,801.801 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 20:32:36,804.804 INFO    ] Checking for system updates...
[2026-08-31 20:32:36,844.844 INFO    ] 200
[2026-08-31 20:32:36,847.847 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:32:36,899.899 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:32:36,902.902 INFO    ] No update needed
[2026-08-31 20:32:36,904.904 INFO    ] Checking for camera pi updates...
[2026-08-31 20:32:36,938.938 INFO    ] 200
[2026-08-31 20:32:36,940.940 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:32:36,981.981 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:32:37,077.077 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:32:37,080.080 INFO    ] No camera update needed
[2026-08-31 20:32:37,082.082 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:32:37,084.084 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:32:37,090.090 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:32:37,095.095 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:32:39,137.137 INFO    ] ================================================
[2026-08-31 20:32:39,152.152 INFO    ] Launching Daemon at Mon Aug 31 20:32:39 IST 2026
[2026-08-31 20:32:39,163.163 INFO    ] ================================================
[2026-08-31 20:32:39,760.760 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:32:39
[2026-08-31 20:32:40,419.419 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:32:40,717.717 INFO    ] Initializing speech engine...
[2026-08-31 20:32:40,731.731 INFO    ] 2026-08-31 20:32:40
[2026-08-31 20:32:41,038.038 INFO    ] 2026-08-31 20:32:41
[2026-08-31 20:32:41,122.122 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:32:41,332.332 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:32:41,341.341 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:32:41,535.535 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:32:41,543.543 INFO    ] time= 31/08/2026 20:32:41
[2026-08-31 20:32:41,564.564 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:32:41,592.592 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:32:41,711.711 INFO    ] No existing commands found in stream
[2026-08-31 20:32:46,748.748 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:32:46,751.751 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-08-31 20:32:49,145.145 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 20:32:49,148.148 INFO    ] Checking for system updates...
[2026-08-31 20:32:49,184.184 INFO    ] 200
[2026-08-31 20:32:49,187.187 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:32:49,240.240 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:32:49,244.244 INFO    ] No update needed
[2026-08-31 20:32:49,247.247 INFO    ] Checking for camera pi updates...
[2026-08-31 20:32:49,281.281 INFO    ] 200
[2026-08-31 20:32:49,284.284 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:32:49,325.325 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:32:49,409.409 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:32:49,411.411 INFO    ] No camera update needed
[2026-08-31 20:32:49,414.414 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:32:49,417.417 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:32:49,423.423 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:32:49,429.429 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:32:51,470.470 INFO    ] ================================================
[2026-08-31 20:32:51,484.484 INFO    ] Launching Daemon at Mon Aug 31 20:32:51 IST 2026
[2026-08-31 20:32:51,495.495 INFO    ] ================================================
[2026-08-31 20:32:52,139.139 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:32:52
[2026-08-31 20:32:52,801.801 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:32:53,105.105 INFO    ] Initializing speech engine...
[2026-08-31 20:32:53,119.119 INFO    ] 2026-08-31 20:32:53
[2026-08-31 20:32:53,393.393 INFO    ] 2026-08-31 20:32:53
[2026-08-31 20:32:53,449.449 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:32:53,681.681 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:32:53,687.687 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:32:53,825.825 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:32:53,890.890 INFO    ] time= 31/08/2026 20:32:53
[2026-08-31 20:32:53,950.950 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:32:53,964.964 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:32:54,093.093 INFO    ] No existing commands found in stream
[2026-08-31 20:32:59,122.122 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:32:59,125.125 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-08-31 20:33:01,051.051 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 20:33:01,055.055 INFO    ] Checking for system updates...
[2026-08-31 20:33:01,124.124 INFO    ] 200
[2026-08-31 20:33:01,140.140 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:33:01,236.236 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:33:01,239.239 INFO    ] No update needed
[2026-08-31 20:33:01,244.244 INFO    ] Checking for camera pi updates...
[2026-08-31 20:33:01,308.308 INFO    ] 200
[2026-08-31 20:33:01,311.311 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:33:01,367.367 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:33:01,500.500 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:33:01,503.503 INFO    ] No camera update needed
[2026-08-31 20:33:01,507.507 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:33:01,511.511 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:33:01,519.519 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:33:01,526.526 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:33:03,604.604 INFO    ] ================================================
[2026-08-31 20:33:03,620.620 INFO    ] Launching Daemon at Mon Aug 31 20:33:03 IST 2026
[2026-08-31 20:33:03,631.631 INFO    ] ================================================
[2026-08-31 20:33:04,276.276 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:33:04
[2026-08-31 20:33:04,938.938 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:33:05,239.239 INFO    ] Initializing speech engine...
[2026-08-31 20:33:05,253.253 INFO    ] 2026-08-31 20:33:05
[2026-08-31 20:33:05,563.563 INFO    ] 2026-08-31 20:33:05
[2026-08-31 20:33:05,647.647 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:33:05,857.857 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:33:05,866.866 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:33:06,049.049 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:33:06,091.091 INFO    ] time= 31/08/2026 20:33:06
[2026-08-31 20:33:06,098.098 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:33:06,115.115 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:33:06,252.252 INFO    ] No existing commands found in stream
[2026-08-31 20:33:11,276.276 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:33:11,279.279 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-08-31 20:33:14,527.527 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 20:33:14,530.530 INFO    ] Checking for system updates...
[2026-08-31 20:33:14,567.567 INFO    ] 200
[2026-08-31 20:33:14,570.570 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:33:14,623.623 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:33:14,626.626 INFO    ] No update needed
[2026-08-31 20:33:14,629.629 INFO    ] Checking for camera pi updates...
[2026-08-31 20:33:14,667.667 INFO    ] 200
[2026-08-31 20:33:14,669.669 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:33:14,715.715 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:33:14,808.808 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:33:14,811.811 INFO    ] No camera update needed
[2026-08-31 20:33:14,814.814 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:33:14,816.816 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:33:14,823.823 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:33:14,829.829 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:33:16,871.871 INFO    ] ================================================
[2026-08-31 20:33:16,886.886 INFO    ] Launching Daemon at Mon Aug 31 20:33:16 IST 2026
[2026-08-31 20:33:16,897.897 INFO    ] ================================================
[2026-08-31 20:33:17,479.479 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:33:17
[2026-08-31 20:33:18,077.077 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:33:18,354.354 INFO    ] Initializing speech engine...
[2026-08-31 20:33:18,360.360 INFO    ] 2026-08-31 20:33:18
[2026-08-31 20:33:18,621.621 INFO    ] 2026-08-31 20:33:18
[2026-08-31 20:33:18,674.674 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:33:18,902.902 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:33:18,907.907 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:33:19,127.127 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:33:19,162.162 INFO    ] time= 31/08/2026 20:33:19
[2026-08-31 20:33:19,169.169 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:33:19,187.187 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:33:19,302.302 INFO    ] No existing commands found in stream
[2026-08-31 20:33:24,327.327 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:33:24,330.330 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-08-31 20:33:25,002.002 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 20:33:25,004.004 INFO    ] Checking for system updates...
[2026-08-31 20:33:25,040.040 INFO    ] 200
[2026-08-31 20:33:25,043.043 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:33:25,094.094 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:33:25,097.097 INFO    ] No update needed
[2026-08-31 20:33:25,099.099 INFO    ] Checking for camera pi updates...
[2026-08-31 20:33:25,133.133 INFO    ] 200
[2026-08-31 20:33:25,135.135 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:33:25,175.175 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:33:25,267.267 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:33:25,270.270 INFO    ] No camera update needed
[2026-08-31 20:33:25,272.272 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:33:25,274.274 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:33:25,280.280 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:33:25,285.285 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:33:27,329.329 INFO    ] ================================================
[2026-08-31 20:33:27,346.346 INFO    ] Launching Daemon at Mon Aug 31 20:33:27 IST 2026
[2026-08-31 20:33:27,356.356 INFO    ] ================================================
[2026-08-31 20:33:27,925.925 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:33:27
[2026-08-31 20:33:28,508.508 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:33:28,780.780 INFO    ] Initializing speech engine...
[2026-08-31 20:33:28,790.790 INFO    ] 2026-08-31 20:33:28
[2026-08-31 20:33:29,040.040 INFO    ] 2026-08-31 20:33:29
[2026-08-31 20:33:29,075.075 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:33:29,250.250 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:33:29,263.263 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:33:29,407.407 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:33:29,415.415 INFO    ] time= 31/08/2026 20:33:29
[2026-08-31 20:33:29,421.421 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:33:29,469.469 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:33:29,613.613 INFO    ] No existing commands found in stream
[2026-08-31 20:33:34,627.627 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:33:34,630.630 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-08-31 20:33:35,909.909 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 20:33:35,912.912 INFO    ] Checking for system updates...
[2026-08-31 20:33:35,947.947 INFO    ] 200
[2026-08-31 20:33:35,950.950 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:33:36,008.008 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:33:36,011.011 INFO    ] No update needed
[2026-08-31 20:33:36,013.013 INFO    ] Checking for camera pi updates...
[2026-08-31 20:33:36,046.046 INFO    ] 200
[2026-08-31 20:33:36,049.049 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:33:36,089.089 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:33:36,167.167 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:33:36,169.169 INFO    ] No camera update needed
[2026-08-31 20:33:36,172.172 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:33:36,174.174 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:33:36,179.179 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:33:36,184.184 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:33:38,224.224 INFO    ] ================================================
[2026-08-31 20:33:38,240.240 INFO    ] Launching Daemon at Mon Aug 31 20:33:38 IST 2026
[2026-08-31 20:33:38,251.251 INFO    ] ================================================
[2026-08-31 20:33:38,815.815 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:33:38
[2026-08-31 20:33:39,397.397 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:33:39,647.647 INFO    ] Initializing speech engine...
[2026-08-31 20:33:39,670.670 INFO    ] 2026-08-31 20:33:39
[2026-08-31 20:33:39,924.924 INFO    ] 2026-08-31 20:33:39
[2026-08-31 20:33:39,959.959 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:33:40,162.162 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:33:40,221.221 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:33:40,365.365 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:33:40,414.414 INFO    ] time= 31/08/2026 20:33:40
[2026-08-31 20:33:40,463.463 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:33:40,498.498 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:33:40,607.607 INFO    ] No existing commands found in stream
[2026-08-31 20:33:45,628.628 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:33:45,631.631 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-08-31 20:33:49,182.182 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 20:33:49,185.185 INFO    ] Checking for system updates...
[2026-08-31 20:33:49,225.225 INFO    ] 200
[2026-08-31 20:33:49,228.228 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:33:49,289.289 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:33:49,292.292 INFO    ] No update needed
[2026-08-31 20:33:49,295.295 INFO    ] Checking for camera pi updates...
[2026-08-31 20:33:49,330.330 INFO    ] 200
[2026-08-31 20:33:49,332.332 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:33:49,379.379 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:33:49,566.566 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:33:49,568.568 INFO    ] No camera update needed
[2026-08-31 20:33:49,571.571 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:33:49,573.573 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:33:49,578.578 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:33:49,583.583 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:33:51,625.625 INFO    ] ================================================
[2026-08-31 20:33:51,641.641 INFO    ] Launching Daemon at Mon Aug 31 20:33:51 IST 2026
[2026-08-31 20:33:51,652.652 INFO    ] ================================================
[2026-08-31 20:33:52,306.306 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:33:52
[2026-08-31 20:33:52,936.936 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:33:53,235.235 INFO    ] Initializing speech engine...
[2026-08-31 20:33:53,245.245 INFO    ] 2026-08-31 20:33:53
[2026-08-31 20:33:53,522.522 INFO    ] 2026-08-31 20:33:53
[2026-08-31 20:33:53,582.582 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:33:53,813.813 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:33:53,824.824 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:33:53,982.982 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:33:54,058.058 INFO    ] time= 31/08/2026 20:33:53
[2026-08-31 20:33:54,095.095 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:33:54,115.115 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:33:54,251.251 INFO    ] No existing commands found in stream
[2026-08-31 20:33:59,275.275 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:33:59,278.278 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-08-31 20:34:01,707.707 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 20:34:01,711.711 INFO    ] Checking for system updates...
[2026-08-31 20:34:01,757.757 INFO    ] 200
[2026-08-31 20:34:01,761.761 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:34:01,837.837 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:34:01,840.840 INFO    ] No update needed
[2026-08-31 20:34:01,844.844 INFO    ] Checking for camera pi updates...
[2026-08-31 20:34:01,883.883 INFO    ] 200
[2026-08-31 20:34:01,886.886 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:34:01,933.933 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:34:02,000.000 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:34:02,003.003 INFO    ] No camera update needed
[2026-08-31 20:34:02,006.006 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:34:02,009.009 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:34:02,015.015 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:34:02,022.022 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:34:04,063.063 INFO    ] ================================================
[2026-08-31 20:34:04,080.080 INFO    ] Launching Daemon at Mon Aug 31 20:34:04 IST 2026
[2026-08-31 20:34:04,091.091 INFO    ] ================================================
[2026-08-31 20:34:04,730.730 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:34:04
[2026-08-31 20:34:05,386.386 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:34:05,686.686 INFO    ] Initializing speech engine...
[2026-08-31 20:34:05,695.695 INFO    ] 2026-08-31 20:34:05
[2026-08-31 20:34:05,971.971 INFO    ] 2026-08-31 20:34:05
[2026-08-31 20:34:06,009.009 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:34:06,269.269 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:34:06,278.278 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:34:06,509.509 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:34:06,538.538 INFO    ] time= 31/08/2026 20:34:06
[2026-08-31 20:34:06,553.553 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:34:06,563.563 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:34:06,687.687 INFO    ] No existing commands found in stream
[2026-08-31 20:34:11,703.703 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:34:11,705.705 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-08-31 20:34:12,690.690 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 20:34:12,692.692 INFO    ] Checking for system updates...
[2026-08-31 20:34:12,736.736 INFO    ] 200
[2026-08-31 20:34:12,739.739 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:34:12,792.792 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:34:12,795.795 INFO    ] No update needed
[2026-08-31 20:34:12,797.797 INFO    ] Checking for camera pi updates...
[2026-08-31 20:34:12,832.832 INFO    ] 200
[2026-08-31 20:34:12,835.835 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:34:12,876.876 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:34:12,939.939 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:34:12,942.942 INFO    ] No camera update needed
[2026-08-31 20:34:12,945.945 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:34:12,947.947 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:34:12,953.953 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:34:12,959.959 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:34:15,000.000 INFO    ] ================================================
[2026-08-31 20:34:15,016.016 INFO    ] Launching Daemon at Mon Aug 31 20:34:15 IST 2026
[2026-08-31 20:34:15,027.027 INFO    ] ================================================
[2026-08-31 20:34:15,612.612 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:34:15
[2026-08-31 20:34:16,214.214 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:34:16,488.488 INFO    ] Initializing speech engine...
[2026-08-31 20:34:16,497.497 INFO    ] 2026-08-31 20:34:16
[2026-08-31 20:34:16,761.761 INFO    ] 2026-08-31 20:34:16
[2026-08-31 20:34:16,813.813 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:34:17,042.042 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:34:17,064.064 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:34:17,190.190 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:34:17,246.246 INFO    ] time= 31/08/2026 20:34:17
[2026-08-31 20:34:17,290.290 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:34:17,315.315 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:34:17,447.447 INFO    ] No existing commands found in stream
[2026-08-31 20:34:22,472.472 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:34:22,475.475 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-08-31 20:34:23,841.841 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 20:34:23,844.844 INFO    ] Checking for system updates...
[2026-08-31 20:34:23,881.881 INFO    ] 200
[2026-08-31 20:34:23,883.883 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:34:23,935.935 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:34:23,938.938 INFO    ] No update needed
[2026-08-31 20:34:23,940.940 INFO    ] Checking for camera pi updates...
[2026-08-31 20:34:23,978.978 INFO    ] 200
[2026-08-31 20:34:23,980.980 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:34:24,021.021 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:34:24,101.101 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:34:24,104.104 INFO    ] No camera update needed
[2026-08-31 20:34:24,106.106 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:34:24,109.109 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:34:24,114.114 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:34:24,119.119 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:34:26,160.160 INFO    ] ================================================
[2026-08-31 20:34:26,176.176 INFO    ] Launching Daemon at Mon Aug 31 20:34:26 IST 2026
[2026-08-31 20:34:26,188.188 INFO    ] ================================================
[2026-08-31 20:34:26,757.757 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:34:26
[2026-08-31 20:34:27,344.344 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:34:27,595.595 INFO    ] Initializing speech engine...
[2026-08-31 20:34:27,610.610 INFO    ] 2026-08-31 20:34:27
[2026-08-31 20:34:27,871.871 INFO    ] 2026-08-31 20:34:27
[2026-08-31 20:34:27,907.907 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:34:28,108.108 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:34:28,115.115 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:34:28,312.312 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:34:28,333.333 INFO    ] time= 31/08/2026 20:34:28
[2026-08-31 20:34:28,393.393 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:34:28,447.447 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:34:28,557.557 INFO    ] No existing commands found in stream
[2026-08-31 20:34:33,576.576 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:34:33,579.579 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-08-31 20:34:36,493.493 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 20:34:36,495.495 INFO    ] Checking for system updates...
[2026-08-31 20:34:36,531.531 INFO    ] 200
[2026-08-31 20:34:36,533.533 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:34:36,585.585 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:34:36,587.587 INFO    ] No update needed
[2026-08-31 20:34:36,590.590 INFO    ] Checking for camera pi updates...
[2026-08-31 20:34:36,623.623 INFO    ] 200
[2026-08-31 20:34:36,625.625 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:34:36,668.668 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:34:36,743.743 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:34:36,746.746 INFO    ] No camera update needed
[2026-08-31 20:34:36,748.748 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:34:36,750.750 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:34:36,756.756 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:34:36,761.761 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:34:38,800.800 INFO    ] ================================================
[2026-08-31 20:34:38,816.816 INFO    ] Launching Daemon at Mon Aug 31 20:34:38 IST 2026
[2026-08-31 20:34:38,827.827 INFO    ] ================================================
[2026-08-31 20:34:39,405.405 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:34:39
[2026-08-31 20:34:40,005.005 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:34:40,271.271 INFO    ] Initializing speech engine...
[2026-08-31 20:34:40,280.280 INFO    ] 2026-08-31 20:34:40
[2026-08-31 20:34:40,531.531 INFO    ] 2026-08-31 20:34:40
[2026-08-31 20:34:40,590.590 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:34:40,809.809 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:34:40,818.818 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:34:41,026.026 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:34:41,073.073 INFO    ] time= 31/08/2026 20:34:41
[2026-08-31 20:34:41,080.080 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:34:41,098.098 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:34:41,228.228 INFO    ] No existing commands found in stream
[2026-08-31 20:34:46,243.243 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:34:46,245.245 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-08-31 20:34:47,056.056 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 20:34:47,059.059 INFO    ] Checking for system updates...
[2026-08-31 20:34:47,097.097 INFO    ] 200
[2026-08-31 20:34:47,099.099 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:34:47,156.156 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:34:47,159.159 INFO    ] No update needed
[2026-08-31 20:34:47,161.161 INFO    ] Checking for camera pi updates...
[2026-08-31 20:34:47,195.195 INFO    ] 200
[2026-08-31 20:34:47,197.197 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:34:47,237.237 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:34:47,338.338 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:34:47,340.340 INFO    ] No camera update needed
[2026-08-31 20:34:47,343.343 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:34:47,345.345 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:34:47,350.350 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:34:47,355.355 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:34:49,397.397 INFO    ] ================================================
[2026-08-31 20:34:49,413.413 INFO    ] Launching Daemon at Mon Aug 31 20:34:49 IST 2026
[2026-08-31 20:34:49,424.424 INFO    ] ================================================
[2026-08-31 20:34:49,992.992 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:34:49
[2026-08-31 20:34:50,576.576 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:34:50,845.845 INFO    ] Initializing speech engine...
[2026-08-31 20:34:50,854.854 INFO    ] 2026-08-31 20:34:50
[2026-08-31 20:34:51,107.107 INFO    ] 2026-08-31 20:34:51
[2026-08-31 20:34:51,167.167 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:34:51,389.389 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:34:51,398.398 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:34:51,608.608 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:34:51,657.657 INFO    ] time= 31/08/2026 20:34:51
[2026-08-31 20:34:51,663.663 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:34:51,680.680 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:34:51,812.812 INFO    ] No existing commands found in stream
[2026-08-31 20:34:56,828.828 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:34:56,830.830 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-08-31 20:34:59,101.101 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 20:34:59,103.103 INFO    ] Checking for system updates...
[2026-08-31 20:34:59,139.139 INFO    ] 200
[2026-08-31 20:34:59,141.141 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:34:59,193.193 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:34:59,196.196 INFO    ] No update needed
[2026-08-31 20:34:59,198.198 INFO    ] Checking for camera pi updates...
[2026-08-31 20:34:59,232.232 INFO    ] 200
[2026-08-31 20:34:59,234.234 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:34:59,278.278 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:34:59,382.382 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:34:59,384.384 INFO    ] No camera update needed
[2026-08-31 20:34:59,387.387 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:34:59,389.389 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:34:59,395.395 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:34:59,400.400 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:35:01,460.460 INFO    ] ================================================
[2026-08-31 20:35:01,510.510 INFO    ] Launching Daemon at Mon Aug 31 20:35:01 IST 2026
[2026-08-31 20:35:01,561.561 INFO    ] ================================================
[2026-08-31 20:35:02,245.245 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:35:02
[2026-08-31 20:35:02,942.942 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:35:03,270.270 INFO    ] Initializing speech engine...
[2026-08-31 20:35:03,278.278 INFO    ] 2026-08-31 20:35:03
[2026-08-31 20:35:03,537.537 INFO    ] 2026-08-31 20:35:03
[2026-08-31 20:35:03,560.560 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:35:03,761.761 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:35:03,820.820 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:35:03,974.974 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:35:03,977.977 INFO    ] time= 31/08/2026 20:35:03
[2026-08-31 20:35:04,026.026 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:35:04,080.080 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:35:04,216.216 INFO    ] No existing commands found in stream
[2026-08-31 20:35:09,233.233 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:35:09,236.236 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-08-31 20:35:09,768.768 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 20:35:09,771.771 INFO    ] Checking for system updates...
[2026-08-31 20:35:09,806.806 INFO    ] 200
[2026-08-31 20:35:09,809.809 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:35:09,861.861 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:35:09,863.863 INFO    ] No update needed
[2026-08-31 20:35:09,865.865 INFO    ] Checking for camera pi updates...
[2026-08-31 20:35:09,903.903 INFO    ] 200
[2026-08-31 20:35:09,905.905 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:35:09,946.946 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:35:10,034.034 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:35:10,036.036 INFO    ] No camera update needed
[2026-08-31 20:35:10,039.039 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:35:10,042.042 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:35:10,048.048 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:35:10,053.053 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:35:12,095.095 INFO    ] ================================================
[2026-08-31 20:35:12,110.110 INFO    ] Launching Daemon at Mon Aug 31 20:35:12 IST 2026
[2026-08-31 20:35:12,120.120 INFO    ] ================================================
[2026-08-31 20:35:12,692.692 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:35:12
[2026-08-31 20:35:13,273.273 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:35:13,540.540 INFO    ] Initializing speech engine...
[2026-08-31 20:35:13,549.549 INFO    ] 2026-08-31 20:35:13
[2026-08-31 20:35:13,831.831 INFO    ] 2026-08-31 20:35:13
[2026-08-31 20:35:13,868.868 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:35:14,067.067 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:35:14,078.078 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:35:14,252.252 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:35:14,262.262 INFO    ] time= 31/08/2026 20:35:14
[2026-08-31 20:35:14,270.270 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:35:14,321.321 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:35:14,444.444 INFO    ] No existing commands found in stream
[2026-08-31 20:35:19,470.470 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:35:19,472.472 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-08-31 20:35:23,524.524 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 20:35:23,526.526 INFO    ] Checking for system updates...
[2026-08-31 20:35:23,561.561 INFO    ] 200
[2026-08-31 20:35:23,564.564 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:35:23,620.620 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:35:23,622.622 INFO    ] No update needed
[2026-08-31 20:35:23,625.625 INFO    ] Checking for camera pi updates...
[2026-08-31 20:35:23,661.661 INFO    ] 200
[2026-08-31 20:35:23,663.663 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:35:23,707.707 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:35:23,805.805 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:35:23,807.807 INFO    ] No camera update needed
[2026-08-31 20:35:23,810.810 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:35:23,812.812 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:35:23,817.817 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:35:23,822.822 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:35:25,862.862 INFO    ] ================================================
[2026-08-31 20:35:25,877.877 INFO    ] Launching Daemon at Mon Aug 31 20:35:25 IST 2026
[2026-08-31 20:35:25,887.887 INFO    ] ================================================
[2026-08-31 20:35:26,472.472 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:35:26
[2026-08-31 20:35:27,055.055 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:35:27,323.323 INFO    ] Initializing speech engine...
[2026-08-31 20:35:27,333.333 INFO    ] 2026-08-31 20:35:27
[2026-08-31 20:35:27,583.583 INFO    ] 2026-08-31 20:35:27
[2026-08-31 20:35:27,626.626 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:35:27,810.810 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:35:27,813.813 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:35:27,956.956 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:35:27,963.963 INFO    ] time= 31/08/2026 20:35:27
[2026-08-31 20:35:28,009.009 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:35:28,030.030 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:35:28,157.157 INFO    ] No existing commands found in stream
[2026-08-31 20:35:33,167.167 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:35:33,170.170 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-08-31 20:35:36,306.306 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 20:35:36,308.308 INFO    ] Checking for system updates...
[2026-08-31 20:35:36,346.346 INFO    ] 200
[2026-08-31 20:35:36,350.350 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:35:36,405.405 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:35:36,408.408 INFO    ] No update needed
[2026-08-31 20:35:36,411.411 INFO    ] Checking for camera pi updates...
[2026-08-31 20:35:36,446.446 INFO    ] 200
[2026-08-31 20:35:36,449.449 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:35:36,495.495 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:35:36,575.575 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:35:36,577.577 INFO    ] No camera update needed
[2026-08-31 20:35:36,580.580 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:35:36,583.583 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:35:36,589.589 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:35:36,594.594 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:35:38,637.637 INFO    ] ================================================
[2026-08-31 20:35:38,652.652 INFO    ] Launching Daemon at Mon Aug 31 20:35:38 IST 2026
[2026-08-31 20:35:38,663.663 INFO    ] ================================================
[2026-08-31 20:35:39,302.302 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:35:39
[2026-08-31 20:35:39,926.926 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:35:40,179.179 INFO    ] Initializing speech engine...
[2026-08-31 20:35:40,187.187 INFO    ] 2026-08-31 20:35:40
[2026-08-31 20:35:40,462.462 INFO    ] 2026-08-31 20:35:40
[2026-08-31 20:35:40,498.498 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:35:40,750.750 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:35:40,760.760 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:35:40,894.894 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:35:40,965.965 INFO    ] time= 31/08/2026 20:35:40
[2026-08-31 20:35:41,014.014 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:35:41,029.029 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:35:41,174.174 INFO    ] No existing commands found in stream
[2026-08-31 20:35:46,186.186 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:35:46,189.189 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-08-31 20:35:49,763.763 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 20:35:49,765.765 INFO    ] Checking for system updates...
[2026-08-31 20:35:49,801.801 INFO    ] 200
[2026-08-31 20:35:49,803.803 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:35:49,861.861 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:35:49,864.864 INFO    ] No update needed
[2026-08-31 20:35:49,866.866 INFO    ] Checking for camera pi updates...
[2026-08-31 20:35:49,900.900 INFO    ] 200
[2026-08-31 20:35:49,903.903 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:35:49,943.943 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:35:50,029.029 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:35:50,031.031 INFO    ] No camera update needed
[2026-08-31 20:35:50,034.034 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:35:50,036.036 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:35:50,041.041 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:35:50,046.046 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:35:52,087.087 INFO    ] ================================================
[2026-08-31 20:35:52,103.103 INFO    ] Launching Daemon at Mon Aug 31 20:35:52 IST 2026
[2026-08-31 20:35:52,114.114 INFO    ] ================================================
[2026-08-31 20:35:52,687.687 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:35:52
[2026-08-31 20:35:53,272.272 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:35:53,540.540 INFO    ] Initializing speech engine...
[2026-08-31 20:35:53,549.549 INFO    ] 2026-08-31 20:35:53
[2026-08-31 20:35:53,794.794 INFO    ] 2026-08-31 20:35:53
[2026-08-31 20:35:53,829.829 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:35:54,080.080 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:35:54,089.089 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:35:54,220.220 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:35:54,263.263 INFO    ] time= 31/08/2026 20:35:54
[2026-08-31 20:35:54,317.317 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:35:54,353.353 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:35:54,486.486 INFO    ] No existing commands found in stream
[2026-08-31 20:35:59,511.511 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:35:59,514.514 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-08-31 20:36:04,370.370 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 20:36:04,373.373 INFO    ] Checking for system updates...
[2026-08-31 20:36:04,409.409 INFO    ] 200
[2026-08-31 20:36:04,411.411 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:36:04,475.475 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:36:04,477.477 INFO    ] No update needed
[2026-08-31 20:36:04,480.480 INFO    ] Checking for camera pi updates...
[2026-08-31 20:36:04,518.518 INFO    ] 200
[2026-08-31 20:36:04,520.520 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:36:04,560.560 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:36:04,662.662 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:36:04,664.664 INFO    ] No camera update needed
[2026-08-31 20:36:04,667.667 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:36:04,669.669 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:36:04,674.674 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:36:04,679.679 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:36:06,720.720 INFO    ] ================================================
[2026-08-31 20:36:06,736.736 INFO    ] Launching Daemon at Mon Aug 31 20:36:06 IST 2026
[2026-08-31 20:36:06,746.746 INFO    ] ================================================
[2026-08-31 20:36:07,410.410 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:36:07
[2026-08-31 20:36:08,077.077 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:36:08,353.353 INFO    ] Initializing speech engine...
[2026-08-31 20:36:08,359.359 INFO    ] 2026-08-31 20:36:08
[2026-08-31 20:36:08,608.608 INFO    ] 2026-08-31 20:36:08
[2026-08-31 20:36:08,671.671 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:36:08,898.898 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:36:08,901.901 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:36:09,096.096 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:36:09,159.159 INFO    ] time= 31/08/2026 20:36:09
[2026-08-31 20:36:09,166.166 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:36:09,184.184 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:36:09,299.299 INFO    ] No existing commands found in stream
[2026-08-31 20:36:14,321.321 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:36:14,324.324 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-08-31 20:36:15,345.345 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 20:36:15,348.348 INFO    ] Checking for system updates...
[2026-08-31 20:36:15,385.385 INFO    ] 200
[2026-08-31 20:36:15,388.388 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:36:15,450.450 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:36:15,453.453 INFO    ] No update needed
[2026-08-31 20:36:15,458.458 INFO    ] Checking for camera pi updates...
[2026-08-31 20:36:15,492.492 INFO    ] 200
[2026-08-31 20:36:15,495.495 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:36:15,541.541 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:36:15,626.626 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:36:15,628.628 INFO    ] No camera update needed
[2026-08-31 20:36:15,631.631 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:36:15,633.633 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:36:15,638.638 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:36:15,643.643 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:36:17,686.686 INFO    ] ================================================
[2026-08-31 20:36:17,702.702 INFO    ] Launching Daemon at Mon Aug 31 20:36:17 IST 2026
[2026-08-31 20:36:17,713.713 INFO    ] ================================================
[2026-08-31 20:36:18,323.323 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:36:18
[2026-08-31 20:36:19,003.003 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:36:19,309.309 INFO    ] Initializing speech engine...
[2026-08-31 20:36:19,317.317 INFO    ] 2026-08-31 20:36:19
[2026-08-31 20:36:19,593.593 INFO    ] 2026-08-31 20:36:19
[2026-08-31 20:36:19,649.649 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:36:19,936.936 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:36:19,945.945 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:36:20,139.139 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:36:20,146.146 INFO    ] time= 31/08/2026 20:36:20
[2026-08-31 20:36:20,165.165 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:36:20,194.194 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:36:20,336.336 INFO    ] No existing commands found in stream
[2026-08-31 20:36:25,368.368 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:36:25,371.371 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-08-31 20:36:26,291.291 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 20:36:26,294.294 INFO    ] Checking for system updates...
[2026-08-31 20:36:26,332.332 INFO    ] 200
[2026-08-31 20:36:26,335.335 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:36:26,388.388 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:36:26,390.390 INFO    ] No update needed
[2026-08-31 20:36:26,393.393 INFO    ] Checking for camera pi updates...
[2026-08-31 20:36:26,426.426 INFO    ] 200
[2026-08-31 20:36:26,429.429 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:36:26,476.476 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:36:26,563.563 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:36:26,566.566 INFO    ] No camera update needed
[2026-08-31 20:36:26,568.568 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:36:26,571.571 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:36:26,576.576 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:36:26,581.581 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:36:28,621.621 INFO    ] ================================================
[2026-08-31 20:36:28,636.636 INFO    ] Launching Daemon at Mon Aug 31 20:36:28 IST 2026
[2026-08-31 20:36:28,647.647 INFO    ] ================================================
[2026-08-31 20:36:29,328.328 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:36:29
[2026-08-31 20:36:30,030.030 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:36:30,325.325 INFO    ] Initializing speech engine...
[2026-08-31 20:36:30,336.336 INFO    ] 2026-08-31 20:36:30
[2026-08-31 20:36:30,611.611 INFO    ] 2026-08-31 20:36:30
[2026-08-31 20:36:30,637.637 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:36:30,802.802 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:36:30,808.808 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:36:30,966.966 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:36:30,976.976 INFO    ] time= 31/08/2026 20:36:30
[2026-08-31 20:36:30,982.982 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:36:31,006.006 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:36:31,127.127 INFO    ] No existing commands found in stream
[2026-08-31 20:36:36,147.147 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:36:36,150.150 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-08-31 20:36:40,362.362 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 20:36:40,364.364 INFO    ] Checking for system updates...
[2026-08-31 20:36:40,400.400 INFO    ] 200
[2026-08-31 20:36:40,403.403 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:36:40,455.455 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:36:40,457.457 INFO    ] No update needed
[2026-08-31 20:36:40,459.459 INFO    ] Checking for camera pi updates...
[2026-08-31 20:36:40,494.494 INFO    ] 200
[2026-08-31 20:36:40,496.496 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:36:40,543.543 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:36:40,630.630 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:36:40,632.632 INFO    ] No camera update needed
[2026-08-31 20:36:40,634.634 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:36:40,636.636 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:36:40,642.642 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:36:40,647.647 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:36:42,688.688 INFO    ] ================================================
[2026-08-31 20:36:42,705.705 INFO    ] Launching Daemon at Mon Aug 31 20:36:42 IST 2026
[2026-08-31 20:36:42,716.716 INFO    ] ================================================
[2026-08-31 20:36:43,298.298 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:36:43
[2026-08-31 20:36:43,987.987 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:36:44,299.299 INFO    ] Initializing speech engine...
[2026-08-31 20:36:44,307.307 INFO    ] 2026-08-31 20:36:44
[2026-08-31 20:36:44,588.588 INFO    ] 2026-08-31 20:36:44
[2026-08-31 20:36:44,645.645 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:36:44,871.871 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:36:44,878.878 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:36:45,097.097 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:36:45,140.140 INFO    ] time= 31/08/2026 20:36:45
[2026-08-31 20:36:45,156.156 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:36:45,181.181 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:36:45,335.335 INFO    ] No existing commands found in stream
[2026-08-31 20:36:50,366.366 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:36:50,370.370 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-08-31 20:36:53,241.241 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 20:36:53,244.244 INFO    ] Checking for system updates...
[2026-08-31 20:36:53,286.286 INFO    ] 200
[2026-08-31 20:36:53,289.289 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:36:53,352.352 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:36:53,355.355 INFO    ] No update needed
[2026-08-31 20:36:53,358.358 INFO    ] Checking for camera pi updates...
[2026-08-31 20:36:53,397.397 INFO    ] 200
[2026-08-31 20:36:53,401.401 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:36:53,450.450 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:36:53,533.533 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:36:53,535.535 INFO    ] No camera update needed
[2026-08-31 20:36:53,538.538 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:36:53,540.540 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:36:53,545.545 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:36:53,550.550 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:36:55,591.591 INFO    ] ================================================
[2026-08-31 20:36:55,607.607 INFO    ] Launching Daemon at Mon Aug 31 20:36:55 IST 2026
[2026-08-31 20:36:55,619.619 INFO    ] ================================================
[2026-08-31 20:36:56,293.293 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:36:56
[2026-08-31 20:36:56,987.987 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:36:57,299.299 INFO    ] Initializing speech engine...
[2026-08-31 20:36:57,313.313 INFO    ] 2026-08-31 20:36:57
[2026-08-31 20:36:57,625.625 INFO    ] 2026-08-31 20:36:57
[2026-08-31 20:36:57,710.710 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:36:57,927.927 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:36:57,933.933 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:36:58,126.126 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:36:58,153.153 INFO    ] time= 31/08/2026 20:36:58
[2026-08-31 20:36:58,182.182 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:36:58,188.188 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:36:58,289.289 INFO    ] No existing commands found in stream
[2026-08-31 20:37:03,302.302 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:37:03,305.305 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-08-31 20:37:05,416.416 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 20:37:05,419.419 INFO    ] Checking for system updates...
[2026-08-31 20:37:05,455.455 INFO    ] 200
[2026-08-31 20:37:05,457.457 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:37:05,513.513 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:37:05,515.515 INFO    ] No update needed
[2026-08-31 20:37:05,518.518 INFO    ] Checking for camera pi updates...
[2026-08-31 20:37:05,552.552 INFO    ] 200
[2026-08-31 20:37:05,554.554 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:37:05,594.594 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:37:05,677.677 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:37:05,679.679 INFO    ] No camera update needed
[2026-08-31 20:37:05,682.682 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:37:05,684.684 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:37:05,690.690 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:37:05,695.695 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:37:07,734.734 INFO    ] ================================================
[2026-08-31 20:37:07,749.749 INFO    ] Launching Daemon at Mon Aug 31 20:37:07 IST 2026
[2026-08-31 20:37:07,760.760 INFO    ] ================================================
[2026-08-31 20:37:08,343.343 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:37:08
[2026-08-31 20:37:08,937.937 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:37:09,193.193 INFO    ] Initializing speech engine...
[2026-08-31 20:37:09,201.201 INFO    ] 2026-08-31 20:37:09
[2026-08-31 20:37:09,495.495 INFO    ] 2026-08-31 20:37:09
[2026-08-31 20:37:09,520.520 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:37:09,730.730 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:37:09,745.745 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:37:09,905.905 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:37:09,916.916 INFO    ] time= 31/08/2026 20:37:09
[2026-08-31 20:37:09,921.921 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:37:09,926.926 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:37:10,000.000 INFO    ] No existing commands found in stream
[2026-08-31 20:37:15,012.012 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:37:15,015.015 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-08-31 20:37:19,381.381 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 20:37:19,384.384 INFO    ] Checking for system updates...
[2026-08-31 20:37:19,423.423 INFO    ] 200
[2026-08-31 20:37:19,426.426 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:37:19,478.478 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:37:19,480.480 INFO    ] No update needed
[2026-08-31 20:37:19,483.483 INFO    ] Checking for camera pi updates...
[2026-08-31 20:37:19,523.523 INFO    ] 200
[2026-08-31 20:37:19,526.526 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:37:19,571.571 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:37:19,656.656 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:37:19,658.658 INFO    ] No camera update needed
[2026-08-31 20:37:19,661.661 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:37:19,663.663 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:37:19,668.668 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:37:19,673.673 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:37:21,716.716 INFO    ] ================================================
[2026-08-31 20:37:21,731.731 INFO    ] Launching Daemon at Mon Aug 31 20:37:21 IST 2026
[2026-08-31 20:37:21,742.742 INFO    ] ================================================
[2026-08-31 20:37:22,312.312 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:37:22
[2026-08-31 20:37:22,979.979 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:37:23,277.277 INFO    ] Initializing speech engine...
[2026-08-31 20:37:23,287.287 INFO    ] 2026-08-31 20:37:23
[2026-08-31 20:37:23,553.553 INFO    ] 2026-08-31 20:37:23
[2026-08-31 20:37:23,590.590 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:37:23,818.818 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:37:23,863.863 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:37:24,042.042 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:37:24,059.059 INFO    ] time= 31/08/2026 20:37:24
[2026-08-31 20:37:24,129.129 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:37:24,192.192 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:37:24,309.309 INFO    ] No existing commands found in stream
[2026-08-31 20:37:29,318.318 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:37:29,321.321 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-08-31 20:37:30,013.013 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 20:37:30,016.016 INFO    ] Checking for system updates...
[2026-08-31 20:37:30,052.052 INFO    ] 200
[2026-08-31 20:37:30,055.055 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:37:30,112.112 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:37:30,114.114 INFO    ] No update needed
[2026-08-31 20:37:30,117.117 INFO    ] Checking for camera pi updates...
[2026-08-31 20:37:30,153.153 INFO    ] 200
[2026-08-31 20:37:30,155.155 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:37:30,196.196 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:37:30,295.295 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:37:30,297.297 INFO    ] No camera update needed
[2026-08-31 20:37:30,300.300 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:37:30,302.302 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:37:30,307.307 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:37:30,312.312 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:37:32,353.353 INFO    ] ================================================
[2026-08-31 20:37:32,369.369 INFO    ] Launching Daemon at Mon Aug 31 20:37:32 IST 2026
[2026-08-31 20:37:32,381.381 INFO    ] ================================================
[2026-08-31 20:37:32,985.985 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:37:32
[2026-08-31 20:37:33,581.581 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:37:33,846.846 INFO    ] Initializing speech engine...
[2026-08-31 20:37:33,871.871 INFO    ] 2026-08-31 20:37:33
[2026-08-31 20:37:34,143.143 INFO    ] 2026-08-31 20:37:34
[2026-08-31 20:37:34,181.181 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:37:34,406.406 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:37:34,470.470 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:37:34,627.627 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:37:34,676.676 INFO    ] time= 31/08/2026 20:37:34
[2026-08-31 20:37:34,736.736 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:37:34,772.772 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:37:34,837.837 INFO    ] No existing commands found in stream
[2026-08-31 20:37:39,849.849 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:37:39,852.852 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-08-31 20:37:42,283.283 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 20:37:42,285.285 INFO    ] Checking for system updates...
[2026-08-31 20:37:42,321.321 INFO    ] 200
[2026-08-31 20:37:42,324.324 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:37:42,377.377 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:37:42,380.380 INFO    ] No update needed
[2026-08-31 20:37:42,382.382 INFO    ] Checking for camera pi updates...
[2026-08-31 20:37:42,415.415 INFO    ] 200
[2026-08-31 20:37:42,418.418 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:37:42,462.462 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:37:42,548.548 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:37:42,551.551 INFO    ] No camera update needed
[2026-08-31 20:37:42,553.553 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:37:42,555.555 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:37:42,561.561 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:37:42,566.566 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:37:44,606.606 INFO    ] ================================================
[2026-08-31 20:37:44,623.623 INFO    ] Launching Daemon at Mon Aug 31 20:37:44 IST 2026
[2026-08-31 20:37:44,634.634 INFO    ] ================================================
[2026-08-31 20:37:45,224.224 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:37:45
[2026-08-31 20:37:45,838.838 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:37:46,117.117 INFO    ] Initializing speech engine...
[2026-08-31 20:37:46,124.124 INFO    ] 2026-08-31 20:37:46
[2026-08-31 20:37:46,442.442 INFO    ] 2026-08-31 20:37:46
[2026-08-31 20:37:46,481.481 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:37:46,661.661 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:37:46,680.680 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:37:46,846.846 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:37:46,856.856 INFO    ] time= 31/08/2026 20:37:46
[2026-08-31 20:37:46,907.907 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:37:46,928.928 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:37:47,053.053 INFO    ] No existing commands found in stream
[2026-08-31 20:37:52,068.068 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:37:52,071.071 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-08-31 20:37:55,929.929 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 20:37:55,932.932 INFO    ] Checking for system updates...
[2026-08-31 20:37:55,967.967 INFO    ] 200
[2026-08-31 20:37:55,970.970 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:37:56,024.024 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:37:56,026.026 INFO    ] No update needed
[2026-08-31 20:37:56,029.029 INFO    ] Checking for camera pi updates...
[2026-08-31 20:37:56,066.066 INFO    ] 200
[2026-08-31 20:37:56,068.068 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:37:56,112.112 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:37:56,192.192 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:37:56,195.195 INFO    ] No camera update needed
[2026-08-31 20:37:56,197.197 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:37:56,200.200 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:37:56,205.205 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:37:56,210.210 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:37:58,250.250 INFO    ] ================================================
[2026-08-31 20:37:58,265.265 INFO    ] Launching Daemon at Mon Aug 31 20:37:58 IST 2026
[2026-08-31 20:37:58,275.275 INFO    ] ================================================
[2026-08-31 20:37:58,933.933 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:37:58
[2026-08-31 20:37:59,606.606 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:37:59,907.907 INFO    ] Initializing speech engine...
[2026-08-31 20:37:59,913.913 INFO    ] 2026-08-31 20:37:59
[2026-08-31 20:38:00,185.185 INFO    ] 2026-08-31 20:38:00
[2026-08-31 20:38:00,220.220 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:38:00,474.474 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:38:00,485.485 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:38:00,621.621 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:38:00,667.667 INFO    ] time= 31/08/2026 20:38:00
[2026-08-31 20:38:00,711.711 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:38:00,757.757 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:38:00,889.889 INFO    ] No existing commands found in stream
[2026-08-31 20:38:05,914.914 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:38:05,918.918 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-08-31 20:38:07,622.622 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 20:38:07,625.625 INFO    ] Checking for system updates...
[2026-08-31 20:38:07,662.662 INFO    ] 200
[2026-08-31 20:38:07,665.665 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:38:07,718.718 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:38:07,721.721 INFO    ] No update needed
[2026-08-31 20:38:07,724.724 INFO    ] Checking for camera pi updates...
[2026-08-31 20:38:07,758.758 INFO    ] 200
[2026-08-31 20:38:07,761.761 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:38:07,807.807 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:38:07,993.993 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:38:07,996.996 INFO    ] No camera update needed
[2026-08-31 20:38:07,999.999 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:38:08,001.001 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:38:08,007.007 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:38:08,013.013 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:38:10,056.056 INFO    ] ================================================
[2026-08-31 20:38:10,071.071 INFO    ] Launching Daemon at Mon Aug 31 20:38:10 IST 2026
[2026-08-31 20:38:10,083.083 INFO    ] ================================================
[2026-08-31 20:38:10,719.719 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:38:10
[2026-08-31 20:38:11,374.374 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:38:11,675.675 INFO    ] Initializing speech engine...
[2026-08-31 20:38:11,683.683 INFO    ] 2026-08-31 20:38:11
[2026-08-31 20:38:11,977.977 INFO    ] 2026-08-31 20:38:11
[2026-08-31 20:38:12,088.088 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:38:12,303.303 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:38:12,312.312 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:38:12,511.511 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:38:12,529.529 INFO    ] time= 31/08/2026 20:38:12
[2026-08-31 20:38:12,540.540 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:38:12,570.570 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:38:12,671.671 INFO    ] No existing commands found in stream
[2026-08-31 20:38:17,686.686 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:38:17,690.690 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-08-31 20:38:21,013.013 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 20:38:21,016.016 INFO    ] Checking for system updates...
[2026-08-31 20:38:21,053.053 INFO    ] 200
[2026-08-31 20:38:21,055.055 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:38:21,114.114 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:38:21,117.117 INFO    ] No update needed
[2026-08-31 20:38:21,120.120 INFO    ] Checking for camera pi updates...
[2026-08-31 20:38:21,158.158 INFO    ] 200
[2026-08-31 20:38:21,161.161 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:38:21,208.208 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:38:21,295.295 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:38:21,298.298 INFO    ] No camera update needed
[2026-08-31 20:38:21,301.301 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:38:21,303.303 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:38:21,309.309 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:38:21,315.315 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:38:23,356.356 INFO    ] ================================================
[2026-08-31 20:38:23,372.372 INFO    ] Launching Daemon at Mon Aug 31 20:38:23 IST 2026
[2026-08-31 20:38:23,383.383 INFO    ] ================================================
[2026-08-31 20:38:23,950.950 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:38:23
[2026-08-31 20:38:24,535.535 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:38:24,805.805 INFO    ] Initializing speech engine...
[2026-08-31 20:38:24,814.814 INFO    ] 2026-08-31 20:38:24
[2026-08-31 20:38:25,064.064 INFO    ] 2026-08-31 20:38:25
[2026-08-31 20:38:25,098.098 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:38:25,300.300 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:38:25,342.342 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:38:25,500.500 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:38:25,533.533 INFO    ] time= 31/08/2026 20:38:25
[2026-08-31 20:38:25,576.576 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:38:25,626.626 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:38:25,756.756 INFO    ] No existing commands found in stream
[2026-08-31 20:38:30,778.778 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:38:30,781.781 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-08-31 20:38:34,861.861 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 20:38:34,863.863 INFO    ] Checking for system updates...
[2026-08-31 20:38:34,900.900 INFO    ] 200
[2026-08-31 20:38:34,903.903 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:38:34,962.962 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:38:34,965.965 INFO    ] No update needed
[2026-08-31 20:38:34,968.968 INFO    ] Checking for camera pi updates...
[2026-08-31 20:38:35,005.005 INFO    ] 200
[2026-08-31 20:38:35,008.008 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:38:35,054.054 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:38:35,136.136 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:38:35,139.139 INFO    ] No camera update needed
[2026-08-31 20:38:35,142.142 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:38:35,144.144 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:38:35,150.150 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:38:35,156.156 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:38:37,199.199 INFO    ] ================================================
[2026-08-31 20:38:37,214.214 INFO    ] Launching Daemon at Mon Aug 31 20:38:37 IST 2026
[2026-08-31 20:38:37,225.225 INFO    ] ================================================
[2026-08-31 20:38:37,841.841 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:38:37
[2026-08-31 20:38:38,464.464 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:38:38,718.718 INFO    ] Initializing speech engine...
[2026-08-31 20:38:38,741.741 INFO    ] 2026-08-31 20:38:38
[2026-08-31 20:38:38,996.996 INFO    ] 2026-08-31 20:38:38
[2026-08-31 20:38:39,029.029 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:38:39,232.232 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:38:39,290.290 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:38:39,440.440 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:38:39,499.499 INFO    ] time= 31/08/2026 20:38:39
[2026-08-31 20:38:39,559.559 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:38:39,571.571 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:38:39,699.699 INFO    ] No existing commands found in stream
[2026-08-31 20:38:44,724.724 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:38:44,727.727 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-08-31 20:38:47,654.654 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 20:38:47,657.657 INFO    ] Checking for system updates...
[2026-08-31 20:38:47,696.696 INFO    ] 200
[2026-08-31 20:38:47,699.699 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:38:47,752.752 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:38:47,755.755 INFO    ] No update needed
[2026-08-31 20:38:47,757.757 INFO    ] Checking for camera pi updates...
[2026-08-31 20:38:47,790.790 INFO    ] 200
[2026-08-31 20:38:47,792.792 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:38:47,832.832 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:38:47,901.901 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:38:47,903.903 INFO    ] No camera update needed
[2026-08-31 20:38:47,906.906 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:38:47,908.908 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:38:47,913.913 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:38:47,918.918 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:38:49,960.960 INFO    ] ================================================
[2026-08-31 20:38:49,975.975 INFO    ] Launching Daemon at Mon Aug 31 20:38:49 IST 2026
[2026-08-31 20:38:49,986.986 INFO    ] ================================================
[2026-08-31 20:38:50,567.567 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:38:50
[2026-08-31 20:38:51,164.164 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:38:51,441.441 INFO    ] Initializing speech engine...
[2026-08-31 20:38:51,448.448 INFO    ] 2026-08-31 20:38:51
[2026-08-31 20:38:51,710.710 INFO    ] 2026-08-31 20:38:51
[2026-08-31 20:38:51,764.764 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:38:52,014.014 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:38:52,020.020 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:38:52,251.251 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:38:52,258.258 INFO    ] time= 31/08/2026 20:38:52
[2026-08-31 20:38:52,275.275 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:38:52,303.303 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:38:52,408.408 INFO    ] No existing commands found in stream
[2026-08-31 20:38:57,421.421 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:38:57,424.424 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-08-31 20:38:59,531.531 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 20:38:59,534.534 INFO    ] Checking for system updates...
[2026-08-31 20:38:59,573.573 INFO    ] 200
[2026-08-31 20:38:59,576.576 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:38:59,628.628 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:38:59,630.630 INFO    ] No update needed
[2026-08-31 20:38:59,633.633 INFO    ] Checking for camera pi updates...
[2026-08-31 20:38:59,666.666 INFO    ] 200
[2026-08-31 20:38:59,669.669 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:38:59,714.714 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:38:59,796.796 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:38:59,798.798 INFO    ] No camera update needed
[2026-08-31 20:38:59,801.801 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:38:59,803.803 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:38:59,809.809 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:38:59,814.814 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:39:01,855.855 INFO    ] ================================================
[2026-08-31 20:39:01,878.878 INFO    ] Launching Daemon at Mon Aug 31 20:39:01 IST 2026
[2026-08-31 20:39:01,894.894 INFO    ] ================================================
[2026-08-31 20:39:02,597.597 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:39:02
[2026-08-31 20:39:03,255.255 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:39:03,534.534 INFO    ] Initializing speech engine...
[2026-08-31 20:39:03,542.542 INFO    ] 2026-08-31 20:39:03
[2026-08-31 20:39:03,805.805 INFO    ] 2026-08-31 20:39:03
[2026-08-31 20:39:03,859.859 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:39:04,088.088 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:39:04,097.097 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:39:04,243.243 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:39:04,303.303 INFO    ] time= 31/08/2026 20:39:04
[2026-08-31 20:39:04,363.363 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:39:04,375.375 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:39:04,546.546 INFO    ] No existing commands found in stream
[2026-08-31 20:39:09,572.572 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:39:09,574.574 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-08-31 20:39:14,048.048 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 20:39:14,051.051 INFO    ] Checking for system updates...
[2026-08-31 20:39:14,086.086 INFO    ] 200
[2026-08-31 20:39:14,089.089 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:39:14,141.141 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:39:14,143.143 INFO    ] No update needed
[2026-08-31 20:39:14,146.146 INFO    ] Checking for camera pi updates...
[2026-08-31 20:39:14,184.184 INFO    ] 200
[2026-08-31 20:39:14,186.186 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:39:14,227.227 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:39:14,311.311 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:39:14,314.314 INFO    ] No camera update needed
[2026-08-31 20:39:14,317.317 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:39:14,320.320 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:39:14,326.326 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:39:14,332.332 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:39:16,373.373 INFO    ] ================================================
[2026-08-31 20:39:16,389.389 INFO    ] Launching Daemon at Mon Aug 31 20:39:16 IST 2026
[2026-08-31 20:39:16,401.401 INFO    ] ================================================
[2026-08-31 20:39:17,065.065 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:39:17
[2026-08-31 20:39:17,753.753 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:39:18,062.062 INFO    ] Initializing speech engine...
[2026-08-31 20:39:18,075.075 INFO    ] 2026-08-31 20:39:18
[2026-08-31 20:39:18,389.389 INFO    ] 2026-08-31 20:39:18
[2026-08-31 20:39:18,474.474 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:39:18,690.690 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:39:18,695.695 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:39:18,891.891 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:39:18,898.898 INFO    ] time= 31/08/2026 20:39:18
[2026-08-31 20:39:18,920.920 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:39:18,946.946 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:39:19,054.054 INFO    ] No existing commands found in stream
[2026-08-31 20:39:24,080.080 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:39:24,083.083 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-08-31 20:39:27,653.653 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 20:39:27,656.656 INFO    ] Checking for system updates...
[2026-08-31 20:39:27,698.698 INFO    ] 200
[2026-08-31 20:39:27,702.702 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:39:27,755.755 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:39:27,758.758 INFO    ] No update needed
[2026-08-31 20:39:27,761.761 INFO    ] Checking for camera pi updates...
[2026-08-31 20:39:27,795.795 INFO    ] 200
[2026-08-31 20:39:27,798.798 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:39:27,846.846 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:39:27,927.927 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:39:27,930.930 INFO    ] No camera update needed
[2026-08-31 20:39:27,933.933 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:39:27,935.935 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:39:27,942.942 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:39:27,948.948 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:39:29,988.988 INFO    ] ================================================
[2026-08-31 20:39:30,004.004 INFO    ] Launching Daemon at Mon Aug 31 20:39:29 IST 2026
[2026-08-31 20:39:30,016.016 INFO    ] ================================================
[2026-08-31 20:39:30,598.598 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:39:30
[2026-08-31 20:39:31,209.209 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:39:31,510.510 INFO    ] Initializing speech engine...
[2026-08-31 20:39:31,518.518 INFO    ] 2026-08-31 20:39:31
[2026-08-31 20:39:31,807.807 INFO    ] 2026-08-31 20:39:31
[2026-08-31 20:39:31,852.852 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:39:32,082.082 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:39:32,091.091 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:39:32,246.246 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:39:32,312.312 INFO    ] time= 31/08/2026 20:39:32
[2026-08-31 20:39:32,366.366 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:39:32,373.373 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:39:32,518.518 INFO    ] No existing commands found in stream
[2026-08-31 20:39:37,536.536 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:39:37,539.539 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-08-31 20:39:42,001.001 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 20:39:42,003.003 INFO    ] Checking for system updates...
[2026-08-31 20:39:42,039.039 INFO    ] 200
[2026-08-31 20:39:42,041.041 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:39:42,098.098 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:39:42,101.101 INFO    ] No update needed
[2026-08-31 20:39:42,103.103 INFO    ] Checking for camera pi updates...
[2026-08-31 20:39:42,138.138 INFO    ] 200
[2026-08-31 20:39:42,140.140 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:39:42,181.181 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:39:42,267.267 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:39:42,270.270 INFO    ] No camera update needed
[2026-08-31 20:39:42,272.272 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:39:42,275.275 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:39:42,280.280 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:39:42,285.285 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:39:44,325.325 INFO    ] ================================================
[2026-08-31 20:39:44,341.341 INFO    ] Launching Daemon at Mon Aug 31 20:39:44 IST 2026
[2026-08-31 20:39:44,353.353 INFO    ] ================================================
[2026-08-31 20:39:44,923.923 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:39:44
[2026-08-31 20:39:45,509.509 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:39:45,766.766 INFO    ] Initializing speech engine...
[2026-08-31 20:39:45,785.785 INFO    ] 2026-08-31 20:39:45
[2026-08-31 20:39:46,032.032 INFO    ] 2026-08-31 20:39:46
[2026-08-31 20:39:46,068.068 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:39:46,715.715 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:39:46,773.773 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:39:46,967.967 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:39:46,998.998 INFO    ] time= 31/08/2026 20:39:46
[2026-08-31 20:39:47,017.017 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:39:47,027.027 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:39:47,155.155 INFO    ] No existing commands found in stream
[2026-08-31 20:39:52,165.165 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:39:52,168.168 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-08-31 20:39:55,587.587 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 20:39:55,590.590 INFO    ] Checking for system updates...
[2026-08-31 20:39:55,626.626 INFO    ] 200
[2026-08-31 20:39:55,628.628 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:39:55,687.687 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:39:55,690.690 INFO    ] No update needed
[2026-08-31 20:39:55,692.692 INFO    ] Checking for camera pi updates...
[2026-08-31 20:39:55,725.725 INFO    ] 200
[2026-08-31 20:39:55,728.728 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:39:55,768.768 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:39:55,837.837 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:39:55,840.840 INFO    ] No camera update needed
[2026-08-31 20:39:55,842.842 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:39:55,844.844 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:39:55,850.850 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:39:55,855.855 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:39:57,897.897 INFO    ] ================================================
[2026-08-31 20:39:57,913.913 INFO    ] Launching Daemon at Mon Aug 31 20:39:57 IST 2026
[2026-08-31 20:39:57,925.925 INFO    ] ================================================
[2026-08-31 20:39:58,491.491 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:39:58
[2026-08-31 20:39:59,076.076 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:39:59,347.347 INFO    ] Initializing speech engine...
[2026-08-31 20:39:59,356.356 INFO    ] 2026-08-31 20:39:59
[2026-08-31 20:39:59,611.611 INFO    ] 2026-08-31 20:39:59
[2026-08-31 20:39:59,645.645 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:39:59,916.916 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:39:59,921.921 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:40:00,177.177 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:40:00,188.188 INFO    ] time= 31/08/2026 20:40:00
[2026-08-31 20:40:00,203.203 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:40:00,210.210 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:40:00,328.328 INFO    ] No existing commands found in stream
[2026-08-31 20:40:05,354.354 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:40:05,357.357 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-08-31 20:40:08,842.842 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 20:40:08,844.844 INFO    ] Checking for system updates...
[2026-08-31 20:40:08,881.881 INFO    ] 200
[2026-08-31 20:40:08,884.884 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:40:08,938.938 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:40:08,941.941 INFO    ] No update needed
[2026-08-31 20:40:08,944.944 INFO    ] Checking for camera pi updates...
[2026-08-31 20:40:08,978.978 INFO    ] 200
[2026-08-31 20:40:08,981.981 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:40:09,022.022 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:40:09,123.123 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:40:09,126.126 INFO    ] No camera update needed
[2026-08-31 20:40:09,128.128 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:40:09,131.131 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:40:09,136.136 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:40:09,141.141 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:40:11,183.183 INFO    ] ================================================
[2026-08-31 20:40:11,199.199 INFO    ] Launching Daemon at Mon Aug 31 20:40:11 IST 2026
[2026-08-31 20:40:11,210.210 INFO    ] ================================================
[2026-08-31 20:40:11,861.861 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:40:11
[2026-08-31 20:40:12,533.533 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:40:12,836.836 INFO    ] Initializing speech engine...
[2026-08-31 20:40:12,843.843 INFO    ] 2026-08-31 20:40:12
[2026-08-31 20:40:13,131.131 INFO    ] 2026-08-31 20:40:13
[2026-08-31 20:40:13,175.175 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:40:13,462.462 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:40:13,471.471 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:40:13,671.671 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:40:13,678.678 INFO    ] time= 31/08/2026 20:40:13
[2026-08-31 20:40:13,699.699 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:40:13,726.726 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:40:13,836.836 INFO    ] No existing commands found in stream
[2026-08-31 20:40:18,861.861 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:40:18,864.864 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-08-31 20:40:19,492.492 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 20:40:19,495.495 INFO    ] Checking for system updates...
[2026-08-31 20:40:19,532.532 INFO    ] 200
[2026-08-31 20:40:19,535.535 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:40:19,589.589 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:40:19,592.592 INFO    ] No update needed
[2026-08-31 20:40:19,594.594 INFO    ] Checking for camera pi updates...
[2026-08-31 20:40:19,629.629 INFO    ] 200
[2026-08-31 20:40:19,631.631 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:40:19,679.679 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:40:19,865.865 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:40:19,867.867 INFO    ] No camera update needed
[2026-08-31 20:40:19,870.870 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:40:19,872.872 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:40:19,877.877 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:40:19,883.883 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:40:21,923.923 INFO    ] ================================================
[2026-08-31 20:40:21,938.938 INFO    ] Launching Daemon at Mon Aug 31 20:40:21 IST 2026
[2026-08-31 20:40:21,949.949 INFO    ] ================================================
[2026-08-31 20:40:22,593.593 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:40:22
[2026-08-31 20:40:23,257.257 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:40:23,554.554 INFO    ] Initializing speech engine...
[2026-08-31 20:40:23,563.563 INFO    ] 2026-08-31 20:40:23
[2026-08-31 20:40:23,833.833 INFO    ] 2026-08-31 20:40:23
[2026-08-31 20:40:23,888.888 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:40:24,240.240 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:40:24,292.292 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:40:24,520.520 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:40:24,569.569 INFO    ] time= 31/08/2026 20:40:24
[2026-08-31 20:40:24,626.626 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:40:24,660.660 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:40:24,818.818 INFO    ] No existing commands found in stream
[2026-08-31 20:40:29,837.837 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:40:29,840.840 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-08-31 20:40:32,770.770 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 20:40:32,773.773 INFO    ] Checking for system updates...
[2026-08-31 20:40:32,811.811 INFO    ] 200
[2026-08-31 20:40:32,814.814 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:40:32,866.866 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:40:32,869.869 INFO    ] No update needed
[2026-08-31 20:40:32,871.871 INFO    ] Checking for camera pi updates...
[2026-08-31 20:40:32,907.907 INFO    ] 200
[2026-08-31 20:40:32,909.909 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:40:32,950.950 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:40:33,049.049 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:40:33,052.052 INFO    ] No camera update needed
[2026-08-31 20:40:33,054.054 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:40:33,056.056 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:40:33,061.061 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:40:33,066.066 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:40:35,105.105 INFO    ] ================================================
[2026-08-31 20:40:35,121.121 INFO    ] Launching Daemon at Mon Aug 31 20:40:35 IST 2026
[2026-08-31 20:40:35,132.132 INFO    ] ================================================
[2026-08-31 20:40:35,712.712 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:40:35
[2026-08-31 20:40:36,295.295 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:40:36,563.563 INFO    ] Initializing speech engine...
[2026-08-31 20:40:36,572.572 INFO    ] 2026-08-31 20:40:36
[2026-08-31 20:40:36,827.827 INFO    ] 2026-08-31 20:40:36
[2026-08-31 20:40:36,861.861 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:40:37,046.046 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:40:37,066.066 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:40:37,205.205 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:40:37,211.211 INFO    ] time= 31/08/2026 20:40:37
[2026-08-31 20:40:37,262.262 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:40:37,279.279 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:40:37,408.408 INFO    ] No existing commands found in stream
[2026-08-31 20:40:42,418.418 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:40:42,421.421 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-08-31 20:40:44,402.402 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 20:40:44,405.405 INFO    ] Checking for system updates...
[2026-08-31 20:40:44,440.440 INFO    ] 200
[2026-08-31 20:40:44,443.443 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:40:44,496.496 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:40:44,498.498 INFO    ] No update needed
[2026-08-31 20:40:44,501.501 INFO    ] Checking for camera pi updates...
[2026-08-31 20:40:44,535.535 INFO    ] 200
[2026-08-31 20:40:44,537.537 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:40:44,577.577 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:40:44,657.657 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:40:44,659.659 INFO    ] No camera update needed
[2026-08-31 20:40:44,661.661 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:40:44,664.664 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:40:44,669.669 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:40:44,674.674 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:40:46,714.714 INFO    ] ================================================
[2026-08-31 20:40:46,729.729 INFO    ] Launching Daemon at Mon Aug 31 20:40:46 IST 2026
[2026-08-31 20:40:46,740.740 INFO    ] ================================================
[2026-08-31 20:40:47,305.305 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:40:47
[2026-08-31 20:40:47,896.896 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:40:48,158.158 INFO    ] Initializing speech engine...
[2026-08-31 20:40:48,164.164 INFO    ] 2026-08-31 20:40:48
[2026-08-31 20:40:48,460.460 INFO    ] 2026-08-31 20:40:48
[2026-08-31 20:40:48,500.500 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:40:48,771.771 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:40:48,791.791 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:40:48,948.948 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:40:48,990.990 INFO    ] time= 31/08/2026 20:40:48
[2026-08-31 20:40:49,029.029 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:40:49,078.078 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:40:49,160.160 INFO    ] No existing commands found in stream
[2026-08-31 20:40:54,172.172 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:40:54,175.175 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-08-31 20:40:56,340.340 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 20:40:56,343.343 INFO    ] Checking for system updates...
[2026-08-31 20:40:56,379.379 INFO    ] 200
[2026-08-31 20:40:56,382.382 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:40:56,436.436 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:40:56,439.439 INFO    ] No update needed
[2026-08-31 20:40:56,441.441 INFO    ] Checking for camera pi updates...
[2026-08-31 20:40:56,475.475 INFO    ] 200
[2026-08-31 20:40:56,477.477 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:40:56,522.522 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:40:56,607.607 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:40:56,610.610 INFO    ] No camera update needed
[2026-08-31 20:40:56,612.612 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:40:56,614.614 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:40:56,620.620 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:40:56,625.625 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:40:58,664.664 INFO    ] ================================================
[2026-08-31 20:40:58,679.679 INFO    ] Launching Daemon at Mon Aug 31 20:40:58 IST 2026
[2026-08-31 20:40:58,690.690 INFO    ] ================================================
[2026-08-31 20:40:59,259.259 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:40:59
[2026-08-31 20:40:59,843.843 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:41:00,111.111 INFO    ] Initializing speech engine...
[2026-08-31 20:41:00,123.123 INFO    ] 2026-08-31 20:41:00
[2026-08-31 20:41:00,374.374 INFO    ] 2026-08-31 20:41:00
[2026-08-31 20:41:00,440.440 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:41:00,668.668 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:41:00,677.677 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:41:00,888.888 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:41:00,933.933 INFO    ] time= 31/08/2026 20:41:00
[2026-08-31 20:41:00,949.949 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:41:00,967.967 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:41:01,080.080 INFO    ] No existing commands found in stream
[2026-08-31 20:41:06,108.108 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:41:06,111.111 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-08-31 20:41:08,307.307 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 20:41:08,310.310 INFO    ] Checking for system updates...
[2026-08-31 20:41:08,345.345 INFO    ] 200
[2026-08-31 20:41:08,348.348 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:41:08,401.401 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:41:08,403.403 INFO    ] No update needed
[2026-08-31 20:41:08,406.406 INFO    ] Checking for camera pi updates...
[2026-08-31 20:41:08,439.439 INFO    ] 200
[2026-08-31 20:41:08,442.442 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:41:08,489.489 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:41:08,590.590 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:41:08,592.592 INFO    ] No camera update needed
[2026-08-31 20:41:08,595.595 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:41:08,597.597 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:41:08,602.602 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:41:08,607.607 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:41:10,648.648 INFO    ] ================================================
[2026-08-31 20:41:10,664.664 INFO    ] Launching Daemon at Mon Aug 31 20:41:10 IST 2026
[2026-08-31 20:41:10,674.674 INFO    ] ================================================
[2026-08-31 20:41:11,257.257 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:41:11
[2026-08-31 20:41:11,857.857 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:41:12,134.134 INFO    ] Initializing speech engine...
[2026-08-31 20:41:12,150.150 INFO    ] 2026-08-31 20:41:12
[2026-08-31 20:41:12,423.423 INFO    ] 2026-08-31 20:41:12
[2026-08-31 20:41:12,448.448 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:41:12,657.657 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:41:12,673.673 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:41:12,837.837 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:41:12,846.846 INFO    ] time= 31/08/2026 20:41:12
[2026-08-31 20:41:12,874.874 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:41:12,921.921 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:41:13,064.064 INFO    ] No existing commands found in stream
[2026-08-31 20:41:18,074.074 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:41:18,077.077 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-08-31 20:41:20,582.582 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 20:41:20,584.584 INFO    ] Checking for system updates...
[2026-08-31 20:41:20,621.621 INFO    ] 200
[2026-08-31 20:41:20,624.624 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:41:20,678.678 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:41:20,681.681 INFO    ] No update needed
[2026-08-31 20:41:20,683.683 INFO    ] Checking for camera pi updates...
[2026-08-31 20:41:20,718.718 INFO    ] 200
[2026-08-31 20:41:20,721.721 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:41:20,762.762 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:41:20,846.846 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:41:20,849.849 INFO    ] No camera update needed
[2026-08-31 20:41:20,852.852 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:41:20,855.855 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:41:20,861.861 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:41:20,866.866 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:41:22,908.908 INFO    ] ================================================
[2026-08-31 20:41:22,924.924 INFO    ] Launching Daemon at Mon Aug 31 20:41:22 IST 2026
[2026-08-31 20:41:22,934.934 INFO    ] ================================================
[2026-08-31 20:41:23,500.500 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:41:23
[2026-08-31 20:41:24,083.083 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:41:24,352.352 INFO    ] Initializing speech engine...
[2026-08-31 20:41:24,361.361 INFO    ] 2026-08-31 20:41:24
[2026-08-31 20:41:24,611.611 INFO    ] 2026-08-31 20:41:24
[2026-08-31 20:41:24,645.645 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:41:24,846.846 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:41:24,906.906 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:41:25,047.047 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:41:25,100.100 INFO    ] time= 31/08/2026 20:41:25
[2026-08-31 20:41:25,154.154 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:41:25,184.184 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:41:25,240.240 INFO    ] No existing commands found in stream
[2026-08-31 20:41:30,251.251 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:41:30,254.254 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-08-31 20:41:33,771.771 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 20:41:33,773.773 INFO    ] Checking for system updates...
[2026-08-31 20:41:33,812.812 INFO    ] 200
[2026-08-31 20:41:33,815.815 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:41:33,867.867 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:41:33,869.869 INFO    ] No update needed
[2026-08-31 20:41:33,871.871 INFO    ] Checking for camera pi updates...
[2026-08-31 20:41:33,908.908 INFO    ] 200
[2026-08-31 20:41:33,910.910 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:41:33,952.952 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:41:34,051.051 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:41:34,053.053 INFO    ] No camera update needed
[2026-08-31 20:41:34,055.055 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:41:34,058.058 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:41:34,063.063 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:41:34,068.068 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:41:36,108.108 INFO    ] ================================================
[2026-08-31 20:41:36,124.124 INFO    ] Launching Daemon at Mon Aug 31 20:41:36 IST 2026
[2026-08-31 20:41:36,139.139 INFO    ] ================================================
[2026-08-31 20:41:36,780.780 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:41:36
[2026-08-31 20:41:37,443.443 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:41:37,740.740 INFO    ] Initializing speech engine...
[2026-08-31 20:41:37,749.749 INFO    ] 2026-08-31 20:41:37
[2026-08-31 20:41:38,024.024 INFO    ] 2026-08-31 20:41:38
[2026-08-31 20:41:38,083.083 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:41:38,339.339 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:41:38,348.348 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:41:38,540.540 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:41:38,589.589 INFO    ] time= 31/08/2026 20:41:38
[2026-08-31 20:41:38,596.596 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:41:38,617.617 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:41:38,742.742 INFO    ] No existing commands found in stream
[2026-08-31 20:41:43,757.757 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:41:43,760.760 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-08-31 20:41:45,820.820 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 20:41:45,822.822 INFO    ] Checking for system updates...
[2026-08-31 20:41:45,859.859 INFO    ] 200
[2026-08-31 20:41:45,861.861 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:41:45,913.913 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:41:45,915.915 INFO    ] No update needed
[2026-08-31 20:41:45,918.918 INFO    ] Checking for camera pi updates...
[2026-08-31 20:41:45,951.951 INFO    ] 200
[2026-08-31 20:41:45,953.953 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:41:45,994.994 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:41:46,080.080 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:41:46,082.082 INFO    ] No camera update needed
[2026-08-31 20:41:46,085.085 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:41:46,087.087 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:41:46,092.092 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:41:46,097.097 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:41:48,137.137 INFO    ] ================================================
[2026-08-31 20:41:48,153.153 INFO    ] Launching Daemon at Mon Aug 31 20:41:48 IST 2026
[2026-08-31 20:41:48,164.164 INFO    ] ================================================
[2026-08-31 20:41:48,744.744 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:41:48
[2026-08-31 20:41:49,342.342 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:41:49,622.622 INFO    ] Initializing speech engine...
[2026-08-31 20:41:49,627.627 INFO    ] 2026-08-31 20:41:49
[2026-08-31 20:41:49,882.882 INFO    ] 2026-08-31 20:41:49
[2026-08-31 20:41:49,941.941 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:41:50,163.163 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:41:50,172.172 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:41:50,381.381 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:41:50,431.431 INFO    ] time= 31/08/2026 20:41:50
[2026-08-31 20:41:50,437.437 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:41:50,455.455 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:41:50,590.590 INFO    ] No existing commands found in stream
[2026-08-31 20:41:55,615.615 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:41:55,618.618 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-08-31 20:41:56,907.907 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 20:41:56,910.910 INFO    ] Checking for system updates...
[2026-08-31 20:41:56,947.947 INFO    ] 200
[2026-08-31 20:41:56,950.950 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:41:57,002.002 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:41:57,004.004 INFO    ] No update needed
[2026-08-31 20:41:57,006.006 INFO    ] Checking for camera pi updates...
[2026-08-31 20:41:57,040.040 INFO    ] 200
[2026-08-31 20:41:57,042.042 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:41:57,087.087 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:41:57,186.186 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:41:57,189.189 INFO    ] No camera update needed
[2026-08-31 20:41:57,191.191 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:41:57,193.193 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:41:57,199.199 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:41:57,204.204 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:41:59,245.245 INFO    ] ================================================
[2026-08-31 20:41:59,260.260 INFO    ] Launching Daemon at Mon Aug 31 20:41:59 IST 2026
[2026-08-31 20:41:59,271.271 INFO    ] ================================================
[2026-08-31 20:41:59,852.852 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:41:59
[2026-08-31 20:42:00,448.448 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:42:00,718.718 INFO    ] Initializing speech engine...
[2026-08-31 20:42:00,726.726 INFO    ] 2026-08-31 20:42:00
[2026-08-31 20:42:00,976.976 INFO    ] 2026-08-31 20:42:00
[2026-08-31 20:42:01,040.040 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:42:01,287.287 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:42:01,295.295 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:42:01,481.481 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:42:01,527.527 INFO    ] time= 31/08/2026 20:42:01
[2026-08-31 20:42:01,533.533 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:42:01,548.548 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:42:01,662.662 INFO    ] No existing commands found in stream
[2026-08-31 20:42:06,687.687 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:42:06,690.690 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-08-31 20:42:09,809.809 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 20:42:09,811.811 INFO    ] Checking for system updates...
[2026-08-31 20:42:09,848.848 INFO    ] 200
[2026-08-31 20:42:09,850.850 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:42:09,902.902 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:42:09,904.904 INFO    ] No update needed
[2026-08-31 20:42:09,907.907 INFO    ] Checking for camera pi updates...
[2026-08-31 20:42:09,941.941 INFO    ] 200
[2026-08-31 20:42:09,943.943 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:42:09,984.984 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:42:10,069.069 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:42:10,071.071 INFO    ] No camera update needed
[2026-08-31 20:42:10,073.073 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:42:10,076.076 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:42:10,081.081 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:42:10,086.086 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:42:12,127.127 INFO    ] ================================================
[2026-08-31 20:42:12,142.142 INFO    ] Launching Daemon at Mon Aug 31 20:42:12 IST 2026
[2026-08-31 20:42:12,153.153 INFO    ] ================================================
[2026-08-31 20:42:12,717.717 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:42:12
[2026-08-31 20:42:13,298.298 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:42:13,567.567 INFO    ] Initializing speech engine...
[2026-08-31 20:42:13,576.576 INFO    ] 2026-08-31 20:42:13
[2026-08-31 20:42:13,825.825 INFO    ] 2026-08-31 20:42:13
[2026-08-31 20:42:13,891.891 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:42:14,117.117 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:42:14,126.126 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:42:14,261.261 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:42:14,301.301 INFO    ] time= 31/08/2026 20:42:14
[2026-08-31 20:42:14,355.355 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:42:14,395.395 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:42:14,525.525 INFO    ] No existing commands found in stream
[2026-08-31 20:42:19,553.553 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:42:19,555.555 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-08-31 20:42:23,412.412 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 20:42:23,415.415 INFO    ] Checking for system updates...
[2026-08-31 20:42:23,451.451 INFO    ] 200
[2026-08-31 20:42:23,453.453 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:42:23,505.505 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:42:23,507.507 INFO    ] No update needed
[2026-08-31 20:42:23,510.510 INFO    ] Checking for camera pi updates...
[2026-08-31 20:42:23,546.546 INFO    ] 200
[2026-08-31 20:42:23,548.548 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:42:23,589.589 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:42:23,770.770 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:42:23,773.773 INFO    ] No camera update needed
[2026-08-31 20:42:23,775.775 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:42:23,778.778 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:42:23,784.784 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:42:23,789.789 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:42:25,830.830 INFO    ] ================================================
[2026-08-31 20:42:25,845.845 INFO    ] Launching Daemon at Mon Aug 31 20:42:25 IST 2026
[2026-08-31 20:42:25,856.856 INFO    ] ================================================
[2026-08-31 20:42:26,454.454 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:42:26
[2026-08-31 20:42:27,038.038 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:42:27,292.292 INFO    ] Initializing speech engine...
[2026-08-31 20:42:27,307.307 INFO    ] 2026-08-31 20:42:27
[2026-08-31 20:42:27,585.585 INFO    ] 2026-08-31 20:42:27
[2026-08-31 20:42:27,620.620 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:42:27,807.807 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:42:27,820.820 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:42:27,975.975 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:42:27,983.983 INFO    ] time= 31/08/2026 20:42:27
[2026-08-31 20:42:27,987.987 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:42:27,993.993 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:42:28,134.134 INFO    ] No existing commands found in stream
[2026-08-31 20:42:33,159.159 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:42:33,162.162 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-08-31 20:42:36,939.939 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 20:42:36,942.942 INFO    ] Checking for system updates...
[2026-08-31 20:42:36,979.979 INFO    ] 200
[2026-08-31 20:42:36,982.982 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:42:37,034.034 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:42:37,037.037 INFO    ] No update needed
[2026-08-31 20:42:37,040.040 INFO    ] Checking for camera pi updates...
[2026-08-31 20:42:37,078.078 INFO    ] 200
[2026-08-31 20:42:37,081.081 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:42:37,126.126 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:42:37,206.206 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:42:37,209.209 INFO    ] No camera update needed
[2026-08-31 20:42:37,212.212 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:42:37,214.214 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:42:37,220.220 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:42:37,225.225 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:42:39,267.267 INFO    ] ================================================
[2026-08-31 20:42:39,282.282 INFO    ] Launching Daemon at Mon Aug 31 20:42:39 IST 2026
[2026-08-31 20:42:39,293.293 INFO    ] ================================================
[2026-08-31 20:42:39,864.864 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:42:39
[2026-08-31 20:42:40,446.446 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:42:40,693.693 INFO    ] Initializing speech engine...
[2026-08-31 20:42:40,706.706 INFO    ] 2026-08-31 20:42:40
[2026-08-31 20:42:40,967.967 INFO    ] 2026-08-31 20:42:40
[2026-08-31 20:42:41,008.008 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:42:41,199.199 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:42:41,262.262 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:42:41,413.413 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:42:41,455.455 INFO    ] time= 31/08/2026 20:42:41
[2026-08-31 20:42:41,505.505 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:42:41,558.558 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:42:41,698.698 INFO    ] No existing commands found in stream
[2026-08-31 20:42:46,728.728 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:42:46,731.731 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-08-31 20:42:49,726.726 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 20:42:49,729.729 INFO    ] Checking for system updates...
[2026-08-31 20:42:49,767.767 INFO    ] 200
[2026-08-31 20:42:49,770.770 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:42:49,841.841 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:42:49,843.843 INFO    ] No update needed
[2026-08-31 20:42:49,846.846 INFO    ] Checking for camera pi updates...
[2026-08-31 20:42:49,879.879 INFO    ] 200
[2026-08-31 20:42:49,881.881 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:42:49,924.924 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:42:50,006.006 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:42:50,008.008 INFO    ] No camera update needed
[2026-08-31 20:42:50,011.011 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:42:50,013.013 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:42:50,018.018 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:42:50,023.023 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:42:52,064.064 INFO    ] ================================================
[2026-08-31 20:42:52,079.079 INFO    ] Launching Daemon at Mon Aug 31 20:42:52 IST 2026
[2026-08-31 20:42:52,090.090 INFO    ] ================================================
[2026-08-31 20:42:52,724.724 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:42:52
[2026-08-31 20:42:53,380.380 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:42:53,677.677 INFO    ] Initializing speech engine...
[2026-08-31 20:42:53,684.684 INFO    ] 2026-08-31 20:42:53
[2026-08-31 20:42:53,971.971 INFO    ] 2026-08-31 20:42:53
[2026-08-31 20:42:54,017.017 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:42:54,298.298 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:42:54,308.308 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:42:54,506.506 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:42:54,526.526 INFO    ] time= 31/08/2026 20:42:54
[2026-08-31 20:42:54,554.554 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:42:54,563.563 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:42:54,680.680 INFO    ] No existing commands found in stream
[2026-08-31 20:42:59,706.706 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:42:59,709.709 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-08-31 20:43:01,268.268 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 20:43:01,271.271 INFO    ] Checking for system updates...
[2026-08-31 20:43:01,308.308 INFO    ] 200
[2026-08-31 20:43:01,311.311 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:43:01,365.365 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:43:01,368.368 INFO    ] No update needed
[2026-08-31 20:43:01,371.371 INFO    ] Checking for camera pi updates...
[2026-08-31 20:43:01,406.406 INFO    ] 200
[2026-08-31 20:43:01,409.409 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:43:01,454.454 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:43:01,581.581 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:43:01,584.584 INFO    ] No camera update needed
[2026-08-31 20:43:01,586.586 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:43:01,589.589 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:43:01,594.594 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:43:01,599.599 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:43:03,647.647 INFO    ] ================================================
[2026-08-31 20:43:03,663.663 INFO    ] Launching Daemon at Mon Aug 31 20:43:03 IST 2026
[2026-08-31 20:43:03,675.675 INFO    ] ================================================
[2026-08-31 20:43:04,249.249 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:43:04
[2026-08-31 20:43:04,835.835 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:43:05,108.108 INFO    ] Initializing speech engine...
[2026-08-31 20:43:05,117.117 INFO    ] 2026-08-31 20:43:05
[2026-08-31 20:43:05,366.366 INFO    ] 2026-08-31 20:43:05
[2026-08-31 20:43:05,429.429 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:43:05,652.652 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:43:05,662.662 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:43:05,857.857 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:43:05,917.917 INFO    ] time= 31/08/2026 20:43:05
[2026-08-31 20:43:05,924.924 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:43:05,942.942 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:43:06,073.073 INFO    ] No existing commands found in stream
[2026-08-31 20:43:11,087.087 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:43:11,090.090 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-08-31 20:43:12,613.613 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 20:43:12,615.615 INFO    ] Checking for system updates...
[2026-08-31 20:43:12,655.655 INFO    ] 200
[2026-08-31 20:43:12,657.657 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:43:12,710.710 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:43:12,712.712 INFO    ] No update needed
[2026-08-31 20:43:12,714.714 INFO    ] Checking for camera pi updates...
[2026-08-31 20:43:12,748.748 INFO    ] 200
[2026-08-31 20:43:12,750.750 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:43:12,792.792 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:43:12,862.862 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:43:12,865.865 INFO    ] No camera update needed
[2026-08-31 20:43:12,867.867 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:43:12,869.869 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:43:12,875.875 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:43:12,880.880 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:43:14,925.925 INFO    ] ================================================
[2026-08-31 20:43:14,940.940 INFO    ] Launching Daemon at Mon Aug 31 20:43:14 IST 2026
[2026-08-31 20:43:14,950.950 INFO    ] ================================================
[2026-08-31 20:43:15,592.592 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:43:15
[2026-08-31 20:43:16,254.254 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:43:16,552.552 INFO    ] Initializing speech engine...
[2026-08-31 20:43:16,560.560 INFO    ] 2026-08-31 20:43:16
[2026-08-31 20:43:16,835.835 INFO    ] 2026-08-31 20:43:16
[2026-08-31 20:43:16,893.893 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:43:17,125.125 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:43:17,130.130 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:43:17,266.266 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:43:17,307.307 INFO    ] time= 31/08/2026 20:43:17
[2026-08-31 20:43:17,356.356 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:43:17,402.402 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:43:17,533.533 INFO    ] No existing commands found in stream
[2026-08-31 20:43:22,559.559 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:43:22,562.562 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-08-31 20:43:25,811.811 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 20:43:25,814.814 INFO    ] Checking for system updates...
[2026-08-31 20:43:25,852.852 INFO    ] 200
[2026-08-31 20:43:25,855.855 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:43:25,906.906 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:43:25,909.909 INFO    ] No update needed
[2026-08-31 20:43:25,911.911 INFO    ] Checking for camera pi updates...
[2026-08-31 20:43:25,948.948 INFO    ] 200
[2026-08-31 20:43:25,951.951 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:43:25,990.990 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:43:26,070.070 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:43:26,072.072 INFO    ] No camera update needed
[2026-08-31 20:43:26,075.075 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:43:26,077.077 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:43:26,082.082 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:43:26,087.087 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:43:28,128.128 INFO    ] ================================================
[2026-08-31 20:43:28,143.143 INFO    ] Launching Daemon at Mon Aug 31 20:43:28 IST 2026
[2026-08-31 20:43:28,153.153 INFO    ] ================================================
[2026-08-31 20:43:28,720.720 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:43:28
[2026-08-31 20:43:29,316.316 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:43:29,593.593 INFO    ] Initializing speech engine...
[2026-08-31 20:43:29,602.602 INFO    ] 2026-08-31 20:43:29
[2026-08-31 20:43:29,875.875 INFO    ] 2026-08-31 20:43:29
[2026-08-31 20:43:29,919.919 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:43:30,169.169 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:43:30,173.173 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:43:30,369.369 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:43:30,406.406 INFO    ] time= 31/08/2026 20:43:30
[2026-08-31 20:43:30,412.412 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:43:30,431.431 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:43:30,545.545 INFO    ] No existing commands found in stream
[2026-08-31 20:43:35,569.569 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:43:35,572.572 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-08-31 20:43:37,228.228 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 20:43:37,231.231 INFO    ] Checking for system updates...
[2026-08-31 20:43:37,268.268 INFO    ] 200
[2026-08-31 20:43:37,270.270 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:43:37,324.324 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:43:37,327.327 INFO    ] No update needed
[2026-08-31 20:43:37,329.329 INFO    ] Checking for camera pi updates...
[2026-08-31 20:43:37,367.367 INFO    ] 200
[2026-08-31 20:43:37,370.370 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:43:37,415.415 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:43:37,497.497 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:43:37,500.500 INFO    ] No camera update needed
[2026-08-31 20:43:37,502.502 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:43:37,504.504 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:43:37,510.510 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:43:37,515.515 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:43:39,554.554 INFO    ] ================================================
[2026-08-31 20:43:39,569.569 INFO    ] Launching Daemon at Mon Aug 31 20:43:39 IST 2026
[2026-08-31 20:43:39,580.580 INFO    ] ================================================
[2026-08-31 20:43:40,147.147 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:43:40
[2026-08-31 20:43:40,730.730 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:43:40,980.980 INFO    ] Initializing speech engine...
[2026-08-31 20:43:41,003.003 INFO    ] 2026-08-31 20:43:40
[2026-08-31 20:43:41,259.259 INFO    ] 2026-08-31 20:43:41
[2026-08-31 20:43:41,294.294 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:43:41,550.550 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:43:41,559.559 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:43:41,694.694 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:43:41,726.726 INFO    ] time= 31/08/2026 20:43:41
[2026-08-31 20:43:41,780.780 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:43:41,829.829 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:43:41,966.966 INFO    ] No existing commands found in stream
[2026-08-31 20:43:46,991.991 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:43:46,993.993 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-08-31 20:43:47,522.522 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 20:43:47,525.525 INFO    ] Checking for system updates...
[2026-08-31 20:43:47,561.561 INFO    ] 200
[2026-08-31 20:43:47,564.564 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:43:47,624.624 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:43:47,626.626 INFO    ] No update needed
[2026-08-31 20:43:47,629.629 INFO    ] Checking for camera pi updates...
[2026-08-31 20:43:47,662.662 INFO    ] 200
[2026-08-31 20:43:47,665.665 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:43:47,705.705 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:43:47,786.786 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:43:47,789.789 INFO    ] No camera update needed
[2026-08-31 20:43:47,791.791 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:43:47,794.794 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:43:47,799.799 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:43:47,804.804 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:43:49,844.844 INFO    ] ================================================
[2026-08-31 20:43:49,860.860 INFO    ] Launching Daemon at Mon Aug 31 20:43:49 IST 2026
[2026-08-31 20:43:49,871.871 INFO    ] ================================================
[2026-08-31 20:43:50,451.451 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:43:50
[2026-08-31 20:43:51,048.048 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:43:51,301.301 INFO    ] Initializing speech engine...
[2026-08-31 20:43:51,323.323 INFO    ] 2026-08-31 20:43:51
[2026-08-31 20:43:51,584.584 INFO    ] 2026-08-31 20:43:51
[2026-08-31 20:43:51,644.644 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:43:51,890.890 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:43:51,898.898 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:43:52,089.089 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:43:52,133.133 INFO    ] time= 31/08/2026 20:43:52
[2026-08-31 20:43:52,139.139 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:43:52,160.160 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:43:52,282.282 INFO    ] No existing commands found in stream
[2026-08-31 20:43:57,297.297 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:43:57,300.300 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-08-31 20:43:58,542.542 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 20:43:58,545.545 INFO    ] Checking for system updates...
[2026-08-31 20:43:58,585.585 INFO    ] 200
[2026-08-31 20:43:58,588.588 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:43:58,647.647 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:43:58,650.650 INFO    ] No update needed
[2026-08-31 20:43:58,652.652 INFO    ] Checking for camera pi updates...
[2026-08-31 20:43:58,690.690 INFO    ] 200
[2026-08-31 20:43:58,692.692 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:43:58,738.738 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:43:58,819.819 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:43:58,821.821 INFO    ] No camera update needed
[2026-08-31 20:43:58,824.824 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:43:58,826.826 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:43:58,831.831 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:43:58,836.836 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:44:00,876.876 INFO    ] ================================================
[2026-08-31 20:44:00,891.891 INFO    ] Launching Daemon at Mon Aug 31 20:44:00 IST 2026
[2026-08-31 20:44:00,901.901 INFO    ] ================================================
[2026-08-31 20:44:01,550.550 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:44:01
[2026-08-31 20:44:02,341.341 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:44:02,675.675 INFO    ] Initializing speech engine...
[2026-08-31 20:44:02,684.684 INFO    ] 2026-08-31 20:44:02
[2026-08-31 20:44:02,991.991 INFO    ] 2026-08-31 20:44:02
[2026-08-31 20:44:03,104.104 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:44:03,288.288 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:44:03,310.310 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:44:03,488.488 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:44:03,549.549 INFO    ] time= 31/08/2026 20:44:03
[2026-08-31 20:44:03,585.585 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:44:03,591.591 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:44:03,686.686 INFO    ] No existing commands found in stream
[2026-08-31 20:44:08,706.706 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:44:08,709.709 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-08-31 20:44:10,762.762 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 20:44:10,764.764 INFO    ] Checking for system updates...
[2026-08-31 20:44:10,800.800 INFO    ] 200
[2026-08-31 20:44:10,802.802 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:44:10,859.859 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:44:10,862.862 INFO    ] No update needed
[2026-08-31 20:44:10,864.864 INFO    ] Checking for camera pi updates...
[2026-08-31 20:44:10,901.901 INFO    ] 200
[2026-08-31 20:44:10,904.904 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:44:10,948.948 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:44:11,033.033 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:44:11,036.036 INFO    ] No camera update needed
[2026-08-31 20:44:11,039.039 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:44:11,041.041 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:44:11,046.046 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:44:11,051.051 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:44:13,091.091 INFO    ] ================================================
[2026-08-31 20:44:13,106.106 INFO    ] Launching Daemon at Mon Aug 31 20:44:13 IST 2026
[2026-08-31 20:44:13,116.116 INFO    ] ================================================
[2026-08-31 20:44:13,685.685 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:44:13
[2026-08-31 20:44:14,267.267 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:44:14,536.536 INFO    ] Initializing speech engine...
[2026-08-31 20:44:14,544.544 INFO    ] 2026-08-31 20:44:14
[2026-08-31 20:44:14,795.795 INFO    ] 2026-08-31 20:44:14
[2026-08-31 20:44:14,830.830 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:44:15,005.005 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:44:15,017.017 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:44:15,166.166 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:44:15,173.173 INFO    ] time= 31/08/2026 20:44:15
[2026-08-31 20:44:15,179.179 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:44:15,225.225 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:44:15,374.374 INFO    ] No existing commands found in stream
[2026-08-31 20:44:20,384.384 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:44:20,387.387 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-08-31 20:44:23,494.494 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 20:44:23,497.497 INFO    ] Checking for system updates...
[2026-08-31 20:44:23,536.536 INFO    ] 200
[2026-08-31 20:44:23,539.539 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:44:23,598.598 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:44:23,601.601 INFO    ] No update needed
[2026-08-31 20:44:23,604.604 INFO    ] Checking for camera pi updates...
[2026-08-31 20:44:23,641.641 INFO    ] 200
[2026-08-31 20:44:23,644.644 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:44:23,685.685 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:44:23,772.772 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:44:23,775.775 INFO    ] No camera update needed
[2026-08-31 20:44:23,778.778 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:44:23,781.781 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:44:23,786.786 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:44:23,792.792 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:44:25,833.833 INFO    ] ================================================
[2026-08-31 20:44:25,848.848 INFO    ] Launching Daemon at Mon Aug 31 20:44:25 IST 2026
[2026-08-31 20:44:25,859.859 INFO    ] ================================================
[2026-08-31 20:44:26,423.423 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:44:26
[2026-08-31 20:44:27,004.004 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:44:27,252.252 INFO    ] Initializing speech engine...
[2026-08-31 20:44:27,275.275 INFO    ] 2026-08-31 20:44:27
[2026-08-31 20:44:27,529.529 INFO    ] 2026-08-31 20:44:27
[2026-08-31 20:44:27,563.563 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:44:27,807.807 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:44:27,824.824 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:44:27,964.964 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:44:27,980.980 INFO    ] time= 31/08/2026 20:44:27
[2026-08-31 20:44:28,029.029 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:44:28,078.078 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:44:28,158.158 INFO    ] No existing commands found in stream
[2026-08-31 20:44:33,170.170 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:44:33,173.173 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-08-31 20:44:34,214.214 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 20:44:34,217.217 INFO    ] Checking for system updates...
[2026-08-31 20:44:34,256.256 INFO    ] 200
[2026-08-31 20:44:34,259.259 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:44:34,316.316 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:44:34,318.318 INFO    ] No update needed
[2026-08-31 20:44:34,321.321 INFO    ] Checking for camera pi updates...
[2026-08-31 20:44:34,359.359 INFO    ] 200
[2026-08-31 20:44:34,362.362 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:44:34,403.403 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:44:34,538.538 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:44:34,540.540 INFO    ] No camera update needed
[2026-08-31 20:44:34,543.543 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:44:34,545.545 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:44:34,551.551 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:44:34,556.556 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:44:36,598.598 INFO    ] ================================================
[2026-08-31 20:44:36,613.613 INFO    ] Launching Daemon at Mon Aug 31 20:44:36 IST 2026
[2026-08-31 20:44:36,623.623 INFO    ] ================================================
[2026-08-31 20:44:37,241.241 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:44:37
[2026-08-31 20:44:37,881.881 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:44:38,170.170 INFO    ] Initializing speech engine...
[2026-08-31 20:44:38,178.178 INFO    ] 2026-08-31 20:44:38
[2026-08-31 20:44:38,458.458 INFO    ] 2026-08-31 20:44:38
[2026-08-31 20:44:38,501.501 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:44:38,849.849 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:44:38,855.855 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:44:39,039.039 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:44:39,094.094 INFO    ] time= 31/08/2026 20:44:39
[2026-08-31 20:44:39,137.137 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:44:39,185.185 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:44:39,337.337 INFO    ] No existing commands found in stream
[2026-08-31 20:44:44,368.368 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:44:44,371.371 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-08-31 20:44:46,733.733 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 20:44:46,736.736 INFO    ] Checking for system updates...
[2026-08-31 20:44:46,775.775 INFO    ] 200
[2026-08-31 20:44:46,778.778 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:44:46,835.835 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:44:46,838.838 INFO    ] No update needed
[2026-08-31 20:44:46,841.841 INFO    ] Checking for camera pi updates...
[2026-08-31 20:44:46,877.877 INFO    ] 200
[2026-08-31 20:44:46,880.880 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:44:46,928.928 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:44:47,014.014 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:44:47,017.017 INFO    ] No camera update needed
[2026-08-31 20:44:47,020.020 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:44:47,022.022 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:44:47,028.028 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:44:47,034.034 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:44:49,074.074 INFO    ] ================================================
[2026-08-31 20:44:49,089.089 INFO    ] Launching Daemon at Mon Aug 31 20:44:49 IST 2026
[2026-08-31 20:44:49,100.100 INFO    ] ================================================
[2026-08-31 20:44:49,732.732 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:44:49
[2026-08-31 20:44:50,384.384 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:44:50,682.682 INFO    ] Initializing speech engine...
[2026-08-31 20:44:50,691.691 INFO    ] 2026-08-31 20:44:50
[2026-08-31 20:44:50,959.959 INFO    ] 2026-08-31 20:44:50
[2026-08-31 20:44:51,019.019 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:44:51,248.248 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:44:51,259.259 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:44:51,395.395 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:44:51,445.445 INFO    ] time= 31/08/2026 20:44:51
[2026-08-31 20:44:51,510.510 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:44:51,532.532 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:44:51,670.670 INFO    ] No existing commands found in stream
[2026-08-31 20:44:56,692.692 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:44:56,695.695 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-08-31 20:44:57,209.209 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 20:44:57,212.212 INFO    ] Checking for system updates...
[2026-08-31 20:44:57,249.249 INFO    ] 200
[2026-08-31 20:44:57,251.251 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:44:57,304.304 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:44:57,307.307 INFO    ] No update needed
[2026-08-31 20:44:57,310.310 INFO    ] Checking for camera pi updates...
[2026-08-31 20:44:57,343.343 INFO    ] 200
[2026-08-31 20:44:57,346.346 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:44:57,387.387 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:44:57,471.471 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:44:57,473.473 INFO    ] No camera update needed
[2026-08-31 20:44:57,476.476 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:44:57,478.478 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:44:57,484.484 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:44:57,490.490 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:44:59,531.531 INFO    ] ================================================
[2026-08-31 20:44:59,545.545 INFO    ] Launching Daemon at Mon Aug 31 20:44:59 IST 2026
[2026-08-31 20:44:59,556.556 INFO    ] ================================================
[2026-08-31 20:45:00,121.121 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:45:00
[2026-08-31 20:45:00,713.713 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:45:00,967.967 INFO    ] Initializing speech engine...
[2026-08-31 20:45:00,982.982 INFO    ] 2026-08-31 20:45:00
[2026-08-31 20:45:01,260.260 INFO    ] 2026-08-31 20:45:01
[2026-08-31 20:45:01,298.298 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:45:01,491.491 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:45:01,505.505 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:45:01,661.661 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:45:01,669.669 INFO    ] time= 31/08/2026 20:45:01
[2026-08-31 20:45:01,677.677 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:45:01,730.730 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:45:01,844.844 INFO    ] No existing commands found in stream
[2026-08-31 20:45:06,874.874 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:45:06,877.877 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-08-31 20:45:10,525.525 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 20:45:10,528.528 INFO    ] Checking for system updates...
[2026-08-31 20:45:10,563.563 INFO    ] 200
[2026-08-31 20:45:10,565.565 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:45:10,617.617 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:45:10,620.620 INFO    ] No update needed
[2026-08-31 20:45:10,622.622 INFO    ] Checking for camera pi updates...
[2026-08-31 20:45:10,658.658 INFO    ] 200
[2026-08-31 20:45:10,661.661 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:45:10,701.701 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:45:10,781.781 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:45:10,784.784 INFO    ] No camera update needed
[2026-08-31 20:45:10,786.786 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:45:10,788.788 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:45:10,793.793 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:45:10,798.798 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:45:12,837.837 INFO    ] ================================================
[2026-08-31 20:45:12,852.852 INFO    ] Launching Daemon at Mon Aug 31 20:45:12 IST 2026
[2026-08-31 20:45:12,863.863 INFO    ] ================================================
[2026-08-31 20:45:13,493.493 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:45:13
[2026-08-31 20:45:14,143.143 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:45:14,440.440 INFO    ] Initializing speech engine...
[2026-08-31 20:45:14,453.453 INFO    ] 2026-08-31 20:45:14
[2026-08-31 20:45:14,718.718 INFO    ] 2026-08-31 20:45:14
[2026-08-31 20:45:14,771.771 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:45:14,999.999 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:45:15,004.004 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:45:15,139.139 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:45:15,209.209 INFO    ] time= 31/08/2026 20:45:15
[2026-08-31 20:45:15,264.264 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:45:15,272.272 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:45:15,418.418 INFO    ] No existing commands found in stream
[2026-08-31 20:45:20,455.455 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:45:20,463.463 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-08-31 20:45:24,364.364 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 20:45:24,367.367 INFO    ] Checking for system updates...
[2026-08-31 20:45:24,403.403 INFO    ] 200
[2026-08-31 20:45:24,406.406 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:45:24,463.463 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:45:24,466.466 INFO    ] No update needed
[2026-08-31 20:45:24,468.468 INFO    ] Checking for camera pi updates...
[2026-08-31 20:45:24,502.502 INFO    ] 200
[2026-08-31 20:45:24,504.504 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:45:24,544.544 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:45:24,630.630 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:45:24,633.633 INFO    ] No camera update needed
[2026-08-31 20:45:24,635.635 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:45:24,637.637 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:45:24,643.643 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:45:24,648.648 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:45:26,695.695 INFO    ] ================================================
[2026-08-31 20:45:26,710.710 INFO    ] Launching Daemon at Mon Aug 31 20:45:26 IST 2026
[2026-08-31 20:45:26,720.720 INFO    ] ================================================
[2026-08-31 20:45:27,291.291 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:45:27
[2026-08-31 20:45:27,875.875 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:45:28,133.133 INFO    ] Initializing speech engine...
[2026-08-31 20:45:28,139.139 INFO    ] 2026-08-31 20:45:28
[2026-08-31 20:45:28,437.437 INFO    ] 2026-08-31 20:45:28
[2026-08-31 20:45:28,470.470 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:45:28,667.667 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:45:28,674.674 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:45:28,845.845 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:45:28,851.851 INFO    ] time= 31/08/2026 20:45:28
[2026-08-31 20:45:28,857.857 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:45:28,863.863 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:45:29,000.000 INFO    ] No existing commands found in stream
[2026-08-31 20:45:34,025.025 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:45:34,027.027 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-08-31 20:45:37,416.416 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 20:45:37,419.419 INFO    ] Checking for system updates...
[2026-08-31 20:45:37,455.455 INFO    ] 200
[2026-08-31 20:45:37,457.457 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:45:37,511.511 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:45:37,513.513 INFO    ] No update needed
[2026-08-31 20:45:37,515.515 INFO    ] Checking for camera pi updates...
[2026-08-31 20:45:37,552.552 INFO    ] 200
[2026-08-31 20:45:37,555.555 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:45:37,594.594 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:45:37,675.675 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:45:37,677.677 INFO    ] No camera update needed
[2026-08-31 20:45:37,680.680 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:45:37,682.682 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:45:37,687.687 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:45:37,692.692 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:45:39,732.732 INFO    ] ================================================
[2026-08-31 20:45:39,748.748 INFO    ] Launching Daemon at Mon Aug 31 20:45:39 IST 2026
[2026-08-31 20:45:39,758.758 INFO    ] ================================================
[2026-08-31 20:45:40,339.339 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:45:40
[2026-08-31 20:45:40,931.931 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:45:41,212.212 INFO    ] Initializing speech engine...
[2026-08-31 20:45:41,225.225 INFO    ] 2026-08-31 20:45:41
[2026-08-31 20:45:41,489.489 INFO    ] 2026-08-31 20:45:41
[2026-08-31 20:45:41,533.533 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:45:41,812.812 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:45:41,819.819 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:45:42,013.013 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:45:42,021.021 INFO    ] time= 31/08/2026 20:45:42
[2026-08-31 20:45:42,039.039 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:45:42,061.061 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:45:42,173.173 INFO    ] No existing commands found in stream
[2026-08-31 20:45:47,189.189 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:45:47,192.192 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-08-31 20:45:50,901.901 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 20:45:50,904.904 INFO    ] Checking for system updates...
[2026-08-31 20:45:50,940.940 INFO    ] 200
[2026-08-31 20:45:50,943.943 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:45:50,996.996 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:45:50,999.999 INFO    ] No update needed
[2026-08-31 20:45:51,002.002 INFO    ] Checking for camera pi updates...
[2026-08-31 20:45:51,039.039 INFO    ] 200
[2026-08-31 20:45:51,042.042 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:45:51,088.088 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:45:51,164.164 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:45:51,167.167 INFO    ] No camera update needed
[2026-08-31 20:45:51,170.170 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:45:51,172.172 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:45:51,177.177 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:45:51,182.182 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:45:53,224.224 INFO    ] ================================================
[2026-08-31 20:45:53,239.239 INFO    ] Launching Daemon at Mon Aug 31 20:45:53 IST 2026
[2026-08-31 20:45:53,249.249 INFO    ] ================================================
[2026-08-31 20:45:53,824.824 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:45:53
[2026-08-31 20:45:54,413.413 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:45:54,684.684 INFO    ] Initializing speech engine...
[2026-08-31 20:45:54,693.693 INFO    ] 2026-08-31 20:45:54
[2026-08-31 20:45:54,959.959 INFO    ] 2026-08-31 20:45:54
[2026-08-31 20:45:55,012.012 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:45:55,239.239 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:45:55,251.251 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:45:55,384.384 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:45:55,429.429 INFO    ] time= 31/08/2026 20:45:55
[2026-08-31 20:45:55,493.493 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:45:55,514.514 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:45:55,618.618 INFO    ] No existing commands found in stream
[2026-08-31 20:46:00,646.646 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:46:00,649.649 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-08-31 20:46:02,083.083 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 20:46:02,086.086 INFO    ] Checking for system updates...
[2026-08-31 20:46:02,134.134 INFO    ] 200
[2026-08-31 20:46:02,137.137 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:46:02,210.210 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:46:02,214.214 INFO    ] No update needed
[2026-08-31 20:46:02,218.218 INFO    ] Checking for camera pi updates...
[2026-08-31 20:46:02,259.259 INFO    ] 200
[2026-08-31 20:46:02,262.262 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:46:02,323.323 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:46:02,381.381 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:46:02,384.384 INFO    ] No camera update needed
[2026-08-31 20:46:02,388.388 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:46:02,392.392 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:46:02,400.400 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:46:02,408.408 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:46:04,452.452 INFO    ] ================================================
[2026-08-31 20:46:04,468.468 INFO    ] Launching Daemon at Mon Aug 31 20:46:04 IST 2026
[2026-08-31 20:46:04,479.479 INFO    ] ================================================
[2026-08-31 20:46:05,047.047 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:46:05
[2026-08-31 20:46:05,650.650 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:46:05,928.928 INFO    ] Initializing speech engine...
[2026-08-31 20:46:05,934.934 INFO    ] 2026-08-31 20:46:05
[2026-08-31 20:46:06,183.183 INFO    ] 2026-08-31 20:46:06
[2026-08-31 20:46:06,219.219 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:46:06,450.450 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:46:06,458.458 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:46:06,653.653 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:46:06,703.703 INFO    ] time= 31/08/2026 20:46:06
[2026-08-31 20:46:06,773.773 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:46:06,788.788 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:46:06,933.933 INFO    ] No existing commands found in stream
[2026-08-31 20:46:11,946.946 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:46:11,949.949 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-08-31 20:46:13,977.977 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 20:46:13,979.979 INFO    ] Checking for system updates...
[2026-08-31 20:46:14,016.016 INFO    ] 200
[2026-08-31 20:46:14,018.018 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:46:14,080.080 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:46:14,082.082 INFO    ] No update needed
[2026-08-31 20:46:14,085.085 INFO    ] Checking for camera pi updates...
[2026-08-31 20:46:14,118.118 INFO    ] 200
[2026-08-31 20:46:14,121.121 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:46:14,167.167 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:46:14,262.262 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:46:14,265.265 INFO    ] No camera update needed
[2026-08-31 20:46:14,267.267 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:46:14,270.270 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:46:14,275.275 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:46:14,280.280 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:46:16,321.321 INFO    ] ================================================
[2026-08-31 20:46:16,336.336 INFO    ] Launching Daemon at Mon Aug 31 20:46:16 IST 2026
[2026-08-31 20:46:16,346.346 INFO    ] ================================================
[2026-08-31 20:46:17,012.012 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:46:17
[2026-08-31 20:46:17,700.700 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:46:18,016.016 INFO    ] Initializing speech engine...
[2026-08-31 20:46:18,029.029 INFO    ] 2026-08-31 20:46:18
[2026-08-31 20:46:18,344.344 INFO    ] 2026-08-31 20:46:18
[2026-08-31 20:46:18,432.432 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:46:18,652.652 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:46:18,657.657 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:46:18,857.857 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:46:18,865.865 INFO    ] time= 31/08/2026 20:46:18
[2026-08-31 20:46:18,884.884 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:46:18,914.914 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:46:19,069.069 INFO    ] No existing commands found in stream
[2026-08-31 20:46:24,100.100 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:46:24,103.103 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-08-31 20:46:28,545.545 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 20:46:28,548.548 INFO    ] Checking for system updates...
[2026-08-31 20:46:28,584.584 INFO    ] 200
[2026-08-31 20:46:28,586.586 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:46:28,639.639 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:46:28,641.641 INFO    ] No update needed
[2026-08-31 20:46:28,644.644 INFO    ] Checking for camera pi updates...
[2026-08-31 20:46:28,682.682 INFO    ] 200
[2026-08-31 20:46:28,685.685 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:46:28,725.725 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:46:28,813.813 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:46:28,815.815 INFO    ] No camera update needed
[2026-08-31 20:46:28,818.818 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:46:28,820.820 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:46:28,826.826 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:46:28,831.831 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:46:30,870.870 INFO    ] ================================================
[2026-08-31 20:46:30,885.885 INFO    ] Launching Daemon at Mon Aug 31 20:46:30 IST 2026
[2026-08-31 20:46:30,896.896 INFO    ] ================================================
[2026-08-31 20:46:31,464.464 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:46:31
[2026-08-31 20:46:32,098.098 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:46:32,400.400 INFO    ] Initializing speech engine...
[2026-08-31 20:46:32,407.407 INFO    ] 2026-08-31 20:46:32
[2026-08-31 20:46:32,680.680 INFO    ] 2026-08-31 20:46:32
[2026-08-31 20:46:32,740.740 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:46:32,990.990 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:46:32,996.996 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:46:33,213.213 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:46:33,260.260 INFO    ] time= 31/08/2026 20:46:33
[2026-08-31 20:46:33,266.266 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:46:33,288.288 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:46:33,409.409 INFO    ] No existing commands found in stream
[2026-08-31 20:46:38,458.458 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:46:38,462.462 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-08-31 20:46:40,010.010 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 20:46:40,013.013 INFO    ] Checking for system updates...
[2026-08-31 20:46:40,058.058 INFO    ] 200
[2026-08-31 20:46:40,061.061 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:46:40,128.128 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:46:40,132.132 INFO    ] No update needed
[2026-08-31 20:46:40,135.135 INFO    ] Checking for camera pi updates...
[2026-08-31 20:46:40,173.173 INFO    ] 200
[2026-08-31 20:46:40,177.177 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:46:40,222.222 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:46:40,374.374 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:46:40,378.378 INFO    ] No camera update needed
[2026-08-31 20:46:40,381.381 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:46:40,384.384 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:46:40,391.391 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:46:40,398.398 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:46:42,445.445 INFO    ] ================================================
[2026-08-31 20:46:42,460.460 INFO    ] Launching Daemon at Mon Aug 31 20:46:42 IST 2026
[2026-08-31 20:46:42,472.472 INFO    ] ================================================
[2026-08-31 20:46:43,169.169 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:46:43
[2026-08-31 20:46:43,881.881 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:46:44,211.211 INFO    ] Initializing speech engine...
[2026-08-31 20:46:44,220.220 INFO    ] 2026-08-31 20:46:44
[2026-08-31 20:46:44,508.508 INFO    ] 2026-08-31 20:46:44
[2026-08-31 20:46:44,571.571 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:46:44,810.810 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:46:44,818.818 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:46:44,959.959 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:46:45,020.020 INFO    ] time= 31/08/2026 20:46:44
[2026-08-31 20:46:45,081.081 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:46:45,098.098 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:46:45,209.209 INFO    ] No existing commands found in stream
[2026-08-31 20:46:50,230.230 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:46:50,233.233 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-08-31 20:46:51,054.054 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 20:46:51,057.057 INFO    ] Checking for system updates...
[2026-08-31 20:46:51,094.094 INFO    ] 200
[2026-08-31 20:46:51,097.097 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:46:51,151.151 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:46:51,154.154 INFO    ] No update needed
[2026-08-31 20:46:51,157.157 INFO    ] Checking for camera pi updates...
[2026-08-31 20:46:51,195.195 INFO    ] 200
[2026-08-31 20:46:51,198.198 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:46:51,240.240 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:46:51,293.293 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:46:51,296.296 INFO    ] No camera update needed
[2026-08-31 20:46:51,299.299 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:46:51,302.302 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:46:51,308.308 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:46:51,314.314 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:46:53,354.354 INFO    ] ================================================
[2026-08-31 20:46:53,370.370 INFO    ] Launching Daemon at Mon Aug 31 20:46:53 IST 2026
[2026-08-31 20:46:53,380.380 INFO    ] ================================================
[2026-08-31 20:46:53,950.950 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:46:53
[2026-08-31 20:46:54,537.537 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:46:54,806.806 INFO    ] Initializing speech engine...
[2026-08-31 20:46:54,816.816 INFO    ] 2026-08-31 20:46:54
[2026-08-31 20:46:55,064.064 INFO    ] 2026-08-31 20:46:55
[2026-08-31 20:46:55,099.099 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:46:55,291.291 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:46:55,336.336 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:46:55,491.491 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:46:55,528.528 INFO    ] time= 31/08/2026 20:46:55
[2026-08-31 20:46:55,582.582 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:46:55,625.625 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:46:55,684.684 INFO    ] No existing commands found in stream
[2026-08-31 20:47:00,710.710 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:47:00,712.712 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-08-31 20:47:01,925.925 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 20:47:01,928.928 INFO    ] Checking for system updates...
[2026-08-31 20:47:01,969.969 INFO    ] 200
[2026-08-31 20:47:01,972.972 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:47:02,045.045 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:47:02,048.048 INFO    ] No update needed
[2026-08-31 20:47:02,051.051 INFO    ] Checking for camera pi updates...
[2026-08-31 20:47:02,092.092 INFO    ] 200
[2026-08-31 20:47:02,095.095 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:47:02,140.140 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:47:02,230.230 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:47:02,247.247 INFO    ] No camera update needed
[2026-08-31 20:47:02,251.251 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:47:02,254.254 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:47:02,261.261 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:47:02,268.268 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:47:04,312.312 INFO    ] ================================================
[2026-08-31 20:47:04,328.328 INFO    ] Launching Daemon at Mon Aug 31 20:47:04 IST 2026
[2026-08-31 20:47:04,338.338 INFO    ] ================================================
[2026-08-31 20:47:04,988.988 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:47:04
[2026-08-31 20:47:05,649.649 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:47:05,958.958 INFO    ] Initializing speech engine...
[2026-08-31 20:47:05,964.964 INFO    ] 2026-08-31 20:47:05
[2026-08-31 20:47:06,259.259 INFO    ] 2026-08-31 20:47:06
[2026-08-31 20:47:06,309.309 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:47:06,567.567 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:47:06,572.572 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:47:06,760.760 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:47:06,806.806 INFO    ] time= 31/08/2026 20:47:06
[2026-08-31 20:47:06,813.813 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:47:06,834.834 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:47:06,959.959 INFO    ] No existing commands found in stream
[2026-08-31 20:47:11,975.975 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:47:11,978.978 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-08-31 20:47:13,205.205 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 20:47:13,208.208 INFO    ] Checking for system updates...
[2026-08-31 20:47:13,244.244 INFO    ] 200
[2026-08-31 20:47:13,247.247 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:47:13,301.301 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:47:13,303.303 INFO    ] No update needed
[2026-08-31 20:47:13,306.306 INFO    ] Checking for camera pi updates...
[2026-08-31 20:47:13,339.339 INFO    ] 200
[2026-08-31 20:47:13,342.342 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:47:13,387.387 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:47:13,467.467 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:47:13,470.470 INFO    ] No camera update needed
[2026-08-31 20:47:13,472.472 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:47:13,474.474 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:47:13,480.480 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:47:13,485.485 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:47:15,525.525 INFO    ] ================================================
[2026-08-31 20:47:15,540.540 INFO    ] Launching Daemon at Mon Aug 31 20:47:15 IST 2026
[2026-08-31 20:47:15,552.552 INFO    ] ================================================
[2026-08-31 20:47:16,118.118 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:47:16
[2026-08-31 20:47:16,702.702 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:47:16,961.961 INFO    ] Initializing speech engine...
[2026-08-31 20:47:16,975.975 INFO    ] 2026-08-31 20:47:16
[2026-08-31 20:47:17,257.257 INFO    ] 2026-08-31 20:47:17
[2026-08-31 20:47:17,292.292 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:47:17,491.491 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:47:17,506.506 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:47:17,668.668 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:47:17,676.676 INFO    ] time= 31/08/2026 20:47:17
[2026-08-31 20:47:17,681.681 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:47:17,687.687 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:47:17,760.760 INFO    ] No existing commands found in stream
[2026-08-31 20:47:22,772.772 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:47:22,775.775 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-08-31 20:47:25,323.323 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 20:47:25,325.325 INFO    ] Checking for system updates...
[2026-08-31 20:47:25,366.366 INFO    ] 200
[2026-08-31 20:47:25,369.369 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:47:25,425.425 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:47:25,428.428 INFO    ] No update needed
[2026-08-31 20:47:25,430.430 INFO    ] Checking for camera pi updates...
[2026-08-31 20:47:25,465.465 INFO    ] 200
[2026-08-31 20:47:25,468.468 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:47:25,514.514 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:47:25,619.619 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:47:25,621.621 INFO    ] No camera update needed
[2026-08-31 20:47:25,624.624 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:47:25,627.627 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:47:25,633.633 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:47:25,639.639 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:47:27,682.682 INFO    ] ================================================
[2026-08-31 20:47:27,698.698 INFO    ] Launching Daemon at Mon Aug 31 20:47:27 IST 2026
[2026-08-31 20:47:27,708.708 INFO    ] ================================================
[2026-08-31 20:47:28,358.358 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:47:28
[2026-08-31 20:47:29,029.029 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:47:29,333.333 INFO    ] Initializing speech engine...
[2026-08-31 20:47:29,345.345 INFO    ] 2026-08-31 20:47:29
[2026-08-31 20:47:29,618.618 INFO    ] 2026-08-31 20:47:29
[2026-08-31 20:47:29,672.672 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:47:29,901.901 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:47:29,923.923 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:47:30,134.134 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:47:30,166.166 INFO    ] time= 31/08/2026 20:47:30
[2026-08-31 20:47:30,185.185 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:47:30,197.197 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:47:30,321.321 INFO    ] No existing commands found in stream
[2026-08-31 20:47:35,341.341 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:47:35,344.344 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-08-31 20:47:39,087.087 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 20:47:39,090.090 INFO    ] Checking for system updates...
[2026-08-31 20:47:39,126.126 INFO    ] 200
[2026-08-31 20:47:39,130.130 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:47:39,184.184 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:47:39,187.187 INFO    ] No update needed
[2026-08-31 20:47:39,190.190 INFO    ] Checking for camera pi updates...
[2026-08-31 20:47:39,224.224 INFO    ] 200
[2026-08-31 20:47:39,227.227 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:47:39,270.270 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:47:39,374.374 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:47:39,377.377 INFO    ] No camera update needed
[2026-08-31 20:47:39,380.380 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:47:39,383.383 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:47:39,389.389 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:47:39,395.395 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:47:41,437.437 INFO    ] ================================================
[2026-08-31 20:47:41,452.452 INFO    ] Launching Daemon at Mon Aug 31 20:47:41 IST 2026
[2026-08-31 20:47:41,464.464 INFO    ] ================================================
[2026-08-31 20:47:42,027.027 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:47:42
[2026-08-31 20:47:42,610.610 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:47:42,878.878 INFO    ] Initializing speech engine...
[2026-08-31 20:47:42,895.895 INFO    ] 2026-08-31 20:47:42
[2026-08-31 20:47:43,167.167 INFO    ] 2026-08-31 20:47:43
[2026-08-31 20:47:43,203.203 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:47:43,403.403 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:47:43,417.417 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:47:43,579.579 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:47:43,587.587 INFO    ] time= 31/08/2026 20:47:43
[2026-08-31 20:47:43,592.592 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:47:43,598.598 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:47:43,764.764 INFO    ] No existing commands found in stream
[2026-08-31 20:47:48,784.784 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:47:48,787.787 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-08-31 20:47:52,346.346 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 20:47:52,349.349 INFO    ] Checking for system updates...
[2026-08-31 20:47:52,385.385 INFO    ] 200
[2026-08-31 20:47:52,388.388 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:47:52,441.441 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:47:52,444.444 INFO    ] No update needed
[2026-08-31 20:47:52,447.447 INFO    ] Checking for camera pi updates...
[2026-08-31 20:47:52,486.486 INFO    ] 200
[2026-08-31 20:47:52,489.489 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:47:52,530.530 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:47:52,613.613 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:47:52,616.616 INFO    ] No camera update needed
[2026-08-31 20:47:52,619.619 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:47:52,622.622 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:47:52,628.628 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:47:52,634.634 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:47:54,677.677 INFO    ] ================================================
[2026-08-31 20:47:54,693.693 INFO    ] Launching Daemon at Mon Aug 31 20:47:54 IST 2026
[2026-08-31 20:47:54,704.704 INFO    ] ================================================
[2026-08-31 20:47:55,270.270 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:47:55
[2026-08-31 20:47:55,850.850 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:47:56,117.117 INFO    ] Initializing speech engine...
[2026-08-31 20:47:56,120.120 INFO    ] 2026-08-31 20:47:56
[2026-08-31 20:47:56,399.399 INFO    ] 2026-08-31 20:47:56
[2026-08-31 20:47:56,433.433 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:47:56,646.646 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:47:56,663.663 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:47:56,811.811 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:47:56,820.820 INFO    ] time= 31/08/2026 20:47:56
[2026-08-31 20:47:56,827.827 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:47:56,859.859 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:47:57,000.000 INFO    ] No existing commands found in stream
[2026-08-31 20:48:02,025.025 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:48:02,028.028 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-08-31 20:48:03,193.193 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 20:48:03,197.197 INFO    ] Checking for system updates...
[2026-08-31 20:48:03,233.233 INFO    ] 200
[2026-08-31 20:48:03,235.235 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:48:03,292.292 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:48:03,294.294 INFO    ] No update needed
[2026-08-31 20:48:03,296.296 INFO    ] Checking for camera pi updates...
[2026-08-31 20:48:03,329.329 INFO    ] 200
[2026-08-31 20:48:03,332.332 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:48:03,372.372 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:48:03,480.480 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:48:03,483.483 INFO    ] No camera update needed
[2026-08-31 20:48:03,485.485 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:48:03,487.487 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:48:03,493.493 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:48:03,498.498 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:48:05,537.537 INFO    ] ================================================
[2026-08-31 20:48:05,553.553 INFO    ] Launching Daemon at Mon Aug 31 20:48:05 IST 2026
[2026-08-31 20:48:05,564.564 INFO    ] ================================================
[2026-08-31 20:48:06,139.139 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:48:06
[2026-08-31 20:48:06,813.813 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:48:07,115.115 INFO    ] Initializing speech engine...
[2026-08-31 20:48:07,121.121 INFO    ] 2026-08-31 20:48:07
[2026-08-31 20:48:07,396.396 INFO    ] 2026-08-31 20:48:07
[2026-08-31 20:48:07,454.454 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:48:07,687.687 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:48:07,693.693 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:48:07,827.827 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:48:07,864.864 INFO    ] time= 31/08/2026 20:48:07
[2026-08-31 20:48:07,924.924 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:48:07,966.966 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:48:08,099.099 INFO    ] No existing commands found in stream
[2026-08-31 20:48:13,128.128 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:48:13,131.131 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-08-31 20:48:14,367.367 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 20:48:14,370.370 INFO    ] Checking for system updates...
[2026-08-31 20:48:14,408.408 INFO    ] 200
[2026-08-31 20:48:14,411.411 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:48:14,464.464 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:48:14,467.467 INFO    ] No update needed
[2026-08-31 20:48:14,470.470 INFO    ] Checking for camera pi updates...
[2026-08-31 20:48:14,504.504 INFO    ] 200
[2026-08-31 20:48:14,506.506 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:48:14,546.546 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:48:14,650.650 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:48:14,652.652 INFO    ] No camera update needed
[2026-08-31 20:48:14,655.655 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:48:14,657.657 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:48:14,662.662 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:48:14,667.667 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:48:16,709.709 INFO    ] ================================================
[2026-08-31 20:48:16,725.725 INFO    ] Launching Daemon at Mon Aug 31 20:48:16 IST 2026
[2026-08-31 20:48:16,736.736 INFO    ] ================================================
[2026-08-31 20:48:17,318.318 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:48:17
[2026-08-31 20:48:17,918.918 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:48:18,191.191 INFO    ] Initializing speech engine...
[2026-08-31 20:48:18,200.200 INFO    ] 2026-08-31 20:48:18
[2026-08-31 20:48:18,448.448 INFO    ] 2026-08-31 20:48:18
[2026-08-31 20:48:18,484.484 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:48:18,740.740 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:48:18,744.744 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:48:18,919.919 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:48:18,974.974 INFO    ] time= 31/08/2026 20:48:18
[2026-08-31 20:48:19,005.005 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:48:19,022.022 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:48:19,165.165 INFO    ] No existing commands found in stream
[2026-08-31 20:48:24,190.190 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:48:24,193.193 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-08-31 20:48:27,535.535 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 20:48:27,538.538 INFO    ] Checking for system updates...
[2026-08-31 20:48:27,575.575 INFO    ] 200
[2026-08-31 20:48:27,578.578 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:48:27,630.630 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:48:27,633.633 INFO    ] No update needed
[2026-08-31 20:48:27,635.635 INFO    ] Checking for camera pi updates...
[2026-08-31 20:48:27,669.669 INFO    ] 200
[2026-08-31 20:48:27,671.671 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:48:27,712.712 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:48:27,793.793 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:48:27,795.795 INFO    ] No camera update needed
[2026-08-31 20:48:27,798.798 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:48:27,800.800 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:48:27,806.806 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:48:27,811.811 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:48:29,850.850 INFO    ] ================================================
[2026-08-31 20:48:29,866.866 INFO    ] Launching Daemon at Mon Aug 31 20:48:29 IST 2026
[2026-08-31 20:48:29,876.876 INFO    ] ================================================
[2026-08-31 20:48:30,448.448 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:48:30
[2026-08-31 20:48:31,032.032 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:48:31,288.288 INFO    ] Initializing speech engine...
[2026-08-31 20:48:31,294.294 INFO    ] 2026-08-31 20:48:31
[2026-08-31 20:48:31,592.592 INFO    ] 2026-08-31 20:48:31
[2026-08-31 20:48:31,630.630 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:48:31,814.814 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:48:31,829.829 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:48:31,979.979 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:48:31,989.989 INFO    ] time= 31/08/2026 20:48:31
[2026-08-31 20:48:31,995.995 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:48:32,016.016 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:48:32,152.152 INFO    ] No existing commands found in stream
[2026-08-31 20:48:37,172.172 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:48:37,175.175 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-08-31 20:48:40,705.705 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 20:48:40,708.708 INFO    ] Checking for system updates...
[2026-08-31 20:48:40,748.748 INFO    ] 200
[2026-08-31 20:48:40,750.750 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:48:40,803.803 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:48:40,805.805 INFO    ] No update needed
[2026-08-31 20:48:40,808.808 INFO    ] Checking for camera pi updates...
[2026-08-31 20:48:40,842.842 INFO    ] 200
[2026-08-31 20:48:40,844.844 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:48:40,885.885 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:48:40,965.965 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:48:40,968.968 INFO    ] No camera update needed
[2026-08-31 20:48:40,970.970 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:48:40,973.973 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:48:40,978.978 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:48:40,983.983 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:48:43,023.023 INFO    ] ================================================
[2026-08-31 20:48:43,039.039 INFO    ] Launching Daemon at Mon Aug 31 20:48:43 IST 2026
[2026-08-31 20:48:43,050.050 INFO    ] ================================================
[2026-08-31 20:48:43,617.617 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:48:43
[2026-08-31 20:48:44,201.201 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:48:44,451.451 INFO    ] Initializing speech engine...
[2026-08-31 20:48:44,465.465 INFO    ] 2026-08-31 20:48:44
[2026-08-31 20:48:44,731.731 INFO    ] 2026-08-31 20:48:44
[2026-08-31 20:48:44,767.767 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:48:44,970.970 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:48:45,029.029 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:48:45,171.171 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:48:45,208.208 INFO    ] time= 31/08/2026 20:48:45
[2026-08-31 20:48:45,267.267 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:48:45,308.308 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:48:45,360.360 INFO    ] No existing commands found in stream
[2026-08-31 20:48:50,372.372 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:48:50,375.375 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-08-31 20:48:53,444.444 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 20:48:53,447.447 INFO    ] Checking for system updates...
[2026-08-31 20:48:53,482.482 INFO    ] 200
[2026-08-31 20:48:53,485.485 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:48:53,539.539 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:48:53,541.541 INFO    ] No update needed
[2026-08-31 20:48:53,544.544 INFO    ] Checking for camera pi updates...
[2026-08-31 20:48:53,581.581 INFO    ] 200
[2026-08-31 20:48:53,583.583 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:48:53,629.629 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:48:53,811.811 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:48:53,813.813 INFO    ] No camera update needed
[2026-08-31 20:48:53,815.815 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:48:53,818.818 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:48:53,823.823 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:48:53,828.828 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:48:55,871.871 INFO    ] ================================================
[2026-08-31 20:48:55,886.886 INFO    ] Launching Daemon at Mon Aug 31 20:48:55 IST 2026
[2026-08-31 20:48:55,898.898 INFO    ] ================================================
[2026-08-31 20:48:56,568.568 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:48:56
[2026-08-31 20:48:57,258.258 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:48:57,570.570 INFO    ] Initializing speech engine...
[2026-08-31 20:48:57,578.578 INFO    ] 2026-08-31 20:48:57
[2026-08-31 20:48:57,863.863 INFO    ] 2026-08-31 20:48:57
[2026-08-31 20:48:57,918.918 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:48:58,175.175 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:48:58,195.195 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:48:58,418.418 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:48:58,439.439 INFO    ] time= 31/08/2026 20:48:58
[2026-08-31 20:48:58,464.464 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:48:58,480.480 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:48:58,606.606 INFO    ] No existing commands found in stream
[2026-08-31 20:49:03,637.637 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:49:03,640.640 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-08-31 20:49:04,617.617 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 20:49:04,620.620 INFO    ] Checking for system updates...
[2026-08-31 20:49:04,657.657 INFO    ] 200
[2026-08-31 20:49:04,660.660 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:49:04,712.712 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:49:04,715.715 INFO    ] No update needed
[2026-08-31 20:49:04,717.717 INFO    ] Checking for camera pi updates...
[2026-08-31 20:49:04,751.751 INFO    ] 200
[2026-08-31 20:49:04,754.754 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:49:04,796.796 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:49:04,893.893 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:49:04,895.895 INFO    ] No camera update needed
[2026-08-31 20:49:04,898.898 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:49:04,900.900 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:49:04,905.905 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:49:04,910.910 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:49:06,951.951 INFO    ] ================================================
[2026-08-31 20:49:06,967.967 INFO    ] Launching Daemon at Mon Aug 31 20:49:06 IST 2026
[2026-08-31 20:49:06,979.979 INFO    ] ================================================
[2026-08-31 20:49:07,635.635 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:49:07
[2026-08-31 20:49:08,314.314 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:49:08,620.620 INFO    ] Initializing speech engine...
[2026-08-31 20:49:08,629.629 INFO    ] 2026-08-31 20:49:08
[2026-08-31 20:49:08,901.901 INFO    ] 2026-08-31 20:49:08
[2026-08-31 20:49:08,964.964 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:49:09,199.199 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:49:09,222.222 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:49:09,423.423 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:49:09,470.470 INFO    ] time= 31/08/2026 20:49:09
[2026-08-31 20:49:09,476.476 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:49:09,496.496 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:49:09,646.646 INFO    ] No existing commands found in stream
[2026-08-31 20:49:14,684.684 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:49:14,687.687 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-08-31 20:49:15,471.471 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 20:49:15,474.474 INFO    ] Checking for system updates...
[2026-08-31 20:49:15,511.511 INFO    ] 200
[2026-08-31 20:49:15,514.514 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:49:15,566.566 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:49:15,569.569 INFO    ] No update needed
[2026-08-31 20:49:15,571.571 INFO    ] Checking for camera pi updates...
[2026-08-31 20:49:15,605.605 INFO    ] 200
[2026-08-31 20:49:15,608.608 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:49:15,650.650 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:49:15,748.748 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:49:15,751.751 INFO    ] No camera update needed
[2026-08-31 20:49:15,753.753 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:49:15,755.755 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:49:15,761.761 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:49:15,766.766 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:49:17,805.805 INFO    ] ================================================
[2026-08-31 20:49:17,820.820 INFO    ] Launching Daemon at Mon Aug 31 20:49:17 IST 2026
[2026-08-31 20:49:17,831.831 INFO    ] ================================================
[2026-08-31 20:49:18,435.435 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:49:18
[2026-08-31 20:49:19,113.113 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:49:19,398.398 INFO    ] Initializing speech engine...
[2026-08-31 20:49:19,412.412 INFO    ] 2026-08-31 20:49:19
[2026-08-31 20:49:19,667.667 INFO    ] 2026-08-31 20:49:19
[2026-08-31 20:49:19,723.723 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:49:19,946.946 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:49:19,956.956 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:49:20,183.183 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:49:20,222.222 INFO    ] time= 31/08/2026 20:49:20
[2026-08-31 20:49:20,228.228 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:49:20,245.245 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:49:20,368.368 INFO    ] No existing commands found in stream
[2026-08-31 20:49:25,390.390 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:49:25,393.393 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-08-31 20:49:29,265.265 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 20:49:29,268.268 INFO    ] Checking for system updates...
[2026-08-31 20:49:29,308.308 INFO    ] 200
[2026-08-31 20:49:29,311.311 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:49:29,363.363 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:49:29,365.365 INFO    ] No update needed
[2026-08-31 20:49:29,368.368 INFO    ] Checking for camera pi updates...
[2026-08-31 20:49:29,401.401 INFO    ] 200
[2026-08-31 20:49:29,403.403 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:49:29,444.444 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:49:29,529.529 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:49:29,532.532 INFO    ] No camera update needed
[2026-08-31 20:49:29,534.534 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:49:29,536.536 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:49:29,542.542 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:49:29,547.547 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:49:31,589.589 INFO    ] ================================================
[2026-08-31 20:49:31,606.606 INFO    ] Launching Daemon at Mon Aug 31 20:49:31 IST 2026
[2026-08-31 20:49:31,618.618 INFO    ] ================================================
[2026-08-31 20:49:32,233.233 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:49:32
[2026-08-31 20:49:32,931.931 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:49:33,278.278 INFO    ] Initializing speech engine...
[2026-08-31 20:49:33,288.288 INFO    ] 2026-08-31 20:49:33
[2026-08-31 20:49:33,552.552 INFO    ] 2026-08-31 20:49:33
[2026-08-31 20:49:33,615.615 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:49:33,843.843 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:49:33,852.852 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:49:33,988.988 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:49:34,015.015 INFO    ] time= 31/08/2026 20:49:33
[2026-08-31 20:49:34,075.075 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:49:34,123.123 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:49:34,271.271 INFO    ] No existing commands found in stream
[2026-08-31 20:49:39,290.290 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:49:39,293.293 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-08-31 20:49:40,388.388 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 20:49:40,391.391 INFO    ] Checking for system updates...
[2026-08-31 20:49:40,431.431 INFO    ] 200
[2026-08-31 20:49:40,434.434 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:49:40,494.494 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:49:40,496.496 INFO    ] No update needed
[2026-08-31 20:49:40,499.499 INFO    ] Checking for camera pi updates...
[2026-08-31 20:49:40,533.533 INFO    ] 200
[2026-08-31 20:49:40,535.535 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:49:40,576.576 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:49:40,674.674 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:49:40,677.677 INFO    ] No camera update needed
[2026-08-31 20:49:40,679.679 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:49:40,682.682 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:49:40,687.687 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:49:40,692.692 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:49:42,734.734 INFO    ] ================================================
[2026-08-31 20:49:42,750.750 INFO    ] Launching Daemon at Mon Aug 31 20:49:42 IST 2026
[2026-08-31 20:49:42,760.760 INFO    ] ================================================
[2026-08-31 20:49:43,344.344 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:49:43
[2026-08-31 20:49:43,942.942 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:49:44,220.220 INFO    ] Initializing speech engine...
[2026-08-31 20:49:44,227.227 INFO    ] 2026-08-31 20:49:44
[2026-08-31 20:49:44,490.490 INFO    ] 2026-08-31 20:49:44
[2026-08-31 20:49:44,543.543 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:49:44,809.809 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:49:44,832.832 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:49:45,026.026 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:49:45,033.033 INFO    ] time= 31/08/2026 20:49:45
[2026-08-31 20:49:45,051.051 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:49:45,063.063 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:49:45,187.187 INFO    ] No existing commands found in stream
[2026-08-31 20:49:50,211.211 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:49:50,213.213 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-08-31 20:49:54,024.024 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 20:49:54,027.027 INFO    ] Checking for system updates...
[2026-08-31 20:49:54,068.068 INFO    ] 200
[2026-08-31 20:49:54,071.071 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:49:54,126.126 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:49:54,129.129 INFO    ] No update needed
[2026-08-31 20:49:54,131.131 INFO    ] Checking for camera pi updates...
[2026-08-31 20:49:54,170.170 INFO    ] 200
[2026-08-31 20:49:54,173.173 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:49:54,213.213 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:49:54,288.288 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:49:54,290.290 INFO    ] No camera update needed
[2026-08-31 20:49:54,293.293 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:49:54,295.295 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:49:54,300.300 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:49:54,305.305 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:49:56,348.348 INFO    ] ================================================
[2026-08-31 20:49:56,363.363 INFO    ] Launching Daemon at Mon Aug 31 20:49:56 IST 2026
[2026-08-31 20:49:56,374.374 INFO    ] ================================================
[2026-08-31 20:49:56,942.942 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:49:56
[2026-08-31 20:49:57,525.525 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:49:57,775.775 INFO    ] Initializing speech engine...
[2026-08-31 20:49:57,788.788 INFO    ] 2026-08-31 20:49:57
[2026-08-31 20:49:58,054.054 INFO    ] 2026-08-31 20:49:58
[2026-08-31 20:49:58,089.089 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:49:58,291.291 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:49:58,350.350 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:49:58,494.494 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:49:58,544.544 INFO    ] time= 31/08/2026 20:49:58
[2026-08-31 20:49:58,603.603 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:49:58,633.633 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:49:58,717.717 INFO    ] No existing commands found in stream
[2026-08-31 20:50:03,754.754 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:50:03,757.757 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-08-31 20:50:08,527.527 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 20:50:08,530.530 INFO    ] Checking for system updates...
[2026-08-31 20:50:08,566.566 INFO    ] 200
[2026-08-31 20:50:08,569.569 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:50:08,622.622 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:50:08,625.625 INFO    ] No update needed
[2026-08-31 20:50:08,627.627 INFO    ] Checking for camera pi updates...
[2026-08-31 20:50:08,665.665 INFO    ] 200
[2026-08-31 20:50:08,668.668 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:50:08,713.713 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:50:08,799.799 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:50:08,802.802 INFO    ] No camera update needed
[2026-08-31 20:50:08,804.804 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:50:08,806.806 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:50:08,812.812 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:50:08,817.817 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:50:10,857.857 INFO    ] ================================================
[2026-08-31 20:50:10,872.872 INFO    ] Launching Daemon at Mon Aug 31 20:50:10 IST 2026
[2026-08-31 20:50:10,883.883 INFO    ] ================================================
[2026-08-31 20:50:11,548.548 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:50:11
[2026-08-31 20:50:12,236.236 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:50:12,545.545 INFO    ] Initializing speech engine...
[2026-08-31 20:50:12,559.559 INFO    ] 2026-08-31 20:50:12
[2026-08-31 20:50:12,836.836 INFO    ] 2026-08-31 20:50:12
[2026-08-31 20:50:12,892.892 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:50:13,125.125 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:50:13,136.136 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:50:13,339.339 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:50:13,394.394 INFO    ] time= 31/08/2026 20:50:13
[2026-08-31 20:50:13,401.401 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:50:13,420.420 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:50:13,549.549 INFO    ] No existing commands found in stream
[2026-08-31 20:50:18,567.567 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:50:18,570.570 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-08-31 20:50:19,690.690 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 20:50:19,694.694 INFO    ] Checking for system updates...
[2026-08-31 20:50:19,737.737 INFO    ] 200
[2026-08-31 20:50:19,740.740 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:50:19,794.794 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:50:19,797.797 INFO    ] No update needed
[2026-08-31 20:50:19,800.800 INFO    ] Checking for camera pi updates...
[2026-08-31 20:50:19,839.839 INFO    ] 200
[2026-08-31 20:50:19,841.841 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:50:19,887.887 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:50:19,971.971 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:50:19,973.973 INFO    ] No camera update needed
[2026-08-31 20:50:19,975.975 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:50:19,978.978 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:50:19,983.983 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:50:19,988.988 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:50:22,027.027 INFO    ] ================================================
[2026-08-31 20:50:22,043.043 INFO    ] Launching Daemon at Mon Aug 31 20:50:22 IST 2026
[2026-08-31 20:50:22,053.053 INFO    ] ================================================
[2026-08-31 20:50:22,628.628 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:50:22
[2026-08-31 20:50:23,219.219 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:50:23,490.490 INFO    ] Initializing speech engine...
[2026-08-31 20:50:23,500.500 INFO    ] 2026-08-31 20:50:23
[2026-08-31 20:50:23,751.751 INFO    ] 2026-08-31 20:50:23
[2026-08-31 20:50:23,795.795 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:50:24,045.045 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:50:24,054.054 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:50:24,192.192 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:50:24,267.267 INFO    ] time= 31/08/2026 20:50:24
[2026-08-31 20:50:24,322.322 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:50:24,329.329 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:50:24,457.457 INFO    ] No existing commands found in stream
[2026-08-31 20:50:29,487.487 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:50:29,490.490 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-08-31 20:50:33,152.152 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 20:50:33,155.155 INFO    ] Checking for system updates...
[2026-08-31 20:50:33,192.192 INFO    ] 200
[2026-08-31 20:50:33,194.194 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:50:33,247.247 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:50:33,250.250 INFO    ] No update needed
[2026-08-31 20:50:33,252.252 INFO    ] Checking for camera pi updates...
[2026-08-31 20:50:33,286.286 INFO    ] 200
[2026-08-31 20:50:33,289.289 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:50:33,330.330 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:50:33,432.432 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:50:33,434.434 INFO    ] No camera update needed
[2026-08-31 20:50:33,436.436 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:50:33,439.439 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:50:33,444.444 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:50:33,449.449 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:50:35,488.488 INFO    ] ================================================
[2026-08-31 20:50:35,503.503 INFO    ] Launching Daemon at Mon Aug 31 20:50:35 IST 2026
[2026-08-31 20:50:35,514.514 INFO    ] ================================================
[2026-08-31 20:50:36,079.079 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:50:36
[2026-08-31 20:50:36,661.661 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:50:36,917.917 INFO    ] Initializing speech engine...
[2026-08-31 20:50:36,926.926 INFO    ] 2026-08-31 20:50:36
[2026-08-31 20:50:37,223.223 INFO    ] 2026-08-31 20:50:37
[2026-08-31 20:50:37,261.261 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:50:37,460.460 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:50:37,472.472 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:50:37,641.641 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:50:37,647.647 INFO    ] time= 31/08/2026 20:50:37
[2026-08-31 20:50:37,661.661 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:50:37,713.713 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:50:37,860.860 INFO    ] No existing commands found in stream
[2026-08-31 20:50:42,878.878 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:50:42,881.881 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-08-31 20:50:47,127.127 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 20:50:47,130.130 INFO    ] Checking for system updates...
[2026-08-31 20:50:47,166.166 INFO    ] 200
[2026-08-31 20:50:47,168.168 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:50:47,220.220 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:50:47,223.223 INFO    ] No update needed
[2026-08-31 20:50:47,225.225 INFO    ] Checking for camera pi updates...
[2026-08-31 20:50:47,259.259 INFO    ] 200
[2026-08-31 20:50:47,262.262 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:50:47,307.307 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:50:47,386.386 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:50:47,389.389 INFO    ] No camera update needed
[2026-08-31 20:50:47,391.391 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:50:47,394.394 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:50:47,399.399 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:50:47,404.404 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:50:49,445.445 INFO    ] ================================================
[2026-08-31 20:50:49,461.461 INFO    ] Launching Daemon at Mon Aug 31 20:50:49 IST 2026
[2026-08-31 20:50:49,472.472 INFO    ] ================================================
[2026-08-31 20:50:50,036.036 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:50:50
[2026-08-31 20:50:50,619.619 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:50:50,875.875 INFO    ] Initializing speech engine...
[2026-08-31 20:50:50,883.883 INFO    ] 2026-08-31 20:50:50
[2026-08-31 20:50:51,180.180 INFO    ] 2026-08-31 20:50:51
[2026-08-31 20:50:51,207.207 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:50:51,415.415 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:50:51,431.431 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:50:51,593.593 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:50:51,600.600 INFO    ] time= 31/08/2026 20:50:51
[2026-08-31 20:50:51,605.605 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:50:51,612.612 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:50:51,687.687 INFO    ] No existing commands found in stream
[2026-08-31 20:50:56,697.697 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:50:56,700.700 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-08-31 20:51:00,869.869 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 20:51:00,871.871 INFO    ] Checking for system updates...
[2026-08-31 20:51:00,907.907 INFO    ] 200
[2026-08-31 20:51:00,910.910 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:51:00,973.973 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:51:00,975.975 INFO    ] No update needed
[2026-08-31 20:51:00,978.978 INFO    ] Checking for camera pi updates...
[2026-08-31 20:51:01,014.014 INFO    ] 200
[2026-08-31 20:51:01,017.017 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:51:01,062.062 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:51:01,341.341 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:51:01,343.343 INFO    ] No camera update needed
[2026-08-31 20:51:01,345.345 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:51:01,348.348 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:51:01,353.353 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:51:01,358.358 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:51:03,401.401 INFO    ] ================================================
[2026-08-31 20:51:03,416.416 INFO    ] Launching Daemon at Mon Aug 31 20:51:03 IST 2026
[2026-08-31 20:51:03,427.427 INFO    ] ================================================
[2026-08-31 20:51:04,011.011 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:51:04
[2026-08-31 20:51:04,611.611 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:51:04,884.884 INFO    ] Initializing speech engine...
[2026-08-31 20:51:04,893.893 INFO    ] 2026-08-31 20:51:04
[2026-08-31 20:51:05,143.143 INFO    ] 2026-08-31 20:51:05
[2026-08-31 20:51:05,178.178 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:51:05,429.429 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:51:05,438.438 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:51:05,662.662 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:51:05,696.696 INFO    ] time= 31/08/2026 20:51:05
[2026-08-31 20:51:05,714.714 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:51:05,722.722 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:51:05,851.851 INFO    ] No existing commands found in stream
[2026-08-31 20:51:10,865.865 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:51:10,868.868 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-08-31 20:51:14,615.615 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 20:51:14,618.618 INFO    ] Checking for system updates...
[2026-08-31 20:51:14,654.654 INFO    ] 200
[2026-08-31 20:51:14,656.656 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:51:14,715.715 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:51:14,718.718 INFO    ] No update needed
[2026-08-31 20:51:14,721.721 INFO    ] Checking for camera pi updates...
[2026-08-31 20:51:14,754.754 INFO    ] 200
[2026-08-31 20:51:14,757.757 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:51:14,797.797 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:51:14,878.878 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:51:14,880.880 INFO    ] No camera update needed
[2026-08-31 20:51:14,882.882 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:51:14,885.885 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:51:14,890.890 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:51:14,895.895 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:51:16,937.937 INFO    ] ================================================
[2026-08-31 20:51:16,952.952 INFO    ] Launching Daemon at Mon Aug 31 20:51:16 IST 2026
[2026-08-31 20:51:16,962.962 INFO    ] ================================================
[2026-08-31 20:51:17,540.540 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:51:17
[2026-08-31 20:51:18,132.132 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:51:18,416.416 INFO    ] Initializing speech engine...
[2026-08-31 20:51:18,424.424 INFO    ] 2026-08-31 20:51:18
[2026-08-31 20:51:18,685.685 INFO    ] 2026-08-31 20:51:18
[2026-08-31 20:51:18,721.721 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:51:18,943.943 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:51:18,952.952 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:51:19,095.095 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:51:19,102.102 INFO    ] time= 31/08/2026 20:51:19
[2026-08-31 20:51:19,107.107 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:51:19,114.114 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:51:19,190.190 INFO    ] No existing commands found in stream
[2026-08-31 20:51:24,206.206 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:51:24,209.209 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-08-31 20:51:27,472.472 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 20:51:27,475.475 INFO    ] Checking for system updates...
[2026-08-31 20:51:27,510.510 INFO    ] 200
[2026-08-31 20:51:27,513.513 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:51:27,566.566 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:51:27,569.569 INFO    ] No update needed
[2026-08-31 20:51:27,571.571 INFO    ] Checking for camera pi updates...
[2026-08-31 20:51:27,609.609 INFO    ] 200
[2026-08-31 20:51:27,612.612 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:51:27,656.656 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:51:27,763.763 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:51:27,766.766 INFO    ] No camera update needed
[2026-08-31 20:51:27,769.769 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:51:27,771.771 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:51:27,777.777 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:51:27,782.782 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:51:29,821.821 INFO    ] ================================================
[2026-08-31 20:51:29,837.837 INFO    ] Launching Daemon at Mon Aug 31 20:51:29 IST 2026
[2026-08-31 20:51:29,848.848 INFO    ] ================================================
[2026-08-31 20:51:30,435.435 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:51:30
[2026-08-31 20:51:31,039.039 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:51:31,321.321 INFO    ] Initializing speech engine...
[2026-08-31 20:51:31,327.327 INFO    ] 2026-08-31 20:51:31
[2026-08-31 20:51:31,604.604 INFO    ] 2026-08-31 20:51:31
[2026-08-31 20:51:31,645.645 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:51:31,854.854 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:51:31,871.871 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:51:32,028.028 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:51:32,050.050 INFO    ] time= 31/08/2026 20:51:32
[2026-08-31 20:51:32,058.058 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:51:32,066.066 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:51:32,142.142 INFO    ] No existing commands found in stream
[2026-08-31 20:51:37,177.177 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:51:37,180.180 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-08-31 20:51:39,822.822 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 20:51:39,825.825 INFO    ] Checking for system updates...
[2026-08-31 20:51:39,865.865 INFO    ] 200
[2026-08-31 20:51:39,868.868 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:51:39,922.922 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:51:39,925.925 INFO    ] No update needed
[2026-08-31 20:51:39,928.928 INFO    ] Checking for camera pi updates...
[2026-08-31 20:51:39,966.966 INFO    ] 200
[2026-08-31 20:51:39,969.969 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:51:40,011.011 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:51:40,099.099 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:51:40,102.102 INFO    ] No camera update needed
[2026-08-31 20:51:40,105.105 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:51:40,107.107 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:51:40,114.114 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:51:40,119.119 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:51:42,161.161 INFO    ] ================================================
[2026-08-31 20:51:42,176.176 INFO    ] Launching Daemon at Mon Aug 31 20:51:42 IST 2026
[2026-08-31 20:51:42,187.187 INFO    ] ================================================
[2026-08-31 20:51:42,783.783 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:51:42
[2026-08-31 20:51:43,387.387 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:51:43,665.665 INFO    ] Initializing speech engine...
[2026-08-31 20:51:43,673.673 INFO    ] 2026-08-31 20:51:43
[2026-08-31 20:51:43,935.935 INFO    ] 2026-08-31 20:51:43
[2026-08-31 20:51:43,989.989 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:51:44,272.272 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:51:44,280.280 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:51:44,416.416 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:51:44,476.476 INFO    ] time= 31/08/2026 20:51:44
[2026-08-31 20:51:44,498.498 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:51:44,516.516 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:51:44,641.641 INFO    ] No existing commands found in stream
[2026-08-31 20:51:49,672.672 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:51:49,674.674 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-08-31 20:51:53,781.781 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 20:51:53,784.784 INFO    ] Checking for system updates...
[2026-08-31 20:51:53,819.819 INFO    ] 200
[2026-08-31 20:51:53,822.822 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:51:53,879.879 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:51:53,882.882 INFO    ] No update needed
[2026-08-31 20:51:53,884.884 INFO    ] Checking for camera pi updates...
[2026-08-31 20:51:53,917.917 INFO    ] 200
[2026-08-31 20:51:53,919.919 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:51:53,964.964 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:51:54,052.052 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:51:54,055.055 INFO    ] No camera update needed
[2026-08-31 20:51:54,057.057 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:51:54,059.059 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:51:54,065.065 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:51:54,070.070 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:51:56,110.110 INFO    ] ================================================
[2026-08-31 20:51:56,125.125 INFO    ] Launching Daemon at Mon Aug 31 20:51:56 IST 2026
[2026-08-31 20:51:56,136.136 INFO    ] ================================================
[2026-08-31 20:51:56,723.723 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:51:56
[2026-08-31 20:51:57,326.326 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:51:57,593.593 INFO    ] Initializing speech engine...
[2026-08-31 20:51:57,596.596 INFO    ] 2026-08-31 20:51:57
[2026-08-31 20:51:57,865.865 INFO    ] 2026-08-31 20:51:57
[2026-08-31 20:51:57,900.900 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:51:58,156.156 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:51:58,166.166 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:51:58,389.389 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:51:58,427.427 INFO    ] time= 31/08/2026 20:51:58
[2026-08-31 20:51:58,433.433 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:51:58,454.454 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:51:58,582.582 INFO    ] No existing commands found in stream
[2026-08-31 20:52:03,595.595 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:52:03,601.601 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-08-31 20:52:04,313.313 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 20:52:04,315.315 INFO    ] Checking for system updates...
[2026-08-31 20:52:04,351.351 INFO    ] 200
[2026-08-31 20:52:04,353.353 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:52:04,416.416 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:52:04,419.419 INFO    ] No update needed
[2026-08-31 20:52:04,421.421 INFO    ] Checking for camera pi updates...
[2026-08-31 20:52:04,460.460 INFO    ] 200
[2026-08-31 20:52:04,462.462 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:52:04,507.507 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:52:04,609.609 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:52:04,611.611 INFO    ] No camera update needed
[2026-08-31 20:52:04,614.614 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:52:04,616.616 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:52:04,621.621 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:52:04,626.626 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:52:06,668.668 INFO    ] ================================================
[2026-08-31 20:52:06,683.683 INFO    ] Launching Daemon at Mon Aug 31 20:52:06 IST 2026
[2026-08-31 20:52:06,694.694 INFO    ] ================================================
[2026-08-31 20:52:07,281.281 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:52:07
[2026-08-31 20:52:07,870.870 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:52:08,124.124 INFO    ] Initializing speech engine...
[2026-08-31 20:52:08,132.132 INFO    ] 2026-08-31 20:52:08
[2026-08-31 20:52:08,423.423 INFO    ] 2026-08-31 20:52:08
[2026-08-31 20:52:08,459.459 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:52:08,654.654 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:52:08,668.668 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:52:08,824.824 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:52:08,836.836 INFO    ] time= 31/08/2026 20:52:08
[2026-08-31 20:52:08,843.843 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:52:08,881.881 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:52:09,016.016 INFO    ] No existing commands found in stream
[2026-08-31 20:52:14,036.036 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:52:14,039.039 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-08-31 20:52:16,970.970 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 20:52:16,972.972 INFO    ] Checking for system updates...
[2026-08-31 20:52:17,008.008 INFO    ] 200
[2026-08-31 20:52:17,011.011 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:52:17,063.063 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:52:17,066.066 INFO    ] No update needed
[2026-08-31 20:52:17,068.068 INFO    ] Checking for camera pi updates...
[2026-08-31 20:52:17,102.102 INFO    ] 200
[2026-08-31 20:52:17,104.104 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:52:17,145.145 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:52:17,248.248 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:52:17,251.251 INFO    ] No camera update needed
[2026-08-31 20:52:17,254.254 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:52:17,256.256 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:52:17,263.263 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:52:17,269.269 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:52:19,310.310 INFO    ] ================================================
[2026-08-31 20:52:19,329.329 INFO    ] Launching Daemon at Mon Aug 31 20:52:19 IST 2026
[2026-08-31 20:52:19,340.340 INFO    ] ================================================
[2026-08-31 20:52:19,919.919 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:52:19
[2026-08-31 20:52:20,513.513 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:52:20,784.784 INFO    ] Initializing speech engine...
[2026-08-31 20:52:20,793.793 INFO    ] 2026-08-31 20:52:20
[2026-08-31 20:52:21,048.048 INFO    ] 2026-08-31 20:52:21
[2026-08-31 20:52:21,107.107 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:52:21,386.386 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:52:21,395.395 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:52:21,582.582 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:52:21,596.596 INFO    ] time= 31/08/2026 20:52:21
[2026-08-31 20:52:21,614.614 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:52:21,643.643 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:52:21,758.758 INFO    ] No existing commands found in stream
[2026-08-31 20:52:26,788.788 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:52:26,791.791 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-08-31 20:52:30,634.634 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 20:52:30,636.636 INFO    ] Checking for system updates...
[2026-08-31 20:52:30,672.672 INFO    ] 200
[2026-08-31 20:52:30,675.675 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:52:30,726.726 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:52:30,729.729 INFO    ] No update needed
[2026-08-31 20:52:30,731.731 INFO    ] Checking for camera pi updates...
[2026-08-31 20:52:30,769.769 INFO    ] 200
[2026-08-31 20:52:30,771.771 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:52:30,811.811 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:52:30,891.891 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:52:30,893.893 INFO    ] No camera update needed
[2026-08-31 20:52:30,896.896 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:52:30,898.898 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:52:30,903.903 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:52:30,908.908 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:52:32,952.952 INFO    ] ================================================
[2026-08-31 20:52:32,968.968 INFO    ] Launching Daemon at Mon Aug 31 20:52:32 IST 2026
[2026-08-31 20:52:32,979.979 INFO    ] ================================================
[2026-08-31 20:52:33,623.623 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:52:33
[2026-08-31 20:52:34,299.299 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:52:34,599.599 INFO    ] Initializing speech engine...
[2026-08-31 20:52:34,610.610 INFO    ] 2026-08-31 20:52:34
[2026-08-31 20:52:34,903.903 INFO    ] 2026-08-31 20:52:34
[2026-08-31 20:52:34,938.938 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:52:35,133.133 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:52:35,147.147 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:52:35,307.307 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:52:35,318.318 INFO    ] time= 31/08/2026 20:52:35
[2026-08-31 20:52:35,326.326 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:52:35,332.332 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:52:35,431.431 INFO    ] No existing commands found in stream
[2026-08-31 20:52:40,461.461 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:52:40,464.464 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-08-31 20:52:41,551.551 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 20:52:41,553.553 INFO    ] Checking for system updates...
[2026-08-31 20:52:41,592.592 INFO    ] 200
[2026-08-31 20:52:41,594.594 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:52:41,652.652 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:52:41,654.654 INFO    ] No update needed
[2026-08-31 20:52:41,656.656 INFO    ] Checking for camera pi updates...
[2026-08-31 20:52:41,693.693 INFO    ] 200
[2026-08-31 20:52:41,695.695 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:52:41,740.740 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:52:41,817.817 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:52:41,819.819 INFO    ] No camera update needed
[2026-08-31 20:52:41,822.822 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:52:41,824.824 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:52:41,829.829 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:52:41,834.834 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:52:43,876.876 INFO    ] ================================================
[2026-08-31 20:52:43,891.891 INFO    ] Launching Daemon at Mon Aug 31 20:52:43 IST 2026
[2026-08-31 20:52:43,903.903 INFO    ] ================================================
[2026-08-31 20:52:44,481.481 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:52:44
[2026-08-31 20:52:45,078.078 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:52:45,354.354 INFO    ] Initializing speech engine...
[2026-08-31 20:52:45,364.364 INFO    ] 2026-08-31 20:52:45
[2026-08-31 20:52:45,623.623 INFO    ] 2026-08-31 20:52:45
[2026-08-31 20:52:45,676.676 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:52:45,945.945 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:52:45,964.964 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:52:46,138.138 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:52:46,168.168 INFO    ] time= 31/08/2026 20:52:46
[2026-08-31 20:52:46,174.174 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:52:46,192.192 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:52:46,313.313 INFO    ] No existing commands found in stream
[2026-08-31 20:52:51,333.333 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:52:51,336.336 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-08-31 20:52:54,299.299 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 20:52:54,302.302 INFO    ] Checking for system updates...
[2026-08-31 20:52:54,343.343 INFO    ] 200
[2026-08-31 20:52:54,346.346 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:52:54,410.410 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:52:54,412.412 INFO    ] No update needed
[2026-08-31 20:52:54,415.415 INFO    ] Checking for camera pi updates...
[2026-08-31 20:52:54,452.452 INFO    ] 200
[2026-08-31 20:52:54,455.455 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:52:54,496.496 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:52:54,583.583 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:52:54,586.586 INFO    ] No camera update needed
[2026-08-31 20:52:54,589.589 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:52:54,592.592 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:52:54,598.598 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:52:54,604.604 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:52:56,644.644 INFO    ] ================================================
[2026-08-31 20:52:56,660.660 INFO    ] Launching Daemon at Mon Aug 31 20:52:56 IST 2026
[2026-08-31 20:52:56,671.671 INFO    ] ================================================
[2026-08-31 20:52:57,235.235 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:52:57
[2026-08-31 20:52:57,818.818 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:52:58,086.086 INFO    ] Initializing speech engine...
[2026-08-31 20:52:58,096.096 INFO    ] 2026-08-31 20:52:58
[2026-08-31 20:52:58,348.348 INFO    ] 2026-08-31 20:52:58
[2026-08-31 20:52:58,407.407 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:52:58,661.661 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:52:58,672.672 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:52:58,828.828 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:52:58,867.867 INFO    ] time= 31/08/2026 20:52:58
[2026-08-31 20:52:58,911.911 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:52:58,945.945 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:52:59,046.046 INFO    ] No existing commands found in stream
[2026-08-31 20:53:04,066.066 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:53:04,069.069 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-08-31 20:53:07,592.592 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 20:53:07,595.595 INFO    ] Checking for system updates...
[2026-08-31 20:53:07,639.639 INFO    ] 200
[2026-08-31 20:53:07,642.642 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:53:07,702.702 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:53:07,705.705 INFO    ] No update needed
[2026-08-31 20:53:07,707.707 INFO    ] Checking for camera pi updates...
[2026-08-31 20:53:07,740.740 INFO    ] 200
[2026-08-31 20:53:07,742.742 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:53:07,791.791 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:53:07,870.870 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:53:07,872.872 INFO    ] No camera update needed
[2026-08-31 20:53:07,875.875 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:53:07,877.877 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:53:07,882.882 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:53:07,887.887 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:53:09,928.928 INFO    ] ================================================
[2026-08-31 20:53:09,943.943 INFO    ] Launching Daemon at Mon Aug 31 20:53:09 IST 2026
[2026-08-31 20:53:09,953.953 INFO    ] ================================================
[2026-08-31 20:53:10,529.529 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:53:10
[2026-08-31 20:53:11,118.118 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:53:11,374.374 INFO    ] Initializing speech engine...
[2026-08-31 20:53:11,377.377 INFO    ] 2026-08-31 20:53:11
[2026-08-31 20:53:11,641.641 INFO    ] 2026-08-31 20:53:11
[2026-08-31 20:53:11,676.676 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:53:11,927.927 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:53:11,936.936 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:53:12,070.070 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:53:12,109.109 INFO    ] time= 31/08/2026 20:53:12
[2026-08-31 20:53:12,158.158 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:53:12,206.206 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:53:12,342.342 INFO    ] No existing commands found in stream
[2026-08-31 20:53:17,364.364 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:53:17,366.366 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-08-31 20:53:19,501.501 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 20:53:19,503.503 INFO    ] Checking for system updates...
[2026-08-31 20:53:19,543.543 INFO    ] 200
[2026-08-31 20:53:19,545.545 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:53:19,604.604 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:53:19,607.607 INFO    ] No update needed
[2026-08-31 20:53:19,609.609 INFO    ] Checking for camera pi updates...
[2026-08-31 20:53:19,647.647 INFO    ] 200
[2026-08-31 20:53:19,650.650 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:53:19,691.691 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:53:19,792.792 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:53:19,795.795 INFO    ] No camera update needed
[2026-08-31 20:53:19,798.798 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:53:19,800.800 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:53:19,805.805 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:53:19,810.810 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:53:21,854.854 INFO    ] ================================================
[2026-08-31 20:53:21,870.870 INFO    ] Launching Daemon at Mon Aug 31 20:53:21 IST 2026
[2026-08-31 20:53:21,881.881 INFO    ] ================================================
[2026-08-31 20:53:22,448.448 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:53:22
[2026-08-31 20:53:23,032.032 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:53:23,305.305 INFO    ] Initializing speech engine...
[2026-08-31 20:53:23,311.311 INFO    ] 2026-08-31 20:53:23
[2026-08-31 20:53:23,572.572 INFO    ] 2026-08-31 20:53:23
[2026-08-31 20:53:23,629.629 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:53:23,859.859 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:53:23,864.864 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:53:23,999.999 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:53:24,046.046 INFO    ] time= 31/08/2026 20:53:24
[2026-08-31 20:53:24,110.110 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:53:24,137.137 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:53:24,272.272 INFO    ] No existing commands found in stream
[2026-08-31 20:53:29,296.296 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:53:29,299.299 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-08-31 20:53:31,032.032 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 20:53:31,034.034 INFO    ] Checking for system updates...
[2026-08-31 20:53:31,071.071 INFO    ] 200
[2026-08-31 20:53:31,073.073 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:53:31,125.125 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:53:31,127.127 INFO    ] No update needed
[2026-08-31 20:53:31,130.130 INFO    ] Checking for camera pi updates...
[2026-08-31 20:53:31,163.163 INFO    ] 200
[2026-08-31 20:53:31,165.165 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:53:31,206.206 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:53:31,304.304 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:53:31,306.306 INFO    ] No camera update needed
[2026-08-31 20:53:31,309.309 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:53:31,311.311 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:53:31,316.316 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:53:31,321.321 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:53:33,364.364 INFO    ] ================================================
[2026-08-31 20:53:33,380.380 INFO    ] Launching Daemon at Mon Aug 31 20:53:33 IST 2026
[2026-08-31 20:53:33,391.391 INFO    ] ================================================
[2026-08-31 20:53:33,972.972 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:53:33
[2026-08-31 20:53:34,570.570 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:53:34,822.822 INFO    ] Initializing speech engine...
[2026-08-31 20:53:34,845.845 INFO    ] 2026-08-31 20:53:34
[2026-08-31 20:53:35,111.111 INFO    ] 2026-08-31 20:53:35
[2026-08-31 20:53:35,147.147 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:53:35,379.379 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:53:35,414.414 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:53:35,535.535 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:53:35,542.542 INFO    ] time= 31/08/2026 20:53:35
[2026-08-31 20:53:35,589.589 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:53:35,618.618 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:53:35,734.734 INFO    ] No existing commands found in stream
[2026-08-31 20:53:40,760.760 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:53:40,762.762 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-08-31 20:53:43,772.772 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 20:53:43,774.774 INFO    ] Checking for system updates...
[2026-08-31 20:53:43,814.814 INFO    ] 200
[2026-08-31 20:53:43,816.816 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:53:43,871.871 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:53:43,873.873 INFO    ] No update needed
[2026-08-31 20:53:43,876.876 INFO    ] Checking for camera pi updates...
[2026-08-31 20:53:43,909.909 INFO    ] 200
[2026-08-31 20:53:43,912.912 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:53:43,951.951 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:53:44,031.031 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:53:44,033.033 INFO    ] No camera update needed
[2026-08-31 20:53:44,036.036 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:53:44,038.038 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:53:44,043.043 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:53:44,048.048 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:53:46,088.088 INFO    ] ================================================
[2026-08-31 20:53:46,104.104 INFO    ] Launching Daemon at Mon Aug 31 20:53:46 IST 2026
[2026-08-31 20:53:46,115.115 INFO    ] ================================================
[2026-08-31 20:53:46,755.755 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:53:46
[2026-08-31 20:53:47,433.433 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:53:47,747.747 INFO    ] Initializing speech engine...
[2026-08-31 20:53:47,759.759 INFO    ] 2026-08-31 20:53:47
[2026-08-31 20:53:48,064.064 INFO    ] 2026-08-31 20:53:48
[2026-08-31 20:53:48,146.146 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:53:48,332.332 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:53:48,352.352 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:53:48,583.583 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:53:48,603.603 INFO    ] time= 31/08/2026 20:53:48
[2026-08-31 20:53:48,614.614 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:53:48,645.645 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:53:48,800.800 INFO    ] No existing commands found in stream
[2026-08-31 20:53:53,836.836 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:53:53,840.840 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-08-31 20:53:55,239.239 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 20:53:55,242.242 INFO    ] Checking for system updates...
[2026-08-31 20:53:55,280.280 INFO    ] 200
[2026-08-31 20:53:55,283.283 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:53:55,344.344 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:53:55,346.346 INFO    ] No update needed
[2026-08-31 20:53:55,349.349 INFO    ] Checking for camera pi updates...
[2026-08-31 20:53:55,383.383 INFO    ] 200
[2026-08-31 20:53:55,385.385 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:53:55,425.425 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:53:55,513.513 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:53:55,516.516 INFO    ] No camera update needed
[2026-08-31 20:53:55,518.518 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:53:55,521.521 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:53:55,526.526 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:53:55,531.531 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:53:57,572.572 INFO    ] ================================================
[2026-08-31 20:53:57,588.588 INFO    ] Launching Daemon at Mon Aug 31 20:53:57 IST 2026
[2026-08-31 20:53:57,600.600 INFO    ] ================================================
[2026-08-31 20:53:58,215.215 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:53:58
[2026-08-31 20:53:58,806.806 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:53:59,076.076 INFO    ] Initializing speech engine...
[2026-08-31 20:53:59,088.088 INFO    ] 2026-08-31 20:53:59
[2026-08-31 20:53:59,355.355 INFO    ] 2026-08-31 20:53:59
[2026-08-31 20:53:59,394.394 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:53:59,577.577 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:53:59,590.590 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:53:59,740.740 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:53:59,749.749 INFO    ] time= 31/08/2026 20:53:59
[2026-08-31 20:53:59,756.756 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:53:59,803.803 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:53:59,953.953 INFO    ] No existing commands found in stream
[2026-08-31 20:54:04,969.969 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:54:04,972.972 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-08-31 20:54:06,659.659 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 20:54:06,662.662 INFO    ] Checking for system updates...
[2026-08-31 20:54:06,697.697 INFO    ] 200
[2026-08-31 20:54:06,700.700 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:54:06,761.761 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:54:06,763.763 INFO    ] No update needed
[2026-08-31 20:54:06,766.766 INFO    ] Checking for camera pi updates...
[2026-08-31 20:54:06,799.799 INFO    ] 200
[2026-08-31 20:54:06,802.802 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:54:06,849.849 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:54:06,935.935 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:54:06,937.937 INFO    ] No camera update needed
[2026-08-31 20:54:06,940.940 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:54:06,942.942 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:54:06,948.948 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:54:06,953.953 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:54:09,998.998 INFO    ] ================================================
[2026-08-31 20:54:09,013.013 INFO    ] Launching Daemon at Mon Aug 31 20:54:09 IST 2026
[2026-08-31 20:54:09,025.025 INFO    ] ================================================
[2026-08-31 20:54:09,690.690 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:54:09
[2026-08-31 20:54:10,375.375 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:54:10,672.672 INFO    ] Initializing speech engine...
[2026-08-31 20:54:10,677.677 INFO    ] 2026-08-31 20:54:10
[2026-08-31 20:54:10,935.935 INFO    ] 2026-08-31 20:54:10
[2026-08-31 20:54:10,993.993 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:54:11,225.225 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:54:11,229.229 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:54:11,366.366 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:54:11,406.406 INFO    ] time= 31/08/2026 20:54:11
[2026-08-31 20:54:11,460.460 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:54:11,501.501 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:54:11,610.610 INFO    ] No existing commands found in stream
[2026-08-31 20:54:16,632.632 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:54:16,635.635 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-08-31 20:54:18,995.995 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 20:54:18,997.997 INFO    ] Checking for system updates...
[2026-08-31 20:54:19,038.038 INFO    ] 200
[2026-08-31 20:54:19,040.040 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:54:19,100.100 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:54:19,103.103 INFO    ] No update needed
[2026-08-31 20:54:19,105.105 INFO    ] Checking for camera pi updates...
[2026-08-31 20:54:19,139.139 INFO    ] 200
[2026-08-31 20:54:19,141.141 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:54:19,187.187 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:54:19,256.256 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:54:19,258.258 INFO    ] No camera update needed
[2026-08-31 20:54:19,261.261 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:54:19,263.263 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:54:19,268.268 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:54:19,273.273 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:54:21,313.313 INFO    ] ================================================
[2026-08-31 20:54:21,329.329 INFO    ] Launching Daemon at Mon Aug 31 20:54:21 IST 2026
[2026-08-31 20:54:21,340.340 INFO    ] ================================================
[2026-08-31 20:54:22,003.003 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:54:21
[2026-08-31 20:54:22,683.683 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:54:22,989.989 INFO    ] Initializing speech engine...
[2026-08-31 20:54:23,003.003 INFO    ] 2026-08-31 20:54:22
[2026-08-31 20:54:23,322.322 INFO    ] 2026-08-31 20:54:23
[2026-08-31 20:54:23,368.368 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:54:23,628.628 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:54:23,633.633 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:54:23,790.790 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:54:23,850.850 INFO    ] time= 31/08/2026 20:54:23
[2026-08-31 20:54:23,912.912 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:54:23,928.928 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:54:24,048.048 INFO    ] No existing commands found in stream
[2026-08-31 20:54:29,071.071 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:54:29,074.074 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-08-31 20:54:31,263.263 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 20:54:31,265.265 INFO    ] Checking for system updates...
[2026-08-31 20:54:31,306.306 INFO    ] 200
[2026-08-31 20:54:31,308.308 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:54:31,360.360 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:54:31,363.363 INFO    ] No update needed
[2026-08-31 20:54:31,365.365 INFO    ] Checking for camera pi updates...
[2026-08-31 20:54:31,401.401 INFO    ] 200
[2026-08-31 20:54:31,403.403 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:54:31,466.466 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:54:31,544.544 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:54:31,547.547 INFO    ] No camera update needed
[2026-08-31 20:54:31,550.550 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:54:31,553.553 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:54:31,561.561 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:54:31,568.568 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:54:33,613.613 INFO    ] ================================================
[2026-08-31 20:54:33,630.630 INFO    ] Launching Daemon at Mon Aug 31 20:54:33 IST 2026
[2026-08-31 20:54:33,641.641 INFO    ] ================================================
[2026-08-31 20:54:34,216.216 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:54:34
[2026-08-31 20:54:34,815.815 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:54:35,090.090 INFO    ] Initializing speech engine...
[2026-08-31 20:54:35,100.100 INFO    ] 2026-08-31 20:54:35
[2026-08-31 20:54:35,378.378 INFO    ] 2026-08-31 20:54:35
[2026-08-31 20:54:35,418.418 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:54:40,654.654 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:54:40,657.657 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:54:40,784.784 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:54:40,787.787 INFO    ] time= 31/08/2026 20:54:40
[2026-08-31 20:54:40,790.790 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:54:40,792.792 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:54:40,842.842 INFO    ] No existing commands found in stream
[2026-08-31 20:54:45,851.851 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:54:45,854.854 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-08-31 20:54:47,575.575 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 20:54:47,579.579 INFO    ] Checking for system updates...
[2026-08-31 20:54:47,621.621 INFO    ] 200
[2026-08-31 20:54:47,624.624 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:54:47,683.683 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:54:47,686.686 INFO    ] No update needed
[2026-08-31 20:54:47,688.688 INFO    ] Checking for camera pi updates...
[2026-08-31 20:54:47,726.726 INFO    ] 200
[2026-08-31 20:54:47,728.728 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:54:47,774.774 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:54:47,863.863 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:54:47,866.866 INFO    ] No camera update needed
[2026-08-31 20:54:47,868.868 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:54:47,871.871 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:54:47,876.876 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:54:47,882.882 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:54:49,923.923 INFO    ] ================================================
[2026-08-31 20:54:49,939.939 INFO    ] Launching Daemon at Mon Aug 31 20:54:49 IST 2026
[2026-08-31 20:54:49,949.949 INFO    ] ================================================
[2026-08-31 20:54:50,530.530 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:54:50
[2026-08-31 20:54:51,128.128 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:54:51,390.390 INFO    ] Initializing speech engine...
[2026-08-31 20:54:51,418.418 INFO    ] 2026-08-31 20:54:51
[2026-08-31 20:54:51,696.696 INFO    ] 2026-08-31 20:54:51
[2026-08-31 20:54:51,733.733 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:54:51,929.929 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:54:51,941.941 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:54:52,141.141 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:54:52,171.171 INFO    ] time= 31/08/2026 20:54:52
[2026-08-31 20:54:52,236.236 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:54:52,282.282 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:54:52,429.429 INFO    ] No existing commands found in stream
[2026-08-31 20:54:57,443.443 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:54:57,446.446 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-08-31 20:54:58,313.313 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 20:54:58,315.315 INFO    ] Checking for system updates...
[2026-08-31 20:54:58,356.356 INFO    ] 200
[2026-08-31 20:54:58,359.359 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:54:58,413.413 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:54:58,415.415 INFO    ] No update needed
[2026-08-31 20:54:58,418.418 INFO    ] Checking for camera pi updates...
[2026-08-31 20:54:58,456.456 INFO    ] 200
[2026-08-31 20:54:58,459.459 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:54:58,505.505 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:54:58,571.571 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:54:58,573.573 INFO    ] No camera update needed
[2026-08-31 20:54:58,576.576 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:54:58,578.578 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:54:58,584.584 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:54:58,589.589 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:55:00,629.629 INFO    ] ================================================
[2026-08-31 20:55:00,645.645 INFO    ] Launching Daemon at Mon Aug 31 20:55:00 IST 2026
[2026-08-31 20:55:00,656.656 INFO    ] ================================================
[2026-08-31 20:55:01,236.236 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:55:01
[2026-08-31 20:55:02,170.170 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:55:02,503.503 INFO    ] Initializing speech engine...
[2026-08-31 20:55:02,518.518 INFO    ] 2026-08-31 20:55:02
[2026-08-31 20:55:02,838.838 INFO    ] 2026-08-31 20:55:02
[2026-08-31 20:55:02,924.924 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:55:03,124.124 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:55:03,137.137 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:55:03,381.381 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:55:03,414.414 INFO    ] time= 31/08/2026 20:55:03
[2026-08-31 20:55:03,420.420 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:55:03,437.437 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:55:03,557.557 INFO    ] No existing commands found in stream
[2026-08-31 20:55:08,579.579 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:55:08,582.582 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-08-31 20:55:10,814.814 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 20:55:10,817.817 INFO    ] Checking for system updates...
[2026-08-31 20:55:10,857.857 INFO    ] 200
[2026-08-31 20:55:10,859.859 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:55:10,919.919 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:55:10,921.921 INFO    ] No update needed
[2026-08-31 20:55:10,924.924 INFO    ] Checking for camera pi updates...
[2026-08-31 20:55:10,962.962 INFO    ] 200
[2026-08-31 20:55:10,965.965 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:55:11,011.011 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:55:11,198.198 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:55:11,201.201 INFO    ] No camera update needed
[2026-08-31 20:55:11,203.203 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:55:11,206.206 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:55:11,212.212 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:55:11,218.218 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:55:13,261.261 INFO    ] ================================================
[2026-08-31 20:55:13,298.298 INFO    ] Launching Daemon at Mon Aug 31 20:55:13 IST 2026
[2026-08-31 20:55:13,312.312 INFO    ] ================================================
[2026-08-31 20:55:13,967.967 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:55:13
[2026-08-31 20:55:14,643.643 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:55:14,947.947 INFO    ] Initializing speech engine...
[2026-08-31 20:55:14,955.955 INFO    ] 2026-08-31 20:55:14
[2026-08-31 20:55:15,232.232 INFO    ] 2026-08-31 20:55:15
[2026-08-31 20:55:15,285.285 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:55:15,536.536 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:55:15,556.556 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:55:15,742.742 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:55:15,777.777 INFO    ] time= 31/08/2026 20:55:15
[2026-08-31 20:55:15,795.795 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:55:15,804.804 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:55:15,931.931 INFO    ] No existing commands found in stream
[2026-08-31 20:55:20,946.946 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:55:20,949.949 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-08-31 20:55:24,056.056 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 20:55:24,059.059 INFO    ] Checking for system updates...
[2026-08-31 20:55:24,100.100 INFO    ] 200
[2026-08-31 20:55:24,103.103 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:55:24,163.163 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:55:24,165.165 INFO    ] No update needed
[2026-08-31 20:55:24,168.168 INFO    ] Checking for camera pi updates...
[2026-08-31 20:55:24,206.206 INFO    ] 200
[2026-08-31 20:55:24,209.209 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:55:24,256.256 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:55:24,308.308 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:55:24,311.311 INFO    ] No camera update needed
[2026-08-31 20:55:24,314.314 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:55:24,316.316 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:55:24,323.323 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:55:24,329.329 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:55:26,369.369 INFO    ] ================================================
[2026-08-31 20:55:26,385.385 INFO    ] Launching Daemon at Mon Aug 31 20:55:26 IST 2026
[2026-08-31 20:55:26,397.397 INFO    ] ================================================
[2026-08-31 20:55:26,966.966 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:55:26
[2026-08-31 20:55:27,565.565 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:55:27,841.841 INFO    ] Initializing speech engine...
[2026-08-31 20:55:27,847.847 INFO    ] 2026-08-31 20:55:27
[2026-08-31 20:55:28,108.108 INFO    ] 2026-08-31 20:55:28
[2026-08-31 20:55:28,164.164 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:55:28,391.391 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:55:28,395.395 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:55:28,528.528 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:55:28,593.593 INFO    ] time= 31/08/2026 20:55:28
[2026-08-31 20:55:28,642.642 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:55:28,663.663 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:55:28,788.788 INFO    ] No existing commands found in stream
[2026-08-31 20:55:33,817.817 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:55:33,820.820 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-08-31 20:55:37,945.945 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 20:55:37,948.948 INFO    ] Checking for system updates...
[2026-08-31 20:55:37,987.987 INFO    ] 200
[2026-08-31 20:55:37,990.990 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:55:38,043.043 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:55:38,045.045 INFO    ] No update needed
[2026-08-31 20:55:38,048.048 INFO    ] Checking for camera pi updates...
[2026-08-31 20:55:38,086.086 INFO    ] 200
[2026-08-31 20:55:38,088.088 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:55:38,134.134 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:55:38,215.215 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:55:38,218.218 INFO    ] No camera update needed
[2026-08-31 20:55:38,220.220 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:55:38,223.223 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:55:38,228.228 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:55:38,233.233 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:55:40,274.274 INFO    ] ================================================
[2026-08-31 20:55:40,291.291 INFO    ] Launching Daemon at Mon Aug 31 20:55:40 IST 2026
[2026-08-31 20:55:40,302.302 INFO    ] ================================================
[2026-08-31 20:55:40,932.932 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:55:40
[2026-08-31 20:55:41,600.600 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:55:41,904.904 INFO    ] Initializing speech engine...
[2026-08-31 20:55:41,913.913 INFO    ] 2026-08-31 20:55:41
[2026-08-31 20:55:42,193.193 INFO    ] 2026-08-31 20:55:42
[2026-08-31 20:55:42,249.249 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:55:42,503.503 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:55:42,522.522 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:55:42,742.742 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:55:42,750.750 INFO    ] time= 31/08/2026 20:55:42
[2026-08-31 20:55:42,773.773 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:55:42,803.803 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:55:42,943.943 INFO    ] No existing commands found in stream
[2026-08-31 20:55:47,979.979 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:55:47,982.982 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-08-31 20:55:49,695.695 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 20:55:49,698.698 INFO    ] Checking for system updates...
[2026-08-31 20:55:49,735.735 INFO    ] 200
[2026-08-31 20:55:49,738.738 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:55:49,799.799 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:55:49,802.802 INFO    ] No update needed
[2026-08-31 20:55:49,804.804 INFO    ] Checking for camera pi updates...
[2026-08-31 20:55:49,843.843 INFO    ] 200
[2026-08-31 20:55:49,846.846 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:55:49,887.887 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:55:49,978.978 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:55:49,981.981 INFO    ] No camera update needed
[2026-08-31 20:55:49,983.983 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:55:49,986.986 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:55:49,992.992 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:55:49,998.998 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:55:52,041.041 INFO    ] ================================================
[2026-08-31 20:55:52,057.057 INFO    ] Launching Daemon at Mon Aug 31 20:55:52 IST 2026
[2026-08-31 20:55:52,067.067 INFO    ] ================================================
[2026-08-31 20:55:52,728.728 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:55:52
[2026-08-31 20:55:53,405.405 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:55:53,710.710 INFO    ] Initializing speech engine...
[2026-08-31 20:55:53,724.724 INFO    ] 2026-08-31 20:55:53
[2026-08-31 20:55:53,996.996 INFO    ] 2026-08-31 20:55:53
[2026-08-31 20:55:54,061.061 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:55:54,277.277 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:55:54,288.288 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:55:54,506.506 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:55:54,542.542 INFO    ] time= 31/08/2026 20:55:54
[2026-08-31 20:55:54,560.560 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:55:54,580.580 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:55:54,694.694 INFO    ] No existing commands found in stream
[2026-08-31 20:55:59,710.710 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:55:59,714.714 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-08-31 20:56:01,559.559 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 20:56:01,562.562 INFO    ] Checking for system updates...
[2026-08-31 20:56:01,604.604 INFO    ] 200
[2026-08-31 20:56:01,607.607 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:56:01,704.704 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:56:01,716.716 INFO    ] No update needed
[2026-08-31 20:56:01,722.722 INFO    ] Checking for camera pi updates...
[2026-08-31 20:56:01,814.814 INFO    ] 200
[2026-08-31 20:56:01,818.818 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:56:01,883.883 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:56:01,979.979 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:56:01,982.982 INFO    ] No camera update needed
[2026-08-31 20:56:01,985.985 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:56:01,991.991 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:56:01,998.998 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:56:02,004.004 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:56:04,050.050 INFO    ] ================================================
[2026-08-31 20:56:04,066.066 INFO    ] Launching Daemon at Mon Aug 31 20:56:04 IST 2026
[2026-08-31 20:56:04,078.078 INFO    ] ================================================
[2026-08-31 20:56:04,646.646 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:56:04
[2026-08-31 20:56:05,230.230 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:56:05,500.500 INFO    ] Initializing speech engine...
[2026-08-31 20:56:05,509.509 INFO    ] 2026-08-31 20:56:05
[2026-08-31 20:56:05,760.760 INFO    ] 2026-08-31 20:56:05
[2026-08-31 20:56:05,795.795 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:56:06,052.052 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:56:06,061.061 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:56:06,199.199 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:56:06,259.259 INFO    ] time= 31/08/2026 20:56:06
[2026-08-31 20:56:06,303.303 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:56:06,334.334 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:56:06,463.463 INFO    ] No existing commands found in stream
[2026-08-31 20:56:11,494.494 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:56:11,497.497 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-08-31 20:56:13,294.294 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 20:56:13,297.297 INFO    ] Checking for system updates...
[2026-08-31 20:56:13,332.332 INFO    ] 200
[2026-08-31 20:56:13,335.335 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:56:13,394.394 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:56:13,396.396 INFO    ] No update needed
[2026-08-31 20:56:13,399.399 INFO    ] Checking for camera pi updates...
[2026-08-31 20:56:13,437.437 INFO    ] 200
[2026-08-31 20:56:13,439.439 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:56:13,480.480 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:56:13,565.565 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:56:13,568.568 INFO    ] No camera update needed
[2026-08-31 20:56:13,573.573 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:56:13,575.575 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:56:13,582.582 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:56:13,587.587 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:56:15,629.629 INFO    ] ================================================
[2026-08-31 20:56:15,645.645 INFO    ] Launching Daemon at Mon Aug 31 20:56:15 IST 2026
[2026-08-31 20:56:15,656.656 INFO    ] ================================================
[2026-08-31 20:56:16,226.226 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:56:16
[2026-08-31 20:56:16,807.807 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:56:17,076.076 INFO    ] Initializing speech engine...
[2026-08-31 20:56:17,085.085 INFO    ] 2026-08-31 20:56:17
[2026-08-31 20:56:17,334.334 INFO    ] 2026-08-31 20:56:17
[2026-08-31 20:56:17,367.367 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:56:17,571.571 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:56:17,628.628 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:56:17,772.772 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:56:17,809.809 INFO    ] time= 31/08/2026 20:56:17
[2026-08-31 20:56:17,868.868 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:56:17,910.910 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:56:17,969.969 INFO    ] No existing commands found in stream
[2026-08-31 20:56:22,981.981 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:56:22,983.983 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-08-31 20:56:24,018.018 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 20:56:24,021.021 INFO    ] Checking for system updates...
[2026-08-31 20:56:24,058.058 INFO    ] 200
[2026-08-31 20:56:24,061.061 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:56:24,114.114 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:56:24,116.116 INFO    ] No update needed
[2026-08-31 20:56:24,118.118 INFO    ] Checking for camera pi updates...
[2026-08-31 20:56:24,152.152 INFO    ] 200
[2026-08-31 20:56:24,154.154 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:56:24,194.194 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:56:24,303.303 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:56:24,306.306 INFO    ] No camera update needed
[2026-08-31 20:56:24,308.308 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:56:24,311.311 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:56:24,316.316 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:56:24,321.321 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:56:26,362.362 INFO    ] ================================================
[2026-08-31 20:56:26,378.378 INFO    ] Launching Daemon at Mon Aug 31 20:56:26 IST 2026
[2026-08-31 20:56:26,390.390 INFO    ] ================================================
[2026-08-31 20:56:26,971.971 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:56:26
[2026-08-31 20:56:27,571.571 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:56:27,843.843 INFO    ] Initializing speech engine...
[2026-08-31 20:56:27,853.853 INFO    ] 2026-08-31 20:56:27
[2026-08-31 20:56:28,115.115 INFO    ] 2026-08-31 20:56:28
[2026-08-31 20:56:28,169.169 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:56:28,416.416 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:56:28,423.423 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:56:28,633.633 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:56:28,659.659 INFO    ] time= 31/08/2026 20:56:28
[2026-08-31 20:56:28,674.674 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:56:28,684.684 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:56:28,808.808 INFO    ] No existing commands found in stream
[2026-08-31 20:56:33,823.823 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:56:33,826.826 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-08-31 20:56:35,227.227 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 20:56:35,230.230 INFO    ] Checking for system updates...
[2026-08-31 20:56:35,270.270 INFO    ] 200
[2026-08-31 20:56:35,273.273 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:56:35,327.327 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:56:35,329.329 INFO    ] No update needed
[2026-08-31 20:56:35,332.332 INFO    ] Checking for camera pi updates...
[2026-08-31 20:56:35,367.367 INFO    ] 200
[2026-08-31 20:56:35,370.370 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:56:35,411.411 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:56:35,484.484 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:56:35,486.486 INFO    ] No camera update needed
[2026-08-31 20:56:35,489.489 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:56:35,492.492 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:56:35,497.497 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:56:35,502.502 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:56:37,546.546 INFO    ] ================================================
[2026-08-31 20:56:37,561.561 INFO    ] Launching Daemon at Mon Aug 31 20:56:37 IST 2026
[2026-08-31 20:56:37,571.571 INFO    ] ================================================
[2026-08-31 20:56:38,153.153 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:56:38
[2026-08-31 20:56:38,753.753 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:56:39,026.026 INFO    ] Initializing speech engine...
[2026-08-31 20:56:39,035.035 INFO    ] 2026-08-31 20:56:39
[2026-08-31 20:56:39,298.298 INFO    ] 2026-08-31 20:56:39
[2026-08-31 20:56:39,351.351 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:56:39,633.633 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:56:39,641.641 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:56:39,814.814 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:56:39,842.842 INFO    ] time= 31/08/2026 20:56:39
[2026-08-31 20:56:39,858.858 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:56:39,866.866 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:56:39,984.984 INFO    ] No existing commands found in stream
[2026-08-31 20:56:45,004.004 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:56:45,007.007 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-08-31 20:56:49,235.235 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 20:56:49,238.238 INFO    ] Checking for system updates...
[2026-08-31 20:56:49,278.278 INFO    ] 200
[2026-08-31 20:56:49,280.280 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:56:49,332.332 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:56:49,335.335 INFO    ] No update needed
[2026-08-31 20:56:49,337.337 INFO    ] Checking for camera pi updates...
[2026-08-31 20:56:49,375.375 INFO    ] 200
[2026-08-31 20:56:49,378.378 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:56:49,423.423 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:56:49,521.521 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:56:49,523.523 INFO    ] No camera update needed
[2026-08-31 20:56:49,525.525 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:56:49,528.528 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:56:49,533.533 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:56:49,538.538 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:56:51,580.580 INFO    ] ================================================
[2026-08-31 20:56:51,594.594 INFO    ] Launching Daemon at Mon Aug 31 20:56:51 IST 2026
[2026-08-31 20:56:51,605.605 INFO    ] ================================================
[2026-08-31 20:56:52,170.170 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:56:52
[2026-08-31 20:56:52,752.752 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:56:52,998.998 INFO    ] Initializing speech engine...
[2026-08-31 20:56:53,006.006 INFO    ] 2026-08-31 20:56:53
[2026-08-31 20:56:53,281.281 INFO    ] 2026-08-31 20:56:53
[2026-08-31 20:56:53,315.315 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:56:53,514.514 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:56:53,554.554 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:56:53,718.718 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:56:53,760.760 INFO    ] time= 31/08/2026 20:56:53
[2026-08-31 20:56:53,820.820 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:56:53,855.855 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:56:53,982.982 INFO    ] No existing commands found in stream
[2026-08-31 20:56:59,015.015 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:56:59,017.017 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-08-31 20:57:03,269.269 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 20:57:03,271.271 INFO    ] Checking for system updates...
[2026-08-31 20:57:03,312.312 INFO    ] 200
[2026-08-31 20:57:03,315.315 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:57:03,376.376 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:57:03,378.378 INFO    ] No update needed
[2026-08-31 20:57:03,381.381 INFO    ] Checking for camera pi updates...
[2026-08-31 20:57:03,414.414 INFO    ] 200
[2026-08-31 20:57:03,417.417 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:57:03,458.458 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:57:03,537.537 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:57:03,540.540 INFO    ] No camera update needed
[2026-08-31 20:57:03,542.542 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:57:03,545.545 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:57:03,551.551 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:57:03,556.556 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:57:05,596.596 INFO    ] ================================================
[2026-08-31 20:57:05,611.611 INFO    ] Launching Daemon at Mon Aug 31 20:57:05 IST 2026
[2026-08-31 20:57:05,622.622 INFO    ] ================================================
[2026-08-31 20:57:06,203.203 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:57:06
[2026-08-31 20:57:06,867.867 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:57:07,142.142 INFO    ] Initializing speech engine...
[2026-08-31 20:57:07,166.166 INFO    ] 2026-08-31 20:57:07
[2026-08-31 20:57:07,447.447 INFO    ] 2026-08-31 20:57:07
[2026-08-31 20:57:07,508.508 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:57:07,799.799 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:57:07,806.806 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:57:08,006.006 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:57:08,026.026 INFO    ] time= 31/08/2026 20:57:08
[2026-08-31 20:57:08,058.058 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:57:08,066.066 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:57:08,168.168 INFO    ] No existing commands found in stream
[2026-08-31 20:57:13,184.184 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:57:13,187.187 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-08-31 20:57:16,977.977 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 20:57:16,980.980 INFO    ] Checking for system updates...
[2026-08-31 20:57:17,022.022 INFO    ] 200
[2026-08-31 20:57:17,025.025 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:57:17,084.084 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:57:17,087.087 INFO    ] No update needed
[2026-08-31 20:57:17,090.090 INFO    ] Checking for camera pi updates...
[2026-08-31 20:57:17,128.128 INFO    ] 200
[2026-08-31 20:57:17,131.131 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:57:17,176.176 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:57:17,365.365 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:57:17,368.368 INFO    ] No camera update needed
[2026-08-31 20:57:17,371.371 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:57:17,373.373 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:57:17,379.379 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:57:17,386.386 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:57:19,427.427 INFO    ] ================================================
[2026-08-31 20:57:19,442.442 INFO    ] Launching Daemon at Mon Aug 31 20:57:19 IST 2026
[2026-08-31 20:57:19,452.452 INFO    ] ================================================
[2026-08-31 20:57:20,094.094 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:57:20
[2026-08-31 20:57:20,754.754 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:57:21,051.051 INFO    ] Initializing speech engine...
[2026-08-31 20:57:21,059.059 INFO    ] 2026-08-31 20:57:21
[2026-08-31 20:57:21,344.344 INFO    ] 2026-08-31 20:57:21
[2026-08-31 20:57:21,388.388 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:57:21,617.617 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:57:21,626.626 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:57:21,758.758 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:57:21,806.806 INFO    ] time= 31/08/2026 20:57:21
[2026-08-31 20:57:21,845.845 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:57:21,892.892 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:57:22,025.025 INFO    ] No existing commands found in stream
[2026-08-31 20:57:27,050.050 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:57:27,053.053 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-08-31 20:57:29,511.511 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 20:57:29,514.514 INFO    ] Checking for system updates...
[2026-08-31 20:57:29,555.555 INFO    ] 200
[2026-08-31 20:57:29,557.557 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:57:29,618.618 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:57:29,620.620 INFO    ] No update needed
[2026-08-31 20:57:29,623.623 INFO    ] Checking for camera pi updates...
[2026-08-31 20:57:29,658.658 INFO    ] 200
[2026-08-31 20:57:29,660.660 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:57:29,701.701 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:57:29,790.790 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:57:29,793.793 INFO    ] No camera update needed
[2026-08-31 20:57:29,796.796 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:57:29,799.799 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:57:29,805.805 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:57:29,811.811 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:57:31,852.852 INFO    ] ================================================
[2026-08-31 20:57:31,868.868 INFO    ] Launching Daemon at Mon Aug 31 20:57:31 IST 2026
[2026-08-31 20:57:31,879.879 INFO    ] ================================================
[2026-08-31 20:57:32,564.564 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:57:32
[2026-08-31 20:57:33,260.260 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:57:33,559.559 INFO    ] Initializing speech engine...
[2026-08-31 20:57:33,571.571 INFO    ] 2026-08-31 20:57:33
[2026-08-31 20:57:33,884.884 INFO    ] 2026-08-31 20:57:33
[2026-08-31 20:57:33,969.969 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:57:34,181.181 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:57:34,185.185 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:57:34,377.377 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:57:34,384.384 INFO    ] time= 31/08/2026 20:57:34
[2026-08-31 20:57:34,403.403 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:57:34,431.431 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:57:34,538.538 INFO    ] No existing commands found in stream
[2026-08-31 20:57:39,557.557 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:57:39,560.560 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-08-31 20:57:42,364.364 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 20:57:42,367.367 INFO    ] Checking for system updates...
[2026-08-31 20:57:42,404.404 INFO    ] 200
[2026-08-31 20:57:42,407.407 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:57:42,462.462 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:57:42,464.464 INFO    ] No update needed
[2026-08-31 20:57:42,466.466 INFO    ] Checking for camera pi updates...
[2026-08-31 20:57:42,502.502 INFO    ] 200
[2026-08-31 20:57:42,505.505 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:57:42,549.549 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:57:42,629.629 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:57:42,631.631 INFO    ] No camera update needed
[2026-08-31 20:57:42,634.634 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:57:42,636.636 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:57:42,642.642 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:57:42,647.647 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:57:44,686.686 INFO    ] ================================================
[2026-08-31 20:57:44,701.701 INFO    ] Launching Daemon at Mon Aug 31 20:57:44 IST 2026
[2026-08-31 20:57:44,711.711 INFO    ] ================================================
[2026-08-31 20:57:45,291.291 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:57:45
[2026-08-31 20:57:45,949.949 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:57:46,248.248 INFO    ] Initializing speech engine...
[2026-08-31 20:57:46,261.261 INFO    ] 2026-08-31 20:57:46
[2026-08-31 20:57:46,573.573 INFO    ] 2026-08-31 20:57:46
[2026-08-31 20:57:46,653.653 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:57:46,863.863 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:57:46,871.871 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:57:47,062.062 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:57:47,073.073 INFO    ] time= 31/08/2026 20:57:47
[2026-08-31 20:57:47,094.094 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:57:47,120.120 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:57:47,257.257 INFO    ] No existing commands found in stream
[2026-08-31 20:57:52,282.282 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:57:52,285.285 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-08-31 20:57:56,675.675 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 20:57:56,678.678 INFO    ] Checking for system updates...
[2026-08-31 20:57:56,713.713 INFO    ] 200
[2026-08-31 20:57:56,715.715 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:57:56,771.771 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:57:56,774.774 INFO    ] No update needed
[2026-08-31 20:57:56,776.776 INFO    ] Checking for camera pi updates...
[2026-08-31 20:57:56,814.814 INFO    ] 200
[2026-08-31 20:57:56,816.816 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:57:56,863.863 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:57:56,945.945 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:57:56,948.948 INFO    ] No camera update needed
[2026-08-31 20:57:56,950.950 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:57:56,952.952 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:57:56,958.958 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:57:56,963.963 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:57:59,002.002 INFO    ] ================================================
[2026-08-31 20:57:59,017.017 INFO    ] Launching Daemon at Mon Aug 31 20:57:59 IST 2026
[2026-08-31 20:57:59,027.027 INFO    ] ================================================
[2026-08-31 20:57:59,609.609 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:57:59
[2026-08-31 20:58:00,208.208 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:58:00,485.485 INFO    ] Initializing speech engine...
[2026-08-31 20:58:00,494.494 INFO    ] 2026-08-31 20:58:00
[2026-08-31 20:58:00,753.753 INFO    ] 2026-08-31 20:58:00
[2026-08-31 20:58:00,806.806 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:58:01,057.057 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:58:01,062.062 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:58:01,273.273 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:58:01,297.297 INFO    ] time= 31/08/2026 20:58:01
[2026-08-31 20:58:01,315.315 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:58:01,324.324 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:58:01,437.437 INFO    ] No existing commands found in stream
[2026-08-31 20:58:06,460.460 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:58:06,462.462 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-08-31 20:58:08,266.266 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 20:58:08,268.268 INFO    ] Checking for system updates...
[2026-08-31 20:58:08,305.305 INFO    ] 200
[2026-08-31 20:58:08,307.307 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:58:08,360.360 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:58:08,363.363 INFO    ] No update needed
[2026-08-31 20:58:08,365.365 INFO    ] Checking for camera pi updates...
[2026-08-31 20:58:08,398.398 INFO    ] 200
[2026-08-31 20:58:08,401.401 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:58:08,446.446 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:58:08,545.545 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:58:08,547.547 INFO    ] No camera update needed
[2026-08-31 20:58:08,550.550 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:58:08,552.552 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:58:08,558.558 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:58:08,563.563 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:58:10,604.604 INFO    ] ================================================
[2026-08-31 20:58:10,619.619 INFO    ] Launching Daemon at Mon Aug 31 20:58:10 IST 2026
[2026-08-31 20:58:10,629.629 INFO    ] ================================================
[2026-08-31 20:58:11,203.203 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:58:11
[2026-08-31 20:58:11,786.786 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:58:12,043.043 INFO    ] Initializing speech engine...
[2026-08-31 20:58:12,062.062 INFO    ] 2026-08-31 20:58:12
[2026-08-31 20:58:12,308.308 INFO    ] 2026-08-31 20:58:12
[2026-08-31 20:58:12,343.343 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:58:12,540.540 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:58:12,597.597 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:58:12,737.737 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:58:12,802.802 INFO    ] time= 31/08/2026 20:58:12
[2026-08-31 20:58:12,861.861 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:58:12,871.871 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:58:12,990.990 INFO    ] No existing commands found in stream
[2026-08-31 20:58:18,010.010 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:58:18,013.013 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-08-31 20:58:18,625.625 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 20:58:18,628.628 INFO    ] Checking for system updates...
[2026-08-31 20:58:18,667.667 INFO    ] 200
[2026-08-31 20:58:18,669.669 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:58:18,722.722 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:58:18,724.724 INFO    ] No update needed
[2026-08-31 20:58:18,726.726 INFO    ] Checking for camera pi updates...
[2026-08-31 20:58:18,763.763 INFO    ] 200
[2026-08-31 20:58:18,765.765 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:58:18,807.807 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:58:18,904.904 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:58:18,906.906 INFO    ] No camera update needed
[2026-08-31 20:58:18,909.909 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:58:18,911.911 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:58:18,916.916 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:58:18,921.921 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:58:20,961.961 INFO    ] ================================================
[2026-08-31 20:58:20,976.976 INFO    ] Launching Daemon at Mon Aug 31 20:58:20 IST 2026
[2026-08-31 20:58:20,986.986 INFO    ] ================================================
[2026-08-31 20:58:21,551.551 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:58:21
[2026-08-31 20:58:22,134.134 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:58:22,387.387 INFO    ] Initializing speech engine...
[2026-08-31 20:58:22,395.395 INFO    ] 2026-08-31 20:58:22
[2026-08-31 20:58:22,684.684 INFO    ] 2026-08-31 20:58:22
[2026-08-31 20:58:22,722.722 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:58:22,941.941 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:58:22,949.949 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:58:23,096.096 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:58:23,103.103 INFO    ] time= 31/08/2026 20:58:23
[2026-08-31 20:58:23,109.109 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:58:23,176.176 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:58:23,310.310 INFO    ] No existing commands found in stream
[2026-08-31 20:58:28,330.330 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:58:28,332.332 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-08-31 20:58:29,711.711 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 20:58:29,714.714 INFO    ] Checking for system updates...
[2026-08-31 20:58:29,751.751 INFO    ] 200
[2026-08-31 20:58:29,753.753 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:58:29,805.805 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:58:29,808.808 INFO    ] No update needed
[2026-08-31 20:58:29,810.810 INFO    ] Checking for camera pi updates...
[2026-08-31 20:58:29,847.847 INFO    ] 200
[2026-08-31 20:58:29,849.849 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:58:29,889.889 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:58:29,972.972 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:58:29,974.974 INFO    ] No camera update needed
[2026-08-31 20:58:29,977.977 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:58:29,980.980 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:58:29,986.986 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:58:29,991.991 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:58:32,032.032 INFO    ] ================================================
[2026-08-31 20:58:32,049.049 INFO    ] Launching Daemon at Mon Aug 31 20:58:32 IST 2026
[2026-08-31 20:58:32,060.060 INFO    ] ================================================
[2026-08-31 20:58:32,658.658 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:58:32
[2026-08-31 20:58:33,262.262 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:58:33,527.527 INFO    ] Initializing speech engine...
[2026-08-31 20:58:33,545.545 INFO    ] 2026-08-31 20:58:33
[2026-08-31 20:58:33,814.814 INFO    ] 2026-08-31 20:58:33
[2026-08-31 20:58:33,852.852 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:58:34,135.135 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:58:34,145.145 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:58:34,296.296 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:58:34,361.361 INFO    ] time= 31/08/2026 20:58:34
[2026-08-31 20:58:34,418.418 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:58:34,424.424 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:58:34,566.566 INFO    ] No existing commands found in stream
[2026-08-31 20:58:39,581.581 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:58:39,583.583 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-08-31 20:58:43,623.623 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 20:58:43,626.626 INFO    ] Checking for system updates...
[2026-08-31 20:58:43,661.661 INFO    ] 200
[2026-08-31 20:58:43,664.664 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:58:43,720.720 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:58:43,722.722 INFO    ] No update needed
[2026-08-31 20:58:43,725.725 INFO    ] Checking for camera pi updates...
[2026-08-31 20:58:43,758.758 INFO    ] 200
[2026-08-31 20:58:43,761.761 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:58:43,804.804 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:58:43,893.893 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:58:43,895.895 INFO    ] No camera update needed
[2026-08-31 20:58:43,898.898 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:58:43,900.900 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:58:43,905.905 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:58:43,911.911 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:58:45,951.951 INFO    ] ================================================
[2026-08-31 20:58:45,966.966 INFO    ] Launching Daemon at Mon Aug 31 20:58:45 IST 2026
[2026-08-31 20:58:45,976.976 INFO    ] ================================================
[2026-08-31 20:58:46,545.545 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:58:46
[2026-08-31 20:58:47,143.143 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:58:47,410.410 INFO    ] Initializing speech engine...
[2026-08-31 20:58:47,419.419 INFO    ] 2026-08-31 20:58:47
[2026-08-31 20:58:47,665.665 INFO    ] 2026-08-31 20:58:47
[2026-08-31 20:58:47,700.700 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:58:47,956.956 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:58:47,960.960 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:58:48,167.167 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:58:48,218.218 INFO    ] time= 31/08/2026 20:58:48
[2026-08-31 20:58:48,224.224 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:58:48,242.242 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:58:48,372.372 INFO    ] No existing commands found in stream
[2026-08-31 20:58:53,387.387 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:58:53,390.390 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-08-31 20:58:57,111.111 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 20:58:57,113.113 INFO    ] Checking for system updates...
[2026-08-31 20:58:57,152.152 INFO    ] 200
[2026-08-31 20:58:57,154.154 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:58:57,212.212 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:58:57,215.215 INFO    ] No update needed
[2026-08-31 20:58:57,217.217 INFO    ] Checking for camera pi updates...
[2026-08-31 20:58:57,250.250 INFO    ] 200
[2026-08-31 20:58:57,252.252 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:58:57,297.297 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:58:57,396.396 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:58:57,399.399 INFO    ] No camera update needed
[2026-08-31 20:58:57,401.401 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:58:57,404.404 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:58:57,409.409 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:58:57,414.414 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:58:59,455.455 INFO    ] ================================================
[2026-08-31 20:58:59,470.470 INFO    ] Launching Daemon at Mon Aug 31 20:58:59 IST 2026
[2026-08-31 20:58:59,481.481 INFO    ] ================================================
[2026-08-31 20:59:00,119.119 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:59:00
[2026-08-31 20:59:00,777.777 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:59:01,074.074 INFO    ] Initializing speech engine...
[2026-08-31 20:59:01,083.083 INFO    ] 2026-08-31 20:59:01
[2026-08-31 20:59:01,402.402 INFO    ] 2026-08-31 20:59:01
[2026-08-31 20:59:01,463.463 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:59:01,665.665 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:59:01,669.669 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:59:01,893.893 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:59:01,898.898 INFO    ] time= 31/08/2026 20:59:01
[2026-08-31 20:59:01,902.902 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:59:01,906.906 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:59:01,983.983 INFO    ] No existing commands found in stream
[2026-08-31 20:59:06,993.993 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:59:06,996.996 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-08-31 20:59:11,257.257 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 20:59:11,260.260 INFO    ] Checking for system updates...
[2026-08-31 20:59:11,296.296 INFO    ] 200
[2026-08-31 20:59:11,299.299 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:59:11,362.362 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:59:11,364.364 INFO    ] No update needed
[2026-08-31 20:59:11,367.367 INFO    ] Checking for camera pi updates...
[2026-08-31 20:59:11,400.400 INFO    ] 200
[2026-08-31 20:59:11,403.403 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:59:11,448.448 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:59:11,529.529 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:59:11,531.531 INFO    ] No camera update needed
[2026-08-31 20:59:11,534.534 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:59:11,536.536 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:59:11,542.542 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:59:11,547.547 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:59:13,587.587 INFO    ] ================================================
[2026-08-31 20:59:13,602.602 INFO    ] Launching Daemon at Mon Aug 31 20:59:13 IST 2026
[2026-08-31 20:59:13,613.613 INFO    ] ================================================
[2026-08-31 20:59:14,178.178 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:59:14
[2026-08-31 20:59:14,763.763 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:59:15,034.034 INFO    ] Initializing speech engine...
[2026-08-31 20:59:15,043.043 INFO    ] 2026-08-31 20:59:15
[2026-08-31 20:59:15,293.293 INFO    ] 2026-08-31 20:59:15
[2026-08-31 20:59:15,328.328 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:59:15,505.505 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:59:15,518.518 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:59:15,731.731 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:59:15,773.773 INFO    ] time= 31/08/2026 20:59:15
[2026-08-31 20:59:15,847.847 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:59:15,870.870 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:59:15,966.966 INFO    ] No existing commands found in stream
[2026-08-31 20:59:20,996.996 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:59:20,999.999 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-08-31 20:59:23,302.302 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 20:59:23,305.305 INFO    ] Checking for system updates...
[2026-08-31 20:59:23,342.342 INFO    ] 200
[2026-08-31 20:59:23,345.345 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:59:23,399.399 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:59:23,401.401 INFO    ] No update needed
[2026-08-31 20:59:23,404.404 INFO    ] Checking for camera pi updates...
[2026-08-31 20:59:23,438.438 INFO    ] 200
[2026-08-31 20:59:23,440.440 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:59:23,488.488 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:59:23,666.666 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:59:23,669.669 INFO    ] No camera update needed
[2026-08-31 20:59:23,671.671 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:59:23,674.674 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:59:23,679.679 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:59:23,684.684 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:59:25,723.723 INFO    ] ================================================
[2026-08-31 20:59:25,738.738 INFO    ] Launching Daemon at Mon Aug 31 20:59:25 IST 2026
[2026-08-31 20:59:25,748.748 INFO    ] ================================================
[2026-08-31 20:59:26,320.320 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:59:26
[2026-08-31 20:59:26,908.908 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:59:27,157.157 INFO    ] Initializing speech engine...
[2026-08-31 20:59:27,164.164 INFO    ] 2026-08-31 20:59:27
[2026-08-31 20:59:27,462.462 INFO    ] 2026-08-31 20:59:27
[2026-08-31 20:59:27,488.488 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:59:27,697.697 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:59:27,710.710 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:59:27,872.872 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:59:27,880.880 INFO    ] time= 31/08/2026 20:59:27
[2026-08-31 20:59:27,888.888 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:59:27,931.931 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:59:28,053.053 INFO    ] No existing commands found in stream
[2026-08-31 20:59:33,083.083 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:59:33,085.085 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-08-31 20:59:37,486.486 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 20:59:37,489.489 INFO    ] Checking for system updates...
[2026-08-31 20:59:37,528.528 INFO    ] 200
[2026-08-31 20:59:37,531.531 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:59:37,582.582 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:59:37,585.585 INFO    ] No update needed
[2026-08-31 20:59:37,587.587 INFO    ] Checking for camera pi updates...
[2026-08-31 20:59:37,624.624 INFO    ] 200
[2026-08-31 20:59:37,627.627 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:59:37,668.668 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:59:37,758.758 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:59:37,760.760 INFO    ] No camera update needed
[2026-08-31 20:59:37,762.762 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:59:37,765.765 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:59:37,770.770 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:59:37,775.775 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:59:39,815.815 INFO    ] ================================================
[2026-08-31 20:59:39,830.830 INFO    ] Launching Daemon at Mon Aug 31 20:59:39 IST 2026
[2026-08-31 20:59:39,840.840 INFO    ] ================================================
[2026-08-31 20:59:40,428.428 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:59:40
[2026-08-31 20:59:41,028.028 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:59:41,306.306 INFO    ] Initializing speech engine...
[2026-08-31 20:59:41,314.314 INFO    ] 2026-08-31 20:59:41
[2026-08-31 20:59:41,575.575 INFO    ] 2026-08-31 20:59:41
[2026-08-31 20:59:41,629.629 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:59:41,852.852 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:59:41,861.861 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:59:42,068.068 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:59:42,120.120 INFO    ] time= 31/08/2026 20:59:42
[2026-08-31 20:59:42,127.127 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:59:42,145.145 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:59:42,293.293 INFO    ] No existing commands found in stream
[2026-08-31 20:59:47,325.325 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:59:47,328.328 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-08-31 20:59:48,824.824 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 20:59:48,827.827 INFO    ] Checking for system updates...
[2026-08-31 20:59:48,868.868 INFO    ] 200
[2026-08-31 20:59:48,871.871 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:59:48,930.930 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 20:59:48,933.933 INFO    ] No update needed
[2026-08-31 20:59:48,936.936 INFO    ] Checking for camera pi updates...
[2026-08-31 20:59:48,975.975 INFO    ] 200
[2026-08-31 20:59:48,977.977 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 20:59:49,023.023 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 20:59:49,120.120 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 20:59:49,123.123 INFO    ] No camera update needed
[2026-08-31 20:59:49,125.125 INFO    ] Script finished. Safe exiting...
[2026-08-31 20:59:49,128.128 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 20:59:49,134.134 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 20:59:49,140.140 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 20:59:51,184.184 INFO    ] ================================================
[2026-08-31 20:59:51,199.199 INFO    ] Launching Daemon at Mon Aug 31 20:59:51 IST 2026
[2026-08-31 20:59:51,209.209 INFO    ] ================================================
[2026-08-31 20:59:51,781.781 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 20:59:51
[2026-08-31 20:59:52,381.381 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 20:59:52,659.659 INFO    ] Initializing speech engine...
[2026-08-31 20:59:52,668.668 INFO    ] 2026-08-31 20:59:52
[2026-08-31 20:59:52,929.929 INFO    ] 2026-08-31 20:59:52
[2026-08-31 20:59:52,982.982 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 20:59:53,209.209 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 20:59:53,214.214 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 20:59:53,422.422 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 20:59:53,468.468 INFO    ] time= 31/08/2026 20:59:53
[2026-08-31 20:59:53,474.474 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 20:59:53,492.492 INFO    ] Checking for existing commands in stream...
[2026-08-31 20:59:53,617.617 INFO    ] No existing commands found in stream
[2026-08-31 20:59:58,633.633 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 20:59:58,636.636 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-08-31 21:00:01,398.398 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 21:00:01,400.400 INFO    ] Checking for system updates...
[2026-08-31 21:00:01,436.436 INFO    ] 200
[2026-08-31 21:00:01,439.439 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:00:01,492.492 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:00:01,495.495 INFO    ] No update needed
[2026-08-31 21:00:01,498.498 INFO    ] Checking for camera pi updates...
[2026-08-31 21:00:01,660.660 INFO    ] 200
[2026-08-31 21:00:01,664.664 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:00:01,756.756 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:00:02,868.868 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:00:02,871.871 INFO    ] No camera update needed
[2026-08-31 21:00:02,874.874 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:00:02,918.918 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:00:02,925.925 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:00:02,988.988 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:00:05,101.101 INFO    ] ================================================
[2026-08-31 21:00:05,174.174 INFO    ] Launching Daemon at Mon Aug 31 21:00:05 IST 2026
[2026-08-31 21:00:05,266.266 INFO    ] ================================================
[2026-08-31 21:00:06,334.334 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:00:06
[2026-08-31 21:00:06,996.996 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:00:07,291.291 INFO    ] Initializing speech engine...
[2026-08-31 21:00:07,300.300 INFO    ] 2026-08-31 21:00:07
[2026-08-31 21:00:07,570.570 INFO    ] 2026-08-31 21:00:07
[2026-08-31 21:00:07,624.624 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:00:07,849.849 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:00:07,854.854 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:00:08,065.065 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:00:08,111.111 INFO    ] time= 31/08/2026 21:00:08
[2026-08-31 21:00:08,129.129 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:00:08,138.138 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:00:08,255.255 INFO    ] No existing commands found in stream
[2026-08-31 21:00:13,275.275 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:00:13,278.278 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-08-31 21:00:15,444.444 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 21:00:15,447.447 INFO    ] Checking for system updates...
[2026-08-31 21:00:15,485.485 INFO    ] 200
[2026-08-31 21:00:15,487.487 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:00:15,540.540 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:00:15,543.543 INFO    ] No update needed
[2026-08-31 21:00:15,545.545 INFO    ] Checking for camera pi updates...
[2026-08-31 21:00:15,584.584 INFO    ] 200
[2026-08-31 21:00:15,587.587 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:00:15,630.630 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:00:15,733.733 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:00:15,735.735 INFO    ] No camera update needed
[2026-08-31 21:00:15,738.738 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:00:15,740.740 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:00:15,745.745 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:00:15,750.750 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:00:17,790.790 INFO    ] ================================================
[2026-08-31 21:00:17,805.805 INFO    ] Launching Daemon at Mon Aug 31 21:00:17 IST 2026
[2026-08-31 21:00:17,816.816 INFO    ] ================================================
[2026-08-31 21:00:18,380.380 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:00:18
[2026-08-31 21:00:18,962.962 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:00:19,238.238 INFO    ] Initializing speech engine...
[2026-08-31 21:00:19,251.251 INFO    ] 2026-08-31 21:00:19
[2026-08-31 21:00:19,511.511 INFO    ] 2026-08-31 21:00:19
[2026-08-31 21:00:19,547.547 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:00:19,731.731 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:00:19,741.741 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:00:19,898.898 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:00:19,944.944 INFO    ] time= 31/08/2026 21:00:19
[2026-08-31 21:00:19,965.965 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:00:20,012.012 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:00:20,109.109 INFO    ] No existing commands found in stream
[2026-08-31 21:00:25,119.119 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:00:25,122.122 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-08-31 21:00:27,840.840 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 21:00:27,843.843 INFO    ] Checking for system updates...
[2026-08-31 21:00:27,882.882 INFO    ] 200
[2026-08-31 21:00:27,884.884 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:00:27,940.940 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:00:27,943.943 INFO    ] No update needed
[2026-08-31 21:00:27,946.946 INFO    ] Checking for camera pi updates...
[2026-08-31 21:00:27,982.982 INFO    ] 200
[2026-08-31 21:00:27,985.985 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:00:28,034.034 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:00:28,115.115 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:00:28,118.118 INFO    ] No camera update needed
[2026-08-31 21:00:28,120.120 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:00:28,122.122 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:00:28,128.128 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:00:28,133.133 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:00:30,172.172 INFO    ] ================================================
[2026-08-31 21:00:30,187.187 INFO    ] Launching Daemon at Mon Aug 31 21:00:30 IST 2026
[2026-08-31 21:00:30,198.198 INFO    ] ================================================
[2026-08-31 21:00:30,802.802 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:00:30
[2026-08-31 21:00:31,443.443 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:00:31,733.733 INFO    ] Initializing speech engine...
[2026-08-31 21:00:31,744.744 INFO    ] 2026-08-31 21:00:31
[2026-08-31 21:00:32,029.029 INFO    ] 2026-08-31 21:00:32
[2026-08-31 21:00:32,143.143 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:00:32,378.378 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:00:32,435.435 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:00:32,629.629 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:00:32,637.637 INFO    ] time= 31/08/2026 21:00:32
[2026-08-31 21:00:32,644.644 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:00:32,686.686 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:00:32,838.838 INFO    ] No existing commands found in stream
[2026-08-31 21:00:37,863.863 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:00:37,866.866 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-08-31 21:00:40,083.083 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 21:00:40,086.086 INFO    ] Checking for system updates...
[2026-08-31 21:00:40,122.122 INFO    ] 200
[2026-08-31 21:00:40,124.124 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:00:40,179.179 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:00:40,182.182 INFO    ] No update needed
[2026-08-31 21:00:40,184.184 INFO    ] Checking for camera pi updates...
[2026-08-31 21:00:40,224.224 INFO    ] 200
[2026-08-31 21:00:40,227.227 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:00:40,271.271 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:00:40,353.353 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:00:40,355.355 INFO    ] No camera update needed
[2026-08-31 21:00:40,358.358 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:00:40,360.360 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:00:40,365.365 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:00:40,370.370 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:00:42,411.411 INFO    ] ================================================
[2026-08-31 21:00:42,427.427 INFO    ] Launching Daemon at Mon Aug 31 21:00:42 IST 2026
[2026-08-31 21:00:42,438.438 INFO    ] ================================================
[2026-08-31 21:00:43,079.079 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:00:43
[2026-08-31 21:00:43,741.741 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:00:44,042.042 INFO    ] Initializing speech engine...
[2026-08-31 21:00:44,047.047 INFO    ] 2026-08-31 21:00:44
[2026-08-31 21:00:44,321.321 INFO    ] 2026-08-31 21:00:44
[2026-08-31 21:00:44,357.357 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:00:44,611.611 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:00:44,622.622 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:00:44,837.837 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:00:44,850.850 INFO    ] time= 31/08/2026 21:00:44
[2026-08-31 21:00:44,896.896 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:00:44,903.903 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:00:45,051.051 INFO    ] No existing commands found in stream
[2026-08-31 21:00:50,071.071 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:00:50,074.074 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-08-31 21:00:53,828.828 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 21:00:53,831.831 INFO    ] Checking for system updates...
[2026-08-31 21:00:53,866.866 INFO    ] 200
[2026-08-31 21:00:53,868.868 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:00:53,927.927 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:00:53,930.930 INFO    ] No update needed
[2026-08-31 21:00:53,932.932 INFO    ] Checking for camera pi updates...
[2026-08-31 21:00:53,967.967 INFO    ] 200
[2026-08-31 21:00:53,969.969 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:00:54,010.010 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:00:54,096.096 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:00:54,099.099 INFO    ] No camera update needed
[2026-08-31 21:00:54,101.101 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:00:54,103.103 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:00:54,109.109 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:00:54,114.114 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:00:56,153.153 INFO    ] ================================================
[2026-08-31 21:00:56,168.168 INFO    ] Launching Daemon at Mon Aug 31 21:00:56 IST 2026
[2026-08-31 21:00:56,179.179 INFO    ] ================================================
[2026-08-31 21:00:56,742.742 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:00:56
[2026-08-31 21:00:57,323.323 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:00:57,593.593 INFO    ] Initializing speech engine...
[2026-08-31 21:00:57,602.602 INFO    ] 2026-08-31 21:00:57
[2026-08-31 21:00:57,847.847 INFO    ] 2026-08-31 21:00:57
[2026-08-31 21:00:57,882.882 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:00:58,073.073 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:00:58,076.076 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:00:58,221.221 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:00:58,282.282 INFO    ] time= 31/08/2026 21:00:58
[2026-08-31 21:00:58,293.293 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:00:58,348.348 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:00:58,461.461 INFO    ] No existing commands found in stream
[2026-08-31 21:01:03,473.473 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:01:03,475.475 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-08-31 21:01:04,190.190 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 21:01:04,193.193 INFO    ] Checking for system updates...
[2026-08-31 21:01:04,228.228 INFO    ] 200
[2026-08-31 21:01:04,231.231 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:01:04,289.289 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:01:04,291.291 INFO    ] No update needed
[2026-08-31 21:01:04,293.293 INFO    ] Checking for camera pi updates...
[2026-08-31 21:01:04,326.326 INFO    ] 200
[2026-08-31 21:01:04,329.329 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:01:04,373.373 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:01:04,475.475 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:01:04,477.477 INFO    ] No camera update needed
[2026-08-31 21:01:04,480.480 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:01:04,482.482 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:01:04,487.487 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:01:04,492.492 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:01:06,533.533 INFO    ] ================================================
[2026-08-31 21:01:06,548.548 INFO    ] Launching Daemon at Mon Aug 31 21:01:06 IST 2026
[2026-08-31 21:01:06,559.559 INFO    ] ================================================
[2026-08-31 21:01:07,128.128 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:01:07
[2026-08-31 21:01:07,715.715 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:01:07,988.988 INFO    ] Initializing speech engine...
[2026-08-31 21:01:07,996.996 INFO    ] 2026-08-31 21:01:07
[2026-08-31 21:01:08,247.247 INFO    ] 2026-08-31 21:01:08
[2026-08-31 21:01:08,281.281 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:01:08,540.540 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:01:08,550.550 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:01:08,686.686 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:01:08,738.738 INFO    ] time= 31/08/2026 21:01:08
[2026-08-31 21:01:08,787.787 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:01:08,823.823 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:01:08,949.949 INFO    ] No existing commands found in stream
[2026-08-31 21:01:13,975.975 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:01:13,978.978 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-08-31 21:01:17,097.097 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 21:01:17,100.100 INFO    ] Checking for system updates...
[2026-08-31 21:01:17,140.140 INFO    ] 200
[2026-08-31 21:01:17,143.143 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:01:17,196.196 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:01:17,199.199 INFO    ] No update needed
[2026-08-31 21:01:17,201.201 INFO    ] Checking for camera pi updates...
[2026-08-31 21:01:17,235.235 INFO    ] 200
[2026-08-31 21:01:17,237.237 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:01:17,284.284 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:01:17,381.381 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:01:17,384.384 INFO    ] No camera update needed
[2026-08-31 21:01:17,386.386 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:01:17,388.388 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:01:17,393.393 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:01:17,398.398 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:01:19,441.441 INFO    ] ================================================
[2026-08-31 21:01:19,456.456 INFO    ] Launching Daemon at Mon Aug 31 21:01:19 IST 2026
[2026-08-31 21:01:19,467.467 INFO    ] ================================================
[2026-08-31 21:01:20,138.138 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:01:20
[2026-08-31 21:01:20,824.824 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:01:21,142.142 INFO    ] Initializing speech engine...
[2026-08-31 21:01:21,150.150 INFO    ] 2026-08-31 21:01:21
[2026-08-31 21:01:21,457.457 INFO    ] 2026-08-31 21:01:21
[2026-08-31 21:01:21,543.543 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:01:21,754.754 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:01:21,763.763 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:01:21,955.955 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:01:21,964.964 INFO    ] time= 31/08/2026 21:01:21
[2026-08-31 21:01:21,983.983 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:01:22,006.006 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:01:22,145.145 INFO    ] No existing commands found in stream
[2026-08-31 21:01:27,176.176 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:01:27,180.180 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-08-31 21:01:29,720.720 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 21:01:29,723.723 INFO    ] Checking for system updates...
[2026-08-31 21:01:29,767.767 INFO    ] 200
[2026-08-31 21:01:29,770.770 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:01:29,828.828 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:01:29,830.830 INFO    ] No update needed
[2026-08-31 21:01:29,833.833 INFO    ] Checking for camera pi updates...
[2026-08-31 21:01:29,866.866 INFO    ] 200
[2026-08-31 21:01:29,869.869 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:01:29,915.915 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:01:30,099.099 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:01:30,101.101 INFO    ] No camera update needed
[2026-08-31 21:01:30,103.103 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:01:30,105.105 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:01:30,111.111 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:01:30,116.116 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:01:32,160.160 INFO    ] ================================================
[2026-08-31 21:01:32,177.177 INFO    ] Launching Daemon at Mon Aug 31 21:01:32 IST 2026
[2026-08-31 21:01:32,188.188 INFO    ] ================================================
[2026-08-31 21:01:32,853.853 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:01:32
[2026-08-31 21:01:33,454.454 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:01:33,733.733 INFO    ] Initializing speech engine...
[2026-08-31 21:01:33,742.742 INFO    ] 2026-08-31 21:01:33
[2026-08-31 21:01:34,006.006 INFO    ] 2026-08-31 21:01:34
[2026-08-31 21:01:34,061.061 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:01:34,291.291 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:01:34,294.294 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:01:34,448.448 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:01:34,470.470 INFO    ] time= 31/08/2026 21:01:34
[2026-08-31 21:01:34,519.519 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:01:34,553.553 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:01:34,661.661 INFO    ] No existing commands found in stream
[2026-08-31 21:01:39,673.673 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:01:39,676.676 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-08-31 21:01:43,617.617 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 21:01:43,620.620 INFO    ] Checking for system updates...
[2026-08-31 21:01:43,657.657 INFO    ] 200
[2026-08-31 21:01:43,659.659 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:01:43,720.720 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:01:43,722.722 INFO    ] No update needed
[2026-08-31 21:01:43,724.724 INFO    ] Checking for camera pi updates...
[2026-08-31 21:01:43,762.762 INFO    ] 200
[2026-08-31 21:01:43,764.764 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:01:43,807.807 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:01:43,897.897 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:01:43,899.899 INFO    ] No camera update needed
[2026-08-31 21:01:43,902.902 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:01:43,904.904 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:01:43,909.909 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:01:43,915.915 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:01:45,956.956 INFO    ] ================================================
[2026-08-31 21:01:45,971.971 INFO    ] Launching Daemon at Mon Aug 31 21:01:45 IST 2026
[2026-08-31 21:01:45,982.982 INFO    ] ================================================
[2026-08-31 21:01:46,563.563 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:01:46
[2026-08-31 21:01:47,165.165 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:01:47,426.426 INFO    ] Initializing speech engine...
[2026-08-31 21:01:47,434.434 INFO    ] 2026-08-31 21:01:47
[2026-08-31 21:01:47,733.733 INFO    ] 2026-08-31 21:01:47
[2026-08-31 21:01:47,769.769 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:01:47,965.965 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:01:47,976.976 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:01:48,153.153 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:01:48,162.162 INFO    ] time= 31/08/2026 21:01:48
[2026-08-31 21:01:48,169.169 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:01:48,214.214 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:01:48,351.351 INFO    ] No existing commands found in stream
[2026-08-31 21:01:53,387.387 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:01:53,390.390 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-08-31 21:01:54,244.244 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 21:01:54,247.247 INFO    ] Checking for system updates...
[2026-08-31 21:01:54,287.287 INFO    ] 200
[2026-08-31 21:01:54,290.290 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:01:54,343.343 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:01:54,345.345 INFO    ] No update needed
[2026-08-31 21:01:54,348.348 INFO    ] Checking for camera pi updates...
[2026-08-31 21:01:54,382.382 INFO    ] 200
[2026-08-31 21:01:54,384.384 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:01:54,426.426 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:01:54,505.505 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:01:54,508.508 INFO    ] No camera update needed
[2026-08-31 21:01:54,510.510 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:01:54,513.513 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:01:54,518.518 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:01:54,523.523 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:01:56,564.564 INFO    ] ================================================
[2026-08-31 21:01:56,579.579 INFO    ] Launching Daemon at Mon Aug 31 21:01:56 IST 2026
[2026-08-31 21:01:56,590.590 INFO    ] ================================================
[2026-08-31 21:01:57,164.164 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:01:57
[2026-08-31 21:01:57,755.755 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:01:58,029.029 INFO    ] Initializing speech engine...
[2026-08-31 21:01:58,038.038 INFO    ] 2026-08-31 21:01:58
[2026-08-31 21:01:58,289.289 INFO    ] 2026-08-31 21:01:58
[2026-08-31 21:01:58,325.325 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:01:58,523.523 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:01:58,568.568 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:01:58,761.761 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:01:58,821.821 INFO    ] time= 31/08/2026 21:01:58
[2026-08-31 21:01:58,862.862 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:01:58,868.868 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:01:58,986.986 INFO    ] No existing commands found in stream
[2026-08-31 21:02:04,011.011 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:02:04,014.014 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-08-31 21:02:07,923.923 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 21:02:07,925.925 INFO    ] Checking for system updates...
[2026-08-31 21:02:07,965.965 INFO    ] 200
[2026-08-31 21:02:07,968.968 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:02:08,028.028 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:02:08,031.031 INFO    ] No update needed
[2026-08-31 21:02:08,034.034 INFO    ] Checking for camera pi updates...
[2026-08-31 21:02:08,068.068 INFO    ] 200
[2026-08-31 21:02:08,071.071 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:02:08,117.117 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:02:08,199.199 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:02:08,202.202 INFO    ] No camera update needed
[2026-08-31 21:02:08,204.204 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:02:08,207.207 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:02:08,213.213 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:02:08,219.219 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:02:10,259.259 INFO    ] ================================================
[2026-08-31 21:02:10,275.275 INFO    ] Launching Daemon at Mon Aug 31 21:02:10 IST 2026
[2026-08-31 21:02:10,286.286 INFO    ] ================================================
[2026-08-31 21:02:10,866.866 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:02:10
[2026-08-31 21:02:11,463.463 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:02:11,741.741 INFO    ] Initializing speech engine...
[2026-08-31 21:02:11,747.747 INFO    ] 2026-08-31 21:02:11
[2026-08-31 21:02:12,009.009 INFO    ] 2026-08-31 21:02:12
[2026-08-31 21:02:12,061.061 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:02:12,284.284 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:02:12,294.294 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:02:12,510.510 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:02:12,550.550 INFO    ] time= 31/08/2026 21:02:12
[2026-08-31 21:02:12,557.557 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:02:12,574.574 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:02:12,702.702 INFO    ] No existing commands found in stream
[2026-08-31 21:02:17,718.718 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:02:17,721.721 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-08-31 21:02:20,748.748 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 21:02:20,751.751 INFO    ] Checking for system updates...
[2026-08-31 21:02:20,801.801 INFO    ] 200
[2026-08-31 21:02:20,805.805 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:02:20,874.874 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:02:20,878.878 INFO    ] No update needed
[2026-08-31 21:02:20,881.881 INFO    ] Checking for camera pi updates...
[2026-08-31 21:02:20,919.919 INFO    ] 200
[2026-08-31 21:02:20,922.922 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:02:20,972.972 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:02:21,083.083 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:02:21,085.085 INFO    ] No camera update needed
[2026-08-31 21:02:21,088.088 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:02:21,091.091 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:02:21,096.096 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:02:21,102.102 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:02:23,146.146 INFO    ] ================================================
[2026-08-31 21:02:23,162.162 INFO    ] Launching Daemon at Mon Aug 31 21:02:23 IST 2026
[2026-08-31 21:02:23,174.174 INFO    ] ================================================
[2026-08-31 21:02:23,822.822 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:02:23
[2026-08-31 21:02:24,499.499 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:02:24,795.795 INFO    ] Initializing speech engine...
[2026-08-31 21:02:24,801.801 INFO    ] 2026-08-31 21:02:24
[2026-08-31 21:02:25,073.073 INFO    ] 2026-08-31 21:02:25
[2026-08-31 21:02:25,129.129 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:02:25,355.355 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:02:25,364.364 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:02:25,554.554 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:02:25,619.619 INFO    ] time= 31/08/2026 21:02:25
[2026-08-31 21:02:25,642.642 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:02:25,657.657 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:02:25,776.776 INFO    ] No existing commands found in stream
[2026-08-31 21:02:30,803.803 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:02:30,806.806 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-08-31 21:02:33,404.404 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 21:02:33,407.407 INFO    ] Checking for system updates...
[2026-08-31 21:02:33,446.446 INFO    ] 200
[2026-08-31 21:02:33,448.448 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:02:33,500.500 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:02:33,503.503 INFO    ] No update needed
[2026-08-31 21:02:33,505.505 INFO    ] Checking for camera pi updates...
[2026-08-31 21:02:33,539.539 INFO    ] 200
[2026-08-31 21:02:33,541.541 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:02:33,586.586 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:02:33,689.689 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:02:33,691.691 INFO    ] No camera update needed
[2026-08-31 21:02:33,694.694 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:02:33,696.696 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:02:33,701.701 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:02:33,706.706 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:02:35,749.749 INFO    ] ================================================
[2026-08-31 21:02:35,764.764 INFO    ] Launching Daemon at Mon Aug 31 21:02:35 IST 2026
[2026-08-31 21:02:35,776.776 INFO    ] ================================================
[2026-08-31 21:02:36,413.413 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:02:36
[2026-08-31 21:02:37,080.080 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:02:37,380.380 INFO    ] Initializing speech engine...
[2026-08-31 21:02:37,389.389 INFO    ] 2026-08-31 21:02:37
[2026-08-31 21:02:37,660.660 INFO    ] 2026-08-31 21:02:37
[2026-08-31 21:02:37,720.720 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:02:37,956.956 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:02:37,962.962 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:02:38,186.186 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:02:38,229.229 INFO    ] time= 31/08/2026 21:02:38
[2026-08-31 21:02:38,246.246 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:02:38,271.271 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:02:38,448.448 INFO    ] No existing commands found in stream
[2026-08-31 21:02:43,474.474 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:02:43,477.477 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-08-31 21:02:44,467.467 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 21:02:44,470.470 INFO    ] Checking for system updates...
[2026-08-31 21:02:44,506.506 INFO    ] 200
[2026-08-31 21:02:44,509.509 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:02:44,562.562 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:02:44,565.565 INFO    ] No update needed
[2026-08-31 21:02:44,567.567 INFO    ] Checking for camera pi updates...
[2026-08-31 21:02:44,602.602 INFO    ] 200
[2026-08-31 21:02:44,605.605 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:02:44,645.645 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:02:44,744.744 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:02:44,747.747 INFO    ] No camera update needed
[2026-08-31 21:02:44,750.750 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:02:44,753.753 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:02:44,759.759 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:02:44,764.764 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:02:46,806.806 INFO    ] ================================================
[2026-08-31 21:02:46,822.822 INFO    ] Launching Daemon at Mon Aug 31 21:02:46 IST 2026
[2026-08-31 21:02:46,833.833 INFO    ] ================================================
[2026-08-31 21:02:47,405.405 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:02:47
[2026-08-31 21:02:48,050.050 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:02:48,349.349 INFO    ] Initializing speech engine...
[2026-08-31 21:02:48,357.357 INFO    ] 2026-08-31 21:02:48
[2026-08-31 21:02:48,666.666 INFO    ] 2026-08-31 21:02:48
[2026-08-31 21:02:48,754.754 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:02:48,980.980 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:02:49,035.035 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:02:49,182.182 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:02:49,214.214 INFO    ] time= 31/08/2026 21:02:49
[2026-08-31 21:02:49,222.222 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:02:49,232.232 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:02:49,347.347 INFO    ] No existing commands found in stream
[2026-08-31 21:02:54,373.373 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:02:54,376.376 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-08-31 21:02:55,905.905 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 21:02:55,908.908 INFO    ] Checking for system updates...
[2026-08-31 21:02:55,944.944 INFO    ] 200
[2026-08-31 21:02:55,947.947 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:02:56,006.006 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:02:56,010.010 INFO    ] No update needed
[2026-08-31 21:02:56,012.012 INFO    ] Checking for camera pi updates...
[2026-08-31 21:02:56,046.046 INFO    ] 200
[2026-08-31 21:02:56,049.049 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:02:56,090.090 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:02:56,174.174 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:02:56,177.177 INFO    ] No camera update needed
[2026-08-31 21:02:56,180.180 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:02:56,182.182 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:02:56,189.189 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:02:56,194.194 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:02:58,235.235 INFO    ] ================================================
[2026-08-31 21:02:58,251.251 INFO    ] Launching Daemon at Mon Aug 31 21:02:58 IST 2026
[2026-08-31 21:02:58,262.262 INFO    ] ================================================
[2026-08-31 21:02:58,834.834 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:02:58
[2026-08-31 21:02:59,455.455 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:02:59,755.755 INFO    ] Initializing speech engine...
[2026-08-31 21:02:59,768.768 INFO    ] 2026-08-31 21:02:59
[2026-08-31 21:03:00,035.035 INFO    ] 2026-08-31 21:03:00
[2026-08-31 21:03:00,089.089 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:03:00,337.337 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:03:00,343.343 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:03:00,575.575 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:03:00,581.581 INFO    ] time= 31/08/2026 21:03:00
[2026-08-31 21:03:00,602.602 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:03:00,629.629 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:03:00,742.742 INFO    ] No existing commands found in stream
[2026-08-31 21:03:05,771.771 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:03:05,774.774 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-08-31 21:03:08,307.307 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 21:03:08,310.310 INFO    ] Checking for system updates...
[2026-08-31 21:03:08,349.349 INFO    ] 200
[2026-08-31 21:03:08,352.352 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:03:08,409.409 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:03:08,412.412 INFO    ] No update needed
[2026-08-31 21:03:08,414.414 INFO    ] Checking for camera pi updates...
[2026-08-31 21:03:08,452.452 INFO    ] 200
[2026-08-31 21:03:08,455.455 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:03:08,495.495 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:03:08,581.581 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:03:08,583.583 INFO    ] No camera update needed
[2026-08-31 21:03:08,586.586 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:03:08,588.588 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:03:08,594.594 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:03:08,600.600 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:03:10,639.639 INFO    ] ================================================
[2026-08-31 21:03:10,655.655 INFO    ] Launching Daemon at Mon Aug 31 21:03:10 IST 2026
[2026-08-31 21:03:10,666.666 INFO    ] ================================================
[2026-08-31 21:03:11,245.245 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:03:11
[2026-08-31 21:03:11,841.841 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:03:12,116.116 INFO    ] Initializing speech engine...
[2026-08-31 21:03:12,125.125 INFO    ] 2026-08-31 21:03:12
[2026-08-31 21:03:12,384.384 INFO    ] 2026-08-31 21:03:12
[2026-08-31 21:03:12,438.438 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:03:12,660.660 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:03:12,669.669 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:03:12,802.802 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:03:12,828.828 INFO    ] time= 31/08/2026 21:03:12
[2026-08-31 21:03:12,889.889 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:03:12,935.935 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:03:13,068.068 INFO    ] No existing commands found in stream
[2026-08-31 21:03:18,092.092 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:03:18,095.095 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-08-31 21:03:19,837.837 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 21:03:19,840.840 INFO    ] Checking for system updates...
[2026-08-31 21:03:19,876.876 INFO    ] 200
[2026-08-31 21:03:19,879.879 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:03:19,932.932 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:03:19,935.935 INFO    ] No update needed
[2026-08-31 21:03:19,937.937 INFO    ] Checking for camera pi updates...
[2026-08-31 21:03:19,971.971 INFO    ] 200
[2026-08-31 21:03:19,974.974 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:03:20,015.015 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:03:20,098.098 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:03:20,101.101 INFO    ] No camera update needed
[2026-08-31 21:03:20,103.103 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:03:20,106.106 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:03:20,112.112 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:03:20,117.117 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:03:22,159.159 INFO    ] ================================================
[2026-08-31 21:03:22,174.174 INFO    ] Launching Daemon at Mon Aug 31 21:03:22 IST 2026
[2026-08-31 21:03:22,185.185 INFO    ] ================================================
[2026-08-31 21:03:22,806.806 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:03:22
[2026-08-31 21:03:23,447.447 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:03:23,741.741 INFO    ] Initializing speech engine...
[2026-08-31 21:03:23,746.746 INFO    ] 2026-08-31 21:03:23
[2026-08-31 21:03:24,033.033 INFO    ] 2026-08-31 21:03:24
[2026-08-31 21:03:24,078.078 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:03:24,307.307 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:03:24,312.312 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:03:24,511.511 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:03:24,561.561 INFO    ] time= 31/08/2026 21:03:24
[2026-08-31 21:03:24,583.583 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:03:24,598.598 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:03:24,714.714 INFO    ] No existing commands found in stream
[2026-08-31 21:03:29,742.742 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:03:29,745.745 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-08-31 21:03:33,466.466 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 21:03:33,469.469 INFO    ] Checking for system updates...
[2026-08-31 21:03:33,505.505 INFO    ] 200
[2026-08-31 21:03:33,508.508 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:03:33,566.566 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:03:33,569.569 INFO    ] No update needed
[2026-08-31 21:03:33,572.572 INFO    ] Checking for camera pi updates...
[2026-08-31 21:03:33,609.609 INFO    ] 200
[2026-08-31 21:03:33,612.612 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:03:33,655.655 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:03:33,739.739 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:03:33,741.741 INFO    ] No camera update needed
[2026-08-31 21:03:33,744.744 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:03:33,746.746 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:03:33,753.753 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:03:33,758.758 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:03:35,798.798 INFO    ] ================================================
[2026-08-31 21:03:35,813.813 INFO    ] Launching Daemon at Mon Aug 31 21:03:35 IST 2026
[2026-08-31 21:03:35,824.824 INFO    ] ================================================
[2026-08-31 21:03:36,453.453 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:03:36
[2026-08-31 21:03:37,093.093 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:03:37,379.379 INFO    ] Initializing speech engine...
[2026-08-31 21:03:37,389.389 INFO    ] 2026-08-31 21:03:37
[2026-08-31 21:03:37,645.645 INFO    ] 2026-08-31 21:03:37
[2026-08-31 21:03:37,688.688 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:03:37,938.938 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:03:37,945.945 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:03:38,075.075 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:03:38,127.127 INFO    ] time= 31/08/2026 21:03:38
[2026-08-31 21:03:38,181.181 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:03:38,210.210 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:03:38,355.355 INFO    ] No existing commands found in stream
[2026-08-31 21:03:43,368.368 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:03:43,371.371 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-08-31 21:03:44,961.961 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 21:03:44,964.964 INFO    ] Checking for system updates...
[2026-08-31 21:03:45,000.000 INFO    ] 200
[2026-08-31 21:03:45,002.002 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:03:45,054.054 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:03:45,057.057 INFO    ] No update needed
[2026-08-31 21:03:45,060.060 INFO    ] Checking for camera pi updates...
[2026-08-31 21:03:45,094.094 INFO    ] 200
[2026-08-31 21:03:45,096.096 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:03:45,138.138 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:03:45,230.230 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:03:45,233.233 INFO    ] No camera update needed
[2026-08-31 21:03:45,235.235 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:03:45,238.238 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:03:45,244.244 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:03:45,249.249 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:03:47,292.292 INFO    ] ================================================
[2026-08-31 21:03:47,308.308 INFO    ] Launching Daemon at Mon Aug 31 21:03:47 IST 2026
[2026-08-31 21:03:47,319.319 INFO    ] ================================================
[2026-08-31 21:03:47,903.903 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:03:47
[2026-08-31 21:03:48,500.500 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:03:48,774.774 INFO    ] Initializing speech engine...
[2026-08-31 21:03:48,784.784 INFO    ] 2026-08-31 21:03:48
[2026-08-31 21:03:49,042.042 INFO    ] 2026-08-31 21:03:49
[2026-08-31 21:03:49,095.095 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:03:49,345.345 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:03:49,349.349 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:03:49,541.541 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:03:49,582.582 INFO    ] time= 31/08/2026 21:03:49
[2026-08-31 21:03:49,588.588 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:03:49,609.609 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:03:49,717.717 INFO    ] No existing commands found in stream
[2026-08-31 21:03:54,744.744 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:03:54,747.747 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-08-31 21:03:55,593.593 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 21:03:55,596.596 INFO    ] Checking for system updates...
[2026-08-31 21:03:55,634.634 INFO    ] 200
[2026-08-31 21:03:55,637.637 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:03:55,700.700 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:03:55,703.703 INFO    ] No update needed
[2026-08-31 21:03:55,705.705 INFO    ] Checking for camera pi updates...
[2026-08-31 21:03:55,738.738 INFO    ] 200
[2026-08-31 21:03:55,741.741 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:03:55,780.780 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:03:55,875.875 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:03:55,877.877 INFO    ] No camera update needed
[2026-08-31 21:03:55,879.879 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:03:55,882.882 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:03:55,887.887 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:03:55,892.892 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:03:57,932.932 INFO    ] ================================================
[2026-08-31 21:03:57,948.948 INFO    ] Launching Daemon at Mon Aug 31 21:03:57 IST 2026
[2026-08-31 21:03:57,960.960 INFO    ] ================================================
[2026-08-31 21:03:58,544.544 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:03:58
[2026-08-31 21:03:59,123.123 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:03:59,403.403 INFO    ] Initializing speech engine...
[2026-08-31 21:03:59,411.411 INFO    ] 2026-08-31 21:03:59
[2026-08-31 21:03:59,690.690 INFO    ] 2026-08-31 21:03:59
[2026-08-31 21:03:59,735.735 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:03:59,982.982 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:03:59,986.986 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:04:00,199.199 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:04:00,221.221 INFO    ] time= 31/08/2026 21:04:00
[2026-08-31 21:04:00,239.239 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:04:00,262.262 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:04:00,369.369 INFO    ] No existing commands found in stream
[2026-08-31 21:04:05,385.385 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:04:05,388.388 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-08-31 21:04:07,521.521 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 21:04:07,524.524 INFO    ] Checking for system updates...
[2026-08-31 21:04:07,563.563 INFO    ] 200
[2026-08-31 21:04:07,566.566 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:04:07,623.623 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:04:07,626.626 INFO    ] No update needed
[2026-08-31 21:04:07,629.629 INFO    ] Checking for camera pi updates...
[2026-08-31 21:04:07,670.670 INFO    ] 200
[2026-08-31 21:04:07,672.672 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:04:07,722.722 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:04:07,810.810 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:04:07,812.812 INFO    ] No camera update needed
[2026-08-31 21:04:07,815.815 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:04:07,818.818 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:04:07,825.825 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:04:07,832.832 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:04:09,877.877 INFO    ] ================================================
[2026-08-31 21:04:09,893.893 INFO    ] Launching Daemon at Mon Aug 31 21:04:09 IST 2026
[2026-08-31 21:04:09,905.905 INFO    ] ================================================
[2026-08-31 21:04:10,568.568 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:04:10
[2026-08-31 21:04:11,251.251 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:04:11,525.525 INFO    ] Initializing speech engine...
[2026-08-31 21:04:11,543.543 INFO    ] 2026-08-31 21:04:11
[2026-08-31 21:04:11,813.813 INFO    ] 2026-08-31 21:04:11
[2026-08-31 21:04:11,851.851 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:04:12,106.106 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:04:12,129.129 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:04:12,295.295 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:04:12,366.366 INFO    ] time= 31/08/2026 21:04:12
[2026-08-31 21:04:12,410.410 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:04:12,417.417 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:04:12,557.557 INFO    ] No existing commands found in stream
[2026-08-31 21:04:17,586.586 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:04:17,589.589 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-08-31 21:04:21,878.878 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 21:04:21,881.881 INFO    ] Checking for system updates...
[2026-08-31 21:04:21,916.916 INFO    ] 200
[2026-08-31 21:04:21,919.919 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:04:21,971.971 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:04:21,973.973 INFO    ] No update needed
[2026-08-31 21:04:21,976.976 INFO    ] Checking for camera pi updates...
[2026-08-31 21:04:22,009.009 INFO    ] 200
[2026-08-31 21:04:22,012.012 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:04:22,055.055 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:04:22,136.136 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:04:22,138.138 INFO    ] No camera update needed
[2026-08-31 21:04:22,141.141 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:04:22,143.143 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:04:22,148.148 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:04:22,153.153 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:04:24,194.194 INFO    ] ================================================
[2026-08-31 21:04:24,210.210 INFO    ] Launching Daemon at Mon Aug 31 21:04:24 IST 2026
[2026-08-31 21:04:24,221.221 INFO    ] ================================================
[2026-08-31 21:04:24,841.841 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:04:24
[2026-08-31 21:04:25,477.477 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:04:25,770.770 INFO    ] Initializing speech engine...
[2026-08-31 21:04:25,779.779 INFO    ] 2026-08-31 21:04:25
[2026-08-31 21:04:26,051.051 INFO    ] 2026-08-31 21:04:26
[2026-08-31 21:04:26,106.106 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:04:26,336.336 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:04:26,342.342 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:04:26,475.475 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:04:26,512.512 INFO    ] time= 31/08/2026 21:04:26
[2026-08-31 21:04:26,562.562 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:04:26,612.612 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:04:26,759.759 INFO    ] No existing commands found in stream
[2026-08-31 21:04:31,776.776 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:04:31,780.780 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-08-31 21:04:33,080.080 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 21:04:33,083.083 INFO    ] Checking for system updates...
[2026-08-31 21:04:33,119.119 INFO    ] 200
[2026-08-31 21:04:33,122.122 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:04:33,174.174 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:04:33,177.177 INFO    ] No update needed
[2026-08-31 21:04:33,179.179 INFO    ] Checking for camera pi updates...
[2026-08-31 21:04:33,213.213 INFO    ] 200
[2026-08-31 21:04:33,215.215 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:04:33,259.259 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:04:33,357.357 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:04:33,360.360 INFO    ] No camera update needed
[2026-08-31 21:04:33,363.363 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:04:33,365.365 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:04:33,371.371 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:04:33,376.376 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:04:35,417.417 INFO    ] ================================================
[2026-08-31 21:04:35,432.432 INFO    ] Launching Daemon at Mon Aug 31 21:04:35 IST 2026
[2026-08-31 21:04:35,443.443 INFO    ] ================================================
[2026-08-31 21:04:36,008.008 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:04:36
[2026-08-31 21:04:36,590.590 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:04:36,840.840 INFO    ] Initializing speech engine...
[2026-08-31 21:04:36,863.863 INFO    ] 2026-08-31 21:04:36
[2026-08-31 21:04:37,118.118 INFO    ] 2026-08-31 21:04:37
[2026-08-31 21:04:37,152.152 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:04:37,409.409 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:04:37,418.418 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:04:37,555.555 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:04:37,594.594 INFO    ] time= 31/08/2026 21:04:37
[2026-08-31 21:04:37,643.643 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:04:37,689.689 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:04:37,819.819 INFO    ] No existing commands found in stream
[2026-08-31 21:04:42,848.848 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:04:42,851.851 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-08-31 21:04:46,563.563 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 21:04:46,566.566 INFO    ] Checking for system updates...
[2026-08-31 21:04:46,601.601 INFO    ] 200
[2026-08-31 21:04:46,604.604 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:04:46,657.657 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:04:46,659.659 INFO    ] No update needed
[2026-08-31 21:04:46,661.661 INFO    ] Checking for camera pi updates...
[2026-08-31 21:04:46,698.698 INFO    ] 200
[2026-08-31 21:04:46,700.700 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:04:46,744.744 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:04:46,825.825 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:04:46,828.828 INFO    ] No camera update needed
[2026-08-31 21:04:46,830.830 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:04:46,832.832 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:04:46,838.838 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:04:46,843.843 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:04:48,883.883 INFO    ] ================================================
[2026-08-31 21:04:48,899.899 INFO    ] Launching Daemon at Mon Aug 31 21:04:48 IST 2026
[2026-08-31 21:04:48,909.909 INFO    ] ================================================
[2026-08-31 21:04:49,479.479 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:04:49
[2026-08-31 21:04:50,061.061 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:04:50,307.307 INFO    ] Initializing speech engine...
[2026-08-31 21:04:50,315.315 INFO    ] 2026-08-31 21:04:50
[2026-08-31 21:04:50,589.589 INFO    ] 2026-08-31 21:04:50
[2026-08-31 21:04:50,624.624 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:04:50,831.831 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:04:50,885.885 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:04:51,025.025 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:04:51,057.057 INFO    ] time= 31/08/2026 21:04:51
[2026-08-31 21:04:51,117.117 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:04:51,162.162 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:04:51,220.220 INFO    ] No existing commands found in stream
[2026-08-31 21:04:56,232.232 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:04:56,234.234 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-08-31 21:04:57,279.279 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 21:04:57,281.281 INFO    ] Checking for system updates...
[2026-08-31 21:04:57,317.317 INFO    ] 200
[2026-08-31 21:04:57,319.319 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:04:57,380.380 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:04:57,382.382 INFO    ] No update needed
[2026-08-31 21:04:57,385.385 INFO    ] Checking for camera pi updates...
[2026-08-31 21:04:57,421.421 INFO    ] 200
[2026-08-31 21:04:57,424.424 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:04:57,470.470 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:04:57,562.562 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:04:57,565.565 INFO    ] No camera update needed
[2026-08-31 21:04:57,567.567 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:04:57,569.569 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:04:57,575.575 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:04:57,580.580 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:04:59,621.621 INFO    ] ================================================
[2026-08-31 21:04:59,636.636 INFO    ] Launching Daemon at Mon Aug 31 21:04:59 IST 2026
[2026-08-31 21:04:59,646.646 INFO    ] ================================================
[2026-08-31 21:05:00,212.212 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:05:00
[2026-08-31 21:05:00,794.794 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:05:01,053.053 INFO    ] Initializing speech engine...
[2026-08-31 21:05:01,079.079 INFO    ] 2026-08-31 21:05:01
[2026-08-31 21:05:01,379.379 INFO    ] 2026-08-31 21:05:01
[2026-08-31 21:05:01,493.493 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:05:01,875.875 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:05:01,883.883 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:05:02,061.061 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:05:02,069.069 INFO    ] time= 31/08/2026 21:05:02
[2026-08-31 21:05:02,075.075 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:05:02,090.090 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:05:02,171.171 INFO    ] No existing commands found in stream
[2026-08-31 21:05:07,181.181 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:05:07,185.185 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-08-31 21:05:11,023.023 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 21:05:11,026.026 INFO    ] Checking for system updates...
[2026-08-31 21:05:11,069.069 INFO    ] 200
[2026-08-31 21:05:11,072.072 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:05:11,135.135 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:05:11,137.137 INFO    ] No update needed
[2026-08-31 21:05:11,140.140 INFO    ] Checking for camera pi updates...
[2026-08-31 21:05:11,173.173 INFO    ] 200
[2026-08-31 21:05:11,175.175 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:05:11,221.221 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:05:11,301.301 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:05:11,304.304 INFO    ] No camera update needed
[2026-08-31 21:05:11,306.306 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:05:11,308.308 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:05:11,314.314 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:05:11,319.319 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:05:13,358.358 INFO    ] ================================================
[2026-08-31 21:05:13,374.374 INFO    ] Launching Daemon at Mon Aug 31 21:05:13 IST 2026
[2026-08-31 21:05:13,384.384 INFO    ] ================================================
[2026-08-31 21:05:14,050.050 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:05:14
[2026-08-31 21:05:14,735.735 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:05:15,045.045 INFO    ] Initializing speech engine...
[2026-08-31 21:05:15,060.060 INFO    ] 2026-08-31 21:05:15
[2026-08-31 21:05:15,377.377 INFO    ] 2026-08-31 21:05:15
[2026-08-31 21:05:15,468.468 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:05:15,684.684 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:05:15,693.693 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:05:15,894.894 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:05:15,913.913 INFO    ] time= 31/08/2026 21:05:15
[2026-08-31 21:05:15,923.923 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:05:15,951.951 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:05:16,057.057 INFO    ] No existing commands found in stream
[2026-08-31 21:05:21,071.071 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:05:21,075.075 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-08-31 21:05:24,645.645 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 21:05:24,648.648 INFO    ] Checking for system updates...
[2026-08-31 21:05:24,685.685 INFO    ] 200
[2026-08-31 21:05:24,688.688 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:05:24,750.750 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:05:24,753.753 INFO    ] No update needed
[2026-08-31 21:05:24,755.755 INFO    ] Checking for camera pi updates...
[2026-08-31 21:05:24,788.788 INFO    ] 200
[2026-08-31 21:05:24,791.791 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:05:24,840.840 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:05:24,923.923 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:05:24,926.926 INFO    ] No camera update needed
[2026-08-31 21:05:24,928.928 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:05:24,930.930 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:05:24,935.935 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:05:24,940.940 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:05:26,981.981 INFO    ] ================================================
[2026-08-31 21:05:27,996.996 INFO    ] Launching Daemon at Mon Aug 31 21:05:26 IST 2026
[2026-08-31 21:05:27,007.007 INFO    ] ================================================
[2026-08-31 21:05:27,576.576 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:05:27
[2026-08-31 21:05:28,163.163 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:05:28,422.422 INFO    ] Initializing speech engine...
[2026-08-31 21:05:28,440.440 INFO    ] 2026-08-31 21:05:28
[2026-08-31 21:05:28,688.688 INFO    ] 2026-08-31 21:05:28
[2026-08-31 21:05:28,720.720 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:05:28,948.948 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:05:28,958.958 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:05:29,187.187 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:05:29,192.192 INFO    ] time= 31/08/2026 21:05:29
[2026-08-31 21:05:29,198.198 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:05:29,252.252 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:05:29,348.348 INFO    ] No existing commands found in stream
[2026-08-31 21:05:34,361.361 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:05:34,363.363 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-08-31 21:05:37,597.597 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 21:05:37,600.600 INFO    ] Checking for system updates...
[2026-08-31 21:05:37,642.642 INFO    ] 200
[2026-08-31 21:05:37,645.645 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:05:37,699.699 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:05:37,702.702 INFO    ] No update needed
[2026-08-31 21:05:37,705.705 INFO    ] Checking for camera pi updates...
[2026-08-31 21:05:37,744.744 INFO    ] 200
[2026-08-31 21:05:37,747.747 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:05:37,789.789 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:05:37,971.971 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:05:37,974.974 INFO    ] No camera update needed
[2026-08-31 21:05:37,977.977 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:05:37,980.980 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:05:37,986.986 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:05:37,992.992 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:05:40,035.035 INFO    ] ================================================
[2026-08-31 21:05:40,050.050 INFO    ] Launching Daemon at Mon Aug 31 21:05:40 IST 2026
[2026-08-31 21:05:40,061.061 INFO    ] ================================================
[2026-08-31 21:05:40,733.733 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:05:40
[2026-08-31 21:05:41,425.425 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:05:41,743.743 INFO    ] Initializing speech engine...
[2026-08-31 21:05:41,753.753 INFO    ] 2026-08-31 21:05:41
[2026-08-31 21:05:42,041.041 INFO    ] 2026-08-31 21:05:42
[2026-08-31 21:05:42,151.151 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:05:42,360.360 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:05:42,370.370 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:05:42,564.564 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:05:42,585.585 INFO    ] time= 31/08/2026 21:05:42
[2026-08-31 21:05:42,617.617 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:05:42,626.626 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:05:42,726.726 INFO    ] No existing commands found in stream
[2026-08-31 21:05:47,755.755 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:05:47,759.759 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-08-31 21:05:50,156.156 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 21:05:50,160.160 INFO    ] Checking for system updates...
[2026-08-31 21:05:50,196.196 INFO    ] 200
[2026-08-31 21:05:50,199.199 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:05:50,254.254 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:05:50,256.256 INFO    ] No update needed
[2026-08-31 21:05:50,259.259 INFO    ] Checking for camera pi updates...
[2026-08-31 21:05:50,299.299 INFO    ] 200
[2026-08-31 21:05:50,302.302 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:05:50,347.347 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:05:50,440.440 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:05:50,443.443 INFO    ] No camera update needed
[2026-08-31 21:05:50,445.445 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:05:50,448.448 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:05:50,455.455 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:05:50,461.461 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:05:52,502.502 INFO    ] ================================================
[2026-08-31 21:05:52,517.517 INFO    ] Launching Daemon at Mon Aug 31 21:05:52 IST 2026
[2026-08-31 21:05:52,528.528 INFO    ] ================================================
[2026-08-31 21:05:53,101.101 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:05:53
[2026-08-31 21:05:53,685.685 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:05:53,945.945 INFO    ] Initializing speech engine...
[2026-08-31 21:05:53,952.952 INFO    ] 2026-08-31 21:05:53
[2026-08-31 21:05:54,253.253 INFO    ] 2026-08-31 21:05:54
[2026-08-31 21:05:54,287.287 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:05:54,496.496 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:05:54,510.510 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:05:54,677.677 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:05:54,685.685 INFO    ] time= 31/08/2026 21:05:54
[2026-08-31 21:05:54,693.693 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:05:54,707.707 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:05:54,811.811 INFO    ] No existing commands found in stream
[2026-08-31 21:05:59,836.836 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:05:59,839.839 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-08-31 21:06:01,914.914 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 21:06:01,921.921 INFO    ] Checking for system updates...
[2026-08-31 21:06:01,973.973 INFO    ] 200
[2026-08-31 21:06:01,975.975 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:06:02,041.041 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:06:02,044.044 INFO    ] No update needed
[2026-08-31 21:06:02,047.047 INFO    ] Checking for camera pi updates...
[2026-08-31 21:06:02,090.090 INFO    ] 200
[2026-08-31 21:06:02,093.093 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:06:02,146.146 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:06:02,263.263 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:06:02,266.266 INFO    ] No camera update needed
[2026-08-31 21:06:02,270.270 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:06:02,273.273 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:06:02,280.280 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:06:02,286.286 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:06:04,330.330 INFO    ] ================================================
[2026-08-31 21:06:04,345.345 INFO    ] Launching Daemon at Mon Aug 31 21:06:04 IST 2026
[2026-08-31 21:06:04,355.355 INFO    ] ================================================
[2026-08-31 21:06:04,937.937 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:06:04
[2026-08-31 21:06:05,534.534 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:06:05,811.811 INFO    ] Initializing speech engine...
[2026-08-31 21:06:05,820.820 INFO    ] 2026-08-31 21:06:05
[2026-08-31 21:06:06,078.078 INFO    ] 2026-08-31 21:06:06
[2026-08-31 21:06:06,129.129 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:06:06,356.356 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:06:06,361.361 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:06:06,494.494 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:06:06,559.559 INFO    ] time= 31/08/2026 21:06:06
[2026-08-31 21:06:06,618.618 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:06:06,627.627 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:06:06,773.773 INFO    ] No existing commands found in stream
[2026-08-31 21:06:11,791.791 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:06:11,794.794 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-08-31 21:06:14,903.903 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 21:06:14,906.906 INFO    ] Checking for system updates...
[2026-08-31 21:06:14,941.941 INFO    ] 200
[2026-08-31 21:06:14,944.944 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:06:14,999.999 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:06:15,001.001 INFO    ] No update needed
[2026-08-31 21:06:15,004.004 INFO    ] Checking for camera pi updates...
[2026-08-31 21:06:15,038.038 INFO    ] 200
[2026-08-31 21:06:15,040.040 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:06:15,080.080 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:06:15,150.150 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:06:15,152.152 INFO    ] No camera update needed
[2026-08-31 21:06:15,155.155 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:06:15,157.157 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:06:15,162.162 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:06:15,167.167 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:06:17,207.207 INFO    ] ================================================
[2026-08-31 21:06:17,222.222 INFO    ] Launching Daemon at Mon Aug 31 21:06:17 IST 2026
[2026-08-31 21:06:17,233.233 INFO    ] ================================================
[2026-08-31 21:06:17,812.812 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:06:17
[2026-08-31 21:06:18,409.409 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:06:18,685.685 INFO    ] Initializing speech engine...
[2026-08-31 21:06:18,692.692 INFO    ] 2026-08-31 21:06:18
[2026-08-31 21:06:18,958.958 INFO    ] 2026-08-31 21:06:18
[2026-08-31 21:06:19,015.015 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:06:19,246.246 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:06:19,269.269 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:06:19,474.474 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:06:19,518.518 INFO    ] time= 31/08/2026 21:06:19
[2026-08-31 21:06:19,534.534 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:06:19,544.544 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:06:19,660.660 INFO    ] No existing commands found in stream
[2026-08-31 21:06:24,686.686 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:06:24,689.689 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-08-31 21:06:28,904.904 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 21:06:28,907.907 INFO    ] Checking for system updates...
[2026-08-31 21:06:28,944.944 INFO    ] 200
[2026-08-31 21:06:28,947.947 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:06:29,009.009 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:06:29,012.012 INFO    ] No update needed
[2026-08-31 21:06:29,015.015 INFO    ] Checking for camera pi updates...
[2026-08-31 21:06:29,050.050 INFO    ] 200
[2026-08-31 21:06:29,053.053 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:06:29,098.098 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:06:29,182.182 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:06:29,185.185 INFO    ] No camera update needed
[2026-08-31 21:06:29,187.187 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:06:29,189.189 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:06:29,195.195 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:06:29,200.200 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:06:31,240.240 INFO    ] ================================================
[2026-08-31 21:06:31,255.255 INFO    ] Launching Daemon at Mon Aug 31 21:06:31 IST 2026
[2026-08-31 21:06:31,266.266 INFO    ] ================================================
[2026-08-31 21:06:31,879.879 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:06:31
[2026-08-31 21:06:32,517.517 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:06:32,809.809 INFO    ] Initializing speech engine...
[2026-08-31 21:06:32,816.816 INFO    ] 2026-08-31 21:06:32
[2026-08-31 21:06:33,113.113 INFO    ] 2026-08-31 21:06:33
[2026-08-31 21:06:33,148.148 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:06:33,354.354 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:06:33,368.368 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:06:33,537.537 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:06:33,544.544 INFO    ] time= 31/08/2026 21:06:33
[2026-08-31 21:06:33,550.550 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:06:33,616.616 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:06:33,747.747 INFO    ] No existing commands found in stream
[2026-08-31 21:06:38,772.772 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:06:38,775.775 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-08-31 21:06:43,116.116 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 21:06:43,119.119 INFO    ] Checking for system updates...
[2026-08-31 21:06:43,154.154 INFO    ] 200
[2026-08-31 21:06:43,157.157 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:06:43,216.216 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:06:43,219.219 INFO    ] No update needed
[2026-08-31 21:06:43,221.221 INFO    ] Checking for camera pi updates...
[2026-08-31 21:06:43,259.259 INFO    ] 200
[2026-08-31 21:06:43,261.261 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:06:43,307.307 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:06:43,434.434 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:06:43,436.436 INFO    ] No camera update needed
[2026-08-31 21:06:43,439.439 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:06:43,441.441 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:06:43,447.447 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:06:43,452.452 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:06:45,493.493 INFO    ] ================================================
[2026-08-31 21:06:45,508.508 INFO    ] Launching Daemon at Mon Aug 31 21:06:45 IST 2026
[2026-08-31 21:06:45,518.518 INFO    ] ================================================
[2026-08-31 21:06:46,097.097 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:06:46
[2026-08-31 21:06:46,692.692 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:06:46,976.976 INFO    ] Initializing speech engine...
[2026-08-31 21:06:46,990.990 INFO    ] 2026-08-31 21:06:46
[2026-08-31 21:06:47,248.248 INFO    ] 2026-08-31 21:06:47
[2026-08-31 21:06:47,283.283 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:06:47,457.457 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:06:47,469.469 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:06:47,612.612 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:06:47,619.619 INFO    ] time= 31/08/2026 21:06:47
[2026-08-31 21:06:47,659.659 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:06:47,685.685 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:06:47,794.794 INFO    ] No existing commands found in stream
[2026-08-31 21:06:52,819.819 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:06:52,822.822 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-08-31 21:06:56,704.704 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 21:06:56,707.707 INFO    ] Checking for system updates...
[2026-08-31 21:06:56,744.744 INFO    ] 200
[2026-08-31 21:06:56,747.747 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:06:56,800.800 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:06:56,803.803 INFO    ] No update needed
[2026-08-31 21:06:56,806.806 INFO    ] Checking for camera pi updates...
[2026-08-31 21:06:56,844.844 INFO    ] 200
[2026-08-31 21:06:56,847.847 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:06:56,889.889 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:06:56,966.966 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:06:56,969.969 INFO    ] No camera update needed
[2026-08-31 21:06:56,971.971 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:06:56,974.974 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:06:56,980.980 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:06:56,986.986 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:06:59,028.028 INFO    ] ================================================
[2026-08-31 21:06:59,044.044 INFO    ] Launching Daemon at Mon Aug 31 21:06:59 IST 2026
[2026-08-31 21:06:59,054.054 INFO    ] ================================================
[2026-08-31 21:06:59,619.619 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:06:59
[2026-08-31 21:07:00,208.208 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:07:00,486.486 INFO    ] Initializing speech engine...
[2026-08-31 21:07:00,493.493 INFO    ] 2026-08-31 21:07:00
[2026-08-31 21:07:00,740.740 INFO    ] 2026-08-31 21:07:00
[2026-08-31 21:07:00,806.806 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:07:01,033.033 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:07:01,040.040 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:07:01,273.273 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:07:01,297.297 INFO    ] time= 31/08/2026 21:07:01
[2026-08-31 21:07:01,313.313 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:07:01,322.322 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:07:01,436.436 INFO    ] No existing commands found in stream
[2026-08-31 21:07:06,460.460 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:07:06,463.463 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-08-31 21:07:09,429.429 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 21:07:09,432.432 INFO    ] Checking for system updates...
[2026-08-31 21:07:09,473.473 INFO    ] 200
[2026-08-31 21:07:09,475.475 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:07:09,527.527 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:07:09,530.530 INFO    ] No update needed
[2026-08-31 21:07:09,532.532 INFO    ] Checking for camera pi updates...
[2026-08-31 21:07:09,569.569 INFO    ] 200
[2026-08-31 21:07:09,572.572 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:07:09,612.612 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:07:09,691.691 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:07:09,694.694 INFO    ] No camera update needed
[2026-08-31 21:07:09,696.696 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:07:09,699.699 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:07:09,704.704 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:07:09,709.709 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:07:11,749.749 INFO    ] ================================================
[2026-08-31 21:07:11,765.765 INFO    ] Launching Daemon at Mon Aug 31 21:07:11 IST 2026
[2026-08-31 21:07:11,776.776 INFO    ] ================================================
[2026-08-31 21:07:12,347.347 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:07:12
[2026-08-31 21:07:12,943.943 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:07:13,204.204 INFO    ] Initializing speech engine...
[2026-08-31 21:07:13,213.213 INFO    ] 2026-08-31 21:07:13
[2026-08-31 21:07:13,511.511 INFO    ] 2026-08-31 21:07:13
[2026-08-31 21:07:13,538.538 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:07:13,750.750 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:07:13,765.765 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:07:13,926.926 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:07:13,935.935 INFO    ] time= 31/08/2026 21:07:13
[2026-08-31 21:07:13,940.940 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:07:13,946.946 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:07:14,053.053 INFO    ] No existing commands found in stream
[2026-08-31 21:07:19,083.083 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:07:19,086.086 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-08-31 21:07:22,752.752 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 21:07:22,754.754 INFO    ] Checking for system updates...
[2026-08-31 21:07:22,795.795 INFO    ] 200
[2026-08-31 21:07:22,797.797 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:07:22,856.856 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:07:22,859.859 INFO    ] No update needed
[2026-08-31 21:07:22,862.862 INFO    ] Checking for camera pi updates...
[2026-08-31 21:07:22,899.899 INFO    ] 200
[2026-08-31 21:07:22,902.902 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:07:22,947.947 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:07:23,035.035 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:07:23,038.038 INFO    ] No camera update needed
[2026-08-31 21:07:23,040.040 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:07:23,043.043 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:07:23,048.048 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:07:23,053.053 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:07:25,092.092 INFO    ] ================================================
[2026-08-31 21:07:25,109.109 INFO    ] Launching Daemon at Mon Aug 31 21:07:25 IST 2026
[2026-08-31 21:07:25,119.119 INFO    ] ================================================
[2026-08-31 21:07:25,772.772 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:07:25
[2026-08-31 21:07:26,445.445 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:07:26,753.753 INFO    ] Initializing speech engine...
[2026-08-31 21:07:26,766.766 INFO    ] 2026-08-31 21:07:26
[2026-08-31 21:07:27,050.050 INFO    ] 2026-08-31 21:07:27
[2026-08-31 21:07:27,097.097 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:07:27,455.455 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:07:27,508.508 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:07:27,709.709 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:07:27,750.750 INFO    ] time= 31/08/2026 21:07:27
[2026-08-31 21:07:27,804.804 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:07:27,859.859 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:07:28,000.000 INFO    ] No existing commands found in stream
[2026-08-31 21:07:33,020.020 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:07:33,024.024 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-08-31 21:07:36,569.569 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 21:07:36,572.572 INFO    ] Checking for system updates...
[2026-08-31 21:07:36,609.609 INFO    ] 200
[2026-08-31 21:07:36,612.612 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:07:36,665.665 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:07:36,668.668 INFO    ] No update needed
[2026-08-31 21:07:36,671.671 INFO    ] Checking for camera pi updates...
[2026-08-31 21:07:36,709.709 INFO    ] 200
[2026-08-31 21:07:36,712.712 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:07:36,756.756 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:07:36,833.833 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:07:36,835.835 INFO    ] No camera update needed
[2026-08-31 21:07:36,838.838 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:07:36,840.840 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:07:36,845.845 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:07:36,850.850 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:07:38,892.892 INFO    ] ================================================
[2026-08-31 21:07:38,907.907 INFO    ] Launching Daemon at Mon Aug 31 21:07:38 IST 2026
[2026-08-31 21:07:38,918.918 INFO    ] ================================================
[2026-08-31 21:07:39,577.577 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:07:39
[2026-08-31 21:07:40,251.251 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:07:40,554.554 INFO    ] Initializing speech engine...
[2026-08-31 21:07:40,562.562 INFO    ] 2026-08-31 21:07:40
[2026-08-31 21:07:40,844.844 INFO    ] 2026-08-31 21:07:40
[2026-08-31 21:07:40,899.899 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:07:41,134.134 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:07:41,140.140 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:07:41,357.357 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:07:41,405.405 INFO    ] time= 31/08/2026 21:07:41
[2026-08-31 21:07:41,423.423 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:07:41,433.433 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:07:41,594.594 INFO    ] No existing commands found in stream
[2026-08-31 21:07:46,620.620 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:07:46,624.624 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-08-31 21:07:47,722.722 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 21:07:47,725.725 INFO    ] Checking for system updates...
[2026-08-31 21:07:47,766.766 INFO    ] 200
[2026-08-31 21:07:47,769.769 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:07:47,834.834 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:07:47,837.837 INFO    ] No update needed
[2026-08-31 21:07:47,840.840 INFO    ] Checking for camera pi updates...
[2026-08-31 21:07:47,882.882 INFO    ] 200
[2026-08-31 21:07:47,885.885 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:07:47,931.931 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:07:48,115.115 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:07:48,118.118 INFO    ] No camera update needed
[2026-08-31 21:07:48,121.121 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:07:48,123.123 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:07:48,130.130 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:07:48,135.135 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:07:50,177.177 INFO    ] ================================================
[2026-08-31 21:07:50,192.192 INFO    ] Launching Daemon at Mon Aug 31 21:07:50 IST 2026
[2026-08-31 21:07:50,203.203 INFO    ] ================================================
[2026-08-31 21:07:50,768.768 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:07:50
[2026-08-31 21:07:51,347.347 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:07:51,617.617 INFO    ] Initializing speech engine...
[2026-08-31 21:07:51,627.627 INFO    ] 2026-08-31 21:07:51
[2026-08-31 21:07:51,874.874 INFO    ] 2026-08-31 21:07:51
[2026-08-31 21:07:51,909.909 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:07:52,108.108 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:07:52,147.147 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:07:52,314.314 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:07:52,348.348 INFO    ] time= 31/08/2026 21:07:52
[2026-08-31 21:07:52,397.397 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:07:52,447.447 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:07:52,501.501 INFO    ] No existing commands found in stream
[2026-08-31 21:07:57,513.513 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:07:57,515.515 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-08-31 21:07:58,032.032 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 21:07:58,035.035 INFO    ] Checking for system updates...
[2026-08-31 21:07:58,071.071 INFO    ] 200
[2026-08-31 21:07:58,074.074 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:07:58,133.133 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:07:58,135.135 INFO    ] No update needed
[2026-08-31 21:07:58,138.138 INFO    ] Checking for camera pi updates...
[2026-08-31 21:07:58,171.171 INFO    ] 200
[2026-08-31 21:07:58,173.173 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:07:58,213.213 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:07:58,314.314 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:07:58,316.316 INFO    ] No camera update needed
[2026-08-31 21:07:58,319.319 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:07:58,321.321 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:07:58,327.327 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:07:58,332.332 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:08:00,373.373 INFO    ] ================================================
[2026-08-31 21:08:00,389.389 INFO    ] Launching Daemon at Mon Aug 31 21:08:00 IST 2026
[2026-08-31 21:08:00,400.400 INFO    ] ================================================
[2026-08-31 21:08:01,054.054 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:08:01
[2026-08-31 21:08:01,729.729 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:08:02,192.192 INFO    ] Initializing speech engine...
[2026-08-31 21:08:02,195.195 INFO    ] 2026-08-31 21:08:02
[2026-08-31 21:08:02,600.600 INFO    ] 2026-08-31 21:08:02
[2026-08-31 21:08:02,659.659 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:08:02,878.878 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:08:02,900.900 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:08:03,113.113 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:08:03,121.121 INFO    ] time= 31/08/2026 21:08:03
[2026-08-31 21:08:03,141.141 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:08:03,167.167 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:08:03,297.297 INFO    ] No existing commands found in stream
[2026-08-31 21:08:08,333.333 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:08:08,336.336 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-08-31 21:08:09,354.354 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 21:08:09,357.357 INFO    ] Checking for system updates...
[2026-08-31 21:08:09,394.394 INFO    ] 200
[2026-08-31 21:08:09,397.397 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:08:09,453.453 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:08:09,455.455 INFO    ] No update needed
[2026-08-31 21:08:09,458.458 INFO    ] Checking for camera pi updates...
[2026-08-31 21:08:09,492.492 INFO    ] 200
[2026-08-31 21:08:09,495.495 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:08:09,536.536 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:08:09,618.618 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:08:09,621.621 INFO    ] No camera update needed
[2026-08-31 21:08:09,623.623 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:08:09,626.626 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:08:09,632.632 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:08:09,637.637 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:08:11,676.676 INFO    ] ================================================
[2026-08-31 21:08:11,692.692 INFO    ] Launching Daemon at Mon Aug 31 21:08:11 IST 2026
[2026-08-31 21:08:11,702.702 INFO    ] ================================================
[2026-08-31 21:08:12,267.267 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:08:12
[2026-08-31 21:08:12,853.853 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:08:13,124.124 INFO    ] Initializing speech engine...
[2026-08-31 21:08:13,133.133 INFO    ] 2026-08-31 21:08:13
[2026-08-31 21:08:13,385.385 INFO    ] 2026-08-31 21:08:13
[2026-08-31 21:08:13,420.420 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:08:13,594.594 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:08:13,606.606 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:08:13,754.754 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:08:13,760.760 INFO    ] time= 31/08/2026 21:08:13
[2026-08-31 21:08:13,766.766 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:08:13,807.807 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:08:13,960.960 INFO    ] No existing commands found in stream
[2026-08-31 21:08:18,971.971 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:08:18,974.974 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-08-31 21:08:22,883.883 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 21:08:22,886.886 INFO    ] Checking for system updates...
[2026-08-31 21:08:22,923.923 INFO    ] 200
[2026-08-31 21:08:22,926.926 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:08:22,982.982 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:08:22,984.984 INFO    ] No update needed
[2026-08-31 21:08:22,987.987 INFO    ] Checking for camera pi updates...
[2026-08-31 21:08:23,020.020 INFO    ] 200
[2026-08-31 21:08:23,022.022 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:08:23,062.062 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:08:23,152.152 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:08:23,154.154 INFO    ] No camera update needed
[2026-08-31 21:08:23,156.156 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:08:23,159.159 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:08:23,164.164 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:08:23,169.169 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:08:25,208.208 INFO    ] ================================================
[2026-08-31 21:08:25,223.223 INFO    ] Launching Daemon at Mon Aug 31 21:08:25 IST 2026
[2026-08-31 21:08:25,233.233 INFO    ] ================================================
[2026-08-31 21:08:25,811.811 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:08:25
[2026-08-31 21:08:26,407.407 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:08:26,677.677 INFO    ] Initializing speech engine...
[2026-08-31 21:08:26,687.687 INFO    ] 2026-08-31 21:08:26
[2026-08-31 21:08:26,934.934 INFO    ] 2026-08-31 21:08:26
[2026-08-31 21:08:26,969.969 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:08:27,220.220 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:08:27,229.229 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:08:27,360.360 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:08:27,407.407 INFO    ] time= 31/08/2026 21:08:27
[2026-08-31 21:08:27,461.461 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:08:27,494.494 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:08:27,621.621 INFO    ] No existing commands found in stream
[2026-08-31 21:08:32,649.649 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:08:32,652.652 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-08-31 21:08:33,970.970 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 21:08:33,972.972 INFO    ] Checking for system updates...
[2026-08-31 21:08:34,008.008 INFO    ] 200
[2026-08-31 21:08:34,011.011 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:08:34,068.068 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:08:34,071.071 INFO    ] No update needed
[2026-08-31 21:08:34,073.073 INFO    ] Checking for camera pi updates...
[2026-08-31 21:08:34,107.107 INFO    ] 200
[2026-08-31 21:08:34,111.111 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:08:34,160.160 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:08:34,250.250 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:08:34,252.252 INFO    ] No camera update needed
[2026-08-31 21:08:34,255.255 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:08:34,257.257 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:08:34,263.263 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:08:34,268.268 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:08:36,309.309 INFO    ] ================================================
[2026-08-31 21:08:36,324.324 INFO    ] Launching Daemon at Mon Aug 31 21:08:36 IST 2026
[2026-08-31 21:08:36,335.335 INFO    ] ================================================
[2026-08-31 21:08:36,955.955 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:08:36
[2026-08-31 21:08:37,595.595 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:08:37,887.887 INFO    ] Initializing speech engine...
[2026-08-31 21:08:37,894.894 INFO    ] 2026-08-31 21:08:37
[2026-08-31 21:08:38,178.178 INFO    ] 2026-08-31 21:08:38
[2026-08-31 21:08:38,221.221 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:08:38,467.467 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:08:38,473.473 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:08:38,668.668 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:08:38,711.711 INFO    ] time= 31/08/2026 21:08:38
[2026-08-31 21:08:38,717.717 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:08:38,739.739 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:08:38,862.862 INFO    ] No existing commands found in stream
[2026-08-31 21:08:43,878.878 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:08:43,881.881 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-08-31 21:08:47,489.489 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 21:08:47,492.492 INFO    ] Checking for system updates...
[2026-08-31 21:08:47,531.531 INFO    ] 200
[2026-08-31 21:08:47,534.534 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:08:47,593.593 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:08:47,596.596 INFO    ] No update needed
[2026-08-31 21:08:47,599.599 INFO    ] Checking for camera pi updates...
[2026-08-31 21:08:47,633.633 INFO    ] 200
[2026-08-31 21:08:47,635.635 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:08:47,677.677 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:08:47,769.769 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:08:47,777.777 INFO    ] No camera update needed
[2026-08-31 21:08:47,780.780 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:08:47,783.783 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:08:47,788.788 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:08:47,794.794 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:08:49,835.835 INFO    ] ================================================
[2026-08-31 21:08:49,850.850 INFO    ] Launching Daemon at Mon Aug 31 21:08:49 IST 2026
[2026-08-31 21:08:49,860.860 INFO    ] ================================================
[2026-08-31 21:08:50,439.439 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:08:50
[2026-08-31 21:08:51,034.034 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:08:51,320.320 INFO    ] Initializing speech engine...
[2026-08-31 21:08:51,327.327 INFO    ] 2026-08-31 21:08:51
[2026-08-31 21:08:51,584.584 INFO    ] 2026-08-31 21:08:51
[2026-08-31 21:08:51,622.622 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:08:51,833.833 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:08:51,842.842 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:08:52,051.051 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:08:52,060.060 INFO    ] time= 31/08/2026 21:08:52
[2026-08-31 21:08:52,120.120 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:08:52,170.170 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:08:52,258.258 INFO    ] No existing commands found in stream
[2026-08-31 21:08:57,269.269 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:08:57,272.272 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-08-31 21:08:58,423.423 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 21:08:58,426.426 INFO    ] Checking for system updates...
[2026-08-31 21:08:58,464.464 INFO    ] 200
[2026-08-31 21:08:58,467.467 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:08:58,519.519 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:08:58,521.521 INFO    ] No update needed
[2026-08-31 21:08:58,523.523 INFO    ] Checking for camera pi updates...
[2026-08-31 21:08:58,557.557 INFO    ] 200
[2026-08-31 21:08:58,559.559 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:08:58,599.599 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:08:58,690.690 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:08:58,692.692 INFO    ] No camera update needed
[2026-08-31 21:08:58,694.694 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:08:58,697.697 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:08:58,702.702 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:08:58,707.707 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:09:00,747.747 INFO    ] ================================================
[2026-08-31 21:09:00,761.761 INFO    ] Launching Daemon at Mon Aug 31 21:09:00 IST 2026
[2026-08-31 21:09:00,772.772 INFO    ] ================================================
[2026-08-31 21:09:01,350.350 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:09:01
[2026-08-31 21:09:01,961.961 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:09:02,461.461 INFO    ] Initializing speech engine...
[2026-08-31 21:09:02,469.469 INFO    ] 2026-08-31 21:09:02
[2026-08-31 21:09:02,748.748 INFO    ] 2026-08-31 21:09:02
[2026-08-31 21:09:02,839.839 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:09:03,042.042 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:09:03,090.090 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:09:03,338.338 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:09:03,383.383 INFO    ] time= 31/08/2026 21:09:03
[2026-08-31 21:09:03,414.414 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:09:03,436.436 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:09:03,578.578 INFO    ] No existing commands found in stream
[2026-08-31 21:09:08,598.598 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:09:08,601.601 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-08-31 21:09:11,452.452 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 21:09:11,455.455 INFO    ] Checking for system updates...
[2026-08-31 21:09:11,492.492 INFO    ] 200
[2026-08-31 21:09:11,495.495 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:09:11,558.558 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:09:11,561.561 INFO    ] No update needed
[2026-08-31 21:09:11,564.564 INFO    ] Checking for camera pi updates...
[2026-08-31 21:09:11,599.599 INFO    ] 200
[2026-08-31 21:09:11,602.602 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:09:11,643.643 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:09:11,739.739 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:09:11,742.742 INFO    ] No camera update needed
[2026-08-31 21:09:11,745.745 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:09:11,748.748 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:09:11,754.754 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:09:11,761.761 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:09:13,803.803 INFO    ] ================================================
[2026-08-31 21:09:13,818.818 INFO    ] Launching Daemon at Mon Aug 31 21:09:13 IST 2026
[2026-08-31 21:09:13,828.828 INFO    ] ================================================
[2026-08-31 21:09:14,394.394 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:09:14
[2026-08-31 21:09:15,048.048 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:09:15,362.362 INFO    ] Initializing speech engine...
[2026-08-31 21:09:15,374.374 INFO    ] 2026-08-31 21:09:15
[2026-08-31 21:09:15,691.691 INFO    ] 2026-08-31 21:09:15
[2026-08-31 21:09:15,774.774 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:09:15,988.988 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:09:15,994.994 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:09:16,190.190 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:09:16,209.209 INFO    ] time= 31/08/2026 21:09:16
[2026-08-31 21:09:16,218.218 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:09:16,245.245 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:09:16,350.350 INFO    ] No existing commands found in stream
[2026-08-31 21:09:21,364.364 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:09:21,368.368 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-08-31 21:09:22,023.023 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 21:09:22,026.026 INFO    ] Checking for system updates...
[2026-08-31 21:09:22,064.064 INFO    ] 200
[2026-08-31 21:09:22,067.067 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:09:22,128.128 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:09:22,131.131 INFO    ] No update needed
[2026-08-31 21:09:22,133.133 INFO    ] Checking for camera pi updates...
[2026-08-31 21:09:22,171.171 INFO    ] 200
[2026-08-31 21:09:22,174.174 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:09:22,214.214 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:09:22,311.311 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:09:22,314.314 INFO    ] No camera update needed
[2026-08-31 21:09:22,316.316 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:09:22,319.319 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:09:22,324.324 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:09:22,329.329 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:09:24,370.370 INFO    ] ================================================
[2026-08-31 21:09:24,385.385 INFO    ] Launching Daemon at Mon Aug 31 21:09:24 IST 2026
[2026-08-31 21:09:24,396.396 INFO    ] ================================================
[2026-08-31 21:09:25,065.065 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:09:25
[2026-08-31 21:09:25,690.690 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:09:25,951.951 INFO    ] Initializing speech engine...
[2026-08-31 21:09:25,970.970 INFO    ] 2026-08-31 21:09:25
[2026-08-31 21:09:26,222.222 INFO    ] 2026-08-31 21:09:26
[2026-08-31 21:09:26,258.258 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:09:26,513.513 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:09:26,519.519 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:09:26,720.720 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:09:26,776.776 INFO    ] time= 31/08/2026 21:09:26
[2026-08-31 21:09:26,782.782 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:09:26,801.801 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:09:26,933.933 INFO    ] No existing commands found in stream
[2026-08-31 21:09:31,951.951 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:09:31,954.954 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-08-31 21:09:35,955.955 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 21:09:35,958.958 INFO    ] Checking for system updates...
[2026-08-31 21:09:35,994.994 INFO    ] 200
[2026-08-31 21:09:35,996.996 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:09:36,050.050 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:09:36,053.053 INFO    ] No update needed
[2026-08-31 21:09:36,055.055 INFO    ] Checking for camera pi updates...
[2026-08-31 21:09:36,089.089 INFO    ] 200
[2026-08-31 21:09:36,091.091 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:09:36,132.132 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:09:36,220.220 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:09:36,223.223 INFO    ] No camera update needed
[2026-08-31 21:09:36,225.225 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:09:36,227.227 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:09:36,233.233 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:09:36,238.238 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:09:38,277.277 INFO    ] ================================================
[2026-08-31 21:09:38,293.293 INFO    ] Launching Daemon at Mon Aug 31 21:09:38 IST 2026
[2026-08-31 21:09:38,303.303 INFO    ] ================================================
[2026-08-31 21:09:38,982.982 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:09:38
[2026-08-31 21:09:39,676.676 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:09:39,988.988 INFO    ] Initializing speech engine...
[2026-08-31 21:09:40,001.001 INFO    ] 2026-08-31 21:09:39
[2026-08-31 21:09:40,296.296 INFO    ] 2026-08-31 21:09:40
[2026-08-31 21:09:40,335.335 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:09:40,561.561 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:09:40,566.566 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:09:40,698.698 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:09:40,769.769 INFO    ] time= 31/08/2026 21:09:40
[2026-08-31 21:09:40,824.824 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:09:40,831.831 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:09:40,973.973 INFO    ] No existing commands found in stream
[2026-08-31 21:09:45,988.988 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:09:45,991.991 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-08-31 21:09:49,804.804 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 21:09:49,807.807 INFO    ] Checking for system updates...
[2026-08-31 21:09:49,843.843 INFO    ] 200
[2026-08-31 21:09:49,845.845 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:09:49,898.898 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:09:49,900.900 INFO    ] No update needed
[2026-08-31 21:09:49,903.903 INFO    ] Checking for camera pi updates...
[2026-08-31 21:09:49,937.937 INFO    ] 200
[2026-08-31 21:09:49,940.940 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:09:49,980.980 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:09:50,160.160 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:09:50,162.162 INFO    ] No camera update needed
[2026-08-31 21:09:50,165.165 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:09:50,167.167 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:09:50,173.173 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:09:50,178.178 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:09:52,219.219 INFO    ] ================================================
[2026-08-31 21:09:52,234.234 INFO    ] Launching Daemon at Mon Aug 31 21:09:52 IST 2026
[2026-08-31 21:09:52,244.244 INFO    ] ================================================
[2026-08-31 21:09:52,809.809 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:09:52
[2026-08-31 21:09:53,395.395 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:09:53,646.646 INFO    ] Initializing speech engine...
[2026-08-31 21:09:53,669.669 INFO    ] 2026-08-31 21:09:53
[2026-08-31 21:09:53,923.923 INFO    ] 2026-08-31 21:09:53
[2026-08-31 21:09:53,958.958 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:09:54,157.157 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:09:54,207.207 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:09:54,361.361 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:09:54,404.404 INFO    ] time= 31/08/2026 21:09:54
[2026-08-31 21:09:54,458.458 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:09:54,498.498 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:09:54,633.633 INFO    ] No existing commands found in stream
[2026-08-31 21:09:59,655.655 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:09:59,658.658 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-08-31 21:10:03,044.044 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 21:10:03,048.048 INFO    ] Checking for system updates...
[2026-08-31 21:10:03,097.097 INFO    ] 200
[2026-08-31 21:10:03,100.100 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:10:03,214.214 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:10:03,217.217 INFO    ] No update needed
[2026-08-31 21:10:03,220.220 INFO    ] Checking for camera pi updates...
[2026-08-31 21:10:03,262.262 INFO    ] 200
[2026-08-31 21:10:03,265.265 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:10:03,321.321 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:10:03,471.471 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:10:03,474.474 INFO    ] No camera update needed
[2026-08-31 21:10:03,477.477 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:10:03,480.480 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:10:03,487.487 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:10:03,494.494 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:10:05,537.537 INFO    ] ================================================
[2026-08-31 21:10:05,552.552 INFO    ] Launching Daemon at Mon Aug 31 21:10:05 IST 2026
[2026-08-31 21:10:05,563.563 INFO    ] ================================================
[2026-08-31 21:10:06,128.128 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:10:06
[2026-08-31 21:10:06,745.745 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:10:07,044.044 INFO    ] Initializing speech engine...
[2026-08-31 21:10:07,050.050 INFO    ] 2026-08-31 21:10:07
[2026-08-31 21:10:07,352.352 INFO    ] 2026-08-31 21:10:07
[2026-08-31 21:10:07,394.394 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:10:07,659.659 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:10:07,663.663 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:10:07,814.814 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:10:07,841.841 INFO    ] time= 31/08/2026 21:10:07
[2026-08-31 21:10:07,885.885 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:10:07,939.939 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:10:08,036.036 INFO    ] No existing commands found in stream
[2026-08-31 21:10:13,071.071 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:10:13,074.074 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-08-31 21:10:16,906.906 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 21:10:16,909.909 INFO    ] Checking for system updates...
[2026-08-31 21:10:16,944.944 INFO    ] 200
[2026-08-31 21:10:16,946.946 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:10:17,000.000 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:10:17,003.003 INFO    ] No update needed
[2026-08-31 21:10:17,005.005 INFO    ] Checking for camera pi updates...
[2026-08-31 21:10:17,038.038 INFO    ] 200
[2026-08-31 21:10:17,041.041 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:10:17,081.081 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:10:17,179.179 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:10:17,181.181 INFO    ] No camera update needed
[2026-08-31 21:10:17,184.184 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:10:17,186.186 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:10:17,191.191 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:10:17,196.196 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:10:19,236.236 INFO    ] ================================================
[2026-08-31 21:10:19,252.252 INFO    ] Launching Daemon at Mon Aug 31 21:10:19 IST 2026
[2026-08-31 21:10:19,263.263 INFO    ] ================================================
[2026-08-31 21:10:19,842.842 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:10:19
[2026-08-31 21:10:20,436.436 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:10:20,712.712 INFO    ] Initializing speech engine...
[2026-08-31 21:10:20,720.720 INFO    ] 2026-08-31 21:10:20
[2026-08-31 21:10:21,027.027 INFO    ] 2026-08-31 21:10:20
[2026-08-31 21:10:21,110.110 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:10:21,385.385 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:10:21,396.396 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:10:21,617.617 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:10:21,670.670 INFO    ] time= 31/08/2026 21:10:21
[2026-08-31 21:10:21,718.718 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:10:21,774.774 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:10:21,915.915 INFO    ] No existing commands found in stream
[2026-08-31 21:10:26,936.936 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:10:26,939.939 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-08-31 21:10:27,969.969 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 21:10:27,971.971 INFO    ] Checking for system updates...
[2026-08-31 21:10:28,007.007 INFO    ] 200
[2026-08-31 21:10:28,009.009 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:10:28,061.061 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:10:28,064.064 INFO    ] No update needed
[2026-08-31 21:10:28,066.066 INFO    ] Checking for camera pi updates...
[2026-08-31 21:10:28,099.099 INFO    ] 200
[2026-08-31 21:10:28,102.102 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:10:28,146.146 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:10:28,243.243 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:10:28,245.245 INFO    ] No camera update needed
[2026-08-31 21:10:28,247.247 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:10:28,250.250 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:10:28,255.255 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:10:28,260.260 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:10:30,300.300 INFO    ] ================================================
[2026-08-31 21:10:30,315.315 INFO    ] Launching Daemon at Mon Aug 31 21:10:30 IST 2026
[2026-08-31 21:10:30,326.326 INFO    ] ================================================
[2026-08-31 21:10:30,890.890 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:10:30
[2026-08-31 21:10:31,473.473 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:10:31,741.741 INFO    ] Initializing speech engine...
[2026-08-31 21:10:31,749.749 INFO    ] 2026-08-31 21:10:31
[2026-08-31 21:10:31,999.999 INFO    ] 2026-08-31 21:10:31
[2026-08-31 21:10:32,033.033 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:10:32,223.223 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:10:32,254.254 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:10:32,397.397 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:10:32,406.406 INFO    ] time= 31/08/2026 21:10:32
[2026-08-31 21:10:32,460.460 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:10:32,482.482 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:10:32,608.608 INFO    ] No existing commands found in stream
[2026-08-31 21:10:37,625.625 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:10:37,629.629 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-08-31 21:10:39,476.476 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 21:10:39,479.479 INFO    ] Checking for system updates...
[2026-08-31 21:10:39,520.520 INFO    ] 200
[2026-08-31 21:10:39,523.523 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:10:39,576.576 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:10:39,579.579 INFO    ] No update needed
[2026-08-31 21:10:39,582.582 INFO    ] Checking for camera pi updates...
[2026-08-31 21:10:39,621.621 INFO    ] 200
[2026-08-31 21:10:39,624.624 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:10:39,665.665 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:10:39,752.752 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:10:39,755.755 INFO    ] No camera update needed
[2026-08-31 21:10:39,758.758 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:10:39,760.760 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:10:39,767.767 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:10:39,772.772 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:10:41,814.814 INFO    ] ================================================
[2026-08-31 21:10:41,830.830 INFO    ] Launching Daemon at Mon Aug 31 21:10:41 IST 2026
[2026-08-31 21:10:41,841.841 INFO    ] ================================================
[2026-08-31 21:10:42,406.406 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:10:42
[2026-08-31 21:10:42,991.991 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:10:43,238.238 INFO    ] Initializing speech engine...
[2026-08-31 21:10:43,252.252 INFO    ] 2026-08-31 21:10:43
[2026-08-31 21:10:43,521.521 INFO    ] 2026-08-31 21:10:43
[2026-08-31 21:10:43,556.556 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:10:43,753.753 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:10:43,760.760 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:10:43,960.960 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:10:43,994.994 INFO    ] time= 31/08/2026 21:10:43
[2026-08-31 21:10:44,043.043 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:10:44,093.093 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:10:44,230.230 INFO    ] No existing commands found in stream
[2026-08-31 21:10:49,250.250 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:10:49,253.253 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-08-31 21:10:50,605.605 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 21:10:50,608.608 INFO    ] Checking for system updates...
[2026-08-31 21:10:50,649.649 INFO    ] 200
[2026-08-31 21:10:50,652.652 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:10:50,721.721 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:10:50,724.724 INFO    ] No update needed
[2026-08-31 21:10:50,727.727 INFO    ] Checking for camera pi updates...
[2026-08-31 21:10:50,762.762 INFO    ] 200
[2026-08-31 21:10:50,765.765 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:10:50,812.812 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:10:50,911.911 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:10:50,913.913 INFO    ] No camera update needed
[2026-08-31 21:10:50,916.916 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:10:50,919.919 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:10:50,925.925 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:10:50,931.931 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:10:52,973.973 INFO    ] ================================================
[2026-08-31 21:10:52,989.989 INFO    ] Launching Daemon at Mon Aug 31 21:10:52 IST 2026
[2026-08-31 21:10:53,000.000 INFO    ] ================================================
[2026-08-31 21:10:53,594.594 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:10:53
[2026-08-31 21:10:54,192.192 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:10:54,472.472 INFO    ] Initializing speech engine...
[2026-08-31 21:10:54,482.482 INFO    ] 2026-08-31 21:10:54
[2026-08-31 21:10:54,757.757 INFO    ] 2026-08-31 21:10:54
[2026-08-31 21:10:54,794.794 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:10:54,993.993 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:10:55,008.008 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:10:55,169.169 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:10:55,178.178 INFO    ] time= 31/08/2026 21:10:55
[2026-08-31 21:10:55,186.186 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:10:55,250.250 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:10:55,405.405 INFO    ] No existing commands found in stream
[2026-08-31 21:11:00,415.415 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:11:00,419.419 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-08-31 21:11:03,444.444 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 21:11:03,446.446 INFO    ] Checking for system updates...
[2026-08-31 21:11:03,491.491 INFO    ] 200
[2026-08-31 21:11:03,494.494 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:11:03,546.546 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:11:03,550.550 INFO    ] No update needed
[2026-08-31 21:11:03,552.552 INFO    ] Checking for camera pi updates...
[2026-08-31 21:11:03,591.591 INFO    ] 200
[2026-08-31 21:11:03,594.594 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:11:03,640.640 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:11:03,725.725 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:11:03,728.728 INFO    ] No camera update needed
[2026-08-31 21:11:03,731.731 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:11:03,734.734 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:11:03,740.740 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:11:03,746.746 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:11:05,790.790 INFO    ] ================================================
[2026-08-31 21:11:05,804.804 INFO    ] Launching Daemon at Mon Aug 31 21:11:05 IST 2026
[2026-08-31 21:11:05,816.816 INFO    ] ================================================
[2026-08-31 21:11:06,420.420 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:11:06
[2026-08-31 21:11:07,109.109 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:11:07,429.429 INFO    ] Initializing speech engine...
[2026-08-31 21:11:07,435.435 INFO    ] 2026-08-31 21:11:07
[2026-08-31 21:11:07,720.720 INFO    ] 2026-08-31 21:11:07
[2026-08-31 21:11:07,814.814 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:11:08,023.023 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:11:08,029.029 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:11:08,219.219 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:11:08,274.274 INFO    ] time= 31/08/2026 21:11:08
[2026-08-31 21:11:08,303.303 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:11:08,309.309 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:11:08,440.440 INFO    ] No existing commands found in stream
[2026-08-31 21:11:13,458.458 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:11:13,461.461 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-08-31 21:11:17,113.113 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 21:11:17,115.115 INFO    ] Checking for system updates...
[2026-08-31 21:11:17,151.151 INFO    ] 200
[2026-08-31 21:11:17,154.154 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:11:17,206.206 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:11:17,209.209 INFO    ] No update needed
[2026-08-31 21:11:17,211.211 INFO    ] Checking for camera pi updates...
[2026-08-31 21:11:17,244.244 INFO    ] 200
[2026-08-31 21:11:17,247.247 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:11:17,288.288 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:11:17,372.372 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:11:17,374.374 INFO    ] No camera update needed
[2026-08-31 21:11:17,376.376 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:11:17,379.379 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:11:17,384.384 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:11:17,389.389 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:11:19,429.429 INFO    ] ================================================
[2026-08-31 21:11:19,445.445 INFO    ] Launching Daemon at Mon Aug 31 21:11:19 IST 2026
[2026-08-31 21:11:19,456.456 INFO    ] ================================================
[2026-08-31 21:11:20,023.023 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:11:20
[2026-08-31 21:11:20,603.603 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:11:20,873.873 INFO    ] Initializing speech engine...
[2026-08-31 21:11:20,882.882 INFO    ] 2026-08-31 21:11:20
[2026-08-31 21:11:21,129.129 INFO    ] 2026-08-31 21:11:21
[2026-08-31 21:11:21,164.164 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:11:21,372.372 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:11:21,426.426 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:11:21,574.574 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:11:21,629.629 INFO    ] time= 31/08/2026 21:11:21
[2026-08-31 21:11:21,678.678 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:11:21,702.702 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:11:21,820.820 INFO    ] No existing commands found in stream
[2026-08-31 21:11:26,842.842 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:11:26,845.845 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-08-31 21:11:28,641.641 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 21:11:28,643.643 INFO    ] Checking for system updates...
[2026-08-31 21:11:28,680.680 INFO    ] 200
[2026-08-31 21:11:28,683.683 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:11:28,737.737 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:11:28,740.740 INFO    ] No update needed
[2026-08-31 21:11:28,743.743 INFO    ] Checking for camera pi updates...
[2026-08-31 21:11:28,778.778 INFO    ] 200
[2026-08-31 21:11:28,780.780 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:11:28,822.822 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:11:28,904.904 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:11:28,907.907 INFO    ] No camera update needed
[2026-08-31 21:11:28,910.910 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:11:28,913.913 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:11:28,919.919 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:11:28,926.926 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:11:30,967.967 INFO    ] ================================================
[2026-08-31 21:11:30,982.982 INFO    ] Launching Daemon at Mon Aug 31 21:11:30 IST 2026
[2026-08-31 21:11:30,994.994 INFO    ] ================================================
[2026-08-31 21:11:31,588.588 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:11:31
[2026-08-31 21:11:32,215.215 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:11:32,550.550 INFO    ] Initializing speech engine...
[2026-08-31 21:11:32,562.562 INFO    ] 2026-08-31 21:11:32
[2026-08-31 21:11:32,858.858 INFO    ] 2026-08-31 21:11:32
[2026-08-31 21:11:32,913.913 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:11:33,142.142 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:11:33,154.154 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:11:33,368.368 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:11:33,407.407 INFO    ] time= 31/08/2026 21:11:33
[2026-08-31 21:11:33,414.414 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:11:33,436.436 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:11:33,565.565 INFO    ] No existing commands found in stream
[2026-08-31 21:11:38,589.589 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:11:38,592.592 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-08-31 21:11:39,754.754 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 21:11:39,757.757 INFO    ] Checking for system updates...
[2026-08-31 21:11:39,794.794 INFO    ] 200
[2026-08-31 21:11:39,797.797 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:11:39,859.859 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:11:39,862.862 INFO    ] No update needed
[2026-08-31 21:11:39,865.865 INFO    ] Checking for camera pi updates...
[2026-08-31 21:11:39,904.904 INFO    ] 200
[2026-08-31 21:11:39,907.907 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:11:39,959.959 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:11:40,047.047 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:11:40,050.050 INFO    ] No camera update needed
[2026-08-31 21:11:40,053.053 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:11:40,055.055 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:11:40,062.062 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:11:40,068.068 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:11:42,109.109 INFO    ] ================================================
[2026-08-31 21:11:42,124.124 INFO    ] Launching Daemon at Mon Aug 31 21:11:42 IST 2026
[2026-08-31 21:11:42,136.136 INFO    ] ================================================
[2026-08-31 21:11:42,716.716 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:11:42
[2026-08-31 21:11:43,334.334 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:11:43,612.612 INFO    ] Initializing speech engine...
[2026-08-31 21:11:43,621.621 INFO    ] 2026-08-31 21:11:43
[2026-08-31 21:11:43,888.888 INFO    ] 2026-08-31 21:11:43
[2026-08-31 21:11:43,941.941 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:11:44,163.163 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:11:44,172.172 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:11:44,377.377 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:11:44,431.431 INFO    ] time= 31/08/2026 21:11:44
[2026-08-31 21:11:44,437.437 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:11:44,455.455 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:11:44,585.585 INFO    ] No existing commands found in stream
[2026-08-31 21:11:49,600.600 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:11:49,603.603 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-08-31 21:11:53,356.356 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 21:11:53,358.358 INFO    ] Checking for system updates...
[2026-08-31 21:11:53,399.399 INFO    ] 200
[2026-08-31 21:11:53,402.402 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:11:53,462.462 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:11:53,465.465 INFO    ] No update needed
[2026-08-31 21:11:53,467.467 INFO    ] Checking for camera pi updates...
[2026-08-31 21:11:53,505.505 INFO    ] 200
[2026-08-31 21:11:53,507.507 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:11:53,553.553 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:11:53,739.739 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:11:53,742.742 INFO    ] No camera update needed
[2026-08-31 21:11:53,744.744 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:11:53,746.746 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:11:53,752.752 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:11:53,757.757 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:11:55,799.799 INFO    ] ================================================
[2026-08-31 21:11:55,814.814 INFO    ] Launching Daemon at Mon Aug 31 21:11:55 IST 2026
[2026-08-31 21:11:55,826.826 INFO    ] ================================================
[2026-08-31 21:11:56,392.392 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:11:56
[2026-08-31 21:11:56,975.975 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:11:57,246.246 INFO    ] Initializing speech engine...
[2026-08-31 21:11:57,257.257 INFO    ] 2026-08-31 21:11:57
[2026-08-31 21:11:57,505.505 INFO    ] 2026-08-31 21:11:57
[2026-08-31 21:11:57,541.541 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:11:57,715.715 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:11:57,728.728 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:11:57,875.875 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:11:57,880.880 INFO    ] time= 31/08/2026 21:11:57
[2026-08-31 21:11:57,886.886 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:11:57,939.939 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:11:58,068.068 INFO    ] No existing commands found in stream
[2026-08-31 21:12:03,089.089 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:12:03,092.092 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-08-31 21:12:05,870.870 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 21:12:05,872.872 INFO    ] Checking for system updates...
[2026-08-31 21:12:05,908.908 INFO    ] 200
[2026-08-31 21:12:05,911.911 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:12:05,964.964 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:12:05,967.967 INFO    ] No update needed
[2026-08-31 21:12:05,970.970 INFO    ] Checking for camera pi updates...
[2026-08-31 21:12:06,004.004 INFO    ] 200
[2026-08-31 21:12:06,006.006 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:12:06,048.048 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:12:06,111.111 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:12:06,113.113 INFO    ] No camera update needed
[2026-08-31 21:12:06,116.116 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:12:06,119.119 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:12:06,125.125 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:12:06,130.130 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:12:08,170.170 INFO    ] ================================================
[2026-08-31 21:12:08,185.185 INFO    ] Launching Daemon at Mon Aug 31 21:12:08 IST 2026
[2026-08-31 21:12:08,196.196 INFO    ] ================================================
[2026-08-31 21:12:08,767.767 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:12:08
[2026-08-31 21:12:09,424.424 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:12:09,674.674 INFO    ] Initializing speech engine...
[2026-08-31 21:12:09,697.697 INFO    ] 2026-08-31 21:12:09
[2026-08-31 21:12:09,955.955 INFO    ] 2026-08-31 21:12:09
[2026-08-31 21:12:09,993.993 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:12:10,253.253 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:12:10,265.265 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:12:10,399.399 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:12:10,452.452 INFO    ] time= 31/08/2026 21:12:10
[2026-08-31 21:12:10,520.520 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:12:10,537.537 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:12:10,679.679 INFO    ] No existing commands found in stream
[2026-08-31 21:12:15,701.701 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:12:15,704.704 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-08-31 21:12:17,521.521 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 21:12:17,524.524 INFO    ] Checking for system updates...
[2026-08-31 21:12:17,561.561 INFO    ] 200
[2026-08-31 21:12:17,563.563 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:12:17,616.616 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:12:17,619.619 INFO    ] No update needed
[2026-08-31 21:12:17,622.622 INFO    ] Checking for camera pi updates...
[2026-08-31 21:12:17,660.660 INFO    ] 200
[2026-08-31 21:12:17,663.663 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:12:17,717.717 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:12:17,804.804 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:12:17,807.807 INFO    ] No camera update needed
[2026-08-31 21:12:17,810.810 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:12:17,812.812 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:12:17,818.818 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:12:17,824.824 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:12:19,864.864 INFO    ] ================================================
[2026-08-31 21:12:19,880.880 INFO    ] Launching Daemon at Mon Aug 31 21:12:19 IST 2026
[2026-08-31 21:12:19,890.890 INFO    ] ================================================
[2026-08-31 21:12:20,534.534 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:12:20
[2026-08-31 21:12:21,195.195 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:12:21,479.479 INFO    ] Initializing speech engine...
[2026-08-31 21:12:21,485.485 INFO    ] 2026-08-31 21:12:21
[2026-08-31 21:12:21,743.743 INFO    ] 2026-08-31 21:12:21
[2026-08-31 21:12:21,793.793 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:12:22,059.059 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:12:22,086.086 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:12:22,265.265 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:12:22,298.298 INFO    ] time= 31/08/2026 21:12:22
[2026-08-31 21:12:22,304.304 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:12:22,325.325 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:12:22,443.443 INFO    ] No existing commands found in stream
[2026-08-31 21:12:27,463.463 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:12:27,466.466 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-08-31 21:12:30,125.125 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 21:12:30,128.128 INFO    ] Checking for system updates...
[2026-08-31 21:12:30,168.168 INFO    ] 200
[2026-08-31 21:12:30,171.171 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:12:30,230.230 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:12:30,232.232 INFO    ] No update needed
[2026-08-31 21:12:30,235.235 INFO    ] Checking for camera pi updates...
[2026-08-31 21:12:30,275.275 INFO    ] 200
[2026-08-31 21:12:30,278.278 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:12:30,320.320 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:12:30,403.403 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:12:30,406.406 INFO    ] No camera update needed
[2026-08-31 21:12:30,408.408 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:12:30,411.411 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:12:30,417.417 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:12:30,423.423 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:12:32,466.466 INFO    ] ================================================
[2026-08-31 21:12:32,483.483 INFO    ] Launching Daemon at Mon Aug 31 21:12:32 IST 2026
[2026-08-31 21:12:32,495.495 INFO    ] ================================================
[2026-08-31 21:12:33,089.089 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:12:33
[2026-08-31 21:12:33,670.670 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:12:33,942.942 INFO    ] Initializing speech engine...
[2026-08-31 21:12:33,947.947 INFO    ] 2026-08-31 21:12:33
[2026-08-31 21:12:34,193.193 INFO    ] 2026-08-31 21:12:34
[2026-08-31 21:12:34,239.239 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:12:34,495.495 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:12:34,503.503 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:12:34,643.643 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:12:34,697.697 INFO    ] time= 31/08/2026 21:12:34
[2026-08-31 21:12:34,747.747 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:12:34,790.790 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:12:34,915.915 INFO    ] No existing commands found in stream
[2026-08-31 21:12:39,947.947 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:12:39,950.950 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-08-31 21:12:40,524.524 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 21:12:40,527.527 INFO    ] Checking for system updates...
[2026-08-31 21:12:40,564.564 INFO    ] 200
[2026-08-31 21:12:40,567.567 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:12:40,621.621 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:12:40,623.623 INFO    ] No update needed
[2026-08-31 21:12:40,626.626 INFO    ] Checking for camera pi updates...
[2026-08-31 21:12:40,660.660 INFO    ] 200
[2026-08-31 21:12:40,663.663 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:12:40,704.704 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:12:40,790.790 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:12:40,793.793 INFO    ] No camera update needed
[2026-08-31 21:12:40,795.795 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:12:40,798.798 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:12:40,804.804 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:12:40,810.810 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:12:42,852.852 INFO    ] ================================================
[2026-08-31 21:12:42,867.867 INFO    ] Launching Daemon at Mon Aug 31 21:12:42 IST 2026
[2026-08-31 21:12:42,878.878 INFO    ] ================================================
[2026-08-31 21:12:43,458.458 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:12:43
[2026-08-31 21:12:44,055.055 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:12:44,326.326 INFO    ] Initializing speech engine...
[2026-08-31 21:12:44,336.336 INFO    ] 2026-08-31 21:12:44
[2026-08-31 21:12:44,584.584 INFO    ] 2026-08-31 21:12:44
[2026-08-31 21:12:44,619.619 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:12:44,856.856 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:12:44,877.877 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:12:45,010.010 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:12:45,052.052 INFO    ] time= 31/08/2026 21:12:45
[2026-08-31 21:12:45,092.092 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:12:45,147.147 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:12:45,286.286 INFO    ] No existing commands found in stream
[2026-08-31 21:12:50,310.310 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:12:50,312.312 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-08-31 21:12:52,764.764 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 21:12:52,766.766 INFO    ] Checking for system updates...
[2026-08-31 21:12:52,805.805 INFO    ] 200
[2026-08-31 21:12:52,808.808 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:12:52,860.860 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:12:52,863.863 INFO    ] No update needed
[2026-08-31 21:12:52,865.865 INFO    ] Checking for camera pi updates...
[2026-08-31 21:12:52,898.898 INFO    ] 200
[2026-08-31 21:12:52,901.901 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:12:52,945.945 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:12:53,049.049 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:12:53,052.052 INFO    ] No camera update needed
[2026-08-31 21:12:53,054.054 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:12:53,056.056 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:12:53,062.062 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:12:53,067.067 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:12:55,108.108 INFO    ] ================================================
[2026-08-31 21:12:55,123.123 INFO    ] Launching Daemon at Mon Aug 31 21:12:55 IST 2026
[2026-08-31 21:12:55,133.133 INFO    ] ================================================
[2026-08-31 21:12:55,697.697 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:12:55
[2026-08-31 21:12:56,279.279 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:12:56,548.548 INFO    ] Initializing speech engine...
[2026-08-31 21:12:56,556.556 INFO    ] 2026-08-31 21:12:56
[2026-08-31 21:12:56,806.806 INFO    ] 2026-08-31 21:12:56
[2026-08-31 21:12:56,840.840 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:12:57,025.025 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:12:57,042.042 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:12:57,178.178 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:12:57,185.185 INFO    ] time= 31/08/2026 21:12:57
[2026-08-31 21:12:57,235.235 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:12:57,252.252 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:12:57,367.367 INFO    ] No existing commands found in stream
[2026-08-31 21:13:02,390.390 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:13:02,393.393 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-08-31 21:13:05,691.691 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 21:13:05,693.693 INFO    ] Checking for system updates...
[2026-08-31 21:13:05,729.729 INFO    ] 200
[2026-08-31 21:13:05,732.732 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:13:05,785.785 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:13:05,788.788 INFO    ] No update needed
[2026-08-31 21:13:05,790.790 INFO    ] Checking for camera pi updates...
[2026-08-31 21:13:05,824.824 INFO    ] 200
[2026-08-31 21:13:05,827.827 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:13:05,868.868 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:13:05,967.967 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:13:05,970.970 INFO    ] No camera update needed
[2026-08-31 21:13:05,972.972 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:13:05,974.974 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:13:05,979.979 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:13:05,984.984 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:13:08,025.025 INFO    ] ================================================
[2026-08-31 21:13:08,040.040 INFO    ] Launching Daemon at Mon Aug 31 21:13:08 IST 2026
[2026-08-31 21:13:08,050.050 INFO    ] ================================================
[2026-08-31 21:13:08,639.639 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:13:08
[2026-08-31 21:13:09,242.242 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:13:09,520.520 INFO    ] Initializing speech engine...
[2026-08-31 21:13:09,525.525 INFO    ] 2026-08-31 21:13:09
[2026-08-31 21:13:09,787.787 INFO    ] 2026-08-31 21:13:09
[2026-08-31 21:13:09,842.842 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:13:10,123.123 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:13:10,132.132 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:13:10,321.321 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:13:10,335.335 INFO    ] time= 31/08/2026 21:13:10
[2026-08-31 21:13:10,353.353 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:13:10,382.382 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:13:10,489.489 INFO    ] No existing commands found in stream
[2026-08-31 21:13:15,518.518 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:13:15,521.521 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-08-31 21:13:19,232.232 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 21:13:19,234.234 INFO    ] Checking for system updates...
[2026-08-31 21:13:19,270.270 INFO    ] 200
[2026-08-31 21:13:19,273.273 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:13:19,325.325 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:13:19,327.327 INFO    ] No update needed
[2026-08-31 21:13:19,330.330 INFO    ] Checking for camera pi updates...
[2026-08-31 21:13:19,363.363 INFO    ] 200
[2026-08-31 21:13:19,366.366 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:13:19,406.406 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:13:19,495.495 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:13:19,497.497 INFO    ] No camera update needed
[2026-08-31 21:13:19,500.500 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:13:19,502.502 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:13:19,508.508 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:13:19,513.513 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:13:21,556.556 INFO    ] ================================================
[2026-08-31 21:13:21,572.572 INFO    ] Launching Daemon at Mon Aug 31 21:13:21 IST 2026
[2026-08-31 21:13:21,582.582 INFO    ] ================================================
[2026-08-31 21:13:22,149.149 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:13:22
[2026-08-31 21:13:22,750.750 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:13:23,053.053 INFO    ] Initializing speech engine...
[2026-08-31 21:13:23,062.062 INFO    ] 2026-08-31 21:13:23
[2026-08-31 21:13:23,382.382 INFO    ] 2026-08-31 21:13:23
[2026-08-31 21:13:23,464.464 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:13:23,620.620 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:13:23,642.642 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:13:23,774.774 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:13:23,834.834 INFO    ] time= 31/08/2026 21:13:23
[2026-08-31 21:13:23,886.886 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:13:23,893.893 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:13:24,037.037 INFO    ] No existing commands found in stream
[2026-08-31 21:13:29,050.050 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:13:29,053.053 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-08-31 21:13:32,629.629 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 21:13:32,633.633 INFO    ] Checking for system updates...
[2026-08-31 21:13:32,670.670 INFO    ] 200
[2026-08-31 21:13:32,672.672 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:13:32,727.727 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:13:32,729.729 INFO    ] No update needed
[2026-08-31 21:13:32,731.731 INFO    ] Checking for camera pi updates...
[2026-08-31 21:13:32,769.769 INFO    ] 200
[2026-08-31 21:13:32,771.771 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:13:32,816.816 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:13:32,912.912 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:13:32,915.915 INFO    ] No camera update needed
[2026-08-31 21:13:32,917.917 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:13:32,920.920 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:13:32,925.925 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:13:32,930.930 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:13:34,969.969 INFO    ] ================================================
[2026-08-31 21:13:34,984.984 INFO    ] Launching Daemon at Mon Aug 31 21:13:34 IST 2026
[2026-08-31 21:13:35,995.995 INFO    ] ================================================
[2026-08-31 21:13:35,574.574 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:13:35
[2026-08-31 21:13:36,243.243 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:13:36,545.545 INFO    ] Initializing speech engine...
[2026-08-31 21:13:36,559.559 INFO    ] 2026-08-31 21:13:36
[2026-08-31 21:13:36,867.867 INFO    ] 2026-08-31 21:13:36
[2026-08-31 21:13:36,947.947 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:13:37,108.108 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:13:37,113.113 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:13:37,315.315 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:13:37,365.365 INFO    ] time= 31/08/2026 21:13:37
[2026-08-31 21:13:37,377.377 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:13:37,396.396 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:13:37,521.521 INFO    ] No existing commands found in stream
[2026-08-31 21:13:42,537.537 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:13:42,540.540 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-08-31 21:13:46,155.155 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 21:13:46,158.158 INFO    ] Checking for system updates...
[2026-08-31 21:13:46,195.195 INFO    ] 200
[2026-08-31 21:13:46,198.198 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:13:46,253.253 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:13:46,256.256 INFO    ] No update needed
[2026-08-31 21:13:46,259.259 INFO    ] Checking for camera pi updates...
[2026-08-31 21:13:46,293.293 INFO    ] 200
[2026-08-31 21:13:46,296.296 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:13:46,344.344 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:13:46,475.475 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:13:46,478.478 INFO    ] No camera update needed
[2026-08-31 21:13:46,480.480 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:13:46,483.483 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:13:46,489.489 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:13:46,495.495 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:13:48,535.535 INFO    ] ================================================
[2026-08-31 21:13:48,550.550 INFO    ] Launching Daemon at Mon Aug 31 21:13:48 IST 2026
[2026-08-31 21:13:48,561.561 INFO    ] ================================================
[2026-08-31 21:13:49,141.141 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:13:49
[2026-08-31 21:13:49,738.738 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:13:50,002.002 INFO    ] Initializing speech engine...
[2026-08-31 21:13:50,015.015 INFO    ] 2026-08-31 21:13:50
[2026-08-31 21:13:50,304.304 INFO    ] 2026-08-31 21:13:50
[2026-08-31 21:13:50,339.339 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:13:50,529.529 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:13:50,544.544 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:13:50,718.718 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:13:50,726.726 INFO    ] time= 31/08/2026 21:13:50
[2026-08-31 21:13:50,734.734 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:13:50,781.781 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:13:50,919.919 INFO    ] No existing commands found in stream
[2026-08-31 21:13:55,944.944 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:13:55,947.947 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-08-31 21:13:58,081.081 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 21:13:58,084.084 INFO    ] Checking for system updates...
[2026-08-31 21:13:58,121.121 INFO    ] 200
[2026-08-31 21:13:58,124.124 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:13:58,176.176 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:13:58,179.179 INFO    ] No update needed
[2026-08-31 21:13:58,181.181 INFO    ] Checking for camera pi updates...
[2026-08-31 21:13:58,214.214 INFO    ] 200
[2026-08-31 21:13:58,217.217 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:13:58,256.256 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:13:58,433.433 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:13:58,436.436 INFO    ] No camera update needed
[2026-08-31 21:13:58,438.438 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:13:58,440.440 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:13:58,446.446 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:13:58,451.451 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:14:00,491.491 INFO    ] ================================================
[2026-08-31 21:14:00,507.507 INFO    ] Launching Daemon at Mon Aug 31 21:14:00 IST 2026
[2026-08-31 21:14:00,518.518 INFO    ] ================================================
[2026-08-31 21:14:01,104.104 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:14:01
[2026-08-31 21:14:01,865.865 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:14:02,172.172 INFO    ] Initializing speech engine...
[2026-08-31 21:14:02,188.188 INFO    ] 2026-08-31 21:14:02
[2026-08-31 21:14:02,511.511 INFO    ] 2026-08-31 21:14:02
[2026-08-31 21:14:02,554.554 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:14:02,806.806 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:14:02,836.836 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:14:02,984.984 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:14:02,996.996 INFO    ] time= 31/08/2026 21:14:02
[2026-08-31 21:14:03,055.055 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:14:03,069.069 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:14:03,206.206 INFO    ] No existing commands found in stream
[2026-08-31 21:14:08,216.216 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:14:08,219.219 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-08-31 21:14:08,918.918 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 21:14:08,921.921 INFO    ] Checking for system updates...
[2026-08-31 21:14:08,956.956 INFO    ] 200
[2026-08-31 21:14:08,958.958 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:14:09,017.017 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:14:09,019.019 INFO    ] No update needed
[2026-08-31 21:14:09,021.021 INFO    ] Checking for camera pi updates...
[2026-08-31 21:14:09,058.058 INFO    ] 200
[2026-08-31 21:14:09,060.060 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:14:09,105.105 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:14:09,203.203 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:14:09,205.205 INFO    ] No camera update needed
[2026-08-31 21:14:09,208.208 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:14:09,210.210 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:14:09,215.215 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:14:09,220.220 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:14:11,261.261 INFO    ] ================================================
[2026-08-31 21:14:11,276.276 INFO    ] Launching Daemon at Mon Aug 31 21:14:11 IST 2026
[2026-08-31 21:14:11,287.287 INFO    ] ================================================
[2026-08-31 21:14:11,867.867 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:14:11
[2026-08-31 21:14:12,465.465 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:14:12,742.742 INFO    ] Initializing speech engine...
[2026-08-31 21:14:12,751.751 INFO    ] 2026-08-31 21:14:12
[2026-08-31 21:14:13,010.010 INFO    ] 2026-08-31 21:14:13
[2026-08-31 21:14:13,064.064 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:14:13,313.313 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:14:13,319.319 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:14:13,520.520 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:14:13,553.553 INFO    ] time= 31/08/2026 21:14:13
[2026-08-31 21:14:13,570.570 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:14:13,579.579 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:14:13,701.701 INFO    ] No existing commands found in stream
[2026-08-31 21:14:18,717.717 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:14:18,720.720 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-08-31 21:14:19,244.244 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 21:14:19,246.246 INFO    ] Checking for system updates...
[2026-08-31 21:14:19,283.283 INFO    ] 200
[2026-08-31 21:14:19,286.286 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:14:19,355.355 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:14:19,358.358 INFO    ] No update needed
[2026-08-31 21:14:19,361.361 INFO    ] Checking for camera pi updates...
[2026-08-31 21:14:19,394.394 INFO    ] 200
[2026-08-31 21:14:19,397.397 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:14:19,442.442 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:14:19,530.530 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:14:19,533.533 INFO    ] No camera update needed
[2026-08-31 21:14:19,535.535 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:14:19,538.538 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:14:19,543.543 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:14:19,548.548 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:14:21,588.588 INFO    ] ================================================
[2026-08-31 21:14:21,604.604 INFO    ] Launching Daemon at Mon Aug 31 21:14:21 IST 2026
[2026-08-31 21:14:21,615.615 INFO    ] ================================================
[2026-08-31 21:14:22,178.178 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:14:22
[2026-08-31 21:14:22,759.759 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:14:23,027.027 INFO    ] Initializing speech engine...
[2026-08-31 21:14:23,036.036 INFO    ] 2026-08-31 21:14:23
[2026-08-31 21:14:23,285.285 INFO    ] 2026-08-31 21:14:23
[2026-08-31 21:14:23,320.320 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:14:23,504.504 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:14:23,522.522 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:14:23,660.660 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:14:23,689.689 INFO    ] time= 31/08/2026 21:14:23
[2026-08-31 21:14:23,726.726 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:14:23,732.732 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:14:23,859.859 INFO    ] No existing commands found in stream
[2026-08-31 21:14:28,870.870 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:14:28,872.872 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-08-31 21:14:32,873.873 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 21:14:32,876.876 INFO    ] Checking for system updates...
[2026-08-31 21:14:32,915.915 INFO    ] 200
[2026-08-31 21:14:32,918.918 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:14:32,970.970 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:14:32,972.972 INFO    ] No update needed
[2026-08-31 21:14:32,975.975 INFO    ] Checking for camera pi updates...
[2026-08-31 21:14:33,008.008 INFO    ] 200
[2026-08-31 21:14:33,010.010 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:14:33,050.050 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:14:33,141.141 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:14:33,144.144 INFO    ] No camera update needed
[2026-08-31 21:14:33,146.146 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:14:33,148.148 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:14:33,154.154 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:14:33,159.159 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:14:35,199.199 INFO    ] ================================================
[2026-08-31 21:14:35,214.214 INFO    ] Launching Daemon at Mon Aug 31 21:14:35 IST 2026
[2026-08-31 21:14:35,225.225 INFO    ] ================================================
[2026-08-31 21:14:35,866.866 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:14:35
[2026-08-31 21:14:36,524.524 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:14:36,823.823 INFO    ] Initializing speech engine...
[2026-08-31 21:14:36,832.832 INFO    ] 2026-08-31 21:14:36
[2026-08-31 21:14:37,103.103 INFO    ] 2026-08-31 21:14:37
[2026-08-31 21:14:37,156.156 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:14:37,386.386 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:14:37,391.391 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:14:37,603.603 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:14:37,649.649 INFO    ] time= 31/08/2026 21:14:37
[2026-08-31 21:14:37,655.655 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:14:37,677.677 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:14:37,800.800 INFO    ] No existing commands found in stream
[2026-08-31 21:14:42,816.816 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:14:42,819.819 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-08-31 21:14:44,626.626 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 21:14:44,630.630 INFO    ] Checking for system updates...
[2026-08-31 21:14:44,670.670 INFO    ] 200
[2026-08-31 21:14:44,672.672 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:14:44,737.737 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:14:44,740.740 INFO    ] No update needed
[2026-08-31 21:14:44,743.743 INFO    ] Checking for camera pi updates...
[2026-08-31 21:14:44,781.781 INFO    ] 200
[2026-08-31 21:14:44,783.783 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:14:44,830.830 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:14:44,903.903 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:14:44,906.906 INFO    ] No camera update needed
[2026-08-31 21:14:44,909.909 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:14:44,911.911 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:14:44,918.918 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:14:44,923.923 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:14:46,963.963 INFO    ] ================================================
[2026-08-31 21:14:46,979.979 INFO    ] Launching Daemon at Mon Aug 31 21:14:46 IST 2026
[2026-08-31 21:14:46,990.990 INFO    ] ================================================
[2026-08-31 21:14:47,630.630 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:14:47
[2026-08-31 21:14:48,292.292 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:14:48,593.593 INFO    ] Initializing speech engine...
[2026-08-31 21:14:48,601.601 INFO    ] 2026-08-31 21:14:48
[2026-08-31 21:14:48,889.889 INFO    ] 2026-08-31 21:14:48
[2026-08-31 21:14:48,935.935 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:14:49,165.165 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:14:49,172.172 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:14:49,402.402 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:14:49,435.435 INFO    ] time= 31/08/2026 21:14:49
[2026-08-31 21:14:49,453.453 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:14:49,463.463 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:14:49,592.592 INFO    ] No existing commands found in stream
[2026-08-31 21:14:54,607.607 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:14:54,610.610 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-08-31 21:14:58,752.752 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 21:14:58,755.755 INFO    ] Checking for system updates...
[2026-08-31 21:14:58,793.793 INFO    ] 200
[2026-08-31 21:14:58,796.796 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:14:58,854.854 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:14:58,856.856 INFO    ] No update needed
[2026-08-31 21:14:58,859.859 INFO    ] Checking for camera pi updates...
[2026-08-31 21:14:58,896.896 INFO    ] 200
[2026-08-31 21:14:58,899.899 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:14:58,939.939 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:14:59,032.032 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:14:59,034.034 INFO    ] No camera update needed
[2026-08-31 21:14:59,036.036 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:14:59,039.039 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:14:59,044.044 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:14:59,049.049 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:15:01,088.088 INFO    ] ================================================
[2026-08-31 21:15:01,103.103 INFO    ] Launching Daemon at Mon Aug 31 21:15:01 IST 2026
[2026-08-31 21:15:01,113.113 INFO    ] ================================================
[2026-08-31 21:15:02,291.291 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:15:02
[2026-08-31 21:15:03,052.052 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:15:03,400.400 INFO    ] Initializing speech engine...
[2026-08-31 21:15:03,425.425 INFO    ] 2026-08-31 21:15:03
[2026-08-31 21:15:03,701.701 INFO    ] 2026-08-31 21:15:03
[2026-08-31 21:15:03,770.770 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:15:04,005.005 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:15:04,013.013 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:15:04,242.242 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:15:04,277.277 INFO    ] time= 31/08/2026 21:15:04
[2026-08-31 21:15:04,283.283 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:15:04,305.305 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:15:04,436.436 INFO    ] No existing commands found in stream
[2026-08-31 21:15:09,451.451 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:15:09,454.454 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-08-31 21:15:10,047.047 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 21:15:10,050.050 INFO    ] Checking for system updates...
[2026-08-31 21:15:10,087.087 INFO    ] 200
[2026-08-31 21:15:10,089.089 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:15:10,141.141 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:15:10,144.144 INFO    ] No update needed
[2026-08-31 21:15:10,146.146 INFO    ] Checking for camera pi updates...
[2026-08-31 21:15:10,184.184 INFO    ] 200
[2026-08-31 21:15:10,187.187 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:15:10,227.227 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:15:10,302.302 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:15:10,305.305 INFO    ] No camera update needed
[2026-08-31 21:15:10,307.307 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:15:10,309.309 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:15:10,315.315 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:15:10,319.319 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:15:12,361.361 INFO    ] ================================================
[2026-08-31 21:15:12,378.378 INFO    ] Launching Daemon at Mon Aug 31 21:15:12 IST 2026
[2026-08-31 21:15:12,389.389 INFO    ] ================================================
[2026-08-31 21:15:12,960.960 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:15:12
[2026-08-31 21:15:13,554.554 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:15:13,818.818 INFO    ] Initializing speech engine...
[2026-08-31 21:15:13,824.824 INFO    ] 2026-08-31 21:15:13
[2026-08-31 21:15:14,122.122 INFO    ] 2026-08-31 21:15:14
[2026-08-31 21:15:14,160.160 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:15:14,360.360 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:15:14,373.373 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:15:14,500.500 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:15:14,516.516 INFO    ] time= 31/08/2026 21:15:14
[2026-08-31 21:15:14,544.544 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:15:14,553.553 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:15:14,632.632 INFO    ] No existing commands found in stream
[2026-08-31 21:15:19,645.645 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:15:19,648.648 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-08-31 21:15:23,106.106 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 21:15:23,109.109 INFO    ] Checking for system updates...
[2026-08-31 21:15:23,145.145 INFO    ] 200
[2026-08-31 21:15:23,148.148 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:15:23,212.212 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:15:23,215.215 INFO    ] No update needed
[2026-08-31 21:15:23,217.217 INFO    ] Checking for camera pi updates...
[2026-08-31 21:15:23,255.255 INFO    ] 200
[2026-08-31 21:15:23,257.257 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:15:23,304.304 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:15:23,384.384 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:15:23,386.386 INFO    ] No camera update needed
[2026-08-31 21:15:23,389.389 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:15:23,391.391 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:15:23,397.397 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:15:23,402.402 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:15:25,442.442 INFO    ] ================================================
[2026-08-31 21:15:25,458.458 INFO    ] Launching Daemon at Mon Aug 31 21:15:25 IST 2026
[2026-08-31 21:15:25,469.469 INFO    ] ================================================
[2026-08-31 21:15:26,164.164 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:15:26
[2026-08-31 21:15:26,893.893 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:15:27,211.211 INFO    ] Initializing speech engine...
[2026-08-31 21:15:27,225.225 INFO    ] 2026-08-31 21:15:27
[2026-08-31 21:15:27,516.516 INFO    ] 2026-08-31 21:15:27
[2026-08-31 21:15:27,577.577 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:15:27,802.802 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:15:27,811.811 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:15:27,945.945 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:15:28,015.015 INFO    ] time= 31/08/2026 21:15:27
[2026-08-31 21:15:28,071.071 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:15:28,078.078 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:15:28,224.224 INFO    ] No existing commands found in stream
[2026-08-31 21:15:33,246.246 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:15:33,249.249 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-08-31 21:15:36,766.766 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 21:15:36,769.769 INFO    ] Checking for system updates...
[2026-08-31 21:15:36,809.809 INFO    ] 200
[2026-08-31 21:15:36,811.811 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:15:36,863.863 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:15:36,865.865 INFO    ] No update needed
[2026-08-31 21:15:36,868.868 INFO    ] Checking for camera pi updates...
[2026-08-31 21:15:36,901.901 INFO    ] 200
[2026-08-31 21:15:36,903.903 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:15:36,949.949 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:15:37,040.040 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:15:37,043.043 INFO    ] No camera update needed
[2026-08-31 21:15:37,045.045 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:15:37,047.047 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:15:37,052.052 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:15:37,057.057 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:15:39,098.098 INFO    ] ================================================
[2026-08-31 21:15:39,114.114 INFO    ] Launching Daemon at Mon Aug 31 21:15:39 IST 2026
[2026-08-31 21:15:39,125.125 INFO    ] ================================================
[2026-08-31 21:15:39,713.713 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:15:39
[2026-08-31 21:15:40,325.325 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:15:40,592.592 INFO    ] Initializing speech engine...
[2026-08-31 21:15:40,618.618 INFO    ] 2026-08-31 21:15:40
[2026-08-31 21:15:40,895.895 INFO    ] 2026-08-31 21:15:40
[2026-08-31 21:15:40,931.931 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:15:41,129.129 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:15:41,145.145 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:15:41,311.311 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:15:41,317.317 INFO    ] time= 31/08/2026 21:15:41
[2026-08-31 21:15:41,324.324 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:15:41,346.346 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:15:41,484.484 INFO    ] No existing commands found in stream
[2026-08-31 21:15:46,509.509 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:15:46,525.525 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-08-31 21:15:48,586.586 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 21:15:48,589.589 INFO    ] Checking for system updates...
[2026-08-31 21:15:48,624.624 INFO    ] 200
[2026-08-31 21:15:48,627.627 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:15:48,686.686 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:15:48,689.689 INFO    ] No update needed
[2026-08-31 21:15:48,691.691 INFO    ] Checking for camera pi updates...
[2026-08-31 21:15:48,724.724 INFO    ] 200
[2026-08-31 21:15:48,727.727 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:15:48,772.772 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:15:48,852.852 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:15:48,855.855 INFO    ] No camera update needed
[2026-08-31 21:15:48,857.857 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:15:48,860.860 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:15:48,865.865 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:15:48,870.870 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:15:50,910.910 INFO    ] ================================================
[2026-08-31 21:15:50,925.925 INFO    ] Launching Daemon at Mon Aug 31 21:15:50 IST 2026
[2026-08-31 21:15:50,936.936 INFO    ] ================================================
[2026-08-31 21:15:51,522.522 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:15:51
[2026-08-31 21:15:52,130.130 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:15:52,392.392 INFO    ] Initializing speech engine...
[2026-08-31 21:15:52,401.401 INFO    ] 2026-08-31 21:15:52
[2026-08-31 21:15:52,701.701 INFO    ] 2026-08-31 21:15:52
[2026-08-31 21:15:52,739.739 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:15:52,958.958 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:15:52,966.966 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:15:53,184.184 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:15:53,198.198 INFO    ] time= 31/08/2026 21:15:53
[2026-08-31 21:15:53,267.267 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:15:53,327.327 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:15:53,468.468 INFO    ] No existing commands found in stream
[2026-08-31 21:15:58,491.491 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:15:58,493.493 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-08-31 21:16:00,763.763 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 21:16:00,766.766 INFO    ] Checking for system updates...
[2026-08-31 21:16:00,806.806 INFO    ] 200
[2026-08-31 21:16:00,810.810 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:16:00,869.869 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:16:00,872.872 INFO    ] No update needed
[2026-08-31 21:16:00,875.875 INFO    ] Checking for camera pi updates...
[2026-08-31 21:16:00,913.913 INFO    ] 200
[2026-08-31 21:16:00,916.916 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:16:00,961.961 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:16:01,142.142 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:16:01,145.145 INFO    ] No camera update needed
[2026-08-31 21:16:01,148.148 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:16:01,150.150 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:16:01,156.156 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:16:01,162.162 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:16:03,219.219 INFO    ] ================================================
[2026-08-31 21:16:03,249.249 INFO    ] Launching Daemon at Mon Aug 31 21:16:03 IST 2026
[2026-08-31 21:16:03,263.263 INFO    ] ================================================
[2026-08-31 21:16:03,918.918 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:16:03
[2026-08-31 21:16:04,576.576 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:16:04,887.887 INFO    ] Initializing speech engine...
[2026-08-31 21:16:04,894.894 INFO    ] 2026-08-31 21:16:04
[2026-08-31 21:16:05,206.206 INFO    ] 2026-08-31 21:16:05
[2026-08-31 21:16:05,288.288 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:16:05,502.502 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:16:05,511.511 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:16:05,703.703 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:16:05,721.721 INFO    ] time= 31/08/2026 21:16:05
[2026-08-31 21:16:05,732.732 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:16:05,761.761 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:16:05,864.864 INFO    ] No existing commands found in stream
[2026-08-31 21:16:10,886.886 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:16:10,889.889 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-08-31 21:16:13,563.563 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 21:16:13,566.566 INFO    ] Checking for system updates...
[2026-08-31 21:16:13,603.603 INFO    ] 200
[2026-08-31 21:16:13,606.606 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:16:13,661.661 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:16:13,663.663 INFO    ] No update needed
[2026-08-31 21:16:13,666.666 INFO    ] Checking for camera pi updates...
[2026-08-31 21:16:13,703.703 INFO    ] 200
[2026-08-31 21:16:13,706.706 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:16:13,749.749 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:16:13,834.834 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:16:13,837.837 INFO    ] No camera update needed
[2026-08-31 21:16:13,840.840 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:16:13,842.842 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:16:13,848.848 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:16:13,854.854 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:16:15,897.897 INFO    ] ================================================
[2026-08-31 21:16:15,912.912 INFO    ] Launching Daemon at Mon Aug 31 21:16:15 IST 2026
[2026-08-31 21:16:15,922.922 INFO    ] ================================================
[2026-08-31 21:16:16,486.486 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:16:16
[2026-08-31 21:16:17,069.069 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:16:17,322.322 INFO    ] Initializing speech engine...
[2026-08-31 21:16:17,331.331 INFO    ] 2026-08-31 21:16:17
[2026-08-31 21:16:17,621.621 INFO    ] 2026-08-31 21:16:17
[2026-08-31 21:16:17,658.658 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:16:17,877.877 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:16:17,900.900 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:16:18,103.103 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:16:18,125.125 INFO    ] time= 31/08/2026 21:16:18
[2026-08-31 21:16:18,174.174 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:16:18,228.228 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:16:18,310.310 INFO    ] No existing commands found in stream
[2026-08-31 21:16:23,321.321 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:16:23,323.323 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-08-31 21:16:25,151.151 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 21:16:25,154.154 INFO    ] Checking for system updates...
[2026-08-31 21:16:25,192.192 INFO    ] 200
[2026-08-31 21:16:25,195.195 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:16:25,247.247 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:16:25,249.249 INFO    ] No update needed
[2026-08-31 21:16:25,251.251 INFO    ] Checking for camera pi updates...
[2026-08-31 21:16:25,289.289 INFO    ] 200
[2026-08-31 21:16:25,291.291 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:16:25,332.332 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:16:25,428.428 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:16:25,431.431 INFO    ] No camera update needed
[2026-08-31 21:16:25,433.433 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:16:25,435.435 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:16:25,440.440 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:16:25,445.445 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:16:27,487.487 INFO    ] ================================================
[2026-08-31 21:16:27,503.503 INFO    ] Launching Daemon at Mon Aug 31 21:16:27 IST 2026
[2026-08-31 21:16:27,514.514 INFO    ] ================================================
[2026-08-31 21:16:28,079.079 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:16:28
[2026-08-31 21:16:28,663.663 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:16:28,924.924 INFO    ] Initializing speech engine...
[2026-08-31 21:16:28,950.950 INFO    ] 2026-08-31 21:16:28
[2026-08-31 21:16:29,224.224 INFO    ] 2026-08-31 21:16:29
[2026-08-31 21:16:29,258.258 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:16:29,480.480 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:16:29,487.487 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:16:29,703.703 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:16:29,715.715 INFO    ] time= 31/08/2026 21:16:29
[2026-08-31 21:16:29,749.749 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:16:29,813.813 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:16:29,915.915 INFO    ] No existing commands found in stream
[2026-08-31 21:16:34,928.928 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:16:34,931.931 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-08-31 21:16:36,596.596 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 21:16:36,598.598 INFO    ] Checking for system updates...
[2026-08-31 21:16:36,634.634 INFO    ] 200
[2026-08-31 21:16:36,636.636 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:16:36,690.690 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:16:36,692.692 INFO    ] No update needed
[2026-08-31 21:16:36,694.694 INFO    ] Checking for camera pi updates...
[2026-08-31 21:16:36,728.728 INFO    ] 200
[2026-08-31 21:16:36,731.731 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:16:36,771.771 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:16:36,845.845 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:16:36,848.848 INFO    ] No camera update needed
[2026-08-31 21:16:36,850.850 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:16:36,852.852 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:16:36,858.858 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:16:36,862.862 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:16:38,903.903 INFO    ] ================================================
[2026-08-31 21:16:38,919.919 INFO    ] Launching Daemon at Mon Aug 31 21:16:38 IST 2026
[2026-08-31 21:16:38,930.930 INFO    ] ================================================
[2026-08-31 21:16:39,496.496 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:16:39
[2026-08-31 21:16:40,081.081 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:16:40,338.338 INFO    ] Initializing speech engine...
[2026-08-31 21:16:40,354.354 INFO    ] 2026-08-31 21:16:40
[2026-08-31 21:16:40,636.636 INFO    ] 2026-08-31 21:16:40
[2026-08-31 21:16:40,674.674 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:16:40,941.941 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:16:40,966.966 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:16:41,122.122 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:16:41,171.171 INFO    ] time= 31/08/2026 21:16:41
[2026-08-31 21:16:41,230.230 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:16:41,264.264 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:16:41,386.386 INFO    ] No existing commands found in stream
[2026-08-31 21:16:46,411.411 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:16:46,413.413 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-08-31 21:16:49,355.355 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 21:16:49,357.357 INFO    ] Checking for system updates...
[2026-08-31 21:16:49,393.393 INFO    ] 200
[2026-08-31 21:16:49,396.396 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:16:49,449.449 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:16:49,451.451 INFO    ] No update needed
[2026-08-31 21:16:49,454.454 INFO    ] Checking for camera pi updates...
[2026-08-31 21:16:49,488.488 INFO    ] 200
[2026-08-31 21:16:49,491.491 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:16:49,533.533 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:16:49,622.622 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:16:49,624.624 INFO    ] No camera update needed
[2026-08-31 21:16:49,627.627 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:16:49,629.629 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:16:49,634.634 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:16:49,640.640 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:16:51,682.682 INFO    ] ================================================
[2026-08-31 21:16:51,698.698 INFO    ] Launching Daemon at Mon Aug 31 21:16:51 IST 2026
[2026-08-31 21:16:51,709.709 INFO    ] ================================================
[2026-08-31 21:16:52,286.286 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:16:52
[2026-08-31 21:16:52,877.877 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:16:53,149.149 INFO    ] Initializing speech engine...
[2026-08-31 21:16:53,161.161 INFO    ] 2026-08-31 21:16:53
[2026-08-31 21:16:53,424.424 INFO    ] 2026-08-31 21:16:53
[2026-08-31 21:16:53,478.478 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:16:53,760.760 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:16:53,769.769 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:16:53,963.963 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:16:53,970.970 INFO    ] time= 31/08/2026 21:16:53
[2026-08-31 21:16:53,988.988 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:16:54,017.017 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:16:54,148.148 INFO    ] No existing commands found in stream
[2026-08-31 21:16:59,183.183 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:16:59,186.186 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-08-31 21:17:00,437.437 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 21:17:00,440.440 INFO    ] Checking for system updates...
[2026-08-31 21:17:00,475.475 INFO    ] 200
[2026-08-31 21:17:00,477.477 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:17:00,536.536 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:17:00,539.539 INFO    ] No update needed
[2026-08-31 21:17:00,541.541 INFO    ] Checking for camera pi updates...
[2026-08-31 21:17:00,575.575 INFO    ] 200
[2026-08-31 21:17:00,577.577 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:17:00,622.622 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:17:00,703.703 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:17:00,706.706 INFO    ] No camera update needed
[2026-08-31 21:17:00,708.708 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:17:00,711.711 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:17:00,716.716 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:17:00,721.721 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:17:02,764.764 INFO    ] ================================================
[2026-08-31 21:17:02,787.787 INFO    ] Launching Daemon at Mon Aug 31 21:17:02 IST 2026
[2026-08-31 21:17:02,799.799 INFO    ] ================================================
[2026-08-31 21:17:03,438.438 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:17:03
[2026-08-31 21:17:04,040.040 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:17:04,323.323 INFO    ] Initializing speech engine...
[2026-08-31 21:17:04,331.331 INFO    ] 2026-08-31 21:17:04
[2026-08-31 21:17:04,600.600 INFO    ] 2026-08-31 21:17:04
[2026-08-31 21:17:04,638.638 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:17:04,862.862 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:17:04,922.922 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:17:05,086.086 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:17:05,119.119 INFO    ] time= 31/08/2026 21:17:05
[2026-08-31 21:17:05,168.168 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:17:05,233.233 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:17:05,299.299 INFO    ] No existing commands found in stream
[2026-08-31 21:17:10,310.310 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:17:10,313.313 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-08-31 21:17:12,762.762 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 21:17:12,764.764 INFO    ] Checking for system updates...
[2026-08-31 21:17:12,800.800 INFO    ] 200
[2026-08-31 21:17:12,803.803 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:17:12,856.856 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:17:12,859.859 INFO    ] No update needed
[2026-08-31 21:17:12,862.862 INFO    ] Checking for camera pi updates...
[2026-08-31 21:17:12,895.895 INFO    ] 200
[2026-08-31 21:17:12,898.898 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:17:12,940.940 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:17:13,025.025 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:17:13,027.027 INFO    ] No camera update needed
[2026-08-31 21:17:13,030.030 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:17:13,032.032 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:17:13,038.038 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:17:13,043.043 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:17:15,084.084 INFO    ] ================================================
[2026-08-31 21:17:15,100.100 INFO    ] Launching Daemon at Mon Aug 31 21:17:15 IST 2026
[2026-08-31 21:17:15,111.111 INFO    ] ================================================
[2026-08-31 21:17:15,751.751 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:17:15
[2026-08-31 21:17:16,411.411 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:17:16,713.713 INFO    ] Initializing speech engine...
[2026-08-31 21:17:16,725.725 INFO    ] 2026-08-31 21:17:16
[2026-08-31 21:17:17,009.009 INFO    ] 2026-08-31 21:17:16
[2026-08-31 21:17:17,055.055 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:17:17,286.286 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:17:17,292.292 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:17:17,507.507 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:17:17,555.555 INFO    ] time= 31/08/2026 21:17:17
[2026-08-31 21:17:17,561.561 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:17:17,581.581 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:17:17,712.712 INFO    ] No existing commands found in stream
[2026-08-31 21:17:22,726.726 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:17:22,729.729 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-08-31 21:17:23,495.495 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 21:17:23,498.498 INFO    ] Checking for system updates...
[2026-08-31 21:17:23,534.534 INFO    ] 200
[2026-08-31 21:17:23,537.537 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:17:23,592.592 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:17:23,595.595 INFO    ] No update needed
[2026-08-31 21:17:23,597.597 INFO    ] Checking for camera pi updates...
[2026-08-31 21:17:23,632.632 INFO    ] 200
[2026-08-31 21:17:23,634.634 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:17:23,678.678 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:17:23,760.760 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:17:23,763.763 INFO    ] No camera update needed
[2026-08-31 21:17:23,765.765 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:17:23,768.768 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:17:23,773.773 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:17:23,778.778 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:17:25,818.818 INFO    ] ================================================
[2026-08-31 21:17:25,833.833 INFO    ] Launching Daemon at Mon Aug 31 21:17:25 IST 2026
[2026-08-31 21:17:25,843.843 INFO    ] ================================================
[2026-08-31 21:17:26,409.409 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:17:26
[2026-08-31 21:17:26,993.993 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:17:27,263.263 INFO    ] Initializing speech engine...
[2026-08-31 21:17:27,272.272 INFO    ] 2026-08-31 21:17:27
[2026-08-31 21:17:27,523.523 INFO    ] 2026-08-31 21:17:27
[2026-08-31 21:17:27,559.559 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:17:27,817.817 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:17:27,826.826 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:17:27,961.961 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:17:28,008.008 INFO    ] time= 31/08/2026 21:17:27
[2026-08-31 21:17:28,068.068 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:17:28,101.101 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:17:28,241.241 INFO    ] No existing commands found in stream
[2026-08-31 21:17:33,261.261 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:17:33,263.263 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-08-31 21:17:36,426.426 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 21:17:36,429.429 INFO    ] Checking for system updates...
[2026-08-31 21:17:36,469.469 INFO    ] 200
[2026-08-31 21:17:36,472.472 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:17:36,524.524 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:17:36,527.527 INFO    ] No update needed
[2026-08-31 21:17:36,530.530 INFO    ] Checking for camera pi updates...
[2026-08-31 21:17:36,569.569 INFO    ] 200
[2026-08-31 21:17:36,572.572 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:17:36,614.614 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:17:36,697.697 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:17:36,700.700 INFO    ] No camera update needed
[2026-08-31 21:17:36,703.703 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:17:36,705.705 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:17:36,711.711 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:17:36,717.717 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:17:38,759.759 INFO    ] ================================================
[2026-08-31 21:17:38,775.775 INFO    ] Launching Daemon at Mon Aug 31 21:17:38 IST 2026
[2026-08-31 21:17:38,786.786 INFO    ] ================================================
[2026-08-31 21:17:39,426.426 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:17:39
[2026-08-31 21:17:40,087.087 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:17:40,391.391 INFO    ] Initializing speech engine...
[2026-08-31 21:17:40,397.397 INFO    ] 2026-08-31 21:17:40
[2026-08-31 21:17:40,675.675 INFO    ] 2026-08-31 21:17:40
[2026-08-31 21:17:40,730.730 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:17:40,987.987 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:17:41,007.007 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:17:41,229.229 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:17:41,236.236 INFO    ] time= 31/08/2026 21:17:41
[2026-08-31 21:17:41,257.257 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:17:41,285.285 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:17:41,393.393 INFO    ] No existing commands found in stream
[2026-08-31 21:17:46,406.406 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:17:46,410.410 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-08-31 21:17:49,197.197 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 21:17:49,200.200 INFO    ] Checking for system updates...
[2026-08-31 21:17:49,236.236 INFO    ] 200
[2026-08-31 21:17:49,239.239 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:17:49,302.302 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:17:49,304.304 INFO    ] No update needed
[2026-08-31 21:17:49,307.307 INFO    ] Checking for camera pi updates...
[2026-08-31 21:17:49,341.341 INFO    ] 200
[2026-08-31 21:17:49,344.344 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:17:49,386.386 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:17:49,459.459 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:17:49,462.462 INFO    ] No camera update needed
[2026-08-31 21:17:49,465.465 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:17:49,467.467 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:17:49,474.474 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:17:49,479.479 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:17:51,520.520 INFO    ] ================================================
[2026-08-31 21:17:51,535.535 INFO    ] Launching Daemon at Mon Aug 31 21:17:51 IST 2026
[2026-08-31 21:17:51,546.546 INFO    ] ================================================
[2026-08-31 21:17:52,128.128 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:17:52
[2026-08-31 21:17:52,716.716 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:17:52,979.979 INFO    ] Initializing speech engine...
[2026-08-31 21:17:52,995.995 INFO    ] 2026-08-31 21:17:52
[2026-08-31 21:17:53,279.279 INFO    ] 2026-08-31 21:17:53
[2026-08-31 21:17:53,316.316 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:17:53,512.512 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:17:53,518.518 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:17:53,670.670 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:17:53,696.696 INFO    ] time= 31/08/2026 21:17:53
[2026-08-31 21:17:53,701.701 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:17:53,708.708 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:17:53,782.782 INFO    ] No existing commands found in stream
[2026-08-31 21:17:58,798.798 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:17:58,801.801 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-08-31 21:17:59,347.347 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 21:17:59,350.350 INFO    ] Checking for system updates...
[2026-08-31 21:17:59,385.385 INFO    ] 200
[2026-08-31 21:17:59,388.388 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:17:59,440.440 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:17:59,443.443 INFO    ] No update needed
[2026-08-31 21:17:59,445.445 INFO    ] Checking for camera pi updates...
[2026-08-31 21:17:59,479.479 INFO    ] 200
[2026-08-31 21:17:59,481.481 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:17:59,521.521 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:17:59,605.605 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:17:59,607.607 INFO    ] No camera update needed
[2026-08-31 21:17:59,610.610 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:17:59,612.612 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:17:59,618.618 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:17:59,623.623 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:18:01,662.662 INFO    ] ================================================
[2026-08-31 21:18:01,678.678 INFO    ] Launching Daemon at Mon Aug 31 21:18:01 IST 2026
[2026-08-31 21:18:01,689.689 INFO    ] ================================================
[2026-08-31 21:18:02,382.382 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:18:02
[2026-08-31 21:18:03,071.071 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:18:03,442.442 INFO    ] Initializing speech engine...
[2026-08-31 21:18:03,453.453 INFO    ] 2026-08-31 21:18:03
[2026-08-31 21:18:03,734.734 INFO    ] 2026-08-31 21:18:03
[2026-08-31 21:18:03,797.797 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:18:04,032.032 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:18:04,042.042 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:18:04,186.186 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:18:04,251.251 INFO    ] time= 31/08/2026 21:18:04
[2026-08-31 21:18:04,295.295 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:18:04,336.336 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:18:04,472.472 INFO    ] No existing commands found in stream
[2026-08-31 21:18:09,502.502 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:18:09,505.505 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-08-31 21:18:11,055.055 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 21:18:11,057.057 INFO    ] Checking for system updates...
[2026-08-31 21:18:11,092.092 INFO    ] 200
[2026-08-31 21:18:11,095.095 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:18:11,147.147 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:18:11,149.149 INFO    ] No update needed
[2026-08-31 21:18:11,152.152 INFO    ] Checking for camera pi updates...
[2026-08-31 21:18:11,185.185 INFO    ] 200
[2026-08-31 21:18:11,188.188 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:18:11,229.229 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:18:11,310.310 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:18:11,313.313 INFO    ] No camera update needed
[2026-08-31 21:18:11,315.315 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:18:11,318.318 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:18:11,323.323 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:18:11,328.328 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:18:13,369.369 INFO    ] ================================================
[2026-08-31 21:18:13,384.384 INFO    ] Launching Daemon at Mon Aug 31 21:18:13 IST 2026
[2026-08-31 21:18:13,395.395 INFO    ] ================================================
[2026-08-31 21:18:13,966.966 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:18:13
[2026-08-31 21:18:14,556.556 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:18:14,815.815 INFO    ] Initializing speech engine...
[2026-08-31 21:18:14,822.822 INFO    ] 2026-08-31 21:18:14
[2026-08-31 21:18:15,117.117 INFO    ] 2026-08-31 21:18:15
[2026-08-31 21:18:15,152.152 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:18:15,354.354 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:18:15,369.369 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:18:15,529.529 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:18:15,536.536 INFO    ] time= 31/08/2026 21:18:15
[2026-08-31 21:18:15,544.544 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:18:15,551.551 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:18:15,627.627 INFO    ] No existing commands found in stream
[2026-08-31 21:18:20,657.657 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:18:20,660.660 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-08-31 21:18:24,354.354 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 21:18:24,356.356 INFO    ] Checking for system updates...
[2026-08-31 21:18:24,396.396 INFO    ] 200
[2026-08-31 21:18:24,398.398 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:18:24,451.451 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:18:24,453.453 INFO    ] No update needed
[2026-08-31 21:18:24,455.455 INFO    ] Checking for camera pi updates...
[2026-08-31 21:18:24,489.489 INFO    ] 200
[2026-08-31 21:18:24,491.491 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:18:24,531.531 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:18:24,614.614 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:18:24,617.617 INFO    ] No camera update needed
[2026-08-31 21:18:24,619.619 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:18:24,621.621 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:18:24,627.627 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:18:24,632.632 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:18:26,672.672 INFO    ] ================================================
[2026-08-31 21:18:26,686.686 INFO    ] Launching Daemon at Mon Aug 31 21:18:26 IST 2026
[2026-08-31 21:18:26,697.697 INFO    ] ================================================
[2026-08-31 21:18:27,268.268 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:18:27
[2026-08-31 21:18:27,860.860 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:18:28,117.117 INFO    ] Initializing speech engine...
[2026-08-31 21:18:28,125.125 INFO    ] 2026-08-31 21:18:28
[2026-08-31 21:18:28,422.422 INFO    ] 2026-08-31 21:18:28
[2026-08-31 21:18:28,461.461 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:18:28,752.752 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:18:28,762.762 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:18:28,917.917 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:18:28,952.952 INFO    ] time= 31/08/2026 21:18:28
[2026-08-31 21:18:29,006.006 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:18:29,056.056 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:18:29,181.181 INFO    ] No existing commands found in stream
[2026-08-31 21:18:34,206.206 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:18:34,209.209 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-08-31 21:18:38,105.105 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 21:18:38,108.108 INFO    ] Checking for system updates...
[2026-08-31 21:18:38,145.145 INFO    ] 200
[2026-08-31 21:18:38,148.148 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:18:38,203.203 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:18:38,206.206 INFO    ] No update needed
[2026-08-31 21:18:38,209.209 INFO    ] Checking for camera pi updates...
[2026-08-31 21:18:38,244.244 INFO    ] 200
[2026-08-31 21:18:38,247.247 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:18:38,288.288 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:18:38,373.373 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:18:38,376.376 INFO    ] No camera update needed
[2026-08-31 21:18:38,378.378 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:18:38,381.381 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:18:38,387.387 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:18:38,393.393 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:18:40,435.435 INFO    ] ================================================
[2026-08-31 21:18:40,450.450 INFO    ] Launching Daemon at Mon Aug 31 21:18:40 IST 2026
[2026-08-31 21:18:40,461.461 INFO    ] ================================================
[2026-08-31 21:18:41,109.109 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:18:41
[2026-08-31 21:18:41,776.776 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:18:42,075.075 INFO    ] Initializing speech engine...
[2026-08-31 21:18:42,088.088 INFO    ] 2026-08-31 21:18:42
[2026-08-31 21:18:42,360.360 INFO    ] 2026-08-31 21:18:42
[2026-08-31 21:18:42,412.412 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:18:42,704.704 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:18:42,711.711 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:18:42,937.937 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:18:42,954.954 INFO    ] time= 31/08/2026 21:18:42
[2026-08-31 21:18:42,960.960 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:18:42,976.976 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:18:43,094.094 INFO    ] No existing commands found in stream
[2026-08-31 21:18:48,128.128 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:18:48,130.130 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-08-31 21:18:51,465.465 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 21:18:51,468.468 INFO    ] Checking for system updates...
[2026-08-31 21:18:51,505.505 INFO    ] 200
[2026-08-31 21:18:51,508.508 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:18:51,561.561 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:18:51,564.564 INFO    ] No update needed
[2026-08-31 21:18:51,566.566 INFO    ] Checking for camera pi updates...
[2026-08-31 21:18:51,601.601 INFO    ] 200
[2026-08-31 21:18:51,604.604 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:18:51,645.645 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:18:51,727.727 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:18:51,730.730 INFO    ] No camera update needed
[2026-08-31 21:18:51,733.733 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:18:51,735.735 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:18:51,741.741 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:18:51,747.747 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:18:53,788.788 INFO    ] ================================================
[2026-08-31 21:18:53,804.804 INFO    ] Launching Daemon at Mon Aug 31 21:18:53 IST 2026
[2026-08-31 21:18:53,814.814 INFO    ] ================================================
[2026-08-31 21:18:54,396.396 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:18:54
[2026-08-31 21:18:54,993.993 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:18:55,251.251 INFO    ] Initializing speech engine...
[2026-08-31 21:18:55,260.260 INFO    ] 2026-08-31 21:18:55
[2026-08-31 21:18:55,557.557 INFO    ] 2026-08-31 21:18:55
[2026-08-31 21:18:55,595.595 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:18:55,792.792 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:18:55,806.806 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:18:55,968.968 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:18:55,978.978 INFO    ] time= 31/08/2026 21:18:55
[2026-08-31 21:18:55,984.984 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:18:56,032.032 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:18:56,144.144 INFO    ] No existing commands found in stream
[2026-08-31 21:19:01,171.171 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:19:01,175.175 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-08-31 21:19:01,896.896 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 21:19:01,902.902 INFO    ] Checking for system updates...
[2026-08-31 21:19:01,954.954 INFO    ] 200
[2026-08-31 21:19:01,957.957 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:19:02,021.021 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:19:02,024.024 INFO    ] No update needed
[2026-08-31 21:19:02,027.027 INFO    ] Checking for camera pi updates...
[2026-08-31 21:19:02,066.066 INFO    ] 200
[2026-08-31 21:19:02,069.069 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:19:02,117.117 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:19:02,243.243 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:19:02,245.245 INFO    ] No camera update needed
[2026-08-31 21:19:02,248.248 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:19:02,251.251 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:19:02,257.257 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:19:02,263.263 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:19:04,305.305 INFO    ] ================================================
[2026-08-31 21:19:04,320.320 INFO    ] Launching Daemon at Mon Aug 31 21:19:04 IST 2026
[2026-08-31 21:19:04,331.331 INFO    ] ================================================
[2026-08-31 21:19:04,897.897 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:19:04
[2026-08-31 21:19:05,495.495 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:19:05,754.754 INFO    ] Initializing speech engine...
[2026-08-31 21:19:05,763.763 INFO    ] 2026-08-31 21:19:05
[2026-08-31 21:19:06,039.039 INFO    ] 2026-08-31 21:19:06
[2026-08-31 21:19:06,083.083 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:19:06,315.315 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:19:06,370.370 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:19:06,513.513 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:19:06,578.578 INFO    ] time= 31/08/2026 21:19:06
[2026-08-31 21:19:06,638.638 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:19:06,647.647 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:19:06,798.798 INFO    ] No existing commands found in stream
[2026-08-31 21:19:11,820.820 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:19:11,823.823 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-08-31 21:19:14,040.040 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 21:19:14,043.043 INFO    ] Checking for system updates...
[2026-08-31 21:19:14,078.078 INFO    ] 200
[2026-08-31 21:19:14,081.081 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:19:14,133.133 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:19:14,135.135 INFO    ] No update needed
[2026-08-31 21:19:14,138.138 INFO    ] Checking for camera pi updates...
[2026-08-31 21:19:14,174.174 INFO    ] 200
[2026-08-31 21:19:14,177.177 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:19:14,217.217 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:19:14,298.298 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:19:14,300.300 INFO    ] No camera update needed
[2026-08-31 21:19:14,303.303 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:19:14,305.305 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:19:14,310.310 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:19:14,315.315 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:19:16,355.355 INFO    ] ================================================
[2026-08-31 21:19:16,371.371 INFO    ] Launching Daemon at Mon Aug 31 21:19:16 IST 2026
[2026-08-31 21:19:16,381.381 INFO    ] ================================================
[2026-08-31 21:19:16,944.944 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:19:16
[2026-08-31 21:19:17,539.539 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:19:17,792.792 INFO    ] Initializing speech engine...
[2026-08-31 21:19:17,801.801 INFO    ] 2026-08-31 21:19:17
[2026-08-31 21:19:18,094.094 INFO    ] 2026-08-31 21:19:18
[2026-08-31 21:19:18,129.129 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:19:18,349.349 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:19:18,359.359 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:19:18,545.545 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:19:18,582.582 INFO    ] time= 31/08/2026 21:19:18
[2026-08-31 21:19:18,619.619 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:19:18,668.668 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:19:18,752.752 INFO    ] No existing commands found in stream
[2026-08-31 21:19:23,765.765 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:19:23,768.768 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-08-31 21:19:27,267.267 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 21:19:27,270.270 INFO    ] Checking for system updates...
[2026-08-31 21:19:27,306.306 INFO    ] 200
[2026-08-31 21:19:27,309.309 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:19:27,362.362 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:19:27,365.365 INFO    ] No update needed
[2026-08-31 21:19:27,368.368 INFO    ] Checking for camera pi updates...
[2026-08-31 21:19:27,402.402 INFO    ] 200
[2026-08-31 21:19:27,405.405 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:19:27,451.451 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:19:27,532.532 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:19:27,535.535 INFO    ] No camera update needed
[2026-08-31 21:19:27,537.537 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:19:27,540.540 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:19:27,546.546 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:19:27,552.552 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:19:29,594.594 INFO    ] ================================================
[2026-08-31 21:19:29,609.609 INFO    ] Launching Daemon at Mon Aug 31 21:19:29 IST 2026
[2026-08-31 21:19:29,620.620 INFO    ] ================================================
[2026-08-31 21:19:30,204.204 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:19:30
[2026-08-31 21:19:30,833.833 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:19:31,090.090 INFO    ] Initializing speech engine...
[2026-08-31 21:19:31,100.100 INFO    ] 2026-08-31 21:19:31
[2026-08-31 21:19:31,370.370 INFO    ] 2026-08-31 21:19:31
[2026-08-31 21:19:31,425.425 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:19:31,653.653 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:19:31,661.661 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:19:31,823.823 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:19:31,855.855 INFO    ] time= 31/08/2026 21:19:31
[2026-08-31 21:19:31,901.901 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:19:31,928.928 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:19:32,040.040 INFO    ] No existing commands found in stream
[2026-08-31 21:19:37,050.050 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:19:37,052.052 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-08-31 21:19:41,246.246 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 21:19:41,249.249 INFO    ] Checking for system updates...
[2026-08-31 21:19:41,284.284 INFO    ] 200
[2026-08-31 21:19:41,286.286 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:19:41,345.345 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:19:41,347.347 INFO    ] No update needed
[2026-08-31 21:19:41,350.350 INFO    ] Checking for camera pi updates...
[2026-08-31 21:19:41,383.383 INFO    ] 200
[2026-08-31 21:19:41,386.386 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:19:41,427.427 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:19:41,508.508 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:19:41,510.510 INFO    ] No camera update needed
[2026-08-31 21:19:41,513.513 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:19:41,515.515 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:19:41,520.520 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:19:41,525.525 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:19:43,566.566 INFO    ] ================================================
[2026-08-31 21:19:43,582.582 INFO    ] Launching Daemon at Mon Aug 31 21:19:43 IST 2026
[2026-08-31 21:19:43,592.592 INFO    ] ================================================
[2026-08-31 21:19:44,245.245 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:19:44
[2026-08-31 21:19:44,919.919 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:19:45,223.223 INFO    ] Initializing speech engine...
[2026-08-31 21:19:45,234.234 INFO    ] 2026-08-31 21:19:45
[2026-08-31 21:19:45,523.523 INFO    ] 2026-08-31 21:19:45
[2026-08-31 21:19:45,570.570 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:19:45,825.825 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:19:45,845.845 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:19:46,067.067 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:19:46,074.074 INFO    ] time= 31/08/2026 21:19:46
[2026-08-31 21:19:46,092.092 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:19:46,121.121 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:19:46,232.232 INFO    ] No existing commands found in stream
[2026-08-31 21:19:51,244.244 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:19:51,248.248 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-08-31 21:19:54,366.366 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 21:19:54,369.369 INFO    ] Checking for system updates...
[2026-08-31 21:19:54,408.408 INFO    ] 200
[2026-08-31 21:19:54,411.411 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:19:54,472.472 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:19:54,474.474 INFO    ] No update needed
[2026-08-31 21:19:54,477.477 INFO    ] Checking for camera pi updates...
[2026-08-31 21:19:54,516.516 INFO    ] 200
[2026-08-31 21:19:54,519.519 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:19:54,570.570 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:19:54,656.656 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:19:54,659.659 INFO    ] No camera update needed
[2026-08-31 21:19:54,661.661 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:19:54,664.664 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:19:54,669.669 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:19:54,674.674 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:19:56,715.715 INFO    ] ================================================
[2026-08-31 21:19:56,730.730 INFO    ] Launching Daemon at Mon Aug 31 21:19:56 IST 2026
[2026-08-31 21:19:56,741.741 INFO    ] ================================================
[2026-08-31 21:19:57,315.315 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:19:57
[2026-08-31 21:19:57,898.898 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:19:58,167.167 INFO    ] Initializing speech engine...
[2026-08-31 21:19:58,176.176 INFO    ] 2026-08-31 21:19:58
[2026-08-31 21:19:58,426.426 INFO    ] 2026-08-31 21:19:58
[2026-08-31 21:19:58,461.461 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:19:58,644.644 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:19:58,660.660 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:19:58,795.795 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:19:58,800.800 INFO    ] time= 31/08/2026 21:19:58
[2026-08-31 21:19:58,806.806 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:19:58,836.836 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:19:58,968.968 INFO    ] No existing commands found in stream
[2026-08-31 21:20:04,003.003 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:20:04,006.006 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-08-31 21:20:08,211.211 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 21:20:08,214.214 INFO    ] Checking for system updates...
[2026-08-31 21:20:08,249.249 INFO    ] 200
[2026-08-31 21:20:08,252.252 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:20:08,314.314 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:20:08,317.317 INFO    ] No update needed
[2026-08-31 21:20:08,320.320 INFO    ] Checking for camera pi updates...
[2026-08-31 21:20:08,357.357 INFO    ] 200
[2026-08-31 21:20:08,359.359 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:20:08,404.404 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:20:08,575.575 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:20:08,578.578 INFO    ] No camera update needed
[2026-08-31 21:20:08,580.580 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:20:08,583.583 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:20:08,588.588 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:20:08,593.593 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:20:10,633.633 INFO    ] ================================================
[2026-08-31 21:20:10,648.648 INFO    ] Launching Daemon at Mon Aug 31 21:20:10 IST 2026
[2026-08-31 21:20:10,659.659 INFO    ] ================================================
[2026-08-31 21:20:11,247.247 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:20:11
[2026-08-31 21:20:11,849.849 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:20:12,122.122 INFO    ] Initializing speech engine...
[2026-08-31 21:20:12,132.132 INFO    ] 2026-08-31 21:20:12
[2026-08-31 21:20:12,393.393 INFO    ] 2026-08-31 21:20:12
[2026-08-31 21:20:12,448.448 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:20:12,699.699 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:20:12,718.718 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:20:12,908.908 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:20:12,939.939 INFO    ] time= 31/08/2026 21:20:12
[2026-08-31 21:20:12,955.955 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:20:12,964.964 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:20:13,089.089 INFO    ] No existing commands found in stream
[2026-08-31 21:20:18,103.103 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:20:18,106.106 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-08-31 21:20:18,627.627 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 21:20:18,630.630 INFO    ] Checking for system updates...
[2026-08-31 21:20:18,666.666 INFO    ] 200
[2026-08-31 21:20:18,668.668 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:20:18,721.721 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:20:18,723.723 INFO    ] No update needed
[2026-08-31 21:20:18,726.726 INFO    ] Checking for camera pi updates...
[2026-08-31 21:20:18,759.759 INFO    ] 200
[2026-08-31 21:20:18,762.762 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:20:18,802.802 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:20:18,885.885 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:20:18,888.888 INFO    ] No camera update needed
[2026-08-31 21:20:18,891.891 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:20:18,893.893 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:20:18,899.899 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:20:18,904.904 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:20:20,945.945 INFO    ] ================================================
[2026-08-31 21:20:20,960.960 INFO    ] Launching Daemon at Mon Aug 31 21:20:20 IST 2026
[2026-08-31 21:20:20,971.971 INFO    ] ================================================
[2026-08-31 21:20:21,535.535 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:20:21
[2026-08-31 21:20:22,117.117 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:20:22,374.374 INFO    ] Initializing speech engine...
[2026-08-31 21:20:22,390.390 INFO    ] 2026-08-31 21:20:22
[2026-08-31 21:20:22,674.674 INFO    ] 2026-08-31 21:20:22
[2026-08-31 21:20:22,711.711 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:20:22,909.909 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:20:22,925.925 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:20:23,081.081 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:20:23,097.097 INFO    ] time= 31/08/2026 21:20:23
[2026-08-31 21:20:23,102.102 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:20:23,108.108 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:20:23,258.258 INFO    ] No existing commands found in stream
[2026-08-31 21:20:28,283.283 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:20:28,285.285 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-08-31 21:20:30,525.525 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 21:20:30,528.528 INFO    ] Checking for system updates...
[2026-08-31 21:20:30,564.564 INFO    ] 200
[2026-08-31 21:20:30,567.567 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:20:30,628.628 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:20:30,631.631 INFO    ] No update needed
[2026-08-31 21:20:30,634.634 INFO    ] Checking for camera pi updates...
[2026-08-31 21:20:30,669.669 INFO    ] 200
[2026-08-31 21:20:30,672.672 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:20:30,714.714 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:20:30,804.804 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:20:30,807.807 INFO    ] No camera update needed
[2026-08-31 21:20:30,810.810 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:20:30,813.813 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:20:30,819.819 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:20:30,825.825 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:20:32,868.868 INFO    ] ================================================
[2026-08-31 21:20:32,884.884 INFO    ] Launching Daemon at Mon Aug 31 21:20:32 IST 2026
[2026-08-31 21:20:32,898.898 INFO    ] ================================================
[2026-08-31 21:20:33,559.559 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:20:33
[2026-08-31 21:20:34,154.154 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:20:34,425.425 INFO    ] Initializing speech engine...
[2026-08-31 21:20:34,434.434 INFO    ] 2026-08-31 21:20:34
[2026-08-31 21:20:34,684.684 INFO    ] 2026-08-31 21:20:34
[2026-08-31 21:20:34,719.719 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:20:34,977.977 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:20:34,986.986 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:20:35,120.120 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:20:35,167.167 INFO    ] time= 31/08/2026 21:20:35
[2026-08-31 21:20:35,227.227 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:20:35,258.258 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:20:35,389.389 INFO    ] No existing commands found in stream
[2026-08-31 21:20:40,417.417 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:20:40,420.420 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-08-31 21:20:42,960.960 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 21:20:42,963.963 INFO    ] Checking for system updates...
[2026-08-31 21:20:42,999.999 INFO    ] 200
[2026-08-31 21:20:43,001.001 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:20:43,053.053 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:20:43,056.056 INFO    ] No update needed
[2026-08-31 21:20:43,059.059 INFO    ] Checking for camera pi updates...
[2026-08-31 21:20:43,096.096 INFO    ] 200
[2026-08-31 21:20:43,099.099 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:20:43,145.145 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:20:43,224.224 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:20:43,227.227 INFO    ] No camera update needed
[2026-08-31 21:20:43,229.229 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:20:43,231.231 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:20:43,237.237 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:20:43,242.242 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:20:45,285.285 INFO    ] ================================================
[2026-08-31 21:20:45,300.300 INFO    ] Launching Daemon at Mon Aug 31 21:20:45 IST 2026
[2026-08-31 21:20:45,311.311 INFO    ] ================================================
[2026-08-31 21:20:45,974.974 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:20:45
[2026-08-31 21:20:46,654.654 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:20:46,952.952 INFO    ] Initializing speech engine...
[2026-08-31 21:20:46,963.963 INFO    ] 2026-08-31 21:20:46
[2026-08-31 21:20:47,240.240 INFO    ] 2026-08-31 21:20:47
[2026-08-31 21:20:47,298.298 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:20:47,525.525 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:20:47,531.531 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:20:47,667.667 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:20:47,722.722 INFO    ] time= 31/08/2026 21:20:47
[2026-08-31 21:20:47,777.777 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:20:47,800.800 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:20:47,916.916 INFO    ] No existing commands found in stream
[2026-08-31 21:20:52,945.945 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:20:52,948.948 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-08-31 21:20:54,367.367 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 21:20:54,370.370 INFO    ] Checking for system updates...
[2026-08-31 21:20:54,407.407 INFO    ] 200
[2026-08-31 21:20:54,410.410 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:20:54,463.463 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:20:54,465.465 INFO    ] No update needed
[2026-08-31 21:20:54,468.468 INFO    ] Checking for camera pi updates...
[2026-08-31 21:20:54,502.502 INFO    ] 200
[2026-08-31 21:20:54,504.504 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:20:54,545.545 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:20:54,597.597 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:20:54,599.599 INFO    ] No camera update needed
[2026-08-31 21:20:54,602.602 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:20:54,604.604 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:20:54,609.609 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:20:54,614.614 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:20:56,653.653 INFO    ] ================================================
[2026-08-31 21:20:56,668.668 INFO    ] Launching Daemon at Mon Aug 31 21:20:56 IST 2026
[2026-08-31 21:20:56,679.679 INFO    ] ================================================
[2026-08-31 21:20:57,332.332 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:20:57
[2026-08-31 21:20:58,007.007 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:20:58,313.313 INFO    ] Initializing speech engine...
[2026-08-31 21:20:58,328.328 INFO    ] 2026-08-31 21:20:58
[2026-08-31 21:20:58,642.642 INFO    ] 2026-08-31 21:20:58
[2026-08-31 21:20:58,725.725 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:20:58,904.904 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:20:58,909.909 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:20:59,109.109 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:20:59,147.147 INFO    ] time= 31/08/2026 21:20:59
[2026-08-31 21:20:59,163.163 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:20:59,172.172 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:20:59,286.286 INFO    ] No existing commands found in stream
[2026-08-31 21:21:04,313.313 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:21:04,316.316 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-08-31 21:21:05,609.609 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 21:21:05,612.612 INFO    ] Checking for system updates...
[2026-08-31 21:21:05,651.651 INFO    ] 200
[2026-08-31 21:21:05,654.654 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:21:05,707.707 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:21:05,709.709 INFO    ] No update needed
[2026-08-31 21:21:05,712.712 INFO    ] Checking for camera pi updates...
[2026-08-31 21:21:05,746.746 INFO    ] 200
[2026-08-31 21:21:05,748.748 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:21:05,790.790 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:21:05,873.873 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:21:05,875.875 INFO    ] No camera update needed
[2026-08-31 21:21:05,877.877 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:21:05,880.880 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:21:05,885.885 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:21:05,890.890 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:21:07,930.930 INFO    ] ================================================
[2026-08-31 21:21:07,946.946 INFO    ] Launching Daemon at Mon Aug 31 21:21:07 IST 2026
[2026-08-31 21:21:07,956.956 INFO    ] ================================================
[2026-08-31 21:21:08,609.609 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:21:08
[2026-08-31 21:21:09,278.278 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:21:09,590.590 INFO    ] Initializing speech engine...
[2026-08-31 21:21:09,600.600 INFO    ] 2026-08-31 21:21:09
[2026-08-31 21:21:09,908.908 INFO    ] 2026-08-31 21:21:09
[2026-08-31 21:21:09,991.991 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:21:10,212.212 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:21:10,217.217 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:21:10,415.415 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:21:10,434.434 INFO    ] time= 31/08/2026 21:21:10
[2026-08-31 21:21:10,444.444 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:21:10,470.470 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:21:10,572.572 INFO    ] No existing commands found in stream
[2026-08-31 21:21:15,586.586 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:21:15,590.590 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-08-31 21:21:16,804.804 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 21:21:16,807.807 INFO    ] Checking for system updates...
[2026-08-31 21:21:16,844.844 INFO    ] 200
[2026-08-31 21:21:16,847.847 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:21:16,900.900 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:21:16,903.903 INFO    ] No update needed
[2026-08-31 21:21:16,905.905 INFO    ] Checking for camera pi updates...
[2026-08-31 21:21:16,939.939 INFO    ] 200
[2026-08-31 21:21:16,941.941 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:21:16,989.989 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:21:17,056.056 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:21:17,058.058 INFO    ] No camera update needed
[2026-08-31 21:21:17,061.061 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:21:17,063.063 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:21:17,069.069 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:21:17,074.074 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:21:19,113.113 INFO    ] ================================================
[2026-08-31 21:21:19,129.129 INFO    ] Launching Daemon at Mon Aug 31 21:21:19 IST 2026
[2026-08-31 21:21:19,139.139 INFO    ] ================================================
[2026-08-31 21:21:19,719.719 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:21:19
[2026-08-31 21:21:20,386.386 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:21:20,692.692 INFO    ] Initializing speech engine...
[2026-08-31 21:21:20,706.706 INFO    ] 2026-08-31 21:21:20
[2026-08-31 21:21:20,987.987 INFO    ] 2026-08-31 21:21:20
[2026-08-31 21:21:21,031.031 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:21:21,316.316 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:21:21,325.325 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:21:21,520.520 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:21:21,527.527 INFO    ] time= 31/08/2026 21:21:21
[2026-08-31 21:21:21,549.549 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:21:21,575.575 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:21:21,676.676 INFO    ] No existing commands found in stream
[2026-08-31 21:21:26,694.694 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:21:26,697.697 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-08-31 21:21:29,689.689 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 21:21:29,693.693 INFO    ] Checking for system updates...
[2026-08-31 21:21:29,730.730 INFO    ] 200
[2026-08-31 21:21:29,732.732 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:21:29,797.797 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:21:29,800.800 INFO    ] No update needed
[2026-08-31 21:21:29,802.802 INFO    ] Checking for camera pi updates...
[2026-08-31 21:21:29,842.842 INFO    ] 200
[2026-08-31 21:21:29,844.844 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:21:29,891.891 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:21:29,977.977 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:21:29,979.979 INFO    ] No camera update needed
[2026-08-31 21:21:29,982.982 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:21:29,984.984 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:21:29,990.990 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:21:29,995.995 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:21:32,037.037 INFO    ] ================================================
[2026-08-31 21:21:32,054.054 INFO    ] Launching Daemon at Mon Aug 31 21:21:32 IST 2026
[2026-08-31 21:21:32,066.066 INFO    ] ================================================
[2026-08-31 21:21:32,764.764 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:21:32
[2026-08-31 21:21:33,502.502 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:21:33,812.812 INFO    ] Initializing speech engine...
[2026-08-31 21:21:33,825.825 INFO    ] 2026-08-31 21:21:33
[2026-08-31 21:21:34,100.100 INFO    ] 2026-08-31 21:21:34
[2026-08-31 21:21:34,154.154 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:21:34,440.440 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:21:34,446.446 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:21:34,639.639 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:21:34,663.663 INFO    ] time= 31/08/2026 21:21:34
[2026-08-31 21:21:34,673.673 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:21:34,701.701 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:21:34,847.847 INFO    ] No existing commands found in stream
[2026-08-31 21:21:39,873.873 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:21:39,876.876 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-08-31 21:21:44,231.231 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 21:21:44,234.234 INFO    ] Checking for system updates...
[2026-08-31 21:21:44,281.281 INFO    ] 200
[2026-08-31 21:21:44,284.284 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:21:44,344.344 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:21:44,346.346 INFO    ] No update needed
[2026-08-31 21:21:44,349.349 INFO    ] Checking for camera pi updates...
[2026-08-31 21:21:44,387.387 INFO    ] 200
[2026-08-31 21:21:44,389.389 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:21:44,430.430 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:21:44,513.513 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:21:44,515.515 INFO    ] No camera update needed
[2026-08-31 21:21:44,518.518 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:21:44,520.520 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:21:44,526.526 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:21:44,531.531 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:21:46,570.570 INFO    ] ================================================
[2026-08-31 21:21:46,585.585 INFO    ] Launching Daemon at Mon Aug 31 21:21:46 IST 2026
[2026-08-31 21:21:46,596.596 INFO    ] ================================================
[2026-08-31 21:21:47,166.166 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:21:47
[2026-08-31 21:21:47,751.751 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:21:48,020.020 INFO    ] Initializing speech engine...
[2026-08-31 21:21:48,029.029 INFO    ] 2026-08-31 21:21:48
[2026-08-31 21:21:48,276.276 INFO    ] 2026-08-31 21:21:48
[2026-08-31 21:21:48,310.310 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:21:48,565.565 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:21:48,570.570 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:21:48,705.705 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:21:48,774.774 INFO    ] time= 31/08/2026 21:21:48
[2026-08-31 21:21:48,831.831 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:21:48,837.837 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:21:48,952.952 INFO    ] No existing commands found in stream
[2026-08-31 21:21:53,987.987 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:21:53,990.990 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-08-31 21:21:55,945.945 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 21:21:55,948.948 INFO    ] Checking for system updates...
[2026-08-31 21:21:55,985.985 INFO    ] 200
[2026-08-31 21:21:55,988.988 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:21:56,043.043 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:21:56,045.045 INFO    ] No update needed
[2026-08-31 21:21:56,048.048 INFO    ] Checking for camera pi updates...
[2026-08-31 21:21:56,087.087 INFO    ] 200
[2026-08-31 21:21:56,090.090 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:21:56,131.131 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:21:56,212.212 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:21:56,215.215 INFO    ] No camera update needed
[2026-08-31 21:21:56,218.218 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:21:56,220.220 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:21:56,226.226 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:21:56,232.232 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:21:58,274.274 INFO    ] ================================================
[2026-08-31 21:21:58,294.294 INFO    ] Launching Daemon at Mon Aug 31 21:21:58 IST 2026
[2026-08-31 21:21:58,305.305 INFO    ] ================================================
[2026-08-31 21:21:58,870.870 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:21:58
[2026-08-31 21:21:59,454.454 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:21:59,716.716 INFO    ] Initializing speech engine...
[2026-08-31 21:21:59,732.732 INFO    ] 2026-08-31 21:21:59
[2026-08-31 21:21:59,996.996 INFO    ] 2026-08-31 21:21:59
[2026-08-31 21:22:00,031.031 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:22:00,290.290 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:22:00,299.299 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:22:00,512.512 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:22:00,566.566 INFO    ] time= 31/08/2026 21:22:00
[2026-08-31 21:22:00,572.572 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:22:00,590.590 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:22:00,706.706 INFO    ] No existing commands found in stream
[2026-08-31 21:22:05,731.731 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:22:05,734.734 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-08-31 21:22:09,642.642 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 21:22:09,644.644 INFO    ] Checking for system updates...
[2026-08-31 21:22:09,683.683 INFO    ] 200
[2026-08-31 21:22:09,686.686 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:22:09,739.739 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:22:09,741.741 INFO    ] No update needed
[2026-08-31 21:22:09,743.743 INFO    ] Checking for camera pi updates...
[2026-08-31 21:22:09,778.778 INFO    ] 200
[2026-08-31 21:22:09,780.780 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:22:09,825.825 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:22:09,923.923 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:22:09,925.925 INFO    ] No camera update needed
[2026-08-31 21:22:09,928.928 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:22:09,930.930 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:22:09,936.936 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:22:09,941.941 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:22:11,983.983 INFO    ] ================================================
[2026-08-31 21:22:12,998.998 INFO    ] Launching Daemon at Mon Aug 31 21:22:11 IST 2026
[2026-08-31 21:22:12,009.009 INFO    ] ================================================
[2026-08-31 21:22:12,649.649 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:22:12
[2026-08-31 21:22:13,308.308 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:22:13,607.607 INFO    ] Initializing speech engine...
[2026-08-31 21:22:13,612.612 INFO    ] 2026-08-31 21:22:13
[2026-08-31 21:22:13,886.886 INFO    ] 2026-08-31 21:22:13
[2026-08-31 21:22:13,941.941 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:22:14,195.195 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:22:14,200.200 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:22:14,387.387 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:22:14,436.436 INFO    ] time= 31/08/2026 21:22:14
[2026-08-31 21:22:14,443.443 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:22:14,465.465 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:22:14,594.594 INFO    ] No existing commands found in stream
[2026-08-31 21:22:19,609.609 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:22:19,612.612 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-08-31 21:22:22,792.792 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 21:22:22,795.795 INFO    ] Checking for system updates...
[2026-08-31 21:22:22,834.834 INFO    ] 200
[2026-08-31 21:22:22,837.837 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:22:22,896.896 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:22:22,899.899 INFO    ] No update needed
[2026-08-31 21:22:22,902.902 INFO    ] Checking for camera pi updates...
[2026-08-31 21:22:22,936.936 INFO    ] 200
[2026-08-31 21:22:22,939.939 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:22:22,981.981 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:22:23,160.160 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:22:23,163.163 INFO    ] No camera update needed
[2026-08-31 21:22:23,165.165 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:22:23,167.167 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:22:23,172.172 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:22:23,177.177 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:22:25,219.219 INFO    ] ================================================
[2026-08-31 21:22:25,234.234 INFO    ] Launching Daemon at Mon Aug 31 21:22:25 IST 2026
[2026-08-31 21:22:25,245.245 INFO    ] ================================================
[2026-08-31 21:22:25,811.811 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:22:25
[2026-08-31 21:22:26,394.394 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:22:26,640.640 INFO    ] Initializing speech engine...
[2026-08-31 21:22:26,661.661 INFO    ] 2026-08-31 21:22:26
[2026-08-31 21:22:26,918.918 INFO    ] 2026-08-31 21:22:26
[2026-08-31 21:22:26,953.953 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:22:27,205.205 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:22:27,216.216 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:22:27,426.426 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:22:27,471.471 INFO    ] time= 31/08/2026 21:22:27
[2026-08-31 21:22:27,478.478 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:22:27,496.496 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:22:27,626.626 INFO    ] No existing commands found in stream
[2026-08-31 21:22:32,640.640 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:22:32,644.644 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-08-31 21:22:34,728.728 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 21:22:34,731.731 INFO    ] Checking for system updates...
[2026-08-31 21:22:34,768.768 INFO    ] 200
[2026-08-31 21:22:34,770.770 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:22:34,824.824 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:22:34,827.827 INFO    ] No update needed
[2026-08-31 21:22:34,830.830 INFO    ] Checking for camera pi updates...
[2026-08-31 21:22:34,864.864 INFO    ] 200
[2026-08-31 21:22:34,867.867 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:22:34,912.912 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:22:35,008.008 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:22:35,010.010 INFO    ] No camera update needed
[2026-08-31 21:22:35,013.013 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:22:35,016.016 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:22:35,022.022 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:22:35,027.027 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:22:37,070.070 INFO    ] ================================================
[2026-08-31 21:22:37,086.086 INFO    ] Launching Daemon at Mon Aug 31 21:22:37 IST 2026
[2026-08-31 21:22:37,098.098 INFO    ] ================================================
[2026-08-31 21:22:37,748.748 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:22:37
[2026-08-31 21:22:38,381.381 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:22:38,640.640 INFO    ] Initializing speech engine...
[2026-08-31 21:22:38,656.656 INFO    ] 2026-08-31 21:22:38
[2026-08-31 21:22:38,938.938 INFO    ] 2026-08-31 21:22:38
[2026-08-31 21:22:38,975.975 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:22:39,169.169 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:22:39,184.184 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:22:39,347.347 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:22:39,352.352 INFO    ] time= 31/08/2026 21:22:39
[2026-08-31 21:22:39,358.358 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:22:39,406.406 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:22:39,556.556 INFO    ] No existing commands found in stream
[2026-08-31 21:22:44,579.579 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:22:44,582.582 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-08-31 21:22:47,041.041 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 21:22:47,043.043 INFO    ] Checking for system updates...
[2026-08-31 21:22:47,082.082 INFO    ] 200
[2026-08-31 21:22:47,085.085 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:22:47,143.143 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:22:47,145.145 INFO    ] No update needed
[2026-08-31 21:22:47,148.148 INFO    ] Checking for camera pi updates...
[2026-08-31 21:22:47,182.182 INFO    ] 200
[2026-08-31 21:22:47,184.184 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:22:47,224.224 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:22:47,307.307 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:22:47,310.310 INFO    ] No camera update needed
[2026-08-31 21:22:47,312.312 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:22:47,314.314 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:22:47,320.320 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:22:47,325.325 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:22:49,365.365 INFO    ] ================================================
[2026-08-31 21:22:49,381.381 INFO    ] Launching Daemon at Mon Aug 31 21:22:49 IST 2026
[2026-08-31 21:22:49,392.392 INFO    ] ================================================
[2026-08-31 21:22:49,958.958 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:22:49
[2026-08-31 21:22:50,550.550 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:22:50,827.827 INFO    ] Initializing speech engine...
[2026-08-31 21:22:50,834.834 INFO    ] 2026-08-31 21:22:50
[2026-08-31 21:22:51,096.096 INFO    ] 2026-08-31 21:22:51
[2026-08-31 21:22:51,149.149 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:22:51,375.375 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:22:51,380.380 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:22:51,612.612 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:22:51,644.644 INFO    ] time= 31/08/2026 21:22:51
[2026-08-31 21:22:51,661.661 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:22:51,693.693 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:22:51,825.825 INFO    ] No existing commands found in stream
[2026-08-31 21:22:56,850.850 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:22:56,853.853 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-08-31 21:23:00,745.745 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 21:23:00,748.748 INFO    ] Checking for system updates...
[2026-08-31 21:23:00,785.785 INFO    ] 200
[2026-08-31 21:23:00,788.788 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:23:00,842.842 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:23:00,844.844 INFO    ] No update needed
[2026-08-31 21:23:00,847.847 INFO    ] Checking for camera pi updates...
[2026-08-31 21:23:00,881.881 INFO    ] 200
[2026-08-31 21:23:00,883.883 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:23:00,924.924 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:23:01,006.006 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:23:01,008.008 INFO    ] No camera update needed
[2026-08-31 21:23:01,011.011 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:23:01,013.013 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:23:01,018.018 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:23:01,023.023 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:23:03,069.069 INFO    ] ================================================
[2026-08-31 21:23:03,092.092 INFO    ] Launching Daemon at Mon Aug 31 21:23:03 IST 2026
[2026-08-31 21:23:03,109.109 INFO    ] ================================================
[2026-08-31 21:23:03,740.740 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:23:03
[2026-08-31 21:23:04,323.323 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:23:04,600.600 INFO    ] Initializing speech engine...
[2026-08-31 21:23:04,606.606 INFO    ] 2026-08-31 21:23:04
[2026-08-31 21:23:04,855.855 INFO    ] 2026-08-31 21:23:04
[2026-08-31 21:23:04,890.890 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:23:05,062.062 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:23:05,074.074 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:23:05,221.221 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:23:05,230.230 INFO    ] time= 31/08/2026 21:23:05
[2026-08-31 21:23:05,275.275 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:23:05,296.296 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:23:05,423.423 INFO    ] No existing commands found in stream
[2026-08-31 21:23:10,436.436 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:23:10,439.439 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-08-31 21:23:12,626.626 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 21:23:12,629.629 INFO    ] Checking for system updates...
[2026-08-31 21:23:12,664.664 INFO    ] 200
[2026-08-31 21:23:12,666.666 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:23:12,725.725 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:23:12,727.727 INFO    ] No update needed
[2026-08-31 21:23:12,730.730 INFO    ] Checking for camera pi updates...
[2026-08-31 21:23:12,767.767 INFO    ] 200
[2026-08-31 21:23:12,769.769 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:23:12,814.814 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:23:12,906.906 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:23:12,908.908 INFO    ] No camera update needed
[2026-08-31 21:23:12,911.911 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:23:12,913.913 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:23:12,919.919 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:23:12,924.924 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:23:14,964.964 INFO    ] ================================================
[2026-08-31 21:23:14,979.979 INFO    ] Launching Daemon at Mon Aug 31 21:23:14 IST 2026
[2026-08-31 21:23:14,989.989 INFO    ] ================================================
[2026-08-31 21:23:15,572.572 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:23:15
[2026-08-31 21:23:16,169.169 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:23:16,447.447 INFO    ] Initializing speech engine...
[2026-08-31 21:23:16,452.452 INFO    ] 2026-08-31 21:23:16
[2026-08-31 21:23:16,714.714 INFO    ] 2026-08-31 21:23:16
[2026-08-31 21:23:16,745.745 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:23:16,995.995 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:23:17,004.004 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:23:17,139.139 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:23:17,199.199 INFO    ] time= 31/08/2026 21:23:17
[2026-08-31 21:23:17,264.264 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:23:17,274.274 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:23:17,420.420 INFO    ] No existing commands found in stream
[2026-08-31 21:23:22,438.438 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:23:22,441.441 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-08-31 21:23:24,881.881 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 21:23:24,884.884 INFO    ] Checking for system updates...
[2026-08-31 21:23:24,925.925 INFO    ] 200
[2026-08-31 21:23:24,927.927 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:23:24,988.988 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:23:24,991.991 INFO    ] No update needed
[2026-08-31 21:23:24,994.994 INFO    ] Checking for camera pi updates...
[2026-08-31 21:23:25,032.032 INFO    ] 200
[2026-08-31 21:23:25,035.035 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:23:25,076.076 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:23:25,161.161 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:23:25,164.164 INFO    ] No camera update needed
[2026-08-31 21:23:25,167.167 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:23:25,169.169 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:23:25,176.176 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:23:25,181.181 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:23:27,223.223 INFO    ] ================================================
[2026-08-31 21:23:27,238.238 INFO    ] Launching Daemon at Mon Aug 31 21:23:27 IST 2026
[2026-08-31 21:23:27,248.248 INFO    ] ================================================
[2026-08-31 21:23:27,827.827 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:23:27
[2026-08-31 21:23:28,420.420 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:23:28,682.682 INFO    ] Initializing speech engine...
[2026-08-31 21:23:28,707.707 INFO    ] 2026-08-31 21:23:28
[2026-08-31 21:23:28,980.980 INFO    ] 2026-08-31 21:23:28
[2026-08-31 21:23:29,016.016 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:23:29,235.235 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:23:29,263.263 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:23:29,459.459 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:23:29,502.502 INFO    ] time= 31/08/2026 21:23:29
[2026-08-31 21:23:29,557.557 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:23:29,607.607 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:23:29,679.679 INFO    ] No existing commands found in stream
[2026-08-31 21:23:34,711.711 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:23:34,714.714 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-08-31 21:23:35,602.602 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 21:23:35,605.605 INFO    ] Checking for system updates...
[2026-08-31 21:23:35,644.644 INFO    ] 200
[2026-08-31 21:23:35,646.646 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:23:35,700.700 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:23:35,702.702 INFO    ] No update needed
[2026-08-31 21:23:35,705.705 INFO    ] Checking for camera pi updates...
[2026-08-31 21:23:35,740.740 INFO    ] 200
[2026-08-31 21:23:35,743.743 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:23:35,784.784 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:23:35,872.872 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:23:35,875.875 INFO    ] No camera update needed
[2026-08-31 21:23:35,877.877 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:23:35,879.879 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:23:35,885.885 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:23:35,890.890 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:23:37,930.930 INFO    ] ================================================
[2026-08-31 21:23:37,945.945 INFO    ] Launching Daemon at Mon Aug 31 21:23:37 IST 2026
[2026-08-31 21:23:37,956.956 INFO    ] ================================================
[2026-08-31 21:23:38,601.601 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:23:38
[2026-08-31 21:23:39,263.263 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:23:39,567.567 INFO    ] Initializing speech engine...
[2026-08-31 21:23:39,579.579 INFO    ] 2026-08-31 21:23:39
[2026-08-31 21:23:39,892.892 INFO    ] 2026-08-31 21:23:39
[2026-08-31 21:23:39,981.981 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:23:40,199.199 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:23:40,204.204 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:23:40,402.402 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:23:40,410.410 INFO    ] time= 31/08/2026 21:23:40
[2026-08-31 21:23:40,432.432 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:23:40,459.459 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:23:40,570.570 INFO    ] No existing commands found in stream
[2026-08-31 21:23:45,590.590 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:23:45,593.593 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-08-31 21:23:49,668.668 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 21:23:49,671.671 INFO    ] Checking for system updates...
[2026-08-31 21:23:49,711.711 INFO    ] 200
[2026-08-31 21:23:49,714.714 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:23:49,777.777 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:23:49,780.780 INFO    ] No update needed
[2026-08-31 21:23:49,783.783 INFO    ] Checking for camera pi updates...
[2026-08-31 21:23:49,821.821 INFO    ] 200
[2026-08-31 21:23:49,824.824 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:23:49,866.866 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:23:49,954.954 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:23:49,957.957 INFO    ] No camera update needed
[2026-08-31 21:23:49,960.960 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:23:49,962.962 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:23:49,968.968 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:23:49,974.974 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:23:52,016.016 INFO    ] ================================================
[2026-08-31 21:23:52,031.031 INFO    ] Launching Daemon at Mon Aug 31 21:23:52 IST 2026
[2026-08-31 21:23:52,041.041 INFO    ] ================================================
[2026-08-31 21:23:52,613.613 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:23:52
[2026-08-31 21:23:53,199.199 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:23:53,466.466 INFO    ] Initializing speech engine...
[2026-08-31 21:23:53,478.478 INFO    ] 2026-08-31 21:23:53
[2026-08-31 21:23:53,729.729 INFO    ] 2026-08-31 21:23:53
[2026-08-31 21:23:53,765.765 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:23:53,941.941 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:23:53,964.964 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:23:54,101.101 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:23:54,109.109 INFO    ] time= 31/08/2026 21:23:54
[2026-08-31 21:23:54,150.150 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:23:54,177.177 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:23:54,306.306 INFO    ] No existing commands found in stream
[2026-08-31 21:23:59,317.317 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:23:59,320.320 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-08-31 21:24:00,867.867 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 21:24:00,870.870 INFO    ] Checking for system updates...
[2026-08-31 21:24:00,905.905 INFO    ] 200
[2026-08-31 21:24:00,908.908 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:24:00,965.965 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:24:00,968.968 INFO    ] No update needed
[2026-08-31 21:24:00,970.970 INFO    ] Checking for camera pi updates...
[2026-08-31 21:24:01,007.007 INFO    ] 200
[2026-08-31 21:24:01,010.010 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:24:01,050.050 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:24:01,132.132 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:24:01,134.134 INFO    ] No camera update needed
[2026-08-31 21:24:01,137.137 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:24:01,139.139 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:24:01,144.144 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:24:01,149.149 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:24:03,198.198 INFO    ] ================================================
[2026-08-31 21:24:03,214.214 INFO    ] Launching Daemon at Mon Aug 31 21:24:03 IST 2026
[2026-08-31 21:24:03,225.225 INFO    ] ================================================
[2026-08-31 21:24:03,830.830 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:24:03
[2026-08-31 21:24:04,428.428 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:24:04,702.702 INFO    ] Initializing speech engine...
[2026-08-31 21:24:04,711.711 INFO    ] 2026-08-31 21:24:04
[2026-08-31 21:24:04,974.974 INFO    ] 2026-08-31 21:24:04
[2026-08-31 21:24:05,031.031 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:24:05,265.265 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:24:05,270.270 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:24:05,423.423 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:24:05,465.465 INFO    ] time= 31/08/2026 21:24:05
[2026-08-31 21:24:05,509.509 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:24:05,569.569 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:24:05,703.703 INFO    ] No existing commands found in stream
[2026-08-31 21:24:10,724.724 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:24:10,726.726 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-08-31 21:24:13,114.114 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 21:24:13,116.116 INFO    ] Checking for system updates...
[2026-08-31 21:24:13,158.158 INFO    ] 200
[2026-08-31 21:24:13,161.161 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:24:13,219.219 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:24:13,221.221 INFO    ] No update needed
[2026-08-31 21:24:13,224.224 INFO    ] Checking for camera pi updates...
[2026-08-31 21:24:13,263.263 INFO    ] 200
[2026-08-31 21:24:13,266.266 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:24:13,312.312 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:24:13,402.402 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:24:13,404.404 INFO    ] No camera update needed
[2026-08-31 21:24:13,407.407 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:24:13,411.411 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:24:13,418.418 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:24:13,424.424 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:24:15,465.465 INFO    ] ================================================
[2026-08-31 21:24:15,480.480 INFO    ] Launching Daemon at Mon Aug 31 21:24:15 IST 2026
[2026-08-31 21:24:15,491.491 INFO    ] ================================================
[2026-08-31 21:24:16,073.073 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:24:16
[2026-08-31 21:24:16,669.669 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:24:16,946.946 INFO    ] Initializing speech engine...
[2026-08-31 21:24:16,952.952 INFO    ] 2026-08-31 21:24:16
[2026-08-31 21:24:17,215.215 INFO    ] 2026-08-31 21:24:17
[2026-08-31 21:24:17,269.269 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:24:17,516.516 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:24:17,524.524 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:24:17,751.751 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:24:17,759.759 INFO    ] time= 31/08/2026 21:24:17
[2026-08-31 21:24:17,777.777 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:24:17,794.794 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:24:17,940.940 INFO    ] No existing commands found in stream
[2026-08-31 21:24:22,975.975 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:24:22,978.978 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-08-31 21:24:27,740.740 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 21:24:27,743.743 INFO    ] Checking for system updates...
[2026-08-31 21:24:27,780.780 INFO    ] 200
[2026-08-31 21:24:27,783.783 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:24:27,836.836 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:24:27,839.839 INFO    ] No update needed
[2026-08-31 21:24:27,842.842 INFO    ] Checking for camera pi updates...
[2026-08-31 21:24:27,877.877 INFO    ] 200
[2026-08-31 21:24:27,880.880 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:24:27,921.921 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:24:28,100.100 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:24:28,103.103 INFO    ] No camera update needed
[2026-08-31 21:24:28,106.106 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:24:28,109.109 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:24:28,115.115 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:24:28,121.121 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:24:30,163.163 INFO    ] ================================================
[2026-08-31 21:24:30,179.179 INFO    ] Launching Daemon at Mon Aug 31 21:24:30 IST 2026
[2026-08-31 21:24:30,189.189 INFO    ] ================================================
[2026-08-31 21:24:30,844.844 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:24:30
[2026-08-31 21:24:31,517.517 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:24:31,830.830 INFO    ] Initializing speech engine...
[2026-08-31 21:24:31,842.842 INFO    ] 2026-08-31 21:24:31
[2026-08-31 21:24:32,159.159 INFO    ] 2026-08-31 21:24:32
[2026-08-31 21:24:32,189.189 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:24:32,416.416 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:24:32,424.424 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:24:32,618.618 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:24:32,685.685 INFO    ] time= 31/08/2026 21:24:32
[2026-08-31 21:24:32,709.709 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:24:32,725.725 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:24:32,850.850 INFO    ] No existing commands found in stream
[2026-08-31 21:24:37,870.870 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:24:37,873.873 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-08-31 21:24:38,860.860 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 21:24:38,863.863 INFO    ] Checking for system updates...
[2026-08-31 21:24:38,898.898 INFO    ] 200
[2026-08-31 21:24:38,901.901 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:24:38,955.955 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:24:38,958.958 INFO    ] No update needed
[2026-08-31 21:24:38,960.960 INFO    ] Checking for camera pi updates...
[2026-08-31 21:24:38,993.993 INFO    ] 200
[2026-08-31 21:24:38,996.996 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:24:39,037.037 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:24:39,121.121 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:24:39,123.123 INFO    ] No camera update needed
[2026-08-31 21:24:39,125.125 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:24:39,128.128 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:24:39,133.133 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:24:39,138.138 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:24:41,178.178 INFO    ] ================================================
[2026-08-31 21:24:41,193.193 INFO    ] Launching Daemon at Mon Aug 31 21:24:41 IST 2026
[2026-08-31 21:24:41,204.204 INFO    ] ================================================
[2026-08-31 21:24:41,776.776 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:24:41
[2026-08-31 21:24:42,375.375 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:24:42,648.648 INFO    ] Initializing speech engine...
[2026-08-31 21:24:42,659.659 INFO    ] 2026-08-31 21:24:42
[2026-08-31 21:24:42,906.906 INFO    ] 2026-08-31 21:24:42
[2026-08-31 21:24:42,941.941 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:24:43,196.196 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:24:43,201.201 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:24:43,405.405 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:24:43,459.459 INFO    ] time= 31/08/2026 21:24:43
[2026-08-31 21:24:43,464.464 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:24:43,483.483 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:24:43,593.593 INFO    ] No existing commands found in stream
[2026-08-31 21:24:48,620.620 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:24:48,623.623 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-08-31 21:24:51,000.000 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 21:24:51,002.002 INFO    ] Checking for system updates...
[2026-08-31 21:24:51,041.041 INFO    ] 200
[2026-08-31 21:24:51,044.044 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:24:51,104.104 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:24:51,107.107 INFO    ] No update needed
[2026-08-31 21:24:51,110.110 INFO    ] Checking for camera pi updates...
[2026-08-31 21:24:51,146.146 INFO    ] 200
[2026-08-31 21:24:51,149.149 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:24:51,193.193 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:24:51,274.274 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:24:51,277.277 INFO    ] No camera update needed
[2026-08-31 21:24:51,281.281 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:24:51,284.284 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:24:51,291.291 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:24:51,298.298 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:24:53,342.342 INFO    ] ================================================
[2026-08-31 21:24:53,359.359 INFO    ] Launching Daemon at Mon Aug 31 21:24:53 IST 2026
[2026-08-31 21:24:53,372.372 INFO    ] ================================================
[2026-08-31 21:24:53,968.968 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:24:53
[2026-08-31 21:24:54,582.582 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:24:54,868.868 INFO    ] Initializing speech engine...
[2026-08-31 21:24:54,875.875 INFO    ] 2026-08-31 21:24:54
[2026-08-31 21:24:55,146.146 INFO    ] 2026-08-31 21:24:55
[2026-08-31 21:24:55,215.215 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:24:55,386.386 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:24:55,403.403 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:24:55,581.581 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:24:55,587.587 INFO    ] time= 31/08/2026 21:24:55
[2026-08-31 21:24:55,594.594 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:24:55,633.633 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:24:55,710.710 INFO    ] No existing commands found in stream
[2026-08-31 21:25:00,719.719 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:25:00,722.722 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-08-31 21:25:02,065.065 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 21:25:02,083.083 INFO    ] Checking for system updates...
[2026-08-31 21:25:02,196.196 INFO    ] 200
[2026-08-31 21:25:02,199.199 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-08-31 21:25:02,229.229 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-08-31 21:25:02,232.232 INFO    ] Checking for camera pi updates...
[2026-08-31 21:25:02,343.343 INFO    ] 200
[2026-08-31 21:25:02,348.348 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-08-31 21:25:02,353.353 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-08-31 21:25:02,368.368 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:25:02,371.371 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:25:02,384.384 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:25:02,405.405 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:25:04,458.458 INFO    ] ================================================
[2026-08-31 21:25:04,474.474 INFO    ] Launching Daemon at Mon Aug 31 21:25:04 IST 2026
[2026-08-31 21:25:04,485.485 INFO    ] ================================================
[2026-08-31 21:25:05,055.055 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:25:05
[2026-08-31 21:25:05,642.642 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:25:05,894.894 INFO    ] Initializing speech engine...
[2026-08-31 21:25:05,902.902 INFO    ] 2026-08-31 21:25:05
[2026-08-31 21:25:06,201.201 INFO    ] 2026-08-31 21:25:06
[2026-08-31 21:25:06,236.236 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:25:06,469.469 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:25:06,525.525 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:25:06,711.711 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:25:06,748.748 INFO    ] time= 31/08/2026 21:25:06
[2026-08-31 21:25:06,803.803 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:25:06,863.863 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:25:06,942.942 INFO    ] No existing commands found in stream
[2026-08-31 21:25:11,977.977 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:25:11,980.980 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-08-31 21:25:13,677.677 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 21:25:13,679.679 INFO    ] Checking for system updates...
[2026-08-31 21:25:13,716.716 INFO    ] 200
[2026-08-31 21:25:13,718.718 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:25:13,777.777 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:25:13,780.780 INFO    ] No update needed
[2026-08-31 21:25:13,782.782 INFO    ] Checking for camera pi updates...
[2026-08-31 21:25:13,815.815 INFO    ] 200
[2026-08-31 21:25:13,818.818 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:25:13,858.858 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:25:13,908.908 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:25:13,910.910 INFO    ] No camera update needed
[2026-08-31 21:25:13,913.913 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:25:13,915.915 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:25:13,920.920 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:25:13,925.925 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:25:15,968.968 INFO    ] ================================================
[2026-08-31 21:25:15,984.984 INFO    ] Launching Daemon at Mon Aug 31 21:25:15 IST 2026
[2026-08-31 21:25:16,995.995 INFO    ] ================================================
[2026-08-31 21:25:16,574.574 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:25:16
[2026-08-31 21:25:17,172.172 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:25:17,440.440 INFO    ] Initializing speech engine...
[2026-08-31 21:25:17,449.449 INFO    ] 2026-08-31 21:25:17
[2026-08-31 21:25:17,693.693 INFO    ] 2026-08-31 21:25:17
[2026-08-31 21:25:17,728.728 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:25:17,988.988 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:25:17,994.994 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:25:18,129.129 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:25:18,200.200 INFO    ] time= 31/08/2026 21:25:18
[2026-08-31 21:25:18,258.258 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:25:18,264.264 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:25:18,366.366 INFO    ] No existing commands found in stream
[2026-08-31 21:25:23,389.389 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:25:23,392.392 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-08-31 21:25:23,982.982 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 21:25:23,985.985 INFO    ] Checking for system updates...
[2026-08-31 21:25:24,022.022 INFO    ] 200
[2026-08-31 21:25:24,025.025 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:25:24,080.080 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:25:24,083.083 INFO    ] No update needed
[2026-08-31 21:25:24,085.085 INFO    ] Checking for camera pi updates...
[2026-08-31 21:25:24,120.120 INFO    ] 200
[2026-08-31 21:25:24,122.122 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:25:24,163.163 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:25:24,243.243 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:25:24,245.245 INFO    ] No camera update needed
[2026-08-31 21:25:24,248.248 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:25:24,250.250 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:25:24,255.255 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:25:24,260.260 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:25:26,301.301 INFO    ] ================================================
[2026-08-31 21:25:26,316.316 INFO    ] Launching Daemon at Mon Aug 31 21:25:26 IST 2026
[2026-08-31 21:25:26,327.327 INFO    ] ================================================
[2026-08-31 21:25:26,988.988 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:25:26
[2026-08-31 21:25:27,672.672 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:25:27,982.982 INFO    ] Initializing speech engine...
[2026-08-31 21:25:27,995.995 INFO    ] 2026-08-31 21:25:27
[2026-08-31 21:25:28,305.305 INFO    ] 2026-08-31 21:25:28
[2026-08-31 21:25:28,393.393 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:25:28,670.670 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:25:28,714.714 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:25:28,947.947 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:25:28,981.981 INFO    ] time= 31/08/2026 21:25:28
[2026-08-31 21:25:29,031.031 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:25:29,063.063 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:25:29,204.204 INFO    ] No existing commands found in stream
[2026-08-31 21:25:34,224.224 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:25:34,228.228 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-08-31 21:25:36,159.159 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 21:25:36,162.162 INFO    ] Checking for system updates...
[2026-08-31 21:25:36,200.200 INFO    ] 200
[2026-08-31 21:25:36,203.203 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:25:36,263.263 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:25:36,266.266 INFO    ] No update needed
[2026-08-31 21:25:36,269.269 INFO    ] Checking for camera pi updates...
[2026-08-31 21:25:36,304.304 INFO    ] 200
[2026-08-31 21:25:36,307.307 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:25:36,349.349 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:25:36,430.430 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:25:36,433.433 INFO    ] No camera update needed
[2026-08-31 21:25:36,435.435 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:25:36,438.438 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:25:36,444.444 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:25:36,450.450 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:25:38,494.494 INFO    ] ================================================
[2026-08-31 21:25:38,509.509 INFO    ] Launching Daemon at Mon Aug 31 21:25:38 IST 2026
[2026-08-31 21:25:38,520.520 INFO    ] ================================================
[2026-08-31 21:25:39,137.137 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:25:39
[2026-08-31 21:25:39,819.819 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:25:40,127.127 INFO    ] Initializing speech engine...
[2026-08-31 21:25:40,135.135 INFO    ] 2026-08-31 21:25:40
[2026-08-31 21:25:40,430.430 INFO    ] 2026-08-31 21:25:40
[2026-08-31 21:25:40,475.475 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:25:40,732.732 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:25:40,750.750 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:25:40,945.945 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:25:40,980.980 INFO    ] time= 31/08/2026 21:25:40
[2026-08-31 21:25:40,997.997 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:25:41,006.006 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:25:41,112.112 INFO    ] No existing commands found in stream
[2026-08-31 21:25:46,146.146 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:25:46,150.150 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-08-31 21:25:46,708.708 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 21:25:46,711.711 INFO    ] Checking for system updates...
[2026-08-31 21:25:46,748.748 INFO    ] 200
[2026-08-31 21:25:46,751.751 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:25:46,805.805 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:25:46,808.808 INFO    ] No update needed
[2026-08-31 21:25:46,810.810 INFO    ] Checking for camera pi updates...
[2026-08-31 21:25:46,850.850 INFO    ] 200
[2026-08-31 21:25:46,852.852 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:25:46,893.893 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:25:46,978.978 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:25:46,981.981 INFO    ] No camera update needed
[2026-08-31 21:25:46,983.983 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:25:46,985.985 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:25:46,991.991 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:25:46,996.996 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:25:49,037.037 INFO    ] ================================================
[2026-08-31 21:25:49,052.052 INFO    ] Launching Daemon at Mon Aug 31 21:25:49 IST 2026
[2026-08-31 21:25:49,063.063 INFO    ] ================================================
[2026-08-31 21:25:49,641.641 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:25:49
[2026-08-31 21:25:50,223.223 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:25:50,495.495 INFO    ] Initializing speech engine...
[2026-08-31 21:25:50,503.503 INFO    ] 2026-08-31 21:25:50
[2026-08-31 21:25:50,745.745 INFO    ] 2026-08-31 21:25:50
[2026-08-31 21:25:50,779.779 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:25:51,030.030 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:25:51,039.039 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:25:51,232.232 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:25:51,281.281 INFO    ] time= 31/08/2026 21:25:51
[2026-08-31 21:25:51,301.301 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:25:51,318.318 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:25:51,431.431 INFO    ] No existing commands found in stream
[2026-08-31 21:25:56,458.458 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:25:56,461.461 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-08-31 21:25:56,980.980 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 21:25:56,982.982 INFO    ] Checking for system updates...
[2026-08-31 21:25:57,018.018 INFO    ] 200
[2026-08-31 21:25:57,020.020 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:25:57,073.073 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:25:57,075.075 INFO    ] No update needed
[2026-08-31 21:25:57,078.078 INFO    ] Checking for camera pi updates...
[2026-08-31 21:25:57,112.112 INFO    ] 200
[2026-08-31 21:25:57,114.114 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:25:57,155.155 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:25:57,252.252 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:25:57,254.254 INFO    ] No camera update needed
[2026-08-31 21:25:57,257.257 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:25:57,259.259 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:25:57,264.264 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:25:57,269.269 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:25:59,308.308 INFO    ] ================================================
[2026-08-31 21:25:59,324.324 INFO    ] Launching Daemon at Mon Aug 31 21:25:59 IST 2026
[2026-08-31 21:25:59,335.335 INFO    ] ================================================
[2026-08-31 21:25:59,901.901 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:25:59
[2026-08-31 21:26:00,499.499 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:26:00,745.745 INFO    ] Initializing speech engine...
[2026-08-31 21:26:00,753.753 INFO    ] 2026-08-31 21:26:00
[2026-08-31 21:26:01,027.027 INFO    ] 2026-08-31 21:26:01
[2026-08-31 21:26:01,062.062 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:26:01,320.320 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:26:01,330.330 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:26:01,539.539 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:26:01,593.593 INFO    ] time= 31/08/2026 21:26:01
[2026-08-31 21:26:01,600.600 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:26:01,619.619 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:26:01,738.738 INFO    ] No existing commands found in stream
[2026-08-31 21:26:06,770.770 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:26:06,772.772 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-08-31 21:26:08,398.398 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 21:26:08,400.400 INFO    ] Checking for system updates...
[2026-08-31 21:26:08,435.435 INFO    ] 200
[2026-08-31 21:26:08,438.438 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:26:08,491.491 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:26:08,493.493 INFO    ] No update needed
[2026-08-31 21:26:08,495.495 INFO    ] Checking for camera pi updates...
[2026-08-31 21:26:08,529.529 INFO    ] 200
[2026-08-31 21:26:08,532.532 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:26:08,577.577 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:26:08,657.657 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:26:08,660.660 INFO    ] No camera update needed
[2026-08-31 21:26:08,662.662 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:26:08,664.664 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:26:08,669.669 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:26:08,674.674 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:26:10,714.714 INFO    ] ================================================
[2026-08-31 21:26:10,729.729 INFO    ] Launching Daemon at Mon Aug 31 21:26:10 IST 2026
[2026-08-31 21:26:10,740.740 INFO    ] ================================================
[2026-08-31 21:26:11,319.319 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:26:11
[2026-08-31 21:26:11,915.915 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:26:12,188.188 INFO    ] Initializing speech engine...
[2026-08-31 21:26:12,197.197 INFO    ] 2026-08-31 21:26:12
[2026-08-31 21:26:12,445.445 INFO    ] 2026-08-31 21:26:12
[2026-08-31 21:26:12,511.511 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:26:12,733.733 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:26:12,746.746 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:26:12,898.898 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:26:12,963.963 INFO    ] time= 31/08/2026 21:26:12
[2026-08-31 21:26:13,018.018 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:26:13,044.044 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:26:13,189.189 INFO    ] No existing commands found in stream
[2026-08-31 21:26:18,219.219 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:26:18,222.222 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-08-31 21:26:19,262.262 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 21:26:19,265.265 INFO    ] Checking for system updates...
[2026-08-31 21:26:19,304.304 INFO    ] 200
[2026-08-31 21:26:19,307.307 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:26:19,365.365 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:26:19,368.368 INFO    ] No update needed
[2026-08-31 21:26:19,370.370 INFO    ] Checking for camera pi updates...
[2026-08-31 21:26:19,404.404 INFO    ] 200
[2026-08-31 21:26:19,406.406 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:26:19,446.446 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:26:19,544.544 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:26:19,546.546 INFO    ] No camera update needed
[2026-08-31 21:26:19,549.549 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:26:19,551.551 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:26:19,557.557 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:26:19,562.562 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:26:21,605.605 INFO    ] ================================================
[2026-08-31 21:26:21,620.620 INFO    ] Launching Daemon at Mon Aug 31 21:26:21 IST 2026
[2026-08-31 21:26:21,630.630 INFO    ] ================================================
[2026-08-31 21:26:22,216.216 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:26:22
[2026-08-31 21:26:22,798.798 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:26:23,057.057 INFO    ] Initializing speech engine...
[2026-08-31 21:26:23,076.076 INFO    ] 2026-08-31 21:26:23
[2026-08-31 21:26:23,326.326 INFO    ] 2026-08-31 21:26:23
[2026-08-31 21:26:23,361.361 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:26:23,616.616 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:26:23,625.625 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:26:23,762.762 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:26:23,822.822 INFO    ] time= 31/08/2026 21:26:23
[2026-08-31 21:26:23,886.886 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:26:23,897.897 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:26:24,034.034 INFO    ] No existing commands found in stream
[2026-08-31 21:26:29,054.054 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:26:29,056.056 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-08-31 21:26:29,859.859 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 21:26:29,862.862 INFO    ] Checking for system updates...
[2026-08-31 21:26:29,898.898 INFO    ] 200
[2026-08-31 21:26:29,901.901 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:26:29,954.954 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:26:29,956.956 INFO    ] No update needed
[2026-08-31 21:26:29,958.958 INFO    ] Checking for camera pi updates...
[2026-08-31 21:26:29,993.993 INFO    ] 200
[2026-08-31 21:26:29,995.995 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:26:30,036.036 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:26:30,218.218 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:26:30,220.220 INFO    ] No camera update needed
[2026-08-31 21:26:30,223.223 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:26:30,225.225 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:26:30,231.231 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:26:30,236.236 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:26:32,277.277 INFO    ] ================================================
[2026-08-31 21:26:32,294.294 INFO    ] Launching Daemon at Mon Aug 31 21:26:32 IST 2026
[2026-08-31 21:26:32,305.305 INFO    ] ================================================
[2026-08-31 21:26:33,014.014 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:26:33
[2026-08-31 21:26:33,626.626 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:26:33,874.874 INFO    ] Initializing speech engine...
[2026-08-31 21:26:33,889.889 INFO    ] 2026-08-31 21:26:33
[2026-08-31 21:26:34,155.155 INFO    ] 2026-08-31 21:26:34
[2026-08-31 21:26:34,191.191 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:26:34,448.448 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:26:34,458.458 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:26:34,595.595 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:26:34,660.660 INFO    ] time= 31/08/2026 21:26:34
[2026-08-31 21:26:34,714.714 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:26:34,732.732 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:26:34,854.854 INFO    ] No existing commands found in stream
[2026-08-31 21:26:39,885.885 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:26:39,888.888 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-08-31 21:26:43,741.741 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 21:26:43,743.743 INFO    ] Checking for system updates...
[2026-08-31 21:26:43,780.780 INFO    ] 200
[2026-08-31 21:26:43,783.783 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:26:43,835.835 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:26:43,838.838 INFO    ] No update needed
[2026-08-31 21:26:43,840.840 INFO    ] Checking for camera pi updates...
[2026-08-31 21:26:43,873.873 INFO    ] 200
[2026-08-31 21:26:43,875.875 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:26:43,916.916 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:26:43,995.995 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:26:43,997.997 INFO    ] No camera update needed
[2026-08-31 21:26:43,999.999 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:26:44,002.002 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:26:44,007.007 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:26:44,012.012 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:26:46,051.051 INFO    ] ================================================
[2026-08-31 21:26:46,065.065 INFO    ] Launching Daemon at Mon Aug 31 21:26:46 IST 2026
[2026-08-31 21:26:46,076.076 INFO    ] ================================================
[2026-08-31 21:26:46,682.682 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:26:46
[2026-08-31 21:26:47,264.264 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:26:47,533.533 INFO    ] Initializing speech engine...
[2026-08-31 21:26:47,542.542 INFO    ] 2026-08-31 21:26:47
[2026-08-31 21:26:47,793.793 INFO    ] 2026-08-31 21:26:47
[2026-08-31 21:26:47,828.828 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:26:48,085.085 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:26:48,094.094 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:26:48,309.309 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:26:48,358.358 INFO    ] time= 31/08/2026 21:26:48
[2026-08-31 21:26:48,364.364 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:26:48,382.382 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:26:48,504.504 INFO    ] No existing commands found in stream
[2026-08-31 21:26:53,525.525 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:26:53,528.528 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-08-31 21:26:55,543.543 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 21:26:55,545.545 INFO    ] Checking for system updates...
[2026-08-31 21:26:55,581.581 INFO    ] 200
[2026-08-31 21:26:55,583.583 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:26:55,642.642 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:26:55,645.645 INFO    ] No update needed
[2026-08-31 21:26:55,647.647 INFO    ] Checking for camera pi updates...
[2026-08-31 21:26:55,684.684 INFO    ] 200
[2026-08-31 21:26:55,686.686 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:26:55,726.726 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:26:55,801.801 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:26:55,804.804 INFO    ] No camera update needed
[2026-08-31 21:26:55,806.806 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:26:55,809.809 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:26:55,814.814 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:26:55,819.819 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:26:57,860.860 INFO    ] ================================================
[2026-08-31 21:26:57,875.875 INFO    ] Launching Daemon at Mon Aug 31 21:26:57 IST 2026
[2026-08-31 21:26:57,886.886 INFO    ] ================================================
[2026-08-31 21:26:58,486.486 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:26:58
[2026-08-31 21:26:59,069.069 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:26:59,342.342 INFO    ] Initializing speech engine...
[2026-08-31 21:26:59,351.351 INFO    ] 2026-08-31 21:26:59
[2026-08-31 21:26:59,616.616 INFO    ] 2026-08-31 21:26:59
[2026-08-31 21:26:59,671.671 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:26:59,899.899 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:26:59,904.904 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:27:00,143.143 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:27:00,164.164 INFO    ] time= 31/08/2026 21:27:00
[2026-08-31 21:27:00,180.180 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:27:00,199.199 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:27:00,322.322 INFO    ] No existing commands found in stream
[2026-08-31 21:27:05,348.348 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:27:05,351.351 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-08-31 21:27:09,707.707 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 21:27:09,710.710 INFO    ] Checking for system updates...
[2026-08-31 21:27:09,747.747 INFO    ] 200
[2026-08-31 21:27:09,749.749 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:27:09,808.808 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:27:09,811.811 INFO    ] No update needed
[2026-08-31 21:27:09,813.813 INFO    ] Checking for camera pi updates...
[2026-08-31 21:27:09,854.854 INFO    ] 200
[2026-08-31 21:27:09,857.857 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:27:09,898.898 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:27:10,000.000 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:27:10,002.002 INFO    ] No camera update needed
[2026-08-31 21:27:10,005.005 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:27:10,007.007 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:27:10,013.013 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:27:10,018.018 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:27:12,058.058 INFO    ] ================================================
[2026-08-31 21:27:12,073.073 INFO    ] Launching Daemon at Mon Aug 31 21:27:12 IST 2026
[2026-08-31 21:27:12,083.083 INFO    ] ================================================
[2026-08-31 21:27:12,654.654 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:27:12
[2026-08-31 21:27:13,254.254 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:27:13,519.519 INFO    ] Initializing speech engine...
[2026-08-31 21:27:13,533.533 INFO    ] 2026-08-31 21:27:13
[2026-08-31 21:27:13,817.817 INFO    ] 2026-08-31 21:27:13
[2026-08-31 21:27:13,857.857 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:27:14,055.055 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:27:14,113.113 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:27:14,269.269 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:27:14,329.329 INFO    ] time= 31/08/2026 21:27:14
[2026-08-31 21:27:14,380.380 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:27:14,387.387 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:27:14,533.533 INFO    ] No existing commands found in stream
[2026-08-31 21:27:19,545.545 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:27:19,548.548 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-08-31 21:27:21,818.818 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 21:27:21,821.821 INFO    ] Checking for system updates...
[2026-08-31 21:27:21,857.857 INFO    ] 200
[2026-08-31 21:27:21,860.860 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:27:21,924.924 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:27:21,926.926 INFO    ] No update needed
[2026-08-31 21:27:21,930.930 INFO    ] Checking for camera pi updates...
[2026-08-31 21:27:21,965.965 INFO    ] 200
[2026-08-31 21:27:21,968.968 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:27:22,013.013 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:27:22,112.112 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:27:22,115.115 INFO    ] No camera update needed
[2026-08-31 21:27:22,117.117 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:27:22,120.120 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:27:22,126.126 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:27:22,132.132 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:27:24,173.173 INFO    ] ================================================
[2026-08-31 21:27:24,188.188 INFO    ] Launching Daemon at Mon Aug 31 21:27:24 IST 2026
[2026-08-31 21:27:24,199.199 INFO    ] ================================================
[2026-08-31 21:27:24,784.784 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:27:24
[2026-08-31 21:27:25,382.382 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:27:25,643.643 INFO    ] Initializing speech engine...
[2026-08-31 21:27:25,650.650 INFO    ] 2026-08-31 21:27:25
[2026-08-31 21:27:25,945.945 INFO    ] 2026-08-31 21:27:25
[2026-08-31 21:27:25,982.982 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:27:26,178.178 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:27:26,191.191 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:27:26,346.346 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:27:26,365.365 INFO    ] time= 31/08/2026 21:27:26
[2026-08-31 21:27:26,371.371 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:27:26,379.379 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:27:26,505.505 INFO    ] No existing commands found in stream
[2026-08-31 21:27:31,530.530 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:27:31,533.533 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-08-31 21:27:35,029.029 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 21:27:35,032.032 INFO    ] Checking for system updates...
[2026-08-31 21:27:35,067.067 INFO    ] 200
[2026-08-31 21:27:35,070.070 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:27:35,123.123 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:27:35,125.125 INFO    ] No update needed
[2026-08-31 21:27:35,128.128 INFO    ] Checking for camera pi updates...
[2026-08-31 21:27:35,165.165 INFO    ] 200
[2026-08-31 21:27:35,167.167 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:27:35,212.212 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:27:35,292.292 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:27:35,295.295 INFO    ] No camera update needed
[2026-08-31 21:27:35,297.297 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:27:35,300.300 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:27:35,305.305 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:27:35,310.310 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:27:37,350.350 INFO    ] ================================================
[2026-08-31 21:27:37,365.365 INFO    ] Launching Daemon at Mon Aug 31 21:27:37 IST 2026
[2026-08-31 21:27:37,377.377 INFO    ] ================================================
[2026-08-31 21:27:37,950.950 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:27:37
[2026-08-31 21:27:38,532.532 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:27:38,782.782 INFO    ] Initializing speech engine...
[2026-08-31 21:27:38,793.793 INFO    ] 2026-08-31 21:27:38
[2026-08-31 21:27:39,058.058 INFO    ] 2026-08-31 21:27:39
[2026-08-31 21:27:39,092.092 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:27:39,295.295 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:27:39,351.351 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:27:39,493.493 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:27:39,500.500 INFO    ] time= 31/08/2026 21:27:39
[2026-08-31 21:27:39,560.560 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:27:39,614.614 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:27:39,750.750 INFO    ] No existing commands found in stream
[2026-08-31 21:27:44,781.781 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:27:44,783.783 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-08-31 21:27:48,386.386 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 21:27:48,389.389 INFO    ] Checking for system updates...
[2026-08-31 21:27:48,429.429 INFO    ] 200
[2026-08-31 21:27:48,431.431 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:27:48,495.495 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:27:48,498.498 INFO    ] No update needed
[2026-08-31 21:27:48,502.502 INFO    ] Checking for camera pi updates...
[2026-08-31 21:27:48,539.539 INFO    ] 200
[2026-08-31 21:27:48,542.542 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:27:48,588.588 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:27:48,691.691 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:27:48,694.694 INFO    ] No camera update needed
[2026-08-31 21:27:48,696.696 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:27:48,699.699 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:27:48,705.705 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:27:48,711.711 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:27:50,755.755 INFO    ] ================================================
[2026-08-31 21:27:50,770.770 INFO    ] Launching Daemon at Mon Aug 31 21:27:50 IST 2026
[2026-08-31 21:27:50,782.782 INFO    ] ================================================
[2026-08-31 21:27:51,348.348 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:27:51
[2026-08-31 21:27:51,931.931 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:27:52,199.199 INFO    ] Initializing speech engine...
[2026-08-31 21:27:52,208.208 INFO    ] 2026-08-31 21:27:52
[2026-08-31 21:27:52,454.454 INFO    ] 2026-08-31 21:27:52
[2026-08-31 21:27:52,488.488 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:27:52,744.744 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:27:52,749.749 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:27:52,947.947 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:27:53,001.001 INFO    ] time= 31/08/2026 21:27:52
[2026-08-31 21:27:53,012.012 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:27:53,029.029 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:27:53,165.165 INFO    ] No existing commands found in stream
[2026-08-31 21:27:58,209.209 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:27:58,212.212 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-08-31 21:28:02,390.390 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 21:28:02,393.393 INFO    ] Checking for system updates...
[2026-08-31 21:28:02,437.437 INFO    ] 200
[2026-08-31 21:28:02,440.440 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:28:02,507.507 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:28:02,511.511 INFO    ] No update needed
[2026-08-31 21:28:02,514.514 INFO    ] Checking for camera pi updates...
[2026-08-31 21:28:02,562.562 INFO    ] 200
[2026-08-31 21:28:02,565.565 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:28:02,625.625 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:28:02,710.710 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:28:02,713.713 INFO    ] No camera update needed
[2026-08-31 21:28:02,716.716 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:28:02,719.719 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:28:02,725.725 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:28:02,731.731 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:28:04,772.772 INFO    ] ================================================
[2026-08-31 21:28:04,788.788 INFO    ] Launching Daemon at Mon Aug 31 21:28:04 IST 2026
[2026-08-31 21:28:04,798.798 INFO    ] ================================================
[2026-08-31 21:28:05,379.379 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:28:05
[2026-08-31 21:28:05,976.976 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:28:06,230.230 INFO    ] Initializing speech engine...
[2026-08-31 21:28:06,252.252 INFO    ] 2026-08-31 21:28:06
[2026-08-31 21:28:06,506.506 INFO    ] 2026-08-31 21:28:06
[2026-08-31 21:28:06,542.542 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:28:06,773.773 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:28:06,843.843 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:28:07,001.001 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:28:07,023.023 INFO    ] time= 31/08/2026 21:28:07
[2026-08-31 21:28:07,078.078 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:28:07,127.127 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:28:07,212.212 INFO    ] No existing commands found in stream
[2026-08-31 21:28:12,225.225 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:28:12,228.228 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-08-31 21:28:15,334.334 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 21:28:15,337.337 INFO    ] Checking for system updates...
[2026-08-31 21:28:15,376.376 INFO    ] 200
[2026-08-31 21:28:15,379.379 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:28:15,438.438 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:28:15,441.441 INFO    ] No update needed
[2026-08-31 21:28:15,443.443 INFO    ] Checking for camera pi updates...
[2026-08-31 21:28:15,481.481 INFO    ] 200
[2026-08-31 21:28:15,483.483 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:28:15,528.528 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:28:15,611.611 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:28:15,613.613 INFO    ] No camera update needed
[2026-08-31 21:28:15,616.616 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:28:15,618.618 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:28:15,624.624 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:28:15,629.629 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:28:17,668.668 INFO    ] ================================================
[2026-08-31 21:28:17,684.684 INFO    ] Launching Daemon at Mon Aug 31 21:28:17 IST 2026
[2026-08-31 21:28:17,695.695 INFO    ] ================================================
[2026-08-31 21:28:18,262.262 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:28:18
[2026-08-31 21:28:18,847.847 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:28:19,114.114 INFO    ] Initializing speech engine...
[2026-08-31 21:28:19,123.123 INFO    ] 2026-08-31 21:28:19
[2026-08-31 21:28:19,369.369 INFO    ] 2026-08-31 21:28:19
[2026-08-31 21:28:19,404.404 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:28:19,655.655 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:28:19,665.665 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:28:19,796.796 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:28:19,818.818 INFO    ] time= 31/08/2026 21:28:19
[2026-08-31 21:28:19,878.878 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:28:19,930.930 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:28:20,053.053 INFO    ] No existing commands found in stream
[2026-08-31 21:28:25,083.083 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:28:25,086.086 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-08-31 21:28:28,871.871 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 21:28:28,873.873 INFO    ] Checking for system updates...
[2026-08-31 21:28:28,908.908 INFO    ] 200
[2026-08-31 21:28:28,911.911 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:28:28,970.970 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:28:28,972.972 INFO    ] No update needed
[2026-08-31 21:28:28,974.974 INFO    ] Checking for camera pi updates...
[2026-08-31 21:28:29,008.008 INFO    ] 200
[2026-08-31 21:28:29,010.010 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:28:29,050.050 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:28:29,140.140 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:28:29,142.142 INFO    ] No camera update needed
[2026-08-31 21:28:29,145.145 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:28:29,147.147 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:28:29,152.152 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:28:29,157.157 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:28:31,198.198 INFO    ] ================================================
[2026-08-31 21:28:31,214.214 INFO    ] Launching Daemon at Mon Aug 31 21:28:31 IST 2026
[2026-08-31 21:28:31,225.225 INFO    ] ================================================
[2026-08-31 21:28:31,806.806 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:28:31
[2026-08-31 21:28:32,451.451 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:28:32,726.726 INFO    ] Initializing speech engine...
[2026-08-31 21:28:32,745.745 INFO    ] 2026-08-31 21:28:32
[2026-08-31 21:28:33,061.061 INFO    ] 2026-08-31 21:28:33
[2026-08-31 21:28:33,100.100 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:28:33,299.299 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:28:33,329.329 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:28:33,480.480 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:28:33,488.488 INFO    ] time= 31/08/2026 21:28:33
[2026-08-31 21:28:33,496.496 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:28:33,524.524 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:28:33,655.655 INFO    ] No existing commands found in stream
[2026-08-31 21:28:38,680.680 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:28:38,683.683 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-08-31 21:28:41,466.466 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 21:28:41,469.469 INFO    ] Checking for system updates...
[2026-08-31 21:28:41,504.504 INFO    ] 200
[2026-08-31 21:28:41,506.506 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:28:41,560.560 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:28:41,562.562 INFO    ] No update needed
[2026-08-31 21:28:41,564.564 INFO    ] Checking for camera pi updates...
[2026-08-31 21:28:41,598.598 INFO    ] 200
[2026-08-31 21:28:41,600.600 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:28:41,646.646 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:28:41,739.739 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:28:41,742.742 INFO    ] No camera update needed
[2026-08-31 21:28:41,744.744 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:28:41,746.746 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:28:41,752.752 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:28:41,756.756 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:28:43,798.798 INFO    ] ================================================
[2026-08-31 21:28:43,813.813 INFO    ] Launching Daemon at Mon Aug 31 21:28:43 IST 2026
[2026-08-31 21:28:43,825.825 INFO    ] ================================================
[2026-08-31 21:28:44,390.390 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:28:44
[2026-08-31 21:28:44,972.972 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:28:45,239.239 INFO    ] Initializing speech engine...
[2026-08-31 21:28:45,248.248 INFO    ] 2026-08-31 21:28:45
[2026-08-31 21:28:45,502.502 INFO    ] 2026-08-31 21:28:45
[2026-08-31 21:28:45,560.560 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:28:45,786.786 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:28:45,792.792 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:28:45,988.988 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:28:46,049.049 INFO    ] time= 31/08/2026 21:28:45
[2026-08-31 21:28:46,055.055 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:28:46,072.072 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:28:46,215.215 INFO    ] No existing commands found in stream
[2026-08-31 21:28:51,241.241 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:28:51,244.244 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-08-31 21:28:55,431.431 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 21:28:55,434.434 INFO    ] Checking for system updates...
[2026-08-31 21:28:55,469.469 INFO    ] 200
[2026-08-31 21:28:55,472.472 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:28:55,532.532 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:28:55,534.534 INFO    ] No update needed
[2026-08-31 21:28:55,537.537 INFO    ] Checking for camera pi updates...
[2026-08-31 21:28:55,574.574 INFO    ] 200
[2026-08-31 21:28:55,577.577 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:28:55,623.623 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:28:55,700.700 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:28:55,703.703 INFO    ] No camera update needed
[2026-08-31 21:28:55,706.706 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:28:55,709.709 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:28:55,715.715 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:28:55,721.721 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:28:57,764.764 INFO    ] ================================================
[2026-08-31 21:28:57,780.780 INFO    ] Launching Daemon at Mon Aug 31 21:28:57 IST 2026
[2026-08-31 21:28:57,790.790 INFO    ] ================================================
[2026-08-31 21:28:58,363.363 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:28:58
[2026-08-31 21:28:59,029.029 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:28:59,337.337 INFO    ] Initializing speech engine...
[2026-08-31 21:28:59,345.345 INFO    ] 2026-08-31 21:28:59
[2026-08-31 21:28:59,639.639 INFO    ] 2026-08-31 21:28:59
[2026-08-31 21:28:59,677.677 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:28:59,961.961 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:28:59,970.970 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:29:00,144.144 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:29:00,173.173 INFO    ] time= 31/08/2026 21:29:00
[2026-08-31 21:29:00,191.191 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:29:00,209.209 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:29:00,337.337 INFO    ] No existing commands found in stream
[2026-08-31 21:29:05,362.362 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:29:05,365.365 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-08-31 21:29:09,039.039 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 21:29:09,042.042 INFO    ] Checking for system updates...
[2026-08-31 21:29:09,084.084 INFO    ] 200
[2026-08-31 21:29:09,087.087 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:29:09,143.143 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:29:09,146.146 INFO    ] No update needed
[2026-08-31 21:29:09,148.148 INFO    ] Checking for camera pi updates...
[2026-08-31 21:29:09,184.184 INFO    ] 200
[2026-08-31 21:29:09,186.186 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:29:09,229.229 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:29:09,303.303 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:29:09,306.306 INFO    ] No camera update needed
[2026-08-31 21:29:09,309.309 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:29:09,312.312 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:29:09,318.318 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:29:09,324.324 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:29:11,365.365 INFO    ] ================================================
[2026-08-31 21:29:11,380.380 INFO    ] Launching Daemon at Mon Aug 31 21:29:11 IST 2026
[2026-08-31 21:29:11,392.392 INFO    ] ================================================
[2026-08-31 21:29:11,972.972 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:29:11
[2026-08-31 21:29:12,569.569 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:29:12,840.840 INFO    ] Initializing speech engine...
[2026-08-31 21:29:12,851.851 INFO    ] 2026-08-31 21:29:12
[2026-08-31 21:29:13,098.098 INFO    ] 2026-08-31 21:29:13
[2026-08-31 21:29:13,133.133 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:29:13,388.388 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:29:13,395.395 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:29:13,610.610 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:29:13,654.654 INFO    ] time= 31/08/2026 21:29:13
[2026-08-31 21:29:13,682.682 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:29:13,702.702 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:29:13,820.820 INFO    ] No existing commands found in stream
[2026-08-31 21:29:18,853.853 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:29:18,856.856 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-08-31 21:29:20,700.700 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 21:29:20,703.703 INFO    ] Checking for system updates...
[2026-08-31 21:29:20,739.739 INFO    ] 200
[2026-08-31 21:29:20,742.742 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:29:20,794.794 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:29:20,796.796 INFO    ] No update needed
[2026-08-31 21:29:20,799.799 INFO    ] Checking for camera pi updates...
[2026-08-31 21:29:20,837.837 INFO    ] 200
[2026-08-31 21:29:20,840.840 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:29:20,885.885 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:29:20,972.972 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:29:20,974.974 INFO    ] No camera update needed
[2026-08-31 21:29:20,976.976 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:29:20,979.979 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:29:20,984.984 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:29:20,989.989 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:29:23,033.033 INFO    ] ================================================
[2026-08-31 21:29:23,049.049 INFO    ] Launching Daemon at Mon Aug 31 21:29:23 IST 2026
[2026-08-31 21:29:23,061.061 INFO    ] ================================================
[2026-08-31 21:29:23,648.648 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:29:23
[2026-08-31 21:29:24,244.244 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:29:24,514.514 INFO    ] Initializing speech engine...
[2026-08-31 21:29:24,524.524 INFO    ] 2026-08-31 21:29:24
[2026-08-31 21:29:24,771.771 INFO    ] 2026-08-31 21:29:24
[2026-08-31 21:29:24,807.807 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:29:25,064.064 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:29:25,070.070 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:29:25,259.259 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:29:25,319.319 INFO    ] time= 31/08/2026 21:29:25
[2026-08-31 21:29:25,331.331 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:29:25,346.346 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:29:25,493.493 INFO    ] No existing commands found in stream
[2026-08-31 21:29:30,530.530 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:29:30,532.532 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-08-31 21:29:31,333.333 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 21:29:31,336.336 INFO    ] Checking for system updates...
[2026-08-31 21:29:31,378.378 INFO    ] 200
[2026-08-31 21:29:31,380.380 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:29:31,440.440 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:29:31,442.442 INFO    ] No update needed
[2026-08-31 21:29:31,445.445 INFO    ] Checking for camera pi updates...
[2026-08-31 21:29:31,482.482 INFO    ] 200
[2026-08-31 21:29:31,485.485 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:29:31,530.530 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:29:31,596.596 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:29:31,599.599 INFO    ] No camera update needed
[2026-08-31 21:29:31,601.601 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:29:31,603.603 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:29:31,609.609 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:29:31,614.614 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:29:33,659.659 INFO    ] ================================================
[2026-08-31 21:29:33,675.675 INFO    ] Launching Daemon at Mon Aug 31 21:29:33 IST 2026
[2026-08-31 21:29:33,686.686 INFO    ] ================================================
[2026-08-31 21:29:34,256.256 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:29:34
[2026-08-31 21:29:34,853.853 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:29:35,129.129 INFO    ] Initializing speech engine...
[2026-08-31 21:29:35,135.135 INFO    ] 2026-08-31 21:29:35
[2026-08-31 21:29:35,398.398 INFO    ] 2026-08-31 21:29:35
[2026-08-31 21:29:35,453.453 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:29:35,677.677 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:29:35,683.683 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:29:35,899.899 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:29:35,938.938 INFO    ] time= 31/08/2026 21:29:35
[2026-08-31 21:29:35,955.955 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:29:35,965.965 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:29:36,091.091 INFO    ] No existing commands found in stream
[2026-08-31 21:29:41,105.105 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:29:41,108.108 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-08-31 21:29:44,736.736 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 21:29:44,739.739 INFO    ] Checking for system updates...
[2026-08-31 21:29:44,777.777 INFO    ] 200
[2026-08-31 21:29:44,780.780 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:29:44,834.834 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:29:44,836.836 INFO    ] No update needed
[2026-08-31 21:29:44,839.839 INFO    ] Checking for camera pi updates...
[2026-08-31 21:29:44,873.873 INFO    ] 200
[2026-08-31 21:29:44,876.876 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:29:44,917.917 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:29:45,004.004 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:29:45,006.006 INFO    ] No camera update needed
[2026-08-31 21:29:45,009.009 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:29:45,011.011 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:29:45,018.018 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:29:45,023.023 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:29:47,062.062 INFO    ] ================================================
[2026-08-31 21:29:47,078.078 INFO    ] Launching Daemon at Mon Aug 31 21:29:47 IST 2026
[2026-08-31 21:29:47,088.088 INFO    ] ================================================
[2026-08-31 21:29:47,744.744 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:29:47
[2026-08-31 21:29:48,421.421 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:29:48,732.732 INFO    ] Initializing speech engine...
[2026-08-31 21:29:48,745.745 INFO    ] 2026-08-31 21:29:48
[2026-08-31 21:29:49,000.000 INFO    ] 2026-08-31 21:29:48
[2026-08-31 21:29:49,056.056 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:29:49,351.351 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:29:49,358.358 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:29:49,545.545 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:29:49,563.563 INFO    ] time= 31/08/2026 21:29:49
[2026-08-31 21:29:49,585.585 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:29:49,615.615 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:29:49,741.741 INFO    ] No existing commands found in stream
[2026-08-31 21:29:54,778.778 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:29:54,781.781 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-08-31 21:29:55,814.814 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 21:29:55,817.817 INFO    ] Checking for system updates...
[2026-08-31 21:29:55,860.860 INFO    ] 200
[2026-08-31 21:29:55,864.864 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:29:55,924.924 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:29:55,926.926 INFO    ] No update needed
[2026-08-31 21:29:55,929.929 INFO    ] Checking for camera pi updates...
[2026-08-31 21:29:55,963.963 INFO    ] 200
[2026-08-31 21:29:55,965.965 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:29:56,011.011 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:29:56,110.110 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:29:56,113.113 INFO    ] No camera update needed
[2026-08-31 21:29:56,115.115 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:29:56,117.117 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:29:56,123.123 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:29:56,127.127 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:29:58,169.169 INFO    ] ================================================
[2026-08-31 21:29:58,185.185 INFO    ] Launching Daemon at Mon Aug 31 21:29:58 IST 2026
[2026-08-31 21:29:58,196.196 INFO    ] ================================================
[2026-08-31 21:29:58,859.859 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:29:58
[2026-08-31 21:29:59,542.542 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:29:59,845.845 INFO    ] Initializing speech engine...
[2026-08-31 21:29:59,861.861 INFO    ] 2026-08-31 21:29:59
[2026-08-31 21:30:00,147.147 INFO    ] 2026-08-31 21:30:00
[2026-08-31 21:30:00,187.187 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:30:00,412.412 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:30:00,425.425 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:30:00,632.632 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:30:00,677.677 INFO    ] time= 31/08/2026 21:30:00
[2026-08-31 21:30:00,684.684 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:30:00,701.701 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:30:00,838.838 INFO    ] No existing commands found in stream
[2026-08-31 21:30:05,870.870 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:30:05,873.873 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-08-31 21:30:07,692.692 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 21:30:07,694.694 INFO    ] Checking for system updates...
[2026-08-31 21:30:07,733.733 INFO    ] 200
[2026-08-31 21:30:07,735.735 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:30:07,793.793 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:30:07,796.796 INFO    ] No update needed
[2026-08-31 21:30:07,798.798 INFO    ] Checking for camera pi updates...
[2026-08-31 21:30:07,832.832 INFO    ] 200
[2026-08-31 21:30:07,835.835 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:30:07,881.881 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:30:07,961.961 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:30:07,963.963 INFO    ] No camera update needed
[2026-08-31 21:30:07,966.966 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:30:07,969.969 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:30:07,975.975 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:30:07,981.981 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:30:10,022.022 INFO    ] ================================================
[2026-08-31 21:30:10,037.037 INFO    ] Launching Daemon at Mon Aug 31 21:30:10 IST 2026
[2026-08-31 21:30:10,049.049 INFO    ] ================================================
[2026-08-31 21:30:10,693.693 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:30:10
[2026-08-31 21:30:11,354.354 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:30:11,656.656 INFO    ] Initializing speech engine...
[2026-08-31 21:30:11,667.667 INFO    ] 2026-08-31 21:30:11
[2026-08-31 21:30:11,981.981 INFO    ] 2026-08-31 21:30:11
[2026-08-31 21:30:12,063.063 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:30:12,263.263 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:30:12,282.282 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:30:12,481.481 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:30:12,503.503 INFO    ] time= 31/08/2026 21:30:12
[2026-08-31 21:30:12,530.530 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:30:12,539.539 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:30:12,654.654 INFO    ] No existing commands found in stream
[2026-08-31 21:30:17,690.690 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:30:17,693.693 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-08-31 21:30:20,068.068 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 21:30:20,071.071 INFO    ] Checking for system updates...
[2026-08-31 21:30:20,113.113 INFO    ] 200
[2026-08-31 21:30:20,115.115 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:30:20,173.173 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:30:20,176.176 INFO    ] No update needed
[2026-08-31 21:30:20,179.179 INFO    ] Checking for camera pi updates...
[2026-08-31 21:30:20,213.213 INFO    ] 200
[2026-08-31 21:30:20,216.216 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:30:20,262.262 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:30:20,371.371 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:30:20,374.374 INFO    ] No camera update needed
[2026-08-31 21:30:20,376.376 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:30:20,378.378 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:30:20,383.383 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:30:20,388.388 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:30:22,429.429 INFO    ] ================================================
[2026-08-31 21:30:22,444.444 INFO    ] Launching Daemon at Mon Aug 31 21:30:22 IST 2026
[2026-08-31 21:30:22,455.455 INFO    ] ================================================
[2026-08-31 21:30:23,023.023 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:30:23
[2026-08-31 21:30:23,605.605 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:30:23,877.877 INFO    ] Initializing speech engine...
[2026-08-31 21:30:23,886.886 INFO    ] 2026-08-31 21:30:23
[2026-08-31 21:30:24,138.138 INFO    ] 2026-08-31 21:30:24
[2026-08-31 21:30:24,173.173 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:30:24,375.375 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:30:24,433.433 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:30:24,574.574 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:30:24,617.617 INFO    ] time= 31/08/2026 21:30:24
[2026-08-31 21:30:24,661.661 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:30:24,714.714 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:30:24,823.823 INFO    ] No existing commands found in stream
[2026-08-31 21:30:29,844.844 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:30:29,847.847 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-08-31 21:30:32,030.030 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 21:30:32,033.033 INFO    ] Checking for system updates...
[2026-08-31 21:30:32,074.074 INFO    ] 200
[2026-08-31 21:30:32,077.077 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:30:32,142.142 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:30:32,144.144 INFO    ] No update needed
[2026-08-31 21:30:32,147.147 INFO    ] Checking for camera pi updates...
[2026-08-31 21:30:32,183.183 INFO    ] 200
[2026-08-31 21:30:32,186.186 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:30:32,232.232 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:30:32,295.295 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:30:32,298.298 INFO    ] No camera update needed
[2026-08-31 21:30:32,301.301 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:30:32,304.304 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:30:32,310.310 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:30:32,315.315 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:30:34,360.360 INFO    ] ================================================
[2026-08-31 21:30:34,375.375 INFO    ] Launching Daemon at Mon Aug 31 21:30:34 IST 2026
[2026-08-31 21:30:34,386.386 INFO    ] ================================================
[2026-08-31 21:30:34,964.964 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:30:34
[2026-08-31 21:30:35,563.563 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:30:35,850.850 INFO    ] Initializing speech engine...
[2026-08-31 21:30:35,858.858 INFO    ] 2026-08-31 21:30:35
[2026-08-31 21:30:36,130.130 INFO    ] 2026-08-31 21:30:36
[2026-08-31 21:30:36,169.169 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:30:36,393.393 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:30:36,443.443 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:30:36,622.622 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:30:36,645.645 INFO    ] time= 31/08/2026 21:30:36
[2026-08-31 21:30:36,704.704 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:30:36,759.759 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:30:36,907.907 INFO    ] No existing commands found in stream
[2026-08-31 21:30:41,935.935 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:30:41,938.938 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-08-31 21:30:42,987.987 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 21:30:42,989.989 INFO    ] Checking for system updates...
[2026-08-31 21:30:43,031.031 INFO    ] 200
[2026-08-31 21:30:43,034.034 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:30:43,092.092 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:30:43,095.095 INFO    ] No update needed
[2026-08-31 21:30:43,097.097 INFO    ] Checking for camera pi updates...
[2026-08-31 21:30:43,134.134 INFO    ] 200
[2026-08-31 21:30:43,137.137 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:30:43,180.180 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:30:43,401.401 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:30:43,404.404 INFO    ] No camera update needed
[2026-08-31 21:30:43,406.406 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:30:43,409.409 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:30:43,414.414 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:30:43,419.419 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:30:45,461.461 INFO    ] ================================================
[2026-08-31 21:30:45,476.476 INFO    ] Launching Daemon at Mon Aug 31 21:30:45 IST 2026
[2026-08-31 21:30:45,487.487 INFO    ] ================================================
[2026-08-31 21:30:46,069.069 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:30:46
[2026-08-31 21:30:46,671.671 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:30:46,952.952 INFO    ] Initializing speech engine...
[2026-08-31 21:30:46,963.963 INFO    ] 2026-08-31 21:30:46
[2026-08-31 21:30:47,225.225 INFO    ] 2026-08-31 21:30:47
[2026-08-31 21:30:47,279.279 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:30:47,506.506 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:30:47,512.512 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:30:47,742.742 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:30:47,773.773 INFO    ] time= 31/08/2026 21:30:47
[2026-08-31 21:30:47,788.788 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:30:47,797.797 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:30:47,910.910 INFO    ] No existing commands found in stream
[2026-08-31 21:30:52,937.937 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:30:52,940.940 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-08-31 21:30:54,980.980 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 21:30:54,983.983 INFO    ] Checking for system updates...
[2026-08-31 21:30:55,022.022 INFO    ] 200
[2026-08-31 21:30:55,025.025 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:30:55,083.083 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:30:55,086.086 INFO    ] No update needed
[2026-08-31 21:30:55,089.089 INFO    ] Checking for camera pi updates...
[2026-08-31 21:30:55,122.122 INFO    ] 200
[2026-08-31 21:30:55,125.125 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:30:55,164.164 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:30:55,246.246 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:30:55,249.249 INFO    ] No camera update needed
[2026-08-31 21:30:55,251.251 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:30:55,254.254 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:30:55,259.259 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:30:55,264.264 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:30:57,306.306 INFO    ] ================================================
[2026-08-31 21:30:57,322.322 INFO    ] Launching Daemon at Mon Aug 31 21:30:57 IST 2026
[2026-08-31 21:30:57,333.333 INFO    ] ================================================
[2026-08-31 21:30:57,897.897 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:30:57
[2026-08-31 21:30:58,478.478 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:30:58,732.732 INFO    ] Initializing speech engine...
[2026-08-31 21:30:58,741.741 INFO    ] 2026-08-31 21:30:58
[2026-08-31 21:30:59,035.035 INFO    ] 2026-08-31 21:30:59
[2026-08-31 21:30:59,114.114 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:30:59,299.299 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:30:59,308.308 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:30:59,458.458 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:30:59,465.465 INFO    ] time= 31/08/2026 21:30:59
[2026-08-31 21:30:59,471.471 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:30:59,540.540 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:30:59,647.647 INFO    ] No existing commands found in stream
[2026-08-31 21:31:04,672.672 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:31:04,675.675 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-08-31 21:31:06,272.272 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 21:31:06,275.275 INFO    ] Checking for system updates...
[2026-08-31 21:31:06,312.312 INFO    ] 200
[2026-08-31 21:31:06,315.315 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:31:06,370.370 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:31:06,373.373 INFO    ] No update needed
[2026-08-31 21:31:06,376.376 INFO    ] Checking for camera pi updates...
[2026-08-31 21:31:06,416.416 INFO    ] 200
[2026-08-31 21:31:06,419.419 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:31:06,465.465 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:31:06,560.560 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:31:06,565.565 INFO    ] No camera update needed
[2026-08-31 21:31:06,568.568 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:31:06,571.571 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:31:06,578.578 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:31:06,585.585 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:31:08,626.626 INFO    ] ================================================
[2026-08-31 21:31:08,642.642 INFO    ] Launching Daemon at Mon Aug 31 21:31:08 IST 2026
[2026-08-31 21:31:08,653.653 INFO    ] ================================================
[2026-08-31 21:31:09,224.224 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:31:09
[2026-08-31 21:31:09,842.842 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:31:10,158.158 INFO    ] Initializing speech engine...
[2026-08-31 21:31:10,169.169 INFO    ] 2026-08-31 21:31:10
[2026-08-31 21:31:10,444.444 INFO    ] 2026-08-31 21:31:10
[2026-08-31 21:31:10,499.499 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:31:10,724.724 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:31:10,730.730 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:31:10,958.958 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:31:10,993.993 INFO    ] time= 31/08/2026 21:31:10
[2026-08-31 21:31:11,010.010 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:31:11,041.041 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:31:11,168.168 INFO    ] No existing commands found in stream
[2026-08-31 21:31:16,200.200 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:31:16,204.204 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-08-31 21:31:17,174.174 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 21:31:17,177.177 INFO    ] Checking for system updates...
[2026-08-31 21:31:17,219.219 INFO    ] 200
[2026-08-31 21:31:17,223.223 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:31:17,286.286 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:31:17,289.289 INFO    ] No update needed
[2026-08-31 21:31:17,292.292 INFO    ] Checking for camera pi updates...
[2026-08-31 21:31:17,327.327 INFO    ] 200
[2026-08-31 21:31:17,330.330 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:31:17,378.378 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:31:17,465.465 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:31:17,469.469 INFO    ] No camera update needed
[2026-08-31 21:31:17,472.472 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:31:17,475.475 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:31:17,481.481 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:31:17,487.487 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:31:19,530.530 INFO    ] ================================================
[2026-08-31 21:31:19,546.546 INFO    ] Launching Daemon at Mon Aug 31 21:31:19 IST 2026
[2026-08-31 21:31:19,557.557 INFO    ] ================================================
[2026-08-31 21:31:20,213.213 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:31:20
[2026-08-31 21:31:20,815.815 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:31:21,094.094 INFO    ] Initializing speech engine...
[2026-08-31 21:31:21,102.102 INFO    ] 2026-08-31 21:31:21
[2026-08-31 21:31:21,363.363 INFO    ] 2026-08-31 21:31:21
[2026-08-31 21:31:21,414.414 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:31:21,642.642 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:31:21,648.648 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:31:21,876.876 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:31:21,906.906 INFO    ] time= 31/08/2026 21:31:21
[2026-08-31 21:31:21,923.923 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:31:21,933.933 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:31:22,057.057 INFO    ] No existing commands found in stream
[2026-08-31 21:31:27,072.072 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:31:27,075.075 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-08-31 21:31:28,358.358 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 21:31:28,361.361 INFO    ] Checking for system updates...
[2026-08-31 21:31:28,401.401 INFO    ] 200
[2026-08-31 21:31:28,404.404 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:31:28,456.456 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:31:28,459.459 INFO    ] No update needed
[2026-08-31 21:31:28,461.461 INFO    ] Checking for camera pi updates...
[2026-08-31 21:31:28,497.497 INFO    ] 200
[2026-08-31 21:31:28,499.499 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:31:28,547.547 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:31:28,649.649 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:31:28,651.651 INFO    ] No camera update needed
[2026-08-31 21:31:28,654.654 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:31:28,657.657 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:31:28,664.664 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:31:28,670.670 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:31:30,713.713 INFO    ] ================================================
[2026-08-31 21:31:30,728.728 INFO    ] Launching Daemon at Mon Aug 31 21:31:30 IST 2026
[2026-08-31 21:31:30,739.739 INFO    ] ================================================
[2026-08-31 21:31:31,418.418 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:31:31
[2026-08-31 21:31:32,143.143 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:31:32,442.442 INFO    ] Initializing speech engine...
[2026-08-31 21:31:32,452.452 INFO    ] 2026-08-31 21:31:32
[2026-08-31 21:31:32,735.735 INFO    ] 2026-08-31 21:31:32
[2026-08-31 21:31:32,806.806 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:31:33,059.059 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:31:33,070.070 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:31:33,300.300 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:31:33,323.323 INFO    ] time= 31/08/2026 21:31:33
[2026-08-31 21:31:33,339.339 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:31:33,372.372 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:31:33,478.478 INFO    ] No existing commands found in stream
[2026-08-31 21:31:38,518.518 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:31:38,521.521 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-08-31 21:31:41,695.695 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 21:31:41,698.698 INFO    ] Checking for system updates...
[2026-08-31 21:31:41,740.740 INFO    ] 200
[2026-08-31 21:31:41,742.742 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:31:41,796.796 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:31:41,798.798 INFO    ] No update needed
[2026-08-31 21:31:41,801.801 INFO    ] Checking for camera pi updates...
[2026-08-31 21:31:41,837.837 INFO    ] 200
[2026-08-31 21:31:41,840.840 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:31:41,886.886 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:31:41,968.968 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:31:41,970.970 INFO    ] No camera update needed
[2026-08-31 21:31:41,972.972 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:31:41,975.975 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:31:41,980.980 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:31:41,985.985 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:31:44,025.025 INFO    ] ================================================
[2026-08-31 21:31:44,040.040 INFO    ] Launching Daemon at Mon Aug 31 21:31:44 IST 2026
[2026-08-31 21:31:44,052.052 INFO    ] ================================================
[2026-08-31 21:31:44,620.620 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:31:44
[2026-08-31 21:31:45,203.203 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:31:45,474.474 INFO    ] Initializing speech engine...
[2026-08-31 21:31:45,483.483 INFO    ] 2026-08-31 21:31:45
[2026-08-31 21:31:45,736.736 INFO    ] 2026-08-31 21:31:45
[2026-08-31 21:31:45,771.771 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:31:46,029.029 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:31:46,038.038 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:31:46,173.173 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:31:46,220.220 INFO    ] time= 31/08/2026 21:31:46
[2026-08-31 21:31:46,274.274 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:31:46,309.309 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:31:46,445.445 INFO    ] No existing commands found in stream
[2026-08-31 21:31:51,470.470 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:31:51,473.473 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-08-31 21:31:53,989.989 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 21:31:53,992.992 INFO    ] Checking for system updates...
[2026-08-31 21:31:54,032.032 INFO    ] 200
[2026-08-31 21:31:54,035.035 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:31:54,088.088 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:31:54,090.090 INFO    ] No update needed
[2026-08-31 21:31:54,093.093 INFO    ] Checking for camera pi updates...
[2026-08-31 21:31:54,126.126 INFO    ] 200
[2026-08-31 21:31:54,128.128 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:31:54,170.170 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:31:54,250.250 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:31:54,253.253 INFO    ] No camera update needed
[2026-08-31 21:31:54,255.255 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:31:54,258.258 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:31:54,263.263 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:31:54,268.268 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:31:56,315.315 INFO    ] ================================================
[2026-08-31 21:31:56,330.330 INFO    ] Launching Daemon at Mon Aug 31 21:31:56 IST 2026
[2026-08-31 21:31:56,341.341 INFO    ] ================================================
[2026-08-31 21:31:56,968.968 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:31:56
[2026-08-31 21:31:57,651.651 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:31:57,960.960 INFO    ] Initializing speech engine...
[2026-08-31 21:31:57,973.973 INFO    ] 2026-08-31 21:31:57
[2026-08-31 21:31:58,250.250 INFO    ] 2026-08-31 21:31:58
[2026-08-31 21:31:58,318.318 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:31:58,565.565 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:31:58,599.599 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:31:58,805.805 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:31:58,813.813 INFO    ] time= 31/08/2026 21:31:58
[2026-08-31 21:31:58,835.835 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:31:58,864.864 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:31:58,970.970 INFO    ] No existing commands found in stream
[2026-08-31 21:32:03,989.989 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:32:03,992.992 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-08-31 21:32:08,310.310 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 21:32:08,313.313 INFO    ] Checking for system updates...
[2026-08-31 21:32:08,349.349 INFO    ] 200
[2026-08-31 21:32:08,352.352 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:32:08,405.405 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:32:08,407.407 INFO    ] No update needed
[2026-08-31 21:32:08,410.410 INFO    ] Checking for camera pi updates...
[2026-08-31 21:32:08,444.444 INFO    ] 200
[2026-08-31 21:32:08,447.447 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:32:08,488.488 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:32:08,562.562 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:32:08,565.565 INFO    ] No camera update needed
[2026-08-31 21:32:08,569.569 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:32:08,572.572 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:32:08,578.578 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:32:08,583.583 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:32:10,622.622 INFO    ] ================================================
[2026-08-31 21:32:10,637.637 INFO    ] Launching Daemon at Mon Aug 31 21:32:10 IST 2026
[2026-08-31 21:32:10,647.647 INFO    ] ================================================
[2026-08-31 21:32:11,212.212 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:32:11
[2026-08-31 21:32:11,792.792 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:32:12,061.061 INFO    ] Initializing speech engine...
[2026-08-31 21:32:12,070.070 INFO    ] 2026-08-31 21:32:12
[2026-08-31 21:32:12,328.328 INFO    ] 2026-08-31 21:32:12
[2026-08-31 21:32:12,385.385 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:32:12,552.552 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:32:12,579.579 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:32:12,754.754 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:32:12,796.796 INFO    ] time= 31/08/2026 21:32:12
[2026-08-31 21:32:12,856.856 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:32:12,891.891 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:32:13,011.011 INFO    ] No existing commands found in stream
[2026-08-31 21:32:18,042.042 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:32:18,044.044 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-08-31 21:32:20,223.223 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 21:32:20,226.226 INFO    ] Checking for system updates...
[2026-08-31 21:32:20,261.261 INFO    ] 200
[2026-08-31 21:32:20,263.263 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:32:20,315.315 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:32:20,318.318 INFO    ] No update needed
[2026-08-31 21:32:20,320.320 INFO    ] Checking for camera pi updates...
[2026-08-31 21:32:20,356.356 INFO    ] 200
[2026-08-31 21:32:20,359.359 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:32:20,402.402 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:32:20,506.506 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:32:20,508.508 INFO    ] No camera update needed
[2026-08-31 21:32:20,510.510 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:32:20,513.513 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:32:20,518.518 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:32:20,523.523 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:32:22,562.562 INFO    ] ================================================
[2026-08-31 21:32:22,577.577 INFO    ] Launching Daemon at Mon Aug 31 21:32:22 IST 2026
[2026-08-31 21:32:22,588.588 INFO    ] ================================================
[2026-08-31 21:32:23,241.241 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:32:23
[2026-08-31 21:32:23,899.899 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:32:24,170.170 INFO    ] Initializing speech engine...
[2026-08-31 21:32:24,176.176 INFO    ] 2026-08-31 21:32:24
[2026-08-31 21:32:24,449.449 INFO    ] 2026-08-31 21:32:24
[2026-08-31 21:32:24,505.505 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:32:24,735.735 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:32:24,744.744 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:32:24,876.876 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:32:24,902.902 INFO    ] time= 31/08/2026 21:32:24
[2026-08-31 21:32:24,962.962 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:32:25,009.009 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:32:25,148.148 INFO    ] No existing commands found in stream
[2026-08-31 21:32:30,167.167 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:32:30,170.170 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-08-31 21:32:34,784.784 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 21:32:34,787.787 INFO    ] Checking for system updates...
[2026-08-31 21:32:34,829.829 INFO    ] 200
[2026-08-31 21:32:34,832.832 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:32:34,893.893 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:32:34,896.896 INFO    ] No update needed
[2026-08-31 21:32:34,898.898 INFO    ] Checking for camera pi updates...
[2026-08-31 21:32:34,933.933 INFO    ] 200
[2026-08-31 21:32:34,936.936 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:32:34,978.978 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:32:35,031.031 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:32:35,034.034 INFO    ] No camera update needed
[2026-08-31 21:32:35,036.036 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:32:35,039.039 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:32:35,045.045 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:32:35,051.051 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:32:37,092.092 INFO    ] ================================================
[2026-08-31 21:32:37,108.108 INFO    ] Launching Daemon at Mon Aug 31 21:32:37 IST 2026
[2026-08-31 21:32:37,119.119 INFO    ] ================================================
[2026-08-31 21:32:37,773.773 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:32:37
[2026-08-31 21:32:38,450.450 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:32:38,757.757 INFO    ] Initializing speech engine...
[2026-08-31 21:32:38,771.771 INFO    ] 2026-08-31 21:32:38
[2026-08-31 21:32:39,082.082 INFO    ] 2026-08-31 21:32:39
[2026-08-31 21:32:39,169.169 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:32:39,378.378 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:32:39,386.386 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:32:39,577.577 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:32:39,594.594 INFO    ] time= 31/08/2026 21:32:39
[2026-08-31 21:32:39,600.600 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:32:39,621.621 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:32:39,732.732 INFO    ] No existing commands found in stream
[2026-08-31 21:32:44,761.761 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:32:44,764.764 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-08-31 21:32:45,468.468 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 21:32:45,472.472 INFO    ] Checking for system updates...
[2026-08-31 21:32:45,509.509 INFO    ] 200
[2026-08-31 21:32:45,512.512 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:32:45,565.565 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:32:45,567.567 INFO    ] No update needed
[2026-08-31 21:32:45,570.570 INFO    ] Checking for camera pi updates...
[2026-08-31 21:32:45,603.603 INFO    ] 200
[2026-08-31 21:32:45,606.606 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:32:45,646.646 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:32:45,848.848 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:32:45,850.850 INFO    ] No camera update needed
[2026-08-31 21:32:45,853.853 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:32:45,855.855 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:32:45,860.860 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:32:45,866.866 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:32:47,908.908 INFO    ] ================================================
[2026-08-31 21:32:47,923.923 INFO    ] Launching Daemon at Mon Aug 31 21:32:47 IST 2026
[2026-08-31 21:32:47,933.933 INFO    ] ================================================
[2026-08-31 21:32:48,582.582 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:32:48
[2026-08-31 21:32:49,253.253 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:32:49,552.552 INFO    ] Initializing speech engine...
[2026-08-31 21:32:49,563.563 INFO    ] 2026-08-31 21:32:49
[2026-08-31 21:32:49,839.839 INFO    ] 2026-08-31 21:32:49
[2026-08-31 21:32:49,896.896 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:32:50,124.124 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:32:50,129.129 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:32:50,331.331 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:32:50,387.387 INFO    ] time= 31/08/2026 21:32:50
[2026-08-31 21:32:50,396.396 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:32:50,411.411 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:32:50,542.542 INFO    ] No existing commands found in stream
[2026-08-31 21:32:55,559.559 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:32:55,562.562 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-08-31 21:32:56,157.157 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 21:32:56,160.160 INFO    ] Checking for system updates...
[2026-08-31 21:32:56,197.197 INFO    ] 200
[2026-08-31 21:32:56,200.200 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:32:56,258.258 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:32:56,260.260 INFO    ] No update needed
[2026-08-31 21:32:56,263.263 INFO    ] Checking for camera pi updates...
[2026-08-31 21:32:56,300.300 INFO    ] 200
[2026-08-31 21:32:56,303.303 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:32:56,347.347 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:32:56,433.433 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:32:56,435.435 INFO    ] No camera update needed
[2026-08-31 21:32:56,437.437 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:32:56,440.440 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:32:56,445.445 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:32:56,450.450 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:32:58,489.489 INFO    ] ================================================
[2026-08-31 21:32:58,504.504 INFO    ] Launching Daemon at Mon Aug 31 21:32:58 IST 2026
[2026-08-31 21:32:58,515.515 INFO    ] ================================================
[2026-08-31 21:32:59,086.086 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:32:59
[2026-08-31 21:32:59,688.688 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:32:59,986.986 INFO    ] Initializing speech engine...
[2026-08-31 21:32:59,993.993 INFO    ] 2026-08-31 21:32:59
[2026-08-31 21:33:00,270.270 INFO    ] 2026-08-31 21:33:00
[2026-08-31 21:33:00,324.324 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:33:00,551.551 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:33:00,558.558 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:33:00,782.782 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:33:00,818.818 INFO    ] time= 31/08/2026 21:33:00
[2026-08-31 21:33:00,836.836 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:33:00,866.866 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:33:01,001.001 INFO    ] No existing commands found in stream
[2026-08-31 21:33:06,032.032 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:33:06,035.035 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-08-31 21:33:08,812.812 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 21:33:08,815.815 INFO    ] Checking for system updates...
[2026-08-31 21:33:08,856.856 INFO    ] 200
[2026-08-31 21:33:08,859.859 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:33:08,923.923 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:33:08,925.925 INFO    ] No update needed
[2026-08-31 21:33:08,928.928 INFO    ] Checking for camera pi updates...
[2026-08-31 21:33:08,964.964 INFO    ] 200
[2026-08-31 21:33:08,966.966 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:33:09,008.008 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:33:09,103.103 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:33:09,105.105 INFO    ] No camera update needed
[2026-08-31 21:33:09,108.108 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:33:09,111.111 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:33:09,117.117 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:33:09,123.123 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:33:11,166.166 INFO    ] ================================================
[2026-08-31 21:33:11,181.181 INFO    ] Launching Daemon at Mon Aug 31 21:33:11 IST 2026
[2026-08-31 21:33:11,191.191 INFO    ] ================================================
[2026-08-31 21:33:11,834.834 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:33:11
[2026-08-31 21:33:12,495.495 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:33:12,800.800 INFO    ] Initializing speech engine...
[2026-08-31 21:33:12,811.811 INFO    ] 2026-08-31 21:33:12
[2026-08-31 21:33:13,118.118 INFO    ] 2026-08-31 21:33:13
[2026-08-31 21:33:13,204.204 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:33:13,417.417 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:33:13,422.422 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:33:13,606.606 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:33:13,624.624 INFO    ] time= 31/08/2026 21:33:13
[2026-08-31 21:33:13,643.643 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:33:13,672.672 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:33:13,794.794 INFO    ] No existing commands found in stream
[2026-08-31 21:33:18,820.820 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:33:18,823.823 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-08-31 21:33:23,268.268 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 21:33:23,271.271 INFO    ] Checking for system updates...
[2026-08-31 21:33:23,309.309 INFO    ] 200
[2026-08-31 21:33:23,311.311 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:33:23,364.364 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:33:23,367.367 INFO    ] No update needed
[2026-08-31 21:33:23,370.370 INFO    ] Checking for camera pi updates...
[2026-08-31 21:33:23,408.408 INFO    ] 200
[2026-08-31 21:33:23,411.411 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:33:23,456.456 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:33:23,542.542 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:33:23,545.545 INFO    ] No camera update needed
[2026-08-31 21:33:23,548.548 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:33:23,550.550 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:33:23,556.556 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:33:23,562.562 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:33:25,603.603 INFO    ] ================================================
[2026-08-31 21:33:25,618.618 INFO    ] Launching Daemon at Mon Aug 31 21:33:25 IST 2026
[2026-08-31 21:33:25,628.628 INFO    ] ================================================
[2026-08-31 21:33:26,193.193 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:33:26
[2026-08-31 21:33:26,776.776 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:33:27,031.031 INFO    ] Initializing speech engine...
[2026-08-31 21:33:27,037.037 INFO    ] 2026-08-31 21:33:27
[2026-08-31 21:33:27,327.327 INFO    ] 2026-08-31 21:33:27
[2026-08-31 21:33:27,361.361 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:33:27,582.582 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:33:27,590.590 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:33:27,804.804 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:33:27,810.810 INFO    ] time= 31/08/2026 21:33:27
[2026-08-31 21:33:27,875.875 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:33:27,913.913 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:33:28,008.008 INFO    ] No existing commands found in stream
[2026-08-31 21:33:33,019.019 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:33:33,022.022 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-08-31 21:33:36,305.305 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 21:33:36,307.307 INFO    ] Checking for system updates...
[2026-08-31 21:33:36,347.347 INFO    ] 200
[2026-08-31 21:33:36,349.349 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:33:36,408.408 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:33:36,411.411 INFO    ] No update needed
[2026-08-31 21:33:36,413.413 INFO    ] Checking for camera pi updates...
[2026-08-31 21:33:36,450.450 INFO    ] 200
[2026-08-31 21:33:36,453.453 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:33:36,493.493 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:33:36,574.574 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:33:36,576.576 INFO    ] No camera update needed
[2026-08-31 21:33:36,578.578 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:33:36,581.581 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:33:36,586.586 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:33:36,591.591 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:33:38,631.631 INFO    ] ================================================
[2026-08-31 21:33:38,646.646 INFO    ] Launching Daemon at Mon Aug 31 21:33:38 IST 2026
[2026-08-31 21:33:38,658.658 INFO    ] ================================================
[2026-08-31 21:33:39,230.230 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:33:39
[2026-08-31 21:33:39,821.821 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:33:40,081.081 INFO    ] Initializing speech engine...
[2026-08-31 21:33:40,106.106 INFO    ] 2026-08-31 21:33:40
[2026-08-31 21:33:40,377.377 INFO    ] 2026-08-31 21:33:40
[2026-08-31 21:33:40,415.415 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:33:40,612.612 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:33:40,626.626 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:33:40,788.788 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:33:40,797.797 INFO    ] time= 31/08/2026 21:33:40
[2026-08-31 21:33:40,803.803 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:33:40,810.810 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:33:40,884.884 INFO    ] No existing commands found in stream
[2026-08-31 21:33:45,920.920 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:33:45,922.922 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-08-31 21:33:49,220.220 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 21:33:49,224.224 INFO    ] Checking for system updates...
[2026-08-31 21:33:49,264.264 INFO    ] 200
[2026-08-31 21:33:49,267.267 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:33:49,330.330 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:33:49,333.333 INFO    ] No update needed
[2026-08-31 21:33:49,336.336 INFO    ] Checking for camera pi updates...
[2026-08-31 21:33:49,370.370 INFO    ] 200
[2026-08-31 21:33:49,373.373 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:33:49,415.415 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:33:49,499.499 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:33:49,501.501 INFO    ] No camera update needed
[2026-08-31 21:33:49,504.504 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:33:49,507.507 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:33:49,513.513 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:33:49,518.518 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:33:51,560.560 INFO    ] ================================================
[2026-08-31 21:33:51,576.576 INFO    ] Launching Daemon at Mon Aug 31 21:33:51 IST 2026
[2026-08-31 21:33:51,586.586 INFO    ] ================================================
[2026-08-31 21:33:52,153.153 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:33:52
[2026-08-31 21:33:52,736.736 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:33:52,990.990 INFO    ] Initializing speech engine...
[2026-08-31 21:33:52,998.998 INFO    ] 2026-08-31 21:33:52
[2026-08-31 21:33:53,287.287 INFO    ] 2026-08-31 21:33:53
[2026-08-31 21:33:53,326.326 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:33:53,535.535 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:33:53,545.545 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:33:53,686.686 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:33:53,691.691 INFO    ] time= 31/08/2026 21:33:53
[2026-08-31 21:33:53,697.697 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:33:53,744.744 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:33:53,900.900 INFO    ] No existing commands found in stream
[2026-08-31 21:33:58,915.915 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:33:58,918.918 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-08-31 21:34:01,867.867 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 21:34:01,871.871 INFO    ] Checking for system updates...
[2026-08-31 21:34:01,926.926 INFO    ] 200
[2026-08-31 21:34:01,930.930 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:34:02,019.019 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:34:02,022.022 INFO    ] No update needed
[2026-08-31 21:34:02,026.026 INFO    ] Checking for camera pi updates...
[2026-08-31 21:34:02,072.072 INFO    ] 200
[2026-08-31 21:34:02,075.075 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:34:02,132.132 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:34:02,240.240 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:34:02,245.245 INFO    ] No camera update needed
[2026-08-31 21:34:02,249.249 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:34:02,252.252 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:34:02,260.260 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:34:02,266.266 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:34:04,308.308 INFO    ] ================================================
[2026-08-31 21:34:04,323.323 INFO    ] Launching Daemon at Mon Aug 31 21:34:04 IST 2026
[2026-08-31 21:34:04,334.334 INFO    ] ================================================
[2026-08-31 21:34:04,915.915 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:34:04
[2026-08-31 21:34:05,515.515 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:34:05,775.775 INFO    ] Initializing speech engine...
[2026-08-31 21:34:05,791.791 INFO    ] 2026-08-31 21:34:05
[2026-08-31 21:34:06,073.073 INFO    ] 2026-08-31 21:34:06
[2026-08-31 21:34:06,112.112 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:34:06,303.303 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:34:06,316.316 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:34:06,456.456 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:34:06,479.479 INFO    ] time= 31/08/2026 21:34:06
[2026-08-31 21:34:06,488.488 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:34:06,494.494 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:34:06,568.568 INFO    ] No existing commands found in stream
[2026-08-31 21:34:11,593.593 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:34:11,596.596 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-08-31 21:34:14,250.250 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 21:34:14,253.253 INFO    ] Checking for system updates...
[2026-08-31 21:34:14,291.291 INFO    ] 200
[2026-08-31 21:34:14,293.293 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:34:14,350.350 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:34:14,353.353 INFO    ] No update needed
[2026-08-31 21:34:14,355.355 INFO    ] Checking for camera pi updates...
[2026-08-31 21:34:14,389.389 INFO    ] 200
[2026-08-31 21:34:14,391.391 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:34:14,436.436 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:34:14,523.523 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:34:14,525.525 INFO    ] No camera update needed
[2026-08-31 21:34:14,528.528 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:34:14,530.530 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:34:14,536.536 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:34:14,541.541 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:34:16,582.582 INFO    ] ================================================
[2026-08-31 21:34:16,596.596 INFO    ] Launching Daemon at Mon Aug 31 21:34:16 IST 2026
[2026-08-31 21:34:16,607.607 INFO    ] ================================================
[2026-08-31 21:34:17,202.202 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:34:17
[2026-08-31 21:34:17,798.798 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:34:18,048.048 INFO    ] Initializing speech engine...
[2026-08-31 21:34:18,060.060 INFO    ] 2026-08-31 21:34:18
[2026-08-31 21:34:18,326.326 INFO    ] 2026-08-31 21:34:18
[2026-08-31 21:34:18,394.394 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:34:18,624.624 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:34:18,630.630 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:34:18,772.772 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:34:18,826.826 INFO    ] time= 31/08/2026 21:34:18
[2026-08-31 21:34:18,880.880 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:34:18,899.899 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:34:19,013.013 INFO    ] No existing commands found in stream
[2026-08-31 21:34:24,030.030 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:34:24,032.032 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-08-31 21:34:27,509.509 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 21:34:27,512.512 INFO    ] Checking for system updates...
[2026-08-31 21:34:27,548.548 INFO    ] 200
[2026-08-31 21:34:27,551.551 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:34:27,602.602 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:34:27,604.604 INFO    ] No update needed
[2026-08-31 21:34:27,607.607 INFO    ] Checking for camera pi updates...
[2026-08-31 21:34:27,640.640 INFO    ] 200
[2026-08-31 21:34:27,643.643 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:34:27,682.682 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:34:27,789.789 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:34:27,791.791 INFO    ] No camera update needed
[2026-08-31 21:34:27,793.793 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:34:27,796.796 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:34:27,801.801 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:34:27,806.806 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:34:29,848.848 INFO    ] ================================================
[2026-08-31 21:34:29,863.863 INFO    ] Launching Daemon at Mon Aug 31 21:34:29 IST 2026
[2026-08-31 21:34:29,873.873 INFO    ] ================================================
[2026-08-31 21:34:30,452.452 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:34:30
[2026-08-31 21:34:31,048.048 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:34:31,321.321 INFO    ] Initializing speech engine...
[2026-08-31 21:34:31,331.331 INFO    ] 2026-08-31 21:34:31
[2026-08-31 21:34:31,600.600 INFO    ] 2026-08-31 21:34:31
[2026-08-31 21:34:31,640.640 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:34:31,865.865 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:34:31,906.906 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:34:32,112.112 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:34:32,135.135 INFO    ] time= 31/08/2026 21:34:32
[2026-08-31 21:34:32,190.190 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:34:32,235.235 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:34:32,394.394 INFO    ] No existing commands found in stream
[2026-08-31 21:34:37,417.417 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:34:37,420.420 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-08-31 21:34:38,034.034 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 21:34:38,037.037 INFO    ] Checking for system updates...
[2026-08-31 21:34:38,074.074 INFO    ] 200
[2026-08-31 21:34:38,076.076 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:34:38,134.134 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:34:38,137.137 INFO    ] No update needed
[2026-08-31 21:34:38,139.139 INFO    ] Checking for camera pi updates...
[2026-08-31 21:34:38,176.176 INFO    ] 200
[2026-08-31 21:34:38,179.179 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:34:38,223.223 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:34:38,303.303 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:34:38,305.305 INFO    ] No camera update needed
[2026-08-31 21:34:38,308.308 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:34:38,310.310 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:34:38,316.316 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:34:38,321.321 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:34:40,360.360 INFO    ] ================================================
[2026-08-31 21:34:40,375.375 INFO    ] Launching Daemon at Mon Aug 31 21:34:40 IST 2026
[2026-08-31 21:34:40,386.386 INFO    ] ================================================
[2026-08-31 21:34:40,956.956 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:34:40
[2026-08-31 21:34:41,544.544 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:34:41,796.796 INFO    ] Initializing speech engine...
[2026-08-31 21:34:41,804.804 INFO    ] 2026-08-31 21:34:41
[2026-08-31 21:34:42,093.093 INFO    ] 2026-08-31 21:34:42
[2026-08-31 21:34:42,130.130 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:34:42,322.322 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:34:42,335.335 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:34:42,497.497 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:34:42,503.503 INFO    ] time= 31/08/2026 21:34:42
[2026-08-31 21:34:42,510.510 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:34:42,557.557 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:34:42,709.709 INFO    ] No existing commands found in stream
[2026-08-31 21:34:47,730.730 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:34:47,733.733 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-08-31 21:34:50,590.590 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 21:34:50,593.593 INFO    ] Checking for system updates...
[2026-08-31 21:34:50,628.628 INFO    ] 200
[2026-08-31 21:34:50,631.631 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:34:50,688.688 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:34:50,690.690 INFO    ] No update needed
[2026-08-31 21:34:50,693.693 INFO    ] Checking for camera pi updates...
[2026-08-31 21:34:50,726.726 INFO    ] 200
[2026-08-31 21:34:50,728.728 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:34:50,768.768 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:34:50,945.945 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:34:50,947.947 INFO    ] No camera update needed
[2026-08-31 21:34:50,950.950 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:34:50,952.952 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:34:50,957.957 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:34:50,962.962 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:34:53,002.002 INFO    ] ================================================
[2026-08-31 21:34:53,016.016 INFO    ] Launching Daemon at Mon Aug 31 21:34:53 IST 2026
[2026-08-31 21:34:53,027.027 INFO    ] ================================================
[2026-08-31 21:34:53,630.630 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:34:53
[2026-08-31 21:34:54,216.216 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:34:54,484.484 INFO    ] Initializing speech engine...
[2026-08-31 21:34:54,493.493 INFO    ] 2026-08-31 21:34:54
[2026-08-31 21:34:54,747.747 INFO    ] 2026-08-31 21:34:54
[2026-08-31 21:34:54,806.806 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:34:55,052.052 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:34:55,055.055 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:34:55,234.234 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:34:55,294.294 INFO    ] time= 31/08/2026 21:34:55
[2026-08-31 21:34:55,304.304 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:34:55,322.322 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:34:55,454.454 INFO    ] No existing commands found in stream
[2026-08-31 21:35:00,468.468 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:35:00,471.471 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-08-31 21:35:04,889.889 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 21:35:04,891.891 INFO    ] Checking for system updates...
[2026-08-31 21:35:04,926.926 INFO    ] 200
[2026-08-31 21:35:04,929.929 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:35:04,981.981 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:35:04,984.984 INFO    ] No update needed
[2026-08-31 21:35:04,986.986 INFO    ] Checking for camera pi updates...
[2026-08-31 21:35:05,024.024 INFO    ] 200
[2026-08-31 21:35:05,026.026 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:35:05,070.070 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:35:05,150.150 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:35:05,152.152 INFO    ] No camera update needed
[2026-08-31 21:35:05,154.154 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:35:05,157.157 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:35:05,162.162 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:35:05,167.167 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:35:07,207.207 INFO    ] ================================================
[2026-08-31 21:35:07,221.221 INFO    ] Launching Daemon at Mon Aug 31 21:35:07 IST 2026
[2026-08-31 21:35:07,232.232 INFO    ] ================================================
[2026-08-31 21:35:07,861.861 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:35:07
[2026-08-31 21:35:08,507.507 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:35:08,796.796 INFO    ] Initializing speech engine...
[2026-08-31 21:35:08,806.806 INFO    ] 2026-08-31 21:35:08
[2026-08-31 21:35:09,077.077 INFO    ] 2026-08-31 21:35:09
[2026-08-31 21:35:09,132.132 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:35:09,419.419 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:35:09,423.423 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:35:09,615.615 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:35:09,623.623 INFO    ] time= 31/08/2026 21:35:09
[2026-08-31 21:35:09,644.644 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:35:09,671.671 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:35:09,782.782 INFO    ] No existing commands found in stream
[2026-08-31 21:35:14,806.806 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:35:14,809.809 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-08-31 21:35:19,052.052 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 21:35:19,055.055 INFO    ] Checking for system updates...
[2026-08-31 21:35:19,093.093 INFO    ] 200
[2026-08-31 21:35:19,096.096 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:35:19,152.152 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:35:19,154.154 INFO    ] No update needed
[2026-08-31 21:35:19,157.157 INFO    ] Checking for camera pi updates...
[2026-08-31 21:35:19,191.191 INFO    ] 200
[2026-08-31 21:35:19,194.194 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:35:19,238.238 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:35:19,332.332 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:35:19,334.334 INFO    ] No camera update needed
[2026-08-31 21:35:19,337.337 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:35:19,340.340 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:35:19,345.345 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:35:19,351.351 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:35:21,392.392 INFO    ] ================================================
[2026-08-31 21:35:21,407.407 INFO    ] Launching Daemon at Mon Aug 31 21:35:21 IST 2026
[2026-08-31 21:35:21,417.417 INFO    ] ================================================
[2026-08-31 21:35:21,999.999 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:35:21
[2026-08-31 21:35:22,634.634 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:35:22,909.909 INFO    ] Initializing speech engine...
[2026-08-31 21:35:22,929.929 INFO    ] 2026-08-31 21:35:22
[2026-08-31 21:35:23,214.214 INFO    ] 2026-08-31 21:35:23
[2026-08-31 21:35:23,257.257 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:35:23,537.537 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:35:23,546.546 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:35:23,735.735 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:35:23,747.747 INFO    ] time= 31/08/2026 21:35:23
[2026-08-31 21:35:23,765.765 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:35:23,794.794 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:35:23,900.900 INFO    ] No existing commands found in stream
[2026-08-31 21:35:28,920.920 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:35:28,923.923 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-08-31 21:35:29,835.835 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 21:35:29,838.838 INFO    ] Checking for system updates...
[2026-08-31 21:35:29,874.874 INFO    ] 200
[2026-08-31 21:35:29,876.876 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:35:29,929.929 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:35:29,932.932 INFO    ] No update needed
[2026-08-31 21:35:29,934.934 INFO    ] Checking for camera pi updates...
[2026-08-31 21:35:29,971.971 INFO    ] 200
[2026-08-31 21:35:29,974.974 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:35:30,017.017 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:35:30,111.111 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:35:30,115.115 INFO    ] No camera update needed
[2026-08-31 21:35:30,118.118 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:35:30,121.121 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:35:30,128.128 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:35:30,133.133 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:35:32,178.178 INFO    ] ================================================
[2026-08-31 21:35:32,194.194 INFO    ] Launching Daemon at Mon Aug 31 21:35:32 IST 2026
[2026-08-31 21:35:32,205.205 INFO    ] ================================================
[2026-08-31 21:35:32,800.800 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:35:32
[2026-08-31 21:35:33,412.412 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:35:33,678.678 INFO    ] Initializing speech engine...
[2026-08-31 21:35:33,687.687 INFO    ] 2026-08-31 21:35:33
[2026-08-31 21:35:33,939.939 INFO    ] 2026-08-31 21:35:33
[2026-08-31 21:35:33,974.974 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:35:34,170.170 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:35:34,227.227 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:35:34,368.368 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:35:34,438.438 INFO    ] time= 31/08/2026 21:35:34
[2026-08-31 21:35:34,494.494 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:35:34,501.501 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:35:34,645.645 INFO    ] No existing commands found in stream
[2026-08-31 21:35:39,660.660 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:35:39,662.662 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-08-31 21:35:42,111.111 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 21:35:42,113.113 INFO    ] Checking for system updates...
[2026-08-31 21:35:42,151.151 INFO    ] 200
[2026-08-31 21:35:42,154.154 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:35:42,211.211 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:35:42,213.213 INFO    ] No update needed
[2026-08-31 21:35:42,216.216 INFO    ] Checking for camera pi updates...
[2026-08-31 21:35:42,249.249 INFO    ] 200
[2026-08-31 21:35:42,252.252 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:35:42,294.294 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:35:42,400.400 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:35:42,403.403 INFO    ] No camera update needed
[2026-08-31 21:35:42,405.405 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:35:42,408.408 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:35:42,414.414 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:35:42,419.419 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:35:44,462.462 INFO    ] ================================================
[2026-08-31 21:35:44,477.477 INFO    ] Launching Daemon at Mon Aug 31 21:35:44 IST 2026
[2026-08-31 21:35:44,487.487 INFO    ] ================================================
[2026-08-31 21:35:45,061.061 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:35:45
[2026-08-31 21:35:45,667.667 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:35:45,928.928 INFO    ] Initializing speech engine...
[2026-08-31 21:35:45,943.943 INFO    ] 2026-08-31 21:35:45
[2026-08-31 21:35:46,225.225 INFO    ] 2026-08-31 21:35:46
[2026-08-31 21:35:46,261.261 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:35:46,453.453 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:35:46,467.467 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:35:46,623.623 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:35:46,631.631 INFO    ] time= 31/08/2026 21:35:46
[2026-08-31 21:35:46,639.639 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:35:46,666.666 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:35:46,803.803 INFO    ] No existing commands found in stream
[2026-08-31 21:35:51,833.833 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:35:51,837.837 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-08-31 21:35:52,473.473 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 21:35:52,476.476 INFO    ] Checking for system updates...
[2026-08-31 21:35:52,517.517 INFO    ] 200
[2026-08-31 21:35:52,520.520 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-08-31 21:35:52,523.523 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-08-31 21:35:52,525.525 INFO    ] Checking for camera pi updates...
[2026-08-31 21:35:52,567.567 INFO    ] 200
[2026-08-31 21:35:52,570.570 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-08-31 21:35:52,573.573 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-08-31 21:35:52,575.575 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:35:52,578.578 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:35:52,584.584 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:35:52,590.590 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:35:54,630.630 INFO    ] ================================================
[2026-08-31 21:35:54,646.646 INFO    ] Launching Daemon at Mon Aug 31 21:35:54 IST 2026
[2026-08-31 21:35:54,656.656 INFO    ] ================================================
[2026-08-31 21:35:55,323.323 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:35:55
[2026-08-31 21:35:55,934.934 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:35:56,210.210 INFO    ] Initializing speech engine...
[2026-08-31 21:35:56,218.218 INFO    ] 2026-08-31 21:35:56
[2026-08-31 21:35:56,473.473 INFO    ] 2026-08-31 21:35:56
[2026-08-31 21:35:56,506.506 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:35:56,697.697 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:35:56,704.704 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:35:56,902.902 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:35:56,909.909 INFO    ] time= 31/08/2026 21:35:56
[2026-08-31 21:35:56,979.979 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:35:57,039.039 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:35:57,176.176 INFO    ] No existing commands found in stream
[2026-08-31 21:36:02,200.200 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:36:02,203.203 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-08-31 21:36:06,289.289 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 21:36:06,291.291 INFO    ] Checking for system updates...
[2026-08-31 21:36:06,327.327 INFO    ] 200
[2026-08-31 21:36:06,329.329 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:36:06,390.390 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:36:06,393.393 INFO    ] No update needed
[2026-08-31 21:36:06,395.395 INFO    ] Checking for camera pi updates...
[2026-08-31 21:36:06,432.432 INFO    ] 200
[2026-08-31 21:36:06,435.435 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:36:06,480.480 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:36:06,563.563 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:36:06,565.565 INFO    ] No camera update needed
[2026-08-31 21:36:06,568.568 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:36:06,570.570 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:36:06,575.575 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:36:06,580.580 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:36:08,622.622 INFO    ] ================================================
[2026-08-31 21:36:08,638.638 INFO    ] Launching Daemon at Mon Aug 31 21:36:08 IST 2026
[2026-08-31 21:36:08,648.648 INFO    ] ================================================
[2026-08-31 21:36:09,220.220 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:36:09
[2026-08-31 21:36:09,809.809 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:36:10,068.068 INFO    ] Initializing speech engine...
[2026-08-31 21:36:10,081.081 INFO    ] 2026-08-31 21:36:10
[2026-08-31 21:36:10,341.341 INFO    ] 2026-08-31 21:36:10
[2026-08-31 21:36:10,386.386 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:36:10,635.635 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:36:10,640.640 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:36:10,864.864 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:36:10,898.898 INFO    ] time= 31/08/2026 21:36:10
[2026-08-31 21:36:10,903.903 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:36:10,924.924 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:36:11,051.051 INFO    ] No existing commands found in stream
[2026-08-31 21:36:16,064.064 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:36:16,067.067 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-08-31 21:36:18,767.767 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 21:36:18,770.770 INFO    ] Checking for system updates...
[2026-08-31 21:36:18,806.806 INFO    ] 200
[2026-08-31 21:36:18,809.809 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:36:18,861.861 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:36:18,864.864 INFO    ] No update needed
[2026-08-31 21:36:18,866.866 INFO    ] Checking for camera pi updates...
[2026-08-31 21:36:18,900.900 INFO    ] 200
[2026-08-31 21:36:18,902.902 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:36:18,948.948 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:36:19,035.035 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:36:19,038.038 INFO    ] No camera update needed
[2026-08-31 21:36:19,040.040 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:36:19,042.042 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:36:19,048.048 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:36:19,053.053 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:36:21,094.094 INFO    ] ================================================
[2026-08-31 21:36:21,110.110 INFO    ] Launching Daemon at Mon Aug 31 21:36:21 IST 2026
[2026-08-31 21:36:21,122.122 INFO    ] ================================================
[2026-08-31 21:36:21,714.714 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:36:21
[2026-08-31 21:36:22,312.312 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:36:22,572.572 INFO    ] Initializing speech engine...
[2026-08-31 21:36:22,590.590 INFO    ] 2026-08-31 21:36:22
[2026-08-31 21:36:22,839.839 INFO    ] 2026-08-31 21:36:22
[2026-08-31 21:36:22,874.874 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:36:23,059.059 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:36:23,078.078 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:36:23,276.276 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:36:23,297.297 INFO    ] time= 31/08/2026 21:36:23
[2026-08-31 21:36:23,357.357 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:36:23,411.411 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:36:23,525.525 INFO    ] No existing commands found in stream
[2026-08-31 21:36:28,547.547 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:36:28,550.550 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-08-31 21:36:32,808.808 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 21:36:32,815.815 INFO    ] Checking for system updates...
[2026-08-31 21:36:32,854.854 INFO    ] 200
[2026-08-31 21:36:32,857.857 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:36:32,918.918 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:36:32,920.920 INFO    ] No update needed
[2026-08-31 21:36:32,923.923 INFO    ] Checking for camera pi updates...
[2026-08-31 21:36:32,958.958 INFO    ] 200
[2026-08-31 21:36:32,960.960 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:36:33,003.003 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:36:33,093.093 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:36:33,096.096 INFO    ] No camera update needed
[2026-08-31 21:36:33,099.099 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:36:33,102.102 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:36:33,108.108 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:36:33,115.115 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:36:35,159.159 INFO    ] ================================================
[2026-08-31 21:36:35,174.174 INFO    ] Launching Daemon at Mon Aug 31 21:36:35 IST 2026
[2026-08-31 21:36:35,184.184 INFO    ] ================================================
[2026-08-31 21:36:35,842.842 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:36:35
[2026-08-31 21:36:36,520.520 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:36:36,827.827 INFO    ] Initializing speech engine...
[2026-08-31 21:36:36,835.835 INFO    ] 2026-08-31 21:36:36
[2026-08-31 21:36:37,108.108 INFO    ] 2026-08-31 21:36:37
[2026-08-31 21:36:37,166.166 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:36:37,428.428 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:36:37,434.434 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:36:37,654.654 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:36:37,680.680 INFO    ] time= 31/08/2026 21:36:37
[2026-08-31 21:36:37,697.697 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:36:37,705.705 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:36:37,839.839 INFO    ] No existing commands found in stream
[2026-08-31 21:36:42,850.850 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:36:42,853.853 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-08-31 21:36:44,148.148 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 21:36:44,151.151 INFO    ] Checking for system updates...
[2026-08-31 21:36:44,189.189 INFO    ] 200
[2026-08-31 21:36:44,192.192 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:36:44,245.245 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:36:44,248.248 INFO    ] No update needed
[2026-08-31 21:36:44,251.251 INFO    ] Checking for camera pi updates...
[2026-08-31 21:36:44,289.289 INFO    ] 200
[2026-08-31 21:36:44,292.292 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:36:44,338.338 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:36:44,420.420 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:36:44,423.423 INFO    ] No camera update needed
[2026-08-31 21:36:44,425.425 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:36:44,428.428 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:36:44,434.434 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:36:44,440.440 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:36:46,482.482 INFO    ] ================================================
[2026-08-31 21:36:46,497.497 INFO    ] Launching Daemon at Mon Aug 31 21:36:46 IST 2026
[2026-08-31 21:36:46,507.507 INFO    ] ================================================
[2026-08-31 21:36:47,096.096 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:36:47
[2026-08-31 21:36:47,706.706 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:36:47,984.984 INFO    ] Initializing speech engine...
[2026-08-31 21:36:47,990.990 INFO    ] 2026-08-31 21:36:47
[2026-08-31 21:36:48,266.266 INFO    ] 2026-08-31 21:36:48
[2026-08-31 21:36:48,309.309 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:36:48,534.534 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:36:48,538.538 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:36:48,670.670 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:36:48,717.717 INFO    ] time= 31/08/2026 21:36:48
[2026-08-31 21:36:48,761.761 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:36:48,804.804 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:36:48,939.939 INFO    ] No existing commands found in stream
[2026-08-31 21:36:53,963.963 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:36:53,966.966 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-08-31 21:36:54,579.579 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 21:36:54,581.581 INFO    ] Checking for system updates...
[2026-08-31 21:36:54,617.617 INFO    ] 200
[2026-08-31 21:36:54,620.620 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:36:54,676.676 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:36:54,678.678 INFO    ] No update needed
[2026-08-31 21:36:54,681.681 INFO    ] Checking for camera pi updates...
[2026-08-31 21:36:54,714.714 INFO    ] 200
[2026-08-31 21:36:54,716.716 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:36:54,766.766 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:36:54,962.962 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:36:54,965.965 INFO    ] No camera update needed
[2026-08-31 21:36:54,967.967 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:36:54,969.969 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:36:54,975.975 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:36:54,980.980 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:36:57,021.021 INFO    ] ================================================
[2026-08-31 21:36:57,036.036 INFO    ] Launching Daemon at Mon Aug 31 21:36:57 IST 2026
[2026-08-31 21:36:57,048.048 INFO    ] ================================================
[2026-08-31 21:36:57,617.617 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:36:57
[2026-08-31 21:36:58,203.203 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:36:58,454.454 INFO    ] Initializing speech engine...
[2026-08-31 21:36:58,478.478 INFO    ] 2026-08-31 21:36:58
[2026-08-31 21:36:58,734.734 INFO    ] 2026-08-31 21:36:58
[2026-08-31 21:36:58,769.769 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:36:58,970.970 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:36:59,028.028 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:36:59,172.172 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:36:59,216.216 INFO    ] time= 31/08/2026 21:36:59
[2026-08-31 21:36:59,281.281 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:36:59,305.305 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:36:59,392.392 INFO    ] No existing commands found in stream
[2026-08-31 21:37:04,429.429 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:37:04,431.431 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-08-31 21:37:06,895.895 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 21:37:06,898.898 INFO    ] Checking for system updates...
[2026-08-31 21:37:06,933.933 INFO    ] 200
[2026-08-31 21:37:06,936.936 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:37:06,995.995 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:37:06,998.998 INFO    ] No update needed
[2026-08-31 21:37:07,000.000 INFO    ] Checking for camera pi updates...
[2026-08-31 21:37:07,037.037 INFO    ] 200
[2026-08-31 21:37:07,040.040 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:37:07,081.081 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:37:07,182.182 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:37:07,185.185 INFO    ] No camera update needed
[2026-08-31 21:37:07,187.187 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:37:07,189.189 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:37:07,195.195 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:37:07,200.200 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:37:09,241.241 INFO    ] ================================================
[2026-08-31 21:37:09,257.257 INFO    ] Launching Daemon at Mon Aug 31 21:37:09 IST 2026
[2026-08-31 21:37:09,268.268 INFO    ] ================================================
[2026-08-31 21:37:09,919.919 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:37:09
[2026-08-31 21:37:10,589.589 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:37:10,896.896 INFO    ] Initializing speech engine...
[2026-08-31 21:37:10,909.909 INFO    ] 2026-08-31 21:37:10
[2026-08-31 21:37:11,221.221 INFO    ] 2026-08-31 21:37:11
[2026-08-31 21:37:11,310.310 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:37:11,492.492 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:37:11,497.497 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:37:11,693.693 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:37:11,737.737 INFO    ] time= 31/08/2026 21:37:11
[2026-08-31 21:37:11,744.744 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:37:11,765.765 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:37:11,921.921 INFO    ] No existing commands found in stream
[2026-08-31 21:37:16,947.947 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:37:16,950.950 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-08-31 21:37:18,461.461 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 21:37:18,464.464 INFO    ] Checking for system updates...
[2026-08-31 21:37:18,499.499 INFO    ] 200
[2026-08-31 21:37:18,502.502 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:37:18,562.562 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:37:18,564.564 INFO    ] No update needed
[2026-08-31 21:37:18,566.566 INFO    ] Checking for camera pi updates...
[2026-08-31 21:37:18,600.600 INFO    ] 200
[2026-08-31 21:37:18,603.603 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:37:18,647.647 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:37:18,726.726 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:37:18,729.729 INFO    ] No camera update needed
[2026-08-31 21:37:18,731.731 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:37:18,733.733 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:37:18,739.739 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:37:18,744.744 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:37:20,784.784 INFO    ] ================================================
[2026-08-31 21:37:20,799.799 INFO    ] Launching Daemon at Mon Aug 31 21:37:20 IST 2026
[2026-08-31 21:37:20,810.810 INFO    ] ================================================
[2026-08-31 21:37:21,394.394 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:37:21
[2026-08-31 21:37:21,993.993 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:37:22,256.256 INFO    ] Initializing speech engine...
[2026-08-31 21:37:22,262.262 INFO    ] 2026-08-31 21:37:22
[2026-08-31 21:37:22,557.557 INFO    ] 2026-08-31 21:37:22
[2026-08-31 21:37:22,595.595 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:37:22,793.793 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:37:22,812.812 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:37:22,971.971 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:37:22,976.976 INFO    ] time= 31/08/2026 21:37:22
[2026-08-31 21:37:22,983.983 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:37:23,005.005 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:37:23,128.128 INFO    ] No existing commands found in stream
[2026-08-31 21:37:28,153.153 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:37:28,156.156 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-08-31 21:37:30,224.224 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 21:37:30,227.227 INFO    ] Checking for system updates...
[2026-08-31 21:37:30,263.263 INFO    ] 200
[2026-08-31 21:37:30,265.265 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:37:30,318.318 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:37:30,321.321 INFO    ] No update needed
[2026-08-31 21:37:30,323.323 INFO    ] Checking for camera pi updates...
[2026-08-31 21:37:30,361.361 INFO    ] 200
[2026-08-31 21:37:30,363.363 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:37:30,403.403 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:37:30,490.490 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:37:30,492.492 INFO    ] No camera update needed
[2026-08-31 21:37:30,495.495 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:37:30,497.497 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:37:30,502.502 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:37:30,508.508 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:37:32,550.550 INFO    ] ================================================
[2026-08-31 21:37:32,566.566 INFO    ] Launching Daemon at Mon Aug 31 21:37:32 IST 2026
[2026-08-31 21:37:32,577.577 INFO    ] ================================================
[2026-08-31 21:37:33,179.179 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:37:33
[2026-08-31 21:37:33,774.774 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:37:34,042.042 INFO    ] Initializing speech engine...
[2026-08-31 21:37:34,051.051 INFO    ] 2026-08-31 21:37:34
[2026-08-31 21:37:34,299.299 INFO    ] 2026-08-31 21:37:34
[2026-08-31 21:37:34,333.333 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:37:34,530.530 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:37:34,560.560 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:37:34,733.733 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:37:34,798.798 INFO    ] time= 31/08/2026 21:37:34
[2026-08-31 21:37:34,858.858 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:37:34,868.868 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:37:35,012.012 INFO    ] No existing commands found in stream
[2026-08-31 21:37:40,028.028 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:37:40,031.031 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-08-31 21:37:44,473.473 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 21:37:44,476.476 INFO    ] Checking for system updates...
[2026-08-31 21:37:44,516.516 INFO    ] 200
[2026-08-31 21:37:44,519.519 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:37:44,580.580 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:37:44,583.583 INFO    ] No update needed
[2026-08-31 21:37:44,586.586 INFO    ] Checking for camera pi updates...
[2026-08-31 21:37:44,624.624 INFO    ] 200
[2026-08-31 21:37:44,627.627 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:37:44,669.669 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:37:44,753.753 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:37:44,756.756 INFO    ] No camera update needed
[2026-08-31 21:37:44,759.759 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:37:44,761.761 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:37:44,768.768 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:37:44,773.773 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:37:46,813.813 INFO    ] ================================================
[2026-08-31 21:37:46,829.829 INFO    ] Launching Daemon at Mon Aug 31 21:37:46 IST 2026
[2026-08-31 21:37:46,839.839 INFO    ] ================================================
[2026-08-31 21:37:47,411.411 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:37:47
[2026-08-31 21:37:48,002.002 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:37:48,254.254 INFO    ] Initializing speech engine...
[2026-08-31 21:37:48,262.262 INFO    ] 2026-08-31 21:37:48
[2026-08-31 21:37:48,559.559 INFO    ] 2026-08-31 21:37:48
[2026-08-31 21:37:48,600.600 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:37:48,808.808 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:37:48,825.825 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:37:48,973.973 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:37:48,982.982 INFO    ] time= 31/08/2026 21:37:48
[2026-08-31 21:37:48,989.989 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:37:49,038.038 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:37:49,185.185 INFO    ] No existing commands found in stream
[2026-08-31 21:37:54,218.218 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:37:54,221.221 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-08-31 21:37:58,496.496 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 21:37:58,499.499 INFO    ] Checking for system updates...
[2026-08-31 21:37:58,539.539 INFO    ] 200
[2026-08-31 21:37:58,542.542 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:37:58,595.595 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:37:58,598.598 INFO    ] No update needed
[2026-08-31 21:37:58,601.601 INFO    ] Checking for camera pi updates...
[2026-08-31 21:37:58,636.636 INFO    ] 200
[2026-08-31 21:37:58,639.639 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:37:58,680.680 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:37:58,763.763 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:37:58,766.766 INFO    ] No camera update needed
[2026-08-31 21:37:58,768.768 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:37:58,771.771 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:37:58,777.777 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:37:58,783.783 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:38:00,824.824 INFO    ] ================================================
[2026-08-31 21:38:00,839.839 INFO    ] Launching Daemon at Mon Aug 31 21:38:00 IST 2026
[2026-08-31 21:38:00,850.850 INFO    ] ================================================
[2026-08-31 21:38:01,431.431 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:38:01
[2026-08-31 21:38:02,162.162 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:38:02,469.469 INFO    ] Initializing speech engine...
[2026-08-31 21:38:02,478.478 INFO    ] 2026-08-31 21:38:02
[2026-08-31 21:38:02,810.810 INFO    ] 2026-08-31 21:38:02
[2026-08-31 21:38:02,845.845 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:38:03,080.080 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:38:03,089.089 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:38:03,321.321 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:38:03,330.330 INFO    ] time= 31/08/2026 21:38:03
[2026-08-31 21:38:03,345.345 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:38:03,403.403 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:38:03,530.530 INFO    ] No existing commands found in stream
[2026-08-31 21:38:08,556.556 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:38:08,559.559 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-08-31 21:38:11,087.087 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 21:38:11,089.089 INFO    ] Checking for system updates...
[2026-08-31 21:38:11,125.125 INFO    ] 200
[2026-08-31 21:38:11,127.127 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:38:11,180.180 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:38:11,183.183 INFO    ] No update needed
[2026-08-31 21:38:11,185.185 INFO    ] Checking for camera pi updates...
[2026-08-31 21:38:11,218.218 INFO    ] 200
[2026-08-31 21:38:11,220.220 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:38:11,261.261 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:38:11,352.352 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:38:11,355.355 INFO    ] No camera update needed
[2026-08-31 21:38:11,360.360 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:38:11,363.363 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:38:11,368.368 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:38:11,373.373 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:38:13,415.415 INFO    ] ================================================
[2026-08-31 21:38:13,430.430 INFO    ] Launching Daemon at Mon Aug 31 21:38:13 IST 2026
[2026-08-31 21:38:13,441.441 INFO    ] ================================================
[2026-08-31 21:38:14,081.081 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:38:14
[2026-08-31 21:38:14,744.744 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:38:15,044.044 INFO    ] Initializing speech engine...
[2026-08-31 21:38:15,054.054 INFO    ] 2026-08-31 21:38:15
[2026-08-31 21:38:15,325.325 INFO    ] 2026-08-31 21:38:15
[2026-08-31 21:38:15,384.384 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:38:15,611.611 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:38:15,621.621 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:38:15,806.806 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:38:15,871.871 INFO    ] time= 31/08/2026 21:38:15
[2026-08-31 21:38:15,893.893 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:38:15,909.909 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:38:16,047.047 INFO    ] No existing commands found in stream
[2026-08-31 21:38:21,067.067 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:38:21,071.071 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-08-31 21:38:22,064.064 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 21:38:22,067.067 INFO    ] Checking for system updates...
[2026-08-31 21:38:22,102.102 INFO    ] 200
[2026-08-31 21:38:22,105.105 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:38:22,157.157 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:38:22,160.160 INFO    ] No update needed
[2026-08-31 21:38:22,162.162 INFO    ] Checking for camera pi updates...
[2026-08-31 21:38:22,195.195 INFO    ] 200
[2026-08-31 21:38:22,198.198 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:38:22,238.238 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:38:22,341.341 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:38:22,343.343 INFO    ] No camera update needed
[2026-08-31 21:38:22,345.345 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:38:22,347.347 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:38:22,353.353 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:38:22,358.358 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:38:24,397.397 INFO    ] ================================================
[2026-08-31 21:38:24,412.412 INFO    ] Launching Daemon at Mon Aug 31 21:38:24 IST 2026
[2026-08-31 21:38:24,423.423 INFO    ] ================================================
[2026-08-31 21:38:25,001.001 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:38:24
[2026-08-31 21:38:25,595.595 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:38:25,868.868 INFO    ] Initializing speech engine...
[2026-08-31 21:38:25,878.878 INFO    ] 2026-08-31 21:38:25
[2026-08-31 21:38:26,139.139 INFO    ] 2026-08-31 21:38:26
[2026-08-31 21:38:26,193.193 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:38:26,420.420 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:38:26,452.452 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:38:26,653.653 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:38:26,691.691 INFO    ] time= 31/08/2026 21:38:26
[2026-08-31 21:38:26,698.698 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:38:26,716.716 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:38:26,851.851 INFO    ] No existing commands found in stream
[2026-08-31 21:38:31,881.881 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:38:31,884.884 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-08-31 21:38:36,368.368 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 21:38:36,371.371 INFO    ] Checking for system updates...
[2026-08-31 21:38:36,407.407 INFO    ] 200
[2026-08-31 21:38:36,410.410 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:38:36,463.463 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:38:36,466.466 INFO    ] No update needed
[2026-08-31 21:38:36,469.469 INFO    ] Checking for camera pi updates...
[2026-08-31 21:38:36,515.515 INFO    ] 200
[2026-08-31 21:38:36,517.517 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:38:36,558.558 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:38:36,638.638 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:38:36,641.641 INFO    ] No camera update needed
[2026-08-31 21:38:36,643.643 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:38:36,646.646 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:38:36,652.652 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:38:36,658.658 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:38:38,700.700 INFO    ] ================================================
[2026-08-31 21:38:38,716.716 INFO    ] Launching Daemon at Mon Aug 31 21:38:38 IST 2026
[2026-08-31 21:38:38,727.727 INFO    ] ================================================
[2026-08-31 21:38:39,306.306 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:38:39
[2026-08-31 21:38:39,903.903 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:38:40,174.174 INFO    ] Initializing speech engine...
[2026-08-31 21:38:40,184.184 INFO    ] 2026-08-31 21:38:40
[2026-08-31 21:38:40,432.432 INFO    ] 2026-08-31 21:38:40
[2026-08-31 21:38:40,498.498 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:38:40,723.723 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:38:40,734.734 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:38:40,888.888 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:38:40,933.933 INFO    ] time= 31/08/2026 21:38:40
[2026-08-31 21:38:40,972.972 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:38:41,006.006 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:38:41,096.096 INFO    ] No existing commands found in stream
[2026-08-31 21:38:46,108.108 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:38:46,110.110 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-08-31 21:38:48,325.325 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 21:38:48,328.328 INFO    ] Checking for system updates...
[2026-08-31 21:38:48,364.364 INFO    ] 200
[2026-08-31 21:38:48,367.367 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:38:48,419.419 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:38:48,422.422 INFO    ] No update needed
[2026-08-31 21:38:48,424.424 INFO    ] Checking for camera pi updates...
[2026-08-31 21:38:48,458.458 INFO    ] 200
[2026-08-31 21:38:48,461.461 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:38:48,505.505 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:38:48,592.592 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:38:48,594.594 INFO    ] No camera update needed
[2026-08-31 21:38:48,597.597 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:38:48,599.599 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:38:48,605.605 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:38:48,610.610 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:38:50,650.650 INFO    ] ================================================
[2026-08-31 21:38:50,665.665 INFO    ] Launching Daemon at Mon Aug 31 21:38:50 IST 2026
[2026-08-31 21:38:50,677.677 INFO    ] ================================================
[2026-08-31 21:38:51,264.264 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:38:51
[2026-08-31 21:38:51,871.871 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:38:52,135.135 INFO    ] Initializing speech engine...
[2026-08-31 21:38:52,149.149 INFO    ] 2026-08-31 21:38:52
[2026-08-31 21:38:52,443.443 INFO    ] 2026-08-31 21:38:52
[2026-08-31 21:38:52,482.482 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:38:52,683.683 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:38:52,697.697 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:38:52,862.862 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:38:52,870.870 INFO    ] time= 31/08/2026 21:38:52
[2026-08-31 21:38:52,875.875 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:38:52,882.882 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:38:52,996.996 INFO    ] No existing commands found in stream
[2026-08-31 21:38:58,031.031 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:38:58,034.034 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-08-31 21:39:01,190.190 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 21:39:01,193.193 INFO    ] Checking for system updates...
[2026-08-31 21:39:01,230.230 INFO    ] 200
[2026-08-31 21:39:01,232.232 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:39:01,296.296 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:39:01,299.299 INFO    ] No update needed
[2026-08-31 21:39:01,301.301 INFO    ] Checking for camera pi updates...
[2026-08-31 21:39:01,339.339 INFO    ] 200
[2026-08-31 21:39:01,342.342 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:39:01,382.382 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:39:01,564.564 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:39:01,566.566 INFO    ] No camera update needed
[2026-08-31 21:39:01,569.569 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:39:01,571.571 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:39:01,576.576 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:39:01,584.584 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:39:03,625.625 INFO    ] ================================================
[2026-08-31 21:39:03,640.640 INFO    ] Launching Daemon at Mon Aug 31 21:39:03 IST 2026
[2026-08-31 21:39:03,652.652 INFO    ] ================================================
[2026-08-31 21:39:04,216.216 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:39:04
[2026-08-31 21:39:04,814.814 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:39:05,075.075 INFO    ] Initializing speech engine...
[2026-08-31 21:39:05,082.082 INFO    ] 2026-08-31 21:39:05
[2026-08-31 21:39:05,385.385 INFO    ] 2026-08-31 21:39:05
[2026-08-31 21:39:05,421.421 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:39:05,629.629 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:39:05,645.645 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:39:05,815.815 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:39:05,836.836 INFO    ] time= 31/08/2026 21:39:05
[2026-08-31 21:39:05,906.906 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:39:05,913.913 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:39:06,055.055 INFO    ] No existing commands found in stream
[2026-08-31 21:39:11,071.071 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:39:11,074.074 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-08-31 21:39:13,691.691 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 21:39:13,694.694 INFO    ] Checking for system updates...
[2026-08-31 21:39:13,729.729 INFO    ] 200
[2026-08-31 21:39:13,732.732 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:39:13,784.784 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:39:13,786.786 INFO    ] No update needed
[2026-08-31 21:39:13,789.789 INFO    ] Checking for camera pi updates...
[2026-08-31 21:39:13,822.822 INFO    ] 200
[2026-08-31 21:39:13,825.825 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:39:13,865.865 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:39:13,947.947 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:39:13,949.949 INFO    ] No camera update needed
[2026-08-31 21:39:13,952.952 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:39:13,954.954 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:39:13,959.959 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:39:13,964.964 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:39:16,005.005 INFO    ] ================================================
[2026-08-31 21:39:16,021.021 INFO    ] Launching Daemon at Mon Aug 31 21:39:16 IST 2026
[2026-08-31 21:39:16,033.033 INFO    ] ================================================
[2026-08-31 21:39:16,633.633 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:39:16
[2026-08-31 21:39:17,260.260 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:39:17,534.534 INFO    ] Initializing speech engine...
[2026-08-31 21:39:17,544.544 INFO    ] 2026-08-31 21:39:17
[2026-08-31 21:39:17,806.806 INFO    ] 2026-08-31 21:39:17
[2026-08-31 21:39:17,861.861 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:39:18,084.084 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:39:18,094.094 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:39:18,228.228 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:39:18,277.277 INFO    ] time= 31/08/2026 21:39:18
[2026-08-31 21:39:18,331.331 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:39:18,359.359 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:39:18,502.502 INFO    ] No existing commands found in stream
[2026-08-31 21:39:23,518.518 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:39:23,522.522 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-08-31 21:39:25,418.418 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 21:39:25,421.421 INFO    ] Checking for system updates...
[2026-08-31 21:39:25,459.459 INFO    ] 200
[2026-08-31 21:39:25,462.462 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:39:25,520.520 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:39:25,523.523 INFO    ] No update needed
[2026-08-31 21:39:25,525.525 INFO    ] Checking for camera pi updates...
[2026-08-31 21:39:25,563.563 INFO    ] 200
[2026-08-31 21:39:25,566.566 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:39:25,619.619 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:39:25,700.700 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:39:25,702.702 INFO    ] No camera update needed
[2026-08-31 21:39:25,705.705 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:39:25,708.708 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:39:25,714.714 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:39:25,719.719 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:39:27,783.783 INFO    ] ================================================
[2026-08-31 21:39:27,800.800 INFO    ] Launching Daemon at Mon Aug 31 21:39:27 IST 2026
[2026-08-31 21:39:27,812.812 INFO    ] ================================================
[2026-08-31 21:39:28,403.403 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:39:28
[2026-08-31 21:39:28,999.999 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:39:29,251.251 INFO    ] Initializing speech engine...
[2026-08-31 21:39:29,273.273 INFO    ] 2026-08-31 21:39:29
[2026-08-31 21:39:29,531.531 INFO    ] 2026-08-31 21:39:29
[2026-08-31 21:39:29,575.575 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:39:29,789.789 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:39:29,803.803 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:39:29,971.971 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:39:29,976.976 INFO    ] time= 31/08/2026 21:39:29
[2026-08-31 21:39:29,983.983 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:39:30,026.026 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:39:30,187.187 INFO    ] No existing commands found in stream
[2026-08-31 21:39:35,211.211 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:39:35,214.214 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-08-31 21:39:38,128.128 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 21:39:38,130.130 INFO    ] Checking for system updates...
[2026-08-31 21:39:38,170.170 INFO    ] 200
[2026-08-31 21:39:38,173.173 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:39:38,229.229 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:39:38,232.232 INFO    ] No update needed
[2026-08-31 21:39:38,234.234 INFO    ] Checking for camera pi updates...
[2026-08-31 21:39:38,269.269 INFO    ] 200
[2026-08-31 21:39:38,271.271 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:39:38,312.312 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:39:38,375.375 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:39:38,378.378 INFO    ] No camera update needed
[2026-08-31 21:39:38,380.380 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:39:38,382.382 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:39:38,388.388 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:39:38,393.393 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:39:40,433.433 INFO    ] ================================================
[2026-08-31 21:39:40,450.450 INFO    ] Launching Daemon at Mon Aug 31 21:39:40 IST 2026
[2026-08-31 21:39:40,464.464 INFO    ] ================================================
[2026-08-31 21:39:41,183.183 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:39:41
[2026-08-31 21:39:41,858.858 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:39:42,171.171 INFO    ] Initializing speech engine...
[2026-08-31 21:39:42,182.182 INFO    ] 2026-08-31 21:39:42
[2026-08-31 21:39:42,474.474 INFO    ] 2026-08-31 21:39:42
[2026-08-31 21:39:42,586.586 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:39:42,770.770 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:39:42,786.786 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:39:43,011.011 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:39:43,018.018 INFO    ] time= 31/08/2026 21:39:43
[2026-08-31 21:39:43,038.038 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:39:43,069.069 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:39:43,173.173 INFO    ] No existing commands found in stream
[2026-08-31 21:39:48,188.188 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:39:48,192.192 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-08-31 21:39:50,552.552 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 21:39:50,555.555 INFO    ] Checking for system updates...
[2026-08-31 21:39:50,593.593 INFO    ] 200
[2026-08-31 21:39:50,596.596 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:39:50,649.649 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:39:50,651.651 INFO    ] No update needed
[2026-08-31 21:39:50,654.654 INFO    ] Checking for camera pi updates...
[2026-08-31 21:39:50,688.688 INFO    ] 200
[2026-08-31 21:39:50,690.690 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:39:50,730.730 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:39:50,833.833 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:39:50,836.836 INFO    ] No camera update needed
[2026-08-31 21:39:50,838.838 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:39:50,841.841 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:39:50,846.846 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:39:50,851.851 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:39:52,892.892 INFO    ] ================================================
[2026-08-31 21:39:52,908.908 INFO    ] Launching Daemon at Mon Aug 31 21:39:52 IST 2026
[2026-08-31 21:39:52,919.919 INFO    ] ================================================
[2026-08-31 21:39:53,579.579 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:39:53
[2026-08-31 21:39:54,262.262 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:39:54,570.570 INFO    ] Initializing speech engine...
[2026-08-31 21:39:54,582.582 INFO    ] 2026-08-31 21:39:54
[2026-08-31 21:39:54,895.895 INFO    ] 2026-08-31 21:39:54
[2026-08-31 21:39:54,978.978 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:39:55,248.248 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:39:55,268.268 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:39:55,478.478 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:39:55,538.538 INFO    ] time= 31/08/2026 21:39:55
[2026-08-31 21:39:55,571.571 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:39:55,636.636 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:39:55,789.789 INFO    ] No existing commands found in stream
[2026-08-31 21:40:00,806.806 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:40:00,809.809 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-08-31 21:40:08,020.020 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 21:40:08,023.023 INFO    ] Checking for system updates...
[2026-08-31 21:40:08,064.064 INFO    ] 200
[2026-08-31 21:40:08,067.067 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:40:08,122.122 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:40:08,125.125 INFO    ] No update needed
[2026-08-31 21:40:08,128.128 INFO    ] Checking for camera pi updates...
[2026-08-31 21:40:08,167.167 INFO    ] 200
[2026-08-31 21:40:08,170.170 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:40:08,213.213 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:40:08,266.266 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:40:08,270.270 INFO    ] No camera update needed
[2026-08-31 21:40:08,272.272 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:40:08,275.275 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:40:08,281.281 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:40:08,287.287 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:40:10,328.328 INFO    ] ================================================
[2026-08-31 21:40:10,344.344 INFO    ] Launching Daemon at Mon Aug 31 21:40:10 IST 2026
[2026-08-31 21:40:10,355.355 INFO    ] ================================================
[2026-08-31 21:40:10,922.922 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:40:10
[2026-08-31 21:40:11,529.529 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:40:11,820.820 INFO    ] Initializing speech engine...
[2026-08-31 21:40:11,829.829 INFO    ] 2026-08-31 21:40:11
[2026-08-31 21:40:12,101.101 INFO    ] 2026-08-31 21:40:12
[2026-08-31 21:40:12,142.142 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:40:12,360.360 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:40:12,363.363 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:40:12,495.495 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:40:12,501.501 INFO    ] time= 31/08/2026 21:40:12
[2026-08-31 21:40:12,506.506 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:40:12,552.552 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:40:12,695.695 INFO    ] No existing commands found in stream
[2026-08-31 21:40:17,706.706 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:40:17,709.709 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-08-31 21:40:20,965.965 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 21:40:20,968.968 INFO    ] Checking for system updates...
[2026-08-31 21:40:21,004.004 INFO    ] 200
[2026-08-31 21:40:21,007.007 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:40:21,067.067 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:40:21,069.069 INFO    ] No update needed
[2026-08-31 21:40:21,072.072 INFO    ] Checking for camera pi updates...
[2026-08-31 21:40:21,106.106 INFO    ] 200
[2026-08-31 21:40:21,108.108 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:40:21,154.154 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:40:21,210.210 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:40:21,213.213 INFO    ] No camera update needed
[2026-08-31 21:40:21,215.215 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:40:21,218.218 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:40:21,224.224 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:40:21,229.229 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:40:23,269.269 INFO    ] ================================================
[2026-08-31 21:40:23,285.285 INFO    ] Launching Daemon at Mon Aug 31 21:40:23 IST 2026
[2026-08-31 21:40:23,297.297 INFO    ] ================================================
[2026-08-31 21:40:23,870.870 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:40:23
[2026-08-31 21:40:24,457.457 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:40:24,717.717 INFO    ] Initializing speech engine...
[2026-08-31 21:40:24,732.732 INFO    ] 2026-08-31 21:40:24
[2026-08-31 21:40:24,987.987 INFO    ] 2026-08-31 21:40:24
[2026-08-31 21:40:25,023.023 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:40:25,225.225 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:40:25,284.284 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:40:25,426.426 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:40:25,463.463 INFO    ] time= 31/08/2026 21:40:25
[2026-08-31 21:40:25,523.523 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:40:25,563.563 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:40:25,666.666 INFO    ] No existing commands found in stream
[2026-08-31 21:40:30,693.693 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:40:30,696.696 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-08-31 21:40:31,704.704 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 21:40:31,707.707 INFO    ] Checking for system updates...
[2026-08-31 21:40:31,743.743 INFO    ] 200
[2026-08-31 21:40:31,746.746 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:40:31,802.802 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:40:31,804.804 INFO    ] No update needed
[2026-08-31 21:40:31,807.807 INFO    ] Checking for camera pi updates...
[2026-08-31 21:40:31,845.845 INFO    ] 200
[2026-08-31 21:40:31,847.847 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:40:31,897.897 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:40:31,960.960 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:40:31,963.963 INFO    ] No camera update needed
[2026-08-31 21:40:31,966.966 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:40:31,969.969 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:40:31,975.975 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:40:31,981.981 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:40:34,028.028 INFO    ] ================================================
[2026-08-31 21:40:34,044.044 INFO    ] Launching Daemon at Mon Aug 31 21:40:34 IST 2026
[2026-08-31 21:40:34,055.055 INFO    ] ================================================
[2026-08-31 21:40:34,633.633 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:40:34
[2026-08-31 21:40:35,312.312 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:40:35,630.630 INFO    ] Initializing speech engine...
[2026-08-31 21:40:35,640.640 INFO    ] 2026-08-31 21:40:35
[2026-08-31 21:40:35,925.925 INFO    ] 2026-08-31 21:40:35
[2026-08-31 21:40:35,963.963 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:40:36,201.201 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:40:36,222.222 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:40:36,418.418 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:40:36,471.471 INFO    ] time= 31/08/2026 21:40:36
[2026-08-31 21:40:36,478.478 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:40:36,496.496 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:40:36,629.629 INFO    ] No existing commands found in stream
[2026-08-31 21:40:41,644.644 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:40:41,647.647 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-08-31 21:40:42,447.447 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 21:40:42,450.450 INFO    ] Checking for system updates...
[2026-08-31 21:40:42,488.488 INFO    ] 200
[2026-08-31 21:40:42,491.491 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:40:42,549.549 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:40:42,551.551 INFO    ] No update needed
[2026-08-31 21:40:42,554.554 INFO    ] Checking for camera pi updates...
[2026-08-31 21:40:42,588.588 INFO    ] 200
[2026-08-31 21:40:42,590.590 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:40:42,630.630 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:40:42,685.685 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:40:42,688.688 INFO    ] No camera update needed
[2026-08-31 21:40:42,690.690 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:40:42,693.693 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:40:42,698.698 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:40:42,703.703 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:40:44,744.744 INFO    ] ================================================
[2026-08-31 21:40:44,760.760 INFO    ] Launching Daemon at Mon Aug 31 21:40:44 IST 2026
[2026-08-31 21:40:44,771.771 INFO    ] ================================================
[2026-08-31 21:40:45,336.336 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:40:45
[2026-08-31 21:40:46,003.003 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:40:46,312.312 INFO    ] Initializing speech engine...
[2026-08-31 21:40:46,323.323 INFO    ] 2026-08-31 21:40:46
[2026-08-31 21:40:46,609.609 INFO    ] 2026-08-31 21:40:46
[2026-08-31 21:40:46,654.654 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:40:46,944.944 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:40:46,954.954 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:40:47,153.153 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:40:47,160.160 INFO    ] time= 31/08/2026 21:40:47
[2026-08-31 21:40:47,182.182 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:40:47,211.211 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:40:47,349.349 INFO    ] No existing commands found in stream
[2026-08-31 21:40:52,374.374 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:40:52,378.378 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-08-31 21:40:55,298.298 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 21:40:55,301.301 INFO    ] Checking for system updates...
[2026-08-31 21:40:55,342.342 INFO    ] 200
[2026-08-31 21:40:55,345.345 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:40:55,398.398 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:40:55,401.401 INFO    ] No update needed
[2026-08-31 21:40:55,404.404 INFO    ] Checking for camera pi updates...
[2026-08-31 21:40:55,443.443 INFO    ] 200
[2026-08-31 21:40:55,447.447 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:40:55,493.493 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:40:55,578.578 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:40:55,581.581 INFO    ] No camera update needed
[2026-08-31 21:40:55,584.584 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:40:55,586.586 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:40:55,593.593 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:40:55,599.599 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:40:57,641.641 INFO    ] ================================================
[2026-08-31 21:40:57,656.656 INFO    ] Launching Daemon at Mon Aug 31 21:40:57 IST 2026
[2026-08-31 21:40:57,667.667 INFO    ] ================================================
[2026-08-31 21:40:58,323.323 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:40:58
[2026-08-31 21:40:59,002.002 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:40:59,311.311 INFO    ] Initializing speech engine...
[2026-08-31 21:40:59,325.325 INFO    ] 2026-08-31 21:40:59
[2026-08-31 21:40:59,636.636 INFO    ] 2026-08-31 21:40:59
[2026-08-31 21:40:59,723.723 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:40:59,917.917 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:40:59,935.935 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:41:00,148.148 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:41:00,161.161 INFO    ] time= 31/08/2026 21:41:00
[2026-08-31 21:41:00,180.180 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:41:00,207.207 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:41:00,323.323 INFO    ] No existing commands found in stream
[2026-08-31 21:41:05,349.349 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:41:05,352.352 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-08-31 21:41:07,527.527 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 21:41:07,530.530 INFO    ] Checking for system updates...
[2026-08-31 21:41:07,567.567 INFO    ] 200
[2026-08-31 21:41:07,570.570 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:41:07,643.643 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:41:07,645.645 INFO    ] No update needed
[2026-08-31 21:41:07,648.648 INFO    ] Checking for camera pi updates...
[2026-08-31 21:41:07,683.683 INFO    ] 200
[2026-08-31 21:41:07,686.686 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:41:07,728.728 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:41:07,830.830 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:41:07,833.833 INFO    ] No camera update needed
[2026-08-31 21:41:07,835.835 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:41:07,838.838 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:41:07,844.844 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:41:07,850.850 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:41:09,891.891 INFO    ] ================================================
[2026-08-31 21:41:09,906.906 INFO    ] Launching Daemon at Mon Aug 31 21:41:09 IST 2026
[2026-08-31 21:41:09,918.918 INFO    ] ================================================
[2026-08-31 21:41:10,485.485 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:41:10
[2026-08-31 21:41:11,080.080 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:41:11,343.343 INFO    ] Initializing speech engine...
[2026-08-31 21:41:11,352.352 INFO    ] 2026-08-31 21:41:11
[2026-08-31 21:41:11,598.598 INFO    ] 2026-08-31 21:41:11
[2026-08-31 21:41:11,634.634 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:41:11,893.893 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:41:11,898.898 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:41:12,101.101 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:41:12,154.154 INFO    ] time= 31/08/2026 21:41:12
[2026-08-31 21:41:12,161.161 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:41:12,175.175 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:41:12,279.279 INFO    ] No existing commands found in stream
[2026-08-31 21:41:17,309.309 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:41:17,312.312 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-08-31 21:41:19,621.621 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 21:41:19,624.624 INFO    ] Checking for system updates...
[2026-08-31 21:41:19,659.659 INFO    ] 200
[2026-08-31 21:41:19,662.662 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:41:19,715.715 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:41:19,717.717 INFO    ] No update needed
[2026-08-31 21:41:19,720.720 INFO    ] Checking for camera pi updates...
[2026-08-31 21:41:19,752.752 INFO    ] 200
[2026-08-31 21:41:19,755.755 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:41:19,800.800 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:41:19,886.886 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:41:19,889.889 INFO    ] No camera update needed
[2026-08-31 21:41:19,891.891 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:41:19,893.893 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:41:19,899.899 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:41:19,904.904 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:41:21,944.944 INFO    ] ================================================
[2026-08-31 21:41:21,959.959 INFO    ] Launching Daemon at Mon Aug 31 21:41:21 IST 2026
[2026-08-31 21:41:21,969.969 INFO    ] ================================================
[2026-08-31 21:41:22,540.540 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:41:22
[2026-08-31 21:41:23,129.129 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:41:23,397.397 INFO    ] Initializing speech engine...
[2026-08-31 21:41:23,406.406 INFO    ] 2026-08-31 21:41:23
[2026-08-31 21:41:23,653.653 INFO    ] 2026-08-31 21:41:23
[2026-08-31 21:41:23,688.688 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:41:23,886.886 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:41:23,946.946 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:41:24,088.088 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:41:24,148.148 INFO    ] time= 31/08/2026 21:41:24
[2026-08-31 21:41:24,197.197 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:41:24,220.220 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:41:24,372.372 INFO    ] No existing commands found in stream
[2026-08-31 21:41:29,400.400 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:41:29,403.403 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-08-31 21:41:32,274.274 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 21:41:32,278.278 INFO    ] Checking for system updates...
[2026-08-31 21:41:32,319.319 INFO    ] 200
[2026-08-31 21:41:32,321.321 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:41:32,378.378 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:41:32,381.381 INFO    ] No update needed
[2026-08-31 21:41:32,383.383 INFO    ] Checking for camera pi updates...
[2026-08-31 21:41:32,418.418 INFO    ] 200
[2026-08-31 21:41:32,421.421 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:41:32,468.468 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:41:32,572.572 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:41:32,575.575 INFO    ] No camera update needed
[2026-08-31 21:41:32,578.578 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:41:32,580.580 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:41:32,586.586 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:41:32,592.592 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:41:34,632.632 INFO    ] ================================================
[2026-08-31 21:41:34,647.647 INFO    ] Launching Daemon at Mon Aug 31 21:41:34 IST 2026
[2026-08-31 21:41:34,658.658 INFO    ] ================================================
[2026-08-31 21:41:35,232.232 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:41:35
[2026-08-31 21:41:35,821.821 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:41:36,084.084 INFO    ] Initializing speech engine...
[2026-08-31 21:41:36,103.103 INFO    ] 2026-08-31 21:41:36
[2026-08-31 21:41:36,359.359 INFO    ] 2026-08-31 21:41:36
[2026-08-31 21:41:36,394.394 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:41:36,569.569 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:41:36,581.581 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:41:36,729.729 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:41:36,734.734 INFO    ] time= 31/08/2026 21:41:36
[2026-08-31 21:41:36,740.740 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:41:36,781.781 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:41:36,892.892 INFO    ] No existing commands found in stream
[2026-08-31 21:41:41,918.918 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:41:41,920.920 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-08-31 21:41:45,734.734 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 21:41:45,737.737 INFO    ] Checking for system updates...
[2026-08-31 21:41:45,776.776 INFO    ] 200
[2026-08-31 21:41:45,779.779 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:41:45,831.831 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:41:45,834.834 INFO    ] No update needed
[2026-08-31 21:41:45,837.837 INFO    ] Checking for camera pi updates...
[2026-08-31 21:41:45,870.870 INFO    ] 200
[2026-08-31 21:41:45,872.872 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:41:45,914.914 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:41:46,002.002 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:41:46,004.004 INFO    ] No camera update needed
[2026-08-31 21:41:46,006.006 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:41:46,009.009 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:41:46,014.014 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:41:46,019.019 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:41:48,061.061 INFO    ] ================================================
[2026-08-31 21:41:48,076.076 INFO    ] Launching Daemon at Mon Aug 31 21:41:48 IST 2026
[2026-08-31 21:41:48,086.086 INFO    ] ================================================
[2026-08-31 21:41:48,653.653 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:41:48
[2026-08-31 21:41:49,240.240 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:41:49,495.495 INFO    ] Initializing speech engine...
[2026-08-31 21:41:49,503.503 INFO    ] 2026-08-31 21:41:49
[2026-08-31 21:41:49,798.798 INFO    ] 2026-08-31 21:41:49
[2026-08-31 21:41:49,824.824 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:41:50,047.047 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:41:50,065.065 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:41:50,215.215 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:41:50,223.223 INFO    ] time= 31/08/2026 21:41:50
[2026-08-31 21:41:50,231.231 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:41:50,279.279 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:41:50,406.406 INFO    ] No existing commands found in stream
[2026-08-31 21:41:55,431.431 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:41:55,434.434 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-08-31 21:41:56,064.064 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 21:41:56,067.067 INFO    ] Checking for system updates...
[2026-08-31 21:41:56,103.103 INFO    ] 200
[2026-08-31 21:41:56,105.105 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:41:56,157.157 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:41:56,160.160 INFO    ] No update needed
[2026-08-31 21:41:56,162.162 INFO    ] Checking for camera pi updates...
[2026-08-31 21:41:56,197.197 INFO    ] 200
[2026-08-31 21:41:56,199.199 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:41:56,239.239 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:41:56,325.325 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:41:56,327.327 INFO    ] No camera update needed
[2026-08-31 21:41:56,330.330 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:41:56,332.332 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:41:56,337.337 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:41:56,342.342 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:41:58,382.382 INFO    ] ================================================
[2026-08-31 21:41:58,397.397 INFO    ] Launching Daemon at Mon Aug 31 21:41:58 IST 2026
[2026-08-31 21:41:58,408.408 INFO    ] ================================================
[2026-08-31 21:41:58,989.989 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:41:58
[2026-08-31 21:41:59,590.590 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:41:59,868.868 INFO    ] Initializing speech engine...
[2026-08-31 21:41:59,874.874 INFO    ] 2026-08-31 21:41:59
[2026-08-31 21:42:00,137.137 INFO    ] 2026-08-31 21:42:00
[2026-08-31 21:42:00,191.191 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:42:00,417.417 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:42:00,422.422 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:42:00,626.626 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:42:00,678.678 INFO    ] time= 31/08/2026 21:42:00
[2026-08-31 21:42:00,684.684 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:42:00,702.702 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:42:00,813.813 INFO    ] No existing commands found in stream
[2026-08-31 21:42:05,838.838 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:42:05,841.841 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-08-31 21:42:09,942.942 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 21:42:09,945.945 INFO    ] Checking for system updates...
[2026-08-31 21:42:09,981.981 INFO    ] 200
[2026-08-31 21:42:09,983.983 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:42:10,037.037 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:42:10,040.040 INFO    ] No update needed
[2026-08-31 21:42:10,042.042 INFO    ] Checking for camera pi updates...
[2026-08-31 21:42:10,075.075 INFO    ] 200
[2026-08-31 21:42:10,078.078 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:42:10,119.119 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:42:10,202.202 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:42:10,204.204 INFO    ] No camera update needed
[2026-08-31 21:42:10,206.206 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:42:10,209.209 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:42:10,214.214 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:42:10,219.219 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:42:12,264.264 INFO    ] ================================================
[2026-08-31 21:42:12,279.279 INFO    ] Launching Daemon at Mon Aug 31 21:42:12 IST 2026
[2026-08-31 21:42:12,289.289 INFO    ] ================================================
[2026-08-31 21:42:12,956.956 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:42:12
[2026-08-31 21:42:13,597.597 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:42:13,907.907 INFO    ] Initializing speech engine...
[2026-08-31 21:42:13,918.918 INFO    ] 2026-08-31 21:42:13
[2026-08-31 21:42:14,229.229 INFO    ] 2026-08-31 21:42:14
[2026-08-31 21:42:14,315.315 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:42:14,491.491 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:42:14,500.500 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:42:14,689.689 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:42:14,735.735 INFO    ] time= 31/08/2026 21:42:14
[2026-08-31 21:42:14,754.754 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:42:14,764.764 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:42:14,903.903 INFO    ] No existing commands found in stream
[2026-08-31 21:42:19,929.929 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:42:19,933.933 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-08-31 21:42:23,330.330 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 21:42:23,332.332 INFO    ] Checking for system updates...
[2026-08-31 21:42:23,372.372 INFO    ] 200
[2026-08-31 21:42:23,375.375 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:42:23,428.428 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:42:23,430.430 INFO    ] No update needed
[2026-08-31 21:42:23,432.432 INFO    ] Checking for camera pi updates...
[2026-08-31 21:42:23,467.467 INFO    ] 200
[2026-08-31 21:42:23,470.470 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:42:23,510.510 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:42:23,589.589 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:42:23,591.591 INFO    ] No camera update needed
[2026-08-31 21:42:23,594.594 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:42:23,596.596 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:42:23,602.602 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:42:23,607.607 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:42:25,648.648 INFO    ] ================================================
[2026-08-31 21:42:25,664.664 INFO    ] Launching Daemon at Mon Aug 31 21:42:25 IST 2026
[2026-08-31 21:42:25,675.675 INFO    ] ================================================
[2026-08-31 21:42:26,254.254 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:42:26
[2026-08-31 21:42:26,850.850 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:42:27,101.101 INFO    ] Initializing speech engine...
[2026-08-31 21:42:27,124.124 INFO    ] 2026-08-31 21:42:27
[2026-08-31 21:42:27,379.379 INFO    ] 2026-08-31 21:42:27
[2026-08-31 21:42:27,414.414 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:42:27,611.611 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:42:27,671.671 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:42:27,815.815 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:42:27,852.852 INFO    ] time= 31/08/2026 21:42:27
[2026-08-31 21:42:27,907.907 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:42:27,952.952 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:42:28,024.024 INFO    ] No existing commands found in stream
[2026-08-31 21:42:33,061.061 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:42:33,064.064 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-08-31 21:42:36,736.736 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 21:42:36,739.739 INFO    ] Checking for system updates...
[2026-08-31 21:42:36,775.775 INFO    ] 200
[2026-08-31 21:42:36,778.778 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:42:36,832.832 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:42:36,835.835 INFO    ] No update needed
[2026-08-31 21:42:36,837.837 INFO    ] Checking for camera pi updates...
[2026-08-31 21:42:36,870.870 INFO    ] 200
[2026-08-31 21:42:36,873.873 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:42:36,919.919 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:42:37,004.004 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:42:37,007.007 INFO    ] No camera update needed
[2026-08-31 21:42:37,009.009 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:42:37,012.012 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:42:37,020.020 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:42:37,026.026 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:42:39,066.066 INFO    ] ================================================
[2026-08-31 21:42:39,081.081 INFO    ] Launching Daemon at Mon Aug 31 21:42:39 IST 2026
[2026-08-31 21:42:39,091.091 INFO    ] ================================================
[2026-08-31 21:42:39,655.655 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:42:39
[2026-08-31 21:42:40,236.236 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:42:40,503.503 INFO    ] Initializing speech engine...
[2026-08-31 21:42:40,512.512 INFO    ] 2026-08-31 21:42:40
[2026-08-31 21:42:40,758.758 INFO    ] 2026-08-31 21:42:40
[2026-08-31 21:42:40,792.792 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:42:41,009.009 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:42:41,018.018 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:42:41,226.226 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:42:41,242.242 INFO    ] time= 31/08/2026 21:42:41
[2026-08-31 21:42:41,285.285 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:42:41,293.293 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:42:41,359.359 INFO    ] No existing commands found in stream
[2026-08-31 21:42:46,368.368 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:42:46,371.371 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-08-31 21:42:50,504.504 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 21:42:50,506.506 INFO    ] Checking for system updates...
[2026-08-31 21:42:50,542.542 INFO    ] 200
[2026-08-31 21:42:50,545.545 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:42:50,597.597 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:42:50,599.599 INFO    ] No update needed
[2026-08-31 21:42:50,602.602 INFO    ] Checking for camera pi updates...
[2026-08-31 21:42:50,639.639 INFO    ] 200
[2026-08-31 21:42:50,642.642 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:42:50,682.682 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:42:50,763.763 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:42:50,765.765 INFO    ] No camera update needed
[2026-08-31 21:42:50,768.768 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:42:50,770.770 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:42:50,775.775 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:42:50,781.781 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:42:52,821.821 INFO    ] ================================================
[2026-08-31 21:42:52,836.836 INFO    ] Launching Daemon at Mon Aug 31 21:42:52 IST 2026
[2026-08-31 21:42:52,846.846 INFO    ] ================================================
[2026-08-31 21:42:53,419.419 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:42:53
[2026-08-31 21:42:54,004.004 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:42:54,273.273 INFO    ] Initializing speech engine...
[2026-08-31 21:42:54,282.282 INFO    ] 2026-08-31 21:42:54
[2026-08-31 21:42:54,529.529 INFO    ] 2026-08-31 21:42:54
[2026-08-31 21:42:54,564.564 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:42:54,821.821 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:42:54,825.825 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:42:54,964.964 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:42:55,039.039 INFO    ] time= 31/08/2026 21:42:54
[2026-08-31 21:42:55,087.087 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:42:55,093.093 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:42:55,228.228 INFO    ] No existing commands found in stream
[2026-08-31 21:43:00,249.249 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:43:00,252.252 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-08-31 21:43:03,405.405 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 21:43:03,408.408 INFO    ] Checking for system updates...
[2026-08-31 21:43:03,443.443 INFO    ] 200
[2026-08-31 21:43:03,446.446 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:43:03,503.503 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:43:03,505.505 INFO    ] No update needed
[2026-08-31 21:43:03,508.508 INFO    ] Checking for camera pi updates...
[2026-08-31 21:43:03,541.541 INFO    ] 200
[2026-08-31 21:43:03,544.544 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:43:03,589.589 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:43:03,669.669 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:43:03,671.671 INFO    ] No camera update needed
[2026-08-31 21:43:03,673.673 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:43:03,676.676 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:43:03,681.681 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:43:03,686.686 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:43:05,727.727 INFO    ] ================================================
[2026-08-31 21:43:05,742.742 INFO    ] Launching Daemon at Mon Aug 31 21:43:05 IST 2026
[2026-08-31 21:43:05,752.752 INFO    ] ================================================
[2026-08-31 21:43:06,395.395 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:43:06
[2026-08-31 21:43:07,047.047 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:43:07,338.338 INFO    ] Initializing speech engine...
[2026-08-31 21:43:07,349.349 INFO    ] 2026-08-31 21:43:07
[2026-08-31 21:43:07,621.621 INFO    ] 2026-08-31 21:43:07
[2026-08-31 21:43:07,681.681 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:43:07,910.910 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:43:07,922.922 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:43:08,056.056 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:43:08,104.104 INFO    ] time= 31/08/2026 21:43:08
[2026-08-31 21:43:08,169.169 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:43:08,198.198 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:43:08,332.332 INFO    ] No existing commands found in stream
[2026-08-31 21:43:13,355.355 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:43:13,359.359 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-08-31 21:43:14,862.862 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 21:43:14,865.865 INFO    ] Checking for system updates...
[2026-08-31 21:43:14,902.902 INFO    ] 200
[2026-08-31 21:43:14,904.904 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:43:14,957.957 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:43:14,959.959 INFO    ] No update needed
[2026-08-31 21:43:14,962.962 INFO    ] Checking for camera pi updates...
[2026-08-31 21:43:15,000.000 INFO    ] 200
[2026-08-31 21:43:15,002.002 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:43:15,047.047 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:43:15,227.227 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:43:15,230.230 INFO    ] No camera update needed
[2026-08-31 21:43:15,232.232 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:43:15,234.234 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:43:15,240.240 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:43:15,245.245 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:43:17,286.286 INFO    ] ================================================
[2026-08-31 21:43:17,300.300 INFO    ] Launching Daemon at Mon Aug 31 21:43:17 IST 2026
[2026-08-31 21:43:17,311.311 INFO    ] ================================================
[2026-08-31 21:43:17,935.935 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:43:17
[2026-08-31 21:43:18,575.575 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:43:18,866.866 INFO    ] Initializing speech engine...
[2026-08-31 21:43:18,879.879 INFO    ] 2026-08-31 21:43:18
[2026-08-31 21:43:19,154.154 INFO    ] 2026-08-31 21:43:19
[2026-08-31 21:43:19,198.198 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:43:19,423.423 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:43:19,429.429 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:43:19,665.665 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:43:19,688.688 INFO    ] time= 31/08/2026 21:43:19
[2026-08-31 21:43:19,704.704 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:43:19,713.713 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:43:19,843.843 INFO    ] No existing commands found in stream
[2026-08-31 21:43:24,873.873 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:43:24,876.876 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-08-31 21:43:27,663.663 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 21:43:27,665.665 INFO    ] Checking for system updates...
[2026-08-31 21:43:27,701.701 INFO    ] 200
[2026-08-31 21:43:27,704.704 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:43:27,761.761 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:43:27,764.764 INFO    ] No update needed
[2026-08-31 21:43:27,766.766 INFO    ] Checking for camera pi updates...
[2026-08-31 21:43:27,800.800 INFO    ] 200
[2026-08-31 21:43:27,803.803 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:43:27,844.844 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:43:27,925.925 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:43:27,928.928 INFO    ] No camera update needed
[2026-08-31 21:43:27,930.930 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:43:27,933.933 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:43:27,939.939 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:43:27,944.944 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:43:29,985.985 INFO    ] ================================================
[2026-08-31 21:43:30,000.000 INFO    ] Launching Daemon at Mon Aug 31 21:43:29 IST 2026
[2026-08-31 21:43:30,011.011 INFO    ] ================================================
[2026-08-31 21:43:30,576.576 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:43:30
[2026-08-31 21:43:31,161.161 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:43:31,450.450 INFO    ] Initializing speech engine...
[2026-08-31 21:43:31,467.467 INFO    ] 2026-08-31 21:43:31
[2026-08-31 21:43:31,745.745 INFO    ] 2026-08-31 21:43:31
[2026-08-31 21:43:31,807.807 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:43:32,044.044 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:43:32,053.053 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:43:32,191.191 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:43:32,234.234 INFO    ] time= 31/08/2026 21:43:32
[2026-08-31 21:43:32,294.294 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:43:32,328.328 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:43:32,457.457 INFO    ] No existing commands found in stream
[2026-08-31 21:43:37,491.491 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:43:37,494.494 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-08-31 21:43:41,021.021 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 21:43:41,024.024 INFO    ] Checking for system updates...
[2026-08-31 21:43:41,060.060 INFO    ] 200
[2026-08-31 21:43:41,062.062 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:43:41,114.114 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:43:41,116.116 INFO    ] No update needed
[2026-08-31 21:43:41,119.119 INFO    ] Checking for camera pi updates...
[2026-08-31 21:43:41,155.155 INFO    ] 200
[2026-08-31 21:43:41,157.157 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:43:41,197.197 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:43:41,276.276 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:43:41,279.279 INFO    ] No camera update needed
[2026-08-31 21:43:41,281.281 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:43:41,283.283 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:43:41,288.288 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:43:41,293.293 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:43:43,333.333 INFO    ] ================================================
[2026-08-31 21:43:43,348.348 INFO    ] Launching Daemon at Mon Aug 31 21:43:43 IST 2026
[2026-08-31 21:43:43,359.359 INFO    ] ================================================
[2026-08-31 21:43:43,924.924 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:43:43
[2026-08-31 21:43:44,503.503 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:43:44,749.749 INFO    ] Initializing speech engine...
[2026-08-31 21:43:44,771.771 INFO    ] 2026-08-31 21:43:44
[2026-08-31 21:43:45,022.022 INFO    ] 2026-08-31 21:43:45
[2026-08-31 21:43:45,059.059 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:43:45,315.315 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:43:45,323.323 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:43:45,461.461 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:43:45,511.511 INFO    ] time= 31/08/2026 21:43:45
[2026-08-31 21:43:45,555.555 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:43:45,593.593 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:43:45,739.739 INFO    ] No existing commands found in stream
[2026-08-31 21:43:50,757.757 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:43:50,760.760 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-08-31 21:43:51,739.739 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 21:43:51,742.742 INFO    ] Checking for system updates...
[2026-08-31 21:43:51,777.777 INFO    ] 200
[2026-08-31 21:43:51,779.779 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:43:51,832.832 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:43:51,835.835 INFO    ] No update needed
[2026-08-31 21:43:51,837.837 INFO    ] Checking for camera pi updates...
[2026-08-31 21:43:51,873.873 INFO    ] 200
[2026-08-31 21:43:51,875.875 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:43:51,916.916 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:43:51,995.995 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:43:51,997.997 INFO    ] No camera update needed
[2026-08-31 21:43:52,000.000 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:43:52,002.002 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:43:52,007.007 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:43:52,012.012 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:43:54,052.052 INFO    ] ================================================
[2026-08-31 21:43:54,067.067 INFO    ] Launching Daemon at Mon Aug 31 21:43:54 IST 2026
[2026-08-31 21:43:54,077.077 INFO    ] ================================================
[2026-08-31 21:43:54,656.656 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:43:54
[2026-08-31 21:43:55,253.253 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:43:55,525.525 INFO    ] Initializing speech engine...
[2026-08-31 21:43:55,534.534 INFO    ] 2026-08-31 21:43:55
[2026-08-31 21:43:55,783.783 INFO    ] 2026-08-31 21:43:55
[2026-08-31 21:43:55,849.849 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:43:56,075.075 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:43:56,084.084 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:43:56,222.222 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:43:56,276.276 INFO    ] time= 31/08/2026 21:43:56
[2026-08-31 21:43:56,325.325 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:43:56,357.357 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:43:56,501.501 INFO    ] No existing commands found in stream
[2026-08-31 21:44:01,516.516 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:44:01,522.522 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-08-31 21:44:02,050.050 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 21:44:02,053.053 INFO    ] Checking for system updates...
[2026-08-31 21:44:02,095.095 INFO    ] 200
[2026-08-31 21:44:02,098.098 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:44:02,167.167 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:44:02,170.170 INFO    ] No update needed
[2026-08-31 21:44:02,173.173 INFO    ] Checking for camera pi updates...
[2026-08-31 21:44:02,211.211 INFO    ] 200
[2026-08-31 21:44:02,214.214 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:44:02,263.263 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:44:02,339.339 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:44:02,341.341 INFO    ] No camera update needed
[2026-08-31 21:44:02,344.344 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:44:02,347.347 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:44:02,353.353 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:44:02,359.359 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:44:04,406.406 INFO    ] ================================================
[2026-08-31 21:44:04,421.421 INFO    ] Launching Daemon at Mon Aug 31 21:44:04 IST 2026
[2026-08-31 21:44:04,431.431 INFO    ] ================================================
[2026-08-31 21:44:05,011.011 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:44:05
[2026-08-31 21:44:05,612.612 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:44:05,896.896 INFO    ] Initializing speech engine...
[2026-08-31 21:44:05,906.906 INFO    ] 2026-08-31 21:44:05
[2026-08-31 21:44:06,192.192 INFO    ] 2026-08-31 21:44:06
[2026-08-31 21:44:06,258.258 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:44:06,490.490 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:44:06,495.495 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:44:06,685.685 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:44:06,740.740 INFO    ] time= 31/08/2026 21:44:06
[2026-08-31 21:44:06,759.759 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:44:06,765.765 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:44:06,902.902 INFO    ] No existing commands found in stream
[2026-08-31 21:44:11,924.924 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:44:11,926.926 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-08-31 21:44:15,292.292 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 21:44:15,295.295 INFO    ] Checking for system updates...
[2026-08-31 21:44:15,331.331 INFO    ] 200
[2026-08-31 21:44:15,333.333 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:44:15,386.386 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:44:15,389.389 INFO    ] No update needed
[2026-08-31 21:44:15,391.391 INFO    ] Checking for camera pi updates...
[2026-08-31 21:44:15,425.425 INFO    ] 200
[2026-08-31 21:44:15,427.427 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:44:15,468.468 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:44:15,552.552 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:44:15,554.554 INFO    ] No camera update needed
[2026-08-31 21:44:15,557.557 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:44:15,559.559 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:44:15,564.564 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:44:15,569.569 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:44:17,610.610 INFO    ] ================================================
[2026-08-31 21:44:17,625.625 INFO    ] Launching Daemon at Mon Aug 31 21:44:17 IST 2026
[2026-08-31 21:44:17,636.636 INFO    ] ================================================
[2026-08-31 21:44:18,201.201 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:44:18
[2026-08-31 21:44:18,838.838 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:44:19,130.130 INFO    ] Initializing speech engine...
[2026-08-31 21:44:19,139.139 INFO    ] 2026-08-31 21:44:19
[2026-08-31 21:44:19,414.414 INFO    ] 2026-08-31 21:44:19
[2026-08-31 21:44:19,470.470 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:44:19,705.705 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:44:19,711.711 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:44:19,940.940 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:44:19,979.979 INFO    ] time= 31/08/2026 21:44:19
[2026-08-31 21:44:19,998.998 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:44:20,027.027 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:44:20,133.133 INFO    ] No existing commands found in stream
[2026-08-31 21:44:25,148.148 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:44:25,151.151 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-08-31 21:44:26,106.106 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 21:44:26,109.109 INFO    ] Checking for system updates...
[2026-08-31 21:44:26,146.146 INFO    ] 200
[2026-08-31 21:44:26,149.149 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:44:26,202.202 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:44:26,204.204 INFO    ] No update needed
[2026-08-31 21:44:26,207.207 INFO    ] Checking for camera pi updates...
[2026-08-31 21:44:26,242.242 INFO    ] 200
[2026-08-31 21:44:26,244.244 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:44:26,285.285 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:44:26,370.370 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:44:26,372.372 INFO    ] No camera update needed
[2026-08-31 21:44:26,375.375 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:44:26,377.377 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:44:26,384.384 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:44:26,389.389 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:44:28,430.430 INFO    ] ================================================
[2026-08-31 21:44:28,445.445 INFO    ] Launching Daemon at Mon Aug 31 21:44:28 IST 2026
[2026-08-31 21:44:28,456.456 INFO    ] ================================================
[2026-08-31 21:44:29,023.023 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:44:29
[2026-08-31 21:44:29,618.618 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:44:29,878.878 INFO    ] Initializing speech engine...
[2026-08-31 21:44:29,893.893 INFO    ] 2026-08-31 21:44:29
[2026-08-31 21:44:30,177.177 INFO    ] 2026-08-31 21:44:30
[2026-08-31 21:44:30,214.214 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:44:30,406.406 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:44:30,411.411 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:44:30,579.579 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:44:30,588.588 INFO    ] time= 31/08/2026 21:44:30
[2026-08-31 21:44:30,593.593 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:44:30,599.599 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:44:30,739.739 INFO    ] No existing commands found in stream
[2026-08-31 21:44:35,764.764 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:44:35,767.767 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-08-31 21:44:36,684.684 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 21:44:36,687.687 INFO    ] Checking for system updates...
[2026-08-31 21:44:36,723.723 INFO    ] 200
[2026-08-31 21:44:36,725.725 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:44:36,781.781 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:44:36,783.783 INFO    ] No update needed
[2026-08-31 21:44:36,786.786 INFO    ] Checking for camera pi updates...
[2026-08-31 21:44:36,822.822 INFO    ] 200
[2026-08-31 21:44:36,825.825 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:44:36,869.869 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:44:36,951.951 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:44:36,953.953 INFO    ] No camera update needed
[2026-08-31 21:44:36,956.956 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:44:36,958.958 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:44:36,963.963 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:44:36,969.969 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:44:39,009.009 INFO    ] ================================================
[2026-08-31 21:44:39,024.024 INFO    ] Launching Daemon at Mon Aug 31 21:44:39 IST 2026
[2026-08-31 21:44:39,035.035 INFO    ] ================================================
[2026-08-31 21:44:39,605.605 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:44:39
[2026-08-31 21:44:40,190.190 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:44:40,443.443 INFO    ] Initializing speech engine...
[2026-08-31 21:44:40,452.452 INFO    ] 2026-08-31 21:44:40
[2026-08-31 21:44:40,744.744 INFO    ] 2026-08-31 21:44:40
[2026-08-31 21:44:40,779.779 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:44:41,002.002 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:44:41,061.061 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:44:41,224.224 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:44:41,246.246 INFO    ] time= 31/08/2026 21:44:41
[2026-08-31 21:44:41,305.305 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:44:41,364.364 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:44:41,440.440 INFO    ] No existing commands found in stream
[2026-08-31 21:44:46,465.465 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:44:46,468.468 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-08-31 21:44:49,266.266 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 21:44:49,269.269 INFO    ] Checking for system updates...
[2026-08-31 21:44:49,309.309 INFO    ] 200
[2026-08-31 21:44:49,312.312 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:44:49,370.370 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:44:49,373.373 INFO    ] No update needed
[2026-08-31 21:44:49,375.375 INFO    ] Checking for camera pi updates...
[2026-08-31 21:44:49,410.410 INFO    ] 200
[2026-08-31 21:44:49,413.413 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:44:49,454.454 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:44:49,558.558 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:44:49,560.560 INFO    ] No camera update needed
[2026-08-31 21:44:49,563.563 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:44:49,565.565 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:44:49,572.572 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:44:49,577.577 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:44:51,619.619 INFO    ] ================================================
[2026-08-31 21:44:51,634.634 INFO    ] Launching Daemon at Mon Aug 31 21:44:51 IST 2026
[2026-08-31 21:44:51,645.645 INFO    ] ================================================
[2026-08-31 21:44:52,209.209 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:44:52
[2026-08-31 21:44:52,790.790 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:44:53,059.059 INFO    ] Initializing speech engine...
[2026-08-31 21:44:53,068.068 INFO    ] 2026-08-31 21:44:53
[2026-08-31 21:44:53,316.316 INFO    ] 2026-08-31 21:44:53
[2026-08-31 21:44:53,351.351 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:44:53,613.613 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:44:53,618.618 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:44:53,752.752 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:44:53,793.793 INFO    ] time= 31/08/2026 21:44:53
[2026-08-31 21:44:53,842.842 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:44:53,888.888 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:44:54,013.013 INFO    ] No existing commands found in stream
[2026-08-31 21:44:59,046.046 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:44:59,049.049 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-08-31 21:45:00,740.740 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 21:45:00,743.743 INFO    ] Checking for system updates...
[2026-08-31 21:45:00,778.778 INFO    ] 200
[2026-08-31 21:45:00,781.781 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:45:00,839.839 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:45:00,841.841 INFO    ] No update needed
[2026-08-31 21:45:00,843.843 INFO    ] Checking for camera pi updates...
[2026-08-31 21:45:00,877.877 INFO    ] 200
[2026-08-31 21:45:00,879.879 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:45:00,920.920 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:45:01,008.008 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:45:01,011.011 INFO    ] No camera update needed
[2026-08-31 21:45:01,013.013 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:45:01,015.015 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:45:01,021.021 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:45:01,026.026 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:45:03,067.067 INFO    ] ================================================
[2026-08-31 21:45:03,083.083 INFO    ] Launching Daemon at Mon Aug 31 21:45:03 IST 2026
[2026-08-31 21:45:03,094.094 INFO    ] ================================================
[2026-08-31 21:45:03,692.692 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:45:03
[2026-08-31 21:45:04,273.273 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:45:04,517.517 INFO    ] Initializing speech engine...
[2026-08-31 21:45:04,526.526 INFO    ] 2026-08-31 21:45:04
[2026-08-31 21:45:04,800.800 INFO    ] 2026-08-31 21:45:04
[2026-08-31 21:45:04,834.834 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:45:05,009.009 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:45:05,021.021 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:45:05,168.168 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:45:05,173.173 INFO    ] time= 31/08/2026 21:45:05
[2026-08-31 21:45:05,179.179 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:45:05,236.236 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:45:05,374.374 INFO    ] No existing commands found in stream
[2026-08-31 21:45:10,384.384 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:45:10,387.387 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-08-31 21:45:12,533.533 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 21:45:12,535.535 INFO    ] Checking for system updates...
[2026-08-31 21:45:12,573.573 INFO    ] 200
[2026-08-31 21:45:12,576.576 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:45:12,628.628 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:45:12,630.630 INFO    ] No update needed
[2026-08-31 21:45:12,632.632 INFO    ] Checking for camera pi updates...
[2026-08-31 21:45:12,668.668 INFO    ] 200
[2026-08-31 21:45:12,671.671 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:45:12,711.711 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:45:12,796.796 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:45:12,798.798 INFO    ] No camera update needed
[2026-08-31 21:45:12,801.801 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:45:12,803.803 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:45:12,809.809 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:45:12,814.814 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:45:14,860.860 INFO    ] ================================================
[2026-08-31 21:45:14,876.876 INFO    ] Launching Daemon at Mon Aug 31 21:45:14 IST 2026
[2026-08-31 21:45:14,886.886 INFO    ] ================================================
[2026-08-31 21:45:15,515.515 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:45:15
[2026-08-31 21:45:16,165.165 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:45:16,463.463 INFO    ] Initializing speech engine...
[2026-08-31 21:45:16,471.471 INFO    ] 2026-08-31 21:45:16
[2026-08-31 21:45:16,745.745 INFO    ] 2026-08-31 21:45:16
[2026-08-31 21:45:16,797.797 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:45:17,025.025 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:45:17,035.035 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:45:17,251.251 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:45:17,299.299 INFO    ] time= 31/08/2026 21:45:17
[2026-08-31 21:45:17,305.305 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:45:17,324.324 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:45:17,451.451 INFO    ] No existing commands found in stream
[2026-08-31 21:45:22,469.469 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:45:22,472.472 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-08-31 21:45:24,412.412 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 21:45:24,415.415 INFO    ] Checking for system updates...
[2026-08-31 21:45:24,450.450 INFO    ] 200
[2026-08-31 21:45:24,452.452 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:45:24,507.507 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:45:24,510.510 INFO    ] No update needed
[2026-08-31 21:45:24,512.512 INFO    ] Checking for camera pi updates...
[2026-08-31 21:45:24,548.548 INFO    ] 200
[2026-08-31 21:45:24,550.550 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:45:24,591.591 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:45:24,769.769 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:45:24,772.772 INFO    ] No camera update needed
[2026-08-31 21:45:24,774.774 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:45:24,776.776 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:45:24,781.781 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:45:24,786.786 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:45:26,826.826 INFO    ] ================================================
[2026-08-31 21:45:26,841.841 INFO    ] Launching Daemon at Mon Aug 31 21:45:26 IST 2026
[2026-08-31 21:45:26,852.852 INFO    ] ================================================
[2026-08-31 21:45:27,433.433 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:45:27
[2026-08-31 21:45:28,030.030 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:45:28,289.289 INFO    ] Initializing speech engine...
[2026-08-31 21:45:28,298.298 INFO    ] 2026-08-31 21:45:28
[2026-08-31 21:45:28,593.593 INFO    ] 2026-08-31 21:45:28
[2026-08-31 21:45:28,628.628 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:45:28,843.843 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:45:28,882.882 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:45:29,106.106 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:45:29,169.169 INFO    ] time= 31/08/2026 21:45:29
[2026-08-31 21:45:29,175.175 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:45:29,194.194 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:45:29,290.290 INFO    ] No existing commands found in stream
[2026-08-31 21:45:34,330.330 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:45:34,332.332 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-08-31 21:45:37,806.806 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 21:45:37,808.808 INFO    ] Checking for system updates...
[2026-08-31 21:45:37,845.845 INFO    ] 200
[2026-08-31 21:45:37,848.848 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:45:37,907.907 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:45:37,910.910 INFO    ] No update needed
[2026-08-31 21:45:37,913.913 INFO    ] Checking for camera pi updates...
[2026-08-31 21:45:37,948.948 INFO    ] 200
[2026-08-31 21:45:37,951.951 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:45:37,991.991 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:45:38,062.062 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:45:38,065.065 INFO    ] No camera update needed
[2026-08-31 21:45:38,067.067 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:45:38,069.069 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:45:38,075.075 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:45:38,080.080 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:45:40,122.122 INFO    ] ================================================
[2026-08-31 21:45:40,137.137 INFO    ] Launching Daemon at Mon Aug 31 21:45:40 IST 2026
[2026-08-31 21:45:40,148.148 INFO    ] ================================================
[2026-08-31 21:45:40,714.714 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:45:40
[2026-08-31 21:45:41,298.298 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:45:41,547.547 INFO    ] Initializing speech engine...
[2026-08-31 21:45:41,562.562 INFO    ] 2026-08-31 21:45:41
[2026-08-31 21:45:41,829.829 INFO    ] 2026-08-31 21:45:41
[2026-08-31 21:45:41,864.864 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:45:42,123.123 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:45:42,133.133 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:45:42,270.270 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:45:42,315.315 INFO    ] time= 31/08/2026 21:45:42
[2026-08-31 21:45:42,370.370 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:45:42,406.406 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:45:42,520.520 INFO    ] No existing commands found in stream
[2026-08-31 21:45:47,543.543 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:45:47,546.546 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-08-31 21:45:51,573.573 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 21:45:51,576.576 INFO    ] Checking for system updates...
[2026-08-31 21:45:51,615.615 INFO    ] 200
[2026-08-31 21:45:51,617.617 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:45:51,675.675 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:45:51,678.678 INFO    ] No update needed
[2026-08-31 21:45:51,680.680 INFO    ] Checking for camera pi updates...
[2026-08-31 21:45:51,713.713 INFO    ] 200
[2026-08-31 21:45:51,716.716 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:45:51,761.761 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:45:51,840.840 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:45:51,843.843 INFO    ] No camera update needed
[2026-08-31 21:45:51,845.845 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:45:51,848.848 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:45:51,853.853 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:45:51,858.858 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:45:53,899.899 INFO    ] ================================================
[2026-08-31 21:45:53,914.914 INFO    ] Launching Daemon at Mon Aug 31 21:45:53 IST 2026
[2026-08-31 21:45:53,925.925 INFO    ] ================================================
[2026-08-31 21:45:54,510.510 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:45:54
[2026-08-31 21:45:55,132.132 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:45:55,430.430 INFO    ] Initializing speech engine...
[2026-08-31 21:45:55,442.442 INFO    ] 2026-08-31 21:45:55
[2026-08-31 21:45:55,725.725 INFO    ] 2026-08-31 21:45:55
[2026-08-31 21:45:55,764.764 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:45:56,013.013 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:45:56,020.020 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:45:56,261.261 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:45:56,269.269 INFO    ] time= 31/08/2026 21:45:56
[2026-08-31 21:45:56,290.290 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:45:56,317.317 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:45:56,438.438 INFO    ] No existing commands found in stream
[2026-08-31 21:46:01,468.468 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:46:01,471.471 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-08-31 21:46:04,264.264 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 21:46:04,267.267 INFO    ] Checking for system updates...
[2026-08-31 21:46:04,304.304 INFO    ] 200
[2026-08-31 21:46:04,307.307 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:46:04,368.368 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:46:04,370.370 INFO    ] No update needed
[2026-08-31 21:46:04,373.373 INFO    ] Checking for camera pi updates...
[2026-08-31 21:46:04,407.407 INFO    ] 200
[2026-08-31 21:46:04,410.410 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:46:04,454.454 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:46:04,546.546 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:46:04,550.550 INFO    ] No camera update needed
[2026-08-31 21:46:04,552.552 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:46:04,555.555 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:46:04,561.561 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:46:04,568.568 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:46:06,616.616 INFO    ] ================================================
[2026-08-31 21:46:06,631.631 INFO    ] Launching Daemon at Mon Aug 31 21:46:06 IST 2026
[2026-08-31 21:46:06,642.642 INFO    ] ================================================
[2026-08-31 21:46:07,269.269 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:46:07
[2026-08-31 21:46:07,870.870 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:46:08,144.144 INFO    ] Initializing speech engine...
[2026-08-31 21:46:08,163.163 INFO    ] 2026-08-31 21:46:08
[2026-08-31 21:46:08,430.430 INFO    ] 2026-08-31 21:46:08
[2026-08-31 21:46:08,469.469 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:46:08,688.688 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:46:08,752.752 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:46:08,906.906 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:46:08,933.933 INFO    ] time= 31/08/2026 21:46:08
[2026-08-31 21:46:08,962.962 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:46:08,965.965 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:46:09,051.051 INFO    ] No existing commands found in stream
[2026-08-31 21:46:14,064.064 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:46:14,066.066 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-08-31 21:46:14,611.611 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 21:46:14,613.613 INFO    ] Checking for system updates...
[2026-08-31 21:46:14,650.650 INFO    ] 200
[2026-08-31 21:46:14,653.653 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:46:14,707.707 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:46:14,710.710 INFO    ] No update needed
[2026-08-31 21:46:14,712.712 INFO    ] Checking for camera pi updates...
[2026-08-31 21:46:14,749.749 INFO    ] 200
[2026-08-31 21:46:14,752.752 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:46:14,795.795 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:46:14,877.877 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:46:14,880.880 INFO    ] No camera update needed
[2026-08-31 21:46:14,882.882 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:46:14,884.884 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:46:14,890.890 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:46:14,895.895 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:46:16,939.939 INFO    ] ================================================
[2026-08-31 21:46:16,955.955 INFO    ] Launching Daemon at Mon Aug 31 21:46:16 IST 2026
[2026-08-31 21:46:16,966.966 INFO    ] ================================================
[2026-08-31 21:46:17,582.582 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:46:17
[2026-08-31 21:46:18,187.187 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:46:18,448.448 INFO    ] Initializing speech engine...
[2026-08-31 21:46:18,455.455 INFO    ] 2026-08-31 21:46:18
[2026-08-31 21:46:18,754.754 INFO    ] 2026-08-31 21:46:18
[2026-08-31 21:46:18,790.790 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:46:19,025.025 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:46:19,033.033 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:46:19,258.258 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:46:19,271.271 INFO    ] time= 31/08/2026 21:46:19
[2026-08-31 21:46:19,310.310 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:46:19,375.375 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:46:19,479.479 INFO    ] No existing commands found in stream
[2026-08-31 21:46:24,490.490 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:46:24,493.493 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-08-31 21:46:27,974.974 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 21:46:27,977.977 INFO    ] Checking for system updates...
[2026-08-31 21:46:28,017.017 INFO    ] 200
[2026-08-31 21:46:28,020.020 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:46:28,076.076 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:46:28,080.080 INFO    ] No update needed
[2026-08-31 21:46:28,083.083 INFO    ] Checking for camera pi updates...
[2026-08-31 21:46:28,123.123 INFO    ] 200
[2026-08-31 21:46:28,126.126 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:46:28,173.173 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:46:28,267.267 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:46:28,270.270 INFO    ] No camera update needed
[2026-08-31 21:46:28,272.272 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:46:28,275.275 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:46:28,280.280 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:46:28,285.285 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:46:30,326.326 INFO    ] ================================================
[2026-08-31 21:46:30,341.341 INFO    ] Launching Daemon at Mon Aug 31 21:46:30 IST 2026
[2026-08-31 21:46:30,352.352 INFO    ] ================================================
[2026-08-31 21:46:30,918.918 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:46:30
[2026-08-31 21:46:31,501.501 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:46:31,792.792 INFO    ] Initializing speech engine...
[2026-08-31 21:46:31,809.809 INFO    ] 2026-08-31 21:46:31
[2026-08-31 21:46:32,075.075 INFO    ] 2026-08-31 21:46:32
[2026-08-31 21:46:32,112.112 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:46:32,306.306 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:46:32,323.323 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:46:32,467.467 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:46:32,476.476 INFO    ] time= 31/08/2026 21:46:32
[2026-08-31 21:46:32,485.485 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:46:32,531.531 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:46:32,643.643 INFO    ] No existing commands found in stream
[2026-08-31 21:46:37,673.673 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:46:37,676.676 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-08-31 21:46:38,985.985 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 21:46:38,988.988 INFO    ] Checking for system updates...
[2026-08-31 21:46:39,028.028 INFO    ] 200
[2026-08-31 21:46:39,030.030 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:46:39,101.101 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:46:39,103.103 INFO    ] No update needed
[2026-08-31 21:46:39,106.106 INFO    ] Checking for camera pi updates...
[2026-08-31 21:46:39,139.139 INFO    ] 200
[2026-08-31 21:46:39,141.141 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:46:39,181.181 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:46:39,265.265 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:46:39,268.268 INFO    ] No camera update needed
[2026-08-31 21:46:39,270.270 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:46:39,272.272 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:46:39,278.278 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:46:39,283.283 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:46:41,325.325 INFO    ] ================================================
[2026-08-31 21:46:41,340.340 INFO    ] Launching Daemon at Mon Aug 31 21:46:41 IST 2026
[2026-08-31 21:46:41,351.351 INFO    ] ================================================
[2026-08-31 21:46:41,996.996 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:46:41
[2026-08-31 21:46:42,675.675 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:46:42,980.980 INFO    ] Initializing speech engine...
[2026-08-31 21:46:42,989.989 INFO    ] 2026-08-31 21:46:42
[2026-08-31 21:46:43,281.281 INFO    ] 2026-08-31 21:46:43
[2026-08-31 21:46:43,344.344 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:46:43,559.559 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:46:43,582.582 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:46:43,779.779 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:46:43,829.829 INFO    ] time= 31/08/2026 21:46:43
[2026-08-31 21:46:43,847.847 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:46:43,857.857 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:46:43,978.978 INFO    ] No existing commands found in stream
[2026-08-31 21:46:49,000.000 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:46:49,004.004 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-08-31 21:46:51,886.886 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 21:46:51,889.889 INFO    ] Checking for system updates...
[2026-08-31 21:46:51,926.926 INFO    ] 200
[2026-08-31 21:46:51,929.929 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:46:51,981.981 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:46:51,984.984 INFO    ] No update needed
[2026-08-31 21:46:51,986.986 INFO    ] Checking for camera pi updates...
[2026-08-31 21:46:52,020.020 INFO    ] 200
[2026-08-31 21:46:52,022.022 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:46:52,068.068 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:46:52,147.147 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:46:52,150.150 INFO    ] No camera update needed
[2026-08-31 21:46:52,152.152 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:46:52,154.154 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:46:52,160.160 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:46:52,165.165 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:46:54,207.207 INFO    ] ================================================
[2026-08-31 21:46:54,223.223 INFO    ] Launching Daemon at Mon Aug 31 21:46:54 IST 2026
[2026-08-31 21:46:54,234.234 INFO    ] ================================================
[2026-08-31 21:46:54,802.802 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:46:54
[2026-08-31 21:46:55,384.384 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:46:55,643.643 INFO    ] Initializing speech engine...
[2026-08-31 21:46:55,661.661 INFO    ] 2026-08-31 21:46:55
[2026-08-31 21:46:55,913.913 INFO    ] 2026-08-31 21:46:55
[2026-08-31 21:46:55,979.979 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:46:56,206.206 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:46:56,216.216 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:46:56,351.351 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:46:56,388.388 INFO    ] time= 31/08/2026 21:46:56
[2026-08-31 21:46:56,452.452 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:46:56,488.488 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:46:56,607.607 INFO    ] No existing commands found in stream
[2026-08-31 21:47:01,630.630 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:47:01,635.635 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-08-31 21:47:05,363.363 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 21:47:05,366.366 INFO    ] Checking for system updates...
[2026-08-31 21:47:05,401.401 INFO    ] 200
[2026-08-31 21:47:05,404.404 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:47:05,461.461 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:47:05,464.464 INFO    ] No update needed
[2026-08-31 21:47:05,466.466 INFO    ] Checking for camera pi updates...
[2026-08-31 21:47:05,502.502 INFO    ] 200
[2026-08-31 21:47:05,505.505 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:47:05,547.547 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:47:05,628.628 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:47:05,631.631 INFO    ] No camera update needed
[2026-08-31 21:47:05,633.633 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:47:05,635.635 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:47:05,641.641 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:47:05,646.646 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:47:07,686.686 INFO    ] ================================================
[2026-08-31 21:47:07,702.702 INFO    ] Launching Daemon at Mon Aug 31 21:47:07 IST 2026
[2026-08-31 21:47:07,713.713 INFO    ] ================================================
[2026-08-31 21:47:08,346.346 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:47:08
[2026-08-31 21:47:08,999.999 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:47:09,295.295 INFO    ] Initializing speech engine...
[2026-08-31 21:47:09,300.300 INFO    ] 2026-08-31 21:47:09
[2026-08-31 21:47:09,559.559 INFO    ] 2026-08-31 21:47:09
[2026-08-31 21:47:09,618.618 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:47:09,845.845 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:47:09,854.854 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:47:10,064.064 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:47:10,118.118 INFO    ] time= 31/08/2026 21:47:10
[2026-08-31 21:47:10,124.124 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:47:10,142.142 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:47:10,260.260 INFO    ] No existing commands found in stream
[2026-08-31 21:47:15,280.280 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:47:15,283.283 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-08-31 21:47:17,564.564 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 21:47:17,566.566 INFO    ] Checking for system updates...
[2026-08-31 21:47:17,603.603 INFO    ] 200
[2026-08-31 21:47:17,605.605 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:47:17,662.662 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:47:17,665.665 INFO    ] No update needed
[2026-08-31 21:47:17,668.668 INFO    ] Checking for camera pi updates...
[2026-08-31 21:47:17,704.704 INFO    ] 200
[2026-08-31 21:47:17,706.706 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:47:17,751.751 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:47:17,838.838 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:47:17,840.840 INFO    ] No camera update needed
[2026-08-31 21:47:17,843.843 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:47:17,845.845 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:47:17,851.851 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:47:17,857.857 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:47:19,897.897 INFO    ] ================================================
[2026-08-31 21:47:19,913.913 INFO    ] Launching Daemon at Mon Aug 31 21:47:19 IST 2026
[2026-08-31 21:47:19,924.924 INFO    ] ================================================
[2026-08-31 21:47:20,490.490 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:47:20
[2026-08-31 21:47:21,072.072 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:47:21,339.339 INFO    ] Initializing speech engine...
[2026-08-31 21:47:21,358.358 INFO    ] 2026-08-31 21:47:21
[2026-08-31 21:47:21,621.621 INFO    ] 2026-08-31 21:47:21
[2026-08-31 21:47:21,655.655 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:47:21,845.845 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:47:21,857.857 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:47:22,009.009 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:47:22,020.020 INFO    ] time= 31/08/2026 21:47:22
[2026-08-31 21:47:22,027.027 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:47:22,079.079 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:47:22,204.204 INFO    ] No existing commands found in stream
[2026-08-31 21:47:27,229.229 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:47:27,232.232 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-08-31 21:47:30,903.903 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 21:47:30,905.905 INFO    ] Checking for system updates...
[2026-08-31 21:47:30,941.941 INFO    ] 200
[2026-08-31 21:47:30,943.943 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:47:30,995.995 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:47:30,998.998 INFO    ] No update needed
[2026-08-31 21:47:31,000.000 INFO    ] Checking for camera pi updates...
[2026-08-31 21:47:31,033.033 INFO    ] 200
[2026-08-31 21:47:31,036.036 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:47:31,077.077 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:47:31,260.260 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:47:31,263.263 INFO    ] No camera update needed
[2026-08-31 21:47:31,265.265 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:47:31,267.267 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:47:31,273.273 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:47:31,278.278 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:47:33,320.320 INFO    ] ================================================
[2026-08-31 21:47:33,336.336 INFO    ] Launching Daemon at Mon Aug 31 21:47:33 IST 2026
[2026-08-31 21:47:33,347.347 INFO    ] ================================================
[2026-08-31 21:47:33,925.925 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:47:33
[2026-08-31 21:47:34,521.521 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:47:34,792.792 INFO    ] Initializing speech engine...
[2026-08-31 21:47:34,802.802 INFO    ] 2026-08-31 21:47:34
[2026-08-31 21:47:35,062.062 INFO    ] 2026-08-31 21:47:35
[2026-08-31 21:47:35,093.093 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:47:35,342.342 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:47:35,346.346 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:47:35,542.542 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:47:35,597.597 INFO    ] time= 31/08/2026 21:47:35
[2026-08-31 21:47:35,609.609 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:47:35,627.627 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:47:35,747.747 INFO    ] No existing commands found in stream
[2026-08-31 21:47:40,768.768 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:47:40,770.770 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-08-31 21:47:42,779.779 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 21:47:42,781.781 INFO    ] Checking for system updates...
[2026-08-31 21:47:42,818.818 INFO    ] 200
[2026-08-31 21:47:42,820.820 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:47:42,873.873 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:47:42,875.875 INFO    ] No update needed
[2026-08-31 21:47:42,878.878 INFO    ] Checking for camera pi updates...
[2026-08-31 21:47:42,914.914 INFO    ] 200
[2026-08-31 21:47:42,916.916 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:47:42,956.956 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:47:43,044.044 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:47:43,046.046 INFO    ] No camera update needed
[2026-08-31 21:47:43,049.049 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:47:43,051.051 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:47:43,056.056 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:47:43,062.062 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:47:45,102.102 INFO    ] ================================================
[2026-08-31 21:47:45,118.118 INFO    ] Launching Daemon at Mon Aug 31 21:47:45 IST 2026
[2026-08-31 21:47:45,129.129 INFO    ] ================================================
[2026-08-31 21:47:45,710.710 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:47:45
[2026-08-31 21:47:46,304.304 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:47:46,578.578 INFO    ] Initializing speech engine...
[2026-08-31 21:47:46,587.587 INFO    ] 2026-08-31 21:47:46
[2026-08-31 21:47:46,847.847 INFO    ] 2026-08-31 21:47:46
[2026-08-31 21:47:46,878.878 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:47:47,120.120 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:47:47,130.130 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:47:47,263.263 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:47:47,302.302 INFO    ] time= 31/08/2026 21:47:47
[2026-08-31 21:47:47,351.351 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:47:47,392.392 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:47:47,525.525 INFO    ] No existing commands found in stream
[2026-08-31 21:47:52,548.548 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:47:52,550.550 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-08-31 21:47:55,044.044 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 21:47:55,046.046 INFO    ] Checking for system updates...
[2026-08-31 21:47:55,082.082 INFO    ] 200
[2026-08-31 21:47:55,084.084 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:47:55,137.137 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:47:55,139.139 INFO    ] No update needed
[2026-08-31 21:47:55,142.142 INFO    ] Checking for camera pi updates...
[2026-08-31 21:47:55,175.175 INFO    ] 200
[2026-08-31 21:47:55,177.177 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:47:55,221.221 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:47:55,339.339 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:47:55,341.341 INFO    ] No camera update needed
[2026-08-31 21:47:55,343.343 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:47:55,346.346 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:47:55,351.351 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:47:55,356.356 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:47:57,397.397 INFO    ] ================================================
[2026-08-31 21:47:57,413.413 INFO    ] Launching Daemon at Mon Aug 31 21:47:57 IST 2026
[2026-08-31 21:47:57,425.425 INFO    ] ================================================
[2026-08-31 21:47:57,997.997 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:47:57
[2026-08-31 21:47:58,590.590 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:47:58,865.865 INFO    ] Initializing speech engine...
[2026-08-31 21:47:58,871.871 INFO    ] 2026-08-31 21:47:58
[2026-08-31 21:47:59,123.123 INFO    ] 2026-08-31 21:47:59
[2026-08-31 21:47:59,183.183 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:47:59,434.434 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:47:59,437.437 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:47:59,654.654 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:47:59,673.673 INFO    ] time= 31/08/2026 21:47:59
[2026-08-31 21:47:59,691.691 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:47:59,708.708 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:47:59,839.839 INFO    ] No existing commands found in stream
[2026-08-31 21:48:04,870.870 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:48:04,872.872 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-08-31 21:48:07,424.424 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 21:48:07,427.427 INFO    ] Checking for system updates...
[2026-08-31 21:48:07,466.466 INFO    ] 200
[2026-08-31 21:48:07,469.469 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:48:07,521.521 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:48:07,523.523 INFO    ] No update needed
[2026-08-31 21:48:07,526.526 INFO    ] Checking for camera pi updates...
[2026-08-31 21:48:07,560.560 INFO    ] 200
[2026-08-31 21:48:07,563.563 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:48:07,611.611 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:48:07,684.684 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:48:07,686.686 INFO    ] No camera update needed
[2026-08-31 21:48:07,689.689 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:48:07,691.691 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:48:07,696.696 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:48:07,702.702 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:48:09,743.743 INFO    ] ================================================
[2026-08-31 21:48:09,758.758 INFO    ] Launching Daemon at Mon Aug 31 21:48:09 IST 2026
[2026-08-31 21:48:09,769.769 INFO    ] ================================================
[2026-08-31 21:48:10,411.411 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:48:10
[2026-08-31 21:48:11,017.017 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:48:11,294.294 INFO    ] Initializing speech engine...
[2026-08-31 21:48:11,300.300 INFO    ] 2026-08-31 21:48:11
[2026-08-31 21:48:11,561.561 INFO    ] 2026-08-31 21:48:11
[2026-08-31 21:48:11,615.615 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:48:11,842.842 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:48:11,847.847 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:48:11,980.980 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:48:12,050.050 INFO    ] time= 31/08/2026 21:48:11
[2026-08-31 21:48:12,107.107 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:48:12,113.113 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:48:12,253.253 INFO    ] No existing commands found in stream
[2026-08-31 21:48:17,269.269 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:48:17,272.272 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-08-31 21:48:21,217.217 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 21:48:21,220.220 INFO    ] Checking for system updates...
[2026-08-31 21:48:21,255.255 INFO    ] 200
[2026-08-31 21:48:21,258.258 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:48:21,317.317 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:48:21,319.319 INFO    ] No update needed
[2026-08-31 21:48:21,322.322 INFO    ] Checking for camera pi updates...
[2026-08-31 21:48:21,355.355 INFO    ] 200
[2026-08-31 21:48:21,358.358 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:48:21,402.402 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:48:21,484.484 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:48:21,487.487 INFO    ] No camera update needed
[2026-08-31 21:48:21,489.489 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:48:21,491.491 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:48:21,497.497 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:48:21,502.502 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:48:23,548.548 INFO    ] ================================================
[2026-08-31 21:48:23,564.564 INFO    ] Launching Daemon at Mon Aug 31 21:48:23 IST 2026
[2026-08-31 21:48:23,575.575 INFO    ] ================================================
[2026-08-31 21:48:24,150.150 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:48:24
[2026-08-31 21:48:24,734.734 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:48:25,002.002 INFO    ] Initializing speech engine...
[2026-08-31 21:48:25,010.010 INFO    ] 2026-08-31 21:48:25
[2026-08-31 21:48:25,257.257 INFO    ] 2026-08-31 21:48:25
[2026-08-31 21:48:25,291.291 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:48:25,554.554 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:48:25,563.563 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:48:25,701.701 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:48:25,756.756 INFO    ] time= 31/08/2026 21:48:25
[2026-08-31 21:48:25,810.810 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:48:25,836.836 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:48:25,968.968 INFO    ] No existing commands found in stream
[2026-08-31 21:48:30,996.996 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:48:30,999.999 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-08-31 21:48:32,027.027 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 21:48:32,030.030 INFO    ] Checking for system updates...
[2026-08-31 21:48:32,072.072 INFO    ] 200
[2026-08-31 21:48:32,075.075 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:48:32,131.131 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:48:32,134.134 INFO    ] No update needed
[2026-08-31 21:48:32,137.137 INFO    ] Checking for camera pi updates...
[2026-08-31 21:48:32,178.178 INFO    ] 200
[2026-08-31 21:48:32,181.181 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:48:32,231.231 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:48:32,288.288 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:48:32,291.291 INFO    ] No camera update needed
[2026-08-31 21:48:32,293.293 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:48:32,296.296 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:48:32,302.302 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:48:32,308.308 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:48:34,350.350 INFO    ] ================================================
[2026-08-31 21:48:34,366.366 INFO    ] Launching Daemon at Mon Aug 31 21:48:34 IST 2026
[2026-08-31 21:48:34,378.378 INFO    ] ================================================
[2026-08-31 21:48:34,949.949 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:48:34
[2026-08-31 21:48:35,536.536 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:48:35,795.795 INFO    ] Initializing speech engine...
[2026-08-31 21:48:35,809.809 INFO    ] 2026-08-31 21:48:35
[2026-08-31 21:48:36,091.091 INFO    ] 2026-08-31 21:48:36
[2026-08-31 21:48:36,128.128 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:48:36,324.324 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:48:36,337.337 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:48:36,496.496 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:48:36,504.504 INFO    ] time= 31/08/2026 21:48:36
[2026-08-31 21:48:36,512.512 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:48:36,549.549 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:48:36,694.694 INFO    ] No existing commands found in stream
[2026-08-31 21:48:41,720.720 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:48:41,722.722 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-08-31 21:48:43,571.571 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 21:48:43,573.573 INFO    ] Checking for system updates...
[2026-08-31 21:48:43,610.610 INFO    ] 200
[2026-08-31 21:48:43,612.612 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:48:43,674.674 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:48:43,676.676 INFO    ] No update needed
[2026-08-31 21:48:43,679.679 INFO    ] Checking for camera pi updates...
[2026-08-31 21:48:43,712.712 INFO    ] 200
[2026-08-31 21:48:43,715.715 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:48:43,756.756 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:48:43,838.838 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:48:43,840.840 INFO    ] No camera update needed
[2026-08-31 21:48:43,843.843 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:48:43,845.845 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:48:43,850.850 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:48:43,855.855 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:48:45,896.896 INFO    ] ================================================
[2026-08-31 21:48:45,912.912 INFO    ] Launching Daemon at Mon Aug 31 21:48:45 IST 2026
[2026-08-31 21:48:45,923.923 INFO    ] ================================================
[2026-08-31 21:48:46,505.505 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:48:46
[2026-08-31 21:48:47,105.105 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:48:47,363.363 INFO    ] Initializing speech engine...
[2026-08-31 21:48:47,371.371 INFO    ] 2026-08-31 21:48:47
[2026-08-31 21:48:47,664.664 INFO    ] 2026-08-31 21:48:47
[2026-08-31 21:48:47,704.704 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:48:47,926.926 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:48:47,980.980 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:48:48,146.146 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:48:48,179.179 INFO    ] time= 31/08/2026 21:48:48
[2026-08-31 21:48:48,223.223 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:48:48,278.278 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:48:48,358.358 INFO    ] No existing commands found in stream
[2026-08-31 21:48:53,371.371 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:48:53,373.373 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-08-31 21:48:57,491.491 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 21:48:57,494.494 INFO    ] Checking for system updates...
[2026-08-31 21:48:57,530.530 INFO    ] 200
[2026-08-31 21:48:57,532.532 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:48:57,584.584 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:48:57,587.587 INFO    ] No update needed
[2026-08-31 21:48:57,589.589 INFO    ] Checking for camera pi updates...
[2026-08-31 21:48:57,627.627 INFO    ] 200
[2026-08-31 21:48:57,629.629 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:48:57,670.670 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:48:57,752.752 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:48:57,755.755 INFO    ] No camera update needed
[2026-08-31 21:48:57,758.758 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:48:57,760.760 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:48:57,766.766 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:48:57,772.772 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:48:59,814.814 INFO    ] ================================================
[2026-08-31 21:48:59,830.830 INFO    ] Launching Daemon at Mon Aug 31 21:48:59 IST 2026
[2026-08-31 21:48:59,841.841 INFO    ] ================================================
[2026-08-31 21:49:00,412.412 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:49:00
[2026-08-31 21:49:00,995.995 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:49:01,237.237 INFO    ] Initializing speech engine...
[2026-08-31 21:49:01,245.245 INFO    ] 2026-08-31 21:49:01
[2026-08-31 21:49:01,524.524 INFO    ] 2026-08-31 21:49:01
[2026-08-31 21:49:01,606.606 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:49:01,858.858 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:49:01,863.863 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:49:02,012.012 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:49:02,016.016 INFO    ] time= 31/08/2026 21:49:02
[2026-08-31 21:49:02,019.019 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:49:02,022.022 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:49:02,083.083 INFO    ] No existing commands found in stream
[2026-08-31 21:49:07,093.093 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:49:07,095.095 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-08-31 21:49:11,416.416 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 21:49:11,419.419 INFO    ] Checking for system updates...
[2026-08-31 21:49:11,454.454 INFO    ] 200
[2026-08-31 21:49:11,457.457 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:49:11,514.514 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:49:11,516.516 INFO    ] No update needed
[2026-08-31 21:49:11,519.519 INFO    ] Checking for camera pi updates...
[2026-08-31 21:49:11,552.552 INFO    ] 200
[2026-08-31 21:49:11,554.554 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:49:11,598.598 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:49:11,677.677 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:49:11,679.679 INFO    ] No camera update needed
[2026-08-31 21:49:11,682.682 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:49:11,684.684 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:49:11,689.689 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:49:11,694.694 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:49:13,735.735 INFO    ] ================================================
[2026-08-31 21:49:13,751.751 INFO    ] Launching Daemon at Mon Aug 31 21:49:13 IST 2026
[2026-08-31 21:49:13,762.762 INFO    ] ================================================
[2026-08-31 21:49:14,341.341 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:49:14
[2026-08-31 21:49:14,938.938 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:49:15,210.210 INFO    ] Initializing speech engine...
[2026-08-31 21:49:15,220.220 INFO    ] 2026-08-31 21:49:15
[2026-08-31 21:49:15,480.480 INFO    ] 2026-08-31 21:49:15
[2026-08-31 21:49:15,537.537 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:49:15,759.759 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:49:15,769.769 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:49:15,904.904 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:49:15,963.963 INFO    ] time= 31/08/2026 21:49:15
[2026-08-31 21:49:16,023.023 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:49:16,038.038 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:49:16,173.173 INFO    ] No existing commands found in stream
[2026-08-31 21:49:21,189.189 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:49:21,192.192 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-08-31 21:49:25,482.482 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 21:49:25,484.484 INFO    ] Checking for system updates...
[2026-08-31 21:49:25,522.522 INFO    ] 200
[2026-08-31 21:49:25,525.525 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:49:25,576.576 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:49:25,579.579 INFO    ] No update needed
[2026-08-31 21:49:25,581.581 INFO    ] Checking for camera pi updates...
[2026-08-31 21:49:25,615.615 INFO    ] 200
[2026-08-31 21:49:25,617.617 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:49:25,661.661 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:49:25,745.745 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:49:25,748.748 INFO    ] No camera update needed
[2026-08-31 21:49:25,750.750 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:49:25,753.753 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:49:25,758.758 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:49:25,763.763 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:49:27,804.804 INFO    ] ================================================
[2026-08-31 21:49:27,819.819 INFO    ] Launching Daemon at Mon Aug 31 21:49:27 IST 2026
[2026-08-31 21:49:27,831.831 INFO    ] ================================================
[2026-08-31 21:49:28,453.453 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:49:28
[2026-08-31 21:49:29,094.094 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:49:29,390.390 INFO    ] Initializing speech engine...
[2026-08-31 21:49:29,396.396 INFO    ] 2026-08-31 21:49:29
[2026-08-31 21:49:29,681.681 INFO    ] 2026-08-31 21:49:29
[2026-08-31 21:49:29,726.726 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:49:29,979.979 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:49:29,986.986 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:49:30,170.170 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:49:30,227.227 INFO    ] time= 31/08/2026 21:49:30
[2026-08-31 21:49:30,234.234 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:49:30,256.256 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:49:30,381.381 INFO    ] No existing commands found in stream
[2026-08-31 21:49:35,398.398 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:49:35,401.401 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-08-31 21:49:39,162.162 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 21:49:39,165.165 INFO    ] Checking for system updates...
[2026-08-31 21:49:39,202.202 INFO    ] 200
[2026-08-31 21:49:39,204.204 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:49:39,263.263 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:49:39,265.265 INFO    ] No update needed
[2026-08-31 21:49:39,268.268 INFO    ] Checking for camera pi updates...
[2026-08-31 21:49:39,305.305 INFO    ] 200
[2026-08-31 21:49:39,308.308 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:49:39,354.354 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:49:39,534.534 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:49:39,536.536 INFO    ] No camera update needed
[2026-08-31 21:49:39,539.539 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:49:39,542.542 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:49:39,548.548 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:49:39,553.553 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:49:41,595.595 INFO    ] ================================================
[2026-08-31 21:49:41,611.611 INFO    ] Launching Daemon at Mon Aug 31 21:49:41 IST 2026
[2026-08-31 21:49:41,622.622 INFO    ] ================================================
[2026-08-31 21:49:42,199.199 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:49:42
[2026-08-31 21:49:42,796.796 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:49:43,084.084 INFO    ] Initializing speech engine...
[2026-08-31 21:49:43,090.090 INFO    ] 2026-08-31 21:49:43
[2026-08-31 21:49:43,355.355 INFO    ] 2026-08-31 21:49:43
[2026-08-31 21:49:43,391.391 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:49:43,613.613 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:49:43,677.677 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:49:43,834.834 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:49:43,879.879 INFO    ] time= 31/08/2026 21:49:43
[2026-08-31 21:49:43,923.923 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:49:43,979.979 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:49:44,121.121 INFO    ] No existing commands found in stream
[2026-08-31 21:49:49,146.146 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:49:49,150.150 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-08-31 21:49:52,164.164 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 21:49:52,167.167 INFO    ] Checking for system updates...
[2026-08-31 21:49:52,208.208 INFO    ] 200
[2026-08-31 21:49:52,211.211 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-08-31 21:49:52,214.214 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-08-31 21:49:52,217.217 INFO    ] Checking for camera pi updates...
[2026-08-31 21:49:52,289.289 INFO    ] 200
[2026-08-31 21:49:52,291.291 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-08-31 21:49:52,293.293 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-08-31 21:49:52,296.296 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:49:52,298.298 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:49:52,303.303 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:49:52,308.308 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:49:54,350.350 INFO    ] ================================================
[2026-08-31 21:49:54,366.366 INFO    ] Launching Daemon at Mon Aug 31 21:49:54 IST 2026
[2026-08-31 21:49:54,376.376 INFO    ] ================================================
[2026-08-31 21:49:55,021.021 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:49:55
[2026-08-31 21:49:55,685.685 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:49:55,986.986 INFO    ] Initializing speech engine...
[2026-08-31 21:49:55,992.992 INFO    ] 2026-08-31 21:49:55
[2026-08-31 21:49:56,265.265 INFO    ] 2026-08-31 21:49:56
[2026-08-31 21:49:56,325.325 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:49:56,560.560 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:49:56,567.567 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:49:56,700.700 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:49:56,749.749 INFO    ] time= 31/08/2026 21:49:56
[2026-08-31 21:49:56,804.804 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:49:56,840.840 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:49:56,971.971 INFO    ] No existing commands found in stream
[2026-08-31 21:50:02,001.001 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:50:02,006.006 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-08-31 21:50:07,088.088 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 21:50:07,091.091 INFO    ] Checking for system updates...
[2026-08-31 21:50:07,131.131 INFO    ] 200
[2026-08-31 21:50:07,134.134 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:50:07,192.192 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:50:07,195.195 INFO    ] No update needed
[2026-08-31 21:50:07,197.197 INFO    ] Checking for camera pi updates...
[2026-08-31 21:50:07,230.230 INFO    ] 200
[2026-08-31 21:50:07,233.233 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:50:07,273.273 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:50:07,331.331 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:50:07,334.334 INFO    ] No camera update needed
[2026-08-31 21:50:07,336.336 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:50:07,339.339 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:50:07,344.344 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:50:07,349.349 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:50:09,392.392 INFO    ] ================================================
[2026-08-31 21:50:09,409.409 INFO    ] Launching Daemon at Mon Aug 31 21:50:09 IST 2026
[2026-08-31 21:50:09,420.420 INFO    ] ================================================
[2026-08-31 21:50:10,051.051 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:50:10
[2026-08-31 21:50:10,724.724 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:50:11,029.029 INFO    ] Initializing speech engine...
[2026-08-31 21:50:11,037.037 INFO    ] 2026-08-31 21:50:11
[2026-08-31 21:50:11,326.326 INFO    ] 2026-08-31 21:50:11
[2026-08-31 21:50:11,371.371 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:50:11,599.599 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:50:11,605.605 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:50:11,738.738 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:50:11,804.804 INFO    ] time= 31/08/2026 21:50:11
[2026-08-31 21:50:11,866.866 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:50:11,873.873 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:50:12,029.029 INFO    ] No existing commands found in stream
[2026-08-31 21:50:17,044.044 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:50:17,047.047 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-08-31 21:50:19,223.223 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 21:50:19,225.225 INFO    ] Checking for system updates...
[2026-08-31 21:50:19,261.261 INFO    ] 200
[2026-08-31 21:50:19,264.264 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:50:19,323.323 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:50:19,325.325 INFO    ] No update needed
[2026-08-31 21:50:19,327.327 INFO    ] Checking for camera pi updates...
[2026-08-31 21:50:19,366.366 INFO    ] 200
[2026-08-31 21:50:19,368.368 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:50:19,411.411 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:50:19,491.491 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:50:19,494.494 INFO    ] No camera update needed
[2026-08-31 21:50:19,496.496 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:50:19,499.499 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:50:19,505.505 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:50:19,511.511 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:50:21,552.552 INFO    ] ================================================
[2026-08-31 21:50:21,568.568 INFO    ] Launching Daemon at Mon Aug 31 21:50:21 IST 2026
[2026-08-31 21:50:21,579.579 INFO    ] ================================================
[2026-08-31 21:50:22,239.239 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:50:22
[2026-08-31 21:50:22,920.920 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:50:23,229.229 INFO    ] Initializing speech engine...
[2026-08-31 21:50:23,239.239 INFO    ] 2026-08-31 21:50:23
[2026-08-31 21:50:23,538.538 INFO    ] 2026-08-31 21:50:23
[2026-08-31 21:50:23,576.576 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:50:23,835.835 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:50:23,859.859 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:50:24,049.049 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:50:24,084.084 INFO    ] time= 31/08/2026 21:50:24
[2026-08-31 21:50:24,104.104 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:50:24,132.132 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:50:24,244.244 INFO    ] No existing commands found in stream
[2026-08-31 21:50:29,274.274 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:50:29,277.277 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-08-31 21:50:32,227.227 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 21:50:32,231.231 INFO    ] Checking for system updates...
[2026-08-31 21:50:32,270.270 INFO    ] 200
[2026-08-31 21:50:32,273.273 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:50:32,334.334 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:50:32,337.337 INFO    ] No update needed
[2026-08-31 21:50:32,341.341 INFO    ] Checking for camera pi updates...
[2026-08-31 21:50:32,385.385 INFO    ] 200
[2026-08-31 21:50:32,389.389 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:50:32,439.439 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:50:32,525.525 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:50:32,528.528 INFO    ] No camera update needed
[2026-08-31 21:50:32,531.531 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:50:32,534.534 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:50:32,542.542 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:50:32,549.549 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:50:34,591.591 INFO    ] ================================================
[2026-08-31 21:50:34,607.607 INFO    ] Launching Daemon at Mon Aug 31 21:50:34 IST 2026
[2026-08-31 21:50:34,618.618 INFO    ] ================================================
[2026-08-31 21:50:35,210.210 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:50:35
[2026-08-31 21:50:35,878.878 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:50:36,184.184 INFO    ] Initializing speech engine...
[2026-08-31 21:50:36,199.199 INFO    ] 2026-08-31 21:50:36
[2026-08-31 21:50:36,471.471 INFO    ] 2026-08-31 21:50:36
[2026-08-31 21:50:36,524.524 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:50:36,753.753 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:50:36,763.763 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:50:36,898.898 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:50:36,946.946 INFO    ] time= 31/08/2026 21:50:36
[2026-08-31 21:50:37,001.001 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:50:37,035.035 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:50:37,172.172 INFO    ] No existing commands found in stream
[2026-08-31 21:50:42,199.199 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:50:42,202.202 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-08-31 21:50:44,545.545 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 21:50:44,548.548 INFO    ] Checking for system updates...
[2026-08-31 21:50:44,585.585 INFO    ] 200
[2026-08-31 21:50:44,588.588 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:50:44,641.641 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:50:44,643.643 INFO    ] No update needed
[2026-08-31 21:50:44,645.645 INFO    ] Checking for camera pi updates...
[2026-08-31 21:50:44,682.682 INFO    ] 200
[2026-08-31 21:50:44,684.684 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:50:44,728.728 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:50:44,834.834 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:50:44,836.836 INFO    ] No camera update needed
[2026-08-31 21:50:44,839.839 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:50:44,841.841 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:50:44,848.848 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:50:44,853.853 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:50:46,894.894 INFO    ] ================================================
[2026-08-31 21:50:46,910.910 INFO    ] Launching Daemon at Mon Aug 31 21:50:46 IST 2026
[2026-08-31 21:50:46,921.921 INFO    ] ================================================
[2026-08-31 21:50:47,501.501 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:50:47
[2026-08-31 21:50:48,098.098 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:50:48,370.370 INFO    ] Initializing speech engine...
[2026-08-31 21:50:48,381.381 INFO    ] 2026-08-31 21:50:48
[2026-08-31 21:50:48,641.641 INFO    ] 2026-08-31 21:50:48
[2026-08-31 21:50:48,695.695 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:50:48,977.977 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:50:48,985.985 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:50:49,179.179 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:50:49,186.186 INFO    ] time= 31/08/2026 21:50:49
[2026-08-31 21:50:49,204.204 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:50:49,233.233 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:50:49,337.337 INFO    ] No existing commands found in stream
[2026-08-31 21:50:54,351.351 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:50:54,354.354 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-08-31 21:50:55,443.443 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 21:50:55,445.445 INFO    ] Checking for system updates...
[2026-08-31 21:50:55,482.482 INFO    ] 200
[2026-08-31 21:50:55,484.484 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:50:55,542.542 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:50:55,545.545 INFO    ] No update needed
[2026-08-31 21:50:55,547.547 INFO    ] Checking for camera pi updates...
[2026-08-31 21:50:55,581.581 INFO    ] 200
[2026-08-31 21:50:55,583.583 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:50:55,623.623 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:50:55,710.710 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:50:55,713.713 INFO    ] No camera update needed
[2026-08-31 21:50:55,715.715 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:50:55,718.718 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:50:55,723.723 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:50:55,728.728 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:50:57,771.771 INFO    ] ================================================
[2026-08-31 21:50:57,786.786 INFO    ] Launching Daemon at Mon Aug 31 21:50:57 IST 2026
[2026-08-31 21:50:57,797.797 INFO    ] ================================================
[2026-08-31 21:50:58,375.375 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:50:58
[2026-08-31 21:50:58,971.971 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:50:59,241.241 INFO    ] Initializing speech engine...
[2026-08-31 21:50:59,258.258 INFO    ] 2026-08-31 21:50:59
[2026-08-31 21:50:59,531.531 INFO    ] 2026-08-31 21:50:59
[2026-08-31 21:50:59,568.568 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:50:59,786.786 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:50:59,800.800 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:50:59,938.938 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:50:59,944.944 INFO    ] time= 31/08/2026 21:50:59
[2026-08-31 21:50:59,952.952 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:51:00,002.002 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:51:00,131.131 INFO    ] No existing commands found in stream
[2026-08-31 21:51:05,167.167 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:51:05,170.170 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-08-31 21:51:07,262.262 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 21:51:07,264.264 INFO    ] Checking for system updates...
[2026-08-31 21:51:07,300.300 INFO    ] 200
[2026-08-31 21:51:07,303.303 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:51:07,361.361 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:51:07,363.363 INFO    ] No update needed
[2026-08-31 21:51:07,365.365 INFO    ] Checking for camera pi updates...
[2026-08-31 21:51:07,399.399 INFO    ] 200
[2026-08-31 21:51:07,402.402 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:51:07,446.446 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:51:07,530.530 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:51:07,532.532 INFO    ] No camera update needed
[2026-08-31 21:51:07,534.534 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:51:07,537.537 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:51:07,542.542 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:51:07,547.547 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:51:09,588.588 INFO    ] ================================================
[2026-08-31 21:51:09,604.604 INFO    ] Launching Daemon at Mon Aug 31 21:51:09 IST 2026
[2026-08-31 21:51:09,615.615 INFO    ] ================================================
[2026-08-31 21:51:10,196.196 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:51:10
[2026-08-31 21:51:10,794.794 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:51:11,066.066 INFO    ] Initializing speech engine...
[2026-08-31 21:51:11,075.075 INFO    ] 2026-08-31 21:51:11
[2026-08-31 21:51:11,322.322 INFO    ] 2026-08-31 21:51:11
[2026-08-31 21:51:11,348.348 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:51:11,562.562 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:51:11,618.618 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:51:11,758.758 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:51:11,780.780 INFO    ] time= 31/08/2026 21:51:11
[2026-08-31 21:51:11,844.844 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:51:11,891.891 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:51:12,008.008 INFO    ] No existing commands found in stream
[2026-08-31 21:51:17,030.030 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:51:17,033.033 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-08-31 21:51:21,498.498 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 21:51:21,501.501 INFO    ] Checking for system updates...
[2026-08-31 21:51:21,539.539 INFO    ] 200
[2026-08-31 21:51:21,542.542 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:51:21,594.594 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:51:21,596.596 INFO    ] No update needed
[2026-08-31 21:51:21,599.599 INFO    ] Checking for camera pi updates...
[2026-08-31 21:51:21,632.632 INFO    ] 200
[2026-08-31 21:51:21,634.634 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:51:21,678.678 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:51:21,755.755 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:51:21,758.758 INFO    ] No camera update needed
[2026-08-31 21:51:21,760.760 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:51:21,762.762 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:51:21,768.768 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:51:21,772.772 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:51:23,813.813 INFO    ] ================================================
[2026-08-31 21:51:23,829.829 INFO    ] Launching Daemon at Mon Aug 31 21:51:23 IST 2026
[2026-08-31 21:51:23,840.840 INFO    ] ================================================
[2026-08-31 21:51:24,471.471 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:51:24
[2026-08-31 21:51:25,122.122 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:51:25,410.410 INFO    ] Initializing speech engine...
[2026-08-31 21:51:25,417.417 INFO    ] 2026-08-31 21:51:25
[2026-08-31 21:51:25,685.685 INFO    ] 2026-08-31 21:51:25
[2026-08-31 21:51:25,725.725 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:51:25,950.950 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:51:25,960.960 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:51:26,096.096 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:51:26,161.161 INFO    ] time= 31/08/2026 21:51:26
[2026-08-31 21:51:26,221.221 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:51:26,232.232 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:51:26,379.379 INFO    ] No existing commands found in stream
[2026-08-31 21:51:31,396.396 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:51:31,399.399 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-08-31 21:51:33,132.132 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 21:51:33,135.135 INFO    ] Checking for system updates...
[2026-08-31 21:51:33,179.179 INFO    ] 200
[2026-08-31 21:51:33,182.182 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:51:33,248.248 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:51:33,251.251 INFO    ] No update needed
[2026-08-31 21:51:33,254.254 INFO    ] Checking for camera pi updates...
[2026-08-31 21:51:33,289.289 INFO    ] 200
[2026-08-31 21:51:33,292.292 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:51:33,332.332 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:51:33,434.434 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:51:33,437.437 INFO    ] No camera update needed
[2026-08-31 21:51:33,439.439 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:51:33,441.441 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:51:33,447.447 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:51:33,452.452 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:51:35,492.492 INFO    ] ================================================
[2026-08-31 21:51:35,508.508 INFO    ] Launching Daemon at Mon Aug 31 21:51:35 IST 2026
[2026-08-31 21:51:35,518.518 INFO    ] ================================================
[2026-08-31 21:51:36,102.102 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:51:36
[2026-08-31 21:51:36,696.696 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:51:36,955.955 INFO    ] Initializing speech engine...
[2026-08-31 21:51:36,976.976 INFO    ] 2026-08-31 21:51:36
[2026-08-31 21:51:37,249.249 INFO    ] 2026-08-31 21:51:37
[2026-08-31 21:51:37,284.284 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:51:37,497.497 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:51:37,505.505 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:51:37,652.652 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:51:37,719.719 INFO    ] time= 31/08/2026 21:51:37
[2026-08-31 21:51:37,724.724 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:51:37,769.769 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:51:37,866.866 INFO    ] No existing commands found in stream
[2026-08-31 21:51:42,877.877 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:51:42,880.880 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-08-31 21:51:44,971.971 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 21:51:44,974.974 INFO    ] Checking for system updates...
[2026-08-31 21:51:45,010.010 INFO    ] 200
[2026-08-31 21:51:45,012.012 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:51:45,064.064 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:51:45,067.067 INFO    ] No update needed
[2026-08-31 21:51:45,069.069 INFO    ] Checking for camera pi updates...
[2026-08-31 21:51:45,105.105 INFO    ] 200
[2026-08-31 21:51:45,107.107 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:51:45,151.151 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:51:45,334.334 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:51:45,336.336 INFO    ] No camera update needed
[2026-08-31 21:51:45,339.339 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:51:45,341.341 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:51:45,349.349 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:51:45,354.354 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:51:47,402.402 INFO    ] ================================================
[2026-08-31 21:51:47,417.417 INFO    ] Launching Daemon at Mon Aug 31 21:51:47 IST 2026
[2026-08-31 21:51:47,429.429 INFO    ] ================================================
[2026-08-31 21:51:48,015.015 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:51:48
[2026-08-31 21:51:48,609.609 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:51:48,884.884 INFO    ] Initializing speech engine...
[2026-08-31 21:51:48,892.892 INFO    ] 2026-08-31 21:51:48
[2026-08-31 21:51:49,150.150 INFO    ] 2026-08-31 21:51:49
[2026-08-31 21:51:49,203.203 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:51:49,430.430 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:51:49,436.436 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:51:49,648.648 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:51:49,691.691 INFO    ] time= 31/08/2026 21:51:49
[2026-08-31 21:51:49,709.709 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:51:49,718.718 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:51:49,845.845 INFO    ] No existing commands found in stream
[2026-08-31 21:51:54,858.858 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:51:54,861.861 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-08-31 21:51:58,803.803 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 21:51:58,805.805 INFO    ] Checking for system updates...
[2026-08-31 21:51:58,841.841 INFO    ] 200
[2026-08-31 21:51:58,843.843 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:51:58,895.895 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:51:58,897.897 INFO    ] No update needed
[2026-08-31 21:51:58,900.900 INFO    ] Checking for camera pi updates...
[2026-08-31 21:51:58,936.936 INFO    ] 200
[2026-08-31 21:51:58,938.938 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:51:58,981.981 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:51:59,063.063 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:51:59,066.066 INFO    ] No camera update needed
[2026-08-31 21:51:59,068.068 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:51:59,071.071 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:51:59,076.076 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:51:59,081.081 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:52:01,121.121 INFO    ] ================================================
[2026-08-31 21:52:01,137.137 INFO    ] Launching Daemon at Mon Aug 31 21:52:01 IST 2026
[2026-08-31 21:52:01,148.148 INFO    ] ================================================
[2026-08-31 21:52:01,739.739 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:52:01
[2026-08-31 21:52:02,494.494 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:52:02,830.830 INFO    ] Initializing speech engine...
[2026-08-31 21:52:02,841.841 INFO    ] 2026-08-31 21:52:02
[2026-08-31 21:52:03,125.125 INFO    ] 2026-08-31 21:52:03
[2026-08-31 21:52:03,161.161 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:52:03,399.399 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:52:03,408.408 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:52:03,553.553 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:52:03,556.556 INFO    ] time= 31/08/2026 21:52:03
[2026-08-31 21:52:03,566.566 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:52:03,573.573 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:52:03,695.695 INFO    ] No existing commands found in stream
[2026-08-31 21:52:08,706.706 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:52:08,709.709 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-08-31 21:52:12,778.778 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 21:52:12,781.781 INFO    ] Checking for system updates...
[2026-08-31 21:52:12,816.816 INFO    ] 200
[2026-08-31 21:52:12,819.819 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:52:12,871.871 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:52:12,874.874 INFO    ] No update needed
[2026-08-31 21:52:12,876.876 INFO    ] Checking for camera pi updates...
[2026-08-31 21:52:12,910.910 INFO    ] 200
[2026-08-31 21:52:12,913.913 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:52:12,954.954 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:52:13,036.036 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:52:13,039.039 INFO    ] No camera update needed
[2026-08-31 21:52:13,042.042 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:52:13,044.044 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:52:13,050.050 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:52:13,056.056 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:52:15,098.098 INFO    ] ================================================
[2026-08-31 21:52:15,114.114 INFO    ] Launching Daemon at Mon Aug 31 21:52:15 IST 2026
[2026-08-31 21:52:15,125.125 INFO    ] ================================================
[2026-08-31 21:52:15,700.700 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:52:15
[2026-08-31 21:52:16,283.283 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:52:16,547.547 INFO    ] Initializing speech engine...
[2026-08-31 21:52:16,560.560 INFO    ] 2026-08-31 21:52:16
[2026-08-31 21:52:16,807.807 INFO    ] 2026-08-31 21:52:16
[2026-08-31 21:52:16,841.841 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:52:17,043.043 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:52:17,096.096 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:52:17,236.236 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:52:17,301.301 INFO    ] time= 31/08/2026 21:52:17
[2026-08-31 21:52:17,360.360 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:52:17,369.369 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:52:17,500.500 INFO    ] No existing commands found in stream
[2026-08-31 21:52:22,526.526 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:52:22,529.529 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-08-31 21:52:25,082.082 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 21:52:25,084.084 INFO    ] Checking for system updates...
[2026-08-31 21:52:25,123.123 INFO    ] 200
[2026-08-31 21:52:25,126.126 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:52:25,185.185 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:52:25,188.188 INFO    ] No update needed
[2026-08-31 21:52:25,190.190 INFO    ] Checking for camera pi updates...
[2026-08-31 21:52:25,224.224 INFO    ] 200
[2026-08-31 21:52:25,227.227 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:52:25,273.273 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:52:25,392.392 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:52:25,395.395 INFO    ] No camera update needed
[2026-08-31 21:52:25,397.397 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:52:25,400.400 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:52:25,405.405 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:52:25,410.410 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:52:27,451.451 INFO    ] ================================================
[2026-08-31 21:52:27,466.466 INFO    ] Launching Daemon at Mon Aug 31 21:52:27 IST 2026
[2026-08-31 21:52:27,477.477 INFO    ] ================================================
[2026-08-31 21:52:28,105.105 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:52:28
[2026-08-31 21:52:28,692.692 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:52:28,964.964 INFO    ] Initializing speech engine...
[2026-08-31 21:52:28,971.971 INFO    ] 2026-08-31 21:52:28
[2026-08-31 21:52:29,230.230 INFO    ] 2026-08-31 21:52:29
[2026-08-31 21:52:29,260.260 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:52:29,505.505 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:52:29,515.515 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:52:29,741.741 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:52:29,774.774 INFO    ] time= 31/08/2026 21:52:29
[2026-08-31 21:52:29,789.789 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:52:29,798.798 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:52:29,928.928 INFO    ] No existing commands found in stream
[2026-08-31 21:52:34,949.949 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:52:34,952.952 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-08-31 21:52:35,569.569 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 21:52:35,571.571 INFO    ] Checking for system updates...
[2026-08-31 21:52:35,618.618 INFO    ] 200
[2026-08-31 21:52:35,621.621 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:52:35,686.686 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:52:35,689.689 INFO    ] No update needed
[2026-08-31 21:52:35,691.691 INFO    ] Checking for camera pi updates...
[2026-08-31 21:52:35,725.725 INFO    ] 200
[2026-08-31 21:52:35,727.727 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:52:35,770.770 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:52:35,876.876 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:52:35,879.879 INFO    ] No camera update needed
[2026-08-31 21:52:35,881.881 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:52:35,884.884 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:52:35,889.889 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:52:35,895.895 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:52:37,940.940 INFO    ] ================================================
[2026-08-31 21:52:37,956.956 INFO    ] Launching Daemon at Mon Aug 31 21:52:37 IST 2026
[2026-08-31 21:52:37,967.967 INFO    ] ================================================
[2026-08-31 21:52:38,559.559 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:52:38
[2026-08-31 21:52:39,172.172 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:52:39,436.436 INFO    ] Initializing speech engine...
[2026-08-31 21:52:39,443.443 INFO    ] 2026-08-31 21:52:39
[2026-08-31 21:52:39,744.744 INFO    ] 2026-08-31 21:52:39
[2026-08-31 21:52:39,779.779 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:52:39,984.984 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:52:40,001.001 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:52:40,210.210 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:52:40,221.221 INFO    ] time= 31/08/2026 21:52:40
[2026-08-31 21:52:40,281.281 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:52:40,336.336 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:52:40,396.396 INFO    ] No existing commands found in stream
[2026-08-31 21:52:45,408.408 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:52:45,411.411 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-08-31 21:52:48,261.261 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 21:52:48,264.264 INFO    ] Checking for system updates...
[2026-08-31 21:52:48,299.299 INFO    ] 200
[2026-08-31 21:52:48,302.302 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:52:48,365.365 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:52:48,368.368 INFO    ] No update needed
[2026-08-31 21:52:48,370.370 INFO    ] Checking for camera pi updates...
[2026-08-31 21:52:48,409.409 INFO    ] 200
[2026-08-31 21:52:48,411.411 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:52:48,457.457 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:52:48,560.560 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:52:48,563.563 INFO    ] No camera update needed
[2026-08-31 21:52:48,565.565 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:52:48,567.567 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:52:48,573.573 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:52:48,578.578 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:52:50,619.619 INFO    ] ================================================
[2026-08-31 21:52:50,634.634 INFO    ] Launching Daemon at Mon Aug 31 21:52:50 IST 2026
[2026-08-31 21:52:50,645.645 INFO    ] ================================================
[2026-08-31 21:52:51,211.211 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:52:51
[2026-08-31 21:52:51,810.810 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:52:52,079.079 INFO    ] Initializing speech engine...
[2026-08-31 21:52:52,093.093 INFO    ] 2026-08-31 21:52:52
[2026-08-31 21:52:52,383.383 INFO    ] 2026-08-31 21:52:52
[2026-08-31 21:52:52,419.419 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:52:52,625.625 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:52:52,638.638 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:52:52,813.813 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:52:52,818.818 INFO    ] time= 31/08/2026 21:52:52
[2026-08-31 21:52:52,824.824 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:52:52,852.852 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:52:52,977.977 INFO    ] No existing commands found in stream
[2026-08-31 21:52:58,002.002 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:52:58,005.005 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-08-31 21:52:59,162.162 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 21:52:59,164.164 INFO    ] Checking for system updates...
[2026-08-31 21:52:59,206.206 INFO    ] 200
[2026-08-31 21:52:59,209.209 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:52:59,270.270 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:52:59,272.272 INFO    ] No update needed
[2026-08-31 21:52:59,274.274 INFO    ] Checking for camera pi updates...
[2026-08-31 21:52:59,312.312 INFO    ] 200
[2026-08-31 21:52:59,314.314 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:52:59,361.361 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:52:59,440.440 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:52:59,442.442 INFO    ] No camera update needed
[2026-08-31 21:52:59,444.444 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:52:59,447.447 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:52:59,452.452 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:52:59,457.457 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:53:01,496.496 INFO    ] ================================================
[2026-08-31 21:53:01,512.512 INFO    ] Launching Daemon at Mon Aug 31 21:53:01 IST 2026
[2026-08-31 21:53:01,523.523 INFO    ] ================================================
[2026-08-31 21:53:02,232.232 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:53:02
[2026-08-31 21:53:02,945.945 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:53:03,259.259 INFO    ] Initializing speech engine...
[2026-08-31 21:53:03,268.268 INFO    ] 2026-08-31 21:53:03
[2026-08-31 21:53:03,592.592 INFO    ] 2026-08-31 21:53:03
[2026-08-31 21:53:03,659.659 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:53:03,811.811 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:53:03,823.823 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:53:03,972.972 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:53:03,980.980 INFO    ] time= 31/08/2026 21:53:03
[2026-08-31 21:53:03,993.993 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:53:03,995.995 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:53:04,137.137 INFO    ] No existing commands found in stream
[2026-08-31 21:53:09,168.168 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:53:09,170.170 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-08-31 21:53:10,699.699 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 21:53:10,701.701 INFO    ] Checking for system updates...
[2026-08-31 21:53:10,741.741 INFO    ] 200
[2026-08-31 21:53:10,743.743 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:53:10,810.810 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:53:10,813.813 INFO    ] No update needed
[2026-08-31 21:53:10,815.815 INFO    ] Checking for camera pi updates...
[2026-08-31 21:53:10,850.850 INFO    ] 200
[2026-08-31 21:53:10,852.852 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:53:10,894.894 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:53:10,963.963 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:53:10,966.966 INFO    ] No camera update needed
[2026-08-31 21:53:10,969.969 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:53:10,971.971 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:53:10,978.978 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:53:10,984.984 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:53:13,025.025 INFO    ] ================================================
[2026-08-31 21:53:13,041.041 INFO    ] Launching Daemon at Mon Aug 31 21:53:13 IST 2026
[2026-08-31 21:53:13,052.052 INFO    ] ================================================
[2026-08-31 21:53:13,640.640 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:53:13
[2026-08-31 21:53:14,320.320 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:53:14,627.627 INFO    ] Initializing speech engine...
[2026-08-31 21:53:14,641.641 INFO    ] 2026-08-31 21:53:14
[2026-08-31 21:53:14,952.952 INFO    ] 2026-08-31 21:53:14
[2026-08-31 21:53:15,037.037 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:53:15,248.248 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:53:15,257.257 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:53:15,453.453 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:53:15,472.472 INFO    ] time= 31/08/2026 21:53:15
[2026-08-31 21:53:15,481.481 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:53:15,508.508 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:53:15,640.640 INFO    ] No existing commands found in stream
[2026-08-31 21:53:20,671.671 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:53:20,674.674 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-08-31 21:53:22,266.266 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 21:53:22,273.273 INFO    ] Checking for system updates...
[2026-08-31 21:53:22,323.323 INFO    ] 200
[2026-08-31 21:53:22,326.326 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:53:22,405.405 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:53:22,408.408 INFO    ] No update needed
[2026-08-31 21:53:22,411.411 INFO    ] Checking for camera pi updates...
[2026-08-31 21:53:22,454.454 INFO    ] 200
[2026-08-31 21:53:22,458.458 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:53:22,508.508 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:53:22,595.595 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:53:22,598.598 INFO    ] No camera update needed
[2026-08-31 21:53:22,601.601 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:53:22,605.605 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:53:22,612.612 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:53:22,619.619 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:53:24,668.668 INFO    ] ================================================
[2026-08-31 21:53:24,684.684 INFO    ] Launching Daemon at Mon Aug 31 21:53:24 IST 2026
[2026-08-31 21:53:24,695.695 INFO    ] ================================================
[2026-08-31 21:53:25,338.338 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:53:25
[2026-08-31 21:53:26,001.001 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:53:26,304.304 INFO    ] Initializing speech engine...
[2026-08-31 21:53:26,318.318 INFO    ] 2026-08-31 21:53:26
[2026-08-31 21:53:26,592.592 INFO    ] 2026-08-31 21:53:26
[2026-08-31 21:53:26,645.645 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:53:26,881.881 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:53:26,884.884 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:53:27,023.023 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:53:27,059.059 INFO    ] time= 31/08/2026 21:53:27
[2026-08-31 21:53:27,098.098 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:53:27,143.143 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:53:27,285.285 INFO    ] No existing commands found in stream
[2026-08-31 21:53:32,310.310 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:53:32,313.313 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-08-31 21:53:35,133.133 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 21:53:35,136.136 INFO    ] Checking for system updates...
[2026-08-31 21:53:35,173.173 INFO    ] 200
[2026-08-31 21:53:35,176.176 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:53:35,230.230 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:53:35,233.233 INFO    ] No update needed
[2026-08-31 21:53:35,235.235 INFO    ] Checking for camera pi updates...
[2026-08-31 21:53:35,278.278 INFO    ] 200
[2026-08-31 21:53:35,281.281 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:53:35,328.328 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:53:35,427.427 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:53:35,430.430 INFO    ] No camera update needed
[2026-08-31 21:53:35,433.433 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:53:35,436.436 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:53:35,442.442 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:53:35,448.448 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:53:37,491.491 INFO    ] ================================================
[2026-08-31 21:53:37,507.507 INFO    ] Launching Daemon at Mon Aug 31 21:53:37 IST 2026
[2026-08-31 21:53:37,519.519 INFO    ] ================================================
[2026-08-31 21:53:38,186.186 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:53:38
[2026-08-31 21:53:38,863.863 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:53:39,140.140 INFO    ] Initializing speech engine...
[2026-08-31 21:53:39,148.148 INFO    ] 2026-08-31 21:53:39
[2026-08-31 21:53:39,411.411 INFO    ] 2026-08-31 21:53:39
[2026-08-31 21:53:39,464.464 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:53:39,689.689 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:53:39,695.695 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:53:39,833.833 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:53:39,908.908 INFO    ] time= 31/08/2026 21:53:39
[2026-08-31 21:53:39,955.955 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:53:39,962.962 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:53:40,088.088 INFO    ] No existing commands found in stream
[2026-08-31 21:53:45,114.114 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:53:45,116.116 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-08-31 21:53:47,051.051 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 21:53:47,054.054 INFO    ] Checking for system updates...
[2026-08-31 21:53:47,089.089 INFO    ] 200
[2026-08-31 21:53:47,092.092 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:53:47,145.145 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:53:47,148.148 INFO    ] No update needed
[2026-08-31 21:53:47,150.150 INFO    ] Checking for camera pi updates...
[2026-08-31 21:53:47,188.188 INFO    ] 200
[2026-08-31 21:53:47,190.190 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:53:47,230.230 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:53:47,312.312 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:53:47,315.315 INFO    ] No camera update needed
[2026-08-31 21:53:47,317.317 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:53:47,320.320 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:53:47,325.325 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:53:47,330.330 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:53:49,370.370 INFO    ] ================================================
[2026-08-31 21:53:49,387.387 INFO    ] Launching Daemon at Mon Aug 31 21:53:49 IST 2026
[2026-08-31 21:53:49,398.398 INFO    ] ================================================
[2026-08-31 21:53:50,061.061 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:53:50
[2026-08-31 21:53:50,744.744 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:53:51,042.042 INFO    ] Initializing speech engine...
[2026-08-31 21:53:51,050.050 INFO    ] 2026-08-31 21:53:51
[2026-08-31 21:53:51,326.326 INFO    ] 2026-08-31 21:53:51
[2026-08-31 21:53:51,365.365 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:53:51,653.653 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:53:51,661.661 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:53:51,861.861 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:53:51,868.868 INFO    ] time= 31/08/2026 21:53:51
[2026-08-31 21:53:51,885.885 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:53:51,893.893 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:53:52,040.040 INFO    ] No existing commands found in stream
[2026-08-31 21:53:57,065.065 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:53:57,068.068 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-08-31 21:53:59,931.931 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 21:53:59,933.933 INFO    ] Checking for system updates...
[2026-08-31 21:53:59,969.969 INFO    ] 200
[2026-08-31 21:53:59,971.971 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:54:00,023.023 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:54:00,026.026 INFO    ] No update needed
[2026-08-31 21:54:00,028.028 INFO    ] Checking for camera pi updates...
[2026-08-31 21:54:00,061.061 INFO    ] 200
[2026-08-31 21:54:00,064.064 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:54:00,111.111 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:54:00,316.316 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:54:00,319.319 INFO    ] No camera update needed
[2026-08-31 21:54:00,322.322 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:54:00,324.324 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:54:00,329.329 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:54:00,334.334 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:54:02,377.377 INFO    ] ================================================
[2026-08-31 21:54:02,398.398 INFO    ] Launching Daemon at Mon Aug 31 21:54:02 IST 2026
[2026-08-31 21:54:02,413.413 INFO    ] ================================================
[2026-08-31 21:54:03,057.057 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:54:03
[2026-08-31 21:54:03,723.723 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:54:04,003.003 INFO    ] Initializing speech engine...
[2026-08-31 21:54:04,013.013 INFO    ] 2026-08-31 21:54:04
[2026-08-31 21:54:04,273.273 INFO    ] 2026-08-31 21:54:04
[2026-08-31 21:54:04,330.330 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:54:04,574.574 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:54:04,582.582 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:54:04,811.811 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:54:04,818.818 INFO    ] time= 31/08/2026 21:54:04
[2026-08-31 21:54:04,836.836 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:54:04,864.864 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:54:04,970.970 INFO    ] No existing commands found in stream
[2026-08-31 21:54:09,990.990 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:54:09,993.993 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-08-31 21:54:12,538.538 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 21:54:12,541.541 INFO    ] Checking for system updates...
[2026-08-31 21:54:12,581.581 INFO    ] 200
[2026-08-31 21:54:12,584.584 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:54:12,642.642 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:54:12,644.644 INFO    ] No update needed
[2026-08-31 21:54:12,646.646 INFO    ] Checking for camera pi updates...
[2026-08-31 21:54:12,680.680 INFO    ] 200
[2026-08-31 21:54:12,682.682 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:54:12,722.722 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:54:12,818.818 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:54:12,821.821 INFO    ] No camera update needed
[2026-08-31 21:54:12,823.823 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:54:12,825.825 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:54:12,831.831 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:54:12,836.836 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:54:14,875.875 INFO    ] ================================================
[2026-08-31 21:54:14,890.890 INFO    ] Launching Daemon at Mon Aug 31 21:54:14 IST 2026
[2026-08-31 21:54:14,901.901 INFO    ] ================================================
[2026-08-31 21:54:15,482.482 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:54:15
[2026-08-31 21:54:16,079.079 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:54:16,351.351 INFO    ] Initializing speech engine...
[2026-08-31 21:54:16,361.361 INFO    ] 2026-08-31 21:54:16
[2026-08-31 21:54:16,623.623 INFO    ] 2026-08-31 21:54:16
[2026-08-31 21:54:16,676.676 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:54:16,902.902 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:54:16,907.907 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:54:17,051.051 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:54:17,111.111 INFO    ] time= 31/08/2026 21:54:17
[2026-08-31 21:54:17,168.168 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:54:17,174.174 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:54:17,305.305 INFO    ] No existing commands found in stream
[2026-08-31 21:54:22,327.327 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:54:22,330.330 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-08-31 21:54:26,331.331 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 21:54:26,334.334 INFO    ] Checking for system updates...
[2026-08-31 21:54:26,370.370 INFO    ] 200
[2026-08-31 21:54:26,372.372 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:54:26,432.432 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:54:26,434.434 INFO    ] No update needed
[2026-08-31 21:54:26,437.437 INFO    ] Checking for camera pi updates...
[2026-08-31 21:54:26,471.471 INFO    ] 200
[2026-08-31 21:54:26,473.473 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:54:26,520.520 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:54:26,599.599 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:54:26,602.602 INFO    ] No camera update needed
[2026-08-31 21:54:26,604.604 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:54:26,607.607 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:54:26,613.613 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:54:26,619.619 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:54:28,660.660 INFO    ] ================================================
[2026-08-31 21:54:28,676.676 INFO    ] Launching Daemon at Mon Aug 31 21:54:28 IST 2026
[2026-08-31 21:54:28,686.686 INFO    ] ================================================
[2026-08-31 21:54:29,254.254 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:54:29
[2026-08-31 21:54:29,836.836 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:54:30,108.108 INFO    ] Initializing speech engine...
[2026-08-31 21:54:30,116.116 INFO    ] 2026-08-31 21:54:30
[2026-08-31 21:54:30,367.367 INFO    ] 2026-08-31 21:54:30
[2026-08-31 21:54:30,403.403 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:54:30,603.603 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:54:30,659.659 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:54:30,866.866 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:54:30,920.920 INFO    ] time= 31/08/2026 21:54:30
[2026-08-31 21:54:30,929.929 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:54:30,946.946 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:54:31,077.077 INFO    ] No existing commands found in stream
[2026-08-31 21:54:36,089.089 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:54:36,092.092 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-08-31 21:54:37,204.204 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 21:54:37,207.207 INFO    ] Checking for system updates...
[2026-08-31 21:54:37,249.249 INFO    ] 200
[2026-08-31 21:54:37,252.252 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:54:37,312.312 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:54:37,315.315 INFO    ] No update needed
[2026-08-31 21:54:37,318.318 INFO    ] Checking for camera pi updates...
[2026-08-31 21:54:37,352.352 INFO    ] 200
[2026-08-31 21:54:37,355.355 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:54:37,397.397 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:54:37,483.483 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:54:37,485.485 INFO    ] No camera update needed
[2026-08-31 21:54:37,488.488 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:54:37,491.491 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:54:37,497.497 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:54:37,503.503 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:54:39,545.545 INFO    ] ================================================
[2026-08-31 21:54:39,560.560 INFO    ] Launching Daemon at Mon Aug 31 21:54:39 IST 2026
[2026-08-31 21:54:39,571.571 INFO    ] ================================================
[2026-08-31 21:54:40,219.219 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:54:40
[2026-08-31 21:54:40,825.825 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:54:41,086.086 INFO    ] Initializing speech engine...
[2026-08-31 21:54:41,092.092 INFO    ] 2026-08-31 21:54:41
[2026-08-31 21:54:41,389.389 INFO    ] 2026-08-31 21:54:41
[2026-08-31 21:54:41,427.427 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:54:42,031.031 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:54:42,061.061 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:54:42,239.239 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:54:42,284.284 INFO    ] time= 31/08/2026 21:54:42
[2026-08-31 21:54:42,306.306 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:54:42,357.357 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:54:42,473.473 INFO    ] No existing commands found in stream
[2026-08-31 21:54:47,487.487 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:54:47,490.490 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-08-31 21:54:50,383.383 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 21:54:50,386.386 INFO    ] Checking for system updates...
[2026-08-31 21:54:50,426.426 INFO    ] 200
[2026-08-31 21:54:50,430.430 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:54:50,483.483 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:54:50,486.486 INFO    ] No update needed
[2026-08-31 21:54:50,489.489 INFO    ] Checking for camera pi updates...
[2026-08-31 21:54:50,523.523 INFO    ] 200
[2026-08-31 21:54:50,526.526 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:54:50,572.572 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:54:50,660.660 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:54:50,662.662 INFO    ] No camera update needed
[2026-08-31 21:54:50,664.664 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:54:50,667.667 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:54:50,672.672 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:54:50,677.677 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:54:52,716.716 INFO    ] ================================================
[2026-08-31 21:54:52,731.731 INFO    ] Launching Daemon at Mon Aug 31 21:54:52 IST 2026
[2026-08-31 21:54:52,741.741 INFO    ] ================================================
[2026-08-31 21:54:53,304.304 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:54:53
[2026-08-31 21:54:53,884.884 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:54:54,128.128 INFO    ] Initializing speech engine...
[2026-08-31 21:54:54,136.136 INFO    ] 2026-08-31 21:54:54
[2026-08-31 21:54:54,409.409 INFO    ] 2026-08-31 21:54:54
[2026-08-31 21:54:54,443.443 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:54:54,646.646 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:54:54,705.705 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:54:54,845.845 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:54:54,893.893 INFO    ] time= 31/08/2026 21:54:54
[2026-08-31 21:54:54,942.942 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:54:54,981.981 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:54:55,037.037 INFO    ] No existing commands found in stream
[2026-08-31 21:55:00,048.048 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:55:00,051.051 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-08-31 21:55:04,345.345 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 21:55:04,348.348 INFO    ] Checking for system updates...
[2026-08-31 21:55:04,387.387 INFO    ] 200
[2026-08-31 21:55:04,389.389 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:55:04,447.447 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:55:04,449.449 INFO    ] No update needed
[2026-08-31 21:55:04,452.452 INFO    ] Checking for camera pi updates...
[2026-08-31 21:55:04,486.486 INFO    ] 200
[2026-08-31 21:55:04,489.489 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:55:04,530.530 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:55:04,635.635 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:55:04,638.638 INFO    ] No camera update needed
[2026-08-31 21:55:04,640.640 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:55:04,643.643 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:55:04,648.648 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:55:04,653.653 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:55:06,695.695 INFO    ] ================================================
[2026-08-31 21:55:06,711.711 INFO    ] Launching Daemon at Mon Aug 31 21:55:06 IST 2026
[2026-08-31 21:55:06,723.723 INFO    ] ================================================
[2026-08-31 21:55:07,303.303 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:55:07
[2026-08-31 21:55:07,889.889 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:55:08,146.146 INFO    ] Initializing speech engine...
[2026-08-31 21:55:08,155.155 INFO    ] 2026-08-31 21:55:08
[2026-08-31 21:55:08,452.452 INFO    ] 2026-08-31 21:55:08
[2026-08-31 21:55:08,490.490 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:55:08,779.779 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:55:08,791.791 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:55:09,019.019 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:55:09,073.073 INFO    ] time= 31/08/2026 21:55:09
[2026-08-31 21:55:09,091.091 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:55:09,109.109 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:55:09,249.249 INFO    ] No existing commands found in stream
[2026-08-31 21:55:14,271.271 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:55:14,274.274 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-08-31 21:55:17,381.381 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 21:55:17,384.384 INFO    ] Checking for system updates...
[2026-08-31 21:55:17,420.420 INFO    ] 200
[2026-08-31 21:55:17,422.422 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:55:17,482.482 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:55:17,484.484 INFO    ] No update needed
[2026-08-31 21:55:17,486.486 INFO    ] Checking for camera pi updates...
[2026-08-31 21:55:17,520.520 INFO    ] 200
[2026-08-31 21:55:17,522.522 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:55:17,563.563 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:55:17,665.665 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:55:17,667.667 INFO    ] No camera update needed
[2026-08-31 21:55:17,670.670 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:55:17,672.672 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:55:17,677.677 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:55:17,682.682 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:55:19,722.722 INFO    ] ================================================
[2026-08-31 21:55:19,736.736 INFO    ] Launching Daemon at Mon Aug 31 21:55:19 IST 2026
[2026-08-31 21:55:19,748.748 INFO    ] ================================================
[2026-08-31 21:55:20,318.318 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:55:20
[2026-08-31 21:55:20,905.905 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:55:21,173.173 INFO    ] Initializing speech engine...
[2026-08-31 21:55:21,182.182 INFO    ] 2026-08-31 21:55:21
[2026-08-31 21:55:21,443.443 INFO    ] 2026-08-31 21:55:21
[2026-08-31 21:55:21,479.479 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:55:21,681.681 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:55:21,696.696 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:55:21,929.929 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:55:21,940.940 INFO    ] time= 31/08/2026 21:55:21
[2026-08-31 21:55:22,010.010 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:55:22,054.054 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:55:22,197.197 INFO    ] No existing commands found in stream
[2026-08-31 21:55:27,222.222 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:55:27,225.225 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-08-31 21:55:30,285.285 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 21:55:30,288.288 INFO    ] Checking for system updates...
[2026-08-31 21:55:30,328.328 INFO    ] 200
[2026-08-31 21:55:30,330.330 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:55:30,383.383 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:55:30,386.386 INFO    ] No update needed
[2026-08-31 21:55:30,388.388 INFO    ] Checking for camera pi updates...
[2026-08-31 21:55:30,426.426 INFO    ] 200
[2026-08-31 21:55:30,429.429 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:55:30,470.470 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:55:30,551.551 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:55:30,554.554 INFO    ] No camera update needed
[2026-08-31 21:55:30,556.556 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:55:30,559.559 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:55:30,565.565 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:55:30,571.571 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:55:32,615.615 INFO    ] ================================================
[2026-08-31 21:55:32,631.631 INFO    ] Launching Daemon at Mon Aug 31 21:55:32 IST 2026
[2026-08-31 21:55:32,644.644 INFO    ] ================================================
[2026-08-31 21:55:33,349.349 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:55:33
[2026-08-31 21:55:34,044.044 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:55:34,361.361 INFO    ] Initializing speech engine...
[2026-08-31 21:55:34,367.367 INFO    ] 2026-08-31 21:55:34
[2026-08-31 21:55:34,644.644 INFO    ] 2026-08-31 21:55:34
[2026-08-31 21:55:34,686.686 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:55:34,970.970 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:55:34,978.978 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:55:35,150.150 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:55:35,179.179 INFO    ] time= 31/08/2026 21:55:35
[2026-08-31 21:55:35,194.194 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:55:35,204.204 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:55:35,330.330 INFO    ] No existing commands found in stream
[2026-08-31 21:55:40,342.342 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:55:40,345.345 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-08-31 21:55:41,169.169 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 21:55:41,171.171 INFO    ] Checking for system updates...
[2026-08-31 21:55:41,211.211 INFO    ] 200
[2026-08-31 21:55:41,213.213 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:55:41,266.266 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:55:41,269.269 INFO    ] No update needed
[2026-08-31 21:55:41,271.271 INFO    ] Checking for camera pi updates...
[2026-08-31 21:55:41,304.304 INFO    ] 200
[2026-08-31 21:55:41,307.307 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:55:41,347.347 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:55:41,433.433 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:55:41,443.443 INFO    ] No camera update needed
[2026-08-31 21:55:41,446.446 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:55:41,449.449 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:55:41,456.456 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:55:41,462.462 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:55:43,504.504 INFO    ] ================================================
[2026-08-31 21:55:43,519.519 INFO    ] Launching Daemon at Mon Aug 31 21:55:43 IST 2026
[2026-08-31 21:55:43,529.529 INFO    ] ================================================
[2026-08-31 21:55:44,186.186 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:55:44
[2026-08-31 21:55:44,815.815 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:55:45,070.070 INFO    ] Initializing speech engine...
[2026-08-31 21:55:45,092.092 INFO    ] 2026-08-31 21:55:45
[2026-08-31 21:55:45,348.348 INFO    ] 2026-08-31 21:55:45
[2026-08-31 21:55:45,389.389 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:55:45,700.700 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:55:45,705.705 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:55:45,883.883 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:55:45,904.904 INFO    ] time= 31/08/2026 21:55:45
[2026-08-31 21:55:45,923.923 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:55:45,931.931 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:55:46,049.049 INFO    ] No existing commands found in stream
[2026-08-31 21:55:51,070.070 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:55:51,073.073 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-08-31 21:55:54,764.764 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 21:55:54,767.767 INFO    ] Checking for system updates...
[2026-08-31 21:55:54,808.808 INFO    ] 200
[2026-08-31 21:55:54,811.811 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:55:54,867.867 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:55:54,870.870 INFO    ] No update needed
[2026-08-31 21:55:54,873.873 INFO    ] Checking for camera pi updates...
[2026-08-31 21:55:54,907.907 INFO    ] 200
[2026-08-31 21:55:54,910.910 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:55:54,951.951 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:55:55,043.043 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:55:55,046.046 INFO    ] No camera update needed
[2026-08-31 21:55:55,049.049 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:55:55,051.051 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:55:55,058.058 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:55:55,063.063 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:55:57,106.106 INFO    ] ================================================
[2026-08-31 21:55:57,121.121 INFO    ] Launching Daemon at Mon Aug 31 21:55:57 IST 2026
[2026-08-31 21:55:57,131.131 INFO    ] ================================================
[2026-08-31 21:55:57,713.713 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:55:57
[2026-08-31 21:55:58,311.311 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:55:58,565.565 INFO    ] Initializing speech engine...
[2026-08-31 21:55:58,587.587 INFO    ] 2026-08-31 21:55:58
[2026-08-31 21:55:58,841.841 INFO    ] 2026-08-31 21:55:58
[2026-08-31 21:55:58,877.877 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:55:59,134.134 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:55:59,139.139 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:55:59,323.323 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:55:59,373.373 INFO    ] time= 31/08/2026 21:55:59
[2026-08-31 21:55:59,401.401 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:55:59,418.418 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:55:59,532.532 INFO    ] No existing commands found in stream
[2026-08-31 21:56:04,559.559 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:56:04,562.562 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-08-31 21:56:05,429.429 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 21:56:05,431.431 INFO    ] Checking for system updates...
[2026-08-31 21:56:05,468.468 INFO    ] 200
[2026-08-31 21:56:05,470.470 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:56:05,524.524 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:56:05,526.526 INFO    ] No update needed
[2026-08-31 21:56:05,529.529 INFO    ] Checking for camera pi updates...
[2026-08-31 21:56:05,567.567 INFO    ] 200
[2026-08-31 21:56:05,569.569 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:56:05,615.615 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:56:05,713.713 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:56:05,715.715 INFO    ] No camera update needed
[2026-08-31 21:56:05,718.718 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:56:05,720.720 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:56:05,725.725 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:56:05,730.730 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:56:07,771.771 INFO    ] ================================================
[2026-08-31 21:56:07,786.786 INFO    ] Launching Daemon at Mon Aug 31 21:56:07 IST 2026
[2026-08-31 21:56:07,797.797 INFO    ] ================================================
[2026-08-31 21:56:08,368.368 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:56:08
[2026-08-31 21:56:08,957.957 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:56:09,214.214 INFO    ] Initializing speech engine...
[2026-08-31 21:56:09,220.220 INFO    ] 2026-08-31 21:56:09
[2026-08-31 21:56:09,514.514 INFO    ] 2026-08-31 21:56:09
[2026-08-31 21:56:09,552.552 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:56:09,749.749 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:56:09,765.765 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:56:09,926.926 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:56:09,935.935 INFO    ] time= 31/08/2026 21:56:09
[2026-08-31 21:56:09,942.942 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:56:09,995.995 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:56:10,140.140 INFO    ] No existing commands found in stream
[2026-08-31 21:56:15,160.160 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:56:15,163.163 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-08-31 21:56:18,485.485 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 21:56:18,488.488 INFO    ] Checking for system updates...
[2026-08-31 21:56:18,524.524 INFO    ] 200
[2026-08-31 21:56:18,526.526 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:56:18,587.587 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:56:18,589.589 INFO    ] No update needed
[2026-08-31 21:56:18,591.591 INFO    ] Checking for camera pi updates...
[2026-08-31 21:56:18,625.625 INFO    ] 200
[2026-08-31 21:56:18,627.627 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:56:18,668.668 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:56:18,776.776 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:56:18,778.778 INFO    ] No camera update needed
[2026-08-31 21:56:18,781.781 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:56:18,783.783 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:56:18,788.788 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:56:18,793.793 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:56:20,833.833 INFO    ] ================================================
[2026-08-31 21:56:20,848.848 INFO    ] Launching Daemon at Mon Aug 31 21:56:20 IST 2026
[2026-08-31 21:56:20,859.859 INFO    ] ================================================
[2026-08-31 21:56:21,512.512 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:56:21
[2026-08-31 21:56:22,117.117 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:56:22,386.386 INFO    ] Initializing speech engine...
[2026-08-31 21:56:22,395.395 INFO    ] 2026-08-31 21:56:22
[2026-08-31 21:56:22,646.646 INFO    ] 2026-08-31 21:56:22
[2026-08-31 21:56:22,681.681 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:56:22,882.882 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:56:22,941.941 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:56:23,084.084 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:56:23,149.149 INFO    ] time= 31/08/2026 21:56:23
[2026-08-31 21:56:23,193.193 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:56:23,219.219 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:56:23,330.330 INFO    ] No existing commands found in stream
[2026-08-31 21:56:28,363.363 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:56:28,365.365 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-08-31 21:56:31,805.805 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 21:56:31,808.808 INFO    ] Checking for system updates...
[2026-08-31 21:56:31,849.849 INFO    ] 200
[2026-08-31 21:56:31,852.852 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:56:31,914.914 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:56:31,916.916 INFO    ] No update needed
[2026-08-31 21:56:31,919.919 INFO    ] Checking for camera pi updates...
[2026-08-31 21:56:31,963.963 INFO    ] 200
[2026-08-31 21:56:31,965.965 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:56:32,014.014 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:56:32,099.099 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:56:32,102.102 INFO    ] No camera update needed
[2026-08-31 21:56:32,105.105 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:56:32,107.107 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:56:32,113.113 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:56:32,126.126 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:56:34,168.168 INFO    ] ================================================
[2026-08-31 21:56:34,182.182 INFO    ] Launching Daemon at Mon Aug 31 21:56:34 IST 2026
[2026-08-31 21:56:34,193.193 INFO    ] ================================================
[2026-08-31 21:56:34,772.772 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:56:34
[2026-08-31 21:56:35,370.370 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:56:35,631.631 INFO    ] Initializing speech engine...
[2026-08-31 21:56:35,646.646 INFO    ] 2026-08-31 21:56:35
[2026-08-31 21:56:35,929.929 INFO    ] 2026-08-31 21:56:35
[2026-08-31 21:56:35,967.967 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:56:36,253.253 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:56:36,263.263 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:56:36,416.416 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:56:36,461.461 INFO    ] time= 31/08/2026 21:56:36
[2026-08-31 21:56:36,515.515 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:56:36,563.563 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:56:36,694.694 INFO    ] No existing commands found in stream
[2026-08-31 21:56:41,712.712 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:56:41,715.715 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-08-31 21:56:43,006.006 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 21:56:43,009.009 INFO    ] Checking for system updates...
[2026-08-31 21:56:43,048.048 INFO    ] 200
[2026-08-31 21:56:43,050.050 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:56:43,103.103 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:56:43,105.105 INFO    ] No update needed
[2026-08-31 21:56:43,107.107 INFO    ] Checking for camera pi updates...
[2026-08-31 21:56:43,142.142 INFO    ] 200
[2026-08-31 21:56:43,145.145 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:56:43,189.189 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:56:43,255.255 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:56:43,258.258 INFO    ] No camera update needed
[2026-08-31 21:56:43,260.260 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:56:43,263.263 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:56:43,268.268 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:56:43,273.273 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:56:45,313.313 INFO    ] ================================================
[2026-08-31 21:56:45,328.328 INFO    ] Launching Daemon at Mon Aug 31 21:56:45 IST 2026
[2026-08-31 21:56:45,339.339 INFO    ] ================================================
[2026-08-31 21:56:45,906.906 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:56:45
[2026-08-31 21:56:46,489.489 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:56:46,737.737 INFO    ] Initializing speech engine...
[2026-08-31 21:56:46,754.754 INFO    ] 2026-08-31 21:56:46
[2026-08-31 21:56:47,020.020 INFO    ] 2026-08-31 21:56:47
[2026-08-31 21:56:47,054.054 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:56:47,307.307 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:56:47,316.316 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:56:47,529.529 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:56:47,574.574 INFO    ] time= 31/08/2026 21:56:47
[2026-08-31 21:56:47,580.580 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:56:47,599.599 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:56:47,730.730 INFO    ] No existing commands found in stream
[2026-08-31 21:56:52,752.752 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:56:52,755.755 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-08-31 21:56:55,002.002 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 21:56:55,004.004 INFO    ] Checking for system updates...
[2026-08-31 21:56:55,043.043 INFO    ] 200
[2026-08-31 21:56:55,045.045 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:56:55,099.099 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:56:55,101.101 INFO    ] No update needed
[2026-08-31 21:56:55,104.104 INFO    ] Checking for camera pi updates...
[2026-08-31 21:56:55,143.143 INFO    ] 200
[2026-08-31 21:56:55,145.145 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:56:55,186.186 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:56:55,271.271 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:56:55,273.273 INFO    ] No camera update needed
[2026-08-31 21:56:55,276.276 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:56:55,278.278 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:56:55,283.283 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:56:55,289.289 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:56:57,329.329 INFO    ] ================================================
[2026-08-31 21:56:57,344.344 INFO    ] Launching Daemon at Mon Aug 31 21:56:57 IST 2026
[2026-08-31 21:56:57,355.355 INFO    ] ================================================
[2026-08-31 21:56:57,996.996 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:56:57
[2026-08-31 21:56:58,658.658 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:56:58,957.957 INFO    ] Initializing speech engine...
[2026-08-31 21:56:58,963.963 INFO    ] 2026-08-31 21:56:58
[2026-08-31 21:56:59,236.236 INFO    ] 2026-08-31 21:56:59
[2026-08-31 21:56:59,298.298 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:56:59,587.587 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:56:59,596.596 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:56:59,797.797 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:56:59,804.804 INFO    ] time= 31/08/2026 21:56:59
[2026-08-31 21:56:59,826.826 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:56:59,853.853 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:56:59,964.964 INFO    ] No existing commands found in stream
[2026-08-31 21:57:04,988.988 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:57:04,991.991 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-08-31 21:57:07,809.809 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 21:57:07,812.812 INFO    ] Checking for system updates...
[2026-08-31 21:57:07,849.849 INFO    ] 200
[2026-08-31 21:57:07,851.851 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:57:07,909.909 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:57:07,912.912 INFO    ] No update needed
[2026-08-31 21:57:07,914.914 INFO    ] Checking for camera pi updates...
[2026-08-31 21:57:07,950.950 INFO    ] 200
[2026-08-31 21:57:07,953.953 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:57:07,993.993 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:57:08,048.048 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:57:08,050.050 INFO    ] No camera update needed
[2026-08-31 21:57:08,053.053 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:57:08,055.055 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:57:08,060.060 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:57:08,065.065 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:57:10,104.104 INFO    ] ================================================
[2026-08-31 21:57:10,119.119 INFO    ] Launching Daemon at Mon Aug 31 21:57:10 IST 2026
[2026-08-31 21:57:10,130.130 INFO    ] ================================================
[2026-08-31 21:57:10,699.699 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:57:10
[2026-08-31 21:57:11,297.297 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:57:11,571.571 INFO    ] Initializing speech engine...
[2026-08-31 21:57:11,580.580 INFO    ] 2026-08-31 21:57:11
[2026-08-31 21:57:11,831.831 INFO    ] 2026-08-31 21:57:11
[2026-08-31 21:57:11,900.900 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:57:12,127.127 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:57:12,137.137 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:57:12,270.270 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:57:12,318.318 INFO    ] time= 31/08/2026 21:57:12
[2026-08-31 21:57:12,368.368 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:57:12,405.405 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:57:12,539.539 INFO    ] No existing commands found in stream
[2026-08-31 21:57:17,563.563 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:57:17,567.567 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-08-31 21:57:18,493.493 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 21:57:18,495.495 INFO    ] Checking for system updates...
[2026-08-31 21:57:18,531.531 INFO    ] 200
[2026-08-31 21:57:18,533.533 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:57:18,587.587 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:57:18,590.590 INFO    ] No update needed
[2026-08-31 21:57:18,592.592 INFO    ] Checking for camera pi updates...
[2026-08-31 21:57:18,633.633 INFO    ] 200
[2026-08-31 21:57:18,635.635 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:57:18,679.679 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:57:18,777.777 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:57:18,780.780 INFO    ] No camera update needed
[2026-08-31 21:57:18,782.782 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:57:18,785.785 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:57:18,790.790 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:57:18,795.795 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:57:20,836.836 INFO    ] ================================================
[2026-08-31 21:57:20,851.851 INFO    ] Launching Daemon at Mon Aug 31 21:57:20 IST 2026
[2026-08-31 21:57:20,861.861 INFO    ] ================================================
[2026-08-31 21:57:21,492.492 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:57:21
[2026-08-31 21:57:22,092.092 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:57:22,367.367 INFO    ] Initializing speech engine...
[2026-08-31 21:57:22,375.375 INFO    ] 2026-08-31 21:57:22
[2026-08-31 21:57:22,647.647 INFO    ] 2026-08-31 21:57:22
[2026-08-31 21:57:22,690.690 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:57:22,916.916 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:57:22,937.937 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:57:23,123.123 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:57:23,175.175 INFO    ] time= 31/08/2026 21:57:23
[2026-08-31 21:57:23,182.182 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:57:23,201.201 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:57:23,330.330 INFO    ] No existing commands found in stream
[2026-08-31 21:57:28,350.350 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:57:28,353.353 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-08-31 21:57:30,215.215 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 21:57:30,218.218 INFO    ] Checking for system updates...
[2026-08-31 21:57:30,254.254 INFO    ] 200
[2026-08-31 21:57:30,256.256 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:57:30,310.310 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:57:30,312.312 INFO    ] No update needed
[2026-08-31 21:57:30,314.314 INFO    ] Checking for camera pi updates...
[2026-08-31 21:57:30,349.349 INFO    ] 200
[2026-08-31 21:57:30,352.352 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:57:30,392.392 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:57:30,471.471 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:57:30,473.473 INFO    ] No camera update needed
[2026-08-31 21:57:30,475.475 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:57:30,478.478 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:57:30,483.483 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:57:30,488.488 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:57:32,532.532 INFO    ] ================================================
[2026-08-31 21:57:32,550.550 INFO    ] Launching Daemon at Mon Aug 31 21:57:32 IST 2026
[2026-08-31 21:57:32,561.561 INFO    ] ================================================
[2026-08-31 21:57:33,129.129 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:57:33
[2026-08-31 21:57:33,709.709 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:57:33,973.973 INFO    ] Initializing speech engine...
[2026-08-31 21:57:33,992.992 INFO    ] 2026-08-31 21:57:33
[2026-08-31 21:57:34,252.252 INFO    ] 2026-08-31 21:57:34
[2026-08-31 21:57:34,287.287 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:57:34,485.485 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:57:34,504.504 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:57:34,677.677 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:57:34,720.720 INFO    ] time= 31/08/2026 21:57:34
[2026-08-31 21:57:34,726.726 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:57:34,785.785 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:57:34,899.899 INFO    ] No existing commands found in stream
[2026-08-31 21:57:39,911.911 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:57:39,913.913 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-08-31 21:57:43,443.443 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 21:57:43,446.446 INFO    ] Checking for system updates...
[2026-08-31 21:57:43,482.482 INFO    ] 200
[2026-08-31 21:57:43,484.484 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:57:43,537.537 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:57:43,539.539 INFO    ] No update needed
[2026-08-31 21:57:43,542.542 INFO    ] Checking for camera pi updates...
[2026-08-31 21:57:43,577.577 INFO    ] 200
[2026-08-31 21:57:43,579.579 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:57:43,622.622 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:57:43,700.700 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:57:43,703.703 INFO    ] No camera update needed
[2026-08-31 21:57:43,705.705 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:57:43,707.707 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:57:43,713.713 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:57:43,718.718 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:57:45,758.758 INFO    ] ================================================
[2026-08-31 21:57:45,773.773 INFO    ] Launching Daemon at Mon Aug 31 21:57:45 IST 2026
[2026-08-31 21:57:45,783.783 INFO    ] ================================================
[2026-08-31 21:57:46,349.349 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:57:46
[2026-08-31 21:57:46,931.931 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:57:47,211.211 INFO    ] Initializing speech engine...
[2026-08-31 21:57:47,223.223 INFO    ] 2026-08-31 21:57:47
[2026-08-31 21:57:47,477.477 INFO    ] 2026-08-31 21:57:47
[2026-08-31 21:57:47,528.528 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:57:47,756.756 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:57:47,763.763 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:57:47,894.894 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:57:47,959.959 INFO    ] time= 31/08/2026 21:57:47
[2026-08-31 21:57:48,022.022 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:57:48,029.029 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:57:48,169.169 INFO    ] No existing commands found in stream
[2026-08-31 21:57:53,186.186 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:57:53,189.189 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-08-31 21:57:54,219.219 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 21:57:54,221.221 INFO    ] Checking for system updates...
[2026-08-31 21:57:54,260.260 INFO    ] 200
[2026-08-31 21:57:54,262.262 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:57:54,314.314 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:57:54,317.317 INFO    ] No update needed
[2026-08-31 21:57:54,320.320 INFO    ] Checking for camera pi updates...
[2026-08-31 21:57:54,355.355 INFO    ] 200
[2026-08-31 21:57:54,357.357 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:57:54,405.405 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:57:54,537.537 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:57:54,540.540 INFO    ] No camera update needed
[2026-08-31 21:57:54,542.542 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:57:54,545.545 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:57:54,550.550 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:57:54,555.555 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:57:56,596.596 INFO    ] ================================================
[2026-08-31 21:57:56,611.611 INFO    ] Launching Daemon at Mon Aug 31 21:57:56 IST 2026
[2026-08-31 21:57:56,621.621 INFO    ] ================================================
[2026-08-31 21:57:57,192.192 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:57:57
[2026-08-31 21:57:57,790.790 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:57:58,050.050 INFO    ] Initializing speech engine...
[2026-08-31 21:57:58,063.063 INFO    ] 2026-08-31 21:57:58
[2026-08-31 21:57:58,342.342 INFO    ] 2026-08-31 21:57:58
[2026-08-31 21:57:58,377.377 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:57:58,589.589 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:57:58,642.642 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:57:58,812.812 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:57:58,861.861 INFO    ] time= 31/08/2026 21:57:58
[2026-08-31 21:57:58,910.910 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:57:58,955.955 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:57:59,089.089 INFO    ] No existing commands found in stream
[2026-08-31 21:58:04,119.119 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:58:04,122.122 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-08-31 21:58:08,131.131 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 21:58:08,134.134 INFO    ] Checking for system updates...
[2026-08-31 21:58:08,175.175 INFO    ] 200
[2026-08-31 21:58:08,178.178 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:58:08,230.230 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:58:08,233.233 INFO    ] No update needed
[2026-08-31 21:58:08,235.235 INFO    ] Checking for camera pi updates...
[2026-08-31 21:58:08,273.273 INFO    ] 200
[2026-08-31 21:58:08,276.276 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:58:08,318.318 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:58:08,503.503 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:58:08,505.505 INFO    ] No camera update needed
[2026-08-31 21:58:08,508.508 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:58:08,511.511 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:58:08,517.517 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:58:08,522.522 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:58:10,563.563 INFO    ] ================================================
[2026-08-31 21:58:10,578.578 INFO    ] Launching Daemon at Mon Aug 31 21:58:10 IST 2026
[2026-08-31 21:58:10,588.588 INFO    ] ================================================
[2026-08-31 21:58:11,214.214 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:58:11
[2026-08-31 21:58:11,866.866 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:58:12,164.164 INFO    ] Initializing speech engine...
[2026-08-31 21:58:12,178.178 INFO    ] 2026-08-31 21:58:12
[2026-08-31 21:58:12,461.461 INFO    ] 2026-08-31 21:58:12
[2026-08-31 21:58:12,499.499 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:58:12,781.781 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:58:12,790.790 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:58:12,973.973 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:58:12,991.991 INFO    ] time= 31/08/2026 21:58:12
[2026-08-31 21:58:13,013.013 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:58:13,039.039 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:58:13,160.160 INFO    ] No existing commands found in stream
[2026-08-31 21:58:18,191.191 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:58:18,194.194 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-08-31 21:58:20,246.246 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 21:58:20,249.249 INFO    ] Checking for system updates...
[2026-08-31 21:58:20,285.285 INFO    ] 200
[2026-08-31 21:58:20,288.288 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:58:20,346.346 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:58:20,349.349 INFO    ] No update needed
[2026-08-31 21:58:20,351.351 INFO    ] Checking for camera pi updates...
[2026-08-31 21:58:20,389.389 INFO    ] 200
[2026-08-31 21:58:20,392.392 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:58:20,441.441 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:58:20,523.523 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:58:20,525.525 INFO    ] No camera update needed
[2026-08-31 21:58:20,528.528 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:58:20,531.531 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:58:20,537.537 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:58:20,542.542 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:58:22,584.584 INFO    ] ================================================
[2026-08-31 21:58:22,599.599 INFO    ] Launching Daemon at Mon Aug 31 21:58:22 IST 2026
[2026-08-31 21:58:22,610.610 INFO    ] ================================================
[2026-08-31 21:58:23,184.184 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:58:23
[2026-08-31 21:58:23,769.769 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:58:24,024.024 INFO    ] Initializing speech engine...
[2026-08-31 21:58:24,030.030 INFO    ] 2026-08-31 21:58:24
[2026-08-31 21:58:24,318.318 INFO    ] 2026-08-31 21:58:24
[2026-08-31 21:58:24,355.355 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:58:24,571.571 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:58:24,584.584 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:58:24,793.793 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:58:24,815.815 INFO    ] time= 31/08/2026 21:58:24
[2026-08-31 21:58:24,879.879 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:58:24,933.933 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:58:25,081.081 INFO    ] No existing commands found in stream
[2026-08-31 21:58:30,111.111 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:58:30,114.114 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-08-31 21:58:34,483.483 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 21:58:34,486.486 INFO    ] Checking for system updates...
[2026-08-31 21:58:34,521.521 INFO    ] 200
[2026-08-31 21:58:34,523.523 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:58:34,576.576 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:58:34,579.579 INFO    ] No update needed
[2026-08-31 21:58:34,581.581 INFO    ] Checking for camera pi updates...
[2026-08-31 21:58:34,616.616 INFO    ] 200
[2026-08-31 21:58:34,619.619 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:58:34,663.663 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:58:34,758.758 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:58:34,761.761 INFO    ] No camera update needed
[2026-08-31 21:58:34,763.763 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:58:34,765.765 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:58:34,770.770 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:58:34,776.776 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:58:36,814.814 INFO    ] ================================================
[2026-08-31 21:58:36,830.830 INFO    ] Launching Daemon at Mon Aug 31 21:58:36 IST 2026
[2026-08-31 21:58:36,840.840 INFO    ] ================================================
[2026-08-31 21:58:37,439.439 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:58:37
[2026-08-31 21:58:38,090.090 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:58:38,386.386 INFO    ] Initializing speech engine...
[2026-08-31 21:58:38,400.400 INFO    ] 2026-08-31 21:58:38
[2026-08-31 21:58:38,674.674 INFO    ] 2026-08-31 21:58:38
[2026-08-31 21:58:38,717.717 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:58:38,944.944 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:58:38,951.951 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:58:39,175.175 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:58:39,211.211 INFO    ] time= 31/08/2026 21:58:39
[2026-08-31 21:58:39,229.229 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:58:39,258.258 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:58:39,365.365 INFO    ] No existing commands found in stream
[2026-08-31 21:58:44,388.388 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:58:44,392.392 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-08-31 21:58:45,617.617 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 21:58:45,620.620 INFO    ] Checking for system updates...
[2026-08-31 21:58:45,661.661 INFO    ] 200
[2026-08-31 21:58:45,664.664 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:58:45,722.722 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:58:45,724.724 INFO    ] No update needed
[2026-08-31 21:58:45,727.727 INFO    ] Checking for camera pi updates...
[2026-08-31 21:58:45,760.760 INFO    ] 200
[2026-08-31 21:58:45,762.762 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:58:45,802.802 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:58:45,903.903 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:58:45,905.905 INFO    ] No camera update needed
[2026-08-31 21:58:45,908.908 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:58:45,910.910 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:58:45,915.915 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:58:45,920.920 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:58:47,961.961 INFO    ] ================================================
[2026-08-31 21:58:47,976.976 INFO    ] Launching Daemon at Mon Aug 31 21:58:47 IST 2026
[2026-08-31 21:58:47,987.987 INFO    ] ================================================
[2026-08-31 21:58:48,559.559 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:58:48
[2026-08-31 21:58:49,141.141 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:58:49,390.390 INFO    ] Initializing speech engine...
[2026-08-31 21:58:49,416.416 INFO    ] 2026-08-31 21:58:49
[2026-08-31 21:58:49,663.663 INFO    ] 2026-08-31 21:58:49
[2026-08-31 21:58:49,698.698 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:58:49,949.949 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:58:49,958.958 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:58:50,090.090 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:58:50,137.137 INFO    ] time= 31/08/2026 21:58:50
[2026-08-31 21:58:50,181.181 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:58:50,223.223 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:58:50,371.371 INFO    ] No existing commands found in stream
[2026-08-31 21:58:55,386.386 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:58:55,388.388 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-08-31 21:58:57,911.911 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 21:58:57,914.914 INFO    ] Checking for system updates...
[2026-08-31 21:58:57,950.950 INFO    ] 200
[2026-08-31 21:58:57,953.953 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:58:58,005.005 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:58:58,007.007 INFO    ] No update needed
[2026-08-31 21:58:58,010.010 INFO    ] Checking for camera pi updates...
[2026-08-31 21:58:58,043.043 INFO    ] 200
[2026-08-31 21:58:58,046.046 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:58:58,101.101 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:58:58,187.187 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:58:58,190.190 INFO    ] No camera update needed
[2026-08-31 21:58:58,192.192 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:58:58,194.194 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:58:58,199.199 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:58:58,204.204 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:59:00,246.246 INFO    ] ================================================
[2026-08-31 21:59:00,261.261 INFO    ] Launching Daemon at Mon Aug 31 21:59:00 IST 2026
[2026-08-31 21:59:00,271.271 INFO    ] ================================================
[2026-08-31 21:59:00,836.836 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:59:00
[2026-08-31 21:59:01,555.555 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:59:01,906.906 INFO    ] Initializing speech engine...
[2026-08-31 21:59:01,921.921 INFO    ] 2026-08-31 21:59:01
[2026-08-31 21:59:02,230.230 INFO    ] 2026-08-31 21:59:02
[2026-08-31 21:59:02,293.293 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:59:02,481.481 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:59:02,491.491 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:59:02,687.687 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:59:02,693.693 INFO    ] time= 31/08/2026 21:59:02
[2026-08-31 21:59:02,699.699 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:59:02,744.744 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:59:02,902.902 INFO    ] No existing commands found in stream
[2026-08-31 21:59:07,913.913 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:59:07,916.916 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-08-31 21:59:11,048.048 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 21:59:11,051.051 INFO    ] Checking for system updates...
[2026-08-31 21:59:11,089.089 INFO    ] 200
[2026-08-31 21:59:11,092.092 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:59:11,144.144 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:59:11,147.147 INFO    ] No update needed
[2026-08-31 21:59:11,150.150 INFO    ] Checking for camera pi updates...
[2026-08-31 21:59:11,187.187 INFO    ] 200
[2026-08-31 21:59:11,190.190 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:59:11,231.231 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:59:11,323.323 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:59:11,326.326 INFO    ] No camera update needed
[2026-08-31 21:59:11,329.329 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:59:11,331.331 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:59:11,337.337 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:59:11,343.343 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:59:13,386.386 INFO    ] ================================================
[2026-08-31 21:59:13,400.400 INFO    ] Launching Daemon at Mon Aug 31 21:59:13 IST 2026
[2026-08-31 21:59:13,411.411 INFO    ] ================================================
[2026-08-31 21:59:13,976.976 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:59:13
[2026-08-31 21:59:14,556.556 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:59:14,817.817 INFO    ] Initializing speech engine...
[2026-08-31 21:59:14,836.836 INFO    ] 2026-08-31 21:59:14
[2026-08-31 21:59:15,086.086 INFO    ] 2026-08-31 21:59:15
[2026-08-31 21:59:15,152.152 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:59:15,383.383 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:59:15,388.388 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:59:15,578.578 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:59:15,632.632 INFO    ] time= 31/08/2026 21:59:15
[2026-08-31 21:59:15,655.655 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:59:15,661.661 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:59:15,811.811 INFO    ] No existing commands found in stream
[2026-08-31 21:59:20,833.833 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:59:20,836.836 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-08-31 21:59:24,885.885 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 21:59:24,888.888 INFO    ] Checking for system updates...
[2026-08-31 21:59:24,926.926 INFO    ] 200
[2026-08-31 21:59:24,929.929 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:59:24,981.981 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:59:24,983.983 INFO    ] No update needed
[2026-08-31 21:59:24,985.985 INFO    ] Checking for camera pi updates...
[2026-08-31 21:59:25,018.018 INFO    ] 200
[2026-08-31 21:59:25,021.021 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:59:25,061.061 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:59:25,148.148 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:59:25,150.150 INFO    ] No camera update needed
[2026-08-31 21:59:25,152.152 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:59:25,155.155 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:59:25,160.160 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:59:25,165.165 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:59:27,207.207 INFO    ] ================================================
[2026-08-31 21:59:27,223.223 INFO    ] Launching Daemon at Mon Aug 31 21:59:27 IST 2026
[2026-08-31 21:59:27,234.234 INFO    ] ================================================
[2026-08-31 21:59:27,805.805 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:59:27
[2026-08-31 21:59:28,387.387 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:59:28,655.655 INFO    ] Initializing speech engine...
[2026-08-31 21:59:28,665.665 INFO    ] 2026-08-31 21:59:28
[2026-08-31 21:59:28,915.915 INFO    ] 2026-08-31 21:59:28
[2026-08-31 21:59:28,982.982 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:59:29,134.134 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:59:29,151.151 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:59:29,350.350 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:59:29,383.383 INFO    ] time= 31/08/2026 21:59:29
[2026-08-31 21:59:29,437.437 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:59:29,486.486 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:59:29,627.627 INFO    ] No existing commands found in stream
[2026-08-31 21:59:34,647.647 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:59:34,650.650 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-08-31 21:59:35,285.285 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 21:59:35,288.288 INFO    ] Checking for system updates...
[2026-08-31 21:59:35,323.323 INFO    ] 200
[2026-08-31 21:59:35,326.326 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:59:35,381.381 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:59:35,383.383 INFO    ] No update needed
[2026-08-31 21:59:35,385.385 INFO    ] Checking for camera pi updates...
[2026-08-31 21:59:35,423.423 INFO    ] 200
[2026-08-31 21:59:35,425.425 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:59:35,466.466 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:59:35,544.544 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:59:35,546.546 INFO    ] No camera update needed
[2026-08-31 21:59:35,549.549 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:59:35,551.551 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:59:35,556.556 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:59:35,561.561 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:59:37,611.611 INFO    ] ================================================
[2026-08-31 21:59:37,626.626 INFO    ] Launching Daemon at Mon Aug 31 21:59:37 IST 2026
[2026-08-31 21:59:37,637.637 INFO    ] ================================================
[2026-08-31 21:59:38,202.202 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:59:38
[2026-08-31 21:59:38,784.784 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:59:39,055.055 INFO    ] Initializing speech engine...
[2026-08-31 21:59:39,064.064 INFO    ] 2026-08-31 21:59:39
[2026-08-31 21:59:39,312.312 INFO    ] 2026-08-31 21:59:39
[2026-08-31 21:59:39,346.346 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:59:39,521.521 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:59:39,534.534 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:59:39,677.677 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:59:39,685.685 INFO    ] time= 31/08/2026 21:59:39
[2026-08-31 21:59:39,692.692 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:59:39,744.744 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:59:39,870.870 INFO    ] No existing commands found in stream
[2026-08-31 21:59:44,895.895 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:59:44,898.898 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-08-31 21:59:46,223.223 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 21:59:46,225.225 INFO    ] Checking for system updates...
[2026-08-31 21:59:46,261.261 INFO    ] 200
[2026-08-31 21:59:46,263.263 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:59:46,318.318 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:59:46,320.320 INFO    ] No update needed
[2026-08-31 21:59:46,322.322 INFO    ] Checking for camera pi updates...
[2026-08-31 21:59:46,356.356 INFO    ] 200
[2026-08-31 21:59:46,358.358 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:59:46,399.399 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:59:46,482.482 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 21:59:46,485.485 INFO    ] No camera update needed
[2026-08-31 21:59:46,487.487 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:59:46,490.490 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:59:46,495.495 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:59:46,500.500 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:59:48,539.539 INFO    ] ================================================
[2026-08-31 21:59:48,555.555 INFO    ] Launching Daemon at Mon Aug 31 21:59:48 IST 2026
[2026-08-31 21:59:48,567.567 INFO    ] ================================================
[2026-08-31 21:59:49,136.136 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 21:59:49
[2026-08-31 21:59:49,722.722 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 21:59:49,971.971 INFO    ] Initializing speech engine...
[2026-08-31 21:59:49,986.986 INFO    ] 2026-08-31 21:59:49
[2026-08-31 21:59:50,253.253 INFO    ] 2026-08-31 21:59:50
[2026-08-31 21:59:50,288.288 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 21:59:50,489.489 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 21:59:50,547.547 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 21:59:50,689.689 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 21:59:50,706.706 INFO    ] time= 31/08/2026 21:59:50
[2026-08-31 21:59:50,760.760 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 21:59:50,814.814 INFO    ] Checking for existing commands in stream...
[2026-08-31 21:59:50,884.884 INFO    ] No existing commands found in stream
[2026-08-31 21:59:55,896.896 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 21:59:55,899.899 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-08-31 21:59:57,163.163 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 21:59:57,166.166 INFO    ] Checking for system updates...
[2026-08-31 21:59:57,202.202 INFO    ] 200
[2026-08-31 21:59:57,204.204 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:59:57,264.264 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:59:57,266.266 INFO    ] No update needed
[2026-08-31 21:59:57,269.269 INFO    ] Checking for camera pi updates...
[2026-08-31 21:59:57,302.302 INFO    ] 200
[2026-08-31 21:59:57,304.304 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 21:59:57,344.344 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 21:59:57,411.411 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 21:59:57,413.413 INFO    ] No camera update needed
[2026-08-31 21:59:57,415.415 INFO    ] Script finished. Safe exiting...
[2026-08-31 21:59:57,418.418 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 21:59:57,423.423 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 21:59:57,428.428 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 21:59:59,468.468 INFO    ] ================================================
[2026-08-31 21:59:59,484.484 INFO    ] Launching Daemon at Mon Aug 31 21:59:59 IST 2026
[2026-08-31 21:59:59,496.496 INFO    ] ================================================
[2026-08-31 22:00:00,060.060 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:00:00
[2026-08-31 22:00:00,643.643 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:00:00,914.914 INFO    ] Initializing speech engine...
[2026-08-31 22:00:00,921.921 INFO    ] 2026-08-31 22:00:00
[2026-08-31 22:00:01,179.179 INFO    ] 2026-08-31 22:00:01
[2026-08-31 22:00:01,255.255 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:00:01,493.493 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:00:01,514.514 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:00:01,851.851 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:00:01,855.855 INFO    ] time= 31/08/2026 22:00:01
[2026-08-31 22:00:02,095.095 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:00:02,110.110 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:00:02,250.250 INFO    ] No existing commands found in stream
[2026-08-31 22:00:07,323.323 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:00:07,363.363 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-08-31 22:00:10,064.064 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 22:00:10,067.067 INFO    ] Checking for system updates...
[2026-08-31 22:00:10,104.104 INFO    ] 200
[2026-08-31 22:00:10,106.106 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:00:10,160.160 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:00:10,162.162 INFO    ] No update needed
[2026-08-31 22:00:10,165.165 INFO    ] Checking for camera pi updates...
[2026-08-31 22:00:10,202.202 INFO    ] 200
[2026-08-31 22:00:10,205.205 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:00:10,246.246 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:00:10,338.338 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:00:10,341.341 INFO    ] No camera update needed
[2026-08-31 22:00:10,344.344 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:00:10,346.346 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:00:10,353.353 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:00:10,358.358 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:00:12,398.398 INFO    ] ================================================
[2026-08-31 22:00:12,414.414 INFO    ] Launching Daemon at Mon Aug 31 22:00:12 IST 2026
[2026-08-31 22:00:12,425.425 INFO    ] ================================================
[2026-08-31 22:00:12,993.993 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:00:12
[2026-08-31 22:00:13,577.577 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:00:13,845.845 INFO    ] Initializing speech engine...
[2026-08-31 22:00:13,854.854 INFO    ] 2026-08-31 22:00:13
[2026-08-31 22:00:14,100.100 INFO    ] 2026-08-31 22:00:14
[2026-08-31 22:00:14,135.135 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:00:14,391.391 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:00:14,396.396 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:00:14,619.619 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:00:14,656.656 INFO    ] time= 31/08/2026 22:00:14
[2026-08-31 22:00:14,672.672 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:00:14,682.682 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:00:14,818.818 INFO    ] No existing commands found in stream
[2026-08-31 22:00:19,851.851 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:00:19,854.854 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-08-31 22:00:23,618.618 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 22:00:23,620.620 INFO    ] Checking for system updates...
[2026-08-31 22:00:23,656.656 INFO    ] 200
[2026-08-31 22:00:23,659.659 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:00:23,711.711 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:00:23,713.713 INFO    ] No update needed
[2026-08-31 22:00:23,715.715 INFO    ] Checking for camera pi updates...
[2026-08-31 22:00:23,753.753 INFO    ] 200
[2026-08-31 22:00:23,755.755 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:00:23,799.799 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:00:23,977.977 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:00:23,980.980 INFO    ] No camera update needed
[2026-08-31 22:00:23,982.982 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:00:23,984.984 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:00:23,989.989 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:00:23,994.994 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:00:26,034.034 INFO    ] ================================================
[2026-08-31 22:00:26,050.050 INFO    ] Launching Daemon at Mon Aug 31 22:00:26 IST 2026
[2026-08-31 22:00:26,061.061 INFO    ] ================================================
[2026-08-31 22:00:26,626.626 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:00:26
[2026-08-31 22:00:27,209.209 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:00:27,477.477 INFO    ] Initializing speech engine...
[2026-08-31 22:00:27,484.484 INFO    ] 2026-08-31 22:00:27
[2026-08-31 22:00:27,747.747 INFO    ] 2026-08-31 22:00:27
[2026-08-31 22:00:27,783.783 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:00:27,979.979 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:00:28,018.018 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:00:28,178.178 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:00:28,226.226 INFO    ] time= 31/08/2026 22:00:28
[2026-08-31 22:00:28,280.280 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:00:28,313.313 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:00:28,459.459 INFO    ] No existing commands found in stream
[2026-08-31 22:00:33,474.474 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:00:33,477.477 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-08-31 22:00:35,629.629 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 22:00:35,632.632 INFO    ] Checking for system updates...
[2026-08-31 22:00:35,667.667 INFO    ] 200
[2026-08-31 22:00:35,670.670 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:00:35,728.728 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:00:35,730.730 INFO    ] No update needed
[2026-08-31 22:00:35,732.732 INFO    ] Checking for camera pi updates...
[2026-08-31 22:00:35,766.766 INFO    ] 200
[2026-08-31 22:00:35,769.769 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:00:35,809.809 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:00:35,891.891 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:00:35,893.893 INFO    ] No camera update needed
[2026-08-31 22:00:35,895.895 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:00:35,898.898 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:00:35,903.903 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:00:35,908.908 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:00:37,948.948 INFO    ] ================================================
[2026-08-31 22:00:37,964.964 INFO    ] Launching Daemon at Mon Aug 31 22:00:37 IST 2026
[2026-08-31 22:00:37,975.975 INFO    ] ================================================
[2026-08-31 22:00:38,555.555 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:00:38
[2026-08-31 22:00:39,154.154 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:00:39,432.432 INFO    ] Initializing speech engine...
[2026-08-31 22:00:39,440.440 INFO    ] 2026-08-31 22:00:39
[2026-08-31 22:00:39,700.700 INFO    ] 2026-08-31 22:00:39
[2026-08-31 22:00:39,751.751 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:00:39,980.980 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:00:39,986.986 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:00:40,230.230 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:00:40,246.246 INFO    ] time= 31/08/2026 22:00:40
[2026-08-31 22:00:40,263.263 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:00:40,281.281 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:00:40,395.395 INFO    ] No existing commands found in stream
[2026-08-31 22:00:45,410.410 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:00:45,413.413 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-08-31 22:00:48,844.844 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 22:00:48,847.847 INFO    ] Checking for system updates...
[2026-08-31 22:00:48,883.883 INFO    ] 200
[2026-08-31 22:00:48,886.886 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:00:48,939.939 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:00:48,942.942 INFO    ] No update needed
[2026-08-31 22:00:48,944.944 INFO    ] Checking for camera pi updates...
[2026-08-31 22:00:48,978.978 INFO    ] 200
[2026-08-31 22:00:48,981.981 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:00:49,026.026 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:00:49,108.108 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:00:49,110.110 INFO    ] No camera update needed
[2026-08-31 22:00:49,112.112 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:00:49,115.115 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:00:49,120.120 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:00:49,125.125 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:00:51,170.170 INFO    ] ================================================
[2026-08-31 22:00:51,186.186 INFO    ] Launching Daemon at Mon Aug 31 22:00:51 IST 2026
[2026-08-31 22:00:51,198.198 INFO    ] ================================================
[2026-08-31 22:00:51,792.792 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:00:51
[2026-08-31 22:00:52,376.376 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:00:52,648.648 INFO    ] Initializing speech engine...
[2026-08-31 22:00:52,657.657 INFO    ] 2026-08-31 22:00:52
[2026-08-31 22:00:52,908.908 INFO    ] 2026-08-31 22:00:52
[2026-08-31 22:00:52,942.942 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:00:53,203.203 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:00:53,212.212 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:00:53,348.348 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:00:53,390.390 INFO    ] time= 31/08/2026 22:00:53
[2026-08-31 22:00:53,429.429 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:00:53,485.485 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:00:53,626.626 INFO    ] No existing commands found in stream
[2026-08-31 22:00:58,648.648 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:00:58,651.651 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-08-31 22:01:00,987.987 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 22:01:00,990.990 INFO    ] Checking for system updates...
[2026-08-31 22:01:01,036.036 INFO    ] 200
[2026-08-31 22:01:01,039.039 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-08-31 22:01:01,042.042 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-08-31 22:01:01,045.045 INFO    ] Checking for camera pi updates...
[2026-08-31 22:01:01,174.174 INFO    ] 200
[2026-08-31 22:01:01,189.189 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-08-31 22:01:01,208.208 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-08-31 22:01:01,220.220 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:01:01,224.224 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:01:01,236.236 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:01:01,247.247 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:01:03,292.292 INFO    ] ================================================
[2026-08-31 22:01:03,307.307 INFO    ] Launching Daemon at Mon Aug 31 22:01:03 IST 2026
[2026-08-31 22:01:03,318.318 INFO    ] ================================================
[2026-08-31 22:01:03,887.887 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:01:03
[2026-08-31 22:01:04,475.475 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:01:04,734.734 INFO    ] Initializing speech engine...
[2026-08-31 22:01:04,749.749 INFO    ] 2026-08-31 22:01:04
[2026-08-31 22:01:05,036.036 INFO    ] 2026-08-31 22:01:05
[2026-08-31 22:01:05,075.075 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:01:05,301.301 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:01:05,319.319 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:01:05,530.530 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:01:05,538.538 INFO    ] time= 31/08/2026 22:01:05
[2026-08-31 22:01:05,592.592 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:01:05,652.652 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:01:05,741.741 INFO    ] No existing commands found in stream
[2026-08-31 22:01:10,752.752 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:01:10,755.755 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-08-31 22:01:13,027.027 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 22:01:13,030.030 INFO    ] Checking for system updates...
[2026-08-31 22:01:13,066.066 INFO    ] 200
[2026-08-31 22:01:13,068.068 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:01:13,121.121 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:01:13,123.123 INFO    ] No update needed
[2026-08-31 22:01:13,126.126 INFO    ] Checking for camera pi updates...
[2026-08-31 22:01:13,159.159 INFO    ] 200
[2026-08-31 22:01:13,161.161 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:01:13,202.202 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:01:13,286.286 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:01:13,289.289 INFO    ] No camera update needed
[2026-08-31 22:01:13,294.294 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:01:13,296.296 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:01:13,303.303 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:01:13,308.308 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:01:15,348.348 INFO    ] ================================================
[2026-08-31 22:01:15,363.363 INFO    ] Launching Daemon at Mon Aug 31 22:01:15 IST 2026
[2026-08-31 22:01:15,374.374 INFO    ] ================================================
[2026-08-31 22:01:15,956.956 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:01:15
[2026-08-31 22:01:16,556.556 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:01:16,834.834 INFO    ] Initializing speech engine...
[2026-08-31 22:01:16,844.844 INFO    ] 2026-08-31 22:01:16
[2026-08-31 22:01:17,104.104 INFO    ] 2026-08-31 22:01:17
[2026-08-31 22:01:17,135.135 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:01:17,382.382 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:01:17,391.391 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:01:17,526.526 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:01:17,591.591 INFO    ] time= 31/08/2026 22:01:17
[2026-08-31 22:01:17,646.646 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:01:17,661.661 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:01:17,804.804 INFO    ] No existing commands found in stream
[2026-08-31 22:01:22,820.820 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:01:22,823.823 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-08-31 22:01:26,486.486 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 22:01:26,489.489 INFO    ] Checking for system updates...
[2026-08-31 22:01:26,529.529 INFO    ] 200
[2026-08-31 22:01:26,531.531 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:01:26,585.585 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:01:26,588.588 INFO    ] No update needed
[2026-08-31 22:01:26,590.590 INFO    ] Checking for camera pi updates...
[2026-08-31 22:01:26,628.628 INFO    ] 200
[2026-08-31 22:01:26,631.631 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:01:26,671.671 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:01:26,739.739 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:01:26,741.741 INFO    ] No camera update needed
[2026-08-31 22:01:26,744.744 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:01:26,746.746 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:01:26,752.752 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:01:26,757.757 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:01:28,796.796 INFO    ] ================================================
[2026-08-31 22:01:28,811.811 INFO    ] Launching Daemon at Mon Aug 31 22:01:28 IST 2026
[2026-08-31 22:01:28,822.822 INFO    ] ================================================
[2026-08-31 22:01:29,408.408 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:01:29
[2026-08-31 22:01:30,005.005 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:01:30,282.282 INFO    ] Initializing speech engine...
[2026-08-31 22:01:30,289.289 INFO    ] 2026-08-31 22:01:30
[2026-08-31 22:01:30,549.549 INFO    ] 2026-08-31 22:01:30
[2026-08-31 22:01:30,602.602 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:01:30,828.828 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:01:30,833.833 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:01:30,965.965 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:01:31,015.015 INFO    ] time= 31/08/2026 22:01:30
[2026-08-31 22:01:31,075.075 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:01:31,097.097 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:01:31,213.213 INFO    ] No existing commands found in stream
[2026-08-31 22:01:36,247.247 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:01:36,250.250 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-08-31 22:01:37,823.823 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 22:01:37,825.825 INFO    ] Checking for system updates...
[2026-08-31 22:01:37,865.865 INFO    ] 200
[2026-08-31 22:01:37,867.867 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:01:37,920.920 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:01:37,923.923 INFO    ] No update needed
[2026-08-31 22:01:37,925.925 INFO    ] Checking for camera pi updates...
[2026-08-31 22:01:37,962.962 INFO    ] 200
[2026-08-31 22:01:37,965.965 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:01:38,006.006 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:01:38,093.093 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:01:38,095.095 INFO    ] No camera update needed
[2026-08-31 22:01:38,098.098 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:01:38,100.100 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:01:38,105.105 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:01:38,111.111 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:01:40,153.153 INFO    ] ================================================
[2026-08-31 22:01:40,169.169 INFO    ] Launching Daemon at Mon Aug 31 22:01:40 IST 2026
[2026-08-31 22:01:40,180.180 INFO    ] ================================================
[2026-08-31 22:01:40,765.765 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:01:40
[2026-08-31 22:01:41,366.366 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:01:41,645.645 INFO    ] Initializing speech engine...
[2026-08-31 22:01:41,651.651 INFO    ] 2026-08-31 22:01:41
[2026-08-31 22:01:41,912.912 INFO    ] 2026-08-31 22:01:41
[2026-08-31 22:01:41,966.966 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:01:42,216.216 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:01:42,222.222 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:01:42,415.415 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:01:42,456.456 INFO    ] time= 31/08/2026 22:01:42
[2026-08-31 22:01:42,462.462 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:01:42,487.487 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:01:42,615.615 INFO    ] No existing commands found in stream
[2026-08-31 22:01:47,630.630 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:01:47,633.633 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-08-31 22:01:51,726.726 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 22:01:51,729.729 INFO    ] Checking for system updates...
[2026-08-31 22:01:51,765.765 INFO    ] 200
[2026-08-31 22:01:51,767.767 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:01:51,820.820 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:01:51,822.822 INFO    ] No update needed
[2026-08-31 22:01:51,825.825 INFO    ] Checking for camera pi updates...
[2026-08-31 22:01:51,858.858 INFO    ] 200
[2026-08-31 22:01:51,860.860 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:01:51,900.900 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:01:51,981.981 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:01:51,984.984 INFO    ] No camera update needed
[2026-08-31 22:01:51,986.986 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:01:51,988.988 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:01:51,994.994 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:01:51,999.999 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:01:54,039.039 INFO    ] ================================================
[2026-08-31 22:01:54,054.054 INFO    ] Launching Daemon at Mon Aug 31 22:01:54 IST 2026
[2026-08-31 22:01:54,065.065 INFO    ] ================================================
[2026-08-31 22:01:54,646.646 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:01:54
[2026-08-31 22:01:55,245.245 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:01:55,521.521 INFO    ] Initializing speech engine...
[2026-08-31 22:01:55,530.530 INFO    ] 2026-08-31 22:01:55
[2026-08-31 22:01:55,790.790 INFO    ] 2026-08-31 22:01:55
[2026-08-31 22:01:55,840.840 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:01:56,063.063 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:01:56,073.073 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:01:56,206.206 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:01:56,271.271 INFO    ] time= 31/08/2026 22:01:56
[2026-08-31 22:01:56,331.331 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:01:56,340.340 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:01:56,460.460 INFO    ] No existing commands found in stream
[2026-08-31 22:02:01,485.485 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:02:01,489.489 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-08-31 22:02:02,537.537 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 22:02:02,541.541 INFO    ] Checking for system updates...
[2026-08-31 22:02:02,580.580 INFO    ] 200
[2026-08-31 22:02:02,583.583 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:02:02,644.644 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:02:02,647.647 INFO    ] No update needed
[2026-08-31 22:02:02,651.651 INFO    ] Checking for camera pi updates...
[2026-08-31 22:02:02,687.687 INFO    ] 200
[2026-08-31 22:02:02,690.690 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:02:02,743.743 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:02:02,843.843 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:02:02,846.846 INFO    ] No camera update needed
[2026-08-31 22:02:02,849.849 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:02:02,852.852 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:02:02,858.858 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:02:02,864.864 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:02:04,905.905 INFO    ] ================================================
[2026-08-31 22:02:04,920.920 INFO    ] Launching Daemon at Mon Aug 31 22:02:04 IST 2026
[2026-08-31 22:02:04,931.931 INFO    ] ================================================
[2026-08-31 22:02:05,500.500 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:02:05
[2026-08-31 22:02:06,102.102 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:02:06,359.359 INFO    ] Initializing speech engine...
[2026-08-31 22:02:06,378.378 INFO    ] 2026-08-31 22:02:06
[2026-08-31 22:02:06,625.625 INFO    ] 2026-08-31 22:02:06
[2026-08-31 22:02:06,659.659 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:02:06,869.869 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:02:06,872.872 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:02:07,055.055 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:02:07,110.110 INFO    ] time= 31/08/2026 22:02:07
[2026-08-31 22:02:07,160.160 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:02:07,186.186 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:02:07,331.331 INFO    ] No existing commands found in stream
[2026-08-31 22:02:12,346.346 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:02:12,349.349 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-08-31 22:02:15,136.136 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 22:02:15,138.138 INFO    ] Checking for system updates...
[2026-08-31 22:02:15,177.177 INFO    ] 200
[2026-08-31 22:02:15,180.180 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:02:15,237.237 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:02:15,240.240 INFO    ] No update needed
[2026-08-31 22:02:15,242.242 INFO    ] Checking for camera pi updates...
[2026-08-31 22:02:15,277.277 INFO    ] 200
[2026-08-31 22:02:15,280.280 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:02:15,321.321 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:02:15,409.409 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:02:15,411.411 INFO    ] No camera update needed
[2026-08-31 22:02:15,414.414 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:02:15,416.416 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:02:15,422.422 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:02:15,428.428 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:02:17,470.470 INFO    ] ================================================
[2026-08-31 22:02:17,485.485 INFO    ] Launching Daemon at Mon Aug 31 22:02:17 IST 2026
[2026-08-31 22:02:17,496.496 INFO    ] ================================================
[2026-08-31 22:02:18,075.075 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:02:18
[2026-08-31 22:02:18,681.681 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:02:18,951.951 INFO    ] Initializing speech engine...
[2026-08-31 22:02:18,960.960 INFO    ] 2026-08-31 22:02:18
[2026-08-31 22:02:19,214.214 INFO    ] 2026-08-31 22:02:19
[2026-08-31 22:02:19,255.255 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:02:19,506.506 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:02:19,515.515 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:02:19,731.731 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:02:19,780.780 INFO    ] time= 31/08/2026 22:02:19
[2026-08-31 22:02:19,786.786 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:02:19,804.804 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:02:19,934.934 INFO    ] No existing commands found in stream
[2026-08-31 22:02:24,948.948 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:02:24,951.951 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-08-31 22:02:27,781.781 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 22:02:27,783.783 INFO    ] Checking for system updates...
[2026-08-31 22:02:27,819.819 INFO    ] 200
[2026-08-31 22:02:27,821.821 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:02:27,877.877 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:02:27,880.880 INFO    ] No update needed
[2026-08-31 22:02:27,882.882 INFO    ] Checking for camera pi updates...
[2026-08-31 22:02:27,915.915 INFO    ] 200
[2026-08-31 22:02:27,918.918 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:02:27,961.961 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:02:28,149.149 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:02:28,151.151 INFO    ] No camera update needed
[2026-08-31 22:02:28,154.154 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:02:28,156.156 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:02:28,161.161 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:02:28,167.167 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:02:30,208.208 INFO    ] ================================================
[2026-08-31 22:02:30,223.223 INFO    ] Launching Daemon at Mon Aug 31 22:02:30 IST 2026
[2026-08-31 22:02:30,235.235 INFO    ] ================================================
[2026-08-31 22:02:30,821.821 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:02:30
[2026-08-31 22:02:31,489.489 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:02:31,815.815 INFO    ] Initializing speech engine...
[2026-08-31 22:02:31,830.830 INFO    ] 2026-08-31 22:02:31
[2026-08-31 22:02:32,104.104 INFO    ] 2026-08-31 22:02:32
[2026-08-31 22:02:32,172.172 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:02:32,340.340 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:02:32,355.355 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:02:32,525.525 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:02:32,531.531 INFO    ] time= 31/08/2026 22:02:32
[2026-08-31 22:02:32,538.538 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:02:32,565.565 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:02:32,691.691 INFO    ] No existing commands found in stream
[2026-08-31 22:02:37,716.716 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:02:37,719.719 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-08-31 22:02:38,977.977 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 22:02:38,980.980 INFO    ] Checking for system updates...
[2026-08-31 22:02:39,019.019 INFO    ] 200
[2026-08-31 22:02:39,022.022 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:02:39,073.073 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:02:39,076.076 INFO    ] No update needed
[2026-08-31 22:02:39,078.078 INFO    ] Checking for camera pi updates...
[2026-08-31 22:02:39,111.111 INFO    ] 200
[2026-08-31 22:02:39,114.114 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:02:39,154.154 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:02:39,233.233 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:02:39,235.235 INFO    ] No camera update needed
[2026-08-31 22:02:39,237.237 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:02:39,240.240 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:02:39,245.245 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:02:39,250.250 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:02:41,290.290 INFO    ] ================================================
[2026-08-31 22:02:41,306.306 INFO    ] Launching Daemon at Mon Aug 31 22:02:41 IST 2026
[2026-08-31 22:02:41,316.316 INFO    ] ================================================
[2026-08-31 22:02:41,925.925 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:02:41
[2026-08-31 22:02:42,523.523 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:02:42,796.796 INFO    ] Initializing speech engine...
[2026-08-31 22:02:42,804.804 INFO    ] 2026-08-31 22:02:42
[2026-08-31 22:02:43,054.054 INFO    ] 2026-08-31 22:02:43
[2026-08-31 22:02:43,090.090 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:02:43,282.282 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:02:43,321.321 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:02:43,482.482 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:02:43,521.521 INFO    ] time= 31/08/2026 22:02:43
[2026-08-31 22:02:43,581.581 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:02:43,612.612 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:02:43,735.735 INFO    ] No existing commands found in stream
[2026-08-31 22:02:48,765.765 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:02:48,769.769 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-08-31 22:02:49,651.651 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 22:02:49,654.654 INFO    ] Checking for system updates...
[2026-08-31 22:02:49,692.692 INFO    ] 200
[2026-08-31 22:02:49,695.695 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:02:49,746.746 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:02:49,749.749 INFO    ] No update needed
[2026-08-31 22:02:49,752.752 INFO    ] Checking for camera pi updates...
[2026-08-31 22:02:49,785.785 INFO    ] 200
[2026-08-31 22:02:49,787.787 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:02:49,828.828 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:02:49,909.909 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:02:49,911.911 INFO    ] No camera update needed
[2026-08-31 22:02:49,913.913 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:02:49,916.916 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:02:49,921.921 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:02:49,926.926 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:02:51,968.968 INFO    ] ================================================
[2026-08-31 22:02:51,983.983 INFO    ] Launching Daemon at Mon Aug 31 22:02:51 IST 2026
[2026-08-31 22:02:51,993.993 INFO    ] ================================================
[2026-08-31 22:02:52,556.556 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:02:52
[2026-08-31 22:02:53,138.138 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:02:53,389.389 INFO    ] Initializing speech engine...
[2026-08-31 22:02:53,412.412 INFO    ] 2026-08-31 22:02:53
[2026-08-31 22:02:53,665.665 INFO    ] 2026-08-31 22:02:53
[2026-08-31 22:02:53,701.701 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:02:53,900.900 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:02:53,928.928 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:02:54,107.107 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:02:54,148.148 INFO    ] time= 31/08/2026 22:02:54
[2026-08-31 22:02:54,207.207 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:02:54,242.242 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:02:54,368.368 INFO    ] No existing commands found in stream
[2026-08-31 22:02:59,399.399 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:02:59,401.401 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-08-31 22:03:01,908.908 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 22:03:01,911.911 INFO    ] Checking for system updates...
[2026-08-31 22:03:01,957.957 INFO    ] 200
[2026-08-31 22:03:01,960.960 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:03:02,020.020 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:03:02,027.027 INFO    ] No update needed
[2026-08-31 22:03:02,032.032 INFO    ] Checking for camera pi updates...
[2026-08-31 22:03:02,078.078 INFO    ] 200
[2026-08-31 22:03:02,081.081 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:03:02,140.140 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:03:02,229.229 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:03:02,232.232 INFO    ] No camera update needed
[2026-08-31 22:03:02,235.235 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:03:02,238.238 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:03:02,244.244 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:03:02,250.250 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:03:04,295.295 INFO    ] ================================================
[2026-08-31 22:03:04,311.311 INFO    ] Launching Daemon at Mon Aug 31 22:03:04 IST 2026
[2026-08-31 22:03:04,322.322 INFO    ] ================================================
[2026-08-31 22:03:04,886.886 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:03:04
[2026-08-31 22:03:05,465.465 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:03:05,712.712 INFO    ] Initializing speech engine...
[2026-08-31 22:03:05,724.724 INFO    ] 2026-08-31 22:03:05
[2026-08-31 22:03:06,014.014 INFO    ] 2026-08-31 22:03:05
[2026-08-31 22:03:06,060.060 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:03:06,258.258 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:03:06,273.273 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:03:06,434.434 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:03:06,442.442 INFO    ] time= 31/08/2026 22:03:06
[2026-08-31 22:03:06,450.450 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:03:06,493.493 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:03:06,602.602 INFO    ] No existing commands found in stream
[2026-08-31 22:03:11,632.632 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:03:11,635.635 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-08-31 22:03:15,546.546 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 22:03:15,549.549 INFO    ] Checking for system updates...
[2026-08-31 22:03:15,585.585 INFO    ] 200
[2026-08-31 22:03:15,587.587 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:03:15,641.641 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:03:15,643.643 INFO    ] No update needed
[2026-08-31 22:03:15,646.646 INFO    ] Checking for camera pi updates...
[2026-08-31 22:03:15,683.683 INFO    ] 200
[2026-08-31 22:03:15,685.685 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:03:15,725.725 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:03:15,805.805 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:03:15,808.808 INFO    ] No camera update needed
[2026-08-31 22:03:15,810.810 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:03:15,812.812 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:03:15,818.818 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:03:15,822.822 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:03:17,867.867 INFO    ] ================================================
[2026-08-31 22:03:17,882.882 INFO    ] Launching Daemon at Mon Aug 31 22:03:17 IST 2026
[2026-08-31 22:03:17,893.893 INFO    ] ================================================
[2026-08-31 22:03:18,465.465 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:03:18
[2026-08-31 22:03:19,062.062 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:03:19,339.339 INFO    ] Initializing speech engine...
[2026-08-31 22:03:19,348.348 INFO    ] 2026-08-31 22:03:19
[2026-08-31 22:03:19,607.607 INFO    ] 2026-08-31 22:03:19
[2026-08-31 22:03:19,664.664 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:03:19,896.896 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:03:19,900.900 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:03:20,056.056 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:03:20,121.121 INFO    ] time= 31/08/2026 22:03:20
[2026-08-31 22:03:20,173.173 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:03:20,179.179 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:03:20,330.330 INFO    ] No existing commands found in stream
[2026-08-31 22:03:25,350.350 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:03:25,353.353 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-08-31 22:03:27,009.009 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 22:03:27,012.012 INFO    ] Checking for system updates...
[2026-08-31 22:03:27,049.049 INFO    ] 200
[2026-08-31 22:03:27,052.052 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:03:27,105.105 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:03:27,107.107 INFO    ] No update needed
[2026-08-31 22:03:27,110.110 INFO    ] Checking for camera pi updates...
[2026-08-31 22:03:27,145.145 INFO    ] 200
[2026-08-31 22:03:27,147.147 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:03:27,187.187 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:03:27,262.262 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:03:27,265.265 INFO    ] No camera update needed
[2026-08-31 22:03:27,267.267 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:03:27,269.269 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:03:27,275.275 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:03:27,280.280 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:03:29,320.320 INFO    ] ================================================
[2026-08-31 22:03:29,336.336 INFO    ] Launching Daemon at Mon Aug 31 22:03:29 IST 2026
[2026-08-31 22:03:29,348.348 INFO    ] ================================================
[2026-08-31 22:03:30,033.033 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:03:30
[2026-08-31 22:03:30,697.697 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:03:30,998.998 INFO    ] Initializing speech engine...
[2026-08-31 22:03:31,005.005 INFO    ] 2026-08-31 22:03:30
[2026-08-31 22:03:31,290.290 INFO    ] 2026-08-31 22:03:31
[2026-08-31 22:03:31,327.327 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:03:31,730.730 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:03:31,797.797 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:03:31,944.944 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:03:32,014.014 INFO    ] time= 31/08/2026 22:03:31
[2026-08-31 22:03:32,062.062 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:03:32,128.128 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:03:32,259.259 INFO    ] No existing commands found in stream
[2026-08-31 22:03:37,290.290 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:03:37,294.294 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-08-31 22:03:39,462.462 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 22:03:39,465.465 INFO    ] Checking for system updates...
[2026-08-31 22:03:39,505.505 INFO    ] 200
[2026-08-31 22:03:39,509.509 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:03:39,582.582 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:03:39,585.585 INFO    ] No update needed
[2026-08-31 22:03:39,588.588 INFO    ] Checking for camera pi updates...
[2026-08-31 22:03:39,625.625 INFO    ] 200
[2026-08-31 22:03:39,628.628 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:03:39,674.674 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:03:39,760.760 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:03:39,763.763 INFO    ] No camera update needed
[2026-08-31 22:03:39,767.767 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:03:39,770.770 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:03:39,777.777 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:03:39,783.783 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:03:41,825.825 INFO    ] ================================================
[2026-08-31 22:03:41,840.840 INFO    ] Launching Daemon at Mon Aug 31 22:03:41 IST 2026
[2026-08-31 22:03:41,851.851 INFO    ] ================================================
[2026-08-31 22:03:42,419.419 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:03:42
[2026-08-31 22:03:43,028.028 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:03:43,287.287 INFO    ] Initializing speech engine...
[2026-08-31 22:03:43,302.302 INFO    ] 2026-08-31 22:03:43
[2026-08-31 22:03:43,593.593 INFO    ] 2026-08-31 22:03:43
[2026-08-31 22:03:43,628.628 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:03:43,825.825 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:03:43,882.882 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:03:44,120.120 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:03:44,151.151 INFO    ] time= 31/08/2026 22:03:44
[2026-08-31 22:03:44,167.167 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:03:44,176.176 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:03:44,310.310 INFO    ] No existing commands found in stream
[2026-08-31 22:03:49,326.326 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:03:49,329.329 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-08-31 22:03:52,313.313 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 22:03:52,315.315 INFO    ] Checking for system updates...
[2026-08-31 22:03:52,354.354 INFO    ] 200
[2026-08-31 22:03:52,357.357 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:03:52,409.409 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:03:52,412.412 INFO    ] No update needed
[2026-08-31 22:03:52,414.414 INFO    ] Checking for camera pi updates...
[2026-08-31 22:03:52,448.448 INFO    ] 200
[2026-08-31 22:03:52,450.450 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:03:52,495.495 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:03:52,576.576 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:03:52,579.579 INFO    ] No camera update needed
[2026-08-31 22:03:52,581.581 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:03:52,583.583 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:03:52,589.589 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:03:52,594.594 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:03:54,635.635 INFO    ] ================================================
[2026-08-31 22:03:54,650.650 INFO    ] Launching Daemon at Mon Aug 31 22:03:54 IST 2026
[2026-08-31 22:03:54,661.661 INFO    ] ================================================
[2026-08-31 22:03:55,228.228 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:03:55
[2026-08-31 22:03:55,809.809 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:03:56,077.077 INFO    ] Initializing speech engine...
[2026-08-31 22:03:56,086.086 INFO    ] 2026-08-31 22:03:56
[2026-08-31 22:03:56,331.331 INFO    ] 2026-08-31 22:03:56
[2026-08-31 22:03:56,366.366 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:03:56,562.562 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:03:56,619.619 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:03:56,800.800 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:03:56,856.856 INFO    ] time= 31/08/2026 22:03:56
[2026-08-31 22:03:56,896.896 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:03:56,902.902 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:03:56,964.964 INFO    ] No existing commands found in stream
[2026-08-31 22:04:01,976.976 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:04:01,979.979 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-08-31 22:04:03,090.090 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 22:04:03,093.093 INFO    ] Checking for system updates...
[2026-08-31 22:04:03,133.133 INFO    ] 200
[2026-08-31 22:04:03,135.135 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:04:03,188.188 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:04:03,191.191 INFO    ] No update needed
[2026-08-31 22:04:03,193.193 INFO    ] Checking for camera pi updates...
[2026-08-31 22:04:03,228.228 INFO    ] 200
[2026-08-31 22:04:03,230.230 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:04:03,270.270 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:04:03,365.365 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:04:03,367.367 INFO    ] No camera update needed
[2026-08-31 22:04:03,370.370 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:04:03,372.372 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:04:03,378.378 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:04:03,383.383 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:04:05,424.424 INFO    ] ================================================
[2026-08-31 22:04:05,449.449 INFO    ] Launching Daemon at Mon Aug 31 22:04:05 IST 2026
[2026-08-31 22:04:05,460.460 INFO    ] ================================================
[2026-08-31 22:04:06,078.078 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:04:06
[2026-08-31 22:04:06,660.660 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:04:06,910.910 INFO    ] Initializing speech engine...
[2026-08-31 22:04:06,929.929 INFO    ] 2026-08-31 22:04:06
[2026-08-31 22:04:07,187.187 INFO    ] 2026-08-31 22:04:07
[2026-08-31 22:04:07,221.221 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:04:07,420.420 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:04:07,427.427 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:04:07,559.559 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:04:07,565.565 INFO    ] time= 31/08/2026 22:04:07
[2026-08-31 22:04:07,601.601 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:04:07,633.633 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:04:07,732.732 INFO    ] No existing commands found in stream
[2026-08-31 22:04:12,757.757 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:04:12,760.760 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-08-31 22:04:14,789.789 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 22:04:14,791.791 INFO    ] Checking for system updates...
[2026-08-31 22:04:14,826.826 INFO    ] 200
[2026-08-31 22:04:14,829.829 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:04:14,881.881 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:04:14,883.883 INFO    ] No update needed
[2026-08-31 22:04:14,886.886 INFO    ] Checking for camera pi updates...
[2026-08-31 22:04:14,919.919 INFO    ] 200
[2026-08-31 22:04:14,921.921 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:04:14,966.966 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:04:15,031.031 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:04:15,033.033 INFO    ] No camera update needed
[2026-08-31 22:04:15,035.035 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:04:15,038.038 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:04:15,043.043 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:04:15,048.048 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:04:17,090.090 INFO    ] ================================================
[2026-08-31 22:04:17,106.106 INFO    ] Launching Daemon at Mon Aug 31 22:04:17 IST 2026
[2026-08-31 22:04:17,117.117 INFO    ] ================================================
[2026-08-31 22:04:17,757.757 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:04:17
[2026-08-31 22:04:18,424.424 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:04:18,719.719 INFO    ] Initializing speech engine...
[2026-08-31 22:04:18,730.730 INFO    ] 2026-08-31 22:04:18
[2026-08-31 22:04:19,002.002 INFO    ] 2026-08-31 22:04:18
[2026-08-31 22:04:19,052.052 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:04:19,274.274 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:04:19,284.284 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:04:19,416.416 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:04:19,466.466 INFO    ] time= 31/08/2026 22:04:19
[2026-08-31 22:04:19,526.526 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:04:19,549.549 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:04:19,616.616 INFO    ] No existing commands found in stream
[2026-08-31 22:04:24,651.651 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:04:24,654.654 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-08-31 22:04:27,780.780 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 22:04:27,783.783 INFO    ] Checking for system updates...
[2026-08-31 22:04:27,819.819 INFO    ] 200
[2026-08-31 22:04:27,821.821 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:04:27,874.874 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:04:27,877.877 INFO    ] No update needed
[2026-08-31 22:04:27,880.880 INFO    ] Checking for camera pi updates...
[2026-08-31 22:04:27,916.916 INFO    ] 200
[2026-08-31 22:04:27,919.919 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:04:27,959.959 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:04:28,029.029 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:04:28,032.032 INFO    ] No camera update needed
[2026-08-31 22:04:28,034.034 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:04:28,036.036 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:04:28,042.042 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:04:28,047.047 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:04:30,089.089 INFO    ] ================================================
[2026-08-31 22:04:30,108.108 INFO    ] Launching Daemon at Mon Aug 31 22:04:30 IST 2026
[2026-08-31 22:04:30,118.118 INFO    ] ================================================
[2026-08-31 22:04:30,759.759 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:04:30
[2026-08-31 22:04:31,428.428 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:04:31,725.725 INFO    ] Initializing speech engine...
[2026-08-31 22:04:31,735.735 INFO    ] 2026-08-31 22:04:31
[2026-08-31 22:04:32,018.018 INFO    ] 2026-08-31 22:04:32
[2026-08-31 22:04:32,063.063 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:04:32,321.321 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:04:32,358.358 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:04:32,582.582 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:04:32,590.590 INFO    ] time= 31/08/2026 22:04:32
[2026-08-31 22:04:32,612.612 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:04:32,640.640 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:04:32,767.767 INFO    ] No existing commands found in stream
[2026-08-31 22:04:37,798.798 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:04:37,801.801 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-08-31 22:04:39,825.825 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 22:04:39,828.828 INFO    ] Checking for system updates...
[2026-08-31 22:04:39,869.869 INFO    ] 200
[2026-08-31 22:04:39,871.871 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:04:39,930.930 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:04:39,932.932 INFO    ] No update needed
[2026-08-31 22:04:39,935.935 INFO    ] Checking for camera pi updates...
[2026-08-31 22:04:39,972.972 INFO    ] 200
[2026-08-31 22:04:39,974.974 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:04:40,014.014 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:04:40,104.104 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:04:40,106.106 INFO    ] No camera update needed
[2026-08-31 22:04:40,109.109 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:04:40,111.111 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:04:40,116.116 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:04:40,121.121 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:04:42,163.163 INFO    ] ================================================
[2026-08-31 22:04:42,178.178 INFO    ] Launching Daemon at Mon Aug 31 22:04:42 IST 2026
[2026-08-31 22:04:42,189.189 INFO    ] ================================================
[2026-08-31 22:04:42,842.842 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:04:42
[2026-08-31 22:04:43,523.523 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:04:43,830.830 INFO    ] Initializing speech engine...
[2026-08-31 22:04:43,843.843 INFO    ] 2026-08-31 22:04:43
[2026-08-31 22:04:44,135.135 INFO    ] 2026-08-31 22:04:44
[2026-08-31 22:04:44,245.245 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:04:44,467.467 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:04:44,474.474 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:04:44,673.673 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:04:44,689.689 INFO    ] time= 31/08/2026 22:04:44
[2026-08-31 22:04:44,709.709 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:04:44,727.727 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:04:44,834.834 INFO    ] No existing commands found in stream
[2026-08-31 22:04:49,855.855 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:04:49,859.859 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-08-31 22:04:51,978.978 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 22:04:51,981.981 INFO    ] Checking for system updates...
[2026-08-31 22:04:52,022.022 INFO    ] 200
[2026-08-31 22:04:52,024.024 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:04:52,076.076 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:04:52,079.079 INFO    ] No update needed
[2026-08-31 22:04:52,082.082 INFO    ] Checking for camera pi updates...
[2026-08-31 22:04:52,119.119 INFO    ] 200
[2026-08-31 22:04:52,121.121 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:04:52,161.161 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:04:52,229.229 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:04:52,232.232 INFO    ] No camera update needed
[2026-08-31 22:04:52,234.234 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:04:52,236.236 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:04:52,242.242 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:04:52,247.247 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:04:54,288.288 INFO    ] ================================================
[2026-08-31 22:04:54,302.302 INFO    ] Launching Daemon at Mon Aug 31 22:04:54 IST 2026
[2026-08-31 22:04:54,313.313 INFO    ] ================================================
[2026-08-31 22:04:54,896.896 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:04:54
[2026-08-31 22:04:55,495.495 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:04:55,771.771 INFO    ] Initializing speech engine...
[2026-08-31 22:04:55,776.776 INFO    ] 2026-08-31 22:04:55
[2026-08-31 22:04:56,039.039 INFO    ] 2026-08-31 22:04:56
[2026-08-31 22:04:56,092.092 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:04:56,315.315 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:04:56,323.323 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:04:56,457.457 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:04:56,504.504 INFO    ] time= 31/08/2026 22:04:56
[2026-08-31 22:04:56,565.565 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:04:56,602.602 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:04:56,749.749 INFO    ] No existing commands found in stream
[2026-08-31 22:05:01,772.772 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:05:01,776.776 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-08-31 22:05:04,071.071 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 22:05:04,073.073 INFO    ] Checking for system updates...
[2026-08-31 22:05:04,109.109 INFO    ] 200
[2026-08-31 22:05:04,112.112 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:05:04,164.164 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:05:04,166.166 INFO    ] No update needed
[2026-08-31 22:05:04,169.169 INFO    ] Checking for camera pi updates...
[2026-08-31 22:05:04,202.202 INFO    ] 200
[2026-08-31 22:05:04,204.204 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:05:04,249.249 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:05:04,332.332 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:05:04,334.334 INFO    ] No camera update needed
[2026-08-31 22:05:04,337.337 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:05:04,339.339 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:05:04,345.345 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:05:04,350.350 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:05:06,389.389 INFO    ] ================================================
[2026-08-31 22:05:06,404.404 INFO    ] Launching Daemon at Mon Aug 31 22:05:06 IST 2026
[2026-08-31 22:05:06,415.415 INFO    ] ================================================
[2026-08-31 22:05:07,040.040 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:05:07
[2026-08-31 22:05:07,639.639 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:05:07,896.896 INFO    ] Initializing speech engine...
[2026-08-31 22:05:07,905.905 INFO    ] 2026-08-31 22:05:07
[2026-08-31 22:05:08,199.199 INFO    ] 2026-08-31 22:05:08
[2026-08-31 22:05:08,235.235 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:05:08,431.431 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:05:08,446.446 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:05:08,608.608 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:05:08,617.617 INFO    ] time= 31/08/2026 22:05:08
[2026-08-31 22:05:08,624.624 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:05:08,661.661 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:05:08,807.807 INFO    ] No existing commands found in stream
[2026-08-31 22:05:13,838.838 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:05:13,841.841 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-08-31 22:05:16,023.023 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 22:05:16,026.026 INFO    ] Checking for system updates...
[2026-08-31 22:05:16,062.062 INFO    ] 200
[2026-08-31 22:05:16,064.064 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:05:16,123.123 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:05:16,125.125 INFO    ] No update needed
[2026-08-31 22:05:16,128.128 INFO    ] Checking for camera pi updates...
[2026-08-31 22:05:16,165.165 INFO    ] 200
[2026-08-31 22:05:16,167.167 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:05:16,212.212 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:05:16,294.294 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:05:16,296.296 INFO    ] No camera update needed
[2026-08-31 22:05:16,299.299 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:05:16,301.301 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:05:16,306.306 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:05:16,312.312 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:05:18,351.351 INFO    ] ================================================
[2026-08-31 22:05:18,365.365 INFO    ] Launching Daemon at Mon Aug 31 22:05:18 IST 2026
[2026-08-31 22:05:18,376.376 INFO    ] ================================================
[2026-08-31 22:05:19,019.019 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:05:19
[2026-08-31 22:05:19,664.664 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:05:19,932.932 INFO    ] Initializing speech engine...
[2026-08-31 22:05:19,944.944 INFO    ] 2026-08-31 22:05:19
[2026-08-31 22:05:20,194.194 INFO    ] 2026-08-31 22:05:20
[2026-08-31 22:05:20,231.231 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:05:20,406.406 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:05:20,419.419 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:05:20,566.566 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:05:20,571.571 INFO    ] time= 31/08/2026 22:05:20
[2026-08-31 22:05:20,579.579 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:05:20,642.642 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:05:20,772.772 INFO    ] No existing commands found in stream
[2026-08-31 22:05:25,783.783 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:05:25,786.786 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-08-31 22:05:27,930.930 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 22:05:27,933.933 INFO    ] Checking for system updates...
[2026-08-31 22:05:27,970.970 INFO    ] 200
[2026-08-31 22:05:27,973.973 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:05:28,034.034 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:05:28,036.036 INFO    ] No update needed
[2026-08-31 22:05:28,039.039 INFO    ] Checking for camera pi updates...
[2026-08-31 22:05:28,072.072 INFO    ] 200
[2026-08-31 22:05:28,075.075 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:05:28,115.115 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:05:28,197.197 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:05:28,199.199 INFO    ] No camera update needed
[2026-08-31 22:05:28,202.202 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:05:28,204.204 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:05:28,209.209 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:05:28,214.214 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:05:30,255.255 INFO    ] ================================================
[2026-08-31 22:05:30,271.271 INFO    ] Launching Daemon at Mon Aug 31 22:05:30 IST 2026
[2026-08-31 22:05:30,282.282 INFO    ] ================================================
[2026-08-31 22:05:30,847.847 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:05:30
[2026-08-31 22:05:31,465.465 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:05:31,759.759 INFO    ] Initializing speech engine...
[2026-08-31 22:05:31,773.773 INFO    ] 2026-08-31 22:05:31
[2026-08-31 22:05:32,066.066 INFO    ] 2026-08-31 22:05:32
[2026-08-31 22:05:32,111.111 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:05:32,345.345 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:05:32,352.352 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:05:32,510.510 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:05:32,526.526 INFO    ] time= 31/08/2026 22:05:32
[2026-08-31 22:05:32,596.596 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:05:32,641.641 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:05:32,773.773 INFO    ] No existing commands found in stream
[2026-08-31 22:05:37,790.790 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:05:37,792.792 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-08-31 22:05:39,368.368 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 22:05:39,371.371 INFO    ] Checking for system updates...
[2026-08-31 22:05:39,410.410 INFO    ] 200
[2026-08-31 22:05:39,413.413 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:05:39,474.474 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:05:39,476.476 INFO    ] No update needed
[2026-08-31 22:05:39,479.479 INFO    ] Checking for camera pi updates...
[2026-08-31 22:05:39,519.519 INFO    ] 200
[2026-08-31 22:05:39,522.522 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:05:39,576.576 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:05:39,659.659 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:05:39,661.661 INFO    ] No camera update needed
[2026-08-31 22:05:39,663.663 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:05:39,666.666 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:05:39,671.671 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:05:39,676.676 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:05:41,716.716 INFO    ] ================================================
[2026-08-31 22:05:41,732.732 INFO    ] Launching Daemon at Mon Aug 31 22:05:41 IST 2026
[2026-08-31 22:05:41,743.743 INFO    ] ================================================
[2026-08-31 22:05:42,321.321 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:05:42
[2026-08-31 22:05:42,917.917 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:05:43,188.188 INFO    ] Initializing speech engine...
[2026-08-31 22:05:43,206.206 INFO    ] 2026-08-31 22:05:43
[2026-08-31 22:05:43,477.477 INFO    ] 2026-08-31 22:05:43
[2026-08-31 22:05:43,515.515 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:05:43,710.710 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:05:43,723.723 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:05:43,888.888 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:05:43,895.895 INFO    ] time= 31/08/2026 22:05:43
[2026-08-31 22:05:43,917.917 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:05:43,967.967 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:05:44,096.096 INFO    ] No existing commands found in stream
[2026-08-31 22:05:49,122.122 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:05:49,125.125 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-08-31 22:05:50,486.486 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 22:05:50,489.489 INFO    ] Checking for system updates...
[2026-08-31 22:05:50,528.528 INFO    ] 200
[2026-08-31 22:05:50,530.530 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:05:50,589.589 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:05:50,591.591 INFO    ] No update needed
[2026-08-31 22:05:50,593.593 INFO    ] Checking for camera pi updates...
[2026-08-31 22:05:50,630.630 INFO    ] 200
[2026-08-31 22:05:50,633.633 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:05:50,677.677 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:05:50,757.757 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:05:50,760.760 INFO    ] No camera update needed
[2026-08-31 22:05:50,762.762 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:05:50,764.764 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:05:50,770.770 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:05:50,775.775 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:05:52,817.817 INFO    ] ================================================
[2026-08-31 22:05:52,833.833 INFO    ] Launching Daemon at Mon Aug 31 22:05:52 IST 2026
[2026-08-31 22:05:52,844.844 INFO    ] ================================================
[2026-08-31 22:05:53,424.424 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:05:53
[2026-08-31 22:05:54,020.020 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:05:54,292.292 INFO    ] Initializing speech engine...
[2026-08-31 22:05:54,302.302 INFO    ] 2026-08-31 22:05:54
[2026-08-31 22:05:54,552.552 INFO    ] 2026-08-31 22:05:54
[2026-08-31 22:05:54,587.587 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:05:54,840.840 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:05:54,849.849 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:05:54,983.983 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:05:55,039.039 INFO    ] time= 31/08/2026 22:05:54
[2026-08-31 22:05:55,098.098 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:05:55,118.118 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:05:55,169.169 INFO    ] No existing commands found in stream
[2026-08-31 22:06:00,181.181 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:06:00,184.184 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-08-31 22:06:00,698.698 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 22:06:00,701.701 INFO    ] Checking for system updates...
[2026-08-31 22:06:00,739.739 INFO    ] 200
[2026-08-31 22:06:00,742.742 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:06:00,794.794 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:06:00,796.796 INFO    ] No update needed
[2026-08-31 22:06:00,799.799 INFO    ] Checking for camera pi updates...
[2026-08-31 22:06:00,832.832 INFO    ] 200
[2026-08-31 22:06:00,835.835 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:06:00,874.874 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:06:00,971.971 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:06:00,974.974 INFO    ] No camera update needed
[2026-08-31 22:06:00,976.976 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:06:00,978.978 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:06:00,984.984 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:06:00,989.989 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:06:03,035.035 INFO    ] ================================================
[2026-08-31 22:06:03,052.052 INFO    ] Launching Daemon at Mon Aug 31 22:06:03 IST 2026
[2026-08-31 22:06:03,063.063 INFO    ] ================================================
[2026-08-31 22:06:03,713.713 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:06:03
[2026-08-31 22:06:04,381.381 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:06:04,688.688 INFO    ] Initializing speech engine...
[2026-08-31 22:06:04,696.696 INFO    ] 2026-08-31 22:06:04
[2026-08-31 22:06:04,965.965 INFO    ] 2026-08-31 22:06:04
[2026-08-31 22:06:05,017.017 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:06:05,248.248 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:06:05,254.254 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:06:05,385.385 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:06:05,439.439 INFO    ] time= 31/08/2026 22:06:05
[2026-08-31 22:06:05,498.498 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:06:05,524.524 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:06:05,661.661 INFO    ] No existing commands found in stream
[2026-08-31 22:06:10,682.682 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:06:10,685.685 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-08-31 22:06:13,770.770 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 22:06:13,773.773 INFO    ] Checking for system updates...
[2026-08-31 22:06:13,809.809 INFO    ] 200
[2026-08-31 22:06:13,812.812 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:06:13,864.864 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:06:13,867.867 INFO    ] No update needed
[2026-08-31 22:06:13,869.869 INFO    ] Checking for camera pi updates...
[2026-08-31 22:06:13,906.906 INFO    ] 200
[2026-08-31 22:06:13,909.909 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:06:13,955.955 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:06:14,058.058 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:06:14,060.060 INFO    ] No camera update needed
[2026-08-31 22:06:14,062.062 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:06:14,065.065 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:06:14,070.070 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:06:14,075.075 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:06:16,116.116 INFO    ] ================================================
[2026-08-31 22:06:16,132.132 INFO    ] Launching Daemon at Mon Aug 31 22:06:16 IST 2026
[2026-08-31 22:06:16,144.144 INFO    ] ================================================
[2026-08-31 22:06:16,713.713 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:06:16
[2026-08-31 22:06:17,315.315 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:06:17,591.591 INFO    ] Initializing speech engine...
[2026-08-31 22:06:17,598.598 INFO    ] 2026-08-31 22:06:17
[2026-08-31 22:06:17,859.859 INFO    ] 2026-08-31 22:06:17
[2026-08-31 22:06:17,913.913 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:06:18,180.180 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:06:18,202.202 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:06:18,398.398 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:06:18,404.404 INFO    ] time= 31/08/2026 22:06:18
[2026-08-31 22:06:18,425.425 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:06:18,451.451 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:06:18,556.556 INFO    ] No existing commands found in stream
[2026-08-31 22:06:23,572.572 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:06:23,575.575 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-08-31 22:06:25,980.980 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 22:06:25,983.983 INFO    ] Checking for system updates...
[2026-08-31 22:06:26,022.022 INFO    ] 200
[2026-08-31 22:06:26,024.024 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:06:26,076.076 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:06:26,079.079 INFO    ] No update needed
[2026-08-31 22:06:26,081.081 INFO    ] Checking for camera pi updates...
[2026-08-31 22:06:26,119.119 INFO    ] 200
[2026-08-31 22:06:26,121.121 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:06:26,161.161 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:06:26,235.235 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:06:26,238.238 INFO    ] No camera update needed
[2026-08-31 22:06:26,240.240 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:06:26,243.243 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:06:26,248.248 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:06:26,253.253 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:06:28,292.292 INFO    ] ================================================
[2026-08-31 22:06:28,307.307 INFO    ] Launching Daemon at Mon Aug 31 22:06:28 IST 2026
[2026-08-31 22:06:28,319.319 INFO    ] ================================================
[2026-08-31 22:06:28,887.887 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:06:28
[2026-08-31 22:06:29,472.472 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:06:29,719.719 INFO    ] Initializing speech engine...
[2026-08-31 22:06:29,727.727 INFO    ] 2026-08-31 22:06:29
[2026-08-31 22:06:30,003.003 INFO    ] 2026-08-31 22:06:29
[2026-08-31 22:06:30,040.040 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:06:30,298.298 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:06:30,307.307 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:06:30,617.617 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:06:30,626.626 INFO    ] time= 31/08/2026 22:06:30
[2026-08-31 22:06:30,642.642 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:06:30,694.694 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:06:30,829.829 INFO    ] No existing commands found in stream
[2026-08-31 22:06:35,845.845 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:06:35,848.848 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-08-31 22:06:36,504.504 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 22:06:36,507.507 INFO    ] Checking for system updates...
[2026-08-31 22:06:36,543.543 INFO    ] 200
[2026-08-31 22:06:36,545.545 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:06:36,601.601 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:06:36,604.604 INFO    ] No update needed
[2026-08-31 22:06:36,606.606 INFO    ] Checking for camera pi updates...
[2026-08-31 22:06:36,639.639 INFO    ] 200
[2026-08-31 22:06:36,642.642 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:06:36,682.682 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:06:36,868.868 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:06:36,871.871 INFO    ] No camera update needed
[2026-08-31 22:06:36,873.873 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:06:36,875.875 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:06:36,881.881 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:06:36,886.886 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:06:38,928.928 INFO    ] ================================================
[2026-08-31 22:06:38,944.944 INFO    ] Launching Daemon at Mon Aug 31 22:06:38 IST 2026
[2026-08-31 22:06:38,955.955 INFO    ] ================================================
[2026-08-31 22:06:39,610.610 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:06:39
[2026-08-31 22:06:40,286.286 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:06:40,592.592 INFO    ] Initializing speech engine...
[2026-08-31 22:06:40,604.604 INFO    ] 2026-08-31 22:06:40
[2026-08-31 22:06:40,913.913 INFO    ] 2026-08-31 22:06:40
[2026-08-31 22:06:40,999.999 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:06:41,213.213 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:06:41,220.220 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:06:41,410.410 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:06:41,418.418 INFO    ] time= 31/08/2026 22:06:41
[2026-08-31 22:06:41,439.439 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:06:41,466.466 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:06:41,593.593 INFO    ] No existing commands found in stream
[2026-08-31 22:06:46,624.624 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:06:46,627.627 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-08-31 22:06:47,462.462 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 22:06:47,465.465 INFO    ] Checking for system updates...
[2026-08-31 22:06:47,508.508 INFO    ] 200
[2026-08-31 22:06:47,510.510 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:06:47,574.574 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:06:47,576.576 INFO    ] No update needed
[2026-08-31 22:06:47,579.579 INFO    ] Checking for camera pi updates...
[2026-08-31 22:06:47,616.616 INFO    ] 200
[2026-08-31 22:06:47,619.619 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:06:47,664.664 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:06:47,752.752 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:06:47,754.754 INFO    ] No camera update needed
[2026-08-31 22:06:47,756.756 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:06:47,759.759 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:06:47,764.764 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:06:47,769.769 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:06:49,809.809 INFO    ] ================================================
[2026-08-31 22:06:49,824.824 INFO    ] Launching Daemon at Mon Aug 31 22:06:49 IST 2026
[2026-08-31 22:06:49,835.835 INFO    ] ================================================
[2026-08-31 22:06:50,403.403 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:06:50
[2026-08-31 22:06:51,051.051 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:06:51,353.353 INFO    ] Initializing speech engine...
[2026-08-31 22:06:51,360.360 INFO    ] 2026-08-31 22:06:51
[2026-08-31 22:06:51,636.636 INFO    ] 2026-08-31 22:06:51
[2026-08-31 22:06:51,692.692 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:06:51,916.916 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:06:51,925.925 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:06:52,061.061 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:06:52,112.112 INFO    ] time= 31/08/2026 22:06:52
[2026-08-31 22:06:52,172.172 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:06:52,198.198 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:06:52,253.253 INFO    ] No existing commands found in stream
[2026-08-31 22:06:57,266.266 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:06:57,269.269 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-08-31 22:07:00,219.219 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 22:07:00,223.223 INFO    ] Checking for system updates...
[2026-08-31 22:07:00,265.265 INFO    ] 200
[2026-08-31 22:07:00,268.268 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:07:00,328.328 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:07:00,330.330 INFO    ] No update needed
[2026-08-31 22:07:00,333.333 INFO    ] Checking for camera pi updates...
[2026-08-31 22:07:00,367.367 INFO    ] 200
[2026-08-31 22:07:00,369.369 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:07:00,415.415 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:07:00,502.502 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:07:00,504.504 INFO    ] No camera update needed
[2026-08-31 22:07:00,507.507 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:07:00,509.509 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:07:00,515.515 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:07:00,520.520 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:07:02,573.573 INFO    ] ================================================
[2026-08-31 22:07:02,592.592 INFO    ] Launching Daemon at Mon Aug 31 22:07:02 IST 2026
[2026-08-31 22:07:02,604.604 INFO    ] ================================================
[2026-08-31 22:07:03,204.204 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:07:03
[2026-08-31 22:07:03,791.791 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:07:04,054.054 INFO    ] Initializing speech engine...
[2026-08-31 22:07:04,066.066 INFO    ] 2026-08-31 22:07:04
[2026-08-31 22:07:04,373.373 INFO    ] 2026-08-31 22:07:04
[2026-08-31 22:07:04,448.448 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:07:04,706.706 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:07:04,713.713 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:07:04,893.893 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:07:04,943.943 INFO    ] time= 31/08/2026 22:07:04
[2026-08-31 22:07:04,964.964 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:07:04,982.982 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:07:05,113.113 INFO    ] No existing commands found in stream
[2026-08-31 22:07:10,128.128 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:07:10,131.131 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-08-31 22:07:12,346.346 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 22:07:12,349.349 INFO    ] Checking for system updates...
[2026-08-31 22:07:12,389.389 INFO    ] 200
[2026-08-31 22:07:12,392.392 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:07:12,444.444 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:07:12,446.446 INFO    ] No update needed
[2026-08-31 22:07:12,449.449 INFO    ] Checking for camera pi updates...
[2026-08-31 22:07:12,486.486 INFO    ] 200
[2026-08-31 22:07:12,489.489 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:07:12,533.533 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:07:12,620.620 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:07:12,622.622 INFO    ] No camera update needed
[2026-08-31 22:07:12,624.624 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:07:12,627.627 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:07:12,632.632 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:07:12,637.637 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:07:14,677.677 INFO    ] ================================================
[2026-08-31 22:07:14,692.692 INFO    ] Launching Daemon at Mon Aug 31 22:07:14 IST 2026
[2026-08-31 22:07:14,703.703 INFO    ] ================================================
[2026-08-31 22:07:15,277.277 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:07:15
[2026-08-31 22:07:15,858.858 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:07:16,105.105 INFO    ] Initializing speech engine...
[2026-08-31 22:07:16,120.120 INFO    ] 2026-08-31 22:07:16
[2026-08-31 22:07:16,384.384 INFO    ] 2026-08-31 22:07:16
[2026-08-31 22:07:16,417.417 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:07:16,620.620 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:07:16,678.678 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:07:16,883.883 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:07:16,947.947 INFO    ] time= 31/08/2026 22:07:16
[2026-08-31 22:07:16,954.954 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:07:16,971.971 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:07:17,094.094 INFO    ] No existing commands found in stream
[2026-08-31 22:07:22,113.113 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:07:22,116.116 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-08-31 22:07:23,187.187 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 22:07:23,190.190 INFO    ] Checking for system updates...
[2026-08-31 22:07:23,229.229 INFO    ] 200
[2026-08-31 22:07:23,232.232 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:07:23,290.290 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:07:23,292.292 INFO    ] No update needed
[2026-08-31 22:07:23,294.294 INFO    ] Checking for camera pi updates...
[2026-08-31 22:07:23,329.329 INFO    ] 200
[2026-08-31 22:07:23,331.331 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:07:23,375.375 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:07:23,448.448 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:07:23,451.451 INFO    ] No camera update needed
[2026-08-31 22:07:23,453.453 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:07:23,455.455 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:07:23,461.461 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:07:23,465.465 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:07:25,506.506 INFO    ] ================================================
[2026-08-31 22:07:25,522.522 INFO    ] Launching Daemon at Mon Aug 31 22:07:25 IST 2026
[2026-08-31 22:07:25,534.534 INFO    ] ================================================
[2026-08-31 22:07:26,112.112 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:07:26
[2026-08-31 22:07:26,708.708 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:07:26,968.968 INFO    ] Initializing speech engine...
[2026-08-31 22:07:26,985.985 INFO    ] 2026-08-31 22:07:26
[2026-08-31 22:07:27,274.274 INFO    ] 2026-08-31 22:07:27
[2026-08-31 22:07:27,310.310 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:07:27,532.532 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:07:27,540.540 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:07:27,689.689 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:07:27,694.694 INFO    ] time= 31/08/2026 22:07:27
[2026-08-31 22:07:27,701.701 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:07:27,754.754 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:07:27,898.898 INFO    ] No existing commands found in stream
[2026-08-31 22:07:32,923.923 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:07:32,927.927 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-08-31 22:07:36,378.378 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 22:07:36,381.381 INFO    ] Checking for system updates...
[2026-08-31 22:07:36,420.420 INFO    ] 200
[2026-08-31 22:07:36,423.423 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:07:36,481.481 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:07:36,484.484 INFO    ] No update needed
[2026-08-31 22:07:36,486.486 INFO    ] Checking for camera pi updates...
[2026-08-31 22:07:36,519.519 INFO    ] 200
[2026-08-31 22:07:36,522.522 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:07:36,567.567 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:07:36,666.666 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:07:36,668.668 INFO    ] No camera update needed
[2026-08-31 22:07:36,671.671 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:07:36,673.673 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:07:36,678.678 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:07:36,683.683 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:07:38,724.724 INFO    ] ================================================
[2026-08-31 22:07:38,739.739 INFO    ] Launching Daemon at Mon Aug 31 22:07:38 IST 2026
[2026-08-31 22:07:38,750.750 INFO    ] ================================================
[2026-08-31 22:07:39,316.316 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:07:39
[2026-08-31 22:07:39,897.897 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:07:40,180.180 INFO    ] Initializing speech engine...
[2026-08-31 22:07:40,187.187 INFO    ] 2026-08-31 22:07:40
[2026-08-31 22:07:40,432.432 INFO    ] 2026-08-31 22:07:40
[2026-08-31 22:07:40,468.468 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:07:40,663.663 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:07:40,709.709 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:07:40,868.868 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:07:40,916.916 INFO    ] time= 31/08/2026 22:07:40
[2026-08-31 22:07:40,981.981 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:07:41,008.008 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:07:41,092.092 INFO    ] No existing commands found in stream
[2026-08-31 22:07:46,124.124 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:07:46,127.127 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-08-31 22:07:46,869.869 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 22:07:46,872.872 INFO    ] Checking for system updates...
[2026-08-31 22:07:46,909.909 INFO    ] 200
[2026-08-31 22:07:46,911.911 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:07:46,971.971 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:07:46,974.974 INFO    ] No update needed
[2026-08-31 22:07:46,978.978 INFO    ] Checking for camera pi updates...
[2026-08-31 22:07:47,016.016 INFO    ] 200
[2026-08-31 22:07:47,018.018 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:07:47,069.069 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:07:47,154.154 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:07:47,156.156 INFO    ] No camera update needed
[2026-08-31 22:07:47,159.159 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:07:47,162.162 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:07:47,168.168 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:07:47,173.173 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:07:49,216.216 INFO    ] ================================================
[2026-08-31 22:07:49,233.233 INFO    ] Launching Daemon at Mon Aug 31 22:07:49 IST 2026
[2026-08-31 22:07:49,244.244 INFO    ] ================================================
[2026-08-31 22:07:49,855.855 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:07:49
[2026-08-31 22:07:50,477.477 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:07:50,755.755 INFO    ] Initializing speech engine...
[2026-08-31 22:07:50,762.762 INFO    ] 2026-08-31 22:07:50
[2026-08-31 22:07:51,010.010 INFO    ] 2026-08-31 22:07:51
[2026-08-31 22:07:51,045.045 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:07:51,216.216 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:07:51,228.228 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:07:51,370.370 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:07:51,378.378 INFO    ] time= 31/08/2026 22:07:51
[2026-08-31 22:07:51,384.384 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:07:51,436.436 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:07:51,575.575 INFO    ] No existing commands found in stream
[2026-08-31 22:07:56,586.586 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:07:56,589.589 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-08-31 22:07:57,292.292 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 22:07:57,294.294 INFO    ] Checking for system updates...
[2026-08-31 22:07:57,335.335 INFO    ] 200
[2026-08-31 22:07:57,338.338 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:07:57,398.398 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:07:57,401.401 INFO    ] No update needed
[2026-08-31 22:07:57,404.404 INFO    ] Checking for camera pi updates...
[2026-08-31 22:07:57,441.441 INFO    ] 200
[2026-08-31 22:07:57,444.444 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:07:57,485.485 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:07:57,573.573 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:07:57,576.576 INFO    ] No camera update needed
[2026-08-31 22:07:57,579.579 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:07:57,581.581 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:07:57,587.587 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:07:57,593.593 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:07:59,635.635 INFO    ] ================================================
[2026-08-31 22:07:59,651.651 INFO    ] Launching Daemon at Mon Aug 31 22:07:59 IST 2026
[2026-08-31 22:07:59,662.662 INFO    ] ================================================
[2026-08-31 22:08:00,304.304 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:08:00
[2026-08-31 22:08:00,963.963 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:08:01,426.426 INFO    ] Initializing speech engine...
[2026-08-31 22:08:01,431.431 INFO    ] 2026-08-31 22:08:01
[2026-08-31 22:08:01,771.771 INFO    ] 2026-08-31 22:08:01
[2026-08-31 22:08:01,853.853 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:08:02,098.098 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:08:02,123.123 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:08:02,341.341 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:08:02,352.352 INFO    ] time= 31/08/2026 22:08:02
[2026-08-31 22:08:02,373.373 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:08:02,405.405 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:08:02,527.527 INFO    ] No existing commands found in stream
[2026-08-31 22:08:07,550.550 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:08:07,553.553 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-08-31 22:08:08,625.625 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 22:08:08,628.628 INFO    ] Checking for system updates...
[2026-08-31 22:08:08,668.668 INFO    ] 200
[2026-08-31 22:08:08,671.671 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:08:08,729.729 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:08:08,732.732 INFO    ] No update needed
[2026-08-31 22:08:08,734.734 INFO    ] Checking for camera pi updates...
[2026-08-31 22:08:08,769.769 INFO    ] 200
[2026-08-31 22:08:08,771.771 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:08:08,812.812 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:08:08,901.901 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:08:08,904.904 INFO    ] No camera update needed
[2026-08-31 22:08:08,907.907 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:08:08,910.910 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:08:08,916.916 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:08:08,922.922 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:08:10,961.961 INFO    ] ================================================
[2026-08-31 22:08:10,978.978 INFO    ] Launching Daemon at Mon Aug 31 22:08:10 IST 2026
[2026-08-31 22:08:10,989.989 INFO    ] ================================================
[2026-08-31 22:08:11,633.633 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:08:11
[2026-08-31 22:08:12,296.296 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:08:12,599.599 INFO    ] Initializing speech engine...
[2026-08-31 22:08:12,612.612 INFO    ] 2026-08-31 22:08:12
[2026-08-31 22:08:12,883.883 INFO    ] 2026-08-31 22:08:12
[2026-08-31 22:08:12,936.936 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:08:13,165.165 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:08:13,176.176 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:08:13,312.312 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:08:13,369.369 INFO    ] time= 31/08/2026 22:08:13
[2026-08-31 22:08:13,418.418 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:08:13,451.451 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:08:13,574.574 INFO    ] No existing commands found in stream
[2026-08-31 22:08:18,600.600 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:08:18,603.603 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-08-31 22:08:22,030.030 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 22:08:22,032.032 INFO    ] Checking for system updates...
[2026-08-31 22:08:22,070.070 INFO    ] 200
[2026-08-31 22:08:22,073.073 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:08:22,133.133 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:08:22,135.135 INFO    ] No update needed
[2026-08-31 22:08:22,138.138 INFO    ] Checking for camera pi updates...
[2026-08-31 22:08:22,173.173 INFO    ] 200
[2026-08-31 22:08:22,175.175 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:08:22,220.220 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:08:22,305.305 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:08:22,308.308 INFO    ] No camera update needed
[2026-08-31 22:08:22,310.310 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:08:22,313.313 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:08:22,318.318 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:08:22,323.323 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:08:24,364.364 INFO    ] ================================================
[2026-08-31 22:08:24,380.380 INFO    ] Launching Daemon at Mon Aug 31 22:08:24 IST 2026
[2026-08-31 22:08:24,391.391 INFO    ] ================================================
[2026-08-31 22:08:24,966.966 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:08:24
[2026-08-31 22:08:25,566.566 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:08:25,832.832 INFO    ] Initializing speech engine...
[2026-08-31 22:08:25,857.857 INFO    ] 2026-08-31 22:08:25
[2026-08-31 22:08:26,133.133 INFO    ] 2026-08-31 22:08:26
[2026-08-31 22:08:26,171.171 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:08:26,371.371 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:08:26,385.385 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:08:26,545.545 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:08:26,555.555 INFO    ] time= 31/08/2026 22:08:26
[2026-08-31 22:08:26,560.560 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:08:26,568.568 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:08:26,702.702 INFO    ] No existing commands found in stream
[2026-08-31 22:08:31,727.727 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:08:31,730.730 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-08-31 22:08:34,635.635 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 22:08:34,638.638 INFO    ] Checking for system updates...
[2026-08-31 22:08:34,674.674 INFO    ] 200
[2026-08-31 22:08:34,676.676 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:08:34,736.736 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:08:34,739.739 INFO    ] No update needed
[2026-08-31 22:08:34,741.741 INFO    ] Checking for camera pi updates...
[2026-08-31 22:08:34,776.776 INFO    ] 200
[2026-08-31 22:08:34,779.779 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:08:34,820.820 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:08:34,922.922 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:08:34,925.925 INFO    ] No camera update needed
[2026-08-31 22:08:34,927.927 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:08:34,930.930 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:08:34,936.936 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:08:34,942.942 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:08:36,984.984 INFO    ] ================================================
[2026-08-31 22:08:37,000.000 INFO    ] Launching Daemon at Mon Aug 31 22:08:36 IST 2026
[2026-08-31 22:08:37,011.011 INFO    ] ================================================
[2026-08-31 22:08:37,584.584 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:08:37
[2026-08-31 22:08:38,180.180 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:08:38,455.455 INFO    ] Initializing speech engine...
[2026-08-31 22:08:38,460.460 INFO    ] 2026-08-31 22:08:38
[2026-08-31 22:08:38,724.724 INFO    ] 2026-08-31 22:08:38
[2026-08-31 22:08:38,780.780 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:08:38,943.943 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:08:38,987.987 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:08:39,149.149 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:08:39,186.186 INFO    ] time= 31/08/2026 22:08:39
[2026-08-31 22:08:39,235.235 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:08:39,286.286 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:08:39,406.406 INFO    ] No existing commands found in stream
[2026-08-31 22:08:44,436.436 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:08:44,439.439 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-08-31 22:08:46,170.170 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 22:08:46,173.173 INFO    ] Checking for system updates...
[2026-08-31 22:08:46,208.208 INFO    ] 200
[2026-08-31 22:08:46,211.211 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:08:46,262.262 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:08:46,265.265 INFO    ] No update needed
[2026-08-31 22:08:46,267.267 INFO    ] Checking for camera pi updates...
[2026-08-31 22:08:46,304.304 INFO    ] 200
[2026-08-31 22:08:46,306.306 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:08:46,353.353 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:08:46,550.550 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:08:46,553.553 INFO    ] No camera update needed
[2026-08-31 22:08:46,555.555 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:08:46,558.558 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:08:46,564.564 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:08:46,570.570 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:08:48,612.612 INFO    ] ================================================
[2026-08-31 22:08:48,628.628 INFO    ] Launching Daemon at Mon Aug 31 22:08:48 IST 2026
[2026-08-31 22:08:48,639.639 INFO    ] ================================================
[2026-08-31 22:08:49,306.306 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:08:49
[2026-08-31 22:08:49,992.992 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:08:50,303.303 INFO    ] Initializing speech engine...
[2026-08-31 22:08:50,316.316 INFO    ] 2026-08-31 22:08:50
[2026-08-31 22:08:50,594.594 INFO    ] 2026-08-31 22:08:50
[2026-08-31 22:08:50,648.648 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:08:50,879.879 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:08:50,889.889 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:08:51,024.024 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:08:51,072.072 INFO    ] time= 31/08/2026 22:08:51
[2026-08-31 22:08:51,137.137 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:08:51,165.165 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:08:51,294.294 INFO    ] No existing commands found in stream
[2026-08-31 22:08:56,322.322 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:08:56,325.325 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-08-31 22:08:57,145.145 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 22:08:57,148.148 INFO    ] Checking for system updates...
[2026-08-31 22:08:57,189.189 INFO    ] 200
[2026-08-31 22:08:57,192.192 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:08:57,243.243 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:08:57,246.246 INFO    ] No update needed
[2026-08-31 22:08:57,248.248 INFO    ] Checking for camera pi updates...
[2026-08-31 22:08:57,286.286 INFO    ] 200
[2026-08-31 22:08:57,289.289 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:08:57,330.330 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:08:57,400.400 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:08:57,402.402 INFO    ] No camera update needed
[2026-08-31 22:08:57,404.404 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:08:57,406.406 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:08:57,412.412 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:08:57,417.417 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:08:59,456.456 INFO    ] ================================================
[2026-08-31 22:08:59,471.471 INFO    ] Launching Daemon at Mon Aug 31 22:08:59 IST 2026
[2026-08-31 22:08:59,483.483 INFO    ] ================================================
[2026-08-31 22:09:00,063.063 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:09:00
[2026-08-31 22:09:00,663.663 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:09:00,938.938 INFO    ] Initializing speech engine...
[2026-08-31 22:09:00,944.944 INFO    ] 2026-08-31 22:09:00
[2026-08-31 22:09:01,192.192 INFO    ] 2026-08-31 22:09:01
[2026-08-31 22:09:01,227.227 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:09:01,483.483 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:09:01,486.486 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:09:01,643.643 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:09:01,646.646 INFO    ] time= 31/08/2026 22:09:01
[2026-08-31 22:09:01,649.649 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:09:01,652.652 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:09:01,719.719 INFO    ] No existing commands found in stream
[2026-08-31 22:09:06,729.729 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:09:06,732.732 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-08-31 22:09:07,689.689 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 22:09:07,692.692 INFO    ] Checking for system updates...
[2026-08-31 22:09:07,732.732 INFO    ] 200
[2026-08-31 22:09:07,734.734 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:09:07,788.788 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:09:07,790.790 INFO    ] No update needed
[2026-08-31 22:09:07,792.792 INFO    ] Checking for camera pi updates...
[2026-08-31 22:09:07,825.825 INFO    ] 200
[2026-08-31 22:09:07,828.828 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:09:07,875.875 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:09:07,960.960 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:09:07,962.962 INFO    ] No camera update needed
[2026-08-31 22:09:07,965.965 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:09:07,967.967 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:09:07,972.972 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:09:07,977.977 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:09:10,018.018 INFO    ] ================================================
[2026-08-31 22:09:10,033.033 INFO    ] Launching Daemon at Mon Aug 31 22:09:10 IST 2026
[2026-08-31 22:09:10,044.044 INFO    ] ================================================
[2026-08-31 22:09:10,611.611 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:09:10
[2026-08-31 22:09:11,195.195 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:09:11,463.463 INFO    ] Initializing speech engine...
[2026-08-31 22:09:11,472.472 INFO    ] 2026-08-31 22:09:11
[2026-08-31 22:09:11,718.718 INFO    ] 2026-08-31 22:09:11
[2026-08-31 22:09:11,753.753 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:09:11,924.924 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:09:11,947.947 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:09:12,081.081 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:09:12,086.086 INFO    ] time= 31/08/2026 22:09:12
[2026-08-31 22:09:12,117.117 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:09:12,153.153 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:09:12,259.259 INFO    ] No existing commands found in stream
[2026-08-31 22:09:17,289.289 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:09:17,292.292 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-08-31 22:09:20,981.981 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 22:09:20,984.984 INFO    ] Checking for system updates...
[2026-08-31 22:09:21,019.019 INFO    ] 200
[2026-08-31 22:09:21,022.022 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:09:21,075.075 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:09:21,077.077 INFO    ] No update needed
[2026-08-31 22:09:21,080.080 INFO    ] Checking for camera pi updates...
[2026-08-31 22:09:21,119.119 INFO    ] 200
[2026-08-31 22:09:21,121.121 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:09:21,161.161 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:09:21,240.240 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:09:21,243.243 INFO    ] No camera update needed
[2026-08-31 22:09:21,245.245 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:09:21,247.247 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:09:21,253.253 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:09:21,258.258 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:09:23,298.298 INFO    ] ================================================
[2026-08-31 22:09:23,314.314 INFO    ] Launching Daemon at Mon Aug 31 22:09:23 IST 2026
[2026-08-31 22:09:23,325.325 INFO    ] ================================================
[2026-08-31 22:09:23,892.892 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:09:23
[2026-08-31 22:09:24,477.477 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:09:24,747.747 INFO    ] Initializing speech engine...
[2026-08-31 22:09:24,755.755 INFO    ] 2026-08-31 22:09:24
[2026-08-31 22:09:25,007.007 INFO    ] 2026-08-31 22:09:25
[2026-08-31 22:09:25,042.042 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:09:25,244.244 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:09:25,300.300 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:09:25,453.453 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:09:25,518.518 INFO    ] time= 31/08/2026 22:09:25
[2026-08-31 22:09:25,574.574 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:09:25,586.586 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:09:25,710.710 INFO    ] No existing commands found in stream
[2026-08-31 22:09:30,735.735 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:09:30,738.738 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-08-31 22:09:33,170.170 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 22:09:33,173.173 INFO    ] Checking for system updates...
[2026-08-31 22:09:33,210.210 INFO    ] 200
[2026-08-31 22:09:33,213.213 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:09:33,265.265 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:09:33,267.267 INFO    ] No update needed
[2026-08-31 22:09:33,270.270 INFO    ] Checking for camera pi updates...
[2026-08-31 22:09:33,304.304 INFO    ] 200
[2026-08-31 22:09:33,306.306 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:09:33,347.347 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:09:33,423.423 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:09:33,425.425 INFO    ] No camera update needed
[2026-08-31 22:09:33,427.427 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:09:33,430.430 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:09:33,435.435 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:09:33,440.440 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:09:35,485.485 INFO    ] ================================================
[2026-08-31 22:09:35,500.500 INFO    ] Launching Daemon at Mon Aug 31 22:09:35 IST 2026
[2026-08-31 22:09:35,511.511 INFO    ] ================================================
[2026-08-31 22:09:36,079.079 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:09:36
[2026-08-31 22:09:36,663.663 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:09:36,914.914 INFO    ] Initializing speech engine...
[2026-08-31 22:09:36,937.937 INFO    ] 2026-08-31 22:09:36
[2026-08-31 22:09:37,192.192 INFO    ] 2026-08-31 22:09:37
[2026-08-31 22:09:37,228.228 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:09:37,429.429 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:09:37,485.485 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:09:37,712.712 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:09:37,758.758 INFO    ] time= 31/08/2026 22:09:37
[2026-08-31 22:09:37,764.764 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:09:37,782.782 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:09:37,895.895 INFO    ] No existing commands found in stream
[2026-08-31 22:09:42,921.921 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:09:42,923.923 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-08-31 22:09:44,129.129 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 22:09:44,132.132 INFO    ] Checking for system updates...
[2026-08-31 22:09:44,169.169 INFO    ] 200
[2026-08-31 22:09:44,171.171 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:09:44,223.223 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:09:44,226.226 INFO    ] No update needed
[2026-08-31 22:09:44,229.229 INFO    ] Checking for camera pi updates...
[2026-08-31 22:09:44,267.267 INFO    ] 200
[2026-08-31 22:09:44,269.269 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:09:44,310.310 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:09:44,388.388 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:09:44,391.391 INFO    ] No camera update needed
[2026-08-31 22:09:44,393.393 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:09:44,395.395 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:09:44,401.401 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:09:44,405.405 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:09:46,456.456 INFO    ] ================================================
[2026-08-31 22:09:46,472.472 INFO    ] Launching Daemon at Mon Aug 31 22:09:46 IST 2026
[2026-08-31 22:09:46,483.483 INFO    ] ================================================
[2026-08-31 22:09:47,047.047 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:09:47
[2026-08-31 22:09:47,726.726 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:09:48,036.036 INFO    ] Initializing speech engine...
[2026-08-31 22:09:48,045.045 INFO    ] 2026-08-31 22:09:48
[2026-08-31 22:09:48,338.338 INFO    ] 2026-08-31 22:09:48
[2026-08-31 22:09:48,383.383 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:09:48,610.610 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:09:48,622.622 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:09:48,760.760 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:09:48,810.810 INFO    ] time= 31/08/2026 22:09:48
[2026-08-31 22:09:48,851.851 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:09:48,897.897 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:09:49,017.017 INFO    ] No existing commands found in stream
[2026-08-31 22:09:54,045.045 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:09:54,049.049 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-08-31 22:09:54,706.706 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 22:09:54,710.710 INFO    ] Checking for system updates...
[2026-08-31 22:09:54,746.746 INFO    ] 200
[2026-08-31 22:09:54,749.749 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:09:54,801.801 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:09:54,804.804 INFO    ] No update needed
[2026-08-31 22:09:54,806.806 INFO    ] Checking for camera pi updates...
[2026-08-31 22:09:54,841.841 INFO    ] 200
[2026-08-31 22:09:54,843.843 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:09:54,889.889 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:09:54,979.979 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:09:54,982.982 INFO    ] No camera update needed
[2026-08-31 22:09:54,984.984 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:09:54,986.986 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:09:54,992.992 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:09:54,996.996 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:09:57,037.037 INFO    ] ================================================
[2026-08-31 22:09:57,053.053 INFO    ] Launching Daemon at Mon Aug 31 22:09:57 IST 2026
[2026-08-31 22:09:57,064.064 INFO    ] ================================================
[2026-08-31 22:09:57,723.723 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:09:57
[2026-08-31 22:09:58,410.410 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:09:58,716.716 INFO    ] Initializing speech engine...
[2026-08-31 22:09:58,731.731 INFO    ] 2026-08-31 22:09:58
[2026-08-31 22:09:59,041.041 INFO    ] 2026-08-31 22:09:58
[2026-08-31 22:09:59,130.130 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:09:59,407.407 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:09:59,429.429 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:09:59,592.592 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:09:59,601.601 INFO    ] time= 31/08/2026 22:09:59
[2026-08-31 22:09:59,656.656 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:09:59,695.695 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:09:59,803.803 INFO    ] No existing commands found in stream
[2026-08-31 22:10:04,815.815 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:10:04,819.819 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-08-31 22:10:06,938.938 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 22:10:06,941.941 INFO    ] Checking for system updates...
[2026-08-31 22:10:06,978.978 INFO    ] 200
[2026-08-31 22:10:06,981.981 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:10:07,042.042 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:10:07,044.044 INFO    ] No update needed
[2026-08-31 22:10:07,047.047 INFO    ] Checking for camera pi updates...
[2026-08-31 22:10:07,081.081 INFO    ] 200
[2026-08-31 22:10:07,083.083 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:10:07,130.130 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:10:07,193.193 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:10:07,195.195 INFO    ] No camera update needed
[2026-08-31 22:10:07,198.198 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:10:07,200.200 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:10:07,205.205 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:10:07,210.210 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:10:09,250.250 INFO    ] ================================================
[2026-08-31 22:10:09,265.265 INFO    ] Launching Daemon at Mon Aug 31 22:10:09 IST 2026
[2026-08-31 22:10:09,276.276 INFO    ] ================================================
[2026-08-31 22:10:09,953.953 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:10:09
[2026-08-31 22:10:10,647.647 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:10:10,967.967 INFO    ] Initializing speech engine...
[2026-08-31 22:10:10,981.981 INFO    ] 2026-08-31 22:10:10
[2026-08-31 22:10:11,277.277 INFO    ] 2026-08-31 22:10:11
[2026-08-31 22:10:11,389.389 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:10:11,611.611 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:10:11,621.621 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:10:11,789.789 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:10:11,823.823 INFO    ] time= 31/08/2026 22:10:11
[2026-08-31 22:10:11,841.841 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:10:11,852.852 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:10:11,981.981 INFO    ] No existing commands found in stream
[2026-08-31 22:10:16,996.996 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:10:17,000.000 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-08-31 22:10:18,690.690 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 22:10:18,693.693 INFO    ] Checking for system updates...
[2026-08-31 22:10:18,738.738 INFO    ] 200
[2026-08-31 22:10:18,741.741 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:10:18,806.806 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:10:18,808.808 INFO    ] No update needed
[2026-08-31 22:10:18,811.811 INFO    ] Checking for camera pi updates...
[2026-08-31 22:10:18,849.849 INFO    ] 200
[2026-08-31 22:10:18,851.851 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:10:18,898.898 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:10:18,982.982 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:10:18,984.984 INFO    ] No camera update needed
[2026-08-31 22:10:18,987.987 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:10:18,989.989 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:10:18,994.994 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:10:18,999.999 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:10:21,039.039 INFO    ] ================================================
[2026-08-31 22:10:21,055.055 INFO    ] Launching Daemon at Mon Aug 31 22:10:21 IST 2026
[2026-08-31 22:10:21,066.066 INFO    ] ================================================
[2026-08-31 22:10:21,673.673 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:10:21
[2026-08-31 22:10:22,271.271 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:10:22,587.587 INFO    ] Initializing speech engine...
[2026-08-31 22:10:22,602.602 INFO    ] 2026-08-31 22:10:22
[2026-08-31 22:10:22,876.876 INFO    ] 2026-08-31 22:10:22
[2026-08-31 22:10:22,931.931 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:10:23,158.158 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:10:23,168.168 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:10:23,372.372 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:10:23,432.432 INFO    ] time= 31/08/2026 22:10:23
[2026-08-31 22:10:23,440.440 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:10:23,459.459 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:10:23,573.573 INFO    ] No existing commands found in stream
[2026-08-31 22:10:28,600.600 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:10:28,603.603 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-08-31 22:10:29,149.149 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 22:10:29,152.152 INFO    ] Checking for system updates...
[2026-08-31 22:10:29,193.193 INFO    ] 200
[2026-08-31 22:10:29,196.196 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:10:29,260.260 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:10:29,262.262 INFO    ] No update needed
[2026-08-31 22:10:29,264.264 INFO    ] Checking for camera pi updates...
[2026-08-31 22:10:29,301.301 INFO    ] 200
[2026-08-31 22:10:29,304.304 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:10:29,345.345 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:10:29,433.433 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:10:29,435.435 INFO    ] No camera update needed
[2026-08-31 22:10:29,438.438 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:10:29,440.440 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:10:29,445.445 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:10:29,450.450 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:10:31,491.491 INFO    ] ================================================
[2026-08-31 22:10:31,507.507 INFO    ] Launching Daemon at Mon Aug 31 22:10:31 IST 2026
[2026-08-31 22:10:31,518.518 INFO    ] ================================================
[2026-08-31 22:10:32,118.118 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:10:32
[2026-08-31 22:10:32,728.728 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:10:32,996.996 INFO    ] Initializing speech engine...
[2026-08-31 22:10:33,010.010 INFO    ] 2026-08-31 22:10:32
[2026-08-31 22:10:33,275.275 INFO    ] 2026-08-31 22:10:33
[2026-08-31 22:10:33,311.311 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:10:33,496.496 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:10:33,515.515 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:10:33,710.710 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:10:33,732.732 INFO    ] time= 31/08/2026 22:10:33
[2026-08-31 22:10:33,791.791 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:10:33,845.845 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:10:33,992.992 INFO    ] No existing commands found in stream
[2026-08-31 22:10:39,007.007 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:10:39,010.010 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-08-31 22:10:41,292.292 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 22:10:41,294.294 INFO    ] Checking for system updates...
[2026-08-31 22:10:41,335.335 INFO    ] 200
[2026-08-31 22:10:41,338.338 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:10:41,397.397 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:10:41,400.400 INFO    ] No update needed
[2026-08-31 22:10:41,403.403 INFO    ] Checking for camera pi updates...
[2026-08-31 22:10:41,441.441 INFO    ] 200
[2026-08-31 22:10:41,443.443 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:10:41,491.491 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:10:41,571.571 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:10:41,574.574 INFO    ] No camera update needed
[2026-08-31 22:10:41,576.576 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:10:41,579.579 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:10:41,584.584 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:10:41,589.589 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:10:43,630.630 INFO    ] ================================================
[2026-08-31 22:10:43,645.645 INFO    ] Launching Daemon at Mon Aug 31 22:10:43 IST 2026
[2026-08-31 22:10:43,656.656 INFO    ] ================================================
[2026-08-31 22:10:44,222.222 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:10:44
[2026-08-31 22:10:44,804.804 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:10:45,072.072 INFO    ] Initializing speech engine...
[2026-08-31 22:10:45,081.081 INFO    ] 2026-08-31 22:10:45
[2026-08-31 22:10:45,341.341 INFO    ] 2026-08-31 22:10:45
[2026-08-31 22:10:45,394.394 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:10:45,535.535 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:10:45,548.548 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:10:45,755.755 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:10:45,802.802 INFO    ] time= 31/08/2026 22:10:45
[2026-08-31 22:10:45,861.861 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:10:45,889.889 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:10:46,005.005 INFO    ] No existing commands found in stream
[2026-08-31 22:10:51,030.030 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:10:51,032.032 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-08-31 22:10:52,675.675 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 22:10:52,678.678 INFO    ] Checking for system updates...
[2026-08-31 22:10:52,716.716 INFO    ] 200
[2026-08-31 22:10:52,719.719 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:10:52,772.772 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:10:52,775.775 INFO    ] No update needed
[2026-08-31 22:10:52,777.777 INFO    ] Checking for camera pi updates...
[2026-08-31 22:10:52,814.814 INFO    ] 200
[2026-08-31 22:10:52,817.817 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:10:52,861.861 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:10:53,041.041 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:10:53,043.043 INFO    ] No camera update needed
[2026-08-31 22:10:53,045.045 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:10:53,048.048 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:10:53,053.053 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:10:53,058.058 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:10:55,100.100 INFO    ] ================================================
[2026-08-31 22:10:55,115.115 INFO    ] Launching Daemon at Mon Aug 31 22:10:55 IST 2026
[2026-08-31 22:10:55,126.126 INFO    ] ================================================
[2026-08-31 22:10:55,706.706 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:10:55
[2026-08-31 22:10:56,305.305 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:10:56,583.583 INFO    ] Initializing speech engine...
[2026-08-31 22:10:56,591.591 INFO    ] 2026-08-31 22:10:56
[2026-08-31 22:10:56,849.849 INFO    ] 2026-08-31 22:10:56
[2026-08-31 22:10:56,904.904 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:10:57,186.186 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:10:57,193.193 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:10:57,378.378 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:10:57,423.423 INFO    ] time= 31/08/2026 22:10:57
[2026-08-31 22:10:57,430.430 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:10:57,447.447 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:10:57,575.575 INFO    ] No existing commands found in stream
[2026-08-31 22:11:02,607.607 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:11:02,610.610 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-08-31 22:11:05,985.985 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 22:11:05,988.988 INFO    ] Checking for system updates...
[2026-08-31 22:11:06,028.028 INFO    ] 200
[2026-08-31 22:11:06,030.030 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:11:06,103.103 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:11:06,106.106 INFO    ] No update needed
[2026-08-31 22:11:06,108.108 INFO    ] Checking for camera pi updates...
[2026-08-31 22:11:06,142.142 INFO    ] 200
[2026-08-31 22:11:06,144.144 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:11:06,187.187 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:11:06,278.278 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:11:06,281.281 INFO    ] No camera update needed
[2026-08-31 22:11:06,283.283 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:11:06,286.286 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:11:06,291.291 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:11:06,296.296 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:11:08,338.338 INFO    ] ================================================
[2026-08-31 22:11:08,354.354 INFO    ] Launching Daemon at Mon Aug 31 22:11:08 IST 2026
[2026-08-31 22:11:08,365.365 INFO    ] ================================================
[2026-08-31 22:11:08,933.933 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:11:08
[2026-08-31 22:11:09,516.516 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:11:09,787.787 INFO    ] Initializing speech engine...
[2026-08-31 22:11:09,796.796 INFO    ] 2026-08-31 22:11:09
[2026-08-31 22:11:10,044.044 INFO    ] 2026-08-31 22:11:10
[2026-08-31 22:11:10,079.079 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:11:10,254.254 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:11:10,267.267 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:11:10,415.415 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:11:10,420.420 INFO    ] time= 31/08/2026 22:11:10
[2026-08-31 22:11:10,426.426 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:11:10,472.472 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:11:10,620.620 INFO    ] No existing commands found in stream
[2026-08-31 22:11:15,630.630 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:11:15,633.633 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-08-31 22:11:19,353.353 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 22:11:19,356.356 INFO    ] Checking for system updates...
[2026-08-31 22:11:19,392.392 INFO    ] 200
[2026-08-31 22:11:19,396.396 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:11:19,455.455 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:11:19,458.458 INFO    ] No update needed
[2026-08-31 22:11:19,461.461 INFO    ] Checking for camera pi updates...
[2026-08-31 22:11:19,498.498 INFO    ] 200
[2026-08-31 22:11:19,501.501 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:11:19,551.551 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:11:19,659.659 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:11:19,661.661 INFO    ] No camera update needed
[2026-08-31 22:11:19,664.664 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:11:19,666.666 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:11:19,673.673 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:11:19,678.678 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:11:21,720.720 INFO    ] ================================================
[2026-08-31 22:11:21,735.735 INFO    ] Launching Daemon at Mon Aug 31 22:11:21 IST 2026
[2026-08-31 22:11:21,746.746 INFO    ] ================================================
[2026-08-31 22:11:22,399.399 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:11:22
[2026-08-31 22:11:23,018.018 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:11:23,284.284 INFO    ] Initializing speech engine...
[2026-08-31 22:11:23,294.294 INFO    ] 2026-08-31 22:11:23
[2026-08-31 22:11:23,542.542 INFO    ] 2026-08-31 22:11:23
[2026-08-31 22:11:23,577.577 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:11:23,827.827 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:11:23,837.837 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:11:24,050.050 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:11:24,096.096 INFO    ] time= 31/08/2026 22:11:24
[2026-08-31 22:11:24,102.102 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:11:24,123.123 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:11:24,249.249 INFO    ] No existing commands found in stream
[2026-08-31 22:11:29,262.262 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:11:29,265.265 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-08-31 22:11:31,264.264 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 22:11:31,267.267 INFO    ] Checking for system updates...
[2026-08-31 22:11:31,302.302 INFO    ] 200
[2026-08-31 22:11:31,305.305 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:11:31,363.363 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:11:31,365.365 INFO    ] No update needed
[2026-08-31 22:11:31,368.368 INFO    ] Checking for camera pi updates...
[2026-08-31 22:11:31,404.404 INFO    ] 200
[2026-08-31 22:11:31,407.407 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:11:31,451.451 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:11:31,514.514 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:11:31,516.516 INFO    ] No camera update needed
[2026-08-31 22:11:31,519.519 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:11:31,521.521 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:11:31,526.526 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:11:31,531.531 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:11:33,575.575 INFO    ] ================================================
[2026-08-31 22:11:33,590.590 INFO    ] Launching Daemon at Mon Aug 31 22:11:33 IST 2026
[2026-08-31 22:11:33,601.601 INFO    ] ================================================
[2026-08-31 22:11:34,167.167 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:11:34
[2026-08-31 22:11:34,749.749 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:11:35,016.016 INFO    ] Initializing speech engine...
[2026-08-31 22:11:35,025.025 INFO    ] 2026-08-31 22:11:35
[2026-08-31 22:11:35,270.270 INFO    ] 2026-08-31 22:11:35
[2026-08-31 22:11:35,305.305 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:11:35,556.556 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:11:35,565.565 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:11:35,784.784 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:11:35,824.824 INFO    ] time= 31/08/2026 22:11:35
[2026-08-31 22:11:35,830.830 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:11:35,847.847 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:11:35,963.963 INFO    ] No existing commands found in stream
[2026-08-31 22:11:40,989.989 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:11:40,991.991 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-08-31 22:11:43,419.419 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 22:11:43,422.422 INFO    ] Checking for system updates...
[2026-08-31 22:11:43,458.458 INFO    ] 200
[2026-08-31 22:11:43,460.460 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:11:43,514.514 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:11:43,516.516 INFO    ] No update needed
[2026-08-31 22:11:43,519.519 INFO    ] Checking for camera pi updates...
[2026-08-31 22:11:43,558.558 INFO    ] 200
[2026-08-31 22:11:43,561.561 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:11:43,602.602 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:11:43,676.676 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:11:43,679.679 INFO    ] No camera update needed
[2026-08-31 22:11:43,681.681 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:11:43,684.684 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:11:43,690.690 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:11:43,696.696 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:11:45,739.739 INFO    ] ================================================
[2026-08-31 22:11:45,755.755 INFO    ] Launching Daemon at Mon Aug 31 22:11:45 IST 2026
[2026-08-31 22:11:45,765.765 INFO    ] ================================================
[2026-08-31 22:11:46,360.360 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:11:46
[2026-08-31 22:11:46,942.942 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:11:47,191.191 INFO    ] Initializing speech engine...
[2026-08-31 22:11:47,204.204 INFO    ] 2026-08-31 22:11:47
[2026-08-31 22:11:47,470.470 INFO    ] 2026-08-31 22:11:47
[2026-08-31 22:11:47,505.505 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:11:47,763.763 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:11:47,771.771 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:11:47,906.906 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:11:47,938.938 INFO    ] time= 31/08/2026 22:11:47
[2026-08-31 22:11:47,993.993 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:11:48,042.042 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:11:48,179.179 INFO    ] No existing commands found in stream
[2026-08-31 22:11:53,202.202 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:11:53,205.205 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-08-31 22:11:54,581.581 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 22:11:54,584.584 INFO    ] Checking for system updates...
[2026-08-31 22:11:54,624.624 INFO    ] 200
[2026-08-31 22:11:54,627.627 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:11:54,690.690 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:11:54,693.693 INFO    ] No update needed
[2026-08-31 22:11:54,696.696 INFO    ] Checking for camera pi updates...
[2026-08-31 22:11:54,730.730 INFO    ] 200
[2026-08-31 22:11:54,733.733 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:11:54,784.784 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:11:54,869.869 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:11:54,872.872 INFO    ] No camera update needed
[2026-08-31 22:11:54,875.875 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:11:54,878.878 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:11:54,884.884 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:11:54,890.890 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:11:56,932.932 INFO    ] ================================================
[2026-08-31 22:11:56,948.948 INFO    ] Launching Daemon at Mon Aug 31 22:11:56 IST 2026
[2026-08-31 22:11:56,960.960 INFO    ] ================================================
[2026-08-31 22:11:57,555.555 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:11:57
[2026-08-31 22:11:58,140.140 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:11:58,386.386 INFO    ] Initializing speech engine...
[2026-08-31 22:11:58,400.400 INFO    ] 2026-08-31 22:11:58
[2026-08-31 22:11:58,663.663 INFO    ] 2026-08-31 22:11:58
[2026-08-31 22:11:58,698.698 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:11:58,951.951 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:11:58,960.960 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:11:59,175.175 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:11:59,219.219 INFO    ] time= 31/08/2026 22:11:59
[2026-08-31 22:11:59,225.225 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:11:59,245.245 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:11:59,371.371 INFO    ] No existing commands found in stream
[2026-08-31 22:12:04,386.386 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:12:04,390.390 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-08-31 22:12:06,128.128 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 22:12:06,131.131 INFO    ] Checking for system updates...
[2026-08-31 22:12:06,172.172 INFO    ] 200
[2026-08-31 22:12:06,175.175 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:12:06,236.236 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:12:06,239.239 INFO    ] No update needed
[2026-08-31 22:12:06,242.242 INFO    ] Checking for camera pi updates...
[2026-08-31 22:12:06,280.280 INFO    ] 200
[2026-08-31 22:12:06,283.283 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:12:06,326.326 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:12:06,410.410 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:12:06,412.412 INFO    ] No camera update needed
[2026-08-31 22:12:06,415.415 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:12:06,418.418 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:12:06,424.424 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:12:06,430.430 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:12:08,473.473 INFO    ] ================================================
[2026-08-31 22:12:08,488.488 INFO    ] Launching Daemon at Mon Aug 31 22:12:08 IST 2026
[2026-08-31 22:12:08,500.500 INFO    ] ================================================
[2026-08-31 22:12:09,068.068 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:12:09
[2026-08-31 22:12:09,659.659 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:12:09,906.906 INFO    ] Initializing speech engine...
[2026-08-31 22:12:09,929.929 INFO    ] 2026-08-31 22:12:09
[2026-08-31 22:12:10,179.179 INFO    ] 2026-08-31 22:12:10
[2026-08-31 22:12:10,214.214 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:12:10,468.468 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:12:10,473.473 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:12:10,662.662 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:12:10,716.716 INFO    ] time= 31/08/2026 22:12:10
[2026-08-31 22:12:10,735.735 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:12:10,750.750 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:12:10,884.884 INFO    ] No existing commands found in stream
[2026-08-31 22:12:15,896.896 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:12:15,899.899 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-08-31 22:12:18,649.649 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 22:12:18,651.651 INFO    ] Checking for system updates...
[2026-08-31 22:12:18,687.687 INFO    ] 200
[2026-08-31 22:12:18,690.690 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:12:18,743.743 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:12:18,745.745 INFO    ] No update needed
[2026-08-31 22:12:18,747.747 INFO    ] Checking for camera pi updates...
[2026-08-31 22:12:18,782.782 INFO    ] 200
[2026-08-31 22:12:18,784.784 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:12:18,831.831 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:12:18,912.912 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:12:18,915.915 INFO    ] No camera update needed
[2026-08-31 22:12:18,917.917 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:12:18,919.919 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:12:18,924.924 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:12:18,929.929 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:12:20,970.970 INFO    ] ================================================
[2026-08-31 22:12:20,985.985 INFO    ] Launching Daemon at Mon Aug 31 22:12:20 IST 2026
[2026-08-31 22:12:21,996.996 INFO    ] ================================================
[2026-08-31 22:12:21,628.628 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:12:21
[2026-08-31 22:12:22,305.305 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:12:22,615.615 INFO    ] Initializing speech engine...
[2026-08-31 22:12:22,628.628 INFO    ] 2026-08-31 22:12:22
[2026-08-31 22:12:22,899.899 INFO    ] 2026-08-31 22:12:22
[2026-08-31 22:12:22,955.955 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:12:23,213.213 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:12:23,219.219 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:12:23,433.433 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:12:23,460.460 INFO    ] time= 31/08/2026 22:12:23
[2026-08-31 22:12:23,483.483 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:12:23,511.511 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:12:23,649.649 INFO    ] No existing commands found in stream
[2026-08-31 22:12:28,680.680 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:12:28,683.683 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-08-31 22:12:29,900.900 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 22:12:29,903.903 INFO    ] Checking for system updates...
[2026-08-31 22:12:29,941.941 INFO    ] 200
[2026-08-31 22:12:29,945.945 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:12:30,077.077 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:12:30,080.080 INFO    ] No update needed
[2026-08-31 22:12:30,083.083 INFO    ] Checking for camera pi updates...
[2026-08-31 22:12:30,118.118 INFO    ] 200
[2026-08-31 22:12:30,120.120 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:12:30,162.162 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:12:30,233.233 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:12:30,236.236 INFO    ] No camera update needed
[2026-08-31 22:12:30,239.239 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:12:30,241.241 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:12:30,248.248 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:12:30,253.253 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:12:32,299.299 INFO    ] ================================================
[2026-08-31 22:12:32,317.317 INFO    ] Launching Daemon at Mon Aug 31 22:12:32 IST 2026
[2026-08-31 22:12:32,329.329 INFO    ] ================================================
[2026-08-31 22:12:32,940.940 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:12:32
[2026-08-31 22:12:33,566.566 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:12:33,829.829 INFO    ] Initializing speech engine...
[2026-08-31 22:12:33,847.847 INFO    ] 2026-08-31 22:12:33
[2026-08-31 22:12:34,096.096 INFO    ] 2026-08-31 22:12:34
[2026-08-31 22:12:34,129.129 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:12:34,325.325 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:12:34,353.353 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:12:34,524.524 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:12:34,541.541 INFO    ] time= 31/08/2026 22:12:34
[2026-08-31 22:12:34,600.600 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:12:34,655.655 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:12:34,711.711 INFO    ] No existing commands found in stream
[2026-08-31 22:12:39,724.724 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:12:39,726.726 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-08-31 22:12:41,025.025 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 22:12:41,027.027 INFO    ] Checking for system updates...
[2026-08-31 22:12:41,063.063 INFO    ] 200
[2026-08-31 22:12:41,066.066 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:12:41,118.118 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:12:41,121.121 INFO    ] No update needed
[2026-08-31 22:12:41,123.123 INFO    ] Checking for camera pi updates...
[2026-08-31 22:12:41,156.156 INFO    ] 200
[2026-08-31 22:12:41,159.159 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:12:41,205.205 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:12:41,308.308 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:12:41,310.310 INFO    ] No camera update needed
[2026-08-31 22:12:41,312.312 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:12:41,315.315 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:12:41,320.320 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:12:41,325.325 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:12:43,366.366 INFO    ] ================================================
[2026-08-31 22:12:43,382.382 INFO    ] Launching Daemon at Mon Aug 31 22:12:43 IST 2026
[2026-08-31 22:12:43,392.392 INFO    ] ================================================
[2026-08-31 22:12:43,960.960 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:12:43
[2026-08-31 22:12:44,545.545 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:12:44,812.812 INFO    ] Initializing speech engine...
[2026-08-31 22:12:44,825.825 INFO    ] 2026-08-31 22:12:44
[2026-08-31 22:12:45,076.076 INFO    ] 2026-08-31 22:12:45
[2026-08-31 22:12:45,111.111 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:12:45,311.311 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:12:45,333.333 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:12:45,516.516 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:12:45,527.527 INFO    ] time= 31/08/2026 22:12:45
[2026-08-31 22:12:45,581.581 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:12:45,641.641 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:12:45,712.712 INFO    ] No existing commands found in stream
[2026-08-31 22:12:50,723.723 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:12:50,726.726 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-08-31 22:12:54,410.410 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 22:12:54,413.413 INFO    ] Checking for system updates...
[2026-08-31 22:12:54,456.456 INFO    ] 200
[2026-08-31 22:12:54,460.460 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:12:54,515.515 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:12:54,518.518 INFO    ] No update needed
[2026-08-31 22:12:54,521.521 INFO    ] Checking for camera pi updates...
[2026-08-31 22:12:54,555.555 INFO    ] 200
[2026-08-31 22:12:54,558.558 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:12:54,598.598 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:12:54,679.679 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:12:54,682.682 INFO    ] No camera update needed
[2026-08-31 22:12:54,684.684 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:12:54,686.686 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:12:54,692.692 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:12:54,697.697 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:12:56,741.741 INFO    ] ================================================
[2026-08-31 22:12:56,757.757 INFO    ] Launching Daemon at Mon Aug 31 22:12:56 IST 2026
[2026-08-31 22:12:56,768.768 INFO    ] ================================================
[2026-08-31 22:12:57,412.412 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:12:57
[2026-08-31 22:12:57,994.994 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:12:58,242.242 INFO    ] Initializing speech engine...
[2026-08-31 22:12:58,256.256 INFO    ] 2026-08-31 22:12:58
[2026-08-31 22:12:58,523.523 INFO    ] 2026-08-31 22:12:58
[2026-08-31 22:12:58,558.558 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:12:58,732.732 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:12:58,744.744 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:12:58,888.888 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:12:58,895.895 INFO    ] time= 31/08/2026 22:12:58
[2026-08-31 22:12:58,903.903 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:12:58,955.955 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:12:59,098.098 INFO    ] No existing commands found in stream
[2026-08-31 22:13:04,108.108 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:13:04,111.111 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-08-31 22:13:06,547.547 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 22:13:06,550.550 INFO    ] Checking for system updates...
[2026-08-31 22:13:06,591.591 INFO    ] 200
[2026-08-31 22:13:06,593.593 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:13:06,659.659 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:13:06,662.662 INFO    ] No update needed
[2026-08-31 22:13:06,664.664 INFO    ] Checking for camera pi updates...
[2026-08-31 22:13:06,698.698 INFO    ] 200
[2026-08-31 22:13:06,700.700 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:13:06,745.745 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:13:06,833.833 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:13:06,836.836 INFO    ] No camera update needed
[2026-08-31 22:13:06,838.838 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:13:06,840.840 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:13:06,846.846 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:13:06,851.851 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:13:08,892.892 INFO    ] ================================================
[2026-08-31 22:13:08,907.907 INFO    ] Launching Daemon at Mon Aug 31 22:13:08 IST 2026
[2026-08-31 22:13:08,918.918 INFO    ] ================================================
[2026-08-31 22:13:09,576.576 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:13:09
[2026-08-31 22:13:10,253.253 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:13:10,557.557 INFO    ] Initializing speech engine...
[2026-08-31 22:13:10,569.569 INFO    ] 2026-08-31 22:13:10
[2026-08-31 22:13:10,857.857 INFO    ] 2026-08-31 22:13:10
[2026-08-31 22:13:10,968.968 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:13:11,122.122 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:13:11,128.128 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:13:11,262.262 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:13:11,312.312 INFO    ] time= 31/08/2026 22:13:11
[2026-08-31 22:13:11,367.367 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:13:11,394.394 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:13:11,469.469 INFO    ] No existing commands found in stream
[2026-08-31 22:13:16,506.506 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:13:16,510.510 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-08-31 22:13:18,831.831 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 22:13:18,834.834 INFO    ] Checking for system updates...
[2026-08-31 22:13:18,871.871 INFO    ] 200
[2026-08-31 22:13:18,873.873 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:13:18,925.925 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:13:18,928.928 INFO    ] No update needed
[2026-08-31 22:13:18,931.931 INFO    ] Checking for camera pi updates...
[2026-08-31 22:13:18,964.964 INFO    ] 200
[2026-08-31 22:13:18,966.966 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:13:19,012.012 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:13:19,100.100 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:13:19,102.102 INFO    ] No camera update needed
[2026-08-31 22:13:19,104.104 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:13:19,106.106 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:13:19,112.112 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:13:19,117.117 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:13:21,157.157 INFO    ] ================================================
[2026-08-31 22:13:21,173.173 INFO    ] Launching Daemon at Mon Aug 31 22:13:21 IST 2026
[2026-08-31 22:13:21,185.185 INFO    ] ================================================
[2026-08-31 22:13:21,790.790 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:13:21
[2026-08-31 22:13:22,461.461 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:13:22,744.744 INFO    ] Initializing speech engine...
[2026-08-31 22:13:22,753.753 INFO    ] 2026-08-31 22:13:22
[2026-08-31 22:13:23,003.003 INFO    ] 2026-08-31 22:13:22
[2026-08-31 22:13:23,038.038 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:13:23,210.210 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:13:23,223.223 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:13:23,366.366 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:13:23,375.375 INFO    ] time= 31/08/2026 22:13:23
[2026-08-31 22:13:23,420.420 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:13:23,441.441 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:13:23,567.567 INFO    ] No existing commands found in stream
[2026-08-31 22:13:28,578.578 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:13:28,581.581 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-08-31 22:13:32,783.783 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 22:13:32,787.787 INFO    ] Checking for system updates...
[2026-08-31 22:13:32,828.828 INFO    ] 200
[2026-08-31 22:13:32,831.831 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:13:32,895.895 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:13:32,899.899 INFO    ] No update needed
[2026-08-31 22:13:32,902.902 INFO    ] Checking for camera pi updates...
[2026-08-31 22:13:32,951.951 INFO    ] 200
[2026-08-31 22:13:32,955.955 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:13:33,008.008 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:13:33,089.089 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:13:33,091.091 INFO    ] No camera update needed
[2026-08-31 22:13:33,094.094 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:13:33,096.096 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:13:33,102.102 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:13:33,107.107 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:13:35,148.148 INFO    ] ================================================
[2026-08-31 22:13:35,164.164 INFO    ] Launching Daemon at Mon Aug 31 22:13:35 IST 2026
[2026-08-31 22:13:35,174.174 INFO    ] ================================================
[2026-08-31 22:13:35,740.740 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:13:35
[2026-08-31 22:13:36,323.323 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:13:36,567.567 INFO    ] Initializing speech engine...
[2026-08-31 22:13:36,582.582 INFO    ] 2026-08-31 22:13:36
[2026-08-31 22:13:36,853.853 INFO    ] 2026-08-31 22:13:36
[2026-08-31 22:13:36,889.889 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:13:37,087.087 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:13:37,115.115 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:13:37,290.290 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:13:37,337.337 INFO    ] time= 31/08/2026 22:13:37
[2026-08-31 22:13:37,386.386 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:13:37,429.429 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:13:37,484.484 INFO    ] No existing commands found in stream
[2026-08-31 22:13:42,495.495 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:13:42,498.498 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-08-31 22:13:46,790.790 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 22:13:46,799.799 INFO    ] Checking for system updates...
[2026-08-31 22:13:46,849.849 INFO    ] 200
[2026-08-31 22:13:46,852.852 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:13:46,905.905 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:13:46,908.908 INFO    ] No update needed
[2026-08-31 22:13:46,910.910 INFO    ] Checking for camera pi updates...
[2026-08-31 22:13:46,944.944 INFO    ] 200
[2026-08-31 22:13:46,946.946 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:13:46,988.988 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:13:47,068.068 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:13:47,071.071 INFO    ] No camera update needed
[2026-08-31 22:13:47,073.073 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:13:47,075.075 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:13:47,081.081 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:13:47,085.085 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:13:49,129.129 INFO    ] ================================================
[2026-08-31 22:13:49,145.145 INFO    ] Launching Daemon at Mon Aug 31 22:13:49 IST 2026
[2026-08-31 22:13:49,156.156 INFO    ] ================================================
[2026-08-31 22:13:49,814.814 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:13:49
[2026-08-31 22:13:50,489.489 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:13:50,792.792 INFO    ] Initializing speech engine...
[2026-08-31 22:13:50,804.804 INFO    ] 2026-08-31 22:13:50
[2026-08-31 22:13:51,084.084 INFO    ] 2026-08-31 22:13:51
[2026-08-31 22:13:51,128.128 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:13:51,375.375 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:13:51,382.382 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:13:51,569.569 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:13:51,615.615 INFO    ] time= 31/08/2026 22:13:51
[2026-08-31 22:13:51,623.623 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:13:51,645.645 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:13:51,786.786 INFO    ] No existing commands found in stream
[2026-08-31 22:13:56,824.824 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:13:56,832.832 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-08-31 22:13:57,731.731 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 22:13:57,734.734 INFO    ] Checking for system updates...
[2026-08-31 22:13:57,775.775 INFO    ] 200
[2026-08-31 22:13:57,778.778 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:13:57,830.830 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:13:57,833.833 INFO    ] No update needed
[2026-08-31 22:13:57,835.835 INFO    ] Checking for camera pi updates...
[2026-08-31 22:13:57,876.876 INFO    ] 200
[2026-08-31 22:13:57,878.878 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:13:57,924.924 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:13:58,010.010 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:13:58,012.012 INFO    ] No camera update needed
[2026-08-31 22:13:58,015.015 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:13:58,017.017 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:13:58,022.022 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:13:58,027.027 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:14:00,067.067 INFO    ] ================================================
[2026-08-31 22:14:00,083.083 INFO    ] Launching Daemon at Mon Aug 31 22:14:00 IST 2026
[2026-08-31 22:14:00,094.094 INFO    ] ================================================
[2026-08-31 22:14:00,676.676 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:14:00
[2026-08-31 22:14:01,273.273 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:14:01,553.553 INFO    ] Initializing speech engine...
[2026-08-31 22:14:01,558.558 INFO    ] 2026-08-31 22:14:01
[2026-08-31 22:14:01,991.991 INFO    ] 2026-08-31 22:14:01
[2026-08-31 22:14:02,034.034 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:14:02,285.285 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:14:02,307.307 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:14:02,456.456 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:14:02,467.467 INFO    ] time= 31/08/2026 22:14:02
[2026-08-31 22:14:02,532.532 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:14:02,554.554 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:14:02,686.686 INFO    ] No existing commands found in stream
[2026-08-31 22:14:07,702.702 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:14:07,705.705 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-08-31 22:14:09,916.916 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 22:14:09,919.919 INFO    ] Checking for system updates...
[2026-08-31 22:14:09,955.955 INFO    ] 200
[2026-08-31 22:14:09,957.957 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:14:10,010.010 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:14:10,012.012 INFO    ] No update needed
[2026-08-31 22:14:10,015.015 INFO    ] Checking for camera pi updates...
[2026-08-31 22:14:10,049.049 INFO    ] 200
[2026-08-31 22:14:10,051.051 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:14:10,097.097 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:14:10,187.187 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:14:10,189.189 INFO    ] No camera update needed
[2026-08-31 22:14:10,192.192 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:14:10,194.194 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:14:10,199.199 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:14:10,204.204 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:14:12,244.244 INFO    ] ================================================
[2026-08-31 22:14:12,259.259 INFO    ] Launching Daemon at Mon Aug 31 22:14:12 IST 2026
[2026-08-31 22:14:12,269.269 INFO    ] ================================================
[2026-08-31 22:14:12,839.839 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:14:12
[2026-08-31 22:14:13,430.430 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:14:13,689.689 INFO    ] Initializing speech engine...
[2026-08-31 22:14:13,695.695 INFO    ] 2026-08-31 22:14:13
[2026-08-31 22:14:13,992.992 INFO    ] 2026-08-31 22:14:13
[2026-08-31 22:14:14,026.026 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:14:14,229.229 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:14:14,244.244 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:14:14,371.371 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:14:14,376.376 INFO    ] time= 31/08/2026 22:14:14
[2026-08-31 22:14:14,397.397 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:14:14,419.419 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:14:14,501.501 INFO    ] No existing commands found in stream
[2026-08-31 22:14:19,514.514 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:14:19,517.517 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-08-31 22:14:21,696.696 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 22:14:21,699.699 INFO    ] Checking for system updates...
[2026-08-31 22:14:21,736.736 INFO    ] 200
[2026-08-31 22:14:21,739.739 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:14:21,800.800 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:14:21,803.803 INFO    ] No update needed
[2026-08-31 22:14:21,806.806 INFO    ] Checking for camera pi updates...
[2026-08-31 22:14:21,841.841 INFO    ] 200
[2026-08-31 22:14:21,844.844 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:14:21,891.891 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:14:21,976.976 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:14:21,979.979 INFO    ] No camera update needed
[2026-08-31 22:14:21,981.981 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:14:21,984.984 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:14:21,989.989 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:14:21,998.998 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:14:24,038.038 INFO    ] ================================================
[2026-08-31 22:14:24,052.052 INFO    ] Launching Daemon at Mon Aug 31 22:14:24 IST 2026
[2026-08-31 22:14:24,063.063 INFO    ] ================================================
[2026-08-31 22:14:24,637.637 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:14:24
[2026-08-31 22:14:25,236.236 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:14:25,541.541 INFO    ] Initializing speech engine...
[2026-08-31 22:14:25,551.551 INFO    ] 2026-08-31 22:14:25
[2026-08-31 22:14:25,833.833 INFO    ] 2026-08-31 22:14:25
[2026-08-31 22:14:25,888.888 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:14:26,140.140 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:14:26,148.148 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:14:26,353.353 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:14:26,393.393 INFO    ] time= 31/08/2026 22:14:26
[2026-08-31 22:14:26,410.410 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:14:26,435.435 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:14:26,562.562 INFO    ] No existing commands found in stream
[2026-08-31 22:14:31,589.589 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:14:31,592.592 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-08-31 22:14:35,117.117 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 22:14:35,120.120 INFO    ] Checking for system updates...
[2026-08-31 22:14:35,163.163 INFO    ] 200
[2026-08-31 22:14:35,166.166 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:14:35,228.228 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:14:35,230.230 INFO    ] No update needed
[2026-08-31 22:14:35,233.233 INFO    ] Checking for camera pi updates...
[2026-08-31 22:14:35,272.272 INFO    ] 200
[2026-08-31 22:14:35,275.275 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:14:35,318.318 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:14:35,406.406 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:14:35,409.409 INFO    ] No camera update needed
[2026-08-31 22:14:35,412.412 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:14:35,415.415 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:14:35,421.421 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:14:35,427.427 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:14:37,470.470 INFO    ] ================================================
[2026-08-31 22:14:37,485.485 INFO    ] Launching Daemon at Mon Aug 31 22:14:37 IST 2026
[2026-08-31 22:14:37,495.495 INFO    ] ================================================
[2026-08-31 22:14:38,150.150 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:14:38
[2026-08-31 22:14:38,816.816 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:14:39,082.082 INFO    ] Initializing speech engine...
[2026-08-31 22:14:39,091.091 INFO    ] 2026-08-31 22:14:39
[2026-08-31 22:14:39,342.342 INFO    ] 2026-08-31 22:14:39
[2026-08-31 22:14:39,400.400 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:14:39,624.624 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:14:39,629.629 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:14:39,759.759 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:14:39,806.806 INFO    ] time= 31/08/2026 22:14:39
[2026-08-31 22:14:39,871.871 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:14:39,891.891 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:14:40,029.029 INFO    ] No existing commands found in stream
[2026-08-31 22:14:45,050.050 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:14:45,053.053 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-08-31 22:14:47,501.501 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 22:14:47,504.504 INFO    ] Checking for system updates...
[2026-08-31 22:14:47,545.545 INFO    ] 200
[2026-08-31 22:14:47,549.549 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:14:47,603.603 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:14:47,606.606 INFO    ] No update needed
[2026-08-31 22:14:47,609.609 INFO    ] Checking for camera pi updates...
[2026-08-31 22:14:47,644.644 INFO    ] 200
[2026-08-31 22:14:47,646.646 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:14:47,690.690 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:14:47,760.760 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:14:47,763.763 INFO    ] No camera update needed
[2026-08-31 22:14:47,765.765 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:14:47,768.768 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:14:47,775.775 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:14:47,780.780 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:14:49,825.825 INFO    ] ================================================
[2026-08-31 22:14:49,840.840 INFO    ] Launching Daemon at Mon Aug 31 22:14:49 IST 2026
[2026-08-31 22:14:49,851.851 INFO    ] ================================================
[2026-08-31 22:14:50,424.424 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:14:50
[2026-08-31 22:14:51,111.111 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:14:51,424.424 INFO    ] Initializing speech engine...
[2026-08-31 22:14:51,436.436 INFO    ] 2026-08-31 22:14:51
[2026-08-31 22:14:51,710.710 INFO    ] 2026-08-31 22:14:51
[2026-08-31 22:14:51,763.763 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:14:51,999.999 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:14:52,004.004 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:14:52,245.245 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:14:52,271.271 INFO    ] time= 31/08/2026 22:14:52
[2026-08-31 22:14:52,288.288 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:14:52,297.297 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:14:52,422.422 INFO    ] No existing commands found in stream
[2026-08-31 22:14:57,440.440 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:14:57,443.443 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-08-31 22:14:59,173.173 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 22:14:59,176.176 INFO    ] Checking for system updates...
[2026-08-31 22:14:59,223.223 INFO    ] 200
[2026-08-31 22:14:59,226.226 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:14:59,284.284 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:14:59,286.286 INFO    ] No update needed
[2026-08-31 22:14:59,289.289 INFO    ] Checking for camera pi updates...
[2026-08-31 22:14:59,323.323 INFO    ] 200
[2026-08-31 22:14:59,326.326 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:14:59,370.370 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:14:59,453.453 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:14:59,455.455 INFO    ] No camera update needed
[2026-08-31 22:14:59,458.458 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:14:59,460.460 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:14:59,465.465 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:14:59,471.471 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:15:01,510.510 INFO    ] ================================================
[2026-08-31 22:15:01,526.526 INFO    ] Launching Daemon at Mon Aug 31 22:15:01 IST 2026
[2026-08-31 22:15:01,537.537 INFO    ] ================================================
[2026-08-31 22:15:02,847.847 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:15:02
[2026-08-31 22:15:03,536.536 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:15:03,821.821 INFO    ] Initializing speech engine...
[2026-08-31 22:15:03,832.832 INFO    ] 2026-08-31 22:15:03
[2026-08-31 22:15:04,105.105 INFO    ] 2026-08-31 22:15:04
[2026-08-31 22:15:04,143.143 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:15:04,345.345 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:15:04,360.360 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:15:04,504.504 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:15:04,512.512 INFO    ] time= 31/08/2026 22:15:04
[2026-08-31 22:15:04,519.519 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:15:04,568.568 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:15:04,701.701 INFO    ] No existing commands found in stream
[2026-08-31 22:15:09,723.723 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:15:09,726.726 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-08-31 22:15:12,986.986 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 22:15:12,989.989 INFO    ] Checking for system updates...
[2026-08-31 22:15:13,025.025 INFO    ] 200
[2026-08-31 22:15:13,028.028 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:15:13,080.080 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:15:13,082.082 INFO    ] No update needed
[2026-08-31 22:15:13,085.085 INFO    ] Checking for camera pi updates...
[2026-08-31 22:15:13,118.118 INFO    ] 200
[2026-08-31 22:15:13,121.121 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:15:13,162.162 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:15:13,357.357 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:15:13,360.360 INFO    ] No camera update needed
[2026-08-31 22:15:13,362.362 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:15:13,364.364 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:15:13,370.370 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:15:13,374.374 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:15:15,415.415 INFO    ] ================================================
[2026-08-31 22:15:15,431.431 INFO    ] Launching Daemon at Mon Aug 31 22:15:15 IST 2026
[2026-08-31 22:15:15,442.442 INFO    ] ================================================
[2026-08-31 22:15:16,009.009 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:15:16
[2026-08-31 22:15:16,591.591 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:15:16,840.840 INFO    ] Initializing speech engine...
[2026-08-31 22:15:16,848.848 INFO    ] 2026-08-31 22:15:16
[2026-08-31 22:15:17,145.145 INFO    ] 2026-08-31 22:15:17
[2026-08-31 22:15:17,180.180 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:15:17,379.379 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:15:17,391.391 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:15:17,534.534 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:15:17,543.543 INFO    ] time= 31/08/2026 22:15:17
[2026-08-31 22:15:17,551.551 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:15:17,602.602 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:15:17,741.741 INFO    ] No existing commands found in stream
[2026-08-31 22:15:22,755.755 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:15:22,758.758 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-08-31 22:15:25,466.466 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 22:15:25,469.469 INFO    ] Checking for system updates...
[2026-08-31 22:15:25,505.505 INFO    ] 200
[2026-08-31 22:15:25,507.507 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:15:25,566.566 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:15:25,569.569 INFO    ] No update needed
[2026-08-31 22:15:25,571.571 INFO    ] Checking for camera pi updates...
[2026-08-31 22:15:25,609.609 INFO    ] 200
[2026-08-31 22:15:25,611.611 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:15:25,656.656 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:15:25,737.737 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:15:25,740.740 INFO    ] No camera update needed
[2026-08-31 22:15:25,742.742 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:15:25,745.745 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:15:25,750.750 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:15:25,755.755 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:15:27,796.796 INFO    ] ================================================
[2026-08-31 22:15:27,812.812 INFO    ] Launching Daemon at Mon Aug 31 22:15:27 IST 2026
[2026-08-31 22:15:27,823.823 INFO    ] ================================================
[2026-08-31 22:15:28,391.391 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:15:28
[2026-08-31 22:15:28,976.976 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:15:29,230.230 INFO    ] Initializing speech engine...
[2026-08-31 22:15:29,239.239 INFO    ] 2026-08-31 22:15:29
[2026-08-31 22:15:29,538.538 INFO    ] 2026-08-31 22:15:29
[2026-08-31 22:15:29,578.578 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:15:29,773.773 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:15:29,787.787 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:15:29,936.936 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:15:29,943.943 INFO    ] time= 31/08/2026 22:15:29
[2026-08-31 22:15:29,949.949 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:15:29,989.989 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:15:30,138.138 INFO    ] No existing commands found in stream
[2026-08-31 22:15:35,149.149 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:15:35,152.152 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-08-31 22:15:36,650.650 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 22:15:36,653.653 INFO    ] Checking for system updates...
[2026-08-31 22:15:36,692.692 INFO    ] 200
[2026-08-31 22:15:36,695.695 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:15:36,753.753 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:15:36,755.755 INFO    ] No update needed
[2026-08-31 22:15:36,758.758 INFO    ] Checking for camera pi updates...
[2026-08-31 22:15:36,795.795 INFO    ] 200
[2026-08-31 22:15:36,798.798 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:15:36,839.839 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:15:37,098.098 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:15:37,101.101 INFO    ] No camera update needed
[2026-08-31 22:15:37,103.103 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:15:37,105.105 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:15:37,111.111 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:15:37,116.116 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:15:39,156.156 INFO    ] ================================================
[2026-08-31 22:15:39,172.172 INFO    ] Launching Daemon at Mon Aug 31 22:15:39 IST 2026
[2026-08-31 22:15:39,183.183 INFO    ] ================================================
[2026-08-31 22:15:39,763.763 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:15:39
[2026-08-31 22:15:40,363.363 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:15:40,641.641 INFO    ] Initializing speech engine...
[2026-08-31 22:15:40,647.647 INFO    ] 2026-08-31 22:15:40
[2026-08-31 22:15:40,910.910 INFO    ] 2026-08-31 22:15:40
[2026-08-31 22:15:40,964.964 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:15:41,193.193 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:15:41,197.197 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:15:41,324.324 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:15:41,342.342 INFO    ] time= 31/08/2026 22:15:41
[2026-08-31 22:15:41,387.387 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:15:41,436.436 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:15:41,543.543 INFO    ] No existing commands found in stream
[2026-08-31 22:15:46,554.554 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:15:46,557.557 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-08-31 22:15:50,223.223 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 22:15:50,225.225 INFO    ] Checking for system updates...
[2026-08-31 22:15:50,262.262 INFO    ] 200
[2026-08-31 22:15:50,264.264 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:15:50,318.318 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:15:50,321.321 INFO    ] No update needed
[2026-08-31 22:15:50,323.323 INFO    ] Checking for camera pi updates...
[2026-08-31 22:15:50,361.361 INFO    ] 200
[2026-08-31 22:15:50,363.363 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:15:50,403.403 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:15:50,484.484 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:15:50,486.486 INFO    ] No camera update needed
[2026-08-31 22:15:50,489.489 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:15:50,491.491 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:15:50,497.497 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:15:50,502.502 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:15:52,543.543 INFO    ] ================================================
[2026-08-31 22:15:52,559.559 INFO    ] Launching Daemon at Mon Aug 31 22:15:52 IST 2026
[2026-08-31 22:15:52,569.569 INFO    ] ================================================
[2026-08-31 22:15:53,136.136 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:15:53
[2026-08-31 22:15:53,719.719 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:15:53,986.986 INFO    ] Initializing speech engine...
[2026-08-31 22:15:53,995.995 INFO    ] 2026-08-31 22:15:53
[2026-08-31 22:15:54,248.248 INFO    ] 2026-08-31 22:15:54
[2026-08-31 22:15:54,307.307 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:15:54,526.526 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:15:54,556.556 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:15:54,792.792 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:15:54,809.809 INFO    ] time= 31/08/2026 22:15:54
[2026-08-31 22:15:54,815.815 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:15:54,826.826 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:15:54,968.968 INFO    ] No existing commands found in stream
[2026-08-31 22:15:59,993.993 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:15:59,996.996 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-08-31 22:16:03,612.612 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 22:16:03,614.614 INFO    ] Checking for system updates...
[2026-08-31 22:16:03,653.653 INFO    ] 200
[2026-08-31 22:16:03,655.655 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:16:03,713.713 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:16:03,715.715 INFO    ] No update needed
[2026-08-31 22:16:03,717.717 INFO    ] Checking for camera pi updates...
[2026-08-31 22:16:03,754.754 INFO    ] 200
[2026-08-31 22:16:03,760.760 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:16:03,804.804 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:16:03,908.908 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:16:03,911.911 INFO    ] No camera update needed
[2026-08-31 22:16:03,913.913 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:16:03,915.915 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:16:03,921.921 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:16:03,926.926 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:16:05,970.970 INFO    ] ================================================
[2026-08-31 22:16:05,985.985 INFO    ] Launching Daemon at Mon Aug 31 22:16:05 IST 2026
[2026-08-31 22:16:06,996.996 INFO    ] ================================================
[2026-08-31 22:16:06,670.670 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:16:06
[2026-08-31 22:16:07,324.324 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:16:07,627.627 INFO    ] Initializing speech engine...
[2026-08-31 22:16:07,638.638 INFO    ] 2026-08-31 22:16:07
[2026-08-31 22:16:07,900.900 INFO    ] 2026-08-31 22:16:07
[2026-08-31 22:16:07,942.942 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:16:08,222.222 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:16:08,230.230 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:16:08,398.398 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:16:08,428.428 INFO    ] time= 31/08/2026 22:16:08
[2026-08-31 22:16:08,446.446 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:16:08,455.455 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:16:08,558.558 INFO    ] No existing commands found in stream
[2026-08-31 22:16:13,583.583 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:16:13,586.586 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-08-31 22:16:17,628.628 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 22:16:17,631.631 INFO    ] Checking for system updates...
[2026-08-31 22:16:17,682.682 INFO    ] 200
[2026-08-31 22:16:17,684.684 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:16:17,743.743 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:16:17,745.745 INFO    ] No update needed
[2026-08-31 22:16:17,748.748 INFO    ] Checking for camera pi updates...
[2026-08-31 22:16:17,782.782 INFO    ] 200
[2026-08-31 22:16:17,784.784 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:16:17,825.825 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:16:17,905.905 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:16:17,908.908 INFO    ] No camera update needed
[2026-08-31 22:16:17,911.911 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:16:17,913.913 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:16:17,919.919 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:16:17,924.924 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:16:19,965.965 INFO    ] ================================================
[2026-08-31 22:16:19,981.981 INFO    ] Launching Daemon at Mon Aug 31 22:16:19 IST 2026
[2026-08-31 22:16:19,992.992 INFO    ] ================================================
[2026-08-31 22:16:20,573.573 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:16:20
[2026-08-31 22:16:21,172.172 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:16:21,444.444 INFO    ] Initializing speech engine...
[2026-08-31 22:16:21,454.454 INFO    ] 2026-08-31 22:16:21
[2026-08-31 22:16:21,716.716 INFO    ] 2026-08-31 22:16:21
[2026-08-31 22:16:21,769.769 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:16:22,016.016 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:16:22,023.023 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:16:22,217.217 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:16:22,259.259 INFO    ] time= 31/08/2026 22:16:22
[2026-08-31 22:16:22,265.265 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:16:22,282.282 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:16:22,413.413 INFO    ] No existing commands found in stream
[2026-08-31 22:16:27,432.432 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:16:27,435.435 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-08-31 22:16:29,505.505 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 22:16:29,508.508 INFO    ] Checking for system updates...
[2026-08-31 22:16:29,545.545 INFO    ] 200
[2026-08-31 22:16:29,548.548 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:16:29,601.601 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:16:29,603.603 INFO    ] No update needed
[2026-08-31 22:16:29,606.606 INFO    ] Checking for camera pi updates...
[2026-08-31 22:16:29,639.639 INFO    ] 200
[2026-08-31 22:16:29,642.642 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:16:29,683.683 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:16:29,763.763 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:16:29,766.766 INFO    ] No camera update needed
[2026-08-31 22:16:29,768.768 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:16:29,771.771 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:16:29,776.776 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:16:29,781.781 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:16:31,827.827 INFO    ] ================================================
[2026-08-31 22:16:31,845.845 INFO    ] Launching Daemon at Mon Aug 31 22:16:31 IST 2026
[2026-08-31 22:16:31,856.856 INFO    ] ================================================
[2026-08-31 22:16:32,460.460 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:16:32
[2026-08-31 22:16:33,119.119 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:16:33,404.404 INFO    ] Initializing speech engine...
[2026-08-31 22:16:33,424.424 INFO    ] 2026-08-31 22:16:33
[2026-08-31 22:16:33,689.689 INFO    ] 2026-08-31 22:16:33
[2026-08-31 22:16:33,732.732 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:16:33,986.986 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:16:33,997.997 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:16:34,220.220 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:16:34,263.263 INFO    ] time= 31/08/2026 22:16:34
[2026-08-31 22:16:34,270.270 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:16:34,292.292 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:16:34,438.438 INFO    ] No existing commands found in stream
[2026-08-31 22:16:39,470.470 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:16:39,474.474 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-08-31 22:16:43,349.349 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 22:16:43,352.352 INFO    ] Checking for system updates...
[2026-08-31 22:16:43,389.389 INFO    ] 200
[2026-08-31 22:16:43,391.391 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:16:43,455.455 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:16:43,458.458 INFO    ] No update needed
[2026-08-31 22:16:43,460.460 INFO    ] Checking for camera pi updates...
[2026-08-31 22:16:43,497.497 INFO    ] 200
[2026-08-31 22:16:43,499.499 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:16:43,544.544 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:16:43,635.635 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:16:43,637.637 INFO    ] No camera update needed
[2026-08-31 22:16:43,640.640 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:16:43,642.642 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:16:43,647.647 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:16:43,652.652 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:16:45,692.692 INFO    ] ================================================
[2026-08-31 22:16:45,707.707 INFO    ] Launching Daemon at Mon Aug 31 22:16:45 IST 2026
[2026-08-31 22:16:45,718.718 INFO    ] ================================================
[2026-08-31 22:16:46,307.307 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:16:46
[2026-08-31 22:16:46,903.903 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:16:47,168.168 INFO    ] Initializing speech engine...
[2026-08-31 22:16:47,194.194 INFO    ] 2026-08-31 22:16:47
[2026-08-31 22:16:47,470.470 INFO    ] 2026-08-31 22:16:47
[2026-08-31 22:16:47,507.507 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:16:47,733.733 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:16:47,799.799 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:16:48,026.026 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:16:48,064.064 INFO    ] time= 31/08/2026 22:16:48
[2026-08-31 22:16:48,070.070 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:16:48,090.090 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:16:48,212.212 INFO    ] No existing commands found in stream
[2026-08-31 22:16:53,228.228 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:16:53,231.231 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-08-31 22:16:55,850.850 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 22:16:55,853.853 INFO    ] Checking for system updates...
[2026-08-31 22:16:55,893.893 INFO    ] 200
[2026-08-31 22:16:55,896.896 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:16:55,954.954 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:16:55,957.957 INFO    ] No update needed
[2026-08-31 22:16:55,959.959 INFO    ] Checking for camera pi updates...
[2026-08-31 22:16:55,997.997 INFO    ] 200
[2026-08-31 22:16:55,999.999 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:16:56,040.040 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:16:56,124.124 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:16:56,126.126 INFO    ] No camera update needed
[2026-08-31 22:16:56,129.129 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:16:56,131.131 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:16:56,137.137 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:16:56,142.142 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:16:58,181.181 INFO    ] ================================================
[2026-08-31 22:16:58,196.196 INFO    ] Launching Daemon at Mon Aug 31 22:16:58 IST 2026
[2026-08-31 22:16:58,206.206 INFO    ] ================================================
[2026-08-31 22:16:58,855.855 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:16:58
[2026-08-31 22:16:59,525.525 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:16:59,830.830 INFO    ] Initializing speech engine...
[2026-08-31 22:16:59,839.839 INFO    ] 2026-08-31 22:16:59
[2026-08-31 22:17:00,114.114 INFO    ] 2026-08-31 22:17:00
[2026-08-31 22:17:00,172.172 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:17:00,406.406 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:17:00,412.412 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:17:00,546.546 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:17:00,589.589 INFO    ] time= 31/08/2026 22:17:00
[2026-08-31 22:17:00,644.644 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:17:00,685.685 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:17:00,806.806 INFO    ] No existing commands found in stream
[2026-08-31 22:17:05,844.844 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:17:05,848.848 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-08-31 22:17:09,069.069 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 22:17:09,072.072 INFO    ] Checking for system updates...
[2026-08-31 22:17:09,112.112 INFO    ] 200
[2026-08-31 22:17:09,115.115 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:17:09,168.168 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:17:09,171.171 INFO    ] No update needed
[2026-08-31 22:17:09,174.174 INFO    ] Checking for camera pi updates...
[2026-08-31 22:17:09,208.208 INFO    ] 200
[2026-08-31 22:17:09,211.211 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:17:09,257.257 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:17:09,330.330 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:17:09,332.332 INFO    ] No camera update needed
[2026-08-31 22:17:09,335.335 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:17:09,338.338 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:17:09,344.344 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:17:09,350.350 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:17:11,390.390 INFO    ] ================================================
[2026-08-31 22:17:11,405.405 INFO    ] Launching Daemon at Mon Aug 31 22:17:11 IST 2026
[2026-08-31 22:17:11,415.415 INFO    ] ================================================
[2026-08-31 22:17:12,070.070 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:17:12
[2026-08-31 22:17:12,715.715 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:17:13,000.000 INFO    ] Initializing speech engine...
[2026-08-31 22:17:13,005.005 INFO    ] 2026-08-31 22:17:13
[2026-08-31 22:17:13,271.271 INFO    ] 2026-08-31 22:17:13
[2026-08-31 22:17:13,324.324 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:17:13,551.551 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:17:13,555.555 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:17:13,688.688 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:17:13,758.758 INFO    ] time= 31/08/2026 22:17:13
[2026-08-31 22:17:13,815.815 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:17:13,822.822 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:17:13,967.967 INFO    ] No existing commands found in stream
[2026-08-31 22:17:18,986.986 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:17:18,989.989 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-08-31 22:17:20,266.266 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 22:17:20,269.269 INFO    ] Checking for system updates...
[2026-08-31 22:17:20,309.309 INFO    ] 200
[2026-08-31 22:17:20,311.311 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:17:20,370.370 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:17:20,373.373 INFO    ] No update needed
[2026-08-31 22:17:20,375.375 INFO    ] Checking for camera pi updates...
[2026-08-31 22:17:20,413.413 INFO    ] 200
[2026-08-31 22:17:20,415.415 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:17:20,455.455 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:17:20,623.623 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:17:20,625.625 INFO    ] No camera update needed
[2026-08-31 22:17:20,628.628 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:17:20,630.630 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:17:20,635.635 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:17:20,640.640 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:17:22,681.681 INFO    ] ================================================
[2026-08-31 22:17:22,696.696 INFO    ] Launching Daemon at Mon Aug 31 22:17:22 IST 2026
[2026-08-31 22:17:22,707.707 INFO    ] ================================================
[2026-08-31 22:17:23,324.324 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:17:23
[2026-08-31 22:17:23,925.925 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:17:24,198.198 INFO    ] Initializing speech engine...
[2026-08-31 22:17:24,208.208 INFO    ] 2026-08-31 22:17:24
[2026-08-31 22:17:24,470.470 INFO    ] 2026-08-31 22:17:24
[2026-08-31 22:17:24,524.524 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:17:24,745.745 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:17:24,755.755 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:17:24,973.973 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:17:25,012.012 INFO    ] time= 31/08/2026 22:17:24
[2026-08-31 22:17:25,018.018 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:17:25,039.039 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:17:25,163.163 INFO    ] No existing commands found in stream
[2026-08-31 22:17:30,179.179 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:17:30,182.182 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-08-31 22:17:34,626.626 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 22:17:34,629.629 INFO    ] Checking for system updates...
[2026-08-31 22:17:34,665.665 INFO    ] 200
[2026-08-31 22:17:34,667.667 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:17:34,729.729 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:17:34,731.731 INFO    ] No update needed
[2026-08-31 22:17:34,734.734 INFO    ] Checking for camera pi updates...
[2026-08-31 22:17:34,767.767 INFO    ] 200
[2026-08-31 22:17:34,770.770 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:17:34,810.810 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:17:34,900.900 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:17:34,902.902 INFO    ] No camera update needed
[2026-08-31 22:17:34,905.905 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:17:34,907.907 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:17:34,913.913 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:17:34,918.918 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:17:36,958.958 INFO    ] ================================================
[2026-08-31 22:17:36,973.973 INFO    ] Launching Daemon at Mon Aug 31 22:17:36 IST 2026
[2026-08-31 22:17:36,984.984 INFO    ] ================================================
[2026-08-31 22:17:37,550.550 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:17:37
[2026-08-31 22:17:38,201.201 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:17:38,448.448 INFO    ] Initializing speech engine...
[2026-08-31 22:17:38,463.463 INFO    ] 2026-08-31 22:17:38
[2026-08-31 22:17:38,729.729 INFO    ] 2026-08-31 22:17:38
[2026-08-31 22:17:38,765.765 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:17:38,967.967 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:17:39,025.025 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:17:39,167.167 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:17:39,194.194 INFO    ] time= 31/08/2026 22:17:39
[2026-08-31 22:17:39,248.248 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:17:39,297.297 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:17:39,364.364 INFO    ] No existing commands found in stream
[2026-08-31 22:17:44,375.375 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:17:44,378.378 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-08-31 22:17:48,730.730 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 22:17:48,733.733 INFO    ] Checking for system updates...
[2026-08-31 22:17:48,771.771 INFO    ] 200
[2026-08-31 22:17:48,773.773 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:17:48,827.827 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:17:48,830.830 INFO    ] No update needed
[2026-08-31 22:17:48,832.832 INFO    ] Checking for camera pi updates...
[2026-08-31 22:17:48,869.869 INFO    ] 200
[2026-08-31 22:17:48,871.871 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:17:48,915.915 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:17:48,998.998 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:17:49,000.000 INFO    ] No camera update needed
[2026-08-31 22:17:49,003.003 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:17:49,005.005 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:17:49,010.010 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:17:49,015.015 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:17:51,058.058 INFO    ] ================================================
[2026-08-31 22:17:51,073.073 INFO    ] Launching Daemon at Mon Aug 31 22:17:51 IST 2026
[2026-08-31 22:17:51,083.083 INFO    ] ================================================
[2026-08-31 22:17:51,721.721 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:17:51
[2026-08-31 22:17:52,341.341 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:17:52,611.611 INFO    ] Initializing speech engine...
[2026-08-31 22:17:52,621.621 INFO    ] 2026-08-31 22:17:52
[2026-08-31 22:17:52,880.880 INFO    ] 2026-08-31 22:17:52
[2026-08-31 22:17:52,933.933 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:17:53,157.157 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:17:53,166.166 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:17:53,302.302 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:17:53,351.351 INFO    ] time= 31/08/2026 22:17:53
[2026-08-31 22:17:53,410.410 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:17:53,434.434 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:17:53,493.493 INFO    ] No existing commands found in stream
[2026-08-31 22:17:58,519.519 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:17:58,521.521 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-08-31 22:18:01,090.090 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 22:18:01,092.092 INFO    ] Checking for system updates...
[2026-08-31 22:18:01,128.128 INFO    ] 200
[2026-08-31 22:18:01,131.131 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:18:01,245.245 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:18:01,252.252 INFO    ] No update needed
[2026-08-31 22:18:01,256.256 INFO    ] Checking for camera pi updates...
[2026-08-31 22:18:01,322.322 INFO    ] 200
[2026-08-31 22:18:01,326.326 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:18:01,400.400 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:18:01,479.479 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:18:01,482.482 INFO    ] No camera update needed
[2026-08-31 22:18:01,485.485 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:18:01,488.488 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:18:01,495.495 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:18:01,502.502 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:18:03,546.546 INFO    ] ================================================
[2026-08-31 22:18:03,561.561 INFO    ] Launching Daemon at Mon Aug 31 22:18:03 IST 2026
[2026-08-31 22:18:03,572.572 INFO    ] ================================================
[2026-08-31 22:18:04,202.202 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:18:04
[2026-08-31 22:18:04,850.850 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:18:05,142.142 INFO    ] Initializing speech engine...
[2026-08-31 22:18:05,156.156 INFO    ] 2026-08-31 22:18:05
[2026-08-31 22:18:05,432.432 INFO    ] 2026-08-31 22:18:05
[2026-08-31 22:18:05,475.475 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:18:05,761.761 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:18:05,770.770 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:18:05,928.928 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:18:05,974.974 INFO    ] time= 31/08/2026 22:18:05
[2026-08-31 22:18:05,992.992 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:18:06,005.005 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:18:06,141.141 INFO    ] No existing commands found in stream
[2026-08-31 22:18:11,159.159 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:18:11,161.161 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-08-31 22:18:13,952.952 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 22:18:13,955.955 INFO    ] Checking for system updates...
[2026-08-31 22:18:13,990.990 INFO    ] 200
[2026-08-31 22:18:13,993.993 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:18:14,045.045 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:18:14,048.048 INFO    ] No update needed
[2026-08-31 22:18:14,050.050 INFO    ] Checking for camera pi updates...
[2026-08-31 22:18:14,091.091 INFO    ] 200
[2026-08-31 22:18:14,093.093 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:18:14,136.136 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:18:14,227.227 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:18:14,230.230 INFO    ] No camera update needed
[2026-08-31 22:18:14,232.232 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:18:14,234.234 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:18:14,240.240 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:18:14,244.244 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:18:16,284.284 INFO    ] ================================================
[2026-08-31 22:18:16,299.299 INFO    ] Launching Daemon at Mon Aug 31 22:18:16 IST 2026
[2026-08-31 22:18:16,309.309 INFO    ] ================================================
[2026-08-31 22:18:16,899.899 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:18:16
[2026-08-31 22:18:17,496.496 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:18:17,777.777 INFO    ] Initializing speech engine...
[2026-08-31 22:18:17,791.791 INFO    ] 2026-08-31 22:18:17
[2026-08-31 22:18:18,046.046 INFO    ] 2026-08-31 22:18:18
[2026-08-31 22:18:18,097.097 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:18:18,326.326 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:18:18,331.331 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:18:18,485.485 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:18:18,519.519 INFO    ] time= 31/08/2026 22:18:18
[2026-08-31 22:18:18,584.584 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:18:18,598.598 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:18:18,733.733 INFO    ] No existing commands found in stream
[2026-08-31 22:18:23,754.754 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:18:23,757.757 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-08-31 22:18:24,499.499 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 22:18:24,502.502 INFO    ] Checking for system updates...
[2026-08-31 22:18:24,540.540 INFO    ] 200
[2026-08-31 22:18:24,542.542 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:18:24,600.600 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:18:24,602.602 INFO    ] No update needed
[2026-08-31 22:18:24,605.605 INFO    ] Checking for camera pi updates...
[2026-08-31 22:18:24,642.642 INFO    ] 200
[2026-08-31 22:18:24,644.644 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:18:24,692.692 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:18:24,772.772 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:18:24,774.774 INFO    ] No camera update needed
[2026-08-31 22:18:24,776.776 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:18:24,779.779 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:18:24,784.784 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:18:24,789.789 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:18:26,829.829 INFO    ] ================================================
[2026-08-31 22:18:26,844.844 INFO    ] Launching Daemon at Mon Aug 31 22:18:26 IST 2026
[2026-08-31 22:18:26,855.855 INFO    ] ================================================
[2026-08-31 22:18:27,444.444 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:18:27
[2026-08-31 22:18:28,043.043 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:18:28,327.327 INFO    ] Initializing speech engine...
[2026-08-31 22:18:28,332.332 INFO    ] 2026-08-31 22:18:28
[2026-08-31 22:18:28,594.594 INFO    ] 2026-08-31 22:18:28
[2026-08-31 22:18:28,624.624 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:18:28,867.867 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:18:28,876.876 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:18:29,026.026 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:18:29,085.085 INFO    ] time= 31/08/2026 22:18:29
[2026-08-31 22:18:29,136.136 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:18:29,143.143 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:18:29,258.258 INFO    ] No existing commands found in stream
[2026-08-31 22:18:34,283.283 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:18:34,286.286 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-08-31 22:18:35,514.514 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 22:18:35,517.517 INFO    ] Checking for system updates...
[2026-08-31 22:18:35,552.552 INFO    ] 200
[2026-08-31 22:18:35,555.555 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:18:35,615.615 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:18:35,617.617 INFO    ] No update needed
[2026-08-31 22:18:35,620.620 INFO    ] Checking for camera pi updates...
[2026-08-31 22:18:35,655.655 INFO    ] 200
[2026-08-31 22:18:35,658.658 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:18:35,699.699 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:18:35,779.779 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:18:35,781.781 INFO    ] No camera update needed
[2026-08-31 22:18:35,784.784 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:18:35,786.786 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:18:35,791.791 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:18:35,796.796 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:18:37,836.836 INFO    ] ================================================
[2026-08-31 22:18:37,851.851 INFO    ] Launching Daemon at Mon Aug 31 22:18:37 IST 2026
[2026-08-31 22:18:37,862.862 INFO    ] ================================================
[2026-08-31 22:18:38,439.439 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:18:38
[2026-08-31 22:18:39,020.020 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:18:39,267.267 INFO    ] Initializing speech engine...
[2026-08-31 22:18:39,273.273 INFO    ] 2026-08-31 22:18:39
[2026-08-31 22:18:39,548.548 INFO    ] 2026-08-31 22:18:39
[2026-08-31 22:18:39,584.584 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:18:39,780.780 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:18:39,803.803 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:18:39,984.984 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:18:40,038.038 INFO    ] time= 31/08/2026 22:18:39
[2026-08-31 22:18:40,082.082 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:18:40,121.121 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:18:40,241.241 INFO    ] No existing commands found in stream
[2026-08-31 22:18:45,263.263 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:18:45,266.266 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-08-31 22:18:48,898.898 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 22:18:48,901.901 INFO    ] Checking for system updates...
[2026-08-31 22:18:48,936.936 INFO    ] 200
[2026-08-31 22:18:48,938.938 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:18:48,996.996 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:18:48,999.999 INFO    ] No update needed
[2026-08-31 22:18:49,001.001 INFO    ] Checking for camera pi updates...
[2026-08-31 22:18:49,034.034 INFO    ] 200
[2026-08-31 22:18:49,037.037 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:18:49,080.080 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:18:49,168.168 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:18:49,170.170 INFO    ] No camera update needed
[2026-08-31 22:18:49,173.173 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:18:49,175.175 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:18:49,180.180 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:18:49,185.185 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:18:51,225.225 INFO    ] ================================================
[2026-08-31 22:18:51,240.240 INFO    ] Launching Daemon at Mon Aug 31 22:18:51 IST 2026
[2026-08-31 22:18:51,250.250 INFO    ] ================================================
[2026-08-31 22:18:51,814.814 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:18:51
[2026-08-31 22:18:52,395.395 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:18:52,665.665 INFO    ] Initializing speech engine...
[2026-08-31 22:18:52,673.673 INFO    ] 2026-08-31 22:18:52
[2026-08-31 22:18:52,923.923 INFO    ] 2026-08-31 22:18:52
[2026-08-31 22:18:52,958.958 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:18:53,211.211 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:18:53,223.223 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:18:53,359.359 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:18:53,386.386 INFO    ] time= 31/08/2026 22:18:53
[2026-08-31 22:18:53,426.426 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:18:53,485.485 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:18:53,571.571 INFO    ] No existing commands found in stream
[2026-08-31 22:18:58,582.582 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:18:58,585.585 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-08-31 22:19:02,131.131 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 22:19:02,134.134 INFO    ] Checking for system updates...
[2026-08-31 22:19:02,179.179 INFO    ] 200
[2026-08-31 22:19:02,183.183 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:19:02,252.252 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:19:02,255.255 INFO    ] No update needed
[2026-08-31 22:19:02,259.259 INFO    ] Checking for camera pi updates...
[2026-08-31 22:19:02,303.303 INFO    ] 200
[2026-08-31 22:19:02,306.306 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:19:02,379.379 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:19:02,442.442 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:19:02,446.446 INFO    ] No camera update needed
[2026-08-31 22:19:02,451.451 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:19:02,456.456 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:19:02,466.466 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:19:02,475.475 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:19:04,521.521 INFO    ] ================================================
[2026-08-31 22:19:04,536.536 INFO    ] Launching Daemon at Mon Aug 31 22:19:04 IST 2026
[2026-08-31 22:19:04,546.546 INFO    ] ================================================
[2026-08-31 22:19:05,186.186 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:19:05
[2026-08-31 22:19:05,847.847 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:19:06,144.144 INFO    ] Initializing speech engine...
[2026-08-31 22:19:06,150.150 INFO    ] 2026-08-31 22:19:06
[2026-08-31 22:19:06,442.442 INFO    ] 2026-08-31 22:19:06
[2026-08-31 22:19:06,477.477 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:19:06,666.666 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:19:06,680.680 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:19:06,824.824 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:19:06,832.832 INFO    ] time= 31/08/2026 22:19:06
[2026-08-31 22:19:06,839.839 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:19:06,888.888 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:19:07,019.019 INFO    ] No existing commands found in stream
[2026-08-31 22:19:12,044.044 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:19:12,047.047 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-08-31 22:19:15,144.144 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 22:19:15,147.147 INFO    ] Checking for system updates...
[2026-08-31 22:19:15,184.184 INFO    ] 200
[2026-08-31 22:19:15,187.187 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:19:15,242.242 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:19:15,244.244 INFO    ] No update needed
[2026-08-31 22:19:15,247.247 INFO    ] Checking for camera pi updates...
[2026-08-31 22:19:15,284.284 INFO    ] 200
[2026-08-31 22:19:15,287.287 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:19:15,333.333 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:19:15,418.418 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:19:15,420.420 INFO    ] No camera update needed
[2026-08-31 22:19:15,423.423 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:19:15,425.425 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:19:15,430.430 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:19:15,436.436 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:19:17,477.477 INFO    ] ================================================
[2026-08-31 22:19:17,492.492 INFO    ] Launching Daemon at Mon Aug 31 22:19:17 IST 2026
[2026-08-31 22:19:17,502.502 INFO    ] ================================================
[2026-08-31 22:19:18,150.150 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:19:18
[2026-08-31 22:19:18,818.818 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:19:19,121.121 INFO    ] Initializing speech engine...
[2026-08-31 22:19:19,135.135 INFO    ] 2026-08-31 22:19:19
[2026-08-31 22:19:19,404.404 INFO    ] 2026-08-31 22:19:19
[2026-08-31 22:19:19,460.460 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:19:19,743.743 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:19:19,748.748 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:19:19,929.929 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:19:19,950.950 INFO    ] time= 31/08/2026 22:19:19
[2026-08-31 22:19:19,969.969 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:19:19,998.998 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:19:20,129.129 INFO    ] No existing commands found in stream
[2026-08-31 22:19:25,160.160 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:19:25,163.163 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-08-31 22:19:27,132.132 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 22:19:27,135.135 INFO    ] Checking for system updates...
[2026-08-31 22:19:27,176.176 INFO    ] 200
[2026-08-31 22:19:27,179.179 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:19:27,239.239 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:19:27,242.242 INFO    ] No update needed
[2026-08-31 22:19:27,245.245 INFO    ] Checking for camera pi updates...
[2026-08-31 22:19:27,283.283 INFO    ] 200
[2026-08-31 22:19:27,286.286 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:19:27,329.329 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:19:27,517.517 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:19:27,520.520 INFO    ] No camera update needed
[2026-08-31 22:19:27,523.523 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:19:27,526.526 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:19:27,532.532 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:19:27,538.538 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:19:29,583.583 INFO    ] ================================================
[2026-08-31 22:19:29,599.599 INFO    ] Launching Daemon at Mon Aug 31 22:19:29 IST 2026
[2026-08-31 22:19:29,609.609 INFO    ] ================================================
[2026-08-31 22:19:30,173.173 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:19:30
[2026-08-31 22:19:30,755.755 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:19:31,024.024 INFO    ] Initializing speech engine...
[2026-08-31 22:19:31,034.034 INFO    ] 2026-08-31 22:19:31
[2026-08-31 22:19:31,302.302 INFO    ] 2026-08-31 22:19:31
[2026-08-31 22:19:31,341.341 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:19:31,526.526 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:19:31,540.540 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:19:31,695.695 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:19:31,703.703 INFO    ] time= 31/08/2026 22:19:31
[2026-08-31 22:19:31,750.750 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:19:31,774.774 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:19:31,902.902 INFO    ] No existing commands found in stream
[2026-08-31 22:19:36,921.921 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:19:36,924.924 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-08-31 22:19:40,732.732 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 22:19:40,735.735 INFO    ] Checking for system updates...
[2026-08-31 22:19:40,773.773 INFO    ] 200
[2026-08-31 22:19:40,776.776 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:19:40,835.835 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:19:40,839.839 INFO    ] No update needed
[2026-08-31 22:19:40,842.842 INFO    ] Checking for camera pi updates...
[2026-08-31 22:19:40,880.880 INFO    ] 200
[2026-08-31 22:19:40,883.883 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:19:40,926.926 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:19:41,006.006 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:19:41,008.008 INFO    ] No camera update needed
[2026-08-31 22:19:41,011.011 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:19:41,013.013 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:19:41,018.018 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:19:41,023.023 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:19:43,064.064 INFO    ] ================================================
[2026-08-31 22:19:43,085.085 INFO    ] Launching Daemon at Mon Aug 31 22:19:43 IST 2026
[2026-08-31 22:19:43,096.096 INFO    ] ================================================
[2026-08-31 22:19:43,662.662 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:19:43
[2026-08-31 22:19:44,244.244 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:19:44,514.514 INFO    ] Initializing speech engine...
[2026-08-31 22:19:44,523.523 INFO    ] 2026-08-31 22:19:44
[2026-08-31 22:19:44,774.774 INFO    ] 2026-08-31 22:19:44
[2026-08-31 22:19:44,808.808 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:19:45,009.009 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:19:45,070.070 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:19:45,215.215 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:19:45,280.280 INFO    ] time= 31/08/2026 22:19:45
[2026-08-31 22:19:45,339.339 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:19:45,353.353 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:19:45,476.476 INFO    ] No existing commands found in stream
[2026-08-31 22:19:50,496.496 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:19:50,499.499 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-08-31 22:19:52,171.171 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 22:19:52,174.174 INFO    ] Checking for system updates...
[2026-08-31 22:19:52,209.209 INFO    ] 200
[2026-08-31 22:19:52,211.211 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:19:52,263.263 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:19:52,265.265 INFO    ] No update needed
[2026-08-31 22:19:52,268.268 INFO    ] Checking for camera pi updates...
[2026-08-31 22:19:52,307.307 INFO    ] 200
[2026-08-31 22:19:52,310.310 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:19:52,354.354 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:19:52,434.434 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:19:52,436.436 INFO    ] No camera update needed
[2026-08-31 22:19:52,439.439 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:19:52,441.441 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:19:52,447.447 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:19:52,452.452 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:19:54,491.491 INFO    ] ================================================
[2026-08-31 22:19:54,506.506 INFO    ] Launching Daemon at Mon Aug 31 22:19:54 IST 2026
[2026-08-31 22:19:54,516.516 INFO    ] ================================================
[2026-08-31 22:19:55,161.161 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:19:55
[2026-08-31 22:19:55,823.823 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:19:56,125.125 INFO    ] Initializing speech engine...
[2026-08-31 22:19:56,132.132 INFO    ] 2026-08-31 22:19:56
[2026-08-31 22:19:56,405.405 INFO    ] 2026-08-31 22:19:56
[2026-08-31 22:19:56,465.465 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:19:56,701.701 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:19:56,706.706 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:19:56,840.840 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:19:56,893.893 INFO    ] time= 31/08/2026 22:19:56
[2026-08-31 22:19:56,948.948 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:19:56,980.980 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:19:57,100.100 INFO    ] No existing commands found in stream
[2026-08-31 22:20:02,130.130 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:20:02,135.135 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-08-31 22:20:08,258.258 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 22:20:08,261.261 INFO    ] Checking for system updates...
[2026-08-31 22:20:08,296.296 INFO    ] 200
[2026-08-31 22:20:08,299.299 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:20:08,359.359 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:20:08,361.361 INFO    ] No update needed
[2026-08-31 22:20:08,364.364 INFO    ] Checking for camera pi updates...
[2026-08-31 22:20:08,397.397 INFO    ] 200
[2026-08-31 22:20:08,400.400 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:20:08,441.441 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:20:08,522.522 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:20:08,524.524 INFO    ] No camera update needed
[2026-08-31 22:20:08,527.527 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:20:08,529.529 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:20:08,534.534 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:20:08,539.539 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:20:10,581.581 INFO    ] ================================================
[2026-08-31 22:20:10,596.596 INFO    ] Launching Daemon at Mon Aug 31 22:20:10 IST 2026
[2026-08-31 22:20:10,607.607 INFO    ] ================================================
[2026-08-31 22:20:11,261.261 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:20:11
[2026-08-31 22:20:11,933.933 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:20:12,247.247 INFO    ] Initializing speech engine...
[2026-08-31 22:20:12,254.254 INFO    ] 2026-08-31 22:20:12
[2026-08-31 22:20:12,537.537 INFO    ] 2026-08-31 22:20:12
[2026-08-31 22:20:12,646.646 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:20:12,856.856 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:20:12,864.864 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:20:13,052.052 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:20:13,065.065 INFO    ] time= 31/08/2026 22:20:13
[2026-08-31 22:20:13,087.087 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:20:13,114.114 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:20:13,265.265 INFO    ] No existing commands found in stream
[2026-08-31 22:20:18,296.296 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:20:18,300.300 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-08-31 22:20:19,028.028 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 22:20:19,031.031 INFO    ] Checking for system updates...
[2026-08-31 22:20:19,068.068 INFO    ] 200
[2026-08-31 22:20:19,071.071 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:20:19,125.125 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:20:19,128.128 INFO    ] No update needed
[2026-08-31 22:20:19,130.130 INFO    ] Checking for camera pi updates...
[2026-08-31 22:20:19,166.166 INFO    ] 200
[2026-08-31 22:20:19,169.169 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:20:19,215.215 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:20:19,302.302 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:20:19,304.304 INFO    ] No camera update needed
[2026-08-31 22:20:19,307.307 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:20:19,309.309 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:20:19,314.314 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:20:19,319.319 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:20:21,360.360 INFO    ] ================================================
[2026-08-31 22:20:21,377.377 INFO    ] Launching Daemon at Mon Aug 31 22:20:21 IST 2026
[2026-08-31 22:20:21,388.388 INFO    ] ================================================
[2026-08-31 22:20:21,971.971 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:20:21
[2026-08-31 22:20:22,571.571 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:20:22,849.849 INFO    ] Initializing speech engine...
[2026-08-31 22:20:22,858.858 INFO    ] 2026-08-31 22:20:22
[2026-08-31 22:20:23,118.118 INFO    ] 2026-08-31 22:20:23
[2026-08-31 22:20:23,150.150 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:20:23,335.335 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:20:23,350.350 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:20:23,512.512 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:20:23,522.522 INFO    ] time= 31/08/2026 22:20:23
[2026-08-31 22:20:23,527.527 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:20:23,533.533 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:20:23,607.607 INFO    ] No existing commands found in stream
[2026-08-31 22:20:28,620.620 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:20:28,623.623 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-08-31 22:20:32,570.570 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 22:20:32,573.573 INFO    ] Checking for system updates...
[2026-08-31 22:20:32,608.608 INFO    ] 200
[2026-08-31 22:20:32,611.611 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:20:32,664.664 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:20:32,666.666 INFO    ] No update needed
[2026-08-31 22:20:32,669.669 INFO    ] Checking for camera pi updates...
[2026-08-31 22:20:32,702.702 INFO    ] 200
[2026-08-31 22:20:32,705.705 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:20:32,745.745 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:20:32,829.829 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:20:32,831.831 INFO    ] No camera update needed
[2026-08-31 22:20:32,833.833 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:20:32,836.836 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:20:32,841.841 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:20:32,846.846 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:20:34,889.889 INFO    ] ================================================
[2026-08-31 22:20:34,904.904 INFO    ] Launching Daemon at Mon Aug 31 22:20:34 IST 2026
[2026-08-31 22:20:34,915.915 INFO    ] ================================================
[2026-08-31 22:20:35,495.495 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:20:35
[2026-08-31 22:20:36,091.091 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:20:36,366.366 INFO    ] Initializing speech engine...
[2026-08-31 22:20:36,375.375 INFO    ] 2026-08-31 22:20:36
[2026-08-31 22:20:36,633.633 INFO    ] 2026-08-31 22:20:36
[2026-08-31 22:20:36,686.686 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:20:36,908.908 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:20:36,918.918 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:20:37,142.142 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:20:37,175.175 INFO    ] time= 31/08/2026 22:20:37
[2026-08-31 22:20:37,181.181 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:20:37,198.198 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:20:37,319.319 INFO    ] No existing commands found in stream
[2026-08-31 22:20:42,340.340 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:20:42,342.342 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-08-31 22:20:46,619.619 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 22:20:46,622.622 INFO    ] Checking for system updates...
[2026-08-31 22:20:46,662.662 INFO    ] 200
[2026-08-31 22:20:46,664.664 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:20:46,726.726 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:20:46,729.729 INFO    ] No update needed
[2026-08-31 22:20:46,731.731 INFO    ] Checking for camera pi updates...
[2026-08-31 22:20:46,765.765 INFO    ] 200
[2026-08-31 22:20:46,768.768 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:20:46,812.812 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:20:46,892.892 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:20:46,895.895 INFO    ] No camera update needed
[2026-08-31 22:20:46,897.897 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:20:46,900.900 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:20:46,905.905 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:20:46,910.910 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:20:48,951.951 INFO    ] ================================================
[2026-08-31 22:20:48,966.966 INFO    ] Launching Daemon at Mon Aug 31 22:20:48 IST 2026
[2026-08-31 22:20:48,977.977 INFO    ] ================================================
[2026-08-31 22:20:49,620.620 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:20:49
[2026-08-31 22:20:50,281.281 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:20:50,583.583 INFO    ] Initializing speech engine...
[2026-08-31 22:20:50,591.591 INFO    ] 2026-08-31 22:20:50
[2026-08-31 22:20:50,868.868 INFO    ] 2026-08-31 22:20:50
[2026-08-31 22:20:50,923.923 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:20:51,180.180 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:20:51,199.199 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:20:51,411.411 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:20:51,427.427 INFO    ] time= 31/08/2026 22:20:51
[2026-08-31 22:20:51,446.446 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:20:51,475.475 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:20:51,583.583 INFO    ] No existing commands found in stream
[2026-08-31 22:20:56,605.605 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:20:56,609.609 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-08-31 22:20:59,270.270 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 22:20:59,273.273 INFO    ] Checking for system updates...
[2026-08-31 22:20:59,310.310 INFO    ] 200
[2026-08-31 22:20:59,312.312 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:20:59,365.365 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:20:59,368.368 INFO    ] No update needed
[2026-08-31 22:20:59,371.371 INFO    ] Checking for camera pi updates...
[2026-08-31 22:20:59,409.409 INFO    ] 200
[2026-08-31 22:20:59,412.412 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:20:59,457.457 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:20:59,538.538 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:20:59,541.541 INFO    ] No camera update needed
[2026-08-31 22:20:59,544.544 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:20:59,546.546 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:20:59,552.552 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:20:59,558.558 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:21:01,635.635 INFO    ] ================================================
[2026-08-31 22:21:01,675.675 INFO    ] Launching Daemon at Mon Aug 31 22:21:01 IST 2026
[2026-08-31 22:21:01,694.694 INFO    ] ================================================
[2026-08-31 22:21:02,440.440 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:21:02
[2026-08-31 22:21:03,201.201 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:21:03,520.520 INFO    ] Initializing speech engine...
[2026-08-31 22:21:03,530.530 INFO    ] 2026-08-31 22:21:03
[2026-08-31 22:21:03,840.840 INFO    ] 2026-08-31 22:21:03
[2026-08-31 22:21:03,931.931 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:21:04,091.091 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:21:04,096.096 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:21:04,233.233 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:21:04,268.268 INFO    ] time= 31/08/2026 22:21:04
[2026-08-31 22:21:04,323.323 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:21:04,369.369 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:21:04,508.508 INFO    ] No existing commands found in stream
[2026-08-31 22:21:09,531.531 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:21:09,534.534 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-08-31 22:21:12,213.213 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 22:21:12,216.216 INFO    ] Checking for system updates...
[2026-08-31 22:21:12,253.253 INFO    ] 200
[2026-08-31 22:21:12,256.256 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:21:12,310.310 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:21:12,313.313 INFO    ] No update needed
[2026-08-31 22:21:12,315.315 INFO    ] Checking for camera pi updates...
[2026-08-31 22:21:12,354.354 INFO    ] 200
[2026-08-31 22:21:12,357.357 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:21:12,404.404 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:21:12,472.472 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:21:12,474.474 INFO    ] No camera update needed
[2026-08-31 22:21:12,477.477 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:21:12,480.480 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:21:12,486.486 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:21:12,492.492 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:21:14,535.535 INFO    ] ================================================
[2026-08-31 22:21:14,552.552 INFO    ] Launching Daemon at Mon Aug 31 22:21:14 IST 2026
[2026-08-31 22:21:14,563.563 INFO    ] ================================================
[2026-08-31 22:21:15,213.213 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:21:15
[2026-08-31 22:21:15,884.884 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:21:16,178.178 INFO    ] Initializing speech engine...
[2026-08-31 22:21:16,187.187 INFO    ] 2026-08-31 22:21:16
[2026-08-31 22:21:16,479.479 INFO    ] 2026-08-31 22:21:16
[2026-08-31 22:21:16,525.525 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:21:16,748.748 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:21:16,755.755 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:21:16,894.894 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:21:16,954.954 INFO    ] time= 31/08/2026 22:21:16
[2026-08-31 22:21:17,017.017 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:21:17,024.024 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:21:17,164.164 INFO    ] No existing commands found in stream
[2026-08-31 22:21:22,180.180 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:21:22,183.183 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-08-31 22:21:24,292.292 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 22:21:24,295.295 INFO    ] Checking for system updates...
[2026-08-31 22:21:24,336.336 INFO    ] 200
[2026-08-31 22:21:24,340.340 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:21:24,399.399 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:21:24,402.402 INFO    ] No update needed
[2026-08-31 22:21:24,404.404 INFO    ] Checking for camera pi updates...
[2026-08-31 22:21:24,439.439 INFO    ] 200
[2026-08-31 22:21:24,441.441 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:21:24,482.482 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:21:24,557.557 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:21:24,560.560 INFO    ] No camera update needed
[2026-08-31 22:21:24,563.563 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:21:24,565.565 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:21:24,571.571 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:21:24,577.577 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:21:26,619.619 INFO    ] ================================================
[2026-08-31 22:21:26,635.635 INFO    ] Launching Daemon at Mon Aug 31 22:21:26 IST 2026
[2026-08-31 22:21:26,646.646 INFO    ] ================================================
[2026-08-31 22:21:27,236.236 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:21:27
[2026-08-31 22:21:27,838.838 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:21:28,110.110 INFO    ] Initializing speech engine...
[2026-08-31 22:21:28,121.121 INFO    ] 2026-08-31 22:21:28
[2026-08-31 22:21:28,373.373 INFO    ] 2026-08-31 22:21:28
[2026-08-31 22:21:28,434.434 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:21:28,661.661 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:21:28,666.666 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:21:28,855.855 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:21:28,910.910 INFO    ] time= 31/08/2026 22:21:28
[2026-08-31 22:21:28,925.925 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:21:28,943.943 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:21:29,078.078 INFO    ] No existing commands found in stream
[2026-08-31 22:21:34,108.108 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:21:34,111.111 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-08-31 22:21:37,778.778 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 22:21:37,780.780 INFO    ] Checking for system updates...
[2026-08-31 22:21:37,816.816 INFO    ] 200
[2026-08-31 22:21:37,820.820 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:21:37,873.873 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:21:37,876.876 INFO    ] No update needed
[2026-08-31 22:21:37,879.879 INFO    ] Checking for camera pi updates...
[2026-08-31 22:21:37,913.913 INFO    ] 200
[2026-08-31 22:21:37,915.915 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:21:37,956.956 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:21:38,041.041 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:21:38,043.043 INFO    ] No camera update needed
[2026-08-31 22:21:38,046.046 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:21:38,049.049 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:21:38,055.055 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:21:38,061.061 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:21:40,101.101 INFO    ] ================================================
[2026-08-31 22:21:40,117.117 INFO    ] Launching Daemon at Mon Aug 31 22:21:40 IST 2026
[2026-08-31 22:21:40,128.128 INFO    ] ================================================
[2026-08-31 22:21:40,770.770 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:21:40
[2026-08-31 22:21:41,432.432 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:21:41,734.734 INFO    ] Initializing speech engine...
[2026-08-31 22:21:41,747.747 INFO    ] 2026-08-31 22:21:41
[2026-08-31 22:21:42,031.031 INFO    ] 2026-08-31 22:21:42
[2026-08-31 22:21:42,075.075 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:21:42,324.324 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:21:42,331.331 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:21:42,471.471 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:21:42,526.526 INFO    ] time= 31/08/2026 22:21:42
[2026-08-31 22:21:42,581.581 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:21:42,619.619 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:21:42,731.731 INFO    ] No existing commands found in stream
[2026-08-31 22:21:47,758.758 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:21:47,761.761 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-08-31 22:21:49,939.939 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 22:21:49,942.942 INFO    ] Checking for system updates...
[2026-08-31 22:21:49,983.983 INFO    ] 200
[2026-08-31 22:21:49,987.987 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:21:50,046.046 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:21:50,050.050 INFO    ] No update needed
[2026-08-31 22:21:50,053.053 INFO    ] Checking for camera pi updates...
[2026-08-31 22:21:50,091.091 INFO    ] 200
[2026-08-31 22:21:50,095.095 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:21:50,141.141 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:21:50,241.241 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:21:50,244.244 INFO    ] No camera update needed
[2026-08-31 22:21:50,247.247 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:21:50,250.250 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:21:50,257.257 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:21:50,264.264 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:21:52,310.310 INFO    ] ================================================
[2026-08-31 22:21:52,327.327 INFO    ] Launching Daemon at Mon Aug 31 22:21:52 IST 2026
[2026-08-31 22:21:52,339.339 INFO    ] ================================================
[2026-08-31 22:21:53,045.045 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:21:53
[2026-08-31 22:21:53,774.774 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:21:54,110.110 INFO    ] Initializing speech engine...
[2026-08-31 22:21:54,122.122 INFO    ] 2026-08-31 22:21:54
[2026-08-31 22:21:54,402.402 INFO    ] 2026-08-31 22:21:54
[2026-08-31 22:21:54,472.472 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:21:54,695.695 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:21:54,703.703 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:21:54,903.903 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:21:54,968.968 INFO    ] time= 31/08/2026 22:21:54
[2026-08-31 22:21:54,998.998 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:21:55,011.011 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:21:55,154.154 INFO    ] No existing commands found in stream
[2026-08-31 22:22:00,174.174 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:22:00,177.177 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-08-31 22:22:02,069.069 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 22:22:02,072.072 INFO    ] Checking for system updates...
[2026-08-31 22:22:02,118.118 INFO    ] 200
[2026-08-31 22:22:02,121.121 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:22:02,183.183 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:22:02,186.186 INFO    ] No update needed
[2026-08-31 22:22:02,189.189 INFO    ] Checking for camera pi updates...
[2026-08-31 22:22:02,227.227 INFO    ] 200
[2026-08-31 22:22:02,230.230 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:22:02,282.282 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:22:02,366.366 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:22:02,370.370 INFO    ] No camera update needed
[2026-08-31 22:22:02,373.373 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:22:02,376.376 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:22:02,382.382 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:22:02,389.389 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:22:04,433.433 INFO    ] ================================================
[2026-08-31 22:22:04,448.448 INFO    ] Launching Daemon at Mon Aug 31 22:22:04 IST 2026
[2026-08-31 22:22:04,460.460 INFO    ] ================================================
[2026-08-31 22:22:05,120.120 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:22:05
[2026-08-31 22:22:05,800.800 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:22:06,149.149 INFO    ] Initializing speech engine...
[2026-08-31 22:22:06,158.158 INFO    ] 2026-08-31 22:22:06
[2026-08-31 22:22:06,432.432 INFO    ] 2026-08-31 22:22:06
[2026-08-31 22:22:06,468.468 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:22:06,664.664 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:22:06,716.716 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:22:06,874.874 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:22:06,934.934 INFO    ] time= 31/08/2026 22:22:06
[2026-08-31 22:22:06,994.994 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:22:07,012.012 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:22:07,146.146 INFO    ] No existing commands found in stream
[2026-08-31 22:22:12,170.170 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:22:12,173.173 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-08-31 22:22:14,056.056 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 22:22:14,059.059 INFO    ] Checking for system updates...
[2026-08-31 22:22:14,097.097 INFO    ] 200
[2026-08-31 22:22:14,100.100 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:22:14,154.154 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:22:14,157.157 INFO    ] No update needed
[2026-08-31 22:22:14,159.159 INFO    ] Checking for camera pi updates...
[2026-08-31 22:22:14,193.193 INFO    ] 200
[2026-08-31 22:22:14,195.195 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:22:14,236.236 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:22:14,319.319 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:22:14,321.321 INFO    ] No camera update needed
[2026-08-31 22:22:14,324.324 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:22:14,326.326 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:22:14,332.332 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:22:14,337.337 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:22:16,379.379 INFO    ] ================================================
[2026-08-31 22:22:16,396.396 INFO    ] Launching Daemon at Mon Aug 31 22:22:16 IST 2026
[2026-08-31 22:22:16,406.406 INFO    ] ================================================
[2026-08-31 22:22:17,034.034 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:22:17
[2026-08-31 22:22:17,632.632 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:22:17,894.894 INFO    ] Initializing speech engine...
[2026-08-31 22:22:17,901.901 INFO    ] 2026-08-31 22:22:17
[2026-08-31 22:22:18,202.202 INFO    ] 2026-08-31 22:22:18
[2026-08-31 22:22:18,242.242 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:22:18,508.508 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:22:18,539.539 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:22:18,698.698 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:22:18,705.705 INFO    ] time= 31/08/2026 22:22:18
[2026-08-31 22:22:18,759.759 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:22:18,803.803 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:22:18,897.897 INFO    ] No existing commands found in stream
[2026-08-31 22:22:23,916.916 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:22:23,919.919 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-08-31 22:22:25,011.011 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 22:22:25,013.013 INFO    ] Checking for system updates...
[2026-08-31 22:22:25,049.049 INFO    ] 200
[2026-08-31 22:22:25,051.051 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:22:25,105.105 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:22:25,108.108 INFO    ] No update needed
[2026-08-31 22:22:25,111.111 INFO    ] Checking for camera pi updates...
[2026-08-31 22:22:25,145.145 INFO    ] 200
[2026-08-31 22:22:25,148.148 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:22:25,188.188 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:22:25,268.268 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:22:25,271.271 INFO    ] No camera update needed
[2026-08-31 22:22:25,273.273 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:22:25,275.275 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:22:25,281.281 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:22:25,286.286 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:22:27,326.326 INFO    ] ================================================
[2026-08-31 22:22:27,341.341 INFO    ] Launching Daemon at Mon Aug 31 22:22:27 IST 2026
[2026-08-31 22:22:27,352.352 INFO    ] ================================================
[2026-08-31 22:22:27,918.918 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:22:27
[2026-08-31 22:22:28,501.501 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:22:28,750.750 INFO    ] Initializing speech engine...
[2026-08-31 22:22:28,764.764 INFO    ] 2026-08-31 22:22:28
[2026-08-31 22:22:29,028.028 INFO    ] 2026-08-31 22:22:29
[2026-08-31 22:22:29,063.063 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:22:29,302.302 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:22:29,324.324 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:22:29,525.525 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:22:29,575.575 INFO    ] time= 31/08/2026 22:22:29
[2026-08-31 22:22:29,600.600 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:22:29,605.605 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:22:29,733.733 INFO    ] No existing commands found in stream
[2026-08-31 22:22:34,760.760 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:22:34,763.763 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-08-31 22:22:36,236.236 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 22:22:36,239.239 INFO    ] Checking for system updates...
[2026-08-31 22:22:36,274.274 INFO    ] 200
[2026-08-31 22:22:36,277.277 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:22:36,331.331 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:22:36,333.333 INFO    ] No update needed
[2026-08-31 22:22:36,336.336 INFO    ] Checking for camera pi updates...
[2026-08-31 22:22:36,371.371 INFO    ] 200
[2026-08-31 22:22:36,373.373 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:22:36,413.413 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:22:36,505.505 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:22:36,508.508 INFO    ] No camera update needed
[2026-08-31 22:22:36,510.510 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:22:36,512.512 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:22:36,518.518 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:22:36,523.523 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:22:38,564.564 INFO    ] ================================================
[2026-08-31 22:22:38,580.580 INFO    ] Launching Daemon at Mon Aug 31 22:22:38 IST 2026
[2026-08-31 22:22:38,592.592 INFO    ] ================================================
[2026-08-31 22:22:39,159.159 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:22:39
[2026-08-31 22:22:39,746.746 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:22:40,016.016 INFO    ] Initializing speech engine...
[2026-08-31 22:22:40,023.023 INFO    ] 2026-08-31 22:22:40
[2026-08-31 22:22:40,275.275 INFO    ] 2026-08-31 22:22:40
[2026-08-31 22:22:40,310.310 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:22:40,509.509 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:22:40,536.536 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:22:40,712.712 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:22:40,761.761 INFO    ] time= 31/08/2026 22:22:40
[2026-08-31 22:22:40,820.820 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:22:40,851.851 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:22:40,990.990 INFO    ] No existing commands found in stream
[2026-08-31 22:22:46,012.012 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:22:46,015.015 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-08-31 22:22:50,308.308 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 22:22:50,311.311 INFO    ] Checking for system updates...
[2026-08-31 22:22:50,352.352 INFO    ] 200
[2026-08-31 22:22:50,354.354 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:22:50,406.406 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:22:50,409.409 INFO    ] No update needed
[2026-08-31 22:22:50,411.411 INFO    ] Checking for camera pi updates...
[2026-08-31 22:22:50,444.444 INFO    ] 200
[2026-08-31 22:22:50,446.446 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:22:50,489.489 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:22:50,571.571 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:22:50,574.574 INFO    ] No camera update needed
[2026-08-31 22:22:50,576.576 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:22:50,578.578 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:22:50,584.584 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:22:50,589.589 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:22:52,630.630 INFO    ] ================================================
[2026-08-31 22:22:52,645.645 INFO    ] Launching Daemon at Mon Aug 31 22:22:52 IST 2026
[2026-08-31 22:22:52,656.656 INFO    ] ================================================
[2026-08-31 22:22:53,245.245 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:22:53
[2026-08-31 22:22:53,921.921 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:22:54,225.225 INFO    ] Initializing speech engine...
[2026-08-31 22:22:54,237.237 INFO    ] 2026-08-31 22:22:54
[2026-08-31 22:22:54,530.530 INFO    ] 2026-08-31 22:22:54
[2026-08-31 22:22:54,576.576 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:22:54,806.806 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:22:54,812.812 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:22:54,948.948 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:22:54,999.999 INFO    ] time= 31/08/2026 22:22:54
[2026-08-31 22:22:55,044.044 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:22:55,083.083 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:22:55,203.203 INFO    ] No existing commands found in stream
[2026-08-31 22:23:00,230.230 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:23:00,234.234 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-08-31 22:23:03,811.811 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 22:23:03,814.814 INFO    ] Checking for system updates...
[2026-08-31 22:23:03,855.855 INFO    ] 200
[2026-08-31 22:23:03,858.858 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:23:03,910.910 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:23:03,913.913 INFO    ] No update needed
[2026-08-31 22:23:03,915.915 INFO    ] Checking for camera pi updates...
[2026-08-31 22:23:03,949.949 INFO    ] 200
[2026-08-31 22:23:03,951.951 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:23:03,998.998 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:23:04,091.091 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:23:04,093.093 INFO    ] No camera update needed
[2026-08-31 22:23:04,096.096 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:23:04,098.098 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:23:04,103.103 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:23:04,108.108 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:23:06,148.148 INFO    ] ================================================
[2026-08-31 22:23:06,164.164 INFO    ] Launching Daemon at Mon Aug 31 22:23:06 IST 2026
[2026-08-31 22:23:06,175.175 INFO    ] ================================================
[2026-08-31 22:23:06,752.752 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:23:06
[2026-08-31 22:23:07,369.369 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:23:07,674.674 INFO    ] Initializing speech engine...
[2026-08-31 22:23:07,687.687 INFO    ] 2026-08-31 22:23:07
[2026-08-31 22:23:08,005.005 INFO    ] 2026-08-31 22:23:07
[2026-08-31 22:23:08,090.090 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:23:08,305.305 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:23:08,313.313 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:23:08,514.514 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:23:08,522.522 INFO    ] time= 31/08/2026 22:23:08
[2026-08-31 22:23:08,544.544 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:23:08,571.571 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:23:08,679.679 INFO    ] No existing commands found in stream
[2026-08-31 22:23:13,701.701 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:23:13,704.704 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-08-31 22:23:18,614.614 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 22:23:18,617.617 INFO    ] Checking for system updates...
[2026-08-31 22:23:18,654.654 INFO    ] 200
[2026-08-31 22:23:18,657.657 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:23:18,711.711 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:23:18,714.714 INFO    ] No update needed
[2026-08-31 22:23:18,716.716 INFO    ] Checking for camera pi updates...
[2026-08-31 22:23:18,750.750 INFO    ] 200
[2026-08-31 22:23:18,752.752 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:23:18,792.792 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:23:18,871.871 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:23:18,874.874 INFO    ] No camera update needed
[2026-08-31 22:23:18,876.876 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:23:18,878.878 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:23:18,884.884 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:23:18,889.889 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:23:20,932.932 INFO    ] ================================================
[2026-08-31 22:23:20,949.949 INFO    ] Launching Daemon at Mon Aug 31 22:23:20 IST 2026
[2026-08-31 22:23:20,960.960 INFO    ] ================================================
[2026-08-31 22:23:21,528.528 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:23:21
[2026-08-31 22:23:22,184.184 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:23:22,483.483 INFO    ] Initializing speech engine...
[2026-08-31 22:23:22,491.491 INFO    ] 2026-08-31 22:23:22
[2026-08-31 22:23:22,773.773 INFO    ] 2026-08-31 22:23:22
[2026-08-31 22:23:22,820.820 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:23:23,047.047 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:23:23,068.068 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:23:23,256.256 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:23:23,306.306 INFO    ] time= 31/08/2026 22:23:23
[2026-08-31 22:23:23,316.316 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:23:23,334.334 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:23:23,460.460 INFO    ] No existing commands found in stream
[2026-08-31 22:23:28,477.477 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:23:28,480.480 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-08-31 22:23:32,694.694 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 22:23:32,697.697 INFO    ] Checking for system updates...
[2026-08-31 22:23:32,733.733 INFO    ] 200
[2026-08-31 22:23:32,735.735 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:23:32,788.788 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:23:32,791.791 INFO    ] No update needed
[2026-08-31 22:23:32,793.793 INFO    ] Checking for camera pi updates...
[2026-08-31 22:23:32,827.827 INFO    ] 200
[2026-08-31 22:23:32,830.830 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:23:32,870.870 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:23:32,934.934 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:23:32,936.936 INFO    ] No camera update needed
[2026-08-31 22:23:32,939.939 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:23:32,941.941 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:23:32,946.946 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:23:32,951.951 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:23:34,991.991 INFO    ] ================================================
[2026-08-31 22:23:35,006.006 INFO    ] Launching Daemon at Mon Aug 31 22:23:35 IST 2026
[2026-08-31 22:23:35,017.017 INFO    ] ================================================
[2026-08-31 22:23:35,662.662 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:23:35
[2026-08-31 22:23:36,324.324 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:23:36,621.621 INFO    ] Initializing speech engine...
[2026-08-31 22:23:36,635.635 INFO    ] 2026-08-31 22:23:36
[2026-08-31 22:23:36,918.918 INFO    ] 2026-08-31 22:23:36
[2026-08-31 22:23:36,956.956 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:23:37,202.202 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:23:37,209.209 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:23:37,404.404 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:23:37,447.447 INFO    ] time= 31/08/2026 22:23:37
[2026-08-31 22:23:37,466.466 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:23:37,494.494 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:23:37,602.602 INFO    ] No existing commands found in stream
[2026-08-31 22:23:42,624.624 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:23:42,627.627 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-08-31 22:23:46,464.464 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 22:23:46,466.466 INFO    ] Checking for system updates...
[2026-08-31 22:23:46,507.507 INFO    ] 200
[2026-08-31 22:23:46,509.509 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:23:46,568.568 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:23:46,570.570 INFO    ] No update needed
[2026-08-31 22:23:46,572.572 INFO    ] Checking for camera pi updates...
[2026-08-31 22:23:46,609.609 INFO    ] 200
[2026-08-31 22:23:46,611.611 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:23:46,651.651 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:23:46,847.847 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:23:46,849.849 INFO    ] No camera update needed
[2026-08-31 22:23:46,852.852 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:23:46,854.854 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:23:46,867.867 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:23:46,873.873 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:23:48,913.913 INFO    ] ================================================
[2026-08-31 22:23:48,928.928 INFO    ] Launching Daemon at Mon Aug 31 22:23:48 IST 2026
[2026-08-31 22:23:48,939.939 INFO    ] ================================================
[2026-08-31 22:23:49,576.576 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:23:49
[2026-08-31 22:23:50,233.233 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:23:50,529.529 INFO    ] Initializing speech engine...
[2026-08-31 22:23:50,536.536 INFO    ] 2026-08-31 22:23:50
[2026-08-31 22:23:50,809.809 INFO    ] 2026-08-31 22:23:50
[2026-08-31 22:23:50,876.876 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:23:51,145.145 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:23:51,154.154 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:23:51,340.340 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:23:51,355.355 INFO    ] time= 31/08/2026 22:23:51
[2026-08-31 22:23:51,371.371 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:23:51,396.396 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:23:51,502.502 INFO    ] No existing commands found in stream
[2026-08-31 22:23:56,519.519 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:23:56,522.522 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-08-31 22:23:59,796.796 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 22:23:59,799.799 INFO    ] Checking for system updates...
[2026-08-31 22:23:59,841.841 INFO    ] 200
[2026-08-31 22:23:59,844.844 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:23:59,903.903 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:23:59,906.906 INFO    ] No update needed
[2026-08-31 22:23:59,908.908 INFO    ] Checking for camera pi updates...
[2026-08-31 22:23:59,943.943 INFO    ] 200
[2026-08-31 22:23:59,947.947 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:23:59,989.989 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:24:00,070.070 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:24:00,073.073 INFO    ] No camera update needed
[2026-08-31 22:24:00,077.077 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:24:00,100.100 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:24:00,107.107 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:24:00,115.115 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:24:02,173.173 INFO    ] ================================================
[2026-08-31 22:24:02,194.194 INFO    ] Launching Daemon at Mon Aug 31 22:24:02 IST 2026
[2026-08-31 22:24:02,211.211 INFO    ] ================================================
[2026-08-31 22:24:02,921.921 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:24:02
[2026-08-31 22:24:03,581.581 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:24:03,879.879 INFO    ] Initializing speech engine...
[2026-08-31 22:24:03,886.886 INFO    ] 2026-08-31 22:24:03
[2026-08-31 22:24:04,159.159 INFO    ] 2026-08-31 22:24:04
[2026-08-31 22:24:04,213.213 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:24:04,438.438 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:24:04,445.445 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:24:04,669.669 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:24:04,705.705 INFO    ] time= 31/08/2026 22:24:04
[2026-08-31 22:24:04,723.723 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:24:04,751.751 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:24:04,905.905 INFO    ] No existing commands found in stream
[2026-08-31 22:24:09,941.941 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:24:09,944.944 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-08-31 22:24:14,179.179 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 22:24:14,182.182 INFO    ] Checking for system updates...
[2026-08-31 22:24:14,219.219 INFO    ] 200
[2026-08-31 22:24:14,222.222 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:24:14,276.276 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:24:14,279.279 INFO    ] No update needed
[2026-08-31 22:24:14,281.281 INFO    ] Checking for camera pi updates...
[2026-08-31 22:24:14,319.319 INFO    ] 200
[2026-08-31 22:24:14,321.321 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:24:14,372.372 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:24:14,469.469 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:24:14,471.471 INFO    ] No camera update needed
[2026-08-31 22:24:14,474.474 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:24:14,476.476 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:24:14,483.483 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:24:14,488.488 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:24:16,529.529 INFO    ] ================================================
[2026-08-31 22:24:16,544.544 INFO    ] Launching Daemon at Mon Aug 31 22:24:16 IST 2026
[2026-08-31 22:24:16,555.555 INFO    ] ================================================
[2026-08-31 22:24:17,129.129 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:24:17
[2026-08-31 22:24:17,727.727 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:24:17,983.983 INFO    ] Initializing speech engine...
[2026-08-31 22:24:17,992.992 INFO    ] 2026-08-31 22:24:17
[2026-08-31 22:24:18,286.286 INFO    ] 2026-08-31 22:24:18
[2026-08-31 22:24:18,325.325 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:24:18,529.529 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:24:18,548.548 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:24:18,697.697 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:24:18,705.705 INFO    ] time= 31/08/2026 22:24:18
[2026-08-31 22:24:18,732.732 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:24:18,777.777 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:24:18,914.914 INFO    ] No existing commands found in stream
[2026-08-31 22:24:23,930.930 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:24:23,933.933 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-08-31 22:24:25,993.993 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 22:24:25,996.996 INFO    ] Checking for system updates...
[2026-08-31 22:24:26,035.035 INFO    ] 200
[2026-08-31 22:24:26,038.038 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:24:26,096.096 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:24:26,099.099 INFO    ] No update needed
[2026-08-31 22:24:26,101.101 INFO    ] Checking for camera pi updates...
[2026-08-31 22:24:26,138.138 INFO    ] 200
[2026-08-31 22:24:26,140.140 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:24:26,185.185 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:24:26,235.235 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:24:26,238.238 INFO    ] No camera update needed
[2026-08-31 22:24:26,240.240 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:24:26,243.243 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:24:26,248.248 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:24:26,253.253 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:24:28,293.293 INFO    ] ================================================
[2026-08-31 22:24:28,309.309 INFO    ] Launching Daemon at Mon Aug 31 22:24:28 IST 2026
[2026-08-31 22:24:28,319.319 INFO    ] ================================================
[2026-08-31 22:24:28,968.968 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:24:28
[2026-08-31 22:24:29,628.628 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:24:29,923.923 INFO    ] Initializing speech engine...
[2026-08-31 22:24:29,932.932 INFO    ] 2026-08-31 22:24:29
[2026-08-31 22:24:30,196.196 INFO    ] 2026-08-31 22:24:30
[2026-08-31 22:24:30,265.265 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:24:30,493.493 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:24:30,502.502 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:24:30,638.638 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:24:30,675.675 INFO    ] time= 31/08/2026 22:24:30
[2026-08-31 22:24:30,735.735 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:24:30,775.775 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:24:30,916.916 INFO    ] No existing commands found in stream
[2026-08-31 22:24:35,937.937 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:24:35,940.940 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-08-31 22:24:39,860.860 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 22:24:39,863.863 INFO    ] Checking for system updates...
[2026-08-31 22:24:39,904.904 INFO    ] 200
[2026-08-31 22:24:39,906.906 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:24:39,969.969 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:24:39,971.971 INFO    ] No update needed
[2026-08-31 22:24:39,974.974 INFO    ] Checking for camera pi updates...
[2026-08-31 22:24:40,008.008 INFO    ] 200
[2026-08-31 22:24:40,010.010 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:24:40,059.059 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:24:40,144.144 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:24:40,147.147 INFO    ] No camera update needed
[2026-08-31 22:24:40,149.149 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:24:40,152.152 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:24:40,157.157 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:24:40,162.162 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:24:42,203.203 INFO    ] ================================================
[2026-08-31 22:24:42,219.219 INFO    ] Launching Daemon at Mon Aug 31 22:24:42 IST 2026
[2026-08-31 22:24:42,229.229 INFO    ] ================================================
[2026-08-31 22:24:42,867.867 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:24:42
[2026-08-31 22:24:43,525.525 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:24:43,826.826 INFO    ] Initializing speech engine...
[2026-08-31 22:24:43,839.839 INFO    ] 2026-08-31 22:24:43
[2026-08-31 22:24:44,152.152 INFO    ] 2026-08-31 22:24:44
[2026-08-31 22:24:44,240.240 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:24:44,457.457 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:24:44,462.462 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:24:44,661.661 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:24:44,668.668 INFO    ] time= 31/08/2026 22:24:44
[2026-08-31 22:24:44,688.688 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:24:44,716.716 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:24:44,819.819 INFO    ] No existing commands found in stream
[2026-08-31 22:24:49,836.836 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:24:49,839.839 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-08-31 22:24:50,453.453 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 22:24:50,456.456 INFO    ] Checking for system updates...
[2026-08-31 22:24:50,497.497 INFO    ] 200
[2026-08-31 22:24:50,500.500 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:24:50,554.554 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:24:50,557.557 INFO    ] No update needed
[2026-08-31 22:24:50,560.560 INFO    ] Checking for camera pi updates...
[2026-08-31 22:24:50,594.594 INFO    ] 200
[2026-08-31 22:24:50,597.597 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:24:50,644.644 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:24:50,728.728 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:24:50,731.731 INFO    ] No camera update needed
[2026-08-31 22:24:50,733.733 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:24:50,736.736 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:24:50,742.742 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:24:50,748.748 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:24:52,790.790 INFO    ] ================================================
[2026-08-31 22:24:52,806.806 INFO    ] Launching Daemon at Mon Aug 31 22:24:52 IST 2026
[2026-08-31 22:24:52,817.817 INFO    ] ================================================
[2026-08-31 22:24:53,458.458 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:24:53
[2026-08-31 22:24:54,118.118 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:24:54,418.418 INFO    ] Initializing speech engine...
[2026-08-31 22:24:54,424.424 INFO    ] 2026-08-31 22:24:54
[2026-08-31 22:24:54,699.699 INFO    ] 2026-08-31 22:24:54
[2026-08-31 22:24:54,755.755 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:24:54,989.989 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:24:55,000.000 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:24:55,211.211 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:24:55,258.258 INFO    ] time= 31/08/2026 22:24:55
[2026-08-31 22:24:55,275.275 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:24:55,285.285 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:24:55,418.418 INFO    ] No existing commands found in stream
[2026-08-31 22:25:00,452.452 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:25:00,455.455 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-08-31 22:25:02,059.059 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 22:25:02,063.063 INFO    ] Checking for system updates...
[2026-08-31 22:25:02,109.109 INFO    ] 200
[2026-08-31 22:25:02,112.112 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:25:02,183.183 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:25:02,186.186 INFO    ] No update needed
[2026-08-31 22:25:02,189.189 INFO    ] Checking for camera pi updates...
[2026-08-31 22:25:02,228.228 INFO    ] 200
[2026-08-31 22:25:02,231.231 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:25:02,299.299 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:25:02,435.435 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:25:02,439.439 INFO    ] No camera update needed
[2026-08-31 22:25:02,441.441 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:25:02,444.444 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:25:02,451.451 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:25:02,457.457 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:25:04,498.498 INFO    ] ================================================
[2026-08-31 22:25:04,513.513 INFO    ] Launching Daemon at Mon Aug 31 22:25:04 IST 2026
[2026-08-31 22:25:04,524.524 INFO    ] ================================================
[2026-08-31 22:25:05,094.094 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:25:05
[2026-08-31 22:25:05,700.700 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:25:05,974.974 INFO    ] Initializing speech engine...
[2026-08-31 22:25:05,983.983 INFO    ] 2026-08-31 22:25:05
[2026-08-31 22:25:06,267.267 INFO    ] 2026-08-31 22:25:06
[2026-08-31 22:25:06,302.302 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:25:06,504.504 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:25:06,518.518 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:25:06,684.684 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:25:06,691.691 INFO    ] time= 31/08/2026 22:25:06
[2026-08-31 22:25:06,697.697 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:25:06,729.729 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:25:06,858.858 INFO    ] No existing commands found in stream
[2026-08-31 22:25:11,889.889 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:25:11,891.891 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-08-31 22:25:14,533.533 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 22:25:14,536.536 INFO    ] Checking for system updates...
[2026-08-31 22:25:14,577.577 INFO    ] 200
[2026-08-31 22:25:14,580.580 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:25:14,640.640 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:25:14,643.643 INFO    ] No update needed
[2026-08-31 22:25:14,646.646 INFO    ] Checking for camera pi updates...
[2026-08-31 22:25:14,685.685 INFO    ] 200
[2026-08-31 22:25:14,688.688 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:25:14,731.731 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:25:14,821.821 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:25:14,824.824 INFO    ] No camera update needed
[2026-08-31 22:25:14,827.827 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:25:14,829.829 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:25:14,836.836 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:25:14,841.841 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:25:16,885.885 INFO    ] ================================================
[2026-08-31 22:25:16,900.900 INFO    ] Launching Daemon at Mon Aug 31 22:25:16 IST 2026
[2026-08-31 22:25:16,911.911 INFO    ] ================================================
[2026-08-31 22:25:17,491.491 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:25:17
[2026-08-31 22:25:18,088.088 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:25:18,361.361 INFO    ] Initializing speech engine...
[2026-08-31 22:25:18,370.370 INFO    ] 2026-08-31 22:25:18
[2026-08-31 22:25:18,626.626 INFO    ] 2026-08-31 22:25:18
[2026-08-31 22:25:18,686.686 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:25:18,911.911 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:25:18,916.916 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:25:19,151.151 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:25:19,173.173 INFO    ] time= 31/08/2026 22:25:19
[2026-08-31 22:25:19,179.179 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:25:19,200.200 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:25:19,324.324 INFO    ] No existing commands found in stream
[2026-08-31 22:25:24,338.338 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:25:24,341.341 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-08-31 22:25:27,185.185 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 22:25:27,188.188 INFO    ] Checking for system updates...
[2026-08-31 22:25:27,223.223 INFO    ] 200
[2026-08-31 22:25:27,225.225 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:25:27,278.278 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:25:27,280.280 INFO    ] No update needed
[2026-08-31 22:25:27,283.283 INFO    ] Checking for camera pi updates...
[2026-08-31 22:25:27,317.317 INFO    ] 200
[2026-08-31 22:25:27,319.319 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:25:27,365.365 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:25:27,451.451 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:25:27,454.454 INFO    ] No camera update needed
[2026-08-31 22:25:27,456.456 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:25:27,459.459 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:25:27,464.464 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:25:27,469.469 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:25:29,511.511 INFO    ] ================================================
[2026-08-31 22:25:29,526.526 INFO    ] Launching Daemon at Mon Aug 31 22:25:29 IST 2026
[2026-08-31 22:25:29,536.536 INFO    ] ================================================
[2026-08-31 22:25:30,106.106 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:25:30
[2026-08-31 22:25:30,711.711 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:25:30,976.976 INFO    ] Initializing speech engine...
[2026-08-31 22:25:31,001.001 INFO    ] 2026-08-31 22:25:30
[2026-08-31 22:25:31,282.282 INFO    ] 2026-08-31 22:25:31
[2026-08-31 22:25:31,353.353 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:25:31,591.591 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:25:31,597.597 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:25:31,836.836 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:25:31,871.871 INFO    ] time= 31/08/2026 22:25:31
[2026-08-31 22:25:31,894.894 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:25:31,923.923 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:25:32,055.055 INFO    ] No existing commands found in stream
[2026-08-31 22:25:37,086.086 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:25:37,089.089 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-08-31 22:25:38,108.108 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 22:25:38,110.110 INFO    ] Checking for system updates...
[2026-08-31 22:25:38,150.150 INFO    ] 200
[2026-08-31 22:25:38,153.153 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:25:38,205.205 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:25:38,207.207 INFO    ] No update needed
[2026-08-31 22:25:38,210.210 INFO    ] Checking for camera pi updates...
[2026-08-31 22:25:38,248.248 INFO    ] 200
[2026-08-31 22:25:38,250.250 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:25:38,290.290 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:25:38,363.363 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:25:38,365.365 INFO    ] No camera update needed
[2026-08-31 22:25:38,368.368 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:25:38,370.370 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:25:38,376.376 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:25:38,381.381 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:25:40,422.422 INFO    ] ================================================
[2026-08-31 22:25:40,437.437 INFO    ] Launching Daemon at Mon Aug 31 22:25:40 IST 2026
[2026-08-31 22:25:40,448.448 INFO    ] ================================================
[2026-08-31 22:25:41,106.106 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:25:41
[2026-08-31 22:25:41,694.694 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:25:41,952.952 INFO    ] Initializing speech engine...
[2026-08-31 22:25:41,971.971 INFO    ] 2026-08-31 22:25:41
[2026-08-31 22:25:42,220.220 INFO    ] 2026-08-31 22:25:42
[2026-08-31 22:25:42,255.255 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:25:42,456.456 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:25:42,514.514 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:25:42,658.658 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:25:42,692.692 INFO    ] time= 31/08/2026 22:25:42
[2026-08-31 22:25:42,741.741 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:25:42,790.790 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:25:42,921.921 INFO    ] No existing commands found in stream
[2026-08-31 22:25:47,946.946 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:25:47,949.949 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-08-31 22:25:50,617.617 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 22:25:50,620.620 INFO    ] Checking for system updates...
[2026-08-31 22:25:50,655.655 INFO    ] 200
[2026-08-31 22:25:50,658.658 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:25:50,711.711 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:25:50,714.714 INFO    ] No update needed
[2026-08-31 22:25:50,716.716 INFO    ] Checking for camera pi updates...
[2026-08-31 22:25:50,750.750 INFO    ] 200
[2026-08-31 22:25:50,753.753 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:25:50,794.794 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:25:50,950.950 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:25:50,952.952 INFO    ] No camera update needed
[2026-08-31 22:25:50,955.955 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:25:50,957.957 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:25:50,962.962 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:25:50,968.968 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:25:53,008.008 INFO    ] ================================================
[2026-08-31 22:25:53,023.023 INFO    ] Launching Daemon at Mon Aug 31 22:25:53 IST 2026
[2026-08-31 22:25:53,033.033 INFO    ] ================================================
[2026-08-31 22:25:53,613.613 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:25:53
[2026-08-31 22:25:54,208.208 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:25:54,492.492 INFO    ] Initializing speech engine...
[2026-08-31 22:25:54,500.500 INFO    ] 2026-08-31 22:25:54
[2026-08-31 22:25:54,772.772 INFO    ] 2026-08-31 22:25:54
[2026-08-31 22:25:54,806.806 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:25:55,006.006 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:25:55,012.012 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:25:55,189.189 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:25:55,197.197 INFO    ] time= 31/08/2026 22:25:55
[2026-08-31 22:25:55,205.205 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:25:55,211.211 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:25:55,362.362 INFO    ] No existing commands found in stream
[2026-08-31 22:26:00,387.387 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:26:00,390.390 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-08-31 22:26:03,890.890 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 22:26:03,892.892 INFO    ] Checking for system updates...
[2026-08-31 22:26:03,928.928 INFO    ] 200
[2026-08-31 22:26:03,930.930 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:26:03,982.982 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:26:03,985.985 INFO    ] No update needed
[2026-08-31 22:26:03,988.988 INFO    ] Checking for camera pi updates...
[2026-08-31 22:26:04,025.025 INFO    ] 200
[2026-08-31 22:26:04,028.028 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:26:04,068.068 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:26:04,146.146 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:26:04,149.149 INFO    ] No camera update needed
[2026-08-31 22:26:04,152.152 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:26:04,154.154 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:26:04,159.159 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:26:04,164.164 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:26:06,206.206 INFO    ] ================================================
[2026-08-31 22:26:06,221.221 INFO    ] Launching Daemon at Mon Aug 31 22:26:06 IST 2026
[2026-08-31 22:26:06,232.232 INFO    ] ================================================
[2026-08-31 22:26:06,864.864 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:26:06
[2026-08-31 22:26:07,512.512 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:26:07,813.813 INFO    ] Initializing speech engine...
[2026-08-31 22:26:07,818.818 INFO    ] 2026-08-31 22:26:07
[2026-08-31 22:26:08,096.096 INFO    ] 2026-08-31 22:26:08
[2026-08-31 22:26:08,152.152 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:26:08,404.404 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:26:08,410.410 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:26:08,617.617 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:26:08,647.647 INFO    ] time= 31/08/2026 22:26:08
[2026-08-31 22:26:08,662.662 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:26:08,673.673 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:26:08,796.796 INFO    ] No existing commands found in stream
[2026-08-31 22:26:13,807.807 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:26:13,810.810 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-08-31 22:26:14,972.972 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 22:26:14,975.975 INFO    ] Checking for system updates...
[2026-08-31 22:26:15,011.011 INFO    ] 200
[2026-08-31 22:26:15,014.014 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:26:15,072.072 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:26:15,075.075 INFO    ] No update needed
[2026-08-31 22:26:15,078.078 INFO    ] Checking for camera pi updates...
[2026-08-31 22:26:15,112.112 INFO    ] 200
[2026-08-31 22:26:15,115.115 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:26:15,155.155 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:26:15,235.235 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:26:15,238.238 INFO    ] No camera update needed
[2026-08-31 22:26:15,241.241 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:26:15,244.244 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:26:15,250.250 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:26:15,255.255 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:26:17,297.297 INFO    ] ================================================
[2026-08-31 22:26:17,312.312 INFO    ] Launching Daemon at Mon Aug 31 22:26:17 IST 2026
[2026-08-31 22:26:17,322.322 INFO    ] ================================================
[2026-08-31 22:26:17,950.950 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:26:17
[2026-08-31 22:26:18,599.599 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:26:18,898.898 INFO    ] Initializing speech engine...
[2026-08-31 22:26:18,905.905 INFO    ] 2026-08-31 22:26:18
[2026-08-31 22:26:19,179.179 INFO    ] 2026-08-31 22:26:19
[2026-08-31 22:26:19,231.231 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:26:19,466.466 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:26:19,471.471 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:26:19,606.606 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:26:19,654.654 INFO    ] time= 31/08/2026 22:26:19
[2026-08-31 22:26:19,715.715 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:26:19,744.744 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:26:19,886.886 INFO    ] No existing commands found in stream
[2026-08-31 22:26:24,908.908 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:26:24,911.911 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-08-31 22:26:26,750.750 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 22:26:26,753.753 INFO    ] Checking for system updates...
[2026-08-31 22:26:26,789.789 INFO    ] 200
[2026-08-31 22:26:26,791.791 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:26:26,849.849 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:26:26,851.851 INFO    ] No update needed
[2026-08-31 22:26:26,854.854 INFO    ] Checking for camera pi updates...
[2026-08-31 22:26:26,889.889 INFO    ] 200
[2026-08-31 22:26:26,891.891 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:26:26,933.933 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:26:27,037.037 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:26:27,039.039 INFO    ] No camera update needed
[2026-08-31 22:26:27,042.042 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:26:27,045.045 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:26:27,051.051 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:26:27,056.056 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:26:29,098.098 INFO    ] ================================================
[2026-08-31 22:26:29,113.113 INFO    ] Launching Daemon at Mon Aug 31 22:26:29 IST 2026
[2026-08-31 22:26:29,123.123 INFO    ] ================================================
[2026-08-31 22:26:29,705.705 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:26:29
[2026-08-31 22:26:30,304.304 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:26:30,590.590 INFO    ] Initializing speech engine...
[2026-08-31 22:26:30,600.600 INFO    ] 2026-08-31 22:26:30
[2026-08-31 22:26:30,853.853 INFO    ] 2026-08-31 22:26:30
[2026-08-31 22:26:30,889.889 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:26:31,144.144 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:26:31,150.150 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:26:31,324.324 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:26:31,390.390 INFO    ] time= 31/08/2026 22:26:31
[2026-08-31 22:26:31,430.430 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:26:31,437.437 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:26:31,589.589 INFO    ] No existing commands found in stream
[2026-08-31 22:26:36,612.612 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:26:36,614.614 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-08-31 22:26:37,055.055 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 22:26:37,058.058 INFO    ] Checking for system updates...
[2026-08-31 22:26:37,094.094 INFO    ] 200
[2026-08-31 22:26:37,096.096 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:26:37,148.148 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:26:37,151.151 INFO    ] No update needed
[2026-08-31 22:26:37,153.153 INFO    ] Checking for camera pi updates...
[2026-08-31 22:26:37,186.186 INFO    ] 200
[2026-08-31 22:26:37,189.189 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:26:37,233.233 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:26:37,315.315 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:26:37,317.317 INFO    ] No camera update needed
[2026-08-31 22:26:37,320.320 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:26:37,322.322 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:26:37,327.327 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:26:37,332.332 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:26:39,372.372 INFO    ] ================================================
[2026-08-31 22:26:39,387.387 INFO    ] Launching Daemon at Mon Aug 31 22:26:39 IST 2026
[2026-08-31 22:26:39,398.398 INFO    ] ================================================
[2026-08-31 22:26:39,966.966 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:26:39
[2026-08-31 22:26:40,553.553 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:26:40,801.801 INFO    ] Initializing speech engine...
[2026-08-31 22:26:40,822.822 INFO    ] 2026-08-31 22:26:40
[2026-08-31 22:26:41,081.081 INFO    ] 2026-08-31 22:26:41
[2026-08-31 22:26:41,116.116 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:26:41,312.312 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:26:41,320.320 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:26:41,516.516 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:26:41,558.558 INFO    ] time= 31/08/2026 22:26:41
[2026-08-31 22:26:41,623.623 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:26:41,653.653 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:26:41,794.794 INFO    ] No existing commands found in stream
[2026-08-31 22:26:46,814.814 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:26:46,816.816 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-08-31 22:26:48,450.450 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 22:26:48,452.452 INFO    ] Checking for system updates...
[2026-08-31 22:26:48,491.491 INFO    ] 200
[2026-08-31 22:26:48,494.494 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:26:48,546.546 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:26:48,549.549 INFO    ] No update needed
[2026-08-31 22:26:48,551.551 INFO    ] Checking for camera pi updates...
[2026-08-31 22:26:48,584.584 INFO    ] 200
[2026-08-31 22:26:48,587.587 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:26:48,626.626 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:26:48,706.706 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:26:48,709.709 INFO    ] No camera update needed
[2026-08-31 22:26:48,711.711 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:26:48,713.713 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:26:48,719.719 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:26:48,724.724 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:26:50,764.764 INFO    ] ================================================
[2026-08-31 22:26:50,779.779 INFO    ] Launching Daemon at Mon Aug 31 22:26:50 IST 2026
[2026-08-31 22:26:50,790.790 INFO    ] ================================================
[2026-08-31 22:26:51,369.369 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:26:51
[2026-08-31 22:26:51,964.964 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:26:52,239.239 INFO    ] Initializing speech engine...
[2026-08-31 22:26:52,250.250 INFO    ] 2026-08-31 22:26:52
[2026-08-31 22:26:52,510.510 INFO    ] 2026-08-31 22:26:52
[2026-08-31 22:26:52,563.563 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:26:52,783.783 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:26:52,792.792 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:26:52,925.925 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:26:52,995.995 INFO    ] time= 31/08/2026 22:26:52
[2026-08-31 22:26:53,052.052 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:26:53,058.058 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:26:53,173.173 INFO    ] No existing commands found in stream
[2026-08-31 22:26:58,205.205 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:26:58,208.208 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-08-31 22:27:02,597.597 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 22:27:02,601.601 INFO    ] Checking for system updates...
[2026-08-31 22:27:02,639.639 INFO    ] 200
[2026-08-31 22:27:02,642.642 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:27:02,702.702 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:27:02,705.705 INFO    ] No update needed
[2026-08-31 22:27:02,707.707 INFO    ] Checking for camera pi updates...
[2026-08-31 22:27:02,741.741 INFO    ] 200
[2026-08-31 22:27:02,744.744 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:27:02,795.795 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:27:02,880.880 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:27:02,882.882 INFO    ] No camera update needed
[2026-08-31 22:27:02,885.885 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:27:02,887.887 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:27:02,893.893 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:27:02,898.898 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:27:04,940.940 INFO    ] ================================================
[2026-08-31 22:27:04,955.955 INFO    ] Launching Daemon at Mon Aug 31 22:27:04 IST 2026
[2026-08-31 22:27:04,966.966 INFO    ] ================================================
[2026-08-31 22:27:05,538.538 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:27:05
[2026-08-31 22:27:06,159.159 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:27:06,435.435 INFO    ] Initializing speech engine...
[2026-08-31 22:27:06,442.442 INFO    ] 2026-08-31 22:27:06
[2026-08-31 22:27:06,703.703 INFO    ] 2026-08-31 22:27:06
[2026-08-31 22:27:06,757.757 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:27:06,983.983 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:27:06,988.988 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:27:07,167.167 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:27:07,232.232 INFO    ] time= 31/08/2026 22:27:07
[2026-08-31 22:27:07,251.251 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:27:07,267.267 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:27:07,401.401 INFO    ] No existing commands found in stream
[2026-08-31 22:27:12,429.429 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:27:12,432.432 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-08-31 22:27:16,230.230 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 22:27:16,233.233 INFO    ] Checking for system updates...
[2026-08-31 22:27:16,268.268 INFO    ] 200
[2026-08-31 22:27:16,271.271 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:27:16,323.323 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:27:16,325.325 INFO    ] No update needed
[2026-08-31 22:27:16,328.328 INFO    ] Checking for camera pi updates...
[2026-08-31 22:27:16,366.366 INFO    ] 200
[2026-08-31 22:27:16,368.368 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:27:16,409.409 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:27:16,494.494 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:27:16,496.496 INFO    ] No camera update needed
[2026-08-31 22:27:16,499.499 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:27:16,501.501 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:27:16,507.507 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:27:16,512.512 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:27:18,555.555 INFO    ] ================================================
[2026-08-31 22:27:18,574.574 INFO    ] Launching Daemon at Mon Aug 31 22:27:18 IST 2026
[2026-08-31 22:27:18,584.584 INFO    ] ================================================
[2026-08-31 22:27:19,165.165 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:27:19
[2026-08-31 22:27:19,768.768 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:27:20,039.039 INFO    ] Initializing speech engine...
[2026-08-31 22:27:20,048.048 INFO    ] 2026-08-31 22:27:20
[2026-08-31 22:27:20,298.298 INFO    ] 2026-08-31 22:27:20
[2026-08-31 22:27:20,334.334 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:27:20,585.585 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:27:20,594.594 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:27:20,781.781 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:27:20,835.835 INFO    ] time= 31/08/2026 22:27:20
[2026-08-31 22:27:20,860.860 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:27:20,874.874 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:27:20,972.972 INFO    ] No existing commands found in stream
[2026-08-31 22:27:25,981.981 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:27:25,984.984 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-08-31 22:27:29,260.260 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 22:27:29,262.262 INFO    ] Checking for system updates...
[2026-08-31 22:27:29,298.298 INFO    ] 200
[2026-08-31 22:27:29,301.301 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:27:29,353.353 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:27:29,355.355 INFO    ] No update needed
[2026-08-31 22:27:29,358.358 INFO    ] Checking for camera pi updates...
[2026-08-31 22:27:29,392.392 INFO    ] 200
[2026-08-31 22:27:29,395.395 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:27:29,436.436 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:27:29,514.514 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:27:29,517.517 INFO    ] No camera update needed
[2026-08-31 22:27:29,520.520 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:27:29,522.522 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:27:29,527.527 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:27:29,532.532 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:27:31,573.573 INFO    ] ================================================
[2026-08-31 22:27:31,589.589 INFO    ] Launching Daemon at Mon Aug 31 22:27:31 IST 2026
[2026-08-31 22:27:31,600.600 INFO    ] ================================================
[2026-08-31 22:27:32,226.226 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:27:32
[2026-08-31 22:27:32,823.823 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:27:33,068.068 INFO    ] Initializing speech engine...
[2026-08-31 22:27:33,076.076 INFO    ] 2026-08-31 22:27:33
[2026-08-31 22:27:33,348.348 INFO    ] 2026-08-31 22:27:33
[2026-08-31 22:27:33,383.383 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:27:33,584.584 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:27:33,640.640 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:27:33,827.827 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:27:33,876.876 INFO    ] time= 31/08/2026 22:27:33
[2026-08-31 22:27:33,916.916 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:27:33,922.922 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:27:34,031.031 INFO    ] No existing commands found in stream
[2026-08-31 22:27:39,059.059 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:27:39,061.061 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-08-31 22:27:41,261.261 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 22:27:41,264.264 INFO    ] Checking for system updates...
[2026-08-31 22:27:41,303.303 INFO    ] 200
[2026-08-31 22:27:41,306.306 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:27:41,357.357 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:27:41,360.360 INFO    ] No update needed
[2026-08-31 22:27:41,362.362 INFO    ] Checking for camera pi updates...
[2026-08-31 22:27:41,396.396 INFO    ] 200
[2026-08-31 22:27:41,398.398 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:27:41,446.446 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:27:41,529.529 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:27:41,531.531 INFO    ] No camera update needed
[2026-08-31 22:27:41,533.533 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:27:41,536.536 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:27:41,541.541 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:27:41,546.546 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:27:43,587.587 INFO    ] ================================================
[2026-08-31 22:27:43,602.602 INFO    ] Launching Daemon at Mon Aug 31 22:27:43 IST 2026
[2026-08-31 22:27:43,612.612 INFO    ] ================================================
[2026-08-31 22:27:44,176.176 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:27:44
[2026-08-31 22:27:44,759.759 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:27:45,006.006 INFO    ] Initializing speech engine...
[2026-08-31 22:27:45,031.031 INFO    ] 2026-08-31 22:27:45
[2026-08-31 22:27:45,286.286 INFO    ] 2026-08-31 22:27:45
[2026-08-31 22:27:45,321.321 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:27:45,525.525 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:27:45,583.583 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:27:45,727.727 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:27:45,782.782 INFO    ] time= 31/08/2026 22:27:45
[2026-08-31 22:27:45,836.836 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:27:45,863.863 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:27:45,947.947 INFO    ] No existing commands found in stream
[2026-08-31 22:27:50,984.984 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:27:50,987.987 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-08-31 22:27:53,050.050 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 22:27:53,053.053 INFO    ] Checking for system updates...
[2026-08-31 22:27:53,089.089 INFO    ] 200
[2026-08-31 22:27:53,091.091 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:27:53,143.143 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:27:53,145.145 INFO    ] No update needed
[2026-08-31 22:27:53,148.148 INFO    ] Checking for camera pi updates...
[2026-08-31 22:27:53,181.181 INFO    ] 200
[2026-08-31 22:27:53,184.184 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:27:53,229.229 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:27:53,423.423 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:27:53,426.426 INFO    ] No camera update needed
[2026-08-31 22:27:53,428.428 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:27:53,431.431 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:27:53,436.436 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:27:53,441.441 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:27:55,481.481 INFO    ] ================================================
[2026-08-31 22:27:55,496.496 INFO    ] Launching Daemon at Mon Aug 31 22:27:55 IST 2026
[2026-08-31 22:27:55,507.507 INFO    ] ================================================
[2026-08-31 22:27:56,080.080 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:27:56
[2026-08-31 22:27:56,666.666 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:27:56,925.925 INFO    ] Initializing speech engine...
[2026-08-31 22:27:56,939.939 INFO    ] 2026-08-31 22:27:56
[2026-08-31 22:27:57,198.198 INFO    ] 2026-08-31 22:27:57
[2026-08-31 22:27:57,233.233 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:27:57,419.419 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:27:57,436.436 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:27:57,570.570 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:27:57,577.577 INFO    ] time= 31/08/2026 22:27:57
[2026-08-31 22:27:57,597.597 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:27:57,645.645 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:27:57,775.775 INFO    ] No existing commands found in stream
[2026-08-31 22:28:02,787.787 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:28:02,791.791 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-08-31 22:28:06,912.912 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 22:28:06,914.914 INFO    ] Checking for system updates...
[2026-08-31 22:28:06,949.949 INFO    ] 200
[2026-08-31 22:28:06,952.952 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:28:07,003.003 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:28:07,006.006 INFO    ] No update needed
[2026-08-31 22:28:07,008.008 INFO    ] Checking for camera pi updates...
[2026-08-31 22:28:07,042.042 INFO    ] 200
[2026-08-31 22:28:07,044.044 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:28:07,090.090 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:28:07,180.180 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:28:07,183.183 INFO    ] No camera update needed
[2026-08-31 22:28:07,185.185 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:28:07,187.187 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:28:07,193.193 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:28:07,198.198 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:28:09,240.240 INFO    ] ================================================
[2026-08-31 22:28:09,255.255 INFO    ] Launching Daemon at Mon Aug 31 22:28:09 IST 2026
[2026-08-31 22:28:09,265.265 INFO    ] ================================================
[2026-08-31 22:28:09,846.846 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:28:09
[2026-08-31 22:28:10,443.443 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:28:10,720.720 INFO    ] Initializing speech engine...
[2026-08-31 22:28:10,729.729 INFO    ] 2026-08-31 22:28:10
[2026-08-31 22:28:10,990.990 INFO    ] 2026-08-31 22:28:10
[2026-08-31 22:28:11,020.020 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:28:11,265.265 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:28:11,275.275 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:28:11,424.424 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:28:11,504.504 INFO    ] time= 31/08/2026 22:28:11
[2026-08-31 22:28:11,536.536 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:28:11,542.542 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:28:11,677.677 INFO    ] No existing commands found in stream
[2026-08-31 22:28:16,698.698 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:28:16,702.702 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-08-31 22:28:18,774.774 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 22:28:18,776.776 INFO    ] Checking for system updates...
[2026-08-31 22:28:18,812.812 INFO    ] 200
[2026-08-31 22:28:18,815.815 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:28:18,866.866 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:28:18,869.869 INFO    ] No update needed
[2026-08-31 22:28:18,871.871 INFO    ] Checking for camera pi updates...
[2026-08-31 22:28:18,909.909 INFO    ] 200
[2026-08-31 22:28:18,912.912 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:28:18,952.952 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:28:19,035.035 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:28:19,037.037 INFO    ] No camera update needed
[2026-08-31 22:28:19,040.040 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:28:19,042.042 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:28:19,047.047 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:28:19,052.052 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:28:21,093.093 INFO    ] ================================================
[2026-08-31 22:28:21,110.110 INFO    ] Launching Daemon at Mon Aug 31 22:28:21 IST 2026
[2026-08-31 22:28:21,122.122 INFO    ] ================================================
[2026-08-31 22:28:21,702.702 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:28:21
[2026-08-31 22:28:22,299.299 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:28:22,575.575 INFO    ] Initializing speech engine...
[2026-08-31 22:28:22,585.585 INFO    ] 2026-08-31 22:28:22
[2026-08-31 22:28:22,833.833 INFO    ] 2026-08-31 22:28:22
[2026-08-31 22:28:22,869.869 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:28:23,144.144 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:28:23,152.152 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:28:23,341.341 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:28:23,388.388 INFO    ] time= 31/08/2026 22:28:23
[2026-08-31 22:28:23,405.405 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:28:23,415.415 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:28:23,516.516 INFO    ] No existing commands found in stream
[2026-08-31 22:28:28,536.536 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:28:28,539.539 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-08-31 22:28:31,828.828 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 22:28:31,830.830 INFO    ] Checking for system updates...
[2026-08-31 22:28:31,865.865 INFO    ] 200
[2026-08-31 22:28:31,868.868 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:28:31,920.920 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:28:31,922.922 INFO    ] No update needed
[2026-08-31 22:28:31,925.925 INFO    ] Checking for camera pi updates...
[2026-08-31 22:28:31,963.963 INFO    ] 200
[2026-08-31 22:28:31,965.965 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:28:32,009.009 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:28:32,115.115 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:28:32,118.118 INFO    ] No camera update needed
[2026-08-31 22:28:32,121.121 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:28:32,124.124 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:28:32,130.130 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:28:32,136.136 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:28:34,180.180 INFO    ] ================================================
[2026-08-31 22:28:34,195.195 INFO    ] Launching Daemon at Mon Aug 31 22:28:34 IST 2026
[2026-08-31 22:28:34,205.205 INFO    ] ================================================
[2026-08-31 22:28:34,772.772 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:28:34
[2026-08-31 22:28:35,354.354 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:28:35,625.625 INFO    ] Initializing speech engine...
[2026-08-31 22:28:35,635.635 INFO    ] 2026-08-31 22:28:35
[2026-08-31 22:28:35,891.891 INFO    ] 2026-08-31 22:28:35
[2026-08-31 22:28:35,948.948 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:28:36,121.121 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:28:36,123.123 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:28:36,251.251 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:28:36,269.269 INFO    ] time= 31/08/2026 22:28:36
[2026-08-31 22:28:36,278.278 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:28:36,284.284 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:28:36,364.364 INFO    ] No existing commands found in stream
[2026-08-31 22:28:41,394.394 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:28:41,397.397 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-08-31 22:28:42,140.140 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 22:28:42,143.143 INFO    ] Checking for system updates...
[2026-08-31 22:28:42,179.179 INFO    ] 200
[2026-08-31 22:28:42,182.182 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:28:42,242.242 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:28:42,245.245 INFO    ] No update needed
[2026-08-31 22:28:42,248.248 INFO    ] Checking for camera pi updates...
[2026-08-31 22:28:42,283.283 INFO    ] 200
[2026-08-31 22:28:42,286.286 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:28:42,328.328 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:28:42,412.412 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:28:42,415.415 INFO    ] No camera update needed
[2026-08-31 22:28:42,418.418 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:28:42,420.420 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:28:42,426.426 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:28:42,432.432 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:28:44,472.472 INFO    ] ================================================
[2026-08-31 22:28:44,487.487 INFO    ] Launching Daemon at Mon Aug 31 22:28:44 IST 2026
[2026-08-31 22:28:44,498.498 INFO    ] ================================================
[2026-08-31 22:28:45,138.138 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:28:45
[2026-08-31 22:28:45,798.798 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:28:46,097.097 INFO    ] Initializing speech engine...
[2026-08-31 22:28:46,105.105 INFO    ] 2026-08-31 22:28:46
[2026-08-31 22:28:46,376.376 INFO    ] 2026-08-31 22:28:46
[2026-08-31 22:28:46,429.429 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:28:46,679.679 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:28:46,687.687 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:28:46,884.884 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:28:46,922.922 INFO    ] time= 31/08/2026 22:28:46
[2026-08-31 22:28:46,938.938 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:28:46,946.946 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:28:47,060.060 INFO    ] No existing commands found in stream
[2026-08-31 22:28:52,087.087 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:28:52,090.090 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-08-31 22:28:55,951.951 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 22:28:55,954.954 INFO    ] Checking for system updates...
[2026-08-31 22:28:55,994.994 INFO    ] 200
[2026-08-31 22:28:55,998.998 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:28:56,053.053 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:28:56,056.056 INFO    ] No update needed
[2026-08-31 22:28:56,059.059 INFO    ] Checking for camera pi updates...
[2026-08-31 22:28:56,100.100 INFO    ] 200
[2026-08-31 22:28:56,102.102 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:28:56,148.148 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:28:56,251.251 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:28:56,254.254 INFO    ] No camera update needed
[2026-08-31 22:28:56,256.256 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:28:56,258.258 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:28:56,264.264 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:28:56,269.269 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:28:58,309.309 INFO    ] ================================================
[2026-08-31 22:28:58,324.324 INFO    ] Launching Daemon at Mon Aug 31 22:28:58 IST 2026
[2026-08-31 22:28:58,334.334 INFO    ] ================================================
[2026-08-31 22:28:58,916.916 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:28:58
[2026-08-31 22:28:59,513.513 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:28:59,791.791 INFO    ] Initializing speech engine...
[2026-08-31 22:28:59,798.798 INFO    ] 2026-08-31 22:28:59
[2026-08-31 22:29:00,059.059 INFO    ] 2026-08-31 22:29:00
[2026-08-31 22:29:00,113.113 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:29:00,335.335 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:29:00,344.344 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:29:00,475.475 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:29:00,523.523 INFO    ] time= 31/08/2026 22:29:00
[2026-08-31 22:29:00,582.582 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:29:00,610.610 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:29:00,737.737 INFO    ] No existing commands found in stream
[2026-08-31 22:29:05,762.762 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:29:05,765.765 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-08-31 22:29:10,610.610 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 22:29:10,613.613 INFO    ] Checking for system updates...
[2026-08-31 22:29:10,648.648 INFO    ] 200
[2026-08-31 22:29:10,651.651 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:29:10,709.709 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:29:10,711.711 INFO    ] No update needed
[2026-08-31 22:29:10,714.714 INFO    ] Checking for camera pi updates...
[2026-08-31 22:29:10,747.747 INFO    ] 200
[2026-08-31 22:29:10,749.749 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:29:10,789.789 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:29:10,891.891 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:29:10,894.894 INFO    ] No camera update needed
[2026-08-31 22:29:10,896.896 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:29:10,899.899 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:29:10,904.904 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:29:10,909.909 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:29:12,950.950 INFO    ] ================================================
[2026-08-31 22:29:12,964.964 INFO    ] Launching Daemon at Mon Aug 31 22:29:12 IST 2026
[2026-08-31 22:29:12,975.975 INFO    ] ================================================
[2026-08-31 22:29:13,543.543 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:29:13
[2026-08-31 22:29:14,131.131 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:29:14,384.384 INFO    ] Initializing speech engine...
[2026-08-31 22:29:14,393.393 INFO    ] 2026-08-31 22:29:14
[2026-08-31 22:29:14,685.685 INFO    ] 2026-08-31 22:29:14
[2026-08-31 22:29:14,723.723 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:29:14,941.941 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:29:14,949.949 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:29:15,094.094 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:29:15,100.100 INFO    ] time= 31/08/2026 22:29:15
[2026-08-31 22:29:15,105.105 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:29:15,111.111 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:29:15,249.249 INFO    ] No existing commands found in stream
[2026-08-31 22:29:20,279.279 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:29:20,282.282 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-08-31 22:29:24,148.148 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 22:29:24,151.151 INFO    ] Checking for system updates...
[2026-08-31 22:29:24,191.191 INFO    ] 200
[2026-08-31 22:29:24,194.194 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:29:24,249.249 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:29:24,252.252 INFO    ] No update needed
[2026-08-31 22:29:24,255.255 INFO    ] Checking for camera pi updates...
[2026-08-31 22:29:24,290.290 INFO    ] 200
[2026-08-31 22:29:24,292.292 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:29:24,334.334 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:29:24,419.419 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:29:24,422.422 INFO    ] No camera update needed
[2026-08-31 22:29:24,425.425 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:29:24,427.427 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:29:24,433.433 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:29:24,439.439 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:29:26,484.484 INFO    ] ================================================
[2026-08-31 22:29:26,499.499 INFO    ] Launching Daemon at Mon Aug 31 22:29:26 IST 2026
[2026-08-31 22:29:26,510.510 INFO    ] ================================================
[2026-08-31 22:29:27,074.074 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:29:27
[2026-08-31 22:29:27,674.674 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:29:27,948.948 INFO    ] Initializing speech engine...
[2026-08-31 22:29:27,957.957 INFO    ] 2026-08-31 22:29:27
[2026-08-31 22:29:28,205.205 INFO    ] 2026-08-31 22:29:28
[2026-08-31 22:29:28,241.241 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:29:28,413.413 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:29:28,426.426 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:29:28,568.568 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:29:28,576.576 INFO    ] time= 31/08/2026 22:29:28
[2026-08-31 22:29:28,583.583 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:29:28,595.595 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:29:28,726.726 INFO    ] No existing commands found in stream
[2026-08-31 22:29:33,756.756 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:29:33,759.759 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-08-31 22:29:37,947.947 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 22:29:37,950.950 INFO    ] Checking for system updates...
[2026-08-31 22:29:37,985.985 INFO    ] 200
[2026-08-31 22:29:37,988.988 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:29:38,040.040 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:29:38,042.042 INFO    ] No update needed
[2026-08-31 22:29:38,044.044 INFO    ] Checking for camera pi updates...
[2026-08-31 22:29:38,081.081 INFO    ] 200
[2026-08-31 22:29:38,083.083 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:29:38,124.124 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:29:38,207.207 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:29:38,210.210 INFO    ] No camera update needed
[2026-08-31 22:29:38,212.212 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:29:38,214.214 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:29:38,220.220 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:29:38,225.225 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:29:40,264.264 INFO    ] ================================================
[2026-08-31 22:29:40,280.280 INFO    ] Launching Daemon at Mon Aug 31 22:29:40 IST 2026
[2026-08-31 22:29:40,290.290 INFO    ] ================================================
[2026-08-31 22:29:40,876.876 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:29:40
[2026-08-31 22:29:41,474.474 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:29:41,750.750 INFO    ] Initializing speech engine...
[2026-08-31 22:29:41,758.758 INFO    ] 2026-08-31 22:29:41
[2026-08-31 22:29:42,017.017 INFO    ] 2026-08-31 22:29:42
[2026-08-31 22:29:42,069.069 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:29:42,297.297 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:29:42,301.301 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:29:42,505.505 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:29:42,557.557 INFO    ] time= 31/08/2026 22:29:42
[2026-08-31 22:29:42,564.564 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:29:42,582.582 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:29:42,701.701 INFO    ] No existing commands found in stream
[2026-08-31 22:29:47,722.722 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:29:47,725.725 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-08-31 22:29:51,338.338 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 22:29:51,341.341 INFO    ] Checking for system updates...
[2026-08-31 22:29:51,376.376 INFO    ] 200
[2026-08-31 22:29:51,379.379 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:29:51,431.431 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:29:51,433.433 INFO    ] No update needed
[2026-08-31 22:29:51,436.436 INFO    ] Checking for camera pi updates...
[2026-08-31 22:29:51,472.472 INFO    ] 200
[2026-08-31 22:29:51,474.474 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:29:51,514.514 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:29:51,605.605 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:29:51,608.608 INFO    ] No camera update needed
[2026-08-31 22:29:51,610.610 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:29:51,612.612 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:29:51,618.618 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:29:51,623.623 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:29:53,663.663 INFO    ] ================================================
[2026-08-31 22:29:53,678.678 INFO    ] Launching Daemon at Mon Aug 31 22:29:53 IST 2026
[2026-08-31 22:29:53,689.689 INFO    ] ================================================
[2026-08-31 22:29:54,274.274 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:29:54
[2026-08-31 22:29:54,872.872 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:29:55,145.145 INFO    ] Initializing speech engine...
[2026-08-31 22:29:55,161.161 INFO    ] 2026-08-31 22:29:55
[2026-08-31 22:29:55,435.435 INFO    ] 2026-08-31 22:29:55
[2026-08-31 22:29:55,473.473 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:29:55,698.698 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:29:55,727.727 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:29:55,855.855 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:29:55,911.911 INFO    ] time= 31/08/2026 22:29:55
[2026-08-31 22:29:55,927.927 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:29:55,954.954 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:29:56,074.074 INFO    ] No existing commands found in stream
[2026-08-31 22:30:01,085.085 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:30:01,088.088 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-08-31 22:30:03,021.021 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 22:30:03,025.025 INFO    ] Checking for system updates...
[2026-08-31 22:30:03,069.069 INFO    ] 200
[2026-08-31 22:30:03,073.073 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:30:03,140.140 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:30:03,147.147 INFO    ] No update needed
[2026-08-31 22:30:03,151.151 INFO    ] Checking for camera pi updates...
[2026-08-31 22:30:03,205.205 INFO    ] 200
[2026-08-31 22:30:03,209.209 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:30:03,280.280 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:30:03,673.673 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:30:03,676.676 INFO    ] No camera update needed
[2026-08-31 22:30:03,680.680 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:30:03,683.683 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:30:03,690.690 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:30:03,696.696 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:30:05,737.737 INFO    ] ================================================
[2026-08-31 22:30:05,753.753 INFO    ] Launching Daemon at Mon Aug 31 22:30:05 IST 2026
[2026-08-31 22:30:05,764.764 INFO    ] ================================================
[2026-08-31 22:30:06,420.420 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:30:06
[2026-08-31 22:30:07,013.013 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:30:07,318.318 INFO    ] Initializing speech engine...
[2026-08-31 22:30:07,327.327 INFO    ] 2026-08-31 22:30:07
[2026-08-31 22:30:07,674.674 INFO    ] 2026-08-31 22:30:07
[2026-08-31 22:30:07,751.751 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:30:07,910.910 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:30:07,916.916 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:30:08,147.147 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:30:08,179.179 INFO    ] time= 31/08/2026 22:30:08
[2026-08-31 22:30:08,195.195 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:30:08,202.202 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:30:08,315.315 INFO    ] No existing commands found in stream
[2026-08-31 22:30:13,341.341 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:30:13,344.344 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-08-31 22:30:14,539.539 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 22:30:14,541.541 INFO    ] Checking for system updates...
[2026-08-31 22:30:14,578.578 INFO    ] 200
[2026-08-31 22:30:14,581.581 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:30:14,634.634 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:30:14,636.636 INFO    ] No update needed
[2026-08-31 22:30:14,639.639 INFO    ] Checking for camera pi updates...
[2026-08-31 22:30:14,672.672 INFO    ] 200
[2026-08-31 22:30:14,674.674 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:30:14,714.714 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:30:14,802.802 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:30:14,804.804 INFO    ] No camera update needed
[2026-08-31 22:30:14,806.806 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:30:14,809.809 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:30:14,814.814 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:30:14,819.819 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:30:16,858.858 INFO    ] ================================================
[2026-08-31 22:30:16,873.873 INFO    ] Launching Daemon at Mon Aug 31 22:30:16 IST 2026
[2026-08-31 22:30:16,884.884 INFO    ] ================================================
[2026-08-31 22:30:17,525.525 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:30:17
[2026-08-31 22:30:18,201.201 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:30:18,514.514 INFO    ] Initializing speech engine...
[2026-08-31 22:30:18,521.521 INFO    ] 2026-08-31 22:30:18
[2026-08-31 22:30:18,805.805 INFO    ] 2026-08-31 22:30:18
[2026-08-31 22:30:18,915.915 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:30:19,128.128 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:30:19,138.138 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:30:19,329.329 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:30:19,351.351 INFO    ] time= 31/08/2026 22:30:19
[2026-08-31 22:30:19,379.379 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:30:19,391.391 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:30:19,489.489 INFO    ] No existing commands found in stream
[2026-08-31 22:30:24,513.513 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:30:24,516.516 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-08-31 22:30:26,971.971 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 22:30:26,974.974 INFO    ] Checking for system updates...
[2026-08-31 22:30:27,011.011 INFO    ] 200
[2026-08-31 22:30:27,013.013 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:30:27,066.066 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:30:27,069.069 INFO    ] No update needed
[2026-08-31 22:30:27,071.071 INFO    ] Checking for camera pi updates...
[2026-08-31 22:30:27,109.109 INFO    ] 200
[2026-08-31 22:30:27,112.112 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:30:27,152.152 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:30:27,233.233 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:30:27,235.235 INFO    ] No camera update needed
[2026-08-31 22:30:27,238.238 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:30:27,240.240 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:30:27,246.246 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:30:27,251.251 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:30:29,290.290 INFO    ] ================================================
[2026-08-31 22:30:29,306.306 INFO    ] Launching Daemon at Mon Aug 31 22:30:29 IST 2026
[2026-08-31 22:30:29,318.318 INFO    ] ================================================
[2026-08-31 22:30:29,980.980 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:30:29
[2026-08-31 22:30:30,663.663 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:30:30,968.968 INFO    ] Initializing speech engine...
[2026-08-31 22:30:30,977.977 INFO    ] 2026-08-31 22:30:30
[2026-08-31 22:30:31,256.256 INFO    ] 2026-08-31 22:30:31
[2026-08-31 22:30:31,316.316 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:30:31,575.575 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:30:31,583.583 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:30:31,786.786 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:30:31,825.825 INFO    ] time= 31/08/2026 22:30:31
[2026-08-31 22:30:31,843.843 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:30:31,854.854 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:30:31,988.988 INFO    ] No existing commands found in stream
[2026-08-31 22:30:37,018.018 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:30:37,021.021 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-08-31 22:30:39,173.173 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 22:30:39,176.176 INFO    ] Checking for system updates...
[2026-08-31 22:30:39,215.215 INFO    ] 200
[2026-08-31 22:30:39,218.218 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:30:39,270.270 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:30:39,273.273 INFO    ] No update needed
[2026-08-31 22:30:39,276.276 INFO    ] Checking for camera pi updates...
[2026-08-31 22:30:39,309.309 INFO    ] 200
[2026-08-31 22:30:39,312.312 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:30:39,352.352 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:30:39,457.457 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:30:39,460.460 INFO    ] No camera update needed
[2026-08-31 22:30:39,462.462 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:30:39,464.464 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:30:39,469.469 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:30:39,474.474 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:30:41,514.514 INFO    ] ================================================
[2026-08-31 22:30:41,530.530 INFO    ] Launching Daemon at Mon Aug 31 22:30:41 IST 2026
[2026-08-31 22:30:41,541.541 INFO    ] ================================================
[2026-08-31 22:30:42,107.107 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:30:42
[2026-08-31 22:30:42,690.690 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:30:42,960.960 INFO    ] Initializing speech engine...
[2026-08-31 22:30:42,969.969 INFO    ] 2026-08-31 22:30:42
[2026-08-31 22:30:43,217.217 INFO    ] 2026-08-31 22:30:43
[2026-08-31 22:30:43,253.253 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:30:43,455.455 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:30:43,514.514 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:30:43,654.654 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:30:43,686.686 INFO    ] time= 31/08/2026 22:30:43
[2026-08-31 22:30:43,741.741 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:30:43,790.790 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:30:43,852.852 INFO    ] No existing commands found in stream
[2026-08-31 22:30:48,877.877 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:30:48,880.880 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-08-31 22:30:52,865.865 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 22:30:52,867.867 INFO    ] Checking for system updates...
[2026-08-31 22:30:52,908.908 INFO    ] 200
[2026-08-31 22:30:52,910.910 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:30:52,963.963 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:30:52,965.965 INFO    ] No update needed
[2026-08-31 22:30:52,967.967 INFO    ] Checking for camera pi updates...
[2026-08-31 22:30:53,002.002 INFO    ] 200
[2026-08-31 22:30:53,005.005 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:30:53,044.044 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:30:53,124.124 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:30:53,126.126 INFO    ] No camera update needed
[2026-08-31 22:30:53,129.129 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:30:53,131.131 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:30:53,136.136 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:30:53,141.141 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:30:55,183.183 INFO    ] ================================================
[2026-08-31 22:30:55,199.199 INFO    ] Launching Daemon at Mon Aug 31 22:30:55 IST 2026
[2026-08-31 22:30:55,210.210 INFO    ] ================================================
[2026-08-31 22:30:55,777.777 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:30:55
[2026-08-31 22:30:56,360.360 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:30:56,607.607 INFO    ] Initializing speech engine...
[2026-08-31 22:30:56,632.632 INFO    ] 2026-08-31 22:30:56
[2026-08-31 22:30:56,890.890 INFO    ] 2026-08-31 22:30:56
[2026-08-31 22:30:56,925.925 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:30:57,188.188 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:30:57,195.195 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:30:57,425.425 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:30:57,456.456 INFO    ] time= 31/08/2026 22:30:57
[2026-08-31 22:30:57,462.462 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:30:57,479.479 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:30:57,608.608 INFO    ] No existing commands found in stream
[2026-08-31 22:31:02,624.624 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:31:02,628.628 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-08-31 22:31:05,529.529 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 22:31:05,531.531 INFO    ] Checking for system updates...
[2026-08-31 22:31:05,570.570 INFO    ] 200
[2026-08-31 22:31:05,572.572 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:31:05,630.630 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:31:05,632.632 INFO    ] No update needed
[2026-08-31 22:31:05,635.635 INFO    ] Checking for camera pi updates...
[2026-08-31 22:31:05,668.668 INFO    ] 200
[2026-08-31 22:31:05,671.671 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:31:05,716.716 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:31:05,801.801 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:31:05,803.803 INFO    ] No camera update needed
[2026-08-31 22:31:05,805.805 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:31:05,808.808 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:31:05,813.813 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:31:05,818.818 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:31:07,858.858 INFO    ] ================================================
[2026-08-31 22:31:07,874.874 INFO    ] Launching Daemon at Mon Aug 31 22:31:07 IST 2026
[2026-08-31 22:31:07,886.886 INFO    ] ================================================
[2026-08-31 22:31:08,457.457 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:31:08
[2026-08-31 22:31:09,040.040 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:31:09,310.310 INFO    ] Initializing speech engine...
[2026-08-31 22:31:09,320.320 INFO    ] 2026-08-31 22:31:09
[2026-08-31 22:31:09,567.567 INFO    ] 2026-08-31 22:31:09
[2026-08-31 22:31:09,602.602 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:31:09,804.804 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:31:09,863.863 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:31:10,008.008 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:31:10,079.079 INFO    ] time= 31/08/2026 22:31:10
[2026-08-31 22:31:10,128.128 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:31:10,141.141 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:31:10,212.212 INFO    ] No existing commands found in stream
[2026-08-31 22:31:15,247.247 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:31:15,250.250 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-08-31 22:31:17,276.276 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 22:31:17,279.279 INFO    ] Checking for system updates...
[2026-08-31 22:31:17,314.314 INFO    ] 200
[2026-08-31 22:31:17,316.316 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:31:17,369.369 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:31:17,371.371 INFO    ] No update needed
[2026-08-31 22:31:17,373.373 INFO    ] Checking for camera pi updates...
[2026-08-31 22:31:17,407.407 INFO    ] 200
[2026-08-31 22:31:17,409.409 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:31:17,454.454 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:31:17,543.543 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:31:17,545.545 INFO    ] No camera update needed
[2026-08-31 22:31:17,548.548 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:31:17,550.550 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:31:17,555.555 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:31:17,560.560 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:31:19,602.602 INFO    ] ================================================
[2026-08-31 22:31:19,618.618 INFO    ] Launching Daemon at Mon Aug 31 22:31:19 IST 2026
[2026-08-31 22:31:19,629.629 INFO    ] ================================================
[2026-08-31 22:31:20,217.217 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:31:20
[2026-08-31 22:31:20,813.813 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:31:21,085.085 INFO    ] Initializing speech engine...
[2026-08-31 22:31:21,096.096 INFO    ] 2026-08-31 22:31:21
[2026-08-31 22:31:21,341.341 INFO    ] 2026-08-31 22:31:21
[2026-08-31 22:31:21,376.376 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:31:21,627.627 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:31:21,636.636 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:31:21,855.855 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:31:21,895.895 INFO    ] time= 31/08/2026 22:31:21
[2026-08-31 22:31:21,901.901 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:31:21,922.922 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:31:22,051.051 INFO    ] No existing commands found in stream
[2026-08-31 22:31:27,066.066 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:31:27,069.069 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-08-31 22:31:29,531.531 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 22:31:29,534.534 INFO    ] Checking for system updates...
[2026-08-31 22:31:29,571.571 INFO    ] 200
[2026-08-31 22:31:29,574.574 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:31:29,628.628 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:31:29,631.631 INFO    ] No update needed
[2026-08-31 22:31:29,633.633 INFO    ] Checking for camera pi updates...
[2026-08-31 22:31:29,667.667 INFO    ] 200
[2026-08-31 22:31:29,670.670 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:31:29,710.710 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:31:29,791.791 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:31:29,794.794 INFO    ] No camera update needed
[2026-08-31 22:31:29,796.796 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:31:29,799.799 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:31:29,804.804 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:31:29,809.809 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:31:31,853.853 INFO    ] ================================================
[2026-08-31 22:31:31,875.875 INFO    ] Launching Daemon at Mon Aug 31 22:31:31 IST 2026
[2026-08-31 22:31:31,887.887 INFO    ] ================================================
[2026-08-31 22:31:32,481.481 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:31:32
[2026-08-31 22:31:33,093.093 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:31:33,353.353 INFO    ] Initializing speech engine...
[2026-08-31 22:31:33,372.372 INFO    ] 2026-08-31 22:31:33
[2026-08-31 22:31:33,624.624 INFO    ] 2026-08-31 22:31:33
[2026-08-31 22:31:33,659.659 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:31:33,917.917 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:31:33,926.926 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:31:34,143.143 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:31:34,192.192 INFO    ] time= 31/08/2026 22:31:34
[2026-08-31 22:31:34,199.199 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:31:34,214.214 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:31:34,331.331 INFO    ] No existing commands found in stream
[2026-08-31 22:31:39,356.356 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:31:39,359.359 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-08-31 22:31:43,408.408 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 22:31:43,411.411 INFO    ] Checking for system updates...
[2026-08-31 22:31:43,450.450 INFO    ] 200
[2026-08-31 22:31:43,453.453 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:31:43,512.512 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:31:43,514.514 INFO    ] No update needed
[2026-08-31 22:31:43,516.516 INFO    ] Checking for camera pi updates...
[2026-08-31 22:31:43,554.554 INFO    ] 200
[2026-08-31 22:31:43,556.556 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:31:43,603.603 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:31:43,680.680 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:31:43,683.683 INFO    ] No camera update needed
[2026-08-31 22:31:43,685.685 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:31:43,687.687 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:31:43,693.693 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:31:43,698.698 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:31:45,740.740 INFO    ] ================================================
[2026-08-31 22:31:45,755.755 INFO    ] Launching Daemon at Mon Aug 31 22:31:45 IST 2026
[2026-08-31 22:31:45,765.765 INFO    ] ================================================
[2026-08-31 22:31:46,414.414 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:31:46
[2026-08-31 22:31:47,068.068 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:31:47,344.344 INFO    ] Initializing speech engine...
[2026-08-31 22:31:47,351.351 INFO    ] 2026-08-31 22:31:47
[2026-08-31 22:31:47,609.609 INFO    ] 2026-08-31 22:31:47
[2026-08-31 22:31:47,663.663 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:31:47,884.884 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:31:47,894.894 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:31:48,007.007 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:31:48,029.029 INFO    ] time= 31/08/2026 22:31:48
[2026-08-31 22:31:48,081.081 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:31:48,130.130 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:31:48,298.298 INFO    ] No existing commands found in stream
[2026-08-31 22:31:53,320.320 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:31:53,322.322 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-08-31 22:31:56,369.369 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 22:31:56,372.372 INFO    ] Checking for system updates...
[2026-08-31 22:31:56,407.407 INFO    ] 200
[2026-08-31 22:31:56,409.409 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:31:56,468.468 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:31:56,471.471 INFO    ] No update needed
[2026-08-31 22:31:56,473.473 INFO    ] Checking for camera pi updates...
[2026-08-31 22:31:56,511.511 INFO    ] 200
[2026-08-31 22:31:56,513.513 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:31:56,559.559 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:31:56,638.638 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:31:56,640.640 INFO    ] No camera update needed
[2026-08-31 22:31:56,642.642 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:31:56,645.645 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:31:56,650.650 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:31:56,655.655 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:31:58,696.696 INFO    ] ================================================
[2026-08-31 22:31:58,711.711 INFO    ] Launching Daemon at Mon Aug 31 22:31:58 IST 2026
[2026-08-31 22:31:58,722.722 INFO    ] ================================================
[2026-08-31 22:31:59,381.381 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:31:59
[2026-08-31 22:32:00,058.058 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:32:00,367.367 INFO    ] Initializing speech engine...
[2026-08-31 22:32:00,381.381 INFO    ] 2026-08-31 22:32:00
[2026-08-31 22:32:00,665.665 INFO    ] 2026-08-31 22:32:00
[2026-08-31 22:32:00,712.712 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:32:00,944.944 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:32:00,949.949 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:32:01,175.175 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:32:01,213.213 INFO    ] time= 31/08/2026 22:32:01
[2026-08-31 22:32:01,232.232 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:32:01,242.242 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:32:01,371.371 INFO    ] No existing commands found in stream
[2026-08-31 22:32:06,386.386 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:32:06,390.390 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-08-31 22:32:09,029.029 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 22:32:09,031.031 INFO    ] Checking for system updates...
[2026-08-31 22:32:09,069.069 INFO    ] 200
[2026-08-31 22:32:09,071.071 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:32:09,132.132 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:32:09,134.134 INFO    ] No update needed
[2026-08-31 22:32:09,136.136 INFO    ] Checking for camera pi updates...
[2026-08-31 22:32:09,174.174 INFO    ] 200
[2026-08-31 22:32:09,176.176 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:32:09,221.221 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:32:09,389.389 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:32:09,392.392 INFO    ] No camera update needed
[2026-08-31 22:32:09,394.394 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:32:09,396.396 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:32:09,402.402 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:32:09,407.407 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:32:11,446.446 INFO    ] ================================================
[2026-08-31 22:32:11,461.461 INFO    ] Launching Daemon at Mon Aug 31 22:32:11 IST 2026
[2026-08-31 22:32:11,472.472 INFO    ] ================================================
[2026-08-31 22:32:12,039.039 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:32:12
[2026-08-31 22:32:12,625.625 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:32:12,875.875 INFO    ] Initializing speech engine...
[2026-08-31 22:32:12,896.896 INFO    ] 2026-08-31 22:32:12
[2026-08-31 22:32:13,154.154 INFO    ] 2026-08-31 22:32:13
[2026-08-31 22:32:13,190.190 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:32:13,365.365 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:32:13,376.376 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:32:13,525.525 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:32:13,534.534 INFO    ] time= 31/08/2026 22:32:13
[2026-08-31 22:32:13,558.558 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:32:13,601.601 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:32:13,707.707 INFO    ] No existing commands found in stream
[2026-08-31 22:32:18,732.732 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:32:18,735.735 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-08-31 22:32:22,059.059 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 22:32:22,061.061 INFO    ] Checking for system updates...
[2026-08-31 22:32:22,116.116 INFO    ] 200
[2026-08-31 22:32:22,119.119 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:32:22,173.173 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:32:22,175.175 INFO    ] No update needed
[2026-08-31 22:32:22,177.177 INFO    ] Checking for camera pi updates...
[2026-08-31 22:32:22,211.211 INFO    ] 200
[2026-08-31 22:32:22,214.214 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:32:22,254.254 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:32:22,334.334 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:32:22,336.336 INFO    ] No camera update needed
[2026-08-31 22:32:22,339.339 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:32:22,342.342 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:32:22,348.348 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:32:22,354.354 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:32:24,395.395 INFO    ] ================================================
[2026-08-31 22:32:24,412.412 INFO    ] Launching Daemon at Mon Aug 31 22:32:24 IST 2026
[2026-08-31 22:32:24,422.422 INFO    ] ================================================
[2026-08-31 22:32:25,095.095 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:32:25
[2026-08-31 22:32:25,772.772 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:32:26,043.043 INFO    ] Initializing speech engine...
[2026-08-31 22:32:26,051.051 INFO    ] 2026-08-31 22:32:26
[2026-08-31 22:32:26,299.299 INFO    ] 2026-08-31 22:32:26
[2026-08-31 22:32:26,336.336 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:32:26,589.589 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:32:26,599.599 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:32:26,837.837 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:32:26,864.864 INFO    ] time= 31/08/2026 22:32:26
[2026-08-31 22:32:26,878.878 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:32:26,887.887 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:32:27,016.016 INFO    ] No existing commands found in stream
[2026-08-31 22:32:32,031.031 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:32:32,034.034 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-08-31 22:32:33,779.779 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 22:32:33,782.782 INFO    ] Checking for system updates...
[2026-08-31 22:32:33,831.831 INFO    ] 200
[2026-08-31 22:32:33,834.834 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:32:33,902.902 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:32:33,905.905 INFO    ] No update needed
[2026-08-31 22:32:33,908.908 INFO    ] Checking for camera pi updates...
[2026-08-31 22:32:33,946.946 INFO    ] 200
[2026-08-31 22:32:33,950.950 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:32:34,003.003 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:32:34,122.122 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:32:34,124.124 INFO    ] No camera update needed
[2026-08-31 22:32:34,127.127 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:32:34,129.129 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:32:34,135.135 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:32:34,141.141 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:32:36,188.188 INFO    ] ================================================
[2026-08-31 22:32:36,204.204 INFO    ] Launching Daemon at Mon Aug 31 22:32:36 IST 2026
[2026-08-31 22:32:36,215.215 INFO    ] ================================================
[2026-08-31 22:32:36,812.812 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:32:36
[2026-08-31 22:32:37,433.433 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:32:37,713.713 INFO    ] Initializing speech engine...
[2026-08-31 22:32:37,739.739 INFO    ] 2026-08-31 22:32:37
[2026-08-31 22:32:38,024.024 INFO    ] 2026-08-31 22:32:37
[2026-08-31 22:32:38,066.066 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:32:38,302.302 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:32:38,364.364 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:32:38,535.535 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:32:38,558.558 INFO    ] time= 31/08/2026 22:32:38
[2026-08-31 22:32:38,629.629 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:32:38,684.684 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:32:38,866.866 INFO    ] No existing commands found in stream
[2026-08-31 22:32:43,883.883 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:32:43,886.886 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-08-31 22:32:46,073.073 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 22:32:46,075.075 INFO    ] Checking for system updates...
[2026-08-31 22:32:46,111.111 INFO    ] 200
[2026-08-31 22:32:46,114.114 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:32:46,174.174 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:32:46,177.177 INFO    ] No update needed
[2026-08-31 22:32:46,180.180 INFO    ] Checking for camera pi updates...
[2026-08-31 22:32:46,220.220 INFO    ] 200
[2026-08-31 22:32:46,222.222 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:32:46,269.269 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:32:46,354.354 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:32:46,357.357 INFO    ] No camera update needed
[2026-08-31 22:32:46,359.359 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:32:46,362.362 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:32:46,367.367 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:32:46,372.372 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:32:48,412.412 INFO    ] ================================================
[2026-08-31 22:32:48,427.427 INFO    ] Launching Daemon at Mon Aug 31 22:32:48 IST 2026
[2026-08-31 22:32:48,437.437 INFO    ] ================================================
[2026-08-31 22:32:49,015.015 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:32:49
[2026-08-31 22:32:49,612.612 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:32:49,896.896 INFO    ] Initializing speech engine...
[2026-08-31 22:32:49,905.905 INFO    ] 2026-08-31 22:32:49
[2026-08-31 22:32:50,172.172 INFO    ] 2026-08-31 22:32:50
[2026-08-31 22:32:50,210.210 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:32:50,405.405 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:32:50,417.417 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:32:50,578.578 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:32:50,586.586 INFO    ] time= 31/08/2026 22:32:50
[2026-08-31 22:32:50,594.594 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:32:50,642.642 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:32:50,792.792 INFO    ] No existing commands found in stream
[2026-08-31 22:32:55,817.817 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:32:55,820.820 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-08-31 22:32:57,370.370 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 22:32:57,373.373 INFO    ] Checking for system updates...
[2026-08-31 22:32:57,409.409 INFO    ] 200
[2026-08-31 22:32:57,411.411 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:32:57,463.463 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:32:57,466.466 INFO    ] No update needed
[2026-08-31 22:32:57,468.468 INFO    ] Checking for camera pi updates...
[2026-08-31 22:32:57,501.501 INFO    ] 200
[2026-08-31 22:32:57,504.504 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:32:57,548.548 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:32:57,620.620 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:32:57,622.622 INFO    ] No camera update needed
[2026-08-31 22:32:57,625.625 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:32:57,627.627 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:32:57,633.633 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:32:57,638.638 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:32:59,679.679 INFO    ] ================================================
[2026-08-31 22:32:59,694.694 INFO    ] Launching Daemon at Mon Aug 31 22:32:59 IST 2026
[2026-08-31 22:32:59,705.705 INFO    ] ================================================
[2026-08-31 22:33:00,341.341 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:33:00
[2026-08-31 22:33:00,997.997 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:33:01,295.295 INFO    ] Initializing speech engine...
[2026-08-31 22:33:01,303.303 INFO    ] 2026-08-31 22:33:01
[2026-08-31 22:33:01,725.725 INFO    ] 2026-08-31 22:33:01
[2026-08-31 22:33:01,813.813 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:33:02,046.046 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:33:02,051.051 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:33:02,243.243 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:33:02,295.295 INFO    ] time= 31/08/2026 22:33:02
[2026-08-31 22:33:02,350.350 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:33:02,395.395 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:33:02,486.486 INFO    ] No existing commands found in stream
[2026-08-31 22:33:07,500.500 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:33:07,503.503 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-08-31 22:33:09,779.779 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 22:33:09,781.781 INFO    ] Checking for system updates...
[2026-08-31 22:33:09,818.818 INFO    ] 200
[2026-08-31 22:33:09,820.820 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:33:09,873.873 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:33:09,876.876 INFO    ] No update needed
[2026-08-31 22:33:09,878.878 INFO    ] Checking for camera pi updates...
[2026-08-31 22:33:09,917.917 INFO    ] 200
[2026-08-31 22:33:09,920.920 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:33:09,966.966 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:33:10,063.063 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:33:10,065.065 INFO    ] No camera update needed
[2026-08-31 22:33:10,067.067 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:33:10,070.070 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:33:10,075.075 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:33:10,080.080 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:33:12,121.121 INFO    ] ================================================
[2026-08-31 22:33:12,136.136 INFO    ] Launching Daemon at Mon Aug 31 22:33:12 IST 2026
[2026-08-31 22:33:12,146.146 INFO    ] ================================================
[2026-08-31 22:33:12,787.787 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:33:12
[2026-08-31 22:33:13,474.474 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:33:13,786.786 INFO    ] Initializing speech engine...
[2026-08-31 22:33:13,797.797 INFO    ] 2026-08-31 22:33:13
[2026-08-31 22:33:14,069.069 INFO    ] 2026-08-31 22:33:14
[2026-08-31 22:33:14,124.124 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:33:14,376.376 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:33:14,394.394 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:33:14,610.610 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:33:14,618.618 INFO    ] time= 31/08/2026 22:33:14
[2026-08-31 22:33:14,639.639 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:33:14,666.666 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:33:14,773.773 INFO    ] No existing commands found in stream
[2026-08-31 22:33:19,794.794 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:33:19,797.797 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-08-31 22:33:24,090.090 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 22:33:24,093.093 INFO    ] Checking for system updates...
[2026-08-31 22:33:24,131.131 INFO    ] 200
[2026-08-31 22:33:24,134.134 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:33:24,195.195 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:33:24,198.198 INFO    ] No update needed
[2026-08-31 22:33:24,200.200 INFO    ] Checking for camera pi updates...
[2026-08-31 22:33:24,241.241 INFO    ] 200
[2026-08-31 22:33:24,244.244 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:33:24,286.286 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:33:24,361.361 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:33:24,364.364 INFO    ] No camera update needed
[2026-08-31 22:33:24,367.367 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:33:24,370.370 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:33:24,376.376 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:33:24,382.382 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:33:26,423.423 INFO    ] ================================================
[2026-08-31 22:33:26,438.438 INFO    ] Launching Daemon at Mon Aug 31 22:33:26 IST 2026
[2026-08-31 22:33:26,448.448 INFO    ] ================================================
[2026-08-31 22:33:27,034.034 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:33:27
[2026-08-31 22:33:27,641.641 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:33:27,915.915 INFO    ] Initializing speech engine...
[2026-08-31 22:33:27,924.924 INFO    ] 2026-08-31 22:33:27
[2026-08-31 22:33:28,173.173 INFO    ] 2026-08-31 22:33:28
[2026-08-31 22:33:28,215.215 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:33:28,469.469 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:33:28,479.479 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:33:28,613.613 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:33:28,660.660 INFO    ] time= 31/08/2026 22:33:28
[2026-08-31 22:33:28,715.715 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:33:28,750.750 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:33:28,803.803 INFO    ] No existing commands found in stream
[2026-08-31 22:33:33,815.815 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:33:33,818.818 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-08-31 22:33:34,425.425 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 22:33:34,428.428 INFO    ] Checking for system updates...
[2026-08-31 22:33:34,470.470 INFO    ] 200
[2026-08-31 22:33:34,473.473 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:33:34,535.535 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:33:34,538.538 INFO    ] No update needed
[2026-08-31 22:33:34,541.541 INFO    ] Checking for camera pi updates...
[2026-08-31 22:33:34,575.575 INFO    ] 200
[2026-08-31 22:33:34,578.578 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:33:34,620.620 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:33:34,699.699 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:33:34,701.701 INFO    ] No camera update needed
[2026-08-31 22:33:34,704.704 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:33:34,707.707 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:33:34,713.713 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:33:34,719.719 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:33:36,760.760 INFO    ] ================================================
[2026-08-31 22:33:36,775.775 INFO    ] Launching Daemon at Mon Aug 31 22:33:36 IST 2026
[2026-08-31 22:33:36,786.786 INFO    ] ================================================
[2026-08-31 22:33:37,356.356 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:33:37
[2026-08-31 22:33:38,029.029 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:33:38,335.335 INFO    ] Initializing speech engine...
[2026-08-31 22:33:38,343.343 INFO    ] 2026-08-31 22:33:38
[2026-08-31 22:33:38,622.622 INFO    ] 2026-08-31 22:33:38
[2026-08-31 22:33:38,676.676 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:33:38,912.912 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:33:38,919.919 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:33:39,152.152 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:33:39,184.184 INFO    ] time= 31/08/2026 22:33:39
[2026-08-31 22:33:39,202.202 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:33:39,212.212 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:33:39,341.341 INFO    ] No existing commands found in stream
[2026-08-31 22:33:44,357.357 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:33:44,360.360 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-08-31 22:33:47,502.502 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 22:33:47,505.505 INFO    ] Checking for system updates...
[2026-08-31 22:33:47,550.550 INFO    ] 200
[2026-08-31 22:33:47,552.552 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:33:47,604.604 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:33:47,607.607 INFO    ] No update needed
[2026-08-31 22:33:47,609.609 INFO    ] Checking for camera pi updates...
[2026-08-31 22:33:47,642.642 INFO    ] 200
[2026-08-31 22:33:47,645.645 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:33:47,689.689 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:33:47,786.786 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:33:47,788.788 INFO    ] No camera update needed
[2026-08-31 22:33:47,791.791 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:33:47,793.793 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:33:47,798.798 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:33:47,803.803 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:33:49,843.843 INFO    ] ================================================
[2026-08-31 22:33:49,858.858 INFO    ] Launching Daemon at Mon Aug 31 22:33:49 IST 2026
[2026-08-31 22:33:49,868.868 INFO    ] ================================================
[2026-08-31 22:33:50,451.451 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:33:50
[2026-08-31 22:33:51,048.048 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:33:51,321.321 INFO    ] Initializing speech engine...
[2026-08-31 22:33:51,331.331 INFO    ] 2026-08-31 22:33:51
[2026-08-31 22:33:51,585.585 INFO    ] 2026-08-31 22:33:51
[2026-08-31 22:33:51,644.644 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:33:51,872.872 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:33:51,877.877 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:33:52,088.088 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:33:52,133.133 INFO    ] time= 31/08/2026 22:33:52
[2026-08-31 22:33:52,150.150 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:33:52,159.159 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:33:52,271.271 INFO    ] No existing commands found in stream
[2026-08-31 22:33:57,295.295 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:33:57,298.298 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-08-31 22:33:58,106.106 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 22:33:58,109.109 INFO    ] Checking for system updates...
[2026-08-31 22:33:58,144.144 INFO    ] 200
[2026-08-31 22:33:58,147.147 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:33:58,199.199 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:33:58,202.202 INFO    ] No update needed
[2026-08-31 22:33:58,204.204 INFO    ] Checking for camera pi updates...
[2026-08-31 22:33:58,243.243 INFO    ] 200
[2026-08-31 22:33:58,245.245 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:33:58,288.288 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:33:58,369.369 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:33:58,372.372 INFO    ] No camera update needed
[2026-08-31 22:33:58,374.374 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:33:58,377.377 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:33:58,384.384 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:33:58,390.390 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:34:00,431.431 INFO    ] ================================================
[2026-08-31 22:34:00,446.446 INFO    ] Launching Daemon at Mon Aug 31 22:34:00 IST 2026
[2026-08-31 22:34:00,457.457 INFO    ] ================================================
[2026-08-31 22:34:01,029.029 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:34:01
[2026-08-31 22:34:01,800.800 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:34:02,203.203 INFO    ] Initializing speech engine...
[2026-08-31 22:34:02,214.214 INFO    ] 2026-08-31 22:34:02
[2026-08-31 22:34:02,534.534 INFO    ] 2026-08-31 22:34:02
[2026-08-31 22:34:02,570.570 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:34:02,829.829 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:34:02,835.835 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:34:03,053.053 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:34:03,094.094 INFO    ] time= 31/08/2026 22:34:03
[2026-08-31 22:34:03,107.107 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:34:03,113.113 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:34:03,246.246 INFO    ] No existing commands found in stream
[2026-08-31 22:34:08,273.273 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:34:08,275.275 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-08-31 22:34:11,817.817 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 22:34:11,819.819 INFO    ] Checking for system updates...
[2026-08-31 22:34:11,855.855 INFO    ] 200
[2026-08-31 22:34:11,857.857 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:34:11,917.917 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:34:11,919.919 INFO    ] No update needed
[2026-08-31 22:34:11,922.922 INFO    ] Checking for camera pi updates...
[2026-08-31 22:34:11,960.960 INFO    ] 200
[2026-08-31 22:34:11,962.962 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:34:12,003.003 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:34:12,187.187 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:34:12,189.189 INFO    ] No camera update needed
[2026-08-31 22:34:12,192.192 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:34:12,194.194 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:34:12,200.200 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:34:12,205.205 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:34:14,245.245 INFO    ] ================================================
[2026-08-31 22:34:14,260.260 INFO    ] Launching Daemon at Mon Aug 31 22:34:14 IST 2026
[2026-08-31 22:34:14,271.271 INFO    ] ================================================
[2026-08-31 22:34:14,844.844 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:34:14
[2026-08-31 22:34:15,446.446 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:34:15,719.719 INFO    ] Initializing speech engine...
[2026-08-31 22:34:15,728.728 INFO    ] 2026-08-31 22:34:15
[2026-08-31 22:34:15,993.993 INFO    ] 2026-08-31 22:34:15
[2026-08-31 22:34:16,050.050 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:34:16,272.272 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:34:16,281.281 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:34:16,421.421 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:34:16,476.476 INFO    ] time= 31/08/2026 22:34:16
[2026-08-31 22:34:16,530.530 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:34:16,553.553 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:34:16,692.692 INFO    ] No existing commands found in stream
[2026-08-31 22:34:21,713.713 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:34:21,716.716 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-08-31 22:34:22,488.488 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 22:34:22,491.491 INFO    ] Checking for system updates...
[2026-08-31 22:34:22,527.527 INFO    ] 200
[2026-08-31 22:34:22,530.530 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:34:22,584.584 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:34:22,586.586 INFO    ] No update needed
[2026-08-31 22:34:22,589.589 INFO    ] Checking for camera pi updates...
[2026-08-31 22:34:22,623.623 INFO    ] 200
[2026-08-31 22:34:22,626.626 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:34:22,666.666 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:34:22,748.748 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:34:22,750.750 INFO    ] No camera update needed
[2026-08-31 22:34:22,822.822 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:34:22,825.825 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:34:22,831.831 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:34:22,836.836 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:34:24,879.879 INFO    ] ================================================
[2026-08-31 22:34:24,894.894 INFO    ] Launching Daemon at Mon Aug 31 22:34:24 IST 2026
[2026-08-31 22:34:24,905.905 INFO    ] ================================================
[2026-08-31 22:34:25,477.477 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:34:25
[2026-08-31 22:34:26,079.079 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:34:26,328.328 INFO    ] Initializing speech engine...
[2026-08-31 22:34:26,343.343 INFO    ] 2026-08-31 22:34:26
[2026-08-31 22:34:26,611.611 INFO    ] 2026-08-31 22:34:26
[2026-08-31 22:34:26,647.647 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:34:26,834.834 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:34:26,853.853 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:34:26,981.981 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:34:26,990.990 INFO    ] time= 31/08/2026 22:34:26
[2026-08-31 22:34:26,997.997 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:34:27,027.027 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:34:27,185.185 INFO    ] No existing commands found in stream
[2026-08-31 22:34:32,200.200 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:34:32,203.203 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-08-31 22:34:36,349.349 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 22:34:36,352.352 INFO    ] Checking for system updates...
[2026-08-31 22:34:36,387.387 INFO    ] 200
[2026-08-31 22:34:36,390.390 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:34:36,451.451 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:34:36,453.453 INFO    ] No update needed
[2026-08-31 22:34:36,455.455 INFO    ] Checking for camera pi updates...
[2026-08-31 22:34:36,489.489 INFO    ] 200
[2026-08-31 22:34:36,492.492 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:34:36,532.532 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:34:36,607.607 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:34:36,609.609 INFO    ] No camera update needed
[2026-08-31 22:34:36,612.612 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:34:36,614.614 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:34:36,619.619 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:34:36,624.624 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:34:38,667.667 INFO    ] ================================================
[2026-08-31 22:34:38,683.683 INFO    ] Launching Daemon at Mon Aug 31 22:34:38 IST 2026
[2026-08-31 22:34:38,693.693 INFO    ] ================================================
[2026-08-31 22:34:39,352.352 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:34:39
[2026-08-31 22:34:40,031.031 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:34:40,338.338 INFO    ] Initializing speech engine...
[2026-08-31 22:34:40,347.347 INFO    ] 2026-08-31 22:34:40
[2026-08-31 22:34:40,622.622 INFO    ] 2026-08-31 22:34:40
[2026-08-31 22:34:40,685.685 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:34:40,931.931 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:34:40,945.945 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:34:41,146.146 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:34:41,202.202 INFO    ] time= 31/08/2026 22:34:41
[2026-08-31 22:34:41,227.227 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:34:41,258.258 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:34:41,385.385 INFO    ] No existing commands found in stream
[2026-08-31 22:34:46,419.419 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:34:46,423.423 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-08-31 22:34:48,622.622 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 22:34:48,625.625 INFO    ] Checking for system updates...
[2026-08-31 22:34:48,667.667 INFO    ] 200
[2026-08-31 22:34:48,670.670 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:34:48,733.733 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:34:48,737.737 INFO    ] No update needed
[2026-08-31 22:34:48,740.740 INFO    ] Checking for camera pi updates...
[2026-08-31 22:34:48,775.775 INFO    ] 200
[2026-08-31 22:34:48,778.778 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:34:48,826.826 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:34:48,905.905 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:34:48,908.908 INFO    ] No camera update needed
[2026-08-31 22:34:48,911.911 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:34:48,914.914 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:34:48,920.920 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:34:48,926.926 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:34:50,969.969 INFO    ] ================================================
[2026-08-31 22:34:50,985.985 INFO    ] Launching Daemon at Mon Aug 31 22:34:50 IST 2026
[2026-08-31 22:34:51,996.996 INFO    ] ================================================
[2026-08-31 22:34:51,566.566 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:34:51
[2026-08-31 22:34:52,158.158 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:34:52,408.408 INFO    ] Initializing speech engine...
[2026-08-31 22:34:52,415.415 INFO    ] 2026-08-31 22:34:52
[2026-08-31 22:34:52,721.721 INFO    ] 2026-08-31 22:34:52
[2026-08-31 22:34:52,746.746 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:34:52,960.960 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:34:52,976.976 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:34:53,143.143 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:34:53,153.153 INFO    ] time= 31/08/2026 22:34:53
[2026-08-31 22:34:53,157.157 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:34:53,164.164 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:34:53,291.291 INFO    ] No existing commands found in stream
[2026-08-31 22:34:58,316.316 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:34:58,319.319 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-08-31 22:35:01,407.407 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 22:35:01,410.410 INFO    ] Checking for system updates...
[2026-08-31 22:35:01,445.445 INFO    ] 200
[2026-08-31 22:35:01,447.447 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:35:01,521.521 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:35:01,525.525 INFO    ] No update needed
[2026-08-31 22:35:01,529.529 INFO    ] Checking for camera pi updates...
[2026-08-31 22:35:01,606.606 INFO    ] 200
[2026-08-31 22:35:01,609.609 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:35:01,737.737 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:35:01,917.917 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:35:01,929.929 INFO    ] No camera update needed
[2026-08-31 22:35:01,949.949 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:35:01,952.952 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:35:01,959.959 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:35:01,966.966 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:35:04,031.031 INFO    ] ================================================
[2026-08-31 22:35:04,046.046 INFO    ] Launching Daemon at Mon Aug 31 22:35:04 IST 2026
[2026-08-31 22:35:04,058.058 INFO    ] ================================================
[2026-08-31 22:35:04,723.723 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:35:04
[2026-08-31 22:35:05,411.411 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:35:05,722.722 INFO    ] Initializing speech engine...
[2026-08-31 22:35:05,736.736 INFO    ] 2026-08-31 22:35:05
[2026-08-31 22:35:06,025.025 INFO    ] 2026-08-31 22:35:06
[2026-08-31 22:35:06,071.071 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:35:06,330.330 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:35:06,365.365 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:35:06,551.551 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:35:06,591.591 INFO    ] time= 31/08/2026 22:35:06
[2026-08-31 22:35:06,622.622 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:35:06,651.651 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:35:06,764.764 INFO    ] No existing commands found in stream
[2026-08-31 22:35:11,796.796 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:35:11,799.799 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-08-31 22:35:15,754.754 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 22:35:15,757.757 INFO    ] Checking for system updates...
[2026-08-31 22:35:15,794.794 INFO    ] 200
[2026-08-31 22:35:15,797.797 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:35:15,851.851 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:35:15,854.854 INFO    ] No update needed
[2026-08-31 22:35:15,857.857 INFO    ] Checking for camera pi updates...
[2026-08-31 22:35:15,892.892 INFO    ] 200
[2026-08-31 22:35:15,895.895 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:35:15,937.937 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:35:16,046.046 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:35:16,049.049 INFO    ] No camera update needed
[2026-08-31 22:35:16,052.052 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:35:16,055.055 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:35:16,061.061 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:35:16,067.067 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:35:18,110.110 INFO    ] ================================================
[2026-08-31 22:35:18,126.126 INFO    ] Launching Daemon at Mon Aug 31 22:35:18 IST 2026
[2026-08-31 22:35:18,143.143 INFO    ] ================================================
[2026-08-31 22:35:18,731.731 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:35:18
[2026-08-31 22:35:19,339.339 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:35:19,602.602 INFO    ] Initializing speech engine...
[2026-08-31 22:35:19,611.611 INFO    ] 2026-08-31 22:35:19
[2026-08-31 22:35:19,914.914 INFO    ] 2026-08-31 22:35:19
[2026-08-31 22:35:19,953.953 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:35:20,160.160 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:35:20,173.173 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:35:20,322.322 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:35:20,345.345 INFO    ] time= 31/08/2026 22:35:20
[2026-08-31 22:35:20,354.354 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:35:20,360.360 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:35:20,464.464 INFO    ] No existing commands found in stream
[2026-08-31 22:35:25,494.494 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:35:25,497.497 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-08-31 22:35:29,891.891 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 22:35:29,894.894 INFO    ] Checking for system updates...
[2026-08-31 22:35:29,931.931 INFO    ] 200
[2026-08-31 22:35:29,934.934 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:35:29,987.987 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:35:29,990.990 INFO    ] No update needed
[2026-08-31 22:35:29,993.993 INFO    ] Checking for camera pi updates...
[2026-08-31 22:35:30,028.028 INFO    ] 200
[2026-08-31 22:35:30,031.031 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:35:30,079.079 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:35:30,175.175 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:35:30,178.178 INFO    ] No camera update needed
[2026-08-31 22:35:30,181.181 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:35:30,184.184 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:35:30,190.190 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:35:30,196.196 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:35:32,241.241 INFO    ] ================================================
[2026-08-31 22:35:32,258.258 INFO    ] Launching Daemon at Mon Aug 31 22:35:32 IST 2026
[2026-08-31 22:35:32,271.271 INFO    ] ================================================
[2026-08-31 22:35:32,876.876 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:35:32
[2026-08-31 22:35:33,483.483 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:35:33,746.746 INFO    ] Initializing speech engine...
[2026-08-31 22:35:33,765.765 INFO    ] 2026-08-31 22:35:33
[2026-08-31 22:35:34,014.014 INFO    ] 2026-08-31 22:35:34
[2026-08-31 22:35:34,050.050 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:35:34,243.243 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:35:34,282.282 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:35:34,445.445 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:35:34,500.500 INFO    ] time= 31/08/2026 22:35:34
[2026-08-31 22:35:34,560.560 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:35:34,579.579 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:35:34,699.699 INFO    ] No existing commands found in stream
[2026-08-31 22:35:39,724.724 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:35:39,727.727 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-08-31 22:35:40,225.225 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 22:35:40,228.228 INFO    ] Checking for system updates...
[2026-08-31 22:35:40,266.266 INFO    ] 200
[2026-08-31 22:35:40,269.269 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:35:40,323.323 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:35:40,325.325 INFO    ] No update needed
[2026-08-31 22:35:40,328.328 INFO    ] Checking for camera pi updates...
[2026-08-31 22:35:40,363.363 INFO    ] 200
[2026-08-31 22:35:40,366.366 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:35:40,408.408 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:35:40,495.495 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:35:40,498.498 INFO    ] No camera update needed
[2026-08-31 22:35:40,501.501 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:35:40,504.504 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:35:40,510.510 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:35:40,516.516 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:35:42,559.559 INFO    ] ================================================
[2026-08-31 22:35:42,574.574 INFO    ] Launching Daemon at Mon Aug 31 22:35:42 IST 2026
[2026-08-31 22:35:42,585.585 INFO    ] ================================================
[2026-08-31 22:35:43,150.150 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:35:43
[2026-08-31 22:35:43,742.742 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:35:44,002.002 INFO    ] Initializing speech engine...
[2026-08-31 22:35:44,011.011 INFO    ] 2026-08-31 22:35:44
[2026-08-31 22:35:44,309.309 INFO    ] 2026-08-31 22:35:44
[2026-08-31 22:35:44,335.335 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:35:44,545.545 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:35:44,562.562 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:35:44,728.728 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:35:44,734.734 INFO    ] time= 31/08/2026 22:35:44
[2026-08-31 22:35:44,740.740 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:35:44,745.745 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:35:44,820.820 INFO    ] No existing commands found in stream
[2026-08-31 22:35:49,840.840 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:35:49,843.843 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-08-31 22:35:53,297.297 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 22:35:53,299.299 INFO    ] Checking for system updates...
[2026-08-31 22:35:53,335.335 INFO    ] 200
[2026-08-31 22:35:53,337.337 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:35:53,393.393 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:35:53,396.396 INFO    ] No update needed
[2026-08-31 22:35:53,398.398 INFO    ] Checking for camera pi updates...
[2026-08-31 22:35:53,432.432 INFO    ] 200
[2026-08-31 22:35:53,434.434 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:35:53,474.474 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:35:53,571.571 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:35:53,573.573 INFO    ] No camera update needed
[2026-08-31 22:35:53,575.575 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:35:53,578.578 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:35:53,583.583 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:35:53,588.588 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:35:55,628.628 INFO    ] ================================================
[2026-08-31 22:35:55,643.643 INFO    ] Launching Daemon at Mon Aug 31 22:35:55 IST 2026
[2026-08-31 22:35:55,655.655 INFO    ] ================================================
[2026-08-31 22:35:56,236.236 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:35:56
[2026-08-31 22:35:56,835.835 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:35:57,112.112 INFO    ] Initializing speech engine...
[2026-08-31 22:35:57,121.121 INFO    ] 2026-08-31 22:35:57
[2026-08-31 22:35:57,380.380 INFO    ] 2026-08-31 22:35:57
[2026-08-31 22:35:57,416.416 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:35:57,665.665 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:35:57,671.671 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:35:57,891.891 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:35:57,926.926 INFO    ] time= 31/08/2026 22:35:57
[2026-08-31 22:35:57,932.932 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:35:57,950.950 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:35:58,066.066 INFO    ] No existing commands found in stream
[2026-08-31 22:36:03,090.090 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:36:03,092.092 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-08-31 22:36:06,939.939 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 22:36:06,942.942 INFO    ] Checking for system updates...
[2026-08-31 22:36:06,978.978 INFO    ] 200
[2026-08-31 22:36:06,981.981 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:36:07,034.034 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:36:07,037.037 INFO    ] No update needed
[2026-08-31 22:36:07,040.040 INFO    ] Checking for camera pi updates...
[2026-08-31 22:36:07,074.074 INFO    ] 200
[2026-08-31 22:36:07,077.077 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:36:07,120.120 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:36:07,194.194 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:36:07,197.197 INFO    ] No camera update needed
[2026-08-31 22:36:07,200.200 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:36:07,202.202 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:36:07,209.209 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:36:07,214.214 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:36:09,257.257 INFO    ] ================================================
[2026-08-31 22:36:09,273.273 INFO    ] Launching Daemon at Mon Aug 31 22:36:09 IST 2026
[2026-08-31 22:36:09,283.283 INFO    ] ================================================
[2026-08-31 22:36:09,851.851 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:36:09
[2026-08-31 22:36:10,436.436 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:36:10,688.688 INFO    ] Initializing speech engine...
[2026-08-31 22:36:10,711.711 INFO    ] 2026-08-31 22:36:10
[2026-08-31 22:36:10,965.965 INFO    ] 2026-08-31 22:36:10
[2026-08-31 22:36:11,001.001 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:36:11,247.247 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:36:11,269.269 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:36:11,404.404 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:36:11,411.411 INFO    ] time= 31/08/2026 22:36:11
[2026-08-31 22:36:11,477.477 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:36:11,531.531 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:36:11,601.601 INFO    ] No existing commands found in stream
[2026-08-31 22:36:16,612.612 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:36:16,614.614 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-08-31 22:36:20,457.457 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 22:36:20,460.460 INFO    ] Checking for system updates...
[2026-08-31 22:36:20,496.496 INFO    ] 200
[2026-08-31 22:36:20,498.498 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:36:20,550.550 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:36:20,552.552 INFO    ] No update needed
[2026-08-31 22:36:20,555.555 INFO    ] Checking for camera pi updates...
[2026-08-31 22:36:20,588.588 INFO    ] 200
[2026-08-31 22:36:20,591.591 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:36:20,631.631 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:36:20,803.803 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:36:20,805.805 INFO    ] No camera update needed
[2026-08-31 22:36:20,808.808 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:36:20,810.810 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:36:20,815.815 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:36:20,820.820 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:36:22,864.864 INFO    ] ================================================
[2026-08-31 22:36:22,879.879 INFO    ] Launching Daemon at Mon Aug 31 22:36:22 IST 2026
[2026-08-31 22:36:22,889.889 INFO    ] ================================================
[2026-08-31 22:36:23,466.466 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:36:23
[2026-08-31 22:36:24,088.088 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:36:24,396.396 INFO    ] Initializing speech engine...
[2026-08-31 22:36:24,410.410 INFO    ] 2026-08-31 22:36:24
[2026-08-31 22:36:24,682.682 INFO    ] 2026-08-31 22:36:24
[2026-08-31 22:36:24,741.741 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:36:24,972.972 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:36:24,981.981 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:36:25,137.137 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:36:25,197.197 INFO    ] time= 31/08/2026 22:36:25
[2026-08-31 22:36:25,247.247 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:36:25,262.262 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:36:25,406.406 INFO    ] No existing commands found in stream
[2026-08-31 22:36:30,425.425 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:36:30,428.428 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-08-31 22:36:34,256.256 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 22:36:34,260.260 INFO    ] Checking for system updates...
[2026-08-31 22:36:34,297.297 INFO    ] 200
[2026-08-31 22:36:34,300.300 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:36:34,352.352 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:36:34,354.354 INFO    ] No update needed
[2026-08-31 22:36:34,356.356 INFO    ] Checking for camera pi updates...
[2026-08-31 22:36:34,390.390 INFO    ] 200
[2026-08-31 22:36:34,393.393 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:36:34,433.433 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:36:34,536.536 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:36:34,539.539 INFO    ] No camera update needed
[2026-08-31 22:36:34,541.541 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:36:34,543.543 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:36:34,549.549 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:36:34,554.554 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:36:36,595.595 INFO    ] ================================================
[2026-08-31 22:36:36,611.611 INFO    ] Launching Daemon at Mon Aug 31 22:36:36 IST 2026
[2026-08-31 22:36:36,621.621 INFO    ] ================================================
[2026-08-31 22:36:37,288.288 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:36:37
[2026-08-31 22:36:37,931.931 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:36:38,240.240 INFO    ] Initializing speech engine...
[2026-08-31 22:36:38,251.251 INFO    ] 2026-08-31 22:36:38
[2026-08-31 22:36:38,540.540 INFO    ] 2026-08-31 22:36:38
[2026-08-31 22:36:38,586.586 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:36:38,810.810 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:36:38,822.822 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:36:38,966.966 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:36:39,032.032 INFO    ] time= 31/08/2026 22:36:38
[2026-08-31 22:36:39,087.087 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:36:39,103.103 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:36:39,250.250 INFO    ] No existing commands found in stream
[2026-08-31 22:36:44,275.275 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:36:44,278.278 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-08-31 22:36:47,934.934 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 22:36:47,938.938 INFO    ] Checking for system updates...
[2026-08-31 22:36:47,976.976 INFO    ] 200
[2026-08-31 22:36:47,979.979 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:36:48,032.032 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:36:48,034.034 INFO    ] No update needed
[2026-08-31 22:36:48,037.037 INFO    ] Checking for camera pi updates...
[2026-08-31 22:36:48,074.074 INFO    ] 200
[2026-08-31 22:36:48,076.076 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:36:48,117.117 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:36:48,224.224 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:36:48,227.227 INFO    ] No camera update needed
[2026-08-31 22:36:48,229.229 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:36:48,232.232 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:36:48,237.237 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:36:48,242.242 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:36:50,281.281 INFO    ] ================================================
[2026-08-31 22:36:50,296.296 INFO    ] Launching Daemon at Mon Aug 31 22:36:50 IST 2026
[2026-08-31 22:36:50,308.308 INFO    ] ================================================
[2026-08-31 22:36:50,883.883 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:36:50
[2026-08-31 22:36:51,476.476 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:36:51,747.747 INFO    ] Initializing speech engine...
[2026-08-31 22:36:51,767.767 INFO    ] 2026-08-31 22:36:51
[2026-08-31 22:36:52,046.046 INFO    ] 2026-08-31 22:36:52
[2026-08-31 22:36:52,084.084 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:36:52,283.283 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:36:52,296.296 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:36:52,440.440 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:36:52,446.446 INFO    ] time= 31/08/2026 22:36:52
[2026-08-31 22:36:52,492.492 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:36:52,515.515 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:36:52,639.639 INFO    ] No existing commands found in stream
[2026-08-31 22:36:57,651.651 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:36:57,654.654 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-08-31 22:37:00,354.354 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 22:37:00,357.357 INFO    ] Checking for system updates...
[2026-08-31 22:37:00,393.393 INFO    ] 200
[2026-08-31 22:37:00,395.395 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:37:00,448.448 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:37:00,451.451 INFO    ] No update needed
[2026-08-31 22:37:00,453.453 INFO    ] Checking for camera pi updates...
[2026-08-31 22:37:00,487.487 INFO    ] 200
[2026-08-31 22:37:00,489.489 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:37:00,530.530 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:37:00,618.618 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:37:00,621.621 INFO    ] No camera update needed
[2026-08-31 22:37:00,623.623 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:37:00,626.626 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:37:00,631.631 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:37:00,636.636 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:37:02,686.686 INFO    ] ================================================
[2026-08-31 22:37:02,708.708 INFO    ] Launching Daemon at Mon Aug 31 22:37:02 IST 2026
[2026-08-31 22:37:02,723.723 INFO    ] ================================================
[2026-08-31 22:37:03,373.373 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:37:03
[2026-08-31 22:37:03,978.978 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:37:04,253.253 INFO    ] Initializing speech engine...
[2026-08-31 22:37:04,262.262 INFO    ] 2026-08-31 22:37:04
[2026-08-31 22:37:04,519.519 INFO    ] 2026-08-31 22:37:04
[2026-08-31 22:37:04,573.573 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:37:04,797.797 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:37:04,806.806 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:37:05,031.031 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:37:05,062.062 INFO    ] time= 31/08/2026 22:37:05
[2026-08-31 22:37:05,069.069 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:37:05,086.086 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:37:05,211.211 INFO    ] No existing commands found in stream
[2026-08-31 22:37:10,227.227 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:37:10,230.230 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-08-31 22:37:14,591.591 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 22:37:14,593.593 INFO    ] Checking for system updates...
[2026-08-31 22:37:14,630.630 INFO    ] 200
[2026-08-31 22:37:14,632.632 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:37:14,685.685 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:37:14,688.688 INFO    ] No update needed
[2026-08-31 22:37:14,691.691 INFO    ] Checking for camera pi updates...
[2026-08-31 22:37:14,725.725 INFO    ] 200
[2026-08-31 22:37:14,728.728 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:37:14,770.770 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:37:14,859.859 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:37:14,862.862 INFO    ] No camera update needed
[2026-08-31 22:37:14,865.865 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:37:14,867.867 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:37:14,874.874 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:37:14,879.879 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:37:16,921.921 INFO    ] ================================================
[2026-08-31 22:37:16,936.936 INFO    ] Launching Daemon at Mon Aug 31 22:37:16 IST 2026
[2026-08-31 22:37:16,946.946 INFO    ] ================================================
[2026-08-31 22:37:17,511.511 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:37:17
[2026-08-31 22:37:18,100.100 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:37:18,348.348 INFO    ] Initializing speech engine...
[2026-08-31 22:37:18,371.371 INFO    ] 2026-08-31 22:37:18
[2026-08-31 22:37:18,628.628 INFO    ] 2026-08-31 22:37:18
[2026-08-31 22:37:18,671.671 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:37:18,923.923 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:37:18,932.932 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:37:19,067.067 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:37:19,115.115 INFO    ] time= 31/08/2026 22:37:19
[2026-08-31 22:37:19,159.159 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:37:19,202.202 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:37:19,329.329 INFO    ] No existing commands found in stream
[2026-08-31 22:37:24,359.359 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:37:24,362.362 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-08-31 22:37:27,127.127 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 22:37:27,129.129 INFO    ] Checking for system updates...
[2026-08-31 22:37:27,165.165 INFO    ] 200
[2026-08-31 22:37:27,167.167 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:37:27,224.224 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:37:27,226.226 INFO    ] No update needed
[2026-08-31 22:37:27,229.229 INFO    ] Checking for camera pi updates...
[2026-08-31 22:37:27,262.262 INFO    ] 200
[2026-08-31 22:37:27,264.264 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:37:27,305.305 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:37:27,386.386 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:37:27,388.388 INFO    ] No camera update needed
[2026-08-31 22:37:27,391.391 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:37:27,393.393 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:37:27,398.398 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:37:27,403.403 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:37:29,443.443 INFO    ] ================================================
[2026-08-31 22:37:29,458.458 INFO    ] Launching Daemon at Mon Aug 31 22:37:29 IST 2026
[2026-08-31 22:37:29,469.469 INFO    ] ================================================
[2026-08-31 22:37:30,047.047 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:37:30
[2026-08-31 22:37:30,642.642 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:37:30,913.913 INFO    ] Initializing speech engine...
[2026-08-31 22:37:30,922.922 INFO    ] 2026-08-31 22:37:30
[2026-08-31 22:37:31,184.184 INFO    ] 2026-08-31 22:37:31
[2026-08-31 22:37:31,218.218 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:37:31,466.466 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:37:31,473.473 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:37:31,682.682 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:37:31,748.748 INFO    ] time= 31/08/2026 22:37:31
[2026-08-31 22:37:31,756.756 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:37:31,778.778 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:37:31,978.978 INFO    ] No existing commands found in stream
[2026-08-31 22:37:37,020.020 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:37:37,023.023 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-08-31 22:37:40,177.177 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 22:37:40,180.180 INFO    ] Checking for system updates...
[2026-08-31 22:37:40,216.216 INFO    ] 200
[2026-08-31 22:37:40,219.219 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:37:40,271.271 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:37:40,274.274 INFO    ] No update needed
[2026-08-31 22:37:40,276.276 INFO    ] Checking for camera pi updates...
[2026-08-31 22:37:40,310.310 INFO    ] 200
[2026-08-31 22:37:40,312.312 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:37:40,356.356 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:37:40,446.446 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:37:40,449.449 INFO    ] No camera update needed
[2026-08-31 22:37:40,451.451 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:37:40,453.453 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:37:40,459.459 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:37:40,464.464 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:37:42,502.502 INFO    ] ================================================
[2026-08-31 22:37:42,517.517 INFO    ] Launching Daemon at Mon Aug 31 22:37:42 IST 2026
[2026-08-31 22:37:42,528.528 INFO    ] ================================================
[2026-08-31 22:37:43,102.102 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:37:43
[2026-08-31 22:37:43,691.691 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:37:43,944.944 INFO    ] Initializing speech engine...
[2026-08-31 22:37:43,967.967 INFO    ] 2026-08-31 22:37:43
[2026-08-31 22:37:44,226.226 INFO    ] 2026-08-31 22:37:44
[2026-08-31 22:37:44,261.261 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:37:44,518.518 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:37:44,529.529 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:37:44,662.662 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:37:44,704.704 INFO    ] time= 31/08/2026 22:37:44
[2026-08-31 22:37:44,769.769 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:37:44,801.801 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:37:44,934.934 INFO    ] No existing commands found in stream
[2026-08-31 22:37:49,959.959 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:37:49,962.962 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-08-31 22:37:52,534.534 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 22:37:52,536.536 INFO    ] Checking for system updates...
[2026-08-31 22:37:52,572.572 INFO    ] 200
[2026-08-31 22:37:52,574.574 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:37:52,626.626 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:37:52,629.629 INFO    ] No update needed
[2026-08-31 22:37:52,631.631 INFO    ] Checking for camera pi updates...
[2026-08-31 22:37:52,665.665 INFO    ] 200
[2026-08-31 22:37:52,667.667 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:37:52,708.708 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:37:52,781.781 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:37:52,784.784 INFO    ] No camera update needed
[2026-08-31 22:37:52,786.786 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:37:52,788.788 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:37:52,793.793 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:37:52,798.798 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:37:54,840.840 INFO    ] ================================================
[2026-08-31 22:37:54,855.855 INFO    ] Launching Daemon at Mon Aug 31 22:37:54 IST 2026
[2026-08-31 22:37:54,866.866 INFO    ] ================================================
[2026-08-31 22:37:55,433.433 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:37:55
[2026-08-31 22:37:56,014.014 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:37:56,284.284 INFO    ] Initializing speech engine...
[2026-08-31 22:37:56,294.294 INFO    ] 2026-08-31 22:37:56
[2026-08-31 22:37:56,543.543 INFO    ] 2026-08-31 22:37:56
[2026-08-31 22:37:56,609.609 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:37:56,836.836 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:37:56,844.844 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:37:56,981.981 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:37:57,021.021 INFO    ] time= 31/08/2026 22:37:56
[2026-08-31 22:37:57,070.070 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:37:57,115.115 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:37:57,267.267 INFO    ] No existing commands found in stream
[2026-08-31 22:38:02,282.282 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:38:02,286.286 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-08-31 22:38:03,581.581 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 22:38:03,584.584 INFO    ] Checking for system updates...
[2026-08-31 22:38:03,621.621 INFO    ] 200
[2026-08-31 22:38:03,624.624 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:38:03,683.683 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:38:03,686.686 INFO    ] No update needed
[2026-08-31 22:38:03,689.689 INFO    ] Checking for camera pi updates...
[2026-08-31 22:38:03,734.734 INFO    ] 200
[2026-08-31 22:38:03,737.737 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:38:03,787.787 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:38:03,873.873 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:38:03,876.876 INFO    ] No camera update needed
[2026-08-31 22:38:03,879.879 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:38:03,881.881 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:38:03,888.888 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:38:03,893.893 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:38:05,936.936 INFO    ] ================================================
[2026-08-31 22:38:05,951.951 INFO    ] Launching Daemon at Mon Aug 31 22:38:05 IST 2026
[2026-08-31 22:38:05,962.962 INFO    ] ================================================
[2026-08-31 22:38:06,599.599 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:38:06
[2026-08-31 22:38:07,188.188 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:38:07,464.464 INFO    ] Initializing speech engine...
[2026-08-31 22:38:07,469.469 INFO    ] 2026-08-31 22:38:07
[2026-08-31 22:38:07,715.715 INFO    ] 2026-08-31 22:38:07
[2026-08-31 22:38:07,750.750 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:38:08,002.002 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:38:08,011.011 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:38:08,143.143 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:38:08,190.190 INFO    ] time= 31/08/2026 22:38:08
[2026-08-31 22:38:08,244.244 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:38:08,276.276 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:38:08,335.335 INFO    ] No existing commands found in stream
[2026-08-31 22:38:13,347.347 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:38:13,350.350 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-08-31 22:38:14,827.827 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 22:38:14,830.830 INFO    ] Checking for system updates...
[2026-08-31 22:38:14,865.865 INFO    ] 200
[2026-08-31 22:38:14,868.868 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:38:14,925.925 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:38:14,928.928 INFO    ] No update needed
[2026-08-31 22:38:14,930.930 INFO    ] Checking for camera pi updates...
[2026-08-31 22:38:14,968.968 INFO    ] 200
[2026-08-31 22:38:14,970.970 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:38:15,010.010 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:38:15,093.093 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:38:15,095.095 INFO    ] No camera update needed
[2026-08-31 22:38:15,098.098 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:38:15,100.100 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:38:15,106.106 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:38:15,111.111 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:38:17,151.151 INFO    ] ================================================
[2026-08-31 22:38:17,166.166 INFO    ] Launching Daemon at Mon Aug 31 22:38:17 IST 2026
[2026-08-31 22:38:17,177.177 INFO    ] ================================================
[2026-08-31 22:38:17,742.742 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:38:17
[2026-08-31 22:38:18,324.324 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:38:18,595.595 INFO    ] Initializing speech engine...
[2026-08-31 22:38:18,603.603 INFO    ] 2026-08-31 22:38:18
[2026-08-31 22:38:18,859.859 INFO    ] 2026-08-31 22:38:18
[2026-08-31 22:38:18,912.912 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:38:19,182.182 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:38:19,193.193 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:38:19,352.352 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:38:19,370.370 INFO    ] time= 31/08/2026 22:38:19
[2026-08-31 22:38:19,435.435 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:38:19,490.490 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:38:19,569.569 INFO    ] No existing commands found in stream
[2026-08-31 22:38:24,581.581 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:38:24,584.584 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-08-31 22:38:28,984.984 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 22:38:28,987.987 INFO    ] Checking for system updates...
[2026-08-31 22:38:29,026.026 INFO    ] 200
[2026-08-31 22:38:29,029.029 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:38:29,080.080 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:38:29,083.083 INFO    ] No update needed
[2026-08-31 22:38:29,085.085 INFO    ] Checking for camera pi updates...
[2026-08-31 22:38:29,120.120 INFO    ] 200
[2026-08-31 22:38:29,122.122 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:38:29,162.162 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:38:29,333.333 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:38:29,336.336 INFO    ] No camera update needed
[2026-08-31 22:38:29,338.338 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:38:29,340.340 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:38:29,346.346 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:38:29,351.351 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:38:31,390.390 INFO    ] ================================================
[2026-08-31 22:38:31,405.405 INFO    ] Launching Daemon at Mon Aug 31 22:38:31 IST 2026
[2026-08-31 22:38:31,416.416 INFO    ] ================================================
[2026-08-31 22:38:32,004.004 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:38:32
[2026-08-31 22:38:32,629.629 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:38:32,924.924 INFO    ] Initializing speech engine...
[2026-08-31 22:38:32,930.930 INFO    ] 2026-08-31 22:38:32
[2026-08-31 22:38:33,196.196 INFO    ] 2026-08-31 22:38:33
[2026-08-31 22:38:33,247.247 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:38:33,469.469 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:38:33,478.478 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:38:33,679.679 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:38:33,735.735 INFO    ] time= 31/08/2026 22:38:33
[2026-08-31 22:38:33,742.742 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:38:33,760.760 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:38:33,888.888 INFO    ] No existing commands found in stream
[2026-08-31 22:38:38,901.901 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:38:38,904.904 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-08-31 22:38:42,704.704 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 22:38:42,707.707 INFO    ] Checking for system updates...
[2026-08-31 22:38:42,742.742 INFO    ] 200
[2026-08-31 22:38:42,745.745 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:38:42,805.805 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:38:42,808.808 INFO    ] No update needed
[2026-08-31 22:38:42,810.810 INFO    ] Checking for camera pi updates...
[2026-08-31 22:38:42,848.848 INFO    ] 200
[2026-08-31 22:38:42,851.851 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:38:42,897.897 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:38:42,946.946 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:38:42,949.949 INFO    ] No camera update needed
[2026-08-31 22:38:42,951.951 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:38:42,953.953 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:38:42,959.959 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:38:42,964.964 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:38:45,003.003 INFO    ] ================================================
[2026-08-31 22:38:45,018.018 INFO    ] Launching Daemon at Mon Aug 31 22:38:45 IST 2026
[2026-08-31 22:38:45,029.029 INFO    ] ================================================
[2026-08-31 22:38:45,594.594 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:38:45
[2026-08-31 22:38:46,176.176 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:38:46,442.442 INFO    ] Initializing speech engine...
[2026-08-31 22:38:46,451.451 INFO    ] 2026-08-31 22:38:46
[2026-08-31 22:38:46,699.699 INFO    ] 2026-08-31 22:38:46
[2026-08-31 22:38:46,734.734 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:38:46,984.984 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:38:46,995.995 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:38:47,207.207 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:38:47,253.253 INFO    ] time= 31/08/2026 22:38:47
[2026-08-31 22:38:47,260.260 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:38:47,277.277 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:38:47,406.406 INFO    ] No existing commands found in stream
[2026-08-31 22:38:52,419.419 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:38:52,422.422 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-08-31 22:38:56,464.464 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 22:38:56,467.467 INFO    ] Checking for system updates...
[2026-08-31 22:38:56,506.506 INFO    ] 200
[2026-08-31 22:38:56,509.509 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:38:56,570.570 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:38:56,572.572 INFO    ] No update needed
[2026-08-31 22:38:56,574.574 INFO    ] Checking for camera pi updates...
[2026-08-31 22:38:56,608.608 INFO    ] 200
[2026-08-31 22:38:56,610.610 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:38:56,656.656 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:38:56,731.731 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:38:56,734.734 INFO    ] No camera update needed
[2026-08-31 22:38:56,736.736 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:38:56,738.738 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:38:56,744.744 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:38:56,748.748 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:38:58,788.788 INFO    ] ================================================
[2026-08-31 22:38:58,803.803 INFO    ] Launching Daemon at Mon Aug 31 22:38:58 IST 2026
[2026-08-31 22:38:58,813.813 INFO    ] ================================================
[2026-08-31 22:38:59,388.388 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:38:59
[2026-08-31 22:38:59,969.969 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:39:00,227.227 INFO    ] Initializing speech engine...
[2026-08-31 22:39:00,245.245 INFO    ] 2026-08-31 22:39:00
[2026-08-31 22:39:00,497.497 INFO    ] 2026-08-31 22:39:00
[2026-08-31 22:39:00,532.532 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:39:00,789.789 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:39:00,799.799 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:39:00,999.999 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:39:01,053.053 INFO    ] time= 31/08/2026 22:39:01
[2026-08-31 22:39:01,068.068 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:39:01,085.085 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:39:01,214.214 INFO    ] No existing commands found in stream
[2026-08-31 22:39:06,230.230 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:39:06,233.233 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-08-31 22:39:09,706.706 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 22:39:09,709.709 INFO    ] Checking for system updates...
[2026-08-31 22:39:09,744.744 INFO    ] 200
[2026-08-31 22:39:09,746.746 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:39:09,799.799 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:39:09,802.802 INFO    ] No update needed
[2026-08-31 22:39:09,804.804 INFO    ] Checking for camera pi updates...
[2026-08-31 22:39:09,838.838 INFO    ] 200
[2026-08-31 22:39:09,840.840 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:39:09,886.886 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:39:09,987.987 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:39:09,990.990 INFO    ] No camera update needed
[2026-08-31 22:39:09,992.992 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:39:09,994.994 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:39:10,000.000 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:39:10,004.004 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:39:12,049.049 INFO    ] ================================================
[2026-08-31 22:39:12,065.065 INFO    ] Launching Daemon at Mon Aug 31 22:39:12 IST 2026
[2026-08-31 22:39:12,076.076 INFO    ] ================================================
[2026-08-31 22:39:12,660.660 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:39:12
[2026-08-31 22:39:13,258.258 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:39:13,537.537 INFO    ] Initializing speech engine...
[2026-08-31 22:39:13,546.546 INFO    ] 2026-08-31 22:39:13
[2026-08-31 22:39:13,805.805 INFO    ] 2026-08-31 22:39:13
[2026-08-31 22:39:13,835.835 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:39:14,079.079 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:39:14,088.088 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:39:14,225.225 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:39:14,275.275 INFO    ] time= 31/08/2026 22:39:14
[2026-08-31 22:39:14,329.329 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:39:14,356.356 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:39:14,490.490 INFO    ] No existing commands found in stream
[2026-08-31 22:39:19,514.514 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:39:19,517.517 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-08-31 22:39:22,504.504 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 22:39:22,507.507 INFO    ] Checking for system updates...
[2026-08-31 22:39:22,547.547 INFO    ] 200
[2026-08-31 22:39:22,550.550 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:39:22,603.603 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:39:22,606.606 INFO    ] No update needed
[2026-08-31 22:39:22,609.609 INFO    ] Checking for camera pi updates...
[2026-08-31 22:39:22,646.646 INFO    ] 200
[2026-08-31 22:39:22,649.649 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:39:22,700.700 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:39:22,792.792 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:39:22,795.795 INFO    ] No camera update needed
[2026-08-31 22:39:22,798.798 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:39:22,801.801 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:39:22,807.807 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:39:22,812.812 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:39:24,853.853 INFO    ] ================================================
[2026-08-31 22:39:24,868.868 INFO    ] Launching Daemon at Mon Aug 31 22:39:24 IST 2026
[2026-08-31 22:39:24,879.879 INFO    ] ================================================
[2026-08-31 22:39:25,444.444 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:39:25
[2026-08-31 22:39:26,026.026 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:39:26,293.293 INFO    ] Initializing speech engine...
[2026-08-31 22:39:26,304.304 INFO    ] 2026-08-31 22:39:26
[2026-08-31 22:39:26,555.555 INFO    ] 2026-08-31 22:39:26
[2026-08-31 22:39:26,614.614 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:39:26,835.835 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:39:26,845.845 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:39:27,050.050 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:39:27,101.101 INFO    ] time= 31/08/2026 22:39:27
[2026-08-31 22:39:27,107.107 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:39:27,125.125 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:39:27,255.255 INFO    ] No existing commands found in stream
[2026-08-31 22:39:32,267.267 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:39:32,270.270 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-08-31 22:39:36,046.046 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 22:39:36,049.049 INFO    ] Checking for system updates...
[2026-08-31 22:39:36,088.088 INFO    ] 200
[2026-08-31 22:39:36,090.090 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:39:36,148.148 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:39:36,151.151 INFO    ] No update needed
[2026-08-31 22:39:36,153.153 INFO    ] Checking for camera pi updates...
[2026-08-31 22:39:36,190.190 INFO    ] 200
[2026-08-31 22:39:36,192.192 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:39:36,236.236 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:39:36,321.321 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:39:36,324.324 INFO    ] No camera update needed
[2026-08-31 22:39:36,327.327 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:39:36,330.330 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:39:36,335.335 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:39:36,340.340 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:39:38,381.381 INFO    ] ================================================
[2026-08-31 22:39:38,396.396 INFO    ] Launching Daemon at Mon Aug 31 22:39:38 IST 2026
[2026-08-31 22:39:38,406.406 INFO    ] ================================================
[2026-08-31 22:39:39,054.054 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:39:39
[2026-08-31 22:39:39,720.720 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:39:40,013.013 INFO    ] Initializing speech engine...
[2026-08-31 22:39:40,021.021 INFO    ] 2026-08-31 22:39:40
[2026-08-31 22:39:40,283.283 INFO    ] 2026-08-31 22:39:40
[2026-08-31 22:39:40,334.334 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:39:40,487.487 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:39:40,504.504 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:39:40,639.639 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:39:40,645.645 INFO    ] time= 31/08/2026 22:39:40
[2026-08-31 22:39:40,671.671 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:39:40,713.713 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:39:40,814.814 INFO    ] No existing commands found in stream
[2026-08-31 22:39:45,844.844 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:39:45,847.847 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-08-31 22:39:47,261.261 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 22:39:47,263.263 INFO    ] Checking for system updates...
[2026-08-31 22:39:47,299.299 INFO    ] 200
[2026-08-31 22:39:47,302.302 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:39:47,362.362 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:39:47,365.365 INFO    ] No update needed
[2026-08-31 22:39:47,368.368 INFO    ] Checking for camera pi updates...
[2026-08-31 22:39:47,408.408 INFO    ] 200
[2026-08-31 22:39:47,411.411 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:39:47,468.468 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:39:47,570.570 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:39:47,572.572 INFO    ] No camera update needed
[2026-08-31 22:39:47,575.575 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:39:47,577.577 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:39:47,582.582 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:39:47,587.587 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:39:49,628.628 INFO    ] ================================================
[2026-08-31 22:39:49,642.642 INFO    ] Launching Daemon at Mon Aug 31 22:39:49 IST 2026
[2026-08-31 22:39:49,653.653 INFO    ] ================================================
[2026-08-31 22:39:50,293.293 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:39:50
[2026-08-31 22:39:50,969.969 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:39:51,278.278 INFO    ] Initializing speech engine...
[2026-08-31 22:39:51,284.284 INFO    ] 2026-08-31 22:39:51
[2026-08-31 22:39:51,560.560 INFO    ] 2026-08-31 22:39:51
[2026-08-31 22:39:51,665.665 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:39:51,886.886 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:39:51,894.894 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:39:52,084.084 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:39:52,095.095 INFO    ] time= 31/08/2026 22:39:52
[2026-08-31 22:39:52,116.116 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:39:52,142.142 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:39:52,249.249 INFO    ] No existing commands found in stream
[2026-08-31 22:39:57,273.273 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:39:57,276.276 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-08-31 22:40:00,614.614 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 22:40:00,617.617 INFO    ] Checking for system updates...
[2026-08-31 22:40:00,653.653 INFO    ] 200
[2026-08-31 22:40:00,655.655 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:40:00,707.707 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:40:00,710.710 INFO    ] No update needed
[2026-08-31 22:40:00,712.712 INFO    ] Checking for camera pi updates...
[2026-08-31 22:40:00,750.750 INFO    ] 200
[2026-08-31 22:40:00,752.752 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:40:00,796.796 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:40:00,869.869 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:40:00,872.872 INFO    ] No camera update needed
[2026-08-31 22:40:00,874.874 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:40:00,876.876 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:40:00,881.881 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:40:00,886.886 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:40:02,956.956 INFO    ] ================================================
[2026-08-31 22:40:02,986.986 INFO    ] Launching Daemon at Mon Aug 31 22:40:02 IST 2026
[2026-08-31 22:40:03,001.001 INFO    ] ================================================
[2026-08-31 22:40:03,715.715 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:40:03
[2026-08-31 22:40:04,306.306 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:40:04,560.560 INFO    ] Initializing speech engine...
[2026-08-31 22:40:04,569.569 INFO    ] 2026-08-31 22:40:04
[2026-08-31 22:40:04,830.830 INFO    ] 2026-08-31 22:40:04
[2026-08-31 22:40:04,867.867 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:40:05,152.152 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:40:05,162.162 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:40:05,301.301 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:40:05,361.361 INFO    ] time= 31/08/2026 22:40:05
[2026-08-31 22:40:05,405.405 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:40:05,435.435 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:40:05,585.585 INFO    ] No existing commands found in stream
[2026-08-31 22:40:10,599.599 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:40:10,602.602 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-08-31 22:40:12,216.216 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 22:40:12,219.219 INFO    ] Checking for system updates...
[2026-08-31 22:40:12,256.256 INFO    ] 200
[2026-08-31 22:40:12,258.258 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:40:12,316.316 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:40:12,319.319 INFO    ] No update needed
[2026-08-31 22:40:12,321.321 INFO    ] Checking for camera pi updates...
[2026-08-31 22:40:12,354.354 INFO    ] 200
[2026-08-31 22:40:12,357.357 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:40:12,401.401 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:40:12,461.461 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:40:12,464.464 INFO    ] No camera update needed
[2026-08-31 22:40:12,466.466 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:40:12,468.468 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:40:12,473.473 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:40:12,478.478 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:40:14,519.519 INFO    ] ================================================
[2026-08-31 22:40:14,534.534 INFO    ] Launching Daemon at Mon Aug 31 22:40:14 IST 2026
[2026-08-31 22:40:14,544.544 INFO    ] ================================================
[2026-08-31 22:40:15,110.110 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:40:15
[2026-08-31 22:40:15,691.691 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:40:15,961.961 INFO    ] Initializing speech engine...
[2026-08-31 22:40:15,968.968 INFO    ] 2026-08-31 22:40:15
[2026-08-31 22:40:16,228.228 INFO    ] 2026-08-31 22:40:16
[2026-08-31 22:40:16,279.279 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:40:16,501.501 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:40:16,510.510 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:40:16,644.644 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:40:16,703.703 INFO    ] time= 31/08/2026 22:40:16
[2026-08-31 22:40:16,768.768 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:40:16,777.777 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:40:16,924.924 INFO    ] No existing commands found in stream
[2026-08-31 22:40:21,951.951 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:40:21,954.954 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-08-31 22:40:26,086.086 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 22:40:26,089.089 INFO    ] Checking for system updates...
[2026-08-31 22:40:26,129.129 INFO    ] 200
[2026-08-31 22:40:26,131.131 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:40:26,185.185 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:40:26,188.188 INFO    ] No update needed
[2026-08-31 22:40:26,191.191 INFO    ] Checking for camera pi updates...
[2026-08-31 22:40:26,226.226 INFO    ] 200
[2026-08-31 22:40:26,229.229 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:40:26,271.271 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:40:26,352.352 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:40:26,355.355 INFO    ] No camera update needed
[2026-08-31 22:40:26,358.358 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:40:26,360.360 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:40:26,366.366 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:40:26,372.372 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:40:28,414.414 INFO    ] ================================================
[2026-08-31 22:40:28,429.429 INFO    ] Launching Daemon at Mon Aug 31 22:40:28 IST 2026
[2026-08-31 22:40:28,439.439 INFO    ] ================================================
[2026-08-31 22:40:29,094.094 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:40:29
[2026-08-31 22:40:29,765.765 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:40:30,071.071 INFO    ] Initializing speech engine...
[2026-08-31 22:40:30,083.083 INFO    ] 2026-08-31 22:40:30
[2026-08-31 22:40:30,395.395 INFO    ] 2026-08-31 22:40:30
[2026-08-31 22:40:30,471.471 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:40:30,693.693 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:40:30,701.701 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:40:30,892.892 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:40:30,900.900 INFO    ] time= 31/08/2026 22:40:30
[2026-08-31 22:40:30,920.920 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:40:30,948.948 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:40:31,053.053 INFO    ] No existing commands found in stream
[2026-08-31 22:40:36,066.066 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:40:36,069.069 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-08-31 22:40:37,538.538 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 22:40:37,540.540 INFO    ] Checking for system updates...
[2026-08-31 22:40:37,579.579 INFO    ] 200
[2026-08-31 22:40:37,582.582 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:40:37,643.643 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:40:37,646.646 INFO    ] No update needed
[2026-08-31 22:40:37,649.649 INFO    ] Checking for camera pi updates...
[2026-08-31 22:40:37,684.684 INFO    ] 200
[2026-08-31 22:40:37,686.686 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:40:37,730.730 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:40:37,793.793 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:40:37,796.796 INFO    ] No camera update needed
[2026-08-31 22:40:37,802.802 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:40:37,805.805 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:40:37,813.813 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:40:37,821.821 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:40:39,864.864 INFO    ] ================================================
[2026-08-31 22:40:39,879.879 INFO    ] Launching Daemon at Mon Aug 31 22:40:39 IST 2026
[2026-08-31 22:40:39,889.889 INFO    ] ================================================
[2026-08-31 22:40:40,470.470 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:40:40
[2026-08-31 22:40:41,066.066 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:40:41,338.338 INFO    ] Initializing speech engine...
[2026-08-31 22:40:41,347.347 INFO    ] 2026-08-31 22:40:41
[2026-08-31 22:40:41,595.595 INFO    ] 2026-08-31 22:40:41
[2026-08-31 22:40:41,631.631 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:40:41,881.881 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:40:41,890.890 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:40:42,022.022 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:40:42,064.064 INFO    ] time= 31/08/2026 22:40:42
[2026-08-31 22:40:42,128.128 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:40:42,157.157 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:40:42,284.284 INFO    ] No existing commands found in stream
[2026-08-31 22:40:47,309.309 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:40:47,312.312 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-08-31 22:40:51,534.534 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 22:40:51,537.537 INFO    ] Checking for system updates...
[2026-08-31 22:40:51,574.574 INFO    ] 200
[2026-08-31 22:40:51,577.577 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:40:51,635.635 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:40:51,639.639 INFO    ] No update needed
[2026-08-31 22:40:51,642.642 INFO    ] Checking for camera pi updates...
[2026-08-31 22:40:51,679.679 INFO    ] 200
[2026-08-31 22:40:51,681.681 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:40:51,725.725 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:40:51,814.814 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:40:51,817.817 INFO    ] No camera update needed
[2026-08-31 22:40:51,820.820 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:40:51,822.822 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:40:51,828.828 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:40:51,834.834 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:40:53,874.874 INFO    ] ================================================
[2026-08-31 22:40:53,889.889 INFO    ] Launching Daemon at Mon Aug 31 22:40:53 IST 2026
[2026-08-31 22:40:53,899.899 INFO    ] ================================================
[2026-08-31 22:40:54,478.478 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:40:54
[2026-08-31 22:40:55,065.065 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:40:55,330.330 INFO    ] Initializing speech engine...
[2026-08-31 22:40:55,336.336 INFO    ] 2026-08-31 22:40:55
[2026-08-31 22:40:55,588.588 INFO    ] 2026-08-31 22:40:55
[2026-08-31 22:40:55,623.623 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:40:55,815.815 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:40:55,859.859 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:40:56,015.015 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:40:56,055.055 INFO    ] time= 31/08/2026 22:40:56
[2026-08-31 22:40:56,088.088 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:40:56,142.142 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:40:56,198.198 INFO    ] No existing commands found in stream
[2026-08-31 22:41:01,210.210 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:41:01,213.213 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-08-31 22:41:03,380.380 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 22:41:03,383.383 INFO    ] Checking for system updates...
[2026-08-31 22:41:03,429.429 INFO    ] 200
[2026-08-31 22:41:03,432.432 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:41:03,491.491 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:41:03,494.494 INFO    ] No update needed
[2026-08-31 22:41:03,498.498 INFO    ] Checking for camera pi updates...
[2026-08-31 22:41:03,531.531 INFO    ] 200
[2026-08-31 22:41:03,534.534 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:41:03,582.582 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:41:03,682.682 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:41:03,685.685 INFO    ] No camera update needed
[2026-08-31 22:41:03,687.687 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:41:03,690.690 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:41:03,695.695 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:41:03,700.700 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:41:05,740.740 INFO    ] ================================================
[2026-08-31 22:41:05,754.754 INFO    ] Launching Daemon at Mon Aug 31 22:41:05 IST 2026
[2026-08-31 22:41:05,765.765 INFO    ] ================================================
[2026-08-31 22:41:06,334.334 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:41:06
[2026-08-31 22:41:06,944.944 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:41:07,215.215 INFO    ] Initializing speech engine...
[2026-08-31 22:41:07,225.225 INFO    ] 2026-08-31 22:41:07
[2026-08-31 22:41:07,486.486 INFO    ] 2026-08-31 22:41:07
[2026-08-31 22:41:07,540.540 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:41:07,821.821 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:41:07,829.829 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:41:08,019.019 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:41:08,030.030 INFO    ] time= 31/08/2026 22:41:08
[2026-08-31 22:41:08,048.048 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:41:08,065.065 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:41:08,196.196 INFO    ] No existing commands found in stream
[2026-08-31 22:41:13,221.221 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:41:13,224.224 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-08-31 22:41:15,973.973 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 22:41:15,976.976 INFO    ] Checking for system updates...
[2026-08-31 22:41:16,013.013 INFO    ] 200
[2026-08-31 22:41:16,015.015 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:41:16,068.068 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:41:16,071.071 INFO    ] No update needed
[2026-08-31 22:41:16,073.073 INFO    ] Checking for camera pi updates...
[2026-08-31 22:41:16,110.110 INFO    ] 200
[2026-08-31 22:41:16,112.112 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:41:16,152.152 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:41:16,232.232 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:41:16,234.234 INFO    ] No camera update needed
[2026-08-31 22:41:16,237.237 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:41:16,239.239 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:41:16,244.244 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:41:16,249.249 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:41:18,290.290 INFO    ] ================================================
[2026-08-31 22:41:18,305.305 INFO    ] Launching Daemon at Mon Aug 31 22:41:18 IST 2026
[2026-08-31 22:41:18,316.316 INFO    ] ================================================
[2026-08-31 22:41:18,883.883 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:41:18
[2026-08-31 22:41:19,473.473 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:41:19,749.749 INFO    ] Initializing speech engine...
[2026-08-31 22:41:19,756.756 INFO    ] 2026-08-31 22:41:19
[2026-08-31 22:41:20,024.024 INFO    ] 2026-08-31 22:41:20
[2026-08-31 22:41:20,077.077 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:41:20,246.246 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:41:20,305.305 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:41:20,447.447 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:41:20,473.473 INFO    ] time= 31/08/2026 22:41:20
[2026-08-31 22:41:20,533.533 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:41:20,583.583 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:41:20,654.654 INFO    ] No existing commands found in stream
[2026-08-31 22:41:25,691.691 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:41:25,694.694 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-08-31 22:41:28,303.303 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 22:41:28,305.305 INFO    ] Checking for system updates...
[2026-08-31 22:41:28,342.342 INFO    ] 200
[2026-08-31 22:41:28,345.345 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:41:28,397.397 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:41:28,400.400 INFO    ] No update needed
[2026-08-31 22:41:28,402.402 INFO    ] Checking for camera pi updates...
[2026-08-31 22:41:28,440.440 INFO    ] 200
[2026-08-31 22:41:28,443.443 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:41:28,483.483 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:41:28,533.533 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:41:28,535.535 INFO    ] No camera update needed
[2026-08-31 22:41:28,537.537 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:41:28,540.540 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:41:28,545.545 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:41:28,550.550 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:41:30,589.589 INFO    ] ================================================
[2026-08-31 22:41:30,604.604 INFO    ] Launching Daemon at Mon Aug 31 22:41:30 IST 2026
[2026-08-31 22:41:30,615.615 INFO    ] ================================================
[2026-08-31 22:41:31,254.254 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:41:31
[2026-08-31 22:41:31,911.911 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:41:32,204.204 INFO    ] Initializing speech engine...
[2026-08-31 22:41:32,222.222 INFO    ] 2026-08-31 22:41:32
[2026-08-31 22:41:32,502.502 INFO    ] 2026-08-31 22:41:32
[2026-08-31 22:41:32,538.538 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:41:32,751.751 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:41:32,758.758 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:41:32,922.922 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:41:32,943.943 INFO    ] time= 31/08/2026 22:41:32
[2026-08-31 22:41:32,949.949 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:41:32,954.954 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:41:33,031.031 INFO    ] No existing commands found in stream
[2026-08-31 22:41:38,042.042 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:41:38,044.044 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-08-31 22:41:38,685.685 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 22:41:38,688.688 INFO    ] Checking for system updates...
[2026-08-31 22:41:38,728.728 INFO    ] 200
[2026-08-31 22:41:38,731.731 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:41:38,790.790 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:41:38,793.793 INFO    ] No update needed
[2026-08-31 22:41:38,796.796 INFO    ] Checking for camera pi updates...
[2026-08-31 22:41:38,831.831 INFO    ] 200
[2026-08-31 22:41:38,834.834 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:41:38,875.875 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:41:38,956.956 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:41:38,959.959 INFO    ] No camera update needed
[2026-08-31 22:41:38,962.962 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:41:38,964.964 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:41:38,970.970 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:41:38,976.976 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:41:41,016.016 INFO    ] ================================================
[2026-08-31 22:41:41,031.031 INFO    ] Launching Daemon at Mon Aug 31 22:41:41 IST 2026
[2026-08-31 22:41:41,042.042 INFO    ] ================================================
[2026-08-31 22:41:41,624.624 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:41:41
[2026-08-31 22:41:42,221.221 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:41:42,473.473 INFO    ] Initializing speech engine...
[2026-08-31 22:41:42,496.496 INFO    ] 2026-08-31 22:41:42
[2026-08-31 22:41:42,754.754 INFO    ] 2026-08-31 22:41:42
[2026-08-31 22:41:42,820.820 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:41:43,046.046 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:41:43,053.053 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:41:43,185.185 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:41:43,245.245 INFO    ] time= 31/08/2026 22:41:43
[2026-08-31 22:41:43,299.299 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:41:43,320.320 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:41:43,434.434 INFO    ] No existing commands found in stream
[2026-08-31 22:41:48,456.456 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:41:48,459.459 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-08-31 22:41:51,900.900 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 22:41:51,902.902 INFO    ] Checking for system updates...
[2026-08-31 22:41:51,938.938 INFO    ] 200
[2026-08-31 22:41:51,941.941 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:41:51,993.993 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:41:51,995.995 INFO    ] No update needed
[2026-08-31 22:41:51,998.998 INFO    ] Checking for camera pi updates...
[2026-08-31 22:41:52,031.031 INFO    ] 200
[2026-08-31 22:41:52,034.034 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:41:52,079.079 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:41:52,169.169 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:41:52,171.171 INFO    ] No camera update needed
[2026-08-31 22:41:52,173.173 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:41:52,176.176 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:41:52,181.181 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:41:52,186.186 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:41:54,227.227 INFO    ] ================================================
[2026-08-31 22:41:54,242.242 INFO    ] Launching Daemon at Mon Aug 31 22:41:54 IST 2026
[2026-08-31 22:41:54,253.253 INFO    ] ================================================
[2026-08-31 22:41:54,819.819 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:41:54
[2026-08-31 22:41:55,401.401 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:41:55,673.673 INFO    ] Initializing speech engine...
[2026-08-31 22:41:55,694.694 INFO    ] 2026-08-31 22:41:55
[2026-08-31 22:41:55,954.954 INFO    ] 2026-08-31 22:41:55
[2026-08-31 22:41:55,988.988 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:41:56,164.164 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:41:56,176.176 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:41:56,324.324 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:41:56,328.328 INFO    ] time= 31/08/2026 22:41:56
[2026-08-31 22:41:56,334.334 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:41:56,380.380 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:41:56,527.527 INFO    ] No existing commands found in stream
[2026-08-31 22:42:01,538.538 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:42:01,540.540 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-08-31 22:42:04,724.724 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 22:42:04,727.727 INFO    ] Checking for system updates...
[2026-08-31 22:42:04,762.762 INFO    ] 200
[2026-08-31 22:42:04,764.764 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:42:04,817.817 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:42:04,819.819 INFO    ] No update needed
[2026-08-31 22:42:04,822.822 INFO    ] Checking for camera pi updates...
[2026-08-31 22:42:04,855.855 INFO    ] 200
[2026-08-31 22:42:04,858.858 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:42:04,898.898 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:42:04,993.993 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:42:04,995.995 INFO    ] No camera update needed
[2026-08-31 22:42:04,998.998 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:42:05,000.000 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:42:05,005.005 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:42:05,010.010 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:42:07,051.051 INFO    ] ================================================
[2026-08-31 22:42:07,066.066 INFO    ] Launching Daemon at Mon Aug 31 22:42:07 IST 2026
[2026-08-31 22:42:07,076.076 INFO    ] ================================================
[2026-08-31 22:42:07,657.657 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:42:07
[2026-08-31 22:42:08,257.257 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:42:08,516.516 INFO    ] Initializing speech engine...
[2026-08-31 22:42:08,530.530 INFO    ] 2026-08-31 22:42:08
[2026-08-31 22:42:08,817.817 INFO    ] 2026-08-31 22:42:08
[2026-08-31 22:42:08,854.854 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:42:09,045.045 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:42:09,059.059 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:42:09,182.182 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:42:09,185.185 INFO    ] time= 31/08/2026 22:42:09
[2026-08-31 22:42:09,187.187 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:42:09,205.205 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:42:09,293.293 INFO    ] No existing commands found in stream
[2026-08-31 22:42:14,305.305 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:42:14,308.308 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-08-31 22:42:16,868.868 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 22:42:16,871.871 INFO    ] Checking for system updates...
[2026-08-31 22:42:16,907.907 INFO    ] 200
[2026-08-31 22:42:16,909.909 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:42:16,962.962 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:42:16,964.964 INFO    ] No update needed
[2026-08-31 22:42:16,967.967 INFO    ] Checking for camera pi updates...
[2026-08-31 22:42:17,000.000 INFO    ] 200
[2026-08-31 22:42:17,002.002 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:42:17,045.045 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:42:17,098.098 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:42:17,101.101 INFO    ] No camera update needed
[2026-08-31 22:42:17,103.103 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:42:17,105.105 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:42:17,111.111 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:42:17,116.116 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:42:19,155.155 INFO    ] ================================================
[2026-08-31 22:42:19,170.170 INFO    ] Launching Daemon at Mon Aug 31 22:42:19 IST 2026
[2026-08-31 22:42:19,181.181 INFO    ] ================================================
[2026-08-31 22:42:19,758.758 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:42:19
[2026-08-31 22:42:20,354.354 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:42:20,615.615 INFO    ] Initializing speech engine...
[2026-08-31 22:42:20,627.627 INFO    ] 2026-08-31 22:42:20
[2026-08-31 22:42:20,885.885 INFO    ] 2026-08-31 22:42:20
[2026-08-31 22:42:20,920.920 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:42:21,170.170 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:42:21,179.179 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:42:21,310.310 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:42:21,347.347 INFO    ] time= 31/08/2026 22:42:21
[2026-08-31 22:42:21,412.412 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:42:21,446.446 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:42:21,581.581 INFO    ] No existing commands found in stream
[2026-08-31 22:42:26,600.600 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:42:26,603.603 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-08-31 22:42:30,129.129 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 22:42:30,131.131 INFO    ] Checking for system updates...
[2026-08-31 22:42:30,170.170 INFO    ] 200
[2026-08-31 22:42:30,173.173 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:42:30,232.232 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:42:30,234.234 INFO    ] No update needed
[2026-08-31 22:42:30,237.237 INFO    ] Checking for camera pi updates...
[2026-08-31 22:42:30,273.273 INFO    ] 200
[2026-08-31 22:42:30,275.275 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:42:30,315.315 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:42:30,418.418 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:42:30,420.420 INFO    ] No camera update needed
[2026-08-31 22:42:30,423.423 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:42:30,425.425 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:42:30,431.431 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:42:30,436.436 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:42:32,477.477 INFO    ] ================================================
[2026-08-31 22:42:32,493.493 INFO    ] Launching Daemon at Mon Aug 31 22:42:32 IST 2026
[2026-08-31 22:42:32,505.505 INFO    ] ================================================
[2026-08-31 22:42:33,164.164 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:42:33
[2026-08-31 22:42:33,805.805 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:42:34,074.074 INFO    ] Initializing speech engine...
[2026-08-31 22:42:34,098.098 INFO    ] 2026-08-31 22:42:34
[2026-08-31 22:42:34,363.363 INFO    ] 2026-08-31 22:42:34
[2026-08-31 22:42:34,402.402 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:42:34,602.602 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:42:34,652.652 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:42:34,808.808 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:42:34,824.824 INFO    ] time= 31/08/2026 22:42:34
[2026-08-31 22:42:34,879.879 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:42:34,928.928 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:42:35,091.091 INFO    ] No existing commands found in stream
[2026-08-31 22:42:40,109.109 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:42:40,112.112 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-08-31 22:42:43,566.566 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 22:42:43,569.569 INFO    ] Checking for system updates...
[2026-08-31 22:42:43,606.606 INFO    ] 200
[2026-08-31 22:42:43,609.609 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:42:43,666.666 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:42:43,669.669 INFO    ] No update needed
[2026-08-31 22:42:43,672.672 INFO    ] Checking for camera pi updates...
[2026-08-31 22:42:43,707.707 INFO    ] 200
[2026-08-31 22:42:43,709.709 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:42:43,751.751 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:42:43,932.932 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:42:43,934.934 INFO    ] No camera update needed
[2026-08-31 22:42:43,937.937 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:42:43,940.940 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:42:43,946.946 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:42:43,951.951 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:42:45,993.993 INFO    ] ================================================
[2026-08-31 22:42:46,009.009 INFO    ] Launching Daemon at Mon Aug 31 22:42:46 IST 2026
[2026-08-31 22:42:46,021.021 INFO    ] ================================================
[2026-08-31 22:42:46,609.609 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:42:46
[2026-08-31 22:42:47,207.207 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:42:47,482.482 INFO    ] Initializing speech engine...
[2026-08-31 22:42:47,489.489 INFO    ] 2026-08-31 22:42:47
[2026-08-31 22:42:47,743.743 INFO    ] 2026-08-31 22:42:47
[2026-08-31 22:42:47,802.802 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:42:48,049.049 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:42:48,057.057 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:42:48,260.260 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:42:48,294.294 INFO    ] time= 31/08/2026 22:42:48
[2026-08-31 22:42:48,310.310 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:42:48,320.320 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:42:48,446.446 INFO    ] No existing commands found in stream
[2026-08-31 22:42:53,459.459 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:42:53,462.462 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-08-31 22:42:55,093.093 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 22:42:55,096.096 INFO    ] Checking for system updates...
[2026-08-31 22:42:55,132.132 INFO    ] 200
[2026-08-31 22:42:55,134.134 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:42:55,188.188 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:42:55,190.190 INFO    ] No update needed
[2026-08-31 22:42:55,193.193 INFO    ] Checking for camera pi updates...
[2026-08-31 22:42:55,227.227 INFO    ] 200
[2026-08-31 22:42:55,230.230 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:42:55,270.270 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:42:55,359.359 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:42:55,362.362 INFO    ] No camera update needed
[2026-08-31 22:42:55,364.364 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:42:55,366.366 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:42:55,372.372 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:42:55,377.377 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:42:57,419.419 INFO    ] ================================================
[2026-08-31 22:42:57,434.434 INFO    ] Launching Daemon at Mon Aug 31 22:42:57 IST 2026
[2026-08-31 22:42:57,444.444 INFO    ] ================================================
[2026-08-31 22:42:58,023.023 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:42:58
[2026-08-31 22:42:58,622.622 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:42:58,898.898 INFO    ] Initializing speech engine...
[2026-08-31 22:42:58,905.905 INFO    ] 2026-08-31 22:42:58
[2026-08-31 22:42:59,162.162 INFO    ] 2026-08-31 22:42:59
[2026-08-31 22:42:59,196.196 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:42:59,415.415 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:42:59,477.477 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:42:59,630.630 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:42:59,657.657 INFO    ] time= 31/08/2026 22:42:59
[2026-08-31 22:42:59,712.712 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:42:59,774.774 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:42:59,882.882 INFO    ] No existing commands found in stream
[2026-08-31 22:43:04,908.908 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:43:04,911.911 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-08-31 22:43:06,404.404 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 22:43:06,407.407 INFO    ] Checking for system updates...
[2026-08-31 22:43:06,442.442 INFO    ] 200
[2026-08-31 22:43:06,445.445 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:43:06,498.498 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:43:06,500.500 INFO    ] No update needed
[2026-08-31 22:43:06,503.503 INFO    ] Checking for camera pi updates...
[2026-08-31 22:43:06,547.547 INFO    ] 200
[2026-08-31 22:43:06,551.551 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:43:06,610.610 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:43:06,690.690 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:43:06,692.692 INFO    ] No camera update needed
[2026-08-31 22:43:06,694.694 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:43:06,696.696 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:43:06,702.702 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:43:06,707.707 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:43:08,747.747 INFO    ] ================================================
[2026-08-31 22:43:08,762.762 INFO    ] Launching Daemon at Mon Aug 31 22:43:08 IST 2026
[2026-08-31 22:43:08,773.773 INFO    ] ================================================
[2026-08-31 22:43:09,411.411 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:43:09
[2026-08-31 22:43:10,034.034 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:43:10,305.305 INFO    ] Initializing speech engine...
[2026-08-31 22:43:10,314.314 INFO    ] 2026-08-31 22:43:10
[2026-08-31 22:43:10,563.563 INFO    ] 2026-08-31 22:43:10
[2026-08-31 22:43:10,629.629 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:43:10,855.855 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:43:10,860.860 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:43:11,070.070 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:43:11,116.116 INFO    ] time= 31/08/2026 22:43:11
[2026-08-31 22:43:11,122.122 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:43:11,140.140 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:43:11,260.260 INFO    ] No existing commands found in stream
[2026-08-31 22:43:16,279.279 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:43:16,282.282 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-08-31 22:43:18,900.900 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 22:43:18,903.903 INFO    ] Checking for system updates...
[2026-08-31 22:43:18,939.939 INFO    ] 200
[2026-08-31 22:43:18,942.942 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:43:18,997.997 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:43:18,999.999 INFO    ] No update needed
[2026-08-31 22:43:19,002.002 INFO    ] Checking for camera pi updates...
[2026-08-31 22:43:19,039.039 INFO    ] 200
[2026-08-31 22:43:19,042.042 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:43:19,087.087 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:43:19,183.183 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:43:19,185.185 INFO    ] No camera update needed
[2026-08-31 22:43:19,188.188 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:43:19,190.190 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:43:19,195.195 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:43:19,200.200 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:43:21,239.239 INFO    ] ================================================
[2026-08-31 22:43:21,254.254 INFO    ] Launching Daemon at Mon Aug 31 22:43:21 IST 2026
[2026-08-31 22:43:21,265.265 INFO    ] ================================================
[2026-08-31 22:43:21,832.832 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:43:21
[2026-08-31 22:43:22,415.415 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:43:22,684.684 INFO    ] Initializing speech engine...
[2026-08-31 22:43:22,693.693 INFO    ] 2026-08-31 22:43:22
[2026-08-31 22:43:22,939.939 INFO    ] 2026-08-31 22:43:22
[2026-08-31 22:43:22,974.974 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:43:23,224.224 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:43:23,233.233 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:43:23,468.468 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:43:23,495.495 INFO    ] time= 31/08/2026 22:43:23
[2026-08-31 22:43:23,510.510 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:43:23,519.519 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:43:23,636.636 INFO    ] No existing commands found in stream
[2026-08-31 22:43:28,655.655 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:43:28,658.658 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-08-31 22:43:29,364.364 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 22:43:29,367.367 INFO    ] Checking for system updates...
[2026-08-31 22:43:29,403.403 INFO    ] 200
[2026-08-31 22:43:29,405.405 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:43:29,464.464 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:43:29,467.467 INFO    ] No update needed
[2026-08-31 22:43:29,469.469 INFO    ] Checking for camera pi updates...
[2026-08-31 22:43:29,507.507 INFO    ] 200
[2026-08-31 22:43:29,509.509 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:43:29,554.554 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:43:29,635.635 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:43:29,637.637 INFO    ] No camera update needed
[2026-08-31 22:43:29,639.639 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:43:29,642.642 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:43:29,647.647 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:43:29,652.652 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:43:31,691.691 INFO    ] ================================================
[2026-08-31 22:43:31,708.708 INFO    ] Launching Daemon at Mon Aug 31 22:43:31 IST 2026
[2026-08-31 22:43:31,720.720 INFO    ] ================================================
[2026-08-31 22:43:32,429.429 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:43:32
[2026-08-31 22:43:33,141.141 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:43:33,443.443 INFO    ] Initializing speech engine...
[2026-08-31 22:43:33,455.455 INFO    ] 2026-08-31 22:43:33
[2026-08-31 22:43:33,734.734 INFO    ] 2026-08-31 22:43:33
[2026-08-31 22:43:33,779.779 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:43:34,004.004 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:43:34,009.009 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:43:34,220.220 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:43:34,265.265 INFO    ] time= 31/08/2026 22:43:34
[2026-08-31 22:43:34,286.286 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:43:34,317.317 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:43:34,426.426 INFO    ] No existing commands found in stream
[2026-08-31 22:43:39,455.455 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:43:39,459.459 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-08-31 22:43:43,741.741 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 22:43:43,745.745 INFO    ] Checking for system updates...
[2026-08-31 22:43:43,785.785 INFO    ] 200
[2026-08-31 22:43:43,788.788 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:43:43,846.846 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:43:43,849.849 INFO    ] No update needed
[2026-08-31 22:43:43,851.851 INFO    ] Checking for camera pi updates...
[2026-08-31 22:43:43,888.888 INFO    ] 200
[2026-08-31 22:43:43,891.891 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:43:43,932.932 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:43:44,027.027 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:43:44,029.029 INFO    ] No camera update needed
[2026-08-31 22:43:44,031.031 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:43:44,034.034 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:43:44,039.039 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:43:44,044.044 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:43:46,083.083 INFO    ] ================================================
[2026-08-31 22:43:46,098.098 INFO    ] Launching Daemon at Mon Aug 31 22:43:46 IST 2026
[2026-08-31 22:43:46,109.109 INFO    ] ================================================
[2026-08-31 22:43:46,690.690 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:43:46
[2026-08-31 22:43:47,288.288 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:43:47,565.565 INFO    ] Initializing speech engine...
[2026-08-31 22:43:47,574.574 INFO    ] 2026-08-31 22:43:47
[2026-08-31 22:43:47,833.833 INFO    ] 2026-08-31 22:43:47
[2026-08-31 22:43:47,886.886 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:43:48,133.133 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:43:48,141.141 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:43:48,340.340 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:43:48,376.376 INFO    ] time= 31/08/2026 22:43:48
[2026-08-31 22:43:48,382.382 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:43:48,401.401 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:43:48,505.505 INFO    ] No existing commands found in stream
[2026-08-31 22:43:53,530.530 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:43:53,533.533 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-08-31 22:43:57,822.822 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 22:43:57,825.825 INFO    ] Checking for system updates...
[2026-08-31 22:43:57,861.861 INFO    ] 200
[2026-08-31 22:43:57,864.864 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:43:57,925.925 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:43:57,927.927 INFO    ] No update needed
[2026-08-31 22:43:57,930.930 INFO    ] Checking for camera pi updates...
[2026-08-31 22:43:57,963.963 INFO    ] 200
[2026-08-31 22:43:57,966.966 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:43:58,011.011 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:43:58,097.097 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:43:58,100.100 INFO    ] No camera update needed
[2026-08-31 22:43:58,102.102 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:43:58,105.105 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:43:58,110.110 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:43:58,115.115 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:44:00,156.156 INFO    ] ================================================
[2026-08-31 22:44:00,171.171 INFO    ] Launching Daemon at Mon Aug 31 22:44:00 IST 2026
[2026-08-31 22:44:00,182.182 INFO    ] ================================================
[2026-08-31 22:44:00,802.802 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:44:00
[2026-08-31 22:44:01,393.393 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:44:01,648.648 INFO    ] Initializing speech engine...
[2026-08-31 22:44:01,652.652 INFO    ] 2026-08-31 22:44:01
[2026-08-31 22:44:02,060.060 INFO    ] 2026-08-31 22:44:02
[2026-08-31 22:44:02,127.127 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:44:02,321.321 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:44:02,330.330 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:44:02,447.447 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:44:02,504.504 INFO    ] time= 31/08/2026 22:44:02
[2026-08-31 22:44:02,514.514 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:44:02,521.521 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:44:02,639.639 INFO    ] No existing commands found in stream
[2026-08-31 22:44:07,668.668 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:44:07,670.670 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-08-31 22:44:08,579.579 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 22:44:08,582.582 INFO    ] Checking for system updates...
[2026-08-31 22:44:08,621.621 INFO    ] 200
[2026-08-31 22:44:08,623.623 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:44:08,681.681 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:44:08,684.684 INFO    ] No update needed
[2026-08-31 22:44:08,686.686 INFO    ] Checking for camera pi updates...
[2026-08-31 22:44:08,723.723 INFO    ] 200
[2026-08-31 22:44:08,725.725 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:44:08,770.770 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:44:08,884.884 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:44:08,886.886 INFO    ] No camera update needed
[2026-08-31 22:44:08,889.889 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:44:08,891.891 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:44:08,896.896 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:44:08,902.902 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:44:10,942.942 INFO    ] ================================================
[2026-08-31 22:44:10,957.957 INFO    ] Launching Daemon at Mon Aug 31 22:44:10 IST 2026
[2026-08-31 22:44:10,968.968 INFO    ] ================================================
[2026-08-31 22:44:11,548.548 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:44:11
[2026-08-31 22:44:12,146.146 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:44:12,418.418 INFO    ] Initializing speech engine...
[2026-08-31 22:44:12,427.427 INFO    ] 2026-08-31 22:44:12
[2026-08-31 22:44:12,675.675 INFO    ] 2026-08-31 22:44:12
[2026-08-31 22:44:12,741.741 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:44:13,022.022 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:44:13,030.030 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:44:13,193.193 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:44:13,229.229 INFO    ] time= 31/08/2026 22:44:13
[2026-08-31 22:44:13,235.235 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:44:13,252.252 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:44:13,358.358 INFO    ] No existing commands found in stream
[2026-08-31 22:44:18,388.388 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:44:18,391.391 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-08-31 22:44:22,783.783 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 22:44:22,786.786 INFO    ] Checking for system updates...
[2026-08-31 22:44:22,826.826 INFO    ] 200
[2026-08-31 22:44:22,829.829 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:44:22,886.886 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:44:22,889.889 INFO    ] No update needed
[2026-08-31 22:44:22,891.891 INFO    ] Checking for camera pi updates...
[2026-08-31 22:44:22,925.925 INFO    ] 200
[2026-08-31 22:44:22,928.928 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:44:22,976.976 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:44:23,056.056 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:44:23,059.059 INFO    ] No camera update needed
[2026-08-31 22:44:23,061.061 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:44:23,063.063 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:44:23,069.069 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:44:23,074.074 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:44:25,116.116 INFO    ] ================================================
[2026-08-31 22:44:25,130.130 INFO    ] Launching Daemon at Mon Aug 31 22:44:25 IST 2026
[2026-08-31 22:44:25,141.141 INFO    ] ================================================
[2026-08-31 22:44:25,704.704 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:44:25
[2026-08-31 22:44:26,301.301 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:44:26,559.559 INFO    ] Initializing speech engine...
[2026-08-31 22:44:26,575.575 INFO    ] 2026-08-31 22:44:26
[2026-08-31 22:44:26,828.828 INFO    ] 2026-08-31 22:44:26
[2026-08-31 22:44:26,864.864 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:44:27,044.044 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:44:27,064.064 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:44:27,248.248 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:44:27,267.267 INFO    ] time= 31/08/2026 22:44:27
[2026-08-31 22:44:27,327.327 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:44:27,381.381 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:44:27,441.441 INFO    ] No existing commands found in stream
[2026-08-31 22:44:32,449.449 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:44:32,453.453 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-08-31 22:44:33,244.244 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 22:44:33,246.246 INFO    ] Checking for system updates...
[2026-08-31 22:44:33,285.285 INFO    ] 200
[2026-08-31 22:44:33,288.288 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:44:33,340.340 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:44:33,342.342 INFO    ] No update needed
[2026-08-31 22:44:33,344.344 INFO    ] Checking for camera pi updates...
[2026-08-31 22:44:33,382.382 INFO    ] 200
[2026-08-31 22:44:33,384.384 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:44:33,429.429 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:44:33,512.512 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:44:33,514.514 INFO    ] No camera update needed
[2026-08-31 22:44:33,516.516 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:44:33,519.519 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:44:33,524.524 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:44:33,529.529 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:44:35,570.570 INFO    ] ================================================
[2026-08-31 22:44:35,585.585 INFO    ] Launching Daemon at Mon Aug 31 22:44:35 IST 2026
[2026-08-31 22:44:35,596.596 INFO    ] ================================================
[2026-08-31 22:44:36,193.193 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:44:36
[2026-08-31 22:44:36,776.776 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:44:37,024.024 INFO    ] Initializing speech engine...
[2026-08-31 22:44:37,038.038 INFO    ] 2026-08-31 22:44:37
[2026-08-31 22:44:37,305.305 INFO    ] 2026-08-31 22:44:37
[2026-08-31 22:44:37,341.341 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:44:37,516.516 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:44:37,528.528 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:44:37,676.676 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:44:37,682.682 INFO    ] time= 31/08/2026 22:44:37
[2026-08-31 22:44:37,688.688 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:44:37,739.739 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:44:37,868.868 INFO    ] No existing commands found in stream
[2026-08-31 22:44:42,894.894 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:44:42,896.896 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-08-31 22:44:43,466.466 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 22:44:43,469.469 INFO    ] Checking for system updates...
[2026-08-31 22:44:43,508.508 INFO    ] 200
[2026-08-31 22:44:43,510.510 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:44:43,569.569 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:44:43,572.572 INFO    ] No update needed
[2026-08-31 22:44:43,574.574 INFO    ] Checking for camera pi updates...
[2026-08-31 22:44:43,611.611 INFO    ] 200
[2026-08-31 22:44:43,614.614 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:44:43,659.659 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:44:43,729.729 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:44:43,731.731 INFO    ] No camera update needed
[2026-08-31 22:44:43,733.733 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:44:43,736.736 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:44:43,741.741 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:44:43,746.746 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:44:45,787.787 INFO    ] ================================================
[2026-08-31 22:44:45,803.803 INFO    ] Launching Daemon at Mon Aug 31 22:44:45 IST 2026
[2026-08-31 22:44:45,819.819 INFO    ] ================================================
[2026-08-31 22:44:46,389.389 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:44:46
[2026-08-31 22:44:46,971.971 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:44:47,241.241 INFO    ] Initializing speech engine...
[2026-08-31 22:44:47,261.261 INFO    ] 2026-08-31 22:44:47
[2026-08-31 22:44:47,531.531 INFO    ] 2026-08-31 22:44:47
[2026-08-31 22:44:47,567.567 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:44:47,765.765 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:44:47,779.779 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:44:47,941.941 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:44:47,950.950 INFO    ] time= 31/08/2026 22:44:47
[2026-08-31 22:44:47,955.955 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:44:47,962.962 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:44:48,037.037 INFO    ] No existing commands found in stream
[2026-08-31 22:44:53,053.053 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:44:53,055.055 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-08-31 22:44:56,779.779 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 22:44:56,782.782 INFO    ] Checking for system updates...
[2026-08-31 22:44:56,821.821 INFO    ] 200
[2026-08-31 22:44:56,824.824 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:44:56,882.882 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:44:56,885.885 INFO    ] No update needed
[2026-08-31 22:44:56,888.888 INFO    ] Checking for camera pi updates...
[2026-08-31 22:44:56,925.925 INFO    ] 200
[2026-08-31 22:44:56,928.928 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:44:56,969.969 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:44:57,157.157 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:44:57,160.160 INFO    ] No camera update needed
[2026-08-31 22:44:57,162.162 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:44:57,165.165 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:44:57,170.170 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:44:57,175.175 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:44:59,215.215 INFO    ] ================================================
[2026-08-31 22:44:59,230.230 INFO    ] Launching Daemon at Mon Aug 31 22:44:59 IST 2026
[2026-08-31 22:44:59,240.240 INFO    ] ================================================
[2026-08-31 22:44:59,862.862 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:44:59
[2026-08-31 22:45:00,462.462 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:45:00,718.718 INFO    ] Initializing speech engine...
[2026-08-31 22:45:00,743.743 INFO    ] 2026-08-31 22:45:00
[2026-08-31 22:45:01,012.012 INFO    ] 2026-08-31 22:45:01
[2026-08-31 22:45:01,048.048 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:45:01,312.312 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:45:01,322.322 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:45:01,458.458 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:45:01,506.506 INFO    ] time= 31/08/2026 22:45:01
[2026-08-31 22:45:01,562.562 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:45:01,603.603 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:45:01,714.714 INFO    ] No existing commands found in stream
[2026-08-31 22:45:06,733.733 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:45:06,736.736 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-08-31 22:45:07,856.856 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 22:45:07,860.860 INFO    ] Checking for system updates...
[2026-08-31 22:45:07,900.900 INFO    ] 200
[2026-08-31 22:45:07,902.902 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:45:07,962.962 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:45:07,965.965 INFO    ] No update needed
[2026-08-31 22:45:07,967.967 INFO    ] Checking for camera pi updates...
[2026-08-31 22:45:08,004.004 INFO    ] 200
[2026-08-31 22:45:08,007.007 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:45:08,052.052 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:45:08,154.154 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:45:08,156.156 INFO    ] No camera update needed
[2026-08-31 22:45:08,159.159 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:45:08,161.161 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:45:08,167.167 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:45:08,172.172 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:45:10,212.212 INFO    ] ================================================
[2026-08-31 22:45:10,228.228 INFO    ] Launching Daemon at Mon Aug 31 22:45:10 IST 2026
[2026-08-31 22:45:10,239.239 INFO    ] ================================================
[2026-08-31 22:45:10,814.814 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:45:10
[2026-08-31 22:45:11,402.402 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:45:11,673.673 INFO    ] Initializing speech engine...
[2026-08-31 22:45:11,682.682 INFO    ] 2026-08-31 22:45:11
[2026-08-31 22:45:11,931.931 INFO    ] 2026-08-31 22:45:11
[2026-08-31 22:45:11,966.966 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:45:12,165.165 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:45:12,178.178 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:45:12,372.372 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:45:12,426.426 INFO    ] time= 31/08/2026 22:45:12
[2026-08-31 22:45:12,480.480 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:45:12,507.507 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:45:12,563.563 INFO    ] No existing commands found in stream
[2026-08-31 22:45:17,575.575 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:45:17,578.578 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-08-31 22:45:21,972.972 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 22:45:21,974.974 INFO    ] Checking for system updates...
[2026-08-31 22:45:22,013.013 INFO    ] 200
[2026-08-31 22:45:22,016.016 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:45:22,075.075 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:45:22,078.078 INFO    ] No update needed
[2026-08-31 22:45:22,080.080 INFO    ] Checking for camera pi updates...
[2026-08-31 22:45:22,117.117 INFO    ] 200
[2026-08-31 22:45:22,120.120 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:45:22,161.161 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:45:22,242.242 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:45:22,245.245 INFO    ] No camera update needed
[2026-08-31 22:45:22,248.248 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:45:22,251.251 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:45:22,257.257 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:45:22,263.263 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:45:24,303.303 INFO    ] ================================================
[2026-08-31 22:45:24,319.319 INFO    ] Launching Daemon at Mon Aug 31 22:45:24 IST 2026
[2026-08-31 22:45:24,329.329 INFO    ] ================================================
[2026-08-31 22:45:24,982.982 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:45:24
[2026-08-31 22:45:25,656.656 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:45:25,961.961 INFO    ] Initializing speech engine...
[2026-08-31 22:45:25,975.975 INFO    ] 2026-08-31 22:45:25
[2026-08-31 22:45:26,271.271 INFO    ] 2026-08-31 22:45:26
[2026-08-31 22:45:26,384.384 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:45:26,543.543 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:45:26,550.550 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:45:26,772.772 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:45:26,815.815 INFO    ] time= 31/08/2026 22:45:26
[2026-08-31 22:45:26,834.834 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:45:26,844.844 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:45:27,006.006 INFO    ] No existing commands found in stream
[2026-08-31 22:45:32,042.042 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:45:32,046.046 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-08-31 22:45:35,973.973 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 22:45:35,976.976 INFO    ] Checking for system updates...
[2026-08-31 22:45:36,015.015 INFO    ] 200
[2026-08-31 22:45:36,018.018 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:45:36,087.087 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:45:36,090.090 INFO    ] No update needed
[2026-08-31 22:45:36,093.093 INFO    ] Checking for camera pi updates...
[2026-08-31 22:45:36,132.132 INFO    ] 200
[2026-08-31 22:45:36,135.135 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:45:36,187.187 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:45:36,278.278 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:45:36,281.281 INFO    ] No camera update needed
[2026-08-31 22:45:36,283.283 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:45:36,286.286 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:45:36,292.292 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:45:36,298.298 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:45:38,339.339 INFO    ] ================================================
[2026-08-31 22:45:38,354.354 INFO    ] Launching Daemon at Mon Aug 31 22:45:38 IST 2026
[2026-08-31 22:45:38,365.365 INFO    ] ================================================
[2026-08-31 22:45:38,947.947 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:45:38
[2026-08-31 22:45:39,546.546 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:45:39,825.825 INFO    ] Initializing speech engine...
[2026-08-31 22:45:39,833.833 INFO    ] 2026-08-31 22:45:39
[2026-08-31 22:45:40,094.094 INFO    ] 2026-08-31 22:45:40
[2026-08-31 22:45:40,148.148 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:45:40,374.374 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:45:40,380.380 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:45:40,513.513 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:45:40,548.548 INFO    ] time= 31/08/2026 22:45:40
[2026-08-31 22:45:40,608.608 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:45:40,644.644 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:45:40,771.771 INFO    ] No existing commands found in stream
[2026-08-31 22:45:45,799.799 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:45:45,802.802 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-08-31 22:45:50,018.018 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 22:45:50,021.021 INFO    ] Checking for system updates...
[2026-08-31 22:45:50,057.057 INFO    ] 200
[2026-08-31 22:45:50,060.060 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:45:50,119.119 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:45:50,122.122 INFO    ] No update needed
[2026-08-31 22:45:50,124.124 INFO    ] Checking for camera pi updates...
[2026-08-31 22:45:50,161.161 INFO    ] 200
[2026-08-31 22:45:50,164.164 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:45:50,204.204 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:45:50,288.288 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:45:50,290.290 INFO    ] No camera update needed
[2026-08-31 22:45:50,292.292 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:45:50,295.295 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:45:50,300.300 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:45:50,305.305 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:45:52,345.345 INFO    ] ================================================
[2026-08-31 22:45:52,360.360 INFO    ] Launching Daemon at Mon Aug 31 22:45:52 IST 2026
[2026-08-31 22:45:52,371.371 INFO    ] ================================================
[2026-08-31 22:45:53,032.032 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:45:53
[2026-08-31 22:45:53,691.691 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:45:53,993.993 INFO    ] Initializing speech engine...
[2026-08-31 22:45:54,000.000 INFO    ] 2026-08-31 22:45:53
[2026-08-31 22:45:54,279.279 INFO    ] 2026-08-31 22:45:54
[2026-08-31 22:45:54,338.338 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:45:54,565.565 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:45:54,575.575 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:45:54,714.714 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:45:54,754.754 INFO    ] time= 31/08/2026 22:45:54
[2026-08-31 22:45:54,813.813 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:45:54,850.850 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:45:54,970.970 INFO    ] No existing commands found in stream
[2026-08-31 22:46:00,003.003 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:46:00,006.006 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-08-31 22:46:02,411.411 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 22:46:02,415.415 INFO    ] Checking for system updates...
[2026-08-31 22:46:02,465.465 INFO    ] 200
[2026-08-31 22:46:02,469.469 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:46:02,533.533 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:46:02,536.536 INFO    ] No update needed
[2026-08-31 22:46:02,539.539 INFO    ] Checking for camera pi updates...
[2026-08-31 22:46:02,581.581 INFO    ] 200
[2026-08-31 22:46:02,584.584 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:46:02,637.637 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:46:02,735.735 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:46:02,738.738 INFO    ] No camera update needed
[2026-08-31 22:46:02,741.741 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:46:02,744.744 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:46:02,751.751 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:46:02,757.757 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:46:04,798.798 INFO    ] ================================================
[2026-08-31 22:46:04,813.813 INFO    ] Launching Daemon at Mon Aug 31 22:46:04 IST 2026
[2026-08-31 22:46:04,824.824 INFO    ] ================================================
[2026-08-31 22:46:05,470.470 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:46:05
[2026-08-31 22:46:06,137.137 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:46:06,439.439 INFO    ] Initializing speech engine...
[2026-08-31 22:46:06,448.448 INFO    ] 2026-08-31 22:46:06
[2026-08-31 22:46:06,722.722 INFO    ] 2026-08-31 22:46:06
[2026-08-31 22:46:06,776.776 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:46:07,023.023 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:46:07,025.025 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:46:07,164.164 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:46:07,229.229 INFO    ] time= 31/08/2026 22:46:07
[2026-08-31 22:46:07,278.278 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:46:07,299.299 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:46:07,420.420 INFO    ] No existing commands found in stream
[2026-08-31 22:46:12,445.445 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:46:12,448.448 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-08-31 22:46:14,650.650 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 22:46:14,652.652 INFO    ] Checking for system updates...
[2026-08-31 22:46:14,689.689 INFO    ] 200
[2026-08-31 22:46:14,691.691 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:46:14,750.750 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:46:14,752.752 INFO    ] No update needed
[2026-08-31 22:46:14,755.755 INFO    ] Checking for camera pi updates...
[2026-08-31 22:46:14,788.788 INFO    ] 200
[2026-08-31 22:46:14,790.790 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:46:14,831.831 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:46:14,928.928 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:46:14,930.930 INFO    ] No camera update needed
[2026-08-31 22:46:14,933.933 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:46:14,935.935 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:46:14,940.940 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:46:14,945.945 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:46:16,988.988 INFO    ] ================================================
[2026-08-31 22:46:17,002.002 INFO    ] Launching Daemon at Mon Aug 31 22:46:16 IST 2026
[2026-08-31 22:46:17,013.013 INFO    ] ================================================
[2026-08-31 22:46:17,580.580 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:46:17
[2026-08-31 22:46:18,167.167 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:46:18,437.437 INFO    ] Initializing speech engine...
[2026-08-31 22:46:18,446.446 INFO    ] 2026-08-31 22:46:18
[2026-08-31 22:46:18,697.697 INFO    ] 2026-08-31 22:46:18
[2026-08-31 22:46:18,732.732 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:46:18,993.993 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:46:18,999.999 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:46:19,135.135 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:46:19,179.179 INFO    ] time= 31/08/2026 22:46:19
[2026-08-31 22:46:19,233.233 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:46:19,269.269 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:46:19,418.418 INFO    ] No existing commands found in stream
[2026-08-31 22:46:24,432.432 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:46:24,435.435 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-08-31 22:46:28,643.643 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 22:46:28,645.645 INFO    ] Checking for system updates...
[2026-08-31 22:46:28,685.685 INFO    ] 200
[2026-08-31 22:46:28,688.688 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:46:28,747.747 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:46:28,750.750 INFO    ] No update needed
[2026-08-31 22:46:28,754.754 INFO    ] Checking for camera pi updates...
[2026-08-31 22:46:28,789.789 INFO    ] 200
[2026-08-31 22:46:28,791.791 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:46:28,837.837 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:46:28,937.937 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:46:28,939.939 INFO    ] No camera update needed
[2026-08-31 22:46:28,941.941 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:46:28,944.944 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:46:28,949.949 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:46:28,954.954 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:46:31,996.996 INFO    ] ================================================
[2026-08-31 22:46:31,011.011 INFO    ] Launching Daemon at Mon Aug 31 22:46:31 IST 2026
[2026-08-31 22:46:31,022.022 INFO    ] ================================================
[2026-08-31 22:46:31,588.588 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:46:31
[2026-08-31 22:46:32,195.195 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:46:32,462.462 INFO    ] Initializing speech engine...
[2026-08-31 22:46:32,472.472 INFO    ] 2026-08-31 22:46:32
[2026-08-31 22:46:32,794.794 INFO    ] 2026-08-31 22:46:32
[2026-08-31 22:46:32,832.832 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:46:33,034.034 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:46:33,041.041 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:46:33,231.231 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:46:33,234.234 INFO    ] time= 31/08/2026 22:46:33
[2026-08-31 22:46:33,243.243 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:46:33,251.251 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:46:33,325.325 INFO    ] No existing commands found in stream
[2026-08-31 22:46:38,366.366 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:46:38,369.369 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-08-31 22:46:39,461.461 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 22:46:39,463.463 INFO    ] Checking for system updates...
[2026-08-31 22:46:39,501.501 INFO    ] 200
[2026-08-31 22:46:39,504.504 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:46:39,561.561 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:46:39,564.564 INFO    ] No update needed
[2026-08-31 22:46:39,566.566 INFO    ] Checking for camera pi updates...
[2026-08-31 22:46:39,600.600 INFO    ] 200
[2026-08-31 22:46:39,602.602 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:46:39,642.642 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:46:39,731.731 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:46:39,733.733 INFO    ] No camera update needed
[2026-08-31 22:46:39,735.735 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:46:39,738.738 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:46:39,743.743 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:46:39,754.754 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:46:41,793.793 INFO    ] ================================================
[2026-08-31 22:46:41,808.808 INFO    ] Launching Daemon at Mon Aug 31 22:46:41 IST 2026
[2026-08-31 22:46:41,819.819 INFO    ] ================================================
[2026-08-31 22:46:42,450.450 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:46:42
[2026-08-31 22:46:43,100.100 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:46:43,398.398 INFO    ] Initializing speech engine...
[2026-08-31 22:46:43,405.405 INFO    ] 2026-08-31 22:46:43
[2026-08-31 22:46:43,673.673 INFO    ] 2026-08-31 22:46:43
[2026-08-31 22:46:43,733.733 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:46:43,961.961 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:46:43,971.971 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:46:44,108.108 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:46:44,185.185 INFO    ] time= 31/08/2026 22:46:44
[2026-08-31 22:46:44,240.240 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:46:44,247.247 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:46:44,380.380 INFO    ] No existing commands found in stream
[2026-08-31 22:46:49,404.404 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:46:49,407.407 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-08-31 22:46:52,855.855 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 22:46:52,858.858 INFO    ] Checking for system updates...
[2026-08-31 22:46:52,895.895 INFO    ] 200
[2026-08-31 22:46:52,897.897 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:46:52,951.951 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:46:52,954.954 INFO    ] No update needed
[2026-08-31 22:46:52,956.956 INFO    ] Checking for camera pi updates...
[2026-08-31 22:46:52,994.994 INFO    ] 200
[2026-08-31 22:46:52,997.997 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:46:53,037.037 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:46:53,118.118 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:46:53,121.121 INFO    ] No camera update needed
[2026-08-31 22:46:53,123.123 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:46:53,125.125 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:46:53,131.131 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:46:53,136.136 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:46:55,176.176 INFO    ] ================================================
[2026-08-31 22:46:55,191.191 INFO    ] Launching Daemon at Mon Aug 31 22:46:55 IST 2026
[2026-08-31 22:46:55,201.201 INFO    ] ================================================
[2026-08-31 22:46:55,831.831 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:46:55
[2026-08-31 22:46:56,482.482 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:46:56,785.785 INFO    ] Initializing speech engine...
[2026-08-31 22:46:56,798.798 INFO    ] 2026-08-31 22:46:56
[2026-08-31 22:46:57,068.068 INFO    ] 2026-08-31 22:46:57
[2026-08-31 22:46:57,123.123 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:46:57,352.352 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:46:57,358.358 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:46:57,494.494 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:46:57,546.546 INFO    ] time= 31/08/2026 22:46:57
[2026-08-31 22:46:57,596.596 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:46:57,631.631 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:46:57,767.767 INFO    ] No existing commands found in stream
[2026-08-31 22:47:02,790.790 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:47:02,793.793 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-08-31 22:47:06,885.885 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 22:47:06,888.888 INFO    ] Checking for system updates...
[2026-08-31 22:47:06,924.924 INFO    ] 200
[2026-08-31 22:47:06,927.927 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:47:06,981.981 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:47:06,983.983 INFO    ] No update needed
[2026-08-31 22:47:06,986.986 INFO    ] Checking for camera pi updates...
[2026-08-31 22:47:07,022.022 INFO    ] 200
[2026-08-31 22:47:07,025.025 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:47:07,065.065 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:47:07,147.147 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:47:07,150.150 INFO    ] No camera update needed
[2026-08-31 22:47:07,152.152 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:47:07,154.154 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:47:07,160.160 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:47:07,165.165 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:47:09,205.205 INFO    ] ================================================
[2026-08-31 22:47:09,221.221 INFO    ] Launching Daemon at Mon Aug 31 22:47:09 IST 2026
[2026-08-31 22:47:09,232.232 INFO    ] ================================================
[2026-08-31 22:47:09,851.851 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:47:09
[2026-08-31 22:47:10,489.489 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:47:10,787.787 INFO    ] Initializing speech engine...
[2026-08-31 22:47:10,797.797 INFO    ] 2026-08-31 22:47:10
[2026-08-31 22:47:11,066.066 INFO    ] 2026-08-31 22:47:11
[2026-08-31 22:47:11,118.118 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:47:11,345.345 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:47:11,351.351 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:47:11,482.482 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:47:11,515.515 INFO    ] time= 31/08/2026 22:47:11
[2026-08-31 22:47:11,575.575 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:47:11,622.622 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:47:11,702.702 INFO    ] No existing commands found in stream
[2026-08-31 22:47:16,739.739 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:47:16,742.742 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-08-31 22:47:17,859.859 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 22:47:17,862.862 INFO    ] Checking for system updates...
[2026-08-31 22:47:17,897.897 INFO    ] 200
[2026-08-31 22:47:17,900.900 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:47:17,956.956 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:47:17,959.959 INFO    ] No update needed
[2026-08-31 22:47:17,961.961 INFO    ] Checking for camera pi updates...
[2026-08-31 22:47:17,997.997 INFO    ] 200
[2026-08-31 22:47:18,000.000 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:47:18,040.040 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:47:18,107.107 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:47:18,110.110 INFO    ] No camera update needed
[2026-08-31 22:47:18,112.112 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:47:18,115.115 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:47:18,120.120 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:47:18,125.125 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:47:20,164.164 INFO    ] ================================================
[2026-08-31 22:47:20,179.179 INFO    ] Launching Daemon at Mon Aug 31 22:47:20 IST 2026
[2026-08-31 22:47:20,190.190 INFO    ] ================================================
[2026-08-31 22:47:20,767.767 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:47:20
[2026-08-31 22:47:21,360.360 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:47:21,640.640 INFO    ] Initializing speech engine...
[2026-08-31 22:47:21,645.645 INFO    ] 2026-08-31 22:47:21
[2026-08-31 22:47:21,907.907 INFO    ] 2026-08-31 22:47:21
[2026-08-31 22:47:21,960.960 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:47:22,187.187 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:47:22,193.193 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:47:22,415.415 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:47:22,449.449 INFO    ] time= 31/08/2026 22:47:22
[2026-08-31 22:47:22,455.455 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:47:22,473.473 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:47:22,605.605 INFO    ] No existing commands found in stream
[2026-08-31 22:47:27,634.634 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:47:27,636.636 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-08-31 22:47:29,339.339 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 22:47:29,341.341 INFO    ] Checking for system updates...
[2026-08-31 22:47:29,377.377 INFO    ] 200
[2026-08-31 22:47:29,379.379 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:47:29,431.431 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:47:29,434.434 INFO    ] No update needed
[2026-08-31 22:47:29,437.437 INFO    ] Checking for camera pi updates...
[2026-08-31 22:47:29,473.473 INFO    ] 200
[2026-08-31 22:47:29,475.475 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:47:29,515.515 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:47:29,576.576 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:47:29,579.579 INFO    ] No camera update needed
[2026-08-31 22:47:29,581.581 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:47:29,583.583 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:47:29,589.589 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:47:29,594.594 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:47:31,634.634 INFO    ] ================================================
[2026-08-31 22:47:31,649.649 INFO    ] Launching Daemon at Mon Aug 31 22:47:31 IST 2026
[2026-08-31 22:47:31,660.660 INFO    ] ================================================
[2026-08-31 22:47:32,279.279 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:47:32
[2026-08-31 22:47:32,891.891 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:47:33,151.151 INFO    ] Initializing speech engine...
[2026-08-31 22:47:33,164.164 INFO    ] 2026-08-31 22:47:33
[2026-08-31 22:47:33,453.453 INFO    ] 2026-08-31 22:47:33
[2026-08-31 22:47:33,489.489 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:47:33,744.744 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:47:33,750.750 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:47:33,965.965 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:47:34,014.014 INFO    ] time= 31/08/2026 22:47:33
[2026-08-31 22:47:34,021.021 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:47:34,038.038 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:47:34,173.173 INFO    ] No existing commands found in stream
[2026-08-31 22:47:39,185.185 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:47:39,188.188 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-08-31 22:47:40,868.868 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 22:47:40,870.870 INFO    ] Checking for system updates...
[2026-08-31 22:47:40,906.906 INFO    ] 200
[2026-08-31 22:47:40,909.909 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:47:40,965.965 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:47:40,968.968 INFO    ] No update needed
[2026-08-31 22:47:40,970.970 INFO    ] Checking for camera pi updates...
[2026-08-31 22:47:41,004.004 INFO    ] 200
[2026-08-31 22:47:41,006.006 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:47:41,049.049 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:47:41,109.109 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:47:41,111.111 INFO    ] No camera update needed
[2026-08-31 22:47:41,114.114 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:47:41,116.116 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:47:41,121.121 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:47:41,126.126 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:47:43,165.165 INFO    ] ================================================
[2026-08-31 22:47:43,180.180 INFO    ] Launching Daemon at Mon Aug 31 22:47:43 IST 2026
[2026-08-31 22:47:43,190.190 INFO    ] ================================================
[2026-08-31 22:47:43,811.811 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:47:43
[2026-08-31 22:47:44,450.450 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:47:44,747.747 INFO    ] Initializing speech engine...
[2026-08-31 22:47:44,758.758 INFO    ] 2026-08-31 22:47:44
[2026-08-31 22:47:45,038.038 INFO    ] 2026-08-31 22:47:45
[2026-08-31 22:47:45,147.147 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:47:45,359.359 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:47:45,364.364 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:47:45,559.559 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:47:45,565.565 INFO    ] time= 31/08/2026 22:47:45
[2026-08-31 22:47:45,583.583 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:47:45,606.606 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:47:45,719.719 INFO    ] No existing commands found in stream
[2026-08-31 22:47:50,739.739 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:47:50,742.742 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-08-31 22:47:54,051.051 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 22:47:54,053.053 INFO    ] Checking for system updates...
[2026-08-31 22:47:54,090.090 INFO    ] 200
[2026-08-31 22:47:54,093.093 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:47:54,146.146 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:47:54,149.149 INFO    ] No update needed
[2026-08-31 22:47:54,151.151 INFO    ] Checking for camera pi updates...
[2026-08-31 22:47:54,189.189 INFO    ] 200
[2026-08-31 22:47:54,192.192 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:47:54,241.241 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:47:54,330.330 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:47:54,333.333 INFO    ] No camera update needed
[2026-08-31 22:47:54,335.335 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:47:54,338.338 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:47:54,344.344 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:47:54,350.350 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:47:56,389.389 INFO    ] ================================================
[2026-08-31 22:47:56,404.404 INFO    ] Launching Daemon at Mon Aug 31 22:47:56 IST 2026
[2026-08-31 22:47:56,415.415 INFO    ] ================================================
[2026-08-31 22:47:56,978.978 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:47:56
[2026-08-31 22:47:57,558.558 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:47:57,812.812 INFO    ] Initializing speech engine...
[2026-08-31 22:47:57,818.818 INFO    ] 2026-08-31 22:47:57
[2026-08-31 22:47:58,106.106 INFO    ] 2026-08-31 22:47:58
[2026-08-31 22:47:58,143.143 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:47:58,363.363 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:47:58,423.423 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:47:58,581.581 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:47:58,623.623 INFO    ] time= 31/08/2026 22:47:58
[2026-08-31 22:47:58,679.679 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:47:58,729.729 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:47:58,852.852 INFO    ] No existing commands found in stream
[2026-08-31 22:48:03,871.871 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:48:03,874.874 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-08-31 22:48:05,143.143 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 22:48:05,146.146 INFO    ] Checking for system updates...
[2026-08-31 22:48:05,182.182 INFO    ] 200
[2026-08-31 22:48:05,185.185 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:48:05,242.242 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:48:05,244.244 INFO    ] No update needed
[2026-08-31 22:48:05,246.246 INFO    ] Checking for camera pi updates...
[2026-08-31 22:48:05,279.279 INFO    ] 200
[2026-08-31 22:48:05,282.282 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:48:05,326.326 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:48:05,406.406 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:48:05,409.409 INFO    ] No camera update needed
[2026-08-31 22:48:05,411.411 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:48:05,413.413 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:48:05,419.419 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:48:05,424.424 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:48:07,464.464 INFO    ] ================================================
[2026-08-31 22:48:07,479.479 INFO    ] Launching Daemon at Mon Aug 31 22:48:07 IST 2026
[2026-08-31 22:48:07,489.489 INFO    ] ================================================
[2026-08-31 22:48:08,069.069 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:48:08
[2026-08-31 22:48:08,665.665 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:48:08,937.937 INFO    ] Initializing speech engine...
[2026-08-31 22:48:08,956.956 INFO    ] 2026-08-31 22:48:08
[2026-08-31 22:48:09,219.219 INFO    ] 2026-08-31 22:48:09
[2026-08-31 22:48:09,254.254 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:48:09,453.453 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:48:09,470.470 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:48:09,613.613 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:48:09,621.621 INFO    ] time= 31/08/2026 22:48:09
[2026-08-31 22:48:09,629.629 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:48:09,681.681 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:48:09,819.819 INFO    ] No existing commands found in stream
[2026-08-31 22:48:14,844.844 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:48:14,847.847 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-08-31 22:48:19,253.253 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 22:48:19,256.256 INFO    ] Checking for system updates...
[2026-08-31 22:48:19,292.292 INFO    ] 200
[2026-08-31 22:48:19,295.295 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:48:19,347.347 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:48:19,349.349 INFO    ] No update needed
[2026-08-31 22:48:19,352.352 INFO    ] Checking for camera pi updates...
[2026-08-31 22:48:19,387.387 INFO    ] 200
[2026-08-31 22:48:19,390.390 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:48:19,430.430 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:48:19,516.516 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:48:19,518.518 INFO    ] No camera update needed
[2026-08-31 22:48:19,521.521 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:48:19,523.523 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:48:19,528.528 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:48:19,533.533 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:48:21,575.575 INFO    ] ================================================
[2026-08-31 22:48:21,591.591 INFO    ] Launching Daemon at Mon Aug 31 22:48:21 IST 2026
[2026-08-31 22:48:21,602.602 INFO    ] ================================================
[2026-08-31 22:48:22,167.167 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:48:22
[2026-08-31 22:48:22,750.750 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:48:23,001.001 INFO    ] Initializing speech engine...
[2026-08-31 22:48:23,008.008 INFO    ] 2026-08-31 22:48:23
[2026-08-31 22:48:23,294.294 INFO    ] 2026-08-31 22:48:23
[2026-08-31 22:48:23,331.331 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:48:23,532.532 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:48:23,548.548 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:48:23,693.693 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:48:23,698.698 INFO    ] time= 31/08/2026 22:48:23
[2026-08-31 22:48:23,704.704 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:48:23,751.751 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:48:23,883.883 INFO    ] No existing commands found in stream
[2026-08-31 22:48:28,914.914 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:48:28,916.916 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-08-31 22:48:29,858.858 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 22:48:29,861.861 INFO    ] Checking for system updates...
[2026-08-31 22:48:29,899.899 INFO    ] 200
[2026-08-31 22:48:29,902.902 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:48:29,955.955 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:48:29,958.958 INFO    ] No update needed
[2026-08-31 22:48:29,961.961 INFO    ] Checking for camera pi updates...
[2026-08-31 22:48:29,995.995 INFO    ] 200
[2026-08-31 22:48:29,998.998 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:48:30,042.042 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:48:30,132.132 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:48:30,134.134 INFO    ] No camera update needed
[2026-08-31 22:48:30,136.136 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:48:30,139.139 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:48:30,144.144 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:48:30,149.149 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:48:32,190.190 INFO    ] ================================================
[2026-08-31 22:48:32,206.206 INFO    ] Launching Daemon at Mon Aug 31 22:48:32 IST 2026
[2026-08-31 22:48:32,217.217 INFO    ] ================================================
[2026-08-31 22:48:32,829.829 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:48:32
[2026-08-31 22:48:33,448.448 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:48:33,726.726 INFO    ] Initializing speech engine...
[2026-08-31 22:48:33,740.740 INFO    ] 2026-08-31 22:48:33
[2026-08-31 22:48:34,005.005 INFO    ] 2026-08-31 22:48:33
[2026-08-31 22:48:34,041.041 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:48:34,233.233 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:48:34,246.246 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:48:34,402.402 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:48:34,410.410 INFO    ] time= 31/08/2026 22:48:34
[2026-08-31 22:48:34,414.414 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:48:34,420.420 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:48:34,494.494 INFO    ] No existing commands found in stream
[2026-08-31 22:48:39,530.530 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:48:39,533.533 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-08-31 22:48:43,606.606 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 22:48:43,609.609 INFO    ] Checking for system updates...
[2026-08-31 22:48:43,644.644 INFO    ] 200
[2026-08-31 22:48:43,647.647 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:48:43,700.700 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:48:43,702.702 INFO    ] No update needed
[2026-08-31 22:48:43,705.705 INFO    ] Checking for camera pi updates...
[2026-08-31 22:48:43,742.742 INFO    ] 200
[2026-08-31 22:48:43,745.745 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:48:43,788.788 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:48:43,871.871 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:48:43,874.874 INFO    ] No camera update needed
[2026-08-31 22:48:43,876.876 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:48:43,878.878 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:48:43,884.884 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:48:43,889.889 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:48:45,928.928 INFO    ] ================================================
[2026-08-31 22:48:45,943.943 INFO    ] Launching Daemon at Mon Aug 31 22:48:45 IST 2026
[2026-08-31 22:48:45,953.953 INFO    ] ================================================
[2026-08-31 22:48:46,520.520 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:48:46
[2026-08-31 22:48:47,105.105 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:48:47,360.360 INFO    ] Initializing speech engine...
[2026-08-31 22:48:47,376.376 INFO    ] 2026-08-31 22:48:47
[2026-08-31 22:48:47,654.654 INFO    ] 2026-08-31 22:48:47
[2026-08-31 22:48:47,691.691 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:48:47,884.884 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:48:47,897.897 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:48:48,018.018 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:48:48,024.024 INFO    ] time= 31/08/2026 22:48:48
[2026-08-31 22:48:48,044.044 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:48:48,066.066 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:48:48,149.149 INFO    ] No existing commands found in stream
[2026-08-31 22:48:53,165.165 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:48:53,168.168 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-08-31 22:48:56,265.265 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 22:48:56,267.267 INFO    ] Checking for system updates...
[2026-08-31 22:48:56,306.306 INFO    ] 200
[2026-08-31 22:48:56,308.308 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:48:56,360.360 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:48:56,363.363 INFO    ] No update needed
[2026-08-31 22:48:56,365.365 INFO    ] Checking for camera pi updates...
[2026-08-31 22:48:56,398.398 INFO    ] 200
[2026-08-31 22:48:56,400.400 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:48:56,445.445 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:48:56,505.505 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:48:56,507.507 INFO    ] No camera update needed
[2026-08-31 22:48:56,510.510 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:48:56,512.512 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:48:56,517.517 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:48:56,522.522 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:48:58,563.563 INFO    ] ================================================
[2026-08-31 22:48:58,578.578 INFO    ] Launching Daemon at Mon Aug 31 22:48:58 IST 2026
[2026-08-31 22:48:58,588.588 INFO    ] ================================================
[2026-08-31 22:48:59,167.167 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:48:59
[2026-08-31 22:48:59,765.765 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:49:00,025.025 INFO    ] Initializing speech engine...
[2026-08-31 22:49:00,031.031 INFO    ] 2026-08-31 22:49:00
[2026-08-31 22:49:00,322.322 INFO    ] 2026-08-31 22:49:00
[2026-08-31 22:49:00,360.360 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:49:00,564.564 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:49:00,582.582 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:49:00,726.726 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:49:00,736.736 INFO    ] time= 31/08/2026 22:49:00
[2026-08-31 22:49:00,742.742 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:49:00,747.747 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:49:00,819.819 INFO    ] No existing commands found in stream
[2026-08-31 22:49:05,835.835 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:49:05,838.838 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-08-31 22:49:07,770.770 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 22:49:07,772.772 INFO    ] Checking for system updates...
[2026-08-31 22:49:07,808.808 INFO    ] 200
[2026-08-31 22:49:07,810.810 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:49:07,862.862 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:49:07,865.865 INFO    ] No update needed
[2026-08-31 22:49:07,867.867 INFO    ] Checking for camera pi updates...
[2026-08-31 22:49:07,904.904 INFO    ] 200
[2026-08-31 22:49:07,906.906 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:49:07,947.947 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:49:08,131.131 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:49:08,133.133 INFO    ] No camera update needed
[2026-08-31 22:49:08,135.135 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:49:08,138.138 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:49:08,143.143 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:49:08,148.148 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:49:10,188.188 INFO    ] ================================================
[2026-08-31 22:49:10,203.203 INFO    ] Launching Daemon at Mon Aug 31 22:49:10 IST 2026
[2026-08-31 22:49:10,214.214 INFO    ] ================================================
[2026-08-31 22:49:10,779.779 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:49:10
[2026-08-31 22:49:11,363.363 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:49:11,619.619 INFO    ] Initializing speech engine...
[2026-08-31 22:49:11,642.642 INFO    ] 2026-08-31 22:49:11
[2026-08-31 22:49:11,916.916 INFO    ] 2026-08-31 22:49:11
[2026-08-31 22:49:11,951.951 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:49:12,173.173 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:49:12,180.180 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:49:12,284.284 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:49:12,289.289 INFO    ] time= 31/08/2026 22:49:12
[2026-08-31 22:49:12,310.310 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:49:12,334.334 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:49:12,412.412 INFO    ] No existing commands found in stream
[2026-08-31 22:49:17,424.424 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:49:17,426.426 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-08-31 22:49:19,565.565 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 22:49:19,568.568 INFO    ] Checking for system updates...
[2026-08-31 22:49:19,604.604 INFO    ] 200
[2026-08-31 22:49:19,607.607 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:49:19,660.660 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:49:19,662.662 INFO    ] No update needed
[2026-08-31 22:49:19,665.665 INFO    ] Checking for camera pi updates...
[2026-08-31 22:49:19,701.701 INFO    ] 200
[2026-08-31 22:49:19,704.704 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:49:19,746.746 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:49:19,846.846 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:49:19,849.849 INFO    ] No camera update needed
[2026-08-31 22:49:19,851.851 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:49:19,854.854 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:49:19,859.859 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:49:19,864.864 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:49:21,904.904 INFO    ] ================================================
[2026-08-31 22:49:21,919.919 INFO    ] Launching Daemon at Mon Aug 31 22:49:21 IST 2026
[2026-08-31 22:49:21,930.930 INFO    ] ================================================
[2026-08-31 22:49:22,518.518 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:49:22
[2026-08-31 22:49:23,117.117 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:49:23,391.391 INFO    ] Initializing speech engine...
[2026-08-31 22:49:23,402.402 INFO    ] 2026-08-31 22:49:23
[2026-08-31 22:49:23,655.655 INFO    ] 2026-08-31 22:49:23
[2026-08-31 22:49:23,715.715 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:49:23,936.936 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:49:23,946.946 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:49:24,076.076 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:49:24,130.130 INFO    ] time= 31/08/2026 22:49:24
[2026-08-31 22:49:24,190.190 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:49:24,210.210 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:49:24,328.328 INFO    ] No existing commands found in stream
[2026-08-31 22:49:29,353.353 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:49:29,356.356 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-08-31 22:49:33,373.373 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 22:49:33,376.376 INFO    ] Checking for system updates...
[2026-08-31 22:49:33,411.411 INFO    ] 200
[2026-08-31 22:49:33,414.414 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:49:33,467.467 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:49:33,470.470 INFO    ] No update needed
[2026-08-31 22:49:33,472.472 INFO    ] Checking for camera pi updates...
[2026-08-31 22:49:33,513.513 INFO    ] 200
[2026-08-31 22:49:33,516.516 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:49:33,555.555 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:49:33,643.643 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:49:33,645.645 INFO    ] No camera update needed
[2026-08-31 22:49:33,648.648 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:49:33,650.650 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:49:33,656.656 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:49:33,661.661 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:49:35,702.702 INFO    ] ================================================
[2026-08-31 22:49:35,717.717 INFO    ] Launching Daemon at Mon Aug 31 22:49:35 IST 2026
[2026-08-31 22:49:35,728.728 INFO    ] ================================================
[2026-08-31 22:49:36,297.297 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:49:36
[2026-08-31 22:49:36,883.883 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:49:37,132.132 INFO    ] Initializing speech engine...
[2026-08-31 22:49:37,142.142 INFO    ] 2026-08-31 22:49:37
[2026-08-31 22:49:37,441.441 INFO    ] 2026-08-31 22:49:37
[2026-08-31 22:49:37,481.481 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:49:37,702.702 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:49:37,722.722 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:49:37,910.910 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:49:37,928.928 INFO    ] time= 31/08/2026 22:49:37
[2026-08-31 22:49:37,971.971 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:49:38,035.035 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:49:38,126.126 INFO    ] No existing commands found in stream
[2026-08-31 22:49:43,138.138 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:49:43,141.141 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-08-31 22:49:46,804.804 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 22:49:46,807.807 INFO    ] Checking for system updates...
[2026-08-31 22:49:46,842.842 INFO    ] 200
[2026-08-31 22:49:46,845.845 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:49:46,896.896 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:49:46,899.899 INFO    ] No update needed
[2026-08-31 22:49:46,901.901 INFO    ] Checking for camera pi updates...
[2026-08-31 22:49:46,934.934 INFO    ] 200
[2026-08-31 22:49:46,937.937 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:49:46,981.981 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:49:47,084.084 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:49:47,087.087 INFO    ] No camera update needed
[2026-08-31 22:49:47,090.090 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:49:47,093.093 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:49:47,099.099 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:49:47,104.104 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:49:49,146.146 INFO    ] ================================================
[2026-08-31 22:49:49,161.161 INFO    ] Launching Daemon at Mon Aug 31 22:49:49 IST 2026
[2026-08-31 22:49:49,171.171 INFO    ] ================================================
[2026-08-31 22:49:49,737.737 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:49:49
[2026-08-31 22:49:50,323.323 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:49:50,582.582 INFO    ] Initializing speech engine...
[2026-08-31 22:49:50,614.614 INFO    ] 2026-08-31 22:49:50
[2026-08-31 22:49:50,879.879 INFO    ] 2026-08-31 22:49:50
[2026-08-31 22:49:50,916.916 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:49:51,134.134 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:49:51,143.143 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:49:51,287.287 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:49:51,292.292 INFO    ] time= 31/08/2026 22:49:51
[2026-08-31 22:49:51,298.298 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:49:51,346.346 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:49:51,492.492 INFO    ] No existing commands found in stream
[2026-08-31 22:49:56,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:49:56,520.520 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-08-31 22:49:58,192.192 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 22:49:58,195.195 INFO    ] Checking for system updates...
[2026-08-31 22:49:58,234.234 INFO    ] 200
[2026-08-31 22:49:58,236.236 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:49:58,292.292 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:49:58,295.295 INFO    ] No update needed
[2026-08-31 22:49:58,298.298 INFO    ] Checking for camera pi updates...
[2026-08-31 22:49:58,334.334 INFO    ] 200
[2026-08-31 22:49:58,336.336 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:49:58,385.385 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:49:58,467.467 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:49:58,470.470 INFO    ] No camera update needed
[2026-08-31 22:49:58,473.473 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:49:58,476.476 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:49:58,482.482 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:49:58,487.487 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:50:00,530.530 INFO    ] ================================================
[2026-08-31 22:50:00,546.546 INFO    ] Launching Daemon at Mon Aug 31 22:50:00 IST 2026
[2026-08-31 22:50:00,558.558 INFO    ] ================================================
[2026-08-31 22:50:01,161.161 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:50:01
[2026-08-31 22:50:01,784.784 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:50:03,141.141 INFO    ] Initializing speech engine...
[2026-08-31 22:50:03,144.144 INFO    ] 2026-08-31 22:50:03
[2026-08-31 22:50:03,800.800 INFO    ] 2026-08-31 22:50:03
[2026-08-31 22:50:03,869.869 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:50:04,043.043 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:50:04,046.046 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:50:04,298.298 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:50:04,326.326 INFO    ] time= 31/08/2026 22:50:04
[2026-08-31 22:50:04,396.396 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:50:04,441.441 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:50:04,570.570 INFO    ] No existing commands found in stream
[2026-08-31 22:50:09,598.598 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:50:09,601.601 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-08-31 22:50:10,533.533 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 22:50:10,535.535 INFO    ] Checking for system updates...
[2026-08-31 22:50:10,571.571 INFO    ] 200
[2026-08-31 22:50:10,573.573 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:50:10,626.626 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:50:10,629.629 INFO    ] No update needed
[2026-08-31 22:50:10,632.632 INFO    ] Checking for camera pi updates...
[2026-08-31 22:50:10,668.668 INFO    ] 200
[2026-08-31 22:50:10,671.671 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:50:10,714.714 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:50:10,806.806 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:50:10,809.809 INFO    ] No camera update needed
[2026-08-31 22:50:10,812.812 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:50:10,815.815 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:50:10,821.821 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:50:10,826.826 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:50:12,867.867 INFO    ] ================================================
[2026-08-31 22:50:12,883.883 INFO    ] Launching Daemon at Mon Aug 31 22:50:12 IST 2026
[2026-08-31 22:50:12,894.894 INFO    ] ================================================
[2026-08-31 22:50:13,461.461 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:50:13
[2026-08-31 22:50:14,046.046 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:50:14,319.319 INFO    ] Initializing speech engine...
[2026-08-31 22:50:14,340.340 INFO    ] 2026-08-31 22:50:14
[2026-08-31 22:50:14,605.605 INFO    ] 2026-08-31 22:50:14
[2026-08-31 22:50:14,641.641 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:50:14,849.849 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:50:14,866.866 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:50:15,011.011 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:50:15,020.020 INFO    ] time= 31/08/2026 22:50:15
[2026-08-31 22:50:15,024.024 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:50:15,030.030 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:50:15,104.104 INFO    ] No existing commands found in stream
[2026-08-31 22:50:20,116.116 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:50:20,119.119 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-08-31 22:50:20,583.583 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 22:50:20,586.586 INFO    ] Checking for system updates...
[2026-08-31 22:50:20,625.625 INFO    ] 200
[2026-08-31 22:50:20,627.627 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:50:20,680.680 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:50:20,683.683 INFO    ] No update needed
[2026-08-31 22:50:20,685.685 INFO    ] Checking for camera pi updates...
[2026-08-31 22:50:20,718.718 INFO    ] 200
[2026-08-31 22:50:20,721.721 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:50:20,761.761 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:50:20,857.857 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:50:20,859.859 INFO    ] No camera update needed
[2026-08-31 22:50:20,862.862 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:50:20,864.864 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:50:20,869.869 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:50:20,874.874 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:50:22,916.916 INFO    ] ================================================
[2026-08-31 22:50:22,932.932 INFO    ] Launching Daemon at Mon Aug 31 22:50:22 IST 2026
[2026-08-31 22:50:22,943.943 INFO    ] ================================================
[2026-08-31 22:50:23,511.511 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:50:23
[2026-08-31 22:50:24,093.093 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:50:24,362.362 INFO    ] Initializing speech engine...
[2026-08-31 22:50:24,372.372 INFO    ] 2026-08-31 22:50:24
[2026-08-31 22:50:24,618.618 INFO    ] 2026-08-31 22:50:24
[2026-08-31 22:50:24,652.652 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:50:24,908.908 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:50:24,917.917 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:50:25,131.131 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:50:25,180.180 INFO    ] time= 31/08/2026 22:50:25
[2026-08-31 22:50:25,187.187 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:50:25,203.203 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:50:25,333.333 INFO    ] No existing commands found in stream
[2026-08-31 22:50:30,351.351 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:50:30,354.354 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-08-31 22:50:32,929.929 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 22:50:32,932.932 INFO    ] Checking for system updates...
[2026-08-31 22:50:32,972.972 INFO    ] 200
[2026-08-31 22:50:32,975.975 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:50:33,032.032 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:50:33,035.035 INFO    ] No update needed
[2026-08-31 22:50:33,038.038 INFO    ] Checking for camera pi updates...
[2026-08-31 22:50:33,076.076 INFO    ] 200
[2026-08-31 22:50:33,079.079 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:50:33,133.133 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:50:33,219.219 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:50:33,223.223 INFO    ] No camera update needed
[2026-08-31 22:50:33,226.226 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:50:33,230.230 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:50:33,238.238 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:50:33,245.245 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:50:35,288.288 INFO    ] ================================================
[2026-08-31 22:50:35,304.304 INFO    ] Launching Daemon at Mon Aug 31 22:50:35 IST 2026
[2026-08-31 22:50:35,314.314 INFO    ] ================================================
[2026-08-31 22:50:35,894.894 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:50:35
[2026-08-31 22:50:36,493.493 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:50:36,767.767 INFO    ] Initializing speech engine...
[2026-08-31 22:50:36,776.776 INFO    ] 2026-08-31 22:50:36
[2026-08-31 22:50:37,023.023 INFO    ] 2026-08-31 22:50:37
[2026-08-31 22:50:37,059.059 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:50:37,311.311 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:50:37,320.320 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:50:37,454.454 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:50:37,514.514 INFO    ] time= 31/08/2026 22:50:37
[2026-08-31 22:50:37,581.581 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:50:37,588.588 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:50:37,718.718 INFO    ] No existing commands found in stream
[2026-08-31 22:50:42,742.742 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:50:42,745.745 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-08-31 22:50:48,216.216 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 22:50:48,219.219 INFO    ] Checking for system updates...
[2026-08-31 22:50:48,254.254 INFO    ] 200
[2026-08-31 22:50:48,257.257 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:50:48,309.309 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:50:48,311.311 INFO    ] No update needed
[2026-08-31 22:50:48,313.313 INFO    ] Checking for camera pi updates...
[2026-08-31 22:50:48,348.348 INFO    ] 200
[2026-08-31 22:50:48,351.351 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:50:48,391.391 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:50:48,494.494 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:50:48,496.496 INFO    ] No camera update needed
[2026-08-31 22:50:48,499.499 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:50:48,501.501 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:50:48,507.507 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:50:48,512.512 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:50:50,552.552 INFO    ] ================================================
[2026-08-31 22:50:50,568.568 INFO    ] Launching Daemon at Mon Aug 31 22:50:50 IST 2026
[2026-08-31 22:50:50,580.580 INFO    ] ================================================
[2026-08-31 22:50:51,174.174 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:50:51
[2026-08-31 22:50:51,758.758 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:50:52,006.006 INFO    ] Initializing speech engine...
[2026-08-31 22:50:52,012.012 INFO    ] 2026-08-31 22:50:52
[2026-08-31 22:50:52,286.286 INFO    ] 2026-08-31 22:50:52
[2026-08-31 22:50:52,321.321 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:50:52,519.519 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:50:52,574.574 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:50:52,763.763 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:50:52,828.828 INFO    ] time= 31/08/2026 22:50:52
[2026-08-31 22:50:52,860.860 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:50:52,876.876 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:50:52,987.987 INFO    ] No existing commands found in stream
[2026-08-31 22:50:58,017.017 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:50:58,020.020 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-08-31 22:51:00,125.125 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 22:51:00,128.128 INFO    ] Checking for system updates...
[2026-08-31 22:51:00,164.164 INFO    ] 200
[2026-08-31 22:51:00,167.167 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:51:00,219.219 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:51:00,222.222 INFO    ] No update needed
[2026-08-31 22:51:00,224.224 INFO    ] Checking for camera pi updates...
[2026-08-31 22:51:00,258.258 INFO    ] 200
[2026-08-31 22:51:00,260.260 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:51:00,301.301 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:51:00,376.376 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:51:00,379.379 INFO    ] No camera update needed
[2026-08-31 22:51:00,381.381 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:51:00,384.384 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:51:00,389.389 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:51:00,394.394 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:51:02,436.436 INFO    ] ================================================
[2026-08-31 22:51:02,454.454 INFO    ] Launching Daemon at Mon Aug 31 22:51:02 IST 2026
[2026-08-31 22:51:02,471.471 INFO    ] ================================================
[2026-08-31 22:51:03,141.141 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:51:03
[2026-08-31 22:51:03,753.753 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:51:04,022.022 INFO    ] Initializing speech engine...
[2026-08-31 22:51:04,032.032 INFO    ] 2026-08-31 22:51:04
[2026-08-31 22:51:04,278.278 INFO    ] 2026-08-31 22:51:04
[2026-08-31 22:51:04,313.313 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:51:04,485.485 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:51:04,497.497 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:51:04,641.641 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:51:04,646.646 INFO    ] time= 31/08/2026 22:51:04
[2026-08-31 22:51:04,654.654 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:51:04,701.701 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:51:04,846.846 INFO    ] No existing commands found in stream
[2026-08-31 22:51:09,856.856 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:51:09,861.861 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-08-31 22:51:12,930.930 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 22:51:12,933.933 INFO    ] Checking for system updates...
[2026-08-31 22:51:12,968.968 INFO    ] 200
[2026-08-31 22:51:12,971.971 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:51:13,025.025 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:51:13,027.027 INFO    ] No update needed
[2026-08-31 22:51:13,030.030 INFO    ] Checking for camera pi updates...
[2026-08-31 22:51:13,064.064 INFO    ] 200
[2026-08-31 22:51:13,066.066 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:51:13,106.106 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:51:13,186.186 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:51:13,189.189 INFO    ] No camera update needed
[2026-08-31 22:51:13,191.191 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:51:13,193.193 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:51:13,199.199 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:51:13,204.204 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:51:15,245.245 INFO    ] ================================================
[2026-08-31 22:51:15,260.260 INFO    ] Launching Daemon at Mon Aug 31 22:51:15 IST 2026
[2026-08-31 22:51:15,272.272 INFO    ] ================================================
[2026-08-31 22:51:15,849.849 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:51:15
[2026-08-31 22:51:16,446.446 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:51:16,723.723 INFO    ] Initializing speech engine...
[2026-08-31 22:51:16,731.731 INFO    ] 2026-08-31 22:51:16
[2026-08-31 22:51:16,990.990 INFO    ] 2026-08-31 22:51:16
[2026-08-31 22:51:17,044.044 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:51:17,291.291 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:51:17,297.297 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:51:17,480.480 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:51:17,529.529 INFO    ] time= 31/08/2026 22:51:17
[2026-08-31 22:51:17,535.535 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:51:17,553.553 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:51:17,683.683 INFO    ] No existing commands found in stream
[2026-08-31 22:51:22,696.696 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:51:22,699.699 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-08-31 22:51:27,130.130 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 22:51:27,133.133 INFO    ] Checking for system updates...
[2026-08-31 22:51:27,169.169 INFO    ] 200
[2026-08-31 22:51:27,172.172 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:51:27,232.232 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:51:27,235.235 INFO    ] No update needed
[2026-08-31 22:51:27,238.238 INFO    ] Checking for camera pi updates...
[2026-08-31 22:51:27,274.274 INFO    ] 200
[2026-08-31 22:51:27,277.277 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:51:27,324.324 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:51:27,506.506 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:51:27,509.509 INFO    ] No camera update needed
[2026-08-31 22:51:27,512.512 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:51:27,514.514 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:51:27,521.521 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:51:27,526.526 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:51:29,570.570 INFO    ] ================================================
[2026-08-31 22:51:29,587.587 INFO    ] Launching Daemon at Mon Aug 31 22:51:29 IST 2026
[2026-08-31 22:51:29,598.598 INFO    ] ================================================
[2026-08-31 22:51:30,170.170 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:51:30
[2026-08-31 22:51:30,754.754 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:51:31,003.003 INFO    ] Initializing speech engine...
[2026-08-31 22:51:31,015.015 INFO    ] 2026-08-31 22:51:31
[2026-08-31 22:51:31,278.278 INFO    ] 2026-08-31 22:51:31
[2026-08-31 22:51:31,313.313 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:51:31,563.563 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:51:31,572.572 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:51:31,684.684 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:51:31,686.686 INFO    ] time= 31/08/2026 22:51:31
[2026-08-31 22:51:31,715.715 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:51:31,784.784 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:51:31,879.879 INFO    ] No existing commands found in stream
[2026-08-31 22:51:36,911.911 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:51:36,914.914 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-08-31 22:51:39,935.935 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 22:51:39,938.938 INFO    ] Checking for system updates...
[2026-08-31 22:51:39,973.973 INFO    ] 200
[2026-08-31 22:51:39,975.975 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:51:40,027.027 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:51:40,030.030 INFO    ] No update needed
[2026-08-31 22:51:40,032.032 INFO    ] Checking for camera pi updates...
[2026-08-31 22:51:40,066.066 INFO    ] 200
[2026-08-31 22:51:40,069.069 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:51:40,110.110 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:51:40,192.192 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:51:40,195.195 INFO    ] No camera update needed
[2026-08-31 22:51:40,197.197 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:51:40,199.199 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:51:40,205.205 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:51:40,210.210 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:51:42,250.250 INFO    ] ================================================
[2026-08-31 22:51:42,266.266 INFO    ] Launching Daemon at Mon Aug 31 22:51:42 IST 2026
[2026-08-31 22:51:42,278.278 INFO    ] ================================================
[2026-08-31 22:51:42,850.850 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:51:42
[2026-08-31 22:51:43,437.437 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:51:43,705.705 INFO    ] Initializing speech engine...
[2026-08-31 22:51:43,722.722 INFO    ] 2026-08-31 22:51:43
[2026-08-31 22:51:43,993.993 INFO    ] 2026-08-31 22:51:43
[2026-08-31 22:51:44,031.031 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:51:44,315.315 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:51:44,325.325 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:51:44,473.473 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:51:44,500.500 INFO    ] time= 31/08/2026 22:51:44
[2026-08-31 22:51:44,555.555 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:51:44,614.614 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:51:44,679.679 INFO    ] No existing commands found in stream
[2026-08-31 22:51:49,691.691 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:51:49,694.694 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-08-31 22:51:53,534.534 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 22:51:53,536.536 INFO    ] Checking for system updates...
[2026-08-31 22:51:53,572.572 INFO    ] 200
[2026-08-31 22:51:53,574.574 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:51:53,626.626 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:51:53,628.628 INFO    ] No update needed
[2026-08-31 22:51:53,631.631 INFO    ] Checking for camera pi updates...
[2026-08-31 22:51:53,664.664 INFO    ] 200
[2026-08-31 22:51:53,666.666 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:51:53,717.717 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:51:53,809.809 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:51:53,811.811 INFO    ] No camera update needed
[2026-08-31 22:51:53,813.813 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:51:53,815.815 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:51:53,821.821 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:51:53,826.826 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:51:55,865.865 INFO    ] ================================================
[2026-08-31 22:51:55,881.881 INFO    ] Launching Daemon at Mon Aug 31 22:51:55 IST 2026
[2026-08-31 22:51:55,893.893 INFO    ] ================================================
[2026-08-31 22:51:56,471.471 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:51:56
[2026-08-31 22:51:57,066.066 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:51:57,327.327 INFO    ] Initializing speech engine...
[2026-08-31 22:51:57,333.333 INFO    ] 2026-08-31 22:51:57
[2026-08-31 22:51:57,623.623 INFO    ] 2026-08-31 22:51:57
[2026-08-31 22:51:57,661.661 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:51:57,855.855 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:51:57,870.870 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:51:58,029.029 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:51:58,039.039 INFO    ] time= 31/08/2026 22:51:58
[2026-08-31 22:51:58,045.045 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:51:58,087.087 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:51:58,207.207 INFO    ] No existing commands found in stream
[2026-08-31 22:52:03,227.227 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:52:03,230.230 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-08-31 22:52:07,494.494 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 22:52:07,496.496 INFO    ] Checking for system updates...
[2026-08-31 22:52:07,532.532 INFO    ] 200
[2026-08-31 22:52:07,535.535 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:52:07,587.587 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:52:07,589.589 INFO    ] No update needed
[2026-08-31 22:52:07,592.592 INFO    ] Checking for camera pi updates...
[2026-08-31 22:52:07,625.625 INFO    ] 200
[2026-08-31 22:52:07,627.627 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:52:07,668.668 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:52:07,774.774 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:52:07,777.777 INFO    ] No camera update needed
[2026-08-31 22:52:07,779.779 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:52:07,782.782 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:52:07,787.787 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:52:07,792.792 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:52:09,831.831 INFO    ] ================================================
[2026-08-31 22:52:09,847.847 INFO    ] Launching Daemon at Mon Aug 31 22:52:09 IST 2026
[2026-08-31 22:52:09,859.859 INFO    ] ================================================
[2026-08-31 22:52:10,428.428 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:52:10
[2026-08-31 22:52:11,013.013 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:52:11,280.280 INFO    ] Initializing speech engine...
[2026-08-31 22:52:11,293.293 INFO    ] 2026-08-31 22:52:11
[2026-08-31 22:52:11,544.544 INFO    ] 2026-08-31 22:52:11
[2026-08-31 22:52:11,579.579 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:52:11,778.778 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:52:11,806.806 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:52:11,978.978 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:52:12,010.010 INFO    ] time= 31/08/2026 22:52:11
[2026-08-31 22:52:12,069.069 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:52:12,119.119 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:52:12,255.255 INFO    ] No existing commands found in stream
[2026-08-31 22:52:17,281.281 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:52:17,284.284 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-08-31 22:52:20,126.126 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 22:52:20,128.128 INFO    ] Checking for system updates...
[2026-08-31 22:52:20,164.164 INFO    ] 200
[2026-08-31 22:52:20,167.167 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:52:20,220.220 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:52:20,222.222 INFO    ] No update needed
[2026-08-31 22:52:20,225.225 INFO    ] Checking for camera pi updates...
[2026-08-31 22:52:20,261.261 INFO    ] 200
[2026-08-31 22:52:20,263.263 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:52:20,303.303 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:52:20,394.394 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:52:20,396.396 INFO    ] No camera update needed
[2026-08-31 22:52:20,399.399 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:52:20,401.401 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:52:20,406.406 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:52:20,411.411 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:52:22,450.450 INFO    ] ================================================
[2026-08-31 22:52:22,466.466 INFO    ] Launching Daemon at Mon Aug 31 22:52:22 IST 2026
[2026-08-31 22:52:22,477.477 INFO    ] ================================================
[2026-08-31 22:52:23,176.176 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:52:23
[2026-08-31 22:52:23,874.874 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:52:24,190.190 INFO    ] Initializing speech engine...
[2026-08-31 22:52:24,201.201 INFO    ] 2026-08-31 22:52:24
[2026-08-31 22:52:24,520.520 INFO    ] 2026-08-31 22:52:24
[2026-08-31 22:52:24,611.611 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:52:24,842.842 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:52:24,853.853 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:52:25,037.037 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:52:25,082.082 INFO    ] time= 31/08/2026 22:52:25
[2026-08-31 22:52:25,093.093 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:52:25,111.111 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:52:25,170.170 INFO    ] No existing commands found in stream
[2026-08-31 22:52:30,200.200 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:52:30,203.203 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-08-31 22:52:30,818.818 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 22:52:30,821.821 INFO    ] Checking for system updates...
[2026-08-31 22:52:30,856.856 INFO    ] 200
[2026-08-31 22:52:30,859.859 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:52:30,911.911 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:52:30,913.913 INFO    ] No update needed
[2026-08-31 22:52:30,916.916 INFO    ] Checking for camera pi updates...
[2026-08-31 22:52:30,949.949 INFO    ] 200
[2026-08-31 22:52:30,951.951 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:52:30,998.998 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:52:31,082.082 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:52:31,084.084 INFO    ] No camera update needed
[2026-08-31 22:52:31,087.087 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:52:31,089.089 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:52:31,094.094 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:52:31,099.099 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:52:33,139.139 INFO    ] ================================================
[2026-08-31 22:52:33,155.155 INFO    ] Launching Daemon at Mon Aug 31 22:52:33 IST 2026
[2026-08-31 22:52:33,166.166 INFO    ] ================================================
[2026-08-31 22:52:33,734.734 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:52:33
[2026-08-31 22:52:34,320.320 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:52:34,566.566 INFO    ] Initializing speech engine...
[2026-08-31 22:52:34,575.575 INFO    ] 2026-08-31 22:52:34
[2026-08-31 22:52:34,849.849 INFO    ] 2026-08-31 22:52:34
[2026-08-31 22:52:34,897.897 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:52:35,076.076 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:52:35,090.090 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:52:35,238.238 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:52:35,243.243 INFO    ] time= 31/08/2026 22:52:35
[2026-08-31 22:52:35,251.251 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:52:35,301.301 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:52:35,433.433 INFO    ] No existing commands found in stream
[2026-08-31 22:52:40,460.460 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:52:40,463.463 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-08-31 22:52:44,324.324 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 22:52:44,326.326 INFO    ] Checking for system updates...
[2026-08-31 22:52:44,366.366 INFO    ] 200
[2026-08-31 22:52:44,369.369 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:52:44,421.421 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:52:44,424.424 INFO    ] No update needed
[2026-08-31 22:52:44,426.426 INFO    ] Checking for camera pi updates...
[2026-08-31 22:52:44,459.459 INFO    ] 200
[2026-08-31 22:52:44,462.462 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:52:44,502.502 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:52:44,587.587 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:52:44,590.590 INFO    ] No camera update needed
[2026-08-31 22:52:44,592.592 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:52:44,595.595 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:52:44,600.600 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:52:44,605.605 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:52:46,647.647 INFO    ] ================================================
[2026-08-31 22:52:46,662.662 INFO    ] Launching Daemon at Mon Aug 31 22:52:46 IST 2026
[2026-08-31 22:52:46,674.674 INFO    ] ================================================
[2026-08-31 22:52:47,246.246 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:52:47
[2026-08-31 22:52:47,831.831 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:52:48,078.078 INFO    ] Initializing speech engine...
[2026-08-31 22:52:48,088.088 INFO    ] 2026-08-31 22:52:48
[2026-08-31 22:52:48,383.383 INFO    ] 2026-08-31 22:52:48
[2026-08-31 22:52:48,418.418 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:52:48,619.619 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:52:48,636.636 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:52:48,803.803 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:52:48,809.809 INFO    ] time= 31/08/2026 22:52:48
[2026-08-31 22:52:48,815.815 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:52:48,821.821 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:52:48,969.969 INFO    ] No existing commands found in stream
[2026-08-31 22:52:53,994.994 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:52:53,997.997 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-08-31 22:52:58,452.452 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 22:52:58,455.455 INFO    ] Checking for system updates...
[2026-08-31 22:52:58,495.495 INFO    ] 200
[2026-08-31 22:52:58,498.498 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:52:58,550.550 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:52:58,552.552 INFO    ] No update needed
[2026-08-31 22:52:58,555.555 INFO    ] Checking for camera pi updates...
[2026-08-31 22:52:58,588.588 INFO    ] 200
[2026-08-31 22:52:58,590.590 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:52:58,631.631 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:52:58,711.711 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:52:58,714.714 INFO    ] No camera update needed
[2026-08-31 22:52:58,716.716 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:52:58,718.718 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:52:58,724.724 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:52:58,729.729 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:53:00,771.771 INFO    ] ================================================
[2026-08-31 22:53:00,787.787 INFO    ] Launching Daemon at Mon Aug 31 22:53:00 IST 2026
[2026-08-31 22:53:00,798.798 INFO    ] ================================================
[2026-08-31 22:53:01,461.461 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:53:01
[2026-08-31 22:53:02,330.330 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:53:02,709.709 INFO    ] Initializing speech engine...
[2026-08-31 22:53:02,724.724 INFO    ] 2026-08-31 22:53:02
[2026-08-31 22:53:03,040.040 INFO    ] 2026-08-31 22:53:03
[2026-08-31 22:53:03,106.106 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:53:03,283.283 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:53:03,289.289 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:53:03,440.440 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:53:03,451.451 INFO    ] time= 31/08/2026 22:53:03
[2026-08-31 22:53:03,468.468 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:53:03,490.490 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:53:03,575.575 INFO    ] No existing commands found in stream
[2026-08-31 22:53:08,591.591 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:53:08,593.593 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-08-31 22:53:12,850.850 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 22:53:12,853.853 INFO    ] Checking for system updates...
[2026-08-31 22:53:12,894.894 INFO    ] 200
[2026-08-31 22:53:12,897.897 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:53:12,958.958 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:53:12,961.961 INFO    ] No update needed
[2026-08-31 22:53:12,964.964 INFO    ] Checking for camera pi updates...
[2026-08-31 22:53:13,003.003 INFO    ] 200
[2026-08-31 22:53:13,005.005 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:53:13,049.049 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:53:13,140.140 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:53:13,143.143 INFO    ] No camera update needed
[2026-08-31 22:53:13,146.146 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:53:13,148.148 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:53:13,154.154 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:53:13,160.160 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:53:15,206.206 INFO    ] ================================================
[2026-08-31 22:53:15,222.222 INFO    ] Launching Daemon at Mon Aug 31 22:53:15 IST 2026
[2026-08-31 22:53:15,233.233 INFO    ] ================================================
[2026-08-31 22:53:15,812.812 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:53:15
[2026-08-31 22:53:16,413.413 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:53:16,677.677 INFO    ] Initializing speech engine...
[2026-08-31 22:53:16,693.693 INFO    ] 2026-08-31 22:53:16
[2026-08-31 22:53:16,981.981 INFO    ] 2026-08-31 22:53:16
[2026-08-31 22:53:17,017.017 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:53:17,246.246 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:53:17,311.311 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:53:17,471.471 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:53:17,498.498 INFO    ] time= 31/08/2026 22:53:17
[2026-08-31 22:53:17,564.564 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:53:17,619.619 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:53:17,681.681 INFO    ] No existing commands found in stream
[2026-08-31 22:53:22,693.693 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:53:22,696.696 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-08-31 22:53:24,762.762 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 22:53:24,764.764 INFO    ] Checking for system updates...
[2026-08-31 22:53:24,812.812 INFO    ] 200
[2026-08-31 22:53:24,814.814 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:53:24,880.880 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:53:24,883.883 INFO    ] No update needed
[2026-08-31 22:53:24,885.885 INFO    ] Checking for camera pi updates...
[2026-08-31 22:53:24,922.922 INFO    ] 200
[2026-08-31 22:53:24,925.925 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:53:24,965.965 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:53:25,044.044 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:53:25,046.046 INFO    ] No camera update needed
[2026-08-31 22:53:25,049.049 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:53:25,051.051 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:53:25,057.057 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:53:25,062.062 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:53:27,101.101 INFO    ] ================================================
[2026-08-31 22:53:27,117.117 INFO    ] Launching Daemon at Mon Aug 31 22:53:27 IST 2026
[2026-08-31 22:53:27,128.128 INFO    ] ================================================
[2026-08-31 22:53:27,784.784 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:53:27
[2026-08-31 22:53:28,461.461 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:53:28,768.768 INFO    ] Initializing speech engine...
[2026-08-31 22:53:28,782.782 INFO    ] 2026-08-31 22:53:28
[2026-08-31 22:53:29,091.091 INFO    ] 2026-08-31 22:53:29
[2026-08-31 22:53:29,178.178 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:53:29,359.359 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:53:29,376.376 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:53:29,589.589 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:53:29,602.602 INFO    ] time= 31/08/2026 22:53:29
[2026-08-31 22:53:29,624.624 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:53:29,653.653 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:53:29,757.757 INFO    ] No existing commands found in stream
[2026-08-31 22:53:34,789.789 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:53:34,792.792 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-08-31 22:53:35,804.804 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 22:53:35,807.807 INFO    ] Checking for system updates...
[2026-08-31 22:53:35,845.845 INFO    ] 200
[2026-08-31 22:53:35,848.848 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:53:35,902.902 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:53:35,905.905 INFO    ] No update needed
[2026-08-31 22:53:35,908.908 INFO    ] Checking for camera pi updates...
[2026-08-31 22:53:35,943.943 INFO    ] 200
[2026-08-31 22:53:35,946.946 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:53:35,993.993 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:53:36,072.072 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:53:36,075.075 INFO    ] No camera update needed
[2026-08-31 22:53:36,077.077 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:53:36,079.079 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:53:36,085.085 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:53:36,090.090 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:53:38,130.130 INFO    ] ================================================
[2026-08-31 22:53:38,146.146 INFO    ] Launching Daemon at Mon Aug 31 22:53:38 IST 2026
[2026-08-31 22:53:38,156.156 INFO    ] ================================================
[2026-08-31 22:53:38,812.812 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:53:38
[2026-08-31 22:53:39,488.488 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:53:39,793.793 INFO    ] Initializing speech engine...
[2026-08-31 22:53:39,807.807 INFO    ] 2026-08-31 22:53:39
[2026-08-31 22:53:40,076.076 INFO    ] 2026-08-31 22:53:40
[2026-08-31 22:53:40,130.130 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:53:40,385.385 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:53:40,409.409 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:53:40,601.601 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:53:40,630.630 INFO    ] time= 31/08/2026 22:53:40
[2026-08-31 22:53:40,648.648 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:53:40,678.678 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:53:40,796.796 INFO    ] No existing commands found in stream
[2026-08-31 22:53:45,826.826 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:53:45,830.830 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-08-31 22:53:49,459.459 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 22:53:49,462.462 INFO    ] Checking for system updates...
[2026-08-31 22:53:49,502.502 INFO    ] 200
[2026-08-31 22:53:49,504.504 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:53:49,564.564 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:53:49,567.567 INFO    ] No update needed
[2026-08-31 22:53:49,569.569 INFO    ] Checking for camera pi updates...
[2026-08-31 22:53:49,607.607 INFO    ] 200
[2026-08-31 22:53:49,609.609 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:53:49,654.654 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:53:49,740.740 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:53:49,742.742 INFO    ] No camera update needed
[2026-08-31 22:53:49,744.744 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:53:49,746.746 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:53:49,752.752 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:53:49,757.757 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:53:51,796.796 INFO    ] ================================================
[2026-08-31 22:53:51,812.812 INFO    ] Launching Daemon at Mon Aug 31 22:53:51 IST 2026
[2026-08-31 22:53:51,823.823 INFO    ] ================================================
[2026-08-31 22:53:52,391.391 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:53:52
[2026-08-31 22:53:52,975.975 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:53:53,245.245 INFO    ] Initializing speech engine...
[2026-08-31 22:53:53,254.254 INFO    ] 2026-08-31 22:53:53
[2026-08-31 22:53:53,505.505 INFO    ] 2026-08-31 22:53:53
[2026-08-31 22:53:53,541.541 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:53:53,717.717 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:53:53,729.729 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:53:53,875.875 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:53:53,880.880 INFO    ] time= 31/08/2026 22:53:53
[2026-08-31 22:53:53,886.886 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:53:53,927.927 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:53:54,056.056 INFO    ] No existing commands found in stream
[2026-08-31 22:53:59,086.086 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:53:59,089.089 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-08-31 22:54:01,370.370 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 22:54:01,373.373 INFO    ] Checking for system updates...
[2026-08-31 22:54:01,408.408 INFO    ] 200
[2026-08-31 22:54:01,411.411 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:54:01,470.470 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:54:01,473.473 INFO    ] No update needed
[2026-08-31 22:54:01,475.475 INFO    ] Checking for camera pi updates...
[2026-08-31 22:54:01,508.508 INFO    ] 200
[2026-08-31 22:54:01,511.511 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:54:01,555.555 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:54:01,640.640 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:54:01,649.649 INFO    ] No camera update needed
[2026-08-31 22:54:01,660.660 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:54:01,664.664 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:54:01,683.683 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:54:01,700.700 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:54:03,745.745 INFO    ] ================================================
[2026-08-31 22:54:03,760.760 INFO    ] Launching Daemon at Mon Aug 31 22:54:03 IST 2026
[2026-08-31 22:54:03,771.771 INFO    ] ================================================
[2026-08-31 22:54:04,337.337 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:54:04
[2026-08-31 22:54:04,924.924 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:54:05,185.185 INFO    ] Initializing speech engine...
[2026-08-31 22:54:05,203.203 INFO    ] 2026-08-31 22:54:05
[2026-08-31 22:54:05,455.455 INFO    ] 2026-08-31 22:54:05
[2026-08-31 22:54:05,490.490 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:54:05,748.748 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:54:05,756.756 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:54:05,893.893 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:54:05,948.948 INFO    ] time= 31/08/2026 22:54:05
[2026-08-31 22:54:06,014.014 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:54:06,027.027 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:54:06,087.087 INFO    ] No existing commands found in stream
[2026-08-31 22:54:11,098.098 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:54:11,101.101 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-08-31 22:54:14,851.851 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 22:54:14,858.858 INFO    ] Checking for system updates...
[2026-08-31 22:54:14,894.894 INFO    ] 200
[2026-08-31 22:54:14,896.896 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:54:14,948.948 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:54:14,951.951 INFO    ] No update needed
[2026-08-31 22:54:14,954.954 INFO    ] Checking for camera pi updates...
[2026-08-31 22:54:14,987.987 INFO    ] 200
[2026-08-31 22:54:14,989.989 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:54:15,035.035 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:54:15,119.119 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:54:15,121.121 INFO    ] No camera update needed
[2026-08-31 22:54:15,124.124 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:54:15,126.126 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:54:15,131.131 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:54:15,136.136 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:54:17,179.179 INFO    ] ================================================
[2026-08-31 22:54:17,194.194 INFO    ] Launching Daemon at Mon Aug 31 22:54:17 IST 2026
[2026-08-31 22:54:17,205.205 INFO    ] ================================================
[2026-08-31 22:54:17,783.783 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:54:17
[2026-08-31 22:54:18,381.381 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:54:18,641.641 INFO    ] Initializing speech engine...
[2026-08-31 22:54:18,650.650 INFO    ] 2026-08-31 22:54:18
[2026-08-31 22:54:18,946.946 INFO    ] 2026-08-31 22:54:18
[2026-08-31 22:54:18,984.984 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:54:19,206.206 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:54:19,230.230 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:54:19,363.363 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:54:19,371.371 INFO    ] time= 31/08/2026 22:54:19
[2026-08-31 22:54:19,399.399 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:54:19,446.446 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:54:19,563.563 INFO    ] No existing commands found in stream
[2026-08-31 22:54:24,593.593 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:54:24,596.596 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-08-31 22:54:25,322.322 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 22:54:25,324.324 INFO    ] Checking for system updates...
[2026-08-31 22:54:25,363.363 INFO    ] 200
[2026-08-31 22:54:25,366.366 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:54:25,423.423 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:54:25,425.425 INFO    ] No update needed
[2026-08-31 22:54:25,428.428 INFO    ] Checking for camera pi updates...
[2026-08-31 22:54:25,464.464 INFO    ] 200
[2026-08-31 22:54:25,467.467 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:54:25,511.511 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:54:25,596.596 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:54:25,599.599 INFO    ] No camera update needed
[2026-08-31 22:54:25,601.601 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:54:25,604.604 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:54:25,609.609 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:54:25,614.614 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:54:27,655.655 INFO    ] ================================================
[2026-08-31 22:54:27,677.677 INFO    ] Launching Daemon at Mon Aug 31 22:54:27 IST 2026
[2026-08-31 22:54:27,688.688 INFO    ] ================================================
[2026-08-31 22:54:28,328.328 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:54:28
[2026-08-31 22:54:28,991.991 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:54:29,291.291 INFO    ] Initializing speech engine...
[2026-08-31 22:54:29,300.300 INFO    ] 2026-08-31 22:54:29
[2026-08-31 22:54:29,569.569 INFO    ] 2026-08-31 22:54:29
[2026-08-31 22:54:29,631.631 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:54:29,864.864 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:54:29,871.871 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:54:30,093.093 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:54:30,135.135 INFO    ] time= 31/08/2026 22:54:30
[2026-08-31 22:54:30,141.141 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:54:30,160.160 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:54:30,297.297 INFO    ] No existing commands found in stream
[2026-08-31 22:54:35,332.332 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:54:35,335.335 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-08-31 22:54:36,659.659 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 22:54:36,662.662 INFO    ] Checking for system updates...
[2026-08-31 22:54:36,698.698 INFO    ] 200
[2026-08-31 22:54:36,701.701 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:54:36,760.760 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:54:36,763.763 INFO    ] No update needed
[2026-08-31 22:54:36,765.765 INFO    ] Checking for camera pi updates...
[2026-08-31 22:54:36,801.801 INFO    ] 200
[2026-08-31 22:54:36,804.804 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:54:36,846.846 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:54:36,933.933 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:54:36,936.936 INFO    ] No camera update needed
[2026-08-31 22:54:36,939.939 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:54:36,942.942 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:54:36,948.948 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:54:36,953.953 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:54:39,995.995 INFO    ] ================================================
[2026-08-31 22:54:39,010.010 INFO    ] Launching Daemon at Mon Aug 31 22:54:39 IST 2026
[2026-08-31 22:54:39,021.021 INFO    ] ================================================
[2026-08-31 22:54:39,587.587 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:54:39
[2026-08-31 22:54:40,171.171 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:54:40,424.424 INFO    ] Initializing speech engine...
[2026-08-31 22:54:40,431.431 INFO    ] 2026-08-31 22:54:40
[2026-08-31 22:54:40,723.723 INFO    ] 2026-08-31 22:54:40
[2026-08-31 22:54:40,760.760 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:54:40,956.956 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:54:40,970.970 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:54:41,132.132 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:54:41,138.138 INFO    ] time= 31/08/2026 22:54:41
[2026-08-31 22:54:41,144.144 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:54:41,150.150 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:54:41,293.293 INFO    ] No existing commands found in stream
[2026-08-31 22:54:46,319.319 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:54:46,321.321 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-08-31 22:54:50,763.763 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 22:54:50,765.765 INFO    ] Checking for system updates...
[2026-08-31 22:54:50,800.800 INFO    ] 200
[2026-08-31 22:54:50,803.803 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:54:50,854.854 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:54:50,857.857 INFO    ] No update needed
[2026-08-31 22:54:50,859.859 INFO    ] Checking for camera pi updates...
[2026-08-31 22:54:50,896.896 INFO    ] 200
[2026-08-31 22:54:50,899.899 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:54:50,943.943 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:54:51,037.037 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:54:51,040.040 INFO    ] No camera update needed
[2026-08-31 22:54:51,042.042 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:54:51,044.044 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:54:51,050.050 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:54:51,055.055 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:54:53,097.097 INFO    ] ================================================
[2026-08-31 22:54:53,112.112 INFO    ] Launching Daemon at Mon Aug 31 22:54:53 IST 2026
[2026-08-31 22:54:53,123.123 INFO    ] ================================================
[2026-08-31 22:54:53,689.689 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:54:53
[2026-08-31 22:54:54,286.286 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:54:54,539.539 INFO    ] Initializing speech engine...
[2026-08-31 22:54:54,557.557 INFO    ] 2026-08-31 22:54:54
[2026-08-31 22:54:54,817.817 INFO    ] 2026-08-31 22:54:54
[2026-08-31 22:54:54,852.852 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:54:55,241.241 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:54:55,272.272 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:54:55,491.491 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:54:55,531.531 INFO    ] time= 31/08/2026 22:54:55
[2026-08-31 22:54:55,570.570 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:54:55,614.614 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:54:55,705.705 INFO    ] No existing commands found in stream
[2026-08-31 22:55:00,720.720 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:55:00,722.722 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-08-31 22:55:02,485.485 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 22:55:02,489.489 INFO    ] Checking for system updates...
[2026-08-31 22:55:02,534.534 INFO    ] 200
[2026-08-31 22:55:02,538.538 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:55:02,602.602 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:55:02,605.605 INFO    ] No update needed
[2026-08-31 22:55:02,609.609 INFO    ] Checking for camera pi updates...
[2026-08-31 22:55:02,652.652 INFO    ] 200
[2026-08-31 22:55:02,655.655 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:55:02,701.701 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:55:02,800.800 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:55:02,802.802 INFO    ] No camera update needed
[2026-08-31 22:55:02,805.805 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:55:02,808.808 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:55:02,815.815 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:55:02,821.821 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:55:04,862.862 INFO    ] ================================================
[2026-08-31 22:55:04,878.878 INFO    ] Launching Daemon at Mon Aug 31 22:55:04 IST 2026
[2026-08-31 22:55:04,889.889 INFO    ] ================================================
[2026-08-31 22:55:05,533.533 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:55:05
[2026-08-31 22:55:06,197.197 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:55:06,499.499 INFO    ] Initializing speech engine...
[2026-08-31 22:55:06,510.510 INFO    ] 2026-08-31 22:55:06
[2026-08-31 22:55:06,837.837 INFO    ] 2026-08-31 22:55:06
[2026-08-31 22:55:06,923.923 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:55:07,201.201 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:55:07,223.223 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:55:07,384.384 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:55:07,394.394 INFO    ] time= 31/08/2026 22:55:07
[2026-08-31 22:55:07,415.415 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:55:07,463.463 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:55:07,598.598 INFO    ] No existing commands found in stream
[2026-08-31 22:55:12,618.618 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:55:12,621.621 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-08-31 22:55:15,732.732 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 22:55:15,735.735 INFO    ] Checking for system updates...
[2026-08-31 22:55:15,775.775 INFO    ] 200
[2026-08-31 22:55:15,778.778 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:55:15,833.833 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:55:15,836.836 INFO    ] No update needed
[2026-08-31 22:55:15,839.839 INFO    ] Checking for camera pi updates...
[2026-08-31 22:55:15,876.876 INFO    ] 200
[2026-08-31 22:55:15,879.879 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:55:15,929.929 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:55:15,994.994 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:55:15,997.997 INFO    ] No camera update needed
[2026-08-31 22:55:16,000.000 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:55:16,002.002 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:55:16,008.008 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:55:16,014.014 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:55:18,054.054 INFO    ] ================================================
[2026-08-31 22:55:18,070.070 INFO    ] Launching Daemon at Mon Aug 31 22:55:18 IST 2026
[2026-08-31 22:55:18,080.080 INFO    ] ================================================
[2026-08-31 22:55:18,777.777 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:55:18
[2026-08-31 22:55:19,411.411 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:55:19,701.701 INFO    ] Initializing speech engine...
[2026-08-31 22:55:19,712.712 INFO    ] 2026-08-31 22:55:19
[2026-08-31 22:55:19,981.981 INFO    ] 2026-08-31 22:55:19
[2026-08-31 22:55:20,041.041 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:55:20,274.274 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:55:20,280.280 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:55:20,493.493 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:55:20,543.543 INFO    ] time= 31/08/2026 22:55:20
[2026-08-31 22:55:20,560.560 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:55:20,571.571 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:55:20,686.686 INFO    ] No existing commands found in stream
[2026-08-31 22:55:25,710.710 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:55:25,713.713 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-08-31 22:55:29,525.525 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 22:55:29,528.528 INFO    ] Checking for system updates...
[2026-08-31 22:55:29,567.567 INFO    ] 200
[2026-08-31 22:55:29,570.570 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:55:29,627.627 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:55:29,630.630 INFO    ] No update needed
[2026-08-31 22:55:29,633.633 INFO    ] Checking for camera pi updates...
[2026-08-31 22:55:29,669.669 INFO    ] 200
[2026-08-31 22:55:29,672.672 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:55:29,717.717 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:55:29,801.801 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:55:29,804.804 INFO    ] No camera update needed
[2026-08-31 22:55:29,807.807 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:55:29,809.809 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:55:29,816.816 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:55:29,822.822 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:55:31,862.862 INFO    ] ================================================
[2026-08-31 22:55:31,879.879 INFO    ] Launching Daemon at Mon Aug 31 22:55:31 IST 2026
[2026-08-31 22:55:31,891.891 INFO    ] ================================================
[2026-08-31 22:55:32,500.500 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:55:32
[2026-08-31 22:55:33,139.139 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:55:33,433.433 INFO    ] Initializing speech engine...
[2026-08-31 22:55:33,442.442 INFO    ] 2026-08-31 22:55:33
[2026-08-31 22:55:33,713.713 INFO    ] 2026-08-31 22:55:33
[2026-08-31 22:55:33,770.770 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:55:34,062.062 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:55:34,068.068 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:55:34,242.242 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:55:34,272.272 INFO    ] time= 31/08/2026 22:55:34
[2026-08-31 22:55:34,279.279 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:55:34,300.300 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:55:34,417.417 INFO    ] No existing commands found in stream
[2026-08-31 22:55:39,442.442 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:55:39,445.445 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-08-31 22:55:42,524.524 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 22:55:42,527.527 INFO    ] Checking for system updates...
[2026-08-31 22:55:42,563.563 INFO    ] 200
[2026-08-31 22:55:42,566.566 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:55:42,620.620 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:55:42,622.622 INFO    ] No update needed
[2026-08-31 22:55:42,625.625 INFO    ] Checking for camera pi updates...
[2026-08-31 22:55:42,659.659 INFO    ] 200
[2026-08-31 22:55:42,661.661 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:55:42,708.708 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:55:42,890.890 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:55:42,892.892 INFO    ] No camera update needed
[2026-08-31 22:55:42,894.894 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:55:42,897.897 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:55:42,902.902 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:55:42,907.907 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:55:44,946.946 INFO    ] ================================================
[2026-08-31 22:55:44,961.961 INFO    ] Launching Daemon at Mon Aug 31 22:55:44 IST 2026
[2026-08-31 22:55:44,973.973 INFO    ] ================================================
[2026-08-31 22:55:45,551.551 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:55:45
[2026-08-31 22:55:46,147.147 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:55:46,403.403 INFO    ] Initializing speech engine...
[2026-08-31 22:55:46,417.417 INFO    ] 2026-08-31 22:55:46
[2026-08-31 22:55:46,698.698 INFO    ] 2026-08-31 22:55:46
[2026-08-31 22:55:46,733.733 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:55:46,946.946 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:55:46,998.998 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:55:47,166.166 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:55:47,189.189 INFO    ] time= 31/08/2026 22:55:47
[2026-08-31 22:55:47,253.253 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:55:47,307.307 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:55:47,367.367 INFO    ] No existing commands found in stream
[2026-08-31 22:55:52,379.379 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:55:52,382.382 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-08-31 22:55:53,137.137 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 22:55:53,140.140 INFO    ] Checking for system updates...
[2026-08-31 22:55:53,176.176 INFO    ] 200
[2026-08-31 22:55:53,178.178 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:55:53,230.230 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:55:53,233.233 INFO    ] No update needed
[2026-08-31 22:55:53,235.235 INFO    ] Checking for camera pi updates...
[2026-08-31 22:55:53,268.268 INFO    ] 200
[2026-08-31 22:55:53,271.271 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:55:53,317.317 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:55:53,386.386 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:55:53,389.389 INFO    ] No camera update needed
[2026-08-31 22:55:53,391.391 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:55:53,393.393 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:55:53,398.398 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:55:53,403.403 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:55:55,443.443 INFO    ] ================================================
[2026-08-31 22:55:55,459.459 INFO    ] Launching Daemon at Mon Aug 31 22:55:55 IST 2026
[2026-08-31 22:55:55,470.470 INFO    ] ================================================
[2026-08-31 22:55:56,087.087 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:55:56
[2026-08-31 22:55:56,723.723 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:55:57,015.015 INFO    ] Initializing speech engine...
[2026-08-31 22:55:57,024.024 INFO    ] 2026-08-31 22:55:57
[2026-08-31 22:55:57,287.287 INFO    ] 2026-08-31 22:55:57
[2026-08-31 22:55:57,346.346 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:55:57,578.578 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:55:57,584.584 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:55:57,720.720 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:55:57,781.781 INFO    ] time= 31/08/2026 22:55:57
[2026-08-31 22:55:57,830.830 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:55:57,853.853 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:55:57,924.924 INFO    ] No existing commands found in stream
[2026-08-31 22:56:02,961.961 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:56:02,967.967 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-08-31 22:56:04,860.860 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 22:56:04,863.863 INFO    ] Checking for system updates...
[2026-08-31 22:56:04,899.899 INFO    ] 200
[2026-08-31 22:56:04,902.902 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:56:04,959.959 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:56:04,961.961 INFO    ] No update needed
[2026-08-31 22:56:04,964.964 INFO    ] Checking for camera pi updates...
[2026-08-31 22:56:04,998.998 INFO    ] 200
[2026-08-31 22:56:05,001.001 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:56:05,042.042 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:56:05,122.122 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:56:05,125.125 INFO    ] No camera update needed
[2026-08-31 22:56:05,128.128 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:56:05,131.131 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:56:05,137.137 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:56:05,142.142 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:56:07,183.183 INFO    ] ================================================
[2026-08-31 22:56:07,199.199 INFO    ] Launching Daemon at Mon Aug 31 22:56:07 IST 2026
[2026-08-31 22:56:07,210.210 INFO    ] ================================================
[2026-08-31 22:56:07,777.777 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:56:07
[2026-08-31 22:56:08,366.366 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:56:08,623.623 INFO    ] Initializing speech engine...
[2026-08-31 22:56:08,629.629 INFO    ] 2026-08-31 22:56:08
[2026-08-31 22:56:08,915.915 INFO    ] 2026-08-31 22:56:08
[2026-08-31 22:56:08,953.953 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:56:09,145.145 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:56:09,158.158 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:56:09,321.321 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:56:09,328.328 INFO    ] time= 31/08/2026 22:56:09
[2026-08-31 22:56:09,365.365 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:56:09,400.400 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:56:09,534.534 INFO    ] No existing commands found in stream
[2026-08-31 22:56:14,551.551 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:56:14,553.553 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-08-31 22:56:16,896.896 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 22:56:16,899.899 INFO    ] Checking for system updates...
[2026-08-31 22:56:16,935.935 INFO    ] 200
[2026-08-31 22:56:16,938.938 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:56:16,991.991 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:56:16,994.994 INFO    ] No update needed
[2026-08-31 22:56:16,996.996 INFO    ] Checking for camera pi updates...
[2026-08-31 22:56:17,034.034 INFO    ] 200
[2026-08-31 22:56:17,036.036 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:56:17,083.083 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:56:17,188.188 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:56:17,191.191 INFO    ] No camera update needed
[2026-08-31 22:56:17,194.194 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:56:17,196.196 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:56:17,202.202 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:56:17,208.208 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:56:19,248.248 INFO    ] ================================================
[2026-08-31 22:56:19,263.263 INFO    ] Launching Daemon at Mon Aug 31 22:56:19 IST 2026
[2026-08-31 22:56:19,275.275 INFO    ] ================================================
[2026-08-31 22:56:19,850.850 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:56:19
[2026-08-31 22:56:20,449.449 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:56:20,725.725 INFO    ] Initializing speech engine...
[2026-08-31 22:56:20,733.733 INFO    ] 2026-08-31 22:56:20
[2026-08-31 22:56:20,994.994 INFO    ] 2026-08-31 22:56:20
[2026-08-31 22:56:21,049.049 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:56:21,269.269 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:56:21,278.278 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:56:21,417.417 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:56:21,487.487 INFO    ] time= 31/08/2026 22:56:21
[2026-08-31 22:56:21,538.538 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:56:21,545.545 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:56:21,688.688 INFO    ] No existing commands found in stream
[2026-08-31 22:56:26,703.703 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:56:26,706.706 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-08-31 22:56:27,803.803 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 22:56:27,806.806 INFO    ] Checking for system updates...
[2026-08-31 22:56:27,844.844 INFO    ] 200
[2026-08-31 22:56:27,847.847 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:56:27,899.899 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:56:27,901.901 INFO    ] No update needed
[2026-08-31 22:56:27,904.904 INFO    ] Checking for camera pi updates...
[2026-08-31 22:56:27,940.940 INFO    ] 200
[2026-08-31 22:56:27,943.943 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:56:27,984.984 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:56:28,071.071 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:56:28,073.073 INFO    ] No camera update needed
[2026-08-31 22:56:28,076.076 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:56:28,079.079 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:56:28,085.085 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:56:28,090.090 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:56:30,132.132 INFO    ] ================================================
[2026-08-31 22:56:30,147.147 INFO    ] Launching Daemon at Mon Aug 31 22:56:30 IST 2026
[2026-08-31 22:56:30,158.158 INFO    ] ================================================
[2026-08-31 22:56:30,790.790 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:56:30
[2026-08-31 22:56:31,438.438 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:56:31,732.732 INFO    ] Initializing speech engine...
[2026-08-31 22:56:31,740.740 INFO    ] 2026-08-31 22:56:31
[2026-08-31 22:56:32,030.030 INFO    ] 2026-08-31 22:56:32
[2026-08-31 22:56:32,076.076 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:56:32,341.341 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:56:32,353.353 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:56:32,500.500 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:56:32,553.553 INFO    ] time= 31/08/2026 22:56:32
[2026-08-31 22:56:32,604.604 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:56:32,644.644 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:56:32,786.786 INFO    ] No existing commands found in stream
[2026-08-31 22:56:37,814.814 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:56:37,817.817 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-08-31 22:56:38,499.499 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 22:56:38,501.501 INFO    ] Checking for system updates...
[2026-08-31 22:56:38,537.537 INFO    ] 200
[2026-08-31 22:56:38,539.539 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:56:38,595.595 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:56:38,598.598 INFO    ] No update needed
[2026-08-31 22:56:38,600.600 INFO    ] Checking for camera pi updates...
[2026-08-31 22:56:38,633.633 INFO    ] 200
[2026-08-31 22:56:38,635.635 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:56:38,676.676 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:56:38,776.776 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:56:38,779.779 INFO    ] No camera update needed
[2026-08-31 22:56:38,782.782 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:56:38,784.784 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:56:38,791.791 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:56:38,796.796 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:56:40,837.837 INFO    ] ================================================
[2026-08-31 22:56:40,853.853 INFO    ] Launching Daemon at Mon Aug 31 22:56:40 IST 2026
[2026-08-31 22:56:40,864.864 INFO    ] ================================================
[2026-08-31 22:56:41,444.444 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:56:41
[2026-08-31 22:56:42,040.040 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:56:42,315.315 INFO    ] Initializing speech engine...
[2026-08-31 22:56:42,322.322 INFO    ] 2026-08-31 22:56:42
[2026-08-31 22:56:42,581.581 INFO    ] 2026-08-31 22:56:42
[2026-08-31 22:56:42,611.611 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:56:42,855.855 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:56:42,864.864 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:56:43,092.092 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:56:43,123.123 INFO    ] time= 31/08/2026 22:56:43
[2026-08-31 22:56:43,138.138 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:56:43,145.145 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:56:43,265.265 INFO    ] No existing commands found in stream
[2026-08-31 22:56:48,286.286 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:56:48,289.289 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-08-31 22:56:50,133.133 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 22:56:50,136.136 INFO    ] Checking for system updates...
[2026-08-31 22:56:50,172.172 INFO    ] 200
[2026-08-31 22:56:50,175.175 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:56:50,227.227 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:56:50,229.229 INFO    ] No update needed
[2026-08-31 22:56:50,232.232 INFO    ] Checking for camera pi updates...
[2026-08-31 22:56:50,265.265 INFO    ] 200
[2026-08-31 22:56:50,267.267 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:56:50,308.308 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:56:50,391.391 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:56:50,393.393 INFO    ] No camera update needed
[2026-08-31 22:56:50,395.395 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:56:50,398.398 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:56:50,404.404 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:56:50,410.410 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:56:52,450.450 INFO    ] ================================================
[2026-08-31 22:56:52,465.465 INFO    ] Launching Daemon at Mon Aug 31 22:56:52 IST 2026
[2026-08-31 22:56:52,477.477 INFO    ] ================================================
[2026-08-31 22:56:53,047.047 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:56:53
[2026-08-31 22:56:53,634.634 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:56:53,889.889 INFO    ] Initializing speech engine...
[2026-08-31 22:56:53,895.895 INFO    ] 2026-08-31 22:56:53
[2026-08-31 22:56:54,183.183 INFO    ] 2026-08-31 22:56:54
[2026-08-31 22:56:54,220.220 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:56:54,413.413 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:56:54,426.426 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:56:54,585.585 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:56:54,593.593 INFO    ] time= 31/08/2026 22:56:54
[2026-08-31 22:56:54,600.600 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:56:54,606.606 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:56:54,735.735 INFO    ] No existing commands found in stream
[2026-08-31 22:56:59,759.759 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:56:59,762.762 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-08-31 22:57:03,457.457 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 22:57:03,460.460 INFO    ] Checking for system updates...
[2026-08-31 22:57:03,495.495 INFO    ] 200
[2026-08-31 22:57:03,498.498 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:57:03,556.556 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:57:03,558.558 INFO    ] No update needed
[2026-08-31 22:57:03,561.561 INFO    ] Checking for camera pi updates...
[2026-08-31 22:57:03,595.595 INFO    ] 200
[2026-08-31 22:57:03,597.597 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:57:03,642.642 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:57:03,733.733 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:57:03,736.736 INFO    ] No camera update needed
[2026-08-31 22:57:03,738.738 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:57:03,740.740 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:57:03,746.746 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:57:03,751.751 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:57:05,790.790 INFO    ] ================================================
[2026-08-31 22:57:05,806.806 INFO    ] Launching Daemon at Mon Aug 31 22:57:05 IST 2026
[2026-08-31 22:57:05,818.818 INFO    ] ================================================
[2026-08-31 22:57:06,502.502 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:57:06
[2026-08-31 22:57:07,161.161 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:57:07,433.433 INFO    ] Initializing speech engine...
[2026-08-31 22:57:07,449.449 INFO    ] 2026-08-31 22:57:07
[2026-08-31 22:57:07,720.720 INFO    ] 2026-08-31 22:57:07
[2026-08-31 22:57:07,755.755 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:57:07,973.973 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:57:07,981.981 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:57:08,126.126 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:57:08,130.130 INFO    ] time= 31/08/2026 22:57:08
[2026-08-31 22:57:08,137.137 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:57:08,179.179 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:57:08,280.280 INFO    ] No existing commands found in stream
[2026-08-31 22:57:13,310.310 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:57:13,313.313 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-08-31 22:57:14,090.090 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 22:57:14,093.093 INFO    ] Checking for system updates...
[2026-08-31 22:57:14,130.130 INFO    ] 200
[2026-08-31 22:57:14,133.133 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:57:14,185.185 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:57:14,188.188 INFO    ] No update needed
[2026-08-31 22:57:14,190.190 INFO    ] Checking for camera pi updates...
[2026-08-31 22:57:14,224.224 INFO    ] 200
[2026-08-31 22:57:14,226.226 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:57:14,266.266 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:57:14,365.365 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:57:14,368.368 INFO    ] No camera update needed
[2026-08-31 22:57:14,370.370 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:57:14,372.372 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:57:14,378.378 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:57:14,383.383 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:57:16,421.421 INFO    ] ================================================
[2026-08-31 22:57:16,437.437 INFO    ] Launching Daemon at Mon Aug 31 22:57:16 IST 2026
[2026-08-31 22:57:16,448.448 INFO    ] ================================================
[2026-08-31 22:57:17,086.086 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:57:17
[2026-08-31 22:57:17,745.745 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:57:18,046.046 INFO    ] Initializing speech engine...
[2026-08-31 22:57:18,060.060 INFO    ] 2026-08-31 22:57:18
[2026-08-31 22:57:18,331.331 INFO    ] 2026-08-31 22:57:18
[2026-08-31 22:57:18,385.385 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:57:18,618.618 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:57:18,624.624 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:57:18,853.853 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:57:18,889.889 INFO    ] time= 31/08/2026 22:57:18
[2026-08-31 22:57:18,905.905 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:57:18,916.916 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:57:19,081.081 INFO    ] No existing commands found in stream
[2026-08-31 22:57:24,110.110 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:57:24,113.113 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-08-31 22:57:26,051.051 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 22:57:26,054.054 INFO    ] Checking for system updates...
[2026-08-31 22:57:26,090.090 INFO    ] 200
[2026-08-31 22:57:26,093.093 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:57:26,145.145 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:57:26,148.148 INFO    ] No update needed
[2026-08-31 22:57:26,150.150 INFO    ] Checking for camera pi updates...
[2026-08-31 22:57:26,184.184 INFO    ] 200
[2026-08-31 22:57:26,186.186 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:57:26,231.231 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:57:26,334.334 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:57:26,337.337 INFO    ] No camera update needed
[2026-08-31 22:57:26,339.339 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:57:26,341.341 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:57:26,347.347 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:57:26,352.352 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:57:28,390.390 INFO    ] ================================================
[2026-08-31 22:57:28,405.405 INFO    ] Launching Daemon at Mon Aug 31 22:57:28 IST 2026
[2026-08-31 22:57:28,416.416 INFO    ] ================================================
[2026-08-31 22:57:28,982.982 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:57:28
[2026-08-31 22:57:29,564.564 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:57:29,817.817 INFO    ] Initializing speech engine...
[2026-08-31 22:57:29,826.826 INFO    ] 2026-08-31 22:57:29
[2026-08-31 22:57:30,116.116 INFO    ] 2026-08-31 22:57:30
[2026-08-31 22:57:30,154.154 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:57:30,376.376 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:57:30,411.411 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:57:30,527.527 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:57:30,531.531 INFO    ] time= 31/08/2026 22:57:30
[2026-08-31 22:57:30,537.537 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:57:30,585.585 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:57:30,750.750 INFO    ] No existing commands found in stream
[2026-08-31 22:57:35,760.760 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:57:35,763.763 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-08-31 22:57:37,904.904 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 22:57:37,906.906 INFO    ] Checking for system updates...
[2026-08-31 22:57:37,945.945 INFO    ] 200
[2026-08-31 22:57:37,948.948 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:57:38,005.005 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:57:38,008.008 INFO    ] No update needed
[2026-08-31 22:57:38,010.010 INFO    ] Checking for camera pi updates...
[2026-08-31 22:57:38,047.047 INFO    ] 200
[2026-08-31 22:57:38,049.049 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:57:38,090.090 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:57:38,187.187 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:57:38,190.190 INFO    ] No camera update needed
[2026-08-31 22:57:38,192.192 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:57:38,194.194 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:57:38,200.200 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:57:38,204.204 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:57:40,243.243 INFO    ] ================================================
[2026-08-31 22:57:40,259.259 INFO    ] Launching Daemon at Mon Aug 31 22:57:40 IST 2026
[2026-08-31 22:57:40,270.270 INFO    ] ================================================
[2026-08-31 22:57:40,911.911 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:57:40
[2026-08-31 22:57:41,571.571 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:57:41,869.869 INFO    ] Initializing speech engine...
[2026-08-31 22:57:41,883.883 INFO    ] 2026-08-31 22:57:41
[2026-08-31 22:57:42,159.159 INFO    ] 2026-08-31 22:57:42
[2026-08-31 22:57:42,204.204 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:57:42,446.446 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:57:42,456.456 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:57:42,605.605 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:57:42,647.647 INFO    ] time= 31/08/2026 22:57:42
[2026-08-31 22:57:42,697.697 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:57:42,752.752 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:57:42,824.824 INFO    ] No existing commands found in stream
[2026-08-31 22:57:47,846.846 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:57:47,849.849 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-08-31 22:57:50,017.017 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 22:57:50,020.020 INFO    ] Checking for system updates...
[2026-08-31 22:57:50,055.055 INFO    ] 200
[2026-08-31 22:57:50,057.057 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:57:50,110.110 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:57:50,113.113 INFO    ] No update needed
[2026-08-31 22:57:50,115.115 INFO    ] Checking for camera pi updates...
[2026-08-31 22:57:50,152.152 INFO    ] 200
[2026-08-31 22:57:50,154.154 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:57:50,194.194 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:57:50,372.372 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:57:50,375.375 INFO    ] No camera update needed
[2026-08-31 22:57:50,377.377 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:57:50,380.380 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:57:50,385.385 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:57:50,390.390 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:57:52,428.428 INFO    ] ================================================
[2026-08-31 22:57:52,443.443 INFO    ] Launching Daemon at Mon Aug 31 22:57:52 IST 2026
[2026-08-31 22:57:52,454.454 INFO    ] ================================================
[2026-08-31 22:57:53,034.034 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:57:53
[2026-08-31 22:57:53,633.633 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:57:53,910.910 INFO    ] Initializing speech engine...
[2026-08-31 22:57:53,917.917 INFO    ] 2026-08-31 22:57:53
[2026-08-31 22:57:54,179.179 INFO    ] 2026-08-31 22:57:54
[2026-08-31 22:57:54,233.233 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:57:54,460.460 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:57:54,466.466 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:57:54,695.695 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:57:54,726.726 INFO    ] time= 31/08/2026 22:57:54
[2026-08-31 22:57:54,744.744 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:57:54,775.775 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:57:54,926.926 INFO    ] No existing commands found in stream
[2026-08-31 22:57:59,952.952 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:57:59,955.955 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-08-31 22:58:00,453.453 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 22:58:00,456.456 INFO    ] Checking for system updates...
[2026-08-31 22:58:00,498.498 INFO    ] 200
[2026-08-31 22:58:00,501.501 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:58:00,553.553 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:58:00,555.555 INFO    ] No update needed
[2026-08-31 22:58:00,558.558 INFO    ] Checking for camera pi updates...
[2026-08-31 22:58:00,599.599 INFO    ] 200
[2026-08-31 22:58:00,601.601 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:58:00,641.641 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:58:00,722.722 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:58:00,724.724 INFO    ] No camera update needed
[2026-08-31 22:58:00,726.726 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:58:00,729.729 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:58:00,734.734 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:58:00,739.739 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:58:02,785.785 INFO    ] ================================================
[2026-08-31 22:58:02,802.802 INFO    ] Launching Daemon at Mon Aug 31 22:58:02 IST 2026
[2026-08-31 22:58:02,814.814 INFO    ] ================================================
[2026-08-31 22:58:03,411.411 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:58:03
[2026-08-31 22:58:03,991.991 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:58:04,238.238 INFO    ] Initializing speech engine...
[2026-08-31 22:58:04,252.252 INFO    ] 2026-08-31 22:58:04
[2026-08-31 22:58:04,516.516 INFO    ] 2026-08-31 22:58:04
[2026-08-31 22:58:04,549.549 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:58:04,747.747 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:58:04,775.775 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:58:05,020.020 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:58:05,070.070 INFO    ] time= 31/08/2026 22:58:05
[2026-08-31 22:58:05,085.085 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:58:05,101.101 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:58:05,210.210 INFO    ] No existing commands found in stream
[2026-08-31 22:58:10,241.241 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:58:10,243.243 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-08-31 22:58:11,842.842 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 22:58:11,844.844 INFO    ] Checking for system updates...
[2026-08-31 22:58:11,883.883 INFO    ] 200
[2026-08-31 22:58:11,886.886 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:58:11,944.944 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:58:11,946.946 INFO    ] No update needed
[2026-08-31 22:58:11,949.949 INFO    ] Checking for camera pi updates...
[2026-08-31 22:58:11,982.982 INFO    ] 200
[2026-08-31 22:58:11,985.985 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:58:12,029.029 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:58:12,114.114 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:58:12,116.116 INFO    ] No camera update needed
[2026-08-31 22:58:12,119.119 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:58:12,121.121 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:58:12,126.126 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:58:12,131.131 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:58:14,170.170 INFO    ] ================================================
[2026-08-31 22:58:14,184.184 INFO    ] Launching Daemon at Mon Aug 31 22:58:14 IST 2026
[2026-08-31 22:58:14,195.195 INFO    ] ================================================
[2026-08-31 22:58:14,769.769 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:58:14
[2026-08-31 22:58:15,424.424 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:58:15,719.719 INFO    ] Initializing speech engine...
[2026-08-31 22:58:15,727.727 INFO    ] 2026-08-31 22:58:15
[2026-08-31 22:58:16,002.002 INFO    ] 2026-08-31 22:58:15
[2026-08-31 22:58:16,056.056 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:58:16,337.337 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:58:16,346.346 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:58:16,532.532 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:58:16,549.549 INFO    ] time= 31/08/2026 22:58:16
[2026-08-31 22:58:16,567.567 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:58:16,596.596 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:58:16,708.708 INFO    ] No existing commands found in stream
[2026-08-31 22:58:21,738.738 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:58:21,741.741 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-08-31 22:58:23,092.092 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 22:58:23,095.095 INFO    ] Checking for system updates...
[2026-08-31 22:58:23,135.135 INFO    ] 200
[2026-08-31 22:58:23,137.137 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:58:23,196.196 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:58:23,198.198 INFO    ] No update needed
[2026-08-31 22:58:23,200.200 INFO    ] Checking for camera pi updates...
[2026-08-31 22:58:23,234.234 INFO    ] 200
[2026-08-31 22:58:23,236.236 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:58:23,276.276 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:58:23,351.351 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:58:23,354.354 INFO    ] No camera update needed
[2026-08-31 22:58:23,356.356 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:58:23,358.358 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:58:23,364.364 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:58:23,369.369 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:58:25,409.409 INFO    ] ================================================
[2026-08-31 22:58:25,424.424 INFO    ] Launching Daemon at Mon Aug 31 22:58:25 IST 2026
[2026-08-31 22:58:25,437.437 INFO    ] ================================================
[2026-08-31 22:58:26,002.002 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:58:25
[2026-08-31 22:58:26,583.583 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:58:26,852.852 INFO    ] Initializing speech engine...
[2026-08-31 22:58:26,861.861 INFO    ] 2026-08-31 22:58:26
[2026-08-31 22:58:27,121.121 INFO    ] 2026-08-31 22:58:27
[2026-08-31 22:58:27,157.157 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:58:27,376.376 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:58:27,384.384 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:58:27,528.528 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:58:27,534.534 INFO    ] time= 31/08/2026 22:58:27
[2026-08-31 22:58:27,540.540 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:58:27,546.546 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:58:27,691.691 INFO    ] No existing commands found in stream
[2026-08-31 22:58:32,716.716 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:58:32,719.719 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-08-31 22:58:33,761.761 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 22:58:33,764.764 INFO    ] Checking for system updates...
[2026-08-31 22:58:33,803.803 INFO    ] 200
[2026-08-31 22:58:33,805.805 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:58:33,865.865 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:58:33,867.867 INFO    ] No update needed
[2026-08-31 22:58:33,870.870 INFO    ] Checking for camera pi updates...
[2026-08-31 22:58:33,903.903 INFO    ] 200
[2026-08-31 22:58:33,905.905 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:58:33,946.946 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:58:34,031.031 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:58:34,033.033 INFO    ] No camera update needed
[2026-08-31 22:58:34,035.035 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:58:34,038.038 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:58:34,043.043 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:58:34,048.048 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:58:36,089.089 INFO    ] ================================================
[2026-08-31 22:58:36,105.105 INFO    ] Launching Daemon at Mon Aug 31 22:58:36 IST 2026
[2026-08-31 22:58:36,115.115 INFO    ] ================================================
[2026-08-31 22:58:36,699.699 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:58:36
[2026-08-31 22:58:37,304.304 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:58:37,588.588 INFO    ] Initializing speech engine...
[2026-08-31 22:58:37,594.594 INFO    ] 2026-08-31 22:58:37
[2026-08-31 22:58:37,843.843 INFO    ] 2026-08-31 22:58:37
[2026-08-31 22:58:37,879.879 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:58:38,083.083 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:58:38,135.135 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:58:38,286.286 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:58:38,335.335 INFO    ] time= 31/08/2026 22:58:38
[2026-08-31 22:58:38,395.395 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:58:38,408.408 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:58:38,529.529 INFO    ] No existing commands found in stream
[2026-08-31 22:58:43,560.560 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:58:43,562.562 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-08-31 22:58:45,536.536 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 22:58:45,539.539 INFO    ] Checking for system updates...
[2026-08-31 22:58:45,578.578 INFO    ] 200
[2026-08-31 22:58:45,581.581 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:58:45,639.639 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:58:45,641.641 INFO    ] No update needed
[2026-08-31 22:58:45,644.644 INFO    ] Checking for camera pi updates...
[2026-08-31 22:58:45,680.680 INFO    ] 200
[2026-08-31 22:58:45,683.683 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:58:45,723.723 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:58:45,804.804 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:58:45,806.806 INFO    ] No camera update needed
[2026-08-31 22:58:45,809.809 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:58:45,811.811 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:58:45,817.817 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:58:45,822.822 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:58:47,861.861 INFO    ] ================================================
[2026-08-31 22:58:47,876.876 INFO    ] Launching Daemon at Mon Aug 31 22:58:47 IST 2026
[2026-08-31 22:58:47,887.887 INFO    ] ================================================
[2026-08-31 22:58:48,534.534 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:58:48
[2026-08-31 22:58:49,196.196 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:58:49,498.498 INFO    ] Initializing speech engine...
[2026-08-31 22:58:49,505.505 INFO    ] 2026-08-31 22:58:49
[2026-08-31 22:58:49,775.775 INFO    ] 2026-08-31 22:58:49
[2026-08-31 22:58:49,833.833 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:58:50,072.072 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:58:50,079.079 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:58:50,230.230 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:58:50,290.290 INFO    ] time= 31/08/2026 22:58:50
[2026-08-31 22:58:50,345.345 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:58:50,353.353 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:58:50,505.505 INFO    ] No existing commands found in stream
[2026-08-31 22:58:55,534.534 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:58:55,537.537 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-08-31 22:58:58,364.364 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 22:58:58,367.367 INFO    ] Checking for system updates...
[2026-08-31 22:58:58,403.403 INFO    ] 200
[2026-08-31 22:58:58,405.405 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:58:58,467.467 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:58:58,470.470 INFO    ] No update needed
[2026-08-31 22:58:58,472.472 INFO    ] Checking for camera pi updates...
[2026-08-31 22:58:58,509.509 INFO    ] 200
[2026-08-31 22:58:58,512.512 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:58:58,552.552 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:58:58,625.625 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:58:58,628.628 INFO    ] No camera update needed
[2026-08-31 22:58:58,630.630 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:58:58,632.632 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:58:58,638.638 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:58:58,643.643 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:59:00,685.685 INFO    ] ================================================
[2026-08-31 22:59:00,702.702 INFO    ] Launching Daemon at Mon Aug 31 22:59:00 IST 2026
[2026-08-31 22:59:00,721.721 INFO    ] ================================================
[2026-08-31 22:59:01,410.410 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:59:01
[2026-08-31 22:59:02,335.335 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:59:02,635.635 INFO    ] Initializing speech engine...
[2026-08-31 22:59:02,651.651 INFO    ] 2026-08-31 22:59:02
[2026-08-31 22:59:02,985.985 INFO    ] 2026-08-31 22:59:02
[2026-08-31 22:59:03,023.023 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:59:03,213.213 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:59:03,224.224 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:59:03,377.377 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:59:03,385.385 INFO    ] time= 31/08/2026 22:59:03
[2026-08-31 22:59:03,392.392 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:59:03,417.417 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:59:03,570.570 INFO    ] No existing commands found in stream
[2026-08-31 22:59:08,595.595 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:59:08,598.598 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-08-31 22:59:09,975.975 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 22:59:09,978.978 INFO    ] Checking for system updates...
[2026-08-31 22:59:10,017.017 INFO    ] 200
[2026-08-31 22:59:10,020.020 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:59:10,080.080 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:59:10,083.083 INFO    ] No update needed
[2026-08-31 22:59:10,086.086 INFO    ] Checking for camera pi updates...
[2026-08-31 22:59:10,127.127 INFO    ] 200
[2026-08-31 22:59:10,130.130 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:59:10,171.171 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:59:10,245.245 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:59:10,248.248 INFO    ] No camera update needed
[2026-08-31 22:59:10,250.250 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:59:10,253.253 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:59:10,258.258 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:59:10,263.263 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:59:12,303.303 INFO    ] ================================================
[2026-08-31 22:59:12,318.318 INFO    ] Launching Daemon at Mon Aug 31 22:59:12 IST 2026
[2026-08-31 22:59:12,328.328 INFO    ] ================================================
[2026-08-31 22:59:12,920.920 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:59:12
[2026-08-31 22:59:13,516.516 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:59:13,819.819 INFO    ] Initializing speech engine...
[2026-08-31 22:59:13,831.831 INFO    ] 2026-08-31 22:59:13
[2026-08-31 22:59:14,142.142 INFO    ] 2026-08-31 22:59:14
[2026-08-31 22:59:14,231.231 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:59:14,449.449 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:59:14,458.458 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:59:14,652.652 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:59:14,659.659 INFO    ] time= 31/08/2026 22:59:14
[2026-08-31 22:59:14,677.677 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:59:14,706.706 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:59:14,809.809 INFO    ] No existing commands found in stream
[2026-08-31 22:59:19,826.826 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:59:19,830.830 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-08-31 22:59:21,575.575 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 22:59:21,578.578 INFO    ] Checking for system updates...
[2026-08-31 22:59:21,618.618 INFO    ] 200
[2026-08-31 22:59:21,621.621 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:59:21,680.680 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:59:21,683.683 INFO    ] No update needed
[2026-08-31 22:59:21,685.685 INFO    ] Checking for camera pi updates...
[2026-08-31 22:59:21,724.724 INFO    ] 200
[2026-08-31 22:59:21,727.727 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:59:21,773.773 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:59:21,858.858 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:59:21,860.860 INFO    ] No camera update needed
[2026-08-31 22:59:21,863.863 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:59:21,866.866 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:59:21,872.872 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:59:21,877.877 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:59:23,917.917 INFO    ] ================================================
[2026-08-31 22:59:23,932.932 INFO    ] Launching Daemon at Mon Aug 31 22:59:23 IST 2026
[2026-08-31 22:59:23,942.942 INFO    ] ================================================
[2026-08-31 22:59:24,518.518 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:59:24
[2026-08-31 22:59:25,113.113 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:59:25,377.377 INFO    ] Initializing speech engine...
[2026-08-31 22:59:25,391.391 INFO    ] 2026-08-31 22:59:25
[2026-08-31 22:59:25,672.672 INFO    ] 2026-08-31 22:59:25
[2026-08-31 22:59:25,710.710 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:59:25,904.904 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:59:25,917.917 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:59:26,079.079 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:59:26,084.084 INFO    ] time= 31/08/2026 22:59:26
[2026-08-31 22:59:26,091.091 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:59:26,144.144 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:59:26,271.271 INFO    ] No existing commands found in stream
[2026-08-31 22:59:31,301.301 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:59:31,304.304 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-08-31 22:59:32,728.728 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 22:59:32,731.731 INFO    ] Checking for system updates...
[2026-08-31 22:59:32,766.766 INFO    ] 200
[2026-08-31 22:59:32,769.769 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:59:32,822.822 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:59:32,824.824 INFO    ] No update needed
[2026-08-31 22:59:32,826.826 INFO    ] Checking for camera pi updates...
[2026-08-31 22:59:32,860.860 INFO    ] 200
[2026-08-31 22:59:32,862.862 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:59:32,903.903 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:59:33,012.012 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:59:33,015.015 INFO    ] No camera update needed
[2026-08-31 22:59:33,017.017 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:59:33,020.020 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:59:33,025.025 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:59:33,030.030 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:59:35,070.070 INFO    ] ================================================
[2026-08-31 22:59:35,085.085 INFO    ] Launching Daemon at Mon Aug 31 22:59:35 IST 2026
[2026-08-31 22:59:35,096.096 INFO    ] ================================================
[2026-08-31 22:59:35,676.676 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:59:35
[2026-08-31 22:59:36,272.272 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:59:36,536.536 INFO    ] Initializing speech engine...
[2026-08-31 22:59:36,549.549 INFO    ] 2026-08-31 22:59:36
[2026-08-31 22:59:36,831.831 INFO    ] 2026-08-31 22:59:36
[2026-08-31 22:59:36,864.864 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:59:37,061.061 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:59:37,076.076 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:59:37,217.217 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:59:37,239.239 INFO    ] time= 31/08/2026 22:59:37
[2026-08-31 22:59:37,247.247 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:59:37,255.255 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:59:37,326.326 INFO    ] No existing commands found in stream
[2026-08-31 22:59:42,339.339 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:59:42,342.342 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-08-31 22:59:46,204.204 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 22:59:46,207.207 INFO    ] Checking for system updates...
[2026-08-31 22:59:46,242.242 INFO    ] 200
[2026-08-31 22:59:46,245.245 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:59:46,302.302 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:59:46,305.305 INFO    ] No update needed
[2026-08-31 22:59:46,307.307 INFO    ] Checking for camera pi updates...
[2026-08-31 22:59:46,344.344 INFO    ] 200
[2026-08-31 22:59:46,347.347 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:59:46,392.392 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:59:46,494.494 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 22:59:46,497.497 INFO    ] No camera update needed
[2026-08-31 22:59:46,499.499 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:59:46,502.502 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:59:46,507.507 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:59:46,512.512 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 22:59:48,551.551 INFO    ] ================================================
[2026-08-31 22:59:48,566.566 INFO    ] Launching Daemon at Mon Aug 31 22:59:48 IST 2026
[2026-08-31 22:59:48,576.576 INFO    ] ================================================
[2026-08-31 22:59:49,144.144 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 22:59:49
[2026-08-31 22:59:49,728.728 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 22:59:49,983.983 INFO    ] Initializing speech engine...
[2026-08-31 22:59:49,988.988 INFO    ] 2026-08-31 22:59:49
[2026-08-31 22:59:50,281.281 INFO    ] 2026-08-31 22:59:50
[2026-08-31 22:59:50,318.318 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 22:59:50,516.516 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 22:59:50,529.529 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 22:59:50,687.687 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 22:59:50,697.697 INFO    ] time= 31/08/2026 22:59:50
[2026-08-31 22:59:50,705.705 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 22:59:50,756.756 INFO    ] Checking for existing commands in stream...
[2026-08-31 22:59:50,895.895 INFO    ] No existing commands found in stream
[2026-08-31 22:59:55,925.925 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 22:59:55,928.928 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-08-31 22:59:58,852.852 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 22:59:58,855.855 INFO    ] Checking for system updates...
[2026-08-31 22:59:58,893.893 INFO    ] 200
[2026-08-31 22:59:58,896.896 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:59:58,949.949 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:59:58,951.951 INFO    ] No update needed
[2026-08-31 22:59:58,954.954 INFO    ] Checking for camera pi updates...
[2026-08-31 22:59:58,988.988 INFO    ] 200
[2026-08-31 22:59:58,991.991 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 22:59:59,036.036 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 22:59:59,221.221 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 22:59:59,224.224 INFO    ] No camera update needed
[2026-08-31 22:59:59,226.226 INFO    ] Script finished. Safe exiting...
[2026-08-31 22:59:59,229.229 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 22:59:59,235.235 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 22:59:59,240.240 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:00:01,281.281 INFO    ] ================================================
[2026-08-31 23:00:01,296.296 INFO    ] Launching Daemon at Mon Aug 31 23:00:01 IST 2026
[2026-08-31 23:00:01,306.306 INFO    ] ================================================
[2026-08-31 23:00:03,537.537 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:00:03
[2026-08-31 23:00:05,421.421 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:00:06,214.214 INFO    ] Initializing speech engine...
[2026-08-31 23:00:06,222.222 INFO    ] 2026-08-31 23:00:06
[2026-08-31 23:00:06,489.489 INFO    ] 2026-08-31 23:00:06
[2026-08-31 23:00:06,521.521 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:00:06,729.729 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:00:06,748.748 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:00:06,939.939 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:00:06,986.986 INFO    ] time= 31/08/2026 23:00:06
[2026-08-31 23:00:07,046.046 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:00:07,075.075 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:00:07,191.191 INFO    ] No existing commands found in stream
[2026-08-31 23:00:12,215.215 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:00:12,218.218 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-08-31 23:00:13,809.809 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 23:00:13,811.811 INFO    ] Checking for system updates...
[2026-08-31 23:00:13,849.849 INFO    ] 200
[2026-08-31 23:00:13,852.852 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:00:13,911.911 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:00:13,913.913 INFO    ] No update needed
[2026-08-31 23:00:13,915.915 INFO    ] Checking for camera pi updates...
[2026-08-31 23:00:13,952.952 INFO    ] 200
[2026-08-31 23:00:13,954.954 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:00:13,999.999 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:00:14,111.111 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:00:14,114.114 INFO    ] No camera update needed
[2026-08-31 23:00:14,116.116 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:00:14,118.118 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:00:14,124.124 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:00:14,129.129 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:00:16,170.170 INFO    ] ================================================
[2026-08-31 23:00:16,185.185 INFO    ] Launching Daemon at Mon Aug 31 23:00:16 IST 2026
[2026-08-31 23:00:16,195.195 INFO    ] ================================================
[2026-08-31 23:00:16,776.776 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:00:16
[2026-08-31 23:00:17,376.376 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:00:17,661.661 INFO    ] Initializing speech engine...
[2026-08-31 23:00:17,674.674 INFO    ] 2026-08-31 23:00:17
[2026-08-31 23:00:17,942.942 INFO    ] 2026-08-31 23:00:17
[2026-08-31 23:00:17,980.980 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:00:18,201.201 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:00:18,209.209 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:00:18,355.355 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:00:18,364.364 INFO    ] time= 31/08/2026 23:00:18
[2026-08-31 23:00:18,411.411 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:00:18,439.439 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:00:18,569.569 INFO    ] No existing commands found in stream
[2026-08-31 23:00:23,594.594 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:00:23,597.597 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-08-31 23:00:24,219.219 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 23:00:24,221.221 INFO    ] Checking for system updates...
[2026-08-31 23:00:24,261.261 INFO    ] 200
[2026-08-31 23:00:24,263.263 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:00:24,316.316 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:00:24,318.318 INFO    ] No update needed
[2026-08-31 23:00:24,321.321 INFO    ] Checking for camera pi updates...
[2026-08-31 23:00:24,354.354 INFO    ] 200
[2026-08-31 23:00:24,357.357 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:00:24,402.402 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:00:24,483.483 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:00:24,486.486 INFO    ] No camera update needed
[2026-08-31 23:00:24,488.488 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:00:24,491.491 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:00:24,496.496 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:00:24,501.501 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:00:26,541.541 INFO    ] ================================================
[2026-08-31 23:00:26,556.556 INFO    ] Launching Daemon at Mon Aug 31 23:00:26 IST 2026
[2026-08-31 23:00:26,566.566 INFO    ] ================================================
[2026-08-31 23:00:27,131.131 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:00:27
[2026-08-31 23:00:27,715.715 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:00:27,985.985 INFO    ] Initializing speech engine...
[2026-08-31 23:00:27,993.993 INFO    ] 2026-08-31 23:00:27
[2026-08-31 23:00:28,239.239 INFO    ] 2026-08-31 23:00:28
[2026-08-31 23:00:28,274.274 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:00:28,466.466 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:00:28,494.494 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:00:28,644.644 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:00:28,647.647 INFO    ] time= 31/08/2026 23:00:28
[2026-08-31 23:00:28,677.677 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:00:28,699.699 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:00:28,827.827 INFO    ] No existing commands found in stream
[2026-08-31 23:00:33,839.839 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:00:33,842.842 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-08-31 23:00:36,359.359 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 23:00:36,362.362 INFO    ] Checking for system updates...
[2026-08-31 23:00:36,398.398 INFO    ] 200
[2026-08-31 23:00:36,400.400 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:00:36,452.452 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:00:36,455.455 INFO    ] No update needed
[2026-08-31 23:00:36,457.457 INFO    ] Checking for camera pi updates...
[2026-08-31 23:00:36,491.491 INFO    ] 200
[2026-08-31 23:00:36,493.493 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:00:36,538.538 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:00:36,618.618 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:00:36,620.620 INFO    ] No camera update needed
[2026-08-31 23:00:36,622.622 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:00:36,624.624 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:00:36,630.630 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:00:36,635.635 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:00:38,675.675 INFO    ] ================================================
[2026-08-31 23:00:38,690.690 INFO    ] Launching Daemon at Mon Aug 31 23:00:38 IST 2026
[2026-08-31 23:00:38,701.701 INFO    ] ================================================
[2026-08-31 23:00:39,341.341 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:00:39
[2026-08-31 23:00:39,995.995 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:00:40,270.270 INFO    ] Initializing speech engine...
[2026-08-31 23:00:40,280.280 INFO    ] 2026-08-31 23:00:40
[2026-08-31 23:00:40,536.536 INFO    ] 2026-08-31 23:00:40
[2026-08-31 23:00:40,582.582 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:00:40,754.754 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:00:40,767.767 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:00:40,913.913 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:00:40,919.919 INFO    ] time= 31/08/2026 23:00:40
[2026-08-31 23:00:40,924.924 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:00:40,972.972 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:00:41,090.090 INFO    ] No existing commands found in stream
[2026-08-31 23:00:46,120.120 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:00:46,122.122 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-08-31 23:00:49,893.893 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 23:00:49,896.896 INFO    ] Checking for system updates...
[2026-08-31 23:00:49,935.935 INFO    ] 200
[2026-08-31 23:00:49,938.938 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:00:49,991.991 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:00:49,993.993 INFO    ] No update needed
[2026-08-31 23:00:49,996.996 INFO    ] Checking for camera pi updates...
[2026-08-31 23:00:50,032.032 INFO    ] 200
[2026-08-31 23:00:50,034.034 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:00:50,074.074 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:00:50,180.180 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:00:50,182.182 INFO    ] No camera update needed
[2026-08-31 23:00:50,184.184 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:00:50,187.187 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:00:50,192.192 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:00:50,197.197 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:00:52,237.237 INFO    ] ================================================
[2026-08-31 23:00:52,253.253 INFO    ] Launching Daemon at Mon Aug 31 23:00:52 IST 2026
[2026-08-31 23:00:52,264.264 INFO    ] ================================================
[2026-08-31 23:00:52,843.843 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:00:52
[2026-08-31 23:00:53,440.440 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:00:53,711.711 INFO    ] Initializing speech engine...
[2026-08-31 23:00:53,721.721 INFO    ] 2026-08-31 23:00:53
[2026-08-31 23:00:53,983.983 INFO    ] 2026-08-31 23:00:53
[2026-08-31 23:00:54,036.036 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:00:54,264.264 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:00:54,269.269 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:00:54,490.490 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:00:54,525.525 INFO    ] time= 31/08/2026 23:00:54
[2026-08-31 23:00:54,531.531 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:00:54,546.546 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:00:54,669.669 INFO    ] No existing commands found in stream
[2026-08-31 23:00:59,690.690 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:00:59,692.692 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-08-31 23:01:01,244.244 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 23:01:01,247.247 INFO    ] Checking for system updates...
[2026-08-31 23:01:01,309.309 INFO    ] 200
[2026-08-31 23:01:01,312.312 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:01:01,365.365 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:01:01,368.368 INFO    ] No update needed
[2026-08-31 23:01:01,371.371 INFO    ] Checking for camera pi updates...
[2026-08-31 23:01:01,408.408 INFO    ] 200
[2026-08-31 23:01:01,412.412 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:01:01,472.472 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:01:01,552.552 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:01:01,557.557 INFO    ] No camera update needed
[2026-08-31 23:01:01,561.561 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:01:01,566.566 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:01:01,579.579 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:01:01,595.595 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:01:03,640.640 INFO    ] ================================================
[2026-08-31 23:01:03,655.655 INFO    ] Launching Daemon at Mon Aug 31 23:01:03 IST 2026
[2026-08-31 23:01:03,666.666 INFO    ] ================================================
[2026-08-31 23:01:04,241.241 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:01:04
[2026-08-31 23:01:04,836.836 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:01:05,112.112 INFO    ] Initializing speech engine...
[2026-08-31 23:01:05,121.121 INFO    ] 2026-08-31 23:01:05
[2026-08-31 23:01:05,377.377 INFO    ] 2026-08-31 23:01:05
[2026-08-31 23:01:05,410.410 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:01:05,606.606 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:01:05,654.654 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:01:05,881.881 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:01:05,936.936 INFO    ] time= 31/08/2026 23:01:05
[2026-08-31 23:01:05,942.942 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:01:05,961.961 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:01:06,114.114 INFO    ] No existing commands found in stream
[2026-08-31 23:01:11,150.150 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:01:11,152.152 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-08-31 23:01:12,980.980 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 23:01:12,983.983 INFO    ] Checking for system updates...
[2026-08-31 23:01:13,021.021 INFO    ] 200
[2026-08-31 23:01:13,024.024 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:01:13,081.081 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:01:13,084.084 INFO    ] No update needed
[2026-08-31 23:01:13,086.086 INFO    ] Checking for camera pi updates...
[2026-08-31 23:01:13,122.122 INFO    ] 200
[2026-08-31 23:01:13,125.125 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:01:13,165.165 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:01:13,263.263 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:01:13,266.266 INFO    ] No camera update needed
[2026-08-31 23:01:13,269.269 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:01:13,271.271 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:01:13,277.277 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:01:13,283.283 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:01:15,324.324 INFO    ] ================================================
[2026-08-31 23:01:15,340.340 INFO    ] Launching Daemon at Mon Aug 31 23:01:15 IST 2026
[2026-08-31 23:01:15,351.351 INFO    ] ================================================
[2026-08-31 23:01:15,998.998 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:01:15
[2026-08-31 23:01:16,666.666 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:01:16,965.965 INFO    ] Initializing speech engine...
[2026-08-31 23:01:16,973.973 INFO    ] 2026-08-31 23:01:16
[2026-08-31 23:01:17,247.247 INFO    ] 2026-08-31 23:01:17
[2026-08-31 23:01:17,300.300 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:01:17,554.554 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:01:17,576.576 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:01:17,788.788 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:01:17,805.805 INFO    ] time= 31/08/2026 23:01:17
[2026-08-31 23:01:17,815.815 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:01:17,843.843 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:01:17,949.949 INFO    ] No existing commands found in stream
[2026-08-31 23:01:22,984.984 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:01:22,987.987 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-08-31 23:01:26,162.162 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 23:01:26,165.165 INFO    ] Checking for system updates...
[2026-08-31 23:01:26,200.200 INFO    ] 200
[2026-08-31 23:01:26,203.203 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:01:26,255.255 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:01:26,258.258 INFO    ] No update needed
[2026-08-31 23:01:26,264.264 INFO    ] Checking for camera pi updates...
[2026-08-31 23:01:26,302.302 INFO    ] 200
[2026-08-31 23:01:26,305.305 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:01:26,345.345 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:01:26,430.430 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:01:26,433.433 INFO    ] No camera update needed
[2026-08-31 23:01:26,436.436 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:01:26,439.439 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:01:26,445.445 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:01:26,451.451 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:01:28,498.498 INFO    ] ================================================
[2026-08-31 23:01:28,514.514 INFO    ] Launching Daemon at Mon Aug 31 23:01:28 IST 2026
[2026-08-31 23:01:28,524.524 INFO    ] ================================================
[2026-08-31 23:01:29,102.102 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:01:29
[2026-08-31 23:01:29,690.690 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:01:29,961.961 INFO    ] Initializing speech engine...
[2026-08-31 23:01:29,970.970 INFO    ] 2026-08-31 23:01:29
[2026-08-31 23:01:30,216.216 INFO    ] 2026-08-31 23:01:30
[2026-08-31 23:01:30,251.251 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:01:30,501.501 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:01:30,510.510 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:01:30,732.732 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:01:30,767.767 INFO    ] time= 31/08/2026 23:01:30
[2026-08-31 23:01:30,774.774 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:01:30,791.791 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:01:30,906.906 INFO    ] No existing commands found in stream
[2026-08-31 23:01:35,930.930 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:01:35,933.933 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-08-31 23:01:37,090.090 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 23:01:37,092.092 INFO    ] Checking for system updates...
[2026-08-31 23:01:37,131.131 INFO    ] 200
[2026-08-31 23:01:37,134.134 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:01:37,188.188 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:01:37,191.191 INFO    ] No update needed
[2026-08-31 23:01:37,193.193 INFO    ] Checking for camera pi updates...
[2026-08-31 23:01:37,230.230 INFO    ] 200
[2026-08-31 23:01:37,233.233 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:01:37,273.273 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:01:37,353.353 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:01:37,355.355 INFO    ] No camera update needed
[2026-08-31 23:01:37,358.358 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:01:37,360.360 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:01:37,366.366 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:01:37,371.371 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:01:39,410.410 INFO    ] ================================================
[2026-08-31 23:01:39,425.425 INFO    ] Launching Daemon at Mon Aug 31 23:01:39 IST 2026
[2026-08-31 23:01:39,436.436 INFO    ] ================================================
[2026-08-31 23:01:40,026.026 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:01:40
[2026-08-31 23:01:40,632.632 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:01:40,897.897 INFO    ] Initializing speech engine...
[2026-08-31 23:01:40,921.921 INFO    ] 2026-08-31 23:01:40
[2026-08-31 23:01:41,193.193 INFO    ] 2026-08-31 23:01:41
[2026-08-31 23:01:41,232.232 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:01:41,451.451 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:01:41,464.464 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:01:41,677.677 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:01:41,685.685 INFO    ] time= 31/08/2026 23:01:41
[2026-08-31 23:01:41,703.703 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:01:41,763.763 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:01:41,852.852 INFO    ] No existing commands found in stream
[2026-08-31 23:01:46,865.865 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:01:46,869.869 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-08-31 23:01:48,361.361 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 23:01:48,364.364 INFO    ] Checking for system updates...
[2026-08-31 23:01:48,402.402 INFO    ] 200
[2026-08-31 23:01:48,405.405 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:01:48,463.463 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:01:48,466.466 INFO    ] No update needed
[2026-08-31 23:01:48,468.468 INFO    ] Checking for camera pi updates...
[2026-08-31 23:01:48,502.502 INFO    ] 200
[2026-08-31 23:01:48,505.505 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:01:48,549.549 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:01:48,646.646 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:01:48,649.649 INFO    ] No camera update needed
[2026-08-31 23:01:48,651.651 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:01:48,654.654 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:01:48,659.659 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:01:48,664.664 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:01:50,704.704 INFO    ] ================================================
[2026-08-31 23:01:50,719.719 INFO    ] Launching Daemon at Mon Aug 31 23:01:50 IST 2026
[2026-08-31 23:01:50,730.730 INFO    ] ================================================
[2026-08-31 23:01:51,308.308 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:01:51
[2026-08-31 23:01:51,893.893 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:01:52,161.161 INFO    ] Initializing speech engine...
[2026-08-31 23:01:52,170.170 INFO    ] 2026-08-31 23:01:52
[2026-08-31 23:01:52,416.416 INFO    ] 2026-08-31 23:01:52
[2026-08-31 23:01:52,451.451 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:01:52,702.702 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:01:52,712.712 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:01:52,940.940 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:01:52,973.973 INFO    ] time= 31/08/2026 23:01:52
[2026-08-31 23:01:52,987.987 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:01:52,996.996 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:01:53,124.124 INFO    ] No existing commands found in stream
[2026-08-31 23:01:58,136.136 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:01:58,139.139 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-08-31 23:01:59,340.340 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 23:01:59,343.343 INFO    ] Checking for system updates...
[2026-08-31 23:01:59,378.378 INFO    ] 200
[2026-08-31 23:01:59,381.381 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:01:59,433.433 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:01:59,435.435 INFO    ] No update needed
[2026-08-31 23:01:59,438.438 INFO    ] Checking for camera pi updates...
[2026-08-31 23:01:59,471.471 INFO    ] 200
[2026-08-31 23:01:59,473.473 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:01:59,514.514 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:01:59,594.594 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:01:59,597.597 INFO    ] No camera update needed
[2026-08-31 23:01:59,599.599 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:01:59,602.602 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:01:59,607.607 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:01:59,612.612 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:02:01,670.670 INFO    ] ================================================
[2026-08-31 23:02:01,721.721 INFO    ] Launching Daemon at Mon Aug 31 23:02:01 IST 2026
[2026-08-31 23:02:01,739.739 INFO    ] ================================================
[2026-08-31 23:02:02,455.455 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:02:02
[2026-08-31 23:02:03,101.101 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:02:03,402.402 INFO    ] Initializing speech engine...
[2026-08-31 23:02:03,407.407 INFO    ] 2026-08-31 23:02:03
[2026-08-31 23:02:03,679.679 INFO    ] 2026-08-31 23:02:03
[2026-08-31 23:02:03,731.731 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:02:03,952.952 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:02:03,961.961 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:02:04,095.095 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:02:04,146.146 INFO    ] time= 31/08/2026 23:02:04
[2026-08-31 23:02:04,200.200 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:02:04,226.226 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:02:04,284.284 INFO    ] No existing commands found in stream
[2026-08-31 23:02:09,296.296 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:02:09,299.299 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-08-31 23:02:11,080.080 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 23:02:11,083.083 INFO    ] Checking for system updates...
[2026-08-31 23:02:11,119.119 INFO    ] 200
[2026-08-31 23:02:11,121.121 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:02:11,173.173 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:02:11,176.176 INFO    ] No update needed
[2026-08-31 23:02:11,178.178 INFO    ] Checking for camera pi updates...
[2026-08-31 23:02:11,212.212 INFO    ] 200
[2026-08-31 23:02:11,214.214 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:02:11,259.259 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:02:11,364.364 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:02:11,366.366 INFO    ] No camera update needed
[2026-08-31 23:02:11,369.369 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:02:11,371.371 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:02:11,377.377 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:02:11,382.382 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:02:13,422.422 INFO    ] ================================================
[2026-08-31 23:02:13,438.438 INFO    ] Launching Daemon at Mon Aug 31 23:02:13 IST 2026
[2026-08-31 23:02:13,449.449 INFO    ] ================================================
[2026-08-31 23:02:14,042.042 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:02:14
[2026-08-31 23:02:14,642.642 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:02:14,915.915 INFO    ] Initializing speech engine...
[2026-08-31 23:02:14,924.924 INFO    ] 2026-08-31 23:02:14
[2026-08-31 23:02:15,186.186 INFO    ] 2026-08-31 23:02:15
[2026-08-31 23:02:15,241.241 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:02:15,491.491 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:02:15,496.496 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:02:15,676.676 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:02:15,729.729 INFO    ] time= 31/08/2026 23:02:15
[2026-08-31 23:02:15,735.735 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:02:15,752.752 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:02:15,882.882 INFO    ] No existing commands found in stream
[2026-08-31 23:02:20,895.895 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:02:20,899.899 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-08-31 23:02:23,656.656 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 23:02:23,659.659 INFO    ] Checking for system updates...
[2026-08-31 23:02:23,699.699 INFO    ] 200
[2026-08-31 23:02:23,701.701 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:02:23,753.753 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:02:23,755.755 INFO    ] No update needed
[2026-08-31 23:02:23,758.758 INFO    ] Checking for camera pi updates...
[2026-08-31 23:02:23,795.795 INFO    ] 200
[2026-08-31 23:02:23,798.798 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:02:23,839.839 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:02:23,921.921 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:02:23,924.924 INFO    ] No camera update needed
[2026-08-31 23:02:23,926.926 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:02:23,928.928 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:02:23,934.934 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:02:23,939.939 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:02:25,980.980 INFO    ] ================================================
[2026-08-31 23:02:26,000.000 INFO    ] Launching Daemon at Mon Aug 31 23:02:25 IST 2026
[2026-08-31 23:02:26,016.016 INFO    ] ================================================
[2026-08-31 23:02:26,595.595 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:02:26
[2026-08-31 23:02:27,277.277 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:02:27,563.563 INFO    ] Initializing speech engine...
[2026-08-31 23:02:27,576.576 INFO    ] 2026-08-31 23:02:27
[2026-08-31 23:02:27,842.842 INFO    ] 2026-08-31 23:02:27
[2026-08-31 23:02:27,886.886 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:02:28,175.175 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:02:28,180.180 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:02:28,366.366 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:02:28,383.383 INFO    ] time= 31/08/2026 23:02:28
[2026-08-31 23:02:28,389.389 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:02:28,411.411 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:02:28,526.526 INFO    ] No existing commands found in stream
[2026-08-31 23:02:33,549.549 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:02:33,551.551 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-08-31 23:02:36,080.080 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 23:02:36,083.083 INFO    ] Checking for system updates...
[2026-08-31 23:02:36,118.118 INFO    ] 200
[2026-08-31 23:02:36,121.121 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:02:36,174.174 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:02:36,176.176 INFO    ] No update needed
[2026-08-31 23:02:36,179.179 INFO    ] Checking for camera pi updates...
[2026-08-31 23:02:36,212.212 INFO    ] 200
[2026-08-31 23:02:36,215.215 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:02:36,260.260 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:02:36,356.356 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:02:36,359.359 INFO    ] No camera update needed
[2026-08-31 23:02:36,361.361 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:02:36,363.363 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:02:36,369.369 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:02:36,374.374 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:02:38,413.413 INFO    ] ================================================
[2026-08-31 23:02:38,429.429 INFO    ] Launching Daemon at Mon Aug 31 23:02:38 IST 2026
[2026-08-31 23:02:38,441.441 INFO    ] ================================================
[2026-08-31 23:02:39,004.004 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:02:39
[2026-08-31 23:02:39,584.584 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:02:39,852.852 INFO    ] Initializing speech engine...
[2026-08-31 23:02:39,861.861 INFO    ] 2026-08-31 23:02:39
[2026-08-31 23:02:40,113.113 INFO    ] 2026-08-31 23:02:40
[2026-08-31 23:02:40,171.171 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:02:40,391.391 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:02:40,401.401 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:02:40,535.535 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:02:40,610.610 INFO    ] time= 31/08/2026 23:02:40
[2026-08-31 23:02:40,661.661 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:02:40,668.668 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:02:40,787.787 INFO    ] No existing commands found in stream
[2026-08-31 23:02:45,818.818 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:02:45,821.821 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-08-31 23:02:49,239.239 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 23:02:49,242.242 INFO    ] Checking for system updates...
[2026-08-31 23:02:49,279.279 INFO    ] 200
[2026-08-31 23:02:49,282.282 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:02:49,333.333 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:02:49,336.336 INFO    ] No update needed
[2026-08-31 23:02:49,338.338 INFO    ] Checking for camera pi updates...
[2026-08-31 23:02:49,376.376 INFO    ] 200
[2026-08-31 23:02:49,379.379 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:02:49,424.424 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:02:49,505.505 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:02:49,508.508 INFO    ] No camera update needed
[2026-08-31 23:02:49,510.510 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:02:49,513.513 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:02:49,518.518 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:02:49,523.523 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:02:51,562.562 INFO    ] ================================================
[2026-08-31 23:02:51,578.578 INFO    ] Launching Daemon at Mon Aug 31 23:02:51 IST 2026
[2026-08-31 23:02:51,588.588 INFO    ] ================================================
[2026-08-31 23:02:52,170.170 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:02:52
[2026-08-31 23:02:52,754.754 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:02:53,031.031 INFO    ] Initializing speech engine...
[2026-08-31 23:02:53,042.042 INFO    ] 2026-08-31 23:02:53
[2026-08-31 23:02:53,285.285 INFO    ] 2026-08-31 23:02:53
[2026-08-31 23:02:53,320.320 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:02:53,517.517 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:02:53,574.574 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:02:53,714.714 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:02:53,769.769 INFO    ] time= 31/08/2026 23:02:53
[2026-08-31 23:02:53,809.809 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:02:53,844.844 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:02:53,903.903 INFO    ] No existing commands found in stream
[2026-08-31 23:02:58,928.928 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:02:58,931.931 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-08-31 23:02:59,581.581 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 23:02:59,583.583 INFO    ] Checking for system updates...
[2026-08-31 23:02:59,619.619 INFO    ] 200
[2026-08-31 23:02:59,622.622 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:02:59,681.681 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:02:59,683.683 INFO    ] No update needed
[2026-08-31 23:02:59,686.686 INFO    ] Checking for camera pi updates...
[2026-08-31 23:02:59,723.723 INFO    ] 200
[2026-08-31 23:02:59,726.726 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:02:59,767.767 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:02:59,854.854 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:02:59,856.856 INFO    ] No camera update needed
[2026-08-31 23:02:59,858.858 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:02:59,861.861 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:02:59,866.866 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:02:59,871.871 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:03:01,950.950 INFO    ] ================================================
[2026-08-31 23:03:01,981.981 INFO    ] Launching Daemon at Mon Aug 31 23:03:01 IST 2026
[2026-08-31 23:03:02,998.998 INFO    ] ================================================
[2026-08-31 23:03:02,668.668 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:03:02
[2026-08-31 23:03:03,389.389 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:03:03,704.704 INFO    ] Initializing speech engine...
[2026-08-31 23:03:03,711.711 INFO    ] 2026-08-31 23:03:03
[2026-08-31 23:03:03,972.972 INFO    ] 2026-08-31 23:03:03
[2026-08-31 23:03:04,010.010 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:03:04,207.207 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:03:04,211.211 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:03:04,378.378 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:03:04,387.387 INFO    ] time= 31/08/2026 23:03:04
[2026-08-31 23:03:04,394.394 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:03:04,400.400 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:03:04,545.545 INFO    ] No existing commands found in stream
[2026-08-31 23:03:09,570.570 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:03:09,573.573 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-08-31 23:03:13,881.881 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 23:03:13,884.884 INFO    ] Checking for system updates...
[2026-08-31 23:03:13,920.920 INFO    ] 200
[2026-08-31 23:03:13,922.922 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:03:13,974.974 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:03:13,976.976 INFO    ] No update needed
[2026-08-31 23:03:13,979.979 INFO    ] Checking for camera pi updates...
[2026-08-31 23:03:14,016.016 INFO    ] 200
[2026-08-31 23:03:14,018.018 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:03:14,059.059 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:03:14,140.140 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:03:14,143.143 INFO    ] No camera update needed
[2026-08-31 23:03:14,145.145 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:03:14,147.147 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:03:14,153.153 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:03:14,158.158 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:03:16,198.198 INFO    ] ================================================
[2026-08-31 23:03:16,213.213 INFO    ] Launching Daemon at Mon Aug 31 23:03:16 IST 2026
[2026-08-31 23:03:16,224.224 INFO    ] ================================================
[2026-08-31 23:03:16,792.792 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:03:16
[2026-08-31 23:03:17,379.379 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:03:17,631.631 INFO    ] Initializing speech engine...
[2026-08-31 23:03:17,638.638 INFO    ] 2026-08-31 23:03:17
[2026-08-31 23:03:17,931.931 INFO    ] 2026-08-31 23:03:17
[2026-08-31 23:03:17,955.955 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:03:18,164.164 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:03:18,178.178 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:03:18,337.337 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:03:18,344.344 INFO    ] time= 31/08/2026 23:03:18
[2026-08-31 23:03:18,350.350 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:03:18,356.356 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:03:18,477.477 INFO    ] No existing commands found in stream
[2026-08-31 23:03:23,508.508 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:03:23,510.510 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-08-31 23:03:27,668.668 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 23:03:27,671.671 INFO    ] Checking for system updates...
[2026-08-31 23:03:27,707.707 INFO    ] 200
[2026-08-31 23:03:27,710.710 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:03:27,769.769 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:03:27,771.771 INFO    ] No update needed
[2026-08-31 23:03:27,774.774 INFO    ] Checking for camera pi updates...
[2026-08-31 23:03:27,807.807 INFO    ] 200
[2026-08-31 23:03:27,809.809 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:03:27,853.853 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:03:27,924.924 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:03:27,926.926 INFO    ] No camera update needed
[2026-08-31 23:03:27,929.929 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:03:27,931.931 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:03:27,936.936 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:03:27,941.941 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:03:29,980.980 INFO    ] ================================================
[2026-08-31 23:03:30,995.995 INFO    ] Launching Daemon at Mon Aug 31 23:03:29 IST 2026
[2026-08-31 23:03:30,005.005 INFO    ] ================================================
[2026-08-31 23:03:30,574.574 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:03:30
[2026-08-31 23:03:31,161.161 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:03:31,434.434 INFO    ] Initializing speech engine...
[2026-08-31 23:03:31,441.441 INFO    ] 2026-08-31 23:03:31
[2026-08-31 23:03:31,688.688 INFO    ] 2026-08-31 23:03:31
[2026-08-31 23:03:31,760.760 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:03:32,003.003 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:03:32,014.014 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:03:32,165.165 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:03:32,169.169 INFO    ] time= 31/08/2026 23:03:32
[2026-08-31 23:03:32,173.173 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:03:32,176.176 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:03:32,289.289 INFO    ] No existing commands found in stream
[2026-08-31 23:03:37,322.322 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:03:37,325.325 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-08-31 23:03:39,376.376 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 23:03:39,379.379 INFO    ] Checking for system updates...
[2026-08-31 23:03:39,417.417 INFO    ] 200
[2026-08-31 23:03:39,420.420 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:03:39,473.473 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:03:39,476.476 INFO    ] No update needed
[2026-08-31 23:03:39,479.479 INFO    ] Checking for camera pi updates...
[2026-08-31 23:03:39,517.517 INFO    ] 200
[2026-08-31 23:03:39,521.521 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:03:39,562.562 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:03:39,671.671 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:03:39,673.673 INFO    ] No camera update needed
[2026-08-31 23:03:39,676.676 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:03:39,679.679 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:03:39,685.685 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:03:39,691.691 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:03:41,731.731 INFO    ] ================================================
[2026-08-31 23:03:41,746.746 INFO    ] Launching Daemon at Mon Aug 31 23:03:41 IST 2026
[2026-08-31 23:03:41,757.757 INFO    ] ================================================
[2026-08-31 23:03:42,333.333 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:03:42
[2026-08-31 23:03:42,920.920 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:03:43,176.176 INFO    ] Initializing speech engine...
[2026-08-31 23:03:43,182.182 INFO    ] 2026-08-31 23:03:43
[2026-08-31 23:03:43,475.475 INFO    ] 2026-08-31 23:03:43
[2026-08-31 23:03:43,512.512 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:03:43,794.794 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:03:43,804.804 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:03:43,951.951 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:03:43,973.973 INFO    ] time= 31/08/2026 23:03:43
[2026-08-31 23:03:44,038.038 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:03:44,087.087 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:03:44,156.156 INFO    ] No existing commands found in stream
[2026-08-31 23:03:49,167.167 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:03:49,170.170 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-08-31 23:03:49,971.971 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 23:03:49,973.973 INFO    ] Checking for system updates...
[2026-08-31 23:03:50,012.012 INFO    ] 200
[2026-08-31 23:03:50,014.014 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:03:50,072.072 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:03:50,074.074 INFO    ] No update needed
[2026-08-31 23:03:50,076.076 INFO    ] Checking for camera pi updates...
[2026-08-31 23:03:50,110.110 INFO    ] 200
[2026-08-31 23:03:50,113.113 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:03:50,153.153 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:03:50,225.225 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:03:50,227.227 INFO    ] No camera update needed
[2026-08-31 23:03:50,230.230 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:03:50,232.232 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:03:50,237.237 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:03:50,242.242 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:03:52,281.281 INFO    ] ================================================
[2026-08-31 23:03:52,296.296 INFO    ] Launching Daemon at Mon Aug 31 23:03:52 IST 2026
[2026-08-31 23:03:52,307.307 INFO    ] ================================================
[2026-08-31 23:03:52,945.945 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:03:52
[2026-08-31 23:03:53,543.543 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:03:53,819.819 INFO    ] Initializing speech engine...
[2026-08-31 23:03:53,824.824 INFO    ] 2026-08-31 23:03:53
[2026-08-31 23:03:54,084.084 INFO    ] 2026-08-31 23:03:54
[2026-08-31 23:03:54,140.140 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:03:54,402.402 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:03:54,421.421 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:03:54,612.612 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:03:54,624.624 INFO    ] time= 31/08/2026 23:03:54
[2026-08-31 23:03:54,642.642 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:03:54,654.654 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:03:54,821.821 INFO    ] No existing commands found in stream
[2026-08-31 23:03:59,846.846 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:03:59,849.849 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-08-31 23:04:00,365.365 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 23:04:00,367.367 INFO    ] Checking for system updates...
[2026-08-31 23:04:00,406.406 INFO    ] 200
[2026-08-31 23:04:00,409.409 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:04:00,461.461 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:04:00,463.463 INFO    ] No update needed
[2026-08-31 23:04:00,465.465 INFO    ] Checking for camera pi updates...
[2026-08-31 23:04:00,502.502 INFO    ] 200
[2026-08-31 23:04:00,504.504 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:04:00,548.548 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:04:00,627.627 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:04:00,630.630 INFO    ] No camera update needed
[2026-08-31 23:04:00,632.632 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:04:00,634.634 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:04:00,639.639 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:04:00,644.644 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:04:02,708.708 INFO    ] ================================================
[2026-08-31 23:04:02,730.730 INFO    ] Launching Daemon at Mon Aug 31 23:04:02 IST 2026
[2026-08-31 23:04:02,746.746 INFO    ] ================================================
[2026-08-31 23:04:03,395.395 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:04:03
[2026-08-31 23:04:03,983.983 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:04:04,253.253 INFO    ] Initializing speech engine...
[2026-08-31 23:04:04,262.262 INFO    ] 2026-08-31 23:04:04
[2026-08-31 23:04:04,515.515 INFO    ] 2026-08-31 23:04:04
[2026-08-31 23:04:04,573.573 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:04:04,796.796 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:04:04,804.804 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:04:04,937.937 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:04:04,984.984 INFO    ] time= 31/08/2026 23:04:04
[2026-08-31 23:04:05,038.038 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:04:05,072.072 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:04:05,199.199 INFO    ] No existing commands found in stream
[2026-08-31 23:04:10,229.229 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:04:10,232.232 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-08-31 23:04:14,671.671 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 23:04:14,674.674 INFO    ] Checking for system updates...
[2026-08-31 23:04:14,710.710 INFO    ] 200
[2026-08-31 23:04:14,712.712 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:04:14,764.764 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:04:14,766.766 INFO    ] No update needed
[2026-08-31 23:04:14,769.769 INFO    ] Checking for camera pi updates...
[2026-08-31 23:04:14,806.806 INFO    ] 200
[2026-08-31 23:04:14,808.808 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:04:14,849.849 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:04:15,026.026 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:04:15,029.029 INFO    ] No camera update needed
[2026-08-31 23:04:15,031.031 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:04:15,033.033 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:04:15,039.039 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:04:15,044.044 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:04:17,089.089 INFO    ] ================================================
[2026-08-31 23:04:17,104.104 INFO    ] Launching Daemon at Mon Aug 31 23:04:17 IST 2026
[2026-08-31 23:04:17,115.115 INFO    ] ================================================
[2026-08-31 23:04:17,681.681 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:04:17
[2026-08-31 23:04:18,264.264 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:04:18,516.516 INFO    ] Initializing speech engine...
[2026-08-31 23:04:18,525.525 INFO    ] 2026-08-31 23:04:18
[2026-08-31 23:04:18,813.813 INFO    ] 2026-08-31 23:04:18
[2026-08-31 23:04:18,852.852 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:04:19,042.042 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:04:19,055.055 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:04:19,212.212 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:04:19,221.221 INFO    ] time= 31/08/2026 23:04:19
[2026-08-31 23:04:19,229.229 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:04:19,234.234 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:04:19,374.374 INFO    ] No existing commands found in stream
[2026-08-31 23:04:24,399.399 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:04:24,401.401 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-08-31 23:04:26,402.402 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 23:04:26,404.404 INFO    ] Checking for system updates...
[2026-08-31 23:04:26,442.442 INFO    ] 200
[2026-08-31 23:04:26,445.445 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:04:26,498.498 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:04:26,500.500 INFO    ] No update needed
[2026-08-31 23:04:26,503.503 INFO    ] Checking for camera pi updates...
[2026-08-31 23:04:26,539.539 INFO    ] 200
[2026-08-31 23:04:26,541.541 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:04:26,581.581 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:04:26,652.652 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:04:26,654.654 INFO    ] No camera update needed
[2026-08-31 23:04:26,657.657 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:04:26,660.660 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:04:26,665.665 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:04:26,671.671 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:04:28,713.713 INFO    ] ================================================
[2026-08-31 23:04:28,728.728 INFO    ] Launching Daemon at Mon Aug 31 23:04:28 IST 2026
[2026-08-31 23:04:28,739.739 INFO    ] ================================================
[2026-08-31 23:04:29,320.320 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:04:29
[2026-08-31 23:04:29,917.917 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:04:30,193.193 INFO    ] Initializing speech engine...
[2026-08-31 23:04:30,202.202 INFO    ] 2026-08-31 23:04:30
[2026-08-31 23:04:30,460.460 INFO    ] 2026-08-31 23:04:30
[2026-08-31 23:04:30,490.490 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:04:30,733.733 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:04:30,743.743 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:04:30,881.881 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:04:30,956.956 INFO    ] time= 31/08/2026 23:04:30
[2026-08-31 23:04:31,003.003 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:04:31,009.009 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:04:31,138.138 INFO    ] No existing commands found in stream
[2026-08-31 23:04:36,160.160 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:04:36,163.163 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-08-31 23:04:39,495.495 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 23:04:39,498.498 INFO    ] Checking for system updates...
[2026-08-31 23:04:39,538.538 INFO    ] 200
[2026-08-31 23:04:39,540.540 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:04:39,592.592 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:04:39,595.595 INFO    ] No update needed
[2026-08-31 23:04:39,597.597 INFO    ] Checking for camera pi updates...
[2026-08-31 23:04:39,634.634 INFO    ] 200
[2026-08-31 23:04:39,636.636 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:04:39,678.678 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:04:39,767.767 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:04:39,771.771 INFO    ] No camera update needed
[2026-08-31 23:04:39,774.774 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:04:39,778.778 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:04:39,784.784 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:04:39,791.791 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:04:41,832.832 INFO    ] ================================================
[2026-08-31 23:04:41,848.848 INFO    ] Launching Daemon at Mon Aug 31 23:04:41 IST 2026
[2026-08-31 23:04:41,859.859 INFO    ] ================================================
[2026-08-31 23:04:42,491.491 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:04:42
[2026-08-31 23:04:43,144.144 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:04:43,438.438 INFO    ] Initializing speech engine...
[2026-08-31 23:04:43,451.451 INFO    ] 2026-08-31 23:04:43
[2026-08-31 23:04:43,728.728 INFO    ] 2026-08-31 23:04:43
[2026-08-31 23:04:43,773.773 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:04:44,054.054 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:04:44,063.063 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:04:44,258.258 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:04:44,265.265 INFO    ] time= 31/08/2026 23:04:44
[2026-08-31 23:04:44,286.286 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:04:44,313.313 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:04:44,445.445 INFO    ] No existing commands found in stream
[2026-08-31 23:04:49,470.470 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:04:49,473.473 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-08-31 23:04:50,216.216 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 23:04:50,219.219 INFO    ] Checking for system updates...
[2026-08-31 23:04:50,261.261 INFO    ] 200
[2026-08-31 23:04:50,264.264 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:04:50,320.320 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:04:50,323.323 INFO    ] No update needed
[2026-08-31 23:04:50,325.325 INFO    ] Checking for camera pi updates...
[2026-08-31 23:04:50,366.366 INFO    ] 200
[2026-08-31 23:04:50,369.369 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:04:50,410.410 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:04:50,501.501 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:04:50,504.504 INFO    ] No camera update needed
[2026-08-31 23:04:50,507.507 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:04:50,510.510 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:04:50,516.516 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:04:50,522.522 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:04:52,564.564 INFO    ] ================================================
[2026-08-31 23:04:52,579.579 INFO    ] Launching Daemon at Mon Aug 31 23:04:52 IST 2026
[2026-08-31 23:04:52,590.590 INFO    ] ================================================
[2026-08-31 23:04:53,156.156 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:04:53
[2026-08-31 23:04:53,737.737 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:04:53,995.995 INFO    ] Initializing speech engine...
[2026-08-31 23:04:54,010.010 INFO    ] 2026-08-31 23:04:53
[2026-08-31 23:04:54,283.283 INFO    ] 2026-08-31 23:04:54
[2026-08-31 23:04:54,322.322 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:04:54,523.523 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:04:54,581.581 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:04:54,724.724 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:04:54,784.784 INFO    ] time= 31/08/2026 23:04:54
[2026-08-31 23:04:54,833.833 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:04:54,857.857 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:04:54,938.938 INFO    ] No existing commands found in stream
[2026-08-31 23:04:59,976.976 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:04:59,979.979 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-08-31 23:05:01,490.490 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 23:05:01,492.492 INFO    ] Checking for system updates...
[2026-08-31 23:05:01,537.537 INFO    ] 200
[2026-08-31 23:05:01,541.541 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:05:01,786.786 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:05:01,828.828 INFO    ] No update needed
[2026-08-31 23:05:01,832.832 INFO    ] Checking for camera pi updates...
[2026-08-31 23:05:01,932.932 INFO    ] 200
[2026-08-31 23:05:01,935.935 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:05:02,140.140 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:05:02,269.269 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:05:02,272.272 INFO    ] No camera update needed
[2026-08-31 23:05:02,275.275 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:05:02,278.278 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:05:02,284.284 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:05:02,290.290 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:05:04,334.334 INFO    ] ================================================
[2026-08-31 23:05:04,350.350 INFO    ] Launching Daemon at Mon Aug 31 23:05:04 IST 2026
[2026-08-31 23:05:04,361.361 INFO    ] ================================================
[2026-08-31 23:05:04,945.945 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:05:04
[2026-08-31 23:05:05,547.547 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:05:05,823.823 INFO    ] Initializing speech engine...
[2026-08-31 23:05:05,832.832 INFO    ] 2026-08-31 23:05:05
[2026-08-31 23:05:06,091.091 INFO    ] 2026-08-31 23:05:06
[2026-08-31 23:05:06,144.144 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:05:06,372.372 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:05:06,378.378 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:05:06,615.615 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:05:06,644.644 INFO    ] time= 31/08/2026 23:05:06
[2026-08-31 23:05:06,665.665 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:05:06,683.683 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:05:06,850.850 INFO    ] No existing commands found in stream
[2026-08-31 23:05:11,880.880 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:05:11,883.883 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-08-31 23:05:13,563.563 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 23:05:13,566.566 INFO    ] Checking for system updates...
[2026-08-31 23:05:13,601.601 INFO    ] 200
[2026-08-31 23:05:13,604.604 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:05:13,657.657 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:05:13,660.660 INFO    ] No update needed
[2026-08-31 23:05:13,662.662 INFO    ] Checking for camera pi updates...
[2026-08-31 23:05:13,699.699 INFO    ] 200
[2026-08-31 23:05:13,702.702 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:05:13,742.742 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:05:13,808.808 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:05:13,810.810 INFO    ] No camera update needed
[2026-08-31 23:05:13,813.813 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:05:13,815.815 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:05:13,820.820 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:05:13,825.825 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:05:15,866.866 INFO    ] ================================================
[2026-08-31 23:05:15,882.882 INFO    ] Launching Daemon at Mon Aug 31 23:05:15 IST 2026
[2026-08-31 23:05:15,893.893 INFO    ] ================================================
[2026-08-31 23:05:16,462.462 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:05:16
[2026-08-31 23:05:17,047.047 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:05:17,319.319 INFO    ] Initializing speech engine...
[2026-08-31 23:05:17,335.335 INFO    ] 2026-08-31 23:05:17
[2026-08-31 23:05:17,614.614 INFO    ] 2026-08-31 23:05:17
[2026-08-31 23:05:17,649.649 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:05:17,852.852 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:05:17,869.869 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:05:18,040.040 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:05:18,047.047 INFO    ] time= 31/08/2026 23:05:18
[2026-08-31 23:05:18,053.053 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:05:18,123.123 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:05:18,235.235 INFO    ] No existing commands found in stream
[2026-08-31 23:05:23,260.260 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:05:23,263.263 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-08-31 23:05:25,580.580 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 23:05:25,583.583 INFO    ] Checking for system updates...
[2026-08-31 23:05:25,625.625 INFO    ] 200
[2026-08-31 23:05:25,628.628 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:05:25,683.683 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:05:25,686.686 INFO    ] No update needed
[2026-08-31 23:05:25,689.689 INFO    ] Checking for camera pi updates...
[2026-08-31 23:05:25,729.729 INFO    ] 200
[2026-08-31 23:05:25,732.732 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:05:25,774.774 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:05:25,849.849 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:05:25,852.852 INFO    ] No camera update needed
[2026-08-31 23:05:25,855.855 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:05:25,858.858 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:05:25,864.864 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:05:25,870.870 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:05:27,912.912 INFO    ] ================================================
[2026-08-31 23:05:27,927.927 INFO    ] Launching Daemon at Mon Aug 31 23:05:27 IST 2026
[2026-08-31 23:05:27,938.938 INFO    ] ================================================
[2026-08-31 23:05:28,616.616 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:05:28
[2026-08-31 23:05:29,306.306 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:05:29,554.554 INFO    ] Initializing speech engine...
[2026-08-31 23:05:29,574.574 INFO    ] 2026-08-31 23:05:29
[2026-08-31 23:05:29,831.831 INFO    ] 2026-08-31 23:05:29
[2026-08-31 23:05:29,865.865 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:05:30,117.117 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:05:30,126.126 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:05:30,258.258 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:05:30,300.300 INFO    ] time= 31/08/2026 23:05:30
[2026-08-31 23:05:30,354.354 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:05:30,392.392 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:05:30,531.531 INFO    ] No existing commands found in stream
[2026-08-31 23:05:35,551.551 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:05:35,554.554 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-08-31 23:05:39,369.369 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 23:05:39,371.371 INFO    ] Checking for system updates...
[2026-08-31 23:05:39,409.409 INFO    ] 200
[2026-08-31 23:05:39,411.411 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:05:39,465.465 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:05:39,467.467 INFO    ] No update needed
[2026-08-31 23:05:39,470.470 INFO    ] Checking for camera pi updates...
[2026-08-31 23:05:39,506.506 INFO    ] 200
[2026-08-31 23:05:39,509.509 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:05:39,551.551 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:05:39,625.625 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:05:39,628.628 INFO    ] No camera update needed
[2026-08-31 23:05:39,631.631 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:05:39,634.634 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:05:39,640.640 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:05:39,646.646 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:05:41,688.688 INFO    ] ================================================
[2026-08-31 23:05:41,704.704 INFO    ] Launching Daemon at Mon Aug 31 23:05:41 IST 2026
[2026-08-31 23:05:41,714.714 INFO    ] ================================================
[2026-08-31 23:05:42,287.287 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:05:42
[2026-08-31 23:05:42,886.886 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:05:43,159.159 INFO    ] Initializing speech engine...
[2026-08-31 23:05:43,168.168 INFO    ] 2026-08-31 23:05:43
[2026-08-31 23:05:43,430.430 INFO    ] 2026-08-31 23:05:43
[2026-08-31 23:05:43,488.488 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:05:43,713.713 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:05:43,719.719 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:05:43,929.929 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:05:43,974.974 INFO    ] time= 31/08/2026 23:05:43
[2026-08-31 23:05:43,981.981 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:05:43,998.998 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:05:44,104.104 INFO    ] No existing commands found in stream
[2026-08-31 23:05:49,134.134 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:05:49,137.137 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-08-31 23:05:52,436.436 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 23:05:52,439.439 INFO    ] Checking for system updates...
[2026-08-31 23:05:52,475.475 INFO    ] 200
[2026-08-31 23:05:52,477.477 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:05:52,530.530 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:05:52,533.533 INFO    ] No update needed
[2026-08-31 23:05:52,535.535 INFO    ] Checking for camera pi updates...
[2026-08-31 23:05:52,569.569 INFO    ] 200
[2026-08-31 23:05:52,571.571 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:05:52,612.612 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:05:52,693.693 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:05:52,696.696 INFO    ] No camera update needed
[2026-08-31 23:05:52,701.701 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:05:52,703.703 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:05:52,709.709 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:05:52,714.714 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:05:54,756.756 INFO    ] ================================================
[2026-08-31 23:05:54,772.772 INFO    ] Launching Daemon at Mon Aug 31 23:05:54 IST 2026
[2026-08-31 23:05:54,784.784 INFO    ] ================================================
[2026-08-31 23:05:55,356.356 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:05:55
[2026-08-31 23:05:55,975.975 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:05:56,281.281 INFO    ] Initializing speech engine...
[2026-08-31 23:05:56,289.289 INFO    ] 2026-08-31 23:05:56
[2026-08-31 23:05:56,604.604 INFO    ] 2026-08-31 23:05:56
[2026-08-31 23:05:56,692.692 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:05:56,902.902 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:05:56,915.915 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:05:57,102.102 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:05:57,118.118 INFO    ] time= 31/08/2026 23:05:57
[2026-08-31 23:05:57,137.137 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:05:57,167.167 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:05:57,337.337 INFO    ] No existing commands found in stream
[2026-08-31 23:06:02,363.363 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:06:02,367.367 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-08-31 23:06:04,903.903 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 23:06:04,906.906 INFO    ] Checking for system updates...
[2026-08-31 23:06:04,948.948 INFO    ] 200
[2026-08-31 23:06:04,950.950 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:06:05,003.003 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:06:05,006.006 INFO    ] No update needed
[2026-08-31 23:06:05,009.009 INFO    ] Checking for camera pi updates...
[2026-08-31 23:06:05,044.044 INFO    ] 200
[2026-08-31 23:06:05,047.047 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:06:05,089.089 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:06:05,171.171 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:06:05,174.174 INFO    ] No camera update needed
[2026-08-31 23:06:05,176.176 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:06:05,179.179 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:06:05,185.185 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:06:05,191.191 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:06:07,233.233 INFO    ] ================================================
[2026-08-31 23:06:07,249.249 INFO    ] Launching Daemon at Mon Aug 31 23:06:07 IST 2026
[2026-08-31 23:06:07,260.260 INFO    ] ================================================
[2026-08-31 23:06:07,829.829 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:06:07
[2026-08-31 23:06:08,413.413 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:06:08,686.686 INFO    ] Initializing speech engine...
[2026-08-31 23:06:08,695.695 INFO    ] 2026-08-31 23:06:08
[2026-08-31 23:06:08,944.944 INFO    ] 2026-08-31 23:06:08
[2026-08-31 23:06:08,980.980 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:06:09,162.162 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:06:09,178.178 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:06:09,314.314 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:06:09,319.319 INFO    ] time= 31/08/2026 23:06:09
[2026-08-31 23:06:09,325.325 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:06:09,371.371 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:06:09,491.491 INFO    ] No existing commands found in stream
[2026-08-31 23:06:14,522.522 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:06:14,524.524 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-08-31 23:06:15,375.375 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 23:06:15,378.378 INFO    ] Checking for system updates...
[2026-08-31 23:06:15,414.414 INFO    ] 200
[2026-08-31 23:06:15,417.417 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:06:15,472.472 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:06:15,474.474 INFO    ] No update needed
[2026-08-31 23:06:15,477.477 INFO    ] Checking for camera pi updates...
[2026-08-31 23:06:15,512.512 INFO    ] 200
[2026-08-31 23:06:15,515.515 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:06:15,556.556 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:06:15,639.639 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:06:15,641.641 INFO    ] No camera update needed
[2026-08-31 23:06:15,644.644 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:06:15,647.647 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:06:15,653.653 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:06:15,659.659 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:06:17,700.700 INFO    ] ================================================
[2026-08-31 23:06:17,716.716 INFO    ] Launching Daemon at Mon Aug 31 23:06:17 IST 2026
[2026-08-31 23:06:17,727.727 INFO    ] ================================================
[2026-08-31 23:06:18,358.358 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:06:18
[2026-08-31 23:06:18,956.956 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:06:19,233.233 INFO    ] Initializing speech engine...
[2026-08-31 23:06:19,241.241 INFO    ] 2026-08-31 23:06:19
[2026-08-31 23:06:19,504.504 INFO    ] 2026-08-31 23:06:19
[2026-08-31 23:06:19,556.556 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:06:19,803.803 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:06:19,811.811 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:06:20,010.010 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:06:20,047.047 INFO    ] time= 31/08/2026 23:06:20
[2026-08-31 23:06:20,053.053 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:06:20,073.073 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:06:20,203.203 INFO    ] No existing commands found in stream
[2026-08-31 23:06:25,226.226 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:06:25,229.229 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-08-31 23:06:28,300.300 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 23:06:28,302.302 INFO    ] Checking for system updates...
[2026-08-31 23:06:28,338.338 INFO    ] 200
[2026-08-31 23:06:28,341.341 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:06:28,393.393 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:06:28,395.395 INFO    ] No update needed
[2026-08-31 23:06:28,398.398 INFO    ] Checking for camera pi updates...
[2026-08-31 23:06:28,431.431 INFO    ] 200
[2026-08-31 23:06:28,434.434 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:06:28,474.474 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:06:28,655.655 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:06:28,657.657 INFO    ] No camera update needed
[2026-08-31 23:06:28,660.660 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:06:28,662.662 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:06:28,667.667 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:06:28,673.673 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:06:30,715.715 INFO    ] ================================================
[2026-08-31 23:06:30,731.731 INFO    ] Launching Daemon at Mon Aug 31 23:06:30 IST 2026
[2026-08-31 23:06:30,742.742 INFO    ] ================================================
[2026-08-31 23:06:31,307.307 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:06:31
[2026-08-31 23:06:31,907.907 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:06:32,177.177 INFO    ] Initializing speech engine...
[2026-08-31 23:06:32,185.185 INFO    ] 2026-08-31 23:06:32
[2026-08-31 23:06:32,476.476 INFO    ] 2026-08-31 23:06:32
[2026-08-31 23:06:32,530.530 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:06:32,720.720 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:06:32,731.731 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:06:32,902.902 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:06:32,933.933 INFO    ] time= 31/08/2026 23:06:32
[2026-08-31 23:06:32,940.940 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:06:32,947.947 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:06:32,995.995 INFO    ] No existing commands found in stream
[2026-08-31 23:06:38,011.011 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:06:38,013.013 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-08-31 23:06:39,131.131 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 23:06:39,134.134 INFO    ] Checking for system updates...
[2026-08-31 23:06:39,169.169 INFO    ] 200
[2026-08-31 23:06:39,172.172 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:06:39,223.223 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:06:39,226.226 INFO    ] No update needed
[2026-08-31 23:06:39,228.228 INFO    ] Checking for camera pi updates...
[2026-08-31 23:06:39,261.261 INFO    ] 200
[2026-08-31 23:06:39,264.264 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:06:39,305.305 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:06:39,412.412 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:06:39,414.414 INFO    ] No camera update needed
[2026-08-31 23:06:39,416.416 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:06:39,419.419 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:06:39,424.424 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:06:39,429.429 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:06:41,468.468 INFO    ] ================================================
[2026-08-31 23:06:41,484.484 INFO    ] Launching Daemon at Mon Aug 31 23:06:41 IST 2026
[2026-08-31 23:06:41,496.496 INFO    ] ================================================
[2026-08-31 23:06:42,171.171 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:06:42
[2026-08-31 23:06:42,838.838 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:06:43,108.108 INFO    ] Initializing speech engine...
[2026-08-31 23:06:43,117.117 INFO    ] 2026-08-31 23:06:43
[2026-08-31 23:06:43,376.376 INFO    ] 2026-08-31 23:06:43
[2026-08-31 23:06:43,434.434 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:06:43,661.661 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:06:43,671.671 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:06:43,893.893 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:06:43,934.934 INFO    ] time= 31/08/2026 23:06:43
[2026-08-31 23:06:43,940.940 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:06:43,957.957 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:06:44,087.087 INFO    ] No existing commands found in stream
[2026-08-31 23:06:49,102.102 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:06:49,104.104 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-08-31 23:06:50,696.696 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 23:06:50,698.698 INFO    ] Checking for system updates...
[2026-08-31 23:06:50,735.735 INFO    ] 200
[2026-08-31 23:06:50,739.739 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:06:50,801.801 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:06:50,804.804 INFO    ] No update needed
[2026-08-31 23:06:50,807.807 INFO    ] Checking for camera pi updates...
[2026-08-31 23:06:50,843.843 INFO    ] 200
[2026-08-31 23:06:50,846.846 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:06:50,887.887 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:06:50,974.974 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:06:50,976.976 INFO    ] No camera update needed
[2026-08-31 23:06:50,980.980 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:06:50,982.982 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:06:50,989.989 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:06:50,995.995 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:06:53,038.038 INFO    ] ================================================
[2026-08-31 23:06:53,054.054 INFO    ] Launching Daemon at Mon Aug 31 23:06:53 IST 2026
[2026-08-31 23:06:53,065.065 INFO    ] ================================================
[2026-08-31 23:06:53,630.630 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:06:53
[2026-08-31 23:06:54,213.213 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:06:54,479.479 INFO    ] Initializing speech engine...
[2026-08-31 23:06:54,488.488 INFO    ] 2026-08-31 23:06:54
[2026-08-31 23:06:54,735.735 INFO    ] 2026-08-31 23:06:54
[2026-08-31 23:06:54,770.770 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:06:55,026.026 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:06:55,031.031 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:06:55,161.161 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:06:55,203.203 INFO    ] time= 31/08/2026 23:06:55
[2026-08-31 23:06:55,247.247 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:06:55,294.294 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:06:55,351.351 INFO    ] No existing commands found in stream
[2026-08-31 23:07:00,363.363 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:07:00,365.365 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-08-31 23:07:02,937.937 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 23:07:02,940.940 INFO    ] Checking for system updates...
[2026-08-31 23:07:02,991.991 INFO    ] 200
[2026-08-31 23:07:02,993.993 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:07:03,092.092 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:07:03,095.095 INFO    ] No update needed
[2026-08-31 23:07:03,098.098 INFO    ] Checking for camera pi updates...
[2026-08-31 23:07:03,134.134 INFO    ] 200
[2026-08-31 23:07:03,136.136 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:07:03,195.195 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:07:03,303.303 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:07:03,305.305 INFO    ] No camera update needed
[2026-08-31 23:07:03,308.308 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:07:03,310.310 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:07:03,316.316 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:07:03,321.321 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:07:05,365.365 INFO    ] ================================================
[2026-08-31 23:07:05,380.380 INFO    ] Launching Daemon at Mon Aug 31 23:07:05 IST 2026
[2026-08-31 23:07:05,392.392 INFO    ] ================================================
[2026-08-31 23:07:05,960.960 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:07:05
[2026-08-31 23:07:06,547.547 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:07:06,866.866 INFO    ] Initializing speech engine...
[2026-08-31 23:07:06,873.873 INFO    ] 2026-08-31 23:07:06
[2026-08-31 23:07:07,162.162 INFO    ] 2026-08-31 23:07:07
[2026-08-31 23:07:07,217.217 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:07:07,477.477 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:07:07,483.483 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:07:07,689.689 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:07:07,721.721 INFO    ] time= 31/08/2026 23:07:07
[2026-08-31 23:07:07,742.742 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:07:07,768.768 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:07:07,874.874 INFO    ] No existing commands found in stream
[2026-08-31 23:07:12,887.887 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:07:12,890.890 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-08-31 23:07:16,066.066 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 23:07:16,069.069 INFO    ] Checking for system updates...
[2026-08-31 23:07:16,111.111 INFO    ] 200
[2026-08-31 23:07:16,114.114 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:07:16,182.182 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:07:16,185.185 INFO    ] No update needed
[2026-08-31 23:07:16,188.188 INFO    ] Checking for camera pi updates...
[2026-08-31 23:07:16,223.223 INFO    ] 200
[2026-08-31 23:07:16,226.226 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:07:16,274.274 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:07:16,361.361 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:07:16,364.364 INFO    ] No camera update needed
[2026-08-31 23:07:16,367.367 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:07:16,370.370 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:07:16,377.377 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:07:16,383.383 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:07:18,424.424 INFO    ] ================================================
[2026-08-31 23:07:18,439.439 INFO    ] Launching Daemon at Mon Aug 31 23:07:18 IST 2026
[2026-08-31 23:07:18,450.450 INFO    ] ================================================
[2026-08-31 23:07:19,128.128 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:07:19
[2026-08-31 23:07:19,826.826 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:07:20,141.141 INFO    ] Initializing speech engine...
[2026-08-31 23:07:20,150.150 INFO    ] 2026-08-31 23:07:20
[2026-08-31 23:07:20,476.476 INFO    ] 2026-08-31 23:07:20
[2026-08-31 23:07:20,564.564 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:07:20,788.788 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:07:20,794.794 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:07:20,994.994 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:07:21,002.002 INFO    ] time= 31/08/2026 23:07:20
[2026-08-31 23:07:21,024.024 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:07:21,052.052 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:07:21,152.152 INFO    ] No existing commands found in stream
[2026-08-31 23:07:26,175.175 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:07:26,179.179 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-08-31 23:07:27,853.853 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 23:07:27,856.856 INFO    ] Checking for system updates...
[2026-08-31 23:07:27,893.893 INFO    ] 200
[2026-08-31 23:07:27,896.896 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:07:27,952.952 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:07:27,954.954 INFO    ] No update needed
[2026-08-31 23:07:27,957.957 INFO    ] Checking for camera pi updates...
[2026-08-31 23:07:27,992.992 INFO    ] 200
[2026-08-31 23:07:27,995.995 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:07:28,038.038 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:07:28,118.118 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:07:28,121.121 INFO    ] No camera update needed
[2026-08-31 23:07:28,124.124 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:07:28,126.126 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:07:28,133.133 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:07:28,139.139 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:07:30,181.181 INFO    ] ================================================
[2026-08-31 23:07:30,196.196 INFO    ] Launching Daemon at Mon Aug 31 23:07:30 IST 2026
[2026-08-31 23:07:30,207.207 INFO    ] ================================================
[2026-08-31 23:07:30,776.776 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:07:30
[2026-08-31 23:07:31,360.360 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:07:31,606.606 INFO    ] Initializing speech engine...
[2026-08-31 23:07:31,614.614 INFO    ] 2026-08-31 23:07:31
[2026-08-31 23:07:31,891.891 INFO    ] 2026-08-31 23:07:31
[2026-08-31 23:07:31,954.954 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:07:32,175.175 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:07:32,190.190 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:07:32,401.401 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:07:32,450.450 INFO    ] time= 31/08/2026 23:07:32
[2026-08-31 23:07:32,511.511 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:07:32,541.541 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:07:32,593.593 INFO    ] No existing commands found in stream
[2026-08-31 23:07:37,607.607 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:07:37,610.610 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-08-31 23:07:41,895.895 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 23:07:41,898.898 INFO    ] Checking for system updates...
[2026-08-31 23:07:41,933.933 INFO    ] 200
[2026-08-31 23:07:41,936.936 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:07:41,988.988 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:07:41,991.991 INFO    ] No update needed
[2026-08-31 23:07:41,993.993 INFO    ] Checking for camera pi updates...
[2026-08-31 23:07:42,027.027 INFO    ] 200
[2026-08-31 23:07:42,030.030 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:07:42,070.070 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:07:42,160.160 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:07:42,163.163 INFO    ] No camera update needed
[2026-08-31 23:07:42,165.165 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:07:42,168.168 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:07:42,173.173 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:07:42,178.178 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:07:44,218.218 INFO    ] ================================================
[2026-08-31 23:07:44,233.233 INFO    ] Launching Daemon at Mon Aug 31 23:07:44 IST 2026
[2026-08-31 23:07:44,243.243 INFO    ] ================================================
[2026-08-31 23:07:44,822.822 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:07:44
[2026-08-31 23:07:45,420.420 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:07:45,691.691 INFO    ] Initializing speech engine...
[2026-08-31 23:07:45,701.701 INFO    ] 2026-08-31 23:07:45
[2026-08-31 23:07:45,955.955 INFO    ] 2026-08-31 23:07:45
[2026-08-31 23:07:46,015.015 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:07:46,236.236 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:07:46,245.245 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:07:46,376.376 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:07:46,420.420 INFO    ] time= 31/08/2026 23:07:46
[2026-08-31 23:07:46,469.469 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:07:46,510.510 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:07:46,642.642 INFO    ] No existing commands found in stream
[2026-08-31 23:07:51,664.664 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:07:51,667.667 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-08-31 23:07:55,366.366 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 23:07:55,369.369 INFO    ] Checking for system updates...
[2026-08-31 23:07:55,408.408 INFO    ] 200
[2026-08-31 23:07:55,411.411 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:07:55,469.469 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:07:55,472.472 INFO    ] No update needed
[2026-08-31 23:07:55,474.474 INFO    ] Checking for camera pi updates...
[2026-08-31 23:07:55,508.508 INFO    ] 200
[2026-08-31 23:07:55,510.510 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:07:55,551.551 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:07:55,648.648 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:07:55,651.651 INFO    ] No camera update needed
[2026-08-31 23:07:55,653.653 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:07:55,656.656 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:07:55,662.662 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:07:55,668.668 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:07:57,709.709 INFO    ] ================================================
[2026-08-31 23:07:57,723.723 INFO    ] Launching Daemon at Mon Aug 31 23:07:57 IST 2026
[2026-08-31 23:07:57,734.734 INFO    ] ================================================
[2026-08-31 23:07:58,309.309 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:07:58
[2026-08-31 23:07:58,979.979 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:07:59,227.227 INFO    ] Initializing speech engine...
[2026-08-31 23:07:59,250.250 INFO    ] 2026-08-31 23:07:59
[2026-08-31 23:07:59,502.502 INFO    ] 2026-08-31 23:07:59
[2026-08-31 23:07:59,536.536 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:07:59,786.786 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:07:59,795.795 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:07:59,926.926 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:07:59,968.968 INFO    ] time= 31/08/2026 23:07:59
[2026-08-31 23:08:00,022.022 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:08:00,058.058 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:08:00,114.114 INFO    ] No existing commands found in stream
[2026-08-31 23:08:05,125.125 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:08:05,128.128 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-08-31 23:08:07,924.924 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 23:08:07,927.927 INFO    ] Checking for system updates...
[2026-08-31 23:08:07,963.963 INFO    ] 200
[2026-08-31 23:08:07,965.965 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:08:08,017.017 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:08:08,020.020 INFO    ] No update needed
[2026-08-31 23:08:08,022.022 INFO    ] Checking for camera pi updates...
[2026-08-31 23:08:08,056.056 INFO    ] 200
[2026-08-31 23:08:08,059.059 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:08:08,101.101 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:08:08,202.202 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:08:08,205.205 INFO    ] No camera update needed
[2026-08-31 23:08:08,207.207 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:08:08,210.210 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:08:08,216.216 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:08:08,222.222 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:08:10,262.262 INFO    ] ================================================
[2026-08-31 23:08:10,276.276 INFO    ] Launching Daemon at Mon Aug 31 23:08:10 IST 2026
[2026-08-31 23:08:10,287.287 INFO    ] ================================================
[2026-08-31 23:08:10,853.853 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:08:10
[2026-08-31 23:08:11,435.435 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:08:11,682.682 INFO    ] Initializing speech engine...
[2026-08-31 23:08:11,706.706 INFO    ] 2026-08-31 23:08:11
[2026-08-31 23:08:11,963.963 INFO    ] 2026-08-31 23:08:11
[2026-08-31 23:08:11,997.997 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:08:12,184.184 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:08:12,201.201 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:08:12,332.332 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:08:12,340.340 INFO    ] time= 31/08/2026 23:08:12
[2026-08-31 23:08:12,347.347 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:08:12,367.367 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:08:12,521.521 INFO    ] No existing commands found in stream
[2026-08-31 23:08:17,546.546 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:08:17,549.549 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-08-31 23:08:19,971.971 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 23:08:19,974.974 INFO    ] Checking for system updates...
[2026-08-31 23:08:20,009.009 INFO    ] 200
[2026-08-31 23:08:20,011.011 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:08:20,070.070 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:08:20,072.072 INFO    ] No update needed
[2026-08-31 23:08:20,075.075 INFO    ] Checking for camera pi updates...
[2026-08-31 23:08:20,113.113 INFO    ] 200
[2026-08-31 23:08:20,115.115 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:08:20,161.161 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:08:20,257.257 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:08:20,260.260 INFO    ] No camera update needed
[2026-08-31 23:08:20,262.262 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:08:20,264.264 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:08:20,270.270 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:08:20,274.274 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:08:22,316.316 INFO    ] ================================================
[2026-08-31 23:08:22,332.332 INFO    ] Launching Daemon at Mon Aug 31 23:08:22 IST 2026
[2026-08-31 23:08:22,342.342 INFO    ] ================================================
[2026-08-31 23:08:22,922.922 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:08:22
[2026-08-31 23:08:23,522.522 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:08:23,798.798 INFO    ] Initializing speech engine...
[2026-08-31 23:08:23,819.819 INFO    ] 2026-08-31 23:08:23
[2026-08-31 23:08:24,087.087 INFO    ] 2026-08-31 23:08:24
[2026-08-31 23:08:24,125.125 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:08:24,322.322 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:08:24,328.328 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:08:24,480.480 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:08:24,506.506 INFO    ] time= 31/08/2026 23:08:24
[2026-08-31 23:08:24,512.512 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:08:24,518.518 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:08:24,591.591 INFO    ] No existing commands found in stream
[2026-08-31 23:08:29,603.603 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:08:29,606.606 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-08-31 23:08:33,213.213 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 23:08:33,216.216 INFO    ] Checking for system updates...
[2026-08-31 23:08:33,251.251 INFO    ] 200
[2026-08-31 23:08:33,254.254 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:08:33,314.314 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:08:33,316.316 INFO    ] No update needed
[2026-08-31 23:08:33,319.319 INFO    ] Checking for camera pi updates...
[2026-08-31 23:08:33,356.356 INFO    ] 200
[2026-08-31 23:08:33,358.358 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:08:33,400.400 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:08:33,507.507 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:08:33,509.509 INFO    ] No camera update needed
[2026-08-31 23:08:33,512.512 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:08:33,514.514 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:08:33,519.519 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:08:33,524.524 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:08:35,563.563 INFO    ] ================================================
[2026-08-31 23:08:35,578.578 INFO    ] Launching Daemon at Mon Aug 31 23:08:35 IST 2026
[2026-08-31 23:08:35,588.588 INFO    ] ================================================
[2026-08-31 23:08:36,155.155 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:08:36
[2026-08-31 23:08:36,739.739 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:08:37,008.008 INFO    ] Initializing speech engine...
[2026-08-31 23:08:37,017.017 INFO    ] 2026-08-31 23:08:37
[2026-08-31 23:08:37,262.262 INFO    ] 2026-08-31 23:08:37
[2026-08-31 23:08:37,296.296 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:08:37,489.489 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:08:37,538.538 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:08:37,690.690 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:08:37,714.714 INFO    ] time= 31/08/2026 23:08:37
[2026-08-31 23:08:37,743.743 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:08:37,787.787 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:08:37,893.893 INFO    ] No existing commands found in stream
[2026-08-31 23:08:42,906.906 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:08:42,909.909 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-08-31 23:08:43,372.372 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 23:08:43,375.375 INFO    ] Checking for system updates...
[2026-08-31 23:08:43,410.410 INFO    ] 200
[2026-08-31 23:08:43,413.413 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:08:43,466.466 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:08:43,469.469 INFO    ] No update needed
[2026-08-31 23:08:43,475.475 INFO    ] Checking for camera pi updates...
[2026-08-31 23:08:43,521.521 INFO    ] 200
[2026-08-31 23:08:43,523.523 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:08:43,563.563 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:08:43,643.643 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:08:43,645.645 INFO    ] No camera update needed
[2026-08-31 23:08:43,647.647 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:08:43,650.650 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:08:43,655.655 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:08:43,660.660 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:08:45,701.701 INFO    ] ================================================
[2026-08-31 23:08:45,716.716 INFO    ] Launching Daemon at Mon Aug 31 23:08:45 IST 2026
[2026-08-31 23:08:45,727.727 INFO    ] ================================================
[2026-08-31 23:08:46,295.295 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:08:46
[2026-08-31 23:08:46,929.929 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:08:47,232.232 INFO    ] Initializing speech engine...
[2026-08-31 23:08:47,241.241 INFO    ] 2026-08-31 23:08:47
[2026-08-31 23:08:47,530.530 INFO    ] 2026-08-31 23:08:47
[2026-08-31 23:08:47,575.575 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:08:47,830.830 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:08:47,850.850 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:08:48,024.024 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:08:48,074.074 INFO    ] time= 31/08/2026 23:08:48
[2026-08-31 23:08:48,081.081 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:08:48,103.103 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:08:48,234.234 INFO    ] No existing commands found in stream
[2026-08-31 23:08:53,250.250 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:08:53,253.253 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-08-31 23:08:56,396.396 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 23:08:56,400.400 INFO    ] Checking for system updates...
[2026-08-31 23:08:56,440.440 INFO    ] 200
[2026-08-31 23:08:56,443.443 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:08:56,503.503 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:08:56,506.506 INFO    ] No update needed
[2026-08-31 23:08:56,509.509 INFO    ] Checking for camera pi updates...
[2026-08-31 23:08:56,548.548 INFO    ] 200
[2026-08-31 23:08:56,551.551 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:08:56,592.592 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:08:56,672.672 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:08:56,675.675 INFO    ] No camera update needed
[2026-08-31 23:08:56,678.678 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:08:56,680.680 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:08:56,686.686 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:08:56,692.692 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:08:58,731.731 INFO    ] ================================================
[2026-08-31 23:08:58,746.746 INFO    ] Launching Daemon at Mon Aug 31 23:08:58 IST 2026
[2026-08-31 23:08:58,757.757 INFO    ] ================================================
[2026-08-31 23:08:59,326.326 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:08:59
[2026-08-31 23:08:59,913.913 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:09:00,184.184 INFO    ] Initializing speech engine...
[2026-08-31 23:09:00,193.193 INFO    ] 2026-08-31 23:09:00
[2026-08-31 23:09:00,443.443 INFO    ] 2026-08-31 23:09:00
[2026-08-31 23:09:00,477.477 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:09:00,741.741 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:09:00,746.746 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:09:00,882.882 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:09:00,922.922 INFO    ] time= 31/08/2026 23:09:00
[2026-08-31 23:09:00,976.976 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:09:01,016.016 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:09:01,151.151 INFO    ] No existing commands found in stream
[2026-08-31 23:09:06,178.178 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:09:06,181.181 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-08-31 23:09:07,213.213 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 23:09:07,215.215 INFO    ] Checking for system updates...
[2026-08-31 23:09:07,251.251 INFO    ] 200
[2026-08-31 23:09:07,254.254 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:09:07,306.306 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:09:07,309.309 INFO    ] No update needed
[2026-08-31 23:09:07,311.311 INFO    ] Checking for camera pi updates...
[2026-08-31 23:09:07,345.345 INFO    ] 200
[2026-08-31 23:09:07,348.348 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:09:07,392.392 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:09:07,472.472 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:09:07,475.475 INFO    ] No camera update needed
[2026-08-31 23:09:07,477.477 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:09:07,480.480 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:09:07,485.485 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:09:07,490.490 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:09:09,530.530 INFO    ] ================================================
[2026-08-31 23:09:09,545.545 INFO    ] Launching Daemon at Mon Aug 31 23:09:09 IST 2026
[2026-08-31 23:09:09,556.556 INFO    ] ================================================
[2026-08-31 23:09:10,121.121 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:09:10
[2026-08-31 23:09:10,705.705 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:09:10,976.976 INFO    ] Initializing speech engine...
[2026-08-31 23:09:10,985.985 INFO    ] 2026-08-31 23:09:10
[2026-08-31 23:09:11,234.234 INFO    ] 2026-08-31 23:09:11
[2026-08-31 23:09:11,269.269 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:09:11,466.466 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:09:11,474.474 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:09:11,606.606 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:09:11,611.611 INFO    ] time= 31/08/2026 23:09:11
[2026-08-31 23:09:11,618.618 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:09:11,669.669 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:09:11,782.782 INFO    ] No existing commands found in stream
[2026-08-31 23:09:16,807.807 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:09:16,810.810 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-08-31 23:09:20,919.919 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 23:09:20,922.922 INFO    ] Checking for system updates...
[2026-08-31 23:09:20,961.961 INFO    ] 200
[2026-08-31 23:09:20,964.964 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:09:21,016.016 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:09:21,019.019 INFO    ] No update needed
[2026-08-31 23:09:21,021.021 INFO    ] Checking for camera pi updates...
[2026-08-31 23:09:21,055.055 INFO    ] 200
[2026-08-31 23:09:21,057.057 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:09:21,097.097 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:09:21,196.196 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:09:21,198.198 INFO    ] No camera update needed
[2026-08-31 23:09:21,201.201 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:09:21,203.203 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:09:21,208.208 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:09:21,213.213 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:09:23,252.252 INFO    ] ================================================
[2026-08-31 23:09:23,267.267 INFO    ] Launching Daemon at Mon Aug 31 23:09:23 IST 2026
[2026-08-31 23:09:23,278.278 INFO    ] ================================================
[2026-08-31 23:09:23,933.933 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:09:23
[2026-08-31 23:09:24,608.608 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:09:24,914.914 INFO    ] Initializing speech engine...
[2026-08-31 23:09:24,922.922 INFO    ] 2026-08-31 23:09:24
[2026-08-31 23:09:25,195.195 INFO    ] 2026-08-31 23:09:25
[2026-08-31 23:09:25,252.252 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:09:25,550.550 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:09:25,560.560 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:09:25,756.756 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:09:25,778.778 INFO    ] time= 31/08/2026 23:09:25
[2026-08-31 23:09:25,804.804 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:09:25,814.814 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:09:25,919.919 INFO    ] No existing commands found in stream
[2026-08-31 23:09:30,940.940 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:09:30,943.943 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-08-31 23:09:33,570.570 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 23:09:33,573.573 INFO    ] Checking for system updates...
[2026-08-31 23:09:33,613.613 INFO    ] 200
[2026-08-31 23:09:33,616.616 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:09:33,675.675 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:09:33,678.678 INFO    ] No update needed
[2026-08-31 23:09:33,681.681 INFO    ] Checking for camera pi updates...
[2026-08-31 23:09:33,721.721 INFO    ] 200
[2026-08-31 23:09:33,723.723 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:09:33,779.779 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:09:33,866.866 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:09:33,869.869 INFO    ] No camera update needed
[2026-08-31 23:09:33,871.871 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:09:33,873.873 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:09:33,879.879 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:09:33,884.884 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:09:35,925.925 INFO    ] ================================================
[2026-08-31 23:09:35,941.941 INFO    ] Launching Daemon at Mon Aug 31 23:09:35 IST 2026
[2026-08-31 23:09:35,952.952 INFO    ] ================================================
[2026-08-31 23:09:36,543.543 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:09:36
[2026-08-31 23:09:37,244.244 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:09:37,573.573 INFO    ] Initializing speech engine...
[2026-08-31 23:09:37,588.588 INFO    ] 2026-08-31 23:09:37
[2026-08-31 23:09:37,881.881 INFO    ] 2026-08-31 23:09:37
[2026-08-31 23:09:37,926.926 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:09:38,219.219 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:09:38,228.228 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:09:38,414.414 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:09:38,438.438 INFO    ] time= 31/08/2026 23:09:38
[2026-08-31 23:09:38,455.455 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:09:38,486.486 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:09:38,605.605 INFO    ] No existing commands found in stream
[2026-08-31 23:09:43,648.648 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:09:43,651.651 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-08-31 23:09:45,486.486 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 23:09:45,488.488 INFO    ] Checking for system updates...
[2026-08-31 23:09:45,527.527 INFO    ] 200
[2026-08-31 23:09:45,529.529 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:09:45,583.583 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:09:45,585.585 INFO    ] No update needed
[2026-08-31 23:09:45,587.587 INFO    ] Checking for camera pi updates...
[2026-08-31 23:09:45,624.624 INFO    ] 200
[2026-08-31 23:09:45,626.626 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:09:45,666.666 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:09:45,775.775 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:09:45,777.777 INFO    ] No camera update needed
[2026-08-31 23:09:45,780.780 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:09:45,782.782 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:09:45,787.787 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:09:45,792.792 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:09:47,835.835 INFO    ] ================================================
[2026-08-31 23:09:47,850.850 INFO    ] Launching Daemon at Mon Aug 31 23:09:47 IST 2026
[2026-08-31 23:09:47,860.860 INFO    ] ================================================
[2026-08-31 23:09:48,429.429 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:09:48
[2026-08-31 23:09:49,016.016 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:09:49,294.294 INFO    ] Initializing speech engine...
[2026-08-31 23:09:49,300.300 INFO    ] 2026-08-31 23:09:49
[2026-08-31 23:09:49,547.547 INFO    ] 2026-08-31 23:09:49
[2026-08-31 23:09:49,582.582 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:09:49,756.756 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:09:49,768.768 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:09:49,879.879 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:09:49,906.906 INFO    ] time= 31/08/2026 23:09:49
[2026-08-31 23:09:49,929.929 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:09:49,933.933 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:09:50,004.004 INFO    ] No existing commands found in stream
[2026-08-31 23:09:55,019.019 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:09:55,022.022 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-08-31 23:09:57,168.168 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 23:09:57,171.171 INFO    ] Checking for system updates...
[2026-08-31 23:09:57,210.210 INFO    ] 200
[2026-08-31 23:09:57,212.212 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:09:57,271.271 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:09:57,273.273 INFO    ] No update needed
[2026-08-31 23:09:57,276.276 INFO    ] Checking for camera pi updates...
[2026-08-31 23:09:57,309.309 INFO    ] 200
[2026-08-31 23:09:57,311.311 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:09:57,351.351 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:09:57,435.435 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:09:57,437.437 INFO    ] No camera update needed
[2026-08-31 23:09:57,439.439 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:09:57,442.442 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:09:57,447.447 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:09:57,452.452 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:09:59,490.490 INFO    ] ================================================
[2026-08-31 23:09:59,506.506 INFO    ] Launching Daemon at Mon Aug 31 23:09:59 IST 2026
[2026-08-31 23:09:59,517.517 INFO    ] ================================================
[2026-08-31 23:10:00,087.087 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:10:00
[2026-08-31 23:10:00,669.669 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:10:00,936.936 INFO    ] Initializing speech engine...
[2026-08-31 23:10:00,945.945 INFO    ] 2026-08-31 23:10:00
[2026-08-31 23:10:01,205.205 INFO    ] 2026-08-31 23:10:01
[2026-08-31 23:10:01,259.259 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:10:01,479.479 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:10:01,488.488 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:10:01,622.622 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:10:01,661.661 INFO    ] time= 31/08/2026 23:10:01
[2026-08-31 23:10:01,707.707 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:10:01,738.738 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:10:01,801.801 INFO    ] No existing commands found in stream
[2026-08-31 23:10:06,811.811 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:10:06,814.814 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-08-31 23:10:08,832.832 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 23:10:08,835.835 INFO    ] Checking for system updates...
[2026-08-31 23:10:08,871.871 INFO    ] 200
[2026-08-31 23:10:08,874.874 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:10:08,934.934 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:10:08,937.937 INFO    ] No update needed
[2026-08-31 23:10:08,940.940 INFO    ] Checking for camera pi updates...
[2026-08-31 23:10:08,981.981 INFO    ] 200
[2026-08-31 23:10:08,983.983 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:10:09,025.025 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:10:09,108.108 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:10:09,110.110 INFO    ] No camera update needed
[2026-08-31 23:10:09,113.113 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:10:09,116.116 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:10:09,122.122 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:10:09,128.128 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:10:11,169.169 INFO    ] ================================================
[2026-08-31 23:10:11,183.183 INFO    ] Launching Daemon at Mon Aug 31 23:10:11 IST 2026
[2026-08-31 23:10:11,194.194 INFO    ] ================================================
[2026-08-31 23:10:11,768.768 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:10:11
[2026-08-31 23:10:12,350.350 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:10:12,604.604 INFO    ] Initializing speech engine...
[2026-08-31 23:10:12,613.613 INFO    ] 2026-08-31 23:10:12
[2026-08-31 23:10:12,905.905 INFO    ] 2026-08-31 23:10:12
[2026-08-31 23:10:12,942.942 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:10:13,135.135 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:10:13,153.153 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:10:13,275.275 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:10:13,281.281 INFO    ] time= 31/08/2026 23:10:13
[2026-08-31 23:10:13,300.300 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:10:13,321.321 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:10:13,403.403 INFO    ] No existing commands found in stream
[2026-08-31 23:10:18,416.416 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:10:18,419.419 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-08-31 23:10:20,592.592 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 23:10:20,594.594 INFO    ] Checking for system updates...
[2026-08-31 23:10:20,630.630 INFO    ] 200
[2026-08-31 23:10:20,632.632 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:10:20,691.691 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:10:20,693.693 INFO    ] No update needed
[2026-08-31 23:10:20,695.695 INFO    ] Checking for camera pi updates...
[2026-08-31 23:10:20,732.732 INFO    ] 200
[2026-08-31 23:10:20,735.735 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:10:20,779.779 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:10:20,881.881 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:10:20,883.883 INFO    ] No camera update needed
[2026-08-31 23:10:20,885.885 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:10:20,888.888 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:10:20,893.893 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:10:20,899.899 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:10:22,938.938 INFO    ] ================================================
[2026-08-31 23:10:22,953.953 INFO    ] Launching Daemon at Mon Aug 31 23:10:22 IST 2026
[2026-08-31 23:10:22,963.963 INFO    ] ================================================
[2026-08-31 23:10:23,609.609 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:10:23
[2026-08-31 23:10:24,250.250 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:10:24,527.527 INFO    ] Initializing speech engine...
[2026-08-31 23:10:24,534.534 INFO    ] 2026-08-31 23:10:24
[2026-08-31 23:10:24,796.796 INFO    ] 2026-08-31 23:10:24
[2026-08-31 23:10:24,826.826 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:10:25,071.071 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:10:25,080.080 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:10:25,214.214 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:10:25,279.279 INFO    ] time= 31/08/2026 23:10:25
[2026-08-31 23:10:25,339.339 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:10:25,348.348 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:10:25,483.483 INFO    ] No existing commands found in stream
[2026-08-31 23:10:30,503.503 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:10:30,506.506 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-08-31 23:10:33,201.201 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 23:10:33,204.204 INFO    ] Checking for system updates...
[2026-08-31 23:10:33,239.239 INFO    ] 200
[2026-08-31 23:10:33,242.242 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:10:33,294.294 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:10:33,296.296 INFO    ] No update needed
[2026-08-31 23:10:33,299.299 INFO    ] Checking for camera pi updates...
[2026-08-31 23:10:33,332.332 INFO    ] 200
[2026-08-31 23:10:33,334.334 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:10:33,374.374 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:10:33,571.571 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:10:33,574.574 INFO    ] No camera update needed
[2026-08-31 23:10:33,576.576 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:10:33,579.579 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:10:33,584.584 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:10:33,596.596 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:10:35,637.637 INFO    ] ================================================
[2026-08-31 23:10:35,653.653 INFO    ] Launching Daemon at Mon Aug 31 23:10:35 IST 2026
[2026-08-31 23:10:35,664.664 INFO    ] ================================================
[2026-08-31 23:10:36,229.229 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:10:36
[2026-08-31 23:10:36,811.811 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:10:37,078.078 INFO    ] Initializing speech engine...
[2026-08-31 23:10:37,087.087 INFO    ] 2026-08-31 23:10:37
[2026-08-31 23:10:37,333.333 INFO    ] 2026-08-31 23:10:37
[2026-08-31 23:10:37,368.368 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:10:37,564.564 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:10:37,621.621 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:10:37,772.772 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:10:37,815.815 INFO    ] time= 31/08/2026 23:10:37
[2026-08-31 23:10:37,884.884 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:10:37,922.922 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:10:38,050.050 INFO    ] No existing commands found in stream
[2026-08-31 23:10:43,073.073 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:10:43,076.076 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-08-31 23:10:45,129.129 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 23:10:45,132.132 INFO    ] Checking for system updates...
[2026-08-31 23:10:45,167.167 INFO    ] 200
[2026-08-31 23:10:45,170.170 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:10:45,229.229 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:10:45,231.231 INFO    ] No update needed
[2026-08-31 23:10:45,234.234 INFO    ] Checking for camera pi updates...
[2026-08-31 23:10:45,270.270 INFO    ] 200
[2026-08-31 23:10:45,273.273 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:10:45,319.319 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:10:45,400.400 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:10:45,402.402 INFO    ] No camera update needed
[2026-08-31 23:10:45,405.405 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:10:45,407.407 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:10:45,412.412 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:10:45,417.417 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:10:47,459.459 INFO    ] ================================================
[2026-08-31 23:10:47,474.474 INFO    ] Launching Daemon at Mon Aug 31 23:10:47 IST 2026
[2026-08-31 23:10:47,484.484 INFO    ] ================================================
[2026-08-31 23:10:48,054.054 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:10:48
[2026-08-31 23:10:48,636.636 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:10:48,904.904 INFO    ] Initializing speech engine...
[2026-08-31 23:10:48,913.913 INFO    ] 2026-08-31 23:10:48
[2026-08-31 23:10:49,160.160 INFO    ] 2026-08-31 23:10:49
[2026-08-31 23:10:49,195.195 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:10:49,445.445 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:10:49,455.455 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:10:49,585.585 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:10:49,633.633 INFO    ] time= 31/08/2026 23:10:49
[2026-08-31 23:10:49,681.681 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:10:49,718.718 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:10:49,777.777 INFO    ] No existing commands found in stream
[2026-08-31 23:10:54,802.802 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:10:54,805.805 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-08-31 23:10:55,769.769 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 23:10:55,772.772 INFO    ] Checking for system updates...
[2026-08-31 23:10:55,807.807 INFO    ] 200
[2026-08-31 23:10:55,810.810 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:10:55,862.862 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:10:55,864.864 INFO    ] No update needed
[2026-08-31 23:10:55,866.866 INFO    ] Checking for camera pi updates...
[2026-08-31 23:10:55,903.903 INFO    ] 200
[2026-08-31 23:10:55,905.905 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:10:55,951.951 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:10:56,031.031 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:10:56,033.033 INFO    ] No camera update needed
[2026-08-31 23:10:56,035.035 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:10:56,038.038 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:10:56,044.044 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:10:56,049.049 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:10:58,092.092 INFO    ] ================================================
[2026-08-31 23:10:58,107.107 INFO    ] Launching Daemon at Mon Aug 31 23:10:58 IST 2026
[2026-08-31 23:10:58,117.117 INFO    ] ================================================
[2026-08-31 23:10:58,736.736 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:10:58
[2026-08-31 23:10:59,324.324 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:10:59,592.592 INFO    ] Initializing speech engine...
[2026-08-31 23:10:59,601.601 INFO    ] 2026-08-31 23:10:59
[2026-08-31 23:10:59,848.848 INFO    ] 2026-08-31 23:10:59
[2026-08-31 23:10:59,882.882 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:11:00,135.135 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:11:00,144.144 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:11:00,363.363 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:11:00,403.403 INFO    ] time= 31/08/2026 23:11:00
[2026-08-31 23:11:00,410.410 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:11:00,428.428 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:11:00,561.561 INFO    ] No existing commands found in stream
[2026-08-31 23:11:05,579.579 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:11:05,582.582 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-08-31 23:11:06,330.330 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 23:11:06,333.333 INFO    ] Checking for system updates...
[2026-08-31 23:11:06,370.370 INFO    ] 200
[2026-08-31 23:11:06,372.372 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:11:06,428.428 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:11:06,431.431 INFO    ] No update needed
[2026-08-31 23:11:06,434.434 INFO    ] Checking for camera pi updates...
[2026-08-31 23:11:06,467.467 INFO    ] 200
[2026-08-31 23:11:06,470.470 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:11:06,511.511 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:11:06,592.592 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:11:06,594.594 INFO    ] No camera update needed
[2026-08-31 23:11:06,597.597 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:11:06,599.599 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:11:06,604.604 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:11:06,609.609 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:11:08,652.652 INFO    ] ================================================
[2026-08-31 23:11:08,667.667 INFO    ] Launching Daemon at Mon Aug 31 23:11:08 IST 2026
[2026-08-31 23:11:08,678.678 INFO    ] ================================================
[2026-08-31 23:11:09,259.259 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:11:09
[2026-08-31 23:11:09,858.858 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:11:10,131.131 INFO    ] Initializing speech engine...
[2026-08-31 23:11:10,140.140 INFO    ] 2026-08-31 23:11:10
[2026-08-31 23:11:10,403.403 INFO    ] 2026-08-31 23:11:10
[2026-08-31 23:11:10,456.456 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:11:10,707.707 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:11:10,717.717 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:11:10,868.868 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:11:10,916.916 INFO    ] time= 31/08/2026 23:11:10
[2026-08-31 23:11:10,975.975 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:11:11,004.004 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:11:11,148.148 INFO    ] No existing commands found in stream
[2026-08-31 23:11:16,163.163 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:11:16,166.166 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-08-31 23:11:18,419.419 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 23:11:18,422.422 INFO    ] Checking for system updates...
[2026-08-31 23:11:18,462.462 INFO    ] 200
[2026-08-31 23:11:18,464.464 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:11:18,523.523 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:11:18,526.526 INFO    ] No update needed
[2026-08-31 23:11:18,529.529 INFO    ] Checking for camera pi updates...
[2026-08-31 23:11:18,566.566 INFO    ] 200
[2026-08-31 23:11:18,569.569 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:11:18,610.610 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:11:18,690.690 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:11:18,692.692 INFO    ] No camera update needed
[2026-08-31 23:11:18,695.695 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:11:18,697.697 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:11:18,703.703 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:11:18,708.708 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:11:20,746.746 INFO    ] ================================================
[2026-08-31 23:11:20,761.761 INFO    ] Launching Daemon at Mon Aug 31 23:11:20 IST 2026
[2026-08-31 23:11:20,772.772 INFO    ] ================================================
[2026-08-31 23:11:21,338.338 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:11:21
[2026-08-31 23:11:21,920.920 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:11:22,194.194 INFO    ] Initializing speech engine...
[2026-08-31 23:11:22,201.201 INFO    ] 2026-08-31 23:11:22
[2026-08-31 23:11:22,449.449 INFO    ] 2026-08-31 23:11:22
[2026-08-31 23:11:22,484.484 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:11:22,741.741 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:11:22,750.750 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:11:22,884.884 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:11:22,922.922 INFO    ] time= 31/08/2026 23:11:22
[2026-08-31 23:11:22,981.981 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:11:23,021.021 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:11:23,157.157 INFO    ] No existing commands found in stream
[2026-08-31 23:11:28,181.181 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:11:28,184.184 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-08-31 23:11:30,569.569 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 23:11:30,571.571 INFO    ] Checking for system updates...
[2026-08-31 23:11:30,607.607 INFO    ] 200
[2026-08-31 23:11:30,610.610 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:11:30,668.668 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:11:30,671.671 INFO    ] No update needed
[2026-08-31 23:11:30,673.673 INFO    ] Checking for camera pi updates...
[2026-08-31 23:11:30,710.710 INFO    ] 200
[2026-08-31 23:11:30,713.713 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:11:30,758.758 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:11:30,846.846 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:11:30,849.849 INFO    ] No camera update needed
[2026-08-31 23:11:30,851.851 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:11:30,853.853 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:11:30,858.858 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:11:30,863.863 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:11:32,904.904 INFO    ] ================================================
[2026-08-31 23:11:32,920.920 INFO    ] Launching Daemon at Mon Aug 31 23:11:32 IST 2026
[2026-08-31 23:11:32,931.931 INFO    ] ================================================
[2026-08-31 23:11:33,556.556 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:11:33
[2026-08-31 23:11:34,142.142 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:11:34,394.394 INFO    ] Initializing speech engine...
[2026-08-31 23:11:34,414.414 INFO    ] 2026-08-31 23:11:34
[2026-08-31 23:11:34,674.674 INFO    ] 2026-08-31 23:11:34
[2026-08-31 23:11:34,710.710 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:11:34,907.907 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:11:34,914.914 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:11:35,112.112 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:11:35,154.154 INFO    ] time= 31/08/2026 23:11:35
[2026-08-31 23:11:35,203.203 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:11:35,249.249 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:11:35,374.374 INFO    ] No existing commands found in stream
[2026-08-31 23:11:40,399.399 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:11:40,402.402 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-08-31 23:11:42,324.324 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 23:11:42,326.326 INFO    ] Checking for system updates...
[2026-08-31 23:11:42,363.363 INFO    ] 200
[2026-08-31 23:11:42,366.366 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:11:42,419.419 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:11:42,422.422 INFO    ] No update needed
[2026-08-31 23:11:42,424.424 INFO    ] Checking for camera pi updates...
[2026-08-31 23:11:42,459.459 INFO    ] 200
[2026-08-31 23:11:42,462.462 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:11:42,507.507 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:11:42,610.610 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:11:42,612.612 INFO    ] No camera update needed
[2026-08-31 23:11:42,614.614 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:11:42,616.616 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:11:42,622.622 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:11:42,627.627 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:11:44,666.666 INFO    ] ================================================
[2026-08-31 23:11:44,681.681 INFO    ] Launching Daemon at Mon Aug 31 23:11:44 IST 2026
[2026-08-31 23:11:44,692.692 INFO    ] ================================================
[2026-08-31 23:11:45,272.272 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:11:45
[2026-08-31 23:11:45,870.870 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:11:46,144.144 INFO    ] Initializing speech engine...
[2026-08-31 23:11:46,152.152 INFO    ] 2026-08-31 23:11:46
[2026-08-31 23:11:46,413.413 INFO    ] 2026-08-31 23:11:46
[2026-08-31 23:11:46,468.468 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:11:46,694.694 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:11:46,699.699 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:11:46,904.904 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:11:46,954.954 INFO    ] time= 31/08/2026 23:11:46
[2026-08-31 23:11:46,973.973 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:11:46,982.982 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:11:47,111.111 INFO    ] No existing commands found in stream
[2026-08-31 23:11:50,664.664 INFO    ] Received new command: ID=1788198110622-0
[2026-08-31 23:11:50,667.667 INFO    ] process_and_cleanup_command: msg_id=1788198110622-0
[2026-08-31 23:11:50,669.669 INFO    ] is_command_expired: timestamp=2026-08-31T17:41:50.412Z, expiry=30s
[2026-08-31 23:11:50,780.780 INFO    ] Command removed from stream: 1788198110622-0. returning for processing...
[2026-08-31 23:11:50,783.783 INFO    ] ***** get_valid_command
[2026-08-31 23:11:50,785.785 INFO    ] {'data': '{"request_id":"start-order-1788198110412-sl8w0z7zn","orderId":"TM08202202260831231048744","is_vending":false}', 'timeout': '10', 'command': 'start-order', 'source': 'webapp', 'timestamp': '2026-08-31T17:41:50.412Z'}
[2026-08-31 23:11:50,788.788 INFO    ] ***** Parsed command data: {'orderId': 'TM08202202260831231048744', 'is_vending': False, 'request_id': 'start-order-1788198110412-sl8w0z7zn'}
[2026-08-31 23:11:50,790.790 INFO    ] Handling start order...
[2026-08-31 23:11:50,793.793 INFO    ] handle_start_order_command
[2026-08-31 23:11:50,798.798 INFO    ] _send_start_order_success: request_id=start-order-1788198110412-sl8w0z7zn, order_id=TM08202202260831231048744
[2026-08-31 23:11:50,801.801 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM08202202
[2026-08-31 23:11:50,879.879 INFO    ] [_send_start_order_success] Message added to stream with ID: 1788198110837-0
[2026-08-31 23:11:50,881.881 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-08-31 23:11:50,883.883 INFO    ] Checking for system updates...
[2026-08-31 23:11:50,928.928 INFO    ] 200
[2026-08-31 23:11:50,931.931 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:11:50,991.991 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:11:50,993.993 INFO    ] No update needed
[2026-08-31 23:11:50,996.996 INFO    ] Checking for camera pi updates...
[2026-08-31 23:11:51,033.033 INFO    ] 200
[2026-08-31 23:11:51,035.035 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:11:51,081.081 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:11:51,166.166 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:11:51,169.169 INFO    ] No camera update needed
[2026-08-31 23:11:51,171.171 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:11:51,174.174 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:11:51,179.179 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:11:51,184.184 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:11:53,225.225 INFO    ] ================================================
[2026-08-31 23:11:53,240.240 INFO    ] Launching Daemon at Mon Aug 31 23:11:53 IST 2026
[2026-08-31 23:11:53,250.250 INFO    ] ================================================
[2026-08-31 23:11:53,823.823 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:11:53
[2026-08-31 23:11:54,449.449 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:11:54,746.746 INFO    ] Initializing speech engine...
[2026-08-31 23:11:54,761.761 INFO    ] 2026-08-31 23:11:54
[2026-08-31 23:11:55,047.047 INFO    ] 2026-08-31 23:11:55
[2026-08-31 23:11:55,090.090 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:11:55,375.375 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:11:55,382.382 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:11:55,566.566 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:11:55,583.583 INFO    ] time= 31/08/2026 23:11:55
[2026-08-31 23:11:55,605.605 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:11:55,634.634 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:11:55,776.776 INFO    ] Found 2 existing command(s) in stream
[2026-08-31 23:11:55,841.841 INFO    ] Checking historical command: ID=1788198110837-0
[2026-08-31 23:11:55,871.871 INFO    ] process_and_cleanup_command: msg_id=1788198110837-0
[2026-08-31 23:11:55,937.937 INFO    ] is_command_expired: timestamp=2026-08-31T17:41:50.799768Z, expiry=30s
[2026-08-31 23:11:56,170.170 INFO    ] Command removed from stream: 1788198110837-0. returning for processing...
[2026-08-31 23:11:56,201.201 INFO    ] ***** get_valid_command
[2026-08-31 23:11:56,208.208 INFO    ] {'imei': 'TM08202202', 'metadata_request_id': 'start-order-1788198110412-sl8w0z7zn', 'status': 'success', 'timestamp': '2026-08-31T17:41:50.799768Z', 'message_type': 'command_response', 'metadata_order_id': 'TM08202202260831231048744', 'message': 'start-order success'}
[2026-08-31 23:11:56,217.217 INFO    ] Checking historical command: ID=1788198113039-0
[2026-08-31 23:11:56,262.262 INFO    ] process_and_cleanup_command: msg_id=1788198113039-0
[2026-08-31 23:11:56,266.266 INFO    ] is_command_expired: timestamp=2026-08-31T17:41:52.623Z, expiry=30s
[2026-08-31 23:11:56,413.413 INFO    ] Command removed from stream: 1788198113039-0. returning for processing...
[2026-08-31 23:11:56,458.458 INFO    ] ***** get_valid_command
[2026-08-31 23:11:56,465.465 INFO    ] {'timeout': '60', 'command': 'process-order', 'source': 'webapp', 'data': '{"request_id":"process-order-1788198112623-88yfm7vcv","orderId":"TM08202202260831231048744","is_vending":false,"accessCode":"67881863"}', 'timestamp': '2026-08-31T17:41:52.623Z'}
[2026-08-31 23:11:56,471.471 INFO    ] ***** Parsed command data: {'request_id': 'process-order-1788198112623-88yfm7vcv', 'orderId': 'TM08202202260831231048744', 'is_vending': False, 'accessCode': '67881863'}
[2026-08-31 23:11:56,481.481 INFO    ] Handling process order...
[2026-08-31 23:11:56,488.488 INFO    ] Processing process-order command...
[2026-08-31 23:11:56,495.495 INFO    ] 🔍 Lock file Order ID: TM08202202260831231048744, TS: 2026-08-31 23:11:50
[2026-08-31 23:11:56,514.514 INFO    ] ✅ Order lock valid for TM08202202260831231048744
[2026-08-31 23:11:56,522.522 INFO    ] Received access code in process-order, skipping PHP API call
[2026-08-31 23:11:56,528.528 INFO    ] processing access code 67881863 for order TM08202202260831231048744
[2026-08-31 23:11:56,536.536 INFO    ] 🔍 Lock file Order ID: TM08202202260831231048744, TS: 2026-08-31 23:11:50
[2026-08-31 23:11:56,541.541 INFO    ] ✅ Order lock valid for TM08202202260831231048744
[2026-08-31 23:11:56,549.549 INFO    ] 2026-08-31 23:11:56
[2026-08-31 23:11:56,609.609 INFO    ] 200
[2026-08-31 23:11:56,615.615 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:11:56,621.621 INFO    ] 67881863
[2026-08-31 23:11:56,627.627 INFO    ] 2026-08-31 23:11:56
[2026-08-31 23:11:56,633.633 INFO    ] session id :482395592
[2026-08-31 23:11:56,639.639 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=67881863&imei=TM08202202&session_id=482395592
[2026-08-31 23:11:57,358.358 INFO    ] 200
[2026-08-31 23:11:57,380.380 INFO    ] {"msg": "Order Data", "data": {"access_code": "67881863", "invoice_bill": "110.0", "mobile": "8307393826", "order_id": "TM08202202260831231048744", "bill_amount": "110.0", "proposed_sku_json": [{"qty": 1, "offer_desc": "", "image_url": "https://images.tinymart.in/product/186084-5395.png", "sku_total": 30, "mrp": "30", "tray_id": "42", "name": "KITKAT Nestle 4 Finger Chocolate 38g", "offer_id": "", "skuid": "186084", "unit_price": 30, "door_id": "2"}, {"qty": 2, "offer_desc": "", "image_url": "https://images.tinymart.in/product/185993-3509.webp", "sku_total": 40, "mrp": "20", "tray_id": "43", "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g", "offer_id": "", "skuid": "185993", "unit_price": 20, "door_id": "2"}, {"qty": 1, "offer_desc": "", "image_url": "https://images.tinymart.in/product/186059-5330.png", "sku_total": 40, "mrp": "40", "tray_id": "46", "name": "Pepsi ZeroSugar  300ml", "offer_id": "", "skuid": "186059", "unit_price": 40, "door_id": "2"}]}, "status": true, "rstatus": true}
[2026-08-31 23:11:57,392.392 INFO    ] 110
[2026-08-31 23:11:57,397.397 INFO    ] TM08202202260831231048744
[2026-08-31 23:11:57,404.404 INFO    ] 8307393826
[2026-08-31 23:11:57,410.410 INFO    ] 2026-08-31 23:11:57
[2026-08-31 23:11:57,415.415 INFO    ] Door Opening for user mobile ending with  three eight two six 
[2026-08-31 23:11:57,428.428 INFO    ] Door Opening for user mobile ending with  three eight two six 
[2026-08-31 23:11:57,434.434 INFO    ] 55a3c8858ad08c8751b4ed773080da0f
[2026-08-31 23:11:57,446.446 INFO    ] 2026-08-31 23:11:57
[2026-08-31 23:11:57,457.457 INFO    ] playing audio file
[2026-08-31 23:11:57,486.486 INFO    ] 2026-08-31 23:11:57
[2026-08-31 23:11:57,500.500 INFO    ] 2026-08-31 23:11:57
[2026-08-31 23:11:57,516.516 INFO    ] publish_status: order_id=TM08202202260831231048744
[2026-08-31 23:11:57,541.541 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831231048744
[2026-08-31 23:11:57,655.655 INFO    ] [publish_status] Message added to stream with ID: 1788198117584-0
[2026-08-31 23:11:57,668.668 INFO    ] Published to order:TM08202202260831231048744: {'server_status': 'order-started', 'order_id': 'TM08202202260831231048744', 'server_response': '{"rstatus": true, "status": true, "data": {"proposed_sku_json": [{"image_url": "https://images.tinymart.in/product/186084-5395.png", "unit_price": 30, "door_id": "2", "sku_total": 30, "offer_id": "", "offer_desc": "", "qty": 1, "skuid": "186084", "name": "KITKAT Nestle 4 Finger Chocolate 38g", "mrp": "30", "tray_id": "42"}, {"image_url": "https://images.tinymart.in/product/185993-3509.webp", "unit_price": 20, "door_id": "2", "sku_total": 40, "offer_id": "", "offer_desc": "", "qty": 2, "skuid": "185993", "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g", "mrp": "20", "tray_id": "43"}, {"image_url": "https://images.tinymart.in/product/186059-5330.png", "unit_price": 40, "door_id": "2", "sku_total": 40, "offer_id": "", "offer_desc": "", "qty": 1, "skuid": "186059", "name": "Pepsi ZeroSugar  300ml", "mrp": "40", "tray_id": "46"}], "invoice_bill": "110.0", "order_id": "TM08202202260831231048744", "bill_amount": "110.0", "mobile": "8307393826", "access_code": "67881863"}, "msg": "Order Data"}', 'timestamp': '2026-08-31T17:41:57.504301Z'} (ID: 1788198117584-0)
[2026-08-31 23:11:58,286.286 INFO    ] {'server_status': 'order-started', 'order_id': 'TM08202202260831231048744', 'server_response': {'rstatus': True, 'status': True, 'data': {'proposed_sku_json': [{'image_url': 'https://images.tinymart.in/product/186084-5395.png', 'unit_price': 30, 'door_id': '2', 'sku_total': 30, 'offer_id': '', 'offer_desc': '', 'qty': 1, 'skuid': '186084', 'name': 'KITKAT Nestle 4 Finger Chocolate 38g', 'mrp': '30', 'tray_id': '42'}, {'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'unit_price': 20, 'door_id': '2', 'sku_total': 40, 'offer_id': '', 'offer_desc': '', 'qty': 2, 'skuid': '185993', 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'mrp': '20', 'tray_id': '43'}, {'image_url': 'https://images.tinymart.in/product/186059-5330.png', 'unit_price': 40, 'door_id': '2', 'sku_total': 40, 'offer_id': '', 'offer_desc': '', 'qty': 1, 'skuid': '186059', 'name': 'Pepsi ZeroSugar  300ml', 'mrp': '40', 'tray_id': '46'}], 'invoice_bill': '110.0', 'order_id': 'TM08202202260831231048744', 'bill_amount': '110.0', 'mobile': '8307393826', 'access_code': '67881863'}, 'msg': 'Order Data'}}
[2026-08-31 23:11:58,289.289 INFO    ] 200
[2026-08-31 23:11:58,292.292 INFO    ] {"data":{"server_status":"order-started","order_id":"TM08202202260831231048744","server_response":{"rstatus":true,"status":true,"data":{"proposed_sku_json":[{"image_url":"https:\/\/images.tinymart.in\/product\/186084-5395.png","unit_price":30,"door_id":"2","sku_total":30,"offer_id":"","offer_desc":"","qty":1,"skuid":"186084","name":"KITKAT Nestle 4 Finger Chocolate 38g","mrp":"30","tray_id":"42"},{"image_url":"https:\/\/images.tinymart.in\/product\/185993-3509.webp","unit_price":20,"door_id":"2","sku_total":40,"offer_id":"","offer_desc":"","qty":2,"skuid":"185993","name":"NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g","mrp":"20","tray_id":"43"},{"image_url":"https:\/\/images.tinymart.in\/product\/186059-5330.png","unit_price":40,"door_id":"2","sku_total":40,"offer_id":"","offer_desc":"","qty":1,"skuid":"186059","name":"Pepsi ZeroSugar  300ml","mrp":"40","tray_id":"46"}],"invoice_bill":"110.0","order_id":"TM08202202260831231048744","bill_amount":"110.0","mobile":"8307393826","access_code":"67881863"},"msg":"Order Data"}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 23:11:58,295.295 INFO    ] {'response': {'msg': 'order updated successfully', 'status': True, 'data': 'order updated successfully', 'code': 'ORDER_EXISTS'}, 'data': {'server_status': 'order-started', 'order_id': 'TM08202202260831231048744', 'server_response': {'rstatus': True, 'status': True, 'data': {'proposed_sku_json': [{'tray_id': '42', 'image_url': 'https://images.tinymart.in/product/186084-5395.png', 'unit_price': 30, 'offer_id': '', 'mrp': '30', 'offer_desc': '', 'qty': 1, 'skuid': '186084', 'door_id': '2', 'sku_total': 30, 'name': 'KITKAT Nestle 4 Finger Chocolate 38g'}, {'tray_id': '43', 'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'unit_price': 20, 'offer_id': '', 'mrp': '20', 'offer_desc': '', 'qty': 2, 'skuid': '185993', 'door_id': '2', 'sku_total': 40, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g'}, {'tray_id': '46', 'image_url': 'https://images.tinymart.in/product/186059-5330.png', 'unit_price': 40, 'offer_id': '', 'mrp': '40', 'offer_desc': '', 'qty': 1, 'skuid': '186059', 'door_id': '2', 'sku_total': 40, 'name': 'Pepsi ZeroSugar  300ml'}], 'invoice_bill': '110.0', 'order_id': 'TM08202202260831231048744', 'bill_amount': '110.0', 'mobile': '8307393826', 'access_code': '67881863'}, 'msg': 'Order Data'}}}
[2026-08-31 23:11:58,298.298 INFO    ] 2026-08-31 23:11:58
[2026-08-31 23:11:58,346.346 INFO    ] 200
[2026-08-31 23:11:58,350.350 INFO    ] True
[2026-08-31 23:11:58,497.497 INFO    ] 200
[2026-08-31 23:11:58,500.500 INFO    ] {"SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "voiceNote": "Please Wait", "SectionMain": {"Header": "Processing Order"}, "SectionStatus": {"Note": "", "UI_Header": "", "SubHeader": "Please wait while we process your order", "Header": " Your order is under process  "}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 23:11:58,503.503 INFO    ] {'rstatus': False, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'voiceNote': 'Please Wait', 'SectionMain': {'Header': 'Processing Order'}, 'status': 'False', 'SectionStatus': {'UI_Header': '', 'Header': ' Your order is under process  ', 'SubHeader': 'Please wait while we process your order', 'Note': ''}, 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}, 'code': 20001}}
[2026-08-31 23:11:58,506.506 INFO    ] *** process_order ***
[2026-08-31 23:11:59,700.700 INFO    ] 200
[2026-08-31 23:11:59,703.703 INFO    ] {"SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "voiceNote": "Please Wait", "SectionMain": {"Header": "Processing Order"}, "SectionStatus": {"Note": "", "UI_Header": "", "SubHeader": "Please wait while we process your order", "Header": " Your order is under process  "}, "delay": 0, "status": "True", "rstatus": true}
[2026-08-31 23:11:59,706.706 INFO    ] {'delay': 0, 'rstatus': True, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'voiceNote': 'Please Wait', 'SectionMain': {'Header': 'Processing Order'}, 'status': 'True', 'SectionStatus': {'UI_Header': '', 'Header': ' Your order is under process  ', 'SubHeader': 'Please wait while we process your order', 'Note': ''}}
[2026-08-31 23:11:59,708.708 INFO    ] *** process_order ***
[2026-08-31 23:11:59,711.711 INFO    ] publish_status: order_id=TM08202202260831231048744
[2026-08-31 23:11:59,713.713 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831231048744
[2026-08-31 23:11:59,809.809 INFO    ] [publish_status] Message added to stream with ID: 1788198119775-0
[2026-08-31 23:11:59,811.811 INFO    ] Published to order:TM08202202260831231048744: {'server_status': 'doorOpened', 'order_id': 'TM08202202260831231048744', 'server_response': '{"delay": 0, "rstatus": true, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "voiceNote": "Door is open...", "SectionMain": {"Header": "Processing Order"}, "status": "True", "SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "SubHeader": "You can pull the door now.", "Note": ""}}'} (ID: 1788198119775-0)
[2026-08-31 23:12:00,863.863 INFO    ] 2026-08-31 23:12:00
[2026-08-31 23:12:00,866.866 INFO    ] publish_status: order_id=TM08202202260831231048744
[2026-08-31 23:12:00,869.869 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831231048744
[2026-08-31 23:12:00,949.949 INFO    ] [publish_status] Message added to stream with ID: 1788198120905-0
[2026-08-31 23:12:00,952.952 INFO    ] Published to order:TM08202202260831231048744: {'server_status': 'processOrder', 'order_id': 'TM08202202260831231048744', 'server_response': '{"delay": 0, "rstatus": true, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "voiceNote": "Please Wait", "SectionMain": {"Header": "Processing Order"}, "status": "True", "SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "SubHeader": "Please wait while we process your order", "Note": ""}}', 'timestamp': '2026-08-31T17:42:00.864298Z'} (ID: 1788198120905-0)
[2026-08-31 23:12:01,107.107 INFO    ] {'server_status': 'processOrder', 'order_id': 'TM08202202260831231048744', 'server_response': {'delay': 0, 'rstatus': True, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'voiceNote': 'Please Wait', 'SectionMain': {'Header': 'Processing Order'}, 'status': 'True', 'SectionStatus': {'UI_Header': '', 'Header': ' Your order is under process  ', 'SubHeader': 'Please wait while we process your order', 'Note': ''}}}
[2026-08-31 23:12:01,109.109 INFO    ] 200
[2026-08-31 23:12:01,112.112 INFO    ] {"data":{"server_status":"processOrder","order_id":"TM08202202260831231048744","server_response":{"delay":0,"rstatus":true,"SectionSKU":{"Header":"Thank you for bearing with us :)","skus":[]},"voiceNote":"Please Wait","SectionMain":{"Header":"Processing Order"},"status":"true","SectionStatus":{"UI_Header":"","Header":" Your order is under process  ","SubHeader":"Please wait while we process your order","Note":""}}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 23:12:01,115.115 INFO    ] {'response': {'msg': 'order updated successfully', 'status': True, 'data': 'order updated successfully', 'code': 'ORDER_EXISTS'}, 'data': {'server_status': 'processOrder', 'order_id': 'TM08202202260831231048744', 'server_response': {'delay': 0, 'SectionStatus': {'UI_Header': '', 'Note': '', 'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  '}, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'voiceNote': 'Please Wait', 'SectionMain': {'Header': 'Processing Order'}, 'status': 'true', 'rstatus': True}}}
[2026-08-31 23:12:01,118.118 INFO    ] 2026-08-31 23:12:01
[2026-08-31 23:12:01,120.120 INFO    ] None
[2026-08-31 23:12:01,123.123 INFO    ] Opening Door now
[2026-08-31 23:12:01,126.126 INFO    ] Opening Door now
[2026-08-31 23:12:01,129.129 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-08-31 23:12:01,132.132 INFO    ] 2026-08-31 23:12:01
[2026-08-31 23:12:01,150.150 INFO    ] playing audio file
[2026-08-31 23:12:01,171.171 INFO    ] 2026-08-31 23:12:01
[2026-08-31 23:12:01,175.175 INFO    ] 2026-08-31 23:12:01
[2026-08-31 23:12:04,244.244 INFO    ] 200
[2026-08-31 23:12:04,246.246 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "KITKAT Nestle 4 Finger Chocolate 38g"}, {"qty": 2, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}, {"qty": 1, "name": "Pepsi ZeroSugar  300ml"}], "Header": "Pick the below items from the door"}, "voiceNote": "Door 2 is open now", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 23:12:04,250.250 INFO    ] {'rstatus': False, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'KITKAT Nestle 4 Finger Chocolate 38g', 'qty': 1}, {'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'qty': 2}, {'name': 'Pepsi ZeroSugar  300ml', 'qty': 1}]}, 'voiceNote': 'Door 2 is open now', 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 2', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products'}, 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}, 'code': 20001}}
[2026-08-31 23:12:07,367.367 INFO    ] 200
[2026-08-31 23:12:07,370.370 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "KITKAT Nestle 4 Finger Chocolate 38g"}, {"qty": 2, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}, {"qty": 1, "name": "Pepsi ZeroSugar  300ml"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 23:12:07,373.373 INFO    ] {'rstatus': False, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'KITKAT Nestle 4 Finger Chocolate 38g', 'qty': 1}, {'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'qty': 2}, {'name': 'Pepsi ZeroSugar  300ml', 'qty': 1}]}, 'voiceNote': 'Please close door 2', 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 2', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products'}, 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}, 'code': 20001}}
[2026-08-31 23:12:10,450.450 INFO    ] 200
[2026-08-31 23:12:10,453.453 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "KITKAT Nestle 4 Finger Chocolate 38g"}, {"qty": 2, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}, {"qty": 1, "name": "Pepsi ZeroSugar  300ml"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 23:12:10,456.456 INFO    ] Please close door 2
[2026-08-31 23:12:10,458.458 INFO    ] Please close door 2
[2026-08-31 23:12:10,461.461 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-08-31 23:12:10,463.463 INFO    ] 2026-08-31 23:12:10
[2026-08-31 23:12:10,466.466 INFO    ] playing audio file
[2026-08-31 23:12:10,481.481 INFO    ] 2026-08-31 23:12:10
[2026-08-31 23:12:10,485.485 INFO    ] publish_status: order_id=TM08202202260831231048744
[2026-08-31 23:12:10,499.499 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831231048744
[2026-08-31 23:12:10,585.585 INFO    ] [publish_status] Message added to stream with ID: 1788198130545-0
[2026-08-31 23:12:10,588.588 INFO    ] Published to order:TM08202202260831231048744: {'server_status': 'OrderStatus', 'order_id': 'TM08202202260831231048744', 'server_response': '{"rstatus": false, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "KITKAT Nestle 4 Finger Chocolate 38g", "qty": 1}, {"name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g", "qty": 2}, {"name": "Pepsi ZeroSugar  300ml", "qty": 1}]}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "status": "False", "SectionStatus": {"UI_Header": "DOOR 2\\nIS \\nOPEN \\nNOW", "Header": "Please Close Door 2", "SubHeader": "Please Pick the Products and close the door", "Note": "Please Close the door after picking up products"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}}', 'timestamp': '2026-08-31T17:42:10.483491Z'} (ID: 1788198130545-0)
[2026-08-31 23:12:11,128.128 INFO    ] {'server_status': 'OrderStatus', 'order_id': 'TM08202202260831231048744', 'server_response': {'rstatus': False, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'KITKAT Nestle 4 Finger Chocolate 38g', 'qty': 1}, {'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'qty': 2}, {'name': 'Pepsi ZeroSugar  300ml', 'qty': 1}]}, 'voiceNote': 'Please close door 2', 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 2', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products'}, 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}, 'code': 20001}}}
[2026-08-31 23:12:11,130.130 INFO    ] 200
[2026-08-31 23:12:11,133.133 INFO    ] {"data":{"server_status":"OrderStatus","order_id":"TM08202202260831231048744","server_response":{"rstatus":false,"SectionSKU":{"Header":"Pick the below items from the door","skus":[{"name":"KITKAT Nestle 4 Finger Chocolate 38g","qty":1},{"name":"NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g","qty":2},{"name":"Pepsi ZeroSugar  300ml","qty":1}]},"voiceNote":"Please close door 2","SectionMain":{"Header":"Door Open"},"status":"false","SectionStatus":{"UI_Header":"DOOR 2\nIS \nOPEN \nNOW","Header":"Please Close Door 2","SubHeader":"Please Pick the Products and close the door","Note":"Please Close the door after picking up products"},"error":{"umessage":"In Progress","tmessage":"In Progress","data":[],"code":20001}}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 23:12:11,136.136 INFO    ] {'response': {'msg': 'order updated successfully', 'status': True, 'data': 'order updated successfully', 'code': 'ORDER_EXISTS'}, 'data': {'server_status': 'OrderStatus', 'order_id': 'TM08202202260831231048744', 'server_response': {'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': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'KITKAT Nestle 4 Finger Chocolate 38g', 'qty': 1}, {'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'qty': 2}, {'name': 'Pepsi ZeroSugar  300ml', 'qty': 1}]}, 'voiceNote': 'Please close door 2', 'SectionMain': {'Header': 'Door Open'}, 'status': 'false', 'rstatus': False, 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': [], 'code': 20001}}}}
[2026-08-31 23:12:11,139.139 INFO    ] {'rstatus': False, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'KITKAT Nestle 4 Finger Chocolate 38g', 'qty': 1}, {'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'qty': 2}, {'name': 'Pepsi ZeroSugar  300ml', 'qty': 1}]}, 'voiceNote': 'Please close door 2', 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 2', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products'}, 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}, 'code': 20001}}
[2026-08-31 23:12:14,213.213 INFO    ] 200
[2026-08-31 23:12:14,216.216 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "KITKAT Nestle 4 Finger Chocolate 38g"}, {"qty": 2, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}, {"qty": 1, "name": "Pepsi ZeroSugar  300ml"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 23:12:14,219.219 INFO    ] {'rstatus': False, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'KITKAT Nestle 4 Finger Chocolate 38g', 'qty': 1}, {'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'qty': 2}, {'name': 'Pepsi ZeroSugar  300ml', 'qty': 1}]}, 'voiceNote': 'Please close door 2', 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 2', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products'}, 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}, 'code': 20001}}
[2026-08-31 23:12:17,330.330 INFO    ] 200
[2026-08-31 23:12:17,333.333 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "KITKAT Nestle 4 Finger Chocolate 38g"}, {"qty": 2, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}, {"qty": 1, "name": "Pepsi ZeroSugar  300ml"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 23:12:17,337.337 INFO    ] {'rstatus': False, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'KITKAT Nestle 4 Finger Chocolate 38g', 'qty': 1}, {'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'qty': 2}, {'name': 'Pepsi ZeroSugar  300ml', 'qty': 1}]}, 'voiceNote': 'Please close door 2', 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 2', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products'}, 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}, 'code': 20001}}
[2026-08-31 23:12:20,397.397 INFO    ] 200
[2026-08-31 23:12:20,400.400 INFO    ] {"SectionSKU": {"skus": [{"qty": 1, "name": "KITKAT Nestle 4 Finger Chocolate 38g"}, {"qty": 2, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}, {"qty": 1, "name": "Pepsi ZeroSugar  300ml"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "status": "False", "rstatus": false}
[2026-08-31 23:12:20,403.403 INFO    ] Please close door 2
[2026-08-31 23:12:20,405.405 INFO    ] Please close door 2
[2026-08-31 23:12:20,408.408 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-08-31 23:12:20,411.411 INFO    ] 2026-08-31 23:12:20
[2026-08-31 23:12:20,413.413 INFO    ] playing audio file
[2026-08-31 23:12:20,431.431 INFO    ] 2026-08-31 23:12:20
[2026-08-31 23:12:20,434.434 INFO    ] publish_status: order_id=TM08202202260831231048744
[2026-08-31 23:12:20,438.438 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831231048744
[2026-08-31 23:12:20,541.541 INFO    ] [publish_status] Message added to stream with ID: 1788198140499-0
[2026-08-31 23:12:20,544.544 INFO    ] Published to order:TM08202202260831231048744: {'server_status': 'OrderStatus', 'order_id': 'TM08202202260831231048744', 'server_response': '{"rstatus": false, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "KITKAT Nestle 4 Finger Chocolate 38g", "qty": 1}, {"name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g", "qty": 2}, {"name": "Pepsi ZeroSugar  300ml", "qty": 1}]}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "status": "False", "SectionStatus": {"UI_Header": "DOOR 2\\nIS \\nOPEN \\nNOW", "Header": "Please Close Door 2", "SubHeader": "Please Pick the Products and close the door", "Note": "Please Close the door after picking up products"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}}', 'timestamp': '2026-08-31T17:42:20.433031Z'} (ID: 1788198140499-0)
[2026-08-31 23:12:21,154.154 INFO    ] {'server_status': 'OrderStatus', 'order_id': 'TM08202202260831231048744', 'server_response': {'rstatus': False, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'KITKAT Nestle 4 Finger Chocolate 38g', 'qty': 1}, {'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'qty': 2}, {'name': 'Pepsi ZeroSugar  300ml', 'qty': 1}]}, 'voiceNote': 'Please close door 2', 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 2', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products'}, 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}, 'code': 20001}}}
[2026-08-31 23:12:21,157.157 INFO    ] 200
[2026-08-31 23:12:21,160.160 INFO    ] {"data":{"server_status":"OrderStatus","order_id":"TM08202202260831231048744","server_response":{"rstatus":false,"SectionSKU":{"Header":"Pick the below items from the door","skus":[{"name":"KITKAT Nestle 4 Finger Chocolate 38g","qty":1},{"name":"NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g","qty":2},{"name":"Pepsi ZeroSugar  300ml","qty":1}]},"voiceNote":"Please close door 2","SectionMain":{"Header":"Door Open"},"status":"false","SectionStatus":{"UI_Header":"DOOR 2\nIS \nOPEN \nNOW","Header":"Please Close Door 2","SubHeader":"Please Pick the Products and close the door","Note":"Please Close the door after picking up products"},"error":{"umessage":"In Progress","tmessage":"In Progress","data":[],"code":20001}}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 23:12:21,163.163 INFO    ] {'response': {'msg': 'order updated successfully', 'status': True, 'data': 'order updated successfully', 'code': 'ORDER_EXISTS'}, 'data': {'server_status': 'OrderStatus', 'order_id': 'TM08202202260831231048744', 'server_response': {'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': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'KITKAT Nestle 4 Finger Chocolate 38g', 'qty': 1}, {'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'qty': 2}, {'name': 'Pepsi ZeroSugar  300ml', 'qty': 1}]}, 'voiceNote': 'Please close door 2', 'SectionMain': {'Header': 'Door Open'}, 'status': 'false', 'rstatus': False, 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': [], 'code': 20001}}}}
[2026-08-31 23:12:21,165.165 INFO    ] {'rstatus': False, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'KITKAT Nestle 4 Finger Chocolate 38g', 'qty': 1}, {'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'qty': 2}, {'name': 'Pepsi ZeroSugar  300ml', 'qty': 1}]}, 'voiceNote': 'Please close door 2', 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 2', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products'}, 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}, 'code': 20001}}
[2026-08-31 23:12:24,232.232 INFO    ] 200
[2026-08-31 23:12:24,235.235 INFO    ] {"SectionSKU": {"skus": [], "Header": "If you like us, tell others... else tell us"}, "voiceNote": "Transaction Completed", "SectionMain": {"Header": "Door Closed"}, "SectionStatus": {"Note": "If any due amount, clear at https://go.tinymart.in", "UI_Header": "", "SubHeader": "Please wait for invoice to generate", "Header": " Order is complete "}, "delay": 100, "status": "True", "rstatus": true}
[2026-08-31 23:12:24,239.239 INFO    ] {'delay': 100, 'rstatus': True, 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'voiceNote': 'Transaction Completed', 'SectionMain': {'Header': 'Door Closed'}, 'status': 'True', 'SectionStatus': {'UI_Header': '', 'Header': ' Order is complete ', 'SubHeader': 'Please wait for invoice to generate', 'Note': 'If any due amount, clear at https://go.tinymart.in'}}
[2026-08-31 23:12:24,242.242 INFO    ] 2026-08-31 23:12:24
[2026-08-31 23:12:24,244.244 INFO    ] Order Completed 
[2026-08-31 23:12:24,247.247 INFO    ] Order Completed 
[2026-08-31 23:12:24,250.250 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-08-31 23:12:24,253.253 INFO    ] 2026-08-31 23:12:24
[2026-08-31 23:12:24,256.256 INFO    ] playing audio file
[2026-08-31 23:12:24,280.280 INFO    ] 2026-08-31 23:12:24
[2026-08-31 23:12:24,283.283 INFO    ] {'delay': 100, 'rstatus': True, 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'voiceNote': 'Transaction Completed', 'SectionMain': {'Header': 'Door Closed'}, 'status': 'True', 'SectionStatus': {'UI_Header': '', 'Header': ' Order is complete ', 'SubHeader': 'Please wait for invoice to generate', 'Note': 'If any due amount, clear at https://go.tinymart.in'}}
[2026-08-31 23:12:24,286.286 INFO    ] 2026-08-31 23:12:24
[2026-08-31 23:12:26,583.583 INFO    ] 200
[2026-08-31 23:12:26,585.585 INFO    ] {"skus": [{"qty": 2, "image_url": "https://images.tinymart.in/product/186084-5395.png", "sku_total": 60.0, "mrp": "30", "tray_id": "42", "name": "KITKAT Nestle 4 Finger Chocolate 38g per peice", "skuid": "186084", "unit_price": "30", "door_id": ""}, {"qty": 2, "image_url": "https://images.tinymart.in/product/185993-3509.webp", "sku_total": 40.0, "mrp": "20", "tray_id": "43", "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice", "skuid": "185993", "unit_price": "20", "door_id": ""}, {"qty": 1, "image_url": "https://images.tinymart.in/product/186059-5330.png", "sku_total": 40.0, "mrp": "40", "tray_id": "46", "name": "Pepsi ZeroSugar  300ml per peice", "skuid": "186059", "unit_price": "40", "door_id": ""}], "anomaly": 0, "orderId": "TM08202202260831231048744", "res": "True", "logic": "WBL", "total_amount": 140.0, "rstatus": true}
[2026-08-31 23:12:26,589.589 INFO    ] {'anomaly': 0, 'orderId': 'TM08202202260831231048744', 'res': 'True', 'rstatus': True, 'logic': 'WBL', 'total_amount': 140.0, 'skus': [{'image_url': 'https://images.tinymart.in/product/186084-5395.png', 'unit_price': '30', 'door_id': '', 'mrp': '30', 'qty': 2, 'skuid': '186084', 'name': 'KITKAT Nestle 4 Finger Chocolate 38g per peice', 'sku_total': 60.0, 'tray_id': '42'}, {'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'unit_price': '20', 'door_id': '', 'mrp': '20', 'qty': 2, 'skuid': '185993', 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice', 'sku_total': 40.0, 'tray_id': '43'}, {'image_url': 'https://images.tinymart.in/product/186059-5330.png', 'unit_price': '40', 'door_id': '', 'mrp': '40', 'qty': 1, 'skuid': '186059', 'name': 'Pepsi ZeroSugar  300ml per peice', 'sku_total': 40.0, 'tray_id': '46'}]}
[2026-08-31 23:12:26,592.592 INFO    ] {'anomaly': 0, 'orderId': 'TM08202202260831231048744', 'res': 'True', 'rstatus': True, 'logic': 'WBL', 'total_amount': 140.0, 'skus': [{'image_url': 'https://images.tinymart.in/product/186084-5395.png', 'unit_price': '30', 'door_id': '', 'mrp': '30', 'qty': 2, 'skuid': '186084', 'name': 'KITKAT Nestle 4 Finger Chocolate 38g per peice', 'sku_total': 60.0, 'tray_id': '42'}, {'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'unit_price': '20', 'door_id': '', 'mrp': '20', 'qty': 2, 'skuid': '185993', 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice', 'sku_total': 40.0, 'tray_id': '43'}, {'image_url': 'https://images.tinymart.in/product/186059-5330.png', 'unit_price': '40', 'door_id': '', 'mrp': '40', 'qty': 1, 'skuid': '186059', 'name': 'Pepsi ZeroSugar  300ml per peice', 'sku_total': 40.0, 'tray_id': '46'}]}
[2026-08-31 23:12:26,595.595 INFO    ] 2026-08-31 23:12:26
[2026-08-31 23:12:26,598.598 INFO    ] 2026-08-31 23:12:26
[2026-08-31 23:12:26,601.601 INFO    ] 110
[2026-08-31 23:12:26,604.604 INFO    ] 2026-08-31 23:12:26
[2026-08-31 23:12:26,606.606 INFO    ] 2026-08-31 23:12:26
[2026-08-31 23:12:26,609.609 INFO    ]  You had Picked Excess of 30 Your Bill Amount is 140
[2026-08-31 23:12:26,612.612 INFO    ]  You had Picked Excess of 30 Your Bill Amount is 140
[2026-08-31 23:12:26,615.615 INFO    ] 2e68b0ee26455347c86a1d2c0934afc6
[2026-08-31 23:12:26,622.622 INFO    ] 2026-08-31 23:12:26
[2026-08-31 23:12:26,625.625 INFO    ] creating audio file
[2026-08-31 23:12:26,745.745 INFO    ] Calling gTTS API with 60s timeout...
[2026-08-31 23:12:27,408.408 INFO    ] gTTS API call completed successfully
[2026-08-31 23:12:31,775.775 INFO    ] 2026-08-31 23:12:31
[2026-08-31 23:12:31,779.779 INFO    ] playing audio file
[2026-08-31 23:12:31,798.798 INFO    ] 2026-08-31 23:12:31
[2026-08-31 23:12:31,802.802 INFO    ] 2026-08-31 23:12:31
[2026-08-31 23:12:31,806.806 INFO    ] publish_status: order_id=TM08202202260831231048744
[2026-08-31 23:12:31,810.810 INFO    ] [publish_status] Adding message to stream: order:TM08202202260831231048744
[2026-08-31 23:12:31,901.901 INFO    ] [publish_status] Message added to stream with ID: 1788198151869-0
[2026-08-31 23:12:31,905.905 INFO    ] Published to order:TM08202202260831231048744: {'server_status': 'invoiceOrder', 'order_id': 'TM08202202260831231048744', 'server_response': '{"anomaly": 0, "orderId": "TM08202202260831231048744", "res": "True", "rstatus": true, "logic": "WBL", "total_amount": 140.0, "skus": [{"image_url": "https://images.tinymart.in/product/186084-5395.png", "unit_price": "30", "door_id": "", "mrp": "30", "qty": 2, "skuid": "186084", "name": "KITKAT Nestle 4 Finger Chocolate 38g per peice", "sku_total": 60.0, "tray_id": "42"}, {"image_url": "https://images.tinymart.in/product/185993-3509.webp", "unit_price": "20", "door_id": "", "mrp": "20", "qty": 2, "skuid": "185993", "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice", "sku_total": 40.0, "tray_id": "43"}, {"image_url": "https://images.tinymart.in/product/186059-5330.png", "unit_price": "40", "door_id": "", "mrp": "40", "qty": 1, "skuid": "186059", "name": "Pepsi ZeroSugar  300ml per peice", "sku_total": 40.0, "tray_id": "46"}]}', 'timestamp': '2026-08-31T17:42:31.804012Z'} (ID: 1788198151869-0)
[2026-08-31 23:12:32,480.480 INFO    ] {'server_status': 'invoiceOrder', 'order_id': 'TM08202202260831231048744', 'server_response': {'anomaly': 0, 'orderId': 'TM08202202260831231048744', 'res': 'True', 'rstatus': True, 'logic': 'WBL', 'total_amount': 140.0, 'skus': [{'image_url': 'https://images.tinymart.in/product/186084-5395.png', 'unit_price': '30', 'door_id': '', 'mrp': '30', 'qty': 2, 'skuid': '186084', 'name': 'KITKAT Nestle 4 Finger Chocolate 38g per peice', 'sku_total': 60.0, 'tray_id': '42'}, {'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'unit_price': '20', 'door_id': '', 'mrp': '20', 'qty': 2, 'skuid': '185993', 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice', 'sku_total': 40.0, 'tray_id': '43'}, {'image_url': 'https://images.tinymart.in/product/186059-5330.png', 'unit_price': '40', 'door_id': '', 'mrp': '40', 'qty': 1, 'skuid': '186059', 'name': 'Pepsi ZeroSugar  300ml per peice', 'sku_total': 40.0, 'tray_id': '46'}]}}
[2026-08-31 23:12:32,483.483 INFO    ] 200
[2026-08-31 23:12:32,486.486 INFO    ] {"data":{"server_status":"invoiceOrder","order_id":"TM08202202260831231048744","server_response":{"anomaly":0,"orderId":"TM08202202260831231048744","res":"true","rstatus":true,"logic":"WBL","total_amount":140,"skus":[{"image_url":"https:\/\/images.tinymart.in\/product\/186084-5395.png","unit_price":"30","door_id":"","mrp":"30","qty":2,"skuid":"186084","name":"KITKAT Nestle 4 Finger Chocolate 38g per peice","sku_total":60,"tray_id":"42"},{"image_url":"https:\/\/images.tinymart.in\/product\/185993-3509.webp","unit_price":"20","door_id":"","mrp":"20","qty":2,"skuid":"185993","name":"NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice","sku_total":40,"tray_id":"43"},{"image_url":"https:\/\/images.tinymart.in\/product\/186059-5330.png","unit_price":"40","door_id":"","mrp":"40","qty":1,"skuid":"186059","name":"Pepsi ZeroSugar  300ml per peice","sku_total":40,"tray_id":"46"}]}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-31 23:12:32,491.491 INFO    ] {'response': {'msg': 'order updated successfully', 'status': True, 'data': 'order updated successfully', 'code': 'ORDER_EXISTS'}, 'data': {'server_status': 'invoiceOrder', 'order_id': 'TM08202202260831231048744', 'server_response': {'anomaly': 0, 'orderId': 'TM08202202260831231048744', 'res': 'true', 'rstatus': True, 'logic': 'WBL', 'total_amount': 140, 'skus': [{'image_url': 'https://images.tinymart.in/product/186084-5395.png', 'unit_price': '30', 'sku_total': 60, 'qty': 2, 'tray_id': '42', 'skuid': '186084', 'door_id': '', 'mrp': '30', 'name': 'KITKAT Nestle 4 Finger Chocolate 38g per peice'}, {'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'unit_price': '20', 'sku_total': 40, 'qty': 2, 'tray_id': '43', 'skuid': '185993', 'door_id': '', 'mrp': '20', 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice'}, {'image_url': 'https://images.tinymart.in/product/186059-5330.png', 'unit_price': '40', 'sku_total': 40, 'qty': 1, 'tray_id': '46', 'skuid': '186059', 'door_id': '', 'mrp': '40', 'name': 'Pepsi ZeroSugar  300ml per peice'}]}}}
[2026-08-31 23:12:32,495.495 INFO    ] {'response': {'msg': 'order updated successfully', 'status': True, 'data': 'order updated successfully', 'code': 'ORDER_EXISTS'}, 'data': {'server_status': 'invoiceOrder', 'order_id': 'TM08202202260831231048744', 'server_response': {'anomaly': 0, 'orderId': 'TM08202202260831231048744', 'res': 'true', 'rstatus': True, 'logic': 'WBL', 'total_amount': 140, 'skus': [{'image_url': 'https://images.tinymart.in/product/186084-5395.png', 'unit_price': '30', 'sku_total': 60, 'qty': 2, 'tray_id': '42', 'skuid': '186084', 'door_id': '', 'mrp': '30', 'name': 'KITKAT Nestle 4 Finger Chocolate 38g per peice'}, {'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'unit_price': '20', 'sku_total': 40, 'qty': 2, 'tray_id': '43', 'skuid': '185993', 'door_id': '', 'mrp': '20', 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice'}, {'image_url': 'https://images.tinymart.in/product/186059-5330.png', 'unit_price': '40', 'sku_total': 40, 'qty': 1, 'tray_id': '46', 'skuid': '186059', 'door_id': '', 'mrp': '40', 'name': 'Pepsi ZeroSugar  300ml per peice'}]}}}
[2026-08-31 23:12:32,499.499 INFO    ] 2026-08-31 23:12:32
[2026-08-31 23:12:33,389.389 INFO    ] 200
[2026-08-31 23:12:33,392.392 INFO    ] {"tray_sync": [], "order_items": [], "orders_data": [], "orders_synced": [], "tray_synced": ["no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry"], "orders_data_synced": [], "status": true, "order_items_synced": [], "orders": []}
[2026-08-31 23:12:33,395.395 INFO    ] 2026-08-31 23:12:33
[2026-08-31 23:12:33,540.540 INFO    ] 200
[2026-08-31 23:12:33,542.542 INFO    ] True
[2026-08-31 23:12:33,545.545 INFO    ] cleanup_start_order_file_after_processing: order_id=TM08202202260831231048744
[2026-08-31 23:12:33,548.548 INFO    ] start order file deleted
[2026-08-31 23:12:33,551.551 INFO    ] Checking for system updates...
[2026-08-31 23:12:33,587.587 INFO    ] 200
[2026-08-31 23:12:33,590.590 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:12:33,649.649 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:12:33,652.652 INFO    ] No update needed
[2026-08-31 23:12:33,654.654 INFO    ] Checking for camera pi updates...
[2026-08-31 23:12:33,692.692 INFO    ] 200
[2026-08-31 23:12:33,694.694 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:12:33,740.740 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:12:33,843.843 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:12:33,846.846 INFO    ] No camera update needed
[2026-08-31 23:12:33,850.850 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:12:33,853.853 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:12:33,859.859 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:12:33,865.865 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:12:35,908.908 INFO    ] ================================================
[2026-08-31 23:12:35,924.924 INFO    ] Launching Daemon at Mon Aug 31 23:12:35 IST 2026
[2026-08-31 23:12:35,935.935 INFO    ] ================================================
[2026-08-31 23:12:36,515.515 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:12:36
[2026-08-31 23:12:37,112.112 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:12:37,387.387 INFO    ] Initializing speech engine...
[2026-08-31 23:12:37,408.408 INFO    ] 2026-08-31 23:12:37
[2026-08-31 23:12:37,676.676 INFO    ] 2026-08-31 23:12:37
[2026-08-31 23:12:37,711.711 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:12:37,909.909 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:12:37,922.922 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:12:38,081.081 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:12:38,089.089 INFO    ] time= 31/08/2026 23:12:38
[2026-08-31 23:12:38,094.094 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:12:38,101.101 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:12:38,181.181 INFO    ] No existing commands found in stream
[2026-08-31 23:12:43,216.216 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:12:43,220.220 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-08-31 23:12:43,965.965 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 23:12:43,967.967 INFO    ] Checking for system updates...
[2026-08-31 23:12:44,004.004 INFO    ] 200
[2026-08-31 23:12:44,006.006 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:12:44,065.065 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:12:44,067.067 INFO    ] No update needed
[2026-08-31 23:12:44,070.070 INFO    ] Checking for camera pi updates...
[2026-08-31 23:12:44,104.104 INFO    ] 200
[2026-08-31 23:12:44,106.106 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:12:44,147.147 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:12:44,341.341 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:12:44,344.344 INFO    ] No camera update needed
[2026-08-31 23:12:44,346.346 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:12:44,349.349 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:12:44,355.355 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:12:44,360.360 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:12:46,399.399 INFO    ] ================================================
[2026-08-31 23:12:46,415.415 INFO    ] Launching Daemon at Mon Aug 31 23:12:46 IST 2026
[2026-08-31 23:12:46,425.425 INFO    ] ================================================
[2026-08-31 23:12:46,999.999 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:12:46
[2026-08-31 23:12:47,595.595 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:12:47,871.871 INFO    ] Initializing speech engine...
[2026-08-31 23:12:47,878.878 INFO    ] 2026-08-31 23:12:47
[2026-08-31 23:12:48,145.145 INFO    ] 2026-08-31 23:12:48
[2026-08-31 23:12:48,198.198 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:12:48,432.432 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:12:48,437.437 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:12:48,569.569 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:12:48,612.612 INFO    ] time= 31/08/2026 23:12:48
[2026-08-31 23:12:48,656.656 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:12:48,704.704 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:12:48,851.851 INFO    ] No existing commands found in stream
[2026-08-31 23:12:53,869.869 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:12:53,872.872 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-08-31 23:12:56,834.834 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 23:12:56,837.837 INFO    ] Checking for system updates...
[2026-08-31 23:12:56,878.878 INFO    ] 200
[2026-08-31 23:12:56,881.881 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:12:56,934.934 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:12:56,937.937 INFO    ] No update needed
[2026-08-31 23:12:56,940.940 INFO    ] Checking for camera pi updates...
[2026-08-31 23:12:56,978.978 INFO    ] 200
[2026-08-31 23:12:56,981.981 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:12:57,022.022 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:12:57,117.117 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:12:57,120.120 INFO    ] No camera update needed
[2026-08-31 23:12:57,122.122 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:12:57,125.125 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:12:57,132.132 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:12:57,137.137 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:12:59,179.179 INFO    ] ================================================
[2026-08-31 23:12:59,194.194 INFO    ] Launching Daemon at Mon Aug 31 23:12:59 IST 2026
[2026-08-31 23:12:59,205.205 INFO    ] ================================================
[2026-08-31 23:12:59,854.854 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:12:59
[2026-08-31 23:13:00,525.525 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:13:00,828.828 INFO    ] Initializing speech engine...
[2026-08-31 23:13:00,842.842 INFO    ] 2026-08-31 23:13:00
[2026-08-31 23:13:01,151.151 INFO    ] 2026-08-31 23:13:01
[2026-08-31 23:13:01,237.237 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:13:01,417.417 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:13:01,490.490 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:13:01,635.635 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:13:01,738.738 INFO    ] time= 31/08/2026 23:13:01
[2026-08-31 23:13:01,798.798 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:13:01,806.806 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:13:01,875.875 INFO    ] No existing commands found in stream
[2026-08-31 23:13:06,884.884 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:13:06,887.887 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-08-31 23:13:08,552.552 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 23:13:08,555.555 INFO    ] Checking for system updates...
[2026-08-31 23:13:08,595.595 INFO    ] 200
[2026-08-31 23:13:08,598.598 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:13:08,658.658 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:13:08,661.661 INFO    ] No update needed
[2026-08-31 23:13:08,664.664 INFO    ] Checking for camera pi updates...
[2026-08-31 23:13:08,702.702 INFO    ] 200
[2026-08-31 23:13:08,705.705 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:13:08,745.745 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:13:08,827.827 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:13:08,830.830 INFO    ] No camera update needed
[2026-08-31 23:13:08,832.832 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:13:08,835.835 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:13:08,841.841 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:13:08,847.847 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:13:10,888.888 INFO    ] ================================================
[2026-08-31 23:13:10,904.904 INFO    ] Launching Daemon at Mon Aug 31 23:13:10 IST 2026
[2026-08-31 23:13:10,914.914 INFO    ] ================================================
[2026-08-31 23:13:11,553.553 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:13:11
[2026-08-31 23:13:12,210.210 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:13:12,510.510 INFO    ] Initializing speech engine...
[2026-08-31 23:13:12,518.518 INFO    ] 2026-08-31 23:13:12
[2026-08-31 23:13:12,793.793 INFO    ] 2026-08-31 23:13:12
[2026-08-31 23:13:12,850.850 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:13:13,137.137 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:13:13,145.145 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:13:13,345.345 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:13:13,352.352 INFO    ] time= 31/08/2026 23:13:13
[2026-08-31 23:13:13,372.372 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:13:13,402.402 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:13:13,508.508 INFO    ] No existing commands found in stream
[2026-08-31 23:13:18,520.520 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:13:18,523.523 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-08-31 23:13:22,091.091 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 23:13:22,094.094 INFO    ] Checking for system updates...
[2026-08-31 23:13:22,135.135 INFO    ] 200
[2026-08-31 23:13:22,138.138 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:13:22,192.192 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:13:22,194.194 INFO    ] No update needed
[2026-08-31 23:13:22,197.197 INFO    ] Checking for camera pi updates...
[2026-08-31 23:13:22,231.231 INFO    ] 200
[2026-08-31 23:13:22,234.234 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:13:22,276.276 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:13:22,373.373 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:13:22,375.375 INFO    ] No camera update needed
[2026-08-31 23:13:22,378.378 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:13:22,381.381 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:13:22,387.387 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:13:22,393.393 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:13:24,433.433 INFO    ] ================================================
[2026-08-31 23:13:24,448.448 INFO    ] Launching Daemon at Mon Aug 31 23:13:24 IST 2026
[2026-08-31 23:13:24,458.458 INFO    ] ================================================
[2026-08-31 23:13:25,106.106 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:13:25
[2026-08-31 23:13:25,770.770 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:13:26,073.073 INFO    ] Initializing speech engine...
[2026-08-31 23:13:26,081.081 INFO    ] 2026-08-31 23:13:26
[2026-08-31 23:13:26,351.351 INFO    ] 2026-08-31 23:13:26
[2026-08-31 23:13:26,386.386 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:13:26,639.639 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:13:26,650.650 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:13:26,785.785 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:13:26,833.833 INFO    ] time= 31/08/2026 23:13:26
[2026-08-31 23:13:26,887.887 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:13:26,923.923 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:13:27,055.055 INFO    ] No existing commands found in stream
[2026-08-31 23:13:32,080.080 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:13:32,083.083 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-08-31 23:13:35,011.011 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 23:13:35,014.014 INFO    ] Checking for system updates...
[2026-08-31 23:13:35,050.050 INFO    ] 200
[2026-08-31 23:13:35,053.053 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:13:35,112.112 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:13:35,115.115 INFO    ] No update needed
[2026-08-31 23:13:35,117.117 INFO    ] Checking for camera pi updates...
[2026-08-31 23:13:35,153.153 INFO    ] 200
[2026-08-31 23:13:35,156.156 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:13:35,197.197 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:13:35,290.290 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:13:35,293.293 INFO    ] No camera update needed
[2026-08-31 23:13:35,296.296 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:13:35,299.299 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:13:35,305.305 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:13:35,310.310 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:13:37,351.351 INFO    ] ================================================
[2026-08-31 23:13:37,365.365 INFO    ] Launching Daemon at Mon Aug 31 23:13:37 IST 2026
[2026-08-31 23:13:37,376.376 INFO    ] ================================================
[2026-08-31 23:13:38,015.015 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:13:38
[2026-08-31 23:13:38,675.675 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:13:38,977.977 INFO    ] Initializing speech engine...
[2026-08-31 23:13:38,990.990 INFO    ] 2026-08-31 23:13:38
[2026-08-31 23:13:39,259.259 INFO    ] 2026-08-31 23:13:39
[2026-08-31 23:13:39,314.314 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:13:39,545.545 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:13:39,552.552 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:13:39,775.775 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:13:39,815.815 INFO    ] time= 31/08/2026 23:13:39
[2026-08-31 23:13:39,822.822 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:13:39,844.844 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:13:39,976.976 INFO    ] No existing commands found in stream
[2026-08-31 23:13:44,989.989 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:13:44,992.992 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-08-31 23:13:48,657.657 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 23:13:48,660.660 INFO    ] Checking for system updates...
[2026-08-31 23:13:48,695.695 INFO    ] 200
[2026-08-31 23:13:48,697.697 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:13:48,751.751 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:13:48,753.753 INFO    ] No update needed
[2026-08-31 23:13:48,756.756 INFO    ] Checking for camera pi updates...
[2026-08-31 23:13:48,789.789 INFO    ] 200
[2026-08-31 23:13:48,792.792 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:13:48,832.832 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:13:48,913.913 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:13:48,915.915 INFO    ] No camera update needed
[2026-08-31 23:13:48,917.917 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:13:48,920.920 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:13:48,925.925 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:13:48,930.930 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:13:50,970.970 INFO    ] ================================================
[2026-08-31 23:13:50,985.985 INFO    ] Launching Daemon at Mon Aug 31 23:13:50 IST 2026
[2026-08-31 23:13:51,995.995 INFO    ] ================================================
[2026-08-31 23:13:51,575.575 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:13:51
[2026-08-31 23:13:52,172.172 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:13:52,444.444 INFO    ] Initializing speech engine...
[2026-08-31 23:13:52,454.454 INFO    ] 2026-08-31 23:13:52
[2026-08-31 23:13:52,715.715 INFO    ] 2026-08-31 23:13:52
[2026-08-31 23:13:52,768.768 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:13:52,995.995 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:13:53,001.001 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:13:53,133.133 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:13:53,193.193 INFO    ] time= 31/08/2026 23:13:53
[2026-08-31 23:13:53,247.247 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:13:53,267.267 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:13:53,403.403 INFO    ] No existing commands found in stream
[2026-08-31 23:13:58,421.421 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:13:58,424.424 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-08-31 23:14:00,928.928 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 23:14:00,931.931 INFO    ] Checking for system updates...
[2026-08-31 23:14:00,971.971 INFO    ] 200
[2026-08-31 23:14:00,974.974 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:14:01,053.053 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:14:01,055.055 INFO    ] No update needed
[2026-08-31 23:14:01,058.058 INFO    ] Checking for camera pi updates...
[2026-08-31 23:14:01,093.093 INFO    ] 200
[2026-08-31 23:14:01,095.095 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:14:01,136.136 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:14:01,265.265 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:14:01,268.268 INFO    ] No camera update needed
[2026-08-31 23:14:01,270.270 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:14:01,272.272 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:14:01,278.278 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:14:01,283.283 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:14:03,324.324 INFO    ] ================================================
[2026-08-31 23:14:03,340.340 INFO    ] Launching Daemon at Mon Aug 31 23:14:03 IST 2026
[2026-08-31 23:14:03,350.350 INFO    ] ================================================
[2026-08-31 23:14:03,933.933 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:14:03
[2026-08-31 23:14:04,534.534 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:14:04,809.809 INFO    ] Initializing speech engine...
[2026-08-31 23:14:04,818.818 INFO    ] 2026-08-31 23:14:04
[2026-08-31 23:14:05,064.064 INFO    ] 2026-08-31 23:14:05
[2026-08-31 23:14:05,102.102 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:14:05,301.301 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:14:05,319.319 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:14:05,590.590 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:14:05,658.658 INFO    ] time= 31/08/2026 23:14:05
[2026-08-31 23:14:05,665.665 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:14:05,686.686 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:14:05,805.805 INFO    ] No existing commands found in stream
[2026-08-31 23:14:10,830.830 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:14:10,833.833 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-08-31 23:14:12,562.562 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 23:14:12,565.565 INFO    ] Checking for system updates...
[2026-08-31 23:14:12,600.600 INFO    ] 200
[2026-08-31 23:14:12,603.603 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:14:12,654.654 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:14:12,656.656 INFO    ] No update needed
[2026-08-31 23:14:12,659.659 INFO    ] Checking for camera pi updates...
[2026-08-31 23:14:12,696.696 INFO    ] 200
[2026-08-31 23:14:12,699.699 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:14:12,745.745 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:14:12,848.848 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:14:12,851.851 INFO    ] No camera update needed
[2026-08-31 23:14:12,853.853 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:14:12,855.855 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:14:12,861.861 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:14:12,866.866 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:14:14,907.907 INFO    ] ================================================
[2026-08-31 23:14:14,922.922 INFO    ] Launching Daemon at Mon Aug 31 23:14:14 IST 2026
[2026-08-31 23:14:14,933.933 INFO    ] ================================================
[2026-08-31 23:14:15,689.689 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:14:15
[2026-08-31 23:14:16,301.301 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:14:16,603.603 INFO    ] Initializing speech engine...
[2026-08-31 23:14:16,615.615 INFO    ] 2026-08-31 23:14:16
[2026-08-31 23:14:16,894.894 INFO    ] 2026-08-31 23:14:16
[2026-08-31 23:14:16,983.983 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:14:17,218.218 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:14:17,227.227 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:14:17,402.402 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:14:17,429.429 INFO    ] time= 31/08/2026 23:14:17
[2026-08-31 23:14:17,448.448 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:14:17,470.470 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:14:17,584.584 INFO    ] No existing commands found in stream
[2026-08-31 23:14:22,600.600 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:14:22,603.603 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-08-31 23:14:23,880.880 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 23:14:23,883.883 INFO    ] Checking for system updates...
[2026-08-31 23:14:23,925.925 INFO    ] 200
[2026-08-31 23:14:23,928.928 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:14:23,985.985 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:14:23,988.988 INFO    ] No update needed
[2026-08-31 23:14:23,991.991 INFO    ] Checking for camera pi updates...
[2026-08-31 23:14:24,025.025 INFO    ] 200
[2026-08-31 23:14:24,028.028 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:14:24,069.069 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:14:24,168.168 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:14:24,170.170 INFO    ] No camera update needed
[2026-08-31 23:14:24,173.173 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:14:24,176.176 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:14:24,182.182 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:14:24,188.188 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:14:26,229.229 INFO    ] ================================================
[2026-08-31 23:14:26,244.244 INFO    ] Launching Daemon at Mon Aug 31 23:14:26 IST 2026
[2026-08-31 23:14:26,255.255 INFO    ] ================================================
[2026-08-31 23:14:26,820.820 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:14:26
[2026-08-31 23:14:27,469.469 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:14:27,774.774 INFO    ] Initializing speech engine...
[2026-08-31 23:14:27,788.788 INFO    ] 2026-08-31 23:14:27
[2026-08-31 23:14:28,101.101 INFO    ] 2026-08-31 23:14:28
[2026-08-31 23:14:28,189.189 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:14:28,407.407 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:14:28,412.412 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:14:28,592.592 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:14:28,619.619 INFO    ] time= 31/08/2026 23:14:28
[2026-08-31 23:14:28,640.640 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:14:28,667.667 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:14:28,785.785 INFO    ] No existing commands found in stream
[2026-08-31 23:14:33,812.812 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:14:33,815.815 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-08-31 23:14:36,200.200 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 23:14:36,203.203 INFO    ] Checking for system updates...
[2026-08-31 23:14:36,240.240 INFO    ] 200
[2026-08-31 23:14:36,243.243 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:14:36,297.297 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:14:36,300.300 INFO    ] No update needed
[2026-08-31 23:14:36,303.303 INFO    ] Checking for camera pi updates...
[2026-08-31 23:14:36,338.338 INFO    ] 200
[2026-08-31 23:14:36,340.340 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:14:36,382.382 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:14:36,490.490 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:14:36,493.493 INFO    ] No camera update needed
[2026-08-31 23:14:36,495.495 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:14:36,498.498 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:14:36,504.504 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:14:36,510.510 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:14:38,551.551 INFO    ] ================================================
[2026-08-31 23:14:38,567.567 INFO    ] Launching Daemon at Mon Aug 31 23:14:38 IST 2026
[2026-08-31 23:14:38,578.578 INFO    ] ================================================
[2026-08-31 23:14:39,238.238 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:14:39
[2026-08-31 23:14:39,908.908 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:14:40,217.217 INFO    ] Initializing speech engine...
[2026-08-31 23:14:40,229.229 INFO    ] 2026-08-31 23:14:40
[2026-08-31 23:14:40,543.543 INFO    ] 2026-08-31 23:14:40
[2026-08-31 23:14:40,633.633 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:14:40,848.848 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:14:40,857.857 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:14:41,056.056 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:14:41,074.074 INFO    ] time= 31/08/2026 23:14:41
[2026-08-31 23:14:41,085.085 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:14:41,114.114 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:14:41,222.222 INFO    ] No existing commands found in stream
[2026-08-31 23:14:46,242.242 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:14:46,246.246 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-08-31 23:14:47,799.799 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 23:14:47,802.802 INFO    ] Checking for system updates...
[2026-08-31 23:14:47,839.839 INFO    ] 200
[2026-08-31 23:14:47,842.842 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:14:47,894.894 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:14:47,896.896 INFO    ] No update needed
[2026-08-31 23:14:47,899.899 INFO    ] Checking for camera pi updates...
[2026-08-31 23:14:47,932.932 INFO    ] 200
[2026-08-31 23:14:47,935.935 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:14:47,980.980 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:14:48,182.182 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:14:48,184.184 INFO    ] No camera update needed
[2026-08-31 23:14:48,186.186 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:14:48,189.189 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:14:48,194.194 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:14:48,199.199 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:14:50,240.240 INFO    ] ================================================
[2026-08-31 23:14:50,257.257 INFO    ] Launching Daemon at Mon Aug 31 23:14:50 IST 2026
[2026-08-31 23:14:50,271.271 INFO    ] ================================================
[2026-08-31 23:14:50,836.836 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:14:50
[2026-08-31 23:14:51,419.419 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:14:51,664.664 INFO    ] Initializing speech engine...
[2026-08-31 23:14:51,679.679 INFO    ] 2026-08-31 23:14:51
[2026-08-31 23:14:51,944.944 INFO    ] 2026-08-31 23:14:51
[2026-08-31 23:14:51,979.979 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:14:52,181.181 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:14:52,240.240 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:14:52,382.382 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:14:52,442.442 INFO    ] time= 31/08/2026 23:14:52
[2026-08-31 23:14:52,501.501 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:14:52,519.519 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:14:52,641.641 INFO    ] No existing commands found in stream
[2026-08-31 23:14:57,666.666 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:14:57,669.669 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-08-31 23:14:58,840.840 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 23:14:58,842.842 INFO    ] Checking for system updates...
[2026-08-31 23:14:58,883.883 INFO    ] 200
[2026-08-31 23:14:58,886.886 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:14:58,949.949 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:14:58,952.952 INFO    ] No update needed
[2026-08-31 23:14:58,955.955 INFO    ] Checking for camera pi updates...
[2026-08-31 23:14:58,990.990 INFO    ] 200
[2026-08-31 23:14:58,992.992 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:14:59,034.034 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:14:59,123.123 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:14:59,126.126 INFO    ] No camera update needed
[2026-08-31 23:14:59,129.129 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:14:59,132.132 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:14:59,139.139 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:14:59,145.145 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:15:01,184.184 INFO    ] ================================================
[2026-08-31 23:15:01,200.200 INFO    ] Launching Daemon at Mon Aug 31 23:15:01 IST 2026
[2026-08-31 23:15:01,211.211 INFO    ] ================================================
[2026-08-31 23:15:02,299.299 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:15:02
[2026-08-31 23:15:02,969.969 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:15:03,267.267 INFO    ] Initializing speech engine...
[2026-08-31 23:15:03,274.274 INFO    ] 2026-08-31 23:15:03
[2026-08-31 23:15:03,571.571 INFO    ] 2026-08-31 23:15:03
[2026-08-31 23:15:03,609.609 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:15:03,796.796 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:15:03,803.803 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:15:03,943.943 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:15:03,949.949 INFO    ] time= 31/08/2026 23:15:03
[2026-08-31 23:15:03,969.969 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:15:03,975.975 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:15:04,083.083 INFO    ] No existing commands found in stream
[2026-08-31 23:15:09,095.095 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:15:09,098.098 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-08-31 23:15:10,477.477 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 23:15:10,479.479 INFO    ] Checking for system updates...
[2026-08-31 23:15:10,516.516 INFO    ] 200
[2026-08-31 23:15:10,519.519 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:15:10,580.580 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:15:10,583.583 INFO    ] No update needed
[2026-08-31 23:15:10,585.585 INFO    ] Checking for camera pi updates...
[2026-08-31 23:15:10,622.622 INFO    ] 200
[2026-08-31 23:15:10,624.624 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:15:10,670.670 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:15:10,753.753 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:15:10,755.755 INFO    ] No camera update needed
[2026-08-31 23:15:10,758.758 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:15:10,760.760 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:15:10,765.765 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:15:10,770.770 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:15:12,811.811 INFO    ] ================================================
[2026-08-31 23:15:12,826.826 INFO    ] Launching Daemon at Mon Aug 31 23:15:12 IST 2026
[2026-08-31 23:15:12,837.837 INFO    ] ================================================
[2026-08-31 23:15:13,405.405 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:15:13
[2026-08-31 23:15:13,991.991 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:15:14,237.237 INFO    ] Initializing speech engine...
[2026-08-31 23:15:14,245.245 INFO    ] 2026-08-31 23:15:14
[2026-08-31 23:15:14,520.520 INFO    ] 2026-08-31 23:15:14
[2026-08-31 23:15:14,556.556 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:15:14,814.814 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:15:14,823.823 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:15:15,043.043 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:15:15,088.088 INFO    ] time= 31/08/2026 23:15:15
[2026-08-31 23:15:15,094.094 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:15:15,111.111 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:15:15,224.224 INFO    ] No existing commands found in stream
[2026-08-31 23:15:20,249.249 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:15:20,252.252 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-08-31 23:15:21,870.870 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 23:15:21,872.872 INFO    ] Checking for system updates...
[2026-08-31 23:15:21,910.910 INFO    ] 200
[2026-08-31 23:15:21,912.912 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:15:21,969.969 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:15:21,971.971 INFO    ] No update needed
[2026-08-31 23:15:21,974.974 INFO    ] Checking for camera pi updates...
[2026-08-31 23:15:22,007.007 INFO    ] 200
[2026-08-31 23:15:22,009.009 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:15:22,050.050 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:15:22,117.117 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:15:22,120.120 INFO    ] No camera update needed
[2026-08-31 23:15:22,122.122 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:15:22,124.124 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:15:22,129.129 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:15:22,134.134 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:15:24,173.173 INFO    ] ================================================
[2026-08-31 23:15:24,189.189 INFO    ] Launching Daemon at Mon Aug 31 23:15:24 IST 2026
[2026-08-31 23:15:24,200.200 INFO    ] ================================================
[2026-08-31 23:15:24,851.851 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:15:24
[2026-08-31 23:15:25,518.518 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:15:25,812.812 INFO    ] Initializing speech engine...
[2026-08-31 23:15:25,824.824 INFO    ] 2026-08-31 23:15:25
[2026-08-31 23:15:26,102.102 INFO    ] 2026-08-31 23:15:26
[2026-08-31 23:15:26,201.201 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:15:26,367.367 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:15:26,373.373 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:15:26,595.595 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:15:26,635.635 INFO    ] time= 31/08/2026 23:15:26
[2026-08-31 23:15:26,641.641 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:15:26,662.662 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:15:26,777.777 INFO    ] No existing commands found in stream
[2026-08-31 23:15:31,800.800 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:15:31,803.803 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-08-31 23:15:36,029.029 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 23:15:36,031.031 INFO    ] Checking for system updates...
[2026-08-31 23:15:36,067.067 INFO    ] 200
[2026-08-31 23:15:36,070.070 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:15:36,126.126 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:15:36,128.128 INFO    ] No update needed
[2026-08-31 23:15:36,131.131 INFO    ] Checking for camera pi updates...
[2026-08-31 23:15:36,163.163 INFO    ] 200
[2026-08-31 23:15:36,166.166 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:15:36,206.206 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:15:36,292.292 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:15:36,295.295 INFO    ] No camera update needed
[2026-08-31 23:15:36,297.297 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:15:36,300.300 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:15:36,305.305 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:15:36,310.310 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:15:38,351.351 INFO    ] ================================================
[2026-08-31 23:15:38,366.366 INFO    ] Launching Daemon at Mon Aug 31 23:15:38 IST 2026
[2026-08-31 23:15:38,376.376 INFO    ] ================================================
[2026-08-31 23:15:38,956.956 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:15:38
[2026-08-31 23:15:39,557.557 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:15:39,817.817 INFO    ] Initializing speech engine...
[2026-08-31 23:15:39,833.833 INFO    ] 2026-08-31 23:15:39
[2026-08-31 23:15:40,119.119 INFO    ] 2026-08-31 23:15:40
[2026-08-31 23:15:40,159.159 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:15:40,354.354 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:15:40,368.368 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:15:40,529.529 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:15:40,541.541 INFO    ] time= 31/08/2026 23:15:40
[2026-08-31 23:15:40,548.548 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:15:40,561.561 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:15:40,698.698 INFO    ] No existing commands found in stream
[2026-08-31 23:15:45,728.728 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:15:45,731.731 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-08-31 23:15:48,319.319 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 23:15:48,322.322 INFO    ] Checking for system updates...
[2026-08-31 23:15:48,359.359 INFO    ] 200
[2026-08-31 23:15:48,362.362 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:15:48,415.415 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:15:48,418.418 INFO    ] No update needed
[2026-08-31 23:15:48,421.421 INFO    ] Checking for camera pi updates...
[2026-08-31 23:15:48,460.460 INFO    ] 200
[2026-08-31 23:15:48,463.463 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:15:48,514.514 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:15:48,617.617 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:15:48,620.620 INFO    ] No camera update needed
[2026-08-31 23:15:48,623.623 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:15:48,626.626 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:15:48,632.632 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:15:48,638.638 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:15:50,682.682 INFO    ] ================================================
[2026-08-31 23:15:50,698.698 INFO    ] Launching Daemon at Mon Aug 31 23:15:50 IST 2026
[2026-08-31 23:15:50,709.709 INFO    ] ================================================
[2026-08-31 23:15:51,358.358 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:15:51
[2026-08-31 23:15:52,030.030 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:15:52,334.334 INFO    ] Initializing speech engine...
[2026-08-31 23:15:52,343.343 INFO    ] 2026-08-31 23:15:52
[2026-08-31 23:15:52,634.634 INFO    ] 2026-08-31 23:15:52
[2026-08-31 23:15:52,680.680 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:15:52,968.968 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:15:52,977.977 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:15:53,163.163 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:15:53,181.181 INFO    ] time= 31/08/2026 23:15:53
[2026-08-31 23:15:53,188.188 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:15:53,210.210 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:15:53,321.321 INFO    ] No existing commands found in stream
[2026-08-31 23:15:58,349.349 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:15:58,353.353 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-08-31 23:16:00,869.869 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 23:16:00,872.872 INFO    ] Checking for system updates...
[2026-08-31 23:16:00,908.908 INFO    ] 200
[2026-08-31 23:16:00,911.911 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:16:00,966.966 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:16:00,969.969 INFO    ] No update needed
[2026-08-31 23:16:00,971.971 INFO    ] Checking for camera pi updates...
[2026-08-31 23:16:01,005.005 INFO    ] 200
[2026-08-31 23:16:01,007.007 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:16:01,048.048 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:16:01,131.131 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:16:01,133.133 INFO    ] No camera update needed
[2026-08-31 23:16:01,136.136 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:16:01,138.138 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:16:01,143.143 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:16:01,148.148 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:16:03,200.200 INFO    ] ================================================
[2026-08-31 23:16:03,225.225 INFO    ] Launching Daemon at Mon Aug 31 23:16:03 IST 2026
[2026-08-31 23:16:03,243.243 INFO    ] ================================================
[2026-08-31 23:16:03,854.854 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:16:03
[2026-08-31 23:16:04,507.507 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:16:04,817.817 INFO    ] Initializing speech engine...
[2026-08-31 23:16:04,823.823 INFO    ] 2026-08-31 23:16:04
[2026-08-31 23:16:05,129.129 INFO    ] 2026-08-31 23:16:05
[2026-08-31 23:16:05,217.217 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:16:05,426.426 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:16:05,435.435 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:16:05,637.637 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:16:05,644.644 INFO    ] time= 31/08/2026 23:16:05
[2026-08-31 23:16:05,663.663 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:16:05,692.692 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:16:05,838.838 INFO    ] No existing commands found in stream
[2026-08-31 23:16:10,864.864 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:16:10,867.867 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-08-31 23:16:15,126.126 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 23:16:15,129.129 INFO    ] Checking for system updates...
[2026-08-31 23:16:15,166.166 INFO    ] 200
[2026-08-31 23:16:15,169.169 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:16:15,223.223 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:16:15,226.226 INFO    ] No update needed
[2026-08-31 23:16:15,229.229 INFO    ] Checking for camera pi updates...
[2026-08-31 23:16:15,264.264 INFO    ] 200
[2026-08-31 23:16:15,267.267 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:16:15,308.308 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:16:15,405.405 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:16:15,408.408 INFO    ] No camera update needed
[2026-08-31 23:16:15,410.410 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:16:15,413.413 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:16:15,419.419 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:16:15,424.424 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:16:17,465.465 INFO    ] ================================================
[2026-08-31 23:16:17,480.480 INFO    ] Launching Daemon at Mon Aug 31 23:16:17 IST 2026
[2026-08-31 23:16:17,491.491 INFO    ] ================================================
[2026-08-31 23:16:18,070.070 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:16:18
[2026-08-31 23:16:18,666.666 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:16:18,944.944 INFO    ] Initializing speech engine...
[2026-08-31 23:16:18,951.951 INFO    ] 2026-08-31 23:16:18
[2026-08-31 23:16:19,213.213 INFO    ] 2026-08-31 23:16:19
[2026-08-31 23:16:19,268.268 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:16:19,514.514 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:16:19,522.522 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:16:19,710.710 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:16:19,756.756 INFO    ] time= 31/08/2026 23:16:19
[2026-08-31 23:16:19,762.762 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:16:19,781.781 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:16:19,906.906 INFO    ] No existing commands found in stream
[2026-08-31 23:16:24,922.922 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:16:24,925.925 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-08-31 23:16:29,336.336 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 23:16:29,338.338 INFO    ] Checking for system updates...
[2026-08-31 23:16:29,374.374 INFO    ] 200
[2026-08-31 23:16:29,376.376 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:16:29,428.428 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:16:29,431.431 INFO    ] No update needed
[2026-08-31 23:16:29,433.433 INFO    ] Checking for camera pi updates...
[2026-08-31 23:16:29,470.470 INFO    ] 200
[2026-08-31 23:16:29,472.472 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:16:29,517.517 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:16:29,610.610 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:16:29,612.612 INFO    ] No camera update needed
[2026-08-31 23:16:29,614.614 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:16:29,617.617 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:16:29,622.622 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:16:29,627.627 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:16:31,668.668 INFO    ] ================================================
[2026-08-31 23:16:31,683.683 INFO    ] Launching Daemon at Mon Aug 31 23:16:31 IST 2026
[2026-08-31 23:16:31,693.693 INFO    ] ================================================
[2026-08-31 23:16:32,328.328 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:16:32
[2026-08-31 23:16:32,960.960 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:16:33,265.265 INFO    ] Initializing speech engine...
[2026-08-31 23:16:33,273.273 INFO    ] 2026-08-31 23:16:33
[2026-08-31 23:16:33,532.532 INFO    ] 2026-08-31 23:16:33
[2026-08-31 23:16:33,563.563 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:16:33,809.809 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:16:33,819.819 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:16:34,038.038 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:16:34,079.079 INFO    ] time= 31/08/2026 23:16:34
[2026-08-31 23:16:34,096.096 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:16:34,105.105 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:16:34,223.223 INFO    ] No existing commands found in stream
[2026-08-31 23:16:39,242.242 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:16:39,245.245 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-08-31 23:16:39,890.890 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 23:16:39,893.893 INFO    ] Checking for system updates...
[2026-08-31 23:16:39,928.928 INFO    ] 200
[2026-08-31 23:16:39,931.931 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:16:39,984.984 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:16:39,986.986 INFO    ] No update needed
[2026-08-31 23:16:39,989.989 INFO    ] Checking for camera pi updates...
[2026-08-31 23:16:40,026.026 INFO    ] 200
[2026-08-31 23:16:40,029.029 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:16:40,069.069 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:16:40,138.138 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:16:40,141.141 INFO    ] No camera update needed
[2026-08-31 23:16:40,143.143 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:16:40,145.145 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:16:40,151.151 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:16:40,156.156 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:16:42,198.198 INFO    ] ================================================
[2026-08-31 23:16:42,213.213 INFO    ] Launching Daemon at Mon Aug 31 23:16:42 IST 2026
[2026-08-31 23:16:42,224.224 INFO    ] ================================================
[2026-08-31 23:16:42,787.787 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:16:42
[2026-08-31 23:16:43,369.369 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:16:43,639.639 INFO    ] Initializing speech engine...
[2026-08-31 23:16:43,648.648 INFO    ] 2026-08-31 23:16:43
[2026-08-31 23:16:43,897.897 INFO    ] 2026-08-31 23:16:43
[2026-08-31 23:16:43,931.931 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:16:44,187.187 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:16:44,197.197 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:16:44,333.333 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:16:44,383.383 INFO    ] time= 31/08/2026 23:16:44
[2026-08-31 23:16:44,427.427 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:16:44,466.466 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:16:44,569.569 INFO    ] No existing commands found in stream
[2026-08-31 23:16:49,589.589 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:16:49,592.592 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-08-31 23:16:50,657.657 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 23:16:50,660.660 INFO    ] Checking for system updates...
[2026-08-31 23:16:50,697.697 INFO    ] 200
[2026-08-31 23:16:50,700.700 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:16:50,766.766 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:16:50,769.769 INFO    ] No update needed
[2026-08-31 23:16:50,772.772 INFO    ] Checking for camera pi updates...
[2026-08-31 23:16:50,806.806 INFO    ] 200
[2026-08-31 23:16:50,809.809 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:16:50,851.851 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:16:51,032.032 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:16:51,035.035 INFO    ] No camera update needed
[2026-08-31 23:16:51,037.037 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:16:51,040.040 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:16:51,046.046 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:16:51,052.052 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:16:53,093.093 INFO    ] ================================================
[2026-08-31 23:16:53,108.108 INFO    ] Launching Daemon at Mon Aug 31 23:16:53 IST 2026
[2026-08-31 23:16:53,118.118 INFO    ] ================================================
[2026-08-31 23:16:53,695.695 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:16:53
[2026-08-31 23:16:54,292.292 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:16:54,552.552 INFO    ] Initializing speech engine...
[2026-08-31 23:16:54,568.568 INFO    ] 2026-08-31 23:16:54
[2026-08-31 23:16:54,853.853 INFO    ] 2026-08-31 23:16:54
[2026-08-31 23:16:54,888.888 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:16:55,106.106 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:16:55,114.114 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:16:55,331.331 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:16:55,338.338 INFO    ] time= 31/08/2026 23:16:55
[2026-08-31 23:16:55,413.413 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:16:55,473.473 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:16:55,594.594 INFO    ] No existing commands found in stream
[2026-08-31 23:17:00,616.616 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:17:00,619.619 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-08-31 23:17:04,490.490 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 23:17:04,492.492 INFO    ] Checking for system updates...
[2026-08-31 23:17:04,528.528 INFO    ] 200
[2026-08-31 23:17:04,531.531 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:17:04,590.590 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:17:04,592.592 INFO    ] No update needed
[2026-08-31 23:17:04,595.595 INFO    ] Checking for camera pi updates...
[2026-08-31 23:17:04,631.631 INFO    ] 200
[2026-08-31 23:17:04,634.634 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:17:04,674.674 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:17:04,808.808 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:17:04,810.810 INFO    ] No camera update needed
[2026-08-31 23:17:04,812.812 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:17:04,815.815 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:17:04,820.820 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:17:04,825.825 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:17:06,865.865 INFO    ] ================================================
[2026-08-31 23:17:06,880.880 INFO    ] Launching Daemon at Mon Aug 31 23:17:06 IST 2026
[2026-08-31 23:17:06,890.890 INFO    ] ================================================
[2026-08-31 23:17:07,472.472 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:17:07
[2026-08-31 23:17:08,071.071 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:17:08,333.333 INFO    ] Initializing speech engine...
[2026-08-31 23:17:08,349.349 INFO    ] 2026-08-31 23:17:08
[2026-08-31 23:17:08,636.636 INFO    ] 2026-08-31 23:17:08
[2026-08-31 23:17:08,673.673 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:17:08,869.869 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:17:08,881.881 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:17:09,008.008 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:17:09,028.028 INFO    ] time= 31/08/2026 23:17:09
[2026-08-31 23:17:09,050.050 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:17:09,059.059 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:17:09,138.138 INFO    ] No existing commands found in stream
[2026-08-31 23:17:14,174.174 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:17:14,176.176 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-08-31 23:17:18,406.406 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 23:17:18,409.409 INFO    ] Checking for system updates...
[2026-08-31 23:17:18,446.446 INFO    ] 200
[2026-08-31 23:17:18,449.449 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:17:18,502.502 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:17:18,505.505 INFO    ] No update needed
[2026-08-31 23:17:18,507.507 INFO    ] Checking for camera pi updates...
[2026-08-31 23:17:18,542.542 INFO    ] 200
[2026-08-31 23:17:18,544.544 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:17:18,591.591 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:17:18,697.697 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:17:18,700.700 INFO    ] No camera update needed
[2026-08-31 23:17:18,703.703 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:17:18,705.705 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:17:18,711.711 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:17:18,717.717 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:17:20,758.758 INFO    ] ================================================
[2026-08-31 23:17:20,773.773 INFO    ] Launching Daemon at Mon Aug 31 23:17:20 IST 2026
[2026-08-31 23:17:20,783.783 INFO    ] ================================================
[2026-08-31 23:17:21,366.366 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:17:21
[2026-08-31 23:17:21,965.965 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:17:22,240.240 INFO    ] Initializing speech engine...
[2026-08-31 23:17:22,261.261 INFO    ] 2026-08-31 23:17:22
[2026-08-31 23:17:22,529.529 INFO    ] 2026-08-31 23:17:22
[2026-08-31 23:17:22,563.563 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:17:22,757.757 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:17:22,771.771 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:17:22,929.929 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:17:22,936.936 INFO    ] time= 31/08/2026 23:17:22
[2026-08-31 23:17:22,942.942 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:17:22,949.949 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:17:23,024.024 INFO    ] No existing commands found in stream
[2026-08-31 23:17:28,036.036 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:17:28,040.040 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-08-31 23:17:32,406.406 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 23:17:32,410.410 INFO    ] Checking for system updates...
[2026-08-31 23:17:32,448.448 INFO    ] 200
[2026-08-31 23:17:32,450.450 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:17:32,516.516 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:17:32,519.519 INFO    ] No update needed
[2026-08-31 23:17:32,522.522 INFO    ] Checking for camera pi updates...
[2026-08-31 23:17:32,565.565 INFO    ] 200
[2026-08-31 23:17:32,568.568 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:17:32,622.622 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:17:32,725.725 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:17:32,727.727 INFO    ] No camera update needed
[2026-08-31 23:17:32,730.730 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:17:32,733.733 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:17:32,739.739 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:17:32,745.745 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:17:34,785.785 INFO    ] ================================================
[2026-08-31 23:17:34,800.800 INFO    ] Launching Daemon at Mon Aug 31 23:17:34 IST 2026
[2026-08-31 23:17:34,812.812 INFO    ] ================================================
[2026-08-31 23:17:35,380.380 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:17:35
[2026-08-31 23:17:35,990.990 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:17:36,292.292 INFO    ] Initializing speech engine...
[2026-08-31 23:17:36,298.298 INFO    ] 2026-08-31 23:17:36
[2026-08-31 23:17:36,565.565 INFO    ] 2026-08-31 23:17:36
[2026-08-31 23:17:36,621.621 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:17:36,874.874 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:17:36,882.882 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:17:37,061.061 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:17:37,121.121 INFO    ] time= 31/08/2026 23:17:37
[2026-08-31 23:17:37,130.130 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:17:37,148.148 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:17:37,270.270 INFO    ] No existing commands found in stream
[2026-08-31 23:17:42,290.290 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:17:42,293.293 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-08-31 23:17:44,189.189 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 23:17:44,192.192 INFO    ] Checking for system updates...
[2026-08-31 23:17:44,230.230 INFO    ] 200
[2026-08-31 23:17:44,233.233 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:17:44,285.285 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:17:44,288.288 INFO    ] No update needed
[2026-08-31 23:17:44,290.290 INFO    ] Checking for camera pi updates...
[2026-08-31 23:17:44,324.324 INFO    ] 200
[2026-08-31 23:17:44,326.326 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:17:44,369.369 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:17:44,462.462 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:17:44,465.465 INFO    ] No camera update needed
[2026-08-31 23:17:44,467.467 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:17:44,470.470 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:17:44,475.475 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:17:44,480.480 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:17:46,519.519 INFO    ] ================================================
[2026-08-31 23:17:46,534.534 INFO    ] Launching Daemon at Mon Aug 31 23:17:46 IST 2026
[2026-08-31 23:17:46,545.545 INFO    ] ================================================
[2026-08-31 23:17:47,110.110 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:17:47
[2026-08-31 23:17:47,693.693 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:17:47,960.960 INFO    ] Initializing speech engine...
[2026-08-31 23:17:47,980.980 INFO    ] 2026-08-31 23:17:47
[2026-08-31 23:17:48,240.240 INFO    ] 2026-08-31 23:17:48
[2026-08-31 23:17:48,274.274 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:17:48,485.485 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:17:48,494.494 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:17:48,707.707 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:17:48,714.714 INFO    ] time= 31/08/2026 23:17:48
[2026-08-31 23:17:48,764.764 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:17:48,818.818 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:17:48,912.912 INFO    ] No existing commands found in stream
[2026-08-31 23:17:53,923.923 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:17:53,926.926 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-08-31 23:17:54,475.475 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 23:17:54,477.477 INFO    ] Checking for system updates...
[2026-08-31 23:17:54,514.514 INFO    ] 200
[2026-08-31 23:17:54,516.516 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:17:54,568.568 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:17:54,570.570 INFO    ] No update needed
[2026-08-31 23:17:54,573.573 INFO    ] Checking for camera pi updates...
[2026-08-31 23:17:54,606.606 INFO    ] 200
[2026-08-31 23:17:54,608.608 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:17:54,648.648 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:17:54,738.738 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:17:54,741.741 INFO    ] No camera update needed
[2026-08-31 23:17:54,743.743 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:17:54,745.745 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:17:54,750.750 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:17:54,755.755 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:17:56,795.795 INFO    ] ================================================
[2026-08-31 23:17:56,811.811 INFO    ] Launching Daemon at Mon Aug 31 23:17:56 IST 2026
[2026-08-31 23:17:56,821.821 INFO    ] ================================================
[2026-08-31 23:17:57,385.385 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:17:57
[2026-08-31 23:17:57,965.965 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:17:58,234.234 INFO    ] Initializing speech engine...
[2026-08-31 23:17:58,243.243 INFO    ] 2026-08-31 23:17:58
[2026-08-31 23:17:58,491.491 INFO    ] 2026-08-31 23:17:58
[2026-08-31 23:17:58,527.527 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:17:58,788.788 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:17:58,793.793 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:17:58,927.927 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:17:58,969.969 INFO    ] time= 31/08/2026 23:17:58
[2026-08-31 23:17:59,018.018 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:17:59,062.062 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:17:59,194.194 INFO    ] No existing commands found in stream
[2026-08-31 23:18:04,224.224 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:18:04,227.227 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-08-31 23:18:06,573.573 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 23:18:06,576.576 INFO    ] Checking for system updates...
[2026-08-31 23:18:06,614.614 INFO    ] 200
[2026-08-31 23:18:06,616.616 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:18:06,681.681 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:18:06,687.687 INFO    ] No update needed
[2026-08-31 23:18:06,691.691 INFO    ] Checking for camera pi updates...
[2026-08-31 23:18:06,738.738 INFO    ] 200
[2026-08-31 23:18:06,742.742 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:18:06,782.782 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:18:06,879.879 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:18:06,881.881 INFO    ] No camera update needed
[2026-08-31 23:18:06,883.883 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:18:06,886.886 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:18:06,891.891 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:18:06,896.896 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:18:08,935.935 INFO    ] ================================================
[2026-08-31 23:18:08,950.950 INFO    ] Launching Daemon at Mon Aug 31 23:18:08 IST 2026
[2026-08-31 23:18:08,960.960 INFO    ] ================================================
[2026-08-31 23:18:09,540.540 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:18:09
[2026-08-31 23:18:10,134.134 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:18:10,410.410 INFO    ] Initializing speech engine...
[2026-08-31 23:18:10,416.416 INFO    ] 2026-08-31 23:18:10
[2026-08-31 23:18:10,677.677 INFO    ] 2026-08-31 23:18:10
[2026-08-31 23:18:10,730.730 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:18:10,957.957 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:18:10,962.962 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:18:11,185.185 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:18:11,218.218 INFO    ] time= 31/08/2026 23:18:11
[2026-08-31 23:18:11,224.224 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:18:11,242.242 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:18:11,362.362 INFO    ] No existing commands found in stream
[2026-08-31 23:18:16,383.383 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:18:16,386.386 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-08-31 23:18:18,367.367 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 23:18:18,370.370 INFO    ] Checking for system updates...
[2026-08-31 23:18:18,405.405 INFO    ] 200
[2026-08-31 23:18:18,408.408 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:18:18,461.461 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:18:18,464.464 INFO    ] No update needed
[2026-08-31 23:18:18,466.466 INFO    ] Checking for camera pi updates...
[2026-08-31 23:18:18,501.501 INFO    ] 200
[2026-08-31 23:18:18,504.504 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:18:18,544.544 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:18:18,628.628 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:18:18,631.631 INFO    ] No camera update needed
[2026-08-31 23:18:18,633.633 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:18:18,635.635 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:18:18,641.641 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:18:18,646.646 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:18:20,687.687 INFO    ] ================================================
[2026-08-31 23:18:20,702.702 INFO    ] Launching Daemon at Mon Aug 31 23:18:20 IST 2026
[2026-08-31 23:18:20,713.713 INFO    ] ================================================
[2026-08-31 23:18:21,281.281 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:18:21
[2026-08-31 23:18:21,864.864 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:18:22,127.127 INFO    ] Initializing speech engine...
[2026-08-31 23:18:22,140.140 INFO    ] 2026-08-31 23:18:22
[2026-08-31 23:18:22,387.387 INFO    ] 2026-08-31 23:18:22
[2026-08-31 23:18:22,423.423 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:18:22,673.673 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:18:22,682.682 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:18:22,884.884 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:18:22,940.940 INFO    ] time= 31/08/2026 23:18:22
[2026-08-31 23:18:22,947.947 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:18:22,964.964 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:18:23,080.080 INFO    ] No existing commands found in stream
[2026-08-31 23:18:28,101.101 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:18:28,104.104 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-08-31 23:18:31,735.735 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 23:18:31,738.738 INFO    ] Checking for system updates...
[2026-08-31 23:18:31,773.773 INFO    ] 200
[2026-08-31 23:18:31,775.775 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:18:31,826.826 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:18:31,829.829 INFO    ] No update needed
[2026-08-31 23:18:31,832.832 INFO    ] Checking for camera pi updates...
[2026-08-31 23:18:31,865.865 INFO    ] 200
[2026-08-31 23:18:31,868.868 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:18:31,915.915 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:18:32,021.021 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:18:32,024.024 INFO    ] No camera update needed
[2026-08-31 23:18:32,027.027 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:18:32,030.030 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:18:32,036.036 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:18:32,041.041 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:18:34,082.082 INFO    ] ================================================
[2026-08-31 23:18:34,097.097 INFO    ] Launching Daemon at Mon Aug 31 23:18:34 IST 2026
[2026-08-31 23:18:34,107.107 INFO    ] ================================================
[2026-08-31 23:18:34,688.688 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:18:34
[2026-08-31 23:18:35,284.284 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:18:35,554.554 INFO    ] Initializing speech engine...
[2026-08-31 23:18:35,557.557 INFO    ] 2026-08-31 23:18:35
[2026-08-31 23:18:35,816.816 INFO    ] 2026-08-31 23:18:35
[2026-08-31 23:18:35,852.852 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:18:36,027.027 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:18:36,038.038 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:18:36,182.182 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:18:36,188.188 INFO    ] time= 31/08/2026 23:18:36
[2026-08-31 23:18:36,194.194 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:18:36,239.239 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:18:36,310.310 INFO    ] No existing commands found in stream
[2026-08-31 23:18:41,330.330 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:18:41,332.332 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-08-31 23:18:45,034.034 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 23:18:45,037.037 INFO    ] Checking for system updates...
[2026-08-31 23:18:45,073.073 INFO    ] 200
[2026-08-31 23:18:45,076.076 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:18:45,132.132 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:18:45,135.135 INFO    ] No update needed
[2026-08-31 23:18:45,137.137 INFO    ] Checking for camera pi updates...
[2026-08-31 23:18:45,171.171 INFO    ] 200
[2026-08-31 23:18:45,174.174 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:18:45,219.219 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:18:45,315.315 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:18:45,318.318 INFO    ] No camera update needed
[2026-08-31 23:18:45,321.321 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:18:45,323.323 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:18:45,328.328 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:18:45,333.333 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:18:47,373.373 INFO    ] ================================================
[2026-08-31 23:18:47,388.388 INFO    ] Launching Daemon at Mon Aug 31 23:18:47 IST 2026
[2026-08-31 23:18:47,399.399 INFO    ] ================================================
[2026-08-31 23:18:47,978.978 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:18:47
[2026-08-31 23:18:48,572.572 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:18:48,844.844 INFO    ] Initializing speech engine...
[2026-08-31 23:18:48,854.854 INFO    ] 2026-08-31 23:18:48
[2026-08-31 23:18:49,115.115 INFO    ] 2026-08-31 23:18:49
[2026-08-31 23:18:49,168.168 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:18:49,440.440 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:18:49,462.462 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:18:49,657.657 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:18:49,663.663 INFO    ] time= 31/08/2026 23:18:49
[2026-08-31 23:18:49,681.681 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:18:49,703.703 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:18:49,816.816 INFO    ] No existing commands found in stream
[2026-08-31 23:18:54,836.836 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:18:54,839.839 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-08-31 23:18:57,557.557 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 23:18:57,560.560 INFO    ] Checking for system updates...
[2026-08-31 23:18:57,598.598 INFO    ] 200
[2026-08-31 23:18:57,601.601 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:18:57,653.653 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:18:57,656.656 INFO    ] No update needed
[2026-08-31 23:18:57,658.658 INFO    ] Checking for camera pi updates...
[2026-08-31 23:18:57,695.695 INFO    ] 200
[2026-08-31 23:18:57,698.698 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:18:57,742.742 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:18:57,921.921 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:18:57,924.924 INFO    ] No camera update needed
[2026-08-31 23:18:57,926.926 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:18:57,929.929 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:18:57,934.934 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:18:57,939.939 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:18:59,979.979 INFO    ] ================================================
[2026-08-31 23:18:59,994.994 INFO    ] Launching Daemon at Mon Aug 31 23:18:59 IST 2026
[2026-08-31 23:19:00,005.005 INFO    ] ================================================
[2026-08-31 23:19:00,576.576 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:19:00
[2026-08-31 23:19:01,161.161 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:19:01,420.420 INFO    ] Initializing speech engine...
[2026-08-31 23:19:01,439.439 INFO    ] 2026-08-31 23:19:01
[2026-08-31 23:19:01,685.685 INFO    ] 2026-08-31 23:19:01
[2026-08-31 23:19:01,719.719 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:19:01,995.995 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:19:02,005.005 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:19:02,183.183 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:19:02,187.187 INFO    ] time= 31/08/2026 23:19:02
[2026-08-31 23:19:02,191.191 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:19:02,195.195 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:19:02,301.301 INFO    ] No existing commands found in stream
[2026-08-31 23:19:07,332.332 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:19:07,334.334 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-08-31 23:19:08,199.199 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 23:19:08,201.201 INFO    ] Checking for system updates...
[2026-08-31 23:19:08,239.239 INFO    ] 200
[2026-08-31 23:19:08,241.241 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:19:08,293.293 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:19:08,295.295 INFO    ] No update needed
[2026-08-31 23:19:08,298.298 INFO    ] Checking for camera pi updates...
[2026-08-31 23:19:08,331.331 INFO    ] 200
[2026-08-31 23:19:08,334.334 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:19:08,378.378 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:19:08,458.458 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:19:08,461.461 INFO    ] No camera update needed
[2026-08-31 23:19:08,463.463 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:19:08,465.465 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:19:08,471.471 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:19:08,476.476 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:19:10,517.517 INFO    ] ================================================
[2026-08-31 23:19:10,532.532 INFO    ] Launching Daemon at Mon Aug 31 23:19:10 IST 2026
[2026-08-31 23:19:10,543.543 INFO    ] ================================================
[2026-08-31 23:19:11,167.167 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:19:11
[2026-08-31 23:19:11,807.807 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:19:12,100.100 INFO    ] Initializing speech engine...
[2026-08-31 23:19:12,107.107 INFO    ] 2026-08-31 23:19:12
[2026-08-31 23:19:12,375.375 INFO    ] 2026-08-31 23:19:12
[2026-08-31 23:19:12,431.431 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:19:12,656.656 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:19:12,662.662 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:19:12,874.874 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:19:12,919.919 INFO    ] time= 31/08/2026 23:19:12
[2026-08-31 23:19:12,938.938 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:19:12,957.957 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:19:13,077.077 INFO    ] No existing commands found in stream
[2026-08-31 23:19:18,100.100 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:19:18,103.103 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-08-31 23:19:20,155.155 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 23:19:20,158.158 INFO    ] Checking for system updates...
[2026-08-31 23:19:20,195.195 INFO    ] 200
[2026-08-31 23:19:20,198.198 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:19:20,251.251 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:19:20,254.254 INFO    ] No update needed
[2026-08-31 23:19:20,256.256 INFO    ] Checking for camera pi updates...
[2026-08-31 23:19:20,293.293 INFO    ] 200
[2026-08-31 23:19:20,296.296 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:19:20,340.340 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:19:20,427.427 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:19:20,430.430 INFO    ] No camera update needed
[2026-08-31 23:19:20,433.433 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:19:20,435.435 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:19:20,441.441 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:19:20,447.447 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:19:22,486.486 INFO    ] ================================================
[2026-08-31 23:19:22,501.501 INFO    ] Launching Daemon at Mon Aug 31 23:19:22 IST 2026
[2026-08-31 23:19:22,512.512 INFO    ] ================================================
[2026-08-31 23:19:23,077.077 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:19:23
[2026-08-31 23:19:23,660.660 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:19:23,928.928 INFO    ] Initializing speech engine...
[2026-08-31 23:19:23,936.936 INFO    ] 2026-08-31 23:19:23
[2026-08-31 23:19:24,184.184 INFO    ] 2026-08-31 23:19:24
[2026-08-31 23:19:24,218.218 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:19:24,411.411 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:19:24,434.434 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:19:24,610.610 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:19:24,616.616 INFO    ] time= 31/08/2026 23:19:24
[2026-08-31 23:19:24,670.670 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:19:24,725.725 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:19:24,861.861 INFO    ] No existing commands found in stream
[2026-08-31 23:19:29,882.882 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:19:29,884.884 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-08-31 23:19:32,208.208 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 23:19:32,211.211 INFO    ] Checking for system updates...
[2026-08-31 23:19:32,248.248 INFO    ] 200
[2026-08-31 23:19:32,251.251 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:19:32,312.312 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:19:32,315.315 INFO    ] No update needed
[2026-08-31 23:19:32,318.318 INFO    ] Checking for camera pi updates...
[2026-08-31 23:19:32,357.357 INFO    ] 200
[2026-08-31 23:19:32,360.360 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:19:32,403.403 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:19:32,463.463 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:19:32,468.468 INFO    ] No camera update needed
[2026-08-31 23:19:32,471.471 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:19:32,474.474 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:19:32,481.481 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:19:32,487.487 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:19:34,529.529 INFO    ] ================================================
[2026-08-31 23:19:34,544.544 INFO    ] Launching Daemon at Mon Aug 31 23:19:34 IST 2026
[2026-08-31 23:19:34,555.555 INFO    ] ================================================
[2026-08-31 23:19:35,118.118 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:19:35
[2026-08-31 23:19:35,702.702 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:19:35,963.963 INFO    ] Initializing speech engine...
[2026-08-31 23:19:35,988.988 INFO    ] 2026-08-31 23:19:35
[2026-08-31 23:19:36,264.264 INFO    ] 2026-08-31 23:19:36
[2026-08-31 23:19:36,300.300 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:19:36,552.552 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:19:36,597.597 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:19:36,768.768 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:19:36,774.774 INFO    ] time= 31/08/2026 23:19:36
[2026-08-31 23:19:36,819.819 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:19:36,874.874 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:19:36,926.926 INFO    ] No existing commands found in stream
[2026-08-31 23:19:41,939.939 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:19:41,942.942 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-08-31 23:19:43,666.666 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 23:19:43,669.669 INFO    ] Checking for system updates...
[2026-08-31 23:19:43,705.705 INFO    ] 200
[2026-08-31 23:19:43,708.708 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:19:43,761.761 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:19:43,764.764 INFO    ] No update needed
[2026-08-31 23:19:43,767.767 INFO    ] Checking for camera pi updates...
[2026-08-31 23:19:43,805.805 INFO    ] 200
[2026-08-31 23:19:43,809.809 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:19:43,851.851 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:19:43,933.933 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:19:43,936.936 INFO    ] No camera update needed
[2026-08-31 23:19:43,939.939 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:19:43,942.942 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:19:43,948.948 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:19:43,954.954 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:19:45,994.994 INFO    ] ================================================
[2026-08-31 23:19:46,009.009 INFO    ] Launching Daemon at Mon Aug 31 23:19:46 IST 2026
[2026-08-31 23:19:46,019.019 INFO    ] ================================================
[2026-08-31 23:19:46,676.676 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:19:46
[2026-08-31 23:19:47,349.349 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:19:47,651.651 INFO    ] Initializing speech engine...
[2026-08-31 23:19:47,661.661 INFO    ] 2026-08-31 23:19:47
[2026-08-31 23:19:47,946.946 INFO    ] 2026-08-31 23:19:47
[2026-08-31 23:19:47,991.991 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:19:48,218.218 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:19:48,224.224 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:19:48,434.434 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:19:48,481.481 INFO    ] time= 31/08/2026 23:19:48
[2026-08-31 23:19:48,499.499 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:19:48,508.508 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:19:48,618.618 INFO    ] No existing commands found in stream
[2026-08-31 23:19:53,646.646 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:19:53,649.649 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-08-31 23:19:56,556.556 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 23:19:56,559.559 INFO    ] Checking for system updates...
[2026-08-31 23:19:56,596.596 INFO    ] 200
[2026-08-31 23:19:56,599.599 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:19:56,673.673 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:19:56,675.675 INFO    ] No update needed
[2026-08-31 23:19:56,678.678 INFO    ] Checking for camera pi updates...
[2026-08-31 23:19:56,711.711 INFO    ] 200
[2026-08-31 23:19:56,714.714 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:19:56,758.758 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:19:56,844.844 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:19:56,846.846 INFO    ] No camera update needed
[2026-08-31 23:19:56,849.849 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:19:56,851.851 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:19:56,856.856 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:19:56,861.861 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:19:58,900.900 INFO    ] ================================================
[2026-08-31 23:19:58,916.916 INFO    ] Launching Daemon at Mon Aug 31 23:19:58 IST 2026
[2026-08-31 23:19:58,926.926 INFO    ] ================================================
[2026-08-31 23:19:59,495.495 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:19:59
[2026-08-31 23:20:00,079.079 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:20:00,351.351 INFO    ] Initializing speech engine...
[2026-08-31 23:20:00,357.357 INFO    ] 2026-08-31 23:20:00
[2026-08-31 23:20:00,603.603 INFO    ] 2026-08-31 23:20:00
[2026-08-31 23:20:00,668.668 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:20:00,889.889 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:20:00,898.898 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:20:01,030.030 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:20:01,077.077 INFO    ] time= 31/08/2026 23:20:01
[2026-08-31 23:20:01,136.136 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:20:01,163.163 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:20:01,310.310 INFO    ] No existing commands found in stream
[2026-08-31 23:20:06,323.323 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:20:06,326.326 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-08-31 23:20:07,908.908 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 23:20:07,911.911 INFO    ] Checking for system updates...
[2026-08-31 23:20:07,946.946 INFO    ] 200
[2026-08-31 23:20:07,949.949 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:20:08,010.010 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:20:08,013.013 INFO    ] No update needed
[2026-08-31 23:20:08,015.015 INFO    ] Checking for camera pi updates...
[2026-08-31 23:20:08,048.048 INFO    ] 200
[2026-08-31 23:20:08,050.050 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:20:08,090.090 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:20:08,142.142 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:20:08,145.145 INFO    ] No camera update needed
[2026-08-31 23:20:08,147.147 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:20:08,150.150 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:20:08,155.155 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:20:08,160.160 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:20:10,201.201 INFO    ] ================================================
[2026-08-31 23:20:10,217.217 INFO    ] Launching Daemon at Mon Aug 31 23:20:10 IST 2026
[2026-08-31 23:20:10,228.228 INFO    ] ================================================
[2026-08-31 23:20:10,817.817 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:20:10
[2026-08-31 23:20:11,416.416 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:20:11,690.690 INFO    ] Initializing speech engine...
[2026-08-31 23:20:11,701.701 INFO    ] 2026-08-31 23:20:11
[2026-08-31 23:20:11,980.980 INFO    ] 2026-08-31 23:20:11
[2026-08-31 23:20:12,022.022 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:20:12,242.242 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:20:12,252.252 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:20:12,383.383 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:20:12,426.426 INFO    ] time= 31/08/2026 23:20:12
[2026-08-31 23:20:12,475.475 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:20:12,516.516 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:20:12,633.633 INFO    ] No existing commands found in stream
[2026-08-31 23:20:17,655.655 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:20:17,658.658 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-08-31 23:20:18,812.812 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 23:20:18,815.815 INFO    ] Checking for system updates...
[2026-08-31 23:20:18,850.850 INFO    ] 200
[2026-08-31 23:20:18,853.853 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:20:18,911.911 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:20:18,913.913 INFO    ] No update needed
[2026-08-31 23:20:18,915.915 INFO    ] Checking for camera pi updates...
[2026-08-31 23:20:18,948.948 INFO    ] 200
[2026-08-31 23:20:18,951.951 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:20:18,996.996 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:20:19,074.074 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:20:19,076.076 INFO    ] No camera update needed
[2026-08-31 23:20:19,079.079 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:20:19,081.081 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:20:19,086.086 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:20:19,091.091 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:20:21,132.132 INFO    ] ================================================
[2026-08-31 23:20:21,147.147 INFO    ] Launching Daemon at Mon Aug 31 23:20:21 IST 2026
[2026-08-31 23:20:21,158.158 INFO    ] ================================================
[2026-08-31 23:20:21,799.799 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:20:21
[2026-08-31 23:20:22,460.460 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:20:22,760.760 INFO    ] Initializing speech engine...
[2026-08-31 23:20:22,769.769 INFO    ] 2026-08-31 23:20:22
[2026-08-31 23:20:23,044.044 INFO    ] 2026-08-31 23:20:23
[2026-08-31 23:20:23,104.104 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:20:23,334.334 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:20:23,343.343 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:20:23,569.569 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:20:23,610.610 INFO    ] time= 31/08/2026 23:20:23
[2026-08-31 23:20:23,616.616 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:20:23,634.634 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:20:23,789.789 INFO    ] No existing commands found in stream
[2026-08-31 23:20:28,820.820 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:20:28,823.823 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-08-31 23:20:29,711.711 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 23:20:29,714.714 INFO    ] Checking for system updates...
[2026-08-31 23:20:29,755.755 INFO    ] 200
[2026-08-31 23:20:29,758.758 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:20:29,821.821 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:20:29,824.824 INFO    ] No update needed
[2026-08-31 23:20:29,828.828 INFO    ] Checking for camera pi updates...
[2026-08-31 23:20:29,862.862 INFO    ] 200
[2026-08-31 23:20:29,865.865 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:20:29,906.906 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:20:29,992.992 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:20:29,995.995 INFO    ] No camera update needed
[2026-08-31 23:20:29,997.997 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:20:30,000.000 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:20:30,006.006 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:20:30,012.012 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:20:32,053.053 INFO    ] ================================================
[2026-08-31 23:20:32,068.068 INFO    ] Launching Daemon at Mon Aug 31 23:20:32 IST 2026
[2026-08-31 23:20:32,079.079 INFO    ] ================================================
[2026-08-31 23:20:32,766.766 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:20:32
[2026-08-31 23:20:33,477.477 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:20:33,780.780 INFO    ] Initializing speech engine...
[2026-08-31 23:20:33,793.793 INFO    ] 2026-08-31 23:20:33
[2026-08-31 23:20:34,083.083 INFO    ] 2026-08-31 23:20:34
[2026-08-31 23:20:34,189.189 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:20:34,392.392 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:20:34,413.413 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:20:34,608.608 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:20:34,636.636 INFO    ] time= 31/08/2026 23:20:34
[2026-08-31 23:20:34,640.640 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:20:34,643.643 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:20:34,762.762 INFO    ] No existing commands found in stream
[2026-08-31 23:20:39,784.784 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:20:39,787.787 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-08-31 23:20:41,314.314 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 23:20:41,317.317 INFO    ] Checking for system updates...
[2026-08-31 23:20:41,352.352 INFO    ] 200
[2026-08-31 23:20:41,354.354 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:20:41,408.408 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:20:41,410.410 INFO    ] No update needed
[2026-08-31 23:20:41,412.412 INFO    ] Checking for camera pi updates...
[2026-08-31 23:20:41,446.446 INFO    ] 200
[2026-08-31 23:20:41,449.449 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:20:41,489.489 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:20:41,571.571 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:20:41,574.574 INFO    ] No camera update needed
[2026-08-31 23:20:41,576.576 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:20:41,579.579 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:20:41,585.585 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:20:41,591.591 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:20:43,631.631 INFO    ] ================================================
[2026-08-31 23:20:43,646.646 INFO    ] Launching Daemon at Mon Aug 31 23:20:43 IST 2026
[2026-08-31 23:20:43,657.657 INFO    ] ================================================
[2026-08-31 23:20:44,224.224 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:20:44
[2026-08-31 23:20:44,809.809 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:20:45,063.063 INFO    ] Initializing speech engine...
[2026-08-31 23:20:45,069.069 INFO    ] 2026-08-31 23:20:45
[2026-08-31 23:20:45,361.361 INFO    ] 2026-08-31 23:20:45
[2026-08-31 23:20:45,399.399 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:20:45,593.593 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:20:45,605.605 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:20:45,766.766 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:20:45,775.775 INFO    ] time= 31/08/2026 23:20:45
[2026-08-31 23:20:45,782.782 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:20:45,788.788 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:20:45,949.949 INFO    ] No existing commands found in stream
[2026-08-31 23:20:50,974.974 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:20:50,977.977 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-08-31 23:20:54,155.155 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 23:20:54,159.159 INFO    ] Checking for system updates...
[2026-08-31 23:20:54,198.198 INFO    ] 200
[2026-08-31 23:20:54,201.201 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:20:54,253.253 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:20:54,255.255 INFO    ] No update needed
[2026-08-31 23:20:54,258.258 INFO    ] Checking for camera pi updates...
[2026-08-31 23:20:54,295.295 INFO    ] 200
[2026-08-31 23:20:54,298.298 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:20:54,338.338 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:20:54,425.425 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:20:54,428.428 INFO    ] No camera update needed
[2026-08-31 23:20:54,430.430 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:20:54,432.432 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:20:54,438.438 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:20:54,443.443 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:20:56,483.483 INFO    ] ================================================
[2026-08-31 23:20:56,498.498 INFO    ] Launching Daemon at Mon Aug 31 23:20:56 IST 2026
[2026-08-31 23:20:56,509.509 INFO    ] ================================================
[2026-08-31 23:20:57,074.074 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:20:57
[2026-08-31 23:20:57,656.656 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:20:57,904.904 INFO    ] Initializing speech engine...
[2026-08-31 23:20:57,919.919 INFO    ] 2026-08-31 23:20:57
[2026-08-31 23:20:58,185.185 INFO    ] 2026-08-31 23:20:58
[2026-08-31 23:20:58,221.221 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:20:58,483.483 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:20:58,488.488 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:20:58,708.708 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:20:58,749.749 INFO    ] time= 31/08/2026 23:20:58
[2026-08-31 23:20:58,756.756 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:20:58,774.774 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:20:58,892.892 INFO    ] No existing commands found in stream
[2026-08-31 23:21:03,914.914 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:21:03,917.917 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-08-31 23:21:08,312.312 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 23:21:08,314.314 INFO    ] Checking for system updates...
[2026-08-31 23:21:08,350.350 INFO    ] 200
[2026-08-31 23:21:08,353.353 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:21:08,405.405 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:21:08,408.408 INFO    ] No update needed
[2026-08-31 23:21:08,410.410 INFO    ] Checking for camera pi updates...
[2026-08-31 23:21:08,448.448 INFO    ] 200
[2026-08-31 23:21:08,450.450 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:21:08,490.490 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:21:08,592.592 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:21:08,594.594 INFO    ] No camera update needed
[2026-08-31 23:21:08,596.596 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:21:08,599.599 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:21:08,604.604 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:21:08,609.609 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:21:10,650.650 INFO    ] ================================================
[2026-08-31 23:21:10,665.665 INFO    ] Launching Daemon at Mon Aug 31 23:21:10 IST 2026
[2026-08-31 23:21:10,676.676 INFO    ] ================================================
[2026-08-31 23:21:11,247.247 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:21:11
[2026-08-31 23:21:11,829.829 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:21:12,128.128 INFO    ] Initializing speech engine...
[2026-08-31 23:21:12,142.142 INFO    ] 2026-08-31 23:21:12
[2026-08-31 23:21:12,457.457 INFO    ] 2026-08-31 23:21:12
[2026-08-31 23:21:12,545.545 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:21:12,703.703 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:21:12,710.710 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:21:12,843.843 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:21:12,896.896 INFO    ] time= 31/08/2026 23:21:12
[2026-08-31 23:21:12,945.945 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:21:12,981.981 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:21:13,112.112 INFO    ] No existing commands found in stream
[2026-08-31 23:21:18,141.141 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:21:18,144.144 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-08-31 23:21:21,308.308 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 23:21:21,311.311 INFO    ] Checking for system updates...
[2026-08-31 23:21:21,349.349 INFO    ] 200
[2026-08-31 23:21:21,351.351 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:21:21,405.405 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:21:21,408.408 INFO    ] No update needed
[2026-08-31 23:21:21,411.411 INFO    ] Checking for camera pi updates...
[2026-08-31 23:21:21,446.446 INFO    ] 200
[2026-08-31 23:21:21,449.449 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:21:21,491.491 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:21:21,570.570 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:21:21,572.572 INFO    ] No camera update needed
[2026-08-31 23:21:21,575.575 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:21:21,578.578 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:21:21,584.584 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:21:21,590.590 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:21:23,631.631 INFO    ] ================================================
[2026-08-31 23:21:23,646.646 INFO    ] Launching Daemon at Mon Aug 31 23:21:23 IST 2026
[2026-08-31 23:21:23,658.658 INFO    ] ================================================
[2026-08-31 23:21:24,239.239 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:21:24
[2026-08-31 23:21:24,838.838 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:21:25,097.097 INFO    ] Initializing speech engine...
[2026-08-31 23:21:25,104.104 INFO    ] 2026-08-31 23:21:25
[2026-08-31 23:21:25,405.405 INFO    ] 2026-08-31 23:21:25
[2026-08-31 23:21:25,443.443 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:21:25,673.673 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:21:25,734.734 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:21:25,900.900 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:21:25,922.922 INFO    ] time= 31/08/2026 23:21:25
[2026-08-31 23:21:25,971.971 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:21:26,005.005 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:21:26,109.109 INFO    ] No existing commands found in stream
[2026-08-31 23:21:31,122.122 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:21:31,124.124 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-08-31 23:21:34,637.637 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 23:21:34,640.640 INFO    ] Checking for system updates...
[2026-08-31 23:21:34,675.675 INFO    ] 200
[2026-08-31 23:21:34,678.678 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:21:34,739.739 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:21:34,741.741 INFO    ] No update needed
[2026-08-31 23:21:34,744.744 INFO    ] Checking for camera pi updates...
[2026-08-31 23:21:34,782.782 INFO    ] 200
[2026-08-31 23:21:34,785.785 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:21:34,825.825 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:21:34,925.925 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:21:34,928.928 INFO    ] No camera update needed
[2026-08-31 23:21:34,930.930 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:21:34,933.933 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:21:34,938.938 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:21:34,943.943 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:21:36,984.984 INFO    ] ================================================
[2026-08-31 23:21:37,999.999 INFO    ] Launching Daemon at Mon Aug 31 23:21:36 IST 2026
[2026-08-31 23:21:37,009.009 INFO    ] ================================================
[2026-08-31 23:21:37,579.579 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:21:37
[2026-08-31 23:21:38,164.164 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:21:38,419.419 INFO    ] Initializing speech engine...
[2026-08-31 23:21:38,428.428 INFO    ] 2026-08-31 23:21:38
[2026-08-31 23:21:38,724.724 INFO    ] 2026-08-31 23:21:38
[2026-08-31 23:21:38,750.750 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:21:38,965.965 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:21:38,981.981 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:21:39,110.110 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:21:39,124.124 INFO    ] time= 31/08/2026 23:21:39
[2026-08-31 23:21:39,153.153 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:21:39,160.160 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:21:39,241.241 INFO    ] No existing commands found in stream
[2026-08-31 23:21:44,252.252 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:21:44,255.255 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-08-31 23:21:46,573.573 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 23:21:46,576.576 INFO    ] Checking for system updates...
[2026-08-31 23:21:46,613.613 INFO    ] 200
[2026-08-31 23:21:46,616.616 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:21:46,669.669 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:21:46,672.672 INFO    ] No update needed
[2026-08-31 23:21:46,675.675 INFO    ] Checking for camera pi updates...
[2026-08-31 23:21:46,710.710 INFO    ] 200
[2026-08-31 23:21:46,713.713 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:21:46,760.760 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:21:46,845.845 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:21:46,848.848 INFO    ] No camera update needed
[2026-08-31 23:21:46,851.851 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:21:46,854.854 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:21:46,860.860 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:21:46,866.866 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:21:48,906.906 INFO    ] ================================================
[2026-08-31 23:21:48,921.921 INFO    ] Launching Daemon at Mon Aug 31 23:21:48 IST 2026
[2026-08-31 23:21:48,932.932 INFO    ] ================================================
[2026-08-31 23:21:49,510.510 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:21:49
[2026-08-31 23:21:50,113.113 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:21:50,387.387 INFO    ] Initializing speech engine...
[2026-08-31 23:21:50,396.396 INFO    ] 2026-08-31 23:21:50
[2026-08-31 23:21:50,645.645 INFO    ] 2026-08-31 23:21:50
[2026-08-31 23:21:50,680.680 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:21:50,955.955 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:21:50,964.964 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:21:51,123.123 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:21:51,160.160 INFO    ] time= 31/08/2026 23:21:51
[2026-08-31 23:21:51,209.209 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:21:51,259.259 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:21:51,342.342 INFO    ] No existing commands found in stream
[2026-08-31 23:21:56,354.354 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:21:56,357.357 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-08-31 23:21:58,476.476 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 23:21:58,479.479 INFO    ] Checking for system updates...
[2026-08-31 23:21:58,514.514 INFO    ] 200
[2026-08-31 23:21:58,517.517 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:21:58,570.570 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:21:58,573.573 INFO    ] No update needed
[2026-08-31 23:21:58,575.575 INFO    ] Checking for camera pi updates...
[2026-08-31 23:21:58,609.609 INFO    ] 200
[2026-08-31 23:21:58,612.612 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:21:58,654.654 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:21:58,736.736 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:21:58,739.739 INFO    ] No camera update needed
[2026-08-31 23:21:58,741.741 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:21:58,744.744 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:21:58,750.750 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:21:58,755.755 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:22:00,798.798 INFO    ] ================================================
[2026-08-31 23:22:00,815.815 INFO    ] Launching Daemon at Mon Aug 31 23:22:00 IST 2026
[2026-08-31 23:22:00,827.827 INFO    ] ================================================
[2026-08-31 23:22:01,528.528 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:22:01
[2026-08-31 23:22:02,322.322 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:22:02,686.686 INFO    ] Initializing speech engine...
[2026-08-31 23:22:02,689.689 INFO    ] 2026-08-31 23:22:02
[2026-08-31 23:22:03,095.095 INFO    ] 2026-08-31 23:22:03
[2026-08-31 23:22:03,162.162 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:22:03,371.371 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:22:03,380.380 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:22:03,579.579 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:22:03,614.614 INFO    ] time= 31/08/2026 23:22:03
[2026-08-31 23:22:03,661.661 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:22:03,672.672 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:22:03,744.744 INFO    ] No existing commands found in stream
[2026-08-31 23:22:08,771.771 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:22:08,774.774 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-08-31 23:22:13,119.119 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 23:22:13,122.122 INFO    ] Checking for system updates...
[2026-08-31 23:22:13,157.157 INFO    ] 200
[2026-08-31 23:22:13,160.160 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:22:13,212.212 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:22:13,214.214 INFO    ] No update needed
[2026-08-31 23:22:13,217.217 INFO    ] Checking for camera pi updates...
[2026-08-31 23:22:13,250.250 INFO    ] 200
[2026-08-31 23:22:13,253.253 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:22:13,294.294 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:22:13,392.392 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:22:13,395.395 INFO    ] No camera update needed
[2026-08-31 23:22:13,397.397 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:22:13,400.400 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:22:13,405.405 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:22:13,410.410 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:22:15,451.451 INFO    ] ================================================
[2026-08-31 23:22:15,466.466 INFO    ] Launching Daemon at Mon Aug 31 23:22:15 IST 2026
[2026-08-31 23:22:15,477.477 INFO    ] ================================================
[2026-08-31 23:22:16,067.067 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:22:16
[2026-08-31 23:22:16,670.670 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:22:16,950.950 INFO    ] Initializing speech engine...
[2026-08-31 23:22:16,959.959 INFO    ] 2026-08-31 23:22:16
[2026-08-31 23:22:17,219.219 INFO    ] 2026-08-31 23:22:17
[2026-08-31 23:22:17,249.249 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:22:17,496.496 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:22:17,505.505 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:22:17,639.639 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:22:17,699.699 INFO    ] time= 31/08/2026 23:22:17
[2026-08-31 23:22:17,764.764 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:22:17,772.772 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:22:17,896.896 INFO    ] No existing commands found in stream
[2026-08-31 23:22:22,923.923 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:22:22,926.926 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-08-31 23:22:23,951.951 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 23:22:23,954.954 INFO    ] Checking for system updates...
[2026-08-31 23:22:23,990.990 INFO    ] 200
[2026-08-31 23:22:23,992.992 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:22:24,045.045 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:22:24,047.047 INFO    ] No update needed
[2026-08-31 23:22:24,050.050 INFO    ] Checking for camera pi updates...
[2026-08-31 23:22:24,087.087 INFO    ] 200
[2026-08-31 23:22:24,090.090 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:22:24,131.131 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:22:24,231.231 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:22:24,233.233 INFO    ] No camera update needed
[2026-08-31 23:22:24,235.235 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:22:24,238.238 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:22:24,243.243 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:22:24,249.249 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:22:26,291.291 INFO    ] ================================================
[2026-08-31 23:22:26,306.306 INFO    ] Launching Daemon at Mon Aug 31 23:22:26 IST 2026
[2026-08-31 23:22:26,316.316 INFO    ] ================================================
[2026-08-31 23:22:26,966.966 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:22:26
[2026-08-31 23:22:27,551.551 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:22:27,825.825 INFO    ] Initializing speech engine...
[2026-08-31 23:22:27,836.836 INFO    ] 2026-08-31 23:22:27
[2026-08-31 23:22:28,085.085 INFO    ] 2026-08-31 23:22:28
[2026-08-31 23:22:28,155.155 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:22:28,386.386 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:22:28,391.391 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:22:28,528.528 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:22:28,542.542 INFO    ] time= 31/08/2026 23:22:28
[2026-08-31 23:22:28,544.544 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:22:28,603.603 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:22:28,712.712 INFO    ] No existing commands found in stream
[2026-08-31 23:22:33,720.720 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:22:33,723.723 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-08-31 23:22:35,882.882 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 23:22:35,884.884 INFO    ] Checking for system updates...
[2026-08-31 23:22:35,920.920 INFO    ] 200
[2026-08-31 23:22:35,922.922 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:22:35,976.976 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:22:35,978.978 INFO    ] No update needed
[2026-08-31 23:22:35,981.981 INFO    ] Checking for camera pi updates...
[2026-08-31 23:22:36,014.014 INFO    ] 200
[2026-08-31 23:22:36,016.016 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:22:36,057.057 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:22:36,148.148 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:22:36,150.150 INFO    ] No camera update needed
[2026-08-31 23:22:36,152.152 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:22:36,155.155 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:22:36,160.160 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:22:36,165.165 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:22:38,204.204 INFO    ] ================================================
[2026-08-31 23:22:38,220.220 INFO    ] Launching Daemon at Mon Aug 31 23:22:38 IST 2026
[2026-08-31 23:22:38,231.231 INFO    ] ================================================
[2026-08-31 23:22:38,872.872 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:22:38
[2026-08-31 23:22:39,535.535 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:22:39,845.845 INFO    ] Initializing speech engine...
[2026-08-31 23:22:39,853.853 INFO    ] 2026-08-31 23:22:39
[2026-08-31 23:22:40,158.158 INFO    ] 2026-08-31 23:22:40
[2026-08-31 23:22:40,244.244 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:22:40,456.456 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:22:40,462.462 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:22:40,639.639 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:22:40,663.663 INFO    ] time= 31/08/2026 23:22:40
[2026-08-31 23:22:40,681.681 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:22:40,699.699 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:22:40,829.829 INFO    ] No existing commands found in stream
[2026-08-31 23:22:45,859.859 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:22:45,862.862 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-08-31 23:22:49,643.643 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 23:22:49,646.646 INFO    ] Checking for system updates...
[2026-08-31 23:22:49,688.688 INFO    ] 200
[2026-08-31 23:22:49,691.691 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:22:49,744.744 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:22:49,746.746 INFO    ] No update needed
[2026-08-31 23:22:49,749.749 INFO    ] Checking for camera pi updates...
[2026-08-31 23:22:49,784.784 INFO    ] 200
[2026-08-31 23:22:49,786.786 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:22:49,829.829 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:22:49,922.922 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:22:49,924.924 INFO    ] No camera update needed
[2026-08-31 23:22:49,926.926 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:22:49,929.929 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:22:49,934.934 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:22:49,939.939 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:22:51,980.980 INFO    ] ================================================
[2026-08-31 23:22:52,996.996 INFO    ] Launching Daemon at Mon Aug 31 23:22:51 IST 2026
[2026-08-31 23:22:52,006.006 INFO    ] ================================================
[2026-08-31 23:22:52,651.651 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:22:52
[2026-08-31 23:22:53,314.314 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:22:53,616.616 INFO    ] Initializing speech engine...
[2026-08-31 23:22:53,630.630 INFO    ] 2026-08-31 23:22:53
[2026-08-31 23:22:53,903.903 INFO    ] 2026-08-31 23:22:53
[2026-08-31 23:22:53,958.958 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:22:54,191.191 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:22:54,197.197 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:22:54,331.331 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:22:54,343.343 INFO    ] time= 31/08/2026 23:22:54
[2026-08-31 23:22:54,407.407 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:22:54,468.468 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:22:54,601.601 INFO    ] No existing commands found in stream
[2026-08-31 23:22:59,629.629 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:22:59,633.633 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-08-31 23:23:05,491.491 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 23:23:05,494.494 INFO    ] Checking for system updates...
[2026-08-31 23:23:05,531.531 INFO    ] 200
[2026-08-31 23:23:05,534.534 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:23:05,593.593 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:23:05,596.596 INFO    ] No update needed
[2026-08-31 23:23:05,599.599 INFO    ] Checking for camera pi updates...
[2026-08-31 23:23:05,633.633 INFO    ] 200
[2026-08-31 23:23:05,636.636 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:23:05,683.683 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:23:05,862.862 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:23:05,865.865 INFO    ] No camera update needed
[2026-08-31 23:23:05,868.868 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:23:05,871.871 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:23:05,877.877 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:23:05,883.883 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:23:07,923.923 INFO    ] ================================================
[2026-08-31 23:23:07,939.939 INFO    ] Launching Daemon at Mon Aug 31 23:23:07 IST 2026
[2026-08-31 23:23:07,950.950 INFO    ] ================================================
[2026-08-31 23:23:08,599.599 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:23:08
[2026-08-31 23:23:09,287.287 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:23:09,595.595 INFO    ] Initializing speech engine...
[2026-08-31 23:23:09,609.609 INFO    ] 2026-08-31 23:23:09
[2026-08-31 23:23:09,893.893 INFO    ] 2026-08-31 23:23:09
[2026-08-31 23:23:09,938.938 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:23:10,168.168 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:23:10,174.174 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:23:10,401.401 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:23:10,439.439 INFO    ] time= 31/08/2026 23:23:10
[2026-08-31 23:23:10,445.445 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:23:10,464.464 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:23:10,587.587 INFO    ] No existing commands found in stream
[2026-08-31 23:23:15,610.610 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:23:15,613.613 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-08-31 23:23:19,367.367 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 23:23:19,370.370 INFO    ] Checking for system updates...
[2026-08-31 23:23:19,407.407 INFO    ] 200
[2026-08-31 23:23:19,410.410 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:23:19,472.472 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:23:19,475.475 INFO    ] No update needed
[2026-08-31 23:23:19,478.478 INFO    ] Checking for camera pi updates...
[2026-08-31 23:23:19,512.512 INFO    ] 200
[2026-08-31 23:23:19,515.515 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:23:19,562.562 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:23:19,629.629 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:23:19,631.631 INFO    ] No camera update needed
[2026-08-31 23:23:19,634.634 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:23:19,636.636 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:23:19,641.641 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:23:19,646.646 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:23:21,686.686 INFO    ] ================================================
[2026-08-31 23:23:21,702.702 INFO    ] Launching Daemon at Mon Aug 31 23:23:21 IST 2026
[2026-08-31 23:23:21,714.714 INFO    ] ================================================
[2026-08-31 23:23:22,303.303 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:23:22
[2026-08-31 23:23:22,901.901 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:23:23,184.184 INFO    ] Initializing speech engine...
[2026-08-31 23:23:23,192.192 INFO    ] 2026-08-31 23:23:23
[2026-08-31 23:23:23,467.467 INFO    ] 2026-08-31 23:23:23
[2026-08-31 23:23:23,503.503 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:23:23,794.794 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:23:23,805.805 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:23:23,958.958 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:23:23,964.964 INFO    ] time= 31/08/2026 23:23:23
[2026-08-31 23:23:24,023.023 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:23:24,067.067 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:23:24,165.165 INFO    ] No existing commands found in stream
[2026-08-31 23:23:29,177.177 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:23:29,180.180 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-08-31 23:23:30,404.404 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 23:23:30,407.407 INFO    ] Checking for system updates...
[2026-08-31 23:23:30,442.442 INFO    ] 200
[2026-08-31 23:23:30,445.445 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:23:30,498.498 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:23:30,501.501 INFO    ] No update needed
[2026-08-31 23:23:30,504.504 INFO    ] Checking for camera pi updates...
[2026-08-31 23:23:30,538.538 INFO    ] 200
[2026-08-31 23:23:30,540.540 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:23:30,581.581 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:23:30,640.640 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:23:30,642.642 INFO    ] No camera update needed
[2026-08-31 23:23:30,645.645 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:23:30,647.647 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:23:30,653.653 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:23:30,659.659 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:23:32,703.703 INFO    ] ================================================
[2026-08-31 23:23:32,720.720 INFO    ] Launching Daemon at Mon Aug 31 23:23:32 IST 2026
[2026-08-31 23:23:32,734.734 INFO    ] ================================================
[2026-08-31 23:23:33,331.331 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:23:33
[2026-08-31 23:23:33,954.954 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:23:34,272.272 INFO    ] Initializing speech engine...
[2026-08-31 23:23:34,275.275 INFO    ] 2026-08-31 23:23:34
[2026-08-31 23:23:34,552.552 INFO    ] 2026-08-31 23:23:34
[2026-08-31 23:23:34,617.617 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:23:34,843.843 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:23:34,853.853 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:23:35,080.080 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:23:35,113.113 INFO    ] time= 31/08/2026 23:23:35
[2026-08-31 23:23:35,132.132 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:23:35,141.141 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:23:35,271.271 INFO    ] No existing commands found in stream
[2026-08-31 23:23:40,294.294 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:23:40,297.297 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-08-31 23:23:42,988.988 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 23:23:42,991.991 INFO    ] Checking for system updates...
[2026-08-31 23:23:43,028.028 INFO    ] 200
[2026-08-31 23:23:43,031.031 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:23:43,084.084 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:23:43,087.087 INFO    ] No update needed
[2026-08-31 23:23:43,090.090 INFO    ] Checking for camera pi updates...
[2026-08-31 23:23:43,124.124 INFO    ] 200
[2026-08-31 23:23:43,128.128 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:23:43,175.175 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:23:43,258.258 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:23:43,261.261 INFO    ] No camera update needed
[2026-08-31 23:23:43,264.264 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:23:43,267.267 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:23:43,273.273 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:23:43,279.279 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:23:45,321.321 INFO    ] ================================================
[2026-08-31 23:23:45,335.335 INFO    ] Launching Daemon at Mon Aug 31 23:23:45 IST 2026
[2026-08-31 23:23:45,346.346 INFO    ] ================================================
[2026-08-31 23:23:45,912.912 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:23:45
[2026-08-31 23:23:46,496.496 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:23:46,764.764 INFO    ] Initializing speech engine...
[2026-08-31 23:23:46,782.782 INFO    ] 2026-08-31 23:23:46
[2026-08-31 23:23:47,055.055 INFO    ] 2026-08-31 23:23:47
[2026-08-31 23:23:47,093.093 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:23:47,306.306 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:23:47,324.324 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:23:47,456.456 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:23:47,482.482 INFO    ] time= 31/08/2026 23:23:47
[2026-08-31 23:23:47,487.487 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:23:47,494.494 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:23:47,568.568 INFO    ] No existing commands found in stream
[2026-08-31 23:23:52,581.581 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:23:52,584.584 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-08-31 23:23:55,745.745 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 23:23:55,748.748 INFO    ] Checking for system updates...
[2026-08-31 23:23:55,788.788 INFO    ] 200
[2026-08-31 23:23:55,790.790 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:23:55,843.843 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:23:55,846.846 INFO    ] No update needed
[2026-08-31 23:23:55,849.849 INFO    ] Checking for camera pi updates...
[2026-08-31 23:23:55,884.884 INFO    ] 200
[2026-08-31 23:23:55,887.887 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:23:55,935.935 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:23:56,020.020 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:23:56,023.023 INFO    ] No camera update needed
[2026-08-31 23:23:56,026.026 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:23:56,029.029 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:23:56,035.035 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:23:56,041.041 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:23:58,083.083 INFO    ] ================================================
[2026-08-31 23:23:58,098.098 INFO    ] Launching Daemon at Mon Aug 31 23:23:58 IST 2026
[2026-08-31 23:23:58,110.110 INFO    ] ================================================
[2026-08-31 23:23:58,692.692 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:23:58
[2026-08-31 23:23:59,293.293 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:23:59,571.571 INFO    ] Initializing speech engine...
[2026-08-31 23:23:59,577.577 INFO    ] 2026-08-31 23:23:59
[2026-08-31 23:23:59,839.839 INFO    ] 2026-08-31 23:23:59
[2026-08-31 23:23:59,892.892 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:24:00,139.139 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:24:00,146.146 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:24:00,344.344 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:24:00,382.382 INFO    ] time= 31/08/2026 23:24:00
[2026-08-31 23:24:00,389.389 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:24:00,409.409 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:24:00,517.517 INFO    ] No existing commands found in stream
[2026-08-31 23:24:05,543.543 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:24:05,546.546 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-08-31 23:24:08,439.439 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 23:24:08,442.442 INFO    ] Checking for system updates...
[2026-08-31 23:24:08,479.479 INFO    ] 200
[2026-08-31 23:24:08,481.481 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:24:08,534.534 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:24:08,537.537 INFO    ] No update needed
[2026-08-31 23:24:08,540.540 INFO    ] Checking for camera pi updates...
[2026-08-31 23:24:08,580.580 INFO    ] 200
[2026-08-31 23:24:08,583.583 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:24:08,627.627 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:24:08,720.720 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:24:08,723.723 INFO    ] No camera update needed
[2026-08-31 23:24:08,726.726 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:24:08,728.728 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:24:08,734.734 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:24:08,740.740 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:24:10,782.782 INFO    ] ================================================
[2026-08-31 23:24:10,799.799 INFO    ] Launching Daemon at Mon Aug 31 23:24:10 IST 2026
[2026-08-31 23:24:10,810.810 INFO    ] ================================================
[2026-08-31 23:24:11,528.528 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:24:11
[2026-08-31 23:24:12,284.284 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:24:12,628.628 INFO    ] Initializing speech engine...
[2026-08-31 23:24:12,638.638 INFO    ] 2026-08-31 23:24:12
[2026-08-31 23:24:12,959.959 INFO    ] 2026-08-31 23:24:12
[2026-08-31 23:24:13,047.047 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:24:13,202.202 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:24:13,206.206 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:24:13,343.343 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:24:13,409.409 INFO    ] time= 31/08/2026 23:24:13
[2026-08-31 23:24:13,473.473 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:24:13,480.480 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:24:13,750.750 INFO    ] No existing commands found in stream
[2026-08-31 23:24:18,776.776 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:24:18,780.780 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-08-31 23:24:21,752.752 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 23:24:21,755.755 INFO    ] Checking for system updates...
[2026-08-31 23:24:21,793.793 INFO    ] 200
[2026-08-31 23:24:21,795.795 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:24:21,853.853 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:24:21,855.855 INFO    ] No update needed
[2026-08-31 23:24:21,858.858 INFO    ] Checking for camera pi updates...
[2026-08-31 23:24:21,895.895 INFO    ] 200
[2026-08-31 23:24:21,897.897 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:24:21,941.941 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:24:22,031.031 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:24:22,034.034 INFO    ] No camera update needed
[2026-08-31 23:24:22,036.036 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:24:22,039.039 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:24:22,045.045 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:24:22,050.050 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:24:24,091.091 INFO    ] ================================================
[2026-08-31 23:24:24,107.107 INFO    ] Launching Daemon at Mon Aug 31 23:24:24 IST 2026
[2026-08-31 23:24:24,118.118 INFO    ] ================================================
[2026-08-31 23:24:24,689.689 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:24:24
[2026-08-31 23:24:25,291.291 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:24:25,575.575 INFO    ] Initializing speech engine...
[2026-08-31 23:24:25,599.599 INFO    ] 2026-08-31 23:24:25
[2026-08-31 23:24:25,857.857 INFO    ] 2026-08-31 23:24:25
[2026-08-31 23:24:25,893.893 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:24:26,080.080 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:24:26,097.097 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:24:26,233.233 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:24:26,238.238 INFO    ] time= 31/08/2026 23:24:26
[2026-08-31 23:24:26,244.244 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:24:26,295.295 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:24:26,435.435 INFO    ] No existing commands found in stream
[2026-08-31 23:24:31,450.450 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:24:31,453.453 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-08-31 23:24:32,606.606 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 23:24:32,610.610 INFO    ] Checking for system updates...
[2026-08-31 23:24:32,653.653 INFO    ] 200
[2026-08-31 23:24:32,656.656 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:24:32,713.713 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:24:32,716.716 INFO    ] No update needed
[2026-08-31 23:24:32,718.718 INFO    ] Checking for camera pi updates...
[2026-08-31 23:24:32,753.753 INFO    ] 200
[2026-08-31 23:24:32,756.756 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:24:32,806.806 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:24:32,896.896 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:24:32,899.899 INFO    ] No camera update needed
[2026-08-31 23:24:32,904.904 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:24:32,907.907 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:24:32,912.912 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:24:32,921.921 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:24:34,961.961 INFO    ] ================================================
[2026-08-31 23:24:34,977.977 INFO    ] Launching Daemon at Mon Aug 31 23:24:34 IST 2026
[2026-08-31 23:24:34,988.988 INFO    ] ================================================
[2026-08-31 23:24:35,555.555 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:24:35
[2026-08-31 23:24:36,156.156 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:24:36,463.463 INFO    ] Initializing speech engine...
[2026-08-31 23:24:36,475.475 INFO    ] 2026-08-31 23:24:36
[2026-08-31 23:24:36,745.745 INFO    ] 2026-08-31 23:24:36
[2026-08-31 23:24:36,800.800 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:24:37,030.030 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:24:37,041.041 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:24:37,180.180 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:24:37,240.240 INFO    ] time= 31/08/2026 23:24:37
[2026-08-31 23:24:37,290.290 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:24:37,316.316 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:24:37,379.379 INFO    ] No existing commands found in stream
[2026-08-31 23:24:42,410.410 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:24:42,413.413 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-08-31 23:24:46,003.003 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 23:24:46,006.006 INFO    ] Checking for system updates...
[2026-08-31 23:24:46,045.045 INFO    ] 200
[2026-08-31 23:24:46,048.048 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:24:46,103.103 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:24:46,105.105 INFO    ] No update needed
[2026-08-31 23:24:46,108.108 INFO    ] Checking for camera pi updates...
[2026-08-31 23:24:46,143.143 INFO    ] 200
[2026-08-31 23:24:46,146.146 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:24:46,188.188 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:24:46,296.296 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:24:46,299.299 INFO    ] No camera update needed
[2026-08-31 23:24:46,302.302 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:24:46,305.305 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:24:46,311.311 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:24:46,316.316 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:24:48,359.359 INFO    ] ================================================
[2026-08-31 23:24:48,374.374 INFO    ] Launching Daemon at Mon Aug 31 23:24:48 IST 2026
[2026-08-31 23:24:48,385.385 INFO    ] ================================================
[2026-08-31 23:24:48,952.952 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:24:48
[2026-08-31 23:24:49,535.535 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:24:49,781.781 INFO    ] Initializing speech engine...
[2026-08-31 23:24:49,789.789 INFO    ] 2026-08-31 23:24:49
[2026-08-31 23:24:50,065.065 INFO    ] 2026-08-31 23:24:50
[2026-08-31 23:24:50,100.100 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:24:50,298.298 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:24:50,321.321 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:24:50,503.503 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:24:50,550.550 INFO    ] time= 31/08/2026 23:24:50
[2026-08-31 23:24:50,594.594 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:24:50,639.639 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:24:50,753.753 INFO    ] No existing commands found in stream
[2026-08-31 23:24:55,780.780 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:24:55,783.783 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-08-31 23:24:56,681.681 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 23:24:56,684.684 INFO    ] Checking for system updates...
[2026-08-31 23:24:56,719.719 INFO    ] 200
[2026-08-31 23:24:56,721.721 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:24:56,774.774 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:24:56,777.777 INFO    ] No update needed
[2026-08-31 23:24:56,779.779 INFO    ] Checking for camera pi updates...
[2026-08-31 23:24:56,813.813 INFO    ] 200
[2026-08-31 23:24:56,815.815 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:24:56,856.856 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:24:56,947.947 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:24:56,949.949 INFO    ] No camera update needed
[2026-08-31 23:24:56,952.952 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:24:56,954.954 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:24:56,959.959 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:24:56,964.964 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:24:59,005.005 INFO    ] ================================================
[2026-08-31 23:24:59,022.022 INFO    ] Launching Daemon at Mon Aug 31 23:24:59 IST 2026
[2026-08-31 23:24:59,034.034 INFO    ] ================================================
[2026-08-31 23:24:59,625.625 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:24:59
[2026-08-31 23:25:00,208.208 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:25:00,480.480 INFO    ] Initializing speech engine...
[2026-08-31 23:25:00,482.482 INFO    ] 2026-08-31 23:25:00
[2026-08-31 23:25:00,734.734 INFO    ] 2026-08-31 23:25:00
[2026-08-31 23:25:00,769.769 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:25:01,022.022 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:25:01,032.032 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:25:01,167.167 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:25:01,209.209 INFO    ] time= 31/08/2026 23:25:01
[2026-08-31 23:25:01,258.258 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:25:01,303.303 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:25:01,429.429 INFO    ] No existing commands found in stream
[2026-08-31 23:25:06,459.459 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:25:06,462.462 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-08-31 23:25:09,078.078 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 23:25:09,081.081 INFO    ] Checking for system updates...
[2026-08-31 23:25:09,116.116 INFO    ] 200
[2026-08-31 23:25:09,118.118 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:25:09,171.171 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:25:09,174.174 INFO    ] No update needed
[2026-08-31 23:25:09,176.176 INFO    ] Checking for camera pi updates...
[2026-08-31 23:25:09,209.209 INFO    ] 200
[2026-08-31 23:25:09,212.212 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:25:09,251.251 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:25:09,429.429 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:25:09,431.431 INFO    ] No camera update needed
[2026-08-31 23:25:09,433.433 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:25:09,436.436 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:25:09,441.441 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:25:09,446.446 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:25:11,487.487 INFO    ] ================================================
[2026-08-31 23:25:11,503.503 INFO    ] Launching Daemon at Mon Aug 31 23:25:11 IST 2026
[2026-08-31 23:25:11,514.514 INFO    ] ================================================
[2026-08-31 23:25:12,104.104 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:25:12
[2026-08-31 23:25:12,705.705 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:25:12,990.990 INFO    ] Initializing speech engine...
[2026-08-31 23:25:12,995.995 INFO    ] 2026-08-31 23:25:12
[2026-08-31 23:25:13,261.261 INFO    ] 2026-08-31 23:25:13
[2026-08-31 23:25:13,298.298 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:25:13,490.490 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:25:13,504.504 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:25:13,663.663 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:25:13,671.671 INFO    ] time= 31/08/2026 23:25:13
[2026-08-31 23:25:13,675.675 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:25:13,681.681 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:25:13,753.753 INFO    ] No existing commands found in stream
[2026-08-31 23:25:18,765.765 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:25:18,768.768 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-08-31 23:25:23,246.246 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 23:25:23,249.249 INFO    ] Checking for system updates...
[2026-08-31 23:25:23,288.288 INFO    ] 200
[2026-08-31 23:25:23,290.290 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:25:23,344.344 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:25:23,347.347 INFO    ] No update needed
[2026-08-31 23:25:23,349.349 INFO    ] Checking for camera pi updates...
[2026-08-31 23:25:23,383.383 INFO    ] 200
[2026-08-31 23:25:23,385.385 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:25:23,426.426 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:25:23,505.505 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:25:23,508.508 INFO    ] No camera update needed
[2026-08-31 23:25:23,510.510 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:25:23,513.513 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:25:23,518.518 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:25:23,523.523 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:25:25,563.563 INFO    ] ================================================
[2026-08-31 23:25:25,579.579 INFO    ] Launching Daemon at Mon Aug 31 23:25:25 IST 2026
[2026-08-31 23:25:25,589.589 INFO    ] ================================================
[2026-08-31 23:25:26,157.157 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:25:26
[2026-08-31 23:25:26,741.741 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:25:26,995.995 INFO    ] Initializing speech engine...
[2026-08-31 23:25:27,001.001 INFO    ] 2026-08-31 23:25:26
[2026-08-31 23:25:27,298.298 INFO    ] 2026-08-31 23:25:27
[2026-08-31 23:25:27,335.335 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:25:27,546.546 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:25:27,563.563 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:25:27,710.710 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:25:27,719.719 INFO    ] time= 31/08/2026 23:25:27
[2026-08-31 23:25:27,724.724 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:25:27,731.731 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:25:27,804.804 INFO    ] No existing commands found in stream
[2026-08-31 23:25:32,817.817 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:25:32,820.820 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-08-31 23:25:34,483.483 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 23:25:34,486.486 INFO    ] Checking for system updates...
[2026-08-31 23:25:34,527.527 INFO    ] 200
[2026-08-31 23:25:34,530.530 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:25:34,591.591 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:25:34,594.594 INFO    ] No update needed
[2026-08-31 23:25:34,597.597 INFO    ] Checking for camera pi updates...
[2026-08-31 23:25:34,632.632 INFO    ] 200
[2026-08-31 23:25:34,634.634 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:25:34,676.676 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:25:34,763.763 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:25:34,766.766 INFO    ] No camera update needed
[2026-08-31 23:25:34,769.769 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:25:34,772.772 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:25:34,778.778 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:25:34,784.784 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:25:36,824.824 INFO    ] ================================================
[2026-08-31 23:25:36,840.840 INFO    ] Launching Daemon at Mon Aug 31 23:25:36 IST 2026
[2026-08-31 23:25:36,850.850 INFO    ] ================================================
[2026-08-31 23:25:37,490.490 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:25:37
[2026-08-31 23:25:38,164.164 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:25:38,477.477 INFO    ] Initializing speech engine...
[2026-08-31 23:25:38,491.491 INFO    ] 2026-08-31 23:25:38
[2026-08-31 23:25:38,812.812 INFO    ] 2026-08-31 23:25:38
[2026-08-31 23:25:38,896.896 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:25:39,111.111 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:25:39,120.120 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:25:39,304.304 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:25:39,329.329 INFO    ] time= 31/08/2026 23:25:39
[2026-08-31 23:25:39,348.348 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:25:39,379.379 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:25:39,499.499 INFO    ] No existing commands found in stream
[2026-08-31 23:25:44,530.530 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:25:44,533.533 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-08-31 23:25:45,052.052 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 23:25:45,055.055 INFO    ] Checking for system updates...
[2026-08-31 23:25:45,098.098 INFO    ] 200
[2026-08-31 23:25:45,101.101 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:25:45,160.160 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:25:45,163.163 INFO    ] No update needed
[2026-08-31 23:25:45,166.166 INFO    ] Checking for camera pi updates...
[2026-08-31 23:25:45,202.202 INFO    ] 200
[2026-08-31 23:25:45,205.205 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:25:45,246.246 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:25:45,328.328 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:25:45,331.331 INFO    ] No camera update needed
[2026-08-31 23:25:45,334.334 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:25:45,337.337 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:25:45,343.343 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:25:45,349.349 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:25:47,393.393 INFO    ] ================================================
[2026-08-31 23:25:47,408.408 INFO    ] Launching Daemon at Mon Aug 31 23:25:47 IST 2026
[2026-08-31 23:25:47,419.419 INFO    ] ================================================
[2026-08-31 23:25:47,982.982 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:25:47
[2026-08-31 23:25:48,565.565 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:25:48,812.812 INFO    ] Initializing speech engine...
[2026-08-31 23:25:48,835.835 INFO    ] 2026-08-31 23:25:48
[2026-08-31 23:25:49,093.093 INFO    ] 2026-08-31 23:25:49
[2026-08-31 23:25:49,127.127 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:25:49,377.377 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:25:49,386.386 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:25:49,516.516 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:25:49,563.563 INFO    ] time= 31/08/2026 23:25:49
[2026-08-31 23:25:49,623.623 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:25:49,649.649 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:25:49,798.798 INFO    ] No existing commands found in stream
[2026-08-31 23:25:54,809.809 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:25:54,812.812 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-08-31 23:25:58,955.955 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 23:25:58,957.957 INFO    ] Checking for system updates...
[2026-08-31 23:25:58,993.993 INFO    ] 200
[2026-08-31 23:25:58,996.996 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:25:59,056.056 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:25:59,059.059 INFO    ] No update needed
[2026-08-31 23:25:59,061.061 INFO    ] Checking for camera pi updates...
[2026-08-31 23:25:59,095.095 INFO    ] 200
[2026-08-31 23:25:59,098.098 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:25:59,139.139 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:25:59,223.223 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:25:59,225.225 INFO    ] No camera update needed
[2026-08-31 23:25:59,227.227 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:25:59,230.230 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:25:59,235.235 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:25:59,240.240 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:26:01,282.282 INFO    ] ================================================
[2026-08-31 23:26:01,297.297 INFO    ] Launching Daemon at Mon Aug 31 23:26:01 IST 2026
[2026-08-31 23:26:01,308.308 INFO    ] ================================================
[2026-08-31 23:26:02,030.030 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:26:02
[2026-08-31 23:26:02,825.825 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:26:03,194.194 INFO    ] Initializing speech engine...
[2026-08-31 23:26:03,205.205 INFO    ] 2026-08-31 23:26:03
[2026-08-31 23:26:03,477.477 INFO    ] 2026-08-31 23:26:03
[2026-08-31 23:26:03,511.511 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:26:03,768.768 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:26:03,777.777 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:26:03,986.986 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:26:04,040.040 INFO    ] time= 31/08/2026 23:26:03
[2026-08-31 23:26:04,047.047 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:26:04,065.065 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:26:04,582.582 INFO    ] No existing commands found in stream
[2026-08-31 23:26:09,607.607 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:26:09,610.610 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-08-31 23:26:13,959.959 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 23:26:13,962.962 INFO    ] Checking for system updates...
[2026-08-31 23:26:13,998.998 INFO    ] 200
[2026-08-31 23:26:14,000.000 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:26:14,052.052 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:26:14,054.054 INFO    ] No update needed
[2026-08-31 23:26:14,056.056 INFO    ] Checking for camera pi updates...
[2026-08-31 23:26:14,089.089 INFO    ] 200
[2026-08-31 23:26:14,092.092 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:26:14,132.132 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:26:14,224.224 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:26:14,226.226 INFO    ] No camera update needed
[2026-08-31 23:26:14,229.229 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:26:14,231.231 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:26:14,236.236 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:26:14,241.241 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:26:16,281.281 INFO    ] ================================================
[2026-08-31 23:26:16,295.295 INFO    ] Launching Daemon at Mon Aug 31 23:26:16 IST 2026
[2026-08-31 23:26:16,306.306 INFO    ] ================================================
[2026-08-31 23:26:16,872.872 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:26:16
[2026-08-31 23:26:17,453.453 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:26:17,722.722 INFO    ] Initializing speech engine...
[2026-08-31 23:26:17,731.731 INFO    ] 2026-08-31 23:26:17
[2026-08-31 23:26:17,981.981 INFO    ] 2026-08-31 23:26:17
[2026-08-31 23:26:18,016.016 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:26:18,273.273 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:26:18,282.282 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:26:18,416.416 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:26:18,449.449 INFO    ] time= 31/08/2026 23:26:18
[2026-08-31 23:26:18,503.503 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:26:18,552.552 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:26:18,663.663 INFO    ] No existing commands found in stream
[2026-08-31 23:26:23,689.689 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:26:23,692.692 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-08-31 23:26:27,120.120 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 23:26:27,123.123 INFO    ] Checking for system updates...
[2026-08-31 23:26:27,158.158 INFO    ] 200
[2026-08-31 23:26:27,161.161 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:26:27,215.215 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:26:27,218.218 INFO    ] No update needed
[2026-08-31 23:26:27,221.221 INFO    ] Checking for camera pi updates...
[2026-08-31 23:26:27,255.255 INFO    ] 200
[2026-08-31 23:26:27,258.258 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:26:27,300.300 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:26:27,385.385 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:26:27,388.388 INFO    ] No camera update needed
[2026-08-31 23:26:27,391.391 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:26:27,393.393 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:26:27,400.400 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:26:27,406.406 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:26:29,446.446 INFO    ] ================================================
[2026-08-31 23:26:29,462.462 INFO    ] Launching Daemon at Mon Aug 31 23:26:29 IST 2026
[2026-08-31 23:26:29,472.472 INFO    ] ================================================
[2026-08-31 23:26:30,052.052 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:26:30
[2026-08-31 23:26:30,654.654 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:26:30,943.943 INFO    ] Initializing speech engine...
[2026-08-31 23:26:30,952.952 INFO    ] 2026-08-31 23:26:30
[2026-08-31 23:26:31,217.217 INFO    ] 2026-08-31 23:26:31
[2026-08-31 23:26:31,255.255 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:26:31,475.475 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:26:31,483.483 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:26:31,630.630 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:26:31,633.633 INFO    ] time= 31/08/2026 23:26:31
[2026-08-31 23:26:31,635.635 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:26:31,640.640 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:26:31,718.718 INFO    ] No existing commands found in stream
[2026-08-31 23:26:36,731.731 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:26:36,734.734 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-08-31 23:26:39,744.744 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 23:26:39,747.747 INFO    ] Checking for system updates...
[2026-08-31 23:26:39,783.783 INFO    ] 200
[2026-08-31 23:26:39,785.785 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:26:39,841.841 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:26:39,844.844 INFO    ] No update needed
[2026-08-31 23:26:39,846.846 INFO    ] Checking for camera pi updates...
[2026-08-31 23:26:39,880.880 INFO    ] 200
[2026-08-31 23:26:39,882.882 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:26:39,924.924 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:26:40,026.026 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:26:40,029.029 INFO    ] No camera update needed
[2026-08-31 23:26:40,032.032 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:26:40,035.035 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:26:40,041.041 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:26:40,047.047 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:26:42,088.088 INFO    ] ================================================
[2026-08-31 23:26:42,103.103 INFO    ] Launching Daemon at Mon Aug 31 23:26:42 IST 2026
[2026-08-31 23:26:42,114.114 INFO    ] ================================================
[2026-08-31 23:26:42,680.680 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:26:42
[2026-08-31 23:26:43,272.272 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:26:43,522.522 INFO    ] Initializing speech engine...
[2026-08-31 23:26:43,542.542 INFO    ] 2026-08-31 23:26:43
[2026-08-31 23:26:43,803.803 INFO    ] 2026-08-31 23:26:43
[2026-08-31 23:26:43,839.839 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:26:44,041.041 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:26:44,099.099 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:26:44,241.241 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:26:44,283.283 INFO    ] time= 31/08/2026 23:26:44
[2026-08-31 23:26:44,335.335 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:26:44,380.380 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:26:44,506.506 INFO    ] No existing commands found in stream
[2026-08-31 23:26:49,532.532 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:26:49,534.534 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-08-31 23:26:51,317.317 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 23:26:51,320.320 INFO    ] Checking for system updates...
[2026-08-31 23:26:51,357.357 INFO    ] 200
[2026-08-31 23:26:51,359.359 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:26:51,411.411 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:26:51,414.414 INFO    ] No update needed
[2026-08-31 23:26:51,416.416 INFO    ] Checking for camera pi updates...
[2026-08-31 23:26:51,454.454 INFO    ] 200
[2026-08-31 23:26:51,457.457 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:26:51,502.502 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:26:51,606.606 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:26:51,609.609 INFO    ] No camera update needed
[2026-08-31 23:26:51,611.611 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:26:51,613.613 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:26:51,619.619 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:26:51,623.623 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:26:53,663.663 INFO    ] ================================================
[2026-08-31 23:26:53,678.678 INFO    ] Launching Daemon at Mon Aug 31 23:26:53 IST 2026
[2026-08-31 23:26:53,688.688 INFO    ] ================================================
[2026-08-31 23:26:54,265.265 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:26:54
[2026-08-31 23:26:54,869.869 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:26:55,174.174 INFO    ] Initializing speech engine...
[2026-08-31 23:26:55,183.183 INFO    ] 2026-08-31 23:26:55
[2026-08-31 23:26:55,473.473 INFO    ] 2026-08-31 23:26:55
[2026-08-31 23:26:55,517.517 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:26:55,743.743 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:26:55,753.753 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:26:55,971.971 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:26:56,018.018 INFO    ] time= 31/08/2026 23:26:55
[2026-08-31 23:26:56,024.024 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:26:56,046.046 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:26:56,176.176 INFO    ] No existing commands found in stream
[2026-08-31 23:27:01,190.190 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:27:01,193.193 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-08-31 23:27:04,145.145 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 23:27:04,148.148 INFO    ] Checking for system updates...
[2026-08-31 23:27:04,185.185 INFO    ] 200
[2026-08-31 23:27:04,188.188 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:27:04,250.250 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:27:04,253.253 INFO    ] No update needed
[2026-08-31 23:27:04,256.256 INFO    ] Checking for camera pi updates...
[2026-08-31 23:27:04,295.295 INFO    ] 200
[2026-08-31 23:27:04,298.298 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:27:04,340.340 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:27:04,445.445 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:27:04,448.448 INFO    ] No camera update needed
[2026-08-31 23:27:04,450.450 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:27:04,453.453 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:27:04,459.459 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:27:04,465.465 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:27:06,509.509 INFO    ] ================================================
[2026-08-31 23:27:06,528.528 INFO    ] Launching Daemon at Mon Aug 31 23:27:06 IST 2026
[2026-08-31 23:27:06,541.541 INFO    ] ================================================
[2026-08-31 23:27:07,128.128 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:27:07
[2026-08-31 23:27:07,725.725 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:27:08,005.005 INFO    ] Initializing speech engine...
[2026-08-31 23:27:08,012.012 INFO    ] 2026-08-31 23:27:08
[2026-08-31 23:27:08,273.273 INFO    ] 2026-08-31 23:27:08
[2026-08-31 23:27:08,326.326 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:27:08,553.553 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:27:08,558.558 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:27:08,689.689 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:27:08,731.731 INFO    ] time= 31/08/2026 23:27:08
[2026-08-31 23:27:08,801.801 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:27:08,822.822 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:27:08,939.939 INFO    ] No existing commands found in stream
[2026-08-31 23:27:13,970.970 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:27:13,972.972 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-08-31 23:27:18,103.103 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 23:27:18,106.106 INFO    ] Checking for system updates...
[2026-08-31 23:27:18,146.146 INFO    ] 200
[2026-08-31 23:27:18,149.149 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:27:18,201.201 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:27:18,203.203 INFO    ] No update needed
[2026-08-31 23:27:18,205.205 INFO    ] Checking for camera pi updates...
[2026-08-31 23:27:18,240.240 INFO    ] 200
[2026-08-31 23:27:18,242.242 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:27:18,285.285 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:27:18,462.462 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:27:18,465.465 INFO    ] No camera update needed
[2026-08-31 23:27:18,467.467 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:27:18,469.469 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:27:18,475.475 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:27:18,480.480 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:27:20,521.521 INFO    ] ================================================
[2026-08-31 23:27:20,536.536 INFO    ] Launching Daemon at Mon Aug 31 23:27:20 IST 2026
[2026-08-31 23:27:20,546.546 INFO    ] ================================================
[2026-08-31 23:27:21,114.114 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:27:21
[2026-08-31 23:27:21,707.707 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:27:21,980.980 INFO    ] Initializing speech engine...
[2026-08-31 23:27:21,989.989 INFO    ] 2026-08-31 23:27:21
[2026-08-31 23:27:22,253.253 INFO    ] 2026-08-31 23:27:22
[2026-08-31 23:27:22,307.307 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:27:22,530.530 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:27:22,539.539 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:27:22,673.673 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:27:22,738.738 INFO    ] time= 31/08/2026 23:27:22
[2026-08-31 23:27:22,797.797 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:27:22,808.808 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:27:22,923.923 INFO    ] No existing commands found in stream
[2026-08-31 23:27:27,954.954 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:27:27,956.956 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-08-31 23:27:30,846.846 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 23:27:30,849.849 INFO    ] Checking for system updates...
[2026-08-31 23:27:30,884.884 INFO    ] 200
[2026-08-31 23:27:30,887.887 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:27:30,948.948 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:27:30,951.951 INFO    ] No update needed
[2026-08-31 23:27:30,953.953 INFO    ] Checking for camera pi updates...
[2026-08-31 23:27:30,991.991 INFO    ] 200
[2026-08-31 23:27:30,994.994 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:27:31,040.040 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:27:31,108.108 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:27:31,110.110 INFO    ] No camera update needed
[2026-08-31 23:27:31,113.113 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:27:31,115.115 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:27:31,121.121 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:27:31,126.126 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:27:33,166.166 INFO    ] ================================================
[2026-08-31 23:27:33,181.181 INFO    ] Launching Daemon at Mon Aug 31 23:27:33 IST 2026
[2026-08-31 23:27:33,192.192 INFO    ] ================================================
[2026-08-31 23:27:33,782.782 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:27:33
[2026-08-31 23:27:34,383.383 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:27:34,660.660 INFO    ] Initializing speech engine...
[2026-08-31 23:27:34,676.676 INFO    ] 2026-08-31 23:27:34
[2026-08-31 23:27:34,957.957 INFO    ] 2026-08-31 23:27:34
[2026-08-31 23:27:34,995.995 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:27:35,192.192 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:27:35,208.208 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:27:35,373.373 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:27:35,382.382 INFO    ] time= 31/08/2026 23:27:35
[2026-08-31 23:27:35,386.386 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:27:35,392.392 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:27:35,470.470 INFO    ] No existing commands found in stream
[2026-08-31 23:27:40,490.490 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:27:40,493.493 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-08-31 23:27:42,514.514 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 23:27:42,517.517 INFO    ] Checking for system updates...
[2026-08-31 23:27:42,554.554 INFO    ] 200
[2026-08-31 23:27:42,557.557 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:27:42,609.609 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:27:42,612.612 INFO    ] No update needed
[2026-08-31 23:27:42,615.615 INFO    ] Checking for camera pi updates...
[2026-08-31 23:27:42,648.648 INFO    ] 200
[2026-08-31 23:27:42,651.651 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:27:42,696.696 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:27:42,775.775 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:27:42,778.778 INFO    ] No camera update needed
[2026-08-31 23:27:42,780.780 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:27:42,783.783 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:27:42,788.788 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:27:42,793.793 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:27:44,832.832 INFO    ] ================================================
[2026-08-31 23:27:44,847.847 INFO    ] Launching Daemon at Mon Aug 31 23:27:44 IST 2026
[2026-08-31 23:27:44,857.857 INFO    ] ================================================
[2026-08-31 23:27:45,433.433 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:27:45
[2026-08-31 23:27:46,025.025 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:27:46,297.297 INFO    ] Initializing speech engine...
[2026-08-31 23:27:46,305.305 INFO    ] 2026-08-31 23:27:46
[2026-08-31 23:27:46,557.557 INFO    ] 2026-08-31 23:27:46
[2026-08-31 23:27:46,592.592 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:27:46,849.849 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:27:46,858.858 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:27:46,995.995 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:27:47,045.045 INFO    ] time= 31/08/2026 23:27:46
[2026-08-31 23:27:47,094.094 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:27:47,129.129 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:27:47,182.182 INFO    ] No existing commands found in stream
[2026-08-31 23:27:52,194.194 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:27:52,196.196 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-08-31 23:27:55,399.399 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 23:27:55,401.401 INFO    ] Checking for system updates...
[2026-08-31 23:27:55,442.442 INFO    ] 200
[2026-08-31 23:27:55,444.444 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:27:55,504.504 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:27:55,507.507 INFO    ] No update needed
[2026-08-31 23:27:55,509.509 INFO    ] Checking for camera pi updates...
[2026-08-31 23:27:55,542.542 INFO    ] 200
[2026-08-31 23:27:55,545.545 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:27:55,591.591 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:27:55,695.695 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:27:55,697.697 INFO    ] No camera update needed
[2026-08-31 23:27:55,700.700 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:27:55,702.702 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:27:55,707.707 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:27:55,712.712 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:27:57,751.751 INFO    ] ================================================
[2026-08-31 23:27:57,766.766 INFO    ] Launching Daemon at Mon Aug 31 23:27:57 IST 2026
[2026-08-31 23:27:57,776.776 INFO    ] ================================================
[2026-08-31 23:27:58,342.342 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:27:58
[2026-08-31 23:27:58,928.928 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:27:59,196.196 INFO    ] Initializing speech engine...
[2026-08-31 23:27:59,205.205 INFO    ] 2026-08-31 23:27:59
[2026-08-31 23:27:59,451.451 INFO    ] 2026-08-31 23:27:59
[2026-08-31 23:27:59,486.486 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:27:59,737.737 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:27:59,745.745 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:27:59,881.881 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:27:59,951.951 INFO    ] time= 31/08/2026 23:27:59
[2026-08-31 23:28:00,007.007 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:28:00,014.014 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:28:00,181.181 INFO    ] No existing commands found in stream
[2026-08-31 23:28:05,206.206 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:28:05,209.209 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-08-31 23:28:06,945.945 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 23:28:06,947.947 INFO    ] Checking for system updates...
[2026-08-31 23:28:06,987.987 INFO    ] 200
[2026-08-31 23:28:06,989.989 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:28:07,049.049 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:28:07,051.051 INFO    ] No update needed
[2026-08-31 23:28:07,054.054 INFO    ] Checking for camera pi updates...
[2026-08-31 23:28:07,088.088 INFO    ] 200
[2026-08-31 23:28:07,090.090 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:28:07,130.130 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:28:07,217.217 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:28:07,219.219 INFO    ] No camera update needed
[2026-08-31 23:28:07,221.221 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:28:07,224.224 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:28:07,229.229 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:28:07,234.234 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:28:09,273.273 INFO    ] ================================================
[2026-08-31 23:28:09,289.289 INFO    ] Launching Daemon at Mon Aug 31 23:28:09 IST 2026
[2026-08-31 23:28:09,299.299 INFO    ] ================================================
[2026-08-31 23:28:09,871.871 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:28:09
[2026-08-31 23:28:10,458.458 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:28:10,716.716 INFO    ] Initializing speech engine...
[2026-08-31 23:28:10,735.735 INFO    ] 2026-08-31 23:28:10
[2026-08-31 23:28:10,982.982 INFO    ] 2026-08-31 23:28:10
[2026-08-31 23:28:11,018.018 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:28:11,215.215 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:28:11,223.223 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:28:11,364.364 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:28:11,374.374 INFO    ] time= 31/08/2026 23:28:11
[2026-08-31 23:28:11,378.378 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:28:11,384.384 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:28:11,458.458 INFO    ] No existing commands found in stream
[2026-08-31 23:28:16,470.470 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:28:16,473.473 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-08-31 23:28:19,564.564 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 23:28:19,567.567 INFO    ] Checking for system updates...
[2026-08-31 23:28:19,607.607 INFO    ] 200
[2026-08-31 23:28:19,610.610 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:28:19,663.663 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:28:19,665.665 INFO    ] No update needed
[2026-08-31 23:28:19,668.668 INFO    ] Checking for camera pi updates...
[2026-08-31 23:28:19,702.702 INFO    ] 200
[2026-08-31 23:28:19,705.705 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:28:19,745.745 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:28:19,823.823 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:28:19,826.826 INFO    ] No camera update needed
[2026-08-31 23:28:19,828.828 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:28:19,831.831 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:28:19,836.836 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:28:19,841.841 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:28:21,884.884 INFO    ] ================================================
[2026-08-31 23:28:21,899.899 INFO    ] Launching Daemon at Mon Aug 31 23:28:21 IST 2026
[2026-08-31 23:28:21,910.910 INFO    ] ================================================
[2026-08-31 23:28:22,479.479 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:28:22
[2026-08-31 23:28:23,069.069 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:28:23,342.342 INFO    ] Initializing speech engine...
[2026-08-31 23:28:23,352.352 INFO    ] 2026-08-31 23:28:23
[2026-08-31 23:28:23,602.602 INFO    ] 2026-08-31 23:28:23
[2026-08-31 23:28:23,635.635 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:28:23,895.895 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:28:23,905.905 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:28:24,040.040 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:28:24,082.082 INFO    ] time= 31/08/2026 23:28:24
[2026-08-31 23:28:24,131.131 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:28:24,177.177 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:28:24,303.303 INFO    ] No existing commands found in stream
[2026-08-31 23:28:29,328.328 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:28:29,331.331 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-08-31 23:28:31,189.189 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 23:28:31,192.192 INFO    ] Checking for system updates...
[2026-08-31 23:28:31,232.232 INFO    ] 200
[2026-08-31 23:28:31,235.235 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:28:31,296.296 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:28:31,298.298 INFO    ] No update needed
[2026-08-31 23:28:31,301.301 INFO    ] Checking for camera pi updates...
[2026-08-31 23:28:31,339.339 INFO    ] 200
[2026-08-31 23:28:31,341.341 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:28:31,381.381 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:28:31,488.488 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:28:31,490.490 INFO    ] No camera update needed
[2026-08-31 23:28:31,492.492 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:28:31,495.495 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:28:31,500.500 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:28:31,505.505 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:28:33,547.547 INFO    ] ================================================
[2026-08-31 23:28:33,561.561 INFO    ] Launching Daemon at Mon Aug 31 23:28:33 IST 2026
[2026-08-31 23:28:33,572.572 INFO    ] ================================================
[2026-08-31 23:28:34,193.193 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:28:34
[2026-08-31 23:28:34,783.783 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:28:35,061.061 INFO    ] Initializing speech engine...
[2026-08-31 23:28:35,074.074 INFO    ] 2026-08-31 23:28:35
[2026-08-31 23:28:35,341.341 INFO    ] 2026-08-31 23:28:35
[2026-08-31 23:28:35,383.383 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:28:35,607.607 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:28:35,611.611 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:28:35,841.841 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:28:35,869.869 INFO    ] time= 31/08/2026 23:28:35
[2026-08-31 23:28:35,874.874 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:28:35,893.893 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:28:36,007.007 INFO    ] No existing commands found in stream
[2026-08-31 23:28:41,031.031 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:28:41,034.034 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-08-31 23:28:42,602.602 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 23:28:42,604.604 INFO    ] Checking for system updates...
[2026-08-31 23:28:42,640.640 INFO    ] 200
[2026-08-31 23:28:42,642.642 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:28:42,703.703 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:28:42,705.705 INFO    ] No update needed
[2026-08-31 23:28:42,708.708 INFO    ] Checking for camera pi updates...
[2026-08-31 23:28:42,746.746 INFO    ] 200
[2026-08-31 23:28:42,748.748 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:28:42,789.789 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:28:42,869.869 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:28:42,872.872 INFO    ] No camera update needed
[2026-08-31 23:28:42,874.874 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:28:42,876.876 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:28:42,882.882 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:28:42,887.887 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:28:44,928.928 INFO    ] ================================================
[2026-08-31 23:28:44,944.944 INFO    ] Launching Daemon at Mon Aug 31 23:28:44 IST 2026
[2026-08-31 23:28:44,954.954 INFO    ] ================================================
[2026-08-31 23:28:45,519.519 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:28:45
[2026-08-31 23:28:46,101.101 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:28:46,400.400 INFO    ] Initializing speech engine...
[2026-08-31 23:28:46,410.410 INFO    ] 2026-08-31 23:28:46
[2026-08-31 23:28:46,736.736 INFO    ] 2026-08-31 23:28:46
[2026-08-31 23:28:46,824.824 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:28:47,041.041 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:28:47,051.051 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:28:47,230.230 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:28:47,258.258 INFO    ] time= 31/08/2026 23:28:47
[2026-08-31 23:28:47,277.277 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:28:47,307.307 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:28:47,428.428 INFO    ] No existing commands found in stream
[2026-08-31 23:28:52,459.459 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:28:52,462.462 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-08-31 23:28:55,918.918 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 23:28:55,921.921 INFO    ] Checking for system updates...
[2026-08-31 23:28:55,964.964 INFO    ] 200
[2026-08-31 23:28:55,967.967 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:28:56,034.034 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:28:56,037.037 INFO    ] No update needed
[2026-08-31 23:28:56,041.041 INFO    ] Checking for camera pi updates...
[2026-08-31 23:28:56,076.076 INFO    ] 200
[2026-08-31 23:28:56,079.079 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:28:56,120.120 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:28:56,202.202 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:28:56,204.204 INFO    ] No camera update needed
[2026-08-31 23:28:56,206.206 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:28:56,209.209 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:28:56,214.214 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:28:56,221.221 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:28:58,260.260 INFO    ] ================================================
[2026-08-31 23:28:58,275.275 INFO    ] Launching Daemon at Mon Aug 31 23:28:58 IST 2026
[2026-08-31 23:28:58,285.285 INFO    ] ================================================
[2026-08-31 23:28:58,958.958 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:28:58
[2026-08-31 23:28:59,562.562 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:28:59,833.833 INFO    ] Initializing speech engine...
[2026-08-31 23:28:59,842.842 INFO    ] 2026-08-31 23:28:59
[2026-08-31 23:29:00,093.093 INFO    ] 2026-08-31 23:29:00
[2026-08-31 23:29:00,130.130 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:29:00,306.306 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:29:00,319.319 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:29:00,467.467 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:29:00,472.472 INFO    ] time= 31/08/2026 23:29:00
[2026-08-31 23:29:00,480.480 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:29:00,529.529 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:29:00,662.662 INFO    ] No existing commands found in stream
[2026-08-31 23:29:05,683.683 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:29:05,686.686 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-08-31 23:29:06,999.999 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 23:29:07,002.002 INFO    ] Checking for system updates...
[2026-08-31 23:29:07,042.042 INFO    ] 200
[2026-08-31 23:29:07,044.044 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:29:07,108.108 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:29:07,111.111 INFO    ] No update needed
[2026-08-31 23:29:07,113.113 INFO    ] Checking for camera pi updates...
[2026-08-31 23:29:07,146.146 INFO    ] 200
[2026-08-31 23:29:07,149.149 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:29:07,189.189 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:29:07,267.267 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:29:07,270.270 INFO    ] No camera update needed
[2026-08-31 23:29:07,272.272 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:29:07,274.274 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:29:07,280.280 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:29:07,284.284 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:29:09,328.328 INFO    ] ================================================
[2026-08-31 23:29:09,343.343 INFO    ] Launching Daemon at Mon Aug 31 23:29:09 IST 2026
[2026-08-31 23:29:09,353.353 INFO    ] ================================================
[2026-08-31 23:29:09,984.984 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:29:09
[2026-08-31 23:29:10,580.580 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:29:10,856.856 INFO    ] Initializing speech engine...
[2026-08-31 23:29:10,861.861 INFO    ] 2026-08-31 23:29:10
[2026-08-31 23:29:11,122.122 INFO    ] 2026-08-31 23:29:11
[2026-08-31 23:29:11,176.176 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:29:11,402.402 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:29:11,408.408 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:29:11,613.613 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:29:11,661.661 INFO    ] time= 31/08/2026 23:29:11
[2026-08-31 23:29:11,667.667 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:29:11,683.683 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:29:11,795.795 INFO    ] No existing commands found in stream
[2026-08-31 23:29:16,822.822 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:29:16,825.825 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-08-31 23:29:17,525.525 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 23:29:17,528.528 INFO    ] Checking for system updates...
[2026-08-31 23:29:17,569.569 INFO    ] 200
[2026-08-31 23:29:17,571.571 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:29:17,631.631 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:29:17,634.634 INFO    ] No update needed
[2026-08-31 23:29:17,636.636 INFO    ] Checking for camera pi updates...
[2026-08-31 23:29:17,671.671 INFO    ] 200
[2026-08-31 23:29:17,673.673 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:29:17,714.714 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:29:17,816.816 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:29:17,818.818 INFO    ] No camera update needed
[2026-08-31 23:29:17,821.821 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:29:17,823.823 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:29:17,828.828 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:29:17,833.833 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:29:19,874.874 INFO    ] ================================================
[2026-08-31 23:29:19,889.889 INFO    ] Launching Daemon at Mon Aug 31 23:29:19 IST 2026
[2026-08-31 23:29:19,900.900 INFO    ] ================================================
[2026-08-31 23:29:20,479.479 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:29:20
[2026-08-31 23:29:21,077.077 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:29:21,354.354 INFO    ] Initializing speech engine...
[2026-08-31 23:29:21,360.360 INFO    ] 2026-08-31 23:29:21
[2026-08-31 23:29:21,623.623 INFO    ] 2026-08-31 23:29:21
[2026-08-31 23:29:21,678.678 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:29:21,904.904 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:29:21,910.910 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:29:22,040.040 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:29:22,087.087 INFO    ] time= 31/08/2026 23:29:22
[2026-08-31 23:29:22,141.141 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:29:22,175.175 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:29:22,302.302 INFO    ] No existing commands found in stream
[2026-08-31 23:29:27,327.327 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:29:27,330.330 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-08-31 23:29:31,118.118 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 23:29:31,121.121 INFO    ] Checking for system updates...
[2026-08-31 23:29:31,158.158 INFO    ] 200
[2026-08-31 23:29:31,160.160 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:29:31,214.214 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:29:31,217.217 INFO    ] No update needed
[2026-08-31 23:29:31,220.220 INFO    ] Checking for camera pi updates...
[2026-08-31 23:29:31,259.259 INFO    ] 200
[2026-08-31 23:29:31,261.261 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:29:31,302.302 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:29:31,484.484 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:29:31,487.487 INFO    ] No camera update needed
[2026-08-31 23:29:31,489.489 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:29:31,492.492 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:29:31,497.497 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:29:31,502.502 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:29:33,544.544 INFO    ] ================================================
[2026-08-31 23:29:33,560.560 INFO    ] Launching Daemon at Mon Aug 31 23:29:33 IST 2026
[2026-08-31 23:29:33,571.571 INFO    ] ================================================
[2026-08-31 23:29:34,136.136 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:29:34
[2026-08-31 23:29:34,755.755 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:29:35,027.027 INFO    ] Initializing speech engine...
[2026-08-31 23:29:35,037.037 INFO    ] 2026-08-31 23:29:35
[2026-08-31 23:29:35,285.285 INFO    ] 2026-08-31 23:29:35
[2026-08-31 23:29:35,319.319 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:29:35,570.570 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:29:35,580.580 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:29:35,791.791 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:29:35,836.836 INFO    ] time= 31/08/2026 23:29:35
[2026-08-31 23:29:35,843.843 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:29:35,859.859 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:29:35,971.971 INFO    ] No existing commands found in stream
[2026-08-31 23:29:40,998.998 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:29:41,001.001 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-08-31 23:29:42,888.888 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 23:29:42,891.891 INFO    ] Checking for system updates...
[2026-08-31 23:29:42,931.931 INFO    ] 200
[2026-08-31 23:29:42,933.933 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:29:42,993.993 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:29:42,995.995 INFO    ] No update needed
[2026-08-31 23:29:42,998.998 INFO    ] Checking for camera pi updates...
[2026-08-31 23:29:43,036.036 INFO    ] 200
[2026-08-31 23:29:43,039.039 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:29:43,080.080 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:29:43,161.161 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:29:43,164.164 INFO    ] No camera update needed
[2026-08-31 23:29:43,166.166 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:29:43,169.169 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:29:43,175.175 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:29:43,180.180 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:29:45,223.223 INFO    ] ================================================
[2026-08-31 23:29:45,238.238 INFO    ] Launching Daemon at Mon Aug 31 23:29:45 IST 2026
[2026-08-31 23:29:45,249.249 INFO    ] ================================================
[2026-08-31 23:29:45,815.815 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:29:45
[2026-08-31 23:29:46,398.398 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:29:46,647.647 INFO    ] Initializing speech engine...
[2026-08-31 23:29:46,668.668 INFO    ] 2026-08-31 23:29:46
[2026-08-31 23:29:46,928.928 INFO    ] 2026-08-31 23:29:46
[2026-08-31 23:29:46,962.962 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:29:47,139.139 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:29:47,150.150 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:29:47,299.299 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:29:47,304.304 INFO    ] time= 31/08/2026 23:29:47
[2026-08-31 23:29:47,310.310 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:29:47,346.346 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:29:47,481.481 INFO    ] No existing commands found in stream
[2026-08-31 23:29:52,511.511 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:29:52,514.514 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-08-31 23:29:55,439.439 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 23:29:55,442.442 INFO    ] Checking for system updates...
[2026-08-31 23:29:55,482.482 INFO    ] 200
[2026-08-31 23:29:55,484.484 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:29:55,544.544 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:29:55,547.547 INFO    ] No update needed
[2026-08-31 23:29:55,549.549 INFO    ] Checking for camera pi updates...
[2026-08-31 23:29:55,587.587 INFO    ] 200
[2026-08-31 23:29:55,590.590 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:29:55,643.643 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:29:55,723.723 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:29:55,725.725 INFO    ] No camera update needed
[2026-08-31 23:29:55,728.728 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:29:55,730.730 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:29:55,735.735 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:29:55,741.741 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:29:57,781.781 INFO    ] ================================================
[2026-08-31 23:29:57,796.796 INFO    ] Launching Daemon at Mon Aug 31 23:29:57 IST 2026
[2026-08-31 23:29:57,806.806 INFO    ] ================================================
[2026-08-31 23:29:58,469.469 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:29:58
[2026-08-31 23:29:59,100.100 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:29:59,369.369 INFO    ] Initializing speech engine...
[2026-08-31 23:29:59,378.378 INFO    ] 2026-08-31 23:29:59
[2026-08-31 23:29:59,647.647 INFO    ] 2026-08-31 23:29:59
[2026-08-31 23:29:59,704.704 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:29:59,935.935 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:29:59,956.956 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:30:00,181.181 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:30:00,198.198 INFO    ] time= 31/08/2026 23:30:00
[2026-08-31 23:30:00,216.216 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:30:00,226.226 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:30:00,379.379 INFO    ] No existing commands found in stream
[2026-08-31 23:30:05,410.410 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:30:05,413.413 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-08-31 23:30:06,493.493 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 23:30:06,497.497 INFO    ] Checking for system updates...
[2026-08-31 23:30:06,536.536 INFO    ] 200
[2026-08-31 23:30:06,540.540 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:30:06,598.598 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:30:06,601.601 INFO    ] No update needed
[2026-08-31 23:30:06,604.604 INFO    ] Checking for camera pi updates...
[2026-08-31 23:30:06,647.647 INFO    ] 200
[2026-08-31 23:30:06,651.651 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:30:06,714.714 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:30:06,812.812 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:30:06,816.816 INFO    ] No camera update needed
[2026-08-31 23:30:06,819.819 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:30:06,822.822 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:30:06,830.830 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:30:06,836.836 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:30:08,881.881 INFO    ] ================================================
[2026-08-31 23:30:08,896.896 INFO    ] Launching Daemon at Mon Aug 31 23:30:08 IST 2026
[2026-08-31 23:30:08,907.907 INFO    ] ================================================
[2026-08-31 23:30:09,494.494 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:30:09
[2026-08-31 23:30:10,101.101 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:30:10,380.380 INFO    ] Initializing speech engine...
[2026-08-31 23:30:10,388.388 INFO    ] 2026-08-31 23:30:10
[2026-08-31 23:30:10,649.649 INFO    ] 2026-08-31 23:30:10
[2026-08-31 23:30:10,703.703 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:30:10,932.932 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:30:10,937.937 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:30:11,152.152 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:30:11,195.195 INFO    ] time= 31/08/2026 23:30:11
[2026-08-31 23:30:11,201.201 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:30:11,219.219 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:30:11,389.389 INFO    ] No existing commands found in stream
[2026-08-31 23:30:16,414.414 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:30:16,417.417 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-08-31 23:30:19,322.322 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 23:30:19,324.324 INFO    ] Checking for system updates...
[2026-08-31 23:30:19,366.366 INFO    ] 200
[2026-08-31 23:30:19,369.369 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:30:19,434.434 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:30:19,437.437 INFO    ] No update needed
[2026-08-31 23:30:19,439.439 INFO    ] Checking for camera pi updates...
[2026-08-31 23:30:19,477.477 INFO    ] 200
[2026-08-31 23:30:19,479.479 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:30:19,526.526 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:30:19,608.608 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:30:19,611.611 INFO    ] No camera update needed
[2026-08-31 23:30:19,613.613 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:30:19,615.615 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:30:19,621.621 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:30:19,626.626 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:30:21,667.667 INFO    ] ================================================
[2026-08-31 23:30:21,683.683 INFO    ] Launching Daemon at Mon Aug 31 23:30:21 IST 2026
[2026-08-31 23:30:21,694.694 INFO    ] ================================================
[2026-08-31 23:30:22,260.260 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:30:22
[2026-08-31 23:30:22,842.842 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:30:23,093.093 INFO    ] Initializing speech engine...
[2026-08-31 23:30:23,113.113 INFO    ] 2026-08-31 23:30:23
[2026-08-31 23:30:23,374.374 INFO    ] 2026-08-31 23:30:23
[2026-08-31 23:30:23,409.409 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:30:23,672.672 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:30:23,676.676 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:30:23,814.814 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:30:23,883.883 INFO    ] time= 31/08/2026 23:30:23
[2026-08-31 23:30:23,944.944 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:30:23,951.951 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:30:24,079.079 INFO    ] No existing commands found in stream
[2026-08-31 23:30:29,104.104 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:30:29,106.106 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-08-31 23:30:32,038.038 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 23:30:32,041.041 INFO    ] Checking for system updates...
[2026-08-31 23:30:32,077.077 INFO    ] 200
[2026-08-31 23:30:32,080.080 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:30:32,133.133 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:30:32,135.135 INFO    ] No update needed
[2026-08-31 23:30:32,137.137 INFO    ] Checking for camera pi updates...
[2026-08-31 23:30:32,171.171 INFO    ] 200
[2026-08-31 23:30:32,173.173 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:30:32,219.219 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:30:32,273.273 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:30:32,276.276 INFO    ] No camera update needed
[2026-08-31 23:30:32,280.280 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:30:32,283.283 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:30:32,290.290 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:30:32,295.295 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:30:34,339.339 INFO    ] ================================================
[2026-08-31 23:30:34,354.354 INFO    ] Launching Daemon at Mon Aug 31 23:30:34 IST 2026
[2026-08-31 23:30:34,365.365 INFO    ] ================================================
[2026-08-31 23:30:34,947.947 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:30:34
[2026-08-31 23:30:35,547.547 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:30:35,820.820 INFO    ] Initializing speech engine...
[2026-08-31 23:30:35,830.830 INFO    ] 2026-08-31 23:30:35
[2026-08-31 23:30:36,078.078 INFO    ] 2026-08-31 23:30:36
[2026-08-31 23:30:36,114.114 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:30:36,432.432 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:30:36,437.437 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:30:36,629.629 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:30:36,659.659 INFO    ] time= 31/08/2026 23:30:36
[2026-08-31 23:30:36,665.665 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:30:36,685.685 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:30:36,793.793 INFO    ] No existing commands found in stream
[2026-08-31 23:30:41,816.816 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:30:41,820.820 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-08-31 23:30:45,034.034 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 23:30:45,037.037 INFO    ] Checking for system updates...
[2026-08-31 23:30:45,073.073 INFO    ] 200
[2026-08-31 23:30:45,075.075 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:30:45,134.134 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:30:45,137.137 INFO    ] No update needed
[2026-08-31 23:30:45,139.139 INFO    ] Checking for camera pi updates...
[2026-08-31 23:30:45,174.174 INFO    ] 200
[2026-08-31 23:30:45,176.176 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:30:45,216.216 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:30:45,296.296 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:30:45,299.299 INFO    ] No camera update needed
[2026-08-31 23:30:45,301.301 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:30:45,304.304 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:30:45,309.309 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:30:45,314.314 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:30:47,354.354 INFO    ] ================================================
[2026-08-31 23:30:47,370.370 INFO    ] Launching Daemon at Mon Aug 31 23:30:47 IST 2026
[2026-08-31 23:30:47,380.380 INFO    ] ================================================
[2026-08-31 23:30:47,952.952 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:30:47
[2026-08-31 23:30:48,543.543 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:30:48,824.824 INFO    ] Initializing speech engine...
[2026-08-31 23:30:48,837.837 INFO    ] 2026-08-31 23:30:48
[2026-08-31 23:30:49,110.110 INFO    ] 2026-08-31 23:30:49
[2026-08-31 23:30:49,149.149 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:30:49,349.349 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:30:49,364.364 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:30:49,508.508 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:30:49,530.530 INFO    ] time= 31/08/2026 23:30:49
[2026-08-31 23:30:49,539.539 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:30:49,546.546 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:30:49,623.623 INFO    ] No existing commands found in stream
[2026-08-31 23:30:54,658.658 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:30:54,661.661 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-08-31 23:30:55,314.314 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 23:30:55,317.317 INFO    ] Checking for system updates...
[2026-08-31 23:30:55,354.354 INFO    ] 200
[2026-08-31 23:30:55,356.356 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:30:55,417.417 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:30:55,419.419 INFO    ] No update needed
[2026-08-31 23:30:55,422.422 INFO    ] Checking for camera pi updates...
[2026-08-31 23:30:55,459.459 INFO    ] 200
[2026-08-31 23:30:55,461.461 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:30:55,506.506 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:30:55,587.587 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:30:55,590.590 INFO    ] No camera update needed
[2026-08-31 23:30:55,592.592 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:30:55,594.594 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:30:55,600.600 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:30:55,605.605 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:30:57,645.645 INFO    ] ================================================
[2026-08-31 23:30:57,660.660 INFO    ] Launching Daemon at Mon Aug 31 23:30:57 IST 2026
[2026-08-31 23:30:57,671.671 INFO    ] ================================================
[2026-08-31 23:30:58,238.238 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:30:58
[2026-08-31 23:30:58,846.846 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:30:59,148.148 INFO    ] Initializing speech engine...
[2026-08-31 23:30:59,162.162 INFO    ] 2026-08-31 23:30:59
[2026-08-31 23:30:59,432.432 INFO    ] 2026-08-31 23:30:59
[2026-08-31 23:30:59,488.488 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:30:59,736.736 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:30:59,772.772 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:30:59,971.971 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:30:59,979.979 INFO    ] time= 31/08/2026 23:30:59
[2026-08-31 23:31:00,000.000 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:31:00,028.028 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:31:00,158.158 INFO    ] No existing commands found in stream
[2026-08-31 23:31:05,194.194 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:31:05,197.197 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-08-31 23:31:05,764.764 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 23:31:05,767.767 INFO    ] Checking for system updates...
[2026-08-31 23:31:05,803.803 INFO    ] 200
[2026-08-31 23:31:05,806.806 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:31:05,859.859 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:31:05,861.861 INFO    ] No update needed
[2026-08-31 23:31:05,864.864 INFO    ] Checking for camera pi updates...
[2026-08-31 23:31:05,901.901 INFO    ] 200
[2026-08-31 23:31:05,904.904 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:31:05,950.950 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:31:06,033.033 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:31:06,035.035 INFO    ] No camera update needed
[2026-08-31 23:31:06,038.038 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:31:06,041.041 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:31:06,046.046 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:31:06,052.052 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:31:08,093.093 INFO    ] ================================================
[2026-08-31 23:31:08,108.108 INFO    ] Launching Daemon at Mon Aug 31 23:31:08 IST 2026
[2026-08-31 23:31:08,118.118 INFO    ] ================================================
[2026-08-31 23:31:08,702.702 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:31:08
[2026-08-31 23:31:09,302.302 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:31:09,574.574 INFO    ] Initializing speech engine...
[2026-08-31 23:31:09,594.594 INFO    ] 2026-08-31 23:31:09
[2026-08-31 23:31:09,864.864 INFO    ] 2026-08-31 23:31:09
[2026-08-31 23:31:09,902.902 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:31:10,099.099 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:31:10,112.112 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:31:10,270.270 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:31:10,279.279 INFO    ] time= 31/08/2026 23:31:10
[2026-08-31 23:31:10,284.284 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:31:10,290.290 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:31:10,362.362 INFO    ] No existing commands found in stream
[2026-08-31 23:31:15,375.375 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:31:15,378.378 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-08-31 23:31:18,510.510 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 23:31:18,513.513 INFO    ] Checking for system updates...
[2026-08-31 23:31:18,552.552 INFO    ] 200
[2026-08-31 23:31:18,554.554 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:31:18,608.608 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:31:18,610.610 INFO    ] No update needed
[2026-08-31 23:31:18,613.613 INFO    ] Checking for camera pi updates...
[2026-08-31 23:31:18,646.646 INFO    ] 200
[2026-08-31 23:31:18,649.649 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:31:18,690.690 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:31:18,774.774 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:31:18,776.776 INFO    ] No camera update needed
[2026-08-31 23:31:18,779.779 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:31:18,781.781 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:31:18,787.787 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:31:18,792.792 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:31:20,833.833 INFO    ] ================================================
[2026-08-31 23:31:20,849.849 INFO    ] Launching Daemon at Mon Aug 31 23:31:20 IST 2026
[2026-08-31 23:31:20,859.859 INFO    ] ================================================
[2026-08-31 23:31:21,439.439 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:31:21
[2026-08-31 23:31:22,038.038 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:31:22,295.295 INFO    ] Initializing speech engine...
[2026-08-31 23:31:22,303.303 INFO    ] 2026-08-31 23:31:22
[2026-08-31 23:31:22,598.598 INFO    ] 2026-08-31 23:31:22
[2026-08-31 23:31:22,637.637 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:31:22,859.859 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:31:22,908.908 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:31:23,081.081 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:31:23,113.113 INFO    ] time= 31/08/2026 23:31:23
[2026-08-31 23:31:23,157.157 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:31:23,196.196 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:31:23,286.286 INFO    ] No existing commands found in stream
[2026-08-31 23:31:28,299.299 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:31:28,302.302 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-08-31 23:31:29,800.800 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 23:31:29,803.803 INFO    ] Checking for system updates...
[2026-08-31 23:31:29,841.841 INFO    ] 200
[2026-08-31 23:31:29,844.844 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:31:29,905.905 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:31:29,908.908 INFO    ] No update needed
[2026-08-31 23:31:29,910.910 INFO    ] Checking for camera pi updates...
[2026-08-31 23:31:29,951.951 INFO    ] 200
[2026-08-31 23:31:29,953.953 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:31:29,997.997 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:31:30,102.102 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:31:30,104.104 INFO    ] No camera update needed
[2026-08-31 23:31:30,107.107 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:31:30,109.109 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:31:30,115.115 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:31:30,120.120 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:31:32,162.162 INFO    ] ================================================
[2026-08-31 23:31:32,178.178 INFO    ] Launching Daemon at Mon Aug 31 23:31:32 IST 2026
[2026-08-31 23:31:32,190.190 INFO    ] ================================================
[2026-08-31 23:31:32,805.805 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:31:32
[2026-08-31 23:31:33,395.395 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:31:33,654.654 INFO    ] Initializing speech engine...
[2026-08-31 23:31:33,668.668 INFO    ] 2026-08-31 23:31:33
[2026-08-31 23:31:33,924.924 INFO    ] 2026-08-31 23:31:33
[2026-08-31 23:31:33,958.958 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:31:34,156.156 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:31:34,195.195 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:31:34,359.359 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:31:34,402.402 INFO    ] time= 31/08/2026 23:31:34
[2026-08-31 23:31:34,441.441 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:31:34,485.485 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:31:34,625.625 INFO    ] No existing commands found in stream
[2026-08-31 23:31:39,650.650 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:31:39,653.653 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-08-31 23:31:41,559.559 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 23:31:41,562.562 INFO    ] Checking for system updates...
[2026-08-31 23:31:41,598.598 INFO    ] 200
[2026-08-31 23:31:41,600.600 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:31:41,652.652 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:31:41,655.655 INFO    ] No update needed
[2026-08-31 23:31:41,657.657 INFO    ] Checking for camera pi updates...
[2026-08-31 23:31:41,691.691 INFO    ] 200
[2026-08-31 23:31:41,693.693 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:31:41,733.733 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:31:41,813.813 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:31:41,815.815 INFO    ] No camera update needed
[2026-08-31 23:31:41,817.817 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:31:41,820.820 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:31:41,825.825 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:31:41,830.830 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:31:43,871.871 INFO    ] ================================================
[2026-08-31 23:31:43,886.886 INFO    ] Launching Daemon at Mon Aug 31 23:31:43 IST 2026
[2026-08-31 23:31:43,896.896 INFO    ] ================================================
[2026-08-31 23:31:44,541.541 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:31:44
[2026-08-31 23:31:45,206.206 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:31:45,508.508 INFO    ] Initializing speech engine...
[2026-08-31 23:31:45,516.516 INFO    ] 2026-08-31 23:31:45
[2026-08-31 23:31:45,788.788 INFO    ] 2026-08-31 23:31:45
[2026-08-31 23:31:45,849.849 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:31:46,084.084 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:31:46,091.091 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:31:46,224.224 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:31:46,273.273 INFO    ] time= 31/08/2026 23:31:46
[2026-08-31 23:31:46,328.328 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:31:46,363.363 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:31:46,513.513 INFO    ] No existing commands found in stream
[2026-08-31 23:31:51,528.528 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:31:51,531.531 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-08-31 23:31:54,758.758 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 23:31:54,761.761 INFO    ] Checking for system updates...
[2026-08-31 23:31:54,796.796 INFO    ] 200
[2026-08-31 23:31:54,798.798 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:31:54,851.851 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:31:54,853.853 INFO    ] No update needed
[2026-08-31 23:31:54,856.856 INFO    ] Checking for camera pi updates...
[2026-08-31 23:31:54,889.889 INFO    ] 200
[2026-08-31 23:31:54,892.892 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:31:54,933.933 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:31:55,013.013 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:31:55,015.015 INFO    ] No camera update needed
[2026-08-31 23:31:55,021.021 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:31:55,023.023 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:31:55,028.028 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:31:55,034.034 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:31:57,074.074 INFO    ] ================================================
[2026-08-31 23:31:57,090.090 INFO    ] Launching Daemon at Mon Aug 31 23:31:57 IST 2026
[2026-08-31 23:31:57,101.101 INFO    ] ================================================
[2026-08-31 23:31:57,686.686 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:31:57
[2026-08-31 23:31:58,288.288 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:31:58,567.567 INFO    ] Initializing speech engine...
[2026-08-31 23:31:58,572.572 INFO    ] 2026-08-31 23:31:58
[2026-08-31 23:31:58,829.829 INFO    ] 2026-08-31 23:31:58
[2026-08-31 23:31:58,888.888 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:31:59,111.111 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:31:59,121.121 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:31:59,252.252 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:31:59,304.304 INFO    ] time= 31/08/2026 23:31:59
[2026-08-31 23:31:59,354.354 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:31:59,387.387 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:31:59,521.521 INFO    ] No existing commands found in stream
[2026-08-31 23:32:04,543.543 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:32:04,546.546 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-08-31 23:32:07,031.031 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 23:32:07,034.034 INFO    ] Checking for system updates...
[2026-08-31 23:32:07,072.072 INFO    ] 200
[2026-08-31 23:32:07,075.075 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:32:07,132.132 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:32:07,135.135 INFO    ] No update needed
[2026-08-31 23:32:07,137.137 INFO    ] Checking for camera pi updates...
[2026-08-31 23:32:07,171.171 INFO    ] 200
[2026-08-31 23:32:07,174.174 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:32:07,218.218 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:32:07,306.306 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:32:07,308.308 INFO    ] No camera update needed
[2026-08-31 23:32:07,311.311 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:32:07,313.313 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:32:07,319.319 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:32:07,324.324 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:32:09,364.364 INFO    ] ================================================
[2026-08-31 23:32:09,380.380 INFO    ] Launching Daemon at Mon Aug 31 23:32:09 IST 2026
[2026-08-31 23:32:09,390.390 INFO    ] ================================================
[2026-08-31 23:32:09,957.957 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:32:09
[2026-08-31 23:32:10,543.543 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:32:10,814.814 INFO    ] Initializing speech engine...
[2026-08-31 23:32:10,823.823 INFO    ] 2026-08-31 23:32:10
[2026-08-31 23:32:11,073.073 INFO    ] 2026-08-31 23:32:11
[2026-08-31 23:32:11,108.108 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:32:11,314.314 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:32:11,345.345 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:32:11,542.542 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:32:11,560.560 INFO    ] time= 31/08/2026 23:32:11
[2026-08-31 23:32:11,630.630 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:32:11,683.683 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:32:11,738.738 INFO    ] No existing commands found in stream
[2026-08-31 23:32:16,750.750 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:32:16,752.752 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-08-31 23:32:20,103.103 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 23:32:20,105.105 INFO    ] Checking for system updates...
[2026-08-31 23:32:20,145.145 INFO    ] 200
[2026-08-31 23:32:20,148.148 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:32:20,213.213 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:32:20,215.215 INFO    ] No update needed
[2026-08-31 23:32:20,218.218 INFO    ] Checking for camera pi updates...
[2026-08-31 23:32:20,252.252 INFO    ] 200
[2026-08-31 23:32:20,254.254 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:32:20,295.295 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:32:20,386.386 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:32:20,388.388 INFO    ] No camera update needed
[2026-08-31 23:32:20,391.391 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:32:20,393.393 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:32:20,398.398 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:32:20,403.403 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:32:22,443.443 INFO    ] ================================================
[2026-08-31 23:32:22,458.458 INFO    ] Launching Daemon at Mon Aug 31 23:32:22 IST 2026
[2026-08-31 23:32:22,468.468 INFO    ] ================================================
[2026-08-31 23:32:23,035.035 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:32:23
[2026-08-31 23:32:23,620.620 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:32:23,869.869 INFO    ] Initializing speech engine...
[2026-08-31 23:32:23,892.892 INFO    ] 2026-08-31 23:32:23
[2026-08-31 23:32:24,143.143 INFO    ] 2026-08-31 23:32:24
[2026-08-31 23:32:24,178.178 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:32:24,390.390 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:32:24,451.451 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:32:24,595.595 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:32:24,648.648 INFO    ] time= 31/08/2026 23:32:24
[2026-08-31 23:32:24,698.698 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:32:24,751.751 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:32:24,876.876 INFO    ] No existing commands found in stream
[2026-08-31 23:32:29,903.903 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:32:29,906.906 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-08-31 23:32:32,342.342 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 23:32:32,345.345 INFO    ] Checking for system updates...
[2026-08-31 23:32:32,387.387 INFO    ] 200
[2026-08-31 23:32:32,390.390 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:32:32,465.465 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:32:32,468.468 INFO    ] No update needed
[2026-08-31 23:32:32,472.472 INFO    ] Checking for camera pi updates...
[2026-08-31 23:32:32,521.521 INFO    ] 200
[2026-08-31 23:32:32,524.524 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:32:32,577.577 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:32:32,705.705 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:32:32,708.708 INFO    ] No camera update needed
[2026-08-31 23:32:32,711.711 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:32:32,714.714 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:32:32,722.722 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:32:32,729.729 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:32:34,771.771 INFO    ] ================================================
[2026-08-31 23:32:34,787.787 INFO    ] Launching Daemon at Mon Aug 31 23:32:34 IST 2026
[2026-08-31 23:32:34,798.798 INFO    ] ================================================
[2026-08-31 23:32:35,409.409 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:32:35
[2026-08-31 23:32:36,042.042 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:32:36,322.322 INFO    ] Initializing speech engine...
[2026-08-31 23:32:36,330.330 INFO    ] 2026-08-31 23:32:36
[2026-08-31 23:32:36,644.644 INFO    ] 2026-08-31 23:32:36
[2026-08-31 23:32:36,685.685 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:32:36,901.901 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:32:36,915.915 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:32:37,080.080 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:32:37,089.089 INFO    ] time= 31/08/2026 23:32:37
[2026-08-31 23:32:37,095.095 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:32:37,131.131 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:32:37,244.244 INFO    ] No existing commands found in stream
[2026-08-31 23:32:42,270.270 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:32:42,273.273 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-08-31 23:32:45,726.726 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 23:32:45,729.729 INFO    ] Checking for system updates...
[2026-08-31 23:32:45,765.765 INFO    ] 200
[2026-08-31 23:32:45,767.767 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:32:45,821.821 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:32:45,823.823 INFO    ] No update needed
[2026-08-31 23:32:45,826.826 INFO    ] Checking for camera pi updates...
[2026-08-31 23:32:45,859.859 INFO    ] 200
[2026-08-31 23:32:45,862.862 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:32:45,902.902 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:32:45,985.985 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:32:45,988.988 INFO    ] No camera update needed
[2026-08-31 23:32:45,990.990 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:32:45,992.992 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:32:45,998.998 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:32:46,003.003 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:32:48,043.043 INFO    ] ================================================
[2026-08-31 23:32:48,058.058 INFO    ] Launching Daemon at Mon Aug 31 23:32:48 IST 2026
[2026-08-31 23:32:48,069.069 INFO    ] ================================================
[2026-08-31 23:32:48,654.654 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:32:48
[2026-08-31 23:32:49,255.255 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:32:49,528.528 INFO    ] Initializing speech engine...
[2026-08-31 23:32:49,539.539 INFO    ] 2026-08-31 23:32:49
[2026-08-31 23:32:49,787.787 INFO    ] 2026-08-31 23:32:49
[2026-08-31 23:32:49,822.822 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:32:50,020.020 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:32:50,078.078 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:32:50,219.219 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:32:50,285.285 INFO    ] time= 31/08/2026 23:32:50
[2026-08-31 23:32:50,349.349 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:32:50,355.355 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:32:50,502.502 INFO    ] No existing commands found in stream
[2026-08-31 23:32:55,524.524 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:32:55,527.527 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-08-31 23:32:57,865.865 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 23:32:57,868.868 INFO    ] Checking for system updates...
[2026-08-31 23:32:57,908.908 INFO    ] 200
[2026-08-31 23:32:57,910.910 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:32:57,962.962 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:32:57,965.965 INFO    ] No update needed
[2026-08-31 23:32:57,967.967 INFO    ] Checking for camera pi updates...
[2026-08-31 23:32:58,004.004 INFO    ] 200
[2026-08-31 23:32:58,007.007 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:32:58,053.053 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:32:58,144.144 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:32:58,147.147 INFO    ] No camera update needed
[2026-08-31 23:32:58,149.149 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:32:58,152.152 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:32:58,157.157 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:32:58,162.162 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:33:00,203.203 INFO    ] ================================================
[2026-08-31 23:33:00,219.219 INFO    ] Launching Daemon at Mon Aug 31 23:33:00 IST 2026
[2026-08-31 23:33:00,229.229 INFO    ] ================================================
[2026-08-31 23:33:00,815.815 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:33:00
[2026-08-31 23:33:01,415.415 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:33:02,074.074 INFO    ] Initializing speech engine...
[2026-08-31 23:33:02,098.098 INFO    ] 2026-08-31 23:33:02
[2026-08-31 23:33:02,458.458 INFO    ] 2026-08-31 23:33:02
[2026-08-31 23:33:02,532.532 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:33:02,693.693 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:33:02,738.738 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:33:02,941.941 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:33:03,002.002 INFO    ] time= 31/08/2026 23:33:02
[2026-08-31 23:33:03,042.042 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:33:03,115.115 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:33:03,259.259 INFO    ] No existing commands found in stream
[2026-08-31 23:33:08,290.290 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:33:08,292.292 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-08-31 23:33:12,683.683 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 23:33:12,685.685 INFO    ] Checking for system updates...
[2026-08-31 23:33:12,722.722 INFO    ] 200
[2026-08-31 23:33:12,725.725 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:33:12,778.778 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:33:12,781.781 INFO    ] No update needed
[2026-08-31 23:33:12,783.783 INFO    ] Checking for camera pi updates...
[2026-08-31 23:33:12,819.819 INFO    ] 200
[2026-08-31 23:33:12,821.821 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:33:12,863.863 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:33:12,945.945 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:33:12,948.948 INFO    ] No camera update needed
[2026-08-31 23:33:12,950.950 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:33:12,953.953 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:33:12,959.959 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:33:12,965.965 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:33:15,005.005 INFO    ] ================================================
[2026-08-31 23:33:15,021.021 INFO    ] Launching Daemon at Mon Aug 31 23:33:15 IST 2026
[2026-08-31 23:33:15,031.031 INFO    ] ================================================
[2026-08-31 23:33:15,663.663 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:33:15
[2026-08-31 23:33:16,289.289 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:33:16,548.548 INFO    ] Initializing speech engine...
[2026-08-31 23:33:16,557.557 INFO    ] 2026-08-31 23:33:16
[2026-08-31 23:33:16,849.849 INFO    ] 2026-08-31 23:33:16
[2026-08-31 23:33:16,884.884 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:33:17,106.106 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:33:17,165.165 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:33:17,323.323 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:33:17,340.340 INFO    ] time= 31/08/2026 23:33:17
[2026-08-31 23:33:17,404.404 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:33:17,469.469 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:33:17,572.572 INFO    ] No existing commands found in stream
[2026-08-31 23:33:22,602.602 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:33:22,605.605 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-08-31 23:33:25,838.838 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 23:33:25,841.841 INFO    ] Checking for system updates...
[2026-08-31 23:33:25,876.876 INFO    ] 200
[2026-08-31 23:33:25,879.879 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:33:25,931.931 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:33:25,934.934 INFO    ] No update needed
[2026-08-31 23:33:25,937.937 INFO    ] Checking for camera pi updates...
[2026-08-31 23:33:25,979.979 INFO    ] 200
[2026-08-31 23:33:25,981.981 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:33:26,052.052 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:33:26,134.134 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:33:26,136.136 INFO    ] No camera update needed
[2026-08-31 23:33:26,140.140 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:33:26,142.142 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:33:26,149.149 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:33:26,156.156 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:33:28,199.199 INFO    ] ================================================
[2026-08-31 23:33:28,214.214 INFO    ] Launching Daemon at Mon Aug 31 23:33:28 IST 2026
[2026-08-31 23:33:28,226.226 INFO    ] ================================================
[2026-08-31 23:33:28,863.863 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:33:28
[2026-08-31 23:33:29,520.520 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:33:29,819.819 INFO    ] Initializing speech engine...
[2026-08-31 23:33:29,832.832 INFO    ] 2026-08-31 23:33:29
[2026-08-31 23:33:30,110.110 INFO    ] 2026-08-31 23:33:30
[2026-08-31 23:33:30,155.155 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:33:30,382.382 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:33:30,387.387 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:33:30,632.632 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:33:30,651.651 INFO    ] time= 31/08/2026 23:33:30
[2026-08-31 23:33:30,668.668 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:33:30,677.677 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:33:30,827.827 INFO    ] No existing commands found in stream
[2026-08-31 23:33:35,858.858 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:33:35,861.861 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-08-31 23:33:39,236.236 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 23:33:39,239.239 INFO    ] Checking for system updates...
[2026-08-31 23:33:39,275.275 INFO    ] 200
[2026-08-31 23:33:39,278.278 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:33:39,337.337 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:33:39,341.341 INFO    ] No update needed
[2026-08-31 23:33:39,344.344 INFO    ] Checking for camera pi updates...
[2026-08-31 23:33:39,382.382 INFO    ] 200
[2026-08-31 23:33:39,385.385 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:33:39,426.426 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:33:39,624.624 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:33:39,627.627 INFO    ] No camera update needed
[2026-08-31 23:33:39,630.630 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:33:39,633.633 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:33:39,639.639 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:33:39,645.645 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:33:41,685.685 INFO    ] ================================================
[2026-08-31 23:33:41,701.701 INFO    ] Launching Daemon at Mon Aug 31 23:33:41 IST 2026
[2026-08-31 23:33:41,712.712 INFO    ] ================================================
[2026-08-31 23:33:42,294.294 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:33:42
[2026-08-31 23:33:42,893.893 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:33:43,152.152 INFO    ] Initializing speech engine...
[2026-08-31 23:33:43,161.161 INFO    ] 2026-08-31 23:33:43
[2026-08-31 23:33:43,457.457 INFO    ] 2026-08-31 23:33:43
[2026-08-31 23:33:43,493.493 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:33:43,715.715 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:33:43,723.723 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:33:43,941.941 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:33:43,948.948 INFO    ] time= 31/08/2026 23:33:43
[2026-08-31 23:33:44,013.013 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:33:44,073.073 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:33:44,148.148 INFO    ] No existing commands found in stream
[2026-08-31 23:33:49,161.161 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:33:49,164.164 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-08-31 23:33:53,145.145 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 23:33:53,148.148 INFO    ] Checking for system updates...
[2026-08-31 23:33:53,184.184 INFO    ] 200
[2026-08-31 23:33:53,187.187 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:33:53,240.240 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:33:53,243.243 INFO    ] No update needed
[2026-08-31 23:33:53,246.246 INFO    ] Checking for camera pi updates...
[2026-08-31 23:33:53,281.281 INFO    ] 200
[2026-08-31 23:33:53,283.283 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:33:53,324.324 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:33:53,405.405 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:33:53,407.407 INFO    ] No camera update needed
[2026-08-31 23:33:53,410.410 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:33:53,413.413 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:33:53,419.419 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:33:53,425.425 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:33:55,466.466 INFO    ] ================================================
[2026-08-31 23:33:55,482.482 INFO    ] Launching Daemon at Mon Aug 31 23:33:55 IST 2026
[2026-08-31 23:33:55,492.492 INFO    ] ================================================
[2026-08-31 23:33:56,129.129 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:33:56
[2026-08-31 23:33:56,786.786 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:33:57,086.086 INFO    ] Initializing speech engine...
[2026-08-31 23:33:57,100.100 INFO    ] 2026-08-31 23:33:57
[2026-08-31 23:33:57,382.382 INFO    ] 2026-08-31 23:33:57
[2026-08-31 23:33:57,424.424 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:33:57,708.708 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:33:57,713.713 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:33:57,890.890 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:33:57,916.916 INFO    ] time= 31/08/2026 23:33:57
[2026-08-31 23:33:57,934.934 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:33:57,941.941 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:33:58,083.083 INFO    ] No existing commands found in stream
[2026-08-31 23:34:03,120.120 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:34:03,123.123 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-08-31 23:34:07,343.343 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 23:34:07,346.346 INFO    ] Checking for system updates...
[2026-08-31 23:34:07,382.382 INFO    ] 200
[2026-08-31 23:34:07,385.385 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:34:07,439.439 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:34:07,442.442 INFO    ] No update needed
[2026-08-31 23:34:07,445.445 INFO    ] Checking for camera pi updates...
[2026-08-31 23:34:07,480.480 INFO    ] 200
[2026-08-31 23:34:07,482.482 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:34:07,522.522 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:34:07,572.572 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:34:07,574.574 INFO    ] No camera update needed
[2026-08-31 23:34:07,577.577 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:34:07,579.579 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:34:07,584.584 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:34:07,590.590 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:34:09,629.629 INFO    ] ================================================
[2026-08-31 23:34:09,645.645 INFO    ] Launching Daemon at Mon Aug 31 23:34:09 IST 2026
[2026-08-31 23:34:09,656.656 INFO    ] ================================================
[2026-08-31 23:34:10,298.298 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:34:10
[2026-08-31 23:34:10,961.961 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:34:11,260.260 INFO    ] Initializing speech engine...
[2026-08-31 23:34:11,268.268 INFO    ] 2026-08-31 23:34:11
[2026-08-31 23:34:11,543.543 INFO    ] 2026-08-31 23:34:11
[2026-08-31 23:34:11,597.597 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:34:11,884.884 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:34:11,893.893 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:34:12,087.087 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:34:12,105.105 INFO    ] time= 31/08/2026 23:34:12
[2026-08-31 23:34:12,115.115 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:34:12,140.140 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:34:12,247.247 INFO    ] No existing commands found in stream
[2026-08-31 23:34:17,263.263 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:34:17,267.267 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-08-31 23:34:18,959.959 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 23:34:18,962.962 INFO    ] Checking for system updates...
[2026-08-31 23:34:18,999.999 INFO    ] 200
[2026-08-31 23:34:19,002.002 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:34:19,061.061 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:34:19,064.064 INFO    ] No update needed
[2026-08-31 23:34:19,066.066 INFO    ] Checking for camera pi updates...
[2026-08-31 23:34:19,100.100 INFO    ] 200
[2026-08-31 23:34:19,102.102 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:34:19,143.143 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:34:19,207.207 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:34:19,210.210 INFO    ] No camera update needed
[2026-08-31 23:34:19,212.212 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:34:19,214.214 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:34:19,220.220 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:34:19,224.224 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:34:21,265.265 INFO    ] ================================================
[2026-08-31 23:34:21,281.281 INFO    ] Launching Daemon at Mon Aug 31 23:34:21 IST 2026
[2026-08-31 23:34:21,292.292 INFO    ] ================================================
[2026-08-31 23:34:21,931.931 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:34:21
[2026-08-31 23:34:22,591.591 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:34:22,890.890 INFO    ] Initializing speech engine...
[2026-08-31 23:34:22,904.904 INFO    ] 2026-08-31 23:34:22
[2026-08-31 23:34:23,213.213 INFO    ] 2026-08-31 23:34:23
[2026-08-31 23:34:23,298.298 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:34:23,513.513 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:34:23,523.523 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:34:23,714.714 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:34:23,732.732 INFO    ] time= 31/08/2026 23:34:23
[2026-08-31 23:34:23,742.742 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:34:23,770.770 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:34:23,915.915 INFO    ] No existing commands found in stream
[2026-08-31 23:34:28,946.946 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:34:28,950.950 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-08-31 23:34:32,572.572 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 23:34:32,576.576 INFO    ] Checking for system updates...
[2026-08-31 23:34:32,615.615 INFO    ] 200
[2026-08-31 23:34:32,618.618 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:34:32,676.676 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:34:32,679.679 INFO    ] No update needed
[2026-08-31 23:34:32,682.682 INFO    ] Checking for camera pi updates...
[2026-08-31 23:34:32,724.724 INFO    ] 200
[2026-08-31 23:34:32,727.727 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:34:32,784.784 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:34:32,881.881 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:34:32,884.884 INFO    ] No camera update needed
[2026-08-31 23:34:32,887.887 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:34:32,890.890 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:34:32,897.897 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:34:32,903.903 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:34:34,945.945 INFO    ] ================================================
[2026-08-31 23:34:34,961.961 INFO    ] Launching Daemon at Mon Aug 31 23:34:34 IST 2026
[2026-08-31 23:34:34,972.972 INFO    ] ================================================
[2026-08-31 23:34:35,555.555 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:34:35
[2026-08-31 23:34:36,157.157 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:34:36,419.419 INFO    ] Initializing speech engine...
[2026-08-31 23:34:36,435.435 INFO    ] 2026-08-31 23:34:36
[2026-08-31 23:34:36,719.719 INFO    ] 2026-08-31 23:34:36
[2026-08-31 23:34:36,758.758 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:34:36,954.954 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:34:36,970.970 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:34:37,135.135 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:34:37,144.144 INFO    ] time= 31/08/2026 23:34:37
[2026-08-31 23:34:37,174.174 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:34:37,216.216 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:34:37,348.348 INFO    ] No existing commands found in stream
[2026-08-31 23:34:42,369.369 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:34:42,372.372 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-08-31 23:34:45,150.150 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 23:34:45,153.153 INFO    ] Checking for system updates...
[2026-08-31 23:34:45,203.203 INFO    ] 200
[2026-08-31 23:34:45,205.205 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-08-31 23:34:45,208.208 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-08-31 23:34:45,211.211 INFO    ] Checking for camera pi updates...
[2026-08-31 23:34:45,269.269 INFO    ] 200
[2026-08-31 23:34:45,272.272 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-08-31 23:34:45,274.274 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-08-31 23:34:45,277.277 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:34:45,280.280 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:34:45,286.286 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:34:45,292.292 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:34:47,332.332 INFO    ] ================================================
[2026-08-31 23:34:47,348.348 INFO    ] Launching Daemon at Mon Aug 31 23:34:47 IST 2026
[2026-08-31 23:34:47,359.359 INFO    ] ================================================
[2026-08-31 23:34:48,013.013 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:34:48
[2026-08-31 23:34:48,687.687 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:34:48,991.991 INFO    ] Initializing speech engine...
[2026-08-31 23:34:49,000.000 INFO    ] 2026-08-31 23:34:48
[2026-08-31 23:34:49,309.309 INFO    ] 2026-08-31 23:34:49
[2026-08-31 23:34:49,350.350 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:34:49,567.567 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:34:49,594.594 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:34:49,737.737 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:34:49,761.761 INFO    ] time= 31/08/2026 23:34:49
[2026-08-31 23:34:49,822.822 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:34:49,887.887 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:34:50,039.039 INFO    ] No existing commands found in stream
[2026-08-31 23:34:55,055.055 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:34:55,058.058 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-08-31 23:34:57,842.842 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 23:34:57,845.845 INFO    ] Checking for system updates...
[2026-08-31 23:34:57,882.882 INFO    ] 200
[2026-08-31 23:34:57,884.884 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:34:57,941.941 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:34:57,943.943 INFO    ] No update needed
[2026-08-31 23:34:57,946.946 INFO    ] Checking for camera pi updates...
[2026-08-31 23:34:57,983.983 INFO    ] 200
[2026-08-31 23:34:57,985.985 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:34:58,029.029 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:34:58,110.110 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:34:58,112.112 INFO    ] No camera update needed
[2026-08-31 23:34:58,114.114 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:34:58,117.117 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:34:58,122.122 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:34:58,127.127 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:35:00,168.168 INFO    ] ================================================
[2026-08-31 23:35:00,183.183 INFO    ] Launching Daemon at Mon Aug 31 23:35:00 IST 2026
[2026-08-31 23:35:00,195.195 INFO    ] ================================================
[2026-08-31 23:35:00,776.776 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:35:00
[2026-08-31 23:35:01,400.400 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:35:02,050.050 INFO    ] Initializing speech engine...
[2026-08-31 23:35:02,062.062 INFO    ] 2026-08-31 23:35:02
[2026-08-31 23:35:02,407.407 INFO    ] 2026-08-31 23:35:02
[2026-08-31 23:35:02,446.446 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:35:02,658.658 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:35:02,663.663 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:35:02,871.871 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:35:02,879.879 INFO    ] time= 31/08/2026 23:35:02
[2026-08-31 23:35:02,901.901 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:35:02,931.931 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:35:03,025.025 INFO    ] No existing commands found in stream
[2026-08-31 23:35:08,061.061 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:35:08,064.064 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-08-31 23:35:11,402.402 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 23:35:11,404.404 INFO    ] Checking for system updates...
[2026-08-31 23:35:11,440.440 INFO    ] 200
[2026-08-31 23:35:11,442.442 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:35:11,499.499 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:35:11,501.501 INFO    ] No update needed
[2026-08-31 23:35:11,503.503 INFO    ] Checking for camera pi updates...
[2026-08-31 23:35:11,537.537 INFO    ] 200
[2026-08-31 23:35:11,540.540 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:35:11,582.582 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:35:11,677.677 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:35:11,679.679 INFO    ] No camera update needed
[2026-08-31 23:35:11,682.682 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:35:11,684.684 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:35:11,689.689 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:35:11,694.694 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:35:13,735.735 INFO    ] ================================================
[2026-08-31 23:35:13,751.751 INFO    ] Launching Daemon at Mon Aug 31 23:35:13 IST 2026
[2026-08-31 23:35:13,762.762 INFO    ] ================================================
[2026-08-31 23:35:14,327.327 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:35:14
[2026-08-31 23:35:14,910.910 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:35:15,161.161 INFO    ] Initializing speech engine...
[2026-08-31 23:35:15,170.170 INFO    ] 2026-08-31 23:35:15
[2026-08-31 23:35:15,457.457 INFO    ] 2026-08-31 23:35:15
[2026-08-31 23:35:15,494.494 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:35:15,708.708 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:35:15,717.717 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:35:15,854.854 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:35:15,862.862 INFO    ] time= 31/08/2026 23:35:15
[2026-08-31 23:35:15,866.866 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:35:15,873.873 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:35:15,946.946 INFO    ] No existing commands found in stream
[2026-08-31 23:35:20,958.958 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:35:20,960.960 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-08-31 23:35:25,302.302 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 23:35:25,305.305 INFO    ] Checking for system updates...
[2026-08-31 23:35:25,340.340 INFO    ] 200
[2026-08-31 23:35:25,343.343 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:35:25,395.395 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:35:25,397.397 INFO    ] No update needed
[2026-08-31 23:35:25,400.400 INFO    ] Checking for camera pi updates...
[2026-08-31 23:35:25,440.440 INFO    ] 200
[2026-08-31 23:35:25,443.443 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:35:25,486.486 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:35:25,566.566 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:35:25,569.569 INFO    ] No camera update needed
[2026-08-31 23:35:25,571.571 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:35:25,573.573 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:35:25,578.578 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:35:25,583.583 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:35:27,624.624 INFO    ] ================================================
[2026-08-31 23:35:27,640.640 INFO    ] Launching Daemon at Mon Aug 31 23:35:27 IST 2026
[2026-08-31 23:35:27,651.651 INFO    ] ================================================
[2026-08-31 23:35:28,278.278 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:35:28
[2026-08-31 23:35:28,926.926 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:35:29,227.227 INFO    ] Initializing speech engine...
[2026-08-31 23:35:29,238.238 INFO    ] 2026-08-31 23:35:29
[2026-08-31 23:35:29,515.515 INFO    ] 2026-08-31 23:35:29
[2026-08-31 23:35:29,562.562 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:35:29,848.848 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:35:29,856.856 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:35:30,034.034 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:35:30,063.063 INFO    ] time= 31/08/2026 23:35:30
[2026-08-31 23:35:30,080.080 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:35:30,105.105 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:35:30,291.291 INFO    ] No existing commands found in stream
[2026-08-31 23:35:35,322.322 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:35:35,325.325 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-08-31 23:35:38,147.147 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 23:35:38,150.150 INFO    ] Checking for system updates...
[2026-08-31 23:35:38,188.188 INFO    ] 200
[2026-08-31 23:35:38,191.191 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:35:38,243.243 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:35:38,246.246 INFO    ] No update needed
[2026-08-31 23:35:38,248.248 INFO    ] Checking for camera pi updates...
[2026-08-31 23:35:38,286.286 INFO    ] 200
[2026-08-31 23:35:38,289.289 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:35:38,329.329 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:35:38,410.410 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:35:38,412.412 INFO    ] No camera update needed
[2026-08-31 23:35:38,415.415 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:35:38,417.417 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:35:38,424.424 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:35:38,429.429 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:35:40,469.469 INFO    ] ================================================
[2026-08-31 23:35:40,485.485 INFO    ] Launching Daemon at Mon Aug 31 23:35:40 IST 2026
[2026-08-31 23:35:40,496.496 INFO    ] ================================================
[2026-08-31 23:35:41,074.074 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:35:41
[2026-08-31 23:35:41,671.671 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:35:41,946.946 INFO    ] Initializing speech engine...
[2026-08-31 23:35:41,953.953 INFO    ] 2026-08-31 23:35:41
[2026-08-31 23:35:42,212.212 INFO    ] 2026-08-31 23:35:42
[2026-08-31 23:35:42,264.264 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:35:42,487.487 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:35:42,495.495 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:35:42,695.695 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:35:42,753.753 INFO    ] time= 31/08/2026 23:35:42
[2026-08-31 23:35:42,760.760 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:35:42,777.777 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:35:42,899.899 INFO    ] No existing commands found in stream
[2026-08-31 23:35:47,918.918 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:35:47,921.921 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-08-31 23:35:51,036.036 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 23:35:51,042.042 INFO    ] Checking for system updates...
[2026-08-31 23:35:51,082.082 INFO    ] 200
[2026-08-31 23:35:51,084.084 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:35:51,141.141 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:35:51,143.143 INFO    ] No update needed
[2026-08-31 23:35:51,145.145 INFO    ] Checking for camera pi updates...
[2026-08-31 23:35:51,179.179 INFO    ] 200
[2026-08-31 23:35:51,182.182 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:35:51,222.222 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:35:51,402.402 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:35:51,405.405 INFO    ] No camera update needed
[2026-08-31 23:35:51,407.407 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:35:51,410.410 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:35:51,415.415 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:35:51,420.420 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:35:53,460.460 INFO    ] ================================================
[2026-08-31 23:35:53,476.476 INFO    ] Launching Daemon at Mon Aug 31 23:35:53 IST 2026
[2026-08-31 23:35:53,487.487 INFO    ] ================================================
[2026-08-31 23:35:54,062.062 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:35:54
[2026-08-31 23:35:54,647.647 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:35:54,912.912 INFO    ] Initializing speech engine...
[2026-08-31 23:35:54,929.929 INFO    ] 2026-08-31 23:35:54
[2026-08-31 23:35:55,193.193 INFO    ] 2026-08-31 23:35:55
[2026-08-31 23:35:55,230.230 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:35:55,422.422 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:35:55,435.435 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:35:55,591.591 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:35:55,597.597 INFO    ] time= 31/08/2026 23:35:55
[2026-08-31 23:35:55,605.605 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:35:55,650.650 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:35:55,754.754 INFO    ] No existing commands found in stream
[2026-08-31 23:36:00,789.789 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:36:00,792.792 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-08-31 23:36:03,162.162 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 23:36:03,164.164 INFO    ] Checking for system updates...
[2026-08-31 23:36:03,207.207 INFO    ] 200
[2026-08-31 23:36:03,210.210 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:36:03,279.279 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:36:03,285.285 INFO    ] No update needed
[2026-08-31 23:36:03,289.289 INFO    ] Checking for camera pi updates...
[2026-08-31 23:36:03,326.326 INFO    ] 200
[2026-08-31 23:36:03,328.328 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:36:03,373.373 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:36:03,466.466 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:36:03,469.469 INFO    ] No camera update needed
[2026-08-31 23:36:03,471.471 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:36:03,473.473 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:36:03,479.479 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:36:03,484.484 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:36:05,525.525 INFO    ] ================================================
[2026-08-31 23:36:05,541.541 INFO    ] Launching Daemon at Mon Aug 31 23:36:05 IST 2026
[2026-08-31 23:36:05,553.553 INFO    ] ================================================
[2026-08-31 23:36:06,196.196 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:36:06
[2026-08-31 23:36:06,836.836 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:36:07,138.138 INFO    ] Initializing speech engine...
[2026-08-31 23:36:07,146.146 INFO    ] 2026-08-31 23:36:07
[2026-08-31 23:36:07,422.422 INFO    ] 2026-08-31 23:36:07
[2026-08-31 23:36:07,479.479 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:36:07,735.735 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:36:07,745.745 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:36:07,958.958 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:36:07,987.987 INFO    ] time= 31/08/2026 23:36:07
[2026-08-31 23:36:07,994.994 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:36:08,013.013 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:36:08,145.145 INFO    ] No existing commands found in stream
[2026-08-31 23:36:13,161.161 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:36:13,164.164 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-08-31 23:36:15,717.717 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 23:36:15,726.726 INFO    ] Checking for system updates...
[2026-08-31 23:36:15,763.763 INFO    ] 200
[2026-08-31 23:36:15,765.765 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:36:15,817.817 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:36:15,820.820 INFO    ] No update needed
[2026-08-31 23:36:15,822.822 INFO    ] Checking for camera pi updates...
[2026-08-31 23:36:15,855.855 INFO    ] 200
[2026-08-31 23:36:15,858.858 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:36:15,898.898 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:36:15,979.979 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:36:15,982.982 INFO    ] No camera update needed
[2026-08-31 23:36:15,984.984 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:36:15,986.986 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:36:15,992.992 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:36:15,997.997 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:36:18,037.037 INFO    ] ================================================
[2026-08-31 23:36:18,052.052 INFO    ] Launching Daemon at Mon Aug 31 23:36:18 IST 2026
[2026-08-31 23:36:18,062.062 INFO    ] ================================================
[2026-08-31 23:36:18,710.710 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:36:18
[2026-08-31 23:36:19,379.379 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:36:19,682.682 INFO    ] Initializing speech engine...
[2026-08-31 23:36:19,696.696 INFO    ] 2026-08-31 23:36:19
[2026-08-31 23:36:20,007.007 INFO    ] 2026-08-31 23:36:19
[2026-08-31 23:36:20,091.091 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:36:20,300.300 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:36:20,309.309 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:36:20,503.503 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:36:20,510.510 INFO    ] time= 31/08/2026 23:36:20
[2026-08-31 23:36:20,532.532 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:36:20,560.560 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:36:20,660.660 INFO    ] No existing commands found in stream
[2026-08-31 23:36:25,676.676 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:36:25,680.680 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-08-31 23:36:26,749.749 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 23:36:26,752.752 INFO    ] Checking for system updates...
[2026-08-31 23:36:26,793.793 INFO    ] 200
[2026-08-31 23:36:26,796.796 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:36:26,851.851 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:36:26,854.854 INFO    ] No update needed
[2026-08-31 23:36:26,857.857 INFO    ] Checking for camera pi updates...
[2026-08-31 23:36:26,890.890 INFO    ] 200
[2026-08-31 23:36:26,893.893 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:36:26,934.934 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:36:27,027.027 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:36:27,030.030 INFO    ] No camera update needed
[2026-08-31 23:36:27,032.032 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:36:27,034.034 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:36:27,040.040 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:36:27,044.044 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:36:29,083.083 INFO    ] ================================================
[2026-08-31 23:36:29,098.098 INFO    ] Launching Daemon at Mon Aug 31 23:36:29 IST 2026
[2026-08-31 23:36:29,109.109 INFO    ] ================================================
[2026-08-31 23:36:29,672.672 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:36:29
[2026-08-31 23:36:30,274.274 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:36:30,551.551 INFO    ] Initializing speech engine...
[2026-08-31 23:36:30,556.556 INFO    ] 2026-08-31 23:36:30
[2026-08-31 23:36:30,816.816 INFO    ] 2026-08-31 23:36:30
[2026-08-31 23:36:30,869.869 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:36:31,091.091 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:36:31,100.100 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:36:31,231.231 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:36:31,291.291 INFO    ] time= 31/08/2026 23:36:31
[2026-08-31 23:36:31,345.345 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:36:31,359.359 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:36:31,419.419 INFO    ] No existing commands found in stream
[2026-08-31 23:36:36,429.429 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:36:36,432.432 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-08-31 23:36:40,404.404 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 23:36:40,407.407 INFO    ] Checking for system updates...
[2026-08-31 23:36:40,444.444 INFO    ] 200
[2026-08-31 23:36:40,446.446 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:36:40,500.500 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:36:40,502.502 INFO    ] No update needed
[2026-08-31 23:36:40,504.504 INFO    ] Checking for camera pi updates...
[2026-08-31 23:36:40,542.542 INFO    ] 200
[2026-08-31 23:36:40,545.545 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:36:40,591.591 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:36:40,681.681 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:36:40,684.684 INFO    ] No camera update needed
[2026-08-31 23:36:40,686.686 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:36:40,689.689 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:36:40,694.694 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:36:40,699.699 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:36:42,743.743 INFO    ] ================================================
[2026-08-31 23:36:42,758.758 INFO    ] Launching Daemon at Mon Aug 31 23:36:42 IST 2026
[2026-08-31 23:36:42,768.768 INFO    ] ================================================
[2026-08-31 23:36:43,391.391 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:36:43
[2026-08-31 23:36:44,057.057 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:36:44,355.355 INFO    ] Initializing speech engine...
[2026-08-31 23:36:44,369.369 INFO    ] 2026-08-31 23:36:44
[2026-08-31 23:36:44,679.679 INFO    ] 2026-08-31 23:36:44
[2026-08-31 23:36:44,764.764 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:36:44,943.943 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:36:44,948.948 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:36:45,136.136 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:36:45,184.184 INFO    ] time= 31/08/2026 23:36:45
[2026-08-31 23:36:45,203.203 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:36:45,233.233 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:36:45,336.336 INFO    ] No existing commands found in stream
[2026-08-31 23:36:50,350.350 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:36:50,353.353 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-08-31 23:36:51,759.759 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 23:36:51,762.762 INFO    ] Checking for system updates...
[2026-08-31 23:36:51,804.804 INFO    ] 200
[2026-08-31 23:36:51,808.808 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:36:51,864.864 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:36:51,867.867 INFO    ] No update needed
[2026-08-31 23:36:51,870.870 INFO    ] Checking for camera pi updates...
[2026-08-31 23:36:51,903.903 INFO    ] 200
[2026-08-31 23:36:51,906.906 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:36:51,950.950 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:36:52,032.032 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:36:52,034.034 INFO    ] No camera update needed
[2026-08-31 23:36:52,037.037 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:36:52,039.039 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:36:52,045.045 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:36:52,050.050 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:36:54,089.089 INFO    ] ================================================
[2026-08-31 23:36:54,104.104 INFO    ] Launching Daemon at Mon Aug 31 23:36:54 IST 2026
[2026-08-31 23:36:54,114.114 INFO    ] ================================================
[2026-08-31 23:36:54,681.681 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:36:54
[2026-08-31 23:36:55,265.265 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:36:55,527.527 INFO    ] Initializing speech engine...
[2026-08-31 23:36:55,546.546 INFO    ] 2026-08-31 23:36:55
[2026-08-31 23:36:55,798.798 INFO    ] 2026-08-31 23:36:55
[2026-08-31 23:36:55,833.833 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:36:56,091.091 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:36:56,100.100 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:36:56,239.239 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:36:56,288.288 INFO    ] time= 31/08/2026 23:36:56
[2026-08-31 23:36:56,351.351 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:36:56,376.376 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:36:56,510.510 INFO    ] No existing commands found in stream
[2026-08-31 23:37:01,536.536 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:37:01,540.540 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-08-31 23:37:03,862.862 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 23:37:03,864.864 INFO    ] Checking for system updates...
[2026-08-31 23:37:03,900.900 INFO    ] 200
[2026-08-31 23:37:03,902.902 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:37:03,955.955 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:37:03,958.958 INFO    ] No update needed
[2026-08-31 23:37:03,960.960 INFO    ] Checking for camera pi updates...
[2026-08-31 23:37:03,994.994 INFO    ] 200
[2026-08-31 23:37:03,996.996 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:37:04,036.036 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:37:04,141.141 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:37:04,144.144 INFO    ] No camera update needed
[2026-08-31 23:37:04,146.146 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:37:04,149.149 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:37:04,154.154 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:37:04,159.159 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:37:06,199.199 INFO    ] ================================================
[2026-08-31 23:37:06,215.215 INFO    ] Launching Daemon at Mon Aug 31 23:37:06 IST 2026
[2026-08-31 23:37:06,226.226 INFO    ] ================================================
[2026-08-31 23:37:06,826.826 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:37:06
[2026-08-31 23:37:07,408.408 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:37:07,657.657 INFO    ] Initializing speech engine...
[2026-08-31 23:37:07,678.678 INFO    ] 2026-08-31 23:37:07
[2026-08-31 23:37:07,938.938 INFO    ] 2026-08-31 23:37:07
[2026-08-31 23:37:07,973.973 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:37:08,230.230 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:37:08,240.240 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:37:08,375.375 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:37:08,418.418 INFO    ] time= 31/08/2026 23:37:08
[2026-08-31 23:37:08,472.472 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:37:08,512.512 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:37:08,648.648 INFO    ] No existing commands found in stream
[2026-08-31 23:37:13,671.671 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:37:13,674.674 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-08-31 23:37:16,445.445 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 23:37:16,448.448 INFO    ] Checking for system updates...
[2026-08-31 23:37:16,484.484 INFO    ] 200
[2026-08-31 23:37:16,488.488 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:37:16,548.548 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:37:16,551.551 INFO    ] No update needed
[2026-08-31 23:37:16,553.553 INFO    ] Checking for camera pi updates...
[2026-08-31 23:37:16,590.590 INFO    ] 200
[2026-08-31 23:37:16,593.593 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:37:16,638.638 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:37:16,704.704 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:37:16,707.707 INFO    ] No camera update needed
[2026-08-31 23:37:16,709.709 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:37:16,712.712 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:37:16,717.717 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:37:16,722.722 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:37:18,763.763 INFO    ] ================================================
[2026-08-31 23:37:18,778.778 INFO    ] Launching Daemon at Mon Aug 31 23:37:18 IST 2026
[2026-08-31 23:37:18,789.789 INFO    ] ================================================
[2026-08-31 23:37:19,437.437 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:37:19
[2026-08-31 23:37:20,101.101 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:37:20,399.399 INFO    ] Initializing speech engine...
[2026-08-31 23:37:20,407.407 INFO    ] 2026-08-31 23:37:20
[2026-08-31 23:37:20,707.707 INFO    ] 2026-08-31 23:37:20
[2026-08-31 23:37:20,759.759 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:37:21,039.039 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:37:21,044.044 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:37:21,241.241 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:37:21,252.252 INFO    ] time= 31/08/2026 23:37:21
[2026-08-31 23:37:21,270.270 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:37:21,302.302 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:37:21,408.408 INFO    ] No existing commands found in stream
[2026-08-31 23:37:26,422.422 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:37:26,425.425 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-08-31 23:37:29,879.879 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 23:37:29,882.882 INFO    ] Checking for system updates...
[2026-08-31 23:37:29,923.923 INFO    ] 200
[2026-08-31 23:37:29,925.925 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:37:29,984.984 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:37:29,987.987 INFO    ] No update needed
[2026-08-31 23:37:29,989.989 INFO    ] Checking for camera pi updates...
[2026-08-31 23:37:30,023.023 INFO    ] 200
[2026-08-31 23:37:30,025.025 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:37:30,065.065 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:37:30,144.144 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:37:30,147.147 INFO    ] No camera update needed
[2026-08-31 23:37:30,149.149 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:37:30,152.152 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:37:30,157.157 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:37:30,162.162 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:37:32,204.204 INFO    ] ================================================
[2026-08-31 23:37:32,221.221 INFO    ] Launching Daemon at Mon Aug 31 23:37:32 IST 2026
[2026-08-31 23:37:32,233.233 INFO    ] ================================================
[2026-08-31 23:37:32,850.850 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:37:32
[2026-08-31 23:37:33,445.445 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:37:33,716.716 INFO    ] Initializing speech engine...
[2026-08-31 23:37:33,726.726 INFO    ] 2026-08-31 23:37:33
[2026-08-31 23:37:33,988.988 INFO    ] 2026-08-31 23:37:33
[2026-08-31 23:37:34,041.041 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:37:34,267.267 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:37:34,272.272 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:37:34,403.403 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:37:34,449.449 INFO    ] time= 31/08/2026 23:37:34
[2026-08-31 23:37:34,508.508 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:37:34,536.536 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:37:34,667.667 INFO    ] No existing commands found in stream
[2026-08-31 23:37:39,691.691 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:37:39,694.694 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-08-31 23:37:41,357.357 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 23:37:41,359.359 INFO    ] Checking for system updates...
[2026-08-31 23:37:41,396.396 INFO    ] 200
[2026-08-31 23:37:41,399.399 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:37:41,451.451 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:37:41,454.454 INFO    ] No update needed
[2026-08-31 23:37:41,456.456 INFO    ] Checking for camera pi updates...
[2026-08-31 23:37:41,490.490 INFO    ] 200
[2026-08-31 23:37:41,493.493 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:37:41,536.536 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:37:41,604.604 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:37:41,606.606 INFO    ] No camera update needed
[2026-08-31 23:37:41,609.609 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:37:41,611.611 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:37:41,617.617 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:37:41,622.622 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:37:43,663.663 INFO    ] ================================================
[2026-08-31 23:37:43,679.679 INFO    ] Launching Daemon at Mon Aug 31 23:37:43 IST 2026
[2026-08-31 23:37:43,689.689 INFO    ] ================================================
[2026-08-31 23:37:44,344.344 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:37:44
[2026-08-31 23:37:45,021.021 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:37:45,325.325 INFO    ] Initializing speech engine...
[2026-08-31 23:37:45,339.339 INFO    ] 2026-08-31 23:37:45
[2026-08-31 23:37:45,622.622 INFO    ] 2026-08-31 23:37:45
[2026-08-31 23:37:45,669.669 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:37:45,894.894 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:37:45,901.901 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:37:46,035.035 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:37:46,090.090 INFO    ] time= 31/08/2026 23:37:46
[2026-08-31 23:37:46,155.155 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:37:46,171.171 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:37:46,306.306 INFO    ] No existing commands found in stream
[2026-08-31 23:37:51,328.328 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:37:51,331.331 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-08-31 23:37:55,590.590 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 23:37:55,593.593 INFO    ] Checking for system updates...
[2026-08-31 23:37:55,636.636 INFO    ] 200
[2026-08-31 23:37:55,639.639 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:37:55,693.693 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:37:55,696.696 INFO    ] No update needed
[2026-08-31 23:37:55,699.699 INFO    ] Checking for camera pi updates...
[2026-08-31 23:37:55,737.737 INFO    ] 200
[2026-08-31 23:37:55,740.740 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:37:55,786.786 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:37:55,960.960 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:37:55,963.963 INFO    ] No camera update needed
[2026-08-31 23:37:55,965.965 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:37:55,967.967 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:37:55,973.973 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:37:55,978.978 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:37:58,017.017 INFO    ] ================================================
[2026-08-31 23:37:58,033.033 INFO    ] Launching Daemon at Mon Aug 31 23:37:58 IST 2026
[2026-08-31 23:37:58,044.044 INFO    ] ================================================
[2026-08-31 23:37:58,624.624 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:37:58
[2026-08-31 23:37:59,222.222 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:37:59,492.492 INFO    ] Initializing speech engine...
[2026-08-31 23:37:59,501.501 INFO    ] 2026-08-31 23:37:59
[2026-08-31 23:37:59,750.750 INFO    ] 2026-08-31 23:37:59
[2026-08-31 23:37:59,785.785 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:38:00,036.036 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:38:00,045.045 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:38:00,189.189 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:38:00,254.254 INFO    ] time= 31/08/2026 23:38:00
[2026-08-31 23:38:00,306.306 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:38:00,312.312 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:38:00,447.447 INFO    ] No existing commands found in stream
[2026-08-31 23:38:05,466.466 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:38:05,469.469 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-08-31 23:38:09,276.276 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 23:38:09,279.279 INFO    ] Checking for system updates...
[2026-08-31 23:38:09,319.319 INFO    ] 200
[2026-08-31 23:38:09,321.321 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:38:09,380.380 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:38:09,382.382 INFO    ] No update needed
[2026-08-31 23:38:09,385.385 INFO    ] Checking for camera pi updates...
[2026-08-31 23:38:09,422.422 INFO    ] 200
[2026-08-31 23:38:09,424.424 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:38:09,464.464 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:38:09,517.517 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:38:09,520.520 INFO    ] No camera update needed
[2026-08-31 23:38:09,522.522 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:38:09,525.525 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:38:09,530.530 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:38:09,535.535 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:38:11,575.575 INFO    ] ================================================
[2026-08-31 23:38:11,590.590 INFO    ] Launching Daemon at Mon Aug 31 23:38:11 IST 2026
[2026-08-31 23:38:11,601.601 INFO    ] ================================================
[2026-08-31 23:38:12,193.193 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:38:12
[2026-08-31 23:38:12,851.851 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:38:13,154.154 INFO    ] Initializing speech engine...
[2026-08-31 23:38:13,167.167 INFO    ] 2026-08-31 23:38:13
[2026-08-31 23:38:13,480.480 INFO    ] 2026-08-31 23:38:13
[2026-08-31 23:38:13,566.566 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:38:13,786.786 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:38:13,790.790 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:38:13,986.986 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:38:13,998.998 INFO    ] time= 31/08/2026 23:38:13
[2026-08-31 23:38:14,020.020 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:38:14,047.047 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:38:14,162.162 INFO    ] No existing commands found in stream
[2026-08-31 23:38:19,197.197 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:38:19,200.200 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-08-31 23:38:19,984.984 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 23:38:19,987.987 INFO    ] Checking for system updates...
[2026-08-31 23:38:20,023.023 INFO    ] 200
[2026-08-31 23:38:20,025.025 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:38:20,081.081 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:38:20,084.084 INFO    ] No update needed
[2026-08-31 23:38:20,086.086 INFO    ] Checking for camera pi updates...
[2026-08-31 23:38:20,120.120 INFO    ] 200
[2026-08-31 23:38:20,122.122 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:38:20,163.163 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:38:20,247.247 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:38:20,249.249 INFO    ] No camera update needed
[2026-08-31 23:38:20,252.252 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:38:20,254.254 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:38:20,259.259 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:38:20,264.264 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:38:22,303.303 INFO    ] ================================================
[2026-08-31 23:38:22,318.318 INFO    ] Launching Daemon at Mon Aug 31 23:38:22 IST 2026
[2026-08-31 23:38:22,371.371 INFO    ] ================================================
[2026-08-31 23:38:23,014.014 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:38:23
[2026-08-31 23:38:23,678.678 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:38:23,976.976 INFO    ] Initializing speech engine...
[2026-08-31 23:38:23,985.985 INFO    ] 2026-08-31 23:38:23
[2026-08-31 23:38:24,271.271 INFO    ] 2026-08-31 23:38:24
[2026-08-31 23:38:24,316.316 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:38:24,540.540 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:38:24,547.547 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:38:24,700.700 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:38:24,756.756 INFO    ] time= 31/08/2026 23:38:24
[2026-08-31 23:38:24,806.806 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:38:24,814.814 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:38:24,958.958 INFO    ] No existing commands found in stream
[2026-08-31 23:38:29,972.972 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:38:29,975.975 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-08-31 23:38:31,675.675 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 23:38:31,678.678 INFO    ] Checking for system updates...
[2026-08-31 23:38:31,723.723 INFO    ] 200
[2026-08-31 23:38:31,726.726 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:38:31,792.792 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:38:31,794.794 INFO    ] No update needed
[2026-08-31 23:38:31,797.797 INFO    ] Checking for camera pi updates...
[2026-08-31 23:38:31,838.838 INFO    ] 200
[2026-08-31 23:38:31,841.841 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:38:31,890.890 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:38:31,958.958 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:38:31,960.960 INFO    ] No camera update needed
[2026-08-31 23:38:31,963.963 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:38:31,966.966 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:38:31,971.971 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:38:31,977.977 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:38:34,016.016 INFO    ] ================================================
[2026-08-31 23:38:34,031.031 INFO    ] Launching Daemon at Mon Aug 31 23:38:34 IST 2026
[2026-08-31 23:38:34,041.041 INFO    ] ================================================
[2026-08-31 23:38:34,619.619 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:38:34
[2026-08-31 23:38:35,213.213 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:38:35,477.477 INFO    ] Initializing speech engine...
[2026-08-31 23:38:35,502.502 INFO    ] 2026-08-31 23:38:35
[2026-08-31 23:38:35,778.778 INFO    ] 2026-08-31 23:38:35
[2026-08-31 23:38:35,814.814 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:38:36,012.012 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:38:36,019.019 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:38:36,194.194 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:38:36,203.203 INFO    ] time= 31/08/2026 23:38:36
[2026-08-31 23:38:36,211.211 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:38:36,243.243 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:38:36,384.384 INFO    ] No existing commands found in stream
[2026-08-31 23:38:41,410.410 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:38:41,412.412 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-08-31 23:38:45,721.721 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 23:38:45,724.724 INFO    ] Checking for system updates...
[2026-08-31 23:38:45,761.761 INFO    ] 200
[2026-08-31 23:38:45,764.764 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:38:45,826.826 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:38:45,829.829 INFO    ] No update needed
[2026-08-31 23:38:45,832.832 INFO    ] Checking for camera pi updates...
[2026-08-31 23:38:45,870.870 INFO    ] 200
[2026-08-31 23:38:45,873.873 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:38:45,918.918 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:38:45,990.990 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:38:45,992.992 INFO    ] No camera update needed
[2026-08-31 23:38:45,995.995 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:38:45,997.997 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:38:46,002.002 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:38:46,007.007 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:38:48,048.048 INFO    ] ================================================
[2026-08-31 23:38:48,064.064 INFO    ] Launching Daemon at Mon Aug 31 23:38:48 IST 2026
[2026-08-31 23:38:48,075.075 INFO    ] ================================================
[2026-08-31 23:38:48,672.672 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:38:48
[2026-08-31 23:38:49,343.343 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:38:49,644.644 INFO    ] Initializing speech engine...
[2026-08-31 23:38:49,651.651 INFO    ] 2026-08-31 23:38:49
[2026-08-31 23:38:49,938.938 INFO    ] 2026-08-31 23:38:49
[2026-08-31 23:38:49,982.982 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:38:50,208.208 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:38:50,219.219 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:38:50,443.443 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:38:50,473.473 INFO    ] time= 31/08/2026 23:38:50
[2026-08-31 23:38:50,494.494 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:38:50,521.521 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:38:50,652.652 INFO    ] No existing commands found in stream
[2026-08-31 23:38:55,690.690 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:38:55,693.693 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-08-31 23:38:56,904.904 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 23:38:56,907.907 INFO    ] Checking for system updates...
[2026-08-31 23:38:56,944.944 INFO    ] 200
[2026-08-31 23:38:56,947.947 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:38:57,006.006 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:38:57,009.009 INFO    ] No update needed
[2026-08-31 23:38:57,012.012 INFO    ] Checking for camera pi updates...
[2026-08-31 23:38:57,049.049 INFO    ] 200
[2026-08-31 23:38:57,052.052 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:38:57,097.097 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:38:57,186.186 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:38:57,189.189 INFO    ] No camera update needed
[2026-08-31 23:38:57,191.191 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:38:57,193.193 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:38:57,199.199 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:38:57,204.204 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:38:59,244.244 INFO    ] ================================================
[2026-08-31 23:38:59,259.259 INFO    ] Launching Daemon at Mon Aug 31 23:38:59 IST 2026
[2026-08-31 23:38:59,270.270 INFO    ] ================================================
[2026-08-31 23:38:59,840.840 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:38:59
[2026-08-31 23:39:00,426.426 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:39:00,682.682 INFO    ] Initializing speech engine...
[2026-08-31 23:39:00,691.691 INFO    ] 2026-08-31 23:39:00
[2026-08-31 23:39:00,985.985 INFO    ] 2026-08-31 23:39:00
[2026-08-31 23:39:01,023.023 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:39:01,231.231 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:39:01,248.248 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:39:01,468.468 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:39:01,485.485 INFO    ] time= 31/08/2026 23:39:01
[2026-08-31 23:39:01,549.549 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:39:01,562.562 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:39:01,697.697 INFO    ] No existing commands found in stream
[2026-08-31 23:39:06,708.708 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:39:06,711.711 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-08-31 23:39:07,799.799 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 23:39:07,801.801 INFO    ] Checking for system updates...
[2026-08-31 23:39:07,837.837 INFO    ] 200
[2026-08-31 23:39:07,839.839 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:39:07,891.891 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:39:07,894.894 INFO    ] No update needed
[2026-08-31 23:39:07,896.896 INFO    ] Checking for camera pi updates...
[2026-08-31 23:39:07,935.935 INFO    ] 200
[2026-08-31 23:39:07,937.937 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:39:07,982.982 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:39:08,075.075 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:39:08,077.077 INFO    ] No camera update needed
[2026-08-31 23:39:08,079.079 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:39:08,082.082 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:39:08,087.087 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:39:08,092.092 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:39:10,131.131 INFO    ] ================================================
[2026-08-31 23:39:10,147.147 INFO    ] Launching Daemon at Mon Aug 31 23:39:10 IST 2026
[2026-08-31 23:39:10,157.157 INFO    ] ================================================
[2026-08-31 23:39:10,721.721 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:39:10
[2026-08-31 23:39:11,304.304 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:39:11,572.572 INFO    ] Initializing speech engine...
[2026-08-31 23:39:11,581.581 INFO    ] 2026-08-31 23:39:11
[2026-08-31 23:39:11,826.826 INFO    ] 2026-08-31 23:39:11
[2026-08-31 23:39:11,862.862 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:39:12,059.059 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:39:12,115.115 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:39:12,227.227 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:39:12,264.264 INFO    ] time= 31/08/2026 23:39:12
[2026-08-31 23:39:12,280.280 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:39:12,344.344 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:39:12,422.422 INFO    ] No existing commands found in stream
[2026-08-31 23:39:17,438.438 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:39:17,441.441 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-08-31 23:39:19,065.065 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 23:39:19,068.068 INFO    ] Checking for system updates...
[2026-08-31 23:39:19,103.103 INFO    ] 200
[2026-08-31 23:39:19,106.106 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:39:19,158.158 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:39:19,160.160 INFO    ] No update needed
[2026-08-31 23:39:19,162.162 INFO    ] Checking for camera pi updates...
[2026-08-31 23:39:19,199.199 INFO    ] 200
[2026-08-31 23:39:19,202.202 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:39:19,246.246 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:39:19,345.345 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:39:19,347.347 INFO    ] No camera update needed
[2026-08-31 23:39:19,350.350 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:39:19,352.352 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:39:19,358.358 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:39:19,363.363 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:39:21,404.404 INFO    ] ================================================
[2026-08-31 23:39:21,419.419 INFO    ] Launching Daemon at Mon Aug 31 23:39:21 IST 2026
[2026-08-31 23:39:21,430.430 INFO    ] ================================================
[2026-08-31 23:39:22,012.012 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:39:22
[2026-08-31 23:39:22,614.614 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:39:22,902.902 INFO    ] Initializing speech engine...
[2026-08-31 23:39:22,911.911 INFO    ] 2026-08-31 23:39:22
[2026-08-31 23:39:23,181.181 INFO    ] 2026-08-31 23:39:23
[2026-08-31 23:39:23,219.219 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:39:23,419.419 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:39:23,433.433 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:39:23,602.602 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:39:23,607.607 INFO    ] time= 31/08/2026 23:39:23
[2026-08-31 23:39:23,613.613 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:39:23,620.620 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:39:23,771.771 INFO    ] No existing commands found in stream
[2026-08-31 23:39:28,797.797 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:39:28,800.800 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-08-31 23:39:31,675.675 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 23:39:31,677.677 INFO    ] Checking for system updates...
[2026-08-31 23:39:31,723.723 INFO    ] 200
[2026-08-31 23:39:31,727.727 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:39:31,801.801 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:39:31,804.804 INFO    ] No update needed
[2026-08-31 23:39:31,807.807 INFO    ] Checking for camera pi updates...
[2026-08-31 23:39:31,848.848 INFO    ] 200
[2026-08-31 23:39:31,850.850 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:39:31,900.900 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:39:31,954.954 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:39:31,957.957 INFO    ] No camera update needed
[2026-08-31 23:39:31,960.960 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:39:31,963.963 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:39:31,970.970 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:39:31,976.976 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:39:34,020.020 INFO    ] ================================================
[2026-08-31 23:39:34,035.035 INFO    ] Launching Daemon at Mon Aug 31 23:39:34 IST 2026
[2026-08-31 23:39:34,045.045 INFO    ] ================================================
[2026-08-31 23:39:34,695.695 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:39:34
[2026-08-31 23:39:35,366.366 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:39:35,673.673 INFO    ] Initializing speech engine...
[2026-08-31 23:39:35,681.681 INFO    ] 2026-08-31 23:39:35
[2026-08-31 23:39:35,960.960 INFO    ] 2026-08-31 23:39:35
[2026-08-31 23:39:36,015.015 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:39:36,243.243 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:39:36,254.254 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:39:36,396.396 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:39:36,461.461 INFO    ] time= 31/08/2026 23:39:36
[2026-08-31 23:39:36,521.521 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:39:36,528.528 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:39:36,663.663 INFO    ] No existing commands found in stream
[2026-08-31 23:39:41,689.689 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:39:41,692.692 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-08-31 23:39:42,840.840 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 23:39:42,843.843 INFO    ] Checking for system updates...
[2026-08-31 23:39:42,884.884 INFO    ] 200
[2026-08-31 23:39:42,887.887 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:39:42,941.941 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:39:42,944.944 INFO    ] No update needed
[2026-08-31 23:39:42,947.947 INFO    ] Checking for camera pi updates...
[2026-08-31 23:39:42,982.982 INFO    ] 200
[2026-08-31 23:39:42,984.984 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:39:43,030.030 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:39:43,102.102 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:39:43,105.105 INFO    ] No camera update needed
[2026-08-31 23:39:43,108.108 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:39:43,111.111 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:39:43,117.117 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:39:43,122.122 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:39:45,164.164 INFO    ] ================================================
[2026-08-31 23:39:45,179.179 INFO    ] Launching Daemon at Mon Aug 31 23:39:45 IST 2026
[2026-08-31 23:39:45,190.190 INFO    ] ================================================
[2026-08-31 23:39:45,755.755 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:39:45
[2026-08-31 23:39:46,338.338 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:39:46,609.609 INFO    ] Initializing speech engine...
[2026-08-31 23:39:46,631.631 INFO    ] 2026-08-31 23:39:46
[2026-08-31 23:39:46,896.896 INFO    ] 2026-08-31 23:39:46
[2026-08-31 23:39:46,931.931 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:39:47,131.131 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:39:47,146.146 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:39:47,307.307 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:39:47,315.315 INFO    ] time= 31/08/2026 23:39:47
[2026-08-31 23:39:47,319.319 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:39:47,325.325 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:39:47,398.398 INFO    ] No existing commands found in stream
[2026-08-31 23:39:52,411.411 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:39:52,413.413 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-08-31 23:39:54,684.684 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 23:39:54,686.686 INFO    ] Checking for system updates...
[2026-08-31 23:39:54,722.722 INFO    ] 200
[2026-08-31 23:39:54,724.724 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:39:54,777.777 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:39:54,780.780 INFO    ] No update needed
[2026-08-31 23:39:54,782.782 INFO    ] Checking for camera pi updates...
[2026-08-31 23:39:54,815.815 INFO    ] 200
[2026-08-31 23:39:54,818.818 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:39:54,862.862 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:39:54,944.944 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:39:54,946.946 INFO    ] No camera update needed
[2026-08-31 23:39:54,949.949 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:39:54,951.951 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:39:54,956.956 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:39:54,961.961 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:39:57,001.001 INFO    ] ================================================
[2026-08-31 23:39:57,016.016 INFO    ] Launching Daemon at Mon Aug 31 23:39:57 IST 2026
[2026-08-31 23:39:57,027.027 INFO    ] ================================================
[2026-08-31 23:39:57,593.593 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:39:57
[2026-08-31 23:39:58,175.175 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:39:58,422.422 INFO    ] Initializing speech engine...
[2026-08-31 23:39:58,427.427 INFO    ] 2026-08-31 23:39:58
[2026-08-31 23:39:58,731.731 INFO    ] 2026-08-31 23:39:58
[2026-08-31 23:39:58,765.765 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:39:58,963.963 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:39:58,977.977 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:39:59,146.146 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:39:59,153.153 INFO    ] time= 31/08/2026 23:39:59
[2026-08-31 23:39:59,185.185 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:39:59,227.227 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:39:59,352.352 INFO    ] No existing commands found in stream
[2026-08-31 23:40:04,380.380 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:40:04,383.383 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-08-31 23:40:08,664.664 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 23:40:08,666.666 INFO    ] Checking for system updates...
[2026-08-31 23:40:08,706.706 INFO    ] 200
[2026-08-31 23:40:08,710.710 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:40:08,776.776 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:40:08,778.778 INFO    ] No update needed
[2026-08-31 23:40:08,781.781 INFO    ] Checking for camera pi updates...
[2026-08-31 23:40:08,817.817 INFO    ] 200
[2026-08-31 23:40:08,820.820 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:40:08,860.860 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:40:08,948.948 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:40:08,951.951 INFO    ] No camera update needed
[2026-08-31 23:40:08,953.953 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:40:08,955.955 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:40:08,961.961 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:40:08,966.966 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:40:11,008.008 INFO    ] ================================================
[2026-08-31 23:40:11,023.023 INFO    ] Launching Daemon at Mon Aug 31 23:40:11 IST 2026
[2026-08-31 23:40:11,034.034 INFO    ] ================================================
[2026-08-31 23:40:11,616.616 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:40:11
[2026-08-31 23:40:12,238.238 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:40:12,538.538 INFO    ] Initializing speech engine...
[2026-08-31 23:40:12,547.547 INFO    ] 2026-08-31 23:40:12
[2026-08-31 23:40:12,816.816 INFO    ] 2026-08-31 23:40:12
[2026-08-31 23:40:12,871.871 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:40:13,155.155 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:40:13,165.165 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:40:13,345.345 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:40:13,368.368 INFO    ] time= 31/08/2026 23:40:13
[2026-08-31 23:40:13,388.388 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:40:13,415.415 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:40:13,522.522 INFO    ] No existing commands found in stream
[2026-08-31 23:40:18,542.542 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:40:18,545.545 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-08-31 23:40:19,513.513 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 23:40:19,516.516 INFO    ] Checking for system updates...
[2026-08-31 23:40:19,553.553 INFO    ] 200
[2026-08-31 23:40:19,556.556 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:40:19,615.615 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:40:19,618.618 INFO    ] No update needed
[2026-08-31 23:40:19,622.622 INFO    ] Checking for camera pi updates...
[2026-08-31 23:40:19,656.656 INFO    ] 200
[2026-08-31 23:40:19,659.659 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:40:19,701.701 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:40:19,774.774 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:40:19,777.777 INFO    ] No camera update needed
[2026-08-31 23:40:19,780.780 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:40:19,782.782 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:40:19,789.789 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:40:19,795.795 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:40:21,836.836 INFO    ] ================================================
[2026-08-31 23:40:21,851.851 INFO    ] Launching Daemon at Mon Aug 31 23:40:21 IST 2026
[2026-08-31 23:40:21,861.861 INFO    ] ================================================
[2026-08-31 23:40:22,502.502 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:40:22
[2026-08-31 23:40:23,163.163 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:40:23,461.461 INFO    ] Initializing speech engine...
[2026-08-31 23:40:23,475.475 INFO    ] 2026-08-31 23:40:23
[2026-08-31 23:40:23,784.784 INFO    ] 2026-08-31 23:40:23
[2026-08-31 23:40:23,871.871 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:40:24,048.048 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:40:24,053.053 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:40:24,279.279 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:40:24,291.291 INFO    ] time= 31/08/2026 23:40:24
[2026-08-31 23:40:24,314.314 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:40:24,341.341 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:40:24,456.456 INFO    ] No existing commands found in stream
[2026-08-31 23:40:29,481.481 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:40:29,484.484 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-08-31 23:40:31,314.314 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 23:40:31,316.316 INFO    ] Checking for system updates...
[2026-08-31 23:40:31,356.356 INFO    ] 200
[2026-08-31 23:40:31,359.359 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:40:31,418.418 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:40:31,420.420 INFO    ] No update needed
[2026-08-31 23:40:31,423.423 INFO    ] Checking for camera pi updates...
[2026-08-31 23:40:31,460.460 INFO    ] 200
[2026-08-31 23:40:31,462.462 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:40:31,506.506 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:40:31,598.598 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:40:31,600.600 INFO    ] No camera update needed
[2026-08-31 23:40:31,603.603 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:40:31,605.605 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:40:31,610.610 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:40:31,615.615 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:40:33,659.659 INFO    ] ================================================
[2026-08-31 23:40:33,674.674 INFO    ] Launching Daemon at Mon Aug 31 23:40:33 IST 2026
[2026-08-31 23:40:33,684.684 INFO    ] ================================================
[2026-08-31 23:40:34,326.326 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:40:34
[2026-08-31 23:40:34,985.985 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:40:35,290.290 INFO    ] Initializing speech engine...
[2026-08-31 23:40:35,302.302 INFO    ] 2026-08-31 23:40:35
[2026-08-31 23:40:35,569.569 INFO    ] 2026-08-31 23:40:35
[2026-08-31 23:40:35,624.624 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:40:35,853.853 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:40:35,858.858 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:40:35,992.992 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:40:36,053.053 INFO    ] time= 31/08/2026 23:40:35
[2026-08-31 23:40:36,112.112 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:40:36,126.126 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:40:36,240.240 INFO    ] No existing commands found in stream
[2026-08-31 23:40:41,268.268 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:40:41,271.271 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-08-31 23:40:43,228.228 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 23:40:43,231.231 INFO    ] Checking for system updates...
[2026-08-31 23:40:43,271.271 INFO    ] 200
[2026-08-31 23:40:43,274.274 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:40:43,333.333 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:40:43,336.336 INFO    ] No update needed
[2026-08-31 23:40:43,339.339 INFO    ] Checking for camera pi updates...
[2026-08-31 23:40:43,373.373 INFO    ] 200
[2026-08-31 23:40:43,376.376 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:40:43,421.421 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:40:43,506.506 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:40:43,509.509 INFO    ] No camera update needed
[2026-08-31 23:40:43,511.511 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:40:43,514.514 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:40:43,519.519 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:40:43,524.524 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:40:45,565.565 INFO    ] ================================================
[2026-08-31 23:40:45,580.580 INFO    ] Launching Daemon at Mon Aug 31 23:40:45 IST 2026
[2026-08-31 23:40:45,591.591 INFO    ] ================================================
[2026-08-31 23:40:46,157.157 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:40:46
[2026-08-31 23:40:46,753.753 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:40:47,025.025 INFO    ] Initializing speech engine...
[2026-08-31 23:40:47,034.034 INFO    ] 2026-08-31 23:40:47
[2026-08-31 23:40:47,297.297 INFO    ] 2026-08-31 23:40:47
[2026-08-31 23:40:47,350.350 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:40:47,580.580 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:40:47,585.585 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:40:47,717.717 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:40:47,782.782 INFO    ] time= 31/08/2026 23:40:47
[2026-08-31 23:40:47,845.845 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:40:47,851.851 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:40:47,995.995 INFO    ] No existing commands found in stream
[2026-08-31 23:40:53,011.011 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:40:53,014.014 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-08-31 23:40:54,917.917 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 23:40:54,920.920 INFO    ] Checking for system updates...
[2026-08-31 23:40:54,957.957 INFO    ] 200
[2026-08-31 23:40:54,960.960 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:40:55,019.019 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:40:55,022.022 INFO    ] No update needed
[2026-08-31 23:40:55,025.025 INFO    ] Checking for camera pi updates...
[2026-08-31 23:40:55,060.060 INFO    ] 200
[2026-08-31 23:40:55,063.063 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:40:55,104.104 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:40:55,184.184 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:40:55,187.187 INFO    ] No camera update needed
[2026-08-31 23:40:55,190.190 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:40:55,192.192 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:40:55,199.199 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:40:55,204.204 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:40:57,243.243 INFO    ] ================================================
[2026-08-31 23:40:57,258.258 INFO    ] Launching Daemon at Mon Aug 31 23:40:57 IST 2026
[2026-08-31 23:40:57,269.269 INFO    ] ================================================
[2026-08-31 23:40:57,834.834 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:40:57
[2026-08-31 23:40:58,415.415 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:40:58,685.685 INFO    ] Initializing speech engine...
[2026-08-31 23:40:58,694.694 INFO    ] 2026-08-31 23:40:58
[2026-08-31 23:40:58,944.944 INFO    ] 2026-08-31 23:40:58
[2026-08-31 23:40:58,980.980 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:40:59,218.218 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:40:59,245.245 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:40:59,446.446 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:40:59,500.500 INFO    ] time= 31/08/2026 23:40:59
[2026-08-31 23:40:59,516.516 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:40:59,534.534 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:40:59,642.642 INFO    ] No existing commands found in stream
[2026-08-31 23:41:04,675.675 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:41:04,678.678 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-08-31 23:41:08,410.410 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 23:41:08,413.413 INFO    ] Checking for system updates...
[2026-08-31 23:41:08,452.452 INFO    ] 200
[2026-08-31 23:41:08,454.454 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:41:08,512.512 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:41:08,515.515 INFO    ] No update needed
[2026-08-31 23:41:08,517.517 INFO    ] Checking for camera pi updates...
[2026-08-31 23:41:08,554.554 INFO    ] 200
[2026-08-31 23:41:08,556.556 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:41:08,597.597 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:41:08,676.676 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:41:08,679.679 INFO    ] No camera update needed
[2026-08-31 23:41:08,681.681 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:41:08,683.683 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:41:08,689.689 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:41:08,694.694 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:41:10,734.734 INFO    ] ================================================
[2026-08-31 23:41:10,749.749 INFO    ] Launching Daemon at Mon Aug 31 23:41:10 IST 2026
[2026-08-31 23:41:10,760.760 INFO    ] ================================================
[2026-08-31 23:41:11,326.326 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:41:11
[2026-08-31 23:41:11,910.910 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:41:12,179.179 INFO    ] Initializing speech engine...
[2026-08-31 23:41:12,188.188 INFO    ] 2026-08-31 23:41:12
[2026-08-31 23:41:12,439.439 INFO    ] 2026-08-31 23:41:12
[2026-08-31 23:41:12,474.474 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:41:12,731.731 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:41:12,741.741 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:41:12,964.964 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:41:13,006.006 INFO    ] time= 31/08/2026 23:41:12
[2026-08-31 23:41:13,012.012 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:41:13,030.030 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:41:13,148.148 INFO    ] No existing commands found in stream
[2026-08-31 23:41:18,173.173 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:41:18,176.176 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-08-31 23:41:22,602.602 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 23:41:22,605.605 INFO    ] Checking for system updates...
[2026-08-31 23:41:22,641.641 INFO    ] 200
[2026-08-31 23:41:22,644.644 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:41:22,696.696 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:41:22,698.698 INFO    ] No update needed
[2026-08-31 23:41:22,700.700 INFO    ] Checking for camera pi updates...
[2026-08-31 23:41:22,738.738 INFO    ] 200
[2026-08-31 23:41:22,740.740 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:41:22,781.781 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:41:22,867.867 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:41:22,870.870 INFO    ] No camera update needed
[2026-08-31 23:41:22,872.872 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:41:22,875.875 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:41:22,880.880 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:41:22,885.885 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:41:24,926.926 INFO    ] ================================================
[2026-08-31 23:41:24,941.941 INFO    ] Launching Daemon at Mon Aug 31 23:41:24 IST 2026
[2026-08-31 23:41:24,951.951 INFO    ] ================================================
[2026-08-31 23:41:25,532.532 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:41:25
[2026-08-31 23:41:26,132.132 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:41:26,409.409 INFO    ] Initializing speech engine...
[2026-08-31 23:41:26,416.416 INFO    ] 2026-08-31 23:41:26
[2026-08-31 23:41:26,677.677 INFO    ] 2026-08-31 23:41:26
[2026-08-31 23:41:26,731.731 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:41:26,954.954 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:41:26,963.963 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:41:27,107.107 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:41:27,167.167 INFO    ] time= 31/08/2026 23:41:27
[2026-08-31 23:41:27,222.222 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:41:27,231.231 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:41:27,357.357 INFO    ] No existing commands found in stream
[2026-08-31 23:41:32,382.382 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:41:32,385.385 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-08-31 23:41:35,627.627 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 23:41:35,630.630 INFO    ] Checking for system updates...
[2026-08-31 23:41:35,666.666 INFO    ] 200
[2026-08-31 23:41:35,669.669 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:41:35,724.724 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:41:35,726.726 INFO    ] No update needed
[2026-08-31 23:41:35,729.729 INFO    ] Checking for camera pi updates...
[2026-08-31 23:41:35,763.763 INFO    ] 200
[2026-08-31 23:41:35,766.766 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:41:35,807.807 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:41:35,892.892 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:41:35,894.894 INFO    ] No camera update needed
[2026-08-31 23:41:35,897.897 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:41:35,899.899 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:41:35,905.905 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:41:35,910.910 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:41:37,950.950 INFO    ] ================================================
[2026-08-31 23:41:37,966.966 INFO    ] Launching Daemon at Mon Aug 31 23:41:37 IST 2026
[2026-08-31 23:41:37,976.976 INFO    ] ================================================
[2026-08-31 23:41:38,561.561 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:41:38
[2026-08-31 23:41:39,165.165 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:41:39,444.444 INFO    ] Initializing speech engine...
[2026-08-31 23:41:39,451.451 INFO    ] 2026-08-31 23:41:39
[2026-08-31 23:41:39,713.713 INFO    ] 2026-08-31 23:41:39
[2026-08-31 23:41:39,764.764 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:41:39,987.987 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:41:39,996.996 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:41:40,130.130 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:41:40,205.205 INFO    ] time= 31/08/2026 23:41:40
[2026-08-31 23:41:40,257.257 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:41:40,263.263 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:41:40,407.407 INFO    ] No existing commands found in stream
[2026-08-31 23:41:45,420.420 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:41:45,422.422 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-08-31 23:41:49,002.002 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 23:41:49,005.005 INFO    ] Checking for system updates...
[2026-08-31 23:41:49,044.044 INFO    ] 200
[2026-08-31 23:41:49,047.047 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:41:49,106.106 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:41:49,109.109 INFO    ] No update needed
[2026-08-31 23:41:49,111.111 INFO    ] Checking for camera pi updates...
[2026-08-31 23:41:49,148.148 INFO    ] 200
[2026-08-31 23:41:49,151.151 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:41:49,210.210 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:41:49,306.306 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:41:49,308.308 INFO    ] No camera update needed
[2026-08-31 23:41:49,311.311 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:41:49,313.313 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:41:49,318.318 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:41:49,323.323 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:41:51,364.364 INFO    ] ================================================
[2026-08-31 23:41:51,379.379 INFO    ] Launching Daemon at Mon Aug 31 23:41:51 IST 2026
[2026-08-31 23:41:51,389.389 INFO    ] ================================================
[2026-08-31 23:41:51,954.954 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:41:51
[2026-08-31 23:41:52,535.535 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:41:52,792.792 INFO    ] Initializing speech engine...
[2026-08-31 23:41:52,808.808 INFO    ] 2026-08-31 23:41:52
[2026-08-31 23:41:53,091.091 INFO    ] 2026-08-31 23:41:53
[2026-08-31 23:41:53,128.128 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:41:53,349.349 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:41:53,361.361 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:41:53,548.548 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:41:53,590.590 INFO    ] time= 31/08/2026 23:41:53
[2026-08-31 23:41:53,649.649 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:41:53,681.681 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:41:53,761.761 INFO    ] No existing commands found in stream
[2026-08-31 23:41:58,798.798 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:41:58,801.801 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-08-31 23:42:02,195.195 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 23:42:02,200.200 INFO    ] Checking for system updates...
[2026-08-31 23:42:02,240.240 INFO    ] 200
[2026-08-31 23:42:02,243.243 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:42:02,314.314 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:42:02,317.317 INFO    ] No update needed
[2026-08-31 23:42:02,320.320 INFO    ] Checking for camera pi updates...
[2026-08-31 23:42:02,357.357 INFO    ] 200
[2026-08-31 23:42:02,359.359 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:42:02,411.411 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:42:02,507.507 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:42:02,510.510 INFO    ] No camera update needed
[2026-08-31 23:42:02,513.513 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:42:02,516.516 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:42:02,523.523 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:42:02,531.531 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:42:04,573.573 INFO    ] ================================================
[2026-08-31 23:42:04,588.588 INFO    ] Launching Daemon at Mon Aug 31 23:42:04 IST 2026
[2026-08-31 23:42:04,598.598 INFO    ] ================================================
[2026-08-31 23:42:05,165.165 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:42:05
[2026-08-31 23:42:05,752.752 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:42:06,000.000 INFO    ] Initializing speech engine...
[2026-08-31 23:42:06,014.014 INFO    ] 2026-08-31 23:42:06
[2026-08-31 23:42:06,276.276 INFO    ] 2026-08-31 23:42:06
[2026-08-31 23:42:06,312.312 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:42:06,563.563 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:42:06,567.567 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:42:06,752.752 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:42:06,759.759 INFO    ] time= 31/08/2026 23:42:06
[2026-08-31 23:42:06,820.820 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:42:06,858.858 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:42:06,958.958 INFO    ] No existing commands found in stream
[2026-08-31 23:42:11,969.969 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:42:11,971.971 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-08-31 23:42:12,667.667 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 23:42:12,670.670 INFO    ] Checking for system updates...
[2026-08-31 23:42:12,708.708 INFO    ] 200
[2026-08-31 23:42:12,711.711 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:42:12,763.763 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:42:12,765.765 INFO    ] No update needed
[2026-08-31 23:42:12,768.768 INFO    ] Checking for camera pi updates...
[2026-08-31 23:42:12,801.801 INFO    ] 200
[2026-08-31 23:42:12,804.804 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:42:12,844.844 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:42:13,028.028 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:42:13,030.030 INFO    ] No camera update needed
[2026-08-31 23:42:13,033.033 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:42:13,035.035 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:42:13,040.040 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:42:13,045.045 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:42:15,084.084 INFO    ] ================================================
[2026-08-31 23:42:15,100.100 INFO    ] Launching Daemon at Mon Aug 31 23:42:15 IST 2026
[2026-08-31 23:42:15,110.110 INFO    ] ================================================
[2026-08-31 23:42:15,755.755 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:42:15
[2026-08-31 23:42:16,420.420 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:42:16,711.711 INFO    ] Initializing speech engine...
[2026-08-31 23:42:16,719.719 INFO    ] 2026-08-31 23:42:16
[2026-08-31 23:42:16,978.978 INFO    ] 2026-08-31 23:42:16
[2026-08-31 23:42:17,008.008 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:42:17,252.252 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:42:17,262.262 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:42:17,395.395 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:42:17,470.470 INFO    ] time= 31/08/2026 23:42:17
[2026-08-31 23:42:17,521.521 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:42:17,528.528 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:42:17,668.668 INFO    ] No existing commands found in stream
[2026-08-31 23:42:22,684.684 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:42:22,688.688 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-08-31 23:42:25,152.152 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 23:42:25,154.154 INFO    ] Checking for system updates...
[2026-08-31 23:42:25,194.194 INFO    ] 200
[2026-08-31 23:42:25,196.196 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:42:25,259.259 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:42:25,261.261 INFO    ] No update needed
[2026-08-31 23:42:25,264.264 INFO    ] Checking for camera pi updates...
[2026-08-31 23:42:25,298.298 INFO    ] 200
[2026-08-31 23:42:25,301.301 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:42:25,344.344 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:42:25,418.418 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:42:25,421.421 INFO    ] No camera update needed
[2026-08-31 23:42:25,423.423 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:42:25,426.426 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:42:25,431.431 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:42:25,436.436 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:42:27,479.479 INFO    ] ================================================
[2026-08-31 23:42:27,495.495 INFO    ] Launching Daemon at Mon Aug 31 23:42:27 IST 2026
[2026-08-31 23:42:27,507.507 INFO    ] ================================================
[2026-08-31 23:42:28,088.088 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:42:28
[2026-08-31 23:42:28,687.687 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:42:28,963.963 INFO    ] Initializing speech engine...
[2026-08-31 23:42:28,970.970 INFO    ] 2026-08-31 23:42:28
[2026-08-31 23:42:29,230.230 INFO    ] 2026-08-31 23:42:29
[2026-08-31 23:42:29,284.284 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:42:29,512.512 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:42:29,518.518 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:42:29,649.649 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:42:29,694.694 INFO    ] time= 31/08/2026 23:42:29
[2026-08-31 23:42:29,759.759 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:42:29,782.782 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:42:29,922.922 INFO    ] No existing commands found in stream
[2026-08-31 23:42:34,938.938 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:42:34,941.941 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-08-31 23:42:36,107.107 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 23:42:36,110.110 INFO    ] Checking for system updates...
[2026-08-31 23:42:36,146.146 INFO    ] 200
[2026-08-31 23:42:36,149.149 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:42:36,201.201 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:42:36,203.203 INFO    ] No update needed
[2026-08-31 23:42:36,206.206 INFO    ] Checking for camera pi updates...
[2026-08-31 23:42:36,243.243 INFO    ] 200
[2026-08-31 23:42:36,245.245 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:42:36,285.285 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:42:36,366.366 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:42:36,369.369 INFO    ] No camera update needed
[2026-08-31 23:42:36,371.371 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:42:36,373.373 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:42:36,379.379 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:42:36,384.384 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:42:38,423.423 INFO    ] ================================================
[2026-08-31 23:42:38,439.439 INFO    ] Launching Daemon at Mon Aug 31 23:42:38 IST 2026
[2026-08-31 23:42:38,450.450 INFO    ] ================================================
[2026-08-31 23:42:39,097.097 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:42:39
[2026-08-31 23:42:39,725.725 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:42:39,992.992 INFO    ] Initializing speech engine...
[2026-08-31 23:42:40,001.001 INFO    ] 2026-08-31 23:42:39
[2026-08-31 23:42:40,255.255 INFO    ] 2026-08-31 23:42:40
[2026-08-31 23:42:40,312.312 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:42:40,540.540 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:42:40,560.560 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:42:40,762.762 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:42:40,799.799 INFO    ] time= 31/08/2026 23:42:40
[2026-08-31 23:42:40,805.805 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:42:40,823.823 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:42:40,952.952 INFO    ] No existing commands found in stream
[2026-08-31 23:42:45,971.971 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:42:45,974.974 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-08-31 23:42:48,720.720 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 23:42:48,722.722 INFO    ] Checking for system updates...
[2026-08-31 23:42:48,761.761 INFO    ] 200
[2026-08-31 23:42:48,764.764 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:42:48,817.817 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:42:48,819.819 INFO    ] No update needed
[2026-08-31 23:42:48,822.822 INFO    ] Checking for camera pi updates...
[2026-08-31 23:42:48,855.855 INFO    ] 200
[2026-08-31 23:42:48,858.858 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:42:48,899.899 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:42:48,977.977 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:42:48,979.979 INFO    ] No camera update needed
[2026-08-31 23:42:48,982.982 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:42:48,984.984 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:42:48,989.989 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:42:48,994.994 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:42:51,038.038 INFO    ] ================================================
[2026-08-31 23:42:51,053.053 INFO    ] Launching Daemon at Mon Aug 31 23:42:51 IST 2026
[2026-08-31 23:42:51,065.065 INFO    ] ================================================
[2026-08-31 23:42:51,630.630 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:42:51
[2026-08-31 23:42:52,212.212 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:42:52,464.464 INFO    ] Initializing speech engine...
[2026-08-31 23:42:52,487.487 INFO    ] 2026-08-31 23:42:52
[2026-08-31 23:42:52,743.743 INFO    ] 2026-08-31 23:42:52
[2026-08-31 23:42:52,778.778 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:42:52,953.953 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:42:52,965.965 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:42:53,113.113 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:42:53,121.121 INFO    ] time= 31/08/2026 23:42:53
[2026-08-31 23:42:53,132.132 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:42:53,188.188 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:42:53,318.318 INFO    ] No existing commands found in stream
[2026-08-31 23:42:58,328.328 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:42:58,331.331 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-08-31 23:42:59,642.642 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 23:42:59,644.644 INFO    ] Checking for system updates...
[2026-08-31 23:42:59,684.684 INFO    ] 200
[2026-08-31 23:42:59,687.687 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:42:59,745.745 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:42:59,748.748 INFO    ] No update needed
[2026-08-31 23:42:59,750.750 INFO    ] Checking for camera pi updates...
[2026-08-31 23:42:59,787.787 INFO    ] 200
[2026-08-31 23:42:59,790.790 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:42:59,834.834 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:42:59,928.928 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:42:59,930.930 INFO    ] No camera update needed
[2026-08-31 23:42:59,932.932 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:42:59,934.934 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:42:59,940.940 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:42:59,944.944 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:43:02,989.989 INFO    ] ================================================
[2026-08-31 23:43:02,016.016 INFO    ] Launching Daemon at Mon Aug 31 23:43:02 IST 2026
[2026-08-31 23:43:02,035.035 INFO    ] ================================================
[2026-08-31 23:43:02,661.661 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:43:02
[2026-08-31 23:43:03,351.351 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:43:03,665.665 INFO    ] Initializing speech engine...
[2026-08-31 23:43:03,674.674 INFO    ] 2026-08-31 23:43:03
[2026-08-31 23:43:03,965.965 INFO    ] 2026-08-31 23:43:03
[2026-08-31 23:43:04,012.012 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:43:04,283.283 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:43:04,307.307 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:43:04,486.486 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:43:04,514.514 INFO    ] time= 31/08/2026 23:43:04
[2026-08-31 23:43:04,532.532 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:43:04,543.543 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:43:04,676.676 INFO    ] No existing commands found in stream
[2026-08-31 23:43:09,689.689 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:43:09,692.692 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-08-31 23:43:11,110.110 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 23:43:11,113.113 INFO    ] Checking for system updates...
[2026-08-31 23:43:11,150.150 INFO    ] 200
[2026-08-31 23:43:11,153.153 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:43:11,206.206 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:43:11,209.209 INFO    ] No update needed
[2026-08-31 23:43:11,212.212 INFO    ] Checking for camera pi updates...
[2026-08-31 23:43:11,245.245 INFO    ] 200
[2026-08-31 23:43:11,248.248 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:43:11,289.289 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:43:11,397.397 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:43:11,399.399 INFO    ] No camera update needed
[2026-08-31 23:43:11,402.402 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:43:11,404.404 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:43:11,409.409 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:43:11,414.414 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:43:13,454.454 INFO    ] ================================================
[2026-08-31 23:43:13,470.470 INFO    ] Launching Daemon at Mon Aug 31 23:43:13 IST 2026
[2026-08-31 23:43:13,481.481 INFO    ] ================================================
[2026-08-31 23:43:14,135.135 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:43:14
[2026-08-31 23:43:14,797.797 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:43:15,070.070 INFO    ] Initializing speech engine...
[2026-08-31 23:43:15,077.077 INFO    ] 2026-08-31 23:43:15
[2026-08-31 23:43:15,338.338 INFO    ] 2026-08-31 23:43:15
[2026-08-31 23:43:15,368.368 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:43:15,535.535 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:43:15,548.548 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:43:15,694.694 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:43:15,699.699 INFO    ] time= 31/08/2026 23:43:15
[2026-08-31 23:43:15,706.706 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:43:15,735.735 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:43:15,878.878 INFO    ] No existing commands found in stream
[2026-08-31 23:43:20,907.907 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:43:20,910.910 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-08-31 23:43:23,924.924 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 23:43:23,927.927 INFO    ] Checking for system updates...
[2026-08-31 23:43:23,964.964 INFO    ] 200
[2026-08-31 23:43:23,967.967 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:43:24,021.021 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:43:24,023.023 INFO    ] No update needed
[2026-08-31 23:43:24,025.025 INFO    ] Checking for camera pi updates...
[2026-08-31 23:43:24,059.059 INFO    ] 200
[2026-08-31 23:43:24,062.062 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:43:24,107.107 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:43:24,201.201 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:43:24,203.203 INFO    ] No camera update needed
[2026-08-31 23:43:24,205.205 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:43:24,208.208 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:43:24,213.213 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:43:24,218.218 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:43:26,259.259 INFO    ] ================================================
[2026-08-31 23:43:26,274.274 INFO    ] Launching Daemon at Mon Aug 31 23:43:26 IST 2026
[2026-08-31 23:43:26,286.286 INFO    ] ================================================
[2026-08-31 23:43:26,866.866 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:43:26
[2026-08-31 23:43:27,465.465 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:43:27,740.740 INFO    ] Initializing speech engine...
[2026-08-31 23:43:27,750.750 INFO    ] 2026-08-31 23:43:27
[2026-08-31 23:43:28,013.013 INFO    ] 2026-08-31 23:43:28
[2026-08-31 23:43:28,067.067 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:43:28,288.288 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:43:28,297.297 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:43:28,521.521 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:43:28,557.557 INFO    ] time= 31/08/2026 23:43:28
[2026-08-31 23:43:28,575.575 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:43:28,585.585 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:43:28,736.736 INFO    ] No existing commands found in stream
[2026-08-31 23:43:33,762.762 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:43:33,765.765 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-08-31 23:43:34,437.437 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 23:43:34,440.440 INFO    ] Checking for system updates...
[2026-08-31 23:43:34,479.479 INFO    ] 200
[2026-08-31 23:43:34,482.482 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:43:34,541.541 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:43:34,544.544 INFO    ] No update needed
[2026-08-31 23:43:34,546.546 INFO    ] Checking for camera pi updates...
[2026-08-31 23:43:34,584.584 INFO    ] 200
[2026-08-31 23:43:34,586.586 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:43:34,632.632 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:43:34,714.714 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:43:34,717.717 INFO    ] No camera update needed
[2026-08-31 23:43:34,722.722 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:43:34,724.724 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:43:34,731.731 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:43:34,736.736 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:43:36,777.777 INFO    ] ================================================
[2026-08-31 23:43:36,796.796 INFO    ] Launching Daemon at Mon Aug 31 23:43:36 IST 2026
[2026-08-31 23:43:36,806.806 INFO    ] ================================================
[2026-08-31 23:43:37,464.464 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:43:37
[2026-08-31 23:43:38,141.141 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:43:38,449.449 INFO    ] Initializing speech engine...
[2026-08-31 23:43:38,458.458 INFO    ] 2026-08-31 23:43:38
[2026-08-31 23:43:38,747.747 INFO    ] 2026-08-31 23:43:38
[2026-08-31 23:43:38,793.793 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:43:39,024.024 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:43:39,029.029 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:43:39,168.168 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:43:39,223.223 INFO    ] time= 31/08/2026 23:43:39
[2026-08-31 23:43:39,278.278 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:43:39,304.304 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:43:39,441.441 INFO    ] No existing commands found in stream
[2026-08-31 23:43:44,464.464 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:43:44,467.467 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-08-31 23:43:45,339.339 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 23:43:45,342.342 INFO    ] Checking for system updates...
[2026-08-31 23:43:45,379.379 INFO    ] 200
[2026-08-31 23:43:45,382.382 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:43:45,438.438 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:43:45,441.441 INFO    ] No update needed
[2026-08-31 23:43:45,443.443 INFO    ] Checking for camera pi updates...
[2026-08-31 23:43:45,477.477 INFO    ] 200
[2026-08-31 23:43:45,480.480 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:43:45,526.526 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:43:45,600.600 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:43:45,603.603 INFO    ] No camera update needed
[2026-08-31 23:43:45,606.606 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:43:45,609.609 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:43:45,615.615 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:43:45,621.621 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:43:47,663.663 INFO    ] ================================================
[2026-08-31 23:43:47,678.678 INFO    ] Launching Daemon at Mon Aug 31 23:43:47 IST 2026
[2026-08-31 23:43:47,689.689 INFO    ] ================================================
[2026-08-31 23:43:48,296.296 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:43:48
[2026-08-31 23:43:48,966.966 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:43:49,275.275 INFO    ] Initializing speech engine...
[2026-08-31 23:43:49,285.285 INFO    ] 2026-08-31 23:43:49
[2026-08-31 23:43:49,595.595 INFO    ] 2026-08-31 23:43:49
[2026-08-31 23:43:49,680.680 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:43:49,893.893 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:43:49,899.899 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:43:50,095.095 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:43:50,113.113 INFO    ] time= 31/08/2026 23:43:50
[2026-08-31 23:43:50,120.120 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:43:50,149.149 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:43:50,266.266 INFO    ] No existing commands found in stream
[2026-08-31 23:43:55,291.291 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:43:55,295.295 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-08-31 23:43:55,800.800 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 23:43:55,803.803 INFO    ] Checking for system updates...
[2026-08-31 23:43:55,844.844 INFO    ] 200
[2026-08-31 23:43:55,847.847 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:43:55,906.906 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:43:55,909.909 INFO    ] No update needed
[2026-08-31 23:43:55,911.911 INFO    ] Checking for camera pi updates...
[2026-08-31 23:43:55,947.947 INFO    ] 200
[2026-08-31 23:43:55,950.950 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:43:55,992.992 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:43:56,073.073 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:43:56,075.075 INFO    ] No camera update needed
[2026-08-31 23:43:56,078.078 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:43:56,081.081 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:43:56,087.087 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:43:56,093.093 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:43:58,133.133 INFO    ] ================================================
[2026-08-31 23:43:58,149.149 INFO    ] Launching Daemon at Mon Aug 31 23:43:58 IST 2026
[2026-08-31 23:43:58,160.160 INFO    ] ================================================
[2026-08-31 23:43:58,819.819 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:43:58
[2026-08-31 23:43:59,490.490 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:43:59,793.793 INFO    ] Initializing speech engine...
[2026-08-31 23:43:59,801.801 INFO    ] 2026-08-31 23:43:59
[2026-08-31 23:44:00,123.123 INFO    ] 2026-08-31 23:44:00
[2026-08-31 23:44:00,209.209 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:44:00,386.386 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:44:00,392.392 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:44:00,588.588 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:44:00,626.626 INFO    ] time= 31/08/2026 23:44:00
[2026-08-31 23:44:00,644.644 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:44:00,654.654 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:44:00,761.761 INFO    ] No existing commands found in stream
[2026-08-31 23:44:05,789.789 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:44:05,792.792 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-08-31 23:44:06,312.312 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 23:44:06,315.315 INFO    ] Checking for system updates...
[2026-08-31 23:44:06,355.355 INFO    ] 200
[2026-08-31 23:44:06,358.358 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:44:06,418.418 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:44:06,421.421 INFO    ] No update needed
[2026-08-31 23:44:06,424.424 INFO    ] Checking for camera pi updates...
[2026-08-31 23:44:06,462.462 INFO    ] 200
[2026-08-31 23:44:06,464.464 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:44:06,514.514 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:44:06,591.591 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:44:06,594.594 INFO    ] No camera update needed
[2026-08-31 23:44:06,596.596 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:44:06,598.598 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:44:06,604.604 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:44:06,609.609 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:44:08,649.649 INFO    ] ================================================
[2026-08-31 23:44:08,664.664 INFO    ] Launching Daemon at Mon Aug 31 23:44:08 IST 2026
[2026-08-31 23:44:08,675.675 INFO    ] ================================================
[2026-08-31 23:44:09,241.241 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:44:09
[2026-08-31 23:44:09,859.859 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:44:10,136.136 INFO    ] Initializing speech engine...
[2026-08-31 23:44:10,145.145 INFO    ] 2026-08-31 23:44:10
[2026-08-31 23:44:10,403.403 INFO    ] 2026-08-31 23:44:10
[2026-08-31 23:44:10,478.478 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:44:10,706.706 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:44:10,711.711 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:44:10,914.914 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:44:10,945.945 INFO    ] time= 31/08/2026 23:44:10
[2026-08-31 23:44:10,951.951 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:44:10,969.969 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:44:11,068.068 INFO    ] No existing commands found in stream
[2026-08-31 23:44:16,093.093 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:44:16,096.096 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-08-31 23:44:16,669.669 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 23:44:16,672.672 INFO    ] Checking for system updates...
[2026-08-31 23:44:16,708.708 INFO    ] 200
[2026-08-31 23:44:16,711.711 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:44:16,771.771 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:44:16,775.775 INFO    ] No update needed
[2026-08-31 23:44:16,777.777 INFO    ] Checking for camera pi updates...
[2026-08-31 23:44:16,816.816 INFO    ] 200
[2026-08-31 23:44:16,819.819 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:44:16,861.861 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:44:17,042.042 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:44:17,045.045 INFO    ] No camera update needed
[2026-08-31 23:44:17,049.049 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:44:17,052.052 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:44:17,058.058 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:44:17,064.064 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:44:19,104.104 INFO    ] ================================================
[2026-08-31 23:44:19,119.119 INFO    ] Launching Daemon at Mon Aug 31 23:44:19 IST 2026
[2026-08-31 23:44:19,131.131 INFO    ] ================================================
[2026-08-31 23:44:19,766.766 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:44:19
[2026-08-31 23:44:20,388.388 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:44:20,666.666 INFO    ] Initializing speech engine...
[2026-08-31 23:44:20,675.675 INFO    ] 2026-08-31 23:44:20
[2026-08-31 23:44:20,934.934 INFO    ] 2026-08-31 23:44:20
[2026-08-31 23:44:20,989.989 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:44:21,210.210 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:44:21,219.219 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:44:21,353.353 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:44:21,423.423 INFO    ] time= 31/08/2026 23:44:21
[2026-08-31 23:44:21,479.479 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:44:21,486.486 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:44:21,632.632 INFO    ] No existing commands found in stream
[2026-08-31 23:44:26,655.655 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:44:26,658.658 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-08-31 23:44:28,814.814 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 23:44:28,816.816 INFO    ] Checking for system updates...
[2026-08-31 23:44:28,853.853 INFO    ] 200
[2026-08-31 23:44:28,856.856 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:44:28,910.910 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:44:28,913.913 INFO    ] No update needed
[2026-08-31 23:44:28,915.915 INFO    ] Checking for camera pi updates...
[2026-08-31 23:44:28,950.950 INFO    ] 200
[2026-08-31 23:44:28,953.953 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:44:28,998.998 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:44:29,049.049 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:44:29,051.051 INFO    ] No camera update needed
[2026-08-31 23:44:29,054.054 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:44:29,056.056 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:44:29,061.061 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:44:29,066.066 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:44:31,108.108 INFO    ] ================================================
[2026-08-31 23:44:31,123.123 INFO    ] Launching Daemon at Mon Aug 31 23:44:31 IST 2026
[2026-08-31 23:44:31,134.134 INFO    ] ================================================
[2026-08-31 23:44:31,725.725 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:44:31
[2026-08-31 23:44:32,343.343 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:44:32,618.618 INFO    ] Initializing speech engine...
[2026-08-31 23:44:32,633.633 INFO    ] 2026-08-31 23:44:32
[2026-08-31 23:44:32,903.903 INFO    ] 2026-08-31 23:44:32
[2026-08-31 23:44:32,941.941 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:44:33,175.175 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:44:33,183.183 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:44:33,353.353 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:44:33,379.379 INFO    ] time= 31/08/2026 23:44:33
[2026-08-31 23:44:33,428.428 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:44:33,467.467 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:44:33,545.545 INFO    ] No existing commands found in stream
[2026-08-31 23:44:38,557.557 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:44:38,560.560 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-08-31 23:44:42,481.481 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 23:44:42,483.483 INFO    ] Checking for system updates...
[2026-08-31 23:44:42,522.522 INFO    ] 200
[2026-08-31 23:44:42,525.525 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:44:42,577.577 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:44:42,579.579 INFO    ] No update needed
[2026-08-31 23:44:42,582.582 INFO    ] Checking for camera pi updates...
[2026-08-31 23:44:42,615.615 INFO    ] 200
[2026-08-31 23:44:42,617.617 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:44:42,657.657 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:44:42,737.737 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:44:42,740.740 INFO    ] No camera update needed
[2026-08-31 23:44:42,742.742 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:44:42,744.744 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:44:42,749.749 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:44:42,754.754 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:44:44,793.793 INFO    ] ================================================
[2026-08-31 23:44:44,809.809 INFO    ] Launching Daemon at Mon Aug 31 23:44:44 IST 2026
[2026-08-31 23:44:44,819.819 INFO    ] ================================================
[2026-08-31 23:44:45,432.432 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:44:45
[2026-08-31 23:44:46,029.029 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:44:46,303.303 INFO    ] Initializing speech engine...
[2026-08-31 23:44:46,310.310 INFO    ] 2026-08-31 23:44:46
[2026-08-31 23:44:46,567.567 INFO    ] 2026-08-31 23:44:46
[2026-08-31 23:44:46,625.625 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:44:46,852.852 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:44:46,857.857 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:44:47,071.071 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:44:47,112.112 INFO    ] time= 31/08/2026 23:44:47
[2026-08-31 23:44:47,118.118 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:44:47,136.136 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:44:47,247.247 INFO    ] No existing commands found in stream
[2026-08-31 23:44:52,274.274 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:44:52,276.276 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-08-31 23:44:56,655.655 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 23:44:56,658.658 INFO    ] Checking for system updates...
[2026-08-31 23:44:56,694.694 INFO    ] 200
[2026-08-31 23:44:56,696.696 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:44:56,748.748 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:44:56,751.751 INFO    ] No update needed
[2026-08-31 23:44:56,753.753 INFO    ] Checking for camera pi updates...
[2026-08-31 23:44:56,787.787 INFO    ] 200
[2026-08-31 23:44:56,789.789 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:44:56,830.830 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:44:56,940.940 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:44:56,943.943 INFO    ] No camera update needed
[2026-08-31 23:44:56,945.945 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:44:56,947.947 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:44:56,953.953 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:44:56,958.958 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:44:59,000.000 INFO    ] ================================================
[2026-08-31 23:44:59,015.015 INFO    ] Launching Daemon at Mon Aug 31 23:44:59 IST 2026
[2026-08-31 23:44:59,025.025 INFO    ] ================================================
[2026-08-31 23:44:59,592.592 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:44:59
[2026-08-31 23:45:00,193.193 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:45:00,500.500 INFO    ] Initializing speech engine...
[2026-08-31 23:45:00,507.507 INFO    ] 2026-08-31 23:45:00
[2026-08-31 23:45:00,784.784 INFO    ] 2026-08-31 23:45:00
[2026-08-31 23:45:00,841.841 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:45:01,133.133 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:45:01,142.142 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:45:01,341.341 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:45:01,359.359 INFO    ] time= 31/08/2026 23:45:01
[2026-08-31 23:45:01,370.370 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:45:01,400.400 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:45:01,517.517 INFO    ] No existing commands found in stream
[2026-08-31 23:45:06,542.542 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:45:06,545.545 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-08-31 23:45:09,380.380 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 23:45:09,383.383 INFO    ] Checking for system updates...
[2026-08-31 23:45:09,424.424 INFO    ] 200
[2026-08-31 23:45:09,426.426 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:45:09,479.479 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:45:09,481.481 INFO    ] No update needed
[2026-08-31 23:45:09,484.484 INFO    ] Checking for camera pi updates...
[2026-08-31 23:45:09,522.522 INFO    ] 200
[2026-08-31 23:45:09,524.524 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:45:09,564.564 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:45:09,643.643 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:45:09,646.646 INFO    ] No camera update needed
[2026-08-31 23:45:09,648.648 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:45:09,650.650 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:45:09,656.656 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:45:09,661.661 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:45:11,700.700 INFO    ] ================================================
[2026-08-31 23:45:11,715.715 INFO    ] Launching Daemon at Mon Aug 31 23:45:11 IST 2026
[2026-08-31 23:45:11,726.726 INFO    ] ================================================
[2026-08-31 23:45:12,306.306 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:45:12
[2026-08-31 23:45:12,901.901 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:45:13,178.178 INFO    ] Initializing speech engine...
[2026-08-31 23:45:13,184.184 INFO    ] 2026-08-31 23:45:13
[2026-08-31 23:45:13,447.447 INFO    ] 2026-08-31 23:45:13
[2026-08-31 23:45:13,476.476 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:45:13,725.725 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:45:13,730.730 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:45:13,864.864 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:45:13,910.910 INFO    ] time= 31/08/2026 23:45:13
[2026-08-31 23:45:13,964.964 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:45:13,996.996 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:45:14,119.119 INFO    ] No existing commands found in stream
[2026-08-31 23:45:19,144.144 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:45:19,147.147 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-08-31 23:45:23,529.529 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 23:45:23,532.532 INFO    ] Checking for system updates...
[2026-08-31 23:45:23,567.567 INFO    ] 200
[2026-08-31 23:45:23,570.570 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:45:23,631.631 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:45:23,633.633 INFO    ] No update needed
[2026-08-31 23:45:23,636.636 INFO    ] Checking for camera pi updates...
[2026-08-31 23:45:23,669.669 INFO    ] 200
[2026-08-31 23:45:23,672.672 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:45:23,712.712 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:45:23,793.793 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:45:23,795.795 INFO    ] No camera update needed
[2026-08-31 23:45:23,798.798 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:45:23,801.801 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:45:23,806.806 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:45:23,811.811 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:45:25,852.852 INFO    ] ================================================
[2026-08-31 23:45:25,868.868 INFO    ] Launching Daemon at Mon Aug 31 23:45:25 IST 2026
[2026-08-31 23:45:25,878.878 INFO    ] ================================================
[2026-08-31 23:45:26,535.535 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:45:26
[2026-08-31 23:45:27,209.209 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:45:27,527.527 INFO    ] Initializing speech engine...
[2026-08-31 23:45:27,542.542 INFO    ] 2026-08-31 23:45:27
[2026-08-31 23:45:27,856.856 INFO    ] 2026-08-31 23:45:27
[2026-08-31 23:45:27,942.942 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:45:28,096.096 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:45:28,101.101 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:45:28,285.285 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:45:28,346.346 INFO    ] time= 31/08/2026 23:45:28
[2026-08-31 23:45:28,361.361 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:45:28,378.378 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:45:28,512.512 INFO    ] No existing commands found in stream
[2026-08-31 23:45:33,527.527 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:45:33,531.531 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-08-31 23:45:37,089.089 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 23:45:37,092.092 INFO    ] Checking for system updates...
[2026-08-31 23:45:37,129.129 INFO    ] 200
[2026-08-31 23:45:37,132.132 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:45:37,192.192 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:45:37,195.195 INFO    ] No update needed
[2026-08-31 23:45:37,198.198 INFO    ] Checking for camera pi updates...
[2026-08-31 23:45:37,237.237 INFO    ] 200
[2026-08-31 23:45:37,240.240 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:45:37,287.287 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:45:37,371.371 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:45:37,374.374 INFO    ] No camera update needed
[2026-08-31 23:45:37,376.376 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:45:37,379.379 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:45:37,385.385 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:45:37,391.391 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:45:39,433.433 INFO    ] ================================================
[2026-08-31 23:45:39,448.448 INFO    ] Launching Daemon at Mon Aug 31 23:45:39 IST 2026
[2026-08-31 23:45:39,459.459 INFO    ] ================================================
[2026-08-31 23:45:40,046.046 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:45:40
[2026-08-31 23:45:40,646.646 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:45:40,921.921 INFO    ] Initializing speech engine...
[2026-08-31 23:45:40,932.932 INFO    ] 2026-08-31 23:45:40
[2026-08-31 23:45:41,193.193 INFO    ] 2026-08-31 23:45:41
[2026-08-31 23:45:41,224.224 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:45:41,472.472 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:45:41,478.478 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:45:41,609.609 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:45:41,656.656 INFO    ] time= 31/08/2026 23:45:41
[2026-08-31 23:45:41,706.706 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:45:41,743.743 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:45:41,866.866 INFO    ] No existing commands found in stream
[2026-08-31 23:45:46,896.896 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:45:46,899.899 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-08-31 23:45:50,250.250 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 23:45:50,253.253 INFO    ] Checking for system updates...
[2026-08-31 23:45:50,299.299 INFO    ] 200
[2026-08-31 23:45:50,302.302 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:45:50,380.380 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:45:50,383.383 INFO    ] No update needed
[2026-08-31 23:45:50,385.385 INFO    ] Checking for camera pi updates...
[2026-08-31 23:45:50,422.422 INFO    ] 200
[2026-08-31 23:45:50,425.425 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:45:50,465.465 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:45:50,534.534 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:45:50,536.536 INFO    ] No camera update needed
[2026-08-31 23:45:50,539.539 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:45:50,541.541 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:45:50,546.546 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:45:50,551.551 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:45:52,592.592 INFO    ] ================================================
[2026-08-31 23:45:52,608.608 INFO    ] Launching Daemon at Mon Aug 31 23:45:52 IST 2026
[2026-08-31 23:45:52,618.618 INFO    ] ================================================
[2026-08-31 23:45:53,272.272 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:45:53
[2026-08-31 23:45:53,946.946 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:45:54,249.249 INFO    ] Initializing speech engine...
[2026-08-31 23:45:54,257.257 INFO    ] 2026-08-31 23:45:54
[2026-08-31 23:45:54,534.534 INFO    ] 2026-08-31 23:45:54
[2026-08-31 23:45:54,591.591 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:45:54,841.841 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:45:54,860.860 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:45:55,059.059 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:45:55,081.081 INFO    ] time= 31/08/2026 23:45:55
[2026-08-31 23:45:55,088.088 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:45:55,107.107 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:45:55,240.240 INFO    ] No existing commands found in stream
[2026-08-31 23:46:00,269.269 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:46:00,272.272 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-08-31 23:46:02,675.675 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 23:46:02,680.680 INFO    ] Checking for system updates...
[2026-08-31 23:46:02,734.734 INFO    ] 200
[2026-08-31 23:46:02,738.738 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:46:02,807.807 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:46:02,810.810 INFO    ] No update needed
[2026-08-31 23:46:02,812.812 INFO    ] Checking for camera pi updates...
[2026-08-31 23:46:02,854.854 INFO    ] 200
[2026-08-31 23:46:02,857.857 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:46:02,906.906 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:46:03,008.008 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:46:03,010.010 INFO    ] No camera update needed
[2026-08-31 23:46:03,013.013 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:46:03,015.015 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:46:03,020.020 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:46:03,026.026 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:46:05,066.066 INFO    ] ================================================
[2026-08-31 23:46:05,081.081 INFO    ] Launching Daemon at Mon Aug 31 23:46:05 IST 2026
[2026-08-31 23:46:05,092.092 INFO    ] ================================================
[2026-08-31 23:46:05,736.736 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:46:05
[2026-08-31 23:46:06,410.410 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:46:06,678.678 INFO    ] Initializing speech engine...
[2026-08-31 23:46:06,688.688 INFO    ] 2026-08-31 23:46:06
[2026-08-31 23:46:06,933.933 INFO    ] 2026-08-31 23:46:06
[2026-08-31 23:46:06,968.968 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:46:07,153.153 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:46:07,166.166 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:46:07,310.310 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:46:07,331.331 INFO    ] time= 31/08/2026 23:46:07
[2026-08-31 23:46:07,339.339 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:46:07,344.344 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:46:07,420.420 INFO    ] No existing commands found in stream
[2026-08-31 23:46:12,432.432 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:46:12,434.434 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-08-31 23:46:16,352.352 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 23:46:16,354.354 INFO    ] Checking for system updates...
[2026-08-31 23:46:16,393.393 INFO    ] 200
[2026-08-31 23:46:16,395.395 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:46:16,448.448 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:46:16,450.450 INFO    ] No update needed
[2026-08-31 23:46:16,452.452 INFO    ] Checking for camera pi updates...
[2026-08-31 23:46:16,485.485 INFO    ] 200
[2026-08-31 23:46:16,488.488 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:46:16,532.532 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:46:16,609.609 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:46:16,611.611 INFO    ] No camera update needed
[2026-08-31 23:46:16,613.613 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:46:16,616.616 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:46:16,621.621 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:46:16,626.626 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:46:18,666.666 INFO    ] ================================================
[2026-08-31 23:46:18,681.681 INFO    ] Launching Daemon at Mon Aug 31 23:46:18 IST 2026
[2026-08-31 23:46:18,692.692 INFO    ] ================================================
[2026-08-31 23:46:19,329.329 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:46:19
[2026-08-31 23:46:19,986.986 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:46:20,287.287 INFO    ] Initializing speech engine...
[2026-08-31 23:46:20,299.299 INFO    ] 2026-08-31 23:46:20
[2026-08-31 23:46:20,573.573 INFO    ] 2026-08-31 23:46:20
[2026-08-31 23:46:20,612.612 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:46:20,865.865 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:46:20,871.871 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:46:21,077.077 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:46:21,128.128 INFO    ] time= 31/08/2026 23:46:21
[2026-08-31 23:46:21,146.146 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:46:21,156.156 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:46:21,282.282 INFO    ] No existing commands found in stream
[2026-08-31 23:46:26,295.295 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:46:26,299.299 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-08-31 23:46:29,490.490 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 23:46:29,493.493 INFO    ] Checking for system updates...
[2026-08-31 23:46:29,529.529 INFO    ] 200
[2026-08-31 23:46:29,532.532 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:46:29,591.591 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:46:29,594.594 INFO    ] No update needed
[2026-08-31 23:46:29,597.597 INFO    ] Checking for camera pi updates...
[2026-08-31 23:46:29,631.631 INFO    ] 200
[2026-08-31 23:46:29,634.634 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:46:29,676.676 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:46:29,825.825 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:46:29,828.828 INFO    ] No camera update needed
[2026-08-31 23:46:29,831.831 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:46:29,834.834 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:46:29,840.840 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:46:29,846.846 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:46:31,889.889 INFO    ] ================================================
[2026-08-31 23:46:31,904.904 INFO    ] Launching Daemon at Mon Aug 31 23:46:31 IST 2026
[2026-08-31 23:46:31,915.915 INFO    ] ================================================
[2026-08-31 23:46:32,509.509 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:46:32
[2026-08-31 23:46:33,118.118 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:46:33,388.388 INFO    ] Initializing speech engine...
[2026-08-31 23:46:33,407.407 INFO    ] 2026-08-31 23:46:33
[2026-08-31 23:46:33,672.672 INFO    ] 2026-08-31 23:46:33
[2026-08-31 23:46:33,709.709 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:46:33,903.903 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:46:33,917.917 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:46:34,036.036 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:46:34,042.042 INFO    ] time= 31/08/2026 23:46:34
[2026-08-31 23:46:34,049.049 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:46:34,068.068 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:46:34,167.167 INFO    ] No existing commands found in stream
[2026-08-31 23:46:39,179.179 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:46:39,181.181 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-08-31 23:46:40,634.634 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 23:46:40,637.637 INFO    ] Checking for system updates...
[2026-08-31 23:46:40,674.674 INFO    ] 200
[2026-08-31 23:46:40,677.677 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:46:40,736.736 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:46:40,739.739 INFO    ] No update needed
[2026-08-31 23:46:40,742.742 INFO    ] Checking for camera pi updates...
[2026-08-31 23:46:40,777.777 INFO    ] 200
[2026-08-31 23:46:40,780.780 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:46:40,827.827 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:46:40,909.909 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:46:40,911.911 INFO    ] No camera update needed
[2026-08-31 23:46:40,913.913 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:46:40,916.916 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:46:40,921.921 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:46:40,926.926 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:46:42,966.966 INFO    ] ================================================
[2026-08-31 23:46:42,981.981 INFO    ] Launching Daemon at Mon Aug 31 23:46:42 IST 2026
[2026-08-31 23:46:42,991.991 INFO    ] ================================================
[2026-08-31 23:46:43,568.568 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:46:43
[2026-08-31 23:46:44,163.163 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:46:44,419.419 INFO    ] Initializing speech engine...
[2026-08-31 23:46:44,426.426 INFO    ] 2026-08-31 23:46:44
[2026-08-31 23:46:44,721.721 INFO    ] 2026-08-31 23:46:44
[2026-08-31 23:46:44,759.759 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:46:44,955.955 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:46:44,968.968 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:46:45,128.128 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:46:45,137.137 INFO    ] time= 31/08/2026 23:46:45
[2026-08-31 23:46:45,144.144 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:46:45,150.150 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:46:45,260.260 INFO    ] No existing commands found in stream
[2026-08-31 23:46:50,285.285 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:46:50,288.288 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-08-31 23:46:53,249.249 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 23:46:53,252.252 INFO    ] Checking for system updates...
[2026-08-31 23:46:53,288.288 INFO    ] 200
[2026-08-31 23:46:53,290.290 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:46:53,342.342 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:46:53,345.345 INFO    ] No update needed
[2026-08-31 23:46:53,347.347 INFO    ] Checking for camera pi updates...
[2026-08-31 23:46:53,384.384 INFO    ] 200
[2026-08-31 23:46:53,386.386 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:46:53,426.426 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:46:53,504.504 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:46:53,507.507 INFO    ] No camera update needed
[2026-08-31 23:46:53,509.509 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:46:53,512.512 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:46:53,517.517 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:46:53,522.522 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:46:55,561.561 INFO    ] ================================================
[2026-08-31 23:46:55,576.576 INFO    ] Launching Daemon at Mon Aug 31 23:46:55 IST 2026
[2026-08-31 23:46:55,587.587 INFO    ] ================================================
[2026-08-31 23:46:56,161.161 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:46:56
[2026-08-31 23:46:56,744.744 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:46:56,997.997 INFO    ] Initializing speech engine...
[2026-08-31 23:46:57,004.004 INFO    ] 2026-08-31 23:46:56
[2026-08-31 23:46:57,302.302 INFO    ] 2026-08-31 23:46:57
[2026-08-31 23:46:57,327.327 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:46:57,538.538 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:46:57,545.545 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:46:57,719.719 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:46:57,725.725 INFO    ] time= 31/08/2026 23:46:57
[2026-08-31 23:46:57,732.732 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:46:57,764.764 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:46:57,889.889 INFO    ] No existing commands found in stream
[2026-08-31 23:47:02,920.920 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:47:02,923.923 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-08-31 23:47:04,202.202 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 23:47:04,205.205 INFO    ] Checking for system updates...
[2026-08-31 23:47:04,241.241 INFO    ] 200
[2026-08-31 23:47:04,243.243 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:47:04,295.295 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:47:04,298.298 INFO    ] No update needed
[2026-08-31 23:47:04,300.300 INFO    ] Checking for camera pi updates...
[2026-08-31 23:47:04,335.335 INFO    ] 200
[2026-08-31 23:47:04,338.338 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:47:04,383.383 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:47:04,462.462 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:47:04,464.464 INFO    ] No camera update needed
[2026-08-31 23:47:04,467.467 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:47:04,469.469 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:47:04,474.474 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:47:04,479.479 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:47:06,519.519 INFO    ] ================================================
[2026-08-31 23:47:06,534.534 INFO    ] Launching Daemon at Mon Aug 31 23:47:06 IST 2026
[2026-08-31 23:47:06,545.545 INFO    ] ================================================
[2026-08-31 23:47:07,194.194 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:47:07
[2026-08-31 23:47:07,845.845 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:47:08,116.116 INFO    ] Initializing speech engine...
[2026-08-31 23:47:08,125.125 INFO    ] 2026-08-31 23:47:08
[2026-08-31 23:47:08,373.373 INFO    ] 2026-08-31 23:47:08
[2026-08-31 23:47:08,407.407 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:47:08,606.606 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:47:08,628.628 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:47:08,808.808 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:47:08,850.850 INFO    ] time= 31/08/2026 23:47:08
[2026-08-31 23:47:08,915.915 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:47:08,944.944 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:47:09,075.075 INFO    ] No existing commands found in stream
[2026-08-31 23:47:14,100.100 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:47:14,103.103 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-08-31 23:47:16,832.832 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 23:47:16,835.835 INFO    ] Checking for system updates...
[2026-08-31 23:47:16,873.873 INFO    ] 200
[2026-08-31 23:47:16,876.876 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:47:16,936.936 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:47:16,939.939 INFO    ] No update needed
[2026-08-31 23:47:16,941.941 INFO    ] Checking for camera pi updates...
[2026-08-31 23:47:16,974.974 INFO    ] 200
[2026-08-31 23:47:16,976.976 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:47:17,017.017 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:47:17,101.101 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:47:17,103.103 INFO    ] No camera update needed
[2026-08-31 23:47:17,105.105 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:47:17,108.108 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:47:17,113.113 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:47:17,118.118 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:47:19,160.160 INFO    ] ================================================
[2026-08-31 23:47:19,175.175 INFO    ] Launching Daemon at Mon Aug 31 23:47:19 IST 2026
[2026-08-31 23:47:19,186.186 INFO    ] ================================================
[2026-08-31 23:47:19,769.769 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:47:19
[2026-08-31 23:47:20,368.368 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:47:20,633.633 INFO    ] Initializing speech engine...
[2026-08-31 23:47:20,652.652 INFO    ] 2026-08-31 23:47:20
[2026-08-31 23:47:20,919.919 INFO    ] 2026-08-31 23:47:20
[2026-08-31 23:47:20,959.959 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:47:21,182.182 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:47:21,242.242 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:47:21,403.403 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:47:21,410.410 INFO    ] time= 31/08/2026 23:47:21
[2026-08-31 23:47:21,450.450 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:47:21,499.499 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:47:21,608.608 INFO    ] No existing commands found in stream
[2026-08-31 23:47:26,620.620 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:47:26,623.623 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-08-31 23:47:30,873.873 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 23:47:30,876.876 INFO    ] Checking for system updates...
[2026-08-31 23:47:30,914.914 INFO    ] 200
[2026-08-31 23:47:30,917.917 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:47:30,969.969 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:47:30,971.971 INFO    ] No update needed
[2026-08-31 23:47:30,974.974 INFO    ] Checking for camera pi updates...
[2026-08-31 23:47:31,007.007 INFO    ] 200
[2026-08-31 23:47:31,009.009 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:47:31,049.049 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:47:31,134.134 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:47:31,137.137 INFO    ] No camera update needed
[2026-08-31 23:47:31,139.139 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:47:31,141.141 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:47:31,147.147 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:47:31,152.152 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:47:33,193.193 INFO    ] ================================================
[2026-08-31 23:47:33,209.209 INFO    ] Launching Daemon at Mon Aug 31 23:47:33 IST 2026
[2026-08-31 23:47:33,220.220 INFO    ] ================================================
[2026-08-31 23:47:33,862.862 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:47:33
[2026-08-31 23:47:34,523.523 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:47:34,822.822 INFO    ] Initializing speech engine...
[2026-08-31 23:47:34,830.830 INFO    ] 2026-08-31 23:47:34
[2026-08-31 23:47:35,103.103 INFO    ] 2026-08-31 23:47:35
[2026-08-31 23:47:35,156.156 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:47:35,385.385 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:47:35,405.405 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:47:35,613.613 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:47:35,647.647 INFO    ] time= 31/08/2026 23:47:35
[2026-08-31 23:47:35,653.653 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:47:35,670.670 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:47:35,803.803 INFO    ] No existing commands found in stream
[2026-08-31 23:47:40,818.818 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:47:40,821.821 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-08-31 23:47:42,606.606 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 23:47:42,609.609 INFO    ] Checking for system updates...
[2026-08-31 23:47:42,644.644 INFO    ] 200
[2026-08-31 23:47:42,647.647 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:47:42,699.699 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:47:42,701.701 INFO    ] No update needed
[2026-08-31 23:47:42,704.704 INFO    ] Checking for camera pi updates...
[2026-08-31 23:47:42,738.738 INFO    ] 200
[2026-08-31 23:47:42,740.740 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:47:42,785.785 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:47:42,871.871 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:47:42,874.874 INFO    ] No camera update needed
[2026-08-31 23:47:42,876.876 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:47:42,879.879 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:47:42,884.884 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:47:42,889.889 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:47:44,929.929 INFO    ] ================================================
[2026-08-31 23:47:44,945.945 INFO    ] Launching Daemon at Mon Aug 31 23:47:44 IST 2026
[2026-08-31 23:47:44,956.956 INFO    ] ================================================
[2026-08-31 23:47:45,597.597 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:47:45
[2026-08-31 23:47:46,261.261 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:47:46,561.561 INFO    ] Initializing speech engine...
[2026-08-31 23:47:46,574.574 INFO    ] 2026-08-31 23:47:46
[2026-08-31 23:47:46,881.881 INFO    ] 2026-08-31 23:47:46
[2026-08-31 23:47:46,966.966 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:47:47,177.177 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:47:47,185.185 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:47:47,381.381 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:47:47,388.388 INFO    ] time= 31/08/2026 23:47:47
[2026-08-31 23:47:47,406.406 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:47:47,435.435 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:47:47,544.544 INFO    ] No existing commands found in stream
[2026-08-31 23:47:52,573.573 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:47:52,576.576 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-08-31 23:47:54,998.998 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 23:47:55,001.001 INFO    ] Checking for system updates...
[2026-08-31 23:47:55,043.043 INFO    ] 200
[2026-08-31 23:47:55,046.046 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:47:55,104.104 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:47:55,107.107 INFO    ] No update needed
[2026-08-31 23:47:55,110.110 INFO    ] Checking for camera pi updates...
[2026-08-31 23:47:55,143.143 INFO    ] 200
[2026-08-31 23:47:55,146.146 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:47:55,192.192 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:47:55,258.258 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:47:55,260.260 INFO    ] No camera update needed
[2026-08-31 23:47:55,262.262 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:47:55,265.265 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:47:55,270.270 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:47:55,275.275 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:47:57,314.314 INFO    ] ================================================
[2026-08-31 23:47:57,329.329 INFO    ] Launching Daemon at Mon Aug 31 23:47:57 IST 2026
[2026-08-31 23:47:57,339.339 INFO    ] ================================================
[2026-08-31 23:47:58,000.000 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:47:57
[2026-08-31 23:47:58,683.683 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:47:58,987.987 INFO    ] Initializing speech engine...
[2026-08-31 23:47:59,001.001 INFO    ] 2026-08-31 23:47:58
[2026-08-31 23:47:59,288.288 INFO    ] 2026-08-31 23:47:59
[2026-08-31 23:47:59,397.397 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:47:59,611.611 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:47:59,620.620 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:47:59,809.809 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:47:59,827.827 INFO    ] time= 31/08/2026 23:47:59
[2026-08-31 23:47:59,838.838 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:47:59,863.863 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:48:00,020.020 INFO    ] No existing commands found in stream
[2026-08-31 23:48:05,051.051 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:48:05,054.054 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-08-31 23:48:06,894.894 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 23:48:06,898.898 INFO    ] Checking for system updates...
[2026-08-31 23:48:06,941.941 INFO    ] 200
[2026-08-31 23:48:06,944.944 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:48:07,002.002 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:48:07,005.005 INFO    ] No update needed
[2026-08-31 23:48:07,008.008 INFO    ] Checking for camera pi updates...
[2026-08-31 23:48:07,044.044 INFO    ] 200
[2026-08-31 23:48:07,047.047 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:48:07,096.096 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:48:07,179.179 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:48:07,182.182 INFO    ] No camera update needed
[2026-08-31 23:48:07,185.185 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:48:07,187.187 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:48:07,194.194 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:48:07,199.199 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:48:09,240.240 INFO    ] ================================================
[2026-08-31 23:48:09,257.257 INFO    ] Launching Daemon at Mon Aug 31 23:48:09 IST 2026
[2026-08-31 23:48:09,269.269 INFO    ] ================================================
[2026-08-31 23:48:09,951.951 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:48:09
[2026-08-31 23:48:10,578.578 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:48:10,875.875 INFO    ] Initializing speech engine...
[2026-08-31 23:48:10,885.885 INFO    ] 2026-08-31 23:48:10
[2026-08-31 23:48:11,150.150 INFO    ] 2026-08-31 23:48:11
[2026-08-31 23:48:11,220.220 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:48:11,459.459 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:48:11,481.481 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:48:11,686.686 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:48:11,732.732 INFO    ] time= 31/08/2026 23:48:11
[2026-08-31 23:48:11,749.749 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:48:11,760.760 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:48:11,906.906 INFO    ] No existing commands found in stream
[2026-08-31 23:48:16,945.945 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:48:16,948.948 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-08-31 23:48:21,397.397 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 23:48:21,401.401 INFO    ] Checking for system updates...
[2026-08-31 23:48:21,439.439 INFO    ] 200
[2026-08-31 23:48:21,442.442 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:48:21,504.504 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:48:21,507.507 INFO    ] No update needed
[2026-08-31 23:48:21,510.510 INFO    ] Checking for camera pi updates...
[2026-08-31 23:48:21,548.548 INFO    ] 200
[2026-08-31 23:48:21,550.550 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:48:21,590.590 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:48:21,671.671 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:48:21,674.674 INFO    ] No camera update needed
[2026-08-31 23:48:21,676.676 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:48:21,679.679 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:48:21,684.684 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:48:21,689.689 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:48:23,729.729 INFO    ] ================================================
[2026-08-31 23:48:23,744.744 INFO    ] Launching Daemon at Mon Aug 31 23:48:23 IST 2026
[2026-08-31 23:48:23,755.755 INFO    ] ================================================
[2026-08-31 23:48:24,334.334 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:48:24
[2026-08-31 23:48:24,929.929 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:48:25,202.202 INFO    ] Initializing speech engine...
[2026-08-31 23:48:25,213.213 INFO    ] 2026-08-31 23:48:25
[2026-08-31 23:48:25,473.473 INFO    ] 2026-08-31 23:48:25
[2026-08-31 23:48:25,503.503 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:48:25,747.747 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:48:25,756.756 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:48:25,953.953 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:48:26,013.013 INFO    ] time= 31/08/2026 23:48:25
[2026-08-31 23:48:26,019.019 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:48:26,037.037 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:48:26,168.168 INFO    ] No existing commands found in stream
[2026-08-31 23:48:31,183.183 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:48:31,186.186 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-08-31 23:48:34,685.685 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 23:48:34,688.688 INFO    ] Checking for system updates...
[2026-08-31 23:48:34,726.726 INFO    ] 200
[2026-08-31 23:48:34,729.729 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:48:34,783.783 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:48:34,786.786 INFO    ] No update needed
[2026-08-31 23:48:34,788.788 INFO    ] Checking for camera pi updates...
[2026-08-31 23:48:34,826.826 INFO    ] 200
[2026-08-31 23:48:34,829.829 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:48:34,870.870 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:48:34,968.968 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:48:34,971.971 INFO    ] No camera update needed
[2026-08-31 23:48:34,973.973 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:48:34,975.975 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:48:34,981.981 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:48:34,986.986 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:48:37,026.026 INFO    ] ================================================
[2026-08-31 23:48:37,042.042 INFO    ] Launching Daemon at Mon Aug 31 23:48:37 IST 2026
[2026-08-31 23:48:37,053.053 INFO    ] ================================================
[2026-08-31 23:48:37,635.635 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:48:37
[2026-08-31 23:48:38,233.233 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:48:38,508.508 INFO    ] Initializing speech engine...
[2026-08-31 23:48:38,519.519 INFO    ] 2026-08-31 23:48:38
[2026-08-31 23:48:38,778.778 INFO    ] 2026-08-31 23:48:38
[2026-08-31 23:48:38,836.836 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:48:39,063.063 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:48:39,075.075 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:48:39,278.278 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:48:39,328.328 INFO    ] time= 31/08/2026 23:48:39
[2026-08-31 23:48:39,334.334 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:48:39,352.352 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:48:39,472.472 INFO    ] No existing commands found in stream
[2026-08-31 23:48:44,493.493 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:48:44,495.495 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-08-31 23:48:45,004.004 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 23:48:45,006.006 INFO    ] Checking for system updates...
[2026-08-31 23:48:45,043.043 INFO    ] 200
[2026-08-31 23:48:45,046.046 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:48:45,109.109 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:48:45,112.112 INFO    ] No update needed
[2026-08-31 23:48:45,115.115 INFO    ] Checking for camera pi updates...
[2026-08-31 23:48:45,150.150 INFO    ] 200
[2026-08-31 23:48:45,152.152 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:48:45,201.201 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:48:45,286.286 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:48:45,290.290 INFO    ] No camera update needed
[2026-08-31 23:48:45,292.292 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:48:45,295.295 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:48:45,302.302 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:48:45,308.308 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:48:47,353.353 INFO    ] ================================================
[2026-08-31 23:48:47,369.369 INFO    ] Launching Daemon at Mon Aug 31 23:48:47 IST 2026
[2026-08-31 23:48:47,379.379 INFO    ] ================================================
[2026-08-31 23:48:47,946.946 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:48:47
[2026-08-31 23:48:48,527.527 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:48:48,794.794 INFO    ] Initializing speech engine...
[2026-08-31 23:48:48,804.804 INFO    ] 2026-08-31 23:48:48
[2026-08-31 23:48:49,049.049 INFO    ] 2026-08-31 23:48:49
[2026-08-31 23:48:49,084.084 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:48:49,335.335 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:48:49,344.344 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:48:49,578.578 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:48:49,602.602 INFO    ] time= 31/08/2026 23:48:49
[2026-08-31 23:48:49,618.618 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:48:49,625.625 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:48:49,752.752 INFO    ] No existing commands found in stream
[2026-08-31 23:48:54,765.765 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:48:54,768.768 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-08-31 23:48:58,290.290 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 23:48:58,292.292 INFO    ] Checking for system updates...
[2026-08-31 23:48:58,333.333 INFO    ] 200
[2026-08-31 23:48:58,335.335 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:48:58,388.388 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:48:58,391.391 INFO    ] No update needed
[2026-08-31 23:48:58,393.393 INFO    ] Checking for camera pi updates...
[2026-08-31 23:48:58,435.435 INFO    ] 200
[2026-08-31 23:48:58,438.438 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:48:58,478.478 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:48:58,570.570 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:48:58,573.573 INFO    ] No camera update needed
[2026-08-31 23:48:58,575.575 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:48:58,578.578 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:48:58,583.583 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:48:58,588.588 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:49:00,629.629 INFO    ] ================================================
[2026-08-31 23:49:00,644.644 INFO    ] Launching Daemon at Mon Aug 31 23:49:00 IST 2026
[2026-08-31 23:49:00,654.654 INFO    ] ================================================
[2026-08-31 23:49:01,235.235 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:49:01
[2026-08-31 23:49:01,985.985 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:49:02,369.369 INFO    ] Initializing speech engine...
[2026-08-31 23:49:02,381.381 INFO    ] 2026-08-31 23:49:02
[2026-08-31 23:49:02,734.734 INFO    ] 2026-08-31 23:49:02
[2026-08-31 23:49:02,832.832 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:49:03,029.029 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:49:03,040.040 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:49:03,184.184 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:49:03,204.204 INFO    ] time= 31/08/2026 23:49:03
[2026-08-31 23:49:03,265.265 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:49:03,333.333 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:49:03,398.398 INFO    ] No existing commands found in stream
[2026-08-31 23:49:08,427.427 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:49:08,430.430 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-08-31 23:49:11,653.653 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 23:49:11,656.656 INFO    ] Checking for system updates...
[2026-08-31 23:49:11,693.693 INFO    ] 200
[2026-08-31 23:49:11,696.696 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:49:11,758.758 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:49:11,761.761 INFO    ] No update needed
[2026-08-31 23:49:11,764.764 INFO    ] Checking for camera pi updates...
[2026-08-31 23:49:11,799.799 INFO    ] 200
[2026-08-31 23:49:11,802.802 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:49:11,844.844 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:49:11,933.933 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:49:11,936.936 INFO    ] No camera update needed
[2026-08-31 23:49:11,939.939 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:49:11,942.942 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:49:11,948.948 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:49:11,954.954 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:49:14,995.995 INFO    ] ================================================
[2026-08-31 23:49:14,010.010 INFO    ] Launching Daemon at Mon Aug 31 23:49:14 IST 2026
[2026-08-31 23:49:14,020.020 INFO    ] ================================================
[2026-08-31 23:49:14,590.590 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:49:14
[2026-08-31 23:49:15,177.177 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:49:15,421.421 INFO    ] Initializing speech engine...
[2026-08-31 23:49:15,430.430 INFO    ] 2026-08-31 23:49:15
[2026-08-31 23:49:15,705.705 INFO    ] 2026-08-31 23:49:15
[2026-08-31 23:49:15,740.740 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:49:15,942.942 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:49:15,983.983 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:49:16,200.200 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:49:16,250.250 INFO    ] time= 31/08/2026 23:49:16
[2026-08-31 23:49:16,269.269 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:49:16,275.275 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:49:16,418.418 INFO    ] No existing commands found in stream
[2026-08-31 23:49:21,432.432 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:49:21,435.435 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-08-31 23:49:23,594.594 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 23:49:23,597.597 INFO    ] Checking for system updates...
[2026-08-31 23:49:23,637.637 INFO    ] 200
[2026-08-31 23:49:23,640.640 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:49:23,692.692 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:49:23,695.695 INFO    ] No update needed
[2026-08-31 23:49:23,697.697 INFO    ] Checking for camera pi updates...
[2026-08-31 23:49:23,732.732 INFO    ] 200
[2026-08-31 23:49:23,734.734 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:49:23,774.774 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:49:23,874.874 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:49:23,877.877 INFO    ] No camera update needed
[2026-08-31 23:49:23,881.881 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:49:23,884.884 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:49:23,891.891 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:49:23,898.898 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:49:25,939.939 INFO    ] ================================================
[2026-08-31 23:49:25,954.954 INFO    ] Launching Daemon at Mon Aug 31 23:49:25 IST 2026
[2026-08-31 23:49:25,965.965 INFO    ] ================================================
[2026-08-31 23:49:26,611.611 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:49:26
[2026-08-31 23:49:27,241.241 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:49:27,516.516 INFO    ] Initializing speech engine...
[2026-08-31 23:49:27,523.523 INFO    ] 2026-08-31 23:49:27
[2026-08-31 23:49:27,781.781 INFO    ] 2026-08-31 23:49:27
[2026-08-31 23:49:27,814.814 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:49:28,040.040 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:49:28,043.043 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:49:28,153.153 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:49:28,158.158 INFO    ] time= 31/08/2026 23:49:28
[2026-08-31 23:49:28,164.164 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:49:28,170.170 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:49:28,248.248 INFO    ] No existing commands found in stream
[2026-08-31 23:49:33,279.279 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:49:33,281.281 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-08-31 23:49:35,557.557 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 23:49:35,560.560 INFO    ] Checking for system updates...
[2026-08-31 23:49:35,595.595 INFO    ] 200
[2026-08-31 23:49:35,597.597 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:49:35,663.663 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:49:35,666.666 INFO    ] No update needed
[2026-08-31 23:49:35,668.668 INFO    ] Checking for camera pi updates...
[2026-08-31 23:49:35,701.701 INFO    ] 200
[2026-08-31 23:49:35,704.704 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:49:35,748.748 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:49:35,844.844 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:49:35,847.847 INFO    ] No camera update needed
[2026-08-31 23:49:35,849.849 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:49:35,851.851 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:49:35,857.857 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:49:35,862.862 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:49:37,901.901 INFO    ] ================================================
[2026-08-31 23:49:37,916.916 INFO    ] Launching Daemon at Mon Aug 31 23:49:37 IST 2026
[2026-08-31 23:49:37,927.927 INFO    ] ================================================
[2026-08-31 23:49:38,495.495 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:49:38
[2026-08-31 23:49:39,079.079 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:49:39,354.354 INFO    ] Initializing speech engine...
[2026-08-31 23:49:39,361.361 INFO    ] 2026-08-31 23:49:39
[2026-08-31 23:49:39,618.618 INFO    ] 2026-08-31 23:49:39
[2026-08-31 23:49:39,648.648 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:49:39,890.890 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:49:39,900.900 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:49:40,030.030 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:49:40,072.072 INFO    ] time= 31/08/2026 23:49:40
[2026-08-31 23:49:40,121.121 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:49:40,162.162 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:49:40,285.285 INFO    ] No existing commands found in stream
[2026-08-31 23:49:45,310.310 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:49:45,313.313 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-08-31 23:49:46,759.759 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 23:49:46,762.762 INFO    ] Checking for system updates...
[2026-08-31 23:49:46,797.797 INFO    ] 200
[2026-08-31 23:49:46,799.799 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:49:46,851.851 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:49:46,853.853 INFO    ] No update needed
[2026-08-31 23:49:46,855.855 INFO    ] Checking for camera pi updates...
[2026-08-31 23:49:46,889.889 INFO    ] 200
[2026-08-31 23:49:46,892.892 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:49:46,932.932 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:49:47,003.003 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:49:47,006.006 INFO    ] No camera update needed
[2026-08-31 23:49:47,008.008 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:49:47,010.010 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:49:47,016.016 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:49:47,021.021 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:49:49,061.061 INFO    ] ================================================
[2026-08-31 23:49:49,076.076 INFO    ] Launching Daemon at Mon Aug 31 23:49:49 IST 2026
[2026-08-31 23:49:49,086.086 INFO    ] ================================================
[2026-08-31 23:49:49,729.729 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:49:49
[2026-08-31 23:49:50,314.314 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:49:50,563.563 INFO    ] Initializing speech engine...
[2026-08-31 23:49:50,577.577 INFO    ] 2026-08-31 23:49:50
[2026-08-31 23:49:50,844.844 INFO    ] 2026-08-31 23:49:50
[2026-08-31 23:49:50,887.887 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:49:51,138.138 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:49:51,147.147 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:49:51,379.379 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:49:51,412.412 INFO    ] time= 31/08/2026 23:49:51
[2026-08-31 23:49:51,418.418 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:49:51,436.436 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:49:51,560.560 INFO    ] No existing commands found in stream
[2026-08-31 23:49:56,581.581 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:49:56,584.584 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-08-31 23:49:59,876.876 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 23:49:59,879.879 INFO    ] Checking for system updates...
[2026-08-31 23:49:59,913.913 INFO    ] 200
[2026-08-31 23:49:59,916.916 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:49:59,974.974 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:49:59,977.977 INFO    ] No update needed
[2026-08-31 23:49:59,980.980 INFO    ] Checking for camera pi updates...
[2026-08-31 23:50:00,013.013 INFO    ] 200
[2026-08-31 23:50:00,016.016 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:50:00,056.056 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:50:00,153.153 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:50:00,156.156 INFO    ] No camera update needed
[2026-08-31 23:50:00,158.158 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:50:00,160.160 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:50:00,166.166 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:50:00,171.171 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:50:02,244.244 INFO    ] ================================================
[2026-08-31 23:50:02,311.311 INFO    ] Launching Daemon at Mon Aug 31 23:50:02 IST 2026
[2026-08-31 23:50:02,331.331 INFO    ] ================================================
[2026-08-31 23:50:03,028.028 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:50:03
[2026-08-31 23:50:03,715.715 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:50:03,983.983 INFO    ] Initializing speech engine...
[2026-08-31 23:50:04,002.002 INFO    ] 2026-08-31 23:50:03
[2026-08-31 23:50:04,252.252 INFO    ] 2026-08-31 23:50:04
[2026-08-31 23:50:04,288.288 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:50:04,547.547 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:50:04,555.555 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:50:04,694.694 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:50:04,753.753 INFO    ] time= 31/08/2026 23:50:04
[2026-08-31 23:50:04,823.823 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:50:04,830.830 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:50:04,957.957 INFO    ] No existing commands found in stream
[2026-08-31 23:50:09,982.982 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:50:09,985.985 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-08-31 23:50:13,560.560 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 23:50:13,562.562 INFO    ] Checking for system updates...
[2026-08-31 23:50:13,602.602 INFO    ] 200
[2026-08-31 23:50:13,604.604 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:50:13,662.662 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:50:13,665.665 INFO    ] No update needed
[2026-08-31 23:50:13,667.667 INFO    ] Checking for camera pi updates...
[2026-08-31 23:50:13,700.700 INFO    ] 200
[2026-08-31 23:50:13,703.703 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:50:13,744.744 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:50:13,828.828 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:50:13,830.830 INFO    ] No camera update needed
[2026-08-31 23:50:13,833.833 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:50:13,835.835 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:50:13,840.840 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:50:13,845.845 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:50:15,888.888 INFO    ] ================================================
[2026-08-31 23:50:15,903.903 INFO    ] Launching Daemon at Mon Aug 31 23:50:15 IST 2026
[2026-08-31 23:50:15,914.914 INFO    ] ================================================
[2026-08-31 23:50:16,518.518 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:50:16
[2026-08-31 23:50:17,100.100 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:50:17,380.380 INFO    ] Initializing speech engine...
[2026-08-31 23:50:17,389.389 INFO    ] 2026-08-31 23:50:17
[2026-08-31 23:50:17,639.639 INFO    ] 2026-08-31 23:50:17
[2026-08-31 23:50:17,674.674 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:50:17,880.880 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:50:17,933.933 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:50:18,074.074 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:50:18,096.096 INFO    ] time= 31/08/2026 23:50:18
[2026-08-31 23:50:18,155.155 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:50:18,209.209 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:50:18,269.269 INFO    ] No existing commands found in stream
[2026-08-31 23:50:23,280.280 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:50:23,282.282 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-08-31 23:50:25,456.456 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 23:50:25,458.458 INFO    ] Checking for system updates...
[2026-08-31 23:50:25,494.494 INFO    ] 200
[2026-08-31 23:50:25,497.497 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:50:25,551.551 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:50:25,553.553 INFO    ] No update needed
[2026-08-31 23:50:25,556.556 INFO    ] Checking for camera pi updates...
[2026-08-31 23:50:25,591.591 INFO    ] 200
[2026-08-31 23:50:25,593.593 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:50:25,640.640 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:50:25,734.734 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:50:25,736.736 INFO    ] No camera update needed
[2026-08-31 23:50:25,739.739 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:50:25,741.741 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:50:25,746.746 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:50:25,751.751 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:50:27,796.796 INFO    ] ================================================
[2026-08-31 23:50:27,811.811 INFO    ] Launching Daemon at Mon Aug 31 23:50:27 IST 2026
[2026-08-31 23:50:27,822.822 INFO    ] ================================================
[2026-08-31 23:50:28,402.402 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:50:28
[2026-08-31 23:50:28,999.999 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:50:29,273.273 INFO    ] Initializing speech engine...
[2026-08-31 23:50:29,281.281 INFO    ] 2026-08-31 23:50:29
[2026-08-31 23:50:29,584.584 INFO    ] 2026-08-31 23:50:29
[2026-08-31 23:50:29,665.665 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:50:29,826.826 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:50:29,836.836 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:50:29,990.990 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:50:30,012.012 INFO    ] time= 31/08/2026 23:50:29
[2026-08-31 23:50:30,076.076 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:50:30,121.121 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:50:30,199.199 INFO    ] No existing commands found in stream
[2026-08-31 23:50:35,212.212 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:50:35,214.214 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-08-31 23:50:39,652.652 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 23:50:39,654.654 INFO    ] Checking for system updates...
[2026-08-31 23:50:39,702.702 INFO    ] 200
[2026-08-31 23:50:39,705.705 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:50:39,762.762 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:50:39,765.765 INFO    ] No update needed
[2026-08-31 23:50:39,767.767 INFO    ] Checking for camera pi updates...
[2026-08-31 23:50:39,808.808 INFO    ] 200
[2026-08-31 23:50:39,811.811 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:50:39,855.855 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:50:40,038.038 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:50:40,041.041 INFO    ] No camera update needed
[2026-08-31 23:50:40,044.044 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:50:40,046.046 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:50:40,053.053 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:50:40,058.058 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:50:42,101.101 INFO    ] ================================================
[2026-08-31 23:50:42,116.116 INFO    ] Launching Daemon at Mon Aug 31 23:50:42 IST 2026
[2026-08-31 23:50:42,128.128 INFO    ] ================================================
[2026-08-31 23:50:42,837.837 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:50:42
[2026-08-31 23:50:43,584.584 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:50:43,914.914 INFO    ] Initializing speech engine...
[2026-08-31 23:50:43,928.928 INFO    ] 2026-08-31 23:50:43
[2026-08-31 23:50:44,236.236 INFO    ] 2026-08-31 23:50:44
[2026-08-31 23:50:44,277.277 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:50:44,571.571 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:50:44,582.582 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:50:44,781.781 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:50:44,793.793 INFO    ] time= 31/08/2026 23:50:44
[2026-08-31 23:50:44,816.816 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:50:44,847.847 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:50:44,972.972 INFO    ] No existing commands found in stream
[2026-08-31 23:50:50,009.009 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:50:50,012.012 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-08-31 23:50:51,972.972 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 23:50:51,975.975 INFO    ] Checking for system updates...
[2026-08-31 23:50:52,011.011 INFO    ] 200
[2026-08-31 23:50:52,014.014 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:50:52,069.069 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:50:52,072.072 INFO    ] No update needed
[2026-08-31 23:50:52,075.075 INFO    ] Checking for camera pi updates...
[2026-08-31 23:50:52,110.110 INFO    ] 200
[2026-08-31 23:50:52,113.113 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:50:52,155.155 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:50:52,241.241 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:50:52,244.244 INFO    ] No camera update needed
[2026-08-31 23:50:52,247.247 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:50:52,250.250 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:50:52,257.257 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:50:52,263.263 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:50:54,304.304 INFO    ] ================================================
[2026-08-31 23:50:54,319.319 INFO    ] Launching Daemon at Mon Aug 31 23:50:54 IST 2026
[2026-08-31 23:50:54,331.331 INFO    ] ================================================
[2026-08-31 23:50:54,911.911 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:50:54
[2026-08-31 23:50:55,509.509 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:50:55,780.780 INFO    ] Initializing speech engine...
[2026-08-31 23:50:55,790.790 INFO    ] 2026-08-31 23:50:55
[2026-08-31 23:50:56,051.051 INFO    ] 2026-08-31 23:50:56
[2026-08-31 23:50:56,106.106 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:50:56,334.334 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:50:56,340.340 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:50:56,472.472 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:50:56,512.512 INFO    ] time= 31/08/2026 23:50:56
[2026-08-31 23:50:56,566.566 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:50:56,603.603 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:50:56,731.731 INFO    ] No existing commands found in stream
[2026-08-31 23:51:01,759.759 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:51:01,761.761 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-08-31 23:51:03,423.423 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 23:51:03,427.427 INFO    ] Checking for system updates...
[2026-08-31 23:51:03,472.472 INFO    ] 200
[2026-08-31 23:51:03,475.475 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:51:03,529.529 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:51:03,533.533 INFO    ] No update needed
[2026-08-31 23:51:03,536.536 INFO    ] Checking for camera pi updates...
[2026-08-31 23:51:03,582.582 INFO    ] 200
[2026-08-31 23:51:03,585.585 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:51:03,625.625 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:51:03,711.711 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:51:03,713.713 INFO    ] No camera update needed
[2026-08-31 23:51:03,716.716 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:51:03,718.718 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:51:03,724.724 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:51:03,729.729 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:51:05,768.768 INFO    ] ================================================
[2026-08-31 23:51:05,783.783 INFO    ] Launching Daemon at Mon Aug 31 23:51:05 IST 2026
[2026-08-31 23:51:05,794.794 INFO    ] ================================================
[2026-08-31 23:51:06,373.373 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:51:06
[2026-08-31 23:51:06,988.988 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:51:07,253.253 INFO    ] Initializing speech engine...
[2026-08-31 23:51:07,260.260 INFO    ] 2026-08-31 23:51:07
[2026-08-31 23:51:07,561.561 INFO    ] 2026-08-31 23:51:07
[2026-08-31 23:51:07,588.588 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:51:07,790.790 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:51:07,806.806 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:51:07,967.967 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:51:07,976.976 INFO    ] time= 31/08/2026 23:51:07
[2026-08-31 23:51:07,982.982 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:51:08,038.038 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:51:08,171.171 INFO    ] No existing commands found in stream
[2026-08-31 23:51:13,183.183 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:51:13,186.186 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-08-31 23:51:17,491.491 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 23:51:17,494.494 INFO    ] Checking for system updates...
[2026-08-31 23:51:17,529.529 INFO    ] 200
[2026-08-31 23:51:17,532.532 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:51:17,593.593 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:51:17,595.595 INFO    ] No update needed
[2026-08-31 23:51:17,598.598 INFO    ] Checking for camera pi updates...
[2026-08-31 23:51:17,636.636 INFO    ] 200
[2026-08-31 23:51:17,638.638 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:51:17,679.679 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:51:17,777.777 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:51:17,780.780 INFO    ] No camera update needed
[2026-08-31 23:51:17,782.782 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:51:17,784.784 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:51:17,790.790 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:51:17,795.795 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:51:19,834.834 INFO    ] ================================================
[2026-08-31 23:51:19,850.850 INFO    ] Launching Daemon at Mon Aug 31 23:51:19 IST 2026
[2026-08-31 23:51:19,861.861 INFO    ] ================================================
[2026-08-31 23:51:20,442.442 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:51:20
[2026-08-31 23:51:21,040.040 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:51:21,318.318 INFO    ] Initializing speech engine...
[2026-08-31 23:51:21,327.327 INFO    ] 2026-08-31 23:51:21
[2026-08-31 23:51:21,586.586 INFO    ] 2026-08-31 23:51:21
[2026-08-31 23:51:21,641.641 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:51:21,866.866 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:51:21,870.870 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:51:22,031.031 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:51:22,048.048 INFO    ] time= 31/08/2026 23:51:22
[2026-08-31 23:51:22,103.103 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:51:22,147.147 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:51:22,245.245 INFO    ] No existing commands found in stream
[2026-08-31 23:51:27,256.256 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:51:27,259.259 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-08-31 23:51:29,195.195 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 23:51:29,198.198 INFO    ] Checking for system updates...
[2026-08-31 23:51:29,235.235 INFO    ] 200
[2026-08-31 23:51:29,238.238 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:51:29,292.292 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:51:29,295.295 INFO    ] No update needed
[2026-08-31 23:51:29,298.298 INFO    ] Checking for camera pi updates...
[2026-08-31 23:51:29,333.333 INFO    ] 200
[2026-08-31 23:51:29,336.336 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:51:29,377.377 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:51:29,459.459 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:51:29,462.462 INFO    ] No camera update needed
[2026-08-31 23:51:29,465.465 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:51:29,468.468 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:51:29,474.474 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:51:29,480.480 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:51:31,522.522 INFO    ] ================================================
[2026-08-31 23:51:31,537.537 INFO    ] Launching Daemon at Mon Aug 31 23:51:31 IST 2026
[2026-08-31 23:51:31,548.548 INFO    ] ================================================
[2026-08-31 23:51:32,145.145 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:51:32
[2026-08-31 23:51:32,780.780 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:51:33,077.077 INFO    ] Initializing speech engine...
[2026-08-31 23:51:33,085.085 INFO    ] 2026-08-31 23:51:33
[2026-08-31 23:51:33,352.352 INFO    ] 2026-08-31 23:51:33
[2026-08-31 23:51:33,394.394 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:51:33,593.593 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:51:33,651.651 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:51:33,791.791 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:51:33,836.836 INFO    ] time= 31/08/2026 23:51:33
[2026-08-31 23:51:33,880.880 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:51:33,922.922 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:51:33,978.978 INFO    ] No existing commands found in stream
[2026-08-31 23:51:38,990.990 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:51:38,993.993 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-08-31 23:51:40,981.981 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 23:51:40,984.984 INFO    ] Checking for system updates...
[2026-08-31 23:51:41,021.021 INFO    ] 200
[2026-08-31 23:51:41,023.023 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:51:41,080.080 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:51:41,083.083 INFO    ] No update needed
[2026-08-31 23:51:41,085.085 INFO    ] Checking for camera pi updates...
[2026-08-31 23:51:41,118.118 INFO    ] 200
[2026-08-31 23:51:41,121.121 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:51:41,167.167 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:51:41,256.256 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:51:41,259.259 INFO    ] No camera update needed
[2026-08-31 23:51:41,261.261 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:51:41,264.264 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:51:41,269.269 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:51:41,274.274 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:51:43,315.315 INFO    ] ================================================
[2026-08-31 23:51:43,331.331 INFO    ] Launching Daemon at Mon Aug 31 23:51:43 IST 2026
[2026-08-31 23:51:43,341.341 INFO    ] ================================================
[2026-08-31 23:51:43,910.910 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:51:43
[2026-08-31 23:51:44,499.499 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:51:44,769.769 INFO    ] Initializing speech engine...
[2026-08-31 23:51:44,778.778 INFO    ] 2026-08-31 23:51:44
[2026-08-31 23:51:45,031.031 INFO    ] 2026-08-31 23:51:45
[2026-08-31 23:51:45,089.089 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:51:45,312.312 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:51:45,321.321 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:51:45,453.453 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:51:45,500.500 INFO    ] time= 31/08/2026 23:51:45
[2026-08-31 23:51:45,559.559 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:51:45,588.588 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:51:45,731.731 INFO    ] No existing commands found in stream
[2026-08-31 23:51:50,745.745 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:51:50,748.748 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-08-31 23:51:53,095.095 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 23:51:53,098.098 INFO    ] Checking for system updates...
[2026-08-31 23:51:53,138.138 INFO    ] 200
[2026-08-31 23:51:53,141.141 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:51:53,193.193 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:51:53,195.195 INFO    ] No update needed
[2026-08-31 23:51:53,197.197 INFO    ] Checking for camera pi updates...
[2026-08-31 23:51:53,236.236 INFO    ] 200
[2026-08-31 23:51:53,238.238 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:51:53,284.284 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:51:53,388.388 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:51:53,390.390 INFO    ] No camera update needed
[2026-08-31 23:51:53,392.392 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:51:53,395.395 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:51:53,400.400 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:51:53,405.405 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:51:55,447.447 INFO    ] ================================================
[2026-08-31 23:51:55,462.462 INFO    ] Launching Daemon at Mon Aug 31 23:51:55 IST 2026
[2026-08-31 23:51:55,473.473 INFO    ] ================================================
[2026-08-31 23:51:56,053.053 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:51:56
[2026-08-31 23:51:56,652.652 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:51:56,905.905 INFO    ] Initializing speech engine...
[2026-08-31 23:51:56,917.917 INFO    ] 2026-08-31 23:51:56
[2026-08-31 23:51:57,185.185 INFO    ] 2026-08-31 23:51:57
[2026-08-31 23:51:57,220.220 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:51:57,413.413 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:51:57,446.446 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:51:57,612.612 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:51:57,659.659 INFO    ] time= 31/08/2026 23:51:57
[2026-08-31 23:51:57,718.718 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:51:57,746.746 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:51:57,798.798 INFO    ] No existing commands found in stream
[2026-08-31 23:52:02,810.810 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:52:02,813.813 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-08-31 23:52:04,293.293 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 23:52:04,296.296 INFO    ] Checking for system updates...
[2026-08-31 23:52:04,332.332 INFO    ] 200
[2026-08-31 23:52:04,334.334 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:52:04,387.387 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:52:04,389.389 INFO    ] No update needed
[2026-08-31 23:52:04,392.392 INFO    ] Checking for camera pi updates...
[2026-08-31 23:52:04,432.432 INFO    ] 200
[2026-08-31 23:52:04,434.434 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:52:04,475.475 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:52:04,554.554 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:52:04,557.557 INFO    ] No camera update needed
[2026-08-31 23:52:04,559.559 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:52:04,561.561 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:52:04,567.567 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:52:04,572.572 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:52:06,614.614 INFO    ] ================================================
[2026-08-31 23:52:06,631.631 INFO    ] Launching Daemon at Mon Aug 31 23:52:06 IST 2026
[2026-08-31 23:52:06,643.643 INFO    ] ================================================
[2026-08-31 23:52:07,307.307 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:52:07
[2026-08-31 23:52:07,981.981 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:52:08,285.285 INFO    ] Initializing speech engine...
[2026-08-31 23:52:08,293.293 INFO    ] 2026-08-31 23:52:08
[2026-08-31 23:52:08,587.587 INFO    ] 2026-08-31 23:52:08
[2026-08-31 23:52:08,633.633 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:52:08,865.865 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:52:08,871.871 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:52:09,080.080 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:52:09,135.135 INFO    ] time= 31/08/2026 23:52:09
[2026-08-31 23:52:09,142.142 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:52:09,161.161 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:52:09,290.290 INFO    ] No existing commands found in stream
[2026-08-31 23:52:14,308.308 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:52:14,311.311 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-08-31 23:52:17,420.420 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 23:52:17,423.423 INFO    ] Checking for system updates...
[2026-08-31 23:52:17,463.463 INFO    ] 200
[2026-08-31 23:52:17,465.465 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:52:17,518.518 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:52:17,520.520 INFO    ] No update needed
[2026-08-31 23:52:17,522.522 INFO    ] Checking for camera pi updates...
[2026-08-31 23:52:17,561.561 INFO    ] 200
[2026-08-31 23:52:17,563.563 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:52:17,603.603 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:52:17,692.692 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:52:17,694.694 INFO    ] No camera update needed
[2026-08-31 23:52:17,696.696 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:52:17,699.699 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:52:17,704.704 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:52:17,709.709 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:52:19,750.750 INFO    ] ================================================
[2026-08-31 23:52:19,765.765 INFO    ] Launching Daemon at Mon Aug 31 23:52:19 IST 2026
[2026-08-31 23:52:19,776.776 INFO    ] ================================================
[2026-08-31 23:52:20,348.348 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:52:20
[2026-08-31 23:52:20,936.936 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:52:21,224.224 INFO    ] Initializing speech engine...
[2026-08-31 23:52:21,232.232 INFO    ] 2026-08-31 23:52:21
[2026-08-31 23:52:21,497.497 INFO    ] 2026-08-31 23:52:21
[2026-08-31 23:52:21,550.550 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:52:21,788.788 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:52:21,808.808 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:52:22,012.012 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:52:22,054.054 INFO    ] time= 31/08/2026 23:52:22
[2026-08-31 23:52:22,060.060 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:52:22,082.082 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:52:22,188.188 INFO    ] No existing commands found in stream
[2026-08-31 23:52:27,213.213 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:52:27,216.216 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-08-31 23:52:29,902.902 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 23:52:29,905.905 INFO    ] Checking for system updates...
[2026-08-31 23:52:29,947.947 INFO    ] 200
[2026-08-31 23:52:29,950.950 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:52:30,009.009 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:52:30,012.012 INFO    ] No update needed
[2026-08-31 23:52:30,015.015 INFO    ] Checking for camera pi updates...
[2026-08-31 23:52:30,060.060 INFO    ] 200
[2026-08-31 23:52:30,062.062 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:52:30,106.106 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:52:30,193.193 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:52:30,196.196 INFO    ] No camera update needed
[2026-08-31 23:52:30,199.199 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:52:30,202.202 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:52:30,209.209 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:52:30,215.215 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:52:32,259.259 INFO    ] ================================================
[2026-08-31 23:52:32,275.275 INFO    ] Launching Daemon at Mon Aug 31 23:52:32 IST 2026
[2026-08-31 23:52:32,288.288 INFO    ] ================================================
[2026-08-31 23:52:32,982.982 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:52:32
[2026-08-31 23:52:33,613.613 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:52:33,867.867 INFO    ] Initializing speech engine...
[2026-08-31 23:52:33,876.876 INFO    ] 2026-08-31 23:52:33
[2026-08-31 23:52:34,171.171 INFO    ] 2026-08-31 23:52:34
[2026-08-31 23:52:34,196.196 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:52:34,404.404 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:52:34,420.420 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:52:34,580.580 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:52:34,591.591 INFO    ] time= 31/08/2026 23:52:34
[2026-08-31 23:52:34,598.598 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:52:34,612.612 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:52:34,756.756 INFO    ] No existing commands found in stream
[2026-08-31 23:52:39,782.782 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:52:39,784.784 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-08-31 23:52:41,516.516 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 23:52:41,519.519 INFO    ] Checking for system updates...
[2026-08-31 23:52:41,554.554 INFO    ] 200
[2026-08-31 23:52:41,557.557 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:52:41,617.617 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:52:41,620.620 INFO    ] No update needed
[2026-08-31 23:52:41,622.622 INFO    ] Checking for camera pi updates...
[2026-08-31 23:52:41,655.655 INFO    ] 200
[2026-08-31 23:52:41,657.657 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:52:41,698.698 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:52:41,785.785 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:52:41,787.787 INFO    ] No camera update needed
[2026-08-31 23:52:41,789.789 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:52:41,792.792 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:52:41,797.797 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:52:41,802.802 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:52:43,842.842 INFO    ] ================================================
[2026-08-31 23:52:43,857.857 INFO    ] Launching Daemon at Mon Aug 31 23:52:43 IST 2026
[2026-08-31 23:52:43,868.868 INFO    ] ================================================
[2026-08-31 23:52:44,521.521 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:52:44
[2026-08-31 23:52:45,195.195 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:52:45,496.496 INFO    ] Initializing speech engine...
[2026-08-31 23:52:45,505.505 INFO    ] 2026-08-31 23:52:45
[2026-08-31 23:52:45,782.782 INFO    ] 2026-08-31 23:52:45
[2026-08-31 23:52:45,890.890 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:52:46,065.065 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:52:46,076.076 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:52:46,224.224 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:52:46,299.299 INFO    ] time= 31/08/2026 23:52:46
[2026-08-31 23:52:46,345.345 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:52:46,363.363 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:52:46,485.485 INFO    ] No existing commands found in stream
[2026-08-31 23:52:51,516.516 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:52:51,519.519 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-08-31 23:52:53,333.333 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 23:52:53,336.336 INFO    ] Checking for system updates...
[2026-08-31 23:52:53,373.373 INFO    ] 200
[2026-08-31 23:52:53,375.375 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:52:53,435.435 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:52:53,437.437 INFO    ] No update needed
[2026-08-31 23:52:53,440.440 INFO    ] Checking for camera pi updates...
[2026-08-31 23:52:53,473.473 INFO    ] 200
[2026-08-31 23:52:53,475.475 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:52:53,524.524 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:52:53,704.704 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:52:53,707.707 INFO    ] No camera update needed
[2026-08-31 23:52:53,709.709 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:52:53,711.711 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:52:53,717.717 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:52:53,723.723 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:52:55,762.762 INFO    ] ================================================
[2026-08-31 23:52:55,777.777 INFO    ] Launching Daemon at Mon Aug 31 23:52:55 IST 2026
[2026-08-31 23:52:55,788.788 INFO    ] ================================================
[2026-08-31 23:52:56,354.354 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:52:56
[2026-08-31 23:52:56,935.935 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:52:57,201.201 INFO    ] Initializing speech engine...
[2026-08-31 23:52:57,210.210 INFO    ] 2026-08-31 23:52:57
[2026-08-31 23:52:57,466.466 INFO    ] 2026-08-31 23:52:57
[2026-08-31 23:52:57,533.533 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:52:57,789.789 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:52:57,809.809 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:52:57,991.991 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:52:58,032.032 INFO    ] time= 31/08/2026 23:52:57
[2026-08-31 23:52:58,048.048 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:52:58,055.055 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:52:58,161.161 INFO    ] No existing commands found in stream
[2026-08-31 23:53:03,190.190 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:53:03,193.193 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-08-31 23:53:07,405.405 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 23:53:07,408.408 INFO    ] Checking for system updates...
[2026-08-31 23:53:07,443.443 INFO    ] 200
[2026-08-31 23:53:07,445.445 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:53:07,505.505 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:53:07,507.507 INFO    ] No update needed
[2026-08-31 23:53:07,510.510 INFO    ] Checking for camera pi updates...
[2026-08-31 23:53:07,547.547 INFO    ] 200
[2026-08-31 23:53:07,549.549 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:53:07,589.589 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:53:07,683.683 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:53:07,685.685 INFO    ] No camera update needed
[2026-08-31 23:53:07,688.688 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:53:07,690.690 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:53:07,695.695 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:53:07,700.700 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:53:09,742.742 INFO    ] ================================================
[2026-08-31 23:53:09,757.757 INFO    ] Launching Daemon at Mon Aug 31 23:53:09 IST 2026
[2026-08-31 23:53:09,768.768 INFO    ] ================================================
[2026-08-31 23:53:10,423.423 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:53:10
[2026-08-31 23:53:11,097.097 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:53:11,401.401 INFO    ] Initializing speech engine...
[2026-08-31 23:53:11,414.414 INFO    ] 2026-08-31 23:53:11
[2026-08-31 23:53:11,726.726 INFO    ] 2026-08-31 23:53:11
[2026-08-31 23:53:11,810.810 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:53:12,020.020 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:53:12,029.029 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:53:12,224.224 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:53:12,232.232 INFO    ] time= 31/08/2026 23:53:12
[2026-08-31 23:53:12,252.252 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:53:12,279.279 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:53:12,387.387 INFO    ] No existing commands found in stream
[2026-08-31 23:53:17,417.417 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:53:17,421.421 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-08-31 23:53:19,896.896 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 23:53:19,899.899 INFO    ] Checking for system updates...
[2026-08-31 23:53:19,939.939 INFO    ] 200
[2026-08-31 23:53:19,941.941 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:53:20,001.001 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:53:20,003.003 INFO    ] No update needed
[2026-08-31 23:53:20,005.005 INFO    ] Checking for camera pi updates...
[2026-08-31 23:53:20,039.039 INFO    ] 200
[2026-08-31 23:53:20,041.041 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:53:20,086.086 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:53:20,167.167 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:53:20,170.170 INFO    ] No camera update needed
[2026-08-31 23:53:20,172.172 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:53:20,174.174 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:53:20,179.179 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:53:20,185.185 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:53:22,226.226 INFO    ] ================================================
[2026-08-31 23:53:22,242.242 INFO    ] Launching Daemon at Mon Aug 31 23:53:22 IST 2026
[2026-08-31 23:53:22,252.252 INFO    ] ================================================
[2026-08-31 23:53:22,819.819 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:53:22
[2026-08-31 23:53:23,402.402 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:53:23,659.659 INFO    ] Initializing speech engine...
[2026-08-31 23:53:23,678.678 INFO    ] 2026-08-31 23:53:23
[2026-08-31 23:53:23,924.924 INFO    ] 2026-08-31 23:53:23
[2026-08-31 23:53:23,960.960 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:53:24,153.153 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:53:24,160.160 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:53:24,288.288 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:53:24,293.293 INFO    ] time= 31/08/2026 23:53:24
[2026-08-31 23:53:24,299.299 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:53:24,345.345 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:53:24,470.470 INFO    ] No existing commands found in stream
[2026-08-31 23:53:29,495.495 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:53:29,498.498 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-08-31 23:53:30,783.783 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 23:53:30,786.786 INFO    ] Checking for system updates...
[2026-08-31 23:53:30,822.822 INFO    ] 200
[2026-08-31 23:53:30,825.825 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:53:30,877.877 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:53:30,879.879 INFO    ] No update needed
[2026-08-31 23:53:30,882.882 INFO    ] Checking for camera pi updates...
[2026-08-31 23:53:30,916.916 INFO    ] 200
[2026-08-31 23:53:30,918.918 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:53:30,958.958 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:53:31,046.046 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:53:31,049.049 INFO    ] No camera update needed
[2026-08-31 23:53:31,051.051 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:53:31,054.054 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:53:31,059.059 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:53:31,064.064 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:53:33,107.107 INFO    ] ================================================
[2026-08-31 23:53:33,122.122 INFO    ] Launching Daemon at Mon Aug 31 23:53:33 IST 2026
[2026-08-31 23:53:33,133.133 INFO    ] ================================================
[2026-08-31 23:53:33,726.726 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:53:33
[2026-08-31 23:53:34,314.314 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:53:34,584.584 INFO    ] Initializing speech engine...
[2026-08-31 23:53:34,593.593 INFO    ] 2026-08-31 23:53:34
[2026-08-31 23:53:34,844.844 INFO    ] 2026-08-31 23:53:34
[2026-08-31 23:53:34,879.879 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:53:35,081.081 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:53:35,138.138 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:53:35,277.277 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:53:35,298.298 INFO    ] time= 31/08/2026 23:53:35
[2026-08-31 23:53:35,358.358 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:53:35,407.407 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:53:35,529.529 INFO    ] No existing commands found in stream
[2026-08-31 23:53:40,559.559 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:53:40,562.562 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-08-31 23:53:44,324.324 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 23:53:44,326.326 INFO    ] Checking for system updates...
[2026-08-31 23:53:44,366.366 INFO    ] 200
[2026-08-31 23:53:44,369.369 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:53:44,428.428 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:53:44,430.430 INFO    ] No update needed
[2026-08-31 23:53:44,433.433 INFO    ] Checking for camera pi updates...
[2026-08-31 23:53:44,466.466 INFO    ] 200
[2026-08-31 23:53:44,469.469 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:53:44,515.515 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:53:44,589.589 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:53:44,591.591 INFO    ] No camera update needed
[2026-08-31 23:53:44,594.594 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:53:44,596.596 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:53:44,601.601 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:53:44,606.606 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:53:46,647.647 INFO    ] ================================================
[2026-08-31 23:53:46,663.663 INFO    ] Launching Daemon at Mon Aug 31 23:53:46 IST 2026
[2026-08-31 23:53:46,674.674 INFO    ] ================================================
[2026-08-31 23:53:47,239.239 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:53:47
[2026-08-31 23:53:47,832.832 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:53:48,110.110 INFO    ] Initializing speech engine...
[2026-08-31 23:53:48,119.119 INFO    ] 2026-08-31 23:53:48
[2026-08-31 23:53:48,404.404 INFO    ] 2026-08-31 23:53:48
[2026-08-31 23:53:48,515.515 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:53:48,725.725 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:53:48,734.734 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:53:48,915.915 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:53:48,936.936 INFO    ] time= 31/08/2026 23:53:48
[2026-08-31 23:53:48,957.957 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:53:48,984.984 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:53:49,093.093 INFO    ] No existing commands found in stream
[2026-08-31 23:53:54,118.118 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:53:54,121.121 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-08-31 23:53:55,416.416 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 23:53:55,419.419 INFO    ] Checking for system updates...
[2026-08-31 23:53:55,460.460 INFO    ] 200
[2026-08-31 23:53:55,463.463 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:53:55,515.515 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:53:55,518.518 INFO    ] No update needed
[2026-08-31 23:53:55,520.520 INFO    ] Checking for camera pi updates...
[2026-08-31 23:53:55,557.557 INFO    ] 200
[2026-08-31 23:53:55,560.560 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:53:55,605.605 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:53:55,689.689 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:53:55,691.691 INFO    ] No camera update needed
[2026-08-31 23:53:55,693.693 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:53:55,696.696 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:53:55,701.701 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:53:55,706.706 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:53:57,745.745 INFO    ] ================================================
[2026-08-31 23:53:57,760.760 INFO    ] Launching Daemon at Mon Aug 31 23:53:57 IST 2026
[2026-08-31 23:53:57,770.770 INFO    ] ================================================
[2026-08-31 23:53:58,337.337 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:53:58
[2026-08-31 23:53:58,920.920 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:53:59,186.186 INFO    ] Initializing speech engine...
[2026-08-31 23:53:59,195.195 INFO    ] 2026-08-31 23:53:59
[2026-08-31 23:53:59,447.447 INFO    ] 2026-08-31 23:53:59
[2026-08-31 23:53:59,482.482 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:53:59,725.725 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:53:59,735.735 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:53:59,868.868 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:53:59,934.934 INFO    ] time= 31/08/2026 23:53:59
[2026-08-31 23:53:59,988.988 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:54:00,002.002 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:54:00,143.143 INFO    ] No existing commands found in stream
[2026-08-31 23:54:05,162.162 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:54:05,165.165 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-08-31 23:54:07,996.996 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 23:54:07,998.998 INFO    ] Checking for system updates...
[2026-08-31 23:54:08,034.034 INFO    ] 200
[2026-08-31 23:54:08,036.036 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:54:08,090.090 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:54:08,092.092 INFO    ] No update needed
[2026-08-31 23:54:08,094.094 INFO    ] Checking for camera pi updates...
[2026-08-31 23:54:08,132.132 INFO    ] 200
[2026-08-31 23:54:08,135.135 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:54:08,175.175 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:54:08,252.252 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:54:08,254.254 INFO    ] No camera update needed
[2026-08-31 23:54:08,256.256 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:54:08,258.258 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:54:08,264.264 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:54:08,269.269 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:54:10,310.310 INFO    ] ================================================
[2026-08-31 23:54:10,325.325 INFO    ] Launching Daemon at Mon Aug 31 23:54:10 IST 2026
[2026-08-31 23:54:10,335.335 INFO    ] ================================================
[2026-08-31 23:54:10,987.987 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:54:10
[2026-08-31 23:54:11,646.646 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:54:11,899.899 INFO    ] Initializing speech engine...
[2026-08-31 23:54:11,904.904 INFO    ] 2026-08-31 23:54:11
[2026-08-31 23:54:12,205.205 INFO    ] 2026-08-31 23:54:12
[2026-08-31 23:54:12,230.230 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:54:12,442.442 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:54:12,455.455 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:54:12,617.617 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:54:12,625.625 INFO    ] time= 31/08/2026 23:54:12
[2026-08-31 23:54:12,630.630 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:54:12,636.636 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:54:12,709.709 INFO    ] No existing commands found in stream
[2026-08-31 23:54:17,720.720 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:54:17,723.723 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-08-31 23:54:22,195.195 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-31 23:54:22,198.198 INFO    ] Checking for system updates...
[2026-08-31 23:54:22,237.237 INFO    ] 200
[2026-08-31 23:54:22,240.240 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:54:22,298.298 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:54:22,301.301 INFO    ] No update needed
[2026-08-31 23:54:22,303.303 INFO    ] Checking for camera pi updates...
[2026-08-31 23:54:22,341.341 INFO    ] 200
[2026-08-31 23:54:22,343.343 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:54:22,389.389 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:54:22,525.525 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:54:22,527.527 INFO    ] No camera update needed
[2026-08-31 23:54:22,530.530 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:54:22,532.532 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:54:22,537.537 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:54:22,542.542 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:54:24,583.583 INFO    ] ================================================
[2026-08-31 23:54:24,598.598 INFO    ] Launching Daemon at Mon Aug 31 23:54:24 IST 2026
[2026-08-31 23:54:24,609.609 INFO    ] ================================================
[2026-08-31 23:54:25,193.193 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:54:25
[2026-08-31 23:54:25,797.797 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:54:26,071.071 INFO    ] Initializing speech engine...
[2026-08-31 23:54:26,082.082 INFO    ] 2026-08-31 23:54:26
[2026-08-31 23:54:26,345.345 INFO    ] 2026-08-31 23:54:26
[2026-08-31 23:54:26,398.398 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:54:26,626.626 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:54:26,631.631 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:54:26,856.856 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:54:26,888.888 INFO    ] time= 31/08/2026 23:54:26
[2026-08-31 23:54:26,894.894 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:54:26,912.912 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:54:27,043.043 INFO    ] No existing commands found in stream
[2026-08-31 23:54:32,062.062 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:54:32,065.065 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-08-31 23:54:36,096.096 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 23:54:36,099.099 INFO    ] Checking for system updates...
[2026-08-31 23:54:36,135.135 INFO    ] 200
[2026-08-31 23:54:36,138.138 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:54:36,199.199 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:54:36,202.202 INFO    ] No update needed
[2026-08-31 23:54:36,205.205 INFO    ] Checking for camera pi updates...
[2026-08-31 23:54:36,243.243 INFO    ] 200
[2026-08-31 23:54:36,246.246 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:54:36,294.294 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:54:36,392.392 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:54:36,395.395 INFO    ] No camera update needed
[2026-08-31 23:54:36,398.398 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:54:36,400.400 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:54:36,407.407 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:54:36,413.413 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:54:38,454.454 INFO    ] ================================================
[2026-08-31 23:54:38,469.469 INFO    ] Launching Daemon at Mon Aug 31 23:54:38 IST 2026
[2026-08-31 23:54:38,480.480 INFO    ] ================================================
[2026-08-31 23:54:39,046.046 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:54:39
[2026-08-31 23:54:39,634.634 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:54:39,881.881 INFO    ] Initializing speech engine...
[2026-08-31 23:54:39,896.896 INFO    ] 2026-08-31 23:54:39
[2026-08-31 23:54:40,162.162 INFO    ] 2026-08-31 23:54:40
[2026-08-31 23:54:40,197.197 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:54:40,394.394 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:54:40,401.401 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:54:40,537.537 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:54:40,577.577 INFO    ] time= 31/08/2026 23:54:40
[2026-08-31 23:54:40,604.604 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:54:40,620.620 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:54:40,737.737 INFO    ] No existing commands found in stream
[2026-08-31 23:54:45,748.748 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:54:45,751.751 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-08-31 23:54:50,076.076 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 23:54:50,079.079 INFO    ] Checking for system updates...
[2026-08-31 23:54:50,115.115 INFO    ] 200
[2026-08-31 23:54:50,118.118 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:54:50,170.170 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:54:50,172.172 INFO    ] No update needed
[2026-08-31 23:54:50,174.174 INFO    ] Checking for camera pi updates...
[2026-08-31 23:54:50,208.208 INFO    ] 200
[2026-08-31 23:54:50,211.211 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:54:50,256.256 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:54:50,336.336 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:54:50,338.338 INFO    ] No camera update needed
[2026-08-31 23:54:50,341.341 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:54:50,343.343 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:54:50,348.348 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:54:50,353.353 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:54:52,394.394 INFO    ] ================================================
[2026-08-31 23:54:52,409.409 INFO    ] Launching Daemon at Mon Aug 31 23:54:52 IST 2026
[2026-08-31 23:54:52,420.420 INFO    ] ================================================
[2026-08-31 23:54:52,999.999 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:54:52
[2026-08-31 23:54:53,599.599 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:54:53,857.857 INFO    ] Initializing speech engine...
[2026-08-31 23:54:53,866.866 INFO    ] 2026-08-31 23:54:53
[2026-08-31 23:54:54,163.163 INFO    ] 2026-08-31 23:54:54
[2026-08-31 23:54:54,202.202 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:54:54,399.399 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:54:54,413.413 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:54:54,540.540 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:54:54,561.561 INFO    ] time= 31/08/2026 23:54:54
[2026-08-31 23:54:54,583.583 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:54:54,591.591 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:54:54,682.682 INFO    ] No existing commands found in stream
[2026-08-31 23:54:59,718.718 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:54:59,720.720 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-08-31 23:55:01,171.171 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 23:55:01,173.173 INFO    ] Checking for system updates...
[2026-08-31 23:55:01,212.212 INFO    ] 200
[2026-08-31 23:55:01,215.215 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:55:01,275.275 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:55:01,278.278 INFO    ] No update needed
[2026-08-31 23:55:01,280.280 INFO    ] Checking for camera pi updates...
[2026-08-31 23:55:01,317.317 INFO    ] 200
[2026-08-31 23:55:01,320.320 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:55:01,365.365 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:55:01,552.552 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:55:01,554.554 INFO    ] No camera update needed
[2026-08-31 23:55:01,557.557 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:55:01,559.559 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:55:01,565.565 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:55:01,570.570 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:55:03,613.613 INFO    ] ================================================
[2026-08-31 23:55:03,628.628 INFO    ] Launching Daemon at Mon Aug 31 23:55:03 IST 2026
[2026-08-31 23:55:03,652.652 INFO    ] ================================================
[2026-08-31 23:55:04,230.230 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:55:04
[2026-08-31 23:55:04,826.826 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:55:05,108.108 INFO    ] Initializing speech engine...
[2026-08-31 23:55:05,123.123 INFO    ] 2026-08-31 23:55:05
[2026-08-31 23:55:05,399.399 INFO    ] 2026-08-31 23:55:05
[2026-08-31 23:55:05,435.435 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:55:06,391.391 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:55:06,445.445 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:55:06,666.666 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:55:06,722.722 INFO    ] time= 31/08/2026 23:55:06
[2026-08-31 23:55:06,756.756 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:55:06,796.796 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:55:06,956.956 INFO    ] No existing commands found in stream
[2026-08-31 23:55:11,967.967 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:55:11,970.970 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-08-31 23:55:15,078.078 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 23:55:15,081.081 INFO    ] Checking for system updates...
[2026-08-31 23:55:15,118.118 INFO    ] 200
[2026-08-31 23:55:15,121.121 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:55:15,175.175 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:55:15,178.178 INFO    ] No update needed
[2026-08-31 23:55:15,181.181 INFO    ] Checking for camera pi updates...
[2026-08-31 23:55:15,216.216 INFO    ] 200
[2026-08-31 23:55:15,219.219 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:55:15,260.260 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:55:15,342.342 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:55:15,345.345 INFO    ] No camera update needed
[2026-08-31 23:55:15,347.347 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:55:15,350.350 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:55:15,356.356 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:55:15,362.362 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:55:17,403.403 INFO    ] ================================================
[2026-08-31 23:55:17,418.418 INFO    ] Launching Daemon at Mon Aug 31 23:55:17 IST 2026
[2026-08-31 23:55:17,428.428 INFO    ] ================================================
[2026-08-31 23:55:18,017.017 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:55:18
[2026-08-31 23:55:18,691.691 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:55:18,991.991 INFO    ] Initializing speech engine...
[2026-08-31 23:55:19,005.005 INFO    ] 2026-08-31 23:55:18
[2026-08-31 23:55:19,317.317 INFO    ] 2026-08-31 23:55:19
[2026-08-31 23:55:19,403.403 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:55:19,621.621 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:55:19,672.672 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:55:19,821.821 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:55:19,843.843 INFO    ] time= 31/08/2026 23:55:19
[2026-08-31 23:55:19,869.869 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:55:19,878.878 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:55:19,989.989 INFO    ] No existing commands found in stream
[2026-08-31 23:55:25,014.014 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:55:25,017.017 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-08-31 23:55:26,014.014 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 23:55:26,018.018 INFO    ] Checking for system updates...
[2026-08-31 23:55:26,059.059 INFO    ] 200
[2026-08-31 23:55:26,062.062 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:55:26,115.115 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:55:26,118.118 INFO    ] No update needed
[2026-08-31 23:55:26,120.120 INFO    ] Checking for camera pi updates...
[2026-08-31 23:55:26,159.159 INFO    ] 200
[2026-08-31 23:55:26,162.162 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:55:26,213.213 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:55:26,294.294 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:55:26,297.297 INFO    ] No camera update needed
[2026-08-31 23:55:26,300.300 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:55:26,303.303 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:55:26,309.309 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:55:26,315.315 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:55:28,355.355 INFO    ] ================================================
[2026-08-31 23:55:28,370.370 INFO    ] Launching Daemon at Mon Aug 31 23:55:28 IST 2026
[2026-08-31 23:55:28,381.381 INFO    ] ================================================
[2026-08-31 23:55:28,965.965 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:55:28
[2026-08-31 23:55:29,560.560 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:55:29,832.832 INFO    ] Initializing speech engine...
[2026-08-31 23:55:29,842.842 INFO    ] 2026-08-31 23:55:29
[2026-08-31 23:55:30,100.100 INFO    ] 2026-08-31 23:55:30
[2026-08-31 23:55:30,141.141 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:55:30,329.329 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:55:30,387.387 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:55:30,609.609 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:55:30,649.649 INFO    ] time= 31/08/2026 23:55:30
[2026-08-31 23:55:30,655.655 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:55:30,673.673 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:55:30,802.802 INFO    ] No existing commands found in stream
[2026-08-31 23:55:35,817.817 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:55:35,820.820 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-08-31 23:55:39,118.118 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 23:55:39,121.121 INFO    ] Checking for system updates...
[2026-08-31 23:55:39,164.164 INFO    ] 200
[2026-08-31 23:55:39,166.166 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:55:39,226.226 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:55:39,228.228 INFO    ] No update needed
[2026-08-31 23:55:39,231.231 INFO    ] Checking for camera pi updates...
[2026-08-31 23:55:39,265.265 INFO    ] 200
[2026-08-31 23:55:39,267.267 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:55:39,310.310 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:55:39,385.385 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:55:39,388.388 INFO    ] No camera update needed
[2026-08-31 23:55:39,390.390 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:55:39,393.393 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:55:39,398.398 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:55:39,403.403 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:55:41,444.444 INFO    ] ================================================
[2026-08-31 23:55:41,460.460 INFO    ] Launching Daemon at Mon Aug 31 23:55:41 IST 2026
[2026-08-31 23:55:41,471.471 INFO    ] ================================================
[2026-08-31 23:55:42,053.053 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:55:42
[2026-08-31 23:55:42,655.655 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:55:42,926.926 INFO    ] Initializing speech engine...
[2026-08-31 23:55:42,936.936 INFO    ] 2026-08-31 23:55:42
[2026-08-31 23:55:43,186.186 INFO    ] 2026-08-31 23:55:43
[2026-08-31 23:55:43,223.223 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:55:43,394.394 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:55:43,407.407 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:55:43,551.551 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:55:43,556.556 INFO    ] time= 31/08/2026 23:55:43
[2026-08-31 23:55:43,562.562 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:55:43,603.603 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:55:43,737.737 INFO    ] No existing commands found in stream
[2026-08-31 23:55:48,763.763 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:55:48,765.765 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-08-31 23:55:49,334.334 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 23:55:49,338.338 INFO    ] Checking for system updates...
[2026-08-31 23:55:49,374.374 INFO    ] 200
[2026-08-31 23:55:49,377.377 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:55:49,429.429 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:55:49,432.432 INFO    ] No update needed
[2026-08-31 23:55:49,434.434 INFO    ] Checking for camera pi updates...
[2026-08-31 23:55:49,468.468 INFO    ] 200
[2026-08-31 23:55:49,471.471 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:55:49,513.513 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:55:49,615.615 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:55:49,617.617 INFO    ] No camera update needed
[2026-08-31 23:55:49,620.620 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:55:49,622.622 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:55:49,628.628 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:55:49,633.633 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:55:51,672.672 INFO    ] ================================================
[2026-08-31 23:55:51,688.688 INFO    ] Launching Daemon at Mon Aug 31 23:55:51 IST 2026
[2026-08-31 23:55:51,699.699 INFO    ] ================================================
[2026-08-31 23:55:52,263.263 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:55:52
[2026-08-31 23:55:52,846.846 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:55:53,097.097 INFO    ] Initializing speech engine...
[2026-08-31 23:55:53,110.110 INFO    ] 2026-08-31 23:55:53
[2026-08-31 23:55:53,374.374 INFO    ] 2026-08-31 23:55:53
[2026-08-31 23:55:53,409.409 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:55:53,669.669 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:55:53,678.678 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:55:53,812.812 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:55:53,860.860 INFO    ] time= 31/08/2026 23:55:53
[2026-08-31 23:55:53,919.919 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:55:53,949.949 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:55:54,073.073 INFO    ] No existing commands found in stream
[2026-08-31 23:55:59,103.103 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:55:59,106.106 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-08-31 23:56:00,047.047 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 23:56:00,050.050 INFO    ] Checking for system updates...
[2026-08-31 23:56:00,087.087 INFO    ] 200
[2026-08-31 23:56:00,090.090 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:56:00,145.145 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:56:00,147.147 INFO    ] No update needed
[2026-08-31 23:56:00,150.150 INFO    ] Checking for camera pi updates...
[2026-08-31 23:56:00,185.185 INFO    ] 200
[2026-08-31 23:56:00,188.188 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:56:00,235.235 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:56:00,320.320 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:56:00,323.323 INFO    ] No camera update needed
[2026-08-31 23:56:00,326.326 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:56:00,328.328 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:56:00,335.335 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:56:00,340.340 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:56:02,386.386 INFO    ] ================================================
[2026-08-31 23:56:02,408.408 INFO    ] Launching Daemon at Mon Aug 31 23:56:02 IST 2026
[2026-08-31 23:56:02,423.423 INFO    ] ================================================
[2026-08-31 23:56:03,059.059 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:56:03
[2026-08-31 23:56:03,716.716 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:56:03,988.988 INFO    ] Initializing speech engine...
[2026-08-31 23:56:03,994.994 INFO    ] 2026-08-31 23:56:03
[2026-08-31 23:56:04,254.254 INFO    ] 2026-08-31 23:56:04
[2026-08-31 23:56:04,306.306 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:56:04,532.532 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:56:04,537.537 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:56:04,749.749 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:56:04,792.792 INFO    ] time= 31/08/2026 23:56:04
[2026-08-31 23:56:04,798.798 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:56:04,815.815 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:56:04,943.943 INFO    ] No existing commands found in stream
[2026-08-31 23:56:09,960.960 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:56:09,963.963 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-08-31 23:56:11,556.556 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 23:56:11,559.559 INFO    ] Checking for system updates...
[2026-08-31 23:56:11,600.600 INFO    ] 200
[2026-08-31 23:56:11,603.603 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:56:11,669.669 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:56:11,672.672 INFO    ] No update needed
[2026-08-31 23:56:11,675.675 INFO    ] Checking for camera pi updates...
[2026-08-31 23:56:11,709.709 INFO    ] 200
[2026-08-31 23:56:11,712.712 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:56:11,753.753 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:56:11,846.846 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:56:11,849.849 INFO    ] No camera update needed
[2026-08-31 23:56:11,852.852 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:56:11,854.854 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:56:11,860.860 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:56:11,866.866 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:56:13,908.908 INFO    ] ================================================
[2026-08-31 23:56:13,923.923 INFO    ] Launching Daemon at Mon Aug 31 23:56:13 IST 2026
[2026-08-31 23:56:13,935.935 INFO    ] ================================================
[2026-08-31 23:56:14,502.502 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:56:14
[2026-08-31 23:56:15,087.087 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:56:15,357.357 INFO    ] Initializing speech engine...
[2026-08-31 23:56:15,366.366 INFO    ] 2026-08-31 23:56:15
[2026-08-31 23:56:15,616.616 INFO    ] 2026-08-31 23:56:15
[2026-08-31 23:56:15,651.651 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:56:15,838.838 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:56:15,853.853 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:56:15,988.988 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:56:15,993.993 INFO    ] time= 31/08/2026 23:56:15
[2026-08-31 23:56:15,999.999 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:56:16,050.050 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:56:16,193.193 INFO    ] No existing commands found in stream
[2026-08-31 23:56:21,204.204 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:56:21,206.206 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-08-31 23:56:24,966.966 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 23:56:24,968.968 INFO    ] Checking for system updates...
[2026-08-31 23:56:25,004.004 INFO    ] 200
[2026-08-31 23:56:25,006.006 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:56:25,069.069 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:56:25,071.071 INFO    ] No update needed
[2026-08-31 23:56:25,074.074 INFO    ] Checking for camera pi updates...
[2026-08-31 23:56:25,111.111 INFO    ] 200
[2026-08-31 23:56:25,113.113 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:56:25,153.153 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:56:25,237.237 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:56:25,239.239 INFO    ] No camera update needed
[2026-08-31 23:56:25,242.242 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:56:25,244.244 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:56:25,249.249 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:56:25,254.254 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:56:27,294.294 INFO    ] ================================================
[2026-08-31 23:56:27,309.309 INFO    ] Launching Daemon at Mon Aug 31 23:56:27 IST 2026
[2026-08-31 23:56:27,320.320 INFO    ] ================================================
[2026-08-31 23:56:27,975.975 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:56:27
[2026-08-31 23:56:28,649.649 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:56:28,954.954 INFO    ] Initializing speech engine...
[2026-08-31 23:56:28,961.961 INFO    ] 2026-08-31 23:56:28
[2026-08-31 23:56:29,239.239 INFO    ] 2026-08-31 23:56:29
[2026-08-31 23:56:29,294.294 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:56:29,517.517 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:56:29,527.527 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:56:29,661.661 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:56:29,698.698 INFO    ] time= 31/08/2026 23:56:29
[2026-08-31 23:56:29,758.758 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:56:29,800.800 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:56:29,946.946 INFO    ] No existing commands found in stream
[2026-08-31 23:56:34,962.962 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:56:34,965.965 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-08-31 23:56:37,206.206 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-31 23:56:37,209.209 INFO    ] Checking for system updates...
[2026-08-31 23:56:37,247.247 INFO    ] 200
[2026-08-31 23:56:37,250.250 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:56:37,304.304 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:56:37,307.307 INFO    ] No update needed
[2026-08-31 23:56:37,310.310 INFO    ] Checking for camera pi updates...
[2026-08-31 23:56:37,345.345 INFO    ] 200
[2026-08-31 23:56:37,348.348 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:56:37,389.389 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:56:37,449.449 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:56:37,451.451 INFO    ] No camera update needed
[2026-08-31 23:56:37,454.454 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:56:37,457.457 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:56:37,463.463 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:56:37,468.468 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:56:39,509.509 INFO    ] ================================================
[2026-08-31 23:56:39,525.525 INFO    ] Launching Daemon at Mon Aug 31 23:56:39 IST 2026
[2026-08-31 23:56:39,536.536 INFO    ] ================================================
[2026-08-31 23:56:40,117.117 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:56:40
[2026-08-31 23:56:40,715.715 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:56:40,991.991 INFO    ] Initializing speech engine...
[2026-08-31 23:56:40,998.998 INFO    ] 2026-08-31 23:56:40
[2026-08-31 23:56:41,260.260 INFO    ] 2026-08-31 23:56:41
[2026-08-31 23:56:41,313.313 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:56:41,540.540 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:56:41,546.546 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:56:41,746.746 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:56:41,796.796 INFO    ] time= 31/08/2026 23:56:41
[2026-08-31 23:56:41,807.807 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:56:41,824.824 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:56:41,940.940 INFO    ] No existing commands found in stream
[2026-08-31 23:56:46,964.964 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:56:46,967.967 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-08-31 23:56:49,281.281 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-31 23:56:49,284.284 INFO    ] Checking for system updates...
[2026-08-31 23:56:49,326.326 INFO    ] 200
[2026-08-31 23:56:49,328.328 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:56:49,388.388 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:56:49,390.390 INFO    ] No update needed
[2026-08-31 23:56:49,393.393 INFO    ] Checking for camera pi updates...
[2026-08-31 23:56:49,426.426 INFO    ] 200
[2026-08-31 23:56:49,429.429 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:56:49,469.469 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:56:49,548.548 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:56:49,550.550 INFO    ] No camera update needed
[2026-08-31 23:56:49,552.552 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:56:49,555.555 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:56:49,560.560 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:56:49,565.565 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:56:51,605.605 INFO    ] ================================================
[2026-08-31 23:56:51,621.621 INFO    ] Launching Daemon at Mon Aug 31 23:56:51 IST 2026
[2026-08-31 23:56:51,631.631 INFO    ] ================================================
[2026-08-31 23:56:52,210.210 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:56:52
[2026-08-31 23:56:52,808.808 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:56:53,079.079 INFO    ] Initializing speech engine...
[2026-08-31 23:56:53,089.089 INFO    ] 2026-08-31 23:56:53
[2026-08-31 23:56:53,338.338 INFO    ] 2026-08-31 23:56:53
[2026-08-31 23:56:53,373.373 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:56:53,565.565 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:56:53,580.580 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:56:53,739.739 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:56:53,748.748 INFO    ] time= 31/08/2026 23:56:53
[2026-08-31 23:56:53,756.756 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:56:53,769.769 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:56:53,881.881 INFO    ] No existing commands found in stream
[2026-08-31 23:56:58,901.901 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:56:58,904.904 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-08-31 23:56:59,967.967 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 23:56:59,969.969 INFO    ] Checking for system updates...
[2026-08-31 23:57:00,009.009 INFO    ] 200
[2026-08-31 23:57:00,011.011 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:57:00,070.070 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:57:00,072.072 INFO    ] No update needed
[2026-08-31 23:57:00,074.074 INFO    ] Checking for camera pi updates...
[2026-08-31 23:57:00,111.111 INFO    ] 200
[2026-08-31 23:57:00,114.114 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:57:00,159.159 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:57:00,243.243 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:57:00,245.245 INFO    ] No camera update needed
[2026-08-31 23:57:00,248.248 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:57:00,250.250 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:57:00,255.255 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:57:00,260.260 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:57:02,303.303 INFO    ] ================================================
[2026-08-31 23:57:02,319.319 INFO    ] Launching Daemon at Mon Aug 31 23:57:02 IST 2026
[2026-08-31 23:57:02,334.334 INFO    ] ================================================
[2026-08-31 23:57:02,977.977 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:57:02
[2026-08-31 23:57:03,636.636 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:57:03,893.893 INFO    ] Initializing speech engine...
[2026-08-31 23:57:03,908.908 INFO    ] 2026-08-31 23:57:03
[2026-08-31 23:57:04,190.190 INFO    ] 2026-08-31 23:57:04
[2026-08-31 23:57:04,224.224 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:57:04,419.419 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:57:04,467.467 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:57:04,620.620 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:57:04,664.664 INFO    ] time= 31/08/2026 23:57:04
[2026-08-31 23:57:04,708.708 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:57:04,751.751 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:57:04,894.894 INFO    ] No existing commands found in stream
[2026-08-31 23:57:09,910.910 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:57:09,912.912 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-08-31 23:57:13,583.583 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 23:57:13,585.585 INFO    ] Checking for system updates...
[2026-08-31 23:57:13,620.620 INFO    ] 200
[2026-08-31 23:57:13,623.623 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:57:13,675.675 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:57:13,677.677 INFO    ] No update needed
[2026-08-31 23:57:13,680.680 INFO    ] Checking for camera pi updates...
[2026-08-31 23:57:13,713.713 INFO    ] 200
[2026-08-31 23:57:13,715.715 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:57:13,755.755 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:57:13,833.833 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:57:13,836.836 INFO    ] No camera update needed
[2026-08-31 23:57:13,838.838 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:57:13,840.840 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:57:13,846.846 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:57:13,851.851 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:57:15,889.889 INFO    ] ================================================
[2026-08-31 23:57:15,904.904 INFO    ] Launching Daemon at Mon Aug 31 23:57:15 IST 2026
[2026-08-31 23:57:15,915.915 INFO    ] ================================================
[2026-08-31 23:57:16,480.480 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:57:16
[2026-08-31 23:57:17,061.061 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:57:17,311.311 INFO    ] Initializing speech engine...
[2026-08-31 23:57:17,333.333 INFO    ] 2026-08-31 23:57:17
[2026-08-31 23:57:17,591.591 INFO    ] 2026-08-31 23:57:17
[2026-08-31 23:57:17,626.626 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:57:17,821.821 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:57:17,836.836 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:57:17,997.997 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:57:18,005.005 INFO    ] time= 31/08/2026 23:57:18
[2026-08-31 23:57:18,014.014 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:57:18,045.045 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:57:18,170.170 INFO    ] No existing commands found in stream
[2026-08-31 23:57:23,196.196 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:57:23,199.199 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-08-31 23:57:23,974.974 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 23:57:23,976.976 INFO    ] Checking for system updates...
[2026-08-31 23:57:24,016.016 INFO    ] 200
[2026-08-31 23:57:24,018.018 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:57:24,076.076 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:57:24,079.079 INFO    ] No update needed
[2026-08-31 23:57:24,081.081 INFO    ] Checking for camera pi updates...
[2026-08-31 23:57:24,114.114 INFO    ] 200
[2026-08-31 23:57:24,117.117 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:57:24,160.160 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:57:24,241.241 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:57:24,243.243 INFO    ] No camera update needed
[2026-08-31 23:57:24,245.245 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:57:24,247.247 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:57:24,253.253 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:57:24,258.258 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:57:26,298.298 INFO    ] ================================================
[2026-08-31 23:57:26,313.313 INFO    ] Launching Daemon at Mon Aug 31 23:57:26 IST 2026
[2026-08-31 23:57:26,324.324 INFO    ] ================================================
[2026-08-31 23:57:26,902.902 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:57:26
[2026-08-31 23:57:27,498.498 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:57:27,772.772 INFO    ] Initializing speech engine...
[2026-08-31 23:57:27,778.778 INFO    ] 2026-08-31 23:57:27
[2026-08-31 23:57:28,040.040 INFO    ] 2026-08-31 23:57:28
[2026-08-31 23:57:28,092.092 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:57:28,313.313 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:57:28,322.322 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:57:28,456.456 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:57:28,501.501 INFO    ] time= 31/08/2026 23:57:28
[2026-08-31 23:57:28,571.571 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:57:28,602.602 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:57:28,718.718 INFO    ] No existing commands found in stream
[2026-08-31 23:57:33,740.740 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:57:33,743.743 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-08-31 23:57:37,221.221 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 23:57:37,223.223 INFO    ] Checking for system updates...
[2026-08-31 23:57:37,264.264 INFO    ] 200
[2026-08-31 23:57:37,267.267 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:57:37,327.327 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:57:37,330.330 INFO    ] No update needed
[2026-08-31 23:57:37,333.333 INFO    ] Checking for camera pi updates...
[2026-08-31 23:57:37,370.370 INFO    ] 200
[2026-08-31 23:57:37,373.373 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:57:37,421.421 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:57:37,509.509 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:57:37,511.511 INFO    ] No camera update needed
[2026-08-31 23:57:37,514.514 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:57:37,516.516 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:57:37,521.521 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:57:37,526.526 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:57:39,566.566 INFO    ] ================================================
[2026-08-31 23:57:39,582.582 INFO    ] Launching Daemon at Mon Aug 31 23:57:39 IST 2026
[2026-08-31 23:57:39,592.592 INFO    ] ================================================
[2026-08-31 23:57:40,231.231 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:57:40
[2026-08-31 23:57:40,836.836 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:57:41,103.103 INFO    ] Initializing speech engine...
[2026-08-31 23:57:41,112.112 INFO    ] 2026-08-31 23:57:41
[2026-08-31 23:57:41,358.358 INFO    ] 2026-08-31 23:57:41
[2026-08-31 23:57:41,393.393 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:57:41,643.643 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:57:41,653.653 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:57:41,786.786 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:57:41,835.835 INFO    ] time= 31/08/2026 23:57:41
[2026-08-31 23:57:41,884.884 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:57:41,916.916 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:57:42,059.059 INFO    ] No existing commands found in stream
[2026-08-31 23:57:47,073.073 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:57:47,076.076 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-08-31 23:57:48,411.411 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 23:57:48,414.414 INFO    ] Checking for system updates...
[2026-08-31 23:57:48,450.450 INFO    ] 200
[2026-08-31 23:57:48,453.453 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:57:48,505.505 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:57:48,508.508 INFO    ] No update needed
[2026-08-31 23:57:48,510.510 INFO    ] Checking for camera pi updates...
[2026-08-31 23:57:48,547.547 INFO    ] 200
[2026-08-31 23:57:48,550.550 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:57:48,590.590 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:57:48,689.689 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:57:48,692.692 INFO    ] No camera update needed
[2026-08-31 23:57:48,695.695 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:57:48,697.697 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:57:48,702.702 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:57:48,707.707 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:57:50,747.747 INFO    ] ================================================
[2026-08-31 23:57:50,762.762 INFO    ] Launching Daemon at Mon Aug 31 23:57:50 IST 2026
[2026-08-31 23:57:50,773.773 INFO    ] ================================================
[2026-08-31 23:57:51,416.416 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:57:51
[2026-08-31 23:57:52,067.067 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:57:52,342.342 INFO    ] Initializing speech engine...
[2026-08-31 23:57:52,348.348 INFO    ] 2026-08-31 23:57:52
[2026-08-31 23:57:52,610.610 INFO    ] 2026-08-31 23:57:52
[2026-08-31 23:57:52,663.663 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:57:52,886.886 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:57:52,895.895 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:57:53,050.050 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:57:53,105.105 INFO    ] time= 31/08/2026 23:57:53
[2026-08-31 23:57:53,154.154 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:57:53,163.163 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:57:53,294.294 INFO    ] No existing commands found in stream
[2026-08-31 23:57:58,320.320 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:57:58,323.323 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-08-31 23:58:00,489.489 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 23:58:00,491.491 INFO    ] Checking for system updates...
[2026-08-31 23:58:00,531.531 INFO    ] 200
[2026-08-31 23:58:00,534.534 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:58:00,592.592 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:58:00,595.595 INFO    ] No update needed
[2026-08-31 23:58:00,598.598 INFO    ] Checking for camera pi updates...
[2026-08-31 23:58:00,635.635 INFO    ] 200
[2026-08-31 23:58:00,638.638 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:58:00,679.679 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:58:00,764.764 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:58:00,767.767 INFO    ] No camera update needed
[2026-08-31 23:58:00,769.769 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:58:00,772.772 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:58:00,778.778 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:58:00,783.783 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:58:02,841.841 INFO    ] ================================================
[2026-08-31 23:58:02,861.861 INFO    ] Launching Daemon at Mon Aug 31 23:58:02 IST 2026
[2026-08-31 23:58:02,877.877 INFO    ] ================================================
[2026-08-31 23:58:03,536.536 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:58:03
[2026-08-31 23:58:04,121.121 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:58:04,365.365 INFO    ] Initializing speech engine...
[2026-08-31 23:58:04,380.380 INFO    ] 2026-08-31 23:58:04
[2026-08-31 23:58:04,650.650 INFO    ] 2026-08-31 23:58:04
[2026-08-31 23:58:04,685.685 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:58:04,885.885 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:58:04,931.931 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:58:05,085.085 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:58:05,138.138 INFO    ] time= 31/08/2026 23:58:05
[2026-08-31 23:58:05,187.187 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:58:05,222.222 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:58:05,281.281 INFO    ] No existing commands found in stream
[2026-08-31 23:58:10,292.292 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:58:10,295.295 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-08-31 23:58:13,245.245 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 23:58:13,248.248 INFO    ] Checking for system updates...
[2026-08-31 23:58:13,286.286 INFO    ] 200
[2026-08-31 23:58:13,289.289 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:58:13,341.341 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:58:13,344.344 INFO    ] No update needed
[2026-08-31 23:58:13,346.346 INFO    ] Checking for camera pi updates...
[2026-08-31 23:58:13,381.381 INFO    ] 200
[2026-08-31 23:58:13,383.383 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:58:13,423.423 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:58:13,506.506 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:58:13,508.508 INFO    ] No camera update needed
[2026-08-31 23:58:13,511.511 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:58:13,513.513 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:58:13,519.519 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:58:13,524.524 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:58:15,563.563 INFO    ] ================================================
[2026-08-31 23:58:15,578.578 INFO    ] Launching Daemon at Mon Aug 31 23:58:15 IST 2026
[2026-08-31 23:58:15,588.588 INFO    ] ================================================
[2026-08-31 23:58:16,166.166 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:58:16
[2026-08-31 23:58:16,762.762 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:58:17,013.013 INFO    ] Initializing speech engine...
[2026-08-31 23:58:17,036.036 INFO    ] 2026-08-31 23:58:17
[2026-08-31 23:58:17,291.291 INFO    ] 2026-08-31 23:58:17
[2026-08-31 23:58:17,326.326 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:58:17,576.576 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:58:17,586.586 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:58:17,725.725 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:58:17,795.795 INFO    ] time= 31/08/2026 23:58:17
[2026-08-31 23:58:17,855.855 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:58:17,867.867 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:58:17,931.931 INFO    ] No existing commands found in stream
[2026-08-31 23:58:22,955.955 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:58:22,958.958 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-08-31 23:58:24,357.357 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 23:58:24,360.360 INFO    ] Checking for system updates...
[2026-08-31 23:58:24,397.397 INFO    ] 200
[2026-08-31 23:58:24,399.399 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:58:24,451.451 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:58:24,454.454 INFO    ] No update needed
[2026-08-31 23:58:24,456.456 INFO    ] Checking for camera pi updates...
[2026-08-31 23:58:24,490.490 INFO    ] 200
[2026-08-31 23:58:24,492.492 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:58:24,533.533 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:58:24,619.619 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:58:24,621.621 INFO    ] No camera update needed
[2026-08-31 23:58:24,624.624 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:58:24,626.626 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:58:24,632.632 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:58:24,637.637 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:58:26,677.677 INFO    ] ================================================
[2026-08-31 23:58:26,692.692 INFO    ] Launching Daemon at Mon Aug 31 23:58:26 IST 2026
[2026-08-31 23:58:26,703.703 INFO    ] ================================================
[2026-08-31 23:58:27,270.270 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:58:27
[2026-08-31 23:58:27,884.884 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:58:28,177.177 INFO    ] Initializing speech engine...
[2026-08-31 23:58:28,187.187 INFO    ] 2026-08-31 23:58:28
[2026-08-31 23:58:28,474.474 INFO    ] 2026-08-31 23:58:28
[2026-08-31 23:58:28,520.520 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:58:28,804.804 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:58:28,811.811 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:58:29,005.005 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:58:29,012.012 INFO    ] time= 31/08/2026 23:58:29
[2026-08-31 23:58:29,031.031 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:58:29,060.060 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:58:29,166.166 INFO    ] No existing commands found in stream
[2026-08-31 23:58:34,192.192 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:58:34,195.195 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-08-31 23:58:38,132.132 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 23:58:38,135.135 INFO    ] Checking for system updates...
[2026-08-31 23:58:38,172.172 INFO    ] 200
[2026-08-31 23:58:38,175.175 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:58:38,228.228 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:58:38,230.230 INFO    ] No update needed
[2026-08-31 23:58:38,232.232 INFO    ] Checking for camera pi updates...
[2026-08-31 23:58:38,269.269 INFO    ] 200
[2026-08-31 23:58:38,271.271 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:58:38,311.311 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:58:38,396.396 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:58:38,398.398 INFO    ] No camera update needed
[2026-08-31 23:58:38,401.401 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:58:38,403.403 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:58:38,408.408 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:58:38,413.413 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:58:40,452.452 INFO    ] ================================================
[2026-08-31 23:58:40,467.467 INFO    ] Launching Daemon at Mon Aug 31 23:58:40 IST 2026
[2026-08-31 23:58:40,477.477 INFO    ] ================================================
[2026-08-31 23:58:41,111.111 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:58:41
[2026-08-31 23:58:41,762.762 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:58:42,062.062 INFO    ] Initializing speech engine...
[2026-08-31 23:58:42,070.070 INFO    ] 2026-08-31 23:58:42
[2026-08-31 23:58:42,354.354 INFO    ] 2026-08-31 23:58:42
[2026-08-31 23:58:42,399.399 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:58:42,647.647 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:58:42,652.652 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:58:42,858.858 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:58:42,893.893 INFO    ] time= 31/08/2026 23:58:42
[2026-08-31 23:58:42,910.910 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:58:42,921.921 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:58:43,033.033 INFO    ] No existing commands found in stream
[2026-08-31 23:58:48,043.043 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:58:48,046.046 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-08-31 23:58:51,814.814 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 23:58:51,816.816 INFO    ] Checking for system updates...
[2026-08-31 23:58:51,853.853 INFO    ] 200
[2026-08-31 23:58:51,855.855 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:58:51,910.910 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:58:51,912.912 INFO    ] No update needed
[2026-08-31 23:58:51,914.914 INFO    ] Checking for camera pi updates...
[2026-08-31 23:58:51,948.948 INFO    ] 200
[2026-08-31 23:58:51,950.950 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:58:51,998.998 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:58:52,080.080 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:58:52,083.083 INFO    ] No camera update needed
[2026-08-31 23:58:52,085.085 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:58:52,087.087 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:58:52,093.093 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:58:52,098.098 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:58:54,139.139 INFO    ] ================================================
[2026-08-31 23:58:54,154.154 INFO    ] Launching Daemon at Mon Aug 31 23:58:54 IST 2026
[2026-08-31 23:58:54,164.164 INFO    ] ================================================
[2026-08-31 23:58:54,745.745 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:58:54
[2026-08-31 23:58:55,344.344 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:58:55,615.615 INFO    ] Initializing speech engine...
[2026-08-31 23:58:55,627.627 INFO    ] 2026-08-31 23:58:55
[2026-08-31 23:58:55,879.879 INFO    ] 2026-08-31 23:58:55
[2026-08-31 23:58:55,915.915 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:58:56,166.166 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:58:56,175.175 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:58:56,309.309 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:58:56,369.369 INFO    ] time= 31/08/2026 23:58:56
[2026-08-31 23:58:56,424.424 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:58:56,443.443 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:58:56,501.501 INFO    ] No existing commands found in stream
[2026-08-31 23:59:01,530.530 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:59:01,533.533 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-08-31 23:59:04,770.770 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-31 23:59:04,772.772 INFO    ] Checking for system updates...
[2026-08-31 23:59:04,808.808 INFO    ] 200
[2026-08-31 23:59:04,810.810 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:59:04,863.863 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:59:04,865.865 INFO    ] No update needed
[2026-08-31 23:59:04,868.868 INFO    ] Checking for camera pi updates...
[2026-08-31 23:59:04,904.904 INFO    ] 200
[2026-08-31 23:59:04,907.907 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:59:04,947.947 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:59:05,148.148 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:59:05,151.151 INFO    ] No camera update needed
[2026-08-31 23:59:05,153.153 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:59:05,156.156 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:59:05,161.161 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:59:05,166.166 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:59:07,206.206 INFO    ] ================================================
[2026-08-31 23:59:07,221.221 INFO    ] Launching Daemon at Mon Aug 31 23:59:07 IST 2026
[2026-08-31 23:59:07,231.231 INFO    ] ================================================
[2026-08-31 23:59:07,852.852 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:59:07
[2026-08-31 23:59:08,493.493 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:59:08,790.790 INFO    ] Initializing speech engine...
[2026-08-31 23:59:08,798.798 INFO    ] 2026-08-31 23:59:08
[2026-08-31 23:59:09,071.071 INFO    ] 2026-08-31 23:59:09
[2026-08-31 23:59:09,129.129 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:59:09,416.416 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:59:09,422.422 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:59:09,615.615 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:59:09,623.623 INFO    ] time= 31/08/2026 23:59:09
[2026-08-31 23:59:09,641.641 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:59:09,671.671 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:59:09,817.817 INFO    ] No existing commands found in stream
[2026-08-31 23:59:14,843.843 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:59:14,846.846 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-08-31 23:59:16,097.097 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 23:59:16,100.100 INFO    ] Checking for system updates...
[2026-08-31 23:59:16,137.137 INFO    ] 200
[2026-08-31 23:59:16,139.139 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:59:16,192.192 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:59:16,195.195 INFO    ] No update needed
[2026-08-31 23:59:16,198.198 INFO    ] Checking for camera pi updates...
[2026-08-31 23:59:16,235.235 INFO    ] 200
[2026-08-31 23:59:16,238.238 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:59:16,288.288 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:59:16,381.381 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:59:16,384.384 INFO    ] No camera update needed
[2026-08-31 23:59:16,386.386 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:59:16,389.389 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:59:16,395.395 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:59:16,401.401 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:59:18,439.439 INFO    ] ================================================
[2026-08-31 23:59:18,454.454 INFO    ] Launching Daemon at Mon Aug 31 23:59:18 IST 2026
[2026-08-31 23:59:18,465.465 INFO    ] ================================================
[2026-08-31 23:59:19,030.030 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:59:19
[2026-08-31 23:59:19,612.612 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:59:19,862.862 INFO    ] Initializing speech engine...
[2026-08-31 23:59:19,878.878 INFO    ] 2026-08-31 23:59:19
[2026-08-31 23:59:20,155.155 INFO    ] 2026-08-31 23:59:20
[2026-08-31 23:59:20,192.192 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:59:20,412.412 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:59:20,466.466 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:59:20,629.629 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:59:20,651.651 INFO    ] time= 31/08/2026 23:59:20
[2026-08-31 23:59:20,706.706 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:59:20,755.755 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:59:20,831.831 INFO    ] No existing commands found in stream
[2026-08-31 23:59:25,843.843 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:59:25,845.845 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-08-31 23:59:30,056.056 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-31 23:59:30,059.059 INFO    ] Checking for system updates...
[2026-08-31 23:59:30,095.095 INFO    ] 200
[2026-08-31 23:59:30,098.098 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:59:30,149.149 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:59:30,152.152 INFO    ] No update needed
[2026-08-31 23:59:30,154.154 INFO    ] Checking for camera pi updates...
[2026-08-31 23:59:30,191.191 INFO    ] 200
[2026-08-31 23:59:30,194.194 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:59:30,234.234 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:59:30,326.326 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:59:30,329.329 INFO    ] No camera update needed
[2026-08-31 23:59:30,331.331 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:59:30,333.333 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:59:30,339.339 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:59:30,343.343 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:59:32,385.385 INFO    ] ================================================
[2026-08-31 23:59:32,401.401 INFO    ] Launching Daemon at Mon Aug 31 23:59:32 IST 2026
[2026-08-31 23:59:32,413.413 INFO    ] ================================================
[2026-08-31 23:59:33,031.031 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:59:33
[2026-08-31 23:59:33,679.679 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:59:33,973.973 INFO    ] Initializing speech engine...
[2026-08-31 23:59:33,981.981 INFO    ] 2026-08-31 23:59:33
[2026-08-31 23:59:34,263.263 INFO    ] 2026-08-31 23:59:34
[2026-08-31 23:59:34,307.307 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:59:34,533.533 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:59:34,539.539 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:59:34,770.770 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:59:34,797.797 INFO    ] time= 31/08/2026 23:59:34
[2026-08-31 23:59:34,815.815 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:59:34,838.838 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:59:34,959.959 INFO    ] No existing commands found in stream
[2026-08-31 23:59:39,990.990 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:59:39,993.993 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-08-31 23:59:43,853.853 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 23:59:43,856.856 INFO    ] Checking for system updates...
[2026-08-31 23:59:43,896.896 INFO    ] 200
[2026-08-31 23:59:43,899.899 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:59:43,961.961 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:59:43,963.963 INFO    ] No update needed
[2026-08-31 23:59:43,966.966 INFO    ] Checking for camera pi updates...
[2026-08-31 23:59:44,000.000 INFO    ] 200
[2026-08-31 23:59:44,003.003 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:59:44,047.047 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:59:44,130.130 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-31 23:59:44,132.132 INFO    ] No camera update needed
[2026-08-31 23:59:44,135.135 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:59:44,137.137 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:59:44,143.143 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:59:44,148.148 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:59:46,188.188 INFO    ] ================================================
[2026-08-31 23:59:46,203.203 INFO    ] Launching Daemon at Mon Aug 31 23:59:46 IST 2026
[2026-08-31 23:59:46,214.214 INFO    ] ================================================
[2026-08-31 23:59:46,852.852 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:59:46
[2026-08-31 23:59:47,438.438 INFO    ] Using urllib3 for HTTP requests
[2026-08-31 23:59:47,709.709 INFO    ] Initializing speech engine...
[2026-08-31 23:59:47,732.732 INFO    ] 2026-08-31 23:59:47
[2026-08-31 23:59:48,004.004 INFO    ] 2026-08-31 23:59:47
[2026-08-31 23:59:48,042.042 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-31 23:59:48,295.295 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-31 23:59:48,304.304 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-31 23:59:48,438.438 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-31 23:59:48,470.470 INFO    ] time= 31/08/2026 23:59:48
[2026-08-31 23:59:48,529.529 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-08-31 23:59:48,573.573 INFO    ] Checking for existing commands in stream...
[2026-08-31 23:59:48,637.637 INFO    ] No existing commands found in stream
[2026-08-31 23:59:53,673.673 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-31 23:59:53,676.676 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-08-31 23:59:56,719.719 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-31 23:59:56,722.722 INFO    ] Checking for system updates...
[2026-08-31 23:59:56,762.762 INFO    ] 200
[2026-08-31 23:59:56,765.765 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:59:56,821.821 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:59:56,823.823 INFO    ] No update needed
[2026-08-31 23:59:56,826.826 INFO    ] Checking for camera pi updates...
[2026-08-31 23:59:56,862.862 INFO    ] 200
[2026-08-31 23:59:56,864.864 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-08-31 23:59:56,909.909 INFO    ] Camera IP: TMCAM08202202.local
[2026-08-31 23:59:56,978.978 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-31 23:59:56,981.981 INFO    ] No camera update needed
[2026-08-31 23:59:56,984.984 INFO    ] Script finished. Safe exiting...
[2026-08-31 23:59:56,986.986 INFO    ] === ACTIVE THREADS START ===
[2026-08-31 23:59:56,992.992 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-31 23:59:56,998.998 INFO    ] === ACTIVE THREADS END ===
[2026-08-31 23:59:59,038.038 INFO    ] ================================================
[2026-08-31 23:59:59,053.053 INFO    ] Launching Daemon at Mon Aug 31 23:59:59 IST 2026
[2026-08-31 23:59:59,065.065 INFO    ] ================================================
[2026-08-31 23:59:59,636.636 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-31 23:59:59
